From 9fb01d9d75db987d3666a79f50b20fb18d7ba6b9 Mon Sep 17 00:00:00 2001 From: mjames-upc Date: Mon, 12 Jan 2015 14:07:45 -0700 Subject: [PATCH] modified code EDEX - merge remotes/origin/ncep_14.4.1 to upc development Former-commit-id: a5f122276598ed8faccfe5a6ecf52b5031668084 --- edexOsgi/build.edex/build.xml | 45 +- .../build.edex/deploy-common/deploy-esb.xml | 31 + .../build.edex/deploy-common/deploy-setup.xml | 107 +- .../deploy-common/external-rules.xml | 11 + .../deploy-common/plugin-methods.xml | 23 +- edexOsgi/build.edex/deploy-install.xml | 13 +- edexOsgi/build.edex/edex/build.properties | 4 +- edexOsgi/build.edex/edex/common.properties | 14 +- edexOsgi/build.edex/edex/customTargets.xml | 1 + edexOsgi/build.edex/esb/bin/setup.env | 23 +- edexOsgi/build.edex/esb/bin/start.sh | 11 +- .../damCatalog/hibernate.cfg.xml | 11 +- .../db/hibernateConfig/fxa/hibernate.cfg.xml | 19 +- .../db/hibernateConfig/hmdb/hibernate.cfg.xml | 9 +- .../db/hibernateConfig/ihfs/hibernate.cfg.xml | 17 +- .../db/hibernateConfig/maps/hibernate.cfg.xml | 19 +- .../metadata/hibernate.cfg.xml | 20 +- .../db/hibernateConfig/ncep/hibernate.cfg.xml | 17 +- .../esb/conf/logback-dataprovideragent.xml | 6 +- .../build.edex/esb/conf/logback-ingest.xml | 102 +- .../build.edex/esb/conf/logback-registry.xml | 25 +- edexOsgi/build.edex/esb/conf/logback.xml | 6 +- .../build.edex/esb/conf/spring/edex-db.xml | 15 +- edexOsgi/build.edex/esb/conf/spring/edex.xml | 251 +- edexOsgi/build.edex/esb/conf/wrapper.conf | 55 +- .../build.edex/esb/etc/centralRegistry.sh | 6 +- .../build.edex/esb/etc/datadeliveryonly.sh | 1 - .../build.edex/esb/etc/dataprovideragent.sh | 1 - edexOsgi/build.edex/esb/etc/default.sh | 7 +- edexOsgi/build.edex/esb/etc/devRegistry.sh | 3 +- edexOsgi/build.edex/esb/etc/ingest.sh | 3 +- edexOsgi/build.edex/esb/etc/ingestDat.sh | 5 +- edexOsgi/build.edex/esb/etc/ingestGrib.sh | 5 +- edexOsgi/build.edex/esb/etc/ingestHydro.sh | 2 +- edexOsgi/build.edex/esb/etc/registry.sh | 3 +- edexOsgi/build.edex/esb/etc/request.sh | 2 - edexOsgi/build.edex/esb/etc/requestHydro.sh | 2 - .../opt/db/ddl/maps/importShapeFile.sh | 80 +- .../opt/db/ddl/maps/initializeMapsDb.sh | 23 +- .../opt/db/ddl/ncep/createNcepNwxTables.sql | 113 +- .../opt/db/ddl/ncep/loadCpcstns.sql | 2 +- .../build.edex/opt/db/ddl/ncep/loadDlwx.sql | 2 +- .../build.edex/opt/db/ddl/ncep/loadNcepNwx.sh | 1 + .../ddl/ncep/loadNwxMasterAndGuiProducts.sql | 15 +- .../loadNwxObservedDataBulletinTables.sql | 4 +- .../build.edex/opt/db/ddl/ncep/loadSnap.sql | 7521 +++++++++-------- .../build.edex/opt/db/ddl/ncep/loadSnap8.sql | 3008 ++----- .../build.edex/opt/db/ddl/ncep/loadVors.sql | 35 +- edexOsgi/build.edex/substitute.xml | 4 +- .../feature.xml | 31 +- .../com/raytheon/edex/services/NotifySrv.java | 17 +- .../META-INF/MANIFEST.MF | 19 +- .../res/spring/binlightning_ep-ingest.xml | 73 +- .../binlightning/BinLightningDecoder.java | 549 +- .../binlightning/dao/BinLightningDao.java | 50 +- .../impl/BaseLightningDecoder.java | 45 +- .../impl/BinLightningFactory.java | 1 - .../impl/FlashLightningDecoder.java | 30 +- .../impl/IBinLightningDecoder.java | 10 +- .../impl/LightningDataSource.java | 1 - .../binlightning/impl/RTLightningDecoder.java | 13 +- .../base/distribution/binlightning.xml | 2 +- .../META-INF/MANIFEST.MF | 4 +- .../res/spring/bufrua-ingest.xml | 21 +- .../edex/plugin/bufrua/BufrUADecoder.java | 21 +- .../edex/plugin/bufrua/BufrUASeparator.java | 26 +- .../bufrua/decoder/AbstractBUFRUAAdapter.java | 20 +- .../bufrua/decoder/BUFRUAAdapterFactory.java | 2 +- .../bufrua/decoder/BUFRUAManLevelAdapter.java | 14 +- .../decoder/BUFRUANullLevelAdapter.java | 6 +- .../bufrua/decoder/BUFRUASigLevelAdapter.java | 14 +- .../decoder/UARawinDescriptorDelegate.java | 6 +- .../META-INF/MANIFEST.MF | 7 +- .../build.properties | 3 +- .../res/spring/gfe-common.xml | 19 +- .../res/spring/gfe-request.xml | 53 +- .../res/spring/gfe-spring.xml | 62 +- .../plugin/gfe/config/GFESiteActivation.java | 76 +- .../gfe/config/IFPServerConfigManager.java | 30 +- .../edex/plugin/gfe/db/dao/GFED2DDao.java | 9 +- .../edex/plugin/gfe/db/dao/GFEDao.java | 197 +- .../edex/plugin/gfe/db/dao/GFELockDao.java | 9 +- .../edex/plugin/gfe/isc/IscSendQueue.java | 8 +- .../edex/plugin/gfe/isc/SendIscSrv.java | 209 +- .../plugin/gfe/reference/DbShapeSource.java | 43 +- .../edex/plugin/gfe/reference/MapManager.java | 12 +- .../plugin/gfe/reference/ReferenceMgr.java | 14 +- .../edex/plugin/gfe/server/GridParm.java | 11 +- .../plugin/gfe/server/GridParmManager.java | 866 +- .../edex/plugin/gfe/server/IFPServer.java | 42 +- .../gfe/server/database/D2DGridDatabase.java | 51 +- .../gfe/server/database/IFPGridDatabase.java | 159 +- .../gfe/server/database/NetCDFFile.java | 200 +- .../gfe/server/database/TopoDatabase.java | 15 +- .../server/database/TopoDatabaseManager.java | 56 +- .../gfe/server/handler/GetClientsHandler.java | 86 +- .../server/handler/GetGridDataHandler.java | 106 +- .../server/handler/GetParmListHandler.java | 8 +- .../server/handler/GetPointDataHandler.java | 294 +- .../handler/SaveCombinationsFileHandler.java | 24 +- .../server/handler/SaveGfeGridHandler.java | 20 +- .../plugin/gfe/server/lock/LockManager.java | 18 +- .../notify/VTECTableChangeListener.java | 18 +- .../edex/plugin/gfe/smartinit/IFPDB.java | 2 +- .../edex/plugin/gfe/smartinit/IFPWE.java | 31 +- .../edex/plugin/gfe/smartinit/InitClient.java | 9 +- .../plugin/gfe/smartinit/SmartInitQueue.java | 3 +- .../plugin/gfe/smartinit/SmartInitSrv.java | 267 +- .../gfe/smartinit/SmartInitTransactions.java | 19 +- .../plugin/gfe/svcbackup/SvcBackupUtil.java | 21 +- .../gfe/textproducts/AreaDictionaryMaker.java | 306 +- .../plugin/gfe/textproducts/Configurator.java | 124 +- .../plugin/gfe/util/SendNotifications.java | 22 +- .../base/grid/dataset/alias/gfeParamInfo.xml | 35 + .../base/parameter/alias/gfeParamName.xml | 19 + .../common_static/base/python/gfe/AbsTime.py | 8 +- .../edex_static/base/config/gfe/Maps.py | 15 +- .../edex_static/base/config/gfe/doConfig.py | 38 +- .../base/config/gfe/serverConfig.py | 97 +- .../base/gfe/createAreaDictionary.py | 184 +- .../edex_static/base/gfe/fips2cities.py | 6550 +++++++------- .../edex_static/base/gfe/isc/IrtAccess.py | 2 +- .../edex_static/base/gfe/isc/ifpnetCDF.py | 28 +- .../edex_static/base/gfe/isc/iscMosaic.py | 79 +- .../edex_static/base/gfe/zones2cities.py | 7107 ++++++++-------- .../base/grid/gfeLevelMappingFile.xml | 3 + .../base/grid/parameterInfo/aKrtmaNDFD.xml | 30 + .../base/grid/parameterInfo/avn201.xml | 4 +- .../base/grid/parameterInfo/avn202.xml | 4 +- .../base/grid/parameterInfo/avn203.xml | 4 +- .../base/grid/parameterInfo/avn211.xml | 4 +- .../base/grid/parameterInfo/avn225.xml | 4 +- .../base/grid/parameterInfo/gfs160.xml | 4 +- .../base/grid/parameterInfo/gfs161.xml | 4 +- .../base/grid/parameterInfo/gfs201.xml | 4 +- .../base/grid/parameterInfo/gfs212.xml | 4 +- .../base/grid/parameterInfo/gfs213.xml | 4 +- .../base/grid/parameterInfo/gfs254.xml | 4 +- .../base/grid/parameterInfo/rtmaNDFD.xml | 105 + .../base/grid/parameterInfo/spcGuideNDFD.xml | 15 + .../edex_static/base/smartinit/Init.py | 28 +- .../edex_static/base/smartinit/RTMA.py | 27 +- .../base/textproducts/Generator.py | 112 +- .../textproducts/templates/product/AFD.py | 28 +- .../templates/product/AreaFcst.py | 6 +- .../product/CivilEmerg_EQR_MultiPil_Local.py | 10 +- .../templates/product/ESF_Local.py | 15 +- .../templates/product/GenericHazards.py | 27 +- .../templates/product/GenericReport.py | 13 +- .../templates/product/Hazard_AQA_MultiPil.py | 13 +- .../templates/product/Hazard_CFW_MultiPil.py | 25 +- .../templates/product/Hazard_WCN_MultiPil.py | 13 +- .../templates/product/PNS_Local.py | 18 +- .../templates/product/RFD_Local.py | 15 +- .../textproducts/templates/product/SRF.py | 1 + .../META-INF/MANIFEST.MF | 9 +- .../res/spring/goessounding-ingest.xml | 9 +- .../goessounding/GOESSoundingDecoder.java | 20 +- .../goessounding/GOESSoundingSeparator.java | 19 +- .../goessounding/GoesSoundingInput.java | 5 +- .../goessounding/dao/GOESSoundingDAO.java | 2 +- .../decoder/GOESSoundingDataAdapter.java | 28 +- .../GribDecoder.py | 60 +- .../META-INF/MANIFEST.MF | 22 +- .../build.properties | 4 +- .../res/spring/grib-decode.xml | 19 +- .../res/spring/grib-distribution.xml | 1 + .../com.raytheon.edex.plugin.grib.properties | 6 +- .../edex/plugin/grib/Grib1Decoder.java | 22 +- .../EnsembleGridAssembler.java | 14 +- .../FFGGribPostProcessor.java | 28 +- .../LapsPostProcessor.java | 12 +- .../LiftedIndexPostProcessor.java | 73 +- .../plugin/grib/spatial/GribSpatialCache.java | 45 +- .../grib/util/Grib1ParameterLookup.java | 3 +- .../plugin/grib/util/GribModelLookup.java | 113 +- .../edex/plugin/grib/util/GridModel.java | 12 + .../grid/datasetInfo/gribDatasets_NCEP-7.xml | 5 + .../base/grid/grib1ParameterConvTable.xml | 11 + .../base/grid/master_grib2_lookup.txt | 205 +- .../base/grid/parameterNameAlias.txt | 76 +- .../edex_static/base/distribution/grib.xml | 2 +- .../edex_static/base/grib/grids/grid4.xml | 2 +- .../base/grib/models/GribModels_FNMO-58.xml | 10 +- .../base/grib/models/gribModels_NCEP-7.xml | 149 +- .../base/grib/models/gribModels_NOAA-161.xml | 24 + .../base/grib/models/gribModels_RFC-9.xml | 5 +- .../base/grib/models/gribModels_RSMC-54.xml | 10 + .../postProcessModels/postProcessedModels.xml | 35 +- .../base/grib/subgrids/mEtaClip.xml | 2 +- .../base/grib/tables/7/0/4.2.3.192.table | 43 +- .../res/spring/ldadhydro-ingest.xml | 8 +- .../plugin/ldadhydro/dao/HydroDecoder.java | 15 +- .../res/spring/ldadmanual-ingest.xml | 8 +- .../plugin/ldadmanual/dao/ManualDecoder.java | 9 +- .../ldadmanual/dao/ManualLdadRecord.java | 113 +- .../res/spring/ldadprofiler-ingest.xml | 8 +- .../ldadprofiler/common/ProfilerLdadObs.java | 83 +- .../META-INF/MANIFEST.MF | 10 +- .../res/spring/obs-ingest-decode.xml | 10 +- .../res/spring/obs-ingest-metarshef.xml | 9 +- .../res/spring/obs-ingest.xml | 19 +- .../raytheon/edex/plugin/obs/ObsDecoder.java | 8 +- .../edex/plugin/obs/metar/MetarDecoder.java | 65 +- .../obs/metar/MetarPointDataTransform.java | 21 +- .../edex/plugin/obs/metar/MetarSeparator.java | 31 +- .../obs/metar/util/VisibilityParser.java | 86 +- .../META-INF/MANIFEST.MF | 9 +- .../res/spring/poessounding-ingest.xml | 8 +- .../poessounding/POESSoundingDecoder.java | 25 +- .../poessounding/POESSoundingSeparator.java | 24 +- .../poessounding/dao/POESSoundingDAO.java | 2 +- .../decoder/POESSoundingDataAdapter.java | 37 +- .../META-INF/MANIFEST.MF | 9 +- .../res/spring/profiler-ingest.xml | 8 +- .../edex/plugin/profiler/ProfilerDecoder.java | 25 +- .../plugin/profiler/ProfilerSeparator.java | 24 +- .../profiler/decoder/ProfilerDataAdapter.java | 54 +- .../META-INF/MANIFEST.MF | 38 +- .../res/spring/radar-ingest.xml | 49 +- .../res/spring/radar-request.xml | 6 + .../edex/plugin/radar/RadarDecoder.java | 532 +- .../edex/plugin/radar/dao/RadarDao.java | 66 +- .../plugin/radar/dao/RadarStationDao.java | 15 +- .../handler/GetRadarDataTreeHandler.java | 2 +- .../plugin/radar/level3/Level3BaseRadar.java | 135 +- .../radar/util/Import88DLocationsUtil.java | 78 +- .../radar/util/RadarEdexTextProductUtil.java | 4 +- .../edex/plugin/radar/util/RadarMenuUtil.java | 83 +- .../META-INF/MANIFEST.MF | 6 +- .../res/spring/recco-ingest.xml | 8 +- .../edex/plugin/recco/RECCODecoder.java | 26 +- .../edex/plugin/recco/RECCOSeparator.java | 6 +- .../edex/plugin/recco/common/RECCORecord.java | 115 +- .../plugin/recco/decoder/ReccoParser.java | 18 +- .../META-INF/MANIFEST.MF | 10 +- .../res/spring/satellite-common.xml | 9 +- .../satellite/dao/SatMapCoverageDao.java | 86 +- .../plugin/satellite/dao/SatelliteDao.java | 181 +- .../util/satellite/SatSpatialFactory.java | 71 +- .../util/satellite/SatelliteMenuUtil.java | 25 +- .../META-INF/MANIFEST.MF | 11 +- .../res/pointdata/sfcobs.xml | 13 +- .../res/pointdata/sfcobsdb.xml | 2 + .../res/spring/sfcobs-common.xml | 2 +- .../res/spring/sfcobs-ingest.xml | 33 +- .../edex/plugin/sfcobs/SfcObsDecoder.java | 15 +- .../sfcobs/SfcObsPointDataTransform.java | 191 +- .../edex/plugin/sfcobs/SfcObsSeparator.java | 22 +- .../edex/plugin/sfcobs/common/SfcObsPart.java | 16 +- .../sfcobs/decoder/AbstractSfcObsDecoder.java | 4 +- .../plugin/sfcobs/decoder/ISfcObsDecoder.java | 13 +- .../sfcobs/decoder/SfcObsDecoderFactory.java | 7 +- .../sfcobs/decoder/buoy/DRIBUSec1Decoder.java | 43 +- .../sfcobs/decoder/buoy/DRIBUSec2Decoder.java | 51 +- .../sfcobs/decoder/buoy/DRIBUSec3Decoder.java | 16 +- .../sfcobs/decoder/buoy/DRIBUSec4Decoder.java | 19 +- .../sfcobs/decoder/buoy/DRIBUSec5Decoder.java | 2 +- .../decoder/buoy/DRIBUSynopticDecoder.java | 84 +- .../synoptic/AbstractSectionDecoder.java | 2 +- .../synoptic/AbstractSynopticDecoder.java | 18 +- .../decoder/synoptic/CMANSynopticDecoder.java | 8 +- .../sfcobs/decoder/synoptic/ISynoptic.java | 39 +- .../decoder/synoptic/LandSynopticDecoder.java | 5 +- .../synoptic/MAROBSynopticDecoder.java | 8 +- .../synoptic/MobileSynopticDecoder.java | 30 +- .../decoder/synoptic/SHIPSynopticDecoder.java | 32 +- .../decoder/synoptic/SynopticGroups.java | 120 +- .../decoder/synoptic/SynopticSec1Decoder.java | 98 +- .../decoder/synoptic/SynopticSec2Decoder.java | 67 +- .../decoder/synoptic/SynopticSec3Decoder.java | 85 +- .../decoder/synoptic/SynopticSec4Decoder.java | 23 +- .../decoder/synoptic/SynopticSec5Decoder.java | 2 +- .../synoptic/regional/Sec5Block72Decoder.java | 48 +- .../regional/Sec5MaritimeDecoder.java | 104 +- .../sfcobs/decoder/TestSfcObsDecoders.java | 12 +- .../META-INF/MANIFEST.MF | 11 +- ...f.common.serialization.ISerializableObject | 12 + .../res/spring/shef-ingest.xml | 17 +- .../raytheon/edex/plugin/shef/SHEFParser.java | 833 +- .../edex/plugin/shef/ShefDecoder.java | 168 +- .../edex/plugin/shef/ShefSeparator.java | 60 +- .../edex/plugin/shef/data/ShefData.java | 392 +- .../edex/plugin/shef/data/ShefRecord.java | 36 +- .../edex/plugin/shef/database/PostShef.java | 2680 +++--- .../edex/plugin/shef/database/PostTables.java | 818 +- .../edex/plugin/shef/database/PurgeText.java | 5 +- .../edex/plugin/shef/ohdlib/GagePP.java | 15 +- .../edex/plugin/shef/ohdlib/GagePPWrite.java | 14 +- .../edex/plugin/shef/util/SHEFDate.java | 753 +- .../edex/plugin/shef/util/ShefUtil.java | 9 +- .../shef/AbstractShefTransformer.java | 13 +- .../transform/shef/MetarToShefFilter.java | 71 +- .../shef/MetarToShefTransformer.java | 12 +- .../transform/shef/SMToShefTransformer.java | 7 +- .../edex_static/base/distribution/shef.xml | 2 +- .../META-INF/MANIFEST.MF | 18 +- .../res/spring/textlightning_ep-ingest.xml | 8 +- .../textlightning/TextLightningDecoder.java | 50 +- .../impl/TextLightningParser.java | 295 +- .../base/distribution/textlightning.xml | 4 +- .../META-INF/MANIFEST.MF | 4 +- .../WarningDecoder.py | 10 +- .../build.properties | 1 + .../res/spring/warning-common.xml | 77 +- .../res/spring/warning-ingest.xml | 108 +- .../res/spring/warning-request.xml | 54 +- .../GenerateGeospatialDataRequestHandler.java | 17 +- .../warning/gis/GeospatialDataGenerator.java | 498 +- .../base/purge/warningPurgeRules.xml | 6 +- .../edex_static/base/distribution/warning.xml | 2 +- .../res/spring/uengine-request.xml | 54 +- .../META-INF/MANIFEST.MF | 3 +- .../build.properties | 3 +- .../res/spring/rpgenvdata-spring.xml | 33 +- .../META-INF/MANIFEST.MF | 23 +- .../build.properties | 3 +- .../edex/uengine/MicroEngineTaskManager.java | 12 +- .../edex/uengine/runners/LdadMicroEngine.java | 57 +- .../edex/uengine/runners/MicroEngine.java | 56 +- .../edex/uengine/tasks/output/FileOut.java | 13 +- .../base/python/GempakMosaicImgLinkRequest.py | 2 +- .../base/python/GempakRadarImgLinkRequest.py | 2 +- .../edex_static/base/python/GridRequest.py | 48 +- .../edex_static/base/python/McidasRequest.py | 44 +- .../edex_static/base/python/RadarRequest.py | 46 +- .../base/python/SatelliteRequest.py | 46 +- .../META-INF/MANIFEST.MF | 11 +- .../common/activetable/ActiveTableRecord.java | 3 +- .../SendPracticeProductRequest.java | 72 +- .../uf/common/activetable/VTECPartners.java | 58 +- .../common/archive/config/ArchiveConfig.java | 22 +- .../archive/config/ArchiveConfigManager.java | 293 +- .../archive/config/ArchiveConstants.java | 3 + .../common/archive/config/CategoryConfig.java | 52 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 18 +- .../build.properties | 3 +- .../common/dataplugin/acars/ACARSRecord.java | 243 +- .../META-INF/MANIFEST.MF | 12 +- .../acarssounding/ACARSSoundingLayer.java | 85 +- .../acarssounding/ACARSSoundingRecord.java | 4 +- .../common_static/base/stations/airports.xml | 150 + .../META-INF/MANIFEST.MF | 18 +- .../build.properties | 3 +- .../binlightning/BinLightningRecord.java | 400 +- .../impl/LightningStrikePoint.java | 111 +- .../binlightning/impl/LtgMsgType.java | 46 +- .../binlightning/impl/LtgStrikeType.java | 41 +- .../META-INF/MANIFEST.MF | 8 +- .../dataplugin/bufrncwf/NCWFFeature.java | 8 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 8 +- .../dataplugin/bufrssmi/SSMIScanData.java | 5 +- .../META-INF/MANIFEST.MF | 11 +- .../build.properties | 3 +- .../uf/common/dataplugin/bufrua/UAObs.java | 306 +- .../dataplugin/bufrua/UAObsAdapter.java | 123 +- .../common/dataplugin/bufrua/UAObsLevel.java | 4 +- .../bufrua/dao/BufrUAPointDataTransform.java | 20 +- .../META-INF/MANIFEST.MF | 5 +- .../uf/common/dataplugin/cwa/CWARecord.java | 3 +- .../META-INF/MANIFEST.MF | 8 +- .../META-INF/MANIFEST.MF | 22 +- .../uf/common/dataplugin/ffmp/FFMPRecord.java | 71 +- .../common/dataplugin/ffmp/FFMPTemplates.java | 87 +- .../uf/common/dataplugin/ffmp/FFMPUtils.java | 144 +- .../ffmp/dataaccess/FFMPGeometryFactory.java | 101 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 12 +- .../dataplugin/fssobs/FSSObsRecord.java | 226 +- .../fssobs/FSSObsRecordTransform.java | 12 +- .../META-INF/MANIFEST.MF | 17 +- .../uf/common/dataplugin/gfe/RemapGrid.java | 159 +- .../dataplugin/gfe/config/ProjectionData.java | 168 +- .../gfe/dataaccess/GFEDataAccessUtil.java | 8 +- .../gfe/dataaccess/GFEGridFactory.java | 137 +- .../dataplugin/gfe/db/objects/DatabaseID.java | 19 + .../gfe/db/objects/GridLocation.java | 123 +- .../dataplugin/gfe/db/type/OriginHibType.java | 20 +- .../dataplugin/gfe/db/type/ParmIdType.java | 19 +- .../dataplugin/gfe/db/type/WsIdType.java | 35 +- .../uf/common/dataplugin/gfe/grid/Grid2D.java | 3 +- .../common/dataplugin/gfe/grid/Grid2DBit.java | 18 + .../dataplugin/gfe/grid/Grid2DByte.java | 10 +- .../dataplugin/gfe/grid/Grid2DFloat.java | 10 +- .../gfe/point/GFEPointDataContainer.java | 19 +- .../gfe/point/GFEPointDataContainers.java | 14 +- .../gfe/point/GFEPointDataView.java | 20 +- .../gfe/python/GfePyIncludeUtil.java | 7 +- .../gfe/reference/ReferenceData.java | 2 +- .../gfe/request/SaveGfeGridRequest.java | 59 +- .../dataplugin/gfe/sample/SampleData.java | 2 +- .../dataplugin/gfe/sample/SampleId.java | 30 +- .../gfe/server/notify/GfeNotification.java | 46 +- .../gfe/server/request/GetGridRequest.java | 60 +- .../gfe/server/request/SaveGridRequest.java | 34 +- .../common/dataplugin/gfe/util/GfeUtil.java | 5 +- .../base/colormaps/GFE/Hazards.cmap | 197 +- .../META-INF/MANIFEST.MF | 5 +- .../dataplugin/goessounding/GOESSounding.java | 3 +- .../META-INF/MANIFEST.MF | 14 +- .../res/scripts/grid_indices.sql | 11 - .../dataplugin/grid/GridInfoRecord.java | 63 +- .../uf/common/dataplugin/grid/GridRecord.java | 31 +- .../dataaccess/GridDataAccessFactory.java | 149 +- .../grid/dataset/DatasetInfoLookup.java | 12 +- .../grid/util/GridLevelTranslator.java | 4 +- .../dataplugin/grid/util/StaticGridData.java | 164 +- .../base/grid/dataset/alias/d2d-title.xml | 14 +- .../base/styleRules/d2dArrowStyleRules.xml | 10 + .../base/styleRules/d2dContourStyleRules.xml | 116 +- .../base/styleRules/gridImageryStyleRules.xml | 790 +- .../base/styleRules/gridReprojectionRules.xml | 1 - .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 25 +- .../META-INF/MANIFEST.MF | 5 +- .../dataplugin/lsr/LocalStormReport.java | 62 +- .../META-INF/MANIFEST.MF | 3 +- .../common/dataplugin/madis/MadisRecord.java | 3 +- .../META-INF/MANIFEST.MF | 3 +- .../ModelSoundingPointDataTransform.java | 5 +- .../.classpath | 2 +- .../META-INF/MANIFEST.MF | 6 +- .../npp/sounding/NPPSoundingRecord.java | 19 +- .../META-INF/MANIFEST.MF | 6 +- .../viirs/projection/VIIRSMapProjection.java | 27 +- .../projection/VIIRSMapProjectionFactory.java | 16 +- .../META-INF/MANIFEST.MF | 5 +- .../res/spring/obs-common-dataaccess.xml | 47 +- .../dataplugin/obs/metar/MetarRecord.java | 381 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 10 +- .../META-INF/MANIFEST.MF | 5 +- .../profiler/dao/ProfilerDataTransform.java | 5 +- .../META-INF/MANIFEST.MF | 22 +- .../uf/common/dataplugin/qc/QCRecord.java | 2 +- .../META-INF/MANIFEST.MF | 6 +- .../META-INF/MANIFEST.MF | 13 +- .../common/dataplugin/radar/RadarRecord.java | 62 +- .../common/dataplugin/radar/RadarStation.java | 5 +- .../radar/dataaccess/RadarGridFactory.java | 266 +- .../level3/AlertAdaptationParameters.java | 12 +- .../dataplugin/radar/level3/AlertMessage.java | 12 +- .../radar/level3/CellTrendDataPacket.java | 17 +- .../level3/CellTrendVolumeScanPacket.java | 15 +- .../dataplugin/radar/level3/GSMBlock.java | 17 +- .../radar/level3/GenericDataPacket.java | 16 +- .../dataplugin/radar/level3/GraphicBlock.java | 12 +- .../radar/level3/HailPositivePacket.java | 15 +- .../radar/level3/HailProbablePacket.java | 25 +- .../radar/level3/HdaHailPacket.java | 18 +- .../common/dataplugin/radar/level3/Layer.java | 12 +- .../level3/LinkedContourVectorPacket.java | 13 +- .../dataplugin/radar/level3/LinkedVector.java | 14 +- .../radar/level3/LinkedVectorPacket.java | 16 +- .../radar/level3/MesocyclonePacket.java | 16 +- .../radar/level3/PacketFactory.java | 11 +- .../radar/level3/SCITDataPacket.java | 15 +- .../radar/level3/STICirclePacket.java | 17 +- .../level3/SpecialGraphicSymbolPacket.java | 19 +- .../radar/level3/StormIDPacket.java | 17 +- .../radar/level3/SuperObWindDataPacket.java | 17 +- .../radar/level3/SymbologyBlock.java | 31 +- .../dataplugin/radar/level3/TVSPacket.java | 14 +- .../dataplugin/radar/level3/TabularBlock.java | 11 +- .../radar/level3/TextSymbolPacket.java | 13 +- .../level3/UnlinkedContourVectorPacket.java | 19 +- .../radar/level3/UnlinkedVector.java | 13 +- .../radar/level3/UnlinkedVectorPacket.java | 15 +- .../radar/level3/VectorArrowPacket.java | 15 +- .../radar/level3/WindBarbPacket.java | 18 +- .../projection/RadialBinMapProjection.java | 13 +- .../dataplugin/radar/util/RadarConstants.java | 3 +- .../dataplugin/radar/util/RadarUtil.java | 26 +- .../base/styleRules/RadarUpperText.xml | 3 +- .../styleRules/radarImageryStyleRules.xml | 28 +- .../META-INF/MANIFEST.MF | 7 +- .../dataplugin/satellite/SatMapCoverage.java | 42 +- .../dataplugin/satellite/SatelliteRecord.java | 54 +- .../dataaccess/SatelliteGridFactory.java | 76 +- .../satellite/units/SatelliteUnits.java | 61 +- .../units/goes/PercentOfNormalTPWPixel.java | 12 +- .../META-INF/MANIFEST.MF | 5 +- .../scan/data/CellTableDataRow.java | 5 +- .../dataplugin/scan/data/ScanTableData.java | 11 +- .../META-INF/MANIFEST.MF | 5 +- .../common/dataplugin/sfcobs/ObsCommon.java | 172 +- .../META-INF/MANIFEST.MF | 6 +- .../dataplugin/shef/util/ParameterCode.java | 894 +- .../dataplugin/shef/util/ShefConstants.java | 73 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 5 +- .../tcs/TropicalCycloneSummary.java | 5 +- .../uf/common/dataplugin/tcs/util/Util.java | 19 +- .../.classpath | 2 +- .../META-INF/MANIFEST.MF | 20 +- ...f.common.serialization.ISerializableObject | 4 +- .../text/AfosWmoIdDataContainer.java | 4 +- .../dataplugin/text/AutoFaxContainer.java | 6 +- .../text/StdTextProductContainer.java | 4 +- .../text/alarms/AlarmAlertProduct.java | 4 +- .../text/db/OperationalStdTextProduct.java | 4 +- .../text/db/PracticeStdTextProduct.java | 4 +- .../dataplugin/text/db/StdTextProduct.java | 11 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 6 +- .../warning/AbstractWarningRecord.java | 32 +- .../warning/config/DialogConfiguration.java | 56 +- .../warning/config/WarngenConfiguration.java | 31 +- .../warning/gis/GeospatialFactory.java | 116 +- .../warning/gis/GeospatialTime.java | 10 + .../warning/gis/GeospatialTimeSet.java | 9 +- .../dataplugin/warning/util/GeometryUtil.java | 22 + .../base/warngen/VM_global_library.vm | 197 +- .../base/warngen/airportWeatherWarning.vm | 44 +- .../base/warngen/airportWeatherWarning.xml | 18 +- .../base/warngen/arealFloodAdvisory.vm | 24 +- .../base/warngen/arealFloodAdvisory.xml | 129 +- .../warngen/arealFloodAdvisoryFollowup.vm | 18 +- .../warngen/arealFloodAdvisoryFollowup.xml | 116 +- .../base/warngen/arealFloodWarning.vm | 37 +- .../base/warngen/arealFloodWarning.xml | 67 +- .../base/warngen/arealFloodWarningFollowup.vm | 66 +- .../warngen/arealFloodWarningFollowup.xml | 91 +- .../warngen/burnScarFlashFloodWarning.xml | 6 +- .../common_static/base/warngen/config.vm | 10 + .../base/warngen/countyTypes.txt | 3 +- .../common_static/base/warngen/dssEvents.vm | 33 +- .../common_static/base/warngen/dssEvents.xml | 43 +- .../base/warngen/extremeWindWarning.vm | 4 +- .../base/warngen/extremeWindWarning.xml | 6 +- .../warngen/extremeWindWarningFollowup.vm | 20 +- .../warngen/extremeWindWarningFollowup.xml | 6 +- .../common_static/base/warngen/fireWarning.vm | 44 +- .../base/warngen/fireWarning.xml | 15 +- .../base/warngen/flashFloodWarning.vm | 5 +- .../base/warngen/flashFloodWarning.xml | 15 +- .../base/warngen/flashFloodWarningFollowup.vm | 5 +- .../warngen/flashFloodWarningFollowup.xml | 6 +- .../base/warngen/geospatialConfig_COUNTY.xml | 1 + .../base/warngen/geospatialConfig_MARINE.xml | 1 + .../base/warngen/geospatialConfig_ZONE.xml | 1 + .../impactSevereThunderstormWarning.vm | 39 +- .../impactSevereThunderstormWarning.xml | 18 +- .../warngen/impactSevereWeatherStatement.vm | 89 +- .../warngen/impactSevereWeatherStatement.xml | 70 +- .../warngen/impactSpecialMarineWarning.vm | 15 +- .../warngen/impactSpecialMarineWarning.xml | 9 +- .../impactSpecialMarineWarningFollowup.vm | 49 +- .../impactSpecialMarineWarningFollowup.xml | 9 +- .../base/warngen/impactStatements.vm | 21 +- .../base/warngen/impactTornadoWarning.vm | 40 +- .../base/warngen/impactTornadoWarning.xml | 48 +- .../base/warngen/marineWeatherStatement.vm | 13 +- .../base/warngen/marineWeatherStatement.xml | 14 +- .../warngen/marineWeatherStatementAshfall.xml | 6 +- .../common_static/base/warngen/mileMarkers.vm | 21 +- .../base/warngen/mileMarkers.xml | 30 +- .../nonConvectiveFlashFloodWarning.xml | 66 +- .../nonConvectiveFlashFloodWarningFollowup.vm | 39 +- ...nonConvectiveFlashFloodWarningFollowup.xml | 85 +- .../base/warngen/severeThunderstormWarning.vm | 6 +- .../warngen/severeThunderstormWarning.xml | 9 +- .../base/warngen/severeWeatherStatement.vm | 25 +- .../base/warngen/severeWeatherStatement.xml | 22 +- .../base/warngen/shortTermForecast.vm | 10 +- .../base/warngen/shortTermForecast.xml | 11 +- .../warngen/significantWeatherAdvisory.vm | 5 +- .../warngen/significantWeatherAdvisory.xml | 22 +- .../base/warngen/specialMarineWarning.vm | 4 +- .../base/warngen/specialMarineWarning.xml | 14 +- .../warngen/specialMarineWarningFollowup.vm | 33 +- .../warngen/specialMarineWarningFollowup.xml | 9 +- .../base/warngen/specialWeatherStatement.vm | 23 +- .../base/warngen/specialWeatherStatement.xml | 26 +- .../base/warngen/tornadoWarning.vm | 6 +- .../base/warngen/tornadoWarning.xml | 7 +- .../META-INF/MANIFEST.MF | 5 +- .../META-INF/MANIFEST.MF | 5 +- .../uf/common/gridcoverage/GridCoverage.java | 10 +- .../LambertConformalGridCoverage.java | 14 +- .../META-INF/MANIFEST.MF | 7 +- .../dataaccess/HydroGeometryFactory.java | 39 +- .../uf/common/hydro/spatial/HRAP.java | 12 +- .../common/hydro/spatial/HRAPCoordinates.java | 23 +- .../common_static/base/python/ModuleUtil.py | 20 +- .../base/python/PythonOverrider.py | 33 +- .../base/python/PythonOverriderCore.py | 43 +- .../base/python/PythonOverriderPure.py | 6 +- .../META-INF/MANIFEST.MF | 5 +- .../cpg/MonitorStateConfigurationManager.java | 8 + .../common/monitor/cpg/MonitorStateXML.java | 14 +- .../META-INF/MANIFEST.MF | 11 +- .../uf/common/monitor/MonitorAreaUtils.java | 954 ++- .../common/monitor/data/AdjacentWfoMgr.java | 56 +- .../uf/common/monitor/scan/ScanUtils.java | 91 +- .../common/monitor/xml/MonAreaConfigXML.java | 25 +- .../base/monitoring/MonitorPluginState.xml | 3 +- .../META-INF/MANIFEST.MF | 10 +- .../raytheon/uf/common/mpe/util/DPAFile.java | 10 +- .../raytheon/uf/common/mpe/util/XmrgFile.java | 53 +- .../META-INF/MANIFEST.MF | 2 +- .../META-INF/MANIFEST.MF | 3 +- .../raytheon/uf/common/ohd/AppsDefaults.java | 26 +- .../common_static/base/hydro/Apps_defaults | 100 +- .../.classpath | 2 +- .../META-INF/MANIFEST.MF | 6 +- .../base/parameter/alias/gempak.xml | 6 +- .../base/parameter/definition/parameters.xml | 35 + .../META-INF/MANIFEST.MF | 6 +- .../uf/common/plugin/nwsauth/user/User.java | 107 +- .../uf/common/plugin/nwsauth/user/UserId.java | 78 +- .../META-INF/MANIFEST.MF | 3 +- .../build.properties | 3 +- .../uf/common/registry/RegistryHandler.java | 5 +- .../common/registry/RegistryJaxbManager.java | 38 +- .../registry/RegistryNamespaceMapper.java | 4 +- .../ebxml/FactoryRegistryHandler.java | 29 +- .../common/registry/ebxml/RegistryUtil.java | 31 +- .../registry/ebxml/SOAPRegistryManager.java | 2 +- .../registry/ebxml/ThriftRegistryHandler.java | 7 +- .../registry/ebxml/encoder/JaxbEncoder.java | 20 +- .../handler/BaseRegistryObjectHandler.java | 9 +- .../handler/IRegistryObjectHandler.java | 5 +- .../.classpath | 1 + .../build.properties | 3 +- .../registry/event/InsertRegistryEvent.java | 5 +- .../common/registry/event/RegistryEvent.java | 16 +- .../registry/event/RemoveRegistryEvent.java | 14 +- .../registry/event/UpdateRegistryEvent.java | 5 +- .../META-INF/MANIFEST.MF | 11 +- .../schemas/ebxml/util/DurationType.java | 19 +- .../schemas/ebxml/util/EbxmlJaxbManager.java | 3 +- .../schemas/ebxml/util/ObjectIdGenerator.java | 3 +- .../schemas/ebxml/util/SerializedType.java | 17 +- .../ebxml/util/XMLGregorianCalendarType.java | 18 +- .../wsdl/registry/services/v4/Cataloger.java | 2 +- .../services/v4/CatalogerSOAPService.java | 2 +- .../services/v4/LifecycleManager.java | 2 +- .../v4/LifecycleManagerSOAPService.java | 2 +- .../services/v4/MsgRegistryException.java | 2 +- .../services/v4/NotificationListener.java | 2 +- .../v4/NotificationListenerSOAPService.java | 2 +- .../registry/services/v4/QueryManager.java | 2 +- .../services/v4/QueryManagerSOAPService.java | 2 +- .../wsdl/registry/services/v4/Validator.java | 2 +- .../services/v4/ValidatorSOAPService.java | 2 +- .../xsd/lcm/v4/RemoveObjectsRequest.java | 7 +- .../xsd/lcm/v4/SubmitObjectsRequest.java | 27 +- .../xsd/lcm/v4/UpdateObjectsRequest.java | 27 +- .../ebxml/regrep/xsd/lcm/v4/package-info.java | 2 +- .../regrep/xsd/query/v4/ObjectFactory.java | 2 +- .../xsd/query/v4/QueryExceptionType.java | 2 +- .../regrep/xsd/query/v4/QueryRequest.java | 2 +- .../regrep/xsd/query/v4/QueryResponse.java | 2 +- .../regrep/xsd/query/v4/package-info.java | 2 +- .../ebxml/regrep/xsd/rim/v4/ActionType.java | 2 +- .../ebxml/regrep/xsd/rim/v4/AnyValueType.java | 2 +- .../regrep/xsd/rim/v4/AssociationType.java | 2 +- .../regrep/xsd/rim/v4/AuditableEventType.java | 2 +- .../regrep/xsd/rim/v4/BooleanValueType.java | 2 +- .../xsd/rim/v4/ClassificationNodeType.java | 2 +- .../xsd/rim/v4/ClassificationSchemeType.java | 2 +- .../regrep/xsd/rim/v4/ClassificationType.java | 2 +- .../xsd/rim/v4/CollectionValueType.java | 2 +- .../ebxml/regrep/xsd/rim/v4/CommentType.java | 2 +- .../regrep/xsd/rim/v4/DateTimeValueType.java | 2 +- .../regrep/xsd/rim/v4/DeliveryInfoType.java | 2 +- .../regrep/xsd/rim/v4/DurationValueType.java | 2 +- .../xsd/rim/v4/DynamicObjectRefType.java | 2 +- .../regrep/xsd/rim/v4/EmailAddressType.java | 2 +- .../tc/ebxml/regrep/xsd/rim/v4/EntryType.java | 2 +- .../xsd/rim/v4/ExtensibleObjectType.java | 2 +- .../xsd/rim/v4/ExternalIdentifierType.java | 2 +- .../regrep/xsd/rim/v4/ExternalLinkType.java | 2 +- .../xsd/rim/v4/ExtrinsicObjectType.java | 2 +- .../regrep/xsd/rim/v4/FederationType.java | 2 +- .../regrep/xsd/rim/v4/FloatValueType.java | 2 +- .../regrep/xsd/rim/v4/IdentifiableType.java | 2 +- .../regrep/xsd/rim/v4/IntegerValueType.java | 2 +- .../xsd/rim/v4/InternationalStringType.java | 2 +- .../rim/v4/InternationalStringValueType.java | 2 +- .../xsd/rim/v4/LocalizedStringType.java | 2 +- .../tc/ebxml/regrep/xsd/rim/v4/MapType.java | 2 +- .../ebxml/regrep/xsd/rim/v4/MapValueType.java | 2 +- .../regrep/xsd/rim/v4/NotificationType.java | 2 +- .../regrep/xsd/rim/v4/ObjectFactory.java | 2 +- .../regrep/xsd/rim/v4/ObjectRefListType.java | 2 +- .../regrep/xsd/rim/v4/ObjectRefType.java | 2 +- .../regrep/xsd/rim/v4/OrganizationType.java | 2 +- .../regrep/xsd/rim/v4/ParameterType.java | 2 +- .../tc/ebxml/regrep/xsd/rim/v4/PartyType.java | 2 +- .../regrep/xsd/rim/v4/PersonNameType.java | 2 +- .../ebxml/regrep/xsd/rim/v4/PersonType.java | 2 +- .../regrep/xsd/rim/v4/PostalAddressType.java | 2 +- .../xsd/rim/v4/QueryDefinitionType.java | 2 +- .../xsd/rim/v4/QueryExpressionType.java | 2 +- .../tc/ebxml/regrep/xsd/rim/v4/QueryType.java | 2 +- .../xsd/rim/v4/RegistryObjectListType.java | 2 +- .../regrep/xsd/rim/v4/RegistryObjectType.java | 7 +- .../xsd/rim/v4/RegistryPackageType.java | 2 +- .../ebxml/regrep/xsd/rim/v4/RegistryType.java | 2 +- .../tc/ebxml/regrep/xsd/rim/v4/RoleType.java | 2 +- .../regrep/xsd/rim/v4/ServiceBindingType.java | 2 +- .../xsd/rim/v4/ServiceEndpointType.java | 2 +- .../xsd/rim/v4/ServiceInterfaceType.java | 2 +- .../ebxml/regrep/xsd/rim/v4/ServiceType.java | 2 +- .../regrep/xsd/rim/v4/SimpleLinkType.java | 2 +- .../tc/ebxml/regrep/xsd/rim/v4/SlotType.java | 2 +- .../regrep/xsd/rim/v4/SlotValueType.java | 2 +- .../xsd/rim/v4/StringQueryExpressionType.java | 2 +- .../regrep/xsd/rim/v4/StringValueType.java | 2 +- .../regrep/xsd/rim/v4/SubscriptionType.java | 2 +- .../xsd/rim/v4/TaxonomyElementType.java | 2 +- .../xsd/rim/v4/TelephoneNumberType.java | 2 +- .../tc/ebxml/regrep/xsd/rim/v4/ValueType.java | 2 +- .../regrep/xsd/rim/v4/VocabularyTermType.java | 2 +- .../xsd/rim/v4/VocabularyTermValueType.java | 2 +- .../regrep/xsd/rim/v4/WorkflowActionType.java | 2 +- .../xsd/rim/v4/XMLQueryExpressionType.java | 2 +- .../ebxml/regrep/xsd/rim/v4/package-info.java | 2 +- .../rs/v4/AuthenticationExceptionType.java | 2 +- .../xsd/rs/v4/AuthorizationExceptionType.java | 2 +- .../rs/v4/InvalidRequestExceptionType.java | 2 +- .../xsd/rs/v4/ObjectExistsExceptionType.java | 2 +- .../ebxml/regrep/xsd/rs/v4/ObjectFactory.java | 2 +- .../rs/v4/ObjectNotFoundExceptionType.java | 2 +- .../xsd/rs/v4/QuotaExceededExceptionType.java | 2 +- .../rs/v4/ReferencesExistExceptionType.java | 2 +- .../xsd/rs/v4/RegistryExceptionType.java | 2 +- .../regrep/xsd/rs/v4/RegistryRequestType.java | 2 +- .../xsd/rs/v4/RegistryResponseType.java | 4 +- .../xsd/rs/v4/TimeoutExceptionType.java | 2 +- .../v4/UnresolvedReferenceExceptionType.java | 2 +- .../UnsupportedCapabilityExceptionType.java | 2 +- .../ebxml/regrep/xsd/rs/v4/package-info.java | 2 +- .../xsd/spi/v4/CatalogObjectsRequest.java | 4 +- .../xsd/spi/v4/CatalogObjectsResponse.java | 2 +- .../xsd/spi/v4/CatalogingExceptionType.java | 2 +- .../xsd/spi/v4/FilterObjectsRequest.java | 2 +- .../xsd/spi/v4/FilterObjectsResponse.java | 2 +- .../xsd/spi/v4/FilteringExceptionType.java | 2 +- .../xsd/spi/v4/ValidateObjectsRequest.java | 4 +- .../xsd/spi/v4/ValidateObjectsResponse.java | 2 +- .../xsd/spi/v4/ValidationExceptionType.java | 2 +- .../ebxml/regrep/xsd/spi/v4/package-info.java | 2 +- .../src/org/w3/v1999/xlink/ArcType.java | 2 +- .../src/org/w3/v1999/xlink/Extended.java | 2 +- .../src/org/w3/v1999/xlink/LocatorType.java | 2 +- .../src/org/w3/v1999/xlink/ObjectFactory.java | 2 +- .../src/org/w3/v1999/xlink/ResourceType.java | 2 +- .../src/org/w3/v1999/xlink/Simple.java | 2 +- .../src/org/w3/v1999/xlink/TitleEltType.java | 2 +- .../src/org/w3/v1999/xlink/package-info.java | 2 +- .../w3/v200508/addressing/ObjectFactory.java | 2 +- .../w3/v200508/addressing/RelatesToType.java | 2 +- .../w3/v200508/addressing/package-info.java | 2 +- .../META-INF/MANIFEST.MF | 12 +- .../META-INF/MANIFEST.MF | 5 +- .../uf/common/sounding/VerticalSounding.java | 5 +- .../META-INF/MANIFEST.MF | 14 +- .../uf/common/tafqueue/TafQueueRecord.java | 31 +- .../uf/common/tafqueue/TafQueueRequest.java | 3 +- .../common/tafqueue/TafQueueVftConfigMgr.java | 223 +- .../META-INF/MANIFEST.MF | 10 +- .../res/spring/activetable-common.xml | 99 +- .../res/spring/activetable-ingest.xml | 84 +- .../res/spring/activetable-request.xml | 166 +- .../uf/edex/activetable/ActiveTable.java | 227 +- .../uf/edex/activetable/ActiveTableSrv.java | 91 +- .../uf/edex/activetable/GetNextEtnUtil.java | 2 +- .../vtecsharing/FetchActiveTableSrv.java | 24 +- .../common_static/base/vtec/ActiveTable.py | 90 +- .../common_static/base/vtec/MergeVTEC.py | 11 +- .../common_static/base/vtec/VTECPartners.py | 10 +- .../common_static/base/vtec/VTECTable.py | 12 +- .../base/vtec/VTECTableSqueeze.py | 56 +- .../common_static/base/vtec/VTECTableUtil.py | 20 +- .../common_static/base/vtec/requestAT.py | 12 +- .../utility/common_static/base/vtec/sendAT.py | 12 +- .../com.raytheon.uf.edex.archive/.classpath | 10 +- .../META-INF/MANIFEST.MF | 3 +- .../build.properties | 4 +- .../res/spring/archive-spring.xml | 4 + .../archive/DatabaseArchiveProcessor.java | 14 +- .../uf/edex/archive/DatabaseArchiver.java | 117 +- .../uf/edex/archive/purge/ArchivePurger.java | 51 +- .../ArchiveAdminPrivilegedRequestHandler.java | 18 +- .../base/archiver/purger/PROCESSED_DATA.xml | 7 +- .../base/archiver/purger/RAW_DATA.xml | 99 +- .../feature.xml | 7 + .../feature.xml | 92 +- .../META-INF/MANIFEST.MF | 12 +- .../edex/bufrtools/AbstractBUFRDecoder.java | 20 +- .../edex/bufrtools/BUFRPointDataAdapter.java | 28 +- .../feature.xml | 35 +- .../feature.xml | 18 +- .../feature.xml | 90 +- .../res/spring/cpgsrv-spring.xml | 20 +- .../cpgsrv/CompositeProductGenerator.java | 63 +- .../META-INF/MANIFEST.MF | 10 +- .../raytheon/uf/edex/dat/utils/DATUtils.java | 192 +- .../uf/edex/dat/utils/DatMenuUtil.java | 163 +- .../uf/edex/dat/utils/FreezingLevel.java | 213 +- .../.classpath | 2 +- .../com.raytheon.uf.edex.dataaccess/.project | 6 + .../META-INF/MANIFEST.MF | 8 +- .../res/spring/dataaccess-request.xml | 40 + .../handler/GetAvailableTimesHandler.java | 10 +- .../base/python/dataaccess/JDataRequest.py | 20 +- .../base/python/dataaccess/JGeometryData.py | 9 +- .../base/python/dataaccess/JGridData.py | 41 +- .../base/python/dataaccess/JepRouter.py | 58 +- .../feature.xml | 142 +- .../META-INF/MANIFEST.MF | 21 +- .../aircraft/AircraftLatitude.java | 46 +- .../aircraft/AircraftRemarks.java | 15 +- .../uf/edex/decodertools/aircraft/Entry.java | 33 +- .../decodertools/aircraft/WordTranslator.java | 16 +- .../uf/edex/decodertools/core/BasePoint.java | 209 +- .../edex/decodertools/core/DecoderInput.java | 3 +- .../edex/decodertools/core/DecoderTools.java | 233 +- .../decodertools/core/IDecoderConstants.java | 71 +- .../edex/decodertools/core/IDecoderInput.java | 3 +- .../edex/decodertools/core/LatLonPoint.java | 385 +- .../core/PlatformLocationProxy.java | 12 +- .../core/filterimpl/AbstractObsFilter.java | 27 +- .../filterimpl/PluginDataObjectFilter.java | 98 +- .../core/filterimpl/RadiusFilterElement.java | 26 +- .../core/filterimpl/RectFilterElement.java | 8 +- .../filterimpl/StationIdFilterElement.java | 10 +- .../filterimpl/WMOHeaderFilterElement.java | 30 +- .../uf/edex/decodertools/time/TimeTools.java | 477 +- .../sql/AWIPSCommonObsSQLGenerator.java | 171 +- .../META-INF/MANIFEST.MF | 5 +- .../res/spring/dissemination-request.xml | 26 +- .../uf/edex/dissemination/ModifyProduct.java | 2 +- .../uf/edex/dissemination/OUPHandler.java | 14 +- ...isseminationNationalDatasetSubscriber.java | 42 +- .../base/dissemination/handleOUP.py | 8 +- .../META-INF/MANIFEST.MF | 32 +- .../grid/staticdata/StaticDataGenerator.java | 64 +- .../grid/staticdata/topo/StaticTopoData.java | 65 +- .../res/spring/gridcoverage-common.xml | 4 +- .../feature.xml | 9 +- .../build.properties | 3 +- .../uf/edex/menus/AbstractMenuUtil.java | 59 +- .../META-INF/MANIFEST.MF | 4 +- .../build.properties | 3 +- .../res/spring/metartohmdb-plugin.xml | 9 +- .../uf/edex/metartohmdb/MetarToHMDBSrv.java | 21 +- .../uf/edex/metartohmdb/dao/HMDBReport.java | 25 +- .../uf/edex/metartohmdb/dao/HMDBRptDao.java | 14 +- .../META-INF/MANIFEST.MF | 9 +- .../build.properties | 2 +- .../res/spring/ogc-common-convert.xml | 4 +- .../res/spring/ogc-common.xml | 4 +- .../uf/edex/ogc/common/OgcResponse.java | 2 +- .../ogc/common/db/SQLParamRestriction.java | 3 +- .../uf/edex/ogc/common/db/SimpleLayer.java | 2 +- .../uf/edex/ogc/common/feature/GmlUtils.java | 2 +- .../common/feature/JsonFeatureFormatter.java | 61 +- .../edex/ogc/common/feature/ObsLocation.java | 5 +- .../common/feature/ShpFeatureFormatter.java | 2 +- .../feature/SimpleFeatureFormatter.java | 2 +- .../edex/ogc/common/http/OgcHttpEndpoint.java | 2 +- .../edex/ogc/common/http/OgcHttpHandler.java | 3 + .../edex/ogc/common/jaxb/OgcJaxbManager.java | 368 +- .../ogc/common/spatial/BoundingBoxUtil.java | 23 +- .../ogc/common/util/DefaultConverter.java | 3 +- .../META-INF/MANIFEST.MF | 9 +- .../com.raytheon.uf.edex.ohd/build.properties | 4 +- .../res/spring/arealQpeGen-spring.xml | 6 +- .../res/spring/hpeDHRDecoder-spring.xml | 8 +- .../res/spring/mpeLightningSrv-ingest.xml | 2 +- .../res/spring/ohd-common-database.xml | 4 +- .../res/spring/ohd-request.xml | 24 +- .../res/spring/satpre-spring.xml | 6 +- .../com.raytheon.uf.edex.ohd.properties | 1 + .../com/raytheon/uf/edex/ohd/MainMethod.java | 22 +- .../raytheon/uf/edex/ohd/ScriptService.java | 16 +- .../com/raytheon/uf/edex/ohd/SetupSrv.java | 20 +- .../uf/edex/ohd/pproc/ArealQpeGenSrv.java | 73 +- .../uf/edex/ohd/pproc/DecodeDpaSrv.java | 18 +- .../uf/edex/ohd/pproc/DqcPreProcSrv.java | 13 +- .../com/raytheon/uf/edex/ohd/pproc/GAFF.java | 125 +- .../uf/edex/ohd/pproc/GAFFAreaProcessor.java | 39 +- .../raytheon/uf/edex/ohd/pproc/GAFFDB.java | 47 +- .../uf/edex/ohd/pproc/MpeFieldGenSrv.java | 81 +- .../uf/edex/ohd/pproc/MpeLightningSrv.java | 33 +- .../uf/edex/ohd/pproc/MpeProcessGribSrv.java | 24 +- .../uf/edex/ohd/pproc/SatPreURIFilter.java | 33 +- .../edex/ohd/pproc/SatPrecipFileBuilder.java | 196 +- .../ohd/reportalarm/RunReportAlarmSrv.java | 2 +- .../META-INF/MANIFEST.MF | 26 +- .../res/spring/acars-ingest.xml | 10 +- .../uf/edex/plugin/acars/ACARSArchiver.java | 42 +- .../uf/edex/plugin/acars/ACARSDecoder.java | 30 +- .../uf/edex/plugin/acars/dao/ACARSDao.java | 50 +- .../acars/decoder/ACARSDataAdapter.java | 465 +- .../plugin/acars/decoder/ACARSParser.java | 37 +- .../META-INF/MANIFEST.MF | 14 +- .../build.properties | 3 +- .../res/spring/acarssounding-ingest.xml | 10 +- .../plugin/acarssounding/ACARSPersistObs.java | 7 +- .../plugin/acarssounding/ACARSSounding.java | 19 +- .../acarssounding/ACARSSoundingSplitter.java | 16 +- .../acarssounding/dao/ACARSSoundingDao.java | 10 +- .../tools/ACARSAircraftInfo.java | 5 +- .../tools/ACARSSoundingTools.java | 96 +- .../acarssounding/tools/IntermediateData.java | 10 +- .../acarssounding/tools/SoundingBuilder.java | 48 +- .../META-INF/MANIFEST.MF | 3 + .../res/spring/bufrascat-ingest.xml | 8 +- .../edex/plugin/bufrascat/AScatDecoder.java | 6 +- .../bufrascat/decoder/AScatDataAdapter.java | 16 +- .../base/distribution/bufrascat.xml | 7 + .../META-INF/MANIFEST.MF | 3 + .../res/spring/bufrhdw-ingest.xml | 8 +- .../uf/edex/plugin/bufrhdw/HDWDecoder.java | 6 +- .../bufrhdw/decoder/HDWDataAdapter.java | 18 +- .../META-INF/MANIFEST.MF | 3 + .../res/spring/bufrmthdw-ingest.xml | 8 +- .../edex/plugin/bufrmthdw/MTHDWDecoder.java | 6 +- .../bufrmthdw/decoder/MTHDWDataAdapter.java | 18 +- .../META-INF/MANIFEST.MF | 3 + .../res/spring/bufrncwf-ingest.xml | 8 +- .../edex/plugin/bufrncwf/BUFRncwfDecoder.java | 27 +- .../bufrncwf/decoder/BUFRncwfDataAdapter.java | 58 +- .../META-INF/MANIFEST.MF | 3 + .../res/spring/bufrquikscat-ingest.xml | 8 +- .../plugin/bufrquikscat/QUIKScatDecoder.java | 18 +- .../decoder/QUIKScatDataAdapter.java | 16 +- .../META-INF/MANIFEST.MF | 3 + .../res/spring/bufrsigwx-ingest.xml | 8 +- .../edex/plugin/bufrsigwx/SigWxDecoder.java | 6 +- .../bufrsigwx/decoder/SigWxCatData.java | 2 +- .../bufrsigwx/decoder/SigWxCloudsData.java | 2 +- .../bufrsigwx/decoder/SigWxDataAdapter.java | 26 +- .../bufrsigwx/decoder/SigWxFrontsData.java | 2 +- .../bufrsigwx/decoder/SigWxJetsData.java | 2 +- .../bufrsigwx/decoder/SigWxNullData.java | 2 +- .../bufrsigwx/decoder/SigWxTropData.java | 2 +- .../bufrsigwx/decoder/SigWxVTSData.java | 2 +- .../META-INF/MANIFEST.MF | 3 + .../res/spring/bufrssmi-ingest.xml | 8 +- .../uf/edex/plugin/bufrssmi/SSMIDecoder.java | 6 +- .../bufrssmi/decoder/SSMIDataAdapter.java | 28 +- .../META-INF/MANIFEST.MF | 7 +- .../res/spring/cwa-ingest.xml | 20 +- .../uf/edex/plugin/cwa/CWADecoder.java | 35 +- .../uf/edex/plugin/cwa/decoder/CWAParser.java | 113 +- .../plugin/cwa/decoder/InternalReport.java | 18 +- .../uf/edex/plugin/cwa/util/TableLoader.java | 18 +- .../META-INF/MANIFEST.MF | 7 +- .../res/spring/cwat-ingest.xml | 31 +- .../uf/edex/plugin/cwat/CWATGenerator.java | 3 +- .../uf/edex/plugin/cwat/CWATURIFilter.java | 6 +- .../uf/edex/plugin/cwat/CWAThreat.java | 4 +- .../edex/plugin/cwat/common/CWATConfig.java | 30 +- .../edex/plugin/cwat/common/LocationBin.java | 31 +- .../plugin/cwat/common/LocationCache.java | 6 +- .../META-INF/MANIFEST.MF | 8 +- .../res/spring/ffmp-ingest.xml | 7 +- .../uf/edex/plugin/ffmp/FFMPGenerator.java | 13 +- .../uf/edex/plugin/ffmp/FFMPURIFilter.java | 43 +- .../edex/plugin/ffmp/common/FFMPConfig.java | 18 +- .../plugin/ffmp/common/FFMPProcessor.java | 245 +- .../uf/edex/plugin/ffmp/common/FFTIData.java | 4 +- .../META-INF/MANIFEST.MF | 5 +- .../res/spring/fog-ingest.xml | 7 +- .../uf/edex/plugin/fog/FogGenerator.java | 18 +- .../uf/edex/plugin/fog/FogURIFilter.java | 6 +- .../META-INF/MANIFEST.MF | 19 +- .../res/spring/fssobs-ingest.xml | 7 +- .../plugin/fssobs/FSSObsDataTransform.java | 1149 +-- .../edex/plugin/fssobs/FSSObsGenerator.java | 150 +- .../edex/plugin/fssobs/FSSObsURIFilter.java | 78 +- .../uf/edex/plugin/fssobs/FSSObsUtils.java | 86 +- .../plugin/fssobs/common/FSSObsConfig.java | 44 +- .../META-INF/MANIFEST.MF | 4 +- .../uf/edex/plugin/grid/dao/GridDao.java | 8 +- .../edex/plugin/grid/dao/GridInfoCache.java | 12 +- .../plugin/grid/handler/GridTreeHandler.java | 2 +- .../base/purge/gridPurgeRules.xml | 158 +- .../META-INF/MANIFEST.MF | 11 +- .../res/spring/ldadmesonet-common.xml | 2 +- .../res/spring/ldadmesonet-ingest.xml | 14 +- .../plugin/ldadmesonet/MesonetDecoder.java | 34 +- .../META-INF/MANIFEST.MF | 8 +- .../ingest/LocationTablesIngest.java | 54 +- .../util/handlers/AbstractTableHandler.java | 14 +- .../META-INF/MANIFEST.MF | 5 +- .../res/pointdata/lsr.xml | 5 - .../res/spring/lsr-ingest.xml | 8 +- .../uf/edex/plugin/lsr/decoder/LSRParser.java | 50 +- .../res/spring/madis-common.xml | 3 +- .../uf/edex/plugin/madis/MadisSeparator.java | 103 +- .../META-INF/MANIFEST.MF | 3 +- .../res/spring/manualIngest-request.xml | 2 +- .../res/spring/manualIngest-spring.xml | 164 +- .../plugin/manualIngest/MessageGenerator.java | 16 +- .../META-INF/MANIFEST.MF | 16 +- .../res/spring/modelsounding-ingest.xml | 46 +- .../modelsounding/ModelSoundingDecoder.java | 32 +- .../ModelSoundingPersistenceManager.java | 106 +- .../modelsounding/ModelSoundingSeparator.java | 2 +- .../modelsounding/dao/ModelSoundingDAO.java | 2 +- .../decoder/ModelSoundingDataAdapter.java | 23 +- .../ingest/ModelBufrSubscriber.java | 125 +- .../res/spring/crimss-ingest.xml | 8 +- .../res/spring/nucaps-ingest.xml | 8 +- .../META-INF/MANIFEST.MF | 3 +- .../res/spring/viirs-ingest.xml | 8 +- .../edex/plugin/npp/viirs/dao/VIIRSDao.java | 44 +- .../npp/viirs/dao/VIIRSDataSourceWrapper.java | 2 +- .../res/spring/nwsauth-request.xml | 6 +- .../common_static/base/roles/userRoles.xml | 2 + .../res/spring/obs-ogc-routes.xml | 8 +- .../res/spring/obs-ogc.xml | 5 +- .../obs/ogc/metar/MetarFeatureFactory.java | 4 +- .../res/spring/preciprate-ingest.xml | 7 +- .../preciprate/PrecipRateGenerator.java | 2 +- .../preciprate/PrecipRateURIFilter.java | 22 +- .../preciprate/common/PrecipRateConfig.java | 21 +- .../META-INF/MANIFEST.MF | 13 +- .../build.properties | 3 +- .../res/pointdata/pdd/ldadmesonet.xml | 22 +- .../res/pointdata/pdd/msas.xml | 22 +- .../res/spring/qc-ingest.xml | 8 +- .../raytheon/uf/edex/plugin/qc/QCScanner.java | 7 +- .../uf/edex/plugin/qc/common/QCDataQuery.java | 2 +- .../raytheon/uf/edex/plugin/qc/dao/QCDao.java | 11 +- .../META-INF/MANIFEST.MF | 7 +- .../res/spring/qpf-ingest.xml | 7 +- .../com/raytheon/uf/edex/plugin/qpf/QPF.java | 52 +- .../uf/edex/plugin/qpf/common/QPFConfig.java | 34 +- .../META-INF/MANIFEST.MF | 8 +- .../res/spring/satellite-mcidas-ingest.xml | 8 +- .../mcidas/McidasSatelliteDecoder.java | 18 +- .../META-INF/MANIFEST.MF | 6 +- .../res/spring/scan-ingest.xml | 16 +- .../uf/edex/plugin/scan/ScanGenerator.java | 14 +- .../uf/edex/plugin/scan/ScanURIFilter.java | 172 +- .../edex/plugin/scan/process/CAPEProduct.java | 24 +- .../plugin/scan/process/GH1000Product.java | 10 +- .../plugin/scan/process/GH500Product.java | 10 +- .../edex/plugin/scan/process/GridProduct.java | 105 +- .../edex/plugin/scan/process/HELIProduct.java | 11 +- .../plugin/scan/process/LightningProduct.java | 7 +- .../process/MesoCycloneTabularProduct.java | 194 +- .../edex/plugin/scan/process/ScanProduct.java | 48 +- .../edex/plugin/scan/process/U500Product.java | 10 +- .../edex/plugin/scan/process/U700Product.java | 10 +- .../edex/plugin/scan/process/V700Product.java | 10 +- .../META-INF/MANIFEST.MF | 6 +- .../res/pointdata/svrwx.xml | 3 - .../res/spring/svrwx-ingest.xml | 8 +- .../uf/edex/plugin/svrwx/SvrWxDecoder.java | 14 +- .../uf/edex/plugin/svrwx/SvrWxRecordDao.java | 48 +- .../plugin/svrwx/decoder/InternalReport.java | 120 +- .../plugin/svrwx/decoder/InternalType.java | 28 +- .../plugin/svrwx/decoder/SvrWxParser.java | 528 +- .../META-INF/MANIFEST.MF | 11 +- .../res/pointdata/tcg.xml | 3 - .../res/spring/tcg-ingest.xml | 8 +- .../uf/edex/plugin/tcg/TCGDecoder.java | 15 +- .../uf/edex/plugin/tcg/decoder/HURData.java | 39 +- .../plugin/tcg/decoder/InternalReport.java | 251 +- .../uf/edex/plugin/tcg/decoder/QLMData.java | 15 +- .../uf/edex/plugin/tcg/decoder/TCEData.java | 29 +- .../plugin/tcg/decoder/TCGDataAdapter.java | 45 +- .../META-INF/MANIFEST.MF | 8 +- .../res/pointdata/tcs.xml | 1 - .../res/spring/tcs-ingest.xml | 8 +- .../uf/edex/plugin/tcs/TCSDecoder.java | 14 +- .../uf/edex/plugin/tcs/decoder/TCMData.java | 18 +- .../plugin/tcs/decoder/TCSDataAdapter.java | 40 +- .../META-INF/MANIFEST.MF | 3 +- .../res/spring/vaa-ingest.xml | 14 +- .../uf/edex/plugin/vaa/VAADecoder.java | 38 +- .../plugin/vaa/decoder/InternalReport.java | 6 +- .../uf/edex/plugin/vaa/decoder/VAAParser.java | 94 +- .../META-INF/MANIFEST.MF | 5 +- .../res/spring/vil-ingest.xml | 7 +- .../uf/edex/plugin/vil/VILGenerator.java | 2 +- .../uf/edex/plugin/vil/VILURIFilter.java | 6 +- .../python/decoder/PythonDecoderFactory.java | 22 +- .../base/python/DecoderInterface.py | 6 +- .../feature.xml | 14 + .../.classpath | 2 - .../META-INF/MANIFEST.MF | 21 +- .../build.properties | 4 +- .../res/spring/ebxml-constants.xml | 2 +- .../res/spring/ebxml-eventbus.xml | 40 +- .../res/spring/ebxml-impl.xml | 33 +- .../res/spring/ebxml-registry-init.xml | 3 +- .../res/spring/ebxml-thrift-client-route.xml | 25 +- .../res/spring/ebxml-thrift-client.xml | 32 +- .../res/spring/ebxml-webserver.xml | 52 +- .../res/spring/ebxml-webservices.xml | 140 +- .../res/spring/ebxml-xacml.xml | 21 +- .../res/spring/ebxml.xml | 17 +- ...raytheon.uf.edex.registry.ebxml.properties | 37 +- .../acp/xacml/XACMLContextHandler.java | 27 +- .../acp/xacml/XACMLPolicyAdministrator.java | 16 +- .../acp/xacml/XACMLPolicyDecisionPoint.java | 81 +- .../acp/xacml/util/XACMLObjectUtil.java | 3 + .../registry/ebxml/acp/PasswordCallback.java | 21 +- .../ebxml/dao/AuditableEventTypeDao.java | 5 +- .../uf/edex/registry/ebxml/dao/DbInit.java | 30 +- .../dao/EbxmlPostgresValidationStrategy.java | 7 +- .../dao/IEbxmlDatabaseValidationStrategy.java | 5 +- .../edex/registry/ebxml/dao/RegistryDao.java | 2 +- .../registry/ebxml/dao/RegistryObjectDao.java | 25 +- .../ebxml/dao/RegistryObjectTypeDao.java | 4 +- .../edex/registry/ebxml/dao/SlotTypeDao.java | 14 +- .../registry/ebxml/dao/SubscriptionDao.java | 4 +- .../ebxml/services/AuditableEventService.java | 3 +- .../services/RegistryGarbageCollector.java | 5 +- .../RegistryServiceInInterceptor.java | 9 + .../cataloger/CatalogerImplWrapper.java | 2 +- .../lifecycle/LifecycleManagerImpl.java | 43 +- .../LifecycleManagerImplWrapper.java | 2 +- .../lifecycle/ObjectReferenceResolver.java | 2 +- .../NotificationListenerFactory.java | 4 +- .../NotificationListenerImpl.java | 7 +- .../NotificationListenerImplWrapper.java | 2 +- .../RegistryNotificationManager.java | 3 +- .../listeners/EmailNotificationListener.java | 2 +- .../SpringBeanNotificationListener.java | 2 +- .../WebServiceNotificationListener.java | 4 +- .../services/query/QueryManagerImpl.java | 2 +- .../query/QueryManagerImplWrapper.java | 2 +- .../services/query/plugins/AdhocQuery.java | 2 +- .../services/query/plugins/BasicQuery.java | 2 +- .../plugins/ClassificationSchemeSelector.java | 2 +- .../query/plugins/FindAssociatedObjects.java | 2 +- .../query/plugins/FindAssociations.java | 2 +- .../plugins/GarbageCollectorQueryPlugin.java | 2 +- .../query/plugins/GetAuditTrailById.java | 2 +- .../query/plugins/GetAuditTrailByLid.java | 2 +- .../plugins/GetAuditTrailByTimeInterval.java | 2 +- .../query/plugins/GetChildrenByParentId.java | 2 +- .../plugins/GetClassificationSchemesById.java | 2 +- .../query/plugins/GetNotification.java | 2 +- .../services/query/plugins/GetObjectById.java | 2 +- .../query/plugins/GetObjectsByLid.java | 2 +- .../query/plugins/GetReferencedObject.java | 4 +- .../GetRegistryPackagesByMemberId.java | 2 +- .../services/query/plugins/KeywordSearch.java | 2 +- .../plugins/RegistryPackageSelector.java | 2 +- .../validator/ValidatorImplWrapper.java | 2 +- .../ebxml/util/EDEXRegistryManager.java | 13 +- .../registry/ebxml/util/EbxmlObjectUtil.java | 2 +- .../edex/registry/events/DeleteSlotEvent.java | 46 +- .../base/ebxml/acp/default-acp.xml | 26 +- .../web/RegistrySubscriptionBackup.html | 6 +- .../web/WEB-INF/web.xml | 56 +- .../web/registry/navigation.html | 2 + .../web/registry/registryUtil.js | 2 +- .../web/webServiceBeans.xml | 39 +- .../feature.xml | 2 - .../feature.xml | 7 + .../META-INF/MANIFEST.MF | 1 - .../res/spring/site-common.xml | 22 +- .../res/spring/site-request.xml | 37 +- .../uf/edex/site/SiteActivationMonitor.java | 117 +- .../uf/edex/site/SiteAwareRegistry.java | 39 +- .../site/handlers/ActivateSiteHandler.java | 21 +- .../site/handlers/DeactivateSiteHandler.java | 21 +- .../SendSiteActivationNotifications.java | 20 +- .../res/spring/tafqueue-request.xml | 5 +- .../uf/edex/tafqueue/TafQueueDao.java | 64 +- .../uf/edex/tafqueue/TafQueueManager.java | 2 +- .../edex/tafqueue/TafQueueRequestHandler.java | 14 +- .../uf/edex/tafqueue/TafQueueVFTMgr.java | 300 +- .../feature.xml | 18 +- .../UserAdminPrivilegedRequestHandler.java | 23 +- .../META-INF/MANIFEST.MF | 8 +- .../com.raytheon.uf.edex.wfs/build.properties | 2 +- .../res/spring/wfs-ogc-soap-request.xml | 8 +- .../res/spring/wfs-ogc-soap-wsdl.xml | 2 +- .../wfs/filter/v1_1_0/QueryFilterVisitor.java | 3 +- .../wfs/filter/v2_0_0/QueryFilterVisitor.java | 5 +- .../wfs/provider/AbstractWfsProvider.java | 2 +- .../uf/edex/wfs/provider/FeatureFetcher.java | 3 +- .../uf/edex/wfs/reg/AbstractWfsSource.java | 3 +- .../uf/edex/wfs/reg/WfsRegistryImpl.java | 44 +- .../uf/edex/wfs/request/GetFeatureReq.java | 2 +- .../uf/edex/wfs/request/WfsRequest.java | 2 +- .../raytheon/uf/edex/wfs/soap2_0_0/Wfs.java | 2 +- .../uf/edex/wfs/soap2_0_0/WfsImpl.java | 2 +- .../uf/edex/wfs/v1_1_0/Capabilities.java | 2 +- .../uf/edex/wfs/v1_1_0/Wfs1_1_0Provider.java | 2 +- .../uf/edex/wfs/v2_0_0/Capabilities.java | 2 +- .../uf/edex/wfs/v2_0_0/Wfs2_0_0Provider.java | 9 +- .../wfs/wxxm/AbstractWxxm32Translator.java | 63 +- .../com.raytheon.uf.tools.cli/impl/capture | 122 +- .../impl/src/pgen/ProductRetriever.py | 16 +- .../impl/src/pgen/retrieveActivity.py | 213 +- .../impl/src/pgen/storeActivity.py | 84 +- .../src/subscription/SubscriptionManager.py | 46 +- .../impl/src/textdb/TextDB.py | 203 +- .../com.raytheon.uf.tools.cli/impl/textdb | 7 +- .../ServiceBackup/scripts/cleanup_svcbk | 45 + .../scripts/export_configuration | 13 + .../ServiceBackup/scripts/proc_receive_config | 13 + .../ServiceBackup/scripts/proc_receive_grids | 32 +- .../scripts/receive_grids_from_backup_site | 33 +- .../cli/rsyncGridsToCWF.sh | 26 +- .../cli/setup.env | 6 + 1215 files changed, 37302 insertions(+), 35205 deletions(-) mode change 100644 => 100755 edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/aKrtmaNDFD.xml mode change 100644 => 100755 edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AreaFcst.py mode change 100644 => 100755 edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecord.java mode change 100755 => 100644 edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.xml mode change 100755 => 100644 edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.vm mode change 100755 => 100644 edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.xml mode change 100755 => 100644 edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.vm mode change 100755 => 100644 edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.vm mode change 100644 => 100755 edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/definition/parameters.xml mode change 100644 => 100755 edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTable.py mode change 100644 => 100755 edexOsgi/com.raytheon.uf.edex.plugin.fssobs/META-INF/MANIFEST.MF mode change 100644 => 100755 edexOsgi/com.raytheon.uf.edex.plugin.fssobs/src/com/raytheon/uf/edex/plugin/fssobs/FSSObsUtils.java mode change 100644 => 100755 edexOsgi/com.raytheon.uf.edex.plugin.fssobs/src/com/raytheon/uf/edex/plugin/fssobs/common/FSSObsConfig.java diff --git a/edexOsgi/build.edex/build.xml b/edexOsgi/build.edex/build.xml index 11fe5b9e25..3674c317a8 100644 --- a/edexOsgi/build.edex/build.xml +++ b/edexOsgi/build.edex/build.xml @@ -8,7 +8,7 @@ + value="x86" /> @@ -82,6 +82,10 @@ + + + @@ -114,6 +118,10 @@ + + + @@ -150,8 +158,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/build.edex/deploy-common/deploy-esb.xml b/edexOsgi/build.edex/deploy-common/deploy-esb.xml index f257cadbeb..040323265b 100644 --- a/edexOsgi/build.edex/deploy-common/deploy-esb.xml +++ b/edexOsgi/build.edex/deploy-common/deploy-esb.xml @@ -10,6 +10,11 @@ + + + + + @@ -17,6 +22,32 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/build.edex/deploy-common/deploy-setup.xml b/edexOsgi/build.edex/deploy-common/deploy-setup.xml index 4cc2068e6a..e64a00e306 100644 --- a/edexOsgi/build.edex/deploy-common/deploy-setup.xml +++ b/edexOsgi/build.edex/deploy-common/deploy-setup.xml @@ -7,24 +7,71 @@ - - - - cd ../ - dirpath=`pwd` - dir=`basename ${dirpath}` - if [ "${dir}" = "edexOsgi" ]; then - # we are in the distributed development environment - cd ../ - pwd - else - # all of the projects are in the workspace or one single directory - echo ${dirpath} - fi - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + + + + + diff --git a/edexOsgi/build.edex/deploy-common/external-rules.xml b/edexOsgi/build.edex/deploy-common/external-rules.xml index 2b42ce321e..ed165411aa 100644 --- a/edexOsgi/build.edex/deploy-common/external-rules.xml +++ b/edexOsgi/build.edex/deploy-common/external-rules.xml @@ -4,6 +4,7 @@ TODO: if necessary, these could be read from a properties file. 1) utility -> /awips2/edex/data/utility 2) resources -> /awips2/edex/conf/resources + 3) modes -> /awips2/edex/conf/modes --> @@ -33,5 +34,15 @@ + + + + + + + + + + diff --git a/edexOsgi/build.edex/deploy-common/plugin-methods.xml b/edexOsgi/build.edex/deploy-common/plugin-methods.xml index 4c48c76a60..c6869644e2 100644 --- a/edexOsgi/build.edex/deploy-common/plugin-methods.xml +++ b/edexOsgi/build.edex/deploy-common/plugin-methods.xml @@ -116,13 +116,22 @@ - - - - + + + + + + + + + + + Missing property edex.root.directory, skipping external rules for deployment + + diff --git a/edexOsgi/build.edex/deploy-install.xml b/edexOsgi/build.edex/deploy-install.xml index 0901aa6b92..14ec448352 100644 --- a/edexOsgi/build.edex/deploy-install.xml +++ b/edexOsgi/build.edex/deploy-install.xml @@ -94,19 +94,26 @@ + - + antfile="@{wa}/edex/deploy-${wa.name}/wa-deploy.xml" + inheritall="true" inheritrefs="true" + useNativeBasedir="true" /> + + + + diff --git a/edexOsgi/build.edex/edex/build.properties b/edexOsgi/build.edex/edex/build.properties index 6cd8bf70bf..79d29417bf 100644 --- a/edexOsgi/build.edex/edex/build.properties +++ b/edexOsgi/build.edex/edex/build.properties @@ -208,8 +208,8 @@ javacVerbose=true compilerArg=-g:lines,source # Default value for the version of the source code. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacSource in build.properties -javacSource=1.6 +javacSource=1.7 # Default value for the version of the byte code targeted. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacTarget in build.properties. -javacTarget=1.6 +javacTarget=1.7 generateVersionsLists=true diff --git a/edexOsgi/build.edex/edex/common.properties b/edexOsgi/build.edex/edex/common.properties index a6b695b86e..918922de66 100644 --- a/edexOsgi/build.edex/edex/common.properties +++ b/edexOsgi/build.edex/edex/common.properties @@ -1,8 +1,11 @@ edex.root.directory=/awips2/edex -architecture=x86 +architecture=x86_64 includegen.filter=raytheon|noaa\.nws|noaa\.gsd +# AWIPSII core repositores required for build +core.repositories=ufcore,ufcore-foss,AWIPS2_foss + # Note: currently, there is a limit of 99 plugin directories. dir.01=cave dir.02=cots @@ -11,6 +14,15 @@ dir.04=ncep dir.05=RadarServer dir.06=edu dir.07=ost +dir.08=ohd +# directories from ufcore +dir.09=common +dir.10=edex +dir.11=features +dir.12=viz +# directories from ufcore-foss +dir.13=lib + # the directory that contains the localization projects # in a distributed development environment. diff --git a/edexOsgi/build.edex/edex/customTargets.xml b/edexOsgi/build.edex/edex/customTargets.xml index 241389e465..d848fb0603 100644 --- a/edexOsgi/build.edex/edex/customTargets.xml +++ b/edexOsgi/build.edex/edex/customTargets.xml @@ -153,6 +153,7 @@ + diff --git a/edexOsgi/build.edex/esb/bin/setup.env b/edexOsgi/build.edex/esb/bin/setup.env index b3c86f9792..cb7c236476 100644 --- a/edexOsgi/build.edex/esb/bin/setup.env +++ b/edexOsgi/build.edex/esb/bin/setup.env @@ -25,30 +25,15 @@ export BROKER_ADDR=localhost # setup hdf5 connection if pypies is enabled export PYPIES_SERVER=http://localhost:9582 -# Registry specific ports -export EBXML_REGISTRY_WEBSERVER_PORT=8082 -export EBXML_REGISTRY_WEBSERVER_CONFIDENTIAL_PORT=8446 -export EBXML_THRIFT_SERVICE_PORT=9588 -# data delivery specific variables, used below in the localization section -export NCF_HOST=165.92.30.69 -export NCF_ADDRESS=http://${NCF_HOST}:${EBXML_REGISTRY_WEBSERVER_PORT} -export DATADELIVERY_HOST=localhost -# Currently the registry is hosted on datadelivery, but this could be changed in the future -export EBXML_REGISTRY_HOST=${DATADELIVERY_HOST} -export EBXML_REGISTRY_FEDERATION_ENABLED=true - # moved here from environment.xml # these values are returned to clients that contact the localization service export HTTP_PORT=9581 -export HTTP_SERVER=http://localhost:${HTTP_PORT}/services -export JMS_SERVER=tcp://localhost:5672 +export HTTP_SERVER_PATH=/services +export HTTP_SERVER=http://localhost:${HTTP_PORT}${HTTP_SERVER_PATH} +export JMS_SERVER=tcp://${BROKER_ADDR}:5672 export JMS_VIRTUALHOST=edex +export JMS_CONNECTIONS_URL=http://${BROKER_ADDR}:8180/api/v2/connection/${JMS_VIRTUALHOST} export RADAR_SERVER=tcp://localhost:8813 -export DATADELIVERY_SERVER=http://${DATADELIVERY_HOST}:${EBXML_THRIFT_SERVICE_PORT}/services -export EBXML_REGISTRY_SERVICE=http://${EBXML_REGISTRY_HOST}:${EBXML_THRIFT_SERVICE_PORT}/services -export EBXML_REGISTRY_LCM_SERVICE=http://${EBXML_REGISTRY_HOST}:${EBXML_THRIFT_SERVICE_PORT}/lifecycleManager?WSDL -export EBXML_REGISTRY_QUERY_SERVICE=http://${EBXML_REGISTRY_HOST}:${EBXML_THRIFT_SERVICE_PORT}/queryManager?WSDL -export NCF_BANDWIDTH_MANAGER_SERVICE=http://${NCF_HOST}:${EBXML_THRIFT_SERVICE_PORT}/services # set the AWIPS II shared directory export SHARE_DIR=/awips2/edex/data/share diff --git a/edexOsgi/build.edex/esb/bin/start.sh b/edexOsgi/build.edex/esb/bin/start.sh index 0de5b496b9..9d3285c131 100644 --- a/edexOsgi/build.edex/esb/bin/start.sh +++ b/edexOsgi/build.edex/esb/bin/start.sh @@ -45,6 +45,13 @@ if [ -z "${SKIP_RPM_CHECK}" ]; then echo "Unable To Continue ... Terminating." exit 1 fi + + rpm -q awips2-yajsw > /dev/null 2>&1 + if [ $? -ne 0 ]; then + echo "ERROR: awips2-yajsw Must Be Installed." + echo "Unable To Continue ... Terminating." + exit 1 + fi fi path_to_script=`readlink -f $0` @@ -58,6 +65,7 @@ awips_home=$(dirname $EDEX_HOME) if [ -z "$PYTHON_INSTALL" ]; then PYTHON_INSTALL="$awips_home/python"; fi if [ -z "$JAVA_INSTALL" ]; then JAVA_INSTALL="$awips_home/java"; fi if [ -z "$PSQL_INSTALL" ]; then PSQL_INSTALL="$awips_home/psql"; fi +if [ -z "$YAJSW_HOME" ]; then YAJSW_HOME="$awips_home/yajsw"; fi # Source The File With The Localization Information source ${dir}/setup.env @@ -65,6 +73,7 @@ source ${dir}/setup.env #source /awips2/edex/bin/yajsw/bin/setenv.sh export HOSTNAME=`hostname` +export SHORT_HOSTNAME=`hostname -s` # set Python & Java into the path export PATH=$awips_home/bin:${JAVA_INSTALL}/bin:${PYTHON_INSTALL}/bin:$PATH @@ -142,4 +151,4 @@ if [ $DEBUG_FLAG == "on" ]; then echo "To Debug ... Connect to Port: ${EDEX_DEBUG_PORT}." fi -java -Xmx32m -XX:MaxPermSize=12m -XX:ReservedCodeCacheSize=4m -jar ${EDEX_HOME}/bin/yajsw/wrapper.jar -c ${EDEX_HOME}/conf/${CONF_FILE} ${WRAPPER_ARGS} +java -Xmx32m -XX:MaxPermSize=12m -XX:ReservedCodeCacheSize=4m -jar ${YAJSW_HOME}/wrapper.jar -c ${EDEX_HOME}/conf/${CONF_FILE} ${WRAPPER_ARGS} diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/damCatalog/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/damCatalog/hibernate.cfg.xml index 153b4e7837..9db248dee5 100644 --- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/damCatalog/hibernate.cfg.xml +++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/damCatalog/hibernate.cfg.xml @@ -59,17 +59,22 @@ + 0 + 0 + 10 1 - 60 + 60 + 600 + select 1 300 - 10 10 - 1 false false + 8 + 16 \ No newline at end of file diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/fxa/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/fxa/hibernate.cfg.xml index 429b285373..2dcd7fa22f 100644 --- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/fxa/hibernate.cfg.xml +++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/fxa/hibernate.cfg.xml @@ -59,17 +59,22 @@ - 1 - 60 - 300 - 25 - 10 - 1 - + 0 + 0 + 25 + 1 + 60 + 600 + select 1 + 300 + 10 + false false + 8 + 16 \ No newline at end of file diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/hmdb/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/hmdb/hibernate.cfg.xml index ff103aff47..29ab327f88 100644 --- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/hmdb/hibernate.cfg.xml +++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/hmdb/hibernate.cfg.xml @@ -59,17 +59,22 @@ + 0 + 0 + 10 1 60 + 600 + select 1 300 - 10 10 - 1 false false + 8 + 16 \ No newline at end of file diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ihfs/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ihfs/hibernate.cfg.xml index 12b9182cff..cfd49faa80 100644 --- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ihfs/hibernate.cfg.xml +++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ihfs/hibernate.cfg.xml @@ -59,17 +59,22 @@ - 1 - 60 - 300 - 10 - 10 - 1 + 0 + 0 + 10 + 1 + 60 + 600 + select 1 + 300 + 10 false false + 8 + 16 \ No newline at end of file diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml index ba4088c582..de9108afef 100644 --- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml +++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml @@ -31,7 +31,7 @@ org.postgresql.Driver - org.hibernatespatial.postgis.PostgisDialect + org.hibernate.spatial.dialect.postgis.PostgisDialect jdbc:postgresql://${db.addr}:${db.port}/maps @@ -59,17 +59,22 @@ - 1 - 60 - 300 - 1 - 20 - 20 + 0 + 0 + 20 + 1 + 60 + 600 + select 1 + 300 + 20 false false + 8 + 16 \ No newline at end of file diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml index 90ad0d838f..dec6ebf921 100644 --- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml +++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml @@ -31,7 +31,7 @@ org.postgresql.Driver - org.hibernatespatial.postgis.PostgisDialect + org.hibernate.spatial.dialect.postgis.PostgisDialect jdbc:postgresql://${db.addr}:${db.port}/metadata @@ -60,18 +60,24 @@ - 60 - ${db.metadata.pool.timeout} - ${db.metadata.pool.max} - 5 - ${db.metadata.pool.min} - ${db.metadata.pool.max} + 1 + 1 + ${db.metadata.pool.max} + 1 + 60 + 600 + select 1 + ${db.metadata.pool.timeout} + 10 + false org.hibernate.transaction.JDBCTransactionFactory false false false + 16 + 32 diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ncep/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ncep/hibernate.cfg.xml index 6b2a5bc64d..95ab23a054 100644 --- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ncep/hibernate.cfg.xml +++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/ncep/hibernate.cfg.xml @@ -56,17 +56,22 @@ - 1 - 60 - 60 - 10 - 1000 - 1 + 0 + 0 + 10 + 1 + 60 + 600 + select 1 + 300 + 10 false false + 8 + 16 diff --git a/edexOsgi/build.edex/esb/conf/logback-dataprovideragent.xml b/edexOsgi/build.edex/esb/conf/logback-dataprovideragent.xml index 185e9cd362..1b768f13ec 100644 --- a/edexOsgi/build.edex/esb/conf/logback-dataprovideragent.xml +++ b/edexOsgi/build.edex/esb/conf/logback-dataprovideragent.xml @@ -42,6 +42,9 @@ + + + @@ -57,9 +60,6 @@ - - - diff --git a/edexOsgi/build.edex/esb/conf/logback-ingest.xml b/edexOsgi/build.edex/esb/conf/logback-ingest.xml index 3a0f3a324a..20fc9db28c 100644 --- a/edexOsgi/build.edex/esb/conf/logback-ingest.xml +++ b/edexOsgi/build.edex/esb/conf/logback-ingest.xml @@ -22,32 +22,8 @@ - - - - ${edex.home}/logs/edex-${edex.run.mode}-radar-%d{yyyyMMdd}.log - 30 - - - - %-5p %d [%t] %c{0}: %m%n - - - - - - - ${edex.home}/logs/edex-${edex.run.mode}-satellite-%d{yyyyMMdd}.log - 30 - - - - %-5p %d [%t] %c{0}: %m%n - - - - + ${edex.home}/logs/edex-${edex.run.mode}-shef-%d{yyyyMMdd}.log 30 @@ -58,10 +34,11 @@ - - + + + - ${edex.home}/logs/edex-${edex.run.mode}-smartInit-%d{yyyyMMdd}.log + ${edex.home}/logs/edex-${edex.run.mode}-activeTableChange-%d{yyyyMMdd}.log 30 @@ -69,9 +46,18 @@ %-5p %d [%t] %c{0}: %m%n + + + + + + + + + - + ${edex.home}/logs/edex-${edex.run.mode}-purge-%d{yyyyMMdd}.log 30 @@ -82,18 +68,6 @@ - - - - ${edex.home}/logs/edex-${edex.run.mode}-archive-%d{yyyyMMdd}.log - 30 - - - - %-5p %d [%t] %c{0}: %m%n - - - @@ -141,18 +115,6 @@ - - - - ${edex.home}/logs/edex-${edex.run.mode}-text-%d{yyyyMMdd}.log - 30 - - - - %-5p %d [%t] %c{0}: %m%n - - - @@ -178,16 +140,13 @@ - RadarLog:Ingest.Radar.*;SatelliteLog:Ingest.Satellite.*;ShefLog:Ingest.Shef.*;TextLog:Ingest.Text.*;SmartInitLog:smartInit.*;PurgeLog:Purge.*;ArchiveLog:Archive.* - asyncConsole + 30 + %-5p %d [%t] %c{0}: %m%n + ${edex.home}/logs/edex-${edex.run.mode}-%s{name}-%d{yyyyMMdd}.log + asyncConsole - - - - - - - + + @@ -214,7 +173,7 @@ - + @@ -242,6 +201,9 @@ + + + @@ -257,9 +219,6 @@ - - - @@ -270,22 +229,17 @@ - + - + - - - - - - + diff --git a/edexOsgi/build.edex/esb/conf/logback-registry.xml b/edexOsgi/build.edex/esb/conf/logback-registry.xml index e4970fb742..25773d61a5 100644 --- a/edexOsgi/build.edex/esb/conf/logback-registry.xml +++ b/edexOsgi/build.edex/esb/conf/logback-registry.xml @@ -17,18 +17,6 @@ - - - - ${edex.home}/logs/edex-${edex.run.mode}-harvester-%d{yyyyMMdd}.log - 30 - - - - %-5p %d [%t] %c{0}: %m%n - - - @@ -90,10 +78,11 @@ - HarvesterLog:harvester.*,crawlerThreadPool.*,Crawler.* - console + 30 + %-5p %d [%t] %c{0}: %m%n + ${edex.home}/logs/edex-${edex.run.mode}-%s{name}-%d{yyyyMMdd}.log + console - @@ -119,6 +108,9 @@ + + + @@ -134,9 +126,6 @@ - - - diff --git a/edexOsgi/build.edex/esb/conf/logback.xml b/edexOsgi/build.edex/esb/conf/logback.xml index 3e2e0ca37c..83c645bcba 100644 --- a/edexOsgi/build.edex/esb/conf/logback.xml +++ b/edexOsgi/build.edex/esb/conf/logback.xml @@ -133,6 +133,9 @@ + + + @@ -148,9 +151,6 @@ - - - diff --git a/edexOsgi/build.edex/esb/conf/spring/edex-db.xml b/edexOsgi/build.edex/esb/conf/spring/edex-db.xml index 5ff9b46335..23f3f1dddd 100644 --- a/edexOsgi/build.edex/esb/conf/spring/edex-db.xml +++ b/edexOsgi/build.edex/esb/conf/spring/edex-db.xml @@ -12,15 +12,8 @@ - - - - - com.raytheon - gov.noaa - - - + + @@ -44,7 +37,7 @@ + class="org.springframework.orm.hibernate4.HibernateTransactionManager"> @@ -62,7 +55,7 @@ + class="org.springframework.orm.hibernate4.HibernateTransactionManager"> diff --git a/edexOsgi/build.edex/esb/conf/spring/edex.xml b/edexOsgi/build.edex/esb/conf/spring/edex.xml index b680aed378..aeb941f497 100644 --- a/edexOsgi/build.edex/esb/conf/spring/edex.xml +++ b/edexOsgi/build.edex/esb/conf/spring/edex.xml @@ -3,14 +3,14 @@ xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" - xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd"> - - - - + + + + @@ -24,7 +24,7 @@ - + @@ -64,12 +64,14 @@ - + + + - + - - - + + + - - - + + - + + + + + + + - + - + - + - - + @@ -136,95 +142,98 @@ - + - - - - + + + + - - + + + + + + - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + + + + + + - - - - - - - - - - - + - - + + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + class="com.raytheon.uf.edex.esb.camel.EDEXParameterMappingStrategy" /> @@ -248,7 +257,7 @@ - + @@ -262,7 +271,7 @@ - + @@ -274,16 +283,15 @@ - + + errorHandlerRef="errorHandler"> - + java.lang.Throwable @@ -291,51 +299,41 @@ - - - - - - - - - file:${edex.home}/conf/spring/cron.properties - file:${edex.home}/conf/spring/${edex.arch}/architecture.properties - - + + + - - + - + + class="com.raytheon.uf.edex.requestsrv.request.ServerPrivilegedRequestHandler"> - + + value="com.raytheon.uf.edex.requestsrv.request.ServerPrivilegedRequestHandler.ServerPrivilegedRequest" /> - - + + @@ -345,5 +343,24 @@ - + + + + + + + + + + + + + + + diff --git a/edexOsgi/build.edex/esb/conf/wrapper.conf b/edexOsgi/build.edex/esb/conf/wrapper.conf index 7d96702b5a..2e9961cb9e 100644 --- a/edexOsgi/build.edex/esb/conf/wrapper.conf +++ b/edexOsgi/build.edex/esb/conf/wrapper.conf @@ -42,13 +42,11 @@ wrapper.pidfile=${EDEX_HOME}/bin/${EDEX_RUN_MODE}.pid # use system java instead of awips2 java wrapper.app.env.use.system.java=${WRAPPER_USE_SYSTEM_JAVA} -# Java Classpath (include wrapper.jar) Add class path elements as -# needed starting from 1 -wrapper.java.classpath.1=${EDEX_HOME}/bin/yajsw/wrapper.jar -wrapper.java.classpath.2=${EDEX_HOME}/conf/ -wrapper.java.classpath.3=${EDEX_HOME}/conf/cache/ -wrapper.java.classpath.4=${EDEX_HOME}/conf/spring/ -wrapper.java.classpath.5=${EDEX_HOME}/conf/resources/ +# Java Classpath. Add class path elements as needed starting from 1. +wrapper.java.classpath.1=${EDEX_HOME}/conf/ +wrapper.java.classpath.2=${EDEX_HOME}/conf/cache/ +wrapper.java.classpath.3=${EDEX_HOME}/conf/spring/ +wrapper.java.classpath.4=${EDEX_HOME}/conf/resources/ # include ANY jar files that are found in the locations denoted by # wrapper.search.java.classpath.# @@ -93,12 +91,12 @@ wrapper.java.additional.4=-Dorg.apache.camel.jmx.disabled=true # Enforces GMT to be used as the timezone wrapper.java.additional.5=-Duser.timezone=GMT -# Force Java 7 to use earlier sort algorithm -wrapper.java.additional.6=-Djava.util.Arrays.useLegacyMergeSort=true - # garbage collection settings wrapper.java.additional.gc.1=-XX:+UseConcMarkSweepGC wrapper.java.additional.gc.2=-XX:+CMSIncrementalMode +wrapper.java.additional.gc.3=-XX:+HeapDumpOnOutOfMemoryError +wrapper.java.additional.gc.4=-XX:HeapDumpPath=/data/fxa/cave/${SHORT_HOSTNAME}/ +wrapper.java.additional.gc.5=-XX:SoftRefLRUPolicyMSPerMB=${SOFT_REF_LRU_POLICY_MS_PER_MB} # use qpid binding URL instead of default address string format wrapper.java.additional.qpid.1=-Dqpid.dest_syntax=BURL @@ -110,9 +108,8 @@ wrapper.java.additional.db.3=-Ddc.db.name=${DC_DB_NAME} wrapper.java.additional.db.4=-Dfxa.db.name=${FXA_DB_NAME} wrapper.java.additional.db.5=-Dhm.db.name=${HM_DB_NAME} wrapper.java.additional.db.6=-Dih.db.name=${IH_DB_NAME} -wrapper.java.additional.db.7=-Ddb.metadata.pool.min=${METADATA_POOL_MIN} -wrapper.java.additional.db.8=-Ddb.metadata.pool.max=${METADATA_POOL_MAX} -wrapper.java.additional.db.9=-Ddb.metadata.pool.timeout=${METADATA_POOL_TIMEOUT} +wrapper.java.additional.db.7=-Ddb.metadata.pool.max=${METADATA_POOL_MAX} +wrapper.java.additional.db.8=-Ddb.metadata.pool.timeout=${METADATA_POOL_TIMEOUT} # site ID of EDEX for localization and site aware services wrapper.java.additional.site.1=-Daw.site.identifier=${AW_SITE_IDENTIFIER} @@ -138,21 +135,18 @@ wrapper.java.additional.log.4=-Dcom.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_L # to get java.util.logging to go into slf4j....don't use java.util.logging, this is only for open src plugins using it wrapper.java.additional.log.5=-Djava.util.logging.config.file=${EDEX_HOME}/conf/logging.properties -# used by uengineWeb page -wrapper.java.additional.web.1=-Dweb.port=8080 -wrapper.java.additional.web.2=-Dconfidential.port=8443 - -# notifies SerializationManager to initialize hibernatables, can be removed IF Hibernatables code -# is removed from SerializationManager -wrapper.java.additional.misc.1=-DinitializeHibernatables=true - # the max size in MB of any stream sent to thrift, this prevents the OutOfMemory # errors reported by thrift sometimes when the stream is corrupt/incorrect wrapper.java.additional.thrift.maxStreamSize=-Dthrift.stream.maxsize=200 +wrapper.java.additional.retain.failed=-Dretain.failed.data=${RETAIN_FAILED} + # enables yourkit profiling, determined by flag to start.sh wrapper.java.additional.profile.1=${PROFILER_PARAM_1} +# sets the user preferences file to be unique to this JVM +wrapper.java.additional.prefs.1=-Djava.util.prefs.userRoot=${HOME}/.java/${HOSTNAME}-${EDEX_RUN_MODE}.userPrefs + # Initial Java Heap Size (in MB) wrapper.java.initmemory=${INIT_MEM} @@ -163,7 +157,17 @@ wrapper.java.app.mainclass=com.raytheon.uf.edex.esb.Main # Application parameters. Add parameters as needed starting from 2 wrapper.app.parameter.2=start -wrapper.ping.timeout=300 +wrapper.ping.timeout=30 + +# NOTE: script must be located at /awips2/qpid/bin/yajsw/scripts for it to be found +wrapper.script.ABORT=wrapperCapture.sh +wrapper.script.ABORT.timeout=120 +wrapper.script.RESTART=wrapperCapture.sh +wrapper.script.RESTART.timeout=120 + +# jvm will be hard killed after 5 minutes of trying to shutdown +wrapper.jvm_exit.timeout=0 +wrapper.shutdown.timeout=300 #******************************************************************** # Monitor the Application @@ -174,13 +178,14 @@ wrapper.java.monitor.heap.threshold.percent = 90 wrapper.java.monitor.deadlock = true # application will be restarted and a warning message will be logged -wrapper.filter.action.deadlock.restart=${WRAPPER_DEADLOCK_ACTION} +wrapper.filter.trigger.deadlock=wrapper.java.monitor.deadlock: DEADLOCK IN THREADS: +wrapper.filter.action.deadlock=${WRAPPER_DEADLOCK_ACTION} # restart the application if it crashes wrapper.on_exit.default=${WRAPPER_ON_EXIT_ACTION} # restart the application if it runs out of memory -wrapper.trigger.1=java.lang.OutOfMemoryError -wrapper.trigger.action=${WRAPPER_TRIGGER_ACTION} +wrapper.filter.trigger.oom=java.lang.OutOfMemoryError +wrapper.filter.action.oom=${WRAPPER_TRIGGER_ACTION} #******************************************************************** # Wrapper Logging Properties diff --git a/edexOsgi/build.edex/esb/etc/centralRegistry.sh b/edexOsgi/build.edex/esb/etc/centralRegistry.sh index c6edad4b3c..aadc32ca70 100644 --- a/edexOsgi/build.edex/esb/etc/centralRegistry.sh +++ b/edexOsgi/build.edex/esb/etc/centralRegistry.sh @@ -19,14 +19,14 @@ # further licensing information. ## -export MAX_MEM=1536 # in Meg +export MAX_MEM=2048 # in Meg export MAX_PERM_SIZE=192m export EDEX_DEBUG_PORT=5011 export EDEX_JMX_PORT=1622 export LOG_CONF=logback-registry.xml export MGMT_PORT=9607 -export METADATA_POOL_MIN=10 -export METADATA_POOL_MAX=25 export METADATA_POOL_TIMEOUT=60 export CLUSTER_ID=NCF + +export SOFT_REF_LRU_POLICY_MS_PER_MB=50 diff --git a/edexOsgi/build.edex/esb/etc/datadeliveryonly.sh b/edexOsgi/build.edex/esb/etc/datadeliveryonly.sh index 472af6c41b..efaf71041d 100644 --- a/edexOsgi/build.edex/esb/etc/datadeliveryonly.sh +++ b/edexOsgi/build.edex/esb/etc/datadeliveryonly.sh @@ -22,7 +22,6 @@ export INIT_MEM=512 # in Meg export MAX_MEM=1536 # in Meg -export METADATA_POOL_MIN=10 export EDEX_DEBUG_PORT=5009 export EDEX_JMX_PORT=1620 export LOG_CONF=logback-registry.xml diff --git a/edexOsgi/build.edex/esb/etc/dataprovideragent.sh b/edexOsgi/build.edex/esb/etc/dataprovideragent.sh index d9a9b0fd14..02c1eb0d00 100644 --- a/edexOsgi/build.edex/esb/etc/dataprovideragent.sh +++ b/edexOsgi/build.edex/esb/etc/dataprovideragent.sh @@ -22,7 +22,6 @@ export INIT_MEM=512 # in Meg export MAX_MEM=1536 # in Meg export MAX_PERM_SIZE=192m -export METADATA_POOL_MIN=10 export EDEX_DEBUG_PORT=5010 export EDEX_JMX_PORT=1621 export LOG_CONF=logback-dataprovideragent.xml diff --git a/edexOsgi/build.edex/esb/etc/default.sh b/edexOsgi/build.edex/esb/etc/default.sh index f04480f12d..d2fc075399 100644 --- a/edexOsgi/build.edex/esb/etc/default.sh +++ b/edexOsgi/build.edex/esb/etc/default.sh @@ -19,13 +19,10 @@ # further licensing information. ## export INIT_MEM=512 # in Meg -export MAX_MEM=2048 # in Meg +export MAX_MEM=1300 # in Meg export MAX_PERM_SIZE=128m export EDEX_JMX_PORT=1616 export EDEX_DEBUG_PORT=5005 -export JMS_POOL_MIN=64 -export JMS_POOL_MAX=128 -export METADATA_POOL_MIN=5 export METADATA_POOL_MAX=50 export METADATA_POOL_TIMEOUT=300 export DEBUG_PARAM_1="" @@ -48,3 +45,5 @@ export WRAPPER_DEADLOCK_ACTION=RESTART export WRAPPER_ON_EXIT_ACTION=RESTART export WRAPPER_TRIGGER_ACTION=RESTART export WRAPPER_USE_SYSTEM_JAVA=false + +export SOFT_REF_LRU_POLICY_MS_PER_MB=1000 diff --git a/edexOsgi/build.edex/esb/etc/devRegistry.sh b/edexOsgi/build.edex/esb/etc/devRegistry.sh index 86b41aaf4c..41f300796c 100644 --- a/edexOsgi/build.edex/esb/etc/devRegistry.sh +++ b/edexOsgi/build.edex/esb/etc/devRegistry.sh @@ -21,7 +21,6 @@ export MAX_MEM=1536 # in Meg export MAX_PERM_SIZE=192m -export METADATA_POOL_MIN=10 export EDEX_DEBUG_PORT=5012 export EDEX_JMX_PORT=1620 export LOG_CONF=logback-registry.xml @@ -30,3 +29,5 @@ export EBXML_REGISTRY_FEDERATION_ENABLED=false export NCF_HOST=${DATADELIVERY_HOST} export NCF_ADDRESS=http://${NCF_HOST}:${EBXML_REGISTRY_WEBSERVER_PORT} export NCF_BANDWIDTH_MANAGER_SERVICE=http://${NCF_HOST}:${EBXML_THRIFT_SERVICE_PORT}/services + +export SOFT_REF_LRU_POLICY_MS_PER_MB=50 diff --git a/edexOsgi/build.edex/esb/etc/ingest.sh b/edexOsgi/build.edex/esb/etc/ingest.sh index 08ee39b1d5..e191a924ac 100644 --- a/edexOsgi/build.edex/esb/etc/ingest.sh +++ b/edexOsgi/build.edex/esb/etc/ingest.sh @@ -20,9 +20,8 @@ ## export INIT_MEM=512 # in Meg -export MAX_MEM=2048 # in Meg +export MAX_MEM=896 # in Meg -export METADATA_POOL_MIN=10 export EDEX_DEBUG_PORT=5006 export EDEX_JMX_PORT=1617 export LOG_CONF=logback-ingest.xml diff --git a/edexOsgi/build.edex/esb/etc/ingestDat.sh b/edexOsgi/build.edex/esb/etc/ingestDat.sh index 473b30db5d..b6569bde6b 100644 --- a/edexOsgi/build.edex/esb/etc/ingestDat.sh +++ b/edexOsgi/build.edex/esb/etc/ingestDat.sh @@ -21,10 +21,7 @@ export INIT_MEM=256 # in Meg export MAX_MEM=1792 # in Meg -export JMS_POOL_MIN=16 -export JMS_POOL_MAX=32 -export METADATA_POOL_MIN=15 -export METADATA_POOL_MAX=30 +export METADATA_POOL_MAX=25 export EDEX_DEBUG_PORT=5008 export EDEX_JMX_PORT=1619 export MGMT_PORT=9604 diff --git a/edexOsgi/build.edex/esb/etc/ingestGrib.sh b/edexOsgi/build.edex/esb/etc/ingestGrib.sh index ea69502f7e..7874cfbeb0 100644 --- a/edexOsgi/build.edex/esb/etc/ingestGrib.sh +++ b/edexOsgi/build.edex/esb/etc/ingestGrib.sh @@ -19,11 +19,8 @@ # further licensing information. ## export INIT_MEM=128 # in Meg -export MAX_MEM=2048 # in Meg +export MAX_MEM=512 # in Meg -export JMS_POOL_MIN=4 -export JMS_POOL_MAX=16 -export METADATA_POOL_MIN=4 export METADATA_POOL_MAX=10 export EDEX_DEBUG_PORT=5007 export EDEX_JMX_PORT=1618 diff --git a/edexOsgi/build.edex/esb/etc/ingestHydro.sh b/edexOsgi/build.edex/esb/etc/ingestHydro.sh index 3ef1b62953..6c2f5d6bd0 100644 --- a/edexOsgi/build.edex/esb/etc/ingestHydro.sh +++ b/edexOsgi/build.edex/esb/etc/ingestHydro.sh @@ -22,7 +22,7 @@ export INIT_MEM=412 # in Meg export MAX_MEM=796 # in Meg -export METADATA_POOL_MIN=4 +export METADATA_POOL_MAX=25 export EDEX_DEBUG_PORT=5006 export EDEX_JMX_PORT=1617 export LOG4J_CONF=log4j-ingest.xml diff --git a/edexOsgi/build.edex/esb/etc/registry.sh b/edexOsgi/build.edex/esb/etc/registry.sh index 9797f22d08..ab379bdfdf 100644 --- a/edexOsgi/build.edex/esb/etc/registry.sh +++ b/edexOsgi/build.edex/esb/etc/registry.sh @@ -26,6 +26,7 @@ export EDEX_JMX_PORT=1620 export LOG_CONF=logback-registry.xml export MGMT_PORT=9605 -export METADATA_POOL_MIN=5 export METADATA_POOL_MAX=20 export METADATA_POOL_TIMEOUT=60 + +export SOFT_REF_LRU_POLICY_MS_PER_MB=50 \ No newline at end of file diff --git a/edexOsgi/build.edex/esb/etc/request.sh b/edexOsgi/build.edex/esb/etc/request.sh index 4a7303b979..536081a2f2 100644 --- a/edexOsgi/build.edex/esb/etc/request.sh +++ b/edexOsgi/build.edex/esb/etc/request.sh @@ -29,8 +29,6 @@ export SERIALIZE_STREAM_INIT_SIZE_MB=2 export SERIALIZE_STREAM_MAX_SIZE_MB=8 -export JMS_POOL_MIN=16 -export JMS_POOL_MAX=32 export EDEX_DEBUG_PORT=5005 export EDEX_JMX_PORT=1616 export MGMT_PORT=9601 diff --git a/edexOsgi/build.edex/esb/etc/requestHydro.sh b/edexOsgi/build.edex/esb/etc/requestHydro.sh index 4d07d95073..37e80657b7 100644 --- a/edexOsgi/build.edex/esb/etc/requestHydro.sh +++ b/edexOsgi/build.edex/esb/etc/requestHydro.sh @@ -29,8 +29,6 @@ export SERIALIZE_STREAM_INIT_SIZE_MB=2 export SERIALIZE_STREAM_MAX_SIZE_MB=8 -export JMS_POOL_MIN=8 -export JMS_POOL_MAX=24 export EDEX_DEBUG_PORT=5005 export EDEX_JMX_PORT=1616 export MGMT_PORT=9601 diff --git a/edexOsgi/build.edex/opt/db/ddl/maps/importShapeFile.sh b/edexOsgi/build.edex/opt/db/ddl/maps/importShapeFile.sh index 937e1cea19..ebaf22c08d 100644 --- a/edexOsgi/build.edex/opt/db/ddl/maps/importShapeFile.sh +++ b/edexOsgi/build.edex/opt/db/ddl/maps/importShapeFile.sh @@ -1,26 +1,37 @@ #!/bin/sh ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. +# +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# 03/25/2014 #2664 randerso Added support for importing non-WGS84 shape files +# 10/23/2014 #3685 randerso Fixed bug where .prj was not recognized when shape file +# was in the current directory (no directory specified) +# ## -if [ $# -lt 3 ] ; then + +function usage() +{ echo - echo usage: `basename $0` shapefile schema table [simplev [dbUser [dbPort [installDir]]]] + echo usage: `basename $0` shapefile schema table [simplev [dbUser [dbPort [installDir [srid]]]]] echo "where: shapefile - pathname of the shape file to be imported" echo " schema - database schema where the shape file is to be imported" echo " table - database table where the shape file is to be imported" @@ -28,11 +39,22 @@ if [ $# -lt 3 ] ; then echo " dbUser - optional database user id" echo " dbPort - optional database port number" echo " installDir- optional directory path to awips installation" - echo "example: `basename $0` uscounties.shp mapdata County 0.064,0.016,0.004,0.001 awips 5432 /awips2" + echo " srid - optional srid of source shape file" + echo "example: `basename $0` uscounties.shp mapdata County 0.064,0.016,0.004,0.001 awips 5432 /awips2" +} + +if [ $# -lt 3 ] ; then + usage exit -1 fi -SHAPEFILEPATH=${1} +SHP_PATH=`readlink -f ${1}` +SHP_DIR="${SHP_PATH%/*}" # shape file dir +SHP_NAME="${SHP_PATH##*/}" # shape file name with extension +SHP_BASE="${SHP_NAME%.*}" # shape file name without extension +SHP_EXT="${SHP_NAME##*.}" # shape file extension +PRJ_PATH="${SHP_DIR}/${SHP_BASE}.prj" + SCHEMA=`echo "${2}" | tr '[:upper:]' '[:lower:]'` TABLE=`echo "${3}" | tr '[:upper:]' '[:lower:]'` SIMPLEVS=${4} @@ -57,16 +79,38 @@ else PSQLBINDIR=${7}/psql/bin/ fi -SHAPEFILENAME=`basename ${SHAPEFILEPATH}` -echo " Importing ${SHAPEFILENAME} into ${SCHEMA}.${TABLE} ..." +if [ -z $8 ] ; then + if [ -e $PRJ_PATH ] + then + echo + echo "WARNING, found projection file: ${PRJ_PATH}" + echo "It is probable that this shape file is not in EPSG:4326 (WGS 84, unprojected lat/lon) format." + echo "Please determine the correct srid by uploading the .prj file to http://prj2epsg.org/search" + echo "and re-run `basename $0` supplying the correct srid." + usage + exit -1 + fi + + SRID=4326 +else + SRID=${8}:4326 +fi + +if [ ! -r ${SHP_PATH} ]; then + echo + echo "ERROR, file not found or is not readable: ${SHP_PATH}" + exit -1 +fi + +echo " Importing ${SHP_NAME} into ${SCHEMA}.${TABLE} ..." ${PSQLBINDIR}psql -d maps -U ${PGUSER} -q -p ${PGPORT} -c " DELETE FROM public.geometry_columns WHERE f_table_schema = '${SCHEMA}' AND f_table_name = '${TABLE}'; - DELETE from ${SCHEMA}.map_version WHERE table_name='${TABLE}'; + DELETE FROM ${SCHEMA}.map_version WHERE table_name='${TABLE}'; DROP TABLE IF EXISTS ${SCHEMA}.${TABLE} " -${PGBINDIR}shp2pgsql -W LATIN1 -s 4326 -g the_geom -I ${SHAPEFILEPATH} ${SCHEMA}.${TABLE} | ${PSQLBINDIR}psql -d maps -U ${PGUSER} -q -p ${PGPORT} -f - +${PGBINDIR}shp2pgsql -W LATIN1 -s ${SRID} -g the_geom -I ${SHP_PATH} ${SCHEMA}.${TABLE} | ${PSQLBINDIR}psql -d maps -U ${PGUSER} -q -p ${PGPORT} -f - ${PSQLBINDIR}psql -d maps -U ${PGUSER} -q -p ${PGPORT} -c " - INSERT INTO ${SCHEMA}.map_version (table_name, filename) values ('${TABLE}','${SHAPEFILENAME}'); + INSERT INTO ${SCHEMA}.map_version (table_name, filename) values ('${TABLE}','${SHP_NAME}'); SELECT AddGeometryColumn('${SCHEMA}','${TABLE}','the_geom_0','4326',(SELECT type FROM public.geometry_columns WHERE f_table_schema='${SCHEMA}' and f_table_name='${TABLE}' and f_geometry_column='the_geom'),2); UPDATE ${SCHEMA}.${TABLE} SET the_geom_0=ST_Segmentize(the_geom,0.1); CREATE INDEX ${TABLE}_the_geom_0_gist ON ${SCHEMA}.${TABLE} USING gist(the_geom_0); diff --git a/edexOsgi/build.edex/opt/db/ddl/maps/initializeMapsDb.sh b/edexOsgi/build.edex/opt/db/ddl/maps/initializeMapsDb.sh index cf6d01baa2..3c89d1e9a7 100644 --- a/edexOsgi/build.edex/opt/db/ddl/maps/initializeMapsDb.sh +++ b/edexOsgi/build.edex/opt/db/ddl/maps/initializeMapsDb.sh @@ -1,20 +1,20 @@ #!/bin/sh ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## @@ -49,8 +49,9 @@ else fi ${PSQLBINDIR}/psql -d postgres -U $PGUSER -q -p $PGPORT -f ${DATABASEDIR}/createMapsDb.sql -${PSQLBINDIR}/psql -d maps -U $PGUSER -q -p $PGPORT -f ${POSTGIS_CONTRIB}/postgis.sql -${PSQLBINDIR}/psql -d maps -U $PGUSER -q -p $PGPORT -f ${POSTGIS_CONTRIB}/spatial_ref_sys.sql +${PSQLBINDIR}/psql -d maps -U $PGUSER -q -p $PGPORT -c "CREATE EXTENSION postgis;" +${PSQLBINDIR}/psql -d maps -U $PGUSER -q -p $PGPORT -c "CREATE EXTENSION postgis_topology;" +${PSQLBINDIR}/psql -d maps -U $PGUSER -q -p $PGPORT -f ${POSTGIS_CONTRIB}/legacy.sql if [ -f ${DATABASEDIR}/maps.db ] ; then ${PSQLBINDIR}/psql -d maps -U ${PGUSER} -q -p ${PGPORT} -c "DROP TABLE IF EXISTS mapdata.map_version" ${PGBINDIR}/pg_restore -d maps -U $PGUSER -p $PGPORT -n mapdata ${DATABASEDIR}/maps.db diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/createNcepNwxTables.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/createNcepNwxTables.sql index 838200ee55..ed2953a883 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/createNcepNwxTables.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/createNcepNwxTables.sql @@ -195,6 +195,15 @@ producttablename varchar(30) NOT NULL, producttype varchar(20) NOT NULL ); +-- create nwx.adminmessages table +DROP TABLE IF EXISTS nwx.adminmessages CASCADE; +CREATE TABLE nwx.adminmessages( +id SERIAL PRIMARY KEY, +productname varchar(60) NOT NULL, +producttablename varchar(30) NOT NULL, +producttype varchar(20) NOT NULL +); + ------------------------------------------------- -- create nwx bulletin tables -- --------------------------------------------- @@ -355,6 +364,20 @@ id SERIAL PRIMARY KEY, elevation int NOT NULL ); +-- create nwx.cmcam table +DROP TABLE IF EXISTS nwx.cmcam CASCADE; +CREATE TABLE nwx.cmcam( +id SERIAL PRIMARY KEY, + productid varchar(6) NOT NULL, + stnid varchar(8) NOT NULL, + stnname varchar(32) NOT NULL, + state varchar(2) NOT NULL, + country varchar(2) NOT NULL, + latitude double precision NOT NULL, + longitude double precision NOT NULL, + elevation int NOT NULL +); + --create nwx.consig table DROP TABLE IF EXISTS nwx.consig CASCADE; CREATE TABLE nwx.consig( @@ -1016,6 +1039,48 @@ id SERIAL PRIMARY KEY, elevation int NOT NULL ); +-- create nwx.ncfam table +DROP TABLE IF EXISTS nwx.ncfam CASCADE; +CREATE TABLE nwx.ncfam( +id SERIAL PRIMARY KEY, + productid varchar(6) NOT NULL, + stnid varchar(8) NOT NULL, + stnname varchar(32) NOT NULL, + state varchar(2) NOT NULL, + country varchar(2) NOT NULL, + latitude double precision NOT NULL, + longitude double precision NOT NULL, + elevation int NOT NULL +); + +-- create nwx.nesdisam table +DROP TABLE IF EXISTS nwx.nesdisam CASCADE; +CREATE TABLE nwx.nesdisam( +id SERIAL PRIMARY KEY, + productid varchar(6) NOT NULL, + stnid varchar(8) NOT NULL, + stnname varchar(32) NOT NULL, + state varchar(2) NOT NULL, + country varchar(2) NOT NULL, + latitude double precision NOT NULL, + longitude double precision NOT NULL, + elevation int NOT NULL +); + +-- create nwx.nesdispam table +DROP TABLE IF EXISTS nwx.nesdispam CASCADE; +CREATE TABLE nwx.nesdispam( +id SERIAL PRIMARY KEY, + productid varchar(6) NOT NULL, + stnid varchar(8) NOT NULL, + stnname varchar(32) NOT NULL, + state varchar(2) NOT NULL, + country varchar(2) NOT NULL, + latitude double precision NOT NULL, + longitude double precision NOT NULL, + elevation int NOT NULL +); + -- create nwx.ngmgd table DROP TABLE IF EXISTS nwx.ngmgd CASCADE; CREATE TABLE nwx.ngmgd( @@ -1058,6 +1123,20 @@ id SERIAL PRIMARY KEY, elevation int NOT NULL ); +-- create nwx.snwstgam table +DROP TABLE IF EXISTS nwx.nwstgam CASCADE; +CREATE TABLE nwx.nwstgam( +id SERIAL PRIMARY KEY, + productid varchar(6) NOT NULL, + stnid varchar(8) NOT NULL, + stnname varchar(32) NOT NULL, + state varchar(2) NOT NULL, + country varchar(2) NOT NULL, + latitude double precision NOT NULL, + longitude double precision NOT NULL, + elevation int NOT NULL +); + -- create nwx.off table DROP TABLE IF EXISTS nwx.off CASCADE; CREATE TABLE nwx.off( @@ -1400,9 +1479,37 @@ id SERIAL PRIMARY KEY, elevation int NOT NULL ); --- create nwx.sdm table -DROP TABLE IF EXISTS nwx.sdm CASCADE; -CREATE TABLE nwx.sdm( +-- create nwx.sdmam table +DROP TABLE IF EXISTS nwx.sdmam CASCADE; +CREATE TABLE nwx.sdmam( +id SERIAL PRIMARY KEY, + productid varchar(6) NOT NULL, + stnid varchar(8) NOT NULL, + stnname varchar(32) NOT NULL, + state varchar(2) NOT NULL, + country varchar(2) NOT NULL, + latitude double precision NOT NULL, + longitude double precision NOT NULL, + elevation int NOT NULL +); + +-- create nwx.sdmim table +DROP TABLE IF EXISTS nwx.sdmim CASCADE; +CREATE TABLE nwx.sdmim( +id SERIAL PRIMARY KEY, + productid varchar(6) NOT NULL, + stnid varchar(8) NOT NULL, + stnname varchar(32) NOT NULL, + state varchar(2) NOT NULL, + country varchar(2) NOT NULL, + latitude double precision NOT NULL, + longitude double precision NOT NULL, + elevation int NOT NULL +); + +-- create nwx.sdmdhm table +DROP TABLE IF EXISTS nwx.sdmdhm CASCADE; +CREATE TABLE nwx.sdmdhm( id SERIAL PRIMARY KEY, productid varchar(6) NOT NULL, stnid varchar(8) NOT NULL, diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadCpcstns.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/loadCpcstns.sql index a4d9b2056e..875ce09ffb 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadCpcstns.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadCpcstns.sql @@ -1,4 +1,4 @@ -COPY stns.CPCSTNS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LONGITUDE, ELEVATION, PRI) FROM stdin with delimiter as ','; +COPY stns.CPCSTNS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LONGITUDE, ELEV, PRI) FROM stdin with delimiter as ','; 1,ABI,72266,ABILENE,TX,US,32.5,-99.7,0,0 2,ABQ,72365,ALBUQUERQUE_INTL,NM,US,35.05,-106.62,1620,0 3,ADK,70454,ADAK_NAS/MITCHELL,AK,US,51.88,-176.65,4,0 diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadDlwx.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/loadDlwx.sql index 72b988a87c..6a4f932758 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadDlwx.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadDlwx.sql @@ -1,4 +1,4 @@ -COPY stns.DLWX(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LONGITUDE, ELEVATION, PRI) FROM stdin with delimiter as ','; +COPY stns.DLWX(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LONGITUDE, ELEV, PRI) FROM stdin with delimiter as ','; 1,EYW,722010,KEY_WEST_INTL_ARPT_(ASOS),FL,US,24.55,-81.75,6,99 2,MIA,722020,MIAMI_INTL_AIRPORT_(ASOS),FL,US,25.82,-80.28,4,99 3,MCO,722050,ORLANDO_JETPORT___(ASOS),FL,US,28.43,-81.32,32,99 diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadNcepNwx.sh b/edexOsgi/build.edex/opt/db/ddl/ncep/loadNcepNwx.sh index a64851106d..c358bd42fc 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadNcepNwx.sh +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadNcepNwx.sh @@ -25,3 +25,4 @@ ${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxReconCARCAHBulletinTable ${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxSPCProductsBulletinTables.sql >> ${5} 2>&1 ${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxTropicalPacificBulletinTables.sql >> ${5} 2>&1 ${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxVolcanoProductsBulletinTables.sql >> ${5} 2>&1 +${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxAdminMessagesBulletinTables.sql >> ${5} 2>&1 diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxMasterAndGuiProducts.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxMasterAndGuiProducts.sql index add2d2c11b..0b9412bbb3 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxMasterAndGuiProducts.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxMasterAndGuiProducts.sql @@ -64,6 +64,19 @@ HPC Heat Index,nwx.hpcheatindex CPC Products,nwx.cpcproducts Volcano Products,nwx.volcanoproducts Fire Weather Products,nwx.fireweatherproducts +Admin Messages,nwx.adminmessages +\. + +--load nwx.adminmessages table +copy nwx.adminmessages (productname,producttablename,producttype) FROM stdin with delimiter as ',' ; +SDM Administrative Messages,nwx.sdmam,sdm +SDM International Messages,nwx.sdmim,intl +SDM DHS Hazards Messages,nwx.sdmdhm +CMC Administrative Messages,nwx.cmcam +NWSTG Administrative Messages,nwx.nwstgam +NCF Administrative Messages,nwx.ncfam +NESDIS Product Anomaly Messages,nwx.nesdispam +NESDIS Administrative Messages,nwx.nesdisam \. --load nwx.observeddataproducts table @@ -135,8 +148,6 @@ Hawaii Discussion,nwx.pmdhi,PMDHI Alaska Discussion,nwx.pmdak,PMDAK S Amer Discussion,nwx.pmdsa,PMDSA Caribbean Discussion,nwx.pmdca,PMDCA -SDM Messages,nwx.sdm,sdm -International Messages,nwx.intl,intl Storm Summaries,nwx.stations,storm Model Diag Discussion,nwx.pmdhmd,PMDHMD Selected Cities,nwx.scs,SCS diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxObservedDataBulletinTables.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxObservedDataBulletinTables.sql index e43add0973..46904ebae4 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxObservedDataBulletinTables.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadNwxObservedDataBulletinTables.sql @@ -8658,7 +8658,7 @@ copy nwx.sfstns (productid,stnid,stnname,state,country,latitude,longitude,elevat 085010;LPFL;FLORES_ISLAND;--;AZ;39.45;-31.13;29 999999;M97;TUNICA;MS;US;34.86;-90.35;59 999999;MDD;MIDLAND;TX;US;32.04;-102.10;854 -890090;NZSP;AMUNDSEN-SCOTT_SOUTH_POLE_STN;--;NZ;-90.00;0.00;2830 +890090;NZSP;AMUNDSEN-SCOTT_SOUTH_POLE_STN;--;NZ;-89.99;0.01;2830 999999;PCZ;WAUPACA;WI;US;44.33;-89.01;252 999999;RCX;LADYSMITH;WI;US;45.50;-91.00;377 800630;SKMR;MONTERIA/LOS_GARZON;--;CO;8.82;-75.85;26 @@ -10043,7 +10043,7 @@ copy nwx.snstns (productid,stnid,stnname,state,country,latitude,longitude,elevat 87860;SAVC;COMODORO_RIVADAVIA_AERO;--;AG;-45.78;-67.50;46 88889;EGYP;MOUNT_PLEASANT_AIRPORT;--;FK;-51.81;-58.45;73 89002;--;NEUMAYER;--;AA;-70.66;-8.25;50 -89009;--;AMUNDSEN-SCOTT;--;AA;-90.00;0.00;2835 +89009;--;AMUNDSEN-SCOTT;--;AA;-89.99;0.01;2835 89022;--;HALLEY;--;AA;-75.50;-26.65;30 89050;--;BELLINGSHAUSEN_AWS;--;AA;-62.20;-58.93;14 89055;--;BASE_MARAMBIO;--;AA;-64.23;-56.71;198 diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap.sql index 81010d51c9..e821102ee7 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap.sql @@ -308,99 +308,103 @@ PQI00047, 9,240NNE_PQI ,50.44,-65.69, 2 PQI00048, 9,20NE_PQI ,47.01,-67.74, 2 PQI00049, 9,30NE_PQI ,47.12,-67.57, 2 PQI00050, 9,40NE_PQI ,47.24,-67.40, 2 -PQI00051, 9,90NE_PQI ,47.82,-66.51, 2 -PQI00052, 9,100NE_PQI ,47.93,-66.33, 2 -PQI00053, 9,110NE_PQI ,48.05,-66.15, 2 -PQI00054, 9,120NE_PQI ,48.16,-65.97, 2 -PQI00055, 9,130NE_PQI ,48.28,-65.79, 2 -PQI00056, 9,140NE_PQI ,48.39,-65.61, 2 -PQI00057, 9,150NE_PQI ,48.51,-65.42, 2 -PQI00058, 9,160NE_PQI ,48.62,-65.24, 2 -PQI00059, 9,170NE_PQI ,48.73,-65.05, 2 -PQI00060, 9,180NE_PQI ,48.85,-64.87, 2 -PQI00061, 9,190NE_PQI ,48.96,-64.68, 2 -PQI00062, 9,200NE_PQI ,49.07,-64.49, 2 -PQI00063, 9,210NE_PQI ,49.18,-64.31, 2 -PQI00064, 9,220NE_PQI ,49.29,-64.12, 2 -PQI00065, 9,230NE_PQI ,49.41,-63.93, 2 -PQI00066, 9,240NE_PQI ,49.52,-63.74, 2 -PQI00067, 9,250NE_PQI ,49.63,-63.54, 2 -PQI00068, 9,20ENE_PQI ,46.90,-67.64, 2 -PQI00069, 9,30ENE_PQI ,46.96,-67.41, 2 -PQI00070, 9,40ENE_PQI ,47.02,-67.19, 2 -PQI00071, 9,50ENE_PQI ,47.08,-66.96, 2 -PQI00072, 9,60ENE_PQI ,47.14,-66.73, 2 -PQI00073, 9,70ENE_PQI ,47.21,-66.50, 2 -PQI00074, 9,80ENE_PQI ,47.27,-66.28, 2 -PQI00075, 9,90ENE_PQI ,47.33,-66.05, 2 -PQI00076, 9,100ENE_PQI ,47.39,-65.82, 2 -PQI00077, 9,110ENE_PQI ,47.44,-65.59, 2 -PQI00078, 9,120ENE_PQI ,47.50,-65.36, 2 -PQI00079, 9,130ENE_PQI ,47.56,-65.13, 2 -PQI00080, 9,140ENE_PQI ,47.62,-64.89, 2 -PQI00081, 9,150ENE_PQI ,47.68,-64.66, 2 -PQI00082, 9,160ENE_PQI ,47.73,-64.43, 2 -PQI00083, 9,20E_PQI ,46.77,-67.60, 2 -PQI00084, 9,30E_PQI ,46.77,-67.36, 2 -PQI00085, 9,40E_PQI ,46.77,-67.12, 2 -PQI00086, 9,50E_PQI ,46.76,-66.87, 2 -PQI00087, 9,60E_PQI ,46.76,-66.63, 2 -PQI00088, 9,70E_PQI ,46.76,-66.39, 2 -PQI00089, 9,80E_PQI ,46.75,-66.15, 2 -PQI00090, 9,90E_PQI ,46.75,-65.90, 2 -PQI00091, 9,20ESE_PQI ,46.64,-67.64, 2 -PQI00092, 9,30ESE_PQI ,46.58,-67.42, 2 -PQI00093, 9,40ESE_PQI ,46.51,-67.20, 2 -PQI00094, 9,50ESE_PQI ,46.45,-66.97, 2 -PQI00095, 9,20SE_PQI ,46.53,-67.75, 2 -PQI00096, 9,30SE_PQI ,46.42,-67.58, 2 -PQI00097, 9,20SSE_PQI ,46.46,-67.90, 2 -PQI00098, 9,30SSE_PQI ,46.31,-67.81, 2 -PQI00099, 9,20S_PQI ,46.44,-68.09, 2 -PQI00100, 9,30S_PQI ,46.27,-68.09, 2 -PQI00101, 9,20SSW_PQI ,46.46,-68.28, 2 -PQI00102, 9,30SSW_PQI ,46.31,-68.37, 2 -PQI00103, 9,20SW_PQI ,46.53,-68.43, 2 -PQI00104, 9,30SW_PQI ,46.42,-68.60, 2 -PQI00105, 9,40SW_PQI ,46.30,-68.77, 2 -PQI00106, 9,50SW_PQI ,46.18,-68.94, 2 -PQI00107, 9,20WSW_PQI ,46.64,-68.54, 2 -PQI00108, 9,30WSW_PQI ,46.58,-68.76, 2 -PQI00109, 9,40WSW_PQI ,46.51,-68.98, 2 -PQI00110, 9,50WSW_PQI ,46.45,-69.21, 2 -PQI00111, 9,60WSW_PQI ,46.38,-69.43, 2 -PQI00112, 9,70WSW_PQI ,46.31,-69.65, 2 -PQI00113, 9,20W_PQI ,46.77,-68.58, 2 -PQI00114, 9,30W_PQI ,46.77,-68.82, 2 -PQI00115, 9,40W_PQI ,46.77,-69.06, 2 -PQI00116, 9,50W_PQI ,46.76,-69.31, 2 -PQI00117, 9,60W_PQI ,46.76,-69.55, 2 -PQI00118, 9,20WNW_PQI ,46.90,-68.54, 2 -PQI00119, 9,30WNW_PQI ,46.96,-68.77, 2 -PQI00120, 9,40WNW_PQI ,47.02,-68.99, 2 -PQI00121, 9,50WNW_PQI ,47.08,-69.22, 2 -PQI00122, 9,60WNW_PQI ,47.14,-69.45, 2 -PQI00123, 9,70WNW_PQI ,47.21,-69.68, 2 -PQI00124, 9,20NW_PQI ,47.01,-68.44, 2 -PQI00125, 9,30NW_PQI ,47.12,-68.61, 2 -PQI00126, 9,40NW_PQI ,47.24,-68.78, 2 -PQI00127, 9,90NW_PQI ,47.82,-69.67, 2 -PQI00128, 9,20NNW_PQI ,47.08,-68.28, 2 -PQI00129, 9,30NNW_PQI ,47.23,-68.37, 2 -PQI00130, 9,40NNW_PQI ,47.38,-68.47, 2 -PQI00131, 9,50NNW_PQI ,47.54,-68.56, 2 -PQI00132, 9,60NNW_PQI ,47.69,-68.66, 2 -PQI00133, 9,70NNW_PQI ,47.85,-68.75, 2 -PQI00134, 9,80NNW_PQI ,48.00,-68.85, 2 -PQI00135, 9,90NNW_PQI ,48.15,-68.95, 2 -PQI00136, 9,100NNW_PQI ,48.30,-69.05, 2 -PQI00137, 9,110NNW_PQI ,48.46,-69.15, 2 -PQI00138, 9,120NNW_PQI ,48.61,-69.25, 2 -PQI00139, 9,130NNW_PQI ,48.76,-69.35, 2 -PQI00140, 9,140NNW_PQI ,48.92,-69.45, 2 -PQI00141, 9,150NNW_PQI ,49.07,-69.55, 2 -PQI00142, 9,160NNW_PQI ,49.22,-69.65, 2 -PQI00143, 9,170NNW_PQI ,49.37,-69.75, 2 +PQI00051, 9,50NE_PQI ,47.36,-67.22, 2 +PQI00052, 9,80NE_PQI ,47.70,-66.69, 2 +PQI00053, 9,90NE_PQI ,47.82,-66.51, 2 +PQI00054, 9,100NE_PQI ,47.93,-66.33, 2 +PQI00055, 9,110NE_PQI ,48.05,-66.15, 2 +PQI00056, 9,120NE_PQI ,48.16,-65.97, 2 +PQI00057, 9,130NE_PQI ,48.28,-65.79, 2 +PQI00058, 9,140NE_PQI ,48.39,-65.61, 2 +PQI00059, 9,150NE_PQI ,48.51,-65.42, 2 +PQI00060, 9,160NE_PQI ,48.62,-65.24, 2 +PQI00061, 9,170NE_PQI ,48.73,-65.05, 2 +PQI00062, 9,180NE_PQI ,48.85,-64.87, 2 +PQI00063, 9,190NE_PQI ,48.96,-64.68, 2 +PQI00064, 9,200NE_PQI ,49.07,-64.49, 2 +PQI00065, 9,210NE_PQI ,49.18,-64.31, 2 +PQI00066, 9,220NE_PQI ,49.29,-64.12, 2 +PQI00067, 9,230NE_PQI ,49.41,-63.93, 2 +PQI00068, 9,240NE_PQI ,49.52,-63.74, 2 +PQI00069, 9,250NE_PQI ,49.63,-63.54, 2 +PQI00070, 9,20ENE_PQI ,46.90,-67.64, 2 +PQI00071, 9,30ENE_PQI ,46.96,-67.41, 2 +PQI00072, 9,40ENE_PQI ,47.02,-67.19, 2 +PQI00073, 9,50ENE_PQI ,47.08,-66.96, 2 +PQI00074, 9,60ENE_PQI ,47.14,-66.73, 2 +PQI00075, 9,70ENE_PQI ,47.21,-66.50, 2 +PQI00076, 9,80ENE_PQI ,47.27,-66.28, 2 +PQI00077, 9,90ENE_PQI ,47.33,-66.05, 2 +PQI00078, 9,100ENE_PQI ,47.39,-65.82, 2 +PQI00079, 9,110ENE_PQI ,47.44,-65.59, 2 +PQI00080, 9,120ENE_PQI ,47.50,-65.36, 2 +PQI00081, 9,130ENE_PQI ,47.56,-65.13, 2 +PQI00082, 9,140ENE_PQI ,47.62,-64.89, 2 +PQI00083, 9,150ENE_PQI ,47.68,-64.66, 2 +PQI00084, 9,160ENE_PQI ,47.73,-64.43, 2 +PQI00085, 9,20E_PQI ,46.77,-67.60, 2 +PQI00086, 9,30E_PQI ,46.77,-67.36, 2 +PQI00087, 9,40E_PQI ,46.77,-67.12, 2 +PQI00088, 9,50E_PQI ,46.76,-66.87, 2 +PQI00089, 9,60E_PQI ,46.76,-66.63, 2 +PQI00090, 9,70E_PQI ,46.76,-66.39, 2 +PQI00091, 9,80E_PQI ,46.75,-66.15, 2 +PQI00092, 9,90E_PQI ,46.75,-65.90, 2 +PQI00093, 9,20ESE_PQI ,46.64,-67.64, 2 +PQI00094, 9,30ESE_PQI ,46.58,-67.42, 2 +PQI00095, 9,40ESE_PQI ,46.51,-67.20, 2 +PQI00096, 9,50ESE_PQI ,46.45,-66.97, 2 +PQI00097, 9,20SE_PQI ,46.53,-67.75, 2 +PQI00098, 9,30SE_PQI ,46.42,-67.58, 2 +PQI00099, 9,20SSE_PQI ,46.46,-67.90, 2 +PQI00100, 9,30SSE_PQI ,46.31,-67.81, 2 +PQI00101, 9,20S_PQI ,46.44,-68.09, 2 +PQI00102, 9,30S_PQI ,46.27,-68.09, 2 +PQI00103, 9,20SSW_PQI ,46.46,-68.28, 2 +PQI00104, 9,30SSW_PQI ,46.31,-68.37, 2 +PQI00105, 9,20SW_PQI ,46.53,-68.43, 2 +PQI00106, 9,30SW_PQI ,46.42,-68.60, 2 +PQI00107, 9,40SW_PQI ,46.30,-68.77, 2 +PQI00108, 9,50SW_PQI ,46.18,-68.94, 2 +PQI00109, 9,20WSW_PQI ,46.64,-68.54, 2 +PQI00110, 9,30WSW_PQI ,46.58,-68.76, 2 +PQI00111, 9,40WSW_PQI ,46.51,-68.98, 2 +PQI00112, 9,50WSW_PQI ,46.45,-69.21, 2 +PQI00113, 9,60WSW_PQI ,46.38,-69.43, 2 +PQI00114, 9,70WSW_PQI ,46.31,-69.65, 2 +PQI00115, 9,20W_PQI ,46.77,-68.58, 2 +PQI00116, 9,30W_PQI ,46.77,-68.82, 2 +PQI00117, 9,40W_PQI ,46.77,-69.06, 2 +PQI00118, 9,50W_PQI ,46.76,-69.31, 2 +PQI00119, 9,60W_PQI ,46.76,-69.55, 2 +PQI00120, 9,20WNW_PQI ,46.90,-68.54, 2 +PQI00121, 9,30WNW_PQI ,46.96,-68.77, 2 +PQI00122, 9,40WNW_PQI ,47.02,-68.99, 2 +PQI00123, 9,50WNW_PQI ,47.08,-69.22, 2 +PQI00124, 9,60WNW_PQI ,47.14,-69.45, 2 +PQI00125, 9,70WNW_PQI ,47.21,-69.68, 2 +PQI00126, 9,20NW_PQI ,47.01,-68.44, 2 +PQI00127, 9,30NW_PQI ,47.12,-68.61, 2 +PQI00128, 9,40NW_PQI ,47.24,-68.78, 2 +PQI00129, 9,50NW_PQI ,47.36,-68.96, 2 +PQI00130, 9,80NW_PQI ,47.70,-69.49, 2 +PQI00131, 9,90NW_PQI ,47.82,-69.67, 2 +PQI00132, 9,20NNW_PQI ,47.08,-68.28, 2 +PQI00133, 9,30NNW_PQI ,47.23,-68.37, 2 +PQI00134, 9,40NNW_PQI ,47.38,-68.47, 2 +PQI00135, 9,50NNW_PQI ,47.54,-68.56, 2 +PQI00136, 9,60NNW_PQI ,47.69,-68.66, 2 +PQI00137, 9,70NNW_PQI ,47.85,-68.75, 2 +PQI00138, 9,80NNW_PQI ,48.00,-68.85, 2 +PQI00139, 9,90NNW_PQI ,48.15,-68.95, 2 +PQI00140, 9,100NNW_PQI ,48.30,-69.05, 2 +PQI00141, 9,110NNW_PQI ,48.46,-69.15, 2 +PQI00142, 9,120NNW_PQI ,48.61,-69.25, 2 +PQI00143, 9,130NNW_PQI ,48.76,-69.35, 2 +PQI00144, 9,140NNW_PQI ,48.92,-69.45, 2 +PQI00145, 9,150NNW_PQI ,49.07,-69.55, 2 +PQI00146, 9,160NNW_PQI ,49.22,-69.65, 2 +PQI00147, 9,170NNW_PQI ,49.37,-69.75, 2 MLT00000, 9,MLT ,45.58,-68.52, 1 MLT00001, 9,20ESE_MLT ,45.45,-68.08, 2 MLT00002, 9,20SE_MLT ,45.34,-68.18, 2 @@ -600,79 +604,81 @@ ACK00092, 9,150SE_ACK ,39.49,-67.74, 2 ACK00093, 9,160SE_ACK ,39.37,-67.59, 2 ACK00094, 9,170SE_ACK ,39.25,-67.44, 2 ACK00095, 9,180SE_ACK ,39.13,-67.30, 2 -ACK00096, 9,230SE_ACK ,38.52,-66.57, 2 -ACK00097, 9,240SE_ACK ,38.40,-66.42, 2 -ACK00098, 9,250SE_ACK ,38.27,-66.28, 2 -ACK00099, 9,20SSE_ACK ,40.97,-69.86, 2 -ACK00100, 9,30SSE_ACK ,40.82,-69.78, 2 -ACK00101, 9,40SSE_ACK ,40.66,-69.69, 2 -ACK00102, 9,50SSE_ACK ,40.51,-69.61, 2 -ACK00103, 9,60SSE_ACK ,40.36,-69.53, 2 -ACK00104, 9,70SSE_ACK ,40.20,-69.45, 2 -ACK00105, 9,80SSE_ACK ,40.05,-69.36, 2 -ACK00106, 9,90SSE_ACK ,39.89,-69.28, 2 -ACK00107, 9,100SSE_ACK ,39.74,-69.20, 2 -ACK00108, 9,110SSE_ACK ,39.58,-69.12, 2 -ACK00109, 9,120SSE_ACK ,39.43,-69.04, 2 -ACK00110, 9,130SSE_ACK ,39.27,-68.96, 2 -ACK00111, 9,140SSE_ACK ,39.12,-68.88, 2 -ACK00112, 9,150SSE_ACK ,38.97,-68.80, 2 -ACK00113, 9,160SSE_ACK ,38.81,-68.72, 2 -ACK00114, 9,170SSE_ACK ,38.66,-68.64, 2 -ACK00115, 9,180SSE_ACK ,38.50,-68.56, 2 -ACK00116, 9,190SSE_ACK ,38.35,-68.49, 2 -ACK00117, 9,200SSE_ACK ,38.19,-68.41, 2 -ACK00118, 9,210SSE_ACK ,38.04,-68.33, 2 -ACK00119, 9,220SSE_ACK ,37.88,-68.25, 2 -ACK00120, 9,230SSE_ACK ,37.73,-68.18, 2 -ACK00121, 9,240SSE_ACK ,37.57,-68.10, 2 -ACK00122, 9,20S_ACK ,40.95,-70.03, 2 -ACK00123, 9,30S_ACK ,40.78,-70.03, 2 -ACK00124, 9,40S_ACK ,40.61,-70.03, 2 -ACK00125, 9,50S_ACK ,40.45,-70.03, 2 -ACK00126, 9,60S_ACK ,40.28,-70.03, 2 -ACK00127, 9,70S_ACK ,40.11,-70.03, 2 -ACK00128, 9,80S_ACK ,39.95,-70.03, 2 -ACK00129, 9,90S_ACK ,39.78,-70.03, 2 -ACK00130, 9,100S_ACK ,39.61,-70.03, 2 -ACK00131, 9,110S_ACK ,39.45,-70.03, 2 -ACK00132, 9,120S_ACK ,39.28,-70.03, 2 -ACK00133, 9,130S_ACK ,39.11,-70.03, 2 -ACK00134, 9,140S_ACK ,38.95,-70.03, 2 -ACK00135, 9,150S_ACK ,38.78,-70.03, 2 -ACK00136, 9,160S_ACK ,38.62,-70.03, 2 -ACK00137, 9,170S_ACK ,38.45,-70.03, 2 -ACK00138, 9,180S_ACK ,38.28,-70.03, 2 -ACK00139, 9,190S_ACK ,38.12,-70.03, 2 -ACK00140, 9,200S_ACK ,37.95,-70.03, 2 -ACK00141, 9,210S_ACK ,37.78,-70.03, 2 -ACK00142, 9,220S_ACK ,37.62,-70.03, 2 -ACK00143, 9,230S_ACK ,37.45,-70.03, 2 -ACK00144, 9,240S_ACK ,37.28,-70.03, 2 -ACK00145, 9,250S_ACK ,37.12,-70.03, 2 -ACK00146, 9,20SSW_ACK ,40.97,-70.20, 2 -ACK00147, 9,30SSW_ACK ,40.82,-70.28, 2 -ACK00148, 9,40SSW_ACK ,40.66,-70.37, 2 -ACK00149, 9,50SSW_ACK ,40.51,-70.45, 2 -ACK00150, 9,60SSW_ACK ,40.36,-70.53, 2 -ACK00151, 9,70SSW_ACK ,40.20,-70.61, 2 -ACK00152, 9,80SSW_ACK ,40.05,-70.70, 2 -ACK00153, 9,90SSW_ACK ,39.89,-70.78, 2 -ACK00154, 9,20SW_ACK ,41.04,-70.34, 2 -ACK00155, 9,30SW_ACK ,40.93,-70.50, 2 -ACK00156, 9,40SW_ACK ,40.81,-70.65, 2 -ACK00157, 9,50SW_ACK ,40.69,-70.81, 2 -ACK00158, 9,60SW_ACK ,40.57,-70.96, 2 -ACK00159, 9,20WSW_ACK ,41.15,-70.44, 2 -ACK00160, 9,30WSW_ACK ,41.09,-70.64, 2 -ACK00161, 9,40WSW_ACK ,41.02,-70.85, 2 -ACK00162, 9,20W_ACK ,41.28,-70.47, 2 -ACK00163, 9,30W_ACK ,41.28,-70.69, 2 -ACK00164, 9,20WNW_ACK ,41.41,-70.44, 2 -ACK00165, 9,20NW_ACK ,41.52,-70.34, 2 -ACK00166, 9,30NW_ACK ,41.63,-70.50, 2 -ACK00167, 9,20NNW_ACK ,41.59,-70.20, 2 -ACK00168, 9,30NNW_ACK ,41.74,-70.29, 2 +ACK00096, 9,190SE_ACK ,39.01,-67.15, 2 +ACK00097, 9,220SE_ACK ,38.64,-66.71, 2 +ACK00098, 9,230SE_ACK ,38.52,-66.57, 2 +ACK00099, 9,240SE_ACK ,38.40,-66.42, 2 +ACK00100, 9,250SE_ACK ,38.27,-66.28, 2 +ACK00101, 9,20SSE_ACK ,40.97,-69.86, 2 +ACK00102, 9,30SSE_ACK ,40.82,-69.78, 2 +ACK00103, 9,40SSE_ACK ,40.66,-69.69, 2 +ACK00104, 9,50SSE_ACK ,40.51,-69.61, 2 +ACK00105, 9,60SSE_ACK ,40.36,-69.53, 2 +ACK00106, 9,70SSE_ACK ,40.20,-69.45, 2 +ACK00107, 9,80SSE_ACK ,40.05,-69.36, 2 +ACK00108, 9,90SSE_ACK ,39.89,-69.28, 2 +ACK00109, 9,100SSE_ACK ,39.74,-69.20, 2 +ACK00110, 9,110SSE_ACK ,39.58,-69.12, 2 +ACK00111, 9,120SSE_ACK ,39.43,-69.04, 2 +ACK00112, 9,130SSE_ACK ,39.27,-68.96, 2 +ACK00113, 9,140SSE_ACK ,39.12,-68.88, 2 +ACK00114, 9,150SSE_ACK ,38.97,-68.80, 2 +ACK00115, 9,160SSE_ACK ,38.81,-68.72, 2 +ACK00116, 9,170SSE_ACK ,38.66,-68.64, 2 +ACK00117, 9,180SSE_ACK ,38.50,-68.56, 2 +ACK00118, 9,190SSE_ACK ,38.35,-68.49, 2 +ACK00119, 9,200SSE_ACK ,38.19,-68.41, 2 +ACK00120, 9,210SSE_ACK ,38.04,-68.33, 2 +ACK00121, 9,220SSE_ACK ,37.88,-68.25, 2 +ACK00122, 9,230SSE_ACK ,37.73,-68.18, 2 +ACK00123, 9,240SSE_ACK ,37.57,-68.10, 2 +ACK00124, 9,20S_ACK ,40.95,-70.03, 2 +ACK00125, 9,30S_ACK ,40.78,-70.03, 2 +ACK00126, 9,40S_ACK ,40.61,-70.03, 2 +ACK00127, 9,50S_ACK ,40.45,-70.03, 2 +ACK00128, 9,60S_ACK ,40.28,-70.03, 2 +ACK00129, 9,70S_ACK ,40.11,-70.03, 2 +ACK00130, 9,80S_ACK ,39.95,-70.03, 2 +ACK00131, 9,90S_ACK ,39.78,-70.03, 2 +ACK00132, 9,100S_ACK ,39.61,-70.03, 2 +ACK00133, 9,110S_ACK ,39.45,-70.03, 2 +ACK00134, 9,120S_ACK ,39.28,-70.03, 2 +ACK00135, 9,130S_ACK ,39.11,-70.03, 2 +ACK00136, 9,140S_ACK ,38.95,-70.03, 2 +ACK00137, 9,150S_ACK ,38.78,-70.03, 2 +ACK00138, 9,160S_ACK ,38.62,-70.03, 2 +ACK00139, 9,170S_ACK ,38.45,-70.03, 2 +ACK00140, 9,180S_ACK ,38.28,-70.03, 2 +ACK00141, 9,190S_ACK ,38.12,-70.03, 2 +ACK00142, 9,200S_ACK ,37.95,-70.03, 2 +ACK00143, 9,210S_ACK ,37.78,-70.03, 2 +ACK00144, 9,220S_ACK ,37.62,-70.03, 2 +ACK00145, 9,230S_ACK ,37.45,-70.03, 2 +ACK00146, 9,240S_ACK ,37.28,-70.03, 2 +ACK00147, 9,250S_ACK ,37.12,-70.03, 2 +ACK00148, 9,20SSW_ACK ,40.97,-70.20, 2 +ACK00149, 9,30SSW_ACK ,40.82,-70.28, 2 +ACK00150, 9,40SSW_ACK ,40.66,-70.37, 2 +ACK00151, 9,50SSW_ACK ,40.51,-70.45, 2 +ACK00152, 9,60SSW_ACK ,40.36,-70.53, 2 +ACK00153, 9,70SSW_ACK ,40.20,-70.61, 2 +ACK00154, 9,80SSW_ACK ,40.05,-70.70, 2 +ACK00155, 9,90SSW_ACK ,39.89,-70.78, 2 +ACK00156, 9,20SW_ACK ,41.04,-70.34, 2 +ACK00157, 9,30SW_ACK ,40.93,-70.50, 2 +ACK00158, 9,40SW_ACK ,40.81,-70.65, 2 +ACK00159, 9,50SW_ACK ,40.69,-70.81, 2 +ACK00160, 9,60SW_ACK ,40.57,-70.96, 2 +ACK00161, 9,20WSW_ACK ,41.15,-70.44, 2 +ACK00162, 9,30WSW_ACK ,41.09,-70.64, 2 +ACK00163, 9,40WSW_ACK ,41.02,-70.85, 2 +ACK00164, 9,20W_ACK ,41.28,-70.47, 2 +ACK00165, 9,30W_ACK ,41.28,-70.69, 2 +ACK00166, 9,20WNW_ACK ,41.41,-70.44, 2 +ACK00167, 9,20NW_ACK ,41.52,-70.34, 2 +ACK00168, 9,30NW_ACK ,41.63,-70.50, 2 +ACK00169, 9,20NNW_ACK ,41.59,-70.20, 2 +ACK00170, 9,30NNW_ACK ,41.74,-70.29, 2 ENE00000, 9,ENE ,43.43,-70.61, 1 ENE00001, 9,20N_ENE ,43.76,-70.61, 2 ENE00002, 9,30N_ENE ,43.93,-70.61, 2 @@ -1505,33 +1511,35 @@ SIE00031, 9,110SE_SIE ,37.79,-73.16, 2 SIE00032, 9,120SE_SIE ,37.67,-73.01, 2 SIE00033, 9,130SE_SIE ,37.55,-72.87, 2 SIE00034, 9,140SE_SIE ,37.43,-72.72, 2 -SIE00035, 9,190SE_SIE ,36.83,-72.00, 2 -SIE00036, 9,200SE_SIE ,36.71,-71.86, 2 -SIE00037, 9,20SSE_SIE ,38.79,-74.64, 2 -SIE00038, 9,30SSE_SIE ,38.64,-74.56, 2 -SIE00039, 9,40SSE_SIE ,38.48,-74.47, 2 -SIE00040, 9,50SSE_SIE ,38.33,-74.39, 2 -SIE00041, 9,60SSE_SIE ,38.18,-74.31, 2 -SIE00042, 9,20S_SIE ,38.77,-74.80, 2 -SIE00043, 9,30S_SIE ,38.60,-74.80, 2 -SIE00044, 9,40S_SIE ,38.43,-74.80, 2 -SIE00045, 9,20SSW_SIE ,38.79,-74.96, 2 -SIE00046, 9,30SSW_SIE ,38.64,-75.04, 2 -SIE00047, 9,20SW_SIE ,38.86,-75.10, 2 -SIE00048, 9,30SW_SIE ,38.75,-75.25, 2 -SIE00049, 9,20WSW_SIE ,38.97,-75.20, 2 -SIE00050, 9,30WSW_SIE ,38.91,-75.39, 2 -SIE00051, 9,40WSW_SIE ,38.84,-75.59, 2 -SIE00052, 9,20W_SIE ,39.10,-75.23, 2 -SIE00053, 9,30W_SIE ,39.10,-75.44, 2 -SIE00054, 9,40W_SIE ,39.10,-75.66, 2 -SIE00055, 9,50W_SIE ,39.10,-75.87, 2 -SIE00056, 9,20WNW_SIE ,39.23,-75.20, 2 -SIE00057, 9,30WNW_SIE ,39.29,-75.40, 2 -SIE00058, 9,40WNW_SIE ,39.35,-75.60, 2 -SIE00059, 9,20NW_SIE ,39.34,-75.10, 2 -SIE00060, 9,30NW_SIE ,39.45,-75.26, 2 -SIE00061, 9,20NNW_SIE ,39.41,-74.96, 2 +SIE00035, 9,150SE_SIE ,37.31,-72.58, 2 +SIE00036, 9,180SE_SIE ,36.95,-72.15, 2 +SIE00037, 9,190SE_SIE ,36.83,-72.00, 2 +SIE00038, 9,200SE_SIE ,36.71,-71.86, 2 +SIE00039, 9,20SSE_SIE ,38.79,-74.64, 2 +SIE00040, 9,30SSE_SIE ,38.64,-74.56, 2 +SIE00041, 9,40SSE_SIE ,38.48,-74.47, 2 +SIE00042, 9,50SSE_SIE ,38.33,-74.39, 2 +SIE00043, 9,60SSE_SIE ,38.18,-74.31, 2 +SIE00044, 9,20S_SIE ,38.77,-74.80, 2 +SIE00045, 9,30S_SIE ,38.60,-74.80, 2 +SIE00046, 9,40S_SIE ,38.43,-74.80, 2 +SIE00047, 9,20SSW_SIE ,38.79,-74.96, 2 +SIE00048, 9,30SSW_SIE ,38.64,-75.04, 2 +SIE00049, 9,20SW_SIE ,38.86,-75.10, 2 +SIE00050, 9,30SW_SIE ,38.75,-75.25, 2 +SIE00051, 9,20WSW_SIE ,38.97,-75.20, 2 +SIE00052, 9,30WSW_SIE ,38.91,-75.39, 2 +SIE00053, 9,40WSW_SIE ,38.84,-75.59, 2 +SIE00054, 9,20W_SIE ,39.10,-75.23, 2 +SIE00055, 9,30W_SIE ,39.10,-75.44, 2 +SIE00056, 9,40W_SIE ,39.10,-75.66, 2 +SIE00057, 9,50W_SIE ,39.10,-75.87, 2 +SIE00058, 9,20WNW_SIE ,39.23,-75.20, 2 +SIE00059, 9,30WNW_SIE ,39.29,-75.40, 2 +SIE00060, 9,40WNW_SIE ,39.35,-75.60, 2 +SIE00061, 9,20NW_SIE ,39.34,-75.10, 2 +SIE00062, 9,30NW_SIE ,39.45,-75.26, 2 +SIE00063, 9,20NNW_SIE ,39.41,-74.96, 2 HNK00000, 9,HNK ,42.06,-75.32, 1 HNK00001, 9,20N_HNK ,42.39,-75.32, 2 HNK00002, 9,30N_HNK ,42.56,-75.32, 2 @@ -1823,117 +1831,121 @@ ETX00039, 9,20NNW_ETX ,40.89,-75.85, 2 ETX00040, 9,30NNW_ETX ,41.04,-75.93, 2 ETX00041, 9,40NNW_ETX ,41.19,-76.02, 2 ECG00000, 9,ECG ,36.25,-76.18, 1 -ECG00001, 9,40ENE_ECG ,36.50,-75.41, 2 -ECG00002, 9,30E_ECG ,36.25,-75.56, 2 -ECG00003, 9,40E_ECG ,36.25,-75.35, 2 -ECG00004, 9,50E_ECG ,36.25,-75.15, 2 -ECG00005, 9,60E_ECG ,36.24,-74.94, 2 -ECG00006, 9,70E_ECG ,36.24,-74.73, 2 -ECG00007, 9,80E_ECG ,36.24,-74.53, 2 -ECG00008, 9,90E_ECG ,36.24,-74.32, 2 -ECG00009, 9,100E_ECG ,36.23,-74.12, 2 -ECG00010, 9,110E_ECG ,36.23,-73.91, 2 -ECG00011, 9,120E_ECG ,36.22,-73.70, 2 -ECG00012, 9,130E_ECG ,36.22,-73.50, 2 -ECG00013, 9,140E_ECG ,36.22,-73.29, 2 -ECG00014, 9,150E_ECG ,36.21,-73.08, 2 -ECG00015, 9,160E_ECG ,36.20,-72.88, 2 -ECG00016, 9,170E_ECG ,36.20,-72.67, 2 -ECG00017, 9,180E_ECG ,36.19,-72.46, 2 -ECG00018, 9,190E_ECG ,36.19,-72.26, 2 -ECG00019, 9,200E_ECG ,36.18,-72.05, 2 -ECG00020, 9,210E_ECG ,36.17,-71.85, 2 -ECG00021, 9,220E_ECG ,36.16,-71.64, 2 -ECG00022, 9,230E_ECG ,36.16,-71.43, 2 -ECG00023, 9,240E_ECG ,36.15,-71.23, 2 -ECG00024, 9,250E_ECG ,36.14,-71.02, 2 -ECG00025, 9,20ESE_ECG ,36.12,-75.80, 2 -ECG00026, 9,30ESE_ECG ,36.06,-75.61, 2 -ECG00027, 9,40ESE_ECG ,35.99,-75.42, 2 -ECG00028, 9,50ESE_ECG ,35.93,-75.23, 2 -ECG00029, 9,60ESE_ECG ,35.86,-75.04, 2 -ECG00030, 9,70ESE_ECG ,35.80,-74.85, 2 -ECG00031, 9,80ESE_ECG ,35.73,-74.66, 2 -ECG00032, 9,90ESE_ECG ,35.66,-74.48, 2 -ECG00033, 9,100ESE_ECG ,35.60,-74.29, 2 -ECG00034, 9,110ESE_ECG ,35.53,-74.10, 2 -ECG00035, 9,120ESE_ECG ,35.46,-73.91, 2 -ECG00036, 9,130ESE_ECG ,35.40,-73.73, 2 -ECG00037, 9,140ESE_ECG ,35.33,-73.54, 2 -ECG00038, 9,150ESE_ECG ,35.26,-73.35, 2 -ECG00039, 9,160ESE_ECG ,35.19,-73.17, 2 -ECG00040, 9,210ESE_ECG ,34.85,-72.24, 2 -ECG00041, 9,220ESE_ECG ,34.78,-72.06, 2 -ECG00042, 9,230ESE_ECG ,34.71,-71.87, 2 -ECG00043, 9,240ESE_ECG ,34.64,-71.69, 2 -ECG00044, 9,20SE_ECG ,36.01,-75.89, 2 -ECG00045, 9,30SE_ECG ,35.90,-75.74, 2 -ECG00046, 9,40SE_ECG ,35.78,-75.60, 2 -ECG00047, 9,50SE_ECG ,35.66,-75.46, 2 -ECG00048, 9,60SE_ECG ,35.54,-75.31, 2 -ECG00049, 9,70SE_ECG ,35.42,-75.17, 2 -ECG00050, 9,80SE_ECG ,35.30,-75.03, 2 -ECG00051, 9,90SE_ECG ,35.18,-74.88, 2 -ECG00052, 9,100SE_ECG ,35.06,-74.74, 2 -ECG00053, 9,110SE_ECG ,34.94,-74.60, 2 -ECG00054, 9,120SE_ECG ,34.82,-74.46, 2 -ECG00055, 9,130SE_ECG ,34.70,-74.32, 2 -ECG00056, 9,140SE_ECG ,34.58,-74.18, 2 -ECG00057, 9,150SE_ECG ,34.46,-74.04, 2 -ECG00058, 9,160SE_ECG ,34.34,-73.90, 2 -ECG00059, 9,170SE_ECG ,34.22,-73.76, 2 -ECG00060, 9,180SE_ECG ,34.10,-73.62, 2 -ECG00061, 9,190SE_ECG ,33.98,-73.48, 2 -ECG00062, 9,200SE_ECG ,33.86,-73.34, 2 -ECG00063, 9,210SE_ECG ,33.74,-73.21, 2 -ECG00064, 9,220SE_ECG ,33.62,-73.07, 2 -ECG00065, 9,230SE_ECG ,33.50,-72.93, 2 -ECG00066, 9,240SE_ECG ,33.38,-72.80, 2 -ECG00067, 9,250SE_ECG ,33.25,-72.66, 2 -ECG00068, 9,20SSE_ECG ,35.94,-76.02, 2 -ECG00069, 9,30SSE_ECG ,35.79,-75.94, 2 -ECG00070, 9,40SSE_ECG ,35.63,-75.87, 2 -ECG00071, 9,50SSE_ECG ,35.48,-75.79, 2 -ECG00072, 9,60SSE_ECG ,35.33,-75.71, 2 -ECG00073, 9,70SSE_ECG ,35.17,-75.63, 2 -ECG00074, 9,80SSE_ECG ,35.02,-75.56, 2 -ECG00075, 9,90SSE_ECG ,34.86,-75.48, 2 -ECG00076, 9,100SSE_ECG ,34.71,-75.40, 2 -ECG00077, 9,110SSE_ECG ,34.55,-75.33, 2 -ECG00078, 9,120SSE_ECG ,34.40,-75.25, 2 -ECG00079, 9,130SSE_ECG ,34.25,-75.18, 2 -ECG00080, 9,20S_ECG ,35.92,-76.18, 2 -ECG00081, 9,30S_ECG ,35.75,-76.18, 2 -ECG00082, 9,40S_ECG ,35.58,-76.18, 2 -ECG00083, 9,50S_ECG ,35.42,-76.18, 2 -ECG00084, 9,60S_ECG ,35.25,-76.18, 2 -ECG00085, 9,70S_ECG ,35.08,-76.18, 2 -ECG00086, 9,80S_ECG ,34.92,-76.18, 2 -ECG00087, 9,90S_ECG ,34.75,-76.18, 2 -ECG00088, 9,20SSW_ECG ,35.94,-76.34, 2 -ECG00089, 9,30SSW_ECG ,35.79,-76.42, 2 -ECG00090, 9,40SSW_ECG ,35.63,-76.49, 2 -ECG00091, 9,50SSW_ECG ,35.48,-76.57, 2 -ECG00092, 9,60SSW_ECG ,35.33,-76.65, 2 -ECG00093, 9,70SSW_ECG ,35.17,-76.73, 2 -ECG00094, 9,20SW_ECG ,36.01,-76.47, 2 -ECG00095, 9,30SW_ECG ,35.90,-76.62, 2 -ECG00096, 9,40SW_ECG ,35.78,-76.76, 2 -ECG00097, 9,50SW_ECG ,35.66,-76.90, 2 -ECG00098, 9,60SW_ECG ,35.54,-77.05, 2 -ECG00099, 9,70SW_ECG ,35.42,-77.19, 2 -ECG00100, 9,20WSW_ECG ,36.12,-76.56, 2 -ECG00101, 9,30WSW_ECG ,36.06,-76.75, 2 -ECG00102, 9,40WSW_ECG ,35.99,-76.94, 2 -ECG00103, 9,50WSW_ECG ,35.93,-77.13, 2 -ECG00104, 9,60WSW_ECG ,35.86,-77.32, 2 -ECG00105, 9,20W_ECG ,36.25,-76.59, 2 -ECG00106, 9,30W_ECG ,36.25,-76.80, 2 -ECG00107, 9,40W_ECG ,36.25,-77.01, 2 -ECG00108, 9,50W_ECG ,36.25,-77.21, 2 -ECG00109, 9,60W_ECG ,36.24,-77.42, 2 -ECG00110, 9,20WNW_ECG ,36.38,-76.56, 2 -ECG00111, 9,30WNW_ECG ,36.44,-76.75, 2 +ECG00001, 9,30ENE_ECG ,36.44,-75.61, 2 +ECG00002, 9,40ENE_ECG ,36.50,-75.41, 2 +ECG00003, 9,20E_ECG ,36.25,-75.77, 2 +ECG00004, 9,30E_ECG ,36.25,-75.56, 2 +ECG00005, 9,40E_ECG ,36.25,-75.35, 2 +ECG00006, 9,50E_ECG ,36.25,-75.15, 2 +ECG00007, 9,60E_ECG ,36.24,-74.94, 2 +ECG00008, 9,70E_ECG ,36.24,-74.73, 2 +ECG00009, 9,80E_ECG ,36.24,-74.53, 2 +ECG00010, 9,90E_ECG ,36.24,-74.32, 2 +ECG00011, 9,100E_ECG ,36.23,-74.12, 2 +ECG00012, 9,110E_ECG ,36.23,-73.91, 2 +ECG00013, 9,120E_ECG ,36.22,-73.70, 2 +ECG00014, 9,130E_ECG ,36.22,-73.50, 2 +ECG00015, 9,140E_ECG ,36.22,-73.29, 2 +ECG00016, 9,150E_ECG ,36.21,-73.08, 2 +ECG00017, 9,160E_ECG ,36.20,-72.88, 2 +ECG00018, 9,170E_ECG ,36.20,-72.67, 2 +ECG00019, 9,180E_ECG ,36.19,-72.46, 2 +ECG00020, 9,190E_ECG ,36.19,-72.26, 2 +ECG00021, 9,200E_ECG ,36.18,-72.05, 2 +ECG00022, 9,210E_ECG ,36.17,-71.85, 2 +ECG00023, 9,220E_ECG ,36.16,-71.64, 2 +ECG00024, 9,230E_ECG ,36.16,-71.43, 2 +ECG00025, 9,240E_ECG ,36.15,-71.23, 2 +ECG00026, 9,250E_ECG ,36.14,-71.02, 2 +ECG00027, 9,20ESE_ECG ,36.12,-75.80, 2 +ECG00028, 9,30ESE_ECG ,36.06,-75.61, 2 +ECG00029, 9,40ESE_ECG ,35.99,-75.42, 2 +ECG00030, 9,50ESE_ECG ,35.93,-75.23, 2 +ECG00031, 9,60ESE_ECG ,35.86,-75.04, 2 +ECG00032, 9,70ESE_ECG ,35.80,-74.85, 2 +ECG00033, 9,80ESE_ECG ,35.73,-74.66, 2 +ECG00034, 9,90ESE_ECG ,35.66,-74.48, 2 +ECG00035, 9,100ESE_ECG ,35.60,-74.29, 2 +ECG00036, 9,110ESE_ECG ,35.53,-74.10, 2 +ECG00037, 9,120ESE_ECG ,35.46,-73.91, 2 +ECG00038, 9,130ESE_ECG ,35.40,-73.73, 2 +ECG00039, 9,140ESE_ECG ,35.33,-73.54, 2 +ECG00040, 9,150ESE_ECG ,35.26,-73.35, 2 +ECG00041, 9,160ESE_ECG ,35.19,-73.17, 2 +ECG00042, 9,170ESE_ECG ,35.12,-72.98, 2 +ECG00043, 9,200ESE_ECG ,34.92,-72.43, 2 +ECG00044, 9,210ESE_ECG ,34.85,-72.24, 2 +ECG00045, 9,220ESE_ECG ,34.78,-72.06, 2 +ECG00046, 9,230ESE_ECG ,34.71,-71.87, 2 +ECG00047, 9,240ESE_ECG ,34.64,-71.69, 2 +ECG00048, 9,20SE_ECG ,36.01,-75.89, 2 +ECG00049, 9,30SE_ECG ,35.90,-75.74, 2 +ECG00050, 9,40SE_ECG ,35.78,-75.60, 2 +ECG00051, 9,50SE_ECG ,35.66,-75.46, 2 +ECG00052, 9,60SE_ECG ,35.54,-75.31, 2 +ECG00053, 9,70SE_ECG ,35.42,-75.17, 2 +ECG00054, 9,80SE_ECG ,35.30,-75.03, 2 +ECG00055, 9,90SE_ECG ,35.18,-74.88, 2 +ECG00056, 9,100SE_ECG ,35.06,-74.74, 2 +ECG00057, 9,110SE_ECG ,34.94,-74.60, 2 +ECG00058, 9,120SE_ECG ,34.82,-74.46, 2 +ECG00059, 9,130SE_ECG ,34.70,-74.32, 2 +ECG00060, 9,140SE_ECG ,34.58,-74.18, 2 +ECG00061, 9,150SE_ECG ,34.46,-74.04, 2 +ECG00062, 9,160SE_ECG ,34.34,-73.90, 2 +ECG00063, 9,170SE_ECG ,34.22,-73.76, 2 +ECG00064, 9,180SE_ECG ,34.10,-73.62, 2 +ECG00065, 9,190SE_ECG ,33.98,-73.48, 2 +ECG00066, 9,200SE_ECG ,33.86,-73.34, 2 +ECG00067, 9,210SE_ECG ,33.74,-73.21, 2 +ECG00068, 9,220SE_ECG ,33.62,-73.07, 2 +ECG00069, 9,230SE_ECG ,33.50,-72.93, 2 +ECG00070, 9,240SE_ECG ,33.38,-72.80, 2 +ECG00071, 9,250SE_ECG ,33.25,-72.66, 2 +ECG00072, 9,20SSE_ECG ,35.94,-76.02, 2 +ECG00073, 9,30SSE_ECG ,35.79,-75.94, 2 +ECG00074, 9,40SSE_ECG ,35.63,-75.87, 2 +ECG00075, 9,50SSE_ECG ,35.48,-75.79, 2 +ECG00076, 9,60SSE_ECG ,35.33,-75.71, 2 +ECG00077, 9,70SSE_ECG ,35.17,-75.63, 2 +ECG00078, 9,80SSE_ECG ,35.02,-75.56, 2 +ECG00079, 9,90SSE_ECG ,34.86,-75.48, 2 +ECG00080, 9,100SSE_ECG ,34.71,-75.40, 2 +ECG00081, 9,110SSE_ECG ,34.55,-75.33, 2 +ECG00082, 9,120SSE_ECG ,34.40,-75.25, 2 +ECG00083, 9,130SSE_ECG ,34.25,-75.18, 2 +ECG00084, 9,20S_ECG ,35.92,-76.18, 2 +ECG00085, 9,30S_ECG ,35.75,-76.18, 2 +ECG00086, 9,40S_ECG ,35.58,-76.18, 2 +ECG00087, 9,50S_ECG ,35.42,-76.18, 2 +ECG00088, 9,60S_ECG ,35.25,-76.18, 2 +ECG00089, 9,70S_ECG ,35.08,-76.18, 2 +ECG00090, 9,80S_ECG ,34.92,-76.18, 2 +ECG00091, 9,90S_ECG ,34.75,-76.18, 2 +ECG00092, 9,20SSW_ECG ,35.94,-76.34, 2 +ECG00093, 9,30SSW_ECG ,35.79,-76.42, 2 +ECG00094, 9,40SSW_ECG ,35.63,-76.49, 2 +ECG00095, 9,50SSW_ECG ,35.48,-76.57, 2 +ECG00096, 9,60SSW_ECG ,35.33,-76.65, 2 +ECG00097, 9,70SSW_ECG ,35.17,-76.73, 2 +ECG00098, 9,20SW_ECG ,36.01,-76.47, 2 +ECG00099, 9,30SW_ECG ,35.90,-76.62, 2 +ECG00100, 9,40SW_ECG ,35.78,-76.76, 2 +ECG00101, 9,50SW_ECG ,35.66,-76.90, 2 +ECG00102, 9,60SW_ECG ,35.54,-77.05, 2 +ECG00103, 9,70SW_ECG ,35.42,-77.19, 2 +ECG00104, 9,20WSW_ECG ,36.12,-76.56, 2 +ECG00105, 9,30WSW_ECG ,36.06,-76.75, 2 +ECG00106, 9,40WSW_ECG ,35.99,-76.94, 2 +ECG00107, 9,50WSW_ECG ,35.93,-77.13, 2 +ECG00108, 9,60WSW_ECG ,35.86,-77.32, 2 +ECG00109, 9,20W_ECG ,36.25,-76.59, 2 +ECG00110, 9,30W_ECG ,36.25,-76.80, 2 +ECG00111, 9,40W_ECG ,36.25,-77.01, 2 +ECG00112, 9,50W_ECG ,36.25,-77.21, 2 +ECG00113, 9,60W_ECG ,36.24,-77.42, 2 +ECG00114, 9,20WNW_ECG ,36.38,-76.56, 2 +ECG00115, 9,30WNW_ECG ,36.44,-76.75, 2 SYR00000, 9,SYR ,43.16,-76.20, 1 SYR00001, 9,20N_SYR ,43.49,-76.20, 2 SYR00002, 9,30N_SYR ,43.66,-76.20, 2 @@ -2032,20 +2044,23 @@ ORF00021, 9,90E_ORF ,36.88,-74.33, 2 ORF00022, 9,100E_ORF ,36.87,-74.12, 2 ORF00023, 9,110E_ORF ,36.87,-73.91, 2 ORF00024, 9,120E_ORF ,36.86,-73.70, 2 -ORF00025, 9,40ESE_ORF ,36.63,-75.43, 2 -ORF00026, 9,50ESE_ORF ,36.57,-75.24, 2 -ORF00027, 9,20SSW_ORF ,36.58,-76.36, 2 -ORF00028, 9,20SW_ORF ,36.65,-76.49, 2 -ORF00029, 9,30SW_ORF ,36.54,-76.64, 2 -ORF00030, 9,20WSW_ORF ,36.76,-76.58, 2 -ORF00031, 9,30WSW_ORF ,36.70,-76.78, 2 -ORF00032, 9,40WSW_ORF ,36.63,-76.97, 2 -ORF00033, 9,20W_ORF ,36.89,-76.62, 2 -ORF00034, 9,30W_ORF ,36.89,-76.82, 2 -ORF00035, 9,20WNW_ORF ,37.02,-76.59, 2 -ORF00036, 9,20NW_ORF ,37.13,-76.50, 2 -ORF00037, 9,20NNW_ORF ,37.20,-76.36, 2 -ORF00038, 9,30NNW_ORF ,37.35,-76.44, 2 +ORF00025, 9,20ESE_ORF ,36.76,-75.82, 2 +ORF00026, 9,30ESE_ORF ,36.70,-75.62, 2 +ORF00027, 9,40ESE_ORF ,36.63,-75.43, 2 +ORF00028, 9,50ESE_ORF ,36.57,-75.24, 2 +ORF00029, 9,20S_ORF ,36.56,-76.20, 2 +ORF00030, 9,20SSW_ORF ,36.58,-76.36, 2 +ORF00031, 9,20SW_ORF ,36.65,-76.49, 2 +ORF00032, 9,30SW_ORF ,36.54,-76.64, 2 +ORF00033, 9,20WSW_ORF ,36.76,-76.58, 2 +ORF00034, 9,30WSW_ORF ,36.70,-76.78, 2 +ORF00035, 9,40WSW_ORF ,36.63,-76.97, 2 +ORF00036, 9,20W_ORF ,36.89,-76.62, 2 +ORF00037, 9,30W_ORF ,36.89,-76.82, 2 +ORF00038, 9,20WNW_ORF ,37.02,-76.59, 2 +ORF00039, 9,20NW_ORF ,37.13,-76.50, 2 +ORF00040, 9,20NNW_ORF ,37.20,-76.36, 2 +ORF00041, 9,30NNW_ORF ,37.35,-76.44, 2 EMI00000, 9,EMI ,39.50,-76.98, 1 EMI00001, 9,20NE_EMI ,39.74,-76.67, 2 EMI00002, 9,20ENE_EMI ,39.63,-76.58, 2 @@ -2305,53 +2320,54 @@ ILM00083, 9,80SSE_ILM ,33.12,-77.26, 2 ILM00084, 9,90SSE_ILM ,32.96,-77.19, 2 ILM00085, 9,100SSE_ILM ,32.81,-77.11, 2 ILM00086, 9,110SSE_ILM ,32.65,-77.04, 2 -ILM00087, 9,150SSE_ILM ,32.04,-76.74, 2 -ILM00088, 9,160SSE_ILM ,31.88,-76.67, 2 -ILM00089, 9,170SSE_ILM ,31.73,-76.60, 2 -ILM00090, 9,180SSE_ILM ,31.57,-76.52, 2 -ILM00091, 9,190SSE_ILM ,31.42,-76.45, 2 -ILM00092, 9,200SSE_ILM ,31.26,-76.38, 2 -ILM00093, 9,210SSE_ILM ,31.11,-76.31, 2 -ILM00094, 9,220SSE_ILM ,30.95,-76.24, 2 -ILM00095, 9,230SSE_ILM ,30.80,-76.16, 2 -ILM00096, 9,240SSE_ILM ,30.64,-76.09, 2 -ILM00097, 9,20S_ILM ,34.02,-77.87, 2 -ILM00098, 9,30S_ILM ,33.85,-77.87, 2 -ILM00099, 9,40S_ILM ,33.68,-77.87, 2 -ILM00100, 9,50S_ILM ,33.52,-77.87, 2 -ILM00101, 9,60S_ILM ,33.35,-77.87, 2 -ILM00102, 9,70S_ILM ,33.18,-77.87, 2 -ILM00103, 9,80S_ILM ,33.02,-77.87, 2 -ILM00104, 9,90S_ILM ,32.85,-77.87, 2 -ILM00105, 9,100S_ILM ,32.68,-77.87, 2 -ILM00106, 9,110S_ILM ,32.52,-77.87, 2 -ILM00107, 9,20SSW_ILM ,34.04,-78.02, 2 -ILM00108, 9,30SSW_ILM ,33.89,-78.10, 2 -ILM00109, 9,40SSW_ILM ,33.73,-78.18, 2 -ILM00110, 9,50SSW_ILM ,33.58,-78.25, 2 -ILM00111, 9,60SSW_ILM ,33.43,-78.33, 2 -ILM00112, 9,70SSW_ILM ,33.27,-78.40, 2 -ILM00113, 9,80SSW_ILM ,33.12,-78.48, 2 -ILM00114, 9,20SW_ILM ,34.11,-78.15, 2 -ILM00115, 9,30SW_ILM ,34.00,-78.30, 2 -ILM00116, 9,40SW_ILM ,33.88,-78.44, 2 -ILM00117, 9,50SW_ILM ,33.76,-78.58, 2 -ILM00118, 9,20WSW_ILM ,34.22,-78.24, 2 -ILM00119, 9,30WSW_ILM ,34.16,-78.43, 2 -ILM00120, 9,40WSW_ILM ,34.09,-78.61, 2 -ILM00121, 9,20W_ILM ,34.35,-78.27, 2 -ILM00122, 9,30W_ILM ,34.35,-78.48, 2 -ILM00123, 9,40W_ILM ,34.35,-78.68, 2 -ILM00124, 9,20WNW_ILM ,34.48,-78.24, 2 -ILM00125, 9,30WNW_ILM ,34.54,-78.43, 2 -ILM00126, 9,40WNW_ILM ,34.60,-78.62, 2 -ILM00127, 9,50WNW_ILM ,34.67,-78.81, 2 -ILM00128, 9,20NW_ILM ,34.59,-78.16, 2 -ILM00129, 9,30NW_ILM ,34.70,-78.30, 2 -ILM00130, 9,40NW_ILM ,34.82,-78.44, 2 -ILM00131, 9,20NNW_ILM ,34.66,-78.02, 2 -ILM00132, 9,30NNW_ILM ,34.81,-78.10, 2 -ILM00133, 9,40NNW_ILM ,34.97,-78.18, 2 +ILM00087, 9,140SSE_ILM ,32.19,-76.82, 2 +ILM00088, 9,150SSE_ILM ,32.04,-76.74, 2 +ILM00089, 9,160SSE_ILM ,31.88,-76.67, 2 +ILM00090, 9,170SSE_ILM ,31.73,-76.60, 2 +ILM00091, 9,180SSE_ILM ,31.57,-76.52, 2 +ILM00092, 9,190SSE_ILM ,31.42,-76.45, 2 +ILM00093, 9,200SSE_ILM ,31.26,-76.38, 2 +ILM00094, 9,210SSE_ILM ,31.11,-76.31, 2 +ILM00095, 9,220SSE_ILM ,30.95,-76.24, 2 +ILM00096, 9,230SSE_ILM ,30.80,-76.16, 2 +ILM00097, 9,240SSE_ILM ,30.64,-76.09, 2 +ILM00098, 9,20S_ILM ,34.02,-77.87, 2 +ILM00099, 9,30S_ILM ,33.85,-77.87, 2 +ILM00100, 9,40S_ILM ,33.68,-77.87, 2 +ILM00101, 9,50S_ILM ,33.52,-77.87, 2 +ILM00102, 9,60S_ILM ,33.35,-77.87, 2 +ILM00103, 9,70S_ILM ,33.18,-77.87, 2 +ILM00104, 9,80S_ILM ,33.02,-77.87, 2 +ILM00105, 9,90S_ILM ,32.85,-77.87, 2 +ILM00106, 9,100S_ILM ,32.68,-77.87, 2 +ILM00107, 9,110S_ILM ,32.52,-77.87, 2 +ILM00108, 9,20SSW_ILM ,34.04,-78.02, 2 +ILM00109, 9,30SSW_ILM ,33.89,-78.10, 2 +ILM00110, 9,40SSW_ILM ,33.73,-78.18, 2 +ILM00111, 9,50SSW_ILM ,33.58,-78.25, 2 +ILM00112, 9,60SSW_ILM ,33.43,-78.33, 2 +ILM00113, 9,70SSW_ILM ,33.27,-78.40, 2 +ILM00114, 9,80SSW_ILM ,33.12,-78.48, 2 +ILM00115, 9,20SW_ILM ,34.11,-78.15, 2 +ILM00116, 9,30SW_ILM ,34.00,-78.30, 2 +ILM00117, 9,40SW_ILM ,33.88,-78.44, 2 +ILM00118, 9,50SW_ILM ,33.76,-78.58, 2 +ILM00119, 9,20WSW_ILM ,34.22,-78.24, 2 +ILM00120, 9,30WSW_ILM ,34.16,-78.43, 2 +ILM00121, 9,40WSW_ILM ,34.09,-78.61, 2 +ILM00122, 9,20W_ILM ,34.35,-78.27, 2 +ILM00123, 9,30W_ILM ,34.35,-78.48, 2 +ILM00124, 9,40W_ILM ,34.35,-78.68, 2 +ILM00125, 9,20WNW_ILM ,34.48,-78.24, 2 +ILM00126, 9,30WNW_ILM ,34.54,-78.43, 2 +ILM00127, 9,40WNW_ILM ,34.60,-78.62, 2 +ILM00128, 9,50WNW_ILM ,34.67,-78.81, 2 +ILM00129, 9,20NW_ILM ,34.59,-78.16, 2 +ILM00130, 9,30NW_ILM ,34.70,-78.30, 2 +ILM00131, 9,40NW_ILM ,34.82,-78.44, 2 +ILM00132, 9,20NNW_ILM ,34.66,-78.02, 2 +ILM00133, 9,30NNW_ILM ,34.81,-78.10, 2 +ILM00134, 9,40NNW_ILM ,34.97,-78.18, 2 SLT00000, 9,SLT ,41.51,-77.97, 1 SLT00001, 9,20N_SLT ,41.84,-77.97, 2 SLT00002, 9,30N_SLT ,42.01,-77.97, 2 @@ -2914,79 +2930,82 @@ PBI00011, 9,20ENE_PBI ,26.81,-79.75, 2 PBI00012, 9,30ENE_PBI ,26.87,-79.57, 2 PBI00013, 9,40ENE_PBI ,26.93,-79.40, 2 PBI00014, 9,50ENE_PBI ,27.00,-79.23, 2 -PBI00015, 9,100ENE_PBI ,27.31,-78.36, 2 -PBI00016, 9,110ENE_PBI ,27.37,-78.18, 2 -PBI00017, 9,120ENE_PBI ,27.43,-78.01, 2 -PBI00018, 9,130ENE_PBI ,27.49,-77.84, 2 -PBI00019, 9,140ENE_PBI ,27.55,-77.66, 2 -PBI00020, 9,150ENE_PBI ,27.61,-77.49, 2 -PBI00021, 9,160ENE_PBI ,27.67,-77.31, 2 -PBI00022, 9,170ENE_PBI ,27.73,-77.13, 2 -PBI00023, 9,180ENE_PBI ,27.79,-76.96, 2 -PBI00024, 9,190ENE_PBI ,27.85,-76.78, 2 -PBI00025, 9,200ENE_PBI ,27.91,-76.61, 2 -PBI00026, 9,210ENE_PBI ,27.97,-76.43, 2 -PBI00027, 9,220ENE_PBI ,28.03,-76.25, 2 -PBI00028, 9,230ENE_PBI ,28.09,-76.08, 2 -PBI00029, 9,240ENE_PBI ,28.15,-75.90, 2 -PBI00030, 9,20E_PBI ,26.68,-79.72, 2 -PBI00031, 9,30E_PBI ,26.68,-79.53, 2 -PBI00032, 9,40E_PBI ,26.68,-79.34, 2 -PBI00033, 9,50E_PBI ,26.68,-79.16, 2 -PBI00034, 9,60E_PBI ,26.68,-78.97, 2 -PBI00035, 9,70E_PBI ,26.67,-78.79, 2 -PBI00036, 9,80E_PBI ,26.67,-78.60, 2 -PBI00037, 9,90E_PBI ,26.67,-78.41, 2 -PBI00038, 9,100E_PBI ,26.67,-78.23, 2 -PBI00039, 9,110E_PBI ,26.67,-78.04, 2 -PBI00040, 9,120E_PBI ,26.66,-77.85, 2 -PBI00041, 9,130E_PBI ,26.66,-77.67, 2 -PBI00042, 9,140E_PBI ,26.66,-77.48, 2 -PBI00043, 9,150E_PBI ,26.65,-77.29, 2 -PBI00044, 9,160E_PBI ,26.65,-77.11, 2 -PBI00045, 9,210E_PBI ,26.63,-76.18, 2 -PBI00046, 9,220E_PBI ,26.62,-75.99, 2 -PBI00047, 9,230E_PBI ,26.62,-75.80, 2 -PBI00048, 9,240E_PBI ,26.61,-75.62, 2 -PBI00049, 9,250E_PBI ,26.60,-75.43, 2 -PBI00050, 9,20ESE_PBI ,26.55,-79.75, 2 -PBI00051, 9,30ESE_PBI ,26.49,-79.57, 2 -PBI00052, 9,40ESE_PBI ,26.42,-79.40, 2 -PBI00053, 9,50ESE_PBI ,26.36,-79.23, 2 -PBI00054, 9,60ESE_PBI ,26.29,-79.06, 2 -PBI00055, 9,70ESE_PBI ,26.23,-78.89, 2 -PBI00056, 9,80ESE_PBI ,26.16,-78.72, 2 -PBI00057, 9,90ESE_PBI ,26.10,-78.55, 2 -PBI00058, 9,100ESE_PBI ,26.03,-78.38, 2 -PBI00059, 9,110ESE_PBI ,25.97,-78.21, 2 -PBI00060, 9,120ESE_PBI ,25.90,-78.04, 2 -PBI00061, 9,130ESE_PBI ,25.83,-77.87, 2 -PBI00062, 9,140ESE_PBI ,25.77,-77.70, 2 -PBI00063, 9,20SE_PBI ,26.44,-79.83, 2 -PBI00064, 9,30SE_PBI ,26.33,-79.70, 2 -PBI00065, 9,40SE_PBI ,26.21,-79.56, 2 -PBI00066, 9,50SE_PBI ,26.09,-79.43, 2 -PBI00067, 9,20SSE_PBI ,26.37,-79.95, 2 -PBI00068, 9,30SSE_PBI ,26.22,-79.88, 2 -PBI00069, 9,20S_PBI ,26.35,-80.09, 2 -PBI00070, 9,30S_PBI ,26.18,-80.09, 2 -PBI00071, 9,20SSW_PBI ,26.37,-80.23, 2 -PBI00072, 9,30SSW_PBI ,26.22,-80.30, 2 -PBI00073, 9,20SW_PBI ,26.44,-80.35, 2 -PBI00074, 9,30SW_PBI ,26.33,-80.48, 2 -PBI00075, 9,20WSW_PBI ,26.55,-80.43, 2 -PBI00076, 9,30WSW_PBI ,26.49,-80.61, 2 -PBI00077, 9,40WSW_PBI ,26.42,-80.78, 2 -PBI00078, 9,50WSW_PBI ,26.36,-80.95, 2 -PBI00079, 9,20W_PBI ,26.68,-80.46, 2 -PBI00080, 9,30W_PBI ,26.68,-80.65, 2 -PBI00081, 9,40W_PBI ,26.68,-80.84, 2 -PBI00082, 9,20WNW_PBI ,26.81,-80.43, 2 -PBI00083, 9,30WNW_PBI ,26.87,-80.61, 2 -PBI00084, 9,40WNW_PBI ,26.93,-80.78, 2 -PBI00085, 9,20NW_PBI ,26.92,-80.35, 2 -PBI00086, 9,30NW_PBI ,27.03,-80.49, 2 -PBI00087, 9,20NNW_PBI ,26.99,-80.23, 2 +PBI00015, 9,60ENE_PBI ,27.06,-79.05, 2 +PBI00016, 9,90ENE_PBI ,27.25,-78.53, 2 +PBI00017, 9,100ENE_PBI ,27.31,-78.36, 2 +PBI00018, 9,110ENE_PBI ,27.37,-78.18, 2 +PBI00019, 9,120ENE_PBI ,27.43,-78.01, 2 +PBI00020, 9,130ENE_PBI ,27.49,-77.84, 2 +PBI00021, 9,140ENE_PBI ,27.55,-77.66, 2 +PBI00022, 9,150ENE_PBI ,27.61,-77.49, 2 +PBI00023, 9,160ENE_PBI ,27.67,-77.31, 2 +PBI00024, 9,170ENE_PBI ,27.73,-77.13, 2 +PBI00025, 9,180ENE_PBI ,27.79,-76.96, 2 +PBI00026, 9,190ENE_PBI ,27.85,-76.78, 2 +PBI00027, 9,200ENE_PBI ,27.91,-76.61, 2 +PBI00028, 9,210ENE_PBI ,27.97,-76.43, 2 +PBI00029, 9,220ENE_PBI ,28.03,-76.25, 2 +PBI00030, 9,230ENE_PBI ,28.09,-76.08, 2 +PBI00031, 9,240ENE_PBI ,28.15,-75.90, 2 +PBI00032, 9,20E_PBI ,26.68,-79.72, 2 +PBI00033, 9,30E_PBI ,26.68,-79.53, 2 +PBI00034, 9,40E_PBI ,26.68,-79.34, 2 +PBI00035, 9,50E_PBI ,26.68,-79.16, 2 +PBI00036, 9,60E_PBI ,26.68,-78.97, 2 +PBI00037, 9,70E_PBI ,26.67,-78.79, 2 +PBI00038, 9,80E_PBI ,26.67,-78.60, 2 +PBI00039, 9,90E_PBI ,26.67,-78.41, 2 +PBI00040, 9,100E_PBI ,26.67,-78.23, 2 +PBI00041, 9,110E_PBI ,26.67,-78.04, 2 +PBI00042, 9,120E_PBI ,26.66,-77.85, 2 +PBI00043, 9,130E_PBI ,26.66,-77.67, 2 +PBI00044, 9,140E_PBI ,26.66,-77.48, 2 +PBI00045, 9,150E_PBI ,26.65,-77.29, 2 +PBI00046, 9,160E_PBI ,26.65,-77.11, 2 +PBI00047, 9,170E_PBI ,26.64,-76.92, 2 +PBI00048, 9,200E_PBI ,26.63,-76.36, 2 +PBI00049, 9,210E_PBI ,26.63,-76.18, 2 +PBI00050, 9,220E_PBI ,26.62,-75.99, 2 +PBI00051, 9,230E_PBI ,26.62,-75.80, 2 +PBI00052, 9,240E_PBI ,26.61,-75.62, 2 +PBI00053, 9,250E_PBI ,26.60,-75.43, 2 +PBI00054, 9,20ESE_PBI ,26.55,-79.75, 2 +PBI00055, 9,30ESE_PBI ,26.49,-79.57, 2 +PBI00056, 9,40ESE_PBI ,26.42,-79.40, 2 +PBI00057, 9,50ESE_PBI ,26.36,-79.23, 2 +PBI00058, 9,60ESE_PBI ,26.29,-79.06, 2 +PBI00059, 9,70ESE_PBI ,26.23,-78.89, 2 +PBI00060, 9,80ESE_PBI ,26.16,-78.72, 2 +PBI00061, 9,90ESE_PBI ,26.10,-78.55, 2 +PBI00062, 9,100ESE_PBI ,26.03,-78.38, 2 +PBI00063, 9,110ESE_PBI ,25.97,-78.21, 2 +PBI00064, 9,120ESE_PBI ,25.90,-78.04, 2 +PBI00065, 9,130ESE_PBI ,25.83,-77.87, 2 +PBI00066, 9,140ESE_PBI ,25.77,-77.70, 2 +PBI00067, 9,20SE_PBI ,26.44,-79.83, 2 +PBI00068, 9,30SE_PBI ,26.33,-79.70, 2 +PBI00069, 9,40SE_PBI ,26.21,-79.56, 2 +PBI00070, 9,50SE_PBI ,26.09,-79.43, 2 +PBI00071, 9,20SSE_PBI ,26.37,-79.95, 2 +PBI00072, 9,30SSE_PBI ,26.22,-79.88, 2 +PBI00073, 9,20S_PBI ,26.35,-80.09, 2 +PBI00074, 9,30S_PBI ,26.18,-80.09, 2 +PBI00075, 9,20SSW_PBI ,26.37,-80.23, 2 +PBI00076, 9,30SSW_PBI ,26.22,-80.30, 2 +PBI00077, 9,20SW_PBI ,26.44,-80.35, 2 +PBI00078, 9,30SW_PBI ,26.33,-80.48, 2 +PBI00079, 9,20WSW_PBI ,26.55,-80.43, 2 +PBI00080, 9,30WSW_PBI ,26.49,-80.61, 2 +PBI00081, 9,40WSW_PBI ,26.42,-80.78, 2 +PBI00082, 9,20W_PBI ,26.68,-80.46, 2 +PBI00083, 9,30W_PBI ,26.68,-80.65, 2 +PBI00084, 9,40W_PBI ,26.68,-80.84, 2 +PBI00085, 9,20WNW_PBI ,26.81,-80.43, 2 +PBI00086, 9,30WNW_PBI ,26.87,-80.61, 2 +PBI00087, 9,40WNW_PBI ,26.93,-80.78, 2 +PBI00088, 9,20NW_PBI ,26.92,-80.35, 2 +PBI00089, 9,30NW_PBI ,27.03,-80.49, 2 +PBI00090, 9,20NNW_PBI ,26.99,-80.23, 2 EKN00000, 9,EKN ,38.92,-80.10, 1 EKN00001, 9,20N_EKN ,39.25,-80.10, 2 EKN00002, 9,30N_EKN ,39.42,-80.10, 2 @@ -3179,139 +3198,140 @@ MIA00048, 9,90SE_MIA ,24.74,-79.13, 2 MIA00049, 9,100SE_MIA ,24.62,-79.00, 2 MIA00050, 9,110SE_MIA ,24.50,-78.88, 2 MIA00051, 9,120SE_MIA ,24.38,-78.75, 2 -MIA00052, 9,170SE_MIA ,23.78,-78.11, 2 -MIA00053, 9,180SE_MIA ,23.66,-77.99, 2 -MIA00054, 9,190SE_MIA ,23.54,-77.86, 2 -MIA00055, 9,200SE_MIA ,23.42,-77.73, 2 -MIA00056, 9,210SE_MIA ,23.30,-77.61, 2 -MIA00057, 9,220SE_MIA ,23.18,-77.48, 2 -MIA00058, 9,230SE_MIA ,23.06,-77.36, 2 -MIA00059, 9,240SE_MIA ,22.94,-77.23, 2 -MIA00060, 9,250SE_MIA ,22.82,-77.11, 2 -MIA00061, 9,20SSE_MIA ,25.49,-80.16, 2 -MIA00062, 9,30SSE_MIA ,25.34,-80.09, 2 -MIA00063, 9,40SSE_MIA ,25.18,-80.02, 2 -MIA00064, 9,50SSE_MIA ,25.03,-79.95, 2 -MIA00065, 9,60SSE_MIA ,24.88,-79.88, 2 -MIA00066, 9,70SSE_MIA ,24.72,-79.81, 2 -MIA00067, 9,80SSE_MIA ,24.57,-79.74, 2 -MIA00068, 9,90SSE_MIA ,24.41,-79.67, 2 -MIA00069, 9,100SSE_MIA ,24.26,-79.60, 2 -MIA00070, 9,110SSE_MIA ,24.11,-79.53, 2 -MIA00071, 9,120SSE_MIA ,23.95,-79.46, 2 -MIA00072, 9,130SSE_MIA ,23.80,-79.39, 2 -MIA00073, 9,140SSE_MIA ,23.64,-79.33, 2 -MIA00074, 9,150SSE_MIA ,23.49,-79.26, 2 -MIA00075, 9,160SSE_MIA ,23.33,-79.19, 2 -MIA00076, 9,20S_MIA ,25.47,-80.30, 2 -MIA00077, 9,30S_MIA ,25.30,-80.30, 2 -MIA00078, 9,40S_MIA ,25.13,-80.30, 2 -MIA00079, 9,50S_MIA ,24.97,-80.30, 2 -MIA00080, 9,60S_MIA ,24.80,-80.30, 2 -MIA00081, 9,70S_MIA ,24.63,-80.30, 2 -MIA00082, 9,80S_MIA ,24.47,-80.30, 2 -MIA00083, 9,20SSW_MIA ,25.49,-80.44, 2 -MIA00084, 9,30SSW_MIA ,25.34,-80.51, 2 -MIA00085, 9,40SSW_MIA ,25.18,-80.58, 2 -MIA00086, 9,50SSW_MIA ,25.03,-80.65, 2 -MIA00087, 9,60SSW_MIA ,24.88,-80.72, 2 -MIA00088, 9,20SW_MIA ,25.56,-80.56, 2 -MIA00089, 9,30SW_MIA ,25.45,-80.69, 2 -MIA00090, 9,40SW_MIA ,25.33,-80.82, 2 -MIA00091, 9,50SW_MIA ,25.21,-80.95, 2 -MIA00092, 9,20WSW_MIA ,25.67,-80.64, 2 -MIA00093, 9,30WSW_MIA ,25.61,-80.81, 2 -MIA00094, 9,40WSW_MIA ,25.54,-80.98, 2 -MIA00095, 9,50WSW_MIA ,25.48,-81.15, 2 -MIA00096, 9,60WSW_MIA ,25.41,-81.32, 2 -MIA00097, 9,20W_MIA ,25.80,-80.67, 2 -MIA00098, 9,30W_MIA ,25.80,-80.85, 2 -MIA00099, 9,40W_MIA ,25.80,-81.04, 2 -MIA00100, 9,50W_MIA ,25.80,-81.22, 2 -MIA00101, 9,20WNW_MIA ,25.93,-80.64, 2 -MIA00102, 9,30WNW_MIA ,25.99,-80.81, 2 -MIA00103, 9,40WNW_MIA ,26.05,-80.99, 2 -MIA00104, 9,20NW_MIA ,26.04,-80.56, 2 -MIA00105, 9,30NW_MIA ,26.15,-80.69, 2 -MIA00106, 9,40NW_MIA ,26.27,-80.83, 2 -MIA00107, 9,20NNW_MIA ,26.11,-80.44, 2 -VRB00000, 9,VRB ,27.68,-80.49, 1 -VRB00001, 9,20N_VRB ,28.01,-80.49, 2 -VRB00002, 9,30N_VRB ,28.18,-80.49, 2 -VRB00003, 9,20NNE_VRB ,27.99,-80.35, 2 -VRB00004, 9,30NNE_VRB ,28.14,-80.27, 2 -VRB00005, 9,40NNE_VRB ,28.30,-80.20, 2 -VRB00006, 9,50NNE_VRB ,28.45,-80.13, 2 -VRB00007, 9,60NNE_VRB ,28.60,-80.05, 2 -VRB00008, 9,20NE_VRB ,27.92,-80.22, 2 -VRB00009, 9,30NE_VRB ,28.03,-80.09, 2 -VRB00010, 9,40NE_VRB ,28.15,-79.96, 2 -VRB00011, 9,50NE_VRB ,28.27,-79.82, 2 -VRB00012, 9,60NE_VRB ,28.38,-79.69, 2 -VRB00013, 9,70NE_VRB ,28.50,-79.55, 2 -VRB00014, 9,80NE_VRB ,28.62,-79.42, 2 -VRB00015, 9,90NE_VRB ,28.73,-79.28, 2 -VRB00016, 9,100NE_VRB ,28.85,-79.15, 2 -VRB00017, 9,20ENE_VRB ,27.81,-80.14, 2 -VRB00018, 9,30ENE_VRB ,27.87,-79.97, 2 -VRB00019, 9,40ENE_VRB ,27.93,-79.79, 2 -VRB00020, 9,50ENE_VRB ,28.00,-79.62, 2 -VRB00021, 9,60ENE_VRB ,28.06,-79.44, 2 -VRB00022, 9,70ENE_VRB ,28.12,-79.27, 2 -VRB00023, 9,80ENE_VRB ,28.18,-79.09, 2 -VRB00024, 9,90ENE_VRB ,28.24,-78.92, 2 -VRB00025, 9,100ENE_VRB ,28.31,-78.74, 2 -VRB00026, 9,110ENE_VRB ,28.37,-78.57, 2 -VRB00027, 9,120ENE_VRB ,28.43,-78.39, 2 -VRB00028, 9,130ENE_VRB ,28.49,-78.21, 2 -VRB00029, 9,140ENE_VRB ,28.55,-78.04, 2 -VRB00030, 9,150ENE_VRB ,28.61,-77.86, 2 -VRB00031, 9,160ENE_VRB ,28.67,-77.68, 2 -VRB00032, 9,170ENE_VRB ,28.73,-77.51, 2 -VRB00033, 9,180ENE_VRB ,28.79,-77.33, 2 -VRB00034, 9,190ENE_VRB ,28.85,-77.15, 2 -VRB00035, 9,200ENE_VRB ,28.91,-76.97, 2 -VRB00036, 9,210ENE_VRB ,28.97,-76.80, 2 -VRB00037, 9,220ENE_VRB ,29.03,-76.62, 2 -VRB00038, 9,230ENE_VRB ,29.09,-76.44, 2 -VRB00039, 9,240ENE_VRB ,29.15,-76.26, 2 -VRB00040, 9,20E_VRB ,27.68,-80.11, 2 -VRB00041, 9,30E_VRB ,27.68,-79.93, 2 -VRB00042, 9,40E_VRB ,27.68,-79.74, 2 -VRB00043, 9,50E_VRB ,27.68,-79.55, 2 -VRB00044, 9,60E_VRB ,27.68,-79.36, 2 -VRB00045, 9,70E_VRB ,27.67,-79.17, 2 -VRB00046, 9,80E_VRB ,27.67,-78.99, 2 -VRB00047, 9,90E_VRB ,27.67,-78.80, 2 -VRB00048, 9,20ESE_VRB ,27.55,-80.14, 2 -VRB00049, 9,30ESE_VRB ,27.49,-79.97, 2 -VRB00050, 9,40ESE_VRB ,27.42,-79.80, 2 -VRB00051, 9,50ESE_VRB ,27.36,-79.62, 2 -VRB00052, 9,20SE_VRB ,27.44,-80.22, 2 -VRB00053, 9,30SE_VRB ,27.33,-80.09, 2 -VRB00054, 9,20SSE_VRB ,27.37,-80.35, 2 -VRB00055, 9,30SSE_VRB ,27.22,-80.27, 2 -VRB00056, 9,20S_VRB ,27.35,-80.49, 2 -VRB00057, 9,30S_VRB ,27.18,-80.49, 2 -VRB00058, 9,20SSW_VRB ,27.37,-80.63, 2 -VRB00059, 9,30SSW_VRB ,27.22,-80.71, 2 -VRB00060, 9,40SSW_VRB ,27.06,-80.78, 2 -VRB00061, 9,20SW_VRB ,27.44,-80.76, 2 -VRB00062, 9,30SW_VRB ,27.33,-80.89, 2 -VRB00063, 9,40SW_VRB ,27.21,-81.02, 2 -VRB00064, 9,50SW_VRB ,27.09,-81.15, 2 -VRB00065, 9,20WSW_VRB ,27.55,-80.84, 2 -VRB00066, 9,30WSW_VRB ,27.49,-81.01, 2 -VRB00067, 9,40WSW_VRB ,27.42,-81.18, 2 -VRB00068, 9,50WSW_VRB ,27.36,-81.36, 2 -VRB00069, 9,20W_VRB ,27.68,-80.87, 2 -VRB00070, 9,30W_VRB ,27.68,-81.05, 2 -VRB00071, 9,40W_VRB ,27.68,-81.24, 2 -VRB00072, 9,20WNW_VRB ,27.81,-80.84, 2 -VRB00073, 9,30WNW_VRB ,27.87,-81.01, 2 -VRB00074, 9,20NW_VRB ,27.92,-80.76, 2 -VRB00075, 9,20NNW_VRB ,27.99,-80.63, 2 -VRB00076, 9,30NNW_VRB ,28.14,-80.71, 2 +MIA00052, 9,130SE_MIA ,24.26,-78.62, 2 +MIA00053, 9,160SE_MIA ,23.90,-78.24, 2 +MIA00054, 9,170SE_MIA ,23.78,-78.11, 2 +MIA00055, 9,180SE_MIA ,23.66,-77.99, 2 +MIA00056, 9,190SE_MIA ,23.54,-77.86, 2 +MIA00057, 9,200SE_MIA ,23.42,-77.73, 2 +MIA00058, 9,210SE_MIA ,23.30,-77.61, 2 +MIA00059, 9,220SE_MIA ,23.18,-77.48, 2 +MIA00060, 9,230SE_MIA ,23.06,-77.36, 2 +MIA00061, 9,240SE_MIA ,22.94,-77.23, 2 +MIA00062, 9,250SE_MIA ,22.82,-77.11, 2 +MIA00063, 9,20SSE_MIA ,25.49,-80.16, 2 +MIA00064, 9,30SSE_MIA ,25.34,-80.09, 2 +MIA00065, 9,40SSE_MIA ,25.18,-80.02, 2 +MIA00066, 9,50SSE_MIA ,25.03,-79.95, 2 +MIA00067, 9,60SSE_MIA ,24.88,-79.88, 2 +MIA00068, 9,70SSE_MIA ,24.72,-79.81, 2 +MIA00069, 9,80SSE_MIA ,24.57,-79.74, 2 +MIA00070, 9,90SSE_MIA ,24.41,-79.67, 2 +MIA00071, 9,100SSE_MIA ,24.26,-79.60, 2 +MIA00072, 9,110SSE_MIA ,24.11,-79.53, 2 +MIA00073, 9,120SSE_MIA ,23.95,-79.46, 2 +MIA00074, 9,130SSE_MIA ,23.80,-79.39, 2 +MIA00075, 9,140SSE_MIA ,23.64,-79.33, 2 +MIA00076, 9,150SSE_MIA ,23.49,-79.26, 2 +MIA00077, 9,160SSE_MIA ,23.33,-79.19, 2 +MIA00078, 9,20S_MIA ,25.47,-80.30, 2 +MIA00079, 9,30S_MIA ,25.30,-80.30, 2 +MIA00080, 9,40S_MIA ,25.13,-80.30, 2 +MIA00081, 9,50S_MIA ,24.97,-80.30, 2 +MIA00082, 9,60S_MIA ,24.80,-80.30, 2 +MIA00083, 9,70S_MIA ,24.63,-80.30, 2 +MIA00084, 9,80S_MIA ,24.47,-80.30, 2 +MIA00085, 9,20SSW_MIA ,25.49,-80.44, 2 +MIA00086, 9,30SSW_MIA ,25.34,-80.51, 2 +MIA00087, 9,40SSW_MIA ,25.18,-80.58, 2 +MIA00088, 9,50SSW_MIA ,25.03,-80.65, 2 +MIA00089, 9,60SSW_MIA ,24.88,-80.72, 2 +MIA00090, 9,20SW_MIA ,25.56,-80.56, 2 +MIA00091, 9,30SW_MIA ,25.45,-80.69, 2 +MIA00092, 9,40SW_MIA ,25.33,-80.82, 2 +MIA00093, 9,50SW_MIA ,25.21,-80.95, 2 +MIA00094, 9,20WSW_MIA ,25.67,-80.64, 2 +MIA00095, 9,30WSW_MIA ,25.61,-80.81, 2 +MIA00096, 9,40WSW_MIA ,25.54,-80.98, 2 +MIA00097, 9,50WSW_MIA ,25.48,-81.15, 2 +MIA00098, 9,60WSW_MIA ,25.41,-81.32, 2 +MIA00099, 9,20W_MIA ,25.80,-80.67, 2 +MIA00100, 9,30W_MIA ,25.80,-80.85, 2 +MIA00101, 9,40W_MIA ,25.80,-81.04, 2 +MIA00102, 9,20WNW_MIA ,25.93,-80.64, 2 +MIA00103, 9,30WNW_MIA ,25.99,-80.81, 2 +MIA00104, 9,40WNW_MIA ,26.05,-80.99, 2 +MIA00105, 9,20NW_MIA ,26.04,-80.56, 2 +MIA00106, 9,30NW_MIA ,26.15,-80.69, 2 +MIA00107, 9,40NW_MIA ,26.27,-80.83, 2 +MIA00108, 9,20NNW_MIA ,26.11,-80.44, 2 +TRV00000, 9,TRV ,27.68,-80.49, 1 +TRV00001, 9,20N_TRV ,28.01,-80.49, 2 +TRV00002, 9,30N_TRV ,28.18,-80.49, 2 +TRV00003, 9,20NNE_TRV ,27.99,-80.35, 2 +TRV00004, 9,30NNE_TRV ,28.14,-80.27, 2 +TRV00005, 9,40NNE_TRV ,28.30,-80.20, 2 +TRV00006, 9,50NNE_TRV ,28.45,-80.13, 2 +TRV00007, 9,60NNE_TRV ,28.60,-80.05, 2 +TRV00008, 9,20NE_TRV ,27.92,-80.22, 2 +TRV00009, 9,30NE_TRV ,28.03,-80.09, 2 +TRV00010, 9,40NE_TRV ,28.15,-79.96, 2 +TRV00011, 9,50NE_TRV ,28.27,-79.82, 2 +TRV00012, 9,60NE_TRV ,28.38,-79.69, 2 +TRV00013, 9,70NE_TRV ,28.50,-79.55, 2 +TRV00014, 9,80NE_TRV ,28.62,-79.42, 2 +TRV00015, 9,90NE_TRV ,28.73,-79.28, 2 +TRV00016, 9,100NE_TRV ,28.85,-79.15, 2 +TRV00017, 9,20ENE_TRV ,27.81,-80.14, 2 +TRV00018, 9,30ENE_TRV ,27.87,-79.97, 2 +TRV00019, 9,40ENE_TRV ,27.93,-79.79, 2 +TRV00020, 9,50ENE_TRV ,28.00,-79.62, 2 +TRV00021, 9,60ENE_TRV ,28.06,-79.44, 2 +TRV00022, 9,70ENE_TRV ,28.12,-79.27, 2 +TRV00023, 9,80ENE_TRV ,28.18,-79.09, 2 +TRV00024, 9,90ENE_TRV ,28.24,-78.92, 2 +TRV00025, 9,100ENE_TRV ,28.31,-78.74, 2 +TRV00026, 9,110ENE_TRV ,28.37,-78.57, 2 +TRV00027, 9,120ENE_TRV ,28.43,-78.39, 2 +TRV00028, 9,130ENE_TRV ,28.49,-78.21, 2 +TRV00029, 9,140ENE_TRV ,28.55,-78.04, 2 +TRV00030, 9,150ENE_TRV ,28.61,-77.86, 2 +TRV00031, 9,160ENE_TRV ,28.67,-77.68, 2 +TRV00032, 9,170ENE_TRV ,28.73,-77.51, 2 +TRV00033, 9,180ENE_TRV ,28.79,-77.33, 2 +TRV00034, 9,190ENE_TRV ,28.85,-77.15, 2 +TRV00035, 9,200ENE_TRV ,28.91,-76.97, 2 +TRV00036, 9,210ENE_TRV ,28.97,-76.80, 2 +TRV00037, 9,220ENE_TRV ,29.03,-76.62, 2 +TRV00038, 9,230ENE_TRV ,29.09,-76.44, 2 +TRV00039, 9,240ENE_TRV ,29.15,-76.26, 2 +TRV00040, 9,20E_TRV ,27.68,-80.11, 2 +TRV00041, 9,30E_TRV ,27.68,-79.93, 2 +TRV00042, 9,40E_TRV ,27.68,-79.74, 2 +TRV00043, 9,50E_TRV ,27.68,-79.55, 2 +TRV00044, 9,60E_TRV ,27.68,-79.36, 2 +TRV00045, 9,70E_TRV ,27.67,-79.17, 2 +TRV00046, 9,80E_TRV ,27.67,-78.99, 2 +TRV00047, 9,90E_TRV ,27.67,-78.80, 2 +TRV00048, 9,20ESE_TRV ,27.55,-80.14, 2 +TRV00049, 9,30ESE_TRV ,27.49,-79.97, 2 +TRV00050, 9,40ESE_TRV ,27.42,-79.80, 2 +TRV00051, 9,50ESE_TRV ,27.36,-79.62, 2 +TRV00052, 9,20SE_TRV ,27.44,-80.22, 2 +TRV00053, 9,30SE_TRV ,27.33,-80.09, 2 +TRV00054, 9,20SSE_TRV ,27.37,-80.35, 2 +TRV00055, 9,30SSE_TRV ,27.22,-80.27, 2 +TRV00056, 9,20S_TRV ,27.35,-80.49, 2 +TRV00057, 9,30S_TRV ,27.18,-80.49, 2 +TRV00058, 9,20SSW_TRV ,27.37,-80.63, 2 +TRV00059, 9,30SSW_TRV ,27.22,-80.71, 2 +TRV00060, 9,40SSW_TRV ,27.06,-80.78, 2 +TRV00061, 9,20SW_TRV ,27.44,-80.76, 2 +TRV00062, 9,30SW_TRV ,27.33,-80.89, 2 +TRV00063, 9,40SW_TRV ,27.21,-81.02, 2 +TRV00064, 9,50SW_TRV ,27.09,-81.15, 2 +TRV00065, 9,20WSW_TRV ,27.55,-80.84, 2 +TRV00066, 9,30WSW_TRV ,27.49,-81.01, 2 +TRV00067, 9,40WSW_TRV ,27.42,-81.18, 2 +TRV00068, 9,50WSW_TRV ,27.36,-81.36, 2 +TRV00069, 9,20W_TRV ,27.68,-80.87, 2 +TRV00070, 9,30W_TRV ,27.68,-81.05, 2 +TRV00071, 9,40W_TRV ,27.68,-81.24, 2 +TRV00072, 9,20WNW_TRV ,27.81,-80.84, 2 +TRV00073, 9,30WNW_TRV ,27.87,-81.01, 2 +TRV00074, 9,20NW_TRV ,27.92,-80.76, 2 +TRV00075, 9,20NNW_TRV ,27.99,-80.63, 2 +TRV00076, 9,30NNW_TRV ,28.14,-80.71, 2 PSK00000, 9,PSK ,37.09,-80.71, 1 PSK00001, 9,20NNE_PSK ,37.40,-80.55, 2 PSK00002, 9,20NE_PSK ,37.33,-80.41, 2 @@ -4022,130 +4042,130 @@ EYW00153, 9,30WSW_EYW ,24.40,-82.31, 2 EYW00154, 9,40WSW_EYW ,24.33,-82.48, 2 EYW00155, 9,50WSW_EYW ,24.27,-82.64, 2 EYW00156, 9,60WSW_EYW ,24.20,-82.81, 2 -EYW00157, 9,110WSW_EYW ,23.88,-83.65, 2 -EYW00158, 9,120WSW_EYW ,23.81,-83.82, 2 -EYW00159, 9,130WSW_EYW ,23.75,-83.99, 2 -EYW00160, 9,140WSW_EYW ,23.68,-84.15, 2 -EYW00161, 9,150WSW_EYW ,23.61,-84.32, 2 -EYW00162, 9,160WSW_EYW ,23.55,-84.49, 2 -EYW00163, 9,170WSW_EYW ,23.48,-84.65, 2 -EYW00164, 9,180WSW_EYW ,23.41,-84.82, 2 -EYW00165, 9,190WSW_EYW ,23.35,-84.98, 2 -EYW00166, 9,200WSW_EYW ,23.28,-85.15, 2 -EYW00167, 9,210WSW_EYW ,23.21,-85.32, 2 -EYW00168, 9,220WSW_EYW ,23.14,-85.48, 2 -EYW00169, 9,230WSW_EYW ,23.08,-85.65, 2 -EYW00170, 9,240WSW_EYW ,23.01,-85.81, 2 -EYW00171, 9,20W_EYW ,24.59,-82.17, 2 -EYW00172, 9,30W_EYW ,24.59,-82.35, 2 -EYW00173, 9,40W_EYW ,24.59,-82.53, 2 -EYW00174, 9,50W_EYW ,24.59,-82.72, 2 -EYW00175, 9,60W_EYW ,24.59,-82.90, 2 -EYW00176, 9,70W_EYW ,24.58,-83.08, 2 -EYW00177, 9,80W_EYW ,24.58,-83.27, 2 -EYW00178, 9,90W_EYW ,24.58,-83.45, 2 -EYW00179, 9,100W_EYW ,24.58,-83.63, 2 -EYW00180, 9,110W_EYW ,24.58,-83.81, 2 -EYW00181, 9,120W_EYW ,24.57,-84.00, 2 -EYW00182, 9,130W_EYW ,24.57,-84.18, 2 -EYW00183, 9,140W_EYW ,24.57,-84.36, 2 -EYW00184, 9,150W_EYW ,24.57,-84.55, 2 -EYW00185, 9,160W_EYW ,24.56,-84.73, 2 -EYW00186, 9,170W_EYW ,24.56,-84.91, 2 -EYW00187, 9,180W_EYW ,24.55,-85.10, 2 -EYW00188, 9,190W_EYW ,24.55,-85.28, 2 -EYW00189, 9,200W_EYW ,24.55,-85.46, 2 -EYW00190, 9,210W_EYW ,24.54,-85.65, 2 -EYW00191, 9,220W_EYW ,24.54,-85.83, 2 -EYW00192, 9,230W_EYW ,24.53,-86.01, 2 -EYW00193, 9,240W_EYW ,24.53,-86.19, 2 -EYW00194, 9,250W_EYW ,24.52,-86.38, 2 -EYW00195, 9,20WNW_EYW ,24.72,-82.14, 2 -EYW00196, 9,30WNW_EYW ,24.78,-82.31, 2 -EYW00197, 9,40WNW_EYW ,24.84,-82.48, 2 -EYW00198, 9,50WNW_EYW ,24.91,-82.65, 2 -EYW00199, 9,60WNW_EYW ,24.97,-82.82, 2 -EYW00200, 9,70WNW_EYW ,25.03,-82.99, 2 -EYW00201, 9,80WNW_EYW ,25.09,-83.16, 2 -EYW00202, 9,90WNW_EYW ,25.16,-83.33, 2 -EYW00203, 9,100WNW_EYW ,25.22,-83.50, 2 -EYW00204, 9,110WNW_EYW ,25.28,-83.67, 2 -EYW00205, 9,120WNW_EYW ,25.34,-83.84, 2 -EYW00206, 9,130WNW_EYW ,25.40,-84.01, 2 -EYW00207, 9,20NW_EYW ,24.83,-82.06, 2 -EYW00208, 9,30NW_EYW ,24.94,-82.19, 2 -EYW00209, 9,40NW_EYW ,25.06,-82.32, 2 -EYW00210, 9,50NW_EYW ,25.18,-82.45, 2 -EYW00211, 9,60NW_EYW ,25.29,-82.58, 2 -EYW00212, 9,70NW_EYW ,25.41,-82.71, 2 -EYW00213, 9,20NNW_EYW ,24.90,-81.94, 2 -EYW00214, 9,30NNW_EYW ,25.05,-82.01, 2 -EYW00215, 9,40NNW_EYW ,25.21,-82.08, 2 -EYW00216, 9,50NNW_EYW ,25.36,-82.15, 2 -EYW00217, 9,60NNW_EYW ,25.51,-82.22, 2 -FMY00000, 9,FMY ,26.58,-81.87, 1 -FMY00001, 9,20N_FMY ,26.91,-81.87, 2 -FMY00002, 9,30N_FMY ,27.08,-81.87, 2 -FMY00003, 9,20NNE_FMY ,26.89,-81.73, 2 -FMY00004, 9,30NNE_FMY ,27.04,-81.66, 2 -FMY00005, 9,40NNE_FMY ,27.20,-81.58, 2 -FMY00006, 9,20NE_FMY ,26.82,-81.61, 2 -FMY00007, 9,30NE_FMY ,26.93,-81.47, 2 -FMY00008, 9,40NE_FMY ,27.05,-81.34, 2 -FMY00009, 9,20ENE_FMY ,26.71,-81.53, 2 -FMY00010, 9,30ENE_FMY ,26.77,-81.35, 2 -FMY00011, 9,40ENE_FMY ,26.83,-81.18, 2 -FMY00012, 9,20E_FMY ,26.58,-81.50, 2 -FMY00013, 9,30E_FMY ,26.58,-81.31, 2 -FMY00014, 9,40E_FMY ,26.58,-81.13, 2 -FMY00015, 9,20ESE_FMY ,26.45,-81.53, 2 -FMY00016, 9,30ESE_FMY ,26.39,-81.35, 2 -FMY00017, 9,40ESE_FMY ,26.32,-81.18, 2 -FMY00018, 9,50ESE_FMY ,26.26,-81.01, 2 -FMY00019, 9,20SE_FMY ,26.34,-81.61, 2 -FMY00020, 9,30SE_FMY ,26.23,-81.48, 2 -FMY00021, 9,40SE_FMY ,26.11,-81.35, 2 -FMY00022, 9,50SE_FMY ,25.99,-81.21, 2 -FMY00023, 9,20SSE_FMY ,26.27,-81.73, 2 -FMY00024, 9,30SSE_FMY ,26.12,-81.66, 2 -FMY00025, 9,40SSE_FMY ,25.96,-81.59, 2 -FMY00026, 9,50SSE_FMY ,25.81,-81.52, 2 -FMY00027, 9,60SSE_FMY ,25.66,-81.45, 2 -FMY00028, 9,20S_FMY ,26.25,-81.87, 2 -FMY00029, 9,30S_FMY ,26.08,-81.87, 2 -FMY00030, 9,40S_FMY ,25.91,-81.87, 2 -FMY00031, 9,50S_FMY ,25.75,-81.87, 2 -FMY00032, 9,60S_FMY ,25.58,-81.87, 2 -FMY00033, 9,20SSW_FMY ,26.27,-82.01, 2 -FMY00034, 9,30SSW_FMY ,26.12,-82.08, 2 -FMY00035, 9,40SSW_FMY ,25.96,-82.15, 2 -FMY00036, 9,50SSW_FMY ,25.81,-82.22, 2 -FMY00037, 9,60SSW_FMY ,25.66,-82.29, 2 -FMY00038, 9,20SW_FMY ,26.34,-82.13, 2 -FMY00039, 9,30SW_FMY ,26.23,-82.26, 2 -FMY00040, 9,40SW_FMY ,26.11,-82.39, 2 -FMY00041, 9,50SW_FMY ,25.99,-82.53, 2 -FMY00042, 9,60SW_FMY ,25.87,-82.66, 2 -FMY00043, 9,70SW_FMY ,25.75,-82.79, 2 -FMY00044, 9,80SW_FMY ,25.63,-82.91, 2 -FMY00045, 9,90SW_FMY ,25.52,-83.04, 2 -FMY00046, 9,20WSW_FMY ,26.45,-82.21, 2 -FMY00047, 9,30WSW_FMY ,26.39,-82.39, 2 -FMY00048, 9,40WSW_FMY ,26.32,-82.56, 2 -FMY00049, 9,50WSW_FMY ,26.26,-82.73, 2 -FMY00050, 9,60WSW_FMY ,26.19,-82.90, 2 -FMY00051, 9,70WSW_FMY ,26.13,-83.07, 2 -FMY00052, 9,80WSW_FMY ,26.06,-83.24, 2 -FMY00053, 9,90WSW_FMY ,26.00,-83.41, 2 -FMY00054, 9,100WSW_FMY ,25.93,-83.58, 2 -FMY00055, 9,110WSW_FMY ,25.87,-83.75, 2 -FMY00056, 9,20W_FMY ,26.58,-82.24, 2 -FMY00057, 9,30W_FMY ,26.58,-82.43, 2 -FMY00058, 9,40W_FMY ,26.58,-82.61, 2 -FMY00059, 9,20WNW_FMY ,26.71,-82.21, 2 -FMY00060, 9,30WNW_FMY ,26.77,-82.39, 2 -FMY00061, 9,20NW_FMY ,26.82,-82.13, 2 -FMY00062, 9,20NNW_FMY ,26.89,-82.01, 2 +EYW00157, 9,70WSW_EYW ,24.14,-82.98, 2 +EYW00158, 9,100WSW_EYW ,23.94,-83.48, 2 +EYW00159, 9,110WSW_EYW ,23.88,-83.65, 2 +EYW00160, 9,120WSW_EYW ,23.81,-83.82, 2 +EYW00161, 9,130WSW_EYW ,23.75,-83.99, 2 +EYW00162, 9,140WSW_EYW ,23.68,-84.15, 2 +EYW00163, 9,150WSW_EYW ,23.61,-84.32, 2 +EYW00164, 9,160WSW_EYW ,23.55,-84.49, 2 +EYW00165, 9,170WSW_EYW ,23.48,-84.65, 2 +EYW00166, 9,180WSW_EYW ,23.41,-84.82, 2 +EYW00167, 9,190WSW_EYW ,23.35,-84.98, 2 +EYW00168, 9,200WSW_EYW ,23.28,-85.15, 2 +EYW00169, 9,210WSW_EYW ,23.21,-85.32, 2 +EYW00170, 9,220WSW_EYW ,23.14,-85.48, 2 +EYW00171, 9,230WSW_EYW ,23.08,-85.65, 2 +EYW00172, 9,240WSW_EYW ,23.01,-85.81, 2 +EYW00173, 9,20W_EYW ,24.59,-82.17, 2 +EYW00174, 9,30W_EYW ,24.59,-82.35, 2 +EYW00175, 9,40W_EYW ,24.59,-82.53, 2 +EYW00176, 9,50W_EYW ,24.59,-82.72, 2 +EYW00177, 9,60W_EYW ,24.59,-82.90, 2 +EYW00178, 9,70W_EYW ,24.58,-83.08, 2 +EYW00179, 9,80W_EYW ,24.58,-83.27, 2 +EYW00180, 9,90W_EYW ,24.58,-83.45, 2 +EYW00181, 9,100W_EYW ,24.58,-83.63, 2 +EYW00182, 9,110W_EYW ,24.58,-83.81, 2 +EYW00183, 9,120W_EYW ,24.57,-84.00, 2 +EYW00184, 9,130W_EYW ,24.57,-84.18, 2 +EYW00185, 9,140W_EYW ,24.57,-84.36, 2 +EYW00186, 9,150W_EYW ,24.57,-84.55, 2 +EYW00187, 9,160W_EYW ,24.56,-84.73, 2 +EYW00188, 9,170W_EYW ,24.56,-84.91, 2 +EYW00189, 9,180W_EYW ,24.55,-85.10, 2 +EYW00190, 9,190W_EYW ,24.55,-85.28, 2 +EYW00191, 9,200W_EYW ,24.55,-85.46, 2 +EYW00192, 9,210W_EYW ,24.54,-85.65, 2 +EYW00193, 9,220W_EYW ,24.54,-85.83, 2 +EYW00194, 9,230W_EYW ,24.53,-86.01, 2 +EYW00195, 9,240W_EYW ,24.53,-86.19, 2 +EYW00196, 9,250W_EYW ,24.52,-86.38, 2 +EYW00197, 9,20WNW_EYW ,24.72,-82.14, 2 +EYW00198, 9,30WNW_EYW ,24.78,-82.31, 2 +EYW00199, 9,40WNW_EYW ,24.84,-82.48, 2 +EYW00200, 9,50WNW_EYW ,24.91,-82.65, 2 +EYW00201, 9,60WNW_EYW ,24.97,-82.82, 2 +EYW00202, 9,70WNW_EYW ,25.03,-82.99, 2 +EYW00203, 9,80WNW_EYW ,25.09,-83.16, 2 +EYW00204, 9,90WNW_EYW ,25.16,-83.33, 2 +EYW00205, 9,100WNW_EYW ,25.22,-83.50, 2 +EYW00206, 9,110WNW_EYW ,25.28,-83.67, 2 +EYW00207, 9,120WNW_EYW ,25.34,-83.84, 2 +EYW00208, 9,130WNW_EYW ,25.40,-84.01, 2 +EYW00209, 9,140WNW_EYW ,25.46,-84.19, 2 +EYW00210, 9,20NW_EYW ,24.83,-82.06, 2 +EYW00211, 9,30NW_EYW ,24.94,-82.19, 2 +EYW00212, 9,40NW_EYW ,25.06,-82.32, 2 +EYW00213, 9,50NW_EYW ,25.18,-82.45, 2 +EYW00214, 9,60NW_EYW ,25.29,-82.58, 2 +EYW00215, 9,70NW_EYW ,25.41,-82.71, 2 +EYW00216, 9,20NNW_EYW ,24.90,-81.94, 2 +EYW00217, 9,30NNW_EYW ,25.05,-82.01, 2 +EYW00218, 9,40NNW_EYW ,25.21,-82.08, 2 +EYW00219, 9,50NNW_EYW ,25.36,-82.15, 2 +RSW00000, 9,RSW ,26.53,-81.78, 1 +RSW00001, 9,20N_RSW ,26.86,-81.78, 2 +RSW00002, 9,30N_RSW ,27.03,-81.78, 2 +RSW00003, 9,20NNE_RSW ,26.84,-81.64, 2 +RSW00004, 9,30NNE_RSW ,26.99,-81.57, 2 +RSW00005, 9,40NNE_RSW ,27.15,-81.49, 2 +RSW00006, 9,20NE_RSW ,26.77,-81.52, 2 +RSW00007, 9,30NE_RSW ,26.88,-81.38, 2 +RSW00008, 9,40NE_RSW ,27.00,-81.25, 2 +RSW00009, 9,20ENE_RSW ,26.66,-81.44, 2 +RSW00010, 9,30ENE_RSW ,26.72,-81.26, 2 +RSW00011, 9,40ENE_RSW ,26.78,-81.09, 2 +RSW00012, 9,20E_RSW ,26.53,-81.41, 2 +RSW00013, 9,30E_RSW ,26.53,-81.22, 2 +RSW00014, 9,40E_RSW ,26.53,-81.04, 2 +RSW00015, 9,20ESE_RSW ,26.40,-81.44, 2 +RSW00016, 9,30ESE_RSW ,26.34,-81.26, 2 +RSW00017, 9,40ESE_RSW ,26.27,-81.09, 2 +RSW00018, 9,20SE_RSW ,26.29,-81.52, 2 +RSW00019, 9,30SE_RSW ,26.18,-81.39, 2 +RSW00020, 9,40SE_RSW ,26.06,-81.26, 2 +RSW00021, 9,50SE_RSW ,25.94,-81.13, 2 +RSW00022, 9,20SSE_RSW ,26.22,-81.64, 2 +RSW00023, 9,30SSE_RSW ,26.07,-81.57, 2 +RSW00024, 9,40SSE_RSW ,25.91,-81.50, 2 +RSW00025, 9,50SSE_RSW ,25.76,-81.43, 2 +RSW00026, 9,60SSE_RSW ,25.61,-81.36, 2 +RSW00027, 9,20S_RSW ,26.20,-81.78, 2 +RSW00028, 9,30S_RSW ,26.03,-81.78, 2 +RSW00029, 9,40S_RSW ,25.86,-81.78, 2 +RSW00030, 9,50S_RSW ,25.70,-81.78, 2 +RSW00031, 9,60S_RSW ,25.53,-81.78, 2 +RSW00032, 9,20SSW_RSW ,26.22,-81.92, 2 +RSW00033, 9,30SSW_RSW ,26.07,-81.99, 2 +RSW00034, 9,40SSW_RSW ,25.91,-82.06, 2 +RSW00035, 9,50SSW_RSW ,25.76,-82.13, 2 +RSW00036, 9,60SSW_RSW ,25.61,-82.20, 2 +RSW00037, 9,20SW_RSW ,26.29,-82.04, 2 +RSW00038, 9,30SW_RSW ,26.18,-82.17, 2 +RSW00039, 9,40SW_RSW ,26.06,-82.30, 2 +RSW00040, 9,50SW_RSW ,25.94,-82.43, 2 +RSW00041, 9,60SW_RSW ,25.82,-82.56, 2 +RSW00042, 9,70SW_RSW ,25.70,-82.69, 2 +RSW00043, 9,80SW_RSW ,25.58,-82.82, 2 +RSW00044, 9,20WSW_RSW ,26.40,-82.12, 2 +RSW00045, 9,30WSW_RSW ,26.34,-82.30, 2 +RSW00046, 9,40WSW_RSW ,26.27,-82.47, 2 +RSW00047, 9,50WSW_RSW ,26.21,-82.64, 2 +RSW00048, 9,60WSW_RSW ,26.14,-82.81, 2 +RSW00049, 9,70WSW_RSW ,26.08,-82.98, 2 +RSW00050, 9,80WSW_RSW ,26.01,-83.15, 2 +RSW00051, 9,90WSW_RSW ,25.95,-83.32, 2 +RSW00052, 9,100WSW_RSW ,25.88,-83.49, 2 +RSW00053, 9,20W_RSW ,26.53,-82.15, 2 +RSW00054, 9,30W_RSW ,26.53,-82.34, 2 +RSW00055, 9,40W_RSW ,26.53,-82.52, 2 +RSW00056, 9,20WNW_RSW ,26.66,-82.12, 2 +RSW00057, 9,30WNW_RSW ,26.72,-82.30, 2 +RSW00058, 9,20NW_RSW ,26.77,-82.04, 2 +RSW00059, 9,20NNW_RSW ,26.84,-81.92, 2 +RSW00060, 9,30NNW_RSW ,26.99,-81.99, 2 SPA00000, 9,SPA ,35.03,-81.93, 1 SPA00001, 9,20N_SPA ,35.36,-81.93, 2 SPA00002, 9,30N_SPA ,35.53,-81.93, 2 @@ -4257,41 +4277,48 @@ HMV00009, 9,20ENE_HMV ,36.57,-81.75, 2 HMV00010, 9,30ENE_HMV ,36.63,-81.55, 2 HMV00011, 9,20E_HMV ,36.44,-81.72, 2 HMV00012, 9,30E_HMV ,36.44,-81.51, 2 -HMV00013, 9,30ESE_HMV ,36.25,-81.56, 2 -HMV00014, 9,40ESE_HMV ,36.18,-81.37, 2 -HMV00015, 9,50ESE_HMV ,36.12,-81.18, 2 -HMV00016, 9,30SE_HMV ,36.09,-81.69, 2 -HMV00017, 9,40SE_HMV ,35.97,-81.55, 2 -HMV00018, 9,50SE_HMV ,35.85,-81.40, 2 -HMV00019, 9,30SSE_HMV ,35.98,-81.89, 2 -HMV00020, 9,40SSE_HMV ,35.82,-81.82, 2 -HMV00021, 9,50SSE_HMV ,35.67,-81.74, 2 -HMV00022, 9,30S_HMV ,35.94,-82.13, 2 -HMV00023, 9,40S_HMV ,35.77,-82.13, 2 -HMV00024, 9,30SSW_HMV ,35.98,-82.37, 2 -HMV00025, 9,40SSW_HMV ,35.82,-82.44, 2 -HMV00026, 9,50SSW_HMV ,35.67,-82.52, 2 -HMV00027, 9,30SW_HMV ,36.09,-82.57, 2 -HMV00028, 9,40SW_HMV ,35.97,-82.71, 2 -HMV00029, 9,50SW_HMV ,35.85,-82.86, 2 -HMV00030, 9,30WSW_HMV ,36.25,-82.70, 2 -HMV00031, 9,40WSW_HMV ,36.18,-82.89, 2 -HMV00032, 9,50WSW_HMV ,36.12,-83.08, 2 -HMV00033, 9,20W_HMV ,36.44,-82.54, 2 -HMV00034, 9,30W_HMV ,36.44,-82.75, 2 -HMV00035, 9,40W_HMV ,36.44,-82.96, 2 -HMV00036, 9,20WNW_HMV ,36.57,-82.51, 2 -HMV00037, 9,30WNW_HMV ,36.63,-82.71, 2 -HMV00038, 9,40WNW_HMV ,36.69,-82.90, 2 -HMV00039, 9,20NW_HMV ,36.68,-82.42, 2 -HMV00040, 9,30NW_HMV ,36.79,-82.57, 2 -HMV00041, 9,40NW_HMV ,36.91,-82.72, 2 -HMV00042, 9,50NW_HMV ,37.03,-82.87, 2 -HMV00043, 9,20NNW_HMV ,36.75,-82.29, 2 -HMV00044, 9,30NNW_HMV ,36.90,-82.37, 2 -HMV00045, 9,40NNW_HMV ,37.06,-82.45, 2 -HMV00046, 9,50NNW_HMV ,37.21,-82.53, 2 -HMV00047, 9,60NNW_HMV ,37.36,-82.61, 2 +HMV00013, 9,20ESE_HMV ,36.31,-81.75, 2 +HMV00014, 9,30ESE_HMV ,36.25,-81.56, 2 +HMV00015, 9,40ESE_HMV ,36.18,-81.37, 2 +HMV00016, 9,50ESE_HMV ,36.12,-81.18, 2 +HMV00017, 9,20SE_HMV ,36.20,-81.84, 2 +HMV00018, 9,30SE_HMV ,36.09,-81.69, 2 +HMV00019, 9,40SE_HMV ,35.97,-81.55, 2 +HMV00020, 9,50SE_HMV ,35.85,-81.40, 2 +HMV00021, 9,20SSE_HMV ,36.13,-81.97, 2 +HMV00022, 9,30SSE_HMV ,35.98,-81.89, 2 +HMV00023, 9,40SSE_HMV ,35.82,-81.82, 2 +HMV00024, 9,50SSE_HMV ,35.67,-81.74, 2 +HMV00025, 9,20S_HMV ,36.11,-82.13, 2 +HMV00026, 9,30S_HMV ,35.94,-82.13, 2 +HMV00027, 9,40S_HMV ,35.77,-82.13, 2 +HMV00028, 9,20SSW_HMV ,36.13,-82.29, 2 +HMV00029, 9,30SSW_HMV ,35.98,-82.37, 2 +HMV00030, 9,40SSW_HMV ,35.82,-82.44, 2 +HMV00031, 9,50SSW_HMV ,35.67,-82.52, 2 +HMV00032, 9,20SW_HMV ,36.20,-82.42, 2 +HMV00033, 9,30SW_HMV ,36.09,-82.57, 2 +HMV00034, 9,40SW_HMV ,35.97,-82.71, 2 +HMV00035, 9,50SW_HMV ,35.85,-82.86, 2 +HMV00036, 9,20WSW_HMV ,36.31,-82.51, 2 +HMV00037, 9,30WSW_HMV ,36.25,-82.70, 2 +HMV00038, 9,40WSW_HMV ,36.18,-82.89, 2 +HMV00039, 9,50WSW_HMV ,36.12,-83.08, 2 +HMV00040, 9,20W_HMV ,36.44,-82.54, 2 +HMV00041, 9,30W_HMV ,36.44,-82.75, 2 +HMV00042, 9,40W_HMV ,36.44,-82.96, 2 +HMV00043, 9,20WNW_HMV ,36.57,-82.51, 2 +HMV00044, 9,30WNW_HMV ,36.63,-82.71, 2 +HMV00045, 9,40WNW_HMV ,36.69,-82.90, 2 +HMV00046, 9,20NW_HMV ,36.68,-82.42, 2 +HMV00047, 9,30NW_HMV ,36.79,-82.57, 2 +HMV00048, 9,40NW_HMV ,36.91,-82.72, 2 +HMV00049, 9,50NW_HMV ,37.03,-82.87, 2 +HMV00050, 9,20NNW_HMV ,36.75,-82.29, 2 +HMV00051, 9,30NNW_HMV ,36.90,-82.37, 2 +HMV00052, 9,40NNW_HMV ,37.06,-82.45, 2 +HMV00053, 9,50NNW_HMV ,37.21,-82.53, 2 +HMV00054, 9,60NNW_HMV ,37.36,-82.61, 2 CLE00000, 9,CLE ,41.42,-81.85, 1 CLE00001, 9,20N_CLE ,41.75,-81.85, 2 CLE00002, 9,30N_CLE ,41.92,-81.85, 2 @@ -4471,51 +4498,52 @@ SRQ00020, 9,30SSW_SRQ ,26.94,-82.76, 2 SRQ00021, 9,40SSW_SRQ ,26.78,-82.84, 2 SRQ00022, 9,50SSW_SRQ ,26.63,-82.91, 2 SRQ00023, 9,60SSW_SRQ ,26.48,-82.98, 2 -SRQ00024, 9,20SW_SRQ ,27.16,-82.81, 2 -SRQ00025, 9,30SW_SRQ ,27.05,-82.95, 2 -SRQ00026, 9,40SW_SRQ ,26.93,-83.08, 2 -SRQ00027, 9,50SW_SRQ ,26.81,-83.21, 2 -SRQ00028, 9,60SW_SRQ ,26.69,-83.34, 2 -SRQ00029, 9,70SW_SRQ ,26.57,-83.47, 2 -SRQ00030, 9,80SW_SRQ ,26.45,-83.60, 2 -SRQ00031, 9,90SW_SRQ ,26.34,-83.73, 2 -SRQ00032, 9,100SW_SRQ ,26.22,-83.86, 2 -SRQ00033, 9,110SW_SRQ ,26.10,-83.99, 2 -SRQ00034, 9,120SW_SRQ ,25.98,-84.12, 2 -SRQ00035, 9,130SW_SRQ ,25.86,-84.25, 2 -SRQ00036, 9,140SW_SRQ ,25.74,-84.38, 2 -SRQ00037, 9,150SW_SRQ ,25.62,-84.51, 2 -SRQ00038, 9,160SW_SRQ ,25.50,-84.64, 2 -SRQ00039, 9,170SW_SRQ ,25.38,-84.77, 2 -SRQ00040, 9,20WSW_SRQ ,27.27,-82.90, 2 -SRQ00041, 9,30WSW_SRQ ,27.21,-83.07, 2 -SRQ00042, 9,40WSW_SRQ ,27.14,-83.24, 2 -SRQ00043, 9,50WSW_SRQ ,27.08,-83.41, 2 -SRQ00044, 9,60WSW_SRQ ,27.01,-83.59, 2 -SRQ00045, 9,70WSW_SRQ ,26.95,-83.76, 2 -SRQ00046, 9,80WSW_SRQ ,26.88,-83.93, 2 -SRQ00047, 9,90WSW_SRQ ,26.82,-84.10, 2 -SRQ00048, 9,100WSW_SRQ ,26.75,-84.27, 2 -SRQ00049, 9,110WSW_SRQ ,26.69,-84.44, 2 -SRQ00050, 9,120WSW_SRQ ,26.62,-84.62, 2 -SRQ00051, 9,130WSW_SRQ ,26.55,-84.79, 2 -SRQ00052, 9,140WSW_SRQ ,26.49,-84.96, 2 -SRQ00053, 9,150WSW_SRQ ,26.42,-85.13, 2 -SRQ00054, 9,160WSW_SRQ ,26.35,-85.30, 2 -SRQ00055, 9,170WSW_SRQ ,26.29,-85.47, 2 -SRQ00056, 9,180WSW_SRQ ,26.22,-85.64, 2 -SRQ00057, 9,190WSW_SRQ ,26.15,-85.81, 2 -SRQ00058, 9,200WSW_SRQ ,26.08,-85.98, 2 -SRQ00059, 9,210WSW_SRQ ,26.02,-86.15, 2 -SRQ00060, 9,220WSW_SRQ ,25.95,-86.31, 2 -SRQ00061, 9,230WSW_SRQ ,25.88,-86.48, 2 -SRQ00062, 9,240WSW_SRQ ,25.81,-86.65, 2 -SRQ00063, 9,20W_SRQ ,27.40,-82.93, 2 -SRQ00064, 9,30W_SRQ ,27.40,-83.11, 2 -SRQ00065, 9,40W_SRQ ,27.40,-83.30, 2 -SRQ00066, 9,50W_SRQ ,27.40,-83.49, 2 -SRQ00067, 9,60W_SRQ ,27.40,-83.68, 2 -SRQ00068, 9,20WNW_SRQ ,27.53,-82.90, 2 +SRQ00024, 9,70SSW_SRQ ,26.32,-83.05, 2 +SRQ00025, 9,20SW_SRQ ,27.16,-82.81, 2 +SRQ00026, 9,30SW_SRQ ,27.05,-82.95, 2 +SRQ00027, 9,40SW_SRQ ,26.93,-83.08, 2 +SRQ00028, 9,50SW_SRQ ,26.81,-83.21, 2 +SRQ00029, 9,60SW_SRQ ,26.69,-83.34, 2 +SRQ00030, 9,70SW_SRQ ,26.57,-83.47, 2 +SRQ00031, 9,80SW_SRQ ,26.45,-83.60, 2 +SRQ00032, 9,90SW_SRQ ,26.34,-83.73, 2 +SRQ00033, 9,100SW_SRQ ,26.22,-83.86, 2 +SRQ00034, 9,110SW_SRQ ,26.10,-83.99, 2 +SRQ00035, 9,120SW_SRQ ,25.98,-84.12, 2 +SRQ00036, 9,130SW_SRQ ,25.86,-84.25, 2 +SRQ00037, 9,140SW_SRQ ,25.74,-84.38, 2 +SRQ00038, 9,150SW_SRQ ,25.62,-84.51, 2 +SRQ00039, 9,160SW_SRQ ,25.50,-84.64, 2 +SRQ00040, 9,170SW_SRQ ,25.38,-84.77, 2 +SRQ00041, 9,20WSW_SRQ ,27.27,-82.90, 2 +SRQ00042, 9,30WSW_SRQ ,27.21,-83.07, 2 +SRQ00043, 9,40WSW_SRQ ,27.14,-83.24, 2 +SRQ00044, 9,50WSW_SRQ ,27.08,-83.41, 2 +SRQ00045, 9,60WSW_SRQ ,27.01,-83.59, 2 +SRQ00046, 9,70WSW_SRQ ,26.95,-83.76, 2 +SRQ00047, 9,80WSW_SRQ ,26.88,-83.93, 2 +SRQ00048, 9,90WSW_SRQ ,26.82,-84.10, 2 +SRQ00049, 9,100WSW_SRQ ,26.75,-84.27, 2 +SRQ00050, 9,110WSW_SRQ ,26.69,-84.44, 2 +SRQ00051, 9,120WSW_SRQ ,26.62,-84.62, 2 +SRQ00052, 9,130WSW_SRQ ,26.55,-84.79, 2 +SRQ00053, 9,140WSW_SRQ ,26.49,-84.96, 2 +SRQ00054, 9,150WSW_SRQ ,26.42,-85.13, 2 +SRQ00055, 9,160WSW_SRQ ,26.35,-85.30, 2 +SRQ00056, 9,170WSW_SRQ ,26.29,-85.47, 2 +SRQ00057, 9,180WSW_SRQ ,26.22,-85.64, 2 +SRQ00058, 9,190WSW_SRQ ,26.15,-85.81, 2 +SRQ00059, 9,200WSW_SRQ ,26.08,-85.98, 2 +SRQ00060, 9,210WSW_SRQ ,26.02,-86.15, 2 +SRQ00061, 9,220WSW_SRQ ,25.95,-86.31, 2 +SRQ00062, 9,230WSW_SRQ ,25.88,-86.48, 2 +SRQ00063, 9,240WSW_SRQ ,25.81,-86.65, 2 +SRQ00064, 9,20W_SRQ ,27.40,-82.93, 2 +SRQ00065, 9,30W_SRQ ,27.40,-83.11, 2 +SRQ00066, 9,40W_SRQ ,27.40,-83.30, 2 +SRQ00067, 9,50W_SRQ ,27.40,-83.49, 2 +SRQ00068, 9,60W_SRQ ,27.40,-83.68, 2 +SRQ00069, 9,20WNW_SRQ ,27.53,-82.90, 2 APE00000, 9,APE ,40.15,-82.59, 1 APE00001, 9,20N_APE ,40.48,-82.59, 2 APE00002, 9,30N_APE ,40.65,-82.59, 2 @@ -4590,36 +4618,37 @@ PIE00021, 9,30WSW_PIE ,27.72,-83.20, 2 PIE00022, 9,40WSW_PIE ,27.65,-83.37, 2 PIE00023, 9,50WSW_PIE ,27.59,-83.55, 2 PIE00024, 9,60WSW_PIE ,27.52,-83.72, 2 -PIE00025, 9,20W_PIE ,27.91,-83.06, 2 -PIE00026, 9,30W_PIE ,27.91,-83.25, 2 -PIE00027, 9,40W_PIE ,27.91,-83.43, 2 -PIE00028, 9,50W_PIE ,27.91,-83.62, 2 -PIE00029, 9,60W_PIE ,27.91,-83.81, 2 -PIE00030, 9,70W_PIE ,27.90,-84.00, 2 -PIE00031, 9,80W_PIE ,27.90,-84.19, 2 -PIE00032, 9,90W_PIE ,27.90,-84.38, 2 -PIE00033, 9,100W_PIE ,27.90,-84.56, 2 -PIE00034, 9,110W_PIE ,27.89,-84.75, 2 -PIE00035, 9,120W_PIE ,27.89,-84.94, 2 -PIE00036, 9,130W_PIE ,27.89,-85.13, 2 -PIE00037, 9,140W_PIE ,27.88,-85.32, 2 -PIE00038, 9,150W_PIE ,27.88,-85.51, 2 -PIE00039, 9,160W_PIE ,27.88,-85.69, 2 -PIE00040, 9,170W_PIE ,27.87,-85.88, 2 -PIE00041, 9,20WNW_PIE ,28.04,-83.03, 2 -PIE00042, 9,30WNW_PIE ,28.10,-83.20, 2 -PIE00043, 9,40WNW_PIE ,28.16,-83.38, 2 -PIE00044, 9,50WNW_PIE ,28.23,-83.55, 2 -PIE00045, 9,60WNW_PIE ,28.29,-83.73, 2 -PIE00046, 9,70WNW_PIE ,28.35,-83.90, 2 -PIE00047, 9,80WNW_PIE ,28.41,-84.08, 2 -PIE00048, 9,20NW_PIE ,28.15,-82.95, 2 -PIE00049, 9,30NW_PIE ,28.26,-83.08, 2 -PIE00050, 9,40NW_PIE ,28.38,-83.22, 2 -PIE00051, 9,50NW_PIE ,28.50,-83.35, 2 -PIE00052, 9,20NNW_PIE ,28.22,-82.82, 2 -PIE00053, 9,30NNW_PIE ,28.37,-82.90, 2 -PIE00054, 9,40NNW_PIE ,28.53,-82.97, 2 +PIE00025, 9,70WSW_PIE ,27.46,-83.89, 2 +PIE00026, 9,20W_PIE ,27.91,-83.06, 2 +PIE00027, 9,30W_PIE ,27.91,-83.25, 2 +PIE00028, 9,40W_PIE ,27.91,-83.43, 2 +PIE00029, 9,50W_PIE ,27.91,-83.62, 2 +PIE00030, 9,60W_PIE ,27.91,-83.81, 2 +PIE00031, 9,70W_PIE ,27.90,-84.00, 2 +PIE00032, 9,80W_PIE ,27.90,-84.19, 2 +PIE00033, 9,90W_PIE ,27.90,-84.38, 2 +PIE00034, 9,100W_PIE ,27.90,-84.56, 2 +PIE00035, 9,110W_PIE ,27.89,-84.75, 2 +PIE00036, 9,120W_PIE ,27.89,-84.94, 2 +PIE00037, 9,130W_PIE ,27.89,-85.13, 2 +PIE00038, 9,140W_PIE ,27.88,-85.32, 2 +PIE00039, 9,150W_PIE ,27.88,-85.51, 2 +PIE00040, 9,160W_PIE ,27.88,-85.69, 2 +PIE00041, 9,170W_PIE ,27.87,-85.88, 2 +PIE00042, 9,20WNW_PIE ,28.04,-83.03, 2 +PIE00043, 9,30WNW_PIE ,28.10,-83.20, 2 +PIE00044, 9,40WNW_PIE ,28.16,-83.38, 2 +PIE00045, 9,50WNW_PIE ,28.23,-83.55, 2 +PIE00046, 9,60WNW_PIE ,28.29,-83.73, 2 +PIE00047, 9,70WNW_PIE ,28.35,-83.90, 2 +PIE00048, 9,80WNW_PIE ,28.41,-84.08, 2 +PIE00049, 9,20NW_PIE ,28.15,-82.95, 2 +PIE00050, 9,30NW_PIE ,28.26,-83.08, 2 +PIE00051, 9,40NW_PIE ,28.38,-83.22, 2 +PIE00052, 9,50NW_PIE ,28.50,-83.35, 2 +PIE00053, 9,20NNW_PIE ,28.22,-82.82, 2 +PIE00054, 9,30NNW_PIE ,28.37,-82.90, 2 +PIE00055, 9,40NNW_PIE ,28.53,-82.97, 2 ECK00000, 9,ECK ,43.26,-82.72, 1 ECK00001, 9,20N_ECK ,43.59,-82.72, 2 ECK00002, 9,30N_ECK ,43.76,-82.72, 2 @@ -4638,27 +4667,35 @@ ECK00014, 9,30E_ECK ,43.26,-82.03, 2 ECK00015, 9,40E_ECK ,43.26,-81.81, 2 ECK00016, 9,50E_ECK ,43.25,-81.58, 2 ECK00017, 9,60E_ECK ,43.25,-81.35, 2 -ECK00018, 9,50ESE_ECK ,42.94,-81.67, 2 -ECK00019, 9,60ESE_ECK ,42.87,-81.46, 2 -ECK00020, 9,70ESE_ECK ,42.80,-81.25, 2 -ECK00021, 9,60SE_ECK ,42.55,-81.76, 2 -ECK00022, 9,70SE_ECK ,42.43,-81.60, 2 -ECK00023, 9,50SSE_ECK ,42.49,-82.29, 2 -ECK00024, 9,60SSE_ECK ,42.34,-82.20, 2 -ECK00025, 9,20S_ECK ,42.93,-82.72, 2 -ECK00026, 9,30S_ECK ,42.76,-82.72, 2 -ECK00027, 9,40S_ECK ,42.59,-82.72, 2 -ECK00028, 9,20SSW_ECK ,42.95,-82.89, 2 -ECK00029, 9,30SSW_ECK ,42.80,-82.98, 2 -ECK00030, 9,40SSW_ECK ,42.64,-83.07, 2 -ECK00031, 9,20SW_ECK ,43.02,-83.04, 2 -ECK00032, 9,30SW_ECK ,42.91,-83.20, 2 -ECK00033, 9,20WSW_ECK ,43.13,-83.14, 2 -ECK00034, 9,20W_ECK ,43.26,-83.18, 2 -ECK00035, 9,20WNW_ECK ,43.39,-83.14, 2 -ECK00036, 9,20NW_ECK ,43.50,-83.04, 2 -ECK00037, 9,30NW_ECK ,43.61,-83.21, 2 -ECK00038, 9,20NNW_ECK ,43.57,-82.90, 2 +ECK00018, 9,20ESE_ECK ,43.13,-82.30, 2 +ECK00019, 9,30ESE_ECK ,43.07,-82.09, 2 +ECK00020, 9,40ESE_ECK ,43.00,-81.88, 2 +ECK00021, 9,50ESE_ECK ,42.94,-81.67, 2 +ECK00022, 9,60ESE_ECK ,42.87,-81.46, 2 +ECK00023, 9,70ESE_ECK ,42.80,-81.25, 2 +ECK00024, 9,20SE_ECK ,43.02,-82.40, 2 +ECK00025, 9,50SE_ECK ,42.67,-81.92, 2 +ECK00026, 9,60SE_ECK ,42.55,-81.76, 2 +ECK00027, 9,70SE_ECK ,42.43,-81.60, 2 +ECK00028, 9,20SSE_ECK ,42.95,-82.55, 2 +ECK00029, 9,30SSE_ECK ,42.80,-82.46, 2 +ECK00030, 9,40SSE_ECK ,42.64,-82.37, 2 +ECK00031, 9,50SSE_ECK ,42.49,-82.29, 2 +ECK00032, 9,60SSE_ECK ,42.34,-82.20, 2 +ECK00033, 9,20S_ECK ,42.93,-82.72, 2 +ECK00034, 9,30S_ECK ,42.76,-82.72, 2 +ECK00035, 9,40S_ECK ,42.59,-82.72, 2 +ECK00036, 9,20SSW_ECK ,42.95,-82.89, 2 +ECK00037, 9,30SSW_ECK ,42.80,-82.98, 2 +ECK00038, 9,40SSW_ECK ,42.64,-83.07, 2 +ECK00039, 9,20SW_ECK ,43.02,-83.04, 2 +ECK00040, 9,30SW_ECK ,42.91,-83.20, 2 +ECK00041, 9,20WSW_ECK ,43.13,-83.14, 2 +ECK00042, 9,20W_ECK ,43.26,-83.18, 2 +ECK00043, 9,20WNW_ECK ,43.39,-83.14, 2 +ECK00044, 9,20NW_ECK ,43.50,-83.04, 2 +ECK00045, 9,30NW_ECK ,43.61,-83.21, 2 +ECK00046, 9,20NNW_ECK ,43.57,-82.90, 2 CTY00000, 9,CTY ,29.60,-83.05, 1 CTY00001, 9,20N_CTY ,29.93,-83.05, 2 CTY00002, 9,30N_CTY ,30.10,-83.05, 2 @@ -4997,7 +5034,7 @@ ROD00002, 9,30N_ROD ,40.79,-84.04, 2 ROD00003, 9,40N_ROD ,40.96,-84.04, 2 ROD00004, 9,20NNE_ROD ,40.60,-83.87, 2 ROD00005, 9,30NNE_ROD ,40.75,-83.79, 2 -ROD00006, 9,40NNE_ROD ,40.90,-83.70, 2 +ROD00006, 9,40NNE_ROD ,40.91,-83.70, 2 ROD00007, 9,50NNE_ROD ,41.06,-83.62, 2 ROD00008, 9,20NE_ROD ,40.53,-83.73, 2 ROD00009, 9,30NE_ROD ,40.64,-83.57, 2 @@ -5132,52 +5169,54 @@ LOZ00060, 9,40NW_LOZ ,37.50,-84.71, 2 LOZ00061, 9,20NNW_LOZ ,37.34,-84.28, 2 LOZ00062, 9,30NNW_LOZ ,37.49,-84.36, 2 LOZ00063, 9,40NNW_LOZ ,37.65,-84.44, 2 -ABY00000, 9,ABY ,31.65,-84.30, 1 -ABY00001, 9,20N_ABY ,31.98,-84.30, 2 -ABY00002, 9,30N_ABY ,32.15,-84.30, 2 -ABY00003, 9,20NNE_ABY ,31.96,-84.15, 2 -ABY00004, 9,20NE_ABY ,31.89,-84.02, 2 -ABY00005, 9,30NE_ABY ,32.00,-83.88, 2 -ABY00006, 9,20ENE_ABY ,31.78,-83.94, 2 -ABY00007, 9,30ENE_ABY ,31.84,-83.76, 2 -ABY00008, 9,20E_ABY ,31.65,-83.91, 2 -ABY00009, 9,30E_ABY ,31.65,-83.71, 2 -ABY00010, 9,40E_ABY ,31.65,-83.52, 2 -ABY00011, 9,20ESE_ABY ,31.52,-83.94, 2 -ABY00012, 9,30ESE_ABY ,31.46,-83.76, 2 -ABY00013, 9,40ESE_ABY ,31.39,-83.58, 2 -ABY00014, 9,20SE_ABY ,31.41,-84.02, 2 -ABY00015, 9,30SE_ABY ,31.30,-83.89, 2 -ABY00016, 9,40SE_ABY ,31.18,-83.75, 2 -ABY00017, 9,50SE_ABY ,31.06,-83.61, 2 -ABY00018, 9,20SSE_ABY ,31.34,-84.15, 2 -ABY00019, 9,30SSE_ABY ,31.19,-84.08, 2 -ABY00020, 9,40SSE_ABY ,31.03,-84.00, 2 -ABY00021, 9,20S_ABY ,31.32,-84.30, 2 -ABY00022, 9,30S_ABY ,31.15,-84.30, 2 -ABY00023, 9,20SSW_ABY ,31.34,-84.45, 2 -ABY00024, 9,30SSW_ABY ,31.19,-84.52, 2 -ABY00025, 9,20SW_ABY ,31.41,-84.58, 2 -ABY00026, 9,30SW_ABY ,31.30,-84.71, 2 -ABY00027, 9,20WSW_ABY ,31.52,-84.66, 2 -ABY00028, 9,30WSW_ABY ,31.46,-84.84, 2 -ABY00029, 9,40WSW_ABY ,31.39,-85.02, 2 -ABY00030, 9,50WSW_ABY ,31.33,-85.20, 2 -ABY00031, 9,60WSW_ABY ,31.26,-85.38, 2 -ABY00032, 9,20W_ABY ,31.65,-84.69, 2 -ABY00033, 9,30W_ABY ,31.65,-84.89, 2 -ABY00034, 9,40W_ABY ,31.65,-85.08, 2 -ABY00035, 9,50W_ABY ,31.65,-85.28, 2 -ABY00036, 9,20WNW_ABY ,31.78,-84.66, 2 -ABY00037, 9,30WNW_ABY ,31.84,-84.84, 2 -ABY00038, 9,40WNW_ABY ,31.90,-85.03, 2 -ABY00039, 9,50WNW_ABY ,31.97,-85.21, 2 -ABY00040, 9,20NW_ABY ,31.89,-84.58, 2 -ABY00041, 9,30NW_ABY ,32.00,-84.72, 2 -ABY00042, 9,40NW_ABY ,32.12,-84.86, 2 -ABY00043, 9,20NNW_ABY ,31.96,-84.45, 2 -ABY00044, 9,30NNW_ABY ,32.11,-84.53, 2 -ABY00045, 9,40NNW_ABY ,32.27,-84.60, 2 +PZD00000, 9,PZD ,31.66,-84.29, 1 +PZD00001, 9,20N_PZD ,31.99,-84.29, 2 +PZD00002, 9,30N_PZD ,32.16,-84.29, 2 +PZD00003, 9,20NNE_PZD ,31.97,-84.14, 2 +PZD00004, 9,20NE_PZD ,31.90,-84.01, 2 +PZD00005, 9,30NE_PZD ,32.01,-83.87, 2 +PZD00006, 9,20ENE_PZD ,31.79,-83.93, 2 +PZD00007, 9,30ENE_PZD ,31.85,-83.75, 2 +PZD00008, 9,20E_PZD ,31.66,-83.90, 2 +PZD00009, 9,30E_PZD ,31.66,-83.70, 2 +PZD00010, 9,40E_PZD ,31.66,-83.51, 2 +PZD00011, 9,20ESE_PZD ,31.53,-83.93, 2 +PZD00012, 9,30ESE_PZD ,31.47,-83.75, 2 +PZD00013, 9,40ESE_PZD ,31.40,-83.57, 2 +PZD00014, 9,20SE_PZD ,31.42,-84.01, 2 +PZD00015, 9,30SE_PZD ,31.31,-83.88, 2 +PZD00016, 9,40SE_PZD ,31.19,-83.74, 2 +PZD00017, 9,50SE_PZD ,31.07,-83.60, 2 +PZD00018, 9,20SSE_PZD ,31.35,-84.14, 2 +PZD00019, 9,30SSE_PZD ,31.20,-84.07, 2 +PZD00020, 9,40SSE_PZD ,31.04,-83.99, 2 +PZD00021, 9,20S_PZD ,31.33,-84.29, 2 +PZD00022, 9,30S_PZD ,31.16,-84.29, 2 +PZD00023, 9,20SSW_PZD ,31.35,-84.44, 2 +PZD00024, 9,30SSW_PZD ,31.20,-84.51, 2 +PZD00025, 9,40SSW_PZD ,31.04,-84.59, 2 +PZD00026, 9,20SW_PZD ,31.42,-84.57, 2 +PZD00027, 9,30SW_PZD ,31.31,-84.70, 2 +PZD00028, 9,40SW_PZD ,31.19,-84.84, 2 +PZD00029, 9,20WSW_PZD ,31.53,-84.65, 2 +PZD00030, 9,30WSW_PZD ,31.47,-84.83, 2 +PZD00031, 9,40WSW_PZD ,31.40,-85.01, 2 +PZD00032, 9,50WSW_PZD ,31.34,-85.19, 2 +PZD00033, 9,60WSW_PZD ,31.27,-85.37, 2 +PZD00034, 9,20W_PZD ,31.66,-84.68, 2 +PZD00035, 9,30W_PZD ,31.66,-84.88, 2 +PZD00036, 9,40W_PZD ,31.66,-85.07, 2 +PZD00037, 9,50W_PZD ,31.66,-85.27, 2 +PZD00038, 9,20WNW_PZD ,31.79,-84.65, 2 +PZD00039, 9,30WNW_PZD ,31.85,-84.83, 2 +PZD00040, 9,40WNW_PZD ,31.91,-85.02, 2 +PZD00041, 9,50WNW_PZD ,31.98,-85.20, 2 +PZD00042, 9,20NW_PZD ,31.90,-84.57, 2 +PZD00043, 9,30NW_PZD ,32.01,-84.71, 2 +PZD00044, 9,40NW_PZD ,32.13,-84.85, 2 +PZD00045, 9,20NNW_PZD ,31.97,-84.44, 2 +PZD00046, 9,30NNW_PZD ,32.12,-84.52, 2 +PZD00047, 9,40NNW_PZD ,32.28,-84.59, 2 SSM00000, 9,SSM ,46.41,-84.31, 1 SSM00001, 9,20N_SSM ,46.74,-84.31, 2 SSM00002, 9,30N_SSM ,46.91,-84.31, 2 @@ -5410,9 +5449,14 @@ TLH00059, 9,30W_TLH ,30.56,-84.95, 2 TLH00060, 9,40W_TLH ,30.56,-85.14, 2 TLH00061, 9,50W_TLH ,30.56,-85.34, 2 TLH00062, 9,20WNW_TLH ,30.69,-84.73, 2 -TLH00063, 9,60WNW_TLH ,30.94,-85.45, 2 -TLH00064, 9,20NW_TLH ,30.80,-84.64, 2 -TLH00065, 9,20NNW_TLH ,30.87,-84.52, 2 +TLH00063, 9,30WNW_TLH ,30.75,-84.91, 2 +TLH00064, 9,40WNW_TLH ,30.81,-85.09, 2 +TLH00065, 9,50WNW_TLH ,30.88,-85.27, 2 +TLH00066, 9,60WNW_TLH ,30.94,-85.45, 2 +TLH00067, 9,20NW_TLH ,30.80,-84.64, 2 +TLH00068, 9,30NW_TLH ,30.91,-84.78, 2 +TLH00069, 9,20NNW_TLH ,30.87,-84.52, 2 +TLH00070, 9,30NNW_TLH ,31.02,-84.59, 2 ATL00000, 9,ATL ,33.63,-84.44, 1 ATL00001, 9,20N_ATL ,33.96,-84.44, 2 ATL00002, 9,30N_ATL ,34.13,-84.44, 2 @@ -5756,56 +5800,56 @@ TVC00062, 9,20NNW_TVC ,44.98,-85.73, 2 TVC00063, 9,30NNW_TVC ,45.13,-85.82, 2 TVC00064, 9,40NNW_TVC ,45.28,-85.91, 2 TVC00065, 9,50NNW_TVC ,45.44,-86.00, 2 -LOU00000, 9,LOU ,38.10,-85.58, 1 -LOU00001, 9,20N_LOU ,38.43,-85.58, 2 -LOU00002, 9,30N_LOU ,38.60,-85.58, 2 -LOU00003, 9,20NNE_LOU ,38.41,-85.42, 2 -LOU00004, 9,20NE_LOU ,38.34,-85.28, 2 -LOU00005, 9,20ENE_LOU ,38.23,-85.19, 2 -LOU00006, 9,30ENE_LOU ,38.29,-84.99, 2 -LOU00007, 9,20E_LOU ,38.10,-85.16, 2 -LOU00008, 9,30E_LOU ,38.10,-84.95, 2 -LOU00009, 9,40E_LOU ,38.10,-84.73, 2 -LOU00010, 9,20ESE_LOU ,37.97,-85.19, 2 -LOU00011, 9,30ESE_LOU ,37.91,-84.99, 2 -LOU00012, 9,40ESE_LOU ,37.84,-84.80, 2 -LOU00013, 9,50ESE_LOU ,37.78,-84.61, 2 -LOU00014, 9,20SE_LOU ,37.86,-85.28, 2 -LOU00015, 9,30SE_LOU ,37.75,-85.13, 2 -LOU00016, 9,40SE_LOU ,37.63,-84.99, 2 -LOU00017, 9,50SE_LOU ,37.51,-84.84, 2 -LOU00018, 9,20SSE_LOU ,37.79,-85.42, 2 -LOU00019, 9,30SSE_LOU ,37.64,-85.34, 2 -LOU00020, 9,40SSE_LOU ,37.48,-85.26, 2 -LOU00021, 9,50SSE_LOU ,37.33,-85.18, 2 -LOU00022, 9,20S_LOU ,37.77,-85.58, 2 -LOU00023, 9,30S_LOU ,37.60,-85.58, 2 -LOU00024, 9,40S_LOU ,37.43,-85.58, 2 -LOU00025, 9,50S_LOU ,37.27,-85.58, 2 -LOU00026, 9,20SSW_LOU ,37.79,-85.74, 2 -LOU00027, 9,30SSW_LOU ,37.64,-85.82, 2 -LOU00028, 9,40SSW_LOU ,37.48,-85.90, 2 -LOU00029, 9,20SW_LOU ,37.86,-85.88, 2 -LOU00030, 9,30SW_LOU ,37.75,-86.03, 2 -LOU00031, 9,40SW_LOU ,37.63,-86.17, 2 -LOU00032, 9,20WSW_LOU ,37.97,-85.97, 2 -LOU00033, 9,30WSW_LOU ,37.91,-86.17, 2 -LOU00034, 9,40WSW_LOU ,37.84,-86.36, 2 -LOU00035, 9,50WSW_LOU ,37.78,-86.55, 2 -LOU00036, 9,20W_LOU ,38.10,-86.00, 2 -LOU00037, 9,30W_LOU ,38.10,-86.21, 2 -LOU00038, 9,40W_LOU ,38.10,-86.43, 2 -LOU00039, 9,50W_LOU ,38.10,-86.64, 2 -LOU00040, 9,20WNW_LOU ,38.23,-85.97, 2 -LOU00041, 9,30WNW_LOU ,38.29,-86.17, 2 -LOU00042, 9,40WNW_LOU ,38.35,-86.36, 2 -LOU00043, 9,50WNW_LOU ,38.41,-86.56, 2 -LOU00044, 9,20NW_LOU ,38.34,-85.88, 2 -LOU00045, 9,30NW_LOU ,38.45,-86.03, 2 -LOU00046, 9,40NW_LOU ,38.57,-86.18, 2 -LOU00047, 9,20NNW_LOU ,38.41,-85.74, 2 -LOU00048, 9,30NNW_LOU ,38.56,-85.82, 2 -LOU00049, 9,40NNW_LOU ,38.72,-85.91, 2 +IIU00000, 9,IIU ,38.10,-85.58, 1 +IIU00001, 9,20N_IIU ,38.43,-85.58, 2 +IIU00002, 9,30N_IIU ,38.60,-85.58, 2 +IIU00003, 9,20NNE_IIU ,38.41,-85.42, 2 +IIU00004, 9,20NE_IIU ,38.34,-85.28, 2 +IIU00005, 9,20ENE_IIU ,38.23,-85.19, 2 +IIU00006, 9,30ENE_IIU ,38.29,-84.99, 2 +IIU00007, 9,20E_IIU ,38.10,-85.16, 2 +IIU00008, 9,30E_IIU ,38.10,-84.95, 2 +IIU00009, 9,40E_IIU ,38.10,-84.73, 2 +IIU00010, 9,20ESE_IIU ,37.97,-85.19, 2 +IIU00011, 9,30ESE_IIU ,37.91,-84.99, 2 +IIU00012, 9,40ESE_IIU ,37.84,-84.80, 2 +IIU00013, 9,50ESE_IIU ,37.78,-84.61, 2 +IIU00014, 9,20SE_IIU ,37.86,-85.28, 2 +IIU00015, 9,30SE_IIU ,37.75,-85.13, 2 +IIU00016, 9,40SE_IIU ,37.63,-84.99, 2 +IIU00017, 9,50SE_IIU ,37.51,-84.84, 2 +IIU00018, 9,20SSE_IIU ,37.79,-85.42, 2 +IIU00019, 9,30SSE_IIU ,37.64,-85.34, 2 +IIU00020, 9,40SSE_IIU ,37.48,-85.26, 2 +IIU00021, 9,50SSE_IIU ,37.33,-85.18, 2 +IIU00022, 9,20S_IIU ,37.77,-85.58, 2 +IIU00023, 9,30S_IIU ,37.60,-85.58, 2 +IIU00024, 9,40S_IIU ,37.43,-85.58, 2 +IIU00025, 9,50S_IIU ,37.27,-85.58, 2 +IIU00026, 9,20SSW_IIU ,37.79,-85.74, 2 +IIU00027, 9,30SSW_IIU ,37.64,-85.82, 2 +IIU00028, 9,40SSW_IIU ,37.48,-85.90, 2 +IIU00029, 9,20SW_IIU ,37.86,-85.88, 2 +IIU00030, 9,30SW_IIU ,37.75,-86.03, 2 +IIU00031, 9,40SW_IIU ,37.63,-86.17, 2 +IIU00032, 9,20WSW_IIU ,37.97,-85.97, 2 +IIU00033, 9,30WSW_IIU ,37.91,-86.17, 2 +IIU00034, 9,40WSW_IIU ,37.84,-86.36, 2 +IIU00035, 9,50WSW_IIU ,37.78,-86.55, 2 +IIU00036, 9,20W_IIU ,38.10,-86.00, 2 +IIU00037, 9,30W_IIU ,38.10,-86.21, 2 +IIU00038, 9,40W_IIU ,38.10,-86.43, 2 +IIU00039, 9,50W_IIU ,38.10,-86.64, 2 +IIU00040, 9,20WNW_IIU ,38.23,-85.97, 2 +IIU00041, 9,30WNW_IIU ,38.29,-86.17, 2 +IIU00042, 9,40WNW_IIU ,38.35,-86.36, 2 +IIU00043, 9,50WNW_IIU ,38.41,-86.56, 2 +IIU00044, 9,20NW_IIU ,38.34,-85.88, 2 +IIU00045, 9,30NW_IIU ,38.45,-86.03, 2 +IIU00046, 9,40NW_IIU ,38.57,-86.18, 2 +IIU00047, 9,20NNW_IIU ,38.41,-85.74, 2 +IIU00048, 9,30NNW_IIU ,38.56,-85.82, 2 +IIU00049, 9,40NNW_IIU ,38.72,-85.91, 2 MKG00000, 9,MKG ,43.17,-86.04, 1 MKG00001, 9,20N_MKG ,43.50,-86.04, 2 MKG00002, 9,30N_MKG ,43.67,-86.04, 2 @@ -6170,15 +6214,17 @@ CEW00072, 9,20WSW_CEW ,30.70,-87.04, 2 CEW00073, 9,30WSW_CEW ,30.64,-87.22, 2 CEW00074, 9,40WSW_CEW ,30.57,-87.39, 2 CEW00075, 9,20W_CEW ,30.83,-87.07, 2 -CEW00076, 9,20WNW_CEW ,30.96,-87.04, 2 -CEW00077, 9,20NW_CEW ,31.07,-86.95, 2 -CEW00078, 9,30NW_CEW ,31.18,-87.09, 2 -CEW00079, 9,40NW_CEW ,31.30,-87.23, 2 -CEW00080, 9,50NW_CEW ,31.42,-87.37, 2 -CEW00081, 9,60NW_CEW ,31.53,-87.51, 2 -CEW00082, 9,20NNW_CEW ,31.14,-86.83, 2 -CEW00083, 9,30NNW_CEW ,31.29,-86.90, 2 -CEW00084, 9,40NNW_CEW ,31.45,-86.98, 2 +CEW00076, 9,30W_CEW ,30.83,-87.26, 2 +CEW00077, 9,20WNW_CEW ,30.96,-87.04, 2 +CEW00078, 9,30WNW_CEW ,31.02,-87.22, 2 +CEW00079, 9,20NW_CEW ,31.07,-86.95, 2 +CEW00080, 9,30NW_CEW ,31.18,-87.09, 2 +CEW00081, 9,40NW_CEW ,31.30,-87.23, 2 +CEW00082, 9,50NW_CEW ,31.42,-87.37, 2 +CEW00083, 9,60NW_CEW ,31.53,-87.51, 2 +CEW00084, 9,20NNW_CEW ,31.14,-86.83, 2 +CEW00085, 9,30NNW_CEW ,31.29,-86.90, 2 +CEW00086, 9,40NNW_CEW ,31.45,-86.98, 2 VUZ00000, 9,VUZ ,33.67,-86.90, 1 VUZ00001, 9,20N_VUZ ,34.00,-86.90, 2 VUZ00002, 9,30N_VUZ ,34.17,-86.90, 2 @@ -6720,47 +6766,47 @@ SJI00009, 9,30NE_SJI ,31.08,-87.95, 2 SJI00010, 9,40NE_SJI ,31.20,-87.81, 2 SJI00011, 9,50NE_SJI ,31.32,-87.67, 2 SJI00012, 9,20ENE_SJI ,30.86,-88.00, 2 -SJI00013, 9,20E_SJI ,30.73,-87.97, 2 -SJI00014, 9,30E_SJI ,30.73,-87.78, 2 -SJI00015, 9,20ESE_SJI ,30.60,-88.00, 2 -SJI00016, 9,30ESE_SJI ,30.54,-87.82, 2 -SJI00017, 9,40ESE_SJI ,30.47,-87.65, 2 -SJI00018, 9,20SE_SJI ,30.49,-88.09, 2 -SJI00019, 9,30SE_SJI ,30.38,-87.95, 2 -SJI00020, 9,40SE_SJI ,30.26,-87.81, 2 -SJI00021, 9,50SE_SJI ,30.14,-87.68, 2 -SJI00022, 9,60SE_SJI ,30.02,-87.54, 2 -SJI00023, 9,20SSE_SJI ,30.42,-88.21, 2 -SJI00024, 9,30SSE_SJI ,30.27,-88.14, 2 -SJI00025, 9,40SSE_SJI ,30.11,-88.07, 2 -SJI00026, 9,50SSE_SJI ,29.96,-87.99, 2 -SJI00027, 9,60SSE_SJI ,29.81,-87.92, 2 -SJI00028, 9,70SSE_SJI ,29.65,-87.85, 2 -SJI00029, 9,80SSE_SJI ,29.50,-87.77, 2 -SJI00030, 9,90SSE_SJI ,29.34,-87.70, 2 -SJI00031, 9,100SSE_SJI ,29.19,-87.63, 2 -SJI00032, 9,110SSE_SJI ,29.03,-87.56, 2 -SJI00033, 9,120SSE_SJI ,28.88,-87.49, 2 -SJI00034, 9,130SSE_SJI ,28.73,-87.42, 2 -SJI00035, 9,20S_SJI ,30.40,-88.36, 2 -SJI00036, 9,30S_SJI ,30.23,-88.36, 2 -SJI00037, 9,40S_SJI ,30.06,-88.36, 2 -SJI00038, 9,50S_SJI ,29.90,-88.36, 2 -SJI00039, 9,60S_SJI ,29.73,-88.36, 2 -SJI00040, 9,70S_SJI ,29.56,-88.36, 2 -SJI00041, 9,80S_SJI ,29.40,-88.36, 2 -SJI00042, 9,90S_SJI ,29.23,-88.36, 2 -SJI00043, 9,20SSW_SJI ,30.42,-88.51, 2 -SJI00044, 9,30SSW_SJI ,30.27,-88.58, 2 -SJI00045, 9,40SSW_SJI ,30.11,-88.65, 2 -SJI00046, 9,50SSW_SJI ,29.96,-88.73, 2 -SJI00047, 9,60SSW_SJI ,29.81,-88.80, 2 -SJI00048, 9,70SSW_SJI ,29.65,-88.87, 2 -SJI00049, 9,20SW_SJI ,30.49,-88.63, 2 -SJI00050, 9,30SW_SJI ,30.38,-88.77, 2 -SJI00051, 9,40SW_SJI ,30.26,-88.91, 2 -SJI00052, 9,50SW_SJI ,30.14,-89.04, 2 -SJI00053, 9,60SW_SJI ,30.02,-89.18, 2 +SJI00013, 9,30ENE_SJI ,30.92,-87.82, 2 +SJI00014, 9,20E_SJI ,30.73,-87.97, 2 +SJI00015, 9,30E_SJI ,30.73,-87.78, 2 +SJI00016, 9,40E_SJI ,30.73,-87.58, 2 +SJI00017, 9,20ESE_SJI ,30.60,-88.00, 2 +SJI00018, 9,30ESE_SJI ,30.54,-87.82, 2 +SJI00019, 9,40ESE_SJI ,30.47,-87.65, 2 +SJI00020, 9,20SE_SJI ,30.49,-88.09, 2 +SJI00021, 9,30SE_SJI ,30.38,-87.95, 2 +SJI00022, 9,40SE_SJI ,30.26,-87.81, 2 +SJI00023, 9,50SE_SJI ,30.14,-87.68, 2 +SJI00024, 9,60SE_SJI ,30.02,-87.54, 2 +SJI00025, 9,20SSE_SJI ,30.42,-88.21, 2 +SJI00026, 9,30SSE_SJI ,30.27,-88.14, 2 +SJI00027, 9,40SSE_SJI ,30.11,-88.07, 2 +SJI00028, 9,50SSE_SJI ,29.96,-87.99, 2 +SJI00029, 9,60SSE_SJI ,29.81,-87.92, 2 +SJI00030, 9,70SSE_SJI ,29.65,-87.85, 2 +SJI00031, 9,80SSE_SJI ,29.50,-87.77, 2 +SJI00032, 9,90SSE_SJI ,29.34,-87.70, 2 +SJI00033, 9,100SSE_SJI ,29.19,-87.63, 2 +SJI00034, 9,110SSE_SJI ,29.03,-87.56, 2 +SJI00035, 9,120SSE_SJI ,28.88,-87.49, 2 +SJI00036, 9,130SSE_SJI ,28.73,-87.42, 2 +SJI00037, 9,20S_SJI ,30.40,-88.36, 2 +SJI00038, 9,30S_SJI ,30.23,-88.36, 2 +SJI00039, 9,40S_SJI ,30.06,-88.36, 2 +SJI00040, 9,50S_SJI ,29.90,-88.36, 2 +SJI00041, 9,60S_SJI ,29.73,-88.36, 2 +SJI00042, 9,70S_SJI ,29.56,-88.36, 2 +SJI00043, 9,80S_SJI ,29.40,-88.36, 2 +SJI00044, 9,90S_SJI ,29.23,-88.36, 2 +SJI00045, 9,20SSW_SJI ,30.42,-88.51, 2 +SJI00046, 9,30SSW_SJI ,30.27,-88.58, 2 +SJI00047, 9,40SSW_SJI ,30.11,-88.65, 2 +SJI00048, 9,50SSW_SJI ,29.96,-88.73, 2 +SJI00049, 9,60SSW_SJI ,29.81,-88.80, 2 +SJI00050, 9,20SW_SJI ,30.49,-88.63, 2 +SJI00051, 9,30SW_SJI ,30.38,-88.77, 2 +SJI00052, 9,40SW_SJI ,30.26,-88.91, 2 +SJI00053, 9,50SW_SJI ,30.14,-89.04, 2 SJI00054, 9,20WSW_SJI ,30.60,-88.72, 2 SJI00055, 9,30WSW_SJI ,30.54,-88.90, 2 SJI00056, 9,40WSW_SJI ,30.47,-89.07, 2 @@ -6868,77 +6914,76 @@ MEI00035, 9,60SSW_MEI ,31.46,-89.25, 2 MEI00036, 9,20SW_MEI ,32.14,-89.08, 2 MEI00037, 9,30SW_MEI ,32.03,-89.22, 2 MEI00038, 9,40SW_MEI ,31.91,-89.35, 2 -MEI00039, 9,50SW_MEI ,31.79,-89.49, 2 -MEI00040, 9,20WSW_MEI ,32.25,-89.16, 2 -MEI00041, 9,30WSW_MEI ,32.19,-89.35, 2 -MEI00042, 9,20W_MEI ,32.38,-89.19, 2 -MEI00043, 9,30W_MEI ,32.38,-89.39, 2 -MEI00044, 9,20WNW_MEI ,32.51,-89.16, 2 -MEI00045, 9,30WNW_MEI ,32.57,-89.35, 2 -MEI00046, 9,20NW_MEI ,32.62,-89.08, 2 -MEI00047, 9,30NW_MEI ,32.73,-89.22, 2 -MEI00048, 9,40NW_MEI ,32.85,-89.36, 2 -MEI00049, 9,20NNW_MEI ,32.69,-88.95, 2 -MEI00050, 9,30NNW_MEI ,32.84,-89.03, 2 -DEC00000, 9,DEC ,39.74,-88.86, 1 -DEC00001, 9,20N_DEC ,40.07,-88.86, 2 -DEC00002, 9,30N_DEC ,40.24,-88.86, 2 -DEC00003, 9,40N_DEC ,40.41,-88.86, 2 -DEC00004, 9,20NNE_DEC ,40.05,-88.69, 2 -DEC00005, 9,30NNE_DEC ,40.20,-88.61, 2 -DEC00006, 9,40NNE_DEC ,40.36,-88.53, 2 -DEC00007, 9,20NE_DEC ,39.98,-88.55, 2 -DEC00008, 9,30NE_DEC ,40.09,-88.40, 2 -DEC00009, 9,40NE_DEC ,40.21,-88.24, 2 -DEC00010, 9,20ENE_DEC ,39.87,-88.46, 2 -DEC00011, 9,30ENE_DEC ,39.93,-88.26, 2 -DEC00012, 9,40ENE_DEC ,39.99,-88.06, 2 -DEC00013, 9,20E_DEC ,39.74,-88.43, 2 -DEC00014, 9,30E_DEC ,39.74,-88.21, 2 -DEC00015, 9,40E_DEC ,39.74,-87.99, 2 -DEC00016, 9,20ESE_DEC ,39.61,-88.46, 2 -DEC00017, 9,30ESE_DEC ,39.55,-88.26, 2 -DEC00018, 9,40ESE_DEC ,39.48,-88.06, 2 -DEC00019, 9,20SE_DEC ,39.50,-88.55, 2 -DEC00020, 9,30SE_DEC ,39.39,-88.40, 2 -DEC00021, 9,40SE_DEC ,39.27,-88.25, 2 -DEC00022, 9,20SSE_DEC ,39.43,-88.69, 2 -DEC00023, 9,30SSE_DEC ,39.28,-88.61, 2 -DEC00024, 9,40SSE_DEC ,39.12,-88.53, 2 -DEC00025, 9,50SSE_DEC ,38.97,-88.45, 2 -DEC00026, 9,60SSE_DEC ,38.82,-88.37, 2 -DEC00027, 9,20S_DEC ,39.41,-88.86, 2 -DEC00028, 9,30S_DEC ,39.24,-88.86, 2 -DEC00029, 9,40S_DEC ,39.07,-88.86, 2 -DEC00030, 9,50S_DEC ,38.91,-88.86, 2 -DEC00031, 9,60S_DEC ,38.74,-88.86, 2 -DEC00032, 9,70S_DEC ,38.57,-88.86, 2 -DEC00033, 9,20SSW_DEC ,39.43,-89.03, 2 -DEC00034, 9,30SSW_DEC ,39.28,-89.11, 2 -DEC00035, 9,40SSW_DEC ,39.12,-89.19, 2 -DEC00036, 9,50SSW_DEC ,38.97,-89.27, 2 -DEC00037, 9,60SSW_DEC ,38.82,-89.35, 2 -DEC00038, 9,20SW_DEC ,39.50,-89.17, 2 -DEC00039, 9,30SW_DEC ,39.39,-89.32, 2 -DEC00040, 9,40SW_DEC ,39.27,-89.47, 2 -DEC00041, 9,50SW_DEC ,39.15,-89.62, 2 -DEC00042, 9,20WSW_DEC ,39.61,-89.26, 2 -DEC00043, 9,30WSW_DEC ,39.55,-89.46, 2 -DEC00044, 9,40WSW_DEC ,39.48,-89.66, 2 -DEC00045, 9,50WSW_DEC ,39.42,-89.86, 2 -DEC00046, 9,20W_DEC ,39.74,-89.29, 2 -DEC00047, 9,30W_DEC ,39.74,-89.51, 2 -DEC00048, 9,40W_DEC ,39.74,-89.73, 2 -DEC00049, 9,50W_DEC ,39.73,-89.94, 2 -DEC00050, 9,20WNW_DEC ,39.87,-89.26, 2 -DEC00051, 9,30WNW_DEC ,39.93,-89.46, 2 -DEC00052, 9,40WNW_DEC ,39.99,-89.66, 2 -DEC00053, 9,50WNW_DEC ,40.05,-89.87, 2 -DEC00054, 9,20NW_DEC ,39.98,-89.17, 2 -DEC00055, 9,30NW_DEC ,40.09,-89.32, 2 -DEC00056, 9,40NW_DEC ,40.21,-89.48, 2 -DEC00057, 9,20NNW_DEC ,40.05,-89.03, 2 -DEC00058, 9,30NNW_DEC ,40.20,-89.11, 2 +MEI00039, 9,20WSW_MEI ,32.25,-89.16, 2 +MEI00040, 9,30WSW_MEI ,32.19,-89.35, 2 +MEI00041, 9,20W_MEI ,32.38,-89.19, 2 +MEI00042, 9,30W_MEI ,32.38,-89.39, 2 +MEI00043, 9,20WNW_MEI ,32.51,-89.16, 2 +MEI00044, 9,30WNW_MEI ,32.57,-89.35, 2 +MEI00045, 9,20NW_MEI ,32.62,-89.08, 2 +MEI00046, 9,30NW_MEI ,32.73,-89.22, 2 +MEI00047, 9,40NW_MEI ,32.85,-89.36, 2 +MEI00048, 9,20NNW_MEI ,32.69,-88.95, 2 +MEI00049, 9,30NNW_MEI ,32.84,-89.03, 2 +AXC00000, 9,AXC ,39.74,-88.86, 1 +AXC00001, 9,20N_AXC ,40.07,-88.86, 2 +AXC00002, 9,30N_AXC ,40.24,-88.86, 2 +AXC00003, 9,40N_AXC ,40.41,-88.86, 2 +AXC00004, 9,20NNE_AXC ,40.05,-88.69, 2 +AXC00005, 9,30NNE_AXC ,40.20,-88.61, 2 +AXC00006, 9,40NNE_AXC ,40.36,-88.53, 2 +AXC00007, 9,20NE_AXC ,39.98,-88.55, 2 +AXC00008, 9,30NE_AXC ,40.09,-88.40, 2 +AXC00009, 9,40NE_AXC ,40.21,-88.24, 2 +AXC00010, 9,20ENE_AXC ,39.87,-88.46, 2 +AXC00011, 9,30ENE_AXC ,39.93,-88.26, 2 +AXC00012, 9,40ENE_AXC ,39.99,-88.06, 2 +AXC00013, 9,20E_AXC ,39.74,-88.43, 2 +AXC00014, 9,30E_AXC ,39.74,-88.21, 2 +AXC00015, 9,40E_AXC ,39.74,-87.99, 2 +AXC00016, 9,20ESE_AXC ,39.61,-88.46, 2 +AXC00017, 9,30ESE_AXC ,39.55,-88.26, 2 +AXC00018, 9,40ESE_AXC ,39.48,-88.06, 2 +AXC00019, 9,20SE_AXC ,39.50,-88.55, 2 +AXC00020, 9,30SE_AXC ,39.39,-88.40, 2 +AXC00021, 9,40SE_AXC ,39.27,-88.25, 2 +AXC00022, 9,20SSE_AXC ,39.43,-88.69, 2 +AXC00023, 9,30SSE_AXC ,39.28,-88.61, 2 +AXC00024, 9,40SSE_AXC ,39.12,-88.53, 2 +AXC00025, 9,50SSE_AXC ,38.97,-88.45, 2 +AXC00026, 9,60SSE_AXC ,38.82,-88.37, 2 +AXC00027, 9,20S_AXC ,39.41,-88.86, 2 +AXC00028, 9,30S_AXC ,39.24,-88.86, 2 +AXC00029, 9,40S_AXC ,39.07,-88.86, 2 +AXC00030, 9,50S_AXC ,38.91,-88.86, 2 +AXC00031, 9,60S_AXC ,38.74,-88.86, 2 +AXC00032, 9,70S_AXC ,38.57,-88.86, 2 +AXC00033, 9,20SSW_AXC ,39.43,-89.03, 2 +AXC00034, 9,30SSW_AXC ,39.28,-89.11, 2 +AXC00035, 9,40SSW_AXC ,39.12,-89.19, 2 +AXC00036, 9,50SSW_AXC ,38.97,-89.27, 2 +AXC00037, 9,60SSW_AXC ,38.82,-89.35, 2 +AXC00038, 9,20SW_AXC ,39.50,-89.17, 2 +AXC00039, 9,30SW_AXC ,39.39,-89.32, 2 +AXC00040, 9,40SW_AXC ,39.27,-89.47, 2 +AXC00041, 9,50SW_AXC ,39.15,-89.62, 2 +AXC00042, 9,20WSW_AXC ,39.61,-89.26, 2 +AXC00043, 9,30WSW_AXC ,39.55,-89.46, 2 +AXC00044, 9,40WSW_AXC ,39.48,-89.66, 2 +AXC00045, 9,50WSW_AXC ,39.42,-89.86, 2 +AXC00046, 9,20W_AXC ,39.74,-89.29, 2 +AXC00047, 9,30W_AXC ,39.74,-89.51, 2 +AXC00048, 9,40W_AXC ,39.74,-89.73, 2 +AXC00049, 9,50W_AXC ,39.73,-89.94, 2 +AXC00050, 9,20WNW_AXC ,39.87,-89.26, 2 +AXC00051, 9,30WNW_AXC ,39.93,-89.46, 2 +AXC00052, 9,40WNW_AXC ,39.99,-89.66, 2 +AXC00053, 9,50WNW_AXC ,40.05,-89.87, 2 +AXC00054, 9,20NW_AXC ,39.98,-89.17, 2 +AXC00055, 9,30NW_AXC ,40.09,-89.32, 2 +AXC00056, 9,40NW_AXC ,40.21,-89.48, 2 +AXC00057, 9,20NNW_AXC ,40.05,-89.03, 2 +AXC00058, 9,30NNW_AXC ,40.20,-89.11, 2 YQT00000, 9,YQT ,48.37,-89.32, 1 YQT00001, 9,20N_YQT ,48.70,-89.32, 2 YQT00002, 9,30N_YQT ,48.87,-89.32, 2 @@ -7417,240 +7462,240 @@ MEM00049, 9,30NW_MEM ,35.41,-90.41, 2 MEM00050, 9,20NNW_MEM ,35.37,-90.14, 2 MEM00051, 9,30NNW_MEM ,35.52,-90.21, 2 LEV00000, 9,LEV ,29.18,-90.10, 1 -LEV00001, 9,20N_LEV ,29.51,-90.10, 2 -LEV00002, 9,20NNE_LEV ,29.49,-89.95, 2 -LEV00003, 9,20NE_LEV ,29.42,-89.83, 2 -LEV00004, 9,30NE_LEV ,29.53,-89.69, 2 -LEV00005, 9,20ENE_LEV ,29.31,-89.75, 2 -LEV00006, 9,30ENE_LEV ,29.37,-89.57, 2 -LEV00007, 9,40ENE_LEV ,29.43,-89.39, 2 -LEV00008, 9,50ENE_LEV ,29.50,-89.22, 2 -LEV00009, 9,60ENE_LEV ,29.56,-89.04, 2 -LEV00010, 9,20E_LEV ,29.18,-89.72, 2 -LEV00011, 9,30E_LEV ,29.18,-89.53, 2 -LEV00012, 9,40E_LEV ,29.18,-89.34, 2 -LEV00013, 9,50E_LEV ,29.18,-89.15, 2 -LEV00014, 9,60E_LEV ,29.18,-88.96, 2 -LEV00015, 9,70E_LEV ,29.17,-88.76, 2 -LEV00016, 9,80E_LEV ,29.17,-88.57, 2 -LEV00017, 9,20ESE_LEV ,29.05,-89.75, 2 -LEV00018, 9,30ESE_LEV ,28.99,-89.57, 2 -LEV00019, 9,40ESE_LEV ,28.92,-89.40, 2 -LEV00020, 9,50ESE_LEV ,28.86,-89.22, 2 -LEV00021, 9,60ESE_LEV ,28.79,-89.05, 2 -LEV00022, 9,70ESE_LEV ,28.73,-88.87, 2 -LEV00023, 9,80ESE_LEV ,28.66,-88.70, 2 -LEV00024, 9,90ESE_LEV ,28.60,-88.52, 2 -LEV00025, 9,100ESE_LEV ,28.53,-88.35, 2 -LEV00026, 9,110ESE_LEV ,28.47,-88.17, 2 -LEV00027, 9,20SE_LEV ,28.94,-89.83, 2 -LEV00028, 9,30SE_LEV ,28.83,-89.70, 2 -LEV00029, 9,40SE_LEV ,28.71,-89.56, 2 -LEV00030, 9,50SE_LEV ,28.59,-89.43, 2 -LEV00031, 9,60SE_LEV ,28.47,-89.30, 2 -LEV00032, 9,70SE_LEV ,28.35,-89.16, 2 -LEV00033, 9,80SE_LEV ,28.23,-89.03, 2 -LEV00034, 9,90SE_LEV ,28.11,-88.90, 2 -LEV00035, 9,100SE_LEV ,28.00,-88.77, 2 -LEV00036, 9,110SE_LEV ,27.88,-88.63, 2 -LEV00037, 9,120SE_LEV ,27.76,-88.50, 2 -LEV00038, 9,130SE_LEV ,27.64,-88.37, 2 -LEV00039, 9,140SE_LEV ,27.52,-88.24, 2 -LEV00040, 9,150SE_LEV ,27.40,-88.11, 2 -LEV00041, 9,200SE_LEV ,26.80,-87.46, 2 -LEV00042, 9,210SE_LEV ,26.68,-87.33, 2 -LEV00043, 9,220SE_LEV ,26.56,-87.20, 2 -LEV00044, 9,230SE_LEV ,26.44,-87.08, 2 -LEV00045, 9,240SE_LEV ,26.32,-86.95, 2 -LEV00046, 9,250SE_LEV ,26.20,-86.82, 2 -LEV00047, 9,20SSE_LEV ,28.87,-89.95, 2 -LEV00048, 9,30SSE_LEV ,28.72,-89.88, 2 -LEV00049, 9,40SSE_LEV ,28.56,-89.81, 2 -LEV00050, 9,50SSE_LEV ,28.41,-89.74, 2 -LEV00051, 9,60SSE_LEV ,28.26,-89.67, 2 -LEV00052, 9,70SSE_LEV ,28.10,-89.59, 2 -LEV00053, 9,80SSE_LEV ,27.95,-89.52, 2 -LEV00054, 9,90SSE_LEV ,27.79,-89.45, 2 -LEV00055, 9,100SSE_LEV ,27.64,-89.38, 2 -LEV00056, 9,110SSE_LEV ,27.49,-89.31, 2 -LEV00057, 9,120SSE_LEV ,27.33,-89.24, 2 -LEV00058, 9,130SSE_LEV ,27.18,-89.17, 2 -LEV00059, 9,140SSE_LEV ,27.02,-89.10, 2 -LEV00060, 9,150SSE_LEV ,26.87,-89.03, 2 -LEV00061, 9,160SSE_LEV ,26.71,-88.96, 2 -LEV00062, 9,170SSE_LEV ,26.56,-88.89, 2 -LEV00063, 9,180SSE_LEV ,26.40,-88.82, 2 -LEV00064, 9,190SSE_LEV ,26.25,-88.75, 2 -LEV00065, 9,200SSE_LEV ,26.10,-88.68, 2 -LEV00066, 9,210SSE_LEV ,25.94,-88.61, 2 -LEV00067, 9,220SSE_LEV ,25.79,-88.54, 2 -LEV00068, 9,230SSE_LEV ,25.63,-88.48, 2 -LEV00069, 9,240SSE_LEV ,25.48,-88.41, 2 -LEV00070, 9,20S_LEV ,28.85,-90.10, 2 -LEV00071, 9,30S_LEV ,28.68,-90.10, 2 -LEV00072, 9,40S_LEV ,28.51,-90.10, 2 -LEV00073, 9,50S_LEV ,28.35,-90.10, 2 -LEV00074, 9,60S_LEV ,28.18,-90.10, 2 -LEV00075, 9,70S_LEV ,28.01,-90.10, 2 -LEV00076, 9,80S_LEV ,27.85,-90.10, 2 -LEV00077, 9,90S_LEV ,27.68,-90.10, 2 -LEV00078, 9,100S_LEV ,27.51,-90.10, 2 -LEV00079, 9,110S_LEV ,27.35,-90.10, 2 -LEV00080, 9,120S_LEV ,27.18,-90.10, 2 -LEV00081, 9,130S_LEV ,27.01,-90.10, 2 -LEV00082, 9,140S_LEV ,26.85,-90.10, 2 -LEV00083, 9,150S_LEV ,26.68,-90.10, 2 -LEV00084, 9,160S_LEV ,26.52,-90.10, 2 -LEV00085, 9,170S_LEV ,26.35,-90.10, 2 -LEV00086, 9,180S_LEV ,26.18,-90.10, 2 -LEV00087, 9,190S_LEV ,26.02,-90.10, 2 -LEV00088, 9,200S_LEV ,25.85,-90.10, 2 -LEV00089, 9,210S_LEV ,25.68,-90.10, 2 -LEV00090, 9,220S_LEV ,25.52,-90.10, 2 -LEV00091, 9,230S_LEV ,25.35,-90.10, 2 -LEV00092, 9,240S_LEV ,25.18,-90.10, 2 -LEV00093, 9,250S_LEV ,25.02,-90.10, 2 -LEV00094, 9,20SSW_LEV ,28.87,-90.25, 2 -LEV00095, 9,30SSW_LEV ,28.72,-90.32, 2 -LEV00096, 9,40SSW_LEV ,28.56,-90.39, 2 -LEV00097, 9,50SSW_LEV ,28.41,-90.46, 2 -LEV00098, 9,60SSW_LEV ,28.26,-90.53, 2 -LEV00099, 9,70SSW_LEV ,28.10,-90.61, 2 -LEV00100, 9,80SSW_LEV ,27.95,-90.68, 2 -LEV00101, 9,90SSW_LEV ,27.79,-90.75, 2 -LEV00102, 9,100SSW_LEV ,27.64,-90.82, 2 -LEV00103, 9,110SSW_LEV ,27.49,-90.89, 2 -LEV00104, 9,120SSW_LEV ,27.33,-90.96, 2 -LEV00105, 9,130SSW_LEV ,27.18,-91.03, 2 -LEV00106, 9,140SSW_LEV ,27.02,-91.10, 2 -LEV00107, 9,150SSW_LEV ,26.87,-91.17, 2 -LEV00108, 9,160SSW_LEV ,26.71,-91.24, 2 -LEV00109, 9,170SSW_LEV ,26.56,-91.31, 2 -LEV00110, 9,180SSW_LEV ,26.40,-91.38, 2 -LEV00111, 9,190SSW_LEV ,26.25,-91.45, 2 -LEV00112, 9,200SSW_LEV ,26.10,-91.52, 2 -LEV00113, 9,210SSW_LEV ,25.94,-91.59, 2 -LEV00114, 9,220SSW_LEV ,25.79,-91.66, 2 -LEV00115, 9,230SSW_LEV ,25.63,-91.72, 2 -LEV00116, 9,240SSW_LEV ,25.48,-91.79, 2 -LEV00117, 9,20SW_LEV ,28.94,-90.37, 2 -LEV00118, 9,30SW_LEV ,28.83,-90.50, 2 -LEV00119, 9,40SW_LEV ,28.71,-90.64, 2 -LEV00120, 9,50SW_LEV ,28.59,-90.77, 2 -LEV00121, 9,60SW_LEV ,28.47,-90.90, 2 -LEV00122, 9,70SW_LEV ,28.35,-91.04, 2 -LEV00123, 9,80SW_LEV ,28.23,-91.17, 2 -LEV00124, 9,90SW_LEV ,28.11,-91.30, 2 -LEV00125, 9,100SW_LEV ,28.00,-91.43, 2 -LEV00126, 9,110SW_LEV ,27.88,-91.57, 2 -LEV00127, 9,120SW_LEV ,27.76,-91.70, 2 -LEV00128, 9,130SW_LEV ,27.64,-91.83, 2 -LEV00129, 9,140SW_LEV ,27.52,-91.96, 2 -LEV00130, 9,150SW_LEV ,27.40,-92.09, 2 -LEV00131, 9,160SW_LEV ,27.28,-92.22, 2 -LEV00132, 9,170SW_LEV ,27.16,-92.35, 2 -LEV00133, 9,180SW_LEV ,27.04,-92.48, 2 -LEV00134, 9,190SW_LEV ,26.92,-92.61, 2 -LEV00135, 9,20WSW_LEV ,29.05,-90.45, 2 -LEV00136, 9,30WSW_LEV ,28.99,-90.63, 2 -LEV00137, 9,40WSW_LEV ,28.92,-90.80, 2 -LEV00138, 9,50WSW_LEV ,28.86,-90.98, 2 -LEV00139, 9,60WSW_LEV ,28.79,-91.15, 2 -LEV00140, 9,70WSW_LEV ,28.73,-91.33, 2 -LEV00141, 9,80WSW_LEV ,28.66,-91.50, 2 -LEV00142, 9,90WSW_LEV ,28.60,-91.68, 2 -LEV00143, 9,100WSW_LEV ,28.53,-91.85, 2 -LEV00144, 9,110WSW_LEV ,28.47,-92.03, 2 -LEV00145, 9,20W_LEV ,29.18,-90.48, 2 -LEV00146, 9,30W_LEV ,29.18,-90.67, 2 -LEV00147, 9,40W_LEV ,29.18,-90.86, 2 -LEV00148, 9,50W_LEV ,29.18,-91.05, 2 -LEV00149, 9,60W_LEV ,29.18,-91.24, 2 -LEV00150, 9,70W_LEV ,29.17,-91.44, 2 -LEV00151, 9,20WNW_LEV ,29.31,-90.45, 2 -LEV00152, 9,30WNW_LEV ,29.37,-90.63, 2 -LEV00153, 9,20NW_LEV ,29.42,-90.37, 2 -LEV00154, 9,20NNW_LEV ,29.49,-90.25, 2 -JAN00000, 9,JAN ,32.51,-90.17, 1 -JAN00001, 9,20N_JAN ,32.84,-90.17, 2 -JAN00002, 9,20NNE_JAN ,32.82,-90.02, 2 -JAN00003, 9,20NE_JAN ,32.75,-89.89, 2 -JAN00004, 9,30NE_JAN ,32.86,-89.75, 2 -JAN00005, 9,20ENE_JAN ,32.64,-89.80, 2 -JAN00006, 9,30ENE_JAN ,32.70,-89.62, 2 -JAN00007, 9,40ENE_JAN ,32.76,-89.44, 2 -JAN00008, 9,20E_JAN ,32.51,-89.78, 2 -JAN00009, 9,30E_JAN ,32.51,-89.58, 2 -JAN00010, 9,20ESE_JAN ,32.38,-89.81, 2 -JAN00011, 9,30ESE_JAN ,32.32,-89.62, 2 -JAN00012, 9,20SE_JAN ,32.27,-89.89, 2 -JAN00013, 9,30SE_JAN ,32.16,-89.75, 2 -JAN00014, 9,40SE_JAN ,32.04,-89.61, 2 -JAN00015, 9,20SSE_JAN ,32.20,-90.02, 2 -JAN00016, 9,30SSE_JAN ,32.05,-89.94, 2 -JAN00017, 9,40SSE_JAN ,31.89,-89.87, 2 -JAN00018, 9,20S_JAN ,32.18,-90.17, 2 -JAN00019, 9,30S_JAN ,32.01,-90.17, 2 -JAN00020, 9,40S_JAN ,31.84,-90.17, 2 -JAN00021, 9,20SSW_JAN ,32.20,-90.32, 2 -JAN00022, 9,30SSW_JAN ,32.05,-90.40, 2 -JAN00023, 9,40SSW_JAN ,31.89,-90.47, 2 -JAN00024, 9,20SW_JAN ,32.27,-90.45, 2 -JAN00025, 9,30SW_JAN ,32.16,-90.59, 2 -JAN00026, 9,40SW_JAN ,32.04,-90.73, 2 -JAN00027, 9,50SW_JAN ,31.92,-90.86, 2 -JAN00028, 9,20WSW_JAN ,32.38,-90.53, 2 -JAN00029, 9,30WSW_JAN ,32.32,-90.72, 2 -JAN00030, 9,40WSW_JAN ,32.25,-90.90, 2 -JAN00031, 9,50WSW_JAN ,32.19,-91.08, 2 -JAN00032, 9,20W_JAN ,32.51,-90.56, 2 -JAN00033, 9,30W_JAN ,32.51,-90.76, 2 -JAN00034, 9,40W_JAN ,32.51,-90.96, 2 -JAN00035, 9,20WNW_JAN ,32.64,-90.54, 2 -JAN00036, 9,30WNW_JAN ,32.70,-90.72, 2 -JAN00037, 9,40WNW_JAN ,32.76,-90.90, 2 -JAN00038, 9,20NW_JAN ,32.75,-90.45, 2 -JAN00039, 9,20NNW_JAN ,32.82,-90.32, 2 -MSY00000, 9,MSY ,30.00,-90.27, 1 -MSY00001, 9,20N_MSY ,30.33,-90.27, 2 -MSY00002, 9,30N_MSY ,30.50,-90.27, 2 -MSY00003, 9,20NNE_MSY ,30.31,-90.12, 2 -MSY00004, 9,30NNE_MSY ,30.46,-90.05, 2 -MSY00005, 9,20NE_MSY ,30.24,-90.00, 2 -MSY00006, 9,30NE_MSY ,30.35,-89.86, 2 -MSY00007, 9,40NE_MSY ,30.47,-89.72, 2 -MSY00008, 9,20ENE_MSY ,30.13,-89.91, 2 -MSY00009, 9,30ENE_MSY ,30.19,-89.74, 2 -MSY00010, 9,40ENE_MSY ,30.25,-89.56, 2 -MSY00011, 9,50ENE_MSY ,30.32,-89.38, 2 -MSY00012, 9,20E_MSY ,30.00,-89.89, 2 -MSY00013, 9,30E_MSY ,30.00,-89.69, 2 -MSY00014, 9,40E_MSY ,30.00,-89.50, 2 -MSY00015, 9,50E_MSY ,30.00,-89.31, 2 -MSY00016, 9,20ESE_MSY ,29.87,-89.92, 2 -MSY00017, 9,30ESE_MSY ,29.81,-89.74, 2 -MSY00018, 9,40ESE_MSY ,29.74,-89.56, 2 -MSY00019, 9,50ESE_MSY ,29.68,-89.38, 2 -MSY00020, 9,20SE_MSY ,29.76,-90.00, 2 -MSY00021, 9,30SE_MSY ,29.65,-89.86, 2 -MSY00022, 9,20SSE_MSY ,29.69,-90.12, 2 -MSY00023, 9,30SSE_MSY ,29.54,-90.05, 2 -MSY00024, 9,20S_MSY ,29.67,-90.27, 2 -MSY00025, 9,30S_MSY ,29.50,-90.27, 2 -MSY00026, 9,20SSW_MSY ,29.69,-90.42, 2 -MSY00027, 9,30SSW_MSY ,29.54,-90.49, 2 -MSY00028, 9,20SW_MSY ,29.76,-90.54, 2 -MSY00029, 9,30SW_MSY ,29.65,-90.68, 2 -MSY00030, 9,40SW_MSY ,29.53,-90.81, 2 -MSY00031, 9,50SW_MSY ,29.41,-90.95, 2 -MSY00032, 9,20WSW_MSY ,29.87,-90.62, 2 -MSY00033, 9,30WSW_MSY ,29.81,-90.80, 2 -MSY00034, 9,40WSW_MSY ,29.74,-90.98, 2 -MSY00035, 9,20W_MSY ,30.00,-90.65, 2 -MSY00036, 9,20WNW_MSY ,30.13,-90.63, 2 -MSY00037, 9,20NW_MSY ,30.24,-90.54, 2 -MSY00038, 9,20NNW_MSY ,30.31,-90.42, 2 -MSY00039, 9,30NNW_MSY ,30.46,-90.49, 2 +LEV00001, 9,20ENE_LEV ,29.31,-89.75, 2 +LEV00002, 9,30ENE_LEV ,29.37,-89.57, 2 +LEV00003, 9,20E_LEV ,29.18,-89.72, 2 +LEV00004, 9,30E_LEV ,29.18,-89.53, 2 +LEV00005, 9,40E_LEV ,29.18,-89.34, 2 +LEV00006, 9,50E_LEV ,29.18,-89.15, 2 +LEV00007, 9,60E_LEV ,29.18,-88.96, 2 +LEV00008, 9,70E_LEV ,29.17,-88.76, 2 +LEV00009, 9,80E_LEV ,29.17,-88.57, 2 +LEV00010, 9,20ESE_LEV ,29.05,-89.75, 2 +LEV00011, 9,30ESE_LEV ,28.99,-89.57, 2 +LEV00012, 9,40ESE_LEV ,28.92,-89.40, 2 +LEV00013, 9,50ESE_LEV ,28.86,-89.22, 2 +LEV00014, 9,60ESE_LEV ,28.79,-89.05, 2 +LEV00015, 9,70ESE_LEV ,28.73,-88.87, 2 +LEV00016, 9,80ESE_LEV ,28.66,-88.70, 2 +LEV00017, 9,90ESE_LEV ,28.60,-88.52, 2 +LEV00018, 9,100ESE_LEV ,28.53,-88.35, 2 +LEV00019, 9,110ESE_LEV ,28.47,-88.17, 2 +LEV00020, 9,120ESE_LEV ,28.40,-88.00, 2 +LEV00021, 9,150ESE_LEV ,28.20,-87.48, 2 +LEV00022, 9,20SE_LEV ,28.94,-89.83, 2 +LEV00023, 9,30SE_LEV ,28.83,-89.70, 2 +LEV00024, 9,40SE_LEV ,28.71,-89.56, 2 +LEV00025, 9,50SE_LEV ,28.59,-89.43, 2 +LEV00026, 9,60SE_LEV ,28.47,-89.30, 2 +LEV00027, 9,70SE_LEV ,28.35,-89.16, 2 +LEV00028, 9,80SE_LEV ,28.23,-89.03, 2 +LEV00029, 9,90SE_LEV ,28.11,-88.90, 2 +LEV00030, 9,100SE_LEV ,28.00,-88.77, 2 +LEV00031, 9,110SE_LEV ,27.88,-88.63, 2 +LEV00032, 9,120SE_LEV ,27.76,-88.50, 2 +LEV00033, 9,130SE_LEV ,27.64,-88.37, 2 +LEV00034, 9,140SE_LEV ,27.52,-88.24, 2 +LEV00035, 9,150SE_LEV ,27.40,-88.11, 2 +LEV00036, 9,160SE_LEV ,27.28,-87.98, 2 +LEV00037, 9,190SE_LEV ,26.92,-87.59, 2 +LEV00038, 9,200SE_LEV ,26.80,-87.46, 2 +LEV00039, 9,210SE_LEV ,26.68,-87.33, 2 +LEV00040, 9,220SE_LEV ,26.56,-87.20, 2 +LEV00041, 9,230SE_LEV ,26.44,-87.08, 2 +LEV00042, 9,240SE_LEV ,26.32,-86.95, 2 +LEV00043, 9,250SE_LEV ,26.20,-86.82, 2 +LEV00044, 9,20SSE_LEV ,28.87,-89.95, 2 +LEV00045, 9,30SSE_LEV ,28.72,-89.88, 2 +LEV00046, 9,40SSE_LEV ,28.56,-89.81, 2 +LEV00047, 9,50SSE_LEV ,28.41,-89.74, 2 +LEV00048, 9,60SSE_LEV ,28.26,-89.67, 2 +LEV00049, 9,70SSE_LEV ,28.10,-89.59, 2 +LEV00050, 9,80SSE_LEV ,27.95,-89.52, 2 +LEV00051, 9,90SSE_LEV ,27.79,-89.45, 2 +LEV00052, 9,100SSE_LEV ,27.64,-89.38, 2 +LEV00053, 9,110SSE_LEV ,27.49,-89.31, 2 +LEV00054, 9,120SSE_LEV ,27.33,-89.24, 2 +LEV00055, 9,130SSE_LEV ,27.18,-89.17, 2 +LEV00056, 9,140SSE_LEV ,27.02,-89.10, 2 +LEV00057, 9,150SSE_LEV ,26.87,-89.03, 2 +LEV00058, 9,160SSE_LEV ,26.71,-88.96, 2 +LEV00059, 9,170SSE_LEV ,26.56,-88.89, 2 +LEV00060, 9,180SSE_LEV ,26.40,-88.82, 2 +LEV00061, 9,190SSE_LEV ,26.25,-88.75, 2 +LEV00062, 9,200SSE_LEV ,26.10,-88.68, 2 +LEV00063, 9,210SSE_LEV ,25.94,-88.61, 2 +LEV00064, 9,220SSE_LEV ,25.79,-88.54, 2 +LEV00065, 9,230SSE_LEV ,25.63,-88.48, 2 +LEV00066, 9,240SSE_LEV ,25.48,-88.41, 2 +LEV00067, 9,20S_LEV ,28.85,-90.10, 2 +LEV00068, 9,30S_LEV ,28.68,-90.10, 2 +LEV00069, 9,40S_LEV ,28.51,-90.10, 2 +LEV00070, 9,50S_LEV ,28.35,-90.10, 2 +LEV00071, 9,60S_LEV ,28.18,-90.10, 2 +LEV00072, 9,70S_LEV ,28.01,-90.10, 2 +LEV00073, 9,80S_LEV ,27.85,-90.10, 2 +LEV00074, 9,90S_LEV ,27.68,-90.10, 2 +LEV00075, 9,100S_LEV ,27.51,-90.10, 2 +LEV00076, 9,110S_LEV ,27.35,-90.10, 2 +LEV00077, 9,120S_LEV ,27.18,-90.10, 2 +LEV00078, 9,130S_LEV ,27.01,-90.10, 2 +LEV00079, 9,140S_LEV ,26.85,-90.10, 2 +LEV00080, 9,150S_LEV ,26.68,-90.10, 2 +LEV00081, 9,160S_LEV ,26.52,-90.10, 2 +LEV00082, 9,170S_LEV ,26.35,-90.10, 2 +LEV00083, 9,180S_LEV ,26.18,-90.10, 2 +LEV00084, 9,190S_LEV ,26.02,-90.10, 2 +LEV00085, 9,200S_LEV ,25.85,-90.10, 2 +LEV00086, 9,210S_LEV ,25.68,-90.10, 2 +LEV00087, 9,220S_LEV ,25.52,-90.10, 2 +LEV00088, 9,230S_LEV ,25.35,-90.10, 2 +LEV00089, 9,240S_LEV ,25.18,-90.10, 2 +LEV00090, 9,250S_LEV ,25.02,-90.10, 2 +LEV00091, 9,20SSW_LEV ,28.87,-90.25, 2 +LEV00092, 9,30SSW_LEV ,28.72,-90.32, 2 +LEV00093, 9,40SSW_LEV ,28.56,-90.39, 2 +LEV00094, 9,50SSW_LEV ,28.41,-90.46, 2 +LEV00095, 9,60SSW_LEV ,28.26,-90.53, 2 +LEV00096, 9,70SSW_LEV ,28.10,-90.61, 2 +LEV00097, 9,80SSW_LEV ,27.95,-90.68, 2 +LEV00098, 9,90SSW_LEV ,27.79,-90.75, 2 +LEV00099, 9,100SSW_LEV ,27.64,-90.82, 2 +LEV00100, 9,110SSW_LEV ,27.49,-90.89, 2 +LEV00101, 9,120SSW_LEV ,27.33,-90.96, 2 +LEV00102, 9,130SSW_LEV ,27.18,-91.03, 2 +LEV00103, 9,140SSW_LEV ,27.02,-91.10, 2 +LEV00104, 9,150SSW_LEV ,26.87,-91.17, 2 +LEV00105, 9,160SSW_LEV ,26.71,-91.24, 2 +LEV00106, 9,170SSW_LEV ,26.56,-91.31, 2 +LEV00107, 9,180SSW_LEV ,26.40,-91.38, 2 +LEV00108, 9,190SSW_LEV ,26.25,-91.45, 2 +LEV00109, 9,200SSW_LEV ,26.10,-91.52, 2 +LEV00110, 9,210SSW_LEV ,25.94,-91.59, 2 +LEV00111, 9,220SSW_LEV ,25.79,-91.66, 2 +LEV00112, 9,230SSW_LEV ,25.63,-91.72, 2 +LEV00113, 9,240SSW_LEV ,25.48,-91.79, 2 +LEV00114, 9,20SW_LEV ,28.94,-90.37, 2 +LEV00115, 9,30SW_LEV ,28.83,-90.50, 2 +LEV00116, 9,40SW_LEV ,28.71,-90.64, 2 +LEV00117, 9,50SW_LEV ,28.59,-90.77, 2 +LEV00118, 9,60SW_LEV ,28.47,-90.90, 2 +LEV00119, 9,70SW_LEV ,28.35,-91.04, 2 +LEV00120, 9,80SW_LEV ,28.23,-91.17, 2 +LEV00121, 9,90SW_LEV ,28.11,-91.30, 2 +LEV00122, 9,100SW_LEV ,28.00,-91.43, 2 +LEV00123, 9,110SW_LEV ,27.88,-91.57, 2 +LEV00124, 9,120SW_LEV ,27.76,-91.70, 2 +LEV00125, 9,130SW_LEV ,27.64,-91.83, 2 +LEV00126, 9,140SW_LEV ,27.52,-91.96, 2 +LEV00127, 9,150SW_LEV ,27.40,-92.09, 2 +LEV00128, 9,160SW_LEV ,27.28,-92.22, 2 +LEV00129, 9,170SW_LEV ,27.16,-92.35, 2 +LEV00130, 9,180SW_LEV ,27.04,-92.48, 2 +LEV00131, 9,190SW_LEV ,26.92,-92.61, 2 +LEV00132, 9,20WSW_LEV ,29.05,-90.45, 2 +LEV00133, 9,30WSW_LEV ,28.99,-90.63, 2 +LEV00134, 9,40WSW_LEV ,28.92,-90.80, 2 +LEV00135, 9,50WSW_LEV ,28.86,-90.98, 2 +LEV00136, 9,60WSW_LEV ,28.79,-91.15, 2 +LEV00137, 9,70WSW_LEV ,28.73,-91.33, 2 +LEV00138, 9,80WSW_LEV ,28.66,-91.50, 2 +LEV00139, 9,90WSW_LEV ,28.60,-91.68, 2 +LEV00140, 9,100WSW_LEV ,28.53,-91.85, 2 +LEV00141, 9,110WSW_LEV ,28.47,-92.03, 2 +LEV00142, 9,20W_LEV ,29.18,-90.48, 2 +LEV00143, 9,30W_LEV ,29.18,-90.67, 2 +LEV00144, 9,40W_LEV ,29.18,-90.86, 2 +LEV00145, 9,50W_LEV ,29.18,-91.05, 2 +LEV00146, 9,60W_LEV ,29.18,-91.24, 2 +LEV00147, 9,70W_LEV ,29.17,-91.44, 2 +LEV00148, 9,20WNW_LEV ,29.31,-90.45, 2 +LEV00149, 9,30WNW_LEV ,29.37,-90.63, 2 +LEV00150, 9,40WNW_LEV ,29.43,-90.81, 2 +LEV00151, 9,50WNW_LEV ,29.50,-90.98, 2 +LEV00152, 9,20NW_LEV ,29.42,-90.37, 2 +MHZ00000, 9,MHZ ,32.43,-90.10, 1 +MHZ00001, 9,20N_MHZ ,32.76,-90.10, 2 +MHZ00002, 9,20NNE_MHZ ,32.74,-89.95, 2 +MHZ00003, 9,20NE_MHZ ,32.67,-89.82, 2 +MHZ00004, 9,30NE_MHZ ,32.78,-89.68, 2 +MHZ00005, 9,40NE_MHZ ,32.90,-89.54, 2 +MHZ00006, 9,20ENE_MHZ ,32.56,-89.73, 2 +MHZ00007, 9,30ENE_MHZ ,32.62,-89.55, 2 +MHZ00008, 9,20E_MHZ ,32.43,-89.71, 2 +MHZ00009, 9,30E_MHZ ,32.43,-89.51, 2 +MHZ00010, 9,20ESE_MHZ ,32.30,-89.74, 2 +MHZ00011, 9,30ESE_MHZ ,32.24,-89.55, 2 +MHZ00012, 9,20SE_MHZ ,32.19,-89.82, 2 +MHZ00013, 9,30SE_MHZ ,32.08,-89.68, 2 +MHZ00014, 9,40SE_MHZ ,31.96,-89.54, 2 +MHZ00015, 9,20SSE_MHZ ,32.12,-89.95, 2 +MHZ00016, 9,30SSE_MHZ ,31.97,-89.87, 2 +MHZ00017, 9,40SSE_MHZ ,31.81,-89.80, 2 +MHZ00018, 9,20S_MHZ ,32.10,-90.10, 2 +MHZ00019, 9,30S_MHZ ,31.93,-90.10, 2 +MHZ00020, 9,20SSW_MHZ ,32.12,-90.25, 2 +MHZ00021, 9,30SSW_MHZ ,31.97,-90.33, 2 +MHZ00022, 9,40SSW_MHZ ,31.81,-90.40, 2 +MHZ00023, 9,20SW_MHZ ,32.19,-90.38, 2 +MHZ00024, 9,30SW_MHZ ,32.08,-90.52, 2 +MHZ00025, 9,40SW_MHZ ,31.96,-90.66, 2 +MHZ00026, 9,50SW_MHZ ,31.84,-90.79, 2 +MHZ00027, 9,20WSW_MHZ ,32.30,-90.46, 2 +MHZ00028, 9,30WSW_MHZ ,32.24,-90.65, 2 +MHZ00029, 9,40WSW_MHZ ,32.17,-90.83, 2 +MHZ00030, 9,50WSW_MHZ ,32.11,-91.01, 2 +MHZ00031, 9,20W_MHZ ,32.43,-90.49, 2 +MHZ00032, 9,30W_MHZ ,32.43,-90.69, 2 +MHZ00033, 9,40W_MHZ ,32.43,-90.89, 2 +MHZ00034, 9,20WNW_MHZ ,32.56,-90.47, 2 +MHZ00035, 9,30WNW_MHZ ,32.62,-90.65, 2 +MHZ00036, 9,40WNW_MHZ ,32.68,-90.83, 2 +MHZ00037, 9,20NW_MHZ ,32.67,-90.38, 2 +MHZ00038, 9,30NW_MHZ ,32.78,-90.52, 2 +MHZ00039, 9,20NNW_MHZ ,32.74,-90.25, 2 +HRV00000, 9,HRV ,29.85,-90.00, 1 +HRV00001, 9,20N_HRV ,30.18,-90.00, 2 +HRV00002, 9,30N_HRV ,30.35,-90.00, 2 +HRV00003, 9,20NNE_HRV ,30.16,-89.85, 2 +HRV00004, 9,30NNE_HRV ,30.31,-89.78, 2 +HRV00005, 9,40NNE_HRV ,30.47,-89.70, 2 +HRV00006, 9,20NE_HRV ,30.09,-89.73, 2 +HRV00007, 9,30NE_HRV ,30.20,-89.59, 2 +HRV00008, 9,40NE_HRV ,30.32,-89.45, 2 +HRV00009, 9,20ENE_HRV ,29.98,-89.64, 2 +HRV00010, 9,30ENE_HRV ,30.04,-89.47, 2 +HRV00011, 9,40ENE_HRV ,30.10,-89.29, 2 +HRV00012, 9,20E_HRV ,29.85,-89.62, 2 +HRV00013, 9,30E_HRV ,29.85,-89.42, 2 +HRV00014, 9,40E_HRV ,29.85,-89.23, 2 +HRV00015, 9,50E_HRV ,29.85,-89.04, 2 +HRV00016, 9,20ESE_HRV ,29.72,-89.65, 2 +HRV00017, 9,30ESE_HRV ,29.66,-89.47, 2 +HRV00018, 9,40ESE_HRV ,29.59,-89.29, 2 +HRV00019, 9,50ESE_HRV ,29.53,-89.12, 2 +HRV00020, 9,60ESE_HRV ,29.46,-88.94, 2 +HRV00021, 9,70ESE_HRV ,29.40,-88.76, 2 +HRV00022, 9,20SE_HRV ,29.61,-89.73, 2 +HRV00023, 9,30SE_HRV ,29.50,-89.59, 2 +HRV00024, 9,40SE_HRV ,29.38,-89.46, 2 +HRV00025, 9,20SSE_HRV ,29.54,-89.85, 2 +HRV00026, 9,20S_HRV ,29.52,-90.00, 2 +HRV00027, 9,20SSW_HRV ,29.54,-90.15, 2 +HRV00028, 9,20SW_HRV ,29.61,-90.27, 2 +HRV00029, 9,30SW_HRV ,29.50,-90.41, 2 +HRV00030, 9,20WSW_HRV ,29.72,-90.35, 2 +HRV00031, 9,30WSW_HRV ,29.66,-90.53, 2 +HRV00032, 9,40WSW_HRV ,29.59,-90.71, 2 +HRV00033, 9,50WSW_HRV ,29.53,-90.88, 2 +HRV00034, 9,20W_HRV ,29.85,-90.38, 2 +HRV00035, 9,30W_HRV ,29.85,-90.58, 2 +HRV00036, 9,20WNW_HRV ,29.98,-90.36, 2 +HRV00037, 9,30WNW_HRV ,30.04,-90.53, 2 +HRV00038, 9,20NW_HRV ,30.09,-90.27, 2 +HRV00039, 9,30NW_HRV ,30.20,-90.41, 2 +HRV00040, 9,20NNW_HRV ,30.16,-90.15, 2 +HRV00041, 9,30NNW_HRV ,30.31,-90.22, 2 FAM00000, 9,FAM ,37.67,-90.23, 1 FAM00001, 9,20N_FAM ,38.00,-90.23, 2 FAM00002, 9,20NNE_FAM ,37.98,-90.07, 2 @@ -7717,56 +7762,54 @@ FAM00062, 9,20NNW_FAM ,37.98,-90.39, 2 FAM00063, 9,30NNW_FAM ,38.13,-90.47, 2 MCB00000, 9,MCB ,31.30,-90.26, 1 MCB00001, 9,20N_MCB ,31.63,-90.26, 2 -MCB00002, 9,30N_MCB ,31.80,-90.26, 2 -MCB00003, 9,20NNE_MCB ,31.61,-90.11, 2 -MCB00004, 9,30NNE_MCB ,31.76,-90.04, 2 -MCB00005, 9,20NE_MCB ,31.54,-89.98, 2 -MCB00006, 9,30NE_MCB ,31.65,-89.84, 2 -MCB00007, 9,40NE_MCB ,31.77,-89.71, 2 -MCB00008, 9,20ENE_MCB ,31.43,-89.90, 2 -MCB00009, 9,30ENE_MCB ,31.49,-89.72, 2 -MCB00010, 9,40ENE_MCB ,31.55,-89.54, 2 -MCB00011, 9,20E_MCB ,31.30,-89.87, 2 -MCB00012, 9,30E_MCB ,31.30,-89.68, 2 -MCB00013, 9,40E_MCB ,31.30,-89.48, 2 -MCB00014, 9,50E_MCB ,31.30,-89.29, 2 -MCB00015, 9,20ESE_MCB ,31.17,-89.90, 2 -MCB00016, 9,30ESE_MCB ,31.11,-89.72, 2 -MCB00017, 9,40ESE_MCB ,31.04,-89.54, 2 -MCB00018, 9,50ESE_MCB ,30.98,-89.36, 2 -MCB00019, 9,20SE_MCB ,31.06,-89.99, 2 -MCB00020, 9,30SE_MCB ,30.95,-89.85, 2 -MCB00021, 9,40SE_MCB ,30.83,-89.71, 2 -MCB00022, 9,50SE_MCB ,30.71,-89.58, 2 -MCB00023, 9,60SE_MCB ,30.59,-89.44, 2 -MCB00024, 9,20SSE_MCB ,30.99,-90.11, 2 -MCB00025, 9,30SSE_MCB ,30.84,-90.04, 2 -MCB00026, 9,40SSE_MCB ,30.68,-89.96, 2 -MCB00027, 9,20S_MCB ,30.97,-90.26, 2 -MCB00028, 9,30S_MCB ,30.80,-90.26, 2 -MCB00029, 9,40S_MCB ,30.63,-90.26, 2 -MCB00030, 9,20SSW_MCB ,30.99,-90.41, 2 -MCB00031, 9,30SSW_MCB ,30.84,-90.48, 2 -MCB00032, 9,40SSW_MCB ,30.68,-90.56, 2 -MCB00033, 9,20SW_MCB ,31.06,-90.53, 2 -MCB00034, 9,30SW_MCB ,30.95,-90.67, 2 -MCB00035, 9,40SW_MCB ,30.83,-90.81, 2 -MCB00036, 9,20WSW_MCB ,31.17,-90.62, 2 -MCB00037, 9,30WSW_MCB ,31.11,-90.80, 2 -MCB00038, 9,40WSW_MCB ,31.04,-90.98, 2 -MCB00039, 9,20W_MCB ,31.30,-90.65, 2 -MCB00040, 9,30W_MCB ,31.30,-90.84, 2 -MCB00041, 9,40W_MCB ,31.30,-91.04, 2 -MCB00042, 9,50W_MCB ,31.30,-91.23, 2 -MCB00043, 9,20WNW_MCB ,31.43,-90.62, 2 -MCB00044, 9,30WNW_MCB ,31.49,-90.80, 2 -MCB00045, 9,40WNW_MCB ,31.55,-90.98, 2 -MCB00046, 9,50WNW_MCB ,31.62,-91.16, 2 -MCB00047, 9,20NW_MCB ,31.54,-90.54, 2 -MCB00048, 9,30NW_MCB ,31.65,-90.68, 2 -MCB00049, 9,40NW_MCB ,31.77,-90.81, 2 -MCB00050, 9,20NNW_MCB ,31.61,-90.41, 2 -MCB00051, 9,30NNW_MCB ,31.76,-90.48, 2 +MCB00002, 9,20NNE_MCB ,31.61,-90.11, 2 +MCB00003, 9,20NE_MCB ,31.54,-89.98, 2 +MCB00004, 9,30NE_MCB ,31.65,-89.84, 2 +MCB00005, 9,20ENE_MCB ,31.43,-89.90, 2 +MCB00006, 9,30ENE_MCB ,31.49,-89.72, 2 +MCB00007, 9,40ENE_MCB ,31.55,-89.54, 2 +MCB00008, 9,20E_MCB ,31.30,-89.87, 2 +MCB00009, 9,30E_MCB ,31.30,-89.68, 2 +MCB00010, 9,40E_MCB ,31.30,-89.48, 2 +MCB00011, 9,50E_MCB ,31.30,-89.29, 2 +MCB00012, 9,20ESE_MCB ,31.17,-89.90, 2 +MCB00013, 9,30ESE_MCB ,31.11,-89.72, 2 +MCB00014, 9,40ESE_MCB ,31.04,-89.54, 2 +MCB00015, 9,50ESE_MCB ,30.98,-89.36, 2 +MCB00016, 9,20SE_MCB ,31.06,-89.99, 2 +MCB00017, 9,30SE_MCB ,30.95,-89.85, 2 +MCB00018, 9,40SE_MCB ,30.83,-89.71, 2 +MCB00019, 9,50SE_MCB ,30.71,-89.58, 2 +MCB00020, 9,60SE_MCB ,30.59,-89.44, 2 +MCB00021, 9,20SSE_MCB ,30.99,-90.11, 2 +MCB00022, 9,30SSE_MCB ,30.84,-90.04, 2 +MCB00023, 9,40SSE_MCB ,30.68,-89.96, 2 +MCB00024, 9,50SSE_MCB ,30.53,-89.89, 2 +MCB00025, 9,20S_MCB ,30.97,-90.26, 2 +MCB00026, 9,30S_MCB ,30.80,-90.26, 2 +MCB00027, 9,40S_MCB ,30.63,-90.26, 2 +MCB00028, 9,20SSW_MCB ,30.99,-90.41, 2 +MCB00029, 9,30SSW_MCB ,30.84,-90.48, 2 +MCB00030, 9,40SSW_MCB ,30.68,-90.56, 2 +MCB00031, 9,20SW_MCB ,31.06,-90.53, 2 +MCB00032, 9,30SW_MCB ,30.95,-90.67, 2 +MCB00033, 9,40SW_MCB ,30.83,-90.81, 2 +MCB00034, 9,20WSW_MCB ,31.17,-90.62, 2 +MCB00035, 9,30WSW_MCB ,31.11,-90.80, 2 +MCB00036, 9,40WSW_MCB ,31.04,-90.98, 2 +MCB00037, 9,20W_MCB ,31.30,-90.65, 2 +MCB00038, 9,30W_MCB ,31.30,-90.84, 2 +MCB00039, 9,40W_MCB ,31.30,-91.04, 2 +MCB00040, 9,50W_MCB ,31.30,-91.23, 2 +MCB00041, 9,20WNW_MCB ,31.43,-90.62, 2 +MCB00042, 9,30WNW_MCB ,31.49,-90.80, 2 +MCB00043, 9,40WNW_MCB ,31.55,-90.98, 2 +MCB00044, 9,50WNW_MCB ,31.62,-91.16, 2 +MCB00045, 9,20NW_MCB ,31.54,-90.54, 2 +MCB00046, 9,30NW_MCB ,31.65,-90.68, 2 +MCB00047, 9,40NW_MCB ,31.77,-90.81, 2 +MCB00048, 9,20NNW_MCB ,31.61,-90.41, 2 +MCB00049, 9,30NNW_MCB ,31.76,-90.48, 2 SQS00000, 9,SQS ,33.46,-90.28, 1 SQS00001, 9,20N_SQS ,33.79,-90.28, 2 SQS00002, 9,30N_SQS ,33.96,-90.28, 2 @@ -7796,30 +7839,31 @@ SQS00025, 9,20S_SQS ,33.13,-90.28, 2 SQS00026, 9,30S_SQS ,32.96,-90.28, 2 SQS00027, 9,20SSW_SQS ,33.15,-90.43, 2 SQS00028, 9,30SSW_SQS ,33.00,-90.51, 2 -SQS00029, 9,20SW_SQS ,33.22,-90.56, 2 -SQS00030, 9,30SW_SQS ,33.11,-90.70, 2 -SQS00031, 9,40SW_SQS ,32.99,-90.84, 2 -SQS00032, 9,50SW_SQS ,32.87,-90.98, 2 -SQS00033, 9,20WSW_SQS ,33.33,-90.65, 2 -SQS00034, 9,30WSW_SQS ,33.27,-90.83, 2 -SQS00035, 9,40WSW_SQS ,33.20,-91.02, 2 -SQS00036, 9,50WSW_SQS ,33.14,-91.20, 2 -SQS00037, 9,20W_SQS ,33.46,-90.68, 2 -SQS00038, 9,30W_SQS ,33.46,-90.88, 2 -SQS00039, 9,40W_SQS ,33.46,-91.08, 2 -SQS00040, 9,50W_SQS ,33.46,-91.28, 2 -SQS00041, 9,60W_SQS ,33.45,-91.48, 2 -SQS00042, 9,20WNW_SQS ,33.59,-90.65, 2 -SQS00043, 9,30WNW_SQS ,33.65,-90.83, 2 -SQS00044, 9,40WNW_SQS ,33.71,-91.02, 2 -SQS00045, 9,50WNW_SQS ,33.78,-91.21, 2 -SQS00046, 9,20NW_SQS ,33.70,-90.56, 2 -SQS00047, 9,30NW_SQS ,33.81,-90.71, 2 -SQS00048, 9,40NW_SQS ,33.93,-90.85, 2 -SQS00049, 9,50NW_SQS ,34.05,-90.99, 2 -SQS00050, 9,20NNW_SQS ,33.77,-90.43, 2 -SQS00051, 9,30NNW_SQS ,33.92,-90.51, 2 -SQS00052, 9,40NNW_SQS ,34.08,-90.59, 2 +SQS00029, 9,40SSW_SQS ,32.84,-90.58, 2 +SQS00030, 9,20SW_SQS ,33.22,-90.56, 2 +SQS00031, 9,30SW_SQS ,33.11,-90.70, 2 +SQS00032, 9,40SW_SQS ,32.99,-90.84, 2 +SQS00033, 9,50SW_SQS ,32.87,-90.98, 2 +SQS00034, 9,20WSW_SQS ,33.33,-90.65, 2 +SQS00035, 9,30WSW_SQS ,33.27,-90.83, 2 +SQS00036, 9,40WSW_SQS ,33.20,-91.02, 2 +SQS00037, 9,50WSW_SQS ,33.14,-91.20, 2 +SQS00038, 9,20W_SQS ,33.46,-90.68, 2 +SQS00039, 9,30W_SQS ,33.46,-90.88, 2 +SQS00040, 9,40W_SQS ,33.46,-91.08, 2 +SQS00041, 9,50W_SQS ,33.46,-91.28, 2 +SQS00042, 9,60W_SQS ,33.45,-91.48, 2 +SQS00043, 9,20WNW_SQS ,33.59,-90.65, 2 +SQS00044, 9,30WNW_SQS ,33.65,-90.83, 2 +SQS00045, 9,40WNW_SQS ,33.71,-91.02, 2 +SQS00046, 9,50WNW_SQS ,33.78,-91.21, 2 +SQS00047, 9,20NW_SQS ,33.70,-90.56, 2 +SQS00048, 9,30NW_SQS ,33.81,-90.71, 2 +SQS00049, 9,40NW_SQS ,33.93,-90.85, 2 +SQS00050, 9,50NW_SQS ,34.05,-90.99, 2 +SQS00051, 9,20NNW_SQS ,33.77,-90.43, 2 +SQS00052, 9,30NNW_SQS ,33.92,-90.51, 2 +SQS00053, 9,40NNW_SQS ,34.08,-90.59, 2 STL00000, 9,STL ,38.86,-90.48, 1 STL00001, 9,20N_STL ,39.19,-90.48, 2 STL00002, 9,30N_STL ,39.36,-90.48, 2 @@ -8044,43 +8088,47 @@ BTR00008, 9,20ENE_BTR ,30.61,-90.94, 2 BTR00009, 9,30ENE_BTR ,30.67,-90.76, 2 BTR00010, 9,20E_BTR ,30.48,-90.91, 2 BTR00011, 9,30E_BTR ,30.48,-90.72, 2 -BTR00012, 9,20ESE_BTR ,30.35,-90.94, 2 -BTR00013, 9,30ESE_BTR ,30.29,-90.77, 2 -BTR00014, 9,20SE_BTR ,30.24,-91.03, 2 -BTR00015, 9,30SE_BTR ,30.13,-90.89, 2 -BTR00016, 9,20SSE_BTR ,30.17,-91.15, 2 -BTR00017, 9,30SSE_BTR ,30.02,-91.08, 2 -BTR00018, 9,40SSE_BTR ,29.86,-91.01, 2 -BTR00019, 9,20S_BTR ,30.15,-91.30, 2 -BTR00020, 9,30S_BTR ,29.98,-91.30, 2 -BTR00021, 9,40S_BTR ,29.81,-91.30, 2 -BTR00022, 9,50S_BTR ,29.65,-91.30, 2 -BTR00023, 9,60S_BTR ,29.48,-91.30, 2 -BTR00024, 9,70S_BTR ,29.31,-91.30, 2 -BTR00025, 9,20SSW_BTR ,30.17,-91.45, 2 -BTR00026, 9,30SSW_BTR ,30.02,-91.52, 2 -BTR00027, 9,40SSW_BTR ,29.86,-91.59, 2 -BTR00028, 9,50SSW_BTR ,29.71,-91.67, 2 -BTR00029, 9,60SSW_BTR ,29.56,-91.74, 2 -BTR00030, 9,70SSW_BTR ,29.40,-91.81, 2 -BTR00031, 9,80SSW_BTR ,29.25,-91.88, 2 -BTR00032, 9,20SW_BTR ,30.24,-91.57, 2 -BTR00033, 9,30SW_BTR ,30.13,-91.71, 2 -BTR00034, 9,40SW_BTR ,30.01,-91.84, 2 -BTR00035, 9,50SW_BTR ,29.89,-91.98, 2 -BTR00036, 9,20WSW_BTR ,30.35,-91.66, 2 -BTR00037, 9,30WSW_BTR ,30.29,-91.83, 2 -BTR00038, 9,40WSW_BTR ,30.22,-92.01, 2 -BTR00039, 9,50WSW_BTR ,30.16,-92.19, 2 -BTR00040, 9,20W_BTR ,30.48,-91.69, 2 -BTR00041, 9,30W_BTR ,30.48,-91.88, 2 -BTR00042, 9,40W_BTR ,30.48,-92.07, 2 -BTR00043, 9,20WNW_BTR ,30.61,-91.66, 2 -BTR00044, 9,30WNW_BTR ,30.67,-91.84, 2 -BTR00045, 9,20NW_BTR ,30.72,-91.57, 2 -BTR00046, 9,30NW_BTR ,30.83,-91.71, 2 -BTR00047, 9,20NNW_BTR ,30.79,-91.45, 2 -BTR00048, 9,30NNW_BTR ,30.94,-91.52, 2 +BTR00012, 9,40E_BTR ,30.48,-90.53, 2 +BTR00013, 9,20ESE_BTR ,30.35,-90.94, 2 +BTR00014, 9,30ESE_BTR ,30.29,-90.77, 2 +BTR00015, 9,40ESE_BTR ,30.22,-90.59, 2 +BTR00016, 9,20SE_BTR ,30.24,-91.03, 2 +BTR00017, 9,30SE_BTR ,30.13,-90.89, 2 +BTR00018, 9,40SE_BTR ,30.01,-90.76, 2 +BTR00019, 9,20SSE_BTR ,30.17,-91.15, 2 +BTR00020, 9,30SSE_BTR ,30.02,-91.08, 2 +BTR00021, 9,40SSE_BTR ,29.86,-91.01, 2 +BTR00022, 9,50SSE_BTR ,29.71,-90.93, 2 +BTR00023, 9,20S_BTR ,30.15,-91.30, 2 +BTR00024, 9,30S_BTR ,29.98,-91.30, 2 +BTR00025, 9,40S_BTR ,29.81,-91.30, 2 +BTR00026, 9,50S_BTR ,29.65,-91.30, 2 +BTR00027, 9,60S_BTR ,29.48,-91.30, 2 +BTR00028, 9,70S_BTR ,29.31,-91.30, 2 +BTR00029, 9,20SSW_BTR ,30.17,-91.45, 2 +BTR00030, 9,30SSW_BTR ,30.02,-91.52, 2 +BTR00031, 9,40SSW_BTR ,29.86,-91.59, 2 +BTR00032, 9,50SSW_BTR ,29.71,-91.67, 2 +BTR00033, 9,60SSW_BTR ,29.56,-91.74, 2 +BTR00034, 9,70SSW_BTR ,29.40,-91.81, 2 +BTR00035, 9,80SSW_BTR ,29.25,-91.88, 2 +BTR00036, 9,20SW_BTR ,30.24,-91.57, 2 +BTR00037, 9,30SW_BTR ,30.13,-91.71, 2 +BTR00038, 9,40SW_BTR ,30.01,-91.84, 2 +BTR00039, 9,50SW_BTR ,29.89,-91.98, 2 +BTR00040, 9,20WSW_BTR ,30.35,-91.66, 2 +BTR00041, 9,30WSW_BTR ,30.29,-91.83, 2 +BTR00042, 9,40WSW_BTR ,30.22,-92.01, 2 +BTR00043, 9,50WSW_BTR ,30.16,-92.19, 2 +BTR00044, 9,20W_BTR ,30.48,-91.69, 2 +BTR00045, 9,30W_BTR ,30.48,-91.88, 2 +BTR00046, 9,40W_BTR ,30.48,-92.07, 2 +BTR00047, 9,20WNW_BTR ,30.61,-91.66, 2 +BTR00048, 9,30WNW_BTR ,30.67,-91.84, 2 +BTR00049, 9,20NW_BTR ,30.72,-91.57, 2 +BTR00050, 9,30NW_BTR ,30.83,-91.71, 2 +BTR00051, 9,20NNW_BTR ,30.79,-91.45, 2 +BTR00052, 9,30NNW_BTR ,30.94,-91.52, 2 ODI00000, 9,ODI ,43.91,-91.47, 1 ODI00001, 9,20N_ODI ,44.24,-91.47, 2 ODI00002, 9,20NNE_ODI ,44.22,-91.29, 2 @@ -8573,18 +8621,19 @@ IRK00034, 9,20WSW_IRK ,40.01,-92.99, 2 IRK00035, 9,30WSW_IRK ,39.95,-93.19, 2 IRK00036, 9,40WSW_IRK ,39.88,-93.39, 2 IRK00037, 9,50WSW_IRK ,39.82,-93.59, 2 -IRK00038, 9,20W_IRK ,40.14,-93.03, 2 -IRK00039, 9,30W_IRK ,40.14,-93.24, 2 -IRK00040, 9,40W_IRK ,40.14,-93.46, 2 -IRK00041, 9,50W_IRK ,40.13,-93.68, 2 -IRK00042, 9,60W_IRK ,40.13,-93.90, 2 -IRK00043, 9,20WNW_IRK ,40.27,-92.99, 2 -IRK00044, 9,30WNW_IRK ,40.33,-93.20, 2 -IRK00045, 9,40WNW_IRK ,40.39,-93.40, 2 -IRK00046, 9,20NW_IRK ,40.38,-92.90, 2 -IRK00047, 9,30NW_IRK ,40.49,-93.05, 2 -IRK00048, 9,20NNW_IRK ,40.45,-92.76, 2 -IRK00049, 9,30NNW_IRK ,40.60,-92.84, 2 +IRK00038, 9,60WSW_IRK ,39.75,-93.79, 2 +IRK00039, 9,20W_IRK ,40.14,-93.03, 2 +IRK00040, 9,30W_IRK ,40.14,-93.24, 2 +IRK00041, 9,40W_IRK ,40.14,-93.46, 2 +IRK00042, 9,50W_IRK ,40.13,-93.68, 2 +IRK00043, 9,60W_IRK ,40.13,-93.90, 2 +IRK00044, 9,20WNW_IRK ,40.27,-92.99, 2 +IRK00045, 9,30WNW_IRK ,40.33,-93.20, 2 +IRK00046, 9,40WNW_IRK ,40.39,-93.40, 2 +IRK00047, 9,20NW_IRK ,40.38,-92.90, 2 +IRK00048, 9,30NW_IRK ,40.49,-93.05, 2 +IRK00049, 9,20NNW_IRK ,40.45,-92.76, 2 +IRK00050, 9,30NNW_IRK ,40.60,-92.84, 2 ELD00000, 9,ELD ,33.26,-92.74, 1 ELD00001, 9,20N_ELD ,33.59,-92.74, 2 ELD00002, 9,30N_ELD ,33.76,-92.74, 2 @@ -8692,30 +8741,31 @@ LCH00060, 9,70SSW_LCH ,29.06,-93.62, 2 LCH00061, 9,80SSW_LCH ,28.91,-93.69, 2 LCH00062, 9,90SSW_LCH ,28.75,-93.76, 2 LCH00063, 9,100SSW_LCH ,28.60,-93.84, 2 -LCH00064, 9,20SW_LCH ,29.90,-93.38, 2 -LCH00065, 9,30SW_LCH ,29.79,-93.52, 2 -LCH00066, 9,40SW_LCH ,29.67,-93.65, 2 -LCH00067, 9,50SW_LCH ,29.55,-93.79, 2 -LCH00068, 9,60SW_LCH ,29.43,-93.92, 2 -LCH00069, 9,70SW_LCH ,29.31,-94.06, 2 -LCH00070, 9,20WSW_LCH ,30.01,-93.47, 2 -LCH00071, 9,30WSW_LCH ,29.95,-93.64, 2 -LCH00072, 9,40WSW_LCH ,29.88,-93.82, 2 -LCH00073, 9,50WSW_LCH ,29.82,-94.00, 2 -LCH00074, 9,60WSW_LCH ,29.75,-94.17, 2 -LCH00075, 9,20W_LCH ,30.14,-93.50, 2 -LCH00076, 9,30W_LCH ,30.14,-93.69, 2 -LCH00077, 9,40W_LCH ,30.14,-93.88, 2 -LCH00078, 9,50W_LCH ,30.14,-94.07, 2 -LCH00079, 9,20WNW_LCH ,30.27,-93.47, 2 -LCH00080, 9,30WNW_LCH ,30.33,-93.64, 2 -LCH00081, 9,40WNW_LCH ,30.39,-93.82, 2 -LCH00082, 9,20NW_LCH ,30.38,-93.38, 2 -LCH00083, 9,30NW_LCH ,30.49,-93.52, 2 -LCH00084, 9,40NW_LCH ,30.61,-93.66, 2 -LCH00085, 9,20NNW_LCH ,30.45,-93.26, 2 -LCH00086, 9,30NNW_LCH ,30.60,-93.33, 2 -LCH00087, 9,40NNW_LCH ,30.76,-93.41, 2 +LCH00064, 9,110SSW_LCH ,28.45,-93.91, 2 +LCH00065, 9,20SW_LCH ,29.90,-93.38, 2 +LCH00066, 9,30SW_LCH ,29.79,-93.52, 2 +LCH00067, 9,40SW_LCH ,29.67,-93.65, 2 +LCH00068, 9,50SW_LCH ,29.55,-93.79, 2 +LCH00069, 9,60SW_LCH ,29.43,-93.92, 2 +LCH00070, 9,70SW_LCH ,29.31,-94.06, 2 +LCH00071, 9,20WSW_LCH ,30.01,-93.47, 2 +LCH00072, 9,30WSW_LCH ,29.95,-93.64, 2 +LCH00073, 9,40WSW_LCH ,29.88,-93.82, 2 +LCH00074, 9,50WSW_LCH ,29.82,-94.00, 2 +LCH00075, 9,60WSW_LCH ,29.75,-94.17, 2 +LCH00076, 9,20W_LCH ,30.14,-93.50, 2 +LCH00077, 9,30W_LCH ,30.14,-93.69, 2 +LCH00078, 9,40W_LCH ,30.14,-93.88, 2 +LCH00079, 9,50W_LCH ,30.14,-94.07, 2 +LCH00080, 9,20WNW_LCH ,30.27,-93.47, 2 +LCH00081, 9,30WNW_LCH ,30.33,-93.64, 2 +LCH00082, 9,40WNW_LCH ,30.39,-93.82, 2 +LCH00083, 9,20NW_LCH ,30.38,-93.38, 2 +LCH00084, 9,30NW_LCH ,30.49,-93.52, 2 +LCH00085, 9,40NW_LCH ,30.61,-93.66, 2 +LCH00086, 9,20NNW_LCH ,30.45,-93.26, 2 +LCH00087, 9,30NNW_LCH ,30.60,-93.33, 2 +LCH00088, 9,40NNW_LCH ,30.76,-93.41, 2 MSP00000, 9,MSP ,44.88,-93.23, 1 MSP00001, 9,20N_MSP ,45.21,-93.23, 2 MSP00002, 9,30N_MSP ,45.38,-93.23, 2 @@ -8888,126 +8938,133 @@ SGF00057, 9,30NW_SGF ,37.71,-93.78, 2 SGF00058, 9,20NNW_SGF ,37.67,-93.49, 2 SGF00059, 9,30NNW_SGF ,37.82,-93.57, 2 INL00000, 9,INL ,48.57,-93.40, 1 -INL00001, 9,50N_INL ,49.40,-93.40, 2 -INL00002, 9,60N_INL ,49.57,-93.40, 2 -INL00003, 9,70N_INL ,49.74,-93.40, 2 -INL00004, 9,80N_INL ,49.90,-93.40, 2 -INL00005, 9,90N_INL ,50.07,-93.40, 2 -INL00006, 9,100N_INL ,50.24,-93.40, 2 -INL00007, 9,110N_INL ,50.40,-93.40, 2 -INL00008, 9,120N_INL ,50.57,-93.40, 2 -INL00009, 9,130N_INL ,50.74,-93.40, 2 -INL00010, 9,140N_INL ,50.90,-93.40, 2 -INL00011, 9,150N_INL ,51.07,-93.40, 2 -INL00012, 9,160N_INL ,51.23,-93.40, 2 -INL00013, 9,170N_INL ,51.40,-93.40, 2 -INL00014, 9,50NNE_INL ,49.34,-92.91, 2 -INL00015, 9,60NNE_INL ,49.49,-92.81, 2 -INL00016, 9,70NNE_INL ,49.65,-92.71, 2 -INL00017, 9,80NNE_INL ,49.80,-92.61, 2 -INL00018, 9,90NNE_INL ,49.95,-92.51, 2 -INL00019, 9,100NNE_INL ,50.10,-92.41, 2 -INL00020, 9,110NNE_INL ,50.26,-92.30, 2 -INL00021, 9,120NNE_INL ,50.41,-92.20, 2 -INL00022, 9,130NNE_INL ,50.56,-92.10, 2 -INL00023, 9,140NNE_INL ,50.72,-91.99, 2 -INL00024, 9,150NNE_INL ,50.87,-91.89, 2 -INL00025, 9,160NNE_INL ,51.02,-91.78, 2 -INL00026, 9,170NNE_INL ,51.17,-91.67, 2 -INL00027, 9,180NNE_INL ,51.33,-91.56, 2 -INL00028, 9,190NNE_INL ,51.48,-91.46, 2 -INL00029, 9,200NNE_INL ,51.63,-91.35, 2 -INL00030, 9,210NNE_INL ,51.78,-91.24, 2 -INL00031, 9,220NNE_INL ,51.93,-91.13, 2 -INL00032, 9,230NNE_INL ,52.09,-91.02, 2 -INL00033, 9,240NNE_INL ,52.24,-90.90, 2 -INL00034, 9,20NE_INL ,48.80,-93.04, 2 -INL00035, 9,30NE_INL ,48.92,-92.86, 2 -INL00036, 9,40NE_INL ,49.04,-92.68, 2 -INL00037, 9,50NE_INL ,49.16,-92.50, 2 -INL00038, 9,60NE_INL ,49.27,-92.32, 2 -INL00039, 9,70NE_INL ,49.39,-92.13, 2 -INL00040, 9,80NE_INL ,49.50,-91.95, 2 -INL00041, 9,90NE_INL ,49.62,-91.76, 2 -INL00042, 9,100NE_INL ,49.73,-91.58, 2 -INL00043, 9,110NE_INL ,49.85,-91.39, 2 -INL00044, 9,120NE_INL ,49.96,-91.20, 2 -INL00045, 9,20ENE_INL ,48.70,-92.93, 2 -INL00046, 9,30ENE_INL ,48.76,-92.70, 2 -INL00047, 9,40ENE_INL ,48.82,-92.47, 2 -INL00048, 9,50ENE_INL ,48.88,-92.23, 2 -INL00049, 9,60ENE_INL ,48.94,-91.99, 2 -INL00050, 9,70ENE_INL ,49.00,-91.76, 2 -INL00051, 9,80ENE_INL ,49.06,-91.52, 2 -INL00052, 9,90ENE_INL ,49.12,-91.28, 2 -INL00053, 9,20E_INL ,48.57,-92.90, 2 -INL00054, 9,30E_INL ,48.57,-92.64, 2 -INL00055, 9,40E_INL ,48.57,-92.39, 2 -INL00056, 9,50E_INL ,48.56,-92.14, 2 -INL00057, 9,60E_INL ,48.56,-91.89, 2 -INL00058, 9,70E_INL ,48.56,-91.64, 2 -INL00059, 9,80E_INL ,48.55,-91.39, 2 -INL00060, 9,20ESE_INL ,48.44,-92.94, 2 -INL00061, 9,30ESE_INL ,48.38,-92.71, 2 -INL00062, 9,40ESE_INL ,48.31,-92.47, 2 -INL00063, 9,50ESE_INL ,48.25,-92.24, 2 -INL00064, 9,60ESE_INL ,48.18,-92.02, 2 -INL00065, 9,70ESE_INL ,48.11,-91.79, 2 -INL00066, 9,80ESE_INL ,48.05,-91.56, 2 -INL00067, 9,20SE_INL ,48.33,-93.05, 2 -INL00068, 9,30SE_INL ,48.22,-92.87, 2 -INL00069, 9,40SE_INL ,48.10,-92.69, 2 -INL00070, 9,50SE_INL ,47.98,-92.52, 2 -INL00071, 9,60SE_INL ,47.86,-92.35, 2 -INL00072, 9,70SE_INL ,47.74,-92.17, 2 -INL00073, 9,20SSE_INL ,48.26,-93.21, 2 -INL00074, 9,30SSE_INL ,48.11,-93.11, 2 -INL00075, 9,40SSE_INL ,47.95,-93.02, 2 -INL00076, 9,50SSE_INL ,47.80,-92.93, 2 -INL00077, 9,60SSE_INL ,47.65,-92.83, 2 -INL00078, 9,20S_INL ,48.24,-93.40, 2 -INL00079, 9,30S_INL ,48.07,-93.40, 2 -INL00080, 9,40S_INL ,47.90,-93.40, 2 -INL00081, 9,50S_INL ,47.74,-93.40, 2 -INL00082, 9,60S_INL ,47.57,-93.40, 2 -INL00083, 9,70S_INL ,47.40,-93.40, 2 -INL00084, 9,20SSW_INL ,48.26,-93.59, 2 -INL00085, 9,30SSW_INL ,48.11,-93.69, 2 -INL00086, 9,40SSW_INL ,47.95,-93.78, 2 -INL00087, 9,50SSW_INL ,47.80,-93.87, 2 -INL00088, 9,20SW_INL ,48.33,-93.75, 2 -INL00089, 9,30SW_INL ,48.22,-93.93, 2 -INL00090, 9,40SW_INL ,48.10,-94.11, 2 -INL00091, 9,50SW_INL ,47.98,-94.28, 2 -INL00092, 9,20WSW_INL ,48.44,-93.86, 2 -INL00093, 9,30WSW_INL ,48.38,-94.09, 2 -INL00094, 9,40WSW_INL ,48.31,-94.33, 2 -INL00095, 9,50WSW_INL ,48.25,-94.56, 2 -INL00096, 9,20W_INL ,48.57,-93.90, 2 -INL00097, 9,30W_INL ,48.57,-94.16, 2 -INL00098, 9,40W_INL ,48.57,-94.41, 2 -INL00099, 9,50W_INL ,48.56,-94.66, 2 -INL00100, 9,60W_INL ,48.56,-94.91, 2 -INL00101, 9,70W_INL ,48.56,-95.16, 2 -INL00102, 9,20WNW_INL ,48.70,-93.87, 2 -INL00103, 9,30WNW_INL ,48.76,-94.10, 2 -INL00104, 9,40WNW_INL ,48.82,-94.33, 2 -INL00105, 9,50WNW_INL ,48.88,-94.57, 2 -INL00106, 9,60WNW_INL ,48.94,-94.81, 2 -INL00107, 9,70WNW_INL ,49.00,-95.04, 2 -INL00108, 9,20NW_INL ,48.80,-93.76, 2 -INL00109, 9,30NW_INL ,48.92,-93.94, 2 -INL00110, 9,40NW_INL ,49.04,-94.12, 2 -INL00111, 9,50NW_INL ,49.16,-94.30, 2 -INL00112, 9,60NW_INL ,49.27,-94.48, 2 -INL00113, 9,70NW_INL ,49.39,-94.67, 2 -INL00114, 9,80NW_INL ,49.50,-94.85, 2 -INL00115, 9,50NNW_INL ,49.34,-93.89, 2 -INL00116, 9,60NNW_INL ,49.49,-93.99, 2 -INL00117, 9,70NNW_INL ,49.65,-94.09, 2 -INL00118, 9,80NNW_INL ,49.80,-94.19, 2 -INL00119, 9,90NNW_INL ,49.95,-94.29, 2 -INL00120, 9,100NNW_INL ,50.10,-94.39, 2 +INL00001, 9,40N_INL ,49.24,-93.40, 2 +INL00002, 9,50N_INL ,49.40,-93.40, 2 +INL00003, 9,60N_INL ,49.57,-93.40, 2 +INL00004, 9,70N_INL ,49.74,-93.40, 2 +INL00005, 9,80N_INL ,49.90,-93.40, 2 +INL00006, 9,90N_INL ,50.07,-93.40, 2 +INL00007, 9,100N_INL ,50.24,-93.40, 2 +INL00008, 9,110N_INL ,50.40,-93.40, 2 +INL00009, 9,120N_INL ,50.57,-93.40, 2 +INL00010, 9,130N_INL ,50.74,-93.40, 2 +INL00011, 9,140N_INL ,50.90,-93.40, 2 +INL00012, 9,150N_INL ,51.07,-93.40, 2 +INL00013, 9,160N_INL ,51.23,-93.40, 2 +INL00014, 9,170N_INL ,51.40,-93.40, 2 +INL00015, 9,20NNE_INL ,48.88,-93.21, 2 +INL00016, 9,30NNE_INL ,49.03,-93.11, 2 +INL00017, 9,40NNE_INL ,49.18,-93.01, 2 +INL00018, 9,50NNE_INL ,49.34,-92.91, 2 +INL00019, 9,60NNE_INL ,49.49,-92.81, 2 +INL00020, 9,70NNE_INL ,49.65,-92.71, 2 +INL00021, 9,80NNE_INL ,49.80,-92.61, 2 +INL00022, 9,90NNE_INL ,49.95,-92.51, 2 +INL00023, 9,100NNE_INL ,50.10,-92.41, 2 +INL00024, 9,110NNE_INL ,50.26,-92.30, 2 +INL00025, 9,120NNE_INL ,50.41,-92.20, 2 +INL00026, 9,130NNE_INL ,50.56,-92.10, 2 +INL00027, 9,140NNE_INL ,50.72,-91.99, 2 +INL00028, 9,150NNE_INL ,50.87,-91.89, 2 +INL00029, 9,160NNE_INL ,51.02,-91.78, 2 +INL00030, 9,170NNE_INL ,51.17,-91.67, 2 +INL00031, 9,180NNE_INL ,51.33,-91.56, 2 +INL00032, 9,190NNE_INL ,51.48,-91.46, 2 +INL00033, 9,200NNE_INL ,51.63,-91.35, 2 +INL00034, 9,210NNE_INL ,51.78,-91.24, 2 +INL00035, 9,220NNE_INL ,51.93,-91.13, 2 +INL00036, 9,230NNE_INL ,52.09,-91.02, 2 +INL00037, 9,240NNE_INL ,52.24,-90.90, 2 +INL00038, 9,20NE_INL ,48.80,-93.04, 2 +INL00039, 9,30NE_INL ,48.92,-92.86, 2 +INL00040, 9,40NE_INL ,49.04,-92.68, 2 +INL00041, 9,50NE_INL ,49.16,-92.50, 2 +INL00042, 9,60NE_INL ,49.27,-92.32, 2 +INL00043, 9,70NE_INL ,49.39,-92.13, 2 +INL00044, 9,80NE_INL ,49.50,-91.95, 2 +INL00045, 9,90NE_INL ,49.62,-91.76, 2 +INL00046, 9,100NE_INL ,49.73,-91.58, 2 +INL00047, 9,110NE_INL ,49.85,-91.39, 2 +INL00048, 9,120NE_INL ,49.96,-91.20, 2 +INL00049, 9,20ENE_INL ,48.70,-92.93, 2 +INL00050, 9,30ENE_INL ,48.76,-92.70, 2 +INL00051, 9,40ENE_INL ,48.82,-92.47, 2 +INL00052, 9,50ENE_INL ,48.88,-92.23, 2 +INL00053, 9,60ENE_INL ,48.94,-91.99, 2 +INL00054, 9,70ENE_INL ,49.00,-91.76, 2 +INL00055, 9,80ENE_INL ,49.06,-91.52, 2 +INL00056, 9,90ENE_INL ,49.12,-91.28, 2 +INL00057, 9,20E_INL ,48.57,-92.90, 2 +INL00058, 9,30E_INL ,48.57,-92.64, 2 +INL00059, 9,40E_INL ,48.57,-92.39, 2 +INL00060, 9,50E_INL ,48.56,-92.14, 2 +INL00061, 9,60E_INL ,48.56,-91.89, 2 +INL00062, 9,70E_INL ,48.56,-91.64, 2 +INL00063, 9,80E_INL ,48.55,-91.39, 2 +INL00064, 9,20ESE_INL ,48.44,-92.94, 2 +INL00065, 9,30ESE_INL ,48.38,-92.71, 2 +INL00066, 9,40ESE_INL ,48.31,-92.47, 2 +INL00067, 9,50ESE_INL ,48.25,-92.24, 2 +INL00068, 9,60ESE_INL ,48.18,-92.02, 2 +INL00069, 9,70ESE_INL ,48.11,-91.79, 2 +INL00070, 9,80ESE_INL ,48.05,-91.56, 2 +INL00071, 9,20SE_INL ,48.33,-93.05, 2 +INL00072, 9,30SE_INL ,48.22,-92.87, 2 +INL00073, 9,40SE_INL ,48.10,-92.69, 2 +INL00074, 9,50SE_INL ,47.98,-92.52, 2 +INL00075, 9,60SE_INL ,47.86,-92.35, 2 +INL00076, 9,70SE_INL ,47.74,-92.17, 2 +INL00077, 9,20SSE_INL ,48.26,-93.21, 2 +INL00078, 9,30SSE_INL ,48.11,-93.11, 2 +INL00079, 9,40SSE_INL ,47.95,-93.02, 2 +INL00080, 9,50SSE_INL ,47.80,-92.93, 2 +INL00081, 9,60SSE_INL ,47.65,-92.83, 2 +INL00082, 9,20S_INL ,48.24,-93.40, 2 +INL00083, 9,30S_INL ,48.07,-93.40, 2 +INL00084, 9,40S_INL ,47.90,-93.40, 2 +INL00085, 9,50S_INL ,47.74,-93.40, 2 +INL00086, 9,60S_INL ,47.57,-93.40, 2 +INL00087, 9,70S_INL ,47.40,-93.40, 2 +INL00088, 9,20SSW_INL ,48.26,-93.59, 2 +INL00089, 9,30SSW_INL ,48.11,-93.69, 2 +INL00090, 9,40SSW_INL ,47.95,-93.78, 2 +INL00091, 9,50SSW_INL ,47.80,-93.87, 2 +INL00092, 9,20SW_INL ,48.33,-93.75, 2 +INL00093, 9,30SW_INL ,48.22,-93.93, 2 +INL00094, 9,40SW_INL ,48.10,-94.11, 2 +INL00095, 9,50SW_INL ,47.98,-94.28, 2 +INL00096, 9,20WSW_INL ,48.44,-93.86, 2 +INL00097, 9,30WSW_INL ,48.38,-94.09, 2 +INL00098, 9,40WSW_INL ,48.31,-94.33, 2 +INL00099, 9,50WSW_INL ,48.25,-94.56, 2 +INL00100, 9,20W_INL ,48.57,-93.90, 2 +INL00101, 9,30W_INL ,48.57,-94.16, 2 +INL00102, 9,40W_INL ,48.57,-94.41, 2 +INL00103, 9,50W_INL ,48.56,-94.66, 2 +INL00104, 9,60W_INL ,48.56,-94.91, 2 +INL00105, 9,70W_INL ,48.56,-95.16, 2 +INL00106, 9,20WNW_INL ,48.70,-93.87, 2 +INL00107, 9,30WNW_INL ,48.76,-94.10, 2 +INL00108, 9,40WNW_INL ,48.82,-94.33, 2 +INL00109, 9,50WNW_INL ,48.88,-94.57, 2 +INL00110, 9,60WNW_INL ,48.94,-94.81, 2 +INL00111, 9,70WNW_INL ,49.00,-95.04, 2 +INL00112, 9,20NW_INL ,48.80,-93.76, 2 +INL00113, 9,30NW_INL ,48.92,-93.94, 2 +INL00114, 9,40NW_INL ,49.04,-94.12, 2 +INL00115, 9,50NW_INL ,49.16,-94.30, 2 +INL00116, 9,60NW_INL ,49.27,-94.48, 2 +INL00117, 9,70NW_INL ,49.39,-94.67, 2 +INL00118, 9,80NW_INL ,49.50,-94.85, 2 +INL00119, 9,20NNW_INL ,48.88,-93.59, 2 +INL00120, 9,30NNW_INL ,49.03,-93.69, 2 +INL00121, 9,40NNW_INL ,49.18,-93.79, 2 +INL00122, 9,50NNW_INL ,49.34,-93.89, 2 +INL00123, 9,60NNW_INL ,49.49,-93.99, 2 +INL00124, 9,70NNW_INL ,49.65,-94.09, 2 +INL00125, 9,80NNW_INL ,49.80,-94.19, 2 +INL00126, 9,90NNW_INL ,49.95,-94.29, 2 +INL00127, 9,100NNW_INL ,50.10,-94.39, 2 DSM00000, 9,DSM ,41.44,-93.65, 1 DSM00001, 9,20N_DSM ,41.77,-93.65, 2 DSM00002, 9,30N_DSM ,41.94,-93.65, 2 @@ -9357,107 +9414,107 @@ BUM00001, 9,20N_BUM ,38.60,-94.49, 2 BUM00002, 9,20NNE_BUM ,38.58,-94.33, 2 BUM00003, 9,20NE_BUM ,38.51,-94.19, 2 BUM00004, 9,30NE_BUM ,38.62,-94.04, 2 -BUM00005, 9,20ENE_BUM ,38.40,-94.10, 2 -BUM00006, 9,30ENE_BUM ,38.46,-93.90, 2 -BUM00007, 9,40ENE_BUM ,38.52,-93.70, 2 -BUM00008, 9,50ENE_BUM ,38.58,-93.51, 2 -BUM00009, 9,20E_BUM ,38.27,-94.07, 2 -BUM00010, 9,30E_BUM ,38.27,-93.85, 2 -BUM00011, 9,40E_BUM ,38.27,-93.64, 2 -BUM00012, 9,50E_BUM ,38.27,-93.43, 2 -BUM00013, 9,20ESE_BUM ,38.14,-94.10, 2 -BUM00014, 9,30ESE_BUM ,38.08,-93.90, 2 -BUM00015, 9,40ESE_BUM ,38.01,-93.71, 2 -BUM00016, 9,20SE_BUM ,38.03,-94.19, 2 -BUM00017, 9,30SE_BUM ,37.92,-94.04, 2 -BUM00018, 9,40SE_BUM ,37.80,-93.89, 2 -BUM00019, 9,20SSE_BUM ,37.96,-94.33, 2 -BUM00020, 9,30SSE_BUM ,37.81,-94.25, 2 -BUM00021, 9,40SSE_BUM ,37.65,-94.17, 2 -BUM00022, 9,20S_BUM ,37.94,-94.49, 2 -BUM00023, 9,30S_BUM ,37.77,-94.49, 2 -BUM00024, 9,40S_BUM ,37.60,-94.49, 2 -BUM00025, 9,50S_BUM ,37.44,-94.49, 2 -BUM00026, 9,20SSW_BUM ,37.96,-94.65, 2 -BUM00027, 9,30SSW_BUM ,37.81,-94.73, 2 -BUM00028, 9,40SSW_BUM ,37.65,-94.81, 2 -BUM00029, 9,20SW_BUM ,38.03,-94.79, 2 -BUM00030, 9,30SW_BUM ,37.92,-94.94, 2 -BUM00031, 9,40SW_BUM ,37.80,-95.09, 2 -BUM00032, 9,20WSW_BUM ,38.14,-94.88, 2 -BUM00033, 9,30WSW_BUM ,38.08,-95.08, 2 -BUM00034, 9,40WSW_BUM ,38.01,-95.27, 2 -BUM00035, 9,50WSW_BUM ,37.95,-95.47, 2 -BUM00036, 9,20W_BUM ,38.27,-94.91, 2 -BUM00037, 9,30W_BUM ,38.27,-95.13, 2 -BUM00038, 9,40W_BUM ,38.27,-95.34, 2 -BUM00039, 9,50W_BUM ,38.27,-95.55, 2 -BUM00040, 9,60W_BUM ,38.26,-95.76, 2 -BUM00041, 9,70W_BUM ,38.26,-95.97, 2 -BUM00042, 9,20WNW_BUM ,38.40,-94.88, 2 -BUM00043, 9,30WNW_BUM ,38.46,-95.08, 2 -BUM00044, 9,40WNW_BUM ,38.52,-95.28, 2 -BUM00045, 9,50WNW_BUM ,38.58,-95.47, 2 +BUM00005, 9,40NE_BUM ,38.74,-93.89, 2 +BUM00006, 9,20ENE_BUM ,38.40,-94.10, 2 +BUM00007, 9,30ENE_BUM ,38.46,-93.90, 2 +BUM00008, 9,40ENE_BUM ,38.52,-93.70, 2 +BUM00009, 9,50ENE_BUM ,38.58,-93.51, 2 +BUM00010, 9,20E_BUM ,38.27,-94.07, 2 +BUM00011, 9,30E_BUM ,38.27,-93.85, 2 +BUM00012, 9,40E_BUM ,38.27,-93.64, 2 +BUM00013, 9,50E_BUM ,38.27,-93.43, 2 +BUM00014, 9,20ESE_BUM ,38.14,-94.10, 2 +BUM00015, 9,30ESE_BUM ,38.08,-93.90, 2 +BUM00016, 9,40ESE_BUM ,38.01,-93.71, 2 +BUM00017, 9,20SE_BUM ,38.03,-94.19, 2 +BUM00018, 9,30SE_BUM ,37.92,-94.04, 2 +BUM00019, 9,40SE_BUM ,37.80,-93.89, 2 +BUM00020, 9,20SSE_BUM ,37.96,-94.33, 2 +BUM00021, 9,30SSE_BUM ,37.81,-94.25, 2 +BUM00022, 9,40SSE_BUM ,37.65,-94.17, 2 +BUM00023, 9,20S_BUM ,37.94,-94.49, 2 +BUM00024, 9,30S_BUM ,37.77,-94.49, 2 +BUM00025, 9,40S_BUM ,37.60,-94.49, 2 +BUM00026, 9,50S_BUM ,37.44,-94.49, 2 +BUM00027, 9,20SSW_BUM ,37.96,-94.65, 2 +BUM00028, 9,30SSW_BUM ,37.81,-94.73, 2 +BUM00029, 9,40SSW_BUM ,37.65,-94.81, 2 +BUM00030, 9,20SW_BUM ,38.03,-94.79, 2 +BUM00031, 9,30SW_BUM ,37.92,-94.94, 2 +BUM00032, 9,40SW_BUM ,37.80,-95.09, 2 +BUM00033, 9,20WSW_BUM ,38.14,-94.88, 2 +BUM00034, 9,30WSW_BUM ,38.08,-95.08, 2 +BUM00035, 9,40WSW_BUM ,38.01,-95.27, 2 +BUM00036, 9,50WSW_BUM ,37.95,-95.47, 2 +BUM00037, 9,20W_BUM ,38.27,-94.91, 2 +BUM00038, 9,30W_BUM ,38.27,-95.13, 2 +BUM00039, 9,40W_BUM ,38.27,-95.34, 2 +BUM00040, 9,50W_BUM ,38.27,-95.55, 2 +BUM00041, 9,60W_BUM ,38.26,-95.76, 2 +BUM00042, 9,70W_BUM ,38.26,-95.97, 2 +BUM00043, 9,20WNW_BUM ,38.40,-94.88, 2 +BUM00044, 9,30WNW_BUM ,38.46,-95.08, 2 +BUM00045, 9,40WNW_BUM ,38.52,-95.28, 2 BUM00046, 9,20NW_BUM ,38.51,-94.79, 2 -BUM00047, 9,30NW_BUM ,38.62,-94.94, 2 -BUM00048, 9,20NNW_BUM ,38.58,-94.65, 2 -MKC00000, 9,MKC ,39.28,-94.59, 1 -MKC00001, 9,20N_MKC ,39.61,-94.59, 2 -MKC00002, 9,30N_MKC ,39.78,-94.59, 2 -MKC00003, 9,40N_MKC ,39.95,-94.59, 2 -MKC00004, 9,50N_MKC ,40.11,-94.59, 2 -MKC00005, 9,60N_MKC ,40.28,-94.59, 2 -MKC00006, 9,20NNE_MKC ,39.59,-94.42, 2 -MKC00007, 9,30NNE_MKC ,39.74,-94.34, 2 -MKC00008, 9,40NNE_MKC ,39.90,-94.26, 2 -MKC00009, 9,50NNE_MKC ,40.05,-94.17, 2 -MKC00010, 9,20NE_MKC ,39.52,-94.28, 2 -MKC00011, 9,30NE_MKC ,39.63,-94.13, 2 -MKC00012, 9,40NE_MKC ,39.75,-93.98, 2 -MKC00013, 9,20ENE_MKC ,39.41,-94.19, 2 -MKC00014, 9,30ENE_MKC ,39.47,-93.99, 2 -MKC00015, 9,40ENE_MKC ,39.53,-93.79, 2 -MKC00016, 9,20E_MKC ,39.28,-94.16, 2 -MKC00017, 9,30E_MKC ,39.28,-93.94, 2 -MKC00018, 9,40E_MKC ,39.28,-93.73, 2 -MKC00019, 9,50E_MKC ,39.28,-93.51, 2 -MKC00020, 9,20ESE_MKC ,39.15,-94.19, 2 -MKC00021, 9,30ESE_MKC ,39.09,-94.00, 2 -MKC00022, 9,40ESE_MKC ,39.02,-93.80, 2 -MKC00023, 9,50ESE_MKC ,38.96,-93.60, 2 -MKC00024, 9,60ESE_MKC ,38.89,-93.40, 2 -MKC00025, 9,20SE_MKC ,39.04,-94.29, 2 -MKC00026, 9,30SE_MKC ,38.93,-94.14, 2 -MKC00027, 9,40SE_MKC ,38.81,-93.99, 2 -MKC00028, 9,20SSE_MKC ,38.97,-94.43, 2 -MKC00029, 9,30SSE_MKC ,38.82,-94.34, 2 -MKC00030, 9,20S_MKC ,38.95,-94.59, 2 -MKC00031, 9,30S_MKC ,38.78,-94.59, 2 -MKC00032, 9,20SSW_MKC ,38.97,-94.75, 2 -MKC00033, 9,30SSW_MKC ,38.82,-94.84, 2 -MKC00034, 9,40SSW_MKC ,38.66,-94.92, 2 -MKC00035, 9,20SW_MKC ,39.04,-94.89, 2 -MKC00036, 9,30SW_MKC ,38.93,-95.04, 2 -MKC00037, 9,40SW_MKC ,38.81,-95.19, 2 -MKC00038, 9,50SW_MKC ,38.69,-95.34, 2 -MKC00039, 9,20WSW_MKC ,39.15,-94.99, 2 -MKC00040, 9,30WSW_MKC ,39.09,-95.18, 2 -MKC00041, 9,40WSW_MKC ,39.02,-95.38, 2 -MKC00042, 9,50WSW_MKC ,38.96,-95.58, 2 -MKC00043, 9,60WSW_MKC ,38.89,-95.78, 2 -MKC00044, 9,70WSW_MKC ,38.83,-95.97, 2 -MKC00045, 9,20W_MKC ,39.28,-95.02, 2 -MKC00046, 9,30W_MKC ,39.28,-95.24, 2 -MKC00047, 9,40W_MKC ,39.28,-95.45, 2 -MKC00048, 9,20WNW_MKC ,39.41,-94.99, 2 -MKC00049, 9,30WNW_MKC ,39.47,-95.19, 2 -MKC00050, 9,40WNW_MKC ,39.53,-95.39, 2 -MKC00051, 9,20NW_MKC ,39.52,-94.90, 2 -MKC00052, 9,30NW_MKC ,39.63,-95.05, 2 -MKC00053, 9,40NW_MKC ,39.75,-95.20, 2 -MKC00054, 9,20NNW_MKC ,39.59,-94.76, 2 -MKC00055, 9,30NNW_MKC ,39.74,-94.84, 2 -MKC00056, 9,40NNW_MKC ,39.90,-94.92, 2 +BUM00047, 9,20NNW_BUM ,38.58,-94.65, 2 +MCI00000, 9,MCI ,39.29,-94.74, 1 +MCI00001, 9,20N_MCI ,39.62,-94.74, 2 +MCI00002, 9,30N_MCI ,39.79,-94.74, 2 +MCI00003, 9,40N_MCI ,39.96,-94.74, 2 +MCI00004, 9,50N_MCI ,40.12,-94.74, 2 +MCI00005, 9,20NNE_MCI ,39.60,-94.57, 2 +MCI00006, 9,30NNE_MCI ,39.75,-94.49, 2 +MCI00007, 9,40NNE_MCI ,39.91,-94.41, 2 +MCI00008, 9,50NNE_MCI ,40.06,-94.32, 2 +MCI00009, 9,60NNE_MCI ,40.21,-94.24, 2 +MCI00010, 9,20NE_MCI ,39.53,-94.43, 2 +MCI00011, 9,30NE_MCI ,39.64,-94.28, 2 +MCI00012, 9,40NE_MCI ,39.76,-94.13, 2 +MCI00013, 9,50NE_MCI ,39.88,-93.97, 2 +MCI00014, 9,20ENE_MCI ,39.42,-94.34, 2 +MCI00015, 9,30ENE_MCI ,39.48,-94.14, 2 +MCI00016, 9,40ENE_MCI ,39.54,-93.94, 2 +MCI00017, 9,50ENE_MCI ,39.60,-93.74, 2 +MCI00018, 9,20E_MCI ,39.29,-94.31, 2 +MCI00019, 9,30E_MCI ,39.29,-94.09, 2 +MCI00020, 9,40E_MCI ,39.29,-93.88, 2 +MCI00021, 9,50E_MCI ,39.29,-93.66, 2 +MCI00022, 9,20ESE_MCI ,39.16,-94.34, 2 +MCI00023, 9,30ESE_MCI ,39.10,-94.15, 2 +MCI00024, 9,40ESE_MCI ,39.03,-93.95, 2 +MCI00025, 9,50ESE_MCI ,38.97,-93.75, 2 +MCI00026, 9,60ESE_MCI ,38.90,-93.55, 2 +MCI00027, 9,20SE_MCI ,39.05,-94.44, 2 +MCI00028, 9,30SE_MCI ,38.94,-94.29, 2 +MCI00029, 9,40SE_MCI ,38.82,-94.14, 2 +MCI00030, 9,20SSE_MCI ,38.98,-94.58, 2 +MCI00031, 9,30SSE_MCI ,38.83,-94.49, 2 +MCI00032, 9,20S_MCI ,38.96,-94.74, 2 +MCI00033, 9,30S_MCI ,38.79,-94.74, 2 +MCI00034, 9,20SSW_MCI ,38.98,-94.90, 2 +MCI00035, 9,30SSW_MCI ,38.83,-94.99, 2 +MCI00036, 9,40SSW_MCI ,38.67,-95.07, 2 +MCI00037, 9,20SW_MCI ,39.05,-95.04, 2 +MCI00038, 9,30SW_MCI ,38.94,-95.19, 2 +MCI00039, 9,40SW_MCI ,38.82,-95.34, 2 +MCI00040, 9,50SW_MCI ,38.70,-95.49, 2 +MCI00041, 9,60SW_MCI ,38.58,-95.64, 2 +MCI00042, 9,20WSW_MCI ,39.16,-95.14, 2 +MCI00043, 9,30WSW_MCI ,39.10,-95.33, 2 +MCI00044, 9,40WSW_MCI ,39.03,-95.53, 2 +MCI00045, 9,50WSW_MCI ,38.97,-95.73, 2 +MCI00046, 9,60WSW_MCI ,38.90,-95.93, 2 +MCI00047, 9,70WSW_MCI ,38.84,-96.12, 2 +MCI00048, 9,20W_MCI ,39.29,-95.17, 2 +MCI00049, 9,30W_MCI ,39.29,-95.39, 2 +MCI00050, 9,40W_MCI ,39.29,-95.60, 2 +MCI00051, 9,20WNW_MCI ,39.42,-95.14, 2 +MCI00052, 9,30WNW_MCI ,39.48,-95.34, 2 +MCI00053, 9,20NW_MCI ,39.53,-95.05, 2 +MCI00054, 9,30NW_MCI ,39.64,-95.20, 2 +MCI00055, 9,20NNW_MCI ,39.60,-94.91, 2 +MCI00056, 9,30NNW_MCI ,39.75,-94.99, 2 +MCI00057, 9,40NNW_MCI ,39.91,-95.07, 2 LFK00000, 9,LFK ,31.16,-94.72, 1 LFK00001, 9,20N_LFK ,31.49,-94.72, 2 LFK00002, 9,30N_LFK ,31.66,-94.72, 2 @@ -9698,46 +9755,53 @@ RWF00068, 9,60NNW_RWF ,45.39,-95.67, 2 OSW00000, 9,OSW ,37.15,-95.20, 1 OSW00001, 9,20N_OSW ,37.48,-95.20, 2 OSW00002, 9,30N_OSW ,37.65,-95.20, 2 -OSW00003, 9,30NNE_OSW ,37.61,-94.96, 2 -OSW00004, 9,30NE_OSW ,37.50,-94.75, 2 -OSW00005, 9,30ENE_OSW ,37.34,-94.62, 2 -OSW00006, 9,40ENE_OSW ,37.40,-94.43, 2 -OSW00007, 9,30E_OSW ,37.15,-94.57, 2 -OSW00008, 9,40E_OSW ,37.15,-94.36, 2 -OSW00009, 9,30ESE_OSW ,36.96,-94.62, 2 -OSW00010, 9,40ESE_OSW ,36.89,-94.43, 2 -OSW00011, 9,30SE_OSW ,36.80,-94.76, 2 -OSW00012, 9,40SE_OSW ,36.68,-94.61, 2 -OSW00013, 9,30SSE_OSW ,36.69,-94.96, 2 -OSW00014, 9,40SSE_OSW ,36.53,-94.88, 2 -OSW00015, 9,20S_OSW ,36.82,-95.20, 2 -OSW00016, 9,30S_OSW ,36.65,-95.20, 2 -OSW00017, 9,40S_OSW ,36.48,-95.20, 2 -OSW00018, 9,20SSW_OSW ,36.84,-95.36, 2 -OSW00019, 9,30SSW_OSW ,36.69,-95.44, 2 -OSW00020, 9,20SW_OSW ,36.91,-95.49, 2 -OSW00021, 9,30SW_OSW ,36.80,-95.64, 2 -OSW00022, 9,40SW_OSW ,36.68,-95.79, 2 -OSW00023, 9,20WSW_OSW ,37.02,-95.59, 2 -OSW00024, 9,30WSW_OSW ,36.96,-95.78, 2 -OSW00025, 9,40WSW_OSW ,36.89,-95.97, 2 -OSW00026, 9,50WSW_OSW ,36.83,-96.16, 2 -OSW00027, 9,20W_OSW ,37.15,-95.62, 2 -OSW00028, 9,30W_OSW ,37.15,-95.83, 2 -OSW00029, 9,40W_OSW ,37.15,-96.04, 2 -OSW00030, 9,50W_OSW ,37.15,-96.24, 2 -OSW00031, 9,20WNW_OSW ,37.28,-95.59, 2 -OSW00032, 9,30WNW_OSW ,37.34,-95.78, 2 -OSW00033, 9,40WNW_OSW ,37.40,-95.97, 2 -OSW00034, 9,50WNW_OSW ,37.46,-96.17, 2 -OSW00035, 9,20NW_OSW ,37.39,-95.50, 2 -OSW00036, 9,30NW_OSW ,37.50,-95.65, 2 -OSW00037, 9,40NW_OSW ,37.62,-95.79, 2 -OSW00038, 9,50NW_OSW ,37.74,-95.94, 2 -OSW00039, 9,60NW_OSW ,37.85,-96.09, 2 -OSW00040, 9,20NNW_OSW ,37.46,-95.36, 2 -OSW00041, 9,30NNW_OSW ,37.61,-95.44, 2 -OSW00042, 9,40NNW_OSW ,37.77,-95.52, 2 +OSW00003, 9,20NNE_OSW ,37.46,-95.04, 2 +OSW00004, 9,30NNE_OSW ,37.61,-94.96, 2 +OSW00005, 9,20NE_OSW ,37.39,-94.90, 2 +OSW00006, 9,30NE_OSW ,37.50,-94.75, 2 +OSW00007, 9,20ENE_OSW ,37.28,-94.81, 2 +OSW00008, 9,30ENE_OSW ,37.34,-94.62, 2 +OSW00009, 9,40ENE_OSW ,37.40,-94.43, 2 +OSW00010, 9,20E_OSW ,37.15,-94.78, 2 +OSW00011, 9,30E_OSW ,37.15,-94.57, 2 +OSW00012, 9,40E_OSW ,37.15,-94.36, 2 +OSW00013, 9,20ESE_OSW ,37.02,-94.81, 2 +OSW00014, 9,30ESE_OSW ,36.96,-94.62, 2 +OSW00015, 9,40ESE_OSW ,36.89,-94.43, 2 +OSW00016, 9,20SE_OSW ,36.91,-94.91, 2 +OSW00017, 9,30SE_OSW ,36.80,-94.76, 2 +OSW00018, 9,40SE_OSW ,36.68,-94.61, 2 +OSW00019, 9,20SSE_OSW ,36.84,-95.04, 2 +OSW00020, 9,30SSE_OSW ,36.69,-94.96, 2 +OSW00021, 9,40SSE_OSW ,36.53,-94.88, 2 +OSW00022, 9,20S_OSW ,36.82,-95.20, 2 +OSW00023, 9,30S_OSW ,36.65,-95.20, 2 +OSW00024, 9,40S_OSW ,36.48,-95.20, 2 +OSW00025, 9,20SSW_OSW ,36.84,-95.36, 2 +OSW00026, 9,30SSW_OSW ,36.69,-95.44, 2 +OSW00027, 9,20SW_OSW ,36.91,-95.49, 2 +OSW00028, 9,30SW_OSW ,36.80,-95.64, 2 +OSW00029, 9,40SW_OSW ,36.68,-95.79, 2 +OSW00030, 9,20WSW_OSW ,37.02,-95.59, 2 +OSW00031, 9,30WSW_OSW ,36.96,-95.78, 2 +OSW00032, 9,40WSW_OSW ,36.89,-95.97, 2 +OSW00033, 9,50WSW_OSW ,36.83,-96.16, 2 +OSW00034, 9,20W_OSW ,37.15,-95.62, 2 +OSW00035, 9,30W_OSW ,37.15,-95.83, 2 +OSW00036, 9,40W_OSW ,37.15,-96.04, 2 +OSW00037, 9,50W_OSW ,37.15,-96.24, 2 +OSW00038, 9,20WNW_OSW ,37.28,-95.59, 2 +OSW00039, 9,30WNW_OSW ,37.34,-95.78, 2 +OSW00040, 9,40WNW_OSW ,37.40,-95.97, 2 +OSW00041, 9,50WNW_OSW ,37.46,-96.17, 2 +OSW00042, 9,20NW_OSW ,37.39,-95.50, 2 +OSW00043, 9,30NW_OSW ,37.50,-95.65, 2 +OSW00044, 9,40NW_OSW ,37.62,-95.79, 2 +OSW00045, 9,50NW_OSW ,37.74,-95.94, 2 +OSW00046, 9,60NW_OSW ,37.85,-96.09, 2 +OSW00047, 9,20NNW_OSW ,37.46,-95.36, 2 +OSW00048, 9,30NNW_OSW ,37.61,-95.44, 2 +OSW00049, 9,40NNW_OSW ,37.77,-95.52, 2 IAH00000, 9,IAH ,29.96,-95.35, 1 IAH00001, 9,20N_IAH ,30.29,-95.35, 2 IAH00002, 9,30N_IAH ,30.46,-95.35, 2 @@ -9790,21 +9854,19 @@ IAH00048, 9,20W_IAH ,29.96,-95.73, 2 IAH00049, 9,30W_IAH ,29.96,-95.93, 2 IAH00050, 9,40W_IAH ,29.96,-96.12, 2 IAH00051, 9,50W_IAH ,29.96,-96.31, 2 -IAH00052, 9,60W_IAH ,29.95,-96.50, 2 -IAH00053, 9,20WNW_IAH ,30.09,-95.71, 2 -IAH00054, 9,30WNW_IAH ,30.15,-95.88, 2 -IAH00055, 9,40WNW_IAH ,30.21,-96.06, 2 -IAH00056, 9,50WNW_IAH ,30.28,-96.24, 2 -IAH00057, 9,60WNW_IAH ,30.34,-96.42, 2 -IAH00058, 9,20NW_IAH ,30.20,-95.62, 2 -IAH00059, 9,30NW_IAH ,30.31,-95.76, 2 -IAH00060, 9,40NW_IAH ,30.43,-95.90, 2 -IAH00061, 9,50NW_IAH ,30.55,-96.03, 2 -IAH00062, 9,60NW_IAH ,30.66,-96.17, 2 -IAH00063, 9,20NNW_IAH ,30.27,-95.50, 2 -IAH00064, 9,30NNW_IAH ,30.42,-95.57, 2 -IAH00065, 9,40NNW_IAH ,30.58,-95.65, 2 -IAH00066, 9,50NNW_IAH ,30.73,-95.72, 2 +IAH00052, 9,20WNW_IAH ,30.09,-95.71, 2 +IAH00053, 9,30WNW_IAH ,30.15,-95.88, 2 +IAH00054, 9,40WNW_IAH ,30.21,-96.06, 2 +IAH00055, 9,50WNW_IAH ,30.28,-96.24, 2 +IAH00056, 9,20NW_IAH ,30.20,-95.62, 2 +IAH00057, 9,30NW_IAH ,30.31,-95.76, 2 +IAH00058, 9,40NW_IAH ,30.43,-95.90, 2 +IAH00059, 9,50NW_IAH ,30.55,-96.03, 2 +IAH00060, 9,60NW_IAH ,30.66,-96.17, 2 +IAH00061, 9,20NNW_IAH ,30.27,-95.50, 2 +IAH00062, 9,30NNW_IAH ,30.42,-95.57, 2 +IAH00063, 9,40NNW_IAH ,30.58,-95.65, 2 +IAH00064, 9,50NNW_IAH ,30.73,-95.72, 2 OVR00000, 9,OVR ,41.17,-95.74, 1 OVR00001, 9,20N_OVR ,41.50,-95.74, 2 OVR00002, 9,30N_OVR ,41.67,-95.74, 2 @@ -9994,131 +10056,129 @@ PWE00019, 9,20SSE_PWE ,39.89,-96.04, 2 PWE00020, 9,30SSE_PWE ,39.74,-95.96, 2 PWE00021, 9,40SSE_PWE ,39.58,-95.88, 2 PWE00022, 9,50SSE_PWE ,39.43,-95.80, 2 -PWE00023, 9,60SSE_PWE ,39.28,-95.72, 2 -PWE00024, 9,20S_PWE ,39.87,-96.21, 2 -PWE00025, 9,30S_PWE ,39.70,-96.21, 2 -PWE00026, 9,40S_PWE ,39.53,-96.21, 2 -PWE00027, 9,50S_PWE ,39.37,-96.21, 2 -PWE00028, 9,60S_PWE ,39.20,-96.21, 2 -PWE00029, 9,70S_PWE ,39.03,-96.21, 2 -PWE00030, 9,20SSW_PWE ,39.89,-96.38, 2 -PWE00031, 9,30SSW_PWE ,39.74,-96.46, 2 -PWE00032, 9,40SSW_PWE ,39.58,-96.54, 2 -PWE00033, 9,50SSW_PWE ,39.43,-96.62, 2 -PWE00034, 9,60SSW_PWE ,39.28,-96.70, 2 -PWE00035, 9,20SW_PWE ,39.96,-96.52, 2 -PWE00036, 9,30SW_PWE ,39.85,-96.67, 2 -PWE00037, 9,40SW_PWE ,39.73,-96.82, 2 -PWE00038, 9,50SW_PWE ,39.61,-96.97, 2 -PWE00039, 9,20WSW_PWE ,40.07,-96.61, 2 -PWE00040, 9,30WSW_PWE ,40.01,-96.81, 2 -PWE00041, 9,40WSW_PWE ,39.94,-97.01, 2 -PWE00042, 9,50WSW_PWE ,39.88,-97.21, 2 -PWE00043, 9,60WSW_PWE ,39.81,-97.41, 2 -PWE00044, 9,20W_PWE ,40.20,-96.65, 2 -PWE00045, 9,30W_PWE ,40.20,-96.86, 2 -PWE00046, 9,40W_PWE ,40.20,-97.08, 2 -PWE00047, 9,50W_PWE ,40.19,-97.30, 2 -PWE00048, 9,60W_PWE ,40.19,-97.52, 2 -PWE00049, 9,20WNW_PWE ,40.33,-96.61, 2 -PWE00050, 9,30WNW_PWE ,40.39,-96.82, 2 -PWE00051, 9,40WNW_PWE ,40.45,-97.02, 2 -PWE00052, 9,50WNW_PWE ,40.51,-97.22, 2 -PWE00053, 9,20NW_PWE ,40.44,-96.52, 2 -PWE00054, 9,30NW_PWE ,40.55,-96.67, 2 -PWE00055, 9,40NW_PWE ,40.67,-96.83, 2 -PWE00056, 9,50NW_PWE ,40.79,-96.99, 2 -PWE00057, 9,20NNW_PWE ,40.51,-96.38, 2 -PWE00058, 9,30NNW_PWE ,40.66,-96.46, 2 +PWE00023, 9,20S_PWE ,39.87,-96.21, 2 +PWE00024, 9,30S_PWE ,39.70,-96.21, 2 +PWE00025, 9,40S_PWE ,39.53,-96.21, 2 +PWE00026, 9,50S_PWE ,39.37,-96.21, 2 +PWE00027, 9,60S_PWE ,39.20,-96.21, 2 +PWE00028, 9,70S_PWE ,39.03,-96.21, 2 +PWE00029, 9,20SSW_PWE ,39.89,-96.38, 2 +PWE00030, 9,30SSW_PWE ,39.74,-96.46, 2 +PWE00031, 9,40SSW_PWE ,39.58,-96.54, 2 +PWE00032, 9,50SSW_PWE ,39.43,-96.62, 2 +PWE00033, 9,60SSW_PWE ,39.28,-96.70, 2 +PWE00034, 9,20SW_PWE ,39.96,-96.52, 2 +PWE00035, 9,30SW_PWE ,39.85,-96.67, 2 +PWE00036, 9,40SW_PWE ,39.73,-96.82, 2 +PWE00037, 9,50SW_PWE ,39.61,-96.97, 2 +PWE00038, 9,20WSW_PWE ,40.07,-96.61, 2 +PWE00039, 9,30WSW_PWE ,40.01,-96.81, 2 +PWE00040, 9,40WSW_PWE ,39.94,-97.01, 2 +PWE00041, 9,50WSW_PWE ,39.88,-97.21, 2 +PWE00042, 9,60WSW_PWE ,39.81,-97.41, 2 +PWE00043, 9,20W_PWE ,40.20,-96.65, 2 +PWE00044, 9,30W_PWE ,40.20,-96.86, 2 +PWE00045, 9,40W_PWE ,40.20,-97.08, 2 +PWE00046, 9,50W_PWE ,40.19,-97.30, 2 +PWE00047, 9,60W_PWE ,40.19,-97.52, 2 +PWE00048, 9,20WNW_PWE ,40.33,-96.61, 2 +PWE00049, 9,30WNW_PWE ,40.39,-96.82, 2 +PWE00050, 9,40WNW_PWE ,40.45,-97.02, 2 +PWE00051, 9,50WNW_PWE ,40.51,-97.22, 2 +PWE00052, 9,20NW_PWE ,40.44,-96.52, 2 +PWE00053, 9,30NW_PWE ,40.55,-96.67, 2 +PWE00054, 9,40NW_PWE ,40.67,-96.83, 2 +PWE00055, 9,50NW_PWE ,40.79,-96.99, 2 +PWE00056, 9,20NNW_PWE ,40.51,-96.38, 2 +PWE00057, 9,30NNW_PWE ,40.66,-96.46, 2 PSX00000, 9,PSX ,28.76,-96.31, 1 PSX00001, 9,20N_PSX ,29.09,-96.31, 2 PSX00002, 9,30N_PSX ,29.26,-96.31, 2 PSX00003, 9,40N_PSX ,29.43,-96.31, 2 PSX00004, 9,20NNE_PSX ,29.07,-96.16, 2 PSX00005, 9,30NNE_PSX ,29.22,-96.09, 2 -PSX00006, 9,40NNE_PSX ,29.38,-96.02, 2 -PSX00007, 9,20NE_PSX ,29.00,-96.04, 2 -PSX00008, 9,30NE_PSX ,29.11,-95.91, 2 -PSX00009, 9,20ENE_PSX ,28.89,-95.96, 2 -PSX00010, 9,30ENE_PSX ,28.95,-95.78, 2 -PSX00011, 9,40ENE_PSX ,29.01,-95.61, 2 -PSX00012, 9,20E_PSX ,28.76,-95.93, 2 -PSX00013, 9,30E_PSX ,28.76,-95.74, 2 -PSX00014, 9,40E_PSX ,28.76,-95.55, 2 -PSX00015, 9,50E_PSX ,28.76,-95.36, 2 -PSX00016, 9,60E_PSX ,28.76,-95.17, 2 -PSX00017, 9,20ESE_PSX ,28.63,-95.96, 2 -PSX00018, 9,30ESE_PSX ,28.57,-95.78, 2 -PSX00019, 9,40ESE_PSX ,28.50,-95.61, 2 -PSX00020, 9,50ESE_PSX ,28.44,-95.44, 2 -PSX00021, 9,60ESE_PSX ,28.37,-95.26, 2 -PSX00022, 9,70ESE_PSX ,28.31,-95.09, 2 -PSX00023, 9,80ESE_PSX ,28.24,-94.91, 2 -PSX00024, 9,90ESE_PSX ,28.18,-94.74, 2 -PSX00025, 9,100ESE_PSX ,28.11,-94.57, 2 -PSX00026, 9,110ESE_PSX ,28.05,-94.39, 2 -PSX00027, 9,120ESE_PSX ,27.98,-94.22, 2 -PSX00028, 9,130ESE_PSX ,27.91,-94.05, 2 -PSX00029, 9,20SE_PSX ,28.52,-96.04, 2 -PSX00030, 9,30SE_PSX ,28.41,-95.91, 2 -PSX00031, 9,40SE_PSX ,28.29,-95.78, 2 -PSX00032, 9,50SE_PSX ,28.17,-95.64, 2 -PSX00033, 9,60SE_PSX ,28.05,-95.51, 2 -PSX00034, 9,70SE_PSX ,27.93,-95.38, 2 -PSX00035, 9,80SE_PSX ,27.81,-95.24, 2 -PSX00036, 9,90SE_PSX ,27.69,-95.11, 2 -PSX00037, 9,100SE_PSX ,27.58,-94.98, 2 -PSX00038, 9,110SE_PSX ,27.46,-94.85, 2 -PSX00039, 9,120SE_PSX ,27.34,-94.72, 2 -PSX00040, 9,130SE_PSX ,27.22,-94.59, 2 -PSX00041, 9,140SE_PSX ,27.10,-94.46, 2 -PSX00042, 9,150SE_PSX ,26.98,-94.33, 2 -PSX00043, 9,160SE_PSX ,26.86,-94.20, 2 -PSX00044, 9,170SE_PSX ,26.74,-94.07, 2 -PSX00045, 9,180SE_PSX ,26.62,-93.94, 2 -PSX00046, 9,190SE_PSX ,26.50,-93.81, 2 -PSX00047, 9,200SE_PSX ,26.38,-93.68, 2 -PSX00048, 9,20SSE_PSX ,28.45,-96.17, 2 -PSX00049, 9,30SSE_PSX ,28.30,-96.09, 2 -PSX00050, 9,40SSE_PSX ,28.14,-96.02, 2 -PSX00051, 9,50SSE_PSX ,27.99,-95.95, 2 -PSX00052, 9,60SSE_PSX ,27.84,-95.88, 2 -PSX00053, 9,70SSE_PSX ,27.68,-95.81, 2 -PSX00054, 9,80SSE_PSX ,27.53,-95.74, 2 -PSX00055, 9,90SSE_PSX ,27.37,-95.66, 2 -PSX00056, 9,100SSE_PSX ,27.22,-95.59, 2 -PSX00057, 9,110SSE_PSX ,27.07,-95.52, 2 -PSX00058, 9,120SSE_PSX ,26.91,-95.45, 2 -PSX00059, 9,20S_PSX ,28.43,-96.31, 2 -PSX00060, 9,30S_PSX ,28.26,-96.31, 2 -PSX00061, 9,40S_PSX ,28.09,-96.31, 2 -PSX00062, 9,50S_PSX ,27.93,-96.31, 2 -PSX00063, 9,60S_PSX ,27.76,-96.31, 2 -PSX00064, 9,20SSW_PSX ,28.45,-96.45, 2 -PSX00065, 9,30SSW_PSX ,28.30,-96.53, 2 -PSX00066, 9,40SSW_PSX ,28.14,-96.60, 2 -PSX00067, 9,20SW_PSX ,28.52,-96.58, 2 -PSX00068, 9,30SW_PSX ,28.41,-96.71, 2 -PSX00069, 9,40SW_PSX ,28.29,-96.84, 2 -PSX00070, 9,20WSW_PSX ,28.63,-96.66, 2 -PSX00071, 9,30WSW_PSX ,28.57,-96.84, 2 -PSX00072, 9,40WSW_PSX ,28.50,-97.01, 2 -PSX00073, 9,20W_PSX ,28.76,-96.69, 2 -PSX00074, 9,30W_PSX ,28.76,-96.88, 2 -PSX00075, 9,40W_PSX ,28.76,-97.07, 2 -PSX00076, 9,50W_PSX ,28.76,-97.26, 2 -PSX00077, 9,20WNW_PSX ,28.89,-96.66, 2 -PSX00078, 9,30WNW_PSX ,28.95,-96.84, 2 -PSX00079, 9,40WNW_PSX ,29.01,-97.01, 2 -PSX00080, 9,50WNW_PSX ,29.08,-97.19, 2 -PSX00081, 9,20NW_PSX ,29.00,-96.58, 2 -PSX00082, 9,30NW_PSX ,29.11,-96.71, 2 -PSX00083, 9,40NW_PSX ,29.23,-96.85, 2 -PSX00084, 9,50NW_PSX ,29.35,-96.99, 2 -PSX00085, 9,20NNW_PSX ,29.07,-96.46, 2 -PSX00086, 9,30NNW_PSX ,29.22,-96.53, 2 -PSX00087, 9,40NNW_PSX ,29.38,-96.60, 2 -PSX00088, 9,50NNW_PSX ,29.53,-96.68, 2 +PSX00006, 9,20NE_PSX ,29.00,-96.04, 2 +PSX00007, 9,30NE_PSX ,29.11,-95.91, 2 +PSX00008, 9,20ENE_PSX ,28.89,-95.96, 2 +PSX00009, 9,30ENE_PSX ,28.95,-95.78, 2 +PSX00010, 9,40ENE_PSX ,29.01,-95.61, 2 +PSX00011, 9,20E_PSX ,28.76,-95.93, 2 +PSX00012, 9,30E_PSX ,28.76,-95.74, 2 +PSX00013, 9,40E_PSX ,28.76,-95.55, 2 +PSX00014, 9,50E_PSX ,28.76,-95.36, 2 +PSX00015, 9,60E_PSX ,28.76,-95.17, 2 +PSX00016, 9,20ESE_PSX ,28.63,-95.96, 2 +PSX00017, 9,30ESE_PSX ,28.57,-95.78, 2 +PSX00018, 9,40ESE_PSX ,28.50,-95.61, 2 +PSX00019, 9,50ESE_PSX ,28.44,-95.44, 2 +PSX00020, 9,60ESE_PSX ,28.37,-95.26, 2 +PSX00021, 9,70ESE_PSX ,28.31,-95.09, 2 +PSX00022, 9,80ESE_PSX ,28.24,-94.91, 2 +PSX00023, 9,90ESE_PSX ,28.18,-94.74, 2 +PSX00024, 9,100ESE_PSX ,28.11,-94.57, 2 +PSX00025, 9,110ESE_PSX ,28.05,-94.39, 2 +PSX00026, 9,120ESE_PSX ,27.98,-94.22, 2 +PSX00027, 9,130ESE_PSX ,27.91,-94.05, 2 +PSX00028, 9,20SE_PSX ,28.52,-96.04, 2 +PSX00029, 9,30SE_PSX ,28.41,-95.91, 2 +PSX00030, 9,40SE_PSX ,28.29,-95.78, 2 +PSX00031, 9,50SE_PSX ,28.17,-95.64, 2 +PSX00032, 9,60SE_PSX ,28.05,-95.51, 2 +PSX00033, 9,70SE_PSX ,27.93,-95.38, 2 +PSX00034, 9,80SE_PSX ,27.81,-95.24, 2 +PSX00035, 9,90SE_PSX ,27.69,-95.11, 2 +PSX00036, 9,100SE_PSX ,27.58,-94.98, 2 +PSX00037, 9,110SE_PSX ,27.46,-94.85, 2 +PSX00038, 9,120SE_PSX ,27.34,-94.72, 2 +PSX00039, 9,130SE_PSX ,27.22,-94.59, 2 +PSX00040, 9,140SE_PSX ,27.10,-94.46, 2 +PSX00041, 9,150SE_PSX ,26.98,-94.33, 2 +PSX00042, 9,160SE_PSX ,26.86,-94.20, 2 +PSX00043, 9,170SE_PSX ,26.74,-94.07, 2 +PSX00044, 9,180SE_PSX ,26.62,-93.94, 2 +PSX00045, 9,190SE_PSX ,26.50,-93.81, 2 +PSX00046, 9,200SE_PSX ,26.38,-93.68, 2 +PSX00047, 9,20SSE_PSX ,28.45,-96.17, 2 +PSX00048, 9,30SSE_PSX ,28.30,-96.09, 2 +PSX00049, 9,40SSE_PSX ,28.14,-96.02, 2 +PSX00050, 9,50SSE_PSX ,27.99,-95.95, 2 +PSX00051, 9,60SSE_PSX ,27.84,-95.88, 2 +PSX00052, 9,70SSE_PSX ,27.68,-95.81, 2 +PSX00053, 9,80SSE_PSX ,27.53,-95.74, 2 +PSX00054, 9,90SSE_PSX ,27.37,-95.66, 2 +PSX00055, 9,100SSE_PSX ,27.22,-95.59, 2 +PSX00056, 9,110SSE_PSX ,27.07,-95.52, 2 +PSX00057, 9,120SSE_PSX ,26.91,-95.45, 2 +PSX00058, 9,20S_PSX ,28.43,-96.31, 2 +PSX00059, 9,30S_PSX ,28.26,-96.31, 2 +PSX00060, 9,40S_PSX ,28.09,-96.31, 2 +PSX00061, 9,50S_PSX ,27.93,-96.31, 2 +PSX00062, 9,60S_PSX ,27.76,-96.31, 2 +PSX00063, 9,20SSW_PSX ,28.45,-96.45, 2 +PSX00064, 9,30SSW_PSX ,28.30,-96.53, 2 +PSX00065, 9,40SSW_PSX ,28.14,-96.60, 2 +PSX00066, 9,20SW_PSX ,28.52,-96.58, 2 +PSX00067, 9,30SW_PSX ,28.41,-96.71, 2 +PSX00068, 9,40SW_PSX ,28.29,-96.84, 2 +PSX00069, 9,20WSW_PSX ,28.63,-96.66, 2 +PSX00070, 9,30WSW_PSX ,28.57,-96.84, 2 +PSX00071, 9,40WSW_PSX ,28.50,-97.01, 2 +PSX00072, 9,20W_PSX ,28.76,-96.69, 2 +PSX00073, 9,30W_PSX ,28.76,-96.88, 2 +PSX00074, 9,40W_PSX ,28.76,-97.07, 2 +PSX00075, 9,50W_PSX ,28.76,-97.26, 2 +PSX00076, 9,20WNW_PSX ,28.89,-96.66, 2 +PSX00077, 9,30WNW_PSX ,28.95,-96.84, 2 +PSX00078, 9,40WNW_PSX ,29.01,-97.01, 2 +PSX00079, 9,50WNW_PSX ,29.08,-97.19, 2 +PSX00080, 9,20NW_PSX ,29.00,-96.58, 2 +PSX00081, 9,30NW_PSX ,29.11,-96.71, 2 +PSX00082, 9,40NW_PSX ,29.23,-96.85, 2 +PSX00083, 9,50NW_PSX ,29.35,-96.99, 2 +PSX00084, 9,20NNW_PSX ,29.07,-96.46, 2 +PSX00085, 9,30NNW_PSX ,29.22,-96.53, 2 +PSX00086, 9,40NNW_PSX ,29.38,-96.60, 2 +PSX00087, 9,50NNW_PSX ,29.53,-96.68, 2 FSD00000, 9,FSD ,43.65,-96.78, 1 FSD00001, 9,20N_FSD ,43.98,-96.78, 2 FSD00002, 9,30N_FSD ,44.15,-96.78, 2 @@ -10258,69 +10318,69 @@ FAR00058, 9,40WNW_FAR ,47.00,-97.75, 2 FAR00059, 9,20NW_FAR ,46.99,-97.20, 2 FAR00060, 9,30NW_FAR ,47.10,-97.37, 2 FAR00061, 9,20NNW_FAR ,47.06,-97.04, 2 -DFW00000, 9,DFW ,32.87,-97.03, 1 -DFW00001, 9,20N_DFW ,33.20,-97.03, 2 -DFW00002, 9,30N_DFW ,33.37,-97.03, 2 -DFW00003, 9,20NNE_DFW ,33.18,-96.88, 2 -DFW00004, 9,30NNE_DFW ,33.33,-96.80, 2 -DFW00005, 9,20NE_DFW ,33.11,-96.75, 2 -DFW00006, 9,30NE_DFW ,33.22,-96.61, 2 -DFW00007, 9,40NE_DFW ,33.34,-96.47, 2 -DFW00008, 9,50NE_DFW ,33.46,-96.32, 2 -DFW00009, 9,20ENE_DFW ,33.00,-96.66, 2 -DFW00010, 9,30ENE_DFW ,33.06,-96.48, 2 -DFW00011, 9,40ENE_DFW ,33.12,-96.30, 2 -DFW00012, 9,50ENE_DFW ,33.19,-96.11, 2 -DFW00013, 9,60ENE_DFW ,33.25,-95.93, 2 -DFW00014, 9,70ENE_DFW ,33.31,-95.74, 2 -DFW00015, 9,20E_DFW ,32.87,-96.63, 2 -DFW00016, 9,30E_DFW ,32.87,-96.44, 2 -DFW00017, 9,40E_DFW ,32.87,-96.24, 2 -DFW00018, 9,50E_DFW ,32.87,-96.04, 2 -DFW00019, 9,60E_DFW ,32.86,-95.84, 2 -DFW00020, 9,20ESE_DFW ,32.74,-96.66, 2 -DFW00021, 9,30ESE_DFW ,32.68,-96.48, 2 -DFW00022, 9,40ESE_DFW ,32.61,-96.30, 2 -DFW00023, 9,50ESE_DFW ,32.55,-96.12, 2 -DFW00024, 9,60ESE_DFW ,32.48,-95.94, 2 -DFW00025, 9,20SE_DFW ,32.63,-96.75, 2 -DFW00026, 9,30SE_DFW ,32.52,-96.61, 2 -DFW00027, 9,40SE_DFW ,32.40,-96.47, 2 -DFW00028, 9,50SE_DFW ,32.28,-96.33, 2 -DFW00029, 9,60SE_DFW ,32.16,-96.20, 2 -DFW00030, 9,70SE_DFW ,32.04,-96.06, 2 -DFW00031, 9,20SSE_DFW ,32.56,-96.88, 2 -DFW00032, 9,30SSE_DFW ,32.41,-96.80, 2 -DFW00033, 9,40SSE_DFW ,32.25,-96.73, 2 -DFW00034, 9,20S_DFW ,32.54,-97.03, 2 -DFW00035, 9,30S_DFW ,32.37,-97.03, 2 -DFW00036, 9,40S_DFW ,32.20,-97.03, 2 -DFW00037, 9,20SSW_DFW ,32.56,-97.18, 2 -DFW00038, 9,30SSW_DFW ,32.41,-97.26, 2 -DFW00039, 9,40SSW_DFW ,32.25,-97.33, 2 -DFW00040, 9,20SW_DFW ,32.63,-97.31, 2 -DFW00041, 9,30SW_DFW ,32.52,-97.45, 2 -DFW00042, 9,40SW_DFW ,32.40,-97.59, 2 -DFW00043, 9,50SW_DFW ,32.28,-97.73, 2 -DFW00044, 9,20WSW_DFW ,32.74,-97.40, 2 -DFW00045, 9,30WSW_DFW ,32.68,-97.58, 2 -DFW00046, 9,40WSW_DFW ,32.61,-97.76, 2 -DFW00047, 9,50WSW_DFW ,32.55,-97.94, 2 -DFW00048, 9,60WSW_DFW ,32.48,-98.12, 2 -DFW00049, 9,70WSW_DFW ,32.42,-98.31, 2 -DFW00050, 9,20W_DFW ,32.87,-97.43, 2 -DFW00051, 9,30W_DFW ,32.87,-97.62, 2 -DFW00052, 9,40W_DFW ,32.87,-97.82, 2 -DFW00053, 9,50W_DFW ,32.87,-98.02, 2 -DFW00054, 9,60W_DFW ,32.86,-98.22, 2 -DFW00055, 9,20WNW_DFW ,33.00,-97.40, 2 -DFW00056, 9,30WNW_DFW ,33.06,-97.58, 2 -DFW00057, 9,40WNW_DFW ,33.12,-97.76, 2 -DFW00058, 9,20NW_DFW ,33.11,-97.31, 2 -DFW00059, 9,30NW_DFW ,33.22,-97.45, 2 -DFW00060, 9,40NW_DFW ,33.34,-97.59, 2 -DFW00061, 9,20NNW_DFW ,33.18,-97.18, 2 -DFW00062, 9,30NNW_DFW ,33.33,-97.26, 2 +TTT00000, 9,TTT ,32.87,-97.04, 1 +TTT00001, 9,20N_TTT ,33.20,-97.04, 2 +TTT00002, 9,30N_TTT ,33.37,-97.04, 2 +TTT00003, 9,20NNE_TTT ,33.18,-96.89, 2 +TTT00004, 9,30NNE_TTT ,33.33,-96.81, 2 +TTT00005, 9,20NE_TTT ,33.11,-96.76, 2 +TTT00006, 9,30NE_TTT ,33.22,-96.62, 2 +TTT00007, 9,40NE_TTT ,33.34,-96.48, 2 +TTT00008, 9,50NE_TTT ,33.46,-96.33, 2 +TTT00009, 9,20ENE_TTT ,33.00,-96.67, 2 +TTT00010, 9,30ENE_TTT ,33.06,-96.49, 2 +TTT00011, 9,40ENE_TTT ,33.12,-96.31, 2 +TTT00012, 9,50ENE_TTT ,33.19,-96.12, 2 +TTT00013, 9,60ENE_TTT ,33.25,-95.94, 2 +TTT00014, 9,70ENE_TTT ,33.31,-95.75, 2 +TTT00015, 9,20E_TTT ,32.87,-96.64, 2 +TTT00016, 9,30E_TTT ,32.87,-96.45, 2 +TTT00017, 9,40E_TTT ,32.87,-96.25, 2 +TTT00018, 9,50E_TTT ,32.87,-96.05, 2 +TTT00019, 9,60E_TTT ,32.86,-95.85, 2 +TTT00020, 9,20ESE_TTT ,32.74,-96.67, 2 +TTT00021, 9,30ESE_TTT ,32.68,-96.49, 2 +TTT00022, 9,40ESE_TTT ,32.61,-96.31, 2 +TTT00023, 9,50ESE_TTT ,32.55,-96.13, 2 +TTT00024, 9,60ESE_TTT ,32.48,-95.95, 2 +TTT00025, 9,20SE_TTT ,32.63,-96.76, 2 +TTT00026, 9,30SE_TTT ,32.52,-96.62, 2 +TTT00027, 9,40SE_TTT ,32.40,-96.48, 2 +TTT00028, 9,50SE_TTT ,32.28,-96.34, 2 +TTT00029, 9,60SE_TTT ,32.16,-96.21, 2 +TTT00030, 9,70SE_TTT ,32.04,-96.07, 2 +TTT00031, 9,20SSE_TTT ,32.56,-96.89, 2 +TTT00032, 9,30SSE_TTT ,32.41,-96.81, 2 +TTT00033, 9,40SSE_TTT ,32.25,-96.74, 2 +TTT00034, 9,20S_TTT ,32.54,-97.04, 2 +TTT00035, 9,30S_TTT ,32.37,-97.04, 2 +TTT00036, 9,40S_TTT ,32.20,-97.04, 2 +TTT00037, 9,20SSW_TTT ,32.56,-97.19, 2 +TTT00038, 9,30SSW_TTT ,32.41,-97.27, 2 +TTT00039, 9,40SSW_TTT ,32.25,-97.34, 2 +TTT00040, 9,20SW_TTT ,32.63,-97.32, 2 +TTT00041, 9,30SW_TTT ,32.52,-97.46, 2 +TTT00042, 9,40SW_TTT ,32.40,-97.60, 2 +TTT00043, 9,50SW_TTT ,32.28,-97.74, 2 +TTT00044, 9,20WSW_TTT ,32.74,-97.41, 2 +TTT00045, 9,30WSW_TTT ,32.68,-97.59, 2 +TTT00046, 9,40WSW_TTT ,32.61,-97.77, 2 +TTT00047, 9,50WSW_TTT ,32.55,-97.95, 2 +TTT00048, 9,60WSW_TTT ,32.48,-98.13, 2 +TTT00049, 9,70WSW_TTT ,32.42,-98.32, 2 +TTT00050, 9,20W_TTT ,32.87,-97.44, 2 +TTT00051, 9,30W_TTT ,32.87,-97.63, 2 +TTT00052, 9,40W_TTT ,32.87,-97.83, 2 +TTT00053, 9,50W_TTT ,32.87,-98.03, 2 +TTT00054, 9,60W_TTT ,32.86,-98.23, 2 +TTT00055, 9,20WNW_TTT ,33.00,-97.41, 2 +TTT00056, 9,30WNW_TTT ,33.06,-97.59, 2 +TTT00057, 9,40WNW_TTT ,33.12,-97.77, 2 +TTT00058, 9,20NW_TTT ,33.11,-97.32, 2 +TTT00059, 9,30NW_TTT ,33.22,-97.46, 2 +TTT00060, 9,40NW_TTT ,33.34,-97.60, 2 +TTT00061, 9,20NNW_TTT ,33.18,-97.19, 2 +TTT00062, 9,30NNW_TTT ,33.33,-97.27, 2 ADM00000, 9,ADM ,34.21,-97.17, 1 ADM00001, 9,20N_ADM ,34.54,-97.17, 2 ADM00002, 9,30N_ADM ,34.71,-97.17, 2 @@ -10372,7 +10432,7 @@ GFK00004, 9,20NNE_GFK ,48.26,-97.00, 2 GFK00005, 9,30NNE_GFK ,48.41,-96.90, 2 GFK00006, 9,40NNE_GFK ,48.56,-96.80, 2 GFK00007, 9,50NNE_GFK ,48.72,-96.71, 2 -GFK00008, 9,20NE_GFK ,48.18,-96.84, 2 +GFK00008, 9,20NE_GFK ,48.19,-96.84, 2 GFK00009, 9,30NE_GFK ,48.30,-96.66, 2 GFK00010, 9,40NE_GFK ,48.42,-96.48, 2 GFK00011, 9,50NE_GFK ,48.54,-96.30, 2 @@ -10433,7 +10493,7 @@ GFK00065, 9,50WNW_GFK ,48.26,-98.35, 2 GFK00066, 9,60WNW_GFK ,48.32,-98.58, 2 GFK00067, 9,70WNW_GFK ,48.38,-98.81, 2 GFK00068, 9,80WNW_GFK ,48.45,-99.05, 2 -GFK00069, 9,20NW_GFK ,48.18,-97.54, 2 +GFK00069, 9,20NW_GFK ,48.19,-97.54, 2 GFK00070, 9,30NW_GFK ,48.30,-97.72, 2 GFK00071, 9,40NW_GFK ,48.42,-97.90, 2 GFK00072, 9,50NW_GFK ,48.54,-98.08, 2 @@ -10726,198 +10786,201 @@ BRO00029, 9,20E_BRO ,25.92,-97.01, 2 BRO00030, 9,30E_BRO ,25.92,-96.82, 2 BRO00031, 9,40E_BRO ,25.92,-96.64, 2 BRO00032, 9,50E_BRO ,25.92,-96.45, 2 -BRO00033, 9,100E_BRO ,25.91,-95.53, 2 -BRO00034, 9,110E_BRO ,25.91,-95.34, 2 -BRO00035, 9,120E_BRO ,25.90,-95.16, 2 -BRO00036, 9,130E_BRO ,25.90,-94.97, 2 -BRO00037, 9,140E_BRO ,25.90,-94.79, 2 -BRO00038, 9,150E_BRO ,25.89,-94.60, 2 -BRO00039, 9,160E_BRO ,25.89,-94.42, 2 -BRO00040, 9,170E_BRO ,25.89,-94.23, 2 -BRO00041, 9,180E_BRO ,25.88,-94.05, 2 -BRO00042, 9,190E_BRO ,25.88,-93.86, 2 -BRO00043, 9,200E_BRO ,25.87,-93.68, 2 -BRO00044, 9,210E_BRO ,25.87,-93.49, 2 -BRO00045, 9,220E_BRO ,25.86,-93.31, 2 -BRO00046, 9,230E_BRO ,25.86,-93.12, 2 -BRO00047, 9,240E_BRO ,25.85,-92.94, 2 -BRO00048, 9,250E_BRO ,25.85,-92.75, 2 -BRO00049, 9,20ESE_BRO ,25.79,-97.04, 2 -BRO00050, 9,30ESE_BRO ,25.73,-96.87, 2 -BRO00051, 9,40ESE_BRO ,25.66,-96.70, 2 -BRO00052, 9,50ESE_BRO ,25.60,-96.53, 2 -BRO00053, 9,60ESE_BRO ,25.53,-96.36, 2 -BRO00054, 9,70ESE_BRO ,25.47,-96.19, 2 -BRO00055, 9,80ESE_BRO ,25.40,-96.02, 2 -BRO00056, 9,90ESE_BRO ,25.34,-95.85, 2 -BRO00057, 9,100ESE_BRO ,25.27,-95.68, 2 -BRO00058, 9,110ESE_BRO ,25.21,-95.51, 2 -BRO00059, 9,120ESE_BRO ,25.14,-95.34, 2 -BRO00060, 9,130ESE_BRO ,25.07,-95.17, 2 -BRO00061, 9,140ESE_BRO ,25.01,-95.00, 2 -BRO00062, 9,150ESE_BRO ,24.94,-94.83, 2 -BRO00063, 9,160ESE_BRO ,24.88,-94.67, 2 -BRO00064, 9,170ESE_BRO ,24.81,-94.50, 2 -BRO00065, 9,180ESE_BRO ,24.74,-94.33, 2 -BRO00066, 9,190ESE_BRO ,24.67,-94.16, 2 -BRO00067, 9,200ESE_BRO ,24.61,-94.00, 2 -BRO00068, 9,210ESE_BRO ,24.54,-93.83, 2 -BRO00069, 9,220ESE_BRO ,24.47,-93.66, 2 -BRO00070, 9,230ESE_BRO ,24.40,-93.49, 2 -BRO00071, 9,240ESE_BRO ,24.33,-93.33, 2 -BRO00072, 9,20SE_BRO ,25.68,-97.12, 2 -BRO00073, 9,30SE_BRO ,25.57,-96.99, 2 -BRO00074, 9,40SE_BRO ,25.45,-96.86, 2 -BRO00075, 9,50SE_BRO ,25.33,-96.73, 2 -BRO00076, 9,60SE_BRO ,25.21,-96.60, 2 -BRO00077, 9,70SE_BRO ,25.09,-96.47, 2 -BRO00078, 9,80SE_BRO ,24.97,-96.34, 2 -BRO00079, 9,90SE_BRO ,24.86,-96.21, 2 -BRO00080, 9,100SE_BRO ,24.74,-96.08, 2 -BRO00081, 9,110SE_BRO ,24.62,-95.96, 2 -BRO00082, 9,120SE_BRO ,24.50,-95.83, 2 -BRO00083, 9,130SE_BRO ,24.38,-95.70, 2 -BRO00084, 9,140SE_BRO ,24.26,-95.57, 2 -BRO00085, 9,150SE_BRO ,24.14,-95.44, 2 -BRO00086, 9,160SE_BRO ,24.02,-95.32, 2 -BRO00087, 9,170SE_BRO ,23.90,-95.19, 2 -BRO00088, 9,180SE_BRO ,23.78,-95.06, 2 -BRO00089, 9,190SE_BRO ,23.66,-94.94, 2 -BRO00090, 9,200SE_BRO ,23.54,-94.81, 2 -BRO00091, 9,210SE_BRO ,23.42,-94.69, 2 -BRO00092, 9,220SE_BRO ,23.30,-94.56, 2 -BRO00093, 9,230SE_BRO ,23.18,-94.43, 2 -BRO00094, 9,240SE_BRO ,23.06,-94.31, 2 -BRO00095, 9,250SE_BRO ,22.94,-94.18, 2 -BRO00096, 9,20SSE_BRO ,25.61,-97.24, 2 -BRO00097, 9,30SSE_BRO ,25.46,-97.17, 2 -BRO00098, 9,40SSE_BRO ,25.30,-97.10, 2 -BRO00099, 9,50SSE_BRO ,25.15,-97.03, 2 -BRO00100, 9,60SSE_BRO ,25.00,-96.96, 2 -BRO00101, 9,70SSE_BRO ,24.84,-96.89, 2 -BRO00102, 9,80SSE_BRO ,24.69,-96.82, 2 -BRO00103, 9,90SSE_BRO ,24.53,-96.75, 2 -BRO00104, 9,100SSE_BRO ,24.38,-96.68, 2 -BRO00105, 9,110SSE_BRO ,24.23,-96.61, 2 -BRO00106, 9,120SSE_BRO ,24.07,-96.54, 2 -BRO00107, 9,130SSE_BRO ,23.92,-96.47, 2 -BRO00108, 9,140SSE_BRO ,23.76,-96.41, 2 -BRO00109, 9,150SSE_BRO ,23.61,-96.34, 2 -BRO00110, 9,160SSE_BRO ,23.45,-96.27, 2 -BRO00111, 9,170SSE_BRO ,23.30,-96.20, 2 -BRO00112, 9,180SSE_BRO ,23.15,-96.13, 2 -BRO00113, 9,190SSE_BRO ,22.99,-96.07, 2 -BRO00114, 9,200SSE_BRO ,22.84,-96.00, 2 -BRO00115, 9,210SSE_BRO ,22.68,-95.93, 2 -BRO00116, 9,220SSE_BRO ,22.53,-95.86, 2 -BRO00117, 9,230SSE_BRO ,22.37,-95.80, 2 -BRO00118, 9,240SSE_BRO ,22.22,-95.73, 2 -BRO00119, 9,20S_BRO ,25.59,-97.38, 2 -BRO00120, 9,30S_BRO ,25.42,-97.38, 2 -BRO00121, 9,40S_BRO ,25.25,-97.38, 2 -BRO00122, 9,50S_BRO ,25.09,-97.38, 2 -BRO00123, 9,60S_BRO ,24.92,-97.38, 2 -BRO00124, 9,70S_BRO ,24.75,-97.38, 2 -BRO00125, 9,80S_BRO ,24.59,-97.38, 2 -BRO00126, 9,90S_BRO ,24.42,-97.38, 2 -BRO00127, 9,100S_BRO ,24.25,-97.38, 2 -BRO00128, 9,110S_BRO ,24.09,-97.38, 2 -BRO00129, 9,120S_BRO ,23.92,-97.38, 2 -BRO00130, 9,130S_BRO ,23.75,-97.38, 2 -BRO00131, 9,140S_BRO ,23.59,-97.38, 2 -BRO00132, 9,150S_BRO ,23.42,-97.38, 2 -BRO00133, 9,160S_BRO ,23.26,-97.38, 2 -BRO00134, 9,170S_BRO ,23.09,-97.38, 2 -BRO00135, 9,180S_BRO ,22.92,-97.38, 2 -BRO00136, 9,190S_BRO ,22.76,-97.38, 2 -BRO00137, 9,200S_BRO ,22.59,-97.38, 2 -BRO00138, 9,210S_BRO ,22.42,-97.38, 2 -BRO00139, 9,220S_BRO ,22.26,-97.38, 2 -BRO00140, 9,230S_BRO ,22.09,-97.38, 2 -BRO00141, 9,240S_BRO ,21.92,-97.38, 2 -BRO00142, 9,250S_BRO ,21.76,-97.38, 2 -BRO00143, 9,20SSW_BRO ,25.61,-97.52, 2 -BRO00144, 9,30SSW_BRO ,25.46,-97.59, 2 -BRO00145, 9,40SSW_BRO ,25.30,-97.66, 2 -BRO00146, 9,50SSW_BRO ,25.15,-97.73, 2 -BRO00147, 9,60SSW_BRO ,25.00,-97.80, 2 -BRO00148, 9,70SSW_BRO ,24.84,-97.87, 2 -BRO00149, 9,80SSW_BRO ,24.69,-97.94, 2 -BRO00150, 9,90SSW_BRO ,24.53,-98.01, 2 -BRO00151, 9,100SSW_BRO ,24.38,-98.08, 2 -BRO00152, 9,110SSW_BRO ,24.23,-98.15, 2 -BRO00153, 9,120SSW_BRO ,24.07,-98.22, 2 -BRO00154, 9,130SSW_BRO ,23.92,-98.29, 2 -BRO00155, 9,140SSW_BRO ,23.76,-98.35, 2 -BRO00156, 9,150SSW_BRO ,23.61,-98.42, 2 -BRO00157, 9,160SSW_BRO ,23.45,-98.49, 2 -BRO00158, 9,170SSW_BRO ,23.30,-98.56, 2 -BRO00159, 9,180SSW_BRO ,23.15,-98.63, 2 -BRO00160, 9,190SSW_BRO ,22.99,-98.69, 2 -BRO00161, 9,200SSW_BRO ,22.84,-98.76, 2 -BRO00162, 9,210SSW_BRO ,22.68,-98.83, 2 -BRO00163, 9,220SSW_BRO ,22.53,-98.90, 2 -BRO00164, 9,230SSW_BRO ,22.37,-98.96, 2 -BRO00165, 9,240SSW_BRO ,22.22,-99.03, 2 -BRO00166, 9,20SW_BRO ,25.68,-97.64, 2 -BRO00167, 9,30SW_BRO ,25.57,-97.77, 2 -BRO00168, 9,40SW_BRO ,25.45,-97.90, 2 -BRO00169, 9,50SW_BRO ,25.33,-98.03, 2 -BRO00170, 9,60SW_BRO ,25.21,-98.16, 2 -BRO00171, 9,70SW_BRO ,25.09,-98.29, 2 -BRO00172, 9,80SW_BRO ,24.97,-98.42, 2 -BRO00173, 9,90SW_BRO ,24.86,-98.55, 2 -BRO00174, 9,100SW_BRO ,24.74,-98.68, 2 -BRO00175, 9,110SW_BRO ,24.62,-98.80, 2 -BRO00176, 9,120SW_BRO ,24.50,-98.93, 2 -BRO00177, 9,130SW_BRO ,24.38,-99.06, 2 -BRO00178, 9,140SW_BRO ,24.26,-99.19, 2 -BRO00179, 9,150SW_BRO ,24.14,-99.32, 2 -BRO00180, 9,160SW_BRO ,24.02,-99.44, 2 -BRO00181, 9,170SW_BRO ,23.90,-99.57, 2 -BRO00182, 9,180SW_BRO ,23.78,-99.70, 2 -BRO00183, 9,190SW_BRO ,23.66,-99.82, 2 -BRO00184, 9,200SW_BRO ,23.54,-99.95, 2 -BRO00185, 9,210SW_BRO ,23.42,-100.07, 2 -BRO00186, 9,220SW_BRO ,23.30,-100.20, 2 -BRO00187, 9,230SW_BRO ,23.18,-100.33, 2 -BRO00188, 9,240SW_BRO ,23.06,-100.45, 2 -BRO00189, 9,250SW_BRO ,22.94,-100.58, 2 -BRO00190, 9,20WSW_BRO ,25.79,-97.72, 2 -BRO00191, 9,30WSW_BRO ,25.73,-97.89, 2 -BRO00192, 9,40WSW_BRO ,25.66,-98.06, 2 -BRO00193, 9,50WSW_BRO ,25.60,-98.23, 2 -BRO00194, 9,60WSW_BRO ,25.53,-98.40, 2 -BRO00195, 9,70WSW_BRO ,25.47,-98.57, 2 -BRO00196, 9,80WSW_BRO ,25.40,-98.74, 2 -BRO00197, 9,90WSW_BRO ,25.34,-98.91, 2 -BRO00198, 9,100WSW_BRO ,25.27,-99.08, 2 -BRO00199, 9,110WSW_BRO ,25.21,-99.25, 2 -BRO00200, 9,120WSW_BRO ,25.14,-99.42, 2 -BRO00201, 9,130WSW_BRO ,25.07,-99.59, 2 -BRO00202, 9,140WSW_BRO ,25.01,-99.76, 2 -BRO00203, 9,150WSW_BRO ,24.94,-99.93, 2 -BRO00204, 9,20W_BRO ,25.92,-97.75, 2 -BRO00205, 9,30W_BRO ,25.92,-97.94, 2 -BRO00206, 9,40W_BRO ,25.92,-98.12, 2 -BRO00207, 9,50W_BRO ,25.92,-98.31, 2 -BRO00208, 9,60W_BRO ,25.92,-98.49, 2 -BRO00209, 9,70W_BRO ,25.91,-98.68, 2 -BRO00210, 9,20WNW_BRO ,26.05,-97.72, 2 -BRO00211, 9,30WNW_BRO ,26.11,-97.89, 2 -BRO00212, 9,40WNW_BRO ,26.17,-98.07, 2 -BRO00213, 9,50WNW_BRO ,26.24,-98.24, 2 -BRO00214, 9,60WNW_BRO ,26.30,-98.41, 2 -BRO00215, 9,70WNW_BRO ,26.36,-98.58, 2 -BRO00216, 9,20NW_BRO ,26.16,-97.64, 2 -BRO00217, 9,30NW_BRO ,26.27,-97.77, 2 -BRO00218, 9,40NW_BRO ,26.39,-97.91, 2 -BRO00219, 9,50NW_BRO ,26.51,-98.04, 2 -BRO00220, 9,60NW_BRO ,26.62,-98.17, 2 -BRO00221, 9,20NNW_BRO ,26.23,-97.52, 2 -BRO00222, 9,30NNW_BRO ,26.38,-97.59, 2 -BRO00223, 9,40NNW_BRO ,26.54,-97.66, 2 -BRO00224, 9,50NNW_BRO ,26.69,-97.74, 2 +BRO00033, 9,60E_BRO ,25.92,-96.27, 2 +BRO00034, 9,90E_BRO ,25.91,-95.71, 2 +BRO00035, 9,100E_BRO ,25.91,-95.53, 2 +BRO00036, 9,110E_BRO ,25.91,-95.34, 2 +BRO00037, 9,120E_BRO ,25.90,-95.16, 2 +BRO00038, 9,130E_BRO ,25.90,-94.97, 2 +BRO00039, 9,140E_BRO ,25.90,-94.79, 2 +BRO00040, 9,150E_BRO ,25.89,-94.60, 2 +BRO00041, 9,160E_BRO ,25.89,-94.42, 2 +BRO00042, 9,170E_BRO ,25.89,-94.23, 2 +BRO00043, 9,180E_BRO ,25.88,-94.05, 2 +BRO00044, 9,190E_BRO ,25.88,-93.86, 2 +BRO00045, 9,200E_BRO ,25.87,-93.68, 2 +BRO00046, 9,210E_BRO ,25.87,-93.49, 2 +BRO00047, 9,220E_BRO ,25.86,-93.31, 2 +BRO00048, 9,230E_BRO ,25.86,-93.12, 2 +BRO00049, 9,240E_BRO ,25.85,-92.94, 2 +BRO00050, 9,250E_BRO ,25.85,-92.75, 2 +BRO00051, 9,20ESE_BRO ,25.79,-97.04, 2 +BRO00052, 9,30ESE_BRO ,25.73,-96.87, 2 +BRO00053, 9,40ESE_BRO ,25.66,-96.70, 2 +BRO00054, 9,50ESE_BRO ,25.60,-96.53, 2 +BRO00055, 9,60ESE_BRO ,25.53,-96.36, 2 +BRO00056, 9,70ESE_BRO ,25.47,-96.19, 2 +BRO00057, 9,80ESE_BRO ,25.40,-96.02, 2 +BRO00058, 9,90ESE_BRO ,25.34,-95.85, 2 +BRO00059, 9,100ESE_BRO ,25.27,-95.68, 2 +BRO00060, 9,110ESE_BRO ,25.21,-95.51, 2 +BRO00061, 9,120ESE_BRO ,25.14,-95.34, 2 +BRO00062, 9,130ESE_BRO ,25.07,-95.17, 2 +BRO00063, 9,140ESE_BRO ,25.01,-95.00, 2 +BRO00064, 9,150ESE_BRO ,24.94,-94.83, 2 +BRO00065, 9,160ESE_BRO ,24.88,-94.67, 2 +BRO00066, 9,170ESE_BRO ,24.81,-94.50, 2 +BRO00067, 9,180ESE_BRO ,24.74,-94.33, 2 +BRO00068, 9,190ESE_BRO ,24.67,-94.16, 2 +BRO00069, 9,200ESE_BRO ,24.61,-94.00, 2 +BRO00070, 9,210ESE_BRO ,24.54,-93.83, 2 +BRO00071, 9,220ESE_BRO ,24.47,-93.66, 2 +BRO00072, 9,230ESE_BRO ,24.40,-93.49, 2 +BRO00073, 9,240ESE_BRO ,24.33,-93.33, 2 +BRO00074, 9,20SE_BRO ,25.68,-97.12, 2 +BRO00075, 9,30SE_BRO ,25.57,-96.99, 2 +BRO00076, 9,40SE_BRO ,25.45,-96.86, 2 +BRO00077, 9,50SE_BRO ,25.33,-96.73, 2 +BRO00078, 9,60SE_BRO ,25.21,-96.60, 2 +BRO00079, 9,70SE_BRO ,25.09,-96.47, 2 +BRO00080, 9,80SE_BRO ,24.97,-96.34, 2 +BRO00081, 9,90SE_BRO ,24.86,-96.21, 2 +BRO00082, 9,100SE_BRO ,24.74,-96.08, 2 +BRO00083, 9,110SE_BRO ,24.62,-95.96, 2 +BRO00084, 9,120SE_BRO ,24.50,-95.83, 2 +BRO00085, 9,130SE_BRO ,24.38,-95.70, 2 +BRO00086, 9,140SE_BRO ,24.26,-95.57, 2 +BRO00087, 9,150SE_BRO ,24.14,-95.44, 2 +BRO00088, 9,160SE_BRO ,24.02,-95.32, 2 +BRO00089, 9,170SE_BRO ,23.90,-95.19, 2 +BRO00090, 9,180SE_BRO ,23.78,-95.06, 2 +BRO00091, 9,190SE_BRO ,23.66,-94.94, 2 +BRO00092, 9,200SE_BRO ,23.54,-94.81, 2 +BRO00093, 9,210SE_BRO ,23.42,-94.69, 2 +BRO00094, 9,220SE_BRO ,23.30,-94.56, 2 +BRO00095, 9,230SE_BRO ,23.18,-94.43, 2 +BRO00096, 9,240SE_BRO ,23.06,-94.31, 2 +BRO00097, 9,250SE_BRO ,22.94,-94.18, 2 +BRO00098, 9,20SSE_BRO ,25.61,-97.24, 2 +BRO00099, 9,30SSE_BRO ,25.46,-97.17, 2 +BRO00100, 9,40SSE_BRO ,25.30,-97.10, 2 +BRO00101, 9,50SSE_BRO ,25.15,-97.03, 2 +BRO00102, 9,60SSE_BRO ,25.00,-96.96, 2 +BRO00103, 9,70SSE_BRO ,24.84,-96.89, 2 +BRO00104, 9,80SSE_BRO ,24.69,-96.82, 2 +BRO00105, 9,90SSE_BRO ,24.53,-96.75, 2 +BRO00106, 9,100SSE_BRO ,24.38,-96.68, 2 +BRO00107, 9,110SSE_BRO ,24.23,-96.61, 2 +BRO00108, 9,120SSE_BRO ,24.07,-96.54, 2 +BRO00109, 9,130SSE_BRO ,23.92,-96.47, 2 +BRO00110, 9,140SSE_BRO ,23.76,-96.41, 2 +BRO00111, 9,150SSE_BRO ,23.61,-96.34, 2 +BRO00112, 9,160SSE_BRO ,23.45,-96.27, 2 +BRO00113, 9,170SSE_BRO ,23.30,-96.20, 2 +BRO00114, 9,180SSE_BRO ,23.15,-96.13, 2 +BRO00115, 9,190SSE_BRO ,22.99,-96.07, 2 +BRO00116, 9,200SSE_BRO ,22.84,-96.00, 2 +BRO00117, 9,210SSE_BRO ,22.68,-95.93, 2 +BRO00118, 9,220SSE_BRO ,22.53,-95.86, 2 +BRO00119, 9,230SSE_BRO ,22.37,-95.80, 2 +BRO00120, 9,240SSE_BRO ,22.22,-95.73, 2 +BRO00121, 9,20S_BRO ,25.59,-97.38, 2 +BRO00122, 9,30S_BRO ,25.42,-97.38, 2 +BRO00123, 9,40S_BRO ,25.25,-97.38, 2 +BRO00124, 9,50S_BRO ,25.09,-97.38, 2 +BRO00125, 9,60S_BRO ,24.92,-97.38, 2 +BRO00126, 9,70S_BRO ,24.75,-97.38, 2 +BRO00127, 9,80S_BRO ,24.59,-97.38, 2 +BRO00128, 9,90S_BRO ,24.42,-97.38, 2 +BRO00129, 9,100S_BRO ,24.25,-97.38, 2 +BRO00130, 9,110S_BRO ,24.09,-97.38, 2 +BRO00131, 9,120S_BRO ,23.92,-97.38, 2 +BRO00132, 9,130S_BRO ,23.75,-97.38, 2 +BRO00133, 9,140S_BRO ,23.59,-97.38, 2 +BRO00134, 9,150S_BRO ,23.42,-97.38, 2 +BRO00135, 9,160S_BRO ,23.26,-97.38, 2 +BRO00136, 9,170S_BRO ,23.09,-97.38, 2 +BRO00137, 9,180S_BRO ,22.92,-97.38, 2 +BRO00138, 9,190S_BRO ,22.76,-97.38, 2 +BRO00139, 9,200S_BRO ,22.59,-97.38, 2 +BRO00140, 9,210S_BRO ,22.42,-97.38, 2 +BRO00141, 9,220S_BRO ,22.26,-97.38, 2 +BRO00142, 9,230S_BRO ,22.09,-97.38, 2 +BRO00143, 9,240S_BRO ,21.92,-97.38, 2 +BRO00144, 9,250S_BRO ,21.76,-97.38, 2 +BRO00145, 9,20SSW_BRO ,25.61,-97.52, 2 +BRO00146, 9,30SSW_BRO ,25.46,-97.59, 2 +BRO00147, 9,40SSW_BRO ,25.30,-97.66, 2 +BRO00148, 9,50SSW_BRO ,25.15,-97.73, 2 +BRO00149, 9,60SSW_BRO ,25.00,-97.80, 2 +BRO00150, 9,70SSW_BRO ,24.84,-97.87, 2 +BRO00151, 9,80SSW_BRO ,24.69,-97.94, 2 +BRO00152, 9,90SSW_BRO ,24.53,-98.01, 2 +BRO00153, 9,100SSW_BRO ,24.38,-98.08, 2 +BRO00154, 9,110SSW_BRO ,24.23,-98.15, 2 +BRO00155, 9,120SSW_BRO ,24.07,-98.22, 2 +BRO00156, 9,130SSW_BRO ,23.92,-98.29, 2 +BRO00157, 9,140SSW_BRO ,23.76,-98.35, 2 +BRO00158, 9,150SSW_BRO ,23.61,-98.42, 2 +BRO00159, 9,160SSW_BRO ,23.45,-98.49, 2 +BRO00160, 9,170SSW_BRO ,23.30,-98.56, 2 +BRO00161, 9,180SSW_BRO ,23.15,-98.63, 2 +BRO00162, 9,190SSW_BRO ,22.99,-98.69, 2 +BRO00163, 9,200SSW_BRO ,22.84,-98.76, 2 +BRO00164, 9,210SSW_BRO ,22.68,-98.83, 2 +BRO00165, 9,220SSW_BRO ,22.53,-98.90, 2 +BRO00166, 9,230SSW_BRO ,22.37,-98.96, 2 +BRO00167, 9,240SSW_BRO ,22.22,-99.03, 2 +BRO00168, 9,20SW_BRO ,25.68,-97.64, 2 +BRO00169, 9,30SW_BRO ,25.57,-97.77, 2 +BRO00170, 9,40SW_BRO ,25.45,-97.90, 2 +BRO00171, 9,50SW_BRO ,25.33,-98.03, 2 +BRO00172, 9,60SW_BRO ,25.21,-98.16, 2 +BRO00173, 9,70SW_BRO ,25.09,-98.29, 2 +BRO00174, 9,80SW_BRO ,24.97,-98.42, 2 +BRO00175, 9,90SW_BRO ,24.86,-98.55, 2 +BRO00176, 9,100SW_BRO ,24.74,-98.68, 2 +BRO00177, 9,110SW_BRO ,24.62,-98.80, 2 +BRO00178, 9,120SW_BRO ,24.50,-98.93, 2 +BRO00179, 9,130SW_BRO ,24.38,-99.06, 2 +BRO00180, 9,140SW_BRO ,24.26,-99.19, 2 +BRO00181, 9,150SW_BRO ,24.14,-99.32, 2 +BRO00182, 9,160SW_BRO ,24.02,-99.44, 2 +BRO00183, 9,170SW_BRO ,23.90,-99.57, 2 +BRO00184, 9,180SW_BRO ,23.78,-99.70, 2 +BRO00185, 9,190SW_BRO ,23.66,-99.82, 2 +BRO00186, 9,200SW_BRO ,23.54,-99.95, 2 +BRO00187, 9,210SW_BRO ,23.42,-100.07, 2 +BRO00188, 9,220SW_BRO ,23.30,-100.20, 2 +BRO00189, 9,230SW_BRO ,23.18,-100.33, 2 +BRO00190, 9,240SW_BRO ,23.06,-100.45, 2 +BRO00191, 9,250SW_BRO ,22.94,-100.58, 2 +BRO00192, 9,20WSW_BRO ,25.79,-97.72, 2 +BRO00193, 9,30WSW_BRO ,25.73,-97.89, 2 +BRO00194, 9,40WSW_BRO ,25.66,-98.06, 2 +BRO00195, 9,50WSW_BRO ,25.60,-98.23, 2 +BRO00196, 9,60WSW_BRO ,25.53,-98.40, 2 +BRO00197, 9,70WSW_BRO ,25.47,-98.57, 2 +BRO00198, 9,80WSW_BRO ,25.40,-98.74, 2 +BRO00199, 9,90WSW_BRO ,25.34,-98.91, 2 +BRO00200, 9,100WSW_BRO ,25.27,-99.08, 2 +BRO00201, 9,110WSW_BRO ,25.21,-99.25, 2 +BRO00202, 9,120WSW_BRO ,25.14,-99.42, 2 +BRO00203, 9,130WSW_BRO ,25.07,-99.59, 2 +BRO00204, 9,140WSW_BRO ,25.01,-99.76, 2 +BRO00205, 9,150WSW_BRO ,24.94,-99.93, 2 +BRO00206, 9,20W_BRO ,25.92,-97.75, 2 +BRO00207, 9,30W_BRO ,25.92,-97.94, 2 +BRO00208, 9,40W_BRO ,25.92,-98.12, 2 +BRO00209, 9,50W_BRO ,25.92,-98.31, 2 +BRO00210, 9,60W_BRO ,25.92,-98.49, 2 +BRO00211, 9,70W_BRO ,25.91,-98.68, 2 +BRO00212, 9,80W_BRO ,25.91,-98.86, 2 +BRO00213, 9,20WNW_BRO ,26.05,-97.72, 2 +BRO00214, 9,30WNW_BRO ,26.11,-97.89, 2 +BRO00215, 9,40WNW_BRO ,26.17,-98.07, 2 +BRO00216, 9,50WNW_BRO ,26.24,-98.24, 2 +BRO00217, 9,60WNW_BRO ,26.30,-98.41, 2 +BRO00218, 9,70WNW_BRO ,26.36,-98.58, 2 +BRO00219, 9,20NW_BRO ,26.16,-97.64, 2 +BRO00220, 9,30NW_BRO ,26.27,-97.77, 2 +BRO00221, 9,40NW_BRO ,26.39,-97.91, 2 +BRO00222, 9,50NW_BRO ,26.51,-98.04, 2 +BRO00223, 9,60NW_BRO ,26.62,-98.17, 2 +BRO00224, 9,20NNW_BRO ,26.23,-97.52, 2 +BRO00225, 9,30NNW_BRO ,26.38,-97.59, 2 +BRO00226, 9,40NNW_BRO ,26.54,-97.66, 2 +BRO00227, 9,50NNW_BRO ,26.69,-97.74, 2 CRP00000, 9,CRP ,27.90,-97.45, 1 CRP00001, 9,20N_CRP ,28.23,-97.45, 2 CRP00002, 9,30N_CRP ,28.40,-97.45, 2 @@ -11129,109 +11192,112 @@ SLN00021, 9,40ESE_SLN ,38.67,-96.83, 2 SLN00022, 9,50ESE_SLN ,38.61,-96.64, 2 SLN00023, 9,60ESE_SLN ,38.54,-96.44, 2 SLN00024, 9,70ESE_SLN ,38.48,-96.24, 2 -SLN00025, 9,80ESE_SLN ,38.41,-96.05, 2 -SLN00026, 9,20SE_SLN ,38.69,-97.32, 2 -SLN00027, 9,30SE_SLN ,38.58,-97.17, 2 -SLN00028, 9,40SE_SLN ,38.46,-97.02, 2 -SLN00029, 9,50SE_SLN ,38.34,-96.87, 2 -SLN00030, 9,20SSE_SLN ,38.62,-97.46, 2 -SLN00031, 9,30SSE_SLN ,38.47,-97.38, 2 -SLN00032, 9,40SSE_SLN ,38.31,-97.30, 2 -SLN00033, 9,20S_SLN ,38.60,-97.62, 2 -SLN00034, 9,30S_SLN ,38.43,-97.62, 2 -SLN00035, 9,40S_SLN ,38.26,-97.62, 2 -SLN00036, 9,20SSW_SLN ,38.62,-97.78, 2 -SLN00037, 9,30SSW_SLN ,38.47,-97.86, 2 -SLN00038, 9,40SSW_SLN ,38.31,-97.94, 2 -SLN00039, 9,20SW_SLN ,38.69,-97.92, 2 -SLN00040, 9,30SW_SLN ,38.58,-98.07, 2 -SLN00041, 9,40SW_SLN ,38.46,-98.22, 2 -SLN00042, 9,50SW_SLN ,38.34,-98.37, 2 -SLN00043, 9,60SW_SLN ,38.22,-98.52, 2 -SLN00044, 9,20WSW_SLN ,38.80,-98.01, 2 -SLN00045, 9,30WSW_SLN ,38.74,-98.21, 2 -SLN00046, 9,40WSW_SLN ,38.67,-98.41, 2 -SLN00047, 9,50WSW_SLN ,38.61,-98.60, 2 -SLN00048, 9,60WSW_SLN ,38.54,-98.80, 2 -SLN00049, 9,70WSW_SLN ,38.48,-99.00, 2 -SLN00050, 9,20W_SLN ,38.93,-98.05, 2 -SLN00051, 9,30W_SLN ,38.93,-98.26, 2 -SLN00052, 9,40W_SLN ,38.93,-98.48, 2 -SLN00053, 9,50W_SLN ,38.93,-98.69, 2 -SLN00054, 9,60W_SLN ,38.92,-98.90, 2 -SLN00055, 9,20WNW_SLN ,39.06,-98.02, 2 -SLN00056, 9,30WNW_SLN ,39.12,-98.21, 2 -SLN00057, 9,40WNW_SLN ,39.18,-98.41, 2 -SLN00058, 9,50WNW_SLN ,39.24,-98.61, 2 -SLN00059, 9,60WNW_SLN ,39.31,-98.81, 2 -SLN00060, 9,20NW_SLN ,39.17,-97.92, 2 -SLN00061, 9,30NW_SLN ,39.28,-98.08, 2 -SLN00062, 9,40NW_SLN ,39.40,-98.23, 2 -SLN00063, 9,50NW_SLN ,39.52,-98.38, 2 -SLN00064, 9,60NW_SLN ,39.63,-98.54, 2 -SLN00065, 9,70NW_SLN ,39.75,-98.69, 2 -SLN00066, 9,20NNW_SLN ,39.24,-97.78, 2 -SLN00067, 9,30NNW_SLN ,39.39,-97.87, 2 -SLN00068, 9,40NNW_SLN ,39.55,-97.95, 2 -SLN00069, 9,50NNW_SLN ,39.70,-98.03, 2 -SLN00070, 9,60NNW_SLN ,39.85,-98.12, 2 -AUS00000, 9,AUS ,30.30,-97.70, 1 -AUS00001, 9,20N_AUS ,30.63,-97.70, 2 -AUS00002, 9,30N_AUS ,30.80,-97.70, 2 -AUS00003, 9,20NNE_AUS ,30.61,-97.55, 2 -AUS00004, 9,30NNE_AUS ,30.76,-97.48, 2 -AUS00005, 9,20NE_AUS ,30.54,-97.43, 2 -AUS00006, 9,30NE_AUS ,30.65,-97.29, 2 -AUS00007, 9,40NE_AUS ,30.77,-97.15, 2 -AUS00008, 9,20ENE_AUS ,30.43,-97.34, 2 -AUS00009, 9,30ENE_AUS ,30.49,-97.16, 2 -AUS00010, 9,40ENE_AUS ,30.55,-96.99, 2 -AUS00011, 9,50ENE_AUS ,30.62,-96.81, 2 -AUS00012, 9,60ENE_AUS ,30.68,-96.63, 2 -AUS00013, 9,20E_AUS ,30.30,-97.31, 2 -AUS00014, 9,30E_AUS ,30.30,-97.12, 2 -AUS00015, 9,40E_AUS ,30.30,-96.93, 2 -AUS00016, 9,50E_AUS ,30.30,-96.74, 2 -AUS00017, 9,60E_AUS ,30.29,-96.54, 2 -AUS00018, 9,20ESE_AUS ,30.17,-97.34, 2 -AUS00019, 9,30ESE_AUS ,30.11,-97.17, 2 -AUS00020, 9,40ESE_AUS ,30.04,-96.99, 2 -AUS00021, 9,50ESE_AUS ,29.98,-96.81, 2 -AUS00022, 9,60ESE_AUS ,29.91,-96.63, 2 -AUS00023, 9,20SE_AUS ,30.06,-97.43, 2 -AUS00024, 9,30SE_AUS ,29.95,-97.29, 2 -AUS00025, 9,40SE_AUS ,29.83,-97.16, 2 -AUS00026, 9,50SE_AUS ,29.71,-97.02, 2 -AUS00027, 9,60SE_AUS ,29.59,-96.89, 2 -AUS00028, 9,20SSE_AUS ,29.99,-97.55, 2 -AUS00029, 9,30SSE_AUS ,29.84,-97.48, 2 -AUS00030, 9,40SSE_AUS ,29.68,-97.41, 2 -AUS00031, 9,50SSE_AUS ,29.53,-97.33, 2 -AUS00032, 9,60SSE_AUS ,29.38,-97.26, 2 -AUS00033, 9,20S_AUS ,29.97,-97.70, 2 -AUS00034, 9,30S_AUS ,29.80,-97.70, 2 -AUS00035, 9,40S_AUS ,29.63,-97.70, 2 -AUS00036, 9,20SSW_AUS ,29.99,-97.85, 2 -AUS00037, 9,30SSW_AUS ,29.84,-97.92, 2 -AUS00038, 9,20SW_AUS ,30.06,-97.97, 2 -AUS00039, 9,30SW_AUS ,29.95,-98.11, 2 -AUS00040, 9,20WSW_AUS ,30.17,-98.06, 2 -AUS00041, 9,30WSW_AUS ,30.11,-98.23, 2 -AUS00042, 9,20W_AUS ,30.30,-98.09, 2 -AUS00043, 9,30W_AUS ,30.30,-98.28, 2 -AUS00044, 9,40W_AUS ,30.30,-98.47, 2 -AUS00045, 9,20WNW_AUS ,30.43,-98.06, 2 -AUS00046, 9,30WNW_AUS ,30.49,-98.24, 2 -AUS00047, 9,40WNW_AUS ,30.55,-98.41, 2 -AUS00048, 9,50WNW_AUS ,30.62,-98.59, 2 -AUS00049, 9,20NW_AUS ,30.54,-97.97, 2 -AUS00050, 9,30NW_AUS ,30.65,-98.11, 2 -AUS00051, 9,40NW_AUS ,30.77,-98.25, 2 -AUS00052, 9,50NW_AUS ,30.89,-98.39, 2 -AUS00053, 9,60NW_AUS ,31.00,-98.52, 2 -AUS00054, 9,20NNW_AUS ,30.61,-97.85, 2 -AUS00055, 9,30NNW_AUS ,30.76,-97.92, 2 -AUS00056, 9,40NNW_AUS ,30.92,-98.00, 2 +SLN00025, 9,20SE_SLN ,38.69,-97.32, 2 +SLN00026, 9,30SE_SLN ,38.58,-97.17, 2 +SLN00027, 9,40SE_SLN ,38.46,-97.02, 2 +SLN00028, 9,50SE_SLN ,38.34,-96.87, 2 +SLN00029, 9,20SSE_SLN ,38.62,-97.46, 2 +SLN00030, 9,30SSE_SLN ,38.47,-97.38, 2 +SLN00031, 9,40SSE_SLN ,38.31,-97.30, 2 +SLN00032, 9,20S_SLN ,38.60,-97.62, 2 +SLN00033, 9,30S_SLN ,38.43,-97.62, 2 +SLN00034, 9,40S_SLN ,38.26,-97.62, 2 +SLN00035, 9,20SSW_SLN ,38.62,-97.78, 2 +SLN00036, 9,30SSW_SLN ,38.47,-97.86, 2 +SLN00037, 9,40SSW_SLN ,38.31,-97.94, 2 +SLN00038, 9,20SW_SLN ,38.69,-97.92, 2 +SLN00039, 9,30SW_SLN ,38.58,-98.07, 2 +SLN00040, 9,40SW_SLN ,38.46,-98.22, 2 +SLN00041, 9,50SW_SLN ,38.34,-98.37, 2 +SLN00042, 9,60SW_SLN ,38.22,-98.52, 2 +SLN00043, 9,20WSW_SLN ,38.80,-98.01, 2 +SLN00044, 9,30WSW_SLN ,38.74,-98.21, 2 +SLN00045, 9,40WSW_SLN ,38.67,-98.41, 2 +SLN00046, 9,50WSW_SLN ,38.61,-98.60, 2 +SLN00047, 9,60WSW_SLN ,38.54,-98.80, 2 +SLN00048, 9,70WSW_SLN ,38.48,-99.00, 2 +SLN00049, 9,20W_SLN ,38.93,-98.05, 2 +SLN00050, 9,30W_SLN ,38.93,-98.26, 2 +SLN00051, 9,40W_SLN ,38.93,-98.48, 2 +SLN00052, 9,50W_SLN ,38.93,-98.69, 2 +SLN00053, 9,60W_SLN ,38.92,-98.90, 2 +SLN00054, 9,20WNW_SLN ,39.06,-98.02, 2 +SLN00055, 9,30WNW_SLN ,39.12,-98.22, 2 +SLN00056, 9,40WNW_SLN ,39.18,-98.41, 2 +SLN00057, 9,50WNW_SLN ,39.24,-98.61, 2 +SLN00058, 9,60WNW_SLN ,39.31,-98.81, 2 +SLN00059, 9,20NW_SLN ,39.17,-97.92, 2 +SLN00060, 9,30NW_SLN ,39.28,-98.08, 2 +SLN00061, 9,40NW_SLN ,39.40,-98.23, 2 +SLN00062, 9,50NW_SLN ,39.52,-98.38, 2 +SLN00063, 9,60NW_SLN ,39.63,-98.54, 2 +SLN00064, 9,70NW_SLN ,39.75,-98.69, 2 +SLN00065, 9,20NNW_SLN ,39.24,-97.78, 2 +SLN00066, 9,30NNW_SLN ,39.39,-97.87, 2 +SLN00067, 9,40NNW_SLN ,39.55,-97.95, 2 +SLN00068, 9,50NNW_SLN ,39.70,-98.03, 2 +SLN00069, 9,60NNW_SLN ,39.85,-98.12, 2 +CWK00000, 9,CWK ,30.38,-97.53, 1 +CWK00001, 9,20N_CWK ,30.71,-97.53, 2 +CWK00002, 9,30N_CWK ,30.88,-97.53, 2 +CWK00003, 9,20NNE_CWK ,30.69,-97.38, 2 +CWK00004, 9,30NNE_CWK ,30.84,-97.31, 2 +CWK00005, 9,20NE_CWK ,30.62,-97.26, 2 +CWK00006, 9,30NE_CWK ,30.73,-97.12, 2 +CWK00007, 9,40NE_CWK ,30.85,-96.98, 2 +CWK00008, 9,20ENE_CWK ,30.51,-97.17, 2 +CWK00009, 9,30ENE_CWK ,30.57,-96.99, 2 +CWK00010, 9,40ENE_CWK ,30.63,-96.81, 2 +CWK00011, 9,50ENE_CWK ,30.70,-96.64, 2 +CWK00012, 9,60ENE_CWK ,30.76,-96.46, 2 +CWK00013, 9,20E_CWK ,30.38,-97.14, 2 +CWK00014, 9,30E_CWK ,30.38,-96.95, 2 +CWK00015, 9,40E_CWK ,30.38,-96.76, 2 +CWK00016, 9,50E_CWK ,30.38,-96.56, 2 +CWK00017, 9,60E_CWK ,30.37,-96.37, 2 +CWK00018, 9,20ESE_CWK ,30.25,-97.17, 2 +CWK00019, 9,30ESE_CWK ,30.19,-97.00, 2 +CWK00020, 9,40ESE_CWK ,30.12,-96.82, 2 +CWK00021, 9,50ESE_CWK ,30.06,-96.64, 2 +CWK00022, 9,60ESE_CWK ,29.99,-96.46, 2 +CWK00023, 9,20SE_CWK ,30.14,-97.26, 2 +CWK00024, 9,30SE_CWK ,30.03,-97.12, 2 +CWK00025, 9,40SE_CWK ,29.91,-96.99, 2 +CWK00026, 9,50SE_CWK ,29.79,-96.85, 2 +CWK00027, 9,60SE_CWK ,29.67,-96.72, 2 +CWK00028, 9,20SSE_CWK ,30.07,-97.38, 2 +CWK00029, 9,30SSE_CWK ,29.92,-97.31, 2 +CWK00030, 9,40SSE_CWK ,29.76,-97.24, 2 +CWK00031, 9,50SSE_CWK ,29.61,-97.16, 2 +CWK00032, 9,60SSE_CWK ,29.46,-97.09, 2 +CWK00033, 9,20S_CWK ,30.05,-97.53, 2 +CWK00034, 9,30S_CWK ,29.88,-97.53, 2 +CWK00035, 9,40S_CWK ,29.71,-97.53, 2 +CWK00036, 9,50S_CWK ,29.55,-97.53, 2 +CWK00037, 9,20SSW_CWK ,30.07,-97.68, 2 +CWK00038, 9,30SSW_CWK ,29.92,-97.75, 2 +CWK00039, 9,40SSW_CWK ,29.76,-97.82, 2 +CWK00040, 9,20SW_CWK ,30.14,-97.80, 2 +CWK00041, 9,30SW_CWK ,30.03,-97.94, 2 +CWK00042, 9,20WSW_CWK ,30.25,-97.89, 2 +CWK00043, 9,30WSW_CWK ,30.19,-98.06, 2 +CWK00044, 9,40WSW_CWK ,30.12,-98.24, 2 +CWK00045, 9,20W_CWK ,30.38,-97.92, 2 +CWK00046, 9,30W_CWK ,30.38,-98.11, 2 +CWK00047, 9,40W_CWK ,30.38,-98.30, 2 +CWK00048, 9,50W_CWK ,30.38,-98.50, 2 +CWK00049, 9,20WNW_CWK ,30.51,-97.89, 2 +CWK00050, 9,30WNW_CWK ,30.57,-98.07, 2 +CWK00051, 9,40WNW_CWK ,30.63,-98.25, 2 +CWK00052, 9,50WNW_CWK ,30.70,-98.42, 2 +CWK00053, 9,60WNW_CWK ,30.76,-98.60, 2 +CWK00054, 9,20NW_CWK ,30.62,-97.80, 2 +CWK00055, 9,30NW_CWK ,30.73,-97.94, 2 +CWK00056, 9,40NW_CWK ,30.85,-98.08, 2 +CWK00057, 9,50NW_CWK ,30.97,-98.22, 2 +CWK00058, 9,20NNW_CWK ,30.69,-97.68, 2 +CWK00059, 9,30NNW_CWK ,30.84,-97.75, 2 +CWK00060, 9,40NNW_CWK ,31.00,-97.83, 2 END00000, 9,END ,36.35,-97.92, 1 END00001, 9,20N_END ,36.68,-97.92, 2 END00002, 9,30N_END ,36.85,-97.92, 2 @@ -11434,61 +11500,64 @@ ABR00077, 9,60NNW_ABR ,46.34,-98.92, 2 SAT00000, 9,SAT ,29.64,-98.46, 1 SAT00001, 9,20N_SAT ,29.97,-98.46, 2 SAT00002, 9,30N_SAT ,30.14,-98.46, 2 -SAT00003, 9,20NNE_SAT ,29.95,-98.31, 2 -SAT00004, 9,20NE_SAT ,29.88,-98.19, 2 -SAT00005, 9,20ENE_SAT ,29.77,-98.11, 2 -SAT00006, 9,20E_SAT ,29.64,-98.08, 2 -SAT00007, 9,30E_SAT ,29.64,-97.89, 2 -SAT00008, 9,20ESE_SAT ,29.51,-98.11, 2 -SAT00009, 9,30ESE_SAT ,29.45,-97.93, 2 -SAT00010, 9,40ESE_SAT ,29.38,-97.75, 2 -SAT00011, 9,50ESE_SAT ,29.32,-97.58, 2 -SAT00012, 9,20SE_SAT ,29.40,-98.19, 2 -SAT00013, 9,30SE_SAT ,29.29,-98.05, 2 -SAT00014, 9,40SE_SAT ,29.17,-97.92, 2 -SAT00015, 9,50SE_SAT ,29.05,-97.79, 2 -SAT00016, 9,60SE_SAT ,28.93,-97.65, 2 -SAT00017, 9,20SSE_SAT ,29.33,-98.31, 2 -SAT00018, 9,30SSE_SAT ,29.18,-98.24, 2 -SAT00019, 9,40SSE_SAT ,29.02,-98.17, 2 -SAT00020, 9,50SSE_SAT ,28.87,-98.10, 2 -SAT00021, 9,60SSE_SAT ,28.72,-98.02, 2 -SAT00022, 9,20S_SAT ,29.31,-98.46, 2 -SAT00023, 9,30S_SAT ,29.14,-98.46, 2 -SAT00024, 9,40S_SAT ,28.97,-98.46, 2 -SAT00025, 9,50S_SAT ,28.81,-98.46, 2 -SAT00026, 9,60S_SAT ,28.64,-98.46, 2 -SAT00027, 9,70S_SAT ,28.47,-98.46, 2 -SAT00028, 9,20SSW_SAT ,29.33,-98.61, 2 -SAT00029, 9,30SSW_SAT ,29.18,-98.68, 2 -SAT00030, 9,40SSW_SAT ,29.02,-98.75, 2 -SAT00031, 9,50SSW_SAT ,28.87,-98.82, 2 -SAT00032, 9,60SSW_SAT ,28.72,-98.90, 2 -SAT00033, 9,70SSW_SAT ,28.56,-98.97, 2 -SAT00034, 9,20SW_SAT ,29.40,-98.73, 2 -SAT00035, 9,30SW_SAT ,29.29,-98.87, 2 -SAT00036, 9,40SW_SAT ,29.17,-99.00, 2 -SAT00037, 9,50SW_SAT ,29.05,-99.13, 2 -SAT00038, 9,60SW_SAT ,28.93,-99.27, 2 -SAT00039, 9,70SW_SAT ,28.81,-99.40, 2 -SAT00040, 9,20WSW_SAT ,29.51,-98.81, 2 -SAT00041, 9,30WSW_SAT ,29.45,-98.99, 2 -SAT00042, 9,40WSW_SAT ,29.38,-99.17, 2 -SAT00043, 9,50WSW_SAT ,29.32,-99.34, 2 -SAT00044, 9,60WSW_SAT ,29.25,-99.52, 2 -SAT00045, 9,20W_SAT ,29.64,-98.84, 2 -SAT00046, 9,30W_SAT ,29.64,-99.03, 2 -SAT00047, 9,40W_SAT ,29.64,-99.23, 2 -SAT00048, 9,50W_SAT ,29.64,-99.42, 2 -SAT00049, 9,20WNW_SAT ,29.77,-98.81, 2 -SAT00050, 9,30WNW_SAT ,29.83,-98.99, 2 -SAT00051, 9,40WNW_SAT ,29.89,-99.17, 2 -SAT00052, 9,20NW_SAT ,29.88,-98.73, 2 -SAT00053, 9,30NW_SAT ,29.99,-98.87, 2 -SAT00054, 9,40NW_SAT ,30.11,-99.00, 2 -SAT00055, 9,20NNW_SAT ,29.95,-98.61, 2 -SAT00056, 9,30NNW_SAT ,30.10,-98.68, 2 -SAT00057, 9,40NNW_SAT ,30.26,-98.76, 2 +SAT00003, 9,40N_SAT ,30.31,-98.46, 2 +SAT00004, 9,20NNE_SAT ,29.95,-98.31, 2 +SAT00005, 9,30NNE_SAT ,30.10,-98.24, 2 +SAT00006, 9,20NE_SAT ,29.88,-98.19, 2 +SAT00007, 9,20ENE_SAT ,29.77,-98.11, 2 +SAT00008, 9,20E_SAT ,29.64,-98.08, 2 +SAT00009, 9,30E_SAT ,29.64,-97.89, 2 +SAT00010, 9,20ESE_SAT ,29.51,-98.11, 2 +SAT00011, 9,30ESE_SAT ,29.45,-97.93, 2 +SAT00012, 9,40ESE_SAT ,29.38,-97.75, 2 +SAT00013, 9,50ESE_SAT ,29.32,-97.58, 2 +SAT00014, 9,60ESE_SAT ,29.25,-97.40, 2 +SAT00015, 9,20SE_SAT ,29.40,-98.19, 2 +SAT00016, 9,30SE_SAT ,29.29,-98.05, 2 +SAT00017, 9,40SE_SAT ,29.17,-97.92, 2 +SAT00018, 9,50SE_SAT ,29.05,-97.79, 2 +SAT00019, 9,60SE_SAT ,28.93,-97.65, 2 +SAT00020, 9,20SSE_SAT ,29.33,-98.31, 2 +SAT00021, 9,30SSE_SAT ,29.18,-98.24, 2 +SAT00022, 9,40SSE_SAT ,29.02,-98.17, 2 +SAT00023, 9,50SSE_SAT ,28.87,-98.10, 2 +SAT00024, 9,60SSE_SAT ,28.72,-98.02, 2 +SAT00025, 9,20S_SAT ,29.31,-98.46, 2 +SAT00026, 9,30S_SAT ,29.14,-98.46, 2 +SAT00027, 9,40S_SAT ,28.97,-98.46, 2 +SAT00028, 9,50S_SAT ,28.81,-98.46, 2 +SAT00029, 9,60S_SAT ,28.64,-98.46, 2 +SAT00030, 9,70S_SAT ,28.47,-98.46, 2 +SAT00031, 9,20SSW_SAT ,29.33,-98.61, 2 +SAT00032, 9,30SSW_SAT ,29.18,-98.68, 2 +SAT00033, 9,40SSW_SAT ,29.02,-98.75, 2 +SAT00034, 9,50SSW_SAT ,28.87,-98.82, 2 +SAT00035, 9,60SSW_SAT ,28.72,-98.90, 2 +SAT00036, 9,70SSW_SAT ,28.56,-98.97, 2 +SAT00037, 9,20SW_SAT ,29.40,-98.73, 2 +SAT00038, 9,30SW_SAT ,29.29,-98.87, 2 +SAT00039, 9,40SW_SAT ,29.17,-99.00, 2 +SAT00040, 9,50SW_SAT ,29.05,-99.13, 2 +SAT00041, 9,60SW_SAT ,28.93,-99.27, 2 +SAT00042, 9,70SW_SAT ,28.81,-99.40, 2 +SAT00043, 9,20WSW_SAT ,29.51,-98.81, 2 +SAT00044, 9,30WSW_SAT ,29.45,-98.99, 2 +SAT00045, 9,40WSW_SAT ,29.38,-99.17, 2 +SAT00046, 9,50WSW_SAT ,29.32,-99.34, 2 +SAT00047, 9,60WSW_SAT ,29.25,-99.52, 2 +SAT00048, 9,20W_SAT ,29.64,-98.84, 2 +SAT00049, 9,30W_SAT ,29.64,-99.03, 2 +SAT00050, 9,40W_SAT ,29.64,-99.23, 2 +SAT00051, 9,50W_SAT ,29.64,-99.42, 2 +SAT00052, 9,20WNW_SAT ,29.77,-98.81, 2 +SAT00053, 9,30WNW_SAT ,29.83,-98.99, 2 +SAT00054, 9,40WNW_SAT ,29.89,-99.17, 2 +SAT00055, 9,20NW_SAT ,29.88,-98.73, 2 +SAT00056, 9,30NW_SAT ,29.99,-98.87, 2 +SAT00057, 9,40NW_SAT ,30.11,-99.00, 2 +SAT00058, 9,20NNW_SAT ,29.95,-98.61, 2 +SAT00059, 9,30NNW_SAT ,30.10,-98.68, 2 +SAT00060, 9,40NNW_SAT ,30.26,-98.76, 2 SPS00000, 9,SPS ,33.99,-98.59, 1 SPS00001, 9,20N_SPS ,34.32,-98.59, 2 SPS00002, 9,30N_SPS ,34.49,-98.59, 2 @@ -11770,42 +11839,43 @@ JCT00016, 9,20E_JCT ,30.60,-99.43, 2 JCT00017, 9,30E_JCT ,30.60,-99.24, 2 JCT00018, 9,40E_JCT ,30.60,-99.05, 2 JCT00019, 9,50E_JCT ,30.60,-98.85, 2 -JCT00020, 9,20ESE_JCT ,30.47,-99.46, 2 -JCT00021, 9,30ESE_JCT ,30.41,-99.28, 2 -JCT00022, 9,40ESE_JCT ,30.34,-99.11, 2 -JCT00023, 9,50ESE_JCT ,30.28,-98.93, 2 -JCT00024, 9,20SE_JCT ,30.36,-99.55, 2 -JCT00025, 9,30SE_JCT ,30.25,-99.41, 2 -JCT00026, 9,40SE_JCT ,30.13,-99.28, 2 -JCT00027, 9,50SE_JCT ,30.01,-99.14, 2 -JCT00028, 9,20SSE_JCT ,30.29,-99.67, 2 -JCT00029, 9,30SSE_JCT ,30.14,-99.60, 2 -JCT00030, 9,40SSE_JCT ,29.98,-99.53, 2 -JCT00031, 9,50SSE_JCT ,29.83,-99.45, 2 -JCT00032, 9,20S_JCT ,30.27,-99.82, 2 -JCT00033, 9,30S_JCT ,30.10,-99.82, 2 -JCT00034, 9,40S_JCT ,29.93,-99.82, 2 -JCT00035, 9,50S_JCT ,29.77,-99.82, 2 -JCT00036, 9,60S_JCT ,29.60,-99.82, 2 -JCT00037, 9,20SSW_JCT ,30.29,-99.97, 2 -JCT00038, 9,30SSW_JCT ,30.14,-100.04, 2 -JCT00039, 9,40SSW_JCT ,29.98,-100.11, 2 -JCT00040, 9,50SSW_JCT ,29.83,-100.19, 2 -JCT00041, 9,20SW_JCT ,30.36,-100.09, 2 -JCT00042, 9,30SW_JCT ,30.25,-100.23, 2 -JCT00043, 9,40SW_JCT ,30.13,-100.36, 2 -JCT00044, 9,50SW_JCT ,30.01,-100.50, 2 -JCT00045, 9,20WSW_JCT ,30.47,-100.18, 2 -JCT00046, 9,30WSW_JCT ,30.41,-100.36, 2 -JCT00047, 9,40WSW_JCT ,30.34,-100.53, 2 -JCT00048, 9,50WSW_JCT ,30.28,-100.71, 2 -JCT00049, 9,60WSW_JCT ,30.21,-100.89, 2 -JCT00050, 9,20W_JCT ,30.60,-100.21, 2 -JCT00051, 9,30W_JCT ,30.60,-100.40, 2 -JCT00052, 9,40W_JCT ,30.60,-100.59, 2 -JCT00053, 9,20WNW_JCT ,30.73,-100.18, 2 -JCT00054, 9,20NW_JCT ,30.84,-100.09, 2 -JCT00055, 9,20NNW_JCT ,30.91,-99.97, 2 +JCT00020, 9,60E_JCT ,30.59,-98.66, 2 +JCT00021, 9,20ESE_JCT ,30.47,-99.46, 2 +JCT00022, 9,30ESE_JCT ,30.41,-99.28, 2 +JCT00023, 9,40ESE_JCT ,30.34,-99.11, 2 +JCT00024, 9,50ESE_JCT ,30.28,-98.93, 2 +JCT00025, 9,20SE_JCT ,30.36,-99.55, 2 +JCT00026, 9,30SE_JCT ,30.25,-99.41, 2 +JCT00027, 9,40SE_JCT ,30.13,-99.28, 2 +JCT00028, 9,50SE_JCT ,30.01,-99.14, 2 +JCT00029, 9,20SSE_JCT ,30.29,-99.67, 2 +JCT00030, 9,30SSE_JCT ,30.14,-99.60, 2 +JCT00031, 9,40SSE_JCT ,29.98,-99.53, 2 +JCT00032, 9,50SSE_JCT ,29.83,-99.45, 2 +JCT00033, 9,20S_JCT ,30.27,-99.82, 2 +JCT00034, 9,30S_JCT ,30.10,-99.82, 2 +JCT00035, 9,40S_JCT ,29.93,-99.82, 2 +JCT00036, 9,50S_JCT ,29.77,-99.82, 2 +JCT00037, 9,60S_JCT ,29.60,-99.82, 2 +JCT00038, 9,20SSW_JCT ,30.29,-99.97, 2 +JCT00039, 9,30SSW_JCT ,30.14,-100.04, 2 +JCT00040, 9,40SSW_JCT ,29.98,-100.11, 2 +JCT00041, 9,50SSW_JCT ,29.83,-100.19, 2 +JCT00042, 9,20SW_JCT ,30.36,-100.09, 2 +JCT00043, 9,30SW_JCT ,30.25,-100.23, 2 +JCT00044, 9,40SW_JCT ,30.13,-100.36, 2 +JCT00045, 9,50SW_JCT ,30.01,-100.50, 2 +JCT00046, 9,20WSW_JCT ,30.47,-100.18, 2 +JCT00047, 9,30WSW_JCT ,30.41,-100.36, 2 +JCT00048, 9,40WSW_JCT ,30.34,-100.53, 2 +JCT00049, 9,50WSW_JCT ,30.28,-100.71, 2 +JCT00050, 9,60WSW_JCT ,30.21,-100.89, 2 +JCT00051, 9,20W_JCT ,30.60,-100.21, 2 +JCT00052, 9,30W_JCT ,30.60,-100.40, 2 +JCT00053, 9,40W_JCT ,30.60,-100.59, 2 +JCT00054, 9,20WNW_JCT ,30.73,-100.18, 2 +JCT00055, 9,20NW_JCT ,30.84,-100.09, 2 +JCT00056, 9,20NNW_JCT ,30.91,-99.97, 2 ABI00000, 9,ABI ,32.48,-99.86, 1 ABI00001, 9,20N_ABI ,32.81,-99.86, 2 ABI00002, 9,30N_ABI ,32.98,-99.86, 2 @@ -11877,67 +11947,6 @@ ABI00067, 9,20NNW_ABI ,32.79,-100.01, 2 ABI00068, 9,30NNW_ABI ,32.94,-100.09, 2 ABI00069, 9,40NNW_ABI ,33.10,-100.16, 2 ABI00070, 9,50NNW_ABI ,33.25,-100.24, 2 -GAG00000, 9,GAG ,36.34,-99.88, 1 -GAG00001, 9,20N_GAG ,36.67,-99.88, 2 -GAG00002, 9,30N_GAG ,36.84,-99.88, 2 -GAG00003, 9,40N_GAG ,37.01,-99.88, 2 -GAG00004, 9,20NNE_GAG ,36.65,-99.72, 2 -GAG00005, 9,30NNE_GAG ,36.80,-99.64, 2 -GAG00006, 9,40NNE_GAG ,36.96,-99.56, 2 -GAG00007, 9,50NNE_GAG ,37.11,-99.48, 2 -GAG00008, 9,60NNE_GAG ,37.26,-99.40, 2 -GAG00009, 9,20NE_GAG ,36.58,-99.59, 2 -GAG00010, 9,30NE_GAG ,36.69,-99.44, 2 -GAG00011, 9,40NE_GAG ,36.81,-99.29, 2 -GAG00012, 9,50NE_GAG ,36.93,-99.14, 2 -GAG00013, 9,60NE_GAG ,37.04,-98.99, 2 -GAG00014, 9,20ENE_GAG ,36.47,-99.50, 2 -GAG00015, 9,30ENE_GAG ,36.53,-99.31, 2 -GAG00016, 9,40ENE_GAG ,36.59,-99.11, 2 -GAG00017, 9,50ENE_GAG ,36.65,-98.92, 2 -GAG00018, 9,20E_GAG ,36.34,-99.47, 2 -GAG00019, 9,30E_GAG ,36.34,-99.26, 2 -GAG00020, 9,40E_GAG ,36.34,-99.05, 2 -GAG00021, 9,20ESE_GAG ,36.21,-99.50, 2 -GAG00022, 9,30ESE_GAG ,36.15,-99.31, 2 -GAG00023, 9,40ESE_GAG ,36.08,-99.12, 2 -GAG00024, 9,50ESE_GAG ,36.02,-98.93, 2 -GAG00025, 9,20SE_GAG ,36.10,-99.59, 2 -GAG00026, 9,30SE_GAG ,35.99,-99.44, 2 -GAG00027, 9,40SE_GAG ,35.87,-99.30, 2 -GAG00028, 9,50SE_GAG ,35.75,-99.15, 2 -GAG00029, 9,60SE_GAG ,35.63,-99.01, 2 -GAG00030, 9,20SSE_GAG ,36.03,-99.72, 2 -GAG00031, 9,30SSE_GAG ,35.88,-99.64, 2 -GAG00032, 9,40SSE_GAG ,35.72,-99.57, 2 -GAG00033, 9,50SSE_GAG ,35.57,-99.49, 2 -GAG00034, 9,60SSE_GAG ,35.42,-99.41, 2 -GAG00035, 9,70SSE_GAG ,35.26,-99.33, 2 -GAG00036, 9,20S_GAG ,36.01,-99.88, 2 -GAG00037, 9,30S_GAG ,35.84,-99.88, 2 -GAG00038, 9,40S_GAG ,35.67,-99.88, 2 -GAG00039, 9,50S_GAG ,35.51,-99.88, 2 -GAG00040, 9,60S_GAG ,35.34,-99.88, 2 -GAG00041, 9,20SSW_GAG ,36.03,-100.04, 2 -GAG00042, 9,30SSW_GAG ,35.88,-100.12, 2 -GAG00043, 9,40SSW_GAG ,35.72,-100.19, 2 -GAG00044, 9,50SSW_GAG ,35.57,-100.27, 2 -GAG00045, 9,60SSW_GAG ,35.42,-100.35, 2 -GAG00046, 9,20SW_GAG ,36.10,-100.17, 2 -GAG00047, 9,30SW_GAG ,35.99,-100.32, 2 -GAG00048, 9,40SW_GAG ,35.87,-100.46, 2 -GAG00049, 9,50SW_GAG ,35.75,-100.61, 2 -GAG00050, 9,60SW_GAG ,35.63,-100.75, 2 -GAG00051, 9,20WSW_GAG ,36.21,-100.26, 2 -GAG00052, 9,30WSW_GAG ,36.15,-100.45, 2 -GAG00053, 9,40WSW_GAG ,36.08,-100.64, 2 -GAG00054, 9,50WSW_GAG ,36.02,-100.83, 2 -GAG00055, 9,20W_GAG ,36.34,-100.29, 2 -GAG00056, 9,30W_GAG ,36.34,-100.50, 2 -GAG00057, 9,20WNW_GAG ,36.47,-100.26, 2 -GAG00058, 9,20NW_GAG ,36.58,-100.17, 2 -GAG00059, 9,20NNW_GAG ,36.65,-100.04, 2 -GAG00060, 9,30NNW_GAG ,36.80,-100.12, 2 ANW00000, 9,ANW ,42.57,-99.99, 1 ANW00001, 9,20N_ANW ,42.90,-99.99, 2 ANW00002, 9,30N_ANW ,43.07,-99.99, 2 @@ -12391,19 +12400,20 @@ LBF00039, 9,50WSW_LBF ,40.81,-101.74, 2 LBF00040, 9,20W_LBF ,41.13,-101.16, 2 LBF00041, 9,30W_LBF ,41.13,-101.38, 2 LBF00042, 9,40W_LBF ,41.13,-101.60, 2 -LBF00043, 9,20WNW_LBF ,41.26,-101.13, 2 -LBF00044, 9,30WNW_LBF ,41.32,-101.33, 2 -LBF00045, 9,40WNW_LBF ,41.38,-101.54, 2 -LBF00046, 9,50WNW_LBF ,41.44,-101.75, 2 -LBF00047, 9,20NW_LBF ,41.37,-101.03, 2 -LBF00048, 9,30NW_LBF ,41.48,-101.19, 2 -LBF00049, 9,40NW_LBF ,41.60,-101.35, 2 -LBF00050, 9,50NW_LBF ,41.72,-101.51, 2 -LBF00051, 9,60NW_LBF ,41.83,-101.67, 2 -LBF00052, 9,20NNW_LBF ,41.44,-100.89, 2 -LBF00053, 9,30NNW_LBF ,41.59,-100.98, 2 -LBF00054, 9,40NNW_LBF ,41.74,-101.06, 2 -LBF00055, 9,50NNW_LBF ,41.90,-101.15, 2 +LBF00043, 9,50W_LBF ,41.12,-101.83, 2 +LBF00044, 9,20WNW_LBF ,41.26,-101.13, 2 +LBF00045, 9,30WNW_LBF ,41.32,-101.33, 2 +LBF00046, 9,40WNW_LBF ,41.38,-101.54, 2 +LBF00047, 9,50WNW_LBF ,41.44,-101.75, 2 +LBF00048, 9,20NW_LBF ,41.37,-101.03, 2 +LBF00049, 9,30NW_LBF ,41.48,-101.19, 2 +LBF00050, 9,40NW_LBF ,41.60,-101.35, 2 +LBF00051, 9,50NW_LBF ,41.72,-101.51, 2 +LBF00052, 9,60NW_LBF ,41.83,-101.67, 2 +LBF00053, 9,20NNW_LBF ,41.44,-100.89, 2 +LBF00054, 9,30NNW_LBF ,41.59,-100.98, 2 +LBF00055, 9,40NNW_LBF ,41.74,-101.06, 2 +LBF00056, 9,50NNW_LBF ,41.90,-101.15, 2 GCK00000, 9,GCK ,37.92,-100.73, 1 GCK00001, 9,20N_GCK ,38.25,-100.73, 2 GCK00002, 9,30N_GCK ,38.42,-100.73, 2 @@ -12603,11 +12613,14 @@ LBL00037, 9,50WSW_LBL ,36.72,-101.93, 2 LBL00038, 9,60WSW_LBL ,36.65,-102.12, 2 LBL00039, 9,70WSW_LBL ,36.59,-102.31, 2 LBL00040, 9,20W_LBL ,37.04,-101.39, 2 -LBL00041, 9,20WNW_LBL ,37.17,-101.36, 2 -LBL00042, 9,30WNW_LBL ,37.23,-101.55, 2 -LBL00043, 9,20NW_LBL ,37.28,-101.27, 2 -LBL00044, 9,30NW_LBL ,37.39,-101.41, 2 -LBL00045, 9,20NNW_LBL ,37.35,-101.13, 2 +LBL00041, 9,30W_LBL ,37.04,-101.60, 2 +LBL00042, 9,60W_LBL ,37.03,-102.22, 2 +LBL00043, 9,20WNW_LBL ,37.17,-101.36, 2 +LBL00044, 9,30WNW_LBL ,37.23,-101.55, 2 +LBL00045, 9,40WNW_LBL ,37.29,-101.74, 2 +LBL00046, 9,20NW_LBL ,37.28,-101.27, 2 +LBL00047, 9,30NW_LBL ,37.39,-101.41, 2 +LBL00048, 9,20NNW_LBL ,37.35,-101.13, 2 MOT00000, 9,MOT ,48.26,-101.29, 1 MOT00001, 9,20N_MOT ,48.59,-101.29, 2 MOT00002, 9,30N_MOT ,48.76,-101.29, 2 @@ -12749,7 +12762,7 @@ AMA00045, 9,40W_AMA ,35.29,-102.46, 2 AMA00046, 9,20WNW_AMA ,35.42,-102.02, 2 AMA00047, 9,30WNW_AMA ,35.48,-102.21, 2 AMA00048, 9,40WNW_AMA ,35.54,-102.40, 2 -AMA00049, 9,50WNW_AMA ,35.60,-102.59, 2 +AMA00049, 9,50WNW_AMA ,35.61,-102.59, 2 AMA00050, 9,20NW_AMA ,35.53,-101.93, 2 AMA00051, 9,30NW_AMA ,35.64,-102.07, 2 AMA00052, 9,40NW_AMA ,35.76,-102.22, 2 @@ -13008,33 +13021,34 @@ LAA00024, 9,20SSE_LAA ,37.89,-102.53, 2 LAA00025, 9,30SSE_LAA ,37.74,-102.45, 2 LAA00026, 9,40SSE_LAA ,37.58,-102.37, 2 LAA00027, 9,50SSE_LAA ,37.43,-102.29, 2 -LAA00028, 9,20S_LAA ,37.87,-102.69, 2 -LAA00029, 9,30S_LAA ,37.70,-102.69, 2 -LAA00030, 9,40S_LAA ,37.53,-102.69, 2 -LAA00031, 9,50S_LAA ,37.37,-102.69, 2 -LAA00032, 9,20SSW_LAA ,37.89,-102.85, 2 -LAA00033, 9,30SSW_LAA ,37.74,-102.93, 2 -LAA00034, 9,40SSW_LAA ,37.58,-103.01, 2 -LAA00035, 9,20SW_LAA ,37.96,-102.99, 2 -LAA00036, 9,30SW_LAA ,37.85,-103.14, 2 -LAA00037, 9,40SW_LAA ,37.73,-103.29, 2 -LAA00038, 9,20WSW_LAA ,38.07,-103.08, 2 -LAA00039, 9,30WSW_LAA ,38.01,-103.28, 2 -LAA00040, 9,40WSW_LAA ,37.94,-103.47, 2 -LAA00041, 9,20W_LAA ,38.20,-103.11, 2 -LAA00042, 9,30W_LAA ,38.20,-103.33, 2 -LAA00043, 9,40W_LAA ,38.20,-103.54, 2 -LAA00044, 9,20WNW_LAA ,38.33,-103.08, 2 -LAA00045, 9,30WNW_LAA ,38.39,-103.28, 2 -LAA00046, 9,40WNW_LAA ,38.45,-103.48, 2 -LAA00047, 9,20NW_LAA ,38.44,-102.99, 2 -LAA00048, 9,30NW_LAA ,38.55,-103.14, 2 -LAA00049, 9,40NW_LAA ,38.67,-103.29, 2 -LAA00050, 9,50NW_LAA ,38.79,-103.45, 2 -LAA00051, 9,20NNW_LAA ,38.51,-102.85, 2 -LAA00052, 9,30NNW_LAA ,38.66,-102.93, 2 -LAA00053, 9,40NNW_LAA ,38.82,-103.02, 2 -LAA00054, 9,50NNW_LAA ,38.97,-103.10, 2 +LAA00028, 9,60SSE_LAA ,37.28,-102.21, 2 +LAA00029, 9,20S_LAA ,37.87,-102.69, 2 +LAA00030, 9,30S_LAA ,37.70,-102.69, 2 +LAA00031, 9,40S_LAA ,37.53,-102.69, 2 +LAA00032, 9,50S_LAA ,37.37,-102.69, 2 +LAA00033, 9,20SSW_LAA ,37.89,-102.85, 2 +LAA00034, 9,30SSW_LAA ,37.74,-102.93, 2 +LAA00035, 9,40SSW_LAA ,37.58,-103.01, 2 +LAA00036, 9,20SW_LAA ,37.96,-102.99, 2 +LAA00037, 9,30SW_LAA ,37.85,-103.14, 2 +LAA00038, 9,40SW_LAA ,37.73,-103.29, 2 +LAA00039, 9,20WSW_LAA ,38.07,-103.08, 2 +LAA00040, 9,30WSW_LAA ,38.01,-103.28, 2 +LAA00041, 9,40WSW_LAA ,37.94,-103.47, 2 +LAA00042, 9,20W_LAA ,38.20,-103.11, 2 +LAA00043, 9,30W_LAA ,38.20,-103.33, 2 +LAA00044, 9,40W_LAA ,38.20,-103.54, 2 +LAA00045, 9,20WNW_LAA ,38.33,-103.08, 2 +LAA00046, 9,30WNW_LAA ,38.39,-103.28, 2 +LAA00047, 9,40WNW_LAA ,38.45,-103.48, 2 +LAA00048, 9,20NW_LAA ,38.44,-102.99, 2 +LAA00049, 9,30NW_LAA ,38.55,-103.14, 2 +LAA00050, 9,40NW_LAA ,38.67,-103.29, 2 +LAA00051, 9,50NW_LAA ,38.79,-103.45, 2 +LAA00052, 9,20NNW_LAA ,38.51,-102.85, 2 +LAA00053, 9,30NNW_LAA ,38.66,-102.93, 2 +LAA00054, 9,40NNW_LAA ,38.82,-103.02, 2 +LAA00055, 9,50NNW_LAA ,38.97,-103.10, 2 DIK00000, 9,DIK ,46.86,-102.77, 1 DIK00001, 9,20N_DIK ,47.19,-102.77, 2 DIK00002, 9,30N_DIK ,47.36,-102.77, 2 @@ -13154,26 +13168,38 @@ SNY00004, 9,30NE_SNY ,41.45,-102.51, 2 SNY00005, 9,40NE_SNY ,41.57,-102.35, 2 SNY00006, 9,50NE_SNY ,41.69,-102.19, 2 SNY00007, 9,20ENE_SNY ,41.23,-102.57, 2 -SNY00008, 9,20ESE_SNY ,40.97,-102.57, 2 -SNY00009, 9,50ESE_SNY ,40.78,-101.96, 2 -SNY00010, 9,20SE_SNY ,40.86,-102.67, 2 -SNY00011, 9,30SE_SNY ,40.75,-102.51, 2 -SNY00012, 9,40SE_SNY ,40.63,-102.36, 2 -SNY00013, 9,50SE_SNY ,40.51,-102.21, 2 -SNY00014, 9,60SE_SNY ,40.39,-102.05, 2 -SNY00015, 9,20SSE_SNY ,40.79,-102.81, 2 -SNY00016, 9,30SSE_SNY ,40.64,-102.73, 2 -SNY00017, 9,40SSE_SNY ,40.48,-102.64, 2 -SNY00018, 9,20S_SNY ,40.77,-102.98, 2 -SNY00019, 9,30S_SNY ,40.60,-102.98, 2 -SNY00020, 9,20SSW_SNY ,40.79,-103.15, 2 -SNY00021, 9,30SSW_SNY ,40.64,-103.23, 2 -SNY00022, 9,20SW_SNY ,40.86,-103.29, 2 -SNY00023, 9,30SW_SNY ,40.75,-103.45, 2 -SNY00024, 9,40SW_SNY ,40.63,-103.60, 2 -SNY00025, 9,20WSW_SNY ,40.97,-103.39, 2 -SNY00026, 9,20W_SNY ,41.10,-103.42, 2 -SNY00027, 9,20WNW_SNY ,41.23,-103.39, 2 +SNY00008, 9,30ENE_SNY ,41.29,-102.37, 2 +SNY00009, 9,40ENE_SNY ,41.35,-102.16, 2 +SNY00010, 9,50ENE_SNY ,41.41,-101.95, 2 +SNY00011, 9,20E_SNY ,41.10,-102.54, 2 +SNY00012, 9,30E_SNY ,41.10,-102.32, 2 +SNY00013, 9,40E_SNY ,41.10,-102.10, 2 +SNY00014, 9,50E_SNY ,41.09,-101.87, 2 +SNY00015, 9,20ESE_SNY ,40.97,-102.57, 2 +SNY00016, 9,30ESE_SNY ,40.91,-102.37, 2 +SNY00017, 9,40ESE_SNY ,40.84,-102.17, 2 +SNY00018, 9,50ESE_SNY ,40.78,-101.96, 2 +SNY00019, 9,20SE_SNY ,40.86,-102.67, 2 +SNY00020, 9,30SE_SNY ,40.75,-102.51, 2 +SNY00021, 9,40SE_SNY ,40.63,-102.36, 2 +SNY00022, 9,50SE_SNY ,40.51,-102.21, 2 +SNY00023, 9,60SE_SNY ,40.39,-102.05, 2 +SNY00024, 9,20SSE_SNY ,40.79,-102.81, 2 +SNY00025, 9,30SSE_SNY ,40.64,-102.73, 2 +SNY00026, 9,40SSE_SNY ,40.48,-102.64, 2 +SNY00027, 9,20S_SNY ,40.77,-102.98, 2 +SNY00028, 9,30S_SNY ,40.60,-102.98, 2 +SNY00029, 9,20SSW_SNY ,40.79,-103.15, 2 +SNY00030, 9,30SSW_SNY ,40.64,-103.23, 2 +SNY00031, 9,20SW_SNY ,40.86,-103.29, 2 +SNY00032, 9,30SW_SNY ,40.75,-103.45, 2 +SNY00033, 9,40SW_SNY ,40.63,-103.60, 2 +SNY00034, 9,20WSW_SNY ,40.97,-103.39, 2 +SNY00035, 9,30WSW_SNY ,40.91,-103.59, 2 +SNY00036, 9,40WSW_SNY ,40.84,-103.79, 2 +SNY00037, 9,20W_SNY ,41.10,-103.42, 2 +SNY00038, 9,30W_SNY ,41.10,-103.64, 2 +SNY00039, 9,20WNW_SNY ,41.23,-103.39, 2 FST00000, 9,FST ,30.95,-102.98, 1 FST00001, 9,20N_FST ,31.28,-102.98, 2 FST00002, 9,20NNE_FST ,31.26,-102.83, 2 @@ -13275,41 +13301,39 @@ RAP00047, 9,30SW_RAP ,43.63,-103.50, 2 RAP00048, 9,40SW_RAP ,43.51,-103.66, 2 RAP00049, 9,50SW_RAP ,43.39,-103.82, 2 RAP00050, 9,60SW_RAP ,43.27,-103.98, 2 -RAP00051, 9,70SW_RAP ,43.15,-104.14, 2 -RAP00052, 9,80SW_RAP ,43.03,-104.30, 2 -RAP00053, 9,20WSW_RAP ,43.85,-103.44, 2 -RAP00054, 9,30WSW_RAP ,43.79,-103.65, 2 -RAP00055, 9,40WSW_RAP ,43.72,-103.86, 2 -RAP00056, 9,50WSW_RAP ,43.66,-104.07, 2 -RAP00057, 9,60WSW_RAP ,43.59,-104.28, 2 -RAP00058, 9,70WSW_RAP ,43.52,-104.50, 2 -RAP00059, 9,80WSW_RAP ,43.46,-104.71, 2 -RAP00060, 9,20W_RAP ,43.98,-103.47, 2 -RAP00061, 9,30W_RAP ,43.98,-103.70, 2 -RAP00062, 9,40W_RAP ,43.98,-103.94, 2 -RAP00063, 9,50W_RAP ,43.97,-104.17, 2 -RAP00064, 9,60W_RAP ,43.97,-104.40, 2 -RAP00065, 9,70W_RAP ,43.97,-104.63, 2 -RAP00066, 9,20WNW_RAP ,44.11,-103.44, 2 -RAP00067, 9,30WNW_RAP ,44.17,-103.65, 2 -RAP00068, 9,40WNW_RAP ,44.23,-103.87, 2 -RAP00069, 9,50WNW_RAP ,44.29,-104.08, 2 -RAP00070, 9,60WNW_RAP ,44.36,-104.30, 2 -RAP00071, 9,70WNW_RAP ,44.42,-104.52, 2 -RAP00072, 9,80WNW_RAP ,44.48,-104.74, 2 -RAP00073, 9,20NW_RAP ,44.22,-103.34, 2 -RAP00074, 9,30NW_RAP ,44.33,-103.50, 2 -RAP00075, 9,40NW_RAP ,44.45,-103.67, 2 -RAP00076, 9,50NW_RAP ,44.57,-103.84, 2 -RAP00077, 9,60NW_RAP ,44.68,-104.00, 2 -RAP00078, 9,70NW_RAP ,44.80,-104.17, 2 -RAP00079, 9,80NW_RAP ,44.91,-104.34, 2 -RAP00080, 9,20NNW_RAP ,44.29,-103.19, 2 -RAP00081, 9,30NNW_RAP ,44.44,-103.28, 2 -RAP00082, 9,40NNW_RAP ,44.59,-103.37, 2 -RAP00083, 9,50NNW_RAP ,44.75,-103.46, 2 -RAP00084, 9,60NNW_RAP ,44.90,-103.55, 2 -RAP00085, 9,70NNW_RAP ,45.06,-103.64, 2 +RAP00051, 9,20WSW_RAP ,43.85,-103.44, 2 +RAP00052, 9,30WSW_RAP ,43.79,-103.65, 2 +RAP00053, 9,40WSW_RAP ,43.72,-103.86, 2 +RAP00054, 9,50WSW_RAP ,43.66,-104.07, 2 +RAP00055, 9,60WSW_RAP ,43.59,-104.28, 2 +RAP00056, 9,70WSW_RAP ,43.52,-104.50, 2 +RAP00057, 9,80WSW_RAP ,43.46,-104.71, 2 +RAP00058, 9,20W_RAP ,43.98,-103.47, 2 +RAP00059, 9,30W_RAP ,43.98,-103.70, 2 +RAP00060, 9,40W_RAP ,43.98,-103.94, 2 +RAP00061, 9,50W_RAP ,43.97,-104.17, 2 +RAP00062, 9,60W_RAP ,43.97,-104.40, 2 +RAP00063, 9,70W_RAP ,43.97,-104.63, 2 +RAP00064, 9,20WNW_RAP ,44.11,-103.44, 2 +RAP00065, 9,30WNW_RAP ,44.17,-103.65, 2 +RAP00066, 9,40WNW_RAP ,44.23,-103.87, 2 +RAP00067, 9,50WNW_RAP ,44.29,-104.08, 2 +RAP00068, 9,60WNW_RAP ,44.36,-104.30, 2 +RAP00069, 9,70WNW_RAP ,44.42,-104.52, 2 +RAP00070, 9,80WNW_RAP ,44.48,-104.74, 2 +RAP00071, 9,20NW_RAP ,44.22,-103.34, 2 +RAP00072, 9,30NW_RAP ,44.33,-103.50, 2 +RAP00073, 9,40NW_RAP ,44.45,-103.67, 2 +RAP00074, 9,50NW_RAP ,44.57,-103.84, 2 +RAP00075, 9,60NW_RAP ,44.68,-104.00, 2 +RAP00076, 9,70NW_RAP ,44.80,-104.17, 2 +RAP00077, 9,80NW_RAP ,44.91,-104.34, 2 +RAP00078, 9,20NNW_RAP ,44.29,-103.19, 2 +RAP00079, 9,30NNW_RAP ,44.44,-103.28, 2 +RAP00080, 9,40NNW_RAP ,44.59,-103.37, 2 +RAP00081, 9,50NNW_RAP ,44.75,-103.46, 2 +RAP00082, 9,60NNW_RAP ,44.90,-103.55, 2 +RAP00083, 9,70NNW_RAP ,45.06,-103.64, 2 AKO00000, 9,AKO ,40.16,-103.18, 1 AKO00001, 9,20N_AKO ,40.49,-103.18, 2 AKO00002, 9,20NNE_AKO ,40.47,-103.01, 2 @@ -13448,31 +13472,32 @@ BFF00034, 9,30S_BFF ,41.39,-103.48, 2 BFF00035, 9,20SSW_BFF ,41.58,-103.65, 2 BFF00036, 9,30SSW_BFF ,41.43,-103.74, 2 BFF00037, 9,40SSW_BFF ,41.27,-103.82, 2 -BFF00038, 9,20SW_BFF ,41.65,-103.80, 2 -BFF00039, 9,30SW_BFF ,41.54,-103.95, 2 -BFF00040, 9,40SW_BFF ,41.42,-104.11, 2 -BFF00041, 9,20WSW_BFF ,41.76,-103.89, 2 -BFF00042, 9,30WSW_BFF ,41.70,-104.10, 2 -BFF00043, 9,40WSW_BFF ,41.63,-104.30, 2 -BFF00044, 9,20W_BFF ,41.89,-103.93, 2 -BFF00045, 9,30W_BFF ,41.89,-104.15, 2 -BFF00046, 9,40W_BFF ,41.89,-104.37, 2 -BFF00047, 9,50W_BFF ,41.88,-104.60, 2 -BFF00048, 9,20WNW_BFF ,42.02,-103.89, 2 -BFF00049, 9,30WNW_BFF ,42.08,-104.10, 2 -BFF00050, 9,40WNW_BFF ,42.14,-104.31, 2 -BFF00051, 9,50WNW_BFF ,42.20,-104.52, 2 -BFF00052, 9,60WNW_BFF ,42.27,-104.73, 2 -BFF00053, 9,20NW_BFF ,42.13,-103.80, 2 -BFF00054, 9,30NW_BFF ,42.24,-103.96, 2 -BFF00055, 9,40NW_BFF ,42.36,-104.12, 2 -BFF00056, 9,50NW_BFF ,42.48,-104.28, 2 -BFF00057, 9,60NW_BFF ,42.59,-104.44, 2 -BFF00058, 9,20NNW_BFF ,42.20,-103.65, 2 -BFF00059, 9,30NNW_BFF ,42.35,-103.74, 2 -BFF00060, 9,40NNW_BFF ,42.50,-103.83, 2 -BFF00061, 9,50NNW_BFF ,42.66,-103.91, 2 -BFF00062, 9,60NNW_BFF ,42.81,-104.00, 2 +BFF00038, 9,50SSW_BFF ,41.12,-103.90, 2 +BFF00039, 9,20SW_BFF ,41.65,-103.80, 2 +BFF00040, 9,30SW_BFF ,41.54,-103.95, 2 +BFF00041, 9,40SW_BFF ,41.42,-104.11, 2 +BFF00042, 9,20WSW_BFF ,41.76,-103.89, 2 +BFF00043, 9,30WSW_BFF ,41.70,-104.10, 2 +BFF00044, 9,40WSW_BFF ,41.63,-104.30, 2 +BFF00045, 9,20W_BFF ,41.89,-103.93, 2 +BFF00046, 9,30W_BFF ,41.89,-104.15, 2 +BFF00047, 9,40W_BFF ,41.89,-104.37, 2 +BFF00048, 9,50W_BFF ,41.88,-104.60, 2 +BFF00049, 9,20WNW_BFF ,42.02,-103.89, 2 +BFF00050, 9,30WNW_BFF ,42.08,-104.10, 2 +BFF00051, 9,40WNW_BFF ,42.14,-104.31, 2 +BFF00052, 9,50WNW_BFF ,42.20,-104.52, 2 +BFF00053, 9,60WNW_BFF ,42.27,-104.73, 2 +BFF00054, 9,20NW_BFF ,42.13,-103.80, 2 +BFF00055, 9,30NW_BFF ,42.24,-103.96, 2 +BFF00056, 9,40NW_BFF ,42.36,-104.12, 2 +BFF00057, 9,50NW_BFF ,42.48,-104.28, 2 +BFF00058, 9,60NW_BFF ,42.59,-104.44, 2 +BFF00059, 9,20NNW_BFF ,42.20,-103.65, 2 +BFF00060, 9,30NNW_BFF ,42.35,-103.74, 2 +BFF00061, 9,40NNW_BFF ,42.50,-103.83, 2 +BFF00062, 9,50NNW_BFF ,42.66,-103.91, 2 +BFF00063, 9,60NNW_BFF ,42.81,-104.00, 2 TBE00000, 9,TBE ,37.27,-103.60, 1 TBE00001, 9,20N_TBE ,37.60,-103.60, 2 TBE00002, 9,30N_TBE ,37.77,-103.60, 2 @@ -13480,41 +13505,49 @@ TBE00003, 9,20NNE_TBE ,37.58,-103.44, 2 TBE00004, 9,20NE_TBE ,37.51,-103.30, 2 TBE00005, 9,20ENE_TBE ,37.40,-103.21, 2 TBE00006, 9,30ENE_TBE ,37.46,-103.02, 2 -TBE00007, 9,50ESE_TBE ,36.95,-102.64, 2 -TBE00008, 9,60ESE_TBE ,36.88,-102.45, 2 -TBE00009, 9,50SE_TBE ,36.68,-102.87, 2 -TBE00010, 9,60SE_TBE ,36.56,-102.72, 2 -TBE00011, 9,70SE_TBE ,36.44,-102.58, 2 -TBE00012, 9,80SE_TBE ,36.32,-102.43, 2 -TBE00013, 9,20SSE_TBE ,36.96,-103.44, 2 -TBE00014, 9,30SSE_TBE ,36.81,-103.36, 2 -TBE00015, 9,40SSE_TBE ,36.65,-103.28, 2 -TBE00016, 9,50SSE_TBE ,36.50,-103.20, 2 -TBE00017, 9,60SSE_TBE ,36.35,-103.13, 2 -TBE00018, 9,70SSE_TBE ,36.19,-103.05, 2 -TBE00019, 9,20S_TBE ,36.94,-103.60, 2 -TBE00020, 9,30S_TBE ,36.77,-103.60, 2 -TBE00021, 9,40S_TBE ,36.60,-103.60, 2 -TBE00022, 9,50S_TBE ,36.44,-103.60, 2 -TBE00023, 9,60S_TBE ,36.27,-103.60, 2 -TBE00024, 9,20SSW_TBE ,36.96,-103.76, 2 -TBE00025, 9,30SSW_TBE ,36.81,-103.84, 2 -TBE00026, 9,40SSW_TBE ,36.65,-103.92, 2 -TBE00027, 9,50SSW_TBE ,36.50,-104.00, 2 -TBE00028, 9,20SW_TBE ,37.03,-103.90, 2 -TBE00029, 9,30SW_TBE ,36.92,-104.04, 2 -TBE00030, 9,40SW_TBE ,36.80,-104.19, 2 -TBE00031, 9,20WSW_TBE ,37.14,-103.99, 2 -TBE00032, 9,30WSW_TBE ,37.08,-104.18, 2 -TBE00033, 9,40WSW_TBE ,37.01,-104.37, 2 -TBE00034, 9,20W_TBE ,37.27,-104.02, 2 -TBE00035, 9,30W_TBE ,37.27,-104.23, 2 -TBE00036, 9,40W_TBE ,37.27,-104.44, 2 -TBE00037, 9,50W_TBE ,37.27,-104.65, 2 -TBE00038, 9,20WNW_TBE ,37.40,-103.99, 2 -TBE00039, 9,30WNW_TBE ,37.46,-104.18, 2 -TBE00040, 9,20NW_TBE ,37.51,-103.90, 2 -TBE00041, 9,20NNW_TBE ,37.58,-103.76, 2 +TBE00007, 9,20E_TBE ,37.27,-103.18, 2 +TBE00008, 9,30E_TBE ,37.27,-102.97, 2 +TBE00009, 9,40E_TBE ,37.27,-102.76, 2 +TBE00010, 9,20ESE_TBE ,37.14,-103.21, 2 +TBE00011, 9,40ESE_TBE ,37.01,-102.83, 2 +TBE00012, 9,50ESE_TBE ,36.95,-102.64, 2 +TBE00013, 9,60ESE_TBE ,36.88,-102.45, 2 +TBE00014, 9,20SE_TBE ,37.03,-103.30, 2 +TBE00015, 9,30SE_TBE ,36.92,-103.16, 2 +TBE00016, 9,40SE_TBE ,36.80,-103.01, 2 +TBE00017, 9,50SE_TBE ,36.68,-102.87, 2 +TBE00018, 9,60SE_TBE ,36.56,-102.72, 2 +TBE00019, 9,70SE_TBE ,36.44,-102.58, 2 +TBE00020, 9,80SE_TBE ,36.32,-102.43, 2 +TBE00021, 9,20SSE_TBE ,36.96,-103.44, 2 +TBE00022, 9,30SSE_TBE ,36.81,-103.36, 2 +TBE00023, 9,40SSE_TBE ,36.65,-103.28, 2 +TBE00024, 9,50SSE_TBE ,36.50,-103.20, 2 +TBE00025, 9,60SSE_TBE ,36.35,-103.13, 2 +TBE00026, 9,70SSE_TBE ,36.19,-103.05, 2 +TBE00027, 9,20S_TBE ,36.94,-103.60, 2 +TBE00028, 9,30S_TBE ,36.77,-103.60, 2 +TBE00029, 9,40S_TBE ,36.60,-103.60, 2 +TBE00030, 9,50S_TBE ,36.44,-103.60, 2 +TBE00031, 9,60S_TBE ,36.27,-103.60, 2 +TBE00032, 9,20SSW_TBE ,36.96,-103.76, 2 +TBE00033, 9,30SSW_TBE ,36.81,-103.84, 2 +TBE00034, 9,40SSW_TBE ,36.65,-103.92, 2 +TBE00035, 9,50SSW_TBE ,36.50,-104.00, 2 +TBE00036, 9,20SW_TBE ,37.03,-103.90, 2 +TBE00037, 9,30SW_TBE ,36.92,-104.04, 2 +TBE00038, 9,40SW_TBE ,36.80,-104.19, 2 +TBE00039, 9,20WSW_TBE ,37.14,-103.99, 2 +TBE00040, 9,30WSW_TBE ,37.08,-104.18, 2 +TBE00041, 9,40WSW_TBE ,37.01,-104.37, 2 +TBE00042, 9,20W_TBE ,37.27,-104.02, 2 +TBE00043, 9,30W_TBE ,37.27,-104.23, 2 +TBE00044, 9,40W_TBE ,37.27,-104.44, 2 +TBE00045, 9,50W_TBE ,37.27,-104.65, 2 +TBE00046, 9,20WNW_TBE ,37.40,-103.99, 2 +TBE00047, 9,30WNW_TBE ,37.46,-104.18, 2 +TBE00048, 9,20NW_TBE ,37.51,-103.90, 2 +TBE00049, 9,20NNW_TBE ,37.58,-103.76, 2 TCC00000, 9,TCC ,35.18,-103.60, 1 TCC00001, 9,20N_TCC ,35.51,-103.60, 2 TCC00002, 9,30N_TCC ,35.68,-103.60, 2 @@ -13574,82 +13607,86 @@ ISN00000, 9,ISN ,48.18,-103.63, 1 ISN00001, 9,20N_ISN ,48.51,-103.63, 2 ISN00002, 9,30N_ISN ,48.68,-103.63, 2 ISN00003, 9,40N_ISN ,48.85,-103.63, 2 -ISN00004, 9,60N_ISN ,49.18,-103.63, 2 -ISN00005, 9,70N_ISN ,49.35,-103.63, 2 -ISN00006, 9,80N_ISN ,49.51,-103.63, 2 -ISN00007, 9,20NNE_ISN ,48.49,-103.44, 2 -ISN00008, 9,30NNE_ISN ,48.64,-103.34, 2 -ISN00009, 9,40NNE_ISN ,48.79,-103.24, 2 -ISN00010, 9,50NNE_ISN ,48.95,-103.14, 2 -ISN00011, 9,60NNE_ISN ,49.10,-103.05, 2 -ISN00012, 9,70NNE_ISN ,49.26,-102.95, 2 -ISN00013, 9,80NNE_ISN ,49.41,-102.85, 2 -ISN00014, 9,20NE_ISN ,48.41,-103.28, 2 -ISN00015, 9,30NE_ISN ,48.53,-103.10, 2 -ISN00016, 9,40NE_ISN ,48.65,-102.92, 2 -ISN00017, 9,50NE_ISN ,48.77,-102.74, 2 -ISN00018, 9,60NE_ISN ,48.88,-102.56, 2 -ISN00019, 9,20ENE_ISN ,48.31,-103.17, 2 -ISN00020, 9,30ENE_ISN ,48.37,-102.94, 2 -ISN00021, 9,40ENE_ISN ,48.43,-102.70, 2 -ISN00022, 9,20E_ISN ,48.18,-103.13, 2 -ISN00023, 9,30E_ISN ,48.18,-102.88, 2 -ISN00024, 9,40E_ISN ,48.18,-102.63, 2 -ISN00025, 9,20ESE_ISN ,48.05,-103.17, 2 -ISN00026, 9,30ESE_ISN ,47.99,-102.94, 2 -ISN00027, 9,40ESE_ISN ,47.92,-102.71, 2 -ISN00028, 9,50ESE_ISN ,47.86,-102.48, 2 -ISN00029, 9,20SE_ISN ,47.94,-103.28, 2 -ISN00030, 9,30SE_ISN ,47.83,-103.10, 2 -ISN00031, 9,40SE_ISN ,47.71,-102.93, 2 -ISN00032, 9,50SE_ISN ,47.59,-102.76, 2 -ISN00033, 9,20SSE_ISN ,47.87,-103.44, 2 -ISN00034, 9,30SSE_ISN ,47.72,-103.35, 2 -ISN00035, 9,40SSE_ISN ,47.56,-103.25, 2 -ISN00036, 9,50SSE_ISN ,47.41,-103.16, 2 -ISN00037, 9,20S_ISN ,47.85,-103.63, 2 -ISN00038, 9,30S_ISN ,47.68,-103.63, 2 -ISN00039, 9,40S_ISN ,47.51,-103.63, 2 -ISN00040, 9,50S_ISN ,47.35,-103.63, 2 -ISN00041, 9,20SSW_ISN ,47.87,-103.82, 2 -ISN00042, 9,30SSW_ISN ,47.72,-103.91, 2 -ISN00043, 9,40SSW_ISN ,47.56,-104.01, 2 -ISN00044, 9,50SSW_ISN ,47.41,-104.10, 2 -ISN00045, 9,60SSW_ISN ,47.26,-104.19, 2 -ISN00046, 9,70SSW_ISN ,47.10,-104.29, 2 -ISN00047, 9,20SW_ISN ,47.94,-103.98, 2 -ISN00048, 9,30SW_ISN ,47.83,-104.16, 2 -ISN00049, 9,40SW_ISN ,47.71,-104.33, 2 -ISN00050, 9,50SW_ISN ,47.59,-104.50, 2 -ISN00051, 9,60SW_ISN ,47.47,-104.68, 2 -ISN00052, 9,70SW_ISN ,47.35,-104.85, 2 -ISN00053, 9,80SW_ISN ,47.23,-105.02, 2 -ISN00054, 9,20WSW_ISN ,48.05,-104.09, 2 -ISN00055, 9,30WSW_ISN ,47.99,-104.32, 2 -ISN00056, 9,40WSW_ISN ,47.92,-104.55, 2 -ISN00057, 9,50WSW_ISN ,47.86,-104.78, 2 -ISN00058, 9,60WSW_ISN ,47.79,-105.00, 2 -ISN00059, 9,20W_ISN ,48.18,-104.13, 2 -ISN00060, 9,30W_ISN ,48.18,-104.38, 2 -ISN00061, 9,40W_ISN ,48.18,-104.63, 2 -ISN00062, 9,50W_ISN ,48.17,-104.88, 2 -ISN00063, 9,60W_ISN ,48.17,-105.13, 2 -ISN00064, 9,20WNW_ISN ,48.31,-104.09, 2 -ISN00065, 9,30WNW_ISN ,48.37,-104.32, 2 -ISN00066, 9,40WNW_ISN ,48.43,-104.56, 2 -ISN00067, 9,50WNW_ISN ,48.49,-104.79, 2 -ISN00068, 9,60WNW_ISN ,48.55,-105.02, 2 -ISN00069, 9,20NW_ISN ,48.41,-103.98, 2 -ISN00070, 9,30NW_ISN ,48.53,-104.16, 2 -ISN00071, 9,40NW_ISN ,48.65,-104.34, 2 -ISN00072, 9,60NW_ISN ,48.88,-104.70, 2 -ISN00073, 9,70NW_ISN ,49.00,-104.89, 2 -ISN00074, 9,80NW_ISN ,49.11,-105.07, 2 -ISN00075, 9,20NNW_ISN ,48.49,-103.82, 2 -ISN00076, 9,30NNW_ISN ,48.64,-103.92, 2 -ISN00077, 9,80NNW_ISN ,49.41,-104.41, 2 -ISN00078, 9,90NNW_ISN ,49.56,-104.51, 2 -ISN00079, 9,100NNW_ISN ,49.71,-104.62, 2 +ISN00004, 9,50N_ISN ,49.01,-103.63, 2 +ISN00005, 9,60N_ISN ,49.18,-103.63, 2 +ISN00006, 9,70N_ISN ,49.35,-103.63, 2 +ISN00007, 9,80N_ISN ,49.51,-103.63, 2 +ISN00008, 9,20NNE_ISN ,48.49,-103.44, 2 +ISN00009, 9,30NNE_ISN ,48.64,-103.34, 2 +ISN00010, 9,40NNE_ISN ,48.79,-103.24, 2 +ISN00011, 9,50NNE_ISN ,48.95,-103.14, 2 +ISN00012, 9,60NNE_ISN ,49.10,-103.05, 2 +ISN00013, 9,70NNE_ISN ,49.26,-102.95, 2 +ISN00014, 9,80NNE_ISN ,49.41,-102.85, 2 +ISN00015, 9,20NE_ISN ,48.41,-103.28, 2 +ISN00016, 9,30NE_ISN ,48.53,-103.10, 2 +ISN00017, 9,40NE_ISN ,48.65,-102.92, 2 +ISN00018, 9,50NE_ISN ,48.77,-102.74, 2 +ISN00019, 9,60NE_ISN ,48.88,-102.56, 2 +ISN00020, 9,20ENE_ISN ,48.31,-103.17, 2 +ISN00021, 9,30ENE_ISN ,48.37,-102.94, 2 +ISN00022, 9,40ENE_ISN ,48.43,-102.70, 2 +ISN00023, 9,20E_ISN ,48.18,-103.13, 2 +ISN00024, 9,30E_ISN ,48.18,-102.88, 2 +ISN00025, 9,40E_ISN ,48.18,-102.63, 2 +ISN00026, 9,20ESE_ISN ,48.05,-103.17, 2 +ISN00027, 9,30ESE_ISN ,47.99,-102.94, 2 +ISN00028, 9,40ESE_ISN ,47.92,-102.71, 2 +ISN00029, 9,50ESE_ISN ,47.86,-102.48, 2 +ISN00030, 9,20SE_ISN ,47.94,-103.28, 2 +ISN00031, 9,30SE_ISN ,47.83,-103.10, 2 +ISN00032, 9,40SE_ISN ,47.71,-102.93, 2 +ISN00033, 9,50SE_ISN ,47.59,-102.76, 2 +ISN00034, 9,20SSE_ISN ,47.87,-103.44, 2 +ISN00035, 9,30SSE_ISN ,47.72,-103.35, 2 +ISN00036, 9,40SSE_ISN ,47.56,-103.25, 2 +ISN00037, 9,50SSE_ISN ,47.41,-103.16, 2 +ISN00038, 9,20S_ISN ,47.85,-103.63, 2 +ISN00039, 9,30S_ISN ,47.68,-103.63, 2 +ISN00040, 9,40S_ISN ,47.51,-103.63, 2 +ISN00041, 9,50S_ISN ,47.35,-103.63, 2 +ISN00042, 9,20SSW_ISN ,47.87,-103.82, 2 +ISN00043, 9,30SSW_ISN ,47.72,-103.91, 2 +ISN00044, 9,40SSW_ISN ,47.56,-104.01, 2 +ISN00045, 9,50SSW_ISN ,47.41,-104.10, 2 +ISN00046, 9,60SSW_ISN ,47.26,-104.19, 2 +ISN00047, 9,70SSW_ISN ,47.10,-104.29, 2 +ISN00048, 9,20SW_ISN ,47.94,-103.98, 2 +ISN00049, 9,30SW_ISN ,47.83,-104.16, 2 +ISN00050, 9,40SW_ISN ,47.71,-104.33, 2 +ISN00051, 9,50SW_ISN ,47.59,-104.50, 2 +ISN00052, 9,60SW_ISN ,47.47,-104.68, 2 +ISN00053, 9,70SW_ISN ,47.35,-104.85, 2 +ISN00054, 9,80SW_ISN ,47.23,-105.02, 2 +ISN00055, 9,20WSW_ISN ,48.05,-104.09, 2 +ISN00056, 9,30WSW_ISN ,47.99,-104.32, 2 +ISN00057, 9,40WSW_ISN ,47.92,-104.55, 2 +ISN00058, 9,50WSW_ISN ,47.86,-104.78, 2 +ISN00059, 9,60WSW_ISN ,47.79,-105.00, 2 +ISN00060, 9,20W_ISN ,48.18,-104.13, 2 +ISN00061, 9,30W_ISN ,48.18,-104.38, 2 +ISN00062, 9,40W_ISN ,48.18,-104.63, 2 +ISN00063, 9,50W_ISN ,48.17,-104.88, 2 +ISN00064, 9,60W_ISN ,48.17,-105.13, 2 +ISN00065, 9,20WNW_ISN ,48.31,-104.09, 2 +ISN00066, 9,30WNW_ISN ,48.37,-104.32, 2 +ISN00067, 9,40WNW_ISN ,48.43,-104.56, 2 +ISN00068, 9,50WNW_ISN ,48.49,-104.79, 2 +ISN00069, 9,60WNW_ISN ,48.55,-105.02, 2 +ISN00070, 9,20NW_ISN ,48.41,-103.98, 2 +ISN00071, 9,30NW_ISN ,48.53,-104.16, 2 +ISN00072, 9,40NW_ISN ,48.65,-104.34, 2 +ISN00073, 9,50NW_ISN ,48.77,-104.52, 2 +ISN00074, 9,60NW_ISN ,48.88,-104.70, 2 +ISN00075, 9,70NW_ISN ,49.00,-104.89, 2 +ISN00076, 9,80NW_ISN ,49.11,-105.07, 2 +ISN00077, 9,20NNW_ISN ,48.49,-103.82, 2 +ISN00078, 9,30NNW_ISN ,48.64,-103.92, 2 +ISN00079, 9,40NNW_ISN ,48.79,-104.02, 2 +ISN00080, 9,70NNW_ISN ,49.26,-104.31, 2 +ISN00081, 9,80NNW_ISN ,49.41,-104.41, 2 +ISN00082, 9,90NNW_ISN ,49.56,-104.51, 2 +ISN00083, 9,100NNW_ISN ,49.71,-104.62, 2 MRF00000, 9,MRF ,30.30,-103.95, 1 MRF00001, 9,20N_MRF ,30.63,-103.95, 2 MRF00002, 9,30N_MRF ,30.80,-103.95, 2 @@ -13691,105 +13728,107 @@ MRF00037, 9,40S_MRF ,29.63,-103.95, 2 MRF00038, 9,50S_MRF ,29.47,-103.95, 2 MRF00039, 9,60S_MRF ,29.30,-103.95, 2 MRF00040, 9,70S_MRF ,29.13,-103.95, 2 -MRF00041, 9,120S_MRF ,28.30,-103.95, 2 -MRF00042, 9,130S_MRF ,28.13,-103.95, 2 -MRF00043, 9,140S_MRF ,27.97,-103.95, 2 -MRF00044, 9,150S_MRF ,27.80,-103.95, 2 -MRF00045, 9,160S_MRF ,27.64,-103.95, 2 -MRF00046, 9,170S_MRF ,27.47,-103.95, 2 -MRF00047, 9,180S_MRF ,27.30,-103.95, 2 -MRF00048, 9,190S_MRF ,27.14,-103.95, 2 -MRF00049, 9,200S_MRF ,26.97,-103.95, 2 -MRF00050, 9,210S_MRF ,26.80,-103.95, 2 -MRF00051, 9,220S_MRF ,26.64,-103.95, 2 -MRF00052, 9,230S_MRF ,26.47,-103.95, 2 -MRF00053, 9,240S_MRF ,26.30,-103.95, 2 -MRF00054, 9,250S_MRF ,26.14,-103.95, 2 -MRF00055, 9,20SSW_MRF ,29.99,-104.10, 2 -MRF00056, 9,30SSW_MRF ,29.84,-104.17, 2 -MRF00057, 9,40SSW_MRF ,29.68,-104.24, 2 -MRF00058, 9,50SSW_MRF ,29.53,-104.32, 2 -MRF00059, 9,60SSW_MRF ,29.38,-104.39, 2 -MRF00060, 9,70SSW_MRF ,29.22,-104.46, 2 -MRF00061, 9,80SSW_MRF ,29.07,-104.53, 2 -MRF00062, 9,90SSW_MRF ,28.91,-104.61, 2 -MRF00063, 9,100SSW_MRF ,28.76,-104.68, 2 -MRF00064, 9,110SSW_MRF ,28.60,-104.75, 2 -MRF00065, 9,120SSW_MRF ,28.45,-104.82, 2 -MRF00066, 9,130SSW_MRF ,28.30,-104.89, 2 -MRF00067, 9,140SSW_MRF ,28.14,-104.96, 2 -MRF00068, 9,150SSW_MRF ,27.99,-105.03, 2 -MRF00069, 9,160SSW_MRF ,27.83,-105.10, 2 -MRF00070, 9,170SSW_MRF ,27.68,-105.17, 2 -MRF00071, 9,180SSW_MRF ,27.52,-105.24, 2 -MRF00072, 9,190SSW_MRF ,27.37,-105.31, 2 -MRF00073, 9,200SSW_MRF ,27.21,-105.38, 2 -MRF00074, 9,210SSW_MRF ,27.06,-105.45, 2 -MRF00075, 9,220SSW_MRF ,26.91,-105.52, 2 -MRF00076, 9,230SSW_MRF ,26.75,-105.59, 2 -MRF00077, 9,240SSW_MRF ,26.60,-105.66, 2 -MRF00078, 9,20SW_MRF ,30.06,-104.22, 2 -MRF00079, 9,30SW_MRF ,29.95,-104.36, 2 -MRF00080, 9,40SW_MRF ,29.83,-104.49, 2 -MRF00081, 9,50SW_MRF ,29.71,-104.63, 2 -MRF00082, 9,60SW_MRF ,29.59,-104.76, 2 -MRF00083, 9,70SW_MRF ,29.47,-104.90, 2 -MRF00084, 9,80SW_MRF ,29.35,-105.03, 2 -MRF00085, 9,90SW_MRF ,29.23,-105.16, 2 -MRF00086, 9,100SW_MRF ,29.12,-105.30, 2 -MRF00087, 9,110SW_MRF ,29.00,-105.43, 2 -MRF00088, 9,120SW_MRF ,28.88,-105.56, 2 -MRF00089, 9,130SW_MRF ,28.76,-105.70, 2 -MRF00090, 9,140SW_MRF ,28.64,-105.83, 2 -MRF00091, 9,150SW_MRF ,28.52,-105.96, 2 -MRF00092, 9,160SW_MRF ,28.40,-106.09, 2 -MRF00093, 9,170SW_MRF ,28.28,-106.22, 2 -MRF00094, 9,180SW_MRF ,28.16,-106.35, 2 -MRF00095, 9,190SW_MRF ,28.04,-106.48, 2 -MRF00096, 9,200SW_MRF ,27.92,-106.62, 2 -MRF00097, 9,210SW_MRF ,27.80,-106.75, 2 -MRF00098, 9,220SW_MRF ,27.68,-106.87, 2 -MRF00099, 9,230SW_MRF ,27.56,-107.00, 2 -MRF00100, 9,240SW_MRF ,27.44,-107.13, 2 -MRF00101, 9,250SW_MRF ,27.31,-107.26, 2 -MRF00102, 9,20WSW_MRF ,30.17,-104.31, 2 -MRF00103, 9,30WSW_MRF ,30.11,-104.48, 2 -MRF00104, 9,40WSW_MRF ,30.04,-104.66, 2 -MRF00105, 9,50WSW_MRF ,29.98,-104.84, 2 -MRF00106, 9,60WSW_MRF ,29.91,-105.02, 2 -MRF00107, 9,70WSW_MRF ,29.85,-105.19, 2 -MRF00108, 9,80WSW_MRF ,29.78,-105.37, 2 -MRF00109, 9,90WSW_MRF ,29.72,-105.54, 2 -MRF00110, 9,100WSW_MRF ,29.65,-105.72, 2 -MRF00111, 9,110WSW_MRF ,29.58,-105.90, 2 -MRF00112, 9,120WSW_MRF ,29.52,-106.07, 2 -MRF00113, 9,130WSW_MRF ,29.45,-106.25, 2 -MRF00114, 9,140WSW_MRF ,29.38,-106.42, 2 -MRF00115, 9,20W_MRF ,30.30,-104.34, 2 -MRF00116, 9,30W_MRF ,30.30,-104.53, 2 -MRF00117, 9,40W_MRF ,30.30,-104.72, 2 -MRF00118, 9,50W_MRF ,30.30,-104.91, 2 -MRF00119, 9,60W_MRF ,30.29,-105.11, 2 -MRF00120, 9,70W_MRF ,30.29,-105.30, 2 -MRF00121, 9,80W_MRF ,30.29,-105.49, 2 -MRF00122, 9,90W_MRF ,30.29,-105.69, 2 -MRF00123, 9,20WNW_MRF ,30.43,-104.31, 2 -MRF00124, 9,30WNW_MRF ,30.49,-104.49, 2 -MRF00125, 9,40WNW_MRF ,30.55,-104.66, 2 -MRF00126, 9,50WNW_MRF ,30.62,-104.84, 2 -MRF00127, 9,60WNW_MRF ,30.68,-105.02, 2 -MRF00128, 9,70WNW_MRF ,30.74,-105.20, 2 -MRF00129, 9,20NW_MRF ,30.54,-104.22, 2 -MRF00130, 9,30NW_MRF ,30.65,-104.36, 2 -MRF00131, 9,40NW_MRF ,30.77,-104.50, 2 -MRF00132, 9,50NW_MRF ,30.89,-104.64, 2 -MRF00133, 9,60NW_MRF ,31.00,-104.77, 2 -MRF00134, 9,70NW_MRF ,31.12,-104.91, 2 -MRF00135, 9,20NNW_MRF ,30.61,-104.10, 2 -MRF00136, 9,30NNW_MRF ,30.76,-104.17, 2 -MRF00137, 9,40NNW_MRF ,30.92,-104.25, 2 -MRF00138, 9,50NNW_MRF ,31.07,-104.32, 2 -MRF00139, 9,60NNW_MRF ,31.22,-104.40, 2 +MRF00041, 9,80S_MRF ,28.97,-103.95, 2 +MRF00042, 9,110S_MRF ,28.47,-103.95, 2 +MRF00043, 9,120S_MRF ,28.30,-103.95, 2 +MRF00044, 9,130S_MRF ,28.13,-103.95, 2 +MRF00045, 9,140S_MRF ,27.97,-103.95, 2 +MRF00046, 9,150S_MRF ,27.80,-103.95, 2 +MRF00047, 9,160S_MRF ,27.64,-103.95, 2 +MRF00048, 9,170S_MRF ,27.47,-103.95, 2 +MRF00049, 9,180S_MRF ,27.30,-103.95, 2 +MRF00050, 9,190S_MRF ,27.14,-103.95, 2 +MRF00051, 9,200S_MRF ,26.97,-103.95, 2 +MRF00052, 9,210S_MRF ,26.80,-103.95, 2 +MRF00053, 9,220S_MRF ,26.64,-103.95, 2 +MRF00054, 9,230S_MRF ,26.47,-103.95, 2 +MRF00055, 9,240S_MRF ,26.30,-103.95, 2 +MRF00056, 9,250S_MRF ,26.14,-103.95, 2 +MRF00057, 9,20SSW_MRF ,29.99,-104.10, 2 +MRF00058, 9,30SSW_MRF ,29.84,-104.17, 2 +MRF00059, 9,40SSW_MRF ,29.68,-104.24, 2 +MRF00060, 9,50SSW_MRF ,29.53,-104.32, 2 +MRF00061, 9,60SSW_MRF ,29.38,-104.39, 2 +MRF00062, 9,70SSW_MRF ,29.22,-104.46, 2 +MRF00063, 9,80SSW_MRF ,29.07,-104.53, 2 +MRF00064, 9,90SSW_MRF ,28.91,-104.61, 2 +MRF00065, 9,100SSW_MRF ,28.76,-104.68, 2 +MRF00066, 9,110SSW_MRF ,28.60,-104.75, 2 +MRF00067, 9,120SSW_MRF ,28.45,-104.82, 2 +MRF00068, 9,130SSW_MRF ,28.30,-104.89, 2 +MRF00069, 9,140SSW_MRF ,28.14,-104.96, 2 +MRF00070, 9,150SSW_MRF ,27.99,-105.03, 2 +MRF00071, 9,160SSW_MRF ,27.83,-105.10, 2 +MRF00072, 9,170SSW_MRF ,27.68,-105.17, 2 +MRF00073, 9,180SSW_MRF ,27.52,-105.24, 2 +MRF00074, 9,190SSW_MRF ,27.37,-105.31, 2 +MRF00075, 9,200SSW_MRF ,27.21,-105.38, 2 +MRF00076, 9,210SSW_MRF ,27.06,-105.45, 2 +MRF00077, 9,220SSW_MRF ,26.91,-105.52, 2 +MRF00078, 9,230SSW_MRF ,26.75,-105.59, 2 +MRF00079, 9,240SSW_MRF ,26.60,-105.66, 2 +MRF00080, 9,20SW_MRF ,30.06,-104.22, 2 +MRF00081, 9,30SW_MRF ,29.95,-104.36, 2 +MRF00082, 9,40SW_MRF ,29.83,-104.49, 2 +MRF00083, 9,50SW_MRF ,29.71,-104.63, 2 +MRF00084, 9,60SW_MRF ,29.59,-104.76, 2 +MRF00085, 9,70SW_MRF ,29.47,-104.90, 2 +MRF00086, 9,80SW_MRF ,29.35,-105.03, 2 +MRF00087, 9,90SW_MRF ,29.23,-105.16, 2 +MRF00088, 9,100SW_MRF ,29.12,-105.30, 2 +MRF00089, 9,110SW_MRF ,29.00,-105.43, 2 +MRF00090, 9,120SW_MRF ,28.88,-105.56, 2 +MRF00091, 9,130SW_MRF ,28.76,-105.70, 2 +MRF00092, 9,140SW_MRF ,28.64,-105.83, 2 +MRF00093, 9,150SW_MRF ,28.52,-105.96, 2 +MRF00094, 9,160SW_MRF ,28.40,-106.09, 2 +MRF00095, 9,170SW_MRF ,28.28,-106.22, 2 +MRF00096, 9,180SW_MRF ,28.16,-106.35, 2 +MRF00097, 9,190SW_MRF ,28.04,-106.48, 2 +MRF00098, 9,200SW_MRF ,27.92,-106.62, 2 +MRF00099, 9,210SW_MRF ,27.80,-106.75, 2 +MRF00100, 9,220SW_MRF ,27.68,-106.87, 2 +MRF00101, 9,230SW_MRF ,27.56,-107.00, 2 +MRF00102, 9,240SW_MRF ,27.44,-107.13, 2 +MRF00103, 9,250SW_MRF ,27.31,-107.26, 2 +MRF00104, 9,20WSW_MRF ,30.17,-104.31, 2 +MRF00105, 9,30WSW_MRF ,30.11,-104.48, 2 +MRF00106, 9,40WSW_MRF ,30.04,-104.66, 2 +MRF00107, 9,50WSW_MRF ,29.98,-104.84, 2 +MRF00108, 9,60WSW_MRF ,29.91,-105.02, 2 +MRF00109, 9,70WSW_MRF ,29.85,-105.19, 2 +MRF00110, 9,80WSW_MRF ,29.78,-105.37, 2 +MRF00111, 9,90WSW_MRF ,29.72,-105.54, 2 +MRF00112, 9,100WSW_MRF ,29.65,-105.72, 2 +MRF00113, 9,110WSW_MRF ,29.58,-105.90, 2 +MRF00114, 9,120WSW_MRF ,29.52,-106.07, 2 +MRF00115, 9,130WSW_MRF ,29.45,-106.25, 2 +MRF00116, 9,140WSW_MRF ,29.38,-106.42, 2 +MRF00117, 9,20W_MRF ,30.30,-104.34, 2 +MRF00118, 9,30W_MRF ,30.30,-104.53, 2 +MRF00119, 9,40W_MRF ,30.30,-104.72, 2 +MRF00120, 9,50W_MRF ,30.30,-104.91, 2 +MRF00121, 9,60W_MRF ,30.29,-105.11, 2 +MRF00122, 9,70W_MRF ,30.29,-105.30, 2 +MRF00123, 9,80W_MRF ,30.29,-105.49, 2 +MRF00124, 9,90W_MRF ,30.29,-105.69, 2 +MRF00125, 9,20WNW_MRF ,30.43,-104.31, 2 +MRF00126, 9,30WNW_MRF ,30.49,-104.49, 2 +MRF00127, 9,40WNW_MRF ,30.55,-104.66, 2 +MRF00128, 9,50WNW_MRF ,30.62,-104.84, 2 +MRF00129, 9,60WNW_MRF ,30.68,-105.02, 2 +MRF00130, 9,70WNW_MRF ,30.74,-105.20, 2 +MRF00131, 9,20NW_MRF ,30.54,-104.22, 2 +MRF00132, 9,30NW_MRF ,30.65,-104.36, 2 +MRF00133, 9,40NW_MRF ,30.77,-104.50, 2 +MRF00134, 9,50NW_MRF ,30.89,-104.64, 2 +MRF00135, 9,60NW_MRF ,31.00,-104.77, 2 +MRF00136, 9,70NW_MRF ,31.12,-104.91, 2 +MRF00137, 9,20NNW_MRF ,30.61,-104.10, 2 +MRF00138, 9,30NNW_MRF ,30.76,-104.17, 2 +MRF00139, 9,40NNW_MRF ,30.92,-104.25, 2 +MRF00140, 9,50NNW_MRF ,31.07,-104.32, 2 +MRF00141, 9,60NNW_MRF ,31.22,-104.40, 2 PUB00000, 9,PUB ,38.29,-104.43, 1 PUB00001, 9,20N_PUB ,38.62,-104.43, 2 PUB00002, 9,30N_PUB ,38.79,-104.43, 2 @@ -13847,88 +13886,88 @@ PUB00053, 9,40NW_PUB ,38.76,-105.03, 2 PUB00054, 9,20NNW_PUB ,38.60,-104.59, 2 PUB00055, 9,30NNW_PUB ,38.75,-104.68, 2 PUB00056, 9,40NNW_PUB ,38.91,-104.76, 2 -ROW00000, 9,ROW ,33.34,-104.62, 1 -ROW00001, 9,20N_ROW ,33.67,-104.62, 2 -ROW00002, 9,30N_ROW ,33.84,-104.62, 2 -ROW00003, 9,40N_ROW ,34.01,-104.62, 2 -ROW00004, 9,50N_ROW ,34.17,-104.62, 2 -ROW00005, 9,20NNE_ROW ,33.65,-104.47, 2 -ROW00006, 9,30NNE_ROW ,33.80,-104.39, 2 -ROW00007, 9,40NNE_ROW ,33.96,-104.31, 2 -ROW00008, 9,50NNE_ROW ,34.11,-104.24, 2 -ROW00009, 9,20NE_ROW ,33.58,-104.34, 2 -ROW00010, 9,30NE_ROW ,33.69,-104.20, 2 -ROW00011, 9,40NE_ROW ,33.81,-104.05, 2 -ROW00012, 9,50NE_ROW ,33.93,-103.91, 2 -ROW00013, 9,20ENE_ROW ,33.47,-104.25, 2 -ROW00014, 9,30ENE_ROW ,33.53,-104.07, 2 -ROW00015, 9,40ENE_ROW ,33.59,-103.88, 2 -ROW00016, 9,50ENE_ROW ,33.66,-103.70, 2 -ROW00017, 9,20E_ROW ,33.34,-104.22, 2 -ROW00018, 9,30E_ROW ,33.34,-104.02, 2 -ROW00019, 9,40E_ROW ,33.34,-103.82, 2 -ROW00020, 9,50E_ROW ,33.34,-103.62, 2 -ROW00021, 9,60E_ROW ,33.33,-103.42, 2 -ROW00022, 9,20ESE_ROW ,33.21,-104.25, 2 -ROW00023, 9,30ESE_ROW ,33.15,-104.07, 2 -ROW00024, 9,40ESE_ROW ,33.08,-103.89, 2 -ROW00025, 9,50ESE_ROW ,33.02,-103.70, 2 -ROW00026, 9,60ESE_ROW ,32.95,-103.52, 2 -ROW00027, 9,70ESE_ROW ,32.89,-103.34, 2 -ROW00028, 9,20SE_ROW ,33.10,-104.34, 2 -ROW00029, 9,30SE_ROW ,32.99,-104.20, 2 -ROW00030, 9,40SE_ROW ,32.87,-104.06, 2 -ROW00031, 9,50SE_ROW ,32.75,-103.92, 2 -ROW00032, 9,60SE_ROW ,32.63,-103.78, 2 -ROW00033, 9,20SSE_ROW ,33.03,-104.47, 2 -ROW00034, 9,30SSE_ROW ,32.88,-104.39, 2 -ROW00035, 9,40SSE_ROW ,32.72,-104.32, 2 -ROW00036, 9,50SSE_ROW ,32.57,-104.24, 2 -ROW00037, 9,60SSE_ROW ,32.42,-104.17, 2 -ROW00038, 9,20S_ROW ,33.01,-104.62, 2 -ROW00039, 9,30S_ROW ,32.84,-104.62, 2 -ROW00040, 9,40S_ROW ,32.67,-104.62, 2 -ROW00041, 9,50S_ROW ,32.51,-104.62, 2 -ROW00042, 9,60S_ROW ,32.34,-104.62, 2 -ROW00043, 9,70S_ROW ,32.17,-104.62, 2 -ROW00044, 9,20SSW_ROW ,33.03,-104.77, 2 -ROW00045, 9,30SSW_ROW ,32.88,-104.85, 2 -ROW00046, 9,40SSW_ROW ,32.72,-104.92, 2 -ROW00047, 9,50SSW_ROW ,32.57,-105.00, 2 -ROW00048, 9,60SSW_ROW ,32.42,-105.07, 2 -ROW00049, 9,70SSW_ROW ,32.26,-105.15, 2 -ROW00050, 9,20SW_ROW ,33.10,-104.90, 2 -ROW00051, 9,30SW_ROW ,32.99,-105.04, 2 -ROW00052, 9,40SW_ROW ,32.87,-105.18, 2 -ROW00053, 9,50SW_ROW ,32.75,-105.32, 2 -ROW00054, 9,60SW_ROW ,32.63,-105.46, 2 -ROW00055, 9,20WSW_ROW ,33.21,-104.99, 2 -ROW00056, 9,30WSW_ROW ,33.15,-105.17, 2 -ROW00057, 9,40WSW_ROW ,33.08,-105.35, 2 -ROW00058, 9,50WSW_ROW ,33.02,-105.54, 2 -ROW00059, 9,60WSW_ROW ,32.95,-105.72, 2 -ROW00060, 9,70WSW_ROW ,32.89,-105.90, 2 -ROW00061, 9,20W_ROW ,33.34,-105.02, 2 -ROW00062, 9,30W_ROW ,33.34,-105.22, 2 -ROW00063, 9,40W_ROW ,33.34,-105.42, 2 -ROW00064, 9,50W_ROW ,33.34,-105.62, 2 -ROW00065, 9,60W_ROW ,33.33,-105.82, 2 -ROW00066, 9,20WNW_ROW ,33.47,-104.99, 2 -ROW00067, 9,30WNW_ROW ,33.53,-105.17, 2 -ROW00068, 9,40WNW_ROW ,33.59,-105.36, 2 -ROW00069, 9,50WNW_ROW ,33.66,-105.54, 2 -ROW00070, 9,60WNW_ROW ,33.72,-105.73, 2 -ROW00071, 9,70WNW_ROW ,33.78,-105.92, 2 -ROW00072, 9,20NW_ROW ,33.58,-104.90, 2 -ROW00073, 9,30NW_ROW ,33.69,-105.04, 2 -ROW00074, 9,40NW_ROW ,33.81,-105.19, 2 -ROW00075, 9,50NW_ROW ,33.93,-105.33, 2 -ROW00076, 9,60NW_ROW ,34.04,-105.47, 2 -ROW00077, 9,20NNW_ROW ,33.65,-104.77, 2 -ROW00078, 9,30NNW_ROW ,33.80,-104.85, 2 -ROW00079, 9,40NNW_ROW ,33.96,-104.93, 2 -ROW00080, 9,50NNW_ROW ,34.11,-105.00, 2 -ROW00081, 9,60NNW_ROW ,34.26,-105.08, 2 +CME00000, 9,CME ,33.34,-104.62, 1 +CME00001, 9,20N_CME ,33.67,-104.62, 2 +CME00002, 9,30N_CME ,33.84,-104.62, 2 +CME00003, 9,40N_CME ,34.01,-104.62, 2 +CME00004, 9,50N_CME ,34.17,-104.62, 2 +CME00005, 9,20NNE_CME ,33.65,-104.47, 2 +CME00006, 9,30NNE_CME ,33.80,-104.39, 2 +CME00007, 9,40NNE_CME ,33.96,-104.31, 2 +CME00008, 9,50NNE_CME ,34.11,-104.24, 2 +CME00009, 9,20NE_CME ,33.58,-104.34, 2 +CME00010, 9,30NE_CME ,33.69,-104.20, 2 +CME00011, 9,40NE_CME ,33.81,-104.05, 2 +CME00012, 9,50NE_CME ,33.93,-103.91, 2 +CME00013, 9,20ENE_CME ,33.47,-104.25, 2 +CME00014, 9,30ENE_CME ,33.53,-104.07, 2 +CME00015, 9,40ENE_CME ,33.59,-103.88, 2 +CME00016, 9,50ENE_CME ,33.66,-103.70, 2 +CME00017, 9,20E_CME ,33.34,-104.22, 2 +CME00018, 9,30E_CME ,33.34,-104.02, 2 +CME00019, 9,40E_CME ,33.34,-103.82, 2 +CME00020, 9,50E_CME ,33.34,-103.62, 2 +CME00021, 9,60E_CME ,33.33,-103.42, 2 +CME00022, 9,20ESE_CME ,33.21,-104.25, 2 +CME00023, 9,30ESE_CME ,33.15,-104.07, 2 +CME00024, 9,40ESE_CME ,33.08,-103.89, 2 +CME00025, 9,50ESE_CME ,33.02,-103.70, 2 +CME00026, 9,60ESE_CME ,32.95,-103.52, 2 +CME00027, 9,70ESE_CME ,32.89,-103.34, 2 +CME00028, 9,20SE_CME ,33.10,-104.34, 2 +CME00029, 9,30SE_CME ,32.99,-104.20, 2 +CME00030, 9,40SE_CME ,32.87,-104.06, 2 +CME00031, 9,50SE_CME ,32.75,-103.92, 2 +CME00032, 9,60SE_CME ,32.63,-103.78, 2 +CME00033, 9,20SSE_CME ,33.03,-104.47, 2 +CME00034, 9,30SSE_CME ,32.88,-104.39, 2 +CME00035, 9,40SSE_CME ,32.72,-104.32, 2 +CME00036, 9,50SSE_CME ,32.57,-104.24, 2 +CME00037, 9,60SSE_CME ,32.42,-104.17, 2 +CME00038, 9,20S_CME ,33.01,-104.62, 2 +CME00039, 9,30S_CME ,32.84,-104.62, 2 +CME00040, 9,40S_CME ,32.67,-104.62, 2 +CME00041, 9,50S_CME ,32.51,-104.62, 2 +CME00042, 9,60S_CME ,32.34,-104.62, 2 +CME00043, 9,70S_CME ,32.17,-104.62, 2 +CME00044, 9,20SSW_CME ,33.03,-104.77, 2 +CME00045, 9,30SSW_CME ,32.88,-104.85, 2 +CME00046, 9,40SSW_CME ,32.72,-104.92, 2 +CME00047, 9,50SSW_CME ,32.57,-105.00, 2 +CME00048, 9,60SSW_CME ,32.42,-105.07, 2 +CME00049, 9,70SSW_CME ,32.26,-105.15, 2 +CME00050, 9,20SW_CME ,33.10,-104.90, 2 +CME00051, 9,30SW_CME ,32.99,-105.04, 2 +CME00052, 9,40SW_CME ,32.87,-105.18, 2 +CME00053, 9,50SW_CME ,32.75,-105.32, 2 +CME00054, 9,60SW_CME ,32.63,-105.46, 2 +CME00055, 9,20WSW_CME ,33.21,-104.99, 2 +CME00056, 9,30WSW_CME ,33.15,-105.17, 2 +CME00057, 9,40WSW_CME ,33.08,-105.35, 2 +CME00058, 9,50WSW_CME ,33.02,-105.54, 2 +CME00059, 9,60WSW_CME ,32.95,-105.72, 2 +CME00060, 9,70WSW_CME ,32.89,-105.90, 2 +CME00061, 9,20W_CME ,33.34,-105.02, 2 +CME00062, 9,30W_CME ,33.34,-105.22, 2 +CME00063, 9,40W_CME ,33.34,-105.42, 2 +CME00064, 9,50W_CME ,33.34,-105.62, 2 +CME00065, 9,60W_CME ,33.33,-105.82, 2 +CME00066, 9,20WNW_CME ,33.47,-104.99, 2 +CME00067, 9,30WNW_CME ,33.53,-105.17, 2 +CME00068, 9,40WNW_CME ,33.59,-105.36, 2 +CME00069, 9,50WNW_CME ,33.66,-105.54, 2 +CME00070, 9,60WNW_CME ,33.72,-105.73, 2 +CME00071, 9,70WNW_CME ,33.78,-105.92, 2 +CME00072, 9,20NW_CME ,33.58,-104.90, 2 +CME00073, 9,30NW_CME ,33.69,-105.04, 2 +CME00074, 9,40NW_CME ,33.81,-105.19, 2 +CME00075, 9,50NW_CME ,33.93,-105.33, 2 +CME00076, 9,60NW_CME ,34.04,-105.47, 2 +CME00077, 9,20NNW_CME ,33.65,-104.77, 2 +CME00078, 9,30NNW_CME ,33.80,-104.85, 2 +CME00079, 9,40NNW_CME ,33.96,-104.93, 2 +CME00080, 9,50NNW_CME ,34.11,-105.00, 2 +CME00081, 9,60NNW_CME ,34.26,-105.08, 2 DEN00000, 9,DEN ,39.81,-104.66, 1 DEN00001, 9,20N_DEN ,40.14,-104.66, 2 DEN00002, 9,30N_DEN ,40.31,-104.66, 2 @@ -13992,24 +14031,31 @@ CYS00005, 9,30NNE_CYS ,41.67,-104.51, 2 CYS00006, 9,20NE_CYS ,41.45,-104.46, 2 CYS00007, 9,20ENE_CYS ,41.34,-104.36, 2 CYS00008, 9,20E_CYS ,41.21,-104.33, 2 -CYS00009, 9,20SE_CYS ,40.97,-104.46, 2 -CYS00010, 9,20SSE_CYS ,40.90,-104.60, 2 -CYS00011, 9,30SSE_CYS ,40.75,-104.52, 2 -CYS00012, 9,40SSE_CYS ,40.59,-104.43, 2 -CYS00013, 9,50SSE_CYS ,40.44,-104.35, 2 -CYS00014, 9,20S_CYS ,40.88,-104.77, 2 -CYS00015, 9,30S_CYS ,40.71,-104.77, 2 -CYS00016, 9,40S_CYS ,40.54,-104.77, 2 -CYS00017, 9,20SSW_CYS ,40.90,-104.94, 2 -CYS00018, 9,30SSW_CYS ,40.75,-105.02, 2 -CYS00019, 9,40SSW_CYS ,40.59,-105.11, 2 -CYS00020, 9,50SSW_CYS ,40.44,-105.19, 2 -CYS00021, 9,20SW_CYS ,40.97,-105.08, 2 -CYS00022, 9,30SW_CYS ,40.86,-105.24, 2 -CYS00023, 9,20WSW_CYS ,41.08,-105.18, 2 -CYS00024, 9,20NW_CYS ,41.45,-105.08, 2 -CYS00025, 9,20NNW_CYS ,41.52,-104.94, 2 -CYS00026, 9,30NNW_CYS ,41.67,-105.03, 2 +CYS00009, 9,30E_CYS ,41.21,-104.11, 2 +CYS00010, 9,20ESE_CYS ,41.08,-104.36, 2 +CYS00011, 9,30ESE_CYS ,41.02,-104.16, 2 +CYS00012, 9,40ESE_CYS ,40.95,-103.96, 2 +CYS00013, 9,20SE_CYS ,40.97,-104.46, 2 +CYS00014, 9,30SE_CYS ,40.86,-104.30, 2 +CYS00015, 9,40SE_CYS ,40.74,-104.15, 2 +CYS00016, 9,50SE_CYS ,40.62,-103.99, 2 +CYS00017, 9,20SSE_CYS ,40.90,-104.60, 2 +CYS00018, 9,30SSE_CYS ,40.75,-104.52, 2 +CYS00019, 9,40SSE_CYS ,40.59,-104.43, 2 +CYS00020, 9,50SSE_CYS ,40.44,-104.35, 2 +CYS00021, 9,20S_CYS ,40.88,-104.77, 2 +CYS00022, 9,30S_CYS ,40.71,-104.77, 2 +CYS00023, 9,40S_CYS ,40.54,-104.77, 2 +CYS00024, 9,20SSW_CYS ,40.90,-104.94, 2 +CYS00025, 9,30SSW_CYS ,40.75,-105.02, 2 +CYS00026, 9,40SSW_CYS ,40.59,-105.11, 2 +CYS00027, 9,50SSW_CYS ,40.44,-105.19, 2 +CYS00028, 9,20SW_CYS ,40.97,-105.08, 2 +CYS00029, 9,30SW_CYS ,40.86,-105.24, 2 +CYS00030, 9,20WSW_CYS ,41.08,-105.18, 2 +CYS00031, 9,20NW_CYS ,41.45,-105.08, 2 +CYS00032, 9,20NNW_CYS ,41.52,-104.94, 2 +CYS00033, 9,30NNW_CYS ,41.67,-105.03, 2 CIM00000, 9,CIM ,36.49,-104.87, 1 CIM00001, 9,20N_CIM ,36.82,-104.87, 2 CIM00002, 9,30N_CIM ,36.99,-104.87, 2 @@ -14051,56 +14097,56 @@ CIM00037, 9,20WNW_CIM ,36.62,-105.25, 2 CIM00038, 9,30WNW_CIM ,36.68,-105.45, 2 CIM00039, 9,20NW_CIM ,36.73,-105.16, 2 CIM00040, 9,20NNW_CIM ,36.80,-105.03, 2 -LVS00000, 9,LVS ,35.66,-105.14, 1 -LVS00001, 9,20N_LVS ,35.99,-105.14, 2 -LVS00002, 9,20NE_LVS ,35.90,-104.85, 2 -LVS00003, 9,20ENE_LVS ,35.79,-104.76, 2 -LVS00004, 9,30ENE_LVS ,35.85,-104.57, 2 -LVS00005, 9,20E_LVS ,35.66,-104.73, 2 -LVS00006, 9,30E_LVS ,35.66,-104.53, 2 -LVS00007, 9,40E_LVS ,35.66,-104.32, 2 -LVS00008, 9,20ESE_LVS ,35.53,-104.76, 2 -LVS00009, 9,30ESE_LVS ,35.47,-104.57, 2 -LVS00010, 9,40ESE_LVS ,35.40,-104.38, 2 -LVS00011, 9,20SE_LVS ,35.42,-104.85, 2 -LVS00012, 9,30SE_LVS ,35.31,-104.71, 2 -LVS00013, 9,40SE_LVS ,35.19,-104.56, 2 -LVS00014, 9,20SSE_LVS ,35.35,-104.98, 2 -LVS00015, 9,30SSE_LVS ,35.20,-104.91, 2 -LVS00016, 9,40SSE_LVS ,35.04,-104.83, 2 -LVS00017, 9,50SSE_LVS ,34.89,-104.75, 2 -LVS00018, 9,60SSE_LVS ,34.74,-104.67, 2 -LVS00019, 9,20S_LVS ,35.33,-105.14, 2 -LVS00020, 9,30S_LVS ,35.16,-105.14, 2 -LVS00021, 9,40S_LVS ,34.99,-105.14, 2 -LVS00022, 9,50S_LVS ,34.83,-105.14, 2 -LVS00023, 9,60S_LVS ,34.66,-105.14, 2 -LVS00024, 9,70S_LVS ,34.49,-105.14, 2 -LVS00025, 9,20SSW_LVS ,35.35,-105.30, 2 -LVS00026, 9,30SSW_LVS ,35.20,-105.37, 2 -LVS00027, 9,40SSW_LVS ,35.04,-105.45, 2 -LVS00028, 9,50SSW_LVS ,34.89,-105.53, 2 -LVS00029, 9,60SSW_LVS ,34.74,-105.61, 2 -LVS00030, 9,20SW_LVS ,35.42,-105.43, 2 -LVS00031, 9,30SW_LVS ,35.31,-105.57, 2 -LVS00032, 9,40SW_LVS ,35.19,-105.72, 2 -LVS00033, 9,50SW_LVS ,35.07,-105.86, 2 -LVS00034, 9,20WSW_LVS ,35.53,-105.52, 2 -LVS00035, 9,30WSW_LVS ,35.47,-105.71, 2 -LVS00036, 9,40WSW_LVS ,35.40,-105.90, 2 -LVS00037, 9,20W_LVS ,35.66,-105.55, 2 -LVS00038, 9,30W_LVS ,35.66,-105.75, 2 -LVS00039, 9,40W_LVS ,35.66,-105.96, 2 -LVS00040, 9,50W_LVS ,35.66,-106.16, 2 -LVS00041, 9,20WNW_LVS ,35.79,-105.52, 2 -LVS00042, 9,30WNW_LVS ,35.85,-105.71, 2 -LVS00043, 9,40WNW_LVS ,35.91,-105.90, 2 -LVS00044, 9,50WNW_LVS ,35.97,-106.09, 2 -LVS00045, 9,60WNW_LVS ,36.04,-106.28, 2 -LVS00046, 9,70WNW_LVS ,36.10,-106.47, 2 -LVS00047, 9,20NW_LVS ,35.90,-105.43, 2 -LVS00048, 9,30NW_LVS ,36.01,-105.58, 2 -LVS00049, 9,20NNW_LVS ,35.97,-105.30, 2 +FTI00000, 9,FTI ,35.66,-105.14, 1 +FTI00001, 9,20N_FTI ,35.99,-105.14, 2 +FTI00002, 9,20NE_FTI ,35.90,-104.85, 2 +FTI00003, 9,20ENE_FTI ,35.79,-104.76, 2 +FTI00004, 9,30ENE_FTI ,35.85,-104.57, 2 +FTI00005, 9,20E_FTI ,35.66,-104.73, 2 +FTI00006, 9,30E_FTI ,35.66,-104.53, 2 +FTI00007, 9,40E_FTI ,35.66,-104.32, 2 +FTI00008, 9,20ESE_FTI ,35.53,-104.76, 2 +FTI00009, 9,30ESE_FTI ,35.47,-104.57, 2 +FTI00010, 9,40ESE_FTI ,35.40,-104.38, 2 +FTI00011, 9,20SE_FTI ,35.42,-104.85, 2 +FTI00012, 9,30SE_FTI ,35.31,-104.71, 2 +FTI00013, 9,40SE_FTI ,35.19,-104.56, 2 +FTI00014, 9,20SSE_FTI ,35.35,-104.98, 2 +FTI00015, 9,30SSE_FTI ,35.20,-104.91, 2 +FTI00016, 9,40SSE_FTI ,35.04,-104.83, 2 +FTI00017, 9,50SSE_FTI ,34.89,-104.75, 2 +FTI00018, 9,60SSE_FTI ,34.74,-104.67, 2 +FTI00019, 9,20S_FTI ,35.33,-105.14, 2 +FTI00020, 9,30S_FTI ,35.16,-105.14, 2 +FTI00021, 9,40S_FTI ,34.99,-105.14, 2 +FTI00022, 9,50S_FTI ,34.83,-105.14, 2 +FTI00023, 9,60S_FTI ,34.66,-105.14, 2 +FTI00024, 9,70S_FTI ,34.49,-105.14, 2 +FTI00025, 9,20SSW_FTI ,35.35,-105.30, 2 +FTI00026, 9,30SSW_FTI ,35.20,-105.37, 2 +FTI00027, 9,40SSW_FTI ,35.04,-105.45, 2 +FTI00028, 9,50SSW_FTI ,34.89,-105.53, 2 +FTI00029, 9,60SSW_FTI ,34.74,-105.61, 2 +FTI00030, 9,20SW_FTI ,35.42,-105.43, 2 +FTI00031, 9,30SW_FTI ,35.31,-105.57, 2 +FTI00032, 9,40SW_FTI ,35.19,-105.72, 2 +FTI00033, 9,50SW_FTI ,35.07,-105.86, 2 +FTI00034, 9,20WSW_FTI ,35.53,-105.52, 2 +FTI00035, 9,30WSW_FTI ,35.47,-105.71, 2 +FTI00036, 9,40WSW_FTI ,35.40,-105.90, 2 +FTI00037, 9,20W_FTI ,35.66,-105.55, 2 +FTI00038, 9,30W_FTI ,35.66,-105.75, 2 +FTI00039, 9,40W_FTI ,35.66,-105.96, 2 +FTI00040, 9,50W_FTI ,35.66,-106.16, 2 +FTI00041, 9,20WNW_FTI ,35.79,-105.52, 2 +FTI00042, 9,30WNW_FTI ,35.85,-105.71, 2 +FTI00043, 9,40WNW_FTI ,35.91,-105.90, 2 +FTI00044, 9,50WNW_FTI ,35.97,-106.09, 2 +FTI00045, 9,60WNW_FTI ,36.04,-106.28, 2 +FTI00046, 9,70WNW_FTI ,36.10,-106.47, 2 +FTI00047, 9,20NW_FTI ,35.90,-105.43, 2 +FTI00048, 9,30NW_FTI ,36.01,-105.58, 2 +FTI00049, 9,20NNW_FTI ,35.97,-105.30, 2 LAR00000, 9,LAR ,41.33,-105.72, 1 LAR00001, 9,20N_LAR ,41.66,-105.72, 2 LAR00002, 9,30N_LAR ,41.83,-105.72, 2 @@ -15151,77 +15197,77 @@ YYN00152, 9,200NNW_YYN ,53.34,-109.81, 2 YYN00153, 9,210NNW_YYN ,53.49,-109.93, 2 YYN00154, 9,220NNW_YYN ,53.64,-110.04, 2 YYN00155, 9,230NNW_YYN ,53.79,-110.16, 2 -FMN00000, 9,FMN ,36.75,-108.10, 1 -FMN00001, 9,20N_FMN ,37.08,-108.10, 2 -FMN00002, 9,30N_FMN ,37.25,-108.10, 2 -FMN00003, 9,20NNE_FMN ,37.06,-107.94, 2 -FMN00004, 9,30NNE_FMN ,37.21,-107.86, 2 -FMN00005, 9,40NNE_FMN ,37.37,-107.78, 2 -FMN00006, 9,20NE_FMN ,36.99,-107.81, 2 -FMN00007, 9,30NE_FMN ,37.10,-107.66, 2 -FMN00008, 9,40NE_FMN ,37.22,-107.51, 2 -FMN00009, 9,50NE_FMN ,37.34,-107.36, 2 -FMN00010, 9,20ENE_FMN ,36.88,-107.72, 2 -FMN00011, 9,30ENE_FMN ,36.94,-107.52, 2 -FMN00012, 9,40ENE_FMN ,37.00,-107.33, 2 -FMN00013, 9,50ENE_FMN ,37.06,-107.14, 2 -FMN00014, 9,20E_FMN ,36.75,-107.68, 2 -FMN00015, 9,30E_FMN ,36.75,-107.48, 2 -FMN00016, 9,40E_FMN ,36.75,-107.27, 2 -FMN00017, 9,50E_FMN ,36.75,-107.06, 2 -FMN00018, 9,20ESE_FMN ,36.62,-107.72, 2 -FMN00019, 9,30ESE_FMN ,36.56,-107.53, 2 -FMN00020, 9,40ESE_FMN ,36.49,-107.33, 2 -FMN00021, 9,50ESE_FMN ,36.43,-107.14, 2 -FMN00022, 9,60ESE_FMN ,36.36,-106.95, 2 -FMN00023, 9,70ESE_FMN ,36.30,-106.76, 2 -FMN00024, 9,20SE_FMN ,36.51,-107.81, 2 -FMN00025, 9,30SE_FMN ,36.40,-107.66, 2 -FMN00026, 9,40SE_FMN ,36.28,-107.52, 2 -FMN00027, 9,50SE_FMN ,36.16,-107.37, 2 -FMN00028, 9,60SE_FMN ,36.04,-107.23, 2 -FMN00029, 9,20SSE_FMN ,36.44,-107.94, 2 -FMN00030, 9,30SSE_FMN ,36.29,-107.86, 2 -FMN00031, 9,40SSE_FMN ,36.13,-107.78, 2 -FMN00032, 9,50SSE_FMN ,35.98,-107.71, 2 -FMN00033, 9,60SSE_FMN ,35.83,-107.63, 2 -FMN00034, 9,20S_FMN ,36.42,-108.10, 2 -FMN00035, 9,30S_FMN ,36.25,-108.10, 2 -FMN00036, 9,40S_FMN ,36.08,-108.10, 2 -FMN00037, 9,50S_FMN ,35.92,-108.10, 2 -FMN00038, 9,60S_FMN ,35.75,-108.10, 2 -FMN00039, 9,70S_FMN ,35.58,-108.10, 2 -FMN00040, 9,20SSW_FMN ,36.44,-108.26, 2 -FMN00041, 9,30SSW_FMN ,36.29,-108.34, 2 -FMN00042, 9,40SSW_FMN ,36.13,-108.42, 2 -FMN00043, 9,50SSW_FMN ,35.98,-108.49, 2 -FMN00044, 9,60SSW_FMN ,35.83,-108.57, 2 -FMN00045, 9,70SSW_FMN ,35.67,-108.65, 2 -FMN00046, 9,80SSW_FMN ,35.52,-108.73, 2 -FMN00047, 9,20SW_FMN ,36.51,-108.39, 2 -FMN00048, 9,30SW_FMN ,36.40,-108.54, 2 -FMN00049, 9,40SW_FMN ,36.28,-108.68, 2 -FMN00050, 9,50SW_FMN ,36.16,-108.83, 2 -FMN00051, 9,60SW_FMN ,36.04,-108.97, 2 -FMN00052, 9,70SW_FMN ,35.92,-109.12, 2 -FMN00053, 9,80SW_FMN ,35.80,-109.26, 2 -FMN00054, 9,20WSW_FMN ,36.62,-108.48, 2 -FMN00055, 9,30WSW_FMN ,36.56,-108.67, 2 -FMN00056, 9,40WSW_FMN ,36.49,-108.87, 2 -FMN00057, 9,50WSW_FMN ,36.43,-109.06, 2 -FMN00058, 9,60WSW_FMN ,36.36,-109.25, 2 -FMN00059, 9,70WSW_FMN ,36.30,-109.44, 2 -FMN00060, 9,80WSW_FMN ,36.23,-109.63, 2 -FMN00061, 9,20W_FMN ,36.75,-108.52, 2 -FMN00062, 9,30W_FMN ,36.75,-108.72, 2 -FMN00063, 9,40W_FMN ,36.75,-108.93, 2 -FMN00064, 9,50W_FMN ,36.75,-109.14, 2 -FMN00065, 9,20WNW_FMN ,36.88,-108.48, 2 -FMN00066, 9,30WNW_FMN ,36.94,-108.68, 2 -FMN00067, 9,20NW_FMN ,36.99,-108.39, 2 -FMN00068, 9,30NW_FMN ,37.10,-108.54, 2 -FMN00069, 9,20NNW_FMN ,37.06,-108.26, 2 -FMN00070, 9,30NNW_FMN ,37.21,-108.34, 2 +RSK00000, 9,RSK ,36.75,-108.10, 1 +RSK00001, 9,20N_RSK ,37.08,-108.10, 2 +RSK00002, 9,30N_RSK ,37.25,-108.10, 2 +RSK00003, 9,20NNE_RSK ,37.06,-107.94, 2 +RSK00004, 9,30NNE_RSK ,37.21,-107.86, 2 +RSK00005, 9,40NNE_RSK ,37.37,-107.78, 2 +RSK00006, 9,20NE_RSK ,36.99,-107.81, 2 +RSK00007, 9,30NE_RSK ,37.10,-107.66, 2 +RSK00008, 9,40NE_RSK ,37.22,-107.51, 2 +RSK00009, 9,50NE_RSK ,37.34,-107.36, 2 +RSK00010, 9,20ENE_RSK ,36.88,-107.72, 2 +RSK00011, 9,30ENE_RSK ,36.94,-107.52, 2 +RSK00012, 9,40ENE_RSK ,37.00,-107.33, 2 +RSK00013, 9,50ENE_RSK ,37.06,-107.14, 2 +RSK00014, 9,20E_RSK ,36.75,-107.68, 2 +RSK00015, 9,30E_RSK ,36.75,-107.48, 2 +RSK00016, 9,40E_RSK ,36.75,-107.27, 2 +RSK00017, 9,50E_RSK ,36.75,-107.06, 2 +RSK00018, 9,20ESE_RSK ,36.62,-107.72, 2 +RSK00019, 9,30ESE_RSK ,36.56,-107.53, 2 +RSK00020, 9,40ESE_RSK ,36.49,-107.33, 2 +RSK00021, 9,50ESE_RSK ,36.43,-107.14, 2 +RSK00022, 9,60ESE_RSK ,36.36,-106.95, 2 +RSK00023, 9,70ESE_RSK ,36.30,-106.76, 2 +RSK00024, 9,20SE_RSK ,36.51,-107.81, 2 +RSK00025, 9,30SE_RSK ,36.40,-107.66, 2 +RSK00026, 9,40SE_RSK ,36.28,-107.52, 2 +RSK00027, 9,50SE_RSK ,36.16,-107.37, 2 +RSK00028, 9,60SE_RSK ,36.04,-107.23, 2 +RSK00029, 9,20SSE_RSK ,36.44,-107.94, 2 +RSK00030, 9,30SSE_RSK ,36.29,-107.86, 2 +RSK00031, 9,40SSE_RSK ,36.13,-107.78, 2 +RSK00032, 9,50SSE_RSK ,35.98,-107.71, 2 +RSK00033, 9,60SSE_RSK ,35.83,-107.63, 2 +RSK00034, 9,20S_RSK ,36.42,-108.10, 2 +RSK00035, 9,30S_RSK ,36.25,-108.10, 2 +RSK00036, 9,40S_RSK ,36.08,-108.10, 2 +RSK00037, 9,50S_RSK ,35.92,-108.10, 2 +RSK00038, 9,60S_RSK ,35.75,-108.10, 2 +RSK00039, 9,70S_RSK ,35.58,-108.10, 2 +RSK00040, 9,20SSW_RSK ,36.44,-108.26, 2 +RSK00041, 9,30SSW_RSK ,36.29,-108.34, 2 +RSK00042, 9,40SSW_RSK ,36.13,-108.42, 2 +RSK00043, 9,50SSW_RSK ,35.98,-108.49, 2 +RSK00044, 9,60SSW_RSK ,35.83,-108.57, 2 +RSK00045, 9,70SSW_RSK ,35.67,-108.65, 2 +RSK00046, 9,80SSW_RSK ,35.52,-108.73, 2 +RSK00047, 9,20SW_RSK ,36.51,-108.39, 2 +RSK00048, 9,30SW_RSK ,36.40,-108.54, 2 +RSK00049, 9,40SW_RSK ,36.28,-108.68, 2 +RSK00050, 9,50SW_RSK ,36.16,-108.83, 2 +RSK00051, 9,60SW_RSK ,36.04,-108.97, 2 +RSK00052, 9,70SW_RSK ,35.92,-109.12, 2 +RSK00053, 9,80SW_RSK ,35.80,-109.26, 2 +RSK00054, 9,20WSW_RSK ,36.62,-108.48, 2 +RSK00055, 9,30WSW_RSK ,36.56,-108.67, 2 +RSK00056, 9,40WSW_RSK ,36.49,-108.87, 2 +RSK00057, 9,50WSW_RSK ,36.43,-109.06, 2 +RSK00058, 9,60WSW_RSK ,36.36,-109.25, 2 +RSK00059, 9,70WSW_RSK ,36.30,-109.44, 2 +RSK00060, 9,80WSW_RSK ,36.23,-109.63, 2 +RSK00061, 9,20W_RSK ,36.75,-108.52, 2 +RSK00062, 9,30W_RSK ,36.75,-108.72, 2 +RSK00063, 9,40W_RSK ,36.75,-108.93, 2 +RSK00064, 9,50W_RSK ,36.75,-109.14, 2 +RSK00065, 9,20WNW_RSK ,36.88,-108.48, 2 +RSK00066, 9,30WNW_RSK ,36.94,-108.68, 2 +RSK00067, 9,20NW_RSK ,36.99,-108.39, 2 +RSK00068, 9,30NW_RSK ,37.10,-108.54, 2 +RSK00069, 9,20NNW_RSK ,37.06,-108.26, 2 +RSK00070, 9,30NNW_RSK ,37.21,-108.34, 2 BOY00000, 9,BOY ,43.46,-108.30, 1 BOY00001, 9,20N_BOY ,43.79,-108.30, 2 BOY00002, 9,30N_BOY ,43.96,-108.30, 2 @@ -16285,100 +16331,105 @@ TUS00027, 9,50SE_TUS ,31.51,-110.23, 2 TUS00028, 9,60SE_TUS ,31.39,-110.09, 2 TUS00029, 9,20SSE_TUS ,31.79,-110.77, 2 TUS00030, 9,30SSE_TUS ,31.64,-110.70, 2 -TUS00031, 9,60SSE_TUS ,31.18,-110.47, 2 -TUS00032, 9,70SSE_TUS ,31.02,-110.40, 2 -TUS00033, 9,80SSE_TUS ,30.87,-110.33, 2 -TUS00034, 9,90SSE_TUS ,30.71,-110.25, 2 -TUS00035, 9,100SSE_TUS ,30.56,-110.18, 2 -TUS00036, 9,110SSE_TUS ,30.40,-110.11, 2 -TUS00037, 9,120SSE_TUS ,30.25,-110.03, 2 -TUS00038, 9,130SSE_TUS ,30.10,-109.96, 2 -TUS00039, 9,140SSE_TUS ,29.94,-109.89, 2 -TUS00040, 9,150SSE_TUS ,29.79,-109.82, 2 -TUS00041, 9,20S_TUS ,31.77,-110.92, 2 -TUS00042, 9,70S_TUS ,30.93,-110.92, 2 -TUS00043, 9,80S_TUS ,30.77,-110.92, 2 -TUS00044, 9,90S_TUS ,30.60,-110.92, 2 -TUS00045, 9,100S_TUS ,30.43,-110.92, 2 -TUS00046, 9,110S_TUS ,30.27,-110.92, 2 -TUS00047, 9,120S_TUS ,30.10,-110.92, 2 -TUS00048, 9,130S_TUS ,29.93,-110.92, 2 -TUS00049, 9,140S_TUS ,29.77,-110.92, 2 -TUS00050, 9,150S_TUS ,29.60,-110.92, 2 -TUS00051, 9,160S_TUS ,29.44,-110.92, 2 -TUS00052, 9,170S_TUS ,29.27,-110.92, 2 -TUS00053, 9,180S_TUS ,29.10,-110.92, 2 -TUS00054, 9,190S_TUS ,28.94,-110.92, 2 -TUS00055, 9,200S_TUS ,28.77,-110.92, 2 -TUS00056, 9,210S_TUS ,28.60,-110.92, 2 -TUS00057, 9,220S_TUS ,28.44,-110.92, 2 -TUS00058, 9,230S_TUS ,28.27,-110.92, 2 -TUS00059, 9,240S_TUS ,28.10,-110.92, 2 -TUS00060, 9,250S_TUS ,27.94,-110.92, 2 -TUS00061, 9,20SSW_TUS ,31.79,-111.07, 2 -TUS00062, 9,30SSW_TUS ,31.64,-111.14, 2 -TUS00063, 9,40SSW_TUS ,31.48,-111.22, 2 -TUS00064, 9,60SSW_TUS ,31.18,-111.37, 2 -TUS00065, 9,70SSW_TUS ,31.02,-111.44, 2 -TUS00066, 9,80SSW_TUS ,30.87,-111.51, 2 -TUS00067, 9,90SSW_TUS ,30.71,-111.59, 2 -TUS00068, 9,100SSW_TUS ,30.56,-111.66, 2 -TUS00069, 9,110SSW_TUS ,30.40,-111.73, 2 -TUS00070, 9,120SSW_TUS ,30.25,-111.81, 2 -TUS00071, 9,130SSW_TUS ,30.10,-111.88, 2 -TUS00072, 9,140SSW_TUS ,29.94,-111.95, 2 -TUS00073, 9,150SSW_TUS ,29.79,-112.02, 2 -TUS00074, 9,160SSW_TUS ,29.63,-112.09, 2 -TUS00075, 9,170SSW_TUS ,29.48,-112.16, 2 -TUS00076, 9,180SSW_TUS ,29.32,-112.24, 2 -TUS00077, 9,190SSW_TUS ,29.17,-112.31, 2 -TUS00078, 9,200SSW_TUS ,29.01,-112.38, 2 -TUS00079, 9,210SSW_TUS ,28.86,-112.45, 2 -TUS00080, 9,220SSW_TUS ,28.70,-112.52, 2 -TUS00081, 9,230SSW_TUS ,28.55,-112.59, 2 -TUS00082, 9,240SSW_TUS ,28.40,-112.66, 2 -TUS00083, 9,20SW_TUS ,31.86,-111.20, 2 -TUS00084, 9,30SW_TUS ,31.75,-111.34, 2 -TUS00085, 9,40SW_TUS ,31.63,-111.47, 2 -TUS00086, 9,50SW_TUS ,31.51,-111.61, 2 -TUS00087, 9,60SW_TUS ,31.39,-111.75, 2 -TUS00088, 9,70SW_TUS ,31.27,-111.88, 2 -TUS00089, 9,80SW_TUS ,31.15,-112.02, 2 -TUS00090, 9,90SW_TUS ,31.03,-112.16, 2 -TUS00091, 9,100SW_TUS ,30.91,-112.29, 2 -TUS00092, 9,110SW_TUS ,30.80,-112.43, 2 -TUS00093, 9,120SW_TUS ,30.68,-112.56, 2 -TUS00094, 9,130SW_TUS ,30.56,-112.70, 2 -TUS00095, 9,140SW_TUS ,30.44,-112.83, 2 -TUS00096, 9,150SW_TUS ,30.32,-112.97, 2 -TUS00097, 9,160SW_TUS ,30.20,-113.10, 2 -TUS00098, 9,170SW_TUS ,30.08,-113.23, 2 -TUS00099, 9,20WSW_TUS ,31.97,-111.28, 2 -TUS00100, 9,30WSW_TUS ,31.91,-111.46, 2 -TUS00101, 9,40WSW_TUS ,31.84,-111.64, 2 -TUS00102, 9,50WSW_TUS ,31.78,-111.83, 2 -TUS00103, 9,60WSW_TUS ,31.71,-112.01, 2 -TUS00104, 9,70WSW_TUS ,31.65,-112.19, 2 -TUS00105, 9,80WSW_TUS ,31.58,-112.37, 2 -TUS00106, 9,90WSW_TUS ,31.52,-112.54, 2 -TUS00107, 9,100WSW_TUS ,31.45,-112.72, 2 -TUS00108, 9,110WSW_TUS ,31.38,-112.90, 2 -TUS00109, 9,20W_TUS ,32.10,-111.31, 2 -TUS00110, 9,30W_TUS ,32.10,-111.51, 2 -TUS00111, 9,40W_TUS ,32.10,-111.71, 2 -TUS00112, 9,50W_TUS ,32.10,-111.90, 2 -TUS00113, 9,60W_TUS ,32.09,-112.10, 2 -TUS00114, 9,70W_TUS ,32.09,-112.30, 2 -TUS00115, 9,20WNW_TUS ,32.23,-111.28, 2 -TUS00116, 9,30WNW_TUS ,32.29,-111.47, 2 -TUS00117, 9,40WNW_TUS ,32.35,-111.65, 2 -TUS00118, 9,50WNW_TUS ,32.42,-111.83, 2 -TUS00119, 9,20NW_TUS ,32.34,-111.20, 2 -TUS00120, 9,30NW_TUS ,32.45,-111.34, 2 -TUS00121, 9,40NW_TUS ,32.57,-111.48, 2 -TUS00122, 9,20NNW_TUS ,32.41,-111.07, 2 -TUS00123, 9,30NNW_TUS ,32.56,-111.15, 2 -TUS00124, 9,40NNW_TUS ,32.72,-111.22, 2 +TUS00031, 9,40SSE_TUS ,31.48,-110.62, 2 +TUS00032, 9,50SSE_TUS ,31.33,-110.55, 2 +TUS00033, 9,60SSE_TUS ,31.18,-110.47, 2 +TUS00034, 9,70SSE_TUS ,31.02,-110.40, 2 +TUS00035, 9,80SSE_TUS ,30.87,-110.33, 2 +TUS00036, 9,90SSE_TUS ,30.71,-110.25, 2 +TUS00037, 9,100SSE_TUS ,30.56,-110.18, 2 +TUS00038, 9,110SSE_TUS ,30.40,-110.11, 2 +TUS00039, 9,120SSE_TUS ,30.25,-110.03, 2 +TUS00040, 9,130SSE_TUS ,30.10,-109.96, 2 +TUS00041, 9,140SSE_TUS ,29.94,-109.89, 2 +TUS00042, 9,150SSE_TUS ,29.79,-109.82, 2 +TUS00043, 9,20S_TUS ,31.77,-110.92, 2 +TUS00044, 9,30S_TUS ,31.60,-110.92, 2 +TUS00045, 9,60S_TUS ,31.10,-110.92, 2 +TUS00046, 9,70S_TUS ,30.93,-110.92, 2 +TUS00047, 9,80S_TUS ,30.77,-110.92, 2 +TUS00048, 9,90S_TUS ,30.60,-110.92, 2 +TUS00049, 9,100S_TUS ,30.43,-110.92, 2 +TUS00050, 9,110S_TUS ,30.27,-110.92, 2 +TUS00051, 9,120S_TUS ,30.10,-110.92, 2 +TUS00052, 9,130S_TUS ,29.93,-110.92, 2 +TUS00053, 9,140S_TUS ,29.77,-110.92, 2 +TUS00054, 9,150S_TUS ,29.60,-110.92, 2 +TUS00055, 9,160S_TUS ,29.44,-110.92, 2 +TUS00056, 9,170S_TUS ,29.27,-110.92, 2 +TUS00057, 9,180S_TUS ,29.10,-110.92, 2 +TUS00058, 9,190S_TUS ,28.94,-110.92, 2 +TUS00059, 9,200S_TUS ,28.77,-110.92, 2 +TUS00060, 9,210S_TUS ,28.60,-110.92, 2 +TUS00061, 9,220S_TUS ,28.44,-110.92, 2 +TUS00062, 9,230S_TUS ,28.27,-110.92, 2 +TUS00063, 9,240S_TUS ,28.10,-110.92, 2 +TUS00064, 9,250S_TUS ,27.94,-110.92, 2 +TUS00065, 9,20SSW_TUS ,31.79,-111.07, 2 +TUS00066, 9,30SSW_TUS ,31.64,-111.14, 2 +TUS00067, 9,40SSW_TUS ,31.48,-111.22, 2 +TUS00068, 9,50SSW_TUS ,31.33,-111.29, 2 +TUS00069, 9,60SSW_TUS ,31.18,-111.37, 2 +TUS00070, 9,70SSW_TUS ,31.02,-111.44, 2 +TUS00071, 9,80SSW_TUS ,30.87,-111.51, 2 +TUS00072, 9,90SSW_TUS ,30.71,-111.59, 2 +TUS00073, 9,100SSW_TUS ,30.56,-111.66, 2 +TUS00074, 9,110SSW_TUS ,30.40,-111.73, 2 +TUS00075, 9,120SSW_TUS ,30.25,-111.81, 2 +TUS00076, 9,130SSW_TUS ,30.10,-111.88, 2 +TUS00077, 9,140SSW_TUS ,29.94,-111.95, 2 +TUS00078, 9,150SSW_TUS ,29.79,-112.02, 2 +TUS00079, 9,160SSW_TUS ,29.63,-112.09, 2 +TUS00080, 9,170SSW_TUS ,29.48,-112.16, 2 +TUS00081, 9,180SSW_TUS ,29.32,-112.24, 2 +TUS00082, 9,190SSW_TUS ,29.17,-112.31, 2 +TUS00083, 9,200SSW_TUS ,29.01,-112.38, 2 +TUS00084, 9,210SSW_TUS ,28.86,-112.45, 2 +TUS00085, 9,220SSW_TUS ,28.70,-112.52, 2 +TUS00086, 9,230SSW_TUS ,28.55,-112.59, 2 +TUS00087, 9,240SSW_TUS ,28.40,-112.66, 2 +TUS00088, 9,20SW_TUS ,31.86,-111.20, 2 +TUS00089, 9,30SW_TUS ,31.75,-111.34, 2 +TUS00090, 9,40SW_TUS ,31.63,-111.47, 2 +TUS00091, 9,50SW_TUS ,31.51,-111.61, 2 +TUS00092, 9,60SW_TUS ,31.39,-111.75, 2 +TUS00093, 9,70SW_TUS ,31.27,-111.88, 2 +TUS00094, 9,80SW_TUS ,31.15,-112.02, 2 +TUS00095, 9,90SW_TUS ,31.03,-112.16, 2 +TUS00096, 9,100SW_TUS ,30.91,-112.29, 2 +TUS00097, 9,110SW_TUS ,30.80,-112.43, 2 +TUS00098, 9,120SW_TUS ,30.68,-112.56, 2 +TUS00099, 9,130SW_TUS ,30.56,-112.70, 2 +TUS00100, 9,140SW_TUS ,30.44,-112.83, 2 +TUS00101, 9,150SW_TUS ,30.32,-112.97, 2 +TUS00102, 9,160SW_TUS ,30.20,-113.10, 2 +TUS00103, 9,170SW_TUS ,30.08,-113.23, 2 +TUS00104, 9,20WSW_TUS ,31.97,-111.28, 2 +TUS00105, 9,30WSW_TUS ,31.91,-111.46, 2 +TUS00106, 9,40WSW_TUS ,31.84,-111.64, 2 +TUS00107, 9,50WSW_TUS ,31.78,-111.83, 2 +TUS00108, 9,60WSW_TUS ,31.71,-112.01, 2 +TUS00109, 9,70WSW_TUS ,31.65,-112.19, 2 +TUS00110, 9,80WSW_TUS ,31.58,-112.37, 2 +TUS00111, 9,90WSW_TUS ,31.52,-112.54, 2 +TUS00112, 9,100WSW_TUS ,31.45,-112.72, 2 +TUS00113, 9,110WSW_TUS ,31.38,-112.90, 2 +TUS00114, 9,20W_TUS ,32.10,-111.31, 2 +TUS00115, 9,30W_TUS ,32.10,-111.51, 2 +TUS00116, 9,40W_TUS ,32.10,-111.71, 2 +TUS00117, 9,50W_TUS ,32.10,-111.90, 2 +TUS00118, 9,60W_TUS ,32.09,-112.10, 2 +TUS00119, 9,70W_TUS ,32.09,-112.30, 2 +TUS00120, 9,20WNW_TUS ,32.23,-111.28, 2 +TUS00121, 9,30WNW_TUS ,32.29,-111.47, 2 +TUS00122, 9,40WNW_TUS ,32.35,-111.65, 2 +TUS00123, 9,50WNW_TUS ,32.42,-111.83, 2 +TUS00124, 9,20NW_TUS ,32.34,-111.20, 2 +TUS00125, 9,30NW_TUS ,32.45,-111.34, 2 +TUS00126, 9,40NW_TUS ,32.57,-111.48, 2 +TUS00127, 9,20NNW_TUS ,32.41,-111.07, 2 +TUS00128, 9,30NNW_TUS ,32.56,-111.15, 2 +TUS00129, 9,40NNW_TUS ,32.72,-111.22, 2 TBC00000, 9,TBC ,36.12,-111.27, 1 TBC00001, 9,20N_TBC ,36.45,-111.27, 2 TBC00002, 9,30N_TBC ,36.62,-111.27, 2 @@ -17145,7 +17196,7 @@ YQL00080, 9,30NNW_YQL ,50.09,-113.10, 2 YQL00081, 9,40NNW_YQL ,50.24,-113.20, 2 YQL00082, 9,50NNW_YQL ,50.40,-113.30, 2 YQL00083, 9,60NNW_YQL ,50.55,-113.40, 2 -YQL00084, 9,70NNW_YQL ,50.70,-113.50, 2 +YQL00084, 9,70NNW_YQL ,50.71,-113.50, 2 YQL00085, 9,80NNW_YQL ,50.86,-113.61, 2 YQL00086, 9,90NNW_YQL ,51.01,-113.71, 2 YQL00087, 9,100NNW_YQL ,51.16,-113.82, 2 @@ -17954,7 +18005,7 @@ YXC00026, 9,30NNE_YXC ,50.06,-115.48, 2 YXC00027, 9,40NNE_YXC ,50.21,-115.38, 2 YXC00028, 9,50NNE_YXC ,50.37,-115.28, 2 YXC00029, 9,60NNE_YXC ,50.52,-115.18, 2 -YXC00030, 9,70NNE_YXC ,50.67,-115.08, 2 +YXC00030, 9,70NNE_YXC ,50.68,-115.08, 2 YXC00031, 9,80NNE_YXC ,50.83,-114.97, 2 YXC00032, 9,90NNE_YXC ,50.98,-114.87, 2 YXC00033, 9,100NNE_YXC ,51.13,-114.76, 2 @@ -18008,64 +18059,69 @@ YXC00080, 9,70SSW_YXC ,48.52,-116.45, 2 YXC00081, 9,80SSW_YXC ,48.37,-116.55, 2 YXC00082, 9,20SW_YXC ,49.36,-116.14, 2 YXC00083, 9,30SW_YXC ,49.25,-116.32, 2 -YXC00084, 9,60SW_YXC ,48.89,-116.85, 2 -YXC00085, 9,70SW_YXC ,48.77,-117.03, 2 -YXC00086, 9,80SW_YXC ,48.65,-117.21, 2 -YXC00087, 9,20WSW_YXC ,49.47,-116.25, 2 -YXC00088, 9,70WSW_YXC ,49.14,-117.43, 2 -YXC00089, 9,80WSW_YXC ,49.07,-117.66, 2 -YXC00090, 9,90WSW_YXC ,49.01,-117.89, 2 -YXC00091, 9,20W_YXC ,49.60,-116.29, 2 -YXC00092, 9,30W_YXC ,49.60,-116.55, 2 -YXC00093, 9,40W_YXC ,49.60,-116.81, 2 -YXC00094, 9,60W_YXC ,49.59,-117.32, 2 -YXC00095, 9,70W_YXC ,49.59,-117.58, 2 -YXC00096, 9,80W_YXC ,49.58,-117.84, 2 -YXC00097, 9,90W_YXC ,49.58,-118.09, 2 -YXC00098, 9,20WNW_YXC ,49.73,-116.26, 2 -YXC00099, 9,30WNW_YXC ,49.79,-116.50, 2 -YXC00100, 9,40WNW_YXC ,49.85,-116.73, 2 -YXC00101, 9,50WNW_YXC ,49.91,-116.97, 2 -YXC00102, 9,60WNW_YXC ,49.97,-117.22, 2 -YXC00103, 9,70WNW_YXC ,50.03,-117.46, 2 -YXC00104, 9,80WNW_YXC ,50.09,-117.70, 2 -YXC00105, 9,90WNW_YXC ,50.15,-117.94, 2 -YXC00106, 9,100WNW_YXC ,50.21,-118.18, 2 -YXC00107, 9,20NW_YXC ,49.83,-116.15, 2 -YXC00108, 9,30NW_YXC ,49.95,-116.33, 2 -YXC00109, 9,40NW_YXC ,50.07,-116.51, 2 -YXC00110, 9,50NW_YXC ,50.19,-116.70, 2 -YXC00111, 9,60NW_YXC ,50.30,-116.89, 2 -YXC00112, 9,70NW_YXC ,50.42,-117.07, 2 -YXC00113, 9,80NW_YXC ,50.53,-117.26, 2 -YXC00114, 9,90NW_YXC ,50.65,-117.45, 2 -YXC00115, 9,100NW_YXC ,50.76,-117.64, 2 -YXC00116, 9,110NW_YXC ,50.88,-117.83, 2 -YXC00117, 9,120NW_YXC ,50.99,-118.03, 2 -YXC00118, 9,130NW_YXC ,51.11,-118.22, 2 -YXC00119, 9,20NNW_YXC ,49.91,-115.98, 2 -YXC00120, 9,30NNW_YXC ,50.06,-116.08, 2 -YXC00121, 9,40NNW_YXC ,50.21,-116.18, 2 -YXC00122, 9,50NNW_YXC ,50.37,-116.28, 2 -YXC00123, 9,60NNW_YXC ,50.52,-116.38, 2 -YXC00124, 9,70NNW_YXC ,50.67,-116.48, 2 -YXC00125, 9,80NNW_YXC ,50.83,-116.59, 2 -YXC00126, 9,90NNW_YXC ,50.98,-116.69, 2 -YXC00127, 9,100NNW_YXC ,51.13,-116.80, 2 -YXC00128, 9,110NNW_YXC ,51.29,-116.90, 2 -YXC00129, 9,120NNW_YXC ,51.44,-117.01, 2 -YXC00130, 9,130NNW_YXC ,51.59,-117.11, 2 -YXC00131, 9,140NNW_YXC ,51.75,-117.22, 2 -YXC00132, 9,150NNW_YXC ,51.90,-117.33, 2 -YXC00133, 9,160NNW_YXC ,52.05,-117.44, 2 -YXC00134, 9,170NNW_YXC ,52.20,-117.55, 2 -YXC00135, 9,180NNW_YXC ,52.36,-117.66, 2 -YXC00136, 9,190NNW_YXC ,52.51,-117.77, 2 -YXC00137, 9,200NNW_YXC ,52.66,-117.88, 2 -YXC00138, 9,210NNW_YXC ,52.81,-117.99, 2 -YXC00139, 9,220NNW_YXC ,52.96,-118.11, 2 -YXC00140, 9,230NNW_YXC ,53.11,-118.22, 2 -YXC00141, 9,240NNW_YXC ,53.27,-118.34, 2 +YXC00084, 9,40SW_YXC ,49.13,-116.50, 2 +YXC00085, 9,50SW_YXC ,49.01,-116.68, 2 +YXC00086, 9,60SW_YXC ,48.89,-116.85, 2 +YXC00087, 9,70SW_YXC ,48.77,-117.03, 2 +YXC00088, 9,80SW_YXC ,48.65,-117.21, 2 +YXC00089, 9,20WSW_YXC ,49.47,-116.25, 2 +YXC00090, 9,30WSW_YXC ,49.41,-116.49, 2 +YXC00091, 9,60WSW_YXC ,49.21,-117.19, 2 +YXC00092, 9,70WSW_YXC ,49.14,-117.43, 2 +YXC00093, 9,80WSW_YXC ,49.07,-117.66, 2 +YXC00094, 9,90WSW_YXC ,49.01,-117.89, 2 +YXC00095, 9,20W_YXC ,49.60,-116.29, 2 +YXC00096, 9,30W_YXC ,49.60,-116.55, 2 +YXC00097, 9,40W_YXC ,49.60,-116.81, 2 +YXC00098, 9,50W_YXC ,49.59,-117.06, 2 +YXC00099, 9,60W_YXC ,49.59,-117.32, 2 +YXC00100, 9,70W_YXC ,49.59,-117.58, 2 +YXC00101, 9,80W_YXC ,49.58,-117.84, 2 +YXC00102, 9,90W_YXC ,49.58,-118.09, 2 +YXC00103, 9,20WNW_YXC ,49.73,-116.26, 2 +YXC00104, 9,30WNW_YXC ,49.79,-116.50, 2 +YXC00105, 9,40WNW_YXC ,49.85,-116.73, 2 +YXC00106, 9,50WNW_YXC ,49.91,-116.97, 2 +YXC00107, 9,60WNW_YXC ,49.97,-117.22, 2 +YXC00108, 9,70WNW_YXC ,50.03,-117.46, 2 +YXC00109, 9,80WNW_YXC ,50.09,-117.70, 2 +YXC00110, 9,90WNW_YXC ,50.15,-117.94, 2 +YXC00111, 9,100WNW_YXC ,50.21,-118.18, 2 +YXC00112, 9,20NW_YXC ,49.83,-116.15, 2 +YXC00113, 9,30NW_YXC ,49.95,-116.33, 2 +YXC00114, 9,40NW_YXC ,50.07,-116.51, 2 +YXC00115, 9,50NW_YXC ,50.19,-116.70, 2 +YXC00116, 9,60NW_YXC ,50.30,-116.89, 2 +YXC00117, 9,70NW_YXC ,50.42,-117.07, 2 +YXC00118, 9,80NW_YXC ,50.53,-117.26, 2 +YXC00119, 9,90NW_YXC ,50.65,-117.45, 2 +YXC00120, 9,100NW_YXC ,50.76,-117.64, 2 +YXC00121, 9,110NW_YXC ,50.88,-117.83, 2 +YXC00122, 9,120NW_YXC ,50.99,-118.03, 2 +YXC00123, 9,130NW_YXC ,51.11,-118.22, 2 +YXC00124, 9,20NNW_YXC ,49.91,-115.98, 2 +YXC00125, 9,30NNW_YXC ,50.06,-116.08, 2 +YXC00126, 9,40NNW_YXC ,50.21,-116.18, 2 +YXC00127, 9,50NNW_YXC ,50.37,-116.28, 2 +YXC00128, 9,60NNW_YXC ,50.52,-116.38, 2 +YXC00129, 9,70NNW_YXC ,50.68,-116.48, 2 +YXC00130, 9,80NNW_YXC ,50.83,-116.59, 2 +YXC00131, 9,90NNW_YXC ,50.98,-116.69, 2 +YXC00132, 9,100NNW_YXC ,51.13,-116.80, 2 +YXC00133, 9,110NNW_YXC ,51.29,-116.90, 2 +YXC00134, 9,120NNW_YXC ,51.44,-117.01, 2 +YXC00135, 9,130NNW_YXC ,51.59,-117.11, 2 +YXC00136, 9,140NNW_YXC ,51.75,-117.22, 2 +YXC00137, 9,150NNW_YXC ,51.90,-117.33, 2 +YXC00138, 9,160NNW_YXC ,52.05,-117.44, 2 +YXC00139, 9,170NNW_YXC ,52.20,-117.55, 2 +YXC00140, 9,180NNW_YXC ,52.36,-117.66, 2 +YXC00141, 9,190NNW_YXC ,52.51,-117.77, 2 +YXC00142, 9,200NNW_YXC ,52.66,-117.88, 2 +YXC00143, 9,210NNW_YXC ,52.81,-117.99, 2 +YXC00144, 9,220NNW_YXC ,52.96,-118.11, 2 +YXC00145, 9,230NNW_YXC ,53.11,-118.22, 2 +YXC00146, 9,240NNW_YXC ,53.27,-118.34, 2 TRM00000, 9,TRM ,33.63,-116.16, 1 TRM00001, 9,20N_TRM ,33.96,-116.16, 2 TRM00002, 9,30N_TRM ,34.13,-116.16, 2 @@ -18502,115 +18558,114 @@ MZB00023, 9,60SE_MZB ,32.07,-116.40, 2 MZB00024, 9,70SE_MZB ,31.95,-116.26, 2 MZB00025, 9,80SE_MZB ,31.83,-116.12, 2 MZB00026, 9,90SE_MZB ,31.71,-115.98, 2 -MZB00027, 9,20SSE_MZB ,32.47,-117.08, 2 -MZB00028, 9,30SSE_MZB ,32.32,-117.00, 2 -MZB00029, 9,40SSE_MZB ,32.16,-116.93, 2 -MZB00030, 9,50SSE_MZB ,32.01,-116.85, 2 -MZB00031, 9,60SSE_MZB ,31.86,-116.78, 2 -MZB00032, 9,70SSE_MZB ,31.70,-116.71, 2 -MZB00033, 9,80SSE_MZB ,31.55,-116.63, 2 -MZB00034, 9,90SSE_MZB ,31.39,-116.56, 2 -MZB00035, 9,100SSE_MZB ,31.24,-116.48, 2 -MZB00036, 9,110SSE_MZB ,31.08,-116.41, 2 -MZB00037, 9,120SSE_MZB ,30.93,-116.34, 2 -MZB00038, 9,130SSE_MZB ,30.78,-116.27, 2 -MZB00039, 9,140SSE_MZB ,30.62,-116.19, 2 -MZB00040, 9,150SSE_MZB ,30.47,-116.12, 2 -MZB00041, 9,160SSE_MZB ,30.31,-116.05, 2 -MZB00042, 9,170SSE_MZB ,30.16,-115.98, 2 -MZB00043, 9,20S_MZB ,32.45,-117.23, 2 -MZB00044, 9,30S_MZB ,32.28,-117.23, 2 -MZB00045, 9,40S_MZB ,32.11,-117.23, 2 -MZB00046, 9,50S_MZB ,31.95,-117.23, 2 -MZB00047, 9,60S_MZB ,31.78,-117.23, 2 -MZB00048, 9,70S_MZB ,31.61,-117.23, 2 -MZB00049, 9,80S_MZB ,31.45,-117.23, 2 -MZB00050, 9,90S_MZB ,31.28,-117.23, 2 -MZB00051, 9,100S_MZB ,31.11,-117.23, 2 -MZB00052, 9,110S_MZB ,30.95,-117.23, 2 -MZB00053, 9,120S_MZB ,30.78,-117.23, 2 -MZB00054, 9,130S_MZB ,30.61,-117.23, 2 -MZB00055, 9,140S_MZB ,30.45,-117.23, 2 -MZB00056, 9,150S_MZB ,30.28,-117.23, 2 -MZB00057, 9,160S_MZB ,30.12,-117.23, 2 -MZB00058, 9,170S_MZB ,29.95,-117.23, 2 -MZB00059, 9,180S_MZB ,29.78,-117.23, 2 -MZB00060, 9,190S_MZB ,29.62,-117.23, 2 -MZB00061, 9,200S_MZB ,29.45,-117.23, 2 -MZB00062, 9,210S_MZB ,29.28,-117.23, 2 -MZB00063, 9,220S_MZB ,29.12,-117.23, 2 -MZB00064, 9,230S_MZB ,28.95,-117.23, 2 -MZB00065, 9,240S_MZB ,28.78,-117.23, 2 -MZB00066, 9,250S_MZB ,28.62,-117.23, 2 -MZB00067, 9,20SSW_MZB ,32.47,-117.38, 2 -MZB00068, 9,30SSW_MZB ,32.32,-117.46, 2 -MZB00069, 9,40SSW_MZB ,32.16,-117.53, 2 -MZB00070, 9,50SSW_MZB ,32.01,-117.61, 2 -MZB00071, 9,60SSW_MZB ,31.86,-117.68, 2 -MZB00072, 9,70SSW_MZB ,31.70,-117.75, 2 -MZB00073, 9,80SSW_MZB ,31.55,-117.83, 2 -MZB00074, 9,90SSW_MZB ,31.39,-117.90, 2 -MZB00075, 9,100SSW_MZB ,31.24,-117.98, 2 -MZB00076, 9,110SSW_MZB ,31.08,-118.05, 2 -MZB00077, 9,120SSW_MZB ,30.93,-118.12, 2 -MZB00078, 9,130SSW_MZB ,30.78,-118.19, 2 -MZB00079, 9,140SSW_MZB ,30.62,-118.27, 2 -MZB00080, 9,150SSW_MZB ,30.47,-118.34, 2 -MZB00081, 9,160SSW_MZB ,30.31,-118.41, 2 -MZB00082, 9,170SSW_MZB ,30.16,-118.48, 2 -MZB00083, 9,180SSW_MZB ,30.00,-118.55, 2 -MZB00084, 9,190SSW_MZB ,29.85,-118.63, 2 -MZB00085, 9,200SSW_MZB ,29.69,-118.70, 2 -MZB00086, 9,210SSW_MZB ,29.54,-118.77, 2 -MZB00087, 9,220SSW_MZB ,29.38,-118.84, 2 -MZB00088, 9,230SSW_MZB ,29.23,-118.91, 2 -MZB00089, 9,240SSW_MZB ,29.07,-118.98, 2 -MZB00090, 9,20SW_MZB ,32.54,-117.51, 2 -MZB00091, 9,30SW_MZB ,32.43,-117.65, 2 -MZB00092, 9,40SW_MZB ,32.31,-117.79, 2 -MZB00093, 9,50SW_MZB ,32.19,-117.93, 2 -MZB00094, 9,60SW_MZB ,32.07,-118.06, 2 -MZB00095, 9,70SW_MZB ,31.95,-118.20, 2 -MZB00096, 9,80SW_MZB ,31.83,-118.34, 2 -MZB00097, 9,90SW_MZB ,31.71,-118.48, 2 -MZB00098, 9,100SW_MZB ,31.59,-118.61, 2 -MZB00099, 9,110SW_MZB ,31.48,-118.75, 2 -MZB00100, 9,120SW_MZB ,31.36,-118.88, 2 -MZB00101, 9,130SW_MZB ,31.24,-119.02, 2 -MZB00102, 9,140SW_MZB ,31.12,-119.16, 2 -MZB00103, 9,150SW_MZB ,31.00,-119.29, 2 -MZB00104, 9,160SW_MZB ,30.88,-119.43, 2 -MZB00105, 9,170SW_MZB ,30.76,-119.56, 2 -MZB00106, 9,180SW_MZB ,30.64,-119.69, 2 -MZB00107, 9,190SW_MZB ,30.52,-119.83, 2 -MZB00108, 9,200SW_MZB ,30.39,-119.96, 2 -MZB00109, 9,250SW_MZB ,29.79,-120.62, 2 -MZB00110, 9,20WSW_MZB ,32.65,-117.60, 2 -MZB00111, 9,30WSW_MZB ,32.59,-117.78, 2 -MZB00112, 9,40WSW_MZB ,32.52,-117.96, 2 -MZB00113, 9,50WSW_MZB ,32.46,-118.14, 2 -MZB00114, 9,60WSW_MZB ,32.39,-118.32, 2 -MZB00115, 9,70WSW_MZB ,32.33,-118.50, 2 -MZB00116, 9,80WSW_MZB ,32.26,-118.69, 2 -MZB00117, 9,90WSW_MZB ,32.20,-118.87, 2 -MZB00118, 9,100WSW_MZB ,32.13,-119.05, 2 -MZB00119, 9,110WSW_MZB ,32.06,-119.23, 2 -MZB00120, 9,120WSW_MZB ,32.00,-119.41, 2 -MZB00121, 9,130WSW_MZB ,31.93,-119.59, 2 -MZB00122, 9,20W_MZB ,32.78,-117.63, 2 -MZB00123, 9,30W_MZB ,32.78,-117.82, 2 -MZB00124, 9,40W_MZB ,32.78,-118.02, 2 -MZB00125, 9,50W_MZB ,32.78,-118.22, 2 -MZB00126, 9,60W_MZB ,32.77,-118.42, 2 -MZB00127, 9,20WNW_MZB ,32.91,-117.60, 2 -MZB00128, 9,30WNW_MZB ,32.97,-117.78, 2 -MZB00129, 9,40WNW_MZB ,33.03,-117.96, 2 -MZB00130, 9,20NW_MZB ,33.02,-117.51, 2 -MZB00131, 9,30NW_MZB ,33.13,-117.65, 2 -MZB00132, 9,40NW_MZB ,33.25,-117.79, 2 -MZB00133, 9,20NNW_MZB ,33.09,-117.38, 2 -MZB00134, 9,30NNW_MZB ,33.24,-117.46, 2 -MZB00135, 9,40NNW_MZB ,33.40,-117.54, 2 +MZB00027, 9,30SSE_MZB ,32.32,-117.00, 2 +MZB00028, 9,40SSE_MZB ,32.16,-116.93, 2 +MZB00029, 9,50SSE_MZB ,32.01,-116.85, 2 +MZB00030, 9,60SSE_MZB ,31.86,-116.78, 2 +MZB00031, 9,70SSE_MZB ,31.70,-116.71, 2 +MZB00032, 9,80SSE_MZB ,31.55,-116.63, 2 +MZB00033, 9,90SSE_MZB ,31.39,-116.56, 2 +MZB00034, 9,100SSE_MZB ,31.24,-116.48, 2 +MZB00035, 9,110SSE_MZB ,31.08,-116.41, 2 +MZB00036, 9,120SSE_MZB ,30.93,-116.34, 2 +MZB00037, 9,130SSE_MZB ,30.78,-116.27, 2 +MZB00038, 9,140SSE_MZB ,30.62,-116.19, 2 +MZB00039, 9,150SSE_MZB ,30.47,-116.12, 2 +MZB00040, 9,160SSE_MZB ,30.31,-116.05, 2 +MZB00041, 9,170SSE_MZB ,30.16,-115.98, 2 +MZB00042, 9,30S_MZB ,32.28,-117.23, 2 +MZB00043, 9,40S_MZB ,32.11,-117.23, 2 +MZB00044, 9,50S_MZB ,31.95,-117.23, 2 +MZB00045, 9,60S_MZB ,31.78,-117.23, 2 +MZB00046, 9,70S_MZB ,31.61,-117.23, 2 +MZB00047, 9,80S_MZB ,31.45,-117.23, 2 +MZB00048, 9,90S_MZB ,31.28,-117.23, 2 +MZB00049, 9,100S_MZB ,31.11,-117.23, 2 +MZB00050, 9,110S_MZB ,30.95,-117.23, 2 +MZB00051, 9,120S_MZB ,30.78,-117.23, 2 +MZB00052, 9,130S_MZB ,30.61,-117.23, 2 +MZB00053, 9,140S_MZB ,30.45,-117.23, 2 +MZB00054, 9,150S_MZB ,30.28,-117.23, 2 +MZB00055, 9,160S_MZB ,30.12,-117.23, 2 +MZB00056, 9,170S_MZB ,29.95,-117.23, 2 +MZB00057, 9,180S_MZB ,29.78,-117.23, 2 +MZB00058, 9,190S_MZB ,29.62,-117.23, 2 +MZB00059, 9,200S_MZB ,29.45,-117.23, 2 +MZB00060, 9,210S_MZB ,29.28,-117.23, 2 +MZB00061, 9,220S_MZB ,29.12,-117.23, 2 +MZB00062, 9,230S_MZB ,28.95,-117.23, 2 +MZB00063, 9,240S_MZB ,28.78,-117.23, 2 +MZB00064, 9,250S_MZB ,28.62,-117.23, 2 +MZB00065, 9,30SSW_MZB ,32.32,-117.46, 2 +MZB00066, 9,40SSW_MZB ,32.16,-117.53, 2 +MZB00067, 9,50SSW_MZB ,32.01,-117.61, 2 +MZB00068, 9,60SSW_MZB ,31.86,-117.68, 2 +MZB00069, 9,70SSW_MZB ,31.70,-117.75, 2 +MZB00070, 9,80SSW_MZB ,31.55,-117.83, 2 +MZB00071, 9,90SSW_MZB ,31.39,-117.90, 2 +MZB00072, 9,100SSW_MZB ,31.24,-117.98, 2 +MZB00073, 9,110SSW_MZB ,31.08,-118.05, 2 +MZB00074, 9,120SSW_MZB ,30.93,-118.12, 2 +MZB00075, 9,130SSW_MZB ,30.78,-118.19, 2 +MZB00076, 9,140SSW_MZB ,30.62,-118.27, 2 +MZB00077, 9,150SSW_MZB ,30.47,-118.34, 2 +MZB00078, 9,160SSW_MZB ,30.31,-118.41, 2 +MZB00079, 9,170SSW_MZB ,30.16,-118.48, 2 +MZB00080, 9,180SSW_MZB ,30.00,-118.55, 2 +MZB00081, 9,190SSW_MZB ,29.85,-118.63, 2 +MZB00082, 9,200SSW_MZB ,29.69,-118.70, 2 +MZB00083, 9,210SSW_MZB ,29.54,-118.77, 2 +MZB00084, 9,220SSW_MZB ,29.38,-118.84, 2 +MZB00085, 9,230SSW_MZB ,29.23,-118.91, 2 +MZB00086, 9,240SSW_MZB ,29.07,-118.98, 2 +MZB00087, 9,20SW_MZB ,32.54,-117.51, 2 +MZB00088, 9,30SW_MZB ,32.43,-117.65, 2 +MZB00089, 9,40SW_MZB ,32.31,-117.79, 2 +MZB00090, 9,50SW_MZB ,32.19,-117.93, 2 +MZB00091, 9,60SW_MZB ,32.07,-118.06, 2 +MZB00092, 9,70SW_MZB ,31.95,-118.20, 2 +MZB00093, 9,80SW_MZB ,31.83,-118.34, 2 +MZB00094, 9,90SW_MZB ,31.71,-118.48, 2 +MZB00095, 9,100SW_MZB ,31.59,-118.61, 2 +MZB00096, 9,110SW_MZB ,31.48,-118.75, 2 +MZB00097, 9,120SW_MZB ,31.36,-118.88, 2 +MZB00098, 9,130SW_MZB ,31.24,-119.02, 2 +MZB00099, 9,140SW_MZB ,31.12,-119.16, 2 +MZB00100, 9,150SW_MZB ,31.00,-119.29, 2 +MZB00101, 9,160SW_MZB ,30.88,-119.43, 2 +MZB00102, 9,170SW_MZB ,30.76,-119.56, 2 +MZB00103, 9,180SW_MZB ,30.64,-119.69, 2 +MZB00104, 9,190SW_MZB ,30.52,-119.83, 2 +MZB00105, 9,200SW_MZB ,30.39,-119.96, 2 +MZB00106, 9,210SW_MZB ,30.27,-120.09, 2 +MZB00107, 9,240SW_MZB ,29.91,-120.49, 2 +MZB00108, 9,250SW_MZB ,29.79,-120.62, 2 +MZB00109, 9,20WSW_MZB ,32.65,-117.60, 2 +MZB00110, 9,30WSW_MZB ,32.59,-117.78, 2 +MZB00111, 9,40WSW_MZB ,32.52,-117.96, 2 +MZB00112, 9,50WSW_MZB ,32.46,-118.14, 2 +MZB00113, 9,60WSW_MZB ,32.39,-118.32, 2 +MZB00114, 9,70WSW_MZB ,32.33,-118.50, 2 +MZB00115, 9,80WSW_MZB ,32.26,-118.69, 2 +MZB00116, 9,90WSW_MZB ,32.20,-118.87, 2 +MZB00117, 9,100WSW_MZB ,32.13,-119.05, 2 +MZB00118, 9,110WSW_MZB ,32.06,-119.23, 2 +MZB00119, 9,120WSW_MZB ,32.00,-119.41, 2 +MZB00120, 9,130WSW_MZB ,31.93,-119.59, 2 +MZB00121, 9,20W_MZB ,32.78,-117.63, 2 +MZB00122, 9,30W_MZB ,32.78,-117.82, 2 +MZB00123, 9,40W_MZB ,32.78,-118.02, 2 +MZB00124, 9,50W_MZB ,32.78,-118.22, 2 +MZB00125, 9,60W_MZB ,32.77,-118.42, 2 +MZB00126, 9,20WNW_MZB ,32.91,-117.60, 2 +MZB00127, 9,30WNW_MZB ,32.97,-117.78, 2 +MZB00128, 9,40WNW_MZB ,33.03,-117.96, 2 +MZB00129, 9,20NW_MZB ,33.02,-117.51, 2 +MZB00130, 9,30NW_MZB ,33.13,-117.65, 2 +MZB00131, 9,40NW_MZB ,33.25,-117.79, 2 +MZB00132, 9,20NNW_MZB ,33.09,-117.38, 2 +MZB00133, 9,30NNW_MZB ,33.24,-117.46, 2 +MZB00134, 9,40NNW_MZB ,33.40,-117.54, 2 GEG00000, 9,GEG ,47.56,-117.63, 1 GEG00001, 9,20N_GEG ,47.89,-117.63, 2 GEG00002, 9,30N_GEG ,48.06,-117.63, 2 @@ -18846,62 +18901,66 @@ REO00015, 9,40E_REO ,42.59,-116.97, 2 REO00016, 9,20ESE_REO ,42.46,-117.45, 2 REO00017, 9,30ESE_REO ,42.40,-117.24, 2 REO00018, 9,40ESE_REO ,42.33,-117.04, 2 -REO00019, 9,60ESE_REO ,42.20,-116.62, 2 -REO00020, 9,70ESE_REO ,42.13,-116.42, 2 -REO00021, 9,20SE_REO ,42.35,-117.55, 2 -REO00022, 9,70SE_REO ,41.76,-116.76, 2 -REO00023, 9,20SSE_REO ,42.28,-117.70, 2 -REO00024, 9,30SSE_REO ,42.13,-117.61, 2 -REO00025, 9,40SSE_REO ,41.97,-117.53, 2 -REO00026, 9,60SSE_REO ,41.67,-117.36, 2 -REO00027, 9,70SSE_REO ,41.51,-117.27, 2 -REO00028, 9,20S_REO ,42.26,-117.87, 2 -REO00029, 9,30S_REO ,42.09,-117.87, 2 -REO00030, 9,40S_REO ,41.92,-117.87, 2 -REO00031, 9,50S_REO ,41.76,-117.87, 2 -REO00032, 9,60S_REO ,41.59,-117.87, 2 -REO00033, 9,70S_REO ,41.42,-117.87, 2 -REO00034, 9,20SSW_REO ,42.28,-118.04, 2 -REO00035, 9,30SSW_REO ,42.13,-118.13, 2 -REO00036, 9,40SSW_REO ,41.97,-118.21, 2 -REO00037, 9,50SSW_REO ,41.82,-118.30, 2 -REO00038, 9,60SSW_REO ,41.67,-118.38, 2 -REO00039, 9,70SSW_REO ,41.51,-118.47, 2 -REO00040, 9,80SSW_REO ,41.36,-118.55, 2 -REO00041, 9,90SSW_REO ,41.20,-118.63, 2 -REO00042, 9,20SW_REO ,42.35,-118.19, 2 -REO00043, 9,30SW_REO ,42.24,-118.35, 2 -REO00044, 9,40SW_REO ,42.12,-118.51, 2 -REO00045, 9,50SW_REO ,42.00,-118.66, 2 -REO00046, 9,60SW_REO ,41.88,-118.82, 2 -REO00047, 9,70SW_REO ,41.76,-118.98, 2 -REO00048, 9,80SW_REO ,41.64,-119.13, 2 -REO00049, 9,20WSW_REO ,42.46,-118.29, 2 -REO00050, 9,30WSW_REO ,42.40,-118.50, 2 -REO00051, 9,40WSW_REO ,42.33,-118.70, 2 -REO00052, 9,50WSW_REO ,42.27,-118.91, 2 -REO00053, 9,60WSW_REO ,42.20,-119.12, 2 -REO00054, 9,20W_REO ,42.59,-118.32, 2 -REO00055, 9,30W_REO ,42.59,-118.55, 2 -REO00056, 9,40W_REO ,42.59,-118.77, 2 -REO00057, 9,50W_REO ,42.58,-119.00, 2 -REO00058, 9,20WNW_REO ,42.72,-118.29, 2 -REO00059, 9,30WNW_REO ,42.78,-118.50, 2 -REO00060, 9,40WNW_REO ,42.84,-118.71, 2 -REO00061, 9,50WNW_REO ,42.90,-118.92, 2 -REO00062, 9,60WNW_REO ,42.97,-119.13, 2 -REO00063, 9,20NW_REO ,42.83,-118.19, 2 -REO00064, 9,30NW_REO ,42.94,-118.35, 2 -REO00065, 9,40NW_REO ,43.06,-118.51, 2 -REO00066, 9,50NW_REO ,43.18,-118.68, 2 -REO00067, 9,60NW_REO ,43.29,-118.84, 2 -REO00068, 9,70NW_REO ,43.41,-119.00, 2 -REO00069, 9,80NW_REO ,43.52,-119.17, 2 -REO00070, 9,20NNW_REO ,42.90,-118.04, 2 -REO00071, 9,30NNW_REO ,43.05,-118.13, 2 -REO00072, 9,40NNW_REO ,43.20,-118.22, 2 -REO00073, 9,50NNW_REO ,43.36,-118.31, 2 -REO00074, 9,60NNW_REO ,43.51,-118.40, 2 +REO00019, 9,50ESE_REO ,42.27,-116.83, 2 +REO00020, 9,60ESE_REO ,42.20,-116.62, 2 +REO00021, 9,70ESE_REO ,42.13,-116.42, 2 +REO00022, 9,20SE_REO ,42.35,-117.55, 2 +REO00023, 9,30SE_REO ,42.24,-117.39, 2 +REO00024, 9,60SE_REO ,41.88,-116.92, 2 +REO00025, 9,70SE_REO ,41.76,-116.76, 2 +REO00026, 9,20SSE_REO ,42.28,-117.70, 2 +REO00027, 9,30SSE_REO ,42.13,-117.61, 2 +REO00028, 9,40SSE_REO ,41.97,-117.53, 2 +REO00029, 9,50SSE_REO ,41.82,-117.44, 2 +REO00030, 9,60SSE_REO ,41.67,-117.36, 2 +REO00031, 9,70SSE_REO ,41.51,-117.27, 2 +REO00032, 9,20S_REO ,42.26,-117.87, 2 +REO00033, 9,30S_REO ,42.09,-117.87, 2 +REO00034, 9,40S_REO ,41.92,-117.87, 2 +REO00035, 9,50S_REO ,41.76,-117.87, 2 +REO00036, 9,60S_REO ,41.59,-117.87, 2 +REO00037, 9,70S_REO ,41.42,-117.87, 2 +REO00038, 9,20SSW_REO ,42.28,-118.04, 2 +REO00039, 9,30SSW_REO ,42.13,-118.13, 2 +REO00040, 9,40SSW_REO ,41.97,-118.21, 2 +REO00041, 9,50SSW_REO ,41.82,-118.30, 2 +REO00042, 9,60SSW_REO ,41.67,-118.38, 2 +REO00043, 9,70SSW_REO ,41.51,-118.47, 2 +REO00044, 9,80SSW_REO ,41.36,-118.55, 2 +REO00045, 9,90SSW_REO ,41.20,-118.63, 2 +REO00046, 9,20SW_REO ,42.35,-118.19, 2 +REO00047, 9,30SW_REO ,42.24,-118.35, 2 +REO00048, 9,40SW_REO ,42.12,-118.51, 2 +REO00049, 9,50SW_REO ,42.00,-118.66, 2 +REO00050, 9,60SW_REO ,41.88,-118.82, 2 +REO00051, 9,70SW_REO ,41.76,-118.98, 2 +REO00052, 9,80SW_REO ,41.64,-119.13, 2 +REO00053, 9,20WSW_REO ,42.46,-118.29, 2 +REO00054, 9,30WSW_REO ,42.40,-118.50, 2 +REO00055, 9,40WSW_REO ,42.33,-118.70, 2 +REO00056, 9,50WSW_REO ,42.27,-118.91, 2 +REO00057, 9,60WSW_REO ,42.20,-119.12, 2 +REO00058, 9,20W_REO ,42.59,-118.32, 2 +REO00059, 9,30W_REO ,42.59,-118.55, 2 +REO00060, 9,40W_REO ,42.59,-118.77, 2 +REO00061, 9,50W_REO ,42.58,-119.00, 2 +REO00062, 9,20WNW_REO ,42.72,-118.29, 2 +REO00063, 9,30WNW_REO ,42.78,-118.50, 2 +REO00064, 9,40WNW_REO ,42.84,-118.71, 2 +REO00065, 9,50WNW_REO ,42.90,-118.92, 2 +REO00066, 9,60WNW_REO ,42.97,-119.13, 2 +REO00067, 9,20NW_REO ,42.83,-118.19, 2 +REO00068, 9,30NW_REO ,42.94,-118.35, 2 +REO00069, 9,40NW_REO ,43.06,-118.51, 2 +REO00070, 9,50NW_REO ,43.18,-118.68, 2 +REO00071, 9,60NW_REO ,43.29,-118.84, 2 +REO00072, 9,70NW_REO ,43.41,-119.00, 2 +REO00073, 9,80NW_REO ,43.52,-119.17, 2 +REO00074, 9,20NNW_REO ,42.90,-118.04, 2 +REO00075, 9,30NNW_REO ,43.05,-118.13, 2 +REO00076, 9,40NNW_REO ,43.20,-118.22, 2 +REO00077, 9,50NNW_REO ,43.36,-118.31, 2 +REO00078, 9,60NNW_REO ,43.51,-118.40, 2 LAX00000, 9,LAX ,33.93,-118.43, 1 LAX00001, 9,20N_LAX ,34.26,-118.43, 2 LAX00002, 9,30N_LAX ,34.43,-118.43, 2 @@ -19210,40 +19269,47 @@ FMG00046, 9,50SSE_FMG ,38.76,-119.25, 2 FMG00047, 9,60SSE_FMG ,38.61,-119.17, 2 FMG00048, 9,70SSE_FMG ,38.45,-119.09, 2 FMG00049, 9,20S_FMG ,39.20,-119.66, 2 -FMG00050, 9,60S_FMG ,38.53,-119.66, 2 -FMG00051, 9,70S_FMG ,38.36,-119.66, 2 -FMG00052, 9,80S_FMG ,38.20,-119.66, 2 -FMG00053, 9,20SSW_FMG ,39.22,-119.82, 2 -FMG00054, 9,70SSW_FMG ,38.45,-120.23, 2 -FMG00055, 9,20SW_FMG ,39.29,-119.96, 2 -FMG00056, 9,50SW_FMG ,38.94,-120.42, 2 -FMG00057, 9,60SW_FMG ,38.82,-120.57, 2 -FMG00058, 9,20WSW_FMG ,39.40,-120.06, 2 -FMG00059, 9,30WSW_FMG ,39.34,-120.26, 2 -FMG00060, 9,40WSW_FMG ,39.27,-120.46, 2 -FMG00061, 9,50WSW_FMG ,39.21,-120.65, 2 -FMG00062, 9,60WSW_FMG ,39.14,-120.85, 2 -FMG00063, 9,20W_FMG ,39.53,-120.09, 2 -FMG00064, 9,30W_FMG ,39.53,-120.31, 2 -FMG00065, 9,40W_FMG ,39.53,-120.52, 2 -FMG00066, 9,50W_FMG ,39.53,-120.74, 2 -FMG00067, 9,60W_FMG ,39.52,-120.96, 2 -FMG00068, 9,20WNW_FMG ,39.66,-120.06, 2 -FMG00069, 9,30WNW_FMG ,39.72,-120.26, 2 -FMG00070, 9,40WNW_FMG ,39.78,-120.46, 2 -FMG00071, 9,50WNW_FMG ,39.84,-120.66, 2 -FMG00072, 9,20NW_FMG ,39.77,-119.97, 2 -FMG00073, 9,30NW_FMG ,39.88,-120.12, 2 -FMG00074, 9,40NW_FMG ,40.00,-120.27, 2 -FMG00075, 9,50NW_FMG ,40.12,-120.43, 2 -FMG00076, 9,60NW_FMG ,40.23,-120.59, 2 -FMG00077, 9,20NNW_FMG ,39.84,-119.83, 2 -FMG00078, 9,30NNW_FMG ,39.99,-119.91, 2 -FMG00079, 9,40NNW_FMG ,40.15,-119.99, 2 -FMG00080, 9,50NNW_FMG ,40.30,-120.08, 2 -FMG00081, 9,60NNW_FMG ,40.45,-120.16, 2 -FMG00082, 9,70NNW_FMG ,40.61,-120.25, 2 -FMG00083, 9,80NNW_FMG ,40.76,-120.33, 2 +FMG00050, 9,30S_FMG ,39.03,-119.66, 2 +FMG00051, 9,40S_FMG ,38.86,-119.66, 2 +FMG00052, 9,50S_FMG ,38.70,-119.66, 2 +FMG00053, 9,60S_FMG ,38.53,-119.66, 2 +FMG00054, 9,70S_FMG ,38.36,-119.66, 2 +FMG00055, 9,80S_FMG ,38.20,-119.66, 2 +FMG00056, 9,20SSW_FMG ,39.22,-119.82, 2 +FMG00057, 9,30SSW_FMG ,39.07,-119.91, 2 +FMG00058, 9,60SSW_FMG ,38.61,-120.15, 2 +FMG00059, 9,70SSW_FMG ,38.45,-120.23, 2 +FMG00060, 9,20SW_FMG ,39.29,-119.96, 2 +FMG00061, 9,30SW_FMG ,39.18,-120.12, 2 +FMG00062, 9,40SW_FMG ,39.06,-120.27, 2 +FMG00063, 9,50SW_FMG ,38.94,-120.42, 2 +FMG00064, 9,60SW_FMG ,38.82,-120.57, 2 +FMG00065, 9,20WSW_FMG ,39.40,-120.06, 2 +FMG00066, 9,30WSW_FMG ,39.34,-120.26, 2 +FMG00067, 9,40WSW_FMG ,39.27,-120.46, 2 +FMG00068, 9,50WSW_FMG ,39.21,-120.65, 2 +FMG00069, 9,60WSW_FMG ,39.14,-120.85, 2 +FMG00070, 9,20W_FMG ,39.53,-120.09, 2 +FMG00071, 9,30W_FMG ,39.53,-120.31, 2 +FMG00072, 9,40W_FMG ,39.53,-120.52, 2 +FMG00073, 9,50W_FMG ,39.53,-120.74, 2 +FMG00074, 9,60W_FMG ,39.52,-120.96, 2 +FMG00075, 9,20WNW_FMG ,39.66,-120.06, 2 +FMG00076, 9,30WNW_FMG ,39.72,-120.26, 2 +FMG00077, 9,40WNW_FMG ,39.78,-120.46, 2 +FMG00078, 9,50WNW_FMG ,39.84,-120.66, 2 +FMG00079, 9,20NW_FMG ,39.77,-119.97, 2 +FMG00080, 9,30NW_FMG ,39.88,-120.12, 2 +FMG00081, 9,40NW_FMG ,40.00,-120.27, 2 +FMG00082, 9,50NW_FMG ,40.12,-120.43, 2 +FMG00083, 9,60NW_FMG ,40.23,-120.59, 2 +FMG00084, 9,20NNW_FMG ,39.84,-119.83, 2 +FMG00085, 9,30NNW_FMG ,39.99,-119.91, 2 +FMG00086, 9,40NNW_FMG ,40.15,-119.99, 2 +FMG00087, 9,50NNW_FMG ,40.30,-120.08, 2 +FMG00088, 9,60NNW_FMG ,40.45,-120.16, 2 +FMG00089, 9,70NNW_FMG ,40.61,-120.25, 2 +FMG00090, 9,80NNW_FMG ,40.76,-120.33, 2 RZS00000, 9,RZS ,34.51,-119.77, 1 RZS00001, 9,20N_RZS ,34.84,-119.77, 2 RZS00002, 9,30N_RZS ,35.01,-119.77, 2 @@ -19505,59 +19571,66 @@ LKV00021, 9,30E_LKV ,42.49,-119.83, 2 LKV00022, 9,40E_LKV ,42.49,-119.61, 2 LKV00023, 9,50E_LKV ,42.48,-119.38, 2 LKV00024, 9,20ESE_LKV ,42.36,-120.09, 2 -LKV00025, 9,60ESE_LKV ,42.10,-119.27, 2 -LKV00026, 9,20SE_LKV ,42.25,-120.19, 2 -LKV00027, 9,70SE_LKV ,41.66,-119.41, 2 -LKV00028, 9,80SE_LKV ,41.54,-119.25, 2 -LKV00029, 9,20SSE_LKV ,42.18,-120.34, 2 -LKV00030, 9,50SSE_LKV ,41.72,-120.08, 2 -LKV00031, 9,60SSE_LKV ,41.57,-120.00, 2 -LKV00032, 9,70SSE_LKV ,41.41,-119.92, 2 -LKV00033, 9,80SSE_LKV ,41.26,-119.83, 2 -LKV00034, 9,90SSE_LKV ,41.10,-119.75, 2 -LKV00035, 9,100SSE_LKV ,40.95,-119.67, 2 -LKV00036, 9,20S_LKV ,42.16,-120.51, 2 -LKV00037, 9,30S_LKV ,41.99,-120.51, 2 -LKV00038, 9,40S_LKV ,41.82,-120.51, 2 -LKV00039, 9,50S_LKV ,41.66,-120.51, 2 -LKV00040, 9,60S_LKV ,41.49,-120.51, 2 -LKV00041, 9,70S_LKV ,41.32,-120.51, 2 -LKV00042, 9,80S_LKV ,41.16,-120.51, 2 -LKV00043, 9,90S_LKV ,40.99,-120.51, 2 -LKV00044, 9,100S_LKV ,40.82,-120.51, 2 -LKV00045, 9,20SSW_LKV ,42.18,-120.68, 2 -LKV00046, 9,30SSW_LKV ,42.03,-120.77, 2 -LKV00047, 9,40SSW_LKV ,41.87,-120.85, 2 -LKV00048, 9,50SSW_LKV ,41.72,-120.94, 2 -LKV00049, 9,60SSW_LKV ,41.57,-121.02, 2 -LKV00050, 9,70SSW_LKV ,41.41,-121.10, 2 -LKV00051, 9,80SSW_LKV ,41.26,-121.19, 2 -LKV00052, 9,90SSW_LKV ,41.10,-121.27, 2 -LKV00053, 9,20SW_LKV ,42.25,-120.83, 2 -LKV00054, 9,30SW_LKV ,42.14,-120.99, 2 -LKV00055, 9,40SW_LKV ,42.02,-121.14, 2 -LKV00056, 9,50SW_LKV ,41.90,-121.30, 2 -LKV00057, 9,60SW_LKV ,41.78,-121.46, 2 -LKV00058, 9,70SW_LKV ,41.66,-121.61, 2 -LKV00059, 9,20WSW_LKV ,42.36,-120.93, 2 -LKV00060, 9,30WSW_LKV ,42.30,-121.13, 2 -LKV00061, 9,40WSW_LKV ,42.23,-121.34, 2 -LKV00062, 9,50WSW_LKV ,42.17,-121.55, 2 -LKV00063, 9,20W_LKV ,42.49,-120.96, 2 -LKV00064, 9,30W_LKV ,42.49,-121.19, 2 -LKV00065, 9,40W_LKV ,42.49,-121.41, 2 -LKV00066, 9,50W_LKV ,42.48,-121.64, 2 -LKV00067, 9,20WNW_LKV ,42.62,-120.93, 2 -LKV00068, 9,30WNW_LKV ,42.68,-121.14, 2 -LKV00069, 9,40WNW_LKV ,42.74,-121.35, 2 -LKV00070, 9,50WNW_LKV ,42.80,-121.56, 2 -LKV00071, 9,20NW_LKV ,42.73,-120.83, 2 -LKV00072, 9,30NW_LKV ,42.84,-120.99, 2 -LKV00073, 9,40NW_LKV ,42.96,-121.15, 2 -LKV00074, 9,50NW_LKV ,43.08,-121.32, 2 -LKV00075, 9,20NNW_LKV ,42.80,-120.68, 2 -LKV00076, 9,30NNW_LKV ,42.95,-120.77, 2 -LKV00077, 9,40NNW_LKV ,43.10,-120.86, 2 +LKV00025, 9,30ESE_LKV ,42.30,-119.89, 2 +LKV00026, 9,40ESE_LKV ,42.23,-119.68, 2 +LKV00027, 9,50ESE_LKV ,42.17,-119.47, 2 +LKV00028, 9,60ESE_LKV ,42.10,-119.27, 2 +LKV00029, 9,20SE_LKV ,42.25,-120.19, 2 +LKV00030, 9,30SE_LKV ,42.14,-120.03, 2 +LKV00031, 9,60SE_LKV ,41.78,-119.56, 2 +LKV00032, 9,70SE_LKV ,41.66,-119.41, 2 +LKV00033, 9,80SE_LKV ,41.54,-119.25, 2 +LKV00034, 9,20SSE_LKV ,42.18,-120.34, 2 +LKV00035, 9,30SSE_LKV ,42.03,-120.25, 2 +LKV00036, 9,40SSE_LKV ,41.87,-120.17, 2 +LKV00037, 9,50SSE_LKV ,41.72,-120.08, 2 +LKV00038, 9,60SSE_LKV ,41.57,-120.00, 2 +LKV00039, 9,70SSE_LKV ,41.41,-119.92, 2 +LKV00040, 9,80SSE_LKV ,41.26,-119.83, 2 +LKV00041, 9,90SSE_LKV ,41.10,-119.75, 2 +LKV00042, 9,100SSE_LKV ,40.95,-119.67, 2 +LKV00043, 9,20S_LKV ,42.16,-120.51, 2 +LKV00044, 9,30S_LKV ,41.99,-120.51, 2 +LKV00045, 9,40S_LKV ,41.82,-120.51, 2 +LKV00046, 9,50S_LKV ,41.66,-120.51, 2 +LKV00047, 9,60S_LKV ,41.49,-120.51, 2 +LKV00048, 9,70S_LKV ,41.32,-120.51, 2 +LKV00049, 9,80S_LKV ,41.16,-120.51, 2 +LKV00050, 9,90S_LKV ,40.99,-120.51, 2 +LKV00051, 9,100S_LKV ,40.82,-120.51, 2 +LKV00052, 9,20SSW_LKV ,42.18,-120.68, 2 +LKV00053, 9,30SSW_LKV ,42.03,-120.77, 2 +LKV00054, 9,40SSW_LKV ,41.87,-120.85, 2 +LKV00055, 9,50SSW_LKV ,41.72,-120.94, 2 +LKV00056, 9,60SSW_LKV ,41.57,-121.02, 2 +LKV00057, 9,70SSW_LKV ,41.41,-121.10, 2 +LKV00058, 9,80SSW_LKV ,41.26,-121.19, 2 +LKV00059, 9,90SSW_LKV ,41.10,-121.27, 2 +LKV00060, 9,20SW_LKV ,42.25,-120.83, 2 +LKV00061, 9,30SW_LKV ,42.14,-120.99, 2 +LKV00062, 9,40SW_LKV ,42.02,-121.14, 2 +LKV00063, 9,50SW_LKV ,41.90,-121.30, 2 +LKV00064, 9,60SW_LKV ,41.78,-121.46, 2 +LKV00065, 9,70SW_LKV ,41.66,-121.61, 2 +LKV00066, 9,20WSW_LKV ,42.36,-120.93, 2 +LKV00067, 9,30WSW_LKV ,42.30,-121.13, 2 +LKV00068, 9,40WSW_LKV ,42.23,-121.34, 2 +LKV00069, 9,50WSW_LKV ,42.17,-121.55, 2 +LKV00070, 9,20W_LKV ,42.49,-120.96, 2 +LKV00071, 9,30W_LKV ,42.49,-121.19, 2 +LKV00072, 9,40W_LKV ,42.49,-121.41, 2 +LKV00073, 9,50W_LKV ,42.48,-121.64, 2 +LKV00074, 9,20WNW_LKV ,42.62,-120.93, 2 +LKV00075, 9,30WNW_LKV ,42.68,-121.14, 2 +LKV00076, 9,40WNW_LKV ,42.74,-121.35, 2 +LKV00077, 9,50WNW_LKV ,42.80,-121.56, 2 +LKV00078, 9,20NW_LKV ,42.73,-120.83, 2 +LKV00079, 9,30NW_LKV ,42.84,-120.99, 2 +LKV00080, 9,40NW_LKV ,42.96,-121.15, 2 +LKV00081, 9,50NW_LKV ,43.08,-121.32, 2 +LKV00082, 9,20NNW_LKV ,42.80,-120.68, 2 +LKV00083, 9,30NNW_LKV ,42.95,-120.77, 2 +LKV00084, 9,40NNW_LKV ,43.10,-120.86, 2 YDC00000, 9,YDC ,49.47,-120.52, 1 YDC00001, 9,20N_YDC ,49.80,-120.52, 2 YDC00002, 9,30N_YDC ,49.97,-120.52, 2 @@ -19583,129 +19656,136 @@ YDC00021, 9,220N_YDC ,53.13,-120.52, 2 YDC00022, 9,230N_YDC ,53.30,-120.52, 2 YDC00023, 9,240N_YDC ,53.47,-120.52, 2 YDC00024, 9,250N_YDC ,53.63,-120.52, 2 -YDC00025, 9,30NNE_YDC ,49.93,-120.22, 2 -YDC00026, 9,40NNE_YDC ,50.08,-120.12, 2 -YDC00027, 9,50NNE_YDC ,50.24,-120.02, 2 -YDC00028, 9,60NNE_YDC ,50.39,-119.92, 2 -YDC00029, 9,70NNE_YDC ,50.55,-119.82, 2 -YDC00030, 9,80NNE_YDC ,50.70,-119.72, 2 -YDC00031, 9,90NNE_YDC ,50.85,-119.61, 2 -YDC00032, 9,100NNE_YDC ,51.00,-119.51, 2 -YDC00033, 9,110NNE_YDC ,51.16,-119.40, 2 -YDC00034, 9,120NNE_YDC ,51.31,-119.30, 2 -YDC00035, 9,130NNE_YDC ,51.46,-119.19, 2 -YDC00036, 9,140NNE_YDC ,51.62,-119.08, 2 -YDC00037, 9,150NNE_YDC ,51.77,-118.98, 2 -YDC00038, 9,160NNE_YDC ,51.92,-118.87, 2 -YDC00039, 9,170NNE_YDC ,52.07,-118.76, 2 -YDC00040, 9,180NNE_YDC ,52.23,-118.65, 2 -YDC00041, 9,190NNE_YDC ,52.38,-118.54, 2 -YDC00042, 9,200NNE_YDC ,52.53,-118.43, 2 -YDC00043, 9,210NNE_YDC ,52.68,-118.31, 2 -YDC00044, 9,30NE_YDC ,49.82,-119.97, 2 -YDC00045, 9,40NE_YDC ,49.94,-119.79, 2 -YDC00046, 9,50NE_YDC ,50.06,-119.60, 2 -YDC00047, 9,60NE_YDC ,50.17,-119.42, 2 -YDC00048, 9,70NE_YDC ,50.29,-119.23, 2 -YDC00049, 9,80NE_YDC ,50.40,-119.04, 2 -YDC00050, 9,90NE_YDC ,50.52,-118.85, 2 -YDC00051, 9,100NE_YDC ,50.63,-118.66, 2 -YDC00052, 9,110NE_YDC ,50.75,-118.47, 2 -YDC00053, 9,120NE_YDC ,50.86,-118.28, 2 -YDC00054, 9,30ENE_YDC ,49.66,-119.81, 2 -YDC00055, 9,40ENE_YDC ,49.72,-119.57, 2 -YDC00056, 9,50ENE_YDC ,49.78,-119.33, 2 -YDC00057, 9,60ENE_YDC ,49.84,-119.09, 2 -YDC00058, 9,70ENE_YDC ,49.90,-118.85, 2 -YDC00059, 9,80ENE_YDC ,49.96,-118.61, 2 -YDC00060, 9,90ENE_YDC ,50.02,-118.36, 2 -YDC00061, 9,30E_YDC ,49.47,-119.75, 2 -YDC00062, 9,40E_YDC ,49.47,-119.49, 2 -YDC00063, 9,50E_YDC ,49.46,-119.24, 2 -YDC00064, 9,60E_YDC ,49.46,-118.98, 2 -YDC00065, 9,70E_YDC ,49.46,-118.73, 2 -YDC00066, 9,80E_YDC ,49.45,-118.47, 2 -YDC00067, 9,90E_YDC ,49.45,-118.21, 2 -YDC00068, 9,30ESE_YDC ,49.28,-119.81, 2 -YDC00069, 9,40ESE_YDC ,49.21,-119.58, 2 -YDC00070, 9,50ESE_YDC ,49.15,-119.34, 2 -YDC00071, 9,60ESE_YDC ,49.08,-119.11, 2 -YDC00072, 9,70ESE_YDC ,49.01,-118.88, 2 -YDC00073, 9,80ESE_YDC ,48.94,-118.65, 2 -YDC00074, 9,90ESE_YDC ,48.88,-118.41, 2 -YDC00075, 9,30SE_YDC ,49.12,-119.98, 2 -YDC00076, 9,40SE_YDC ,49.00,-119.80, 2 -YDC00077, 9,50SE_YDC ,48.88,-119.62, 2 -YDC00078, 9,60SE_YDC ,48.76,-119.45, 2 -YDC00079, 9,70SE_YDC ,48.64,-119.27, 2 -YDC00080, 9,80SE_YDC ,48.52,-119.10, 2 -YDC00081, 9,30SSE_YDC ,49.01,-120.23, 2 -YDC00082, 9,40SSE_YDC ,48.85,-120.13, 2 -YDC00083, 9,50SSE_YDC ,48.70,-120.04, 2 -YDC00084, 9,60SSE_YDC ,48.55,-119.94, 2 -YDC00085, 9,70SSE_YDC ,48.39,-119.85, 2 -YDC00086, 9,20S_YDC ,49.14,-120.52, 2 -YDC00087, 9,30S_YDC ,48.97,-120.52, 2 -YDC00088, 9,40S_YDC ,48.80,-120.52, 2 -YDC00089, 9,50S_YDC ,48.64,-120.52, 2 -YDC00090, 9,60S_YDC ,48.47,-120.52, 2 -YDC00091, 9,70S_YDC ,48.30,-120.52, 2 -YDC00092, 9,80S_YDC ,48.14,-120.52, 2 -YDC00093, 9,20SSW_YDC ,49.16,-120.71, 2 -YDC00094, 9,30SSW_YDC ,49.01,-120.81, 2 -YDC00095, 9,40SSW_YDC ,48.85,-120.91, 2 -YDC00096, 9,50SSW_YDC ,48.70,-121.00, 2 -YDC00097, 9,60SSW_YDC ,48.55,-121.10, 2 -YDC00098, 9,70SSW_YDC ,48.39,-121.19, 2 -YDC00099, 9,20SW_YDC ,49.23,-120.88, 2 -YDC00100, 9,30SW_YDC ,49.12,-121.06, 2 -YDC00101, 9,40SW_YDC ,49.00,-121.24, 2 -YDC00102, 9,50SW_YDC ,48.88,-121.42, 2 -YDC00103, 9,20WSW_YDC ,49.34,-120.99, 2 -YDC00104, 9,30WSW_YDC ,49.28,-121.23, 2 -YDC00105, 9,40WSW_YDC ,49.21,-121.46, 2 -YDC00106, 9,20W_YDC ,49.47,-121.03, 2 -YDC00107, 9,30W_YDC ,49.47,-121.29, 2 -YDC00108, 9,40W_YDC ,49.47,-121.55, 2 -YDC00109, 9,50W_YDC ,49.46,-121.80, 2 -YDC00110, 9,20WNW_YDC ,49.60,-120.99, 2 -YDC00111, 9,30WNW_YDC ,49.66,-121.23, 2 -YDC00112, 9,40WNW_YDC ,49.72,-121.47, 2 -YDC00113, 9,50WNW_YDC ,49.78,-121.71, 2 -YDC00114, 9,60WNW_YDC ,49.84,-121.95, 2 -YDC00115, 9,20NW_YDC ,49.70,-120.88, 2 -YDC00116, 9,30NW_YDC ,49.82,-121.07, 2 -YDC00117, 9,40NW_YDC ,49.94,-121.25, 2 -YDC00118, 9,50NW_YDC ,50.06,-121.44, 2 -YDC00119, 9,60NW_YDC ,50.17,-121.62, 2 -YDC00120, 9,70NW_YDC ,50.29,-121.81, 2 -YDC00121, 9,80NW_YDC ,50.40,-122.00, 2 -YDC00122, 9,90NW_YDC ,50.52,-122.19, 2 -YDC00123, 9,100NW_YDC ,50.63,-122.38, 2 -YDC00124, 9,110NW_YDC ,50.75,-122.57, 2 -YDC00125, 9,20NNW_YDC ,49.78,-120.72, 2 -YDC00126, 9,30NNW_YDC ,49.93,-120.82, 2 -YDC00127, 9,40NNW_YDC ,50.08,-120.92, 2 -YDC00128, 9,50NNW_YDC ,50.24,-121.02, 2 -YDC00129, 9,60NNW_YDC ,50.39,-121.12, 2 -YDC00130, 9,70NNW_YDC ,50.55,-121.22, 2 -YDC00131, 9,80NNW_YDC ,50.70,-121.32, 2 -YDC00132, 9,90NNW_YDC ,50.85,-121.43, 2 -YDC00133, 9,100NNW_YDC ,51.00,-121.53, 2 -YDC00134, 9,110NNW_YDC ,51.16,-121.64, 2 -YDC00135, 9,120NNW_YDC ,51.31,-121.74, 2 -YDC00136, 9,130NNW_YDC ,51.46,-121.85, 2 -YDC00137, 9,140NNW_YDC ,51.62,-121.96, 2 -YDC00138, 9,150NNW_YDC ,51.77,-122.06, 2 -YDC00139, 9,160NNW_YDC ,51.92,-122.17, 2 -YDC00140, 9,170NNW_YDC ,52.07,-122.28, 2 -YDC00141, 9,180NNW_YDC ,52.23,-122.39, 2 -YDC00142, 9,190NNW_YDC ,52.38,-122.50, 2 -YDC00143, 9,200NNW_YDC ,52.53,-122.61, 2 -YDC00144, 9,210NNW_YDC ,52.68,-122.73, 2 -YDC00145, 9,220NNW_YDC ,52.83,-122.84, 2 -YDC00146, 9,230NNW_YDC ,52.98,-122.95, 2 -YDC00147, 9,240NNW_YDC ,53.14,-123.07, 2 +YDC00025, 9,20NNE_YDC ,49.78,-120.32, 2 +YDC00026, 9,30NNE_YDC ,49.93,-120.22, 2 +YDC00027, 9,40NNE_YDC ,50.08,-120.12, 2 +YDC00028, 9,50NNE_YDC ,50.24,-120.02, 2 +YDC00029, 9,60NNE_YDC ,50.39,-119.92, 2 +YDC00030, 9,70NNE_YDC ,50.55,-119.82, 2 +YDC00031, 9,80NNE_YDC ,50.70,-119.72, 2 +YDC00032, 9,90NNE_YDC ,50.85,-119.61, 2 +YDC00033, 9,100NNE_YDC ,51.00,-119.51, 2 +YDC00034, 9,110NNE_YDC ,51.16,-119.40, 2 +YDC00035, 9,120NNE_YDC ,51.31,-119.30, 2 +YDC00036, 9,130NNE_YDC ,51.46,-119.19, 2 +YDC00037, 9,140NNE_YDC ,51.62,-119.08, 2 +YDC00038, 9,150NNE_YDC ,51.77,-118.98, 2 +YDC00039, 9,160NNE_YDC ,51.92,-118.87, 2 +YDC00040, 9,170NNE_YDC ,52.07,-118.76, 2 +YDC00041, 9,180NNE_YDC ,52.23,-118.65, 2 +YDC00042, 9,190NNE_YDC ,52.38,-118.54, 2 +YDC00043, 9,200NNE_YDC ,52.53,-118.43, 2 +YDC00044, 9,210NNE_YDC ,52.68,-118.31, 2 +YDC00045, 9,20NE_YDC ,49.70,-120.16, 2 +YDC00046, 9,30NE_YDC ,49.82,-119.97, 2 +YDC00047, 9,40NE_YDC ,49.94,-119.79, 2 +YDC00048, 9,50NE_YDC ,50.06,-119.60, 2 +YDC00049, 9,60NE_YDC ,50.17,-119.42, 2 +YDC00050, 9,70NE_YDC ,50.29,-119.23, 2 +YDC00051, 9,80NE_YDC ,50.40,-119.04, 2 +YDC00052, 9,90NE_YDC ,50.52,-118.85, 2 +YDC00053, 9,100NE_YDC ,50.63,-118.66, 2 +YDC00054, 9,110NE_YDC ,50.75,-118.47, 2 +YDC00055, 9,120NE_YDC ,50.86,-118.28, 2 +YDC00056, 9,20ENE_YDC ,49.60,-120.05, 2 +YDC00057, 9,30ENE_YDC ,49.66,-119.81, 2 +YDC00058, 9,40ENE_YDC ,49.72,-119.57, 2 +YDC00059, 9,50ENE_YDC ,49.78,-119.33, 2 +YDC00060, 9,60ENE_YDC ,49.84,-119.09, 2 +YDC00061, 9,70ENE_YDC ,49.90,-118.85, 2 +YDC00062, 9,80ENE_YDC ,49.96,-118.61, 2 +YDC00063, 9,90ENE_YDC ,50.02,-118.36, 2 +YDC00064, 9,20E_YDC ,49.47,-120.01, 2 +YDC00065, 9,30E_YDC ,49.47,-119.75, 2 +YDC00066, 9,40E_YDC ,49.47,-119.49, 2 +YDC00067, 9,50E_YDC ,49.46,-119.24, 2 +YDC00068, 9,60E_YDC ,49.46,-118.98, 2 +YDC00069, 9,70E_YDC ,49.46,-118.73, 2 +YDC00070, 9,80E_YDC ,49.45,-118.47, 2 +YDC00071, 9,90E_YDC ,49.45,-118.21, 2 +YDC00072, 9,20ESE_YDC ,49.34,-120.05, 2 +YDC00073, 9,30ESE_YDC ,49.28,-119.81, 2 +YDC00074, 9,40ESE_YDC ,49.21,-119.58, 2 +YDC00075, 9,50ESE_YDC ,49.15,-119.34, 2 +YDC00076, 9,60ESE_YDC ,49.08,-119.11, 2 +YDC00077, 9,70ESE_YDC ,49.01,-118.88, 2 +YDC00078, 9,80ESE_YDC ,48.94,-118.65, 2 +YDC00079, 9,90ESE_YDC ,48.88,-118.41, 2 +YDC00080, 9,20SE_YDC ,49.23,-120.16, 2 +YDC00081, 9,30SE_YDC ,49.12,-119.98, 2 +YDC00082, 9,40SE_YDC ,49.00,-119.80, 2 +YDC00083, 9,50SE_YDC ,48.88,-119.62, 2 +YDC00084, 9,60SE_YDC ,48.76,-119.45, 2 +YDC00085, 9,70SE_YDC ,48.64,-119.27, 2 +YDC00086, 9,80SE_YDC ,48.52,-119.10, 2 +YDC00087, 9,20SSE_YDC ,49.16,-120.33, 2 +YDC00088, 9,30SSE_YDC ,49.01,-120.23, 2 +YDC00089, 9,40SSE_YDC ,48.85,-120.13, 2 +YDC00090, 9,50SSE_YDC ,48.70,-120.04, 2 +YDC00091, 9,60SSE_YDC ,48.55,-119.94, 2 +YDC00092, 9,70SSE_YDC ,48.39,-119.85, 2 +YDC00093, 9,20S_YDC ,49.14,-120.52, 2 +YDC00094, 9,30S_YDC ,48.97,-120.52, 2 +YDC00095, 9,40S_YDC ,48.80,-120.52, 2 +YDC00096, 9,50S_YDC ,48.64,-120.52, 2 +YDC00097, 9,60S_YDC ,48.47,-120.52, 2 +YDC00098, 9,70S_YDC ,48.30,-120.52, 2 +YDC00099, 9,80S_YDC ,48.14,-120.52, 2 +YDC00100, 9,20SSW_YDC ,49.16,-120.71, 2 +YDC00101, 9,30SSW_YDC ,49.01,-120.81, 2 +YDC00102, 9,40SSW_YDC ,48.85,-120.91, 2 +YDC00103, 9,50SSW_YDC ,48.70,-121.00, 2 +YDC00104, 9,60SSW_YDC ,48.55,-121.10, 2 +YDC00105, 9,70SSW_YDC ,48.39,-121.19, 2 +YDC00106, 9,20SW_YDC ,49.23,-120.88, 2 +YDC00107, 9,30SW_YDC ,49.12,-121.06, 2 +YDC00108, 9,40SW_YDC ,49.00,-121.24, 2 +YDC00109, 9,50SW_YDC ,48.88,-121.42, 2 +YDC00110, 9,20WSW_YDC ,49.34,-120.99, 2 +YDC00111, 9,30WSW_YDC ,49.28,-121.23, 2 +YDC00112, 9,40WSW_YDC ,49.21,-121.46, 2 +YDC00113, 9,20W_YDC ,49.47,-121.03, 2 +YDC00114, 9,30W_YDC ,49.47,-121.29, 2 +YDC00115, 9,40W_YDC ,49.47,-121.55, 2 +YDC00116, 9,50W_YDC ,49.46,-121.80, 2 +YDC00117, 9,20WNW_YDC ,49.60,-120.99, 2 +YDC00118, 9,30WNW_YDC ,49.66,-121.23, 2 +YDC00119, 9,40WNW_YDC ,49.72,-121.47, 2 +YDC00120, 9,50WNW_YDC ,49.78,-121.71, 2 +YDC00121, 9,60WNW_YDC ,49.84,-121.95, 2 +YDC00122, 9,20NW_YDC ,49.70,-120.88, 2 +YDC00123, 9,30NW_YDC ,49.82,-121.07, 2 +YDC00124, 9,40NW_YDC ,49.94,-121.25, 2 +YDC00125, 9,50NW_YDC ,50.06,-121.44, 2 +YDC00126, 9,60NW_YDC ,50.17,-121.62, 2 +YDC00127, 9,70NW_YDC ,50.29,-121.81, 2 +YDC00128, 9,80NW_YDC ,50.40,-122.00, 2 +YDC00129, 9,90NW_YDC ,50.52,-122.19, 2 +YDC00130, 9,100NW_YDC ,50.63,-122.38, 2 +YDC00131, 9,110NW_YDC ,50.75,-122.57, 2 +YDC00132, 9,20NNW_YDC ,49.78,-120.72, 2 +YDC00133, 9,30NNW_YDC ,49.93,-120.82, 2 +YDC00134, 9,40NNW_YDC ,50.08,-120.92, 2 +YDC00135, 9,50NNW_YDC ,50.24,-121.02, 2 +YDC00136, 9,60NNW_YDC ,50.39,-121.12, 2 +YDC00137, 9,70NNW_YDC ,50.55,-121.22, 2 +YDC00138, 9,80NNW_YDC ,50.70,-121.32, 2 +YDC00139, 9,90NNW_YDC ,50.85,-121.43, 2 +YDC00140, 9,100NNW_YDC ,51.00,-121.53, 2 +YDC00141, 9,110NNW_YDC ,51.16,-121.64, 2 +YDC00142, 9,120NNW_YDC ,51.31,-121.74, 2 +YDC00143, 9,130NNW_YDC ,51.46,-121.85, 2 +YDC00144, 9,140NNW_YDC ,51.62,-121.96, 2 +YDC00145, 9,150NNW_YDC ,51.77,-122.06, 2 +YDC00146, 9,160NNW_YDC ,51.92,-122.17, 2 +YDC00147, 9,170NNW_YDC ,52.07,-122.28, 2 +YDC00148, 9,180NNW_YDC ,52.23,-122.39, 2 +YDC00149, 9,190NNW_YDC ,52.38,-122.50, 2 +YDC00150, 9,200NNW_YDC ,52.53,-122.61, 2 +YDC00151, 9,210NNW_YDC ,52.68,-122.73, 2 +YDC00152, 9,220NNW_YDC ,52.83,-122.84, 2 +YDC00153, 9,230NNW_YDC ,52.98,-122.95, 2 +YDC00154, 9,240NNW_YDC ,53.14,-123.07, 2 MOD00000, 9,MOD ,37.63,-120.96, 1 MOD00001, 9,20N_MOD ,37.96,-120.96, 2 MOD00002, 9,20NNE_MOD ,37.94,-120.80, 2 @@ -19991,7 +20071,7 @@ OAK00021, 9,20SW_OAK ,37.49,-122.52, 2 OAK00022, 9,30SW_OAK ,37.38,-122.66, 2 OAK00023, 9,40SW_OAK ,37.26,-122.81, 2 OAK00024, 9,50SW_OAK ,37.14,-122.96, 2 -OAK00025, 9,60SW_OAK ,37.02,-123.10, 2 +OAK00025, 9,60SW_OAK ,37.02,-123.11, 2 OAK00026, 9,20WSW_OAK ,37.60,-122.61, 2 RBL00000, 9,RBL ,40.10,-122.24, 1 RBL00001, 9,20N_RBL ,40.43,-122.24, 2 @@ -20127,106 +20207,106 @@ SEA00057, 9,30NW_SEA ,47.79,-122.84, 2 SEA00058, 9,40NW_SEA ,47.91,-123.01, 2 SEA00059, 9,20NNW_SEA ,47.75,-122.50, 2 SEA00060, 9,30NNW_SEA ,47.90,-122.60, 2 -BLI00000, 9,BLI ,48.95,-122.58, 1 -BLI00001, 9,20N_BLI ,49.28,-122.58, 2 -BLI00002, 9,30N_BLI ,49.45,-122.58, 2 -BLI00003, 9,40N_BLI ,49.62,-122.58, 2 -BLI00004, 9,50N_BLI ,49.78,-122.58, 2 -BLI00005, 9,60N_BLI ,49.95,-122.58, 2 -BLI00006, 9,70N_BLI ,50.12,-122.58, 2 -BLI00007, 9,80N_BLI ,50.28,-122.58, 2 -BLI00008, 9,90N_BLI ,50.45,-122.58, 2 -BLI00009, 9,100N_BLI ,50.62,-122.58, 2 -BLI00010, 9,110N_BLI ,50.78,-122.58, 2 -BLI00011, 9,20NNE_BLI ,49.26,-122.38, 2 -BLI00012, 9,30NNE_BLI ,49.41,-122.29, 2 -BLI00013, 9,40NNE_BLI ,49.56,-122.19, 2 -BLI00014, 9,50NNE_BLI ,49.72,-122.09, 2 -BLI00015, 9,20NE_BLI ,49.18,-122.22, 2 -BLI00016, 9,30NE_BLI ,49.30,-122.04, 2 -BLI00017, 9,40NE_BLI ,49.42,-121.86, 2 -BLI00018, 9,20ENE_BLI ,49.08,-122.11, 2 -BLI00019, 9,30ENE_BLI ,49.14,-121.87, 2 -BLI00020, 9,20E_BLI ,48.95,-122.07, 2 -BLI00021, 9,30E_BLI ,48.95,-121.82, 2 -BLI00022, 9,40E_BLI ,48.95,-121.57, 2 -BLI00023, 9,20ESE_BLI ,48.82,-122.11, 2 -BLI00024, 9,30ESE_BLI ,48.76,-121.88, 2 -BLI00025, 9,40ESE_BLI ,48.69,-121.65, 2 -BLI00026, 9,50ESE_BLI ,48.63,-121.42, 2 -BLI00027, 9,20SE_BLI ,48.71,-122.22, 2 -BLI00028, 9,30SE_BLI ,48.60,-122.05, 2 -BLI00029, 9,40SE_BLI ,48.48,-121.87, 2 -BLI00030, 9,50SE_BLI ,48.36,-121.69, 2 -BLI00031, 9,60SE_BLI ,48.24,-121.52, 2 -BLI00032, 9,70SE_BLI ,48.12,-121.35, 2 -BLI00033, 9,20SSE_BLI ,48.64,-122.39, 2 -BLI00034, 9,30SSE_BLI ,48.49,-122.29, 2 -BLI00035, 9,40SSE_BLI ,48.33,-122.20, 2 -BLI00036, 9,50SSE_BLI ,48.18,-122.10, 2 -BLI00037, 9,20S_BLI ,48.62,-122.58, 2 -BLI00038, 9,30S_BLI ,48.45,-122.58, 2 -BLI00039, 9,40S_BLI ,48.28,-122.58, 2 -BLI00040, 9,50S_BLI ,48.12,-122.58, 2 -BLI00041, 9,20SSW_BLI ,48.64,-122.77, 2 -BLI00042, 9,30SSW_BLI ,48.49,-122.87, 2 -BLI00043, 9,40SSW_BLI ,48.33,-122.96, 2 -BLI00044, 9,50SSW_BLI ,48.18,-123.06, 2 -BLI00045, 9,60SSW_BLI ,48.03,-123.15, 2 -BLI00046, 9,20SW_BLI ,48.71,-122.94, 2 -BLI00047, 9,30SW_BLI ,48.60,-123.11, 2 -BLI00048, 9,40SW_BLI ,48.48,-123.29, 2 -BLI00049, 9,50SW_BLI ,48.36,-123.47, 2 -BLI00050, 9,20WSW_BLI ,48.82,-123.05, 2 -BLI00051, 9,30WSW_BLI ,48.76,-123.28, 2 -BLI00052, 9,40WSW_BLI ,48.69,-123.51, 2 -BLI00053, 9,50WSW_BLI ,48.63,-123.74, 2 -BLI00054, 9,20W_BLI ,48.95,-123.09, 2 -BLI00055, 9,30W_BLI ,48.95,-123.34, 2 -BLI00056, 9,40W_BLI ,48.95,-123.59, 2 -BLI00057, 9,50W_BLI ,48.94,-123.85, 2 -BLI00058, 9,20WNW_BLI ,49.08,-123.05, 2 -BLI00059, 9,30WNW_BLI ,49.14,-123.29, 2 -BLI00060, 9,40WNW_BLI ,49.20,-123.52, 2 -BLI00061, 9,50WNW_BLI ,49.26,-123.76, 2 -BLI00062, 9,60WNW_BLI ,49.32,-124.00, 2 -BLI00063, 9,70WNW_BLI ,49.38,-124.23, 2 -BLI00064, 9,20NW_BLI ,49.18,-122.94, 2 -BLI00065, 9,30NW_BLI ,49.30,-123.12, 2 -BLI00066, 9,40NW_BLI ,49.42,-123.30, 2 -BLI00067, 9,50NW_BLI ,49.54,-123.49, 2 -BLI00068, 9,60NW_BLI ,49.65,-123.67, 2 -BLI00069, 9,70NW_BLI ,49.77,-123.86, 2 -BLI00070, 9,80NW_BLI ,49.88,-124.04, 2 -BLI00071, 9,90NW_BLI ,50.00,-124.23, 2 -BLI00072, 9,100NW_BLI ,50.11,-124.42, 2 -BLI00073, 9,110NW_BLI ,50.23,-124.61, 2 -BLI00074, 9,120NW_BLI ,50.34,-124.79, 2 -BLI00075, 9,130NW_BLI ,50.46,-124.98, 2 -BLI00076, 9,140NW_BLI ,50.57,-125.18, 2 -BLI00077, 9,20NNW_BLI ,49.26,-122.78, 2 -BLI00078, 9,30NNW_BLI ,49.41,-122.87, 2 -BLI00079, 9,40NNW_BLI ,49.56,-122.97, 2 -BLI00080, 9,50NNW_BLI ,49.72,-123.07, 2 -BLI00081, 9,60NNW_BLI ,49.87,-123.17, 2 -BLI00082, 9,70NNW_BLI ,50.03,-123.27, 2 -BLI00083, 9,80NNW_BLI ,50.18,-123.38, 2 -BLI00084, 9,90NNW_BLI ,50.33,-123.48, 2 -BLI00085, 9,100NNW_BLI ,50.48,-123.58, 2 -BLI00086, 9,110NNW_BLI ,50.64,-123.69, 2 -BLI00087, 9,120NNW_BLI ,50.79,-123.79, 2 -BLI00088, 9,130NNW_BLI ,50.94,-123.89, 2 -BLI00089, 9,140NNW_BLI ,51.10,-124.00, 2 -BLI00090, 9,150NNW_BLI ,51.25,-124.11, 2 -BLI00091, 9,160NNW_BLI ,51.40,-124.21, 2 -BLI00092, 9,170NNW_BLI ,51.55,-124.32, 2 -BLI00093, 9,180NNW_BLI ,51.71,-124.43, 2 -BLI00094, 9,190NNW_BLI ,51.86,-124.54, 2 -BLI00095, 9,200NNW_BLI ,52.01,-124.65, 2 -BLI00096, 9,210NNW_BLI ,52.16,-124.76, 2 -BLI00097, 9,220NNW_BLI ,52.31,-124.87, 2 -BLI00098, 9,230NNW_BLI ,52.47,-124.99, 2 -BLI00099, 9,240NNW_BLI ,52.62,-125.10, 2 +HUH00000, 9,HUH ,48.95,-122.58, 1 +HUH00001, 9,20N_HUH ,49.28,-122.58, 2 +HUH00002, 9,30N_HUH ,49.45,-122.58, 2 +HUH00003, 9,40N_HUH ,49.62,-122.58, 2 +HUH00004, 9,50N_HUH ,49.78,-122.58, 2 +HUH00005, 9,60N_HUH ,49.95,-122.58, 2 +HUH00006, 9,70N_HUH ,50.12,-122.58, 2 +HUH00007, 9,80N_HUH ,50.28,-122.58, 2 +HUH00008, 9,90N_HUH ,50.45,-122.58, 2 +HUH00009, 9,100N_HUH ,50.62,-122.58, 2 +HUH00010, 9,110N_HUH ,50.78,-122.58, 2 +HUH00011, 9,20NNE_HUH ,49.26,-122.38, 2 +HUH00012, 9,30NNE_HUH ,49.41,-122.29, 2 +HUH00013, 9,40NNE_HUH ,49.56,-122.19, 2 +HUH00014, 9,50NNE_HUH ,49.72,-122.09, 2 +HUH00015, 9,20NE_HUH ,49.18,-122.22, 2 +HUH00016, 9,30NE_HUH ,49.30,-122.04, 2 +HUH00017, 9,40NE_HUH ,49.42,-121.86, 2 +HUH00018, 9,20ENE_HUH ,49.08,-122.11, 2 +HUH00019, 9,30ENE_HUH ,49.14,-121.87, 2 +HUH00020, 9,20E_HUH ,48.95,-122.07, 2 +HUH00021, 9,30E_HUH ,48.95,-121.82, 2 +HUH00022, 9,40E_HUH ,48.95,-121.57, 2 +HUH00023, 9,20ESE_HUH ,48.82,-122.11, 2 +HUH00024, 9,30ESE_HUH ,48.76,-121.88, 2 +HUH00025, 9,40ESE_HUH ,48.69,-121.65, 2 +HUH00026, 9,50ESE_HUH ,48.63,-121.42, 2 +HUH00027, 9,20SE_HUH ,48.71,-122.22, 2 +HUH00028, 9,30SE_HUH ,48.60,-122.05, 2 +HUH00029, 9,40SE_HUH ,48.48,-121.87, 2 +HUH00030, 9,50SE_HUH ,48.36,-121.69, 2 +HUH00031, 9,60SE_HUH ,48.24,-121.52, 2 +HUH00032, 9,70SE_HUH ,48.12,-121.35, 2 +HUH00033, 9,20SSE_HUH ,48.64,-122.39, 2 +HUH00034, 9,30SSE_HUH ,48.49,-122.29, 2 +HUH00035, 9,40SSE_HUH ,48.33,-122.20, 2 +HUH00036, 9,50SSE_HUH ,48.18,-122.10, 2 +HUH00037, 9,20S_HUH ,48.62,-122.58, 2 +HUH00038, 9,30S_HUH ,48.45,-122.58, 2 +HUH00039, 9,40S_HUH ,48.28,-122.58, 2 +HUH00040, 9,50S_HUH ,48.12,-122.58, 2 +HUH00041, 9,20SSW_HUH ,48.64,-122.77, 2 +HUH00042, 9,30SSW_HUH ,48.49,-122.87, 2 +HUH00043, 9,40SSW_HUH ,48.33,-122.96, 2 +HUH00044, 9,50SSW_HUH ,48.18,-123.06, 2 +HUH00045, 9,60SSW_HUH ,48.03,-123.15, 2 +HUH00046, 9,20SW_HUH ,48.71,-122.94, 2 +HUH00047, 9,30SW_HUH ,48.60,-123.11, 2 +HUH00048, 9,40SW_HUH ,48.48,-123.29, 2 +HUH00049, 9,50SW_HUH ,48.36,-123.47, 2 +HUH00050, 9,20WSW_HUH ,48.82,-123.05, 2 +HUH00051, 9,30WSW_HUH ,48.76,-123.28, 2 +HUH00052, 9,40WSW_HUH ,48.69,-123.51, 2 +HUH00053, 9,50WSW_HUH ,48.63,-123.74, 2 +HUH00054, 9,20W_HUH ,48.95,-123.09, 2 +HUH00055, 9,30W_HUH ,48.95,-123.34, 2 +HUH00056, 9,40W_HUH ,48.95,-123.59, 2 +HUH00057, 9,50W_HUH ,48.94,-123.85, 2 +HUH00058, 9,20WNW_HUH ,49.08,-123.05, 2 +HUH00059, 9,30WNW_HUH ,49.14,-123.29, 2 +HUH00060, 9,40WNW_HUH ,49.20,-123.52, 2 +HUH00061, 9,50WNW_HUH ,49.26,-123.76, 2 +HUH00062, 9,60WNW_HUH ,49.32,-124.00, 2 +HUH00063, 9,70WNW_HUH ,49.38,-124.23, 2 +HUH00064, 9,20NW_HUH ,49.18,-122.94, 2 +HUH00065, 9,30NW_HUH ,49.30,-123.12, 2 +HUH00066, 9,40NW_HUH ,49.42,-123.30, 2 +HUH00067, 9,50NW_HUH ,49.54,-123.49, 2 +HUH00068, 9,60NW_HUH ,49.65,-123.67, 2 +HUH00069, 9,70NW_HUH ,49.77,-123.86, 2 +HUH00070, 9,80NW_HUH ,49.88,-124.04, 2 +HUH00071, 9,90NW_HUH ,50.00,-124.23, 2 +HUH00072, 9,100NW_HUH ,50.11,-124.42, 2 +HUH00073, 9,110NW_HUH ,50.23,-124.61, 2 +HUH00074, 9,120NW_HUH ,50.34,-124.79, 2 +HUH00075, 9,130NW_HUH ,50.46,-124.98, 2 +HUH00076, 9,140NW_HUH ,50.57,-125.18, 2 +HUH00077, 9,20NNW_HUH ,49.26,-122.78, 2 +HUH00078, 9,30NNW_HUH ,49.41,-122.87, 2 +HUH00079, 9,40NNW_HUH ,49.56,-122.97, 2 +HUH00080, 9,50NNW_HUH ,49.72,-123.07, 2 +HUH00081, 9,60NNW_HUH ,49.87,-123.17, 2 +HUH00082, 9,70NNW_HUH ,50.03,-123.27, 2 +HUH00083, 9,80NNW_HUH ,50.18,-123.38, 2 +HUH00084, 9,90NNW_HUH ,50.33,-123.48, 2 +HUH00085, 9,100NNW_HUH ,50.48,-123.58, 2 +HUH00086, 9,110NNW_HUH ,50.64,-123.69, 2 +HUH00087, 9,120NNW_HUH ,50.79,-123.79, 2 +HUH00088, 9,130NNW_HUH ,50.94,-123.89, 2 +HUH00089, 9,140NNW_HUH ,51.10,-124.00, 2 +HUH00090, 9,150NNW_HUH ,51.25,-124.11, 2 +HUH00091, 9,160NNW_HUH ,51.40,-124.21, 2 +HUH00092, 9,170NNW_HUH ,51.55,-124.32, 2 +HUH00093, 9,180NNW_HUH ,51.71,-124.43, 2 +HUH00094, 9,190NNW_HUH ,51.86,-124.54, 2 +HUH00095, 9,200NNW_HUH ,52.01,-124.65, 2 +HUH00096, 9,210NNW_HUH ,52.16,-124.76, 2 +HUH00097, 9,220NNW_HUH ,52.31,-124.87, 2 +HUH00098, 9,230NNW_HUH ,52.47,-124.99, 2 +HUH00099, 9,240NNW_HUH ,52.62,-125.10, 2 PDX00000, 9,PDX ,45.58,-122.60, 1 PDX00001, 9,20N_PDX ,45.91,-122.60, 2 PDX00002, 9,30N_PDX ,46.08,-122.60, 2 @@ -20859,84 +20939,86 @@ FOT00068, 9,80WSW_FOT ,40.15,-125.84, 2 FOT00069, 9,90WSW_FOT ,40.08,-126.04, 2 FOT00070, 9,100WSW_FOT ,40.02,-126.24, 2 FOT00071, 9,110WSW_FOT ,39.95,-126.44, 2 -FOT00072, 9,160WSW_FOT ,39.61,-127.43, 2 -FOT00073, 9,170WSW_FOT ,39.54,-127.62, 2 -FOT00074, 9,180WSW_FOT ,39.47,-127.82, 2 -FOT00075, 9,190WSW_FOT ,39.40,-128.01, 2 -FOT00076, 9,200WSW_FOT ,39.33,-128.21, 2 -FOT00077, 9,210WSW_FOT ,39.26,-128.40, 2 -FOT00078, 9,220WSW_FOT ,39.18,-128.60, 2 -FOT00079, 9,230WSW_FOT ,39.11,-128.79, 2 -FOT00080, 9,240WSW_FOT ,39.04,-128.99, 2 -FOT00081, 9,20W_FOT ,40.67,-124.67, 2 -FOT00082, 9,30W_FOT ,40.67,-124.89, 2 -FOT00083, 9,40W_FOT ,40.67,-125.11, 2 -FOT00084, 9,50W_FOT ,40.66,-125.33, 2 -FOT00085, 9,60W_FOT ,40.66,-125.55, 2 -FOT00086, 9,70W_FOT ,40.66,-125.77, 2 -FOT00087, 9,80W_FOT ,40.66,-125.99, 2 -FOT00088, 9,90W_FOT ,40.65,-126.21, 2 -FOT00089, 9,100W_FOT ,40.65,-126.43, 2 -FOT00090, 9,110W_FOT ,40.64,-126.64, 2 -FOT00091, 9,120W_FOT ,40.64,-126.86, 2 -FOT00092, 9,130W_FOT ,40.63,-127.08, 2 -FOT00093, 9,140W_FOT ,40.63,-127.30, 2 -FOT00094, 9,150W_FOT ,40.62,-127.52, 2 -FOT00095, 9,160W_FOT ,40.62,-127.74, 2 -FOT00096, 9,170W_FOT ,40.61,-127.96, 2 -FOT00097, 9,180W_FOT ,40.60,-128.18, 2 -FOT00098, 9,190W_FOT ,40.59,-128.40, 2 -FOT00099, 9,200W_FOT ,40.59,-128.62, 2 -FOT00100, 9,210W_FOT ,40.58,-128.84, 2 -FOT00101, 9,220W_FOT ,40.57,-129.06, 2 -FOT00102, 9,230W_FOT ,40.56,-129.27, 2 -FOT00103, 9,240W_FOT ,40.55,-129.49, 2 -FOT00104, 9,250W_FOT ,40.54,-129.71, 2 -FOT00105, 9,20WNW_FOT ,40.80,-124.64, 2 -FOT00106, 9,30WNW_FOT ,40.86,-124.84, 2 -FOT00107, 9,40WNW_FOT ,40.92,-125.04, 2 -FOT00108, 9,50WNW_FOT ,40.98,-125.25, 2 -FOT00109, 9,60WNW_FOT ,41.05,-125.45, 2 -FOT00110, 9,70WNW_FOT ,41.11,-125.66, 2 -FOT00111, 9,80WNW_FOT ,41.17,-125.87, 2 -FOT00112, 9,90WNW_FOT ,41.23,-126.07, 2 -FOT00113, 9,100WNW_FOT ,41.29,-126.28, 2 -FOT00114, 9,110WNW_FOT ,41.35,-126.48, 2 -FOT00115, 9,120WNW_FOT ,41.41,-126.69, 2 -FOT00116, 9,130WNW_FOT ,41.47,-126.90, 2 -FOT00117, 9,140WNW_FOT ,41.53,-127.11, 2 -FOT00118, 9,150WNW_FOT ,41.59,-127.32, 2 -FOT00119, 9,160WNW_FOT ,41.64,-127.53, 2 -FOT00120, 9,170WNW_FOT ,41.70,-127.73, 2 -FOT00121, 9,180WNW_FOT ,41.76,-127.94, 2 -FOT00122, 9,190WNW_FOT ,41.82,-128.15, 2 -FOT00123, 9,200WNW_FOT ,41.87,-128.36, 2 -FOT00124, 9,210WNW_FOT ,41.93,-128.57, 2 -FOT00125, 9,220WNW_FOT ,41.98,-128.79, 2 -FOT00126, 9,230WNW_FOT ,42.04,-129.00, 2 -FOT00127, 9,240WNW_FOT ,42.09,-129.21, 2 -FOT00128, 9,20NW_FOT ,40.91,-124.54, 2 -FOT00129, 9,30NW_FOT ,41.02,-124.70, 2 -FOT00130, 9,40NW_FOT ,41.14,-124.86, 2 -FOT00131, 9,50NW_FOT ,41.26,-125.01, 2 -FOT00132, 9,60NW_FOT ,41.37,-125.17, 2 -FOT00133, 9,70NW_FOT ,41.49,-125.33, 2 -FOT00134, 9,80NW_FOT ,41.61,-125.49, 2 -FOT00135, 9,90NW_FOT ,41.72,-125.65, 2 -FOT00136, 9,100NW_FOT ,41.84,-125.81, 2 -FOT00137, 9,110NW_FOT ,41.95,-125.97, 2 -FOT00138, 9,120NW_FOT ,42.07,-126.13, 2 -FOT00139, 9,130NW_FOT ,42.18,-126.30, 2 -FOT00140, 9,140NW_FOT ,42.30,-126.46, 2 -FOT00141, 9,150NW_FOT ,42.41,-126.62, 2 -FOT00142, 9,160NW_FOT ,42.53,-126.79, 2 -FOT00143, 9,20NNW_FOT ,40.98,-124.40, 2 -FOT00144, 9,30NNW_FOT ,41.13,-124.48, 2 -FOT00145, 9,40NNW_FOT ,41.28,-124.57, 2 -FOT00146, 9,50NNW_FOT ,41.44,-124.66, 2 -FOT00147, 9,60NNW_FOT ,41.59,-124.74, 2 -FOT00148, 9,70NNW_FOT ,41.75,-124.83, 2 -FOT00149, 9,80NNW_FOT ,41.90,-124.91, 2 +FOT00072, 9,120WSW_FOT ,39.88,-126.64, 2 +FOT00073, 9,150WSW_FOT ,39.67,-127.23, 2 +FOT00074, 9,160WSW_FOT ,39.61,-127.43, 2 +FOT00075, 9,170WSW_FOT ,39.54,-127.62, 2 +FOT00076, 9,180WSW_FOT ,39.47,-127.82, 2 +FOT00077, 9,190WSW_FOT ,39.40,-128.01, 2 +FOT00078, 9,200WSW_FOT ,39.33,-128.21, 2 +FOT00079, 9,210WSW_FOT ,39.26,-128.40, 2 +FOT00080, 9,220WSW_FOT ,39.18,-128.60, 2 +FOT00081, 9,230WSW_FOT ,39.11,-128.79, 2 +FOT00082, 9,240WSW_FOT ,39.04,-128.99, 2 +FOT00083, 9,20W_FOT ,40.67,-124.67, 2 +FOT00084, 9,30W_FOT ,40.67,-124.89, 2 +FOT00085, 9,40W_FOT ,40.67,-125.11, 2 +FOT00086, 9,50W_FOT ,40.66,-125.33, 2 +FOT00087, 9,60W_FOT ,40.66,-125.55, 2 +FOT00088, 9,70W_FOT ,40.66,-125.77, 2 +FOT00089, 9,80W_FOT ,40.66,-125.99, 2 +FOT00090, 9,90W_FOT ,40.65,-126.21, 2 +FOT00091, 9,100W_FOT ,40.65,-126.43, 2 +FOT00092, 9,110W_FOT ,40.64,-126.64, 2 +FOT00093, 9,120W_FOT ,40.64,-126.86, 2 +FOT00094, 9,130W_FOT ,40.63,-127.08, 2 +FOT00095, 9,140W_FOT ,40.63,-127.30, 2 +FOT00096, 9,150W_FOT ,40.62,-127.52, 2 +FOT00097, 9,160W_FOT ,40.62,-127.74, 2 +FOT00098, 9,170W_FOT ,40.61,-127.96, 2 +FOT00099, 9,180W_FOT ,40.60,-128.18, 2 +FOT00100, 9,190W_FOT ,40.59,-128.40, 2 +FOT00101, 9,200W_FOT ,40.59,-128.62, 2 +FOT00102, 9,210W_FOT ,40.58,-128.84, 2 +FOT00103, 9,220W_FOT ,40.57,-129.06, 2 +FOT00104, 9,230W_FOT ,40.56,-129.27, 2 +FOT00105, 9,240W_FOT ,40.55,-129.49, 2 +FOT00106, 9,250W_FOT ,40.54,-129.71, 2 +FOT00107, 9,20WNW_FOT ,40.80,-124.64, 2 +FOT00108, 9,30WNW_FOT ,40.86,-124.84, 2 +FOT00109, 9,40WNW_FOT ,40.92,-125.04, 2 +FOT00110, 9,50WNW_FOT ,40.98,-125.25, 2 +FOT00111, 9,60WNW_FOT ,41.05,-125.45, 2 +FOT00112, 9,70WNW_FOT ,41.11,-125.66, 2 +FOT00113, 9,80WNW_FOT ,41.17,-125.87, 2 +FOT00114, 9,90WNW_FOT ,41.23,-126.07, 2 +FOT00115, 9,100WNW_FOT ,41.29,-126.28, 2 +FOT00116, 9,110WNW_FOT ,41.35,-126.48, 2 +FOT00117, 9,120WNW_FOT ,41.41,-126.69, 2 +FOT00118, 9,130WNW_FOT ,41.47,-126.90, 2 +FOT00119, 9,140WNW_FOT ,41.53,-127.11, 2 +FOT00120, 9,150WNW_FOT ,41.59,-127.32, 2 +FOT00121, 9,160WNW_FOT ,41.64,-127.53, 2 +FOT00122, 9,170WNW_FOT ,41.70,-127.73, 2 +FOT00123, 9,180WNW_FOT ,41.76,-127.94, 2 +FOT00124, 9,190WNW_FOT ,41.82,-128.15, 2 +FOT00125, 9,200WNW_FOT ,41.87,-128.36, 2 +FOT00126, 9,210WNW_FOT ,41.93,-128.57, 2 +FOT00127, 9,220WNW_FOT ,41.98,-128.79, 2 +FOT00128, 9,230WNW_FOT ,42.04,-129.00, 2 +FOT00129, 9,240WNW_FOT ,42.09,-129.21, 2 +FOT00130, 9,20NW_FOT ,40.91,-124.54, 2 +FOT00131, 9,30NW_FOT ,41.02,-124.70, 2 +FOT00132, 9,40NW_FOT ,41.14,-124.86, 2 +FOT00133, 9,50NW_FOT ,41.26,-125.01, 2 +FOT00134, 9,60NW_FOT ,41.37,-125.17, 2 +FOT00135, 9,70NW_FOT ,41.49,-125.33, 2 +FOT00136, 9,80NW_FOT ,41.61,-125.49, 2 +FOT00137, 9,90NW_FOT ,41.72,-125.65, 2 +FOT00138, 9,100NW_FOT ,41.84,-125.81, 2 +FOT00139, 9,110NW_FOT ,41.95,-125.97, 2 +FOT00140, 9,120NW_FOT ,42.07,-126.13, 2 +FOT00141, 9,130NW_FOT ,42.18,-126.30, 2 +FOT00142, 9,140NW_FOT ,42.30,-126.46, 2 +FOT00143, 9,150NW_FOT ,42.41,-126.62, 2 +FOT00144, 9,160NW_FOT ,42.53,-126.79, 2 +FOT00145, 9,20NNW_FOT ,40.98,-124.40, 2 +FOT00146, 9,30NNW_FOT ,41.13,-124.48, 2 +FOT00147, 9,40NNW_FOT ,41.28,-124.57, 2 +FOT00148, 9,50NNW_FOT ,41.44,-124.66, 2 +FOT00149, 9,60NNW_FOT ,41.59,-124.74, 2 +FOT00150, 9,70NNW_FOT ,41.75,-124.83, 2 +FOT00151, 9,80NNW_FOT ,41.90,-124.91, 2 TOU00000, 9,TOU ,48.30,-124.63, 1 TOU00001, 9,20N_TOU ,48.63,-124.63, 2 TOU00002, 9,30N_TOU ,48.80,-124.63, 2 @@ -21019,86 +21101,88 @@ TOU00078, 9,80W_TOU ,48.28,-126.63, 2 TOU00079, 9,90W_TOU ,48.28,-126.88, 2 TOU00080, 9,100W_TOU ,48.27,-127.13, 2 TOU00081, 9,110W_TOU ,48.27,-127.38, 2 -TOU00082, 9,160W_TOU ,48.23,-128.63, 2 -TOU00083, 9,170W_TOU ,48.22,-128.88, 2 -TOU00084, 9,180W_TOU ,48.21,-129.13, 2 -TOU00085, 9,190W_TOU ,48.20,-129.38, 2 -TOU00086, 9,200W_TOU ,48.19,-129.63, 2 -TOU00087, 9,210W_TOU ,48.18,-129.88, 2 -TOU00088, 9,220W_TOU ,48.17,-130.13, 2 -TOU00089, 9,230W_TOU ,48.16,-130.38, 2 -TOU00090, 9,240W_TOU ,48.14,-130.63, 2 -TOU00091, 9,250W_TOU ,48.13,-130.88, 2 -TOU00092, 9,20WNW_TOU ,48.43,-125.09, 2 -TOU00093, 9,30WNW_TOU ,48.49,-125.33, 2 -TOU00094, 9,40WNW_TOU ,48.55,-125.56, 2 -TOU00095, 9,50WNW_TOU ,48.61,-125.79, 2 -TOU00096, 9,60WNW_TOU ,48.67,-126.03, 2 -TOU00097, 9,70WNW_TOU ,48.73,-126.26, 2 -TOU00098, 9,80WNW_TOU ,48.79,-126.50, 2 -TOU00099, 9,90WNW_TOU ,48.85,-126.73, 2 -TOU00100, 9,100WNW_TOU ,48.91,-126.97, 2 -TOU00101, 9,110WNW_TOU ,48.97,-127.21, 2 -TOU00102, 9,120WNW_TOU ,49.03,-127.45, 2 -TOU00103, 9,130WNW_TOU ,49.09,-127.69, 2 -TOU00104, 9,140WNW_TOU ,49.15,-127.92, 2 -TOU00105, 9,150WNW_TOU ,49.20,-128.16, 2 -TOU00106, 9,160WNW_TOU ,49.26,-128.40, 2 -TOU00107, 9,170WNW_TOU ,49.31,-128.64, 2 -TOU00108, 9,180WNW_TOU ,49.37,-128.89, 2 -TOU00109, 9,190WNW_TOU ,49.42,-129.13, 2 -TOU00110, 9,200WNW_TOU ,49.48,-129.37, 2 -TOU00111, 9,210WNW_TOU ,49.53,-129.61, 2 -TOU00112, 9,220WNW_TOU ,49.59,-129.86, 2 -TOU00113, 9,230WNW_TOU ,49.64,-130.10, 2 -TOU00114, 9,240WNW_TOU ,49.69,-130.34, 2 -TOU00115, 9,20NW_TOU ,48.53,-124.99, 2 -TOU00116, 9,30NW_TOU ,48.65,-125.16, 2 -TOU00117, 9,40NW_TOU ,48.77,-125.34, 2 -TOU00118, 9,50NW_TOU ,48.89,-125.53, 2 -TOU00119, 9,60NW_TOU ,49.00,-125.71, 2 -TOU00120, 9,70NW_TOU ,49.12,-125.89, 2 -TOU00121, 9,80NW_TOU ,49.23,-126.07, 2 -TOU00122, 9,90NW_TOU ,49.35,-126.26, 2 -TOU00123, 9,100NW_TOU ,49.46,-126.44, 2 -TOU00124, 9,110NW_TOU ,49.58,-126.63, 2 -TOU00125, 9,120NW_TOU ,49.69,-126.81, 2 -TOU00126, 9,130NW_TOU ,49.81,-127.00, 2 -TOU00127, 9,140NW_TOU ,49.92,-127.19, 2 -TOU00128, 9,150NW_TOU ,50.03,-127.38, 2 -TOU00129, 9,160NW_TOU ,50.15,-127.57, 2 -TOU00130, 9,170NW_TOU ,50.26,-127.76, 2 -TOU00131, 9,180NW_TOU ,50.37,-127.95, 2 -TOU00132, 9,190NW_TOU ,50.49,-128.15, 2 -TOU00133, 9,200NW_TOU ,50.60,-128.34, 2 -TOU00134, 9,210NW_TOU ,50.71,-128.54, 2 -TOU00135, 9,220NW_TOU ,50.82,-128.73, 2 -TOU00136, 9,230NW_TOU ,50.93,-128.93, 2 -TOU00137, 9,240NW_TOU ,51.04,-129.13, 2 -TOU00138, 9,250NW_TOU ,51.15,-129.32, 2 -TOU00139, 9,20NNW_TOU ,48.61,-124.82, 2 -TOU00140, 9,30NNW_TOU ,48.76,-124.92, 2 -TOU00141, 9,40NNW_TOU ,48.91,-125.02, 2 -TOU00142, 9,50NNW_TOU ,49.07,-125.12, 2 -TOU00143, 9,60NNW_TOU ,49.22,-125.22, 2 -TOU00144, 9,70NNW_TOU ,49.38,-125.32, 2 -TOU00145, 9,80NNW_TOU ,49.53,-125.42, 2 -TOU00146, 9,90NNW_TOU ,49.68,-125.52, 2 -TOU00147, 9,100NNW_TOU ,49.83,-125.62, 2 -TOU00148, 9,110NNW_TOU ,49.99,-125.72, 2 -TOU00149, 9,120NNW_TOU ,50.14,-125.82, 2 -TOU00150, 9,130NNW_TOU ,50.29,-125.93, 2 -TOU00151, 9,140NNW_TOU ,50.45,-126.03, 2 -TOU00152, 9,150NNW_TOU ,50.60,-126.14, 2 -TOU00153, 9,160NNW_TOU ,50.75,-126.24, 2 -TOU00154, 9,170NNW_TOU ,50.90,-126.35, 2 -TOU00155, 9,180NNW_TOU ,51.06,-126.45, 2 -TOU00156, 9,190NNW_TOU ,51.21,-126.56, 2 -TOU00157, 9,200NNW_TOU ,51.36,-126.67, 2 -TOU00158, 9,210NNW_TOU ,51.51,-126.78, 2 -TOU00159, 9,220NNW_TOU ,51.66,-126.89, 2 -TOU00160, 9,230NNW_TOU ,51.82,-127.00, 2 -TOU00161, 9,240NNW_TOU ,51.97,-127.11, 2 +TOU00082, 9,120W_TOU ,48.26,-127.63, 2 +TOU00083, 9,150W_TOU ,48.24,-128.38, 2 +TOU00084, 9,160W_TOU ,48.23,-128.63, 2 +TOU00085, 9,170W_TOU ,48.22,-128.88, 2 +TOU00086, 9,180W_TOU ,48.21,-129.13, 2 +TOU00087, 9,190W_TOU ,48.20,-129.38, 2 +TOU00088, 9,200W_TOU ,48.19,-129.63, 2 +TOU00089, 9,210W_TOU ,48.18,-129.88, 2 +TOU00090, 9,220W_TOU ,48.17,-130.13, 2 +TOU00091, 9,230W_TOU ,48.16,-130.38, 2 +TOU00092, 9,240W_TOU ,48.14,-130.63, 2 +TOU00093, 9,250W_TOU ,48.13,-130.88, 2 +TOU00094, 9,20WNW_TOU ,48.43,-125.09, 2 +TOU00095, 9,30WNW_TOU ,48.49,-125.33, 2 +TOU00096, 9,40WNW_TOU ,48.55,-125.56, 2 +TOU00097, 9,50WNW_TOU ,48.61,-125.79, 2 +TOU00098, 9,60WNW_TOU ,48.67,-126.03, 2 +TOU00099, 9,70WNW_TOU ,48.73,-126.26, 2 +TOU00100, 9,80WNW_TOU ,48.79,-126.50, 2 +TOU00101, 9,90WNW_TOU ,48.85,-126.73, 2 +TOU00102, 9,100WNW_TOU ,48.91,-126.97, 2 +TOU00103, 9,110WNW_TOU ,48.97,-127.21, 2 +TOU00104, 9,120WNW_TOU ,49.03,-127.45, 2 +TOU00105, 9,130WNW_TOU ,49.09,-127.69, 2 +TOU00106, 9,140WNW_TOU ,49.15,-127.92, 2 +TOU00107, 9,150WNW_TOU ,49.20,-128.16, 2 +TOU00108, 9,160WNW_TOU ,49.26,-128.40, 2 +TOU00109, 9,170WNW_TOU ,49.31,-128.64, 2 +TOU00110, 9,180WNW_TOU ,49.37,-128.89, 2 +TOU00111, 9,190WNW_TOU ,49.42,-129.13, 2 +TOU00112, 9,200WNW_TOU ,49.48,-129.37, 2 +TOU00113, 9,210WNW_TOU ,49.53,-129.61, 2 +TOU00114, 9,220WNW_TOU ,49.59,-129.86, 2 +TOU00115, 9,230WNW_TOU ,49.64,-130.10, 2 +TOU00116, 9,240WNW_TOU ,49.69,-130.34, 2 +TOU00117, 9,20NW_TOU ,48.53,-124.99, 2 +TOU00118, 9,30NW_TOU ,48.65,-125.16, 2 +TOU00119, 9,40NW_TOU ,48.77,-125.34, 2 +TOU00120, 9,50NW_TOU ,48.89,-125.53, 2 +TOU00121, 9,60NW_TOU ,49.00,-125.71, 2 +TOU00122, 9,70NW_TOU ,49.12,-125.89, 2 +TOU00123, 9,80NW_TOU ,49.23,-126.07, 2 +TOU00124, 9,90NW_TOU ,49.35,-126.26, 2 +TOU00125, 9,100NW_TOU ,49.46,-126.44, 2 +TOU00126, 9,110NW_TOU ,49.58,-126.63, 2 +TOU00127, 9,120NW_TOU ,49.69,-126.81, 2 +TOU00128, 9,130NW_TOU ,49.81,-127.00, 2 +TOU00129, 9,140NW_TOU ,49.92,-127.19, 2 +TOU00130, 9,150NW_TOU ,50.03,-127.38, 2 +TOU00131, 9,160NW_TOU ,50.15,-127.57, 2 +TOU00132, 9,170NW_TOU ,50.26,-127.76, 2 +TOU00133, 9,180NW_TOU ,50.37,-127.95, 2 +TOU00134, 9,190NW_TOU ,50.49,-128.15, 2 +TOU00135, 9,200NW_TOU ,50.60,-128.34, 2 +TOU00136, 9,210NW_TOU ,50.71,-128.54, 2 +TOU00137, 9,220NW_TOU ,50.82,-128.73, 2 +TOU00138, 9,230NW_TOU ,50.93,-128.93, 2 +TOU00139, 9,240NW_TOU ,51.04,-129.13, 2 +TOU00140, 9,250NW_TOU ,51.15,-129.32, 2 +TOU00141, 9,20NNW_TOU ,48.61,-124.82, 2 +TOU00142, 9,30NNW_TOU ,48.76,-124.92, 2 +TOU00143, 9,40NNW_TOU ,48.91,-125.02, 2 +TOU00144, 9,50NNW_TOU ,49.07,-125.12, 2 +TOU00145, 9,60NNW_TOU ,49.22,-125.22, 2 +TOU00146, 9,70NNW_TOU ,49.38,-125.32, 2 +TOU00147, 9,80NNW_TOU ,49.53,-125.42, 2 +TOU00148, 9,90NNW_TOU ,49.68,-125.52, 2 +TOU00149, 9,100NNW_TOU ,49.83,-125.62, 2 +TOU00150, 9,110NNW_TOU ,49.99,-125.72, 2 +TOU00151, 9,120NNW_TOU ,50.14,-125.82, 2 +TOU00152, 9,130NNW_TOU ,50.29,-125.93, 2 +TOU00153, 9,140NNW_TOU ,50.45,-126.03, 2 +TOU00154, 9,150NNW_TOU ,50.60,-126.14, 2 +TOU00155, 9,160NNW_TOU ,50.75,-126.24, 2 +TOU00156, 9,170NNW_TOU ,50.90,-126.35, 2 +TOU00157, 9,180NNW_TOU ,51.06,-126.45, 2 +TOU00158, 9,190NNW_TOU ,51.21,-126.56, 2 +TOU00159, 9,200NNW_TOU ,51.36,-126.67, 2 +TOU00160, 9,210NNW_TOU ,51.51,-126.78, 2 +TOU00161, 9,220NNW_TOU ,51.66,-126.89, 2 +TOU00162, 9,230NNW_TOU ,51.82,-127.00, 2 +TOU00163, 9,240NNW_TOU ,51.97,-127.11, 2 YQV00000, 9,YQV ,51.27,-102.47, 1 YQV00001, 9,20N_YQV ,51.60,-102.47, 2 YQV00002, 9,30N_YQV ,51.77,-102.47, 2 @@ -21330,18 +21414,79 @@ YQV00227, 9,210NNW_YQV ,54.48,-104.77, 2 YQV00228, 9,220NNW_YQV ,54.63,-104.89, 2 YQV00229, 9,230NNW_YQV ,54.78,-105.01, 2 YQV00230, 9,240NNW_YQV ,54.93,-105.13, 2 +MMB00000, 9,MMB ,36.34,-99.88, 1 +MMB00001, 9,20N_MMB ,36.67,-99.88, 2 +MMB00002, 9,30N_MMB ,36.84,-99.88, 2 +MMB00003, 9,40N_MMB ,37.01,-99.88, 2 +MMB00004, 9,20NNE_MMB ,36.65,-99.72, 2 +MMB00005, 9,30NNE_MMB ,36.80,-99.64, 2 +MMB00006, 9,40NNE_MMB ,36.96,-99.56, 2 +MMB00007, 9,50NNE_MMB ,37.11,-99.48, 2 +MMB00008, 9,60NNE_MMB ,37.26,-99.40, 2 +MMB00009, 9,20NE_MMB ,36.58,-99.59, 2 +MMB00010, 9,30NE_MMB ,36.69,-99.44, 2 +MMB00011, 9,40NE_MMB ,36.81,-99.29, 2 +MMB00012, 9,50NE_MMB ,36.93,-99.14, 2 +MMB00013, 9,60NE_MMB ,37.04,-98.99, 2 +MMB00014, 9,20ENE_MMB ,36.47,-99.50, 2 +MMB00015, 9,30ENE_MMB ,36.53,-99.31, 2 +MMB00016, 9,40ENE_MMB ,36.59,-99.11, 2 +MMB00017, 9,50ENE_MMB ,36.65,-98.92, 2 +MMB00018, 9,20E_MMB ,36.34,-99.47, 2 +MMB00019, 9,30E_MMB ,36.34,-99.26, 2 +MMB00020, 9,40E_MMB ,36.34,-99.05, 2 +MMB00021, 9,20ESE_MMB ,36.21,-99.50, 2 +MMB00022, 9,30ESE_MMB ,36.15,-99.31, 2 +MMB00023, 9,40ESE_MMB ,36.08,-99.12, 2 +MMB00024, 9,50ESE_MMB ,36.02,-98.93, 2 +MMB00025, 9,20SE_MMB ,36.10,-99.59, 2 +MMB00026, 9,30SE_MMB ,35.99,-99.44, 2 +MMB00027, 9,40SE_MMB ,35.87,-99.30, 2 +MMB00028, 9,50SE_MMB ,35.75,-99.15, 2 +MMB00029, 9,60SE_MMB ,35.63,-99.01, 2 +MMB00030, 9,20SSE_MMB ,36.03,-99.72, 2 +MMB00031, 9,30SSE_MMB ,35.88,-99.64, 2 +MMB00032, 9,40SSE_MMB ,35.72,-99.57, 2 +MMB00033, 9,50SSE_MMB ,35.57,-99.49, 2 +MMB00034, 9,60SSE_MMB ,35.42,-99.41, 2 +MMB00035, 9,70SSE_MMB ,35.26,-99.33, 2 +MMB00036, 9,20S_MMB ,36.01,-99.88, 2 +MMB00037, 9,30S_MMB ,35.84,-99.88, 2 +MMB00038, 9,40S_MMB ,35.67,-99.88, 2 +MMB00039, 9,50S_MMB ,35.51,-99.88, 2 +MMB00040, 9,60S_MMB ,35.34,-99.88, 2 +MMB00041, 9,20SSW_MMB ,36.03,-100.04, 2 +MMB00042, 9,30SSW_MMB ,35.88,-100.12, 2 +MMB00043, 9,40SSW_MMB ,35.72,-100.19, 2 +MMB00044, 9,50SSW_MMB ,35.57,-100.27, 2 +MMB00045, 9,60SSW_MMB ,35.42,-100.35, 2 +MMB00046, 9,20SW_MMB ,36.10,-100.17, 2 +MMB00047, 9,30SW_MMB ,35.99,-100.32, 2 +MMB00048, 9,40SW_MMB ,35.87,-100.46, 2 +MMB00049, 9,50SW_MMB ,35.75,-100.61, 2 +MMB00050, 9,60SW_MMB ,35.63,-100.75, 2 +MMB00051, 9,20WSW_MMB ,36.21,-100.26, 2 +MMB00052, 9,30WSW_MMB ,36.15,-100.45, 2 +MMB00053, 9,40WSW_MMB ,36.08,-100.64, 2 +MMB00054, 9,50WSW_MMB ,36.02,-100.83, 2 +MMB00055, 9,20W_MMB ,36.34,-100.29, 2 +MMB00056, 9,30W_MMB ,36.34,-100.50, 2 +MMB00057, 9,20WNW_MMB ,36.47,-100.26, 2 +MMB00058, 9,20NW_MMB ,36.58,-100.17, 2 +MMB00059, 9,20NNW_MMB ,36.65,-100.04, 2 +MMB00060, 9,30NNW_MMB ,36.80,-100.12, 2 COORD001, 9,50WSW_YXC ,49.27,-116.95, 1 COORD002, 9,50SE_REO ,42.00,-117.08, 1 COORD003, 9,40SE_LKV ,42.02,-119.87, 1 COORD004, 9,40SSW_FMG ,38.90,-119.98, 1 COORD005, 9,50S_TUS ,31.27,-110.91, 1 -COORD006, 9,220SW_MZB ,30.14,-120.23, 1 -COORD007, 9,140WSW_FOT ,39.74,-127.02, 1 -COORD008, 9,140W_TOU ,48.25,-128.13, 1 -COORD009, 9,50WSW_YXC ,49.27,-116.95, 1 -COORD010, 9,50NNW_ISN ,48.95,-104.12, 1 -COORD011, 9,40ESE_CYS ,40.95,-103.96, 1 -COORD012, 9,40E_SNY ,41.10,-102.10, 1 +COORD006, 9,20S_MZB ,32.45,-117.23, 1 +COORD007, 9,220SW_MZB ,30.14,-120.23, 1 +COORD008, 9,140WSW_FOT ,39.74,-127.02, 1 +COORD009, 9,140W_TOU ,48.25,-128.13, 1 +COORD010, 9,50WSW_YXC ,49.27,-116.95, 1 +COORD011, 9,50NNW_ISN ,48.95,-104.12, 1 +COORD012, 9,70SW_RAP ,43.15,-104.14, 1 COORD013, 9,50W_LBL ,37.09,-101.99, 1 COORD014, 9,30ESE_TBE ,37.08,-103.02, 1 COORD015, 9,90S_MRF ,28.80,-103.95, 1 @@ -21354,14 +21499,14 @@ COORD021, 9,30N_INL ,49.06,-93.40, 1 COORD022, 9,50NNW_ISN ,48.95,-104.12, 1 COORD023, 9,130ESE_LEV ,28.32,-87.83, 1 COORD024, 9,40W_CEW ,30.93,-87.46, 1 -COORD025, 9,50SW_ABY ,31.05,-84.98, 1 +COORD025, 9,50SW_PZD ,31.05,-84.98, 1 COORD026, 9,30SE_ECK ,42.90,-82.23, 1 COORD027, 9,70NW_PQI ,47.59,-69.30, 1 COORD028, 9,60NE_PQI ,47.47,-67.04, 1 COORD029, 9,200SE_ACK ,38.88,-67.00, 1 COORD030, 9,160SE_SIE ,37.18,-72.43, 1 COORD031, 9,190ESE_ECG ,34.99,-72.61, 1 -COORD032, 9,130SSE_ILM ,32.38,-76.81, 1 +COORD032, 9,130SSE_ILM ,32.36,-76.90, 1 COORD033, 9,180E_PBI ,26.63,-76.73, 1 COORD034, 9,70ENE_PBI ,27.12,-78.87, 1 COORD035, 9,150SE_MIA ,24.02,-78.37, 1 diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap8.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap8.sql index c682876fce..3c86714a17 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap8.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadSnap8.sql @@ -1192,26 +1192,26 @@ ILM00073, 9,220SE_ILM ,31.72,-74.82, 2 ILM00074, 9,230SE_ILM ,31.60,-74.69, 2 ILM00075, 9,240SE_ILM ,31.48,-74.56, 2 ILM00076, 9,250SE_ILM ,31.36,-74.42, 2 -ILM00099, 9,20S_ILM ,34.02,-77.87, 2 -ILM00100, 9,30S_ILM ,33.85,-77.87, 2 -ILM00101, 9,40S_ILM ,33.68,-77.87, 2 -ILM00102, 9,50S_ILM ,33.52,-77.87, 2 -ILM00103, 9,60S_ILM ,33.35,-77.87, 2 -ILM00104, 9,70S_ILM ,33.18,-77.87, 2 -ILM00105, 9,80S_ILM ,33.02,-77.87, 2 -ILM00106, 9,90S_ILM ,32.85,-77.87, 2 -ILM00107, 9,100S_ILM ,32.68,-77.87, 2 -ILM00108, 9,110S_ILM ,32.52,-77.87, 2 -ILM00116, 9,20SW_ILM ,34.11,-78.15, 2 -ILM00117, 9,30SW_ILM ,34.00,-78.30, 2 -ILM00118, 9,40SW_ILM ,33.88,-78.44, 2 -ILM00119, 9,50SW_ILM ,33.76,-78.58, 2 -ILM00123, 9,20W_ILM ,34.35,-78.27, 2 -ILM00124, 9,30W_ILM ,34.35,-78.48, 2 -ILM00125, 9,40W_ILM ,34.35,-78.68, 2 -ILM00130, 9,20NW_ILM ,34.59,-78.16, 2 -ILM00131, 9,30NW_ILM ,34.70,-78.30, 2 -ILM00132, 9,40NW_ILM ,34.82,-78.44, 2 +ILM00098, 9,20S_ILM ,34.02,-77.87, 2 +ILM00099, 9,30S_ILM ,33.85,-77.87, 2 +ILM00100, 9,40S_ILM ,33.68,-77.87, 2 +ILM00101, 9,50S_ILM ,33.52,-77.87, 2 +ILM00102, 9,60S_ILM ,33.35,-77.87, 2 +ILM00103, 9,70S_ILM ,33.18,-77.87, 2 +ILM00104, 9,80S_ILM ,33.02,-77.87, 2 +ILM00105, 9,90S_ILM ,32.85,-77.87, 2 +ILM00106, 9,100S_ILM ,32.68,-77.87, 2 +ILM00107, 9,110S_ILM ,32.52,-77.87, 2 +ILM00115, 9,20SW_ILM ,34.11,-78.15, 2 +ILM00116, 9,30SW_ILM ,34.00,-78.30, 2 +ILM00117, 9,40SW_ILM ,33.88,-78.44, 2 +ILM00118, 9,50SW_ILM ,33.76,-78.58, 2 +ILM00122, 9,20W_ILM ,34.35,-78.27, 2 +ILM00123, 9,30W_ILM ,34.35,-78.48, 2 +ILM00124, 9,40W_ILM ,34.35,-78.68, 2 +ILM00129, 9,20NW_ILM ,34.59,-78.16, 2 +ILM00130, 9,30NW_ILM ,34.70,-78.30, 2 +ILM00131, 9,40NW_ILM ,34.82,-78.44, 2 SLT00000, 9,SLT ,41.51,-77.97, 1 SLT00001, 9,20N_SLT ,41.84,-77.97, 2 SLT00002, 9,30N_SLT ,42.01,-77.97, 2 @@ -1530,11 +1530,11 @@ PBI00073, 9,20S_PBI ,26.35,-80.09, 2 PBI00074, 9,30S_PBI ,26.18,-80.09, 2 PBI00077, 9,20SW_PBI ,26.44,-80.35, 2 PBI00078, 9,30SW_PBI ,26.33,-80.48, 2 -PBI00083, 9,20W_PBI ,26.68,-80.46, 2 -PBI00084, 9,30W_PBI ,26.68,-80.65, 2 -PBI00085, 9,40W_PBI ,26.68,-80.84, 2 -PBI00089, 9,20NW_PBI ,26.92,-80.35, 2 -PBI00090, 9,30NW_PBI ,27.03,-80.49, 2 +PBI00082, 9,20W_PBI ,26.68,-80.46, 2 +PBI00083, 9,30W_PBI ,26.68,-80.65, 2 +PBI00084, 9,40W_PBI ,26.68,-80.84, 2 +PBI00088, 9,20NW_PBI ,26.92,-80.35, 2 +PBI00089, 9,30NW_PBI ,27.03,-80.49, 2 EKN00000, 9,EKN ,38.92,-80.10, 1 EKN00001, 9,20N_EKN ,39.25,-80.10, 2 EKN00002, 9,30N_EKN ,39.42,-80.10, 2 @@ -1657,42 +1657,41 @@ MIA00093, 9,50SW_MIA ,25.21,-80.95, 2 MIA00099, 9,20W_MIA ,25.80,-80.67, 2 MIA00100, 9,30W_MIA ,25.80,-80.85, 2 MIA00101, 9,40W_MIA ,25.80,-81.04, 2 -MIA00102, 9,50W_MIA ,25.80,-81.22, 2 -MIA00106, 9,20NW_MIA ,26.04,-80.56, 2 -MIA00107, 9,30NW_MIA ,26.15,-80.69, 2 -MIA00108, 9,40NW_MIA ,26.27,-80.83, 2 -VRB00000, 9,VRB ,27.68,-80.49, 1 -VRB00001, 9,20N_VRB ,28.01,-80.49, 2 -VRB00002, 9,30N_VRB ,28.18,-80.49, 2 -VRB00008, 9,20NE_VRB ,27.92,-80.22, 2 -VRB00009, 9,30NE_VRB ,28.03,-80.09, 2 -VRB00010, 9,40NE_VRB ,28.15,-79.96, 2 -VRB00011, 9,50NE_VRB ,28.27,-79.82, 2 -VRB00012, 9,60NE_VRB ,28.38,-79.69, 2 -VRB00013, 9,70NE_VRB ,28.50,-79.55, 2 -VRB00014, 9,80NE_VRB ,28.62,-79.42, 2 -VRB00015, 9,90NE_VRB ,28.73,-79.28, 2 -VRB00016, 9,100NE_VRB ,28.85,-79.15, 2 -VRB00040, 9,20E_VRB ,27.68,-80.11, 2 -VRB00041, 9,30E_VRB ,27.68,-79.93, 2 -VRB00042, 9,40E_VRB ,27.68,-79.74, 2 -VRB00043, 9,50E_VRB ,27.68,-79.55, 2 -VRB00044, 9,60E_VRB ,27.68,-79.36, 2 -VRB00045, 9,70E_VRB ,27.67,-79.17, 2 -VRB00046, 9,80E_VRB ,27.67,-78.99, 2 -VRB00047, 9,90E_VRB ,27.67,-78.80, 2 -VRB00052, 9,20SE_VRB ,27.44,-80.22, 2 -VRB00053, 9,30SE_VRB ,27.33,-80.09, 2 -VRB00056, 9,20S_VRB ,27.35,-80.49, 2 -VRB00057, 9,30S_VRB ,27.18,-80.49, 2 -VRB00061, 9,20SW_VRB ,27.44,-80.76, 2 -VRB00062, 9,30SW_VRB ,27.33,-80.89, 2 -VRB00063, 9,40SW_VRB ,27.21,-81.02, 2 -VRB00064, 9,50SW_VRB ,27.09,-81.15, 2 -VRB00069, 9,20W_VRB ,27.68,-80.87, 2 -VRB00070, 9,30W_VRB ,27.68,-81.05, 2 -VRB00071, 9,40W_VRB ,27.68,-81.24, 2 -VRB00074, 9,20NW_VRB ,27.92,-80.76, 2 +MIA00105, 9,20NW_MIA ,26.04,-80.56, 2 +MIA00106, 9,30NW_MIA ,26.15,-80.69, 2 +MIA00107, 9,40NW_MIA ,26.27,-80.83, 2 +TRV00000, 9,TRV ,27.68,-80.49, 1 +TRV00001, 9,20N_TRV ,28.01,-80.49, 2 +TRV00002, 9,30N_TRV ,28.18,-80.49, 2 +TRV00008, 9,20NE_TRV ,27.92,-80.22, 2 +TRV00009, 9,30NE_TRV ,28.03,-80.09, 2 +TRV00010, 9,40NE_TRV ,28.15,-79.96, 2 +TRV00011, 9,50NE_TRV ,28.27,-79.82, 2 +TRV00012, 9,60NE_TRV ,28.38,-79.69, 2 +TRV00013, 9,70NE_TRV ,28.50,-79.55, 2 +TRV00014, 9,80NE_TRV ,28.62,-79.42, 2 +TRV00015, 9,90NE_TRV ,28.73,-79.28, 2 +TRV00016, 9,100NE_TRV ,28.85,-79.15, 2 +TRV00040, 9,20E_TRV ,27.68,-80.11, 2 +TRV00041, 9,30E_TRV ,27.68,-79.93, 2 +TRV00042, 9,40E_TRV ,27.68,-79.74, 2 +TRV00043, 9,50E_TRV ,27.68,-79.55, 2 +TRV00044, 9,60E_TRV ,27.68,-79.36, 2 +TRV00045, 9,70E_TRV ,27.67,-79.17, 2 +TRV00046, 9,80E_TRV ,27.67,-78.99, 2 +TRV00047, 9,90E_TRV ,27.67,-78.80, 2 +TRV00052, 9,20SE_TRV ,27.44,-80.22, 2 +TRV00053, 9,30SE_TRV ,27.33,-80.09, 2 +TRV00056, 9,20S_TRV ,27.35,-80.49, 2 +TRV00057, 9,30S_TRV ,27.18,-80.49, 2 +TRV00061, 9,20SW_TRV ,27.44,-80.76, 2 +TRV00062, 9,30SW_TRV ,27.33,-80.89, 2 +TRV00063, 9,40SW_TRV ,27.21,-81.02, 2 +TRV00064, 9,50SW_TRV ,27.09,-81.15, 2 +TRV00069, 9,20W_TRV ,27.68,-80.87, 2 +TRV00070, 9,30W_TRV ,27.68,-81.05, 2 +TRV00071, 9,40W_TRV ,27.68,-81.24, 2 +TRV00074, 9,20NW_TRV ,27.92,-80.76, 2 PSK00000, 9,PSK ,37.09,-80.71, 1 PSK00002, 9,20NE_PSK ,37.33,-80.41, 2 PSK00003, 9,30NE_PSK ,37.44,-80.27, 2 @@ -2082,42 +2081,41 @@ EYW00193, 9,220W_EYW ,24.54,-85.83, 2 EYW00194, 9,230W_EYW ,24.53,-86.01, 2 EYW00195, 9,240W_EYW ,24.53,-86.19, 2 EYW00196, 9,250W_EYW ,24.52,-86.38, 2 -EYW00209, 9,20NW_EYW ,24.83,-82.06, 2 -EYW00210, 9,30NW_EYW ,24.94,-82.19, 2 -EYW00211, 9,40NW_EYW ,25.06,-82.32, 2 -EYW00212, 9,50NW_EYW ,25.18,-82.45, 2 -EYW00213, 9,60NW_EYW ,25.29,-82.58, 2 -EYW00214, 9,70NW_EYW ,25.41,-82.71, 2 -FMY00000, 9,FMY ,26.58,-81.87, 1 -FMY00001, 9,20N_FMY ,26.91,-81.87, 2 -FMY00002, 9,30N_FMY ,27.08,-81.87, 2 -FMY00006, 9,20NE_FMY ,26.82,-81.61, 2 -FMY00007, 9,30NE_FMY ,26.93,-81.47, 2 -FMY00008, 9,40NE_FMY ,27.05,-81.34, 2 -FMY00012, 9,20E_FMY ,26.58,-81.50, 2 -FMY00013, 9,30E_FMY ,26.58,-81.31, 2 -FMY00014, 9,40E_FMY ,26.58,-81.13, 2 -FMY00019, 9,20SE_FMY ,26.34,-81.61, 2 -FMY00020, 9,30SE_FMY ,26.23,-81.48, 2 -FMY00021, 9,40SE_FMY ,26.11,-81.35, 2 -FMY00022, 9,50SE_FMY ,25.99,-81.21, 2 -FMY00028, 9,20S_FMY ,26.25,-81.87, 2 -FMY00029, 9,30S_FMY ,26.08,-81.87, 2 -FMY00030, 9,40S_FMY ,25.91,-81.87, 2 -FMY00031, 9,50S_FMY ,25.75,-81.87, 2 -FMY00032, 9,60S_FMY ,25.58,-81.87, 2 -FMY00038, 9,20SW_FMY ,26.34,-82.13, 2 -FMY00039, 9,30SW_FMY ,26.23,-82.26, 2 -FMY00040, 9,40SW_FMY ,26.11,-82.39, 2 -FMY00041, 9,50SW_FMY ,25.99,-82.53, 2 -FMY00042, 9,60SW_FMY ,25.87,-82.66, 2 -FMY00043, 9,70SW_FMY ,25.75,-82.79, 2 -FMY00044, 9,80SW_FMY ,25.63,-82.91, 2 -FMY00045, 9,90SW_FMY ,25.52,-83.04, 2 -FMY00056, 9,20W_FMY ,26.58,-82.24, 2 -FMY00057, 9,30W_FMY ,26.58,-82.43, 2 -FMY00058, 9,40W_FMY ,26.58,-82.61, 2 -FMY00061, 9,20NW_FMY ,26.82,-82.13, 2 +EYW00210, 9,20NW_EYW ,24.83,-82.06, 2 +EYW00211, 9,30NW_EYW ,24.94,-82.19, 2 +EYW00212, 9,40NW_EYW ,25.06,-82.32, 2 +EYW00213, 9,50NW_EYW ,25.18,-82.45, 2 +EYW00214, 9,60NW_EYW ,25.29,-82.58, 2 +EYW00215, 9,70NW_EYW ,25.41,-82.71, 2 +RSW00000, 9,RSW ,26.53,-81.78, 1 +RSW00001, 9,20N_RSW ,26.86,-81.78, 2 +RSW00002, 9,30N_RSW ,27.03,-81.78, 2 +RSW00006, 9,20NE_RSW ,26.77,-81.52, 2 +RSW00007, 9,30NE_RSW ,26.88,-81.38, 2 +RSW00008, 9,40NE_RSW ,27.00,-81.25, 2 +RSW00012, 9,20E_RSW ,26.53,-81.41, 2 +RSW00013, 9,30E_RSW ,26.53,-81.22, 2 +RSW00014, 9,40E_RSW ,26.53,-81.04, 2 +RSW00018, 9,20SE_RSW ,26.29,-81.52, 2 +RSW00019, 9,30SE_RSW ,26.18,-81.39, 2 +RSW00020, 9,40SE_RSW ,26.06,-81.26, 2 +RSW00021, 9,50SE_RSW ,25.94,-81.13, 2 +RSW00027, 9,20S_RSW ,26.20,-81.78, 2 +RSW00028, 9,30S_RSW ,26.03,-81.78, 2 +RSW00029, 9,40S_RSW ,25.86,-81.78, 2 +RSW00030, 9,50S_RSW ,25.70,-81.78, 2 +RSW00031, 9,60S_RSW ,25.53,-81.78, 2 +RSW00037, 9,20SW_RSW ,26.29,-82.04, 2 +RSW00038, 9,30SW_RSW ,26.18,-82.17, 2 +RSW00039, 9,40SW_RSW ,26.06,-82.30, 2 +RSW00040, 9,50SW_RSW ,25.94,-82.43, 2 +RSW00041, 9,60SW_RSW ,25.82,-82.56, 2 +RSW00042, 9,70SW_RSW ,25.70,-82.69, 2 +RSW00043, 9,80SW_RSW ,25.58,-82.82, 2 +RSW00053, 9,20W_RSW ,26.53,-82.15, 2 +RSW00054, 9,30W_RSW ,26.53,-82.34, 2 +RSW00055, 9,40W_RSW ,26.53,-82.52, 2 +RSW00058, 9,20NW_RSW ,26.77,-82.04, 2 SPA00000, 9,SPA ,35.03,-81.93, 1 SPA00001, 9,20N_SPA ,35.36,-81.93, 2 SPA00002, 9,30N_SPA ,35.53,-81.93, 2 @@ -2283,27 +2281,27 @@ SRQ00013, 9,30SE_SRQ ,27.05,-82.15, 2 SRQ00016, 9,20S_SRQ ,27.07,-82.55, 2 SRQ00017, 9,30S_SRQ ,26.90,-82.55, 2 SRQ00018, 9,40S_SRQ ,26.73,-82.55, 2 -SRQ00024, 9,20SW_SRQ ,27.16,-82.81, 2 -SRQ00025, 9,30SW_SRQ ,27.05,-82.95, 2 -SRQ00026, 9,40SW_SRQ ,26.93,-83.08, 2 -SRQ00027, 9,50SW_SRQ ,26.81,-83.21, 2 -SRQ00028, 9,60SW_SRQ ,26.69,-83.34, 2 -SRQ00029, 9,70SW_SRQ ,26.57,-83.47, 2 -SRQ00030, 9,80SW_SRQ ,26.45,-83.60, 2 -SRQ00031, 9,90SW_SRQ ,26.34,-83.73, 2 -SRQ00032, 9,100SW_SRQ ,26.22,-83.86, 2 -SRQ00033, 9,110SW_SRQ ,26.10,-83.99, 2 -SRQ00034, 9,120SW_SRQ ,25.98,-84.12, 2 -SRQ00035, 9,130SW_SRQ ,25.86,-84.25, 2 -SRQ00036, 9,140SW_SRQ ,25.74,-84.38, 2 -SRQ00037, 9,150SW_SRQ ,25.62,-84.51, 2 -SRQ00038, 9,160SW_SRQ ,25.50,-84.64, 2 -SRQ00039, 9,170SW_SRQ ,25.38,-84.77, 2 -SRQ00063, 9,20W_SRQ ,27.40,-82.93, 2 -SRQ00064, 9,30W_SRQ ,27.40,-83.11, 2 -SRQ00065, 9,40W_SRQ ,27.40,-83.30, 2 -SRQ00066, 9,50W_SRQ ,27.40,-83.49, 2 -SRQ00067, 9,60W_SRQ ,27.40,-83.68, 2 +SRQ00025, 9,20SW_SRQ ,27.16,-82.81, 2 +SRQ00026, 9,30SW_SRQ ,27.05,-82.95, 2 +SRQ00027, 9,40SW_SRQ ,26.93,-83.08, 2 +SRQ00028, 9,50SW_SRQ ,26.81,-83.21, 2 +SRQ00029, 9,60SW_SRQ ,26.69,-83.34, 2 +SRQ00030, 9,70SW_SRQ ,26.57,-83.47, 2 +SRQ00031, 9,80SW_SRQ ,26.45,-83.60, 2 +SRQ00032, 9,90SW_SRQ ,26.34,-83.73, 2 +SRQ00033, 9,100SW_SRQ ,26.22,-83.86, 2 +SRQ00034, 9,110SW_SRQ ,26.10,-83.99, 2 +SRQ00035, 9,120SW_SRQ ,25.98,-84.12, 2 +SRQ00036, 9,130SW_SRQ ,25.86,-84.25, 2 +SRQ00037, 9,140SW_SRQ ,25.74,-84.38, 2 +SRQ00038, 9,150SW_SRQ ,25.62,-84.51, 2 +SRQ00039, 9,160SW_SRQ ,25.50,-84.64, 2 +SRQ00040, 9,170SW_SRQ ,25.38,-84.77, 2 +SRQ00064, 9,20W_SRQ ,27.40,-82.93, 2 +SRQ00065, 9,30W_SRQ ,27.40,-83.11, 2 +SRQ00066, 9,40W_SRQ ,27.40,-83.30, 2 +SRQ00067, 9,50W_SRQ ,27.40,-83.49, 2 +SRQ00068, 9,60W_SRQ ,27.40,-83.68, 2 APE00000, 9,APE ,40.15,-82.59, 1 APE00001, 9,20N_APE ,40.48,-82.59, 2 APE00002, 9,30N_APE ,40.65,-82.59, 2 @@ -2622,30 +2620,30 @@ LOZ00054, 9,50W_LOZ ,37.03,-85.16, 2 LOZ00058, 9,20NW_LOZ ,37.27,-84.42, 2 LOZ00059, 9,30NW_LOZ ,37.38,-84.56, 2 LOZ00060, 9,40NW_LOZ ,37.50,-84.71, 2 -ABY00000, 9,ABY ,31.65,-84.30, 1 -ABY00001, 9,20N_ABY ,31.98,-84.30, 2 -ABY00002, 9,30N_ABY ,32.15,-84.30, 2 -ABY00004, 9,20NE_ABY ,31.89,-84.02, 2 -ABY00005, 9,30NE_ABY ,32.00,-83.88, 2 -ABY00008, 9,20E_ABY ,31.65,-83.91, 2 -ABY00009, 9,30E_ABY ,31.65,-83.71, 2 -ABY00010, 9,40E_ABY ,31.65,-83.52, 2 -ABY00014, 9,20SE_ABY ,31.41,-84.02, 2 -ABY00015, 9,30SE_ABY ,31.30,-83.89, 2 -ABY00016, 9,40SE_ABY ,31.18,-83.75, 2 -ABY00017, 9,50SE_ABY ,31.06,-83.61, 2 -ABY00021, 9,20S_ABY ,31.32,-84.30, 2 -ABY00022, 9,30S_ABY ,31.15,-84.30, 2 -ABY00026, 9,20SW_ABY ,31.41,-84.58, 2 -ABY00027, 9,30SW_ABY ,31.30,-84.71, 2 -ABY00028, 9,40SW_ABY ,31.18,-84.85, 2 -ABY00034, 9,20W_ABY ,31.65,-84.69, 2 -ABY00035, 9,30W_ABY ,31.65,-84.89, 2 -ABY00036, 9,40W_ABY ,31.65,-85.08, 2 -ABY00037, 9,50W_ABY ,31.65,-85.28, 2 -ABY00042, 9,20NW_ABY ,31.89,-84.58, 2 -ABY00043, 9,30NW_ABY ,32.00,-84.72, 2 -ABY00044, 9,40NW_ABY ,32.12,-84.86, 2 +PZD00000, 9,PZD ,31.66,-84.29, 1 +PZD00001, 9,20N_PZD ,31.99,-84.29, 2 +PZD00002, 9,30N_PZD ,32.16,-84.29, 2 +PZD00004, 9,20NE_PZD ,31.90,-84.01, 2 +PZD00005, 9,30NE_PZD ,32.01,-83.87, 2 +PZD00008, 9,20E_PZD ,31.66,-83.90, 2 +PZD00009, 9,30E_PZD ,31.66,-83.70, 2 +PZD00010, 9,40E_PZD ,31.66,-83.51, 2 +PZD00014, 9,20SE_PZD ,31.42,-84.01, 2 +PZD00015, 9,30SE_PZD ,31.31,-83.88, 2 +PZD00016, 9,40SE_PZD ,31.19,-83.74, 2 +PZD00017, 9,50SE_PZD ,31.07,-83.60, 2 +PZD00021, 9,20S_PZD ,31.33,-84.29, 2 +PZD00022, 9,30S_PZD ,31.16,-84.29, 2 +PZD00026, 9,20SW_PZD ,31.42,-84.57, 2 +PZD00027, 9,30SW_PZD ,31.31,-84.70, 2 +PZD00028, 9,40SW_PZD ,31.19,-84.84, 2 +PZD00034, 9,20W_PZD ,31.66,-84.68, 2 +PZD00035, 9,30W_PZD ,31.66,-84.88, 2 +PZD00036, 9,40W_PZD ,31.66,-85.07, 2 +PZD00037, 9,50W_PZD ,31.66,-85.27, 2 +PZD00042, 9,20NW_PZD ,31.90,-84.57, 2 +PZD00043, 9,30NW_PZD ,32.01,-84.71, 2 +PZD00044, 9,40NW_PZD ,32.13,-84.85, 2 SSM00000, 9,SSM ,46.41,-84.31, 1 SSM00001, 9,20N_SSM ,46.74,-84.31, 2 SSM00002, 9,30N_SSM ,46.91,-84.31, 2 @@ -2946,31 +2944,31 @@ TVC00058, 9,20NW_TVC ,44.91,-85.88, 2 TVC00059, 9,30NW_TVC ,45.02,-86.05, 2 TVC00060, 9,40NW_TVC ,45.14,-86.22, 2 TVC00061, 9,50NW_TVC ,45.26,-86.39, 2 -LOU00000, 9,LOU ,38.10,-85.58, 1 -LOU00001, 9,20N_LOU ,38.43,-85.58, 2 -LOU00002, 9,30N_LOU ,38.60,-85.58, 2 -LOU00004, 9,20NE_LOU ,38.34,-85.28, 2 -LOU00007, 9,20E_LOU ,38.10,-85.16, 2 -LOU00008, 9,30E_LOU ,38.10,-84.95, 2 -LOU00009, 9,40E_LOU ,38.10,-84.73, 2 -LOU00014, 9,20SE_LOU ,37.86,-85.28, 2 -LOU00015, 9,30SE_LOU ,37.75,-85.13, 2 -LOU00016, 9,40SE_LOU ,37.63,-84.99, 2 -LOU00017, 9,50SE_LOU ,37.51,-84.84, 2 -LOU00022, 9,20S_LOU ,37.77,-85.58, 2 -LOU00023, 9,30S_LOU ,37.60,-85.58, 2 -LOU00024, 9,40S_LOU ,37.43,-85.58, 2 -LOU00025, 9,50S_LOU ,37.27,-85.58, 2 -LOU00029, 9,20SW_LOU ,37.86,-85.88, 2 -LOU00030, 9,30SW_LOU ,37.75,-86.03, 2 -LOU00031, 9,40SW_LOU ,37.63,-86.17, 2 -LOU00036, 9,20W_LOU ,38.10,-86.00, 2 -LOU00037, 9,30W_LOU ,38.10,-86.21, 2 -LOU00038, 9,40W_LOU ,38.10,-86.43, 2 -LOU00039, 9,50W_LOU ,38.10,-86.64, 2 -LOU00044, 9,20NW_LOU ,38.34,-85.88, 2 -LOU00045, 9,30NW_LOU ,38.45,-86.03, 2 -LOU00046, 9,40NW_LOU ,38.57,-86.18, 2 +IIU00000, 9,IIU ,38.10,-85.58, 1 +IIU00001, 9,20N_IIU ,38.43,-85.58, 2 +IIU00002, 9,30N_IIU ,38.60,-85.58, 2 +IIU00004, 9,20NE_IIU ,38.34,-85.28, 2 +IIU00007, 9,20E_IIU ,38.10,-85.16, 2 +IIU00008, 9,30E_IIU ,38.10,-84.95, 2 +IIU00009, 9,40E_IIU ,38.10,-84.73, 2 +IIU00014, 9,20SE_IIU ,37.86,-85.28, 2 +IIU00015, 9,30SE_IIU ,37.75,-85.13, 2 +IIU00016, 9,40SE_IIU ,37.63,-84.99, 2 +IIU00017, 9,50SE_IIU ,37.51,-84.84, 2 +IIU00022, 9,20S_IIU ,37.77,-85.58, 2 +IIU00023, 9,30S_IIU ,37.60,-85.58, 2 +IIU00024, 9,40S_IIU ,37.43,-85.58, 2 +IIU00025, 9,50S_IIU ,37.27,-85.58, 2 +IIU00029, 9,20SW_IIU ,37.86,-85.88, 2 +IIU00030, 9,30SW_IIU ,37.75,-86.03, 2 +IIU00031, 9,40SW_IIU ,37.63,-86.17, 2 +IIU00036, 9,20W_IIU ,38.10,-86.00, 2 +IIU00037, 9,30W_IIU ,38.10,-86.21, 2 +IIU00038, 9,40W_IIU ,38.10,-86.43, 2 +IIU00039, 9,50W_IIU ,38.10,-86.64, 2 +IIU00044, 9,20NW_IIU ,38.34,-85.88, 2 +IIU00045, 9,30NW_IIU ,38.45,-86.03, 2 +IIU00046, 9,40NW_IIU ,38.57,-86.18, 2 MKG00000, 9,MKG ,43.17,-86.04, 1 MKG00001, 9,20N_MKG ,43.50,-86.04, 2 MKG00002, 9,30N_MKG ,43.67,-86.04, 2 @@ -3461,19 +3459,18 @@ SJI00041, 9,60S_SJI ,29.73,-88.36, 2 SJI00042, 9,70S_SJI ,29.56,-88.36, 2 SJI00043, 9,80S_SJI ,29.40,-88.36, 2 SJI00044, 9,90S_SJI ,29.23,-88.36, 2 -SJI00051, 9,20SW_SJI ,30.49,-88.63, 2 -SJI00052, 9,30SW_SJI ,30.38,-88.77, 2 -SJI00053, 9,40SW_SJI ,30.26,-88.91, 2 -SJI00054, 9,50SW_SJI ,30.14,-89.04, 2 -SJI00055, 9,60SW_SJI ,30.02,-89.18, 2 -SJI00060, 9,20W_SJI ,30.73,-88.75, 2 -SJI00061, 9,30W_SJI ,30.73,-88.94, 2 -SJI00062, 9,40W_SJI ,30.73,-89.14, 2 -SJI00063, 9,50W_SJI ,30.73,-89.33, 2 -SJI00067, 9,20NW_SJI ,30.97,-88.63, 2 -SJI00068, 9,30NW_SJI ,31.08,-88.77, 2 -SJI00069, 9,40NW_SJI ,31.20,-88.91, 2 -SJI00070, 9,50NW_SJI ,31.32,-89.05, 2 +SJI00050, 9,20SW_SJI ,30.49,-88.63, 2 +SJI00051, 9,30SW_SJI ,30.38,-88.77, 2 +SJI00052, 9,40SW_SJI ,30.26,-88.91, 2 +SJI00053, 9,50SW_SJI ,30.14,-89.04, 2 +SJI00058, 9,20W_SJI ,30.73,-88.75, 2 +SJI00059, 9,30W_SJI ,30.73,-88.94, 2 +SJI00060, 9,40W_SJI ,30.73,-89.14, 2 +SJI00061, 9,50W_SJI ,30.73,-89.33, 2 +SJI00065, 9,20NW_SJI ,30.97,-88.63, 2 +SJI00066, 9,30NW_SJI ,31.08,-88.77, 2 +SJI00067, 9,40NW_SJI ,31.20,-88.91, 2 +SJI00068, 9,50NW_SJI ,31.32,-89.05, 2 IGB00000, 9,IGB ,33.48,-88.52, 1 IGB00001, 9,20N_IGB ,33.81,-88.52, 2 IGB00002, 9,30N_IGB ,33.98,-88.52, 2 @@ -3521,42 +3518,41 @@ MEI00030, 9,50S_MEI ,31.55,-88.80, 2 MEI00036, 9,20SW_MEI ,32.14,-89.08, 2 MEI00037, 9,30SW_MEI ,32.03,-89.22, 2 MEI00038, 9,40SW_MEI ,31.91,-89.35, 2 -MEI00039, 9,50SW_MEI ,31.79,-89.49, 2 -MEI00042, 9,20W_MEI ,32.38,-89.19, 2 -MEI00043, 9,30W_MEI ,32.38,-89.39, 2 -MEI00046, 9,20NW_MEI ,32.62,-89.08, 2 -MEI00047, 9,30NW_MEI ,32.73,-89.22, 2 -MEI00048, 9,40NW_MEI ,32.85,-89.36, 2 -DEC00000, 9,DEC ,39.74,-88.86, 1 -DEC00001, 9,20N_DEC ,40.07,-88.86, 2 -DEC00002, 9,30N_DEC ,40.24,-88.86, 2 -DEC00003, 9,40N_DEC ,40.41,-88.86, 2 -DEC00007, 9,20NE_DEC ,39.98,-88.55, 2 -DEC00008, 9,30NE_DEC ,40.09,-88.40, 2 -DEC00009, 9,40NE_DEC ,40.21,-88.24, 2 -DEC00013, 9,20E_DEC ,39.74,-88.43, 2 -DEC00014, 9,30E_DEC ,39.74,-88.21, 2 -DEC00015, 9,40E_DEC ,39.74,-87.99, 2 -DEC00019, 9,20SE_DEC ,39.50,-88.55, 2 -DEC00020, 9,30SE_DEC ,39.39,-88.40, 2 -DEC00021, 9,40SE_DEC ,39.27,-88.25, 2 -DEC00027, 9,20S_DEC ,39.41,-88.86, 2 -DEC00028, 9,30S_DEC ,39.24,-88.86, 2 -DEC00029, 9,40S_DEC ,39.07,-88.86, 2 -DEC00030, 9,50S_DEC ,38.91,-88.86, 2 -DEC00031, 9,60S_DEC ,38.74,-88.86, 2 -DEC00032, 9,70S_DEC ,38.57,-88.86, 2 -DEC00038, 9,20SW_DEC ,39.50,-89.17, 2 -DEC00039, 9,30SW_DEC ,39.39,-89.32, 2 -DEC00040, 9,40SW_DEC ,39.27,-89.47, 2 -DEC00041, 9,50SW_DEC ,39.15,-89.62, 2 -DEC00046, 9,20W_DEC ,39.74,-89.29, 2 -DEC00047, 9,30W_DEC ,39.74,-89.51, 2 -DEC00048, 9,40W_DEC ,39.74,-89.73, 2 -DEC00049, 9,50W_DEC ,39.73,-89.94, 2 -DEC00054, 9,20NW_DEC ,39.98,-89.17, 2 -DEC00055, 9,30NW_DEC ,40.09,-89.32, 2 -DEC00056, 9,40NW_DEC ,40.21,-89.48, 2 +MEI00041, 9,20W_MEI ,32.38,-89.19, 2 +MEI00042, 9,30W_MEI ,32.38,-89.39, 2 +MEI00045, 9,20NW_MEI ,32.62,-89.08, 2 +MEI00046, 9,30NW_MEI ,32.73,-89.22, 2 +MEI00047, 9,40NW_MEI ,32.85,-89.36, 2 +AXC00000, 9,AXC ,39.74,-88.86, 1 +AXC00001, 9,20N_AXC ,40.07,-88.86, 2 +AXC00002, 9,30N_AXC ,40.24,-88.86, 2 +AXC00003, 9,40N_AXC ,40.41,-88.86, 2 +AXC00007, 9,20NE_AXC ,39.98,-88.55, 2 +AXC00008, 9,30NE_AXC ,40.09,-88.40, 2 +AXC00009, 9,40NE_AXC ,40.21,-88.24, 2 +AXC00013, 9,20E_AXC ,39.74,-88.43, 2 +AXC00014, 9,30E_AXC ,39.74,-88.21, 2 +AXC00015, 9,40E_AXC ,39.74,-87.99, 2 +AXC00019, 9,20SE_AXC ,39.50,-88.55, 2 +AXC00020, 9,30SE_AXC ,39.39,-88.40, 2 +AXC00021, 9,40SE_AXC ,39.27,-88.25, 2 +AXC00027, 9,20S_AXC ,39.41,-88.86, 2 +AXC00028, 9,30S_AXC ,39.24,-88.86, 2 +AXC00029, 9,40S_AXC ,39.07,-88.86, 2 +AXC00030, 9,50S_AXC ,38.91,-88.86, 2 +AXC00031, 9,60S_AXC ,38.74,-88.86, 2 +AXC00032, 9,70S_AXC ,38.57,-88.86, 2 +AXC00038, 9,20SW_AXC ,39.50,-89.17, 2 +AXC00039, 9,30SW_AXC ,39.39,-89.32, 2 +AXC00040, 9,40SW_AXC ,39.27,-89.47, 2 +AXC00041, 9,50SW_AXC ,39.15,-89.62, 2 +AXC00046, 9,20W_AXC ,39.74,-89.29, 2 +AXC00047, 9,30W_AXC ,39.74,-89.51, 2 +AXC00048, 9,40W_AXC ,39.74,-89.73, 2 +AXC00049, 9,50W_AXC ,39.73,-89.94, 2 +AXC00054, 9,20NW_AXC ,39.98,-89.17, 2 +AXC00055, 9,30NW_AXC ,40.09,-89.32, 2 +AXC00056, 9,40NW_AXC ,40.21,-89.48, 2 YQT00000, 9,YQT ,48.37,-89.32, 1 YQT00001, 9,20N_YQT ,48.70,-89.32, 2 YQT00002, 9,30N_YQT ,48.87,-89.32, 2 @@ -3802,127 +3798,125 @@ MEM00045, 9,50W_MEM ,35.06,-91.00, 2 MEM00048, 9,20NW_MEM ,35.30,-90.27, 2 MEM00049, 9,30NW_MEM ,35.41,-90.41, 2 LEV00000, 9,LEV ,29.18,-90.10, 1 -LEV00001, 9,20N_LEV ,29.51,-90.10, 2 -LEV00003, 9,20NE_LEV ,29.42,-89.83, 2 -LEV00004, 9,30NE_LEV ,29.53,-89.69, 2 -LEV00010, 9,20E_LEV ,29.18,-89.72, 2 -LEV00011, 9,30E_LEV ,29.18,-89.53, 2 -LEV00012, 9,40E_LEV ,29.18,-89.34, 2 -LEV00013, 9,50E_LEV ,29.18,-89.15, 2 -LEV00014, 9,60E_LEV ,29.18,-88.96, 2 -LEV00015, 9,70E_LEV ,29.17,-88.76, 2 -LEV00016, 9,80E_LEV ,29.17,-88.57, 2 -LEV00029, 9,20SE_LEV ,28.94,-89.83, 2 -LEV00030, 9,30SE_LEV ,28.83,-89.70, 2 -LEV00031, 9,40SE_LEV ,28.71,-89.56, 2 -LEV00032, 9,50SE_LEV ,28.59,-89.43, 2 -LEV00033, 9,60SE_LEV ,28.47,-89.30, 2 -LEV00034, 9,70SE_LEV ,28.35,-89.16, 2 -LEV00035, 9,80SE_LEV ,28.23,-89.03, 2 -LEV00036, 9,90SE_LEV ,28.11,-88.90, 2 -LEV00037, 9,100SE_LEV ,28.00,-88.77, 2 -LEV00038, 9,110SE_LEV ,27.88,-88.63, 2 -LEV00039, 9,120SE_LEV ,27.76,-88.50, 2 -LEV00040, 9,130SE_LEV ,27.64,-88.37, 2 -LEV00041, 9,140SE_LEV ,27.52,-88.24, 2 -LEV00042, 9,150SE_LEV ,27.40,-88.11, 2 -LEV00043, 9,160SE_LEV ,27.28,-87.98, 2 -LEV00044, 9,190SE_LEV ,26.92,-87.59, 2 -LEV00045, 9,200SE_LEV ,26.80,-87.46, 2 -LEV00046, 9,210SE_LEV ,26.68,-87.33, 2 -LEV00047, 9,220SE_LEV ,26.56,-87.20, 2 -LEV00048, 9,230SE_LEV ,26.44,-87.08, 2 -LEV00049, 9,240SE_LEV ,26.32,-86.95, 2 -LEV00050, 9,250SE_LEV ,26.20,-86.82, 2 -LEV00074, 9,20S_LEV ,28.85,-90.10, 2 -LEV00075, 9,30S_LEV ,28.68,-90.10, 2 -LEV00076, 9,40S_LEV ,28.51,-90.10, 2 -LEV00077, 9,50S_LEV ,28.35,-90.10, 2 -LEV00078, 9,60S_LEV ,28.18,-90.10, 2 -LEV00079, 9,70S_LEV ,28.01,-90.10, 2 -LEV00080, 9,80S_LEV ,27.85,-90.10, 2 -LEV00081, 9,90S_LEV ,27.68,-90.10, 2 -LEV00082, 9,100S_LEV ,27.51,-90.10, 2 -LEV00083, 9,110S_LEV ,27.35,-90.10, 2 -LEV00084, 9,120S_LEV ,27.18,-90.10, 2 -LEV00085, 9,130S_LEV ,27.01,-90.10, 2 -LEV00086, 9,140S_LEV ,26.85,-90.10, 2 -LEV00087, 9,150S_LEV ,26.68,-90.10, 2 -LEV00088, 9,160S_LEV ,26.52,-90.10, 2 -LEV00089, 9,170S_LEV ,26.35,-90.10, 2 -LEV00090, 9,180S_LEV ,26.18,-90.10, 2 -LEV00091, 9,190S_LEV ,26.02,-90.10, 2 -LEV00092, 9,200S_LEV ,25.85,-90.10, 2 -LEV00093, 9,210S_LEV ,25.68,-90.10, 2 -LEV00094, 9,220S_LEV ,25.52,-90.10, 2 -LEV00095, 9,230S_LEV ,25.35,-90.10, 2 -LEV00096, 9,240S_LEV ,25.18,-90.10, 2 -LEV00097, 9,250S_LEV ,25.02,-90.10, 2 -LEV00121, 9,20SW_LEV ,28.94,-90.37, 2 -LEV00122, 9,30SW_LEV ,28.83,-90.50, 2 -LEV00123, 9,40SW_LEV ,28.71,-90.64, 2 -LEV00124, 9,50SW_LEV ,28.59,-90.77, 2 -LEV00125, 9,60SW_LEV ,28.47,-90.90, 2 -LEV00126, 9,70SW_LEV ,28.35,-91.04, 2 -LEV00127, 9,80SW_LEV ,28.23,-91.17, 2 -LEV00128, 9,90SW_LEV ,28.11,-91.30, 2 -LEV00129, 9,100SW_LEV ,28.00,-91.43, 2 -LEV00130, 9,110SW_LEV ,27.88,-91.57, 2 -LEV00131, 9,120SW_LEV ,27.76,-91.70, 2 -LEV00132, 9,130SW_LEV ,27.64,-91.83, 2 -LEV00133, 9,140SW_LEV ,27.52,-91.96, 2 -LEV00134, 9,150SW_LEV ,27.40,-92.09, 2 -LEV00135, 9,160SW_LEV ,27.28,-92.22, 2 -LEV00136, 9,170SW_LEV ,27.16,-92.35, 2 -LEV00137, 9,180SW_LEV ,27.04,-92.48, 2 -LEV00138, 9,190SW_LEV ,26.92,-92.61, 2 -LEV00149, 9,20W_LEV ,29.18,-90.48, 2 -LEV00150, 9,30W_LEV ,29.18,-90.67, 2 -LEV00151, 9,40W_LEV ,29.18,-90.86, 2 -LEV00152, 9,50W_LEV ,29.18,-91.05, 2 -LEV00153, 9,60W_LEV ,29.18,-91.24, 2 -LEV00154, 9,70W_LEV ,29.17,-91.44, 2 -LEV00157, 9,20NW_LEV ,29.42,-90.37, 2 -JAN00000, 9,JAN ,32.51,-90.17, 1 -JAN00001, 9,20N_JAN ,32.84,-90.17, 2 -JAN00003, 9,20NE_JAN ,32.75,-89.89, 2 -JAN00004, 9,30NE_JAN ,32.86,-89.75, 2 -JAN00008, 9,20E_JAN ,32.51,-89.78, 2 -JAN00009, 9,30E_JAN ,32.51,-89.58, 2 -JAN00012, 9,20SE_JAN ,32.27,-89.89, 2 -JAN00013, 9,30SE_JAN ,32.16,-89.75, 2 -JAN00014, 9,40SE_JAN ,32.04,-89.61, 2 -JAN00018, 9,20S_JAN ,32.18,-90.17, 2 -JAN00019, 9,30S_JAN ,32.01,-90.17, 2 -JAN00020, 9,40S_JAN ,31.84,-90.17, 2 -JAN00024, 9,20SW_JAN ,32.27,-90.45, 2 -JAN00025, 9,30SW_JAN ,32.16,-90.59, 2 -JAN00026, 9,40SW_JAN ,32.04,-90.73, 2 -JAN00027, 9,50SW_JAN ,31.92,-90.86, 2 -JAN00032, 9,20W_JAN ,32.51,-90.56, 2 -JAN00033, 9,30W_JAN ,32.51,-90.76, 2 -JAN00034, 9,40W_JAN ,32.51,-90.96, 2 -JAN00038, 9,20NW_JAN ,32.75,-90.45, 2 -MSY00000, 9,MSY ,30.00,-90.27, 1 -MSY00001, 9,20N_MSY ,30.33,-90.27, 2 -MSY00002, 9,30N_MSY ,30.50,-90.27, 2 -MSY00005, 9,20NE_MSY ,30.24,-90.00, 2 -MSY00006, 9,30NE_MSY ,30.35,-89.86, 2 -MSY00007, 9,40NE_MSY ,30.47,-89.72, 2 -MSY00012, 9,20E_MSY ,30.00,-89.89, 2 -MSY00013, 9,30E_MSY ,30.00,-89.69, 2 -MSY00014, 9,40E_MSY ,30.00,-89.50, 2 -MSY00015, 9,50E_MSY ,30.00,-89.31, 2 -MSY00020, 9,20SE_MSY ,29.76,-90.00, 2 -MSY00021, 9,30SE_MSY ,29.65,-89.86, 2 -MSY00024, 9,20S_MSY ,29.67,-90.27, 2 -MSY00025, 9,30S_MSY ,29.50,-90.27, 2 -MSY00028, 9,20SW_MSY ,29.76,-90.54, 2 -MSY00029, 9,30SW_MSY ,29.65,-90.68, 2 -MSY00030, 9,40SW_MSY ,29.53,-90.81, 2 -MSY00031, 9,50SW_MSY ,29.41,-90.95, 2 -MSY00035, 9,20W_MSY ,30.00,-90.65, 2 -MSY00037, 9,20NW_MSY ,30.24,-90.54, 2 +LEV00003, 9,20E_LEV ,29.18,-89.72, 2 +LEV00004, 9,30E_LEV ,29.18,-89.53, 2 +LEV00005, 9,40E_LEV ,29.18,-89.34, 2 +LEV00006, 9,50E_LEV ,29.18,-89.15, 2 +LEV00007, 9,60E_LEV ,29.18,-88.96, 2 +LEV00008, 9,70E_LEV ,29.17,-88.76, 2 +LEV00009, 9,80E_LEV ,29.17,-88.57, 2 +LEV00022, 9,20SE_LEV ,28.94,-89.83, 2 +LEV00023, 9,30SE_LEV ,28.83,-89.70, 2 +LEV00024, 9,40SE_LEV ,28.71,-89.56, 2 +LEV00025, 9,50SE_LEV ,28.59,-89.43, 2 +LEV00026, 9,60SE_LEV ,28.47,-89.30, 2 +LEV00027, 9,70SE_LEV ,28.35,-89.16, 2 +LEV00028, 9,80SE_LEV ,28.23,-89.03, 2 +LEV00029, 9,90SE_LEV ,28.11,-88.90, 2 +LEV00030, 9,100SE_LEV ,28.00,-88.77, 2 +LEV00031, 9,110SE_LEV ,27.88,-88.63, 2 +LEV00032, 9,120SE_LEV ,27.76,-88.50, 2 +LEV00033, 9,130SE_LEV ,27.64,-88.37, 2 +LEV00034, 9,140SE_LEV ,27.52,-88.24, 2 +LEV00035, 9,150SE_LEV ,27.40,-88.11, 2 +LEV00036, 9,160SE_LEV ,27.28,-87.98, 2 +LEV00037, 9,190SE_LEV ,26.92,-87.59, 2 +LEV00038, 9,200SE_LEV ,26.80,-87.46, 2 +LEV00039, 9,210SE_LEV ,26.68,-87.33, 2 +LEV00040, 9,220SE_LEV ,26.56,-87.20, 2 +LEV00041, 9,230SE_LEV ,26.44,-87.08, 2 +LEV00042, 9,240SE_LEV ,26.32,-86.95, 2 +LEV00043, 9,250SE_LEV ,26.20,-86.82, 2 +LEV00067, 9,20S_LEV ,28.85,-90.10, 2 +LEV00068, 9,30S_LEV ,28.68,-90.10, 2 +LEV00069, 9,40S_LEV ,28.51,-90.10, 2 +LEV00070, 9,50S_LEV ,28.35,-90.10, 2 +LEV00071, 9,60S_LEV ,28.18,-90.10, 2 +LEV00072, 9,70S_LEV ,28.01,-90.10, 2 +LEV00073, 9,80S_LEV ,27.85,-90.10, 2 +LEV00074, 9,90S_LEV ,27.68,-90.10, 2 +LEV00075, 9,100S_LEV ,27.51,-90.10, 2 +LEV00076, 9,110S_LEV ,27.35,-90.10, 2 +LEV00077, 9,120S_LEV ,27.18,-90.10, 2 +LEV00078, 9,130S_LEV ,27.01,-90.10, 2 +LEV00079, 9,140S_LEV ,26.85,-90.10, 2 +LEV00080, 9,150S_LEV ,26.68,-90.10, 2 +LEV00081, 9,160S_LEV ,26.52,-90.10, 2 +LEV00082, 9,170S_LEV ,26.35,-90.10, 2 +LEV00083, 9,180S_LEV ,26.18,-90.10, 2 +LEV00084, 9,190S_LEV ,26.02,-90.10, 2 +LEV00085, 9,200S_LEV ,25.85,-90.10, 2 +LEV00086, 9,210S_LEV ,25.68,-90.10, 2 +LEV00087, 9,220S_LEV ,25.52,-90.10, 2 +LEV00088, 9,230S_LEV ,25.35,-90.10, 2 +LEV00089, 9,240S_LEV ,25.18,-90.10, 2 +LEV00090, 9,250S_LEV ,25.02,-90.10, 2 +LEV00114, 9,20SW_LEV ,28.94,-90.37, 2 +LEV00115, 9,30SW_LEV ,28.83,-90.50, 2 +LEV00116, 9,40SW_LEV ,28.71,-90.64, 2 +LEV00117, 9,50SW_LEV ,28.59,-90.77, 2 +LEV00118, 9,60SW_LEV ,28.47,-90.90, 2 +LEV00119, 9,70SW_LEV ,28.35,-91.04, 2 +LEV00120, 9,80SW_LEV ,28.23,-91.17, 2 +LEV00121, 9,90SW_LEV ,28.11,-91.30, 2 +LEV00122, 9,100SW_LEV ,28.00,-91.43, 2 +LEV00123, 9,110SW_LEV ,27.88,-91.57, 2 +LEV00124, 9,120SW_LEV ,27.76,-91.70, 2 +LEV00125, 9,130SW_LEV ,27.64,-91.83, 2 +LEV00126, 9,140SW_LEV ,27.52,-91.96, 2 +LEV00127, 9,150SW_LEV ,27.40,-92.09, 2 +LEV00128, 9,160SW_LEV ,27.28,-92.22, 2 +LEV00129, 9,170SW_LEV ,27.16,-92.35, 2 +LEV00130, 9,180SW_LEV ,27.04,-92.48, 2 +LEV00131, 9,190SW_LEV ,26.92,-92.61, 2 +LEV00142, 9,20W_LEV ,29.18,-90.48, 2 +LEV00143, 9,30W_LEV ,29.18,-90.67, 2 +LEV00144, 9,40W_LEV ,29.18,-90.86, 2 +LEV00145, 9,50W_LEV ,29.18,-91.05, 2 +LEV00146, 9,60W_LEV ,29.18,-91.24, 2 +LEV00147, 9,70W_LEV ,29.17,-91.44, 2 +LEV00152, 9,20NW_LEV ,29.42,-90.37, 2 +MHZ00000, 9,MHZ ,32.43,-90.10, 1 +MHZ00001, 9,20N_MHZ ,32.76,-90.10, 2 +MHZ00003, 9,20NE_MHZ ,32.67,-89.82, 2 +MHZ00004, 9,30NE_MHZ ,32.78,-89.68, 2 +MHZ00005, 9,40NE_MHZ ,32.90,-89.54, 2 +MHZ00008, 9,20E_MHZ ,32.43,-89.71, 2 +MHZ00009, 9,30E_MHZ ,32.43,-89.51, 2 +MHZ00012, 9,20SE_MHZ ,32.19,-89.82, 2 +MHZ00013, 9,30SE_MHZ ,32.08,-89.68, 2 +MHZ00014, 9,40SE_MHZ ,31.96,-89.54, 2 +MHZ00018, 9,20S_MHZ ,32.10,-90.10, 2 +MHZ00019, 9,30S_MHZ ,31.93,-90.10, 2 +MHZ00023, 9,20SW_MHZ ,32.19,-90.38, 2 +MHZ00024, 9,30SW_MHZ ,32.08,-90.52, 2 +MHZ00025, 9,40SW_MHZ ,31.96,-90.66, 2 +MHZ00026, 9,50SW_MHZ ,31.84,-90.79, 2 +MHZ00031, 9,20W_MHZ ,32.43,-90.49, 2 +MHZ00032, 9,30W_MHZ ,32.43,-90.69, 2 +MHZ00033, 9,40W_MHZ ,32.43,-90.89, 2 +MHZ00037, 9,20NW_MHZ ,32.67,-90.38, 2 +MHZ00038, 9,30NW_MHZ ,32.78,-90.52, 2 +HRV00000, 9,HRV ,29.85,-90.00, 1 +HRV00001, 9,20N_HRV ,30.18,-90.00, 2 +HRV00002, 9,30N_HRV ,30.35,-90.00, 2 +HRV00006, 9,20NE_HRV ,30.09,-89.73, 2 +HRV00007, 9,30NE_HRV ,30.20,-89.59, 2 +HRV00008, 9,40NE_HRV ,30.32,-89.45, 2 +HRV00012, 9,20E_HRV ,29.85,-89.62, 2 +HRV00013, 9,30E_HRV ,29.85,-89.42, 2 +HRV00014, 9,40E_HRV ,29.85,-89.23, 2 +HRV00015, 9,50E_HRV ,29.85,-89.04, 2 +HRV00022, 9,20SE_HRV ,29.61,-89.73, 2 +HRV00023, 9,30SE_HRV ,29.50,-89.59, 2 +HRV00024, 9,40SE_HRV ,29.38,-89.46, 2 +HRV00026, 9,20S_HRV ,29.52,-90.00, 2 +HRV00028, 9,20SW_HRV ,29.61,-90.27, 2 +HRV00029, 9,30SW_HRV ,29.50,-90.41, 2 +HRV00034, 9,20W_HRV ,29.85,-90.38, 2 +HRV00035, 9,30W_HRV ,29.85,-90.58, 2 +HRV00038, 9,20NW_HRV ,30.09,-90.27, 2 +HRV00039, 9,30NW_HRV ,30.20,-90.41, 2 FAM00000, 9,FAM ,37.67,-90.23, 1 FAM00001, 9,20N_FAM ,38.00,-90.23, 2 FAM00004, 9,20NE_FAM ,37.91,-89.93, 2 @@ -3957,32 +3951,30 @@ FAM00060, 9,20NW_FAM ,37.91,-90.53, 2 FAM00061, 9,30NW_FAM ,38.02,-90.68, 2 MCB00000, 9,MCB ,31.30,-90.26, 1 MCB00001, 9,20N_MCB ,31.63,-90.26, 2 -MCB00002, 9,30N_MCB ,31.80,-90.26, 2 -MCB00005, 9,20NE_MCB ,31.54,-89.98, 2 -MCB00006, 9,30NE_MCB ,31.65,-89.84, 2 -MCB00007, 9,40NE_MCB ,31.77,-89.71, 2 -MCB00011, 9,20E_MCB ,31.30,-89.87, 2 -MCB00012, 9,30E_MCB ,31.30,-89.68, 2 -MCB00013, 9,40E_MCB ,31.30,-89.48, 2 -MCB00014, 9,50E_MCB ,31.30,-89.29, 2 -MCB00019, 9,20SE_MCB ,31.06,-89.99, 2 -MCB00020, 9,30SE_MCB ,30.95,-89.85, 2 -MCB00021, 9,40SE_MCB ,30.83,-89.71, 2 -MCB00022, 9,50SE_MCB ,30.71,-89.58, 2 -MCB00023, 9,60SE_MCB ,30.59,-89.44, 2 -MCB00027, 9,20S_MCB ,30.97,-90.26, 2 -MCB00028, 9,30S_MCB ,30.80,-90.26, 2 -MCB00029, 9,40S_MCB ,30.63,-90.26, 2 -MCB00033, 9,20SW_MCB ,31.06,-90.53, 2 -MCB00034, 9,30SW_MCB ,30.95,-90.67, 2 -MCB00035, 9,40SW_MCB ,30.83,-90.81, 2 -MCB00039, 9,20W_MCB ,31.30,-90.65, 2 -MCB00040, 9,30W_MCB ,31.30,-90.84, 2 -MCB00041, 9,40W_MCB ,31.30,-91.04, 2 -MCB00042, 9,50W_MCB ,31.30,-91.23, 2 -MCB00047, 9,20NW_MCB ,31.54,-90.54, 2 -MCB00048, 9,30NW_MCB ,31.65,-90.68, 2 -MCB00049, 9,40NW_MCB ,31.77,-90.81, 2 +MCB00003, 9,20NE_MCB ,31.54,-89.98, 2 +MCB00004, 9,30NE_MCB ,31.65,-89.84, 2 +MCB00008, 9,20E_MCB ,31.30,-89.87, 2 +MCB00009, 9,30E_MCB ,31.30,-89.68, 2 +MCB00010, 9,40E_MCB ,31.30,-89.48, 2 +MCB00011, 9,50E_MCB ,31.30,-89.29, 2 +MCB00016, 9,20SE_MCB ,31.06,-89.99, 2 +MCB00017, 9,30SE_MCB ,30.95,-89.85, 2 +MCB00018, 9,40SE_MCB ,30.83,-89.71, 2 +MCB00019, 9,50SE_MCB ,30.71,-89.58, 2 +MCB00020, 9,60SE_MCB ,30.59,-89.44, 2 +MCB00025, 9,20S_MCB ,30.97,-90.26, 2 +MCB00026, 9,30S_MCB ,30.80,-90.26, 2 +MCB00027, 9,40S_MCB ,30.63,-90.26, 2 +MCB00031, 9,20SW_MCB ,31.06,-90.53, 2 +MCB00032, 9,30SW_MCB ,30.95,-90.67, 2 +MCB00033, 9,40SW_MCB ,30.83,-90.81, 2 +MCB00037, 9,20W_MCB ,31.30,-90.65, 2 +MCB00038, 9,30W_MCB ,31.30,-90.84, 2 +MCB00039, 9,40W_MCB ,31.30,-91.04, 2 +MCB00040, 9,50W_MCB ,31.30,-91.23, 2 +MCB00045, 9,20NW_MCB ,31.54,-90.54, 2 +MCB00046, 9,30NW_MCB ,31.65,-90.68, 2 +MCB00047, 9,40NW_MCB ,31.77,-90.81, 2 SQS00000, 9,SQS ,33.46,-90.28, 1 SQS00001, 9,20N_SQS ,33.79,-90.28, 2 SQS00002, 9,30N_SQS ,33.96,-90.28, 2 @@ -3999,19 +3991,19 @@ SQS00021, 9,30SE_SQS ,33.11,-89.86, 2 SQS00022, 9,40SE_SQS ,32.99,-89.72, 2 SQS00025, 9,20S_SQS ,33.13,-90.28, 2 SQS00026, 9,30S_SQS ,32.96,-90.28, 2 -SQS00029, 9,20SW_SQS ,33.22,-90.56, 2 -SQS00030, 9,30SW_SQS ,33.11,-90.70, 2 -SQS00031, 9,40SW_SQS ,32.99,-90.84, 2 -SQS00032, 9,50SW_SQS ,32.87,-90.98, 2 -SQS00037, 9,20W_SQS ,33.46,-90.68, 2 -SQS00038, 9,30W_SQS ,33.46,-90.88, 2 -SQS00039, 9,40W_SQS ,33.46,-91.08, 2 -SQS00040, 9,50W_SQS ,33.46,-91.28, 2 -SQS00041, 9,60W_SQS ,33.45,-91.48, 2 -SQS00046, 9,20NW_SQS ,33.70,-90.56, 2 -SQS00047, 9,30NW_SQS ,33.81,-90.71, 2 -SQS00048, 9,40NW_SQS ,33.93,-90.85, 2 -SQS00049, 9,50NW_SQS ,34.05,-90.99, 2 +SQS00030, 9,20SW_SQS ,33.22,-90.56, 2 +SQS00031, 9,30SW_SQS ,33.11,-90.70, 2 +SQS00032, 9,40SW_SQS ,32.99,-90.84, 2 +SQS00033, 9,50SW_SQS ,32.87,-90.98, 2 +SQS00038, 9,20W_SQS ,33.46,-90.68, 2 +SQS00039, 9,30W_SQS ,33.46,-90.88, 2 +SQS00040, 9,40W_SQS ,33.46,-91.08, 2 +SQS00041, 9,50W_SQS ,33.46,-91.28, 2 +SQS00042, 9,60W_SQS ,33.45,-91.48, 2 +SQS00047, 9,20NW_SQS ,33.70,-90.56, 2 +SQS00048, 9,30NW_SQS ,33.81,-90.71, 2 +SQS00049, 9,40NW_SQS ,33.93,-90.85, 2 +SQS00050, 9,50NW_SQS ,34.05,-90.99, 2 STL00000, 9,STL ,38.86,-90.48, 1 STL00001, 9,20N_STL ,39.19,-90.48, 2 STL00002, 9,30N_STL ,39.36,-90.48, 2 @@ -4126,23 +4118,25 @@ BTR00006, 9,20NE_BTR ,30.72,-91.03, 2 BTR00007, 9,30NE_BTR ,30.83,-90.89, 2 BTR00010, 9,20E_BTR ,30.48,-90.91, 2 BTR00011, 9,30E_BTR ,30.48,-90.72, 2 -BTR00014, 9,20SE_BTR ,30.24,-91.03, 2 -BTR00015, 9,30SE_BTR ,30.13,-90.89, 2 -BTR00019, 9,20S_BTR ,30.15,-91.30, 2 -BTR00020, 9,30S_BTR ,29.98,-91.30, 2 -BTR00021, 9,40S_BTR ,29.81,-91.30, 2 -BTR00022, 9,50S_BTR ,29.65,-91.30, 2 -BTR00023, 9,60S_BTR ,29.48,-91.30, 2 -BTR00024, 9,70S_BTR ,29.31,-91.30, 2 -BTR00032, 9,20SW_BTR ,30.24,-91.57, 2 -BTR00033, 9,30SW_BTR ,30.13,-91.71, 2 -BTR00034, 9,40SW_BTR ,30.01,-91.84, 2 -BTR00035, 9,50SW_BTR ,29.89,-91.98, 2 -BTR00040, 9,20W_BTR ,30.48,-91.69, 2 -BTR00041, 9,30W_BTR ,30.48,-91.88, 2 -BTR00042, 9,40W_BTR ,30.48,-92.07, 2 -BTR00045, 9,20NW_BTR ,30.72,-91.57, 2 -BTR00046, 9,30NW_BTR ,30.83,-91.71, 2 +BTR00012, 9,40E_BTR ,30.48,-90.53, 2 +BTR00016, 9,20SE_BTR ,30.24,-91.03, 2 +BTR00017, 9,30SE_BTR ,30.13,-90.89, 2 +BTR00018, 9,40SE_BTR ,30.01,-90.76, 2 +BTR00023, 9,20S_BTR ,30.15,-91.30, 2 +BTR00024, 9,30S_BTR ,29.98,-91.30, 2 +BTR00025, 9,40S_BTR ,29.81,-91.30, 2 +BTR00026, 9,50S_BTR ,29.65,-91.30, 2 +BTR00027, 9,60S_BTR ,29.48,-91.30, 2 +BTR00028, 9,70S_BTR ,29.31,-91.30, 2 +BTR00036, 9,20SW_BTR ,30.24,-91.57, 2 +BTR00037, 9,30SW_BTR ,30.13,-91.71, 2 +BTR00038, 9,40SW_BTR ,30.01,-91.84, 2 +BTR00039, 9,50SW_BTR ,29.89,-91.98, 2 +BTR00044, 9,20W_BTR ,30.48,-91.69, 2 +BTR00045, 9,30W_BTR ,30.48,-91.88, 2 +BTR00046, 9,40W_BTR ,30.48,-92.07, 2 +BTR00049, 9,20NW_BTR ,30.72,-91.57, 2 +BTR00050, 9,30NW_BTR ,30.83,-91.71, 2 ODI00000, 9,ODI ,43.91,-91.47, 1 ODI00001, 9,20N_ODI ,44.24,-91.47, 2 ODI00003, 9,20NE_ODI ,44.15,-91.14, 2 @@ -4389,13 +4383,13 @@ IRK00030, 9,30SW_IRK ,39.79,-93.05, 2 IRK00031, 9,40SW_IRK ,39.67,-93.20, 2 IRK00032, 9,50SW_IRK ,39.55,-93.35, 2 IRK00033, 9,60SW_IRK ,39.43,-93.50, 2 -IRK00038, 9,20W_IRK ,40.14,-93.03, 2 -IRK00039, 9,30W_IRK ,40.14,-93.24, 2 -IRK00040, 9,40W_IRK ,40.14,-93.46, 2 -IRK00041, 9,50W_IRK ,40.13,-93.68, 2 -IRK00042, 9,60W_IRK ,40.13,-93.90, 2 -IRK00046, 9,20NW_IRK ,40.38,-92.90, 2 -IRK00047, 9,30NW_IRK ,40.49,-93.05, 2 +IRK00039, 9,20W_IRK ,40.14,-93.03, 2 +IRK00040, 9,30W_IRK ,40.14,-93.24, 2 +IRK00041, 9,40W_IRK ,40.14,-93.46, 2 +IRK00042, 9,50W_IRK ,40.13,-93.68, 2 +IRK00043, 9,60W_IRK ,40.13,-93.90, 2 +IRK00047, 9,20NW_IRK ,40.38,-92.90, 2 +IRK00048, 9,30NW_IRK ,40.49,-93.05, 2 ELD00000, 9,ELD ,33.26,-92.74, 1 ELD00001, 9,20N_ELD ,33.59,-92.74, 2 ELD00002, 9,30N_ELD ,33.76,-92.74, 2 @@ -4797,56 +4791,56 @@ BUM00000, 9,BUM ,38.27,-94.49, 1 BUM00001, 9,20N_BUM ,38.60,-94.49, 2 BUM00003, 9,20NE_BUM ,38.51,-94.19, 2 BUM00004, 9,30NE_BUM ,38.62,-94.04, 2 -BUM00009, 9,20E_BUM ,38.27,-94.07, 2 -BUM00010, 9,30E_BUM ,38.27,-93.85, 2 -BUM00011, 9,40E_BUM ,38.27,-93.64, 2 -BUM00012, 9,50E_BUM ,38.27,-93.43, 2 -BUM00016, 9,20SE_BUM ,38.03,-94.19, 2 -BUM00017, 9,30SE_BUM ,37.92,-94.04, 2 -BUM00018, 9,40SE_BUM ,37.80,-93.89, 2 -BUM00022, 9,20S_BUM ,37.94,-94.49, 2 -BUM00023, 9,30S_BUM ,37.77,-94.49, 2 -BUM00024, 9,40S_BUM ,37.60,-94.49, 2 -BUM00025, 9,50S_BUM ,37.44,-94.49, 2 -BUM00029, 9,20SW_BUM ,38.03,-94.79, 2 -BUM00030, 9,30SW_BUM ,37.92,-94.94, 2 -BUM00031, 9,40SW_BUM ,37.80,-95.09, 2 -BUM00036, 9,20W_BUM ,38.27,-94.91, 2 -BUM00037, 9,30W_BUM ,38.27,-95.13, 2 -BUM00038, 9,40W_BUM ,38.27,-95.34, 2 -BUM00039, 9,50W_BUM ,38.27,-95.55, 2 -BUM00040, 9,60W_BUM ,38.26,-95.76, 2 -BUM00041, 9,70W_BUM ,38.26,-95.97, 2 +BUM00005, 9,40NE_BUM ,38.74,-93.89, 2 +BUM00010, 9,20E_BUM ,38.27,-94.07, 2 +BUM00011, 9,30E_BUM ,38.27,-93.85, 2 +BUM00012, 9,40E_BUM ,38.27,-93.64, 2 +BUM00013, 9,50E_BUM ,38.27,-93.43, 2 +BUM00017, 9,20SE_BUM ,38.03,-94.19, 2 +BUM00018, 9,30SE_BUM ,37.92,-94.04, 2 +BUM00019, 9,40SE_BUM ,37.80,-93.89, 2 +BUM00023, 9,20S_BUM ,37.94,-94.49, 2 +BUM00024, 9,30S_BUM ,37.77,-94.49, 2 +BUM00025, 9,40S_BUM ,37.60,-94.49, 2 +BUM00026, 9,50S_BUM ,37.44,-94.49, 2 +BUM00030, 9,20SW_BUM ,38.03,-94.79, 2 +BUM00031, 9,30SW_BUM ,37.92,-94.94, 2 +BUM00032, 9,40SW_BUM ,37.80,-95.09, 2 +BUM00037, 9,20W_BUM ,38.27,-94.91, 2 +BUM00038, 9,30W_BUM ,38.27,-95.13, 2 +BUM00039, 9,40W_BUM ,38.27,-95.34, 2 +BUM00040, 9,50W_BUM ,38.27,-95.55, 2 +BUM00041, 9,60W_BUM ,38.26,-95.76, 2 +BUM00042, 9,70W_BUM ,38.26,-95.97, 2 BUM00046, 9,20NW_BUM ,38.51,-94.79, 2 -BUM00047, 9,30NW_BUM ,38.62,-94.94, 2 -MKC00000, 9,MKC ,39.28,-94.59, 1 -MKC00001, 9,20N_MKC ,39.61,-94.59, 2 -MKC00002, 9,30N_MKC ,39.78,-94.59, 2 -MKC00003, 9,40N_MKC ,39.95,-94.59, 2 -MKC00004, 9,50N_MKC ,40.11,-94.59, 2 -MKC00005, 9,60N_MKC ,40.28,-94.59, 2 -MKC00010, 9,20NE_MKC ,39.52,-94.28, 2 -MKC00011, 9,30NE_MKC ,39.63,-94.13, 2 -MKC00012, 9,40NE_MKC ,39.75,-93.98, 2 -MKC00016, 9,20E_MKC ,39.28,-94.16, 2 -MKC00017, 9,30E_MKC ,39.28,-93.94, 2 -MKC00018, 9,40E_MKC ,39.28,-93.73, 2 -MKC00019, 9,50E_MKC ,39.28,-93.51, 2 -MKC00025, 9,20SE_MKC ,39.04,-94.29, 2 -MKC00026, 9,30SE_MKC ,38.93,-94.14, 2 -MKC00027, 9,40SE_MKC ,38.81,-93.99, 2 -MKC00030, 9,20S_MKC ,38.95,-94.59, 2 -MKC00031, 9,30S_MKC ,38.78,-94.59, 2 -MKC00035, 9,20SW_MKC ,39.04,-94.89, 2 -MKC00036, 9,30SW_MKC ,38.93,-95.04, 2 -MKC00037, 9,40SW_MKC ,38.81,-95.19, 2 -MKC00038, 9,50SW_MKC ,38.69,-95.34, 2 -MKC00045, 9,20W_MKC ,39.28,-95.02, 2 -MKC00046, 9,30W_MKC ,39.28,-95.24, 2 -MKC00047, 9,40W_MKC ,39.28,-95.45, 2 -MKC00051, 9,20NW_MKC ,39.52,-94.90, 2 -MKC00052, 9,30NW_MKC ,39.63,-95.05, 2 -MKC00053, 9,40NW_MKC ,39.75,-95.20, 2 +MCI00000, 9,MCI ,39.29,-94.74, 1 +MCI00001, 9,20N_MCI ,39.62,-94.74, 2 +MCI00002, 9,30N_MCI ,39.79,-94.74, 2 +MCI00003, 9,40N_MCI ,39.96,-94.74, 2 +MCI00004, 9,50N_MCI ,40.12,-94.74, 2 +MCI00010, 9,20NE_MCI ,39.53,-94.43, 2 +MCI00011, 9,30NE_MCI ,39.64,-94.28, 2 +MCI00012, 9,40NE_MCI ,39.76,-94.13, 2 +MCI00013, 9,50NE_MCI ,39.88,-93.97, 2 +MCI00018, 9,20E_MCI ,39.29,-94.31, 2 +MCI00019, 9,30E_MCI ,39.29,-94.09, 2 +MCI00020, 9,40E_MCI ,39.29,-93.88, 2 +MCI00021, 9,50E_MCI ,39.29,-93.66, 2 +MCI00027, 9,20SE_MCI ,39.05,-94.44, 2 +MCI00028, 9,30SE_MCI ,38.94,-94.29, 2 +MCI00029, 9,40SE_MCI ,38.82,-94.14, 2 +MCI00032, 9,20S_MCI ,38.96,-94.74, 2 +MCI00033, 9,30S_MCI ,38.79,-94.74, 2 +MCI00037, 9,20SW_MCI ,39.05,-95.04, 2 +MCI00038, 9,30SW_MCI ,38.94,-95.19, 2 +MCI00039, 9,40SW_MCI ,38.82,-95.34, 2 +MCI00040, 9,50SW_MCI ,38.70,-95.49, 2 +MCI00041, 9,60SW_MCI ,38.58,-95.64, 2 +MCI00048, 9,20W_MCI ,39.29,-95.17, 2 +MCI00049, 9,30W_MCI ,39.29,-95.39, 2 +MCI00050, 9,40W_MCI ,39.29,-95.60, 2 +MCI00053, 9,20NW_MCI ,39.53,-95.05, 2 +MCI00054, 9,30NW_MCI ,39.64,-95.20, 2 LFK00000, 9,LFK ,31.16,-94.72, 1 LFK00001, 9,20N_LFK ,31.49,-94.72, 2 LFK00002, 9,30N_LFK ,31.66,-94.72, 2 @@ -5020,12 +5014,11 @@ IAH00048, 9,20W_IAH ,29.96,-95.73, 2 IAH00049, 9,30W_IAH ,29.96,-95.93, 2 IAH00050, 9,40W_IAH ,29.96,-96.12, 2 IAH00051, 9,50W_IAH ,29.96,-96.31, 2 -IAH00052, 9,60W_IAH ,29.95,-96.50, 2 -IAH00058, 9,20NW_IAH ,30.20,-95.62, 2 -IAH00059, 9,30NW_IAH ,30.31,-95.76, 2 -IAH00060, 9,40NW_IAH ,30.43,-95.90, 2 -IAH00061, 9,50NW_IAH ,30.55,-96.03, 2 -IAH00062, 9,60NW_IAH ,30.66,-96.17, 2 +IAH00056, 9,20NW_IAH ,30.20,-95.62, 2 +IAH00057, 9,30NW_IAH ,30.31,-95.76, 2 +IAH00058, 9,40NW_IAH ,30.43,-95.90, 2 +IAH00059, 9,50NW_IAH ,30.55,-96.03, 2 +IAH00060, 9,60NW_IAH ,30.66,-96.17, 2 OVR00000, 9,OVR ,41.17,-95.74, 1 OVR00001, 9,20N_OVR ,41.50,-95.74, 2 OVR00002, 9,30N_OVR ,41.67,-95.74, 2 @@ -5124,71 +5117,71 @@ PWE00015, 9,20SE_PWE ,39.96,-95.90, 2 PWE00016, 9,30SE_PWE ,39.85,-95.75, 2 PWE00017, 9,40SE_PWE ,39.73,-95.60, 2 PWE00018, 9,50SE_PWE ,39.61,-95.45, 2 -PWE00024, 9,20S_PWE ,39.87,-96.21, 2 -PWE00025, 9,30S_PWE ,39.70,-96.21, 2 -PWE00026, 9,40S_PWE ,39.53,-96.21, 2 -PWE00027, 9,50S_PWE ,39.37,-96.21, 2 -PWE00028, 9,60S_PWE ,39.20,-96.21, 2 -PWE00029, 9,70S_PWE ,39.03,-96.21, 2 -PWE00035, 9,20SW_PWE ,39.96,-96.52, 2 -PWE00036, 9,30SW_PWE ,39.85,-96.67, 2 -PWE00037, 9,40SW_PWE ,39.73,-96.82, 2 -PWE00038, 9,50SW_PWE ,39.61,-96.97, 2 -PWE00044, 9,20W_PWE ,40.20,-96.65, 2 -PWE00045, 9,30W_PWE ,40.20,-96.86, 2 -PWE00046, 9,40W_PWE ,40.20,-97.08, 2 -PWE00047, 9,50W_PWE ,40.19,-97.30, 2 -PWE00048, 9,60W_PWE ,40.19,-97.52, 2 -PWE00053, 9,20NW_PWE ,40.44,-96.52, 2 -PWE00054, 9,30NW_PWE ,40.55,-96.67, 2 -PWE00055, 9,40NW_PWE ,40.67,-96.83, 2 -PWE00056, 9,50NW_PWE ,40.79,-96.99, 2 +PWE00023, 9,20S_PWE ,39.87,-96.21, 2 +PWE00024, 9,30S_PWE ,39.70,-96.21, 2 +PWE00025, 9,40S_PWE ,39.53,-96.21, 2 +PWE00026, 9,50S_PWE ,39.37,-96.21, 2 +PWE00027, 9,60S_PWE ,39.20,-96.21, 2 +PWE00028, 9,70S_PWE ,39.03,-96.21, 2 +PWE00034, 9,20SW_PWE ,39.96,-96.52, 2 +PWE00035, 9,30SW_PWE ,39.85,-96.67, 2 +PWE00036, 9,40SW_PWE ,39.73,-96.82, 2 +PWE00037, 9,50SW_PWE ,39.61,-96.97, 2 +PWE00043, 9,20W_PWE ,40.20,-96.65, 2 +PWE00044, 9,30W_PWE ,40.20,-96.86, 2 +PWE00045, 9,40W_PWE ,40.20,-97.08, 2 +PWE00046, 9,50W_PWE ,40.19,-97.30, 2 +PWE00047, 9,60W_PWE ,40.19,-97.52, 2 +PWE00052, 9,20NW_PWE ,40.44,-96.52, 2 +PWE00053, 9,30NW_PWE ,40.55,-96.67, 2 +PWE00054, 9,40NW_PWE ,40.67,-96.83, 2 +PWE00055, 9,50NW_PWE ,40.79,-96.99, 2 PSX00000, 9,PSX ,28.76,-96.31, 1 PSX00001, 9,20N_PSX ,29.09,-96.31, 2 PSX00002, 9,30N_PSX ,29.26,-96.31, 2 PSX00003, 9,40N_PSX ,29.43,-96.31, 2 -PSX00007, 9,20NE_PSX ,29.00,-96.04, 2 -PSX00008, 9,30NE_PSX ,29.11,-95.91, 2 -PSX00012, 9,20E_PSX ,28.76,-95.93, 2 -PSX00013, 9,30E_PSX ,28.76,-95.74, 2 -PSX00014, 9,40E_PSX ,28.76,-95.55, 2 -PSX00015, 9,50E_PSX ,28.76,-95.36, 2 -PSX00016, 9,60E_PSX ,28.76,-95.17, 2 -PSX00029, 9,20SE_PSX ,28.52,-96.04, 2 -PSX00030, 9,30SE_PSX ,28.41,-95.91, 2 -PSX00031, 9,40SE_PSX ,28.29,-95.78, 2 -PSX00032, 9,50SE_PSX ,28.17,-95.64, 2 -PSX00033, 9,60SE_PSX ,28.05,-95.51, 2 -PSX00034, 9,70SE_PSX ,27.93,-95.38, 2 -PSX00035, 9,80SE_PSX ,27.81,-95.24, 2 -PSX00036, 9,90SE_PSX ,27.69,-95.11, 2 -PSX00037, 9,100SE_PSX ,27.58,-94.98, 2 -PSX00038, 9,110SE_PSX ,27.46,-94.85, 2 -PSX00039, 9,120SE_PSX ,27.34,-94.72, 2 -PSX00040, 9,130SE_PSX ,27.22,-94.59, 2 -PSX00041, 9,140SE_PSX ,27.10,-94.46, 2 -PSX00042, 9,150SE_PSX ,26.98,-94.33, 2 -PSX00043, 9,160SE_PSX ,26.86,-94.20, 2 -PSX00044, 9,170SE_PSX ,26.74,-94.07, 2 -PSX00045, 9,180SE_PSX ,26.62,-93.94, 2 -PSX00046, 9,190SE_PSX ,26.50,-93.81, 2 -PSX00047, 9,200SE_PSX ,26.38,-93.68, 2 -PSX00059, 9,20S_PSX ,28.43,-96.31, 2 -PSX00060, 9,30S_PSX ,28.26,-96.31, 2 -PSX00061, 9,40S_PSX ,28.09,-96.31, 2 -PSX00062, 9,50S_PSX ,27.93,-96.31, 2 -PSX00063, 9,60S_PSX ,27.76,-96.31, 2 -PSX00067, 9,20SW_PSX ,28.52,-96.58, 2 -PSX00068, 9,30SW_PSX ,28.41,-96.71, 2 -PSX00069, 9,40SW_PSX ,28.29,-96.84, 2 -PSX00073, 9,20W_PSX ,28.76,-96.69, 2 -PSX00074, 9,30W_PSX ,28.76,-96.88, 2 -PSX00075, 9,40W_PSX ,28.76,-97.07, 2 -PSX00076, 9,50W_PSX ,28.76,-97.26, 2 -PSX00081, 9,20NW_PSX ,29.00,-96.58, 2 -PSX00082, 9,30NW_PSX ,29.11,-96.71, 2 -PSX00083, 9,40NW_PSX ,29.23,-96.85, 2 -PSX00084, 9,50NW_PSX ,29.35,-96.99, 2 +PSX00006, 9,20NE_PSX ,29.00,-96.04, 2 +PSX00007, 9,30NE_PSX ,29.11,-95.91, 2 +PSX00011, 9,20E_PSX ,28.76,-95.93, 2 +PSX00012, 9,30E_PSX ,28.76,-95.74, 2 +PSX00013, 9,40E_PSX ,28.76,-95.55, 2 +PSX00014, 9,50E_PSX ,28.76,-95.36, 2 +PSX00015, 9,60E_PSX ,28.76,-95.17, 2 +PSX00028, 9,20SE_PSX ,28.52,-96.04, 2 +PSX00029, 9,30SE_PSX ,28.41,-95.91, 2 +PSX00030, 9,40SE_PSX ,28.29,-95.78, 2 +PSX00031, 9,50SE_PSX ,28.17,-95.64, 2 +PSX00032, 9,60SE_PSX ,28.05,-95.51, 2 +PSX00033, 9,70SE_PSX ,27.93,-95.38, 2 +PSX00034, 9,80SE_PSX ,27.81,-95.24, 2 +PSX00035, 9,90SE_PSX ,27.69,-95.11, 2 +PSX00036, 9,100SE_PSX ,27.58,-94.98, 2 +PSX00037, 9,110SE_PSX ,27.46,-94.85, 2 +PSX00038, 9,120SE_PSX ,27.34,-94.72, 2 +PSX00039, 9,130SE_PSX ,27.22,-94.59, 2 +PSX00040, 9,140SE_PSX ,27.10,-94.46, 2 +PSX00041, 9,150SE_PSX ,26.98,-94.33, 2 +PSX00042, 9,160SE_PSX ,26.86,-94.20, 2 +PSX00043, 9,170SE_PSX ,26.74,-94.07, 2 +PSX00044, 9,180SE_PSX ,26.62,-93.94, 2 +PSX00045, 9,190SE_PSX ,26.50,-93.81, 2 +PSX00046, 9,200SE_PSX ,26.38,-93.68, 2 +PSX00058, 9,20S_PSX ,28.43,-96.31, 2 +PSX00059, 9,30S_PSX ,28.26,-96.31, 2 +PSX00060, 9,40S_PSX ,28.09,-96.31, 2 +PSX00061, 9,50S_PSX ,27.93,-96.31, 2 +PSX00062, 9,60S_PSX ,27.76,-96.31, 2 +PSX00066, 9,20SW_PSX ,28.52,-96.58, 2 +PSX00067, 9,30SW_PSX ,28.41,-96.71, 2 +PSX00068, 9,40SW_PSX ,28.29,-96.84, 2 +PSX00072, 9,20W_PSX ,28.76,-96.69, 2 +PSX00073, 9,30W_PSX ,28.76,-96.88, 2 +PSX00074, 9,40W_PSX ,28.76,-97.07, 2 +PSX00075, 9,50W_PSX ,28.76,-97.26, 2 +PSX00080, 9,20NW_PSX ,29.00,-96.58, 2 +PSX00081, 9,30NW_PSX ,29.11,-96.71, 2 +PSX00082, 9,40NW_PSX ,29.23,-96.85, 2 +PSX00083, 9,50NW_PSX ,29.35,-96.99, 2 FSD00000, 9,FSD ,43.65,-96.78, 1 FSD00001, 9,20N_FSD ,43.98,-96.78, 2 FSD00002, 9,30N_FSD ,44.15,-96.78, 2 @@ -5261,39 +5254,39 @@ FAR00054, 9,60W_FAR ,46.74,-98.31, 2 FAR00055, 9,70W_FAR ,46.74,-98.55, 2 FAR00059, 9,20NW_FAR ,46.99,-97.20, 2 FAR00060, 9,30NW_FAR ,47.10,-97.37, 2 -DFW00000, 9,DFW ,32.87,-97.03, 1 -DFW00001, 9,20N_DFW ,33.20,-97.03, 2 -DFW00002, 9,30N_DFW ,33.37,-97.03, 2 -DFW00005, 9,20NE_DFW ,33.11,-96.75, 2 -DFW00006, 9,30NE_DFW ,33.22,-96.61, 2 -DFW00007, 9,40NE_DFW ,33.34,-96.47, 2 -DFW00008, 9,50NE_DFW ,33.46,-96.32, 2 -DFW00015, 9,20E_DFW ,32.87,-96.63, 2 -DFW00016, 9,30E_DFW ,32.87,-96.44, 2 -DFW00017, 9,40E_DFW ,32.87,-96.24, 2 -DFW00018, 9,50E_DFW ,32.87,-96.04, 2 -DFW00019, 9,60E_DFW ,32.86,-95.84, 2 -DFW00025, 9,20SE_DFW ,32.63,-96.75, 2 -DFW00026, 9,30SE_DFW ,32.52,-96.61, 2 -DFW00027, 9,40SE_DFW ,32.40,-96.47, 2 -DFW00028, 9,50SE_DFW ,32.28,-96.33, 2 -DFW00029, 9,60SE_DFW ,32.16,-96.20, 2 -DFW00030, 9,70SE_DFW ,32.04,-96.06, 2 -DFW00034, 9,20S_DFW ,32.54,-97.03, 2 -DFW00035, 9,30S_DFW ,32.37,-97.03, 2 -DFW00036, 9,40S_DFW ,32.20,-97.03, 2 -DFW00040, 9,20SW_DFW ,32.63,-97.31, 2 -DFW00041, 9,30SW_DFW ,32.52,-97.45, 2 -DFW00042, 9,40SW_DFW ,32.40,-97.59, 2 -DFW00043, 9,50SW_DFW ,32.28,-97.73, 2 -DFW00050, 9,20W_DFW ,32.87,-97.43, 2 -DFW00051, 9,30W_DFW ,32.87,-97.62, 2 -DFW00052, 9,40W_DFW ,32.87,-97.82, 2 -DFW00053, 9,50W_DFW ,32.87,-98.02, 2 -DFW00054, 9,60W_DFW ,32.86,-98.22, 2 -DFW00058, 9,20NW_DFW ,33.11,-97.31, 2 -DFW00059, 9,30NW_DFW ,33.22,-97.45, 2 -DFW00060, 9,40NW_DFW ,33.34,-97.59, 2 +TTT00000, 9,TTT ,32.87,-97.04, 1 +TTT00001, 9,20N_TTT ,33.20,-97.04, 2 +TTT00002, 9,30N_TTT ,33.37,-97.04, 2 +TTT00005, 9,20NE_TTT ,33.11,-96.76, 2 +TTT00006, 9,30NE_TTT ,33.22,-96.62, 2 +TTT00007, 9,40NE_TTT ,33.34,-96.48, 2 +TTT00008, 9,50NE_TTT ,33.46,-96.33, 2 +TTT00015, 9,20E_TTT ,32.87,-96.64, 2 +TTT00016, 9,30E_TTT ,32.87,-96.45, 2 +TTT00017, 9,40E_TTT ,32.87,-96.25, 2 +TTT00018, 9,50E_TTT ,32.87,-96.05, 2 +TTT00019, 9,60E_TTT ,32.86,-95.85, 2 +TTT00025, 9,20SE_TTT ,32.63,-96.76, 2 +TTT00026, 9,30SE_TTT ,32.52,-96.62, 2 +TTT00027, 9,40SE_TTT ,32.40,-96.48, 2 +TTT00028, 9,50SE_TTT ,32.28,-96.34, 2 +TTT00029, 9,60SE_TTT ,32.16,-96.21, 2 +TTT00030, 9,70SE_TTT ,32.04,-96.07, 2 +TTT00034, 9,20S_TTT ,32.54,-97.04, 2 +TTT00035, 9,30S_TTT ,32.37,-97.04, 2 +TTT00036, 9,40S_TTT ,32.20,-97.04, 2 +TTT00040, 9,20SW_TTT ,32.63,-97.32, 2 +TTT00041, 9,30SW_TTT ,32.52,-97.46, 2 +TTT00042, 9,40SW_TTT ,32.40,-97.60, 2 +TTT00043, 9,50SW_TTT ,32.28,-97.74, 2 +TTT00050, 9,20W_TTT ,32.87,-97.44, 2 +TTT00051, 9,30W_TTT ,32.87,-97.63, 2 +TTT00052, 9,40W_TTT ,32.87,-97.83, 2 +TTT00053, 9,50W_TTT ,32.87,-98.03, 2 +TTT00054, 9,60W_TTT ,32.86,-98.23, 2 +TTT00058, 9,20NW_TTT ,33.11,-97.32, 2 +TTT00059, 9,30NW_TTT ,33.22,-97.46, 2 +TTT00060, 9,40NW_TTT ,33.34,-97.60, 2 ADM00000, 9,ADM ,34.21,-97.17, 1 ADM00001, 9,20N_ADM ,34.54,-97.17, 2 ADM00002, 9,30N_ADM ,34.71,-97.17, 2 @@ -5320,7 +5313,7 @@ GFK00000, 9,GFK ,47.95,-97.19, 1 GFK00001, 9,20N_GFK ,48.28,-97.19, 2 GFK00002, 9,30N_GFK ,48.45,-97.19, 2 GFK00003, 9,40N_GFK ,48.62,-97.19, 2 -GFK00008, 9,20NE_GFK ,48.18,-96.84, 2 +GFK00008, 9,20NE_GFK ,48.19,-96.84, 2 GFK00009, 9,30NE_GFK ,48.30,-96.66, 2 GFK00010, 9,40NE_GFK ,48.42,-96.48, 2 GFK00011, 9,50NE_GFK ,48.54,-96.30, 2 @@ -5351,7 +5344,7 @@ GFK00058, 9,50W_GFK ,47.94,-98.43, 2 GFK00059, 9,60W_GFK ,47.94,-98.68, 2 GFK00060, 9,70W_GFK ,47.94,-98.93, 2 GFK00061, 9,80W_GFK ,47.93,-99.18, 2 -GFK00069, 9,20NW_GFK ,48.18,-97.54, 2 +GFK00069, 9,20NW_GFK ,48.19,-97.54, 2 GFK00070, 9,30NW_GFK ,48.30,-97.72, 2 GFK00071, 9,40NW_GFK ,48.42,-97.90, 2 GFK00072, 9,50NW_GFK ,48.54,-98.08, 2 @@ -5712,58 +5705,59 @@ SLN00015, 9,30E_SLN ,38.93,-96.98, 2 SLN00016, 9,40E_SLN ,38.93,-96.76, 2 SLN00017, 9,50E_SLN ,38.93,-96.55, 2 SLN00018, 9,60E_SLN ,38.92,-96.34, 2 -SLN00026, 9,20SE_SLN ,38.69,-97.32, 2 -SLN00027, 9,30SE_SLN ,38.58,-97.17, 2 -SLN00028, 9,40SE_SLN ,38.46,-97.02, 2 -SLN00029, 9,50SE_SLN ,38.34,-96.87, 2 -SLN00033, 9,20S_SLN ,38.60,-97.62, 2 -SLN00034, 9,30S_SLN ,38.43,-97.62, 2 -SLN00035, 9,40S_SLN ,38.26,-97.62, 2 -SLN00039, 9,20SW_SLN ,38.69,-97.92, 2 -SLN00040, 9,30SW_SLN ,38.58,-98.07, 2 -SLN00041, 9,40SW_SLN ,38.46,-98.22, 2 -SLN00042, 9,50SW_SLN ,38.34,-98.37, 2 -SLN00043, 9,60SW_SLN ,38.22,-98.52, 2 -SLN00050, 9,20W_SLN ,38.93,-98.05, 2 -SLN00051, 9,30W_SLN ,38.93,-98.26, 2 -SLN00052, 9,40W_SLN ,38.93,-98.48, 2 -SLN00053, 9,50W_SLN ,38.93,-98.69, 2 -SLN00054, 9,60W_SLN ,38.92,-98.90, 2 -SLN00060, 9,20NW_SLN ,39.17,-97.92, 2 -SLN00061, 9,30NW_SLN ,39.28,-98.08, 2 -SLN00062, 9,40NW_SLN ,39.40,-98.23, 2 -SLN00063, 9,50NW_SLN ,39.52,-98.38, 2 -SLN00064, 9,60NW_SLN ,39.63,-98.54, 2 -SLN00065, 9,70NW_SLN ,39.75,-98.69, 2 -AUS00000, 9,AUS ,30.30,-97.70, 1 -AUS00001, 9,20N_AUS ,30.63,-97.70, 2 -AUS00002, 9,30N_AUS ,30.80,-97.70, 2 -AUS00005, 9,20NE_AUS ,30.54,-97.43, 2 -AUS00006, 9,30NE_AUS ,30.65,-97.29, 2 -AUS00007, 9,40NE_AUS ,30.77,-97.15, 2 -AUS00013, 9,20E_AUS ,30.30,-97.31, 2 -AUS00014, 9,30E_AUS ,30.30,-97.12, 2 -AUS00015, 9,40E_AUS ,30.30,-96.93, 2 -AUS00016, 9,50E_AUS ,30.30,-96.74, 2 -AUS00017, 9,60E_AUS ,30.29,-96.54, 2 -AUS00023, 9,20SE_AUS ,30.06,-97.43, 2 -AUS00024, 9,30SE_AUS ,29.95,-97.29, 2 -AUS00025, 9,40SE_AUS ,29.83,-97.16, 2 -AUS00026, 9,50SE_AUS ,29.71,-97.02, 2 -AUS00027, 9,60SE_AUS ,29.59,-96.89, 2 -AUS00033, 9,20S_AUS ,29.97,-97.70, 2 -AUS00034, 9,30S_AUS ,29.80,-97.70, 2 -AUS00035, 9,40S_AUS ,29.63,-97.70, 2 -AUS00038, 9,20SW_AUS ,30.06,-97.97, 2 -AUS00039, 9,30SW_AUS ,29.95,-98.11, 2 -AUS00042, 9,20W_AUS ,30.30,-98.09, 2 -AUS00043, 9,30W_AUS ,30.30,-98.28, 2 -AUS00044, 9,40W_AUS ,30.30,-98.47, 2 -AUS00049, 9,20NW_AUS ,30.54,-97.97, 2 -AUS00050, 9,30NW_AUS ,30.65,-98.11, 2 -AUS00051, 9,40NW_AUS ,30.77,-98.25, 2 -AUS00052, 9,50NW_AUS ,30.89,-98.39, 2 -AUS00053, 9,60NW_AUS ,31.00,-98.52, 2 +SLN00025, 9,20SE_SLN ,38.69,-97.32, 2 +SLN00026, 9,30SE_SLN ,38.58,-97.17, 2 +SLN00027, 9,40SE_SLN ,38.46,-97.02, 2 +SLN00028, 9,50SE_SLN ,38.34,-96.87, 2 +SLN00032, 9,20S_SLN ,38.60,-97.62, 2 +SLN00033, 9,30S_SLN ,38.43,-97.62, 2 +SLN00034, 9,40S_SLN ,38.26,-97.62, 2 +SLN00038, 9,20SW_SLN ,38.69,-97.92, 2 +SLN00039, 9,30SW_SLN ,38.58,-98.07, 2 +SLN00040, 9,40SW_SLN ,38.46,-98.22, 2 +SLN00041, 9,50SW_SLN ,38.34,-98.37, 2 +SLN00042, 9,60SW_SLN ,38.22,-98.52, 2 +SLN00049, 9,20W_SLN ,38.93,-98.05, 2 +SLN00050, 9,30W_SLN ,38.93,-98.26, 2 +SLN00051, 9,40W_SLN ,38.93,-98.48, 2 +SLN00052, 9,50W_SLN ,38.93,-98.69, 2 +SLN00053, 9,60W_SLN ,38.92,-98.90, 2 +SLN00059, 9,20NW_SLN ,39.17,-97.92, 2 +SLN00060, 9,30NW_SLN ,39.28,-98.08, 2 +SLN00061, 9,40NW_SLN ,39.40,-98.23, 2 +SLN00062, 9,50NW_SLN ,39.52,-98.38, 2 +SLN00063, 9,60NW_SLN ,39.63,-98.54, 2 +SLN00064, 9,70NW_SLN ,39.75,-98.69, 2 +CWK00000, 9,CWK ,30.38,-97.53, 1 +CWK00001, 9,20N_CWK ,30.71,-97.53, 2 +CWK00002, 9,30N_CWK ,30.88,-97.53, 2 +CWK00005, 9,20NE_CWK ,30.62,-97.26, 2 +CWK00006, 9,30NE_CWK ,30.73,-97.12, 2 +CWK00007, 9,40NE_CWK ,30.85,-96.98, 2 +CWK00013, 9,20E_CWK ,30.38,-97.14, 2 +CWK00014, 9,30E_CWK ,30.38,-96.95, 2 +CWK00015, 9,40E_CWK ,30.38,-96.76, 2 +CWK00016, 9,50E_CWK ,30.38,-96.56, 2 +CWK00017, 9,60E_CWK ,30.37,-96.37, 2 +CWK00023, 9,20SE_CWK ,30.14,-97.26, 2 +CWK00024, 9,30SE_CWK ,30.03,-97.12, 2 +CWK00025, 9,40SE_CWK ,29.91,-96.99, 2 +CWK00026, 9,50SE_CWK ,29.79,-96.85, 2 +CWK00027, 9,60SE_CWK ,29.67,-96.72, 2 +CWK00033, 9,20S_CWK ,30.05,-97.53, 2 +CWK00034, 9,30S_CWK ,29.88,-97.53, 2 +CWK00035, 9,40S_CWK ,29.71,-97.53, 2 +CWK00036, 9,50S_CWK ,29.55,-97.53, 2 +CWK00040, 9,20SW_CWK ,30.14,-97.80, 2 +CWK00041, 9,30SW_CWK ,30.03,-97.94, 2 +CWK00045, 9,20W_CWK ,30.38,-97.92, 2 +CWK00046, 9,30W_CWK ,30.38,-98.11, 2 +CWK00047, 9,40W_CWK ,30.38,-98.30, 2 +CWK00048, 9,50W_CWK ,30.38,-98.50, 2 +CWK00054, 9,20NW_CWK ,30.62,-97.80, 2 +CWK00055, 9,30NW_CWK ,30.73,-97.94, 2 +CWK00056, 9,40NW_CWK ,30.85,-98.08, 2 +CWK00057, 9,50NW_CWK ,30.97,-98.22, 2 END00000, 9,END ,36.35,-97.92, 1 END00001, 9,20N_END ,36.68,-97.92, 2 END00002, 9,30N_END ,36.85,-97.92, 2 @@ -5869,33 +5863,34 @@ ABR00072, 9,50NW_ABR ,46.01,-99.22, 2 SAT00000, 9,SAT ,29.64,-98.46, 1 SAT00001, 9,20N_SAT ,29.97,-98.46, 2 SAT00002, 9,30N_SAT ,30.14,-98.46, 2 -SAT00004, 9,20NE_SAT ,29.88,-98.19, 2 -SAT00006, 9,20E_SAT ,29.64,-98.08, 2 -SAT00007, 9,30E_SAT ,29.64,-97.89, 2 -SAT00012, 9,20SE_SAT ,29.40,-98.19, 2 -SAT00013, 9,30SE_SAT ,29.29,-98.05, 2 -SAT00014, 9,40SE_SAT ,29.17,-97.92, 2 -SAT00015, 9,50SE_SAT ,29.05,-97.79, 2 -SAT00016, 9,60SE_SAT ,28.93,-97.65, 2 -SAT00022, 9,20S_SAT ,29.31,-98.46, 2 -SAT00023, 9,30S_SAT ,29.14,-98.46, 2 -SAT00024, 9,40S_SAT ,28.97,-98.46, 2 -SAT00025, 9,50S_SAT ,28.81,-98.46, 2 -SAT00026, 9,60S_SAT ,28.64,-98.46, 2 -SAT00027, 9,70S_SAT ,28.47,-98.46, 2 -SAT00034, 9,20SW_SAT ,29.40,-98.73, 2 -SAT00035, 9,30SW_SAT ,29.29,-98.87, 2 -SAT00036, 9,40SW_SAT ,29.17,-99.00, 2 -SAT00037, 9,50SW_SAT ,29.05,-99.13, 2 -SAT00038, 9,60SW_SAT ,28.93,-99.27, 2 -SAT00039, 9,70SW_SAT ,28.81,-99.40, 2 -SAT00045, 9,20W_SAT ,29.64,-98.84, 2 -SAT00046, 9,30W_SAT ,29.64,-99.03, 2 -SAT00047, 9,40W_SAT ,29.64,-99.23, 2 -SAT00048, 9,50W_SAT ,29.64,-99.42, 2 -SAT00052, 9,20NW_SAT ,29.88,-98.73, 2 -SAT00053, 9,30NW_SAT ,29.99,-98.87, 2 -SAT00054, 9,40NW_SAT ,30.11,-99.00, 2 +SAT00003, 9,40N_SAT ,30.31,-98.46, 2 +SAT00006, 9,20NE_SAT ,29.88,-98.19, 2 +SAT00008, 9,20E_SAT ,29.64,-98.08, 2 +SAT00009, 9,30E_SAT ,29.64,-97.89, 2 +SAT00015, 9,20SE_SAT ,29.40,-98.19, 2 +SAT00016, 9,30SE_SAT ,29.29,-98.05, 2 +SAT00017, 9,40SE_SAT ,29.17,-97.92, 2 +SAT00018, 9,50SE_SAT ,29.05,-97.79, 2 +SAT00019, 9,60SE_SAT ,28.93,-97.65, 2 +SAT00025, 9,20S_SAT ,29.31,-98.46, 2 +SAT00026, 9,30S_SAT ,29.14,-98.46, 2 +SAT00027, 9,40S_SAT ,28.97,-98.46, 2 +SAT00028, 9,50S_SAT ,28.81,-98.46, 2 +SAT00029, 9,60S_SAT ,28.64,-98.46, 2 +SAT00030, 9,70S_SAT ,28.47,-98.46, 2 +SAT00037, 9,20SW_SAT ,29.40,-98.73, 2 +SAT00038, 9,30SW_SAT ,29.29,-98.87, 2 +SAT00039, 9,40SW_SAT ,29.17,-99.00, 2 +SAT00040, 9,50SW_SAT ,29.05,-99.13, 2 +SAT00041, 9,60SW_SAT ,28.93,-99.27, 2 +SAT00042, 9,70SW_SAT ,28.81,-99.40, 2 +SAT00048, 9,20W_SAT ,29.64,-98.84, 2 +SAT00049, 9,30W_SAT ,29.64,-99.03, 2 +SAT00050, 9,40W_SAT ,29.64,-99.23, 2 +SAT00051, 9,50W_SAT ,29.64,-99.42, 2 +SAT00055, 9,20NW_SAT ,29.88,-98.73, 2 +SAT00056, 9,30NW_SAT ,29.99,-98.87, 2 +SAT00057, 9,40NW_SAT ,30.11,-99.00, 2 SPS00000, 9,SPS ,33.99,-98.59, 1 SPS00001, 9,20N_SPS ,34.32,-98.59, 2 SPS00002, 9,30N_SPS ,34.49,-98.59, 2 @@ -6035,23 +6030,24 @@ JCT00016, 9,20E_JCT ,30.60,-99.43, 2 JCT00017, 9,30E_JCT ,30.60,-99.24, 2 JCT00018, 9,40E_JCT ,30.60,-99.05, 2 JCT00019, 9,50E_JCT ,30.60,-98.85, 2 -JCT00024, 9,20SE_JCT ,30.36,-99.55, 2 -JCT00025, 9,30SE_JCT ,30.25,-99.41, 2 -JCT00026, 9,40SE_JCT ,30.13,-99.28, 2 -JCT00027, 9,50SE_JCT ,30.01,-99.14, 2 -JCT00032, 9,20S_JCT ,30.27,-99.82, 2 -JCT00033, 9,30S_JCT ,30.10,-99.82, 2 -JCT00034, 9,40S_JCT ,29.93,-99.82, 2 -JCT00035, 9,50S_JCT ,29.77,-99.82, 2 -JCT00036, 9,60S_JCT ,29.60,-99.82, 2 -JCT00041, 9,20SW_JCT ,30.36,-100.09, 2 -JCT00042, 9,30SW_JCT ,30.25,-100.23, 2 -JCT00043, 9,40SW_JCT ,30.13,-100.36, 2 -JCT00044, 9,50SW_JCT ,30.01,-100.50, 2 -JCT00050, 9,20W_JCT ,30.60,-100.21, 2 -JCT00051, 9,30W_JCT ,30.60,-100.40, 2 -JCT00052, 9,40W_JCT ,30.60,-100.59, 2 -JCT00054, 9,20NW_JCT ,30.84,-100.09, 2 +JCT00020, 9,60E_JCT ,30.59,-98.66, 2 +JCT00025, 9,20SE_JCT ,30.36,-99.55, 2 +JCT00026, 9,30SE_JCT ,30.25,-99.41, 2 +JCT00027, 9,40SE_JCT ,30.13,-99.28, 2 +JCT00028, 9,50SE_JCT ,30.01,-99.14, 2 +JCT00033, 9,20S_JCT ,30.27,-99.82, 2 +JCT00034, 9,30S_JCT ,30.10,-99.82, 2 +JCT00035, 9,40S_JCT ,29.93,-99.82, 2 +JCT00036, 9,50S_JCT ,29.77,-99.82, 2 +JCT00037, 9,60S_JCT ,29.60,-99.82, 2 +JCT00042, 9,20SW_JCT ,30.36,-100.09, 2 +JCT00043, 9,30SW_JCT ,30.25,-100.23, 2 +JCT00044, 9,40SW_JCT ,30.13,-100.36, 2 +JCT00045, 9,50SW_JCT ,30.01,-100.50, 2 +JCT00051, 9,20W_JCT ,30.60,-100.21, 2 +JCT00052, 9,30W_JCT ,30.60,-100.40, 2 +JCT00053, 9,40W_JCT ,30.60,-100.59, 2 +JCT00055, 9,20NW_JCT ,30.84,-100.09, 2 ABI00000, 9,ABI ,32.48,-99.86, 1 ABI00001, 9,20N_ABI ,32.81,-99.86, 2 ABI00002, 9,30N_ABI ,32.98,-99.86, 2 @@ -6089,36 +6085,6 @@ ABI00063, 9,20NW_ABI ,32.72,-100.14, 2 ABI00064, 9,30NW_ABI ,32.83,-100.28, 2 ABI00065, 9,40NW_ABI ,32.95,-100.42, 2 ABI00066, 9,50NW_ABI ,33.07,-100.56, 2 -GAG00000, 9,GAG ,36.34,-99.88, 1 -GAG00001, 9,20N_GAG ,36.67,-99.88, 2 -GAG00002, 9,30N_GAG ,36.84,-99.88, 2 -GAG00003, 9,40N_GAG ,37.01,-99.88, 2 -GAG00009, 9,20NE_GAG ,36.58,-99.59, 2 -GAG00010, 9,30NE_GAG ,36.69,-99.44, 2 -GAG00011, 9,40NE_GAG ,36.81,-99.29, 2 -GAG00012, 9,50NE_GAG ,36.93,-99.14, 2 -GAG00013, 9,60NE_GAG ,37.04,-98.99, 2 -GAG00018, 9,20E_GAG ,36.34,-99.47, 2 -GAG00019, 9,30E_GAG ,36.34,-99.26, 2 -GAG00020, 9,40E_GAG ,36.34,-99.05, 2 -GAG00025, 9,20SE_GAG ,36.10,-99.59, 2 -GAG00026, 9,30SE_GAG ,35.99,-99.44, 2 -GAG00027, 9,40SE_GAG ,35.87,-99.30, 2 -GAG00028, 9,50SE_GAG ,35.75,-99.15, 2 -GAG00029, 9,60SE_GAG ,35.63,-99.01, 2 -GAG00036, 9,20S_GAG ,36.01,-99.88, 2 -GAG00037, 9,30S_GAG ,35.84,-99.88, 2 -GAG00038, 9,40S_GAG ,35.67,-99.88, 2 -GAG00039, 9,50S_GAG ,35.51,-99.88, 2 -GAG00040, 9,60S_GAG ,35.34,-99.88, 2 -GAG00046, 9,20SW_GAG ,36.10,-100.17, 2 -GAG00047, 9,30SW_GAG ,35.99,-100.32, 2 -GAG00048, 9,40SW_GAG ,35.87,-100.46, 2 -GAG00049, 9,50SW_GAG ,35.75,-100.61, 2 -GAG00050, 9,60SW_GAG ,35.63,-100.75, 2 -GAG00055, 9,20W_GAG ,36.34,-100.29, 2 -GAG00056, 9,30W_GAG ,36.34,-100.50, 2 -GAG00058, 9,20NW_GAG ,36.58,-100.17, 2 ANW00000, 9,ANW ,42.57,-99.99, 1 ANW00001, 9,20N_ANW ,42.90,-99.99, 2 ANW00002, 9,30N_ANW ,43.07,-99.99, 2 @@ -6742,19 +6708,21 @@ SNY00004, 9,30NE_SNY ,41.45,-102.51, 2 SNY00005, 9,40NE_SNY ,41.57,-102.35, 2 SNY00006, 9,50NE_SNY ,41.69,-102.19, 2 SNY00011, 9,20E_SNY ,41.10,-102.54, 2 -SNY00012, 9,50E_SNY ,41.09,-101.87, 2 -SNY00017, 9,20SE_SNY ,40.86,-102.67, 2 -SNY00018, 9,30SE_SNY ,40.75,-102.51, 2 -SNY00019, 9,40SE_SNY ,40.63,-102.36, 2 -SNY00020, 9,50SE_SNY ,40.51,-102.21, 2 -SNY00021, 9,60SE_SNY ,40.39,-102.05, 2 -SNY00025, 9,20S_SNY ,40.77,-102.98, 2 -SNY00026, 9,30S_SNY ,40.60,-102.98, 2 -SNY00029, 9,20SW_SNY ,40.86,-103.29, 2 -SNY00030, 9,30SW_SNY ,40.75,-103.45, 2 -SNY00031, 9,40SW_SNY ,40.63,-103.60, 2 -SNY00034, 9,20W_SNY ,41.10,-103.42, 2 -SNY00035, 9,30W_SNY ,41.10,-103.64, 2 +SNY00012, 9,30E_SNY ,41.10,-102.32, 2 +SNY00013, 9,40E_SNY ,41.10,-102.10, 2 +SNY00014, 9,50E_SNY ,41.09,-101.87, 2 +SNY00019, 9,20SE_SNY ,40.86,-102.67, 2 +SNY00020, 9,30SE_SNY ,40.75,-102.51, 2 +SNY00021, 9,40SE_SNY ,40.63,-102.36, 2 +SNY00022, 9,50SE_SNY ,40.51,-102.21, 2 +SNY00023, 9,60SE_SNY ,40.39,-102.05, 2 +SNY00027, 9,20S_SNY ,40.77,-102.98, 2 +SNY00028, 9,30S_SNY ,40.60,-102.98, 2 +SNY00031, 9,20SW_SNY ,40.86,-103.29, 2 +SNY00032, 9,30SW_SNY ,40.75,-103.45, 2 +SNY00033, 9,40SW_SNY ,40.63,-103.60, 2 +SNY00037, 9,20W_SNY ,41.10,-103.42, 2 +SNY00038, 9,30W_SNY ,41.10,-103.64, 2 FST00000, 9,FST ,30.95,-102.98, 1 FST00001, 9,20N_FST ,31.28,-102.98, 2 FST00003, 9,20NE_FST ,31.19,-102.70, 2 @@ -6809,21 +6777,19 @@ RAP00047, 9,30SW_RAP ,43.63,-103.50, 2 RAP00048, 9,40SW_RAP ,43.51,-103.66, 2 RAP00049, 9,50SW_RAP ,43.39,-103.82, 2 RAP00050, 9,60SW_RAP ,43.27,-103.98, 2 -RAP00051, 9,70SW_RAP ,43.15,-104.14, 2 -RAP00052, 9,80SW_RAP ,43.03,-104.30, 2 -RAP00060, 9,20W_RAP ,43.98,-103.47, 2 -RAP00061, 9,30W_RAP ,43.98,-103.70, 2 -RAP00062, 9,40W_RAP ,43.98,-103.94, 2 -RAP00063, 9,50W_RAP ,43.97,-104.17, 2 -RAP00064, 9,60W_RAP ,43.97,-104.40, 2 -RAP00065, 9,70W_RAP ,43.97,-104.63, 2 -RAP00073, 9,20NW_RAP ,44.22,-103.34, 2 -RAP00074, 9,30NW_RAP ,44.33,-103.50, 2 -RAP00075, 9,40NW_RAP ,44.45,-103.67, 2 -RAP00076, 9,50NW_RAP ,44.57,-103.84, 2 -RAP00077, 9,60NW_RAP ,44.68,-104.00, 2 -RAP00078, 9,70NW_RAP ,44.80,-104.17, 2 -RAP00079, 9,80NW_RAP ,44.91,-104.34, 2 +RAP00058, 9,20W_RAP ,43.98,-103.47, 2 +RAP00059, 9,30W_RAP ,43.98,-103.70, 2 +RAP00060, 9,40W_RAP ,43.98,-103.94, 2 +RAP00061, 9,50W_RAP ,43.97,-104.17, 2 +RAP00062, 9,60W_RAP ,43.97,-104.40, 2 +RAP00063, 9,70W_RAP ,43.97,-104.63, 2 +RAP00071, 9,20NW_RAP ,44.22,-103.34, 2 +RAP00072, 9,30NW_RAP ,44.33,-103.50, 2 +RAP00073, 9,40NW_RAP ,44.45,-103.67, 2 +RAP00074, 9,50NW_RAP ,44.57,-103.84, 2 +RAP00075, 9,60NW_RAP ,44.68,-104.00, 2 +RAP00076, 9,70NW_RAP ,44.80,-104.17, 2 +RAP00077, 9,80NW_RAP ,44.91,-104.34, 2 AKO00000, 9,AKO ,40.16,-103.18, 1 AKO00001, 9,20N_AKO ,40.49,-103.18, 2 AKO00003, 9,20NE_AKO ,40.40,-102.87, 2 @@ -7110,46 +7076,46 @@ PUB00045, 9,60W_PUB ,38.28,-105.70, 2 PUB00051, 9,20NW_PUB ,38.53,-104.73, 2 PUB00052, 9,30NW_PUB ,38.64,-104.88, 2 PUB00053, 9,40NW_PUB ,38.76,-105.03, 2 -ROW00000, 9,ROW ,33.34,-104.62, 1 -ROW00001, 9,20N_ROW ,33.67,-104.62, 2 -ROW00002, 9,30N_ROW ,33.84,-104.62, 2 -ROW00003, 9,40N_ROW ,34.01,-104.62, 2 -ROW00004, 9,50N_ROW ,34.17,-104.62, 2 -ROW00009, 9,20NE_ROW ,33.58,-104.34, 2 -ROW00010, 9,30NE_ROW ,33.69,-104.20, 2 -ROW00011, 9,40NE_ROW ,33.81,-104.05, 2 -ROW00012, 9,50NE_ROW ,33.93,-103.91, 2 -ROW00017, 9,20E_ROW ,33.34,-104.22, 2 -ROW00018, 9,30E_ROW ,33.34,-104.02, 2 -ROW00019, 9,40E_ROW ,33.34,-103.82, 2 -ROW00020, 9,50E_ROW ,33.34,-103.62, 2 -ROW00021, 9,60E_ROW ,33.33,-103.42, 2 -ROW00028, 9,20SE_ROW ,33.10,-104.34, 2 -ROW00029, 9,30SE_ROW ,32.99,-104.20, 2 -ROW00030, 9,40SE_ROW ,32.87,-104.06, 2 -ROW00031, 9,50SE_ROW ,32.75,-103.92, 2 -ROW00032, 9,60SE_ROW ,32.63,-103.78, 2 -ROW00038, 9,20S_ROW ,33.01,-104.62, 2 -ROW00039, 9,30S_ROW ,32.84,-104.62, 2 -ROW00040, 9,40S_ROW ,32.67,-104.62, 2 -ROW00041, 9,50S_ROW ,32.51,-104.62, 2 -ROW00042, 9,60S_ROW ,32.34,-104.62, 2 -ROW00043, 9,70S_ROW ,32.17,-104.62, 2 -ROW00050, 9,20SW_ROW ,33.10,-104.90, 2 -ROW00051, 9,30SW_ROW ,32.99,-105.04, 2 -ROW00052, 9,40SW_ROW ,32.87,-105.18, 2 -ROW00053, 9,50SW_ROW ,32.75,-105.32, 2 -ROW00054, 9,60SW_ROW ,32.63,-105.46, 2 -ROW00061, 9,20W_ROW ,33.34,-105.02, 2 -ROW00062, 9,30W_ROW ,33.34,-105.22, 2 -ROW00063, 9,40W_ROW ,33.34,-105.42, 2 -ROW00064, 9,50W_ROW ,33.34,-105.62, 2 -ROW00065, 9,60W_ROW ,33.33,-105.82, 2 -ROW00072, 9,20NW_ROW ,33.58,-104.90, 2 -ROW00073, 9,30NW_ROW ,33.69,-105.04, 2 -ROW00074, 9,40NW_ROW ,33.81,-105.19, 2 -ROW00075, 9,50NW_ROW ,33.93,-105.33, 2 -ROW00076, 9,60NW_ROW ,34.04,-105.47, 2 +CME00000, 9,CME ,33.34,-104.62, 1 +CME00001, 9,20N_CME ,33.67,-104.62, 2 +CME00002, 9,30N_CME ,33.84,-104.62, 2 +CME00003, 9,40N_CME ,34.01,-104.62, 2 +CME00004, 9,50N_CME ,34.17,-104.62, 2 +CME00009, 9,20NE_CME ,33.58,-104.34, 2 +CME00010, 9,30NE_CME ,33.69,-104.20, 2 +CME00011, 9,40NE_CME ,33.81,-104.05, 2 +CME00012, 9,50NE_CME ,33.93,-103.91, 2 +CME00017, 9,20E_CME ,33.34,-104.22, 2 +CME00018, 9,30E_CME ,33.34,-104.02, 2 +CME00019, 9,40E_CME ,33.34,-103.82, 2 +CME00020, 9,50E_CME ,33.34,-103.62, 2 +CME00021, 9,60E_CME ,33.33,-103.42, 2 +CME00028, 9,20SE_CME ,33.10,-104.34, 2 +CME00029, 9,30SE_CME ,32.99,-104.20, 2 +CME00030, 9,40SE_CME ,32.87,-104.06, 2 +CME00031, 9,50SE_CME ,32.75,-103.92, 2 +CME00032, 9,60SE_CME ,32.63,-103.78, 2 +CME00038, 9,20S_CME ,33.01,-104.62, 2 +CME00039, 9,30S_CME ,32.84,-104.62, 2 +CME00040, 9,40S_CME ,32.67,-104.62, 2 +CME00041, 9,50S_CME ,32.51,-104.62, 2 +CME00042, 9,60S_CME ,32.34,-104.62, 2 +CME00043, 9,70S_CME ,32.17,-104.62, 2 +CME00050, 9,20SW_CME ,33.10,-104.90, 2 +CME00051, 9,30SW_CME ,32.99,-105.04, 2 +CME00052, 9,40SW_CME ,32.87,-105.18, 2 +CME00053, 9,50SW_CME ,32.75,-105.32, 2 +CME00054, 9,60SW_CME ,32.63,-105.46, 2 +CME00061, 9,20W_CME ,33.34,-105.02, 2 +CME00062, 9,30W_CME ,33.34,-105.22, 2 +CME00063, 9,40W_CME ,33.34,-105.42, 2 +CME00064, 9,50W_CME ,33.34,-105.62, 2 +CME00065, 9,60W_CME ,33.33,-105.82, 2 +CME00072, 9,20NW_CME ,33.58,-104.90, 2 +CME00073, 9,30NW_CME ,33.69,-105.04, 2 +CME00074, 9,40NW_CME ,33.81,-105.19, 2 +CME00075, 9,50NW_CME ,33.93,-105.33, 2 +CME00076, 9,60NW_CME ,34.04,-105.47, 2 DEN00000, 9,DEN ,39.81,-104.66, 1 DEN00001, 9,20N_DEN ,40.14,-104.66, 2 DEN00002, 9,30N_DEN ,40.31,-104.66, 2 @@ -7185,16 +7151,16 @@ CYS00003, 9,40N_CYS ,41.88,-104.77, 2 CYS00006, 9,20NE_CYS ,41.45,-104.46, 2 CYS00008, 9,20E_CYS ,41.21,-104.33, 2 CYS00009, 9,30E_CYS ,41.21,-104.11, 2 -CYS00011, 9,20SE_CYS ,40.97,-104.46, 2 -CYS00012, 9,30SE_CYS ,40.86,-104.30, 2 -CYS00013, 9,40SE_CYS ,40.74,-104.15, 2 -CYS00014, 9,50SE_CYS ,40.62,-103.99, 2 -CYS00019, 9,20S_CYS ,40.88,-104.77, 2 -CYS00020, 9,30S_CYS ,40.71,-104.77, 2 -CYS00021, 9,40S_CYS ,40.54,-104.77, 2 -CYS00026, 9,20SW_CYS ,40.97,-105.08, 2 -CYS00027, 9,30SW_CYS ,40.86,-105.24, 2 -CYS00029, 9,20NW_CYS ,41.45,-105.08, 2 +CYS00013, 9,20SE_CYS ,40.97,-104.46, 2 +CYS00014, 9,30SE_CYS ,40.86,-104.30, 2 +CYS00015, 9,40SE_CYS ,40.74,-104.15, 2 +CYS00016, 9,50SE_CYS ,40.62,-103.99, 2 +CYS00021, 9,20S_CYS ,40.88,-104.77, 2 +CYS00022, 9,30S_CYS ,40.71,-104.77, 2 +CYS00023, 9,40S_CYS ,40.54,-104.77, 2 +CYS00028, 9,20SW_CYS ,40.97,-105.08, 2 +CYS00029, 9,30SW_CYS ,40.86,-105.24, 2 +CYS00031, 9,20NW_CYS ,41.45,-105.08, 2 CIM00000, 9,CIM ,36.49,-104.87, 1 CIM00001, 9,20N_CIM ,36.82,-104.87, 2 CIM00002, 9,30N_CIM ,36.99,-104.87, 2 @@ -7215,31 +7181,31 @@ CIM00034, 9,20W_CIM ,36.49,-105.28, 2 CIM00035, 9,30W_CIM ,36.49,-105.49, 2 CIM00036, 9,40W_CIM ,36.49,-105.70, 2 CIM00039, 9,20NW_CIM ,36.73,-105.16, 2 -LVS00000, 9,LVS ,35.66,-105.14, 1 -LVS00001, 9,20N_LVS ,35.99,-105.14, 2 -LVS00002, 9,20NE_LVS ,35.90,-104.85, 2 -LVS00005, 9,20E_LVS ,35.66,-104.73, 2 -LVS00006, 9,30E_LVS ,35.66,-104.53, 2 -LVS00007, 9,40E_LVS ,35.66,-104.32, 2 -LVS00011, 9,20SE_LVS ,35.42,-104.85, 2 -LVS00012, 9,30SE_LVS ,35.31,-104.71, 2 -LVS00013, 9,40SE_LVS ,35.19,-104.56, 2 -LVS00019, 9,20S_LVS ,35.33,-105.14, 2 -LVS00020, 9,30S_LVS ,35.16,-105.14, 2 -LVS00021, 9,40S_LVS ,34.99,-105.14, 2 -LVS00022, 9,50S_LVS ,34.83,-105.14, 2 -LVS00023, 9,60S_LVS ,34.66,-105.14, 2 -LVS00024, 9,70S_LVS ,34.49,-105.14, 2 -LVS00030, 9,20SW_LVS ,35.42,-105.43, 2 -LVS00031, 9,30SW_LVS ,35.31,-105.57, 2 -LVS00032, 9,40SW_LVS ,35.19,-105.72, 2 -LVS00033, 9,50SW_LVS ,35.07,-105.86, 2 -LVS00037, 9,20W_LVS ,35.66,-105.55, 2 -LVS00038, 9,30W_LVS ,35.66,-105.75, 2 -LVS00039, 9,40W_LVS ,35.66,-105.96, 2 -LVS00040, 9,50W_LVS ,35.66,-106.16, 2 -LVS00047, 9,20NW_LVS ,35.90,-105.43, 2 -LVS00048, 9,30NW_LVS ,36.01,-105.58, 2 +FTI00000, 9,FTI ,35.66,-105.14, 1 +FTI00001, 9,20N_FTI ,35.99,-105.14, 2 +FTI00002, 9,20NE_FTI ,35.90,-104.85, 2 +FTI00005, 9,20E_FTI ,35.66,-104.73, 2 +FTI00006, 9,30E_FTI ,35.66,-104.53, 2 +FTI00007, 9,40E_FTI ,35.66,-104.32, 2 +FTI00011, 9,20SE_FTI ,35.42,-104.85, 2 +FTI00012, 9,30SE_FTI ,35.31,-104.71, 2 +FTI00013, 9,40SE_FTI ,35.19,-104.56, 2 +FTI00019, 9,20S_FTI ,35.33,-105.14, 2 +FTI00020, 9,30S_FTI ,35.16,-105.14, 2 +FTI00021, 9,40S_FTI ,34.99,-105.14, 2 +FTI00022, 9,50S_FTI ,34.83,-105.14, 2 +FTI00023, 9,60S_FTI ,34.66,-105.14, 2 +FTI00024, 9,70S_FTI ,34.49,-105.14, 2 +FTI00030, 9,20SW_FTI ,35.42,-105.43, 2 +FTI00031, 9,30SW_FTI ,35.31,-105.57, 2 +FTI00032, 9,40SW_FTI ,35.19,-105.72, 2 +FTI00033, 9,50SW_FTI ,35.07,-105.86, 2 +FTI00037, 9,20W_FTI ,35.66,-105.55, 2 +FTI00038, 9,30W_FTI ,35.66,-105.75, 2 +FTI00039, 9,40W_FTI ,35.66,-105.96, 2 +FTI00040, 9,50W_FTI ,35.66,-106.16, 2 +FTI00047, 9,20NW_FTI ,35.90,-105.43, 2 +FTI00048, 9,30NW_FTI ,36.01,-105.58, 2 LAR00000, 9,LAR ,41.33,-105.72, 1 LAR00001, 9,20N_LAR ,41.66,-105.72, 2 LAR00002, 9,30N_LAR ,41.83,-105.72, 2 @@ -7764,41 +7730,41 @@ YYN00130, 9,60NW_YYN ,50.98,-108.80, 2 YYN00131, 9,70NW_YYN ,51.10,-108.99, 2 YYN00132, 9,80NW_YYN ,51.21,-109.18, 2 YYN00133, 9,90NW_YYN ,51.33,-109.38, 2 -FMN00000, 9,FMN ,36.75,-108.10, 1 -FMN00001, 9,20N_FMN ,37.08,-108.10, 2 -FMN00002, 9,30N_FMN ,37.25,-108.10, 2 -FMN00006, 9,20NE_FMN ,36.99,-107.81, 2 -FMN00007, 9,30NE_FMN ,37.10,-107.66, 2 -FMN00008, 9,40NE_FMN ,37.22,-107.51, 2 -FMN00009, 9,50NE_FMN ,37.34,-107.36, 2 -FMN00014, 9,20E_FMN ,36.75,-107.68, 2 -FMN00015, 9,30E_FMN ,36.75,-107.48, 2 -FMN00016, 9,40E_FMN ,36.75,-107.27, 2 -FMN00017, 9,50E_FMN ,36.75,-107.06, 2 -FMN00024, 9,20SE_FMN ,36.51,-107.81, 2 -FMN00025, 9,30SE_FMN ,36.40,-107.66, 2 -FMN00026, 9,40SE_FMN ,36.28,-107.52, 2 -FMN00027, 9,50SE_FMN ,36.16,-107.37, 2 -FMN00028, 9,60SE_FMN ,36.04,-107.23, 2 -FMN00034, 9,20S_FMN ,36.42,-108.10, 2 -FMN00035, 9,30S_FMN ,36.25,-108.10, 2 -FMN00036, 9,40S_FMN ,36.08,-108.10, 2 -FMN00037, 9,50S_FMN ,35.92,-108.10, 2 -FMN00038, 9,60S_FMN ,35.75,-108.10, 2 -FMN00039, 9,70S_FMN ,35.58,-108.10, 2 -FMN00047, 9,20SW_FMN ,36.51,-108.39, 2 -FMN00048, 9,30SW_FMN ,36.40,-108.54, 2 -FMN00049, 9,40SW_FMN ,36.28,-108.68, 2 -FMN00050, 9,50SW_FMN ,36.16,-108.83, 2 -FMN00051, 9,60SW_FMN ,36.04,-108.97, 2 -FMN00052, 9,70SW_FMN ,35.92,-109.12, 2 -FMN00053, 9,80SW_FMN ,35.80,-109.26, 2 -FMN00061, 9,20W_FMN ,36.75,-108.52, 2 -FMN00062, 9,30W_FMN ,36.75,-108.72, 2 -FMN00063, 9,40W_FMN ,36.75,-108.93, 2 -FMN00064, 9,50W_FMN ,36.75,-109.14, 2 -FMN00067, 9,20NW_FMN ,36.99,-108.39, 2 -FMN00068, 9,30NW_FMN ,37.10,-108.54, 2 +RSK00000, 9,RSK ,36.75,-108.10, 1 +RSK00001, 9,20N_RSK ,37.08,-108.10, 2 +RSK00002, 9,30N_RSK ,37.25,-108.10, 2 +RSK00006, 9,20NE_RSK ,36.99,-107.81, 2 +RSK00007, 9,30NE_RSK ,37.10,-107.66, 2 +RSK00008, 9,40NE_RSK ,37.22,-107.51, 2 +RSK00009, 9,50NE_RSK ,37.34,-107.36, 2 +RSK00014, 9,20E_RSK ,36.75,-107.68, 2 +RSK00015, 9,30E_RSK ,36.75,-107.48, 2 +RSK00016, 9,40E_RSK ,36.75,-107.27, 2 +RSK00017, 9,50E_RSK ,36.75,-107.06, 2 +RSK00024, 9,20SE_RSK ,36.51,-107.81, 2 +RSK00025, 9,30SE_RSK ,36.40,-107.66, 2 +RSK00026, 9,40SE_RSK ,36.28,-107.52, 2 +RSK00027, 9,50SE_RSK ,36.16,-107.37, 2 +RSK00028, 9,60SE_RSK ,36.04,-107.23, 2 +RSK00034, 9,20S_RSK ,36.42,-108.10, 2 +RSK00035, 9,30S_RSK ,36.25,-108.10, 2 +RSK00036, 9,40S_RSK ,36.08,-108.10, 2 +RSK00037, 9,50S_RSK ,35.92,-108.10, 2 +RSK00038, 9,60S_RSK ,35.75,-108.10, 2 +RSK00039, 9,70S_RSK ,35.58,-108.10, 2 +RSK00047, 9,20SW_RSK ,36.51,-108.39, 2 +RSK00048, 9,30SW_RSK ,36.40,-108.54, 2 +RSK00049, 9,40SW_RSK ,36.28,-108.68, 2 +RSK00050, 9,50SW_RSK ,36.16,-108.83, 2 +RSK00051, 9,60SW_RSK ,36.04,-108.97, 2 +RSK00052, 9,70SW_RSK ,35.92,-109.12, 2 +RSK00053, 9,80SW_RSK ,35.80,-109.26, 2 +RSK00061, 9,20W_RSK ,36.75,-108.52, 2 +RSK00062, 9,30W_RSK ,36.75,-108.72, 2 +RSK00063, 9,40W_RSK ,36.75,-108.93, 2 +RSK00064, 9,50W_RSK ,36.75,-109.14, 2 +RSK00067, 9,20NW_RSK ,36.99,-108.39, 2 +RSK00068, 9,30NW_RSK ,37.10,-108.54, 2 BOY00000, 9,BOY ,43.46,-108.30, 1 BOY00001, 9,20N_BOY ,43.79,-108.30, 2 BOY00002, 9,30N_BOY ,43.96,-108.30, 2 @@ -9475,60 +9441,59 @@ MZB00023, 9,60SE_MZB ,32.07,-116.40, 2 MZB00024, 9,70SE_MZB ,31.95,-116.26, 2 MZB00025, 9,80SE_MZB ,31.83,-116.12, 2 MZB00026, 9,90SE_MZB ,31.71,-115.98, 2 -MZB00043, 9,20S_MZB ,32.45,-117.23, 2 -MZB00044, 9,30S_MZB ,32.28,-117.23, 2 -MZB00045, 9,40S_MZB ,32.11,-117.23, 2 -MZB00046, 9,50S_MZB ,31.95,-117.23, 2 -MZB00047, 9,60S_MZB ,31.78,-117.23, 2 -MZB00048, 9,70S_MZB ,31.61,-117.23, 2 -MZB00049, 9,80S_MZB ,31.45,-117.23, 2 -MZB00050, 9,90S_MZB ,31.28,-117.23, 2 -MZB00051, 9,100S_MZB ,31.11,-117.23, 2 -MZB00052, 9,110S_MZB ,30.95,-117.23, 2 -MZB00053, 9,120S_MZB ,30.78,-117.23, 2 -MZB00054, 9,130S_MZB ,30.61,-117.23, 2 -MZB00055, 9,140S_MZB ,30.45,-117.23, 2 -MZB00056, 9,150S_MZB ,30.28,-117.23, 2 -MZB00057, 9,160S_MZB ,30.12,-117.23, 2 -MZB00058, 9,170S_MZB ,29.95,-117.23, 2 -MZB00059, 9,180S_MZB ,29.78,-117.23, 2 -MZB00060, 9,190S_MZB ,29.62,-117.23, 2 -MZB00061, 9,200S_MZB ,29.45,-117.23, 2 -MZB00062, 9,210S_MZB ,29.28,-117.23, 2 -MZB00063, 9,220S_MZB ,29.12,-117.23, 2 -MZB00064, 9,230S_MZB ,28.95,-117.23, 2 -MZB00065, 9,240S_MZB ,28.78,-117.23, 2 -MZB00066, 9,250S_MZB ,28.62,-117.23, 2 -MZB00090, 9,20SW_MZB ,32.54,-117.51, 2 -MZB00091, 9,30SW_MZB ,32.43,-117.65, 2 -MZB00092, 9,40SW_MZB ,32.31,-117.79, 2 -MZB00093, 9,50SW_MZB ,32.19,-117.93, 2 -MZB00094, 9,60SW_MZB ,32.07,-118.06, 2 -MZB00095, 9,70SW_MZB ,31.95,-118.20, 2 -MZB00096, 9,80SW_MZB ,31.83,-118.34, 2 -MZB00097, 9,90SW_MZB ,31.71,-118.48, 2 -MZB00098, 9,100SW_MZB ,31.59,-118.61, 2 -MZB00099, 9,110SW_MZB ,31.48,-118.75, 2 -MZB00100, 9,120SW_MZB ,31.36,-118.88, 2 -MZB00101, 9,130SW_MZB ,31.24,-119.02, 2 -MZB00102, 9,140SW_MZB ,31.12,-119.16, 2 -MZB00103, 9,150SW_MZB ,31.00,-119.29, 2 -MZB00104, 9,160SW_MZB ,30.88,-119.43, 2 -MZB00105, 9,170SW_MZB ,30.76,-119.56, 2 -MZB00106, 9,180SW_MZB ,30.64,-119.69, 2 -MZB00107, 9,190SW_MZB ,30.52,-119.83, 2 -MZB00108, 9,200SW_MZB ,30.39,-119.96, 2 -MZB00109, 9,210SW_MZB ,30.27,-120.09, 2 -MZB00110, 9,240SW_MZB ,29.91,-120.49, 2 -MZB00111, 9,250SW_MZB ,29.79,-120.62, 2 -MZB00124, 9,20W_MZB ,32.78,-117.63, 2 -MZB00125, 9,30W_MZB ,32.78,-117.82, 2 -MZB00126, 9,40W_MZB ,32.78,-118.02, 2 -MZB00127, 9,50W_MZB ,32.78,-118.22, 2 -MZB00128, 9,60W_MZB ,32.77,-118.42, 2 -MZB00132, 9,20NW_MZB ,33.02,-117.51, 2 -MZB00133, 9,30NW_MZB ,33.13,-117.65, 2 -MZB00134, 9,40NW_MZB ,33.25,-117.79, 2 +MZB00042, 9,30S_MZB ,32.28,-117.23, 2 +MZB00043, 9,40S_MZB ,32.11,-117.23, 2 +MZB00044, 9,50S_MZB ,31.95,-117.23, 2 +MZB00045, 9,60S_MZB ,31.78,-117.23, 2 +MZB00046, 9,70S_MZB ,31.61,-117.23, 2 +MZB00047, 9,80S_MZB ,31.45,-117.23, 2 +MZB00048, 9,90S_MZB ,31.28,-117.23, 2 +MZB00049, 9,100S_MZB ,31.11,-117.23, 2 +MZB00050, 9,110S_MZB ,30.95,-117.23, 2 +MZB00051, 9,120S_MZB ,30.78,-117.23, 2 +MZB00052, 9,130S_MZB ,30.61,-117.23, 2 +MZB00053, 9,140S_MZB ,30.45,-117.23, 2 +MZB00054, 9,150S_MZB ,30.28,-117.23, 2 +MZB00055, 9,160S_MZB ,30.12,-117.23, 2 +MZB00056, 9,170S_MZB ,29.95,-117.23, 2 +MZB00057, 9,180S_MZB ,29.78,-117.23, 2 +MZB00058, 9,190S_MZB ,29.62,-117.23, 2 +MZB00059, 9,200S_MZB ,29.45,-117.23, 2 +MZB00060, 9,210S_MZB ,29.28,-117.23, 2 +MZB00061, 9,220S_MZB ,29.12,-117.23, 2 +MZB00062, 9,230S_MZB ,28.95,-117.23, 2 +MZB00063, 9,240S_MZB ,28.78,-117.23, 2 +MZB00064, 9,250S_MZB ,28.62,-117.23, 2 +MZB00087, 9,20SW_MZB ,32.54,-117.51, 2 +MZB00088, 9,30SW_MZB ,32.43,-117.65, 2 +MZB00089, 9,40SW_MZB ,32.31,-117.79, 2 +MZB00090, 9,50SW_MZB ,32.19,-117.93, 2 +MZB00091, 9,60SW_MZB ,32.07,-118.06, 2 +MZB00092, 9,70SW_MZB ,31.95,-118.20, 2 +MZB00093, 9,80SW_MZB ,31.83,-118.34, 2 +MZB00094, 9,90SW_MZB ,31.71,-118.48, 2 +MZB00095, 9,100SW_MZB ,31.59,-118.61, 2 +MZB00096, 9,110SW_MZB ,31.48,-118.75, 2 +MZB00097, 9,120SW_MZB ,31.36,-118.88, 2 +MZB00098, 9,130SW_MZB ,31.24,-119.02, 2 +MZB00099, 9,140SW_MZB ,31.12,-119.16, 2 +MZB00100, 9,150SW_MZB ,31.00,-119.29, 2 +MZB00101, 9,160SW_MZB ,30.88,-119.43, 2 +MZB00102, 9,170SW_MZB ,30.76,-119.56, 2 +MZB00103, 9,180SW_MZB ,30.64,-119.69, 2 +MZB00104, 9,190SW_MZB ,30.52,-119.83, 2 +MZB00105, 9,200SW_MZB ,30.39,-119.96, 2 +MZB00106, 9,210SW_MZB ,30.27,-120.09, 2 +MZB00107, 9,240SW_MZB ,29.91,-120.49, 2 +MZB00108, 9,250SW_MZB ,29.79,-120.62, 2 +MZB00121, 9,20W_MZB ,32.78,-117.63, 2 +MZB00122, 9,30W_MZB ,32.78,-117.82, 2 +MZB00123, 9,40W_MZB ,32.78,-118.02, 2 +MZB00124, 9,50W_MZB ,32.78,-118.22, 2 +MZB00125, 9,60W_MZB ,32.77,-118.42, 2 +MZB00129, 9,20NW_MZB ,33.02,-117.51, 2 +MZB00130, 9,30NW_MZB ,33.13,-117.65, 2 +MZB00131, 9,40NW_MZB ,33.25,-117.79, 2 GEG00000, 9,GEG ,47.56,-117.63, 1 GEG00001, 9,20N_GEG ,47.89,-117.63, 2 GEG00002, 9,30N_GEG ,48.06,-117.63, 2 @@ -10227,7 +10192,7 @@ OAK00021, 9,20SW_OAK ,37.49,-122.52, 2 OAK00022, 9,30SW_OAK ,37.38,-122.66, 2 OAK00023, 9,40SW_OAK ,37.26,-122.81, 2 OAK00024, 9,50SW_OAK ,37.14,-122.96, 2 -OAK00025, 9,60SW_OAK ,37.02,-123.10, 2 +OAK00025, 9,60SW_OAK ,37.02,-123.11, 2 RBL00000, 9,RBL ,40.10,-122.24, 1 RBL00001, 9,20N_RBL ,40.43,-122.24, 2 RBL00002, 9,30N_RBL ,40.60,-122.24, 2 @@ -10294,54 +10259,54 @@ SEA00052, 9,50W_SEA ,47.43,-123.54, 2 SEA00056, 9,20NW_SEA ,47.68,-122.66, 2 SEA00057, 9,30NW_SEA ,47.79,-122.84, 2 SEA00058, 9,40NW_SEA ,47.91,-123.01, 2 -BLI00000, 9,BLI ,48.95,-122.58, 1 -BLI00001, 9,20N_BLI ,49.28,-122.58, 2 -BLI00002, 9,30N_BLI ,49.45,-122.58, 2 -BLI00003, 9,40N_BLI ,49.62,-122.58, 2 -BLI00004, 9,50N_BLI ,49.78,-122.58, 2 -BLI00005, 9,60N_BLI ,49.95,-122.58, 2 -BLI00006, 9,70N_BLI ,50.12,-122.58, 2 -BLI00007, 9,80N_BLI ,50.28,-122.58, 2 -BLI00008, 9,90N_BLI ,50.45,-122.58, 2 -BLI00009, 9,100N_BLI ,50.62,-122.58, 2 -BLI00010, 9,110N_BLI ,50.78,-122.58, 2 -BLI00015, 9,20NE_BLI ,49.18,-122.22, 2 -BLI00016, 9,30NE_BLI ,49.30,-122.04, 2 -BLI00017, 9,40NE_BLI ,49.42,-121.86, 2 -BLI00020, 9,20E_BLI ,48.95,-122.07, 2 -BLI00021, 9,30E_BLI ,48.95,-121.82, 2 -BLI00022, 9,40E_BLI ,48.95,-121.57, 2 -BLI00027, 9,20SE_BLI ,48.71,-122.22, 2 -BLI00028, 9,30SE_BLI ,48.60,-122.05, 2 -BLI00029, 9,40SE_BLI ,48.48,-121.87, 2 -BLI00030, 9,50SE_BLI ,48.36,-121.69, 2 -BLI00031, 9,60SE_BLI ,48.24,-121.52, 2 -BLI00032, 9,70SE_BLI ,48.12,-121.35, 2 -BLI00037, 9,20S_BLI ,48.62,-122.58, 2 -BLI00038, 9,30S_BLI ,48.45,-122.58, 2 -BLI00039, 9,40S_BLI ,48.28,-122.58, 2 -BLI00040, 9,50S_BLI ,48.12,-122.58, 2 -BLI00046, 9,20SW_BLI ,48.71,-122.94, 2 -BLI00047, 9,30SW_BLI ,48.60,-123.11, 2 -BLI00048, 9,40SW_BLI ,48.48,-123.29, 2 -BLI00049, 9,50SW_BLI ,48.36,-123.47, 2 -BLI00054, 9,20W_BLI ,48.95,-123.09, 2 -BLI00055, 9,30W_BLI ,48.95,-123.34, 2 -BLI00056, 9,40W_BLI ,48.95,-123.59, 2 -BLI00057, 9,50W_BLI ,48.94,-123.85, 2 -BLI00064, 9,20NW_BLI ,49.18,-122.94, 2 -BLI00065, 9,30NW_BLI ,49.30,-123.12, 2 -BLI00066, 9,40NW_BLI ,49.42,-123.30, 2 -BLI00067, 9,50NW_BLI ,49.54,-123.49, 2 -BLI00068, 9,60NW_BLI ,49.65,-123.67, 2 -BLI00069, 9,70NW_BLI ,49.77,-123.86, 2 -BLI00070, 9,80NW_BLI ,49.88,-124.04, 2 -BLI00071, 9,90NW_BLI ,50.00,-124.23, 2 -BLI00072, 9,100NW_BLI ,50.11,-124.42, 2 -BLI00073, 9,110NW_BLI ,50.23,-124.61, 2 -BLI00074, 9,120NW_BLI ,50.34,-124.79, 2 -BLI00075, 9,130NW_BLI ,50.46,-124.98, 2 -BLI00076, 9,140NW_BLI ,50.57,-125.18, 2 +HUH00000, 9,HUH ,48.95,-122.58, 1 +HUH00001, 9,20N_HUH ,49.28,-122.58, 2 +HUH00002, 9,30N_HUH ,49.45,-122.58, 2 +HUH00003, 9,40N_HUH ,49.62,-122.58, 2 +HUH00004, 9,50N_HUH ,49.78,-122.58, 2 +HUH00005, 9,60N_HUH ,49.95,-122.58, 2 +HUH00006, 9,70N_HUH ,50.12,-122.58, 2 +HUH00007, 9,80N_HUH ,50.28,-122.58, 2 +HUH00008, 9,90N_HUH ,50.45,-122.58, 2 +HUH00009, 9,100N_HUH ,50.62,-122.58, 2 +HUH00010, 9,110N_HUH ,50.78,-122.58, 2 +HUH00015, 9,20NE_HUH ,49.18,-122.22, 2 +HUH00016, 9,30NE_HUH ,49.30,-122.04, 2 +HUH00017, 9,40NE_HUH ,49.42,-121.86, 2 +HUH00020, 9,20E_HUH ,48.95,-122.07, 2 +HUH00021, 9,30E_HUH ,48.95,-121.82, 2 +HUH00022, 9,40E_HUH ,48.95,-121.57, 2 +HUH00027, 9,20SE_HUH ,48.71,-122.22, 2 +HUH00028, 9,30SE_HUH ,48.60,-122.05, 2 +HUH00029, 9,40SE_HUH ,48.48,-121.87, 2 +HUH00030, 9,50SE_HUH ,48.36,-121.69, 2 +HUH00031, 9,60SE_HUH ,48.24,-121.52, 2 +HUH00032, 9,70SE_HUH ,48.12,-121.35, 2 +HUH00037, 9,20S_HUH ,48.62,-122.58, 2 +HUH00038, 9,30S_HUH ,48.45,-122.58, 2 +HUH00039, 9,40S_HUH ,48.28,-122.58, 2 +HUH00040, 9,50S_HUH ,48.12,-122.58, 2 +HUH00046, 9,20SW_HUH ,48.71,-122.94, 2 +HUH00047, 9,30SW_HUH ,48.60,-123.11, 2 +HUH00048, 9,40SW_HUH ,48.48,-123.29, 2 +HUH00049, 9,50SW_HUH ,48.36,-123.47, 2 +HUH00054, 9,20W_HUH ,48.95,-123.09, 2 +HUH00055, 9,30W_HUH ,48.95,-123.34, 2 +HUH00056, 9,40W_HUH ,48.95,-123.59, 2 +HUH00057, 9,50W_HUH ,48.94,-123.85, 2 +HUH00064, 9,20NW_HUH ,49.18,-122.94, 2 +HUH00065, 9,30NW_HUH ,49.30,-123.12, 2 +HUH00066, 9,40NW_HUH ,49.42,-123.30, 2 +HUH00067, 9,50NW_HUH ,49.54,-123.49, 2 +HUH00068, 9,60NW_HUH ,49.65,-123.67, 2 +HUH00069, 9,70NW_HUH ,49.77,-123.86, 2 +HUH00070, 9,80NW_HUH ,49.88,-124.04, 2 +HUH00071, 9,90NW_HUH ,50.00,-124.23, 2 +HUH00072, 9,100NW_HUH ,50.11,-124.42, 2 +HUH00073, 9,110NW_HUH ,50.23,-124.61, 2 +HUH00074, 9,120NW_HUH ,50.34,-124.79, 2 +HUH00075, 9,130NW_HUH ,50.46,-124.98, 2 +HUH00076, 9,140NW_HUH ,50.57,-125.18, 2 PDX00000, 9,PDX ,45.58,-122.60, 1 PDX00001, 9,20N_PDX ,45.91,-122.60, 2 PDX00002, 9,30N_PDX ,46.08,-122.60, 2 @@ -10901,1180 +10866,43 @@ YQV00204, 9,190NW_YQV ,53.45,-106.23, 2 YQV00205, 9,200NW_YQV ,53.56,-106.44, 2 YQV00206, 9,210NW_YQV ,53.67,-106.65, 2 YQV00207, 9,220NW_YQV ,53.78,-106.86, 2 -ANN00000, 9,ANN ,0.00,0.00, 1 -ANN00001, 9,20N_ANN ,0.33,0.00, 2 -ANN00002, 9,30N_ANN ,0.50,0.00, 2 -ANN00003, 9,40N_ANN ,0.67,0.00, 2 -ANN00004, 9,50N_ANN ,0.83,0.00, 2 -ANN00005, 9,60N_ANN ,1.00,0.00, 2 -ANN00006, 9,70N_ANN ,1.17,0.00, 2 -ANN00007, 9,80N_ANN ,1.33,0.00, 2 -ANN00008, 9,90N_ANN ,1.50,0.00, 2 -ANN00009, 9,100N_ANN ,1.67,0.00, 2 -ANN00010, 9,110N_ANN ,1.83,0.00, 2 -ANN00011, 9,120N_ANN ,2.00,0.00, 2 -ANN00012, 9,130N_ANN ,2.17,0.00, 2 -ANN00013, 9,140N_ANN ,2.33,0.00, 2 -ANN00014, 9,150N_ANN ,2.50,0.00, 2 -ANN00015, 9,160N_ANN ,2.66,0.00, 2 -ANN00016, 9,170N_ANN ,2.83,0.00, 2 -ANN00017, 9,180N_ANN ,3.00,0.00, 2 -ANN00018, 9,190N_ANN ,3.16,0.00, 2 -ANN00019, 9,200N_ANN ,3.33,0.00, 2 -ANN00020, 9,210N_ANN ,3.50,0.00, 2 -ANN00021, 9,220N_ANN ,3.66,0.00, 2 -ANN00022, 9,230N_ANN ,3.83,0.00, 2 -ANN00023, 9,240N_ANN ,4.00,0.00, 2 -ANN00024, 9,250N_ANN ,4.16,0.00, 2 -ANN00048, 9,20NE_ANN ,0.24,0.24, 2 -ANN00049, 9,30NE_ANN ,0.35,0.35, 2 -ANN00050, 9,40NE_ANN ,0.47,0.47, 2 -ANN00051, 9,50NE_ANN ,0.59,0.59, 2 -ANN00052, 9,60NE_ANN ,0.71,0.71, 2 -ANN00053, 9,70NE_ANN ,0.82,0.82, 2 -ANN00054, 9,80NE_ANN ,0.94,0.94, 2 -ANN00055, 9,90NE_ANN ,1.06,1.06, 2 -ANN00056, 9,100NE_ANN ,1.18,1.18, 2 -ANN00057, 9,110NE_ANN ,1.30,1.30, 2 -ANN00058, 9,120NE_ANN ,1.41,1.41, 2 -ANN00059, 9,130NE_ANN ,1.53,1.53, 2 -ANN00060, 9,140NE_ANN ,1.65,1.65, 2 -ANN00061, 9,150NE_ANN ,1.77,1.77, 2 -ANN00062, 9,160NE_ANN ,1.88,1.88, 2 -ANN00063, 9,170NE_ANN ,2.00,2.00, 2 -ANN00064, 9,180NE_ANN ,2.12,2.12, 2 -ANN00065, 9,190NE_ANN ,2.24,2.24, 2 -ANN00066, 9,200NE_ANN ,2.35,2.36, 2 -ANN00067, 9,210NE_ANN ,2.47,2.47, 2 -ANN00068, 9,220NE_ANN ,2.59,2.59, 2 -ANN00069, 9,230NE_ANN ,2.71,2.71, 2 -ANN00070, 9,240NE_ANN ,2.83,2.83, 2 -ANN00071, 9,250NE_ANN ,2.94,2.95, 2 -ANN00072, 9,20NW_ANN ,0.24,-0.24, 2 -ANN00073, 9,30NW_ANN ,0.35,-0.35, 2 -ANN00074, 9,40NW_ANN ,0.47,-0.47, 2 -ANN00075, 9,50NW_ANN ,0.59,-0.59, 2 -ANN00076, 9,60NW_ANN ,0.71,-0.71, 2 -ANN00077, 9,70NW_ANN ,0.82,-0.82, 2 -ANN00078, 9,80NW_ANN ,0.94,-0.94, 2 -ANN00079, 9,90NW_ANN ,1.06,-1.06, 2 -ANN00080, 9,100NW_ANN ,1.18,-1.18, 2 -ANN00081, 9,110NW_ANN ,1.30,-1.30, 2 -ANN00082, 9,120NW_ANN ,1.41,-1.41, 2 -ANN00083, 9,130NW_ANN ,1.53,-1.53, 2 -ANN00084, 9,140NW_ANN ,1.65,-1.65, 2 -ANN00085, 9,150NW_ANN ,1.77,-1.77, 2 -ANN00086, 9,160NW_ANN ,1.88,-1.88, 2 -ANN00087, 9,170NW_ANN ,2.00,-2.00, 2 -ANN00088, 9,180NW_ANN ,2.12,-2.12, 2 -ANN00089, 9,190NW_ANN ,2.24,-2.24, 2 -ANN00090, 9,200NW_ANN ,2.35,-2.36, 2 -ANN00091, 9,210NW_ANN ,2.47,-2.47, 2 -ANN00092, 9,220NW_ANN ,2.59,-2.59, 2 -ANN00093, 9,230NW_ANN ,2.71,-2.71, 2 -ANN00094, 9,240NW_ANN ,2.83,-2.83, 2 -ANN00095, 9,250NW_ANN ,2.94,-2.95, 2 -LVD00000, 9,LVD ,0.00,0.00, 1 -LVD00001, 9,20N_LVD ,0.33,0.00, 2 -LVD00002, 9,30N_LVD ,0.50,0.00, 2 -LVD00003, 9,40N_LVD ,0.67,0.00, 2 -LVD00004, 9,50N_LVD ,0.83,0.00, 2 -LVD00005, 9,60N_LVD ,1.00,0.00, 2 -LVD00006, 9,70N_LVD ,1.17,0.00, 2 -LVD00007, 9,80N_LVD ,1.33,0.00, 2 -LVD00008, 9,90N_LVD ,1.50,0.00, 2 -LVD00009, 9,100N_LVD ,1.67,0.00, 2 -LVD00010, 9,110N_LVD ,1.83,0.00, 2 -LVD00011, 9,120N_LVD ,2.00,0.00, 2 -LVD00012, 9,130N_LVD ,2.17,0.00, 2 -LVD00013, 9,140N_LVD ,2.33,0.00, 2 -LVD00014, 9,150N_LVD ,2.50,0.00, 2 -LVD00015, 9,160N_LVD ,2.66,0.00, 2 -LVD00016, 9,170N_LVD ,2.83,0.00, 2 -LVD00017, 9,180N_LVD ,3.00,0.00, 2 -LVD00018, 9,190N_LVD ,3.16,0.00, 2 -LVD00019, 9,200N_LVD ,3.33,0.00, 2 -LVD00020, 9,210N_LVD ,3.50,0.00, 2 -LVD00021, 9,220N_LVD ,3.66,0.00, 2 -LVD00022, 9,230N_LVD ,3.83,0.00, 2 -LVD00023, 9,240N_LVD ,4.00,0.00, 2 -LVD00024, 9,250N_LVD ,4.16,0.00, 2 -LVD00048, 9,20NE_LVD ,0.24,0.24, 2 -LVD00049, 9,30NE_LVD ,0.35,0.35, 2 -LVD00050, 9,40NE_LVD ,0.47,0.47, 2 -LVD00051, 9,50NE_LVD ,0.59,0.59, 2 -LVD00052, 9,60NE_LVD ,0.71,0.71, 2 -LVD00053, 9,70NE_LVD ,0.82,0.82, 2 -LVD00054, 9,80NE_LVD ,0.94,0.94, 2 -LVD00055, 9,90NE_LVD ,1.06,1.06, 2 -LVD00056, 9,100NE_LVD ,1.18,1.18, 2 -LVD00057, 9,110NE_LVD ,1.30,1.30, 2 -LVD00058, 9,120NE_LVD ,1.41,1.41, 2 -LVD00059, 9,130NE_LVD ,1.53,1.53, 2 -LVD00060, 9,140NE_LVD ,1.65,1.65, 2 -LVD00061, 9,150NE_LVD ,1.77,1.77, 2 -LVD00062, 9,160NE_LVD ,1.88,1.88, 2 -LVD00063, 9,170NE_LVD ,2.00,2.00, 2 -LVD00064, 9,180NE_LVD ,2.12,2.12, 2 -LVD00065, 9,190NE_LVD ,2.24,2.24, 2 -LVD00066, 9,200NE_LVD ,2.35,2.36, 2 -LVD00067, 9,210NE_LVD ,2.47,2.47, 2 -LVD00068, 9,220NE_LVD ,2.59,2.59, 2 -LVD00069, 9,230NE_LVD ,2.71,2.71, 2 -LVD00070, 9,240NE_LVD ,2.83,2.83, 2 -LVD00071, 9,250NE_LVD ,2.94,2.95, 2 -LVD00072, 9,20NW_LVD ,0.24,-0.24, 2 -LVD00073, 9,30NW_LVD ,0.35,-0.35, 2 -LVD00074, 9,40NW_LVD ,0.47,-0.47, 2 -LVD00075, 9,50NW_LVD ,0.59,-0.59, 2 -LVD00076, 9,60NW_LVD ,0.71,-0.71, 2 -LVD00077, 9,70NW_LVD ,0.82,-0.82, 2 -LVD00078, 9,80NW_LVD ,0.94,-0.94, 2 -LVD00079, 9,90NW_LVD ,1.06,-1.06, 2 -LVD00080, 9,100NW_LVD ,1.18,-1.18, 2 -LVD00081, 9,110NW_LVD ,1.30,-1.30, 2 -LVD00082, 9,120NW_LVD ,1.41,-1.41, 2 -LVD00083, 9,130NW_LVD ,1.53,-1.53, 2 -LVD00084, 9,140NW_LVD ,1.65,-1.65, 2 -LVD00085, 9,150NW_LVD ,1.77,-1.77, 2 -LVD00086, 9,160NW_LVD ,1.88,-1.88, 2 -LVD00087, 9,170NW_LVD ,2.00,-2.00, 2 -LVD00088, 9,180NW_LVD ,2.12,-2.12, 2 -LVD00089, 9,190NW_LVD ,2.24,-2.24, 2 -LVD00090, 9,200NW_LVD ,2.35,-2.36, 2 -LVD00091, 9,210NW_LVD ,2.47,-2.47, 2 -LVD00092, 9,220NW_LVD ,2.59,-2.59, 2 -LVD00093, 9,230NW_LVD ,2.71,-2.71, 2 -LVD00094, 9,240NW_LVD ,2.83,-2.83, 2 -LVD00095, 9,250NW_LVD ,2.94,-2.95, 2 -BKA00000, 9,BKA ,0.00,0.00, 1 -BKA00001, 9,20N_BKA ,0.33,0.00, 2 -BKA00002, 9,30N_BKA ,0.50,0.00, 2 -BKA00003, 9,40N_BKA ,0.67,0.00, 2 -BKA00004, 9,50N_BKA ,0.83,0.00, 2 -BKA00005, 9,60N_BKA ,1.00,0.00, 2 -BKA00006, 9,70N_BKA ,1.17,0.00, 2 -BKA00007, 9,80N_BKA ,1.33,0.00, 2 -BKA00008, 9,90N_BKA ,1.50,0.00, 2 -BKA00009, 9,100N_BKA ,1.67,0.00, 2 -BKA00010, 9,110N_BKA ,1.83,0.00, 2 -BKA00011, 9,120N_BKA ,2.00,0.00, 2 -BKA00012, 9,130N_BKA ,2.17,0.00, 2 -BKA00013, 9,140N_BKA ,2.33,0.00, 2 -BKA00014, 9,150N_BKA ,2.50,0.00, 2 -BKA00015, 9,160N_BKA ,2.66,0.00, 2 -BKA00016, 9,170N_BKA ,2.83,0.00, 2 -BKA00017, 9,180N_BKA ,3.00,0.00, 2 -BKA00018, 9,190N_BKA ,3.16,0.00, 2 -BKA00019, 9,200N_BKA ,3.33,0.00, 2 -BKA00020, 9,210N_BKA ,3.50,0.00, 2 -BKA00021, 9,220N_BKA ,3.66,0.00, 2 -BKA00022, 9,230N_BKA ,3.83,0.00, 2 -BKA00023, 9,240N_BKA ,4.00,0.00, 2 -BKA00024, 9,250N_BKA ,4.16,0.00, 2 -BKA00048, 9,20NE_BKA ,0.24,0.24, 2 -BKA00049, 9,30NE_BKA ,0.35,0.35, 2 -BKA00050, 9,40NE_BKA ,0.47,0.47, 2 -BKA00051, 9,50NE_BKA ,0.59,0.59, 2 -BKA00052, 9,60NE_BKA ,0.71,0.71, 2 -BKA00053, 9,70NE_BKA ,0.82,0.82, 2 -BKA00054, 9,80NE_BKA ,0.94,0.94, 2 -BKA00055, 9,90NE_BKA ,1.06,1.06, 2 -BKA00056, 9,100NE_BKA ,1.18,1.18, 2 -BKA00057, 9,110NE_BKA ,1.30,1.30, 2 -BKA00058, 9,120NE_BKA ,1.41,1.41, 2 -BKA00059, 9,130NE_BKA ,1.53,1.53, 2 -BKA00060, 9,140NE_BKA ,1.65,1.65, 2 -BKA00061, 9,150NE_BKA ,1.77,1.77, 2 -BKA00062, 9,160NE_BKA ,1.88,1.88, 2 -BKA00063, 9,170NE_BKA ,2.00,2.00, 2 -BKA00064, 9,180NE_BKA ,2.12,2.12, 2 -BKA00065, 9,190NE_BKA ,2.24,2.24, 2 -BKA00066, 9,200NE_BKA ,2.35,2.36, 2 -BKA00067, 9,210NE_BKA ,2.47,2.47, 2 -BKA00068, 9,220NE_BKA ,2.59,2.59, 2 -BKA00069, 9,230NE_BKA ,2.71,2.71, 2 -BKA00070, 9,240NE_BKA ,2.83,2.83, 2 -BKA00071, 9,250NE_BKA ,2.94,2.95, 2 -BKA00072, 9,20NW_BKA ,0.24,-0.24, 2 -BKA00073, 9,30NW_BKA ,0.35,-0.35, 2 -BKA00074, 9,40NW_BKA ,0.47,-0.47, 2 -BKA00075, 9,50NW_BKA ,0.59,-0.59, 2 -BKA00076, 9,60NW_BKA ,0.71,-0.71, 2 -BKA00077, 9,70NW_BKA ,0.82,-0.82, 2 -BKA00078, 9,80NW_BKA ,0.94,-0.94, 2 -BKA00079, 9,90NW_BKA ,1.06,-1.06, 2 -BKA00080, 9,100NW_BKA ,1.18,-1.18, 2 -BKA00081, 9,110NW_BKA ,1.30,-1.30, 2 -BKA00082, 9,120NW_BKA ,1.41,-1.41, 2 -BKA00083, 9,130NW_BKA ,1.53,-1.53, 2 -BKA00084, 9,140NW_BKA ,1.65,-1.65, 2 -BKA00085, 9,150NW_BKA ,1.77,-1.77, 2 -BKA00086, 9,160NW_BKA ,1.88,-1.88, 2 -BKA00087, 9,170NW_BKA ,2.00,-2.00, 2 -BKA00088, 9,180NW_BKA ,2.12,-2.12, 2 -BKA00089, 9,190NW_BKA ,2.24,-2.24, 2 -BKA00090, 9,200NW_BKA ,2.35,-2.36, 2 -BKA00091, 9,210NW_BKA ,2.47,-2.47, 2 -BKA00092, 9,220NW_BKA ,2.59,-2.59, 2 -BKA00093, 9,230NW_BKA ,2.71,-2.71, 2 -BKA00094, 9,240NW_BKA ,2.83,-2.83, 2 -BKA00095, 9,250NW_BKA ,2.94,-2.95, 2 -SSR00000, 9,SSR ,0.00,0.00, 1 -SSR00001, 9,20N_SSR ,0.33,0.00, 2 -SSR00002, 9,30N_SSR ,0.50,0.00, 2 -SSR00003, 9,40N_SSR ,0.67,0.00, 2 -SSR00004, 9,50N_SSR ,0.83,0.00, 2 -SSR00005, 9,60N_SSR ,1.00,0.00, 2 -SSR00006, 9,70N_SSR ,1.17,0.00, 2 -SSR00007, 9,80N_SSR ,1.33,0.00, 2 -SSR00008, 9,90N_SSR ,1.50,0.00, 2 -SSR00009, 9,100N_SSR ,1.67,0.00, 2 -SSR00010, 9,110N_SSR ,1.83,0.00, 2 -SSR00011, 9,120N_SSR ,2.00,0.00, 2 -SSR00012, 9,130N_SSR ,2.17,0.00, 2 -SSR00013, 9,140N_SSR ,2.33,0.00, 2 -SSR00014, 9,150N_SSR ,2.50,0.00, 2 -SSR00015, 9,160N_SSR ,2.66,0.00, 2 -SSR00016, 9,170N_SSR ,2.83,0.00, 2 -SSR00017, 9,180N_SSR ,3.00,0.00, 2 -SSR00018, 9,190N_SSR ,3.16,0.00, 2 -SSR00019, 9,200N_SSR ,3.33,0.00, 2 -SSR00020, 9,210N_SSR ,3.50,0.00, 2 -SSR00021, 9,220N_SSR ,3.66,0.00, 2 -SSR00022, 9,230N_SSR ,3.83,0.00, 2 -SSR00023, 9,240N_SSR ,4.00,0.00, 2 -SSR00024, 9,250N_SSR ,4.16,0.00, 2 -SSR00048, 9,20NE_SSR ,0.24,0.24, 2 -SSR00049, 9,30NE_SSR ,0.35,0.35, 2 -SSR00050, 9,40NE_SSR ,0.47,0.47, 2 -SSR00051, 9,50NE_SSR ,0.59,0.59, 2 -SSR00052, 9,60NE_SSR ,0.71,0.71, 2 -SSR00053, 9,70NE_SSR ,0.82,0.82, 2 -SSR00054, 9,80NE_SSR ,0.94,0.94, 2 -SSR00055, 9,90NE_SSR ,1.06,1.06, 2 -SSR00056, 9,100NE_SSR ,1.18,1.18, 2 -SSR00057, 9,110NE_SSR ,1.30,1.30, 2 -SSR00058, 9,120NE_SSR ,1.41,1.41, 2 -SSR00059, 9,130NE_SSR ,1.53,1.53, 2 -SSR00060, 9,140NE_SSR ,1.65,1.65, 2 -SSR00061, 9,150NE_SSR ,1.77,1.77, 2 -SSR00062, 9,160NE_SSR ,1.88,1.88, 2 -SSR00063, 9,170NE_SSR ,2.00,2.00, 2 -SSR00064, 9,180NE_SSR ,2.12,2.12, 2 -SSR00065, 9,190NE_SSR ,2.24,2.24, 2 -SSR00066, 9,200NE_SSR ,2.35,2.36, 2 -SSR00067, 9,210NE_SSR ,2.47,2.47, 2 -SSR00068, 9,220NE_SSR ,2.59,2.59, 2 -SSR00069, 9,230NE_SSR ,2.71,2.71, 2 -SSR00070, 9,240NE_SSR ,2.83,2.83, 2 -SSR00071, 9,250NE_SSR ,2.94,2.95, 2 -SSR00072, 9,20NW_SSR ,0.24,-0.24, 2 -SSR00073, 9,30NW_SSR ,0.35,-0.35, 2 -SSR00074, 9,40NW_SSR ,0.47,-0.47, 2 -SSR00075, 9,50NW_SSR ,0.59,-0.59, 2 -SSR00076, 9,60NW_SSR ,0.71,-0.71, 2 -SSR00077, 9,70NW_SSR ,0.82,-0.82, 2 -SSR00078, 9,80NW_SSR ,0.94,-0.94, 2 -SSR00079, 9,90NW_SSR ,1.06,-1.06, 2 -SSR00080, 9,100NW_SSR ,1.18,-1.18, 2 -SSR00081, 9,110NW_SSR ,1.30,-1.30, 2 -SSR00082, 9,120NW_SSR ,1.41,-1.41, 2 -SSR00083, 9,130NW_SSR ,1.53,-1.53, 2 -SSR00084, 9,140NW_SSR ,1.65,-1.65, 2 -SSR00085, 9,150NW_SSR ,1.77,-1.77, 2 -SSR00086, 9,160NW_SSR ,1.88,-1.88, 2 -SSR00087, 9,170NW_SSR ,2.00,-2.00, 2 -SSR00088, 9,180NW_SSR ,2.12,-2.12, 2 -SSR00089, 9,190NW_SSR ,2.24,-2.24, 2 -SSR00090, 9,200NW_SSR ,2.35,-2.36, 2 -SSR00091, 9,210NW_SSR ,2.47,-2.47, 2 -SSR00092, 9,220NW_SSR ,2.59,-2.59, 2 -SSR00093, 9,230NW_SSR ,2.71,-2.71, 2 -SSR00094, 9,240NW_SSR ,2.83,-2.83, 2 -SSR00095, 9,250NW_SSR ,2.94,-2.95, 2 -JNU00000, 9,JNU ,0.00,0.00, 1 -JNU00001, 9,20N_JNU ,0.33,0.00, 2 -JNU00002, 9,30N_JNU ,0.50,0.00, 2 -JNU00003, 9,40N_JNU ,0.67,0.00, 2 -JNU00004, 9,50N_JNU ,0.83,0.00, 2 -JNU00005, 9,60N_JNU ,1.00,0.00, 2 -JNU00006, 9,70N_JNU ,1.17,0.00, 2 -JNU00007, 9,80N_JNU ,1.33,0.00, 2 -JNU00008, 9,90N_JNU ,1.50,0.00, 2 -JNU00009, 9,100N_JNU ,1.67,0.00, 2 -JNU00010, 9,110N_JNU ,1.83,0.00, 2 -JNU00011, 9,120N_JNU ,2.00,0.00, 2 -JNU00012, 9,130N_JNU ,2.17,0.00, 2 -JNU00013, 9,140N_JNU ,2.33,0.00, 2 -JNU00014, 9,150N_JNU ,2.50,0.00, 2 -JNU00015, 9,160N_JNU ,2.66,0.00, 2 -JNU00016, 9,170N_JNU ,2.83,0.00, 2 -JNU00017, 9,180N_JNU ,3.00,0.00, 2 -JNU00018, 9,190N_JNU ,3.16,0.00, 2 -JNU00019, 9,200N_JNU ,3.33,0.00, 2 -JNU00020, 9,210N_JNU ,3.50,0.00, 2 -JNU00021, 9,220N_JNU ,3.66,0.00, 2 -JNU00022, 9,230N_JNU ,3.83,0.00, 2 -JNU00023, 9,240N_JNU ,4.00,0.00, 2 -JNU00024, 9,250N_JNU ,4.16,0.00, 2 -JNU00048, 9,20NE_JNU ,0.24,0.24, 2 -JNU00049, 9,30NE_JNU ,0.35,0.35, 2 -JNU00050, 9,40NE_JNU ,0.47,0.47, 2 -JNU00051, 9,50NE_JNU ,0.59,0.59, 2 -JNU00052, 9,60NE_JNU ,0.71,0.71, 2 -JNU00053, 9,70NE_JNU ,0.82,0.82, 2 -JNU00054, 9,80NE_JNU ,0.94,0.94, 2 -JNU00055, 9,90NE_JNU ,1.06,1.06, 2 -JNU00056, 9,100NE_JNU ,1.18,1.18, 2 -JNU00057, 9,110NE_JNU ,1.30,1.30, 2 -JNU00058, 9,120NE_JNU ,1.41,1.41, 2 -JNU00059, 9,130NE_JNU ,1.53,1.53, 2 -JNU00060, 9,140NE_JNU ,1.65,1.65, 2 -JNU00061, 9,150NE_JNU ,1.77,1.77, 2 -JNU00062, 9,160NE_JNU ,1.88,1.88, 2 -JNU00063, 9,170NE_JNU ,2.00,2.00, 2 -JNU00064, 9,180NE_JNU ,2.12,2.12, 2 -JNU00065, 9,190NE_JNU ,2.24,2.24, 2 -JNU00066, 9,200NE_JNU ,2.35,2.36, 2 -JNU00067, 9,210NE_JNU ,2.47,2.47, 2 -JNU00068, 9,220NE_JNU ,2.59,2.59, 2 -JNU00069, 9,230NE_JNU ,2.71,2.71, 2 -JNU00070, 9,240NE_JNU ,2.83,2.83, 2 -JNU00071, 9,250NE_JNU ,2.94,2.95, 2 -JNU00072, 9,20NW_JNU ,0.24,-0.24, 2 -JNU00073, 9,30NW_JNU ,0.35,-0.35, 2 -JNU00074, 9,40NW_JNU ,0.47,-0.47, 2 -JNU00075, 9,50NW_JNU ,0.59,-0.59, 2 -JNU00076, 9,60NW_JNU ,0.71,-0.71, 2 -JNU00077, 9,70NW_JNU ,0.82,-0.82, 2 -JNU00078, 9,80NW_JNU ,0.94,-0.94, 2 -JNU00079, 9,90NW_JNU ,1.06,-1.06, 2 -JNU00080, 9,100NW_JNU ,1.18,-1.18, 2 -JNU00081, 9,110NW_JNU ,1.30,-1.30, 2 -JNU00082, 9,120NW_JNU ,1.41,-1.41, 2 -JNU00083, 9,130NW_JNU ,1.53,-1.53, 2 -JNU00084, 9,140NW_JNU ,1.65,-1.65, 2 -JNU00085, 9,150NW_JNU ,1.77,-1.77, 2 -JNU00086, 9,160NW_JNU ,1.88,-1.88, 2 -JNU00087, 9,170NW_JNU ,2.00,-2.00, 2 -JNU00088, 9,180NW_JNU ,2.12,-2.12, 2 -JNU00089, 9,190NW_JNU ,2.24,-2.24, 2 -JNU00090, 9,200NW_JNU ,2.35,-2.36, 2 -JNU00091, 9,210NW_JNU ,2.47,-2.47, 2 -JNU00092, 9,220NW_JNU ,2.59,-2.59, 2 -JNU00093, 9,230NW_JNU ,2.71,-2.71, 2 -JNU00094, 9,240NW_JNU ,2.83,-2.83, 2 -JNU00095, 9,250NW_JNU ,2.94,-2.95, 2 -YAK00000, 9,YAK ,0.00,0.00, 1 -YAK00001, 9,20N_YAK ,0.33,0.00, 2 -YAK00002, 9,30N_YAK ,0.50,0.00, 2 -YAK00003, 9,40N_YAK ,0.67,0.00, 2 -YAK00004, 9,50N_YAK ,0.83,0.00, 2 -YAK00005, 9,60N_YAK ,1.00,0.00, 2 -YAK00006, 9,70N_YAK ,1.17,0.00, 2 -YAK00007, 9,80N_YAK ,1.33,0.00, 2 -YAK00008, 9,90N_YAK ,1.50,0.00, 2 -YAK00009, 9,100N_YAK ,1.67,0.00, 2 -YAK00010, 9,110N_YAK ,1.83,0.00, 2 -YAK00011, 9,120N_YAK ,2.00,0.00, 2 -YAK00012, 9,130N_YAK ,2.17,0.00, 2 -YAK00013, 9,140N_YAK ,2.33,0.00, 2 -YAK00014, 9,150N_YAK ,2.50,0.00, 2 -YAK00015, 9,160N_YAK ,2.66,0.00, 2 -YAK00016, 9,170N_YAK ,2.83,0.00, 2 -YAK00017, 9,180N_YAK ,3.00,0.00, 2 -YAK00018, 9,190N_YAK ,3.16,0.00, 2 -YAK00019, 9,200N_YAK ,3.33,0.00, 2 -YAK00020, 9,210N_YAK ,3.50,0.00, 2 -YAK00021, 9,220N_YAK ,3.66,0.00, 2 -YAK00022, 9,230N_YAK ,3.83,0.00, 2 -YAK00023, 9,240N_YAK ,4.00,0.00, 2 -YAK00024, 9,250N_YAK ,4.16,0.00, 2 -YAK00048, 9,20NE_YAK ,0.24,0.24, 2 -YAK00049, 9,30NE_YAK ,0.35,0.35, 2 -YAK00050, 9,40NE_YAK ,0.47,0.47, 2 -YAK00051, 9,50NE_YAK ,0.59,0.59, 2 -YAK00052, 9,60NE_YAK ,0.71,0.71, 2 -YAK00053, 9,70NE_YAK ,0.82,0.82, 2 -YAK00054, 9,80NE_YAK ,0.94,0.94, 2 -YAK00055, 9,90NE_YAK ,1.06,1.06, 2 -YAK00056, 9,100NE_YAK ,1.18,1.18, 2 -YAK00057, 9,110NE_YAK ,1.30,1.30, 2 -YAK00058, 9,120NE_YAK ,1.41,1.41, 2 -YAK00059, 9,130NE_YAK ,1.53,1.53, 2 -YAK00060, 9,140NE_YAK ,1.65,1.65, 2 -YAK00061, 9,150NE_YAK ,1.77,1.77, 2 -YAK00062, 9,160NE_YAK ,1.88,1.88, 2 -YAK00063, 9,170NE_YAK ,2.00,2.00, 2 -YAK00064, 9,180NE_YAK ,2.12,2.12, 2 -YAK00065, 9,190NE_YAK ,2.24,2.24, 2 -YAK00066, 9,200NE_YAK ,2.35,2.36, 2 -YAK00067, 9,210NE_YAK ,2.47,2.47, 2 -YAK00068, 9,220NE_YAK ,2.59,2.59, 2 -YAK00069, 9,230NE_YAK ,2.71,2.71, 2 -YAK00070, 9,240NE_YAK ,2.83,2.83, 2 -YAK00071, 9,250NE_YAK ,2.94,2.95, 2 -YAK00072, 9,20NW_YAK ,0.24,-0.24, 2 -YAK00073, 9,30NW_YAK ,0.35,-0.35, 2 -YAK00074, 9,40NW_YAK ,0.47,-0.47, 2 -YAK00075, 9,50NW_YAK ,0.59,-0.59, 2 -YAK00076, 9,60NW_YAK ,0.71,-0.71, 2 -YAK00077, 9,70NW_YAK ,0.82,-0.82, 2 -YAK00078, 9,80NW_YAK ,0.94,-0.94, 2 -YAK00079, 9,90NW_YAK ,1.06,-1.06, 2 -YAK00080, 9,100NW_YAK ,1.18,-1.18, 2 -YAK00081, 9,110NW_YAK ,1.30,-1.30, 2 -YAK00082, 9,120NW_YAK ,1.41,-1.41, 2 -YAK00083, 9,130NW_YAK ,1.53,-1.53, 2 -YAK00084, 9,140NW_YAK ,1.65,-1.65, 2 -YAK00085, 9,150NW_YAK ,1.77,-1.77, 2 -YAK00086, 9,160NW_YAK ,1.88,-1.88, 2 -YAK00087, 9,170NW_YAK ,2.00,-2.00, 2 -YAK00088, 9,180NW_YAK ,2.12,-2.12, 2 -YAK00089, 9,190NW_YAK ,2.24,-2.24, 2 -YAK00090, 9,200NW_YAK ,2.35,-2.36, 2 -YAK00091, 9,210NW_YAK ,2.47,-2.47, 2 -YAK00092, 9,220NW_YAK ,2.59,-2.59, 2 -YAK00093, 9,230NW_YAK ,2.71,-2.71, 2 -YAK00094, 9,240NW_YAK ,2.83,-2.83, 2 -YAK00095, 9,250NW_YAK ,2.94,-2.95, 2 -MDO00000, 9,MDO ,0.00,0.00, 1 -MDO00001, 9,20N_MDO ,0.33,0.00, 2 -MDO00002, 9,30N_MDO ,0.50,0.00, 2 -MDO00003, 9,40N_MDO ,0.67,0.00, 2 -MDO00004, 9,50N_MDO ,0.83,0.00, 2 -MDO00005, 9,60N_MDO ,1.00,0.00, 2 -MDO00006, 9,70N_MDO ,1.17,0.00, 2 -MDO00007, 9,80N_MDO ,1.33,0.00, 2 -MDO00008, 9,90N_MDO ,1.50,0.00, 2 -MDO00009, 9,100N_MDO ,1.67,0.00, 2 -MDO00010, 9,110N_MDO ,1.83,0.00, 2 -MDO00011, 9,120N_MDO ,2.00,0.00, 2 -MDO00012, 9,130N_MDO ,2.17,0.00, 2 -MDO00013, 9,140N_MDO ,2.33,0.00, 2 -MDO00014, 9,150N_MDO ,2.50,0.00, 2 -MDO00015, 9,160N_MDO ,2.66,0.00, 2 -MDO00016, 9,170N_MDO ,2.83,0.00, 2 -MDO00017, 9,180N_MDO ,3.00,0.00, 2 -MDO00018, 9,190N_MDO ,3.16,0.00, 2 -MDO00019, 9,200N_MDO ,3.33,0.00, 2 -MDO00020, 9,210N_MDO ,3.50,0.00, 2 -MDO00021, 9,220N_MDO ,3.66,0.00, 2 -MDO00022, 9,230N_MDO ,3.83,0.00, 2 -MDO00023, 9,240N_MDO ,4.00,0.00, 2 -MDO00024, 9,250N_MDO ,4.16,0.00, 2 -MDO00048, 9,20NE_MDO ,0.24,0.24, 2 -MDO00049, 9,30NE_MDO ,0.35,0.35, 2 -MDO00050, 9,40NE_MDO ,0.47,0.47, 2 -MDO00051, 9,50NE_MDO ,0.59,0.59, 2 -MDO00052, 9,60NE_MDO ,0.71,0.71, 2 -MDO00053, 9,70NE_MDO ,0.82,0.82, 2 -MDO00054, 9,80NE_MDO ,0.94,0.94, 2 -MDO00055, 9,90NE_MDO ,1.06,1.06, 2 -MDO00056, 9,100NE_MDO ,1.18,1.18, 2 -MDO00057, 9,110NE_MDO ,1.30,1.30, 2 -MDO00058, 9,120NE_MDO ,1.41,1.41, 2 -MDO00059, 9,130NE_MDO ,1.53,1.53, 2 -MDO00060, 9,140NE_MDO ,1.65,1.65, 2 -MDO00061, 9,150NE_MDO ,1.77,1.77, 2 -MDO00062, 9,160NE_MDO ,1.88,1.88, 2 -MDO00063, 9,170NE_MDO ,2.00,2.00, 2 -MDO00064, 9,180NE_MDO ,2.12,2.12, 2 -MDO00065, 9,190NE_MDO ,2.24,2.24, 2 -MDO00066, 9,200NE_MDO ,2.35,2.36, 2 -MDO00067, 9,210NE_MDO ,2.47,2.47, 2 -MDO00068, 9,220NE_MDO ,2.59,2.59, 2 -MDO00069, 9,230NE_MDO ,2.71,2.71, 2 -MDO00070, 9,240NE_MDO ,2.83,2.83, 2 -MDO00071, 9,250NE_MDO ,2.94,2.95, 2 -MDO00072, 9,20NW_MDO ,0.24,-0.24, 2 -MDO00073, 9,30NW_MDO ,0.35,-0.35, 2 -MDO00074, 9,40NW_MDO ,0.47,-0.47, 2 -MDO00075, 9,50NW_MDO ,0.59,-0.59, 2 -MDO00076, 9,60NW_MDO ,0.71,-0.71, 2 -MDO00077, 9,70NW_MDO ,0.82,-0.82, 2 -MDO00078, 9,80NW_MDO ,0.94,-0.94, 2 -MDO00079, 9,90NW_MDO ,1.06,-1.06, 2 -MDO00080, 9,100NW_MDO ,1.18,-1.18, 2 -MDO00081, 9,110NW_MDO ,1.30,-1.30, 2 -MDO00082, 9,120NW_MDO ,1.41,-1.41, 2 -MDO00083, 9,130NW_MDO ,1.53,-1.53, 2 -MDO00084, 9,140NW_MDO ,1.65,-1.65, 2 -MDO00085, 9,150NW_MDO ,1.77,-1.77, 2 -MDO00086, 9,160NW_MDO ,1.88,-1.88, 2 -MDO00087, 9,170NW_MDO ,2.00,-2.00, 2 -MDO00088, 9,180NW_MDO ,2.12,-2.12, 2 -MDO00089, 9,190NW_MDO ,2.24,-2.24, 2 -MDO00090, 9,200NW_MDO ,2.35,-2.36, 2 -MDO00091, 9,210NW_MDO ,2.47,-2.47, 2 -MDO00092, 9,220NW_MDO ,2.59,-2.59, 2 -MDO00093, 9,230NW_MDO ,2.71,-2.71, 2 -MDO00094, 9,240NW_MDO ,2.83,-2.83, 2 -MDO00095, 9,250NW_MDO ,2.94,-2.95, 2 -JOH00000, 9,JOH ,0.00,0.00, 1 -JOH00001, 9,20N_JOH ,0.33,0.00, 2 -JOH00002, 9,30N_JOH ,0.50,0.00, 2 -JOH00003, 9,40N_JOH ,0.67,0.00, 2 -JOH00004, 9,50N_JOH ,0.83,0.00, 2 -JOH00005, 9,60N_JOH ,1.00,0.00, 2 -JOH00006, 9,70N_JOH ,1.17,0.00, 2 -JOH00007, 9,80N_JOH ,1.33,0.00, 2 -JOH00008, 9,90N_JOH ,1.50,0.00, 2 -JOH00009, 9,100N_JOH ,1.67,0.00, 2 -JOH00010, 9,110N_JOH ,1.83,0.00, 2 -JOH00011, 9,120N_JOH ,2.00,0.00, 2 -JOH00012, 9,130N_JOH ,2.17,0.00, 2 -JOH00013, 9,140N_JOH ,2.33,0.00, 2 -JOH00014, 9,150N_JOH ,2.50,0.00, 2 -JOH00015, 9,160N_JOH ,2.66,0.00, 2 -JOH00016, 9,170N_JOH ,2.83,0.00, 2 -JOH00017, 9,180N_JOH ,3.00,0.00, 2 -JOH00018, 9,190N_JOH ,3.16,0.00, 2 -JOH00019, 9,200N_JOH ,3.33,0.00, 2 -JOH00020, 9,210N_JOH ,3.50,0.00, 2 -JOH00021, 9,220N_JOH ,3.66,0.00, 2 -JOH00022, 9,230N_JOH ,3.83,0.00, 2 -JOH00023, 9,240N_JOH ,4.00,0.00, 2 -JOH00024, 9,250N_JOH ,4.16,0.00, 2 -JOH00048, 9,20NE_JOH ,0.24,0.24, 2 -JOH00049, 9,30NE_JOH ,0.35,0.35, 2 -JOH00050, 9,40NE_JOH ,0.47,0.47, 2 -JOH00051, 9,50NE_JOH ,0.59,0.59, 2 -JOH00052, 9,60NE_JOH ,0.71,0.71, 2 -JOH00053, 9,70NE_JOH ,0.82,0.82, 2 -JOH00054, 9,80NE_JOH ,0.94,0.94, 2 -JOH00055, 9,90NE_JOH ,1.06,1.06, 2 -JOH00056, 9,100NE_JOH ,1.18,1.18, 2 -JOH00057, 9,110NE_JOH ,1.30,1.30, 2 -JOH00058, 9,120NE_JOH ,1.41,1.41, 2 -JOH00059, 9,130NE_JOH ,1.53,1.53, 2 -JOH00060, 9,140NE_JOH ,1.65,1.65, 2 -JOH00061, 9,150NE_JOH ,1.77,1.77, 2 -JOH00062, 9,160NE_JOH ,1.88,1.88, 2 -JOH00063, 9,170NE_JOH ,2.00,2.00, 2 -JOH00064, 9,180NE_JOH ,2.12,2.12, 2 -JOH00065, 9,190NE_JOH ,2.24,2.24, 2 -JOH00066, 9,200NE_JOH ,2.35,2.36, 2 -JOH00067, 9,210NE_JOH ,2.47,2.47, 2 -JOH00068, 9,220NE_JOH ,2.59,2.59, 2 -JOH00069, 9,230NE_JOH ,2.71,2.71, 2 -JOH00070, 9,240NE_JOH ,2.83,2.83, 2 -JOH00071, 9,250NE_JOH ,2.94,2.95, 2 -JOH00072, 9,20NW_JOH ,0.24,-0.24, 2 -JOH00073, 9,30NW_JOH ,0.35,-0.35, 2 -JOH00074, 9,40NW_JOH ,0.47,-0.47, 2 -JOH00075, 9,50NW_JOH ,0.59,-0.59, 2 -JOH00076, 9,60NW_JOH ,0.71,-0.71, 2 -JOH00077, 9,70NW_JOH ,0.82,-0.82, 2 -JOH00078, 9,80NW_JOH ,0.94,-0.94, 2 -JOH00079, 9,90NW_JOH ,1.06,-1.06, 2 -JOH00080, 9,100NW_JOH ,1.18,-1.18, 2 -JOH00081, 9,110NW_JOH ,1.30,-1.30, 2 -JOH00082, 9,120NW_JOH ,1.41,-1.41, 2 -JOH00083, 9,130NW_JOH ,1.53,-1.53, 2 -JOH00084, 9,140NW_JOH ,1.65,-1.65, 2 -JOH00085, 9,150NW_JOH ,1.77,-1.77, 2 -JOH00086, 9,160NW_JOH ,1.88,-1.88, 2 -JOH00087, 9,170NW_JOH ,2.00,-2.00, 2 -JOH00088, 9,180NW_JOH ,2.12,-2.12, 2 -JOH00089, 9,190NW_JOH ,2.24,-2.24, 2 -JOH00090, 9,200NW_JOH ,2.35,-2.36, 2 -JOH00091, 9,210NW_JOH ,2.47,-2.47, 2 -JOH00092, 9,220NW_JOH ,2.59,-2.59, 2 -JOH00093, 9,230NW_JOH ,2.71,-2.71, 2 -JOH00094, 9,240NW_JOH ,2.83,-2.83, 2 -JOH00095, 9,250NW_JOH ,2.94,-2.95, 2 -ODK00000, 9,ODK ,0.00,0.00, 1 -ODK00001, 9,20N_ODK ,0.33,0.00, 2 -ODK00002, 9,30N_ODK ,0.50,0.00, 2 -ODK00003, 9,40N_ODK ,0.67,0.00, 2 -ODK00004, 9,50N_ODK ,0.83,0.00, 2 -ODK00005, 9,60N_ODK ,1.00,0.00, 2 -ODK00006, 9,70N_ODK ,1.17,0.00, 2 -ODK00007, 9,80N_ODK ,1.33,0.00, 2 -ODK00008, 9,90N_ODK ,1.50,0.00, 2 -ODK00009, 9,100N_ODK ,1.67,0.00, 2 -ODK00010, 9,110N_ODK ,1.83,0.00, 2 -ODK00011, 9,120N_ODK ,2.00,0.00, 2 -ODK00012, 9,130N_ODK ,2.17,0.00, 2 -ODK00013, 9,140N_ODK ,2.33,0.00, 2 -ODK00014, 9,150N_ODK ,2.50,0.00, 2 -ODK00015, 9,160N_ODK ,2.66,0.00, 2 -ODK00016, 9,170N_ODK ,2.83,0.00, 2 -ODK00017, 9,180N_ODK ,3.00,0.00, 2 -ODK00018, 9,190N_ODK ,3.16,0.00, 2 -ODK00019, 9,200N_ODK ,3.33,0.00, 2 -ODK00020, 9,210N_ODK ,3.50,0.00, 2 -ODK00021, 9,220N_ODK ,3.66,0.00, 2 -ODK00022, 9,230N_ODK ,3.83,0.00, 2 -ODK00023, 9,240N_ODK ,4.00,0.00, 2 -ODK00024, 9,250N_ODK ,4.16,0.00, 2 -ODK00048, 9,20NE_ODK ,0.24,0.24, 2 -ODK00049, 9,30NE_ODK ,0.35,0.35, 2 -ODK00050, 9,40NE_ODK ,0.47,0.47, 2 -ODK00051, 9,50NE_ODK ,0.59,0.59, 2 -ODK00052, 9,60NE_ODK ,0.71,0.71, 2 -ODK00053, 9,70NE_ODK ,0.82,0.82, 2 -ODK00054, 9,80NE_ODK ,0.94,0.94, 2 -ODK00055, 9,90NE_ODK ,1.06,1.06, 2 -ODK00056, 9,100NE_ODK ,1.18,1.18, 2 -ODK00057, 9,110NE_ODK ,1.30,1.30, 2 -ODK00058, 9,120NE_ODK ,1.41,1.41, 2 -ODK00059, 9,130NE_ODK ,1.53,1.53, 2 -ODK00060, 9,140NE_ODK ,1.65,1.65, 2 -ODK00061, 9,150NE_ODK ,1.77,1.77, 2 -ODK00062, 9,160NE_ODK ,1.88,1.88, 2 -ODK00063, 9,170NE_ODK ,2.00,2.00, 2 -ODK00064, 9,180NE_ODK ,2.12,2.12, 2 -ODK00065, 9,190NE_ODK ,2.24,2.24, 2 -ODK00066, 9,200NE_ODK ,2.35,2.36, 2 -ODK00067, 9,210NE_ODK ,2.47,2.47, 2 -ODK00068, 9,220NE_ODK ,2.59,2.59, 2 -ODK00069, 9,230NE_ODK ,2.71,2.71, 2 -ODK00070, 9,240NE_ODK ,2.83,2.83, 2 -ODK00071, 9,250NE_ODK ,2.94,2.95, 2 -ODK00072, 9,20NW_ODK ,0.24,-0.24, 2 -ODK00073, 9,30NW_ODK ,0.35,-0.35, 2 -ODK00074, 9,40NW_ODK ,0.47,-0.47, 2 -ODK00075, 9,50NW_ODK ,0.59,-0.59, 2 -ODK00076, 9,60NW_ODK ,0.71,-0.71, 2 -ODK00077, 9,70NW_ODK ,0.82,-0.82, 2 -ODK00078, 9,80NW_ODK ,0.94,-0.94, 2 -ODK00079, 9,90NW_ODK ,1.06,-1.06, 2 -ODK00080, 9,100NW_ODK ,1.18,-1.18, 2 -ODK00081, 9,110NW_ODK ,1.30,-1.30, 2 -ODK00082, 9,120NW_ODK ,1.41,-1.41, 2 -ODK00083, 9,130NW_ODK ,1.53,-1.53, 2 -ODK00084, 9,140NW_ODK ,1.65,-1.65, 2 -ODK00085, 9,150NW_ODK ,1.77,-1.77, 2 -ODK00086, 9,160NW_ODK ,1.88,-1.88, 2 -ODK00087, 9,170NW_ODK ,2.00,-2.00, 2 -ODK00088, 9,180NW_ODK ,2.12,-2.12, 2 -ODK00089, 9,190NW_ODK ,2.24,-2.24, 2 -ODK00090, 9,200NW_ODK ,2.35,-2.36, 2 -ODK00091, 9,210NW_ODK ,2.47,-2.47, 2 -ODK00092, 9,220NW_ODK ,2.59,-2.59, 2 -ODK00093, 9,230NW_ODK ,2.71,-2.71, 2 -ODK00094, 9,240NW_ODK ,2.83,-2.83, 2 -ODK00095, 9,250NW_ODK ,2.94,-2.95, 2 -HOM00000, 9,HOM ,0.00,0.00, 1 -HOM00001, 9,20N_HOM ,0.33,0.00, 2 -HOM00002, 9,30N_HOM ,0.50,0.00, 2 -HOM00003, 9,40N_HOM ,0.67,0.00, 2 -HOM00004, 9,50N_HOM ,0.83,0.00, 2 -HOM00005, 9,60N_HOM ,1.00,0.00, 2 -HOM00006, 9,70N_HOM ,1.17,0.00, 2 -HOM00007, 9,80N_HOM ,1.33,0.00, 2 -HOM00008, 9,90N_HOM ,1.50,0.00, 2 -HOM00009, 9,100N_HOM ,1.67,0.00, 2 -HOM00010, 9,110N_HOM ,1.83,0.00, 2 -HOM00011, 9,120N_HOM ,2.00,0.00, 2 -HOM00012, 9,130N_HOM ,2.17,0.00, 2 -HOM00013, 9,140N_HOM ,2.33,0.00, 2 -HOM00014, 9,150N_HOM ,2.50,0.00, 2 -HOM00015, 9,160N_HOM ,2.66,0.00, 2 -HOM00016, 9,170N_HOM ,2.83,0.00, 2 -HOM00017, 9,180N_HOM ,3.00,0.00, 2 -HOM00018, 9,190N_HOM ,3.16,0.00, 2 -HOM00019, 9,200N_HOM ,3.33,0.00, 2 -HOM00020, 9,210N_HOM ,3.50,0.00, 2 -HOM00021, 9,220N_HOM ,3.66,0.00, 2 -HOM00022, 9,230N_HOM ,3.83,0.00, 2 -HOM00023, 9,240N_HOM ,4.00,0.00, 2 -HOM00024, 9,250N_HOM ,4.16,0.00, 2 -HOM00048, 9,20NE_HOM ,0.24,0.24, 2 -HOM00049, 9,30NE_HOM ,0.35,0.35, 2 -HOM00050, 9,40NE_HOM ,0.47,0.47, 2 -HOM00051, 9,50NE_HOM ,0.59,0.59, 2 -HOM00052, 9,60NE_HOM ,0.71,0.71, 2 -HOM00053, 9,70NE_HOM ,0.82,0.82, 2 -HOM00054, 9,80NE_HOM ,0.94,0.94, 2 -HOM00055, 9,90NE_HOM ,1.06,1.06, 2 -HOM00056, 9,100NE_HOM ,1.18,1.18, 2 -HOM00057, 9,110NE_HOM ,1.30,1.30, 2 -HOM00058, 9,120NE_HOM ,1.41,1.41, 2 -HOM00059, 9,130NE_HOM ,1.53,1.53, 2 -HOM00060, 9,140NE_HOM ,1.65,1.65, 2 -HOM00061, 9,150NE_HOM ,1.77,1.77, 2 -HOM00062, 9,160NE_HOM ,1.88,1.88, 2 -HOM00063, 9,170NE_HOM ,2.00,2.00, 2 -HOM00064, 9,180NE_HOM ,2.12,2.12, 2 -HOM00065, 9,190NE_HOM ,2.24,2.24, 2 -HOM00066, 9,200NE_HOM ,2.35,2.36, 2 -HOM00067, 9,210NE_HOM ,2.47,2.47, 2 -HOM00068, 9,220NE_HOM ,2.59,2.59, 2 -HOM00069, 9,230NE_HOM ,2.71,2.71, 2 -HOM00070, 9,240NE_HOM ,2.83,2.83, 2 -HOM00071, 9,250NE_HOM ,2.94,2.95, 2 -HOM00072, 9,20NW_HOM ,0.24,-0.24, 2 -HOM00073, 9,30NW_HOM ,0.35,-0.35, 2 -HOM00074, 9,40NW_HOM ,0.47,-0.47, 2 -HOM00075, 9,50NW_HOM ,0.59,-0.59, 2 -HOM00076, 9,60NW_HOM ,0.71,-0.71, 2 -HOM00077, 9,70NW_HOM ,0.82,-0.82, 2 -HOM00078, 9,80NW_HOM ,0.94,-0.94, 2 -HOM00079, 9,90NW_HOM ,1.06,-1.06, 2 -HOM00080, 9,100NW_HOM ,1.18,-1.18, 2 -HOM00081, 9,110NW_HOM ,1.30,-1.30, 2 -HOM00082, 9,120NW_HOM ,1.41,-1.41, 2 -HOM00083, 9,130NW_HOM ,1.53,-1.53, 2 -HOM00084, 9,140NW_HOM ,1.65,-1.65, 2 -HOM00085, 9,150NW_HOM ,1.77,-1.77, 2 -HOM00086, 9,160NW_HOM ,1.88,-1.88, 2 -HOM00087, 9,170NW_HOM ,2.00,-2.00, 2 -HOM00088, 9,180NW_HOM ,2.12,-2.12, 2 -HOM00089, 9,190NW_HOM ,2.24,-2.24, 2 -HOM00090, 9,200NW_HOM ,2.35,-2.36, 2 -HOM00091, 9,210NW_HOM ,2.47,-2.47, 2 -HOM00092, 9,220NW_HOM ,2.59,-2.59, 2 -HOM00093, 9,230NW_HOM ,2.71,-2.71, 2 -HOM00094, 9,240NW_HOM ,2.83,-2.83, 2 -HOM00095, 9,250NW_HOM ,2.94,-2.95, 2 -ENA00000, 9,ENA ,0.00,0.00, 1 -ENA00001, 9,20N_ENA ,0.33,0.00, 2 -ENA00002, 9,30N_ENA ,0.50,0.00, 2 -ENA00003, 9,40N_ENA ,0.67,0.00, 2 -ENA00004, 9,50N_ENA ,0.83,0.00, 2 -ENA00005, 9,60N_ENA ,1.00,0.00, 2 -ENA00006, 9,70N_ENA ,1.17,0.00, 2 -ENA00007, 9,80N_ENA ,1.33,0.00, 2 -ENA00008, 9,90N_ENA ,1.50,0.00, 2 -ENA00009, 9,100N_ENA ,1.67,0.00, 2 -ENA00010, 9,110N_ENA ,1.83,0.00, 2 -ENA00011, 9,120N_ENA ,2.00,0.00, 2 -ENA00012, 9,130N_ENA ,2.17,0.00, 2 -ENA00013, 9,140N_ENA ,2.33,0.00, 2 -ENA00014, 9,150N_ENA ,2.50,0.00, 2 -ENA00015, 9,160N_ENA ,2.66,0.00, 2 -ENA00016, 9,170N_ENA ,2.83,0.00, 2 -ENA00017, 9,180N_ENA ,3.00,0.00, 2 -ENA00018, 9,190N_ENA ,3.16,0.00, 2 -ENA00019, 9,200N_ENA ,3.33,0.00, 2 -ENA00020, 9,210N_ENA ,3.50,0.00, 2 -ENA00021, 9,220N_ENA ,3.66,0.00, 2 -ENA00022, 9,230N_ENA ,3.83,0.00, 2 -ENA00023, 9,240N_ENA ,4.00,0.00, 2 -ENA00024, 9,250N_ENA ,4.16,0.00, 2 -ENA00048, 9,20NE_ENA ,0.24,0.24, 2 -ENA00049, 9,30NE_ENA ,0.35,0.35, 2 -ENA00050, 9,40NE_ENA ,0.47,0.47, 2 -ENA00051, 9,50NE_ENA ,0.59,0.59, 2 -ENA00052, 9,60NE_ENA ,0.71,0.71, 2 -ENA00053, 9,70NE_ENA ,0.82,0.82, 2 -ENA00054, 9,80NE_ENA ,0.94,0.94, 2 -ENA00055, 9,90NE_ENA ,1.06,1.06, 2 -ENA00056, 9,100NE_ENA ,1.18,1.18, 2 -ENA00057, 9,110NE_ENA ,1.30,1.30, 2 -ENA00058, 9,120NE_ENA ,1.41,1.41, 2 -ENA00059, 9,130NE_ENA ,1.53,1.53, 2 -ENA00060, 9,140NE_ENA ,1.65,1.65, 2 -ENA00061, 9,150NE_ENA ,1.77,1.77, 2 -ENA00062, 9,160NE_ENA ,1.88,1.88, 2 -ENA00063, 9,170NE_ENA ,2.00,2.00, 2 -ENA00064, 9,180NE_ENA ,2.12,2.12, 2 -ENA00065, 9,190NE_ENA ,2.24,2.24, 2 -ENA00066, 9,200NE_ENA ,2.35,2.36, 2 -ENA00067, 9,210NE_ENA ,2.47,2.47, 2 -ENA00068, 9,220NE_ENA ,2.59,2.59, 2 -ENA00069, 9,230NE_ENA ,2.71,2.71, 2 -ENA00070, 9,240NE_ENA ,2.83,2.83, 2 -ENA00071, 9,250NE_ENA ,2.94,2.95, 2 -ENA00072, 9,20NW_ENA ,0.24,-0.24, 2 -ENA00073, 9,30NW_ENA ,0.35,-0.35, 2 -ENA00074, 9,40NW_ENA ,0.47,-0.47, 2 -ENA00075, 9,50NW_ENA ,0.59,-0.59, 2 -ENA00076, 9,60NW_ENA ,0.71,-0.71, 2 -ENA00077, 9,70NW_ENA ,0.82,-0.82, 2 -ENA00078, 9,80NW_ENA ,0.94,-0.94, 2 -ENA00079, 9,90NW_ENA ,1.06,-1.06, 2 -ENA00080, 9,100NW_ENA ,1.18,-1.18, 2 -ENA00081, 9,110NW_ENA ,1.30,-1.30, 2 -ENA00082, 9,120NW_ENA ,1.41,-1.41, 2 -ENA00083, 9,130NW_ENA ,1.53,-1.53, 2 -ENA00084, 9,140NW_ENA ,1.65,-1.65, 2 -ENA00085, 9,150NW_ENA ,1.77,-1.77, 2 -ENA00086, 9,160NW_ENA ,1.88,-1.88, 2 -ENA00087, 9,170NW_ENA ,2.00,-2.00, 2 -ENA00088, 9,180NW_ENA ,2.12,-2.12, 2 -ENA00089, 9,190NW_ENA ,2.24,-2.24, 2 -ENA00090, 9,200NW_ENA ,2.35,-2.36, 2 -ENA00091, 9,210NW_ENA ,2.47,-2.47, 2 -ENA00092, 9,220NW_ENA ,2.59,-2.59, 2 -ENA00093, 9,230NW_ENA ,2.71,-2.71, 2 -ENA00094, 9,240NW_ENA ,2.83,-2.83, 2 -ENA00095, 9,250NW_ENA ,2.94,-2.95, 2 -ANC00000, 9,ANC ,0.00,0.00, 1 -ANC00001, 9,20N_ANC ,0.33,0.00, 2 -ANC00002, 9,30N_ANC ,0.50,0.00, 2 -ANC00003, 9,40N_ANC ,0.67,0.00, 2 -ANC00004, 9,50N_ANC ,0.83,0.00, 2 -ANC00005, 9,60N_ANC ,1.00,0.00, 2 -ANC00006, 9,70N_ANC ,1.17,0.00, 2 -ANC00007, 9,80N_ANC ,1.33,0.00, 2 -ANC00008, 9,90N_ANC ,1.50,0.00, 2 -ANC00009, 9,100N_ANC ,1.67,0.00, 2 -ANC00010, 9,110N_ANC ,1.83,0.00, 2 -ANC00011, 9,120N_ANC ,2.00,0.00, 2 -ANC00012, 9,130N_ANC ,2.17,0.00, 2 -ANC00013, 9,140N_ANC ,2.33,0.00, 2 -ANC00014, 9,150N_ANC ,2.50,0.00, 2 -ANC00015, 9,160N_ANC ,2.66,0.00, 2 -ANC00016, 9,170N_ANC ,2.83,0.00, 2 -ANC00017, 9,180N_ANC ,3.00,0.00, 2 -ANC00018, 9,190N_ANC ,3.16,0.00, 2 -ANC00019, 9,200N_ANC ,3.33,0.00, 2 -ANC00020, 9,210N_ANC ,3.50,0.00, 2 -ANC00021, 9,220N_ANC ,3.66,0.00, 2 -ANC00022, 9,230N_ANC ,3.83,0.00, 2 -ANC00023, 9,240N_ANC ,4.00,0.00, 2 -ANC00024, 9,250N_ANC ,4.16,0.00, 2 -ANC00048, 9,20NE_ANC ,0.24,0.24, 2 -ANC00049, 9,30NE_ANC ,0.35,0.35, 2 -ANC00050, 9,40NE_ANC ,0.47,0.47, 2 -ANC00051, 9,50NE_ANC ,0.59,0.59, 2 -ANC00052, 9,60NE_ANC ,0.71,0.71, 2 -ANC00053, 9,70NE_ANC ,0.82,0.82, 2 -ANC00054, 9,80NE_ANC ,0.94,0.94, 2 -ANC00055, 9,90NE_ANC ,1.06,1.06, 2 -ANC00056, 9,100NE_ANC ,1.18,1.18, 2 -ANC00057, 9,110NE_ANC ,1.30,1.30, 2 -ANC00058, 9,120NE_ANC ,1.41,1.41, 2 -ANC00059, 9,130NE_ANC ,1.53,1.53, 2 -ANC00060, 9,140NE_ANC ,1.65,1.65, 2 -ANC00061, 9,150NE_ANC ,1.77,1.77, 2 -ANC00062, 9,160NE_ANC ,1.88,1.88, 2 -ANC00063, 9,170NE_ANC ,2.00,2.00, 2 -ANC00064, 9,180NE_ANC ,2.12,2.12, 2 -ANC00065, 9,190NE_ANC ,2.24,2.24, 2 -ANC00066, 9,200NE_ANC ,2.35,2.36, 2 -ANC00067, 9,210NE_ANC ,2.47,2.47, 2 -ANC00068, 9,220NE_ANC ,2.59,2.59, 2 -ANC00069, 9,230NE_ANC ,2.71,2.71, 2 -ANC00070, 9,240NE_ANC ,2.83,2.83, 2 -ANC00071, 9,250NE_ANC ,2.94,2.95, 2 -ANC00072, 9,20NW_ANC ,0.24,-0.24, 2 -ANC00073, 9,30NW_ANC ,0.35,-0.35, 2 -ANC00074, 9,40NW_ANC ,0.47,-0.47, 2 -ANC00075, 9,50NW_ANC ,0.59,-0.59, 2 -ANC00076, 9,60NW_ANC ,0.71,-0.71, 2 -ANC00077, 9,70NW_ANC ,0.82,-0.82, 2 -ANC00078, 9,80NW_ANC ,0.94,-0.94, 2 -ANC00079, 9,90NW_ANC ,1.06,-1.06, 2 -ANC00080, 9,100NW_ANC ,1.18,-1.18, 2 -ANC00081, 9,110NW_ANC ,1.30,-1.30, 2 -ANC00082, 9,120NW_ANC ,1.41,-1.41, 2 -ANC00083, 9,130NW_ANC ,1.53,-1.53, 2 -ANC00084, 9,140NW_ANC ,1.65,-1.65, 2 -ANC00085, 9,150NW_ANC ,1.77,-1.77, 2 -ANC00086, 9,160NW_ANC ,1.88,-1.88, 2 -ANC00087, 9,170NW_ANC ,2.00,-2.00, 2 -ANC00088, 9,180NW_ANC ,2.12,-2.12, 2 -ANC00089, 9,190NW_ANC ,2.24,-2.24, 2 -ANC00090, 9,200NW_ANC ,2.35,-2.36, 2 -ANC00091, 9,210NW_ANC ,2.47,-2.47, 2 -ANC00092, 9,220NW_ANC ,2.59,-2.59, 2 -ANC00093, 9,230NW_ANC ,2.71,-2.71, 2 -ANC00094, 9,240NW_ANC ,2.83,-2.83, 2 -ANC00095, 9,250NW_ANC ,2.94,-2.95, 2 -BGQ00000, 9,BGQ ,0.00,0.00, 1 -BGQ00001, 9,20N_BGQ ,0.33,0.00, 2 -BGQ00002, 9,30N_BGQ ,0.50,0.00, 2 -BGQ00003, 9,40N_BGQ ,0.67,0.00, 2 -BGQ00004, 9,50N_BGQ ,0.83,0.00, 2 -BGQ00005, 9,60N_BGQ ,1.00,0.00, 2 -BGQ00006, 9,70N_BGQ ,1.17,0.00, 2 -BGQ00007, 9,80N_BGQ ,1.33,0.00, 2 -BGQ00008, 9,90N_BGQ ,1.50,0.00, 2 -BGQ00009, 9,100N_BGQ ,1.67,0.00, 2 -BGQ00010, 9,110N_BGQ ,1.83,0.00, 2 -BGQ00011, 9,120N_BGQ ,2.00,0.00, 2 -BGQ00012, 9,130N_BGQ ,2.17,0.00, 2 -BGQ00013, 9,140N_BGQ ,2.33,0.00, 2 -BGQ00014, 9,150N_BGQ ,2.50,0.00, 2 -BGQ00015, 9,160N_BGQ ,2.66,0.00, 2 -BGQ00016, 9,170N_BGQ ,2.83,0.00, 2 -BGQ00017, 9,180N_BGQ ,3.00,0.00, 2 -BGQ00018, 9,190N_BGQ ,3.16,0.00, 2 -BGQ00019, 9,200N_BGQ ,3.33,0.00, 2 -BGQ00020, 9,210N_BGQ ,3.50,0.00, 2 -BGQ00021, 9,220N_BGQ ,3.66,0.00, 2 -BGQ00022, 9,230N_BGQ ,3.83,0.00, 2 -BGQ00023, 9,240N_BGQ ,4.00,0.00, 2 -BGQ00024, 9,250N_BGQ ,4.16,0.00, 2 -BGQ00048, 9,20NE_BGQ ,0.24,0.24, 2 -BGQ00049, 9,30NE_BGQ ,0.35,0.35, 2 -BGQ00050, 9,40NE_BGQ ,0.47,0.47, 2 -BGQ00051, 9,50NE_BGQ ,0.59,0.59, 2 -BGQ00052, 9,60NE_BGQ ,0.71,0.71, 2 -BGQ00053, 9,70NE_BGQ ,0.82,0.82, 2 -BGQ00054, 9,80NE_BGQ ,0.94,0.94, 2 -BGQ00055, 9,90NE_BGQ ,1.06,1.06, 2 -BGQ00056, 9,100NE_BGQ ,1.18,1.18, 2 -BGQ00057, 9,110NE_BGQ ,1.30,1.30, 2 -BGQ00058, 9,120NE_BGQ ,1.41,1.41, 2 -BGQ00059, 9,130NE_BGQ ,1.53,1.53, 2 -BGQ00060, 9,140NE_BGQ ,1.65,1.65, 2 -BGQ00061, 9,150NE_BGQ ,1.77,1.77, 2 -BGQ00062, 9,160NE_BGQ ,1.88,1.88, 2 -BGQ00063, 9,170NE_BGQ ,2.00,2.00, 2 -BGQ00064, 9,180NE_BGQ ,2.12,2.12, 2 -BGQ00065, 9,190NE_BGQ ,2.24,2.24, 2 -BGQ00066, 9,200NE_BGQ ,2.35,2.36, 2 -BGQ00067, 9,210NE_BGQ ,2.47,2.47, 2 -BGQ00068, 9,220NE_BGQ ,2.59,2.59, 2 -BGQ00069, 9,230NE_BGQ ,2.71,2.71, 2 -BGQ00070, 9,240NE_BGQ ,2.83,2.83, 2 -BGQ00071, 9,250NE_BGQ ,2.94,2.95, 2 -BGQ00072, 9,20NW_BGQ ,0.24,-0.24, 2 -BGQ00073, 9,30NW_BGQ ,0.35,-0.35, 2 -BGQ00074, 9,40NW_BGQ ,0.47,-0.47, 2 -BGQ00075, 9,50NW_BGQ ,0.59,-0.59, 2 -BGQ00076, 9,60NW_BGQ ,0.71,-0.71, 2 -BGQ00077, 9,70NW_BGQ ,0.82,-0.82, 2 -BGQ00078, 9,80NW_BGQ ,0.94,-0.94, 2 -BGQ00079, 9,90NW_BGQ ,1.06,-1.06, 2 -BGQ00080, 9,100NW_BGQ ,1.18,-1.18, 2 -BGQ00081, 9,110NW_BGQ ,1.30,-1.30, 2 -BGQ00082, 9,120NW_BGQ ,1.41,-1.41, 2 -BGQ00083, 9,130NW_BGQ ,1.53,-1.53, 2 -BGQ00084, 9,140NW_BGQ ,1.65,-1.65, 2 -BGQ00085, 9,150NW_BGQ ,1.77,-1.77, 2 -BGQ00086, 9,160NW_BGQ ,1.88,-1.88, 2 -BGQ00087, 9,170NW_BGQ ,2.00,-2.00, 2 -BGQ00088, 9,180NW_BGQ ,2.12,-2.12, 2 -BGQ00089, 9,190NW_BGQ ,2.24,-2.24, 2 -BGQ00090, 9,200NW_BGQ ,2.35,-2.36, 2 -BGQ00091, 9,210NW_BGQ ,2.47,-2.47, 2 -BGQ00092, 9,220NW_BGQ ,2.59,-2.59, 2 -BGQ00093, 9,230NW_BGQ ,2.71,-2.71, 2 -BGQ00094, 9,240NW_BGQ ,2.83,-2.83, 2 -BGQ00095, 9,250NW_BGQ ,2.94,-2.95, 2 -ORT00000, 9,ORT ,0.00,0.00, 1 -ORT00001, 9,20N_ORT ,0.33,0.00, 2 -ORT00002, 9,30N_ORT ,0.50,0.00, 2 -ORT00003, 9,40N_ORT ,0.67,0.00, 2 -ORT00004, 9,50N_ORT ,0.83,0.00, 2 -ORT00005, 9,60N_ORT ,1.00,0.00, 2 -ORT00006, 9,70N_ORT ,1.17,0.00, 2 -ORT00007, 9,80N_ORT ,1.33,0.00, 2 -ORT00008, 9,90N_ORT ,1.50,0.00, 2 -ORT00009, 9,100N_ORT ,1.67,0.00, 2 -ORT00010, 9,110N_ORT ,1.83,0.00, 2 -ORT00011, 9,120N_ORT ,2.00,0.00, 2 -ORT00012, 9,130N_ORT ,2.17,0.00, 2 -ORT00013, 9,140N_ORT ,2.33,0.00, 2 -ORT00014, 9,150N_ORT ,2.50,0.00, 2 -ORT00015, 9,160N_ORT ,2.66,0.00, 2 -ORT00016, 9,170N_ORT ,2.83,0.00, 2 -ORT00017, 9,180N_ORT ,3.00,0.00, 2 -ORT00018, 9,190N_ORT ,3.16,0.00, 2 -ORT00019, 9,200N_ORT ,3.33,0.00, 2 -ORT00020, 9,210N_ORT ,3.50,0.00, 2 -ORT00021, 9,220N_ORT ,3.66,0.00, 2 -ORT00022, 9,230N_ORT ,3.83,0.00, 2 -ORT00023, 9,240N_ORT ,4.00,0.00, 2 -ORT00024, 9,250N_ORT ,4.16,0.00, 2 -ORT00048, 9,20NE_ORT ,0.24,0.24, 2 -ORT00049, 9,30NE_ORT ,0.35,0.35, 2 -ORT00050, 9,40NE_ORT ,0.47,0.47, 2 -ORT00051, 9,50NE_ORT ,0.59,0.59, 2 -ORT00052, 9,60NE_ORT ,0.71,0.71, 2 -ORT00053, 9,70NE_ORT ,0.82,0.82, 2 -ORT00054, 9,80NE_ORT ,0.94,0.94, 2 -ORT00055, 9,90NE_ORT ,1.06,1.06, 2 -ORT00056, 9,100NE_ORT ,1.18,1.18, 2 -ORT00057, 9,110NE_ORT ,1.30,1.30, 2 -ORT00058, 9,120NE_ORT ,1.41,1.41, 2 -ORT00059, 9,130NE_ORT ,1.53,1.53, 2 -ORT00060, 9,140NE_ORT ,1.65,1.65, 2 -ORT00061, 9,150NE_ORT ,1.77,1.77, 2 -ORT00062, 9,160NE_ORT ,1.88,1.88, 2 -ORT00063, 9,170NE_ORT ,2.00,2.00, 2 -ORT00064, 9,180NE_ORT ,2.12,2.12, 2 -ORT00065, 9,190NE_ORT ,2.24,2.24, 2 -ORT00066, 9,200NE_ORT ,2.35,2.36, 2 -ORT00067, 9,210NE_ORT ,2.47,2.47, 2 -ORT00068, 9,220NE_ORT ,2.59,2.59, 2 -ORT00069, 9,230NE_ORT ,2.71,2.71, 2 -ORT00070, 9,240NE_ORT ,2.83,2.83, 2 -ORT00071, 9,250NE_ORT ,2.94,2.95, 2 -ORT00072, 9,20NW_ORT ,0.24,-0.24, 2 -ORT00073, 9,30NW_ORT ,0.35,-0.35, 2 -ORT00074, 9,40NW_ORT ,0.47,-0.47, 2 -ORT00075, 9,50NW_ORT ,0.59,-0.59, 2 -ORT00076, 9,60NW_ORT ,0.71,-0.71, 2 -ORT00077, 9,70NW_ORT ,0.82,-0.82, 2 -ORT00078, 9,80NW_ORT ,0.94,-0.94, 2 -ORT00079, 9,90NW_ORT ,1.06,-1.06, 2 -ORT00080, 9,100NW_ORT ,1.18,-1.18, 2 -ORT00081, 9,110NW_ORT ,1.30,-1.30, 2 -ORT00082, 9,120NW_ORT ,1.41,-1.41, 2 -ORT00083, 9,130NW_ORT ,1.53,-1.53, 2 -ORT00084, 9,140NW_ORT ,1.65,-1.65, 2 -ORT00085, 9,150NW_ORT ,1.77,-1.77, 2 -ORT00086, 9,160NW_ORT ,1.88,-1.88, 2 -ORT00087, 9,170NW_ORT ,2.00,-2.00, 2 -ORT00088, 9,180NW_ORT ,2.12,-2.12, 2 -ORT00089, 9,190NW_ORT ,2.24,-2.24, 2 -ORT00090, 9,200NW_ORT ,2.35,-2.36, 2 -ORT00091, 9,210NW_ORT ,2.47,-2.47, 2 -ORT00092, 9,220NW_ORT ,2.59,-2.59, 2 -ORT00093, 9,230NW_ORT ,2.71,-2.71, 2 -ORT00094, 9,240NW_ORT ,2.83,-2.83, 2 -ORT00095, 9,250NW_ORT ,2.94,-2.95, 2 -GKN00000, 9,GKN ,0.00,0.00, 1 -GKN00001, 9,20N_GKN ,0.33,0.00, 2 -GKN00002, 9,30N_GKN ,0.50,0.00, 2 -GKN00003, 9,40N_GKN ,0.67,0.00, 2 -GKN00004, 9,50N_GKN ,0.83,0.00, 2 -GKN00005, 9,60N_GKN ,1.00,0.00, 2 -GKN00006, 9,70N_GKN ,1.17,0.00, 2 -GKN00007, 9,80N_GKN ,1.33,0.00, 2 -GKN00008, 9,90N_GKN ,1.50,0.00, 2 -GKN00009, 9,100N_GKN ,1.67,0.00, 2 -GKN00010, 9,110N_GKN ,1.83,0.00, 2 -GKN00011, 9,120N_GKN ,2.00,0.00, 2 -GKN00012, 9,130N_GKN ,2.17,0.00, 2 -GKN00013, 9,140N_GKN ,2.33,0.00, 2 -GKN00014, 9,150N_GKN ,2.50,0.00, 2 -GKN00015, 9,160N_GKN ,2.66,0.00, 2 -GKN00016, 9,170N_GKN ,2.83,0.00, 2 -GKN00017, 9,180N_GKN ,3.00,0.00, 2 -GKN00018, 9,190N_GKN ,3.16,0.00, 2 -GKN00019, 9,200N_GKN ,3.33,0.00, 2 -GKN00020, 9,210N_GKN ,3.50,0.00, 2 -GKN00021, 9,220N_GKN ,3.66,0.00, 2 -GKN00022, 9,230N_GKN ,3.83,0.00, 2 -GKN00023, 9,240N_GKN ,4.00,0.00, 2 -GKN00024, 9,250N_GKN ,4.16,0.00, 2 -GKN00048, 9,20NE_GKN ,0.24,0.24, 2 -GKN00049, 9,30NE_GKN ,0.35,0.35, 2 -GKN00050, 9,40NE_GKN ,0.47,0.47, 2 -GKN00051, 9,50NE_GKN ,0.59,0.59, 2 -GKN00052, 9,60NE_GKN ,0.71,0.71, 2 -GKN00053, 9,70NE_GKN ,0.82,0.82, 2 -GKN00054, 9,80NE_GKN ,0.94,0.94, 2 -GKN00055, 9,90NE_GKN ,1.06,1.06, 2 -GKN00056, 9,100NE_GKN ,1.18,1.18, 2 -GKN00057, 9,110NE_GKN ,1.30,1.30, 2 -GKN00058, 9,120NE_GKN ,1.41,1.41, 2 -GKN00059, 9,130NE_GKN ,1.53,1.53, 2 -GKN00060, 9,140NE_GKN ,1.65,1.65, 2 -GKN00061, 9,150NE_GKN ,1.77,1.77, 2 -GKN00062, 9,160NE_GKN ,1.88,1.88, 2 -GKN00063, 9,170NE_GKN ,2.00,2.00, 2 -GKN00064, 9,180NE_GKN ,2.12,2.12, 2 -GKN00065, 9,190NE_GKN ,2.24,2.24, 2 -GKN00066, 9,200NE_GKN ,2.35,2.36, 2 -GKN00067, 9,210NE_GKN ,2.47,2.47, 2 -GKN00068, 9,220NE_GKN ,2.59,2.59, 2 -GKN00069, 9,230NE_GKN ,2.71,2.71, 2 -GKN00070, 9,240NE_GKN ,2.83,2.83, 2 -GKN00071, 9,250NE_GKN ,2.94,2.95, 2 -GKN00072, 9,20NW_GKN ,0.24,-0.24, 2 -GKN00073, 9,30NW_GKN ,0.35,-0.35, 2 -GKN00074, 9,40NW_GKN ,0.47,-0.47, 2 -GKN00075, 9,50NW_GKN ,0.59,-0.59, 2 -GKN00076, 9,60NW_GKN ,0.71,-0.71, 2 -GKN00077, 9,70NW_GKN ,0.82,-0.82, 2 -GKN00078, 9,80NW_GKN ,0.94,-0.94, 2 -GKN00079, 9,90NW_GKN ,1.06,-1.06, 2 -GKN00080, 9,100NW_GKN ,1.18,-1.18, 2 -GKN00081, 9,110NW_GKN ,1.30,-1.30, 2 -GKN00082, 9,120NW_GKN ,1.41,-1.41, 2 -GKN00083, 9,130NW_GKN ,1.53,-1.53, 2 -GKN00084, 9,140NW_GKN ,1.65,-1.65, 2 -GKN00085, 9,150NW_GKN ,1.77,-1.77, 2 -GKN00086, 9,160NW_GKN ,1.88,-1.88, 2 -GKN00087, 9,170NW_GKN ,2.00,-2.00, 2 -GKN00088, 9,180NW_GKN ,2.12,-2.12, 2 -GKN00089, 9,190NW_GKN ,2.24,-2.24, 2 -GKN00090, 9,200NW_GKN ,2.35,-2.36, 2 -GKN00091, 9,210NW_GKN ,2.47,-2.47, 2 -GKN00092, 9,220NW_GKN ,2.59,-2.59, 2 -GKN00093, 9,230NW_GKN ,2.71,-2.71, 2 -GKN00094, 9,240NW_GKN ,2.83,-2.83, 2 -GKN00095, 9,250NW_GKN ,2.94,-2.95, 2 -TKA00000, 9,TKA ,0.00,0.00, 1 -TKA00001, 9,20N_TKA ,0.33,0.00, 2 -TKA00002, 9,30N_TKA ,0.50,0.00, 2 -TKA00003, 9,40N_TKA ,0.67,0.00, 2 -TKA00004, 9,50N_TKA ,0.83,0.00, 2 -TKA00005, 9,60N_TKA ,1.00,0.00, 2 -TKA00006, 9,70N_TKA ,1.17,0.00, 2 -TKA00007, 9,80N_TKA ,1.33,0.00, 2 -TKA00008, 9,90N_TKA ,1.50,0.00, 2 -TKA00009, 9,100N_TKA ,1.67,0.00, 2 -TKA00010, 9,110N_TKA ,1.83,0.00, 2 -TKA00011, 9,120N_TKA ,2.00,0.00, 2 -TKA00012, 9,130N_TKA ,2.17,0.00, 2 -TKA00013, 9,140N_TKA ,2.33,0.00, 2 -TKA00014, 9,150N_TKA ,2.50,0.00, 2 -TKA00015, 9,160N_TKA ,2.66,0.00, 2 -TKA00016, 9,170N_TKA ,2.83,0.00, 2 -TKA00017, 9,180N_TKA ,3.00,0.00, 2 -TKA00018, 9,190N_TKA ,3.16,0.00, 2 -TKA00019, 9,200N_TKA ,3.33,0.00, 2 -TKA00020, 9,210N_TKA ,3.50,0.00, 2 -TKA00021, 9,220N_TKA ,3.66,0.00, 2 -TKA00022, 9,230N_TKA ,3.83,0.00, 2 -TKA00023, 9,240N_TKA ,4.00,0.00, 2 -TKA00024, 9,250N_TKA ,4.16,0.00, 2 -TKA00048, 9,20NE_TKA ,0.24,0.24, 2 -TKA00049, 9,30NE_TKA ,0.35,0.35, 2 -TKA00050, 9,40NE_TKA ,0.47,0.47, 2 -TKA00051, 9,50NE_TKA ,0.59,0.59, 2 -TKA00052, 9,60NE_TKA ,0.71,0.71, 2 -TKA00053, 9,70NE_TKA ,0.82,0.82, 2 -TKA00054, 9,80NE_TKA ,0.94,0.94, 2 -TKA00055, 9,90NE_TKA ,1.06,1.06, 2 -TKA00056, 9,100NE_TKA ,1.18,1.18, 2 -TKA00057, 9,110NE_TKA ,1.30,1.30, 2 -TKA00058, 9,120NE_TKA ,1.41,1.41, 2 -TKA00059, 9,130NE_TKA ,1.53,1.53, 2 -TKA00060, 9,140NE_TKA ,1.65,1.65, 2 -TKA00061, 9,150NE_TKA ,1.77,1.77, 2 -TKA00062, 9,160NE_TKA ,1.88,1.88, 2 -TKA00063, 9,170NE_TKA ,2.00,2.00, 2 -TKA00064, 9,180NE_TKA ,2.12,2.12, 2 -TKA00065, 9,190NE_TKA ,2.24,2.24, 2 -TKA00066, 9,200NE_TKA ,2.35,2.36, 2 -TKA00067, 9,210NE_TKA ,2.47,2.47, 2 -TKA00068, 9,220NE_TKA ,2.59,2.59, 2 -TKA00069, 9,230NE_TKA ,2.71,2.71, 2 -TKA00070, 9,240NE_TKA ,2.83,2.83, 2 -TKA00071, 9,250NE_TKA ,2.94,2.95, 2 -TKA00072, 9,20NW_TKA ,0.24,-0.24, 2 -TKA00073, 9,30NW_TKA ,0.35,-0.35, 2 -TKA00074, 9,40NW_TKA ,0.47,-0.47, 2 -TKA00075, 9,50NW_TKA ,0.59,-0.59, 2 -TKA00076, 9,60NW_TKA ,0.71,-0.71, 2 -TKA00077, 9,70NW_TKA ,0.82,-0.82, 2 -TKA00078, 9,80NW_TKA ,0.94,-0.94, 2 -TKA00079, 9,90NW_TKA ,1.06,-1.06, 2 -TKA00080, 9,100NW_TKA ,1.18,-1.18, 2 -TKA00081, 9,110NW_TKA ,1.30,-1.30, 2 -TKA00082, 9,120NW_TKA ,1.41,-1.41, 2 -TKA00083, 9,130NW_TKA ,1.53,-1.53, 2 -TKA00084, 9,140NW_TKA ,1.65,-1.65, 2 -TKA00085, 9,150NW_TKA ,1.77,-1.77, 2 -TKA00086, 9,160NW_TKA ,1.88,-1.88, 2 -TKA00087, 9,170NW_TKA ,2.00,-2.00, 2 -TKA00088, 9,180NW_TKA ,2.12,-2.12, 2 -TKA00089, 9,190NW_TKA ,2.24,-2.24, 2 -TKA00090, 9,200NW_TKA ,2.35,-2.36, 2 -TKA00091, 9,210NW_TKA ,2.47,-2.47, 2 -TKA00092, 9,220NW_TKA ,2.59,-2.59, 2 -TKA00093, 9,230NW_TKA ,2.71,-2.71, 2 -TKA00094, 9,240NW_TKA ,2.83,-2.83, 2 -TKA00095, 9,250NW_TKA ,2.94,-2.95, 2 +MMB00000, 9,MMB ,36.34,-99.88, 1 +MMB00001, 9,20N_MMB ,36.67,-99.88, 2 +MMB00002, 9,30N_MMB ,36.84,-99.88, 2 +MMB00003, 9,40N_MMB ,37.01,-99.88, 2 +MMB00009, 9,20NE_MMB ,36.58,-99.59, 2 +MMB00010, 9,30NE_MMB ,36.69,-99.44, 2 +MMB00011, 9,40NE_MMB ,36.81,-99.29, 2 +MMB00012, 9,50NE_MMB ,36.93,-99.14, 2 +MMB00013, 9,60NE_MMB ,37.04,-98.99, 2 +MMB00018, 9,20E_MMB ,36.34,-99.47, 2 +MMB00019, 9,30E_MMB ,36.34,-99.26, 2 +MMB00020, 9,40E_MMB ,36.34,-99.05, 2 +MMB00025, 9,20SE_MMB ,36.10,-99.59, 2 +MMB00026, 9,30SE_MMB ,35.99,-99.44, 2 +MMB00027, 9,40SE_MMB ,35.87,-99.30, 2 +MMB00028, 9,50SE_MMB ,35.75,-99.15, 2 +MMB00029, 9,60SE_MMB ,35.63,-99.01, 2 +MMB00036, 9,20S_MMB ,36.01,-99.88, 2 +MMB00037, 9,30S_MMB ,35.84,-99.88, 2 +MMB00038, 9,40S_MMB ,35.67,-99.88, 2 +MMB00039, 9,50S_MMB ,35.51,-99.88, 2 +MMB00040, 9,60S_MMB ,35.34,-99.88, 2 +MMB00046, 9,20SW_MMB ,36.10,-100.17, 2 +MMB00047, 9,30SW_MMB ,35.99,-100.32, 2 +MMB00048, 9,40SW_MMB ,35.87,-100.46, 2 +MMB00049, 9,50SW_MMB ,35.75,-100.61, 2 +MMB00050, 9,60SW_MMB ,35.63,-100.75, 2 +MMB00055, 9,20W_MMB ,36.34,-100.29, 2 +MMB00056, 9,30W_MMB ,36.34,-100.50, 2 +MMB00058, 9,20NW_MMB ,36.58,-100.17, 2 COORD002, 9,50SE_REO ,42.00,-117.08, 1 COORD003, 9,40SE_LKV ,42.02,-119.87, 1 COORD005, 9,50S_TUS ,31.27,-110.91, 1 -COORD006, 9,220SW_MZB ,30.14,-120.23, 1 -COORD008, 9,140W_TOU ,48.25,-128.13, 1 -COORD012, 9,40E_SNY ,41.10,-102.10, 1 +COORD006, 9,20S_MZB ,32.45,-117.23, 1 +COORD007, 9,220SW_MZB ,30.14,-120.23, 1 +COORD009, 9,140W_TOU ,48.25,-128.13, 1 +COORD012, 9,70SW_RAP ,43.15,-104.14, 1 COORD013, 9,50W_LBL ,37.09,-101.99, 1 COORD015, 9,90S_MRF ,28.80,-103.95, 1 COORD016, 9,90W_BRO ,25.91,-99.05, 1 @@ -12083,7 +10911,7 @@ COORD019, 9,50W_LBL ,37.09,-101.99, 1 COORD020, 9,30SE_ECK ,42.90,-82.23, 1 COORD021, 9,30N_INL ,49.06,-93.40, 1 COORD024, 9,40W_CEW ,30.93,-87.46, 1 -COORD025, 9,50SW_ABY ,31.05,-84.98, 1 +COORD025, 9,50SW_PZD ,31.05,-84.98, 1 COORD026, 9,30SE_ECK ,42.90,-82.23, 1 COORD027, 9,70NW_PQI ,47.59,-69.30, 1 COORD028, 9,60NE_PQI ,47.47,-67.04, 1 diff --git a/edexOsgi/build.edex/opt/db/ddl/ncep/loadVors.sql b/edexOsgi/build.edex/opt/db/ddl/ncep/loadVors.sql index 23a2e65e5f..b15ad39e6a 100644 --- a/edexOsgi/build.edex/opt/db/ddl/ncep/loadVors.sql +++ b/edexOsgi/build.edex/opt/db/ddl/ncep/loadVors.sql @@ -32,7 +32,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 31,HAR,126,HARRISBURG,PA,US,40.23,-77.02 32,DCA,306,WASHINGTON,DC,US,38.86,-77.04 33,RIC,229,RICHMOND,VA,US,37.5,-77.32 -34,CSN,299,CASSANOVA,VA,US,38.64,-77.87 +34,CSN,299,CASANOVA,VA,US,38.64,-77.87 35,ILM,135,WILMINGTON,NC,US,34.35,-77.87 36,SLT,252,SLATE_RUN,PA,US,41.51,-77.97 37,PSB,368,PHILLIPSBURG,PA,US,40.92,-77.99 @@ -50,7 +50,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 49,EWC,326,ELLWOOD_CITY,PA,US,40.83,-80.21 50,ERI,92,ERIE,PA,US,42.02,-80.3 51,MIA,176,MIAMI,FL,US,25.8,-80.3 -52,VRB,276,VERO_BEACH,FL,US,27.68,-80.49 +52,TRV,276,TREASURE,FL,US,27.68,-80.49 53,PSK,369,DUBLIN,VA,US,37.09,-80.71 54,AIR,280,BELLAIRE,OH,US,40.02,-80.82 55,CLT,59,CHARLOTTE,NC,US,35.22,-80.93 @@ -62,7 +62,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 61,ORL,204,ORLANDO,FL,US,28.54,-81.34 62,CRG,298,JACKSONVILLE,FL,US,30.34,-81.51 63,EYW,96,KEY_WEST,FL,US,24.59,-81.8 -64,FMY,104,FT_MEYERS,FL,US,26.58,-81.87 +64,RSW,104,LEE_COUNTY,FL,US,26.53,-81.78 65,SPA,380,SPARTANBURG,SC,US,35.03,-81.93 66,HNN,339,HENDERSON,WV,US,38.75,-82.03 67,HMV,337,HOLSTON_MOUNTAIN,TN,US,36.44,-82.13 @@ -83,7 +83,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 82,ROD,373,ROSEWOOD,OH,US,40.29,-84.04 83,MBS,168,SAGINAW,MI,US,43.53,-84.08 84,LOZ,160,LONDON,KY,US,37.03,-84.12 -85,ABY,4,ALBANY,GA,US,31.65,-84.3 +85,PZD,4,PECAN,GA,US,31.66,-84.29 86,SSM,255,SAULT_STE_MARIE,MI,US,46.41,-84.31 87,TLH,264,TALLAHASSEE,FL,US,30.56,-84.37 88,ATL,19,ATLANTA,GA,US,33.63,-84.44 @@ -93,7 +93,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 92,LGC,350,LA_GRANGE,GA,US,33.05,-85.21 93,GRR,332,GRAND_RAPIDS,MI,US,42.79,-85.5 94,TVC,270,TRAVERSE_CITY,MI,US,44.67,-85.55 -95,LOU,159,LOUISVILLE,KY,US,38.1,-85.58 +95,IIU,159,LOUISVILLE,KY,US,38.1,-85.58 96,MKG,179,MUSKEGON,MI,US,43.17,-86.04 97,PMM,366,PULLMAN,MI,US,42.47,-86.11 98,GIJ,330,NILES,MI,US,41.77,-86.32 @@ -115,7 +115,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 114,SJI,378,SEMMNES,AL,US,30.73,-88.36 115,IGB,133,BIGBEE,MS,US,33.48,-88.52 116,MEI,172,MERIDIAN,MS,US,32.38,-88.8 -117,DEC,70,DECATUR,IL,US,39.74,-88.86 +117,AXC,70,ADDERS,IL,US,39.74,-88.86 118,YQT,393,THUNDER_BAY,ON,CN,48.37,-89.32 119,DYR,83,DYERSBURG,TN,US,36.02,-89.32 120,RHI,228,RHINELANDER,WI,US,45.63,-89.45 @@ -123,8 +123,8 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 122,DLL,310,DELLS,WI,US,43.55,-89.76 123,MEM,173,MEMPHIS,TN,US,35.06,-89.98 124,LEV,349,GRAND_ISLE,LA,US,29.18,-90.1 -125,JAN,142,JACKSON,MS,US,32.51,-90.17 -126,MSY,195,NEW_ORLEANS,LA,US,30,-90.27 +125,MHZ,142,MAGNOLIA,MS,US,32.43,-90.1 +126,HRV,195,HARVEY,LA,US,29.85,-90 127,FAM,97,FARMINGTON,MO,US,37.67,-90.23 128,MCB,169,MC_COMB,MS,US,31.3,-90.26 129,SQS,381,SIDON,MS,US,33.46,-90.28 @@ -156,7 +156,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 155,FSM,108,FT_SMITH,AR,US,35.38,-94.27 156,FOD,105,FT_DODGE,IA,US,42.61,-94.29 157,BUM,45,BUTLER,MO,US,38.27,-94.49 -158,MKC,177,KANSAS_CITY,MO,US,39.28,-94.59 +158,MCI,177,KANSAS_CITY,MO,US,39.29,-94.74 159,LFK,155,LUFKIN,TX,US,31.16,-94.72 160,GGG,115,LONGVIEW,TX,US,32.42,-94.75 161,BJI,33,BEMIDJI,MN,US,47.58,-95.02 @@ -170,7 +170,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 169,PSX,219,PALACIOS,TX,US,28.76,-96.31 170,FSD,107,SIOUX_FALLS,SD,US,43.65,-96.78 171,FAR,98,FARGO,ND,US,46.75,-96.85 -172,DFW,72,DALLAS-FT_WORTH,TX,US,32.87,-97.03 +172,TTT,72,MAVERICK,TX,US,32.87,-97.04 173,ADM,8,ARDMORE,OK,US,34.21,-97.17 174,GFK,114,GRAND_FORKS,ND,US,47.95,-97.19 175,YWG,397,WINNIPEG,MB,CN,49.9,-97.23 @@ -180,7 +180,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 179,ICT,132,WICHITA,KS,US,37.75,-97.58 180,OKC,198,OKLAHOMA_CITY,OK,US,35.36,-97.61 181,SLN,251,SALINA,KS,US,38.93,-97.62 -182,AUS,20,AUSTIN,TX,US,30.3,-97.7 +182,CWK,20,CENTEX,TX,US,30.38,-97.53 183,END,321,VANCE_AFB,OK,US,36.35,-97.92 184,OBH,358,WOLBACH,NE,US,41.38,-98.35 185,ABR,3,ABERDEEN,SD,US,45.42,-98.37 @@ -190,7 +190,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 189,LRD,161,LAREDO,TX,US,27.48,-99.42 190,JCT,144,JUNCTION,TX,US,30.6,-99.82 191,ABI,1,ABILENE,TX,US,32.48,-99.86 -192,GAG,110,GAGE,OK,US,36.34,-99.88 +192,MMB,110,MITBEE,OK,US,36.34,-99.88 193,ANW,282,AINSWORTH,NE,US,42.57,-99.99 194,PIR,214,PIERRE,SD,US,44.4,-100.17 195,HLC,335,HILL_CITY,KS,US,39.26,-100.23 @@ -222,11 +222,11 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 221,ISN,140,WILLISTON,ND,US,48.18,-103.63 222,MRF,190,MARFA,TX,US,30.3,-103.95 223,PUB,220,PUEBLO,CO,US,38.29,-104.43 -224,ROW,233,ROSWELL,NM,US,33.34,-104.62 +224,CME,233,CHISUM,NM,US,33.34,-104.62 225,DEN,71,DENVER,CO,US,39.81,-104.66 226,CYS,301,CHEYENNE,WY,US,41.21,-104.77 227,CIM,297,CIMARRON,NM,US,36.49,-104.87 -228,LVS,163,LAS_VEGAS,NM,US,35.66,-105.14 +228,FTI,163,FT_UNION,NM,US,35.66,-105.14 229,LAR,148,LARAMIE,WY,US,41.33,-105.72 230,ALS,13,ALAMOSA,CO,US,37.35,-105.82 231,MLS,182,MILES_CITY,MT,US,46.38,-105.95 @@ -242,7 +242,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 241,CHE,54,HAYDEN,CO,US,40.52,-107.31 242,DMN,76,DEMING,NM,US,32.28,-107.6 243,YYN,400,SWIFT_CURRENT,SA,CN,50.28,-107.68 -244,FMN,103,FARMINGTON,NM,US,36.75,-108.1 +244,RSK,103,RATTLESNAKE,NM,US,36.75,-108.1 245,BOY,290,BOYSEN_RESV.,WY,US,43.46,-108.3 246,BIL,31,BILLINGS,MT,US,45.81,-108.63 247,JNC,347,GRAND_JUNCTION,CO,US,39.06,-108.79 @@ -312,8 +312,8 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 311,OAK,356,OAKLAND,CA,US,37.73,-122.22 312,RBL,225,RED_BLUFF,CA,US,40.1,-122.24 313,SEA,243,SEATTLE,WA,US,47.44,-122.31 -314,BLI,35,BELLINGHAM,WA,US,48.95,-122.58 -315,PDX,208,PORTLAND,OR,US,45.58,-122.6 +314,HUH,35,WHATCOM,WA,US,48.95,-122.58 +315,BTG,208,BATTLE_GROUND,WA,US,45.75,-122.59 316,PYE,371,POINT_REYES,CA,US,38.08,-122.87 317,OED,362,MEDFORD,OR,US,42.48,-122.91 318,EUG,93,EUGENE,OR,US,44.12,-123.22 @@ -388,3 +388,4 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO 387,LIH,0,LIHUE,HI,US,21.97,-159.34 388,SOK,0,SOUTH_KAUAI,HI,US,21.9,-159.53 \. + diff --git a/edexOsgi/build.edex/substitute.xml b/edexOsgi/build.edex/substitute.xml index 7a463f2634..70e35483f7 100644 --- a/edexOsgi/build.edex/substitute.xml +++ b/edexOsgi/build.edex/substitute.xml @@ -143,7 +143,7 @@ - + @@ -187,4 +187,4 @@ - + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.feature.uframe/feature.xml b/edexOsgi/com.raytheon.edex.feature.uframe/feature.xml index 9fd59ff1b8..5513565f86 100644 --- a/edexOsgi/com.raytheon.edex.feature.uframe/feature.xml +++ b/edexOsgi/com.raytheon.edex.feature.uframe/feature.xml @@ -71,6 +71,13 @@ + + + - + + - --> + - + @@ -117,24 +128,12 @@ id="com.raytheon.uf.edex.registry.client.feature" version="0.0.0"/> - - - - - - diff --git a/edexOsgi/com.raytheon.edex.notifysrv/src/com/raytheon/edex/services/NotifySrv.java b/edexOsgi/com.raytheon.edex.notifysrv/src/com/raytheon/edex/services/NotifySrv.java index 3562398fe2..f88e36ce70 100644 --- a/edexOsgi/com.raytheon.edex.notifysrv/src/com/raytheon/edex/services/NotifySrv.java +++ b/edexOsgi/com.raytheon.edex.notifysrv/src/com/raytheon/edex/services/NotifySrv.java @@ -23,7 +23,6 @@ package com.raytheon.edex.services; import java.util.ArrayList; import java.util.List; -import org.apache.commons.configuration.Configuration; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -34,7 +33,6 @@ import com.raytheon.edex.subscription.SubscriptionManager; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.util.StringUtil; import com.raytheon.uf.edex.core.EdexException; -import com.raytheon.uf.edex.core.props.PropertiesFactory; /** * Processes incoming data events to determine if the data matches an existing @@ -51,7 +49,7 @@ import com.raytheon.uf.edex.core.props.PropertiesFactory; * 06Feb2007 TO5 MW Fegan Removed JMX registration. * 27Apr2007 208 MW Fegan Pass only dataURI in message. * 26Nov2007 443 bphillip Modified to receive lists of PluginDataObjects - * + * Jul 10, 2014 2914 garmendariz Remove EnvProperties * * * @author mfegan @@ -105,21 +103,8 @@ public class NotifySrv { // messages = new ArrayList(); logger.info("-subscription exists for " + StringUtil.printString(dataURI)); - Configuration properties = PropertiesFactory.getInstance() - .getConfiguration( - ISubscriptionManager.CONFIGURATION_NAME); Subscription subscription = subscriptionManager .getSubscription(subscriptionKey); - // logger.info(this.traceID + "-Subscription is " - // + Util.printString(subscription)); - // this.message.setStringProperty("dataURI", dataURI); - // this.message.setStringProperty("subscriptKey", - // subscriptionKey); - // this.message - // .setProperty( - // properties - // .getString(ISubscriptionManager.SUBSCRIPTION_QUERY_VAR), - // dataURI); for (Script script : subscription.getScripts()) { if (script != null) { String key = script.getScriptid(); diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.binlightning/META-INF/MANIFEST.MF index 5e8d93af13..fda613c4dd 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/META-INF/MANIFEST.MF @@ -2,13 +2,28 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Binlightning Plug-in Bundle-SymbolicName: com.raytheon.edex.plugin.binlightning -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.edex.plugin.binlightning.dao Import-Package: com.raytheon.edex.esb, com.raytheon.edex.exception, com.raytheon.edex.plugin, + com.raytheon.uf.common.dataquery.requests, + com.raytheon.uf.common.geospatial, + com.raytheon.uf.common.geospatial.adapter, + com.raytheon.uf.common.localization, + com.raytheon.uf.common.localization.exception, + com.raytheon.uf.common.numeric, + com.raytheon.uf.common.serialization, + com.raytheon.uf.common.serialization.adapters, + com.raytheon.uf.common.status, + com.raytheon.uf.common.wmo, + com.vividsolutions.jts, + com.vividsolutions.jts.geom, + com.vividsolutions.jts.geom.prep, + com.vividsolutions.jts.io, + gov.noaa.nws.ost.edex.plugin.binlightning, org.apache.commons.logging Require-Bundle: com.raytheon.uf.common.dataplugin.binlightning;bundle-version="1.12.1174", com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/res/spring/binlightning_ep-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.binlightning/res/spring/binlightning_ep-ingest.xml index 4c60b738c3..34ca50824d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/res/spring/binlightning_ep-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/res/spring/binlightning_ep-ingest.xml @@ -4,7 +4,9 @@ http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> + class="com.raytheon.edex.plugin.binlightning.BinLightningDecoder" /> + + @@ -12,48 +14,41 @@ - + - + - - + - - - - binlightning - - - - - - + + + + binlightning + + + + + + + ${in.header.header} regex '^SFPA42 KWBC.*' + + + + + + - - - java.lang.Throwable - - - + + + + + java.lang.Throwable + + + - - + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/BinLightningDecoder.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/BinLightningDecoder.java index 7c7b0756bc..8c0a552f34 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/BinLightningDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/BinLightningDecoder.java @@ -19,44 +19,52 @@ **/ package com.raytheon.edex.plugin.binlightning; -import gov.noaa.nws.ost.edex.plugin.binlightning.BinLigntningDecoderUtil; +import gov.noaa.nws.ost.edex.plugin.binlightning.BinLightningAESKey; +import gov.noaa.nws.ost.edex.plugin.binlightning.BinLightningDataDecryptionException; +import gov.noaa.nws.ost.edex.plugin.binlightning.BinLightningDecoderUtil; +import gov.noaa.nws.ost.edex.plugin.binlightning.DecryptedLightningValidator; +import gov.noaa.nws.ost.edex.plugin.binlightning.EncryptedBinLightningCipher; import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; import java.util.Calendar; +import java.util.Collection; +import java.util.Collections; +import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Map.Entry; import java.util.TimeZone; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import javax.crypto.BadPaddingException; +import javax.crypto.IllegalBlockSizeException; import com.raytheon.edex.esb.Headers; import com.raytheon.edex.exception.DecoderException; import com.raytheon.edex.plugin.AbstractDecoder; +import com.raytheon.edex.plugin.binlightning.filter.LightningGeoFilter; +import com.raytheon.edex.plugin.binlightning.impl.BinLightningFactory; +import com.raytheon.edex.plugin.binlightning.impl.IBinDataSource; +import com.raytheon.edex.plugin.binlightning.impl.IBinLightningDecoder; +import com.raytheon.edex.plugin.binlightning.impl.LightningDataSource; import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.binlightning.BinLightningRecord; import com.raytheon.uf.common.dataplugin.binlightning.impl.LightningStrikePoint; import com.raytheon.uf.common.dataplugin.binlightning.impl.LtgStrikeType; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.common.time.TimeRange; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * AWIPS decoder adapter strategy for binary lightning data.
* - * Normal usage for this adapter is
- * - * BinLightningDecoder dec = new BinLightningDecoder(); - * dec.setMessage(data); - * while(dec.hasNext()) - * { - * BinLightningRecord r = dec.decode(); - * // do something with record. - * } - * dec.dispose(); - * * *
  * 
@@ -82,6 +90,15 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader;
  * Jan 24, 2014 DR 16774   Wufeng Zhou Modified for updated Bin-lightning data spec, 
  *                                     and to used WMO header to distinguish bit-shifted 
  *                                     GLD360 and NLDN data.
+ * May 14, 2014 2536       bclement    moved WMO Header to common
+ * Jun 03, 2014 3226       bclement    removed unused WMO patterns, switched to UFStatus
+ *                                      removed TimeTools usage, removed constructDataURI() call
+ *                                      added decodeBinLightningData() and decodeBitShiftedBinLightningData() from BinLightningDecoderUtil
+ * Jun 05, 2014 3226       bclement    LightningStikePoint refactor, added extractPData()
+ * Jun 09, 2014 3226       bclement    moved data array decrypt prep to EncryptedBinLightingCipher
+ * Jun 10, 2014 3226       bclement    added filter support
+ * Jun 19, 2014 3226       bclement    added validator callback
+ * Aug 04, 2014 3488       bclement    added checkBinRange(), rebin() and finalizeRecords()
  * 
  * 
* @@ -89,24 +106,44 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * @version 1.0 */ public class BinLightningDecoder extends AbstractDecoder { - private static final String SFUS_PATTERN = "SFUS41 KWBC \\d{6}[^\\r\\n]*[\\r\\n]+"; - - private static final String SFPA_PATTERN = "SFPA41 KWBC \\d{6}[^\\r\\n]*[\\r\\n]+"; // Allow ingest up to 10 minutes into the future. private static final long TEN_MINUTES = 10 * 60 * 1000L; private final SimpleDateFormat SDF; - private final Log logger = LogFactory.getLog(getClass()); + private static final IUFStatusHandler logger = UFStatus + .getHandler(BinLightningDecoder.class); + + private static final boolean REBIN_INVALID_DATA = Boolean + .getBoolean("rebin.invalid.binlightning"); + + public static final String BINLIGHTNING_KEYSTORE_PREFIX = "binlightning"; /** * Default lightning strike type for FLASH messages. RT_FLASH documents * indicate no default, but D2D code defaults to STRIKE_CG also. */ - public LtgStrikeType DEFAULT_FLASH_TYPE = LtgStrikeType.STRIKE_CG; + public LtgStrikeType DEFAULT_FLASH_TYPE = LtgStrikeType.CLOUD_TO_GROUND; private String traceId = null; + + /** + * callback for validating decryption results + */ + private static DecryptedLightningValidator validator = new DecryptedLightningValidator() { + @Override + public boolean isValid(byte[] decryptedData) { + return BinLightningDecoderUtil.isKeepAliveRecord(decryptedData) == false + && BinLightningDecoderUtil + .isLightningDataRecords(decryptedData) == false; + /* + * use this if keep-alive record could be mixed with lightning + * records + */ + // return BinLigntningDecoderUtil.isValidMixedRecordData(decryptedData) == false + } + }; /** * Construct a BinLightning decoder. Calling hasNext() after construction @@ -127,103 +164,445 @@ public class BinLightningDecoder extends AbstractDecoder { public PluginDataObject[] decode(byte[] data, Headers headers) throws DecoderException { //String traceId = null; - PluginDataObject[] reports = new PluginDataObject[0]; + PluginDataObject[] rval = new PluginDataObject[0]; if (data != null) { traceId = (String) headers.get(DecoderTools.INGEST_FILE_NAME); WMOHeader wmoHdr = new WMOHeader(data); if (wmoHdr.isValid()) { - - Calendar baseTime = TimeTools.findDataTime(wmoHdr.getYYGGgg(), - headers); + String fileName = (String) headers + .get(WMOHeader.INGEST_FILE_NAME); + Calendar baseTime = WMOTimeParser.findDataTime( + wmoHdr.getYYGGgg(), fileName); - // Because binary nature of the encrypted data, the string created with its byte[] array may not have the same length of the byte[] array length - // So when DecoderTools.stripWMOHeader() assumes byte[] length == String length in its logic, it is observed that it may return a shorter byte[] than - // the real data array. (Looks like a bug???) + /* + * Because binary nature of the encrypted data, the string + * created with its byte[] array may not have the same length of + * the byte[] array length So when DecoderTools.stripWMOHeader() + * assumes byte[] length == String length in its logic, it is + * observed that it may return a shorter byte[] than the real + * data array. (Looks like a bug???) + */ // byte[] pdata = DecoderTools.stripWMOHeader(data, SFUS_PATTERN); // if (pdata == null) { // pdata = DecoderTools.stripWMOHeader(data, SFPA_PATTERN); // } - // instead the following is used to strip WMO header a little more safely. - byte[] pdata = null; - if (wmoHdr.isValid() && wmoHdr.getMessageDataStart() > 0) { - pdata = new byte[data.length - wmoHdr.getMessageDataStart()]; - System.arraycopy(data, wmoHdr.getMessageDataStart(), pdata, 0, data.length - wmoHdr.getMessageDataStart()); - } + /* + * instead the following is used to strip WMO header a little + * more safely. + */ + byte[] pdata = extractPData(wmoHdr, data); if ((pdata == null) || (pdata.length == 0)) { return new PluginDataObject[0]; } - // - // Modified by Wufeng Zhou to handle both legacy bit-shifted and new encryted data - // - // Preserved the legacy decoding in BinLigntningDecoderUtil.decodeBitShiftedBinLightningData(), and added logic to process - // both encrypted data and legacy data - // + /* + * Modified by Wufeng Zhou to handle both legacy bit-shifted and + * new encryted data + * + * Preserved the legacy decoding in + * BinLigntningDecoderUtil.decodeBitShiftedBinLightningData(), + * and added logic to process both encrypted data and legacy + * data + */ - List strikes = BinLigntningDecoderUtil.decodeBinLightningData(data, pdata, traceId, wmoHdr, baseTime.getTime()); + Collection strikes = decodeBinLightningData( + data, pdata, traceId, wmoHdr, baseTime.getTime()); if (strikes == null) { // keep-alive record, log and return logger.info(traceId + " - found keep-alive record. ignore for now."); - return reports; + return rval; } - // - // Done MOD by Wufeng Zhou - // + /* + * Done MOD by Wufeng Zhou + */ // post processing data - if not keep-alive record BinLightningRecord report = null; if (strikes.size() > 0) { - report = new BinLightningRecord(strikes.size()); - for (LightningStrikePoint strike : strikes) { - report.addStrike(strike); - logger.debug(traceId + "-" + strike); - } + report = LightningGeoFilter.createFilteredRecord(strikes); } else { return new PluginDataObject[0]; } - Calendar c = TimeTools.copy(baseTime); - if (c == null) { - throw new DecoderException(traceId + " - Error decoding times"); - } - //report.setInsertTime(c); // OB13.4 source code does not have this line anymore, WZ 05/03/2013 - - Calendar cStart = report.getStartTime(); - if (cStart.getTimeInMillis() > (c.getTimeInMillis() + TEN_MINUTES)) { - synchronized (SDF) { - logger.info("Discarding future data for " + traceId - + " at " + SDF.format(cStart.getTime())); - } - } else { - Calendar cStop = report.getStopTime(); - - TimeRange range = new TimeRange(cStart.getTimeInMillis(), - cStop.getTimeInMillis()); - - DataTime dataTime = new DataTime(cStart, range); - report.setDataTime(dataTime); - - if (report != null) { - report.setTraceId(traceId); - //report.setPluginName("binlightning"); // line disappear in OB15.5.3 - try { - report.constructDataURI(); - reports = new PluginDataObject[] { report }; - } catch (PluginException e) { - logger.error("Error constructing datauri", e); - throw new DecoderException("Error constructing datauri", e); - } - } - } + Collection records = checkBinRange(report, + strikes); + rval = finalizeRecords(records, baseTime); } } else { logger.error("No WMOHeader found in data"); } - return reports; + return rval; + } + + /** + * Perform final actions on each record and populate a PDO array with them. + * Any invalid records will be omitted from the return array. + * + * @param records + * @param baseTime + * @return + * @throws DecoderException + */ + private PluginDataObject[] finalizeRecords( + Collection records, Calendar baseTime) + throws DecoderException { + Calendar c = TimeUtil.newCalendar(baseTime); + if (c == null) { + throw new DecoderException(traceId + " - Error decoding times"); + } + ArrayList rval = new ArrayList( + records.size()); + for (BinLightningRecord record : records) { + Calendar cStart = record.getStartTime(); + if (cStart.getTimeInMillis() > (c.getTimeInMillis() + TEN_MINUTES)) { + synchronized (SDF) { + logger.info("Discarding future data for " + traceId + + " at " + SDF.format(cStart.getTime())); + } + } else { + Calendar cStop = record.getStopTime(); + + TimeRange range = new TimeRange(cStart.getTimeInMillis(), + cStop.getTimeInMillis()); + + DataTime dataTime = new DataTime(cStart, range); + record.setDataTime(dataTime); + + if (record != null) { + record.setTraceId(traceId); + rval.add(record); + } + } + } + return rval.toArray(new PluginDataObject[rval.size()]); + } + + /** + * Ensure that the record has a valid bin range. If it does, it will be the + * only record in the return value. Otherwise, {@link #REBIN_INVALID_DATA} + * is used to determine if no records should be returned or the strikes + * should be split into valid bin ranges uses {@link #rebin(Collection)} + * + * @param record + * @param strikes + * @return + */ + private Collection checkBinRange( + BinLightningRecord record, Collection strikes) { + Collection rval = Collections.emptyList(); + Calendar cStart = record.getStartTime(); + Calendar cStop = record.getStopTime(); + long binRange = cStop.getTimeInMillis() - cStart.getTimeInMillis(); + if (binRange > TimeUtil.MILLIS_PER_DAY) { + if (REBIN_INVALID_DATA) { + rval = rebin(strikes); + } else { + String rangeStart; + String rangeEnd; + synchronized (SDF) { + rangeStart = SDF.format(cStart.getTime()); + rangeEnd = SDF.format(cStop.getTime()); + } + logger.error("Discarding data with invalid bin range of " + + rangeStart + " to " + rangeEnd); + } + } else { + rval = Arrays.asList(record); + } + return rval; + } + + /** + * Split the strikes into 1 day bins and create a new record for each bin + * + * @param strikes + * @return + */ + private Collection rebin( + Collection strikes) { + Map> binMap = new HashMap>( + 1); + for (LightningStrikePoint strike : strikes) { + Calendar c = TimeUtil.newCalendar(strike.getTime()); + c.set(Calendar.HOUR_OF_DAY, 0); + c.set(Calendar.MINUTE, 0); + c.set(Calendar.SECOND, 0); + c.set(Calendar.MILLISECOND, 0); + long key = c.getTimeInMillis(); + Collection bin = binMap.get(key); + if (bin == null) { + bin = new ArrayList(strikes.size()); + binMap.put(key, bin); + } + bin.add(strike); + } + Collection rval = new ArrayList( + binMap.size()); + for (Entry> e : binMap + .entrySet()) { + Collection bin = e.getValue(); + BinLightningRecord record = new BinLightningRecord(bin); + rval.add(record); + } + + return rval; + } + + /** + * Remove WMO header from data and return the remaining pdata + * + * @param wmoHdr + * @param data + * @return null if data is invalid + */ + public static byte[] extractPData(WMOHeader wmoHdr, byte[] data) { + byte[] pdata = null; + if (wmoHdr.isValid() && wmoHdr.getMessageDataStart() > 0) { + pdata = new byte[data.length - wmoHdr.getMessageDataStart()]; + System.arraycopy(data, wmoHdr.getMessageDataStart(), pdata, 0, + data.length - wmoHdr.getMessageDataStart()); + } + return pdata; + } + + /** + * Decode bin lightning data, able to handle both legacy bit-shifted and new + * encryted data + * + * The BinLightningDecoder.decode() method will use this method to decode + * data, which will try to decrypt first, and decode the old fashioned way + * when decryption fails + * + * @author Wufeng Zhou + * + * @param data + * - data content from file, including WMO header section + * @param pdata + * - data with WMO header stripped, optional, if null, will strip + * WMO header internally from passed in data parameter + * @param traceId + * - the file name of the data to be deoced + * @param wmoHdr + * - WMOHeader, added 12/24/2013 to help distinguish bit-shifted + * NLDN and GLD360 data (GLD data will have header starts like + * SFPA) + * @param dataDate + * - date of the data, optional, used as a hint to find + * appropriate encryption key faster + * @return null if keep-alive record, otherwise a list (could be empty) of + * LightningStrikePoint + */ + public static List decodeBinLightningData( + byte[] data, byte[] pdata, String traceId, WMOHeader wmoHdr, + Date dataDate) { + if (pdata == null) { // if data without header not passed, we'll strip + // the WMO header here + WMOHeader header = new WMOHeader(data); + if (header.isValid() && header.getMessageDataStart() > 0) { + pdata = new byte[data.length - header.getMessageDataStart()]; + System.arraycopy(data, header.getMessageDataStart(), pdata, 0, + data.length - header.getMessageDataStart()); + } + } + + List strikes = new ArrayList(); + boolean needDecrypt = true; // set as default unless clear evidence says + // otherwise + boolean decodeDone = false; + EncryptedBinLightningCipher cipher = new EncryptedBinLightningCipher(); + + /* + * Using different WMO headers to indicate whether the data is encrypted + * or not would be a nice option. + * However, that idea has been discussed but not adopted. + * If in the future, WMO header can be different for legacy and + * encrypted data, or some other metadata can be used to decide + * whether deceyption is needed, logic can be added here. + * + * Before that happens, we'll use hints and trial & error to decode the + * data + * Hints: Per lightning data format spec, there are 3 bytes in the WMO + * header starting line that indicates the size of the encrypted block + * or the ASCII sequence # for legacy bit-shifted data + * However, the starting line is optional and AWIPS decode may not see + * it at all because TG will strip that starting line away + * We'll try to use this hint first, if is is not found, then trial and + * error way to decrypt and decode + * + * As of 11/05/2013, There is change in data spec. that the 3-bytes will + * not be encoded as encrypted block size anymore (it will always be + * transmission sequence # if present) + * So there should have some minor changes in the logic below for + * decoding the data. + * However, as reading into the + * com.raytheon.edex.plugin.binlightning.impl.BinLightningFactory.getDecoder + * () + * and follow-on code, we see the following data patterns + * for legacy bit-shifted data, which could be used to reduce guess-work + * in data decryption: + * The bit-shifted data will have multiple groups of the following + * patterns: + * 1-byte (unsigned byte): for size count + * 1-byte (unsigned byte): for flash type: + * 0x96 for FLASH_RPT (message size is 6 bytes each) + * 0x97 for RT_FLASH_RPT (message size is 8 bytes each) + * 0xd0 for OTHER_RPT (The D2D decoders declare but do not define this + * message, so unimplemented decoder) + * 0xd1 for COMM_RPT (The D2D decoders declare but do not define this + * message, so unimplemented decoder) + * 4-bytes: date time + * multiple of 6 or 8 bytes (as determined by 2nd byte flash type) with + * count indicated in 1st byte + * + * So this is be used to determine whether the data need to be + * decrypted. + */ + + /* + * // looks like previous assumption on block size bytes are not valid + * any more. 11/20/2013 if (data != null) { byte[] sizeSeqBytes = + * BinLigntningDecoderUtil.findSizeOrSeqBytesFromWMOHeader(data); if + * (sizeSeqBytes != null) { // if this is in the header (which may not), + * use that as a hint to determine which decoding route to go if + * (BinLigntningDecoderUtil + * .isPossibleWMOHeaderSequenceNumber(sizeSeqBytes) && + * BinLigntningDecoderUtil + * .getEncryptedBlockSizeFromWMOHeader(sizeSeqBytes) != pdata.length) { + * // looks like a sequence #, and if treat as size, it does not equal + * to the data block size, so most likely legacy data needDecrypt = + * false; } } } + */ + + if (needDecrypt) { + try { + byte[] encryptedData = EncryptedBinLightningCipher + .prepDataForDecryption(pdata, traceId); + + byte[] decryptedData = cipher.decryptData(encryptedData, + dataDate, BINLIGHTNING_KEYSTORE_PREFIX, validator); + // decrypt ok, then decode, first check if keep-alive record + if (BinLightningDecoderUtil.isKeepAliveRecord(decryptedData)) { + logger.info(traceId + + " - Keep-alive record detected, ignore for now."); + decodeDone = true; + return null; + } + /* + * not keep-alive record, then check data validity and decode + * into an ArrayList of strikes + */ + if (BinLightningDecoderUtil + .isLightningDataRecords(decryptedData)) { + strikes = BinLightningDecoderUtil + .decodeDecryptedBinLightningData(decryptedData); + decodeDone = true; + } else { + logger.info(traceId + + " - Failed data validity check of the decrypted data, will try decode the old-fashioned way."); + decodeDone = false; + } + } catch (IllegalBlockSizeException e) { + logger.info(traceId + + " - " + + e.getMessage() + + ": Decryption failed, will try decode the old-fashioned way."); + decodeDone = false; + } catch (BadPaddingException e) { + logger.info(traceId + + " - " + + e.getMessage() + + ": Decryption failed, will try decode the old-fashioned way."); + decodeDone = false; + } catch (BinLightningDataDecryptionException e) { + logger.info(traceId + + " - " + + e.getMessage() + + ": Decryption failed, will try decode the old-fashioned way."); + decodeDone = false; + } + } + + if (decodeDone == false) { // not decoded through decrypt->decode + // process, try the legacy decoder + logger.info(traceId + " - decoding as bit-shifted data"); + /* + * bit-shifting data format check call here will get us some more + * information on the data, also can compare the strikes with the + * decoder result + */ + int estimatedStrikes = BinLightningDecoderUtil + .getBitShiftedDataStrikeCount(pdata); + strikes = decodeBitShiftedBinLightningData(pdata, wmoHdr); + if (estimatedStrikes != strikes.size()) { + logger.warn(traceId + + ": bit-shifted decoder found " + + strikes + + " strikes, which is different from estimate from data pattern examination: " + + estimatedStrikes); + } + } + + return strikes; + } + + /** + * extracted from the original {@link #decode(byte[], Headers)} method then + * modified by Wufeng Zhou + * + * @param pdata + * @param wmoHdr + * - WMOHeader, added 12/24/2013 to help distinguish bit-shifted + * NLDN and GLD360 data (GLD data will have header starts like + * SFPA) + * @return + */ + public static List decodeBitShiftedBinLightningData( + byte[] pdata, WMOHeader wmoHdr) { + List strikes = new ArrayList(); + + IBinDataSource msgData = new LightningDataSource(pdata); + + boolean continueDecode = true; + while (continueDecode) { + IBinLightningDecoder decoder = BinLightningFactory + .getDecoder(msgData); + + switch (decoder.getError()) { + case IBinLightningDecoder.NO_ERROR: { + for (LightningStrikePoint strike : decoder) { + /* + * use WMO Header to distinguish NLDN or GLD360 data because + * no bit-shifted data spec available for GLD360. + * 12/24/2013, WZ + * The WMO header start string is defined in + * BinLightningAESKey.properties file (normally, GLD360 data + * will have WMO header + * starts with SFPA41, or SFPA99 for test data.) + */ + String gld360WMOHeaderString = BinLightningAESKey + .getProps().getProperty( + "binlightning.gld360WMOHeaderStartString", + ""); + if (gld360WMOHeaderString.trim().equals("") == false + && wmoHdr.getWmoHeader().startsWith( + gld360WMOHeaderString)) { + // GLD360 data based on the setup + strike.setLightSource("GLD"); + } + strikes.add(strike); + } + break; + } + default: { + continueDecode = false; + } + } + } + return strikes; } /** diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/dao/BinLightningDao.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/dao/BinLightningDao.java index 70a9049e4c..e335229465 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/dao/BinLightningDao.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/dao/BinLightningDao.java @@ -20,11 +20,17 @@ package com.raytheon.edex.plugin.binlightning.dao; -import com.raytheon.uf.common.dataplugin.binlightning.BinLightningRecord; +import java.util.Map; +import java.util.Map.Entry; + import com.raytheon.uf.common.dataplugin.PluginException; +import com.raytheon.uf.common.dataplugin.annotations.DataURI; +import com.raytheon.uf.common.dataplugin.binlightning.BinLightningRecord; +import com.raytheon.uf.common.dataplugin.binlightning.LightningConstants; import com.raytheon.uf.common.dataplugin.persist.IPersistable; import com.raytheon.uf.common.datastorage.DataStoreFactory; import com.raytheon.uf.common.datastorage.IDataStore; +import com.raytheon.uf.common.datastorage.StorageException; import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.edex.database.plugin.PluginDao; @@ -36,6 +42,7 @@ import com.raytheon.uf.edex.database.plugin.PluginDao; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 1/08/09 1674 bphillip Initial creation + * Jun 05, 2014 3226 bclement record now contains maps for data arrays * * * @author bphillip @@ -61,15 +68,38 @@ public class BinLightningDao extends PluginDao { protected IDataStore populateDataStore(IDataStore dataStore, IPersistable obj) throws Exception { BinLightningRecord binLightningRec = (BinLightningRecord) obj; - - for (int i = 0; i < binLightningRec.getDataArrays().length; i++) { - IDataRecord record = DataStoreFactory.createStorageRecord( - binLightningRec.getDataNames()[i], binLightningRec - .getDataURI(), binLightningRec.getDataArrays()[i]); - record.setCorrelationObject(binLightningRec); - dataStore.addDataRecord(record); - } - + Map strikeDataArrays = binLightningRec + .getStrikeDataArrays(); + populateFromMap(dataStore, obj, binLightningRec.getDataURI(), + strikeDataArrays); + Map pulseDataArrays = binLightningRec + .getPulseDataArrays(); + String pulseGroup = binLightningRec.getDataURI() + DataURI.SEPARATOR + + LightningConstants.PULSE_HDF5_GROUP_SUFFIX; + populateFromMap(dataStore, obj, pulseGroup, pulseDataArrays); return dataStore; } + + /** + * Adds each primitive data array object in map to the datastore using the + * provided group and the key of the map entry as the name + * + * @param dataStore + * @param obj + * @param group + * @param data + * @throws StorageException + */ + private void populateFromMap(IDataStore dataStore, IPersistable obj, + String group, Map data) + throws StorageException { + for (Entry e : data.entrySet()) { + String name = e.getKey(); + Object dataArray = e.getValue(); + IDataRecord record = DataStoreFactory.createStorageRecord(name, + group, dataArray); + record.setCorrelationObject(obj); + dataStore.addDataRecord(record); + } + } } diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BaseLightningDecoder.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BaseLightningDecoder.java index 453654813c..592bb990ff 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BaseLightningDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BaseLightningDecoder.java @@ -25,30 +25,30 @@ import java.util.Iterator; import java.util.List; import com.raytheon.uf.common.dataplugin.binlightning.impl.LightningStrikePoint; -import com.raytheon.uf.edex.decodertools.core.BasePoint; -import com.raytheon.uf.edex.decodertools.core.IBinDataSource; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; /** - * Provide the base class for the binary lightning decoders. This class abstracts - * data and methods common to the current lightning decoder types. + * Provide the base class for the binary lightning decoders. This class + * abstracts data and methods common to the current lightning decoder types. * *
- *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 20070810            379 jkorman     Initial Coding from prototype.
  * 20070912            379 jkorman     Code review cleanup.
+ * May 14, 2014 2536       bclement    removed TimeTools
+ * Jun 05, 2014 3226       bclement    parseDate() now returns calendar
  * 
- * + * * @author jkorman * @version 1.0 */ abstract class BaseLightningDecoder implements IBinLightningDecoder { - private final Calendar BASE_TIME = TimeTools.getBaseCalendar(1980,2,29); + private final Calendar BASE_TIME = TimeUtil.newGmtCalendar(1980, 2, 29); private static final int DAYS_MASK = 0xFFFE; @@ -86,38 +86,33 @@ abstract class BaseLightningDecoder implements IBinLightningDecoder /** * Parse the date field from a given data source. It is assumed that the * data source is pointing to the current date/time data. - * @return A BasePoint object with the time fields set to the observation - * time. + * + * @return A Calendar object with the time fields set to the observation + * time. */ - BasePoint parseDate(IBinDataSource msgData) + protected Calendar parseDate(IBinDataSource msgData) { - BasePoint point = new BasePoint(); - //********* Don't reorder these reads!!! int b1 = msgData.getU8(); int b2 = msgData.getU8(); int word1 = msgData.getU16(); //********* Don't reorder these reads!!! - Calendar obsTime = TimeTools.copy(BASE_TIME); + Calendar obsTime = (Calendar) BASE_TIME.clone(); // number of days since BASE_TIME int days = ((word1 & DAYS_MASK) >> DAYS_SHFT); - TimeTools.rollByDays(obsTime,days); - - point.setYear(obsTime.get(Calendar.YEAR)); - //Increment month, Calendar returns 0..11 - point.setMonth(obsTime.get(Calendar.MONTH) + 1); - point.setDay(obsTime.get(Calendar.DAY_OF_MONTH)); + obsTime.add(Calendar.DAY_OF_MONTH, days); int hours = (word1 & HOURS_HI_BIT_MASK) << HOURS_HI_BIT_SHFT; hours += (b2 & HOURS_LO_NYB_MASK) >>> HOURS_LO_NYB_SHFT; - point.setHour(hours); + obsTime.set(Calendar.HOUR, hours); int minutes = (b2 & MIN_P1_MASK) << MIN_P1_SHFT; minutes += (b1 & MIN_P2_MASK) >>> MIN_P2_SHFT; - point.setMinute(minutes); + obsTime.set(Calendar.MINUTE, minutes); - point.setSecond((b1 & SECONDS_MASK)); - return point; + obsTime.set(Calendar.SECOND, (b1 & SECONDS_MASK)); + obsTime.set(Calendar.MILLISECOND, 0); + return obsTime; } /** diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BinLightningFactory.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BinLightningFactory.java index 3d88ff75f1..e3f4e6046b 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BinLightningFactory.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/BinLightningFactory.java @@ -19,7 +19,6 @@ **/ package com.raytheon.edex.plugin.binlightning.impl; -import com.raytheon.uf.edex.decodertools.core.IBinDataSource; import static com.raytheon.edex.plugin.binlightning.impl.IBinLightningDecoder.*; diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/FlashLightningDecoder.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/FlashLightningDecoder.java index 9054a93f02..10e407327c 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/FlashLightningDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/FlashLightningDecoder.java @@ -19,10 +19,11 @@ **/ package com.raytheon.edex.plugin.binlightning.impl; +import java.util.Calendar; + import com.raytheon.uf.common.dataplugin.binlightning.impl.LightningStrikePoint; import com.raytheon.uf.common.dataplugin.binlightning.impl.LtgMsgType; -import com.raytheon.uf.edex.decodertools.core.BasePoint; -import com.raytheon.uf.edex.decodertools.core.IBinDataSource; +import com.raytheon.uf.common.time.util.TimeUtil; /** * Decode one or more Flash lightning observations. Decode algorithm is taken @@ -30,13 +31,14 @@ import com.raytheon.uf.edex.decodertools.core.IBinDataSource; * *
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 20070810            379 jkorman     Initial Coding from prototype.
+ * Jun 05, 2014 3226       bclement    LightningStikePoint refactor
  * 
  * 
- * + * * @author jkorman * @version 1.0 */ @@ -62,7 +64,7 @@ public class FlashLightningDecoder extends BaseLightningDecoder { if(msgData.available(TIME_SIZE)) { - BasePoint base = parseDate(msgData); + Calendar baseTime = parseDate(msgData); if(msgData.available(FLASH_MSG_SIZE * count)) { @@ -70,17 +72,23 @@ public class FlashLightningDecoder extends BaseLightningDecoder { double lon = getFlashLon(msgData); double lat = getFlashLat(msgData); - // Create the strike record from the report info and base time information. - LightningStrikePoint strikeData = new LightningStrikePoint(base,lat,lon,LtgMsgType.STRIKE_MSG_FL); - - strikeData.setStrikeStrength(msgData.getS8() * 2.0); + + double strikeStrength = msgData.getS8() * 2.0; // strike count and 1/10s seconds int u8 = msgData.getU8(); - strikeData.setStrikeCount(u8 & 0x0F); - strikeData.setMillis(((u8 & 0xF0) >> 4) * 100); + int flashCount = u8 & 0x0F; + + Calendar obsTime = TimeUtil.newCalendar(baseTime); + obsTime.set(Calendar.MILLISECOND, ((u8 & 0xF0) >> 4) * 100); + // Create the strike record from the report info and base + // time information. + LightningStrikePoint strikeData = new LightningStrikePoint( + lat, lon, baseTime, LtgMsgType.STRIKE_MSG_FL); strikeData.setType(DEFAULT_FLASH_TYPE); + strikeData.setStrikeStrength(strikeStrength); + strikeData.setPulseCount(flashCount); addStrike(strikeData); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/IBinLightningDecoder.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/IBinLightningDecoder.java index c4cc6c55ab..09eee9e737 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/IBinLightningDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/IBinLightningDecoder.java @@ -26,22 +26,24 @@ import com.raytheon.uf.common.dataplugin.binlightning.impl.LtgStrikeType; * Declare the interface for binary lightning decoding. The decoders are * expected to implement an Iterable interface. Data decoding will take place * during construction of the element. + * *
  * the recommended constructor for this interface is
  * 
  * @param data An IBinDataSource data source containing the data to be decoded.
  * @param count The number of records that this decoder should see.
  * public X (IBinDataSource data, int count)
- *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 20070810            379 jkorman     Initial Coding from prototype.
  * 20070912            379 jkorman     Code review cleanup.
+ * Jun 05, 2014 3226       bclement    LightningStikePoint refactor
  * 
  * 
- * + * * @author jkorman * @version 1.0 */ @@ -59,7 +61,7 @@ public interface IBinLightningDecoder extends Iterable public static final int OTHER_RPT = 0xD0; public static final int COMM_RPT = 0xD1; - public static final LtgStrikeType DEFAULT_FLASH_TYPE = LtgStrikeType.STRIKE_CG; + public static final LtgStrikeType DEFAULT_FLASH_TYPE = LtgStrikeType.CLOUD_TO_GROUND; /* */ diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/LightningDataSource.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/LightningDataSource.java index 8c68497755..1daeea465e 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/LightningDataSource.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/LightningDataSource.java @@ -21,7 +21,6 @@ package com.raytheon.edex.plugin.binlightning.impl; import java.io.ByteArrayInputStream; -import com.raytheon.uf.edex.decodertools.core.IBinDataSource; /** * Wraps a ByteArrayInputStream with access methods specific to binary diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/RTLightningDecoder.java b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/RTLightningDecoder.java index cba14edee1..662e480cfa 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/RTLightningDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/src/com/raytheon/edex/plugin/binlightning/impl/RTLightningDecoder.java @@ -19,10 +19,10 @@ **/ package com.raytheon.edex.plugin.binlightning.impl; +import java.util.Calendar; + import com.raytheon.uf.common.dataplugin.binlightning.impl.LightningStrikePoint; import com.raytheon.uf.common.dataplugin.binlightning.impl.LtgMsgType; -import com.raytheon.uf.edex.decodertools.core.BasePoint; -import com.raytheon.uf.edex.decodertools.core.IBinDataSource; /** * Decode one or more Real Time Flash lightning observations. Decode algorithm @@ -37,6 +37,7 @@ import com.raytheon.uf.edex.decodertools.core.IBinDataSource; * 20070810 379 jkorman Initial Coding from prototype. * 20070821 379 jkorman Added default strike type. * 20080823 379 jkorman getRTLat was using 24 bits instead of 23. + * Jun 05, 2014 3226 bclement LightningStikePoint refactor * * * @author jkorman @@ -66,7 +67,7 @@ public class RTLightningDecoder extends BaseLightningDecoder { */ private void doDecode(IBinDataSource msgData, int count) { if (msgData.available(TIME_SIZE + (RT_MSG_SIZE * count))) { - BasePoint base = parseDate(msgData); + Calendar baseTime = parseDate(msgData); // for now just consume some data for (int i = 0; i < count; i++) { long part = msgData.getU32(); @@ -79,11 +80,11 @@ public class RTLightningDecoder extends BaseLightningDecoder { double lat = getRTLat(part); int strikeCount = getMult(part); - LightningStrikePoint strikeData = new LightningStrikePoint( - base, lat, lon, LtgMsgType.STRIKE_MSG_RT); + LightningStrikePoint strikeData = new LightningStrikePoint(lat, + lon, baseTime, LtgMsgType.STRIKE_MSG_RT); strikeData.setStrikeStrength(strength); - strikeData.setStrikeCount(strikeCount); + strikeData.setPulseCount(strikeCount); // ***** // NCDC documents indicate that RT data can report both CC/CG // but haven't seen any data nor is it in the D2D decoders. Set diff --git a/edexOsgi/com.raytheon.edex.plugin.binlightning/utility/edex_static/base/distribution/binlightning.xml b/edexOsgi/com.raytheon.edex.plugin.binlightning/utility/edex_static/base/distribution/binlightning.xml index fc4c4a7356..913211e05d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.binlightning/utility/edex_static/base/distribution/binlightning.xml +++ b/edexOsgi/com.raytheon.edex.plugin.binlightning/utility/edex_static/base/distribution/binlightning.xml @@ -20,5 +20,5 @@ --> ^SFUS41 KWBC.* - ^SFPA41 KWBC.* + ^SFPA4[12] KWBC.* diff --git a/edexOsgi/com.raytheon.edex.plugin.bufrua/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.bufrua/META-INF/MANIFEST.MF index bc344241c1..4e60af5348 100644 --- a/edexOsgi/com.raytheon.edex.plugin.bufrua/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.bufrua/META-INF/MANIFEST.MF @@ -18,7 +18,9 @@ Require-Bundle: com.raytheon.uf.common.dataplugin.bufrua;bundle-version="1.12.11 com.raytheon.uf.edex.pointdata;bundle-version="1.12.1174", com.raytheon.uf.edex.menus;bundle-version="1.0.0", com.raytheon.uf.edex.bufrtools;bundle-version="1.12.1174", - com.raytheon.uf.edex.decodertools;bundle-version="1.12.1174" + com.raytheon.uf.edex.decodertools;bundle-version="1.12.1174", + com.raytheon.uf.edex.ndm;bundle-version="1.0.0" Import-Package: com.raytheon.edex.esb, com.raytheon.edex.plugin, + com.raytheon.uf.common.wmo, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.edex.plugin.bufrua/res/spring/bufrua-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.bufrua/res/spring/bufrua-ingest.xml index f18ec15b37..d3e6ca6374 100644 --- a/edexOsgi/com.raytheon.edex.plugin.bufrua/res/spring/bufrua-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.bufrua/res/spring/bufrua-ingest.xml @@ -14,15 +14,24 @@
- - - + + + + + + + + + + + + + + + errorHandlerRef="errorHandler"> - - - - - - - - + - - + + + + @@ -420,8 +417,9 @@ - + + @@ -490,11 +488,16 @@ + + + + + + - + @@ -514,7 +517,7 @@ - + diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/res/spring/gfe-spring.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/res/spring/gfe-spring.xml index 64d9cced5c..bb4032ca26 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/res/spring/gfe-spring.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/res/spring/gfe-spring.xml @@ -2,39 +2,44 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> + + + + - - - + + + - - - + + - - + + + - - - - - - - + + + + + + - + java.lang.Throwable - + java.lang.Throwable + + + + + + + errorHandlerRef="errorHandler"> @@ -132,9 +143,22 @@ + + + + + + + java.lang.Throwable + + + + + - + diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/GFESiteActivation.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/GFESiteActivation.java index 0f6e90ccdc..414cdd4a57 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/GFESiteActivation.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/GFESiteActivation.java @@ -19,6 +19,8 @@ **/ package com.raytheon.edex.plugin.gfe.config; +import java.io.PrintWriter; +import java.io.StringWriter; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.HashMap; @@ -59,20 +61,25 @@ import com.raytheon.uf.edex.site.notify.SendSiteActivationNotifications; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jul 9, 2009 njensen Initial creation - * Oct 26, 2010 #6811 jclark changed listener type - * Apr 06, 2012 #457 dgilling Clear site's ISCSendRecords on - * site deactivation. - * Jul 12, 2012 15162 ryu added check for invalid db at activation - * Dec 11, 2012 14360 ryu log a clean message in case of - * missing configuration (no stack trace). - * Feb 15, 2013 1638 mschenke Moved sending of site notification messages to edex plugin - * Feb 28, 2013 #1447 dgilling Enable active table fetching on site - * activation. - * Mar 20, 2013 #1774 randerso Changed to use GFED2DDao - * May 02, 2013 #1969 randerso Moved updateDbs method into IFPGridDatabase - * Jun 13, 2013 #2044 randerso Refactored to use IFPServer - * Oct 16, 2013 #2475 dgilling Better error handling for IRT activation. + * Jul 9, 2009 njensen Initial creation + * Oct 26, 2010 #6811 jclark changed listener type + * Apr 06, 2012 #457 dgilling Clear site's ISCSendRecords on + * site deactivation. + * Jul 12, 2012 15162 ryu added check for invalid db at activation + * Dec 11, 2012 14360 ryu log a clean message in case of + * missing configuration (no stack trace). + * Feb 15, 2013 1638 mschenke Moved sending of site notification messages to edex plugin + * Feb 28, 2013 #1447 dgilling Enable active table fetching on site + * activation. + * Mar 20, 2013 #1774 randerso Changed to use GFED2DDao + * May 02, 2013 #1969 randerso Moved updateDbs method into IFPGridDatabase + * Jun 13, 2013 #2044 randerso Refactored to use IFPServer + * Oct 16, 2013 #2475 dgilling Better error handling for IRT activation. + * Mar 21, 2014 #2726 rjpeter Updated wait for running loop. + * May 15, 2014 #3157 dgilling Mark getActiveSites() as deprecated. + * Jul 09, 2014 #3146 randerso Eliminated redundant evaluation of serverConfig + * Sent activation failure message to alertViz + * Oct 07, 2014 #3684 randerso Restructured IFPServer start up * * * @author njensen @@ -87,14 +94,8 @@ public class GFESiteActivation implements ISiteActivationListener { private static final String INIT_TASK_DETAILS = "Initialization:"; - private static final String SMART_INIT_TASK_DETAILS = "SmartInit:"; - private static final int LOCK_TASK_TIMEOUT = 180000; - // don't rerun the smart init fire if they have been run in the last 30 - // minutes - private static final int SMART_INIT_TIMEOUT = 1800000; - private static GFESiteActivation instance = new GFESiteActivation(); private boolean intialized = false; @@ -236,13 +237,6 @@ public class GFESiteActivation implements ISiteActivationListener { } try { - - IFPServerConfig config = IFPServerConfigManager - .initializeConfig(siteID); - if (config == null) { - throw new GfeConfigurationException( - "Error validating configuration for " + siteID); - } internalActivateSite(siteID); } catch (GfeMissingConfigurationException e) { sendActivationFailedNotification(siteID); @@ -252,7 +246,15 @@ public class GFESiteActivation implements ISiteActivationListener { throw e; } catch (Exception e) { sendActivationFailedNotification(siteID); - statusHandler.error(siteID + " Error activating site " + siteID, e); + String message = "Error activating IFPServer for site " + siteID + + ". GFE will be unavailable for this site!"; + statusHandler.error(message, e); + + StringWriter stackTrace = new StringWriter(); + e.printStackTrace(new PrintWriter(stackTrace)); + EDEXUtil.sendMessageAlertViz(Priority.ERROR, + "com.raytheon.edex.plugin.gfe", "GFE", "GFE", message, + stackTrace.toString(), null); throw e; } sendActivationCompleteNotification(siteID); @@ -297,7 +299,7 @@ public class GFESiteActivation implements ISiteActivationListener { statusHandler.info("IFPServerConfigManager initializing..."); config = IFPServerConfigManager.initializeSite(siteID); statusHandler.info("Activating IFPServer..."); - IFPServer ifpServer = IFPServer.activateServer(siteID, config); + IFPServer.activateServer(siteID, config); } finally { statusHandler .handle(Priority.INFO, @@ -345,16 +347,7 @@ public class GFESiteActivation implements ISiteActivationListener { @Override public void run() { - long startTime = System.currentTimeMillis(); - // wait for system startup or at least 3 minutes - while (!EDEXUtil.isRunning() - || (System.currentTimeMillis() > (startTime + 180000))) { - try { - Thread.sleep(15000); - } catch (InterruptedException e) { - - } - } + EDEXUtil.waitForRunning(); Map fetchATConfig = new HashMap(); fetchATConfig.put("siteId", configRef.getSiteID().get(0)); @@ -444,8 +437,13 @@ public class GFESiteActivation implements ISiteActivationListener { * Returns the currently active GFE sites the server is running * * @return the active sites + * + * @deprecated It is preferred that you use the method + * {@link IFPServer#getActiveSites()} to retrieve the list of + * GFE active sites. */ @Override + @Deprecated public Set getActiveSites() { return IFPServerConfigManager.getActiveSites(); } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/IFPServerConfigManager.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/IFPServerConfigManager.java index 7580b04d3b..ed34c5b43f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/IFPServerConfigManager.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/config/IFPServerConfigManager.java @@ -25,8 +25,6 @@ import java.util.HashSet; import java.util.Map; import java.util.Set; -import jep.JepException; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -46,17 +44,20 @@ import com.raytheon.uf.common.util.FileUtil; /** * Manages the serverConfigs of active sites - * + * *
- *
+ * 
  * SOFTWARE HISTORY
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Jul 9, 2009            njensen     Initial creation
  * Dec 11, 2012 14360     ryu         Throw specific exception for missing configuration.
- *
+ * Feb 20, 2014 #2824     randerso    Fixed import of localVTECPartners to use siteID
+ *                                    Added common python path for LogStream
+ * Jul 09, 2014 #3146     randerso    Improved exception handling
+ * 
  * 
- * + * * @author njensen * @version 1.0 */ @@ -74,7 +75,7 @@ public class IFPServerConfigManager { /** * Returns the sites that have active configurations - * + * * @return */ protected static Set getActiveSites() { @@ -83,7 +84,7 @@ public class IFPServerConfigManager { /** * Gets the server configuration for a particular site - * + * * @param siteID * the site * @return the site's configuration @@ -102,7 +103,7 @@ public class IFPServerConfigManager { /** * Initializes a site's serverConfig by reading in the site's localConfig - * + * * @param siteID * the site * @return the site's configuration @@ -163,17 +164,20 @@ public class IFPServerConfigManager { } siteDir = siteDirFile.getPath(); - String vtecPath = GfePyIncludeUtil.getVtecIncludePath(); + String commonPythonPath = GfePyIncludeUtil.getCommonPythonIncludePath(); + + String vtecPath = GfePyIncludeUtil.getVtecIncludePath(siteID); PythonScript py = null; try { py = new PythonScript(FileUtil.join(baseDir, "wrapper.py"), - PyUtil.buildJepIncludePath(siteDir, baseDir, vtecPath), + PyUtil.buildJepIncludePath(siteDir, baseDir, + commonPythonPath, vtecPath), IFPServerConfig.class.getClassLoader()); SimpleServerConfig simpleConfig = (SimpleServerConfig) py.execute( "getSimpleConfig", null); siteConfig = new IFPServerConfig(simpleConfig); - } catch (JepException e) { + } catch (Throwable e) { throw new GfeConfigurationException( "Exception occurred while processing serverConfig for site " + siteID, e); @@ -188,7 +192,7 @@ public class IFPServerConfigManager { /** * Removes a site's configuration from the set of active configurations - * + * * @param siteID */ protected static void removeSite(String siteID) { diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java index c2f3cf286f..43f7c6b465 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java @@ -59,6 +59,7 @@ import com.raytheon.uf.edex.plugin.grid.dao.GridDao; * where query for T (T%hr) returned TP6hr * Jun 13, 2013 2044 randerso Cleaned up JavaDoc * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -130,7 +131,7 @@ public class GFED2DDao extends GridDao { Session s = null; try { - s = getHibernateTemplate().getSessionFactory().openSession(); + s = getSession(); // TODO: clean up so we only make one db query SortedMap rawTimes = queryByParmId(d2dModelName, refTime, d2dParmName, d2dLevel, s); @@ -150,7 +151,7 @@ public class GFED2DDao extends GridDao { try { s.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -278,7 +279,7 @@ public class GFED2DDao extends GridDao { List timeList = new ArrayList(); Session s = null; try { - s = getHibernateTemplate().getSessionFactory().openSession(); + s = getSession(); SortedMap results = queryByParmId(d2dModelName, refTime, d2dParmName, d2dLevel, s); @@ -290,7 +291,7 @@ public class GFED2DDao extends GridDao { try { s.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java index 265ba7a8f0..e1ce7c2b28 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java @@ -53,6 +53,7 @@ import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridLocation; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmStorageInfo; +import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; import com.raytheon.uf.common.dataplugin.gfe.server.notify.GridUpdateNotification; import com.raytheon.uf.common.dataplugin.gfe.server.notify.LockNotification; import com.raytheon.uf.common.dataplugin.gfe.util.GfeUtil; @@ -103,6 +104,9 @@ import com.raytheon.uf.edex.database.query.DatabaseQuery; * 08/05/13 #1571 randerso Added support for storing GridLocation and ParmStorageInfo in database * 09/30/2013 #2147 rferrel Changes to archive hdf5 files. * 10/15/2013 #2446 randerso Added ORDER BY clause to getOverlappingTimes + * 06/12/14 #3244 randerso Improved error handling + * 09/21/2014 #3648 randerso Changed to do version purging when new databases are added + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -150,7 +154,7 @@ public class GFEDao extends DefaultPluginDao { Session sess = null; try { - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); sess.setDefaultReadOnly(true); int tries = 0; Transaction tx = null; @@ -199,7 +203,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -239,7 +243,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); sess.setDefaultReadOnly(true); tx = sess.beginTransaction(); @@ -277,7 +281,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -301,8 +305,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory() - .openStatelessSession(); + sess = getSessionFactory().openStatelessSession(); tx = sess.beginTransaction(); for (ParmStorageInfo psi : psiList) { @@ -328,7 +331,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -348,8 +351,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory() - .openStatelessSession(); + sess = getSessionFactory().openStatelessSession(); tx = sess.beginTransaction(); sess.update(psi); tx.commit(); @@ -371,7 +373,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -392,7 +394,7 @@ public class GFEDao extends DefaultPluginDao { Session sess = null; try { - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); sess.setDefaultReadOnly(true); // reattach so dbId doesn't requery @@ -447,7 +449,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -482,8 +484,14 @@ public class GFEDao extends DefaultPluginDao { try { GridParmManager gridParmMgr = ifpServer.getGridParmMgr(); - gridParmMgr.versionPurge(); - gridParmMgr.gridsPurge(gridNotifcations, lockNotifications); + + PurgeLogger.logInfo("Purging expired grids...", "gfe"); + ServerResponse sr = gridParmMgr.gridsPurge(gridNotifcations, + lockNotifications); + if (!sr.isOkay()) { + PurgeLogger.logError(sr.message(), "gfe"); + } + PurgeLogger.logInfo( "Purging Expired pending isc send requests...", "gfe"); int requestsPurged = new IscSendRecordDao() @@ -506,18 +514,18 @@ public class GFEDao extends DefaultPluginDao { try { removed = txTemplate .execute(new TransactionCallback>() { + @SuppressWarnings("unchecked") @Override public List doInTransaction( TransactionStatus status) { Date purgeDate = new Date( System.currentTimeMillis() - (REMOVED_DB_PURGE_TIME * TimeUtil.MILLIS_PER_DAY)); - @SuppressWarnings("unchecked") - List removed = getHibernateTemplate() - .find("FROM DatabaseID where removedDate < ?", - purgeDate); - - return removed; + return getCurrentSession() + .createQuery( + "FROM DatabaseID where removedDate < :removedDate") + .setParameter("removedDate", purgeDate) + .list(); } }); } catch (Exception e) { @@ -546,8 +554,10 @@ public class GFEDao extends DefaultPluginDao { return txTemplate.execute(new TransactionCallback() { @Override public Integer doInTransaction(TransactionStatus status) { - return getHibernateTemplate().bulkUpdate( - "DELETE FROM DatabaseID WHERE siteId = ?", siteID); + return getCurrentSession() + .createQuery( + "DELETE FROM DatabaseID WHERE siteId = :siteId") + .setParameter("siteId", siteID).executeUpdate(); } }); } @@ -570,8 +580,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory() - .openStatelessSession(); + sess = getSessionFactory().openStatelessSession(); tx = sess.beginTransaction(); for (GFERecord rec : records) { // TODO: Update saving a record, currently causes 2 inserts and @@ -599,7 +608,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -623,8 +632,7 @@ public class GFEDao extends DefaultPluginDao { } try { - sess = getHibernateTemplate().getSessionFactory() - .openStatelessSession(); + sess = getSessionFactory().openStatelessSession(); tx = sess.beginTransaction(); // Update insert time @@ -681,7 +689,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -704,15 +712,14 @@ public class GFEDao extends DefaultPluginDao { try { return txTemplate .execute(new TransactionCallback>() { + @SuppressWarnings("unchecked") @Override public List doInTransaction( TransactionStatus status) { - @SuppressWarnings("unchecked") - List result = getHibernateTemplate() - .find("FROM DatabaseID WHERE siteId = ? AND removeddate is null", - siteId); - - return result; + return getCurrentSession() + .createQuery( + "FROM DatabaseID WHERE siteId = :siteId AND removeddate is null") + .setParameter("siteId", siteId).list(); } }); } catch (Exception e) { @@ -737,7 +744,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); sess.setDefaultReadOnly(true); tx = sess.beginTransaction(); @@ -767,7 +774,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -792,7 +799,7 @@ public class GFEDao extends DefaultPluginDao { try { // stateless session so we can bulk query histories instead of once // per record via hibernate - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); sess.setDefaultReadOnly(true); tx = sess.beginTransaction(); @@ -828,7 +835,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -858,8 +865,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory() - .openStatelessSession(); + sess = getSessionFactory().openStatelessSession(); tx = sess.beginTransaction(); Query query = sess .createQuery("DELETE FROM GFERecord WHERE parmId = :parmId" @@ -869,7 +875,7 @@ public class GFEDao extends DefaultPluginDao { int rowsDeleted = query.executeUpdate(); tx.commit(); tx = null; - statusHandler.info("Deleted " + rowsDeleted + logger.info("Deleted " + rowsDeleted + " records from the database."); Map, String[]>> fileMap = GfeUtil @@ -884,19 +890,19 @@ public class GFEDao extends DefaultPluginDao { try { dataStore.deleteGroups(groupsToDelete); - if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { - statusHandler.handle(Priority.DEBUG, "Deleted: " + if (logger.isPriorityEnabled(Priority.DEBUG)) { + logger.handle(Priority.DEBUG, "Deleted: " + Arrays.toString(groupsToDelete) + " from " + hdf5File.getName()); } } catch (Exception e) { - statusHandler.handle(Priority.WARN, + logger.handle(Priority.WARN, "Error deleting hdf5 record(s) from file: " + hdf5File.getPath(), e); } } } catch (Exception e) { - statusHandler.error("Error deleting database record(s) for parmId " + logger.error("Error deleting database record(s) for parmId " + parmId + " timeRanges " + times, e); if (tx != null) { @@ -911,7 +917,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -931,14 +937,14 @@ public class GFEDao extends DefaultPluginDao { try { return txTemplate .execute(new TransactionCallback>() { + @SuppressWarnings("unchecked") @Override public List doInTransaction( TransactionStatus status) { - @SuppressWarnings("unchecked") - List result = getHibernateTemplate() - .find("SELECT dataTime.validPeriod FROM GFERecord WHERE parmId = ? ORDER BY dataTime.validPeriod.start", - parmId); - return result; + return getCurrentSession() + .createQuery( + "SELECT dataTime.validPeriod FROM GFERecord WHERE parmId = :parmId ORDER BY dataTime.validPeriod.start") + .setParameter("parmId", parmId).list(); } }); } catch (Exception e) { @@ -963,19 +969,19 @@ public class GFEDao extends DefaultPluginDao { try { return txTemplate .execute(new TransactionCallback>() { + @SuppressWarnings("unchecked") @Override public List doInTransaction( TransactionStatus status) { - @SuppressWarnings("unchecked") - List rval = getHibernateTemplate() - .find("SELECT dataTime.validPeriod" - + " FROM GFERecord WHERE parmId = ?" - + " AND dataTime.validPeriod.start < ?" - + " AND dataTime.validPeriod.end > ?" - + " ORDER BY dataTime.validPeriod.start", - new Object[] { parmId, tr.getEnd(), - tr.getStart() }); - return rval; + Query query = getCurrentSession().createQuery("SELECT dataTime.validPeriod" + + " FROM GFERecord WHERE parmId = :parmId" + + " AND dataTime.validPeriod.start < :start" + + " AND dataTime.validPeriod.end > :end" + + " ORDER BY dataTime.validPeriod.start"); + query.setParameter("parmId", parmId); + query.setParameter("start", tr.getEnd()); + query.setParameter("end", tr.getStart()); + return query.list(); } }); } catch (Exception e) { @@ -1011,7 +1017,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory() + sess = getSessionFactory() .openStatelessSession(); tx = sess.beginTransaction(); @@ -1050,7 +1056,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -1063,9 +1069,38 @@ public class GFEDao extends DefaultPluginDao { * Remove all GFE records for a particular DatabaseID * * @param dbId + * database to be purged + * @return true if database was removed, false if not found (already + * removed) */ - public void purgeGFEGrids(final DatabaseID dbId) { - delete(dbId); + public boolean purgeGFEGrids(final DatabaseID dbId) { + Session sess = null; + boolean purged = false; + try { + sess = getSessionFactory().openSession(); + Transaction tx = sess.beginTransaction(); + Object toDelete = sess.get(DatabaseID.class, dbId.getId(), + LockOptions.UPGRADE); + + if (toDelete != null) { + sess.delete(toDelete); + } + + tx.commit(); + purged = true; + } catch (Exception e) { + logger.error("Error purging " + dbId, e); + } finally { + if (sess != null) { + try { + sess.close(); + } catch (Exception e) { + logger.error( + "Error occurred closing database session", e); + } + } + } + return purged; } /** @@ -1121,7 +1156,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory() + sess = getSessionFactory() .openStatelessSession(); tx = sess.beginTransaction(); Query q = sess @@ -1144,7 +1179,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -1170,7 +1205,7 @@ public class GFEDao extends DefaultPluginDao { List rows = null; try { - sess = getHibernateTemplate().getSessionFactory() + sess = getSessionFactory() .openStatelessSession(); tx = sess.beginTransaction(); // use intersection of time range, UPDATE statement don't auto join @@ -1215,7 +1250,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -1255,7 +1290,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory() + sess = getSessionFactory() .openStatelessSession(); tx = sess.beginTransaction(); Query q = sess @@ -1278,7 +1313,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -1330,17 +1365,17 @@ public class GFEDao extends DefaultPluginDao { // TODO: Should this be done from GridParmManager? List results = Collections.emptyList(); try { - final String[] queryParams = { siteId, modelName }; results = txTemplate .execute(new TransactionCallback>() { + @SuppressWarnings("unchecked") @Override public List doInTransaction( TransactionStatus status) { - @SuppressWarnings("unchecked") - List result = getHibernateTemplate() - .find("FROM DatabaseID WHERE siteId = ? AND modelName = ? ORDER BY modelTime DESC LIMIT 1", - (Object[]) queryParams); - return result; + + Query query = getCurrentSession().createQuery("FROM DatabaseID WHERE siteId = :siteId AND modelName = :modelName ORDER BY modelTime DESC LIMIT 1"); + query.setParameter("siteId", siteId); + query.setParameter("modelName",modelName); + return query.list(); } }); } catch (Exception e) { @@ -1371,7 +1406,7 @@ public class GFEDao extends DefaultPluginDao { dbId.setRemovedDate(removedDate); Session sess = null; try { - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); int tries = 0; Transaction tx = null; try { @@ -1407,7 +1442,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -1427,7 +1462,7 @@ public class GFEDao extends DefaultPluginDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); tx = sess.beginTransaction(); sess.saveOrUpdate(gloc); tx.commit(); @@ -1448,7 +1483,7 @@ public class GFEDao extends DefaultPluginDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFELockDao.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFELockDao.java index 2b8c89fdd4..2b395a0042 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFELockDao.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFELockDao.java @@ -52,6 +52,7 @@ import com.raytheon.uf.edex.database.dao.DaoConfig; * 06/17/08 #940 bphillip Initial Creation * 04/19/13 #1949 rjpeter Normalized GFE Database. * 06/20/13 #2127 rjpeter Set session to read only. + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @author bphillip @@ -98,7 +99,7 @@ public class GFELockDao extends CoreDao { Transaction tx = null; try { - sess = getHibernateTemplate().getSessionFactory().openSession(); + sess = getSession(); sess.setDefaultReadOnly(true); tx = sess.beginTransaction(); @@ -137,7 +138,7 @@ public class GFELockDao extends CoreDao { try { sess.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } @@ -159,7 +160,7 @@ public class GFELockDao extends CoreDao { Transaction tx = null; try { - s = this.getHibernateTemplate().getSessionFactory() + s = getSessionFactory() .openStatelessSession(); tx = s.beginTransaction(); @@ -185,7 +186,7 @@ public class GFELockDao extends CoreDao { try { s.close(); } catch (Exception e) { - statusHandler.error( + logger.error( "Error occurred closing database session", e); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/IscSendQueue.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/IscSendQueue.java index 8930f626f1..d838d37fc4 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/IscSendQueue.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/IscSendQueue.java @@ -63,6 +63,7 @@ import com.raytheon.uf.edex.database.dao.DaoConfig; * May 08, 2012 600 dgilling Re-work logic for handling PENDING * records. * Feb 07, 2014 2357 rjpeter iscSendNotification uri. + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -333,7 +334,7 @@ public class IscSendQueue { for (IscSendRecord record : newJobs) { try { - s = cd.getHibernateTemplate().getSessionFactory().openSession(); + s = cd.getSession(); tx = s.beginTransaction(); boolean foundDupe = false; boolean foundMerge = false; @@ -575,7 +576,7 @@ public class IscSendQueue { CoreDao dao = new CoreDao(DaoConfig.DEFAULT); List pendingToSending = null; try { - lookupSess = dao.getHibernateTemplate().getSessionFactory() + lookupSess = dao.getSessionFactory() .openStatelessSession(); Criteria pendingCrit = lookupSess @@ -607,8 +608,7 @@ public class IscSendQueue { Transaction tx = null; try { - dbModSess = dao.getHibernateTemplate().getSessionFactory() - .openSession(); + dbModSess = dao.getSession(); tx = dbModSess.beginTransaction(); IscSendRecord oldRecord = (IscSendRecord) dbModSess.get( diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/SendIscSrv.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/SendIscSrv.java index 5e703ab8c9..a5368f1ebd 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/SendIscSrv.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/isc/SendIscSrv.java @@ -19,7 +19,33 @@ **/ package com.raytheon.edex.plugin.gfe.isc; -import java.util.concurrent.Executor; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import jep.JepException; + +import com.raytheon.edex.plugin.gfe.config.GFESiteActivation; +import com.raytheon.edex.plugin.gfe.config.IFPServerConfig; +import com.raytheon.edex.plugin.gfe.config.IFPServerConfigManager; +import com.raytheon.edex.plugin.gfe.exception.GfeConfigurationException; +import com.raytheon.edex.plugin.gfe.server.IFPServer; +import com.raytheon.edex.plugin.gfe.server.database.GridDatabase; +import com.raytheon.edex.plugin.gfe.util.SendNotifications; +import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory; +import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID; +import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; +import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; +import com.raytheon.uf.common.dataplugin.gfe.server.notify.GridHistoryUpdateNotification; +import com.raytheon.uf.common.message.WsId; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.time.TimeRange; +import com.raytheon.uf.edex.core.EdexTimerBasedThread; /** * Service that runs ISC send jobs. Along with IscSendQueue, this class roughly @@ -31,28 +57,183 @@ import java.util.concurrent.Executor; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Oct 20, 2011 dgilling Initial creation - * + * Oct 20, 2011 dgilling Initial creation + * May 19, 2014 2726 rjpeter Integrate IscSendJob for graceful shutdown. * * * @author dgilling * @version 1.0 */ -public class SendIscSrv { +public class SendIscSrv extends EdexTimerBasedThread { + private final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(SendIscSrv.class); - private final SendIscSrvConfig cfg; + protected int runningTimeOutMillis; - private final Executor executor; + /** Date format for formatting dates for use with iscExtract script */ + protected static final SimpleDateFormat ISC_EXTRACT_DATE = new SimpleDateFormat( + "yyyyMMdd_HHmm"); - public SendIscSrv(SendIscSrvConfig config) { - this.cfg = config; - this.executor = config.getExecutor(); - for (int i = 0; i < cfg.getThreads(); i++) { - IscSendJob thread = new IscSendJob(); - thread.setRunningTimeOutMillis(cfg.getRunningTimeOutMillis()); - thread.setThreadSleepInterval(cfg.getThreadSleepInterval()); - executor.execute(thread); + protected final ThreadLocal> scripts = new ThreadLocal>() { + + @Override + protected Map initialValue() { + return new HashMap(); + } + + }; + + public SendIscSrv() { + } + + public int getRunningTimeOutMillis() { + return runningTimeOutMillis; + } + + public void setRunningTimeOutMillis(int runningTimeOutMillis) { + this.runningTimeOutMillis = runningTimeOutMillis; + } + + @Override + public String getThreadGroupName() { + return "iscSendThreadPool"; + } + + @Override + public void process() throws Exception { + IscSendRecord record = null; + do { + record = SendIscTransactions.getNextSendJob(runningTimeOutMillis); + if (record != null) { + runIscSend(record); + SendIscTransactions.removeSendJob(record); + } + } while (record != null); + } + + @Override + public void dispose() { + super.dispose(); + // Make sure OS resources are released at thread death + for (IscSendScript script : scripts.get().values()) { + script.dispose(); + } + } + + private void runIscSend(IscSendRecord request) { + try { + ParmID id = request.getParmID(); + TimeRange tr = request.getTimeRange(); + String xmlDest = request.getXmlDest(); + String siteId = id.getDbId().getSiteId(); + + if (!GFESiteActivation.getInstance().getActiveSites() + .contains(siteId)) { + statusHandler.warn("Attempted to send " + id + + " for deactivated site " + siteId + "."); + return; + } + + statusHandler.info("Starting isc for " + id.toString() + " " + + tr.toString() + " " + xmlDest); + + Map cmd = new HashMap(); + cmd.put("parmNames", Arrays.asList(id.getParmName())); + cmd.put("databaseName", id.getDbId().getModelId()); + cmd.put("startTime", ISC_EXTRACT_DATE.format(tr.getStart())); + cmd.put("endTime", ISC_EXTRACT_DATE.format(tr.getEnd())); + + // destination server XML, might be empty + // the -D switch is a file location containing the xml + // information + if (!xmlDest.isEmpty()) { + cmd.put("destinations", xmlDest); + } + + try { + IFPServerConfig config = IFPServerConfigManager + .getServerConfig(siteId); + // IRT table address + cmd.put("irtTableAddressA", config.iscRoutingTableAddress() + .get("ANCF")); + cmd.put("irtTableAddressB", config.iscRoutingTableAddress() + .get("BNCF")); + // xmt script + cmd.put("transmitScript", config.transmitScript()); + // our server host, port, protocol, our mhs id, and our site id + cmd.put("ourServerHost", config.getServerHost()); + cmd.put("ourServerPort", String.valueOf(config.getRpcPort())); + cmd.put("ourServerProtocol", + String.valueOf(config.getProtocolVersion())); + cmd.put("ourMHSid", config.getMhsid()); + cmd.put("ourSiteID", config.getSiteID().get(0)); + } catch (GfeConfigurationException e) { + statusHandler.error( + "Unable to retrieve site configuration for site " + + siteId, e); + return; + } + + try { + IscSendScript script = scripts.get().get(siteId); + if (script == null) { + script = IscSendScriptFactory + .constructIscSendScript(siteId); + scripts.get().put(siteId, script); + } + script.execute(cmd); + } catch (JepException e) { + statusHandler.error("Error executing iscExtract.", e); + return; + } + + try { + DatabaseID dbId = id.getDbId(); + IFPServer ifpServer = IFPServer.getActiveServer(dbId + .getSiteId()); + if (ifpServer != null) { + GridDatabase gridDb = ifpServer.getGridParmMgr() + .getDatabase(dbId); + if (gridDb != null) { + ServerResponse>> sr = gridDb + .updateSentTime(id, tr, new Date()); + if (sr.isOkay()) { + WsId wsId = new WsId(null, "ISC", "ISC"); + List notifications = new ArrayList( + 1); + Map> histories = sr + .getPayload(); + notifications + .add(new GridHistoryUpdateNotification(id, + histories, wsId, siteId)); + SendNotifications.send(notifications); + + } else { + statusHandler + .error("Error updating last sent times in GFERecords: " + + sr.getMessages()); + } + } else { + // no such database exists + statusHandler + .error("Error processing ISC send request for :" + + dbId + + ", the database does not exist."); + } + } else { + // no active server for request + statusHandler + .error("Error processing ISC send request for :" + + dbId + ", no active IFPServer for site."); + } + } catch (Exception e) { + statusHandler.error( + "Error updating last sent times in GFERecords.", e); + } + + } catch (Throwable t) { + statusHandler.error("Exception in SendIscSrv: ", t); } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/DbShapeSource.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/DbShapeSource.java index 39ec233862..a1d07d0631 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/DbShapeSource.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/DbShapeSource.java @@ -24,20 +24,20 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.NoSuchElementException; import java.util.Properties; import org.geotools.data.DataStore; -import org.geotools.data.DefaultQuery; -import org.geotools.data.FeatureSource; -import org.geotools.data.postgis.PostgisDataStoreFactory; +import org.geotools.data.Query; +import org.geotools.data.postgis.PostgisNGDataStoreFactory; +import org.geotools.data.simple.SimpleFeatureCollection; +import org.geotools.data.simple.SimpleFeatureIterator; +import org.geotools.data.simple.SimpleFeatureSource; import org.geotools.factory.CommonFactoryFinder; import org.geotools.factory.GeoTools; -import org.geotools.feature.FeatureCollection; -import org.hibernate.engine.SessionFactoryImplementor; +import org.hibernate.engine.spi.SessionFactoryImplementor; import org.opengis.feature.IllegalAttributeException; import org.opengis.feature.simple.SimpleFeature; import org.opengis.feature.simple.SimpleFeatureType; @@ -70,6 +70,8 @@ import com.vividsolutions.jts.geom.Polygon; * Sep 18, 2012 #1091 randerso Initial creation * Mar 28, 2013 #1837 dgilling Change error handling in * getLastUpdated(). + * Mar 11, 2014 #2718 randerso Changes for GeoTools 10.5 + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -107,9 +109,9 @@ public class DbShapeSource { private List attributeNames; - private FeatureCollection featureCollection; + private SimpleFeatureCollection featureCollection; - private Iterator featureIterator; + private SimpleFeatureIterator featureIterator; private String shapeField; @@ -119,7 +121,7 @@ public class DbShapeSource { private BoundingBox boundingBox; - private DefaultQuery query; + private Query query; private SimpleFeatureType schema; @@ -156,7 +158,7 @@ public class DbShapeSource { String port = props.getProperty("db.port"); String user = props.getProperty("connection.username"); String passwd = props.getProperty("connection.password"); - PostgisDataStoreFactory factory = new PostgisDataStoreFactory(); + PostgisNGDataStoreFactory factory = new PostgisNGDataStoreFactory(); Map params = new HashMap(); params.put("host", host); params.put("port", port); @@ -189,7 +191,7 @@ public class DbShapeSource { featureCollection = null; featureIterator = null; - query = new DefaultQuery(); + query = new Query(); query.setTypeName(this.tableName); List propNames = new ArrayList(getAttributeNames()); propNames.add(shapeField); @@ -212,10 +214,10 @@ public class DbShapeSource { query.setFilter(filter); } - FeatureSource featureSource = dataStore + SimpleFeatureSource featureSource = dataStore .getFeatureSource(this.tableName); featureCollection = featureSource.getFeatures(query); - featureIterator = featureCollection.iterator(); + featureIterator = featureCollection.features(); } /** @@ -233,7 +235,7 @@ public class DbShapeSource { */ public void close() throws IOException { if (featureIterator != null) { - featureCollection.close(featureIterator); + featureIterator.close(); featureIterator = null; featureCollection = null; } @@ -266,13 +268,14 @@ public class DbShapeSource { Class geometryType = schema.getGeometryDescriptor().getType() .getBinding(); - if (geometryType == Point.class || geometryType == MultiPoint.class) { + if ((geometryType == Point.class) + || (geometryType == MultiPoint.class)) { this.type = ShapeType.POINT; - } else if (geometryType == LineString.class - || geometryType == MultiLineString.class) { + } else if ((geometryType == LineString.class) + || (geometryType == MultiLineString.class)) { this.type = ShapeType.POLYLINE; - } else if (geometryType == Polygon.class - || geometryType == MultiPolygon.class) { + } else if ((geometryType == Polygon.class) + || (geometryType == MultiPolygon.class)) { this.type = ShapeType.POLYGON; } else { this.type = ShapeType.NONE; @@ -289,7 +292,7 @@ public class DbShapeSource { if (attributeNames == null) { List attrDesc = schema .getAttributeDescriptors(); - if (attrDesc == null || attrDesc.size() == 0) { + if ((attrDesc == null) || (attrDesc.size() == 0)) { return null; } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/MapManager.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/MapManager.java index 472822d937..45cf54ac41 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/MapManager.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/MapManager.java @@ -105,6 +105,8 @@ import com.vividsolutions.jts.simplify.TopologyPreservingSimplifier; * warnings clean up. * Sep 30, 2013 #2361 njensen Use JAXBManager for XML * Jan 21, 2014 #2720 randerso Improve efficiency of merging polygons in edit area generation + * Aug 27, 2014 #3563 randerso Fix issue where edit areas are regenerated unnecessarily + * Oct 20, 2014 #3685 randerso Changed structure of editAreaAttrs to keep zones from different maps separated * * * @@ -130,7 +132,7 @@ public class MapManager { private final Map> editAreaMap = new HashMap>(); - private final Map> editAreaAttrs = new HashMap>(); + private final Map>> editAreaAttrs = new HashMap>>(); private final List iscMarkersID = new ArrayList(); @@ -165,6 +167,7 @@ public class MapManager { .getAbsolutePath(); LocalizationContext edexStaticConfig = pathMgr.getContext( LocalizationType.EDEX_STATIC, LocalizationLevel.CONFIGURED); + edexStaticConfig.setContextName(siteId); this.edexStaticConfigDir = pathMgr.getFile(edexStaticConfig, ".") .getAbsolutePath(); LocalizationContext edexStaticSite = pathMgr.getContextForSite( @@ -298,6 +301,8 @@ public class MapManager { newestSource = Math.max(newestSource, file.lastModified()); localMapsTag.mkdirs(); } else if (localMapsTag.exists()) { + statusHandler + .info("localMaps.py file removed. Edit areas will be regenerated."); localMapsTag.delete(); newestSource = System.currentTimeMillis(); } @@ -807,6 +812,8 @@ public class MapManager { private List createReferenceData(DbShapeSource mapDef) { // ServerResponse sr; List data = new ArrayList(); + List> attributes = new ArrayList>(); + editAreaAttrs.put(mapDef.getDisplayName(), attributes); // Module dean("DefaultEditAreaNaming"); ArrayList created = new ArrayList(); @@ -867,7 +874,8 @@ public class MapManager { // handle new case else { created.add(ean); - editAreaAttrs.put(ean, info); + info.put("editarea", ean); + attributes.add(info); } tempData.put(ean, mp); diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/ReferenceMgr.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/ReferenceMgr.java index d7df5c8ca7..c4bcac4377 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/ReferenceMgr.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/reference/ReferenceMgr.java @@ -49,6 +49,7 @@ import com.raytheon.uf.common.util.FileUtil; * Jul 24, 2012 dgilling Initial creation * Aug 07, 2013 1561 njensen Use pm.listFiles() instead of pm.listStaticFiles() * Sep 30, 2013 2361 njensen Use JAXBManager for XML + * Sep 08, 2104 3592 randerso Changed to use new pm listStaticFiles() * * * @@ -81,9 +82,9 @@ public class ReferenceMgr { public ServerResponse> getInventory() { List refIDs = new ArrayList(); IPathManager pm = PathManagerFactory.getPathManager(); - LocalizationFile[] contents = pm.listFiles( - pm.getLocalSearchHierarchy(LocalizationType.COMMON_STATIC), - EDIT_AREAS_DIR, new String[] { ".xml" }, false, true); + LocalizationFile[] contents = pm.listStaticFiles( + LocalizationType.COMMON_STATIC, EDIT_AREAS_DIR, + new String[] { ".xml" }, false, true); if (contents != null) { for (LocalizationFile lf : contents) { String s = LocalizationUtil.extractName(lf.getName()); @@ -116,7 +117,8 @@ public class ReferenceMgr { // process each ReferenceID requested for (ReferenceID id : ids) { String path = FileUtil.join(EDIT_AREAS_DIR, id.getName() + ".xml"); - LocalizationFile lf = pathMgr.getStaticLocalizationFile(path); + LocalizationFile lf = pathMgr.getStaticLocalizationFile( + LocalizationType.COMMON_STATIC, path); // does it exist? if (lf == null) { @@ -129,8 +131,8 @@ public class ReferenceMgr { // open and read the file ReferenceData refData = null; try { - refData = ReferenceData.getJAXBManager() - .unmarshalFromXmlFile(lf.getFile().getPath()); + refData = ReferenceData.getJAXBManager().unmarshalFromXmlFile( + lf.getFile().getPath()); } catch (Exception e) { sr.addMessage("Unable to read reference data [" + id + "]"); data = Collections.emptyList(); diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParm.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParm.java index 992f1aa255..d8271c6cb9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParm.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParm.java @@ -28,7 +28,6 @@ import java.util.List; import java.util.Map; import com.raytheon.edex.plugin.gfe.db.dao.GFEDao; -import com.raytheon.edex.plugin.gfe.server.database.D2DGridDatabase; import com.raytheon.edex.plugin.gfe.server.database.GridDatabase; import com.raytheon.edex.plugin.gfe.server.lock.LockManager; import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory; @@ -76,6 +75,7 @@ import com.raytheon.uf.edex.database.plugin.PluginFactory; * 04/23/13 #1949 rjpeter Removed excess validation on retrieval, added * inventory for a given time range. * 06/13/13 #2044 randerso Refactored to use non-singleton LockManager + * 07/01/2014 #3149 randerso Removed unit conversion (unused) * * * @author bphillip @@ -111,7 +111,7 @@ public class GridParm { * Creates a new empty GridParm */ public GridParm() { - + this.id = new ParmID(); } /** @@ -325,12 +325,7 @@ public class GridParm { if (!CollectionUtil.isNullOrEmpty(reqTimes)) { // Get the data - if (getRequest.isConvertUnit() && (db instanceof D2DGridDatabase)) { - sr = ((D2DGridDatabase) db).getGridData(id, reqTimes, - getRequest.isConvertUnit()); - } else { - sr = db.getGridData(id, reqTimes); - } + sr = db.getGridData(id, reqTimes); if (!sr.isOkay()) { sr.addMessage("Failure in retrieving grid data from GridDatabase"); return sr; diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParmManager.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParmManager.java index fdea485b5f..3ce132ff64 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParmManager.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/GridParmManager.java @@ -39,6 +39,8 @@ import com.raytheon.edex.plugin.gfe.server.database.D2DSatDatabase; import com.raytheon.edex.plugin.gfe.server.database.GridDatabase; import com.raytheon.edex.plugin.gfe.server.database.IFPGridDatabase; import com.raytheon.edex.plugin.gfe.server.database.NetCDFDatabaseManager; +import com.raytheon.edex.plugin.gfe.server.database.TopoDatabase; +import com.raytheon.edex.plugin.gfe.server.database.TopoDatabaseManager; import com.raytheon.edex.plugin.gfe.server.database.VGridDatabase; import com.raytheon.edex.plugin.gfe.server.lock.LockManager; import com.raytheon.edex.plugin.gfe.smartinit.SmartInitQueue; @@ -101,7 +103,7 @@ import com.raytheon.uf.edex.database.purge.PurgeLogger; * D2DGridDatabase constructor * 04/23/13 #1949 rjpeter Added inventory retrieval for a given time range. * 05/02/13 #1969 randerso Fixed possible null pointer in getParmList - * Removed inventory from DBInvChangedNotification + * Removed inventory from DBInvChangeNotification * 05/03/13 #1974 randerso Fixed error logging to include stack trace * 05/14/13 #2004 randerso Added methods to synch GridParmManager across JVMs * 05/30/13 #2044 randerso Refactored to better match A1 design. Removed D2DParmIDCache. @@ -119,6 +121,21 @@ import com.raytheon.uf.edex.database.purge.PurgeLogger; * the same parm simultaneously. * Added code to check the purge times when publishing and not publish * data that is eligible to be purged. + * 05/22/14 #3071 randerso Expand publish time to time constraint quantum after truncating it + * to the purge time + * 06/12/14 #3244 randerso Improved error handling + * 06/24/2014 #3317 randerso Send DBInvChangeNotification when database is created, unless it's + * created in response to another DBInvChangeNotification so IFPServers stay in synch. + * Cleaned up commented code. + * 07/21/2014 #3415 randerso Fixed d2dGridDataPurged to not purge NetCDF databases. + * 09/21/2014 #3648 randerso Changed to do version purging when new databases are added + * 10/07/2014 #3684 randerso Restructured IFPServer start up. + * Reordered handling of DbInvChangeNotification + * Don't process GFENotifications sent by this JVM + * Prevent createDB from creating databases that are immediately purged + * Send DBInvChangeNotifications at site activation so new D2D data + * ingested while deactivated gets recognized + * 10/27/2014 #3766 randerso Fixed return type and javadoc for createNewDb * * * @@ -151,6 +168,8 @@ public class GridParmManager { private LockManager lockMgr; + private TopoDatabaseManager topoMgr; + private Map dbMap = new ConcurrentHashMap(); /** @@ -158,21 +177,19 @@ public class GridParmManager { * * @param siteID * @param config - * @param lockMgr * @throws PluginException * @throws DataAccessLayerException * @throws GfeException */ - public GridParmManager(String siteID, IFPServerConfig config, - LockManager lockMgr) throws PluginException, - DataAccessLayerException, GfeException { + public GridParmManager(String siteID, IFPServerConfig config) + throws PluginException, DataAccessLayerException, GfeException { this.siteID = siteID; this.config = config; - this.lockMgr = lockMgr; - this.lockMgr.setGridParmMgr(this); + this.lockMgr = new LockManager(siteID, config, this); + this.topoMgr = new TopoDatabaseManager(siteID, config); initializeManager(); - } + } /** * Dispose the GridParmManager @@ -181,6 +198,20 @@ public class GridParmManager { NetCDFDatabaseManager.removeDatabases(siteID); } + /** + * @return the lockMgr + */ + public LockManager getLockMgr() { + return lockMgr; + } + + /** + * @return the topoMgr + */ + public TopoDatabaseManager getTopoMgr() { + return topoMgr; + } + private GridParm gridParm(ParmID id) { GridDatabase db = getDatabase(id.getDbId()); if (db != null) { @@ -197,9 +228,8 @@ public class GridParmManager { } else { statusHandler .debug("No matching GridDatabase for requested ParmID in createParm()"); - // TODO: should we return null? return new GridParm(); - } + } } /** @@ -330,10 +360,10 @@ public class GridParmManager { for (SaveGridRequest req : saveRequest) { ServerResponse ssr = null; GridParm gp = null; - gp = gridParm(req.getParmId()); - if (!gp.isValid()) { - sr.addMessage("Unknown Parm: " + req.getParmId() - + " in saveGridData()"); + gp = gridParm(req.getParmId()); + if (!gp.isValid()) { + sr.addMessage("Unknown Parm: " + req.getParmId() + + " in saveGridData()"); statusHandler.error("Unknown Parm: " + req.getParmId() + " in saveGridData()"); continue; @@ -455,27 +485,27 @@ public class GridParmManager { // for the source data ParmID sourceParmId = req.getParmId(); GridParm sourceGP = gridParm(sourceParmId); - if (!sourceGP.isValid()) { - ssr.addMessage("Unknown Source Parm: " + req.getParmId() - + " in commitGrid()"); - srDetailed.addMessages(ssr); - failures.add(req); - continue; - } + if (!sourceGP.isValid()) { + ssr.addMessage("Unknown Source Parm: " + req.getParmId() + + " in commitGrid()"); + srDetailed.addMessages(ssr); + failures.add(req); + continue; + } // for the destination data ParmID destParmId = new ParmID(req.getParmId().getParmName(), officialDBid, req.getParmId().getParmLevel()); String destParmIdStr = destParmId.toString(); GridParm destGP = null; - destGP = gridParm(destParmId); - if (!destGP.isValid()) { - ssr.addMessage("Unknown Destination Parm: " + destGP - + " in commitGrid()"); - srDetailed.addMessages(ssr); - failures.add(req); - continue; - } + destGP = gridParm(destParmId); + if (!destGP.isValid()) { + ssr.addMessage("Unknown Destination Parm: " + destGP + + " in commitGrid()"); + srDetailed.addMessages(ssr); + failures.add(req); + continue; + } // verify that the source and destination are matched GridParmInfo sourceInfo, destInfo; @@ -519,17 +549,22 @@ public class GridParmManager { publishTime.setStart(startTime); } - inventoryTimer.start(); + // expand publishTime to TimeContraints so full grids are + // published + publishTime = sourceInfo.getTimeConstraints() + .expandTRToQuantum(publishTime); + + inventoryTimer.start(); ServerResponse> invSr = sourceGP .getGridInventory(publishTime); List overlapInventory = invSr.getPayload(); - ssr.addMessages(invSr); - if (!ssr.isOkay()) { - ssr.addMessage("GetGridInventory for source for commitGrid() failure: " - + ssr.message()); - srDetailed.addMessages(ssr); - failures.add(req); - } + ssr.addMessages(invSr); + if (!ssr.isOkay()) { + ssr.addMessage("GetGridInventory for source for commitGrid() failure: " + + ssr.message()); + srDetailed.addMessages(ssr); + failures.add(req); + } // expand publish time to span overlapping inventory if (!overlapInventory.isEmpty()) { @@ -546,173 +581,173 @@ public class GridParmManager { } invSr = destGP.getGridInventory(publishTime); - inventoryTimer.stop(); - List destInventory = invSr.getPayload(); - ssr.addMessages(invSr); - if (!ssr.isOkay()) { - ssr.addMessage("GetGridInventory for destination for commitGrid() failure: " - + ssr.message()); - srDetailed.addMessages(ssr); - failures.add(req); - continue; - } - - // get the source grid data - List sourceData = null; - List badGridTR = new ArrayList(); - - // System.out.println("overlapInventory initial size " - // + overlapInventory.size()); - - historyRetrieveTimer.start(); - ServerResponse>> history = sourceGP - .getGridHistory(overlapInventory); - Map> currentDestHistory = destGP - .getGridHistory(overlapInventory).getPayload(); - historyRetrieveTimer.stop(); - - Map> historyOnly = new HashMap>(); - for (TimeRange tr : history.getPayload().keySet()) { - // should only ever be one history for source grids - List gdhList = history.getPayload() - .get(tr); - boolean doPublish = false; - for (GridDataHistory gdh : gdhList) { - // if update time is less than publish time, grid - // has not changed since last published, - // therefore only update history, do not publish - if ((gdh.getPublishTime() == null) - || (gdh.getUpdateTime().getTime() > gdh - .getPublishTime().getTime()) - // in service backup, times on srcHistory - // could appear as not needing a publish, - // even though dest data does not exist - || (currentDestHistory.get(tr) == null) - || (currentDestHistory.get(tr).size() == 0)) { - doPublish = true; - } - } - if (!doPublish) { - historyOnly.put(tr, gdhList); - overlapInventory.remove(tr); - } - } - - retrieveTimer.start(); - ServerResponse> getSr = sourceGP.getGridData( - new GetGridRequest(req.getParmId(), overlapInventory), - badGridTR); - retrieveTimer.stop(); - // System.out.println("Retrieved " + overlapInventory.size() - // + " grids"); - sourceData = getSr.getPayload(); - ssr.addMessages(getSr); - if (!ssr.isOkay()) { - ssr.addMessage("GetGridData for source for commitGrid() failure: " - + ssr.message()); - srDetailed.addMessages(ssr); - failures.add(req); - continue; - } - - // get list of official grids that overlap publish range and - // aren't contained in the publish range, these have to be - // included in the publish step. Then get the grids, shorten - // and insert into sourceData. - List officialData = new ArrayList(); - List officialTR = new ArrayList(); - for (int t = 0; t < destInventory.size(); t++) { - if (!publishTime.contains(destInventory.get(t))) { - officialTR.add(destInventory.get(t)); - } - } - - if (!officialTR.isEmpty()) { - retrieveTimer.start(); - getSr = destGP.getGridData(new GetGridRequest(destParmId, - officialTR), badGridTR); - retrieveTimer.stop(); - officialData = getSr.getPayload(); - ssr.addMessages(getSr); + inventoryTimer.stop(); + List destInventory = invSr.getPayload(); + ssr.addMessages(invSr); if (!ssr.isOkay()) { - ssr.addMessage("GetGridData for official for commidtGrid() failure: " + ssr.addMessage("GetGridInventory for destination for commitGrid() failure: " + ssr.message()); srDetailed.addMessages(ssr); failures.add(req); continue; } - // insert the grid into the "sourceGrid" list - for (int t = 0; t < officialTR.size(); t++) { - // before - try { - if (officialTR.get(t).getStart() - .before(publishTime.getStart())) { + // get the source grid data + List sourceData = null; + List badGridTR = new ArrayList(); + + // System.out.println("overlapInventory initial size " + // + overlapInventory.size()); + + historyRetrieveTimer.start(); + ServerResponse>> history = sourceGP + .getGridHistory(overlapInventory); + Map> currentDestHistory = destGP + .getGridHistory(overlapInventory).getPayload(); + historyRetrieveTimer.stop(); + + Map> historyOnly = new HashMap>(); + for (TimeRange tr : history.getPayload().keySet()) { + // should only ever be one history for source grids + List gdhList = history.getPayload() + .get(tr); + boolean doPublish = false; + for (GridDataHistory gdh : gdhList) { + // if update time is less than publish time, grid + // has not changed since last published, + // therefore only update history, do not publish + if ((gdh.getPublishTime() == null) + || (gdh.getUpdateTime().getTime() > gdh + .getPublishTime().getTime()) + // in service backup, times on srcHistory + // could appear as not needing a publish, + // even though dest data does not exist + || (currentDestHistory.get(tr) == null) + || (currentDestHistory.get(tr).size() == 0)) { + doPublish = true; + } + } + if (!doPublish) { + historyOnly.put(tr, gdhList); + overlapInventory.remove(tr); + } + } + + retrieveTimer.start(); + ServerResponse> getSr = sourceGP.getGridData( + new GetGridRequest(req.getParmId(), overlapInventory), + badGridTR); + retrieveTimer.stop(); + // System.out.println("Retrieved " + overlapInventory.size() + // + " grids"); + sourceData = getSr.getPayload(); + ssr.addMessages(getSr); + if (!ssr.isOkay()) { + ssr.addMessage("GetGridData for source for commitGrid() failure: " + + ssr.message()); + srDetailed.addMessages(ssr); + failures.add(req); + continue; + } + + // get list of official grids that overlap publish range and + // aren't contained in the publish range, these have to be + // included in the publish step. Then get the grids, shorten + // and insert into sourceData. + List officialData = new ArrayList(); + List officialTR = new ArrayList(); + for (int t = 0; t < destInventory.size(); t++) { + if (!publishTime.contains(destInventory.get(t))) { + officialTR.add(destInventory.get(t)); + } + } + + if (!officialTR.isEmpty()) { + retrieveTimer.start(); + getSr = destGP.getGridData(new GetGridRequest(destParmId, + officialTR), badGridTR); + retrieveTimer.stop(); + officialData = getSr.getPayload(); + ssr.addMessages(getSr); + if (!ssr.isOkay()) { + ssr.addMessage("GetGridData for official for commidtGrid() failure: " + + ssr.message()); + srDetailed.addMessages(ssr); + failures.add(req); + continue; + } + + // insert the grid into the "sourceGrid" list + for (int t = 0; t < officialTR.size(); t++) { + // before + try { + if (officialTR.get(t).getStart() + .before(publishTime.getStart())) { IGridSlice tempSlice = officialData.get(t) .clone(); tempSlice.setValidTime(new TimeRange(officialTR .get(t).getStart(), publishTime - .getStart())); - sourceData.add(0, tempSlice); + .getStart())); + sourceData.add(0, tempSlice); publishTime.setStart(officialTR.get(t) .getStart()); - overlapInventory.add(tempSlice.getValidTime()); - } + overlapInventory.add(tempSlice.getValidTime()); + } - // after - if (officialTR.get(t).getEnd() - .after(publishTime.getEnd())) { + // after + if (officialTR.get(t).getEnd() + .after(publishTime.getEnd())) { IGridSlice tempSlice = officialData.get(t) .clone(); tempSlice.setValidTime(new TimeRange( publishTime.getEnd(), officialTR.get(t) .getEnd())); - sourceData.add(tempSlice); - publishTime.setEnd(officialTR.get(t).getEnd()); - overlapInventory.add(tempSlice.getValidTime()); + sourceData.add(tempSlice); + publishTime.setEnd(officialTR.get(t).getEnd()); + overlapInventory.add(tempSlice.getValidTime()); + } + } catch (CloneNotSupportedException e) { + sr.addMessage("Error cloning GridSlice " + + e.getMessage()); } - } catch (CloneNotSupportedException e) { - sr.addMessage("Error cloning GridSlice " - + e.getMessage()); } } - } // save off the source grid history, to update the source // database modify the source grid data for the dest ParmID and - // GridDataHistory - Map> histories = new HashMap>(); - Date nowTime = new Date(); + // GridDataHistory + Map> histories = new HashMap>(); + Date nowTime = new Date(); - for (IGridSlice slice : sourceData) { - GridDataHistory[] sliceHist = slice.getHistory(); - for (GridDataHistory hist : sliceHist) { - hist.setPublishTime((Date) nowTime.clone()); - } - slice.getGridInfo().resetParmID(destParmId); + for (IGridSlice slice : sourceData) { + GridDataHistory[] sliceHist = slice.getHistory(); + for (GridDataHistory hist : sliceHist) { + hist.setPublishTime((Date) nowTime.clone()); + } + slice.getGridInfo().resetParmID(destParmId); histories.put(slice.getValidTime(), Arrays.asList(sliceHist)); - } + } // update the history for publish time for grids that are // unchanged - for (TimeRange tr : historyOnly.keySet()) { - List histList = historyOnly.get(tr); - for (GridDataHistory hist : histList) { - hist.setPublishTime((Date) nowTime.clone()); + for (TimeRange tr : historyOnly.keySet()) { + List histList = historyOnly.get(tr); + for (GridDataHistory hist : histList) { + hist.setPublishTime((Date) nowTime.clone()); + } + histories.put(tr, histList); } - histories.put(tr, histList); - } // update the publish times in the source database, // update the notifications - historyUpdateTimer.start(); - sr.addMessages(sourceGP.updatePublishTime(histories.values(), - (Date) nowTime.clone())); + historyUpdateTimer.start(); + sr.addMessages(sourceGP.updatePublishTime(histories.values(), + (Date) nowTime.clone())); // System.out.println("Updated " + histories.size() + // " histories"); - historyUpdateTimer.stop(); + historyUpdateTimer.stop(); List historyTimes = new ArrayList( histories.keySet()); @@ -723,56 +758,56 @@ public class GridParmManager { // update the histories of destination database for ones // that are not going to be saved since there hasn't been a // change - List historyOnlyList = new ArrayList(); - historyOnlyList.addAll(historyOnly.keySet()); + List historyOnlyList = new ArrayList(); + historyOnlyList.addAll(historyOnly.keySet()); - historyRetrieveTimer.start(); - Map> destHistory = destGP - .getGridHistory(historyOnlyList).getPayload(); - historyRetrieveTimer.stop(); - for (TimeRange tr : destHistory.keySet()) { - List srcHistList = histories.get(tr); - List destHistList = destHistory.get(tr); - for (int i = 0; i < srcHistList.size(); i++) { - destHistList.get(i).replaceValues(srcHistList.get(i)); + historyRetrieveTimer.start(); + Map> destHistory = destGP + .getGridHistory(historyOnlyList).getPayload(); + historyRetrieveTimer.stop(); + for (TimeRange tr : destHistory.keySet()) { + List srcHistList = histories.get(tr); + List destHistList = destHistory.get(tr); + for (int i = 0; i < srcHistList.size(); i++) { + destHistList.get(i).replaceValues(srcHistList.get(i)); + } } - } // only need to update the publish time on the destination // histories of grids that are not being saved (due to no // changes), because the saveGridSlices() call below will update // the publish time of the ones with changes - historyUpdateTimer.start(); - destGP.updatePublishTime(destHistory.values(), - (Date) nowTime.clone()); - historyUpdateTimer.stop(); + historyUpdateTimer.start(); + destGP.updatePublishTime(destHistory.values(), + (Date) nowTime.clone()); + historyUpdateTimer.stop(); - // save data directly to the official database (bypassing - // the checks in Parm intentionally) - storeTimer.start(); - ssr.addMessages(officialDBPtr.saveGridSlices(destParmId, - publishTime, sourceData, requestorId, historyOnlyList)); - storeTimer.stop(); + // save data directly to the official database (bypassing + // the checks in Parm intentionally) + storeTimer.start(); + ssr.addMessages(officialDBPtr.saveGridSlices(destParmId, + publishTime, sourceData, requestorId, historyOnlyList)); + storeTimer.stop(); // System.out.println("Published " + sourceData.size() + // " slices"); - if (!ssr.isOkay()) { - ssr.addMessage("SaveGridData for official for commitGrid() failure: " - + ssr.message()); - srDetailed.addMessages(ssr); - failures.add(req); - continue; - } + if (!ssr.isOkay()) { + ssr.addMessage("SaveGridData for official for commitGrid() failure: " + + ssr.message()); + srDetailed.addMessages(ssr); + failures.add(req); + continue; + } - // make the notification + // make the notification GridUpdateNotification not = new GridUpdateNotification( destParmId, publishTime, histories, requestorId, siteID); - changes.add(not); - sr.getPayload().add(not); + changes.add(not); + sr.getPayload().add(not); } finally { ClusterLockUtils.unlock(ct, false); - } + } } perfLog.logDuration("Publish Grids: Acquiring cluster lock", @@ -822,8 +857,8 @@ public class GridParmManager { this.dbMap.keySet()); sr.setPayload(databases); - return sr; - } + return sr; + } /** * Get a database if available @@ -832,6 +867,10 @@ public class GridParmManager { * @return GridDatabase or null if not available */ public GridDatabase getDatabase(DatabaseID dbId) { + return getDatabase(dbId, true); + } + + private GridDatabase getDatabase(DatabaseID dbId, boolean notify) { // look up the database in the map GridDatabase db = this.dbMap.get(dbId); @@ -846,12 +885,28 @@ public class GridParmManager { ServerResponse status = createDB(dbId); if (status.isOkay()) { db = status.getPayload(); - createDbNotification(Arrays.asList(dbId), null); + } else { + statusHandler.error(status.message()); + } } - } if (db != null) { this.addDB(db); + + // do version purging + List purged = null; + if (!db.getDbId().getModelTime() + .equals(DatabaseID.NO_MODEL_TIME)) { + purged = versionPurge(db.getDbId()); + } + + if (notify) { + createDbNotification(Arrays.asList(dbId), purged); + } + // always notify on purges + else { + createDbNotification(null, purged); + } } } @@ -862,11 +917,11 @@ public class GridParmManager { * Create a new database * * @param dbId - * @return ServerResponse containing the created database + * @return ServerResponse containing status only */ - public ServerResponse createNewDb(DatabaseID dbId) { + public ServerResponse createNewDb(DatabaseID dbId) { - ServerResponse sr = new ServerResponse(); + ServerResponse sr = new ServerResponse(); if (!dbId.getFormat().equals(DataType.GRID)) { sr.addMessage("Invalid database id for createNewDb(): " + dbId); @@ -876,6 +931,8 @@ public class GridParmManager { GridDatabase db = this.getDatabase(dbId); if (db != null) { return sr; // database already exists + } else { + sr.addMessage("Unable to create database: " + dbId); } // is it a singleton database? @@ -886,8 +943,8 @@ public class GridParmManager { return sr; } - return sr; - } + return sr; + } /** * Delete database @@ -944,91 +1001,14 @@ public class GridParmManager { if (db == null) { sr.addMessage("Database " + dbId - + " does not exist for getParmList()"); + + " does not exist for getParmList()"); return sr; - } + } sr = db.getParmList(); return sr; } - /** - * Perform database based on versions - * - * @return ServerResponse containing status only - */ - public ServerResponse versionPurge() { - - ServerResponse> sr = new ServerResponse>(); - sr = getDbInventory(); - if (!sr.isOkay()) { - sr.addMessage("VersionPurge failed - couldn't get inventory"); - return sr; - } - List currentInv = sr.getPayload(); - - // sort the inventory by site, type, model, time (most recent first) - Collections.sort(currentInv); - - // process the inventory looking for "old" unwanted databases - String model = null; - String site = null; - String type = null; - int count = 0; - int desiredVersions = 0; - for (DatabaseID dbId : currentInv) { - // new series? - if (!dbId.getSiteId().equals(site) - || !dbId.getDbType().equals(type) - || !dbId.getModelName().equals(model)) { - site = dbId.getSiteId(); - type = dbId.getDbType(); - model = dbId.getModelName(); - count = 0; - - // determine desired number of versions - desiredVersions = this.config.desiredDbVersions(dbId); - } - - // process the id and determine whether it should be purged - count++; - if ((count > desiredVersions) - && !dbId.getModelTime().equals(DatabaseID.NO_MODEL_TIME)) { - deallocateDb(dbId, true); - PurgeLogger.logInfo("Purging " + dbId, "gfe"); - } - } - - List newInv = getDbInventory().getPayload(); - List additions = new ArrayList(newInv); - additions.removeAll(currentInv); - - List deletions = new ArrayList(currentInv); - deletions.removeAll(newInv); - - // kludge to keep dbMap in synch until GridParmManager/D2DParmICache - // merge/refactor - List toRemove = new ArrayList(dbMap.keySet()); - toRemove.removeAll(newInv); - for (DatabaseID dbId : toRemove) { - if (dbMap.remove(dbId) != null) { - statusHandler - .info("Synching GridParmManager with database inventory, removing " - + dbId); - } - - // add any removals to the deletions list - // so notifications go to the other JVMs - if (!deletions.contains(dbId)) { - deletions.add(dbId); - } - } - - createDbNotification(additions, deletions); - - return sr; - } - /** * Purge grids based on time * @@ -1073,14 +1053,16 @@ public class GridParmManager { List lockNotify = new ArrayList(); GridParm gp = createParm(parmId); if (gp.isValid()) { - ServerResponse sr1 = gp.timePurge(purgeTime, + ServerResponse sr1 = gp.timePurge(purgeTime, gridNotify, lockNotify); - sr.addMessages(sr1); - purgedCount += sr1.getPayload(); + sr.addMessages(sr1); + if (sr1.isOkay()) { + purgedCount += sr1.getPayload(); + } - gridNotifications.addAll(gridNotify); - lockNotifications.addAll(lockNotify); - } + gridNotifications.addAll(gridNotify); + lockNotifications.addAll(lockNotify); + } } PurgeLogger.logInfo("Purge " + purgedCount + " items from " + dbId, @@ -1090,49 +1072,64 @@ public class GridParmManager { return sr; } - private ServerResponse createDB(DatabaseID id) { + private ServerResponse createDB(DatabaseID dbId) { + // TODO: consider merging this into getDatabase() ServerResponse status = new ServerResponse(); - GridDatabase db = this.dbMap.get(id); - if (db != null) { - status.setPayload(db); - return status; - } // already exists - - if (!id.isValid() || !id.getFormat().equals(DataType.GRID)) { + if (!dbId.isValid() || !dbId.getFormat().equals(DataType.GRID)) { status.addMessage("Database id " - + id + + dbId + " is not valid, or is not a grid-type. Cannot create database."); return status; } - // create the grid database - GridDbConfig dbConfig = this.config.gridDbConfig(id); + // get the dbConfig + IFPGridDatabase db = null; + GridDbConfig dbConfig = this.config.gridDbConfig(dbId); if (dbConfig == null) { status.addMessage("Unable to obtain GridDbConfig information for creation" - + " in createDB() for " + id); + + " in createDB() for " + dbId); } else { + // don't create if this version would be immediately purgeable + List existing = new ArrayList(); + for (DatabaseID id : this.dbMap.keySet()) { + if (id.sameModel(dbId)) { + existing.add(id); + } + } + + if (!existing.contains(dbId)) { + existing.add(dbId); + } + + // sort by model time (most recent first) + Collections.sort(existing); + + int desiredVersions = this.config.desiredDbVersions(dbId); + if (existing.indexOf(dbId) >= desiredVersions) { + status.addMessage("Unable to create " + dbId + + " as it would exceed the desired number of versions"); + return status; + } + // attempt to create the GridDatabase - db = new IFPGridDatabase(id, dbConfig); + db = new IFPGridDatabase(dbId, dbConfig); if (db.databaseIsValid()) { // get databaseID object from database - DatabaseID dbId = db.getDbId(); + DatabaseID id = db.getDbId(); - if (dbId.getRemovedDate() != null) { + if (id.getRemovedDate() != null) { // mark database as not removed - try { + try { GFEDao gfeDao = new GFEDao(); - gfeDao.setDatabaseRemovedDate(dbId, null); - statusHandler.info("Database " + dbId + " restored"); + gfeDao.setDatabaseRemovedDate(id, null); + statusHandler.info("Database " + id + " restored"); } catch (Exception e) { statusHandler.handle(Priority.PROBLEM, - "Unable to mark database restored: " + dbId, e); + "Unable to mark database restored: " + id, e); } - } - - // add to list of databases - addDB(db); + } } else { - status.addMessage("Database " + id + " is not valid."); + status.addMessage("Database " + dbId + " is not valid."); db = null; } } @@ -1141,12 +1138,13 @@ public class GridParmManager { // mark database as removed try { GFEDao gfeDao = new GFEDao(); - gfeDao.setDatabaseRemovedDate(id, new Date()); - statusHandler.warn("Database " + id + " marked for removal in " + gfeDao.setDatabaseRemovedDate(dbId, new Date()); + statusHandler.warn("Database " + dbId + + " marked for removal in " + GFEDao.REMOVED_DB_PURGE_TIME + " days."); } catch (Exception e) { statusHandler.handle(Priority.PROBLEM, - "Unable to mark database removed: " + id, e); + "Unable to mark database removed: " + dbId, e); } } @@ -1167,6 +1165,13 @@ public class GridParmManager { private void initializeManager() throws GfeException, DataAccessLayerException, PluginException { + + // add the topo database + TopoDatabase topoDb = topoMgr.getTopoDatabase(); + if (topoDb != null) { + this.addDB(topoDb); + } + // get existing list (of just GRIDs) GFEDao gfeDao = new GFEDao(); List inventory = gfeDao.getDatabaseInventory(siteID); @@ -1177,15 +1182,15 @@ public class GridParmManager { if (manID.getFormat().equals(DataType.GRID) && !inventory.contains(manID)) { inventory.add(manID); + } } - } // create the databases (the list should now only contain GRID dbs) - ServerResponse sr = new ServerResponse(); + List added = new ArrayList(inventory.size()); for (DatabaseID dbId : inventory) { - sr = createDB(dbId); - if (!sr.isOkay()) { - statusHandler.error(sr.message()); + GridDatabase db = getDatabase(dbId, false); + if (db != null) { + added.add(db.getDbId()); } } @@ -1199,7 +1204,8 @@ public class GridParmManager { D2DSatDatabase satDb = new D2DSatDatabase(config); addDB(satDb); - initD2DDbs(); + added.addAll(initD2DDbs()); + createDbNotification(added, null); // only fire smartInits if queue is instantiated SmartInitQueue queue = SmartInitQueue.getQueue(); @@ -1208,11 +1214,6 @@ public class GridParmManager { ClusterTask ct = ClusterLockUtils.lookupLock(SMART_INIT_TASK_NAME, SMART_INIT_TASK_DETAILS + siteID); - // TODO: reconsider this as changes to localConfig may change what - // smartInits should be run - // TODO: re-enable check - // if ((ct.getLastExecution() + SMART_INIT_TIMEOUT) < System - // .currentTimeMillis()) { ct = ClusterLockUtils .lock(SMART_INIT_TASK_NAME, SMART_INIT_TASK_DETAILS + siteID, SMART_INIT_TIMEOUT, false); @@ -1220,7 +1221,9 @@ public class GridParmManager { boolean clearTime = false; try { for (DatabaseID dbId : this.dbMap.keySet()) { - if (dbId.getDbType().equals("D2D")) { + if (dbId.getDbType().equals("D2D") + && !config.initModels(dbId.getModelName()) + .isEmpty()) { statusHandler.info("Firing smartinit for: " + dbId); VGridDatabase db = (VGridDatabase) getDatabase(dbId); SortedSet validTimes = db.getValidTimes(); @@ -1243,7 +1246,8 @@ public class GridParmManager { } } - private void initD2DDbs() throws GfeException { + private List initD2DDbs() { + List added = new ArrayList(); for (String d2dModelName : config.getD2dModels()) { try { // get dbId to get desiredDbVersions (date doesn't matter) @@ -1253,10 +1257,11 @@ public class GridParmManager { for (Date refTime : D2DGridDatabase.getModelRunTimes( d2dModelName, desiredVersions)) { - D2DGridDatabase db = D2DGridDatabase.getDatabase(config, - d2dModelName, refTime); + dbId = D2DGridDatabase.getDbId(d2dModelName, refTime, + config); + GridDatabase db = getDatabase(dbId, false); if (db != null) { - addDB(db); + added.add(db.getDbId()); } } } catch (Exception e) { @@ -1264,6 +1269,7 @@ public class GridParmManager { + d2dModelName, e); } } + return (added); } /** @@ -1272,29 +1278,20 @@ public class GridParmManager { public void filterGridRecords(List gridRecords) { List guns = new LinkedList(); for (GridRecord record : gridRecords) { + String d2dModelName = record.getDatasetId(); Date refTime = record.getDataTime().getRefTime(); DatabaseID dbId = D2DGridDatabase.getDbId(d2dModelName, refTime, config); + // not a d2d model we care about if (dbId == null) { continue; } - D2DGridDatabase db = (D2DGridDatabase) this.dbMap.get(dbId); + D2DGridDatabase db = (D2DGridDatabase) getDatabase(dbId, true); if (db == null) { - // New database - db = D2DGridDatabase.getDatabase(config, d2dModelName, refTime); - if (db == null) { - continue; - } - - addDB(db); - statusHandler.info("filterGridRecords new D2D database: " - + dbId); - GfeNotification dbInv = new DBInvChangeNotification( - Arrays.asList(dbId), null, siteID); - SendNotifications.send(dbInv); + continue; } GridUpdateNotification gun = db.update(record); @@ -1308,16 +1305,16 @@ public class GridParmManager { queue.queue(siteID, config, dbId, validTime, false, SmartInitRecord.LIVE_SMART_INIT_PRIORITY); } - } - } + } + } // send notifications; - try { + try { SendNotifications.send(guns); - } catch (Exception e) { + } catch (Exception e) { statusHandler.error("Unable to send grib ingest notifications", e); - } - } + } + } /** * @param records @@ -1325,7 +1322,7 @@ public class GridParmManager { public void filterSatelliteRecords(List records) { DatabaseID dbId = D2DSatDatabase.getDbId(siteID); - D2DSatDatabase db = (D2DSatDatabase) getDatabase(dbId); + D2DSatDatabase db = (D2DSatDatabase) getDatabase(dbId, true); List guns = new LinkedList(); for (SatelliteRecord record : records) { @@ -1339,9 +1336,9 @@ public class GridParmManager { Date validTime = gun.getReplacementTimeRange().getStart(); queue.queue(siteID, config, dbId, validTime, false, SmartInitRecord.LIVE_SMART_INIT_PRIORITY); + } } } - } try { SendNotifications.send(guns); @@ -1349,7 +1346,7 @@ public class GridParmManager { statusHandler.error( "Unable to send satellite ingest notifications", e); } - } + } private Date purgeTime(DatabaseID id) { int numHours = this.config.gridPurgeAgeInHours(id); @@ -1421,14 +1418,14 @@ public class GridParmManager { } else if (req.isDatabaseRequest()) { // get the parm list for this database - GridDatabase db = this.getDatabase(req.getDbId()); + GridDatabase db = this.getDatabase(req.getDbId(), true); if (db != null) { List parmList = db.getParmList().getPayload(); for (ParmID pid : parmList) { out.add(new CommitGridRequest(pid, req.getTimeRange(), req.isClientSendStatus())); - } - } else { + } + } else { sr.addMessage("Could not find database for " + req.getDbId() + " in convertToParmReq()"); } @@ -1476,7 +1473,8 @@ public class GridParmManager { private void createDbNotification(List additions, List deletions) { - if (!additions.isEmpty() || !deletions.isEmpty()) { + if ((additions != null && !additions.isEmpty()) + || (deletions != null && !deletions.isEmpty())) { DBInvChangeNotification notify = new DBInvChangeNotification( additions, deletions, siteID); SendNotifications.send(notify); @@ -1487,52 +1485,33 @@ public class GridParmManager { * @param notif */ public void handleGfeNotification(GfeNotification notif) { - // TODO: add UUID or some other identifier (hostname/process id?) to - // notif so we can recognize - // and not process notifications sent by this GridParmManager instance + // Don't handle notifications sent by this JVM + if (notif.isLocal()) { + return; + } + if (notif instanceof DBInvChangeNotification) { DBInvChangeNotification invChanged = (DBInvChangeNotification) notif; - ServerResponse sr = new ServerResponse(); + // handle additions first to try to get old out-of-synch versions + // are purged sooner for (DatabaseID dbId : invChanged.getAdditions()) { - // TODO: This is pretty much just a duplicate of what's in - // getDatabase. - // Verify this works and then remove this commented code - - // if (dbId.getDbType().equals("D2D")) { - // String d2dModelName = config.d2dModelNameMapping(dbId - // .getModelName()); - // D2DGridDatabase db = D2DGridDatabase.getDatabase(config, - // d2dModelName, dbId.getModelDate()); - // if (db != null) { - // this.addDB(db); - // } - // statusHandler - // .info("handleGfeNotification new D2D database: " - // + dbId); - // } else { - // sr = this.createDB(dbId); - // } - this.getDatabase(dbId); - } - if (!sr.isOkay()) { - statusHandler.error("Error updating GridParmManager: " - + sr.message()); + this.getDatabase(dbId, false); } for (DatabaseID dbId : invChanged.getDeletions()) { - if (this.dbMap.remove(dbId) != null) { - statusHandler - .info("handleGfeNotification removing database: " - + dbId); - } + deallocateDb(dbId, false); } } else if (notif instanceof GridUpdateNotification) { - DatabaseID satDbId = D2DSatDatabase.getDbId(siteID); GridUpdateNotification gun = (GridUpdateNotification) notif; - if (gun.getParmId().getDbId().equals(satDbId)) { - D2DSatDatabase db = (D2DSatDatabase) this.dbMap.get(satDbId); - db.update(gun); + DatabaseID dbid = gun.getParmId().getDbId(); + + // get the database as an extra attempt to + // keep the IFPServers in sync + GridDatabase db = getDatabase(dbid, false); + + if (db instanceof D2DSatDatabase) { + ((D2DSatDatabase) db).update(gun); } } } @@ -1540,11 +1519,11 @@ public class GridParmManager { /** * @param db */ - public void addDB(GridDatabase db) { + private void addDB(GridDatabase db) { DatabaseID dbId = db.getDbId(); statusHandler.info("addDB called, adding " + dbId); this.dbMap.put(dbId, db); - } + } /** * Process D2D grid data purge notification @@ -1568,64 +1547,36 @@ public class GridParmManager { newInventory.addAll(dbIds); } catch (DataAccessLayerException e) { statusHandler.error(e.getLocalizedMessage(), e); + } } } - } - - DatabaseID satDbid = D2DSatDatabase.getDbId(siteID); - - // TODO why are we processing adds in a purge method. We should get adds - // via other means - // Verify and remove the commented code - // List added = new ArrayList(newInventory); - // added.removeAll(currentInventory); - // Iterator iter = added.iterator(); - // while (iter.hasNext()) { - // DatabaseID dbid = iter.next(); - // // remove satellite database and non-D2D databases from adds - // if (!dbid.getDbType().equals("D2D") || dbid.equals(satDbid)) { - // iter.remove(); - // } else { - // // add the new database - // try { - // D2DGridDatabase db = new D2DGridDatabase(config, dbid); - // addDB(db); - // statusHandler.info("d2dGridDataPurged new D2D database: " - // + dbid); - // } catch (Exception e) { - // statusHandler.handle(Priority.PROBLEM, - // e.getLocalizedMessage(), e); - // } - // } - // } List deleted = new ArrayList(currentInventory); deleted.removeAll(newInventory); + + // don't delete NetCDF and satellite databases. + deleted.removeAll(NetCDFDatabaseManager.getDatabaseIds(siteID)); + deleted.remove(D2DSatDatabase.getDbId(siteID)); + Iterator iter = deleted.iterator(); while (iter.hasNext()) { DatabaseID dbid = iter.next(); - // remove satellite database and non-D2D databases from deletes - if (!dbid.getDbType().equals("D2D") || dbid.equals(satDbid)) { + // don't delete non-D2D databases + if (!dbid.getDbType().equals("D2D")) { iter.remove(); } else { // remove the database - if (this.dbMap.remove(dbid) != null) { - statusHandler.info("d2dGridDataPurged removing database: " - + dbid); - } - } + deallocateDb(dbid, false); } + } - // if ((added.size() > 0) || (deleted.size() > 0)) { - // DBInvChangeNotification changed = new DBInvChangeNotification( - // added, deleted, siteID); if (deleted.size() > 0) { DBInvChangeNotification changed = new DBInvChangeNotification(null, deleted, siteID); SendNotifications.send(changed); - } } + } /** * Process D2D satellite data purge notification @@ -1638,4 +1589,41 @@ public class GridParmManager { SendNotifications.send(notifs); } + + /** + * Perform database purge based on versions for the given model + * + * @param modelToPurge + * DatabaseID for model to be purged + * + * @return list of purged databases + */ + public List versionPurge(DatabaseID modelToPurge) { + int desiredVersions = this.config.desiredDbVersions(modelToPurge); + + List currentInv = new ArrayList( + this.dbMap.keySet()); + // sort the inventory by site, type, model, time (most recent first) + Collections.sort(currentInv); + + // process the inventory looking for "old" unwanted databases + List purged = new ArrayList(); + int count = 0; + for (DatabaseID dbId : currentInv) { + if (dbId.sameModel(modelToPurge)) { + + // process the id and determine whether it should be purged + count++; + if ((count > desiredVersions) + && !dbId.getModelTime() + .equals(DatabaseID.NO_MODEL_TIME)) { + deallocateDb(dbId, true); + purged.add(dbId); + PurgeLogger.logInfo("Purging " + dbId, "gfe"); + } + } + } + + return purged; + } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/IFPServer.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/IFPServer.java index f417b02a63..3239670d8b 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/IFPServer.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/IFPServer.java @@ -60,8 +60,9 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * May 30, 2013 2044 randerso Initial creation - * Nov 20, 2013 #2331 randerso Added getTopoData method + * May 30, 2013 #2044 randerso Initial creation + * Nov 20, 2013 #2331 randerso Added getTopoData method + * Oct 07, 2014 #3684 randerso Restructured IFPServer start up * * * @@ -191,26 +192,21 @@ public class IFPServer { return activeServers.get(siteID); } - String siteId; + private String siteId; - IFPServerConfig config; + private IFPServerConfig config; - GridParmManager gridParmMgr; - - LockManager lockMgr; - - TopoDatabaseManager topoMgr; // TODO do we need this? + private GridParmManager gridParmMgr; private IFPServer(String siteId, IFPServerConfig config) throws DataAccessLayerException, PluginException, GfeException { this.siteId = siteId; this.config = config; - this.lockMgr = new LockManager(siteId, config); - this.gridParmMgr = new GridParmManager(siteId, config, lockMgr); - this.topoMgr = new TopoDatabaseManager(siteId, config, gridParmMgr); statusHandler.info("MapManager initializing..."); new MapManager(config); + + this.gridParmMgr = new GridParmManager(siteId, config); } private void dispose() { @@ -258,14 +254,14 @@ public class IFPServer { * @return the lockMgr */ public LockManager getLockMgr() { - return lockMgr; + return this.gridParmMgr.getLockMgr(); } /** * @return the topoMgr */ public TopoDatabaseManager getTopoMgr() { - return topoMgr; + return this.gridParmMgr.getTopoMgr(); } /** @@ -317,8 +313,6 @@ public class IFPServer { */ public static void filterDataURINotifications( DataURINotificationMessage message) throws Exception { - // ITimer timer = TimeUtil.getTimer(); - // timer.start(); List gridRecords = new LinkedList(); List satRecords = new LinkedList(); @@ -332,26 +326,12 @@ public class IFPServer { for (IFPServer ifpServer : getActiveServers()) { if (!gridRecords.isEmpty()) { - // TODO: remove this info before check in - String msg = "Processing " + gridRecords.size() - + " grid DataURINotifications"; - statusHandler.info(msg); - ifpServer.getGridParmMgr().filterGridRecords(gridRecords); } if (!satRecords.isEmpty()) { - // TODO: remove this info before check in - String msg = "Processing " + satRecords.size() - + " satellite DataURINotifications"; - statusHandler.info(msg); - ifpServer.getGridParmMgr().filterSatelliteRecords(satRecords); } } - // timer.stop(); - // perfLog.logDuration( - // "GfeIngestNotificationFilter: processing DataURINotificationMessage", - // timer.getElapsedTime()); } /** @@ -362,7 +342,7 @@ public class IFPServer { * @return topo gridslice */ public ServerResponse getTopoData(GridLocation gloc) { - return this.topoMgr.getTopoData(gloc); + return getTopoMgr().getTopoData(gloc); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/D2DGridDatabase.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/D2DGridDatabase.java index 583872025a..0c66d78ad9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/D2DGridDatabase.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/D2DGridDatabase.java @@ -45,7 +45,6 @@ import com.raytheon.edex.plugin.gfe.db.dao.GFED2DDao; import com.raytheon.edex.plugin.gfe.paraminfo.GridParamInfo; import com.raytheon.edex.plugin.gfe.paraminfo.GridParamInfoLookup; import com.raytheon.edex.plugin.gfe.paraminfo.ParameterInfo; -import com.raytheon.uf.common.comm.CommunicationException; import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory; import com.raytheon.uf.common.dataplugin.gfe.RemapGrid; @@ -114,6 +113,10 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * Added function to create a D2DGridDatabase object only if there is * data in postgres for the desired model/reftime * 04/17/2014 #2934 dgilling Change getGridParmInfo to use D2DParm's GridParmInfo. + * 05/22/2014 #3071 randerso Improved error logging + * 06/24/2014 #3317 randerso Don't allow database to be created if it exceeds D2DDBVERSIONS and + * should be purged. + * Sep 09, 2014 3356 njensen Remove CommunicationException * * * @@ -176,8 +179,9 @@ public class D2DGridDatabase extends VGridDatabase { String d2dModelName, Date refTime) { try { GFED2DDao dao = new GFED2DDao(); - // TODO create query for single refTime - List result = dao.getModelRunTimes(d2dModelName, -1); + int dbVersions = config.desiredDbVersions(getDbId(d2dModelName, + refTime, config)); + List result = dao.getModelRunTimes(d2dModelName, dbVersions); if (result.contains(refTime)) { D2DGridDatabase db = new D2DGridDatabase(config, d2dModelName, @@ -808,10 +812,13 @@ public class D2DGridDatabase extends VGridDatabase { long t0 = System.currentTimeMillis(); + Integer fcstHr = null; try { // Gets the metadata from the grib metadata database D2DParm parm = this.gfeParms.get(parmId); - Integer fcstHr = null; + if (parm == null) { + throw new GfeException("Unknown parmId: " + parmId); + } if (!GridPathProvider.STATIC_PARAMETERS.contains(parmId .getParmName())) { fcstHr = parm.getTimeRangeToFcstHr().get(timeRange); @@ -822,9 +829,10 @@ public class D2DGridDatabase extends VGridDatabase { } d2dRecord = d2dDao.getGrid(d2dModelName, refTime, parm.getComponents()[0], parm.getLevel(), fcstHr, gpi); - } catch (DataAccessLayerException e) { + } catch (Exception e) { throw new GfeException( - "Error retrieving D2D Grid record from database", e); + "Error retrieving D2D Grid record from database for " + + parmId + " fcstHr: " + fcstHr, e); } long t1 = System.currentTimeMillis(); @@ -964,9 +972,10 @@ public class D2DGridDatabase extends VGridDatabase { throw new GfeException("Unable to remap UV wind grids", e); } return; - } catch (DataAccessLayerException e) { + } catch (Exception e) { throw new GfeException( - "Unable to retrieve wind grids from D2D database", e); + "Unable to retrieve wind grids from D2D database for " + + parmId + " fcstHr: " + fcstHr, e); } } else { @@ -999,9 +1008,10 @@ public class D2DGridDatabase extends VGridDatabase { throw new GfeException("Unable to remap wind grids", e); } return; - } catch (DataAccessLayerException e) { + } catch (Exception e) { throw new GfeException( - "Unable to retrieve wind grids from D2D database", e); + "Unable to retrieve wind grids from D2D database for " + + parmId + " fcstHr: " + fcstHr, e); } } } @@ -1227,15 +1237,10 @@ public class D2DGridDatabase extends VGridDatabase { private Level getD2DLevel(String gfeLevel) { List levels = Collections.emptyList(); - try { - LevelMapping lm = LevelMappingFactory.getInstance( - GFE_LEVEL_MAPPING_FILE).getLevelMappingForKey(gfeLevel); - - if (lm != null) { - levels = lm.getLevels(); - } - } catch (CommunicationException e) { - // do nothing + LevelMapping lm = LevelMappingFactory.getInstance( + GFE_LEVEL_MAPPING_FILE).getLevelMappingForKey(gfeLevel); + if (lm != null) { + levels = lm.getLevels(); } Level level = null; @@ -1250,12 +1255,8 @@ public class D2DGridDatabase extends VGridDatabase { private String getGFELevel(Level d2dLevel) { LevelMapping levelMapping; - try { - levelMapping = LevelMappingFactory.getInstance( - GFE_LEVEL_MAPPING_FILE).getLevelMappingForLevel(d2dLevel); - } catch (CommunicationException e) { - levelMapping = null; - } + levelMapping = LevelMappingFactory.getInstance(GFE_LEVEL_MAPPING_FILE) + .getLevelMappingForLevel(d2dLevel); String gfeLevel = null; if (levelMapping == null) { diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java index bfa4d09b0a..098f0f61d0 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/IFPGridDatabase.java @@ -114,6 +114,8 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * 08/05/13 #1571 randerso Refactored to store GridParmInfo and ParmStorageinfo in postgres database * 10/31/2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() * 12/10/13 #2611 randerso Change saveGridData to set update time when saving grids + * 05/29/2014 #3071 randerso Fix NPE in getCachedParmID + * 09/21/2014 #3648 randerso Changed deleteDatabase to handle database already being deleted by other JVM * * * @@ -154,22 +156,22 @@ public class IFPGridDatabase extends GridDatabase { this.valid = true; ServerResponse failResponse = new ServerResponse(); - try { - // lookup actual database id row from database - // if it doesn't exist, it will be created at this point + try { + // lookup actual database id row from database + // if it doesn't exist, it will be created at this point this.dao = new GFEDao(); // Make a DatabaseID and save it. - this.dbId = dao.getDatabaseId(dbId); - } catch (Exception e) { + this.dbId = dao.getDatabaseId(dbId); + } catch (Exception e) { String msg = "Unable to look up database id for ifp database: " + dbId; statusHandler.handle(Priority.PROBLEM, msg, e); failResponse.addMessage(msg); - } + } if (!failInitCheck(failResponse)) { return; - } + } // Get the current database configuration and store the information // in private data _parmInfo, _parmStorageInfo, and _areaStorageInfo @@ -220,7 +222,7 @@ public class IFPGridDatabase extends GridDatabase { statusHandler.error("DatabaseFAIL: " + this.dbId + "\n" + failResponse.getMessages()); this.valid = false; - } + } return this.valid; } @@ -574,19 +576,19 @@ public class IFPGridDatabase extends GridDatabase { * The list of parms to delete */ private void removeOldParms(List parms) { - for (String item : parms) { - statusHandler.handle(Priority.INFO, "Removing: " + item - + " from the " + this.dbId + " database."); - try { - // Remove the entire data structure for the parm + for (String item : parms) { + statusHandler.handle(Priority.INFO, "Removing: " + item + + " from the " + this.dbId + " database."); + try { + // Remove the entire data structure for the parm dao.removeParm(parmStorageInfo.get(item).getParmID()); - this.parmStorageInfo.remove(item); - } catch (DataAccessLayerException e) { - statusHandler.handle(Priority.PROBLEM, "Error removing: " - + item + " from the database"); - } + this.parmStorageInfo.remove(item); + } catch (DataAccessLayerException e) { + statusHandler.handle(Priority.PROBLEM, "Error removing: " + + item + " from the database"); } } + } @Override public ServerResponse> getParmList() { @@ -1138,7 +1140,7 @@ public class IFPGridDatabase extends GridDatabase { if (!glocUser.equals(glocDb)) { // save/update the database GridLocation - try { + try { dao.saveOrUpdateGridLocation(glocUser); // remap the actual gridded data to the new gridLocation @@ -1177,7 +1179,7 @@ public class IFPGridDatabase extends GridDatabase { ParmStorageInfo newPSI = parmStorageInfoUser.get(compositeName); if (newPSI == null) { continue; // this parm not in new database, so skip - } + } GridParmInfo newGPI = newPSI.getGridParmInfo(); @@ -1197,12 +1199,12 @@ public class IFPGridDatabase extends GridDatabase { statusHandler.error("Unable to retrieve GFERecords for " + compositeName, e); continue; - } + } // process each grid - for (GFERecord rec : records) { - List times = new ArrayList(); - times.add(rec.getTimeRange()); + for (GFERecord rec : records) { + List times = new ArrayList(); + times.add(rec.getTimeRange()); ServerResponse> ssr = this.getGridData( rec.getParmId(), times, oldGL); sr.addMessages(ssr); @@ -1213,24 +1215,24 @@ public class IFPGridDatabase extends GridDatabase { continue; } IGridSlice slice = ssr.getPayload().get(0); - IGridSlice newSlice = null; - try { - switch (slice.getGridInfo().getGridType()) { - case NONE: - break; - case SCALAR: - ScalarGridSlice scalarSlice = (ScalarGridSlice) slice; + IGridSlice newSlice = null; + try { + switch (slice.getGridInfo().getGridType()) { + case NONE: + break; + case SCALAR: + ScalarGridSlice scalarSlice = (ScalarGridSlice) slice; Grid2DFloat newGrid = remapper.remap(scalarSlice .getScalarGrid(), scalarSlice.getGridInfo() .getMinValue(), scalarSlice.getGridInfo() .getMaxValue(), scalarSlice.getGridInfo() .getMinValue(), scalarSlice.getGridInfo() - .getMinValue()); - scalarSlice.setScalarGrid(newGrid); - newSlice = scalarSlice; - break; - case VECTOR: - VectorGridSlice vectorSlice = (VectorGridSlice) slice; + .getMinValue()); + scalarSlice.setScalarGrid(newGrid); + newSlice = scalarSlice; + break; + case VECTOR: + VectorGridSlice vectorSlice = (VectorGridSlice) slice; Grid2DFloat magOutput = new Grid2DFloat(newGL.getNx(), newGL.getNy()); Grid2DFloat dirOutput = new Grid2DFloat(newGL.getNx(), @@ -1241,38 +1243,38 @@ public class IFPGridDatabase extends GridDatabase { .getMaxValue(), vectorSlice.getGridInfo() .getMinValue(), vectorSlice.getGridInfo() .getMinValue(), magOutput, dirOutput); - vectorSlice.setDirGrid(dirOutput); - vectorSlice.setMagGrid(magOutput); - newSlice = vectorSlice; - break; - case WEATHER: - WeatherGridSlice weatherSlice = (WeatherGridSlice) slice; + vectorSlice.setDirGrid(dirOutput); + vectorSlice.setMagGrid(magOutput); + newSlice = vectorSlice; + break; + case WEATHER: + WeatherGridSlice weatherSlice = (WeatherGridSlice) slice; Grid2DByte newWeatherGrid = remapper.remap( - weatherSlice.getWeatherGrid(), 0, 0); - weatherSlice.setWeatherGrid(newWeatherGrid); - newSlice = weatherSlice; - break; - case DISCRETE: - DiscreteGridSlice discreteSlice = (DiscreteGridSlice) slice; + weatherSlice.getWeatherGrid(), 0, 0); + weatherSlice.setWeatherGrid(newWeatherGrid); + newSlice = weatherSlice; + break; + case DISCRETE: + DiscreteGridSlice discreteSlice = (DiscreteGridSlice) slice; Grid2DByte newDiscreteGrid = remapper.remap( - discreteSlice.getDiscreteGrid(), 0, 0); - discreteSlice.setDiscreteGrid(newDiscreteGrid); - newSlice = discreteSlice; - break; - } - newSlice.setGridInfo(newGPI); - rec.setMessageData(newSlice); - this.removeFromHDF5(rec); - this.saveGridsToHdf5(Arrays.asList(rec), newPSI); - } catch (Exception e) { - statusHandler.handle(Priority.PROBLEM, - "Error remapping data for record [" + rec + "]", e); - } + discreteSlice.getDiscreteGrid(), 0, 0); + discreteSlice.setDiscreteGrid(newDiscreteGrid); + newSlice = discreteSlice; + break; } + newSlice.setGridInfo(newGPI); + rec.setMessageData(newSlice); + this.removeFromHDF5(rec); + this.saveGridsToHdf5(Arrays.asList(rec), newPSI); + } catch (Exception e) { + statusHandler.handle(Priority.PROBLEM, + "Error remapping data for record [" + rec + "]", e); } + } + } return sr; - } + } private ServerResponse getDBConfiguration() { ServerResponse sr = new ServerResponse(); @@ -1293,9 +1295,9 @@ public class IFPGridDatabase extends GridDatabase { + e.getLocalizedMessage(); statusHandler.error(msg, e); sr.addMessage(msg); - } - return sr; } + return sr; + } private void compareParmInfoWithDB( Map parmStorageInfoUser, @@ -1390,12 +1392,12 @@ public class IFPGridDatabase extends GridDatabase { return null; } else { psi = this.gridDbConfig.getParmStorageInfo(nameLevel[0], - nameLevel[1]); - if (psi == null) { - statusHandler.handle(Priority.DEBUG, compositeName - + " not found in ParmStorageInfo config"); + nameLevel[1]); + if (psi == null) { + statusHandler.handle(Priority.DEBUG, compositeName + + " not found in ParmStorageInfo config"); return null; - } + } } psi.getGridParmInfo().resetParmID( @@ -1726,7 +1728,7 @@ public class IFPGridDatabase extends GridDatabase { first = false; } else { sb.append(GfeUtil.KEY_SEPARATOR); - } + } sb.append(key.toString()); } byte[] keyBytes = sb.toString().getBytes(); @@ -2037,15 +2039,18 @@ public class IFPGridDatabase extends GridDatabase { * the DatabaseID of the datbase to be deleted */ public static void deleteDatabase(DatabaseID id) { + boolean purged = false; try { GFEDao gfeDao = new GFEDao(); - gfeDao.purgeGFEGrids(id); + purged = gfeDao.purgeGFEGrids(id); } catch (Exception e) { statusHandler.handle(Priority.PROBLEM, "Unable to delete model database: " + id, e); } - deleteModelHDF5(id); + if (purged) { + deleteModelHDF5(id); + } } /** @@ -2168,8 +2173,12 @@ public class IFPGridDatabase extends GridDatabase { @Override public ParmID getCachedParmID(ParmID parmId) throws UnknownParmIdException { - ParmID rval = this.parmStorageInfo.get(parmId.getCompositeName()) - .getParmID(); + ParmID rval = null; + ParmStorageInfo psi = this.parmStorageInfo.get(parmId + .getCompositeName()); + if (psi != null) { + rval = psi.getParmID(); + } if (rval == null) { throw new UnknownParmIdException("ParmId: " + parmId.toString() diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/NetCDFFile.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/NetCDFFile.java index 38ec2c3c3f..bbfe1bc034 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/NetCDFFile.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/NetCDFFile.java @@ -25,7 +25,9 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; import ucar.ma2.ArrayChar; import ucar.ma2.ArrayFloat; @@ -54,7 +56,9 @@ import com.raytheon.uf.common.time.TimeRange; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * May 14, 2012 randerso Initial creation + * May 14, 2012 randerso Initial creation + * Jun 04, 2014 #3130 randerso Fix thread safety issues with NetcdfFile variable. + * General code cleanup * * * @@ -83,8 +87,6 @@ public class NetCDFFile { private List levelNames; - // private long possibleInventoryBits; - public ParmAtts() { maxVal = 0; minVal = 0; @@ -238,15 +240,13 @@ public class NetCDFFile { private String fname; - private NetcdfFile cdf; - private Date modelTime; private String modelName; private List availableTimes; - private List atts; + private Map atts; private ProjectionData projection; @@ -268,24 +268,34 @@ public class NetCDFFile { public NetCDFFile(String fname, String overrideModelName) { this.valid = false; this.fname = fname; - this.cdf = null; - - // NcError nce(NcError::silent_nonfatal); CHECK_STATE(setModelTime()); - CHECK_STATE(openCDF()); - if (overrideModelName == null || overrideModelName.length() > 0) { - this.modelName = overrideModelName; - } else { - CHECK_STATE(getModel()); + NetcdfFile cdf = null; + try { + cdf = NetcdfFile.open(this.fname); + if ((overrideModelName == null) || (overrideModelName.length() > 0)) { + this.modelName = overrideModelName; + } else { + CHECK_STATE(getModel(cdf)); + } + CHECK_STATE(getProj(cdf)); + CHECK_STATE(getTimes(cdf)); + getTPDurations(cdf); + CHECK_STATE(getNames(cdf)); + this.valid = true; + } catch (IOException e) { + statusHandler.error("Error opening NetCDF file: " + fname, e); + } finally { + if (cdf != null) { + try { + cdf.close(); + } catch (IOException e) { + statusHandler.handle(Priority.PROBLEM, + "Error closing netCDF file " + this.fname + ": " + + e.getLocalizedMessage(), e); + } + } } - CHECK_STATE(getProj()); - CHECK_STATE(getTimes()); - getTPDurations(); - CHECK_STATE(getNames()); - - closeCDF(); - this.valid = true; } private void CHECK_STATE(ServerResponse sr) { @@ -315,10 +325,6 @@ public class NetCDFFile { return availableTimes; } - public List getAtts() { - return atts; - } - public ProjectionData getProjection() { return projection; } @@ -337,7 +343,7 @@ public class NetCDFFile { private ServerResponse getFloatVarAtt(Variable var, String name) { ServerResponse sr = new ServerResponse(); Attribute att = var.findAttribute(name); - if (att == null || !att.getDataType().equals(DataType.FLOAT)) { + if ((att == null) || !att.getDataType().equals(DataType.FLOAT)) { sr.addMessage("Missing or invalid attribute: " + name); return sr; } @@ -361,7 +367,7 @@ public class NetCDFFile { private ServerResponse getStringVarAtt(Variable var, String name) { ServerResponse sr = new ServerResponse(); Attribute att = var.findAttribute(name); - if (att == null || !att.getDataType().equals(DataType.STRING)) { + if ((att == null) || !att.getDataType().equals(DataType.STRING)) { sr.addMessage("Missing or invalid attribute: " + name); return sr; } @@ -371,8 +377,8 @@ public class NetCDFFile { return sr; } - private ServerResponse getProj() { - ServerResponse sr = NetCDFUtils.getProj(this.cdf); + private ServerResponse getProj(NetcdfFile cdf) { + ServerResponse sr = NetCDFUtils.getProj(cdf); if (sr.isOkay()) { this.projection = sr.getPayload(); } @@ -383,10 +389,7 @@ public class NetCDFFile { * @return a list of parm names found in this netCDF file. */ public List getParmNames() { - List rval = new ArrayList(this.atts.size()); - for (int i = 0; i < atts.size(); i++) { - rval.add(atts.get(i).getName()); - } + List rval = new ArrayList(this.atts.keySet()); return rval; } @@ -421,7 +424,7 @@ public class NetCDFFile { * @param var * @return */ - private ServerResponse getParmAtts(Variable var) { + private ServerResponse getParmAtts(NetcdfFile cdf, Variable var) { ServerResponse sr = new ServerResponse(); String units, longname; @@ -450,7 +453,7 @@ public class NetCDFFile { if (!tsrmin.isOkay() || !tsrmax.isOkay()) { Attribute att = var.findAttribute("valid_range"); - if (att != null && att.getLength() == 2 + if ((att != null) && (att.getLength() == 2) && att.getDataType().equals(DataType.FLOAT)) { min = att.getNumericValue(0).floatValue(); max = att.getNumericValue(1).floatValue(); @@ -528,7 +531,7 @@ public class NetCDFFile { // Y coordinate = time, X coordinate = levels for (int y = 0; y < dims[0]; y++) { for (int x = 0; x < idims[1]; x++) { - char c = (char) dta.getByte(y * idims[1] + x); + char c = (char) dta.getByte((y * idims[1]) + x); byte b = (byte) (c == '1' ? 1 : 0); inventory.set(x, y, b); } @@ -582,11 +585,13 @@ public class NetCDFFile { * * @return */ - private ServerResponse getNames() { + private ServerResponse getNames(NetcdfFile cdf) { ServerResponse sr = new ServerResponse(); - this.atts = new ArrayList(); - for (Variable var : this.cdf.getVariables()) { + List variables = cdf.getVariables(); + this.atts = new HashMap(variables.size(), + 1.0f); + for (Variable var : variables) { if (var != null) { if (!var.getDataType().equals(DataType.FLOAT)) { continue; @@ -614,10 +619,11 @@ public class NetCDFFile { } } if (foundx && foundy) { - ServerResponse tsr = getParmAtts(var); + ServerResponse tsr = getParmAtts(cdf, var); sr.addMessages(tsr); if (tsr.isOkay()) { - this.atts.add(tsr.getPayload()); + ParmAtts parmAtts = tsr.getPayload(); + this.atts.put(parmAtts.getName(), parmAtts); } } } @@ -631,7 +637,7 @@ public class NetCDFFile { * model files. * */ - private void getTPDurations() { + private void getTPDurations(NetcdfFile cdf) { this.tpSubPrev = new ArrayList(getAvailableTimes().size()); for (int i = 0; i < getAvailableTimes().size(); i++) { this.tpSubPrev.add(false); @@ -640,8 +646,8 @@ public class NetCDFFile { long duration = (getAvailableTimes().get(1).getStart().getTime() - getAvailableTimes() .get(0).getStart().getTime()) / 1000; String s = String.format("_tp%d", (duration / 3600) * 2); - Variable tvar = this.cdf.findVariable(s); - if (tvar != null && tvar.getDataType().equals(DataType.FLOAT)) { + Variable tvar = cdf.findVariable(s); + if ((tvar != null) && tvar.getDataType().equals(DataType.FLOAT)) { Dimension d1 = tvar.getDimension(0); if (d1 != null) { try { @@ -665,10 +671,10 @@ public class NetCDFFile { * * @return ServerResponse */ - private ServerResponse getTimes() { + private ServerResponse getTimes(NetcdfFile cdf) { ServerResponse sr = new ServerResponse(); - Variable tvar = this.cdf.findVariable("valtimeMINUSreftime"); - if (tvar == null || !tvar.getDataType().equals(DataType.INT)) { + Variable tvar = cdf.findVariable("valtimeMINUSreftime"); + if ((tvar == null) || !tvar.getDataType().equals(DataType.INT)) { sr.addMessage("Missing or invalid 'valtimeMINUSreftime' var."); } else { Dimension d1 = tvar.getDimension(0); @@ -681,8 +687,9 @@ public class NetCDFFile { d1.getLength()); for (int i = 0; i < d1.getLength(); i++) { this.availableTimes.add(new TimeRange(new Date( - this.modelTime.getTime() + times.getInt(i) - * 1000L), 3600 * 1000)); + this.modelTime.getTime() + + (times.getInt(i) * 1000L)), + 3600 * 1000)); } } catch (IOException e) { statusHandler.handle( @@ -702,10 +709,10 @@ public class NetCDFFile { * * @return ServerResponse */ - private ServerResponse getModel() { + private ServerResponse getModel(NetcdfFile cdf) { ServerResponse sr = new ServerResponse(); - Variable mvar = this.cdf.findVariable("model"); - if (mvar == null || !mvar.getDataType().equals(DataType.CHAR)) { + Variable mvar = cdf.findVariable("model"); + if ((mvar == null) || !mvar.getDataType().equals(DataType.CHAR)) { sr.addMessage("Missing or invalid 'model' var."); } else { try { @@ -720,40 +727,6 @@ public class NetCDFFile { return sr; } - /** - * Attempts to open the netcdf file. If it can not be opened (or is not a - * valid cdf file) then an invalid ServerResponse is returned. - * - * @return ServerResponse - */ - private ServerResponse openCDF() { - ServerResponse sr = new ServerResponse(); - try { - this.cdf = NetcdfFile.open(this.fname); - if (this.cdf == null) { - sr.addMessage("Invalid NetCDF file: " + this.fname); - } - } catch (IOException e) { - statusHandler.handle(Priority.PROBLEM, "Error opening netCDF file " - + this.fname + ": " + e.getLocalizedMessage(), e); - } - return sr; - } - - /** - * Closes the netcdf file. - * - */ - private void closeCDF() { - try { - this.cdf.close(); - } catch (IOException e) { - statusHandler.handle(Priority.PROBLEM, "Error closing netCDF file " - + this.fname + ": " + e.getLocalizedMessage(), e); - } - this.cdf = null; - } - /** * Attempts to determine the models run time. If it fails, an invalid * ServerResponse will be returned. @@ -774,51 +747,48 @@ public class NetCDFFile { * @return the ParmAtts */ public ParmAtts getAtts(String parmName) { - for (ParmAtts a : this.atts) { - if (a.getName().equals(parmName)) { - return a; - } - } - return null; + return this.atts.get(parmName); } public Grid2DFloat getGrid(String parmName, int index, int level, Rectangle subdomain) { - ParmAtts atts = getAtts(parmName); - if (atts == null) { + if (!this.atts.containsKey(parmName)) { statusHandler.handle(Priority.PROBLEM, "Unknown parm name: " + parmName); return null; } - if (!openCDF().isOkay()) { - statusHandler.handle(Priority.PROBLEM, "Error opening CDF File: " - + this.fname); - this.valid = false; - return null; - } + NetcdfFile cdf = null; + try { + cdf = NetcdfFile.open(this.fname); - for (ParmAtts a : this.atts) { - if (parmName.equals(a.getName())) { - Grid2DFloat grid = null; - ServerResponse sr = NetCDFUtils.getFloatGrid( - this.cdf, parmName, index, level, subdomain); - if (!sr.isOkay()) { - closeCDF(); - statusHandler.handle(Priority.PROBLEM, sr.message()); - return null; - } else { - grid = sr.getPayload(); + Grid2DFloat grid = null; + ServerResponse sr = NetCDFUtils.getFloatGrid(cdf, + parmName, index, level, subdomain); + if (!sr.isOkay()) { + statusHandler.handle(Priority.PROBLEM, sr.message()); + return null; + } else { + grid = sr.getPayload(); + } + + return grid; + } catch (IOException e) { + statusHandler.error("Error opening NetCDF file: " + fname, e); + } finally { + if (cdf != null) { + try { + cdf.close(); + } catch (IOException e) { + statusHandler.handle(Priority.PROBLEM, + "Error closing netCDF file " + this.fname + ": " + + e.getLocalizedMessage(), e); } - - closeCDF(); - return grid; } } statusHandler .handle(Priority.PROBLEM, "unknown parm name: " + parmName); - closeCDF(); return null; } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabase.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabase.java index e91729cc3e..ac98e53ae6 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabase.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabase.java @@ -231,12 +231,15 @@ public class TopoDatabase extends VGridDatabase { TR); ServerResponse srRetrieve = topoMgr .getTopoData(gloc); - sr.addMessages(srRetrieve); - ScalarGridSlice tempgs = srRetrieve.getPayload(); - IGridSlice gs = new ScalarGridSlice(TR, gpi, - new GridDataHistory[] { gdh }, tempgs.getScalarGrid()); - data.add(gs); - sr.setPayload(data); + if (srRetrieve.isOkay()) { + ScalarGridSlice tempgs = srRetrieve.getPayload(); + IGridSlice gs = new ScalarGridSlice(TR, gpi, + new GridDataHistory[] { gdh }, tempgs.getScalarGrid()); + data.add(gs); + sr.setPayload(data); + } else { + sr.addMessages(srRetrieve); + } } return sr; diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabaseManager.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabaseManager.java index c4409b0789..cf1f43b5c7 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabaseManager.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/database/TopoDatabaseManager.java @@ -30,7 +30,6 @@ import javax.measure.unit.NonSI; import javax.measure.unit.SI; import com.raytheon.edex.plugin.gfe.config.IFPServerConfig; -import com.raytheon.edex.plugin.gfe.server.GridParmManager; import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory; import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory.OriginType; import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID; @@ -57,6 +56,7 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.TimeRange; +import com.raytheon.uf.common.topo.TopoException; import com.raytheon.uf.common.topo.TopoQuery; /** @@ -75,6 +75,7 @@ import com.raytheon.uf.common.topo.TopoQuery; * code cleanup * Nov 20, 2013 #2331 randerso Changed return type of getTopoData * Feb 11, 2014 #2788 randerso Set missing data points to 0 to match A1 + * Oct 07, 2014 #3684 randerso Restructured IFPServer start up * * * @@ -100,10 +101,8 @@ public class TopoDatabaseManager { * * @param siteID * @param config - * @param gridMgr */ - public TopoDatabaseManager(String siteID, IFPServerConfig config, - GridParmManager gridMgr) { + public TopoDatabaseManager(String siteID, IFPServerConfig config) { this.config = config; statusHandler.info("Topography Manager started for " + siteID); @@ -118,15 +117,20 @@ public class TopoDatabaseManager { // create the disk cache createDiskCache(gloc); - // Add the topo database. + statusHandler.info("Topography Manager ready for " + siteID); + } + + /** + * @return the topo database + */ + public TopoDatabase getTopoDatabase() { TopoDatabase tdb = new TopoDatabase(this.config, this); if (tdb.databaseIsValid()) { - gridMgr.addDB(tdb); + return tdb; } else { statusHandler.error("Invalid Topo database"); } - - statusHandler.info("Topography Manager ready for " + siteID); + return null; } /** @@ -139,7 +143,7 @@ public class TopoDatabaseManager { public ServerResponse getTopoData(final GridLocation gloc) { ServerResponse sr = new ServerResponse(); ScalarGridSlice data = new ScalarGridSlice(); - Grid2DFloat grid; + Grid2DFloat grid = null; String cacheGroupName = calcGroupName(gloc); try { @@ -154,20 +158,27 @@ public class TopoDatabaseManager { // create new cache since file doesn't exist statusHandler.handle(Priority.DEBUG, "Calculating Topography for " + gloc); - grid = processTopography(gloc, config.isTopoAllowedBelowZero()); - if (grid.isValid()) { - writeTopoData(gloc, grid); + + try { + grid = processTopography(gloc, config.isTopoAllowedBelowZero()); + if (grid.isValid()) { + writeTopoData(gloc, grid); + } else { + sr.addMessage("Error calculating topography for " + gloc); + } + } catch (TopoException e1) { + sr.addMessage("Unable to calculate topography for " + gloc); } } // convert to IGridSlice if (sr.isOkay()) { data = makeGridSlice(gloc, grid); + sr.setPayload(data); } else { sr.addMessage("Unable to provide topography grid"); } - sr.setPayload(data); return sr; } @@ -225,9 +236,10 @@ public class TopoDatabaseManager { * If set to false, values less than zero in the grid will be set * to 0. * @return The topography grid. + * @throws TopoException */ private Grid2DFloat processTopography(final GridLocation gloc, - boolean allowValuesBelowZero) { + boolean allowValuesBelowZero) throws TopoException { float[] heights = TopoQuery.getInstance().getHeight( MapUtil.getGridGeometry(gloc)); UnitConverter cvt = SI.METER.getConverterTo(NonSI.FOOT); @@ -263,10 +275,18 @@ public class TopoDatabaseManager { if (!cachedFiles.contains(calcGroupName(gloc))) { // if not in list, then we need to make one statusHandler.debug("Calculating Topography for " + gloc); - Grid2DFloat grid = processTopography(gloc, - config.isTopoAllowedBelowZero()); - if (grid.isValid()) { - writeTopoData(gloc, grid); + try { + Grid2DFloat grid = processTopography(gloc, + config.isTopoAllowedBelowZero()); + if (grid.isValid()) { + writeTopoData(gloc, grid); + } else { + statusHandler.error("Error calculating topography for " + + gloc); + } + } catch (TopoException e1) { + statusHandler.error("Unable to calculate topography for " + + gloc); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetClientsHandler.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetClientsHandler.java index 25001c5896..b06d79832f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetClientsHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetClientsHandler.java @@ -19,36 +19,27 @@ **/ package com.raytheon.edex.plugin.gfe.server.handler; -import java.io.File; -import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import jep.JepException; - import com.raytheon.uf.common.dataplugin.gfe.request.GetClientsRequest; import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; -import com.raytheon.uf.common.localization.IPathManager; -import com.raytheon.uf.common.localization.LocalizationContext; -import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; -import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; -import com.raytheon.uf.common.localization.PathManagerFactory; -import com.raytheon.uf.common.python.PythonScript; import com.raytheon.uf.common.serialization.comm.IRequestHandler; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; -import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.edex.esb.camel.jms.IBrokerConnectionsProvider; /** - * TODO Add Description + * Handler for get clients request. Returns list of Client IDs for all clients + * connected to the JMS broker * *
  * 
  * SOFTWARE HISTORY
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
- * May 21, 2009            randerso     Initial creation
- * 09/22/09     3058       rjpeter     Converted to IRequestHandler
+ * May 21, 2009            randerso    Initial creation
+ * Sep 22, 2009   3058     rjpeter     Converted to IRequestHandler
+ * Apr 04, 2014  #2694     randerso    Changed to use Java implementation
  * 
* * @author randerso @@ -58,64 +49,31 @@ public class GetClientsHandler implements IRequestHandler { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(GetClientsHandler.class); - // TODO: Use better caching mechanism - private static ThreadLocal scriptCache = new ThreadLocal() { + private IBrokerConnectionsProvider provider; - /* - * (non-Javadoc) - * - * @see java.lang.ThreadLocal#initialValue() - */ - @Override - public PythonScript initialValue() { - IPathManager pathMgr = PathManagerFactory.getPathManager(); - LocalizationContext lc = pathMgr.getContext( - LocalizationType.COMMON_STATIC, LocalizationLevel.BASE); - - File file = pathMgr.getFile(lc, "GetBrokerConnections.py"); - if (file == null) { - statusHandler.handle(Priority.PROBLEM, - "Unable to find GetBrokerConnections.py"); - return null; - } - - try { - ArrayList preevals = new ArrayList(1); - preevals.add("sys.argv = ['GetBrokerConnections']"); - return new PythonScript(file.getAbsolutePath(), "", this - .getClass().getClassLoader(), preevals); - } catch (JepException e) { - statusHandler.handle(Priority.PROBLEM, - "Unable to set up GetBrokerConnections.py", e); - return null; - } - } - - }; + /** + * Constructor + * + * @param provider + * broker connections provider implementation + */ + public GetClientsHandler(IBrokerConnectionsProvider provider) { + this.provider = provider; + } @Override public ServerResponse> handleRequest(GetClientsRequest request) throws Exception { ServerResponse> sr = new ServerResponse>(); - List clients = new ArrayList(); - sr.setPayload(clients); - - PythonScript ps = scriptCache.get(); - - HashMap argsHash = new HashMap(); - argsHash.put("brokerHost", System.getenv("BROKER_ADDR")); try { - Object obj = ps.execute("getConnections", argsHash); - if (obj instanceof String[]) { - for (String s : (String[]) obj) { - clients.add(s); - } - } - } catch (JepException e) { - sr.addMessage("Error getting client list - " + e.getMessage()); + List clients = provider.getConnections(); + sr.setPayload(clients); + } catch (Exception e) { + statusHandler.error("Unable to retrieve active client list: ", e); + sr.addMessage("Server error trying to retrieve clientlist: " + + e.getLocalizedMessage()); } - return sr; } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetGridDataHandler.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetGridDataHandler.java index 2be0e9cf5c..db917c20d8 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetGridDataHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetGridDataHandler.java @@ -20,23 +20,35 @@ package com.raytheon.edex.plugin.gfe.server.handler; +import java.util.Arrays; import java.util.List; +import com.raytheon.edex.plugin.gfe.server.GridParmManager; +import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridParmInfo; +import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; import com.raytheon.uf.common.dataplugin.gfe.request.GetGridDataRequest; import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; +import com.raytheon.uf.common.dataplugin.gfe.server.request.GetGridRequest; import com.raytheon.uf.common.dataplugin.gfe.slice.IGridSlice; import com.raytheon.uf.common.serialization.comm.IRequestHandler; +import com.raytheon.uf.common.time.TimeRange; +import com.raytheon.uf.common.util.SizeUtil; /** * GFE task for getting grid data slices * + * May return less than the full amount of data requested if returned grids + * exceed MAX_BYTES_PER_REQUEST in total size. The requestor is expected to + * re-request remaining data. + * *
  * SOFTWARE HISTORY
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 04/18/08     #875       bphillip    Initial Creation
  * 09/22/09     3058       rjpeter     Converted to IRequestHandler
- * 06/13/13     2044       randerso     Refactored to use IFPServer
+ * 06/13/13     2044       randerso    Refactored to use IFPServer
+ * 07/01/2014  #3149       randerso    Changed to limit size of data returned
  * 
* * @author randerso @@ -44,10 +56,98 @@ import com.raytheon.uf.common.serialization.comm.IRequestHandler; */ public class GetGridDataHandler extends BaseGfeRequestHandler implements IRequestHandler { + + private int byteLimitInMB = 100; + + /** + * @return the byteLimitInMB + */ + public int getByteLimitInMB() { + return this.byteLimitInMB; + } + + /** + * @param byteLimitInMB + * the byteLimitInMB to set + */ + public void setByteLimitInMB(int byteLimitInMB) { + this.byteLimitInMB = byteLimitInMB; + } + @Override public ServerResponse> handleRequest( GetGridDataRequest request) throws Exception { - return getIfpServer(request).getGridParmMgr().getGridData( - request.getRequests()); + ServerResponse> sr = new ServerResponse>(); + + GridParmManager gpm = getIfpServer(request).getGridParmMgr(); + int gridCount = 0; + int remaining = (int) (this.byteLimitInMB * SizeUtil.BYTES_PER_MB * 0.9); + List data = null; + for (GetGridRequest req : request.getRequests()) { + ParmID parmId = req.getParmId(); + List times = req.getTimes(); + + ServerResponse ss1 = gpm.getGridParmInfo(parmId); + if (!ss1.isOkay()) { + sr.addMessages(ss1); + return sr; + } + GridParmInfo gpi = ss1.getPayload(); + + int gridSize = gpi.getGridLoc().getNx() * gpi.getGridLoc().getNy(); + switch (gpi.getGridType()) { + case SCALAR: + gridSize *= 4; + break; + + case VECTOR: + gridSize *= 8; + break; + + case WEATHER: + case DISCRETE: + break; + + default: + break; + } + + int maxGrids = remaining / gridSize; + // ensure we return at least 1 grid + if ((maxGrids == 0) && (gridCount == 0)) { + maxGrids = 1; + } + + // no more grids will fit break out of loop + if (maxGrids == 0) { + break; + } + + if (maxGrids < times.size()) { + // truncate the request + times = times.subList(0, maxGrids); + req.setTimes(times); + } + gridCount += times.size(); + remaining -= times.size() * gridSize; + + ServerResponse> ssr = gpm.getGridData(Arrays + .asList(req)); + if (ssr.isOkay()) { + if (data == null) { + data = ssr.getPayload(); + } else { + data.addAll(ssr.getPayload()); + } + } else { + sr.addMessages(ssr); + break; + } + } + + if (sr.isOkay()) { + sr.setPayload(data); + } + return sr; } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetParmListHandler.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetParmListHandler.java index e51b3f0984..6b8be3a7fa 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetParmListHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetParmListHandler.java @@ -38,7 +38,8 @@ import com.raytheon.uf.common.serialization.comm.IRequestHandler; * 04/08/08 #875 bphillip Initial Creation * 09/22/09 3058 rjpeter Converted to IRequestHandler * 05/02/13 #1969 randerso Fixed null pointer if getParmList fails - * 06/13/13 2044 randerso Refactored to use IFPServer + * 06/13/13 #2044 randerso Refactored to use IFPServer + * 09/23/14 #3648 randerso Changed to send results even if some DbIds fail * * * @author bphillip @@ -52,6 +53,8 @@ public class GetParmListHandler extends BaseGfeRequestHandler implements List retVal = new ArrayList(); ServerResponse> sr = new ServerResponse>(); + sr.setPayload(retVal); + for (DatabaseID id : request.getDbIds()) { ServerResponse> ssr = getIfpServer(request) .getGridParmMgr().getParmList(id); @@ -61,9 +64,6 @@ public class GetParmListHandler extends BaseGfeRequestHandler implements sr.addMessages(ssr); } } - if (sr.isOkay()) { - sr.setPayload(retVal); - } return sr; } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java index 96e2c1653f..149fda355f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/GetPointDataHandler.java @@ -21,22 +21,21 @@ package com.raytheon.edex.plugin.gfe.server.handler; import java.awt.Point; import java.util.ArrayList; +import java.util.Date; import java.util.HashMap; +import java.util.Iterator; import java.util.List; import java.util.Map; +import java.util.TreeMap; import javax.measure.unit.NonSI; import javax.measure.unit.SI; import javax.measure.unit.Unit; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.geotools.coverage.grid.GridGeometry2D; - -import com.raytheon.edex.plugin.gfe.config.IFPServerConfigManager; -import com.raytheon.edex.plugin.gfe.exception.GfeConfigurationException; +import com.raytheon.edex.plugin.gfe.server.IFPServer; +import com.raytheon.edex.plugin.gfe.server.database.GridDatabase; import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID; -import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord; +import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord.GridType; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridLocation; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; import com.raytheon.uf.common.dataplugin.gfe.point.GFEPointDataContainer; @@ -44,15 +43,15 @@ import com.raytheon.uf.common.dataplugin.gfe.point.GFEPointDataContainers; import com.raytheon.uf.common.dataplugin.gfe.point.GFEPointDataView; import com.raytheon.uf.common.dataplugin.gfe.request.GetPointDataRequest; import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; -import com.raytheon.uf.common.dataplugin.gfe.server.request.GetGridRequest; import com.raytheon.uf.common.dataplugin.gfe.slice.DiscreteGridSlice; import com.raytheon.uf.common.dataplugin.gfe.slice.IGridSlice; import com.raytheon.uf.common.dataplugin.gfe.slice.ScalarGridSlice; import com.raytheon.uf.common.dataplugin.gfe.slice.VectorGridSlice; -import com.raytheon.uf.common.geospatial.MapUtil; -import com.raytheon.uf.common.geospatial.PointUtil; +import com.raytheon.uf.common.dataplugin.gfe.slice.WeatherGridSlice; import com.raytheon.uf.common.pointdata.PointDataDescription.Type; import com.raytheon.uf.common.serialization.comm.IRequestHandler; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.TimeRange; import com.raytheon.uf.common.time.util.TimeUtil; import com.vividsolutions.jts.geom.Coordinate; @@ -70,6 +69,7 @@ import com.vividsolutions.jts.geom.Coordinate; * in a single grid request. * Jun 13, 2013 #2044 randerso Refactored to use IFPServer * Oct 31, 2013 #2508 randerso Change to use DiscreteGridSlice.getKeys() + * Apr 23, 2014 #3006 randerso Restructured code to work with multi-hour grids * * * @@ -79,8 +79,8 @@ import com.vividsolutions.jts.geom.Coordinate; public class GetPointDataHandler extends BaseGfeRequestHandler implements IRequestHandler { - - protected final transient Log logger = LogFactory.getLog(getClass()); + private static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(GetPointDataHandler.class); /* * (non-Javadoc) @@ -89,143 +89,156 @@ public class GetPointDataHandler extends BaseGfeRequestHandler implements * com.raytheon.uf.common.serialization.comm.IRequestHandler#handleRequest * (com.raytheon.uf.common.serialization.comm.IServerRequest) */ - @SuppressWarnings("unchecked") @Override - public ServerResponse handleRequest(GetPointDataRequest request) - throws Exception { + public ServerResponse handleRequest( + GetPointDataRequest request) throws Exception { + ServerResponse resp = new ServerResponse(); + + IFPServer ifpServer = getIfpServer(request); + DatabaseID dbID = new DatabaseID(request.getDatabaseID()); + GridDatabase db = ifpServer.getGridParmMgr().getDatabase(dbID); + GridLocation loc = ifpServer.getConfig().dbDomain(); + List parameters = request.getParameters(); - - DatabaseID db = new DatabaseID(request.getDatabaseID()); List parmIds = new ArrayList(parameters.size()); - GridLocation loc = null; - - try { - loc = IFPServerConfigManager.getServerConfig(db.getSiteId()) - .dbDomain(); - } catch (GfeConfigurationException e) { - String msg = "Error getting grid location for site " - + db.getSiteId(); - logger.error(msg, e); - ServerResponse error = new ServerResponse(); - error.addMessage(msg); - return error; - } - - GridGeometry2D geom = MapUtil.getGridGeometry(loc); - for (String p : parameters) { - parmIds.add(new ParmID(p, db)); + parmIds.add(new ParmID(p, dbID)); } - List times = new ArrayList(); - for (int i = 0; i < request.getNumberHours(); i++) { - long iStartTime = request.getStartTime() - + (i * TimeUtil.MILLIS_PER_HOUR); - long iEndTime = iStartTime + TimeUtil.MILLIS_PER_HOUR; - TimeRange tr = new TimeRange(iStartTime, iEndTime); - times.add(tr); - } + int numHours = request.getNumberHours(); + long startTime = request.getStartTime(); + TimeRange overallTr = new TimeRange(new Date(startTime), numHours + * TimeUtil.MILLIS_PER_HOUR); List coordinates = request.getCoordinates(); - ServerResponse resp = null; - resp = new ServerResponse(); Map infoMap = new HashMap(); - boolean getSlices = false; - // See if any of the coordinates need the grid slices and set up info // map. for (Coordinate coordinate : coordinates) { - CoordinateInfo info = new CoordinateInfo(); + CoordinateInfo info = new CoordinateInfo(numHours, coordinate, loc); infoMap.put(coordinate, info); - info.container = new GFEPointDataContainer(); - Point index = PointUtil.determineIndex(coordinate, loc.getCrs(), - geom); - info.x = index.x; - info.y = index.y; - info.containsCoord = !((info.x < 0) || (info.x >= loc.getNx()) - || (info.y < 0) || (info.y >= loc.getNy())); - - if (!getSlices) { - getSlices = info.containsCoord; + if (!info.containsCoord) { + // coordinate is outside this GFE domain + resp.addMessage(coordinate + " is outside the " + + request.getSiteID() + + " GFE domain, no data will be returned."); } } - - for (TimeRange tr : times) { - List reqList = new ArrayList(); - for (ParmID p : parmIds) { - GetGridRequest req = new GetGridRequest(); - req.setParmId(p); - List reqRecList = new ArrayList( - times.size()); - GFERecord rec = new GFERecord(p, tr); - reqRecList.add(rec); - req.setRecords(reqRecList); - reqList.add(req); + for (ParmID parmId : parmIds) { + ServerResponse> invSr = db.getGridInventory(parmId, + overallTr); + if (!invSr.isOkay()) { + String msg = "Error retrieving inventory for " + parmId + "\n" + + invSr.message(); + statusHandler.error(msg); + resp.addMessage(msg); + continue; } - try { - ServerResponse> sr = null; - if (getSlices) { - sr = getIfpServer(request).getGridParmMgr().getGridData( - reqList); - } + String param = parmId.getParmName(); - for (Coordinate coordinate : coordinates) { - CoordinateInfo info = infoMap.get(coordinate); - boolean containsCoord = info.containsCoord; - GFEPointDataContainer container = info.container; - GFEPointDataView view = new GFEPointDataView(); - int x = info.x; - int y = info.y; + List inv = invSr.getPayload(); + ServerResponse> slicesSR = db.getGridData(parmId, + inv); + if (!slicesSR.isOkay()) { + String msg = "Error retrieving data for " + parmId + "\n" + + slicesSR.message(); + statusHandler.error(msg); + resp.addMessage(msg); + continue; + } + List slices = slicesSR.getPayload(); + Iterator sliceIter = slices.iterator(); + IGridSlice slice = null; + for (int i = 0; i < numHours; i++) { + Date time = new Date(startTime + (i * TimeUtil.MILLIS_PER_HOUR)); + try { + for (Coordinate coordinate : coordinates) { + CoordinateInfo info = infoMap.get(coordinate); + boolean containsCoord = info.containsCoord; + GFEPointDataView view = info.getView(time); + int x = info.x; + int y = info.y; - view.setData("time", Type.LONG, SI.MILLI(SI.SECOND), tr - .getStart().getTime()); - view.setData("lat", Type.FLOAT, null, coordinate.y); - view.setData("lon", Type.FLOAT, null, coordinate.x); + // initially set all requested params to missing + view.setData(parmId.getParmName(), Type.FLOAT, + Unit.ONE, 999.0f); - // initially set all requested params to missing - for (String param : parameters) { - view.setData(param, Type.FLOAT, Unit.ONE, 999.0f); - } + if (containsCoord) { - if (containsCoord) { + // find the slice that contains the current time + if ((slice == null) && sliceIter.hasNext()) { + slice = sliceIter.next(); + } + if ((slice != null) + && (time.getTime() >= slice.getValidTime() + .getEnd().getTime()) + && sliceIter.hasNext()) { + slice = sliceIter.next(); + } + if ((slice != null) + && slice.getValidTime().contains(time)) { + Unit unit = slice.getGridInfo() + .getUnitObject(); - // set the retrieved data - for (IGridSlice slice : sr.getPayload()) { - String param = slice.getGridInfo().getParmID() - .getParmName(); - Unit unit = slice.getGridInfo().getUnitObject(); - if (slice instanceof VectorGridSlice) { - VectorGridSlice gs = (VectorGridSlice) slice; - Type type = Type.FLOAT; - view.setData(param + "Dir", type, - NonSI.DEGREE_ANGLE, gs.getDirGrid() - .get(x, y)); - view.setData(param + "Spd", type, unit, gs - .getMagGrid().get(x, y)); - } else if (slice instanceof ScalarGridSlice) { - ScalarGridSlice gs = (ScalarGridSlice) slice; - float val = gs.getScalarGrid().get(x, y); - Type type = Type.FLOAT; - view.setData(param, type, unit, val); - } else if (slice instanceof DiscreteGridSlice) { - DiscreteGridSlice gs = (DiscreteGridSlice) slice; - byte value = gs.getDiscreteGrid().get(x, y); - String key = gs.getKeys()[value].toString(); - Type type = Type.STRING; - view.setData(param, type, unit, key); + Type type; + GridType gridType = slice.getGridInfo() + .getGridType(); + switch (gridType) { + case VECTOR: + VectorGridSlice vectorSlice = (VectorGridSlice) slice; + type = Type.FLOAT; + view.setData(param + "Dir", type, + NonSI.DEGREE_ANGLE, vectorSlice + .getDirGrid().get(x, y)); + view.setData(param + "Spd", type, unit, + vectorSlice.getMagGrid().get(x, y)); + break; + case SCALAR: + ScalarGridSlice scalarSlice = (ScalarGridSlice) slice; + float val = scalarSlice.getScalarGrid() + .get(x, y); + type = Type.FLOAT; + view.setData(param, type, unit, val); + break; + case DISCRETE: + DiscreteGridSlice discreteSlice = (DiscreteGridSlice) slice; + byte discreteValue = discreteSlice + .getDiscreteGrid().get(x, y); + String discreteKey = discreteSlice + .getKeys()[discreteValue] + .toString(); + type = Type.STRING; + view.setData(param, type, unit, discreteKey); + break; + case WEATHER: + WeatherGridSlice weatherSlice = (WeatherGridSlice) slice; + byte wxValue = weatherSlice + .getWeatherGrid().get(x, y); + String wxKey = weatherSlice.getKeys()[wxValue] + .toString(); + type = Type.STRING; + view.setData(param, type, unit, wxKey); + break; + + default: + String msg = "Unknown gridType: " + + gridType + " for " + parmId + + ", data will be ignored."; + statusHandler.error(msg); + resp.addMessage(msg); + break; + } } } } - container.append(view); + } catch (Exception e) { + resp.addMessage(e.getMessage()); } - } catch (Exception e) { - resp.addMessage(e.getMessage()); } - } GFEPointDataContainers gfeContainers = new GFEPointDataContainers(); @@ -235,11 +248,17 @@ public class GetPointDataHandler extends BaseGfeRequestHandler implements // Keep the results list in the same order as the request's // coordinate list. for (Coordinate coordinate : coordinates) { - containers.add(infoMap.get(coordinate).container); + CoordinateInfo info = infoMap.get(coordinate); + + List views = new ArrayList( + info.viewMap.values()); + + GFEPointDataContainer container = new GFEPointDataContainer(); + container.setViews(views); + containers.add(container); } gfeContainers.setContainers(containers); - ((ServerResponse) resp) - .setPayload(gfeContainers); + resp.setPayload(gfeContainers); return resp; } @@ -247,12 +266,41 @@ public class GetPointDataHandler extends BaseGfeRequestHandler implements * Information for a coordinate. */ private class CoordinateInfo { - GFEPointDataContainer container; + Map viewMap; boolean containsCoord; int x; int y; + + Coordinate coordinate; + + public CoordinateInfo(int numHours, Coordinate coordinate, + GridLocation gloc) { + viewMap = new TreeMap(); + this.coordinate = coordinate; + + Point gridCell = gloc.gridCoordinate(coordinate); + x = gridCell.x; + y = gridCell.y; + + containsCoord = !((x < 0) || (x >= gloc.getNx()) || (y < 0) || (y >= gloc + .getNy())); + } + + public GFEPointDataView getView(Date fcstHour) { + GFEPointDataView view = viewMap.get(fcstHour); + if (view == null) { + view = new GFEPointDataView(); + view.setData("time", Type.LONG, SI.MILLI(SI.SECOND), + fcstHour.getTime()); + view.setData("lat", Type.FLOAT, null, coordinate.y); + view.setData("lon", Type.FLOAT, null, coordinate.x); + viewMap.put(fcstHour, view); + } + + return view; + } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveCombinationsFileHandler.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveCombinationsFileHandler.java index 1454e700e5..83177ec677 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveCombinationsFileHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveCombinationsFileHandler.java @@ -31,8 +31,6 @@ import com.raytheon.edex.plugin.gfe.util.SendNotifications; import com.raytheon.uf.common.dataplugin.gfe.request.SaveCombinationsFileRequest; import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; import com.raytheon.uf.common.dataplugin.gfe.server.notify.CombinationsFileChangedNotification; -import com.raytheon.uf.common.localization.FileUpdatedMessage; -import com.raytheon.uf.common.localization.FileUpdatedMessage.FileChangeType; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; @@ -41,7 +39,6 @@ import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.serialization.comm.IRequestHandler; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.common.util.StringUtil; -import com.raytheon.uf.edex.core.EDEXUtil; /** * Request handler for SaveCombinationsFileRequest. Writes the @@ -58,6 +55,7 @@ import com.raytheon.uf.edex.core.EDEXUtil; * Dec 02, 2013 #2591 dgilling Only send notification after Writer is * flushed/closed. * Feb 05, 2014 #2591 Added CombinationFileChangedNotification + * Jul 21, 2014 2768 bclement removed FileUpdateMessage * * * @@ -89,7 +87,6 @@ public class SaveCombinationsFileHandler implements String comboName = request.getFileName(); String fileName = FileUtil.join(COMBO_FILE_DIR, comboName) + ".py"; LocalizationFile lf = pm.getLocalizationFile(localization, fileName); - boolean isAdded = (!lf.exists()); Writer outWriter = null; try { @@ -123,19 +120,12 @@ public class SaveCombinationsFileHandler implements } lf.save(); - // placing the notification code here ensures we only send the - // notification on a successful file write operation. Otherwise we would - // have thrown an IOException and never gotten to this portion of the - // request handler. - - // TODO: remove sending of FileUpdateMessage after DR #2768 is fixed - FileChangeType changeType = isAdded ? FileChangeType.ADDED - : FileChangeType.UPDATED; - EDEXUtil.getMessageProducer().sendAsync( - "utilityNotify", - new FileUpdatedMessage(localization, fileName, changeType, lf - .getTimeStamp().getTime())); - + /* + * placing the notification code here ensures we only send the + * notification on a successful file write operation. Otherwise we would + * have thrown an IOException and never gotten to this portion of the + * request handler. + */ CombinationsFileChangedNotification notif = new CombinationsFileChangedNotification( comboName, request.getWorkstationID(), siteID); SendNotifications.send(notif); diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveGfeGridHandler.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveGfeGridHandler.java index 8f5e07c759..f55064354d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveGfeGridHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/handler/SaveGfeGridHandler.java @@ -52,9 +52,11 @@ import com.raytheon.uf.common.time.util.TimeUtil; * 06/30/08 #875 bphillip Initial Creation * 01/29/09 #1271 njensen Rewrote for thrift capabilities * 06/24/09 njensen Added sending notifications - * 09/22/09 3058 rjpeter Converted to IRequestHandler - * 02/12/2013 #1597 randerso Added logging to support GFE Performance investigation - * 06/13/13 2044 randerso Refactored to use IFPServer + * 09/22/09 #3058 rjpeter Converted to IRequestHandler + * 02/12/2013 #1597 randerso Added logging to support GFE Performance investigation + * 06/13/13 #2044 randerso Refactored to use IFPServer + * 04/03/2014 #2737 randerso Changed to send ISC even when no grids are saved + * (i.e. on grid deletes) * * * @author bphillip @@ -72,13 +74,10 @@ public class SaveGfeGridHandler extends BaseGfeRequestHandler implements public ServerResponse handleRequest(SaveGfeGridRequest request) throws Exception { ServerResponse sr = null; - List saveRequest = request.getSaveRequest(); + List saveRequest = request.getSaveRequests(); WsId workstationID = request.getWorkstationID(); String siteID = request.getSiteID(); - boolean clientSendStatus = false; - if (!saveRequest.isEmpty()) { - clientSendStatus = saveRequest.get(0).isClientSendStatus(); - } + boolean clientSendStatus = request.isClientSendStatus(); try { ITimer timer = TimeUtil.getTimer(); @@ -102,11 +101,10 @@ public class SaveGfeGridHandler extends BaseGfeRequestHandler implements saveRequest.size()); for (SaveGridRequest save : saveRequest) { DatabaseID dbid = save.getParmId().getDbId(); + // ensure Fcst database if (dbid.getModelName().equals("Fcst") - && dbid.getDbType().isEmpty() - && !save.getGridSlices().isEmpty() - && save.isClientSendStatus()) { + && dbid.getDbType().isEmpty()) { IscSendRecord sendReq = new IscSendRecord( save.getParmId(), save.getReplacementTimeRange(), "", diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/lock/LockManager.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/lock/LockManager.java index ce19cd4fda..2c02cb033d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/lock/LockManager.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/lock/LockManager.java @@ -67,6 +67,7 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * fixed inefficiencies in querying/merging * 06/13/13 #2044 randerso Converted from singleton to instance per * site managed by IFPServer + * 10/07/2014 #3684 randerso Restructured IFPServer start up * * * @author bphillip @@ -91,21 +92,12 @@ public class LockManager { * * @param siteId * @param config - */ - public LockManager(String siteId, IFPServerConfig config) { - this.siteId = siteId; - this.config = config; - } - - /** - * Sets the GridParmManager instance to be used by this LockManager. - * - * Done post construction since GridParmManager and LockManager have - * references to each other - * * @param gridParmMgr */ - public void setGridParmMgr(GridParmManager gridParmMgr) { + public LockManager(String siteId, IFPServerConfig config, + GridParmManager gridParmMgr) { + this.siteId = siteId; + this.config = config; this.gridParmMgr = gridParmMgr; } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/notify/VTECTableChangeListener.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/notify/VTECTableChangeListener.java index 7a06ba1b8d..b27b4e6d92 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/notify/VTECTableChangeListener.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/server/notify/VTECTableChangeListener.java @@ -26,8 +26,6 @@ import com.raytheon.uf.common.activetable.ActiveTableMode; import com.raytheon.uf.common.activetable.VTECChange; import com.raytheon.uf.common.activetable.VTECTableChangeNotification; import com.raytheon.uf.common.dataplugin.gfe.textproduct.DraftProduct; -import com.raytheon.uf.common.localization.FileUpdatedMessage; -import com.raytheon.uf.common.localization.FileUpdatedMessage.FileChangeType; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; @@ -38,8 +36,6 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.FileUtil; -import com.raytheon.uf.edex.core.EDEXUtil; -import com.raytheon.uf.edex.core.EdexException; /** * Listener to handle VTEC Table Change notifications @@ -55,6 +51,7 @@ import com.raytheon.uf.edex.core.EdexException; * Fixed to work with sites other than the EDEX site * Added work around to Localization not sending * FileUpdatedMessages on EDEX + * Jul 21, 2014 2768 bclement removed FileUpdateMessage * * * @@ -132,19 +129,6 @@ public class VTECTableChangeListener { if (markit) { markDraft(lf); - - // TODO: remove sending of FileUpdateMessage after DR #2768 is - // fixed - try { - EDEXUtil.getMessageProducer().sendAsync( - "utilityNotify", - new FileUpdatedMessage(lf.getContext(), lf - .getName(), FileChangeType.UPDATED, lf - .getTimeStamp().getTime())); - } catch (EdexException e) { - statusHandler.handle(Priority.PROBLEM, - e.getLocalizedMessage(), e); - } } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPDB.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPDB.java index fb342d4aff..224a3b8e7e 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPDB.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPDB.java @@ -41,6 +41,7 @@ import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; * ------------ ---------- ----------- -------------------------- * May 7, 2008 njensen Initial creation * Jun 13, 2013 #2044 randerso Refactored to use IFPServer + * Jul 28, 2014 RM 15655 ryu Negate raising exception for empty db in constructor * * * @@ -88,7 +89,6 @@ public class IFPDB { } } else { this.keys = Collections.emptyList(); - throw new GfeException(sr.message()); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPWE.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPWE.java index 28d5c03562..8ceec41829 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPWE.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/IFPWE.java @@ -89,6 +89,7 @@ import com.raytheon.uf.common.util.Pair; * Added getKeys(tr) to get grid times overlapping a time range * Removed caching of inventory as it was not being updated when * grids were updated/deleted + * Jul 01, 2014 #3149 randerso Changed to use updated GetGridRequest. Cleaned up code * * * @@ -201,39 +202,19 @@ public class IFPWE { * @throws GfeException */ public IGridSlice getItem(TimeRange timeRange) throws GfeException { - GetGridRequest req = new GetGridRequest(); - req.setParmId(parmId); - GFERecord gfeRec = new GFERecord(parmId, timeRange); - ArrayList gfeList = new ArrayList(); - gfeList.add(gfeRec); - req.setRecords(gfeList); + GetGridRequest req = new GetGridRequest(parmId, + Arrays.asList(timeRange)); ArrayList reqList = new ArrayList(); reqList.add(req); - List data = new ArrayList(); ServerResponse> ssr = gridParmMgr.getGridData(reqList); - data = ssr.getPayload(); - - IGridSlice slice = null; - if ((data == null) || (data.size() == 0)) { + if (!ssr.isOkay()) { String msg = "Error getting grid data for " + parmId.toString() - + " at time " + timeRange.toString(); - for (ServerMsg smsg : ssr.getMessages()) { - msg += "\n" + smsg.getMessage(); - } + + " at time " + timeRange.toString() + ssr.message(); throw new GfeException(msg); - } else if (data.size() > 1) { - // theoretically should never get here - String msg = "Retrieved too much data for " + parmId.toString() - + "at time " + timeRange.toString(); - for (ServerMsg smsg : ssr.getMessages()) { - msg += "\n" + smsg.getMessage(); - } - throw new GfeException(msg); - } else { - slice = data.get(0); } + IGridSlice slice = ssr.getPayload().get(0); return slice; } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/InitClient.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/InitClient.java index cff2bd5eb1..41b75630f3 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/InitClient.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/InitClient.java @@ -49,6 +49,8 @@ import com.raytheon.uf.common.status.UFStatus.Priority; * Jul 25, 2012 #957 dgilling Implement getEditAreaNames(). * Jun 13, 2013 #2044 randerso Refactored to use IFPServer * Nov 20, 2013 #2331 randerso Changed return type of getTopoData + * Oct 08, 2014 #3684 randerso Changed createDB to return status + * Oct 27, 2014 #3766 randerso Fixed return type for createDB * * * @@ -98,13 +100,10 @@ public class InitClient { * * @param key */ - public void createDB(String key) { + public ServerResponse createDB(String key) { DatabaseID id = new DatabaseID(key); ServerResponse sr = ifpServer.getGridParmMgr().createNewDb(id); - if (!sr.isOkay()) { - statusHandler.error("Error creating database " + id + ": " - + sr.message()); - } + return sr; } /** diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitQueue.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitQueue.java index 7440cc09d4..805e3819f1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitQueue.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitQueue.java @@ -56,6 +56,7 @@ import com.raytheon.uf.edex.database.dao.DaoConfig; * Jun 13, 2013 #2044 randerso Refactored to use IFPServer, * moved smartInit queuing code here * from other modules, general code cleanup + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @author njensen @@ -217,7 +218,7 @@ public class SmartInitQueue { CoreDao cd = new CoreDao(DaoConfig.DEFAULT); Session s = null; try { - s = cd.getHibernateTemplate().getSessionFactory().openSession(); + s = cd.getSession(); Transaction tx = null; SmartInitRecord oldRecord = null; diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitSrv.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitSrv.java index 2b68e40722..6837385b77 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitSrv.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitSrv.java @@ -25,13 +25,9 @@ import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.concurrent.Executor; import jep.JepException; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.plugin.gfe.server.IFPServer; import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID; import com.raytheon.uf.common.localization.IPathManager; @@ -39,10 +35,11 @@ import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.PathManagerFactory; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.edex.core.EDEXUtil; -import com.raytheon.uf.edex.core.props.EnvProperties; -import com.raytheon.uf.edex.core.props.PropertiesFactory; +import com.raytheon.uf.edex.core.EdexTimerBasedThread; /** * Service that runs smart inits @@ -58,168 +55,154 @@ import com.raytheon.uf.edex.core.props.PropertiesFactory; * Aug 24, 2013 #1949 rjpeter Updated start up logic * Jun 13, 2013 #2044 randerso Refactored to use IFPServer, * added support to run init for all valid times + * Mar 14, 2014 2726 rjpeter Implement graceful shutdown. * * * @author njensen * @version 1.0 */ -public class SmartInitSrv { +public class SmartInitSrv extends EdexTimerBasedThread { + protected static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(SmartInitSrv.class); private final Map cachedInterpreters = new HashMap(); - private static boolean enabled = true; + protected int pendingInitMinTimeMillis = 120000; - protected final SmartInitSrvConfig cfg; + protected int runningInitTimeOutMillis = 600000; - protected final Executor executor; - - static { - EnvProperties env = PropertiesFactory.getInstance().getEnvProperties(); - enabled = Boolean.parseBoolean(env.getEnvValue("GFESMARTINIT")); + public SmartInitSrv() { } - public SmartInitSrv(SmartInitSrvConfig config) { - cfg = config; - this.executor = config.getExecutor(); - for (int i = 0; i < cfg.getThreads(); i++) { - SmartInitThread thread = new SmartInitThread(); - thread.pendingInitMinTimeMillis = cfg.getPendingInitMinTimeMillis(); - thread.runningInitTimeOutMillis = cfg.getRunningInitTimeOutMillis(); - thread.threadSleepInterval = cfg.getThreadSleepInterval(); - executor.execute(thread); - } + @Override + public String getThreadGroupName() { + return "smartInitThreadPool"; } - protected class SmartInitThread implements Runnable { - // default of 2 minutes - private int pendingInitMinTimeMillis = 120000; - - private int runningInitTimeOutMillis = 600000; - - private int threadSleepInterval = 30000; - - private final transient Log logger = LogFactory.getLog(getClass()); - - @Override - public void run() { - try { - // Wait for server to come fully up due to route dependencies - while (!EDEXUtil.isRunning()) { - try { - Thread.sleep(threadSleepInterval); - } catch (InterruptedException e) { - // ignore - } - } - - // run forever - while (true) { - SmartInitRecord record = SmartInitTransactions - .getSmartInitToRun(pendingInitMinTimeMillis, - runningInitTimeOutMillis); - if (record != null) { - runSmartInit(record); - } else { - try { - Thread.sleep(threadSleepInterval); - } catch (Exception e) { - // ignore - } - } - } - } finally { - // Make sure OS resources are released at thread death - SmartInitScript script = cachedInterpreters.remove(Thread - .currentThread().getId()); - script.dispose(); + @Override + public void process() throws Exception { + SmartInitRecord record = null; + do { + record = SmartInitTransactions.getSmartInitToRun( + pendingInitMinTimeMillis, runningInitTimeOutMillis); + if (record != null) { + runSmartInit(record); } - } + } while ((record != null) && !EDEXUtil.isShuttingDown()); + } - public void runSmartInit(SmartInitRecord record) { - if (enabled) { + @Override + public void dispose() { + super.dispose(); + + // Make sure OS resources are released at thread death + SmartInitScript script = cachedInterpreters.remove(Thread + .currentThread().getId()); + if (script != null) { + script.dispose(); + } + } + + public void runSmartInit(SmartInitRecord record) { + try { + SmartInitScript initScript = null; + List sitePathsAdded = new ArrayList(2); + + String init = record.getSmartInit(); + String dbName = record.getDbName() + + (record.isManual() ? ":1" : ":0"); + Date validTime = record.getId().getValidTime(); + if (SmartInitRecord.ALL_TIMES.equals(validTime)) { + validTime = null; + } + + DatabaseID db = new DatabaseID(record.getDbName()); + if (IFPServer.getActiveSites().contains(db.getSiteId())) { try { - SmartInitScript initScript = null; - List sitePathsAdded = new ArrayList(2); + long id = Thread.currentThread().getId(); + initScript = cachedInterpreters.get(id); - String init = record.getSmartInit(); - String dbName = record.getDbName() - + (record.isManual() ? ":1" : ":0"); - Date validTime = record.getId().getValidTime(); - if (SmartInitRecord.ALL_TIMES.equals(validTime)) { - validTime = null; + if (initScript == null) { + initScript = SmartInitFactory.constructInit(); + cachedInterpreters.put(id, initScript); } - DatabaseID db = new DatabaseID(record.getDbName()); - if (IFPServer.getActiveSites().contains(db.getSiteId())) { - try { - long id = Thread.currentThread().getId(); - initScript = cachedInterpreters.get(id); + IPathManager pathMgr = PathManagerFactory.getPathManager(); + LocalizationContext ctx = pathMgr.getContextForSite( + LocalizationType.EDEX_STATIC, db.getSiteId()); + LocalizationContext baseCtx = pathMgr.getContext( + LocalizationType.EDEX_STATIC, + LocalizationLevel.BASE); - if (initScript == null) { - initScript = SmartInitFactory.constructInit(); - cachedInterpreters.put(id, initScript); - } - - IPathManager pathMgr = PathManagerFactory - .getPathManager(); - LocalizationContext ctx = pathMgr - .getContextForSite( - LocalizationType.EDEX_STATIC, - db.getSiteId()); - LocalizationContext baseCtx = pathMgr.getContext( - LocalizationType.EDEX_STATIC, - LocalizationLevel.BASE); - - File file = pathMgr.getFile(ctx, "smartinit"); - if ((file != null) && file.exists()) { - initScript.addSitePath(file.getPath(), pathMgr - .getFile(baseCtx, "smartinit") - .getPath()); - sitePathsAdded.add(file.getPath()); - } - file = pathMgr.getFile(ctx, - FileUtil.join("config", "gfe")); - if ((file != null) && file.exists()) { - initScript.addSitePath( - file.getPath(), - pathMgr.getFile(baseCtx, - FileUtil.join("config", "gfe")) + File file = pathMgr.getFile(ctx, "smartinit"); + if ((file != null) && file.exists()) { + initScript + .addSitePath(file.getPath(), + pathMgr.getFile(baseCtx, "smartinit") .getPath()); - sitePathsAdded.add(file.getPath()); - } - - HashMap argMap = new HashMap(); - argMap.put("dbName", dbName); - argMap.put("model", init); - argMap.put("validTime", validTime); - - initScript.execute(argMap); - } catch (Throwable e) { - logger.error("Error running smart init for " - + record.getId(), e); - } finally { - try { - for (String path : sitePathsAdded) { - initScript.removeSitePath(path); - } - } catch (JepException e) { - this.logger - .error("Error cleaning up smart init interpreter's sys.path", - e); - } - } - } else { - this.logger.warn("Site " + db.getSiteId() - + " has been disabled. Smart init for " - + record.getDbName() - + " will not be processed."); + sitePathsAdded.add(file.getPath()); + } + file = pathMgr.getFile(ctx, FileUtil.join("config", "gfe")); + if ((file != null) && file.exists()) { + initScript.addSitePath( + file.getPath(), + pathMgr.getFile(baseCtx, + FileUtil.join("config", "gfe")) + .getPath()); + sitePathsAdded.add(file.getPath()); + } + + HashMap argMap = new HashMap(); + argMap.put("dbName", dbName); + argMap.put("model", init); + argMap.put("validTime", validTime); + + initScript.execute(argMap); + } catch (Throwable e) { + statusHandler.error("Error running smart init for " + + record.getId(), e); + } finally { + try { + for (String path : sitePathsAdded) { + initScript.removeSitePath(path); + } + } catch (JepException e) { + statusHandler + .error("Error cleaning up smart init interpreter's sys.path", + e); } - } catch (Throwable t) { - this.logger.error("Error in SmartInitSrv", t); } - SmartInitTransactions.removeSmartInit(record); + } else { + statusHandler.warn("Site " + db.getSiteId() + + " has been disabled. Smart init for " + + record.getDbName() + " will not be processed."); } + } catch (Throwable t) { + statusHandler.error("Error in SmartInitSrv", t); } + SmartInitTransactions.removeSmartInit(record); + } + + @Override + public void postStop() { + SmartInitQueue.getQueue().fireSmartInit(); + super.postStop(); + } + + public int getPendingInitMinTimeMillis() { + return pendingInitMinTimeMillis; + } + + public void setPendingInitMinTimeMillis(int pendingInitMinTimeMillis) { + this.pendingInitMinTimeMillis = pendingInitMinTimeMillis; + } + + public int getRunningInitTimeOutMillis() { + return runningInitTimeOutMillis; + } + + public void setRunningInitTimeOutMillis(int runningInitTimeOutMillis) { + this.runningInitTimeOutMillis = runningInitTimeOutMillis; } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitTransactions.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitTransactions.java index 0f5817858a..f3de33bf3d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitTransactions.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/smartinit/SmartInitTransactions.java @@ -37,13 +37,13 @@ import org.hibernate.criterion.Restrictions; import com.raytheon.edex.plugin.gfe.smartinit.SmartInitRecordPK.State; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; -import com.raytheon.uf.edex.database.cluster.ClusterTask; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; +import com.raytheon.uf.edex.database.cluster.ClusterTask; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; /** - * TODO Add Description + * SmartInit Transactions * *
  * 
@@ -51,6 +51,8 @@ import com.raytheon.uf.edex.database.dao.DaoConfig;
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Apr 12, 2010            njensen     Initial creation
+ * May 20, 2014 #3069      randerso    Added validTime to sort order when 
+ *                                     choosing next smartInit to run
  * 
  * 
* @@ -104,8 +106,8 @@ public class SmartInitTransactions { LockOptions.UPGRADE); // double check to make sure another process hasn't // already grabbed it and the run didn't finish - if (record != null - && record.getInsertTime().getTime() < timeOutCheck) { + if ((record != null) + && (record.getInsertTime().getTime() < timeOutCheck)) { logger.info("Running smartInit " + record.getId() + " timed out. Rerunning smartInit."); record.setInsertTime(new Date(System @@ -120,8 +122,9 @@ public class SmartInitTransactions { // query the pending table for available inits Criteria pendingCrit = sess.createCriteria(SmartInitRecord.class); - pendingCrit.addOrder(Order.asc("priority")).addOrder( - Order.asc("insertTime")); + pendingCrit.addOrder(Order.asc("priority")) + .addOrder(Order.asc("insertTime")) + .addOrder(Order.asc("id.validTime")); long pendingTimeRest = System.currentTimeMillis() - pendingInitMinTimeMillis; @@ -151,8 +154,8 @@ public class SmartInitTransactions { record.getId(), LockOptions.UPGRADE); // double check its still valid - if (record != null - && record.getInsertTime().getTime() <= pendingTimeRest) { + if ((record != null) + && (record.getInsertTime().getTime() <= pendingTimeRest)) { sess.delete(record); // can we update primary key in place?? or do we need to // delete then add diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/svcbackup/SvcBackupUtil.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/svcbackup/SvcBackupUtil.java index 5358e505a5..4c5915a124 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/svcbackup/SvcBackupUtil.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/svcbackup/SvcBackupUtil.java @@ -32,7 +32,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.google.common.collect.Sets; -import com.raytheon.edex.site.SiteUtil; import com.raytheon.uf.common.auth.exception.AuthorizationException; import com.raytheon.uf.common.auth.user.IUser; import com.raytheon.uf.common.dataplugin.gfe.exception.GfeException; @@ -43,10 +42,9 @@ import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.RunProcess; import com.raytheon.uf.edex.auth.AuthManager; import com.raytheon.uf.edex.auth.AuthManagerFactory; +import com.raytheon.uf.edex.auth.authorization.IAuthorizer; import com.raytheon.uf.edex.auth.resp.AuthorizationResponse; -import com.raytheon.uf.edex.auth.roles.IRoleStorage; import com.raytheon.uf.edex.core.EDEXUtil; -import com.raytheon.uf.edex.core.props.PropertiesFactory; import com.raytheon.uf.edex.site.SiteAwareRegistry; /** @@ -65,6 +63,8 @@ import com.raytheon.uf.edex.site.SiteAwareRegistry; * May 02, 2013 #1762 dgilling Remove check for national center, add * method to retrieve list of svcbu * sites. + * May 28, 2014 3211 njensen Use IAuthorizer instead of IRoleStorage + * Jul 10, 2014 2914 garmendariz Remove EnvProperties * * * @@ -118,10 +118,8 @@ public class SvcBackupUtil { private static String executeProcess(String... args) throws GfeException { RunProcess proc = RunProcess.getRunProcess(); ProcessBuilder pBuilder = new ProcessBuilder(); - pBuilder.environment().put( - "LOCALIZATION_PATH", - PropertiesFactory.getInstance().getEnvProperties() - .getEnvValue("UTILITYDIR")); + pBuilder.environment().put("LOCALIZATION_PATH", + EDEXUtil.getEdexUtility()); pBuilder.environment().put("AWIPS_HOME", "/awips2/"); pBuilder.redirectErrorStream(true); pBuilder.command(args); @@ -205,7 +203,7 @@ public class SvcBackupUtil { FileInputStream fis = null; try { fis = new FileInputStream( - EDEXUtil.EDEX_HOME + EDEXUtil.getEdexHome() + "/../GFESuite/ServiceBackup/configuration/svcbu.properties"); svcbuProperties.load(fis); } catch (Exception e) { @@ -264,10 +262,9 @@ public class SvcBackupUtil { public static AuthorizationResponse authorizeWithLocalization(IUser user, AbstractGfePrivilegedRequest request) throws AuthorizationException { AuthManager manager = AuthManagerFactory.getInstance().getManager(); - IRoleStorage roles = manager.getRoleStorage(); + IAuthorizer auth = manager.getAuthorizer(); String roleId = request.getRoleId(); - if (roles - .isAuthorized(roleId, user.uniqueId().toString(), LOCALIZATION)) { + if (auth.isAuthorized(roleId, user.uniqueId().toString(), LOCALIZATION)) { return new AuthorizationResponse(true); } @@ -278,7 +275,7 @@ public class SvcBackupUtil { public static Set getPrimarySites() { Properties svcbuProps = SvcBackupUtil.getSvcBackupProperties(); - String siteList = SiteUtil.getSite(); + String siteList = EDEXUtil.getEdexSite(); if (svcbuProps != null) { String propVal = svcbuProps.getProperty("PRIMARY_SITES", "").trim(); if (!propVal.isEmpty()) { diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/AreaDictionaryMaker.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/AreaDictionaryMaker.java index 125638bc4e..ef4d062a1d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/AreaDictionaryMaker.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/AreaDictionaryMaker.java @@ -20,27 +20,36 @@ package com.raytheon.edex.plugin.gfe.textproducts; import java.io.File; +import java.io.PrintWriter; +import java.text.DecimalFormat; import java.util.HashMap; +import java.util.List; import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import jep.JepException; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.plugin.gfe.reference.MapManager; import com.raytheon.uf.common.dataplugin.gfe.python.GfePyIncludeUtil; +import com.raytheon.uf.common.dataquery.db.QueryResult; +import com.raytheon.uf.common.dataquery.db.QueryResultRow; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; +import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.PathManagerFactory; +import com.raytheon.uf.common.localization.exception.LocalizationException; import com.raytheon.uf.common.python.PyUtil; import com.raytheon.uf.common.python.PythonScript; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.util.FileUtil; +import com.raytheon.uf.edex.database.tasks.SqlQueryTask; /** - * TODO Add Description + * Code to generate the AreaDictionary for text formatters * *
  * 
@@ -49,6 +58,8 @@ import com.raytheon.uf.common.util.FileUtil;
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * May 4, 2011             wldougher   Moved from MapManager
+ * Oct 10, 2014  #3685     randerso    Add code to generate the fips2cities and zones2cites
+ *                                     python modules from the GIS database tables
  * 
  * 
* @@ -57,11 +68,61 @@ import com.raytheon.uf.common.util.FileUtil; */ public class AreaDictionaryMaker { - private static final Log theLogger = LogFactory - .getLog(AreaDictionaryMaker.class); + protected static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(AreaDictionaryMaker.class); + + protected static final String FIPS_CITY_QUERY = // + "SELECT name, population, ST_Y(city.the_geom), ST_X(city.the_geom) " + + "FROM mapdata.city, mapdata.county " + + "WHERE county.state = '%1$s' AND substring(fips,3,3) = '%2$s' " + + "AND ST_Contains(county.the_geom, city.the_geom) " + + "ORDER BY city.name;"; + + protected static final String ZONES_CITY_QUERY = // + "SELECT city.name, population, ST_Y(city.the_geom), ST_X(city.the_geom) " + + "FROM mapdata.city, mapdata.zone " + + "WHERE zone.state = '%1$s' AND zone.zone = '%2$s' " + + "AND ST_Contains(zone.the_geom, city.the_geom) " + + "ORDER BY city.name;"; + + protected static final Map PART_OF_STATE; + static { + PART_OF_STATE = new HashMap<>(30, 1.0f); + PART_OF_STATE.put(null, ""); + PART_OF_STATE.put("bb", "big bend"); + PART_OF_STATE.put("c", ""); + PART_OF_STATE.put("cc", "central"); + PART_OF_STATE.put("E", ""); + PART_OF_STATE.put("ea", "east"); + PART_OF_STATE.put("ec", "east central"); + PART_OF_STATE.put("ee", "eastern"); + PART_OF_STATE.put("er", "east central upper"); + PART_OF_STATE.put("eu", "eastern upper"); + PART_OF_STATE.put("M", ""); + PART_OF_STATE.put("mi", "middle"); + PART_OF_STATE.put("nc", "north central"); + PART_OF_STATE.put("ne", "northeast"); + PART_OF_STATE.put("nn", "northern"); + PART_OF_STATE.put("nr", "north central upper"); + PART_OF_STATE.put("nw", "northwest"); + PART_OF_STATE.put("pa", "panhandle"); + PART_OF_STATE.put("pd", "piedmont"); + PART_OF_STATE.put("sc", "south central"); + PART_OF_STATE.put("se", "southeast"); + PART_OF_STATE.put("so", "south"); + PART_OF_STATE.put("sr", "south central upper"); + PART_OF_STATE.put("ss", "southern"); + PART_OF_STATE.put("sw", "southwest"); + PART_OF_STATE.put("up", "upstate"); + PART_OF_STATE.put("wc", "west central"); + PART_OF_STATE.put("wu", "western upper"); + PART_OF_STATE.put("ww", "western"); + } protected IPathManager pathMgr = PathManagerFactory.getPathManager(); + private Map stateDict; + /** * Generate the AreaDictionary.py and CityLocation.py scripts for site, * using editAreaAttrs. @@ -73,14 +134,14 @@ public class AreaDictionaryMaker { * A Map from edit area names to shape file attributes */ public void genAreaDictionary(String site, - Map> editAreaAttrs) { - theLogger.info("Area Dictionary generation phase"); + Map>> editAreaAttrs) { + statusHandler.info("Area Dictionary generation phase"); if (site == null) { throw new IllegalArgumentException("site is null"); } - if ("".equals(site)) { + if (site.isEmpty()) { throw new IllegalArgumentException("site is an empty string"); } @@ -89,14 +150,99 @@ public class AreaDictionaryMaker { } long t0 = System.currentTimeMillis(); + genStateDict(); - LocalizationContext cx = pathMgr.getContext( + LocalizationContext context = pathMgr.getContext( + LocalizationContext.LocalizationType.EDEX_STATIC, + LocalizationContext.LocalizationLevel.CONFIGURED); + context.setContextName(site); + + List> countyAttrs = editAreaAttrs.get("Counties"); + List> zoneAttrs = editAreaAttrs.get("Zones"); + + // To generate national fips2cities and zones2cities files + // uncomment the following lines. This should be done for testing + // purposes only and should not be checked in uncommented. + + // context = pathMgr.getContext( + // LocalizationContext.LocalizationType.EDEX_STATIC, + // LocalizationContext.LocalizationLevel.BASE); + // + // String fipsQuery = + // "SELECT fips, state, fe_area, cwa FROM mapdata.county ORDER BY state, fips;"; + // + // SqlQueryTask task = new SqlQueryTask(fipsQuery, "maps"); + // try { + // QueryResult results = task.execute(); + // countyAttrs = new ArrayList>( + // results.getResultCount()); + // for (QueryResultRow row : results.getRows()) { + // String num = (String) row.getColumn(0); + // if (num == null) { + // continue; + // } + // + // Map map = new HashMap<>(3, 1.0f); + // countyAttrs.add(map); + // + // String st = (String) row.getColumn(1); + // int len = num.length(); + // + // map.put("editarea", st + 'C' + num.substring(len - 3, len)); + // map.put("fe_area", row.getColumn(2)); + // map.put("cwa", row.getColumn(3)); + // } + // } catch (Exception e) { + // statusHandler.error(e.getLocalizedMessage(), e); + // } + // + // String zonesQuery = + // "SELECT zone, state, fe_area, cwa FROM mapdata.zone ORDER BY state, zone;"; + // task = new SqlQueryTask(zonesQuery, "maps"); + // try { + // QueryResult results = task.execute(); + // zoneAttrs = new ArrayList>( + // results.getResultCount()); + // for (QueryResultRow row : results.getRows()) { + // String num = (String) row.getColumn(0); + // if (num == null) { + // continue; + // } + // + // Map map = new HashMap<>(3, 1.0f); + // zoneAttrs.add(map); + // + // String st = (String) row.getColumn(1); + // int len = num.length(); + // + // map.put("editarea", st + 'Z' + num.substring(len - 3, len)); + // map.put("fe_area", row.getColumn(2)); + // map.put("cwa", row.getColumn(3)); + // } + // } catch (Exception e) { + // statusHandler.error(e.getLocalizedMessage(), e); + // } + + // To generate national fips2cities and zones2cities files + // uncomment the previous lines + + genFips2Cities(context, countyAttrs); + genZones2Cities(context, zoneAttrs); + + LocalizationContext baseCtx = pathMgr.getContext( LocalizationType.EDEX_STATIC, LocalizationLevel.BASE); - File scriptFile = pathMgr.getLocalizationFile(cx, + File scriptFile = pathMgr.getLocalizationFile(baseCtx, FileUtil.join("gfe", "createAreaDictionary.py")).getFile(); + + LocalizationContext configCtx = pathMgr.getContext( + LocalizationType.EDEX_STATIC, LocalizationLevel.CONFIGURED); + configCtx.setContextName(site); + File configDir = pathMgr.getLocalizationFile(configCtx, "gfe") + .getFile(); + String includePath = PyUtil.buildJepIncludePath(true, GfePyIncludeUtil.getCommonPythonIncludePath(), - scriptFile.getParent()); + configDir.getPath(), scriptFile.getParent()); Map argMap = new HashMap(); LocalizationContext caveStaticConfig = pathMgr.getContext( @@ -120,7 +266,7 @@ public class AreaDictionaryMaker { // createAreaDictionary() pyScript.execute("createCityLocation", argMap); } catch (JepException e) { - theLogger.error("Error generating area dictionary", e); + statusHandler.error("Error generating area dictionary", e); } finally { if (pyScript != null) { pyScript.dispose(); @@ -128,6 +274,138 @@ public class AreaDictionaryMaker { } long t1 = System.currentTimeMillis(); - theLogger.info("Area Dictionary generation time: " + (t1 - t0) + " ms"); + statusHandler.info("Area Dictionary generation time: " + (t1 - t0) + + " ms"); + } + + private void genFips2Cities(LocalizationContext context, + List> attributes) { + genArea2Cities(context, attributes, "fips2cities.py", "fipsdata", + "FIPS", 'C', FIPS_CITY_QUERY); + } + + private void genZones2Cities(LocalizationContext context, + List> attributes) { + genArea2Cities(context, attributes, "zones2cities.py", "zonedata", + "Zones", 'Z', ZONES_CITY_QUERY); + } + + private void genArea2Cities(LocalizationContext context, + List> attributes, String fileName, + String dictName, String group, char separator, String cityQuery) { + + LocalizationFile lf = pathMgr.getLocalizationFile(context, + FileUtil.join("gfe", fileName)); + + try (PrintWriter out = new PrintWriter(lf.openOutputStream())) { + out.println(dictName + " = {"); + + try { + DecimalFormat df = new DecimalFormat("0.00000"); + StringBuilder sb = new StringBuilder(); + Pattern pattern = Pattern.compile("(\\p{Upper}{2})" + separator + + "(\\d{3})"); + + for (Map att : attributes) { + String ean = (String) att.get("editarea"); + if ((ean == null) || ean.isEmpty()) { + continue; + } + + Matcher matcher = pattern.matcher(ean); + if (!matcher.matches()) { + continue; + } + + String state = matcher.group(1); + String num = matcher.group(2); + + String fullStateName = this.stateDict.get(state); + String partOfState = PART_OF_STATE.get(att.get("fe_area")); + String wfo = (String) att.get("cwa"); + + SqlQueryTask task = new SqlQueryTask(String.format( + cityQuery, state, num), "maps"); + + // retrieve cities for this area + QueryResult citiesResult = null; + try { + citiesResult = task.execute(); + } catch (Exception e) { + statusHandler + .error("Error getting cites for " + ean, e); + } + + sb.setLength(0); + sb.append("'").append(ean).append("': {"); + sb.append("'fullStateName': '").append(fullStateName) + .append("', "); + sb.append("'state': '").append(state).append("', "); + + sb.append("'cities': ["); + if ((citiesResult != null) + && (citiesResult.getResultCount() > 0)) { + for (QueryResultRow city : citiesResult.getRows()) { + String name = (String) city.getColumn(0); + Object population = city.getColumn(1); + Double lat = (Double) city.getColumn(2); + Double lon = (Double) city.getColumn(3); + + if (name.indexOf("'") >= 0) { + sb.append("(\"").append(name).append("\", "); + } else { + sb.append("('").append(name).append("', "); + } + if (population == null) { + sb.append("None, "); + } else { + sb.append(population.toString()).append(", "); + } + sb.append("'").append(df.format(lat)).append("', "); + sb.append("'").append(df.format(lon)) + .append("'), "); + } + sb.setLength(sb.length() - 2); + } + sb.append("], "); + + sb.append("'partOfState': '").append(partOfState) + .append("', "); + sb.append("'wfo': '").append(wfo).append("'}, "); + out.println(sb.toString()); + } + } catch (Exception e) { + statusHandler.error(e.getLocalizedMessage(), e); + } + + out.println("}"); + } catch (LocalizationException e) { + statusHandler.error(e.getLocalizedMessage(), e); + } + + try { + lf.save(); + } catch (Exception e) { + statusHandler.error(e.getLocalizedMessage(), e); + } + + } + + private void genStateDict() { + SqlQueryTask task = new SqlQueryTask( + "SELECT state, name FROM mapdata.states", "maps"); + try { + QueryResult result = task.execute(); + stateDict = new HashMap(result.getResultCount(), + 1.0f); + for (QueryResultRow row : result.getRows()) { + String st = (String) row.getColumn(0); + String name = (String) row.getColumn(1); + stateDict.put(st, name); + } + + } catch (Exception e) { + statusHandler.error(e.getLocalizedMessage(), e); + } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/Configurator.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/Configurator.java index 253143435d..e349746416 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/Configurator.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/textproducts/Configurator.java @@ -21,7 +21,7 @@ package com.raytheon.edex.plugin.gfe.textproducts; import java.io.File; import java.io.IOException; -import java.util.ArrayList; +import java.io.PrintWriter; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -32,10 +32,14 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.edex.utility.ProtectedFiles; +import com.raytheon.uf.common.dataplugin.gfe.python.GfePyIncludeUtil; +import com.raytheon.uf.common.dataquery.db.QueryResult; +import com.raytheon.uf.common.dataquery.db.QueryResultRow; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; +import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.python.PyUtil; import com.raytheon.uf.common.python.PythonScript; @@ -45,6 +49,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterTask; +import com.raytheon.uf.edex.database.tasks.SqlQueryTask; /** * Generate and configure text products when needed. @@ -59,11 +64,13 @@ import com.raytheon.uf.edex.database.cluster.ClusterTask; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jul 7, 2008 1222 jelkins Initial creation - * Jul 24,2012 #944 dgilling Fix text product template generation + * Jul 7, 2008 1222 jelkins Initial creation + * Jul 24, 2012 #944 dgilling Fix text product template generation * to create textProducts and textUtilities. - * Sep 07,2012 #1150 dgilling Fix isConfigured to check for textProducts + * Sep 07, 2012 #1150 dgilling Fix isConfigured to check for textProducts * and textUtilities dirs. + * Oct 20, 2014 #3685 randerso Added code to generate SiteCFG.py from GIS database + * Cleaned up how protected file updates are returned * * * @@ -75,6 +82,8 @@ public class Configurator { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(Configurator.class); + private static final String CWA_QUERY = "select wfo, region, fullstaid, citystate, city, state from mapdata.cwa order by wfo;"; + private static final String CONFIG_TEXT_PRODUCTS_TASK = "GfeConfigureTextProducts"; private String siteID; @@ -183,26 +192,79 @@ public class Configurator { */ @SuppressWarnings("unchecked") public void execute() { - PythonScript python = null; - List preEvals = new ArrayList(); - + if (isConfigured()) { + statusHandler.info("All text products are up to date"); + return; + } IPathManager pathMgr = PathManagerFactory.getPathManager(); + LocalizationContext context = pathMgr.getContext( + LocalizationType.COMMON_STATIC, LocalizationLevel.CONFIGURED); + context.setContextName(siteID); + + // regenerate siteCFG.py + LocalizationFile lf = null; + try { + lf = pathMgr.getLocalizationFile(context, + FileUtil.join("python", "gfe", "SiteCFG.py")); + + SqlQueryTask task = new SqlQueryTask(CWA_QUERY, "maps"); + QueryResult results = task.execute(); + try (PrintWriter out = new PrintWriter(lf.openOutputStream())) { + out.println("##"); + out.println("# Contains information about products, regions, etc. for each site"); + out.println("# in the country."); + out.println("# region= two-letter regional identifier, mainly used for installation of"); + out.println("# text product templates"); + out.println("SiteInfo= {"); + for (QueryResultRow row : results.getRows()) { + String wfo = (String) row.getColumn(0); + String region = (String) row.getColumn(1); + String fullStationID = (String) row.getColumn(2); + String wfoCityState = (String) row.getColumn(3); + String wfoCity = (String) row.getColumn(4); + String state = (String) row.getColumn(5); + + out.println(formatEntry(wfo, region, fullStationID, + wfoCityState, wfoCity, state)); + + // Add in AFC's dual domain sites + if (wfo.equals("AFC")) { + out.println(formatEntry("AER", region, fullStationID, + wfoCityState, wfoCity, state)); + out.println(formatEntry("ALU", region, fullStationID, + wfoCityState, wfoCity, state)); + } + } + + // Add in the national centers since they + // aren't in the shape file + out.println(formatEntry("NH1", "NC", "KNHC", + "National Hurricane Center Miami FL", "Miami", "")); + out.println(formatEntry("NH2", "NC", "KNHC", + "National Hurricane Center Miami FL", "Miami", "")); + out.println(formatEntry("ONA", "NC", "KWBC", + "Ocean Prediction Center Washington DC", + "Washington DC", "")); + out.println(formatEntry("ONP", "NC", "KWBC", + "Ocean Prediction Center Washington DC", + "Washington DC", "")); + + out.println("}"); + } // out is closed here + + lf.save(); + } catch (Exception e) { + statusHandler.error(e.getLocalizedMessage(), e); + } + + PythonScript python = null; + LocalizationContext edexCx = pathMgr.getContext( LocalizationType.EDEX_STATIC, LocalizationLevel.BASE); - LocalizationContext commonCx = pathMgr.getContext( - LocalizationType.COMMON_STATIC, LocalizationLevel.BASE); String filePath = pathMgr.getFile(edexCx, "textproducts" + File.separator + "Generator.py").getPath(); - String textProductPath = pathMgr.getFile(edexCx, - "textProducts.Generator").getPath(); - String jutilPath = pathMgr.getFile(commonCx, "python").getPath(); - - // Add some getters we need "in the script" that we want hidden - preEvals.add("from JUtil import pylistToJavaStringList"); - preEvals.add("from textproducts.Generator import Generator"); - preEvals.add("generator = Generator()"); - preEvals.add("def getProtectedData():\n return pylistToJavaStringList(generator.getProtectedFiles())"); + String commonPython = GfePyIncludeUtil.getCommonPythonIncludePath(); Map argList = new HashMap(); argList.put("siteId", siteID); @@ -210,20 +272,18 @@ public class Configurator { try { python = new PythonScript(filePath, PyUtil.buildJepIncludePath( - pythonDirectory, textProductPath, jutilPath), this - .getClass().getClassLoader(), preEvals); + pythonDirectory, commonPython), this.getClass() + .getClassLoader()); // Open the Python interpreter using the designated script. - python.execute("generator.create", argList); - protectedFilesList = (List) python.execute( - "getProtectedData", null); + protectedFilesList = (List) python.execute("runFromJava", + argList); updateProtectedFile(); updateLastRuntime(); } catch (JepException e) { statusHandler.handle(Priority.PROBLEM, "Error Configuring Text Products", e); - e.printStackTrace(); } finally { if (python != null) { python.dispose(); @@ -231,6 +291,22 @@ public class Configurator { } } + private String formatEntry(String wfo, String region, String fullStationID, + String wfoCityState, String wfoCity, String state) { + StringBuilder sb = new StringBuilder(); + sb.append(" '").append(wfo).append("': {\n"); + sb.append(" 'region': '").append(region).append("',\n"); + sb.append(" 'fullStationID': '").append(fullStationID) + .append("',\n"); + sb.append(" 'wfoCityState': '").append(wfoCityState) + .append("',\n"); + sb.append(" 'wfoCity': '").append(wfoCity).append("',\n"); + sb.append(" 'state': '").append(state).append("',\n"); + sb.append(" },"); + + return sb.toString(); + } + /** * Update the protected files. */ diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/util/SendNotifications.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/util/SendNotifications.java index 76cce585ff..a5124c948f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/util/SendNotifications.java +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/util/SendNotifications.java @@ -23,14 +23,11 @@ package com.raytheon.edex.plugin.gfe.util; import java.util.ArrayList; import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.dataplugin.gfe.server.message.ServerResponse; import com.raytheon.uf.common.dataplugin.gfe.server.notify.GfeNotification; -import com.raytheon.uf.common.dataplugin.gfe.util.GfeUtil; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.core.EDEXUtil; -import com.raytheon.uf.edex.core.EdexException; /** * Sends GFE notifications to the GFE notify JMS topic. @@ -43,14 +40,16 @@ import com.raytheon.uf.edex.core.EdexException; * 09/22/09 3058 rjpeter changed to utility. * 06/12/13 2099 dgilling Remove error when passed empty list of * notifications. + * 10/08/14 #3684 randerso Changed to send directly to JMS topic + * * * * @author bphillip * @version 1.0 */ public class SendNotifications { - protected static final transient Log logger = LogFactory - .getLog(SendNotifications.class); + private static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(SendNotifications.class); public static ServerResponse send(GfeNotification notification) { List notifications = new ArrayList(); @@ -66,12 +65,11 @@ public class SendNotifications { } try { - EDEXUtil.getMessageProducer().sendAsync(GfeUtil.NOTIFY, + EDEXUtil.getMessageProducer().sendAsyncThriftUri( + "jms-generic:topic:edex.alerts.gfe?timeToLive=60000", notifications); - // logger.info("Sending " + notifications.size() + " " - // + notifications.get(0).getClass().getSimpleName()); - } catch (EdexException e) { - logger.error("Error sending gfe notification", e); + } catch (Exception e) { + statusHandler.error("Error sending gfe notification", e); sr.addMessage("Error sending gfe notification"); } return sr; diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml index 7443be9698..2b73c5826f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml @@ -1,9 +1,16 @@ + gfs20km + gfs20km + gfs20km + gfs20km + ESTOFS + ESTOFS glerl localMPE mosaicMPE localHPE + HRRR localBHPE qpf218 nogaps @@ -89,6 +96,7 @@ gfs161 ruc130 rtmaNDFD + urmaNDFD rtmaNDFD aKrtmaNDFD NamDNG5 @@ -136,6 +144,7 @@ rtmaNDFD rtmaNDFD aKrtmaNDFD + aKrtmaNDFD HIrtmaNDFD PRrtmaNDFD rtmaNDFD @@ -179,4 +188,30 @@ ecmfNH ecmfNH laps + PHISH + rtofsAtlantic + rtofsAtlantic + rtofsAtlantic + rtofsAtlantic + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + rtofsGlobal + GLOBHwave + AKHwave10 + AKHwave4 + WPHwave10 + NPHwave15 + NPHwave10 + NPHwave4 + NAHwave15 + NAHwave10 + NAHwave4 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/parameter/alias/gfeParamName.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/parameter/alias/gfeParamName.xml index 75ff952084..c252ce8276 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/parameter/alias/gfeParamName.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/parameter/alias/gfeParamName.xml @@ -6,6 +6,7 @@ Changed TP_XXX to tpXXX for RFC total precip Jul 03, 2013 #2044 randerso Removed mappings from tpXXX to tp_XXX for RFCQPF Mar 31, 2014 #2934 dgilling Updated params for pSurge2.0/PHISH data. + Jul 03, 2014 DR 14068 mfoster Added parameters for 3km AK-RTMA --> av @@ -23,11 +24,15 @@ dirsw dpd dpt + dpterranl + ELEV emsp ept + ETSRG geh gh gvv + hailprob heli hidx htsgw @@ -45,15 +50,22 @@ pmsl pot p + perranl pr + prsvr + prsigsv pvv pw rh scp shf sh + sighailprob + sigtrndprob + sigwindprob sli snd + srcono svv swdir swell @@ -68,18 +80,24 @@ tp6hr tp t + terranl ustm uw vapp vis + viserranl vpt vstm vw wd + wderranl weasd wgh wgs + windprob + wgserranl ws + wserranl wvdir wvhgt wvper @@ -268,6 +286,7 @@ thp6hr tmean totsn + tp1hr tp120hr tp12c1 tp12c2 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/python/gfe/AbsTime.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/python/gfe/AbsTime.py index a7c702e1a4..dc7d70a43f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/python/gfe/AbsTime.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/python/gfe/AbsTime.py @@ -22,6 +22,9 @@ import calendar from java.util import Date import JUtil +import dateutil.tz +GMT_ZONE = dateutil.tz.gettz('GMT') + # # Provides a AWIPS I GFE partially-compatible wrapper to AbsTime # @@ -34,7 +37,7 @@ import JUtil # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 04/10/08 chammack Initial Creation. -# +# 12/01/2014 #3875 randerso Set time zone on underlying datetime object to GMT # # class AbsTime(datetime, JUtil.JavaWrapperClass): @@ -47,8 +50,9 @@ class AbsTime(datetime, JUtil.JavaWrapperClass): tmp = datetime.utcfromtimestamp(arg) else: tmp = datetime.utcfromtimestamp(arg.getTime() / 1000) + return datetime.__new__(self, tmp.year,tmp.month, - tmp.day, tmp.hour, tmp.minute, tmp.second) + tmp.day, tmp.hour, tmp.minute, tmp.second, tzinfo=GMT_ZONE) def unixTime(self): tuple = self.utctimetuple() diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/Maps.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/Maps.py index e9adf4e100..c5170ae9d1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/Maps.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/Maps.py @@ -20,8 +20,18 @@ # NOTE: THIS FILE SHOULD NOT BE USER_MODIFIED. INSTEAD, REFER TO THE # DOCUMENTATION ON HOW ENTRIES IN THIS FILE MAY BE OVERRIDDEN. REFER TO # LOCALMAPS DOCUMENTATION. - +# # Maps.py - map background definitions for ifpServer +# +# ---------------------------------------------------------------------------- +# +# SOFTWARE HISTORY +# +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# 02/20/2014 #2824 randerso Added log message when no localMaps file is found +# +######################################################################## from ShapeTable import ShapeTable @@ -311,7 +321,8 @@ if not BASELINE: try: from localMaps import * except ImportError: - pass + import LogStream + LogStream.logEvent("No localMaps file found, using baseline settings."); def getMaps(): from java.util import ArrayList diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/doConfig.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/doConfig.py index 42d6d43356..5c57230ee4 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/doConfig.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/doConfig.py @@ -30,6 +30,8 @@ # ------------ ---------- ----------- -------------------------- # 08/09/2013 #1571 randerso Changed projections to use the Java # ProjectionType enumeration +# 07/09/2014 #3146 randerso Added check for duplicate smartInit +# rferrel Corrected log to alertviz. # ######################################################################## import types @@ -438,7 +440,7 @@ def otherParse(serverhost, mhsid, port, "not an int: " + `vtecRequestTime` if type(port) != int: raise TypeError, "GFESUITE_PORT not an int: " + `port` - initmodules = dictCheck(initmodules, list, str, "INITMODULES") + javainitmodules = dictCheck(initmodules, list, str, "INITMODULES") accumElem = dictCheck(accumElem, list, str, "D2DAccumulativeElements") initskips = dictCheck(initskips, list, int, "INITSKIPS") d2ddbver = dictCheck(d2ddbver, int, None, "D2DDBVERSIONS") @@ -507,9 +509,41 @@ def otherParse(serverhost, mhsid, port, raise TypeError, "TRANSMIT_SCRIPT not None or str: " + `transmitScript` elif transmitScript is None: transmitScript = "" + + # build model to init mapping + modelToInit = {} + for module in initmodules: + for model in initmodules[module]: + if modelToInit.has_key(model): + modelToInit[model].append(module) + else: + modelToInit[model] = [module] + + # check for duplicate init modules + for model in modelToInit: + modules = modelToInit[model] + if len(modules) > 1: + message = "Multiple smartInit modules " + str(modules) + \ + " are enabled for D2D model: " + model + ". " + str(modules[1:]) + \ + " will be disabled. Please edit your localConfig.py file and disable all but one." + + # log error message to edex log + import LogStream + LogStream.logProblem(message); + + # log error to alertViz + from com.raytheon.uf.edex.core import EDEXUtil + from com.raytheon.uf.common.status import UFStatus_Priority as Priority + EDEXUtil.sendMessageAlertViz(Priority.ERROR, + "com.raytheon.edex.plugin.gfe", "GFE", "GFE", message, + message, None) + + # remove duplicate + for module in modules[1:]: + javainitmodules.remove(module) return serverhost, mhsid, \ - port, initmodules, accumElem, \ + port, javainitmodules, accumElem, \ initskips, d2ddbver, logfilepurge, prddir, home,\ extraWEPrecision, vtecRequestTime, \ autoConfigureNotifyTextProd, \ diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/serverConfig.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/serverConfig.py index 1bc103b0a7..d619b509a2 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/serverConfig.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/config/gfe/serverConfig.py @@ -36,10 +36,16 @@ # 10/03/2013 #2424 randerso Change localTC to use dateutil instead of pytz # to get correct offsets for Alaska # 01/17/2014 #2719 randerso Added NHA domain +# 02/20/2014 #2824 randerso Added log message when local override files are not found +# 03/11/2014 #2897 dgilling Add new MHWM databases to default configuration. # 03/20/2014 #2418 dgilling Remove unneeded D2D source PHISH. -# 04/17/14 2934 dgilling Remove alias for TPCSurgeProb D2D database. -# 05/09/2014 3148 randerso Add tpHPCndfd to D2DAccumulativeElements for HPCERP +# 04/17/2014 #2934 dgilling Remove alias for TPCSurgeProb D2D database. +# 05/09/2014 #3148 randerso Add tpHPCndfd to D2DAccumulativeElements for HPCERP +# 06/20/2014 #3230 rferrel Added URMA25. # +# 05/29/2014 #3224 randerso Added "SPC":8 to D2DDBVERSIONS +# 07/09/2014 #3146 randerso Removed unused import +# 12/03/2014 #3866 rferrel Added GFS20 ######################################################################## #---------------------------------------------------------------------------- @@ -61,6 +67,8 @@ def siteImport(modName): if fp: fp.close() except ImportError: + import LogStream + LogStream.logEvent("No " + modName + " file found, using baseline settings."); return 0 globals()[modName] = __import__(modName) return 1 @@ -233,6 +241,7 @@ else: TdUnc = ("TdUnc", SCALAR, "F", "Dewpoint Anl Uncertainty", 15.0, 0.0, 0, NO) WSpdUnc = ("WSpdUnc", SCALAR, "kts", "WSpd Anl Uncertainty", 12.0, 0.0, 0, NO) WDirUnc = ("WDirUnc", SCALAR, "deg", "WDir Anl Uncertainty", 10.0, 0.0, 0, NO) +VisUnc = ("VisUnc", SCALAR, "SM", "Vsby Anl Uncertainty", 10.0, 0.0, 2, NO) # NamDNG5 parms QPF3 = ("QPF3", SCALAR, "in", "3HR QPF", 3.0, 0.0, 2, YES) @@ -308,6 +317,9 @@ Hazards = ("Hazards", DISCRETE, "wwa", "Hazards", YES, HazardKeys, 4) # use in calculations) Either form may be used. ExtraWEPrecision = [] +# Parms for ESTOFS +AstroTide = ("AstroTide", SCALAR, "ft", "Astro Tide", 20.0, -8.0, 1, NO) +StormSurge = ("StormSurge", SCALAR, "ft", "Storm Surge", 30.0, -5.0, 1, NO) #--------------------------------------------------------------------------- # @@ -962,6 +974,7 @@ Official = ('Official', GRID, '', YES, YES, 1, 24) ISC = ('ISC', GRID, '', YES, NO, 1, 12) LAPS = ('LAPS', GRID, '', YES, NO, 1, 30) SAT = ('SAT', GRID, '', YES, NO, 1, 12) +ESTOFS = ('ESTOFS', GRID, '', NO, NO, 2, 0) HPCGuide = ('HPCGuide', GRID, '', NO, NO, 2, 0) NAM12 = ('NAM12', GRID, '', NO, NO, 2, 0) NAM40 = ('NAM40', GRID, '', NO, NO, 2, 0) @@ -984,6 +997,7 @@ GlobalWave = ('GlobalWave', GRID, '', NO, NO, 2, 0) GLWM = ('GLWM', GRID, '', NO, NO, 2, 0)##########DCS3499 HIRESWarw = ('HIRESWarw', GRID, '', NO, NO, 2, 0)##########DCS3501 HIRESWnmm = ('HIRESWnmm', GRID, '', NO, NO, 2, 0) +HRRR = ("HRRR", GRID, '', NO, NO, 3, 0) #### SPC = ('SPC', GRID, '', NO, NO, 2, 0)###DR20634 WCwave10 = ('WCwave10', GRID, '', NO, NO, 2, 0) WCwave4 = ('WCwave4', GRID, '', NO, NO, 2, 0) @@ -1025,6 +1039,7 @@ D2DDBVERSIONS = { "TPCStormSurge": 1, "CRMTopo": 1, "NED": 1, + "SPC": 8, } #--------------------------------------------------------------------------- @@ -1051,13 +1066,24 @@ if SID in ALASKA_SITES: 'AKwave10', 'AKwave4', 'GlobalWave', - ('AK-RTMA','RTMA'), +# ('AK-RTMA','RTMA'), + ('AK-RTMA3','RTMA'), # Only have one RTMA ('AK-NamDNG5','NamDNG5'), ('MOSGuide-AK', 'MOSGuide'), ('HiResW-ARW-AK', 'HIRESWarw'), ('HiResW-NMM-AK', 'HIRESWnmm'), ('SPCGuide', 'SPC'), ('TPCWindProb', 'TPCProb'), + 'RTOFS-Alaska', + 'RTOFS-Arctic', + 'RTOFS-Bering', + 'RTOFS-GulfAlaska', + 'RTOFS-HudsonBaffin', + 'NPHwave15', + 'AKHwave10', + 'AKHwave4', + 'GLOBHwave', + ('GFS217', 'GFS20'), ] # Hawaii OCONUS @@ -1075,6 +1101,12 @@ elif SID == "HFO": ('SPCGuide', 'SPC'), ('TPCWindProb', 'TPCProb'), ('ECMWF-HiRes','ECMWFHiRes'), + 'RTOFS-Honolulu', + 'NPHwave15', + 'WPHwave10', + 'NPHwave4', + 'GLOBHwave', + ('GFS20-PAC', 'GFS20'), ] # San Juan OCONUS @@ -1097,6 +1129,13 @@ elif SID == "SJU": ('SPCGuide', 'SPC'), ('TPCWindProb', 'TPCProb'), ('ECMWF-HiRes','ECMWFHiRes'), + 'RTOFS-Atlantic', + ('estofsPR', 'ESTOFS'), + 'NAHwave15', + 'NAHwave10', + 'NAHwave4', + 'GLOBHwave', + ('GFS20-PRICO', 'GFS20'), ] # Guam OCONUS @@ -1106,6 +1145,10 @@ elif SID == "GUM": 'GWW233', 'GlobalWave', ('TPCWindProb', 'TPCProb'), + 'RTOFS-Guam', + 'WPHwave10', + 'GLOBHwave', + ('GFS20-PAC', 'GFS20'), ] #CONUS sites @@ -1113,6 +1156,7 @@ elif SID in CONUS_EAST_SITES: D2DMODELS = [('GFS212', 'GFS40'), ('AVN211', 'GFS80'), ('ETA', 'NAM80'), + ('HRRR', 'HRRR'), ('NGM', 'NGM80'), ('MRF', 'gfsLR'), ('RUC130', 'RUC13'), @@ -1155,6 +1199,17 @@ elif SID in CONUS_EAST_SITES: ('SPCGuide', 'SPC'), ('ECMWF-HiRes','ECMWFHiRes'), ('ENPWAVE253', 'ENPwave'), + ('estofsUS', 'ESTOFS'), + 'NAHwave15', + 'NAHwave10', + 'NAHwave4', + 'NPHwave15', + 'NPHwave10', + 'NPHwave4', + 'WPHwave10', + 'GLOBHwave', + 'URMA25', + ('GFS215', 'GFS20'), ] else: #######DCS3501 WEST_CONUS @@ -1174,6 +1229,7 @@ else: #######DCS3501 WEST_CONUS ('HPCqpf', 'HPCQPF'), ('HPCqpfNDFD', 'HPCERP'), ('RFCqpf', 'RFCQPF'), + ('HRRR', 'HRRR'), #DR3511 'HPCdelta', 'GLERL', 'WNAWAVE238', @@ -1205,6 +1261,16 @@ else: #######DCS3501 WEST_CONUS ('SPCGuide', 'SPC'), ('ECMWF-HiRes','ECMWFHiRes'), ('ENPWAVE253', 'ENPwave'), + 'NAHwave15', + 'NAHwave10', + 'NAHwave4', + 'NPHwave15', + 'NPHwave10', + 'NPHwave4', + 'WPHwave10', + 'GLOBHwave', + 'URMA25', + ('GFS215', 'GFS20'), ] if SID in GreatLake_SITES: @@ -1397,6 +1463,7 @@ elif SID == "SJU": # "EPwave10" : ["EPwEave10"], "RTMA": ['RTMA'], "NamDNG5" : ["NamDNG5"], + "ESTOFS" : ["ESTOFS"], } # Guam OCONUS @@ -1429,6 +1496,7 @@ else: "RTMA": ['RTMA'], "NamDNG5" : ["NamDNG5"], "SREF" : ["SREF"], + "HRRR" : ['HRRR'], #########DCS3501 "GLWM" : ["GLWM"], "HIRESWarw" : ["HIRESWarw"], @@ -1441,6 +1509,7 @@ else: # "WNAwave10" : ["WNAwave10"], # "WNAwave4" : ["WNAwave4"], # "ENPwave": ["ENPwave"], + "ESTOFS" : ["ESTOFS"], } #initialization skip certain model runs @@ -1464,6 +1533,7 @@ D2DAccumulativeElements= { "GFS80": ["tp", "cp"], "GFS75": ["tp", "cp"], "GFS190": ["tp", "cp"], + "HRRR": ["tp1hr", "crain", "csnow", "cfrzr", "cicep"], "NAM95": ["tp", "cp"], "NAM80": ["tp", "cp"], "NAM40": ["tp", "cp"], @@ -1581,7 +1651,7 @@ localRTMAParms = [] localNamDNG5Parms = [] localSREFParms = [] localTPCProbParms = [] -localISCExtraParms = [] +localHRRRParms = localESTOFSParms = localISCExtraParms = [] myOfficeType = SITES[GFESUITE_SITEID][5] @@ -1594,6 +1664,7 @@ if not BASELINE and siteImport('localConfig'): else: myOfficeType = SITES[GFESUITE_SITEID] #probably from localConfig + localESTOFSParms = getattr(localConfig, 'parmsESTOFS', localESTOFSParms) localParms = getattr(localConfig, 'parms', localParms) localNAM12Parms = getattr(localConfig, 'parmsNAM12', localNAM12Parms) localOPCWavEParms = getattr(localConfig, 'parmsOPCWavE', localOPCWavEParms) @@ -1618,6 +1689,7 @@ if not BASELINE and siteImport('localConfig'): localGLWMParms = getattr(localConfig, 'parmsGLWM', localGLWMParms) #########DCS3499 localHIRESWarwParms = getattr(localConfig, 'parmsHIRESWarw', localHIRESWarwParms) ########DCS3501 localHIRESWnmmParms = getattr(localConfig, 'parmsHIRESWnmm', localHIRESWnmmParms) + localHRRRParms = getattr(localConfig, 'parmsHRRR', localHRRRParms) #DR20634 localSPCParms = getattr(localConfig, 'parmsSPC', localSPCParms) localWNAWAVEParms = getattr(localConfig, 'parmsWNAWAVE', localWNAWAVEParms) localAKWAVEParms = getattr(localConfig, 'parmsAKWAVE', localAKWAVEParms) @@ -1679,6 +1751,10 @@ STD1_MODEL = [([Temp, Td, RH, Wind, Wind20ft, Sky, FzLevel, SnowLevel], TC1), ([MaxT], MaxTTC), ([MinT], MinTTC), ([Wetflag], FireWx1300TC)] +ESTOFSPARMS = [([StormSurge, AstroTide], TC1)] + +HRRRPARMS = [([Temp, Td, RH, Wind, WindGust, Sky, QPF], TC1)] + # 3 hourly STD3_MODEL = [([Temp, Td, RH, Wind, Wind20ft, Sky, FzLevel, SnowLevel], TC3), ([Haines, MixHgt, FreeWind, TransWind], TC3), @@ -1689,6 +1765,7 @@ STD3_MODEL = [([Temp, Td, RH, Wind, Wind20ft, Sky, FzLevel, SnowLevel], TC3), ([MaxT], MaxTTC), ([MinT], MinTTC), ([Wetflag], FireWx1300TC)] + ######DCS3501 # 3 hourly-HIRESW STD3_MODEL_HIRESW = [([Temp, Td, RH, Wind, FzLevel], TC3), @@ -1796,15 +1873,15 @@ TPCTCM_MODEL = [([HiWind], TC3)] # RTMA database parameter groupings #if SID in ALASKA_SITES: - not sure if this is right if SID in ALASKA_SITES or SID in ["HFO", "SJU"]: - RTMAPARMS = [([Temp,Td,RH,Wind],TC1), + RTMAPARMS = [([Temp,Td,RH,Wind,Vis],TC1), ([MinT],MinTTC), ([MaxT],MaxTTC), ([MinRH],MinRHTC), ([MaxRH],MaxRHTC), - ([TUnc,TdUnc,WSpdUnc,WDirUnc],TC1)] + ([TUnc,TdUnc,WSpdUnc,WDirUnc,VisUnc],TC1)] else: - RTMAPARMS = [([Temp,Td,RH,Wind,QPE,Sky],TC1), + RTMAPARMS = [([Temp,Td,RH,Wind,QPE,Sky,Vis],TC1), ([MinT],MinTTC), ([MaxT],MaxTTC), ([MinRH],MinRHTC), ([MaxRH],MaxRHTC), - ([TUnc,TdUnc,WSpdUnc,WDirUnc],TC1)] + ([TUnc,TdUnc,WSpdUnc,WDirUnc,VisUnc],TC1)] # NamDNG5 database parameter groupings NamDNG5PARMS = [([Temp, Td, RH, Wind, Sky, WindGust, Vis], TC3), @@ -1855,10 +1932,12 @@ DATABASES = [(Official, OFFICIALDBS + localParms), (AKwave10, WAVEPARMS + localAKwave10Parms), (AKwave4, WAVEPARMS + localAKwave4Parms), (EPwave10, WAVEPARMS + localEPwave10Parms), + (ESTOFS, ESTOFSPARMS + localESTOFSParms), (GlobalWave, WAVEPARMS + localGlobalWaveParms), (GLWM, GLWMPARMS + localGLWMParms), #####DCS3499 (HIRESWarw, STD3_MODEL + localHIRESWarwParms), #####DCS3501 (HIRESWnmm, STD3_MODEL + localHIRESWnmmParms), + (HRRR, HRRRPARMS + localHRRRParms), #DR20634 (SPC, SPCPARMS + localSPCParms), (WCwave10, WAVEPARMS + localWCwave10Parms), (WCwave4, WAVEPARMS + localWCwave4Parms), @@ -1920,7 +1999,7 @@ DATABASES.append((ISC, ISCPARMS)) #---------------------------------------------------------------------------- # Server settings DO NOT CHANGE THESE DEFINITIONS #---------------------------------------------------------------------------- -from com.raytheon.edex.plugin.gfe.config import IFPServerConfig, SimpleServerConfig +from com.raytheon.edex.plugin.gfe.config import SimpleServerConfig IFPConfigServer = SimpleServerConfig() #IFPConfigServer.allowedNodes = [] IFPConfigServer.allowTopoBelowZero = 1 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/createAreaDictionary.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/createAreaDictionary.py index 671890445f..280394d1b0 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/createAreaDictionary.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/createAreaDictionary.py @@ -35,8 +35,8 @@ from zones2cities import * # ------------ ---------- ----------- -------------------------- # 01/08/10 #1209 randerso Initial Creation. # 10/19/12 #1091 dgilling Support localMaps.py. -# -# +# 10/20/2014 #3685 randerso Converted text to mixed case +# Fixed mapDict to keep zones from different maps separate # CityLocationDict = {} @@ -111,13 +111,23 @@ def makeCityString(dictRecord): # handle marine states def checkMarineState(ugcCode): #returns None if unknown, description if known - areas = {'AM': 'ATLANTIC COASTAL WATERS', 'GM': 'GULF OF MEXICO', - 'LE': 'LAKE ERIE', 'LO': 'LAKE ONTARIO', 'LH': 'LAKE HURON', - 'SC': 'LAKE ST CLAIR', 'LM': 'LAKE MICHIGAN', 'LS': 'LAKE SUPERIOR', - 'PZ': 'PACIFIC COASTAL WATERS', 'PK': 'ALASKAN COASTAL WATERS', - 'PH': 'HAWAIIAN COASTAL WATERS', 'PM': 'MARIANAS WATERS', - 'AN': 'ATLANTIC COASTAL WATERS', 'PS': 'AMERICAN SAMOA COASTAL WATERS', - 'SL': 'ST LAWRENCE RIVER'} + areas = { + 'AM': 'Atlantic coastal waters', + 'GM': 'Gulf of Mexico', + 'LE': 'Lake Erie', + 'LO': 'Lake Ontario', + 'LH': 'Lake Huron', + 'SC': 'Lake St Clair', + 'LM': 'Lake Michigan', + 'LS': 'Lake Superior', + 'PZ': 'Pacific coastal waters', + 'PK': 'Alaskan coastal waters', + 'PH': 'Hawaiian coastal waters', + 'PM': 'Marianas waters', + 'AN': 'Atlantic coastal waters', + 'PS': 'American Samoa coastal waters', + 'SL': 'St Lawrence River', + } area = ugcCode[0:2] return areas.get(area, None) @@ -128,82 +138,86 @@ def createAreaDictionary(outputDir, mapDict): areadict = {} mapIter = mapDict.entrySet().iterator() while mapIter.hasNext(): - entry = mapIter.next() - ean = str(entry.getKey()) - att = entry.getValue() - if len(ean): - try: - d = {} - if att.containsKey('zone') and att.containsKey('state'): - d['ugcCode'] = str(att.get('state')) + "Z" + str(att.get('zone')) - elif att.containsKey('id'): - d['ugcCode'] = str(att.get('id')) - elif att.containsKey('fips') and att.containsKey('state') and \ - att.containsKey('countyname'): - d['ugcCode'] = str(att.get('state')) + "C" + str(att.get('fips'))[-3:] - d['ugcName'] = string.strip(str(att.get('countyname'))) - else: - continue - - if att.containsKey('state'): - d["stateAbbr"] = str(att.get('state')) - - if att.containsKey('name'): - d["ugcName"] = string.strip(str(att.get('name'))) - - if att.containsKey('time_zone'): - tzvalue = getRealTimeZone(str(att.get('time_zone'))) - if tzvalue is not None: - d["ugcTimeZone"] = tzvalue - - if zonedata.has_key(d['ugcCode']): - cityDict = zonedata[d['ugcCode']] - elif fipsdata.has_key(d['ugcCode']): - cityDict = fipsdata[d['ugcCode']] - else: - cityDict = None - - if cityDict: - cityString = makeCityString(cityDict) - if cityString is not None: - cityString, locs = cityString - if len(cityString): - d["ugcCityString"] = cityString - CityLocationDict[ean] = locs - - # partOfState codes - if zonedata.has_key(d['ugcCode']): - if zonedata[d['ugcCode']].has_key('partOfState'): - d["partOfState"] = \ - zonedata[d['ugcCode']]['partOfState'] - elif fipsdata.has_key(d['ugcCode']): - if fipsdata[d['ugcCode']].has_key('partOfState'): - d["partOfState"] = \ - fipsdata[d['ugcCode']]['partOfState'] - - # full state name - if zonedata.has_key(d['ugcCode']): - if zonedata[d['ugcCode']].has_key('fullStateName'): - d["fullStateName"] = \ - zonedata[d['ugcCode']]['fullStateName'] - elif fipsdata.has_key(d['ugcCode']): - if fipsdata[d['ugcCode']].has_key('fullStateName'): - d["fullStateName"] = \ - fipsdata[d['ugcCode']]['fullStateName'] - else: - marineState = checkMarineState(d['ugcCode']) - if marineState is not None: - d['fullStateName'] = marineState - - - if areadict.has_key(ean) and d != areadict[ean]: - LogStream.logDiag("Mismatch of definitions in " +\ - "AreaDictionary creation. EditAreaName=", ean, - "AreaDict=\n", areadict[ean], "\nIgnored=\n", d) - else: - areadict[ean] = d - except: - LogStream.logProblem("Problem with ", ean, LogStream.exc()) + mapEntry = mapIter.next() + mapname = str(mapEntry.getKey()) + attList = mapEntry.getValue() + attIter = attList.iterator() + while attIter.hasNext(): + att = attIter.next() + ean = str(att.get("editarea")) + if len(ean): + try: + d = {} + if att.containsKey('zone') and att.containsKey('state'): + d['ugcCode'] = str(att.get('state')) + "Z" + str(att.get('zone')) + elif att.containsKey('id'): + d['ugcCode'] = str(att.get('id')) + elif att.containsKey('fips') and att.containsKey('state') and \ + att.containsKey('countyname'): + d['ugcCode'] = str(att.get('state')) + "C" + str(att.get('fips'))[-3:] + d['ugcName'] = string.strip(str(att.get('countyname'))) + else: + continue + + if att.containsKey('state'): + d["stateAbbr"] = str(att.get('state')) + + if att.containsKey('name'): + d["ugcName"] = string.strip(str(att.get('name'))) + + if att.containsKey('time_zone'): + tzvalue = getRealTimeZone(str(att.get('time_zone'))) + if tzvalue is not None: + d["ugcTimeZone"] = tzvalue + + if zonedata.has_key(d['ugcCode']): + cityDict = zonedata[d['ugcCode']] + elif fipsdata.has_key(d['ugcCode']): + cityDict = fipsdata[d['ugcCode']] + else: + cityDict = None + + if cityDict: + cityString = makeCityString(cityDict) + if cityString is not None: + cityString, locs = cityString + if len(cityString): + d["ugcCityString"] = cityString + CityLocationDict[ean] = locs + + # partOfState codes + if zonedata.has_key(d['ugcCode']): + if zonedata[d['ugcCode']].has_key('partOfState'): + d["partOfState"] = \ + zonedata[d['ugcCode']]['partOfState'] + elif fipsdata.has_key(d['ugcCode']): + if fipsdata[d['ugcCode']].has_key('partOfState'): + d["partOfState"] = \ + fipsdata[d['ugcCode']]['partOfState'] + + # full state name + if zonedata.has_key(d['ugcCode']): + if zonedata[d['ugcCode']].has_key('fullStateName'): + d["fullStateName"] = \ + zonedata[d['ugcCode']]['fullStateName'] + elif fipsdata.has_key(d['ugcCode']): + if fipsdata[d['ugcCode']].has_key('fullStateName'): + d["fullStateName"] = \ + fipsdata[d['ugcCode']]['fullStateName'] + else: + marineState = checkMarineState(d['ugcCode']) + if marineState is not None: + d['fullStateName'] = marineState + + + if areadict.has_key(ean) and d != areadict[ean]: + LogStream.logDiag("Mismatch of definitions in " +\ + "AreaDictionary creation. EditAreaName=", ean, + "AreaDict=\n", areadict[ean], "\nIgnored=\n", d) + else: + areadict[ean] = d + except: + LogStream.logProblem("Problem with ", ean, LogStream.exc()) s = """ # ---------------------------------------------------------------------------- diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/fips2cities.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/fips2cities.py index 2d7e01a181..7dcd4fe36a 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/fips2cities.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/fips2cities.py @@ -1,3223 +1,3351 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## +# +# SOFTWARE HISTORY +# +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 16, 2014 #3685 randerso Original A1 file sorted by key +# Oct 16, 2014 #3685 randerso Regenerated from GIS database for mixed case WA +# +## fipsdata = { -'INC077': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BELLEVIEW', None, '38.85000', '-85.36670'), ('BLOCHER', None, '38.71670', '-85.65000'), ('BROOKSBURG', 74, '38.73500', '-85.24380'), ('BRYANTSBURG', None, '38.88330', '-85.36670'), ('CANAAN', None, '38.86670', '-85.30000'), ('CHELSEA', None, '38.65000', '-85.53330'), ('CHINA', None, '38.81670', '-85.33330'), ('DEPUTY', None, '38.80000', '-85.65000'), ('DUPONT', 392, '38.89110', '-85.51690'), ('HANOVER', 2834, '38.71610', '-85.47200'), ('KENT', None, '38.73330', '-85.53330'), ('LANCASTER', None, '38.83330', '-85.51670'), ('MADISON', 12004, '38.75550', '-85.38330'), ('MANVILLE', None, '38.78330', '-85.28330'), ('NORTH MADISON', None, '38.76670', '-85.40000'), ('PAYNESVILLE', None, '38.61670', '-85.48330'), ('SALUDA', None, '38.65000', '-85.50000'), ('VOLGA', None, '38.78330', '-85.51670'), ('WAKEFIELD', None, '38.78330', '-85.55000'), ('WIRT', None, '38.80000', '-85.45000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'ORC049': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BOARDMAN', 2855, '45.83760', '-119.70250'), ('HEPPNER', 1395, '45.35420', '-119.55300'), ('IONE', 321, '45.50100', '-119.82230'), ('IRRIGON', 1702, '45.89690', '-119.48810'), ('LEXINGTON', 263, '45.44570', '-119.68660')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'INC075': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRYANT', 272, '40.53420', '-84.96300'), ('DUNKIRK', 2646, '40.37350', '-85.20790'), ('PENNVILLE', 706, '40.49330', '-85.14740'), ('PORTLAND', 6437, '40.43320', '-84.98110'), ('REDKEY', 1427, '40.34800', '-85.15270'), ('SALAMONIA', 158, '40.38200', '-84.86610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'IWX'}, -'AKC013': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AKUTAN', 713, '54.13630', '-165.78600'), ('COLD BAY', 88, '55.22500', '-162.73890'), ('FALSE PASS', 64, '54.84100', '-163.43680'), ('KING COVE', 792, '55.05860', '-162.29980'), ('NELSON LAGOON', 83, '55.92070', '-161.18900'), ('SAND POINT', 952, '55.31950', '-160.49120')], 'partOfState': '', 'wfo': 'AFC'}, -'UTC031': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ANGLE', None, '38.25000', '-111.97000'), ('CIRCLEVILLE', 505, '38.16340', '-112.26180'), ('GREENWICH', None, '38.43000', '-111.92000'), ('JUNCTION', 177, '38.23840', '-112.22410'), ('KINGSTON', 142, '38.20500', '-112.17920'), ('MARYSVALE', 381, '38.43770', '-112.25810')], 'partOfState': '', 'wfo': 'SLC'}, -'AKC016': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ADAK STATION', None, '51.84290', '-176.64030'), ('ATKA', 92, '52.24220', '-174.20520'), ('NIKOLSKI', 39, '52.96130', '-168.82210'), ('ST. PAUL', 532, '57.21050', '-170.21890')], 'partOfState': '', 'wfo': 'AFC'}, -'ORC041': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BURNT WOODS', None, '44.60000', '-123.61660'), ('CANNIBAL MOUNTAIN', None, '44.34000', '-123.88000'), ('CAPE FOULWEATHER', None, '44.78000', '-124.07000'), ('CAPE PERPETUA', None, '44.29000', '-124.11500'), ('CHITWOOD', None, '44.65000', '-123.81660'), ('DEPOE BAY', 1174, '44.81010', '-124.05830'), ('EDDYVILLE', None, '44.63330', '-123.76660'), ('ELK CITY', None, '44.61660', '-123.86660'), ('GLENEDEN BEACH', None, '44.88330', '-124.03330'), ('HARLAN', None, '44.53330', '-123.68330'), ('KERNVILLE', None, '44.90000', '-124.00000'), ('LINCOLN BEACH', 2078, '44.85000', '-124.04400'), ('LINCOLN CITY', 7437, '44.97260', '-124.00720'), ('LOGSDEN', None, '44.73330', '-123.78330'), ('NEWPORT', 9532, '44.63000', '-124.05390'), ('ONA', None, '44.51000', '-124.00000'), ('OTIS', None, '45.01700', '-123.93300'), ('OTTER ROCK', None, '44.74000', '-124.06000'), ('ROSE LODGE', 1708, '45.02210', '-123.87970'), ('SEAL ROCK', None, '44.50000', '-124.07660'), ('SILETZ', 1133, '44.72210', '-123.91650'), ('SOUTH BEACH', None, '44.61660', '-124.05000'), ('TIDEWATER', None, '44.41660', '-123.90000'), ('TOLEDO', 3472, '44.62090', '-123.93250'), ('WALDPORT', 2050, '44.42140', '-124.06410'), ('YACHATS', 617, '44.31270', '-124.10050'), ('YAQUINA HEAD', None, '44.67500', '-124.07200')], 'partOfState': '', 'wfo': 'PQR'}, -'ORC043': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALBANY', 40852, '44.61700', '-123.09130'), ('BROWNSVILLE', 1449, '44.39300', '-122.98190'), ('CASCADIA', None, '44.40000', '-122.48300'), ('CRABTREE', None, '44.63330', '-122.88330'), ('CRAWFORDSVILLE', None, '44.35000', '-122.85000'), ('FOSTER RESERVOIR', None, '44.41000', '-122.64000'), ('GREEN PETER RESERVOIR', None, '44.47000', '-122.51000'), ('HALSEY', 724, '44.38310', '-123.10810'), ('HARRISBURG', 2795, '44.26850', '-123.16500'), ('HOLLEY', None, '44.35000', '-122.78330'), ('JORDAN', None, '44.73330', '-122.68330'), ('LACOMB', None, '44.58330', '-122.73330'), ('LEBANON', 12950, '44.53490', '-122.90440'), ('LYONS', 1008, '44.77730', '-122.60690'), ('MARION FORKS', None, '44.60000', '-121.95000'), ('MILLERSBURG', 651, '44.68070', '-123.07060'), ('PEORIA', None, '44.45000', '-123.20000'), ('SANTIAM JUNCTION', None, '44.44000', '-121.95000'), ('SANTIAM PASS', None, '44.42200', '-121.84600'), ('SCIO', 695, '44.70540', '-122.84850'), ('SHEDD', None, '44.46660', '-123.11660'), ('SNOW PEAK', None, '44.63000', '-122.59000'), ('SODAVILLE', 290, '44.48390', '-122.86740'), ('SWEET HOME', 8016, '44.40170', '-122.70210'), ('TANGENT', 933, '44.55120', '-123.10790'), ('TOMBSTONE SUMMIT', None, '44.39700', '-122.16000'), ('UPPER SODA', None, '44.41000', '-122.28330'), ('WATERLOO', 239, '44.49530', '-122.82160')], 'partOfState': '', 'wfo': 'PQR'}, -'UTC039': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('AXTELL', None, '39.05000', '-111.82000'), ('CENTERFIELD', 1048, '39.12760', '-111.81720'), ('EPHRAIM', 4505, '39.35970', '-111.58440'), ('FAIRVIEW', 1160, '39.63050', '-111.43540'), ('FOUNTAIN GREEN', 945, '39.62770', '-111.63860'), ('GUNNISON', 2394, '39.15830', '-111.81260'), ('INDIANOLA', None, '39.80000', '-111.48000'), ('MANTI', 3040, '39.26690', '-111.63640'), ('MAYFIELD', 420, '39.11620', '-111.70730'), ('MORONI', 1280, '39.52810', '-111.58230'), ('MOUNT PLEASANT', 2707, '39.54170', '-111.45560'), ('SPRING CITY', 956, '39.48020', '-111.49050'), ('STERLING', 235, '39.19430', '-111.69090')], 'partOfState': '', 'wfo': 'SLC'}, -'UTC037': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ANETH', 598, '37.22000', '-109.18000'), ('BLANDING', 3162, '37.62470', '-109.48010'), ('BLANDING MUNI ARPT', None, '37.58330', '-109.48330'), ('BLUFF', 320, '37.28000', '-109.57000'), ('BLUFF ARPT', None, '37.25000', '-109.63000'), ('CANYONLANDS NP', None, '38.40000', '-109.88000'), ('EASTLAND', None, '37.80000', '-109.15000'), ('FRY CYN', None, '37.63000', '-110.15000'), ('GOULDING', None, '37.00000', '-110.18000'), ('GRAND CO ARPT', None, '38.48330', '-109.45000'), ('LA SAL', 339, '38.33000', '-109.18000'), ('LA SAL JCT', None, '38.32000', '-109.38000'), ('LA SAL JCT ARPT', None, '38.30000', '-109.40000'), ('LOCKERBY', None, '37.80000', '-109.08000'), ('MEXICAN HAT', 88, '37.12860', '-109.91550'), ('MONTEZUMA CREEK', 507, '37.26010', '-109.31330'), ('MONTICELLO', 1958, '37.87150', '-109.33550'), ('MONTICELLO ARPT', None, '37.93330', '-109.35000'), ('MONUMENT VLY ARPT', None, '37.02000', '-110.20000'), ('NAVAJO MTN TRDNG POST', None, '37.01670', '-110.81670'), ('OLJATO', None, '37.03000', '-110.33000'), ('OLJATO ARPT', None, '37.03330', '-110.31670'), ('RED MESA', None, '37.00000', '-109.36670'), ('SAN JUAN CO ARPT', None, '37.93000', '-109.35000'), ('SUMMIT PT', None, '38.05000', '-109.12000'), ('UCOLO', None, '37.80000', '-109.08000'), ('VERDURE', None, '37.78000', '-109.35000'), ('WHITE CYN', None, '37.63000', '-110.43000')], 'partOfState': 'SOUTHEAST', 'wfo': 'GJTSLC'}, -'INC079': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('NORTH VERNON', 6515, '39.00780', '-85.63120'), ('VERNON', 330, '38.98510', '-85.61110')], 'partOfState': 'SOUTHEAST', 'wfo': 'IND'}, -'ORC047': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('AUMSVILLE', 3003, '44.84570', '-122.86810'), ('AURORA', 655, '45.22830', '-122.75560'), ('BREITENBUSH SPRINGS', None, '44.78300', '-121.96700'), ('BROOKS', 410, '45.05000', '-122.96700'), ('DETROIT', 262, '44.73390', '-122.15080'), ('DONALD', 608, '45.22300', '-122.83770'), ('ELKHORN', None, '44.83300', '-122.35000'), ('GATES', 471, '44.75570', '-122.41950'), ('GERVAIS', 2009, '45.10850', '-122.89480'), ('HUBBARD', 2483, '45.18130', '-122.80580'), ('IDANHA', 232, '44.70310', '-122.08340'), ('JEFFERSON', 2487, '44.71800', '-123.00530'), ('KEIZER', 32203, '45.00400', '-123.02120'), ('MARION', 274, '44.75000', '-122.93300'), ('MEHEMA', None, '44.78330', '-122.61660'), ('MILL CITY', 1537, '44.75130', '-122.47710'), ('MONITOR', None, '45.10000', '-122.76660'), ('MOUNT ANGEL', 3121, '45.06930', '-122.79430'), ('MOUNT JEFFERSON', None, '44.68000', '-121.79700'), ('SALEM', 136924, '44.92450', '-123.02210'), ('SILVER FALLS', None, '44.88000', '-122.63000'), ('SILVERTON', 7414, '45.00770', '-122.78070'), ('ST. PAUL', 354, '45.21300', '-122.97550'), ('STAYTON', 6816, '44.80180', '-122.79620'), ('SUBLIMITY', 2148, '44.82920', '-122.79170'), ('TURNER', 1199, '44.84610', '-122.95150'), ('WOODBURN', 20100, '45.14840', '-122.85580')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'SDC115': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ASHTON', 152, '44.99350', '-98.49820'), ('ASHTON', 152, '44.99350', '-98.49820'), ('ATHOL', None, '45.00950', '-98.59680'), ('ATHOL', None, '45.00950', '-98.59680'), ('BRENTFORD', 65, '45.15920', '-98.32150'), ('BRENTFORD', 65, '45.15920', '-98.32150'), ('CONDE', 187, '45.15780', '-98.09670'), ('CONDE', 187, '45.15780', '-98.09670'), ('DOLAND', 297, '44.89440', '-98.09920'), ('DOLAND', 297, '44.89440', '-98.09920'), ('FRANKFORT', 166, '44.87740', '-98.30860'), ('FRANKFORT', 166, '44.87740', '-98.30860'), ('GLENDALE COLONY', None, '44.79930', '-98.28760'), ('GLENDALE COLONY', None, '44.79930', '-98.28760'), ('HILLSIDE COLONY', None, '44.73880', '-98.04590'), ('HILLSIDE COLONY', None, '44.73880', '-98.04590'), ('MANSFIELD', None, '45.24210', '-98.56120'), ('MANSFIELD', None, '45.24210', '-98.56120'), ('MELLETTE', 248, '45.15400', '-98.49800'), ('MELLETTE', 248, '45.15400', '-98.49800'), ('NORTHVILLE', 124, '45.15490', '-98.57850'), ('NORTHVILLE', 124, '45.15490', '-98.57850'), ('REDFIELD', 2897, '44.87300', '-98.52040'), ('REDFIELD', 2897, '44.87300', '-98.52040'), ('SPINK COLONY', None, '44.74660', '-98.29200'), ('SPINK COLONY', None, '44.74660', '-98.29200'), ('SPOTTSWOOD', None, '44.65210', '-98.50560'), ('SPOTTSWOOD', None, '44.65210', '-98.50560'), ('TULARE', 221, '44.73880', '-98.50870'), ('TULARE', 221, '44.73880', '-98.50870'), ('TURTON', 61, '45.04900', '-98.09650'), ('TURTON', 61, '45.04900', '-98.09650'), ('VERDON', 6, '45.24470', '-98.09810'), ('VERDON', 6, '45.24470', '-98.09810')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDC117': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BUNKER', None, '44.23850', '-101.10180'), ('BUNKER', None, '44.23850', '-101.10180'), ('CHANTLER CREEK REC AREA', None, '44.48070', '-100.61730'), ('CHANTLER CREEK REC AREA', None, '44.48070', '-100.61730'), ('FORT PIERRE', 1991, '44.36270', '-100.37930'), ('FORT PIERRE', 1991, '44.36270', '-100.37930'), ('HAYES', None, '44.37120', '-101.02370'), ('HAYES', None, '44.37120', '-101.02370'), ('MISSION RIDGE', None, '44.68880', '-100.79130'), ('MISSION RIDGE', None, '44.68880', '-100.79130'), ('SANSARC', None, '44.50660', '-101.03490'), ('SANSARC', None, '44.50660', '-101.03490'), ('WENDTE', None, '44.24380', '-100.66480'), ('WENDTE', None, '44.24380', '-100.66480'), ('WEST SHORE REC AREA', None, '44.45070', '-100.45140'), ('WEST SHORE REC AREA', None, '44.45070', '-100.45140')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDC111': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARTESIAN', 157, '44.00850', '-97.92300'), ('FORESTBURG', None, '44.02170', '-98.10890'), ('LETCHER', 177, '43.89780', '-98.14350'), ('WOONSOCKET', 720, '44.05470', '-98.27370')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDC113': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BATESLAND', 88, '43.13350', '-102.10020'), ('DENBY', None, '43.06240', '-102.33210'), ('KYLE', 970, '43.42320', '-102.18810'), ('MANDERSON', None, '43.23950', '-102.47070'), ('OGLALA', 1229, '43.18330', '-102.73330'), ('PINE RIDGE', 3171, '43.02750', '-102.55480'), ('PORCUPINE', 407, '43.23330', '-102.33330'), ('RED SHIRT', None, '43.65480', '-102.89240'), ('ROCKYFORD', None, '43.50000', '-102.50000'), ('SHARPS CORNER', None, '43.38330', '-102.40000'), ('SLIM BUTTE', None, '43.05950', '-102.82210'), ('WOUNDED KNEE', 328, '43.14200', '-102.36350')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'INC073': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('COLLEGEVILLE', 865, '40.90810', '-87.16390'), ('DE MOTTE', 3234, '41.19970', '-87.19920'), ('REMINGTON', 1323, '40.76270', '-87.15170'), ('RENSSELAER', 5294, '40.93550', '-87.14920'), ('WHEATFIELD', 772, '41.19130', '-87.05250')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'SDC119': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AGAR', 82, '44.83870', '-100.07250'), ('AGAR', 82, '44.83870', '-100.07250'), ('COW CREEK REC AREA', None, '44.56160', '-100.49750'), ('COW CREEK REC AREA', None, '44.56160', '-100.49750'), ('EAKIN', None, '44.62060', '-100.02590'), ('EAKIN', None, '44.62060', '-100.02590'), ('OKOBOJO CREEK REC AREA', None, '44.60740', '-100.46530'), ('OKOBOJO CREEK REC AREA', None, '44.60740', '-100.46530'), ('ONIDA', 740, '44.70470', '-100.06650'), ('ONIDA', 740, '44.70470', '-100.06650'), ('SUTTON BAY REC AREA', None, '44.88080', '-100.35680'), ('SUTTON BAY REC AREA', None, '44.88080', '-100.35680')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'INC071': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROWNSTOWN', 2978, '38.88030', '-86.04610'), ('CROTHERSVILLE', 1570, '38.79640', '-85.84000'), ('MEDORA', 565, '38.82460', '-86.17070'), ('SEYMOUR', 18101, '38.95850', '-85.88640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'IND'}, -'VIC010': {'fullStateName': 'VIRGIN ISLANDS', 'state': 'VI', 'cities': [('CHRISTIANSTED', None, '17.74630', '-64.70730'), ('FREDERIKSTED', None, '17.71370', '-64.88170'), ('FREDERIKSTED SOUTHEAST', None, '17.70740', '-64.88010'), ('GROVE PLACE', None, '17.72630', '-64.82750')], 'partOfState': '', 'wfo': 'SJU'}, -'LAC077': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BATCHELOR', None, '30.84030', '-91.66140'), ('LETTSWORTH', None, '30.93330', '-91.70470'), ('LIVONIA', 1339, '30.56490', '-91.55010'), ('LOTTIE', None, '30.55610', '-91.64170'), ('MORGANZA', 659, '30.73660', '-91.59070'), ('NEW ROADS', 4966, '30.69410', '-91.45410')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAC075': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BELLE CHASSE', 9848, '29.84590', '-90.00390'), ('BOOTHVILLE', None, '29.32330', '-89.39580'), ('BURAS', None, '29.34210', '-89.49650'), ('EMPIRE', 2211, '29.41190', '-89.61060'), ('MYRTLE GROVE', None, '29.63720', '-89.94920'), ('POINTE A LA HACHE', None, '29.57610', '-89.79170'), ('PORT SULPHUR', 3115, '29.49440', '-89.70850'), ('VENICE', None, '29.27690', '-89.35470')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAC073': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BROWNSVILLE-BAWCOMVILLE', 7616, '32.48380', '-92.16390'), ('CLAIBORNE', 9830, '32.54220', '-92.19670'), ('MONROE', 53107, '32.51170', '-92.08490'), ('RICHWOOD', 2115, '32.44660', '-92.07250'), ('STERLINGTON', 1276, '32.69060', '-92.06480'), ('SWARTZ', 4247, '32.56930', '-91.98610'), ('WEST MONROE', 13250, '32.51480', '-92.14850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAC071': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('EAST NEW ORLEANS', None, '30.06580', '-89.93140'), ('LAKE CATHERINE', None, '30.11420', '-89.70920'), ('NEW ORLEANS', 484674, '29.97000', '-90.08300')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'VTC017': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BRADFORD', 815, '43.99410', '-72.12820'), ('BRAINTREE', None, '43.98000', '-72.75000'), ('BROOKFIELD', None, '44.05000', '-72.60000'), ('CHELSEA', None, '43.98000', '-72.47000'), ('CORINTH', None, '44.02000', '-72.23000'), ('EAST RANDOLPH', None, '43.93000', '-72.55000'), ('NEWBURY', 396, '44.08040', '-72.06060'), ('ORANGE', None, '44.15000', '-72.40000'), ('RANDOLPH', None, '43.92000', '-72.67000'), ('STRAFFORD', None, '43.87000', '-72.38000'), ('THETFORD', None, '43.82000', '-72.23000'), ('TUNBRIDGE', None, '43.88000', '-72.50000'), ('VERSHIRE', None, '43.97000', '-72.32000'), ('WAITS RIVER', None, '44.08000', '-72.28000'), ('WASHINGTON', None, '44.10000', '-72.43000'), ('WELLS RIVER', 325, '44.15140', '-72.06590'), ('WEST FAIRLEE', None, '43.90000', '-72.27000'), ('WILLIAMSTOWN', None, '44.12000', '-72.53000')], 'partOfState': 'CENTRAL', 'wfo': 'BTV'}, -'GAC249': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ELLAVILLE', 1609, '32.23760', '-84.30970')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'LAC079': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ALEXANDRIA', 46342, '31.29190', '-92.46330'), ('BALL', 3681, '31.41830', '-92.41010'), ('BOYCE', 1190, '31.39000', '-92.66940'), ('CALCASIEU', None, '31.09030', '-92.71280'), ('CHENEYVILLE', 901, '31.01090', '-92.28990'), ('DEVILLE', 1007, '31.34660', '-92.15790'), ('ECHO', None, '31.11100', '-92.24100'), ('FLATWOODS', None, '31.40250', '-92.86810'), ('FOREST HILL', 456, '31.05000', '-92.52460'), ('GARDNER', None, '31.26900', '-92.69300'), ('GLENMORA', 1558, '30.97320', '-92.58280'), ('HINESTON', None, '31.14300', '-92.75900'), ('LECOMPTE', 1366, '31.08890', '-92.39860'), ('MCNARY', 211, '30.98670', '-92.57760'), ('PINEVILLE', 13829, '31.33200', '-92.41500'), ('UNION HILL', None, '30.99400', '-92.73100'), ('WOODWORTH', 1080, '31.15000', '-92.50160')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'VAC820': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('WAYNESBORO', 19520, '38.06950', '-78.90260')], 'partOfState': '', 'wfo': 'LWX'}, -'ORC045': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADRIAN', 147, '43.74090', '-117.07010'), ('BEULAH', None, '43.90000', '-118.16670'), ('BROGAN', None, '44.25000', '-117.50000'), ('BURNS JUNCTION', None, '42.78190', '-117.83890'), ('CROWLEY', None, '43.30000', '-117.90000'), ('HARPER', None, '43.85470', '-117.60690'), ('IRONSIDE', None, '44.33330', '-117.93330'), ('JAMIESON', None, '44.18330', '-117.43330'), ('JORDAN VALLEY', 239, '42.97660', '-117.05430'), ('JUNTURA', None, '43.74470', '-118.08580'), ('LITTLE VALLEY', None, '43.90000', '-117.50000'), ('MALHEUR CITY', None, '44.41670', '-117.71670'), ('NYSSA', 3163, '43.87850', '-116.99730'), ('ONTARIO', 10985, '44.02470', '-116.97430'), ('OWYHEE', None, '43.80000', '-117.05000'), ('RIVERSIDE', 189, '43.55000', '-118.15000'), ('ROME', None, '42.83330', '-117.61670'), ('VALE', 1976, '43.98310', '-117.24050'), ('WESTFALL', None, '43.98330', '-117.71670')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOI'}, -'FLC027': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARCADIA', 6604, '27.21960', '-81.85970'), ('BROWNVILLE', None, '27.29700', '-81.81000'), ('FORT OGDEN', None, '27.09000', '-81.95500'), ('NOCATEE', None, '27.16000', '-81.89000'), ('PINE LEVEL', None, '27.26500', '-81.99000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TBW'}, -'MOC199': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARBELA', 40, '40.46300', '-92.01600'), ('AZEN', None, '40.55500', '-92.03140'), ('BIBLE GROVE', None, '40.35020', '-92.30400'), ('BROCK', None, '40.55080', '-92.15060'), ('CRAWFORD', None, '40.46670', '-92.27000'), ('ETNA', None, '40.41730', '-91.97410'), ('GRANGER', 44, '40.46750', '-91.97310'), ('HITT', None, '40.55900', '-92.25140'), ('INDIAN HILLS CA', None, '40.31670', '-92.26670'), ('KILWINNING', None, '40.51220', '-92.33940'), ('MEMPHIS', 2061, '40.46090', '-92.16970'), ('MEMPHIS MEMORIAL AIRPORT', None, '40.45900', '-92.21970'), ('PROSPECT GROVE', None, '40.51880', '-91.98520'), ('RUTLEDGE', 103, '40.31300', '-92.08740'), ('SAND HILL', None, '40.31200', '-92.11800'), ('SOUTH GORIN', 143, '40.36010', '-92.02410'), ('SPILLMAN MOUND', None, '40.31790', '-92.17000')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'MOC195': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARROW ROCK', 79, '39.07000', '-92.94800'), ('BLACKBURN', 284, '39.10490', '-93.48610'), ('EMMA', 243, '38.97650', '-93.49550'), ('GILLIAM', 229, '39.23280', '-93.00370'), ('GRAND PASS', 53, '39.20520', '-93.44320'), ('MALTA BEND', 249, '39.19430', '-93.36410'), ('MARSHALL', 12433, '39.11500', '-93.20220'), ('MIAMI', 160, '39.32170', '-93.22550'), ('MOUNT LEONARD', 123, '39.12500', '-93.39470'), ('NELSON', 212, '38.99350', '-93.03030'), ('SLATER', 2083, '39.22280', '-93.06470'), ('SWEET SPRINGS', 1628, '38.96420', '-93.41640')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'MOC197': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DOWNING', 396, '40.48640', '-92.36850'), ('GLENWOOD', 203, '40.52360', '-92.57630'), ('GREENTOP', 427, '40.35110', '-92.56590'), ('LANCASTER', 737, '40.52270', '-92.53040'), ('QUEEN CITY', 638, '40.41370', '-92.56660')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'KSC047': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELPRE', 104, '37.95100', '-99.09920'), ('CENTERVIEW', None, '37.80000', '-99.27000'), ('FELLSBURG', None, '37.80000', '-99.18000'), ('KINSLEY', 1658, '37.92240', '-99.41110'), ('LEWIS', 486, '37.93700', '-99.25430'), ('OFFERLE', 220, '37.89090', '-99.56050'), ('TROUSDALE', None, '37.80000', '-99.08000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'SDC061': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALEXANDRIA', 563, '43.65390', '-97.77900'), ('EMERY', 439, '43.60270', '-97.62020'), ('FARMER', 18, '43.72480', '-97.68810'), ('FULTON', 86, '43.72820', '-97.82230')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDC063': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BUFFALO', 380, '45.58430', '-103.54760'), ('CAMP CROOK', 56, '45.55000', '-103.98330'), ('GUSTAVE', None, '45.28330', '-103.98330'), ('HARDING', None, '45.39500', '-103.83230'), ('KARINEN', None, '45.90000', '-103.68330'), ('LADNER', None, '45.83330', '-103.73330'), ('LUDLOW', None, '45.83330', '-103.38330'), ('MURCHISON', None, '45.38330', '-103.23330'), ('RALPH', None, '45.77350', '-103.06520'), ('REDIG', None, '45.27120', '-103.54750'), ('REVA', None, '45.54650', '-103.08300')], 'partOfState': 'NORTHWEST', 'wfo': 'UNR'}, -'SDC065': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BLUNT', 370, '44.51550', '-99.98800'), ('BLUNT', 370, '44.51550', '-99.98800'), ('CANNING', None, '44.39650', '-100.03200'), ('CANNING', None, '44.39650', '-100.03200'), ('GREY GOOSE', None, '44.50460', '-100.35060'), ('GREY GOOSE', None, '44.50460', '-100.35060'), ('HARROLD', 209, '44.52330', '-99.73840'), ('HARROLD', 209, '44.52330', '-99.73840'), ('JOE CREEK REC AREA', None, '44.14610', '-99.79680'), ('JOE CREEK REC AREA', None, '44.14610', '-99.79680'), ('OAHE MISSION REC AREA', None, '44.48280', '-100.52850'), ('OAHE MISSION REC AREA', None, '44.48280', '-100.52850'), ('OVERLOOK REC AREA', None, '44.45860', '-100.38410'), ('OVERLOOK REC AREA', None, '44.45860', '-100.38410'), ('PIERRE', 13876, '44.37300', '-100.32250'), ('PIERRE', 13876, '44.37300', '-100.32250'), ('ROSSEAU', None, '44.31640', '-100.07150'), ('ROSSEAU', None, '44.31640', '-100.07150'), ('SPRING CREEK REC AREA', None, '44.54680', '-100.47570'), ('SPRING CREEK REC AREA', None, '44.54680', '-100.47570'), ('WEST BEND REC AREA', None, '44.17110', '-99.71920'), ('WEST BEND REC AREA', None, '44.17110', '-99.71920')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDC067': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CLAYTON', None, '43.44310', '-97.65730'), ('DIMOCK', 151, '43.47600', '-97.98770'), ('FREEMAN', 1317, '43.35090', '-97.43240'), ('MENNO', 729, '43.23790', '-97.57710'), ('OLIVET', 70, '43.24170', '-97.67350'), ('PARKSTON', 1674, '43.39330', '-97.98560'), ('TRIPP', 711, '43.22500', '-97.96640')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDC069': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('HIGHMORE', 851, '44.52070', '-99.43900'), ('HIGHMORE', 851, '44.52070', '-99.43900'), ('HOLABIRD', None, '44.52380', '-99.59770'), ('HOLABIRD', None, '44.52380', '-99.59770'), ('STEPHAN', None, '44.24770', '-99.45260'), ('STEPHAN', None, '44.24770', '-99.45260')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'VAC520': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BRISTOL VA', None, '36.61320', '-82.16810')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'ILC139': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALLENVILLE', 154, '39.55790', '-88.53830'), ('BETHANY', 1287, '39.64420', '-88.74090'), ('CADWELL', None, '39.68330', '-88.53330'), ('DALTON CITY', 581, '39.71410', '-88.80700'), ('GAYS', 259, '39.45790', '-88.49590'), ('KIRKSVILLE', None, '39.56670', '-88.66670'), ('LAKE CITY', None, '39.75000', '-88.71670'), ('LOVINGTON', 1222, '39.71450', '-88.63090'), ('SULLIVAN', 4326, '39.59740', '-88.60710')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'LAC089': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BOUTTE', 2181, '29.89620', '-90.39750'), ('DES ALLEMANDS', 2500, '29.83280', '-90.43000'), ('DESTREHAN', 11260, '29.96180', '-90.36900'), ('HAHNVILLE', 2792, '29.97300', '-90.42100'), ('NEW SARPY', 1568, '29.97740', '-90.38620'), ('NORCO', 3579, '30.00170', '-90.40960')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'KSC043': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('DENTON', 186, '39.73160', '-95.26980'), ('HIGHLAND', 976, '39.86000', '-95.26540'), ('LEONA', 88, '39.78580', '-95.32190'), ('SEVERANCE', 108, '39.76690', '-95.24880'), ('TROY', 1054, '39.78630', '-95.08860'), ('WATHENA', 1348, '39.76430', '-94.94910'), ('WHITE CLOUD', 239, '39.97420', '-95.29720')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'ILC131': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALEDO', 3613, '41.19830', '-90.74740'), ('ALEDO MERCER CO AIRPORT', None, '41.25000', '-90.73330'), ('BODEN', None, '41.26670', '-90.58330'), ('BUFFALO PRAIRIE', None, '41.33330', '-90.85000'), ('BURGESS', None, '41.13330', '-90.63330'), ('CABLE', None, '41.28330', '-90.50000'), ('ELIZA', None, '41.30000', '-90.96670'), ('GILCHRIST', None, '41.20000', '-90.61670'), ('GINGLE CORNERS', None, '41.26670', '-90.73330'), ('GRIFFIN', None, '41.23330', '-90.48330'), ('HAMLET', None, '41.31670', '-90.73330'), ('JOY', 373, '41.19690', '-90.87960'), ('KEITHSBURG', 714, '41.10090', '-90.93590'), ('MANNON', None, '41.23330', '-90.95000'), ('MARSTON', None, '41.31670', '-90.80000'), ('MATHERVILLE', 772, '41.25910', '-90.60570'), ('MILLERSBURG', None, '41.23330', '-90.81670'), ('NEW BOSTON', 632, '41.16940', '-91.00050'), ('NEW WINDSOR', None, '41.20000', '-90.45000'), ('NORTH HENDERSON', 187, '41.09070', '-90.47500'), ('OGLE', None, '41.10000', '-90.88330'), ('OLD GILCHRIST', None, '41.23330', '-90.63330'), ('PETERSVILLE', None, '41.28330', '-90.93330'), ('PREEMPTION', None, '41.31660', '-90.58330'), ('REYNOLDS', 508, '41.33250', '-90.67280'), ('SEATON', 242, '41.10190', '-90.79920'), ('SHALE CITY', None, '41.21660', '-90.63330'), ('SHERRARD', 694, '41.31840', '-90.50530'), ('SUNBEAM', None, '41.13330', '-90.73330'), ('SWEDONA', None, '41.28330', '-90.45000'), ('VIOLA', 956, '41.20520', '-90.58740'), ('WANLOCK', None, '41.21660', '-90.63000')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ILC133': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AMES', None, '38.14520', '-90.05700'), ('BURKSVILLE', None, '38.26730', '-90.15460'), ('CHALFIN BRIDGE', None, '38.21200', '-90.27060'), ('COLUMBIA', 7922, '38.45520', '-90.22620'), ('FOSTER POND', None, '38.31380', '-90.23370'), ('FOUNTAIN', None, '38.35930', '-90.29090'), ('FULTS', 28, '38.16370', '-90.21260'), ('HARRISONVILLE', None, '38.27640', '-90.35050'), ('HECKER', 475, '38.30450', '-89.99400'), ('KIDD', None, '38.11730', '-90.17290'), ('MADONNAVILLE', None, '38.26390', '-90.24710'), ('MAEYSTOWN', 148, '38.22650', '-90.23160'), ('MONROE CITY', None, '38.25470', '-90.26770'), ('NEW DESIGN', None, '38.26820', '-90.11840'), ('NEW HANDOVER', None, '38.39050', '-90.22510'), ('RENAULT', None, '38.15360', '-90.13400'), ('VALMEYER', 608, '38.30410', '-90.31300'), ('WARTBURG', None, '38.28990', '-90.19610'), ('WATERLOO', 7614, '38.33160', '-90.15560')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'ILC135': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BUTLER', 197, '39.19790', '-89.53400'), ('CHAPMAN', None, '39.10570', '-89.31700'), ('COALTON', 307, '39.28460', '-89.30450'), ('COFFEEN', 709, '39.08890', '-89.39050'), ('DONNELLSON', 243, '39.03020', '-89.47460'), ('FARMERSVILLE', 768, '39.44420', '-89.65300'), ('FILLMORE', 362, '39.11570', '-89.27930'), ('HARVEL', 235, '39.35700', '-89.54550'), ('HILLSBORO', 4359, '39.16310', '-89.48440'), ('HONEY BEND', None, '39.25540', '-89.62570'), ('IRVING', 2484, '39.20490', '-89.40600'), ('LITCHFIELD', 6815, '39.17590', '-89.65600'), ('NOKOMIS', 2389, '39.30040', '-89.28530'), ('OHLMAN', 0, '39.34550', '-89.21830'), ('PANAMA', 323, '39.02870', '-89.52520'), ('RAYMOND', 927, '39.32020', '-89.57370'), ('TAYLOR SPRINGS', 583, '39.13070', '-89.49520'), ('VAN BURENSBURG', None, '39.03610', '-89.27950'), ('WAGGONER', 245, '39.37820', '-89.65230'), ('WALSHVILLE', 89, '39.06940', '-89.61950'), ('WENONAH', 44, '39.32010', '-89.28930'), ('WHITE OAK', None, '39.50980', '-89.57120'), ('WITT', 991, '39.25580', '-89.34900')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ILC137': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALEXANDER', None, '39.71670', '-90.05000'), ('CHAPIN', 592, '39.76730', '-90.40330'), ('CONCORD', 176, '39.81610', '-90.37170'), ('FRANKLIN', 586, '39.62040', '-90.04720'), ('JACKSONVILLE', 18940, '39.72970', '-90.23430'), ('LITERBERRY', None, '39.85000', '-90.20000'), ('LYNNVILLE', 137, '39.68500', '-90.34630'), ('MEREDOSIA', 1041, '39.83150', '-90.55830'), ('MURRAYVILLE', 644, '39.58230', '-90.25090'), ('NORTONVILLE', None, '39.56670', '-90.15000'), ('PRENTICE', None, '39.85000', '-90.05000'), ('SINCLAIR', None, '39.81670', '-90.11670'), ('WAVERLY', 1346, '39.59270', '-89.95230'), ('WOODSON', 559, '39.62750', '-90.22290')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'WIC047': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BERLIN', 5305, '43.97000', '-88.95020'), ('GREEN LAKE', 1100, '43.84270', '-88.95570'), ('KINGSTON', 288, '43.69360', '-89.13130'), ('MARKESAN', 1396, '43.70920', '-88.98970'), ('MARQUETTE', 169, '43.74220', '-89.13880'), ('PRINCETON', 1504, '43.85220', '-89.12950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'INC179': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLUFFTON', 9536, '40.74150', '-85.17090'), ('MARKLE', 1102, '40.82640', '-85.33810'), ('OSSIAN', 2943, '40.87860', '-85.16840'), ('PONETO', 240, '40.65610', '-85.22220'), ('UNIONDALE', 277, '40.82840', '-85.24140'), ('VERA CRUZ', 55, '40.70090', '-85.07960')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'GAC067': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ACWORTH', 13422, '34.05990', '-84.67550'), ('AUSTELL', 5359, '33.82200', '-84.64290'), ('FAIR OAKS', 8443, '33.91970', '-84.54460'), ('KENNESAW', 21675, '34.02370', '-84.61630'), ('MABLETON', 29733, '33.81290', '-84.56220'), ('MARIETTA', 58748, '33.95090', '-84.54110'), ('POWDER SPRINGS', 12481, '33.86530', '-84.68260'), ('SMYRNA', 40999, '33.86750', '-84.51690'), ('VININGS', 9677, '33.86160', '-84.46740')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAC109': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BAY BRANCH', None, '32.08640', '-81.97580'), ('BELLVILLE', 130, '32.15220', '-81.97440'), ('CLAXTON', 2276, '32.16140', '-81.90420'), ('DAISY', 126, '32.15170', '-81.83470'), ('EDNA', None, '32.23110', '-81.83080'), ('HAGAN', 898, '32.15580', '-81.93390'), ('JENNIE', None, '32.05060', '-81.88920'), ('UNDINE', None, '32.22720', '-81.97970')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'LAC083': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DELHI', 3066, '32.45640', '-91.48920'), ('MANGHAM', 595, '32.30600', '-91.78090'), ('RAYVILLE', 4234, '32.47160', '-91.75720')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'WIC043': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAGLEY', 339, '42.90360', '-91.09820'), ('BEETOWN', None, '42.79746', '-90.88421'), ('BLOOMINGTON', 701, '42.89210', '-90.92730'), ('BLUE RIVER', 429, '43.18620', '-90.57240'), ('BOSCOBEL', 3047, '43.13960', '-90.70460'), ('BURTON', None, '42.71522', '-90.81842'), ('CASSVILLE', 1085, '42.71560', '-90.99040'), ('CASTLE ROCK', None, '43.04600', '-90.53332'), ('CUBA CITY', 2156, '42.60310', '-90.43130'), ('DICKEYVILLE', 1043, '42.62580', '-90.59210'), ('ELLENBORO', None, '42.78101', '-90.61922'), ('FENNIMORE', 2387, '42.98060', '-90.65060'), ('GEORGETOWN', None, '42.61653', '-90.48398'), ('GLEN HAVEN', None, '42.83035', '-91.06879'), ('HAZEL GREEN', 1183, '42.53430', '-90.43560'), ('HOMER', None, '43.07890', '-90.61739'), ('HURRICANE', None, '42.78101', '-90.76725'), ('KIELER', None, '42.58363', '-90.59911'), ('LANCASTER', 4070, '42.84850', '-90.70800'), ('LIVINGSTON', 597, '42.90070', '-90.43370'), ('MILLVILLE', None, '43.03138', '-90.93356'), ('MONTFORT', 663, '42.97020', '-90.43290'), ('MOUNT HOPE', 186, '42.96970', '-90.85860'), ('MUSCODA', 1453, '43.18730', '-90.43420'), ('NORTH ANDOVER', None, '42.81573', '-90.96828'), ('PATCH GROVE', 166, '42.93930', '-90.97270'), ('PLATTEVILLE', 9989, '42.73520', '-90.47690'), ('POTOSI', 711, '42.68940', '-90.71100'), ('PRESTON', None, '42.96559', '-90.54794'), ('SINSINAWA', None, '42.51601', '-90.53332'), ('STITZER', None, '42.91442', '-90.63384'), ('TENNYSON', 370, '42.68970', '-90.68660'), ('UNION', None, '42.83218', '-90.51687'), ('WERLEY', None, '43.01493', '-90.76725'), ('WOODMAN', 96, '43.09080', '-90.79790')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'WIC129': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ANGUS', None, '45.64780', '-91.60180'), ('BIRCHWOOD', 518, '45.65710', '-91.55220'), ('EARL', None, '45.91070', '-91.76050'), ('LAMPSON', None, '45.98310', '-91.81640'), ('MINONG', 531, '46.09840', '-91.82390'), ('SARONA', None, '45.71120', '-91.80670'), ('SHELL LAKE', 1309, '45.73860', '-91.89910'), ('SPOONER', 2653, '45.82450', '-91.89350'), ('SPRINGBROOK', None, '45.94860', '-91.68840'), ('STANBERRY', None, '46.00740', '-91.62630'), ('TREGO', None, '45.89980', '-91.82110')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'IDC085': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BIG CREEK', None, '45.13330', '-115.31670'), ('CASCADE', 997, '44.51300', '-116.04070'), ('DEADWOOD RES', None, '44.30000', '-115.66670'), ('DONNELLY', 138, '44.73030', '-116.07590'), ('MCCALL', 2084, '44.91340', '-116.10750'), ('SMITHS FERRY', None, '44.29890', '-116.08000'), ('WARM LAKE', None, '44.64780', '-115.66890'), ('YELLOW PINE', None, '44.90000', '-115.48330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BOI'}, -'LAC081': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('COUSHATTA', 2299, '32.02480', '-93.34050'), ('EDGEFIELD', 190, '32.04880', '-93.33580'), ('HALL SUMMIT', 264, '32.17690', '-93.30490'), ('MARTIN', 625, '32.09910', '-93.21830')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'IDC081': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CLEMENTSVILLE', None, '43.87000', '-111.37000'), ('DRIGGS', 1100, '43.72530', '-111.10710'), ('FELT', None, '43.87000', '-111.18000'), ('JUDKINS', None, '43.92000', '-111.15000'), ('TETONIA', 247, '43.81590', '-111.15880'), ('VICTOR', 840, '43.60370', '-111.11330')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'TXC447': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ELBERT', 56, '33.26610', '-98.99360'), ('THROCKMORTON', 905, '33.17860', '-99.17720'), ('WOODSON', 296, '33.01440', '-99.05340')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'INC173': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BOONVILLE', 6834, '38.04510', '-87.27370'), ('CHANDLER', 3094, '38.04200', '-87.36900'), ('ELBERFELD', 636, '38.16120', '-87.44810'), ('LYNNVILLE', 781, '38.19890', '-87.31740'), ('NEWBURGH', 3088, '37.94650', '-87.40370'), ('TENNYSON', 290, '38.08160', '-87.11890')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'ARC073': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BRADLEY', 563, '33.09990', '-93.65690'), ('BUCKNER', 396, '33.35720', '-93.43540'), ('LEWISVILLE', 1285, '33.36300', '-93.57660'), ('STAMPS', 2131, '33.35870', '-93.49570')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'ILC005': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BEAVER CREEK', None, '38.76760', '-89.39370'), ('DUDLEYVILLE', None, '38.82390', '-89.41820'), ('GREENVILLE', 6955, '38.88930', '-89.40160'), ('MULBERRY GROVE', 671, '38.92440', '-89.26730'), ('OLD RIPLEY', 127, '38.89230', '-89.57300'), ('PIERRON', 653, '38.77890', '-89.56630'), ('PLEASANT MOUND', None, '38.86310', '-89.29040'), ('POCAHONTAS', 727, '38.82450', '-89.53900'), ('RENO', None, '38.96700', '-89.51700'), ('SHILOH HILL', None, '38.92530', '-89.62110'), ('SMITHBORO', 200, '38.89490', '-89.34110'), ('SORENTO', 601, '39.00000', '-89.57270'), ('TAMALCO', None, '38.77090', '-89.29160'), ('WOBURN', None, '38.95870', '-89.34660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ARC071': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CLARKSVILLE', 7719, '35.45760', '-93.47240'), ('COAL HILL', 1001, '35.43700', '-93.66760'), ('HARTMAN', 596, '35.43450', '-93.61850'), ('KNOXVILLE', 511, '35.37780', '-93.36480'), ('LAMAR', 1415, '35.43920', '-93.38780')], 'partOfState': '', 'wfo': 'LZK'}, -'ILC007': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELVIDERE', 20820, '42.25260', '-88.84830'), ('CAPRON', 961, '42.39890', '-88.74260'), ('POPLAR GROVE', 1368, '42.36730', '-88.82290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'ARC077': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AUBREY', 221, '34.71980', '-90.89780'), ('BRICKEYS', None, '34.85000', '-90.58330'), ('GARRET GROVE', None, '34.80000', '-91.08330'), ('HAYNES', 214, '34.88980', '-90.79240'), ('LAGRANGE', 122, '34.65550', '-90.73370'), ('MARIANNA', 5181, '34.77460', '-90.76640'), ('MORO', 241, '34.79250', '-90.98930'), ('NEW SALEM', None, '34.88330', '-91.00000'), ('RONDO', 237, '34.65740', '-90.82020')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC001': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADAMS', None, '39.86540', '-91.19830'), ('BEVERLY', None, '39.79340', '-90.99100'), ('BURTON', None, '39.90460', '-91.25120'), ('CAMP POINT', 1244, '40.03800', '-91.06660'), ('CHATTON', None, '40.15090', '-91.03290'), ('CLAYTON', 904, '40.03030', '-90.95800'), ('COATSBURG', 226, '40.03230', '-91.15940'), ('COLUMBUS', 112, '39.98810', '-91.14650'), ('FALL CREEK', None, '39.77900', '-91.30220'), ('FOWLER', None, '40.00780', '-91.25840'), ('GOLDEN', 629, '40.10970', '-91.01840'), ('KELLERVILLE', None, '39.93120', '-90.93450'), ('KINGSTON', 980, '39.81670', '-91.02880'), ('LA PRAIRIE', 60, '40.14710', '-91.00270'), ('LIBERTY', 519, '39.88080', '-91.10800'), ('LIMA', 159, '40.17670', '-91.37500'), ('LORAINE', 363, '40.15320', '-91.22220'), ('MARBLEHEAD', None, '39.83980', '-91.36850'), ('MENDON', 883, '40.08910', '-91.28430'), ('MEYER', None, '40.14810', '-91.49650'), ('PALOMA', None, '40.02290', '-91.19520'), ('PAYSON', 1066, '39.81680', '-91.24410'), ('PLAINVILLE', 248, '39.78400', '-91.18160'), ('QUINCY', 40366, '39.93350', '-91.38860'), ('RICHFIELD', None, '39.81540', '-91.11650'), ('URSA', 595, '40.07460', '-91.37060'), ('WOODVILLE', None, '40.18840', '-91.18290')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LSX'}, -'ARC075': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALICIA', 145, '35.89440', '-91.08300'), ('ANNIEVILLE', None, '36.15000', '-91.23330'), ('BLACK ROCK', 717, '36.10640', '-91.10860'), ('COLLEGE CITY', 269, '36.12570', '-90.94000'), ('HOXIE', 2817, '36.04370', '-90.97750'), ('IMBODEN', 684, '36.20170', '-91.17980'), ('LYNN', 315, '36.00660', '-91.25200'), ('MINTURN', 114, '35.97500', '-91.02750'), ('PORTIA', 483, '36.08530', '-91.07130'), ('POWHATAN', 50, '36.08190', '-91.11890'), ('RAVENDEN', 511, '36.23620', '-91.25040'), ('SEDGWICK', 112, '35.97850', '-90.86320'), ('SMITHVILLE', 73, '36.08000', '-91.30280'), ('STRAWBERRY', 283, '35.96560', '-91.32140'), ('WALNUT RIDGE', 4925, '36.06980', '-90.95830')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC003': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAIRO', 3632, '36.99760', '-89.17760'), ('EAST CAPE GIRARDEAU', 437, '37.29020', '-89.48300'), ('TAMMS', 724, '37.23920', '-89.26760'), ('THEBES', 478, '37.21080', '-89.45320')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ARC079': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('GOULD', 1305, '33.98540', '-91.56270'), ('GRADY', 523, '34.07870', '-91.69830'), ('STAR CITY', 2471, '33.94100', '-91.84440')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'LAC085': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CONVERSE', 400, '31.78040', '-93.69980'), ('FISHER', 268, '31.49440', '-93.46030'), ('FLORIEN', 692, '31.44940', '-93.45950'), ('MANY', 2889, '31.56540', '-93.47490'), ('NOBLE', 259, '31.69010', '-93.68300'), ('PLEASANT HILL', 786, '31.81610', '-93.51520'), ('ZWOLLE', 1783, '31.63630', '-93.64350')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'ILC009': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BUCKHORN', None, '39.93300', '-90.83300'), ('COOPERTOWN', None, '39.96400', '-90.60650'), ('LA GRANGE', 15608, '39.94180', '-90.53810'), ('MOUND STATION', 127, '40.00670', '-90.87310'), ('MOUNT STERLING', 2070, '39.98470', '-90.76370'), ('RIPLEY', 103, '40.02500', '-90.63770'), ('VERSAILLES', 567, '39.88380', '-90.65890')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LSX'}, -'COC027': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ROSITA', None, '38.10000', '-105.33000'), ('SAN ISABEL', None, '37.98000', '-105.05000'), ('SILVER CLIFF', 512, '38.11730', '-105.40450'), ('WESTCLIFFE', 417, '38.13290', '-105.46510'), ('WETMORE', None, '38.23000', '-105.08000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'OHC069': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('DESHLER', 1831, '41.20800', '-83.90570'), ('FLORIDA', 246, '41.32300', '-84.20060'), ('HAMLER', 650, '41.23020', '-84.03330'), ('HOLGATE', 1194, '41.24880', '-84.12860'), ('LIBERTY CENTER', 1109, '41.44340', '-84.00810'), ('MALINTA', 285, '41.31960', '-84.03710'), ('MCCLURE', 761, '41.37050', '-83.94200'), ('NAPOLEON', 9318, '41.39480', '-84.12660'), ('NEW BAVARIA', 78, '41.20360', '-84.16700')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'COC025': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CROWLEY', 187, '38.19360', '-103.85850'), ('OLNEY SPRINGS', 389, '38.16730', '-103.94410'), ('ORDWAY', 1248, '38.22090', '-103.75680'), ('SUGAR CITY', 279, '38.23290', '-103.66310')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'GAC101': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MAYDAY', None, '30.82730', '-83.00930'), ('NEEDMORE', None, '30.67890', '-82.67500'), ('STATENVILLE', None, '30.70080', '-83.03000')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'COC023': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BLANCA', 391, '37.43890', '-105.51190'), ('CHAMA', None, '37.17000', '-105.38000'), ('FORT GARLAND', 432, '37.43000', '-105.43000'), ('GARCIA', None, '37.00000', '-105.55000'), ('JAROSO', None, '37.00000', '-105.63000'), ('MESITA', None, '37.08000', '-105.58000'), ('SAN ACACIO', None, '37.22000', '-105.57000'), ('SAN LUIS', 739, '37.20090', '-105.42360'), ('SAN PABLO', None, '37.15000', '-105.40000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'MNC069': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARIBOU', None, '48.98250', '-96.44920'), ('DONALDSON', 41, '48.57470', '-96.89730'), ('HALLOCK', 1196, '48.76640', '-96.94360'), ('HALMA', 78, '48.66080', '-96.59760'), ('HUMBOLDT', 61, '48.92150', '-97.09430'), ('KARLSTAD', 794, '48.57810', '-96.51560'), ('KENNEDY', 255, '48.64350', '-96.91010'), ('LAKE BRONSON', 246, '48.73260', '-96.66260'), ('LANCASTER', 363, '48.85790', '-96.80280'), ('MATTSON', None, '48.68940', '-97.07330'), ('NORTHCOTE', None, '48.84530', '-97.00080'), ('NOYES', None, '48.99750', '-97.20420'), ('ORLEANS', None, '48.92610', '-96.93640'), ('ROBBIN', None, '48.57280', '-97.14220'), ('ST. VINCENT', 117, '48.96780', '-97.22470')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'COC021': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ANTONITO', 873, '37.07650', '-106.01020'), ('BOUNTIFUL', None, '37.25000', '-105.98300'), ('CAPULIN', None, '37.28000', '-106.12000'), ('CONEJOS', None, '37.08000', '-106.02000'), ('CUMBRES PASS', None, '37.02000', '-106.43000'), ('LA JARA', 877, '37.27440', '-105.95950'), ('MANASSA', 1042, '37.17290', '-105.93600'), ('ORTIZ', None, '37.03000', '-106.03000'), ('PLATORO', None, '37.35000', '-106.53000'), ('ROMEO', 375, '37.17160', '-105.98590'), ('SANFORD', 817, '37.25740', '-105.90000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'OHC061': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('WEST HARRISON', 284, '39.26120', '-84.82090'), ('BROMLEY', 838, '39.08060', '-84.56240'), ('DAYTON', 5966, '39.11250', '-84.46240'), ('LUDLOW', 4409, '39.08940', '-84.55050'), ('ADDYSTON', 1010, '39.13810', '-84.71060'), ('AMBERLEY', 3425, '39.20240', '-84.43320'), ('ARLINGTON HEIGHTS', 899, '39.21510', '-84.45580'), ('BLUE ASH', 12513, '39.24670', '-84.38080'), ('BRIDGETOWN NORTH', 12569, '39.15810', '-84.63560'), ('CHERRY GROVE', 4555, '39.07970', '-84.32280'), ('CHEVIOT', 9015, '39.15770', '-84.61380'), ('CINCINNATI', 331285, '39.13980', '-84.50600'), ('CLEVES', 2790, '39.16230', '-84.74930'), ('COVEDALE', 6360, '39.12380', '-84.64060'), ('DEER PARK', 5982, '39.20340', '-84.39700'), ('DENT', 7612, '39.19380', '-84.66090'), ('DILLONVALE', 781, '39.21800', '-84.40210'), ('DRY RUN', 6553, '39.10430', '-84.33070'), ('ELMWOOD PLACE', 2681, '39.18490', '-84.48850'), ('EVENDALE', 3090, '39.25380', '-84.42570'), ('FAIRFAX', 1938, '39.14270', '-84.39620'), ('FINNEYTOWN', 13492, '39.21670', '-84.51420'), ('FOREST PARK', 19463, '39.28720', '-84.52690'), ('FORESTVILLE', 10978, '39.07010', '-84.33880'), ('FRUIT HILL', 3945, '39.06810', '-84.36620'), ('GLENDALE', 2188, '39.27070', '-84.45840'), ('GOLF MANOR', 3999, '39.18710', '-84.44640'), ('GRANDVIEW', 1391, '39.19430', '-84.72440'), ('GREENHILLS', 4103, '39.26470', '-84.51760'), ('GROESBECK', 7202, '39.22880', '-84.59430'), ('HARRISON', 7487, '39.24990', '-84.79300'), ('KENWOOD', 7423, '39.20560', '-84.37410'), ('LINCOLN HEIGHTS', 4113, '39.24390', '-84.45810'), ('LOCKLAND', 3707, '39.22760', '-84.45740'), ('LOVELAND', 11677, '39.26730', '-84.27410'), ('MACK NORTH', 3529, '39.16680', '-84.67320'), ('MACK SOUTH', 5837, '39.14210', '-84.67320'), ('MADEIRA', 8923, '39.18420', '-84.37480'), ('MARIEMONT', 3408, '39.14210', '-84.37900'), ('MONFORT HEIGHTS EAST', 3880, '39.18220', '-84.58390'), ('MONFORT HEIGHTS SOUTH', 4466, '39.17330', '-84.60640'), ('MONTGOMERY', 10163, '39.24730', '-84.34760'), ('MOUNT HEALTHY', 7149, '39.23280', '-84.54720'), ('MOUNT HEALTHY HEIGHTS', 3450, '39.27030', '-84.56810'), ('NEWTOWN', 2420, '39.12220', '-84.35050'), ('NORTH BEND', 603, '39.14850', '-84.74150'), ('NORTH COLLEGE HILL', 10082, '39.21720', '-84.55160'), ('NORTHBROOK', 11076, '39.24750', '-84.57900'), ('NORTHGATE', 8016, '39.25270', '-84.59240'), ('NORWOOD', 21675, '39.15960', '-84.45370'), ('PLEASANT RUN', 5267, '39.29090', '-84.57240'), ('PLEASANT RUN FARM', 4731, '39.30300', '-84.54800'), ('READING', 11292, '39.22440', '-84.43140'), ('SHARONVILLE', 13804, '39.28120', '-84.40650'), ('SHERWOOD', 801, '39.08470', '-84.36070'), ('SILVERTON', 5178, '39.18930', '-84.40130'), ('SPRINGDALE', 10563, '39.29160', '-84.47550'), ('ST. BERNARD', 4924, '39.17100', '-84.49530'), ('TERRACE PARK', 2273, '39.15800', '-84.31210'), ('THE VILLAGE OF INDIAN HIL', None, '39.18950', '-84.33480'), ('TURPIN HILLS', 4960, '39.10710', '-84.37320'), ('WHITE OAK', 13277, '39.22020', '-84.60540'), ('WHITE OAK EAST', 3508, '39.20200', '-84.59020'), ('WHITE OAK WEST', 2932, '39.19930', '-84.61430'), ('WOODLAWN', 2816, '39.25670', '-84.46750'), ('WYOMING', 8261, '39.22950', '-84.48160')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'MNC067': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ATWATER', 1079, '45.13550', '-94.77690'), ('BLOMKEST', 186, '44.94320', '-95.02240'), ('KANDIYOHI', 555, '45.13110', '-94.93230'), ('LAKE LILLIAN', 257, '44.94570', '-94.88050'), ('NEW LONDON', 1066, '45.29930', '-94.94560'), ('PENNOCK', 504, '45.14630', '-95.17530'), ('PRINSBURG', 458, '44.93560', '-95.18580'), ('RAYMOND', 803, '45.01600', '-95.23720'), ('REGAL', 40, '45.40500', '-94.84020'), ('SPICER', 1126, '45.23260', '-94.93860'), ('SUNBURG', 110, '45.34790', '-95.23940'), ('WILLMAR', 18351, '45.12460', '-95.04960')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNC061': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALVWOOD', None, '47.73060', '-94.26810'), ('BALL CLUB', None, '47.32590', '-93.93620'), ('BIGFORK', 469, '47.74840', '-93.65340'), ('BLACKBERRY', None, '47.18090', '-93.39060'), ('BOVEY', 662, '47.29420', '-93.40230'), ('BOWSTRING', None, '47.54300', '-93.79680'), ('CALUMET', 383, '47.31920', '-93.26960'), ('COHASSET', 2481, '47.26370', '-93.62040'), ('COLERAINE', 1110, '47.30630', '-93.42310'), ('DEER RIVER', 903, '47.33600', '-93.79400'), ('EFFIE', 91, '47.84070', '-93.63780'), ('GOODLAND', None, '47.16200', '-93.13590'), ('GRAND RAPIDS', 7764, '47.22880', '-93.52450'), ('GUNN', None, '47.21620', '-93.47540'), ('INGER', None, '47.55420', '-93.98540'), ('JESSIE LAKE', None, '47.60120', '-93.81730'), ('KEEWATIN', 1164, '47.40410', '-93.08550'), ('LA PRAIRIE', 605, '47.22730', '-93.49010'), ('MARBLE', 695, '47.32860', '-93.29340'), ('MARCELL', None, '47.59320', '-93.69090'), ('MAX', None, '47.61470', '-94.06810'), ('NASHWAUK', 935, '47.38420', '-93.16770'), ('ORTH', None, '47.83920', '-94.31530'), ('OSLUND', None, '47.65580', '-94.03410'), ('PENGILLY', None, '47.33280', '-93.19730'), ('ROSY', None, '47.65810', '-94.30620'), ('SPRING LAKE', None, '47.64260', '-93.86800'), ('SQUAW LAKE', 99, '47.62690', '-94.14100'), ('STONY BROOK', None, '47.73500', '-93.09860'), ('SWAN RIVER', None, '47.08670', '-93.19510'), ('TACONITE', 315, '47.32320', '-93.36020'), ('TALMOON', None, '47.60010', '-93.77400'), ('TOGO', None, '47.82140', '-93.15590'), ('WARBA', 183, '47.13580', '-93.27090'), ('WAWINA', None, '47.05320', '-93.11920'), ('WIRT', None, '47.73060', '-93.96010'), ('ZEMPLE', 75, '47.32340', '-93.78620')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'COC029': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AUSTIN', None, '38.78000', '-107.93000'), ('BOWIE', None, '38.92000', '-107.53000'), ('CEDAREDGE', 1854, '38.89880', '-107.92630'), ('CORY', None, '38.77000', '-107.98000'), ('CRAWFORD', 366, '38.70510', '-107.60860'), ('DELTA', 6400, '38.74480', '-108.07370'), ('ECKERT', None, '38.84200', '-107.95000'), ('GRAND MESA', None, '39.05000', '-107.87000'), ('HOTCHKISS', 968, '38.80100', '-107.71790'), ('LAZEAR', None, '38.78000', '-107.77000'), ('ORCHARD CITY', 2880, '38.81480', '-107.96360'), ('PAONIA', 1497, '38.86950', '-107.58950')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'MNC063': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALPHA', 126, '43.63920', '-94.87140'), ('BERGEN', None, '43.79120', '-94.99470'), ('HERON LAKE', 768, '43.79530', '-95.32360'), ('JACKSON', 3501, '43.62440', '-94.98900'), ('LAKEFIELD', 1721, '43.67790', '-95.17110'), ('OKABENA', 185, '43.73860', '-95.31580'), ('WILDER', 69, '43.82550', '-95.20630')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MTC017': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ISMAY', 26, '46.50020', '-104.79320'), ('MILES CITY', 8487, '46.40730', '-105.83910')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTC015': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BIG SANDY', 703, '48.17890', '-110.11290'), ('CARTER', 62, '47.78110', '-110.95560'), ('FLOWEREE', None, '47.72970', '-111.02670'), ('FORT BENTON', 1594, '47.82860', '-110.65510'), ('GERALDINE', 284, '47.60350', '-110.26590'), ('HIGHWOOD', 189, '47.58360', '-110.78940'), ('ILIAD', None, '47.79860', '-109.78530'), ('LOMA', 92, '47.93690', '-110.50280'), ('SQUARE BUTTE', None, '47.51500', '-110.19750'), ('THE KNEES', None, '48.02000', '-111.28330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTC013': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BELT', 633, '47.38600', '-110.92580'), ('BLACK EAGLE', 914, '47.52470', '-111.27750'), ('CASCADE', 819, '47.27070', '-111.70250'), ('CENTERVILLE', None, '47.38970', '-111.14190'), ('FT SHAW', None, '47.50560', '-111.80940'), ('GREAT FALLS', 56690, '47.50480', '-111.29060'), ('MALMSTROM AFB', 4544, '47.50940', '-111.19070'), ('MONARCH', None, '47.09830', '-110.83780'), ('NEIHART', 91, '46.93350', '-110.73570'), ('SAND COULEE', None, '47.39940', '-111.16690'), ('SIMMS', 373, '47.49170', '-111.92720'), ('STOCKETT', None, '47.35670', '-111.16440'), ('SUN PRAIRIE', 1772, '47.53690', '-111.48060'), ('SUN RIVER', 131, '47.53330', '-111.72060'), ('TRACY', None, '47.41310', '-111.15330'), ('ULM', 750, '47.43150', '-111.50640'), ('VAUGHN', 701, '47.56060', '-111.54500')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, -'WIC049': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARENA', 685, '43.16330', '-89.91320'), ('AVOCA', 608, '43.18820', '-90.32520'), ('BARNEVELD', 1088, '43.01450', '-89.89590'), ('COBB', 442, '42.96530', '-90.32930'), ('DODGEVILLE', 4220, '42.96380', '-90.13000'), ('HIGHLAND', 855, '43.04640', '-90.37900'), ('HOLLANDALE', 283, '42.87610', '-89.93330'), ('LINDEN', 615, '42.91920', '-90.27400'), ('MINERAL POINT', 2617, '42.86190', '-90.18310'), ('REWEY', 311, '42.84190', '-90.39630'), ('RIDGEWAY', 689, '42.99920', '-89.99220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'MTC011': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('EKALAKA', 410, '45.88920', '-104.54920')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'WIC123': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BENDERS CORNERS', None, '43.58148', '-90.35057'), ('BLOOMINGDALE', None, '43.64727', '-90.78370'), ('CHASEBURG', 306, '43.65480', '-91.09990'), ('COON VALLEY', 714, '43.70180', '-91.01020'), ('DE SOTO', 366, '43.42690', '-91.19670'), ('DILLY', None, '43.65092', '-90.43281'), ('ESOFEA', None, '43.63082', '-90.96645'), ('GENOA', 263, '43.57340', '-91.22580'), ('GREENWOOD', 1079, '43.56503', '-90.41636'), ('HILLSBORO', 1302, '43.65410', '-90.33770'), ('LA FARGE', 775, '43.57750', '-90.63810'), ('LIBERTY POLE', None, '43.48279', '-90.90066'), ('NEWTON', None, '43.58148', '-91.06697'), ('ONTARIO', 476, '43.72210', '-90.59290'), ('POTTS CORNERS', None, '43.63082', '-90.65028'), ('READSTOWN', 395, '43.44880', '-90.75890'), ('RED MOUND', None, '43.46451', '-91.14921'), ('RETREAT', None, '43.44806', '-91.08341'), ('ROCKTON', None, '43.64544', '-90.60094'), ('STODDARD', 815, '43.66120', '-91.21840'), ('TRIPPVILLE', None, '43.71489', '-90.40174'), ('VALLEY', None, '43.64727', '-90.53149'), ('VICTORY', None, '43.47913', '-91.21683'), ('VIOLA', 667, '43.50760', '-90.67310'), ('VIROQUA', 4335, '43.55830', '-90.88630'), ('WEST PRAIRIE', None, '43.46451', '-91.01580'), ('WESTBY', 2045, '43.65300', '-90.85710')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'MTC019': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('FLAXVILLE', 87, '48.80380', '-105.17220'), ('FOUR BUTTES', None, '48.80970', '-105.60580'), ('MADOC', None, '48.81080', '-105.28520'), ('NAVAJO', None, '48.79220', '-105.05970'), ('PEERLESS', None, '48.78250', '-105.83050'), ('PORT OF SCOBEY', None, '48.99940', '-105.40660'), ('PORT OF WHITETAIL', None, '48.99910', '-105.16130'), ('SCOBEY', 1082, '48.79250', '-105.42020'), ('WEST FORK', None, '48.68690', '-105.91110'), ('WHITETAIL', None, '48.89500', '-105.16270')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'VAC735': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('MESSICK', None, '37.12070', '-76.34550'), ('PLUM TREE ISLAND REFUGE', None, '37.13280', '-76.32910'), ('POQUOSON', 11566, '37.13170', '-76.38340')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'DCC001': {'fullStateName': 'DISTRICT OF COLUMBIA', 'state': 'DC', 'cities': [('ADAMS MORGAN', None, '38.92140', '-77.04250'), ('AMERICAN UNIVERSITY', None, '38.93690', '-77.08720'), ('ANACOSTIA', None, '38.86640', '-76.98420'), ('BOLLING AIR FORCE BASE', None, '38.84080', '-77.01670'), ('CATHOLIC UNIVERSITY', None, '38.93470', '-76.99940'), ('GEORGETOWN', None, '38.92280', '-77.07780'), ('KENILWORTH', None, '38.90580', '-76.94060'), ('LITTLE FALLS', None, '38.93330', '-77.11830'), ('NATIONAL ARBORETUM', None, '38.91030', '-76.96640'), ('NATIONAL ZOO', None, '38.92940', '-77.05000'), ('ROCK CREEK', None, '38.89940', '-77.05750'), ('THE MALL', None, '38.88940', '-77.02330'), ('THE WHITE HOUSE', None, '38.89750', '-77.03670'), ('US CAPITOL', None, '38.88970', '-77.00920'), ('WASHINGTON', 572059, '38.90510', '-77.01620')], 'partOfState': '', 'wfo': 'LWX'}, -'VAC730': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('PETERSBURG', 33740, '37.20430', '-77.39260'), ('PETERSBURG NATIONAL BATTL', None, '37.22920', '-77.36130')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'GAC213': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CHATSWORTH', 3531, '34.77840', '-84.77660'), ('ETON', 319, '34.82300', '-84.76290')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'OHC119': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADAMSVILLE', 127, '40.06880', '-81.88310'), ('DRESDEN', 1423, '40.12180', '-82.01110'), ('DUNCAN FALLS', None, '39.87000', '-81.92000'), ('FRAZEYSBURG', 1201, '40.11630', '-82.11870'), ('FULTONHAM', 151, '39.85610', '-82.14290'), ('NEW CONCORD', 2651, '39.99740', '-81.73580'), ('NORTH ZANESVILLE', 3013, '39.98220', '-82.00010'), ('NORWICH', 113, '39.98470', '-81.79260'), ('PHILO', 769, '39.86120', '-81.90930'), ('PLEASANT GROVE', 2016, '39.94960', '-81.95960'), ('ROSEVILLE', 1936, '39.80710', '-82.07360'), ('SOUTH ZANESVILLE', 1936, '39.90340', '-82.01970'), ('ZANESVILLE', 25586, '39.95240', '-82.01200')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHC115': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHESTERHILL', 305, '39.48990', '-81.86590'), ('MALTA', 696, '39.65040', '-81.86460'), ('MCCONNELSVILLE', 1676, '39.65410', '-81.84440'), ('STOCKPORT', 540, '39.54930', '-81.79500')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHC117': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CARDINGTON', 1849, '40.49910', '-82.89380'), ('CHESTERVILLE', 193, '40.48010', '-82.68280'), ('EDISON', 437, '40.55810', '-82.86360'), ('FULTON', 264, '40.46240', '-82.82840'), ('MARENGO', 297, '40.40130', '-82.81010'), ('MOUNT GILEAD', 3290, '40.55080', '-82.83600'), ('SPARTA', 191, '40.39470', '-82.69960')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHC111': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANTIOCH', 89, '39.66160', '-81.06770'), ('BEALLSVILLE', 423, '39.84830', '-81.03540'), ('CLARINGTON', 444, '39.77680', '-80.86510'), ('GRAYSVILLE', 113, '39.66110', '-81.17110'), ('JERUSALEM', 152, '39.85220', '-81.09530'), ('LEWISVILLE', 233, '39.76590', '-81.21880'), ('MILTONSBURG', 29, '39.83180', '-81.16430'), ('STAFFORD', 86, '39.71320', '-81.27760'), ('WOODSFIELD', 2598, '39.76300', '-81.11670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHC113': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BROOKVILLE', 5289, '39.83570', '-84.41500'), ('CENTERVILLE', 23024, '39.64110', '-84.14000'), ('CLAYTON', 13347, '39.86070', '-84.35510'), ('DAYTON', 166179, '39.77910', '-84.19740'), ('DREXEL', 2057, '39.74410', '-84.29170'), ('ENGLEWOOD', 12235, '39.86080', '-84.30690'), ('FARMERSVILLE', 980, '39.67870', '-84.42710'), ('FORT MCKINLEY', 3989, '39.80600', '-84.25670'), ('GERMANTOWN', 4884, '39.63500', '-84.36250'), ('HUBER HEIGHTS', 38212, '39.85580', '-84.11230'), ('KETTERING', 57502, '39.69590', '-84.15010'), ('MIAMISBURG', 19489, '39.63560', '-84.27450'), ('MORAINE', 6897, '39.70390', '-84.22840'), ('NEW LEBANON', 4231, '39.74500', '-84.40030'), ('NORTHRIDGE', 8487, '39.81030', '-84.19170'), ('NORTHVIEW', None, '39.84310', '-84.27960'), ('OAKWOOD', 607, '39.71990', '-84.17360'), ('OVERLOOK-PAGE MANOR', None, '39.75410', '-84.11540'), ('PHILLIPSBURG', 628, '39.90440', '-84.40070'), ('RIVERSIDE', 23545, '39.78060', '-84.12390'), ('SHILOH', 721, '39.81350', '-84.23180'), ('TROTWOOD', 27420, '39.80280', '-84.30450'), ('UNION', 5574, '39.90270', '-84.30990'), ('VANDALIA', 14603, '39.87810', '-84.19400'), ('WEST CARROLLTON', None, '39.66950', '-84.25250'), ('WOODBOURNE-HYDE PARK', 7910, '39.66070', '-84.17360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'CAC037': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ACTON', 2390, '34.48280', '-118.18250'), ('AGOURA HILLS', 20537, '34.15100', '-118.75980'), ('ALHAMBRA', 85804, '34.08400', '-118.13470'), ('ALTADENA', 42610, '34.19230', '-118.13470'), ('AVALON', 3127, '33.34290', '-118.32740'), ('AZUSA', 44712, '34.13810', '-117.91230'), ('BEVERLY HILLS', 33784, '34.07930', '-118.40140'), ('BURBANK', 5239, '34.19130', '-118.32570'), ('CLAREMONT', 33998, '34.12190', '-117.71570'), ('COMPTON', 93493, '33.89250', '-118.22650'), ('CULVER CITY', 38816, '34.00580', '-118.39610'), ('DIAMOND BAR', 56287, '33.99940', '-117.81430'), ('DOWNEY', 107323, '33.93820', '-118.12990'), ('EAST LOS ANGELES', 124283, '34.03260', '-118.16860'), ('EL MONTE', 115965, '34.07480', '-118.02780'), ('GLENDALE', 194973, '34.17670', '-118.25330'), ('GORMAN', None, '34.80000', '-118.85000'), ('HAWTHORNE', 84112, '33.91470', '-118.34700'), ('HERMOSA BEACH', 18566, '33.86000', '-118.40000'), ('WOODLAND HILLS', None, '34.17000', '-118.59000'), ('CHATSWORTH', None, '34.27000', '-118.59000'), ('HUNTINGTON PARK', 61348, '33.98030', '-118.21510'), ('INGLEWOOD', 112580, '33.95580', '-118.34360'), ('LA PUENTE', 41063, '34.03250', '-117.95230'), ('LAKE LOS ANGELES', 11523, '34.61190', '-117.82690'), ('LAKEWOOD', 79345, '33.84880', '-118.12200'), ('LANCASTER', 118718, '34.69310', '-118.17640'), ('LITTLEROCK', 1402, '34.52510', '-117.98480'), ('LONG BEACH', 461522, '33.78890', '-118.15980'), ('DOWNTOWN LOS ANGELES', None, '34.04000', '-118.30000'), ('LYNWOOD', 69845, '33.92370', '-118.20140'), ('MANHATTAN BEACH', 33852, '33.89510', '-118.41000'), ('MARINA DEL REY', 8176, '33.98030', '-118.45110'), ('MONROVIA', 36929, '34.16340', '-117.99040'), ('MONTEBELLO', 62150, '34.01550', '-118.11000'), ('MONTEREY PARK', 60051, '34.04680', '-118.13060'), ('NORWALK', 103298, '33.90690', '-118.08250'), ('PALMDALE', 116670, '34.60540', '-118.08630'), ('PALOS VERDES ESTATES', 13340, '33.78780', '-118.39620'), ('PASADENA', 133936, '34.16070', '-118.13870'), ('POINT DUME', None, '34.01230', '-118.80160'), ('POMONA', 149473, '34.05900', '-117.76140'), ('REDONDO BEACH', 63261, '33.83000', '-118.39000'), ('ROWLAND HEIGHTS', 48553, '33.97980', '-117.89140'), ('SAN FERNANDO', 23564, '34.28950', '-118.43500'), ('SANTA CLARITA', 151088, '34.41340', '-118.51020'), ('SANTA MONICA', 84084, '34.01340', '-118.49320'), ('MALIBU', 12575, '34.03000', '-118.68000'), ('SOUTH SAN JOSE HILLS', 20218, '34.01280', '-117.90380'), ('TORRANCE', 137946, '33.83480', '-118.34040'), ('VAL VERDE', 1472, '34.44550', '-118.65570'), ('WALNUT', 30004, '34.02900', '-117.85740'), ('WEST COVINA', 105080, '34.05430', '-117.90980'), ('WESTLAKE VILLAGE', 8368, '34.13610', '-118.82130'), ('WHITTIER', 83680, '33.96660', '-118.02170'), ('SADDLEBACK BUTTE STATE PA', None, '34.71000', '-117.82000'), ('PEARBLOSSOM', None, '34.50000', '-117.90000'), ('PYRAMID LAKE', None, '34.69000', '-118.80000'), ('CASTAIC LAKE', None, '34.65000', '-118.70000'), ('MOUNT WILSON', None, '34.22310', '-118.05870'), ('BIG PINES', None, '34.37890', '-117.69010'), ('FALLING SPRINGS', None, '34.30170', '-117.83920'), ('VAN NUYS', None, '34.18000', '-118.45000'), ('HOLLYWOOD', None, '34.10000', '-118.33000'), ('SAN PEDRO', None, '33.75000', '-118.33000'), ('RESEDA', None, '34.20000', '-118.52000'), ('CATALINA AIRPORT', None, '33.41000', '-118.42000'), ('TWO HARBORS', None, '33.44000', '-118.50000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAC035': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIEBER', None, '41.12000', '-121.14000'), ('DOYLE', None, '40.02000', '-120.10000'), ('EAGLE LAKE', None, '40.65000', '-120.74000'), ('FREDONYER PASS', None, '40.36000', '-120.87000'), ('HALLELUJAH JUNCTION', None, '39.78000', '-120.04000'), ('HERLONG', None, '40.14000', '-120.13000'), ('HONEY LAKE', None, '40.23000', '-120.35000'), ('MADELINE', None, '41.05000', '-120.47000'), ('NUBIEBER', None, '41.09000', '-121.19000'), ('PITTVILLE', None, '41.05000', '-121.32000'), ('RAVENDALE', None, '40.80000', '-120.36000'), ('SPAULDING', None, '40.65000', '-120.78000'), ('STANDISH', None, '40.37000', '-120.42000'), ('SUSANVILLE', 13541, '40.41110', '-120.65060'), ('SUSANVILLE', 13541, '40.41110', '-120.65060'), ('TERMO', None, '40.86000', '-120.49000'), ('TERMO', None, '40.86000', '-120.45000'), ('WENDEL', None, '40.35000', '-120.23000'), ('WESTWOOD', 1998, '40.31000', '-121.00000'), ('WESTWOOD', 1998, '40.30320', '-121.00390')], 'partOfState': 'NORTHERN', 'wfo': 'REVSTO'}, -'CAC033': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ADAMS', None, '38.85640', '-122.71860'), ('ANDERSON SPRINGS', None, '38.77500', '-122.69190'), ('BARKERVILLE', None, '39.15440', '-122.56140'), ('BUCKINGHAM PARK', None, '39.01550', '-122.75690'), ('CLEARLAKE', 13142, '38.95820', '-122.63160'), ('CLEARLAKE OAKS', 2402, '39.02250', '-122.66510'), ('CLEARLAKE PARK', None, '38.96670', '-122.65000'), ('COBB', 1638, '38.83780', '-122.72410'), ('ETTAWA SPRINGS', None, '38.85110', '-122.69500'), ('FINLEY', None, '39.00440', '-122.87440'), ('FOREST LAKE', None, '38.81800', '-122.71670'), ('GLENHAVEN', None, '39.02640', '-122.73190'), ('GRAVELLY VALLEY AIRPORT', None, '39.44970', '-122.95530'), ('HIDDEN VALLEY LAKE', 3777, '38.81110', '-122.56330'), ('HOBERGS', None, '38.84360', '-122.72330'), ('HOUGH SPRINGS', None, '39.16250', '-122.61110'), ('INDIAN VALLEY RESERVOIR', None, '39.12530', '-122.54170'), ('KELSEYVILLE', 2928, '38.95810', '-122.82450'), ('KNOBCONE CAMP', None, '39.04360', '-123.03360'), ('KONOCTI BAY', None, '38.97080', '-122.72920'), ('LAKEPORT', 4820, '39.04230', '-122.91990'), ('LOCH LOMOND', None, '38.86330', '-122.71830'), ('LOWER LAKE', 1755, '38.91120', '-122.61030'), ('LUCERNE', 2870, '39.09030', '-122.79530'), ('MIDDLETOWN', 1020, '38.75250', '-122.61390'), ('MOUNT KONOCTI', None, '38.97500', '-122.76530'), ('NICE', 2509, '39.12530', '-122.85050'), ('PINE GROVE', None, '38.82830', '-122.73000'), ('SARATOGA SPRINGS', None, '39.17530', '-122.97970'), ('SEIGLER SPRINGS', None, '38.87500', '-122.68750'), ('SODA BAY', None, '39.00560', '-122.79170'), ('UPPER LAKE', 989, '39.16470', '-122.90940'), ('WHISPERING PINES', None, '38.81360', '-122.71140'), ('WITTER SPRINGS', None, '39.19000', '-122.99030')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'CAC031': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AVENAL', 14674, '36.02960', '-120.11470'), ('CORCORAN', 14458, '36.08180', '-119.56000'), ('HANFORD', 41686, '36.32500', '-119.64690'), ('KETTLEMAN CITY', 1499, '36.00870', '-119.96190'), ('LEMOORE', 19712, '36.29860', '-119.78750'), ('LEMOORE STATION', 5749, '36.26440', '-119.90370'), ('STRATFORD', 1264, '36.18950', '-119.82350')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'CAC039': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BASS LAKE', None, '37.32220', '-119.55820'), ('CHOWCHILLA', 11127, '37.11540', '-120.25660'), ('COARSEGOLD', None, '37.26180', '-119.69950'), ('DEVILS POSTPILE', None, '37.62940', '-119.08370'), ('MADERA', 43207, '36.96760', '-120.07670'), ('MILLERTON LAKE', None, '37.00050', '-119.70410'), ('NORTH FORK', None, '37.22860', '-119.50820'), ('OAKHURST', 2868, '37.33330', '-119.64700')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'COC113': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('EGNAR', None, '37.92000', '-108.93000'), ('FALL CREEK', None, '38.02000', '-108.03000'), ('NORWOOD', 438, '38.13030', '-108.29160'), ('OPHIR', 113, '37.85690', '-107.82890'), ('PLACERVILLE', None, '38.02000', '-108.07000'), ('SAWPIT', 25, '37.99480', '-107.99990'), ('SLICK ROCK', None, '38.08300', '-108.89200'), ('TELLURIDE', 2221, '37.93870', '-107.81240'), ('TROUT LAKE', None, '37.80000', '-107.87000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COC111': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ELK PARK', None, '37.68000', '-107.67000'), ('GLADSTONE', None, '37.88000', '-107.65000'), ('SILVERTON', 531, '37.81090', '-107.66400')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COC117': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BLUE RIVER', 685, '39.43250', '-106.03660'), ('BRECKENRIDGE', 2408, '39.50750', '-106.04740'), ('COPPER MOUNTAIN', None, '39.49200', '-106.15000'), ('DILLON', 802, '39.62500', '-106.03900'), ('FRISCO', 2443, '39.57910', '-106.09600'), ('GREEN MTN RESERVOIR', None, '39.87600', '-106.33200'), ('HEENEY', None, '39.87000', '-106.30000'), ('KEYSTONE', 825, '39.60800', '-105.96700'), ('KOKOMO', None, '39.38000', '-106.18000'), ('MONTEZUMA', 42, '39.58130', '-105.86840'), ('SILVERTHORNE', 3196, '39.65170', '-106.08160'), ('VAIL PASS', None, '39.53100', '-106.21800')], 'partOfState': 'CENTRAL', 'wfo': 'BOU'}, -'COC115': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('JULESBURG', 1467, '40.98670', '-102.26460'), ('MARKS BUTTE', None, '40.81700', '-102.50700'), ('OVID', 330, '40.95990', '-102.38810'), ('SEDGWICK', 191, '40.93480', '-102.52480'), ('SIXTEEN-MILE CORNER', None, '40.76400', '-102.22900')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC119': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CRIPPLE CREEK', 1115, '38.74630', '-105.17870'), ('DIVIDE', None, '38.94000', '-105.16000'), ('FLORISSANT', None, '38.95000', '-105.29000'), ('VICTOR', 445, '38.70840', '-105.14060'), ('WOODLAND PARK', 6515, '38.99500', '-105.05170')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'PAC021': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ASHVILLE', 279, '40.55910', '-78.54740'), ('BARNESBORO', None, '40.66630', '-78.78500'), ('BEAVERDALE', None, '40.32290', '-78.69880'), ('BELMONT', 2846, '40.28240', '-78.89170'), ('BELSANO', None, '40.55000', '-78.86000'), ('BLANDBURG', None, '40.69000', '-78.44000'), ('BROWNSTOWN', 883, '40.33290', '-78.93700'), ('CARROLLTOWN', 1049, '40.60420', '-78.70710'), ('CASSANDRA', 136, '40.40810', '-78.64160'), ('CHEST SPRINGS', 110, '40.57870', '-78.61010'), ('COLVER', 1035, '40.54290', '-78.78760'), ('CRESSON', 1631, '40.46260', '-78.58660'), ('DALE', 1503, '40.31180', '-78.90410'), ('DUNLO', None, '40.28000', '-78.73000'), ('EAST CONEMAUGH', 1291, '40.34750', '-78.88610'), ('EBENSBURG', 3091, '40.48860', '-78.72700'), ('ELIM', 4175, '40.29780', '-78.94290'), ('FERNDALE', 1834, '40.28840', '-78.91720'), ('GALLITZIN', 1756, '40.48220', '-78.55600'), ('GEISTOWN', 2555, '40.29380', '-78.87170'), ('HASTINGS', 1398, '40.66490', '-78.70900'), ('JOHNSTOWN', 23906, '40.32540', '-78.91950'), ('LILLY', 948, '40.42390', '-78.62000'), ('LORAIN', 747, '40.29580', '-78.89530'), ('LORETTO', 1190, '40.50870', '-78.63630'), ('NANTY-GLO', 3054, '40.47030', '-78.83490'), ('PATTON', 2023, '40.63270', '-78.64930'), ('PORTAGE', 2837, '40.38680', '-78.67550'), ('PRINCE GALLITZEN SP', None, '40.65000', '-78.57000'), ('SCALP LEVEL', 851, '40.24930', '-78.84390'), ('SIDMAN', None, '40.32330', '-78.76550'), ('SOUTH FORK', 1138, '40.36380', '-78.79160'), ('SPANGLER', None, '40.64520', '-78.77330'), ('SPRING HILL', 970, '40.37110', '-78.66650'), ('SUMMERHILL', 521, '40.37570', '-78.76130'), ('VINCO', 1429, '40.40960', '-78.84220'), ('VINTONDALE', 528, '40.47860', '-78.91250'), ('WESTMONT', 5523, '40.31910', '-78.95230'), ('WILMORE', 252, '40.38610', '-78.71690')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAC023': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CAMERON', None, '41.43000', '-78.16000'), ('DRIFTWOOD', 103, '41.34320', '-78.13540'), ('ELK RIVER', None, '41.58000', '-78.38000'), ('EMPORIUM', 2526, '41.51090', '-78.23710'), ('HICKS RUN', None, '41.36000', '-78.24000'), ('SIZERVILLE', None, '41.59000', '-78.21000'), ('STEVENSON DAM', None, '41.43000', '-78.06000'), ('TRUMAN', None, '41.45000', '-78.37000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'MIC035': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CLARE', 3173, '43.82420', '-84.76500'), ('FARWELL', 855, '43.83570', '-84.86770'), ('LAKE', None, '43.85200', '-85.00520'), ('LAKE GEORGE', None, '43.96330', '-84.94680'), ('LEOTA', None, '44.13950', '-84.88950'), ('TEMPLE', None, '44.03080', '-85.02830')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'MIC037': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BATH', None, '42.81870', '-84.44870'), ('DE WITT', 4702, '42.83590', '-84.57560'), ('EAGLE', 130, '42.80980', '-84.79050'), ('ELSIE', 1055, '43.08900', '-84.39060'), ('EUREKA', None, '43.10370', '-84.51380'), ('FOWLER', 1136, '43.00400', '-84.74030'), ('MAPLE RAPIDS', 643, '43.10660', '-84.69010'), ('OVID', 1514, '43.00250', '-84.37450'), ('ST. JOHNS', 7485, '43.00020', '-84.55750'), ('WACOUSTA', None, '42.82780', '-84.70080'), ('WESTPHALIA', 876, '42.92970', '-84.79780')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'PAC029': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ATGLEN', 1217, '39.94710', '-75.97530'), ('AVONDALE', 1108, '39.82390', '-75.78240'), ('CHESTERBROOK', 4625, '40.07570', '-75.45930'), ('COATESVILLE', 10838, '39.98480', '-75.81930'), ('DEVON-BERWYN', 5067, '40.04340', '-75.43870'), ('DOWNINGTOWN', 7589, '40.00720', '-75.70240'), ('ELVERSON', 959, '40.15780', '-75.83150'), ('EXTON', 4267, '40.03160', '-75.63000'), ('HONEY BROOK', 1287, '40.09340', '-75.91100'), ('KENILWORTH', 1576, '40.22540', '-75.64260'), ('KENNETT SQUARE', 5273, '39.84370', '-75.71170'), ('LIONVILLE-MARCHWOOD', 6298, '40.05270', '-75.64560'), ('MALVERN', 3059, '40.03350', '-75.51400'), ('MODENA', 610, '39.96220', '-75.80250'), ('OXFORD', 4315, '39.78570', '-75.98040'), ('PAOLI', 5425, '40.04230', '-75.49280'), ('PARKESBURG', 3373, '39.95870', '-75.91670'), ('PHOENIXVILLE', 14788, '40.13590', '-75.51920'), ('SOUTH COATESVILLE', 997, '39.96810', '-75.81530'), ('SOUTH POTTSTOWN', 2135, '40.23700', '-75.66460'), ('STOWE', 3585, '40.25160', '-75.68160'), ('THORNDALE', 3561, '39.99850', '-75.75220'), ('TOUGHKENAMON', 1375, '39.83090', '-75.75560'), ('WEST CHESTER', 17861, '39.95980', '-75.60610'), ('WEST GOSHEN', 8472, '39.96820', '-75.57300'), ('WEST GROVE', 2652, '39.82140', '-75.82890')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'GAC211': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOSTWICK', 322, '33.73810', '-83.51530'), ('BUCKHEAD', 205, '33.56820', '-83.36370'), ('MADISON', 3636, '33.57730', '-83.47680'), ('RUTLEDGE', 707, '33.62650', '-83.61160')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'MAC009': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AMESBURY', 12327, '42.85640', '-70.92850'), ('ANDOVER', 7900, '42.65530', '-71.14310'), ('BEVERLY', 39862, '42.55770', '-70.84050'), ('BOXFORD', 2340, '42.67350', '-70.98660'), ('DANVERS', 25212, '42.57190', '-70.95110'), ('ESSEX', 1426, '42.63080', '-70.77240'), ('GEORGETOWN', None, '42.73333', '-70.98333'), ('GLOUCESTER', 30273, '42.61670', '-70.65000'), ('GROVELAND', None, '42.75000', '-71.03333'), ('HAMILTON', None, '42.61667', '-70.86667'), ('HAVERHILL', 58969, '42.78430', '-71.08620'), ('IPSWICH', 4161, '42.67810', '-70.83150'), ('LAWRENCE', 72043, '42.70000', '-71.16200'), ('LYNN', 89050, '42.47420', '-70.96250'), ('LYNNFIELD', 11542, '42.53560', '-71.04030'), ('MANCHESTER', None, '42.56667', '-70.76667'), ('MARBLEHEAD', 20377, '42.48333', '-70.86667'), ('MERRIMAC', None, '42.83333', '-71.00000'), ('METHUEN', 43789, '42.71667', '-71.18333'), ('MIDDLETON', None, '42.60000', '-71.01667'), ('NAHANT', 3632, '42.41667', '-70.91667'), ('NEWBURY', None, '42.80000', '-71.00000'), ('NEWBURYPORT', 17189, '42.81480', '-70.88950'), ('NORTH ANDOVER', None, '42.70000', '-71.11667'), ('PEABODY', 48129, '42.53290', '-70.97030'), ('ROCKPORT', 5606, '42.64600', '-70.61940'), ('ROWLEY', 1434, '42.71870', '-70.87460'), ('SALEM', 40407, '42.52650', '-70.86950'), ('SALISBURY', 4484, '42.83260', '-70.84030'), ('SAUGUS', 26078, '42.46740', '-71.01530'), ('SWAMPSCOTT', 14412, '42.46670', '-70.89230'), ('TOPSFIELD', 2826, '42.63920', '-70.95590'), ('WENHAM', None, '42.60000', '-70.88333'), ('WEST NEWBURY', None, '42.80000', '-71.00000')], 'partOfState': '', 'wfo': 'BOX'}, -'ALC069': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ASHFORD', 1853, '31.18580', '-85.23460'), ('AVON', 466, '31.18860', '-85.28690'), ('CHATTAHOOCHEE SP', None, '31.00550', '-85.03330'), ('COLUMBIA', 804, '31.29230', '-85.11130'), ('COTTONWOOD', 1170, '31.05200', '-85.30190'), ('COTTONWOOD RD/ROSS CLARK', None, '31.19380', '-85.37570'), ('COWARTS', 1546, '31.19880', '-85.30510'), ('CROSBY', None, '31.03830', '-85.08600'), ('DOWNTOWN DOTHAN', None, '31.22280', '-85.39330'), ('EAST MAIN/ROSS CLARK CIRC', None, '31.21470', '-85.36110'), ('FLOWERS CHAPEL RD/BRANNON', None, '31.21800', '-85.48640'), ('GEORGE W. ANDREWS L&D', None, '31.25910', '-85.11260'), ('GORDON', 408, '31.14560', '-85.09440'), ('GRANGEBURG', None, '31.01100', '-85.22420'), ('HARMON SCHOOL', None, '31.08910', '-85.15020'), ('HARTFORD HWY/ROSS CLARK C', None, '31.20660', '-85.42400'), ('HODGESVILLE', None, '31.08160', '-85.37310'), ('JOSEPH M. FARLEY NP', None, '31.22060', '-85.11040'), ('KINSEY', 1796, '31.29750', '-85.34450'), ('LOVETOWN', None, '31.11510', '-85.27510'), ('MADRID', 303, '31.03440', '-85.39360'), ('MEMPHIS', 33, '31.13940', '-85.36750'), ('MONTGOMERY HWY/ROSS CLARK', None, '31.24810', '-85.42460'), ('PANSEY', None, '31.15290', '-85.17630'), ('PEANUT FESTIVAL', None, '31.14430', '-85.40380'), ('PLEASANT PLAINS', None, '31.30280', '-85.22580'), ('REEVES ST/ROSS CLARK CIRC', None, '31.25190', '-85.38910'), ('REHOBETH', 993, '31.12190', '-85.45140'), ('SIGMA', None, '31.28120', '-85.19630'), ('SOUTH OATES/ROSS CLARK CI', None, '31.18950', '-85.40140'), ('SOUTHERN JUNCTION', None, '31.02800', '-85.47020'), ('TAYLOR', 1898, '31.16450', '-85.46760'), ('W. MAIN/BRANNON STAND RD', None, '31.23890', '-85.48100'), ('WEBB', 1298, '31.25930', '-85.27350'), ('WEBB RD/ROSS CLARK CIRCLE', None, '31.23740', '-85.36510'), ('WEST MAIN/ROSS CLARK CIRC', None, '31.22750', '-85.43220'), ('WICKSBURG', None, '31.20900', '-85.62470'), ('WILLIAMS', None, '31.30330', '-85.16090'), ('WILSON MILL', None, '31.15910', '-85.34390')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'MAC005': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ACUSHNET', None, '41.68610', '-70.90610'), ('ATTLEBOROUGH', None, '41.93070', '-71.29570'), ('BERKLEY', None, '41.85000', '-71.08333'), ('DARTMOUTH', None, '41.56667', '-71.00000'), ('DIGHTON', None, '41.81667', '-71.11667'), ('EASTON', None, '42.03333', '-71.10000'), ('FALL RIVER', 91938, '41.71460', '-71.10510'), ('FREETOWN', None, '41.82000', '-71.05000'), ('MANSFIELD', None, '42.02370', '-71.21870'), ('NEW BEDFORD', 93768, '41.66130', '-70.93810'), ('NORTH ATTLEBOROUGH', None, '41.97310', '-71.32520'), ('NORTON', None, '41.96980', '-71.18420'), ('RAYNHAM', None, '41.93180', '-71.04370'), ('REHOBOTH', None, '41.83333', '-71.26667'), ('SEEKONK', None, '41.81667', '-71.33333'), ('SOMERSET', 18234, '41.73940', '-71.15900'), ('SWANSEA', None, '41.75000', '-71.18333'), ('TAUNTON', 55976, '41.90300', '-71.09330'), ('WESTPORT', None, '41.66667', '-71.10000')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'ALC067': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ABBEVILLE', 2987, '31.56750', '-85.25050'), ('ABBEVILLE MUNI A/P', None, '31.59920', '-85.23890'), ('BLACKWOOD', None, '31.38760', '-85.40250'), ('CAPPS', None, '31.49570', '-85.31210'), ('EDWIN', None, '31.66480', '-85.37520'), ('HALEBURG', 108, '31.40610', '-85.13800'), ('HEADLAND', 3523, '31.35190', '-85.34330'), ('HEADLAND MUNI A/P', None, '31.36460', '-85.30980'), ('LAWRENCEVILLE', None, '31.65660', '-85.26940'), ('NEWVILLE', 553, '31.42170', '-85.33650'), ('SCREAMER', None, '31.66020', '-85.20690'), ('SHORTERVILLE', None, '31.56990', '-85.10090'), ('TUMBLETON', None, '31.40590', '-85.25620'), ('WALTER F. GEORGE L&D', None, '31.61210', '-85.07980')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'MAC007': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AQUINNAH', None, '41.33333', '-70.81667'), ('CHILMARK', None, '41.35000', '-70.75000'), ('EDGARTOWN', None, '41.38333', '-70.53000'), ('OAK BLUFFS', None, '41.45000', '-70.56667'), ('TISBURY', None, '41.46667', '-70.61667'), ('VINEYARD HAVEN', 2048, '41.45000', '-70.61670'), ('WEST TISBURY', None, '41.38333', '-70.68333')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'ALC065': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AKRON', 521, '32.87610', '-87.73880'), ('GREENSBORO', 2731, '32.70060', '-87.59410'), ('MOUNDVILLE', 1809, '32.99590', '-87.63070'), ('NEWBERN', 231, '32.59130', '-87.53600')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'MAC001': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('BARNSTABLE', None, '41.70000', '-70.30000'), ('BOURNE', 1443, '41.73270', '-70.61400'), ('BREWSTER', 2212, '41.75160', '-70.08000'), ('CHATHAM', 1667, '41.67640', '-69.96260'), ('DENNIS', 2798, '41.73160', '-70.20190'), ('EASTHAM', None, '41.83333', '-69.96667'), ('FALMOUTH', 4115, '41.54620', '-70.60780'), ('HARWICH', None, '41.69180', '-70.07280'), ('HYANNIS', None, '41.65290', '-70.29580'), ('MASHPEE', None, '41.65000', '-70.48333'), ('ORLEANS', 1716, '41.79100', '-70.00030'), ('PROVINCETOWN', 3192, '42.05110', '-70.17940'), ('SANDWICH', 3058, '41.75780', '-70.49980'), ('TRURO', None, '42.00000', '-70.06667'), ('WELLFLEET', None, '41.93333', '-70.03333'), ('YARMOUTH', None, '41.70940', '-70.22890')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'ALC063': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BOLIGEE', 369, '32.75300', '-88.02430'), ('EUTAW', 1878, '32.84060', '-87.89150'), ('FORKLAND', 629, '32.64760', '-87.86720'), ('UNION', 227, '32.99340', '-87.90550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'MAC003': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ADAMS', 5784, '42.62750', '-73.11930'), ('ASHLEY FALLS', None, '42.05570', '-73.33430'), ('BECKET', None, '42.33080', '-73.07970'), ('CHESHIRE', None, '42.55700', '-73.15300'), ('DALTON', None, '42.47420', '-73.16170'), ('EAST WINDSOR', None, '42.47720', '-72.98320'), ('FLORIDA', None, '42.66720', '-73.00800'), ('GREAT BARRINGTON', 2459, '42.19440', '-73.35640'), ('HANCOCK', None, '42.54300', '-73.32380'), ('HOUSATONIC', 1335, '42.25040', '-73.36270'), ('LEE', 2021, '42.30720', '-73.25150'), ('LENOX', 1667, '42.35810', '-73.28670'), ('MONTEREY', None, '42.18130', '-73.21530'), ('NEW ASHFORD', None, '42.60420', '-73.23630'), ('NORTH ADAMS', 14681, '42.68680', '-73.11380'), ('OTIS', None, '42.19830', '-73.07450'), ('PITTSFIELD', 45793, '42.45180', '-73.26090'), ('SANDISFIELD', None, '42.11320', '-73.13770'), ('SAVOY', None, '42.56770', '-73.02420'), ('SHEFFIELD', None, '42.10930', '-73.34770'), ('SOUTH EGREMONT', None, '42.16120', '-73.41700'), ('WILLIAMSTOWN', 4754, '42.70710', '-73.20190')], 'partOfState': '', 'wfo': 'ALY'}, -'ALC061': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BELLWOOD', None, '31.17160', '-85.79320'), ('BLACK', 202, '31.00940', '-85.74320'), ('CHANCELLOR', None, '31.18010', '-85.87720'), ('COFFEE SPRINGS', 251, '31.16660', '-85.90990'), ('EUNOLA', 182, '31.03860', '-85.84550'), ('FADETTE', None, '31.04250', '-85.53920'), ('GANER', None, '31.08180', '-86.10720'), ('GENEVA', 4388, '31.03660', '-85.87680'), ('GENEVA MUNI A/P', None, '31.05270', '-85.87830'), ('HACODA', None, '31.07360', '-86.16680'), ('HARTFORD', 2369, '31.10070', '-85.69750'), ('LOGAN FIELD MUNI A/P', None, '31.10050', '-86.06300'), ('MALVERN', 1215, '31.13590', '-85.51940'), ('OAK GROVE', 457, '31.08580', '-85.77580'), ('SAMSON', 2071, '31.11220', '-86.04660'), ('SELLERSVILLE', None, '31.12860', '-86.00370'), ('SLOCOMB', 2052, '31.11030', '-85.59430'), ('THURSTON', None, '31.01340', '-85.78190')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'GAC289': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DANVILLE', 373, '32.60550', '-83.24610'), ('JEFFERSONVILLE', 1209, '32.68690', '-83.34420')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'MSC051': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CRUGER', 449, '33.32380', '-90.23490'), ('DURANT', 2932, '33.08020', '-89.85650'), ('GOODMAN', 1252, '32.96790', '-89.91250'), ('LEXINGTON', 2025, '33.11680', '-90.04920'), ('PICKENS', 1325, '32.89090', '-89.96840'), ('TCHULA', 2332, '33.18310', '-90.22260'), ('WEST', 220, '33.19810', '-89.78140')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'GAC281': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HIAWASSEE', 808, '34.94890', '-83.75430'), ('YOUNG HARRIS', 604, '34.93310', '-83.84810')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAC283': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('SOPERTON', 2824, '32.37660', '-82.59220')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAC285': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HOGANSVILLE', 2774, '33.16860', '-84.90250'), ('LA GRANGE', None, '33.04140', '-85.03460'), ('WEST POINT', 3382, '32.87860', '-85.16790')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAC287': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMBOY', None, '31.79220', '-83.58840'), ('ASHBURN', 4419, '31.70890', '-83.65270'), ('BETHEL', None, '31.65720', '-83.56690'), ('COVERDALE', None, '31.62790', '-83.71930'), ('DAKOTA', None, '31.77560', '-83.69330'), ('HARMONY', None, '31.66140', '-83.74090'), ('INAHA', None, '31.61880', '-83.60610'), ('OAK GROVE', None, '31.72590', '-83.73770'), ('REBECCA', 246, '31.80710', '-83.48700'), ('SIBLEY', None, '31.79670', '-83.71030'), ('SYCAMORE', 496, '31.67020', '-83.63510'), ('TURNER CO A/P', None, '31.68520', '-83.63430'), ('WORTH', None, '31.74960', '-83.67600')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'MIC157': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AKRON', 461, '43.56700', '-83.51430'), ('BAY PARK', None, '43.65470', '-83.58920'), ('CARO', 4145, '43.48800', '-83.40210'), ('CASS CITY', 2643, '43.60250', '-83.17520'), ('DEFORD', None, '43.51240', '-83.18960'), ('EAST DAYTON', None, '43.41080', '-83.28530'), ('ELLINGTON', None, '43.55390', '-83.32140'), ('FAIRGROVE', 627, '43.52400', '-83.54170'), ('FOSTORIA', None, '43.25540', '-83.37250'), ('GAGETOWN', 389, '43.65680', '-83.24520'), ('KINGSTON', 450, '43.41360', '-83.18670'), ('MAYVILLE', 1055, '43.33600', '-83.35330'), ('MILLINGTON', 1137, '43.28030', '-83.52880'), ('QUANICASSEE', None, '43.58400', '-83.67350'), ('REESE', 1375, '43.45180', '-83.68860'), ('UNIONVILLE', 605, '43.65410', '-83.46690'), ('VASSAR', 2823, '43.37150', '-83.57870'), ('WATROUSVILLE', None, '43.45220', '-83.52310')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIC155': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BANCROFT', 616, '42.87680', '-84.06550'), ('BENNINGTON', None, '42.93530', '-84.24190'), ('BYRON', 595, '42.82550', '-83.94890'), ('CARLAND', None, '43.05810', '-84.30470'), ('CORUNNA', 3381, '42.98400', '-84.11670'), ('DURAND', 3933, '42.91300', '-83.98830'), ('HENDERSON', None, '43.08600', '-84.19650'), ('JUDDVILLE', None, '43.05860', '-83.98750'), ('LAINGSBURG', 1223, '42.89000', '-84.34880'), ('LENNON', 517, '42.98530', '-83.93140'), ('MORRICE', 882, '42.83800', '-84.17950'), ('NEW LOTHROP', 603, '43.11610', '-83.96890'), ('OWOSSO', 15713, '42.99520', '-84.17580'), ('PERRY', 2065, '42.82090', '-84.22830'), ('SHAFTSBURG', None, '42.80470', '-84.29310'), ('VERNON', 847, '42.93970', '-84.02990')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MSC053': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BELZONI', 2663, '33.17930', '-90.48550'), ('ISOLA', 768, '33.26250', '-90.59170'), ('LOUISE', 315, '32.98260', '-90.59120'), ('SILVER CITY', 337, '33.09630', '-90.49720')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MIC153': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BLANEY PARK', None, '46.12000', '-85.92000'), ('COOKS', None, '45.91800', '-86.47600'), ('CUSINO LAKE', None, '46.45600', '-86.25900'), ('GERMFASK', None, '46.25000', '-85.92000'), ('GULLIVER', None, '45.98000', '-86.02000'), ('MANISTIQUE', 3583, '45.95860', '-86.25010'), ('SENEY', None, '46.35000', '-85.95000'), ('SEUL CHOIX POINT', None, '45.92000', '-85.92000'), ('SNYDER LAKE', None, '46.48800', '-85.94800'), ('STEUBEN', None, '46.18800', '-86.45700'), ('THOMPSON', None, '45.90000', '-86.33000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIC151': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('APPLEGATE', 287, '43.35490', '-82.63650'), ('ARGYLE', None, '43.56420', '-82.93610'), ('BROWN CITY', 1334, '43.21160', '-82.98870'), ('CARSONVILLE', 502, '43.42570', '-82.67260'), ('CROSWELL', 2467, '43.27370', '-82.61870'), ('DECKER', None, '43.45910', '-83.04960'), ('DECKERVILLE', 944, '43.52560', '-82.74210'), ('FORESTVILLE', 127, '43.66070', '-82.61310'), ('JUHL', None, '43.35970', '-82.94640'), ('LEXINGTON', 1104, '43.26850', '-82.53380'), ('MARLETTE', 2104, '43.32650', '-83.08070'), ('MELVIN', 160, '43.18460', '-82.86350'), ('MINDEN', None, '43.67100', '-82.77520'), ('NEW GREENLEAF', None, '43.66170', '-83.07830'), ('PECK', 599, '43.25910', '-82.81650'), ('PORT SANILAC', 658, '43.43010', '-82.54810'), ('RICHMONDVILLE', None, '43.57330', '-82.59760'), ('ROSEBURG', None, '43.19000', '-82.74390'), ('SANDUSKY', 2745, '43.42290', '-82.83180'), ('WATERTOWN', None, '43.34110', '-82.82830')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'UTC047': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BALLARD', 566, '40.28430', '-109.94700'), ('FORT DUCHESNE', 621, '40.27820', '-109.87100'), ('MAESER', 2855, '40.47360', '-109.58090'), ('NAPLES', 1300, '40.42980', '-109.49100'), ('RANDLETT', 224, '40.23060', '-109.82770'), ('VERNAL', 7714, '40.45200', '-109.53550'), ('WHITEROCKS', 341, '40.47290', '-109.94300')], 'partOfState': 'NORTHEAST', 'wfo': 'GJT'}, -'MIC159': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BANGOR', 1933, '42.31150', '-86.11450'), ('BLOOMINGDALE', 528, '42.38340', '-85.95780'), ('BREEDSVILLE', 235, '42.34710', '-86.07090'), ('COVERT', None, '42.29370', '-86.26220'), ('DECATUR', 1838, '42.10970', '-85.97340'), ('GLENDALE', None, '42.30280', '-85.95630'), ('GOBLES', 815, '42.36190', '-85.87670'), ('GRAND JUNCTION', None, '42.40420', '-86.07300'), ('HARTFORD', 2476, '42.20750', '-86.16620'), ('KEELER', None, '42.11280', '-86.16670'), ('KENDALL', None, '42.36170', '-85.81330'), ('LACOTA', None, '42.41350', '-86.12970'), ('LAWRENCE', 1059, '42.21870', '-86.05280'), ('LAWTON', 1859, '42.16720', '-85.84640'), ('MATTAWAN', 2536, '42.21400', '-85.78760'), ('MCDONALD', None, '42.26530', '-86.15700'), ('MENTHA', None, '42.35720', '-85.77470'), ('PAW PAW', 3363, '42.21800', '-85.89000'), ('PINE GROVE', None, '42.35380', '-85.86280'), ('SOUTH HAVEN', 5021, '42.40040', '-86.27250')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'TXC121': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARGYLE', 2365, '33.11050', '-97.17990'), ('AUBREY', 1500, '33.30390', '-96.98310'), ('BARTONVILLE', 1093, '33.08870', '-97.15640'), ('COPPER CANYON', 1216, '33.09710', '-97.09670'), ('CORINTH', 11325, '33.14380', '-97.06470'), ('CORRAL CITY', 89, '33.09930', '-97.22620'), ('CROSS ROADS', 603, '33.23060', '-96.99410'), ('DENTON', 80537, '33.21420', '-97.13090'), ('DOUBLE OAK', 2179, '33.06410', '-97.11260'), ('FLOWER MOUND', 50702, '33.02830', '-97.09270'), ('HACKBERRY', 544, '33.15000', '-96.91840'), ('HEBRON', 874, '33.04230', '-96.89930'), ('HICKORY CREEK', 2078, '33.10930', '-97.02820'), ('HIGHLAND VILLAGE', 12173, '33.08810', '-97.05560'), ('JUSTIN', 1891, '33.08660', '-97.29990'), ('KRUGERVILLE', 903, '33.28070', '-96.99060'), ('KRUM', 1979, '33.26560', '-97.22960'), ('LAKE DALLAS', 6166, '33.12650', '-97.02470'), ('LAKEWOOD VILLAGE', 342, '33.14040', '-96.97650'), ('LEWISVILLE', 77737, '33.04170', '-96.98290'), ('LINCOLN PARK', 517, '33.22260', '-96.97240'), ('LITTLE ELM', 3646, '33.16380', '-96.93000'), ('MARSHALL CREEK', 431, '33.01760', '-97.20830'), ('NORTHLAKE', 921, '33.07400', '-97.25730'), ('OAK POINT', 1747, '33.18220', '-96.99490'), ('PILOT POINT', 3538, '33.39850', '-96.95510'), ('PONDER', 507, '33.17910', '-97.28760'), ('ROANOKE', 2810, '33.00210', '-97.23230'), ('SANGER', 4534, '33.36070', '-97.17680'), ('SHADY SHORES', 1461, '33.16270', '-97.04430'), ('THE COLONY', 26531, '33.09090', '-96.88710'), ('TROPHY CLUB', 6350, '33.00040', '-97.19290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'MNC087': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEAULIEU', None, '47.33560', '-95.80420'), ('BEJOU', 94, '47.44180', '-95.97200'), ('ISLAND_LAKE', None, '47.44860', '-95.65140'), ('MAHKONCE', None, '47.32440', '-95.61530'), ('MAHNOMEN', 1202, '47.31480', '-95.96910'), ('NAYTAHWAUSH', 583, '47.26280', '-95.62580'), ('PINE BEND', None, '47.42640', '-95.59080'), ('TULABY LAKE', None, '47.15250', '-95.60420'), ('WAUBUN', 403, '47.18410', '-95.93950')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'KSC159': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALDEN', 168, '38.24410', '-98.31110'), ('BUSHTON', 314, '38.51280', '-98.39470'), ('CHASE', 490, '38.35570', '-98.34840'), ('FREDERICK', 11, '38.51310', '-98.26740'), ('LITTLE RIVER', 536, '38.39770', '-98.01240'), ('LYONS', 3732, '38.34600', '-98.20220'), ('RAYMOND', 95, '38.27850', '-98.41450'), ('SILICA', None, '38.35000', '-98.45000'), ('STERLING', 2642, '38.20920', '-98.20580')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'MNC085': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BISCAY', 114, '44.82650', '-94.27410'), ('BROWNTON', 807, '44.73260', '-94.35120'), ('GLENCOE', 5453, '44.76950', '-94.14950'), ('HUTCHINSON', 13080, '44.88880', '-94.37470'), ('LESTER PRAIRIE', 1377, '44.88370', '-94.03970'), ('PLATO', 336, '44.77240', '-94.03900'), ('SILVER LAKE', 761, '44.90380', '-94.19750'), ('STEWART', 564, '44.72510', '-94.48790'), ('WINSTED', 2094, '44.96580', '-94.04880')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNC083': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BALATON', 637, '44.23330', '-95.87110'), ('COTTONWOOD', 1148, '44.60990', '-95.67080'), ('FLORENCE', 61, '44.23690', '-96.05150'), ('GARVIN', 159, '44.21480', '-95.76090'), ('GHENT', 315, '44.51280', '-95.89240'), ('LYND', 346, '44.38510', '-95.89560'), ('MARSHALL', 12735, '44.45070', '-95.78950'), ('MINNEOTA', 1449, '44.56370', '-95.98200'), ('RUSSELL', 371, '44.31890', '-95.94800'), ('TAUNTON', 207, '44.59310', '-96.06320'), ('TRACY', 2268, '44.23730', '-95.61690')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNC081': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARCO', 100, '44.38350', '-96.18080'), ('HENDRICKS', 725, '44.50860', '-96.42630'), ('IVANHOE', 679, '44.46410', '-96.25040'), ('LAKE BENTON', 703, '44.26260', '-96.29250'), ('TYLER', 1218, '44.27930', '-96.13510')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'KSC153': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ATWOOD', 1279, '39.81040', '-101.04100'), ('BEARDSLEY', None, '39.81000', '-101.23000'), ('BLAKEMAN', None, '39.82000', '-101.12000'), ('HERNDON', 149, '39.90850', '-100.78570'), ('LUDELL', None, '39.85000', '-100.96000'), ('MCDONALD', 159, '39.78520', '-101.37030')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'KSC151': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BYERS', 50, '37.78780', '-98.86670'), ('CAIRO', None, '37.64000', '-98.54000'), ('COATS', 112, '37.51090', '-98.82440'), ('CROFT', None, '37.49000', '-98.99000'), ('CULLISON', 98, '37.62970', '-98.90510'), ('HOPEWELL', None, '37.80000', '-98.98000'), ('ISABEL', 108, '37.46770', '-98.55140'), ('IUKA', 185, '37.72900', '-98.73140'), ('PRATT', 6570, '37.64670', '-98.73590'), ('PRESTON', 164, '37.75800', '-98.55550'), ('SAWYER', 124, '37.49770', '-98.68270')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'MSC057': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('EVERGREEN', None, '34.16670', '-88.51670'), ('FAIRVIEW', None, '34.36670', '-88.31670'), ('FULTON', 3882, '34.26230', '-88.40170'), ('MANTACHIE', 1107, '34.32400', '-88.49300'), ('MEW SALEM', None, '34.15000', '-88.35000'), ('SANDY SPRINGS', None, '34.43330', '-88.38330'), ('TREMONT', 390, '34.23350', '-88.24900')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'KSC157': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AGENDA', 81, '39.70780', '-97.43140'), ('BELLEVILLE', 2239, '39.82440', '-97.63220'), ('COURTLAND', 334, '39.78140', '-97.89250'), ('CUBA', 231, '39.80280', '-97.45560'), ('MUNDEN', 122, '39.91390', '-97.53780'), ('NARKA', 93, '39.96060', '-97.42560'), ('NORWAY', None, '39.69610', '-97.77360'), ('REPUBLIC', 161, '39.92360', '-97.82140'), ('SCANDIA', 436, '39.79450', '-97.78330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'KSC155': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(HUT)HUTCHINSON MUNI ARPT', None, '38.06670', '-97.86670'), ('ABBYVILLE', 128, '37.97060', '-98.20340'), ('ARLINGTON', 459, '37.89600', '-98.17760'), ('BUHLER', 1358, '38.13810', '-97.77130'), ('HAVEN', 1175, '37.90230', '-97.78060'), ('HUTCHINSON', 40787, '38.06550', '-97.91420'), ('LANGDON', 72, '37.85330', '-98.32410'), ('NICKERSON', 1194, '38.14770', '-98.08670'), ('PARTRIDGE', 259, '37.96740', '-98.09390'), ('PLEVNA', 99, '37.97110', '-98.30910'), ('PRETTY PRAIRIE', 615, '37.78020', '-98.01970'), ('SOUTH HUTCHINSON', 2539, '38.02840', '-97.94100'), ('SYLVIA', 297, '37.95990', '-98.40780'), ('TURON', 436, '37.80740', '-98.42800'), ('WILLOWBROOK', 36, '38.10160', '-97.99110')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'MNC089': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALVARADO', 371, '48.19260', '-96.99830'), ('ARGYLE', 656, '48.33740', '-96.81570'), ('BIG WOODS', None, '48.31140', '-97.10780'), ('ENGLUND', None, '48.48580', '-96.62780'), ('ESPELIE', None, '48.22360', '-95.68000'), ('FLORIAN', None, '48.44220', '-96.62780'), ('GATZKE', None, '48.42440', '-95.78390'), ('GRYGLA', 228, '48.29970', '-95.61970'), ('HOLT', 89, '48.29210', '-96.19390'), ('MARCH', None, '48.19500', '-96.89690'), ('MIDDLE RIVER', 319, '48.43560', '-96.16190'), ('NEWFOLDEN', 362, '48.35520', '-96.32970'), ('OLD MILL STATE PARK', None, '48.36140', '-96.57060'), ('OSLO', 347, '48.19490', '-97.12790'), ('RADIUM', None, '48.22940', '-96.61330'), ('ROSEWOOD', None, '48.18940', '-96.29000'), ('STEPHEN', 708, '48.45150', '-96.87720'), ('STRANDQUIST', 88, '48.49000', '-96.44810'), ('VIKING', 92, '48.21790', '-96.40640'), ('WARREN', 1678, '48.19610', '-96.76980')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'WVC063': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BOZOO', None, '37.46670', '-80.83330'), ('GAP MILLS', None, '37.56670', '-80.41670'), ('GLACE', None, '37.68330', '-80.35000'), ('HOLLYWOOD', None, '37.61670', '-80.45000'), ('LAUREL BRANCH', None, '37.53330', '-80.51670'), ('LINDSIDE', None, '37.45000', '-80.66670'), ('PICKAWAY', None, '37.63330', '-80.51670'), ('RAINES CORNER', None, '37.51670', '-80.61670'), ('RED SULPHUR SPRINGS', None, '37.50000', '-80.76670'), ('SWEET SPRINGS', None, '37.63330', '-80.25000'), ('UNION', 548, '37.58330', '-80.53330'), ('WAITEVILLE', None, '37.48330', '-80.43330'), ('WAYSIDE', None, '37.58330', '-80.70000'), ('WOLFCREEK', None, '37.66670', '-80.63330'), ('ZENITH', None, '37.50000', '-80.53330')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'WVC061': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BLACKSVILLE', 175, '39.71870', '-80.21560'), ('BROOKHAVEN', 4734, '39.61040', '-79.88440'), ('CASSVILLE', 1586, '39.66390', '-80.05890'), ('CHEAT LAKE', 6396, '39.67200', '-79.85360'), ('CORE', None, '39.68000', '-80.10000'), ('GRANVILLE', 778, '39.64670', '-79.99060'), ('MORGANTOWN', 26809, '39.63560', '-79.94980'), ('OSAGE', None, '39.65830', '-80.00940'), ('STAR CITY', 1366, '39.65940', '-79.98660'), ('WADESTOWN', None, '39.68000', '-80.33000'), ('WESTOVER', 3941, '39.63510', '-79.97640')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVC067': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BIRCH RIVER', None, '38.49860', '-80.75540'), ('CRAIGSVILLE', 2204, '38.32050', '-80.64580'), ('RICHWOOD', 2477, '38.22150', '-80.53720'), ('SUMMERSVILLE', 3294, '38.28440', '-80.84410')], 'partOfState': '', 'wfo': 'RLX'}, -'NMC061': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ADELINO', None, '34.71600', '-106.73100'), ('BELEN', 6901, '34.65870', '-106.77900'), ('BOSQUE FARMS', 3931, '34.85480', '-106.70090'), ('ISLETA PUEBLO', None, '34.88220', '-106.68340'), ('JARALES', 1434, '34.61300', '-106.76300'), ('LOS CHAVEZ', None, '34.73000', '-106.76080'), ('LOS LUNAS', 10034, '34.81330', '-106.73810'), ('LOS TRUJILLOS-GABALDON', 2166, '34.66130', '-106.75520'), ('MEADOW LAKE', 4491, '34.80200', '-106.59070'), ('PERALTA', 3750, '34.82950', '-106.68740'), ('RIO COMMUNITIES', 4213, '34.64410', '-106.71800'), ('TOME-ADELINO', 2211, '34.73150', '-106.72070'), ('VALENCIA', 4500, '34.79600', '-106.69100')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'WVC069': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BETHLEHEM', 2651, '40.04470', '-80.69200'), ('CLEARVIEW', 590, '40.14240', '-80.69130'), ('TRIADELPHIA', 817, '40.05060', '-80.62720'), ('VALLEY GROVE', 405, '40.09120', '-80.57070'), ('WEST LIBERTY', 1220, '40.16730', '-80.59480'), ('WHEELING', 31419, '40.07510', '-80.69700')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'TNC181': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CLIFTON', 2699, '35.38140', '-87.99260'), ('COLLINWOOD', 1024, '35.17640', '-87.74430'), ('WAYNESBORO', 2228, '35.32280', '-87.75780')], 'partOfState': '', 'wfo': 'OHX'}, -'NCC149': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('COLUMBUS', 992, '35.24680', '-82.20490'), ('LAKE ADGER', None, '35.33500', '-82.18670'), ('MILL SPRING', None, '35.29750', '-82.16140'), ('SALUDA', 575, '35.23790', '-82.34810'), ('TRYON', 1760, '35.20890', '-82.23870')], 'partOfState': '', 'wfo': 'GSP'}, -'TNC183': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CRONANVILLE', None, '36.43330', '-88.71670'), ('DRESDEN', 2855, '36.27740', '-88.69040'), ('GLEASON', 1463, '36.21560', '-88.61020'), ('GREENFIELD', 2208, '36.15540', '-88.80140'), ('LATHAM', None, '36.43330', '-88.71670'), ('MARTIN', 10515, '36.34230', '-88.85850'), ('PALMERSVILLE', None, '36.41670', '-88.58330'), ('SHARON', 988, '36.23320', '-88.82490')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TNC185': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DOYLE', 525, '35.85210', '-85.51280'), ('SPARTA', 4599, '35.93450', '-85.47310')], 'partOfState': '', 'wfo': 'OHX'}, -'TNC187': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRENTWOOD', 23445, '35.99670', '-86.78770'), ('FAIRVIEW', 5800, '35.97970', '-87.12420'), ('FRANKLIN', 41842, '35.92940', '-86.84200'), ('NOLENSVILLE', 3099, '35.94790', '-86.64800')], 'partOfState': '', 'wfo': 'OHX'}, -'NCC143': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEACH SPRINGS', None, '36.20920', '-76.51500'), ('BELVIDERE', None, '36.26850', '-76.53590'), ('BURGESS', None, '36.13470', '-76.40750'), ('CHAPANOKE', None, '36.25400', '-76.37740'), ('FORESTBURG', None, '36.19080', '-76.37830'), ('HARVEY POINT', None, '36.09000', '-76.32000'), ('HERTFORD', 2070, '36.18310', '-76.47460'), ('HICKORY CROSSROADS', None, '36.32030', '-76.54450'), ('HOLIDAY ISLAND', None, '36.08750', '-76.38330'), ('JACOCKS', None, '36.14830', '-76.26410'), ('LIGHT NIXON FORK', None, '36.13220', '-76.49390'), ('NICANOR', None, '36.33220', '-76.47980'), ('PEACH', None, '36.34500', '-76.53610'), ('SMITHTOWN', None, '36.24200', '-76.48450'), ('SNUG HARBOR', None, '36.08240', '-76.43000'), ('STEVENSON POINT', None, '36.10000', '-76.21000'), ('WHITESTON', None, '36.32510', '-76.49860'), ('WINFALL', 554, '36.21060', '-76.45520'), ('WOODVILLE', None, '36.23420', '-76.32670'), ('YEOPIM STATION', None, '36.14200', '-76.52290')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'TNC189': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELINDA CITY', None, '36.17000', '-86.47790'), ('GREEN HILL', 7068, '36.23480', '-86.57090'), ('LEBANON', 20235, '36.20980', '-86.32220'), ('MOUNT JULIET', 12366, '36.20620', '-86.52250'), ('RURAL HILL', 2032, '36.11140', '-86.51130'), ('WATERTOWN', 1358, '36.09960', '-86.13950')], 'partOfState': '', 'wfo': 'OHX'}, -'NCC141': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ATKINSON', 236, '34.52830', '-78.17140'), ('BURGAW', 3337, '34.55190', '-77.92640'), ('CURRIE', None, '34.46250', '-78.10140'), ('EDGECOME', None, '34.46280', '-77.59530'), ('HAMPSTEAD', None, '34.36750', '-77.71080'), ('LONG CREEK', None, '34.44190', '-78.01000'), ('MAPLE HILL', None, '34.66110', '-77.69670'), ('PENDERLEA', None, '34.65940', '-78.05000'), ('ROCKY POINT', None, '34.43500', '-77.88810'), ('SCOTTS HILL', None, '34.32110', '-77.76610'), ('ST. HELENA', 395, '34.51380', '-77.91540'), ('SURF CITY', 1393, '34.42690', '-77.54640'), ('TOPSAIL BEACH', 471, '34.36500', '-77.63080'), ('WARDS CORNER', None, '34.53440', '-78.07220'), ('WATHA', 151, '34.64030', '-77.96110'), ('WILLARD', None, '34.69000', '-77.98000'), ('WOODSIDE', None, '34.41920', '-77.64750')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCC147': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AYDEN', 4622, '35.47080', '-77.42110'), ('BETHEL', 1681, '35.80760', '-77.37610'), ('FALKLAND', 112, '35.69860', '-77.51480'), ('FARMVILLE', 4302, '35.59490', '-77.59100'), ('FOUNTAIN', 533, '35.67410', '-77.63710'), ('GREENVILLE', 60476, '35.59980', '-77.37440'), ('GRIFTON', 2073, '35.37380', '-77.43460'), ('GRIMESLAND', 440, '35.56230', '-77.19170'), ('SIMPSON', 464, '35.57500', '-77.27880'), ('WINTERVILLE', 4791, '35.52870', '-77.39770')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC145': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BETHEL HILL', None, '36.50000', '-78.88000'), ('BUSHY FORK', None, '36.31000', '-79.08000'), ('CONCORD', 55977, '36.47000', '-79.06000'), ('MORIAH', None, '36.25000', '-78.83000'), ('ROXBORO', 8696, '36.40160', '-78.98010'), ('SURL', None, '36.32000', '-78.88000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'MNC015': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('COBDEN', 61, '44.28390', '-94.84770'), ('COMFREY', 367, '44.11090', '-94.90270'), ('EVAN', 91, '44.35250', '-94.83690'), ('HANSKA', 443, '44.14810', '-94.49460'), ('NEW ULM', 13594, '44.31310', '-94.46370'), ('SLEEPY EYE', 3515, '44.29990', '-94.72480'), ('SPRINGFIELD', 2215, '44.23790', '-94.97680')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNC017': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AUTOMBA', None, '46.52090', '-93.01870'), ('BARNUM', 525, '46.50480', '-92.68930'), ('CARLTON', 810, '46.66030', '-92.42320'), ('CLOQUET', 11201, '46.72900', '-92.49440'), ('CROMWELL', 143, '46.67950', '-92.87070'), ('ESKO', None, '46.70600', '-92.36330'), ('HOLYOKE', None, '46.46760', '-92.38860'), ('KETTLE RIVER', 168, '46.48640', '-92.87800'), ('MAHTOWA', None, '46.57400', '-92.63200'), ('MOOSE LAKE', 2239, '46.44600', '-92.76840'), ('NEMADJI', None, '46.47950', '-92.59480'), ('PLEASANT VALLEY', None, '46.53830', '-92.38500'), ('SAWYER', None, '46.67140', '-92.63330'), ('SCANLON', 838, '46.70740', '-92.42890'), ('SCOTTS CORNER', None, '46.59830', '-92.42910'), ('THOMSON', 153, '46.66410', '-92.38980'), ('WRENSHALL', 308, '46.61830', '-92.38360'), ('WRIGHT', 93, '46.67210', '-93.00670')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MSC029': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BEAUREGARD', 265, '31.72140', '-90.38800'), ('CRYSTAL SPRINGS', 5873, '31.98970', '-90.35500'), ('GEORGETOWN', 344, '31.86980', '-90.16480'), ('HAZLEHURST', 4400, '31.86480', '-90.39130'), ('WESSON', 1693, '31.70050', '-90.39670')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSC021': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('PORT GIBSON', 1840, '31.95510', '-90.98340')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'MNC011': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARTICHOKE', None, '45.39920', '-96.15750'), ('ARTICHOKE', None, '45.39920', '-96.15750'), ('BARRY', 25, '45.55850', '-96.55970'), ('BARRY', 25, '45.55850', '-96.55970'), ('BEARDSLEY', 262, '45.55780', '-96.71420'), ('BEARDSLEY', 262, '45.55780', '-96.71420'), ('BONANZA GROVE', None, '45.44560', '-96.70950'), ('BONANZA GROVE', None, '45.44560', '-96.70950'), ('CLINTON', 453, '45.46220', '-96.44330'), ('CLINTON', 453, '45.46220', '-96.44330'), ('CORRELL', 47, '45.23180', '-96.16270'), ('CORRELL', 47, '45.23180', '-96.16270'), ('GRACEVILLE', 605, '45.56850', '-96.43750'), ('GRACEVILLE', 605, '45.56850', '-96.43750'), ('JOHNSON', 32, '45.57190', '-96.29380'), ('JOHNSON', 32, '45.57190', '-96.29380'), ('LAGOONA BEACH', None, '45.36650', '-96.48560'), ('LAGOONA BEACH', None, '45.36650', '-96.48560'), ('ODESSA', 113, '45.26140', '-96.33120'), ('ODESSA', 113, '45.26140', '-96.33120'), ('ORTONVILLE', 2158, '45.30360', '-96.44090'), ('ORTONVILLE', 2158, '45.30360', '-96.44090'), ('YANKEETOWN', None, '45.49110', '-96.74020'), ('YANKEETOWN', None, '45.49110', '-96.74020')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABR'}, -'MSC023': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ENTERPRISE', 474, '32.17490', '-88.81370'), ('PACHUTA', 245, '32.04280', '-88.88440'), ('QUITMAN', 2463, '32.04130', '-88.72040'), ('SHUBUTA', 651, '31.86080', '-88.70240'), ('STONEWALL', 1149, '32.13750', '-88.79590')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSC025': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('WEST POINT', 12145, '33.60650', '-88.64460')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'MSC027': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOBO', None, '34.13330', '-90.68330'), ('CLARKSDALE', 20645, '34.20040', '-90.57670'), ('COAHOMA', 325, '34.36590', '-90.52220'), ('DUBLIN', None, '34.08330', '-90.50000'), ('FRIARS POINT', 1480, '34.36730', '-90.63810'), ('JONESTOWN', 1701, '34.32120', '-90.45430'), ('KINGS', None, '34.30000', '-90.60000'), ('LULA', 370, '34.45480', '-90.47760'), ('LYON', 418, '34.21710', '-90.54220'), ('SHERARD', None, '34.21670', '-90.71670')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'ALC117': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALABASTER', 22619, '33.22650', '-86.82460'), ('CALERA', 3158, '33.10130', '-86.75370'), ('CHELSEA', 2949, '33.32630', '-86.63740'), ('COLUMBIANA', 3316, '33.17700', '-86.60080'), ('HARPERSVILLE', 1620, '33.34180', '-86.43270'), ('HELENA', 10296, '33.28970', '-86.85240'), ('INVERNESS', None, '33.40410', '-86.72290'), ('LAKE PURDY', 5799, '33.42990', '-86.68050'), ('MEADOWBROOK', 4697, '33.40190', '-86.69680'), ('MONTEVALLO', 4825, '33.10930', '-86.85120'), ('PELHAM', 14369, '33.30330', '-86.79410'), ('VINCENT', 1853, '33.38560', '-86.40990'), ('WILSONVILLE', 1551, '33.23600', '-86.47900'), ('WILTON', 580, '33.08220', '-86.88110')], 'partOfState': '', 'wfo': 'BMX'}, -'ALC115': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ARGO', 1780, '33.68670', '-86.51000'), ('ASHVILLE', 2260, '33.83470', '-86.26400'), ('BRANCHVILLE', 825, '33.66110', '-86.42700'), ('MARGARET', 1169, '33.68770', '-86.47470'), ('MOODY', 8053, '33.59690', '-86.49460'), ('ODENVILLE', 1131, '33.68600', '-86.39840'), ('PELL CITY', 9565, '33.56020', '-86.27240'), ('RAGLAND', 1918, '33.74810', '-86.13630'), ('RIVERSIDE', 1564, '33.61130', '-86.20770'), ('SPRINGVILLE', 2521, '33.77360', '-86.47510'), ('STEELE', 1093, '33.93400', '-86.19730')], 'partOfState': '', 'wfo': 'BMX'}, -'TXC429': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRECKENRIDGE', 5868, '32.75670', '-98.91250')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'MNC013': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AMBOY', 575, '43.88850', '-94.15730'), ('EAGLE LAKE', 1787, '44.15940', '-93.88250'), ('GOOD THUNDER', 592, '44.00670', '-94.07010'), ('LAKE CRYSTAL', 2420, '44.10340', '-94.21790'), ('MADISON LAKE', 837, '44.20220', '-93.81440'), ('MANKATO', 32427, '44.16670', '-93.99110'), ('MAPLETON', 1678, '43.92590', '-93.95390'), ('PEMBERTON', 246, '44.00890', '-93.78390'), ('SKYLINE', 330, '44.14020', '-94.03520'), ('ST CLAIR', None, '44.08110', '-93.85750'), ('VERNON CENTER', 359, '43.96340', '-94.16670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'TXC399': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BALLINGER', 4243, '31.74070', '-99.95550'), ('BENOIT', None, '31.78280', '-99.82860'), ('CREWS', None, '31.93190', '-99.77780'), ('DRASCO', None, '32.07640', '-99.98720'), ('HATCHEL', None, '31.85000', '-99.94890'), ('MAVERICK', None, '31.83330', '-100.19470'), ('MILES', 850, '31.59720', '-100.18190'), ('NORTON', None, '31.87080', '-100.12580'), ('PUMPHREY', None, '32.03860', '-100.03810'), ('ROWENA', None, '31.64690', '-100.04580'), ('WILMETH', None, '31.97810', '-100.12000'), ('WINGATE', None, '32.04390', '-100.10970'), ('WINTERS', 2880, '31.96550', '-99.93430')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'ALC111': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ROANOKE', 6563, '33.14530', '-85.36930'), ('WADLEY', 640, '33.12330', '-85.56860'), ('WEDOWEE', 818, '33.30850', '-85.48650'), ('WOODLAND', 192, '33.37410', '-85.39930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'TXC425': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GLEN ROSE', 2122, '32.23630', '-97.75460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC395': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BREMOND', 876, '31.16510', '-96.67630'), ('CALVERT', 1426, '30.97960', '-96.67170'), ('FRANKLIN', 1470, '31.02490', '-96.48570'), ('HEARNE', 4690, '30.87700', '-96.59480')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FWD'}, -'TXC393': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CODMAN', None, '35.64000', '-100.75310'), ('LORA', None, '35.74080', '-100.55720'), ('MIAMI', 588, '35.69180', '-100.64040')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC423': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARP', 901, '32.22770', '-95.05630'), ('BULLARD', 1150, '32.14110', '-95.31910'), ('LINDALE', 2954, '32.50540', '-95.40600'), ('NEW CHAPEL HILL', 553, '32.30340', '-95.16900'), ('NOONDAY', 515, '32.24390', '-95.39760'), ('TROUP', 1949, '32.14460', '-95.12310'), ('TYLER', 83650, '32.32840', '-95.30360'), ('WHITEHOUSE', 5346, '32.22600', '-95.21960'), ('WINONA', 582, '32.49070', '-95.17090')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'ALC119': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CUBA', 363, '32.44060', '-88.37430'), ('EMELLE', 31, '32.72850', '-88.31520'), ('EPES', 206, '32.69170', '-88.12600'), ('GAINESVILLE', 220, '32.81530', '-88.15960'), ('GEIGER', 161, '32.87370', '-88.31340'), ('LIVINGSTON', 3297, '32.59880', '-88.18710'), ('YORK', 2854, '32.49600', '-88.29610')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'NCC037': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BYNUM', None, '35.77000', '-79.15000'), ('FEARRINGTON', 903, '35.80630', '-79.07350'), ('GOLDSTON', 319, '35.59340', '-79.32850'), ('HARPERS CROSSROADS', None, '35.56000', '-79.48000'), ('HASTY', None, '35.68000', '-79.47000'), ('JORDAN LAKE', None, '35.74000', '-79.04000'), ('MONCURE', None, '35.62000', '-79.08000'), ('PITTSBORO', 2226, '35.71940', '-79.17450'), ('SILER CITY', 6966, '35.72490', '-79.46260')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC035': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CATAWBA', 698, '35.70620', '-81.07580'), ('CLAREMONT', 1038, '35.71360', '-81.15090'), ('CONOVER', 6604, '35.70950', '-81.21750'), ('COOKSVILLE', None, '35.59310', '-81.47610'), ('HICKORY', 37222, '35.73920', '-81.32620'), ('LONGVIEW', None, '35.72600', '-81.38400'), ('MAIDEN', 3282, '35.57580', '-81.20610'), ('NEWTON', 12560, '35.66540', '-81.21870'), ('ST. STEPHENS', 9439, '35.76450', '-81.27340'), ('TERRELL', None, '35.58920', '-80.97830')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC033': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAYNES', None, '36.26670', '-79.30000'), ('BETHEL', 1681, '36.45000', '-79.45000'), ('BLANCH', None, '36.51670', '-79.28330'), ('CAMP SPRINGS', None, '36.30000', '-79.50000'), ('GATEWOOD', None, '36.53330', '-79.40000'), ('HAMER', None, '36.45000', '-79.28330'), ('HIGHTOWERS', None, '36.33330', '-79.25000'), ('JERICHO', None, '36.28330', '-79.36670'), ('LEASBURG', None, '36.40000', '-79.16670'), ('MILTON', 132, '36.53650', '-79.20840'), ('MILTON', 132, '36.53330', '-79.21670'), ('PELHAM', None, '36.50000', '-79.46670'), ('PROSPECT HILL', None, '36.25000', '-79.20000'), ('PROVIDENCE', None, '36.50000', '-79.36670'), ('QUICK', None, '36.40000', '-79.50000'), ('SEMORA', None, '36.50000', '-79.15000'), ('TOPNOT', None, '36.36670', '-79.26670'), ('YANCEYVILLE', 2091, '36.40760', '-79.34310')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'NCC031': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ATLANTIC BEACH', 1781, '34.70020', '-76.73950'), ('BEAUFORT', 3771, '34.72150', '-76.65250'), ('CAPE CARTERET', 1214, '34.69430', '-77.05950'), ('CEDAR POINT', 929, '34.68140', '-77.08150'), ('EMERALD ISLE', 3488, '34.66640', '-77.02920'), ('INDIAN BEACH', 95, '34.68590', '-76.89440'), ('MOREHEAD CITY', 7691, '34.72470', '-76.73200'), ('NEWPORT', 3349, '34.78790', '-76.86100'), ('PINE KNOLL SHORES', 1524, '34.69570', '-76.81820')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC039': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANDREWS', 1602, '35.19850', '-83.82290'), ('CULBERSON', None, '34.99060', '-84.16890'), ('HIAWASSE DAM', None, '35.14750', '-84.17110'), ('HOT HOUSE', None, '35.01940', '-84.23330'), ('MARBLE', None, '35.17390', '-83.92580'), ('MURPHY', 1568, '35.09330', '-84.02740'), ('TOPTON', None, '35.24560', '-83.70420'), ('UNAKA', None, '35.19390', '-84.14250'), ('VIOLET', None, '35.18830', '-84.21890')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'WIC083': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ABRAMS', None, '44.78000', '-88.06000'), ('BREED', None, '45.06000', '-88.43000'), ('BROOKSIDE', None, '44.79000', '-88.00000'), ('GILLETT', 1256, '44.90000', '-88.31000'), ('HAYES', None, '45.00000', '-88.43000'), ('HICKORY CORNERS', None, '45.00000', '-88.26000'), ('KLONDIKE', None, '45.06000', '-88.16000'), ('LAKEWOOD', None, '45.29000', '-88.51000'), ('LENA', 510, '44.95000', '-88.05000'), ('LITTLE SUAMICO', None, '44.71000', '-87.99000'), ('MOUNTAIN', None, '45.18000', '-88.48000'), ('OCONTO', 4708, '44.88000', '-87.88000'), ('OCONTO FALLS', 2843, '44.88000', '-88.20000'), ('PENSAUKEE', None, '44.81000', '-87.91000'), ('SAMPSON', None, '44.76000', '-88.18000'), ('SOBIESKI', None, '44.71000', '-88.06000'), ('SPRUCE', None, '44.95000', '-88.16000'), ('STILES', None, '44.86000', '-88.05000'), ('SURING', 605, '45.00000', '-88.38000'), ('TOWNSEND', None, '45.33000', '-88.58000'), ('UNDERHILL', None, '44.88000', '-88.38000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIC081': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CASHTON', 1005, '43.74310', '-90.78140'), ('CATARACT', None, '44.08588', '-90.83121'), ('CLIFTON', None, '43.88119', '-90.35057'), ('FORT MC COY', None, '44.01643', '-90.68135'), ('FOUR CORNERS', None, '44.07857', '-90.91162'), ('GLENDALE', 13367, '43.78251', '-90.34874'), ('KENDALL', 469, '43.79320', '-90.36760'), ('KIRBY', None, '44.10233', '-90.53332'), ('MELVINA', 93, '43.80430', '-90.78030'), ('NORWALK', 653, '43.83330', '-90.62540'), ('OAKDALE', 297, '43.96270', '-90.37860'), ('PORTLAND', None, '43.76606', '-90.84949'), ('RIDGEVILLE', None, '43.88485', '-90.56622'), ('SHENNINGTON', None, '44.03105', '-90.31401'), ('SPARTA', 8648, '43.94280', '-90.80980'), ('ST MARYS', None, '43.80078', '-90.68501'), ('TOMAH', 8419, '43.98960', '-90.50330'), ('TUNNEL CITY', None, '44.00181', '-90.56804'), ('VALLEY JUNCTION', None, '44.05116', '-90.41453'), ('WARRENS', 286, '44.13040', '-90.50060'), ('WILTON', 519, '43.81450', '-90.52740'), ('WYEVILLE', 146, '44.02770', '-90.38580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'PAC049': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALBION', 1607, '41.88960', '-80.36380'), ('AVONIA', 1331, '42.04410', '-80.27350'), ('CORRY', 6834, '41.92590', '-79.63730'), ('CRANESVILLE', 600, '41.90380', '-80.34470'), ('EDINBORO', 6950, '41.87470', '-80.12470'), ('ELGIN', 236, '41.91080', '-79.74340'), ('ERIE', 103717, '42.12580', '-80.08660'), ('FAIRVIEW', 220, '42.02930', '-80.25540'), ('GIRARD', 3164, '42.00400', '-80.31940'), ('LAKE CITY', 2811, '42.01730', '-80.34690'), ('LAWRENCE PARK', 4048, '42.15190', '-80.02170'), ('MCKEAN', 389, '41.99910', '-80.13830'), ('MILL VILLAGE', 412, '41.87770', '-79.97260'), ('NORTH EAST', 4601, '42.21330', '-79.83390'), ('NORTHWEST HARBORCREEK', 8658, '42.14620', '-79.99410'), ('PLATEA', 474, '41.95140', '-80.33030'), ('UNION CITY', 3463, '41.89610', '-79.84470'), ('WATERFORD', 1449, '41.94530', '-79.98540'), ('WATTSBURG', 378, '42.00280', '-79.80710'), ('WESLEYVILLE', 3617, '42.13700', '-80.01260')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'WIC087': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('APPLETON', 70087, '44.26000', '-88.40000'), ('BEAR CREEK', 415, '44.53000', '-88.71000'), ('BINGHAMTON', None, '44.43000', '-88.46000'), ('BLACK CREEK', 1192, '44.46000', '-88.44000'), ('BRIARTON', None, '44.59000', '-88.41000'), ('COMBINED LOCKS', 2422, '44.25000', '-88.31000'), ('DALE', None, '44.26000', '-88.68000'), ('FREEDOM', None, '44.38000', '-88.28000'), ('GREENVILLE', None, '44.29000', '-88.53000'), ('HORTONVILLE', 2357, '44.33000', '-88.63000'), ('KAUKAUNA', 12983, '44.26000', '-88.26000'), ('KIMBERLY', 6146, '44.28000', '-88.31000'), ('LEEMAN', None, '44.56000', '-88.55000'), ('LITTLE CHUTE', 10476, '44.28000', '-88.26000'), ('MACKVILLE', None, '44.34000', '-88.41000'), ('MEDINA', None, '44.26000', '-88.63000'), ('NICHOLS', 307, '44.56000', '-88.46000'), ('ONEIDA', 1070, '44.50000', '-88.19000'), ('SEYMOUR', 3335, '44.51000', '-88.33000'), ('SHIOCTON', 954, '44.43000', '-88.58000'), ('STEPHENSVILLE', None, '44.36000', '-88.58000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIC085': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CLEARWATER LAKE', None, '45.84000', '-89.18000'), ('ENTERPRISE', None, '45.50000', '-89.25000'), ('GAGEN', None, '45.66000', '-89.09000'), ('GOODNOW', None, '45.70000', '-89.63000'), ('HARSHAW', None, '45.66000', '-89.65000'), ('HAZELHURST', None, '45.79000', '-89.71000'), ('LAKE TOMAHAWK', None, '45.81000', '-89.59000'), ('LENNOX', None, '45.51000', '-89.06000'), ('MC NAUGHTON', None, '45.73000', '-89.55000'), ('MINOCQUA', None, '45.86000', '-89.69000'), ('MONICO', None, '45.58000', '-89.11000'), ('PELICAN LAKE', None, '45.50000', '-89.11000'), ('RHINELANDER', 7735, '45.63000', '-89.41000'), ('STARKS', None, '45.66000', '-89.19000'), ('SUGAR CAMP', None, '45.78000', '-89.30000'), ('THREE LAKES', None, '45.79000', '-89.16000'), ('WILLOW RESERVOIR', None, '45.71000', '-89.85000'), ('WOODBORO', None, '45.59000', '-89.55000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'WIC089': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BELGIUM', 1678, '43.50060', '-87.85030'), ('CEDARBURG', 10908, '43.29660', '-87.98820'), ('FREDONIA', 1934, '43.46850', '-87.95170'), ('GRAFTON', 10312, '43.31860', '-87.95460'), ('MEQUON', 21823, '43.23590', '-87.98930'), ('PORT WASHINGTON', 10467, '43.39370', '-87.87990'), ('SAUKVILLE', 4068, '43.38380', '-87.94140'), ('THIENSVILLE', 3254, '43.23680', '-87.97990')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'MSC155': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('EUPORA', 2326, '33.54390', '-89.27780'), ('MABEN', 803, '33.55400', '-89.08100'), ('MANTEE', 169, '33.73050', '-89.06000'), ('MATHISTON', 720, '33.53970', '-89.12830'), ('WALTHALL', 170, '33.60800', '-89.27600')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'MSC157': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CENTREVILLE', 1680, '31.08640', '-91.06580'), ('DOLOROSA', None, '31.30500', '-91.35940'), ('FORT ADAMS', None, '31.08640', '-91.54810'), ('WOODVILLE', 1192, '31.10330', '-91.29880')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'MSC151': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ARCOLA', 563, '33.27110', '-90.88030'), ('GREENVILLE', 41633, '33.38540', '-91.05190'), ('HOLLANDALE', 3437, '33.17440', '-90.85320'), ('LELAND', 5502, '33.40470', '-90.89990'), ('METCALFE', 1109, '33.45010', '-91.00230')], 'partOfState': 'NORTHWEST', 'wfo': 'JAN'}, -'MSC153': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BATTLES', None, '31.50160', '-88.51020'), ('BOICE', None, '31.74700', '-88.65370'), ('BUCKATUNNA', None, '31.53860', '-88.52920'), ('CHICORA', None, '31.56390', '-88.57620'), ('CLARA', None, '31.57970', '-88.69640'), ('DENHAM', None, '31.65530', '-88.53140'), ('EUCUTTA', None, '31.80550', '-88.87310'), ('GRETNA', None, '31.75970', '-88.50210'), ('HIWANNEE', None, '31.80920', '-88.69110'), ('MATHERVILLE', None, '31.86530', '-88.56540'), ('MULBERRY', None, '31.47740', '-88.84870'), ('ROBINSON JUNCTION', None, '31.57470', '-88.55980'), ('SMITHTOWN', None, '31.43720', '-88.71580'), ('STATE LINE', 555, '31.43750', '-88.47260'), ('STATE LINE', 555, '31.43570', '-88.47180'), ('STRENGTHFORD', None, '31.61370', '-88.88480'), ('WAYNESBORO', 5197, '31.67470', '-88.64690'), ('WHISTLER', None, '31.69640', '-88.80500'), ('WINCHESTER', None, '31.61890', '-88.59090'), ('WOODWARDS', None, '31.69330', '-88.66310')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'MSC159': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('LOUISVILLE', 7006, '33.12280', '-89.05460'), ('NOXAPATER', 419, '32.99280', '-89.06350')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'GAC133': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GREENSBORO', 3238, '33.57410', '-83.18370'), ('SILOAM', 331, '33.53650', '-83.08240'), ('UNION POINT', 1669, '33.61720', '-83.07590'), ('WHITE PLAINS', 283, '33.47260', '-83.03760'), ('WOODVILLE', 400, '33.67410', '-83.10670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAC131': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AKRIDGE', None, '30.98160', '-84.16090'), ('BEACHTON', None, '30.72680', '-84.13970'), ('BOYDVILLE', None, '30.87990', '-84.35530'), ('CAIRO', 9239, '30.87930', '-84.20600'), ('CALVARY', None, '30.72490', '-84.34660'), ('CAPEL', None, '30.97310', '-84.19880'), ('ELPINO', None, '30.99540', '-84.23130'), ('GRADY CO A/P', None, '30.88740', '-84.15470'), ('HARRELLS STILL', None, '31.01560', '-84.35550'), ('MONCRIEF', None, '30.71160', '-84.13800'), ('NICKLEVILLE', None, '30.80410', '-84.33550'), ('PEOPLES STILL', None, '30.98950', '-84.31230'), ('PINE PARK', None, '30.85150', '-84.10420'), ('PRINCES STILL', None, '30.79730', '-84.25460'), ('RENO', None, '30.77310', '-84.29330'), ('ROCKY HILL', None, '30.70100', '-84.21050'), ('RODDENBERRY', None, '30.87550', '-84.25980'), ('SPENCE', None, '31.03120', '-84.16420'), ('WHIGHAM', 631, '30.88360', '-84.32460')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAC137': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BALDWIN', 2425, '34.49210', '-83.55000'), ('BALDWIN', 2425, '34.49210', '-83.55000'), ('BATESVILLE', None, '34.74810', '-83.61140'), ('CLARKESVILLE', 1248, '34.60950', '-83.52280'), ('CLARKESVILLE', 1248, '34.60950', '-83.52280'), ('CORNELIA', 3674, '34.51240', '-83.52940'), ('CORNELIA', 3674, '34.51240', '-83.52940'), ('DEMOREST', 1465, '34.56550', '-83.54540'), ('DEMOREST', 1465, '34.56550', '-83.54540'), ('HOLLYWOOD', None, '34.64940', '-83.44750'), ('MOUNT AIRY', 604, '34.51940', '-83.50330'), ('MOUNT AIRY', 604, '34.51940', '-83.50330'), ('TALLULAH FALLS', 164, '34.72390', '-83.38250'), ('TURNERVILLE', None, '34.68670', '-83.42610')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'GAC135': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BERKELEY LAKE', 1695, '33.98200', '-84.18580'), ('BUFORD', 10668, '34.11700', '-83.99860'), ('DACULA', 3848, '33.98490', '-83.88780'), ('DULUTH', 22122, '34.00470', '-84.15320'), ('GRAYSON', 765, '33.89320', '-83.95550'), ('LAWRENCEVILLE', 22397, '33.94950', '-83.99220'), ('LILBURN', 11307, '33.88820', '-84.13690'), ('MOUNTAIN PARK', 11753, '33.84410', '-84.12950'), ('NORCROSS', 8410, '33.94090', '-84.20760'), ('REST HAVEN', 151, '34.13310', '-83.97790'), ('SNELLVILLE', 15351, '33.85830', '-84.00860'), ('SUGAR HILL', 11399, '34.09930', '-84.04000'), ('SUWANEE', 8725, '34.05120', '-84.07070')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'MIC053': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BESSEMER', 2148, '46.47760', '-90.04960'), ('CHANEY LAKE', None, '46.31700', '-89.91300'), ('IRONWOOD', 6293, '46.45450', '-90.15260'), ('LITTLE GIRLS POINT', None, '46.60700', '-90.33100'), ('MARENISCO', None, '46.38000', '-89.68000'), ('POMEROY LAKE', None, '46.27900', '-89.57500'), ('PRESQUE ISLE RESERVOIR', None, '46.34500', '-89.71200'), ('TAMARACK LAKE', None, '46.24000', '-88.99200'), ('THOMASTON', None, '46.51600', '-89.92700'), ('THOUSAND ISLAND LAKE', None, '46.22900', '-89.40000'), ('WAKEFIELD', 2085, '46.47680', '-89.93340'), ('WATERSMEET', None, '46.27000', '-89.18000')], 'partOfState': '', 'wfo': 'MQT'}, -'PRC023': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BETANCES', 835, '18.03150', '-67.13340'), ('CABO ROJO', 10610, '18.08830', '-67.14860'), ('POLE OJEA', 1829, '17.97890', '-67.18470')], 'partOfState': '', 'wfo': 'SJU'}, -'GAC139': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CLERMONT', 419, '34.47710', '-83.77410'), ('FLOWERY BRANCH', 1806, '34.18560', '-83.92320'), ('GAINESVILLE', 25578, '34.29410', '-83.83500'), ('GAINESVILLE MILLS', None, '34.27740', '-83.81790'), ('GILLSVILLE', 195, '34.31150', '-83.63750'), ('LULA', 1438, '34.39300', '-83.66310'), ('OAKWOOD', 2689, '34.23210', '-83.88060'), ('WESTSIDE', None, '34.27150', '-83.84570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'PRC027': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CAMUY', 4013, '18.48570', '-66.84910'), ('PIEDRA GORDA', 1927, '18.43600', '-66.88800'), ('QUEBRADA', 1130, '18.36210', '-66.83630')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC025': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BAIROA', 2365, '18.25670', '-66.06530'), ('CAGUAS', 88680, '18.23430', '-66.03940')], 'partOfState': '', 'wfo': 'SJU'}, -'WAC003': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ANATONE', None, '46.13430', '-117.12550'), ('ASOTIN', 1095, '46.33880', '-117.04390'), ('CLARKSTON', 7337, '46.41550', '-117.04900'), ('CLARKSTON HEIGHTS', None, '46.38630', '-117.07660')], 'partOfState': 'SOUTHEAST', 'wfo': 'OTX'}, -'WAC001': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BENGE', None, '46.90570', '-118.10080'), ('CUNNINGHAM', None, '46.82000', '-118.80320'), ('HATTON', 98, '46.77230', '-118.82180'), ('LIND', 582, '46.97160', '-118.61360'), ('OTHELLO', 5847, '46.82040', '-119.16710'), ('RALSTON', None, '46.98370', '-118.33830'), ('RITZVILLE', 1736, '47.12660', '-118.37600'), ('WASHTUCNA', 260, '46.75350', '-118.31160')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OTX'}, -'MIC051': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BEAVERTON', 1106, '43.88170', '-84.48760'), ('GLADWIN', 3001, '43.98390', '-84.49160'), ('HOCKADAY', None, '44.08330', '-84.41660'), ('RHODES', None, '43.90000', '-84.18340'), ('SKEELS', None, '44.08340', '-84.58310'), ('WINEGARS', None, '43.93340', '-84.36670'), ('WOODEN SHOE VILLAGE', None, '43.98330', '-84.35000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'WAC007': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ARDENVOIR', None, '47.73580', '-120.36730'), ('CASHMERE', 2965, '47.51840', '-120.46760'), ('CHELAN', 3522, '47.84630', '-120.02770'), ('DRYDEN', None, '47.53820', '-120.55580'), ('ENTIAT', 957, '47.67540', '-120.21160'), ('LEAVENWORTH', 2074, '47.59130', '-120.66420'), ('LUCERNE', None, '48.20150', '-120.58730'), ('MALAGA', None, '47.37020', '-120.20000'), ('MANSON', None, '47.88430', '-120.15430'), ('MONITOR', None, '47.48550', '-120.41680'), ('PESHASTIN', None, '47.56920', '-120.60170'), ('PLAIN', None, '47.75670', '-120.65370'), ('SUNNYSLOPE', 2521, '47.49180', '-120.34130'), ('TELMA', None, '47.83930', '-120.80870'), ('WENATCHEE', 27856, '47.42570', '-120.32490'), ('WINTON', None, '47.73470', '-120.73730')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'WAC005': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BENTON CITY', 2624, '46.26800', '-119.48710'), ('FINLEY', 5770, '46.16900', '-119.04220'), ('HIGHLAND', 3388, '46.13160', '-119.11300'), ('KENNEWICK', 54693, '46.20310', '-119.17040'), ('PROSSER', 4838, '46.20620', '-119.76630'), ('RICHLAND', 38708, '46.29400', '-119.29070'), ('WEST RICHLAND', 8385, '46.32450', '-119.39730')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PDT'}, -'WAC009': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FORKS', 3120, '47.94710', '-124.38990'), ('PORT ANGELES EAST', 3053, '48.10590', '-123.37610'), ('SEQUIM', 4334, '48.07750', '-123.10530')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'OKC153': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BELVA', None, '36.50000', '-98.98000'), ('CEDARDALE', None, '36.32000', '-99.00000'), ('CURTIS', None, '36.45000', '-99.13000'), ('FORT SUPPLY', 328, '36.57220', '-99.57350'), ('MOORELAND', 1226, '36.43850', '-99.20500'), ('MUTUAL', 76, '36.22980', '-99.16730'), ('QUINLAN', None, '36.45480', '-99.04550'), ('SHARON', 122, '36.27540', '-99.33810'), ('TANGIER', None, '36.42000', '-99.53000'), ('WOODWARD', 11853, '36.42490', '-99.40450')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'OKC151': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALVA', 5288, '36.80190', '-98.66720'), ('AVARD', 26, '36.69910', '-98.78970'), ('CAMP HOUSTON', None, '36.82000', '-99.12000'), ('CAPRON', 42, '36.89740', '-98.57670'), ('CORA', None, '36.80000', '-98.92000'), ('DACOMA', 148, '36.66000', '-98.56370'), ('FREEDOM', 271, '36.76650', '-99.11260'), ('HOPETON', None, '36.68000', '-98.67000'), ('LOOKOUT', None, '36.95000', '-99.27000'), ('PLAINVIEW', None, '36.83000', '-99.23000'), ('TEGARDEN', None, '36.80000', '-98.97000'), ('WAYNOKA', 993, '36.58500', '-98.87940')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'MIC057': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALMA', 9275, '43.37940', '-84.65480'), ('ASHLEY', 526, '43.18770', '-84.47630'), ('BANNISTER', None, '43.13250', '-84.42170'), ('BRECKENRIDGE', 1339, '43.40770', '-84.47840'), ('ELM HALL', None, '43.36500', '-84.83530'), ('FOREST HILL', None, '43.43670', '-84.68550'), ('ITHACA', 3098, '43.29230', '-84.60480'), ('PERRINTON', 439, '43.18170', '-84.67860'), ('RIVERDALE', None, '43.38550', '-84.83550'), ('ST. LOUIS', 4494, '43.40930', '-84.61570'), ('SUMNER', None, '43.30700', '-84.81580'), ('WHEELER', None, '43.41280', '-84.43780')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'KYC149': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CALHOUN', 836, '37.54120', '-87.25920'), ('ISLAND', 435, '37.44270', '-87.14760'), ('LIVERMORE', 1482, '37.49160', '-87.13410'), ('SACRAMENTO', 517, '37.41670', '-87.26710')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYC127': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BLAINE', 245, '38.02620', '-82.85410'), ('LOUISA', 2018, '38.10940', '-82.60340'), ('YATESVILLE LAKE STATE PAR', None, '38.14650', '-82.68800')], 'partOfState': '', 'wfo': 'RLX'}, -'KYC143': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('EDDYVILLE', 2350, '37.07530', '-88.07930'), ('KUTTAWA', 596, '37.06190', '-88.10960')], 'partOfState': '', 'wfo': 'PAH'}, -'KYC141': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADAIRVILLE', 920, '36.66780', '-86.85400'), ('AUBURN', 1444, '36.86670', '-86.70000'), ('CORINTH', 181, '36.78340', '-86.78330'), ('DOT', None, '36.68330', '-86.95000'), ('EPLEYS STATION', None, '36.93330', '-86.91670'), ('KEYSBURG', None, '36.66000', '-87.01670'), ('LEWISBURG', 903, '36.98660', '-86.95020'), ('OLMSTEAD', None, '36.75000', '-87.01670'), ('RUSSELLVILLE', 7149, '36.83950', '-86.89360'), ('SOUTH UNION', None, '36.89000', '-86.65000'), ('SPA', None, '36.96670', '-87.00000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYC147': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEULAH HEIGHTS', None, '36.80340', '-84.43640'), ('BLUE HERON', None, '36.66840', '-84.54600'), ('CO OPERATIVE', None, '36.69280', '-84.60780'), ('GREAT MEADOWS CAMPSITES', None, '36.62880', '-84.72490'), ('GREENWOOD', None, '36.87470', '-84.49400'), ('HOLLYHILL', None, '36.66310', '-84.33030'), ('HONEYBEE', None, '36.84220', '-84.37320'), ('MARSHES SIDING', None, '36.74330', '-84.48120'), ('PARKERS LAKE', None, '36.84060', '-84.48050'), ('PINE KNOT', 1680, '36.66390', '-84.43890'), ('SLAVANS', None, '36.75360', '-84.66560'), ('STEARNS', 1586, '36.69500', '-84.47800'), ('STRUNK', None, '36.62740', '-84.43490'), ('WHITLEY CITY', 1111, '36.72470', '-84.47540'), ('WIBORG', None, '36.80910', '-84.48950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'KYC145': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('LONE OAK', 454, '37.03610', '-88.66610'), ('PADUCAH', 26307, '37.07260', '-88.63600'), ('REIDLAND', 4353, '37.00760', '-88.52560')], 'partOfState': '', 'wfo': 'PAH'}, -'AKC220': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('SITKA', None, '57.21410', '-135.44680')], 'partOfState': '', 'wfo': 'AJK'}, -'PRC117': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('RINCON', None, '18.34100', '-67.25260'), ('STELLA', 1293, '18.32400', '-67.24720')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC115': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CACAO', 2068, '18.43850', '-66.93750'), ('QUEBRADILLAS', 5319, '18.47580', '-66.93630')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC113': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('COTO LAUREL', 3606, '18.04990', '-66.55190'), ('MARUENO', None, '18.05860', '-66.65630'), ('PONCE', 155038, '17.98710', '-66.60910')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC111': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('PENUELAS', None, '18.06150', '-66.72140'), ('SANTO DOMINGO', 3633, '18.07170', '-66.75370'), ('TALLABOA', 1150, '17.99870', '-66.71090'), ('TALLABOA ALTA', 2243, '18.05210', '-66.70290')], 'partOfState': '', 'wfo': 'SJU'}, -'WYC029': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CANYON', None, '44.73000', '-110.49000'), ('CODY', 8835, '44.51950', '-109.05410'), ('MAMMOTH', None, '44.98000', '-110.70000'), ('MEETEETSE', 351, '44.15550', '-108.87130'), ('PAHASKA', None, '44.50000', '-109.97000'), ('POWELL', 5373, '44.79180', '-108.73590'), ('TOWER JUNCTION', None, '44.92000', '-110.42000'), ('WAPITI', None, '44.47000', '-109.43000')], 'partOfState': 'NORTHWEST', 'wfo': 'RIW'}, -'PRC119': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BARTOLO', 1260, '18.36350', '-65.84140'), ('HATO CANDAL', 2453, '18.37660', '-65.78990'), ('LA DOLORES', 3534, '18.37730', '-65.85520'), ('LOIZA', None, '18.43280', '-65.88060'), ('PALMER', 1205, '18.37240', '-65.77450'), ('RIO GRANDE', None, '18.38070', '-65.83930'), ('SUAREZ', None, '18.43290', '-65.85100'), ('VIEQUES', 2136, '18.42840', '-65.83540')], 'partOfState': '', 'wfo': 'SJU'}, -'INC003': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FORT WAYNE', 205727, '41.07370', '-85.13900'), ('GRABILL', 1113, '41.21070', '-84.96790'), ('HUNTERTOWN', 1771, '41.23130', '-85.16980'), ('MONROEVILLE', 1236, '40.97220', '-84.86760'), ('NEW HAVEN', 12406, '41.06900', '-85.02510'), ('WOODBURN', 1579, '41.12600', '-84.85280')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'INC001': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BERNE', 4150, '40.65710', '-84.95430'), ('DECATUR', 9528, '40.83000', '-84.92820'), ('GENEVA', 1368, '40.59720', '-84.95710'), ('MONROE', 734, '40.74450', '-84.94050')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'UTC005': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('AMALGA', 427, '41.85750', '-111.89680'), ('AVON', 306, '41.53000', '-111.82000'), ('BEAVER MTN', None, '41.96000', '-111.55000'), ('CLARKSTON', 688, '41.92100', '-112.04840'), ('COLLEGE WARD', None, '41.68000', '-111.88000'), ('CORNISH', 259, '41.97310', '-111.95100'), ('HYDE PARK', 2955, '41.79800', '-111.81470'), ('HYRUM', 6316, '41.63290', '-111.84470'), ('LEWISTON', 1877, '41.96090', '-111.87490'), ('LOGAN', 42670, '41.73000', '-111.83000'), ('MENDON', 898, '41.71100', '-111.97970'), ('MILLVILLE', 1507, '41.68060', '-111.81890'), ('NEWTON', 699, '41.86120', '-111.98920'), ('NIBLEY', 2045, '41.67250', '-111.84190'), ('NORTH LOGAN', 6163, '41.77150', '-111.81410'), ('PARADISE', 759, '41.56760', '-111.83320'), ('POWDER MTN', None, '41.39000', '-111.75000'), ('PROVIDENCE', 4377, '41.70520', '-111.81340'), ('RICHMOND', 2051, '41.91940', '-111.80940'), ('RIVER HEIGHTS', 1496, '41.72250', '-111.82040'), ('SMITHFIELD', 7261, '41.83540', '-111.82970'), ('TRENTON', 449, '41.91390', '-111.93520'), ('WELLSVILLE', 2728, '41.63230', '-111.93180')], 'partOfState': '', 'wfo': 'SLC'}, -'INC005': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CLIFFORD', 291, '39.28300', '-85.86960'), ('COLUMBUS', 39059, '39.21070', '-85.91340'), ('ELIZABETHTOWN', 391, '39.13530', '-85.81270'), ('HOPE', 2140, '39.29990', '-85.76810'), ('JONESVILLE', 220, '39.06000', '-85.88880'), ('TAYLORSVILLE', 936, '39.29620', '-85.94920')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'UTC009': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('MANILA', 308, '40.99280', '-109.72040')], 'partOfState': 'NORTHEAST', 'wfo': 'GJT'}, -'INC009': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('HARTFORD CITY', 6928, '40.45250', '-85.37180'), ('MONTPELIER', 1929, '40.55290', '-85.28170'), ('SHAMROCK LAKES', 168, '40.41100', '-85.42620')], 'partOfState': 'EAST CENTRAL', 'wfo': 'IWX'}, -'SDC103': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BOX ELDER', 2841, '44.11960', '-103.07210'), ('CAPUTA', None, '43.99530', '-102.98420'), ('CONATA', None, '43.73330', '-102.18330'), ('CREIGHTON', None, '44.25300', '-102.20780'), ('CRESTON', None, '43.91300', '-102.70210'), ('DEERFIELD', None, '44.02370', '-103.83710'), ('DEERFIELD RESERVOIR', None, '44.01670', '-103.80000'), ('FARMINGDALE', None, '43.96760', '-102.89500'), ('HARNEY PEAK', None, '43.86770', '-103.54160'), ('HAYWARD', None, '43.86970', '-103.33210'), ('HILL CITY', 780, '43.93210', '-103.57140'), ('HISEGA', None, '44.05370', '-103.40230'), ('KEYSTONE', 311, '43.88850', '-103.42530'), ('MOON', None, '43.94780', '-104.00640'), ('MT. RUSHMORE', None, '43.88120', '-103.45320'), ('MYSTIC', None, '44.06670', '-103.65000'), ('NEW UNDERWOOD', 616, '44.10000', '-102.83330'), ('OWANKA', None, '44.01970', '-102.58470'), ('PACTOLA RESERVOIR', None, '44.06670', '-103.50000'), ('PINNICALES RANGER STATION', None, '43.86670', '-102.23330'), ('QUINN', 44, '43.98730', '-102.13020'), ('RAPID CITY', 59607, '44.07520', '-103.23280'), ('RAPID VALLEY', 7043, '44.07250', '-103.12960'), ('ROCHFORD', None, '44.12660', '-103.74960'), ('ROCKERVILLE', None, '43.95900', '-103.35930'), ('SCENIC', None, '43.78330', '-102.55000'), ('SHERIDAN LAKE', None, '43.97030', '-103.46570'), ('SILVER CITY', None, '44.08770', '-103.56550'), ('WALL', 818, '43.99160', '-102.23910'), ('WASTA', 75, '44.06930', '-102.44590'), ('WICKSVILLE', None, '44.10000', '-102.56670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'IAC189': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BUFFALO CENTER', 963, '43.38980', '-93.94310'), ('FOREST CITY', 4362, '43.25720', '-93.63800'), ('LAKE MILLS', 2140, '43.41620', '-93.53210'), ('LELAND', 258, '43.33370', '-93.63720'), ('RAKE', 227, '43.48130', '-93.92100'), ('SCARVILLE', 97, '43.47060', '-93.61630'), ('THOMPSON', 596, '43.36960', '-93.77430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'SDC101': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('COLMAN', 572, '43.98470', '-96.81590'), ('EGAN', 265, '43.99970', '-96.65050'), ('FLANDREAU', 2376, '44.04690', '-96.59770'), ('TRENT', 254, '43.90690', '-96.65730'), ('WARD', 41, '44.15540', '-96.46080')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'INC089': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CEDAR LAKE', 9279, '41.37330', '-87.43620'), ('CROWN POINT', 19806, '41.42420', '-87.35770'), ('DYER', 13895, '41.50340', '-87.50520'), ('EAST CHICAGO', 32414, '41.64870', '-87.45190'), ('GARY', 102746, '41.59580', '-87.34410'), ('GRIFFITH', 17334, '41.52240', '-87.42370'), ('HAMMOND', 83048, '41.62100', '-87.49040'), ('HIGHLAND', 4107, '41.54910', '-87.45770'), ('HOBART', 25363, '41.53160', '-87.26730'), ('LAKE DALECARLIA', 1285, '41.33910', '-87.40330'), ('LAKE STATION', 13948, '41.57280', '-87.26140'), ('LOWELL', 7505, '41.29470', '-87.41320'), ('MERRILLVILLE', 30560, '41.47160', '-87.32580'), ('MUNSTER', 21511, '41.54670', '-87.50390'), ('NEW CHICAGO', 2063, '41.55870', '-87.27220'), ('SCHERERVILLE', 24851, '41.48920', '-87.44820'), ('SCHNEIDER', 317, '41.19190', '-87.44770'), ('ST. JOHN', 8382, '41.44700', '-87.47580'), ('WHITING', 5137, '41.67820', '-87.48670')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'SDC107': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('GETTYSBURG', 1352, '45.00650', '-99.95350'), ('GETTYSBURG', 1352, '45.00650', '-99.95350'), ('GORMAN', None, '44.92700', '-100.07500'), ('GORMAN', None, '44.92700', '-100.07500'), ('HOVEN', 511, '45.24180', '-99.77640'), ('HOVEN', 511, '45.24180', '-99.77640'), ('LEBANON', 86, '45.06890', '-99.76590'), ('LEBANON', 86, '45.06890', '-99.76590'), ('TOLSTOY', 64, '45.20680', '-99.61470'), ('TOLSTOY', 64, '45.20680', '-99.61470'), ('WHITLOCKS BAY REC AREA', None, '45.04330', '-100.26410'), ('WHITLOCKS BAY REC AREA', None, '45.04330', '-100.26410')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDC105': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BISON', 373, '45.52430', '-102.46510'), ('BIXBY', None, '45.14860', '-102.56130'), ('CHANCE', None, '45.40960', '-102.27930'), ('COAL SPRINGS', None, '45.44430', '-102.09910'), ('DATE', None, '45.36670', '-102.65000'), ('DAVISTON', None, '45.46670', '-102.66670'), ('IMOGENE', None, '45.13330', '-102.71670'), ('LEMMON', 1398, '45.93840', '-102.15820'), ('LODGEPOLE', None, '45.80880', '-102.66200'), ('MEADOW', None, '45.53330', '-102.21670'), ('MEADOW CORNER', None, '45.53330', '-102.16670'), ('PRAIRIE CITY', None, '45.53330', '-102.80000'), ('SHADEHILL', None, '45.76670', '-102.18330'), ('SHADEHILL RESERVOIR', None, '45.75000', '-102.25000'), ('SOMMERVILLE', None, '45.78330', '-102.18330'), ('SORUM', None, '45.45260', '-102.93720'), ('STROOL', None, '45.50000', '-102.80000'), ('USTA', None, '45.21830', '-102.16160'), ('WHITE BUTTE', None, '45.93900', '-102.35940'), ('ZEONA', None, '45.19170', '-102.92060')], 'partOfState': 'NORTHWEST', 'wfo': 'UNR'}, -'MOC219': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DUTZOW', None, '38.60570', '-90.99460'), ('HOLSTEIN', None, '38.65540', '-91.17120'), ('MARTHASVILLE', 837, '38.62840', '-91.05330'), ('TRELOAR', None, '38.64450', '-91.18790'), ('TRUESDALE', 397, '38.81100', '-91.12510'), ('WARRENTON', 5281, '38.82130', '-91.14010'), ('WRIGHT CITY', 1532, '38.82760', '-91.02430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'IAC181': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ACKWORTH', 85, '41.36510', '-93.47300'), ('BEVINGTON', 58, '41.35960', '-93.79020'), ('CARLISLE', 3497, '41.50000', '-93.48520'), ('CUMMING', 162, '41.48470', '-93.76180'), ('HARTFORD', 759, '41.45780', '-93.40390'), ('INDIANOLA', 12998, '41.36070', '-93.56550'), ('LACONA', 360, '41.18990', '-93.38420'), ('MARTENSDALE', 467, '41.37410', '-93.73820'), ('MILO', 839, '41.28930', '-93.43850'), ('NEW VIRGINIA', 469, '41.18090', '-93.73050'), ('NORWALK', 6884, '41.49810', '-93.68090'), ('SANDYVILLE', 61, '41.37020', '-93.38550'), ('SPRING HILL', 92, '41.41200', '-93.64900'), ('ST. MARYS', 134, '41.30860', '-93.73320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'SDC109': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CLAIRE CITY', 85, '45.85640', '-97.10240'), ('CLAIRE CITY', 85, '45.85640', '-97.10240'), ('CORONA', 112, '45.33480', '-96.76520'), ('CORONA', 112, '45.33480', '-96.76520'), ('NEW EFFINGTON', 233, '45.85520', '-96.91810'), ('NEW EFFINGTON', 233, '45.85520', '-96.91810'), ('ORTLEY', 54, '45.33520', '-97.20400'), ('ORTLEY', 54, '45.33520', '-97.20400'), ('PEEVER', 209, '45.54250', '-96.95570'), ('PEEVER', 209, '45.54250', '-96.95570'), ('ROSHOLT', 419, '45.86610', '-96.73170'), ('ROSHOLT', 419, '45.86610', '-96.73170'), ('RUDEBUSCH CORNER', None, '45.42820', '-97.15450'), ('RUDEBUSCH CORNER', None, '45.42820', '-97.15450'), ('SISSETON', 2572, '45.66240', '-97.04610'), ('SISSETON', 2572, '45.66240', '-97.04610'), ('SUMMIT', 281, '45.30380', '-97.03680'), ('SUMMIT', 281, '45.30380', '-97.03680'), ('VICTOR', None, '45.86870', '-96.83570'), ('VICTOR', None, '45.86870', '-96.83570'), ('WHITE ROCK', 18, '45.92530', '-96.57250'), ('WHITE ROCK', 18, '45.92530', '-96.57250'), ('WILMOT', 543, '45.40930', '-96.85690'), ('WILMOT', 543, '45.40930', '-96.85690')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'IAC183': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AINSWORTH', 524, '41.29020', '-91.55410'), ('BRIGHTON', 687, '41.17430', '-91.82060'), ('COPPOCK', 57, '41.16700', '-91.72000'), ('CRAWFORDSVILLE', 295, '41.21440', '-91.53590'), ('HASKINS', None, '41.33330', '-91.53330'), ('KALONA', 2293, '41.48760', '-91.70050'), ('KALONA AIRPORT', None, '41.50500', '-91.73330'), ('LAKE DARLING STATE PARK', None, '41.18330', '-91.90000'), ('NOBLE', None, '41.16670', '-91.61670'), ('RICHMOND', None, '41.45000', '-91.70000'), ('RIVERSIDE', 928, '41.48230', '-91.57310'), ('RUBIO', None, '41.21670', '-91.93330'), ('WASHINGTON', 7047, '41.29880', '-91.69090'), ('WASHINGTON AIRPORT', None, '41.28330', '-91.66670'), ('WELLMAN', 1393, '41.46790', '-91.83700'), ('WEST CHESTER', 159, '41.34000', '-91.81620')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'IAC185': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALLERTON', 559, '40.70820', '-93.36700'), ('CLIO', 91, '40.63470', '-93.45180'), ('CORYDON', 1591, '40.75910', '-93.31750'), ('HUMESTON', 543, '40.86030', '-93.49680'), ('LINEVILLE', 273, '40.58600', '-93.52360'), ('MILLERTON', 48, '40.84930', '-93.30690'), ('PROMISE CITY', 105, '40.74690', '-93.15090'), ('SEYMOUR', 810, '40.68280', '-93.12180')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAC187': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BADGER', 610, '42.61230', '-94.14260'), ('BARNUM', 195, '42.50670', '-94.36430'), ('CALLENDER', 424, '42.36220', '-94.29560'), ('CLARE', 190, '42.58770', '-94.34460'), ('DAYTON', 884, '42.26170', '-94.07150'), ('DUNCOMBE', 474, '42.46990', '-93.99600'), ('FORT DODGE', 25136, '42.50790', '-94.17680'), ('GOWRIE', 1038, '42.27680', '-94.28850'), ('HARCOURT', 340, '42.26100', '-94.17500'), ('LEHIGH', 497, '42.35590', '-94.05310'), ('MOORLAND', 197, '42.44100', '-94.29410'), ('OTHO', 571, '42.42090', '-94.14760'), ('VINCENT', 158, '42.59130', '-94.01790')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'VAC081': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARLEY', None, '36.56410', '-77.72410'), ('BRINK', None, '36.61780', '-77.63470'), ('BRYANTS CORNER', None, '36.58850', '-77.41570'), ('BUFFORD CROSSROADS', None, '36.73770', '-77.61950'), ('CLARESVILLE', None, '36.62250', '-77.45110'), ('COWIE CORNER', None, '36.77420', '-77.57190'), ('DAHLIA', None, '36.56970', '-77.53660'), ('DURAND', None, '36.72000', '-77.58830'), ('EMPORIA AIRPORT', None, '36.68720', '-77.48360'), ('EMPORIA RESERVOIR', None, '36.69800', '-77.56760'), ('FIELDS CROSSROADS', None, '36.83170', '-77.54940'), ('LANES CORNER', None, '36.66280', '-77.52920'), ('PLEASANT SHADE', None, '36.75110', '-77.64720'), ('PURDY', None, '36.82270', '-77.58820'), ('RADIUM', None, '36.73170', '-77.62860'), ('SLAGLES LAKE', None, '36.75650', '-77.52860'), ('SLATES CORNER', None, '36.56310', '-77.65890')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'ALC043': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BAILEYTON', 684, '34.26210', '-86.61350'), ('COLONY', 385, '33.94140', '-86.90120'), ('CULLMAN', 13995, '34.17610', '-86.83890'), ('FAIRVIEW', 522, '34.24680', '-86.68740'), ('GARDEN CITY', 564, '34.01480', '-86.75010'), ('GOOD HOPE', 1966, '34.11010', '-86.86460'), ('HANCEVILLE', 2951, '34.06490', '-86.76350'), ('HOLLY POND', 645, '34.17460', '-86.61700'), ('SOUTH VINEMONT', 425, '34.23610', '-86.86260'), ('WEST POINT', 295, '34.23810', '-86.94820')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'VAC085': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ASHCAKE', None, '37.69170', '-77.40280'), ('ASHLAND', 6619, '37.76160', '-77.47640'), ('ATLEE', None, '37.65750', '-77.40740'), ('BEAVERDAM', None, '37.94170', '-77.65440'), ('COATESVILLE', None, '37.87830', '-77.60930'), ('DOSWELL', None, '37.86030', '-77.46460'), ('ELMONT', None, '37.71110', '-77.49280'), ('GILMAN', None, '37.77830', '-77.58080'), ('GOODALL', None, '37.78250', '-77.63720'), ('GUM TREE', None, '37.81920', '-77.47440'), ('HANOVER', None, '37.76320', '-77.37100'), ('HANOVER AIRPORT', None, '37.70870', '-77.43590'), ('HEWLETT', None, '37.92220', '-77.57670'), ('KINGS DOMINION', None, '37.83300', '-77.43100'), ('MABELTON', None, '37.84080', '-77.74250'), ('MECHANICSVILLE', 30464, '37.62730', '-77.35600'), ('MONTPELIER', None, '37.81440', '-77.67770'), ('NOEL', None, '37.90440', '-77.54440'), ('OLIVER', None, '37.85810', '-77.53310'), ('ROCKVILLE', None, '37.72580', '-77.67890'), ('STUDLEY', None, '37.67560', '-77.29080'), ('VONTAY', None, '37.75750', '-77.75060'), ('WESTWOOD', None, '37.60170', '-77.17780')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'VAC087': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHAMBERLAYNE', 4380, '37.62640', '-77.42880'), ('DUMBARTON', 6674, '37.60870', '-77.50050'), ('EAST HIGHLAND PARK', 12488, '37.57480', '-77.38450'), ('ELKO', None, '37.47280', '-77.21170'), ('FAIR OAKS', None, '37.53060', '-77.31640'), ('GLEN ALLEN', 12562, '37.66400', '-77.48450'), ('GLENDALE', None, '37.44560', '-77.23330'), ('GREENDALE', None, '37.61390', '-77.49690'), ('HIGHLAND SPRINGS', 15137, '37.55080', '-77.32720'), ('LAKESIDE', 11157, '37.61750', '-77.46790'), ('LAUREL', 14875, '37.63390', '-77.50700'), ('LONGDALE', None, '37.65810', '-77.47000'), ('MONTROSE', 7018, '37.52050', '-77.37850'), ('RICHMOND HEIGHTS', None, '37.46360', '-77.39830'), ('RICHMOND INTERNATIONAL AI', None, '37.50630', '-77.31700'), ('ROSLYN HILLS', None, '37.57610', '-77.56610'), ('SANDSTON', None, '37.51585', '-77.27853'), ('SHORT PUMP', 182, '37.65050', '-77.60950'), ('SOLOMONS STORE', None, '37.63940', '-77.45970'), ('TUCKAHOE', 43242, '37.58700', '-77.58700'), ('VARINA', None, '37.44310', '-77.34890')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'VAC089': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AXTON', None, '36.66670', '-79.71670'), ('BASSETT', 1338, '36.76670', '-79.98330'), ('CHATMOSS', 1742, '36.67950', '-79.80590'), ('COLLINSVILLE', 7777, '36.72480', '-79.91200'), ('FIELDALE', 929, '36.70000', '-79.95000'), ('FIELDALE', 929, '36.70310', '-79.94320'), ('FIGSBORO', None, '36.78330', '-79.85000'), ('HORSE PASTURE', 2255, '36.63330', '-79.95000'), ('HORSE PASTURE', 2255, '36.62960', '-79.94870'), ('LEATHERWOOD', None, '36.73330', '-79.75000'), ('MARTINSVILLE AIRPORT', None, '36.63330', '-79.86670'), ('MOUNTAIN VALLEY', None, '36.78330', '-79.70000'), ('RIDGEWAY', 775, '36.58330', '-79.86670'), ('SANVILLE', None, '36.71670', '-80.06670'), ('SPENCER', None, '36.61670', '-80.01670'), ('STANLEYTOWN', 1515, '36.75170', '-79.95130'), ('VILLA HEIGHTS', 845, '36.69730', '-79.90400')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'LAC003': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ELIZABETH', 574, '30.86830', '-92.79280'), ('GRANT', None, '30.78830', '-92.94830'), ('KINDER', 2148, '30.48650', '-92.84870'), ('LEBLANC', None, '30.50890', '-92.94890'), ('MITTIE', None, '30.70670', '-92.90670'), ('OAKDALE', 8137, '30.81840', '-92.65650'), ('OBERLIN', 1853, '30.61830', '-92.76430'), ('REEVES', 209, '30.51990', '-93.04390')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'LAC001': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BRANCH', None, '30.34860', '-92.26750'), ('CHURCH POINT', 4756, '30.40390', '-92.21450'), ('CROWLEY', 14225, '30.21260', '-92.37590'), ('EGAN', None, '30.23670', '-92.50580'), ('ESTHERWOOD', 807, '30.18110', '-92.46320'), ('EVANGELINE', None, '30.26220', '-92.57060'), ('IOTA', 1376, '30.32650', '-92.49480'), ('MERMENTAU', 721, '30.18500', '-92.58500'), ('MIDLAND', None, '30.18110', '-92.50310'), ('MIRE', None, '30.30000', '-92.19390'), ('MORSE', 759, '30.12090', '-92.49800'), ('RAYNE', 8552, '30.23820', '-92.26710'), ('RICHARD', None, '30.42200', '-92.31300')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'LAC007': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('LABADIEVILLE', 1811, '29.82360', '-90.95640'), ('NAPOLEONVILLE', 686, '29.93760', '-91.02670'), ('PAINCOURTVILLE', 884, '29.99140', '-91.05390'), ('PIERRE PART', 3239, '29.95760', '-91.20890')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'INC083': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BICKNELL', 3378, '38.77530', '-87.30840'), ('BRUCEVILLE', 469, '38.75810', '-87.41440'), ('DECKER', 283, '38.51830', '-87.52380'), ('EDWARDSPORT', 363, '38.81240', '-87.25160'), ('MONROE CITY', 548, '38.61420', '-87.35350'), ('OAKTOWN', 633, '38.87170', '-87.44130'), ('SANDBORN', 451, '38.89680', '-87.18460'), ('VINCENNES', 18701, '38.67620', '-87.51110'), ('WHEATLAND', 504, '38.66410', '-87.30670')], 'partOfState': 'SOUTHWEST', 'wfo': 'IND'}, -'LAC009': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BORDELONVILLE', None, '31.10530', '-91.90720'), ('BUNKIE', 4662, '30.95360', '-92.18670'), ('CENTERPOINT', None, '31.24800', '-92.21000'), ('COTTONPORT', 2316, '30.98830', '-92.05290'), ('DUPONT', None, '30.92940', '-91.94810'), ('EFFIE', None, '31.21580', '-92.15560'), ('EVERGREEN', 314, '30.95400', '-92.10600'), ('HAMBURG', None, '31.03060', '-91.93140'), ('HESSMER', 642, '31.05360', '-92.12110'), ('MANSURA', 1573, '31.05800', '-92.05080'), ('MARKSVILLE', 5537, '31.12680', '-92.06310'), ('MOREAUVILLE', 922, '31.03330', '-91.98040'), ('PLAUCHEVILLE', 281, '30.96460', '-91.98290'), ('SIMMESPORT', 2239, '30.98190', '-91.81440')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'VAC169': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CLINCHPORT', 77, '36.67930', '-82.74500'), ('DUFFIELD', 62, '36.71990', '-82.79780'), ('DUNGANNON', 317, '36.82840', '-82.46760'), ('FORT BLACKMORE', None, '36.77000', '-82.58780'), ('GATE CITY', 2159, '36.63860', '-82.58120'), ('HILTONS', None, '36.65280', '-82.46780'), ('NICKELSVILLE', 448, '36.75130', '-82.41630'), ('WEBER CITY', 1333, '36.62240', '-82.56030')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'ILC127': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BROOKPORT', 1054, '37.12500', '-88.62720'), ('JOPPA', 409, '37.20580', '-88.84430'), ('METROPOLIS', 6482, '37.15220', '-88.71200')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'IAC057': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEAVERDALE', None, '40.85000', '-91.21670'), ('BURLINGTON', 26839, '40.80870', '-91.12290'), ('BURLINGTON REGIONAL AIRPO', None, '40.78330', '-91.13330'), ('DANVILLE', 914, '40.86120', '-91.31400'), ('DODGEVILLE', None, '40.95000', '-91.18330'), ('GARLAND', None, '41.06670', '-91.21670'), ('KINGSTON', None, '40.98330', '-91.03330'), ('KOSSUTH', None, '41.01670', '-91.13330'), ('MEDIAPOLIS', 1644, '41.00820', '-91.16450'), ('MIDDLETOWN', 535, '40.82920', '-91.26080'), ('NORTHFIELD', None, '41.06670', '-91.11670'), ('PLEASANT GROVE', None, '40.96670', '-91.28330'), ('PRARIE GROVE', None, '40.88330', '-91.25000'), ('SPERRY', None, '40.95000', '-91.15000'), ('SPRING GROVE', None, '40.74330', '-91.16000'), ('WEST BURLINGTON', 3161, '40.82350', '-91.17860'), ('YARMOUTH', None, '41.03330', '-91.31670')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'ILC125': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BATH', 310, '40.19110', '-90.14240'), ('CHATAUQUA PARK', None, '40.33330', '-90.05000'), ('EASTON', 373, '40.23200', '-89.84210'), ('FOREST CITY', 287, '40.37100', '-89.83190'), ('HAVANA', 3577, '40.29840', '-90.05680'), ('KILBOURNE', 375, '40.15160', '-90.00950'), ('MANITO', 1733, '40.42180', '-89.78070'), ('MASON CITY', 2558, '40.20180', '-89.69620'), ('POPLAR CITY', None, '40.25000', '-89.95000'), ('SNICARTE', None, '40.13500', '-90.24000'), ('TOPEKA', 90, '40.32990', '-89.93090'), ('UNION', 576, '40.40000', '-89.80000')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'IAC055': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BACKBONE STATE PARK', None, '42.61670', '-91.55000'), ('BAILEYS FORD PARK', None, '42.43330', '-91.40000'), ('BUCK CREEK', None, '42.33330', '-91.35000'), ('COFFINS GROVE PARK', None, '42.50000', '-91.53330'), ('COLESBURG', 412, '42.63850', '-91.20090'), ('DELAWARE', 188, '42.47190', '-91.34010'), ('DELHI', 458, '42.43000', '-91.33150'), ('DUNDEE', 179, '42.57970', '-91.54690'), ('EARLVILLE', 900, '42.48300', '-91.26970'), ('EDGEWOOD', 923, '42.64490', '-91.40170'), ('FOUNTAIN SPRINGS PARK', None, '42.61670', '-91.31670'), ('GREELEY', 276, '42.58510', '-91.34190'), ('HOPKINTON', 681, '42.34360', '-91.24870'), ('MANCHESTER', 5257, '42.48520', '-91.45580'), ('MANCHESTER AIRPORT', None, '42.50000', '-91.50000'), ('MASONVILLE', 104, '42.47980', '-91.59180'), ('ONEIDA', None, '42.54110', '-91.35290'), ('PETERSBURG', None, '42.55000', '-91.21670'), ('ROBINSON', None, '42.35000', '-91.58330'), ('RYAN', 410, '42.35260', '-91.48280'), ('TURTLE CREEK PARK', None, '42.41670', '-91.36670'), ('TWIN BRIDGES PARK', None, '42.63330', '-91.28330')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'ILC123': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAMP GROVE', None, '41.08330', '-89.63330'), ('HENRY', 2540, '41.11230', '-89.36180'), ('HOPEWELL', 396, '40.98330', '-89.45630'), ('LA ROSE', 159, '40.97740', '-89.23450'), ('LACON', 1979, '41.02170', '-89.40680'), ('LAWN RIDGE', None, '40.98330', '-89.61670'), ('SPARLAND', 504, '41.03030', '-89.44090'), ('TOLUCA', 1339, '41.00530', '-89.13320'), ('VARNA', 436, '41.03560', '-89.22450'), ('WENONA', 1065, '41.06670', '-89.07000')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'IAC053': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DAVIS CITY', 275, '40.64020', '-93.81190'), ('DECATUR CITY', 199, '40.74230', '-93.83250'), ('GARDEN GROVE', 250, '40.82650', '-93.60750'), ('GRAND RIVER', 225, '40.81890', '-93.96250'), ('LAMONI', 2444, '40.62060', '-93.93730'), ('LE ROY', 13, '40.87890', '-93.59220'), ('LEON', 1983, '40.74130', '-93.75330'), ('PLEASANTON', 37, '40.58240', '-93.74290'), ('VAN WERT', 231, '40.87080', '-93.79190'), ('WELDON', 145, '40.89790', '-93.73510')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'SDC079': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CHESTER', None, '43.89450', '-96.92510'), ('MADISON', 6540, '44.00840', '-97.10740'), ('NUNDA', 47, '44.16100', '-97.01790'), ('ORLAND', None, '43.89270', '-97.18950'), ('RAMONA', 190, '44.12010', '-97.21500'), ('WENTWORTH', 188, '43.99680', '-96.96430'), ('WINFRED', None, '43.99760', '-97.36260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'IAC051': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLOOMFIELD', 2601, '40.74810', '-92.41820'), ('DRAKESVILLE', 185, '40.79800', '-92.48090'), ('FLORIS', 153, '40.86410', '-92.33210'), ('PULASKI', 249, '40.69750', '-92.27410')], 'partOfState': 'SOUTHEAST', 'wfo': 'DMX'}, -'SDC077': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARLINGTON', 992, '44.36250', '-97.13390'), ('BADGER', 144, '44.48570', '-97.20940'), ('BANCROFT', 37, '44.48870', '-97.75040'), ('DE SMET', 1164, '44.38660', '-97.54780'), ('ERWIN', 58, '44.48820', '-97.44100'), ('HETLAND', 43, '44.37650', '-97.23450'), ('IROQUOIS', 278, '44.36650', '-97.84970'), ('LAKE PRESTON', 737, '44.36180', '-97.37620'), ('OLDHAM', 206, '44.22820', '-97.30860')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDC075': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CAPA', None, '44.10970', '-100.97760'), ('CAPA', None, '44.10970', '-100.97760'), ('DRAPER', 92, '43.92590', '-100.53770'), ('DRAPER', 92, '43.92590', '-100.53770'), ('MURDO', 612, '43.88920', '-100.71360'), ('MURDO', 612, '43.88920', '-100.71360'), ('OKATON', 29, '43.88600', '-100.89190'), ('OKATON', 29, '43.88600', '-100.89190'), ('VAN METRE', None, '44.15910', '-100.79350'), ('VAN METRE', None, '44.15910', '-100.79350'), ('WESTOVER', None, '43.74820', '-100.66570'), ('WESTOVER', None, '43.74820', '-100.66570')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDC073': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALPENA', 265, '44.18340', '-98.36790'), ('LANE', 59, '44.06920', '-98.42410'), ('WESSINGTON SPRINGS', 1011, '44.08080', '-98.57130')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'ILC129': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATHENS', 1726, '39.96090', '-89.72480'), ('ATTERBERRY', None, '40.06670', '-89.91670'), ('FANCY PRAIRIE', None, '39.98330', '-89.60000'), ('GREENVIEW', 862, '40.08480', '-89.74020'), ('OAKFORD', 309, '40.10100', '-89.96540'), ('PETERSBURG', 2299, '40.01240', '-89.85140'), ('SWEETWATER', None, '40.06000', '-89.70000'), ('TALLULA', 638, '39.94580', '-89.93630')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'IAC059': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARNOLDS PARK', 1162, '43.36280', '-95.13180'), ('LAKE PARK', 1023, '43.44840', '-95.32480'), ('MILFORD', 2474, '43.32700', '-95.15180'), ('OKOBOJI', 820, '43.39210', '-95.13620'), ('ORLEANS', 583, '43.44520', '-95.09870'), ('SPIRIT LAKE', 4261, '43.42280', '-95.11140'), ('SUPERIOR', 142, '43.43270', '-94.94710'), ('TERRIL', 404, '43.30850', '-94.96880'), ('WAHPETON', 462, '43.37450', '-95.17450'), ('WEST OKOBOJI', 432, '43.34940', '-95.16530')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'ORC057': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BAY CITY', 1149, '45.52120', '-123.88500'), ('BEAVER', 145, '45.28300', '-123.83300'), ('BLAINE', None, '45.28330', '-123.71660'), ('CAPE FALCON', None, '45.76000', '-123.98000'), ('CAPE LOOKOUT', None, '45.34000', '-123.99000'), ('CAPE MEARES', 110, '45.48500', '-123.97500'), ('CASCADE HEAD', None, '45.05690', '-124.00360'), ('CLOVERDALE', 242, '45.21660', '-123.90000'), ('FOSS', None, '45.70000', '-123.75000'), ('GARIBALDI', 899, '45.56050', '-123.91020'), ('HEBO', 231, '45.23330', '-123.85000'), ('LEES CAMP', None, '45.60000', '-123.51700'), ('MANZANITA', 564, '45.71730', '-123.93360'), ('MOHLER', None, '45.70000', '-123.86660'), ('NEHALEM', 203, '45.72110', '-123.89150'), ('NESKOWIN', 169, '45.10000', '-123.98330'), ('NETARTS', 744, '45.43300', '-123.93700'), ('OCEANSIDE', 326, '45.46660', '-123.96660'), ('PACIFIC CITY', 1027, '45.20000', '-123.96000'), ('PLEASANT VALLEY', None, '45.36660', '-123.81000'), ('ROCKAWAY BEACH', 1267, '45.61500', '-123.93830'), ('SALMONBERRY', None, '45.75000', '-123.65000'), ('TILLAMOOK', 4352, '45.45670', '-123.83760'), ('TRASK', None, '45.42000', '-123.64000'), ('WHEELER', 391, '45.68700', '-123.88410'), ('WILSON RIVER SUMMIT', None, '45.62000', '-123.38000')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORC055': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('GRASS VALLEY', 171, '45.35990', '-120.78320'), ('MORO', 337, '45.48570', '-120.73170'), ('RUFUS', 268, '45.69370', '-120.73970'), ('WASCO', 381, '45.59160', '-120.69570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'PDT'}, -'ORC053': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BUELL', None, '45.01660', '-123.43330'), ('BUENA VISTA', None, '44.76660', '-123.15000'), ('DALLAS', 12459, '44.92130', '-123.31230'), ('FALLS CITY', 966, '44.86560', '-123.43670'), ('GRANDE RONDE', None, '45.06300', '-123.61700'), ('INDEPENDENCE', 6035, '44.85530', '-123.19250'), ('LAUREL MOUNTAIN', None, '44.91000', '-123.54000'), ('MONMOUTH', 7741, '44.85040', '-123.22880'), ('PERRYDALE', None, '45.03330', '-123.26660'), ('RICKREALL', 57, '44.93330', '-123.23330'), ('SUVER', None, '44.75000', '-123.20000'), ('VALSETZ', None, '44.83300', '-123.63300'), ('WEST SALEM', None, '44.96000', '-123.05000')], 'partOfState': '', 'wfo': 'PQR'}, -'ORC051': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BONNEVILLE', None, '45.63300', '-121.95000'), ('BRIDAL VEIL', None, '45.55000', '-122.18330'), ('CORBETT', None, '45.53300', '-122.30000'), ('DELTA PARK', None, '45.61000', '-122.68000'), ('FAIRVIEW', 7561, '45.54000', '-122.44000'), ('GRESHAM', 90205, '45.50380', '-122.43820'), ('JANTZEN BEACH', None, '45.62000', '-122.68000'), ('LLOYDS CENTER', None, '45.53000', '-122.66000'), ('MT TABOR', None, '45.51000', '-122.59000'), ('ODELL LAKE', None, '45.56500', '-122.00000'), ('PARKROSE', None, '45.55500', '-122.54250'), ('PORTLAND AIRPORT', None, '45.59000', '-122.60000'), ('PORTLAND DOWNTOWN', None, '45.52000', '-122.68000'), ('POWELLHURST', None, '45.49610', '-122.51510'), ('ROCKWOOD', None, '45.52000', '-122.49000'), ('ROCKY BUTTE', None, '45.54000', '-122.57000'), ('ROOSTER ROCK STATE PARK', None, '45.55000', '-122.23000'), ('SAUVIE ISLAND', None, '45.67000', '-122.80000'), ('SELLWOOD', None, '45.46000', '-122.66000'), ('ST. JOHNS', None, '45.59000', '-122.75000'), ('SWAN ISLAND', None, '45.56000', '-122.71000'), ('SYLVAN', None, '45.51000', '-122.73000'), ('THE OREGON ZOO', None, '45.51000', '-122.71000'), ('TROUTDALE', 13777, '45.53690', '-122.39080'), ('UNIVERSITY OF PORTLAND', None, '45.57000', '-122.73000'), ('WILSHIRE PARK', None, '45.55000', '-122.63000'), ('WOOD VILLAGE', 2860, '45.53350', '-122.42030')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORC059': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADAMS', 297, '45.76730', '-118.56270'), ('ATHENA', 1221, '45.81280', '-118.49140'), ('ECHO', 650, '45.74400', '-119.19200'), ('HELIX', 183, '45.85030', '-118.65740'), ('HERMISTON', 13154, '45.83280', '-119.28350'), ('MILTON-FREEWATER', 6470, '45.93490', '-118.39040'), ('MISSION', 1019, '45.66710', '-118.67180'), ('PENDLETON', 16354, '45.67380', '-118.81730'), ('PILOT ROCK', 1532, '45.48150', '-118.83220'), ('STANFIELD', 1979, '45.78630', '-119.21950'), ('UKIAH', 255, '45.13390', '-118.93170'), ('UMATILLA', 4978, '45.91330', '-119.32780'), ('WESTON', 717, '45.81580', '-118.42470')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'FLC123': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ADAMS BEACH', None, '29.88230', '-83.63200'), ('ATHENA', None, '29.98620', '-83.49450'), ('BLUE SPRINGS', None, '30.14120', '-83.77170'), ('BLUE SPRINGS', None, '29.83480', '-83.57130'), ('BOYD', None, '30.18680', '-83.60720'), ('BUCELL JUNCTION', None, '30.06790', '-83.55580'), ('BUCKHORN', None, '30.13230', '-83.92490'), ('CABBAGE GROVE', None, '30.20580', '-83.87590'), ('CARBUR', None, '29.91590', '-83.42840'), ('CEDAR ISLAND', None, '29.81450', '-83.58270'), ('DEKLE BEACH', None, '29.85130', '-83.61660'), ('ECONFINA', None, '30.13480', '-83.85660'), ('ERIDU', None, '30.29920', '-83.74510'), ('FENHOLLOWAY', None, '30.07540', '-83.49560'), ('FISH CREEK', None, '29.78570', '-83.57230'), ('FOLEY', None, '30.06750', '-83.53110'), ('HAMPTON SPRINGS', None, '30.08330', '-83.65500'), ('HOWELL PLACE', None, '29.76910', '-83.51130'), ('IDDO', None, '30.27560', '-83.72490'), ('LAKE BIRD', None, '30.24830', '-83.61380'), ('MANDALAY', None, '30.12840', '-83.95760'), ('PERRY', 6847, '30.10870', '-83.58170'), ('PERRY-FOLEY A/P', None, '30.07040', '-83.57590'), ('PINLAND', None, '30.01600', '-83.52830'), ('SALEM', None, '29.88470', '-83.41350'), ('SCANLON', None, '30.12840', '-83.89620'), ('SECOTAN', None, '30.17410', '-83.63490'), ('SHADY GROVE', None, '30.28580', '-83.63180'), ('SMITH', None, '30.11770', '-83.41400'), ('STEINHATCHEE', None, '29.67610', '-83.39620'), ('TENNILLE', None, '29.77630', '-83.32630'), ('TENNILLE A/P', None, '29.78120', '-83.33270')], 'partOfState': '', 'wfo': 'TAE'}, -'NEC085': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('HAMLET', 54, '40.38440', '-101.23490'), ('HAYES CENTER', 240, '40.51120', '-101.02000'), ('PALISADE', 386, '40.34840', '-101.10670')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'NEC087': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CULBERTSON', 594, '40.22850', '-100.83560'), ('STRATTON NE', None, '40.15170', '-101.22770'), ('TRENTON', 507, '40.17430', '-101.01330')], 'partOfState': 'SOUTHWEST', 'wfo': 'GLD'}, -'NEC081': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AURORA', 4225, '40.86570', '-98.00310'), ('GILTNER', 389, '40.77430', '-98.15390'), ('HAMPTON', 439, '40.88100', '-97.88790'), ('HORDVILLE', 150, '41.07980', '-97.89030'), ('MARQUETTE', 282, '41.00600', '-98.00950'), ('PHILLIPS', 336, '40.89800', '-98.21490'), ('STOCKHAM', 60, '40.71680', '-97.94340')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC083': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALMA', 1214, '40.10170', '-99.36220'), ('HARLAN COUNTY DAM', None, '40.07000', '-99.21000'), ('HUNTLEY', 67, '40.21080', '-99.29100'), ('ORLEANS', 425, '40.13160', '-99.45410'), ('RAGAN', 46, '40.31060', '-99.29010'), ('REPUBLICAN CITY', 209, '40.10030', '-99.22240'), ('STAMFORD', 202, '40.13070', '-99.59470')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC089': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AMELIA', None, '42.23000', '-98.96000'), ('ATKINSON', 1244, '42.53170', '-98.97640'), ('CHAMBERS', 333, '42.20510', '-98.74780'), ('EMMET', 77, '42.47640', '-98.80990'), ('EWING', 433, '42.25850', '-98.34260'), ('INMAN', 148, '42.38130', '-98.52890'), ("O'NEILL", 3733, '42.46070', '-98.64670'), ('PAGE', 157, '42.39900', '-98.41740'), ('STUART', 625, '42.60000', '-99.14020')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'MOC037': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARCHIE', 890, '38.48290', '-94.34900'), ('BALDWIN PARK', 115, '38.79530', '-94.24540'), ('BELTON', 21730, '38.81950', '-94.53120'), ('CLEVELAND', 592, '38.67780', '-94.59700'), ('DREXEL', 1090, '38.48280', '-94.60740'), ('EAST LYNNE', 300, '38.66820', '-94.22940'), ('FREEMAN', 521, '38.61860', '-94.50580'), ('GARDEN CITY', 1500, '38.56080', '-94.18840'), ('GUNN CITY', 85, '38.66620', '-94.16390'), ('HARRISONVILLE', 8946, '38.65540', '-94.34920'), ('LAKE ANNETTE', 163, '38.65530', '-94.50780'), ('LAKE WINNEBAGO', 902, '38.82140', '-94.35720'), ('PECULIAR', 2604, '38.72310', '-94.45790'), ('PLEASANT HILL', 5582, '38.79660', '-94.26570'), ('RAYMORE', 11146, '38.81120', '-94.45730'), ('STRASBURG', 136, '38.75920', '-94.16470'), ('WEST LINE', 95, '38.63260', '-94.58510')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOC035': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ELLSINORE', 363, '36.93360', '-90.74600'), ('FREEMONT', None, '36.85380', '-91.12320'), ('GRANDIN', 236, '36.82990', '-90.82180'), ('VAN BUREN', 845, '37.00730', '-91.01220')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOC033': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BOGARD', 234, '39.45790', '-93.52410'), ('BOSWORTH', 382, '39.46980', '-93.33560'), ('CARROLLTON', 4122, '39.36310', '-93.49630'), ('DE WITT', 120, '39.38490', '-93.22010'), ('HALE', 473, '39.60520', '-93.34320'), ('NORBORNE', 805, '39.30230', '-93.67580'), ('TINA', 193, '39.53720', '-93.44130'), ('WAKENDA', None, '39.31550', '-93.37790')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'VAC021': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BASTIAN', None, '37.15000', '-81.15000'), ('BLAND', None, '37.10000', '-81.11670'), ('CERES', None, '37.01670', '-81.35000'), ('CLEAR FORK', None, '37.21670', '-81.20000'), ('HICKSVILLE', None, '37.18330', '-81.13330'), ('KIMBERLING', None, '37.16670', '-81.03330'), ('LONG SPUR', None, '37.10000', '-80.95000'), ('MECHANICSBURG', None, '37.15000', '-80.95000'), ('ROCKY GAP', None, '37.23330', '-81.10000'), ('SUITER', None, '37.11670', '-81.21670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'MOC031': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALLENVILLE', 104, '37.22160', '-89.75490'), ('CAPE GIRARDEAU', 35349, '37.30830', '-89.55030'), ('DELTA', 517, '37.19820', '-89.73700'), ('GORDONVILLE', 425, '37.31040', '-89.67300'), ('JACKSON', 11947, '37.38030', '-89.65450'), ('OAK RIDGE', 202, '37.49980', '-89.72960'), ('OLD APPLETON', 82, '37.59320', '-89.70940'), ('POCAHONTAS', 127, '37.50110', '-89.63970'), ('WHITEWATER', 113, '37.23660', '-89.79770')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MIC133': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ASHTON', None, '43.97300', '-85.50370'), ('AVONDALE', None, '44.01580', '-85.22670'), ('DIGHTON', None, '44.08780', '-85.34500'), ('EVART', 1738, '43.90240', '-85.27380'), ('GIBOS CORNERS', None, '43.85720', '-85.14720'), ('HERSEY', 374, '43.84970', '-85.44210'), ('HIGHLAND', None, '44.14550', '-85.26630'), ('INA', None, '44.11700', '-85.28670'), ('LE ROY', 267, '44.03850', '-85.45270'), ('MARION', 836, '44.10280', '-85.14700'), ('PARK LAKE', None, '44.14580', '-85.20620'), ('PISGAH HEIGHTS', None, '44.09450', '-85.22600'), ('REED CITY', 2430, '43.87250', '-85.50920'), ('SEARS', None, '43.89830', '-85.18470'), ('STAMBAUGH CORNER', None, '43.94450', '-85.42530'), ('TUSTIN', 237, '44.10200', '-85.45810')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'MOC039': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARNICA', None, '37.75160', '-93.70830'), ('BEARCREEK', None, '37.65720', '-93.65800'), ('CANE HILL', None, '37.57880', '-93.73130'), ('CAPLINGER MILLS', None, '37.79410', '-93.80410'), ('CEDAR SPRINGS', None, '37.87350', '-93.89330'), ('EL DORADO SPRINGS', 3775, '37.87680', '-94.02100'), ('FILLEY', None, '37.75880', '-93.94880'), ('JERICO SPRINGS', 259, '37.62210', '-94.00830'), ('MASTERS', None, '37.60550', '-93.66130'), ('OLYMPIA', None, '37.72600', '-94.02820'), ('STOCKTON', 1960, '37.69880', '-93.79580'), ('UMBER VIEW HEIGHTS', 52, '37.62420', '-93.80380'), ('WAGONER', None, '37.67040', '-93.92520')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'ILC013': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BATCHTOWN', 218, '39.03290', '-90.65400'), ('BEECHVILLE', None, '38.97150', '-90.64760'), ('BELLEVIEW', None, '39.35090', '-90.78120'), ('BRUSSELS', 141, '38.95100', '-90.58880'), ('DEER PLAIN', None, '38.92980', '-90.53280'), ('GOLDEN EAGLE', None, '38.89230', '-90.57940'), ('HAMBURG', 126, '39.23280', '-90.71560'), ('HARDIN', 959, '39.15740', '-90.62310'), ('KAMPSVILLE', 302, '39.30970', '-90.62520'), ('MEPPEN', None, '38.99570', '-90.60680'), ('MICHAEL', None, '39.23520', '-90.62210'), ('MOZIER', None, '39.29250', '-90.75150')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'ILC011': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARLINGTON', 211, '41.47120', '-89.24820'), ('BUDA', 592, '41.32770', '-89.67840'), ('BUREAU', None, '41.28780', '-89.36430'), ('CHERRY', 509, '41.42960', '-89.21360'), ('COAL HOLLOW', None, '41.36670', '-89.36670'), ('DALZELL', 717, '41.35810', '-89.17560'), ('DEPUE', None, '41.32970', '-89.29580'), ('DOVER', 172, '41.43420', '-89.39570'), ('HOLLOWAYVILLE', 90, '41.36490', '-89.29450'), ('JOHNSON SAUK TRAIL S. P.', None, '41.31670', '-89.38330'), ('KASBEER', None, '41.50000', '-89.46670'), ('LA MOILLE', 773, '41.53010', '-89.28090'), ('LADD', 1313, '41.38270', '-89.21430'), ('LONE TREE CORNERS', None, '41.18330', '-89.48330'), ('MALDEN', 343, '41.42490', '-89.37020'), ('MANLIUS', 355, '41.45570', '-89.66800'), ('MILO', None, '41.20000', '-89.58330'), ('MINERAL', 272, '41.38190', '-89.83650'), ('NEPONSET', 519, '41.29710', '-89.79020'), ('NEW BEDFORD', 95, '41.51170', '-89.71730'), ('NORMANDY', None, '41.56670', '-89.65000'), ('OHIO', 540, '41.55690', '-89.45950'), ('OTTVILLE', None, '41.35000', '-89.26660'), ('PRINCETON', 7501, '41.37840', '-89.46680'), ('PROVIDENCE', None, '41.28330', '-89.60000'), ('SEATONVILLE', 303, '41.36380', '-89.27290'), ('SHEFFIELD', 946, '41.35700', '-89.73960'), ('SPRING VALLEY', 5398, '41.32610', '-89.19900'), ('SPRING VALLEY AIRPORT', None, '41.33330', '-89.21660'), ('THOMAS', None, '41.51660', '-89.81670'), ('TISKILWA', 787, '41.29270', '-89.50780'), ('VAN ORIN', None, '41.55000', '-89.35000'), ('WALNUT', 1461, '41.55680', '-89.59110'), ('WYANET', 1028, '41.36010', '-89.58380'), ('YORKTOWN', None, '41.56670', '-89.85000'), ('ZEARING', None, '41.45000', '-89.31670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DVN'}, -'ILC017': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARENZVILLE', 419, '39.88500', '-90.37200'), ('ASHLAND', 1361, '39.88870', '-90.00870'), ('BEARDSTOWN', 5766, '40.01240', '-90.43000'), ('BLUFF SPRINGS', None, '39.98000', '-90.37100'), ('CHANDLERVILLE', 704, '40.04820', '-90.15070'), ('NEWMANSVILLE', None, '40.00000', '-90.01670'), ('PHILADELPHIA', None, '39.91670', '-90.11670'), ('VIRGINIA', 1728, '39.95080', '-90.21130')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'ILC015': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARGO FAY', None, '42.00000', '-90.01670'), ('CENTER HILL', None, '42.08330', '-90.05000'), ('CHADWICK', 505, '42.01410', '-89.88890'), ('FAIRHAVEN', None, '41.95000', '-89.93330'), ('HITT', None, '42.00000', '-89.73330'), ('IDEAL', None, '41.98330', '-89.98330'), ('LANARK', 1584, '42.10280', '-89.83210'), ('MILLEDGEVILLE', 1016, '41.96380', '-89.77560'), ('MISSISSIPPI PALISADES S.', None, '42.13330', '-90.16670'), ('MOUNT CARROLL', 1832, '42.09540', '-89.97690'), ('RIVERVIEW', None, '42.05000', '-90.11670'), ('SAVANNA', 3542, '42.09000', '-90.13990'), ('SAVANNA STRANSKY AIRPORT', None, '42.05000', '-90.10000'), ('SHANNON', 854, '42.15200', '-89.74010'), ('THOMSON', 559, '41.95750', '-90.10320'), ('WACKER', None, '42.05000', '-90.05000')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ARC089': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BULL SHOALS', 2000, '36.37600', '-92.58840'), ('FLIPPIN', 1357, '36.27700', '-92.59210'), ('PYATT', 253, '36.25130', '-92.84440'), ('SUMMIT', 586, '36.25010', '-92.68740'), ('YELLVILLE', 1312, '36.22870', '-92.68590')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ILC097': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ANTIOCH', 8788, '42.47470', '-88.07950'), ('BANNOCKBURN', 1429, '42.19280', '-87.86840'), ('BEACH PARK', 10072, '42.42500', '-87.85620'), ('BUFFALO GROVE', 42909, '42.16630', '-87.96330'), ('CHANNEL LAKE', 1785, '42.48430', '-88.15030'), ('DEER PARK', 3102, '42.16810', '-88.08820'), ('DEERFIELD', 18420, '42.16560', '-87.84990'), ('FOREST LAKE', 1530, '42.20560', '-88.05220'), ('FOX LAKE', 9178, '42.41810', '-88.18330'), ('FOX LAKE HILLS', 2561, '42.40710', '-88.12350'), ('FOX RIVER VALLEY GARDENS', 788, '42.24440', '-88.19490'), ('GAGES LAKE', 10415, '42.35160', '-87.98240'), ('GRANDWOOD PARK', 4521, '42.39320', '-87.98670'), ('GRAYSLAKE', 18506, '42.34980', '-88.03850'), ('GREEN OAKS', 3572, '42.30170', '-87.91520'), ('GURNEE', 28834, '42.37710', '-87.93600'), ('HAINESVILLE', 2129, '42.33970', '-88.06470'), ('HAWTHORN WOODS', 6002, '42.22360', '-88.05730'), ('HIGHLAND PARK', 31365, '42.18270', '-87.80970'), ('HIGHWOOD', 4143, '42.21160', '-87.81170'), ('INDIAN CREEK', 194, '42.22590', '-87.97680'), ('KILDEER', 3460, '42.17930', '-88.04910'), ('LAKE BARRINGTON', 4757, '42.21080', '-88.16520'), ('LAKE BLUFF', 6056, '42.28260', '-87.85030'), ('LAKE FOREST', 20059, '42.23630', '-87.85760'), ('LAKE VILLA', 5864, '42.41750', '-88.08230'), ('LAKE ZURICH', 18104, '42.19230', '-88.08800'), ('LIBERTYVILLE', 20742, '42.28410', '-87.96600'), ('LINCOLNSHIRE', 6108, '42.19560', '-87.91610'), ('LINDENHURST', 12539, '42.41740', '-88.02980'), ('LONG GROVE', 6735, '42.19540', '-88.00280'), ('LONG LAKE', 3356, '42.37670', '-88.12620'), ('METTAWA', 367, '42.24370', '-87.91540'), ('MUNDELEIN', 30935, '42.26700', '-88.00310'), ('NORTH BARRINGTON', 2918, '42.20710', '-88.13140'), ('NORTH CHICAGO', 35918, '42.31860', '-87.85920'), ('OLD MILL CREEK', 251, '42.43310', '-87.98210'), ('PARK CITY', 6637, '42.35070', '-87.89100'), ('RIVERWOODS', 3843, '42.17110', '-87.89590'), ('ROUND LAKE', 5842, '42.34990', '-88.11030'), ('ROUND LAKE BEACH', 25859, '42.37760', '-88.08170'), ('ROUND LAKE HEIGHTS', 1347, '42.38400', '-88.10410'), ('ROUND LAKE PARK', 6038, '42.32320', '-88.05860'), ('THIRD LAKE', 1355, '42.36770', '-88.00840'), ('TOWER LAKES', 1310, '42.23020', '-88.15580'), ('VENETIAN VILLAGE', 3082, '42.39980', '-88.04620'), ('VERNON HILLS', 20120, '42.23600', '-87.96270'), ('WADSWORTH', 3083, '42.43690', '-87.92340'), ('WAUCONDA', 9448, '42.26660', '-88.13950'), ('WAUKEGAN', 87901, '42.37090', '-87.86800'), ('WINTHROP HARBOR', 6670, '42.47980', '-87.82820'), ('ZION', 22866, '42.45670', '-87.84310')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ARC087': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('HARMONY', None, '36.10810', '-93.71220'), ('GEORGETOWN', 126, '35.99560', '-93.83110'), ('HARMONY', None, '36.10810', '-93.71220'), ('ARBAUGH', None, '35.78330', '-93.51670'), ('RED STAR', None, '35.86670', '-93.53060'), ('WEATHERS', None, '35.95940', '-93.52030'), ('HUNTSVILLE', 1931, '36.08610', '-93.74110'), ('ST PAUL', None, '35.82000', '-93.77000'), ('PETTIGREW', None, '35.81780', '-93.64830'), ('AURORA', None, '35.99720', '-93.70250'), ('WESLEY', None, '36.02720', '-93.92000'), ('KINGSTON', None, '36.05060', '-93.51830'), ('HINDSVILLE', 75, '36.14420', '-93.86190'), ('FORUM', None, '36.18170', '-93.71470'), ('BEST', None, '36.23000', '-93.88000'), ('COMBS', None, '35.82560', '-93.83640'), ('BRASHEARS', None, '35.81170', '-93.79560'), ('DUTTON', None, '35.81670', '-93.69360'), ('PATRICK', None, '35.84310', '-93.88360'), ('BOSTON', None, '35.84060', '-93.60110'), ('DELANEY', None, '35.85220', '-93.90000'), ('CROSSES', None, '35.87420', '-93.91110'), ('WITTER', None, '35.93750', '-93.68330'), ('JAPTON', None, '35.96190', '-93.80420'), ('GEORGETOWN', 126, '35.99560', '-93.83110'), ('HARMONY', None, '36.10810', '-93.71220'), ('MARBLE', None, '36.13970', '-93.58720'), ('ALABAM', None, '36.15250', '-93.68110'), ('CLIFTY', None, '36.23720', '-93.79610'), ('ROCKHOUSE', None, '36.28190', '-93.67280')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'ILC019': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BROADLANDS', 312, '39.90850', '-87.99540'), ('CHAMPAIGN', 67518, '40.11300', '-88.26490'), ('FISHER', 1647, '40.31580', '-88.34850'), ('FOOSLAND', 90, '40.36040', '-88.42870'), ('GIFFORD', 815, '40.30640', '-88.02160'), ('HOMER', 1200, '40.03190', '-87.95890'), ('IVESDALE', 288, '39.94510', '-88.45700'), ('LAKE OF THE WOODS', 3026, '40.20650', '-88.36860'), ('LONGVIEW', 153, '39.88550', '-88.06650'), ('LUDLOW', 324, '40.38620', '-88.12610'), ('MAHOMET', 4877, '40.19380', '-88.40180'), ('OGDEN', 743, '40.11550', '-87.95580'), ('PESOTUM', 521, '39.91290', '-88.27410'), ('PHILO', 1314, '40.00310', '-88.15800'), ('RANTOUL', 12857, '40.30340', '-88.15550'), ('ROYAL', 279, '40.19200', '-87.97130'), ('SADORUS', 426, '39.96700', '-88.34540'), ('SAVOY', 4476, '40.06500', '-88.25270'), ('SEYMOUR', None, '40.10000', '-88.41670'), ('SIDNEY', 1062, '40.02440', '-88.07180'), ('ST. JOSEPH', 2912, '40.11270', '-88.04060'), ('THOMASBORO', 1233, '40.24400', '-88.18690'), ('TOLONO', 2700, '39.98630', '-88.26300'), ('URBANA', 36395, '40.10850', '-88.20520')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ARC085': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALLPORT', 127, '34.53950', '-91.78480'), ('AUSTIN', 605, '34.99800', '-91.98180'), ('CABOT', 15261, '34.96820', '-92.02200'), ('CARLISLE', 2304, '34.78610', '-91.74650'), ('COY', 116, '34.54180', '-91.86960'), ('ENGLAND', 2972, '34.54490', '-91.96790'), ('HUMNOKE', 280, '34.54210', '-91.75880'), ('KEO', 235, '34.61310', '-92.01110'), ('LONOKE', 4287, '34.78600', '-91.89960'), ('WARD', 2580, '35.01890', '-91.95500')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARC083': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLUE MOUNTAIN', 132, '35.13170', '-93.71530'), ('BOONEVILLE', 4117, '35.13940', '-93.91850'), ('CAULKSVILLE', 233, '35.30170', '-93.86850'), ('MAGAZINE', 915, '35.15270', '-93.80630'), ('MORRISON BLUFF', 74, '35.38220', '-93.52740'), ('PARIS', 3707, '35.28890', '-93.72460'), ('RATCLIFF', 191, '35.30800', '-93.88820'), ('SCRANTON', 222, '35.36030', '-93.53850'), ('SUBIACO', 439, '35.29750', '-93.63920')], 'partOfState': '', 'wfo': 'LZK'}, -'ARC081': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ASHDOWN', 4781, '33.67440', '-94.12600'), ('FOREMAN', 1125, '33.71730', '-94.39750'), ('OGDEN', 214, '33.58480', '-94.04450'), ('WILTON', 439, '33.73880', '-94.14750'), ('WINTHROP', 186, '33.83120', '-94.35340')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'COC053': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('LAKE CITY', 375, '38.02910', '-107.31030')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'MNC079': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CLEVELAND', 673, '44.32380', '-93.83510'), ('HEIDELBERG', 72, '44.49340', '-93.62360'), ('KASOTA', 680, '44.29020', '-93.96820'), ('KILKENNY', 148, '44.31320', '-93.57430'), ('LE CENTER', 2240, '44.38760', '-93.73290'), ('LE SUEUR', 3922, '44.46320', '-93.90610'), ('MONTGOMERY', 2794, '44.43920', '-93.58050'), ('WATERVILLE', 1833, '44.22270', '-93.57430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'COC051': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALMONT', None, '38.67000', '-106.83000'), ('CRESTED BUTTE', 1529, '38.87010', '-106.98310'), ('GUNNISON', 5409, '38.54470', '-106.92700'), ('IOLA', None, '38.43000', '-107.08000'), ('MARBLE', 105, '39.07140', '-107.18840'), ('MOUNT CRESTED BUTTE', 707, '38.90780', '-106.96620'), ('OHIO', None, '38.57000', '-106.60000'), ('PARLIN', None, '38.50000', '-106.72000'), ('PITKIN', 124, '38.60810', '-106.51610'), ('POWDERHORN', None, '38.28000', '-107.12000'), ('RAGGED MTN', None, '39.10000', '-107.40000'), ('SAPINERO', None, '38.43000', '-107.38000'), ('SOMERSET', None, '38.92000', '-107.43000'), ('TINCUP', None, '38.75000', '-106.47000'), ('WAUNITA HOT SPGS', None, '38.52000', '-106.50000'), ('WHITE PINE', None, '38.50000', '-106.40000')], 'partOfState': 'CENTRAL', 'wfo': 'GJT'}, -'COC057': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BROWNLEE', None, '40.80000', '-106.25000'), ('COALMONT', None, '40.57000', '-106.43000'), ('COWDREY', None, '40.85000', '-106.30000'), ('GOULD', None, '40.52000', '-106.02000'), ('PEARL', None, '40.98000', '-106.53000'), ('RABBIT EARS PASS', None, '40.38300', '-106.61300'), ('RAND', None, '40.45000', '-106.17000'), ('SPICER', None, '40.45000', '-106.43000'), ('WALDEN', 734, '40.73060', '-106.28090')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BOU'}, -'COC055': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BLANCA PEAK', None, '37.58000', '-105.49000'), ('CUCHARA', None, '37.38000', '-105.10000'), ('FARISITA', None, '37.75000', '-105.07000'), ('GARDNER', None, '37.78000', '-105.17000'), ('LA VETA', 924, '37.51000', '-105.00730'), ('LA VETA PASS', None, '37.59000', '-105.18000'), ('RED WING', None, '37.73000', '-105.30000'), ('SPANISH PEAKS', None, '37.38000', '-104.95000'), ('WALSENBURG', 4182, '37.62670', '-104.77710')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'MNC073': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELLINGHAM', 205, '45.13560', '-96.28280'), ('BOYD', 210, '44.85100', '-95.90080'), ('DAWSON', 1539, '44.92890', '-96.04900'), ('LOUISBURG', 26, '45.16620', '-96.17010'), ('MADISON', 1768, '45.01380', '-96.18910'), ('MARIETTA', 174, '45.01030', '-96.41800'), ('NASSAU', 83, '45.06800', '-96.44110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNC071': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BIG FALLS', 264, '48.18510', '-93.80820'), ('BIRCHDALE', None, '48.62700', '-94.10210'), ('CRAIGVILLE', None, '47.90310', '-93.61310'), ('ERICKSBURG', None, '48.48780', '-93.33140'), ('GEMMELL', None, '47.97340', '-94.12390'), ('GRAND FALLS', None, '48.19860', '-93.79290'), ('INTERNATIONAL FALLS', 6703, '48.58760', '-93.40620'), ('ISLAND VIEW', None, '48.60600', '-93.19070'), ('LITTLEFORK', 680, '48.39650', '-93.55680'), ('LOMAN', None, '48.51280', '-93.80310'), ('MANITOU', None, '48.62840', '-93.99320'), ('MARGIE', None, '48.09540', '-93.94010'), ('MIZPAH', 78, '47.92250', '-94.21540'), ('NORTHOME', 230, '47.87460', '-94.26580'), ('PELLAND', None, '48.52280', '-93.57540'), ('RANIER', 188, '48.61320', '-93.34660'), ('RAY', None, '48.41090', '-93.21030')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'COC059': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('APPLEWOOD', 7123, '39.74720', '-105.16230'), ('ARVADA', 102153, '39.82110', '-105.10670'), ('ASPEN PARK', 874, '39.52000', '-105.27000'), ('BERGEN PARK', None, '39.69200', '-105.35800'), ('BOW MAR', 847, '39.62580', '-105.05210'), ('BUFFALO CREEK', None, '39.38000', '-105.27000'), ('CHATFIELD RESERVOIR', None, '39.55800', '-105.06400'), ('CHEESMAN RESERVOIR', None, '39.20800', '-105.27100'), ('COLUMBINE', 24095, '39.58790', '-105.06880'), ('CONIFER', None, '39.52000', '-105.30000'), ('DECKERS', None, '39.25000', '-105.23000'), ('EDGEWATER', 5445, '39.75030', '-105.06260'), ('EVERGREEN', 9216, '39.63370', '-105.34230'), ('FOXTON', None, '39.42000', '-105.23000'), ('GENESEE', 3699, '39.68570', '-105.27220'), ('GOLDEN', 17159, '39.73890', '-105.21550'), ('IDLEDALE', None, '39.67000', '-105.23000'), ('INDIAN HILLS', 1197, '39.62000', '-105.23000'), ('KEN CARYL', 30887, '39.57590', '-105.11170'), ('KITTREDGE', 954, '39.65000', '-105.30000'), ('LAKESIDE', 20, '39.77880', '-105.05750'), ('LAKEWOOD', 144126, '39.69520', '-105.11360'), ('LEYDEN', None, '39.82000', '-105.12000'), ('MORRISON', 430, '39.65450', '-105.18240'), ('MOUNTAIN VIEW', 569, '39.77570', '-105.05570'), ('PINE', None, '39.42000', '-105.33000'), ('PLEASANT VIEW', None, '39.72000', '-105.17000'), ('RED ROCKS PARK', None, '39.66400', '-105.20100'), ('ROCKY FLATS', None, '39.89200', '-105.20400'), ('SHAFFERS CROSSING', None, '39.45000', '-105.33000'), ('SOUTH PLATTE', None, '39.40000', '-105.17000'), ('TINY TOWN', None, '39.60000', '-105.22000'), ('WAH KEENEY PARK', None, '39.65000', '-105.33000'), ('WELLINGTON LAKE', None, '39.31400', '-105.35800'), ('WHEAT RIDGE', 32913, '39.77340', '-105.09860'), ('WHITE RANCH OPEN SPACE', None, '39.81700', '-105.28100')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'MNC077': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ANGLE INLET', None, '49.34530', '-95.06250'), ('ARNESEN', None, '48.95750', '-95.06720'), ('BAUDETTE', 1104, '48.71120', '-94.58700'), ('CARP', None, '48.50530', '-94.64690'), ('CLEMENTSON', None, '48.69080', '-94.43610'), ('FAUNCE', None, '48.59310', '-94.95220'), ('FLAG ISLAND', None, '49.32470', '-94.88500'), ('GRACETON', None, '48.74110', '-94.83610'), ('LONG POINT', None, '48.97720', '-94.95970'), ('OAK ISLAND', None, '49.31000', '-94.84970'), ('OAKS CORNER', None, '48.42440', '-94.94970'), ('PENASSE', None, '49.35670', '-94.95860'), ('PITT', None, '48.71750', '-94.73580'), ('WILLIAMS', 210, '48.76850', '-94.95270')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGF'}, -'MNC075': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALGER', None, '47.14720', '-91.69270'), ('BASSWOOD LAKE', None, '48.07480', '-91.58220'), ('BEAVER BAY', 175, '47.25690', '-91.29860'), ('BUTTERFLY LAKE', None, '47.75840', '-91.47950'), ('CASTLE DANGER', None, '47.12090', '-91.50340'), ('CLEAR LAKE', 266, '47.64010', '-91.11940'), ('FINLAND', None, '47.41480', '-91.24910'), ('FOREST CENTER', None, '47.79500', '-91.30780'), ('ISABELLA', None, '47.61730', '-91.35500'), ('KNIFE RIVER', None, '46.95010', '-91.78340'), ('LARSMONT', None, '46.97930', '-91.74580'), ('LITTLE MARAIS', None, '47.41090', '-91.11030'), ('MURPHY CITY', None, '47.50980', '-91.32470'), ('SAWBILL LANDING', None, '47.71530', '-91.26810'), ('SILVER BAY', 2068, '47.29190', '-91.27860'), ('SILVER RAPIDS', None, '47.90400', '-91.75560'), ('SNOW BANK LAKE', None, '47.99160', '-91.42130'), ('TWO HARBORS', 3613, '47.03030', '-91.67570'), ('WALES', None, '47.23500', '-91.74700'), ('WHYTE', None, '47.45170', '-91.56230')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MTC063': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BONNER', None, '46.87333', '-113.86361'), ('CLEARWATER', None, '47.00028', '-113.37694'), ('CLINTON', 549, '46.76917', '-113.71167'), ('CONDON', None, '47.52778', '-113.70972'), ('EAST MISSOULA', 2070, '46.87083', '-113.94361'), ('EVARO', 329, '47.03222', '-114.09056'), ('FRENCHTOWN', 883, '47.01500', '-114.22889'), ('GREENOUGH', None, '46.91667', '-113.43583'), ('HUSON', None, '47.03139', '-114.32639'), ('LOLO', 3388, '46.75889', '-114.08000'), ('LOLO HOT SPRINGS', None, '46.72778', '-114.52972'), ('MISSOULA', 57053, '46.87222', '-113.99306'), ('NINEMILE', None, '47.02000', '-114.40833'), ('POTOMAC', None, '46.88167', '-113.57861'), ('SEELEY LAKE', 1436, '47.17944', '-113.48361'), ('STARK', None, '47.12556', '-114.50417'), ('TURAH', None, '46.83611', '-113.82917'), ('TWIN CREEKS', None, '46.91278', '-113.71306')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'MTC061': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ALBERTON', 374, '47.00167', '-114.47250'), ('CYR', None, '47.01028', '-114.58389'), ('DE BORGIA', 69, '47.37583', '-115.34500'), ('EAST PORTAL', None, '47.39722', '-115.63417'), ('HAUGAN', None, '47.38333', '-115.39861'), ('KEYSTONE', None, '47.26833', '-114.93472'), ('LOZEAU', None, '47.11667', '-114.77917'), ('QUARTZ', None, '47.05194', '-114.76833'), ('SALTESE', None, '47.41028', '-115.50861'), ('ST. REGIS', 315, '47.29944', '-115.10167'), ('SUPERIOR', 893, '47.19167', '-114.89083'), ('TAFT', None, '47.41917', '-115.59722'), ('TARKIO', None, '47.02139', '-114.73806')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'MTC067': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CLYDE PARK', 310, '45.88370', '-110.60540'), ('LIVINGSTON', 6851, '45.66300', '-110.56370')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTC065': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('MELSTONE', 136, '46.59910', '-107.86780'), ('ROUNDUP', 1931, '46.44850', '-108.53880')], 'partOfState': 'CENTRAL', 'wfo': 'BYZ'}, -'MTC069': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CAT CREEK', None, '47.06520', '-108.00550'), ('CROOKED CREEK CAMPGROUND', None, '47.42300', '-107.94020'), ('FLATWILLOW', None, '46.83190', '-108.39940'), ('PETROLIA LAKE', None, '46.94160', '-108.25130'), ('TIEGEN', None, '47.03660', '-108.59610'), ('WINNETT', 185, '47.00270', '-108.35130')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'SCC075': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BOWMAN', 1198, '33.34890', '-80.68380'), ('BRANCHVILLE', 1083, '33.25110', '-80.81580'), ('BROOKDALE', 4724, '33.51540', '-80.83500'), ('COPE', 107, '33.37820', '-81.00680'), ('CORDOVA', 157, '33.43560', '-80.92000'), ('EDISTO', 2632, '33.47650', '-80.89890'), ('ELLOREE', 742, '33.52980', '-80.57240'), ('EUTAWVILLE', 344, '33.39790', '-80.34360'), ('HOLLY HILL', 1281, '33.32500', '-80.41370'), ('LIVINGSTON', 148, '33.55340', '-81.12010'), ('NEESES', 413, '33.53620', '-81.12610'), ('NORTH', 813, '33.61710', '-81.10310'), ('NORWAY', 389, '33.44960', '-81.12680'), ('ORANGEBURG', 12765, '33.49390', '-80.86540'), ('ROWESVILLE', 378, '33.37220', '-80.83630'), ('SANTEE', 740, '33.48010', '-80.48710'), ('SPRINGFIELD', 504, '33.49570', '-81.27950'), ('VANCE', 208, '33.43580', '-80.42150'), ('WILKINSON HEIGHTS', 3068, '33.49160', '-80.82990'), ('WOODFORD', 196, '33.66780', '-81.11170')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCC077': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CENTRAL', 3522, '34.72330', '-82.78300'), ('CLEMSON', 11939, '34.68400', '-82.81290'), ('DACUSVILLE', None, '34.93530', '-82.55890'), ('EASLEY', 17754, '34.82200', '-82.58800'), ('LIBERTY', 3009, '34.79250', '-82.69540'), ('NINE TIMES', None, '34.91500', '-82.84420'), ('NORRIS', 847, '34.76480', '-82.75230'), ('PICKENS', 3012, '34.88280', '-82.70810'), ('PUMPKINTOWN', None, '35.00280', '-82.65310'), ('ROCKY BOTTOM', None, '35.04580', '-82.80250'), ('SIX MILE', 553, '34.80780', '-82.81910')], 'partOfState': '', 'wfo': 'GSP'}, -'VAC720': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('NORTON', 3904, '36.93130', '-82.62610')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'OHC109': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CASSTOWN', 322, '40.05260', '-84.12880'), ('COVINGTON', 2559, '40.11910', '-84.35090'), ('FLETCHER', 510, '40.14440', '-84.11180'), ('LAURA', 487, '39.99360', '-84.40910'), ('LUDLOW FALLS', 210, '39.99840', '-84.33910'), ('PIQUA', 20738, '40.14660', '-84.25100'), ('PLEASANT HILL', 1134, '40.05130', '-84.34490'), ('POTSDAM', 203, '39.96550', '-84.41210'), ('TIPP CITY', 9221, '39.96380', '-84.18380'), ('TROY', 21999, '40.04440', '-84.21920'), ('WEST MILTON', 4645, '39.95280', '-84.32510')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC103': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BRIARWOOD BEACH', None, '41.07490', '-81.90490'), ('BRUNSWICK', 33388, '41.24570', '-81.82120'), ('CHIPPEWA-ON-THE-LAKE', None, '41.07010', '-81.90370'), ('GLORIA GLENS PARK', 538, '41.05830', '-81.90090'), ('LODI', 3061, '41.03370', '-82.01310'), ('MEDINA', 25139, '41.13620', '-81.86740'), ('SEVILLE', 2160, '41.02240', '-81.86770'), ('SPENCER', 747, '41.09750', '-82.12280'), ('WADSWORTH', 18437, '41.02380', '-81.73190'), ('WESTFIELD CENTER', 1054, '41.02660', '-81.93340')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHC101': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CALEDONIA', 578, '40.63600', '-82.96940'), ('GREEN CAMP', 342, '40.53280', '-83.20800'), ('LA RUE', 775, '40.57790', '-83.38250'), ('MARION', 35318, '40.58490', '-83.12790'), ('MORRAL', 388, '40.68990', '-83.21310'), ('NEW BLOOMINGTON', 548, '40.58550', '-83.31530'), ('PROSPECT', 1191, '40.45240', '-83.18570'), ('WALDO', 332, '40.46160', '-83.08560')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHC107': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CELINA', 10303, '40.55330', '-84.57010'), ('CHICKASAW', 364, '40.43620', '-84.49400'), ('COLDWATER', 4482, '40.48270', '-84.63150'), ('FORT RECOVERY', 1273, '40.41090', '-84.77510'), ('MENDON', 697, '40.67130', '-84.51800'), ('MONTEZUMA', 191, '40.48930', '-84.54890'), ('ROCKFORD', 1126, '40.69200', '-84.64870'), ('ST. HENRY', 2271, '40.42090', '-84.63360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'CAC025': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALAMORIO', None, '32.97000', '-115.45000'), ('BONDS CORNER', None, '32.69000', '-115.34000'), ('BRAWLEY', 22052, '32.97980', '-115.53340'), ('CALEXICO', 27109, '32.67850', '-115.50080'), ('CALIPATRIA', 7289, '33.12720', '-115.51760'), ('COOLIDGE SPRING', None, '33.40000', '-116.05000'), ('COYOTE WELLS', None, '32.75000', '-115.97000'), ('DESERT SHORES', 792, '33.41500', '-116.04160'), ('DIXIELAND', None, '32.79000', '-115.78000'), ('EL CENTRO', 37835, '32.78710', '-115.55940'), ('GLAMIS', None, '33.00000', '-115.08000'), ("GORDON'S WELL", None, '32.71000', '-114.96000'), ('HEBER', 2988, '32.73410', '-115.52010'), ('HOLTVILLE', 5612, '32.81370', '-115.37730'), ('IMPERIAL', 7560, '32.84000', '-115.56000'), ('IMPERIAL HOT MINERAL SPA', None, '33.42000', '-115.69000'), ('MOUNTAIN SPRING', None, '32.67000', '-116.10000'), ('NILAND', 1143, '33.23850', '-115.51310'), ('OCOTILLO', 296, '32.74000', '-116.00000'), ('PALO VERDE', 236, '33.42420', '-114.72920'), ('PLASTER CITY', None, '32.79000', '-115.85000'), ('SALTON CITY', 978, '33.26250', '-115.95000'), ('SEELEY', 1624, '32.78900', '-115.68020'), ('WESTMORLAND', 2131, '33.03680', '-115.62150'), ('WIEST', None, '33.06000', '-115.44000'), ('WINONA', None, '33.24000', '-115.94000'), ('WINTERHAVEN', 529, '32.73900', '-114.62000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PSR'}, -'CAC027': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ASPENDELL', None, '37.23330', '-118.58330'), ('BIG PINE', 1350, '37.16540', '-118.29540'), ('BISHOP', 3575, '37.36770', '-118.39680'), ('DEATH VALLEY JUNCTION', None, '36.30000', '-116.41330'), ('DIXON LANE-MEADOW CREEK', 2702, '37.38730', '-118.41250'), ('FURNACE CREEK', 31, '36.45000', '-116.85000'), ('INDEPENDENCE', 574, '36.80000', '-118.20000'), ('KEELER', 66, '36.48160', '-117.86830'), ('LONE PINE', 1655, '36.59400', '-118.06500'), ('OLANCHA', 134, '36.27830', '-118.00000'), ('PANAMINT SPRINGS', None, '36.33330', '-117.47000'), ('SHOSHONE', 52, '35.96670', '-116.27500'), ('SOUTH LAKE', None, '37.18330', '-118.56660'), ('STOVEPIPE WELLS', None, '36.60000', '-117.16660'), ('WEST BISHOP', 2807, '37.36110', '-118.45410')], 'partOfState': '', 'wfo': 'VEF'}, -'CAC021': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AFTON', None, '39.42000', '-121.96530'), ('ALDER SPRINGS', None, '39.65000', '-122.72500'), ('ARTOIS', None, '39.61970', '-122.19280'), ('BLUEGUM', None, '39.58360', '-122.19220'), ('BUTTE CITY', None, '39.46470', '-121.98890'), ('CHROME', None, '39.72920', '-122.54830'), ('CODORA', None, '39.45890', '-122.02110'), ('ELK CREEK', None, '39.60530', '-122.53800'), ('FRUTO', None, '39.59000', '-122.44890'), ('GLENN', None, '39.52190', '-122.01280'), ('GREENWOOD', None, '39.69610', '-122.19330'), ('HAMILTON CITY', 1903, '39.74230', '-122.01170'), ('NEWVILLE', None, '39.79110', '-122.52720'), ('ORDBEND', None, '39.62970', '-122.00440'), ('ORLAND', 6281, '39.74570', '-122.18720'), ('STONEY GORGE RESERVOIR', None, '39.58500', '-122.53170'), ('WILLOWS', 6220, '39.51590', '-122.19890')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'CAC023': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALDERPOINT', None, '40.18000', '-123.60000'), ('ARCATA', 16651, '40.87000', '-124.08000'), ('ARCATA ARPT', None, '40.98000', '-124.10000'), ('BAYVIEW', 2359, '40.76000', '-124.18000'), ('BENBOW', None, '40.07000', '-123.78000'), ('BLOCKSBURG', None, '40.28000', '-123.63000'), ('BLUE LAKE', 1135, '40.88000', '-123.99000'), ('BRICELAND', None, '40.10000', '-123.90000'), ('BRIDGEVILLE', None, '40.47000', '-123.80000'), ('BULL CREEK', None, '40.35000', '-124.03000'), ('CAPETOWN', None, '40.47000', '-124.37000'), ('CARLOTTA', None, '40.53000', '-124.05000'), ('CUTTEN', 2933, '40.77000', '-124.14000'), ('DINSMORE', None, '40.48000', '-123.60000'), ('ETTERSBURG', None, '40.13000', '-124.00000'), ('EUREKA', 26128, '40.80000', '-124.16000'), ('FAIRHAVEN', None, '40.78000', '-124.20000'), ('FERNBRIDGE', None, '40.62000', '-124.20000'), ('FERNDALE', 1382, '40.58000', '-124.26000'), ('FIELDBROOK', None, '40.97000', '-124.03000'), ('FORTUNA', 10497, '40.59000', '-124.14000'), ('FRESHWATER', None, '40.77000', '-124.07000'), ('FT SEWARD', None, '40.22000', '-123.65000'), ('GARBERVILLE', None, '40.10000', '-123.80000'), ('HONEYDEW', None, '40.23000', '-124.12000'), ('HOOPA', None, '41.05000', '-123.67000'), ('HUMBOLDT HILL', 3246, '40.73000', '-124.19000'), ('HYDESVILLE', 1209, '40.55000', '-124.09000'), ('KNEELAND', None, '40.75000', '-123.98000'), ('LOLETA', None, '40.63000', '-124.22000'), ('MAPLE CREEK', None, '40.77000', '-123.87000'), ('MIRANDA', None, '40.23000', '-123.82000'), ('MYERS FLAT', None, '40.27000', '-123.88000'), ('MYRTLETOWN', 4459, '40.79000', '-124.13000'), ('ORICK', None, '41.28000', '-124.07000'), ('ORLEANS', None, '41.30000', '-123.53000'), ('PEPPERWOOD', None, '40.45000', '-123.98000'), ('PETROLIA', None, '40.32000', '-124.28000'), ('PINE HILLS', 3108, '40.73000', '-124.15000'), ('REDWAY', 1188, '40.12000', '-123.82000'), ('RICHARDSON GROVE', None, '40.02000', '-123.78000'), ('RIO DELL', 3174, '40.50000', '-124.11000'), ('ROHNERVILLE', None, '40.57000', '-124.13000'), ('SAMOA', None, '40.82000', '-124.18000'), ('SCOTIA', None, '40.48000', '-124.10000'), ('SHELTER COVE', None, '40.03000', '-124.05000'), ('SHIVELY', None, '40.43000', '-123.97000'), ('WEITCHPEC', None, '41.18000', '-123.70000'), ('WEOTT', None, '40.33000', '-123.92000'), ('WESTHAVEN-MOONSTONE', 1044, '41.04000', '-124.10000'), ('WHITEHORN', None, '40.02000', '-123.92000'), ('WILLOW CREEK', 1743, '40.88000', '-123.67000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'CAC029': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ARVIN', 12956, '35.20030', '-118.83370'), ('BAKERSFIELD', 247057, '35.35770', '-119.00460'), ('BLACKWELLS CORNER', None, '35.61510', '-119.86690'), ('BORON', 2025, '35.00490', '-117.65030'), ('BUTTONWILLOW', 1266, '35.40180', '-119.46980'), ('CALIFORNIA CITY', 8385, '35.18930', '-117.81150'), ('DELANO', 38824, '35.76480', '-119.25040'), ('EDWARDS AFB', 5909, '34.90960', '-117.93460'), ('FRAZIER PARK', 2348, '34.82210', '-118.94530'), ('GRAPEVINE', None, '34.94170', '-118.93030'), ('INYOKERN', 984, '35.64680', '-117.81200'), ('KERNVILLE', 1736, '35.76160', '-118.43010'), ('LAKE ISABELLA', 3315, '35.61520', '-118.46570'), ('LAMONT', 13296, '35.26410', '-118.91400'), ('LEBEC', 1285, '34.84220', '-118.86610'), ('LOST HILLS', 1938, '35.62340', '-119.69350'), ('MCFARLAND', 9618, '35.67910', '-119.23560'), ('MCKITTRICK', 160, '35.30550', '-119.62210'), ('MOJAVE', 3836, '35.05210', '-118.17980'), ('NORTH EDWARDS', 1227, '35.01910', '-117.83030'), ('RANDSBURG', 77, '35.36840', '-117.65570'), ('RIDGECREST', 24927, '35.63100', '-117.66110'), ('ROSAMOND', 14349, '34.86020', '-118.19950'), ('SHAFTER', 12736, '35.50120', '-119.27270'), ('TAFT', 6400, '35.14240', '-119.45480'), ('TEHACHAPI', 10957, '35.13480', '-118.44050'), ('WASCO', 21263, '35.59360', '-119.34100')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'MEC009': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('AMHERST', None, '44.83330', '-68.36470'), ('AURORA', None, '44.85420', '-68.32860'), ('BAR HARBOR', 2680, '44.38750', '-68.20440'), ('BLUE HILL', None, '44.41390', '-68.58720'), ('BROOKLIN', None, '44.26610', '-68.56970'), ('BROOKSVILLE', None, '44.34670', '-68.68420'), ('CRANBERRY ISLES', None, '44.24830', '-68.26080'), ('DEDHAM', None, '44.69170', '-68.66250'), ('DEER ISLE', None, '44.22390', '-68.67810'), ('EASTBROOK', None, '44.67860', '-68.26500'), ('ELLSWORTH', 6456, '44.54060', '-68.42000'), ('FRANKLIN', None, '44.58690', '-68.23280'), ('FRENCHBORO', None, '44.11810', '-68.36310'), ('GOULDSBORO', None, '44.47830', '-68.03890'), ('GREAT POND', None, '44.94030', '-68.28250'), ('HANCOCK', None, '44.52920', '-68.25420'), ('MARIAVILLE', None, '44.72060', '-68.41610'), ('ORLAND', None, '44.57030', '-68.73640'), ('PENOBSCOT', None, '44.46440', '-68.71170'), ('SEDGWICK', None, '44.30360', '-68.61670'), ('SOMESVILLE', None, '44.36220', '-68.33470'), ('SURRY', None, '44.49580', '-68.50220'), ('SWANS ISLAND', None, '44.14500', '-68.45220'), ('TREMONT', None, '44.25360', '-68.35190'), ('TRENTON', None, '44.43890', '-68.37060'), ('WALTHAM', None, '44.70860', '-68.33890'), ('WINTER HARBOR', None, '44.39530', '-68.08360')], 'partOfState': 'SOUTHEAST', 'wfo': 'CAR'}, -'GAC239': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CROSSROADS', None, '31.83330', '-84.99150'), ('GEORGETOWN', 973, '31.88410', '-85.10980'), ('HATCHER', None, '31.81320', '-85.01530'), ('HATCHER', None, '31.80960', '-85.02420'), ('MORRIS', None, '31.79360', '-84.94790'), ('UNION', None, '31.87480', '-84.93760'), ('WIRE BRIDGE', None, '31.84610', '-85.07490')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'PAC039': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLOOMING VALLEY', 378, '41.68030', '-80.04160'), ('CAMBRIDGE SPRINGS', 2363, '41.80170', '-80.06010'), ('COCHRANTON', 1148, '41.51850', '-80.04690'), ('CONNEAUT LAKE', 708, '41.60230', '-80.30920'), ('CONNEAUT LAKESHORE', 2502, '41.62410', '-80.30720'), ('CONNEAUTVILLE', 848, '41.75770', '-80.36810'), ('HYDETOWN', 605, '41.65160', '-79.72430'), ('LINESVILLE', 1155, '41.65680', '-80.42180'), ('MEADVILLE', 13685, '41.64620', '-80.14650'), ('SAEGERTOWN', 1071, '41.71330', '-80.13830'), ('SPARTANSBURG', 333, '41.82380', '-79.68250'), ('SPRINGBORO', 491, '41.80000', '-80.37120'), ('TITUSVILLE', 6146, '41.62670', '-79.67090'), ('TOWNVILLE', 306, '41.67960', '-79.88200'), ('VENANGO', 288, '41.77280', '-80.11200'), ('WOODCOCK', 146, '41.75360', '-80.08430')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'PAC037': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALMEDIA', 1056, '41.01440', '-76.38800'), ('BENTON', 955, '41.19490', '-76.38530'), ('BERWICK', 10774, '41.05560', '-76.24890'), ('BLOOMSBURG', 12375, '41.00230', '-76.45690'), ('CATAWISSA', 1589, '40.95300', '-76.46040'), ('CENTRAL', None, '41.29000', '-76.37000'), ('CENTRALIA', 21, '40.80420', '-76.34420'), ('JERSEYTOWN', 150, '41.09000', '-76.60000'), ('KNOEBELS GROVE', None, '40.88000', '-76.51000'), ('MAINVILLE', 83, '40.96000', '-76.38000'), ('MIFFLINVILLE', 1213, '41.02920', '-76.30060'), ('MILLVILLE', 991, '41.12120', '-76.52740'), ('NUMIDIA', 254, '40.89000', '-76.41000'), ('ORANGEVILLE', 500, '41.07660', '-76.41310'), ('SCOTCH VALLEY', None, '40.96000', '-76.23000'), ('SHUMANS', None, '40.98000', '-76.28000'), ('STILLWATER', 194, '41.15020', '-76.36710')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAC035': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AVIS', 1492, '41.18620', '-77.31640'), ('BEECH CREEK', 717, '41.07470', '-77.58600'), ('CARROLL', None, '41.06000', '-77.23000'), ('DUNNSTOWN', 1365, '41.14690', '-77.42110'), ('GLEN UNION', None, '41.23000', '-77.57000'), ('HYNER', None, '41.30000', '-77.67000'), ('KEATING', None, '41.26000', '-77.92000'), ('KETTLE CREEK SP', None, '41.36000', '-77.95000'), ('LAMAR', None, '41.01000', '-77.51000'), ('LOCK HAVEN', 9149, '41.13590', '-77.45320'), ('LOGANTON', 435, '41.03370', '-77.30240'), ('MACKEYVILLE', None, '41.05000', '-77.43000'), ('MCELHATTAN', None, '41.17000', '-77.37000'), ('MILL HALL', 1568, '41.10440', '-77.49040'), ('RENOVO', 1318, '41.32910', '-77.74780'), ('TAMARACK', None, '41.42000', '-77.85000'), ('WESTPORT', None, '41.30000', '-77.84000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAC033': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRISBIN', 413, '40.83920', '-78.35220'), ('BURNSIDE', 283, '40.81280', '-78.78980'), ('CLEARFIELD', 6631, '41.02140', '-78.43920'), ('COALPORT', 490, '40.74850', '-78.53210'), ('CURWENSVILLE', 2650, '40.97270', '-78.51800'), ('DUBOIS', 8123, '41.12230', '-78.75580'), ('GLEN HOPE', 149, '40.79900', '-78.49810'), ('GRAMPIAN', 441, '40.96400', '-78.61100'), ('HOUTZDALE', 941, '40.82500', '-78.35100'), ('HYDE', 1491, '41.00740', '-78.46830'), ('IRVONA', 680, '40.77350', '-78.55280'), ('JEFFRIES', None, '40.91000', '-78.39000'), ('KARTHAUS', None, '41.11000', '-78.12000'), ('LECONTES MILLS', None, '41.07000', '-78.26000'), ('LUMBER CITY', 86, '40.92890', '-78.57210'), ('MAHAFFEY', 402, '40.87520', '-78.72810'), ('NEW WASHINGTON', 89, '40.82270', '-78.70140'), ('OSCEOLA MILLS', 1249, '40.85250', '-78.26990'), ('PARKER DAM SP', None, '41.18000', '-78.49000'), ('PENFIELD', None, '41.21000', '-78.60000'), ('RAMEY', 525, '40.80070', '-78.39880'), ('ROCKTON', None, '41.08000', '-78.66000'), ('S.B. ELLIOT SP', None, '41.12000', '-78.53000'), ('TREASURE LAKE', 4507, '41.17340', '-78.71610'), ('TROUTVILLE', 224, '41.02490', '-78.78550'), ('WALLACETON', 350, '40.96550', '-78.29240'), ('WESTOVER', 458, '40.74960', '-78.68180'), ('WOODLAND', None, '40.99000', '-78.38000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'MIC021': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARODA', 858, '41.95460', '-86.48760'), ('BENTON HARBOR', 11182, '42.11640', '-86.44620'), ('BENTON HEIGHTS', 5458, '42.12110', '-86.41500'), ('BERRIEN SPRINGS', 1862, '41.94730', '-86.34000'), ('BRIDGMAN', 2428, '41.94070', '-86.56360'), ('BUCHANAN', 4681, '41.82790', '-86.36680'), ('COLOMA', 1595, '42.18660', '-86.30770'), ('EAU CLAIRE', 656, '41.98390', '-86.30380'), ('FAIR PLAIN', 7828, '42.08170', '-86.45350'), ('GALIEN', 593, '41.80160', '-86.49970'), ('GRAND BEACH', 221, '41.77470', '-86.78830'), ('LAKE MICHIGAN BEACH', 1509, '42.21430', '-86.38240'), ('MICHIANA', 200, '41.76340', '-86.81120'), ('NEW BUFFALO', 2200, '41.79040', '-86.74530'), ('NILES', 12204, '41.83450', '-86.24800'), ('PAW PAW LAKE', 3944, '42.21120', '-86.27560'), ('SHOREHAM', 860, '42.05770', '-86.51160'), ('SHOREWOOD-TOWER HILLS-HAR', None, '41.88450', '-86.62040'), ('ST. JOSEPH', 8789, '42.09690', '-86.49130'), ('STEVENSVILLE', 1191, '42.01380', '-86.52520'), ('THREE OAKS', 1829, '41.79930', '-86.61270'), ('WATERVLIET', 1843, '42.18660', '-86.25720')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'OHC077': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('GREENWICH', 1525, '41.03110', '-82.51790'), ('MONROEVILLE', 1433, '41.24400', '-82.70120'), ('NEW LONDON', 2696, '41.07940', '-82.40620'), ('NORTH FAIRFIELD', 573, '41.10480', '-82.61300'), ('NORWALK', 16238, '41.24210', '-82.61050'), ('PLYMOUTH', 1852, '40.99500', '-82.66800'), ('WAKEMAN', 951, '41.25590', '-82.40400'), ('WILLARD', 6806, '41.05080', '-82.72260')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHC075': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('GLENMONT', 283, '40.51700', '-82.09270'), ('HOLMESVILLE', 386, '40.62840', '-81.92340'), ('KILLBUCK', 839, '40.49720', '-81.98360'), ('MILLERSBURG', 3326, '40.55340', '-81.91560'), ('NASHVILLE', 172, '40.59600', '-82.11330')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHC073': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUCHTEL', 574, '39.46280', '-82.18250'), ('LOGAN', 6704, '39.53690', '-82.40170'), ('MURRAY CITY', 452, '39.51080', '-82.16710')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHC071': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELFAST', None, '39.06000', '-83.55000'), ('GREENFIELD', 4906, '39.35420', '-83.38910'), ('HIGHLAND', 283, '39.34360', '-83.59960'), ('HILLSBORO', 6368, '39.20920', '-83.61250'), ('LEESBURG', 1253, '39.34580', '-83.55460'), ('LYNCHBURG', 1350, '39.24430', '-83.78880'), ('MARSHALL', None, '39.15000', '-83.47000'), ('MOWRYSTOWN', 373, '39.03880', '-83.75250'), ('SINKING SPRING', 158, '39.07510', '-83.38720')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'KSC035': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARKANSAS CITY', 11963, '37.06880', '-97.04060'), ('ATLANTA', 255, '37.43640', '-96.76710'), ('BURDEN', 564, '37.31310', '-96.75500'), ('CAMBRIDGE', 103, '37.31730', '-96.66680'), ('DEXTER', 364, '37.17930', '-96.71570'), ('MAPLE CITY', None, '37.05000', '-96.78330'), ('UDALL', 794, '37.38700', '-97.11750'), ('WINFIELD', 12206, '37.26860', '-96.96850')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'ALC075': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BEAVERTON', 226, '33.93430', '-88.02140'), ('DETROIT', 247, '34.02620', '-88.16880'), ('KENNEDY', 541, '33.58140', '-87.98550'), ('MILLPORT', 1160, '33.55950', '-88.08120'), ('SULLIGENT', 2151, '33.89470', '-88.13190'), ('VERNON', 2143, '33.75830', '-88.11380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'ALC077': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ANDERSON', 354, '34.91350', '-87.27060'), ('FLORENCE', 36264, '34.82780', '-87.66510'), ('KILLEN', 1119, '34.86150', '-87.52930'), ('LEXINGTON', 840, '34.96600', '-87.37290'), ('ROGERSVILLE', 1199, '34.82620', '-87.28450'), ('ST. FLORIAN', 335, '34.86570', '-87.62380'), ('UNDERWOOD-PETERSVILLE', 3137, '34.87700', '-87.69600'), ('WATERLOO', 208, '34.91670', '-88.06420')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'ALC071': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BRIDGEPORT', 2728, '34.94440', '-85.71900'), ('DUTTON', 310, '34.60760', '-85.91560'), ('HOLLYWOOD', 950, '34.71690', '-85.96570'), ('LANGSTON', 254, '34.53420', '-86.09240'), ('PAINT ROCK', 185, '34.66060', '-86.32880'), ('PISGAH', 706, '34.68220', '-85.84780'), ('SCOTTSBORO', 14762, '34.64930', '-86.04740'), ('SECTION', 769, '34.58100', '-85.98380'), ('SKYLINE', 843, '34.80290', '-86.12350'), ('STEVENSON', 1770, '34.87060', '-85.83310'), ('WOODVILLE', 761, '34.62520', '-86.28220')], 'partOfState': 'NORTHEAST', 'wfo': 'HUN'}, -'ALC073': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ADAMSVILLE', 4965, '33.59550', '-86.95800'), ('BESSEMER', 29672, '33.37520', '-86.96060'), ('BIRMINGHAM', 242820, '33.52770', '-86.79920'), ('BRIGHTON', 3640, '33.43890', '-86.94550'), ('BROOKSIDE', 1393, '33.63190', '-86.91470'), ('CAHABA HEIGHTS', 5203, '33.45960', '-86.72820'), ('CARDIFF', 82, '33.64610', '-86.92900'), ('CENTER POINT', 22784, '33.64310', '-86.67880'), ('FAIRFIELD', 12381, '33.47300', '-86.91770'), ('FORESTDALE', 10509, '33.57930', '-86.90290'), ('FULTONDALE', 6595, '33.61730', '-86.80010'), ('GARDENDALE', 11626, '33.66520', '-86.80060'), ('GRAYSVILLE', 2344, '33.62640', '-86.96920'), ('HOMEWOOD', 25043, '33.46480', '-86.80700'), ('HOOVER', 62742, '33.37530', '-86.81900'), ('HUEYTOWN', 15364, '33.43760', '-86.99760'), ('IRONDALE', 9813, '33.53230', '-86.67630'), ('KIMBERLY', 1801, '33.76820', '-86.80480'), ('LEEDS', 10455, '33.54600', '-86.56270'), ('LIPSCOMB', 2458, '33.42610', '-86.92540'), ('MAYTOWN', 435, '33.55110', '-86.99570'), ('MIDFIELD', 5626, '33.45410', '-86.92280'), ('MINOR', 1116, '33.52530', '-86.94760'), ('MORRIS', 1827, '33.74970', '-86.80530'), ('MOUNTAIN BROOK', 20604, '33.48690', '-86.74050'), ('MULGA', 973, '33.54660', '-86.97530'), ('NORTH JOHNS', 142, '33.36810', '-87.10150'), ('PINSON-CLAY-CHALKVILLE', None, '33.67670', '-86.65860'), ('PLEASANT GROVE', 9983, '33.48920', '-86.97590'), ('SYLVAN SPRINGS', 1465, '33.51290', '-87.03060'), ('TARRANT', 7022, '33.59370', '-86.76790'), ('TRAFFORD', 523, '33.82360', '-86.74650'), ('TRUSSVILLE', 12924, '33.63590', '-86.59320'), ('VESTAVIA HILLS', 24476, '33.43360', '-86.78760'), ('WARRIOR', 3169, '33.81390', '-86.80820'), ('WEST JEFFERSON', 344, '33.64870', '-87.06790')], 'partOfState': '', 'wfo': 'BMX'}, -'FLC095': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALOMA', None, '28.60070', '-81.30690'), ('ANIMAL KINGDOM', None, '28.38830', '-81.61740'), ('APOPKA', 26642, '28.68670', '-81.51330'), ('AZALEA PARK', 11073, '28.54540', '-81.29520'), ('BAY HILL', 5177, '28.46760', '-81.51630'), ('BELLE ISLE', 5531, '28.47010', '-81.35030'), ('BITHLO', 4626, '28.56970', '-81.10960'), ('CHRISTMAS', 1162, '28.53880', '-81.02270'), ('CHRISTMAS PARK', None, '28.56250', '-81.02870'), ('CLARCONA', None, '28.61260', '-81.49890'), ('CONWAY', 14394, '28.49520', '-81.33230'), ('CROWN POINT', None, '28.58860', '-81.56560'), ('DOCTOR PHILLIPS', 9548, '28.44920', '-81.49250'), ('EATONVILLE', 2432, '28.61690', '-81.39090'), ('EDGEWOOD', 1901, '28.48560', '-81.37210'), ('EPCOT', None, '28.37470', '-81.54910'), ('FAIRVIEW SHORES', 13898, '28.60020', '-81.39090'), ('FAIRVILLA', None, '28.57870', '-81.40900'), ('KILLARNEY', None, '28.54690', '-81.65060'), ('LAKE APOPKA', None, '28.63600', '-81.63690'), ('LAKE BUENA VISTA', 16, '28.38720', '-81.52570'), ('LAKE MARY JANE', None, '28.37590', '-81.18000'), ('LOCKHART', 12944, '28.62610', '-81.43660'), ('LOCKWOOD', None, '28.56190', '-81.14440'), ('MAGIC KINGDOM', None, '28.41050', '-81.57610'), ('MAITLAND', 12019, '28.62790', '-81.36710'), ('MGM STUDIOS', None, '28.37320', '-81.57590'), ('OAK RIDGE', 22349, '28.47090', '-81.42460'), ('OAKLAND', 936, '28.55610', '-81.62890'), ('OCOEE', 24391, '28.57220', '-81.53260'), ('ORLANDO', 185951, '28.50470', '-81.37420'), ('ORLANDO INTERNATIONAL AIR', None, '28.42930', '-81.31590'), ('ORLOVISTA', 6047, '28.54400', '-81.46300'), ('PIEDMONT', None, '28.63790', '-81.45820'), ('PINE CASTLE', 8803, '28.46560', '-81.37300'), ('PINE HILLS', 41764, '28.58000', '-81.46020'), ('PLEASURE ISLAND', None, '28.37460', '-81.51910'), ('PLYMOUTH', None, '28.69190', '-81.54760'), ('ROCK SPRINGS', None, '28.75790', '-81.50080'), ('SEA WORLD', None, '28.41260', '-81.46180'), ('TANGELO PARK', 2430, '28.45570', '-81.44740'), ('TANGERINE', 826, '28.76480', '-81.62070'), ('UNION PARK', 10191, '28.56380', '-81.23600'), ('UNIVERSAL STUDIOS', None, '28.48160', '-81.46800'), ('UNIVERSITY PARK', 26538, '28.57230', '-81.17390'), ('VINELAND', None, '28.39510', '-81.50330'), ('WEKIWA SPRINGS STATE PARK', None, '28.72170', '-81.46480'), ('WET N WILD WATER PARK', None, '28.45830', '-81.46730'), ('WINDERMERE', 1897, '28.49510', '-81.53350'), ('WINTER GARDEN', 14351, '28.56230', '-81.58330'), ('WINTER PARK', 24090, '28.59590', '-81.34370'), ('ZELLWOOD', 2540, '28.73080', '-81.60140')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'GAC231': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CONCORD', 336, '33.09150', '-84.43810'), ('MEANSVILLE', 192, '33.04990', '-84.30980'), ('MOLENA', 475, '33.01070', '-84.50100'), ('WILLIAMSON', 297, '33.18210', '-84.36310'), ('ZEBULON', 1181, '33.10040', '-84.34220')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'MIC123': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BITELY', None, '43.74680', '-85.86170'), ('BRIDGETON', None, '43.34670', '-85.93720'), ('CROTON', None, '43.43880', '-85.66080'), ('CROTON HEIGHTS', None, '43.45630', '-85.63470'), ('FREMONT', 4224, '43.46150', '-85.95220'), ('GRANT', 881, '43.33410', '-85.81010'), ('HAWKINS', None, '43.80050', '-85.60300'), ('NEWAYGO', 1670, '43.42000', '-85.80050'), ('REEMAN', None, '43.44500', '-86.00870'), ('WHITE CLOUD', 1420, '43.55290', '-85.77260'), ('WOODLAND PARK', None, '43.71470', '-85.86130'), ('WOODVILLE', None, '43.66580', '-85.68120'), ('WOOSTER', None, '43.51050', '-85.87380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'MIC121': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAILEY', None, '43.27780', '-85.81030'), ('BRUNSWICK', None, '43.43300', '-86.04030'), ('CLOVERVILLE', None, '43.19050', '-86.16530'), ('DALTON', None, '43.31870', '-86.26170'), ('FRUITPORT', 1124, '43.12570', '-86.15590'), ('HOLTON', None, '43.41330', '-86.07950'), ('LAKEWOOD CLUB', 1006, '43.37660', '-86.25510'), ('MONTAGUE', 2407, '43.41230', '-86.36290'), ('MUSKEGON', 40105, '43.22760', '-86.25550'), ('NORTON SHORES', 22527, '43.16000', '-86.25250'), ('RAVENNA', 1206, '43.18960', '-85.94030'), ('ROOSEVELT PARK', 3890, '43.19750', '-86.27350'), ('SLOCUM', None, '43.22220', '-85.90970'), ('SULLIVAN', None, '43.18370', '-86.05300'), ('TWIN LAKE', 1613, '43.36900', '-86.17990'), ('VICKERYVILLE', None, '43.19220', '-85.96530'), ('WABANINGO', None, '43.37050', '-86.42170'), ('WHITEHALL', 2884, '43.39830', '-86.34130'), ('WOLF LAKE', 4455, '43.24550', '-86.10590')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'MIC127': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('COLFAX', None, '43.74330', '-86.07920'), ('CRYSTAL VALLEY', None, '43.77380', '-86.23750'), ('ELBRIDGE', None, '43.68580', '-86.21880'), ('HART', 1950, '43.69710', '-86.36310'), ('HESPERIA', 954, '43.56820', '-86.04020'), ('LITTLE POINT SABLE', None, '43.63470', '-86.53750'), ('MEARS', None, '43.68200', '-86.41970'), ('NEW ERA', 461, '43.55950', '-86.34690'), ('ROTHBURY', 416, '43.50740', '-86.34840'), ('ST. HUBERTS', None, '43.54250', '-86.08500'), ('STONY LAKE', None, '43.55970', '-86.50000'), ('WALKERVILLE', 254, '43.71470', '-86.12570'), ('WEARE', None, '43.74630', '-86.33950')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'MIC125': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BIRMINGHAM', 19291, '42.54480', '-83.21650'), ('BLOOMFIELD HILLS', 3940, '42.57890', '-83.24740'), ('CLARKSTON', None, '42.73540', '-83.42110'), ('DAVISBURG', None, '42.75240', '-83.54030'), ('FARMINGTON', 10423, '42.46320', '-83.37730'), ('FERNDALE', 22105, '42.45930', '-83.13100'), ('HIGHLAND', None, '42.63810', '-83.61720'), ('HOLLY', 6135, '42.79900', '-83.62260'), ('LAKE ORION', 2715, '42.78370', '-83.24430'), ('LEONARD', 332, '42.86590', '-83.14320'), ('MILFORD', 6272, '42.58570', '-83.60110'), ('NOVI', 47386, '42.47550', '-83.49050'), ('ORCHARD LAKE', None, '42.58240', '-83.37750'), ('ORTONVILLE', 1535, '42.85140', '-83.44420'), ('OXFORD', 3540, '42.82100', '-83.25400'), ('PONTIAC', 66337, '42.64910', '-83.28720'), ('ROCHESTER', 10467, '42.68670', '-83.12380'), ('ROYAL OAK', 60062, '42.50860', '-83.15460'), ('SOUTH LYON', 10036, '42.46070', '-83.65130'), ('SOUTHFIELD', 78296, '42.47560', '-83.25920'), ('TROY', 80959, '42.58020', '-83.14310'), ('WATERFORD', 73150, '42.66290', '-83.38800'), ('WHITE LAKE', None, '42.65450', '-83.50490')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TXC095': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EDEN', 2561, '31.21570', '-99.84360'), ('EOLA', None, '31.39860', '-100.08890'), ('LIVE OAK', 9156, '31.13890', '-99.92920'), ('LOWAKE', None, '31.56610', '-100.07560'), ('MILLERSVIEW', None, '31.40860', '-99.75530'), ('PAINT ROCK', 320, '31.50950', '-99.92530'), ('VICK', None, '31.34080', '-100.09170')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'KSC033': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BUTTERMILK', None, '37.11000', '-99.34000'), ('COLDWATER', 792, '37.25790', '-99.33680'), ('LAKE COLDWATER', None, '37.25000', '-99.35000'), ('PROTECTION', 558, '37.20020', '-99.48030'), ('WILMORE', 57, '37.33590', '-99.20930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'TXC091': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BULVERDE', 3761, '29.73620', '-98.45170'), ('CANYON LAKE DAM', None, '29.87500', '-98.26230'), ('FISCHER', None, '29.96660', '-98.26660'), ('GARDEN RIDGE', 1882, '29.63470', '-98.29360'), ('GUADALUPE RIVER STATE PAR', None, '29.87000', '-98.51000'), ('NEW BRAUNFELS', 36494, '29.70430', '-98.11740'), ('SMITHSON VALLEY', None, '29.80770', '-98.20130'), ('SPRING BRANCH', None, '29.86660', '-98.40000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC093': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMANCHE', 4482, '31.89970', '-98.60420'), ('DE LEON', 2433, '32.11170', '-98.53670'), ('GUSTINE', 457, '31.84530', '-98.40210')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'MNC095': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BOCK', 106, '45.78500', '-93.55320'), ('FORESTON', 389, '45.73320', '-93.70940'), ('ISLE', 707, '46.14220', '-93.46040'), ('MILACA', 2580, '45.75790', '-93.65290'), ('ONAMIA', 847, '46.06930', '-93.66520'), ('PEASE', 163, '45.69810', '-93.65060'), ('PRINCETON', 3933, '45.57060', '-93.59080'), ('VINELAND', 607, '46.18270', '-93.77360'), ('WAHKON', 314, '46.11860', '-93.52370')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNC097': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BOWLUS', 260, '45.82010', '-94.40750'), ('BUCKMAN', 208, '45.89800', '-94.09230'), ('ELMDALE', 107, '45.83730', '-94.49020'), ('FLENSBURG', 244, '45.94770', '-94.53010'), ('GENOLA', 71, '45.96880', '-94.11100'), ('HARDING', 105, '46.12080', '-94.04380'), ('HILLMAN', 29, '46.00900', '-93.88820'), ('LASTRUP', 99, '46.03980', '-94.06130'), ('LITTLE FALLS', 7719, '45.97790', '-94.36110'), ('MOTLEY', 585, '46.33570', '-94.64320'), ('PIERZ', 1277, '45.97850', '-94.10030'), ('RANDALL', 535, '46.08940', '-94.49970'), ('ROYALTON', 816, '45.83180', '-94.28940'), ('SOBIESKI', 196, '45.92430', '-94.48210'), ('SWANVILLE', 351, '45.91620', '-94.63960'), ('UPSALA', 424, '45.80810', '-94.56900')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNC091': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CEYLON', 413, '43.53190', '-94.63200'), ('DUNNELL', 197, '43.56050', '-94.77370'), ('FAIRMONT', 10889, '43.64240', '-94.45780'), ('GRANADA', 317, '43.69360', '-94.34930'), ('NORTHROP', 262, '43.73560', '-94.43560'), ('SHERBURN', 1082, '43.65380', '-94.72650'), ('TRIMONT', 754, '43.76140', '-94.71540'), ('TRUMAN', 1259, '43.82800', '-94.43620'), ('WELCOME', 721, '43.66840', '-94.61850')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNC093': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CEDAR MILLS', 53, '44.94720', '-94.51730'), ('COSMOS', 582, '44.93590', '-94.69740'), ('DARWIN', 276, '45.09700', '-94.40410'), ('DASSEL', 1233, '45.08180', '-94.30740'), ('EDEN VALLEY', 866, '45.32570', '-94.54570'), ('GROVE CITY', 608, '45.15190', '-94.68140'), ('KINGSTON', 120, '45.19670', '-94.30970'), ('LITCHFIELD', 6562, '45.11950', '-94.52710'), ('WATKINS', 880, '45.31480', '-94.40790')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'TXC259': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BANKERSMITH', None, '30.13330', '-98.81670'), ('BERGHEIM', None, '29.81670', '-98.58330'), ('BOERNE', 6178, '29.80150', '-98.73850'), ('COMFORT', 2358, '29.97230', '-98.90280'), ('KENDALIA', None, '29.96670', '-98.51670'), ('SISTERDALE', None, '29.96670', '-98.73330'), ('WARING', None, '29.95000', '-98.80000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC257': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMBINE', 1788, '32.58820', '-96.51490'), ('COTTONWOOD', 181, '32.45690', '-96.39150'), ('CRANDALL', 2774, '32.63070', '-96.45370'), ('FORNEY', 5588, '32.75270', '-96.46610'), ('GRAYS PRAIRIE', 296, '32.47250', '-96.35000'), ('KAUFMAN', 6490, '32.58180', '-96.30820'), ('KEMP', 1133, '32.43660', '-96.22370'), ('LAWRENCE', None, '32.74120', '-96.34690'), ('MABANK', 2151, '32.36550', '-96.10400'), ('OAK GROVE', 710, '32.52880', '-96.31560'), ('OAK RIDGE', 400, '32.65760', '-96.26400'), ('POST OAK BEND CITY', 404, '32.63210', '-96.31330'), ('ROSSER', 379, '32.46270', '-96.44220'), ('TERRELL', 13606, '32.73280', '-96.29190')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC255': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CESTOHOWA', None, '29.01670', '-97.95000'), ('FALLS CITY', 591, '28.98130', '-98.02130'), ('GILLETT', None, '29.13330', '-97.80000'), ('KARNES CITY', 3457, '28.88700', '-97.90110'), ('KENEDY', 3487, '28.81520', '-97.85050'), ('RUNGE', 1080, '28.88590', '-97.71280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'MNC099': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADAMS', 800, '43.56500', '-92.71850'), ('AUSTIN', 23314, '43.67150', '-92.97060'), ('BROWNSDALE', 718, '43.74030', '-92.86740'), ('DEXTER', 333, '43.71810', '-92.70250'), ('ELKTON', 149, '43.65980', '-92.70870'), ('GRAND MEADOW', 945, '43.70520', '-92.57180'), ('JOHNSBURG', None, '43.50837', '-92.77573'), ('LANSING', None, '43.74961', '-92.96762'), ('LE ROY', 925, '43.51360', '-92.50780'), ('LYLE', 566, '43.50540', '-92.94200'), ('MAPLEVIEW', 189, '43.68900', '-92.97490'), ('MAYVILLE', None, '43.76423', '-92.91645'), ('RACINE', 355, '43.77650', '-92.48200'), ('RAMSEY', 18510, '43.71671', '-92.98590'), ('RENOVA', None, '43.73134', '-92.78304'), ('ROSE CREEK', 354, '43.60460', '-92.82960'), ('SARGEANT', 76, '43.80560', '-92.80090'), ('TAOPI', 93, '43.55840', '-92.64040'), ('VARCO', None, '43.61437', '-92.98407'), ('WALTHAM', 196, '43.82070', '-92.87520')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'TXC253': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANSON', 2556, '32.75640', '-99.89580'), ('AVOCA', None, '32.86560', '-99.71560'), ('FUNSTON', None, '32.75140', '-99.79970'), ('HAMLIN', 2248, '32.88470', '-100.12610'), ('HAWLEY', 646, '32.61190', '-99.81390'), ('HODGES', None, '32.58920', '-99.86860'), ('LUEDERS', 300, '32.79950', '-99.62330'), ('NEINDA', None, '32.79670', '-100.09250'), ('NOODLE', None, '32.60220', '-100.05170'), ('NUGENT', None, '32.69390', '-99.66720'), ('STAMFORD', 3636, '32.94280', '-99.80390'), ('STITH', None, '32.54640', '-99.94390'), ('TRUBY', None, '32.64530', '-99.92500'), ('TUXEDO', None, '32.93280', '-99.95140')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXC251': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALVARADO', 3288, '32.41000', '-97.21140'), ('BRIAROAKS', 493, '32.49230', '-97.30190'), ('BURLESON', 20976, '32.53310', '-97.32900'), ('CLEBURNE', 26005, '32.34930', '-97.40630'), ('GODLEY', 879, '32.44950', '-97.52660'), ('GRANDVIEW', 1358, '32.26800', '-97.17720'), ('JOSHUA', 4528, '32.46220', '-97.38040'), ('KEENE', 5003, '32.39330', '-97.33020'), ('RIO VISTA', 656, '32.23570', '-97.37550'), ('VENUS', 910, '32.42750', '-97.10460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'WVC071': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BRANDYWINE', None, '38.62470', '-79.24500'), ('BRUSHY RUN', None, '38.83750', '-79.24780'), ('CHERRY GROVE', None, '38.64060', '-79.52310'), ('CIRCLEVILLE', None, '38.67080', '-79.49140'), ('DEER RUN', None, '38.72000', '-79.23080'), ('FRANKLIN', 797, '38.64600', '-79.33310'), ('HARPER', None, '38.52000', '-79.47000'), ('OAK FLAT', None, '38.65940', '-79.21310'), ('RIVERTON', None, '38.74390', '-79.43610'), ('RUDDLE', None, '38.71250', '-79.30860'), ('SENECA ROCKS', None, '38.83470', '-79.37640'), ('SUGAR GROVE', None, '38.51110', '-79.32190'), ('UPPER TRACK', None, '38.78000', '-79.28000')], 'partOfState': '', 'wfo': 'LWX'}, -'LAC055': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BROUSSARD', 5874, '30.15010', '-91.97010'), ('CARENCRO', 6120, '30.31050', '-92.03660'), ('DUSON', 1672, '30.23220', '-92.19190'), ('LAFAYETTE', 110257, '30.21530', '-92.02950'), ('MILTON', None, '30.10360', '-92.07000'), ('SCOTT', 7870, '30.23770', '-92.09050'), ('YOUNGSVILLE', 3992, '30.09990', '-91.99250')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'WVC073': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BELMONT', 1036, '39.37740', '-81.26230'), ('ST. MARYS', 2017, '39.40250', '-81.19550')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC075': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CASS SCENIC RAILROAD', None, '38.44970', '-79.92790'), ('DURBIN', 262, '38.54710', '-79.82810'), ('GREENBANK', None, '38.42000', '-79.83180'), ('HILLSBORO', 243, '38.13500', '-80.21250'), ('MARLINTON', 1204, '38.22010', '-80.08710'), ('SNOWSHOE', None, '38.40910', '-79.99570')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC077': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ALBRIGHT', 247, '39.49340', '-79.63850'), ('BRANDONVILLE', 102, '39.66540', '-79.62520'), ('BRUCETON MILLS', 74, '39.65950', '-79.64100'), ('KINGWOOD', 2944, '39.47110', '-79.68310'), ('MASONTOWN', 647, '39.55170', '-79.80040'), ('NEWBURG', 360, '39.38840', '-79.85430'), ('REEDSVILLE', 517, '39.51040', '-79.80010'), ('ROWLESBURG', 613, '39.34850', '-79.67740'), ('TERRA ALTA', 1456, '39.44420', '-79.54420'), ('TUNNELTON', 336, '39.39340', '-79.74650')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVC079': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BANCROFT', 367, '38.51080', '-81.84180'), ('BUFFALO', 1171, '38.61320', '-81.98130'), ('ELEANOR', 1345, '38.53890', '-81.93120'), ('HURRICANE', 5222, '38.43680', '-82.01690'), ('POCA', 1013, '38.47440', '-81.81280'), ('TEAYS VALLEY', 12704, '38.44800', '-81.92750'), ('WINFIELD', 1858, '38.52580', '-81.88310')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC049': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BARRACKVILLE', 1288, '39.50150', '-80.17020'), ('FAIRMONT', 19097, '39.48080', '-80.14610'), ('FAIRVIEW', 435, '39.59260', '-80.24730'), ('FARMINGTON', 387, '39.51150', '-80.25250'), ('GLOVER GAP', None, '39.62000', '-80.40000'), ('GRANT TOWN', 657, '39.55730', '-80.17870'), ('MANNINGTON', 2124, '39.52650', '-80.34120'), ('MONONGAH', 939, '39.45960', '-80.21770'), ('RIVESVILLE', 913, '39.53160', '-80.12070'), ('WORTHINGTON', 170, '39.45800', '-80.26190')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'KSC181': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('EDSON', None, '39.33000', '-101.54000'), ('GOODLAND', 4948, '39.34860', '-101.70930'), ('KANORADO', 248, '39.33710', '-102.03690'), ('RULETON', None, '39.34000', '-101.88000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'KSC183': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ATHOL', 51, '39.76570', '-98.91990'), ('BELLAIRE', None, '39.79850', '-98.67600'), ('CEDAR', 26, '39.65670', '-98.94000'), ('GAYLORD', 145, '39.64610', '-98.84670'), ('HARLAN', None, '39.60550', '-98.76650'), ('KENSINGTON', 529, '39.76740', '-99.03200'), ('LEBANON', 303, '39.81050', '-98.55700'), ('SMITH CENTER', 1931, '39.77970', '-98.78310')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'KSC185': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('DILLWYN', None, '37.97000', '-98.87000'), ('HUDSON', 133, '38.10390', '-98.66010'), ('MACKSVILLE', 514, '37.95720', '-98.96830'), ('NEOLA', None, '37.86000', '-98.51000'), ('RADIUM', 40, '38.17370', '-98.89390'), ('SEWARD', 63, '38.17760', '-98.79380'), ('ST. JOHN', 1318, '38.00100', '-98.76070'), ('STAFFORD', 1161, '37.96280', '-98.59930'), ('ZENITH', None, '37.95000', '-98.48000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'KSC187': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BIG BOW', None, '37.56000', '-101.56000'), ('JOHNSON CITY', 1528, '37.56960', '-101.75250'), ('MANTER', 178, '37.52420', '-101.88270'), ('THE SAUNDERS ELEVATOR', None, '37.47000', '-102.03000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSC189': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CAVE', None, '37.36000', '-101.12000'), ('FETERITA', None, '37.15000', '-101.48000'), ('HUGOTON', 3708, '37.17640', '-101.34680'), ('MOSCOW', 247, '37.32550', '-101.20630'), ('WOODS', None, '37.17000', '-101.10000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'MSC015': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CARROLLTON', 408, '33.50490', '-89.92260'), ('NORTH CARROLLTON', 499, '33.51820', '-89.91990'), ('VAIDEN', 840, '33.33220', '-89.75250')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'MSC017': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('HOULKA', None, '34.03330', '-89.01670'), ('HOUSTON', 4079, '33.89620', '-89.00160'), ('NEW HOULKA', 710, '34.03630', '-89.02000'), ('OKOLONA', 3056, '34.00560', '-88.75050'), ('PYLAND', None, '33.88330', '-89.11670'), ('TREBLOC', None, '33.83330', '-88.85000'), ('WOODLAND', 159, '33.78000', '-89.05010')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSC011': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ALLIGATOR', 220, '34.08980', '-90.72020'), ('BENOIT', 611, '33.65150', '-91.00850'), ('BEULAH', 473, '33.79040', '-90.98040'), ('BOYLE', 720, '33.70380', '-90.72600'), ('CLEVELAND', 13841, '33.74320', '-90.72810'), ('DUNCAN', 578, '34.04350', '-90.74460'), ('GUNNISON', 633, '33.94420', '-90.94680'), ('MERIGOLD', 664, '33.83910', '-90.72690'), ('MOUND BAYOU', 2102, '33.88050', '-90.72790'), ('PACE', 364, '33.79210', '-90.85910'), ('RENOVA', 623, '33.78090', '-90.72260'), ('ROSEDALE', 2414, '33.85350', '-91.03220'), ('SHAW', 2312, '33.60030', '-90.77150'), ('SHELBY', 2926, '33.95160', '-90.76570'), ('WINSTONVILLE', 319, '33.91140', '-90.75270')], 'partOfState': 'NORTHWEST', 'wfo': 'JAN'}, -'MSC013': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BANNER', None, '34.10000', '-89.40000'), ('BIG CREEK', 127, '33.84330', '-89.41570'), ('BRUCE', 2097, '33.99180', '-89.34490'), ('CALHOUN CITY', 1872, '33.85930', '-89.31460'), ('DERMA', 1023, '33.85450', '-89.28630'), ('PITTSBORO', 212, '33.94130', '-89.33680'), ('SABOUGLA', None, '33.76670', '-89.48330'), ('SLATE SPRING', None, '33.74260', '-89.37310'), ('VARDAMAN', 1065, '33.88170', '-89.17860')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSC019': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ACKERMAN', 1696, '33.31070', '-89.17190'), ('FRENCH CAMP', 393, '33.29210', '-89.39850'), ('WEIR', 553, '33.26330', '-89.28940')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MOC125': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BELLE', 1344, '38.28580', '-91.72020'), ('BRINKTOWN', None, '38.12660', '-92.07440'), ('VICHY', None, '38.11130', '-91.76020'), ('VIENNA', 628, '38.18660', '-91.94690')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'WVC047': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ANAWALT', 272, '37.33350', '-81.44150'), ('BRADSHAW', 289, '37.35290', '-81.80090'), ('DAVY', 373, '37.47410', '-81.65000'), ('GARY', 917, '37.36190', '-81.53810'), ('IAEGER', 358, '37.46380', '-81.81340'), ('KEYSTONE', 453, '37.41500', '-81.44630'), ('KIMBALL', 411, '37.42740', '-81.50690'), ('NORTHFORK', 519, '37.41910', '-81.42620'), ('WAR', 788, '37.30280', '-81.68010'), ('WELCH', 2683, '37.43280', '-81.58150')], 'partOfState': '', 'wfo': 'RLX'}, -'IDC083': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BUHL', 3985, '42.59860', '-114.76070'), ('CASTLEFORD', 277, '42.52130', '-114.87110'), ('FILER', 1620, '42.56890', '-114.60890'), ('HANSEN', 970, '42.53130', '-114.30070'), ('HOLLISTER', 237, '42.35380', '-114.58720'), ('KIMBERLY', 2614, '42.53420', '-114.36450'), ('MURTAUGH', 139, '42.49190', '-114.16020'), ('ROGERSON', None, '42.21780', '-114.59190'), ('TWIN FALLS', 34469, '42.56150', '-114.46280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BOI'}, -'ALC105': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('MARION', 3511, '32.63160', '-87.31760'), ('UNIONTOWN', 1636, '32.44700', '-87.50850')], 'partOfState': '', 'wfo': 'BMX'}, -'FLC017': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BEVERLY HILLS', 8317, '28.91230', '-82.46450'), ('CHASSAHOWITZKA', None, '28.70000', '-82.57000'), ('CITRONELLE', None, '28.97800', '-82.56500'), ('CITRUS SPRINGS', 4157, '28.99660', '-82.47470'), ('CRYSTAL RIVER', 3485, '28.90100', '-82.59760'), ('FLORAL CITY', 4989, '28.74140', '-82.29150'), ('HERNANDO', 8253, '28.90730', '-82.37460'), ('HOMOSASSA', 2294, '28.78120', '-82.61840'), ('HOMOSASSA SPRINGS', 12458, '28.79720', '-82.54830'), ('INGLIS', 1491, '29.03260', '-82.65940'), ('INVERNESS', 6789, '28.83910', '-82.34350'), ('LECANTO', 5161, '28.85800', '-82.48580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'ALC107': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALICEVILLE', 2567, '33.12510', '-88.15800'), ('CARROLLTON', 987, '33.26180', '-88.09510'), ('ETHELSVILLE', 81, '33.41420', '-88.21630'), ('GORDO', 1677, '33.32130', '-87.90370'), ('MCMULLEN', 66, '33.14710', '-88.17610'), ('MEMPHIS', 33, '33.13830', '-88.30130'), ('PICKENSVILLE', 662, '33.22660', '-88.26560'), ('REFORM', 1978, '33.37960', '-88.01670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'FLC015': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BABCOCK RANCH', None, '26.94660', '-81.76160'), ('CHARLOTTE BEACH', None, '26.93500', '-82.21000'), ('CHARLOTTE HARBOR', 3647, '26.96470', '-82.06250'), ('CHARLOTTE PARK', 2182, '26.90400', '-82.04920'), ('CLEVELAND', 3268, '26.95210', '-81.99120'), ('GROVE CITY', 2092, '26.91390', '-82.32720'), ('HARBOUR HEIGHTS', 2873, '26.99250', '-82.00790'), ('MANASOTA KEY', 1345, '26.92490', '-82.36420'), ('PORT CHARLOTTE', 46451, '26.97580', '-82.09800'), ('PUNTA GORDA', 14344, '26.93000', '-82.05700'), ('SOLANA', 1011, '26.93910', '-82.02840'), ('TUCKERS CORNER', None, '26.86000', '-81.75000')], 'partOfState': 'SOUTHWEST', 'wfo': 'TBW'}, -'ALC101': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('MONTGOMERY', 201568, '32.35440', '-86.28430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BMX'}, -'FLC013': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ABE SPRINGS', None, '30.36470', '-85.14770'), ('ALTHA', 506, '30.57140', '-85.12650'), ('BLOUNTSTOWN', 2444, '30.44370', '-85.04550'), ('BROAD BRANCH', None, '30.31000', '-85.29590'), ('CALHOUN CO A/P', None, '30.44610', '-85.02540'), ('CHASON', None, '30.53260', '-85.19220'), ('CHIPOLA', None, '30.50530', '-85.11870'), ('CHIPOLA PARK', None, '30.26300', '-85.20780'), ('CLARKSVILLE', None, '30.43650', '-85.18570'), ('COX', None, '30.60090', '-85.13930'), ('DURHAM', None, '30.46470', '-85.07510'), ('FISHER CORNER', None, '30.38040', '-85.21540'), ('FRINK', None, '30.36730', '-85.21440'), ('GASKINS', None, '30.30140', '-85.12950'), ('HENDERSON MILL', None, '30.56770', '-85.07020'), ('IOLEE', None, '30.26590', '-85.13340'), ('KINARD', None, '30.26550', '-85.24150'), ('LEONARDS', None, '30.48030', '-85.10490'), ('MACEDONIA', None, '30.53380', '-85.05570'), ('MARYSVILLE', None, '30.29370', '-85.09980'), ('MCNEAL', None, '30.42740', '-85.03280'), ('NEW HOPE', None, '30.35640', '-85.05510'), ('OCHEESEE', None, '30.57520', '-85.01690'), ('ROCK HEAD', None, '30.38650', '-85.26470'), ('ROLLINS CORNER', None, '30.43670', '-85.22270'), ('SCOTTS FERRY', None, '30.29460', '-85.13180'), ('SELMAN', None, '30.53290', '-85.02880'), ('SHARPSTOWN', None, '30.36540', '-85.10040'), ('TORREYA SP', None, '30.56470', '-84.96720'), ('WILLIS', None, '30.54990', '-85.18700')], 'partOfState': '', 'wfo': 'TAE'}, -'ALC103': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('DECATUR', 53929, '34.57180', '-86.98820'), ('EVA', 491, '34.33040', '-86.75590'), ('FALKVILLE', 1202, '34.37690', '-86.90970'), ('FLINT CITY', None, '34.51550', '-86.97280'), ('HARTSELLE', 12019, '34.43690', '-86.93980'), ('PRICEVILLE', 1631, '34.52420', '-86.88560'), ('SOMERVILLE', 347, '34.47470', '-86.80140'), ('TRINITY', 1841, '34.59860', '-87.08980')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'FLC011': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('COCONUT CREEK', 43566, '26.27000', '-80.19000'), ('COOPER CITY', 27939, '26.06000', '-80.27000'), ('CORAL SPRINGS', 117549, '26.27000', '-80.27000'), ('DANIA BEACH', 20061, '26.06000', '-80.14000'), ('DAVIE', 75720, '26.08000', '-80.31000'), ('DEERFIELD BEACH', 64583, '26.31000', '-80.10000'), ('FORT LAUDERDALE', 152397, '26.12000', '-80.15000'), ('HALLANDALE', 34282, '25.99000', '-80.14000'), ('HOLLYWOOD', 139357, '26.03000', '-80.17000'), ('LAUDERDALE LAKES', 31705, '26.16000', '-80.20000'), ('LAUDERHILL', 57585, '26.15000', '-80.21000'), ('LIGHTHOUSE POINT', 10767, '26.28000', '-80.08500'), ('MARGATE', 53909, '26.25000', '-80.22000'), ('MICCOSUKEE INDIAN RESERVA', None, '26.17000', '-80.86000'), ('MIRAMAR', 72739, '25.98000', '-80.35000'), ('NORTH LAUDERDALE', 32264, '26.22000', '-80.23000'), ('NORTH PERRY AIRPORT', None, '26.00000', '-80.24000'), ('OAKLAND PARK', 30966, '26.17000', '-80.14000'), ('PARKLAND', 13835, '26.31000', '-80.24000'), ('PEMBROKE PINES', 137427, '26.01000', '-80.34000'), ('PLANTATION', 4168, '26.12000', '-80.25000'), ('POMPANO BEACH', 78191, '26.23000', '-80.12000'), ('SAWGRASS MILLS MALL', None, '26.15000', '-80.32000'), ('SUNRISE', 85779, '26.17000', '-80.28000'), ('SUNSHINE RANCHES', 1704, '26.04000', '-80.33000'), ('TAMARAC', 55588, '26.21000', '-80.27000'), ('WESTON', 49286, '26.11000', '-80.39000'), ('WILTON MANORS', 12697, '26.16000', '-80.13000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'TXC411': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALGERITA', None, '31.22780', '-98.85280'), ('CHAPPEL', None, '31.05560', '-98.57060'), ('CHEROKEE', None, '30.98220', '-98.70720'), ('ELM GROVE', None, '31.42750', '-99.05560'), ('HALL', None, '31.28500', '-99.05140'), ('HARKEYVILLE', None, '31.21060', '-98.78530'), ('LOCKER', None, '31.37720', '-98.89670'), ('RICHLAND SPRINGS', 350, '31.26940', '-98.94470'), ('SAN SABA', 2637, '31.19560', '-98.71780'), ('SKEETERVILLE', None, '31.35390', '-98.96250'), ('SPRING CREEK', None, '31.35310', '-98.82170')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXC413': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ELDORADO', 1951, '30.86000', '-100.60060')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'ALC109': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BANKS', 224, '31.81430', '-85.83830'), ('BRUNDIDGE', 2341, '31.71890', '-85.81530'), ('GOSHEN', 300, '31.71960', '-86.12590'), ('TROY', 13935, '31.80410', '-85.96820')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'TXC415': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARAH', None, '32.76000', '-101.14000'), ('CHINA GROVE', 1247, '32.53000', '-100.82000'), ('DERMOTT', None, '32.86000', '-101.02000'), ('DUNN', None, '32.57000', '-100.89000'), ('FLUVANNA', None, '32.89000', '-101.15000'), ('HERMLEIGH', 393, '32.64000', '-100.76000'), ('HUDD', None, '32.93000', '-100.68000'), ('INADALE', None, '32.54000', '-100.68000'), ('IRA', None, '32.58000', '-101.00000'), ('KNAPP', None, '32.63190', '-101.13000'), ('MIDWAY', 288, '32.73000', '-100.68000'), ('RANDALLS CORNER', None, '32.72970', '-101.03110'), ('SNYDER', 10783, '32.71350', '-100.91510'), ('UNION', None, '32.73000', '-101.00000')], 'partOfState': '', 'wfo': 'MAF'}, -'FLC019': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ASBURY LAKE', 2228, '30.04890', '-81.82160'), ('BELLAIR-MEADOWBROOK TERRA', None, '30.18020', '-81.74360'), ('DOCTORS INLET', None, '30.12190', '-81.76710'), ('GREEN COVE SPRINGS', 5378, '29.98970', '-81.67890'), ('KEYSTONE HEIGHTS', 1349, '29.78000', '-82.03370'), ('KINGSLEY', None, '29.96550', '-81.99970'), ('LAKE GENEVA', None, '29.77190', '-82.01060'), ('LAKESIDE', 30927, '30.12970', '-81.76840'), ('MIDDLEBURG', 10338, '30.05050', '-81.90220'), ('ORANGE PARK', 9081, '30.16860', '-81.70470'), ('PENNEY FARMS', 580, '29.98080', '-81.81170')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'NCC043': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BRASSTOWN', None, '35.01580', '-83.91030'), ('HAYESVILLE', 297, '35.04630', '-83.81930'), ('SHOOTING CREEK', None, '35.03060', '-83.64970'), ('TUSQUITEE', None, '35.08330', '-83.76670')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'NCC041': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARROWHEAD BEACH', None, '36.22310', '-76.70000'), ('CAPE COLONY', None, '36.01940', '-76.58190'), ('CENTER HILL', None, '36.21480', '-76.60930'), ('CISCO', None, '36.18970', '-76.63420'), ('DRUMMOND POINT', None, '36.06000', '-76.43000'), ('EDENTON', 5394, '36.05580', '-76.60190'), ('GLIDEN', None, '36.30500', '-76.61440'), ('HANCOCK', None, '36.09900', '-76.62860'), ('ICARIA', None, '36.25580', '-76.62750'), ('MACEDONIA', None, '36.10170', '-76.66750'), ('MAVATON', None, '36.17390', '-76.64250'), ('MILL CROSSROADS', None, '36.22190', '-76.66830'), ('ROCKYHOCK', None, '36.18110', '-76.69240'), ('RYLAND', None, '36.27400', '-76.63490'), ('SAINT JOHNS', None, '36.03060', '-76.52690'), ('SIGN PINE', None, '36.30890', '-76.62440'), ('SMALLS CROSSROADS', None, '36.22580', '-76.65670'), ('SOMER', None, '36.06020', '-76.46620'), ('TYNER', None, '36.25140', '-76.63230'), ('VALHALLA', None, '36.13700', '-76.65780')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCC047': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BOLTON', 494, '34.32060', '-78.40220'), ('BRUNSWICK', 360, '34.29270', '-78.70720'), ('CERRO GORDO', 244, '34.32190', '-78.92670'), ('CHADBOURN', 2129, '34.32190', '-78.82720'), ('CHERRY GROVE', None, '34.23830', '-78.96580'), ('EVERGREEN', None, '34.40810', '-78.90190'), ('FAIR BLUFF', 1181, '34.31330', '-79.03750'), ('IRON HILL', None, '34.13830', '-78.78330'), ('LAKE WACCAMAW', 1411, '34.31890', '-78.50030'), ('NAKINA', None, '34.13440', '-78.66830'), ('OLD DOCK', None, '34.16780', '-78.59750'), ('PIREWAY', None, '34.02030', '-78.63810'), ('RIEGLEWOOD', None, '34.33330', '-78.21670'), ('SIDNEY', None, '34.18690', '-78.78940'), ('TABOR CITY', 2509, '34.14860', '-78.87690'), ('WHITEVILLE', 5148, '34.33860', '-78.70330')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCC045': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BELWOOD', 962, '35.47720', '-81.52120'), ('BOILING SPRINGS NC', None, '35.24890', '-81.66720'), ('CASAR', 308, '35.51290', '-81.61770'), ('EARL', 234, '35.19490', '-81.53430'), ('FALLSTON', 603, '35.42920', '-81.50240'), ('GROVER', 698, '35.17090', '-81.45170'), ('KINGS MOUNTAIN', 9693, '35.24150', '-81.34800'), ('KINGSTOWN', 845, '35.36250', '-81.62310'), ('LATTIMORE', 419, '35.31730', '-81.66200'), ('LAWNDALE', 642, '35.41410', '-81.56160'), ('MOORESBORO', 314, '35.29910', '-81.69960'), ('PATTERSON SPRINGS', 620, '35.23240', '-81.51750'), ('POLKVILLE', 535, '35.41690', '-81.64480'), ('SHELBY', 19477, '35.28890', '-81.54200'), ('WACO', 328, '35.36190', '-81.42930')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC049': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BRIDGETON', 328, '35.12240', '-77.02170'), ('COVE CITY', 433, '35.18840', '-77.32190'), ('DOVER', 443, '35.21610', '-77.43350'), ('HAVELOCK', 22442, '34.90740', '-76.89490'), ('JAMES CITY', 5420, '35.06550', '-77.01810'), ('NEUSE FOREST', 1426, '34.96360', '-76.94510'), ('NEW BERN', 23128, '35.11990', '-77.07880'), ('RIVER BEND', 2923, '35.07310', '-77.15220'), ('TRENT WOODS', 4192, '35.07790', '-77.09630'), ('VANCEBORO', 898, '35.30440', '-77.15760')], 'partOfState': '', 'wfo': 'MHX'}, -'WIC078': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('KESHENA', 1394, '44.88000', '-88.63000'), ('NEOPIT', 839, '44.98000', '-88.81000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIC079': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAYSIDE', 4518, '43.18290', '-87.90180'), ('BROWN DEER', 12170, '43.17500', '-87.97480'), ('CUDAHY', 18429, '42.94660', '-87.86480'), ('FOX POINT', 7012, '43.15850', '-87.90170'), ('FRANKLIN', 29494, '42.88630', '-88.00980'), ('GLENDALE', 13367, '43.13000', '-87.92760'), ('GREENDALE', 14405, '42.93570', '-88.00150'), ('GREENFIELD', 35476, '42.96280', '-88.00560'), ('HALES CORNERS', 7765, '42.94050', '-88.04930'), ('MILWAUKEE', 596974, '43.06330', '-87.96660'), ('OAK CREEK', 28456, '42.88230', '-87.89730'), ('RIVER HILLS', 1631, '43.17360', '-87.93510'), ('SHOREWOOD', 13763, '43.09130', '-87.88620'), ('SOUTH MILWAUKEE', 21256, '42.91290', '-87.86220'), ('ST. FRANCIS', 8662, '42.97070', '-87.87170'), ('WAUWATOSA', 47271, '43.06210', '-88.03360'), ('WEST ALLIS', 61254, '43.00720', '-88.03000'), ('WEST MILWAUKEE', 4201, '43.01290', '-87.97010'), ('WHITEFISH BAY', 14163, '43.11260', '-87.90090')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIC077': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ENDEAVOR', 440, '43.71470', '-89.46890'), ('MONTELLO', 1397, '43.79430', '-89.33440'), ('NESHKORO', 453, '43.96520', '-89.21390'), ('OXFORD', 536, '43.78020', '-89.56270'), ('WESTFIELD', 1217, '43.88460', '-89.49410')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WIC075': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AMBERG', None, '45.50000', '-88.00000'), ('ATHELSTANE', None, '45.43000', '-88.09000'), ('BEAVER', None, '45.13000', '-88.01000'), ('BEECHER', None, '45.57000', '-87.98000'), ('CALDRON FALLS RESERVOIR', None, '45.38000', '-88.26000'), ('COLEMAN', 716, '45.06000', '-88.03000'), ('CRIVITZ', 998, '45.23000', '-88.01000'), ('DUNBAR', None, '45.65000', '-88.18000'), ('GOODMAN', None, '45.63000', '-88.34000'), ('HARMONY', None, '45.09000', '-87.81000'), ('HIGH FALLS RESERVOIR', None, '45.29000', '-88.20000'), ('LOOMIS', None, '45.20000', '-87.90000'), ('MARINETTE', 11749, '45.09000', '-87.61000'), ('MCALLISTER', None, '45.33000', '-87.71000'), ('MIDDLE INLET', None, '45.29000', '-88.00000'), ('NIAGARA', 1880, '45.76000', '-88.00000'), ('PEMBINE', None, '45.63000', '-88.00000'), ('PESHTIGO', 3357, '45.04000', '-87.75000'), ('PORTERFIELD', None, '45.15000', '-87.80000'), ('POUND', 355, '45.09000', '-88.03000'), ('WAUSAUKEE', 572, '45.36000', '-87.94000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIC073': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ATHENS', 1095, '45.03000', '-90.08000'), ('BEVENT', None, '44.76000', '-89.38000'), ('BROKAW', 107, '45.03000', '-89.65000'), ('COLBY', 1616, '44.91000', '-90.30000'), ('EDGAR', 1386, '44.91000', '-89.96000'), ('ELDERON', 189, '44.78000', '-89.25000'), ('EVERGREEN', 3611, '44.84000', '-89.64000'), ('FENWOOD', 174, '44.86000', '-90.01000'), ('GALLOWAY', None, '44.71000', '-89.26000'), ('HALDER', None, '44.79000', '-89.86000'), ('HAMBURG', None, '45.08000', '-89.88000'), ('HATLEY', 476, '44.88000', '-89.33000'), ('HOGARTY', None, '45.03000', '-89.31000'), ('KNOWLTON', None, '44.71000', '-89.68000'), ('LITTLE CHICAGO', None, '45.04000', '-89.84000'), ('MARATHON CITY', 1640, '44.95000', '-89.84000'), ('MILAN', None, '44.97000', '-90.19000'), ('MOON', None, '44.76000', '-89.78000'), ('MOSINEE', 4063, '44.78000', '-89.69000'), ('NORRIE', None, '44.88000', '-89.25000'), ('NUTTERVILLE', None, '45.00000', '-89.50000'), ('PIKE LAKE', None, '44.81000', '-89.34000'), ('PONIATOWSKI', None, '44.98000', '-89.98000'), ('RIB FALLS', None, '44.96000', '-89.90000'), ('RIB MOUNTAIN', 6059, '44.91290', '-89.67540'), ('RIB MOUNTAIN STATE PARK', None, '44.92000', '-89.67000'), ('RINGLE', None, '44.90000', '-89.41000'), ('ROTHSCHILD', 4970, '44.88000', '-89.61000'), ('ROZELLVILLE', None, '44.75000', '-90.01000'), ('SCHOFIELD', 2117, '44.90000', '-89.59000'), ('SPENCER', 1932, '44.76000', '-90.28000'), ('STRATFORD', 1523, '44.79000', '-90.08000'), ('SUNSET', None, '44.98000', '-89.48000'), ('UNITY', 368, '44.84000', '-90.31000'), ('WAUSAU', 38426, '44.96000', '-89.63000'), ('WESTON', 12079, '44.89910', '-89.56950')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'WIC071': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRANCH', None, '44.15000', '-87.76000'), ('CATO', None, '44.15000', '-87.86000'), ('CLARKS MILLS', None, '44.08000', '-87.86000'), ('CLEVELAND', 1361, '43.91000', '-87.75000'), ('COLLINS', None, '44.08000', '-87.98000'), ('COOPERSTOWN', None, '44.31000', '-87.76000'), ('FRANCIS CREEK', 681, '44.20000', '-87.71000'), ('GRIMMS', None, '44.15000', '-87.90000'), ('KELLNERSVILLE', 374, '44.23000', '-87.80000'), ('KIEL', 3450, '43.91000', '-88.03000'), ('LARRABEE', None, '44.26000', '-87.71000'), ('MANITOWOC', 34053, '44.08000', '-87.66000'), ('MARIBEL', 264, '44.26000', '-87.80000'), ('MENCHALVILLE', None, '44.21000', '-87.88000'), ('MILLHOME', None, '43.90000', '-87.96000'), ('MISHICOT', 1422, '44.23000', '-87.63000'), ('OSMAN', None, '43.96000', '-87.81000'), ('POINT BEACH STATE FOREST', None, '44.21000', '-87.51000'), ('REEDSVILLE', 1187, '44.16000', '-87.96000'), ('ROSECRANS', None, '44.26000', '-87.83000'), ('SCHOOL HILL', None, '43.95000', '-87.90000'), ('SHOTO', None, '44.16000', '-87.65000'), ('SPRING VALLEY', 1189, '43.93000', '-87.83000'), ('ST NAZIANZ', None, '44.00000', '-87.91000'), ('TAUS', None, '44.18000', '-87.86000'), ('TWO CREEKS', None, '44.29000', '-87.56000'), ('TWO RIVERS', 12639, '44.15000', '-87.56000'), ('VALDERS', 948, '44.06000', '-87.88000'), ('WHITELAW', 730, '44.15000', '-87.83000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GRB'}, -'MSC161': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COFFEEVILLE', 930, '33.97670', '-89.67750'), ('OAKLAND', 586, '34.05310', '-89.91460'), ('SCOBEY', None, '33.93330', '-89.88330'), ('TILLATOBA', 121, '33.98490', '-89.89570'), ('VELMA', None, '34.06670', '-89.65000'), ('WATER VALLEY', 3677, '34.16160', '-89.63030')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSC163': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BENTONIA', 500, '32.64730', '-90.37020'), ('EDEN', 126, '32.98570', '-90.32320'), ('SATARTIA', 68, '32.67100', '-90.54390'), ('YAZOO CITY', 14550, '32.86140', '-90.40770')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'ASC050': {'fullStateName': 'AMERICAN SAMOA', 'state': 'AS', 'cities': [('AASU', None, '-14.30940', '-170.75670'), ('AFAO', None, '-14.33880', '-170.80070'), ('AOLOAU', None, '-14.29330', '-170.78140'), ('ASILI', None, '-14.33960', '-170.79470'), ("FAGALI'I", None, '-14.31010', '-170.82680'), ('FALENIU', None, '-14.33110', '-170.74350'), ('LEONE', None, '-14.34030', '-170.78370'), ('MALAEIMI', None, '-14.31470', '-170.73720'), ('MALAELOA/AITULAGI', None, '-14.33700', '-170.76560'), ('MALAELOA/ITUAU', None, '-14.34670', '-170.76890'), ('MALOATA', None, '-14.31140', '-170.81640'), ('MAPUSAGAFOU', None, '-14.32460', '-170.75060'), ('MESEPA', None, '-14.32600', '-170.74100'), ("PAVA'IA'I", None, '-14.33880', '-170.75310'), ('TAPUTIMU', None, '-14.35760', '-170.77010')], 'partOfState': '', 'wfo': 'PPG'}, -'TXC077': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELLEVUE', 386, '33.63420', '-98.01590'), ('BLUEGROVE', None, '33.67000', '-98.25000'), ('BUFFALO SPRINGS', 493, '33.55000', '-98.13000'), ('BYERS', 517, '34.07120', '-98.19020'), ('CHARLIE', None, '34.10000', '-98.32000'), ('DEAN', 341, '33.93330', '-98.36890'), ('DEER CREEK', None, '33.63000', '-98.28000'), ('HENRIETTA', 3264, '33.81680', '-98.19450'), ('HURNVILLE', None, '33.95000', '-98.17000'), ('JOLLY', 188, '33.87680', '-98.34590'), ('JOY', None, '33.57000', '-98.22000'), ('NEWPORT', None, '33.48000', '-98.02000'), ('PETROLIA', 782, '34.01300', '-98.23130'), ('RAYMOND', None, '33.88000', '-98.40000'), ('STANFIELD', None, '33.97000', '-98.00000'), ('THORNBERRY', None, '34.07000', '-98.38000'), ('VASHTI', None, '33.55000', '-98.05000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TXC075': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHILDRESS', 6778, '34.42450', '-100.24830'), ('KIRKLAND', None, '34.39190', '-100.06890'), ('TELL', None, '34.38000', '-100.39190')], 'partOfState': '', 'wfo': 'LUB'}, -'TXC073': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALTO', 1190, '31.65040', '-95.07090'), ('CUNEY', 145, '32.03820', '-95.41540'), ('GALLATIN', 378, '31.89510', '-95.15250'), ('JACKSONVILLE', 13868, '31.96530', '-95.26000'), ('NEW SUMMERFIELD', 998, '31.98520', '-95.10480'), ('RUSK', 5085, '31.79760', '-95.14850'), ('WELLS', 769, '31.49180', '-94.94670')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXC071': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANAHUAC', 2210, '29.76480', '-94.67830'), ('COVE', 323, '29.81320', '-94.82490'), ('MONT BELVIEU', 2324, '29.85160', '-94.88110'), ('OLD RIVER-WINFREE', 1364, '29.87830', '-94.82430'), ('STOWELL', 1572, '29.78550', '-94.37990'), ('WINNIE', 2914, '29.81670', '-94.38020')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'LAC063': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DENHAM SPRINGS', 8757, '30.47970', '-90.95930'), ('KILLIAN', 1053, '30.35020', '-90.57830'), ('LIVINGSTON', 1342, '30.50220', '-90.74520'), ('SPRINGFIELD', 395, '30.42650', '-90.54260'), ('WALKER', 4801, '30.48440', '-90.86600'), ('WATSON', None, '30.57560', '-90.95310'), ('WHITEHALL', None, '30.28330', '-90.70030')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'TXC079': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLEDSOE', None, '33.61910', '-103.02080'), ('LEHMAN', None, '33.62700', '-102.79190'), ('MORTON', 2249, '33.72460', '-102.75820'), ('WHITEFACE', 465, '33.59920', '-102.61250'), ('WHITEFACE', 465, '33.60000', '-102.61330')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'MOC510': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ST. LOUIS', 348189, '38.63600', '-90.24430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'OKC129': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ANGORA', None, '35.83000', '-99.45000'), ('CHEYENNE', 778, '35.61140', '-99.67700'), ('CRAWFORD', None, '35.83000', '-99.80000'), ('DEMPSEY', None, '35.52000', '-99.82000'), ('DURHAM', None, '35.83000', '-99.92000'), ('HAMMON', 469, '35.63230', '-99.38340'), ('HERRING', None, '35.60000', '-99.52000'), ('RANKIN', None, '35.63000', '-99.93000'), ('REYDON', 177, '35.65010', '-99.92370'), ('ROLL', None, '35.78000', '-99.72000'), ('STRONG CITY', 42, '35.67010', '-99.60010')], 'partOfState': '', 'wfo': 'OUN'}, -'OKC123': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ADA', 15691, '34.77700', '-96.66040'), ('AHLOSO', None, '34.78000', '-96.70000'), ('ALLEN', 951, '34.87830', '-96.41400'), ('BYNG', 1090, '34.86940', '-96.66360'), ('FITTSTOWN', None, '34.62000', '-96.63000'), ('FITZHUGH', 204, '34.66230', '-96.77560'), ('FRANCIS', 332, '34.87490', '-96.59260'), ('JESSE', None, '34.58000', '-96.53000'), ('LAWRENCE', None, '34.68000', '-96.72000'), ('LULA', None, '34.70000', '-96.43000'), ('ROFF', 734, '34.62890', '-96.84110'), ('STEEDMAN', None, '34.82000', '-96.47000'), ('STONEWALL', 465, '34.65200', '-96.52500'), ('VANOSS', None, '34.77000', '-96.87000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OUN'}, -'OKC121': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MCALESTER', 17783, '34.93330', '-95.76940'), ('KIOWA', 693, '34.72060', '-95.89890'), ('PITTSBURG', 280, '34.71310', '-95.84970'), ('BLANCO', None, '34.75110', '-95.77420'), ('ASHLAND', 53, '34.76780', '-96.06940'), ('SAVANNA', 730, '34.82890', '-95.84360'), ('HARTSHORNE', 2102, '34.84500', '-95.55720'), ('HAILEYVILLE', 891, '34.85440', '-95.58190'), ('DOW', None, '34.87670', '-95.60000'), ('HAYWOOD', None, '34.88720', '-95.94810'), ('BACHE', None, '34.89420', '-95.64830'), ('ALDERSON', 261, '34.90000', '-95.69170'), ('KREBS', 2051, '34.92780', '-95.71560'), ('ARPELAR', None, '34.94190', '-95.96530'), ('SCIPIO', None, '35.05470', '-95.95640'), ('BLOCKER', None, '35.06140', '-95.56810'), ('FEATHERSTON', None, '35.07860', '-95.48970'), ('CROWDER', 436, '35.12390', '-95.66970'), ('QUINTON', 1071, '35.12280', '-95.37080'), ('INDIANOLA', 191, '35.16280', '-95.77440'), ('CANADIAN', 239, '35.17720', '-95.65500')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKC127': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('SOBOL', None, '34.16110', '-95.23830'), ('ANTLERS', 2552, '34.23110', '-95.62000'), ('CLAYTON', 719, '34.58940', '-95.35250'), ('CORINNE', None, '34.18580', '-95.29110'), ('DELA', None, '34.20030', '-95.52190'), ('RATTAN', 241, '34.20030', '-95.41280'), ('CLOUDY', None, '34.30190', '-95.28080'), ('MOYERS', None, '34.32610', '-95.65330'), ('FINLEY', None, '34.32830', '-95.49470'), ('KOSOMA', None, '34.34830', '-95.61280'), ('SNOW', None, '34.39580', '-95.41250'), ('NASHOBA', None, '34.48190', '-95.21500'), ('STANLEY', None, '34.54000', '-95.46940'), ('TUSKAHOMA', None, '34.61780', '-95.27640'), ('KIAMICHI', None, '34.63530', '-95.17860'), ('ALBION', 143, '34.66280', '-95.09970'), ('OLETA', None, '34.19940', '-95.34360'), ('DARWIN', None, '34.24780', '-95.77920'), ('KELLOND', None, '34.26360', '-95.64000'), ('EUBANKS', None, '34.42190', '-95.58470'), ('DUNBAR', None, '34.45860', '-95.56030'), ('SARDIS', None, '34.66580', '-95.40940')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKC125': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ASHER', 419, '34.98820', '-96.92440'), ('AYDELOTTE', None, '35.45000', '-96.92000'), ('BETHEL ACRES', 2735, '35.31130', '-97.04490'), ('BROOKSVILLE', 90, '35.21410', '-96.95570'), ('CHISNEY', None, '35.14400', '-96.92400'), ('DALE', None, '35.38000', '-97.05000'), ('EARLSBORO', 633, '35.32580', '-96.79800'), ('HARJO', None, '35.22000', '-96.83000'), ('JOHNSON', 223, '35.40510', '-96.84260'), ('MACOMB', 61, '35.14780', '-97.00810'), ('MAUD', 1136, '35.13270', '-96.77850'), ('MCLOUD', 3548, '35.41210', '-97.09810'), ('PEARSON', None, '35.07000', '-96.93000'), ('PINK', 1165, '35.23210', '-97.10680'), ('SHAWNEE', 28692, '35.33650', '-96.91540'), ('ST. LOUIS', 206, '35.07970', '-96.85280'), ('TECUMSEH', 6098, '35.26330', '-96.93320'), ('TRIBBEY', 273, '35.09270', '-97.09150'), ('TROUSDALE', None, '35.03000', '-97.05000'), ('WANETTE', 402, '34.96260', '-97.03090')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'KYC159': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADD', None, '37.91010', '-82.55210'), ('ANDY', None, '37.83150', '-82.47190'), ('BEAUTY', None, '37.83960', '-82.43780'), ('BRADBURY', None, '37.81560', '-82.50450'), ('CALF CREEK', None, '37.92320', '-82.49540'), ('COALPOINT', None, '37.78440', '-82.44460'), ('DAVELLA', None, '37.79580', '-82.57210'), ('DAVISPORT', None, '37.81460', '-82.59990'), ('DEBORD', None, '37.82720', '-82.55200'), ('DELONG', None, '37.81030', '-82.56490'), ('HODE', None, '37.88550', '-82.43000'), ('INEZ', 466, '37.86610', '-82.53750'), ('JOB', None, '37.93320', '-82.53290'), ('LAURA', None, '37.72420', '-82.44170'), ('LOVELY', None, '37.82690', '-82.45000'), ('MCCLURE', None, '37.76560', '-82.48770'), ('MILO', None, '37.91340', '-82.56160'), ('MOREE', None, '37.71880', '-82.50370'), ('OPPY', None, '37.80160', '-82.38700'), ('PEVIER', None, '37.82670', '-82.56340'), ('PILGRIM', None, '37.79800', '-82.42030'), ('PLEASANT', None, '37.73830', '-82.57390'), ('PREECE', None, '37.80180', '-82.51950'), ('PRINCE', None, '37.78370', '-82.52490'), ('STIDHAM', None, '37.88410', '-82.58300'), ('THREEFORKS', None, '37.70640', '-82.46040'), ('TOMAHAWK', None, '37.87030', '-82.59190'), ('WARFIELD', 284, '37.83870', '-82.42320'), ('WELLS', None, '37.89770', '-82.58120')], 'partOfState': 'NORTHEAST', 'wfo': 'JKL'}, -'KYC151': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEREA', 9851, '37.57670', '-84.29360'), ('BIG HILL', None, '37.55000', '-84.21670'), ('BYBEE', None, '37.73330', '-84.11670'), ('KINGSTON', None, '37.65000', '-84.25000'), ('KIRKSVILLE', None, '37.66670', '-84.41670'), ('REDHOUSE', None, '37.83330', '-84.26670'), ('RICHMOND', 27152, '37.74280', '-84.29360'), ('VALLEY VIEW', None, '37.83330', '-84.43330'), ('WACO', None, '37.73330', '-84.15000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYC153': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHANNA', None, '37.77530', '-83.18360'), ('BLOOMINGTON', None, '37.81690', '-83.14420'), ('BRADLEY', None, '37.71030', '-83.00670'), ('BROWNLOW', None, '37.79790', '-83.00920'), ('BURNING FORK', None, '37.73330', '-83.02330'), ('CARVER', None, '37.64480', '-83.04890'), ('CARVER STATION', None, '37.63180', '-83.05580'), ('CISCO', None, '37.83460', '-83.12810'), ('CONLEY', None, '37.75170', '-82.97830'), ('CONLEY STATION', None, '37.66910', '-83.04240'), ('COON', None, '37.83040', '-83.05820'), ('CORNELIA', None, '37.66320', '-83.20450'), ('CUTUNO', None, '37.71810', '-83.24330'), ('CYRUS', None, '37.79400', '-83.03830'), ('DALE', None, '37.69330', '-83.23180'), ('DUCO', None, '37.60790', '-83.03030'), ('ELSIE', None, '37.77830', '-83.13400'), ('EMMA', None, '37.81320', '-83.05670'), ('EPSON', None, '37.74470', '-83.21830'), ('EUGENE', None, '37.68040', '-83.18590'), ('EVER', None, '37.85410', '-83.05460'), ('FALCON', None, '37.78970', '-83.00190'), ('FLAT FORK', None, '37.83550', '-83.03320'), ('FORAKER', None, '37.66000', '-83.13720'), ('FREDVILLE', None, '37.60550', '-82.96500'), ('FRITZ', None, '37.70140', '-83.15170'), ('GALDIA', None, '37.63000', '-82.95920'), ('GAPVILLE', None, '37.63000', '-82.95920'), ('GIFFORD', None, '37.76220', '-83.12210'), ('GRAYFOX', None, '37.86370', '-83.05350'), ('GULLETT', None, '37.73900', '-83.12560'), ('GUNLOCK', None, '37.54820', '-82.92560'), ('GYPSY', None, '37.66250', '-82.96390'), ('HAGER', None, '37.74640', '-83.19940'), ('HALEBURG', None, '37.87310', '-83.10380'), ('HARPER', None, '37.79750', '-83.19700'), ('HENDRICKS', None, '37.68960', '-83.12490'), ('IVYTON', None, '37.70890', '-82.97860'), ('KERNIE', None, '37.75670', '-83.16810'), ('LACEY', None, '37.86080', '-83.03080'), ('LAKESVILLE', None, '37.71970', '-83.07010'), ('LEATHA', None, '37.81580', '-83.01680'), ('LICKSBURG', None, '37.79190', '-83.08470'), ('LOGVILLE', None, '37.87220', '-83.10950'), ('LYKINS', None, '37.77810', '-83.22190'), ('MAGGARD', None, '37.81880', '-83.09940'), ('MARSHALLVILLE', None, '37.67810', '-82.98940'), ('MARY', None, '37.86090', '-83.08110'), ('MASHFORK', None, '37.75920', '-82.99990'), ('MASON', None, '37.72060', '-83.05000'), ('MID', None, '37.52320', '-82.90110'), ('NETTY', None, '37.74690', '-83.23860'), ('ORCHARD', None, '37.56340', '-82.92550'), ('ORDWAY', None, '37.58910', '-82.96230'), ('ORIENT', None, '37.85010', '-83.10950'), ('OVA', None, '37.72530', '-83.17150'), ('PATTON', None, '37.77930', '-83.15470'), ('PERLIE', None, '37.79790', '-83.05500'), ('PLUTARCH', None, '37.84000', '-83.08850'), ('PUNCHEON', None, '37.69180', '-83.19640'), ('QUOD', None, '37.84740', '-83.04300'), ('ROYALTON', None, '37.67580', '-83.02210'), ('SALYERSVILLE', 1604, '37.74680', '-83.06370'), ('SEILTZ', None, '37.69560', '-83.19650'), ('SKAGGS', None, '37.68120', '-83.03330'), ('STELLA', None, '37.73780', '-83.16610'), ('STRINGTOWN', None, '37.76440', '-83.04750'), ('SUBLETT', None, '37.67780', '-83.03570'), ('SWAMPTON', None, '37.65860', '-83.01140'), ('TELLA', None, '37.82060', '-83.08570'), ('TIPTOP', None, '37.61390', '-83.06110'), ('WALDO', None, '37.57660', '-82.97670'), ('WEST ROYALTON STATION', None, '37.68070', '-83.02990'), ('WHEELERSBURG', None, '37.82650', '-83.01080'), ('WONNIE', None, '37.80920', '-83.15420')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC155': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRADFORDSVILLE', 304, '37.49540', '-85.14820'), ('GRAVEL SWITCH', None, '37.58330', '-85.05000'), ('HOLY CROSS', None, '37.66670', '-85.45000'), ('LEBANON', 5718, '37.56700', '-85.25440'), ('LORETTO', 623, '37.63550', '-85.40210'), ('NERINX', None, '37.66000', '-85.42000'), ('NEW MARKET', None, '37.50000', '-85.31670'), ('RAYWICK', 144, '37.55970', '-85.43120'), ('ST. FRANCIS', None, '37.61670', '-85.43330'), ('ST. MARY', None, '37.58330', '-85.35000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYC157': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AURORA', None, '36.77660', '-88.14410'), ('BENTON', 4197, '36.85290', '-88.35810'), ('BREWERS', None, '36.77130', '-88.43880'), ('CALVERT CITY', 2701, '37.03330', '-88.35290'), ('HARDIN', 564, '36.76430', '-88.30150')], 'partOfState': '', 'wfo': 'PAH'}, -'NCC191': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BROGDEN', 2907, '35.29660', '-78.02530'), ('ELROY', 3896, '35.33400', '-77.92060'), ('EUREKA', 244, '35.54090', '-77.87750'), ('FREMONT', 1463, '35.54330', '-77.97600'), ('GOLDSBORO', 39043, '35.37380', '-77.97610'), ('GRANTHAM', None, '35.30000', '-78.17000'), ('MAR-MAC', 3004, '35.33490', '-78.05600'), ('MOUNT OLIVE', 4567, '35.19640', '-78.06770'), ('NAHUNTA', None, '35.50000', '-78.06000'), ('PIKEVILLE', 719, '35.49750', '-77.98430'), ('SEVEN SPRINGS', 86, '35.22540', '-77.84600'), ('WALNUT CREEK', 859, '35.30860', '-77.86890')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NDC015': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ARENA', None, '47.13330', '-100.16670'), ('BISMARCK', 55532, '46.80550', '-100.76730'), ('DRISCOLL', None, '46.85000', '-100.13330'), ('LINCOLN', 1730, '46.76510', '-100.70090'), ('MCKENZIE', None, '46.81670', '-100.40000'), ('MENOKEN', None, '46.81670', '-100.51670'), ('MOFFIT', None, '46.68330', '-100.28330'), ('REGAN', 43, '47.15730', '-100.52750'), ('STERLING', None, '46.81670', '-100.28330'), ('WING', 124, '47.14260', '-100.28220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NCC195': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BLACK CREEK', 714, '35.63580', '-77.93350'), ('ELM CITY', 1165, '35.80890', '-77.86290'), ('LUCAMA', 847, '35.64350', '-78.00860'), ('NEW HOPE', None, '35.80000', '-77.95000'), ('SARATOGA', 379, '35.65350', '-77.77680'), ('SIMS', 128, '35.76040', '-78.05890'), ('STANTONSBURG', 726, '35.60450', '-77.82020'), ('WILLBANKS', None, '35.75000', '-77.77000'), ('WILSON', 44405, '35.73180', '-77.92450')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NDC011': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BOWMAN', 1600, '46.18380', '-103.39980'), ('GASCOYNE', 23, '46.11750', '-103.07920'), ('RHAME', 189, '46.23400', '-103.65420'), ('SCRANTON', 304, '46.14780', '-103.14240')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NCC199': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BURNSVILLE', 1623, '35.91650', '-82.29790'), ('BUSICK', None, '35.76970', '-82.18310'), ('CELO', None, '35.85500', '-82.19810'), ('MICAVILLE', None, '35.90940', '-82.21330'), ('MOUNT MITCHELL STATE PARK', None, '35.77080', '-82.26330'), ('RAMSEYTOWN', None, '36.00060', '-82.35750'), ('SWISS', None, '35.91420', '-82.45000')], 'partOfState': '', 'wfo': 'GSP'}, -'NDC019': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALSEN', 68, '48.62950', '-98.70540'), ('CALIO', 24, '48.62360', '-98.93790'), ('CALVIN', 26, '48.85120', '-98.93700'), ('CLYDE', None, '48.77000', '-98.89860'), ('DRESDEN', None, '48.82750', '-98.48080'), ('HANNAH', 20, '48.97310', '-98.69020'), ('LANGDON', 2101, '48.76260', '-98.37290'), ('LOMA', 21, '48.63790', '-98.52500'), ('MAIDA', None, '48.99860', '-98.36440'), ('MILTON', 85, '48.62720', '-98.04370'), ('MOUNT CARMEL', None, '48.93500', '-98.38640'), ('MUNICH', 268, '48.66910', '-98.83220'), ('NEKOMA', 51, '48.57610', '-98.37610'), ('OLGA', None, '48.79830', '-98.03750'), ('OSNABROCK', 174, '48.67020', '-98.14890'), ('UNION', None, '48.55780', '-97.94860'), ('VANG', None, '48.90580', '-98.12440'), ('WALES', 30, '48.89410', '-98.60140')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'WYC019': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BARNUM', None, '43.66000', '-106.91000'), ('BUFFALO', 3900, '44.34230', '-106.71740'), ('KAYCEE', 249, '43.70980', '-106.63770'), ('LINCH', None, '43.61000', '-106.20000'), ('MAYOWORTH', None, '43.83000', '-106.79000'), ('SUSSEX', None, '43.70000', '-106.29000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RIW'}, -'OKC019': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALPERS', None, '34.48000', '-97.38000'), ('ARDMORE', 23711, '34.19070', '-97.11970'), ('BAUM', None, '34.25000', '-96.97000'), ('CLEMSCOT', None, '34.35000', '-97.45000'), ('DICKSON', 1139, '34.18870', '-96.99410'), ('DUNDEE', None, '34.23000', '-97.55000'), ('DURWOOD', None, '34.17000', '-96.97000'), ('FOX', None, '34.35000', '-97.48000'), ('GENE AUTRY', 99, '34.28480', '-97.03770'), ('GRAHAM', None, '34.33000', '-97.43000'), ('HEALDTON', 2786, '34.23350', '-97.48680'), ('LONE GROVE', 4631, '34.18980', '-97.27380'), ('MILO', None, '34.33000', '-97.33000'), ('POOLEVILLE', None, '34.42000', '-97.40000'), ('PRUITT', None, '34.41600', '-97.50800'), ('RATLIFF CITY', 131, '34.44860', '-97.51200'), ('SPRINGER', 577, '34.28650', '-97.12040'), ('TATUMS', 172, '34.47940', '-97.46530'), ('TUSSY', None, '34.50000', '-97.54100'), ('WILSON', 1584, '34.15890', '-97.43250'), ('WIRT', None, '34.23000', '-97.53000'), ('WOODFORD', None, '34.33000', '-97.28000')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'OKC017': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CALUMET', 535, '35.60140', '-98.12370'), ('CONCHO', None, '35.62000', '-98.00000'), ('EL RENO', 16212, '35.54450', '-97.96510'), ('MUSTANG', 13156, '35.39260', '-97.72270'), ('NILES', None, '35.43000', '-98.25000'), ('OKARCHE', 1110, '35.72750', '-97.97710'), ('PIEDMONT', 3650, '35.67450', '-97.75370'), ('UNION CITY', 1375, '35.40140', '-97.89850'), ('YUKON', 21043, '35.51680', '-97.76850')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'OKC015': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALBERT', None, '35.23000', '-98.40000'), ('ALFALFA', None, '35.21890', '-98.60690'), ('ANADARKO', 6645, '35.06600', '-98.24410'), ('APACHE', 1616, '34.89390', '-98.35820'), ('BINGER', 708, '35.30920', '-98.34370'), ('BOONE', None, '34.90000', '-98.47000'), ('BRIDGEPORT', 109, '35.54870', '-98.37740'), ('CARNEGIE', 1637, '35.10430', '-98.59930'), ('CEMENT', 530, '34.93630', '-98.13620'), ('COGAR', None, '35.33000', '-98.13000'), ('CYRIL', 1168, '34.89940', '-98.20220'), ('EAKLY', 276, '35.30630', '-98.55570'), ('FORT COBB', 667, '35.10000', '-98.44140'), ('GRACEMONT', 336, '35.18780', '-98.25650'), ('HINTON', 2175, '35.49560', '-98.35960'), ('HYDRO', 1060, '35.54880', '-98.57860'), ('LOOKEBA', 131, '35.36480', '-98.36540'), ('STECKER', None, '34.95000', '-98.32000'), ('WASHITA', None, '35.10000', '-98.33000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OKC013': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ACHILLE', 506, '33.83450', '-96.38990'), ('ALBANY', None, '33.88000', '-96.17000'), ('ARMSTRONG', 141, '34.05240', '-96.34390'), ('BENNINGTON', 289, '34.00390', '-96.03730'), ('BLUE', None, '34.00000', '-96.23000'), ('BOKCHITO', 564, '34.01830', '-96.14140'), ('BROWN', None, '34.08000', '-96.48000'), ('CADDO', 944, '34.13130', '-96.26910'), ('CALERA', 1739, '33.93460', '-96.43070'), ('CARTWRIGHT', None, '33.85000', '-96.57000'), ('COBB', None, '34.08000', '-96.40000'), ('COLBERT', 1065, '33.85740', '-96.50420'), ('DURANT', 13549, '33.98410', '-96.39230'), ('KEMP', 144, '33.76900', '-96.35460'), ('KENEFIC', 192, '34.14860', '-96.36030'), ('MATOY', None, '34.13000', '-96.07000'), ('MEAD', 123, '34.00070', '-96.51130'), ('ROBERTA', None, '33.93000', '-96.30000'), ('SILO', 282, '34.03510', '-96.47540'), ('UTICA', None, '33.90000', '-96.22000'), ('WADE', None, '33.88000', '-96.08000'), ('YUBA', None, '33.80000', '-96.20000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'OKC011': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CANTON', 618, '36.05600', '-98.58860'), ('CANTON LAKE', None, '36.12000', '-98.62000'), ('CARLETON', None, '36.02000', '-98.52000'), ('EAGLE CITY', None, '35.93000', '-98.58000'), ('GEARY', 1258, '35.62940', '-98.31780'), ('GREENFIELD', 123, '35.72870', '-98.37710'), ('HITCHCOCK', 141, '35.96840', '-98.34890'), ('HOMESTEAD', None, '36.15000', '-98.40000'), ('LONGDALE', 310, '36.13430', '-98.55020'), ('OKEENE', 1240, '36.11650', '-98.31810'), ('SOUTHARD', None, '36.03600', '-98.47500'), ('WATONGA', 4658, '35.84920', '-98.41220')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'INC011': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ADVANCE', 562, '39.99520', '-86.62040'), ('LEBANON', 14222, '40.05160', '-86.47350'), ('THORNTOWN', 1562, '40.12870', '-86.61010'), ('ULEN', 123, '40.06420', '-86.46340'), ('WHITESTOWN', 471, '39.99560', '-86.34640'), ('ZIONSVILLE', 8775, '39.95240', '-86.27270')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'INC013': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('NASHVILLE', 825, '39.20380', '-86.23600')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'IND'}, -'IAC193': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANTHON', 649, '42.38770', '-95.86610'), ('BRONSON', 269, '42.40950', '-96.21130'), ('CORRECTIONVILLE', 851, '42.47820', '-95.78340'), ('DANBURY', 384, '42.23720', '-95.72150'), ('HORNICK', 253, '42.23100', '-96.09630'), ('LAWTON', 697, '42.47890', '-96.18440'), ('MOVILLE', 1583, '42.48960', '-96.06680'), ('OTO', 145, '42.28150', '-95.89380'), ('PIERSON', 371, '42.54370', '-95.86690'), ('SALIX', 370, '42.30950', '-96.28660'), ('SERGEANT BLUFF', 3321, '42.40070', '-96.35560'), ('SIOUX CITY', 85013, '42.50020', '-96.39400'), ('SLOAN', 1032, '42.23430', '-96.22410'), ('SMITHLAND', 221, '42.22910', '-95.93160')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAC191': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLUFFTON', None, '43.39781', '-91.93425'), ('BURR OAK', None, '43.44730', '-91.88292'), ('CALMAR', 1058, '43.17940', '-91.86690'), ('CASTALIA', 175, '43.11190', '-91.67640'), ('CONOVER', None, '43.21452', '-91.91775'), ('DECORAH', 8172, '43.30530', '-91.79330'), ('FESTINA', None, '43.11921', '-91.86826'), ('FORT ATKINSON', 389, '43.14410', '-91.93470'), ('FRANKVILLE', None, '43.18153', '-91.63549'), ('HESPER', None, '43.48029', '-91.78578'), ('HIGHLANDVILLE', None, '43.44913', '-91.68497'), ('JACKSON JUNCTION', 60, '43.10330', '-92.04800'), ('KENDALLVILLE', None, '43.43080', '-92.03322'), ('LOCUST', None, '43.41614', '-91.73263'), ('NORDNESS', None, '43.23102', '-91.78395'), ('OSSIAN', 853, '43.14680', '-91.76450'), ('RIDGEWAY', 293, '43.29720', '-91.99110'), ('SATTRE', None, '43.39964', '-91.65015'), ('SPILLVILLE', 386, '43.20400', '-91.95190')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'INC019': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BENNETTSVILLE', None, '38.43330', '-85.80000'), ('BORDEN', 818, '38.46670', '-85.95000'), ('CARWOOD', None, '38.45000', '-85.86670'), ('CEMENTVILLE', None, '38.35000', '-85.75000'), ('CHARLESTOWN', 5993, '38.45380', '-85.66810'), ('CLARKSVILLE', 21400, '38.31640', '-85.76540'), ('HAMBURG', None, '38.38330', '-85.76670'), ('HENRYVILLE', 1545, '38.53330', '-85.76670'), ('JEFFERSONVILLE', 27362, '38.30090', '-85.72660'), ('MARYSVILLE', None, '38.58330', '-85.65000'), ('MEMPHIS', 400, '38.48330', '-85.76670'), ('NEW MARKET', 659, '38.53330', '-85.61670'), ('NEW PROVIDENCE', None, '38.45790', '-85.92080'), ('NEW WASHINGTON', 547, '38.56670', '-85.55000'), ('OTISCO', None, '38.53330', '-85.66670'), ('OTTO', None, '38.56670', '-85.46670'), ('OWEN', None, '38.47000', '-85.53330'), ('SELLERSBURG', 6071, '38.39090', '-85.75720'), ('SOLON', None, '38.50000', '-85.53330'), ('SPEED', None, '38.41670', '-85.75000'), ('STARLIGHT', None, '38.41670', '-85.90000'), ('UNDERWOOD', None, '38.59000', '-85.78330'), ('UTICA', 591, '38.33330', '-85.66000'), ('WATSON', None, '38.35000', '-85.70000'), ('WILSON', None, '38.45000', '-85.83330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'AKC070': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALEKNAGIK', 221, '59.28550', '-158.62900'), ('CLARKS POINT', None, '58.84570', '-158.51570'), ('DILLINGHAM', 2466, '59.06220', '-158.52800'), ('EKWOK', 130, '59.36020', '-157.47940'), ('KOLIGANEK', 182, '59.73610', '-157.26630'), ('MANOKOTAK', 399, '59.00960', '-158.98970'), ('NEW STUYAHOK', 471, '59.47320', '-157.26200'), ('TWIN HILLS', 69, '59.07950', '-160.21020')], 'partOfState': '', 'wfo': 'AFC'}, -'NJC039': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BERKELEY HEIGHTS', 13407, '40.67550', '-74.42510'), ('CLARK', 14597, '40.62100', '-74.31150'), ('CRANFORD', 22578, '40.65620', '-74.30410'), ('ELIZABETH', 120568, '40.66640', '-74.19420'), ('FANWOOD', 7174, '40.64180', '-74.38570'), ('GARWOOD', 4153, '40.65120', '-74.32410'), ('HILLSIDE', 21747, '40.69620', '-74.23030'), ('KENILWORTH', 7675, '40.67890', '-74.28890'), ('LINDEN', 39394, '40.62510', '-74.23840'), ('MOUNTAINSIDE', 6602, '40.68060', '-74.36100'), ('NEW PROVIDENCE', 11907, '40.70040', '-74.40350'), ('PLAINFIELD', 47829, '40.61530', '-74.41650'), ('RAHWAY', 26500, '40.60700', '-74.28140'), ('ROSELLE', 21274, '40.65210', '-74.26080'), ('ROSELLE PARK', 13281, '40.66560', '-74.26710'), ('SCOTCH PLAINS', 22732, '40.63310', '-74.37350'), ('SPRINGFIELD', 14429, '40.69950', '-74.32500'), ('SUMMIT', 21131, '40.71490', '-74.36540'), ('UNION', 54405, '40.69530', '-74.26970'), ('WESTFIELD', 29644, '40.65160', '-74.34420')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'UTC013': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ALTAMONT', 178, '40.35860', '-110.28630'), ('ALTONAH', None, '40.40000', '-110.30000'), ('ARCADIA', None, '40.23000', '-110.23000'), ('BRIDGELAND', None, '40.17000', '-110.23000'), ('CEDARVIEW', None, '40.37000', '-110.05000'), ('DUCHESNE', 1408, '40.17540', '-110.39250'), ('FRUITLAND', None, '40.22000', '-110.83000'), ('HANNA', None, '40.40000', '-110.77000'), ('KINGS PEAK', None, '40.78000', '-110.38000'), ('MOUNTAIN HOME', None, '40.40000', '-110.38000'), ('MYTON', 539, '40.19350', '-110.06180'), ('NEOLA', 533, '40.44030', '-110.03670'), ('ROOSEVELT', 4299, '40.29550', '-110.00000'), ('TABIONA', 149, '40.35390', '-110.70860'), ('TALMAGE', None, '40.33000', '-110.43000'), ('UPALCO', None, '40.28000', '-110.22000'), ('UTAHN', None, '40.27000', '-110.43000')], 'partOfState': '', 'wfo': 'SLC'}, -'UTC011': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BOUNTIFUL', 41301, '40.87610', '-111.86520'), ('CENTERVILLE', 14585, '40.92660', '-111.87000'), ('CLEARFIELD', 25974, '41.10450', '-112.02260'), ('CLINTON', 12585, '41.14100', '-112.06260'), ('EAST LAYTON', None, '41.08000', '-111.92000'), ('FARMINGTON', 12081, '40.98870', '-111.88000'), ('FRUIT HEIGHTS', 4701, '41.02830', '-111.90570'), ('HILL AFB', None, '41.11670', '-111.96670'), ('KAYSVILLE', 20351, '41.03070', '-111.92430'), ('LAYTON', 58474, '41.07800', '-111.95460'), ('NORTH SALT LAKE', 8749, '40.83000', '-111.91960'), ('SOUTH WEBER', 4260, '41.13390', '-111.93490'), ('SUNSET', 5204, '41.13870', '-112.02720'), ('SYRACUSE', 9398, '41.09620', '-112.05740'), ('WEST POINT', 6033, '41.12150', '-112.09710'), ('WOODS CROSS', 6419, '40.87360', '-111.90900')], 'partOfState': '', 'wfo': 'SLC'}, -'MOC209': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLUE EYE', 36, '36.49600', '-93.39690'), ('BLUE EYE', 129, '36.49910', '-93.39580'), ('CAPE FAIR', None, '36.72990', '-93.51000'), ('CRANE', 1390, '36.90520', '-93.57130'), ('ELSEY', None, '36.85410', '-93.54050'), ('GALENA', 451, '36.80520', '-93.46630'), ('HURLEY', 157, '36.93130', '-93.49880'), ('INDIAN POINT', 588, '36.64070', '-93.34690'), ('KIMBERLING CITY', 2253, '36.63330', '-93.41660'), ('LAMPE', None, '36.56360', '-93.43770'), ('PONCE DE LEON', None, '36.87570', '-93.35130'), ('REEDS SPRING', 465, '36.74960', '-93.37770'), ('SILVER DOLLAR CITY', None, '36.66770', '-93.33940')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC205': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BETHEL', 121, '39.87820', '-92.02270'), ('CLARENCE', 915, '39.74300', '-92.26030'), ('EMDEN', None, '39.79640', '-91.86280'), ('HUNNEWELL', 227, '39.66830', '-91.85890'), ('LEONARD', 66, '39.89520', '-92.18070'), ('MAUD', None, '39.63340', '-92.19540'), ('SHELBINA', 1943, '39.69230', '-92.03970'), ('SHELBYVILLE', 682, '39.80710', '-92.03970')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'MOC207': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ADVANCE', 1244, '37.10360', '-89.91450'), ('BAKER', 5, '36.77360', '-89.76140'), ('BELL CITY', 461, '37.02380', '-89.81940'), ('BERNIE', 1777, '36.67200', '-89.97050'), ('BLOOMFIELD', 1952, '36.88860', '-89.93160'), ('DEXTER', 7356, '36.79040', '-89.96030'), ('DUDLEY', 289, '36.78910', '-90.09140'), ('ESSEX', 524, '36.81200', '-89.86240'), ('FISK', 363, '36.78220', '-90.20740'), ('PENERMON', 75, '36.79330', '-89.82960'), ('PUXICO', 1145, '36.95070', '-90.15900')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOC201': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BENTON', 732, '37.09800', '-89.56210'), ('BLODGETT', 265, '37.00430', '-89.52620'), ('CHAFFEE', 3044, '37.18040', '-89.66130'), ('COMMERCE', 110, '37.15810', '-89.44660'), ('DIEHLSTADT', 163, '36.95940', '-89.43240'), ('HAY-WOOD CITY', None, '37.01180', '-89.60010'), ('KELSO', 527, '37.19010', '-89.55040'), ('LAMBERT', 49, '37.09360', '-89.55570'), ('MINER', 1056, '36.89380', '-89.53460'), ('MORLEY', 792, '37.04330', '-89.61260'), ('ORAN', 1264, '37.08500', '-89.65290'), ('SCOTT CITY', 4591, '37.22250', '-89.53210'), ('SIKESTON', 16992, '36.88020', '-89.58070'), ('VANDUSER', 217, '36.99120', '-89.68650')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOC203': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AKERS', None, '37.37600', '-91.55260'), ('ALLEY SPRING', None, '37.14410', '-91.44380'), ('BIRCH TREE', 634, '36.99100', '-91.49240'), ('EMINENCE', 548, '37.15050', '-91.35750'), ('MIDRIDGE', None, '37.33520', '-91.22160'), ('MONTIER', None, '36.98690', '-91.57520'), ('PINE CREST', None, '37.09190', '-91.65860'), ('ROUND SPRING', None, '37.28040', '-91.41110'), ('SUMMERSVILLE', 544, '37.17910', '-91.65660'), ('TERESITA', None, '36.98460', '-91.62850'), ('WEST EMINENCE', None, '37.14020', '-91.37430'), ('WINONA', 1290, '37.00970', '-91.32320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'VAC099': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BERTHAVILLE', None, '38.33330', '-77.12610'), ('DAHLGREN', 997, '38.33000', '-77.05000'), ('DOGUE', None, '38.23190', '-77.21610'), ('FAIRVIEW BEACH', 230, '38.33000', '-77.24750'), ('JERSEY', None, '38.21140', '-77.13970'), ('KING GEORGE', None, '38.26810', '-77.18470'), ('LAMBS CREEK', None, '38.26360', '-77.26940'), ('NINDE', None, '38.27110', '-77.05640'), ('PASSAPATANZY', None, '38.29720', '-77.31440'), ('ROLLINS FORK', None, '38.18470', '-77.06250'), ('SHILOH', None, '38.22140', '-77.11140'), ('WEEDONVILLE', None, '38.29830', '-77.15890')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'VAC097': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEAZLEY', None, '37.96470', '-77.07030'), ('BISCOE', None, '37.81820', '-77.05760'), ('BRUINGTON', None, '37.77780', '-76.93620'), ('CLANCIE', None, '37.58030', '-76.69330'), ('CROUCH', None, '37.76220', '-76.89750'), ('DRAGONVILLE', None, '37.70060', '-76.78060'), ('GRESSIT', None, '37.48730', '-76.70840'), ('HENLEY FORK', None, '37.75590', '-76.99060'), ('INDIAN NECK', None, '37.90220', '-77.03310'), ('INO', None, '37.76220', '-76.79810'), ('KING AND QUEEN COURTHOUSE', None, '37.66960', '-76.87760'), ('LITTLE PLYMOUTH', None, '37.62800', '-76.79380'), ('MASCOT', None, '37.62710', '-76.70690'), ('MATTAPONI', None, '37.53420', '-76.77740'), ('NEWTOWN', None, '37.91340', '-77.12810'), ('OWENTON', None, '37.88380', '-77.10050'), ('SAINT STEPHENS CHURCH', None, '37.80340', '-77.05580'), ('SALVIA', None, '37.94920', '-77.13310'), ('SHACKLEFORDS', None, '37.54990', '-76.73420'), ('STEVENSVILLE', None, '37.72760', '-76.92030'), ('VELMA', None, '37.64690', '-76.71610'), ('WALKERTON', None, '37.72680', '-77.02240')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'VAC095': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BUSCH GARDENS', None, '37.22910', '-76.63640'), ('CARVER GARDENS', None, '37.25080', '-76.65890'), ('CENTERVILLE', None, '37.31640', '-76.78950'), ('CHRISTENSONS CORNER', None, '37.38780', '-76.70890'), ('CROAKER', None, '37.39670', '-76.75310'), ('DIASCUND', None, '37.39420', '-76.87080'), ('EWELL', None, '37.32890', '-76.74250'), ('FIVE FORKS', None, '37.25200', '-76.76550'), ('FIVE FORKS', None, '37.25200', '-76.76550'), ('GOVERNORS LAND', None, '37.24920', '-76.83020'), ('GROVE', None, '37.22972', '-76.62722'), ('JAMESTOWN', None, '37.22000', '-76.76000'), ('KINGS CORNER', None, '37.40090', '-76.87380'), ('KINGS POINT', None, '37.24382', '-76.70546'), ('LIGHTFOOT', None, '37.34000', '-76.75440'), ('MOUNT AIRY', None, '37.35110', '-76.91830'), ('NORGE', None, '37.36800', '-76.77080'), ('TOANO', None, '37.37920', '-76.80300'), ('WARREN MILL', None, '37.37280', '-76.84110'), ('WILLIAMSBURG AIRPORT', None, '37.24040', '-76.71820'), ('YORK RIVER STATE PARK', None, '37.41410', '-76.71420')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC093': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BENNS CHURCH', None, '36.93760', '-76.58640'), ('BETHEL CHURCH', None, '36.95420', '-76.71390'), ('BOAZ', None, '36.74670', '-76.76190'), ('CARROLLTON', None, '36.94670', '-76.56080'), ('CARRSVILLE', None, '36.71110', '-76.82990'), ('CENTRAL HILL', None, '36.91060', '-76.74080'), ('COLLOSSE', None, '36.76110', '-76.82190'), ('COMET', None, '36.98470', '-76.74420'), ('INDIKA', None, '36.82030', '-76.68390'), ('ISLE OF WIGHT', None, '36.90770', '-76.70800'), ('LAWSON', None, '37.01110', '-76.63080'), ('LEES MILL', None, '36.68250', '-76.89580'), ('LONGVIEW', None, '36.88890', '-76.60690'), ('MOGARTS BEACH', None, '37.03190', '-76.60110'), ('MOONLIGHT', None, '37.03400', '-76.72250'), ('PONS', None, '37.00030', '-76.79190'), ('RAYNOR', None, '36.94920', '-76.78260'), ('RESCUE', None, '36.99650', '-76.55410'), ('RUSHMERE', 1083, '37.08370', '-76.67320'), ('RUSHMERE', 1083, '37.08300', '-76.67460'), ('SMITHFIELD', 6324, '36.98270', '-76.61780'), ('WALTERS', None, '36.77220', '-76.84970'), ('WHITLEY', None, '36.88530', '-76.75970'), ('WINDSOR', 916, '36.80820', '-76.73950'), ('ZUNI', None, '36.86660', '-76.82000')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC091': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CLOVER CREEK', None, '38.27000', '-79.54920'), ('DOE HILL', None, '38.43190', '-79.44470'), ('HIGHTOWN', None, '38.43110', '-79.63190'), ('LIBERTY', None, '38.28890', '-79.45970'), ('MCDOWELL', None, '38.33560', '-79.49080'), ('MILL GAP', None, '38.32170', '-79.70420'), ('MONTEREY', 158, '38.41180', '-79.58070'), ('MUSTOE', None, '38.32360', '-79.64060'), ('NEW HAMPDEN', None, '38.49280', '-79.56360'), ('PALO ALTO', None, '38.42330', '-79.37060'), ('POSSUM TROT', None, '38.47000', '-79.53250'), ('SIRONS MILL', None, '38.39750', '-79.47330'), ('VANDERPOOL', None, '38.36940', '-79.62560'), ('WILLIAMSVILLE', None, '38.20000', '-79.56670')], 'partOfState': '', 'wfo': 'LWX'}, -'LAC011': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BUNDICK LAKE', None, '30.74640', '-93.10720'), ('DE RIDDER', 9808, '30.84570', '-93.29100'), ('DRY CREEK', None, '30.66890', '-93.04530'), ('FIELDS', None, '30.52610', '-93.57470'), ('JUNCTION', None, '30.83810', '-93.50890'), ('LONGVILLE', None, '30.60500', '-93.23170'), ('MERRYVILLE', 1126, '30.75350', '-93.53260'), ('ORETTA', None, '30.52580', '-93.43720'), ('RAGLEY', None, '30.51250', '-93.23220'), ('SINGER', None, '30.65470', '-93.41220'), ('SUGARTOWN', None, '30.83970', '-93.01470')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'LAC013': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ARCADIA', 3041, '32.55100', '-92.92460'), ('BIENVILLE', 262, '32.36130', '-92.97630'), ('BRYCELAND', 114, '32.44380', '-92.98960'), ('CASTOR', 209, '32.25410', '-93.16700'), ('GIBSLAND', 1119, '32.53900', '-93.05330'), ('JAMESTOWN', 149, '32.33760', '-93.20530'), ('LUCKY', 355, '32.24350', '-93.01280'), ('MOUNT LEBANON', 73, '32.50290', '-93.04930'), ('RINGGOLD', 1660, '32.32600', '-93.28440'), ('SALINE', 296, '32.16400', '-92.97700')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAC015': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BENTON', 2035, '32.69190', '-93.74010'), ('BOSSIER CITY', 56461, '32.51860', '-93.66380'), ('EASTWOOD', 3374, '32.56170', '-93.56620'), ('HAUGHTON', 2792, '32.53010', '-93.50630'), ('PLAIN DEALING', 1071, '32.90680', '-93.69890'), ('RED CHUTE', 5984, '32.57350', '-93.61160')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAC017': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BELCHER', 272, '32.75330', '-93.83510'), ('BLANCHARD', 2050, '32.59200', '-93.88610'), ('GILLIAM', 178, '32.82730', '-93.84270'), ('GREENWOOD', 2458, '32.44140', '-93.97380'), ('HOSSTON', 387, '32.88370', '-93.88280'), ('IDA', 258, '33.00210', '-93.89500'), ('MOORINGSPORT', 833, '32.68280', '-93.96160'), ('OIL CITY', 1219, '32.74470', '-93.97490'), ('RODESSA', 307, '32.97170', '-93.99200'), ('SHREVEPORT', 200145, '32.47160', '-93.79780'), ('VIVIAN', 4031, '32.87310', '-93.98670')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'MNC065': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('GRASSTON', 105, '45.79450', '-93.15390'), ('MORA', 3193, '45.87740', '-93.29330'), ('OGILVIE', 474, '45.83070', '-93.41990'), ('QUAMBA', 98, '45.91550', '-93.17470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'LAC019': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BELL CITY', None, '30.11310', '-92.96250'), ('CARLYSS', 4049, '30.17580', '-93.36960'), ('DE QUINCY', None, '30.44830', '-93.44350'), ('GILLIS', None, '30.37360', '-93.20080'), ('HAYES', None, '30.10860', '-92.92000'), ('IOWA', 2663, '30.23720', '-93.01270'), ('LAKE CHARLES', 71757, '30.21090', '-93.20290'), ('LEBLEU SETTLEMENT', None, '30.27670', '-93.08110'), ('MOSS BLUFF', 10535, '30.30410', '-93.20380'), ('STARKS', None, '30.31530', '-93.66170'), ('SULPHUR', 20512, '30.22950', '-93.35640'), ('VINTON', 3338, '30.19720', '-93.58050'), ('WESTLAKE', 4668, '30.25110', '-93.25890')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'OHC063': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ARCADIA', 537, '41.11130', '-83.51130'), ('ARLINGTON', 1351, '40.89270', '-83.65370'), ('BENTON RIDGE', 315, '41.00480', '-83.79200'), ('FINDLAY', 38967, '41.04300', '-83.64220'), ('JENERA', 235, '40.89980', '-83.72740'), ('MCCOMB', 1676, '41.10670', '-83.78960'), ('MOUNT BLANCHARD', 484, '40.89850', '-83.55720'), ('MOUNT CORY', 203, '40.93480', '-83.82430'), ('RAWSON', 465, '40.95670', '-83.78570'), ('VAN BUREN', 313, '41.13900', '-83.64920'), ('VANLUE', 371, '40.97640', '-83.48180')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'AKC100': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('COVENANT LIFE', 102, '59.41720', '-136.02510'), ('HAINES', 1811, '59.24030', '-135.44040'), ('KLUKWAN', 139, '59.40390', '-135.88450'), ('LUTAK', 39, '59.34110', '-135.56550'), ('MOSQUITO LAKE', 221, '59.52920', '-136.09100')], 'partOfState': '', 'wfo': 'AJK'}, -'COC099': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BRISTOL', None, '38.12000', '-102.32000'), ('GRANADA', 640, '38.06370', '-102.31060'), ('HARTMAN', 111, '38.12090', '-102.21810'), ('HOLLY', 1048, '38.05560', '-102.12400'), ('LAMAR', 8869, '38.08030', '-102.61750'), ('WILEY', 483, '38.15610', '-102.71870')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'OHC065': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADA', 5582, '40.76880', '-83.82390'), ('ALGER', 888, '40.70950', '-83.84460'), ('DUNKIRK', 952, '40.78760', '-83.64250'), ('FOREST', 1488, '40.80310', '-83.51190'), ('KENTON', 8336, '40.64450', '-83.61040'), ('MCGUFFEY', 522, '40.69330', '-83.78590'), ('MOUNT VICTORY', 600, '40.53410', '-83.52020'), ('PATTERSON', 138, '40.78180', '-83.52610'), ('RIDGEWAY', 354, '40.51250', '-83.56850')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC067': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADENA', 815, '40.21640', '-80.87630'), ('BOWERSTON', 414, '40.42670', '-81.18770'), ('CADIZ', 3308, '40.26670', '-80.99230'), ('DEERSVILLE', 82, '40.30810', '-81.18770'), ('FREEPORT', 398, '40.21080', '-81.26830'), ('HARRISVILLE', 259, '40.18180', '-80.88710'), ('HOPEDALE', 984, '40.32330', '-80.89900'), ('JEWETT', 784, '40.36810', '-81.00270'), ('NEW ATHENS', 342, '40.18430', '-80.99540'), ('SCIO', 799, '40.39870', '-81.08760')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'IAC045': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALMONT', None, '41.98330', '-90.20000'), ('ANDOVER', 87, '41.97880', '-90.25160'), ('BRYANT', None, '41.96670', '-90.33330'), ('BULGERS HOLLOW CAMP GROUN', None, '41.93330', '-90.18330'), ('CALAMUS', 394, '41.82670', '-90.75970'), ('CAMANCHE', 4215, '41.79390', '-90.27500'), ('CHARLOTTE', 421, '41.96190', '-90.46750'), ('CLINTON', 27772, '41.84320', '-90.23300'), ('CLINTON MUNICIPAL AIRPORT', None, '41.83330', '-90.33330'), ('DELMAR', 514, '41.99950', '-90.60500'), ('DEWITT', None, '41.82160', '-90.54680'), ('ELVIRA', None, '41.86660', '-90.35000'), ('ELWOOD', None, '42.00000', '-90.73330'), ('FOLLETTS', None, '41.75000', '-90.35000'), ('GOOSE LAKE', 232, '41.96820', '-90.38220'), ('GRAND MOUND', 676, '41.82350', '-90.64890'), ('HAUNTOWN', None, '42.00000', '-90.20000'), ('LOST NATION', 497, '41.96610', '-90.81750'), ('LOW MOOR', 240, '41.80240', '-90.35430'), ('MALONE', None, '41.81670', '-90.45000'), ('TEEDS GROVE', None, '42.01670', '-90.25000'), ('TORONTO', 134, '41.90330', '-90.86290'), ('WELTON', 159, '41.91190', '-90.59780'), ('WHEATLAND', 772, '41.83290', '-90.83720')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'ILC153': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('KARNAK', 619, '37.29400', '-88.97600'), ('MOUND CITY', 692, '37.08560', '-89.16300'), ('MOUNDS', 1117, '37.11480', '-89.20120'), ('NEW GRAND CHAIN', 233, '37.25320', '-89.01710'), ('OLMSTED', 299, '37.18150', '-89.08380'), ('PULASKI', 274, '37.21600', '-89.20700'), ('ULLIN', 779, '37.28160', '-89.18380')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'IAC047': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARION', 136, '41.94860', '-95.46250'), ('ASPINWALL', 58, '41.91140', '-95.13480'), ('BUCK GROVE', 49, '41.91870', '-95.39700'), ('CHARTER OAK', 530, '42.06790', '-95.58910'), ('DELOIT', 288, '42.09720', '-95.31750'), ('DENISON', 7339, '42.01830', '-95.34890'), ('DOW CITY', 503, '41.92820', '-95.49420'), ('KIRON', 273, '42.19380', '-95.32670'), ('MANILLA', 839, '41.88910', '-95.23500'), ('RICKETTS', 144, '42.12750', '-95.57420'), ('SCHLESWIG', 833, '42.16190', '-95.43450'), ('VAIL', 452, '42.05980', '-95.20060'), ('WESTSIDE', 327, '42.07520', '-95.10000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'ILC151': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('EDDYVILLE', 153, '37.50030', '-88.58520'), ('HAMLETSBURG', None, '37.14080', '-88.44600')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'IAC041': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DICKENS', 202, '43.13340', '-95.02210'), ('EVERLY', 647, '43.16050', '-95.32160'), ('FOSTORIA', 230, '43.24160', '-95.15480'), ('GILLETT GROVE', 55, '43.01540', '-95.03520'), ('GREENVILLE', 93, '43.01720', '-95.14520'), ('MONETA', None, '43.13250', '-95.39240'), ('PETERSON', 372, '42.91850', '-95.34120'), ('ROSSIE', 58, '43.01320', '-95.18880'), ('ROYAL', 479, '43.06400', '-95.28320'), ('SPENCER', 11317, '43.14590', '-95.15110'), ('WEBB', 165, '42.94920', '-95.01200')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'ILC157': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BALDWIN', 3627, '38.18370', '-89.84460'), ('BLAIR', None, '38.04480', '-89.74200'), ('BREMEN', None, '37.97120', '-89.74730'), ('CHESTER', 5185, '37.91970', '-89.82510'), ('COULTERVILLE', 1230, '38.18490', '-89.60430'), ('EDEN', None, '38.12060', '-89.66760'), ('ELLIS GROVE', 381, '38.00930', '-89.90870'), ('EVANSVILLE', 724, '38.08880', '-89.93290'), ('HOUSTON', None, '38.15930', '-89.78120'), ('KASKASKIA', 9, '37.92130', '-89.91640'), ('KELLOGG', None, '38.01370', '-90.05540'), ('MODOC', None, '38.05260', '-90.03730'), ('NEW PALESTINE', None, '37.99650', '-89.82070'), ('PERCY', 942, '38.01600', '-89.61680'), ('PRAIRIE', None, '38.17320', '-89.94320'), ('PRAIRIE DU ROCHER', 613, '38.08130', '-90.09760'), ('PRESTON', None, '38.10610', '-89.86010'), ('RED BUD', 3422, '38.21020', '-89.99640'), ('ROCKWOOD', 41, '37.83790', '-89.69740'), ('ROOTS', None, '38.01790', '-89.97230'), ('RUMA', 260, '38.13440', '-89.99840'), ('SPARTA', 4486, '38.15280', '-89.71550'), ('STEELEVILLE', 2077, '38.00750', '-89.66070'), ('TILDEN', 922, '38.21190', '-89.68330'), ('WALSH', None, '38.08950', '-89.85080'), ('WELGE', None, '37.95650', '-89.71260')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'IAC043': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEULA', None, '43.01290', '-91.31840'), ('CLAYTON', 55, '42.90230', '-91.15000'), ('CLAYTON CENTER', None, '42.88094', '-91.31656'), ('COMMUNIA', None, '42.78196', '-91.36422'), ('ELKADER', 1465, '42.85600', '-91.40280'), ('ELKPORT', 88, '42.74110', '-91.27540'), ('FARMERSBURG', 300, '42.95850', '-91.36740'), ('FROELICH', None, '42.99824', '-91.33306'), ('GARBER', 103, '42.74390', '-91.26290'), ('GARNAVILLO', 754, '42.86780', '-91.23640'), ('GIARD', None, '42.99824', '-91.29824'), ('GUNDER', None, '42.96158', '-91.51818'), ('GUTTENBERG', 1987, '42.78790', '-91.10410'), ('HARDIN', None, '43.08255', '-91.49985'), ('HIGHLAND', None, '42.89743', '-91.60066'), ('LITTLEPORT', 26, '42.75310', '-91.36900'), ('LUANA', 249, '43.06090', '-91.45500'), ('MARQUETTE', 421, '43.04290', '-91.18400'), ('MCGREGOR', 871, '43.02290', '-91.18070'), ('MEDERVILLE', None, '42.76363', '-91.41921'), ('MILLVILLE', 23, '42.70480', '-91.07720'), ('MONONA', 1550, '43.05130', '-91.39040'), ('NATIONAL', None, '42.94875', '-91.28357'), ('NORTH BUENA VISTA', 124, '42.68250', '-90.95640'), ('OSBORNE', None, '42.80029', '-91.43570'), ('OSTERDOCK', 50, '42.73250', '-91.15860'), ('ST. OLAF', 136, '42.92770', '-91.38710'), ('STRAWBERRY POINT', 1386, '42.68300', '-91.53550'), ('VOLGA', 247, '42.80250', '-91.54290'), ('WATSON', None, '43.08072', '-91.33489')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'ILC155': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('FLORID', None, '41.23330', '-89.28330'), ('GRANVILLE', 1414, '41.26430', '-89.22990'), ('HENNEPIN', 707, '41.25600', '-89.31960'), ('LAKE THUNDERBIRD', None, '41.21670', '-89.45000'), ('MAGNOLIA', 279, '41.11400', '-89.19520'), ('MARK', 491, '41.26420', '-89.24840'), ('MC NABB', None, '41.17730', '-89.20980'), ('MORONTS', None, '41.28330', '-89.30000'), ('PUTNAM', None, '41.18330', '-89.40000'), ('STANDARD', 256, '41.25640', '-89.18030')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DVN'}, -'SDC003': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('PLANKINTON', 601, '43.71570', '-98.48410'), ('STICKNEY', 334, '43.58960', '-98.43750'), ('WHITE LAKE', 405, '43.72840', '-98.71290')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'ILC159': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BERRYVILLE', None, '38.60000', '-87.95000'), ('CALHOUN', 222, '38.65140', '-88.04280'), ('CLAREMONT', 212, '38.71910', '-87.97450'), ('DUNDAS', None, '38.83330', '-88.08000'), ('NOBLE', 746, '38.69720', '-88.22460'), ('OLNEY', 8631, '38.73140', '-88.08530'), ('PARKERSBURG', 234, '38.58870', '-88.05570'), ('SCHNELL', None, '38.63330', '-88.25000'), ('WAKEFIELD', None, '38.83500', '-88.23330')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILX'}, -'IAC049': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ADEL', 3435, '41.61260', '-94.02710'), ('BOUTON', 136, '41.85170', '-94.01080'), ('DALLAS CENTER', 1595, '41.68470', '-93.98410'), ('DAWSON', 155, '41.84310', '-94.21990'), ('DE SOTO', 1009, '41.53460', '-94.00850'), ('DEXTER', 689, '41.51560', '-94.22690'), ('GRANGER', 583, '41.76030', '-93.82370'), ('LINDEN', 226, '41.64300', '-94.27010'), ('MINBURN', 391, '41.75790', '-94.02780'), ('PERRY', 7633, '41.84210', '-94.09980'), ('REDFIELD', 833, '41.59010', '-94.19760'), ('VAN METER', 866, '41.53050', '-93.95570'), ('WAUKEE', 5126, '41.60760', '-93.86240'), ('WOODWARD', 1200, '41.85630', '-93.92130')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'SDC007': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALLEN', 419, '43.28190', '-101.92650'), ('BLACKPIPE', None, '43.34990', '-101.26760'), ('HARRINGTON', None, '43.16670', '-101.25000'), ('LACREEK WILDLIFE REFUGE', None, '43.11570', '-101.52710'), ('MARTIN', 1106, '43.17230', '-101.73110'), ('PATRICIA', None, '43.28710', '-101.51380'), ('SWETT', None, '43.17170', '-101.95410'), ('TUTHILL', None, '43.15510', '-101.49460'), ('VETAL', None, '43.21670', '-101.36670')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDC005': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BROADLAND', 38, '44.49340', '-98.34810'), ('CAVOUR', 141, '44.37280', '-98.04100'), ('HITCHCOCK', 108, '44.62930', '-98.40780'), ('HURON', 11893, '44.36390', '-98.21780'), ('VIRGIL', 25, '44.29030', '-98.42670'), ('WESSINGTON', 248, '44.45490', '-98.69620'), ('WOLSEY', 418, '44.41090', '-98.47380'), ('YALE', 118, '44.43340', '-97.98910')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'ORC023': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('CANYON CITY', 669, '44.39220', '-118.94840'), ('DAYVILLE', 138, '44.46680', '-119.53230'), ('GRANITE', 24, '44.81060', '-118.41940'), ('GREENHORN', 0, '44.70890', '-118.49580'), ('JOHN DAY', 1821, '44.41840', '-118.94940'), ('LONG CREEK', 228, '44.71380', '-119.10190'), ('MONUMENT', 151, '44.82000', '-119.41880'), ('MOUNT VERNON', 595, '44.41780', '-119.11220'), ('PRAIRIE CITY', 1080, '44.46160', '-118.70950'), ('SENECA', 223, '44.13470', '-118.97560')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PDT'}, -'ORC021': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ARLINGTON', 524, '45.71780', '-120.19260'), ('CONDON', 759, '45.23680', '-120.18390'), ('LONEROCK', 24, '45.08920', '-119.88310')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'PDT'}, -'ORC027': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BENNETT PASS', None, '45.32000', '-121.62000'), ('CASCADE LOCKS', 1115, '45.67780', '-121.87260'), ('DEE', None, '45.58330', '-121.61660'), ('HOOD RIVER', 5831, '45.70980', '-121.52190'), ('LOLO PASS', None, '45.42000', '-121.80000'), ('LOST LAKE', None, '45.49000', '-121.83000'), ('MOUNT HOOD', None, '45.37500', '-121.70000'), ('ODELL', 1849, '45.63000', '-121.53600'), ('PARKDALE', 266, '45.51700', '-121.60000'), ('WHITE RIVER SNOW PARK', None, '45.30000', '-121.67000'), ('WYETH', None, '45.69000', '-121.76660')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORC025': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ANDREWS', None, '42.46670', '-118.61670'), ('BUCHANAN', None, '43.65000', '-118.63330'), ('BURNS', 3064, '43.58770', '-119.06120'), ('CRANE', None, '43.41670', '-118.58330'), ('DIAMOND', None, '43.01670', '-118.68330'), ('DREWSEY', None, '43.79890', '-118.38000'), ('DUNNEAN', None, '43.43330', '-118.25000'), ('FIELDS', None, '42.25970', '-118.66890'), ('FRENCHGLEN', None, '42.82890', '-118.90580'), ('HINES', 1623, '43.56720', '-119.07880'), ('NARROWS', None, '43.27470', '-118.95890'), ('NEW PRINCETON', None, '43.28280', '-118.59890'), ('RILEY', None, '43.53330', '-119.48330'), ('VAN', None, '43.98330', '-118.68330'), ('VENATOR', None, '43.35000', '-118.30000'), ('WAGONTIRE', None, '43.25000', '-119.88330')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOI'}, -'TNC093': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BEARDEN', None, '35.93310', '-84.00360'), ('FARRAGUT', 17720, '35.87440', '-84.18220'), ('HALLS', 2311, '36.08180', '-83.93290'), ('KARNS', None, '35.97600', '-84.11820'), ('KIMBERLIN HEIGHTS', None, '35.92970', '-83.75190'), ('KNOXVILLE', 173890, '35.97460', '-83.94630'), ('LAKE FOREST', None, '35.92610', '-83.86830'), ('MALONEYVILLE', None, '36.08530', '-83.83610'), ('MASCOT', 2119, '36.06820', '-83.76610'), ('POWELL', None, '36.03370', '-84.02830'), ('STRAWBERRY PLAINS', None, '36.06250', '-83.68720')], 'partOfState': '', 'wfo': 'MRX'}, -'MIC089': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BINGHAM', None, '44.87500', '-85.69000'), ('BURDICKVILLE', None, '44.85000', '-85.95000'), ('CEDAR', None, '44.85000', '-85.80000'), ('EMPIRE', 378, '44.81320', '-86.05890'), ('FOUCH', None, '44.82580', '-85.72630'), ('GLEN ARBOR', None, '44.90000', '-85.99500'), ('GLEN HAVEN', None, '44.90000', '-86.02030'), ('GREILICKVILLE', 1415, '44.79910', '-85.64580'), ('LELAND', None, '45.01670', '-85.76700'), ('MAPLE CITY', None, '44.84890', '-85.86780'), ('NORTHPORT', 648, '45.13000', '-85.62150'), ('OMENA', None, '45.06000', '-85.59660'), ('PESHAWBESTOWN', None, '45.01750', '-85.61330'), ('SUTTONS BAY', 589, '44.97900', '-85.65150')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'ORC029': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('APPLEGATE', None, '42.25720', '-123.16720'), ('ASHLAND', 19522, '42.19020', '-122.69960'), ('BUTTE FALLS', 439, '42.54200', '-122.56780'), ('CENTRAL POINT', 12493, '42.37370', '-122.91100'), ('EAGLE POINT', 4797, '42.46610', '-122.79950'), ('GOLD HILL', 1073, '42.43460', '-123.05030'), ('HOWARD PRAIRIE', None, '42.20000', '-122.38330'), ('JACKSONVILLE', 2235, '42.31310', '-122.96760'), ('MEDFORD', 63154, '42.33980', '-122.85310'), ('PHOENIX', 4060, '42.27450', '-122.81600'), ('PROSPECT', None, '42.75110', '-122.48780'), ('ROGUE RIVER', 1847, '42.43580', '-123.16710'), ('RUCH', None, '42.23670', '-123.04110'), ('SHADY COVE', 2307, '42.61180', '-122.81870'), ('SISKIYOU SUMMIT', None, '42.06000', '-122.57000'), ('TALENT', 5589, '42.24010', '-122.78100'), ('TRAIL', None, '42.64860', '-122.80940'), ('UNION CREEK', None, '42.90720', '-122.44440'), ('WHITE CITY', 5466, '42.43200', '-122.83010')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'VAC530': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BUENA VISTA CITY', None, '37.73330', '-79.36670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'NEC093': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BOELUS', None, '41.07500', '-98.71670'), ('COTESFIELD', 66, '41.35770', '-98.63300'), ('CUSHING', 31, '41.29460', '-98.36900'), ('DANNEBROG', 352, '41.11860', '-98.54520'), ('ELBA', 243, '41.28440', '-98.56910'), ('FARWELL', 148, '41.21580', '-98.62740'), ('ST. LIBORY', None, '41.08000', '-98.35300'), ('ST. PAUL', 2218, '41.21370', '-98.45950')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'PAC095': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BANGOR', 5319, '40.86850', '-75.20820'), ('BATH', 2678, '40.72760', '-75.39180'), ('BELFAST', 1301, '40.78250', '-75.27310'), ('BETHLEHEM', 71329, '40.62670', '-75.36800'), ('CHAPMAN', 234, '40.75920', '-75.40150'), ('COPLAY', 3387, '40.67110', '-75.49650'), ('EAST BANGOR', 979, '40.88060', '-75.18660'), ('EASTLAWN GARDENS', 2832, '40.75070', '-75.29610'), ('EASTON', 26263, '40.68630', '-75.22060'), ('FREEMANSBURG', 1897, '40.62720', '-75.34020'), ('GLENDON', 367, '40.66130', '-75.23580'), ('HELLERTOWN', 5606, '40.58120', '-75.33830'), ('NAZARETH', 6023, '40.73990', '-75.31300'), ('NORTH CATASAUQUA', 2814, '40.66430', '-75.47430'), ('NORTHAMPTON', 9405, '40.68800', '-75.48870'), ('OLD ORCHARD', 2443, '40.65780', '-75.26260'), ('PALMER HEIGHTS', 3612, '40.68960', '-75.26850'), ('PEN ARGYL', 3615, '40.86790', '-75.25420'), ('ROSETO', 1653, '40.87820', '-75.22080'), ('SLATINGTON', 4434, '40.75430', '-75.61230'), ('STOCKERTOWN', 687, '40.75530', '-75.26380'), ('TATAMY', 930, '40.74120', '-75.25530'), ('WALNUTPORT', 2043, '40.75150', '-75.59560'), ('WEST EASTON', 1152, '40.67820', '-75.23650'), ('WILSON', 7682, '40.68530', '-75.24010'), ('WIND GAP', 2812, '40.84750', '-75.29170')], 'partOfState': '', 'wfo': 'PHI'}, -'NEC091': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('MULLEN', 491, '42.04200', '-101.04330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEC097': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('COOK', 322, '40.51030', '-96.16120'), ('CRAB ORCHARD', 49, '40.33440', '-96.42170'), ('ELK CREEK', 112, '40.28750', '-96.12800'), ('STERLING', 507, '40.46190', '-96.37810'), ('TECUMSEH', 1716, '40.37030', '-96.18880')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEC095': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('DAYKIN', 177, '40.32180', '-97.29740'), ('DILLER', 287, '40.10870', '-96.93750'), ('ENDICOTT', 139, '40.08090', '-97.09530'), ('FAIRBURY', 4262, '40.14090', '-97.17720'), ('HARBINE', 56, '40.19150', '-96.97350'), ('JANSEN', 143, '40.18570', '-97.08240'), ('PLYMOUTH', 477, '40.30340', '-96.98810'), ('REYNOLDS', 88, '40.06040', '-97.33590'), ('STEELE CITY', 84, '40.03650', '-97.02250')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEC099': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AXTELL', 696, '40.47900', '-99.12820'), ('HEARTWELL', 80, '40.56970', '-98.78850'), ('MINDEN', 2964, '40.50080', '-98.95080'), ('NORMAN', 49, '40.47930', '-98.79100'), ('WILCOX', 360, '40.36450', '-99.16880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'MIC087': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALMONT', 2803, '42.92140', '-83.04450'), ('ATTICA', None, '43.03230', '-83.16230'), ('BURNSIDE', None, '43.21060', '-83.07720'), ('CLIFFORD', 324, '43.31430', '-83.17880'), ('COLUMBIAVILLE', 815, '43.15800', '-83.40780'), ('DRYDEN', 815, '42.94540', '-83.12450'), ('GOODLAND TOWNSHIP', None, '43.11200', '-83.04750'), ('HADLEY', None, '42.95440', '-83.40330'), ('IMLAY CITY', 3869, '43.01640', '-83.07800'), ('KINGS MILL', None, '43.14220', '-83.17280'), ('LAPEER', 9072, '43.04700', '-83.32490'), ('METAMORA', 507, '42.94120', '-83.29060'), ('NORTH BRANCH', 1027, '43.22980', '-83.19170'), ('OTTER LAKE', 437, '43.21330', '-83.45840')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MOC025': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRAYMER', 910, '39.59020', '-93.79560'), ('BRECKENRIDGE', 454, '39.76150', '-93.80480'), ('COWGILL', 247, '39.56060', '-93.92580'), ('HAMILTON', 1813, '39.74330', '-94.00210'), ('KIDDER', 271, '39.78190', '-94.10240'), ('KINGSTON', 287, '39.64220', '-94.03820'), ('POLO', 582, '39.55220', '-94.04000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOC027': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AUXVASSE', 901, '39.01740', '-91.89450'), ('CARRINGTON', None, '38.80820', '-92.05940'), ('FULTON', 12128, '38.85310', '-91.94880'), ('GUTHRIE', None, '38.75700', '-92.09650'), ('HATTON', None, '39.02420', '-92.02610'), ('HOLTS SUMMIT', 2935, '38.64470', '-92.11600'), ('KINGDOM CITY', 121, '38.94630', '-91.93720'), ('LAKE MYKEE', None, '38.67650', '-92.10080'), ('MOKANE', 188, '38.67440', '-91.87270'), ('NEW BLOOMFIELD', 599, '38.71940', '-92.08970'), ('PORTLAND', None, '38.71090', '-91.71780'), ('REFORM', None, '38.76530', '-91.77900'), ('SHAMROCK', None, '39.00440', '-91.69370'), ('STEEDMAN', None, '38.70470', '-91.81790'), ('TEBBETTS', None, '38.62060', '-91.96250'), ('WAINWRIGHT', None, '38.58370', '-92.06820'), ('WILLIAMSBURG', None, '38.91700', '-91.70000')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'MOC021': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ELWOOD', 1145, '39.75390', '-94.87900'), ('AGENCY', 599, '39.65570', '-94.74850'), ('DE KALB', 257, '39.58720', '-94.92390'), ('EASTON', 258, '39.72170', '-94.63960'), ('FAUCETT', None, '39.60000', '-94.81670'), ('LEWIS AND CLARK VILLAGE', 155, '39.53990', '-95.05080'), ('RUSHVILLE', 280, '39.58730', '-95.02330'), ('ST JOSEPH ARPT', None, '39.76670', '-94.91670'), ('ST. JOSEPH', 73990, '39.75920', '-94.82110')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'IDC087': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CAMBRIDGE', 360, '44.57260', '-116.67590'), ('MIDVALE', 176, '44.47060', '-116.73310'), ('WEISER', 5343, '44.25080', '-116.96670')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'MOC023': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('HARVIELL', None, '36.68360', '-90.57440'), ('HENDRICKSON', None, '36.90440', '-90.46880'), ('NEELYVILLE', 487, '36.55920', '-90.51100'), ('POPLAR BLUFF', 16651, '36.76390', '-90.40720'), ('QULIN', 467, '36.59790', '-90.24910'), ('ROMBAUER', None, '36.84300', '-90.28000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'IDC069': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CULDESAC', 378, '46.37500', '-116.66940'), ('GIFFORD', None, '46.43930', '-116.55330'), ('LAPWAI', 1134, '46.40470', '-116.80340'), ('LENORE', None, '46.50520', '-116.55000'), ('LEWISTON', 30904, '46.39290', '-116.99220'), ('PECK', 186, '46.47390', '-116.42410'), ('REUBENS', 72, '46.32220', '-116.54110'), ('SOUTHWICK', None, '46.60220', '-116.46930'), ('SPALDING', None, '46.60220', '-116.46930'), ('WAHA', None, '46.20800', '-116.85070')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'PAC091': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMBLER', 6426, '40.15610', '-75.22190'), ('ARDMORE', 12616, '40.00290', '-75.29480'), ('AUDUBON', 6549, '40.12980', '-75.42840'), ('BLUE BELL', 6395, '40.14570', '-75.26770'), ('BRIDGEPORT', 4371, '40.10390', '-75.34340'), ('BRYN ATHYN', 1351, '40.13840', '-75.06600'), ('BRYN MAWR', 4382, '40.02180', '-75.31590'), ('COLLEGEVILLE', 8032, '40.18710', '-75.45740'), ('CONSHOHOCKEN', 7589, '40.07750', '-75.30320'), ('EAGLEVILLE', 4458, '40.15790', '-75.40780'), ('EAST GREENVILLE', 3103, '40.40600', '-75.50650'), ('EAST NORRITON', 13211, '40.15180', '-75.33680'), ('EVANSBURG', 1536, '40.19020', '-75.43600'), ('FLOURTOWN', 4669, '40.10280', '-75.20860'), ('FORT WASHINGTON', 3680, '40.13840', '-75.19180'), ('GILBERTSVILLE', 4242, '40.32280', '-75.60900'), ('GLENSIDE', 7914, '40.10280', '-75.15260'), ('GREEN LANE', 584, '40.33580', '-75.47060'), ('HALFWAY HOUSE', 1823, '40.28190', '-75.64360'), ('HARLEYSVILLE', 8795, '40.27840', '-75.38800'), ('HATBORO', 7393, '40.17750', '-75.10480'), ('HATFIELD', 2605, '40.27800', '-75.29920'), ('HORSHAM', 14779, '40.18250', '-75.13920'), ('JENKINTOWN', 4478, '40.09600', '-75.12980'), ('KING OF PRUSSIA', 18511, '40.09550', '-75.38340'), ('KULPSVILLE', 8005, '40.24370', '-75.34090'), ('LANSDALE', 16071, '40.24180', '-75.28210'), ('MAPLE GLEN', 7042, '40.17520', '-75.18050'), ('MONTGOMERYVILLE', 12031, '40.24810', '-75.24170'), ('NARBERTH', 4233, '40.00780', '-75.26380'), ('NORRISTOWN', 31282, '40.12210', '-75.33970'), ('NORTH WALES', 3342, '40.21060', '-75.27540'), ('ORELAND', 5509, '40.11440', '-75.18030'), ('PENNSBURG', 2732, '40.39360', '-75.49590'), ('PLYMOUTH MEETING', 5593, '40.10870', '-75.28080'), ('POTTSGROVE', 3266, '40.26460', '-75.61220'), ('POTTSTOWN', 21859, '40.25030', '-75.64400'), ('RED HILL', 2196, '40.37680', '-75.48370'), ('ROCKLEDGE', 2577, '40.08220', '-75.09000'), ('ROYERSFORD', 4246, '40.18520', '-75.53800'), ('SANATOGA', 7734, '40.24950', '-75.58920'), ('SCHWENKSVILLE', 1693, '40.25790', '-75.46650'), ('SKIPPACK', 2889, '40.22100', '-75.40160'), ('SOUDERTON', 6730, '40.31010', '-75.32210'), ('SPRING CITY', 3305, '40.17670', '-75.54690'), ('SPRING HOUSE', 3290, '40.18360', '-75.22640'), ('SPRING MOUNT', 2205, '40.27360', '-75.46540'), ('TRAPPE', 3210, '40.19410', '-75.47740'), ('TROOPER', 6061, '40.14960', '-75.39940'), ('WEST CONSHOHOCKEN', 1446, '40.06990', '-75.31900'), ('WEST NORRITON', 14901, '40.12940', '-75.37900'), ('WILLOW GROVE', 16234, '40.14900', '-75.11850'), ('WYNCOTE', 3046, '40.09220', '-75.14790'), ('WYNDMOOR', 5601, '40.08320', '-75.19300')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'WIC139': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALLENVILLE', None, '44.13000', '-88.61000'), ('BUTTE DES MORTS', None, '44.09000', '-88.65000'), ('EUREKA', None, '44.00000', '-88.84000'), ('FISK', None, '43.95000', '-88.68000'), ('LAKE BUTTE DES MORTS', None, '44.08000', '-88.63000'), ('LAKE POYGAN', None, '44.16000', '-88.86000'), ('LARSEN', None, '44.18000', '-88.61000'), ('MENASHA', 16331, '44.20000', '-88.44000'), ('NEENAH', 24507, '44.18000', '-88.44000'), ('NORTHERN LAKE WINNEBAGO', None, '44.17000', '-88.40000'), ('OMRO', 3177, '44.03000', '-88.75000'), ('OSHKOSH', 62916, '44.01000', '-88.55000'), ('PICKETT', None, '43.91000', '-88.73000'), ('RUSH LAKE', None, '43.91000', '-88.83000'), ('WAUKAU', None, '44.00000', '-88.76000'), ('WINCHESTER IN WINNEBAGO C', None, '44.20000', '-88.66000'), ('WINNEBAGO', None, '44.06000', '-88.51000'), ('WINNECONNE', 2401, '44.11000', '-88.71000'), ('WITTMAN FIELD', None, '43.98000', '-88.55000'), ('ZITTAU', None, '44.21000', '-88.78000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GRB'}, -'IDC065': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ARCHER', None, '43.72000', '-111.78000'), ('HERBERT', None, '43.70000', '-111.67000'), ('MOODY', None, '43.83000', '-111.63000'), ('PLANO', None, '43.88000', '-111.88000'), ('REXBURG', 17257, '43.82520', '-111.78740'), ('SUGAR CITY', 1242, '43.87240', '-111.74650'), ('THORNTON', None, '43.75000', '-111.85000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'MOC029': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BARNUMTON', None, '38.11000', '-92.93630'), ('BRANCH', None, '37.91080', '-93.00270'), ('CAMDENTON', 2779, '38.00800', '-92.74440'), ('CLIMAX SPRINGS', 80, '38.10140', '-93.05000'), ('DECATURVILLE', None, '37.90750', '-92.69960'), ('FREEDOM', None, '38.03600', '-92.58940'), ('GREEN BAY TERRACE', None, '38.10000', '-92.76160'), ('HURRICANE DECK', None, '38.13160', '-92.79250'), ('LINN CREEK', 280, '38.03800', '-92.71130'), ('MACKS CREEK', 267, '37.96630', '-92.96910'), ('MONTREAL', None, '37.96880', '-92.59190'), ('OLD LINN CREEK', None, '38.07240', '-92.73630'), ('OSAGE BEACH', 3662, '38.15020', '-92.61770'), ('PURVIS', None, '38.16880', '-92.81710'), ('ROACH', None, '37.99380', '-92.83600'), ('SUNRISE BEACH', 368, '38.17570', '-92.78410'), ('VILLAGE OF FOUR SEASONS', 1493, '38.19820', '-92.71550'), ('WET GLAIZE', None, '37.92210', '-92.53350')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'IDC063': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('DIETRICH', 150, '42.91370', '-114.26400'), ('KIMAMA', None, '42.83000', '-113.78000'), ('OWINZA', None, '42.90000', '-114.05000'), ('RICHFIELD', 412, '43.05230', '-114.15510'), ('SHOSHONE', 1398, '42.93620', '-114.40460')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PIH'}, -'IDC061': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CRAIGMONT', 556, '46.24280', '-116.47130'), ('KAMIAH', 1160, '46.22690', '-116.02770'), ('MOHLER', None, '46.28720', '-116.34050'), ('NEZPERCE', 523, '46.23360', '-116.23880'), ('WINCHESTER', 308, '46.24110', '-116.62240')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'ARC099': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLUFF CITY', 158, '33.71720', '-93.13310'), ('BODCAW', 154, '33.55660', '-93.40110'), ('CALE', 75, '33.62790', '-93.23310'), ('EMMET', 506, '33.72210', '-93.46620'), ('PRESCOTT', 3686, '33.80070', '-93.38800'), ('ROSSTON', 265, '33.58690', '-93.27600'), ('WILLISVILLE', 188, '33.51850', '-93.29480')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'MIC083': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AHMEEK', 157, '47.29790', '-88.39700'), ('COPPER HARBOR', None, '47.47000', '-87.89000'), ('DELAWARE', None, '47.42000', '-88.10000'), ('EAGLE HARBOR', None, '47.45800', '-88.16200'), ('GAY', None, '47.23000', '-88.17000'), ('KEWEENAW POINT', None, '47.40200', '-87.71200'), ('LAC LA BELLE', None, '47.38000', '-88.02000'), ('MOHAWK', None, '47.30000', '-88.37000'), ('PHOENIX', None, '47.38900', '-88.27800')], 'partOfState': '', 'wfo': 'MQT'}, -'ARC095': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BRINKLEY', 3940, '34.88430', '-91.18900'), ('CLARENDON', 1960, '34.69550', '-91.30580'), ('FARGO', 118, '34.95500', '-91.17710'), ('HOLLY GROVE', 722, '34.59620', '-91.20070'), ('ROE', 124, '34.63090', '-91.38570')], 'partOfState': '', 'wfo': 'LZK'}, -'ARC097': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLACK SPRINGS', 114, '34.46150', '-93.71350'), ('MOUNT IDA', 981, '34.55180', '-93.63110'), ('NORMAN', 423, '34.45670', '-93.67780'), ('ODEN', 220, '34.62020', '-93.78520')], 'partOfState': '', 'wfo': 'LZK'}, -'ARC091': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FOUKE', 814, '33.26080', '-93.88640'), ('GARLAND', 352, '33.35980', '-93.71280'), ('TEXARKANA', 26448, '33.45020', '-94.01580')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'ARC093': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BASSETT', 168, '35.53610', '-90.13090'), ('BIRDSONG', 40, '35.45900', '-90.26050'), ('BLYTHEVILLE', 18272, '35.93430', '-89.92480'), ('BURDETTE', 129, '35.81490', '-89.94590'), ('DELL', 251, '35.85520', '-90.03340'), ('DYESS', 515, '35.58940', '-90.21310'), ('GOSNELL', 3968, '35.96110', '-89.97240'), ('JOINER', 540, '35.50830', '-90.14970'), ('KEISER', 808, '35.67450', '-90.09480'), ('LEACHVILLE', 1981, '35.92150', '-90.25620'), ('LUXORA', 1317, '35.75770', '-89.93020'), ('MANILA', 3055, '35.88360', '-90.16150'), ('MARIE', 108, '35.61330', '-90.08170'), ('OSCEOLA', 8875, '35.70130', '-89.99450'), ('THREE WAY', None, '35.70000', '-90.25000'), ('VICTORIA', 59, '35.75810', '-90.06070'), ('WILSON', 939, '35.56620', '-90.04190')], 'partOfState': '', 'wfo': 'MEG'}, -'COC041': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AIR FORCE ACADEMY', 7526, '38.98000', '-104.87000'), ('BLACK FOREST', 13247, '39.04630', '-104.66810'), ('BROADMOOR', None, '38.78000', '-104.85000'), ('CALHAN', 896, '39.03440', '-104.29930'), ('CASCADE', None, '38.90000', '-104.97000'), ('CHEYENNE CANYON', None, '38.79000', '-104.88000'), ('CHIPITA PARK', None, '38.92000', '-105.00000'), ('COLORADO SPRINGS', 360890, '38.86320', '-104.75990'), ('CRYSTOLA', None, '38.95000', '-105.02000'), ('ELLICOTT', None, '38.84000', '-104.38000'), ('FALCON', None, '38.93000', '-104.62000'), ('FORT CARSON', 10566, '38.74200', '-104.78220'), ('FOUNTAIN', 15197, '38.66690', '-104.69330'), ('GREEN MOUNTAIN FALLS', 773, '38.93420', '-105.01970'), ('MANITOU SPRINGS', 4980, '38.85710', '-104.91090'), ('MONUMENT', 1971, '39.07010', '-104.85710'), ('PALMER LAKE', 2179, '39.11680', '-104.90590'), ('PETERSON AFB', None, '38.83000', '-104.70000'), ('PEYTON', None, '39.03000', '-104.48000'), ('PIKES PEAK', None, '38.82000', '-105.04000'), ('RAMAH', 117, '39.12190', '-104.16660'), ('RUSH', None, '38.84000', '-104.08000'), ('SCHRIEVER AFB', None, '38.80000', '-104.52000'), ('SECURITY...WIDEFIELD', None, '38.74400', '-104.71150'), ('TRUCKTON', None, '38.73000', '-104.18000'), ('YODER', None, '38.84000', '-104.22000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PUB'}, -'COC043': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CANON CITY', 15431, '38.46400', '-105.24100'), ('COAL CREEK', 303, '38.35950', '-105.14510'), ('COALDALE', None, '38.37000', '-105.75000'), ('COTOPAXI', None, '38.37000', '-105.68000'), ('FLORENCE', 3653, '38.38520', '-105.11640'), ('HILLSIDE', None, '38.27000', '-105.60000'), ('HOWARD', None, '38.45000', '-105.84000'), ('LINCOLN PARK', 3904, '38.42580', '-105.21320'), ('PENROSE', 4070, '38.43110', '-105.01250'), ('ROCKVALE', 426, '38.36910', '-105.16330'), ('ROYAL GORGE', None, '38.46000', '-105.31300'), ('SWISSVALE', None, '38.48000', '-105.91000'), ('TEXAS CREEK', None, '38.40000', '-105.58000'), ('WILLIAMSBURG', 714, '38.38130', '-105.17490')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COC045': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BATTLEMENT MESA', 3497, '39.44150', '-108.02450'), ('CARBONDALE', 5196, '39.39730', '-107.21400'), ('CATTLE CREEK', None, '39.45000', '-107.25000'), ('GLENWOOD SPRINGS', 7736, '39.54490', '-107.33010'), ('NEW CASTLE', 1984, '39.58540', '-107.53060'), ('PARACHUTE', 1006, '39.44580', '-108.05510'), ('RIFLE', 6784, '39.53930', '-107.77780'), ('SHOSHONE', None, '39.58300', '-107.18000'), ('SILT', 1740, '39.54970', '-107.65380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'ILC203': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BENSON', 408, '40.85070', '-89.12050'), ('CAZENOVIA', None, '40.85070', '-89.33310'), ('CONGERVILLE', 466, '40.61670', '-89.20850'), ('EL PASO', 2695, '40.73980', '-89.01480'), ('EUREKA', 4871, '40.71560', '-89.27510'), ('GERMANTOWN HILLS', 2111, '40.76890', '-89.46800'), ('GOODFIELD', 686, '40.62950', '-89.27120'), ('KAPPA', 170, '40.67480', '-89.00820'), ('LOW POINT', None, '40.87840', '-89.32000'), ('METAMORA', 2700, '40.79210', '-89.36360'), ('MINONK', 2168, '40.90360', '-89.03750'), ('PANOLA', 33, '40.78510', '-89.02040'), ('ROANOKE', 1994, '40.79630', '-89.20170'), ('SECOR', 379, '40.74050', '-89.13580'), ('SPRING BAY', 436, '40.82350', '-89.52560'), ('WASHBURN', 1147, '40.92070', '-89.29170')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'COC047': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ASPEN SPRINGS', None, '39.83300', '-105.48300'), ('BLACK HAWK', 118, '39.80030', '-105.49130'), ('CENTRAL CITY', 515, '39.79980', '-105.51240'), ('EAST PORTAL', None, '39.90000', '-105.65000'), ('ROLLINSVILLE', None, '39.92000', '-105.50000'), ('TOLLAND', None, '39.90000', '-105.60000')], 'partOfState': 'CENTRAL', 'wfo': 'BOU'}, -'ILC201': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CHERRY VALLEY', 2191, '42.24000', '-88.96180'), ('DURAND', 1081, '42.43560', '-89.32860'), ('LAKE SUMMERSET', 2061, '42.44970', '-89.39750'), ('LOVES PARK', 20044, '42.33580', '-89.01000'), ('MACHESNEY PARK', 20759, '42.36040', '-89.03800'), ('NEW MILLFORD', 541, '42.17460', '-89.06540'), ('PECATONICA', 1997, '42.30990', '-89.35850'), ('ROCKFORD', 150115, '42.27030', '-89.06310'), ('ROCKFORD AIRPORT', None, '42.20000', '-89.10000'), ('ROCKTON', 5296, '42.44930', '-89.06990'), ('ROSCOE', 6244, '42.41680', '-89.00700'), ('SOUTH BELOIT', 5397, '42.48470', '-89.03340'), ('WINNEBAGO', 2958, '42.26800', '-89.24050')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'COC049': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('DEVILS THUMB PARK', None, '39.96300', '-105.75000'), ('ELKDALE', None, '40.03800', '-105.87800'), ('FRASER', 910, '39.93700', '-105.79440'), ('GRANBY', 1525, '40.08840', '-105.93720'), ('GRAND LAKE', 447, '40.25120', '-105.82140'), ('HOT SULPHUR SPRINGS', 521, '40.07370', '-106.09910'), ('KREMMLING', 1578, '40.05640', '-106.37630'), ('PARSHALL', None, '40.05000', '-106.18000'), ('RADIUM', None, '39.95000', '-106.53000'), ('TABERNASH', 165, '39.98000', '-105.85000'), ('WILLIAMS FORK RESERVOIR', None, '40.03500', '-106.20400'), ('WINTER PARK', 662, '39.88690', '-105.77940')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BOU'}, -'MTC071': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BOWDOIN', None, '48.39270', '-107.60550'), ('CHAPMAN', None, '48.86860', '-108.13250'), ('CONTENT', None, '48.02050', '-107.55970'), ('DODSON', 122, '48.39550', '-108.24360'), ('FOURCHETTE', None, '47.73330', '-107.96940'), ('FRENCHMAN RESERVOIR', None, '48.70550', '-107.22500'), ('LANDUSKY', None, '47.89770', '-108.62160'), ('LORING', None, '48.79220', '-107.86110'), ('MALTA', 2120, '48.35970', '-107.87360'), ('PHILLIPS', None, '48.09360', '-108.16330'), ('PORT OF MORGAN', None, '48.99940', '-107.83160'), ('SACO', 224, '48.45720', '-107.34190'), ('SLEEPING BUFFALO', None, '48.48380', '-107.52800'), ('SUN PRAIRIE', 1772, '47.84550', '-107.74580'), ('U L BEND', None, '47.49160', '-107.88330'), ('WAGNER', None, '48.37050', '-108.07690'), ('WHITEWATER', None, '48.75940', '-107.62690'), ('ZORTMAN', None, '47.91770', '-108.52550')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTC073': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BRADY', None, '48.03560', '-111.83920'), ('CONRAD', 2753, '48.17280', '-111.94630'), ('DUPUYER', None, '48.19250', '-112.49860'), ('HEART BUTTE', 698, '48.29050', '-112.83290'), ('LEDGER', None, '48.26030', '-111.82220'), ('VALIER', 498, '48.30190', '-112.25120')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTC075': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BROADUS', 451, '45.44290', '-105.40700')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTC077': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('AVON', 124, '46.59722', '-112.60111'), ('BLOSSBURG', None, '46.63278', '-112.32111'), ('BROCK CREEK', None, '46.60361', '-112.85472'), ('DEER LODGE', 3421, '46.39583', '-112.72917'), ('ELLISTON', 225, '46.56222', '-112.43000'), ('FINN', None, '46.76611', '-112.70278'), ('GARRISON', 112, '46.52333', '-112.81083'), ('GOLDCREEK', None, '46.58667', '-112.92778'), ('HELMVILLE', None, '46.86667', '-112.96028'), ('JENS', None, '46.60417', '-113.00528'), ('OVANDO', 71, '47.02028', '-113.13222'), ('RACETRACK', None, '46.27889', '-112.74778'), ('WOODWORTH', None, '47.10639', '-113.30167')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'KSC101': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALAMOTA', None, '38.44000', '-100.31000'), ('AMY', None, '38.46000', '-100.60000'), ('DIGHTON', 1261, '38.48150', '-100.46580'), ('HEALY', None, '38.60000', '-100.62000'), ('PENDENNIS', None, '38.65000', '-100.33000'), ('SHIELDS', None, '38.62000', '-100.45000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'MTC079': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CALYPSO', None, '46.77300', '-105.42220'), ('CROW ROCK', None, '46.91130', '-106.07020'), ('FALLON', 138, '46.83550', '-105.11880'), ('MCCLOUD', None, '46.90080', '-105.59970'), ('MILDRED', None, '46.67580', '-104.95940'), ('TERRY', 611, '46.79300', '-105.31160'), ('ZERO', None, '46.66910', '-105.48800')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'KSC103': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BASEHOR', 2238, '39.12720', '-94.92910'), ('EASTON', 362, '39.34540', '-95.11630'), ('FT LEAVENWORTH AAF', None, '39.36670', '-94.91670'), ('JARBALO', None, '39.20000', '-95.06670'), ('LANSING', 9199, '39.24820', '-94.88750'), ('LEAVENWORTH', 35420, '39.32460', '-94.92320'), ('LINWOOD', 374, '39.00000', '-95.03470'), ('TONGANOXIE', 2728, '39.11070', '-95.08420')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'VAC710': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('DOWNTOWN NORFOLK', None, '36.85500', '-76.28350'), ('GHENT', None, '36.86770', '-76.29810'), ('NORFOLK INTERNATIONAL AIR', None, '36.89670', '-76.19790'), ('NORFOLK NAS', None, '36.93560', '-76.29970'), ('NORVIEW', None, '36.88830', '-76.24580'), ('OCEAN VIEW', None, '36.95040', '-76.24800'), ('WARDS CORNER', None, '36.91870', '-76.27100'), ('WILLOUGHBY SPIT', None, '36.96670', '-76.28600')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'GAC305': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BROADHURST', None, '31.47400', '-81.91760'), ('DOCTORTOWN', None, '31.65060', '-81.83000'), ('GARDI', None, '31.53540', '-81.79960'), ('JESUP', 9279, '31.59860', '-81.88940'), ('MOUNT PLEASANT', None, '31.43460', '-81.67910'), ('ODUM', 414, '31.66530', '-82.02640'), ('SCREVEN', 702, '31.48380', '-82.01710')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'IAC157': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BROOKLYN', 1367, '41.73120', '-92.44460'), ('DEEP RIVER', 288, '41.58150', '-92.37240'), ('GRINNELL', 9105, '41.74080', '-92.72270'), ('GUERNSEY', 70, '41.64930', '-92.34310'), ('HARTWICK', 83, '41.78400', '-92.34600'), ('MALCOM', 352, '41.70750', '-92.55780'), ('MONTEZUMA', 1440, '41.58290', '-92.52750'), ('SEARSBORO', 155, '41.57990', '-92.70480')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'GAC307': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('PRESTON', 453, '32.06010', '-84.54020'), ('WESTON', 75, '31.97700', '-84.61230')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'CAC011': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ARBUCKLE', 2332, '39.01630', '-122.06060'), ('COLLEGE CITY', None, '39.00580', '-122.00830'), ('COLUSA', 5402, '39.20610', '-122.01130'), ('COLUSA NATIONAL WILDLIFE', None, '39.15750', '-122.04220'), ('CORTINA INDIAN RANCHERIA', None, '39.01610', '-122.28670'), ('CRANMORE', None, '38.98800', '-121.80550'), ('DELEVAN', None, '39.35420', '-122.19000'), ('EAST PARK RESERVOIR', None, '39.35750', '-122.51470'), ('FOUTS SPRINGS', None, '39.35330', '-122.66390'), ('GRIMES', None, '39.07440', '-122.42250'), ('LEESVILLE', None, '39.18940', '-122.42250'), ('LODOGA', None, '39.30190', '-122.48810'), ('MAXWELL', None, '39.27640', '-122.19030'), ('STONEYFORD', None, '39.37500', '-122.54300'), ('SYCAMORE', None, '39.13380', '-121.94080'), ('WILBUR SPRINGS', None, '39.03940', '-122.41860'), ('WILLIAMS', 3670, '39.15460', '-122.13680')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAC013': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALAMO', 15626, '37.85710', '-121.99860'), ('ANTIOCH', 90532, '37.98870', '-121.79890'), ('BAYVIEW-MONTALVIN', 5004, '38.00160', '-122.32270'), ('BETHEL ISLAND', 2312, '38.03220', '-121.64680'), ('BLACKHAWK', None, '37.82090', '-121.90670'), ('BRENTWOOD', 23302, '37.93360', '-121.70860'), ('CLAYTON', 10762, '37.94100', '-121.92890'), ('CONCORD', 121780, '37.97330', '-121.99990'), ('CROCKETT', 3194, '38.05110', '-122.21940'), ('DANVILLE', 41715, '37.81440', '-121.97140'), ('DISCOVERY BAY', 8981, '37.90880', '-121.59520'), ('EAST RICHMOND HEIGHTS', 3357, '37.94510', '-122.31260'), ('EL CERRITO', 4590, '37.92050', '-122.30210'), ('EL SOBRANTE', 12260, '37.97660', '-122.29260'), ('KENSINGTON', 4936, '37.90820', '-122.27730'), ('LAFAYETTE', 23908, '37.89380', '-122.11790'), ('MARTINEZ', 35866, '38.00070', '-122.11450'), ('MORAGA TOWN', None, '37.84390', '-122.12340'), ('OAKLEY', 25619, '37.98650', '-121.71600'), ('ORINDA', 17599, '37.88090', '-122.17730'), ('PACHECO', 3562, '37.98760', '-122.06230'), ('PITTSBURG', 56769, '38.01810', '-121.88950'), ('PLEASANT HILL', 32837, '37.95370', '-122.07420'), ('RICHMOND', 99216, '37.95130', '-122.36090'), ('RODEO', 8717, '38.04550', '-122.23770'), ('SAN PABLO', 30215, '37.96210', '-122.34270'), ('SAN RAMON', 44722, '37.75740', '-121.95110'), ('TARA HILLS', 5332, '37.99360', '-122.31750'), ('VINE HILL', 3260, '38.01600', '-122.09150'), ('WALNUT CREEK', 64296, '37.90200', '-122.04080'), ('WEST PITTSBURG', None, '38.03820', '-121.97400')], 'partOfState': '', 'wfo': 'MTR'}, -'MIC139': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLENDALE', 11555, '42.98570', '-85.95180'), ('BAUER', None, '42.92130', '-85.90220'), ('BEECHWOOD', 2963, '42.79700', '-86.12590'), ('COOPERSVILLE', 3910, '43.06540', '-85.93380'), ('DRENTHE', None, '42.78280', '-85.94000'), ('EASTMANVILLE', None, '43.01700', '-85.95630'), ('GRAND HAVEN', 11168, '43.05530', '-86.22420'), ('GRAND VALLEY', None, '42.97450', '-85.86970'), ('HUDSONVILLE', 7160, '42.86500', '-85.86310'), ('JAMESTOWN', None, '42.82550', '-85.84250'), ('JENISON', 17211, '42.90870', '-85.82980'), ('LAMONT', None, '43.00870', '-85.90620'), ('MARNE', None, '43.03620', '-85.82780'), ('NUNICA', None, '43.07970', '-86.06720'), ('OLIVE CENTER', None, '42.91420', '-86.08130'), ('PORT SHELDON', None, '42.89950', '-86.19970'), ('SPRING LAKE', 2514, '43.07480', '-86.19050'), ('WRIGHT', None, '43.11080', '-85.80870'), ('ZEELAND', 5805, '42.81310', '-86.01310')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'CAC015': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CRESCENT CITY', 4006, '41.75000', '-124.20000'), ('FT DICK', None, '41.87000', '-124.15000'), ('GASQUET', None, '41.85000', '-123.97000'), ('KLAMATH', 651, '41.52000', '-124.04170'), ('KLAMATH GLEN', None, '41.52000', '-124.00000'), ('REQUA', None, '41.55000', '-124.07000'), ('SMITH RIVER', None, '41.93000', '-124.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'ARC033': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('PLEASANT HILL', None, '35.52170', '-94.04890'), ('PLEASANT HILL', None, '35.52170', '-94.04890'), ('UNIONTOWN', None, '35.58440', '-94.44390'), ('CONCORD', 255, '35.47060', '-94.25750'), ('BIDVILLE', None, '35.73970', '-93.98170'), ('PLEASANT HILL', None, '35.52170', '-94.04890'), ('MULBERRY', 1627, '35.50060', '-94.05140'), ('MOUNTAINBURG', 682, '35.63560', '-94.16720'), ('VAN BUREN', 18986, '35.43670', '-94.34810'), ('ALMA', 4160, '35.47780', '-94.22170'), ('CEDARVILLE', 1133, '35.56970', '-94.36670'), ('NATURAL DAM', None, '35.64860', '-94.39440'), ('CHESTER', 99, '35.68080', '-94.17500'), ('KIBLER', 969, '35.43030', '-94.23140'), ('SHIBLEY', None, '35.45030', '-94.29360'), ('FURRY', None, '35.48060', '-94.30220'), ('DYER', 585, '35.49220', '-94.13750'), ('FIGURE FIVE', None, '35.51690', '-94.35360'), ('RUDY', 72, '35.52780', '-94.27060'), ('DORA', None, '35.45420', '-94.44060'), ('LEE CREEK', None, '35.68140', '-94.34920'), ('LOCKE', None, '35.67390', '-94.07330'), ('MT GAYLER', None, '35.75000', '-94.08330')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'CAC017': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIG BEND SUMMIT', None, '38.85000', '-120.53280'), ('BLISS STATE PARK', None, '38.98000', '-120.10000'), ('CAMERON PARK', 14549, '38.68170', '-120.98720'), ('CAMINO', None, '38.73800', '-120.67270'), ('CHIQUITA LAKE', None, '38.93810', '-120.72890'), ('CLARKSVILLE', None, '38.65500', '-121.05140'), ('COLOMA', None, '38.80000', '-120.88920'), ('COOL', None, '38.88720', '-121.01470'), ('DIAMOND SPRINGS', 4888, '38.68600', '-120.82160'), ('EL DORADO HILLS', 18016, '38.68590', '-121.08100'), ('EMERALD BAY', None, '38.96000', '-120.09000'), ('FRESH POND', None, '38.76030', '-120.52890'), ('GARDEN VALLEY', None, '38.85420', '-120.85830'), ('GEORGETOWN', 962, '38.90690', '-120.83500'), ('GREENWOOD', None, '38.89670', '-120.91170'), ('GRIZZLY FLAT', None, '38.63640', '-120.52640'), ('KIRKWOOD', 96, '38.70280', '-120.07170'), ('KYBURZ', None, '38.77470', '-120.29580'), ('LATROBE', None, '38.55970', '-120.98270'), ('LOTUS', None, '38.80170', '-120.90750'), ('LUTHER PASS', None, '38.79000', '-119.95000'), ('MEEKS BAY', None, '39.01000', '-120.12000'), ('MEYERS', None, '38.86000', '-120.01000'), ('PACIFIC HOUSE', None, '38.76000', '-120.50600'), ('PILOT HILL', None, '38.83500', '-121.01330'), ('PLACERVILLE', 9610, '38.73020', '-120.79570'), ('POLLOCK PINES', 4728, '38.75210', '-120.57060'), ('RESCUE', None, '38.71160', '-120.95030'), ('RIVERTON', None, '38.77110', '-120.44830'), ('SHINGLE SPRINGS', 2643, '38.67080', '-120.93970'), ('SMITHFLAT', None, '38.73470', '-120.75420'), ('SOMERSET', None, '38.64770', '-120.68470'), ('SOUTH LAKE TAHOE', 23609, '38.93930', '-119.98110'), ('SUGAR PINE POINT STATE PA', None, '39.06000', '-120.12000'), ('TWIN BRIDGES', None, '38.81140', '-120.12300'), ('WHITE HALL', None, '38.77530', '-120.40420')], 'partOfState': 'CENTRAL', 'wfo': 'REVSTO'}, -'CAC019': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AUBERRY', 2053, '37.07780', '-119.49360'), ('CARUTHERS', 2103, '36.54180', '-119.84170'), ('CEDAR GROVE', None, '36.79160', '-118.67220'), ('CLOVIS', 68468, '36.81960', '-119.69600'), ('COALINGA', 11668, '36.14240', '-120.35460'), ('FIREBAUGH', 5743, '36.84920', '-120.44890'), ('FIVE POINTS', None, '36.42960', '-120.10230'), ('FLORENCE LAKE', None, '37.27600', '-118.97600'), ('FOWLER', 3979, '36.62470', '-119.67230'), ('FRESNO', 427652, '36.78060', '-119.79290'), ('GRANT GROVE', None, '36.74020', '-118.96230'), ('HUME LAKE', None, '36.78650', '-118.91120'), ('HUNTINGTON LAKE', None, '37.23100', '-119.23460'), ('KERMAN', 8551, '36.72420', '-120.06100'), ('KINGSBURG', 9199, '36.51950', '-119.55480'), ('LAKE THOMAS EDISON', None, '37.37890', '-119.00990'), ('LAKE WISHON', None, '37.00720', '-118.97620'), ('LATON', 1236, '36.43400', '-119.68890'), ('MENDOTA', 7890, '36.75760', '-120.37890'), ('ORANGE COVE', 7722, '36.62250', '-119.31740'), ('PARLIER', 11145, '36.60850', '-119.53820'), ('REEDLEY', 20756, '36.60040', '-119.44830'), ('RIVERDALE', 2416, '36.43080', '-119.86600'), ('SAN JOAQUIN', 3270, '36.60690', '-120.18690'), ('SANGER', 18931, '36.70020', '-119.55320'), ('SELMA', 19444, '36.57420', '-119.61540'), ('SHAVER LAKE', 705, '37.10350', '-119.31770'), ('SQUAW VALLEY', 2691, '36.69640', '-119.19420'), ('TRANQUILITY', None, '36.64820', '-120.25140')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'VAC005': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALLEGHANY', None, '37.75000', '-80.25000'), ('CALLAGHAN', None, '37.80000', '-80.08330'), ('EARLEHURST', None, '37.66670', '-80.25000'), ('HOLLINS', 14309, '37.83330', '-79.91670'), ('IRON GATE', 404, '37.79880', '-79.79060'), ('IRON GATE', 404, '37.80000', '-79.78330'), ('JORDAN MINES', None, '37.68330', '-80.11670'), ('LONGDALE FURNACE', None, '37.83330', '-79.71670'), ('NATURAL WELL', None, '37.91670', '-79.96670'), ('POTTS CREEK', None, '37.61670', '-80.20000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'WIC101': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BOHNERS LAKE', 1952, '42.62300', '-88.28030'), ('BROWNS LAKE', 1933, '42.69240', '-88.23110'), ('BURLINGTON', 9936, '42.67790', '-88.27820'), ('EAGLE LAKE', 1320, '42.70710', '-88.12810'), ('ELMWOOD PARK', 474, '42.69290', '-87.82220'), ('NORTH BAY', 260, '42.76490', '-87.78080'), ('RACINE', 81855, '42.72820', '-87.80710'), ('ROCHESTER', 1149, '42.74060', '-88.22400'), ('STURTEVANT', 5287, '42.70030', '-87.89910'), ('UNION GROVE', 4322, '42.68420', '-88.05100'), ('WATERFORD', 4048, '42.76280', '-88.21550'), ('WATERFORD NORTH', 4761, '42.79320', '-88.22200'), ('WIND LAKE', 5202, '42.82240', '-88.15680'), ('WIND POINT', 1853, '42.78170', '-87.77290')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'IAC159': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEACONSFIELD', 11, '40.80700', '-94.05040'), ('BENTON', 40, '40.70190', '-94.35940'), ('DELPHOS', 25, '40.66320', '-94.33930'), ('DIAGONAL', 312, '40.81080', '-94.34120'), ('ELLSTON', 57, '40.84040', '-94.10830'), ('KELLERTON', 372, '40.71020', '-94.04880'), ('MALOY', 28, '40.67420', '-94.41120'), ('MOUNT AYR', 1822, '40.71420', '-94.23790'), ('REDDING', 78, '40.60600', '-94.38680'), ('TINGLEY', 171, '40.85280', '-94.19550')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'WIC107': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRUCE', 787, '45.45860', '-91.27280'), ('CONRATH', 98, '45.38470', '-91.03580'), ('GLEN FLORA', 93, '45.49680', '-90.89310'), ('HAWKINS', 317, '45.51180', '-90.71330'), ('INGRAM', 76, '45.50550', '-90.81320'), ('LADYSMITH', 3932, '45.46280', '-91.09590'), ('SHELDON', 256, '45.31110', '-90.95740'), ('TONY', 105, '45.48110', '-90.99580'), ('WEYERHAEUSER', 353, '45.42380', '-91.41440')], 'partOfState': 'NORTHWEST', 'wfo': 'MPX'}, -'MAC027': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ASHBURNHAM', None, '42.63333', '-71.90000'), ('ATHOL', 8370, '42.59180', '-72.23200'), ('AUBURN', None, '42.20000', '-71.83333'), ('BARRE', 1150, '42.42250', '-72.10770'), ('BERLIN', None, '42.38333', '-71.63333'), ('BLACKSTONE', None, '42.01667', '-71.50000'), ('BOLTON', None, '42.43333', '-71.60000'), ('BOYLSTON', None, '42.35000', '-71.73333'), ('BROOKFIELD', None, '42.21667', '-72.10000'), ('CHARLTON', None, '42.13333', '-71.96667'), ('CLINTON', 7884, '42.41870', '-71.68530'), ('DOUGLAS', None, '42.05000', '-71.73333'), ('DUDLEY', None, '42.05000', '-71.93333'), ('EAST BROOKFIELD', 1410, '42.22870', '-72.04820'), ('FITCHBURG', 39102, '42.58920', '-71.81560'), ('GARDNER', 20770, '42.58410', '-71.98620'), ('GRAFTON', None, '42.20000', '-71.68333'), ('HARDWICK', None, '42.35000', '-72.20000'), ('HARVARD', None, '42.50000', '-71.58333'), ('HOLDEN', None, '42.35000', '-71.85000'), ('HOPEDALE', 4158, '42.12680', '-71.54220'), ('HUBBARDSTON', None, '42.48333', '-72.01667'), ('LANCASTER', None, '42.45000', '-71.66667'), ('LEICESTER', None, '42.25000', '-71.90000'), ('LEOMINSTER', 41303, '42.51910', '-71.77220'), ('LUNENBURG', 1695, '42.59500', '-71.72510'), ('MENDON', None, '42.10000', '-71.55000'), ('MILFORD', 24230, '42.14860', '-71.51550'), ('MILLVILLE', None, '42.03333', '-71.58333'), ('NEW BRAINTREE', None, '42.31667', '-72.13333'), ('NORTH BROOKFIELD', 2527, '42.27170', '-72.08500'), ('NORTHBOROUGH', 6257, '42.31180', '-71.64890'), ('NORTHBRIDGE', None, '42.15000', '-71.65000'), ('OAKHAM', None, '42.35000', '-72.05000'), ('OXFORD', 5899, '42.11570', '-71.87090'), ('PAXTON', None, '42.31667', '-71.93333'), ('PETERSHAM', None, '42.48333', '-72.18333'), ('PHILLIPSTON', None, '42.55000', '-72.13333'), ('PRINCETON', None, '42.45000', '-71.86667'), ('ROYALSTON', None, '42.68333', '-72.18333'), ('RUTLAND', 2205, '42.36280', '-71.95190'), ('SHREWSBURY', None, '42.30000', '-71.71667'), ('SOUTHBOROUGH', None, '42.30000', '-71.51667'), ('SOUTHBRIDGE', 12878, '42.08390', '-72.03480'), ('SPENCER', 6032, '42.24390', '-71.99200'), ('STERLING', None, '42.43333', '-71.75000'), ('STURBRIDGE', 2047, '42.09990', '-72.06430'), ('SUTTON', None, '42.15000', '-71.76667'), ('TEMPLETON', None, '42.55000', '-72.06667'), ('UPTON', None, '42.17370', '-71.61020'), ('UXBRIDGE', None, '42.08333', '-71.60000'), ('WARREN', 1452, '42.21520', '-72.19070'), ('WEBSTER', 11600, '42.04610', '-71.87470'), ('WEST BOYLSTON', None, '42.36667', '-71.78333'), ('WEST BROOKFIELD', 1610, '42.23850', '-72.14810'), ('WESTBOROUGH', 3983, '42.26590', '-71.61710'), ('WESTMINSTER', None, '42.55000', '-71.90000'), ('WHITINSVILLE', 6340, '42.11240', '-71.67140'), ('WINCHENDON', 4246, '42.68200', '-72.04470'), ('WORCESTER', 172648, '42.26960', '-71.80890')], 'partOfState': 'CENTRAL', 'wfo': 'BOX'}, -'MAC025': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ALLSTON', None, '42.35000', '-71.13333'), ('BOSTON', 589141, '42.31667', '-71.06667'), ('BRIGHTON', None, '42.35000', '-71.15000'), ('CHARLESTOWN', None, '42.38333', '-71.06667'), ('CHELSEA', 35080, '42.39590', '-71.03350'), ('DORCHESTER', None, '42.28333', '-71.08333'), ('EAST BOSTON', None, '42.36667', '-71.03333'), ('FOREST HILLS', None, '42.30000', '-71.11667'), ('HYDE PARK', None, '42.26667', '-71.11667'), ('JAMAICA PLAIN', None, '42.30000', '-71.11667'), ('MATTAPAN', None, '42.26667', '-71.10000'), ('REVERE', 47283, '42.41830', '-70.99250'), ('ROSLINDALE', None, '42.28333', '-71.13333'), ('SOUTH BOSTON', None, '42.33333', '-71.05000'), ('WEST ROXBURY', None, '42.28333', '-71.16667'), ('WINTHROP', 18303, '42.38090', '-70.98000')], 'partOfState': '', 'wfo': 'BOX'}, -'MIC059': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLEN', 225, '41.95790', '-84.76740'), ('CAMDEN', 550, '41.75640', '-84.75700'), ('HILLSDALE', 8233, '41.92580', '-84.63570'), ('JONESVILLE', 2337, '41.98100', '-84.66650'), ('LITCHFIELD', 1458, '42.04310', '-84.75750'), ('MONTGOMERY', 386, '41.77690', '-84.80600'), ('NORTH ADAMS', 514, '41.97190', '-84.52420'), ('READING', 1134, '41.83920', '-84.74730'), ('WALDRON', 590, '41.72460', '-84.41820')], 'partOfState': 'SOUTHEAST', 'wfo': 'IWX'}, -'MAC023': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ABINGTON', 14605, '42.11740', '-70.95910'), ('BRIDGEWATER', 6664, '41.98860', '-70.97130'), ('BROCKTON', 94304, '42.08110', '-71.02550'), ('CARVER', None, '41.88333', '-70.76667'), ('DUXBURY', 1426, '42.04280', '-70.67340'), ('EAST BRIDGEWATER', None, '42.03333', '-70.95000'), ('HALIFAX', None, '41.98333', '-70.86667'), ('HANOVER', None, '42.11667', '-70.81667'), ('HANSON', 2044, '42.06440', '-70.85040'), ('HINGHAM', 5352, '42.23720', '-70.88770'), ('HULL', 11050, '42.30000', '-70.89800'), ('KINGSTON', 5380, '41.99720', '-70.71450'), ('LAKEVILLE', None, '41.85000', '-70.95000'), ('MARION', None, '41.70310', '-70.76240'), ('MARSHFIELD', 4246, '42.09140', '-70.70600'), ('MATTAPOISETT', None, '41.66260', '-70.80860'), ('MIDDLEBOROUGH', None, '41.89620', '-70.92790'), ('NORWELL', None, '42.16667', '-70.78333'), ('PEMBROKE', None, '42.06667', '-70.80000'), ('PLYMOUTH', 7658, '41.95810', '-70.67830'), ('PLYMPTON', None, '41.95000', '-70.81667'), ('ROCHESTER', None, '41.73333', '-70.81667'), ('ROCKLAND', None, '42.13333', '-70.91667'), ('SCITUATE', 5069, '42.18910', '-70.73430'), ('WAREHAM', None, '41.75230', '-70.72140'), ('WEST BRIDGEWATER', None, '42.01667', '-71.00000'), ('WHITMAN', None, '42.08333', '-70.93333')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAC021': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AVON', None, '42.11667', '-71.03333'), ('BELLINGHAM', 4497, '42.09410', '-71.47460'), ('BRAINTREE', 33698, '42.20260', '-71.00340'), ('BROOKLINE', 57107, '42.32310', '-71.14240'), ('CANTON', None, '42.15000', '-71.13333'), ('COHASSET', None, '42.23333', '-70.80000'), ('DEDHAM', 23464, '42.24660', '-71.17920'), ('DOVER', 2216, '42.24750', '-71.27580'), ('FOXBOROUGH', 5509, '42.06520', '-71.24840'), ('FRANKLIN', 29560, '42.08690', '-71.38730'), ('HOLBROOK', 10785, '42.14780', '-71.00710'), ('MEDFIELD', 6670, '42.18790', '-71.30470'), ('MEDWAY', None, '42.13333', '-71.40000'), ('MILLIS', None, '42.16890', '-71.35570'), ('MILTON', 26062, '42.24330', '-71.08320'), ('NEEDHAM', 28911, '42.28070', '-71.24100'), ('NORFOLK', None, '42.11667', '-71.31667'), ('NORWOOD', 28587, '42.18530', '-71.19530'), ('PLAINVILLE', None, '42.00000', '-71.33333'), ('QUINCY', 88025, '42.26130', '-71.00700'), ('RANDOLPH', 30963, '42.17520', '-71.05430'), ('SHARON', 5941, '42.11750', '-71.18220'), ('STOUGHTON', None, '42.11667', '-71.10000'), ('WALPOLE', 5867, '42.13780', '-71.24470'), ('WELLESLEY', 26613, '42.30450', '-71.28680'), ('WESTWOOD', None, '42.21667', '-71.21667'), ('WEYMOUTH', 53988, '42.20620', '-70.94510'), ('WRENTHAM', None, '42.06667', '-71.33333')], 'partOfState': '', 'wfo': 'BOX'}, -'PAC043': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BERRYSBURG', 354, '40.60280', '-76.80910'), ('CLIFTON', None, '40.24000', '-76.72000'), ('COLONIAL PARK', 13259, '40.29990', '-76.80640'), ('DAUPHIN', 773, '40.36880', '-76.93040'), ('DEHART DAM', None, '40.45000', '-76.75000'), ('ELIZABETHVILLE', 1344, '40.54750', '-76.81600'), ('ELLENDALE FORGE', None, '40.40000', '-76.85000'), ('GRATZ', 676, '40.60560', '-76.71730'), ('HALIFAX', 875, '40.46500', '-76.93340'), ('HARRISBURG', 48950, '40.27600', '-76.88450'), ('HERSHEY', 12771, '40.28010', '-76.64770'), ('HIGHSPIRE', 2720, '40.20850', '-76.78590'), ('HUMMELSTOWN', 4360, '40.26640', '-76.71290'), ('LINGLESTOWN', 6414, '40.34320', '-76.79400'), ('LYKENS', 1937, '40.56330', '-76.69790'), ('MIDDLETOWN', 7378, '40.20090', '-76.72930'), ('MILLERSBURG', 2562, '40.54240', '-76.95600'), ('PENN NATIONAL RACEWAY', None, '40.40000', '-76.67000'), ('PILLOW', 304, '40.64120', '-76.80240'), ('PROGRESS', 9647, '40.29050', '-76.83660'), ('ROCKVILLE', None, '40.32000', '-76.90000'), ('RUTHERFORD HEIGHTS', None, '40.26890', '-76.76820'), ('SKYLINE VIEW', 2307, '40.33830', '-76.72630'), ('STEELTON', 5858, '40.22610', '-76.82590'), ('WILLIAMSTOWN', 1433, '40.58070', '-76.61790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAC041': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALLAMUCHY-PANTHER VALLEY', 3125, '40.91210', '-74.83190'), ('ALPHA', 2482, '40.65980', '-75.15750'), ('BEATTYESTOWN', None, '40.81920', '-74.85550'), ('BELVIDERE', 2771, '40.82810', '-75.07320'), ('BRASS CASTLE', 1507, '40.76080', '-75.01220'), ('GREAT MEADOWS-VIENNA', 1264, '40.87080', '-74.88980'), ('HACKETTSTOWN', 10403, '40.85380', '-74.82540'), ('HAMPTON', 1546, '40.70870', '-74.96780'), ('OXFORD', 2283, '40.81210', '-74.99580'), ('PHILLIPSBURG', 15166, '40.68890', '-75.18280'), ('WASHINGTON', 6712, '40.75930', '-74.98290'), ('DELAWARE WATER GAP', 744, '40.97860', '-75.13760'), ('PORTLAND', 579, '40.92050', '-75.09810')], 'partOfState': 'NORTHWEST', 'wfo': 'PHI'}, -'PAC047': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BENEZETTE', None, '41.31000', '-78.35000'), ('BRANDY CAMP', None, '41.34000', '-78.70000'), ('BROCKPORT', None, '41.27000', '-78.73000'), ('EAST BRANCH DAM', None, '41.53000', '-78.58000'), ('FORCE', None, '41.26000', '-78.49000'), ('JAMES CITY', None, '41.62000', '-78.83000'), ('JOHNSONBURG', 3003, '41.49190', '-78.67890'), ('MEDIX RUN', None, '41.29000', '-78.39000'), ('PORTLAND MILLS', None, '41.38000', '-78.84000'), ('RIDGWAY', 4591, '41.42560', '-78.72880'), ('ST. MARYS', 14502, '41.42860', '-78.55770'), ('WILCOX', None, '41.58000', '-78.68000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAC045': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALDAN', 4313, '39.92290', '-75.28880'), ('BOOTHWYN', 5206, '39.83550', '-75.44520'), ('BROOKHAVEN', 7985, '39.87060', '-75.39130'), ('BROOMALL', 11046, '39.96990', '-75.35300'), ('CHESTER', 36854, '39.84540', '-75.37220'), ('CHESTER HEIGHTS', 2481, '39.89440', '-75.46770'), ('CHESTER TOWNSHIP', 4604, '39.85000', '-75.39740'), ('CLIFTON HEIGHTS', 6779, '39.92900', '-75.29610'), ('COLLINGDALE', 8664, '39.91450', '-75.27740'), ('DARBY', 10299, '39.92050', '-75.26100'), ('DARBY TOWNSHIP', 9622, '39.89970', '-75.27320'), ('DREXEL HILL', 29364, '39.94920', '-75.30380'), ('EAST LANSDOWNE', 2586, '39.94380', '-75.26170'), ('EDDYSTONE', 2442, '39.85610', '-75.33280'), ('FOLCROFT', 6978, '39.88860', '-75.27660'), ('FOLSOM', 8072, '39.89140', '-75.32910'), ('GLENOLDEN', 7476, '39.89870', '-75.29280'), ('LANSDOWNE', 11044, '39.94050', '-75.27530'), ('LIMA', 3225, '39.91670', '-75.44230'), ('LINWOOD', 3374, '39.82340', '-75.42450'), ('MARCUS HOOK', 2314, '39.81280', '-75.41640'), ('MEDIA', 5533, '39.91950', '-75.38880'), ('MORTON', 2715, '39.91090', '-75.32700'), ('NETHER PROVIDENCE TOWNSHI', None, '39.89790', '-75.36820'), ('NORWOOD', 5985, '39.88590', '-75.29600'), ('PARKSIDE', 2267, '39.86650', '-75.37870'), ('PROSPECT PARK', 6594, '39.88560', '-75.30750'), ('RADNOR TOWNSHIP', 30878, '40.02830', '-75.36830'), ('RIDLEY PARK', 7196, '39.87770', '-75.32560'), ('ROSE VALLEY', 944, '39.89480', '-75.38610'), ('RUTLEDGE', 860, '39.90070', '-75.32780'), ('SHARON HILL', 5468, '39.90780', '-75.26920'), ('SPRINGFIELD', 23677, '39.92770', '-75.33760'), ('SWARTHMORE', 6170, '39.90210', '-75.34830'), ('TINICUM TOWNSHIP', 4353, '39.86500', '-75.27520'), ('TRAINER', 1901, '39.82360', '-75.40500'), ('UPLAND', 2977, '39.85670', '-75.37980'), ('UPPER PROVIDENCE TOWNSHIP', 10509, '39.93770', '-75.39650'), ('VILLAGE GREEN-GREEN RIDGE', 8279, '39.86390', '-75.42490'), ('WOODLYN', 10036, '39.87740', '-75.34410'), ('YEADON', 11762, '39.93270', '-75.25190')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'ALC049': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('COLLINSVILLE', 1644, '34.26660', '-85.86300'), ('CROSSVILLE', 1431, '34.28630', '-85.99360'), ('FORT PAYNE', 12938, '34.45380', '-85.69440'), ('FYFFE', 971, '34.45100', '-85.90640'), ('GERALDINE', 786, '34.36080', '-86.00300'), ('HAMMONDVILLE', 486, '34.56930', '-85.63830'), ('HENAGAR', 2400, '34.63390', '-85.73740'), ('IDER', 664, '34.70070', '-85.66690'), ('LAKEVIEW', 163, '34.39220', '-85.97330'), ('MENTONE', 451, '34.56830', '-85.58270'), ('PINE RIDGE', 243, '34.44440', '-85.77970'), ('POWELL', 926, '34.53080', '-85.89510'), ('RAINSVILLE', 4499, '34.49880', '-85.84490'), ('SHILOH', 289, '34.46550', '-85.87730'), ('SYLVANIA', 1186, '34.55980', '-85.80760'), ('VALLEY HEAD', 611, '34.55080', '-85.62580')], 'partOfState': 'NORTHEAST', 'wfo': 'HUN'}, -'OHC001': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHERRY FORK', 127, '38.88840', '-83.61350'), ('MANCHESTER', 2043, '38.69140', '-83.60520'), ('PEEBLES', 1739, '38.94720', '-83.40830'), ('ROME', 117, '38.66480', '-83.37910'), ('SEAMAN', 1039, '38.93880', '-83.57310'), ('WEST UNION', 2903, '38.79320', '-83.54370'), ('WINCHESTER', 1025, '38.94260', '-83.65360')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHC007': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANDOVER', 1269, '41.60720', '-80.56960'), ('ASHTABULA', 20962, '41.87950', '-80.79820'), ('CONNEAUT', 12485, '41.92630', '-80.57020'), ('EDGEWOOD', 4762, '41.87870', '-80.74080'), ('GENEVA', 6595, '41.79980', '-80.94850'), ('GENEVA-ON-THE-LAKE', 1545, '41.85660', '-80.94600'), ('JEFFERSON', 3572, '41.73860', '-80.76870'), ('NORTH KINGSVILLE', 2658, '41.91720', '-80.67020'), ('ORWELL', 1519, '41.53610', '-80.85850'), ('ROAMING SHORES', 1239, '41.63670', '-80.82850'), ('ROCK CREEK', 584, '41.66070', '-80.85380')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'PRC071': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ISABELA', 12818, '18.50530', '-67.02100'), ('MORA', 1857, '18.46500', '-67.03300')], 'partOfState': '', 'wfo': 'SJU'}, -'ALC041': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BRADLEYTON', None, '31.90110', '-86.24250'), ('BRANTLEY', 920, '31.58170', '-86.25720'), ('BULLOCK', None, '31.54110', '-86.18140'), ('DOZIER', 391, '31.49140', '-86.36560'), ('GLENWOOD', 191, '31.66670', '-86.17100'), ('HIGHLAND HOME', None, '31.95310', '-86.31440'), ('HONORAVILLE', None, '31.85030', '-86.40640'), ('LIVE OAK', None, '31.80860', '-86.24770'), ('LUVERNE', 2635, '31.71580', '-86.26440'), ('PATSBURG', None, '31.78690', '-86.22840'), ('PETREY', 63, '31.84910', '-86.20730'), ('RUTLEDGE', 476, '31.73060', '-86.31030'), ('SAVILLE', None, '31.87780', '-86.33130')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'OHC009': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALBANY', 808, '39.22370', '-82.19890'), ('AMESVILLE', 184, '39.40140', '-81.95530'), ('ATHENS', 21342, '39.32420', '-82.09610'), ('CHAUNCEY', 1067, '39.39950', '-82.12800'), ('COOLVILLE', 528, '39.22030', '-81.79830'), ('GLOUSTER', 1972, '39.50280', '-82.08480'), ('JACKSONVILLE', 544, '39.47580', '-82.08010'), ('NELSONVILLE', 5230, '39.45880', '-82.22600'), ('THE PLAINS', 2931, '39.36560', '-82.13400'), ('TRIMBLE', 466, '39.48640', '-82.07990')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'ALC045': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ARGUTA', None, '31.56870', '-85.59540'), ('ARITON', 772, '31.59840', '-85.71540'), ('ASBURY', None, '31.51110', '-85.54530'), ('BARNES', None, '31.54200', '-85.67440'), ('BEAMON', None, '31.51850', '-85.58620'), ('BELLS CROSSROADS', None, '31.52150', '-85.45080'), ('BERTHA', None, '31.54110', '-85.42880'), ('BLACKWELL FIELD A/P', None, '31.42980', '-85.61940'), ('BOWDEN TERRACE', None, '31.34710', '-85.71850'), ('BROWNS CROSSROADS', None, '31.45540', '-85.52770'), ('CAIRNS AAF', None, '31.27540', '-85.71160'), ('CLAYHATCHEE', 501, '31.23480', '-85.72240'), ('CLAYHATCHEE', 501, '31.23480', '-85.72240'), ('CLOPTON', None, '31.60720', '-85.43000'), ('DALEVILLE', 4653, '31.30570', '-85.71440'), ('DILL', None, '31.51020', '-85.65320'), ('DYKES CROSSROADS', None, '31.59940', '-85.56120'), ('ECHO', None, '31.47450', '-85.46360'), ('EWELL', None, '31.42080', '-85.57470'), ('FORT RUCKER', 6052, '31.34340', '-85.71510'), ('GERALD', None, '31.32210', '-85.75750'), ('GRIMES', 459, '31.30340', '-85.44830'), ('HOLIDAY VILLAGE', None, '31.33940', '-85.76560'), ('KELLY', None, '31.31920', '-85.65410'), ('LEVEL PLAINS', 1544, '31.29900', '-85.77700'), ('MABSON', None, '31.46760', '-85.56160'), ('MARLEY HILL', None, '31.49290', '-85.69450'), ('MIDLAND CITY', 1703, '31.31630', '-85.49340'), ('NAPIER FIELD', 404, '31.31510', '-85.45530'), ('NEWTON', 1708, '31.33350', '-85.60380'), ('OZARK', 15119, '31.45700', '-85.64040'), ('PHILLIPS CROSSROADS', None, '31.61650', '-85.60690'), ('PINCKARD', 667, '31.31020', '-85.54780'), ('PLEASANT HILL', None, '31.42770', '-85.67460'), ('ROBERTS CROSSROADS', None, '31.60040', '-85.52900'), ('ROCKY HEAD', None, '31.56750', '-85.76830'), ('SKIPPERVILLE', None, '31.55710', '-85.54630'), ('SNOW HILL', None, '31.45810', '-85.48070'), ('SYLVAN GROVE', None, '31.35250', '-85.46570'), ('WATERFORD', None, '31.35880', '-85.60380')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'ALC047': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ORRVILLE', 230, '32.30830', '-87.24540'), ('SELMA', 20512, '32.41610', '-87.03300'), ('SELMONT-WEST SELMONT', 3502, '32.37840', '-87.00670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BMX'}, -'WIC109': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BALDWIN', 2667, '44.96290', '-92.37110'), ('DEER PARK', 227, '45.18860', '-92.38660'), ('GLENWOOD CITY', 1183, '45.05730', '-92.17160'), ('HAMMOND', 1153, '44.97300', '-92.43710'), ('HUDSON', 8775, '44.96690', '-92.74210'), ('NEW RICHMOND', 6310, '45.12210', '-92.53670'), ('ROBERTS', 969, '44.98500', '-92.55200'), ('SOMERSET', 1556, '45.12730', '-92.67600'), ('STAR PRAIRIE', 574, '45.19830', '-92.53180'), ('WILSON', 176, '44.95560', '-92.17240'), ('WOODVILLE', 1104, '44.95250', '-92.28640')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MIC131': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BERGLAND', None, '46.60000', '-89.57000'), ('BRUCE CROSSING', None, '46.53000', '-89.18000'), ('CLARK LAKE', None, '46.63400', '-89.77100'), ('EWEN', None, '46.53000', '-89.28000'), ('FOURTEEN MILE POINT', None, '46.99200', '-89.11700'), ('LAKE OF THE CLOUDS', None, '46.80400', '-89.75200'), ('MASS CITY', None, '46.77000', '-89.08000'), ('MERRIWEATHER', None, '46.57000', '-89.63000'), ('MIRROR LAKE', None, '46.76200', '-89.77000'), ('ONTONAGON', 1769, '46.86710', '-89.31430'), ('PAULDING', None, '46.40000', '-89.18000'), ('ROCKLAND', None, '46.73800', '-89.17900'), ('SILVER CITY', None, '46.83000', '-89.57000'), ('TROUT CREEK', None, '46.48000', '-89.02000'), ('WHITE PINE', None, '46.75400', '-89.58400')], 'partOfState': '', 'wfo': 'MQT'}, -'TXC089': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COLUMBUS', 3916, '29.70440', '-96.55150'), ('EAGLE LAKE', 3664, '29.58710', '-96.32830'), ('WEIMAR', 1981, '29.70080', '-96.77830')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'MIC135': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('COMINS', None, '44.80000', '-84.05000'), ('FAIRVIEW', None, '44.71660', '-84.05000'), ('LUZERNE', None, '44.61660', '-84.26660'), ('MACK LAKE', None, '44.56000', '-84.10000'), ('MCKINLEY', None, '44.63330', '-83.93330'), ('MIO', 2016, '44.66300', '-84.13000'), ('RED OAK', None, '44.70000', '-84.28340')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIC137': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ELMIRA', None, '45.06700', '-84.85000'), ('GAYLORD', 3681, '45.03200', '-84.67410'), ('JOHANNESBURG', None, '44.98400', '-84.46000'), ('OTSEGO LAKE STATE PARK', None, '44.93000', '-84.70000'), ('SPARR', None, '45.05000', '-84.58330'), ('VANDERBILT', 587, '45.14350', '-84.66350'), ('WATERS', None, '44.89660', '-84.70000')], 'partOfState': 'NORTHWEST', 'wfo': 'APX'}, -'TXC083': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BURKETT', None, '31.99580', '-99.22530'), ('COLEMAN', 5127, '31.82720', '-99.42610'), ('ECHO', None, '31.92810', '-99.31750'), ('FISK', None, '31.67080', '-99.48890'), ('GLEN COVE', None, '31.86580', '-99.63720'), ('GOLDSBORO', None, '32.06000', '-99.68080'), ('GOULDBUSK', None, '31.55470', '-99.47640'), ('LEADAY', None, '31.56780', '-99.67280'), ('MOZELLE', None, '31.59890', '-99.49250'), ('NOVICE', 142, '31.98940', '-99.62330'), ('ROCKWOOD', None, '31.50080', '-99.37310'), ('SANTA ANNA', 1081, '31.74190', '-99.32140'), ('SHIELDS', None, '31.59310', '-99.42390'), ('SILVER VALLEY', None, '31.95640', '-99.54580'), ('TALPA', None, '31.77640', '-99.70920'), ('TRICKHAM', None, '31.58750', '-99.23030'), ('VALERA', None, '31.75280', '-99.54690'), ('VOSS', None, '31.62080', '-99.56140'), ('WHON', None, '31.49030', '-99.30580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXC081': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRONTE', 1076, '31.88550', '-100.29480'), ('ROBERT LEE', 1171, '31.89220', '-100.48440'), ('SANCO', None, '32.00830', '-100.52360'), ('SILVER', None, '32.07080', '-100.68220'), ('TENNYSON', None, '31.74170', '-100.28580')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'TXC087': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DODSON', 115, '34.76500', '-100.01950'), ('DOZIER', None, '35.08140', '-100.34440'), ('LUTIE', None, '35.02310', '-100.22222'), ('QUAIL', 33, '34.90900', '-100.40500'), ('SAMNORWOOD', 39, '35.05530', '-100.28430'), ('WELLINGTON', 2275, '34.85350', '-100.21320')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC085': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALLEN', 43554, '33.10970', '-96.66950'), ('ANNA', 1225, '33.35280', '-96.54980'), ('BLUE RIDGE', 672, '33.29840', '-96.39990'), ('CELINA', 1861, '33.32000', '-96.78380'), ('FAIRVIEW', 2644, '33.14220', '-96.62490'), ('FARMERSVILLE', 3118, '33.16160', '-96.35760'), ('FRISCO', 33714, '33.14450', '-96.81300'), ('JOSEPHINE', 594, '33.06160', '-96.31630'), ('LAVON', 387, '33.02670', '-96.43820'), ('LOWRY CROSSING', 1229, '33.16790', '-96.54450'), ('LUCAS', 2890, '33.10140', '-96.57770'), ('MCKINNEY', 54369, '33.20090', '-96.65490'), ('MELISSA', 1350, '33.28260', '-96.57720'), ('MURPHY', 3099, '33.01280', '-96.60740'), ('NEVADA', 563, '33.03910', '-96.37170'), ('NEW HOPE', 662, '33.21240', '-96.56460'), ('PARKER', 1379, '33.05400', '-96.63640'), ('PLANO', 222030, '33.04620', '-96.74670'), ('PRINCETON', 3477, '33.18510', '-96.50410'), ('PROSPER', 2097, '33.24020', '-96.78590'), ('ST. PAUL', 542, '33.04620', '-96.54860'), ('WESTMINSTER', 390, '33.35890', '-96.45790'), ('WESTON', 635, '33.32820', '-96.64410'), ('WYLIE', 15132, '33.04260', '-96.51390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC249': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALICE', 19010, '27.75520', '-98.06550'), ('BEN BOLT', None, '27.63333', '-98.08333'), ('LAKE ALICE', None, '27.80770', '-98.06380'), ('ORANGE GROVE', 1288, '27.95580', '-97.93890'), ('PERNITAS POINT', 269, '28.05830', '-97.90610'), ('PREMONT', 2772, '27.35780', '-98.12410'), ('SAN DIEGO', 4753, '27.75920', '-98.23830'), ('SANDIA', 431, '28.01190', '-97.88190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXC245': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BEAUMONT', 113866, '30.08780', '-94.14450'), ('BEVIL OAKS', 1346, '30.15540', '-94.27160'), ('CENTRAL GARDENS', 4106, '29.99180', '-94.02070'), ('CHINA', 1112, '30.05220', '-94.33560'), ('FANNETT', None, '29.92580', '-94.25060'), ('GROVES', 15733, '29.94590', '-93.91670'), ('HAMSHIRE', None, '29.86140', '-94.31220'), ('NEDERLAND', 17422, '29.97070', '-93.99590'), ('NOME', 515, '30.03440', '-94.41810'), ('PORT ARTHUR', 57755, '29.89860', '-93.92860'), ('PORT NECHES', 13601, '29.97420', '-93.94120'), ('SABINE PASS', None, '29.73330', '-93.89420'), ('SEA RIM STATE PARK', None, '29.68750', '-94.05000')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'CAC059': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALISO VIEJO', 40166, '33.56750', '-117.72530'), ('ANAHEIM', 328014, '33.83890', '-117.87230'), ('BREA', 35410, '33.92360', '-117.86720'), ('BUENA PARK', 78282, '33.85770', '-118.00330'), ('COSTA MESA', 108724, '33.66680', '-117.91260'), ('COTO DE CAZA', 13057, '33.60410', '-117.58600'), ('CYPRESS', 46229, '33.81630', '-118.03790'), ('EL TORO', None, '33.64710', '-117.68270'), ('EL TORO STATION', None, '33.67920', '-117.71840'), ('FOUNTAIN VALLEY', 54978, '33.71090', '-117.95030'), ('FULLERTON', 126003, '33.88480', '-117.92810'), ('GARDEN GROVE', 165196, '33.77880', '-117.95940'), ('HUNTINGTON BEACH', 189594, '33.69180', '-118.00810'), ('IRVINE', 143072, '33.66210', '-117.79580'), ('LA HABRA', 58974, '33.92740', '-117.95060'), ('LA PALMA', 15408, '33.85090', '-118.03870'), ('LAGUNA BEACH', 23727, '33.53990', '-117.76070'), ('LAGUNA HILLS', 31178, '33.59980', '-117.71090'), ('LAGUNA NIGUEL', 61891, '33.52650', '-117.70430'), ('LOS ALAMITOS', 11536, '33.79860', '-118.05810'), ('MISSION VIEJO', 93102, '33.61240', '-117.65160'), ('ORANGE', 128821, '33.80530', '-117.82400'), ('PLACENTIA', 46488, '33.88160', '-117.85480'), ('PORTOLA HILLS', 6391, '33.68370', '-117.63200'), ('RANCHO SANTA MARGARITA', 47214, '33.64070', '-117.60220'), ('ROSSMOOR', 10298, '33.78950', '-118.07890'), ('SAN CLEMENTE', 49936, '33.44720', '-117.61110'), ('SAN JUAN CAPISTRANO', 33826, '33.50160', '-117.65260'), ('SANTA ANA', 337977, '33.73640', '-117.88210'), ('SEAL BEACH', 24157, '33.75850', '-118.07580'), ('STANTON', 37403, '33.80040', '-117.99090'), ('TRABUCO HIGHLANDS', None, '33.61490', '-117.56550'), ('TUSTIN', 67504, '33.73000', '-117.81110'), ('TUSTIN FOOTHILLS', 24044, '33.76450', '-117.79300'), ('VILLA PARK', 5999, '33.81850', '-117.81030'), ('WESTMINSTER', 88207, '33.75140', '-117.99310'), ('YORBA LINDA', 58918, '33.88870', '-117.76630')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'TXC247': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GUERRA', 8, '26.88300', '-98.88500'), ('HEBBRONVILLE', 4498, '27.31740', '-98.68600'), ('RANDADO', None, '27.08330', '-98.87000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXC241': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROOKELAND', None, '31.12920', '-93.98970'), ('BUNA', 2269, '30.44430', '-93.96170'), ('EVADALE', 1430, '30.33860', '-94.06120'), ('GIST', None, '30.27420', '-93.90560'), ('HOLLY SPRINGS', None, '30.89690', '-93.88390'), ('JASPER', 8247, '30.92040', '-93.99510'), ('KIRBYVILLE', 2085, '30.65790', '-93.89990'), ('MAGNOLIA SPRINGS', None, '30.73530', '-94.02640'), ('MT. UNION', None, '30.69900', '-94.02300'), ('ROGANVILLE', None, '30.80000', '-93.90330'), ('SAM RAYBURN DAM', None, '31.06140', '-94.10640')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXC243': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FORT DAVIS', 1050, '30.59000', '-103.90000'), ('MCDONALD OBSERVATORY', None, '30.67000', '-104.02000'), ('VALENTINE', 187, '30.58910', '-104.49500')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'NMC041': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARCH', None, '34.11300', '-103.14200'), ('CAUSEY', 52, '33.86520', '-103.11680'), ('DORA', 130, '33.93320', '-103.33530'), ('ELIDA', 183, '33.94420', '-103.65460'), ('FLOYD', 78, '34.21470', '-103.54890'), ('KENNA', None, '33.84200', '-103.77100'), ('LINGO', None, '33.78800', '-103.11400'), ('MILNESAND', None, '33.64300', '-103.33900'), ('PEP', None, '33.83600', '-103.33500'), ('PORTALES', 11131, '34.18110', '-103.34530'), ('ROGERS', None, '33.98200', '-103.23000'), ('TOLAR', None, '34.45100', '-103.93100')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ABQ'}, -'NMC043': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALGODONES', 688, '35.38100', '-106.47900'), ('BANDELIER NATIONAL MONUME', None, '35.78300', '-106.26700'), ('BERNALILLO', 6611, '35.31600', '-106.55570'), ('CANON', None, '35.65700', '-106.73500'), ('CANONES', None, '35.67400', '-106.75200'), ('COCHITI LAKE', None, '35.64800', '-106.33700'), ('COCHITI PUEBLO', None, '35.60800', '-106.34700'), ('CORRALES', 7334, '35.23500', '-106.62000'), ('COUNSELORS', None, '36.20900', '-107.45700'), ('CUBA', 590, '36.02250', '-106.95420'), ('DOMINGO', None, '35.51100', '-106.31900'), ('FRIJOLES', None, '35.77900', '-106.27100'), ('JEMEZ PUEBLO', 1953, '35.61630', '-106.72620'), ('JEMEZ SPRINGS', 375, '35.77370', '-106.68840'), ('LA JARA', 209, '36.08800', '-106.97400'), ('PENA BLANCA', 661, '35.57140', '-106.33620'), ('PLACITAS', 3452, '35.30700', '-106.42400'), ('REGINA', 99, '36.18400', '-106.95600'), ('RIO RANCHO', 51765, '35.27340', '-106.66040'), ('SAN FELIPE PUEBLO', 2080, '35.43430', '-106.42840'), ('SAN YSIDRO', 238, '35.55650', '-106.77190'), ('SANDIA PUEBLO', None, '35.25600', '-106.57100'), ('SANTA ANA PUEBLO', 479, '35.35250', '-106.51850'), ('SANTO DOMINGO PUEBLO', 2550, '35.51590', '-106.36580'), ('TORREON NAVAJO MISSION', None, '35.79900', '-107.18100'), ('VALLECITOS', None, '35.66700', '-106.66700'), ('ZIA PUEBLO', 646, '35.51390', '-106.72540')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABQ'}, -'NMC045': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARCHULETA', None, '36.79400', '-107.70800'), ('AZTEC', 6378, '36.82840', '-108.00460'), ('BLANCO TRADING POST', None, '36.36700', '-107.80000'), ('BLOOMFIELD', 6417, '36.71170', '-107.97740'), ('BURNHAM', None, '36.36700', '-108.51700'), ('CEDAR HILL', None, '36.93700', '-107.89000'), ('CHACO CANYON', None, '36.06700', '-107.96700'), ('CRYSTAL', 347, '36.04600', '-108.96600'), ('EL HUERFANO TRADING POST', None, '36.41700', '-107.83300'), ('FARMINGTON', 37844, '36.75470', '-108.18560'), ('FLORA VISTA', 1383, '36.80210', '-108.08200'), ('FRUITLAND', None, '36.73900', '-108.39500'), ('KIRTLAND', 6190, '36.73950', '-108.34310'), ('LA PLATA', None, '36.92900', '-108.19000'), ('LAKE VALLEY', None, '36.09200', '-108.15700'), ('NAGEEZI', 296, '36.26700', '-107.74100'), ('NASCHITTI', 360, '36.06220', '-108.68100'), ('NEWCOMB', 387, '36.28330', '-108.70680'), ('RATTLESNAKE', None, '36.75500', '-108.80100'), ('SANOSTEE', 429, '36.43480', '-108.87270'), ('SHEEP SPRINGS', 237, '36.14300', '-108.70700'), ('SHIPROCK', 8156, '36.79200', '-108.69600'), ('TOADLENA', None, '36.23700', '-108.89200'), ('TOCITO', None, '36.39900', '-108.78100'), ('TURLEY', None, '36.75300', '-107.76400'), ('WASHINGTON PASS', None, '36.07600', '-108.85800')], 'partOfState': 'NORTHWEST', 'wfo': 'ABQ'}, -'NMC047': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BELL RANCH', None, '35.53000', '-104.09400'), ('CHAPELLE', None, '35.38900', '-105.29300'), ('CONCHAS', None, '35.40300', '-104.18900'), ('COWLES', None, '35.81200', '-105.65900'), ('EL PORVENIR', None, '35.69700', '-105.38200'), ('GALLINAS', None, '35.67900', '-105.35300'), ('GASCON', None, '35.88700', '-105.44600'), ('LAS VEGAS', 14565, '35.59920', '-105.21960'), ('LOS MONTOYAS', None, '35.41900', '-105.20700'), ('LOWER COLONIAS', None, '35.54200', '-105.58300'), ('MAES', None, '35.68300', '-104.60000'), ('MANUELITAS', None, '35.80100', '-105.27800'), ('MINERAL HILL', None, '35.61000', '-105.40100'), ('MONTEZUMA', None, '35.65200', '-105.27600'), ('MOSQUERO', 120, '35.77450', '-103.95430'), ('NORTH SAN YSIDRO', None, '35.46900', '-105.55300'), ('OJITOS FRIOS', None, '35.51700', '-105.31700'), ('PECOS', 1441, '35.57500', '-105.67870'), ('RIBERA', None, '35.37400', '-105.44800'), ('ROCIADA', None, '35.83200', '-105.42000'), ('ROMEROVILLE', None, '35.52300', '-105.24400'), ('ROWE', None, '35.49200', '-105.67500'), ('SAN ANTONIO', None, '35.62900', '-105.24500'), ('SAN AUGUSTIN', None, '35.45800', '-105.14500'), ('SAN GERONIMO', None, '35.58000', '-105.39500'), ('SAN IGNACIO', None, '35.77100', '-105.35400'), ('SAN JOSE', None, '35.39700', '-105.47400'), ('SAN JUAN', 592, '35.14600', '-105.36500'), ('SAN MIGUEL', None, '35.36400', '-105.45000'), ('SAN PABLO', None, '35.54700', '-105.39900'), ('SAPELLO', None, '35.77300', '-105.25300'), ('SENA', None, '35.29800', '-105.39200'), ('SOUTH SAN YSIDRO', None, '35.45000', '-105.57700'), ('TECOLOTE', None, '35.46000', '-105.28000'), ('TECOLOTITO', None, '35.23400', '-105.15900'), ('TERERRO', None, '35.74200', '-105.67400'), ('TIERRA MONTE', None, '35.85900', '-105.34700'), ('TREMENTINA', None, '35.47000', '-104.52700'), ('TRUJILLO', None, '35.53500', '-104.69100'), ('UPPER COLONIAS', None, '35.57600', '-105.58400'), ('VARIADERO', None, '35.38800', '-104.45900'), ('VILLANUEVA', None, '35.26700', '-105.36000'), ('WATROUS', None, '35.79100', '-104.98100')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'NMC049': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('AGUA FRIA', 2051, '35.64770', '-106.02150'), ('CHAMITA', None, '35.07000', '-106.09600'), ('CHIMAYO', 2924, '35.99880', '-105.92850'), ('CHUPADERO', 318, '35.82300', '-105.91600'), ('CUNDIYO', 95, '35.95900', '-105.89600'), ('CUYAMUNGUE', 421, '35.86980', '-106.00850'), ('EDGEWOOD', 1893, '35.08390', '-106.17490'), ('EL RANCHO', 817, '35.88900', '-106.07900'), ('GALLISTEO', None, '35.39600', '-105.94600'), ('GLORIETA', 859, '35.58300', '-105.76900'), ('GOLDEN', None, '35.26700', '-106.21300'), ('JACONITA', 343, '35.89250', '-106.03480'), ('LA BAJADA', None, '35.55600', '-106.24000'), ('LA CIENEGA', 3007, '35.57650', '-106.11040'), ('LAMY', 137, '35.48100', '-105.87900'), ('LOS CERRILLOS', 229, '35.43900', '-106.12300'), ('MADRID', 149, '35.40700', '-106.15200'), ('NAMBE', None, '35.89300', '-105.98200'), ('NAMBE PUEBLO', None, '35.88800', '-105.96400'), ('POJOAQUE', 1261, '35.89360', '-106.02300'), ('POJOAQUE PUEBLO', None, '35.89400', '-106.02100'), ('SAN ILDEFONSO PUEBLO', 458, '35.89810', '-106.12750'), ('SANTA CRUZ', 423, '35.98550', '-106.01610'), ('SANTA FE', 62203, '35.67850', '-105.95410'), ('STANLEY', None, '35.14800', '-105.97600'), ('TESUQUE', 909, '35.76660', '-105.92330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABQ'}, -'NDC051': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ASHLEY', 882, '46.03490', '-99.37330'), ('LEHR', 114, '46.28280', '-99.35170'), ('VENTURIA', 23, '45.99740', '-99.54930'), ('WISHEK', 1122, '46.25570', '-99.55520'), ('ZEELAND', 141, '45.97310', '-99.83230')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'WVC041': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('JACKSON MILL', None, '39.09610', '-80.47620'), ('JANE LEW', 406, '39.10960', '-80.40900'), ('STONEWALL JACKSON LAKE ST', None, '39.00770', '-80.47140'), ('WESTON', 4317, '39.04160', '-80.46880')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC043': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ALUM CREEK', 1839, '38.28190', '-81.84170'), ('HAMLIN', 1119, '38.27910', '-82.10380'), ('HARTS', 2361, '38.03060', '-82.13080'), ('WEST HAMLIN', 696, '38.28340', '-82.19530')], 'partOfState': '', 'wfo': 'RLX'}, -'KSC199': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('SHARON SPRINGS', 835, '38.89420', '-101.75210'), ('WALLACE', 67, '38.91370', '-101.59240'), ('WESKAN', None, '38.86000', '-101.96000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'KSC197': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALMA', 797, '39.01670', '-96.28890'), ('ALTA VISTA', 442, '38.86390', '-96.48890'), ('ESKRIDGE', 589, '38.85890', '-96.10890'), ('HARVEYVILLE', 267, '38.79000', '-95.96140'), ('MAPLE HILL', 469, '39.08470', '-96.02780'), ('MCFARLAND', 271, '39.05280', '-96.23750'), ('PAXICO', 211, '39.06940', '-96.16610'), ('VOLLAND', None, '38.94440', '-96.40420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'KSC195': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR BLUFF', None, '38.78000', '-99.73000'), ('COLLYER', 133, '39.03780', '-100.11810'), ('OGALLAH', None, '38.98000', '-99.73000'), ('RIGA', None, '38.94000', '-99.63000'), ('TREGO CENTER', None, '38.88000', '-99.90000'), ('VODA', None, '39.04000', '-100.02000'), ('WAKEENEY', 1924, '39.02340', '-99.88130')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'KSC193': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BREWSTER', 285, '39.36290', '-101.37740'), ('BREWSTER', 285, '39.36290', '-101.37740'), ('COLBY', 5450, '39.38770', '-101.04590'), ('GEM', 96, '39.42580', '-100.89680'), ('HALFORD', None, '39.37000', '-100.87000'), ('LEVANT', None, '39.38000', '-101.19000'), ('MENLO', 57, '39.35610', '-100.72390'), ('MINGO', None, '39.28000', '-100.96000'), ('REXFORD', 157, '39.47050', '-100.74350')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'KSC191': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARGONIA', 534, '37.26530', '-97.76450'), ('BELLE PLAINE', 1708, '37.39420', '-97.27880'), ('CALDWELL', 1284, '37.03520', '-97.60870'), ('CONWAY SPRINGS', 1322, '37.38950', '-97.64400'), ('GEUDA SPRINGS', 212, '37.11080', '-97.14940'), ('HUNNEWELL', 83, '37.00450', '-97.40690'), ('MAYFIELD', 113, '37.26230', '-97.54550'), ('MILAN', 137, '37.25810', '-97.67300'), ('OXFORD', 1173, '37.27480', '-97.16950'), ('SOUTH HAVEN', 390, '37.04910', '-97.40030'), ('WELLINGTON', 8647, '37.27130', '-97.39720')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'IAC017': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DENVER', 1627, '42.67120', '-92.33410'), ('FREDERIKA', 199, '42.88360', '-92.30590'), ('JANESVILLE', 829, '42.64440', '-92.46390'), ('PLAINFIELD', 438, '42.84390', '-92.53550'), ('READLYN', 786, '42.70340', '-92.22480'), ('SUMNER', 2106, '42.84990', '-92.09600'), ('TRIPOLI', 1310, '42.80980', '-92.25760'), ('WAVERLY', 8968, '42.72540', '-92.46980')], 'partOfState': 'NORTHEAST', 'wfo': 'DMX'}, -'MSC003': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CORINTH', 14054, '34.93770', '-88.51680'), ('GLEN', 286, '34.86670', '-88.50000'), ('HINKLE', None, '34.78330', '-88.56670'), ('KOSSUTH', 170, '34.87140', '-88.64410'), ('LEEDY', None, '34.80000', '-88.36670'), ('RIENZI', 330, '34.76350', '-88.53130'), ('THEO', None, '34.93330', '-88.70000'), ('WENASOGA', None, '34.98330', '-88.58330')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSC001': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('NATCHEZ', 18464, '31.54790', '-91.38860')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'MSC007': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ETHEL', 452, '33.12190', '-89.46480'), ('KOSCIUSKO', 7372, '33.05800', '-89.58820'), ('MCCOOL', 182, '33.19830', '-89.34300'), ('SALLIS', 114, '33.02170', '-89.76400')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSC005': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CROSBY', 360, '31.27860', '-91.06140'), ('GILLSBERG', None, '31.02500', '-90.65580'), ('GLOSTER', 1073, '31.19460', '-91.01800'), ('LIBERTY', 633, '31.16020', '-90.80120'), ('SMITHDALE', None, '31.33940', '-90.68280')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'NCC111': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASHFORD', None, '35.87280', '-81.93880'), ('DYSARTSVILLE', None, '35.60020', '-81.87150'), ('FERO', None, '35.58200', '-81.97670'), ('GLENWOOD', None, '35.60870', '-81.97930'), ('MARION', 4943, '35.68250', '-82.00860'), ('NEBO', None, '35.71500', '-81.93110'), ('OLD FORT', 963, '35.63210', '-82.17580'), ('SUGAR HILL', None, '35.58440', '-82.04250'), ('WOODLAWN', 1051, '35.78530', '-82.04060')], 'partOfState': '', 'wfo': 'GSP'}, -'NJC037': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ANDOVER', 658, '40.98590', '-74.74270'), ('BRANCHVILLE', 845, '41.14670', '-74.74960'), ('CRANDON LAKES', 1180, '41.12420', '-74.84030'), ('FRANKLIN', 5160, '41.11050', '-74.58980'), ('HAMBURG', 3105, '41.14880', '-74.57470'), ('HIGHLAND LAKE', 5051, '41.17660', '-74.45700'), ('HOPATCONG', 15888, '40.95610', '-74.65770'), ('LAKE MOHAWK', 9755, '41.01840', '-74.66040'), ('NEWTON', 8244, '41.05480', '-74.75380'), ('OGDENSBURG', 2638, '41.07500', '-74.59790'), ('STANHOPE', 3584, '40.91290', '-74.70290'), ('SUSSEX', 2145, '41.20980', '-74.60850'), ('VERNON VALLEY', 1737, '41.23680', '-74.48750')], 'partOfState': 'NORTHWEST', 'wfo': 'PHI'}, -'MSC009': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ASHLAND', 577, '34.83280', '-89.17660'), ('CANAAN', None, '34.93330', '-89.13330'), ('GRAVESTOWN', None, '34.75000', '-89.08330'), ('HICKORY FLAT', 565, '34.61520', '-89.18700'), ('LAMAR', None, '34.91670', '-89.31670'), ('MICHIGAN CITY', None, '34.98330', '-89.25000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'NJC035': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BERNARDSVILLE', 7345, '40.73060', '-74.59290'), ('BOUND BROOK', 10155, '40.56750', '-74.53770'), ('FAR HILLS', 859, '40.69040', '-74.62210'), ('KINGSTON', 1292, '40.37530', '-74.60820'), ('MANVILLE', 10343, '40.54160', '-74.58930'), ('MILLSTONE', 410, '40.49930', '-74.59130'), ('NORTH PLAINFIELD', 21103, '40.62120', '-74.44010'), ('PEAPACK AND GLADSTONE', 2433, '40.71540', '-74.65750'), ('RARITAN', 6338, '40.57200', '-74.64180'), ('ROCKY HILL', 662, '40.40030', '-74.63940'), ('SOMERSET', 23040, '40.49760', '-74.48900'), ('SOMERVILLE', 12423, '40.57020', '-74.61040'), ('WATCHUNG', 5613, '40.64390', '-74.43770')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'NJC033': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ALLOWAY', 1128, '39.56330', '-75.34670'), ('CARNEYS POINT', 6914, '39.70720', '-75.46760'), ('ELMER', 1384, '39.59110', '-75.17380'), ('OLIVET', 1420, '39.53970', '-75.17500'), ('PENNS GROVE', 4886, '39.72650', '-75.46940'), ('PENNSVILLE', 11657, '39.65540', '-75.51070'), ('SALEM', 5857, '39.56800', '-75.47320'), ('WOODSTOWN', 3136, '39.65090', '-75.32510')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJC031': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BLOOMINGDALE', 7610, '41.02670', '-74.33450'), ('CLIFTON', 78672, '40.86400', '-74.15760'), ('HALEDON', 8252, '40.93680', '-74.18900'), ('HAWTHORNE', 18218, '40.95670', '-74.15900'), ('LITTLE FALLS', 10855, '40.87550', '-74.21850'), ('NORTH HALEDON', 7920, '40.96190', '-74.18630'), ('PASSAIC', 67861, '40.85730', '-74.12940'), ('PATERSON', 149222, '40.91450', '-74.16340'), ('POMPTON LAKES', 10640, '41.00300', '-74.28590'), ('PROSPECT PARK', 5779, '40.93710', '-74.17260'), ('RINGWOOD', 12396, '41.11150', '-74.27480'), ('RIVERDALE', 2498, '40.99520', '-74.31380'), ('TOTOWA', 9892, '40.90480', '-74.22210'), ('WANAQUE', 10266, '41.04320', '-74.29060'), ('WAYNE', 54069, '40.94590', '-74.24550'), ('WEST MILFORD', 26410, '41.10610', '-74.39630'), ('WEST PATERSON', 10987, '40.88920', '-74.19560')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'TXC407': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COLDSPRING', 691, '30.59090', '-95.12920'), ('OAKHURST', 230, '30.74470', '-95.30950'), ('POINT BLANK', 559, '30.74590', '-95.21680'), ('SHEPHERD', 2029, '30.49050', '-95.00300')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC405': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROADDUS', 189, '31.30540', '-94.26930'), ('SAN AUGUSTINE', 2475, '31.52990', '-94.11100')], 'partOfState': '', 'wfo': 'SHV'}, -'NCC113': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('FRANKLIN', 3490, '35.18100', '-83.38180'), ('HIGHLANDS', 909, '35.05400', '-83.19810'), ('KYLE', None, '35.22270', '-83.60930'), ('NANTAHALA LAKE', None, '35.18970', '-83.65130'), ('OTTO', None, '35.06000', '-83.38780'), ('RAINBOW SPRINGS', None, '35.08650', '-83.55930'), ('SCALY', None, '35.01170', '-83.31640')], 'partOfState': '', 'wfo': 'GSP'}, -'TXC403': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRONSON', None, '31.34550', '-94.00890'), ('HEMPHILL', 1106, '31.34180', '-93.85130'), ('PINELAND', 980, '31.24640', '-93.97170')], 'partOfState': '', 'wfo': 'SHV'}, -'TXC401': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HENDERSON', 11273, '32.15700', '-94.79720'), ('MOUNT ENTERPRISE', 525, '31.91010', '-94.68190'), ('NEW LONDON', 987, '32.26920', '-94.93130'), ('OVERTON', 2350, '32.27560', '-94.97230'), ('REKLAW', 327, '31.86460', '-94.98410'), ('TATUM', 1175, '32.31470', '-94.51870')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'UTC045': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CLIVE', None, '40.68000', '-113.08000'), ('CLOVER', None, '40.33000', '-112.47000'), ('DELLE', None, '40.77000', '-112.78000'), ('DUGWAY', 2016, '40.25000', '-112.75050'), ('ERDA', 2473, '40.61000', '-112.32180'), ('FAUST', None, '40.18000', '-112.38000'), ('GRANTSVILLE', 6015, '40.59000', '-112.46750'), ('IBAPAH', None, '40.03000', '-113.98000'), ('KNOLLS', None, '40.72000', '-113.28000'), ('LAKE PT', None, '40.67000', '-112.27000'), ('LOFGREEN', None, '40.02000', '-112.32000'), ('STANSBURY PARK', 2385, '40.63800', '-112.30340'), ('STOCKTON', 443, '40.45270', '-112.36200'), ('TOOELE', 22502, '40.53650', '-112.30140'), ('VERNON', 236, '40.09130', '-112.44980'), ('WENDOVER', 1537, '40.74000', '-114.02300')], 'partOfState': '', 'wfo': 'SLC'}, -'TNC295': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CHATTANOOGA VALLEY', 4065, '34.92250', '-85.34870'), ('CHICKAMAUGA', 2245, '34.87240', '-85.29150'), ('FAIRVIEW', 6601, '34.93030', '-85.29250'), ('LA FAYETTE', 6702, '34.70760', '-85.28100'), ('LINWOOD', None, '34.71130', '-85.29080'), ('LOOKOUT MOUNTAIN', 1617, '34.96150', '-85.36040'), ('ROSSVILLE', 3511, '34.97420', '-85.28910'), ('LOOKOUT MOUNTAIN', 2000, '34.99390', '-85.35220')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'TXC409': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARANSAS PASS', 8138, '27.89090', '-97.14270'), ('EDROY', 420, '27.93333', '-97.66666'), ('GREGORY', 2318, '27.92210', '-97.29080'), ('INGLESIDE', 9388, '27.87000', '-97.20010'), ('LAKE CITY', 526, '28.08300', '-97.88240'), ('LAKESIDE', 1040, '28.10450', '-97.86110'), ('MATHIS', 5034, '28.09340', '-97.82450'), ('ODEM', 2499, '27.94550', '-97.58680'), ('PORTLAND', 14827, '27.87890', '-97.32690'), ('SAN PATRICIO', 318, '27.97850', '-97.77260'), ('SINTON', 5676, '28.03350', '-97.50960'), ('ST. PAUL', 542, '28.10690', '-97.56690'), ('TAFT', 3396, '27.98110', '-97.39080'), ('TAFT SOUTHWEST', 1721, '27.97230', '-97.40530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'NCC115': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALLENSTAND', None, '35.97280', '-82.75310'), ('CANTO', None, '35.70140', '-82.75920'), ('FAUST', None, '35.91110', '-82.53030'), ('HOT SPRINGS', 645, '35.89160', '-82.82830'), ('LUCK', None, '35.73580', '-82.86640'), ('MARS HILL', 1764, '35.82820', '-82.55060'), ('MARSHALL', 840, '35.79670', '-82.68400'), ('SPRING CREEK', None, '35.79860', '-82.85440'), ('WALNUT', None, '35.84940', '-82.73890'), ('WHITEROCK', None, '35.95250', '-82.70170')], 'partOfState': '', 'wfo': 'GSP'}, -'FLC005': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAY HARBOR', None, '30.14580', '-85.61480'), ('BAYOU GEORGE', None, '30.26120', '-85.54000'), ('BAYVIEW', None, '30.19120', '-85.71320'), ('BENNETT', None, '30.38900', '-85.52870'), ('BETTS', None, '30.53640', '-85.39320'), ('BRANNONVILLE', None, '30.22620', '-85.59280'), ('CAIRO', None, '30.30380', '-85.47730'), ('CALLAWAY', 14233, '30.14090', '-85.57780'), ('CEDAR GROVE', 5367, '30.17580', '-85.62450'), ('CEDAR GROVE', 5367, '30.16970', '-85.62060'), ('COLLEGE STATION', None, '30.23350', '-85.57780'), ('COUCH', None, '30.38220', '-85.43560'), ('CROMANTON', None, '30.11420', '-85.63490'), ('DAVIS BEACH', None, '29.96760', '-85.46790'), ('DELWOOD BEACH', None, '30.14240', '-85.71360'), ('DIREGO PARK', None, '30.19060', '-85.63940'), ('ECONFINA', None, '30.41100', '-85.53580'), ('FARMDALE', None, '30.01660', '-85.46980'), ('FOUNTAIN', None, '30.47120', '-85.42420'), ('GLENWOOD', None, '30.16260', '-85.63740'), ('HILAND PARK', 999, '30.19930', '-85.62990'), ('LAIRD', None, '30.31320', '-85.91870'), ('LOWER GRAND LAGOON', 4082, '30.14390', '-85.75080'), ('LYNN HAVEN', 12451, '30.24290', '-85.65160'), ('LYNN HAVEN', 12451, '30.24290', '-85.65160'), ('MAGNOLIA BEACH', None, '30.15640', '-85.72420'), ('MASHBURN', None, '30.39690', '-85.54390'), ('MCALLASTER LANDING', None, '30.33370', '-85.55660'), ('MILL BAYOU', None, '30.20840', '-85.60350'), ('NIXON', None, '30.32120', '-85.45150'), ('PANAMA CITY', 36417, '30.17380', '-85.67380'), ('PFN-BAY CO A/P', None, '30.21200', '-85.68290'), ('PINE LOG', None, '30.40370', '-85.91160'), ('PRETTY BAYOU', 3519, '30.19640', '-85.69680'), ('SAN BLAS', None, '30.08740', '-85.61000'), ('SAN CARLOS CHACATOS', None, '30.34800', '-85.68350'), ('SAUNDERS', None, '30.42810', '-85.42500'), ('SEMINOLE HILLS', None, '30.36960', '-85.93200'), ('SOUTHPORT', None, '30.28320', '-85.64440'), ('SPRINGFIELD', 8810, '30.15250', '-85.60000'), ('ST ANDREW', None, '30.17230', '-85.69960'), ('TYNDALL AFB', 2757, '30.08370', '-85.60860'), ('UPPER GRAND LAGOON', 10889, '30.16300', '-85.74090'), ('VICKSBURG', None, '30.32210', '-85.66000'), ('WEST BAY', None, '30.29290', '-85.85910'), ('YOUNGSTOWN', None, '30.36640', '-85.43900')], 'partOfState': '', 'wfo': 'TAE'}, -'ALC131': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ACKERVILLE', None, '32.02920', '-87.06610'), ('ALBERTA', None, '32.23280', '-87.41020'), ('ALLENTON', None, '31.93030', '-87.02390'), ('ANNE MARIE', None, '32.05300', '-87.57030'), ('BELLVIEW', None, '31.84360', '-87.35600'), ('BOYKIN', None, '32.07810', '-87.28150'), ('CALEDONIA', None, '31.88970', '-87.08760'), ('CAMDEN', 2257, '31.99030', '-87.29060'), ('CANTON BEND', None, '32.05340', '-87.34900'), ('CATHERINE', None, '32.18360', '-87.46970'), ('COAL BLUFF', None, '31.94530', '-87.43940'), ('COY', None, '31.89430', '-87.46270'), ('DARLINGTON', None, '31.97700', '-87.13080'), ('ESTELLE', None, '31.96940', '-87.20230'), ('FATAMA', None, '31.89850', '-87.23670'), ('FURMAN', None, '32.00380', '-86.96490'), ('GASTONBURG', None, '32.20680', '-87.43860'), ('KIMBROUGH', None, '32.03420', '-87.56490'), ('LAMISON', None, '32.12220', '-87.56670'), ('LOWER PEACH TREE', None, '31.84000', '-87.54610'), ('MCBRYDES', None, '31.99250', '-87.02150'), ('MILLERS FERRY', None, '32.09950', '-87.36760'), ('OAK HILL', 37, '31.92210', '-87.08810'), ('PINE APPLE', 145, '31.87370', '-86.98770'), ('PINE HILL', 966, '31.98560', '-87.58250'), ('PRAIRIE', None, '32.15390', '-87.44030'), ('REHOBOTH', None, '32.19570', '-87.38150'), ('ROCKWEST', None, '32.00000', '-87.37180'), ('RUTHVEN', None, '31.85560', '-87.02930'), ('SHEPPARD', None, '31.91140', '-87.47970'), ('SNOW HILL', None, '32.00560', '-87.00720'), ('SUNNY SOUTH', None, '31.96480', '-87.63990'), ('WATSONVILLE', None, '31.86770', '-87.16490'), ('YELLOW BLUFF', 181, '31.96730', '-87.46800')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'FLC007': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BROOKER', 352, '29.88600', '-82.33400'), ('HAMPTON', 431, '29.86400', '-82.13720'), ('LAWTEY', 656, '30.04560', '-82.07080'), ('NEW RIVER', None, '29.96070', '-82.26590'), ('SAMPSON', None, '29.91620', '-82.20830'), ('STARKE', 5593, '29.94690', '-82.11220')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'ALC133': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ADDISON', 723, '34.19990', '-87.17790'), ('ARLEY', 290, '34.08500', '-87.21060'), ('DOUBLE SPRINGS', 1003, '34.14840', '-87.40310'), ('HALEYVILLE', 4182, '34.23880', '-87.61820'), ('LYNN', 597, '34.04380', '-87.54670')], 'partOfState': 'NORTHWEST', 'wfo': 'BMX'}, -'FLC001': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALACHUA', 6098, '29.77900', '-82.48000'), ('ARCHER', 1289, '29.53410', '-82.51890'), ('CROSS CREEK', None, '29.48600', '-82.16560'), ('GAINESVILLE', 95447, '29.67420', '-82.33630'), ('GAINESVILLE AIRPORT', None, '29.69100', '-82.27540'), ('GROVE PARK', None, '29.59990', '-82.15390'), ('HIGH SPRINGS', 3863, '29.82210', '-82.59190'), ('LA CROSSE', 143, '29.84390', '-82.40450'), ('LOCHLOOSA', None, '29.51120', '-82.10070'), ('MELROSE', None, '29.70930', '-82.05010'), ('MICANOPY', 653, '29.50610', '-82.28080'), ('NEWBERRY', 3316, '29.64480', '-82.61230'), ('NEWNANS LAKE', None, '29.64950', '-82.23990'), ('ORANGE HEIGHTS', None, '29.71930', '-82.13970'), ('ROCHELLE', None, '29.59630', '-82.21790'), ('WALDO', 821, '29.79050', '-82.17170')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLC003': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('GLEN ST. MARY', 473, '30.27390', '-82.16110'), ('MACCLENNY', 4459, '30.28020', '-82.12590'), ('OLUSTEE', None, '30.20370', '-82.42920'), ('SANDERSON', None, '30.25160', '-82.27330'), ('TAYLOR', None, '30.44010', '-82.29170')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'TNC059': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BAILEYTON', 504, '36.32800', '-82.83060'), ('CAMP CREEK', None, '36.08610', '-82.76560'), ('CANEY BRANCH', None, '36.04610', '-82.98580'), ('CEDAR CREEK', None, '36.02310', '-82.90360'), ('CHUCKY', None, '36.21390', '-82.69080'), ('GREENEVILLE', 15198, '36.16530', '-82.81900'), ('JEAROLDSTOWN', None, '36.36030', '-82.82190'), ('MOHAWK', None, '36.19940', '-83.05530'), ('MOSHEIM', 1749, '36.19220', '-82.95680'), ('ROMEO', None, '36.29000', '-82.93860'), ('TUSCULUM', 2004, '36.17560', '-82.75090')], 'partOfState': '', 'wfo': 'MRX'}, -'TNC057': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BEAN STATION', None, '36.34190', '-83.28470'), ('BLAINE', 1585, '36.14440', '-83.69490'), ('BUFFALO SPRINGS', None, '36.21640', '-83.56500'), ('JOPPA', None, '36.23610', '-83.61640'), ('RUTLEDGE', 1187, '36.27420', '-83.52480'), ('THORN HILL', None, '36.35720', '-83.41860')], 'partOfState': '', 'wfo': 'MRX'}, -'NDC091': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BLABON', None, '47.40170', '-97.78860'), ('FINLEY', 515, '47.51140', '-97.83710'), ('GOLDEN LAKE', None, '47.57970', '-97.63610'), ('HOPE', 303, '47.32480', '-97.71960'), ('LUVERNE', 44, '47.25030', '-97.93450'), ('SHARON', 109, '47.59710', '-97.89860'), ('SHERBROOKE', None, '47.46080', '-97.71920')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'FLC009': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AURANTIA', None, '28.72810', '-80.88760'), ('BAREFOOT BAY', None, '27.88780', '-80.52140'), ('CAMP HOLLY FISH CAMP', None, '28.08440', '-80.75310'), ('CANAVERAL ACRES', None, '28.40730', '-80.84360'), ('COCOA', 16412, '28.37700', '-80.75020'), ('COCOA BEACH', 12482, '28.33550', '-80.62690'), ('EAU GALLIE', None, '28.13010', '-80.64620'), ('FLORIDANA BEACH', None, '27.94620', '-80.49580'), ('GEORGIANA', None, '28.28820', '-80.67540'), ('GRANT', None, '27.92860', '-80.52680'), ('HAULOVER CANAL', None, '28.73620', '-80.75440'), ('INDIALANTIC', 2944, '28.08930', '-80.56590'), ('INDIAN HARBOUR BEACH', 8152, '28.15300', '-80.59780'), ('KENNEDY SPACE CENTER', None, '28.63960', '-80.70690'), ('LAGRANGE', None, '28.63620', '-80.83060'), ('LONE CABBAGE FISH CAMP', None, '28.39830', '-80.86010'), ('MALABAR', 2622, '27.98670', '-80.58230'), ('MELBOURNE', 71382, '28.11500', '-80.64010'), ('MELBOURNE BEACH', 3335, '28.06740', '-80.55960'), ('MELBOURNE VILLAGE', 706, '28.08500', '-80.66720'), ('MICCO', 9498, '27.87110', '-80.51550'), ('MIMS', 9147, '28.68460', '-80.84630'), ('PALM BAY', 79413, '27.98570', '-80.66020'), ('PALM SHORES', 794, '28.18630', '-80.65750'), ('PATRICK AIRFORCE BASE', None, '28.28220', '-80.59980'), ('PINEDA', None, '28.23690', '-80.67870'), ('PLAYALINDA BEACH', None, '28.64160', '-80.62500'), ('PORT SAINT JOHN', None, '28.47680', '-80.78880'), ('ROCKLEDGE', 20170, '28.31980', '-80.72900'), ('SATELLITE BEACH', 9577, '28.17600', '-80.60020'), ('SCOTTSMOOR', None, '28.76680', '-80.87190'), ('TITUSVILLE', 40670, '28.58880', '-80.82020'), ('TITUSVILLE AIRPORT', None, '28.51450', '-80.79930'), ('TURNBULL', None, '28.71010', '-80.86260'), ('VALKARIA', None, '27.96340', '-80.54390'), ('WEST MELBOURNE', 9824, '28.07980', '-80.67160')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'TNC053': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADFORD', 1113, '36.07390', '-88.81770'), ('DYER', 2406, '36.07090', '-88.99200'), ('EATON', None, '35.96670', '-89.13330'), ('GIBSON', 305, '35.87400', '-88.84590'), ('HUMBOLDT', 9467, '35.82180', '-88.90650'), ('KENTON', 1306, '36.19970', '-89.01420'), ('MEDINA', 969, '35.80340', '-88.77430'), ('MILAN', 7664, '35.91890', '-88.75460'), ('RUTHERFORD', 1272, '36.12540', '-88.99280'), ('TRENTON', 4683, '35.97210', '-88.93960'), ('YORKVILLE', 293, '36.09870', '-89.11900')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TNC051': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COWAN', 1770, '35.16520', '-86.01610'), ('DECHERD', 2246, '35.20930', '-86.08790'), ('ESTILL SPRINGS', 2152, '35.26450', '-86.13100'), ('HUNTLAND', 916, '35.05580', '-86.26860'), ('SEWANEE', 2361, '35.20150', '-85.92050'), ('WINCHESTER', 7329, '35.18840', '-86.10850')], 'partOfState': '', 'wfo': 'HUN'}, -'NCC051': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BONNIE DOONE', None, '35.09890', '-78.95980'), ('CEDAR CREEK', None, '34.95000', '-78.75000'), ('EASTOVER', 1376, '35.10070', '-78.78250'), ('FALCON', 328, '35.19440', '-78.64860'), ('FAYETTEVILLE', 121015, '35.07160', '-78.89920'), ('FORT BRAGG', 29183, '35.13850', '-79.00100'), ('GODWIN', 112, '35.21740', '-78.68200'), ('HOPE MILLS', 11237, '34.97330', '-78.95340'), ('LINDEN', 127, '35.25440', '-78.74850'), ('POPE AFB', 2583, '35.16870', '-79.01060'), ('SPRING LAKE', 8098, '35.17760', '-78.98240'), ('STEDMAN', 664, '35.01050', '-78.69830'), ('VANDER', 1204, '35.03680', '-78.78700'), ('WADE', 480, '35.16430', '-78.73530')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'KYC099': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BONNIEVILLE', 354, '37.37690', '-85.90150'), ('CANMER', None, '37.28330', '-85.78330'), ('CUB RUN', None, '37.30000', '-86.06670'), ('HAMMONVILLE', None, '37.41670', '-85.80000'), ('HARDYVILLE', None, '37.25000', '-85.80000'), ('HORSE CAVE', 2252, '37.17240', '-85.91130'), ('KESSINGER', None, '37.30000', '-85.96670'), ('LINWOOD', None, '37.33330', '-85.76670'), ('MONROE', None, '37.23330', '-85.70000'), ('MUNFORDVILLE', 1563, '37.28100', '-85.89930'), ('PRICEVILLE', None, '37.36670', '-85.98330'), ('ROWLETTS', None, '37.23330', '-85.90000'), ('THREE SPRINGS', None, '37.17300', '-85.75000'), ('UNO', None, '37.18330', '-85.83330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'NCC053': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AYDLETT', None, '36.32530', '-75.91000'), ('BARCO', None, '36.39120', '-75.97970'), ('BERTHA', None, '36.27340', '-75.91120'), ('COINJOCK', None, '36.34460', '-75.95420'), ('COROLLA', None, '36.37860', '-75.83120'), ('CURRITUCK', None, '36.44820', '-76.01500'), ('GRANDY', None, '36.24230', '-75.87800'), ('GREGORY', None, '36.38960', '-76.12630'), ('HARBINGER', None, '36.10190', '-75.81410'), ('JARVISBURG', None, '36.20190', '-75.86550'), ('KNOTTS ISLAND', None, '36.51300', '-75.91960'), ('MAMIE', None, '36.12740', '-75.83690'), ('MAPLE', None, '36.41350', '-76.00330'), ('MOYOCK', None, '36.48540', '-76.13520'), ('POINT HARBOR', None, '36.08000', '-75.80500'), ('POPLAR BRANCH', None, '36.28060', '-75.89320'), ('POWELLS POINT', None, '36.15970', '-75.85940'), ('SHAWBORO', None, '36.40520', '-76.09310'), ('SLIGO', None, '36.45170', '-76.07750'), ('SNOWDEN', None, '36.45670', '-76.10890'), ('SPOT', None, '36.11810', '-75.81940'), ('WATERLILY', None, '36.38500', '-75.92500')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'OKC001': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MARIETTA', 2445, '35.84330', '-94.65780'), ('STILWELL', 3276, '35.81440', '-94.62830'), ('BUNCH', None, '35.68250', '-94.76080'), ('BARON', None, '35.92360', '-94.61610'), ('CHRISTIE', 166, '35.95810', '-94.69000'), ('PROCTOR', None, '35.96610', '-94.77720'), ('WESTVILLE', 1596, '35.99250', '-94.56780'), ('BALLARD', None, '36.09440', '-94.58920'), ('WATTS', 316, '36.10920', '-94.57000')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'NCC055': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('KILL DEVIL HILLS', 5897, '36.01600', '-75.66750'), ('KITTY HAWK', 2991, '36.07020', '-75.71950'), ('MANTEO', 1052, '35.89900', '-75.66640'), ('NAGS HEAD', 2700, '35.94460', '-75.62650'), ('SOUTHERN SHORES', 2201, '36.11870', '-75.73320'), ('WANCHESE', 1527, '35.83750', '-75.64020')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC057': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARCADIA', None, '35.95000', '-80.30000'), ('DENTON', 1450, '35.63660', '-80.11190'), ('GORDONTOWN', None, '35.75000', '-80.12000'), ('HIGH ROCK', None, '35.60000', '-80.23000'), ('LEXINGTON', 19953, '35.80900', '-80.25700'), ('MIDWAY', None, '35.98000', '-80.27000'), ('NEWSOM', None, '35.53000', '-80.18000'), ('THOMASVILLE', 19788, '35.88890', '-80.07660'), ('WELCOME', 3538, '35.91080', '-80.25420')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC059': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ADVANCE', None, '35.93460', '-80.40560'), ('COOLEEMEE', 905, '35.81250', '-80.55750'), ('FARMINGTON', None, '36.00930', '-80.52950'), ('FORK CHURCH', None, '35.88060', '-80.44580'), ('MOCKSVILLE', 4178, '35.89750', '-80.55600'), ('SHEFFIELD', None, '35.96610', '-80.68030')], 'partOfState': '', 'wfo': 'GSP'}, -'KYC091': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DUKES', None, '37.81670', '-86.70000'), ('HAWESVILLE', 971, '37.89880', '-86.75560'), ('LEWISPORT', 1639, '37.93220', '-86.90240'), ('LYONIA', None, '37.71670', '-86.73330'), ('PATESVILLE', None, '37.78330', '-86.71670'), ('PELLVILLE', None, '37.75000', '-86.81670')], 'partOfState': 'NORTHWEST', 'wfo': 'LMK'}, -'KYC093': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CECILIA', None, '37.66670', '-85.95000'), ('COLESBURG', None, '37.78330', '-85.78330'), ('EASTVIEW', None, '37.58330', '-86.05000'), ('ELIZABETHTOWN', 22542, '37.70310', '-85.87170'), ('FORT KNOX', 12377, '37.89100', '-85.96320'), ('GLENDALE', None, '37.60000', '-85.91670'), ('HOWE VALLEY', None, '37.68330', '-86.08330'), ('RADCLIFF', 21961, '37.82480', '-85.94010'), ('RINEYVILLE', None, '37.75000', '-85.96670'), ('SONORA', 350, '37.52350', '-85.89150'), ('STEPHENSBURG', None, '37.63330', '-86.01670'), ('SUMMIT', None, '37.56670', '-86.08330'), ('VERTREES', None, '37.70000', '-86.13330'), ('VINE GROVE', 4169, '37.81120', '-85.97620'), ('WEST POINT', 1100, '37.98500', '-85.95410'), ('WHITE MILLS', None, '37.55000', '-86.03330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYC095': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AGES', None, '36.85750', '-83.24670'), ('ALVA', None, '36.73600', '-83.42490'), ('ARTHUR', None, '36.99890', '-83.17280'), ('BAILEY CREEK', None, '36.88060', '-83.19080'), ('BARDO', None, '36.75880', '-83.34340'), ('BAXTER', None, '36.86170', '-83.33180'), ('BENHAM', 599, '36.96460', '-82.95190'), ('BENITO', None, '36.90090', '-83.12720'), ('BIG BLACK MOUNTAIN', None, '36.91450', '-82.89090'), ('BIG LAUREL', None, '36.97940', '-83.21900'), ('BLACK BOTTOM', None, '36.90790', '-83.07830'), ('BLACK MOUNTAIN', None, '36.84860', '-83.14560'), ('BLACKJOE', None, '36.85940', '-83.28300'), ('BLAIR', None, '36.99010', '-82.95350'), ('BLEDSOE', None, '36.92400', '-83.36620'), ('BOBS CREEK', None, '36.78960', '-83.24690'), ('BROOKSIDE', None, '36.85920', '-83.25270'), ('CHAD', None, '36.97050', '-83.01910'), ('CHEVROLET', None, '36.81590', '-83.27490'), ('CLOSPLINT', None, '36.90250', '-83.06780'), ('CLOVER', None, '36.92830', '-82.96720'), ('CLOVER FORK', None, '36.87720', '-82.93160'), ('CLOVER-DARBY', None, '36.89230', '-83.06210'), ('CLOVERTOWN', None, '36.85270', '-83.30530'), ('CLUTTS', None, '36.97230', '-82.97130'), ('COBURN', None, '36.81590', '-83.31980'), ('COLDIRON', None, '36.82680', '-83.45340'), ('COLTS', None, '36.88040', '-83.14760'), ('COXTON', None, '36.85760', '-83.26670'), ('CRANKS', None, '36.76470', '-83.17210'), ('CREECH', None, '36.96730', '-83.04170'), ('CREECH', None, '36.76720', '-83.39500'), ('CRUMMIES', None, '36.77430', '-83.20520'), ('CUMBERLAND', 2611, '36.98420', '-82.98600'), ('DARKMONT', None, '36.87300', '-83.18000'), ('DIANE', None, '36.95120', '-83.08100'), ('DILLON', None, '36.91540', '-83.19410'), ('DIVIDE', None, '36.93650', '-83.21230'), ('DIZNEY', None, '36.85090', '-83.11690'), ('DRAPER', None, '36.87290', '-83.21080'), ('DRESSEN', None, '36.83270', '-83.32330'), ('ELCOMB', None, '36.82220', '-83.33520'), ('EVARTS', 1101, '36.86370', '-83.19770'), ('FARMERS MILL', None, '36.81530', '-83.28530'), ('FLAGLER', None, '36.76380', '-83.23820'), ('FRESH MEADOWS', None, '36.84030', '-83.37540'), ('GANO', None, '36.90150', '-83.13420'), ('GATUN', None, '36.87210', '-83.31070'), ('GEORGETOWN', 18080, '36.88870', '-83.05380'), ('GOLDEN ASH', None, '36.86100', '-83.29290'), ('GRAYS KNOB', None, '36.80660', '-83.30410'), ('HARLAN', 2081, '36.84140', '-83.32020'), ('HARLAN GAS', None, '36.85070', '-83.30580'), ('HENSLEY STORE', None, '36.72000', '-83.35000'), ('HIGHSPLINT', None, '36.89850', '-83.11770'), ('HIRAM', None, '36.96680', '-83.04760'), ('HOLMES MILL', None, '36.86840', '-83.00060'), ('INCLINE', None, '36.91650', '-83.28130'), ('INSULL', None, '36.76360', '-83.48580'), ('JONESBURG', None, '36.92880', '-83.24000'), ('KEITH', None, '36.85320', '-83.36920'), ('KELLIOKA', None, '36.90250', '-83.24380'), ('KENTENIA', None, '36.79800', '-83.40130'), ('KENTENIA STATE FOREST', None, '36.92490', '-83.22430'), ('KENVIR', None, '36.85390', '-83.15960'), ('KERR', None, '36.83800', '-83.41290'), ('KILDAV', None, '36.85720', '-83.21100'), ('KINGDOM COME STATE PARK', None, '36.99030', '-82.98520'), ('KITTS', None, '36.85510', '-83.29790'), ('LADEN', None, '36.91640', '-83.19290'), ('LAYMAN', None, '36.82970', '-83.46420'), ('LEJUNIOR', None, '36.90590', '-83.07170'), ('LENARVE', None, '36.80580', '-83.26830'), ('LEONARD', None, '36.91010', '-83.11020'), ('LIGGETT', None, '36.75190', '-83.34720'), ('LONGTON', None, '36.83550', '-83.41010'), ('LOUELLEN', None, '36.91140', '-83.08580'), ('LOW', None, '36.78290', '-83.39820'), ('LOYALL', 766, '36.85180', '-83.35080'), ('LYNCH', 900, '36.96450', '-82.91360'), ('MARTINS FORK', None, '36.73000', '-83.33000'), ('MARTINS FORK LAKE', None, '36.75000', '-83.26000'), ('MARY ALICE', None, '36.78580', '-83.33040'), ('MARY HELEN', None, '36.81270', '-83.25200'), ('MERNA', None, '36.79340', '-83.25200'), ('MOLUS', None, '36.81360', '-83.49110'), ('NOLANSBURG', None, '36.92620', '-83.16550'), ('PANSY', None, '36.77510', '-83.32940'), ('PATHFORK', None, '36.75580', '-83.46310'), ('PEEPACE STORE', None, '36.73000', '-83.32000'), ('PINE MOUNTAIN', None, '36.94970', '-83.18570'), ('POPEVILLE', None, '36.79390', '-83.20900'), ('PUTNEY', None, '36.90670', '-83.22680'), ('REDBUD', None, '36.85950', '-83.16880'), ('REX', None, '36.85280', '-83.30030'), ('RHEA', None, '36.89890', '-83.25650'), ('RIDGEWAY', None, '36.89640', '-83.12320'), ('RILEYVILLE', None, '36.89710', '-83.06450'), ('RIO VISTA', None, '36.84560', '-83.35890'), ('RIVER RIDGE', None, '36.87660', '-83.17190'), ('ROCK HOUSE', None, '36.90070', '-82.93930'), ('ROSSPOINT', None, '36.88400', '-83.29100'), ('RUTHERFORD', None, '36.88460', '-83.03420'), ('SAND HILL', None, '36.97500', '-83.00540'), ('SHIELDS', None, '36.89560', '-83.14080'), ('SHORT TOWN', None, '36.87750', '-83.16040'), ('SMITH', None, '36.74000', '-83.26000'), ('SOUTH WALLINS', 996, '36.80740', '-83.40630'), ('STANFILL', None, '36.76500', '-83.34290'), ('SUNSHINE', None, '36.83790', '-83.32920'), ('TACKY TOWN', None, '36.85280', '-83.47460'), ('TEETERSVILLE', None, '36.81230', '-83.33750'), ('TEN SPOT', None, '36.84300', '-83.21720'), ('THREE POINT', None, '36.76430', '-83.25880'), ('TOTZ', None, '36.94420', '-83.11890'), ('TREMONT', None, '36.84220', '-83.39310'), ('TWAY', None, '36.82760', '-83.31810'), ('TWILA', None, '36.77270', '-83.39360'), ('VERDA', None, '36.85100', '-83.22110'), ('WALLINS CREEK', 257, '36.82790', '-83.41450'), ('WHITE STAR', None, '36.82750', '-83.36650'), ('WOODS', None, '36.86100', '-83.18160'), ('YANCEY', None, '36.76560', '-83.31920')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC097': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BERRY', 310, '38.52040', '-84.38420'), ('BRECKINRIDGE', None, '38.43330', '-84.36670'), ('COLVILLE', None, '38.37000', '-84.21000'), ('CONNERSVILLE', None, '38.38330', '-84.41670'), ('CYNTHIANA', 6258, '38.38640', '-84.29530'), ('KELAT', None, '38.51670', '-84.30000'), ('LEESBURG', None, '38.30000', '-84.41670'), ('ODDVILLE', None, '38.45000', '-84.23330'), ('SUNRISE', None, '38.53330', '-84.23330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'WIC069': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BLOOMVILLE', None, '45.29000', '-89.53000'), ('BRADLEY', None, '45.53000', '-89.75000'), ('DOERING', None, '45.23000', '-89.46000'), ('GLEASON', None, '45.30000', '-89.50000'), ('HARRISON', None, '45.48000', '-89.50000'), ('HEAFFORD JUNCTION', None, '45.54000', '-89.71000'), ('IRMA', None, '45.34000', '-89.66000'), ('JEFFRIS', None, '45.50000', '-89.43000'), ('MERRILL', 10146, '45.18000', '-89.68000'), ('PINE RIVER', None, '45.13000', '-89.64000'), ('SPIRIT FALLS', None, '45.45000', '-89.98000'), ('TOMAHAWK', 3770, '45.46000', '-89.73000'), ('TRIPOLI', None, '45.55000', '-90.00000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'PRC079': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('LA PARGUERA', 1141, '17.97680', '-67.04690'), ('LAJAS', 5036, '18.04640', '-67.06030'), ('PALMAREJO', 1169, '18.04350', '-67.07750')], 'partOfState': '', 'wfo': 'SJU'}, -'WIC065': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARGYLE', 823, '42.70060', '-89.86620'), ('BELMONT', 871, '42.73800', '-90.33260'), ('BENTON', 976, '42.57090', '-90.38220'), ('BLANCHARDVILLE', 806, '42.80930', '-89.86060'), ('DARLINGTON', 2418, '42.68050', '-90.11700'), ('GRATIOT', 252, '42.57950', '-90.02290'), ('SHULLSBURG', 1246, '42.57310', '-90.23150'), ('SOUTH WAYNE', 484, '42.56670', '-89.88040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WIC067': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ANTIGO', 8560, '45.15000', '-89.15000'), ('BRYANT', None, '45.20000', '-89.01000'), ('DEERBROOK', None, '45.23000', '-89.16000'), ('ELCHO', None, '45.43000', '-89.18000'), ('ELMHURST', None, '45.06000', '-89.18000'), ('ELTON', None, '45.15000', '-88.84000'), ('HOLLISTER', None, '45.25000', '-88.80000'), ('KEMPSTER', None, '45.28000', '-89.16000'), ('LANGLADE', None, '45.18000', '-88.73000'), ('LILY', None, '45.29000', '-88.84000'), ('NEVA', None, '45.23000', '-89.11000'), ('PARRISH', None, '45.41000', '-89.40000'), ('PEARSON', None, '45.36000', '-89.01000'), ('PHLOX', None, '45.04000', '-89.01000'), ('PICKEREL', None, '45.36000', '-88.91000'), ('POLAR', None, '45.16000', '-89.00000'), ('POST LAKE', None, '45.43000', '-89.08000'), ('SUMMIT LAKE', None, '45.38000', '-89.19000'), ('WHITE LAKE', 329, '45.16000', '-88.76000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'WIC061': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALASKA', None, '44.53000', '-87.50000'), ('CASCO', 572, '44.56000', '-87.61000'), ('DUVALL', None, '44.66000', '-87.69000'), ('DYCKESVILLE', None, '44.65000', '-87.75000'), ('ELLISVILLE', None, '44.46000', '-87.68000'), ('EUREN', None, '44.61000', '-87.59000'), ('KEWAUNEE', 2806, '44.45000', '-87.50000'), ('LINCOLN', None, '44.61000', '-87.63000'), ('LUXEMBURG', 1935, '44.54000', '-87.69000'), ('NEUERN', None, '44.50000', '-87.71000'), ('NORMAN', None, '44.36000', '-87.59000'), ('PILSEN', None, '44.45000', '-87.71000'), ('RANKIN', None, '44.59000', '-87.50000'), ('RIO CREEK', None, '44.58000', '-87.53000'), ('ROSIERE', None, '44.66000', '-87.59000'), ('ROSTOK', None, '44.50000', '-87.50000'), ('SLOVAN', None, '44.53000', '-87.58000'), ('STANGELVILLE', None, '44.40000', '-87.68000'), ('TISCH MILLS', None, '44.33000', '-87.61000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIC063': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BANGOR', 1400, '43.89200', '-90.99110'), ('BARRE MILLS', None, '43.83551', '-91.11631'), ('BRICE PRAIRIE', 1804, '43.93870', '-91.29970'), ('BURNS', None, '43.95247', '-90.98107'), ('BURR OAK', None, '44.05116', '-91.04686'), ('COUNCIL BAY', None, '44.05116', '-91.28262'), ('FRENCH ISLAND', 4410, '43.85830', '-91.26030'), ('HOLMEN', 6200, '43.95690', '-91.25900'), ('LA CROSSE', 51818, '43.82690', '-91.23390'), ('MEDARY', None, '43.86840', '-91.20038'), ('MIDDLE RIDGE', None, '43.80078', '-90.94818'), ('MINDORO', None, '44.01826', '-91.09986'), ('NEW AMSTERDAM', None, '43.98537', '-91.31734'), ('NEWBURG CORNERS', None, '43.78251', '-90.98290'), ('ONALASKA', 14839, '43.88710', '-91.21880'), ('ROCKLAND', 628, '43.90610', '-90.91820'), ('ST JOSEPH', None, '43.78616', '-91.03224'), ('STEVENSTOWN', None, '44.03654', '-91.16748'), ('WEST SALEM', 4540, '43.89860', '-91.08170')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'UTC049': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ALPINE', 7146, '40.46030', '-111.77450'), ('AMERICAN FORK', 21941, '40.38430', '-111.79390'), ('BIRDSEYE', None, '39.92000', '-111.55000'), ('ELBERTA', 278, '39.95000', '-111.95000'), ('FAIRFIELD', None, '40.26000', '-112.02000'), ('GENOLA', 965, '39.99000', '-111.85000'), ('GOLTON', None, '39.85000', '-111.02000'), ('GOSHEN', 874, '39.95180', '-111.90090'), ('HIGHLAND', 8172, '40.42160', '-111.78880'), ('LEHI', 19028, '40.40230', '-111.85430'), ('LINDON', 8363, '40.34130', '-111.71660'), ('MAPLETON', 5809, '40.12170', '-111.57300'), ('MT TIMPANOGOS', None, '40.38000', '-111.69500'), ('OREM', 84324, '40.29820', '-111.69810'), ('PAYSON', 12716, '40.03390', '-111.72810'), ('PLEASANT GROVE', 23468, '40.37040', '-111.73330'), ('PROVO', 105166, '40.24710', '-111.65970'), ('SALEM', 4372, '40.05230', '-111.67160'), ('SANTAQUIN', 4834, '39.97480', '-111.78360'), ('SOLDIER SUMMIT', None, '39.93000', '-111.08000'), ('SPANISH FORK', 20246, '40.11430', '-111.63420'), ('SPRINGVILLE', 20424, '40.16490', '-111.61450'), ('SUNDANCE', None, '40.37000', '-111.57000')], 'partOfState': '', 'wfo': 'SLC'}, -'TXC065': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GROOM', 587, '35.20410', '-101.10600'), ('PANHANDLE', 2589, '35.34620', '-101.38010'), ('PANTEX', None, '35.32390', '-101.58080'), ('SKELLYTOWN', 610, '35.57310', '-101.17300'), ('WHITE DEER', 1060, '35.43240', '-101.17480')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC067': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ATLANTA', 5745, '33.11640', '-94.16430'), ('AVINGER', 464, '32.89820', '-94.55430'), ('BLOOMBURG', 375, '33.13750', '-94.05870'), ('DOMINO', 52, '33.25140', '-94.11470'), ('DOUGLASSVILLE', 175, '33.19180', '-94.35140'), ('HUGHES SPRINGS', 1856, '32.99880', '-94.63020'), ('LINDEN', 2256, '33.01100', '-94.36210'), ('MARIETTA', 112, '33.17380', '-94.54180'), ('QUEEN CITY', 1613, '33.14970', '-94.15130')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXC061': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAYVIEW', 323, '26.12430', '-97.39900'), ('BROWNSVILLE', 139722, '25.92510', '-97.48200'), ('COMBES', 2553, '26.24240', '-97.72420'), ('HARLINGEN', 57564, '26.19530', '-97.68630'), ('LA FERIA', 6115, '26.15700', '-97.82260'), ('LAGUNA HEIGHTS', 1990, '26.08010', '-97.25690'), ('LAGUNA VISTA', 1658, '26.10050', '-97.29330'), ('LOS FRESNOS', 4512, '26.07390', '-97.47990'), ('PORT ISABEL', 4865, '26.07480', '-97.22010'), ('RANCHO VIEJO', 1754, '26.03470', '-97.55760'), ('RIO HONDO', 1942, '26.23430', '-97.58260'), ('SAN BENITO', 23444, '26.13710', '-97.63530'), ('SANTA ROSA', 2833, '26.25420', '-97.82540'), ('SOUTH PADRE ISLAND', 2422, '26.07760', '-97.18000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'GAC309': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALAMO', 1943, '32.14600', '-82.77990'), ('GLENWOOD', 884, '32.18060', '-82.67170')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TXC063': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('PITTSBURG', 4347, '32.99690', '-94.96560'), ('ROCKY MOUND', 93, '33.02850', '-95.03170')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXC069': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DIMMITT', 4375, '34.54790', '-102.31520'), ('EASTER', None, '34.64550', '-102.39630'), ('HART', 1198, '34.38560', '-102.11460'), ('NAZARETH', 356, '34.54140', '-102.10370'), ('SUMMERFIELD', None, '34.74080', '-102.51470')], 'partOfState': '', 'wfo': 'LUB'}, -'OKC139': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ADAMS', None, '36.75000', '-101.08000'), ('BAKER', None, '36.87000', '-101.02000'), ('EVA', None, '36.80000', '-101.90000'), ('GOODWELL', 1192, '36.59450', '-101.63210'), ('GUYMON', 10472, '36.68630', '-101.48300'), ('HARDESTY', 277, '36.61450', '-101.19330'), ('HOOKER', 1788, '36.85990', '-101.21200'), ('HOUGH', None, '36.87000', '-101.57000'), ('OPTIMA', 266, '36.75830', '-101.35400'), ('TEXHOMA', 935, '36.50540', '-101.78730'), ('TYRONE', 880, '36.95560', '-101.06640')], 'partOfState': '', 'wfo': 'AMA'}, -'KYC165': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARTVILLE', None, '37.93500', '-83.47500'), ('BIG WOODS', None, '37.99500', '-83.47000'), ('CEDAR GROVES', None, '37.96000', '-83.76000'), ('CLAY LICK', None, '37.98000', '-83.77000'), ('CORNWELL', None, '37.95700', '-83.71400'), ('DAN', None, '37.96500', '-83.46500'), ('DENNISTON', None, '37.91550', '-83.53660'), ('FAGAN', None, '37.92000', '-83.70000'), ('FRENCHBURG', 551, '37.95480', '-83.62240'), ('KOREA', None, '37.94190', '-83.47860'), ('MARIBA', None, '37.91410', '-83.57690'), ('MEANS', None, '37.94810', '-83.76340'), ('POMEROYTON', None, '37.87130', '-83.52200'), ('RATLITT', None, '38.00000', '-83.58000'), ('ROTHWELL', None, '37.96000', '-83.69000'), ('SCRANTON', None, '37.98720', '-83.52170'), ('STOLL', None, '37.87000', '-83.51000'), ('SUDITH', None, '38.01830', '-83.63220'), ('TABOR', None, '37.92000', '-83.66000'), ('WELLINGTON', 561, '37.91530', '-83.50420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYC167': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BOHON', None, '37.81670', '-84.91670'), ('BURGIN', 874, '37.75400', '-84.76540'), ('DUNCAN', None, '37.85000', '-84.98330'), ('HARRODSBURG', 8014, '37.76660', '-84.84720'), ('MCAFEE', None, '37.85000', '-84.85000'), ('NEVADA', None, '37.70000', '-84.91670'), ('ROSE HILL', None, '37.75000', '-84.91700'), ('SALVISA', None, '37.91670', '-84.86670'), ('SHAKERTOWN', None, '37.81670', '-84.86670'), ('TARRAPIN', None, '37.88330', '-84.93330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYC161': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DOVER', 316, '38.75580', '-83.88340'), ('GERMANTOWN', 190, '38.65200', '-83.96720'), ('LEWISBURG', 903, '38.55000', '-83.76000'), ('MAYSVILLE', 8993, '38.62950', '-83.78010'), ('SARDIS', 149, '38.53420', '-83.95750'), ('WASHINGTON', None, '38.61590', '-83.80810')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYC163': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ANDYVILLE', None, '38.03330', '-86.36670'), ('BATTLETOWN', None, '38.06670', '-86.30000'), ('BRANDENBURG', 2049, '37.99680', '-86.18040'), ('DOE VALLEY', None, '38.00000', '-86.10000'), ('EKRON', 170, '37.93070', '-86.17730'), ('FLAHERTY', None, '37.83330', '-86.06670'), ('GARRETT', None, '37.90000', '-86.11670'), ('GUSTON', None, '37.88330', '-86.21670'), ('MULDRAUGH', 1298, '37.93330', '-86.00000'), ('PAYNEVILLE', None, '37.98330', '-86.31670'), ('RHODELIA', None, '38.00000', '-86.41670'), ('SIROCCO', None, '37.98330', '-86.28330'), ('WOLF CREEK', None, '38.10000', '-86.38330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'OKC131': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CLAREMORE', 15873, '36.31250', '-95.61580'), ('INOLA', 1589, '36.15110', '-95.50920'), ('CATOOSA', 5449, '36.18890', '-95.74560'), ('VERDIGRIS', None, '36.23470', '-95.69080'), ('TIAWAH', None, '36.26110', '-95.56060'), ('FOYIL', 234, '36.43470', '-95.51920'), ('OOLOGAH', 883, '36.44690', '-95.70810'), ('BUSHYHEAD', 1203, '36.46140', '-95.49390'), ('TALALA', 270, '36.52970', '-95.70110'), ('CHELSEA', 2136, '36.53560', '-95.43220')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'OKC133': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BOWLEGS', 371, '35.14750', '-96.66930'), ('CROMWELL', 265, '35.34170', '-96.45480'), ('DEWRIGHT', None, '35.07000', '-96.68000'), ('KONAWA', 1479, '34.95750', '-96.75380'), ('LIMA', 74, '35.17330', '-96.59800'), ('LITTLE', None, '35.35000', '-96.68000'), ('SASAKWA', 150, '34.94660', '-96.52500'), ('SEMINOLE', 6899, '35.23580', '-96.64970'), ('VAMOOSA', None, '34.98000', '-96.67000'), ('WEWOKA', 3562, '35.14420', '-96.49580')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OUN'}, -'OKC135': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('COTTONWOOD', None, '35.36830', '-94.54890'), ('SALLISAW', 7989, '35.46030', '-94.78720'), ('GANS', 208, '35.38890', '-94.69190'), ('MULDROW', 3104, '35.40610', '-94.59860'), ('ROLAND', 2842, '35.42110', '-94.51440'), ('MC KEY', None, '35.48000', '-94.88000'), ('VIAN', 1362, '35.49830', '-94.96940'), ('GORE', 850, '35.52920', '-95.11690'), ('BRUSHY', 787, '35.55690', '-94.72530'), ('SHORT', 328, '35.57140', '-94.49110'), ('MARBLE CITY', 242, '35.58030', '-94.82080'), ('BOX', None, '35.58110', '-94.97610'), ('MOFFETT', 179, '35.39030', '-94.44670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'KYC169': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEAUMONT', None, '36.86670', '-85.63330'), ('CENTER', None, '37.13340', '-85.68330'), ('EDMONTON', 1586, '36.98290', '-85.62040'), ('GASCON', None, '37.00000', '-85.56670'), ('KNOB LICK', None, '37.08330', '-85.68330'), ('SUBTLE', None, '36.91670', '-85.48330'), ('SULPHUR WELL', None, '37.10000', '-85.61670'), ('SUMMER SHADE', None, '36.88330', '-85.70000'), ('WISDOM', None, '37.00000', '-85.70000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'OKC137': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALMA', None, '34.42000', '-97.60000'), ('BRAY', 1035, '34.60880', '-97.81750'), ('COMANCHE', 1556, '34.36870', '-97.96740'), ('CORUM', None, '34.37000', '-98.10000'), ('COUNTYLINE', None, '34.45000', '-97.57000'), ('DUNCAN', 22505, '34.52010', '-97.96820'), ('EMPIRE CITY', 734, '34.46480', '-98.04300'), ('LOCO', 150, '34.32950', '-97.68020'), ('MARLOW', 4592, '34.63980', '-97.96140'), ('SUNRAY', None, '34.42000', '-97.95000'), ('VELMA', 664, '34.45610', '-97.66590')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'NYC113': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BOLTON LANDING', None, '43.55830', '-73.65200'), ('GLENS FALLS', 14354, '43.31110', '-73.64550'), ('HAGUE', None, '43.74550', '-73.49700'), ('JOHNSBURG', None, '43.51820', '-73.96120'), ('LAKE GEORGE VILLAGE', None, '43.42560', '-73.71510'), ('LAKE LUZERNE-HADLEY', 2240, '43.31890', '-73.83800'), ('NORTH CREEK', None, '43.69730', '-73.98570'), ('NORTH RIVER', None, '43.73770', '-74.04950'), ('WARRENSBURG', 3208, '43.50180', '-73.77540'), ('WEST GLENS FALLS', 6721, '43.30260', '-73.68800')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYC111': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CLINTONDALE', 1424, '41.69180', '-74.04730'), ('ELLENVILLE', 4130, '41.70290', '-74.36410'), ('HIGHLAND', 5060, '41.71730', '-73.96570'), ('HURLEY', 3561, '41.91380', '-74.05820'), ('KERHONKSON', 1732, '41.77900', '-74.29590'), ('KINGSTON', 23456, '41.93010', '-73.99730'), ('LAKE KATRINE', 2396, '41.98330', '-73.99020'), ('LINCOLN PARK', 2337, '41.95760', '-74.00270'), ('MARLBORO', 2339, '41.60320', '-73.97330'), ('NAPANOCH', 1168, '41.75080', '-74.37450'), ('NEW PALTZ', 6034, '41.74820', '-74.08190'), ('PHOENICIA', 381, '42.08570', '-74.31770'), ('PORT EWEN', 3650, '41.90620', '-73.97890'), ('ROSENDALE VILLAGE', 1374, '41.84930', '-74.07620'), ('SAUGERTIES', 4955, '42.07480', '-73.94830'), ('SUNDOWN', None, '41.88880', '-74.46220'), ('TILLSON', 1709, '41.83160', '-74.06920'), ('WALLKILL', 2143, '41.60870', '-74.16470'), ('WEST HURLEY', 2105, '42.00650', '-74.11130'), ('WEST SHOKAN', None, '41.96870', '-74.28580'), ('WOODSTOCK', 2187, '42.03880', '-74.11050')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYC117': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CLYDE', 2269, '43.08340', '-76.87100'), ('LYONS', 3695, '43.06340', '-76.99360'), ('MACEDON', 1496, '43.06870', '-77.30270'), ('NEWARK', 9682, '43.04190', '-77.09430'), ('PALMYRA', 3490, '43.06160', '-77.23070'), ('RED CREEK', 521, '43.24800', '-76.72310'), ('SODUS', 1735, '43.23670', '-77.06410'), ('SODUS POINT', 1160, '43.26260', '-76.99420'), ('WOLCOTT', 1712, '43.22250', '-76.81270')], 'partOfState': '', 'wfo': 'BUF'}, -'NYC115': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARGYLE', 289, '43.23700', '-73.49040'), ('CAMBRIDGE', 1925, '43.02660', '-73.38090'), ('FORT ANN', 471, '43.41500', '-73.49060'), ('FORT EDWARD', 3141, '43.26890', '-73.58300'), ('GRANVILLE', 2644, '43.40830', '-73.26100'), ('GREENWICH', 1902, '43.08660', '-73.49670'), ('HUDSON FALLS', 6927, '43.30470', '-73.58200'), ('HULETTS LANDING', None, '43.64080', '-73.50930'), ('MIDDLE FALLS', None, '43.10820', '-73.52770'), ('NORTH EASTON', None, '43.01030', '-73.55000'), ('SALEM', 964, '43.17410', '-73.32830'), ('WHITEHALL', 2667, '43.56020', '-73.41840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'VAC157': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMISSVILLE', None, '38.67140', '-77.99580'), ('CASTLETON', None, '38.60580', '-78.10690'), ('CHESTER GAP', None, '38.85330', '-78.13530'), ('FIVE FORKS', None, '38.65000', '-78.16860'), ('FLINT HILL', None, '38.76280', '-78.10030'), ('FOURWAY', None, '38.74970', '-78.26830'), ('HACKLEYS CROSSROAD', None, '38.72750', '-78.03140'), ('PANORAMA', None, '38.65920', '-78.32170'), ('ROCK MILLS', None, '38.65500', '-78.12970'), ('SLATE MILLS', None, '38.53140', '-78.18310'), ('SPERRYVILLE', None, '38.67000', '-78.25000'), ('VIEWTOWN', None, '38.63920', '-78.03970'), ('WASHINGTON', 183, '38.71270', '-78.15980'), ('WOODVILLE', None, '38.60670', '-78.17560')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'NYC119': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARDSLEY', 4269, '41.01460', '-73.84120'), ('ARMONK', 3461, '41.13230', '-73.71280'), ('BEDFORD', 1724, '41.19680', '-73.64720'), ('BRIARCLIFF MANOR', 7696, '41.13880', '-73.84220'), ('BRONXVILLE', 6543, '40.93890', '-73.82730'), ('BUCHANAN', 2189, '41.26320', '-73.94490'), ('CROTON-ON-HUDSON', 7606, '41.20320', '-73.89070'), ('DOBBS FERRY', 10622, '41.01450', '-73.86970'), ('EASTCHESTER', 18564, '40.95820', '-73.80780'), ('ELMSFORD', 4676, '41.05320', '-73.81460'), ("GOLDEN'S BRIDGE", 1578, '41.28590', '-73.67050'), ('GREENVILLE', 8648, '41.00090', '-73.81870'), ('HARRISON', 24154, '41.02260', '-73.72020'), ('HARTSDALE', 9830, '41.02570', '-73.80520'), ('HASTINGS-ON-HUDSON', 7648, '40.98790', '-73.87960'), ('HAWTHORNE', 5083, '41.10430', '-73.79380'), ('IRVINGTON', 6631, '41.03860', '-73.86730'), ('JEFFERSON VALLEY-YORKTOWN', 14891, '41.31860', '-73.80190'), ('LARCHMONT', 6485, '40.92610', '-73.75350'), ('MAMARONECK', 18752, '40.93450', '-73.72740'), ('MOUNT KISCO', 9983, '41.20180', '-73.73050'), ('MOUNT VERNON', 68381, '40.91300', '-73.82980'), ('NEW ROCHELLE', 72182, '40.92320', '-73.77990'), ('NORTH TARRYTOWN', None, '41.09180', '-73.87140'), ('OSSINING', 24010, '41.15850', '-73.87150'), ('PEEKSKILL', 22441, '41.28940', '-73.92390'), ('PELHAM', 6400, '40.91100', '-73.80830'), ('PELHAM MANOR', 5466, '40.89370', '-73.80520'), ('PLEASANTVILLE', 7172, '41.13810', '-73.78470'), ('PORT CHESTER', 27867, '41.00450', '-73.66770'), ('RYE', 14955, '40.95290', '-73.68370'), ('RYE BROOK', 8602, '41.03040', '-73.68660'), ('SCARSDALE', 17823, '40.98840', '-73.77640'), ('TARRYTOWN', 11090, '41.06480', '-73.86870'), ('THORNWOOD', 5980, '41.11380', '-73.76490'), ('TUCKAHOE', 6211, '40.95270', '-73.82320'), ('WHITE PLAINS', 53077, '41.02090', '-73.75740'), ('YONKERS', 196086, '40.94700', '-73.86750'), ('YORKTOWN HEIGHTS', 7972, '41.27130', '-73.78260')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'VAC153': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADEN', None, '38.65500', '-77.53750'), ('BULL RUN', 11337, '38.78360', '-77.52070'), ('CHERRY HILL', None, '38.56970', '-77.26720'), ('DALE CITY', 55971, '38.65050', '-77.34430'), ('DUMFRIES', 4937, '38.56770', '-77.32510'), ('GAINESVILLE', 4382, '38.79560', '-77.61420'), ('GREENWICH', None, '38.74920', '-77.64830'), ('HAYMARKET', 879, '38.81210', '-77.63750'), ('INDEPENDENT HILL', None, '38.63580', '-77.43810'), ('LAKE RIDGE', 30404, '38.68760', '-77.29800'), ('MONTCLAIR', 15728, '38.61090', '-77.33990'), ('NOKESVILLE', 1236, '38.69860', '-77.58000'), ('TRIANGLE', 5500, '38.54570', '-77.31460'), ('WOODBRIDGE', 31941, '38.63560', '-77.26210'), ('WOOLSEY', None, '38.86970', '-77.63580')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'NDC005': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BAKER', None, '48.16060', '-99.64720'), ('BRINSMADE', 29, '48.18330', '-99.32440'), ('ESMOND', 159, '48.03290', '-99.76480'), ('FILLMORE', None, '48.18030', '-99.80030'), ('FLORA', None, '47.95030', '-99.41750'), ('FORT TOTTEN', 952, '47.97610', '-98.99480'), ('HARLOW', None, '48.16360', '-99.51860'), ('KNOX', 59, '48.34270', '-99.68930'), ('LEEDS', 464, '48.28940', '-99.43850'), ('MADDOCK', 498, '47.96220', '-99.52910'), ('MINNEWAUKAN', 318, '48.06980', '-99.25010'), ('OBERON', 81, '47.92390', '-99.20520'), ('PLEASANT LAKE', None, '48.36140', '-99.80170'), ('ST MICHAEL', None, '47.98500', '-98.87220'), ('TOKIO', None, '47.92470', '-98.81580'), ('WARWICK', 75, '47.85570', '-98.70710'), ('YORK', 26, '48.31350', '-99.57340')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'AKC240': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALCAN', None, '62.72300', '-141.18820'), ('BIG DELTA', 749, '64.13990', '-145.76210'), ('DELTA JUNCTION', 840, '64.06370', '-145.70820'), ('DOT LAKE', 19, '63.62910', '-144.09510'), ('DRY CREEK', 128, '63.65340', '-144.66530'), ('EAGLE', 129, '64.77810', '-141.20060'), ('EAGLE VILLAGE', 68, '64.79040', '-141.10910'), ('FORT GREELY', 461, '63.95870', '-145.75610'), ('HEALY LAKE', 37, '63.97700', '-144.72410'), ('NORTHWAY', 95, '62.93290', '-141.87490'), ('NORTHWAY JUNCTION', 72, '63.00210', '-141.77730'), ('NORTHWAY VILLAGE', 107, '62.97740', '-141.90360'), ('TANACROSS', 140, '63.33910', '-143.43270'), ('TETLIN', 117, '63.06460', '-142.43890'), ('TOK', 1393, '63.30030', '-143.03880')], 'partOfState': '', 'wfo': 'AFCAFG'}, -'NDC007': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('FAIRFIELD', None, '47.18330', '-103.21670'), ('FRYBURG', None, '46.86670', '-103.31670'), ('MEDORA', 100, '46.91370', '-103.52440')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDC001': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BUCYRUS', 26, '46.06360', '-102.78830'), ('HAYNES', 19, '45.97370', '-102.47160'), ('HETTINGER', 1307, '46.00360', '-102.63440'), ('REEDER', 181, '46.10710', '-102.94220')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NCC189': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AHO', None, '36.16670', '-81.61670'), ('BEECH MOUNTAIN', 310, '36.21080', '-81.88900'), ('BLOWING ROCK', 1418, '36.12910', '-81.67060'), ('BOONE', 13472, '36.20950', '-81.66990'), ('DEEP GAP', None, '36.23330', '-81.51670'), ('FOSCOE', None, '36.16670', '-81.76670'), ('LOVILL', None, '36.23330', '-81.73330'), ('MEAT CAMP', None, '36.30000', '-81.66670'), ('PEORIA', None, '36.28330', '-81.86670'), ('REESE', None, '36.33330', '-81.81670'), ('ROMINGER', None, '36.23330', '-81.83330'), ('RUTHERWOOD', None, '36.23330', '-81.60000'), ('SANDS', None, '36.25000', '-81.63330'), ('SEVEN DEVILS', 129, '36.14970', '-81.81390'), ('SILVERSTONE', None, '36.30000', '-81.75000'), ('SUGAR GROVE', None, '36.26670', '-81.78330'), ('TODD', None, '36.30000', '-81.60000'), ('VALLE CRUCIS', None, '36.21670', '-81.78330')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'NCC187': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CRESWELL', 278, '35.87090', '-76.39320'), ('PLYMOUTH', 4107, '35.86090', '-76.74840'), ('ROPER', 613, '35.87740', '-76.61710')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC185': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AFTON', None, '36.33000', '-78.22000'), ('ARCOLA', None, '36.28000', '-77.98000'), ('DREWRY', None, '36.45000', '-78.30000'), ('LAKE GASTON', None, '36.52000', '-77.99000'), ('MACON', 115, '36.43900', '-78.08470'), ('NORLINA', 1107, '36.44570', '-78.19550'), ('WARRENTON', 811, '36.40010', '-78.15710'), ('WISE', None, '36.48000', '-78.18000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC183': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('APEX', 20212, '35.72580', '-78.84500'), ('CARPENTER', None, '35.82000', '-78.88000'), ('CARY', 94536, '35.78340', '-78.79890'), ('FALLS LAKE', None, '35.93000', '-78.58000'), ('FUQUAY-VARINA', 7898, '35.59070', '-78.79400'), ('GARNER', 17757, '35.69450', '-78.62690'), ('HOLLY SPRINGS', 9192, '35.65520', '-78.83570'), ('KNIGHTDALE', 5958, '35.79250', '-78.48640'), ('LAKE WHEELER', None, '35.69950', '-78.72000'), ('MORRISVILLE', 5208, '35.83310', '-78.83310'), ('NEW HILL', None, '35.68000', '-78.90000'), ('NEW HOPE', None, '35.80710', '-78.55520'), ('PURNELL', None, '36.02000', '-78.57000'), ('RALEIGH', 276093, '35.82200', '-78.65880'), ('RDU INTERNATIONAL AIRPORT', None, '35.87000', '-78.78000'), ('ROLESVILLE', 907, '35.92760', '-78.45710'), ('WAKE FOREST', 12588, '35.97060', '-78.52090'), ('WENDELL', 4247, '35.78200', '-78.36850')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC181': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BULLOCKSVILLE', None, '36.48000', '-78.34500'), ('DABNEY', None, '36.35000', '-78.48000'), ('GILLBURG', None, '36.28000', '-78.37000'), ('HENDERSON', 16095, '36.32480', '-78.41200'), ('KERR LAKE', None, '36.50000', '-78.35000'), ('KITTRELL', 148, '36.22190', '-78.44150'), ('MIDDLEBURG', 162, '36.39840', '-78.32480'), ('SOUTH HENDERSON', 1220, '36.30250', '-78.40560'), ('TUNGSTEN', None, '36.52000', '-78.47000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'WAC055': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FRIDAY HARBOR', 1989, '48.53690', '-123.03130')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'TXC109': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BORACHO', None, '31.08000', '-104.39000'), ('KENT', None, '31.07000', '-104.22000'), ('LOBO', None, '30.81000', '-104.75000'), ('MCKITTRICK CANYON', None, '31.98000', '-104.77000'), ('PINE SPRINGS', None, '31.89000', '-104.81000'), ('PLATEAU', None, '31.06000', '-104.56000'), ('VAN HORN', 2435, '31.04000', '-104.83460')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'OKC009': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CARTER', 254, '35.21720', '-99.50340'), ('ELK CITY', 10510, '35.40290', '-99.41130'), ('ERICK', 1023, '35.21350', '-99.86690'), ('MAYFIELD', None, '35.33000', '-99.88000'), ('RETROP', None, '35.17000', '-99.37000'), ('SAYRE', 4114, '35.29730', '-99.63480'), ('SWEETWATER', None, '35.42000', '-99.92000'), ('TEXOLA', 47, '35.21860', '-99.98940')], 'partOfState': '', 'wfo': 'OUN'}, -'OKC005': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ATOKA', 2988, '34.38270', '-96.13430'), ('CANEY', 199, '34.23290', '-96.21340'), ('CHOCKIE', None, '34.58000', '-96.00000'), ('DAISY', None, '34.53400', '-95.73800'), ('FARRIS', None, '34.27000', '-95.82000'), ('LANE', None, '34.30000', '-95.98000'), ('REDDEN', None, '34.50000', '-95.85000'), ('STRINGTOWN', 396, '34.46530', '-96.05320'), ('TUSHKA', 345, '34.31950', '-96.16600'), ('WARDVILLE', None, '34.65700', '-96.03250')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'OKC007': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BALKO', None, '36.63000', '-100.68000'), ('BEAVER', 1570, '36.81450', '-100.52390'), ('BOYD', None, '36.70000', '-100.82000'), ('BRYANS CORNER', None, '36.62000', '-100.82000'), ('ELMWOOD', None, '36.62000', '-100.52000'), ('FLORIS', None, '36.87000', '-100.70000'), ('FORGAN', 532, '36.90640', '-100.53760'), ('GATE', 112, '36.85190', '-100.05540'), ('GRAY', None, '36.55000', '-100.82000'), ('KNOWLES', 32, '36.87260', '-100.19250'), ('MOCANE', None, '36.88000', '-100.53000'), ('SLAPOUT', None, '36.62000', '-100.12000'), ('TURPIN', None, '36.87000', '-100.88000')], 'partOfState': '', 'wfo': 'AMA'}, -'WYC007': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ARLINGTON', None, '41.59000', '-106.21000'), ('BAGGS', 348, '41.03560', '-107.65590'), ('DIXON', 79, '41.03410', '-107.53430'), ('ELK MOUNTAIN', 192, '41.68780', '-106.41290'), ('ENCAMPMENT', None, '41.20880', '-106.79460'), ('HANNA', 873, '41.86990', '-106.55870'), ('MEDICINE BOW', 274, '41.89980', '-106.20100'), ('MUDDY GAP', None, '42.38000', '-107.44000'), ('RAWLINS', 8538, '41.78450', '-107.22790'), ('RIVERSIDE', 59, '41.21440', '-106.78070'), ('SARATOGA', 1726, '41.45150', '-106.81220'), ('SEMINOE DAM', None, '42.15000', '-106.90000'), ('SHIRLEY BASIN', None, '42.35000', '-106.21000'), ('SINCLAIR', 423, '41.77750', '-107.11670'), ('SKYLINE', None, '41.13300', '-106.58000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CYS'}, -'OKC003': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALINE', 214, '36.50900', '-98.44830'), ('AMORITA', 44, '36.92390', '-98.29350'), ('BURLINGTON', 156, '36.90080', '-98.42330'), ('BYRON', 45, '36.90120', '-98.29470'), ('CARMEN', 411, '36.57840', '-98.45770'), ('CHEROKEE', 1630, '36.75410', '-98.35490'), ('DRIFTWOOD', None, '36.88000', '-98.35000'), ('GOLTRY', 268, '36.53200', '-98.15070'), ('HELENA', 443, '36.54640', '-98.27020'), ('INGERSOLL', None, '36.80000', '-98.38000'), ('JET', 230, '36.66680', '-98.18070'), ('LAMBERT', 9, '36.68370', '-98.42390'), ('MCWILLIE', None, '36.53000', '-98.35000'), ('YEWED', None, '36.68000', '-98.40000')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'GAC217': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COVINGTON', 11547, '33.60320', '-83.85450'), ('MANSFIELD', 392, '33.51800', '-83.73520'), ('NEWBORN', 520, '33.51600', '-83.69560'), ('OXFORD', 1892, '33.62310', '-83.87020'), ('PORTERDALE', 1281, '33.57190', '-83.89700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'AKC068': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANDERSON', 367, '64.30650', '-149.15970'), ('CANTWELL', 222, '63.37160', '-148.92020'), ('FERRY', 29, '63.92790', '-149.13020'), ('HEALY', 1000, '63.81150', '-149.00200'), ('LIGNITE', None, '63.89050', '-149.04640'), ('MCKINLEY PARK', 142, '63.69670', '-148.95480')], 'partOfState': '', 'wfo': 'AFCAFG'}, -'INC029': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AURORA', 3965, '39.06640', '-84.90330'), ('BRIGHT', 5405, '39.20260', '-84.85760'), ('DILLSBORO', 1436, '39.01860', '-85.06170'), ('GREENDALE', 4296, '39.11770', '-84.86020'), ('HIDDEN VALLEY', 4417, '39.16220', '-84.84310'), ('LAWRENCEBURG', 4685, '39.10040', '-84.86970'), ('MOORES HILL', 635, '39.11340', '-85.08900'), ('ST. LEON', 387, '39.28730', '-84.96720')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILN'}, -'MIC031': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALOHA', None, '45.53330', '-84.46660'), ('ALVERNO', None, '45.56660', '-84.40000'), ('BLACK LAKE', None, '45.49000', '-84.28000'), ('BURT LAKE', None, '45.43330', '-84.71660'), ('CHEBOYGAN', 5295, '45.64190', '-84.46880'), ('INDIAN RIVER', 2008, '45.41600', '-84.61660'), ('MULLET LAKE', None, '45.56660', '-84.53330'), ('RIGGSVILLE', None, '45.57500', '-84.62000'), ('TOPINABEE', None, '45.48330', '-84.60000'), ('TOWER', None, '45.35000', '-84.30000'), ('WOLVERINE', 359, '45.27350', '-84.60550')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'INC025': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALTON', 53, '38.12230', '-86.42120'), ('BEECHWOOD', None, '38.20000', '-86.41670'), ('BROWNSTOWN', 2978, '38.38330', '-86.50000'), ('CAPE SANDY', None, '38.15000', '-86.36670'), ('CAREFREE', None, '38.24330', '-86.35790'), ('CURBY', None, '38.23880', '-86.38330'), ('DEUCHARS', None, '38.16670', '-86.45000'), ('ECKERTY', None, '38.31670', '-86.61670'), ('ENGLISH', 673, '38.33300', '-86.46330'), ('FREDONIA', None, '38.18330', '-86.40000'), ('GRANTSBURG', None, '38.28330', '-86.46670'), ('LEAVENWORTH', 353, '38.20040', '-86.34660'), ('MARENGO', 829, '38.37160', '-86.34370'), ('MIFFLIN', None, '38.30000', '-86.53330'), ('MILLTOWN', 932, '38.34280', '-86.27450'), ('PILOT KNOB', None, '38.28330', '-86.35000'), ('RICEVILLE', None, '38.31670', '-86.66670'), ('RIDDLE', None, '38.25000', '-86.43330'), ('SULPHUR', None, '38.23330', '-86.46670'), ('SULPHUR SPRINGS', 346, '38.21670', '-86.46670'), ('TASWELL', None, '38.33330', '-86.56670'), ('TEMPLE', None, '38.35000', '-86.41670'), ('WEST FORK', None, '38.23330', '-86.53330'), ('WICKLIFFE', None, '38.36670', '-86.63330'), ('WYANDOTTE', None, '38.21670', '-86.30000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'INC027': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALFORDSVILLE', 112, '38.56010', '-86.94870'), ('CANNELBURG', 140, '38.66900', '-86.99790'), ('ELNORA', 721, '38.87720', '-87.08490'), ('MONTGOMERY', 368, '38.66520', '-87.04710'), ('ODON', 1376, '38.84230', '-86.98870'), ('PLAINVILLE', 513, '38.80430', '-87.15190'), ('WASHINGTON', 11380, '38.65820', '-87.17300')], 'partOfState': 'SOUTHWEST', 'wfo': 'IND'}, -'INC021': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRAZIL', 8188, '39.52360', '-87.12340'), ('CARBON', 334, '39.59890', '-87.10750'), ('CENTER POINT', 292, '39.41480', '-87.07450'), ('CLAY CITY', 1019, '39.27700', '-87.11210'), ('HARMONY', 589, '39.53400', '-87.07340'), ('KNIGHTSVILLE', 624, '39.52610', '-87.08980'), ('STAUNTON', 550, '39.48610', '-87.18940')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'INC023': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('COLFAX', 768, '40.19430', '-86.66720'), ('FRANKFORT', 16662, '40.28110', '-86.51030'), ('KIRKLIN', 766, '40.19300', '-86.35970'), ('MICHIGANTOWN', 406, '40.32780', '-86.39100'), ('MULBERRY', 1387, '40.34560', '-86.66810'), ('ROSSVILLE', 1513, '40.42110', '-86.59560')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'MIC033': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARBEAU', None, '46.28330', '-84.28330'), ('BAY MILLS', None, '46.43500', '-84.58500'), ('BAYVIEW CAMPGROUND', None, '46.44500', '-84.76000'), ('BRIMLEY', None, '46.40500', '-84.56660'), ('DAFTER', None, '46.36700', '-84.43300'), ('DONALDSON', None, '46.31000', '-84.35000'), ('ECKERMAN', None, '46.36700', '-85.03340'), ('FIBRE', None, '46.20000', '-84.88330'), ('GOETZVILLE', None, '46.08000', '-84.09000'), ('HULBERT', None, '46.35000', '-85.15000'), ('INTERSECTION OF M-32 AND', None, '45.99900', '-84.03150'), ('KELDEN', None, '46.21000', '-84.31000'), ('KINCHELOE', None, '46.25000', '-84.50000'), ('KINROSS', None, '46.26660', '-84.48000'), ('LOWER TAHQUAMENON FALLS S', None, '46.62000', '-85.20000'), ('MCCARRON', None, '46.33000', '-84.28000'), ('MUNUSCONG', None, '46.24500', '-84.19000'), ('PARADISE', None, '46.63340', '-85.03340'), ('PICKFORD', None, '46.16400', '-84.36400'), ('RACO', None, '46.37100', '-84.71600'), ('RUDYARD', None, '46.23330', '-84.60000'), ('SAULT STE. MARIE', 16542, '46.48460', '-84.36550'), ('STALWART', None, '46.10000', '-84.24000'), ('STRONGS', None, '46.35000', '-84.96700'), ('THREE LAKES', None, '46.31000', '-84.97000'), ('TROUT LAKE', None, '46.18330', '-85.01710'), ('WHITEFISH POINT', None, '46.75200', '-84.98330')], 'partOfState': '', 'wfo': 'APX'}, -'PAC025': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEAVER MEADOWS', 968, '40.92960', '-75.91270'), ('BOWMANSTOWN', 895, '40.80150', '-75.66150'), ('EAST SIDE', 290, '41.06270', '-75.76200'), ('JIM THORPE', 4804, '40.87140', '-75.73980'), ('LANSFORD', 4230, '40.83210', '-75.88600'), ('LEHIGHTON', 5537, '40.83120', '-75.71660'), ('NESQUEHONING', 3288, '40.86200', '-75.82950'), ('PALMERTON', 5248, '40.80120', '-75.61700'), ('PARRYVILLE', 478, '40.82430', '-75.66960'), ('SUMMIT HILL', 2974, '40.82490', '-75.84670'), ('TRESCKOW', 964, '40.91540', '-75.96520'), ('WEATHERLY', 2612, '40.94300', '-75.82170'), ('WEISSPORT', 434, '40.82900', '-75.70120'), ('WEISSPORT EAST', 1936, '40.83550', '-75.69110'), ('WHITE HAVEN', 1182, '41.05530', '-75.77720')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'NYC029': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AKRON', 3085, '43.01930', '-78.49560'), ('ALDEN', 2666, '42.89840', '-78.49450'), ('ANGOLA', 2266, '42.63770', '-79.02980'), ('ANGOLA ON THE LAKE', 1771, '42.65470', '-79.04910'), ('BLASDELL', 2718, '42.79620', '-78.83340'), ('BUFFALO', 292648, '42.88980', '-78.85970'), ('CHEEKTOWAGA', 79988, '42.90890', '-78.75020'), ('CLARENCE CENTER', 1747, '43.00870', '-78.63180'), ('DEPEW', 16629, '42.91200', '-78.70470'), ('EAST AURORA', 6673, '42.76680', '-78.61740'), ('EDEN', 3579, '42.65200', '-78.90070'), ('ELMA CENTER', 2491, '42.82620', '-78.63270'), ('FARNHAM', 322, '42.59690', '-79.07890'), ('HAMBURG', 10116, '42.72400', '-78.83490'), ('HARRIS HILL', 4881, '42.97660', '-78.68270'), ('HOLLAND', 1261, '42.63640', '-78.54790'), ('KENMORE', 16426, '42.96480', '-78.87190'), ('LACKAWANNA', 19064, '42.81680', '-78.82930'), ('LAKE ERIE BEACH', 4499, '42.62360', '-79.07770'), ('LANCASTER', 11188, '42.90160', '-78.66980'), ('NORTH BOSTON', 2680, '42.67220', '-78.78400'), ('NORTH COLLINS', 1079, '42.59460', '-78.93670'), ('ORCHARD PARK', 3294, '42.76340', '-78.74580'), ('SLOAN', 3775, '42.89220', '-78.79170'), ('SPRINGVILLE', 4252, '42.50940', '-78.67010'), ('TONAWANDA', 61729, '42.98410', '-78.87570'), ('WEST SENECA', 45943, '42.83770', '-78.75140'), ('WILLIAMSVILLE', 5573, '42.96290', '-78.74090')], 'partOfState': '', 'wfo': 'BUF'}, -'NYC027': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMENIA', 1115, '41.84620', '-73.55240'), ('ARLINGTON', 12481, '41.69570', '-73.88490'), ('BEACON', 13808, '41.50420', '-73.96600'), ('DOVER PLAINS', 1996, '41.74520', '-73.58030'), ('FAIRVIEW', 2887, '41.73190', '-73.91340'), ('FISHKILL', 1735, '41.53450', '-73.89420'), ('HOPEWELL JUNCTION', 2610, '41.58570', '-73.80130'), ('HYDE PARK', None, '41.78430', '-73.93430'), ('MILLBROOK', 1429, '41.78430', '-73.69470'), ('MILLERTON', 925, '41.95360', '-73.51120'), ('MYERS CORNER', 5546, '41.59710', '-73.86580'), ('PAWLING', 2233, '41.56330', '-73.59990'), ('PINE PLAINS', 1412, '41.97770', '-73.65840'), ('PLEASANT VALLEY', 1839, '41.74870', '-73.82050'), ('POUGHKEEPSIE', 29871, '41.69580', '-73.92250'), ('RED HOOK', 1805, '41.99560', '-73.87660'), ('RED OAKS MILL', 4930, '41.65570', '-73.87360'), ('RHINEBECK', 3077, '41.92870', '-73.90750'), ('STAATSBURG', 911, '41.84950', '-73.92480'), ('STANFORDVILLE', None, '41.86580', '-73.71580'), ('TIVOLI', 1163, '42.05930', '-73.91110'), ('WAPPINGERS FALLS', 4929, '41.59900', '-73.91850'), ('WINGDALE', None, '41.64630', '-73.56420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'PAC027': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BALD EAGLE SP', None, '41.05000', '-77.68500'), ('BELLEFONTE', 6395, '40.91380', '-77.76860'), ('BLACK MOSHANNON SP', None, '40.91300', '-78.05200'), ('BOALSBURG', 3578, '40.77350', '-77.79160'), ('CENTRE HALL', 1079, '40.84440', '-77.68460'), ('HOWARD', 699, '41.01200', '-77.65700'), ('MCCALL DAM SP', None, '41.01000', '-77.20000'), ('MILESBURG', 1187, '40.94260', '-77.79190'), ('MILLHEIM', 749, '40.89250', '-77.47620'), ('MOSHANNON', None, '41.02720', '-78.04800'), ('PARK FOREST', None, '40.80100', '-77.90970'), ('PHILIPSBURG', 3056, '40.89260', '-78.21170'), ('PINE GLEN', 210, '41.10100', '-78.05950'), ('PINE GROVE MILLS', 1141, '40.73880', '-77.87390'), ('PLEASANT GAP', 1611, '40.86460', '-77.73800'), ('POE VALLEY SP', None, '40.84440', '-77.49500'), ('PORT MATILDA', 638, '40.79900', '-78.05260'), ('POTTERS MILLS', None, '40.77000', '-77.64000'), ('REBERSBURG', 492, '40.94250', '-77.49000'), ('ROCK SPRINGS', None, '40.71950', '-77.95660'), ('SANDY RIDGE', 340, '40.79900', '-78.21170'), ('SNOW SHOE', 771, '41.02720', '-77.95030'), ('STATE COLLEGE', 38420, '40.79060', '-77.85790'), ('UNIONVILLE', 313, '40.90590', '-77.87660'), ('ZION', 2054, '40.92140', '-77.66790')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'NYC023': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BALTIMORE', None, '42.73330', '-76.11670'), ('CINCINNATUS', None, '42.53330', '-75.88330'), ('CORTLAND', 18740, '42.60090', '-76.17940'), ('CORTLAND WEST', 1345, '42.58900', '-76.22790'), ('CUYLER', None, '42.73330', '-75.93330'), ('EAST FREETOWN', None, '42.55000', '-75.96670'), ('EAST HOMER', None, '42.66670', '-76.10000'), ('FREETOWN CORNERS', None, '42.51670', '-76.03330'), ('GLEN HAVEN', None, '42.76670', '-76.26670'), ('GRACIE', None, '42.56670', '-76.25000'), ('HARFORD', None, '42.43330', '-76.23330'), ('HOMER', 3368, '42.63780', '-76.18360'), ('HUNTS CORNERS', None, '42.41670', '-76.11670'), ('KEENEY', None, '42.78330', '-75.95000'), ('LAPEER', None, '42.43330', '-76.10000'), ('MARATHON', 1063, '42.44280', '-76.03510'), ('MC GRAW', None, '42.60000', '-76.10000'), ('MCGRAW', 1000, '42.59200', '-76.09820'), ('MUNSONS CORNERS', 2426, '42.58010', '-76.20530'), ('PREBLE', None, '42.73330', '-76.13330'), ('SCOTT', None, '42.73330', '-76.23330'), ('SOLON', None, '42.60000', '-76.01670'), ('SOUTH CORTLAND', None, '42.56670', '-76.21670'), ('TAYLOR', None, '42.61670', '-75.88330'), ('TEXAS VALLEY', None, '42.48330', '-75.96670'), ('TRIPOLI', None, '42.73330', '-75.95000'), ('TRUXTON', None, '42.71670', '-76.03330'), ('UNION VALLEY', None, '42.63330', '-75.88330'), ('VIRGIL', None, '42.51670', '-76.18330'), ('WILLET', None, '42.46670', '-75.90000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'GAC019': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALAPAHA', 682, '31.38320', '-83.22370'), ('ALLENVILLE', None, '31.12790', '-83.21430'), ('BANNOCKBURN', None, '31.28370', '-83.05780'), ('BERRIEN CO A/P', None, '31.21200', '-83.22790'), ('COTTLE', None, '31.20040', '-83.31480'), ('ENIGMA', 869, '31.40910', '-83.33020'), ('GLADYS', None, '31.46890', '-83.23780'), ('GLORY', None, '31.36570', '-83.14100'), ('NASHVILLE', 4697, '31.20440', '-83.24920'), ('RAY CITY', 746, '31.07480', '-83.19670'), ('WEBER', None, '31.23640', '-83.13990')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'TXC387': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANNONA', 282, '33.58100', '-94.91310'), ('AVERY', 462, '33.55100', '-94.77980'), ('BOGATA', 1396, '33.46920', '-95.21340'), ('CLARKSVILLE', 3883, '33.61050', '-95.05550'), ('DETROIT', 776, '33.66080', '-95.26600')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'LAC029': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CLAYTON', 858, '31.72100', '-91.53970'), ('FERRIDAY', 3723, '31.63450', '-91.55530'), ('RIDGECREST', 801, '31.60190', '-91.52970'), ('VIDALIA', 4543, '31.56830', '-91.44050'), ('WEST FERRIDAY', 1541, '31.64020', '-91.57320')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'MIC039': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('FREDERIC', None, '44.78530', '-84.73340'), ('GRAYLING', 1952, '44.65730', '-84.70950'), ('HARTWICK PINES STATE PARK', None, '44.76000', '-84.69000'), ('INTERSECTION OF I-75 AND', None, '44.58000', '-84.71000'), ('INTERSECTION OF M-72 AND', None, '44.61400', '-84.41400'), ('LOVELLS', None, '44.81000', '-84.46670')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'LAC025': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('HARRISONBURG', 746, '31.76700', '-91.82380'), ('JONESVILLE', 2469, '31.62280', '-91.83050'), ('SICILY ISLAND', 453, '31.84970', '-91.65920')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAC027': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ATHENS', 262, '32.65110', '-93.02590'), ('HAYNESVILLE', 2679, '32.96690', '-93.13780'), ('HOMER', 3788, '32.79360', '-93.05870'), ('JUNCTION CITY', 652, '33.00900', '-92.72280'), ('LISBON', 162, '32.78810', '-92.86550')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAC021': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CLARKS', 1071, '32.02860', '-92.13970'), ('COLUMBIA', 477, '32.10150', '-92.07720'), ('GRAYSON', 531, '32.04850', '-92.11150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAC023': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CAMERON', 1965, '29.79760', '-93.29960'), ('CONSTANCE BEACH', None, '29.77500', '-93.57940'), ('CREOLE', None, '29.79580', '-93.11110'), ('GRAND CHENIER', None, '29.76670', '-92.97500'), ('GRAND LAKE', None, '30.03060', '-93.27190'), ('HACKBERRY', 1699, '29.96830', '-93.43380'), ('HOLLY BEACH', None, '29.78500', '-93.45920'), ('JOHNSON BAYOU', None, '29.77110', '-93.65830'), ('KLONDIKE', None, '30.03060', '-92.63280'), ('RUTHERFORD BEACH', None, '29.77500', '-93.12500')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'AKC110': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('JUNEAU', None, '58.38860', '-134.13340')], 'partOfState': '', 'wfo': 'AJK'}, -'VAC570': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('COLONIAL HEIGHTS', 16897, '37.26400', '-77.39880')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'MIC009': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ANTRIM', None, '44.88330', '-85.08000'), ('BELLAIRE', 1164, '44.97590', '-85.20670'), ('CENTRAL LAKE', 990, '45.06980', '-85.26310'), ('CLAM RIVER', None, '44.93330', '-85.28330'), ('ELK RAPIDS', 1700, '44.89490', '-85.40420'), ('ELLSWORTH', 483, '45.16620', '-85.24440'), ('KEWADIN', None, '44.93340', '-85.36700'), ('LAKE BELLAIRE', None, '44.95000', '-85.24000'), ('MANCELONA', 1408, '44.90210', '-85.06100'), ('TORCH LAKE', None, '45.06670', '-85.36720')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'SDC019': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BELLE FOURCHE', 4565, '44.68270', '-103.85320'), ('BELLE FOURCHE RESERVOIR', None, '44.73330', '-103.70000'), ('CASTLE ROCK', None, '44.96740', '-103.42380'), ('FRUITDALE', 62, '44.68330', '-103.66670'), ('HOOVER', None, '45.12710', '-103.26540'), ('NEWELL', 646, '44.71670', '-103.41670'), ('NISLAND', 204, '44.67110', '-103.55450'), ('VALE', None, '44.61670', '-103.40000')], 'partOfState': 'NORTHWEST', 'wfo': 'UNR'}, -'IAC071': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FARRAGUT', 509, '40.71980', '-95.48010'), ('HAMBURG', 1240, '40.60580', '-95.65480'), ('IMOGENE', 66, '40.87870', '-95.42740'), ('RANDOLPH', 209, '40.87290', '-95.56420'), ('RIVERTON', 304, '40.68740', '-95.56880'), ('SIDNEY', 1300, '40.74600', '-95.64440'), ('TABOR', 993, '40.89380', '-95.67210'), ('THURMAN', 236, '40.81940', '-95.74840')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'ILC143': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALTA', None, '40.81670', '-89.63330'), ('BARTONVILLE', 6310, '40.63760', '-89.66420'), ('BELLEVUE', 1887, '40.68630', '-89.67390'), ('BRIMFIELD', 933, '40.83820', '-89.88390'), ('CHILLICOTHE', 5996, '40.91830', '-89.49930'), ('DUNLAP', 926, '40.86080', '-89.67660'), ('ELMORE', None, '40.96670', '-89.96670'), ('ELMWOOD', 1945, '40.77910', '-89.96690'), ('GLASFORD', 1076, '40.57230', '-89.81320'), ('HANNA CITY', 1013, '40.69220', '-89.79310'), ('KICKAPOO', None, '40.80000', '-89.75000'), ('KINGSTON MINES', 259, '40.55820', '-89.77060'), ('LAURA', None, '40.91670', '-89.91670'), ('MAPLETON', 227, '40.56970', '-89.72140'), ('MONICA', None, '40.93330', '-89.83330'), ('MOSSVILLE', None, '40.81670', '-89.56670'), ('NORWOOD', 473, '40.70680', '-89.69950'), ('PEORIA', 112936, '40.74500', '-89.60920'), ('PRINCEVILLE', 1621, '40.93150', '-89.75560'), ('ROME', 1776, '40.87840', '-89.51170'), ('SMITHVILLE', None, '40.66670', '-89.80000'), ('TRIVOLI', None, '40.69220', '-89.88330'), ('WEST PEORIA', 4762, '40.69920', '-89.63350')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'IAC073': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHURDAN', 418, '42.15470', '-94.47770'), ('DANA', 84, '42.10670', '-94.24010'), ('GRAND JUNCTION', 964, '42.03220', '-94.23650'), ('JEFFERSON', 4626, '42.01880', '-94.37650'), ('PATON', 265, '42.16390', '-94.25470'), ('RIPPEY', 319, '41.93460', '-94.20000'), ('SCRANTON', 604, '42.02040', '-94.54820')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'ILC145': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CUTLER', 543, '38.03270', '-89.56660'), ('DU QUOIN', 6448, '38.00420', '-89.23540'), ('PINCKNEYVILLE', 5464, '38.07810', '-89.38420'), ('ST. JOHNS', 218, '38.03120', '-89.24040'), ('TAMAROA', 740, '38.13540', '-89.22890'), ('WILLISVILLE', 694, '37.98290', '-89.59060')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'IAC075': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEAMAN', 210, '42.22000', '-92.82280'), ('CONRAD', 1055, '42.22400', '-92.87360'), ('DIKE', 944, '42.46310', '-92.63010'), ('GRUNDY CENTER', 2596, '42.36300', '-92.77470'), ('HOLLAND', 250, '42.39970', '-92.79930'), ('MORRISON', 97, '42.34340', '-92.67290'), ('REINBECK', 1751, '42.32220', '-92.59850'), ('STOUT', 217, '42.52710', '-92.71120'), ('WELLSBURG', 716, '42.43380', '-92.92440')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'ILC147': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATWOOD', 1290, '39.80000', '-88.47000'), ('BEMENT', 1784, '39.92280', '-88.57160'), ('CERRO GORDO', 1436, '39.89010', '-88.73460'), ('CISCO', 264, '40.01370', '-88.72350'), ('DE LAND', 475, '40.12160', '-88.64380'), ('HAMMOND', 518, '39.79850', '-88.59150'), ('LA PLACE', None, '39.80000', '-88.71670'), ('LODGE', None, '40.10000', '-88.55000'), ('MANSFIELD', 949, '40.21200', '-88.50900'), ('MONTICELLO', 5138, '40.02580', '-88.57470'), ('WHITE HEATH', None, '40.08330', '-88.50000')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'IAC077': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BAGLEY', 354, '41.84570', '-94.42990'), ('BAYARD', 536, '41.85220', '-94.55830'), ('CASEY', 478, '41.50730', '-94.52150'), ('GUTHRIE CENTER', 1668, '41.67860', '-94.49830'), ('JAMAICA', 237, '41.84550', '-94.30720'), ('MENLO', 365, '41.52200', '-94.40350'), ('PANORA', 1175, '41.69100', '-94.36490'), ('YALE', 287, '41.77530', '-94.35680')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'ILC149': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATLAS', None, '39.51700', '-90.96700'), ('BARRY', 1368, '39.69560', '-91.03970'), ('BAYLIS', 265, '39.72900', '-90.90920'), ('BEDFORD', None, '39.52920', '-90.59600'), ('BEECREEK', None, '39.40030', '-90.63590'), ('CHAMBERSBURG', None, '39.81730', '-90.65730'), ('DETROIT', 93, '39.61980', '-90.67630'), ('EL DARA', 89, '39.62210', '-90.99110'), ('FISHHOOK', None, '39.80570', '-90.88540'), ('FLORENCE', 71, '39.62820', '-90.61020'), ('GRIGGSVILLE', 1258, '39.70790', '-90.72700'), ('HULL', 474, '39.70910', '-91.20500'), ('INDEPENDENCE', None, '39.53150', '-90.79150'), ('KINDERHOOK', 249, '39.70490', '-91.15470'), ('MARTINSBURG', None, '39.51590', '-90.84260'), ('MILTON', 274, '39.56420', '-90.64980'), ('MONTEZUMA', None, '39.55120', '-90.58320'), ('NEBO', 408, '39.44140', '-90.79030'), ('NEW CANTON', 417, '39.63820', '-91.09780'), ('NEW HARTFORD', None, '39.57570', '-90.91010'), ('NEW SALEM', 136, '39.70800', '-90.84740'), ('PEARL', 187, '39.45860', '-90.62430'), ('PERRY', 437, '39.78240', '-90.74720'), ('PIKE', None, '39.45970', '-91.03500'), ('PITTSFIELD', 4211, '39.61070', '-90.80930'), ('PLEASANT HILL', 1047, '39.44460', '-90.87290'), ('ROCKPORT', None, '39.53900', '-91.00870'), ('SEEHORN', None, '39.75530', '-91.26120'), ('SUMMER HILL', None, '39.54640', '-90.91930'), ('TIME', 29, '39.56110', '-90.72280'), ('VALLEY CITY', 14, '39.70890', '-90.64910')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LSX'}, -'IAC079': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLAIRSBURG', 235, '42.47950', '-93.64260'), ('ELLSWORTH', 531, '42.31060', '-93.58180'), ('JEWELL', None, '42.31130', '-93.63860'), ('KAMRAR', 229, '42.39170', '-93.72740'), ('RANDALL', 148, '42.23720', '-93.60300'), ('STANHOPE', 488, '42.28860', '-93.79500'), ('STRATFORD', 746, '42.27100', '-93.92760'), ('WEBSTER CITY', 8176, '42.46340', '-93.81650'), ('WILLIAMS', 427, '42.49010', '-93.54160')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'SDC013': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ABERDEEN', 24658, '45.46750', '-98.48240'), ('ABERDEEN', 24658, '45.46750', '-98.48240'), ('BARNARD', None, '45.73210', '-98.49570'), ('BARNARD', None, '45.73210', '-98.49570'), ('BATH', None, '45.46900', '-98.32380'), ('BATH', None, '45.46900', '-98.32380'), ('CLAREMONT', 130, '45.67200', '-98.01450'), ('CLAREMONT', 130, '45.67200', '-98.01450'), ('COLUMBIA', 140, '45.61490', '-98.31160'), ('COLUMBIA', 140, '45.61490', '-98.31160'), ('FERNEY', None, '45.33020', '-98.09720'), ('FERNEY', None, '45.33020', '-98.09720'), ('FREDERICK', 255, '45.83280', '-98.50660'), ('FREDERICK', 255, '45.83280', '-98.50660'), ('GROTON', 1356, '45.45210', '-98.10010'), ('GROTON', 1356, '45.45210', '-98.10010'), ('HECLA', 314, '45.88210', '-98.15140'), ('HECLA', 314, '45.88210', '-98.15140'), ('HOUGHTON', None, '45.76290', '-98.21050'), ('HOUGHTON', None, '45.76290', '-98.21050'), ('PUTNEY', None, '45.56030', '-98.17530'), ('PUTNEY', None, '45.56030', '-98.17530'), ('RICHMOND LAKE REC AREA', None, '45.54190', '-98.61080'), ('RICHMOND LAKE REC AREA', None, '45.54190', '-98.61080'), ('STRATFORD', 96, '45.31710', '-98.30380'), ('STRATFORD', 96, '45.31710', '-98.30380'), ('WARNER', 419, '45.32430', '-98.49520'), ('WARNER', 419, '45.32430', '-98.49520'), ('WESTPORT', 125, '45.64790', '-98.49730'), ('WESTPORT', 125, '45.64790', '-98.49730')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDC015': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CHAMBERLAIN', 2338, '43.80760', '-99.32020'), ('KIMBALL', 745, '43.74620', '-98.95710'), ('PUKWANA', 287, '43.77890', '-99.18240')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FSD'}, -'SDC017': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FORT THOMPSON', 1375, '44.04980', '-99.41200'), ('FORT THOMPSON', 1375, '44.04980', '-99.41200'), ('GANN VALLEY', None, '44.03320', '-98.98780'), ('GANN VALLEY', None, '44.03320', '-98.98780'), ('LEES CORNER', None, '44.06980', '-99.32150'), ('LEES CORNER', None, '44.06980', '-99.32150'), ('SHELBY', None, '43.94800', '-99.18730'), ('SHELBY', None, '43.94800', '-99.18730')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'NEC045': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BOX BUTTE DAM', None, '42.45000', '-103.08000'), ('CHADRON', 5634, '42.82710', '-103.00010'), ('CHADRON ST PARK', None, '42.68000', '-103.00000'), ('CRAWFORD', 1107, '42.68550', '-103.41420'), ('MARSLAND', None, '42.44460', '-103.30090'), ('WHITNEY', 87, '42.78410', '-103.25680')], 'partOfState': '', 'wfo': 'CYS'}, -'ORC031': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('CULVER', 802, '44.52490', '-121.20930'), ('MADRAS', 5078, '44.62990', '-121.12900'), ('METOLIUS', 635, '44.58760', '-121.17660'), ('WARM SPRINGS', 2431, '44.76920', '-121.28570')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'ORC033': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('CAVE JUNCTION', 1363, '42.16730', '-123.64470'), ('GALICE', None, '42.56970', '-123.59610'), ('GRANTS PASS', 23003, '42.44120', '-123.32430'), ('KERBY', None, '42.19440', '-123.65060'), ('MERLIN', None, '42.51750', '-123.41860'), ('MURPHY', None, '42.34780', '-123.33220'), ('OBRIEN', None, '42.06750', '-123.70190'), ('PROVOLT', None, '42.28330', '-123.23330'), ('SELMA', None, '42.27920', '-123.61470'), ('SUNNY VALLEY', None, '42.63920', '-123.37440'), ('TAKILMA', None, '42.05170', '-123.61830'), ('WILDERVILLE', None, '42.38250', '-123.46580'), ('WILLIAMS', None, '42.21890', '-123.27280'), ('WOLF CREEK', None, '42.69560', '-123.39420')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ORC035': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALTAMONT', 19603, '42.19820', '-121.71970'), ('BEATTY', None, '42.44190', '-121.26970'), ('BLY', None, '42.39780', '-121.04060'), ('BONANZA', 415, '42.19960', '-121.40590'), ('CHEMULT', None, '43.21670', '-121.78170'), ('CHILOQUIN', 716, '42.57650', '-121.86690'), ('CRATER LAKE', None, '42.90000', '-122.13000'), ('CRESCENT', None, '43.46250', '-121.69450'), ('CRESCENT LAKE', None, '43.50940', '-121.96830'), ('DAIRY', None, '42.23530', '-121.52000'), ('GILCHRIST', None, '43.47720', '-121.68420'), ('KENO', None, '42.12670', '-121.92890'), ('KLAMATH FALLS', 19462, '42.22100', '-121.77240'), ('LORELLA', None, '42.13720', '-121.27140'), ('MALIN', 638, '42.01400', '-121.40780'), ('MERRILL', 897, '42.02660', '-121.59970'), ('MIDLAND', None, '42.13080', '-121.81920'), ('MODOC POINT', None, '42.44500', '-121.86720'), ('OLENE', None, '42.17190', '-121.62970'), ('SPRAGUE RIVER', None, '42.45560', '-121.50310'), ('WORDEN', None, '42.04560', '-121.86530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MFR'}, -'ORC037': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADEL', None, '42.17750', '-119.89750'), ('ALKALI LAKE', None, '42.97140', '-119.99220'), ('FORT ROCK', None, '43.35670', '-121.05280'), ('LAKEVIEW', 2474, '42.18920', '-120.34540'), ('NEW PINE CREEK', None, '42.00000', '-120.30000'), ('PAISLEY', 247, '42.69300', '-120.54440'), ('SILVER LAKE', None, '43.12810', '-121.04500'), ('SUMMER LAKE', None, '42.97310', '-120.77640'), ('VALLEY FALLS', None, '42.34420', '-120.28080')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MFR'}, -'ORC039': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADA', None, '43.86660', '-124.05000'), ('ALMA', None, '43.88000', '-123.48000'), ('BELKNAP SPRINGS', None, '44.20000', '-122.05000'), ('BLACHLY', None, '44.20000', '-123.53300'), ('BLUE RIVER', None, '44.15000', '-122.33330'), ('CANARY', None, '43.93330', '-124.03330'), ('CHESHIRE', None, '44.18330', '-123.28330'), ('COBURG', 969, '44.13810', '-123.05980'), ('COTTAGE GROVE', 8445, '43.79770', '-123.05570'), ('COTTAGE GROVE LAKE', None, '43.69000', '-123.07000'), ('COUGAR RESERVOIR', None, '44.08000', '-122.23000'), ('CRESWELL', 3579, '43.91830', '-123.01930'), ('CROW', None, '43.99000', '-123.33000'), ('CUSHMAN', None, '43.98330', '-124.05000'), ('DEADWOOD', None, '44.10000', '-123.75000'), ('DEXTER', None, '43.91660', '-122.81660'), ('DISSTON', None, '43.70000', '-122.76660'), ('DORENA', None, '43.71700', '-122.86700'), ('DORENA RESERVOIR', None, '43.77000', '-122.93000'), ('DUNES CITY', 1241, '43.90810', '-124.09510'), ('EUGENE', 137893, '44.05300', '-123.11220'), ('EUGENE AIRPORT', None, '44.12000', '-123.22000'), ('FALL CREEK RESERVOIR', None, '43.94000', '-122.74000'), ('FERN RIDGE RESERVOIR', None, '44.08000', '-123.29000'), ('FLORENCE', 7263, '43.98640', '-124.10310'), ('GOSHEN', None, '43.98330', '-123.00000'), ('GREENLEAF', None, '44.11660', '-123.66660'), ('HAMPTON', None, '43.80000', '-122.57000'), ('HECETA BEACH', None, '44.03000', '-124.13000'), ('HECETA HEAD', None, '44.13500', '-124.13000'), ('HILLS CREEK RESERVOIR', None, '43.67000', '-122.43000'), ('HORTON', None, '44.21660', '-123.48330'), ('JASPER', None, '44.00000', '-122.90000'), ('JUNCTION CITY', 4721, '44.21790', '-123.20390'), ('LEABURG', None, '44.11660', '-122.68330'), ('LONDON', None, '43.63330', '-123.08330'), ('LOOKOUT POINT RESERVOIR', None, '43.87000', '-122.68000'), ('LORANE', None, '43.83330', '-123.24000'), ('LOWELL', 857, '43.92070', '-122.77960'), ('MAPLETON', None, '44.03300', '-123.86700'), ('MARCOLA', None, '44.16700', '-122.85000'), ('MCCREDIE SPRINGS', None, '43.71600', '-122.31700'), ('MCKENZIE BRIDGE', None, '44.18300', '-122.16700'), ('MOHAWK', None, '44.13330', '-122.91660'), ('NIMROD', None, '44.11660', '-122.41660'), ('NOTI', None, '44.05000', '-123.45000'), ('OAKRIDGE', 3148, '43.74740', '-122.47200'), ('PLEASANT HILL', None, '43.96660', '-122.91660'), ('SAGINAW', None, '43.83330', '-123.05000'), ('SANTA CLARA', None, '44.11450', '-123.13190'), ('SILTCOOS', None, '43.88330', '-124.06660'), ('SPRINGFIELD', 52864, '44.05290', '-122.97710'), ('SWISSHOME', None, '44.05000', '-123.80000'), ('TIERNAN', None, '44.01660', '-123.93330'), ('TRIANGLE LAKE', None, '44.17000', '-123.58000'), ('VAUGHN', None, '44.02000', '-123.43330'), ('VENETA', 2755, '44.04830', '-123.35230'), ('VIDA', None, '44.15000', '-122.56700'), ('WALDO LAKE', None, '43.73000', '-122.05000'), ('WALKER', None, '43.85000', '-123.05000'), ('WALTERVILLE', None, '44.06660', '-122.80000'), ('WALTON', None, '44.03300', '-123.58000'), ('WESTFIR', 276, '43.75820', '-122.50640')], 'partOfState': '', 'wfo': 'PQR'}, -'ARC137': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FIFTY-SIX', 163, '35.96040', '-92.22990'), ('MOUNTAIN VIEW', 2876, '35.87000', '-92.11110')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARC135': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ASH FLAT', 977, '36.22580', '-91.60650'), ('CAVE CITY', 1946, '35.94670', '-91.54780'), ('EVENING SHADE', 465, '36.07040', '-91.62130'), ('HARDY', 578, '36.32150', '-91.48040'), ('SIDNEY', 275, '36.00430', '-91.65900'), ('WILLIFORD', 63, '36.25140', '-91.36070')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARC133': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BEN LOMOND', 126, '33.83440', '-94.11500'), ('DE QUEEN', 5765, '34.04270', '-94.34180'), ('GILLHAM', 188, '34.16790', '-94.31350'), ('HORATIO', 997, '33.93980', '-94.35510'), ('LOCKESBURG', 711, '33.97090', '-94.17310')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'ARC131': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('LIBERTY', None, '35.02750', '-94.23080'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('LIBERTY', None, '35.02750', '-94.23080'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('MILLTOWN', None, '35.15690', '-94.14940'), ('PATTERSON', 467, '34.99190', '-94.36080'), ('MILL CREEK', None, '35.33920', '-94.42280'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('MILLTOWN', None, '35.15690', '-94.14940'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('URSULA', None, '35.32390', '-94.09280'), ('FORT SMITH', 80268, '35.38580', '-94.39830'), ('HARTFORD', 772, '35.02280', '-94.38110'), ('HACKETT', 694, '35.19030', '-94.41080'), ('GREENWOOD', 7112, '35.21560', '-94.25560'), ('BARLING', 4176, '35.32560', '-94.30140'), ('LAVACA', 1825, '35.33610', '-94.17310'), ('ARKOLA', None, '35.08470', '-94.30890'), ('HUNTINGTON', 688, '35.08220', '-94.26310'), ('MIDLAND', 253, '35.09310', '-94.35310'), ('DAYTON', None, '35.11420', '-94.22640'), ('WITCHERVILLE', None, '35.13750', '-94.26420'), ('WASHBURN', None, '35.16830', '-94.09330'), ('BURNVILLE', None, '35.18860', '-94.18890'), ('JENSON', None, '35.19720', '-94.43890'), ('EXCELSIOR', None, '35.20000', '-94.31420'), ('MANSFIELD', 1097, '35.05940', '-94.25250'), ('BONANZA', 514, '35.23920', '-94.42580'), ('FT CHAFFEE', None, '35.21670', '-94.06000'), ('JENNY LIND', None, '35.25030', '-94.31830'), ('RYE HILL', None, '35.26670', '-94.36670'), ('BLOOMER', None, '35.29390', '-94.13860'), ('CENTRAL CITY', 531, '35.31920', '-94.25190')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TSA'}, -'WIC111': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BARABOO', 10711, '43.46850', '-89.74150'), ('IRONTON', 250, '43.54470', '-90.14170'), ('LA VALLE', 326, '43.58270', '-90.13060'), ('LAKE DELTON', 1982, '43.59330', '-89.78040'), ('LIME RIDGE', 169, '43.46820', '-90.15640'), ('LOGANVILLE', 276, '43.43980', '-90.03700'), ('MERRIMAC', 416, '43.37370', '-89.62540'), ('NORTH FREEDOM', 649, '43.45870', '-89.86310'), ('PLAIN', 792, '43.27830', '-90.04220'), ('PRAIRIE DU SAC', 3231, '43.29110', '-89.72850'), ('REEDSBURG', 7827, '43.53490', '-89.99900'), ('ROCK SPRINGS', 425, '43.47990', '-89.91800'), ('SAUK CITY', 3109, '43.27220', '-89.72850'), ('SPRING GREEN', 1444, '43.17560', '-90.06710'), ('WEST BARABOO', 1248, '43.47590', '-89.76790'), ('WISCONSIN DELLS', 2418, '43.62640', '-89.77790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'ARC139': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CALION', 516, '33.32880', '-92.53840'), ('EL DORADO', 21530, '33.21900', '-92.66280'), ('FELSENTHAL', 152, '33.05790', '-92.15260'), ('HUTTIG', 731, '33.04130', '-92.18220'), ('JUNCTION CITY', 721, '33.02410', '-92.72360'), ('NORPHLET', 822, '33.31960', '-92.66320'), ('SMACKOVER', 2005, '33.36460', '-92.73080'), ('STRONG', 651, '33.10800', '-92.35940')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SHV'}, -'WIC001': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ADAMS', 1914, '43.95530', '-89.81690'), ('ARKDALE', None, '44.03288', '-89.88271'), ('BIG FLATS', None, '44.11878', '-89.80230'), ('BIG SPRINGS', None, '43.66737', '-89.63416'), ('BROOKS', None, '43.81906', '-89.63416'), ('DELLWOOD', None, '43.96892', '-89.95581'), ('FRIENDSHIP', 698, '43.97180', '-89.82000'), ('GRAND MARSH', None, '43.89947', '-89.71275'), ('MONROE CENTER', None, '44.11878', '-89.94850'), ('NEW ROME', None, '44.23574', '-89.88454'), ('PLAINVILLE', None, '43.71671', '-89.81509'), ('STRONGS PRAIRIE', None, '44.07126', '-89.98323'), ('WHITE CREEK', None, '43.83551', '-89.86444')], 'partOfState': 'CENTRAL', 'wfo': 'ARX'}, -'IAC125': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BUSSEY', 450, '41.20590', '-92.88420'), ('HAMILTON', 144, '41.17000', '-92.90410'), ('HARVEY', 277, '41.31660', '-92.92340'), ('KNOXVILLE', 7731, '41.31910', '-93.10130'), ('MARYSVILLE', 54, '41.18270', '-92.95340'), ('MELCHER-DALLAS', 1298, '41.22780', '-93.24080'), ('PELLA', 9832, '41.40870', '-92.91900'), ('PLEASANTVILLE', 1539, '41.38900', '-93.26740'), ('SWAN', 121, '41.46560', '-93.30940')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'NEC069': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CRESCENT LAKE NWR', None, '41.73500', '-102.41000'), ('LEWELLEN', 282, '41.33070', '-102.14310'), ('LISCO', None, '41.50000', '-102.62000'), ('OSHKOSH', 887, '41.40860', '-102.34440')], 'partOfState': '', 'wfo': 'LBF'}, -'NEC067': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ADAMS', 489, '40.45620', '-96.51120'), ('BARNESTON', 122, '40.04870', '-96.57670'), ('BEATRICE', 12496, '40.26980', '-96.74560'), ('BLUE SPRINGS', 383, '40.13700', '-96.66260'), ('CLATONIA', 275, '40.46490', '-96.85120'), ('CORTLAND', 488, '40.50610', '-96.70560'), ('FILLEY', 174, '40.28540', '-96.53380'), ('LIBERTY', 86, '40.08500', '-96.48300'), ('ODELL', 345, '40.05030', '-96.80070'), ('PICKRELL', 182, '40.37780', '-96.72850'), ('VIRGINIA', 67, '40.24520', '-96.49890'), ('WYMORE', 1656, '40.12280', '-96.66660')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEC065': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARAPAHOE', 1028, '40.30500', '-99.89810'), ('BEAVER CITY', 641, '40.13770', '-99.82730'), ('CAMBRIDGE', 1041, '40.28340', '-100.17050'), ('EDISON', 154, '40.27760', '-99.77570'), ('HENDLEY', 38, '40.13090', '-99.97040'), ('HOLBROOK', 225, '40.30390', '-100.01040'), ('HOLLINGER', None, '40.15600', '-99.73890'), ('OXFORD', 876, '40.25310', '-99.63250'), ('WILSONVILLE', 118, '40.11150', '-100.10590')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC063': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CURTIS', 832, '40.63450', '-100.51420'), ('EUSTIS', 464, '40.66430', '-100.02860'), ('MAYWOOD', 331, '40.65810', '-100.62230'), ('MOOREFIELD', 52, '40.68970', '-100.39990'), ('STOCKVILLE', 36, '40.53320', '-100.38410')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'NEC061': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BLOOMINGTON', 124, '40.09360', '-99.03780'), ('CAMPBELL', 387, '40.29680', '-98.73090'), ('FRANKLIN', 1026, '40.09660', '-98.95100'), ('HILDRETH', 370, '40.33750', '-99.04600'), ('NAPONEE', 132, '40.07400', '-99.13810'), ('RIVERTON', 145, '40.08890', '-98.75920'), ('UPLAND', 179, '40.31900', '-98.90160')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'MOC011': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BOSTON', None, '37.41270', '-94.28160'), ('BURGESS', 70, '37.55610', '-94.61470'), ('GOLDEN CITY', 884, '37.39300', '-94.09350'), ('HANNON', None, '37.62240', '-94.49380'), ('IANTHA', None, '37.51680', '-94.39740'), ('IRWIN', None, '37.58850', '-94.28520'), ('KENOMA', None, '37.43940', '-94.19710'), ('LAMAR', 4425, '37.49490', '-94.27630'), ('LAMAR HEIGHTS', 216, '37.49350', '-94.29740'), ('LIBERAL', 779, '37.55800', '-94.51960'), ('MILFORD', 52, '37.58460', '-94.15690'), ('MINDENMINES', 409, '37.47130', '-94.58960'), ('NASHVILLE', None, '37.37430', '-94.49050'), ('OAKTON', None, '37.45800', '-94.35380'), ('OSKALOOSA', None, '37.63910', '-94.59210'), ('VERDELLA', None, '37.60630', '-94.43830')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'SCC091': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BULLOCK CREEK', None, '34.85420', '-81.41190'), ('CATAWBA', None, '34.85280', '-80.91140'), ('CLOVER', 4014, '35.11210', '-81.22710'), ('FORT MILL', 7587, '35.00610', '-80.94350'), ('HICKORY GROVE', 337, '34.98200', '-81.41550'), ('KINGS MOUNTAIN STATE PARK', None, '35.13560', '-81.36940'), ('LAKE WYLIE', 3061, '35.11080', '-81.05390'), ('MCCONNELLS', 287, '34.86870', '-81.22760'), ('ROCK HILL', 49765, '34.93930', '-81.02840'), ('SHARON', 421, '34.95400', '-81.34430'), ('SMYRNA', 59, '35.04200', '-81.41130'), ('TEGA CAY', 4044, '35.03470', '-81.01880'), ('YORK', 6985, '34.99520', '-81.23610')], 'partOfState': '', 'wfo': 'GSP'}, -'IDC079': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('AVERY', None, '47.25030', '-115.80250'), ('CALDER', None, '47.27330', '-116.18750'), ('CATALDO', None, '47.54270', '-116.32230'), ('CLARKIA', None, '47.00650', '-116.25120'), ('KELLOGG', 2395, '47.53930', '-116.13530'), ('KINGSTON', None, '47.54280', '-116.26850'), ('MULLAN', 840, '47.46910', '-115.79400'), ('MURRAY', None, '47.62300', '-115.85450'), ('OSBURN', 1545, '47.50590', '-115.99960'), ('PINEHURST', 1661, '47.53560', '-116.23340'), ('PRICHARD', None, '47.65380', '-115.97180'), ('SMELTERVILLE', 651, '47.54240', '-116.17650'), ('WALLACE', 960, '47.47290', '-115.92230'), ('WARDNER', 215, '47.52030', '-116.13400')], 'partOfState': '', 'wfo': 'OTX'}, -'MOC015': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRANDON', None, '38.50800', '-93.42270'), ('COLE CAMP', 1028, '38.46000', '-93.20250'), ('CROCKERVILLE', None, '38.44270', '-93.10410'), ('EDMONSON', None, '38.30940', '-93.22380'), ('EDWARDS', None, '38.13660', '-93.16930'), ('FRISTOE', None, '38.11660', '-93.27540'), ('HASTAIN', None, '38.21190', '-93.17600'), ('IONIA', 108, '38.50410', '-93.32380'), ('KNOBBY', None, '38.15250', '-93.09520'), ('LAKEVIEW HEIGHTS', None, '38.25880', '-93.15610'), ('LINCOLN', 1026, '38.39080', '-93.33440'), ('MORA', None, '38.52350', '-93.21550'), ('PALO PINTO', None, '38.38160', '-93.45520'), ('RACKET', None, '38.29330', '-93.49190'), ('WARSAW', 2070, '38.24300', '-93.38160'), ('WHITAKERVILLE', None, '38.21380', '-93.37070'), ('ZORA', None, '38.28630', '-93.09630')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'VAC035': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BYLLESBY', None, '36.78330', '-80.93330'), ('CANA', 1228, '36.58330', '-80.66670'), ('DUGSPUR', None, '36.81670', '-80.61670'), ('FANCY GAP', 260, '36.66670', '-80.70000'), ('GALAX HILLSVILLE AIRPORT', None, '36.76670', '-80.81670'), ('GLADESBORO', None, '36.71670', '-80.65000'), ('HILLSVILLE', 2607, '36.76670', '-80.73330'), ('LAMBSBURG', None, '36.58330', '-80.76670'), ('LAUREL FORK', None, '36.71670', '-80.51670'), ('PIPERS GAP', None, '36.65000', '-80.83330'), ('SYLVATUS', None, '36.86670', '-80.76670'), ('WOODLAWN', 2249, '36.71670', '-80.81670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'MOC017': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GLENALLEN', None, '37.31680', '-90.02810'), ('MARBLE HILL', 1502, '37.30230', '-89.98040'), ('SEDGEWICKVILLE', 197, '37.51510', '-89.90590'), ('ZALMA', 93, '37.14340', '-90.08030')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'IDC075': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('FRUITLAND', 3805, '44.01800', '-116.92010'), ('NEW PLYMOUTH', 1400, '43.97080', '-116.81800'), ('PAYETTE', 7054, '44.07700', '-116.92900')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'MOC019': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ASHLAND', 1869, '38.77390', '-92.25670'), ('CENTRALIA', 3774, '39.21150', '-92.13160'), ('COLUMBIA', 84531, '38.95410', '-92.32670'), ('EASLEY', None, '38.80000', '-92.38300'), ('HALLSVILLE', 978, '39.11580', '-92.21970'), ('HARRISBURG', 184, '39.14220', '-92.45970'), ('HARTSBURG', 108, '38.69520', '-92.30980'), ('MCBAINE', 17, '38.88700', '-92.44650'), ('MIDWAY', None, '38.98300', '-92.45000'), ('MURRY', None, '39.04290', '-92.17680'), ('ROCHEPORT', 208, '38.97950', '-92.56330'), ('STURGEON', 944, '39.23380', '-92.28130'), ('WILTON', None, '38.73510', '-92.35910')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'IDC077': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('AMERICAN FALLS', 4111, '42.78200', '-112.85380'), ('ARBON VALLEY', 627, '42.88390', '-112.59780'), ('COLD WATER', None, '42.62000', '-113.12000'), ('CRYSTAL', None, '42.63000', '-112.48000'), ('MICHAUD', None, '42.93000', '-112.57000'), ('NEELEY', None, '42.73000', '-112.88000'), ('POCATELLO ARPT', None, '42.92000', '-112.60000'), ('ROCKLAND', 316, '42.57360', '-112.87420'), ('ROY', None, '42.37000', '-112.82000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'IDC071': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BLACK PINE', None, '42.02000', '-112.98000'), ('BUIST', None, '42.33000', '-112.43000'), ('CHERRY CREEK', None, '42.10000', '-112.23000'), ('HOLBROOK', None, '42.17000', '-112.65000'), ('MALAD CITY', 2158, '42.18950', '-112.24910'), ('PLEASANTVIEW', None, '42.18000', '-112.35000'), ('RIDGEDALE', None, '42.02000', '-112.48000'), ('SAMARIA', None, '42.12000', '-112.33000'), ('STONE', None, '42.02000', '-112.70000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'IDC073': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ALMO', None, '42.10000', '-116.63300'), ('BRUNEAU', None, '42.86580', '-115.78080'), ('GRAND VIEW', 470, '42.98350', '-116.09000'), ('GRASMERE', None, '42.38330', '-115.88330'), ('HOMEDALE', 2528, '43.61810', '-116.93590'), ('HOT SPG', None, '42.78330', '-115.70000'), ('MARSING', 890, '43.54560', '-116.80680'), ('MURPHY', None, '43.21690', '-116.54470'), ('MURPHY HOT SPGS', None, '42.03330', '-115.36670'), ('OREANA', None, '43.05000', '-116.35000'), ('REYNOLDS', None, '43.20000', '-116.73330'), ('RIDDLE', None, '42.19000', '-116.11000'), ('SILVER CITY', None, '43.01700', '-116.73330'), ('THREE CREEK', None, '42.06670', '-115.15000')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'OKC035': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('VINITA', 6472, '36.63860', '-95.15390'), ('KETCHUM', 286, '36.52440', '-95.02360'), ('BIG CABIN', 293, '36.53780', '-95.22110'), ('WHITE OAK', None, '36.62030', '-95.26390'), ('CENTRALIA', None, '36.79670', '-95.35310'), ('HOLLOW', None, '36.88750', '-95.26970'), ('PYRAMID CORNERS', None, '36.80170', '-95.14310'), ('BLUEJACKET', 274, '36.79970', '-95.07080'), ('CENTRAILIA', None, '36.80000', '-95.33300'), ('WELCH', 597, '36.87360', '-95.09560')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'GUC010': {'fullStateName': 'GUAM', 'state': 'GU', 'cities': [('AGANA HEIGHTS', None, '13.46270', '144.74390'), ('AGAT', None, '13.38240', '144.65780'), ('ANDERSEN AFB', None, '13.56270', '144.92710'), ('APRA HARBOR', None, '13.42660', '144.64720'), ('ASAN', None, '13.46710', '144.71530'), ('BARRIGADA', None, '13.46160', '144.79470'), ('BARRIGADA HEIGHTS', None, '13.48770', '144.82340'), ('CHALAN PAGO', None, '13.43630', '144.77040'), ('DEDEDO', None, '13.51700', '144.83620'), ('FINEGAYAN STATION', None, '13.56880', '144.83530'), ('HAGATNA', None, '13.47510', '144.74840'), ('INARAJAN', None, '13.27610', '144.73760'), ('LATTE HEIGHTS', None, '13.48830', '144.84090'), ('MAINA', None, '13.45530', '144.72950'), ('MAITE', None, '13.47570', '144.76210'), ('MANGILAO', None, '13.44160', '144.80170'), ('MARBO ANNEX', None, '13.50660', '144.86520'), ('MERIZO', None, '13.26780', '144.67030'), ('MONGMONG', None, '13.47060', '144.76520'), ('NIMITZ HILL ANNEX', None, '13.45920', '144.72480'), ('ORDOT', None, '13.44670', '144.77440'), ('PITI', None, '13.46470', '144.69540'), ('SANTA RITA', None, '13.38730', '144.66930'), ('SANTA ROSA', None, '13.39710', '144.67120'), ('SINAJANA', None, '13.45960', '144.75260'), ('TALOFOFO', None, '13.35560', '144.75340'), ('TAMUNING', None, '13.49360', '144.77670'), ('TIYAN', None, '13.47990', '144.79140'), ('TOTO', None, '13.46550', '144.77720'), ('UMATAC', None, '13.29670', '144.66200'), ('YIGO', None, '13.53800', '144.89850'), ('YONA', None, '13.41430', '144.77310')], 'partOfState': '', 'wfo': 'GUM'}, -'KSC089': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURR OAK', 265, '39.87040', '-98.30400'), ('ESBON', 148, '39.82170', '-98.43340'), ('FORMOSO', 129, '39.77930', '-97.99350'), ('IONIA', None, '39.66400', '-98.34700'), ('JEWELL', 483, '39.67180', '-98.15130'), ('LOVEWELL STATE PARK', None, '39.89000', '-98.03000'), ('MANKATO', 976, '39.78740', '-98.20760'), ('MONTROSE', None, '39.78450', '-98.08750'), ('RANDALL', 90, '39.64160', '-98.04510'), ('WEBBER', 37, '39.93440', '-98.03580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'COC079': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CREEDE', 377, '37.85060', '-106.92650'), ('WAGON WHEEL GAP', None, '37.77000', '-106.82000'), ('WOLF CREEK PASS', None, '37.48000', '-106.79000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COC075': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ATWOOD', 195, '40.55000', '-103.27000'), ('CROOK', 128, '40.85830', '-102.80110'), ('DAILEY', None, '40.65000', '-102.72000'), ('FLEMING', 426, '40.68120', '-102.83980'), ('ILIFF', 213, '40.75790', '-103.06540'), ('LOGAN CORNERS', None, '40.62500', '-103.35400'), ('MERINO', 246, '40.48430', '-103.35350'), ('NORTH STERLING RESERVOIR', None, '40.78300', '-103.26700'), ('PADRONI', 97, '40.77000', '-103.17000'), ('PAWNEE PASS', None, '40.62500', '-103.47800'), ('PEETZ', 227, '40.96140', '-103.11420'), ('PROCTOR', None, '40.80000', '-102.93000'), ('REIRADON HILL', None, '40.58300', '-103.03800'), ('ST PETERSBURG', None, '40.55700', '-102.81900'), ('STERLING', 11360, '40.65090', '-103.21470'), ('TWIN BUTTES', None, '40.91100', '-102.76900'), ('WESTPLAINS', None, '40.86400', '-103.49900'), ('WILLARD', None, '40.55000', '-103.48000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC077': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CAMEO', None, '39.15000', '-108.32000'), ('CLIFTON', 17345, '39.07520', '-108.46340'), ('COLLBRAN', 388, '39.23930', '-107.95860'), ('DE BEQUE', 451, '39.33250', '-108.21370'), ('ESCALANTE FORKS', None, '38.58000', '-108.40000'), ('FRUITA', 6478, '39.15650', '-108.72730'), ('FRUITVALE', 6936, '39.09320', '-108.47840'), ('GLADE PARK', None, '39.00000', '-108.73000'), ('GRAND JUNCTION', 41986, '39.08730', '-108.55290'), ('LOMA', None, '39.20000', '-108.82000'), ('MACK', None, '39.22000', '-108.87000'), ('MESA', None, '39.17000', '-108.13000'), ('MOLINA', None, '39.18000', '-108.07000'), ('ORCHARD MESA', 6456, '39.03380', '-108.52240'), ('PALISADE', 2579, '39.10740', '-108.35780'), ('PLATEAU CITY', None, '39.18000', '-107.98000'), ('REDLANDS', 8043, '39.08500', '-108.65080'), ('SKYWAY', None, '39.05000', '-108.12000'), ('WHITEWATER', None, '38.98000', '-108.43000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'WIC007': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BARKSDALE', None, '46.62150', '-90.93220'), ('BAYFIELD', 611, '46.81160', '-90.82140'), ('BENOIT', None, '46.50190', '-91.07690'), ('CABLE', None, '46.19890', '-91.30470'), ('DRUMMOND', None, '46.33080', '-91.25780'), ('GRAND VIEW', None, '46.36760', '-91.10830'), ('HERBSTER', None, '46.83250', '-91.26110'), ('INO', None, '46.53090', '-91.17890'), ('IRON RIVER', None, '46.56450', '-91.40830'), ('MASON', 72, '46.43550', '-91.06230'), ('MOQUAH', None, '46.57050', '-91.08330'), ('NAMEKAGON', None, '46.21280', '-91.04550'), ('OULU', None, '46.63300', '-91.53200'), ('PORT WING', None, '46.77480', '-91.38660'), ('RED CLIFF', None, '46.85560', '-90.78800'), ('SAND BAY', None, '46.93480', '-90.89120'), ('WASHBURN', 2280, '46.67390', '-90.89330')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'COC071': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AGUILAR', 593, '37.40410', '-104.65440'), ('BONCARBO', None, '37.22000', '-104.70000'), ('BRANSON', 77, '37.01460', '-103.87910'), ('COKEDALE', 139, '37.14340', '-104.62150'), ('DELHI', None, '37.63000', '-104.02000'), ('GULNARE', None, '37.33000', '-104.75000'), ('HOEHNE', None, '37.28000', '-104.38000'), ('KIM', 65, '37.24630', '-103.35180'), ('MODEL', None, '37.34000', '-104.27000'), ('SEGUNDO', None, '37.12000', '-104.77000'), ('STONEWALL', None, '37.15000', '-105.02000'), ('THATCHER', None, '37.56000', '-104.08000'), ('TOBE', None, '37.22000', '-103.62000'), ('TRINCHERA', None, '37.05000', '-104.03000'), ('TRINIDAD', 9078, '37.16850', '-104.50570'), ('TYRONE', None, '37.45000', '-104.21000'), ('VILLE GREEN', None, '37.30000', '-103.52000'), ('WESTON', None, '37.13300', '-105.01700')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COC073': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARRIBA', 244, '39.28380', '-103.27350'), ('BOYERO', None, '38.93000', '-103.27000'), ('FORDER', None, '38.67900', '-103.71700'), ('GENOA', 211, '39.27840', '-103.49940'), ('HUGO', 885, '39.13440', '-103.46710'), ('KARVAL', None, '38.73000', '-103.53000'), ('LIMON', 2071, '39.26610', '-103.68950'), ('PUNKIN CENTER', None, '38.85300', '-103.70000'), ('WILD HORSE POINT', None, '38.56300', '-103.50300')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BOU'}, -'NYC053': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BROOKFIELD', None, '42.81670', '-75.31670'), ('CANASTOTA', 4425, '43.08430', '-75.75570'), ('CAZENOVIA', 2614, '42.92940', '-75.85220'), ('CHITTENANGO', 4855, '43.04560', '-75.87330'), ('DE RUYTER', None, '42.75000', '-75.86670'), ('DERUYTER', 531, '42.75890', '-75.88730'), ('EATON', None, '42.85000', '-75.60000'), ('ERIEVILLE', None, '42.85000', '-75.73330'), ('GEORGETOWN', None, '42.76670', '-75.71670'), ('HAMILTON', 3509, '42.82450', '-75.54730'), ('HUBBARDSVILLE', None, '42.81670', '-75.46670'), ('KENWOOD', None, '43.05000', '-75.61670'), ('LAKEPORT', None, '43.15000', '-75.88330'), ('LEBANON', None, '42.78330', '-75.63330'), ('LENOX', None, '43.06670', '-75.71670'), ('MADISON', 315, '42.89790', '-75.51100'), ('MORRISVILLE', 2148, '42.89800', '-75.64490'), ('MUNNSVILLE', 437, '42.97710', '-75.58760'), ('NELSON', None, '42.91670', '-75.75000'), ('NORTH BROOKFIELD', None, '42.85000', '-75.36670'), ('ONEIDA', 10987, '43.07580', '-75.66380'), ('ORISKANY FALLS', 698, '42.93800', '-75.46330'), ('PECKSPORT', None, '42.86670', '-75.55000'), ('PERRYVILLE', None, '43.00000', '-75.81670'), ('PETERBORO', None, '42.96670', '-75.66670'), ('PIERCEVILLE', None, '42.85000', '-75.60000'), ('POOLVILLE', None, '42.76670', '-75.50000'), ('SHEDS', None, '42.80000', '-75.81670'), ('SOLSVILLE', None, '42.90000', '-75.50000'), ('SOUTH BAY', None, '43.16670', '-75.76670'), ('SOUTH BROOKFIELD', None, '42.75000', '-75.30000'), ('SOUTH LEBANON', None, '42.75000', '-75.65000'), ('STOCKBRIDGE', None, '42.98330', '-75.58330'), ('SULLIVAN', None, '43.05000', '-75.86670'), ('UNION CORNERS', None, '43.11670', '-75.75000'), ('WAMPSVILLE', 561, '43.07770', '-75.70960'), ('WEST EATON', None, '42.85000', '-75.65000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'MTC049': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('AUGUSTA', 284, '47.49280', '-112.39140'), ('CANYON CREEK', None, '46.80560', '-112.26360'), ('CRAIG', None, '47.07440', '-111.96250'), ('EAST HELENA', 1642, '46.58830', '-111.91800'), ('HELENA', 25780, '46.59650', '-112.02040'), ('LINCOLN', 1100, '46.95500', '-112.68080'), ('MARYSVILLE', None, '46.75060', '-112.29940'), ('WOLF CREEK', None, '47.00610', '-112.06830')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TFX'}, -'VAC700': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEACONSDALE', None, '37.06420', '-76.47310'), ('DENBIGH', None, '37.12440', '-76.53200'), ('FORT EUSTIS', None, '37.12630', '-76.59570'), ('HILTON VILLAGE', None, '37.03010', '-76.46190'), ('LEE HALL', None, '37.19310', '-76.57300'), ('MENCHVILLE', None, '37.09240', '-76.52760'), ('NEWPORT NEWS', 180150, '37.07590', '-76.51420'), ('NEWPORT NEWS GOLF COURSE', None, '37.17660', '-76.54920'), ('ORIANA', None, '37.13360', '-76.52530'), ('OYSTER POINT', None, '37.10530', '-76.50780'), ('PATRICK HENRY FIELD', None, '37.12950', '-76.49640')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'MTC045': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BENCHLAND', None, '47.07940', '-110.01750'), ('GEYSER', None, '47.27380', '-110.49250'), ('HOBSON', 244, '46.99890', '-109.87320'), ('MOCCASIN', None, '47.05330', '-109.90970'), ('RAYNESFORD', None, '47.27000', '-110.72920'), ('STANFORD', 454, '47.15200', '-110.21840'), ('UTICA', None, '46.96830', '-110.09170'), ('WINDHAM', None, '47.07860', '-110.13970')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, '"St"Cips"': {'fullStateName': '', 'state': '"St"', 'cities': [('"Name"', None, '"Lat"', '"Lon"')], 'partOfState': '', 'wfo': '"Cwa"'}, -'KYC005': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALTON', None, '38.08330', '-84.93330'), ('GLENSBORO', None, '38.00000', '-85.06670'), ('JOHNSONVILLE', None, '37.93330', '-85.10000'), ('LAWRENCEBURG', 9014, '38.03480', '-84.89450'), ('TYRONE', None, '38.03330', '-84.85000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'MTC043': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BASIN', 255, '46.27140', '-112.26280'), ('BOULDER', 1300, '46.23610', '-112.11950'), ('CARDWELL', 40, '45.86000', '-111.95170'), ('CLANCY', 1406, '46.46530', '-111.98560'), ('CORBIN', None, '46.38060', '-112.06110'), ('MONTANA CITY', 2094, '46.53780', '-111.93190'), ('WHITEHALL', 1044, '45.87140', '-112.09590'), ('WICKES', None, '46.34970', '-112.10250')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'INC015': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BURLINGTON', 444, '40.48130', '-86.39450'), ('CAMDEN', 582, '40.61020', '-86.53870'), ('DELPHI', 3015, '40.58460', '-86.67030'), ('FLORA', 2227, '40.54490', '-86.52340'), ('YEOMAN', 96, '40.66710', '-86.72340')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IND'}, -'VAC155': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALLISONIA', None, '36.93330', '-80.73330'), ('COPPER VALLEY', None, '36.98330', '-80.53330'), ('DRAPER', None, '37.00000', '-80.76670'), ('DUBLIN', 2288, '37.11670', '-80.70000'), ('FAIRLAWN', 2211, '37.15130', '-80.55950'), ('FAIRLAWN', 2211, '37.15000', '-80.60000'), ('GRAYSONTOWN', None, '37.05000', '-80.56670'), ('MC COY', None, '37.23330', '-80.61670'), ('PARROTT', None, '37.21670', '-80.63330'), ('PULASKI', 9473, '37.05000', '-80.80000')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'NYC057': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMES', 173, '42.83570', '-74.60300'), ('AMSTERDAM', 18355, '42.94180', '-74.19090'), ('CANAJOHARIE', 2257, '42.90300', '-74.57150'), ('CHARLESTON FOUR CORNERS', None, '42.80270', '-74.40200'), ('FONDA', 810, '42.95330', '-74.37310'), ('FORT JOHNSON', 491, '42.95730', '-74.23930'), ('FORT PLAIN', 2288, '42.93170', '-74.62830'), ('FULTONVILLE', 710, '42.94510', '-74.37050'), ('HAGAMAN', 1357, '42.97480', '-74.15380'), ('NELLISTON', 622, '42.93200', '-74.60820'), ('PALATINE BRIDGE', 706, '42.91080', '-74.57520'), ('ST. JOHNSVILLE', 1685, '43.00050', '-74.67680'), ('TRIBES HILL', 1024, '42.94770', '-74.30180'), ('WELLSVILLE', 5171, '42.88200', '-74.27770')], 'partOfState': '', 'wfo': 'ALY'}, -'KSC081': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('SATANTA', 1239, '37.43590', '-100.98790'), ('SUBLETTE', 1592, '37.47960', '-100.84650'), ('TICE', None, '37.51000', '-100.71000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'NYC055': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BRIGHTON', 35584, '43.11860', '-77.58440'), ('BROCKPORT', 8103, '43.21340', '-77.94100'), ('CHURCHVILLE', 1887, '43.10150', '-77.88410'), ('EAST ROCHESTER', 6650, '43.11160', '-77.48740'), ('FAIRPORT', 5740, '43.10020', '-77.44330'), ('GATES-NORTH GATES', 15138, '43.16400', '-77.70070'), ('GREECE', 14614, '43.21190', '-77.70230'), ('HILTON', 5856, '43.28990', '-77.79280'), ('HONEOYE FALLS', 2595, '42.95440', '-77.59180'), ('IRONDEQUOIT', 52354, '43.21030', '-77.57210'), ('PITTSFORD', 1418, '43.09040', '-77.51710'), ('ROCHESTER', 219773, '43.16870', '-77.61580'), ('SCOTTSVILLE', 2128, '43.02180', '-77.75380'), ('SPENCERPORT', 3559, '43.18810', '-77.80860'), ('WEBSTER', 5216, '43.21410', '-77.42240')], 'partOfState': '', 'wfo': 'BUF'}, -'KSC083': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GRAY', None, '38.15000', '-99.63000'), ('HANSTON', 259, '38.12290', '-99.71210'), ('JETMORE', 903, '38.08310', '-99.89300')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'CAC009': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ANGELS CAMP', None, '38.07580', '-120.54790'), ('ARNOLD', 4218, '38.23220', '-120.36960'), ('BLACK SPRINGS', None, '38.37660', '-120.19660'), ('CALAVERAS BIG TREES SP', None, '38.27190', '-120.28670'), ('CAMPO SECO', None, '38.22720', '-120.85110'), ('CARSON HILL', None, '38.02830', '-120.50550'), ('COPPER COVE VILLAGE', None, '37.95970', '-120.63440'), ('COPPEROPOLIS', 2363, '37.98110', '-120.64080'), ('GLENCOE', None, '38.35420', '-120.58390'), ('HODSON', None, '37.99670', '-120.68440'), ('LILY GAP', None, '38.43000', '-120.44920'), ('MILTON', None, '38.03190', '-120.85110'), ('MOKELUMNE HILL', 774, '38.30010', '-120.70530'), ('MURPHYS', 2061, '38.15200', '-120.46090'), ('PALOMA', None, '38.25940', '-120.76220'), ('SAN ANDREAS', 2615, '38.18930', '-120.67460'), ('TAMARACK', None, '38.43880', '-120.07500'), ('TELEGRAPH CITY', None, '37.93440', '-120.73880'), ('VALLEY SPRINGS', 2560, '38.19160', '-120.82810')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAC007': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BANGOR', None, '39.38860', '-121.40420'), ('BIG BEND', 149, '39.69830', '-121.45970'), ('BIGGS', 1793, '39.41390', '-121.70920'), ('BRUSH CREEK RS', None, '39.69050', '-121.33810'), ('BUTTE MEADOWS', None, '40.08140', '-121.55000'), ('CHICO', 59954, '39.75380', '-121.80690'), ('DAYTON', None, '39.64860', '-121.87110'), ('DE SABLA POWERHOUSE', None, '39.86970', '-121.63110'), ('DURHAM', 5220, '39.59950', '-121.82770'), ('FEATHER FALLS', None, '39.59330', '-121.25530'), ('FORBESTOWN', None, '39.51720', '-121.26610'), ('FOREST RANCH', None, '39.88220', '-121.67170'), ('GRIDLEY', 5382, '39.36440', '-121.69520'), ('HURLETON', None, '39.49750', '-121.38640'), ('LOVELOCK', None, '39.89140', '-121.57670'), ('MAGALIA', 10569, '39.82750', '-121.61080'), ('MILL CREEK', None, '40.08140', '-121.52160'), ('NORD', None, '39.77970', '-121.95610'), ('OROVILLE', 13004, '39.50160', '-121.56590'), ('OROVILLE DAM', None, '39.53880', '-121.48440'), ('PALERMO', 5720, '39.43670', '-121.53050'), ('PARADISE', 26408, '39.75640', '-121.60430'), ('PULGA', None, '39.80310', '-121.44750'), ('RICHARDSON SPRINGS', None, '39.84000', '-121.77580'), ('STIRLING CITY', None, '39.90770', '-121.52690'), ('THERMALITO', 6045, '39.49110', '-121.60800'), ('WYANDOTTE', None, '39.45810', '-121.46660')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'KSC085': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CIRCLEVILLE', 185, '39.50830', '-95.85830'), ('DELIA', 179, '39.24060', '-95.96670'), ('DENISON', 231, '39.39170', '-95.62780'), ('HOLTON', 3353, '39.46530', '-95.73610'), ('HOYT', 571, '39.24780', '-95.70610'), ('MAYETTA', 312, '39.33890', '-95.72220'), ('NETAWAKA', 170, '39.60280', '-95.71810'), ('POTAWATOMI RESERVATION', None, '39.33000', '-95.85000'), ('SOLDIER', 122, '39.53610', '-95.96390'), ('WHITING', 206, '39.58970', '-95.61250')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'CAC005': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AMADOR CITY', 196, '38.41850', '-120.82330'), ('BUENA VISTA', 1704, '38.29440', '-120.91220'), ('CAMANCHE VILLAGE', None, '38.27000', '-120.97220'), ('CARBONDALE', None, '38.40890', '-121.00580'), ('CLINTON', None, '38.37610', '-120.66720'), ('COOKS STATION', None, '38.50140', '-120.45190'), ('DRYTOWN', None, '38.44110', '-120.85330'), ('FIDDLETOWN', None, '38.50390', '-120.75440'), ('FOREST HOME', None, '38.46500', '-120.96310'), ('IONE', 7129, '38.35960', '-120.94140'), ('JACKSON', 3989, '38.35050', '-120.77350'), ('KIRKWOOD MEADOWS', None, '38.69220', '-120.07190'), ('KIT CARSON', None, '38.67080', '-120.11250'), ('PINE GROVE', None, '38.41310', '-120.65780'), ('PIONEER', None, '38.43190', '-120.57080'), ('PLYMOUTH', 980, '38.47840', '-120.84480'), ('SHRINER LAKE CAMPGROUND', None, '38.53530', '-120.15940'), ('SUTTER CREEK', 2303, '38.39080', '-120.80350'), ('VOLCANO', None, '38.44310', '-120.62970')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAC003': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BEAR VALLEY', 133, '38.46470', '-120.03890'), ('CARSON PASS', None, '38.69390', '-119.98750'), ('EBBETTS PASS', None, '38.54440', '-119.81080'), ('GROVER HOT SPRINGS STATE', None, '38.69600', '-119.83900'), ('HERMIT VALLEY BASIN', None, '38.54330', '-119.88420'), ('HOPE VALLEY', None, '38.78000', '-119.93000'), ('INDIAN CREEK RESERVOIR', None, '38.75000', '-119.77000'), ('KIRKWOOD SKI AREA', None, '38.67830', '-120.04190'), ('LAKE ALPINE', None, '38.47170', '-120.00330'), ('LOOKOUT PEAK', None, '38.51080', '-119.87190'), ('MARKLEEVILLE', 197, '38.69200', '-119.77990'), ('MARKLEEVILLE', 197, '38.70000', '-119.78000'), ('MONITOR PASS', None, '38.68000', '-119.62000'), ('PAYNESVILLE', None, '38.81100', '-119.79700'), ('UPPER BLUE LAKE', None, '38.62830', '-119.93940'), ('WOODFORDS', None, '38.78000', '-119.82000')], 'partOfState': 'CENTRAL', 'wfo': 'REVSTO'}, -'CAC001': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ASHLAND', 20793, '37.69470', '-122.11540'), ('BERKELEY', 102743, '37.86720', '-122.29730'), ('CASTRO VALLEY', 57292, '37.71090', '-122.06110'), ('CHERRYLAND', 13837, '37.67930', '-122.10230'), ('DUBLIN', 29973, '37.71590', '-121.90990'), ('FAIRVIEW', 9470, '37.67860', '-122.04460'), ('FREMONT', 203413, '37.52850', '-121.99710'), ('HAYWARD', 140030, '37.62770', '-122.10460'), ('LIVERMORE', 73345, '37.69190', '-121.76370'), ('NEWARK', 42471, '37.51930', '-122.03050'), ('OAKLAND', 399484, '37.77150', '-122.22450'), ('PIEDMONT', 10952, '37.82290', '-122.22890'), ('PLEASANTON', 63654, '37.67240', '-121.88910'), ('SAN LEANDRO', 79452, '37.70470', '-122.16080'), ('SAN LORENZO', 21898, '37.67500', '-122.13010'), ('UNION CITY', 66869, '37.60160', '-122.01610')], 'partOfState': '', 'wfo': 'MTR'}, -'NEC117': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('RINGGOLD', None, '41.51100', '-100.77050'), ('TRYON', None, '41.55800', '-100.94500')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEC115': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALMERIA', None, '41.83430', '-99.54000'), ('TAYLOR', 207, '41.76970', '-99.38130')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'KSC087': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GRANTVILLE', None, '39.08330', '-95.56110'), ('MCLOUTH', 868, '39.19580', '-95.20810'), ('MERIDEN', 706, '39.18890', '-95.56940'), ('NORTONVILLE', 620, '39.40670', '-95.33330'), ('OSKALOOSA', 1165, '39.21530', '-95.31250'), ('OZAWKIE', 552, '39.23330', '-95.46670'), ('PERRY', 901, '39.07580', '-95.39310'), ('PERRY LAKE', None, '39.19000', '-95.47000'), ('VALLEY FALLS', 1254, '39.34330', '-95.46000'), ('VALLEY FALLS', 1254, '39.34330', '-95.46000'), ('WILLIAMSTOWN', None, '39.06280', '-95.33250'), ('WINCHESTER', 579, '39.32220', '-95.26670')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'NEC111': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRADY', 366, '41.02280', '-100.36740'), ('DICKENS', None, '40.82580', '-100.99340'), ('FARNAM', 223, '40.70630', '-100.21500'), ('HERSHEY', 572, '41.15810', '-101.00130'), ('MAXWELL', 315, '41.07860', '-100.52580'), ('NORTH PLATTE', 23878, '41.13300', '-100.77180'), ('SUTHERLAND', 1129, '41.15750', '-101.12650'), ('WALLACE', 329, '40.83710', '-101.16350'), ('WELLFLEET', 76, '40.75270', '-100.73040')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'OKC143': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('GRAY', None, '36.13030', '-96.08030'), ('TULSA', 393049, '36.13390', '-95.92250'), ('SAND SPRINGS', 17451, '36.13970', '-96.10860'), ('LEONARD', None, '35.92030', '-95.79920'), ('BIXBY', 13336, '35.94190', '-95.88310'), ('JENKS', 9557, '36.02280', '-95.96810'), ('OWASSO', 18502, '36.26940', '-95.85440'), ('GLENPOOL', 8123, '35.95530', '-96.00860'), ('SPERRY', 981, '36.29720', '-95.99110'), ('SKIATOOK', 5396, '36.36830', '-96.00110'), ('COLLINSVILLE', 4077, '36.36440', '-95.83860'), ('BROKEN ARROW', 74859, '36.05250', '-95.79060')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'NEC119': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BATTLE CREEK', 1158, '41.99900', '-97.59870'), ('MADISON', 2367, '41.82840', '-97.45660'), ('MEADOW GROVE', 311, '42.02920', '-97.73620'), ('NEWMAN GROVE', 797, '41.74740', '-97.77710'), ('NORFOLK', 23516, '42.03430', '-97.41840'), ('TILDEN', 1078, '42.04400', '-97.83200')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'PAC059': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALEPPO', None, '39.82000', '-80.45000'), ('CARMICHAELS', 556, '39.89770', '-79.97520'), ('CLARKSVILLE', 234, '39.97440', '-80.04430'), ('FAIRDALE', 1955, '39.88840', '-79.96910'), ('NEMACOLIN', 1034, '39.87760', '-79.92420'), ('RICES LANDING', 443, '39.94610', '-79.99480'), ('SPRAGGS', None, '39.78000', '-80.22000'), ('WAYNESBURG', 4184, '39.89860', '-80.18580')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'ALC055': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALTOONA', 984, '34.03140', '-86.31360'), ('ATTALLA', 6592, '34.01000', '-86.10190'), ('GADSDEN', 38978, '34.01000', '-86.01440'), ('GLENCOE', 5152, '33.94620', '-85.93120'), ('HOKES BLUFF', 4149, '33.98960', '-85.86300'), ('MOUNTAINBORO', 338, '34.14770', '-86.13120'), ('RAINBOW CITY', 8428, '33.92970', '-86.08740'), ('REECE CITY', 634, '34.07240', '-86.03240'), ('RIDGEVILLE', 158, '34.05700', '-86.10330'), ('SARDIS CITY', 1438, '34.17670', '-86.11350'), ('SOUTHSIDE', 7036, '33.90380', '-86.02200'), ('WALNUT GROVE', 710, '34.06460', '-86.28730')], 'partOfState': 'NORTHEAST', 'wfo': 'BMX'}, -'ALC053': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('APPLETON', None, '31.22110', '-87.12390'), ('ATMORE', 7676, '31.02310', '-87.49420'), ('BARNETT CROSSROADS', None, '31.22120', '-87.30430'), ('BOONEVILLE', None, '31.20080', '-87.60330'), ('BOYKIN', None, '31.18460', '-86.86970'), ('BRADLEY', None, '31.03280', '-86.72610'), ('BREWTON', 5498, '31.10420', '-87.07250'), ('BROOKLYN', None, '31.26170', '-86.77110'), ('CANOE', None, '31.02560', '-87.41230'), ('CARNEY', None, '31.08970', '-87.52780'), ('DIXIE', None, '31.14360', '-86.72000'), ('EAST BREWTON', 2496, '31.09310', '-87.06280'), ('FOSHEE', None, '31.11750', '-87.22780'), ('FREEMANVILLE', None, '31.07170', '-87.52080'), ('HOLMAN PRISON', None, '31.14750', '-87.46130'), ('HUXFORD', None, '31.21970', '-87.46280'), ('I65 AND AL 113', None, '31.20410', '-87.31160'), ('I65 AND AL 21', None, '31.11030', '-87.47380'), ('I65 AND CR 1', None, '31.08420', '-87.53510'), ('JEDDO', None, '31.22080', '-87.51970'), ('KEEGO', None, '31.06060', '-87.12770'), ('KIRKLAND', None, '31.18780', '-87.03050'), ('LITTLE ROCK', None, '31.11470', '-87.38910'), ('MALTA', None, '31.02500', '-87.45360'), ('MCCULLOUGH', None, '31.16670', '-87.52640'), ('NOKOMIS', None, '31.01030', '-87.56500'), ('OSAKA', None, '31.06420', '-87.22390'), ('PARKER SPRINGS', None, '31.05530', '-86.80950'), ('POARCH', None, '31.11690', '-87.52970'), ('POLLARD', 120, '31.02610', '-87.17390'), ('RIVERVIEW', 99, '31.05850', '-87.05670'), ('ROBERTS', None, '31.08190', '-86.88730'), ('ROBINSONVILLE', None, '31.06140', '-87.43970'), ('ROCK HILL', None, '31.11640', '-86.99670'), ('SARDINE', None, '31.13110', '-87.36670'), ('US 29 AND CR 43', None, '31.16480', '-86.80270'), ('VOCATION', None, '31.26390', '-87.43300'), ('WAHL', None, '31.00460', '-87.22160'), ('WALLACE', None, '31.20920', '-87.21920'), ('WAWBEEK', None, '31.02830', '-87.36080')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'NDC003': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BALD HILL DAM', None, '47.03470', '-98.07780'), ('DAZEY', 91, '47.18820', '-98.20050'), ('ECKELSON', None, '46.93800', '-98.33280'), ('FINGAL', 133, '46.76210', '-97.79240'), ('HASTINGS', None, '46.68390', '-98.09420'), ('KATHRYN', 63, '46.67980', '-97.96760'), ('LEAL', 36, '47.10510', '-98.31400'), ('LITCHVILLE', 191, '46.65740', '-98.19130'), ('LITTLE YELLOWSTONE STATE', None, '46.63250', '-97.95060'), ('LUCCA', None, '46.70690', '-97.71940'), ('NOME', 70, '46.67560', '-97.81560'), ('ORISKA', 128, '46.93140', '-97.78870'), ('PILLSBURY', 24, '47.20680', '-97.79610'), ('ROGERS', 61, '47.07310', '-98.20210'), ('SANBORN', 194, '46.94270', '-98.22330'), ('SIBLEY', 46, '47.21730', '-97.96530'), ('URBANA', None, '46.93440', '-98.41140'), ('VALLEY CITY', 6826, '46.92310', '-98.00560'), ('WIMBLEDON', 237, '47.17070', '-98.45960')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'ALC051': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BLUE RIDGE', 1331, '32.49250', '-86.19060'), ('COOSADA', 1382, '32.49580', '-86.33020'), ('ECLECTIC', 1037, '32.63680', '-86.03470'), ('MILLBROOK', 10386, '32.49460', '-86.36770'), ('TALLASSEE', 4934, '32.53520', '-85.89140'), ('WETUMPKA', 5726, '32.54420', '-86.20180')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'MIC041': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARK RIVER', None, '45.72000', '-87.30000'), ('BRAMPTON', None, '45.93000', '-87.07000'), ('CHICAGO LAKE', None, '46.03700', '-86.61100'), ('CORNELL', None, '45.90000', '-87.23000'), ('ENSIGN', None, '45.90000', '-86.87000'), ('ESCANABA', 13140, '45.74620', '-87.08080'), ('FAYETTE', None, '45.72000', '-86.67000'), ('FORD RIVER', None, '45.68000', '-87.15000'), ('GARDEN', 240, '45.77530', '-86.55250'), ('GARDEN CORNERS', None, '45.89000', '-86.53700'), ('GLADSTONE', 5032, '45.85200', '-87.02470'), ('HYDE', None, '45.73000', '-87.20000'), ('ISABELLA', None, '45.90000', '-86.60000'), ('LATHROP', None, '46.15000', '-87.22000'), ('NAHMA JUNCTION', None, '45.89700', '-86.70800'), ('PERKINS', None, '45.97000', '-87.07000'), ('RAPID RIVER', None, '45.92000', '-86.97000'), ('ROCK', None, '46.06900', '-87.16600'), ('ROUND LAKE', None, '46.15000', '-86.74600'), ('SCHAEFFER', None, '45.77000', '-87.30000'), ('STONINGTON', None, '45.73000', '-86.98000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIC043': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CHANNING', None, '46.13000', '-88.08000'), ('FELCH', None, '46.00000', '-87.85000'), ('FOSTER CITY', None, '45.97000', '-87.75000'), ('GRANITE BLUFF', None, '45.93900', '-88.05400'), ('HARDWOOD', None, '45.97000', '-87.70000'), ('IRON MOUNTAIN', 8154, '45.82770', '-88.06150'), ('KINGSFORD', 5549, '45.80800', '-88.09900'), ('NORWAY', 2959, '45.80260', '-87.91460'), ('QUINNESEC', 1187, '45.80140', '-87.99850'), ('RALPH', None, '46.07000', '-87.73000'), ('RANDVILLE', None, '45.98000', '-88.05000'), ('SAGOLA', None, '46.08000', '-88.07000'), ('VULCAN', None, '45.78000', '-87.87000'), ('WAUCEDAH', None, '45.77000', '-87.75000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIC045': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BELLEVUE', 1365, '42.44420', '-85.01860'), ('BROOKFIELD', None, '42.45100', '-84.79670'), ('CHARLOTTE', 8389, '42.56440', '-84.83250'), ('DIMONDALE', 1342, '42.64880', '-84.64910'), ('EATON RAPIDS', 5330, '42.51000', '-84.65390'), ('GRAND LEDGE', 7813, '42.75260', '-84.74860'), ('GRESHAM', None, '42.64130', '-84.89530'), ('KALAMO', None, '42.54270', '-85.01280'), ('MULLIKEN', 557, '42.76300', '-84.89510'), ('OLIVET', 1758, '42.44610', '-84.92360'), ('POTTERVILLE', 2168, '42.62800', '-84.74580'), ('SUNFIELD', 591, '42.76170', '-84.99170'), ('VERMONTVILLE', 789, '42.62600', '-85.02610'), ('WAVERLY', 16194, '42.73920', '-84.62080'), ('WOODBURY', None, '42.76120', '-85.07450')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'ALC059': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('HODGES', 261, '34.32740', '-87.92650'), ('PHIL CAMPBELL', 1091, '34.35200', '-87.70580'), ('RED BAY', 3374, '34.43610', '-88.13630'), ('RUSSELLVILLE', 8971, '34.50590', '-87.72920'), ('VINA', 400, '34.37430', '-88.05650')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'OHC011': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUCKLAND', 255, '40.62430', '-84.26070'), ('CRIDERSVILLE', 1817, '40.65260', '-84.14600'), ('MINSTER', 2794, '40.39430', '-84.37950'), ('NEW BREMEN', 2909, '40.43740', '-84.38060'), ('NEW KNOXVILLE', 891, '40.49420', '-84.31850'), ('ST. MARYS', 8342, '40.54390', '-84.39090'), ('UNIOPOLIS', 256, '40.60190', '-84.08660'), ('WAPAKONETA', 9474, '40.57020', '-84.19220'), ('WAYNESFIELD', 803, '40.60180', '-83.97380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC013': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BARNESVILLE', 4225, '39.98900', '-81.17350'), ('BELLAIRE', 4892, '40.01690', '-80.74650'), ('BELMONT', 532, '40.02800', '-81.04120'), ('BETHESDA', 1413, '40.01610', '-81.07290'), ('BRIDGEPORT', 2186, '40.06650', '-80.74680'), ('BROOKSIDE', 644, '40.07120', '-80.76180'), ('FLUSHING', 900, '40.14850', '-81.06550'), ('HOLLOWAY', 345, '40.16050', '-81.12640'), ('MARTINS FERRY', 7226, '40.10130', '-80.72390'), ('MORRISTOWN', 299, '40.06280', '-81.07150'), ('NEFFS', 1138, '40.02920', '-80.81560'), ('POWHATAN POINT', 1744, '39.86110', '-80.80940'), ('SHADYSIDE', 3675, '39.97130', '-80.75090'), ('ST. CLAIRSVILLE', 5057, '40.07810', '-80.89900'), ('WILSON', 118, '39.85820', '-81.06780'), ('YORKVILLE', 1230, '40.15250', '-80.70810')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHC015': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ABERDEEN', 1603, '38.66670', '-83.76990'), ('FAYETTEVILLE', 372, '39.18640', '-83.93210'), ('GEORGETOWN', 3691, '38.86690', '-83.90270'), ('HAMERSVILLE', 515, '38.91830', '-83.98500'), ('HIGGINSPORT', 291, '38.79070', '-83.96840'), ('MOUNT ORAB', 2307, '39.02930', '-83.92370'), ('RIPLEY', 1745, '38.73960', '-83.84020'), ('RUSSELLVILLE', 453, '38.86740', '-83.78750'), ('SARDINIA', 862, '39.00690', '-83.80700'), ('ST. MARTIN', 91, '39.21470', '-83.88790')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHC017': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BECKETT RIDGE', 8663, '39.34700', '-84.43540'), ('FAIRFIELD', 42097, '39.33110', '-84.54290'), ('HAMILTON', 60690, '39.39070', '-84.56410'), ('JACKSONBURG', 67, '39.53790', '-84.50390'), ('MIDDLETOWN', 51605, '39.50570', '-84.37360'), ('MILLVILLE', 817, '39.39180', '-84.65350'), ('MONROE', 7133, '39.44610', '-84.34810'), ('NEW MIAMI', 2469, '39.43150', '-84.54100'), ('OXFORD', 21943, '39.50570', '-84.74720'), ('ROSS', 1971, '39.31180', '-84.65290'), ('SEVEN MILE', 678, '39.47930', '-84.55250'), ('SOMERVILLE', 294, '39.56350', '-84.63860'), ('SOUTH MIDDLETOWN', 264, '39.48110', '-84.40070'), ('TRENTON', 8746, '39.47700', '-84.46230')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHC019': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CARROLLTON', 3190, '40.57980', '-81.09130'), ('DELLROY', 294, '40.55570', '-81.19940'), ('LEESVILLE', 184, '40.45090', '-81.20960'), ('MALVERN', 1218, '40.68900', '-81.18180'), ('MINERVA JCT', None, '40.72000', '-81.15000'), ('SHERRODSVILLE', 316, '40.49470', '-81.24470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'NDC009': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANTLER', 47, '48.97130', '-101.28300'), ('BOTTINEAU', 2336, '48.82540', '-100.44330'), ('CARBURY', None, '48.90000', '-100.53330'), ('ECKMAN', None, '48.66670', '-101.05000'), ('GARDENA', 38, '48.70100', '-100.49810'), ('KRAMER', 44, '48.69120', '-100.70710'), ('LANDA', 28, '48.89540', '-100.91100'), ('LANSFORD', 253, '48.62660', '-101.37640'), ('MAXBASS', 91, '48.72220', '-101.14170'), ('NEWBURG', 88, '48.71470', '-100.91230'), ('OVERLY', 19, '48.68120', '-100.15070'), ('ROTH', None, '48.95000', '-100.60000'), ('RUSSELL', None, '48.67350', '-100.90200'), ('SOURIS', 83, '48.91030', '-100.68050'), ('WESTHOPE', 533, '48.91180', '-101.01660'), ('WILLOW CITY', 221, '48.60470', '-100.29270')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'MIC109': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAGLEY', None, '45.55000', '-87.58000'), ('BANAT', None, '45.52000', '-87.70000'), ('BIRCH CREEK', None, '45.20000', '-87.62000'), ('CARBONDALE', None, '45.28000', '-87.62000'), ('CARNEY', 225, '45.58910', '-87.55400'), ('CEDAR RIVER', None, '45.41100', '-87.35400'), ('CUNARD', None, '45.73000', '-87.67000'), ('DAGGETT', 270, '45.46200', '-87.60450'), ('FAITHORN', None, '45.68000', '-87.77000'), ('GOURLEY', None, '45.59500', '-87.42400'), ('HERMANSVILLE', None, '45.71100', '-87.60200'), ('INGALLS', None, '45.38000', '-87.62000'), ('LA BRANCHE', None, '45.88000', '-87.47000'), ('MENOMINEE', 9131, '45.12110', '-87.62350'), ('NATHAN', None, '45.57900', '-87.70700'), ('POWERS', 430, '45.68750', '-87.52640'), ('SPALDING', None, '45.69600', '-87.51100'), ('STEPHENSON', 875, '45.41370', '-87.60890'), ('SWANSON', None, '45.47500', '-87.70900'), ('WALLACE', None, '45.33000', '-87.62000'), ('WHITNEY', None, '45.82000', '-87.38000'), ('WILSON', None, '45.70000', '-87.45000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIC105': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CUSTER', 318, '43.95030', '-86.21940'), ('FOUNTAIN', 175, '44.04780', '-86.17950'), ('FREESOIL', None, '44.10700', '-86.21670'), ('LUDINGTON', 8357, '43.95710', '-86.44300'), ('SCOTTVILLE', 1266, '43.95040', '-86.28000'), ('WALHALLA', None, '43.95370', '-86.11470')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'OKC145': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('WAGONER', 7669, '35.95940', '-95.36920'), ('CHOSKA', None, '35.83000', '-95.62000'), ('TULLAHASSEE', 106, '35.83470', '-95.43750'), ('PORTER', 574, '35.87080', '-95.52220'), ('OKAY', 597, '35.85060', '-95.31810'), ('STONEBLUFF', None, '35.88580', '-95.73670'), ('REDBIRD', 153, '35.88670', '-95.58790'), ('COWETA', 7139, '35.95170', '-95.65060'), ('ONETA', None, '36.01890', '-95.70780')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'MIC107': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALTONA', None, '43.53970', '-85.31350'), ('BARRYTON', 381, '43.74960', '-85.14270'), ('BIG RAPIDS', 10849, '43.70390', '-85.48630'), ('CHIPPEWA LAKE', None, '43.74380', '-85.29720'), ('MECOSTA', 440, '43.61890', '-85.23050'), ('MORLEY', 495, '43.49120', '-85.44600'), ('PARIS', None, '43.77330', '-85.50250'), ('RODNEY', None, '43.67370', '-85.32830'), ('STANWOOD', 204, '43.58010', '-85.44790'), ('SYLVESTER', None, '43.53970', '-85.25450')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'MIC101': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARCADIA', None, '44.51130', '-86.23330'), ('BRETHREN', None, '44.30000', '-86.01670'), ('COPEMISH', 232, '44.48100', '-85.92390'), ('DUBLIN', None, '44.18330', '-85.93330'), ('EASTLAKE', 441, '44.24550', '-86.29390'), ('KALEVA', 509, '44.37230', '-86.01300'), ('MANISTEE', 6586, '44.24460', '-86.32640'), ('NORWALK', None, '44.33330', '-86.16660'), ('ONEKAMA', 647, '44.36680', '-86.20310'), ('PARKDALE', None, '44.26660', '-86.30000'), ('PIERPORT', None, '44.43340', '-86.23400'), ('WELLSTON', None, '44.21670', '-85.95100'), ('WILDWOOD', None, '44.41660', '-86.16660')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIC103': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARNOLD', None, '46.05000', '-87.48000'), ('BIG BASS LAKE', None, '46.30800', '-87.67800'), ('BIG BAY', 265, '46.82000', '-87.72000'), ('CARLSHEND', None, '46.32000', '-87.22000'), ('CHAMPION', None, '46.52000', '-87.97000'), ('GWINN', 1965, '46.29090', '-87.43930'), ('HARVEY', 1321, '46.49280', '-87.35090'), ('HURON RIVER POINT', None, '46.90900', '-87.90000'), ('ISHPEMING', 6686, '46.48750', '-87.66360'), ('LITTLE LAKE', None, '46.28000', '-87.33000'), ('MARQUETTE', 19661, '46.55080', '-87.39570'), ('MCFARLAND', None, '46.18000', '-87.25000'), ('MICHIGAMME', 287, '46.53500', '-88.11000'), ('MOUNTAIN LAKE', None, '46.86100', '-87.91400'), ('NATIONAL MINE', None, '46.45000', '-87.68000'), ('NEGAUNEE', 4576, '46.49970', '-87.59690'), ('NORTHLAND', None, '46.07000', '-87.58000'), ('PALMER', 449, '46.43000', '-87.58000'), ('REPUBLIC', 614, '46.40000', '-87.98000'), ('SANDS', None, '46.42000', '-87.40000'), ('SILVER LAKE', None, '46.34100', '-87.33500'), ('SKANDIA', None, '46.38000', '-87.23000'), ('TROWBRIDGE PARK', 2012, '46.55570', '-87.44110'), ('WATSON', None, '46.02000', '-87.42000'), ('WITCH LAKE', None, '46.28000', '-88.02000')], 'partOfState': '', 'wfo': 'MQT'}, -'NCC021': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASHEVILLE', 68889, '35.57410', '-82.54880'), ('AVERY CREEK', 1405, '35.46280', '-82.57450'), ('BARNARDSVILLE', None, '35.77650', '-82.45300'), ('BENT CREEK', 1389, '35.51090', '-82.61430'), ('BILTMORE FOREST', 1440, '35.53350', '-82.54100'), ('BLACK MOUNTAIN', 7511, '35.61430', '-82.33030'), ('CANDLER', None, '35.53640', '-82.69310'), ('FAIRVIEW', 2495, '35.52280', '-82.40450'), ('LEICESTER', None, '35.65300', '-82.68780'), ('MONTREAT', 630, '35.64650', '-82.30060'), ('SKYLAND', None, '35.48350', '-82.52460'), ('SWANNANOA', 4132, '35.60160', '-82.39210'), ('WEAVERVILLE', 2416, '35.69700', '-82.55790'), ('WOODFIN', 3162, '35.63650', '-82.58550')], 'partOfState': '', 'wfo': 'GSP'}, -'TXC279': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AMHERST', 791, '34.01240', '-102.41400'), ('EARTH', 1109, '34.23350', '-102.40840'), ('FIELDTON', None, '34.03910', '-102.22270'), ('LITTLEFIELD', 6507, '33.91990', '-102.33460'), ('OLTON', 2288, '34.17950', '-102.13650'), ('SPADE', 100, '33.92610', '-102.15300'), ('SPRINGLAKE', 135, '34.23220', '-102.30510'), ('SUDAN', 1039, '34.06750', '-102.52490')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'COC095': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AMHERST', None, '40.68000', '-102.17000'), ('FAIRFIELD', None, '40.73800', '-102.47900'), ('HAXTUN', 982, '40.64270', '-102.62880'), ('HIGHLAND CENTER', None, '40.52600', '-102.58900'), ('HOLYOKE', 2261, '40.58490', '-102.30370'), ('PAOLI', 42, '40.61210', '-102.47240'), ('PLEASANT VALLEY', None, '40.61300', '-102.11700'), ('WAGES', None, '40.58400', '-102.45400')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC093': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('11-MILE CANYON RESERVOIR', None, '38.90400', '-105.48300'), ('ALMA', 179, '39.28580', '-106.06470'), ('ANTERO JUNCTION', None, '38.92000', '-105.97000'), ('ANTERO RESERVOIR', None, '38.99200', '-105.89200'), ('BAILEY', None, '39.40000', '-105.47000'), ('COMO', None, '39.32000', '-105.90000'), ('FAIRPLAY', 610, '39.22380', '-105.99910'), ('GARO', None, '39.12000', '-105.90000'), ('GLENISLE', None, '39.40800', '-105.50000'), ('GRANT', None, '39.45000', '-105.67000'), ('GUFFEY', None, '38.75000', '-105.53000'), ('HARRIS PARK', None, '39.51100', '-105.50400'), ('HARTSEL', None, '39.02000', '-105.80000'), ('HIGHLAND PARK', None, '39.50100', '-105.52500'), ('JEFFERSON', None, '39.38000', '-105.80000'), ('KENOSHA PASS', None, '39.41300', '-105.75800'), ('LAKE GEORGE', None, '38.98000', '-105.37000'), ('RED HILL PASS', None, '39.26500', '-105.96400'), ('SANTA MARIA', None, '39.45000', '-105.63300'), ('SHAWNEE', None, '39.42000', '-105.55000'), ('SINGLETON', None, '39.44400', '-105.60300'), ('TARRYALL', None, '39.10000', '-105.43000'), ('TARRYALL RESERVOIR', None, '39.22900', '-105.60800'), ('WILKERSON PASS', None, '39.04000', '-105.52500')], 'partOfState': 'CENTRAL', 'wfo': 'BOU'}, -'COC091': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CAMP BIRD', None, '37.97000', '-107.73000'), ('COLONA', None, '38.28000', '-107.75000'), ('OURAY', 813, '38.02610', '-107.67190'), ('RED MTN', None, '37.90000', '-107.70000'), ('RIDGWAY', 713, '38.15580', '-107.75220')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'TXC271': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALAMO VILLAGE', None, '29.41000', '-100.40000'), ('BRACKETTVILLE', 1876, '29.31780', '-100.41040'), ('SPOFFORD', 75, '29.17240', '-100.41100')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC273': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KINGSVILLE', 25575, '27.50890', '-97.86070'), ('LOYOLA BEACH', None, '27.33000', '-97.70080'), ('RICARDO', None, '27.41666', '-97.85000'), ('RIVIERA', None, '27.28333', '-97.81666')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'MIC099': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARMADA', 1573, '42.84100', '-82.88350'), ('FRASER', 15297, '42.53970', '-82.94860'), ('MACOMB TOWNSHIP', None, '42.67260', '-82.91770'), ('MEMPHIS', 1129, '42.89530', '-82.76950'), ('MOUNT CLEMENS', 17312, '42.59810', '-82.88190'), ('NEW BALTIMORE', 7405, '42.68310', '-82.73810'), ('NEW HAVEN', 3071, '42.73260', '-82.79410'), ('RICHMOND', 4897, '42.80900', '-82.75460'), ('ROMEO', 3721, '42.80420', '-83.00530'), ('ST. CLAIR SHORES', 63096, '42.49310', '-82.89110'), ('STERLING HEIGHTS', 124471, '42.58000', '-83.03050'), ('UTICA', 4577, '42.62840', '-83.02090'), ('WARREN', 138247, '42.49300', '-83.02820'), ('WASHINGTON', None, '42.72440', '-83.03610')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TXC275': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BENJAMIN', 264, '33.58330', '-99.79300'), ('GILLILAND', None, '33.73000', '-99.68000'), ('GOREE', 321, '33.46760', '-99.52350'), ('KNOX CITY', 1219, '33.41750', '-99.81580'), ('MUNDAY', 1527, '33.44690', '-99.62330'), ('RHINELAND', None, '33.53000', '-99.65000'), ('TRUSCOTT', None, '33.75000', '-99.80000'), ('VERA', None, '33.63000', '-99.57000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TXC277': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLOSSOM', 1439, '33.66200', '-95.38220'), ('DEPORT', 718, '33.52910', '-95.31750'), ('PARIS', 25898, '33.66660', '-95.54760'), ('ROXTON', 694, '33.54550', '-95.72470'), ('SUN VALLEY', 51, '33.67250', '-95.42880'), ('TOCO', 89, '33.65340', '-95.64910')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'WVC059': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CHATTAROY', 1136, '37.70500', '-82.26840'), ('DELBARTON', 474, '37.70490', '-82.18580'), ('GILBERT', 417, '37.61440', '-81.86740'), ('GILBERT CREEK', 1582, '37.57570', '-81.89500'), ('KERMIT', 209, '37.83920', '-82.40780'), ('MATEWAN', 498, '37.62370', '-82.16770'), ('R.D. BAILEY LAKE', None, '37.60010', '-81.82060'), ('RED JACKET', 728, '37.64910', '-82.13230'), ('WILLIAMSON', 3414, '37.67370', '-82.27270')], 'partOfState': '', 'wfo': 'RLX'}, -'NMC059': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('AMISTAD', None, '35.91900', '-103.15300'), ('CAPULIN', None, '36.74100', '-103.99300'), ('CLAYTON', 2524, '36.45070', '-103.17510'), ('DES MOINES', 177, '36.76130', '-103.83330'), ('FOLSOM', 75, '36.84810', '-103.91770'), ('GLADSTONE', None, '36.30500', '-103.97300'), ('GRENVILLE', 25, '36.59290', '-103.61270'), ('HAYDEN', None, '35.96800', '-103.27100'), ('MOUNT DORA', None, '36.51900', '-103.48900'), ('SEDAN', None, '36.14400', '-103.13000'), ('SENECA', None, '36.62800', '-103.12600')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'NMC057': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABO', None, '34.45600', '-106.33300'), ('CEDARVALE', None, '34.37100', '-105.70100'), ('CLINES CORNERS', None, '35.00900', '-105.66900'), ('DURAN', None, '34.46700', '-105.39600'), ('ENCINO', 94, '34.65100', '-105.45800'), ('ESTANCIA', 1584, '34.76030', '-106.06020'), ('MANZANO', 54, '34.64700', '-106.34400'), ('MCINTOSH', None, '34.86500', '-106.05100'), ('MORIARTY', 1765, '35.00140', '-106.04370'), ('MOUNTAINAIR', 1116, '34.52080', '-106.24290'), ('TAJIQUE', 148, '34.75200', '-106.28700'), ('TORREON', 244, '34.72200', '-106.29800'), ('WILLARD', 240, '34.59440', '-106.03370')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'NMC055': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('AMALIA', None, '36.94200', '-105.45400'), ('ARROYO HONDO', None, '36.53600', '-105.66900'), ('ARROYO SECO', None, '36.51700', '-105.56900'), ('CERRO', None, '36.75400', '-105.61200'), ('CHAMISAL', 301, '36.17670', '-105.74900'), ('COSTILLA', None, '36.97600', '-105.53100'), ('EL PADRO', None, '36.43200', '-105.57400'), ('LAMA', None, '36.65000', '-105.61800'), ('LLANO', None, '36.14000', '-105.68100'), ('LLANO LARGO', None, '36.14100', '-105.65900'), ('LOS CORDOVAS', None, '36.38700', '-105.63700'), ('PENASCO', 572, '36.17120', '-105.69190'), ('PICURIS PUEBLO', 86, '36.20100', '-105.70900'), ('PILAR', None, '36.27000', '-105.78800'), ('QUESTA', 1864, '36.71090', '-105.59270'), ('RANCHOS DE TAOS', 2390, '36.36290', '-105.60330'), ('RED RIVER', 484, '36.70750', '-105.40670'), ('RIO LUCIO', 379, '36.19600', '-105.72500'), ('RODARTE', None, '36.15200', '-105.67200'), ('SAN CRISTOBAL', None, '36.59600', '-105.63900'), ('SHADY BROOK', None, '36.37000', '-105.46700'), ('SUNSHINE VALLEY', None, '36.84200', '-105.65800'), ('TALPA', None, '36.34100', '-105.59600'), ('TAOS', 4700, '36.38620', '-105.57720'), ('TAOS PUEBLO', 1264, '36.46930', '-105.55950'), ('TRES RITOS', None, '36.13100', '-105.51500'), ('VADITO', 242, '36.19110', '-105.67710'), ('VALDEZ', None, '36.53400', '-105.58300')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABQ'}, -'NMC053': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABEYTAS', None, '34.46800', '-106.81100'), ('BERNARDO', None, '34.41900', '-106.83300'), ('BINGHAM', None, '33.88900', '-106.37200'), ('BOSQUE DEL APACHE REFUGE', None, '33.80400', '-106.89100'), ('CHAMIZAL', None, '34.21800', '-106.91300'), ('CLAUNCH', None, '34.14200', '-105.99400'), ('CONTRERAS', None, '34.38300', '-106.81300'), ('ESCONDIDA', None, '34.10100', '-106.89600'), ('GRAN QUIVIRA', None, '34.26400', '-106.10100'), ('LA JOYA', None, '34.34600', '-106.84500'), ('LABORCITA', None, '33.94600', '-106.86800'), ('LAS NUTRIAS', None, '34.47700', '-106.77000'), ('LEMITAR', None, '34.16000', '-106.91000'), ('LUIS LOPEZ', None, '33.98900', '-106.88500'), ('MAGDALENA', 913, '34.11040', '-107.23450'), ('SABINAL', None, '34.49400', '-106.80700'), ('SAN ACACIA', None, '34.25500', '-106.89900'), ('SAN ANTONIO', None, '33.91800', '-106.86500'), ('SOCORRO', 8877, '34.05510', '-106.90420'), ('VEGUITA', None, '34.51600', '-106.76700')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'NMC051': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARREY', None, '32.84860', '-107.31860'), ('CABALLO', None, '32.97560', '-107.30720'), ('CUCHILLO', None, '33.12830', '-107.36000'), ('DERRY', None, '32.78810', '-107.28170'), ('ELEPHANT BUTTE', 1390, '33.12830', '-107.25220'), ('HILLSBORO', None, '32.92220', '-107.56640'), ('KINGSTON', None, '32.91690', '-107.70500'), ('MONTICELLO', None, '33.39690', '-107.45000'), ('TRUTH OR CONSEQUENCES', 7289, '33.13560', '-107.24810'), ('WILLIAMSBURG', 527, '33.11610', '-107.29400'), ('WINSTON', None, '33.34670', '-107.51330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EPZ'}, -'MDC033': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ACCOKEEK', 7349, '38.67600', '-77.01630'), ('ADELPHI', 14998, '39.00190', '-76.96550'), ('ANDREWS AFB', 7925, '38.80340', '-76.87180'), ('BADEN', None, '38.65920', '-76.77810'), ('BELTSVILLE', 15690, '39.03680', '-76.92350'), ('BLADENSBURG', 7661, '38.94360', '-76.92620'), ('BOWIE', 50269, '38.95950', '-76.73770'), ('BRANDYWINE', 1410, '38.69850', '-76.85430'), ('BRENTWOOD', 2844, '38.94360', '-76.95710'), ('CAMP SPRINGS', 17968, '38.80360', '-76.92080'), ('CAPITOL HEIGHTS', 4138, '38.87790', '-76.90810'), ('CHELTENHAM', None, '38.73560', '-76.82670'), ('CHEVERLY', 6433, '38.92580', '-76.91390'), ('CLINTON', 26064, '38.76440', '-76.89800'), ('COLLEGE PARK', 24657, '38.99610', '-76.93480'), ('CORAL HILLS', 10720, '38.87170', '-76.92350'), ('EAGLE HARBOR', 55, '38.56640', '-76.68700'), ('FORESTVILLE', 12707, '38.84970', '-76.87480'), ('FRIENDLY', 10938, '38.75640', '-76.96580'), ('GLENARDEN', 6318, '38.93080', '-76.86290'), ('GLENN DALE', 12609, '38.98690', '-76.80090'), ('GREENBELT', 21456, '38.99480', '-76.88570'), ('HYATTSVILLE', 14733, '38.95920', '-76.95340'), ('KETTERING', 11008, '38.89010', '-76.78560'), ('LANDOVER', None, '38.93610', '-76.90150'), ('LANGLEY PARK', 16214, '38.99390', '-76.98210'), ('LARGO', 8408, '38.87950', '-76.83020'), ('LAUREL', 19960, '39.09770', '-76.85860'), ('MARLOW HEIGHTS', 6059, '38.82460', '-76.94960'), ('MARLTON', 7798, '38.75810', '-76.78990'), ('MITCHELLVILLE', 9611, '38.92920', '-76.82330'), ('MONTPELIER', None, '39.06140', '-76.85110'), ('MORNINGSIDE', 1295, '38.82940', '-76.89070'), ('NEW CARROLLTON', 12589, '38.96630', '-76.87690'), ('OXON HILL', None, '38.80330', '-76.99000'), ('OXON HILL', None, '38.79660', '-76.97520'), ('SEAT PLEASANT', 4885, '38.89520', '-76.90250'), ('SUITLAND-SILVER HILL', 33515, '38.84560', '-76.92280'), ('TANTALLON', None, '38.72390', '-77.01000'), ('UPPER MARLBORO', 648, '38.81760', '-76.75540'), ('WOODMORE', 6077, '38.93480', '-76.77500')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'TXC309': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELLMEAD', 9214, '31.60050', '-97.09140'), ('BEVERLY HILLS', 2113, '31.52180', '-97.15600'), ('BRUCEVILLE-EDDY', 1490, '31.30580', '-97.24850'), ('CRAWFORD', 705, '31.53380', '-97.44010'), ('GHOLSON', 922, '31.71170', '-97.23680'), ('HALLSBURG', 518, '31.54580', '-96.94680'), ('HEWITT', 11085, '31.45110', '-97.19360'), ('LACY-LAKEVIEW', 5764, '31.61990', '-97.10760'), ('LEROY', 335, '31.73160', '-97.02000'), ('LORENA', 1433, '31.38230', '-97.21270'), ('MART', 2273, '31.54140', '-96.83000'), ('MCGREGOR', 4727, '31.45400', '-97.37730'), ('MOODY', 1400, '31.30840', '-97.36020'), ('NORTHCREST', None, '31.63940', '-97.09740'), ('RIESEL', 973, '31.47390', '-96.93080'), ('ROBINSON', 7845, '31.44960', '-97.12440'), ('ROSS', 228, '31.72840', '-97.11120'), ('WACO', 113726, '31.56900', '-97.18320'), ('WEST', 2692, '31.80320', '-97.09280'), ('WOODWAY', 8733, '31.49660', '-97.23210')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'MIC129': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CLEAR LAKE', None, '44.41660', '-84.25000'), ('LUPTON', None, '44.43330', '-84.01700'), ('PRESCOTT', 286, '44.19140', '-83.93190'), ('RIFLE RIVER STATE PARK', None, '44.40000', '-83.99000'), ('ROSE CITY', 721, '44.42100', '-84.11540'), ('SELKIRK', None, '44.31670', '-84.06670'), ('SKIDWAY LAKE', 3147, '44.19400', '-84.04420'), ('WEST BRANCH', 1926, '44.27570', '-84.23530')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'TXC183': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLARKSVILLE CITY', 806, '32.53510', '-94.89550'), ('EASTON', 524, '32.38290', '-94.59340'), ('GLADEWATER', 6078, '32.54300', '-94.94510'), ('KILGORE', 11301, '32.38720', '-94.86830'), ('LAKEPORT', 861, '32.40200', '-94.71150'), ('LIBERTY CITY', 1935, '32.45010', '-94.94460'), ('LONGVIEW', 73344, '32.51770', '-94.76230'), ('ROLLING MEADOWS', None, '32.41260', '-94.80760'), ('WARREN CITY', 343, '32.55340', '-94.90220'), ('WHITE OAK', 5624, '32.53210', '-94.85500')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'FLC077': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BON AMI', None, '30.11310', '-84.98730'), ('BRISTOL', 845, '30.43060', '-84.97590'), ('CENTRAL CITY', None, '30.18780', '-84.92570'), ('CLIO', None, '30.31870', '-84.82610'), ('ESTIFFANULGA', None, '30.30830', '-85.03360'), ('HOSFORD', None, '30.38600', '-84.79830'), ('KERN', None, '30.12830', '-84.98910'), ('LEWIS', None, '30.21400', '-85.05690'), ('LIBERTY', None, '30.28140', '-84.84170'), ('LOWRY', None, '30.42280', '-84.77610'), ('MOSQUITO LANDING', None, '30.27430', '-85.05430'), ('OCHISI', None, '30.48220', '-84.95000'), ('ORANGE', None, '30.22590', '-85.02530'), ('OWL LANDING', None, '30.01670', '-85.01610'), ('ROCK BLUFF', None, '30.54200', '-84.91320'), ('SUMATRA', None, '30.01870', '-84.97930'), ('SWEETWATER', 14226, '30.50640', '-84.97250'), ('TELOGIA', None, '30.35040', '-84.81930'), ('TWIN POLE', None, '30.10240', '-84.84980'), ('VILAS', None, '30.21860', '-84.88590'), ('WHITE OAK LANDING', None, '30.09700', '-85.11330'), ('WHITE SPRINGS', 819, '30.41870', '-84.91550'), ('WILMA', None, '30.15780', '-84.96230'), ('WOODS', None, '30.34590', '-84.98010')], 'partOfState': '', 'wfo': 'TAE'}, -'NJC029': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BARNEGAT', 1690, '39.75400', '-74.22170'), ('BARNEGAT LIGHT', 764, '39.75180', '-74.11120'), ('BAY HEAD', 1238, '40.07020', '-74.04870'), ('BEACH HAVEN WEST', 4444, '39.67020', '-74.23340'), ('BEACHWOOD', 10375, '39.92740', '-74.20270'), ('BRICK TOWNSHIP', None, '40.05750', '-74.11000'), ('CEDAR GLEN LAKES', 1617, '39.95210', '-74.40020'), ('CEDAR GLEN WEST', 1376, '40.04340', '-74.28760'), ('CRESTWOOD VILLAGE', 8392, '39.95720', '-74.35510'), ('GILFORD PARK', None, '39.95410', '-74.13020'), ('HOLIDAY CITY SOUTH', 4047, '39.94870', '-74.23660'), ('HOLIDAY CITY-BERKELEY', 13884, '39.95960', '-74.27770'), ('HOLIDAY CITY-DOVER', None, '40.02120', '-74.16720'), ('HOLIDAY HEIGHTS', 2389, '39.94580', '-74.25430'), ('ISLAND HEIGHTS', 1751, '39.94230', '-74.14960'), ('LAKEHURST', 2522, '40.01290', '-74.32080'), ('LAKEWOOD', 36065, '40.09480', '-74.21190'), ('LEISURE KNOLL', 2467, '40.01890', '-74.29260'), ('LEISURE VILLAGE', 4443, '40.04490', '-74.18250'), ('LEISURE VILLAGE EAST', 4597, '40.04150', '-74.16730'), ('LEISURE VILLAGE WEST-PINE', None, '40.00380', '-74.26650'), ('MANAHAWKIN', 2004, '39.69570', '-74.25390'), ('MANTOLOKING', 423, '40.04530', '-74.04960'), ('MYSTIC ISLAND', 8694, '39.56560', '-74.38330'), ('NEW EGYPT', 2519, '40.06390', '-74.53190'), ('OCEAN ACRES', 13155, '39.74330', '-74.28130'), ('PINE BEACH', 1950, '39.93550', '-74.17010'), ('PINE RIDGE AT CRESTWOOD', 2025, '39.95460', '-74.31560'), ('PLEASANT PLAINS', None, '39.99700', '-74.21900'), ('POINT PLEASANT', 19306, '40.07840', '-74.07090'), ('SILVER RIDGE', 1211, '39.96100', '-74.23620'), ('SILVERTON', None, '40.00790', '-74.12180'), ('SOUTH TOMS RIVER', 3634, '39.94080', '-74.20970'), ('SURF CITY', 1442, '39.66230', '-74.16920'), ('TOMS RIVER', 86327, '39.95460', '-74.18440'), ('TUCKERTON', 3517, '39.59780', '-74.32940'), ('WARETOWN', 1582, '39.78970', '-74.19380')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'TXC187': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CIBOLO', 3035, '29.57390', '-98.23280'), ('GERONIMO', 619, '29.66670', '-97.96670'), ('KINGSBURY', 652, '29.65000', '-97.81670'), ('MARION', 1099, '29.57360', '-98.14300'), ('MCQUEENEY', 2527, '29.59790', '-98.04320'), ('NEW BERLIN', 467, '29.46370', '-98.10100'), ('SEGUIN', 22011, '29.57950', '-97.96880'), ('SELMA', 788, '29.58630', '-98.31680'), ('STAPLES', None, '29.78330', '-97.83330'), ('ZORN', None, '29.75000', '-97.96670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'OKC147': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('VERA', 188, '36.44920', '-95.88060'), ('RAMONA', 564, '36.53030', '-95.92330'), ('OCHELATA', 494, '36.60000', '-95.97940'), ('DEWEY', 3179, '36.79580', '-95.93530'), ('COPAN', 796, '36.89750', '-95.92580'), ('BARTLESVILLE', 34748, '36.74720', '-95.98060'), ('VERA', 188, '36.44920', '-95.88060'), ('RAMONA', 564, '36.53030', '-95.92330'), ('OCHELATA', 494, '36.60000', '-95.97940'), ('DEWEY', 3179, '36.79580', '-95.93530'), ('COPAN', 796, '36.89750', '-95.92580')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'TXC185': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('NAVASOTA', 6789, '30.38910', '-96.08800'), ('TODD MISSION', 146, '30.26040', '-95.82920')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'NJC025': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ALLENHURST', 718, '40.23600', '-74.00250'), ('ASBURY PARK', 16930, '40.22310', '-74.01140'), ('AVON-BY-THE-SEA', 2244, '40.19100', '-74.01520'), ('BRADLEY BEACH', 4793, '40.20170', '-74.01210'), ('BRIELLE', 4893, '40.10460', '-74.06290'), ('DEAL', 1070, '40.24980', '-73.99730'), ('EAST FREEHOLD', 4936, '40.26870', '-74.24040'), ('EATONTOWN', 14008, '40.29150', '-74.05510'), ('ENGLISHTOWN', 1764, '40.29650', '-74.36060'), ('FARMINGDALE', 1587, '40.19850', '-74.17140'), ('FREEHOLD', 10976, '40.25880', '-74.27560'), ('INTERLAKEN', 900, '40.23430', '-74.01590'), ('KEYPORT', 7568, '40.43200', '-74.20150'), ('LEONARDO', 2823, '40.41920', '-74.06060'), ('LINCROFT', 6255, '40.34140', '-74.12520'), ('LITTLE SILVER', 6170, '40.33500', '-74.03500'), ('LOCH ARBOUR', 280, '40.23180', '-74.00140'), ('LONG BRANCH', 31340, '40.29670', '-73.98920'), ('MANASQUAN', 6310, '40.11280', '-74.03700'), ('MATAWAN', 8910, '40.41220', '-74.23790'), ('NEPTUNE CITY', 5218, '40.20060', '-74.03310'), ('NORTH MIDDLETOWN', 3165, '40.43960', '-74.11930'), ('OAKHURST', 4152, '40.26170', '-74.02720'), ('OCEAN GROVE', 4256, '40.21180', '-74.00960'), ('OCEANPORT', 5807, '40.31500', '-74.02040'), ('PORT MONMOUTH', 3742, '40.43220', '-74.10140'), ('RED BANK', 11844, '40.34730', '-74.06750'), ('ROBERTSVILLE', None, '40.34030', '-74.29740'), ('ROOSEVELT', 933, '40.22130', '-74.47420'), ('RUMSON', 7137, '40.36270', '-74.00390'), ('SEA GIRT', 2148, '40.12920', '-74.03450'), ('SHARK RIVER HILLS', 3878, '40.19360', '-74.04820'), ('SHREWSBURY', 3590, '40.32660', '-74.05970'), ('SOUTH BELMAR', 1806, '40.17010', '-74.02620'), ('SPRING LAKE', 3567, '40.15270', '-74.02740'), ('SPRING LAKE HEIGHTS', 5227, '40.15220', '-74.04230'), ('STRATHMORE', 6740, '40.40280', '-74.21890'), ('TINTON FALLS', 15053, '40.27240', '-74.08920'), ('WANAMASSA', 4551, '40.23670', '-74.02920'), ('WEST BELMAR', 2606, '40.17020', '-74.03720'), ('WEST FREEHOLD', 12498, '40.23300', '-74.29550'), ('WEST LONG BRANCH', 8258, '40.29000', '-74.01830'), ('YORKETOWN', 6712, '40.30780', '-74.33800')], 'partOfState': 'CENTRAL', 'wfo': 'PHI'}, -'NJC027': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BOONTON', 8496, '40.90410', '-74.40550'), ('BUDD LAKE', 8100, '40.87330', '-74.73710'), ('BUTLER', 7420, '40.99940', '-74.34670'), ('CHATHAM', 8460, '40.74030', '-74.38350'), ('CHESTER', 1635, '40.78590', '-74.69330'), ('DOVER', 18188, '40.88600', '-74.55970'), ('EAST HANOVER', None, '40.81990', '-74.36520'), ('FLORHAM PARK', 8857, '40.77770', '-74.39680'), ('HANOVER TOWNSHIP', None, '40.81890', '-74.43050'), ('KINNELON', 9365, '40.98490', '-74.38670'), ('LAKE TELEMARK', 1202, '40.96130', '-74.49680'), ('LINCOLN PARK', 10930, '40.92390', '-74.30390'), ('LONG VALLEY', 1818, '40.78540', '-74.76840'), ('MADISON', 16530, '40.75850', '-74.41730'), ('MENDHAM', 5097, '40.76710', '-74.59830'), ('MORRIS PLAINS', 5236, '40.83610', '-74.48160'), ('MORRISTOWN', 18544, '40.79670', '-74.47760'), ('MOUNT ARLINGTON', 4663, '40.91950', '-74.64050'), ('MOUNTAIN LAKES', 4256, '40.89170', '-74.44060'), ('NETCONG', 2580, '40.89910', '-74.70130'), ('PARSIPPANY-TROY HILLS TOW', None, '40.85940', '-74.42390'), ('PEQUANNOCK TOWNSHIP', None, '40.96330', '-74.30370'), ('ROCKAWAY', 6473, '40.89690', '-74.51480'), ('SUCCASUNNA-KENVIL', 12569, '40.85540', '-74.65290'), ('VICTORY GARDENS', 1546, '40.87620', '-74.54430'), ('WHARTON', 6298, '40.89950', '-74.58230'), ('WHITE MEADOW LAKE', 9052, '40.92350', '-74.51110')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'TXC189': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABERNATHY', 2839, '33.84000', '-101.84660'), ('COTTON CENTER', None, '33.99300', '-101.99240'), ('EDMONSON', 123, '34.28110', '-101.89480'), ('HALE CENTER', 2263, '34.06470', '-101.84450'), ('HALFWAY', None, '34.18800', '-101.95190'), ('PETERSBURG', 1262, '33.87090', '-101.59680'), ('PLAINVIEW', 22336, '34.19090', '-101.72460'), ('SETH WARD', 1926, '34.21370', '-101.69040')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'NJC021': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ALLENTOWN', 1882, '40.17560', '-74.58690'), ('EWING', 35707, '40.26540', '-74.80120'), ('HIGHTSTOWN', 5216, '40.26780', '-74.52540'), ('HOPEWELL', 2035, '40.38890', '-74.76440'), ('LAWRENCEVILLE', 4081, '40.30140', '-74.73020'), ('MERCERVILLE-HAMILTON SQUA', None, '40.23070', '-74.67170'), ('PENNINGTON', 2696, '40.32670', '-74.79220'), ('PRINCETON', 14203, '40.35030', '-74.65940'), ('PRINCETON JUNCTION', 2382, '40.32030', '-74.62370'), ('PRINCETON NORTH', 4528, '40.36140', '-74.64810'), ('TRENTON', 85403, '40.22340', '-74.76420'), ('TWIN RIVERS', 7422, '40.26410', '-74.49260'), ('WHITE HORSE', 9373, '40.19080', '-74.70450'), ('YARDVILLE-GROVEVILLE', 9208, '40.18120', '-74.66770')], 'partOfState': 'CENTRAL', 'wfo': 'PHI'}, -'WYC001': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALBANY', 80, '41.17000', '-106.12000'), ('BOSLER', None, '41.58000', '-105.69000'), ('BUFORD', None, '41.11000', '-105.30000'), ('CENTENNIAL', 191, '41.30000', '-106.11000'), ('GARRETT', None, '42.11000', '-105.60000'), ('LARAMIE', 27204, '41.31090', '-105.58300'), ('PUMPKIN VINE', None, '41.05000', '-105.46000'), ('ROCK RIVER', 235, '41.73120', '-105.97270'), ('VEDAUWOO', None, '41.15000', '-105.40000'), ('WOODS LANDING', None, '41.11000', '-106.02000')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'NJC023': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('AVENEL', 17552, '40.58250', '-74.27370'), ('CARTERET', 20709, '40.58360', '-74.22880'), ('CLEARBROOK PARK', 3053, '40.30960', '-74.46500'), ('COLONIA', 17811, '40.59260', '-74.31580'), ('CONCORDIA', 3658, '40.31090', '-74.44860'), ('DAYTON', 6235, '40.38260', '-74.51030'), ('DUNELLEN', 6823, '40.58940', '-74.46540'), ('EAST BRUNSWICK', 46756, '40.42770', '-74.41650'), ('EDISON', 97687, '40.52880', '-74.36930'), ('FORDS', 15032, '40.54210', '-74.31220'), ('HEATHCOTE', 4755, '40.38860', '-74.57620'), ('HELMETTA', 1825, '40.37660', '-74.42440'), ('HIGHLAND PARK', 13999, '40.50030', '-74.42840'), ('ISELIN', 16698, '40.57020', '-74.31670'), ('JAMESBURG', 6025, '40.34900', '-74.44020'), ('KENDALL PARK', 9006, '40.41340', '-74.56260'), ('LAURENCE HARBOR', 6227, '40.44790', '-74.24950'), ('MADISON PARK', 6929, '40.44620', '-74.29530'), ('METUCHEN', 12840, '40.54190', '-74.36340'), ('MIDDLESEX', 13717, '40.57370', '-74.50210'), ('MILLTOWN', 7000, '40.45010', '-74.43470'), ('MONMOUTH JUNCTION', 2721, '40.38000', '-74.54520'), ('NEW BRUNSWICK', 48573, '40.48640', '-74.44510'), ('NORTH BRUNSWICK TOWNSHIP', 36287, '40.44850', '-74.47760'), ('OLD BRIDGE', 22833, '40.39290', '-74.33000'), ('PERTH AMBOY', 47303, '40.52020', '-74.27210'), ('PORT READING', 3829, '40.56460', '-74.24700'), ('ROSSMOOR', 3129, '40.33650', '-74.47390'), ('SAYREVILLE', 40377, '40.46560', '-74.32210'), ('SEWAREN', 2780, '40.55080', '-74.26090'), ('SOCIETY HILL', 3804, '40.53400', '-74.45830'), ('SOUTH BOUND BROOK', 4492, '40.55400', '-74.52810'), ('SOUTH PLAINFIELD', 21810, '40.57540', '-74.41530'), ('SOUTH RIVER', 15322, '40.44530', '-74.37840'), ('SPOTSWOOD', 7880, '40.39390', '-74.39050'), ('WOODBRIDGE', 18309, '40.55470', '-74.28580')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'FLC071': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALVA', 2182, '26.71510', '-81.61110'), ('BOCA GRANDE', None, '26.75000', '-82.26500'), ('BONITA SPRINGS', 32797, '26.34090', '-81.78510'), ('CAPE CORAL', 102286, '26.57500', '-81.98500'), ('CAPTIVA', 379, '26.52000', '-82.19000'), ('ESTERO', 9503, '26.47600', '-81.81520'), ('FORT MYERS', 48208, '26.63060', '-81.85060'), ('FORT MYERS SHORES', 5793, '26.71350', '-81.73870'), ('FORT MYERS VILLAS', None, '26.55000', '-81.86900'), ('LEHIGH ACRES', 33430, '26.60290', '-81.63310'), ('MORSE SHORES', None, '26.68070', '-81.79770'), ('NORTH FORT MYERS', 40214, '26.70560', '-81.89280'), ('PAGE PARK-PINE MANOR', None, '26.57380', '-81.87000'), ('PINE ISLAND', 64, '26.61000', '-82.12000'), ('PUNTA RASSA', 1731, '26.48750', '-82.01250'), ('SANIBEL', 6064, '26.44390', '-82.10090'), ('SOUTHWEST INTERNATIONAL A', None, '26.54000', '-81.76000'), ('ST. JAMES CITY', 4105, '26.49970', '-82.08090'), ('SUNCOAST ESTATES', 4867, '26.71120', '-81.86930'), ('TICE', 4538, '26.67450', '-81.81780'), ('WHISKEY CREEK', 4806, '26.57220', '-81.89040')], 'partOfState': 'SOUTHWEST', 'wfo': 'TBW'}, -'TXC473': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROOKSHIRE', 3450, '29.78240', '-95.95350'), ('HEMPSTEAD', 4691, '30.09310', '-96.08040'), ('PATTISON', 447, '29.81400', '-95.97750'), ('PINE ISLAND', 849, '30.05340', '-96.02860'), ('PRAIRIE VIEW', 4410, '30.08320', '-95.98910')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC471': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HUNTSVILLE', 35078, '30.71190', '-95.54980'), ('NEW WAVERLY', 950, '30.53650', '-95.48120'), ('RIVERSIDE', 425, '30.84750', '-95.39880')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC477': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRENHAM', 13507, '30.15970', '-96.39730'), ('BURTON', 359, '30.17930', '-96.59730')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC475': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BARSTOW', 406, '31.46140', '-103.39500'), ('GRANDFALLS', 391, '31.34060', '-102.85440'), ('MONAHANS', 6821, '31.60000', '-102.89000'), ('PYOTE', 131, '31.53720', '-103.12250'), ('ROYALTY', None, '31.37000', '-102.87000'), ('THE MONAHANS SANDHILLS ST', None, '31.61670', '-102.78330'), ('THORNTONVILLE', 442, '31.57800', '-102.92160'), ('WICKETT', 455, '31.57010', '-103.00940')], 'partOfState': '', 'wfo': 'MAF'}, -'MIC097': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLENVILLE', None, '45.98330', '-84.81670'), ('POINT AUX PINS ON BOIS BL', None, '45.74000', '-84.48000'), ('BREVORT', None, '46.01760', '-85.03400'), ('CEDARVILLE', None, '45.99000', '-84.36150'), ('CORINNE', None, '46.08340', '-85.71660'), ('CURTIS', None, '46.20100', '-85.75000'), ('ENGADINE', None, '46.11670', '-85.56660'), ('EPOUFETTE', None, '46.06000', '-85.17400'), ('EVERGREEN SHORES', None, '45.90000', '-84.73330'), ('GARNET', None, '46.15000', '-85.30000'), ('GILCHRIST', None, '46.13330', '-85.38330'), ('GOULD CITY', None, '46.10000', '-85.70000'), ('HESSEL', None, '46.00600', '-84.42200'), ('MACKINAC ISLAND', 523, '45.85900', '-84.63570'), ('MARQUETTE ISLAND', None, '45.96000', '-84.40000'), ('NAUBINWAY', None, '46.11100', '-85.45000'), ('REXTON', None, '46.15000', '-85.24000'), ('ST. IGNACE', 2678, '45.86840', '-84.72570')], 'partOfState': '', 'wfo': 'APX'}, -'GAC095': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ACREE', None, '31.55370', '-83.99440'), ('ALBANY', 76939, '31.57780', '-84.17560'), ('DEWITT', None, '31.48560', '-84.14030'), ('DOSAGA', None, '31.55990', '-84.11420'), ('DUCKER', None, '31.52450', '-84.36640'), ('EAST ALBANY', None, '31.57560', '-84.11920'), ('FOUR POINTS', None, '31.55860', '-84.13980'), ('GILLIONVILLE', None, '31.58580', '-84.43330'), ('LOCKETT CROSSING', None, '31.55620', '-84.25430'), ('MARINE CORPS LB', None, '31.54980', '-84.05970'), ('PECAN CITY', None, '31.51780', '-84.07000'), ('PRETORIA', None, '31.50380', '-84.31730'), ('PUTNEY', 2998, '31.47590', '-84.12410'), ('RADIUM SPRINGS', None, '31.52650', '-84.12900'), ('SOUTHWEST GA REGIONAL A/P', None, '31.53490', '-84.19460'), ('TURNER CITY', None, '31.59710', '-84.10810'), ('WALKER', None, '31.53910', '-84.31520'), ('WILLIAMSBURG', None, '31.49670', '-84.11550')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'WIC125': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARBOR VITAE', None, '45.91000', '-89.65000'), ('BOULDER JUNCTION', None, '46.11000', '-89.63000'), ('CONOVER', None, '46.04000', '-89.25000'), ('EAGLE RIVER', 1443, '45.91000', '-89.25000'), ('LAC DU FLAMBEAU', 1646, '45.96000', '-89.88000'), ('LAND O LAKES', None, '46.16000', '-89.23000'), ('MANITOWISH WATERS', None, '46.13000', '-89.88000'), ('PHELPS', None, '46.06000', '-89.08000'), ('PRESQUE ISLE', None, '46.25000', '-89.73000'), ('SAYNER', None, '46.00000', '-89.53000'), ('ST GERMAIN', None, '45.91000', '-89.48000'), ('STAR LAKE', None, '46.03000', '-89.46000'), ('WINCHESTER', None, '46.21000', '-89.90000'), ('WOODRUFF', None, '45.90000', '-89.69000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'GAC215': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COLUMBUS', None, '32.51070', '-84.87500')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAC091': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CHAUNCEY', 295, '32.10650', '-83.06520'), ('CHESTER', 305, '32.39440', '-83.15450'), ('EASTMAN', 5440, '32.19620', '-83.17930'), ('MILAN', 1012, '32.01950', '-83.06360'), ('RHINE', 422, '31.98900', '-83.20080')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAC093': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BYROMVILLE', 415, '32.20130', '-83.90810'), ('DOOLING', 163, '32.22940', '-83.92910'), ('LILLY', 221, '32.14590', '-83.87780'), ('PINEHURST', 307, '32.19500', '-83.76020'), ('UNADILLA', 2772, '32.25740', '-83.73610'), ('VIENNA', 2973, '32.08980', '-83.79160')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'FLC031': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARLINGTON', None, '30.33540', '-81.60320'), ('BALDWIN', 1634, '30.30440', '-81.97520'), ('BAYARD', None, '30.14280', '-81.51310'), ('DOWNTOWN JACKSONVILLE', None, '30.33180', '-81.65610'), ('FORT CAROLINE', None, '30.38640', '-81.50090'), ('JACKSONVILLE BEACH', 20990, '30.27720', '-81.38580'), ('JACKSONVILLE HEIGHTS', None, '30.25190', '-81.78640'), ('JACKSONVILLE INTERNATIONA', None, '30.48390', '-81.70500'), ('LITTLE TALBOT ISLAND', None, '30.45640', '-81.41690'), ('MANDARIN', None, '30.15280', '-81.64150'), ('MAXVILLE', None, '30.19820', '-82.01140'), ('MAYPORT', None, '30.38480', '-81.40940'), ('NEPTUNE BEACH', 7270, '30.31470', '-81.39370'), ('NORMANDY', None, '30.30550', '-81.76110'), ('OCEANWAY', None, '30.46650', '-81.63270'), ('ORTEGA', None, '30.27030', '-81.70860'), ('RIVERSIDE', None, '30.31270', '-81.68400'), ('SAN MARCO', None, '30.31120', '-81.66060'), ('SAN PABLO', None, '30.29500', '-81.43800'), ('TALBOT ISLAND', None, '30.47000', '-81.42000'), ('TALLYRAND', None, '30.35940', '-81.63300'), ('UNF', None, '30.27530', '-81.51200')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLC033': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('FLOMATON', 1588, '30.99970', '-87.26140'), ('BARTH', None, '30.76500', '-87.32700'), ('BAY SPRINGS', None, '30.77600', '-87.48700'), ('BELLVIEW', 21201, '30.46250', '-87.31460'), ('BEULAH', None, '30.53600', '-87.40100'), ('BOGIA', None, '30.84500', '-87.32000'), ('BRATT', None, '30.96600', '-87.43300'), ('BRENT', 22257, '30.46600', '-87.23700'), ('BROWNSVILLE', 14393, '30.42800', '-87.25000'), ('CANTONMENT', None, '30.60800', '-87.34000'), ('CENTURY', 1714, '30.97750', '-87.26150'), ('COTTAGE HILL', None, '30.63000', '-87.32100'), ('EAST PENSACOLA HEIGHTS', None, '30.42600', '-87.17900'), ('ENSLEY', 18752, '30.52690', '-87.27660'), ('FERRY PASS', 27176, '30.51820', '-87.20920'), ('GONZALEZ', 11365, '30.57320', '-87.29040'), ('GOULDING', 4484, '30.43880', '-87.23040'), ('JOHNSONS BEACH', None, '30.30600', '-87.41300'), ('MCDAVID', None, '30.86600', '-87.32000'), ('MOLINO', 1312, '30.71940', '-87.32570'), ('MYRTLE GROVE', 17211, '30.41590', '-87.30380'), ('OAK GROVE', None, '30.90700', '-87.43400'), ('PENSACOLA', 56255, '30.42100', '-87.19500'), ('PENSACOLA NAVAL BASE', None, '30.35800', '-87.26700'), ('PENSACOLA REGIONAL AIRPOR', None, '30.47300', '-87.18800'), ('WALNUT HILL', None, '30.88500', '-87.51000'), ('WARRINGTON', 15207, '30.38800', '-87.26950'), ('WEST PENSACOLA', 21939, '30.42640', '-87.26860')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'TNC049': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALLARDT', 642, '36.38100', '-84.88140'), ('JAMESTOWN', 1839, '36.43210', '-84.93530')], 'partOfState': '', 'wfo': 'OHX'}, -'FLC035': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANDALUSIA', None, '29.49390', '-81.47080'), ('BUNNELL', 2122, '29.46680', '-81.25890'), ('ESPANOLA', None, '29.50670', '-81.31000'), ('FLAGLER BEACH', 4954, '29.47030', '-81.13000'), ('MARINELAND', 6, '29.66400', '-81.21330'), ('PALM COAST', 32732, '29.57110', '-81.21410')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'ALC129': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BIGBEE', None, '31.61430', '-88.16670'), ('CARSON', None, '31.47280', '-87.94160'), ('CHATOM', 1193, '31.46420', '-88.25440'), ('CORTELUOU', None, '31.42530', '-88.00870'), ('DEER PARK', None, '31.21680', '-88.31710'), ('ESCATAWPA', None, '31.28910', '-88.38720'), ('FAIRFORD', None, '31.16900', '-88.06280'), ('FRANKVILLE', None, '31.64610', '-88.14780'), ('FRUITDALE', None, '31.34170', '-88.41180'), ('HAWTHORN', None, '31.33310', '-88.08840'), ('HEALING SPRINGS', None, '31.63280', '-88.33660'), ('JORDON', None, '31.50490', '-88.24740'), ('KOENTON', None, '31.64140', '-88.25960'), ('LEROY', None, '31.50560', '-87.98470'), ('LOPER', None, '31.58170', '-88.30030'), ('MALCOLM', None, '31.19060', '-88.01130'), ('MCINTOSH', 244, '31.26530', '-88.03170'), ('MILLRY', 615, '31.63330', '-88.31390'), ('PRESTWICK', None, '31.45290', '-87.96620'), ('SEABOARD', None, '31.32130', '-88.18870'), ('SILVER CROSS', None, '31.68060', '-88.17420'), ('ST STEPHRNS', None, '31.53940', '-88.05530'), ('SUNFLOWER', None, '31.37770', '-88.03560'), ('TIBBIE', None, '31.36140', '-88.24940'), ('TOINETTE', None, '31.34000', '-88.00830'), ('TOPTON', None, '31.28580', '-88.14990'), ('VINEGAR BEND', None, '31.26440', '-88.34480'), ('WAGARVILLE', None, '31.44330', '-88.03040'), ('YARBO', None, '31.54370', '-88.27800'), ('YELLOW PINE', None, '31.40550', '-88.43180')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'KSC059': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('LANE', 256, '38.43970', '-95.08200'), ('OTTAWA', 11921, '38.61560', '-95.26750'), ('POMONA', 923, '38.60830', '-95.45140'), ('PRINCETON', 317, '38.48890', '-95.27500'), ('RANTOUL', 241, '38.54860', '-95.10000'), ('RICHMOND', 510, '38.40280', '-95.25360'), ('WELLSVILLE', 1606, '38.71830', '-95.08140'), ('WILLIAMSBURG', 351, '38.48060', '-95.46670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'TNC045': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADLEYTOWN', None, '36.03330', '-89.41670'), ('DYERSBURG', 17452, '36.03920', '-89.38020'), ('HELOISE', None, '36.05000', '-89.66670'), ('MILLSFIELD', None, '36.15000', '-89.38330'), ('MISTON', None, '36.16670', '-89.48330'), ('NEWBERN', 2988, '36.11640', '-89.26800'), ('ROELLEN', None, '36.01670', '-89.25000'), ('TRIMBLE', 728, '36.20220', '-89.18890'), ('UNIONVILLE', None, '35.96000', '-89.45000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'GAC257': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AVALON', 278, '34.50150', '-83.19440'), ('BOYDVILLE', None, '34.54000', '-83.36640'), ('EASTANOLEE', None, '34.52030', '-83.25560'), ('MARTIN', 311, '34.48510', '-83.18640'), ('TOCCOA', 9323, '34.57990', '-83.32470')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'ALC125': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BROOKWOOD', 1483, '33.24720', '-87.32390'), ('HOLT', 4103, '33.22960', '-87.48090'), ('NORTHPORT', 19435, '33.24410', '-87.59210'), ('TUSCALOOSA', 77906, '33.23770', '-87.54100'), ('VANCE', 500, '33.17090', '-87.22790')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'KSC055': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('FRIEND', None, '38.25000', '-100.91000'), ('GARDEN CITY', 28451, '37.97710', '-100.86280'), ('HOLCOMB', 2026, '37.99020', '-100.98810'), ('KALVESTA', None, '38.05000', '-100.28000'), ('PIERCEVILLE', None, '37.88000', '-100.67000'), ('PLYMELL', None, '37.81000', '-100.87000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'TNC041': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALEXANDRIA', 814, '36.07670', '-86.03460'), ('DOWELLTOWN', 302, '36.01310', '-85.94310'), ('LIBERTY', 367, '36.00400', '-85.97780'), ('SMITHVILLE', 3994, '35.95710', '-85.82080')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC053': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ELLSWORTH', 2965, '38.73560', '-98.22810'), ('GENESEO', 272, '38.51680', '-98.15400'), ('HOLYROOD', 464, '38.58730', '-98.41170'), ('KANAPOLIS', None, '38.65000', '-98.03000'), ('KANOPOLIS', 543, '38.70850', '-98.15670'), ('LORRAINE', 136, '38.56960', '-98.31710'), ('WILSON', 799, '38.82560', '-98.47440')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'TNC043': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BURNS', 1366, '36.05320', '-87.31200'), ('CHARLOTTE', 1153, '36.18470', '-87.34750'), ('DICKSON', 12244, '36.07670', '-87.37710'), ('SLAYDEN', 185, '36.29320', '-87.46780'), ('VANLEER', 310, '36.23740', '-87.44480'), ('WHITE BLUFF', 2142, '36.10590', '-87.21350')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC051': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANTONINO', None, '38.78000', '-99.38000'), ('CATHERINE', None, '38.93330', '-99.21670'), ('ELLIS', 1873, '38.93620', '-99.55890'), ('EMMERAM', None, '38.97000', '-99.14000'), ('HAYS', 20013, '38.87820', '-99.31880'), ('MUNJOR', None, '38.81000', '-99.27000'), ('PHEIFER', None, '38.70000', '-99.16670'), ('SCHOENCHEN', 214, '38.71320', '-99.33040'), ('TOULON', None, '38.84000', '-99.25000'), ('VICTORIA', 1208, '38.85360', '-99.14710'), ('WALKER', None, '38.86000', '-99.06000'), ('YOCEMENTO', None, '38.90000', '-99.42000')], 'partOfState': 'CENTRAL', 'wfo': 'DDC'}, -'GAC077': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EAST NEWNAN', 1305, '33.34630', '-84.77750'), ('GRANTVILLE', 1309, '33.23800', '-84.82790'), ('HARALSON', 144, '33.22890', '-84.57030'), ('MORELAND', 393, '33.28620', '-84.77040'), ('NEWNAN', 16242, '33.37910', '-84.78840'), ('SENOIA', 1738, '33.31160', '-84.55250'), ('SHARPSBURG', 316, '33.34130', '-84.64740'), ('TURIN', 165, '33.32700', '-84.63630')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAC075': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADEL', 5307, '31.13620', '-83.42860'), ('BARNESDALE', None, '31.18550', '-83.37340'), ('BARNEYVILLE', None, '31.21310', '-83.45420'), ('BURNEY HILL', None, '31.16520', '-83.52870'), ('CECIL', 265, '31.04560', '-83.39310'), ('CHASERVILLE', None, '31.21680', '-83.35730'), ('CHASERVILLE', None, '31.21600', '-83.35770'), ('COOK CO A/P', None, '31.13750', '-83.45130'), ('FLAT FORD', None, '31.22020', '-83.50410'), ('GREGGS', None, '31.06900', '-83.48970'), ('LACONTE', None, '31.20940', '-83.44730'), ('LENOX', 889, '31.26990', '-83.46640'), ('MASSEE', None, '31.18900', '-83.35740'), ('PINE VALLEY', None, '31.08640', '-83.47350'), ('SPARKS', 1755, '31.16760', '-83.44000'), ('STAUNTON', None, '31.26690', '-83.46320'), ('WAGON WHEEL', None, '31.23580', '-83.46210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'NCC069': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BUNN', 357, '35.95870', '-78.25260'), ('CENTERVILLE', 99, '36.18650', '-78.11030'), ('FRANKLINTON', 1745, '36.10360', '-78.45660'), ('INGLESIDE', None, '36.18000', '-78.30000'), ('LOUISBURG', 3111, '36.10030', '-78.29930'), ('PILOT', None, '35.88000', '-78.27000'), ('YOUNGSVILLE', 651, '36.02590', '-78.47710')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'GAC071': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AUTREYVILLE', None, '31.06060', '-83.76520'), ('BAY', None, '31.19040', '-83.92680'), ('BERLIN', 595, '31.06720', '-83.62380'), ('CENTER HILL', None, '31.13770', '-83.89810'), ('CROSLAND', None, '31.30410', '-83.64360'), ('DOERUN', 828, '31.31910', '-83.91800'), ('ELLENTON', 336, '31.17640', '-83.58810'), ('FUNSTON', 426, '31.20020', '-83.87330'), ('HARTSFIELD', None, '31.21650', '-83.97610'), ('MOULTRIE', 14387, '31.17750', '-83.78620'), ('MOULTRIE MUNI A/P', None, '31.08450', '-83.80570'), ('NEW ELM', None, '31.29230', '-83.81940'), ('NORMAN PARK', 849, '31.26890', '-83.68470'), ('REED BINGHAM SP', None, '31.16650', '-83.53930'), ('RICHWOOD', None, '31.04110', '-83.78690'), ('RIVERSIDE', 57, '31.17650', '-83.80610'), ('SIGSBEE', None, '31.26610', '-83.86320'), ('SPENCE A/P', None, '31.13430', '-83.70750'), ('TICKNOR', None, '31.33260', '-83.94320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'NCC065': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CONETOE', 365, '35.81720', '-77.45740'), ('KINGSBORO', None, '35.91000', '-77.67000'), ('LEGGETT', 77, '35.99110', '-77.57960'), ('MACCLESFIELD', 458, '35.75220', '-77.67060'), ('PINETOPS', 1419, '35.79110', '-77.63730'), ('PRINCEVILLE', 940, '35.88830', '-77.52600'), ('ROCKY MOUNT', 55893, '35.95000', '-77.78800'), ('SPEED', 70, '35.96830', '-77.44430'), ('TARBORO', 11138, '35.90770', '-77.55660'), ('WHITAKERS', 799, '36.10590', '-77.70000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC067': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BELEWS CREEK', None, '36.25000', '-80.06000'), ('CLEMMONS', 13827, '36.02120', '-80.38770'), ('DONNAHA', None, '36.23000', '-80.43000'), ('KERNERSVILLE', 17126, '36.11820', '-80.07640'), ('LEWISVILLE', 8826, '36.09310', '-80.40270'), ('PFAFFTOWN', None, '36.15000', '-80.30000'), ('RURAL HALL', 2464, '36.23470', '-80.29390'), ('SEDGE GARDEN', None, '36.08850', '-80.13900'), ('STANLEYVILLE', None, '36.19880', '-80.26690'), ('WALKERTOWN', 4009, '36.17150', '-80.15300'), ('WINSTON-SALEM', 185776, '36.10210', '-80.26290')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC061': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEULAVILLE', 1067, '34.92230', '-77.77250'), ('CALYPSO', 410, '35.15460', '-78.10500'), ('FAISON', 744, '35.11660', '-78.13660'), ('GREENEVERS', 560, '34.82700', '-77.92440'), ('KENANSVILLE', 1149, '34.96200', '-77.96600'), ('MAGNOLIA', 932, '34.89550', '-78.05520'), ('ROSE HILL', 1330, '34.82500', '-78.02820'), ('TEACHEY', 245, '34.76740', '-78.00880'), ('WALLACE', 3344, '34.73500', '-77.99790'), ('WARSAW', 3051, '34.99890', '-78.08800')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC063': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAHAMA', None, '36.17000', '-78.88000'), ('BETHESDA', None, '35.95000', '-78.85000'), ('DURHAM', 187035, '35.98040', '-78.91500'), ('GORMAN', 1002, '36.03800', '-78.81310'), ('PARKWOOD', None, '35.88850', '-78.90880'), ('RESEARCH TRIANGLE PARK', None, '35.87000', '-78.84000'), ('ROUGEMONT', None, '36.22000', '-78.93000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'WIC059': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('LAKE CATHERINE', 1490, '42.49030', '-88.12560'), ('CAMP LAKE', 3255, '42.53070', '-88.14590'), ('KENOSHA', 90352, '42.58410', '-87.85450'), ('PADDOCK LAKE', 3012, '42.57150', '-88.10240'), ('PLEASANT PRAIRIE', 16136, '42.52410', '-87.88180'), ('SILVER LAKE', 2341, '42.55170', '-88.16760'), ('TWIN LAKES', 5124, '42.51880', '-88.25880')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIC051': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CEDAR', None, '46.50780', '-90.49860'), ('GILE', None, '46.42840', '-90.22520'), ('GURNEY', None, '46.47320', '-90.50850'), ('HURLEY', 1818, '46.44430', '-90.19650'), ('IRON BELT', None, '46.40070', '-90.32440'), ('KIMBALL', None, '46.48180', '-90.30640'), ('MANITOWISH', None, '46.13310', '-90.01360'), ('MERCER', None, '46.16570', '-90.06280'), ('MONTREAL', 838, '46.43050', '-90.23880'), ('PENCE', None, '46.41520', '-90.27160'), ('SAXON', None, '46.49350', '-90.41500'), ('UPSON', None, '46.36930', '-90.40690'), ('VAN BUSKIRK', None, '46.38720', '-90.14360')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'GAC271': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HELENA', 2307, '32.07940', '-82.91080'), ('JACKSONVILLE', 118, '31.81560', '-82.97870'), ('LUMBER CITY', 1247, '31.93260', '-82.68270'), ('MCRAE', 2682, '32.06160', '-82.90100'), ('SCOTLAND', 300, '32.04740', '-82.81870')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'WIC055': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('FORT ATKINSON', 11621, '42.92670', '-88.84150'), ('JEFFERSON', 7338, '43.00640', '-88.80810'), ('JOHNSON CREEK', 1581, '43.07980', '-88.77390'), ('LAKE MILLS', 4843, '43.07400', '-88.90800'), ('LAKE RIPLEY', 1603, '43.00570', '-88.98610'), ('PALMYRA', 1766, '42.87900', '-88.58810'), ('SULLIVAN', 688, '43.01250', '-88.58950'), ('WATERLOO', 3259, '43.18300', '-88.98990'), ('WATERTOWN', 21598, '43.19160', '-88.72490')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIC057': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BUCKHORN STATE PARK', None, '43.91775', '-89.97774'), ('CAMP DOUGLAS', 592, '43.91890', '-90.26890'), ('CLOVERDALE', None, '44.01643', '-90.18243'), ('CUTLER', None, '44.01826', '-90.23543'), ('ELROY', 1578, '43.74270', '-90.27240'), ('FINLEY', None, '44.21746', '-90.13309'), ('HUSTLER', 113, '43.87930', '-90.26820'), ('LEMONWEIR', None, '43.78251', '-90.01247'), ('LYNDON STATION', 458, '43.71010', '-89.89440'), ('MATHER', None, '44.14985', '-90.29574'), ('MAUSTON', 3740, '43.80060', '-90.08110'), ('MEADOW VALLEY', None, '44.22112', '-90.21533'), ('NECEDAH', 888, '44.02460', '-90.07170'), ('NEW LISBON', 1436, '43.87860', '-90.16470'), ('NEW MINER', None, '44.16629', '-90.03257'), ('SPRAGUE', None, '44.14985', '-90.13309'), ('UNION CENTER', 214, '43.68410', '-90.26320'), ('WONEWOC', 834, '43.65310', '-90.22400')], 'partOfState': 'CENTRAL', 'wfo': 'ARX'}, -'MSC109': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CROSSROADS', None, '30.78250', '-89.77470'), ('MCNEIL', None, '30.66860', '-89.63830'), ('PICAYUNE', 10535, '30.52870', '-89.67830'), ('POPLARVILLE', 2601, '30.83800', '-89.53410')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'WIC127': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('COMO', 1870, '42.60940', '-88.49520'), ('DARIEN', 1572, '42.60090', '-88.71010'), ('DELAVAN', 7956, '42.62670', '-88.63260'), ('DELAVAN LAKE', 2352, '42.60260', '-88.61900'), ('EAST TROY', 3564, '42.78910', '-88.39940'), ('ELKHORN', 7305, '42.67100', '-88.54030'), ('FONTANA-ON-GENEVA LAKE', 1754, '42.54530', '-88.56640'), ('GENOA CITY', 1949, '42.50150', '-88.32340'), ('LAKE GENEVA', 7148, '42.58860', '-88.42960'), ('PELL LAKE', 2988, '42.54090', '-88.35800'), ('POTTER LAKE', 1099, '42.82160', '-88.34880'), ('POWERS LAKE', 1500, '42.54260', '-88.30140'), ('SHARON', 1549, '42.50160', '-88.73010'), ('WALWORTH', 2304, '42.53050', '-88.59740'), ('WHITEWATER', 13437, '42.83490', '-88.73600'), ('WILLIAMS BAY', 2415, '42.57640', '-88.54280')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'ARC007': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('WALNUT HILL', None, '36.40830', '-93.99110'), ('ROCKY COMFORT', None, '36.23920', '-94.30810'), ('FAIRMOUNT', None, '36.22670', '-94.44580'), ('BLAND', None, '36.33330', '-93.92360'), ('MILLER', None, '36.41640', '-94.26420'), ('HILL TOP', None, '36.44690', '-93.99940'), ('BENTONVILLE', 19730, '36.37280', '-94.20860'), ('SILOAM SPRINGS', 10843, '36.18810', '-94.54030'), ('ROGERS', 38829, '36.33190', '-94.11830'), ('SULPHUR SPRINGS', 671, '36.48330', '-94.45830'), ('LOWELL', 5013, '36.25530', '-94.13060'), ('GENTRY', 2165, '36.26750', '-94.48440'), ('GRAVETTE', 1810, '36.42190', '-94.45330'), ('PEA RIDGE', 2346, '36.45390', '-94.11500'), ('GATEWAY', 116, '36.49030', '-93.93170'), ('LAKE FRANCIS', None, '36.13330', '-94.53330'), ('GALLITIN', None, '36.20000', '-94.43330'), ('HEALING SPRINGS', None, '36.25470', '-94.27810'), ('SPRINGTOWN', 114, '36.26080', '-94.42310'), ('HIGHFILL', 379, '36.26140', '-94.35750'), ('CAVE SPRINGS', 1103, '36.26330', '-94.23170'), ('WAR EAGLE', None, '36.26780', '-93.94080'), ('MONTE NE', None, '36.28720', '-94.06890'), ('LOOKOUT', None, '36.28330', '-93.90000'), ('CHEROKEE CITY', None, '36.29830', '-94.57750'), ('VAUGHN', None, '36.31530', '-94.30390'), ('LARUE', None, '36.34170', '-93.94580'), ('DECATUR', 1314, '36.33580', '-94.46060'), ('CENTERTON', 2146, '36.35970', '-94.28500'), ('AVOCA', 423, '36.40190', '-94.07060'), ('HIWASSE', None, '36.43170', '-94.33360'), ('BELLA VISTA', 16582, '36.42940', '-94.23140'), ('GARFIELD', 490, '36.44830', '-93.97390'), ('BEAVER LAKE', None, '36.36670', '-93.88330'), ('BEAVER LAKE', None, '36.36670', '-93.88330')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'MSC103': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BROOKSVILLE', 1182, '33.23260', '-88.58260'), ('MACON', 2461, '33.11490', '-88.56120'), ('SHUQUALAK', 562, '32.97940', '-88.56870')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSC101': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CHUNKY', 344, '32.32710', '-88.92970'), ('CONEHATTA', 997, '32.45740', '-89.27110'), ('DECATUR', 1426, '32.43820', '-89.11090'), ('HICKORY', 499, '32.31650', '-89.02110'), ('NEWTON', 3699, '32.31970', '-89.15890'), ('UNION', 2021, '32.57150', '-89.11630')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSC107': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BATESVILLE', 7113, '34.31950', '-89.93680'), ('COMO', 1310, '34.51490', '-89.94000'), ('COURTLAND', 460, '34.24110', '-89.94250'), ('CRENSHAW', 916, '34.50390', '-90.19470'), ('CURTIS STATION', None, '34.33330', '-90.15000'), ('ENDVILLE', None, '34.31670', '-89.88330'), ('GLENVILLE', None, '34.53330', '-89.75000'), ('PLEASANT GROVE', None, '34.43330', '-90.10000'), ('POPE', 241, '34.21370', '-89.94760'), ('SARDIS', 2038, '34.43470', '-89.91270')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSC105': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('STARKVILLE', 21869, '33.45670', '-88.82220'), ('STURGIS', 206, '33.34390', '-89.04660')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'TXC051': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CALDWELL', 3449, '30.52910', '-96.70300'), ('SNOOK', 568, '30.49060', '-96.46570'), ('SOMERVILLE', 1704, '30.34520', '-96.53050')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC053': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BERTRAM', 1122, '30.74420', '-98.05740'), ('BRIGGS', None, '30.86660', '-97.91660'), ('BURNET', 4735, '30.76110', '-98.22980'), ('COTTONWOOD SHORES', 877, '30.55580', '-98.32550'), ('GRANITE SHOALS', 2040, '30.58870', '-98.38380'), ('INKS LAKE STATE PARK', None, '30.72000', '-98.38000'), ('MARBLE FALLS', 4959, '30.57970', '-98.27210'), ('MEADOWLAKES', 1293, '30.56320', '-98.29520'), ('SPICEWOOD', None, '30.48330', '-98.16660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC055': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FENTRESS', None, '29.75000', '-97.76660'), ('LOCKHART', 11615, '29.87420', '-97.67760'), ('LULING', 5080, '29.68290', '-97.64900'), ('MARTINDALE', 953, '29.84230', '-97.84330'), ('NIEDERWALD', 584, '30.01330', '-97.73690')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'AKC060': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('KING SALMON', 442, '58.74290', '-156.54460'), ('NAKNEK', 678, '58.76070', '-156.90180'), ('SOUTH NAKNEK', 137, '58.68520', '-156.98050')], 'partOfState': '', 'wfo': 'AFC'}, -'TXC059': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADMIRAL', None, '32.29640', '-99.29750'), ('ATWELL', None, '32.26110', '-99.13390'), ('BAIRD', 1623, '32.39580', '-99.39550'), ('CLYDE', 3345, '32.40240', '-99.49820'), ('CROSS PLAINS', 1068, '32.12660', '-99.16530'), ('DUDLEY', None, '32.25810', '-99.60470'), ('EULA', None, '32.34220', '-99.56140'), ('OPLIN', None, '32.13780', '-99.56190'), ('PUTNAM', 88, '32.37080', '-99.19220')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXC505': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ESCOBA', None, '27.06700', '-99.01000'), ('SAN YGNACIO', None, '27.03330', '-99.45000'), ('ZAPATA', 4856, '26.89430', '-99.26210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXC503': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRAHAM', 8716, '33.10070', '-98.57740'), ('NEWCASTLE', 575, '33.19400', '-98.74400'), ('OLNEY', 3396, '33.36440', '-98.75810')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC501': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRONCO', None, '33.25380', '-103.03880'), ('DENVER CITY', 3985, '32.96960', '-102.83070'), ('PLAINS', 1450, '33.19010', '-102.82710')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'KYC173': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEAN', None, '37.94540', '-83.83640'), ('CAMARGO', 923, '37.99680', '-83.88960'), ('COONS STATION', None, '38.03080', '-83.87110'), ('EWINGTON', None, '38.08330', '-83.90140'), ('GATEWOODS STATION', None, '38.04130', '-83.89420'), ('GRASSY LICK', None, '38.08160', '-84.02000'), ('HOPE', None, '38.01550', '-83.77300'), ('HOWARDS MILE', None, '38.06430', '-83.84730'), ('JEFFERSONVILLE', 1804, '37.96500', '-83.82810'), ('JUDY', None, '38.12970', '-83.95860'), ('KLONDIKE', None, '38.01960', '-83.99740'), ('LEVEE', None, '37.97110', '-83.93530'), ('LOWER SPENCER', None, '38.02890', '-83.84030'), ('LUCKY STOP', None, '37.96400', '-83.81090'), ('MOUNT STERLING', 5876, '38.06040', '-83.94530'), ('OGGS STATION', None, '38.02310', '-83.82450'), ('PREWITT', None, '38.02800', '-83.98110'), ('SIDEVIEW', None, '38.11310', '-84.03670'), ('STOOPS', None, '38.12810', '-83.91470'), ('UPPER SPENCER', None, '38.02960', '-83.84760'), ('WADES MILL', None, '38.03650', '-84.01090'), ('WALKERS CROSSING', None, '38.02690', '-83.79640')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYC171': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AKERSVILLE', None, '36.65000', '-85.93330'), ('FLIPPIN', None, '36.71670', '-85.86670'), ('FOUNTAIN RUN', 236, '36.72210', '-85.96050'), ('GAMALIEL', 439, '36.63990', '-85.79340'), ('HESTAND', None, '36.65000', '-85.61670'), ('MT. HERMAN', None, '36.81670', '-85.78330'), ('MUD LICK', None, '36.75000', '-85.76670'), ('ROCKBRIDGE', None, '36.78330', '-85.66670'), ('TOMPKINSVILLE', 2660, '36.70070', '-85.69220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'NDC021': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ELLENDALE', 1559, '46.00390', '-98.52480'), ('FORBES', 64, '45.94220', '-98.78270'), ('FULLERTON', 85, '46.16360', '-98.42580'), ('GUELPH', None, '46.01670', '-98.23330'), ('LUDDEN', 29, '46.00790', '-98.12500'), ('MERRICOURT', None, '46.20790', '-98.76120'), ('MONANGO', 28, '46.17280', '-98.59510'), ('OAKES', 1979, '46.13940', '-98.08620')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'KYC177': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BREMEN', 365, '37.36110', '-87.21900'), ('CENTRAL CITY', 5893, '37.29550', '-87.12870'), ('DRAKESBORO', 627, '37.21650', '-87.04980'), ('GREENVILLE', 4398, '37.20670', '-87.17850'), ('POWDERLY', 846, '37.23540', '-87.16230'), ('SOUTH CARROLLTON', 184, '37.33640', '-87.14040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'KYC175': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADELE', None, '37.75720', '-83.30120'), ('ARNETT', None, '37.94860', '-83.39530'), ('BLAIRS MILLS', None, '38.08190', '-83.29230'), ('BLAZE', None, '38.02140', '-83.33330'), ('BURG', None, '37.73930', '-83.26000'), ('CANEY', None, '37.80060', '-83.25840'), ('CANNEL CITY', None, '37.78980', '-83.27590'), ('COTTLE', None, '37.88830', '-83.20310'), ('CROCKETT', None, '37.98590', '-83.09210'), ('DEHART', None, '37.96420', '-83.33740'), ('DEMUND', None, '37.83250', '-83.33730'), ('DINGUS', None, '37.90850', '-83.08990'), ('EBON', None, '37.95410', '-83.43600'), ('ELAMTON', None, '37.93940', '-83.15400'), ('ELKFORK', None, '37.96440', '-83.13460'), ('ELNA', None, '37.91800', '-82.96760'), ('EZEL', None, '37.89000', '-83.44440'), ('FLORRESS', None, '37.88480', '-83.17710'), ('GORDON FORD', None, '37.88450', '-83.23570'), ('GRASSY CREEK', None, '37.86690', '-83.34500'), ('GREEAR', None, '37.87770', '-83.29820'), ('HENRY', None, '37.91190', '-83.34390'), ('HOLLIDAY', None, '37.81080', '-83.22970'), ('INDEX', None, '37.89480', '-83.25830'), ('JEPTHA', None, '37.94240', '-83.09990'), ('KELLACEY', None, '37.96030', '-83.39220'), ('LEISURE', None, '38.04450', '-83.33330'), ('LENOX', None, '37.95660', '-83.20210'), ('LEWIS', None, '37.82610', '-83.24920'), ('LIBERTY ROAD', None, '37.90840', '-83.29370'), ('LICK BRANCH', None, '37.95990', '-83.24040'), ('LICKING RIVER', None, '37.93040', '-83.29370'), ('LIZZIELANE', None, '37.82430', '-83.32070'), ('MALONE', None, '37.87160', '-83.25830'), ('MATTHEW', None, '37.85590', '-83.15850'), ('MIMA', None, '37.92230', '-83.03840'), ('MIZE', None, '37.86090', '-83.37250'), ('MOON', None, '37.97440', '-83.04750'), ('MURPHYFORK', None, '37.82820', '-83.42100'), ('NEW COOMER', None, '37.89120', '-83.35410'), ('NICKELL', None, '37.83510', '-83.32640'), ('OMER', None, '37.92370', '-83.39930'), ('OPHIR', None, '37.90730', '-83.01410'), ('PANAMA', None, '37.84730', '-83.30120'), ('PAYTON', None, '37.80400', '-83.29850'), ('PEKIN', None, '37.88090', '-83.38260'), ('POMP', None, '37.95940', '-83.28170'), ('RELIEF', None, '37.94640', '-82.99830'), ('REXVILLE', None, '37.82400', '-83.37090'), ('SALEM', 769, '37.81170', '-83.33340'), ('SELLARS', None, '37.79120', '-83.33700'), ('SILVERHILL', None, '37.90000', '-83.07030'), ('STACY FORK', None, '37.83600', '-83.26740'), ('STEELE', None, '37.97780', '-83.17180'), ('TWENTYSIX', None, '37.94560', '-83.35930'), ('WELL STATION', None, '37.85510', '-83.25010'), ('WEST LIBERTY', 3277, '37.91340', '-83.26570'), ('WHEEL RIM', None, '37.72930', '-83.26370'), ('WHITE OAK', None, '37.85840', '-83.20200'), ('WILLIAMS', None, '37.83890', '-83.19160'), ('WOODSBEND', None, '37.91510', '-83.34390'), ('WRIGLEY', None, '38.01830', '-83.27140'), ('YOCUM', None, '37.98340', '-83.32510'), ('ZOO', None, '37.98620', '-83.36350')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC179': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BALLTOWN', None, '37.73330', '-85.50000'), ('BARDSTOWN', 10374, '37.81360', '-85.46320'), ('BLOOMFIELD', 855, '37.91210', '-85.31590'), ('BOSTON', None, '37.78330', '-85.66670'), ('CHAPLIN', None, '37.90000', '-85.21670'), ('COXS CREEK', None, '37.90000', '-85.46670'), ('DEATSVILLE', None, '37.90000', '-85.56670'), ('FAIRFIELD', 72, '37.93320', '-85.38400'), ('HIGHGROVE', None, '37.97000', '-85.48330'), ('HOWARDSTOWN', None, '37.56670', '-85.60000'), ('NAZARETH', None, '37.83330', '-85.46670'), ('NEW HAVEN', 849, '37.65920', '-85.58930'), ('NEW HOPE', None, '37.63330', '-85.51670'), ('SAMUELS', None, '37.88330', '-85.53330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'WVC065': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BERKELEY SPGS', None, '39.63000', '-78.23000'), ('BERRYVILLE', None, '39.61560', '-78.23000'), ('CHERRY RUN', None, '39.62750', '-78.03420'), ('GREAT CACAPON', None, '39.62000', '-78.29280'), ('HANCOCK', None, '39.69280', '-78.17780'), ('LINEBURG', None, '39.63810', '-78.34690'), ('MAGNOLIA', None, '39.56170', '-78.42720'), ('OAKLAND', None, '39.48110', '-78.25190'), ('OMPS', None, '39.50000', '-78.28000'), ('PAW PAW', 524, '39.53090', '-78.45610'), ('SHADY GROVE', None, '39.63750', '-78.15140'), ('SMITH CROSSROADS', None, '39.56780', '-78.22750'), ('STOTLERS CROSSROADS', None, '39.51330', '-78.22420'), ('UNGER', None, '39.43670', '-78.25420')], 'partOfState': '', 'wfo': 'LWX'}, -'NYC101': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ADDISON', 1797, '42.10580', '-77.23360'), ('ARKPORT', 832, '42.39190', '-77.69650'), ('ATLANTA', None, '42.55000', '-77.48330'), ('AVOCA', 1008, '42.40830', '-77.42320'), ('BATH', 5641, '42.33700', '-77.31840'), ('BRADFORD', None, '42.36670', '-77.10000'), ('BUENA VISTA', None, '42.30000', '-77.51670'), ('CAMERON', None, '42.20000', '-77.40000'), ('CAMERON MILLS', None, '42.18330', '-77.36670'), ('CAMPBELL', None, '42.23330', '-77.20000'), ('CANISTEO', 2336, '42.27030', '-77.60510'), ('CATON', None, '42.05000', '-77.03330'), ('COHOCTON', 854, '42.50000', '-77.49930'), ('COOPERS PLAINS', None, '42.18330', '-77.15000'), ('CORNING', 10842, '42.14720', '-77.05670'), ('EAST CORNING', None, '42.13330', '-76.98330'), ('ERWINS', None, '42.11670', '-77.15000'), ('FREMONT', None, '42.40000', '-77.63330'), ('GANG MILLS', 3304, '42.15360', '-77.13460'), ('GIBSON', None, '42.15000', '-77.03330'), ('GREENWOOD', None, '42.13330', '-77.65000'), ('HAMMONDSPORT', 731, '42.40880', '-77.22310'), ('HARTSVILLE', None, '42.25000', '-77.70000'), ('HASKINVILLE', None, '42.41670', '-77.56670'), ('HORNBY', None, '42.25000', '-77.05000'), ('HORNELL', 9019, '42.32440', '-77.66050'), ('HOWARD', None, '42.36670', '-77.51670'), ('JASPER', None, '42.11670', '-77.50000'), ('KANONA', None, '42.38330', '-77.36670'), ('KEUKA', None, '42.48330', '-77.13330'), ('LINDLEY', None, '42.03330', '-77.13330'), ('MEADS CREEK', None, '42.26670', '-77.10000'), ('NORTH CAMERON', None, '42.25000', '-77.36670'), ('NORTH HORNELL', 851, '42.34570', '-77.66250'), ('PAINTED POST', 1842, '42.16290', '-77.09190'), ('PERKINSVILLE', None, '42.53330', '-77.63330'), ('PRATTSBURG', None, '42.51670', '-77.28330'), ('PULTENEY', None, '42.51670', '-77.16670'), ('RHEIMS', None, '42.40000', '-77.25000'), ('RISINGVILLE', None, '42.21670', '-77.31670'), ('SAVONA', 822, '42.28410', '-77.22320'), ('SONORA', None, '42.33330', '-77.16670'), ('SOUTH CORNING', 1147, '42.12400', '-77.03690'), ('SOUTH DANSVILLE', None, '42.46670', '-77.65000'), ('THURSTON', None, '42.21670', '-77.26670'), ('TROUPSBURG', None, '42.05000', '-77.55000'), ('URBANA', None, '42.45000', '-77.18330'), ('WAYLAND', 1893, '42.56810', '-77.59210'), ('WEST CAMERON', None, '42.23330', '-77.43330'), ('WEST GREENWOOD', None, '42.15000', '-77.71670'), ('WHEELER', None, '42.43330', '-77.33330'), ('WILLEYVILLE', None, '42.03330', '-77.70000'), ('WOODHULL', None, '42.08330', '-77.41670'), ('YOUNG HICKORY', None, '42.05000', '-77.61670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYC103': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMITYVILLE', 9441, '40.66980', '-73.41610'), ('AQUEBOGUE', 2254, '40.93830', '-72.61410'), ('ASHAROKEN', 625, '40.93000', '-73.36000'), ('BABYLON', 12615, '40.69600', '-73.32710'), ('BAY SHORE', 23852, '40.72640', '-73.25050'), ('BAYPORT', 8662, '40.74780', '-73.05470'), ('BAYWOOD', 7571, '40.75120', '-73.29110'), ('BELLE TERRE', 832, '40.96230', '-73.06720'), ('BELLPORT', 2363, '40.75690', '-72.94210'), ('BLUE POINT', 4407, '40.75030', '-73.03500'), ('BOHEMIA', 9871, '40.77400', '-73.12130'), ('BRENTWOOD', 53917, '40.78140', '-73.24850'), ('BRIDGEHAMPTON', 1381, '40.94340', '-72.29910'), ('BRIGHTWATERS', 3248, '40.71800', '-73.26590'), ('BROOKHAVEN', 3570, '40.78020', '-72.91300'), ('BROOKHAVEN NATIONAL LABOR', None, '40.87000', '-72.86000'), ('CALVERTON', 5704, '40.92390', '-72.76190'), ('CAPTREE STATE PARK', None, '40.66000', '-73.24000'), ('CARMANS RIVER', None, '40.78000', '-72.89000'), ('CENTER MORICHES', 6655, '40.79920', '-72.79680'), ('CENTEREACH', 27285, '40.87080', '-73.08330'), ('CENTERPORT', 5446, '40.90080', '-73.37220'), ('CENTRAL ISLIP', 31950, '40.78540', '-73.19690'), ('COLD SPRING HARBOR', 4975, '40.86310', '-73.44790'), ('COMMACK', 36367, '40.84490', '-73.28360'), ('CONNECTQUOT RIVER', None, '40.76000', '-73.15000'), ('COPIAGUE', 21922, '40.67130', '-73.39200'), ('CORAM', 34923, '40.87950', '-73.00450'), ('CUTCHOGUE', 2849, '41.01290', '-72.48620'), ('DAVIS PARK', None, '40.68000', '-73.02000'), ('DEER PARK', 28316, '40.76230', '-73.32260'), ('DIX HILLS', 26024, '40.80480', '-73.33660'), ('EAST FARMINGDALE', 5400, '40.72910', '-73.41730'), ('EAST HAMPTON', 1334, '40.95070', '-72.19690'), ('EAST HAMPTON AIRPORT', None, '40.95000', '-72.28000'), ('EAST ISLIP', 14078, '40.72520', '-73.18700'), ('EAST MORICHES', 4550, '40.81010', '-72.76050'), ('EAST NORTHPORT', 20845, '40.87920', '-73.32460'), ('EAST PATCHOGUE', 20824, '40.76990', '-72.98240'), ('EAST QUOGUE', 4265, '40.85310', '-72.57670'), ('EATONS NECK', 1388, '40.95000', '-73.39000'), ('ELWOOD', 10916, '40.84620', '-73.34210'), ('FARMINGVILLE', 16458, '40.84250', '-73.04420'), ('FISHERS ISLAND', 289, '41.27000', '-71.99000'), ('FLANDERS', 3646, '40.91000', '-72.60480'), ('FORT SALONGA', 9634, '40.91120', '-73.29440'), ("GARDNER'S ISLAND", None, '41.09000', '-72.09000'), ('GILGO STATE PARK', None, '40.63000', '-73.37000'), ('GREENLAWN', 13286, '40.86310', '-73.36660'), ('GREENPORT', 2048, '41.10270', '-72.36780'), ('HAMPTON BAYS', 12236, '40.88000', '-72.52440'), ('HAUPPAUGE', 20100, '40.82000', '-73.21270'), ('HEAD OF THE HARBOR', 1447, '40.89820', '-73.16280'), ('HITHER HILLS STATE PARK', None, '41.01000', '-72.01000'), ('HOLBROOK', 27512, '40.79260', '-73.07080'), ('HOLTSVILLE', 17006, '40.81330', '-73.04760'), ('HUNTINGTON', 18403, '40.87770', '-73.40790'), ('HUNTINGTON BAY', 1496, '40.90400', '-73.41640'), ('HUNTINGTON STATION', 29910, '40.84490', '-73.40520'), ('ISLANDIA', 3057, '40.80670', '-73.17190'), ('ISLIP', 20575, '40.73280', '-73.21770'), ('ISLIP TERRACE', 5641, '40.74860', '-73.18690'), ('JAMESPORT', 1526, '40.94540', '-72.57500'), ('JERICHO TURNPIKE', None, '40.84000', '-73.36000'), ('KINGS PARK', 16146, '40.89070', '-73.24550'), ('LAKE GROVE', 10250, '40.85800', '-73.11690'), ('LAKE RONKONKOMA', 19701, '40.83140', '-73.11090'), ('LAUREL', 1188, '40.97530', '-72.55360'), ('LINDENHURST', 27819, '40.68570', '-73.37180'), ('LLOYD HARBOR', 3675, '40.91750', '-73.46410'), ('LONG ISLAND EXPRESSWAY', None, '40.82000', '-73.09000'), ('MANORVILLE', 11131, '40.85850', '-72.79400'), ('MASTIC', 15436, '40.80200', '-72.84440'), ('MASTIC BEACH', 11543, '40.76150', '-72.84020'), ('MATTITUCK', 4198, '41.00270', '-72.54640'), ('MEDFORD', 21985, '40.82240', '-72.98470'), ('MELVILLE', 14533, '40.78200', '-73.41200'), ('MIDDLE COUNTRY ROAD', None, '40.87000', '-73.03000'), ('MIDDLE ISLAND', 9702, '40.88500', '-72.94390'), ('MILLER PLACE', 10580, '40.93250', '-72.98740'), ('MONTAUK', 3851, '41.04750', '-71.94520'), ('MONTAUK HIGHWAY', None, '40.90000', '-72.34000'), ('MONTAUK POINT', None, '41.07000', '-71.86000'), ('MOUNT SINAI', 8734, '40.93840', '-73.01910'), ('NESCONSET', 11992, '40.84680', '-73.15240'), ('NESCONSET HIGHWAY', None, '40.89000', '-73.08000'), ('NISSEQUOGUE', 1543, '40.90570', '-73.18840'), ('NORTH BAY SHORE', 14992, '40.75900', '-73.26100'), ('NORTH BELLPORT', 9007, '40.78840', '-72.94640'), ('NORTH HAVEN', 743, '41.02360', '-72.31570'), ('NORTH PATCHOGUE', 7825, '40.78440', '-73.02440'), ('NORTH SEA', 4493, '40.95000', '-72.41000'), ('NORTHPORT', 7606, '40.90370', '-73.34560'), ('NOYACK', 2696, '41.00000', '-72.34000'), ('OAKDALE', 8075, '40.73770', '-73.13420'), ('OCEAN BEACH', 138, '40.64550', '-73.15640'), ('OLD FIELD', 947, '40.96230', '-73.13080'), ('ORIENT', 709, '41.14000', '-72.30000'), ('PATCHOGUE', 11919, '40.76130', '-73.01940'), ('PECONIC', 1081, '41.03900', '-72.46490'), ('PECONIC RIVER', None, '40.91000', '-72.65000'), ('PLUM ISLAND', None, '41.18000', '-72.19000'), ('POQUOTT', 975, '40.95220', '-73.08920'), ('PORT JEFFERSON', 7837, '40.94760', '-73.05900'), ('PORT JEFFERSON STATION', 7527, '40.92350', '-73.06770'), ('QUOGUE', 1018, '40.85000', '-72.59750'), ('REMSENBURG-SPEONK', 2675, '40.81340', '-72.70580'), ('RIDGE', 13380, '40.91020', '-72.88210'), ('RIVERHEAD', 10513, '40.91000', '-72.63000'), ('ROBERT MOSES STATE PARK', None, '40.63000', '-73.24000'), ('ROCKY POINT', 10185, '40.95000', '-72.93000'), ('RONKONKOMA', 20029, '40.80350', '-73.12490'), ('SAG HARBOR', 2313, '41.00000', '-72.31000'), ('SAGTIKOS PARKWAY', None, '40.81000', '-73.27000'), ('SALTAIRE', 43, '40.63800', '-73.19510'), ('SAYVILLE', 16735, '40.74680', '-73.08580'), ('SELDEN', 21861, '40.86940', '-73.04790'), ('SETAUKET-EAST SETAUKET', 15931, '40.92990', '-73.10250'), ('SHELTER ISLAND', 1234, '41.07570', '-72.34280'), ('SHINNECOCK HILLS', 1749, '40.89550', '-72.45640'), ('SHIRLEY', 25395, '40.79520', '-72.87410'), ('SHOREHAM', 417, '40.95580', '-72.90650'), ('SMITHTOWN', 26901, '40.85710', '-73.21490'), ('SOUND AVENUE', None, '40.97000', '-72.61000'), ('SOUND BEACH', 9807, '40.95530', '-72.96690'), ('SOUTH HUNTINGTON', 9465, '40.82080', '-73.39220'), ('SOUTHAMPTON', 3965, '40.88030', '-72.39550'), ('SOUTHOLD', 5465, '41.05980', '-72.42780'), ('SPRINGS', 4950, '41.02090', '-72.15710'), ('ST. JAMES', 13268, '40.87640', '-73.15260'), ('STONY BROOK', 13727, '40.90790', '-73.12830'), ('SUNKEN MEADOW PARKWAY', None, '40.89000', '-73.26000'), ('SUNRISE HIGHWAY', None, '40.75000', '-73.09000'), ('WADING RIVER', 6668, '40.94710', '-72.81990'), ('WATERMILL', 1724, '40.92900', '-72.34820'), ('WEST HILLS', 5607, '40.81920', '-73.43170'), ('WEST ISLIP', 28907, '40.70890', '-73.29660'), ('WEST SAYVILLE', 5003, '40.72820', '-73.10570'), ('WESTHAMPTON', 2869, '40.83870', '-72.66490'), ('WYANDANCH', 10546, '40.74660', '-73.37720'), ('YAPHANK', 5025, '40.83160', '-72.92580')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'PRC099': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ACEITUNAS', 1688, '18.44800', '-67.06780'), ('MOCA', 4757, '18.39660', '-67.11420')], 'partOfState': '', 'wfo': 'SJU'}, -'NYC105': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ADEN', None, '41.85000', '-74.68330'), ('ANDERSON', None, '41.90000', '-74.71670'), ('BARRYVILLE', None, '41.48330', '-74.93330'), ('BEAVER BROOK', None, '41.56670', '-74.93330'), ('BETHEL', None, '41.68330', '-74.88330'), ('BLOOMINGBURG', 353, '41.55610', '-74.44150'), ('BRADLEY', None, '41.81670', '-74.70000'), ('BRIDGEVILLE', None, '41.65000', '-74.66670'), ('BRISCOE', None, '41.76670', '-74.88330'), ('CALLICOON', 216, '41.76670', '-75.05000'), ('CALLICOON CENTER', None, '41.83330', '-74.96670'), ('COCHECTON', None, '41.70000', '-75.05000'), ('COCHECTON CENTER', None, '41.83330', '-74.96670'), ('COOKS FALLS', None, '41.93330', '-74.96670'), ('DEBRUCE', None, '41.91670', '-74.73330'), ('ELDRED', None, '41.53330', '-74.90000'), ('FALLSBURG', None, '41.73330', '-74.61670'), ('FERNDALE', None, '41.76670', '-74.73330'), ('FORRESTBURG', None, '41.55000', '-74.76670'), ('FOSTERDALE', None, '41.70000', '-74.98330'), ('FREMONT', None, '41.83330', '-75.05000'), ('GLEN SPEY', None, '41.46670', '-74.81670'), ('GLEN WILD', None, '41.65000', '-74.60000'), ('GRAHAMSVILLE', None, '41.85000', '-74.56670'), ('HARRIS', None, '41.71670', '-74.73330'), ('HARTWOOD', None, '41.53330', '-74.68330'), ('HASBROUCK', None, '41.78330', '-74.61670'), ('HAVEN', None, '41.53330', '-74.53330'), ('HAZEL', None, '41.91670', '-74.86670'), ('HIGHLAND LAKE', None, '41.51670', '-74.86670'), ('HIGHVIEW', None, '41.56670', '-74.46670'), ('HORTONVILLE', None, '41.76670', '-75.03330'), ('HURLEYVILLE', None, '41.73330', '-74.68330'), ('JEFFERSONVILLE', 420, '41.77940', '-74.93260'), ('JOSCELYN', None, '41.95000', '-74.85000'), ('KENOZA LAKE', None, '41.73330', '-74.96670'), ('KIAMESHA', None, '41.68330', '-74.65000'), ('LAVA', None, '41.61670', '-75.01670'), ('LEWBEACH', None, '42.00000', '-74.78330'), ('LIBERTY', 3975, '41.79750', '-74.74640'), ('LIVINGSTON MANOR', 1355, '41.89510', '-74.82650'), ('LOCH SHELDRAKE', None, '41.76670', '-74.66670'), ('MAPLEWOOD', None, '41.66670', '-74.75000'), ('MONGAUP VALLEY', None, '41.66670', '-74.78330'), ('MONTICELLO', 6512, '41.65250', '-74.68800'), ('MOUNTAIN DALE', None, '41.68330', '-74.53330'), ('MT PROSPER', None, '41.60000', '-74.53330'), ('MT VERNON', None, '41.65000', '-74.50000'), ('NEVERSINK', None, '41.81670', '-74.65000'), ('NORTH BRANCH', None, '41.80000', '-75.00000'), ('PARKSTON', None, '41.90000', '-74.78330'), ('PARKSVILLE', None, '41.85000', '-74.76670'), ('PHILLIPSPORT', None, '41.63330', '-74.45000'), ('ROCK HILL', 1056, '41.63330', '-74.60000'), ('ROCKLAND', None, '41.95000', '-74.91670'), ('ROSCOE', 597, '41.93330', '-74.91670'), ('SHANDELEE', None, '41.88330', '-74.88330'), ('SOUTH FALLSBURG', 2061, '41.72060', '-74.63480'), ('SWAN LAKE', None, '41.75000', '-74.78330'), ('THOMPSONVILLE', None, '41.66670', '-74.63330'), ('TUSTEN', None, '41.56670', '-75.01670'), ('TYLERTOWN', None, '41.63330', '-74.95000'), ('WHITE LAKE', None, '41.66670', '-74.83330'), ('WHITE SULPHUR SPRINGS', None, '41.80000', '-74.83330'), ('WILLOWEMOC', None, '41.91670', '-74.66670'), ('WOODBOURNE', None, '41.75000', '-74.60000'), ('WOODRIDGE', 902, '41.71120', '-74.57340'), ('WURTSBORO', 1234, '41.57640', '-74.48540')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYC107': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('APALACHIN', 1126, '42.07230', '-76.16590'), ('BARTON', None, '42.05000', '-76.45000'), ('BERKSHIRE', None, '42.30000', '-76.18330'), ('CAMPVILLE', None, '42.08330', '-76.15000'), ('CANDOR', 855, '42.22730', '-76.33760'), ('CATATONK', None, '42.15000', '-76.31670'), ('EAST BERKSHIRE', None, '42.30000', '-76.13330'), ('FOSTER', None, '42.13330', '-76.15000'), ('JENKSVILLE', None, '42.26670', '-76.25000'), ('LITCHFIELD', None, '42.01670', '-76.46670'), ('LOCKWOOD', None, '42.10000', '-76.55000'), ('LOUNSBERRY', None, '42.06670', '-76.33330'), ('NEWARK VALLEY', 1071, '42.22300', '-76.18590'), ('NICHOLS', 574, '42.01990', '-76.36880'), ('NORTH SPENCER', None, '42.25000', '-76.51670'), ('OWEGO', 3911, '42.10480', '-76.26270'), ('RICHFORD', None, '42.35000', '-76.20000'), ('SPENCER', 731, '42.21510', '-76.49480'), ('TIOGA CENTER', None, '42.06670', '-76.35000'), ('TIOGA TERRACE', None, '42.05000', '-76.11670'), ('WAVERLY', 4607, '42.01220', '-76.54110'), ('WELTONVILLE', None, '42.20000', '-76.25000'), ('WEST CANDOR', None, '42.21670', '-76.41670'), ('WEST NEWARK', None, '42.25000', '-76.23330'), ('WILLSEYVILLE', None, '42.28330', '-76.38330')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'GAC273': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BRIDGES CROSSROAD', None, '31.76460', '-84.35380'), ('BRONWOOD', 513, '31.83080', '-84.36400'), ('CHICKASAWHATCHEE', None, '31.70000', '-84.37460'), ('CLARKS MILL', None, '31.64280', '-84.46660'), ('DAWSON', 5058, '31.77170', '-84.44400'), ('DAWSON MUNI A/P', None, '31.74580', '-84.42330'), ('DOVEREL', None, '31.70110', '-84.52220'), ('GRAVES', None, '31.76700', '-84.51910'), ('HEROD', None, '31.69860', '-84.44190'), ('OAKVILLE', None, '31.85140', '-84.46430'), ('OLIVERS MILL', None, '31.87080', '-84.33650'), ('PARROTT', 156, '31.89390', '-84.51120'), ('PLEASANT HILL', None, '31.87670', '-84.40390'), ('SASSER', 393, '31.71910', '-84.34790'), ('YEOMANS', None, '31.83420', '-84.46730')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'NYC109': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BESEMER', None, '42.40000', '-76.41670'), ('BROOKTONDALE', None, '42.38330', '-76.40000'), ('CAROLINE', None, '42.38330', '-76.30000'), ('CAYUGA HEIGHTS', 3273, '42.46910', '-76.48690'), ('DANBY', None, '42.35000', '-76.48330'), ('DRYDEN', 1832, '42.49020', '-76.29890'), ('EAST ITHACA', 2192, '42.42700', '-76.46580'), ('ENFIELD', None, '42.43330', '-76.63330'), ('ETNA', None, '42.48330', '-76.38330'), ('FOREST HOME', 941, '42.45310', '-76.47180'), ('FREEVILLE', 505, '42.51190', '-76.34600'), ('GROTON', 2470, '42.58690', '-76.36530'), ('ITHACA', 29287, '42.44390', '-76.50340'), ('ITHACA TOMPKINS ARPT', None, '42.48330', '-76.46670'), ('JACKSONVILLE', None, '42.51670', '-76.61670'), ('LAKE RIDGE', None, '42.61670', '-76.61670'), ('LANSING', 3417, '42.49080', '-76.48640'), ('LANSINGVILLE', None, '42.60000', '-76.55000'), ('MC LEAN', None, '42.56670', '-76.28330'), ('MYERS', None, '42.53330', '-76.53330'), ('NEWFIELD', None, '42.36670', '-76.58330'), ('NEWFIELD HAMLET', 647, '42.35790', '-76.59410'), ('NORTHEAST ITHACA', 2655, '42.47120', '-76.46800'), ('NORTHWEST ITHACA', 1115, '42.47080', '-76.54320'), ('NUBIA', None, '42.58330', '-76.28330'), ('PERUVILLE', None, '42.55000', '-76.36670'), ('SLATERVILLE SPGS', None, '42.40000', '-76.35000'), ('SOUTH DANBY', None, '42.30000', '-76.43330'), ('SOUTH HILL', 6003, '42.41150', '-76.49100'), ('SPEEDVILLE', None, '42.30000', '-76.26670'), ('TAUGHANNOCK FALLS', None, '42.53330', '-76.60000'), ('TRUMANSBURG', 1581, '42.54040', '-76.66050'), ('WEST DANBY', None, '42.31670', '-76.51670'), ('WEST DRYDEN', None, '42.51670', '-76.41670'), ('WEST GROTON', None, '42.60000', '-76.45000'), ('WEST SLATERVILLE', None, '42.40000', '-76.36670'), ('WILLOW CREEK', None, '42.51670', '-76.58330')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'PRC093': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('MARICAO', 1123, '18.18610', '-66.98040')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC147': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('PRINCE EDWARD STATE FORES', None, '37.17460', '-78.29500'), ('ALLENS MILL', None, '37.26420', '-78.57040'), ('BRIERY', None, '37.09140', '-78.45810'), ('BRIERY CREEK LAKE', None, '37.19900', '-78.44550'), ('BURKES TAVERN', None, '37.19500', '-78.25000'), ('DARLINGTON HEIGHTS', None, '37.20000', '-78.60440'), ('ELAM', None, '37.28450', '-78.61750'), ('FARMVILLE', 6845, '37.29750', '-78.39600'), ('FIVE FORKS', None, '37.23760', '-78.57680'), ('GREEN BAY', None, '37.13190', '-78.30530'), ('HAMPDEN SYDNEY', 1264, '37.24080', '-78.45790'), ('KINGSVILLE', None, '37.24580', '-78.44420'), ('MORAN', None, '37.23140', '-78.26000'), ('PAMPLIN CITY', 199, '37.26360', '-78.68210'), ('PRINCE EDWARD LAKE', None, '37.17230', '-78.27400'), ('PROSPECT', None, '37.30450', '-78.55950'), ('RICE', None, '37.27170', '-78.29060'), ('SCHOLFIELD', None, '37.10540', '-78.32450'), ('TUGGLE', None, '37.30580', '-78.48890'), ('TWIN LAKES STATE PARK', None, '37.17190', '-78.27350'), ('VIRSO', None, '37.09360', '-78.40610'), ('WARSHAM', None, '37.23000', '-78.44330')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'PRC091': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('COTO NORTE', 1381, '18.43520', '-66.44110'), ('LA LUISA', 2887, '18.45080', '-66.51020'), ('MANATI', None, '18.43100', '-66.48420'), ('TIERRAS NUEVAS PONIENTE', 2366, '18.46390', '-66.48900')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC141': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARARAT', None, '36.60000', '-80.51670'), ('BUFFALO RIDGE', None, '36.75000', '-80.26670'), ('CHARITY', None, '36.81670', '-80.21670'), ('CRITZ', None, '36.63330', '-80.15000'), ('MEADOWS OF DAN', None, '36.73330', '-80.41670'), ('PENNS STORE', None, '36.60000', '-80.06670'), ('STUART', 961, '36.63330', '-80.28330'), ('WOOLWINE', None, '36.78330', '-80.28330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'PRC097': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('MAYAGUEZ', None, '18.20360', '-67.14340')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC143': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AIKEN SUMMIT', None, '36.60000', '-79.70000'), ('AJAX', None, '36.96670', '-79.56670'), ('BLAIRS', None, '36.68330', '-79.38330'), ('CALLANDS', None, '36.81670', '-79.58330'), ('CASCADE', None, '36.56670', '-79.66670'), ('CHALK LEVEL', None, '36.91670', '-79.28330'), ('CHATHAM', 1338, '36.81670', '-79.40000'), ('CLIMAX', None, '36.88330', '-79.48330'), ('DANVILLE AIRPORT', None, '36.58330', '-79.33330'), ('DRY FORK', None, '36.75000', '-79.41670'), ('GRETNA', 1257, '36.95000', '-79.36670'), ('HURT', 1276, '37.08330', '-79.28330'), ('JAVA', None, '36.83330', '-79.23330'), ('KEELING', None, '36.71670', '-79.30000'), ('MT AIRY', None, '36.93330', '-79.20000'), ('PITTSVILLE', None, '36.98330', '-79.46670'), ('RINGGOLD', None, '36.60000', '-79.30000'), ('SANDY RIVER', None, '36.71670', '-79.65000'), ('STRAIGHTSTONE', None, '37.01670', '-79.13330'), ('SWANSONVILLE', None, '36.73330', '-79.58330'), ('WESTOVER HILLS', None, '36.60000', '-79.45000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'PRC095': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('EMAJAGUA', 3099, '18.00250', '-65.88300'), ('MAUNABO', 2075, '18.00980', '-65.90140'), ('PALO SECO', 1152, '18.00960', '-65.93730')], 'partOfState': '', 'wfo': 'SJU'}, -'MIC093': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BRIGHTON', 6701, '42.53010', '-83.78480'), ('CHILSON', None, '42.52690', '-83.86170'), ('COHOCTAH', None, '42.75970', '-83.94860'), ('CONWAY TOWNSHIP', None, '42.73300', '-84.09600'), ('FOWLERVILLE', 2972, '42.66010', '-84.07230'), ('GREGORY', None, '42.45970', '-84.08450'), ('HAMBURG', None, '42.45170', '-83.79970'), ('HARTLAND', None, '42.65570', '-83.75470'), ('HOWELL', 9232, '42.60940', '-83.93570'), ('PARKERS CORNERS', None, '42.56810', '-84.11330'), ('PINCKNEY', 2141, '42.45450', '-83.94550'), ('TYRONE TOWNSHIP', None, '42.73300', '-83.75000')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'NDC031': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BARLOW', None, '47.56670', '-99.15000'), ('BORDULAC', None, '47.38330', '-98.96670'), ('CARRINGTON', 2268, '47.45010', '-99.12350'), ('GLENFIELD', 134, '47.45490', '-98.56630'), ('GRACE CITY', 71, '47.55050', '-98.80400'), ('JUANITA', None, '47.50000', '-98.68330'), ('MCHENRY', 71, '47.57580', '-98.59080'), ('MELVILLE', None, '47.33330', '-99.03330')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'WIC121': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARCADIA', 2402, '44.25240', '-91.49340'), ('BEACH CORNERS', None, '44.20102', '-91.23327'), ('BLAIR', 1273, '44.29590', '-91.22990'), ('CENTERVILLE', None, '44.07126', '-91.45075'), ('CHIMNEY ROCK', None, '44.46601', '-91.41603'), ('DODGE', None, '44.13340', '-91.56223'), ('ELEVA', 635, '44.57640', '-91.47030'), ('ELK CREEK', None, '44.43129', '-91.39958'), ('ETTRICK', 521, '44.16980', '-91.26610'), ('FRENCHVILLE', None, '44.14985', '-91.31734'), ('GALESVILLE', 1427, '44.08420', '-91.35620'), ('HEGG', None, '44.21746', '-91.20038'), ('IDUNA', None, '44.19736', '-91.31734'), ('INDEPENDENCE', 1244, '44.36220', '-91.41930'), ('OSSEO', 1669, '44.57830', '-91.21810'), ('PIGEON FALLS', 388, '44.42470', '-91.20820'), ('PLEASANTVILLE', None, '44.44591', '-91.30272'), ('STRUM', 1001, '44.55290', '-91.38620'), ('TAMARACK', None, '44.18274', '-91.46720'), ('TREMPEALEAU', 1319, '44.00700', '-91.43600'), ('WHITEHALL', 1651, '44.36580', '-91.31370')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'NDC033': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BEACH', 1116, '46.91390', '-104.00770'), ('GOLVA', 106, '46.73460', '-103.98260'), ('SENTINEL BUTTE', 62, '46.91940', '-103.84000'), ('TROTTERS', None, '47.31670', '-103.91670')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDC035': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ARVILLA', None, '47.91920', '-97.49440'), ('EMERADO', 510, '47.92150', '-97.36390'), ('GILBY', 243, '48.08380', '-97.46820'), ('GRAND FORKS', 49321, '47.91690', '-97.07200'), ('GRAND FORKS AFB', 4832, '47.96220', '-97.38390'), ('HOLMES', None, '47.71580', '-97.29640'), ('HONEYFORD', None, '48.03330', '-97.47030'), ('INKSTER', 102, '48.15200', '-97.64430'), ('JOHNSTOWN', None, '48.14420', '-97.46970'), ('KEMPTON', None, '47.81890', '-97.61390'), ('LARIMORE', 1433, '47.90840', '-97.62730'), ('LOGAN CENTER', None, '47.80280', '-97.81810'), ('MANVEL', 370, '48.07320', '-97.17570'), ('MCCANNA', None, '48.00580', '-97.70970'), ('MEKINOCK', None, '48.01280', '-97.36310'), ('NIAGARA', 57, '47.99740', '-97.87050'), ('NORTHWOOD', 959, '47.73580', '-97.56870'), ('ORR', None, '48.09330', '-97.67500'), ('THOMPSON', 1006, '47.77500', '-97.10580')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDC037': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('CARSON', 319, '46.42190', '-101.56980'), ('ELGIN', 659, '46.40170', '-101.84660'), ('HEIL', None, '46.38330', '-101.70000'), ('LARK', None, '46.45000', '-101.40000'), ('LEITH', 28, '46.35990', '-101.63730'), ('NEW LEIPZIG', 274, '46.37620', '-101.94970'), ('RALEIGH', None, '46.36670', '-101.30000'), ('SHIELDS', None, '46.23330', '-101.13330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDC039': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BINFORD', 201, '47.55980', '-98.34530'), ('COOPERSTOWN', 1053, '47.44410', '-98.12410'), ('HANNAFORD', 181, '47.31390', '-98.18790'), ('JESSIE', None, '47.54220', '-98.23780'), ('MOSE', None, '47.57860', '-98.45440'), ('RED WILLOW LAKE', None, '47.64750', '-98.37280'), ('REVERE', None, '47.35560', '-98.32830'), ('SUTTON', None, '47.40190', '-98.43890'), ('WALUM', None, '47.26970', '-98.19420')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'AKC270': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALAKANUK', 652, '62.67560', '-164.64360'), ('CHEVAK', 765, '61.53350', '-165.59160'), ('HOOPER BAY', 1014, '61.53980', '-166.10310'), ('KOTLIK', 591, '63.03410', '-163.55470'), ('MARSHALL', 349, '61.87530', '-162.06010'), ('MOUNTAIN VILLAGE', 755, '62.08780', '-163.71670'), ('PILOT STATION', 550, '61.94140', '-162.87590'), ('PITKAS POINT', 125, '62.03130', '-163.27000'), ('RUSSIAN MISSION', 296, '61.79450', '-161.35380'), ('SCAMMON BAY', 465, '61.84500', '-165.58190'), ('SHELDON POINT', None, '62.51690', '-164.89280'), ("ST. MARY'S", 500, '62.04610', '-163.24630')], 'partOfState': '', 'wfo': 'AFCAFG'}, -'KYC087': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALLENDALE', None, '37.36670', '-85.58330'), ('BLACK GNAT', None, '37.30000', '-85.45000'), ('CREAL', None, '37.43330', '-85.65000'), ('EXIE', None, '37.16670', '-85.53330'), ('GREENSBURG', 2396, '37.25600', '-85.49530'), ('PIERCE', None, '37.18330', '-85.61670'), ('SUMMERSVILLE', None, '37.31670', '-85.61670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'OKC039': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ARAPAHO', 748, '35.57810', '-98.95960'), ('BUTLER', 345, '35.63610', '-99.18540'), ('CLINTON', 8833, '35.50640', '-98.97300'), ('CUSTER CITY', 393, '35.66430', '-98.88680'), ('FOSS RESERVOIR', None, '35.57000', '-99.23000'), ('MC CLURE', None, '35.65000', '-99.32000'), ('MOOREWOOD', None, '35.73000', '-99.35000'), ('STAFFORD', None, '35.53000', '-99.12000'), ('THOMAS', 1238, '35.74730', '-98.74910'), ('WEATHERFORD', 9859, '35.53710', '-98.68990')], 'partOfState': '', 'wfo': 'OUN'}, -'KYC085': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BIG CLIFTY', None, '37.55000', '-86.15000'), ('CANEYVILLE', 627, '37.42370', '-86.48800'), ('CLARKSON', 794, '37.49430', '-86.22050'), ('GRAYSON SPRINGS', None, '37.46670', '-86.23330'), ('IBERIA', None, '37.36670', '-86.16670'), ('LEITCHFIELD', 6139, '37.48070', '-86.29330'), ('MEREDITH', None, '37.40000', '-86.23330'), ('MILLERSTOWN', None, '37.44000', '-86.06000'), ('MILLWOOD', None, '37.45000', '-86.50000'), ('PEONIA', None, '37.41670', '-86.21670'), ('PINE KNOB', None, '37.48330', '-86.51670'), ('READY', None, '37.36670', '-86.46670'), ('SHORT CREEK', None, '37.53330', '-86.48330'), ('SHREWSBURY', None, '37.38330', '-86.38330'), ('SOUTH', None, '37.33330', '-86.36670'), ('WAX', None, '37.35000', '-86.13330'), ('YEAMAN', None, '37.51670', '-86.58330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'MEC011': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALBION', None, '44.53220', '-69.44310'), ('AUGUSTA', 18560, '44.31060', '-69.78000'), ('BELGRADE', None, '44.44720', '-69.83310'), ('BENTON', None, '44.58610', '-69.55140'), ('CHELSEA', None, '44.25030', '-69.71780'), ('CHINA', None, '44.47860', '-69.51780'), ('CLINTON', 1305, '44.63780', '-69.50360'), ('FARMINGDALE', 1935, '44.24440', '-69.77190'), ('FAYETTE', None, '44.40890', '-70.03420'), ('GARDINER', 6198, '44.23000', '-69.77580'), ('HALLOWELL', 2467, '44.28580', '-69.79140'), ('LITCHFIELD', None, '44.13310', '-69.96560'), ('MANCHESTER', None, '44.32440', '-69.86080'), ('MONMOUTH', None, '44.23860', '-70.01940'), ('MOUNT VERNON', None, '44.50110', '-69.98810'), ('OAKLAND', 2758, '44.54030', '-69.72250'), ('PALERMO', None, '44.40780', '-69.47440'), ('PITTSTON', None, '44.22170', '-69.75610'), ('RANDOLPH', 1911, '44.23030', '-69.76720'), ('READFIELD', None, '44.38780', '-69.96720'), ('ROME', None, '44.58500', '-69.86970'), ('SIDNEY', None, '44.41310', '-69.72940'), ('VASSALBORO', None, '44.45920', '-69.67810'), ('VIENNA', None, '44.53330', '-69.98530'), ('WATERVILLE', 15605, '44.55190', '-69.63220'), ('WAYNE', None, '44.34860', '-70.06670'), ('WINDSOR', None, '44.31060', '-69.58110'), ('WINSLOW', 7743, '44.56360', '-69.62170'), ('WINTHROP', 2893, '44.30500', '-69.97750')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'KYC083': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FANCY FARM', None, '36.75940', '-88.79280'), ('LOWES', None, '36.88550', '-88.77380'), ('MAYFIELD', 10349, '36.73630', '-88.64570'), ('SYMSONIA', None, '36.90460', '-88.51000'), ('WATER VALLEY', 316, '36.56830', '-88.81080'), ('WINGO', 581, '36.64190', '-88.73790')], 'partOfState': '', 'wfo': 'PAH'}, -'PRC149': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('VILLALBA', 4388, '18.13000', '-66.48220')], 'partOfState': '', 'wfo': 'SJU'}, -'KYC081': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CORINTH', 181, '38.49590', '-84.56410'), ('CRITTENDEN', 2401, '38.78110', '-84.60550'), ('DRY RIDGE', 1995, '38.68220', '-84.59640'), ('WILLIAMSTOWN', 3227, '38.63750', '-84.56090')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'MEC015': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALNA', None, '44.10610', '-69.60420'), ('BOOTHBAY', None, '43.87640', '-69.63420'), ('BOOTHBAY HARBOR', 1237, '43.85220', '-69.62860'), ('BREMEN', None, '44.00140', '-69.42920'), ('BRISTOL', None, '43.95750', '-69.50970'), ('DAMARISCOTTA', None, '44.03280', '-69.51920'), ('DRESDEN', None, '44.10720', '-69.72470'), ('EDGECOMB', None, '43.95830', '-69.63110'), ('JEFFERSON', None, '44.20670', '-69.45310'), ('MONHEGAN', None, '43.76220', '-69.32080'), ('NEWCASTLE', None, '44.03500', '-69.53720'), ('NOBLEBORO', None, '44.07940', '-69.48560'), ('SOMERVILLE', None, '44.30920', '-69.48940'), ('SOUTH BRISTOL', None, '43.86390', '-69.56170'), ('SOUTHPORT', None, '43.84080', '-69.65920'), ('WALDOBORO', 1291, '44.09610', '-69.38150'), ('WESTPORT', None, '43.89920', '-69.70890'), ('WHITEFIELD', None, '44.17000', '-69.62580'), ('WISCASSET', 1203, '44.00280', '-69.66610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'PRC145': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('MIRANDA', 2057, '18.38870', '-66.38020'), ('MONSERRATE', 2756, '18.43920', '-66.35680'), ('SABANA', 1946, '18.46400', '-66.35280'), ('VEGA BAJA', 28811, '18.44280', '-66.39970')], 'partOfState': '', 'wfo': 'SJU'}, -'OKC033': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('COOKIETOWN', None, '34.27000', '-98.45000'), ('DEVOL', 150, '34.19470', '-98.58770'), ('HULEN', None, '34.50000', '-98.22000'), ('RANDLETT', 511, '34.17770', '-98.46270'), ('TAYLOR', None, '34.17000', '-98.33000'), ('TEMPLE', 1146, '34.27350', '-98.23470'), ('WALTERS', 2657, '34.35730', '-98.30790')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'PRC141': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CAYUCO', 1284, '18.29530', '-66.73540'), ('UTUADO', 9887, '18.27140', '-66.70560')], 'partOfState': '', 'wfo': 'SJU'}, -'KYC089': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BELLEFONTE', 837, '38.49840', '-82.68840'), ('FLATWOODS', 7605, '38.51930', '-82.72000'), ('GREENUP', 1198, '38.57300', '-82.82910'), ('RACELAND', 2355, '38.53620', '-82.73370'), ('RUSSELL', 3645, '38.50970', '-82.70120'), ('SOUTH SHORE', 1226, '38.72200', '-82.96430'), ('WORTHINGTON', 1673, '38.55170', '-82.73630'), ('WURTLAND', 1049, '38.55040', '-82.77320')], 'partOfState': '', 'wfo': 'RLX'}, -'PRC143': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BRENAS', None, '18.47390', '-66.33410'), ('VEGA ALTA', 11755, '18.41660', '-66.32200')], 'partOfState': '', 'wfo': 'SJU'}, -'MOC227': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ATHELSTAN', 18, '40.57270', '-94.54220'), ('ALLENDALE', 54, '40.48620', '-94.28870'), ('DENVER', 40, '40.39900', '-94.32370'), ('GRANT CITY', 926, '40.48600', '-94.41390'), ('SHERIDAN', 185, '40.51740', '-94.61460'), ('WORTH', 94, '40.40550', '-94.44680')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOC225': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DIGGINS', 298, '37.17240', '-92.85410'), ('ELKLAND', None, '37.44300', '-93.03070'), ('FORDLAND', 684, '37.15750', '-92.94050'), ('I-44 NEAR MILE MARKER 100', None, '37.34800', '-92.92000'), ('MARSHFIELD', 5720, '37.33850', '-92.90690'), ('NIANGUA', 445, '37.38710', '-92.83240'), ('NORTHVIEW', None, '37.28660', '-92.99630'), ('RADER', None, '37.46020', '-92.71880'), ('ROGERSVILLE', 1508, '37.11680', '-93.05550'), ('SEYMOUR', 1834, '37.14630', '-92.76850')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC223': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GREENVILLE', 451, '37.12690', '-90.44600'), ('MILL SPRING', 219, '37.06470', '-90.68140'), ('PIEDMONT', 1992, '37.14780', '-90.69840'), ('WILLIAMSVILLE', 379, '36.97360', '-90.54810')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOC221': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANTHONIES MILL', None, '38.08300', '-91.08300'), ('BELGRADE', None, '37.78680', '-90.84940'), ('CADET', None, '37.98750', '-90.68840'), ('CALEDONIA', 158, '37.76360', '-90.77100'), ('COURTOIS', None, '37.76700', '-91.08300'), ('IRONDALE', 437, '37.83420', '-90.67090'), ('LATTY', None, '37.98230', '-90.89320'), ('MINERAL POINT', 363, '37.94510', '-90.72440'), ('OLD MINES', None, '38.01700', '-90.76700'), ('POTOSI', 2662, '37.93600', '-90.78210'), ('RICHWOODS', None, '38.16700', '-90.83300'), ('SHIRLEY', None, '37.91510', '-90.91930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'INC033': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALTONA', 198, '41.35090', '-85.15280'), ('ASHLEY', 1010, '41.52560', '-85.06610'), ('AUBURN', 12074, '41.36330', '-85.05760'), ('BUTLER', 2725, '41.42920', '-84.87060'), ('CORUNNA', 254, '41.43570', '-85.14420'), ('GARRETT', 5803, '41.34990', '-85.12770'), ('HAMILTON', 1233, '41.53230', '-84.91750'), ('HUDSON', 596, '41.53360', '-85.08160'), ('ST. JOE', 478, '41.31480', '-84.90350'), ('WATERLOO', 2200, '41.43340', '-85.02660')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'INC031': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('GREENSBURG', 10260, '39.34140', '-85.48050'), ('HARTSVILLE', 376, '39.26700', '-85.69870'), ('MILLHOUSEN', 136, '39.21070', '-85.43530'), ('NEWPOINT', 290, '39.30890', '-85.33010'), ('ST. PAUL', 1022, '39.42730', '-85.62910'), ('WESTPORT', 1515, '39.17610', '-85.57530')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'INC037': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BIRDSEYE', 465, '38.31360', '-86.69590'), ('BRETZVILLE', None, '38.30000', '-86.86670'), ('CELESTINE', None, '38.38330', '-86.78330'), ('CRYSTAL', None, '38.48330', '-86.75000'), ('CUZCO', None, '38.48330', '-86.71670'), ('DUBOIS', None, '38.45000', '-86.80000'), ('DUFF', None, '38.30000', '-87.05000'), ('FERDINAND', 2277, '38.22830', '-86.86210'), ('HAYSVILLE', None, '38.48330', '-86.91670'), ('HILLHAM', None, '38.51670', '-86.70000'), ('HOLLAND', 695, '38.24590', '-87.03840'), ('HUNTINGBURG', 5598, '38.29810', '-86.95870'), ('IRELAND', None, '38.41670', '-87.00000'), ('JASPER', 12100, '38.39320', '-86.93520'), ('JOHNSBURG', None, '38.21670', '-86.95000'), ('KELLERVILLE', None, '38.48330', '-86.83330'), ('KYANA', None, '38.30000', '-86.78330'), ('MALTERSVILLE', None, '38.35000', '-86.88330'), ('MENTOR', None, '38.31670', '-86.71670'), ('NORTON', None, '38.50000', '-86.70000'), ('PORTERSVILLE', None, '38.50000', '-86.98330'), ('SCHNELLVILLE', None, '38.33330', '-86.75000'), ('ST. ANTHONY', None, '38.31670', '-86.83330'), ('ST. HENRY', None, '38.21670', '-86.93330'), ('ST. MARKS', None, '38.30000', '-86.81670'), ('THALES', None, '38.51670', '-86.80000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'MOC229': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DAWSON', None, '37.25690', '-92.30770'), ('DUNCAN', None, '37.28160', '-92.69160'), ('GRAFF', None, '37.31740', '-92.28240'), ('GROVESPRING', None, '37.39960', '-92.60940'), ('HARTVILLE', 607, '37.25080', '-92.51020'), ('MANES', None, '37.37990', '-92.36660'), ('MANSFIELD', 1349, '37.10660', '-92.58040'), ('MOUNTAIN GROVE', 4574, '37.13040', '-92.26330'), ('NORWOOD', 552, '37.10830', '-92.41470'), ('ODIN', None, '37.26820', '-92.61820')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'TXC493': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FLORESVILLE', 5868, '29.13680', '-98.15650'), ('KOSCIUSKO', None, '29.10000', '-97.93330'), ('LA VERNIA', 931, '29.35000', '-98.11670'), ('LA VERNIA', 931, '29.35410', '-98.11430'), ('PANDORA', None, '29.25000', '-97.83330'), ('POTH', 1850, '29.07240', '-98.08090'), ('STOCKDALE', 1398, '29.23380', '-97.96220'), ('SUTHERLAND SPRINGS', None, '29.26670', '-98.06670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'MIC091': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ADDISON', 627, '41.98590', '-84.34910'), ('ADRIAN', 21574, '41.89830', '-84.04350'), ('BLISSFIELD', 3223, '41.83240', '-83.86440'), ('BRITTON', 699, '41.98630', '-83.83190'), ('CEMENT CITY', 452, '42.06840', '-84.32730'), ('CLAYTON', 326, '41.86440', '-84.23590'), ('CLINTON', 95648, '42.06890', '-83.97240'), ('DEERFIELD', 1005, '41.89010', '-83.77860'), ('FAIRFIELD', None, '41.81280', '-84.04110'), ('HOLLOWAY', None, '41.93500', '-83.91440'), ('HUDSON', 2499, '41.85630', '-84.34560'), ('LIME CREEK', None, '41.76560', '-84.32970'), ('MORENCI', 2398, '41.72160', '-84.21640'), ('OGDEN CENTER', None, '41.77190', '-83.95970'), ('ONSTED', 813, '42.00760', '-84.19020'), ('ROME CENTER', None, '41.94360', '-84.18780'), ('SENECA', None, '41.78750', '-84.17670'), ('TECUMSEH', 8574, '42.00610', '-83.94450'), ('TIPTON', None, '42.01670', '-84.06420')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'WIC019': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ABBOTSFORD', 1956, '44.94830', '-90.31870'), ('ATWOOD', None, '44.88269', '-90.48398'), ('CHILI', None, '44.63049', '-90.35057'), ('CHRISTIE', None, '44.64877', '-90.59729'), ('COLBY', 1616, '44.90890', '-90.31690'), ('CURTISS', 198, '44.95390', '-90.43520'), ('DORCHESTER', 827, '45.00230', '-90.33330'), ('EIDSVOLD', None, '44.95031', '-90.86594'), ('GLOBE', None, '44.65060', '-90.66490'), ('GRANTON', 406, '44.58850', '-90.46200'), ('GREENWOOD', 1079, '44.76540', '-90.59880'), ('HUMBIRD', None, '44.53180', '-90.90066'), ('JUNCTION', None, '45.01428', '-90.90066'), ('LAKE ARBUTUS', None, '44.42946', '-90.69963'), ('LONGWOOD', None, '44.88269', '-90.60094'), ('LOYAL', 1308, '44.73610', '-90.49640'), ('LYNN', None, '44.58298', '-90.41636'), ('NEILLSVILLE', 2731, '44.56040', '-90.59090'), ('NEVINS', None, '44.49891', '-90.36701'), ('OWEN', 936, '44.94940', '-90.56780'), ('RESEBURG', None, '44.91559', '-90.76725'), ('RIPLINGER', None, '44.82970', '-90.39991'), ('SHERWOOD', 1550, '44.43129', '-90.35239'), ('SHORTVILLE', None, '44.49708', '-90.51687'), ('SIDNEY', None, '44.54825', '-90.65211'), ('THORP', 1536, '44.95980', '-90.80090'), ('TIOGA', None, '44.68166', '-90.78187'), ('UNITY', 368, '44.85060', '-90.31390'), ('VEEFKIND', None, '44.69811', '-90.38712'), ('WILLARD', None, '44.72918', '-90.73435'), ('WITHEE', 508, '44.95280', '-90.59700')], 'partOfState': 'CENTRAL', 'wfo': 'ARX'}, -'NCC087': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CANTON', 4029, '35.54610', '-82.84300'), ('CLYDE', 1324, '35.53320', '-82.91180'), ('COVE CREEK', None, '35.60640', '-83.01140'), ('CRUSO', None, '35.41750', '-82.81080'), ('LAKE JUNALUSKA', 2675, '35.52770', '-82.97660'), ('MAGGIE VALLEY', 607, '35.51720', '-83.09150'), ('SUNBURST', None, '35.41060', '-82.93220'), ('WATERVILLE', None, '35.76260', '-83.10050'), ('WAYNESVILLE', 9232, '35.48450', '-82.99750')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC085': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANDERSON CREEK', None, '35.28000', '-78.93000'), ('ANGIER', 3419, '35.51070', '-78.73880'), ('BUIES CREEK', 2215, '35.40750', '-78.74020'), ('COATS', 1845, '35.40620', '-78.66880'), ('DUNCAN', None, '35.56000', '-78.88000'), ('DUNN', 9196, '35.31130', '-78.61530'), ('ERWIN', 4537, '35.32520', '-78.67230'), ('LILLINGTON', 2915, '35.39790', '-78.81610'), ('OLIVIA', None, '35.37000', '-79.11000'), ('PINEVIEW', None, '35.31000', '-79.08000'), ('SEMINOLE', None, '35.46000', '-79.00000'), ('TIMBERLAKE', None, '35.28800', '-78.95000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NYC039': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ATHENS', 1695, '42.26710', '-73.81290'), ('CAIRO', 1390, '42.30540', '-74.00990'), ('CATSKILL', 4392, '42.21480', '-73.86550'), ('COXSACKIE', 2895, '42.35820', '-73.80930'), ('HUNTER', 490, '42.21120', '-74.21570'), ('JEFFERSON HEIGHTS', 1104, '42.23640', '-73.87280'), ('PRATTSVILLE', None, '42.31620', '-74.43330'), ('TANNERSVILLE', 448, '42.19360', '-74.13490'), ('WINDHAM', 359, '42.30520', '-74.25250')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NCC083': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AIRLIE', None, '36.33000', '-77.88000'), ('ENFIELD', 2347, '36.17940', '-77.66810'), ('GLENVIEW', None, '36.17000', '-77.82000'), ('HALIFAX', 344, '36.32520', '-77.59000'), ('HOBGOOD', 404, '36.02740', '-77.39520'), ('LITTLETON', 692, '36.43420', '-77.91060'), ('ROANOKE RAPIDS', 16957, '36.45320', '-77.65170'), ('ROSEMARY', None, '36.45130', '-77.69750'), ('SCOTLAND NECK', 2362, '36.13030', '-77.42130'), ('SOUTH WELDON', 1414, '36.40320', '-77.61900'), ('TILLERY', None, '36.25000', '-77.48000'), ('WELDON', 1374, '36.42420', '-77.60560')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC081': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CLIMAX', None, '35.92000', '-79.73000'), ('COLFAX', None, '36.13000', '-80.02000'), ('FOREST OAKS', 3241, '35.98800', '-79.70640'), ('GIBSONVILLE', 4372, '36.10350', '-79.54080'), ('GREENSBORO', 223891, '36.07890', '-79.82690'), ('HIGH POINT', 85839, '35.98130', '-79.99820'), ('JAMESTOWN', 3088, '35.99560', '-79.93450'), ('LAKE TOWNSEND', None, '36.17000', '-79.78000'), ('MCLEANSVILLE', 1080, '36.10360', '-79.66050'), ('MONTICELLO', None, '36.20000', '-79.68000'), ('PLEASANT GARDEN', 4714, '35.96220', '-79.77410'), ('STOKESDALE', 3267, '36.23570', '-79.98420'), ('SUMMERFIELD', 7018, '36.20260', '-79.89420')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NYC035': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BROADALBIN', 1411, '43.05950', '-74.19770'), ('CAROGA LAKE', None, '43.13750', '-74.48400'), ('CRANBERRY CREEK', None, '43.15150', '-74.22230'), ('EPHRATAH', None, '43.00030', '-74.54470'), ('GLOVERSVILLE', 15413, '43.05020', '-74.34700'), ('JOHNSTOWN', 8511, '43.00850', '-74.37440'), ('MAYFIELD', 800, '43.10200', '-74.26650'), ('NORTHVILLE', 801, '43.22200', '-74.17100'), ('STRATFORD', None, '43.18180', '-74.68550')], 'partOfState': '', 'wfo': 'ALY'}, -'NYC037': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALEXANDER', 481, '42.90170', '-78.26070'), ('BATAVIA', 16256, '42.99860', '-78.18120'), ('BERGEN', 1240, '43.08330', '-77.94200'), ('CORFU', 795, '42.96040', '-78.40030'), ('ELBA', 696, '43.07520', '-78.18890'), ('LE ROY', 4462, '42.97790', '-77.99100'), ('OAKFIELD', 1805, '43.06440', '-78.27070')], 'partOfState': '', 'wfo': 'BUF'}, -'NYC031': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AUSABLE FORKS', None, '44.43000', '-73.68000'), ('CROWN POINT CENTER', None, '43.95000', '-73.42000'), ('ELIZABETHTOWN', None, '44.22000', '-73.60000'), ('KEENE', None, '44.25000', '-73.78000'), ('KEENE VALLEY', None, '44.20000', '-73.78000'), ('LAKE PLACID', 2638, '44.28340', '-73.98500'), ('LEWIS', None, '44.27000', '-73.57000'), ('MINERVA', None, '43.78000', '-73.97000'), ('MINEVILLE', None, '44.08910', '-73.52750'), ('MORIAH', None, '44.05000', '-73.50000'), ('NEWCOMB', None, '43.97000', '-74.17000'), ('NORTH HUDSON', None, '43.98000', '-73.70000'), ('PARADOX', None, '43.90000', '-73.63000'), ('PORT HENRY', 1152, '44.04700', '-73.46070'), ('PORT KENT', None, '44.53000', '-73.42000'), ('RAY BROOK', None, '44.30000', '-74.08000'), ('SCHROON LAKE', None, '43.83000', '-73.73000'), ('TICONDEROGA', None, '43.84700', '-73.42560'), ('UNDERWOOD', None, '44.08000', '-73.68000'), ('UPPER JAY', None, '44.33000', '-73.78000'), ('WADHAMS', None, '44.23000', '-73.47000'), ('WESTPORT', None, '44.17880', '-73.43610'), ('WILLSBORO', None, '44.37000', '-73.40000'), ('WILMINGTON', None, '44.38000', '-73.82000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYC033': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BLOOMINGDALE', None, '44.42000', '-74.10000'), ('BRUSHTON', 479, '44.83090', '-74.51290'), ('BURKE', 213, '44.90340', '-74.17090'), ('CHASM FALLS', None, '44.75000', '-74.22000'), ('CHATEAUGAY', 798, '44.92730', '-74.08080'), ('CONSTABLE', None, '44.93000', '-74.28000'), ('COREYS', None, '44.23000', '-74.32000'), ('DICKINSON', None, '44.75000', '-74.55000'), ('DUANE CENTER', None, '44.65000', '-74.27000'), ('FORT COVINGTON', None, '44.98000', '-74.47000'), ('FRANKLIN FALLS', None, '44.43000', '-73.98000'), ('HOGANSBURG', None, '44.97000', '-74.63000'), ('LOON LAKE', None, '44.55000', '-74.07000'), ('MALONE', 6075, '44.84820', '-74.29140'), ('PAUL SMITHS', None, '44.43000', '-74.25000'), ('RAINBOW LAKE', None, '44.47000', '-74.17000'), ('SANTA CLARA', None, '44.63000', '-74.45000'), ('SARANAC INN', None, '44.33000', '-74.28000'), ('SARANAC LAKE', 5041, '44.32500', '-74.13310'), ('ST. REGIS FALLS', None, '44.67000', '-74.53000'), ('TROUT RIVER', None, '44.98000', '-74.28000'), ('TUPPER LAKE', 3935, '44.23430', '-74.46890'), ('WEST BANGOR', None, '44.80000', '-74.42000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NCC089': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAT CAVE', None, '35.45080', '-82.28230'), ('DANA', None, '35.32920', '-82.37560'), ('EAST FLAT ROCK', 4151, '35.28450', '-82.41920'), ('ETOWAH', 2766, '35.31530', '-82.59510'), ('FLAT ROCK', 1690, '35.27110', '-82.44170'), ('FLETCHER', 4185, '35.43430', '-82.50290'), ('HENDERSONVILLE', 10420, '35.32150', '-82.46220'), ('MILLS RIVER', None, '35.38830', '-82.56690'), ('MOUNTAIN HOME', 2169, '35.36990', '-82.50440'), ('TUXEDO', None, '35.22530', '-82.42970')], 'partOfState': '', 'wfo': 'GSP'}, -'OKC105': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('NEW ALLUWE', 95, '36.60940', '-95.48890'), ('NOWATA', 3971, '36.70060', '-95.63780'), ('DELAWARE', 456, '36.77860', '-95.63920'), ('LENAPAH', 298, '36.85060', '-95.63580'), ('WANN', 132, '36.91530', '-95.80420'), ('WATOVA', None, '36.61720', '-95.65560'), ('NEW ALLUWE', 95, '36.60940', '-95.48890')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'LAC039': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BASILE', 1660, '30.49500', '-92.59580'), ('BEAVER', None, '30.79560', '-92.57190'), ('CHATAIGNIER', 383, '30.56750', '-92.31540'), ('MAMOU', 3566, '30.63480', '-92.41760'), ('PINE PRAIRIE', 1087, '30.78290', '-92.42290'), ('REDDELL', None, '30.67390', '-92.42610'), ('ST. LANDRY', None, '30.84440', '-92.25810'), ('TURKEY CREEK', 356, '30.87400', '-92.41600'), ('VILLE PLATTE', 8145, '30.69000', '-92.28030')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'OKC107': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('OKEMAH', 3038, '35.43250', '-96.30470'), ('WELEETKA', 1014, '35.33560', '-96.13610'), ('BEARDEN', 140, '35.34810', '-96.38830'), ('CLEARVIEW', 56, '35.39690', '-96.18610'), ('PHAROAH', None, '35.42030', '-96.12280'), ('CASTLE', 122, '35.47440', '-96.38190'), ('PADEN', 446, '35.50780', '-96.56720'), ('BOLEY', 1126, '35.49330', '-96.48330'), ('MASON', None, '35.56610', '-96.35190'), ('OKFUSKEE', None, '35.59530', '-96.22810'), ('WELTY', None, '35.62440', '-96.40500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'OKC101': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('KEEFETON', None, '35.58970', '-95.33910'), ('MUSKOGEE', 38310, '35.74780', '-95.36940'), ('BRIARTOWN', None, '35.29720', '-95.23940'), ('PORUM', 725, '35.35610', '-95.26530'), ('WARNER', 1430, '35.49420', '-95.30530'), ('OKTAHA', 327, '35.57640', '-95.47470'), ('KEEFETON', None, '35.60000', '-95.35000'), ('WAINWRIGHT', 197, '35.61250', '-95.56420'), ('BOYNTON', 274, '35.64860', '-95.65580'), ('SUMMIT', 226, '35.66580', '-95.42250'), ('BRAGGS', 301, '35.66330', '-95.19780'), ('JAMESVILLE', None, '35.75500', '-95.64030'), ('TAFT', 349, '35.76170', '-95.54610'), ('FORT GIBSON', 4054, '35.79750', '-95.25030'), ('HASKELL', 1765, '35.82030', '-95.67390'), ('WEBBERS FALLS', 726, '35.51080', '-95.12970')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'TXC499': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALBA', 430, '32.79140', '-95.63520'), ('HAWKINS', 1331, '32.59080', '-95.20250'), ('MINEOLA', 4550, '32.66590', '-95.48890'), ('QUITMAN', 2030, '32.79590', '-95.44430'), ('WINNSBORO', 3584, '32.95620', '-95.28980'), ('YANTIS', 321, '32.93190', '-95.57500')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'LAC033': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BAKER', 13793, '30.58550', '-91.15700'), ('BATON ROUGE', 227818, '30.44900', '-91.12600'), ('GARDERE', 8992, '30.35720', '-91.13460'), ('GREENWELL SPRING', None, '30.57940', '-90.99420'), ('OAK HILLS PLACE', 7996, '30.36670', '-91.08690'), ('PRIDE', None, '30.69360', '-90.97810'), ('WESTMINSTER', 2515, '30.40710', '-91.08980'), ('ZACHARY', 11275, '30.66110', '-91.15210')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAC031': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('GRAND CANE', 191, '32.08450', '-93.80940'), ('KEACHI', 323, '32.17570', '-93.91620'), ('LOGANSPORT', 1630, '31.97400', '-93.99410'), ('LONGSTREET', 163, '32.09680', '-93.95010'), ('MANSFIELD', 5582, '32.03380', '-93.70240'), ('SOUTH MANSFIELD', 352, '32.01850', '-93.72290'), ('STANLEY', 145, '31.96350', '-93.90350'), ('STONEWALL', 1668, '32.26400', '-93.81640')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAC037': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CLINTON', 1998, '30.86110', '-91.01500'), ('FELPS', None, '30.97690', '-90.91860'), ('JACKSON', 4130, '30.83420', '-91.21020'), ('NORWOOD', 337, '30.96450', '-91.10650'), ('SLAUGHTER', 1011, '30.71890', '-91.14160')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'OKC109': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ARCADIA', 279, '35.66540', '-97.32610'), ('BETHANY', 20307, '35.50600', '-97.64340'), ('CHOCTAW', 9377, '35.48240', '-97.26540'), ('DEL CITY', 22128, '35.44750', '-97.43970'), ('EDMOND', 68315, '35.67200', '-97.41320'), ('FOREST PARK', 1066, '35.51480', '-97.44650'), ('HARRAH', 4719, '35.48570', '-97.18410'), ('JONES', 2517, '35.56660', '-97.29060'), ('LAKE ALUMA', 97, '35.53560', '-97.44830'), ('LUTHER', 612, '35.66430', '-97.18040'), ('MIDWEST CITY', 54088, '35.46260', '-97.36940'), ('NEWALLA', None, '35.40000', '-97.17000'), ('NICHOLS HILLS', 4056, '35.54610', '-97.54440'), ('NICOMA PARK', 2415, '35.49110', '-97.32400'), ('OKLAHOMA CITY', 506132, '35.46710', '-97.51350'), ('SMITH VILLAGE', 40, '35.45100', '-97.45690'), ('SPENCER', 3746, '35.50770', '-97.37030'), ('THE VILLAGE', 10157, '35.57010', '-97.55560'), ('VALLEY BROOK', 817, '35.40250', '-97.48200'), ('WARR ACRES', 9735, '35.52680', '-97.61770')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'LAC035': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('LAKE PROVIDENCE', 5104, '32.81060', '-91.18440')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'AKC122': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANCHOR POINT', 1845, '59.77070', '-151.81310'), ('CLAM GULCH', 173, '60.22470', '-151.40210'), ('COOPER LANDING', 369, '60.49110', '-149.79230'), ('CROWN POINT', 75, '60.42250', '-149.33750'), ('ENGLISH BAY', None, '59.34690', '-151.90350'), ('FOX RIVER', 616, '59.85830', '-150.95820'), ('FRITZ CREEK', 1603, '59.73610', '-151.29530'), ('HALIBUT COVE', 35, '59.58720', '-151.23770'), ('HAPPY VALLEY', 489, '59.94730', '-151.73220'), ('HOMER', 3946, '59.63550', '-151.52220'), ('HOPE', 137, '60.89720', '-149.63160'), ('JAKOLOF BAY', None, '59.44690', '-151.51040'), ('KACHEMAK', 431, '59.67400', '-151.43100'), ('KALIFONSKY', None, '60.41010', '-151.27980'), ('KASILOF', 471, '60.33290', '-151.22990'), ('KENAI', 6942, '60.55370', '-151.20740'), ('MOOSE PASS', 206, '60.46730', '-149.38840'), ('NIKISKI', 4327, '60.72520', '-151.38270'), ('NIKOLAEVSK', 345, '59.83230', '-151.58920'), ('NINILCHIK', 772, '60.07350', '-151.63130'), ('PORT GRAHAM', 171, '59.34850', '-151.83740'), ('PRIMROSE', 93, '60.37830', '-149.32280'), ('RIDGEWAY', 1932, '60.53200', '-151.08520'), ('SALAMATOF', 954, '60.61590', '-151.33740'), ('SELDOVIA', 286, '59.43910', '-151.70910'), ('SOLDOTNA', 3759, '60.48750', '-151.06440'), ('STERLING', 4705, '60.51520', '-150.79710'), ('TYONEK', 193, '61.06700', '-151.21520')], 'partOfState': '', 'wfo': 'AFC'}, -'WIC017': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BLOOMER', 3347, '45.10250', '-91.49080'), ('BOYD', 680, '44.95350', '-91.04010'), ('CADOTT', 1345, '44.95120', '-91.15120'), ('CHIPPEWA FALLS', 12925, '44.93250', '-91.39120'), ('CORNELL', 1466, '45.16250', '-91.15230'), ('LAKE WISSOTA', 2458, '44.92020', '-91.30250'), ('NEW AUBURN', 562, '45.19810', '-91.56500'), ('STANLEY', 1898, '44.96250', '-90.94280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'WIC011': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMA', 942, '44.33100', '-91.92220'), ('BUFFALO', None, '44.22350', '-91.86940'), ('COCHRANE', 435, '44.22880', '-91.83660'), ('CREAM', None, '44.31615', '-91.76509'), ('FOUNTAIN CITY', 983, '44.11980', '-91.69780'), ('GILMANTON', None, '44.46418', '-91.68285'), ('MARSHLAND', None, '44.08223', '-91.56041'), ('MAXVILLE', None, '44.56470', '-92.00267'), ('MISHA MOKWA', None, '44.51536', '-92.00267'), ('MODENA', None, '44.45139', '-91.79982'), ('MONDOVI', 2634, '44.56890', '-91.66950'), ('MONTANA', None, '44.34905', '-91.66640'), ('NELSON', 395, '44.42360', '-92.00490'), ('PRAAG', None, '44.38194', '-91.75047'), ('TELL', None, '44.38194', '-91.86744'), ('URNE', None, '44.50074', '-91.90033'), ('WAUMANDEE', None, '44.29788', '-91.69930')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'SDC025': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRADLEY', 112, '45.09010', '-97.64140'), ('BRADLEY', 112, '45.09010', '-97.64140'), ('CARPENTER', None, '44.63850', '-97.91450'), ('CARPENTER', None, '44.63850', '-97.91450'), ('CLARK', 1285, '44.88070', '-97.73380'), ('CLARK', 1285, '44.88070', '-97.73380'), ('CLARK COLONY', None, '44.78960', '-97.98020'), ('CLARK COLONY', None, '44.78960', '-97.98020'), ('CRANDALL', None, '45.15530', '-97.95560'), ('CRANDALL', None, '45.15530', '-97.95560'), ('CROCKER', None, '45.10530', '-97.78540'), ('CROCKER', None, '45.10530', '-97.78540'), ('FORDHAM COLONY', None, '44.76860', '-97.90920'), ('FORDHAM COLONY', None, '44.76860', '-97.90920'), ('GARDEN CITY', 72, '44.95790', '-97.58070'), ('GARDEN CITY', 72, '44.95790', '-97.58070'), ('HILLCREST COLONY', None, '44.95000', '-97.67750'), ('HILLCREST COLONY', None, '44.95000', '-97.67750'), ('NAPLES', 25, '44.77130', '-97.51260'), ('NAPLES', 25, '44.77130', '-97.51260'), ('RAYMOND', 86, '44.91110', '-97.93660'), ('RAYMOND', 86, '44.91110', '-97.93660'), ('VIENNA', 78, '44.70310', '-97.49910'), ('VIENNA', 78, '44.70310', '-97.49910'), ('WILLOW LAKE', 294, '44.62790', '-97.63780'), ('WILLOW LAKE', 294, '44.62790', '-97.63780')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDC027': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('IRENE', 432, '43.08370', '-97.15810'), ('MECKLING', None, '42.84070', '-97.07160'), ('VERMILLION', 9765, '42.78200', '-96.92660'), ('WAKONDA', 374, '43.00810', '-97.10540')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDC021': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARTAS', 13, '45.88770', '-99.80600'), ('ARTAS', 13, '45.88770', '-99.80600'), ('HERREID', 482, '45.83690', '-100.07520'), ('HERREID', 482, '45.83690', '-100.07520'), ('MOUND CITY', 84, '45.72680', '-100.06770'), ('MOUND CITY', 84, '45.72680', '-100.06770'), ('POLLOCK', 339, '45.90150', '-100.29020'), ('POLLOCK', 339, '45.90150', '-100.29020')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDC023': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('DANTE', 82, '43.03990', '-98.18640'), ('GEDDES', 252, '43.25400', '-98.69730'), ('LAKE ANDES', 819, '43.15570', '-98.53500'), ('MARTY', 421, '42.99290', '-98.42930'), ('PICKSTOWN', 168, '43.06690', '-98.53050'), ('PLATTE', 1367, '43.38740', '-98.84390'), ('RAVINIA', 79, '43.13600', '-98.42710'), ('WAGNER', 1675, '43.07810', '-98.30160')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FSD'}, -'WIC013': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALPHA', None, '45.77350', '-92.58030'), ('BRANSTAD', None, '45.73810', '-92.68290'), ('COOMER', None, '45.74760', '-92.25720'), ('DANBURY', None, '46.00670', '-92.37130'), ('FALUN', None, '45.77220', '-92.52810'), ('FOUR CORNERS', None, '45.67200', '-92.59110'), ('GRANTSBURG', 1369, '45.78060', '-92.68450'), ('HERTEL', None, '45.80860', '-92.17530'), ('RANDALL', None, '45.69620', '-92.83570'), ('RIVERSIDE', None, '46.07640', '-92.24780'), ('SIREN', 988, '45.78370', '-92.38000'), ('TRADE LAKE', None, '45.68980', '-92.59300'), ('TRADE RIVER', None, '45.64830', '-92.67320'), ('WEBB LAKE', None, '46.00950', '-92.13280'), ('WEBSTER', 653, '45.87860', '-92.36200'), ('YELLOWLAKE', None, '45.93580', '-92.37810')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'SDC029': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FLORENCE', 299, '45.05560', '-97.32590'), ('FLORENCE', 299, '45.05560', '-97.32590'), ('HENRY', 268, '44.88100', '-97.46260'), ('HENRY', 268, '44.88100', '-97.46260'), ('KRANZBURG', 185, '44.88650', '-96.90980'), ('KRANZBURG', 185, '44.88650', '-96.90980'), ('RAUVILLE', None, '44.97520', '-97.07630'), ('RAUVILLE', None, '44.97520', '-97.07630'), ('SANDY SHORE STATE PARK', None, '44.89410', '-97.24220'), ('SANDY SHORE STATE PARK', None, '44.89410', '-97.24220'), ('SOUTH SHORE', 270, '45.10170', '-96.93000'), ('SOUTH SHORE', 270, '45.10170', '-96.93000'), ('WALLACE', 86, '45.08510', '-97.47730'), ('WALLACE', 86, '45.08510', '-97.47730'), ('WATERTOWN', 20237, '44.91260', '-97.16660'), ('WATERTOWN', 20237, '44.91260', '-97.16660'), ('WAVERLY', None, '44.99920', '-96.97140'), ('WAVERLY', None, '44.99920', '-96.97140')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'ILC179': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARMINGTON', 368, '40.33990', '-89.31370'), ('CREVE COEUR', 5448, '40.64130', '-89.59970'), ('DEER CREEK', 605, '40.62930', '-89.33310'), ('DELAVAN', 1825, '40.37140', '-89.54490'), ('DILLON', None, '40.46670', '-89.53330'), ('EAST PEORIA', 22638, '40.67150', '-89.54780'), ('GREEN VALLEY', 728, '40.40640', '-89.64250'), ('GROVELAND', None, '40.61120', '-89.52500'), ('HOPEDALE', 929, '40.42180', '-89.41630'), ('MACKINAW', 1452, '40.53500', '-89.35850'), ('MARQUETTE HEIGHTS', 2794, '40.61720', '-89.60370'), ('MINIER', 1244, '40.43380', '-89.31400'), ('MORTON', 15198, '40.61120', '-89.46780'), ('PEKIN', 33857, '40.56820', '-89.62810'), ('POWERTON', None, '40.53330', '-89.68330'), ('SOUTH PEKIN', 1162, '40.49690', '-89.65180'), ('TREMONT', 2029, '40.52580', '-89.49030'), ('WASHINGTON', 10841, '40.69820', '-89.43510')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'IAC069': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALEXANDER', 165, '42.80480', '-93.47720'), ('COULTER', 262, '42.73330', '-93.37030'), ('GENEVA', 171, '42.67590', '-93.13000'), ('HAMPTON', 4218, '42.74500', '-93.20090'), ('HANSELL', 96, '42.75720', '-93.10340'), ('LATIMER', 535, '42.76320', '-93.36500'), ('POPEJOY', 78, '42.59410', '-93.42680'), ('SHEFFIELD', 930, '42.89440', '-93.21050')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAC067': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CARRVILLE', None, '43.01493', '-92.60211'), ('CHARLES CITY', 7812, '43.06730', '-92.67500'), ('COLWELL', 76, '43.15810', '-92.59150'), ('FLOYD', 361, '43.12840', '-92.73940'), ('FLOYD CROSSING', None, '43.07890', '-92.75197'), ('MARBLE ROCK', 326, '42.96470', '-92.86760'), ('NORA SPRINGS', 1532, '43.14400', '-93.00870'), ('OAKWOOD', None, '43.01493', '-92.78121'), ('POWERSVILLE', None, '42.93087', '-92.70080'), ('ROCKFORD', 907, '43.05280', '-92.94750'), ('ROSEVILLE', None, '43.01676', '-92.81045'), ('RUDD', 431, '43.12680', '-92.90480')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ARX'}, -'ILC175': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BRADFORD', 787, '41.17690', '-89.65720'), ('CASTLETON', None, '41.11670', '-89.70000'), ('DUNCAN', None, '40.98330', '-89.78330'), ('ELMIRA', None, '41.18330', '-89.83330'), ('LA FAYETTE', 227, '41.10980', '-89.97350'), ('LOMBARDVILLE', None, '41.23330', '-89.65000'), ('OSCEOLA', None, '41.21670', '-89.78330'), ('TOULON', 1400, '41.09450', '-89.86370'), ('WEST JERSEY', None, '41.01670', '-89.93330'), ('WYOMING', 1424, '41.06450', '-89.77230')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ILX'}, -'IAC065': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBANY', None, '42.86444', '-91.74912'), ('ALPHA', None, '42.99824', '-92.04972'), ('ARLINGTON', 490, '42.74870', '-91.67040'), ('BRAINARD', None, '42.93226', '-91.69964'), ('CLERMONT', 716, '43.00030', '-91.65330'), ('DONNAN', None, '42.90100', '-91.86930'), ('DOUGLAS', None, '43.01474', '-91.88292'), ('ELDORADO', None, '43.04956', '-91.84993'), ('ELGIN', 676, '42.95600', '-91.63440'), ('FAYETTE', 1300, '42.84040', '-91.80260'), ('HAWKEYE', 489, '42.93800', '-91.95090'), ('MAYNARD', 500, '42.77420', '-91.87690'), ('OELWEIN', 6692, '42.67630', '-91.91390'), ('ORAN', None, '42.69765', '-92.08454'), ('RANDALIA', 84, '42.86330', '-91.88620'), ('RICHFIELD', None, '42.94692', '-92.06438'), ('ST. LUCAS', 178, '43.06660', '-91.93390'), ('WADENA', 243, '42.83950', '-91.65800'), ('WAUCOMA', 299, '43.05530', '-92.03460'), ('WEST UNION', 2549, '42.95870', '-91.81260'), ('WESTGATE', 234, '42.76850', '-91.99510')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'ILC177': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AFOLKEY', None, '42.43330', '-89.56670'), ('BOLTON', None, '42.25000', '-89.73330'), ('BUENA VISTA', None, '42.43330', '-89.68330'), ('CEDARVILLE', 719, '42.37510', '-89.63650'), ('DAKOTA', 499, '42.38740', '-89.52710'), ('DAKOTA DORNINK AIRPORT', None, '42.38330', '-89.56670'), ('DAMASCUS', None, '42.36670', '-89.70000'), ('DAVIS', 662, '42.42220', '-89.41570'), ('ELEROY', None, '42.33330', '-89.76670'), ('FREEPORT', 26443, '42.29020', '-89.63470'), ('FREEPORT ALBERTUS AIRPORT', None, '42.25000', '-89.58330'), ('GERMAN VALLEY', 481, '42.21580', '-89.48380'), ('KENT', None, '42.31670', '-89.90000'), ('LAKE LEAQUANA', None, '42.41670', '-89.83330'), ('LENA', 2887, '42.38090', '-89.82580'), ('LORAN', None, '42.23330', '-89.91670'), ('LOST LAKE', None, '42.36670', '-89.48330'), ('MC CONNELL', None, '42.43330', '-89.73330'), ('OAKDALE NATURE PRESERVE', None, '42.23330', '-89.60000'), ('ONECO', None, '42.48330', '-89.66670'), ('ORANGEVILLE', 751, '42.46810', '-89.64470'), ('PEARL CITY', 780, '42.26770', '-89.82550'), ('RED OAK', None, '42.40000', '-89.66670'), ('RIDOTT', 159, '42.29750', '-89.47730'), ('RIDOTT CORNERS', None, '42.28330', '-89.48330'), ('ROCK CITY', 313, '42.41260', '-89.47080'), ('ROCK GROVE', None, '42.46670', '-89.51670'), ('SCIOTO MILLS', None, '42.35000', '-89.66670'), ('WADDAMS GROVE', None, '42.41670', '-89.88330'), ('WINNESHIEK', None, '42.35000', '-89.53330'), ('WINSLOW', 345, '42.49240', '-89.79630')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'IAC063': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARMSTRONG', 979, '43.39360', '-94.47900'), ('DOLLIVER', 77, '43.46490', '-94.61460'), ('ESTHERVILLE', 6656, '43.39940', '-94.83320'), ('GRUVER', 106, '43.39320', '-94.70310'), ('RINGSTED', 436, '43.29640', '-94.50660'), ('WALLINGFORD', 210, '43.32020', '-94.79200')], 'partOfState': 'NORTHWEST', 'wfo': 'DMX'}, -'ILC171': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALSEY', 246, '39.55930', '-90.43350'), ('BLUFFS', 748, '39.75000', '-90.53440'), ('EXETER', 70, '39.71900', '-90.49590'), ('GLASGOW', 170, '39.54970', '-90.47960'), ('MANCHESTER', 354, '39.54220', '-90.33040'), ('MERRITT', None, '39.71670', '-90.41670'), ('NAPLES', 134, '39.75390', '-90.60800'), ('OXVILLE', None, '39.70000', '-90.56670'), ('RIGGSTON', None, '39.68330', '-90.43330'), ('WINCHESTER', 1650, '39.62940', '-90.45660')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'IAC061': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ASBURY', 2450, '42.51470', '-90.75850'), ('BALLTOWN', 73, '42.63750', '-90.86850'), ('BALLYCLOUGH', None, '42.43330', '-90.71670'), ('BANKSTON', 27, '42.50870', '-90.96020'), ('BERNARD', 97, '42.31270', '-90.83100'), ('BUDD', None, '42.53330', '-90.81660'), ('CASCADE', 1958, '42.29910', '-91.00990'), ('CATTESE', None, '42.46670', '-90.63330'), ('CENTER GROVE', None, '42.48330', '-90.71670'), ('CENTRALIA', 101, '42.47230', '-90.83680'), ('COTTAGE HILL', None, '42.58330', '-90.91670'), ('DUBUQUE', 57686, '42.50450', '-90.69000'), ('DUBUQUE REGIONAL AIRPORT', None, '42.40000', '-90.71670'), ('DURANGO', 24, '42.56160', '-90.77350'), ('DYERSVILLE', 4035, '42.48040', '-91.11830'), ('EAST RICKARDSVILLE', None, '42.56670', '-90.85000'), ('EDMORE', None, '42.55000', '-90.68330'), ('EPWORTH', 1428, '42.44680', '-90.93420'), ('FARLEY', 1334, '42.44390', '-91.00670'), ('FILLMORE', None, '42.31670', '-90.91670'), ('FIVE POINTS', None, '42.55000', '-90.86670'), ('GRAF', 73, '42.49470', '-90.86890'), ('HOLY CROSS', 339, '42.60150', '-90.99630'), ('JULIEN', None, '42.48330', '-90.78330'), ('KEY WEST', None, '42.45000', '-90.68330'), ('KIDDER', None, '42.46670', '-90.93330'), ('KING', None, '42.40000', '-90.60000'), ('LATTNERVILLE', None, '42.48330', '-90.88330'), ('LORE', None, '42.51670', '-90.80000'), ('LUXEMBURG', 246, '42.60300', '-91.07300'), ('MASSEY', None, '42.43330', '-90.58330'), ('MEKEE', None, '42.50000', '-91.05000'), ('NEW VIENNA', 400, '42.54780', '-91.11340'), ('OLD BALLTOWN', None, '42.63330', '-90.86670'), ('PEOSTA', 651, '42.44880', '-90.85070'), ('RICKARDSVILLE', 191, '42.58360', '-90.87530'), ('ROCKDALE', None, '42.46670', '-90.68330'), ('ROSE', None, '42.56670', '-90.70000'), ('SAGEVILLE', 203, '42.54880', '-90.70370'), ('SHERRILL', 186, '42.60290', '-90.78200'), ('SPECHTS FERRY', None, '42.65000', '-90.73330'), ('WASHINGTON MILLS', None, '42.30000', '-90.78330'), ('WAUPETON', None, '42.66670', '-90.88330'), ('WHITE PINE HOLLOW STATE P', None, '42.63330', '-91.11670'), ('WORTHINGTON', 381, '42.39650', '-91.12060'), ('ZWINGLE', 100, '42.29780', '-90.68690')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'ILC173': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CLARKSBURG', None, '39.34000', '-88.75000'), ('COWDEN', 612, '39.24890', '-88.85880'), ('FINDLAY', 723, '39.52110', '-88.75430'), ('HERRICK', 524, '39.21920', '-88.98530'), ('LAKEWOOD', 2337, '39.32500', '-88.90000'), ('MOWEAQUA', 1923, '39.62540', '-89.01770'), ('OCONEE', 202, '39.28650', '-89.10620'), ('SHELBYVILLE', 4971, '39.40710', '-88.80400'), ('SIGEL', 386, '39.22620', '-88.49510'), ('STEWARDSON', 747, '39.26420', '-88.62990'), ('STRASBURG', 603, '39.35060', '-88.62320'), ('TOWER HILL', 609, '39.38680', '-88.95960'), ('TROWBRIDGE', None, '39.32100', '-88.53330'), ('WESTERVELT', None, '39.46670', '-88.86670'), ('WINDSOR', 1125, '39.43810', '-88.59580')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'AKC050': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AKIACHAK', 585, '60.87170', '-161.40360'), ('AKIAK', 309, '60.88570', '-161.19230'), ('ANIAK', 572, '61.58070', '-159.53910'), ('ATMAUTLUAK', 294, '60.85430', '-162.26900'), ('BETHEL', 5471, '60.76820', '-161.77220'), ('CHEFORNAK', 394, '60.15370', '-164.21030'), ('CHUATHBALUK', 119, '61.57320', '-159.21640'), ('CROOKED CREEK', 137, '61.87690', '-158.07780'), ('EEK', 280, '60.21890', '-162.02640'), ('KASIGLUK', 543, '60.88900', '-162.54570'), ('KIPNUK', 644, '59.92320', '-164.10100'), ('KWETHLUK', 713, '60.77180', '-161.38850'), ('LIME VILLAGE', 6, '61.43280', '-155.47250'), ('LOWER KALSKAG', 267, '61.51880', '-160.34990'), ('MEKORYUK', 210, '60.36570', '-166.28360'), ('NAPAKIAK', 353, '60.67690', '-161.97870'), ('NAPASKIAK', 390, '60.66380', '-161.73810'), ('NEWTOK', 321, '60.94940', '-164.64410'), ('NIGHTMUTE', 208, '60.44830', '-164.80410'), ('NUNAPITCHUK', 466, '60.87910', '-162.45250'), ('OSCARVILLE', 61, '60.69660', '-161.75920'), ('PLATINUM', 41, '58.97390', '-161.72520'), ('QUINHAGAK', 555, '59.73940', '-161.87240'), ('RED DEVIL', 48, '61.79030', '-157.34790'), ('SLEETMUTE', 100, '61.72110', '-157.18360'), ('STONY RIVER', 61, '61.79310', '-156.58080'), ('TULUKSAK', 428, '61.11580', '-160.93920'), ('TUNTUTULIAK', 370, '60.32630', '-162.74070'), ('TUNUNAK', 325, '60.57890', '-165.24480'), ('UPPER KALSKAG', 230, '61.53910', '-160.32890')], 'partOfState': '', 'wfo': 'AFCAFG'}, -'ORC009': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALSTON', None, '46.10000', '-123.06000'), ('APIARY', None, '46.01660', '-123.03330'), ('BIRKENFELD', None, '46.00000', '-123.33330'), ('CLATSKANIE', 1528, '46.10370', '-123.20500'), ('COLUMBIA CITY', 1571, '45.89740', '-122.81080'), ('GOBLE', None, '46.01660', '-122.88330'), ('KEASEY', None, '45.86660', '-123.33330'), ('MAYGER', None, '46.16660', '-123.10000'), ('MIST', None, '46.00000', '-123.25000'), ('PITTSBURG', None, '45.90000', '-123.16000'), ('PRESCOTT', 72, '46.04730', '-122.88580'), ('QUINCY', None, '46.15000', '-123.16660'), ('RAINIER', 1687, '46.09230', '-122.94640'), ('SCAPPOOSE', 4976, '45.75160', '-122.88050'), ('SPITZENBERG', None, '45.82000', '-122.94000'), ('ST. HELENS', 10019, '45.86060', '-122.81100'), ('VERNONIA', 2228, '45.86050', '-123.18520'), ('WARREN', None, '45.81660', '-122.85000')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'KSC023': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BIRD CITY', 482, '39.74990', '-101.53170'), ('ST. FRANCIS', 1497, '39.77140', '-101.80030'), ('WHEELER', None, '39.76000', '-101.71000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'ORC005': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BAGBY HOT SPRINGS', None, '44.92000', '-122.16000'), ('BARLOW', 140, '45.25240', '-122.72010'), ('BORING', None, '45.43300', '-122.38300'), ('BRIGHTWOOD', None, '45.37000', '-122.01700'), ('BULL RUN', None, '45.43330', '-122.23330'), ('CANBY', 12790, '45.26650', '-122.69170'), ('CHERRYVILLE', None, '45.36660', '-122.13330'), ('CLACKAMAS', 5177, '45.40860', '-122.55250'), ('COLTON', None, '45.18330', '-122.45000'), ('DAMASCUS', None, '45.41660', '-122.46660'), ('EAGLE CREEK', None, '45.36660', '-122.36660'), ('ESTACADA', 2371, '45.29220', '-122.33330'), ('GLADSTONE', 11438, '45.38580', '-122.59150'), ('GOVERNMENT CAMP', None, '45.30000', '-121.76700'), ('HAPPY VALLEY', 4519, '45.44380', '-122.53580'), ('JOHNSON CITY', 634, '45.40440', '-122.57790'), ('LAKE OSWEGO', 35278, '45.41220', '-122.69810'), ('MARQUAM', None, '45.06700', '-122.70000'), ('MILWAUKIE', 20490, '45.44420', '-122.61970'), ('MOLALLA', 5647, '45.14970', '-122.57800'), ('MULINO', None, '45.21700', '-122.58300'), ('OAK GROVE', 12808, '45.41350', '-122.63770'), ('OREGON CITY', 25754, '45.34490', '-122.59680'), ('RHODODENDRON', None, '45.33330', '-121.91660'), ('ROUND MOUNTAIN', None, '45.06000', '-122.11000'), ('SANDY', 5385, '45.39960', '-122.26670'), ('SCOTTS MILLS', 312, '45.04090', '-122.66810'), ('SHORTYS CORNER', None, '45.38000', '-122.22000'), ('SUNNYSIDE', 6791, '45.43220', '-122.55580'), ('TABLE ROCK', None, '44.96000', '-122.27000'), ('THREE LYNX', None, '45.12000', '-122.06000'), ('TIMOTHY LAKE', None, '45.12000', '-121.79000'), ('WELCHES', None, '45.33330', '-121.96660'), ('WEST LINN', 22261, '45.36850', '-122.63820'), ('WILSONVILLE', 13991, '45.30910', '-122.76630'), ('ZIGZAG', None, '45.34000', '-121.93300')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORC007': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ASTORIA', 9813, '46.18800', '-123.82050'), ('CAMP RILEA', None, '46.14000', '-123.95000'), ('CLATSOP SPIT', None, '46.22000', '-124.00000'), ('ELSIE', None, '45.86700', '-123.60000'), ('GEARHART', 995, '46.02500', '-123.91750'), ('HAMLET', None, '45.83000', '-123.68000'), ('HAMMOND', None, '46.19810', '-123.94680'), ('JEWELL', None, '45.93300', '-123.50000'), ('KLASKANINE SUMMIT', None, '46.05000', '-123.66000'), ('KNAPPA', None, '46.18300', '-123.58300'), ('NECANICUM', None, '45.90000', '-123.76000'), ('OLNEY', None, '46.10000', '-123.75000'), ('SADDLE MOUNTAIN', None, '45.97000', '-123.69000'), ('SEASIDE', 5900, '45.99020', '-123.92010'), ('SUNSET SUMMIT', None, '45.80000', '-123.46000'), ('SVENSON', None, '46.16660', '-123.66660'), ('TILLAMOOK HEAD', None, '45.94000', '-123.99000'), ('WARRENTON', 4096, '46.17030', '-123.92090'), ('WAUNA', None, '46.15000', '-123.40000'), ('WESTPORT', None, '46.13300', '-123.36700')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORC001': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('OXBOW DAM', None, '44.97000', '-116.85000'), ('BAKER', None, '44.77420', '-117.83160'), ('DURKEE', None, '44.58000', '-117.45000'), ('HAINES', 426, '44.91190', '-117.93900'), ('HALFWAY', 337, '44.87680', '-117.10900'), ('HUNTINGTON', 515, '44.35030', '-117.26600'), ('RICHLAND', 147, '44.76770', '-117.16760'), ('ROCK CREEK', None, '44.91670', '-118.03330'), ('SUMPTER', 171, '44.74380', '-118.19590'), ('UNITY', 131, '44.43680', '-118.18730')], 'partOfState': 'NORTHEAST', 'wfo': 'BOI'}, -'ORC003': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADAIR VILLAGE', 536, '44.67430', '-123.21770'), ('ALPINE', None, '44.33330', '-123.35000'), ('ALSEA', None, '44.40000', '-123.56700'), ('BLODGETT', None, '44.60000', '-123.51670'), ('CORVALLIS', 49322, '44.57100', '-123.27600'), ('GREENBERRY', None, '44.45000', '-123.27000'), ('HOSKINS', None, '44.68300', '-123.45000'), ('KINGS VALLEY', None, '44.70000', '-123.41700'), ('LEWISBURG', None, '44.63330', '-123.23330'), ('MONROE', 607, '44.31680', '-123.29850'), ('NORTH ALBANY', None, '44.66170', '-123.11360'), ('PHILOMATH', 3838, '44.54050', '-123.35710'), ('SUMMIT', None, '44.63330', '-123.56670'), ('WREN', None, '44.59000', '-123.42000')], 'partOfState': '', 'wfo': 'PQR'}, -'ARC125': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALEXANDER', 614, '34.63030', '-92.44280'), ('BAUXITE', 432, '34.55690', '-92.52600'), ('BENTON', 21906, '34.56920', '-92.57730'), ('BRYANT', 9764, '34.61240', '-92.49200'), ('HASKELL', 2645, '34.50550', '-92.63660'), ('SALEM', 2789, '34.62970', '-92.55550'), ('SHANNON HILLS', 2005, '34.62060', '-92.40850'), ('TRASKWOOD', 548, '34.45190', '-92.66670')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ILC197': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BEECHER', 2033, '41.34770', '-87.61490'), ('BOLINGBROOK', 56321, '41.70040', '-88.07720'), ('BRAIDWOOD', 5203, '41.26810', '-88.22320'), ('CHANNAHON', 7344, '41.43450', '-88.21860'), ('CREST HILL', 13329, '41.56630', '-88.10510'), ('CRETE', 7346, '41.45320', '-87.61510'), ('CRYSTAL LAWNS', 2933, '41.57030', '-88.15790'), ('ELWOOD', 1620, '41.41210', '-88.10900'), ('FAIRMONT', 2563, '41.56180', '-88.05990'), ('FRANKFORT', 10391, '41.49700', '-87.83590'), ('FRANKFORT SQUARE', 7766, '41.51890', '-87.80310'), ('GODLEY', 594, '41.23730', '-88.24460'), ('GOODINGS GROVE', 17084, '41.62160', '-87.94060'), ('INGALLS PARK', 3082, '41.52130', '-88.03390'), ('JOLIET', 106221, '41.52670', '-88.12240'), ('LAKEWOOD SHORES', 1487, '41.27080', '-88.13630'), ('LOCKPORT', 15191, '41.58940', '-88.04790'), ('MANHATTAN', 3330, '41.42600', '-87.98870'), ('MINOOKA', 3971, '41.44910', '-88.25770'), ('MOKENA', 14583, '41.53200', '-87.87570'), ('MONEE', 2924, '41.42200', '-87.75410'), ('NEW LENOX', 17771, '41.51870', '-87.98400'), ('PEOTONE', 3385, '41.33160', '-87.79630'), ('PLAINFIELD', 13038, '41.61590', '-88.20410'), ('PRESTON HEIGHTS', 2527, '41.49280', '-88.07310'), ('ROCKDALE', 1888, '41.50550', '-88.11820'), ('ROMEOVILLE', 21153, '41.64610', '-88.08630'), ('SHOREWOOD', 7686, '41.52320', '-88.20240'), ('STEGER', 9682, '41.46780', '-87.63500'), ('SYMERTON', 106, '41.32810', '-88.05450'), ('UNIVERSITY PARK', 6662, '41.44240', '-87.70960'), ('WILMINGTON', 5134, '41.29770', '-88.15960')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ARC127': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('WALDRON', 3508, '34.89970', '-94.09360')], 'partOfState': '', 'wfo': 'LZK'}, -'ILC195': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AGNEW', None, '41.78330', '-89.80000'), ('ALBANY', 895, '41.78560', '-90.21950'), ('BROOK HAVEN', None, '41.66670', '-89.91670'), ('COLETA', 155, '41.90560', '-89.79920'), ('COMO', None, '41.76670', '-89.76670'), ('DEER GROVE', 48, '41.61010', '-89.68460'), ('DENROCK', None, '41.70000', '-89.98330'), ('DOUGLAS PARK', None, '41.80000', '-89.73330'), ('EAST CLINTON', None, '41.83330', '-90.16670'), ('EMERSON', None, '41.80000', '-89.76670'), ('ERIE', 1589, '41.65870', '-90.08120'), ('FENTON', None, '41.73330', '-90.03330'), ('FRANKLIN CORNERS', None, '41.91670', '-89.91670'), ('FULTON', 3881, '41.86500', '-90.15870'), ('GALT', None, '41.78330', '-89.76670'), ('GARDEN PLAIN', None, '41.80000', '-90.13330'), ('GRIMES ADDITION', None, '41.80000', '-89.75000'), ('HAMILTON CORNERS', None, '41.70000', '-89.96670'), ('LEON CORNERS', None, '41.60000', '-89.91670'), ('LYNDON', 566, '41.71730', '-89.92520'), ('MALVERN', None, '41.85000', '-89.88330'), ('MORRISON', 4447, '41.80840', '-89.96540'), ('MORRISON-ROCKWOOD STATE P', None, '41.85000', '-89.96670'), ('NEWTON CORNERS', None, '41.73330', '-90.11670'), ('PENROSE', None, '41.88330', '-89.66670'), ('PORTLAND CORNERS', None, '41.66670', '-89.98330'), ('PROPHETSTOWN', 2023, '41.66970', '-89.93460'), ('ROCK FALLS', 9580, '41.77420', '-89.69110'), ('ROUND GROVE', None, '41.78330', '-89.86670'), ('SPRING HILL', None, '41.61670', '-90.05000'), ('STERLING', 15451, '41.79820', '-89.69150'), ('TAMPICO', 772, '41.63050', '-89.78550'), ('UNION GROVE', None, '41.83330', '-90.03330'), ('UNIONVILLE', None, '41.81670', '-89.98330'), ('USTICK', None, '41.88330', '-90.00000'), ('WHITE PIGEON', None, '41.88330', '-89.88330'), ('WHITESIDE COUNTY AIRPORT', None, '41.75000', '-89.68330'), ('YEOWARD ADDITION', None, '41.75000', '-89.66670')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ARC121': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ATTICA', None, '36.35000', '-91.00000'), ('BIGGERS', 355, '36.33200', '-90.80590'), ('DALTON', None, '36.41670', '-91.15000'), ('MAYNARD', 381, '36.42180', '-90.90190'), ("O'KEAN", 201, '36.16780', '-90.81720'), ('POCAHONTAS', 6518, '36.26350', '-90.96860'), ('RAVENDEN SPRINGS', 137, '36.31460', '-91.22400'), ('REYNO', 484, '36.36080', '-90.75790')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC193': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BURNT PRAIRIE', 58, '38.25050', '-88.25770'), ('CARMI', 5422, '38.08640', '-88.17120'), ('CROSSVILLE', 782, '38.16260', '-88.06450'), ('ENFIELD', 625, '38.10170', '-88.33730'), ('GRAYVILLE', 1725, '38.25980', '-87.99690'), ('MAUNIE', 177, '38.03510', '-88.04530'), ('MILL SHOALS', 235, '38.25140', '-88.34510'), ('NORRIS CITY', 1057, '37.97950', '-88.32820'), ('PHILLIPSTOWN', 28, '38.14070', '-88.01920'), ('SPRINGERTON', 134, '38.17890', '-88.35490')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'ARC123': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CALDWELL', 465, '35.07930', '-90.81510'), ('COLT', 368, '35.13250', '-90.81230'), ('FORREST CITY', 14774, '35.01440', '-90.78530'), ('HUGHES', 1867, '34.94850', '-90.47130'), ('MADISON', 987, '35.01940', '-90.73050'), ('NEW HOME', None, '35.03330', '-90.56670'), ('PALESTINE', 741, '34.97030', '-90.90500'), ('WHEATLEY', 372, '34.91880', '-91.10730'), ('WIDENER', 335, '35.02200', '-90.68240')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC191': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CISNE', 673, '38.51400', '-88.43710'), ('FAIRFIELD', 5421, '38.38040', '-88.36900'), ('GOLDEN GATE', 100, '38.35860', '-88.20550'), ('JEFFERSONVILLE', 366, '38.44300', '-88.40470'), ('JOHNSONVILLE', 69, '38.52060', '-88.53720'), ('KEENES', 99, '38.33790', '-88.64120'), ('MOUNT ERIE', 105, '38.51460', '-88.23270'), ('SIMS', 273, '38.36120', '-88.53500'), ('WAYNE CITY', 1089, '38.34870', '-88.58740')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'ARC129': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('GILBERT', 33, '35.99020', '-92.71820'), ('LESLIE', 482, '35.82940', '-92.55590'), ('MARSHALL', 1313, '35.90990', '-92.63620'), ('PINDALL', 95, '36.05830', '-92.86530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ILC199': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BUSH', 257, '37.84190', '-89.12980'), ('CAMBRIA', 1330, '37.77860', '-89.11430'), ('CARTERVILLE', 4616, '37.76170', '-89.08270'), ('COLP', 224, '37.80750', '-89.07790'), ('CRAINVILLE', 992, '37.75030', '-89.06010'), ('CREAL SPRINGS', 702, '37.61860', '-88.83760'), ('ENERGY', 1175, '37.77540', '-89.02580'), ('FREEMAN SPUR', 273, '37.85990', '-88.99980'), ('HERRIN', 11298, '37.80160', '-89.03160'), ('HURST', 805, '37.83560', '-89.14340'), ('JOHNSTON CITY', 3557, '37.82160', '-88.92550'), ('MARION', 16035, '37.73280', '-88.94130'), ('PITTSBURG', 575, '37.77670', '-88.85030'), ('SPILLERTOWN', 220, '37.76590', '-88.92110'), ('WHITEASH', 268, '37.78520', '-88.93050')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'NEC079': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALDA', 652, '40.86470', '-98.46880'), ('CAIRO', 790, '41.00160', '-98.60770'), ('DONIPHAN', 763, '40.77350', '-98.37120'), ('GRAND ISLAND', 42940, '40.92180', '-98.36590'), ('WOOD RIVER', 1204, '40.82180', '-98.59790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC075': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ASHBY', None, '42.02650', '-101.93500'), ('HYANNIS', 287, '42.00040', '-101.76060'), ('WHITMAN', None, '42.04400', '-101.53700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEC077': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('GREELEY', None, '41.54820', '-98.53000'), ('SCOTIA', 308, '41.46830', '-98.70250'), ('SPALDING', 537, '41.68840', '-98.36200'), ('WOLBACH', 287, '41.40080', '-98.39170')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'NYC021': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ANCRAM', None, '42.05130', '-73.63530'), ('AUSTERLITZ', None, '42.32000', '-73.47000'), ('CHATHAM', 1758, '42.36130', '-73.59790'), ('CLAVERACK', None, '42.22320', '-73.72490'), ('CLERMONT', None, '42.08980', '-73.82930'), ('COPAKE', None, '42.10000', '-73.55000'), ('ELIZAVILLE', None, '42.04920', '-73.79470'), ('HUDSON', 7524, '42.25130', '-73.78650'), ('KINDERHOOK', 1275, '42.39460', '-73.70410'), ('LIVINGSTON', None, '42.13930', '-73.76320'), ('NEW LEBANON', None, '42.46880', '-73.39250'), ('NIVERVILLE', 1737, '42.44550', '-73.64880'), ('PHILMONT', 1480, '42.24830', '-73.64670'), ('STOTTVILLE', 1355, '42.28920', '-73.75230'), ('VALATIE', 1712, '42.41480', '-73.67670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NEC071': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BURWELL', 1130, '41.78000', '-99.13390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEC073': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ELWOOD', 761, '40.58960', '-99.86160'), ('JOHNSON LAKE', None, '40.68000', '-99.85000'), ('SMITHFIELD', 68, '40.57320', '-99.74090')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'SCC081': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('MONETTA', 220, '33.84980', '-81.61050'), ('RIDGE SPRING', 823, '33.84520', '-81.66270'), ('SALUDA', 3066, '34.00070', '-81.77150'), ('WARD', 110, '33.85720', '-81.73230')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'IDC049': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BURGDORF', None, '45.27722', '-115.91194'), ('CANFIELD', None, '45.83778', '-116.37083'), ('CLEARWATER', None, '46.02250', '-115.89000'), ('COPPERVILLE', None, '45.75306', '-116.32333'), ('COTTONWOOD', 944, '46.04861', '-116.34861'), ('EAST KAMIAH', None, '46.20278', '-116.00694'), ('ELK CITY', None, '45.82694', '-115.43583'), ('FALL CREEK', None, '45.81222', '-115.65167'), ('FENN', None, '45.96333', '-116.25528'), ('FERDINAND', 145, '46.15250', '-116.38833'), ('GLENWOOD', None, '46.24417', '-115.83194'), ('GOLDEN', None, '45.81222', '-115.67889'), ('GRANGEVILLE', 3228, '45.92667', '-116.12139'), ('HARPSTER', None, '45.98667', '-115.96250'), ('KEUTERVILLE', None, '46.03417', '-116.44056'), ('KOOSKIA', 675, '46.14500', '-115.97694'), ('LOWELL', None, '46.14417', '-115.59472'), ('LUCILE', None, '45.53528', '-116.30944'), ('MACKAY BAR', None, '45.37611', '-115.50528'), ('NEWSOME', None, '45.90750', '-115.62917'), ('OROGRANDE', None, '45.70556', '-115.54250'), ('PARDEE', None, '46.29861', '-116.12444'), ('POLLOCK', None, '45.31250', '-116.35806'), ('POWELL', None, '46.57917', '-114.71778'), ('RED RIVER HOT SPRINGS', None, '45.78778', '-115.19917'), ('RIGGINS', 410, '45.42222', '-116.31444'), ('RIGGINS HOT SPRINGS', None, '45.41694', '-116.17083'), ('SLATE CREEK', None, '45.63833', '-116.27944'), ('STITES', 226, '46.09167', '-115.97528'), ('SYRINGA', None, '46.15083', '-115.72611'), ('WARREN', None, '45.26417', '-115.67556'), ('WHITE BIRD', 106, '45.76167', '-116.29972'), ('WINONA', None, '46.13222', '-116.10694'), ('WOODLAND', None, '46.31111', '-116.06750')], 'partOfState': 'CENTRAL', 'wfo': 'MSO'}, -'SCC083': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BOILING SPRINGS SC', None, '35.04500', '-81.97670'), ('CAMPOBELLO', 449, '35.11660', '-82.14940'), ('CHESNEE', 1003, '35.14790', '-81.86280'), ('COWPENS', 2279, '35.01880', '-81.80360'), ('CROSS ANCHOR', None, '34.64280', '-81.85810'), ('DUNCAN', 2870, '34.93560', '-82.13700'), ('ENOREE', None, '34.65640', '-81.96530'), ('FINGERVILLE', None, '35.13390', '-82.00670'), ('INMAN', 1884, '35.05200', '-82.09330'), ('LANDRUM', 2472, '35.17420', '-82.18700'), ('LYMAN', 2659, '34.95140', '-82.12330'), ('MAYO', 1842, '35.08450', '-81.85440'), ('MOORE', None, '34.83330', '-81.99220'), ('PACOLET', 2690, '34.89920', '-81.76670'), ('PACOLET MILLS', None, '34.91860', '-81.74720'), ('PAULINE', None, '34.83310', '-81.87250'), ('REIDVILLE', 478, '34.86280', '-82.11440'), ('ROEBUCK', 1725, '34.87610', '-81.96420'), ('SPARTANBURG', 39673, '34.94490', '-81.92830'), ('WELLFORD', 2030, '34.95680', '-82.09720'), ('WOODRUFF', 4229, '34.74040', '-82.03280')], 'partOfState': '', 'wfo': 'GSP'}, -'SCC085': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CHERRYVALE', 2461, '33.95530', '-80.45950'), ('EAST SUMTER', 1220, '33.92540', '-80.29630'), ('MAYESVILLE', 1001, '33.98710', '-80.20740'), ('MILLWOOD', 885, '33.90970', '-80.39420'), ('MULBERRY', 841, '33.95190', '-80.33310'), ('OAKLAND', 1272, '33.98790', '-80.49950'), ('PINEWOOD', 459, '33.73930', '-80.46270'), ('SOUTH SUMTER', 3365, '33.88840', '-80.34040'), ('SUMTER', 39643, '33.94440', '-80.39250')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'MOC009': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BUTTERFIELD', 397, '36.75000', '-93.90750'), ('CASSVILLE', 2890, '36.67680', '-93.86850'), ('EAGLE ROCK', None, '36.54800', '-93.75410'), ('EXETER', 707, '36.67210', '-93.94080'), ('GOLDEN', None, '36.52410', '-93.65360'), ('JENKINS', None, '36.77850', '-93.68580'), ('MADRY', None, '36.86930', '-93.71990'), ('MCDOWELL', None, '36.82410', '-93.79300'), ('MONETT', 7396, '36.92110', '-93.92740'), ('PIONEER', None, '36.83580', '-94.05740'), ('PLEASANT RIDGE', None, '36.89630', '-93.79130'), ('PURDY', 1103, '36.81710', '-93.92040'), ('RIDGLEY', None, '36.69710', '-94.01990'), ('SELIGMAN', 877, '36.52240', '-93.93940'), ('SHELL KNOB', 1393, '36.63210', '-93.63410'), ('WASHBURN', 448, '36.58690', '-93.96580'), ('WAYNE', None, '36.63740', '-93.96190'), ('WHEATON', 721, '36.76270', '-94.05580'), ('WHEELERVILLE', None, '36.83600', '-93.62910')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'SCC089': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CADES', None, '33.78640', '-79.78280'), ('CEDAR SWAMP', None, '33.65670', '-79.66750'), ('COOPER', None, '33.56610', '-79.61030'), ('EARLES', None, '33.46670', '-79.63330'), ('FOWLWER', None, '33.70250', '-79.69690'), ('GOURDIN', None, '33.48330', '-79.89610'), ('GREELEYVILLE', 452, '33.58080', '-79.98920'), ('HEBRON CROSSROADS', None, '33.81640', '-79.88720'), ('HEINEMAN', None, '33.55250', '-79.93360'), ('HEMINGWAY', 573, '33.75360', '-79.44780'), ('HENRY', None, '33.68530', '-79.49780'), ('INDIANTOWN', None, '33.72500', '-79.55970'), ('KELLEHAN CROSSROADS', None, '33.59060', '-79.67940'), ('KINGSTREE', 3496, '33.66750', '-79.83080'), ('LANE', 585, '33.52480', '-79.88050'), ('MOUZON', None, '33.73440', '-79.92690'), ('NESMITH', None, '33.65890', '-79.51360'), ('NEW MORRISVILLE', None, '33.60000', '-79.53330'), ('RHEMS', None, '33.59280', '-79.44140'), ('SALTERS', None, '33.59280', '-79.85170'), ('STUCKEY', 263, '33.73090', '-79.51290'), ('TRIO', None, '33.48580', '-79.71780'), ('WARSAW', None, '33.50830', '-79.55060')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'IDC041': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BANIDA', None, '42.23000', '-111.93000'), ('CLIFTON', 213, '42.18770', '-112.00510'), ('DAYTON', 444, '42.11300', '-111.97640'), ('FRANKLIN', 641, '42.01610', '-111.80230'), ('MAPLETON', None, '42.08000', '-111.75000'), ('MINK CREEK', None, '42.23000', '-111.72000'), ('OXFORD', 53, '42.25980', '-112.01660'), ('PRESTON', 4682, '42.09730', '-111.87450'), ('RIVERDALE', None, '42.17000', '-111.83000'), ('THATCHER', None, '42.42000', '-111.72000'), ('WESTON', 425, '42.03840', '-111.97710'), ('WHITNEY', None, '42.07000', '-111.83000')], 'partOfState': 'SOUTHEAST', 'wfo': 'SLC'}, -'MOC005': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLANCHARD', 61, '40.58080', '-95.22060'), ('FAIRFAX', 645, '40.33950', '-95.39170'), ('PHELPS CITY', None, '40.40270', '-95.59810'), ('ROCK PORT', 1395, '40.41140', '-95.51640'), ('ROCKPORT', None, '40.41670', '-95.51670'), ('TARKIO', 1935, '40.44310', '-95.38380'), ('WATSON', 121, '40.48010', '-95.62310'), ('WESTBORO', 163, '40.53580', '-95.32190')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'IDC043': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ASHTON', 1129, '44.07340', '-111.44860'), ('BIG SPRINGS', None, '44.50000', '-111.25000'), ('CHESTER', None, '44.00000', '-111.57000'), ('DRUMMOND', 15, '43.99890', '-111.34160'), ('EGIN', None, '43.93000', '-111.83000'), ('ISLAND PARK', 215, '44.55690', '-111.33700'), ('MACKS INN', None, '44.50000', '-111.33000'), ('MARYSVILLE', None, '44.07000', '-111.42000'), ('NEWDALE', 358, '43.88610', '-111.60410'), ('PARKER', 319, '43.95860', '-111.75840'), ('REA', None, '44.47000', '-111.43000'), ('SQUIRREL', None, '44.03000', '-111.30000'), ('ST. ANTHONY', 3342, '43.96620', '-111.68370'), ('TETON', 569, '43.88780', '-111.66850'), ('WARM RIVER', 10, '44.11960', '-111.32270')], 'partOfState': '', 'wfo': 'PIHRIW'}, -'MOC003': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AMAZONIA', 277, '39.88830', '-94.89190'), ('BOLCKOW', 234, '40.11560', '-94.82060'), ('COSBY', 143, '39.86350', '-94.67950'), ('COUNTRY CLUB', 1846, '39.82760', '-94.82690'), ('FILLMORE', 211, '40.02550', '-94.97300'), ('REA', 56, '40.06110', '-94.76410'), ('ROSENDALE', 180, '40.04260', '-94.82490'), ('SAVANNAH', 4762, '39.93880', '-94.82780'), ('WHITESVILLE', None, '40.06670', '-94.73330')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'IDC045': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('EMMETT', 5490, '43.87390', '-116.49390'), ('OLA', None, '44.17970', '-116.28080'), ('SWEET', None, '43.96470', '-116.31500')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'MOC001': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRASHEAR', 280, '40.14790', '-92.37840'), ('CANNON MEM ARPT', None, '40.10000', '-92.55000'), ('GIBBS', 100, '40.09800', '-92.41630'), ('KIRKSVILLE', 16988, '40.19510', '-92.57840'), ('MILLARD', 75, '40.10710', '-92.54530'), ('NOVINGER', 534, '40.23410', '-92.70590')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'IDC047': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BLISS', 275, '42.92620', '-114.94910'), ('GOODING', 3384, '42.93810', '-114.71260'), ('HAGERMAN', 656, '42.81700', '-114.89670'), ('WENDELL', 2338, '42.77610', '-114.70180')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BOI'}, -'VAC029': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ANDERSONVILLE', None, '37.46670', '-78.56670'), ('BUCKINGHAM', None, '37.55000', '-78.55000'), ('CENTENARY', None, '37.70000', '-78.51670'), ('DILLWYN', 447, '37.54020', '-78.46160'), ('DILLWYN', 447, '37.53330', '-78.45000'), ('GOLD HILL', None, '37.61670', '-78.36670'), ('NEW CANTON', None, '37.70000', '-78.30000'), ('SHEPPARDS', None, '37.38330', '-78.48330'), ('TOGA', None, '37.50000', '-78.61670'), ('WINGINA', None, '37.63330', '-78.71670')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'PRC147': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ESPERANZA', 1092, '18.10320', '-65.48000')], 'partOfState': '', 'wfo': 'SJU'}, -'COC069': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BELLVUE', None, '40.63000', '-105.17000'), ('BERTHOUD', 4839, '40.30570', '-105.08120'), ('BUCKEYE', None, '40.80000', '-105.12000'), ('BUCKHORN MOUNTAIN', None, '40.61300', '-105.32500'), ('CAMERON PASS', None, '40.51700', '-105.88300'), ('CAMPION', 1832, '40.34470', '-105.09500'), ('DEER RIDGE', None, '40.38000', '-105.60000'), ('DRAKE', None, '40.43000', '-105.33000'), ('ESTES PARK', 5413, '40.37210', '-105.52100'), ('FORT COLLINS', 118652, '40.55550', '-105.06850'), ('FOUR CORNERS', None, '40.87100', '-105.91300'), ('GLEN HAVEN', None, '40.45000', '-105.43000'), ('GLENDEVEY', None, '40.78000', '-105.95000'), ('HARMONY', None, '40.52500', '-105.08300'), ('HORSETOOTH MOUNTAIN', None, '40.53900', '-105.19200'), ('KELIM', None, '40.40000', '-104.95000'), ('LAPORTE', 2691, '40.62000', '-105.13000'), ('LIVERMORE', None, '40.75000', '-105.23000'), ("LONG'S PEAK", None, '40.25800', '-105.61300'), ('LOVELAND', 50608, '40.41860', '-105.07170'), ('LOVELAND HEIGHTS', None, '40.38000', '-105.19000'), ('MASONVILLE', None, '40.48000', '-105.20000'), ('MISHOWAKA', None, '40.69000', '-105.36700'), ('OLYMPUS HGT', None, '40.38000', '-105.47000'), ('OWL CANYON', None, '40.72000', '-105.13000'), ('PINGREE PARK', None, '40.56700', '-105.58300'), ('POUDRE PARK', None, '40.68000', '-105.30000'), ('RED FEATHER LAKES', 525, '40.80000', '-105.58000'), ('RUSTIC', None, '40.70000', '-105.57000'), ('TEDS PLACE', None, '40.67000', '-105.18000'), ('TIMNATH', 223, '40.52930', '-104.98320'), ('TRAIL RIDGE', None, '40.43300', '-105.75000'), ('VIRGINIA DALE', None, '40.95000', '-105.35000'), ('WELLINGTON', 2672, '40.70280', '-105.00190')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BOU'}, -'MNC049': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELLECHESTER', 172, '44.37090', '-92.51170'), ('CANNON FALLS', 3795, '44.51650', '-92.90260'), ('DENNISON', 168, '44.40340', '-93.02870'), ('GOODHUE', 778, '44.40060', '-92.62160'), ('KENYON', 1661, '44.27240', '-92.98580'), ('PINE ISLAND', 2337, '44.20490', '-92.64960'), ('RED WING', 16116, '44.58190', '-92.60210'), ('WANAMINGO', 1007, '44.30530', '-92.79150'), ('ZUMBROTA', 2789, '44.29450', '-92.67260')], 'partOfState': 'SOUTHEAST', 'wfo': 'MPX'}, -'COC063': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BETHUNE', 225, '39.30350', '-102.42290'), ('BURLINGTON', 3678, '39.30540', '-102.27220'), ('FLAGLER', 612, '39.29400', '-103.06530'), ('SEIBERT', 180, '39.29810', '-102.86840'), ('STRATTON', 669, '39.30300', '-102.60380'), ('VONA', 95, '39.30270', '-102.74360')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GLD'}, -'COC061': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARLINGTON', None, '38.33000', '-103.33000'), ('BRANDON', None, '38.45000', '-102.43000'), ('CHIVINGTON', None, '38.44000', '-102.53000'), ('EADS', 747, '38.48150', '-102.77940'), ('HASWELL', 84, '38.45280', '-103.16390'), ('NEE GRANDE RESERVOIR', None, '38.30000', '-102.75000'), ('NEE NOSHE RESERVOIR', None, '38.34000', '-102.69000'), ('QUEENS RESERVOIR', None, '38.29000', '-102.64000'), ('SHERIDAN LAKE', 66, '38.46600', '-102.29350'), ('SWEETWATER RESERVOIR', None, '38.35000', '-102.76000'), ('TOWNER', None, '38.47000', '-102.08000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COC067': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALLISON', None, '37.02000', '-107.50000'), ('BAYFIELD', 1549, '37.23420', '-107.59490'), ('BONDAD', None, '37.08000', '-107.88000'), ('BREEN', None, '37.18000', '-108.08000'), ('DURANGO', 13922, '37.28600', '-107.86940'), ('FALFA', None, '37.20000', '-107.78000'), ('HERMOSA', None, '37.42000', '-107.85000'), ('HESPERUS', None, '37.28000', '-108.03000'), ('IGNACIO', 669, '37.11680', '-107.63440'), ('KLINE', None, '37.13000', '-108.12000'), ('LA PLATA', None, '37.40000', '-108.07000'), ('MARVEL', None, '37.12000', '-108.13000'), ('MAYDAY', None, '37.35000', '-108.07000'), ('OXFORD', None, '37.17000', '-107.72000'), ('REDMESA', None, '37.10000', '-108.17000'), ('ROCKWOOD', None, '37.50000', '-107.80000'), ('TACOMA', None, '37.48000', '-107.77000'), ('TIFFANY', None, '37.03000', '-107.53000'), ('TRIMBLE', None, '37.40000', '-107.85000'), ('VALLECITO', None, '37.38000', '-107.60000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COC065': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BUCKTOWN', None, '39.22000', '-106.30000'), ('CLIMAX', None, '39.37000', '-106.18000'), ('INDEPENDENCE PASS', None, '39.10800', '-106.56400'), ('LEADVILLE', 2821, '39.24680', '-106.29380'), ('MOSQUITO PASS', None, '39.28000', '-106.18000'), ('MT ELBERT', None, '39.11500', '-106.44600'), ('MT MASSIVE', None, '39.18300', '-106.47500'), ('STRINGTOWN', None, '39.23000', '-106.32000'), ('TURQUOISE LAKE', None, '39.27000', '-106.38000'), ('TWIN LAKES DAM', None, '39.08000', '-106.38000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'MTC059': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CHECKERBOARD', None, '46.57250', '-110.54610'), ('MARTINSDALE', None, '46.45830', '-110.31250'), ('RINGLING', None, '46.27170', '-110.80640'), ('WHITE SULPHUR SPRINGS', 984, '46.54720', '-110.90390')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, -'CAC067': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ANTELOPE', None, '38.70830', '-121.32880'), ('ARCO ARENA', None, '38.65160', '-121.52220'), ('ARDEN-ARCADE', 96025, '38.60110', '-121.37670'), ('BRUCEVILLE', None, '38.33580', '-121.41610'), ('CAL EXPO', None, '38.59110', '-121.43420'), ('CARMICHAEL', 49742, '38.63390', '-121.31880'), ('CITRUS HEIGHTS', 85071, '38.69170', '-121.28670'), ('ELK GROVE', 59984, '38.40080', '-121.36750'), ('ELVERTA', None, '38.71380', '-121.46160'), ('FAIR OAKS', 28008, '38.64850', '-121.24720'), ('FLORIN', 27653, '38.49610', '-121.40770'), ('FOLSOM', 51884, '38.67670', '-121.14620'), ('FRANKLIN', None, '38.37920', '-121.45330'), ('FREEPORT', None, '38.46190', '-121.50050'), ('GALT', 19472, '38.26860', '-121.30120'), ('ISLETON', 828, '38.16140', '-121.60430'), ('LAGUNA', 34309, '38.42110', '-121.42270'), ('MATHER AFB', None, '38.54840', '-121.27720'), ('NATOMAS', None, '38.65500', '-121.18030'), ('NORTH HIGHLANDS', 44187, '38.66770', '-121.38040'), ('ORANGEVALE', 26705, '38.68830', '-121.21730'), ('RANCHO CORDOVA', 55060, '38.59540', '-121.30020'), ('RANCHO MURIETA', 4193, '38.50190', '-121.09360'), ('RANCHO SECO PARK', None, '38.33890', '-121.09310'), ('RIO LINDA', 10466, '38.68760', '-121.45820'), ('ROSEMONT', 22904, '38.54720', '-121.35080'), ('SACRAMENTO', 407018, '38.56690', '-121.46740'), ('SACRAMENTO ZOO', None, '38.53920', '-121.50250'), ('SHELDON', None, '38.43080', '-121.29920'), ('SLOUGHHOUSE', None, '38.49580', '-121.19280'), ('THORNTON', None, '38.33610', '-121.42360'), ('WALNUT GROVE', 669, '38.24220', '-121.51060'), ('WILTON', 4551, '38.41900', '-121.20760')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'VAC775': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('SALEM CITY', None, '37.28670', '-80.05640')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'MTC053': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('EUREKA', 1017, '48.87590', '-115.05250'), ('FORTINE', 169, '48.76444', '-114.90222'), ('HAPPYS INN', None, '48.08333', '-115.13944'), ('KOOTENAI FALLS', None, '48.44806', '-115.78167'), ('LIBBY', 2626, '48.38833', '-115.55500'), ('REXFORD', 151, '48.89944', '-115.17111'), ('STRYKER', None, '48.67417', '-114.76917'), ('TREGO', None, '48.70528', '-114.86833'), ('TROY', 957, '48.46333', '-115.88861'), ('YAAK', None, '48.83306', '-115.70778'), ('YAKT', None, '48.54556', '-115.96778')], 'partOfState': 'NORTHWEST', 'wfo': 'MSO'}, -'MTC051': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CHESTER', 871, '48.51110', '-110.96590'), ('JOPLIN', 210, '48.56080', '-110.77170'), ('LOTHAIR', None, '48.47170', '-111.23140'), ('WHITLASH', None, '48.90830', '-111.25220')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTC057': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ALDER', 116, '45.32390', '-112.10640'), ('CAMERON', None, '45.20330', '-111.67780'), ('ENNIS', 840, '45.34530', '-111.72970'), ('HARRISON', 162, '45.70080', '-111.78560'), ('JEFFERS', None, '45.34890', '-111.70470'), ('LAURIN', None, '45.35280', '-112.11720'), ('MCALLISTER', None, '45.44440', '-111.73140'), ('NORRIS', None, '45.56810', '-111.69000'), ('PONY', None, '45.65860', '-111.89080'), ('SHERIDAN', 659, '45.45710', '-112.19150'), ('SILVER STAR', None, '45.69030', '-112.28220'), ('TWIN BRIDGES', 400, '45.54340', '-112.33260'), ('VIRGINIA CITY', 130, '45.29860', '-111.93550'), ('WATERLOO', None, '45.72190', '-112.19140')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'MTC055': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BROCKWAY', None, '47.29770', '-105.76190'), ('CIRCLE', 644, '47.41660', '-105.59800'), ('FLOWING WELLS REST AREA', None, '47.32550', '-106.17050'), ('NELSON CREEK RECREATION A', None, '47.55910', '-106.22510'), ('VIDA', None, '47.83190', '-105.49250'), ('WATKINS', None, '47.24270', '-105.87270'), ('WELDON', None, '47.61250', '-105.89160')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MIC063': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAD AXE', 3462, '43.80280', '-82.99690'), ('BAY PORT', None, '43.84830', '-83.37090'), ('CASEVILLE', 888, '43.94220', '-83.27460'), ('ELKTON', 863, '43.81890', '-83.18070'), ('HARBOR BEACH', 1837, '43.84660', '-82.65490'), ('HELENA', None, '43.77470', '-82.69080'), ('HURON CITY', None, '44.02920', '-82.83280'), ('IVANHOE', None, '43.70520', '-83.09780'), ('KINDE', 534, '43.93990', '-82.99490'), ('OWENDALE', 296, '43.72700', '-83.26770'), ('PARISVILLE', None, '43.71390', '-82.79940'), ('PIGEON', 1207, '43.82950', '-83.27000'), ('PINNEBOG', None, '43.93530', '-83.10390'), ('PORT AUSTIN', 737, '44.04270', '-82.99530'), ('PORT HOPE', 310, '43.93960', '-82.71510'), ('RAPSON', None, '43.85610', '-82.88250'), ('REDMAN', None, '43.92920', '-82.83420'), ('SEBEWAING', 1974, '43.73180', '-83.45100'), ('UBLY', 873, '43.71090', '-82.93460'), ('WHITE ROCK', None, '43.70990', '-82.61500')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIC061': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLOUEZ', None, '47.28700', '-88.40900'), ('ALSTON', None, '46.77000', '-88.73000'), ('BOB LAKE', None, '46.66600', '-88.90900'), ('CALUMET', 879, '47.24740', '-88.45320'), ('CHASSELL', None, '47.03000', '-88.53000'), ('COPPER CITY', 205, '47.28450', '-88.38690'), ('DONKEN', None, '46.95000', '-88.78000'), ('ECHO LAKE', None, '46.61300', '-88.84800'), ('HANCOCK', 4323, '47.13230', '-88.60070'), ('HOUGHTON', 7010, '47.11360', '-88.56180'), ('HUBBELL', 1105, '47.17940', '-88.43650'), ('KENTON', None, '46.48000', '-88.88000'), ('LAKE LINDEN', 1081, '47.19510', '-88.40350'), ('LAURIUM', 2126, '47.23650', '-88.43760'), ('NISULA', None, '46.76500', '-88.79400'), ('PAINESDALE', None, '47.03000', '-88.68000'), ('REDRIDGE', None, '47.15000', '-88.77000'), ('RICE LAKE', None, '47.16400', '-88.28500'), ('SIDNAW', None, '46.50000', '-88.70000'), ('SOUTH RANGE', 727, '47.07030', '-88.64460'), ('TAPIOLA', None, '46.92000', '-88.62000'), ('TOIVOLA', None, '47.00000', '-88.75000'), ('TWIN LAKES', None, '46.90000', '-88.83000'), ('WINONA', None, '46.88000', '-88.90000')], 'partOfState': '', 'wfo': 'MQT'}, -'VAC027': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('DAVENPORT', None, '37.10060', '-82.13710'), ('GRUNDY', 1105, '37.27680', '-82.10000'), ('HURLEY', None, '37.42030', '-82.02020'), ('VANSANT', 989, '37.23060', '-82.08960')], 'partOfState': '', 'wfo': 'RLX'}, -'NEC133': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('SUMMERFIELD', 211, '39.99640', '-96.34900'), ('BURCHARD', 103, '40.14980', '-96.34780'), ('DU BOIS', 166, '40.03400', '-96.04590'), ('LEWISTON', 86, '40.24340', '-96.40740'), ('PAWNEE CITY', 1033, '40.11060', '-96.15200'), ('STEINAUER', 74, '40.20700', '-96.23360'), ('TABLE ROCK', 264, '40.17870', '-96.08920')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'MIC067': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BELDING', 5877, '43.09650', '-85.23300'), ('CLARKSVILLE', 317, '42.84150', '-85.24200'), ('HUBBARDSTON', 394, '43.09420', '-84.84140'), ('IONIA', 10569, '42.98510', '-85.05800'), ('LAKE ODESSA', 2272, '42.78280', '-85.13740'), ('LYONS', 726, '42.98320', '-84.94540'), ('MUIR', 634, '42.99740', '-84.93550'), ('ORLEANS', None, '43.06870', '-85.13500'), ('PALO', None, '43.11250', '-84.98550'), ('PEWAMO', 560, '43.00130', '-84.84650'), ('PORTLAND', 3789, '42.87120', '-84.90110'), ('SARANAC', 1326, '42.92980', '-85.20940'), ('SEBEWA', None, '42.79950', '-84.95580'), ('SMYRNA', None, '43.05930', '-85.26280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'CAC079': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ARROYO GRANDE', 15851, '35.12530', '-120.58360'), ('ATASCADERO', 26411, '35.48550', '-120.68790'), ('CAMBRIA', 6232, '35.54650', '-121.07990'), ('HEARST CASTLE', None, '35.69000', '-121.17000'), ('CAYUCOS', 2943, '35.43800', '-120.88480'), ('PASO ROBLES', None, '35.63230', '-120.66420'), ('LAKE NACIMIENTO', 2176, '35.72850', '-120.87850'), ('MORRO BAY', 10350, '35.36000', '-120.83000'), ('NIPOMO', 12626, '35.03240', '-120.48300'), ('PISMO BEACH', 8551, '35.14000', '-120.63000'), ('SAN LUIS OBISPO', 44174, '35.27290', '-120.66480'), ('SAN MIGUEL', 1427, '35.75170', '-120.69220'), ('TEMPLETON', 4687, '35.55390', '-120.70840'), ('SHANDON', 986, '35.65000', '-120.38000'), ('BLACK MOUNTAIN', None, '35.39000', '-120.35000'), ('CALIFORNIA VALLEY', None, '35.32000', '-120.00000'), ('SANTA MARGARITA', None, '35.38000', '-120.62000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'MIC065': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AURELIUS', None, '42.52420', '-84.52220'), ('BELL OAK', None, '42.72870', '-84.17370'), ('BUNKER HILL', None, '42.47550', '-84.31750'), ('DANSVILLE', 429, '42.55530', '-84.30250'), ('EAST LANSING', 46525, '42.73600', '-84.48430'), ('EDEN', None, '42.52380', '-84.42830'), ('EDGEMONT PARK', 2442, '42.74670', '-84.59370'), ('FITCHBURG', None, '42.43920', '-84.27780'), ('HASLETT', 11283, '42.75270', '-84.40580'), ('HOLT', 11315, '42.63730', '-84.52560'), ('LANSING', 119128, '42.70910', '-84.55400'), ('LESLIE', 2044, '42.45000', '-84.43080'), ('MASON', 6714, '42.58170', '-84.44390'), ('OKEMOS', 22805, '42.70820', '-84.41440'), ('ONONDAGA', None, '42.44420', '-84.56220'), ('STOCKBRIDGE', 1260, '42.45070', '-84.17830'), ('WEBBERVILLE', 1503, '42.66740', '-84.18020'), ('WILLIAMSTON', 3441, '42.68980', '-84.28220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'WIC113': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CHIEF LAKE', 625, '45.92660', '-91.33280'), ('COUDERAY', 96, '45.79620', '-91.29920'), ('EDGEWATER', None, '45.74230', '-91.47520'), ('EXELAND', 212, '45.66800', '-91.24020'), ('HAYWARD', 2129, '46.01000', '-91.48030'), ('LITTLE ROUND LAKE', 948, '45.96500', '-91.36780'), ('LORETTA', None, '45.88560', '-90.85310'), ('NEW POST', 367, '45.89720', '-91.19200'), ('NORTHWOODS BEACH', None, '45.91420', '-91.40360'), ('OJIBWA', None, '45.79810', '-91.11700'), ('RADISSON', 222, '45.76850', '-91.21870'), ('RESERVE', 436, '45.82830', '-91.36010'), ('STONE LAKE', None, '45.84560', '-91.54050'), ('WINTER', 344, '45.82110', '-91.01200')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'CAC073': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALPINE', 13143, '32.84300', '-116.76110'), ('BONITA', 12401, '32.66750', '-117.02990'), ('BONSALL', 3401, '33.28250', '-117.22020'), ('BORREGO SPRINGS', 2535, '33.23870', '-116.35450'), ('BOSTONIA', 15169, '32.81980', '-116.94570'), ('CAMP PENDLETON NORTH', 8197, '33.31400', '-117.31460'), ('CAMP PENDLETON SOUTH', 8854, '33.23330', '-117.37350'), ('CARLSBAD', 78247, '33.12380', '-117.28590'), ('CASA DE ORO-MOUNT HELIX', 18874, '32.76540', '-116.93810'), ('CHULA VISTA', 173556, '32.64000', '-117.08330'), ('CORONADO', 24100, '32.68580', '-117.18220'), ('DEL MAR', 4389, '32.96490', '-117.26240'), ('EL CAJON', 94869, '32.80250', '-116.96080'), ('ENCINITAS', 58014, '33.04770', '-117.26260'), ('ESCONDIDO', 133559, '33.13640', '-117.07130'), ('FALLBROOK', 29100, '33.36860', '-117.23780'), ('GRANITE HILLS', 3246, '32.80300', '-116.90380'), ('HARBISON CANYON', 3645, '32.81940', '-116.82950'), ('HIDDEN MEADOWS', 3463, '33.22520', '-117.11170'), ('IMPERIAL BEACH', 26992, '32.57020', '-117.11860'), ('JAMUL', 5920, '32.72020', '-116.88880'), ('JULIAN', 1621, '33.07310', '-116.58740'), ('LA MESA', 54749, '32.76960', '-117.01890'), ('LAKE SAN MARCOS', 4138, '33.11910', '-117.20910'), ('LAKESIDE', 19560, '32.84900', '-116.90990'), ('LEMON GROVE', 24918, '32.73340', '-117.03280'), ('NATIONAL CITY', 54260, '32.66600', '-117.09850'), ('OCEANSIDE', 161029, '33.19580', '-117.37860'), ('PINE VALLEY', 1501, '32.85540', '-116.50120'), ('POWAY', 48044, '32.98550', '-117.01790'), ('RAINBOW', 2026, '33.40520', '-117.14750'), ('RAMONA', 15691, '33.03610', '-116.87010'), ('RANCHO SAN DIEGO', 20155, '32.74730', '-116.93450'), ('SAN DIEGO', 1223400, '32.71530', '-117.15640'), ('SAN DIEGO COUNTRY ESTATES', 9262, '33.00660', '-116.78280'), ('SAN MARCOS', 54977, '33.13660', '-117.17310'), ('SANTEE', 52975, '32.85510', '-116.98270'), ('SOLANA BEACH', 12979, '32.99580', '-117.25590'), ('SPRING VALLEY', 26663, '32.72080', '-116.98890'), ('VALLEY CENTER', 7323, '33.21740', '-117.01100'), ('VISTA', 89857, '33.18880', '-117.23820')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'CAC071': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('LAKE HAVASU CITY', 41938, '34.45000', '-114.33330'), ('AMBOY', None, '34.56660', '-115.75000'), ('BAKER', None, '35.28100', '-116.07000'), ('BARSTOW', 21119, '34.87760', '-117.06590'), ('BIG RIVER', 1266, '34.14010', '-114.36050'), ('DAGGETT', None, '34.85830', '-116.88330'), ('EARP', None, '34.15000', '-114.33330'), ('ESSEX', None, '34.73330', '-115.25000'), ('JOSHUA TREE', 4207, '34.12700', '-116.31780'), ('LENWOOD', 3222, '34.88580', '-117.10360'), ('LUDLOW', None, '34.71670', '-116.16660'), ('MOUNTAIN PASS', None, '35.47500', '-115.53900'), ('NEBO CENTER', 1174, '34.87160', '-116.95560'), ('NEEDLES', 4830, '34.81410', '-114.61320'), ('NIPTON', None, '35.46650', '-115.28330'), ('PARKER DAM', None, '34.26650', '-114.15000'), ('SEARLES VALLEY', 1885, '35.76760', '-117.40290'), ('TRONA', None, '35.76660', '-117.36660'), ('TWENTYNINE PALMS', 14764, '34.13950', '-116.06570'), ('TWENTYNINE PALMS MCAS', None, '34.22810', '-116.05570'), ('VIDAL JUNCTION', None, '34.18330', '-114.57500'), ('WEST WIND AERO', None, '34.13330', '-115.91660'), ('ADELANTO', 18130, '34.56970', '-117.43690'), ('APPLE VALLEY', 54239, '34.52930', '-117.21420'), ('BIG BEAR CITY', 5779, '34.26630', '-116.84550'), ('BIG BEAR LAKE', 5438, '34.24370', '-116.89450'), ('BLOOMINGTON', 19318, '34.05940', '-117.39780'), ('CHINO', 67168, '34.00690', '-117.68600'), ('CHINO HILLS', 66787, '33.97480', '-117.74870'), ('COLTON', 47662, '34.05790', '-117.32200'), ('CRESTLINE', 10218, '34.24670', '-117.29580'), ('FONTANA', 128929, '34.09770', '-117.45730'), ('GEORGE AFB', None, '34.58170', '-117.36650'), ('GRAND TERRACE', 11626, '34.03060', '-117.31450'), ('HESPERIA', 62582, '34.41910', '-117.30240'), ('HIGHLAND', 44605, '34.11730', '-117.18910'), ('LAKE ARROWHEAD', 8934, '34.26230', '-117.18850'), ('LOMA LINDA', 18681, '34.04420', '-117.24900'), ('LOS SERRANOS', None, '33.97380', '-117.70310'), ('MENTONE', 7803, '34.06300', '-117.12280'), ('MONTCLAIR', 33049, '34.07280', '-117.69660'), ('MORONGO VALLEY', 1929, '34.06390', '-116.59180'), ('MOUNTAIN VIEW ACRES', 2521, '34.49680', '-117.34790'), ('MUSCOY', 8919, '34.15230', '-117.34570'), ('ONTARIO', 158007, '34.05440', '-117.60580'), ('RANCHO CUCAMONGA', 127743, '34.12380', '-117.57020'), ('REDLANDS', 63591, '34.05790', '-117.17090'), ('RIALTO', 91873, '34.11360', '-117.38700'), ('RUNNING SPRINGS', 5125, '34.20970', '-117.11350'), ('SAN ANTONIO HEIGHTS', 3122, '34.15430', '-117.65840'), ('SAN BERNARDINO', 185401, '34.13970', '-117.29230'), ('UPLAND', 68393, '34.11880', '-117.65770'), ('VICTORVILLE', 64029, '34.52300', '-117.33160'), ('WRIGHTWOOD', 3837, '34.35940', '-117.63030'), ('YUCAIPA', 41207, '34.03310', '-117.04440'), ('YUCCA VALLEY', 16865, '34.11120', '-116.42860')], 'partOfState': 'SOUTHEAST', 'wfo': 'SGXVEFPSR'}, -'CAC077': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ACAMPO', None, '38.17470', '-121.27750'), ('AUGUST', 7808, '37.97890', '-121.26100'), ('CAMANCHE RESERVOIR', None, '38.22500', '-121.02160'), ('COUNTRY CLUB', 9462, '37.96900', '-121.33970'), ('ESCALON', 5963, '37.78950', '-120.99620'), ('FRENCH CAMP', 4109, '37.88280', '-121.27870'), ('GARDEN ACRES', 9747, '37.96390', '-121.22830'), ('KENNEDY', 3275, '37.93000', '-121.25170'), ('LATHROP', 10445, '37.82090', '-121.27660'), ('LINCOLN VILLAGE', 4216, '38.00420', '-121.33350'), ('LINDEN', 1103, '38.01890', '-121.09990'), ('LOCKEFORD', 3179, '38.15160', '-121.15550'), ('LODI', 56999, '38.12320', '-121.29440'), ('MANTECA', 49258, '37.80230', '-121.22350'), ('MORADA', 3726, '38.03870', '-121.24470'), ('RIPON', 10146, '37.73510', '-121.12650'), ('STOCKTON', 243771, '37.96990', '-121.30670'), ('TRACY', 56929, '37.73700', '-121.43190'), ('VICTOR', None, '38.13810', '-121.20500'), ('WATERLOO', None, '38.03470', '-121.18580'), ('WOODBRIDGE', None, '38.16340', '-121.31730')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'NEC105': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BUSHNELL', 162, '41.23200', '-103.89040'), ('DIX', 267, '41.23470', '-103.48630'), ('KIMBALL', 2559, '41.23250', '-103.65900')], 'partOfState': '', 'wfo': 'CYS'}, -'MIC075': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BROOKLYN', 1176, '42.10550', '-84.24870'), ('CLARK LAKE', None, '42.12130', '-84.34500'), ('CONCORD', 1101, '42.17520', '-84.64390'), ('GRASS LAKE', 1082, '42.25090', '-84.20600'), ('HANOVER', 424, '42.10060', '-84.55270'), ('HORTON', None, '42.15030', '-84.51720'), ('JACKSON', 36316, '42.24320', '-84.40480'), ('LEONI', None, '42.24380', '-84.26920'), ('MICHIGAN CENTER', 4641, '42.22690', '-84.32250'), ('MUNITH', None, '42.39050', '-84.25050'), ('NAPOLEON', 1254, '42.16830', '-84.24630'), ('NORVELL', None, '42.15750', '-84.18420'), ('OAK POINT', None, '42.19270', '-84.25580'), ('PARMA', 907, '42.25720', '-84.59830'), ('PULASKI', None, '42.11500', '-84.64250'), ('RIVES JUNCTION', None, '42.38580', '-84.46170'), ('SANDSTONE', None, '42.25200', '-84.51770'), ('SPRING ARBOR', 2188, '42.20660', '-84.55590'), ('SPRINGPORT', 704, '42.37780', '-84.69730'), ('SUNSET BEACH', None, '42.08720', '-84.20370'), ('TOPKINS', None, '42.37300', '-84.54170'), ('VANDERCOOK LAKE', 4809, '42.19160', '-84.38540')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'NEC107': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BAZILE MILLS', 26, '42.51380', '-97.91000'), ('BLOOMFIELD', 1126, '42.59880', '-97.64880'), ('CENTER', 90, '42.60890', '-97.87590'), ('CREIGHTON', 1270, '42.46510', '-97.90680'), ('CROFTON', 754, '42.73180', '-97.49770'), ('NIOBRARA', 379, '42.75030', '-98.03030'), ('SANTEE', 302, '42.83850', '-97.84920'), ('VERDEL', 58, '42.81150', '-98.19290'), ('VERDIGRE', 519, '42.59750', '-98.03520'), ('WAUSA', 636, '42.49780', '-97.53820'), ('WINNETOON', 70, '42.51430', '-97.96140')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'PAC067': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLACKLOG', None, '40.42000', '-77.68000'), ('HONEY GROVE', None, '40.42000', '-77.55000'), ('MCALISTERVILLE', 765, '40.63000', '-77.28000'), ('MIFFLIN', 627, '40.56780', '-77.40480'), ('MIFFLINTOWN', 861, '40.57110', '-77.39510'), ('PERULACK', None, '40.34000', '-77.66000'), ('PORT ROYAL', 977, '40.53390', '-77.39090'), ('RICHFIELD', 459, '40.69000', '-77.12000'), ('SPRUCE HILL', None, '40.47000', '-77.46000'), ('THOMPSONTOWN', 711, '40.56620', '-77.23530'), ('WALNUT', None, '40.53000', '-77.48000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'NEC101': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRULE', 372, '41.09590', '-101.88840'), ('KEYSTONE', None, '41.22000', '-101.59000'), ('KINGSLEY DAM', None, '41.21450', '-101.65800'), ('LEMOYNE', None, '41.28550', '-101.80050'), ('OGALLALA', 4930, '41.13050', '-101.72050'), ('PAXTON', 614, '41.12480', '-101.35540'), ('ROSCOE', None, '41.13500', '-101.60000'), ('SARBEN', None, '41.16300', '-101.30000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'PAC061': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALEXANDRIA', 401, '40.55890', '-78.10010'), ('BROAD TOP CITY', 384, '40.20150', '-78.14070'), ('CASSVILLE', 152, '40.29370', '-78.02780'), ('COALMONT', 128, '40.21100', '-78.20070'), ('ENTRIKEN', None, '40.34000', '-78.18000'), ('FRANKLINVILLE', None, '40.64000', '-78.06000'), ('HUNTINGDON', 6918, '40.49650', '-78.01030'), ('MAPLETON', 473, '40.39290', '-77.93950'), ('MARKLESBURG', 216, '40.38400', '-78.16930'), ('MCALEVYS FORT', None, '40.64000', '-77.82000'), ('MILL CREEK', 351, '40.43740', '-77.92940'), ('MOUNT UNION', 2504, '40.38490', '-77.88200'), ('ORBISONIA', 425, '40.24330', '-77.89360'), ('PETERSBURG', 455, '40.57360', '-78.04960'), ('RAYSTOWN DAM', None, '40.45000', '-78.01000'), ('SALTILLO', 343, '40.21180', '-78.00780'), ('SHADE GAP', 97, '40.18000', '-77.86570'), ('SHIRLEYSBURG', 140, '40.29690', '-77.87740'), ('SHY BEAVER', None, '40.29000', '-78.21000'), ('SPRUCE CREEK', None, '40.62000', '-78.14000'), ('THREE SPRINGS', 445, '40.19520', '-77.98390'), ('TROUGH CREEK SP', None, '40.34000', '-78.12000'), ('WARRIORS MARK', None, '40.70000', '-78.11000'), ('WHIPPLE DAM SP', None, '40.69000', '-77.84000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'NEC103': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BURTON', 11, '42.91140', '-99.59060'), ('MILLS', None, '42.94000', '-99.40000'), ('SPRINGVIEW', 244, '42.82530', '-99.74900')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'MNC139': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELLE PLAINE', 3789, '44.62360', '-93.76420'), ('ELKO', 472, '44.56530', '-93.32450'), ('JORDAN', 3833, '44.66850', '-93.63220'), ('NEW MARKET', 332, '44.57210', '-93.34970'), ('NEW PRAGUE', 4559, '44.54660', '-93.57400'), ('PRIOR LAKE', 15917, '44.72850', '-93.43400'), ('SAVAGE', 21115, '44.75540', '-93.35720'), ('SHAKOPEE', 20568, '44.77060', '-93.47560')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNC137': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADOLF', None, '46.77870', '-92.28030'), ('ALBORN', None, '46.97310', '-92.57620'), ('ANGORA', None, '47.77510', '-92.63420'), ('ARNOLD', 3032, '46.87510', '-92.10780'), ('ASH LAKE', None, '48.21900', '-92.91610'), ('AURORA', 1850, '47.53200', '-92.24000'), ('BABBITT', 1670, '47.64510', '-91.94010'), ('BIWABIK', 954, '47.53420', '-92.35000'), ('BRIMSON', None, '47.27670', '-91.86710'), ('BROOKSTON', 98, '46.86600', '-92.60320'), ('BUHL', 983, '47.49850', '-92.76690'), ('BURNETT', None, '46.90090', '-92.52440'), ('BUYCK', None, '48.14280', '-92.52060'), ('CANYON', None, '47.04000', '-92.47080'), ('CELINA', None, '47.86580', '-93.06200'), ('CHERRY', None, '47.00080', '-92.70670'), ('CHISHOLM', 4960, '47.48750', '-92.87920'), ('COOK', 622, '47.85310', '-92.68810'), ('COTTON', None, '47.16980', '-92.47100'), ('CRANE LAKE', None, '48.26670', '-92.48870'), ('CULVER', None, '46.92590', '-92.55860'), ('CUSSON', None, '48.10190', '-92.84310'), ('DULUTH', 86918, '46.78100', '-92.11800'), ('ELMER', None, '47.10360', '-92.77720'), ('ELY', 3724, '47.90570', '-91.85060'), ('EMBARRASS', None, '47.65930', '-92.19810'), ('EVELETH', 3865, '47.46370', '-92.54290'), ('FAIRBANKS', None, '47.37060', '-91.92670'), ('FLOODWOOD', 503, '46.92690', '-92.91550'), ('FOND DU LAC', None, '46.67180', '-92.27330'), ('FRANKLIN', 498, '47.53780', '-92.51930'), ('FREDENBERG', None, '46.97370', '-92.21730'), ('FRENCH RIVER', None, '46.89810', '-91.89720'), ('GARY NEW DULUTH', None, '46.67870', '-92.20680'), ('GHEEN', None, '47.96810', '-92.80830'), ('GILBERT', 1847, '47.49190', '-92.46050'), ('GOWAN', None, '46.86420', '-92.84730'), ('GREANEY', None, '47.96730', '-93.02110'), ('HERMANTOWN', 7448, '46.80620', '-92.24380'), ('HIBBING', 17071, '47.40000', '-92.94810'), ('HOYT LAKES', 2082, '47.51220', '-92.15470'), ('IDINGTON', None, '47.73340', '-92.65200'), ('INDEPENDENCE', 3236, '46.96080', '-92.46170'), ('IRON JUNCTION', 93, '47.41640', '-92.60670'), ('ISLAND', None, '46.98620', '-93.01370'), ('ISLAND LAKE', None, '47.01490', '-92.19380'), ('KABETOGAMA', None, '48.43790', '-93.02750'), ('KELLY LAKE', None, '47.41760', '-93.00670'), ('KELSEY', None, '47.15390', '-92.59920'), ('KINNEY', 199, '47.52230', '-92.72530'), ('LEETONIA', None, '47.42920', '-92.98540'), ('LEONIDAS', 60, '47.46730', '-92.56790'), ('LINDEN GROVE', None, '47.86320', '-92.87060'), ('LITTLE SWAN', None, '47.29720', '-92.83110'), ('MAKINEN', None, '47.35730', '-92.36780'), ('MARKHAM', None, '47.29930', '-92.21870'), ('MCKINLEY', 80, '47.51450', '-92.40750'), ('MEADOW BROOK', None, '47.86280', '-92.95480'), ('MEADOWLANDS', 111, '47.07280', '-92.73140'), ('MELRUDE', None, '47.24560', '-92.41720'), ('MESABA', None, '47.56900', '-92.13200'), ('MOUNTAIN IRON', 2999, '47.52640', '-92.62690'), ('MUNGER', None, '46.80190', '-92.34390'), ('NETT LAKE', None, '48.11120', '-93.07990'), ('ORR', 249, '48.06400', '-92.82040'), ('PALMERS', None, '46.92480', '-91.85080'), ('PAYNE', None, '47.09620', '-92.59950'), ('PROCTOR', 2852, '46.74310', '-92.22740'), ('PROSIT', None, '46.99810', '-92.61780'), ('RIDGE', None, '47.62260', '-92.03620'), ('ROBINSON', None, '47.85950', '-92.04200'), ('SAGINAW', None, '46.85930', '-92.44450'), ('SHAW', None, '47.11370', '-92.35310'), ('SHERMANS CORNER', None, '47.77920', '-92.65640'), ('SIDE LAKE', None, '47.66530', '-93.01600'), ('SILICA', None, '47.26560', '-93.02110'), ('SKIBO', None, '47.48560', '-91.99440'), ('SNAKE TRAIL', None, '47.71360', '-93.04660'), ('SOUDAN', None, '47.81590', '-92.23780'), ('TAFT', None, '46.99450', '-92.33280'), ('TOIVOLA', None, '47.16700', '-92.81120'), ('TOWER', 479, '47.81010', '-92.29050'), ('TWIG', None, '46.89460', '-92.36480'), ('VIRGINIA', 9157, '47.51580', '-92.50710'), ('WAHLSTEN', None, '47.73580', '-92.28360'), ('WEST DULUTH', None, '46.73560', '-92.18640'), ('WINTON', 185, '47.92900', '-91.80140'), ('ZIM', None, '47.30700', '-92.60340')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MNC135': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BADGER', 470, '48.77610', '-96.02070'), ('CASPERSON', None, '48.57610', '-95.68690'), ('FOX', None, '48.83890', '-95.89860'), ('GREENBUSH', 784, '48.69820', '-96.18390'), ('HAUG', None, '48.81970', '-96.18420'), ('HAYES LAKE STATE PARK', None, '48.62360', '-95.50780'), ('LEO', None, '48.76080', '-96.25030'), ('MALUNG', None, '48.77250', '-95.72390'), ('PENCER', None, '48.69920', '-95.63750'), ('PINECREEK', None, '48.97830', '-95.94250'), ('ROOSEVELT', 166, '48.80360', '-95.09670'), ('ROSEAU', 2756, '48.84580', '-95.76190'), ('ROSS', None, '48.90610', '-95.92000'), ('SALOL', None, '48.86610', '-95.57060'), ('SKIME', None, '48.54690', '-95.60250'), ('STRATHCONA', 29, '48.55220', '-96.16780'), ('SWIFT', None, '48.85330', '-95.22110'), ('TORFIN', None, '48.59780', '-95.73330'), ('WANNASKA', None, '48.65830', '-95.73440'), ('WARROAD', 1722, '48.90850', '-95.32070')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'NEC109': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENNET', 570, '40.68120', '-96.50590'), ('DAVEY', 153, '40.98260', '-96.66860'), ('DENTON', 189, '40.73950', '-96.84460'), ('FIRTH', 564, '40.53430', '-96.60400'), ('HALLAM', 276, '40.53670', '-96.78590'), ('HICKMAN', 1084, '40.62150', '-96.63150'), ('LINCOLN', 225581, '40.81640', '-96.68820'), ('MALCOLM', 413, '40.90850', '-96.86600'), ('PANAMA', 253, '40.59960', '-96.51120'), ('RAYMOND', 186, '40.95660', '-96.78150'), ('ROCA', 220, '40.65810', '-96.66170'), ('SPRAGUE', 146, '40.62660', '-96.74520'), ('WAVERLY', 2448, '40.91490', '-96.53000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'PAC069': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARCHBALD', 6220, '41.50720', '-75.54220'), ('BLAKELY', 7027, '41.48780', '-75.59780'), ('CARBONDALE', 9804, '41.57110', '-75.50550'), ('CLARKS GREEN', 1630, '41.49970', '-75.69560'), ('CLARKS SUMMIT', 5126, '41.49020', '-75.70750'), ('CORTEZ', None, '41.46670', '-75.46670'), ('CRAIG', None, '41.55000', '-75.68330'), ('DALEVILLE', None, '41.30000', '-75.51670'), ('DALTON', 1294, '41.53790', '-75.73860'), ('DICKSON CITY', 6205, '41.46880', '-75.63480'), ('DRINKER', None, '41.40000', '-75.48330'), ('DUNMORE', 14018, '41.41560', '-75.60710'), ('EAST BENTON', None, '41.58330', '-75.66670'), ('ELMHURST', None, '41.38330', '-75.55000'), ('FELLS CORNERS', None, '41.30000', '-75.53330'), ('FLEETVILLE', None, '41.60000', '-75.71670'), ('GLENBURN', 1212, '41.50920', '-75.73520'), ('JERMYN', 2287, '41.52670', '-75.54660'), ('JESSUP', 4718, '41.45820', '-75.54770'), ('LA PLUME', None, '41.55000', '-75.76670'), ('LEHIGH', None, '41.26670', '-75.46670'), ('MARSHBROOK', None, '41.63330', '-75.68330'), ('MAYFIELD', 1756, '41.53700', '-75.53370'), ('MOOSIC', 5575, '41.35700', '-75.70230'), ('MOSCOW', 1883, '41.34030', '-75.52910'), ('MOUNT COBB', 2140, '41.42860', '-75.49720'), ('OAKHILL', None, '41.36670', '-75.71670'), ('OLD FORGE', 8798, '41.36670', '-75.75000'), ('OLD FORGE', 8798, '41.36890', '-75.74230'), ('OLYPHANT', 4978, '41.44920', '-75.58020'), ('PECKVILLE', None, '41.48330', '-75.61670'), ('QUICKTOWN', None, '41.36670', '-75.46670'), ('RICHMONDALE', None, '41.63330', '-75.50000'), ('SCRANTON', 76415, '41.40400', '-75.66610'), ('SIMPSON', None, '41.58330', '-75.48330'), ('SPRINGBROOK CORNERS', None, '41.30000', '-75.60000'), ('TAYLOR', 6475, '41.39870', '-75.71370'), ('THROOP', 4010, '41.43850', '-75.59600'), ('TOMPKINSVILLE', None, '41.58330', '-75.61670'), ('VANDLING', 738, '41.63110', '-75.47060'), ('WALLSVILLE', None, '41.58330', '-75.73330'), ('WAVERLY', None, '41.51670', '-75.71670'), ('WEST SCRANTON', None, '41.41670', '-75.68330'), ('WIMMERS', None, '41.40000', '-75.48330'), ('WINTON', None, '41.48330', '-75.55000'), ('YOSTVILLE', None, '41.30000', '-75.56670')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'MNC131': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('DUNDAS', 547, '44.42970', '-93.20490'), ('FARIBAULT', 20818, '44.29740', '-93.27490'), ('LONSDALE', 1491, '44.47760', '-93.42780'), ('MORRISTOWN', 981, '44.22470', '-93.44480'), ('NERSTRAND', 233, '44.34080', '-93.06250'), ('NORTHFIELD', 17147, '44.45440', '-93.16530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'ALC023': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AQUILLA', None, '31.71220', '-88.41440'), ('ARARAT', None, '31.96810', '-88.14700'), ('BARRYTOWN', None, '31.83780', '-88.25270'), ('BLADON SPRINGS', None, '31.73170', '-88.19740'), ('BOLINGER', None, '31.77890', '-88.33100'), ('BUTLER', 1952, '32.08890', '-88.22140'), ('CHAPPELL HILL', None, '31.89220', '-88.25600'), ('CHOCTAW CITY', None, '32.20920', '-88.09440'), ('CROMWELL', None, '32.22870', '-88.27450'), ('CULLOMBURG', None, '31.71410', '-88.29710'), ('CYRIL', None, '32.17820', '-88.42250'), ('DEAS', None, '32.22970', '-88.09720'), ('EDNA', None, '32.28670', '-88.07490'), ('EVANSBORO', None, '31.88360', '-88.46790'), ('GILBERTOWN', 187, '31.87620', '-88.32190'), ('HALSELL', None, '32.28400', '-88.27780'), ('HINTON', None, '32.09220', '-88.44210'), ('HODGEWOOD', None, '31.93680', '-88.30230'), ('INDIAN SPRINGS', None, '32.25220', '-88.10090'), ('ISNEY', None, '31.78310', '-88.45550'), ('JACHIN', None, '32.23030', '-88.16840'), ('LAND', None, '32.02890', '-88.32840'), ('LAVACA', None, '32.14060', '-88.07960'), ('LISMAN', 653, '32.16780', '-88.28330'), ('LOU', None, '31.91860', '-88.21130'), ('MELVIN', None, '31.92970', '-88.45910'), ('MT STERLING', None, '32.09420', '-88.16320'), ('NAHEOLA', None, '32.22830', '-88.02890'), ('NEEDHAM', 97, '31.98940', '-88.33680'), ('OAKCHIA', None, '32.29810', '-88.01070'), ('PARAGON', None, '31.87720', '-88.37470'), ('PENNINGTON', 353, '32.20730', '-88.05600'), ('PUSHMATAHA', None, '32.19310', '-88.35350'), ('RIDERWOOD', None, '32.12890', '-88.32780'), ('ROBJOHN', None, '32.21440', '-88.12740'), ('ROCK SPRINGS', None, '32.07860', '-88.36670'), ('SERVICE', None, '31.74500', '-88.14310'), ('SILAS', 529, '31.76420', '-88.32920'), ('SOUWILPA', None, '31.82000', '-88.32940'), ('TOXEY', 152, '31.91290', '-88.31050'), ('WATER VALLEY', None, '31.89330', '-88.39330'), ('WIMBLY', None, '31.91390', '-88.24850'), ('WOMACK HILL', None, '31.85360', '-88.18890'), ('WOODS BLUFF', None, '31.93500', '-88.06170'), ('YANTLEY', None, '32.24580', '-88.37900')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALC021': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CLANTON', 7800, '32.84000', '-86.62470'), ('JEMISON', 2248, '32.96500', '-86.74410'), ('MAPLESVILLE', 672, '32.78570', '-86.87840'), ('THORSBY', 1820, '32.91500', '-86.71410')], 'partOfState': '', 'wfo': 'BMX'}, -'ALC027': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ASHLAND', 1965, '33.27100', '-85.83070'), ('LINEVILLE', 2401, '33.31240', '-85.75260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALC025': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALLEN', None, '31.59650', '-87.72790'), ('ALMA', None, '31.49050', '-87.75170'), ('BARLOW BEND', None, '31.45440', '-87.63490'), ('BASHI', None, '31.97060', '-87.86140'), ('CARLTON', None, '31.34300', '-87.84550'), ('CHANCE', None, '31.74890', '-87.53200'), ('CHILTON', None, '31.78190', '-87.84430'), ('CHOCTAW BLUFF', None, '31.38860', '-87.78890'), ('COFFEEVILLE', 360, '31.75750', '-88.09030'), ('DICKINSON', None, '31.76330', '-87.71020'), ('FULTON', 308, '31.78860', '-87.72710'), ('GAINESTOWN', None, '31.44550', '-87.69360'), ('GROVE HILL', 1438, '31.70810', '-87.77740'), ('HOLTAMVILLE', None, '31.99190', '-87.94010'), ('JACKSON', 5419, '31.50830', '-87.89420'), ('MANILLA', None, '31.51000', '-87.72340'), ('MORVIN', None, '31.98580', '-87.99300'), ('NETTLEBORO', None, '31.79900', '-87.62220'), ('OPINE', None, '31.90480', '-87.93380'), ('PEACOCK', None, '31.75740', '-87.77470'), ('ROUNDHILL', None, '31.89270', '-87.71170'), ('RURAL', None, '31.86390', '-87.73860'), ('SCYRENE', None, '31.75570', '-87.64780'), ('SHAWNEE', None, '31.99360', '-87.70710'), ('SUGGSVILLE', None, '31.58940', '-87.69310'), ('TALLAHATTA SPRINGS', None, '31.90960', '-87.87690'), ('THOMASVILLE', 4649, '31.91240', '-87.73690'), ('WALKER SPRINGS', None, '31.54110', '-87.79130'), ('WEST BEND', None, '31.82390', '-88.13230'), ('WHATELY', None, '31.65020', '-87.70530'), ('WINN', None, '31.65310', '-87.91690')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALC029': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('EDWARDSVILLE', 186, '33.70670', '-85.50980'), ('FRUITHURST', 270, '33.73030', '-85.43190'), ('HEFLIN', 3002, '33.64630', '-85.58670'), ('RANBURNE', 459, '33.52490', '-85.34020')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'VAC600': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('FAIRFAX', 21498, '38.85370', '-77.29820')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'OHC029': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CALCUTTA', 3491, '40.67600', '-80.57830'), ('COLUMBIANA', 5635, '40.88590', '-80.68840'), ('EAST LIVERPOOL', 13089, '40.63290', '-80.56940'), ('EAST PALESTINE', 4917, '40.83740', '-80.54490'), ('GLENMOOR', 2192, '40.66510', '-80.61320'), ('HANOVERTON', 387, '40.75500', '-80.93560'), ('LA CROFT', 1307, '40.64720', '-80.60130'), ('LEETONIA', 2043, '40.87840', '-80.76100'), ('LISBON', 2788, '40.77610', '-80.76930'), ('MIDDLETON', None, '40.78000', '-80.53000'), ('NEW WATERFORD', 1391, '40.84850', '-80.62040'), ('ROGERS', 266, '40.79020', '-80.62710'), ('SALEM', 12197, '40.90260', '-80.85370'), ('SALINEVILLE', 1397, '40.62100', '-80.83280'), ('SUMMITVILLE', 108, '40.67720', '-80.88610'), ('WELLSVILLE', 4133, '40.60270', '-80.65630')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHC025': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMELIA', 2752, '39.02580', '-84.21690'), ('BATAVIA', 1617, '39.07840', '-84.18120'), ('BETHEL', 2637, '38.96240', '-84.08470'), ('CHILO', 97, '38.79370', '-84.13820'), ('DAY HEIGHTS', 2823, '39.17390', '-84.22630'), ('FELICITY', 922, '38.83990', '-84.09790'), ('MILFORD', 6284, '39.17090', '-84.28160'), ('MOSCOW', 244, '38.86030', '-84.22850'), ('MOUNT CARMEL', 4308, '39.09670', '-84.29840'), ('MOUNT REPOSE', 4102, '39.18540', '-84.22460'), ('MULBERRY', 3139, '39.19720', '-84.24890'), ('NEVILLE', 127, '38.81320', '-84.21080'), ('NEW RICHMOND', 2219, '38.96240', '-84.27980'), ('NEWTONSVILLE', 492, '39.18290', '-84.08740'), ('OWENSVILLE', 816, '39.12370', '-84.13540'), ('SUMMERSIDE', 5523, '39.12280', '-84.28640'), ('WILLIAMSBURG', 2358, '39.05310', '-84.05070'), ('WITHAMSVILLE', 3145, '39.05860', '-84.27000')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHC027': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BLANCHESTER', 4220, '39.28950', '-83.97960'), ('CLARKSVILLE', 497, '39.40250', '-83.98290'), ('MARTINSVILLE', 440, '39.32300', '-83.81110'), ('MIDLAND', 265, '39.30590', '-83.91040'), ('NEW VIENNA', 1294, '39.32470', '-83.69240'), ('PORT WILLIAM', 258, '39.55170', '-83.78570'), ('SABINA', 2780, '39.49030', '-83.63380'), ('WILMINGTON', 11921, '39.44360', '-83.83090')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHC021': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHRISTIANSBURG', 553, '40.05680', '-84.02520'), ('MECHANICSBURG', 1744, '40.07440', '-83.55780'), ('MUTUAL', 132, '40.07910', '-83.63730'), ('NORTH LEWISBURG', 1588, '40.22380', '-83.55780'), ('ST. PARIS', 1998, '40.12790', '-83.95800'), ('URBANA', 11613, '40.10880', '-83.75170'), ('WOODSTOCK', 317, '40.17350', '-83.52790')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC023': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CATAWBA', 312, '39.99980', '-83.62230'), ('CRYSTAL LAKES', 1411, '39.88490', '-84.02540'), ('DONNELSVILLE', 293, '39.91830', '-83.94650'), ('ENON', 2638, '39.86550', '-83.93550'), ('GREEN MEADOWS', 2318, '39.86870', '-83.94430'), ('HOLIDAY VALLEY', 1712, '39.84770', '-83.96650'), ('LAWRENCEVILLE', 302, '39.98500', '-83.87480'), ('NEW CARLISLE', 5735, '39.94350', '-84.02810'), ('NORTH HAMPTON', 370, '39.99050', '-83.94170'), ('PARK LAYNE', 4519, '39.88650', '-84.03960'), ('SOUTH CHARLESTON', 1850, '39.82470', '-83.64460'), ('SOUTH VIENNA', 469, '39.92870', '-83.61180'), ('SPRINGFIELD', 65358, '39.92680', '-83.79660'), ('TREMONT CITY', 349, '40.01470', '-83.83610')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'CAC107': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALPAUGH', 761, '35.88760', '-119.48370'), ('CAMP NELSON', None, '36.13970', '-118.61240'), ('DINUBA', 16844, '36.54560', '-119.38730'), ('EARLIMART', 6583, '35.88090', '-119.27050'), ('EXETER', 9168, '36.29460', '-119.14300'), ('FARMERSVILLE', 8737, '36.30410', '-119.20690'), ('GIANT FOREST', None, '36.56440', '-118.77260'), ('GOSHEN', 2394, '36.35110', '-119.42060'), ('JOHNSONDALE', None, '35.97320', '-118.54010'), ('LEMON COVE', 298, '36.38350', '-119.02450'), ('LINDSAY', 10297, '36.20630', '-119.08880'), ('LODGEPOLE', None, '36.60440', '-118.73040'), ('PIXLEY', 2586, '35.97290', '-119.28720'), ('PORTERVILLE', 39615, '36.06460', '-119.02700'), ('RICHGROVE', 2723, '35.79670', '-119.10570'), ('SPRINGVILLE', 1109, '36.13050', '-118.81680'), ('THREE RIVERS', 2248, '36.44320', '-118.90230'), ('TIPTON', 1790, '36.05810', '-119.31190'), ('TULARE', 43994, '36.19510', '-119.34310'), ('VISALIA', 91565, '36.32540', '-119.32060'), ('WOODLAKE', 6651, '36.41280', '-119.09740')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'CAC105': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIG BAR', None, '40.73000', '-123.25000'), ('BURNT RANCH', None, '40.82000', '-123.47000'), ('CARRVILLE', None, '41.07000', '-122.72000'), ('DEL LOMA', None, '40.78000', '-123.33000'), ('DENNY', None, '40.95000', '-123.38000'), ('DOUGLAS CITY', None, '40.65000', '-122.95000'), ('FOREST GLEN', None, '40.38000', '-123.32000'), ('HAYFORK', 2315, '40.57000', '-123.13000'), ('HELENA', None, '40.77000', '-123.13000'), ('HYAMPOM', None, '40.62000', '-123.45000'), ('JUNCTION CITY', None, '40.73000', '-123.05000'), ('LEWISTON', 1305, '40.70000', '-122.80000'), ('PEANUT', None, '40.47000', '-123.17000'), ('RUTH', None, '40.28000', '-123.40000'), ('SALYER', None, '40.90000', '-123.57000'), ('TRINITY CENTER', None, '41.00000', '-122.70000'), ('WEAVERVILLE', 3554, '40.77000', '-122.95000'), ('ZENIA', None, '40.20000', '-123.48000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'GAC219': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BISHOP', 146, '33.81620', '-83.43640'), ('BOGART', 1049, '33.94730', '-83.53230'), ('NORTH HIGH SHOALS', 439, '33.82840', '-83.50150'), ('WATKINSVILLE', 2097, '33.86190', '-83.40760')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'CAC103': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BLACK BUTTE DAM', None, '39.81660', '-122.33530'), ('BLACK BUTTE LAKE', None, '39.81750', '-122.33670'), ('BLACK BUTTE SUMMIT', None, '39.81550', '-122.35170'), ('BLOSSOM', None, '40.17750', '-122.42220'), ('CORNING', 6741, '39.92630', '-122.18200'), ('DAIRYVILLE', None, '40.25530', '-122.20750'), ('FLOURNOY', None, '39.92050', '-122.43500'), ('HENLEYVILLE', None, '39.96190', '-122.32550'), ('LOS MOLINOS', 1952, '40.02760', '-122.09720'), ('LYONSVILLE', None, '40.30940', '-121.73690'), ('MINERAL', 143, '40.34780', '-121.59390'), ('PASKENTA', None, '39.88470', '-122.54470'), ('PAYNES CREEK', None, '40.33560', '-121.91390'), ('RED BLUFF', 13147, '40.17380', '-122.24040'), ('RICHFIELD', None, '39.97500', '-122.17550'), ('ROSEWOOD', None, '40.26970', '-122.55530'), ('SADDLE CAMP', None, '40.16660', '-122.80000'), ('VINA', None, '39.93300', '-122.05270')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'CAC101': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('KARNAK', None, '38.78500', '-121.65440'), ('KIRKVILLE', None, '38.90880', '-121.79170'), ('LIVE OAK', 6229, '39.27580', '-121.65880'), ('MERIDIAN', None, '39.14330', '-121.91330'), ('NICOLAUS', None, '38.90330', '-121.57670'), ('PENNINGTON', None, '39.29110', '-121.79220'), ('PENNINGTON', None, '39.29110', '-121.79220'), ('PLEASANT GROVE', None, '38.82380', '-121.48270'), ('ROBBINS', None, '38.87030', '-121.70530'), ('SOUTH YUBA CITY', 12651, '39.11650', '-121.63800'), ('SUTTER', 2885, '39.15930', '-121.74620'), ('TIERRA BUENA', 4587, '39.15860', '-121.66770'), ('TISDALE', None, '39.04050', '-121.78500'), ('TUDOR', None, '39.00500', '-121.62250'), ('VERONA', None, '38.78610', '-121.61750'), ('YUBA CITY', 36758, '39.13550', '-121.62270')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAC109': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BUCK MEADOWS FS', None, '37.82220', '-120.09720'), ('CEDAR RIDGE', None, '38.06580', '-120.27580'), ('COLUMBIA', 2405, '38.02670', '-120.40180'), ('DARDANELLE', None, '38.34190', '-119.83220'), ('EAST SONORA', 2078, '37.98050', '-120.33930'), ('GROVELAND-BIG OAK FLAT', 3388, '37.84550', '-120.19640'), ('HETCH HETCHY', None, '37.94750', '-119.78800'), ('JAMESTOWN', 3017, '37.95730', '-120.41390'), ('JUPITER', None, '38.12250', '-120.28160'), ('KENNEDY MEADOW', None, '38.31160', '-119.74470'), ('KEYSTONE', None, '37.83530', '-120.50660'), ('LONG BARN', None, '38.09300', '-120.13330'), ('MI-WUK VILLAGE', 1485, '38.05800', '-120.17630'), ('MOCCASIN', None, '37.81080', '-120.29890'), ('MONO VISTA', 3072, '38.01150', '-120.26970'), ('PHOENIX LAKE-CEDAR RIDGE', 5123, '38.02320', '-120.30070'), ('PINECREST', None, '38.18860', '-119.98970'), ('SMITH STATION', None, '37.81280', '-120.12030'), ('SONORA', 4423, '37.98360', '-120.38160'), ('SOULSBYVILLE', 1729, '37.99260', '-120.25990'), ('SPRINGFIELD', None, '38.02080', '-120.41140'), ('STRAWBERRY', 5302, '38.19830', '-120.00830'), ('TUOLUMNE CITY', 1865, '37.96280', '-120.24030'), ('TUOLUMNE MEADOWS', None, '37.87430', '-119.35640'), ('TUTTLETOWN', None, '37.99160', '-120.45860'), ('TWAIN HARTE', 2586, '38.04050', '-120.23260')], 'partOfState': 'CENTRAL', 'wfo': 'HNXSTO'}, -'TXC267': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLEO', None, '30.60360', '-99.87470'), ('JUNCTION', 2618, '30.48960', '-99.77100'), ('LONDON', None, '30.67670', '-99.57610'), ('ROOSEVELT', None, '30.49080', '-100.05470'), ('SEGOVIA', None, '30.41920', '-99.67000'), ('TELEGRAPH', None, '30.32720', '-99.90580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SJT'}, -'TXC397': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FATE', 497, '32.94080', '-96.38630'), ('HEATH', 4149, '32.84780', '-96.47800'), ('MCLENDON-CHISHOLM', 914, '32.84590', '-96.38990'), ('ROCKWALL', 17976, '32.92200', '-96.45750'), ('ROYSE CITY', 2957, '32.97530', '-96.33290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC265': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAMP VERDE', None, '29.88330', '-99.10000'), ('CENTER POINT', None, '29.93330', '-99.03330'), ('HUNT', None, '30.06670', '-99.33330'), ('INGRAM', 1740, '30.07850', '-99.23670'), ('KERR WILDLIFE MGMT AREA', None, '30.09000', '-99.50000'), ('KERRVILLE', 20425, '30.04190', '-99.13610'), ('KERRVILLE STATE PARK', None, '30.04000', '-99.13600'), ('MOUNTAIN HOME', None, '30.16670', '-99.36670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC263': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLAIREMONT', None, '33.16630', '-100.75220'), ('GIRARD', 62, '33.36220', '-100.66250'), ('JAYTON', 513, '33.25010', '-100.57440')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXC261': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BORDER PATROL', None, '27.00250', '-97.78330'), ('SARITA', None, '27.21670', '-97.80000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'MIC113': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('FALMOUTH', None, '44.25000', '-85.08330'), ('JENNINGS', None, '44.33330', '-85.28330'), ('LAKE CITY', 923, '44.33030', '-85.20850'), ('LUCAS', None, '44.21670', '-85.28330'), ('MCBAIN', 584, '44.19440', '-85.21440'), ('MERRITT', None, '44.31670', '-84.93330'), ('MODDERSVILLE', None, '44.21670', '-84.95100'), ('MOORESTOWN', None, '44.47000', '-84.95000'), ('STITTSVILLE', None, '44.45000', '-85.03000'), ('VOGEL CENTER', None, '44.18330', '-85.05000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIC111': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BOMBAY', None, '43.74170', '-84.26640'), ('COLEMAN', 1296, '43.75670', '-84.58670'), ('EDENVILLE', None, '43.80000', '-84.38980'), ('GORDONVILLE', None, '43.56780', '-84.36940'), ('MIDLAND', 41685, '43.62360', '-84.22940'), ('NORTH BRADLEY', None, '43.71140', '-84.49000'), ('OIL CITY', None, '43.61080', '-84.58830'), ('PLEASANT VALLEY', None, '43.50970', '-84.58810'), ('PORTER TOWNSHIP', None, '43.51000', '-84.43500'), ('POSEYVILLE', None, '43.53970', '-84.24940'), ('SANFORD', 943, '43.67560', '-84.38060')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIC117': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AMBLE', None, '43.43130', '-85.38850'), ('BUTTERNUT', None, '43.18330', '-84.91550'), ('CARSON CITY', 1190, '43.17840', '-84.84690'), ('CEDAR LAKE', None, '43.40620', '-84.97500'), ('CORAL', None, '43.36280', '-85.40280'), ('CRYSTAL', None, '43.26300', '-84.91470'), ('EDMORE', 1244, '43.40760', '-85.03770'), ('ENTRICAN', None, '43.35030', '-85.15370'), ('FENWICK', None, '43.14920', '-85.08020'), ('GOWEN', None, '43.25170', '-85.30200'), ('GREENVILLE', 7935, '43.17800', '-85.25390'), ('HOWARD CITY', 1585, '43.39520', '-85.46620'), ('KINGS CORNER', None, '43.24920', '-85.07330'), ('LAKEVIEW', 1112, '43.44650', '-85.27550'), ('LANGSTON', None, '43.31380', '-85.24380'), ('MCBRIDE', 232, '43.35280', '-85.04310'), ('PIERSON', 185, '43.31900', '-85.49750'), ('SHERIDAN', 705, '43.21040', '-85.07260'), ('SIDNEY', None, '43.25000', '-85.13300'), ('SIX LAKES', None, '43.42500', '-85.15000'), ('STANTON', 1504, '43.29310', '-85.07930'), ('TRUFANT', None, '43.31380', '-85.35450'), ('TURK LAKE', None, '43.27080', '-85.25630'), ('VESTABURG', None, '43.39920', '-84.90550'), ('WESTVILLE', None, '43.35780', '-85.08370'), ('WYMAN', None, '43.45500', '-85.04300')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'TXC427': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EL SAUZ', None, '26.56700', '-98.86700'), ('FALCON DAM', None, '26.55000', '-99.13330'), ('GARCIASVILLE', None, '26.33230', '-98.71710'), ('LA GLORIA', None, '26.71670', '-98.54000'), ('RIO GRANDE CITY', 11923, '26.37850', '-98.82630'), ('ROMA', 9617, '26.41340', '-99.00240')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'MIC115': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CARLETON', 2562, '42.05750', '-83.38980'), ('CONE', None, '42.03190', '-83.75310'), ('DUNDEE', 3522, '41.95700', '-83.66040'), ('ESTRAL BEACH', 486, '41.98800', '-83.24100'), ('IDA', None, '41.91040', '-83.57400'), ('LAMBERTVILLE', 9299, '41.74730', '-83.62290'), ('LA SALLE', None, '41.86780', '-83.45220'), ('LUNA PIER', 1483, '41.80510', '-83.44250'), ('MAYBEE', 505, '42.00580', '-83.51610'), ('MONROE', 22076, '41.91670', '-83.38600'), ('OTTAWA LAKE', None, '41.76350', '-83.74830'), ('PETERSBURG', 1157, '41.89960', '-83.71180'), ('SOUTH ROCKWOOD', 1284, '42.06200', '-83.26060'), ('STONY POINT', 1775, '41.94720', '-83.27140'), ('TEMPERANCE', 7757, '41.76760', '-83.57230')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'COC085': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BEDROCK', None, '38.32000', '-108.88000'), ('CIMMARON', None, '38.45000', '-107.55000'), ('MAHER', None, '38.65000', '-107.58000'), ('MONTROSE', 12344, '38.47940', '-107.87140'), ('NATURITA', 635, '38.21900', '-108.56800'), ('NUCLA', 734, '38.26680', '-108.54960'), ('OLATHE', 1573, '38.60570', '-107.98170'), ('PARADOX', None, '38.37000', '-108.95000'), ('REDVALE', None, '38.18000', '-108.42000'), ('URAVAN', None, '38.37000', '-108.73000'), ('VANCORUM', None, '38.23000', '-108.60000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'COC087': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ADENA', None, '40.01700', '-103.88600'), ('ADENA SCHOOL', None, '40.11700', '-103.79200'), ('ANTELOPE SPRINGS', None, '40.43800', '-103.71400'), ('BRUSH', 5117, '40.25680', '-103.63230'), ('FORT MORGAN', 11034, '40.26520', '-103.79460'), ('FORT MORGAN AIRPORT', None, '40.33300', '-103.80000'), ('GARY', None, '40.07400', '-103.58300'), ('GOODRICH', None, '40.35000', '-104.07000'), ('HILLROSE', 254, '40.32450', '-103.52220'), ('HOYT', None, '40.02000', '-104.07000'), ('HOYT BEET DUMP', None, '40.07400', '-104.05400'), ('JACKSON RESERVOIR', None, '40.38300', '-104.06700'), ('LOG LANE VILLAGE', 1006, '40.27000', '-103.82840'), ('ORCHARD', None, '40.33000', '-104.12000'), ('SNYDER', None, '40.32000', '-103.58000'), ('TWELVE-MILE CORNER', None, '40.07300', '-103.79200'), ('UNION', None, '40.35000', '-103.50000'), ('WELDONA', None, '40.35000', '-103.97000'), ('WIGGINS', 838, '40.23030', '-104.07330')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'WVC045': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('AMHERSTDALE-ROBINETTE', 1785, '37.77980', '-81.77390'), ('CHAPMANVILLE', 1211, '37.97340', '-82.01820'), ('CHIEF LOGAN STATE PARK', None, '37.89340', '-82.00900'), ('HOLDEN', 1105, '37.81440', '-82.06670'), ('LOGAN', 1630, '37.84910', '-81.98690'), ('MALLORY', 1143, '37.73480', '-81.81890'), ('MAN', 770, '37.74260', '-81.87430'), ('MITCHELL HEIGHTS', 301, '37.90920', '-81.98870'), ('MOUNT GAY', None, '37.85420', '-82.04270'), ('SWITZER', 1138, '37.78630', '-81.97390'), ('WEST LOGAN', 418, '37.86790', '-81.99300')], 'partOfState': '', 'wfo': 'RLX'}, -'COC081': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARTESIA', None, '40.22000', '-109.02000'), ('AXIAL', None, '40.25000', '-107.78000'), ('BLUE MOUNTAIN', None, '40.25000', '-108.85000'), ('CRAIG', 9189, '40.51690', '-107.55340'), ('DINOSAUR', 319, '40.24160', '-109.00800'), ('ELK SPRINGS', None, '40.35000', '-108.45000'), ('FORTIFICATION', None, '40.82100', '-107.61700'), ('GREAT DIVIDE', None, '40.78000', '-107.82000'), ('GREYSTONE', None, '40.62000', '-108.67000'), ('HAMILTON', None, '40.37000', '-107.60000'), ('HIAWATHA', None, '40.98000', '-108.62000'), ('JUNIPER SPRINGS', None, '40.43000', '-107.95000'), ('LAY', None, '40.52000', '-107.87000'), ('LOYD', None, '40.27000', '-107.72000'), ('MASSADONA', None, '40.22000', '-108.62000'), ('MAYBELL', None, '40.52000', '-108.08000'), ('POWDER WASH', None, '40.95000', '-108.30000'), ('SLATER', None, '41.00000', '-107.37000'), ('SPARKS', None, '40.88000', '-108.55000'), ('SUNBEAM', None, '40.55000', '-108.18000')], 'partOfState': 'NORTHWEST', 'wfo': 'GJT'}, -'COC083': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARRIOLA', None, '37.43000', '-108.65000'), ('CORTEZ', 7977, '37.35150', '-108.57730'), ('DOLORES', 857, '37.47450', '-108.49760'), ('LEBANON', None, '37.45000', '-108.60000'), ('LEWIS', None, '37.50000', '-108.67000'), ('MANCOS', 1119, '37.34650', '-108.29340'), ('MESA VERDE NATL PARK', None, '37.15000', '-108.48000'), ('STONER', None, '37.58000', '-108.32000'), ('TOWAOC', 1097, '37.20990', '-108.72720'), ('YELLOW JACKET', None, '37.53000', '-108.72000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'TXC421': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('STRATFORD', 1991, '36.33720', '-102.07360'), ('TEXHOMA', 371, '36.48770', '-101.81000')], 'partOfState': '', 'wfo': 'AMA'}, -'VAC023': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARCADIA', None, '37.55000', '-79.63330'), ('BLUE RIDGE', 3188, '37.38350', '-79.82010'), ('BLUE RIDGE', 3188, '37.38330', '-79.81670'), ('BUCHANAN', 1233, '37.51670', '-79.68330'), ('CLOVERDALE', 2986, '37.36670', '-79.91670'), ('CLOVERDALE', 2986, '37.35700', '-79.90690'), ('DALEVILLE', 1454, '37.41670', '-79.91670'), ('DALEVILLE', 1454, '37.41520', '-79.92150'), ('EAGLE ROCK', None, '37.63330', '-79.80000'), ('FINCASTLE', 359, '37.50000', '-79.88330'), ('FINCASTLE', 359, '37.49860', '-79.87550'), ('GALA', None, '37.68330', '-79.81670'), ('GLEN WILTON', None, '37.75000', '-79.81670'), ('LAYMANTOWN', 2034, '37.36570', '-79.85790'), ('LITHIA', None, '37.48330', '-79.75000'), ('NACE', None, '37.43330', '-79.85000'), ('ORISKANY', None, '37.61670', '-79.98330'), ('SPRINGWOOD', None, '37.55000', '-79.75000'), ('TROUTVILLE', 432, '37.41360', '-79.87800')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'COC089': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CHERAW', 211, '38.10780', '-103.51070'), ('FOWLER', 1206, '38.12830', '-104.02450'), ('HIGBEE', None, '37.77000', '-103.45000'), ('LA JUNTA', 7568, '37.98030', '-103.54440'), ('MANZANOLA', 525, '38.10880', '-103.86620'), ('ROCKY FORD', 4286, '38.04990', '-103.72190'), ('SWINK', 696, '38.01380', '-103.62730'), ('TIMPAS', None, '37.82000', '-103.77000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'NMC028': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('LOS ALAMOS', 11909, '35.89380', '-106.28390'), ('WHITE ROCK', 6045, '35.80380', '-106.21040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABQ'}, -'NMC029': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('COLUMBUS', 1765, '31.82890', '-107.64080'), ('DEMING', 14116, '32.26170', '-107.75040'), ('GAGE', None, '32.22940', '-108.08580'), ('UVAS VALLEY', None, '32.53890', '-107.40000')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'TXC391': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AUSTWELL', 192, '28.39010', '-96.84330'), ('BAYSIDE', 360, '28.07580', '-97.24080'), ('REFUGIO', 2941, '28.30710', '-97.27500'), ('TIVOLI', None, '28.43333', '-96.88333'), ('WOODSBORO', 1685, '28.23750', '-97.32480')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'NMC023': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ANIMAS', None, '31.94890', '-108.83530'), ('ANTELOPE WELLS', None, '31.35330', '-108.53330'), ('LORDSBURG', 3379, '32.34330', '-108.70200'), ('ROAD FORKS', None, '32.22100', '-109.00010'), ('RODEO', None, '31.83530', '-109.03060'), ('VIRDEN', 143, '32.68860', '-109.00200')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'NMC021': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BUEYEROS', None, '35.97900', '-103.68700'), ('CHICOSA LAKE STATE PARK', None, '36.05000', '-104.16700'), ('MILLS', None, '36.08500', '-104.25500'), ('ROSEBUD', None, '35.84100', '-103.44500'), ('ROY', 304, '35.94540', '-104.19630'), ('SOLANO', None, '35.84800', '-104.06700'), ('YATES', None, '36.13000', '-103.90100')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'NMC027': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALTO', None, '33.39900', '-105.68000'), ('ANCHO', None, '33.93800', '-105.73900'), ('ANGUS', None, '33.51700', '-105.63300'), ('ARABELA', None, '33.58700', '-105.17300'), ('BONITO LAKE', None, '33.45100', '-105.70800'), ('CAPITAN', 1443, '33.54040', '-105.59390'), ('CARRIZOZO', 1036, '33.64380', '-105.88330'), ('CORONA', 165, '34.24970', '-105.59670'), ('ENCINOSO', None, '33.68600', '-105.48300'), ('FORT STANTON', None, '33.49600', '-105.52300'), ('GLENCOE', None, '33.40900', '-105.44800'), ('HOLLYWOOD', None, '33.32300', '-105.63400'), ('HONDO', None, '33.38800', '-105.27000'), ('JICARILLA', None, '33.86900', '-105.66300'), ('LINCOLN', None, '33.49200', '-105.38300'), ('NOGAL', None, '33.55800', '-105.70700'), ('OSCURO', None, '33.48400', '-106.05400'), ('PICACHO', None, '33.35200', '-105.14400'), ('RUIDOSO', 7698, '33.36600', '-105.64250'), ('RUIDOSO DOWNS', 1824, '33.33160', '-105.60370'), ('SAN PATRICIO', None, '33.40900', '-105.32600'), ('SUNSET', None, '33.33900', '-105.07500'), ('WHITE OAKS', None, '33.74800', '-105.73600')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'WIC117': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ADELL', 517, '43.62080', '-87.94620'), ('CASCADE', 666, '43.65940', '-88.00850'), ('CEDAR GROVE', 1887, '43.56710', '-87.82360'), ('ELKHART LAKE', 1021, '43.83280', '-88.01460'), ('GLENBEULAH', 378, '43.79860', '-88.04660'), ('HOWARDS GROVE', 2792, '43.82960', '-87.82590'), ('KOHLER', 1926, '43.73550', '-87.77900'), ('OOSTBURG', 2660, '43.62430', '-87.79760'), ('PLYMOUTH', 7781, '43.74720', '-87.97200'), ('RANDOM LAKE', 1551, '43.55500', '-87.95600'), ('SHEBOYGAN', 50792, '43.74570', '-87.73010'), ('SHEBOYGAN FALLS', 6772, '43.72980', '-87.82260'), ('WALDO', 450, '43.67560', '-87.94650')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MKX'}, -'NMC025': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BENNETT', None, '32.06770', '-103.21060'), ('BRONCO', None, '33.25690', '-103.05860'), ('BUCKEYE', None, '32.80190', '-103.50530'), ('CAPROCK', None, '33.39190', '-103.71000'), ('CROSSROADS', None, '33.51220', '-103.33920'), ('EUNICE', 2562, '32.44250', '-103.19320'), ('GLADIOLA', None, '33.25720', '-103.17940'), ('HALFWAY', None, '32.55170', '-103.73500'), ('HOBBS', 28657, '32.73430', '-103.16280'), ('HUMBLE CITY', None, '32.79500', '-103.21860'), ('JAL', 1996, '32.11350', '-103.18940'), ('KNOWLES', None, '32.84020', '-103.12720'), ('LOVINGTON', 9471, '32.94530', '-103.35030'), ('MALJAMAR', None, '32.85610', '-103.76220'), ('MCDONALD', None, '33.14060', '-103.31690'), ('MONUMENT', None, '32.62390', '-103.26390'), ('NADINE', None, '32.62390', '-103.12690'), ('OIL CENTER', None, '32.49690', '-103.26080'), ('TATUM', 683, '33.25530', '-103.31530')], 'partOfState': 'SOUTHEAST', 'wfo': 'MAF'}, -'VAC610': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('FALLS CHURCH', 10377, '38.88500', '-77.17460')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'TXC191': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRICE', None, '34.71000', '-100.88970'), ('ESTELLINE', 168, '34.54710', '-100.43940'), ('LAKEVIEW', 152, '34.67280', '-100.69720'), ('MEMPHIS', 2479, '34.72670', '-100.54120'), ('TURKEY', 494, '34.39420', '-100.89550')], 'partOfState': '', 'wfo': 'LUB'}, -'NJC019': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ANNANDALE', 1276, '40.64500', '-74.89110'), ('BLOOMSBURY', 886, '40.65300', '-75.08560'), ('CALIFON', 1055, '40.71920', '-74.83680'), ('CLINTON', 2632, '40.63530', '-74.91230'), ('FLEMINGTON', 4200, '40.50910', '-74.86030'), ('FRENCHTOWN', 1488, '40.52580', '-75.05630'), ('GLEN GARDNER', 1902, '40.69900', '-74.94120'), ('HIGH BRIDGE', 3776, '40.66840', '-74.89570'), ('LAMBERTVILLE', 3868, '40.36800', '-74.94330'), ('LEBANON', 1065, '40.64390', '-74.83510'), ('MILFORD', 1195, '40.56820', '-75.09010'), ('STOCKTON', 560, '40.40540', '-74.97750'), ('WHITE HOUSE STATION', 1951, '40.61620', '-74.77240')], 'partOfState': 'NORTHWEST', 'wfo': 'PHI'}, -'TXC193': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CRANFILLS GAP', 335, '31.77620', '-97.82980'), ('HAMILTON', 2977, '31.70500', '-98.12120'), ('HICO', 1341, '31.98340', '-98.02850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'WVC083': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEVERLY', 651, '38.84240', '-79.87480'), ('DAILEY', None, '38.79870', '-79.89650'), ('ELKINS', 7032, '38.92510', '-79.85360'), ('HARMAN', 126, '38.92140', '-79.52480'), ('HUTTONSVILLE', 217, '38.71470', '-79.97630'), ('MILL CREEK', 662, '38.73160', '-79.97250'), ('MONTROSE', 156, '39.06960', '-79.81070'), ('WOMELSDORF (COALTON)', 247, '38.89770', '-79.96450')], 'partOfState': '', 'wfo': 'RLX'}, -'TXC195': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRUVER', 1162, '36.25650', '-101.41110'), ('MORSE', 172, '36.06250', '-101.47500'), ('SPEARMAN', 3021, '36.19750', '-101.19360')], 'partOfState': '', 'wfo': 'AMA'}, -'WVC085': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('AUBURN', 103, '39.09530', '-80.85670'), ('CAIRO', 263, '39.20810', '-81.15570'), ('ELLENBORO', 373, '39.26550', '-81.05500'), ('HARRISVILLE', 1842, '39.21070', '-81.04970'), ('NORTH BEND STATE PARK', None, '39.22310', '-81.11070'), ('PENNSBORO', 1199, '39.28160', '-80.97500'), ('PULLMAN', 169, '39.18740', '-80.94960')], 'partOfState': '', 'wfo': 'RLX'}, -'TXC197': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ACME', None, '34.32000', '-99.83000'), ('CHILLICOTHE', 798, '34.25560', '-99.51390'), ('GOODLETT', None, '34.35000', '-99.88000'), ('MEDICINE MOUND', None, '34.18780', '-99.59420'), ('NORTH GROESBECK', None, '34.42000', '-99.87000'), ('QUANAH', 3022, '34.29560', '-99.74250')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'WVC087': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('REEDY', 198, '38.89880', '-81.42720'), ('SPENCER', 2352, '38.80420', '-81.35630')], 'partOfState': '', 'wfo': 'RLX'}, -'TXC199': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('VILLAGE MILLS', None, '30.49400', '-94.39800'), ('BATSON', None, '30.24920', '-94.60690'), ('HONEY ISLAND', None, '30.39530', '-94.44060'), ('KOUNTZE', 2115, '30.37240', '-94.31550'), ('LUMBERTON', 8731, '30.26450', '-94.20180'), ('SARATOGA', None, '30.28390', '-94.52920'), ('SILSBEE', 6393, '30.34470', '-94.18040'), ('SOUR LAKE', 1667, '30.13600', '-94.40390'), ('THICKET', None, '30.39560', '-94.63000'), ('WILDWOOD', None, '30.51830', '-94.44390')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'NJC011': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BRIDGETON', 22771, '39.42750', '-75.22810'), ('FAIRTON', 2253, '39.37790', '-75.21490'), ('MILLVILLE', 26847, '39.39000', '-75.05470'), ('PORT NORRIS', 1507, '39.24800', '-75.04110'), ('ROSENHAYN', 1099, '39.47890', '-75.13650'), ('SEABROOK FARMS', 1719, '39.50100', '-75.21830'), ('SHILOH', 534, '39.45800', '-75.29800'), ('VINELAND', 56271, '39.46480', '-74.99740')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJC013': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BELLEVILLE', 35928, '40.79490', '-74.16270'), ('BLOOMFIELD', 47683, '40.81060', '-74.18690'), ('CALDWELL', 7584, '40.83840', '-74.27790'), ('CEDAR GROVE', 12300, '40.85610', '-74.22950'), ('EAST NEWARK', 2377, '40.75030', '-74.16330'), ('EAST ORANGE', 69824, '40.76590', '-74.21210'), ('FAIRFIELD', 7063, '40.88360', '-74.30630'), ('GLEN RIDGE', 7271, '40.80310', '-74.20500'), ('IRVINGTON', 60695, '40.72450', '-74.23250'), ('LIVINGSTON', 27391, '40.78560', '-74.32950'), ('MAPLEWOOD', 23868, '40.73310', '-74.27190'), ('MILLBURN', 19765, '40.74030', '-74.32450'), ('MONTCLAIR', 38977, '40.82450', '-74.21160'), ('NEWARK', 273546, '40.72410', '-74.17320'), ('NORTH CALDWELL', 7375, '40.86340', '-74.25910'), ('NUTLEY', 27362, '40.81880', '-74.15720'), ('ORANGE', 32868, '40.76820', '-74.23640'), ('ROSELAND', 5298, '40.82200', '-74.30840'), ('SOUTH ORANGE', 16964, '40.74900', '-74.26160'), ('VERONA', 13533, '40.83230', '-74.24270'), ('WEST CALDWELL', 11233, '40.84990', '-74.29830'), ('WEST ORANGE', 44943, '40.79290', '-74.26360')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'NJC015': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BECKETT', 4726, '39.75390', '-75.35790'), ('CLAYTON', 7139, '39.65910', '-75.08300'), ('GIBBSTOWN', 3758, '39.82430', '-75.27980'), ('GLASSBORO', 19068, '39.70130', '-75.11330'), ('MULLICA HILL', 1658, '39.73620', '-75.22460'), ('NATIONAL PARK', 3205, '39.86800', '-75.18610'), ('NEWFIELD', 1616, '39.54940', '-75.01870'), ('OAK VALLEY', 3747, '39.80590', '-75.15910'), ('PAULSBORO', 6160, '39.83980', '-75.24040'), ('PITMAN', 9331, '39.73320', '-75.13100'), ('SWEDESBORO', 2055, '39.74610', '-75.31280'), ('TURNERSVILLE', 3867, '39.76540', '-75.06210'), ('VICTORY LAKES', 2118, '39.63290', '-74.96650'), ('WENONAH', 2317, '39.79170', '-75.14850'), ('WILLIAMSTOWN', 11812, '39.68570', '-74.98390'), ('WOODBURY', 10307, '39.83720', '-75.15340'), ('WOODBURY HEIGHTS', 2988, '39.81630', '-75.15100')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJC017': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BAYONNE', 61842, '40.66500', '-74.11050'), ('GUTTENBERG', 10807, '40.79270', '-74.00490'), ('HARRISON', 14424, '40.74350', '-74.15340'), ('HOBOKEN', 38577, '40.74260', '-74.02880'), ('JERSEY CITY', 240055, '40.71130', '-74.06500'), ('KEARNY', 40513, '40.75130', '-74.11970'), ('NORTH BERGEN', None, '40.79260', '-74.02580'), ('SECAUCUS', 15931, '40.78110', '-74.06480'), ('UNION CITY', 67088, '40.76710', '-74.03250'), ('WEEHAWKEN', None, '40.76870', '-74.01890'), ('WEST NEW YORK', 45768, '40.78590', '-74.00980')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'TXC461': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KING MOUNTAIN', None, '31.23580', '-102.20690'), ('MCCAMEY', 1805, '31.13260', '-102.21950'), ('MIDKIFF', None, '31.63270', '-101.83940'), ('RANKIN', 800, '31.22520', '-101.93940'), ('THE INTERSECTION OF SH 32', None, '31.43000', '-102.17220')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC463': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CONCAN', None, '29.51670', '-99.73330'), ('GARNER STATE PARK', None, '29.57000', '-99.74000'), ('KNIPPA', 739, '29.30000', '-99.63330'), ('MONTELL', None, '29.53330', '-100.01670'), ('REAGAN WELLS', None, '29.55000', '-99.80000'), ('SABINAL', 1586, '29.32140', '-99.46870'), ('UTOPIA', 241, '29.61670', '-99.53330'), ('UVALDE', 14929, '29.21550', '-99.78490')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC465': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMSTOCK', None, '29.68330', '-101.16670'), ('DEL RIO', 33867, '29.37630', '-100.89570'), ('JUNO', None, '30.15000', '-101.11670'), ('LANGTRY', None, '29.81670', '-101.56670'), ('LAUGHLIN AFB', 2225, '29.35570', '-100.78380'), ('LOMA ALTA', None, '29.91670', '-100.76670'), ('PANDALE', None, '30.18330', '-101.55000'), ('SEMINOLE CANYON STATE PAR', None, '29.70000', '-101.34000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC467': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CANTON', 3292, '32.54750', '-95.86390'), ('EDGEWOOD', 1348, '32.69480', '-95.88210'), ('EDOM', 322, '32.37300', '-95.61110'), ('FRUITVALE', 418, '32.68390', '-95.80360'), ('GRAND SALINE', 3028, '32.67750', '-95.71120'), ('VAN', 2362, '32.52370', '-95.63730'), ('WILLS POINT', 3496, '32.70940', '-96.00620')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'TXC469': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLOOMINGTON', 2562, '28.63333', '-96.88333'), ('DACOSTA', None, '28.71666', '-96.88333'), ('INEZ', 1787, '28.88333', '-96.78333'), ('MCFADDIN', None, '28.51666', '-97.01666'), ('MISSION VALLEY', None, '28.85050', '-97.15670'), ('NURSERY', None, '28.91666', '-97.10300'), ('PLACEDO', None, '28.66666', '-96.83333'), ('TELFERNER', None, '28.83333', '-96.83333'), ('VICTORIA', 60603, '28.82420', '-96.98290')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'GAC081': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARABI', 456, '31.83330', '-83.73500'), ('CORDELE', 11608, '31.96520', '-83.77000')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'PRC059': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('GUAYANILLA', 5110, '18.02490', '-66.79000'), ('INDIOS', 1739, '17.99610', '-66.81980'), ('MAGAS ARRIBA', 1063, '18.02490', '-66.76580')], 'partOfState': '', 'wfo': 'SJU'}, -'GAC087': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMSTERDAM', None, '30.72700', '-84.43480'), ('ATTAPULGUS', 492, '30.74930', '-84.48460'), ('AUSMAC', None, '30.99530', '-84.62470'), ('BAINBRIDGE', 11722, '30.90600', '-84.57770'), ('BETHANY', None, '30.85550', '-84.72420'), ('BIG SLOUGH BOAT LANDING', None, '30.93000', '-84.55470'), ('BRINSON', 225, '30.97880', '-84.73730'), ('CLIMAX', 297, '30.87560', '-84.43130'), ('CYRENE', None, '30.96070', '-84.69240'), ('DECATUR CO A/P', None, '30.97090', '-84.63730'), ('ELDORENDO', None, '31.04320', '-84.65200'), ('FACEVILLE', None, '30.75340', '-84.63970'), ('FACEVILLE LANDING', None, '30.76990', '-84.65180'), ('FOWLSTOWN', None, '30.80280', '-84.54790'), ('HALES LANDING', None, '30.84600', '-84.66020'), ('HANNATOWN', None, '30.71060', '-84.67010'), ('HANOVER', None, '30.94200', '-84.64910'), ('HUTCHINSON LANDING', None, '30.76500', '-84.73700'), ('JINKS', None, '30.71480', '-84.82390'), ('LAINGKAT', None, '30.71770', '-84.48870'), ('LYNN', None, '30.97750', '-84.61520'), ('MOUNT PLEASANT', None, '31.02240', '-84.46020'), ('RECOVERY', None, '30.75510', '-84.73760'), ('STEINHAM STORE', None, '31.02270', '-84.54580'), ('SURF', None, '30.98220', '-84.42070'), ('VADA', None, '31.07730', '-84.41340'), ('WEST BAINBRIDGE', None, '30.92020', '-84.58860')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAC085': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAWSONVILLE', 619, '34.42070', '-84.11940')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'TNC079': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COTTAGE GROVE', 97, '36.37980', '-88.47790'), ('HENRY', 520, '36.20050', '-88.41060'), ('PARIS', 9763, '36.30020', '-88.30730'), ('PURYEAR', 667, '36.44250', '-88.33480'), ('ROUTON', None, '36.23330', '-88.38330'), ('SPRINGVILLE', None, '36.25000', '-88.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'KSC049': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ELK FALLS', 112, '37.37400', '-96.19250'), ('GRENOLA', 231, '37.35070', '-96.44820'), ('HOWARD', 808, '37.46950', '-96.26270'), ('LONGTON', 394, '37.37750', '-96.08260'), ('MOLINE', 457, '37.36370', '-96.30180')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'FLC029': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CROSS CITY', 1775, '29.63200', '-83.12610'), ('CROSS CITY A/P', None, '29.63380', '-83.10500'), ('FIRST DISTRICT', None, '29.74660', '-82.98460'), ('HINES', None, '29.73730', '-83.23680'), ('HORSESHOE BEACH', 206, '29.44020', '-83.28810'), ('JENA', None, '29.66330', '-83.36520'), ('JONESBORO', None, '29.70700', '-83.29510'), ('OLD TOWN', None, '29.59920', '-82.98240'), ('ROCKY CREEK', None, '29.59100', '-83.37740'), ('SHIRED ISLAND', None, '29.39490', '-83.20100'), ('SUWANNEE', None, '29.32810', '-83.14400'), ('YELLOW JACKET', None, '29.46170', '-83.00170')], 'partOfState': '', 'wfo': 'TAE'}, -'GAC245': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AUGUSTA', None, '33.45730', '-81.99500'), ('EAST BOUNDARY', None, '33.45990', '-81.94170'), ('FORT GORDON', None, '33.41710', '-82.14090'), ('HEPHZIBAH', 3880, '33.28730', '-82.10600'), ('SOUTH AUGUSTA', None, '33.41780', '-82.04830'), ('WEST AUGUSTA', None, '33.48680', '-82.05840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'TNC071': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CRUMP', 1521, '35.23980', '-88.32180'), ('MORRIS CHAPEL', None, '35.31670', '-88.35000'), ('OLIVE HILL', None, '35.26670', '-88.03330'), ('PICKWICK DAM', None, '35.05000', '-88.25000'), ('SALTILLO', 342, '35.37780', '-88.21050'), ('SAVANNAH', 6917, '35.22290', '-88.23720'), ('SHILOH', None, '35.11670', '-88.36670'), ('WALNUT GROVE', 677, '35.05000', '-88.05000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'GAC247': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CONYERS', 10689, '33.66400', '-84.01240'), ('LAKEVIEW ESTATES', 2637, '33.70560', '-84.04000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'TNC073': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BULLS GAP', 714, '36.26420', '-83.07900'), ('CHURCH HILL', 5916, '36.52530', '-82.71200'), ('KEPLER', None, '36.39970', '-82.88720'), ('KLONDIKE', None, '36.43860', '-83.13220'), ('MCCLOUD', None, '36.36530', '-82.97110'), ('MOORESBURG', None, '36.34610', '-83.22970'), ('MOUNT CARMEL', 4795, '36.56090', '-82.65870'), ('OKOLONA', None, '36.58140', '-82.77470'), ('ROGERSVILLE', 4240, '36.40670', '-83.00520'), ('ST. CLAIR', None, '36.32920', '-83.08560'), ('SURGOINSVILLE', 1484, '36.47330', '-82.85790')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC041': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('SOLOMON', 1072, '38.91970', '-97.37140'), ('ABILENE', 6543, '38.91720', '-97.21360'), ('CARLTON', 38, '38.68720', '-97.29310'), ('CHAPMAN', 1241, '38.97220', '-97.02220'), ('ENTERPRISE', 836, '38.90280', '-97.11670'), ('HERINGTON', 2563, '38.67110', '-96.94220'), ('HOPE', 372, '38.69030', '-97.07640'), ('MANCHESTER', 102, '39.09470', '-97.32450'), ('MOONLIGHT', None, '39.00280', '-97.10220'), ('SOLOMON', 1072, '38.91950', '-97.36080'), ('TALMAGE', None, '39.02500', '-97.26030'), ('WOODBINE', 207, '38.79610', '-96.95830')], 'partOfState': 'CENTRAL', 'wfo': 'TOP'}, -'TNC075': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELLE EAGLE', None, '35.68330', '-89.25000'), ('BROWNSVILLE', 10748, '35.59450', '-89.25500'), ('DANCYVILLE', None, '35.41670', '-89.30000'), ('FORKED DEER', None, '35.76670', '-89.40000'), ('HILLVILLE', None, '35.45000', '-89.16670'), ('HOLLY GROVE', None, '35.65000', '-89.13330'), ('NUTBUSH', None, '35.70000', '-89.41670'), ('STANTON', 615, '35.46200', '-89.40080')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'FLC021': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BONITA SHORES', None, '26.32000', '-81.84000'), ('BUNKER HILL', None, '26.39000', '-81.38000'), ('CARNESTOWN', None, '25.91000', '-81.36000'), ('COPELAND', None, '25.96000', '-81.35000'), ('DADE-COLLIER TRAINING AIR', None, '25.86000', '-80.90000'), ('DEEP LAKE', None, '26.04000', '-81.34000'), ('EAST NAPLES', None, '26.14000', '-81.74000'), ('EVERGLADES CITY', None, '25.86000', '-81.38500'), ('FIDDLERS CREEK', None, '26.04000', '-81.69000'), ('GOLDEN GATE', 20951, '26.18000', '-81.70000'), ('GOODLAND', 320, '25.92000', '-81.66000'), ('IMMOKALEE', 19763, '26.42000', '-81.44000'), ('JEROME', None, '26.00000', '-81.34000'), ('KEY MARCO', None, '25.91000', '-81.68000'), ('LELY', 3857, '26.10000', '-81.71000'), ('MARCO ISLAND', 14879, '25.94000', '-81.73000'), ('MARCO ISLAND AIRPORT', None, '26.00000', '-81.66000'), ('MILES CITY', None, '26.15000', '-81.34000'), ('MONROE STATION', None, '25.86000', '-81.10000'), ('NAPLES', 20976, '26.14000', '-81.80000'), ('NORTH BLOCKS GOLDEN GATE', None, '26.23000', '-81.54000'), ('NORTH NAPLES', None, '26.22000', '-81.76000'), ('OASIS RANGER STATION', None, '25.86000', '-81.03000'), ('OCHOPEE', None, '25.90000', '-81.30000'), ('ORANGE TREE', None, '26.28000', '-81.59000'), ('PELICAN BAY', 5686, '26.23000', '-81.81000'), ('PORT OF THE ISLANDS', None, '25.96000', '-81.51000'), ('QUAIL CREEK ESTATES', None, '26.30000', '-81.74000'), ('ROCK ISLAND', 3076, '26.13000', '-81.34000'), ('ROYAL PALM HAMMOCK', None, '25.99000', '-81.59000'), ('SOUTH BLOCKS GOLDEN GATE', None, '26.06000', '-81.54000'), ('SUNNILAND', None, '26.27000', '-81.34000'), ('VANDERBILT BEACH', None, '26.27000', '-81.82000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFL'}, -'TNC077': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BARGERTON', None, '35.73330', '-88.50000'), ('BLUE GOOSE', None, '35.70000', '-88.58320'), ('DARDEN', None, '35.63330', '-88.23330'), ('LEXINGTON', 7393, '35.65390', '-88.39300'), ("PARKER'S CROSS ROADS", None, '35.78880', '-88.39270'), ('REAGAN', None, '35.51670', '-88.35000'), ('SARDIS', 445, '35.44310', '-88.29430'), ('SCOTTS HILL', 894, '35.51540', '-88.25060'), ('WILDERSVILLE', None, '35.78330', '-88.36670')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'GAC065': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARGYLE', 151, '31.07370', '-82.64940'), ('COGDELL', None, '31.16400', '-82.71900'), ('DU PONT', 139, '30.98920', '-82.86990'), ('FARGO', 380, '30.68510', '-82.56230'), ('HOMERVILLE', 2803, '31.03610', '-82.75360')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'ILC141': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADELINE', 139, '42.14080', '-89.49050'), ('BYRON', 2917, '42.12840', '-89.25830'), ('CRESTON', 543, '41.93080', '-88.96550'), ('DAVIS JUNCTION', 491, '42.10190', '-89.09200'), ('FORRESTON', 1469, '42.12610', '-89.57870'), ('HILLCREST', 1158, '41.95250', '-89.07040'), ('LEAF RIVER', 555, '42.12320', '-89.40290'), ('MOUNT MORRIS', 3013, '42.04890', '-89.43200'), ('OREGON', 4060, '42.01310', '-89.33540'), ('POLO', 2477, '41.98470', '-89.57830'), ('ROCHELLE', 9424, '41.91840', '-89.06270'), ('STILLMAN VALLEY', 1048, '42.10400', '-89.17810')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'NCC079': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('HOOKERTON', 467, '35.42290', '-77.58920'), ('SNOW HILL', 1514, '35.45140', '-77.67450'), ('WALSTONBURG', 224, '35.59470', '-77.69920')], 'partOfState': '', 'wfo': 'MHX'}, -'GAC061': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BAGBY SP', None, '31.73890', '-85.07460'), ('BETHEL', None, '31.67810', '-84.95900'), ('BLUFFTON', 118, '31.52000', '-84.86700'), ('COTTON HILL', None, '31.72940', '-84.96660'), ('DAYS CROSSROADS', None, '31.72050', '-85.04380'), ('FORT GAINES', 1110, '31.60370', '-85.05000'), ('GARNERSVILLE', None, '31.75180', '-84.99910'), ('HARRISONS MILL', None, '31.54670', '-84.88590'), ('JEFF', None, '31.55480', '-84.81040'), ('JONES CROSSING', None, '31.64020', '-84.97250'), ('MOORES CROSSROADS', None, '31.74300', '-85.01730'), ('PECAN', None, '31.63920', '-84.99250'), ('RICKS PLACE', None, '31.76170', '-85.09880'), ('RICKS PLACE', None, '31.76130', '-85.09920'), ('STANDLEYS STORE', None, '31.71380', '-85.08820'), ('SUTTONS CORNER', None, '31.59970', '-84.84430'), ('WATSON CROSSROADS', None, '31.72820', '-85.01730'), ('ZETTO', None, '31.59200', '-84.93640')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAC063': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BONANZA', 2904, '33.45580', '-84.33660'), ('CONLEY', 6188, '33.63790', '-84.33660'), ('FOREST PARK', 21447, '33.61900', '-84.35540'), ('IRONDALE', 7727, '33.48040', '-84.35890'), ('JONESBORO', 3829, '33.52210', '-84.35290'), ('LAKE CITY', 2886, '33.60800', '-84.34060'), ('LOVEJOY', 2495, '33.43950', '-84.31620'), ('MORROW', 4882, '33.57840', '-84.34020'), ('RIVERDALE', 12478, '33.56610', '-84.40820')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'NCC073': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ACORN HILL', None, '36.44270', '-76.54680'), ('BUCKLAND', None, '36.47420', '-76.76170'), ('CARTER', None, '36.35720', '-76.68430'), ('CHOWAN BEACH', None, '36.41750', '-76.95000'), ('CORAPEAKE', None, '36.53440', '-76.57680'), ('DORT', None, '36.52920', '-76.87010'), ('DRUM HILL', None, '36.54150', '-76.72520'), ('EASONS CROSSROADS', None, '36.44970', '-76.69940'), ('EURE', None, '36.42600', '-76.85630'), ('GATES', None, '36.50350', '-76.76860'), ('GATESVILLE', 281, '36.40720', '-76.75540'), ('HAZELTON', None, '36.51800', '-76.69900'), ('HOBBSVILLE', None, '36.34760', '-76.60410'), ('RAYS BEACH', None, '36.37740', '-76.84020'), ('REYNOLDSON', None, '36.52810', '-76.79210'), ('RODUCO', None, '36.46240', '-76.81230'), ('SANDY CROSS', None, '36.36860', '-76.55330'), ('SAVAGE', None, '36.49180', '-76.60110'), ('SUNBURY', None, '36.44300', '-76.60820'), ('TOPSY', None, '36.50330', '-76.87100'), ('TROTVILLE', None, '36.36870', '-76.59790'), ('WYANOKE', None, '36.54340', '-76.91180')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCC071': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BELMONT', 8705, '35.24990', '-81.04020'), ('BESSEMER CITY', 5119, '35.28400', '-81.28520'), ('CHERRYVILLE', 5361, '35.38160', '-81.37560'), ('CRAMERTON', 2976, '35.23460', '-81.07420'), ('CROWDERS', None, '35.18610', '-81.20670'), ('DALLAS', 3402, '35.31470', '-81.17680'), ('GASTONIA', 66277, '35.25270', '-81.17150'), ('HIGH SHOALS', 729, '35.39820', '-81.20150'), ('LOWELL', 2662, '35.26860', '-81.10140'), ('LUCIA', None, '35.38470', '-81.01080'), ('MCADENVILLE', 619, '35.26470', '-81.08000'), ('MOUNT HOLLY', 9618, '35.30520', '-81.03140'), ('RANLO', 2198, '35.28700', '-81.13130'), ('STANLEY', 3053, '35.35650', '-81.09750')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC077': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEREA', None, '36.32000', '-78.73000'), ('BUTNER', 5792, '36.13520', '-78.77040'), ('CREEDMOOR', 2232, '36.12090', '-78.68720'), ('KERR LAKE', None, '36.53000', '-78.60000'), ('OAK HILL', None, '36.43000', '-78.72000'), ('OXFORD', 8338, '36.31090', '-78.58960'), ('STEM', 229, '36.19980', '-78.72320'), ('STOVALL', 376, '36.44770', '-78.56940')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC075': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('FONTANA VILLAGE', None, '35.43560', '-83.81920'), ('ROBBINSVILLE', 747, '35.32280', '-83.80690'), ('SANTEETLAH', None, '35.36380', '-83.86650'), ('STECOAH', None, '35.36970', '-83.69060'), ('TAPOCO', None, '35.44330', '-83.93690')], 'partOfState': '', 'wfo': 'GSP'}, -'PRC051': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('DORADO', 12747, '18.47020', '-66.27150'), ('RIO LAJAS', None, '18.40040', '-66.26280'), ('SAN ANTONIO', 1203, '18.44950', '-66.29860')], 'partOfState': '', 'wfo': 'SJU'}, -'MSC119': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BELEN', None, '34.26670', '-90.35000'), ('CROWDER', 766, '34.17300', '-90.13760'), ('DARLING', None, '34.35000', '-90.26670'), ('DENTON', None, '34.15000', '-90.31670'), ('FALCON', 317, '34.39260', '-90.25550'), ('LAMBERT', 1967, '34.20200', '-90.28300'), ('MARKS', 1551, '34.25380', '-90.27290'), ('SLEDGE', 529, '34.43250', '-90.22130'), ('VANCE', None, '34.08330', '-90.30000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TXC365': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BECKVILLE', 752, '32.24280', '-94.45590'), ('CARTHAGE', 6664, '32.15180', '-94.33690'), ('GARY CITY', 303, '32.02790', '-94.36830')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'MSC111': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BEAUMONT', 977, '31.16780', '-88.92170'), ('BELLEVILLE', None, '31.20780', '-89.12580'), ('FERGUSON', None, '31.19060', '-88.96780'), ('HINTONVILLE', None, '31.25720', '-88.93250'), ('JANICE', None, '31.02470', '-89.03720'), ('KITTRELL', None, '31.20970', '-88.91860'), ('MAHNED', None, '31.20940', '-89.08940'), ('NEW AUGUSTA', 715, '31.20140', '-89.03500'), ('RHODES', None, '31.42750', '-88.96800'), ('RICHTON', 1038, '31.34940', '-88.94070'), ('RUNNELSTOWN', None, '31.37500', '-89.11250'), ('TALLAHALA', None, '31.38750', '-89.13300'), ('WINGATE', None, '31.20110', '-89.00420')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'MSC113': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MAGNOLIA', 2071, '31.15020', '-90.46070'), ('MCCOMB', 13337, '31.24500', '-90.46520'), ('OSYKA', 481, '31.00700', '-90.47110'), ('SUMMIT', 1428, '31.28470', '-90.46620')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'MSC115': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ALGOMA', 508, '34.17880', '-89.03600'), ('ECRU', 947, '34.35620', '-89.02540'), ('FURRS', None, '34.23330', '-88.86670'), ('PONTOTOC', 5253, '34.24850', '-89.00670'), ('RANDOLPH', None, '34.18330', '-89.16670'), ('SHERMAN', 548, '34.35940', '-88.83870'), ('THAXTON', 513, '34.30820', '-89.17490'), ('TOCCOPOLA', 189, '34.25570', '-89.23440'), ('TROY', None, '34.16670', '-88.90000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSC117': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOONEVILLE', 8625, '34.66260', '-88.56770'), ('BURTON', None, '34.63330', '-88.33330'), ('JUMPERTOWN', 404, '34.70640', '-88.66380'), ('MARIETTA', 248, '34.50090', '-88.47110'), ('THRASHERS', None, '34.70000', '-88.48330'), ('WHEELER', None, '34.58330', '-88.60000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'SDC011': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AURORA', 500, '44.28270', '-96.68660'), ('BROOKINGS', 18504, '44.30630', '-96.78620'), ('BRUCE', 272, '44.43810', '-96.88940'), ('BUSHNELL', 75, '44.32840', '-96.64320'), ('ELKTON', 677, '44.23450', '-96.47980'), ('SINAI', 133, '44.24510', '-97.04300'), ('VOLGA', 1435, '44.32330', '-96.92260'), ('WHITE', 530, '44.43340', '-96.64540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'MIC069': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AU SABLE', 1533, '44.41080', '-83.33980'), ('EAST TAWAS', 2951, '44.28500', '-83.48410'), ('HALE', None, '44.38330', '-83.80500'), ('INTERSECTION OF M-55 AND', None, '44.28000', '-83.80350'), ('LONG LAKE', None, '44.41660', '-83.86660'), ('NATIONAL CITY', None, '44.23330', '-83.71660'), ('OSCODA', 992, '44.42220', '-83.33480'), ('SID TOWN', None, '44.44000', '-83.61000'), ('SOUTH BRANCH', None, '44.46660', '-83.88330'), ('TAWAS CITY', 2005, '44.27000', '-83.52100'), ('WHITTEMORE', 476, '44.23310', '-83.80280'), ('WILBER', None, '44.39000', '-83.48000'), ('WURTSMITH AIRFIELD', None, '44.46120', '-83.38450')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'TXC049': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BANGS', 1620, '31.71450', '-99.13050'), ('BLANKET', 402, '31.82390', '-98.78670'), ('BROOKESMITH', None, '31.55030', '-99.11830'), ('BROWNWOOD', 18813, '31.70920', '-98.99080'), ('CROSS CUT', None, '32.03360', '-99.13220'), ('EARLY', 2588, '31.74190', '-98.94530'), ('INDIAN CREEK', None, '31.52310', '-98.97970'), ('LAKE BROWNWOOD', 1694, '31.81600', '-99.10290'), ('MAY', None, '31.97940', '-98.91970'), ('OWENS', None, '31.84780', '-98.92560'), ('THRIFTY', None, '31.81080', '-99.13170'), ('WINCHELL', None, '31.47190', '-99.16060'), ('ZEPHYR', None, '31.67580', '-98.79440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXC047': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ENCINO', 177, '26.93330', '-98.13330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXC045': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAPROCK CANYON ST. PARK', None, '34.44580', '-101.06770'), ('MACKENZIE RESERVOIR', None, '34.54690', '-101.44880'), ('QUITAQUE', 432, '34.36740', '-101.05490'), ('SILVERTON', 771, '34.47120', '-101.30430'), ('VALLEY SCHOOLS', None, '34.37700', '-100.98690')], 'partOfState': '', 'wfo': 'LUB'}, -'TXC043': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALPINE', 5786, '30.36320', '-103.66500'), ('ALTUDA', None, '30.30000', '-103.46000'), ('BOQUILLAS CANYON', None, '29.22000', '-102.88000'), ('CASTOLON', None, '29.14000', '-103.51000'), ('CHISOS BASIN', None, '29.27000', '-103.30670'), ('LAJITAS', None, '29.26000', '-103.77000'), ('MARATHON', 455, '30.20900', '-103.24000'), ('PANTHER JUNCTION', None, '29.32990', '-103.20000'), ('PERSIMMON GAP', None, '29.66000', '-103.17900'), ('STUDY BUTTE', None, '29.33500', '-103.53000'), ('TERLINGUA', None, '29.32000', '-103.62000'), ('TERLINGUA RANCH LODGE', None, '29.45000', '-103.40000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXC041': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRYAN', 65660, '30.66850', '-96.36520'), ('COLLEGE STATION', 67890, '30.60050', '-96.31240'), ('WIXON VALLEY', 235, '30.76260', '-96.31720')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'KYC189': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARNETT', None, '37.41030', '-83.56860'), ('BLAKE', None, '37.38690', '-83.73920'), ('BOONEVILLE', 111, '37.47640', '-83.67920'), ('CHESTNUT GAP', None, '37.45820', '-83.65900'), ('CONKLING', None, '37.38140', '-83.69000'), ('COWCREEK', None, '37.43860', '-83.61060'), ('ENDEE', None, '37.43130', '-83.75300'), ('EVERSOLE', None, '37.44750', '-83.64280'), ('GOBBARD', None, '37.37840', '-83.63110'), ('GRASS', None, '37.52300', '-83.64790'), ('GREEN HALL', None, '37.40670', '-83.82550'), ('ISLAND CITY', None, '37.36720', '-83.76710'), ('LEROSE', None, '37.48320', '-83.61540'), ('LEVI', None, '37.48030', '-83.72080'), ('LUCKY FORK', None, '37.36750', '-83.57000'), ('MAJOR', None, '37.41370', '-83.69790'), ('MISTLETOE', None, '37.31280', '-83.59220'), ('PEBWORTH', None, '37.50410', '-83.73110'), ('RICETOWN', None, '37.39220', '-83.62230'), ('SCOVILLE', None, '37.45390', '-83.72000'), ('SEBASTIAN', None, '37.36080', '-83.62030'), ('SOUTHFORK', None, '37.41630', '-83.66060'), ('STAY', None, '37.51030', '-83.65190'), ('STURGEON', None, '37.41890', '-83.78460'), ('TAFF', None, '37.36160', '-83.68380'), ('TRAVELLERS REST', None, '37.44830', '-83.78720'), ('TURIN', None, '37.45970', '-83.68730'), ('VINCENT', None, '37.46830', '-83.77390'), ('WHOOPFLAREA', None, '37.28250', '-83.56030'), ('WILD DOG', None, '37.48880', '-83.82340')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC187': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('GLENCOE', 251, '38.71110', '-84.82180'), ('GRATZ', 89, '38.47300', '-84.94640'), ('MONTEREY', 167, '38.42500', '-84.87130'), ('OWENTON', 1387, '38.53860', '-84.83970'), ('SANDERS', 246, '38.65460', '-84.94680'), ('SPARTA', 230, '38.67630', '-84.90380')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYC185': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BALLARDSVILLE', None, '38.36670', '-85.35000'), ('BROWNSBORO', None, '38.35000', '-85.50000'), ('BUCKNER', 4000, '38.38330', '-85.43330'), ('CRESTWOOD', 1999, '38.33790', '-85.48070'), ('GOSHEN', 907, '38.40860', '-85.59160'), ('LA GRANGE', 5676, '38.40280', '-85.37860'), ('PEWEE VALLEY', 1436, '38.31200', '-85.48930'), ('SKYLIGHT', None, '38.43330', '-85.53330'), ('WESTPORT', None, '38.48330', '-85.46670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYC183': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAIZETOWN', None, '37.36670', '-86.71670'), ('BEAVER DAM', 3033, '37.40850', '-86.87800'), ('BEDA', None, '37.50000', '-86.95000'), ('CENTERTOWN', 416, '37.41800', '-86.99550'), ('COOL SPRINGS', None, '37.30000', '-86.88330'), ('CROMWELL', None, '37.33330', '-86.80000'), ('DEANEFIELD', None, '37.66670', '-86.81670'), ('DUNDEE', None, '37.55000', '-86.78330'), ('FORDSVILLE', 531, '37.63620', '-86.71600'), ('HARTFORD', 2571, '37.45110', '-86.89380'), ('HEFLIN', None, '37.50000', '-87.00000'), ('MCHENRY', 417, '37.37990', '-86.92130'), ('OLATON', None, '37.53330', '-86.70000'), ('PRENTISS', None, '37.33330', '-86.85000'), ('ROCKPORT', 334, '37.33640', '-86.99280'), ('ROSINE', None, '37.45000', '-86.75000')], 'partOfState': 'NORTHWEST', 'wfo': 'LMK'}, -'KYC181': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CARLISLE', 1917, '38.31360', '-84.03760'), ('HOOKTOWN', None, '38.35000', '-84.15000'), ('MOOREFIELD', None, '38.26670', '-83.93330'), ('MYERS', None, '38.35000', '-83.95000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'PRC089': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('LUQUILLO', 7947, '18.37750', '-65.72100'), ('RAMOS', 2004, '18.34160', '-65.71300')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC179': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARKENDALE', None, '38.43830', '-77.34280'), ('BROOKFIELD', None, '38.31110', '-77.43310'), ('FALMOUTH', 3624, '38.33530', '-77.46550'), ('GARRISONVILLE', None, '38.48250', '-77.42690'), ('GLENDIE', None, '38.39970', '-77.53530'), ('HEFLIN', None, '38.48830', '-77.57830'), ('HOLLY CORNER', None, '38.36330', '-77.56640'), ('LEELAND', None, '38.34970', '-77.43390'), ('RAMOTH', None, '38.42190', '-77.46970'), ('ROSEVILLE', None, '38.46500', '-77.50420'), ('SHILOH', None, '38.50360', '-77.50670'), ('SPRING VALLEY', None, '38.33110', '-77.46080'), ('STAFFORD', None, '38.42000', '-77.40000'), ('STONES CORNER', None, '38.32810', '-77.39080'), ('STORCK', None, '38.41920', '-77.61390'), ('WHITE OAK', None, '38.30060', '-77.37560'), ('WIDEWATER', None, '38.46470', '-77.32560')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'WYC009': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BILL', None, '43.21000', '-105.26000'), ('DEER CREEK', None, '42.83000', '-105.78000'), ('DOUGLAS', 5288, '42.75580', '-105.39270'), ('GLENROCK', 2231, '42.85710', '-105.85710'), ('LOST SPRINGS', 1, '42.76530', '-104.92380'), ('ROLLING HILLS ESTATES', None, '42.90240', '-105.84600')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CYS'}, -'PRC081': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('LARES', 7042, '18.29630', '-66.88220')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC171': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALONZAVILLE', None, '38.92860', '-78.54670'), ('BASYE', None, '38.80000', '-78.78000'), ('CLARY', None, '39.02530', '-78.36500'), ('DILBECK', None, '38.89580', '-78.36940'), ('EDINBURG', 813, '38.82340', '-78.56490'), ('HARMONY', None, '38.87330', '-78.59750'), ('HAWKINSTOWN', None, '38.77250', '-78.61330'), ('JEROME', None, '38.86250', '-78.72890'), ('KINGS CROSSING', None, '38.76920', '-78.49890'), ('MOUNT CLIFTON', None, '38.76140', '-78.71170'), ('MOUNT JACKSON', 1664, '38.74980', '-78.63790'), ('NEW MARKET', 1637, '38.64760', '-78.67490'), ('SEVEN FOUNTAINS', None, '38.86110', '-78.39970'), ('STRASBURG', 4017, '38.98850', '-78.35770'), ('TOMS BROOK', 255, '38.94710', '-78.43990'), ('WOODSTOCK', 3952, '38.87630', '-78.51900')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'VAC173': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADWOLF', 1457, '36.78910', '-81.58850'), ('ALLISON GAP', None, '36.90000', '-81.76670'), ('ATKINS', 1138, '36.86670', '-81.41670'), ('BROADFORD', None, '36.91670', '-81.66670'), ('CHILHOWIE', 1827, '36.80010', '-81.68400'), ('MARION', 6349, '36.83330', '-81.50000'), ('MARION WYTHEVILLE AIRPORT', None, '36.90000', '-81.35000'), ('NEBO', None, '36.93330', '-81.43330'), ('QUARRY', None, '36.85000', '-81.75000'), ('SALTVILLE', 2204, '36.87500', '-81.76280'), ('SUGAR GROVE', 741, '36.76670', '-81.40000'), ('THOMAS BRIDGE', None, '36.76670', '-81.56670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'PRC085': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BOQUERON', 2017, '18.20950', '-65.84890'), ('LA FERMINA', 3177, '18.17740', '-65.85380'), ('LAS PIEDRAS', 6352, '18.18130', '-65.86980'), ('PUEBLITO DEL RIO', None, '18.23000', '-65.86330')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC175': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADAMS GROVE', None, '36.69310', '-77.38600'), ('BERLIN', None, '36.85750', '-76.97750'), ('BOYKINS', 620, '36.57720', '-77.19890'), ('BRANCHVILLE', 123, '36.56970', '-77.25010'), ('BRANCHVILLE', 123, '36.56910', '-77.24930'), ('BURDETTE', None, '36.76780', '-76.89460'), ('CAPRON', 167, '36.71060', '-77.20200'), ('CAPRON', 167, '36.70940', '-77.20130'), ('COURTLAND', 1270, '36.71160', '-77.06290'), ('DORY', None, '36.86100', '-77.04640'), ('DREWRYVILLE', None, '36.71600', '-77.30660'), ('GREEN PLAIN', None, '36.69670', '-77.45220'), ('HANDSOM', None, '36.64210', '-77.03050'), ('HUNTERDALE', None, '36.70140', '-76.96140'), ('IVOR', 320, '36.90490', '-76.89940'), ('JOYNER', None, '36.77900', '-77.25210'), ('LITTLE TEXAS', None, '36.60190', '-77.33970'), ('MANRY', None, '36.89190', '-77.03520'), ('NEWSOMS', 282, '36.62760', '-77.12490'), ('RIVERDALE', None, '36.56110', '-76.96000'), ('SEBRELL', None, '36.78460', '-77.12660'), ('SEDLEY', None, '36.77400', '-76.98420'), ('SHILOH', None, '36.60940', '-77.20000'), ('STORY', None, '36.70490', '-77.01130'), ('SUNBEAM', None, '36.58770', '-77.02800'), ('VICKSVILLE', None, '36.81310', '-77.02230'), ('WORRELL', None, '36.72510', '-77.21650')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC177': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALSOP', None, '38.20690', '-77.64970'), ('BELMONT', None, '38.15360', '-77.86640'), ('BROKENBURG', None, '38.14560', '-77.71920'), ('CHANCELLORSVILLE', None, '38.30000', '-77.63000'), ('COOKSTOWN', None, '38.29500', '-77.70190'), ('DUNAVANT', None, '38.36220', '-77.66500'), ('GATEWOOD', None, '38.08190', '-77.66920'), ('GLENORA', None, '38.08860', '-77.79440'), ('LOGAN', None, '38.21750', '-77.76140'), ('MASSAPONAX', None, '38.19330', '-77.50920'), ('PARKER', None, '38.27500', '-77.75750'), ('PARTLOW', None, '38.03860', '-77.63920'), ('POST OAK', None, '38.16610', '-77.66360'), ('SPOTSYLVANIA COURTHOUSE', 3833, '38.19770', '-77.58820'), ('THORNBURG', None, '38.13330', '-77.52190')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'OKC027': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ETOWAH', 122, '35.13120', '-97.16870'), ('HALL PARK', 1088, '35.24010', '-97.40680'), ('LEXINGTON', 2086, '35.01820', '-97.33740'), ('MOORE', 41138, '35.32950', '-97.47470'), ('NOBLE', 5260, '35.14090', '-97.37180'), ('NORMAN', 95694, '35.21910', '-97.44190'), ('SLAUGHTERVILLE', 3609, '35.09700', '-97.28240'), ('STELLA', None, '35.32000', '-97.22000')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'OKC025': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BLACK MESA PARK', None, '36.84780', '-102.88190'), ('BOISE CITY', 1483, '36.73010', '-102.51000'), ('FELT', None, '36.57000', '-102.78000'), ('GRIGGS', None, '36.60000', '-102.12000'), ('KENTON', None, '36.90000', '-102.97000'), ('KEYES', 410, '36.80760', '-102.25150'), ('STURGIS', None, '36.88000', '-102.05000'), ('WHEELESS', None, '36.72000', '-102.90000')], 'partOfState': '', 'wfo': 'AMA'}, -'OKC023': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('HUGO', 5536, '34.01060', '-95.50940'), ('ORD', None, '33.91000', '-95.49920'), ('FROGVILLE', None, '33.89750', '-95.31250'), ('GRANT', None, '33.94310', '-95.51330'), ('GAY', None, '33.95330', '-95.62110'), ('GOODLAND', None, '33.98170', '-95.55500'), ('SAWYER', 274, '34.01360', '-95.37140'), ('FORT TOWSON', 611, '34.01860', '-95.26610'), ('SWINK', 83, '34.01780', '-95.20190'), ('BOSWELL', 703, '34.02720', '-95.86890'), ('UNGER', None, '34.02610', '-95.78170'), ('SOPER', 300, '34.03280', '-95.69690'), ('MESSER', None, '34.08720', '-95.46920'), ('KENT', None, '34.11310', '-95.62280'), ('HUSKEY', None, '33.94580', '-95.27810'), ('FALLON', None, '33.99780', '-95.41670'), ('SPEER', None, '34.11330', '-95.55560'), ('APPLE', None, '34.12750', '-95.41720')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'NDC029': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BRADDOCK', 43, '46.56350', '-100.08910'), ('HAGUE', 91, '46.02940', '-99.99820'), ('HAZELTON', 237, '46.48430', '-100.27840'), ('KINTYRE', None, '46.55000', '-99.95000'), ('LINTON', 1321, '46.26840', '-100.23320'), ('STRASBURG', 549, '46.13320', '-100.16040'), ('WESTFIELD', None, '46.03330', '-100.20000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDC027': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BRANTFORD', None, '47.59780', '-98.92250'), ('HAMAR', None, '47.84360', '-98.57310'), ('NEW ROCKFORD', 1463, '47.68060', '-99.13580'), ('SHEYENNE', 318, '47.82680', '-99.11660')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDC025': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('DODGE', 125, '47.30530', '-102.20200'), ('DUNN CENTER', 122, '47.35330', '-102.62380'), ('HALLIDAY', 227, '47.35270', '-102.33750'), ('KILLDEER', 713, '47.36540', '-102.75270'), ('MANNING', None, '47.23330', '-102.76670'), ('MARSHALL', None, '47.13330', '-102.33330'), ('NEW HRADEC', None, '47.00000', '-102.88330')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDC023': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AMBROSE', 23, '48.95520', '-103.48080'), ('CROSBY', 1089, '48.91140', '-103.29470'), ('FORTUNA', 31, '48.91110', '-103.77690'), ('NOONAN', 154, '48.89030', '-103.00990')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'OKC029': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CENTRAHOMA', 110, '34.60920', '-96.34350'), ('CLARITA', None, '34.48000', '-96.43000'), ('COALGATE', 2005, '34.53360', '-96.21850'), ('COTTONWOOD', None, '34.55000', '-96.20000'), ('LEHIGH', 315, '34.46980', '-96.22050'), ('OLNEY', None, '34.47000', '-96.35000'), ('PHILLIPS', 150, '34.50230', '-96.22390'), ('TUPELO', 377, '34.60210', '-96.42020')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'NDC079': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BELCOURT', 2440, '48.84160', '-99.74630'), ('DUNSEITH', 739, '48.81260', '-100.06130'), ('EAST DUNSEITH', 219, '48.86550', '-100.01640'), ('MYLO', 19, '48.63590', '-99.61790'), ('NANSON', None, '48.58330', '-99.76670'), ('ROLETTE', 538, '48.66120', '-99.84060'), ('ROLLA', 1417, '48.85870', '-99.61780'), ('SHELL VALLEY', 395, '48.79790', '-99.86430'), ('ST. JOHN', 358, '48.94360', '-99.71070'), ('THORNE', None, '48.73330', '-99.91670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'MEC001': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('AUBURN', 23203, '44.09780', '-70.23170'), ('BOWDOIN', None, '44.04720', '-70.02530'), ('GREENE', None, '44.18970', '-70.14080'), ('LEEDS', None, '44.30330', '-70.12000'), ('LEWISTON', 35690, '44.10030', '-70.21530'), ('LISBON FALLS', 4420, '43.99610', '-70.06110'), ('LIVERMORE', None, '44.33390', '-70.24970'), ('LIVERMORE FALLS', 1626, '44.47530', '-70.18860'), ('MECHANIC FALLS', 2450, '44.11170', '-70.39220'), ('MINOT', None, '44.08560', '-70.32060'), ('POLAND', None, '44.06060', '-70.39420'), ('SABATTUS', None, '44.11970', '-70.10810'), ('TURNER', None, '44.25640', '-70.25670'), ('WALES', None, '44.18360', '-70.06560')], 'partOfState': 'SOUTHWEST', 'wfo': 'GYX'}, -'MEC003': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALLAGASH', None, '47.08330', '-69.04170'), ('ASHLAND', None, '46.63110', '-68.40670'), ('BANCROFT', None, '45.67360', '-68.03140'), ('BENEDICTA', None, '45.80170', '-68.41220'), ('BLAINE', None, '46.50470', '-67.86920'), ('BRIDGEWATER', None, '46.42780', '-67.84390'), ('CARIBOU', 8312, '46.86060', '-68.01250'), ('CARY', None, '45.99530', '-67.86250'), ('CHAPMAN', None, '46.64810', '-68.16140'), ('CLAYTON LAKE', None, '46.61080', '-69.52280'), ('CRYSTAL', None, '45.95920', '-68.36080'), ('DAIGLE', None, '47.18940', '-68.46140'), ('DEBOULLIE MOUNTAIN', None, '46.97060', '-68.87640'), ('DICKEY', None, '47.10950', '-69.08720'), ('DUDLEY', None, '46.17140', '-68.16030'), ('DYER BROOK', None, '46.08140', '-68.18390'), ('EAGLE LAKE', None, '47.04000', '-68.59000'), ('EASTON', None, '46.64110', '-67.91000'), ('FORT FAIRFIELD', 1600, '46.77220', '-67.83440'), ('FORT KENT', 1978, '47.25860', '-68.59000'), ('FRENCHVILLE', None, '47.28080', '-68.38030'), ('GRAND ISLE', None, '47.30530', '-68.15250'), ('GUERETTE', None, '47.12940', '-68.31780'), ('HAYNESVILLE', None, '45.82610', '-67.99170'), ('HODGDON', None, '46.05390', '-67.86720'), ('HOULTON', 5270, '46.12610', '-67.84080'), ('ISLAND FALLS', None, '46.00920', '-68.27190'), ('LIMESTONE', 1453, '46.90860', '-67.82640'), ('LINNEUS', None, '46.03860', '-67.96060'), ('LITTLETON', None, '46.23080', '-67.84170'), ('LORING', None, '46.94040', '-67.89480'), ('LUDLOW', None, '46.14060', '-68.04060'), ('MACWAHOC', None, '45.62830', '-68.26330'), ('MADAWASKA', 3326, '47.35530', '-68.32220'), ('MAPLETON', None, '46.68190', '-68.16330'), ('MARS HILL', None, '46.51580', '-67.86690'), ('MASARDIS', None, '46.50360', '-68.36170'), ('MOLUNKUS', None, '45.61530', '-68.30390'), ('MONARDA', None, '45.79690', '-68.32440'), ('MONTICELLO', None, '46.30830', '-67.84310'), ('NEW LIMERICK', None, '46.10110', '-67.96060'), ('NEW SWEDEN', None, '46.94170', '-68.12110'), ('NINE-MILE BRIDGE', None, '46.70590', '-69.72360'), ('NORTH AMITY', None, '45.94170', '-67.83080'), ('OAKFIELD', None, '46.09890', '-68.15060'), ('ORIENT', None, '45.81690', '-67.84060'), ('OXBOW', None, '46.41860', '-68.49060'), ('PERHAM', None, '46.84420', '-68.19780'), ('PORTAGE', None, '46.76310', '-68.47640'), ('PRESQUE ISLE', 9511, '46.68110', '-68.01640'), ('REED', None, '45.72360', '-68.14280'), ('RUSSEL CROSSING', None, '46.64000', '-68.74000'), ('SAINT AGATHA', None, '47.24310', '-68.31420'), ('SAINT FRANCIS', None, '47.17110', '-68.89030'), ('SAINT PAMPHILE', None, '46.92000', '-69.70940'), ('SHERMAN', None, '45.87110', '-68.41830'), ('SHERMAN STATION', None, '45.89920', '-68.43000'), ('SILVER RIDGE', None, '45.80640', '-68.32530'), ('SMYRNA MILLS', None, '46.12940', '-68.16470'), ('SOLDIER POND', None, '47.15610', '-68.57640'), ('SQUA PAN', None, '46.56310', '-68.37860'), ('STOCKHOLM', None, '47.04220', '-68.14000'), ('WALLAGRASS', None, '47.12940', '-68.59780'), ('WASHBURN', None, '46.79000', '-68.15810'), ('WESTFIELD', None, '46.57030', '-67.92310'), ('WINTERVILLE', None, '46.97030', '-68.57170'), ('WOODLAND', 1044, '46.88530', '-68.14250'), ('WYTOPITLOCK', None, '45.64060', '-68.07610')], 'partOfState': 'NORTHERN', 'wfo': 'CAR'}, -'MEC005': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BRIDGTON', 2359, '44.05470', '-70.71330'), ('BRUNSWICK', 14816, '43.91440', '-69.96580'), ('BRUNSWICK NAVAL AIR STATI', None, '43.89620', '-69.93140'), ('CAPE ELIZABETH', None, '43.56360', '-70.20060'), ('CASCO', None, '44.00670', '-70.52330'), ('CUMBERLAND', None, '43.79640', '-70.25940'), ('FALMOUTH', None, '43.72940', '-70.24250'), ('FREEPORT', 1813, '43.85690', '-70.10360'), ('GORHAM', 4164, '43.67940', '-70.44470'), ('GRAY', None, '43.88560', '-70.33220'), ('HARPSWELL', None, '43.80170', '-69.98470'), ('HARRISON', None, '44.11030', '-70.67970'), ('NAPLES', None, '43.97170', '-70.60970'), ('NEW GLOUCESTER', None, '43.96280', '-70.28310'), ('NORTH WINDHAM', 4568, '43.83420', '-70.43890'), ('NORTH YARMOUTH', None, '43.84440', '-70.21780'), ('PORTLAND', 64249, '43.66140', '-70.25580'), ('POWNAL', None, '43.89220', '-70.18580'), ('RAYMOND', None, '43.90140', '-70.47080'), ('SCARBOROUGH', 3867, '43.57810', '-70.32220'), ('SOUTH PORTLAND', 23324, '43.64140', '-70.24140'), ('SOUTH WINDHAM', None, '43.73610', '-70.42420'), ('STANDISH', None, '43.73580', '-70.55250'), ('WEST BALDWIN', None, '43.83310', '-70.77830'), ('WESTBROOK', 16142, '43.67690', '-70.37170'), ('YARMOUTH', 3560, '43.80060', '-70.18720')], 'partOfState': 'SOUTHWEST', 'wfo': 'GYX'}, -'MEC007': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('AVON', None, '44.80610', '-70.27170'), ('CARRABASSETT VALLEY', None, '45.07780', '-70.21250'), ('CARTHAGE', None, '44.62420', '-70.47360'), ('CHESTERVILLE', None, '44.55110', '-70.08670'), ('COBURN GORE', None, '45.37920', '-70.80390'), ('DALLAS', None, '44.99690', '-70.55640'), ('DAVIS', None, '45.08720', '-70.78610'), ('EUSTIS', None, '45.21720', '-70.47890'), ('FARMINGTON', 4098, '44.67060', '-70.15170'), ('JAY', None, '44.50390', '-70.21670'), ('KINGFIELD', None, '44.95920', '-70.15440'), ('MADRID', None, '44.86440', '-70.46250'), ('NEW SHARON', None, '44.63890', '-70.01610'), ('NEW VINEYARD', None, '44.80420', '-70.12190'), ('OQUOSSOC', None, '44.96640', '-70.77420'), ('PHILLIPS', None, '44.82310', '-70.34000'), ('RANGELEY', None, '44.96640', '-70.64330'), ('REDINGTON', None, '44.98440', '-70.43580'), ('SALEM', None, '44.90060', '-70.27860'), ('STRATTON', None, '45.14110', '-70.44110'), ('STRONG', None, '44.80750', '-70.22140'), ('TEMPLE', None, '44.68500', '-70.22690'), ('TIM POND', None, '45.17030', '-70.62310'), ('WELD', None, '44.69860', '-70.42190'), ('WILTON', 2290, '44.59280', '-70.22860')], 'partOfState': '', 'wfo': 'GYX'}, -'PRC153': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('PALOMAS', 2321, '18.01540', '-66.86870'), ('YAUCO', 19609, '18.03660', '-66.86200')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC151': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('COMUNAS', 2027, '18.08950', '-65.84040'), ('EL NEGRO', 1656, '18.03930', '-65.85170'), ('MARTORELL', 2884, '18.07540', '-65.89820'), ('PLAYITA', 2192, '18.04170', '-65.90830'), ('ROSA SANCHEZ', None, '18.06350', '-65.91380'), ('YABUCOA', 6636, '18.04960', '-65.87960')], 'partOfState': '', 'wfo': 'SJU'}, -'WVC003': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ARDEN', None, '39.41560', '-78.04360'), ('BERKELEY', None, '39.50000', '-77.93000'), ('FALLING WATERS', None, '39.55920', '-77.89110'), ('GLENGARY', None, '39.38390', '-78.15580'), ('HEDGESVILLE', 240, '39.55470', '-77.99440'), ('INWOOD', 2084, '39.35260', '-78.05120'), ('JOHNSONTOWN', None, '39.57830', '-78.03970'), ('JONES SPRINGS', None, '39.49140', '-78.09560'), ('MARTINSBURG', 14972, '39.46030', '-77.96930'), ('MARTINSBURG ARPT', None, '39.40000', '-77.98000'), ('RIDGEWAY', None, '39.30000', '-78.07000'), ('SHANGHAI', None, '39.44140', '-78.13250'), ('TOMAHAWK', None, '39.53030', '-78.04720'), ('VANVILLE', None, '39.37970', '-77.98000'), ('WINEBRENNERS CROSSROAD', None, '39.42810', '-77.89580')], 'partOfState': '', 'wfo': 'LWX'}, -'AKC280': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('KAKE', 710, '56.96850', '-133.92500'), ('PETERSBURG', 3224, '56.77400', '-132.86160'), ('ROWAN BAY', None, '56.65390', '-134.25120'), ('WRANGELL', 2308, '56.36160', '-132.27160')], 'partOfState': '', 'wfo': 'AJK'}, -'NYC009': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALLEGANY', 1883, '42.09010', '-78.49150'), ('CATTARAUGUS', 1075, '42.32970', '-78.86790'), ('DELEVAN', 1089, '42.49100', '-78.47940'), ('EAST RANDOLPH', 630, '42.17050', '-78.95080'), ('ELLICOTTVILLE', 472, '42.27480', '-78.67260'), ('FRANKLINVILLE', 1855, '42.33530', '-78.45650'), ('GOWANDA', 2842, '42.46160', '-78.93530'), ('LIME LAKE-MACHIAS', 1422, '42.42840', '-78.48230'), ('LIMESTONE', 411, '42.02400', '-78.63100'), ('LITTLE VALLEY', 1130, '42.24930', '-78.79930'), ('OLEAN', 15347, '42.08210', '-78.43230'), ('PERRYSBURG', 408, '42.45950', '-79.00150'), ('PORTVILLE', 1024, '42.03560', '-78.33910'), ('RANDOLPH', 1316, '42.16230', '-78.97990'), ('SALAMANCA', 6097, '42.16430', '-78.72270'), ('SOUTH DAYTON', 662, '42.36270', '-79.05200'), ('ST. BONAVENTURE', 2127, '42.08020', '-78.47520'), ('WESTON MILLS', 1608, '42.07590', '-78.37290'), ('YORKSHIRE', 1403, '42.52190', '-78.47840')], 'partOfState': '', 'wfo': 'BUF'}, -'NCC097': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('HARMONY', 526, '35.95840', '-80.77280'), ('LOVE VALLEY', 30, '35.99020', '-80.98520'), ('MOORESVILLE', 18823, '35.57940', '-80.81220'), ('SCOTTS', None, '35.84280', '-81.00940'), ('STATESVILLE', 23320, '35.78670', '-80.88630'), ('TROUTMAN', 1592, '35.70470', '-80.89050'), ('TURNERSBURG', None, '35.90830', '-80.80750'), ('UNION GROVE', None, '36.02440', '-80.86360')], 'partOfState': '', 'wfo': 'GSP'}, -'GAC241': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CLAYTON', 2019, '34.87740', '-83.40090'), ('CLAYTON', 2019, '34.87740', '-83.40090'), ('DILLARD', 198, '34.97250', '-83.38560'), ('DILLARD', 198, '34.97250', '-83.38560'), ('LAKEMONT', None, '34.78190', '-83.41640'), ('MOCCASIN CREEK STATE PARK', None, '34.84580', '-83.58750'), ('MOUNTAIN CITY', 829, '34.91880', '-83.38600'), ('MOUNTAIN CITY', 829, '34.91880', '-83.38600'), ('PINE MOUNTAIN', 1141, '34.94030', '-83.18720'), ('SKY VALLEY', 221, '34.98330', '-83.33220'), ('SKY VALLEY', 221, '34.98330', '-83.33220'), ('TIGER', 316, '34.84550', '-83.43340'), ('TIGER', 316, '34.84550', '-83.43340')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'NCC091': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AHOSKIE', 4523, '36.28680', '-76.98590'), ('BARRETTS CROSSROADS', None, '36.47030', '-77.05580'), ('BARTONSVILLE', None, '36.47500', '-76.95890'), ('BRANTLEYS GROVE', None, '36.32110', '-76.94920'), ('COFIELD', 347, '36.35560', '-76.90970'), ('COMO', 78, '36.49970', '-77.01480'), ('EARLEYS', None, '36.25720', '-77.02780'), ('HARRELLSVILLE', 102, '36.30130', '-76.79270'), ('MAPLETON', None, '36.42670', '-77.03500'), ('MENOLA', None, '36.33890', '-77.12920'), ('MILLENNIUM', None, '36.24860', '-77.09420'), ('MURFREESBORO', 2045, '36.44060', '-77.09910'), ('NEWSOME STORE', None, '36.26220', '-76.76810'), ('OAK VILLA', None, '36.37330', '-76.94720'), ('POOR TOWN', None, '36.28030', '-77.02560'), ('PROCTORS CORNER', None, '36.25530', '-76.98810'), ('RIDDICKSVILLE', None, '36.52720', '-76.93920'), ('SAINT JOHN', None, '36.30610', '-77.08670'), ('TUNIS', None, '36.37500', '-76.89500'), ('UNION', None, '36.33380', '-77.02420'), ('WINTON', 956, '36.38990', '-76.93610')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCC093': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANTIOCH', None, '34.88000', '-79.20000'), ('ASHLEY HEIGHTS', 341, '35.10000', '-79.38000'), ('BOWMORE', 145, '34.94000', '-79.31000'), ('RAEFORD', 3386, '34.97900', '-79.22460'), ('ROCKFISH', 2353, '34.98000', '-79.07000'), ('SILVER CITY', 1146, '34.99600', '-79.22780')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NYC001': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALBANY', 95658, '42.66060', '-73.77850'), ('ALTAMONT', 1737, '42.70510', '-74.03630'), ('BERNE', None, '42.62850', '-74.13430'), ('COHOES', 15521, '42.77260', '-73.70840'), ('COLONIE', 7916, '42.72080', '-73.83460'), ('DELMAR', 8292, '42.62430', '-73.83350'), ('FEURA BUSH', None, '42.57820', '-73.88000'), ('GREEN ISLAND', 2278, '42.74780', '-73.69260'), ('GUILDERLAND', None, '42.69580', '-73.89220'), ('KNOX', None, '42.67130', '-74.11600'), ('LATHAM', None, '42.74520', '-73.74690'), ('LOUDONVILLE', None, '42.70730', '-73.76610'), ('MENANDS', 3910, '42.69120', '-73.72860'), ('PRESTON HOLLOW', None, '42.44170', '-74.20730'), ('RAVENA', 3369, '42.47660', '-73.81230'), ('SELKIRK', None, '42.53050', '-73.80270'), ('VOORHEESVILLE', 2705, '42.64640', '-73.93320'), ('WATERVLIET', 10207, '42.72480', '-73.70750'), ('WESTERLO', None, '42.51630', '-74.04530'), ('WESTMERE', 7188, '42.68760', '-73.87480')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYC003': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALFRED', 3954, '42.25410', '-77.78980'), ('ALMOND', 461, '42.31900', '-77.73950'), ('ANDOVER', 1073, '42.15700', '-77.79650'), ('ANGELICA', 903, '42.30430', '-78.02110'), ('BELMONT', 952, '42.22240', '-78.03360'), ('BOLIVAR', 1173, '42.07030', '-78.16670'), ('CANASERAGA', 594, '42.46400', '-77.77690'), ('CUBA', 1633, '42.21860', '-78.27630'), ('FILLMORE', None, '42.46800', '-78.11310'), ('FRIENDSHIP', 1176, '42.20540', '-78.14240'), ('HOUGHTON', 1748, '42.42650', '-78.16140'), ('RICHBURG', 448, '42.08990', '-78.15600'), ('STANNARDS', 868, '42.07880', '-77.91290'), ('WELLSVILLE', 5171, '42.12100', '-77.94750')], 'partOfState': '', 'wfo': 'BUF'}, -'NCC099': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BALSAM', None, '35.42670', '-83.08530'), ('CASHIERS', 196, '35.10560', '-83.09670'), ('CULLOWHEE', 3579, '35.31160', '-83.17840'), ('DILLSBORO', 205, '35.36900', '-83.25210'), ('GAY', None, '35.29140', '-83.27330'), ('SYLVA', 2435, '35.37440', '-83.22280'), ('TUCKASEGEE', None, '35.27030', '-83.12280'), ('WEBSTER', 486, '35.35290', '-83.21500'), ('WOLF MOUNTAIN', None, '35.21580', '-82.98670')], 'partOfState': '', 'wfo': 'GSP'}, -'NYC005': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CITY ISLAND', None, '40.87000', '-73.79000'), ('CO-OP CITY', None, '40.87000', '-73.82000'), ('EAST TREMONT', None, '40.85000', '-73.87000'), ('FORDHAM', None, '40.87000', '-73.89000'), ('MOTT HAVEN', None, '40.82000', '-73.91000'), ('RIVERDALE', None, '40.90000', '-73.91000'), ('THROGS NECK BRIDGE', None, '40.82100', '-73.79800'), ('WOODLAWN', None, '40.90000', '-73.85000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYC007': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BELDEN', None, '42.20000', '-75.66670'), ('BINGHAMTON', 47380, '42.10160', '-75.90950'), ('CASTLE CREEK', None, '42.23330', '-75.91670'), ('CENTER LISLE', None, '42.36670', '-76.06670'), ('CHENANGO BRIDGE', None, '42.16670', '-75.86670'), ('CHENANGO FORKS', None, '42.23330', '-75.86670'), ('CONKLIN', None, '42.03330', '-75.80000'), ('EAST WINDSOR', None, '42.11670', '-75.61670'), ('ENDICOTT', 13038, '42.09790', '-76.06360'), ('ENDWELL', 11706, '42.11720', '-76.02330'), ('HARPURSVILLE', None, '42.18330', '-75.61670'), ('JOHNSON CITY', 15535, '42.12360', '-75.96180'), ('KIRKWOOD', None, '42.03330', '-75.78330'), ('LISLE', 302, '42.35070', '-76.00370'), ('MAINE', None, '42.20000', '-76.06670'), ('NANTICOKE', None, '42.28330', '-76.06670'), ('NWS BINGHAMTON', None, '42.20700', '-75.98470'), ('PORT CRANE', None, '42.16670', '-75.83330'), ('PORT DICKINSON', 1697, '42.13660', '-75.89200'), ('SANFORD', None, '42.10000', '-75.48330'), ('SANITARIA SPGS', None, '42.16670', '-75.76670'), ('UNION CENTER', None, '42.15000', '-76.06670'), ('VESTAL', None, '42.08330', '-76.05000'), ('VESTAL CENTER', None, '42.03330', '-76.01670'), ('WEST CORNERS', None, '42.11670', '-76.06670'), ('WHITNEY POINT', 965, '42.33140', '-75.96800'), ('WINDSOR', 901, '42.07720', '-75.64100')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'OKC113': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PAWHUSKA', 3629, '36.66780', '-96.33690'), ('SHIDLER', 520, '36.78190', '-96.66080'), ('OSAGE', 188, '36.29280', '-96.41560'), ('HOMINY', 2584, '36.41420', '-96.39500'), ('AVANT', 372, '36.48940', '-96.06190'), ('WYNONA', 531, '36.54610', '-96.32690'), ('WOLCO', None, '36.53830', '-96.07110'), ('FAIRFAX', 1555, '36.57360', '-96.70390'), ('BARNSDALL', 1325, '36.56190', '-96.16140'), ('PERSHING', None, '36.59330', '-96.27500'), ('TALLANT', None, '36.59750', '-96.19030'), ('NELAGONEY', None, '36.62640', '-96.24190'), ('BURBANK', 155, '36.69500', '-96.73170'), ('OKESA', None, '36.71280', '-96.13440'), ('APPERSON', None, '36.75110', '-96.76580'), ('WEBB CITY', 95, '36.80690', '-96.70830'), ('PEARSONIA', None, '36.80170', '-96.45060'), ('BIGHEART', None, '36.85170', '-96.22560'), ('FORAKER', 23, '36.87220', '-96.56530'), ('HULAH', None, '36.92860', '-96.03500'), ('GRAINOLA', 31, '36.93720', '-96.65030')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'OKC111': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('WILSON', 1584, '35.50750', '-96.03440'), ('LIBERTY', 184, '35.85860', '-95.97720'), ('OKMULGEE', 13022, '35.62330', '-95.96030'), ('HENRYETTA', 6096, '35.43970', '-95.98170'), ('BRYANT', None, '35.39060', '-96.06440'), ('DEWAR', 919, '35.45810', '-95.94110'), ('HOFFMAN', 148, '35.48920', '-95.84250'), ('GRAYSON', 134, '35.50310', '-95.87250'), ('SCHULTER', 600, '35.51440', '-95.95640'), ('MORRIS', 1294, '35.60750', '-95.86000'), ('ERAM', None, '35.61690', '-95.75470'), ('PRESTON', None, '35.71140', '-95.99140'), ('BEGGS', 1364, '35.74250', '-96.07000'), ('BALD HILL', None, '35.74030', '-95.83690'), ('HECTORVILLE', None, '35.84190', '-95.92500')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'OKC117': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PAWNEE', 2230, '36.33780', '-96.80360'), ('JENNINGS', 373, '36.18110', '-96.56940'), ('TERLTON', 85, '36.18810', '-96.49000'), ('HALLETT', 168, '36.23390', '-96.56720'), ('MARAMEC', 104, '36.24190', '-96.68000'), ('BLACKBURN', 102, '36.37310', '-96.59580'), ('SKEDEE', 102, '36.37940', '-96.70470'), ('CLEVELAND', 3282, '36.31000', '-96.46390'), ('RALSTON', 355, '36.50390', '-96.73190'), ('WESTPORT', 264, '36.21890', '-96.32440')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'OKC115': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MIAMI', 13704, '36.87440', '-94.87720'), ('COMMERCE', 2645, '36.93330', '-94.87280'), ('AFTON', 1118, '36.69360', '-94.96280'), ('FAIRLAND', 1025, '36.75110', '-94.84720'), ('NARCISSA', 100, '36.80110', '-94.92670'), ('WYANDOTTE', 363, '36.79330', '-94.72500'), ('OTTAWA', None, '36.85670', '-94.78750'), ('PEORIA', 141, '36.91530', '-94.66970'), ('QUAPAW', 984, '36.95440', '-94.78780'), ('CARDIN', 150, '36.97250', '-94.84860'), ('PICHER', 1640, '36.98690', '-94.83060')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'OKC119': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CUSHING', 8371, '35.97940', '-96.76150'), ('GLENCOE', 583, '36.22610', '-96.92740'), ('MEHAN', None, '36.05000', '-96.93000'), ('PERKINS', 2272, '35.97660', '-97.02810'), ('QUAY', 47, '36.16010', '-96.70970'), ('RIPLEY', 444, '36.01750', '-96.90490'), ('STILLWATER', 39065, '36.13100', '-97.07170'), ('YALE', 1342, '36.11490', '-96.70060')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'KSC143': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ADA', None, '39.15140', '-97.88890'), ('BENNINGTON', 623, '39.03060', '-97.59390'), ('CULVER', 164, '38.97080', '-97.75860'), ('DELPHOS', 469, '39.27390', '-97.77170'), ('MINNEAPOLIS', 2046, '39.12190', '-97.70640'), ('TESCOTT', 339, '39.00810', '-97.87530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'AKC130': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('KETCHIKAN', 7922, '55.35250', '-131.65960'), ('SAXMAN', 431, '55.32460', '-131.59220')], 'partOfState': '', 'wfo': 'AJK'}, -'SDC033': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARGYLE', None, '43.53330', '-103.65000'), ('BLUE BELL', None, '43.71630', '-103.48190'), ('BUFFALO GAP', 164, '43.48330', '-103.28330'), ('CENTER LAKE', None, '43.80340', '-103.43040'), ('CRAZY HORSE', None, '43.81670', '-103.63330'), ('CUSTER', 1860, '43.76650', '-103.60070'), ('CUSTER PARK HEADQUARTERS', None, '43.76830', '-103.38680'), ('DEWEY', None, '43.52920', '-104.03280'), ('FAIRBURN', 80, '43.68780', '-103.20880'), ('FOLSOM', None, '43.83200', '-102.86580'), ('HERMOSA', 315, '43.84000', '-103.19150'), ('JEWEL CAVE', None, '43.73330', '-103.83330'), ('PRINGLE', 125, '43.60900', '-103.58910'), ('SANATOR', None, '43.69490', '-103.60320'), ('STOCKADE LAKE', None, '43.76670', '-103.51670'), ('SYLVAN LAKE', None, '43.85000', '-103.56670'), ('WIND CAVE PARK HEADQUARTE', None, '43.55640', '-103.47410')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDC031': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BLACK HORSE', None, '45.71540', '-101.38060'), ('BLACK HORSE', None, '45.71540', '-101.38060'), ('BULLHEAD', 308, '45.76790', '-101.08010'), ('BULLHEAD', 308, '45.76790', '-101.08010'), ('INDIAN MEMORIAL REC AREA', None, '45.57440', '-100.48370'), ('INDIAN MEMORIAL REC AREA', None, '45.57440', '-100.48370'), ('KELDRON', None, '45.93380', '-101.80650'), ('KELDRON', None, '45.93380', '-101.80650'), ('KENEL', None, '45.85580', '-100.45850'), ('KENEL', None, '45.85580', '-100.45850'), ('KLEIN RANCH', None, '45.66580', '-101.34780'), ('KLEIN RANCH', None, '45.66580', '-101.34780'), ('LITTLE EAGLE', 370, '45.68160', '-100.79630'), ('LITTLE EAGLE', 370, '45.68160', '-100.79630'), ('MAHTO', None, '45.75630', '-100.67530'), ('MAHTO', None, '45.75630', '-100.67530'), ('MCINTOSH', 217, '45.92060', '-101.34960'), ('MCINTOSH', 217, '45.92060', '-101.34960'), ('MCLAUGHLIN', 775, '45.81300', '-100.81100'), ('MCLAUGHLIN', 775, '45.81300', '-100.81100'), ('MORRISTOWN', 82, '45.93900', '-101.71830'), ('MORRISTOWN', 82, '45.93900', '-101.71830'), ('SHAMBO RANCH', None, '45.53320', '-101.83420'), ('SHAMBO RANCH', None, '45.53320', '-101.83420'), ('THUNDER HAWK', None, '45.93750', '-101.98330'), ('THUNDER HAWK', None, '45.93750', '-101.98330'), ('WAKPALA', None, '45.65700', '-100.53550'), ('WAKPALA', None, '45.65700', '-100.53550'), ('WALKER', None, '45.91020', '-101.09030'), ('WALKER', None, '45.91020', '-101.09030'), ('WATAUGA', None, '45.92250', '-101.54030'), ('WATAUGA', None, '45.92250', '-101.54030')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDC037': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ANDOVER', 99, '45.41060', '-97.90330'), ('ANDOVER', 99, '45.41060', '-97.90330'), ('BRISTOL', 377, '45.34660', '-97.74900'), ('BRISTOL', 377, '45.34660', '-97.74900'), ('BUTLER', 17, '45.25820', '-97.71120'), ('BUTLER', 17, '45.25820', '-97.71120'), ('GRENVILLE', 62, '45.46640', '-97.38970'), ('GRENVILLE', 62, '45.46640', '-97.38970'), ('LILY', 21, '45.18140', '-97.68120'), ('LILY', 21, '45.18140', '-97.68120'), ('PICKEREL LAKE STATE PARK', None, '45.50170', '-97.28290'), ('PICKEREL LAKE STATE PARK', None, '45.50170', '-97.28290'), ('PIERPONT', 122, '45.49690', '-97.83110'), ('PIERPONT', 122, '45.49690', '-97.83110'), ('ROSLYN', 225, '45.49660', '-97.49340'), ('ROSLYN', 225, '45.49660', '-97.49340'), ('WAUBAY', 662, '45.33320', '-97.30670'), ('WAUBAY', 662, '45.33320', '-97.30670'), ('WAUBAY WILDLIFE REFUGE', None, '45.42520', '-97.34160'), ('WAUBAY WILDLIFE REFUGE', None, '45.42520', '-97.34160'), ('WEBSTER', 1952, '45.33570', '-97.52190'), ('WEBSTER', 1952, '45.33570', '-97.52190')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDC035': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ETHAN', 330, '43.54590', '-97.98290'), ('LOOMIS', 47, '43.79440', '-98.10600'), ('MITCHELL', 14558, '43.73260', '-98.03380'), ('MOUNT VERNON', 477, '43.71220', '-98.26090')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDC039': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALTAMONT', 34, '44.84040', '-96.69010'), ('ALTAMONT', 34, '44.84040', '-96.69010'), ('ASTORIA', 150, '44.55770', '-96.54600'), ('ASTORIA', 150, '44.55770', '-96.54600'), ('BRANDT', 113, '44.66550', '-96.62500'), ('BRANDT', 113, '44.66550', '-96.62500'), ('CLEAR LAKE', 1335, '44.76600', '-96.68130'), ('CLEAR LAKE', 1335, '44.76600', '-96.68130'), ('GARY', 231, '44.79520', '-96.45800'), ('GARY', 231, '44.79520', '-96.45800'), ('GOODWIN', 160, '44.87720', '-96.84850'), ('GOODWIN', 160, '44.87720', '-96.84850'), ('LAKE COCHRANE REC AREA', None, '44.71130', '-96.46210'), ('LAKE COCHRANE REC AREA', None, '44.71130', '-96.46210'), ('MORITZ', None, '44.83400', '-96.56100'), ('MORITZ', None, '44.83400', '-96.56100'), ('TORONTO', 202, '44.57240', '-96.64160'), ('TORONTO', 202, '44.57240', '-96.64160')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'VAC595': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('EMPORIA', 5665, '36.69480', '-77.53670')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC590': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('DANVILLE CITY', None, '36.58330', '-79.41670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'GAC243': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AYCOCK MILL', None, '31.63650', '-84.61360'), ('BENEVOLENCE', None, '31.88150', '-84.73540'), ('BROOKSVILLE', None, '31.87200', '-84.65680'), ('CARNEGIE', None, '31.64290', '-84.77980'), ('COLEMAN', 149, '31.67260', '-84.89030'), ('COLES', None, '31.75210', '-84.83430'), ('CUTHBERT', 3731, '31.77060', '-84.79360'), ('FOUNTAIN BRIDGE', None, '31.66210', '-84.68530'), ('FOUNTAIN BRIDGE', None, '31.66260', '-84.68540'), ('GOFFS MILL', None, '31.70380', '-84.69630'), ('MARTINS CROSSROADS', None, '31.69560', '-84.63910'), ('PACHITLA', None, '31.76130', '-84.68150'), ('PETERSON HILL', None, '31.78030', '-84.84800'), ('RANDOLPH CO A/P', None, '31.70070', '-84.82520'), ('SHELLMAN', 1166, '31.75630', '-84.61570'), ('SHIVERS MILL', None, '31.67570', '-84.74010'), ('SPRINGVALE', None, '31.82690', '-84.87970'), ('SPRINGVALE STATION', None, '31.79930', '-84.89230'), ('WADES', None, '31.84870', '-84.75730'), ('WHITE HOUSE', None, '31.81270', '-84.78490')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'ILC169': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BLUFF CITY', None, '40.18330', '-90.23330'), ('BROOKLYN', 676, '40.23330', '-90.76670'), ('BROWNING', 130, '40.12810', '-90.37280'), ('CAMDEN', 97, '40.15300', '-90.77240'), ('FREDERICK', None, '40.06670', '-90.43330'), ('HUNTSVILLE', None, '40.18330', '-90.86670'), ('LITTLETON', 197, '40.23470', '-90.62330'), ('RAY', None, '40.21670', '-90.48330'), ('RUSHVILLE', 3212, '40.11980', '-90.56570')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'IAC019': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AURORA', 194, '42.61920', '-91.72980'), ('BRANDON', 311, '42.31400', '-92.00240'), ('BUFFALO CREEK COUNTY PARK', None, '42.46670', '-91.71670'), ('CEDAR ROCK STATE PARK', None, '42.40000', '-91.80000'), ('CUTSHAW BRIDGE STATE ACCE', None, '42.53330', '-92.05000'), ('FAIRBANK', 1041, '42.63890', '-92.05010'), ('FONTANA COUNTY PARK/CAMPG', None, '42.60000', '-91.91670'), ('HAZLETON', 950, '42.61830', '-91.90540'), ('INDEPENDENCE', 6014, '42.46810', '-91.89100'), ('INDEPENDENCE AIRPORT', None, '42.45000', '-91.95000'), ('JESUP', 2212, '42.47590', '-92.06690'), ('JESUP GOLF COURSE', None, '42.47590', '-92.08330'), ('LAMONT', 503, '42.59870', '-91.64080'), ('LIME CREEK COUNTY PARK', None, '42.33330', '-91.98330'), ('LITTLETON', None, '42.53330', '-92.01670'), ('MONTI', None, '42.38330', '-91.63330'), ('OTTERVILLE', None, '42.51670', '-91.95000'), ('QUASQUETON', 574, '42.39550', '-91.75640'), ('ROWLEY', 290, '42.36840', '-91.84480'), ('STANLEY', 128, '42.64200', '-91.81170'), ('THREE ELMS COUNTY PARK', None, '42.45000', '-91.86670'), ('TROY MILLS WMA', None, '42.31670', '-91.71670'), ('WAPSIPINICON GOLF COURSE', None, '42.48330', '-91.93330'), ('WINTHROP', 772, '42.47330', '-91.73370'), ('WINTHROP GOLF COURSE', None, '42.50000', '-91.65000')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'ILC163': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BARR', None, '38.40470', '-90.10430'), ('BELLEVILLE', 41410, '38.53000', '-90.00320'), ('BROOKLYN', 676, '38.65160', '-90.16740'), ('CAHOKIA', 16391, '38.56480', '-90.17760'), ('CASEYVILLE', 4310, '38.63300', '-90.03270'), ('CENTREVILLE', 5951, '38.57720', '-90.10160'), ('DUPO', 3933, '38.51750', '-90.20960'), ('EAST CARONDELET', 267, '38.53860', '-90.23700'), ('EAST ST. LOUIS', 31542, '38.61460', '-90.13100'), ('FAIRMONT CITY', 2436, '38.65100', '-90.10150'), ('FAIRVIEW HEIGHTS', 15034, '38.59670', '-90.00490'), ('FAYETTEVILLE', 384, '38.37790', '-89.79610'), ('FLORAVILLE', None, '38.37580', '-90.05630'), ('FREEBURG', 3872, '38.42780', '-89.90810'), ('LEBANON', 3523, '38.60310', '-89.81500'), ('LENZBURG', 577, '38.28520', '-89.81870'), ('MARISSA', 2141, '38.25500', '-89.75370'), ('MASCOUTAH', 5659, '38.50910', '-89.80540'), ('MILLSTADT', 2794, '38.45940', '-90.09310'), ('NEW ATHENS', 1981, '38.31900', '-89.87740'), ("O'FALLON", 21910, '38.59200', '-89.91330'), ('PADERBORN', None, '38.35910', '-90.04230'), ('SAUGET', 249, '38.58940', '-90.16970'), ('SCOTT AFB', 2707, '38.54420', '-89.85040'), ('SHILOH', 7643, '38.55350', '-89.90520'), ('SMITHTON', 2248, '38.40820', '-89.99020'), ('ST. LIBORY', 583, '38.36450', '-89.71400'), ('SUMMERFIELD', 472, '38.59570', '-89.74730'), ('SWANSEA', 10579, '38.54210', '-89.98860'), ('WASHINGTON PARK', 5345, '38.62990', '-90.09220')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'IAC013': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CEDAR FALLS', 36145, '42.52060', '-92.45280'), ('DUNKERTON', 749, '42.56830', '-92.15990'), ('ELK RUN HEIGHTS', 1052, '42.46710', '-92.24930'), ('EVANSDALE', 4526, '42.46180', '-92.27560'), ('GILBERTVILLE', 767, '42.41870', '-92.21370'), ('HUDSON', 2117, '42.42330', '-92.45470'), ('LA PORTE CITY', 2275, '42.31310', '-92.19120'), ('RAYMOND', 537, '42.46690', '-92.22820'), ('WATERLOO', 68747, '42.49160', '-92.35110')], 'partOfState': 'NORTHEAST', 'wfo': 'DMX'}, -'ILC161': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('PLEASANT VALLEY', None, '41.56670', '-90.41670'), ('PRINCETON WILDLIFE AREA', None, '41.70000', '-90.31670'), ('ANDALUSIA', 1050, '41.43800', '-90.72540'), ('BLACKHAWK STATE H.S.', None, '41.46660', '-90.56660'), ('CARBON CLIFF', 1689, '41.49760', '-90.39030'), ('COAL VALLEY', 3606, '41.44900', '-90.44780'), ('CORDOVA', 633, '41.67800', '-90.32200'), ('COYNE CENTER', 906, '41.40000', '-90.56670'), ('EAST MOLINE', 20333, '41.51420', '-90.42740'), ('EDGINGTON', None, '41.38330', '-90.76670'), ('FRUITLAND', None, '41.46670', '-90.51670'), ('HAMPTON', 1626, '41.55330', '-90.40560'), ('HIGHLAND SPRING GOLF COUR', None, '41.41670', '-90.61670'), ('HILLSDALE', 588, '41.61180', '-90.17520'), ('ILLINIWEK PARK', None, '41.56670', '-90.40000'), ('ILLINOIS CITY', None, '41.40000', '-90.90000'), ('INDIAN BLUFF PARK', None, '41.43330', '-90.51660'), ('LOUD THUNDER PARK', None, '41.43330', '-90.83330'), ('MILAN', 5348, '41.44420', '-90.56130'), ('MOLINE', 43768, '41.48510', '-90.48880'), ('MOLINE QUAD-CITY AIRPORT', None, '41.45000', '-90.50000'), ('OAK GROVE', 1318, '41.41400', '-90.57320'), ('PORT BYRON', 1535, '41.62130', '-90.32370'), ('RAPIDS CITY', 953, '41.58190', '-90.34140'), ('ROCK ISLAND', 39684, '41.47550', '-90.58030'), ('SAUKIE GOLF COURSE', None, '41.46670', '-90.55000'), ('SILVIS', 7269, '41.50630', '-90.41270'), ('SILVIS HEIGHTS', None, '41.50000', '-90.41670'), ('TAYLOR RIDGE', None, '41.38330', '-90.66670'), ('WOODS AIRPORT', None, '41.51660', '-90.38330')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'IAC011': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ATKINS', 977, '41.99730', '-91.85930'), ('BELLE PLAINE', 2878, '41.89670', '-92.27410'), ('BLAIRSTOWN', 682, '41.90580', '-92.08180'), ('CHENEY', None, '42.25000', '-91.93330'), ('GARRISON', 413, '42.14360', '-92.14280'), ('IRVING', None, '41.95100', '-92.30000'), ('KEYSTONE', 687, '41.99980', '-92.19860'), ('LUZERNE', 105, '41.90620', '-92.18020'), ('MOUNT AUBURN', 160, '42.25680', '-92.09330'), ('NEWHALL', 886, '41.99300', '-91.96670'), ('NORWAY', 601, '41.90280', '-91.92190'), ('SHELLSBURG', 938, '42.09320', '-91.86940'), ('SPENCERS GROVE', None, '42.28330', '-91.86670'), ('URBANA', 1019, '42.22330', '-91.87500'), ('VAN HORNE', 716, '42.01000', '-92.09010'), ('VINTON', 5102, '42.16420', '-92.02700'), ('VINTON MEMORIAL AIRPORT', None, '42.20000', '-92.03330'), ('WALFORD', 1224, '41.88330', '-91.84000'), ('WATKINS', None, '41.88330', '-91.98330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'ILC167': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AUBURN', 4317, '39.57720', '-89.74580'), ('BERLIN', 140, '39.75770', '-89.90250'), ('BERRY', None, '39.71670', '-89.48330'), ('BUFFALO', 491, '39.84950', '-89.40900'), ('CANTRALL', 139, '39.93440', '-89.68010'), ('CHATHAM', 8583, '39.67290', '-89.69710'), ('CURRAN', None, '39.74000', '-89.76670'), ('DAWSON', 466, '39.85380', '-89.46270'), ('DIVERNON', 1201, '39.56930', '-89.65400'), ('FARMINGDALE', None, '39.83330', '-89.81670'), ('GLENARM', None, '39.61670', '-89.67000'), ('ILLIOPOLIS', 916, '39.85130', '-89.24700'), ('LOAMI', 804, '39.67440', '-89.84800'), ('LOWDER', None, '39.55000', '-89.85000'), ('MECHANICSBURG', 456, '39.81020', '-89.39820'), ('NEW BERLIN', 1030, '39.72520', '-89.91190'), ('PAWNEE', 2647, '39.59200', '-89.58090'), ('PLEASANT PLAINS', 777, '39.87320', '-89.92000'), ('RIVERTON', 3048, '39.84920', '-89.54010'), ('ROCHESTER', 2893, '39.75060', '-89.54150'), ('SALISBURY', None, '39.90000', '-89.81670'), ('SHERMAN', 2871, '39.88660', '-89.60900'), ('SPRINGFIELD', 111454, '39.78140', '-89.64470'), ('THAYER', 750, '39.53990', '-89.75840'), ('WILLIAMSVILLE', 1439, '39.95280', '-89.55630')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'PRC029': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BENITEZ', None, '18.27540', '-65.87930'), ('CAMPO RICO', 3218, '18.33910', '-65.89820'), ('CANOVANAS', None, '18.37970', '-65.90680'), ('LOMAS', 953, '18.27050', '-65.90920'), ('SAN ISIDRO', 8071, '18.39410', '-65.88570'), ('SANTA BARBARA', None, '18.39560', '-65.91900')], 'partOfState': '', 'wfo': 'SJU'}, -'ILC165': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CARRIERS MILLS', None, '37.68860', '-88.62890'), ('ELDORADO', 4534, '37.81180', '-88.44170'), ('GALATIA', 1013, '37.84110', '-88.61390'), ('HARRISBURG', 9860, '37.73650', '-88.54930'), ('MUDDY', 78, '37.76500', '-88.51680'), ('RALEIGH', 330, '37.82530', '-88.53160'), ('STONEFORT', 292, '37.61750', '-88.70720')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'IAC015': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEAVER', 53, '42.03780', '-94.14090'), ('BERKLEY', 24, '41.94610', '-94.11360'), ('BOONE', 12803, '42.05250', '-93.87920'), ('BOXHOLM', 215, '42.17330', '-94.10630'), ('FRASER', 137, '42.12680', '-93.97370'), ('LUTHER', 158, '41.96710', '-93.81970'), ('MADRID', 2264, '41.87550', '-93.81970'), ('OGDEN', 2023, '42.03940', '-94.02850'), ('PILOT MOUND', 214, '42.15910', '-94.01870')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'SCC001': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ABBEVILLE', 5840, '34.17960', '-82.37820'), ('ANTREVILLE', 118, '34.30390', '-82.54250'), ('CALHOUN FALLS', 2303, '34.09170', '-82.59650'), ('DONALDS', 354, '34.37760', '-82.34700'), ('DUE WEST', 1209, '34.33230', '-82.38860'), ('LOWNDESVILLE', 166, '34.21030', '-82.64950')], 'partOfState': '', 'wfo': 'GSP'}, -'ORC019': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('AZALEA', None, '42.79560', '-123.25920'), ('CAMAS VALLEY', None, '43.03440', '-123.67280'), ('CANYONVILLE', 1293, '42.92870', '-123.27830'), ('CURTAIN', None, '43.72250', '-123.21080'), ('DIAMOND LAKE', None, '43.17890', '-122.13780'), ('DRAIN', 1021, '43.66210', '-123.31410'), ('ELKTON', 147, '43.63730', '-123.56600'), ('GLENDALE', 855, '42.73760', '-123.42840'), ('GREEN', 6174, '43.14920', '-123.38220'), ('MYRTLE CREEK', 3419, '43.02580', '-123.28260'), ('OAKLAND', 954, '43.42300', '-123.29580'), ('REEDSPORT', 4378, '43.69900', '-124.11090'), ('RIDDLE', 1014, '42.95370', '-123.36610'), ('ROSEBURG', 20017, '43.21970', '-123.35760'), ('SCOTTSBURG', None, '43.65420', '-123.81560'), ('STEAMBOAT', None, '43.34560', '-122.73440'), ('SUTHERLIN', 6669, '43.38860', '-123.31500'), ('TILLER', None, '42.92860', '-122.95000'), ('TOKETEE FALLS', None, '43.27580', '-122.44970'), ('TRI-CITY', 3519, '42.98470', '-123.31050'), ('UMPQUA', None, '43.36560', '-123.46720'), ('WINCHESTER', None, '43.28030', '-123.35250'), ('WINSTON', 4613, '43.12040', '-123.41140'), ('YONCALLA', 1052, '43.60020', '-123.28540')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'TXC163': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIG FOOT', None, '29.05000', '-98.88330'), ('DILLEY', 3674, '28.66880', '-99.17100'), ('FRIO TOWN', None, '29.01670', '-99.31670'), ('MOORE', 644, '29.05000', '-99.01670'), ('PEARSALL', 7157, '28.88770', '-99.09210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'WIC027': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BEAVER DAM', 15169, '43.46400', '-88.83720'), ('BROWNSVILLE', 570, '43.61570', '-88.49130'), ('CLYMAN', 388, '43.31210', '-88.71930'), ('FOX LAKE', 1454, '43.56340', '-88.91260'), ('HORICON', 3775, '43.44490', '-88.63710'), ('HUSTISFORD', 1135, '43.34550', '-88.60360'), ('IRON RIDGE', 998, '43.39760', '-88.53210'), ('JUNEAU', 2485, '43.40630', '-88.70330'), ('KEKOSKEE', 169, '43.52760', '-88.56170'), ('LOMIRA', 2233, '43.58890', '-88.44470'), ('LOWELL', 366, '43.33780', '-88.82090'), ('MAYVILLE', 4902, '43.49820', '-88.54620'), ('NEOSHO', 593, '43.30970', '-88.51780'), ('RANDOLPH', 1869, '43.53780', '-89.00220'), ('REESEVILLE', 703, '43.30590', '-88.84510'), ('THERESA', 1252, '43.51780', '-88.45270'), ('WAUPUN', 10718, '43.63160', '-88.73570')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'UTC041': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ANNABELLA', 603, '38.70620', '-112.05750'), ('AURORA', 947, '38.92040', '-111.93240'), ('BURRVILLE', None, '38.57000', '-111.87000'), ('ELSINORE', 733, '38.68390', '-112.14890'), ('FREMONT JCT', None, '38.75000', '-111.40000'), ('GLENWOOD', 437, '38.76240', '-111.98860'), ('JOSEPH', 269, '38.62510', '-112.22000'), ('KOOSHAREM', 276, '38.51150', '-111.88030'), ('MONROE', 1845, '38.62430', '-112.11950'), ('REDMOND', 788, '39.00530', '-111.86450'), ('RICHFIELD', 6847, '38.76600', '-112.08500'), ('SALINA', 2393, '38.94910', '-111.85920'), ('SEVIER', None, '38.58000', '-112.25000'), ('SIGURD', 430, '38.85040', '-111.96540')], 'partOfState': '', 'wfo': 'SLC'}, -'UTC043': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CASTLE ROCK', None, '41.13000', '-111.17000'), ('COALVILLE', 1382, '40.91760', '-111.39440'), ('ECHO', None, '40.97000', '-111.45000'), ('EMORY', None, '41.08000', '-111.32000'), ('FRANCIS', 698, '40.61220', '-111.27530'), ('HENEFER', 684, '41.01920', '-111.49280'), ('HEWINTA G.S.', None, '40.97000', '-110.48000'), ('HOYTSVILLE', None, '40.87000', '-111.38000'), ('KAMAS', 1274, '40.64330', '-111.27370'), ('KIMBALL JCT', None, '40.73000', '-111.55000'), ('MARION', None, '40.67000', '-111.28000'), ('OAKLEY', 948, '40.72210', '-111.28760'), ('PARK CITY', 7371, '40.65640', '-111.49300'), ('PEOA', None, '40.72000', '-111.33000'), ('SNYDERVILLE', None, '40.68000', '-111.53000'), ('TRIAL LK', None, '40.68000', '-111.02000'), ('WAHSATCH', None, '41.20000', '-111.10000'), ('WANSHIP', None, '40.80000', '-111.40000')], 'partOfState': '', 'wfo': 'SLC'}, -'ORC013': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('PRINEVILLE', 7356, '44.30550', '-120.84150')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'ORC011': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BANDON', 2833, '43.11590', '-124.41460'), ('CHARLESTON', None, '43.34030', '-124.32890'), ('COOS BAY', 15374, '43.37840', '-124.23100'), ('COQUILLE', 4184, '43.18130', '-124.18170'), ('LAKESIDE', 1371, '43.57900', '-124.17320'), ('MYRTLE POINT', 2451, '43.06220', '-124.13190'), ('NORTH BEND', 9544, '43.40610', '-124.23620'), ('POWERS', 734, '42.88540', '-124.07220'), ('SITKUM', None, '43.14830', '-123.86000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ORC017': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BEND', 52029, '44.06600', '-121.31100'), ('DESCHUTES RIVER WOODS', 4631, '43.99170', '-121.35710'), ('REDMOND', 13481, '44.25950', '-121.17120'), ('SISTERS', 959, '44.29100', '-121.54820'), ('TERREBONNE', 1469, '44.34200', '-121.17740'), ('THREE RIVERS', 2445, '43.82010', '-121.46800')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'SCC003': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('AIKEN', 25337, '33.54080', '-81.72840'), ('BELVEDERE', 5631, '33.53560', '-81.94190'), ('BURNETTOWN', 2720, '33.51050', '-81.85420'), ('CLEARWATER', 4199, '33.50550', '-81.90770'), ('GLOVERVILLE', 2805, '33.52810', '-81.81400'), ('JACKSON', 1625, '33.32840', '-81.79220'), ('NEW ELLENTON', 2250, '33.41880', '-81.68660'), ('NORTH AUGUSTA', 17574, '33.51770', '-81.95620'), ('PERRY', 237, '33.62700', '-81.30920'), ('SALLEY', 410, '33.56660', '-81.30430'), ('WAGENER', 863, '33.65090', '-81.36300'), ('WINDSOR', 127, '33.48080', '-81.51510')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'ORC015': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('AGNESS', None, '42.55670', '-124.06780'), ('BROOKINGS', 5447, '42.05980', '-124.29080'), ('DENMARK', None, '42.89080', '-124.46140'), ('GOLD BEACH', 1897, '42.41290', '-124.41850'), ('HARBOR', 2622, '42.03910', '-124.25470'), ('LANGLOIS', None, '42.92360', '-124.44970'), ('NESIKA BEACH', None, '42.50640', '-124.41220'), ('OPHIR', None, '42.56330', '-124.38170'), ('PISTOL RIVER', None, '42.27720', '-124.39360'), ('PORT ORFORD', 1153, '42.74990', '-124.49550'), ('SIXES', None, '42.82030', '-124.48190')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ILC185': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALLENDALE', 528, '38.52760', '-87.71030'), ('BELLMONT', 297, '38.38260', '-87.90950'), ('KEENSBURG', 252, '38.35200', '-87.86700'), ('MOUNT CARMEL', 7982, '38.41720', '-87.77010')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'ARC111': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FISHER', 265, '35.49150', '-90.97220'), ('GREENFIELD', None, '35.68330', '-90.71670'), ('HARRISBURG', 2192, '35.56030', '-90.72110'), ('LEPANTO', 2133, '35.60710', '-90.33350'), ('MARKED TREE', 2800, '35.53000', '-90.41750'), ('TRUMANN', 6889, '35.67470', '-90.51950'), ('TYRONZA', 918, '35.49030', '-90.35890'), ('WALDENBURG', 80, '35.56490', '-90.93480'), ('WEINER', 760, '35.61920', '-90.90200')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC187': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALEXIS', 863, '41.06400', '-90.56500'), ('BERWICK', None, '40.80000', '-90.53330'), ('CAMERON', None, '40.88330', '-90.51670'), ('COLDBROOK', None, '40.95000', '-90.51670'), ('ELEANOR', None, '40.98330', '-90.70000'), ('GERLAW', None, '40.98330', '-90.60000'), ('GREENBUSH', None, '40.71670', '-90.53330'), ('KIRKWOOD', 794, '40.86750', '-90.74830'), ('LARCHLAND', None, '40.81670', '-90.65000'), ('LITTLE YORK', 269, '41.01040', '-90.74670'), ('MONMOUTH', 9841, '40.91340', '-90.64300'), ('MONMOUTH MUNICIPAL AIRPOR', None, '40.93330', '-90.63330'), ('NEMO', None, '40.86670', '-90.60000'), ('ORMONDE', None, '40.85000', '-90.61670'), ('PHELPS', None, '40.85000', '-90.56670'), ('PONEMAH', None, '40.81670', '-90.70000'), ('ROSEVILLE', 1083, '40.73080', '-90.66270'), ('SHANGHAI CITY', None, '41.05000', '-90.50000'), ('SHAW', None, '41.05000', '-90.63330'), ('SMITHSHIRE', None, '40.80000', '-90.78330'), ('SURREY', None, '40.91670', '-90.46670'), ('SWAN CREEK', None, '40.66670', '-90.65000'), ('UTAH', None, '40.98330', '-90.48330'), ('WOODVALE', None, '41.01670', '-90.65000'), ('YOUNSTOWN', None, '40.66670', '-90.61670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'ARC113': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('COVE', 383, '34.43500', '-94.40920'), ('GRANNIS', 575, '34.24010', '-94.32030'), ('HATFIELD', 402, '34.48710', '-94.37870'), ('MENA', 5637, '34.58040', '-94.23670'), ('VANDERVOORT', 120, '34.37960', '-94.36450'), ('WICKES', 675, '34.29970', '-94.33520')], 'partOfState': '', 'wfo': 'LZK'}, -'ILC181': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALTO PASS', 388, '37.57290', '-89.31930'), ('ANNA', 5136, '37.46000', '-89.24110'), ('COBDEN', 1116, '37.53340', '-89.25420'), ('DONGOLA', 806, '37.36000', '-89.16390'), ('JONESBORO', 1853, '37.45430', '-89.26960'), ('MILL CREEK', 76, '37.34150', '-89.25420')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ARC115': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ATKINS', 2878, '35.24260', '-92.94560'), ('DOVER', 1329, '35.40220', '-93.11240'), ('HECTOR', 506, '35.46570', '-92.97530'), ('LONDON', 925, '35.32820', '-93.24010'), ('POTTSVILLE', 1271, '35.23840', '-93.05840'), ('RUSSELLVILLE', 23682, '35.27180', '-93.14080')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ILC183': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALLERTON', 293, '39.91530', '-87.93560'), ('ALVIN', 316, '40.30770', '-87.60680'), ('ARMSTRONG', None, '40.31670', '-87.88330'), ('BISMARCK', 542, '40.26670', '-87.60000'), ('CATLIN', 2087, '40.06840', '-87.70790'), ('COLLISON', None, '40.23330', '-87.80000'), ('DANVILLE', 33904, '40.14390', '-87.61940'), ('FAIRMOUNT', 640, '40.04610', '-87.82860'), ('FITHIAN', 506, '40.11400', '-87.87470'), ('GEORGETOWN', 3628, '39.97650', '-87.63500'), ('HENNING', 241, '40.30620', '-87.70070'), ('HOOPESTON', 5965, '40.46520', '-87.67090'), ('INDIANOLA', 207, '39.92710', '-87.74020'), ('JAMAICA', None, '39.98330', '-87.80000'), ('OAKWOOD', 1502, '40.10900', '-87.77650'), ('POTOMAC', 681, '40.30640', '-87.79720'), ('RANKIN', 617, '40.46470', '-87.89610'), ('RIDGE FARM', 912, '39.89530', '-87.65230'), ('ROSSVILLE', 1217, '40.38180', '-87.66910'), ('SIDELL', 626, '39.91020', '-87.82200'), ('TILTON', 2976, '40.09430', '-87.63850'), ('WESTVILLE', 3175, '40.04480', '-87.63800')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ARC117': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('DE VALLS BLUFF', 783, '34.78570', '-91.46080'), ('DES ARC', 1933, '34.97570', '-91.50520'), ('FREDONIA (BISCOE)', 476, '34.81860', '-91.40910'), ('HAZEN', 1637, '34.78930', '-91.57370'), ('ULM', 205, '34.57600', '-91.46130')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARC119': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CAMMACK VILLAGE', 831, '34.77990', '-92.34680'), ('GIBSON', 4678, '34.89540', '-92.22710'), ('GRAVEL RIDGE', 3232, '34.87140', '-92.18770'), ('JACKSONVILLE', 29916, '34.86980', '-92.12800'), ('LITTLE ROCK', 183133, '34.72240', '-92.35410'), ('MAUMELLE', 10557, '34.85250', '-92.41050'), ('NORTH LITTLE ROCK', 60433, '34.78840', '-92.25540'), ('PARKERS-IRON SPRINGS', 3499, '34.60520', '-92.32220'), ('SHERWOOD', 21511, '34.83200', '-92.20750'), ('WRIGHTSVILLE', 1368, '34.61400', '-92.21990')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'WAC071': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BURBANK', 3303, '46.19160', '-118.98160'), ('COLLEGE PLACE', 7818, '46.04420', '-118.38360'), ('GARRETT', 1022, '46.06140', '-118.38330'), ('PRESCOTT', 314, '46.29910', '-118.31150'), ('WAITSBURG', 1212, '46.26910', '-118.15040'), ('WALLA WALLA', 29686, '46.06690', '-118.34120'), ('WALLA WALLA EAST', 2479, '46.05450', '-118.30260')], 'partOfState': 'SOUTHEAST', 'wfo': 'PDT'}, -'WYC003': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BASIN', 1238, '44.37960', '-108.04250'), ('BURLINGTON', 250, '44.44740', '-108.43170'), ('BYRON', 557, '44.79540', '-108.50760'), ('COWLEY', 560, '44.88580', '-108.46980'), ('DEAVER', 177, '44.88920', '-108.59480'), ('EMBLEM', None, '44.51000', '-108.39000'), ('FRANNIE', 209, '44.97090', '-108.61970'), ('GREYBULL', 1815, '44.49100', '-108.05720'), ('HYATTVILLE', 73, '44.25000', '-107.60000'), ('LOVELL', 2281, '44.83680', '-108.39150'), ('MANDERSON', 104, '44.26990', '-107.96340'), ('OTTO', None, '44.40000', '-108.27000'), ('SHELL', None, '44.53000', '-107.78000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RIW'}, -'ILC189': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADDIEVILLE', 267, '38.39170', '-89.48740'), ('ASHLEY', 613, '38.32910', '-89.18940'), ('BEAUCOUP', None, '38.34980', '-89.29210'), ('CORDES', None, '38.29610', '-89.45720'), ('COVINGTON', None, '38.45480', '-89.43590'), ('DU BOIS', 222, '38.22190', '-89.21280'), ('ELKTON', None, '38.29190', '-89.55680'), ('FROGTOWN', None, '38.44230', '-89.49180'), ('HOYLETON', 520, '38.44530', '-89.27160'), ('HUEGELY', None, '38.40570', '-89.31840'), ('IRVINGTON', 736, '38.43710', '-89.16240'), ('JOHANNISBURG', None, '38.38450', '-89.65320'), ('LIVELY GROVE', None, '38.30000', '-89.61700'), ('NASHVILLE', 3147, '38.34810', '-89.37770'), ('NEW MINDEN', 204, '38.43750', '-89.37090'), ('OAKDALE', 213, '38.26380', '-89.50490'), ('OKAWVILLE', 1355, '38.43420', '-89.54830'), ('POSEN', 4730, '38.25830', '-89.33570'), ('RADOM', 395, '38.28060', '-89.19180'), ('RICHVIEW', 308, '38.37560', '-89.18370'), ('STONE CHURCH', None, '38.35040', '-89.62450'), ('VENEDY', 137, '38.39590', '-89.64590'), ('WAMAC', 1378, '38.50020', '-89.14570')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'IDC057': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BOVILL', 305, '46.85830', '-116.39330'), ('DEARY', 552, '46.80060', '-116.55650'), ('GENESEE', 946, '46.55120', '-116.92800'), ('HARVARD', None, '46.91720', '-116.72380'), ('HELMER', None, '46.80050', '-116.46820'), ('JOEL', None, '46.70630', '-116.87280'), ('JULIAETTA', 609, '46.57460', '-116.70790'), ('KENDRICK', 369, '46.61390', '-116.65210'), ('MOSCOW', 21291, '46.72980', '-116.99680'), ('ONAWAY', 230, '46.92870', '-116.88810'), ('POTLATCH', 791, '46.92320', '-116.89790'), ('PRINCETON', None, '46.90850', '-117.02080'), ('TROY', 798, '46.73870', '-116.76800'), ('VIOLA', None, '46.83650', '-117.02080')], 'partOfState': '', 'wfo': 'OTX'}, -'NEC049': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BIG SPRINGS', 418, '41.06340', '-102.07470'), ('CHAPPELL', 983, '41.09410', '-102.46700')], 'partOfState': '', 'wfo': 'LBF'}, -'IDC055': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ATHOL', 676, '47.94510', '-116.70650'), ('BAYVIEW', None, '47.97480', '-116.55550'), ('CHILCO', None, '47.85830', '-116.74070'), ("COEUR D'ALENE", 34514, '47.69780', '-116.78480'), ('DALTON GARDENS', 2278, '47.73350', '-116.76690'), ('FERNAN LAKE VILLAGE', 186, '47.67330', '-116.74700'), ('HARRISON', 267, '47.45240', '-116.78040'), ('HAUSER', 668, '47.76970', '-117.01180'), ('HAYDEN', 9159, '47.76020', '-116.78850'), ('HAYDEN LAKE', 494, '47.76580', '-116.75280'), ('HUETTER', 96, '47.70390', '-116.84780'), ('LACLEDE', None, '47.96880', '-116.75200'), ('MEDIMONT', None, '47.47230', '-116.60200'), ('POST FALLS', 17247, '47.71250', '-116.94460'), ('RATHDRUM', 4816, '47.81170', '-116.88870'), ('ROSE LAKE', None, '47.53670', '-116.46920'), ('SPIRIT LAKE', 1376, '47.96800', '-116.86970'), ('STATE LINE', 28, '47.70620', '-117.03510'), ('WORLEY', 223, '47.40130', '-116.91840')], 'partOfState': '', 'wfo': 'OTX'}, -'PAC005': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('APOLLO', 1765, '40.58460', '-79.56460'), ('APPLEWOLD', 356, '40.80750', '-79.52230'), ('ATWOOD', 112, '40.74800', '-79.26190'), ('BRADYS BEND', None, '41.00000', '-79.63000'), ('DAYTON', 543, '40.88100', '-79.24180'), ('EAST VANDERGRIFT', 742, '40.59740', '-79.56300'), ('ELDERTON', 358, '40.69410', '-79.34190'), ('FORD CITY', 3451, '40.76820', '-79.53450'), ('FORD CLIFF', 412, '40.75990', '-79.53660'), ('FREEPORT', 1962, '40.68260', '-79.68280'), ('HAWTHORN', 587, '41.02080', '-79.27620'), ('HYDE PARK', 513, '40.63220', '-79.58900'), ('KITTANNING', 4787, '40.82710', '-79.52340'), ('LEECHBURG', 2386, '40.63040', '-79.60280'), ('LENAPE HEIGHTS', 1212, '40.76430', '-79.52080'), ('MANORVILLE', 401, '40.78770', '-79.52110'), ('NORTH APOLLO', 1426, '40.59320', '-79.55710'), ('NORTH VANDERGRIFT-PLEASAN', None, '40.60850', '-79.56440'), ('ORCHARD HILLS', 2152, '40.59300', '-79.54140'), ('PARKER', 799, '41.09200', '-79.68430'), ('RURAL VALLEY', 922, '40.79910', '-79.31470'), ('SOUTH BETHLEHEM', 444, '40.99960', '-79.33950'), ('WEST HILLS', 1229, '40.82790', '-79.54700'), ('WEST KITTANNING', 1199, '40.81190', '-79.53170'), ('WORTHINGTON', 778, '40.83790', '-79.63440')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'IDC053': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('EDEN', 411, '42.60520', '-114.20870'), ('HAZELTON', 687, '42.59480', '-114.13430'), ('JEROME', 7780, '42.72570', '-114.51570')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BOI'}, -'ARC031': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BAY', 1800, '35.74000', '-90.55920'), ('BLACK OAK', 286, '35.83550', '-90.36710'), ('BONO', 1512, '35.91050', '-90.79670'), ('BROOKLAND', 1332, '35.90140', '-90.58080'), ('CARAWAY', 1349, '35.75800', '-90.33200'), ('CASH', 294, '35.79980', '-90.93220'), ('EGYPT', 101, '35.86660', '-90.95290'), ('JONESBORO', 55515, '35.82180', '-90.68580'), ('LAKE CITY', 1956, '35.81900', '-90.44860'), ('MONETTE', 1179, '35.89370', '-90.34460')], 'partOfState': '', 'wfo': 'MEG'}, -'IDC051': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CAMAS', None, '44.00000', '-112.22000'), ('HAMER', 12, '43.92570', '-112.20370'), ('LEWISVILLE', 467, '43.69490', '-112.01400'), ('LORENZO', None, '43.73000', '-111.88000'), ('MENAN', 707, '43.72200', '-111.99410'), ('MONTEVIEW', None, '43.93000', '-112.53000'), ('MUD LAKE', 270, '43.84260', '-112.47910'), ('RIGBY', 2998, '43.67390', '-111.91550'), ('RIRIE', 545, '43.63130', '-111.77340'), ('ROBERTS', 647, '43.72070', '-112.12680'), ('TERRETON', None, '43.83000', '-112.43000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'NEC041': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANSELMO', 159, '41.61850', '-99.86440'), ('ANSLEY', 520, '41.28760', '-99.38220'), ('ARNOLD', 630, '41.42390', '-100.19380'), ('BERWYN', 134, '41.35130', '-99.50020'), ('BROKEN BOW', 3491, '41.40540', '-99.63910'), ('CALLAWAY', 637, '41.29130', '-99.92000'), ('COMSTOCK', 110, '41.55790', '-99.24250'), ('GATES', None, '41.65500', '-99.64500'), ('MASON CITY', 178, '41.22250', '-99.29800'), ('MERNA', 391, '41.48460', '-99.76060'), ('MILBURN', None, '41.73450', '-99.75000'), ('OCONTO', 141, '41.14160', '-99.76110'), ('SARGENT', 649, '41.64090', '-99.37000'), ('WEISSERT', None, '41.46700', '-99.45000'), ('WESTERVILLE', None, '41.39890', '-99.39000')], 'partOfState': 'CENTRAL', 'wfo': 'LBF'}, -'NEC043': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('DAKOTA CITY', 1821, '42.41600', '-96.41740'), ('EMERSON', 817, '42.27820', '-96.72560'), ('HOMER', 590, '42.32200', '-96.49110'), ('HUBBARD', 234, '42.38550', '-96.59040'), ('JACKSON', 205, '42.44880', '-96.56590'), ('SOUTH SIOUX CITY', 11925, '42.46600', '-96.41210')], 'partOfState': 'NORTHEAST', 'wfo': 'FSD'}, -'PRC021': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BAYAMON', None, '18.38130', '-66.16390')], 'partOfState': '', 'wfo': 'SJU'}, -'IDC059': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BAKER', None, '45.09472', '-113.73361'), ('CARMEN', None, '45.24250', '-113.89250'), ('COBALT', None, '45.09306', '-114.23083'), ('ELLIS', None, '44.69194', '-114.04750'), ('GIBBONSVILLE', None, '45.55556', '-113.92222'), ('GILMORE', None, '44.45889', '-113.26889'), ('LEADORE', 90, '44.68028', '-113.35722'), ('LEESBURG', None, '45.22389', '-114.11306'), ('LEMHI', None, '44.85167', '-113.61889'), ('MAY', None, '44.60444', '-113.91111'), ('NICHOLIA', None, '44.36000', '-113.01083'), ('NORTH FORK', None, '45.40611', '-113.99306'), ('PATTERSON', None, '44.52361', '-113.71139'), ('SALMON', 3122, '45.17583', '-113.89500'), ('SHOUP', None, '45.37694', '-114.27611'), ('TENDOY', None, '44.95944', '-113.64389'), ('WILLIAMS LAKE', None, '45.01194', '-113.96500'), ('YELLOWJACKET', None, '44.97972', '-114.53083')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MSO'}, -'NEC047': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('COZAD', 4163, '40.86290', '-99.98650'), ('EDDYVILLE', 96, '41.01270', '-99.62330'), ('GOTHENBURG', 3619, '40.92940', '-100.16120'), ('LEXINGTON', 10011, '40.77840', '-99.74210'), ('OVERTON', 646, '40.74040', '-99.53700'), ('SUMNER', 237, '40.94950', '-99.50720'), ('WILLOW ISLAND', None, '40.88000', '-100.06720')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'IAC127': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBION', 592, '42.11280', '-92.98920'), ('CLEMONS', 148, '42.11320', '-93.15820'), ('FERGUSON', 126, '41.93840', '-92.86340'), ('GILMAN', 600, '41.87860', '-92.78780'), ('HAVERHILL', 170, '41.94410', '-92.96120'), ('LAUREL', 266, '41.88380', '-92.92130'), ('LE GRAND', 883, '42.00720', '-92.77510'), ('LISCOMB', 272, '42.19060', '-93.00550'), ('MARSHALLTOWN', 26009, '42.03550', '-92.91180'), ('MELBOURNE', 794, '41.94180', '-93.10220'), ('RHODES', 294, '41.92740', '-93.18400'), ('ST. ANTHONY', 109, '42.12440', '-93.19780'), ('STATE CENTER', 1349, '42.01530', '-93.16540')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'MOC079': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRIMSON', 63, '40.14420', '-93.73780'), ('GALT', 275, '40.12720', '-93.38760'), ('LAREDO', 250, '40.02630', '-93.44730'), ('SPICKARD', 315, '40.24260', '-93.59220'), ('TINDALL', 65, '40.16040', '-93.60940'), ('TRENTON', 6216, '40.08110', '-93.60450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'IAC123': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BARNES CITY', 201, '41.50740', '-92.46880'), ('BEACON', 518, '41.27460', '-92.68120'), ('FREMONT', 704, '41.21210', '-92.43490'), ('KEOMAH VILLAGE', 97, '41.28820', '-92.53630'), ('LEIGHTON', 153, '41.33850', '-92.78660'), ('NEW SHARON', 1301, '41.47020', '-92.65060'), ('OSKALOOSA', 10938, '41.29300', '-92.63960'), ('ROSE HILL', 205, '41.32040', '-92.46280'), ('UNIVERSITY PARK', 536, '41.28670', '-92.61580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAC121': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('EARLHAM', 1298, '41.49220', '-94.12200'), ('EAST PERU', 153, '41.22750', '-93.92760'), ('MACKSBURG', 142, '41.21430', '-94.18540'), ('PATTERSON', 126, '41.34900', '-93.87920'), ('ST. CHARLES', 619, '41.28790', '-93.80630'), ('TRURO', 427, '41.21040', '-93.84570'), ('WINTERSET', 4768, '41.33800', '-94.01850')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'MOC073': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BAY', None, '38.56290', '-91.47120'), ('BLAND', 565, '38.30060', '-91.63250'), ('CANAAN', None, '38.31220', '-91.55900'), ('DRAKE', None, '38.46700', '-91.46700'), ('GASCONADE', 267, '38.66940', '-91.56030'), ('HERMANN', 2674, '38.69910', '-91.43500'), ('MORRISON', 123, '38.67070', '-91.63280'), ('MOUNT STERLING', None, '38.46700', '-91.61700'), ('OWENSVILLE', 2500, '38.34760', '-91.49770'), ('ROSEBUD', 364, '38.38660', '-91.40300'), ('SWISS', None, '38.56290', '-91.47120')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOC071': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BEAUFORT', None, '38.41930', '-91.19090'), ('BERGER', 206, '38.67400', '-91.33520'), ('CATAWISSA', None, '38.42470', '-90.78260'), ('GERALD', 1171, '38.39940', '-91.33110'), ('GRAY SUMMIT', 2640, '38.49480', '-90.81520'), ('JAPAN', None, '38.23930', '-91.30600'), ('LESLIE', 87, '38.41790', '-91.23190'), ('LONEDELL', None, '38.30670', '-90.82880'), ('LYON', None, '38.51180', '-91.17400'), ('MOSELLE', None, '38.38680', '-90.89790'), ('NEW HAVEN', 1867, '38.60750', '-91.21810'), ('NOSER MILL', None, '38.39320', '-91.19230'), ('PACIFIC', 5482, '38.47830', '-90.75290'), ('PARKWAY', 280, '38.33850', '-90.97370'), ('PINEY PARK', None, '38.30020', '-90.94370'), ('ROBERTSVILLE', None, '38.41330', '-90.81540'), ('ST. CLAIR', 4390, '38.35110', '-90.98090'), ('STANTON', None, '38.27350', '-91.10840'), ('SULLIVAN', 6351, '38.21600', '-91.16900'), ('UNION', 7757, '38.44830', '-91.01260'), ('VILLA RIDGE', 2417, '38.47120', '-90.88350'), ('WASHINGTON', 13243, '38.55310', '-91.01260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOC077': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ASH GROVE', 1430, '37.31520', '-93.58490'), ('BASSVILLE', None, '37.34440', '-93.13210'), ('BATTLEFIELD', 2385, '37.11550', '-93.36990'), ("BOIS D'ARC", None, '37.25630', '-93.50750'), ('BROOKLINE', 326, '37.16330', '-93.41990'), ('CAVE SPRINGS', None, '37.35130', '-93.46330'), ('EBENEZER', None, '37.34020', '-93.30690'), ('FAIR GROVE', 1107, '37.38380', '-93.15110'), ('GALLOWAY', None, '37.13660', '-93.23770'), ('GLIDEWELL', None, '37.30440', '-93.32680'), ('I-44 NEAR MILE MARKER 60', None, '37.18200', '-93.58500'), ('I-44 NEAR MILE MARKER 70', None, '37.20500', '-93.42820'), ('I-44 NEAR MILE MARKER 80', None, '37.24500', '-93.29000'), ('I-44 NEAR MILE MARKER 90', None, '37.27500', '-93.09000'), ('REPUBLIC', 8438, '37.11990', '-93.47990'), ('SACVILLE', None, '37.39380', '-93.42880'), ('SPRINGFIELD', 151580, '37.19620', '-93.28610'), ('STRAFFORD', 1845, '37.26820', '-93.11680'), ('TURNERS', None, '37.18070', '-93.15520'), ('WALNUT GROVE', 630, '37.41110', '-93.54940'), ('WILLARD', 3193, '37.30500', '-93.42820')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC075': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALBANY', 1937, '40.24820', '-94.33390'), ('DARLINGTON', 113, '40.19880', '-94.40020'), ('FORD CITY', None, '40.11220', '-94.46480'), ('GENTRY', 101, '40.33310', '-94.42350'), ('KING CITY', 1012, '40.05060', '-94.52470'), ('STANBERRY', 1243, '40.21670', '-94.53800')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'SCC057': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ELGIN', 2426, '34.67370', '-80.72170'), ('HEATH SPRINGS', 864, '34.59020', '-80.67450'), ('IRWIN', 1343, '34.69370', '-80.82260'), ('KERSHAW', 1645, '34.54510', '-80.58770'), ('LANCASTER', 8177, '34.72390', '-80.77960'), ('LANCASTER MILL', 2109, '34.70910', '-80.79490')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCC055': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BETHUNE', 352, '34.41390', '-80.34910'), ('CAMDEN', 6682, '34.26160', '-80.61170'), ('LUGOFF', 6278, '34.22570', '-80.68060')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCC053': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BASHAN', None, '32.55140', '-80.94640'), ('BOYD', None, '32.44530', '-80.89640'), ('CHELSEA', None, '32.35420', '-80.88830'), ('COOSAWHATCHIE', None, '32.58860', '-80.92750'), ('DEERFIELD', None, '32.38220', '-81.09670'), ('GILLISONVILLE', None, '32.61080', '-81.00390'), ('GILMANIA', None, '32.61170', '-80.91080'), ('GRAHAMVILLE', None, '32.47390', '-80.96360'), ('GRAYS', None, '32.67360', '-81.02060'), ('HARDEEVILLE', 1793, '32.28690', '-81.08080'), ('JASPER', None, '32.34280', '-80.94940'), ('KNOWLES', None, '32.50940', '-80.85830'), ('LEVY', None, '32.20280', '-81.02920'), ('LIMEHOUSE', None, '32.21250', '-81.07080'), ('MITCHELLVILLE', None, '32.46170', '-80.99220'), ('MORGAN', None, '32.30360', '-81.08250'), ('MURAD', None, '32.49580', '-80.87030'), ('NEVADUM', None, '32.45860', '-80.88940'), ('OKATIE', None, '32.35190', '-80.97830'), ('OLD HOUSE', None, '32.45940', '-80.89670'), ('PINELAND', None, '32.60000', '-81.15970'), ('POCOTALIGO', None, '32.63690', '-80.86360'), ('POSSUM CORNER', None, '32.68420', '-80.97610'), ('PURYSBURGH', None, '32.29720', '-81.11940'), ('RICETOWN', None, '32.51690', '-80.96690'), ('RIDGELAND', 2518, '32.48060', '-80.98060'), ('ROBERTVILLE', None, '32.58640', '-81.19860'), ('SWITZERLAND', None, '32.42750', '-81.00890'), ('TARBORO', None, '32.53170', '-81.15440'), ('TILLMAN', None, '32.46330', '-81.10750')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCC051': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALLSBROOK', None, '34.02000', '-78.94670'), ('ATLANTIC BEACH', 351, '33.80300', '-78.71750'), ('AYNOR', 587, '33.99970', '-79.19970'), ('BAYBORO', None, '34.00940', '-79.02250'), ('BRIARCLIFFE ACRES', 470, '33.78910', '-78.74760'), ('BUCKSPORT', 1117, '33.66470', '-79.10280'), ('BURGESS', None, '33.60640', '-79.05580'), ('CONWAY', 11788, '33.83580', '-79.04810'), ('COOL SPRING', None, '33.97500', '-79.13720'), ('DONGOLA', None, '33.75720', '-79.18720'), ('DUFORD', None, '34.19110', '-79.06420'), ('FORESTBROOK', 3391, '33.72300', '-78.96610'), ('GALIVANTS FERRY', None, '34.05610', '-79.24670'), ('GARDEN CITY', 9357, '33.59260', '-79.00900'), ('GORETOWN', None, '34.02670', '-78.82140'), ('GREEN SEA', None, '34.12420', '-78.89310'), ('HOMEWOOD', None, '33.88390', '-79.04860'), ('HORRY', None, '33.93690', '-79.13440'), ('JORDANVILLE', None, '33.89910', '-79.23720'), ('LITTLE RIVER', 7027, '33.87310', '-78.61440'), ('LONGS', None, '33.93830', '-78.73330'), ('LORIS', 2079, '34.05610', '-78.89060'), ('MYRTLE BEACH', 22759, '33.68890', '-78.88690'), ('NIXON CROSSROADS', None, '33.85000', '-78.65000'), ('NIXONVILLE', None, '33.83440', '-78.88560'), ('NORTH MYRTLE BEACH', 10974, '33.81580', '-78.68030'), ('RED BLUFF', None, '33.90110', '-78.83970'), ('RED HILL', 10509, '33.78710', '-79.00970'), ('SHELL', None, '33.90220', '-78.91360'), ('SOCASTEE', 14295, '33.68330', '-78.99860'), ('SURFSIDE BEACH', 4425, '33.60580', '-78.97330'), ('TODDVILLE', None, '33.75860', '-79.07640'), ('WAMPEE', None, '33.86170', '-78.73330')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCC059': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CLINTON', 8091, '34.47780', '-81.86610'), ('CROSS HILL', 601, '34.30400', '-81.98320'), ('GRAY COURT', 1021, '34.60730', '-82.11290'), ('HICKORY TAVERN', None, '34.52110', '-82.18890'), ('JOANNA', 1609, '34.41570', '-81.81080'), ('LAURENS', 9916, '34.50160', '-82.02510'), ('ORA', None, '34.58170', '-81.99580'), ('WATERLOO', 203, '34.35280', '-82.05820')], 'partOfState': '', 'wfo': 'GSP'}, -'WVC025': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ALDERSON', 1091, '37.73330', '-80.65000'), ('ALVON', None, '37.90000', '-80.21670'), ('ANJEAN', None, '38.01670', '-80.63330'), ('ASBURY', None, '37.81670', '-80.56670'), ('BINGHAM', None, '38.05000', '-80.80000'), ('DUO', None, '38.06670', '-80.60000'), ('FAIRLEA', 1706, '37.77510', '-80.45980'), ('FALLING SPRING', 209, '37.99200', '-80.35730'), ('FRANKFORD', None, '37.91670', '-80.38330'), ('LEONARD', None, '38.08330', '-80.40000'), ('LEWISBURG', 3624, '37.80000', '-80.45000'), ('LEWISBURG AIRPORT', None, '37.86670', '-80.40000'), ('MAXWELTON', None, '37.86670', '-80.41670'), ('MEADOW BLUFF', None, '37.90000', '-80.65000'), ('NEOLA', None, '37.96670', '-80.13330'), ('ORGAN CAVE', None, '37.71670', '-80.45000'), ('QUINWOOD', 435, '38.05780', '-80.70360'), ('RAINELLE', 1545, '37.96860', '-80.77100'), ('RAINELLE', 1545, '37.96670', '-80.78330'), ('RENICK', None, '37.98330', '-80.36670'), ('RONCEVERTE', 1557, '37.74890', '-80.47260'), ('RONCEVERTE', 1557, '37.75000', '-80.46670'), ('RORER', None, '38.03330', '-80.28330'), ('RUPERT', 940, '37.95000', '-80.68330'), ('TROUT', None, '38.01670', '-80.46670'), ('WHITE SULPHUR SPRINGS', 2315, '37.79880', '-80.29730'), ('WILLIAMSBURG', None, '37.96670', '-80.50000')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'VAC760': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('DOWNTOWN RICHMOND', None, '37.53110', '-77.47460')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'INC139': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CARTHAGE', 928, '39.73720', '-85.57160'), ('RUSHVILLE', 5995, '39.61460', '-85.44710')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'PAC009': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEDFORD', 3141, '40.01490', '-78.50440'), ('BLUE KNOB SP', None, '40.26000', '-78.59000'), ('BREEZEWOOD', None, '39.99000', '-78.24000'), ('BUFFALO MILLS', None, '39.92000', '-78.63000'), ('CESSNA', None, '40.06000', '-78.51000'), ('CLEARVILLE', None, '39.91000', '-78.37000'), ('EVERETT', 1905, '40.01270', '-78.36630'), ('HOPEWELL', 222, '40.13460', '-78.26670'), ('HYNDMAN', 1005, '39.82100', '-78.72110'), ('INGLESMITH', None, '39.75000', '-78.42000'), ('LAKE GORDON', None, '39.77000', '-78.67000'), ('MANNS CHOICE', 291, '40.00280', '-78.59170'), ('NEW ENTERPRISE', None, '40.16000', '-78.37000'), ('NEW PARIS', 214, '40.10770', '-78.64320'), ('OSTERBURG', None, '40.18000', '-78.53000'), ('QUEEN', None, '40.25000', '-78.51000'), ('RAINSBURG', 146, '39.89520', '-78.51620'), ('SAXTON', 803, '40.21300', '-78.24720'), ('SCHELLSBURG', 316, '40.04860', '-78.64300'), ('WOODBURY', 269, '40.22570', '-78.36670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'MOC107': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALMA', 399, '39.09580', '-93.54800'), ('AULLVILLE', 86, '39.01820', '-93.67750'), ('BATES CITY', 245, '39.00620', '-94.07020'), ('CONCORDIA', 2360, '38.98760', '-93.56840'), ('CORDER', 427, '39.09950', '-93.63860'), ('DOVER', 108, '39.19450', '-93.68950'), ('HIGGINSVILLE', 4682, '39.06480', '-93.72650'), ('LEXINGTON', 4453, '39.18210', '-93.87490'), ('MAYVIEW', 294, '39.05260', '-93.83390'), ('NAPOLEON', 208, '39.13230', '-94.08840'), ('ODESSA', 4818, '38.99700', '-93.95480'), ('WAVERLY', 806, '39.20660', '-93.51990'), ('WELLINGTON', 784, '39.13620', '-93.98770')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOC105': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BENNETT SPRINGS', None, '37.72680', '-92.85550'), ('COMPETITION', None, '37.48350', '-92.42880'), ('CONWAY', 743, '37.50190', '-92.82070'), ('DRY KNOB', None, '37.64160', '-92.45020'), ('ELDRIDGE', None, '37.82960', '-92.74880'), ('FALCON', None, '37.60500', '-92.37850'), ('I-44 NEAR MILE MARKER 110', None, '37.49300', '-92.84500'), ('I-44 NEAR MILE MARKER 120', None, '37.58000', '-92.75000'), ('I-44 NEAR MILE MARKER 130', None, '37.65500', '-92.65500'), ('I-44 NEAR MILE MARKER 140', None, '37.75000', '-92.49000'), ('LEBANON', 12155, '37.68040', '-92.66360'), ('LYNCHBURG', None, '37.49300', '-92.29410'), ('MORGAN', None, '37.51020', '-92.67630'), ('PHILLIPSBURG', 201, '37.55380', '-92.78460'), ('SLEEPER', None, '37.76050', '-92.59270'), ('STOUTLAND', 177, '37.81300', '-92.51430'), ('TWIN BRIDGES', 42, '37.55220', '-92.59710')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC103': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BARING', 159, '40.24470', '-92.20570'), ('COLONY', None, '40.25000', '-91.98300'), ('EDINA', 1233, '40.16800', '-92.17310'), ('GREENSBURG', None, '40.30000', '-92.21700'), ('HURDLAND', 239, '40.15070', '-92.30220'), ('KNOX CITY', 223, '40.14360', '-92.01030'), ('NEWARK', 100, '39.99440', '-91.97310'), ('NOVELTY', 119, '40.01260', '-92.20740'), ('PLEVNA', None, '39.97370', '-92.08620')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'MOC101': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CENTERVIEW', 249, '38.74560', '-93.84560'), ('CHILHOWEE', 329, '38.58890', '-93.85630'), ('FAYETTEVILLE', None, '38.88330', '-93.76670'), ('HOLDEN', 2510, '38.71340', '-93.98910'), ('KINGSVILLE', 257, '38.74290', '-94.06870'), ('KNOB NOSTER', 2462, '38.76800', '-93.56580'), ('LA TOUR', 65, '38.63400', '-94.10240'), ('LEETON', 619, '38.58360', '-93.69510'), ('PITTSVILLE', None, '38.83330', '-94.00000'), ('WARRENSBURG', 16340, '38.75980', '-93.72860'), ('WHITEMAN AFB', 3814, '38.73270', '-93.55460')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'FLC083': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANTHONY', None, '29.28850', '-82.11250'), ('BELLEVIEW', 3478, '29.05980', '-82.05480'), ('BURBANK', None, '29.28950', '-82.00200'), ('CITRA', None, '29.41130', '-82.11040'), ('DUNNELLON', 1898, '29.04950', '-82.44840'), ('FLEMINGTON', None, '29.40690', '-82.29860'), ('FORT MCCOY', None, '29.36390', '-81.96790'), ('HOG VALLEY', None, '29.49240', '-81.89610'), ('JUNIPER SPRINGS', None, '29.18190', '-81.73500'), ('LAKE WEIR', None, '29.01830', '-81.98860'), ('LOWELL', None, '29.32990', '-82.19210'), ('LYNNE', None, '29.19180', '-81.91800'), ('MCINTOSH', 453, '29.44910', '-82.22080'), ('MOSS BLUFF', None, '29.08260', '-81.88400'), ('OCALA', 45943, '29.18740', '-82.13080'), ('OCALA AIRPORT', None, '29.17090', '-82.22240'), ('OCKLAWAHA', None, '29.04210', '-81.92990'), ('ORANGE SPRINGS', None, '29.50500', '-81.94590'), ('RAINBOW LAKES ESTATES', None, '29.14690', '-82.44780'), ('REDDICK', 571, '29.36760', '-82.19830'), ('ROMEO', None, '29.20540', '-82.43690'), ('SALT SPRINGS', None, '29.34920', '-81.73640'), ('SANTOS', None, '29.10760', '-82.09460'), ('SILVER SPRINGS SHORES', 6690, '29.10360', '-82.00630'), ('SPARR', None, '29.33840', '-82.11290'), ('SUMMERFIELD', None, '29.00850', '-82.03510'), ('WEIRSDALE', None, '28.98180', '-81.92460')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'MOC109': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AURORA', 7014, '36.97070', '-93.71770'), ('CHESAPEAKE', None, '37.11680', '-93.68130'), ('FREISTATT', 184, '37.01820', '-93.89740'), ('HALLTOWN', 189, '37.19330', '-93.62520'), ('HOBERG', 60, '37.06960', '-93.84850'), ('I-44 NEAR MILE MARKER 40', None, '37.07200', '-93.92700'), ('I-44 NEAR MILE MARKER 50', None, '37.15000', '-93.71000'), ('LA RUSSELL', 138, '37.14130', '-94.06130'), ('MARIONVILLE', 2113, '37.00300', '-93.63710'), ('MILLER', 754, '37.21470', '-93.83960'), ('MOUNT VERNON', 4017, '37.10360', '-93.81820'), ('PIERCE CITY', 1385, '36.94580', '-94.00000'), ('RED OAK', None, '37.22850', '-94.01110'), ('STOTTS CITY', 250, '37.10360', '-93.94940'), ('VERONA', 714, '36.96380', '-93.79550')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'CAC069': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('HOLLISTER', 34413, '36.85550', '-121.39910'), ('SAN JUAN BAUTISTA', 1549, '36.84600', '-121.53710')], 'partOfState': '', 'wfo': 'MTR'}, -'CAC061': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALPINE MEADOWS', None, '39.17000', '-120.22000'), ('APPLEGATE', None, '39.00000', '-120.98900'), ('AUBURN', 12462, '38.89200', '-121.07610'), ('BAXTER', None, '39.21300', '-120.78000'), ('BIG BEND', 149, '39.30550', '-120.51690'), ('BLUE CANYON', None, '39.27470', '-120.70900'), ('CARNELIAN BAY', None, '39.23000', '-120.07000'), ('CISCO', None, '39.30160', '-120.54580'), ('COLFAX', 1496, '39.09530', '-120.95320'), ('DOLLAR POINT', 1539, '39.18970', '-120.10840'), ('DONNER PEAK', None, '39.30890', '-120.31110'), ('EMIGRANT GAP', None, '39.29690', '-120.67160'), ('FORESTHILL', 1791, '38.99940', '-120.83210'), ('GRANITE BAY', 19388, '38.76330', '-121.16270'), ('HOMEWOOD', None, '39.08000', '-120.16000'), ('IOWA HILL', None, '39.10860', '-120.85830'), ('KINGS BEACH', 4037, '39.24000', '-120.03000'), ('LINCOLN', 11205, '38.89920', '-121.31650'), ('LOOMIS', 6260, '38.80970', '-121.19430'), ('MEADOW VISTA', 3096, '39.00400', '-121.03070'), ('NEWCASTLE', None, '38.87400', '-121.13200'), ('NORTH AUBURN', 11847, '38.93130', '-121.08070'), ('NORTHSTAR', None, '39.28000', '-120.12000'), ('ROCKLIN', 36330, '38.80240', '-121.24030'), ('ROSEVILLE', 79921, '38.75980', '-121.29370'), ('SHERIDAN', None, '38.97970', '-121.37440'), ('SQUAW VALLEY', 2691, '39.20000', '-120.22000'), ('SUGAR PINE', None, '39.13420', '-120.79110'), ('SUNNYSIDE-TAHOE CITY', 1761, '39.14750', '-120.16370'), ('TAHOE CITY', None, '39.17000', '-120.14000'), ('TAHOE VISTA', 1668, '39.24790', '-120.05360'), ('WEIMAR', None, '39.04330', '-120.88920')], 'partOfState': 'CENTRAL', 'wfo': 'REVSTO'}, -'CAC063': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BALD EAGLE MOUNTAIN', None, '40.32640', '-121.23470'), ('ALMANOR', 0, '40.21750', '-121.17310'), ('AMERICAN HOUSE', None, '39.65220', '-121.02220'), ('ANTELOPE LAKE', None, '40.18000', '-120.61000'), ('BECKWOURTH', 342, '39.82000', '-120.38000'), ('BELDEN', 26, '39.93810', '-121.24810'), ('BLAIRSDEN', 50, '39.78000', '-120.62000'), ('BUCKS LAKE', 17, '39.88670', '-121.19030'), ('CARIBOU', 0, '40.08060', '-121.15670'), ('CHESTER', 2316, '40.30040', '-121.23320'), ('CHILCOOT', None, '39.80000', '-120.14000'), ('CRESCENT MILLS', 258, '40.09670', '-120.90970'), ('CROMBERG', 290, '39.86000', '-120.69000'), ('FRENCHMAN LAKE', None, '39.92000', '-120.20000'), ('GENESEE', None, '40.04000', '-120.75000'), ('GRAEAGLE', 831, '39.77000', '-120.62000'), ('GREENVILLE', 1160, '40.13580', '-120.93790'), ('JOHNSVILLE', 21, '39.78000', '-120.66000'), ('LAKE ALMANOR', None, '40.25280', '-121.16030'), ('LAKE DAVIS', 23, '39.91000', '-120.51000'), ('MOCCASIN', None, '40.07690', '-120.93530'), ('PAXTON', 21, '40.03810', '-120.99380'), ('PLUMAS EUREKA STATE PARK', None, '39.77000', '-120.69000'), ('PORTOLA', 2227, '39.80490', '-120.46760'), ('PORTOLA', 2227, '39.80490', '-120.46760'), ('QUINCY', 1879, '39.92350', '-120.92380'), ('SENECA', None, '40.11050', '-121.08360'), ('SLOAT', None, '39.87000', '-120.73000'), ('STORRIE', 5, '39.91750', '-121.32220'), ('TWAIN', 87, '40.02030', '-121.07080'), ('VINTON', None, '39.80000', '-120.18000')], 'partOfState': 'NORTHERN', 'wfo': 'REVSTO'}, -'MDC029': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BETTERTON', 376, '39.36700', '-76.07250'), ('CHESTERTOWN', 4746, '39.21920', '-76.07050'), ('GALENA', 428, '39.34330', '-75.87920'), ('ROCK HALL', 1396, '39.14050', '-76.24090')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'CAC065': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BLYTHE', 12155, '33.60940', '-114.59010'), ('CHIRIACO SUMMIT', None, '33.66660', '-115.71600'), ('COTTONWOOD VISITOR CENTER', None, '33.74830', '-115.78880'), ('DESERT CENTER', None, '33.71600', '-115.40000'), ('EAGLE MTN', None, '33.85000', '-115.48300'), ('EAST BLYTHE', 3, '33.61170', '-114.57730'), ('LOST HORSE-KEYS VIEW JTNP', None, '33.94080', '-116.21250'), ('MIDLAND', None, '33.86660', '-114.80000'), ('RIPLEY', None, '33.52500', '-114.66660'), ('BANNING', 23562, '33.93730', '-116.89210'), ('BEAUMONT', 11384, '33.93180', '-116.97850'), ('BERMUDA DUNES', 6229, '33.74270', '-116.28840'), ('CABAZON', 2229, '33.91140', '-116.77170'), ('CALIMESA', 7139, '33.99590', '-117.04510'), ('CANYON LAKE', 9952, '33.68350', '-117.25340'), ('CATHEDRAL CITY', 42647, '33.83080', '-116.46340'), ('CHERRY VALLEY', 5891, '33.97250', '-116.96530'), ('COACHELLA', 22724, '33.68090', '-116.15230'), ('CORONA', 124966, '33.86790', '-117.56970'), ('DESERT HOT SPRINGS', 16582, '33.95910', '-116.50020'), ('EAST HEMET', 14823, '33.74000', '-116.93800'), ('GLEN AVON', 14853, '34.01740', '-117.48760'), ('HEMET', 58812, '33.73160', '-116.99780'), ('HIGHGROVE', 3445, '34.01450', '-117.32800'), ('HOME GARDENS', 9461, '33.88090', '-117.51320'), ('HOMELAND', 3710, '33.74850', '-117.10860'), ('IDYLLWILD-PINE COVE', 3504, '33.74730', '-116.72320'), ('INDIAN WELLS', 3816, '33.70540', '-116.34060'), ('INDIO', 49116, '33.71980', '-116.22860'), ('LA QUINTA', 23694, '33.67140', '-116.29220'), ('LAKE ELSINORE', 28928, '33.66900', '-117.32150'), ('LAKELAND VILLAGE', 5626, '33.63830', '-117.34480'), ('LAKEVIEW', 1619, '33.82810', '-117.12380'), ('MARCH AFB', 370, '33.89130', '-117.26390'), ('MECCA', 5402, '33.57590', '-116.07170'), ('MIRA LOMA', 17617, '33.98460', '-117.51270'), ('MORENO VALLEY', 142381, '33.92620', '-117.21030'), ('MURRIETA', 44282, '33.55970', '-117.20960'), ('MURRIETA HOT SPRINGS', 2948, '33.56510', '-117.15080'), ('NORCO', 24157, '33.92550', '-117.55120'), ('NUEVO', 4135, '33.80690', '-117.13700'), ('PALM DESERT', 41155, '33.73320', '-116.37540'), ('PALM DESERT COUNTRY', None, '33.74060', '-116.31470'), ('PALM SPRINGS', 42807, '33.83020', '-116.54440'), ('PEDLEY', 11207, '33.97670', '-117.47060'), ('PERRIS', 36189, '33.79300', '-117.22310'), ('QUAIL VALLEY', 1639, '33.70540', '-117.25210'), ('RANCHO MIRAGE', 13249, '33.75800', '-116.42560'), ('RIVERSIDE', 255166, '33.94040', '-117.39740'), ('ROMOLAND', 2764, '33.74460', '-117.17170'), ('RUBIDOUX', 29180, '33.99550', '-117.42120'), ('SAN JACINTO', 23779, '33.79270', '-116.96420'), ('SEDCO HILLS', 3078, '33.64000', '-117.28250'), ('SUN CITY', 17773, '33.71290', '-117.20250'), ('SUNNYSLOPE', 4437, '34.01890', '-117.42270'), ('TEMECULA', 57716, '33.50270', '-117.12880'), ('THOUSAND PALMS', 5120, '33.82180', '-116.38580'), ('VALLE VISTA', 10488, '33.75060', '-116.89610'), ('WILDOMAR', 14064, '33.60960', '-117.25150'), ('WINCHESTER', 2155, '33.70890', '-117.08060'), ('WOODCREST', 8342, '33.88580', '-117.36200')], 'partOfState': 'SOUTHWEST', 'wfo': 'PSRSGX'}, -'IAC145': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CLARINDA', 5690, '40.73860', '-95.03570'), ('COIN', 252, '40.65590', '-95.23520'), ('COLLEGE SPRINGS', 246, '40.62090', '-95.12170'), ('ESSEX', 884, '40.83300', '-95.30340'), ('HEPBURN', 39, '40.84820', '-95.01650'), ('NORTHBORO', 60, '40.60880', '-95.29310'), ('SHAMBAUGH', 188, '40.65710', '-95.03610'), ('SHENANDOAH', 5546, '40.75940', '-95.36920'), ('YORKTOWN', 82, '40.73650', '-95.15490')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'PAC073': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BESSEMER', 1172, '40.97680', '-80.48750'), ('ELLPORT', 1148, '40.86140', '-80.26230'), ('ELLWOOD CITY', 8688, '40.86090', '-80.28350'), ('ENON VALLEY', 387, '40.85580', '-80.45740'), ('NEW BEAVER', 1677, '40.88240', '-80.36460'), ('NEW CASTLE', 26309, '40.99570', '-80.34630'), ('NEW CASTLE NORTHWEST', 1535, '41.02190', '-80.35620'), ('NEW WILMINGTON', 2452, '41.11760', '-80.33220'), ('OAKLAND', 622, '40.99220', '-80.36600'), ('OAKWOOD', 2249, '41.01060', '-80.37960'), ('S.N.P.J.', 0, '40.92890', '-80.49900'), ('SOUTH NEW CASTLE', 808, '40.97420', '-80.34600'), ('VILLA MARIA', None, '41.08000', '-80.52000'), ('VOLANT', 113, '41.11360', '-80.25910'), ('WAMPUM', 678, '40.88650', '-80.33880')], 'partOfState': '', 'wfo': 'PBZ'}, -'NEC131': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BURR', 66, '40.53590', '-96.29890'), ('DOUGLAS', 231, '40.59230', '-96.38850'), ('DUNBAR', 237, '40.66870', '-96.03030'), ('LORTON VILLAGE', None, '40.59750', '-96.02350'), ('NEBRASKA CITY', 7228, '40.67620', '-95.86070'), ('OTOE', 217, '40.72450', '-96.12030'), ('PALMYRA', 546, '40.70570', '-96.39160'), ('SYRACUSE', 1762, '40.66180', '-96.18290'), ('TALMAGE', 268, '40.53180', '-96.02340'), ('UNADILLA', 342, '40.68280', '-96.27010')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'PAC071': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ADAMSTOWN', 1203, '40.24090', '-76.06260'), ('AKRON', 4046, '40.15760', '-76.20370'), ('BAINBRIDGE', None, '40.09000', '-76.67000'), ('BETHEL', None, '39.82000', '-76.16000'), ('BRICKERVILLE', 1287, '40.22680', '-76.28650'), ('CHRISTIANA', 1124, '39.95410', '-75.99770'), ('CHURCHTOWN', None, '40.14000', '-75.95000'), ('COLUMBIA', 10311, '40.03340', '-76.49500'), ('DENVER', 3332, '40.23250', '-76.13870'), ('EAST PETERSBURG', 4450, '40.10070', '-76.35350'), ('ELIZABETHTOWN', 11887, '40.15360', '-76.59860'), ('EPHRATA', 13213, '40.18060', '-76.18280'), ('GAP', 1611, '39.98890', '-76.02420'), ('HOLTWOOD', None, '39.82000', '-76.33000'), ('LANCASTER', 56348, '40.04180', '-76.30120'), ('LANDISVILLE', None, '40.09150', '-76.41860'), ('LEOLA', None, '40.09140', '-76.18910'), ('LITITZ', 9029, '40.15370', '-76.30530'), ('MANHEIM', 4784, '40.16330', '-76.39650'), ('MARIETTA', 2689, '40.05700', '-76.55290'), ('MAYTOWN', 2604, '40.07700', '-76.58040'), ('MILLERSVILLE', 7774, '40.00360', '-76.35390'), ('MOUNT JOY', 6765, '40.11050', '-76.50790'), ('MOUNTVILLE', 2444, '40.04060', '-76.43440'), ('NEW HOLLAND', 5092, '40.10100', '-76.09040'), ('PARADISE', 1028, '40.00680', '-76.12230'), ('QUARRYVILLE', 1994, '39.89570', '-76.16120'), ('REAMSTOWN', 3498, '40.21200', '-76.11790'), ('RHEEMS', 1557, '40.12900', '-76.57070'), ('ROTHSVILLE', 3017, '40.15270', '-76.24570'), ('SAFE HARBOR', None, '39.92500', '-76.40000'), ('SMITHVILLE', None, '39.93000', '-76.25000'), ('STRASBURG', 2800, '39.98360', '-76.18560'), ('TERRE HILL', 1237, '40.15750', '-76.05070'), ('WAKEFIELD', None, '39.76000', '-76.17000'), ('WILLOW STREET', 7258, '39.98470', '-76.27040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'MOC013': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ADRIAN', 1780, '38.39790', '-94.35090'), ('AMORET', 211, '38.25570', '-94.58710'), ('AMSTERDAM', 281, '38.34930', '-94.58890'), ('BALLARD', None, '38.36670', '-94.15000'), ('BUTLER', 4209, '38.25930', '-94.33940'), ('FOSTER', 130, '38.16670', '-94.50800'), ('HUME', 337, '38.08950', '-94.58160'), ('MERWIN', 83, '38.40420', '-94.58980'), ('PASSAIC', 40, '38.32160', '-94.34790'), ('RICH HILL', 1461, '38.09580', '-94.36300'), ('ROCKVILLE', 162, '38.07040', '-94.08020')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'PAC077': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALBURTIS', 2117, '40.50950', '-75.60070'), ('ALLENTOWN', 106632, '40.59630', '-75.47770'), ('ANCIENT OAKS', 3161, '40.53250', '-75.58570'), ('CATASAUQUA', 6588, '40.65210', '-75.46470'), ('COOPERSBURG', 2582, '40.51040', '-75.39140'), ('EMMAUS', 11313, '40.53610', '-75.49800'), ('FOUNTAIN HILL', 4614, '40.60260', '-75.39670'), ('FULLERTON', 14268, '40.63200', '-75.48590'), ('HOKENDAUQUA', 3411, '40.65870', '-75.49580'), ('MACUNGIE', 3039, '40.51580', '-75.55430'), ('SCHNECKSVILLE', 1989, '40.67820', '-75.61960')], 'partOfState': '', 'wfo': 'PHI'}, -'NEC135': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRANDON', None, '40.80150', '-101.93100'), ('ELSIE', 139, '40.84680', '-101.38890'), ('GRAINTON', None, '40.82240', '-101.28650'), ('GRANT', 1225, '40.84440', '-101.72570'), ('MADRID', 265, '40.84960', '-101.54270'), ('VENANGO', 175, '40.76170', '-102.04080')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'PAC075': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ANNVILLE', 4518, '40.33250', '-76.50660'), ('CAMPBELLTOWN', 2415, '40.27640', '-76.58450'), ('CLEONA', 2148, '40.33880', '-76.47730'), ('CORNWALL', 3486, '40.26950', '-76.40810'), ('FORT INDIANTOWN GAP', 85, '40.44400', '-76.57000'), ('FREDERICKSBURG', 987, '40.45630', '-76.42560'), ('HARPER TAVERN', None, '40.41000', '-76.57000'), ('JONESTOWN', 1028, '40.41320', '-76.48070'), ('KLEINFELTERSVILLE', None, '40.31000', '-76.27000'), ('LAWN', None, '40.22000', '-76.55000'), ('LEBANON', 24461, '40.34130', '-76.42330'), ('LICKDALE', None, '40.46000', '-76.49000'), ('MOUNT GRETNA', 242, '40.24540', '-76.47160'), ('MYERSTOWN', 3171, '40.37170', '-76.30540'), ('NEWMANSTOWN', 1536, '40.35080', '-76.21290'), ('PALMYRA', 7096, '40.30950', '-76.59500'), ('RICHLAND', 1508, '40.35700', '-76.25750'), ('SAND HILL', 2345, '40.36090', '-76.42150')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'NEC137': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ATLANTA', 130, '40.36830', '-99.47240'), ('BERTRAND', 786, '40.52670', '-99.63270'), ('FUNK', 204, '40.46290', '-99.24950'), ('HOLDREGE', 5636, '40.44060', '-99.37550'), ('LOOMIS', 397, '40.47810', '-99.50740')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'MNC125': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BROOKS', 141, '47.81710', '-96.00110'), ('DELORME', None, '47.76470', '-96.28890'), ('DOROTHY', None, '47.92780', '-96.44640'), ('HUOT', None, '47.86530', '-96.42310'), ('OKLEE', 396, '47.83880', '-95.85010'), ('PERAULT', None, '47.81250', '-96.28970'), ('PLUMMER', 270, '47.91570', '-96.03940'), ('RED LAKE FALLS', 1590, '47.88520', '-96.27390'), ('ROLAND', None, '47.94420', '-95.77860'), ('TERREBONNE', None, '47.83250', '-96.13310'), ('WYLIE', None, '47.96190', '-96.35280')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'NEC139': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('FOSTER', 63, '42.27370', '-97.66500'), ('HADAR', 312, '42.10580', '-97.45150'), ('MCLEAN', 38, '42.38620', '-97.46770'), ('OSMOND', 796, '42.35820', '-97.59890'), ('PIERCE', 1774, '42.19950', '-97.52770'), ('PLAINVIEW', 1353, '42.35390', '-97.78690')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'PAC079': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALBERT', None, '41.11670', '-75.95000'), ('ALDEN', None, '41.18330', '-76.01670'), ('ASHLEY', 2866, '41.21370', '-75.89900'), ('ASHMORE', None, '40.96670', '-75.90000'), ('AVOCA', 2851, '41.33770', '-75.74310'), ('BEACH HAVEN', None, '41.06670', '-76.18330'), ('BEAR CREEK', None, '41.18330', '-75.76670'), ('BRIGGSVILLE', None, '41.03330', '-76.13330'), ('CAMBRA', None, '41.20000', '-76.31670'), ('CARVERTON', None, '41.35000', '-75.85000'), ('CONYNGHAM', 1958, '40.99150', '-76.06020'), ('COURTDALE', 791, '41.28550', '-75.91520'), ('DALLAS', 2557, '41.33180', '-75.97230'), ('DERINGER', None, '40.95000', '-76.15000'), ('DORRANCE', None, '41.10000', '-76.00000'), ('DRIFTON', None, '41.00000', '-75.91670'), ('DRUMS', None, '41.01670', '-76.00000'), ('DUPONT', 2719, '41.32400', '-75.74240'), ('DURYEA', 4634, '41.35180', '-75.77630'), ('EAST BERWICK', 1998, '41.06470', '-76.22070'), ('EDWARDSVILLE', 4984, '41.26040', '-75.90700'), ('EXETER', 5955, '41.33020', '-75.82250'), ('FAIRMOUNT SPGS', None, '41.25000', '-76.31670'), ('FAIRVIEW HGTS', None, '41.16670', '-75.90000'), ('FERN BROOK', None, '41.33330', '-75.96670'), ('FERN GLEN', None, '40.95000', '-76.16670'), ('FORTY FORT', 4579, '41.28900', '-75.87050'), ('FREELAND', 3643, '41.02070', '-75.89630'), ('GLEN LYON', 1881, '41.18400', '-76.07140'), ('GLEN SUMMIT', None, '41.15000', '-75.86670'), ('GLENDALE', None, '41.33330', '-75.71670'), ('HARDING', None, '41.36670', '-75.81670'), ('HARVEYS LAKE', 2888, '41.36210', '-76.03220'), ('HAZLETON', 23329, '40.95010', '-75.97230'), ('HUDSON', None, '41.26670', '-75.83330'), ('HUGHESTOWN', 1541, '41.33010', '-75.77190'), ('HUNTINGTON MILLS', None, '41.18330', '-76.23330'), ('INKERMAN', None, '41.30000', '-75.81670'), ('JEANESVILLE', None, '40.93330', '-75.96670'), ('JEDDO', 144, '40.99240', '-75.89760'), ('KINGSTON', 13855, '41.26410', '-75.88740'), ('KOONSVILLE', None, '41.16670', '-76.16670'), ('LAFLIN', 1502, '41.28950', '-75.79620'), ('LARKSVILLE', 4694, '41.25940', '-75.93230'), ('LAUREL RUN', 723, '41.21930', '-75.84760'), ('LEE', None, '41.16670', '-76.10000'), ('LEHMAN', None, '41.31670', '-76.03330'), ('LUZERNE', 2952, '41.28600', '-75.89720'), ('LYNWOOD', None, '41.23330', '-75.96670'), ('MINERS MILLS', None, '41.26670', '-75.83330'), ('MOUNTAIN TOP', 15269, '41.16670', '-75.90000'), ('MUHLENBERG', None, '41.23330', '-76.15000'), ('NANTICOKE', 10955, '41.20030', '-76.00000'), ('NESCOPECK', 1528, '41.05270', '-76.21250'), ('NEW COLUMBUS', 215, '41.16890', '-76.28660'), ('NUANGOLA', 671, '41.15830', '-75.97800'), ('ORANGE', None, '41.40000', '-75.91670'), ('PARSONS', None, '41.26670', '-75.85000'), ('PENN LAKE PARK', 269, '41.11490', '-75.77460'), ('PENOBSCOT', None, '41.16670', '-75.88330'), ('PIKES CREEK', None, '41.30000', '-76.10000'), ('PITTSTON', 8104, '41.32610', '-75.78790'), ('PLAINS', None, '41.27350', '-75.85390'), ('PLYMOUTH', 6507, '41.24110', '-75.95020'), ('POND HILL', None, '41.13330', '-76.11670'), ('PRESTON', None, '41.20000', '-75.91670'), ('PRINGLE', 991, '41.27660', '-75.90310'), ('RANSOM', None, '41.40000', '-75.83330'), ('RED ROCK', None, '41.28330', '-76.31670'), ('ROCK GLEN', None, '40.96670', '-76.18330'), ('SHAVERTOWN', None, '41.31670', '-75.95000'), ('SHICKSHINNY', 959, '41.15320', '-76.15160'), ('SLOCUM', None, '41.13330', '-76.05000'), ('STOCKTON', None, '40.96670', '-75.91670'), ('STODDARTSVILLE', None, '41.13330', '-75.63330'), ('SUGAR NOTCH', 1023, '41.19220', '-75.93220'), ('SWEET VALLEY', None, '41.28330', '-76.15000'), ('SWOYERSVILLE', 5157, '41.29850', '-75.87900'), ('WARRIOR RUN', 624, '41.18740', '-75.95290'), ('WEST HAZLETON', 3542, '40.97070', '-76.01320'), ('WEST PITTSTON', 5072, '41.32940', '-75.80000'), ('WEST WYOMING', 2833, '41.31940', '-75.85240'), ('WESTMINISTER', None, '41.28330', '-75.78330'), ('WESTON', None, '40.93330', '-76.13330'), ('WILKES-BARRE', 43123, '41.24640', '-75.87580'), ('WILKES-BARRE TOWNSHIP', 3235, '41.23750', '-75.86310'), ('WOODSIDE-DRIFTON', None, '41.01190', '-75.89810'), ('WYOMING', 3221, '41.30580', '-75.84180'), ('YATESVILLE', 649, '41.30290', '-75.78200')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'MNC121': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CYRUS', 303, '45.61510', '-95.73700'), ('FARWELL', 57, '45.75190', '-95.61810'), ('GLENWOOD', 2594, '45.65330', '-95.38280'), ('LONG BEACH', 271, '45.64810', '-95.42980'), ('LOWRY', 271, '45.70550', '-95.51720'), ('SEDAN', 65, '45.57700', '-95.24550'), ('STARBUCK', 1314, '45.61210', '-95.53300'), ('VILLARD', 244, '45.71350', '-95.26960'), ('WESTPORT', 72, '45.71460', '-95.16730')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNC123': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARDEN HILLS', 9652, '45.07140', '-93.16540'), ('FALCON HEIGHTS', 5572, '44.98790', '-93.17940'), ('LITTLE CANADA', 9771, '45.02370', '-93.08390'), ('MAPLEWOOD', 34947, '44.99290', '-93.02370'), ('MOUNDS VIEW', 12738, '45.10600', '-93.20610'), ('NEW BRIGHTON', 22206, '45.06560', '-93.20430'), ('NORTH OAKS', 3883, '45.10680', '-93.08720'), ('NORTH ST PAUL', None, '45.01410', '-92.99830'), ('ROSEVILLE', 33690, '45.01520', '-93.15250'), ('SHOREVIEW', 25924, '45.08390', '-93.13590'), ('ST PAUL', None, '44.94770', '-93.10370'), ('VADNAIS HEIGHTS', 13069, '45.05640', '-93.07300'), ('WHITE BEAR LAKE', 24325, '45.06770', '-93.01270')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'ALC031': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALBERTON', None, '31.27720', '-86.12590'), ('BATTENS CROSSROADS', None, '31.25950', '-85.88990'), ('CARL FOLSOM A/P', None, '31.40940', '-86.08890'), ('CENTRAL CITY', None, '31.24180', '-85.88510'), ('CLINTONVILLE', None, '31.40580', '-85.89470'), ('CURTIS', None, '31.39680', '-86.15730'), ('DAMASCUS', None, '31.31910', '-86.00460'), ('DANLEYS CROSSROADS', None, '31.41930', '-86.16690'), ('ELBA', 4185, '31.41460', '-86.06850'), ('ENTERPRISE', 21178, '31.31340', '-85.85410'), ('ENTERPRISE MUNI A/P', None, '31.29860', '-85.89980'), ('FAIRVIEW', 522, '31.24790', '-86.03800'), ('GOODMAN', None, '31.27870', '-85.99460'), ('INO', None, '31.27070', '-86.09470'), ('JACK', None, '31.57500', '-85.99920'), ('KEYTON', None, '31.28140', '-85.82580'), ('KINSTON', 602, '31.21620', '-86.16890'), ('MIXONS CROSSROADS', None, '31.48270', '-85.92010'), ('NEW BROCKTON', 1250, '31.38580', '-85.93020'), ('NEW HOPE', 2539, '31.55290', '-85.86790'), ('NEWBY', None, '31.55560', '-86.13130'), ('PERRY STORE', None, '31.27940', '-86.15730'), ('ROETON', None, '31.59730', '-85.83480'), ('SHADY GROVE', None, '31.52350', '-86.03780'), ('TABERNACLE', None, '31.45320', '-85.86920'), ('VICTORIA', None, '31.52950', '-85.93230')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'NYC071': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BALMVILLE', 3339, '41.52680', '-74.02350'), ('CENTRAL VALLEY', 1857, '41.32890', '-74.12730'), ('CHESTER', 3445, '41.35720', '-74.27620'), ('CORNWALL ON HUDSON', 3058, '41.43870', '-74.01730'), ('FIRTHCLIFFE', 4970, '41.44000', '-74.03420'), ('FLORIDA', 2571, '41.33030', '-74.35430'), ('FORT MONTGOMERY', 1418, '41.33760', '-73.98770'), ('GARDNERTOWN', 4533, '41.53410', '-74.05990'), ('GOSHEN', 5676, '41.40110', '-74.32750'), ('GREENWOOD LAKE', 3411, '41.22200', '-74.28900'), ('HARRIMAN', 2252, '41.30890', '-74.14500'), ('HIGHLAND FALLS', 3678, '41.36270', '-73.96920'), ('HIGHLAND MILLS', 3468, '41.35190', '-74.12680'), ('KIRYAS JOEL', 13138, '41.33990', '-74.16760'), ('MAYBROOK', 3084, '41.48570', '-74.21430'), ('MIDDLETOWN', 25388, '41.44570', '-74.42250'), ('MONROE', 7780, '41.32060', '-74.18630'), ('MONTGOMERY', 3636, '41.52200', '-74.23820'), ('NEW WINDSOR', 9077, '41.47010', '-74.02720'), ('NEWBURGH', 28259, '41.50310', '-74.02010'), ('ORANGE LAKE', 6085, '41.53180', '-74.09420'), ('OTISVILLE', 989, '41.47060', '-74.53990'), ('PINE BUSH', 1539, '41.60890', '-74.29740'), ('PORT JERVIS', 8860, '41.37780', '-74.69130'), ('SCOTCHTOWN', 8954, '41.47620', '-74.36860'), ('TUXEDO PARK', 731, '41.20410', '-74.20720'), ('UNIONVILLE', 536, '41.30200', '-74.56260'), ('VAILS GATE', 3319, '41.45790', '-74.05390'), ('WALDEN', 6164, '41.55970', '-74.18860'), ('WARWICK', 6412, '41.25620', '-74.35550'), ('WASHINGTONVILLE', 5851, '41.42970', '-74.15760'), ('WEST POINT', 7138, '41.36230', '-74.02730')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'ALC033': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CHEROKEE', 1237, '34.75640', '-87.96670'), ('LEIGHTON', 849, '34.69960', '-87.53070'), ('LITTLEVILLE', 978, '34.59500', '-87.67400'), ('MUSCLE SHOALS', 11924, '34.74710', '-87.64200'), ('SHEFFIELD', 9652, '34.75520', '-87.70130'), ('TUSCUMBIA', 7856, '34.72870', '-87.70570')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'FLC121': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRANFORD', 695, '29.96210', '-82.92760'), ('DOWLING PARK', None, '30.24350', '-83.23650'), ('HILDRETH', None, '29.95260', '-82.80560'), ('HOUSTON', None, '30.25680', '-82.90290'), ('ICHETUCKNEE SPRINGS STATE', None, '29.96000', '-82.77000'), ('LIVE OAK', 6480, '30.29430', '-82.98610'), ('LURAVILLE', None, '30.12230', '-83.16950'), ('MCALPIN', None, '30.13900', '-82.95210'), ('NEWBURN', None, '30.27230', '-83.14090'), ('OBRIEN', None, '30.03820', '-82.94040'), ('SUWANNEE RIVER STATE PARK', None, '30.40790', '-83.16470'), ('SUWANNEE SPRINGS', None, '30.39400', '-82.93760'), ('WELLBORN', None, '30.23090', '-82.81990')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'ALC035': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BELLEVILLE', None, '31.43220', '-87.10860'), ('BERMUDA', None, '31.48470', '-87.18580'), ('BROWNVILLE', None, '31.46820', '-86.90030'), ('CASTLEBERRY', 590, '31.29810', '-87.02250'), ('CHINA', None, '31.52400', '-87.01760'), ('COHASSETT', None, '31.39480', '-86.69360'), ('DEANS', None, '31.66060', '-86.93610'), ('EVERGREEN', 3630, '31.43250', '-86.95720'), ('FAIRNELSON', None, '31.56330', '-87.07670'), ('I65 AND AL 41', None, '31.27640', '-87.20500'), ('I65 AND AL 83', None, '31.45750', '-86.96580'), ('I65 AND CR 29', None, '31.50560', '-86.92320'), ('I65 AND CR 6', None, '31.32970', '-87.12650'), ('I65 AND US 84', None, '31.41920', '-87.00620'), ('JOHNSONVILLE', None, '31.29480', '-86.87260'), ('LENOX', None, '31.33690', '-87.18670'), ('LOREE', None, '31.48790', '-87.08990'), ('LYEFFION', None, '31.54220', '-86.98690'), ('MIXONVILLE', None, '31.70460', '-86.94920'), ('NICHBURG', None, '31.47860', '-87.13560'), ('NYMPH', None, '31.33720', '-86.93920'), ('OWASSA', None, '31.49310', '-86.93000'), ('PAUL', None, '31.31970', '-86.74440'), ('RANGE', None, '31.31330', '-87.23720'), ('REPTON', 280, '31.40880', '-87.23890'), ('SHREVE', None, '31.50920', '-86.70780'), ('WILCOX', None, '31.50910', '-86.87610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'FLC127': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLANDALE', None, '29.12150', '-80.97980'), ('APOLLO BEACH', 7444, '28.90890', '-80.81070'), ('BAKERSTOWN', None, '29.34790', '-81.49170'), ('BARBERVILLE', None, '29.18700', '-81.42120'), ('BLAKE', None, '29.18110', '-81.00860'), ('BLUFFTON', None, '29.11180', '-81.44310'), ('CASSADAGA', None, '28.96620', '-81.23630'), ('CENTRAL FLORIDA ZOO', None, '28.83690', '-81.32420'), ('CONRAD', None, '29.15890', '-81.38330'), ('DAYTONA BEACH', 64112, '29.21250', '-81.03080'), ('DAYTONA BEACH INTL SPEEDW', None, '29.18520', '-81.07120'), ('DAYTONA BEACH SHORES', 4299, '29.17350', '-80.98240'), ('DAYTONA HIGHRIDGE ESTATES', None, '29.11360', '-81.16120'), ('DAYTONA PARK ESTATES', None, '29.05460', '-81.25450'), ('DE BARY', 15559, '28.88340', '-81.31180'), ('DE LAND', 20904, '29.03600', '-81.29750'), ('DE LAND HIGHLANDS', None, '29.06060', '-81.26440'), ('DE LAND SOUTHWEST', 1169, '29.00690', '-81.31100'), ('DE LEON SPRINGS', 2358, '29.11740', '-81.35180'), ('DELTONA', 69543, '28.90990', '-81.20880'), ('EDGEWATER', 18668, '28.96760', '-80.90480'), ('ELDRIDGE', None, '29.21130', '-81.45750'), ('ENTERPRISE', None, '28.86910', '-81.26690'), ('FARMTON', None, '28.84670', '-81.06090'), ('FATIO', None, '28.98090', '-81.33220'), ('GLENWOOD', None, '29.08590', '-81.35440'), ('HIGH BANKS', None, '28.88490', '-81.35470'), ('HOLLY HILL', 12119, '29.24260', '-81.04410'), ('LAKE ASHBY', None, '28.93080', '-81.09500'), ('LAKE GEORGE', None, '29.28100', '-81.58920'), ('LAKE HELEN', 2743, '28.98370', '-81.23140'), ('LAKE MONROE', None, '28.84430', '-81.27600'), ('LAKE WOODRUFF', None, '29.10030', '-81.41770'), ('MAYTOWN', None, '28.80690', '-80.96040'), ('ORANGE CITY', 6604, '28.93650', '-81.29280'), ('ORMOND BEACH', 36301, '29.27660', '-81.06140'), ('OSTEEN', None, '28.84590', '-81.16290'), ('PIERSON', 2596, '29.23770', '-81.46090'), ('PONCE DE LEON SPRINGS', None, '29.11930', '-81.35870'), ('PONCE INLET', 2513, '29.10000', '-80.93040'), ('PORT ORANGE', 45823, '29.16010', '-81.00330'), ('SEVILLE', None, '29.31690', '-81.49290'), ('SHILOH', None, '28.78940', '-80.80450'), ('SOUTH DAYTONA', 13177, '29.16480', '-81.00480'), ('SPRUCE CREEK', None, '29.07930', '-81.05310'), ('TIGER BAY STATE FOREST', None, '29.13300', '-81.13820'), ('TOMOKA ESTATES', None, '29.31480', '-81.09930'), ('TOMOKA STATE PARK', None, '29.34650', '-81.09190'), ('TURTLE MOUND', None, '28.94470', '-80.83520'), ('VALDEZ', None, '28.84500', '-81.33260'), ('WILBUR BY THE SEA', None, '29.13070', '-80.95790')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'ALC037': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('GOODWATER', 1633, '33.06040', '-86.05150'), ('ROCKFORD', 428, '32.88760', '-86.21720')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'FLC125': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('DUKES', None, '29.96620', '-82.40760'), ('ELLERBEE', None, '30.10540', '-82.20560'), ('JOHNSTOWN', None, '30.04430', '-82.27230'), ('LAKE BUTLER', 1927, '30.02050', '-82.33960'), ('RAIFORD', 187, '30.06410', '-82.23890'), ('WORTHINGTON SPRINGS', 193, '29.93120', '-82.42430')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'ALC039': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ANDALUSIA', 8794, '31.30760', '-86.48390'), ('BABBIE', 627, '31.27810', '-86.32390'), ('BECK', None, '31.25590', '-86.58490'), ('BROOKS', None, '31.48200', '-86.68600'), ('CAROLINA', 248, '31.23130', '-86.52070'), ('CLEARVIEW', None, '31.45170', '-86.44820'), ('EODA', None, '31.37690', '-86.31690'), ('ESTOTHEL', None, '31.24410', '-86.19830'), ('FALCO', None, '31.04860', '-86.62060'), ('FLORALA', 1964, '31.00440', '-86.32830'), ('GANTT', 241, '31.40650', '-86.48070'), ('GREEN BAY', None, '31.17810', '-86.29080'), ('HEATH', 249, '31.36190', '-86.47020'), ('HOWELLS', None, '31.05180', '-86.20850'), ('LIBERTYVILLE', 106, '31.24170', '-86.46130'), ('LOANGO', None, '31.32910', '-86.64820'), ('LOCKHART', 548, '31.01270', '-86.34980'), ('ONYCHA', 208, '31.21390', '-86.28310'), ('OPP', 6607, '31.28220', '-86.25670'), ('PLEASANT HOME', None, '31.15990', '-86.61620'), ('RED LEVEL', 556, '31.40640', '-86.61310'), ('RED OAK', None, '31.13940', '-86.46080'), ('RIVER FALLS', 616, '31.35420', '-86.53840'), ('ROSE HILL', None, '31.44900', '-86.35580'), ('SANFORD', 269, '31.29760', '-86.38890'), ('SOUTH', None, '31.44540', '-86.61310'), ('STEDMAN', None, '31.07240', '-86.30410'), ('WATKINS BRIDGE', None, '31.09180', '-86.43280'), ('WING', None, '31.02670', '-86.61080')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'FLC129': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BETHEL', None, '30.25090', '-84.32420'), ('BROWN HOUSE', None, '30.30350', '-84.50860'), ('BUCKHORN', None, '30.06620', '-84.45190'), ('CRAWFORDVILLE', None, '30.17530', '-84.37350'), ('HILLIARDVILLE', None, '30.28660', '-84.39960'), ('MEDART', None, '30.08190', '-84.38730'), ('NEWPORT', None, '30.19670', '-84.18140'), ('OCHLOCKONEE RIVER SP', None, '30.00420', '-84.47990'), ('OTTER CAMP', None, '30.30610', '-84.61670'), ('PANACEA', None, '30.03660', '-84.38800'), ('PORT LEON', None, '30.13010', '-84.19520'), ('SANBORN', None, '30.06990', '-84.60460'), ('SHADEVILLE', None, '30.19820', '-84.30910'), ('SMITH CREEK', None, '30.18050', '-84.65700'), ('SOPCHOPPY', 426, '30.05940', '-84.48880'), ('SPRING CREEK', None, '30.08000', '-84.32980'), ('ST. MARKS', 272, '30.15680', '-84.20700'), ('WAKULLA', None, '30.23410', '-84.22910'), ('WAKULLA GARDENS', None, '30.17590', '-84.30780'), ('WAKULLA SPRINGS', None, '30.23360', '-84.30030')], 'partOfState': '', 'wfo': 'TAE'}, -'NYC073': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALBION', 7438, '43.24590', '-78.18930'), ('HOLLEY', 1802, '43.22420', '-78.02810'), ('LYNDONVILLE', 862, '43.32190', '-78.38700'), ('MEDINA', 6415, '43.21980', '-78.38800')], 'partOfState': '', 'wfo': 'BUF'}, -'OHC039': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('DEFIANCE', 16465, '41.28120', '-84.36190'), ('HICKSVILLE', 3649, '41.29450', '-84.76660'), ('NEY', 364, '41.38070', '-84.52100')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'OHC033': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUCYRUS', 13224, '40.80280', '-82.97350'), ('CHATFIELD', 218, '40.95250', '-82.94160'), ('CRESTLINE', 5088, '40.78570', '-82.73890'), ('GALION', 11341, '40.73170', '-82.79050'), ('NEW WASHINGTON', 987, '40.96140', '-82.85430'), ('NORTH ROBINSON', 211, '40.79220', '-82.85640'), ('TIRO', 281, '40.90600', '-82.76830')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'NYC075': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALTMAR', 351, '43.51060', '-76.00500'), ('CENTRAL SQUARE', 1646, '43.28670', '-76.14080'), ('CLEVELAND', 758, '43.23920', '-75.88500'), ('CONSTANTIA', 1107, '43.25390', '-76.00190'), ('FULTON', 11855, '43.31680', '-76.41560'), ('HANNIBAL', 542, '43.31780', '-76.57760'), ('LACONA', 590, '43.64370', '-76.06890'), ('MEXICO', 1572, '43.46410', '-76.23500'), ('MINETTO', 1086, '43.39900', '-76.48150'), ('OSWEGO', 17954, '43.45840', '-76.50290'), ('PARISH', 512, '43.40430', '-76.12890'), ('PHOENIX', 2251, '43.23180', '-76.29730'), ('PULASKI', 2398, '43.56530', '-76.12820'), ('SAND RIDGE', 906, '43.25590', '-76.23040'), ('SANDY CREEK', 789, '43.64290', '-76.08610')], 'partOfState': 'CENTRAL', 'wfo': 'BUF'}, -'OHC031': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHILI', None, '40.37000', '-81.77000'), ('CONESVILLE', 364, '40.18500', '-81.89230'), ('COSHOCTON', 11682, '40.26370', '-81.84960'), ('NELLIE', 134, '40.33830', '-82.06840'), ('PLAINFIELD', 158, '40.20630', '-81.71900'), ('WARSAW', 781, '40.33530', '-82.00140'), ('WEST LAFAYETTE', 2313, '40.27390', '-81.75100')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHC037': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANSONIA', 1145, '40.21460', '-84.63530'), ('ARCANUM', 2076, '39.99160', '-84.55380'), ('BRADFORD', 1859, '40.13090', '-84.42930'), ('BURKETTSVILLE', 254, '40.35290', '-84.64250'), ('CASTINE', 129, '39.93080', '-84.62470'), ('GETTYSBURG', 558, '40.11570', '-84.49600'), ('GORDON', 190, '39.92990', '-84.50860'), ('GREENVILLE', 13294, '40.10280', '-84.62480'), ('HOLLANSBURG', 214, '39.99850', '-84.79300'), ('ITHACA', 102, '39.93820', '-84.55340'), ('NEW MADISON', 817, '39.96850', '-84.70830'), ('NEW WESTON', 135, '40.33700', '-84.64400'), ('NORTH STAR', 209, '40.32390', '-84.56800'), ('OSGOOD', 255, '40.34010', '-84.49420'), ('PALESTINE', 170, '40.05030', '-84.74450'), ('PITSBURG', 392, '39.98670', '-84.48770'), ('ROSSBURG', 224, '40.27980', '-84.63820'), ('UNION CITY', 1767, '40.19820', '-84.79480'), ('VERSAILLES', 2589, '40.22300', '-84.48400'), ('WAYNE LAKES', 684, '40.02110', '-84.66240'), ('YORKSHIRE', 110, '40.32550', '-84.49600')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC035': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAY VILLAGE', 16087, '41.48980', '-81.92930'), ('BEACHWOOD', 12186, '41.47870', '-81.50250'), ('BEDFORD', 14214, '41.39130', '-81.53730'), ('BEDFORD HEIGHTS', 11375, '41.40520', '-81.50620'), ('BENTLEYVILLE', 947, '41.41350', '-81.41320'), ('BEREA', 18970, '41.36990', '-81.86270'), ('BRATENAHL', 1337, '41.55780', '-81.59700'), ('BRECKSVILLE', 13382, '41.30760', '-81.61850'), ('BROADVIEW HEIGHTS', 15967, '41.31920', '-81.67990'), ('BROOK PARK', 21218, '41.40010', '-81.82690'), ('BROOKLYN', 11586, '41.43460', '-81.74950'), ('BROOKLYN HEIGHTS', 1558, '41.41560', '-81.66540'), ('CHAGRIN FALLS', 4024, '41.43120', '-81.38960'), ('CLEVELAND', 478403, '41.47970', '-81.67850'), ('CLEVELAND HEIGHTS', 49958, '41.50960', '-81.56350'), ('CUYAHOGA HEIGHTS', 599, '41.43610', '-81.65330'), ('EAST CLEVELAND', 27217, '41.53120', '-81.58020'), ('EUCLID', 52717, '41.59230', '-81.51940'), ('FAIRVIEW PARK', 17572, '41.44060', '-81.85410'), ('GARFIELD HEIGHTS', 30734, '41.41970', '-81.60400'), ('GATES MILLS', 2493, '41.53250', '-81.41070'), ('GLENWILLOW', 449, '41.36080', '-81.47240'), ('HIGHLAND HEIGHTS', 8082, '41.54900', '-81.47160'), ('HUNTING VALLEY', 735, '41.47300', '-81.40910'), ('INDEPENDENCE', 7109, '41.38030', '-81.64150'), ('LAKEWOOD', 56646, '41.48380', '-81.80150'), ('LINNDALE', 117, '41.44510', '-81.76650'), ('LYNDHURST', 15279, '41.51550', '-81.49260'), ('MAPLE HEIGHTS', 26156, '41.40890', '-81.56280'), ('MAYFIELD', 3435, '41.55350', '-81.43530'), ('MAYFIELD HEIGHTS', 19386, '41.51740', '-81.45400'), ('MIDDLEBURG HEIGHTS', 15542, '41.36760', '-81.81490'), ('MORELAND HILLS', 3298, '41.44450', '-81.43110'), ('NEWBURGH HEIGHTS', 2389, '41.45260', '-81.66230'), ('NORTH OLMSTED', 34113, '41.41470', '-81.92050'), ('NORTH RANDALL', 906, '41.43120', '-81.53070'), ('NORTH ROYALTON', 28648, '41.31240', '-81.74510'), ('OLMSTED FALLS', 7962, '41.36750', '-81.90500'), ('ORANGE', 3236, '41.43850', '-81.47200'), ('PARMA', 85655, '41.38350', '-81.72940'), ('PARMA HEIGHTS', 21659, '41.38600', '-81.76360'), ('PEPPER PIKE', 6040, '41.47960', '-81.46020'), ('RICHMOND HEIGHTS', 10944, '41.55810', '-81.50380'), ('ROCKY RIVER', 20735, '41.47310', '-81.85430'), ('SEVEN HILLS', 12080, '41.37950', '-81.67510'), ('SHAKER HEIGHTS', 29405, '41.47560', '-81.54780'), ('SOLON', 21802, '41.38620', '-81.44090'), ('SOUTH EUCLID', 23537, '41.52420', '-81.52520'), ('STRONGSVILLE', 43858, '41.31270', '-81.83210'), ('UNIVERSITY HEIGHTS', 14146, '41.49470', '-81.53550'), ('VALLEY VIEW', 2179, '41.38630', '-81.60690'), ('WALTON HILLS', 2400, '41.36420', '-81.55450'), ('WARRENSVILLE HEIGHTS', 15109, '41.43860', '-81.52340'), ('WESTLAKE', 31719, '41.45440', '-81.92880'), ('WOODMERE', 828, '41.45920', '-81.47940')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'WYC005': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ECHETA', None, '44.45110', '-105.85500'), ('GILLETTE', 19646, '44.28180', '-105.51790'), ('PINE TREE JUNCTION', None, '43.61670', '-105.78330'), ('PUMPKIN BUTTES', None, '43.73590', '-105.88390'), ('RECLUSE', None, '44.77590', '-105.70100'), ('RENO JUNCTION', None, '43.76660', '-105.47690'), ('ROCKYPOINT', None, '44.90000', '-105.10000'), ('ROZET', None, '44.28330', '-105.20000'), ('SAVAGETON', None, '43.86450', '-105.78740'), ('SPOTTED HORSE', None, '44.71040', '-105.84510'), ('TURNERCREST', None, '43.56670', '-105.66670'), ('WESTON', None, '44.63420', '-105.33340'), ('WRIGHT', 1347, '43.74920', '-105.50190'), ('WYODAK', None, '44.29010', '-105.36860')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'CAC115': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ARBOGA', None, '39.05140', '-121.55470'), ('BEALE AFB', 5115, '39.11370', '-121.36130'), ('BRIDGEPORT', None, '39.29170', '-121.19360'), ('BROWNS VALLEY', None, '39.24220', '-121.40800'), ('BROWNSVILLE', None, '39.47330', '-121.26800'), ('CAMPTONVILLE', None, '39.45190', '-121.04750'), ('CHALLENGE', None, '39.46150', '-121.25890'), ('DOBBINS', None, '39.37160', '-121.20500'), ('FRENCHTOWN', None, '39.38800', '-121.25390'), ('HAMMONTON', None, '39.19300', '-121.41970'), ('IOWA CITY', None, '39.28330', '-121.47640'), ('LINDA', 13474, '39.12280', '-121.55470'), ('LOMA RICA', 2075, '39.31870', '-121.40040'), ('MARYSVILLE', 12268, '39.15160', '-121.58230'), ('OLIVEHURST', 11061, '39.08430', '-121.54750'), ('OREGON HOUSE', None, '39.35640', '-121.27800'), ('SMARTVILLE', None, '39.20750', '-121.29750'), ('STANFIELD HILL', None, '39.34250', '-121.33190'), ('TIMBUCTOO', None, '39.21690', '-121.31750'), ('WHEATLAND', 2275, '39.01300', '-121.42670')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAC111': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CAMARILLO', 57077, '34.22250', '-119.02940'), ('FILLMORE', 13643, '34.40020', '-118.91850'), ('LOCKWOOD VALLEY', None, '34.75000', '-119.08000'), ('MOORPARK', 31415, '34.28510', '-118.87760'), ('OJAI', 7862, '34.44910', '-119.24570'), ('OXNARD', 170358, '34.19740', '-119.21370'), ('PIRU', 1196, '34.40730', '-118.79870'), ('PORT HUENEME', 21845, '34.16210', '-119.20340'), ('POINT MUGU', None, '34.09000', '-119.06000'), ('VENTURA', None, '34.26590', '-119.25840'), ('SANTA PAULA', 28598, '34.35230', '-119.06930'), ('SIMI VALLEY', 111351, '34.26300', '-118.75130'), ('THOUSAND OAKS', 117005, '34.19270', '-118.86760'), ('LAKE PIRU', None, '34.38000', '-118.75000'), ('LAKE CASITAS', None, '34.39000', '-119.34000'), ('REYES PEAK', None, '34.63000', '-119.28000'), ('TOPATOPA PEAK', None, '34.54000', '-118.99000'), ('LA CONCHITA', None, '34.35000', '-119.43000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'NYC077': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BOWERSTOWN', None, '42.68330', '-74.90000'), ('BURLINGTON', None, '42.71670', '-75.13330'), ('CHERRY VALLEY', 592, '42.80000', '-74.75000'), ('COLLIERSVILLE', None, '42.48330', '-74.98330'), ('COOPERSTOWN', 2032, '42.69970', '-74.93070'), ('COOPERSTOWN JCT', None, '42.50000', '-74.95000'), ('EAST SPRINGFIELD', None, '42.83330', '-74.80000'), ('EDMESTON', None, '42.70000', '-75.23330'), ('ELK CREEK', None, '42.60000', '-74.83330'), ('EMMONS', None, '42.46670', '-75.01670'), ('EXETER CENTER', None, '42.78330', '-75.06670'), ('GILBERTSVILLE', 375, '42.46940', '-75.32140'), ('HARTWICK', None, '42.65000', '-75.05000'), ('HYDE PARK', None, '42.66670', '-74.95000'), ('INDEX', None, '42.66670', '-74.95000'), ('LAURENS', 277, '42.53140', '-75.08860'), ('LEONARDSVILLE', None, '42.80000', '-75.23330'), ('MARYLAND', None, '42.53330', '-74.88330'), ('MIDDLEFIELD', None, '42.68330', '-74.83330'), ('MILFORD', 511, '42.59000', '-74.94730'), ('MORRIS', 591, '42.54800', '-75.24550'), ('MT VISION', None, '42.56670', '-75.05000'), ('NEW LISBON', None, '42.58330', '-75.18330'), ('OAKSVILLE', None, '42.73330', '-75.00000'), ('ONEONTA', 13292, '42.45470', '-75.06730'), ('OTEGO', 1052, '42.39160', '-75.17840'), ('PITTSFIELD', None, '42.63330', '-75.26670'), ('PORTLANDVILLE', None, '42.53330', '-74.96670'), ('RICHFIELD SPRINGS', 1255, '42.85440', '-74.98620'), ('SCHENEVUS', None, '42.54730', '-74.82460'), ('SOUTH EDMESTON', None, '42.68330', '-75.30000'), ('SOUTH NEW BERLIN', None, '42.53330', '-75.35000'), ('SPRINGFIELD', None, '42.83330', '-74.85000'), ('TODDSVILLE', None, '42.68330', '-74.95000'), ('UNADILLA', 1127, '42.32700', '-75.31670'), ('UNADILLA FORKS', None, '42.83330', '-75.23330'), ('WELLS BRIDGE', None, '42.36670', '-75.25000'), ('WEST END', 1813, '42.46860', '-75.09410'), ('WESTFORD', None, '42.65000', '-74.78330'), ('WESTVILLE', None, '42.63330', '-74.90000'), ('WORCESTER', None, '42.58330', '-74.75000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'CAC113': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BROOKS', None, '38.74160', '-122.14690'), ('CADENASSO', None, '38.71440', '-122.12800'), ('CAPAY', None, '38.71610', '-122.04690'), ('CAPAY DAM', None, '38.71330', '-122.08330'), ('COURTLAND', None, '38.33110', '-121.56750'), ('DAVIS', 60308, '38.55490', '-121.73590'), ('DUNNIGAN', None, '38.88530', '-121.96860'), ('EL MACERO', None, '38.54690', '-121.69300'), ('ESPARTO', 1858, '38.69220', '-122.01610'), ('GUINDA', None, '38.82920', '-122.19280'), ('KNIGHTS LANDING', None, '38.79970', '-121.71720'), ('MADISON', None, '38.67940', '-121.96720'), ('PAINTERSVILLE', None, '38.32000', '-121.57500'), ('RALEY FIELD', None, '38.57930', '-121.51860'), ('RUMSEY', None, '38.88830', '-122.23640'), ('TANCRED', None, '38.76530', '-122.16250'), ('WEST POINT', 746, '38.39920', '-121.52640'), ('WEST SACRAMENTO', 31615, '38.55670', '-121.54780'), ('WINTERS', 6125, '38.53210', '-121.98020'), ('WOODLAND', 49151, '38.67690', '-121.76660'), ('YOLO', None, '38.73190', '-121.80660'), ('YOLO COUNTY AIRPORT', None, '38.57890', '-121.85640'), ('YOLO FLIERS CLUB', None, '38.68000', '-121.86890'), ('ZAMORA', None, '38.79670', '-121.88080')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'MIC077': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALAMO', None, '42.37530', '-85.70780'), ('AUGUSTA', 899, '42.33760', '-85.35140'), ('CLIMAX', 791, '42.23940', '-85.33700'), ('COMSTOCK', None, '42.28870', '-85.51330'), ('COOPER', None, '42.37630', '-85.61030'), ('EASTWOOD', 6265, '42.30200', '-85.54410'), ('FULTON', None, '42.11500', '-85.35250'), ('GALESBURG', 1988, '42.29060', '-85.41760'), ('KALAMAZOO', 77145, '42.27470', '-85.58830'), ('MIDLAND PARK', None, '42.39080', '-85.38550'), ('OSHTEMO', None, '42.25880', '-85.67750'), ('PARCHMENT', 1936, '42.32690', '-85.56550'), ('PORTAGE', 44897, '42.20140', '-85.59060'), ('RICHLAND', 593, '42.37560', '-85.45610'), ('SCHOOLCRAFT', 1587, '42.11520', '-85.63350'), ('SCOTTS', None, '42.19580', '-85.41300'), ('SOUTH GULL LAKE', 1526, '42.38750', '-85.39670'), ('VICKSBURG', 2320, '42.12040', '-85.53420'), ('WESTWOOD', 9122, '42.30340', '-85.63010')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'TXC213': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ATHENS', 11297, '32.20480', '-95.85540'), ('BERRYVILLE', 891, '32.08740', '-95.46500'), ('BROWNSBORO', 796, '32.29730', '-95.61470'), ('CANEY CITY', 236, '32.20870', '-96.03940'), ('CHANDLER', 2099, '32.30580', '-95.47890'), ('COFFEE CITY', 193, '32.12990', '-95.47820'), ('ENCHANTED OAKS', 357, '32.26630', '-96.10770'), ('EUSTACE', 798, '32.30590', '-96.01210'), ('GUN BARREL CITY', 5145, '32.32740', '-96.13640'), ('LOG CABIN', 733, '32.22330', '-96.02220'), ('MALAKOFF', 2257, '32.17310', '-96.01240'), ('MOORE STATION', 184, '32.19080', '-95.57240'), ('MURCHISON', 592, '32.27490', '-95.75810'), ('PAYNE SPRINGS', 683, '32.28090', '-96.08950'), ('POYNOR', 314, '32.07600', '-95.59490'), ('SEVEN POINTS', 1145, '32.32560', '-96.21480'), ('STAR HARBOR', 416, '32.19380', '-96.05570'), ('TOOL', 2275, '32.28030', '-96.17240'), ('TRINIDAD', 1091, '32.14850', '-96.09970')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'TXC211': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CANADIAN', 2233, '35.91070', '-100.38330'), ('GLAZIER', None, '36.01140', '-100.26330'), ('LAKE MARVIN', None, '35.89390', '-100.16580')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC217': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABBOTT', 300, '31.88370', '-97.07740'), ('AQUILLA', 136, '31.85520', '-97.22160'), ('BLUM', 399, '32.14180', '-97.39680'), ('BYNUM', 225, '31.96890', '-97.00300'), ("CARL'S CORNER", 134, '32.08530', '-97.04490'), ('COVINGTON', 282, '32.17740', '-97.25890'), ('HILLSBORO', 8232, '32.00740', '-97.11560'), ('HUBBARD', 1586, '31.84590', '-96.80050'), ('ITASCA', 1503, '32.15840', '-97.14760'), ('MALONE', 278, '31.91660', '-96.89490'), ('MERTENS', 146, '32.05890', '-96.89340'), ('MOUNT CALM', 310, '31.75690', '-96.88080'), ('PENELOPE', 211, '31.85840', '-96.92910'), ('WHITNEY', 1833, '31.94980', '-97.32040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC215': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALAMO', 14760, '26.18860', '-98.11850'), ('DONNA', 14768, '26.16890', '-98.05000'), ('EDCOUCH', 3342, '26.29400', '-97.96430'), ('EDINBURG', 48465, '26.29580', '-98.16490'), ('ELSA', 5549, '26.29830', '-97.99340'), ('HIDALGO', 7322, '26.10180', '-98.25840'), ('LA JOYA', 3303, '26.24830', '-98.47820'), ('MCALLEN', 106414, '26.21550', '-98.23930'), ('MCCOOK', None, '26.48000', '-98.38300'), ('MERCEDES', 13649, '26.14800', '-97.92080'), ('MISSION', 45408, '26.21140', '-98.31690'), ('PALMVIEW', 4107, '26.22990', '-98.37250'), ('PENITAS', 1167, '26.23340', '-98.44850'), ('PHARR', 46660, '26.18200', '-98.18850'), ('PROGRESO', 4851, '26.09750', '-97.96050'), ('SAN JUAN', 26229, '26.19130', '-98.15410'), ('SAN MANUEL', None, '26.57000', '-98.11700'), ('SULLIVAN CITY', 3998, '26.28170', '-98.56080'), ('WESLACO', 26935, '26.16160', '-97.98440')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXC219': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANTON', 1200, '33.81130', '-102.16200'), ('LEVELLAND', 12866, '33.57990', '-102.36390'), ('LOCKETVILLE', None, '33.38770', '-102.31380'), ('OPDYKE WEST', 188, '33.59120', '-102.29950'), ('PEP', None, '33.81580', '-102.55970'), ('ROPESVILLE', 517, '33.41370', '-102.15430'), ('SMYER', 480, '33.58680', '-102.16320'), ('SUNDOWN', 1505, '33.45680', '-102.49070'), ('WHITHARRAL', None, '33.73750', '-102.32660')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'VAC036': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADKINS STORE', None, '37.39370', '-77.09620'), ('BARNETTS', None, '37.36710', '-77.15810'), ('CHARLES CITY', None, '37.34370', '-77.07130'), ('HOLDCROFT', None, '37.36560', '-76.93530'), ('NEW HOPE', None, '37.34110', '-77.06170'), ('ROACHES CORNER', None, '37.39080', '-77.05310'), ('ROXBURY', None, '37.46460', '-77.14110'), ('RUSTIC', None, '37.29250', '-76.93410'), ('RUTHVILLE', None, '37.36750', '-77.04110'), ('SANDYBOTTOM', None, '37.41310', '-77.04470'), ('WAYSIDE', None, '37.37220', '-77.19500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'VAC031': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALTAVISTA', 3425, '37.11670', '-79.30000'), ('ALTAVISTA', 3425, '37.12350', '-79.28450'), ('BOCOCK', None, '37.36670', '-79.11670'), ('BROOKNEAL', 1259, '37.05000', '-78.96670'), ('CONCORD', None, '37.35000', '-78.98330'), ('EVINGTON', None, '37.23330', '-79.28330'), ('GLADYS', None, '37.16670', '-79.08330'), ('HAT CREEK', None, '37.11670', '-78.91670'), ('HODGES', None, '37.11670', '-79.18330'), ('LEESVILLE', None, '37.11670', '-79.38330'), ('LONG ISLAND', None, '37.08330', '-79.10000'), ('LYNCHBURG AIRPORT', None, '37.33330', '-79.20000'), ('MIKE', None, '37.21670', '-78.91670'), ('RUSTBURG', 1271, '37.28330', '-79.10000'), ('SPRING MILLS', None, '37.23330', '-78.93330'), ('TIMBERLAKE', 10683, '37.33330', '-79.25000'), ('TIMBERLAKE', 10683, '37.32320', '-79.24990')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'NMC039': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABIQUIU', None, '36.20700', '-106.31800'), ('ALCALDE', 377, '36.08470', '-106.05840'), ('BRAZOS', None, '36.75100', '-106.56100'), ('BUENA VISTA', None, '36.20300', '-106.33800'), ('CANJILON', None, '36.47900', '-106.43700'), ('CANON PLAZA', None, '36.55000', '-106.16700'), ('CANONCITO', None, '36.18100', '-105.83200'), ('CANONES', None, '36.18800', '-106.43900'), ('CEBOLLA', None, '36.53800', '-106.48600'), ('CHAMA', 1199, '36.89350', '-106.58260'), ('CHILI', None, '36.10500', '-106.14900'), ('CORDOVA', None, '36.00700', '-105.86000'), ('COYOTE', None, '36.16800', '-106.61600'), ('DIXON', None, '36.19900', '-105.88800'), ('DULCE', 2623, '36.93340', '-106.99600'), ('EL RITO', None, '36.34300', '-106.18800'), ('EL VADO', None, '36.59400', '-106.72800'), ('EMBUDO', None, '36.20800', '-105.96100'), ('ENSENADA', None, '36.72700', '-106.53300'), ('ESPANOLA', 9688, '36.00340', '-106.06930'), ('GALLINA', None, '36.23300', '-106.85000'), ('GHOST RANCH', None, '36.33000', '-106.47500'), ('HERNANDEZ', None, '36.06300', '-106.11900'), ('LA MADERA', None, '36.38700', '-106.04100'), ('LA PUENTE', None, '36.70000', '-106.60000'), ('LA VILLITA', None, '36.10300', '-106.04800'), ('LAS PLACITAS', None, '36.32300', '-106.16200'), ('LAS TABLAS', None, '36.55600', '-106.02900'), ('LINDRITH', None, '36.30400', '-107.04400'), ('LOS OJOS', None, '36.72900', '-106.56900'), ('LOS PINOS', None, '36.98800', '-106.06400'), ('LUMBERTON', None, '36.93000', '-106.93600'), ('LYDEN', None, '36.14600', '-106.00500'), ('MEDANALES', None, '36.17600', '-106.18300'), ('MONERO', None, '36.90200', '-106.85500'), ('NAVAJO DAM', None, '36.80000', '-107.61200'), ('OJO CALIENTE', None, '36.30300', '-106.04600'), ('OJO SARCO', None, '36.12300', '-105.78300'), ('PETACA', None, '36.50800', '-106.01000'), ('RINCONADA', None, '36.21800', '-105.87300'), ('RUTHERON', None, '36.71900', '-106.61100'), ('SAN JOSE', None, '36.03900', '-106.09800'), ('SAN JUAN PUEBLO', None, '36.05190', '-106.07000'), ('SAN MIGUEL', None, '36.96100', '-106.16000'), ('SANTA CLARA PUEBLO', 980, '35.97180', '-106.09260'), ('TIERRA AMARILLA', None, '36.70000', '-106.54900'), ('TRES PIEDRAS', None, '36.64700', '-105.96700'), ('TRUCHAS', None, '36.04400', '-105.81100'), ('VALLECITOS', None, '36.49500', '-106.11600'), ('VELARDE', None, '36.15900', '-105.97400'), ('YOUNGSVILLE', None, '36.18800', '-106.55600')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABQ'}, -'MTC081': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BELL CROSSING', None, '46.44333', '-114.12306'), ('CHARLO HEIGHTS', None, '46.12639', '-114.17694'), ('COMO', None, '46.08972', '-114.17444'), ('CONNER', None, '45.93083', '-114.12361'), ('CORVALLIS', 443, '46.31417', '-114.11194'), ('DARBY', 710, '46.02278', '-114.17722'), ('FLORENCE', 901, '46.63167', '-114.07806'), ('GRANTSDALE', None, '46.20361', '-114.14083'), ('HAMILTON', 3705, '46.24694', '-114.15944'), ('LOST TRAIL PASS', None, '45.70000', '-113.94500'), ('PINESDALE', 742, '46.32944', '-114.21583'), ('SKALKAHO PASS', None, '46.24500', '-113.77500'), ('STEVENSVILLE', 1553, '46.51000', '-114.09222'), ('SULA', None, '45.83667', '-113.98083'), ('VICTOR', 859, '46.41667', '-114.14917'), ('WOODSIDE', None, '46.31333', '-114.15417')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'MTC083': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BURNS', None, '47.37800', '-104.40470'), ('CRANE', None, '47.57580', '-104.26190'), ('ENID', None, '47.69550', '-104.77910'), ('LAMBERT', None, '47.68360', '-104.62020'), ('MIDWAY', None, '47.51500', '-104.32000'), ('NOHLY', None, '47.99550', '-104.09130'), ('SAVAGE', None, '47.45360', '-104.34220'), ('SIDNEY', 4774, '47.71660', '-104.15580'), ('WOOLEY', None, '47.76500', '-104.10520')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTC085': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BAINVILLE', 153, '48.14000', '-104.22220'), ('BREDETTE', None, '48.50550', '-105.29910'), ('BROCKTON', 245, '48.15130', '-104.91630'), ('CULBERTSON', 716, '48.14440', '-104.51630'), ('FORT KIPP', None, '48.14660', '-104.71520'), ('FORT UNION', None, '48.00970', '-104.04830'), ('FROID', 195, '48.33440', '-104.49550'), ('MCCABE', None, '48.24360', '-104.37720'), ('POPLAR', 911, '48.11300', '-105.19770'), ('SNOWDEN', None, '48.02690', '-104.08360'), ('SPROLE', None, '48.10720', '-105.06270'), ('VOLT', None, '48.38830', '-105.71830'), ('WOLF POINT', 2663, '48.09050', '-105.64000')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTC087': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ASHLAND', 464, '45.62350', '-106.31430'), ('COLSTRIP', 2346, '45.89470', '-106.63410'), ('FORSYTH', 1944, '46.26670', '-106.67710'), ('LAME DEER', 2018, '45.61760', '-106.60980')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'NMC031': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALLISON', None, '35.52400', '-108.78400'), ('BLACK ROCK', 1252, '35.08600', '-108.79000'), ('CHI CHIL TAH', None, '35.24900', '-108.90700'), ('CHURCH ROCK', 1077, '35.53400', '-108.59900'), ('COOLIDGE', None, '35.44700', '-108.36300'), ('COYOTE CANYON', None, '35.77500', '-108.62000'), ('CROWNPOINT', 2630, '35.68810', '-108.14610'), ('FORT WINGATE', None, '35.46800', '-108.54100'), ('GALLUP', 20209, '35.52040', '-108.73540'), ('GAMERCO', None, '35.57200', '-108.76500'), ('MANUELITO', None, '35.42200', '-108.99300'), ('MARIANO LAKE', None, '35.57800', '-108.32100'), ('MARQUEZ', None, '35.31400', '-107.30200'), ('MCGAFFEY', None, '35.37500', '-108.51500'), ('MENTMORE', None, '35.51400', '-108.84500'), ('MEXICAN SPRINGS', None, '35.78750', '-108.80730'), ('NAVAJO', 2097, '35.89630', '-109.03140'), ('OJO ENCINO', None, '35.95600', '-107.34700'), ('PESCADO', None, '35.10600', '-108.58000'), ('PINEDALE', None, '35.60400', '-108.44600'), ('PREWITT', None, '35.36300', '-108.04300'), ('PUEBLO PINTADO', 247, '35.97700', '-107.67300'), ('RAMAH', 407, '35.13300', '-108.49100'), ('RED ROCK STATE PARK', None, '35.45400', '-108.75500'), ('STANDING ROCK', None, '35.80300', '-108.36000'), ('THOREAU', 1863, '35.40300', '-108.22300'), ('TOHATCHI', 1037, '35.85020', '-108.75010'), ('TSE BONITO', 261, '35.67500', '-109.04100'), ('TWIN LAKES', 1069, '35.70900', '-108.77400'), ('UPPER NUTRIA', None, '35.27000', '-108.57000'), ('WHITEWATER', None, '35.26700', '-108.76700'), ('YAH-TA-HEY', 580, '35.62800', '-108.78000'), ('ZUNI PUEBLO', 6367, '35.07250', '-108.85000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABQ'}, -'MTC089': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BELKNAP', None, '47.66222', '-115.40778'), ('BEND', None, '47.90944', '-115.04861'), ('CAMAS', None, '47.61806', '-114.65694'), ('CAMAS PRAIRIE', None, '47.46278', '-114.60611'), ('DIXON', 216, '47.31667', '-114.31306'), ('EDDY', None, '47.55833', '-115.13222'), ('HERON', 149, '48.05889', '-115.95611'), ('HOT SPRINGS', 531, '47.60917', '-114.66778'), ('LONEPINE', 137, '47.70306', '-114.63583'), ('NOXON', 230, '47.99611', '-115.78056'), ('PARADISE', 184, '47.38944', '-114.80111'), ('PERMA', None, '47.36389', '-114.58389'), ('PLAINS', 1126, '47.46028', '-114.88194'), ('SNIDER', None, '47.60389', '-115.21750'), ('THOMPSON FALLS', 1321, '47.59722', '-115.34333'), ('TROUT CREEK', 261, '47.83694', '-115.59722'), ('TUSCOR', None, '47.90333', '-115.69000'), ('WEEKSVILLE', None, '47.52306', '-114.99306'), ('WHITE PINE', None, '47.74361', '-115.48139')], 'partOfState': 'NORTHWEST', 'wfo': 'MSO'}, -'NMC033': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BUENA VISTA', None, '35.91400', '-105.24900'), ('CANON', None, '35.94300', '-105.36900'), ('CHACON', None, '36.14400', '-105.36700'), ('CLEVELAND', None, '35.99300', '-105.37000'), ('EL TURQUILLO', None, '36.08000', '-105.25100'), ('GOLONDRINAS', None, '35.88900', '-105.18600'), ('GUADALUPITA', None, '36.13800', '-105.23800'), ('HOLMAN', None, '36.03800', '-105.38300'), ('LA CUEVA', None, '35.94200', '-105.24900'), ('LEDOUX', None, '35.92400', '-105.36100'), ('LUCEROS', None, '36.01600', '-105.22800'), ('MONTE APLANADO', None, '35.95500', '-105.39400'), ('MORA', None, '35.97400', '-105.32900'), ('OCATE', None, '36.17600', '-105.04800'), ('OJO FELIZ', None, '36.05800', '-105.11800'), ('RAINSVILLE', None, '35.97900', '-105.20900'), ('SHOEMAKER', None, '35.81600', '-104.87600'), ('SOUTH CARMEN', None, '35.89400', '-105.33600'), ('VALMORA', None, '35.81600', '-104.92300'), ('WAGON MOUND', 369, '36.00290', '-104.71430')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'MDC025': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ABERDEEN', 13842, '39.51170', '-76.17250'), ('ABERDEEN PROVING GROUND', 3116, '39.47250', '-76.13000'), ('ABINGDON', None, '39.46220', '-76.27940'), ('BEL AIR', 10080, '39.53460', '-76.34690'), ('BYNUM', None, '39.56560', '-76.36500'), ('CARSINS', None, '39.53720', '-76.21280'), ('CHROME HILL', None, '39.62250', '-76.42080'), ('CHURCHVILLE', None, '39.56110', '-76.24580'), ('DARLINGTON', None, '39.63920', '-76.20310'), ('EDGEWOOD', 23378, '39.42050', '-76.29920'), ('FALLSTON', 8427, '39.52100', '-76.42650'), ('HARFORD FURNACE', None, '39.49500', '-76.26170'), ('HAVRE DE GRACE', 11331, '39.54720', '-76.09900'), ('HICKORY', None, '39.57860', '-76.34560'), ('JARRETTSVILLE', 2756, '39.60370', '-76.47270'), ('JOPPA', None, '39.43360', '-76.35810'), ('JOPPATOWNE', 11391, '39.41540', '-76.35420'), ('MAGNOLIA', None, '39.40470', '-76.32500'), ('NORRISVILLE', None, '39.70470', '-76.53500'), ('PERRYMAN', 2461, '39.46990', '-76.20570'), ('PLEASANT HILLS', 2851, '39.48710', '-76.39520'), ('PYLESVILLE', None, '39.68970', '-76.37330'), ('SCARBORO', None, '39.64610', '-76.29560'), ('WHITEFORD', None, '39.70890', '-76.34580')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'NMC035': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALAMOGORDO', 35582, '32.88470', '-105.95760'), ('BOLES ACRES', 1172, '32.80880', '-105.98670'), ('CLOUDCROFT', 749, '32.95300', '-105.73940'), ('HIGH ROLLS', None, '32.95000', '-105.81670'), ('HOLLOMAN AFB', 2076, '32.85120', '-106.10620'), ('LA LUZ', 1615, '32.97050', '-105.93740'), ('MAYHILL', None, '32.88940', '-105.47750'), ('MESCALERO', 1233, '33.15080', '-105.79600'), ('OROGRANDE', None, '32.37110', '-106.08390'), ('PINON', None, '32.61810', '-105.39390'), ('SACRAMENTO', None, '32.79250', '-105.56000'), ('THREE RIVERS', None, '33.32140', '-106.07500'), ('TIMBERON', 309, '32.63830', '-105.69030'), ('TULAROSA', 2864, '33.07590', '-106.01970'), ('WEED', None, '32.80250', '-105.51670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EPZ'}, -'MDC023': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ACCIDENT', 353, '39.62690', '-79.32090'), ('DEER PARK', 405, '39.42350', '-79.32670'), ('FRIENDSVILLE', 539, '39.66300', '-79.40520'), ('GRANTSVILLE', 619, '39.69650', '-79.15710'), ('KITZMILLER', 302, '39.38920', '-79.18370'), ('LOCH LYNN HEIGHTS', 469, '39.39130', '-79.37310'), ('MC HENRY', None, '39.55000', '-79.35000'), ('MOUNTAIN LAKE PARK', 2248, '39.40380', '-79.37940')], 'partOfState': '', 'wfo': 'PBZ'}, -'NMC037': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('FORREST', None, '34.79500', '-103.60100'), ('GLENRIO', None, '35.17900', '-103.04200'), ('HOUSE', 72, '34.64800', '-103.90330'), ('LOGAN', 1094, '35.36100', '-103.44340'), ('MCALISTER', None, '34.69200', '-103.77600'), ('MONTOYA', None, '35.10000', '-104.06300'), ('NARA VISA', None, '35.60800', '-103.09900'), ('QUAY', None, '34.93400', '-103.76000'), ('RAGLAND', None, '34.82300', '-103.74200'), ('SAN JON', 306, '35.11300', '-103.32750'), ('TUCUMCARI', 5989, '35.16740', '-103.72750'), ('WHEATLAND', None, '34.90900', '-103.35400')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ABQ'}, -'MDC021': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ARNOLDTOWN', None, '39.40940', '-77.60610'), ('BALLENGER CREEK', 13518, '39.37240', '-77.43560'), ('BLOOMFIELD', None, '39.47560', '-77.42170'), ('BOLIVAR', None, '39.46640', '-77.59190'), ('BRADDOCK HEIGHTS', 4627, '39.41430', '-77.50730'), ('BRUNSWICK', 4894, '39.31640', '-77.62320'), ('BUCKEYSTOWN', None, '39.33470', '-77.43190'), ('BURKITTSVILLE', 171, '39.39140', '-77.62740'), ('EMMITSBURG', 2290, '39.70460', '-77.32560'), ('FREDERICK', 52767, '39.42820', '-77.41690'), ('GREEN VALLEY', 12262, '39.34360', '-77.24520'), ('JEFFERSON', None, '39.36190', '-77.53190'), ('LIBERTYTOWN', None, '39.48500', '-77.24060'), ('MIDDLETOWN', 2668, '39.44220', '-77.54420'), ('MOUNT PLEASANT', None, '39.45360', '-77.32610'), ('MYERSVILLE', 1382, '39.50620', '-77.56510'), ('NEW MARKET', 427, '39.38410', '-77.27440'), ('PARK MILLS', None, '39.29780', '-77.40810'), ('PETERSVILLE', None, '39.34640', '-77.61110'), ('PLEASANT WALK', None, '39.53970', '-77.58640'), ('POINT OF ROCKS', None, '39.27580', '-77.53940'), ('ROSEMONT', 273, '39.33480', '-77.62140'), ('SABILLASVILLE', None, '39.70000', '-77.45670'), ('THURMONT', 5588, '39.62380', '-77.40970'), ('UTICA', None, '39.52580', '-77.39420'), ('WALKERSVILLE', 5192, '39.48450', '-77.35330'), ('WOLFSVILLE', None, '39.57420', '-77.55080'), ('WOODSBORO', 846, '39.53210', '-77.31100')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LWX'}, -'NJC007': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('AUDUBON', 9182, '39.88970', '-75.07280'), ('AUDUBON PARK', 1102, '39.89600', '-75.08870'), ('BARRINGTON', 7084, '39.87040', '-75.05300'), ('BELLMAWR', 11262, '39.86590', '-75.09490'), ('BERLIN', 6149, '39.79400', '-74.93790'), ('BLACKWOOD', 4692, '39.79840', '-75.06290'), ('BROOKLAWN', 2354, '39.87810', '-75.12150'), ('CAMDEN', 79904, '39.93590', '-75.10840'), ('CHERRY HILL', None, '39.90230', '-74.99610'), ('CHESILHURST', 1520, '39.73220', '-74.87970'), ('CLEMENTON', 4986, '39.80420', '-74.98580'), ('COLLINGSWOOD', 14326, '39.91620', '-75.07500'), ('GIBBSBORO', 2435, '39.83350', '-74.96640'), ('GLENDORA', 4907, '39.84040', '-75.06910'), ('GLOUCESTER CITY', 11484, '39.89240', '-75.11780'), ('HADDON HEIGHTS', 7547, '39.87870', '-75.06600'), ('HADDONFIELD', 11659, '39.89500', '-75.03470'), ('HI-NELLA', 1029, '39.83520', '-75.02200'), ('LAUREL SPRINGS', 1970, '39.82010', '-75.00590'), ('LAWNSIDE', 2692, '39.86560', '-75.03060'), ('LINDENWOLD', 17414, '39.81580', '-74.99020'), ('MAGNOLIA', 4409, '39.85560', '-75.03620'), ('MERCHANTVILLE', 3801, '39.94990', '-75.05060'), ('MOUNT EPHRAIM', 4495, '39.88100', '-75.09170'), ('OAKLYN', 4188, '39.90190', '-75.08080'), ('PENNSAUKEN', 35737, '39.96370', '-75.05620'), ('PINE HILL', 10880, '39.78660', '-74.98580'), ('PINE VALLEY', 20, '39.78840', '-74.97240'), ('RUNNEMEDE', 8533, '39.85140', '-75.07510'), ('SOMERDALE', 5192, '39.84530', '-75.02300'), ('STRATFORD', 7271, '39.82820', '-75.01510'), ('TAVISTOCK', 24, '39.87510', '-75.02840'), ('WESTVILLE', 4500, '39.86970', '-75.13000'), ('WOODLYNNE', 2796, '39.91630', '-75.09580')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJC005': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BEVERLY', 2661, '40.06470', '-74.92180'), ('BORDENTOWN', 3969, '40.14860', '-74.70950'), ('BROWN MILLS', None, '39.97330', '-74.56800'), ('BURLINGTON', 9736, '40.07840', '-74.85280'), ('CINNAMINSON', None, '39.99990', '-74.99150'), ('COUNTRY LAKE ESTATES', 4012, '39.94870', '-74.54110'), ('DELANCO', None, '40.04920', '-74.94910'), ('EDGEWATER PARK', None, '40.05460', '-74.91250'), ('FIELDSBORO', 522, '40.13620', '-74.72990'), ('FLORENCE-ROEBLING', 8200, '40.11810', '-74.79450'), ('FORT DIX', 7464, '40.00490', '-74.61310'), ('LEISURETOWNE', 2535, '39.90100', '-74.70450'), ('MAPLE SHADE', None, '39.95130', '-74.99570'), ('MARLTON', 10260, '39.90140', '-74.92930'), ('MCGUIRE AFB', 6478, '40.04130', '-74.58440'), ('MEDFORD LAKES', 4173, '39.85940', '-74.80580'), ('MOORESTOWN-LENOLA', 13860, '39.96430', '-74.96600'), ('MOUNT HOLLY', None, '39.99500', '-74.78680'), ('PALMYRA', 7091, '40.00200', '-75.03490'), ('PEMBERTON', 1210, '39.97140', '-74.68620'), ('PEMBERTON HEIGHTS', 2512, '39.95770', '-74.67820'), ('PRESIDENTIAL LAKES ESTATE', None, '39.91370', '-74.56490'), ('RAMBLEWOOD', 6003, '39.93160', '-74.95320'), ('RIVERSIDE', None, '40.03550', '-74.95590'), ('RIVERTON', 2759, '40.01170', '-75.01490'), ('WILLINGBORO', None, '40.02710', '-74.88740'), ('WRIGHTSTOWN', 748, '40.02750', '-74.63100')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJC001': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ABSECON', 7638, '39.42520', '-74.49560'), ('BUENA', 3873, '39.52800', '-74.94490'), ('COLLINGS LAKES', 1726, '39.59470', '-74.88320'), ('CORBIN CITY', 468, '39.30120', '-74.71070'), ('EGG HARBOR CITY', 4545, '39.56430', '-74.59630'), ('ELWOOD-MAGNOLIA', 1392, '39.57280', '-74.71850'), ('ESTELL MANOR', 1585, '39.35420', '-74.77370'), ('FOLSOM', 1972, '39.59210', '-74.84750'), ('HAMMONTON', 12604, '39.65490', '-74.77240'), ('LINWOOD', 7172, '39.34220', '-74.57030'), ('LONGPORT', 1054, '39.31170', '-74.52550'), ('MARGATE CITY', 8193, '39.33080', '-74.50740'), ('MAYS LANDING', 2321, '39.45280', '-74.72420'), ('NORTHFIELD', 7725, '39.37320', '-74.55490'), ('PLEASANTVILLE', 19012, '39.39050', '-74.51880'), ('POMONA', 4019, '39.46960', '-74.55190'), ('PORT REPUBLIC', 1037, '39.53800', '-74.48720'), ('SOMERS POINT', 11614, '39.31730', '-74.60680'), ('VENTNOR CITY', 12910, '39.34190', '-74.48320')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJC009': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('AVALON', 2143, '39.09170', '-74.73700'), ('CAPE MAY', 4034, '38.94010', '-74.90550'), ('CAPE MAY COURT HOUSE', 4704, '39.07990', '-74.82390'), ('CAPE MAY POINT', 241, '38.93680', '-74.96560'), ('ERMA', 2088, '38.99840', '-74.89480'), ('NORTH CAPE MAY', 3618, '38.97630', '-74.95170'), ('NORTH WILDWOOD', 4935, '39.00430', '-74.79980'), ('OCEAN CITY', 15378, '39.26960', '-74.60340'), ('RIO GRANDE', 2444, '39.02200', '-74.87770'), ('SEA ISLE CITY', 2835, '39.15240', '-74.69780'), ('STONE HARBOR', 1128, '39.04400', '-74.76780'), ('VILLAS', 9064, '39.01560', '-74.93670'), ('WEST CAPE MAY', 1095, '38.94140', '-74.93790'), ('WEST WILDWOOD', 448, '39.00010', '-74.82430'), ('WHITESBORO-BURLEIGH', 1836, '39.04580', '-74.86580'), ('WILDWOOD', 5436, '38.98890', '-74.82030'), ('WILDWOOD CREST', 3980, '38.97240', '-74.83880'), ('WOODBINE', 2716, '39.22790', '-74.80850')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'WVC099': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEECH FORK STATE PARK', None, '38.30130', '-82.40990'), ('CEREDO', 1675, '38.39660', '-82.55410'), ('EAST LYNN LAKE', None, '38.15440', '-82.38430'), ('FORT GAY', 819, '38.11850', '-82.59450'), ('KENOVA', 3485, '38.40320', '-82.58010'), ('WAYNE', 1105, '38.22090', '-82.44270')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC097': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BUCKHANNON', 5725, '38.98950', '-80.22540'), ('ROCK CAVE', None, '38.83670', '-80.34290')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC095': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('FRIENDLY', 159, '39.51290', '-81.06210'), ('MIDDLEBOURNE', 870, '39.49360', '-80.90940'), ('PADEN CITY', 2860, '39.60290', '-80.93540'), ('SISTERSVILLE', 1588, '39.55950', '-80.99850')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC093': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CANAAN HGTS', None, '39.10000', '-79.43000'), ('DAVIS', 624, '39.13100', '-79.46650'), ('HAMBLETON', 246, '39.08120', '-79.64610'), ('HENDRICKS', 319, '39.07520', '-79.63030'), ('PARSONS', 1463, '39.09330', '-79.67930'), ('RED CREEK', None, '39.00000', '-79.50000'), ('THOMAS', 452, '39.14740', '-79.49910')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'MPC110': {'fullStateName': 'NORTHERN MARIANA ISLANDS', 'state': 'MP', 'cities': [('CAPITAL HILL', None, '15.20010', '145.75180'), ('CHALAN KANOA', None, '15.14620', '145.70410'), ('DANDAN', None, '15.13450', '145.73710'), ('GARAPAN', None, '15.20610', '145.71790'), ('GUALO RAI', None, '15.19090', '145.72260'), ('KAGMAN', None, '15.16670', '145.77860'), ('KOBLERVILLE', None, '15.12050', '145.70640'), ('NAVY HILL', None, '15.20940', '145.73370'), ('SAN ANTONIO', None, '15.13330', '145.69910'), ('SAN JOSE (SAIPAN)', None, '15.16690', '145.70860'), ('SAN ROQUE', None, '15.24740', '145.77200'), ('SAN VICENTE', None, '15.15160', '145.73780'), ('SUSUPE', None, '15.15640', '145.70570'), ('TANAPAG', None, '15.23890', '145.75380')], 'partOfState': '', 'wfo': 'GUM'}, -'TNC067': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('EVANSTON', None, '36.50640', '-83.28830'), ('KYLES FORD', None, '36.57030', '-83.04420'), ('SNEEDVILLE', 1257, '36.53760', '-83.21110'), ('TREADWAY', None, '36.41560', '-83.22690')], 'partOfState': '', 'wfo': 'MRX'}, -'TNC065': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIRCHWOOD', None, '35.36140', '-84.99330'), ('CHATTANOOGA', 155554, '35.06620', '-85.25700'), ('COLLEGEDALE', 6514, '35.04470', '-85.05030'), ('EAST BRAINERD', 14132, '35.01380', '-85.10890'), ('HARRISON', 7630, '35.12790', '-85.14600'), ('MIDDLE VALLEY', 11854, '35.18770', '-85.18940'), ('OOLTEWAH', 5681, '35.06250', '-85.09110'), ('RED BANK', 12418, '35.11140', '-85.29500'), ('SALE CREEK', None, '35.38110', '-85.10970'), ('SHADY GROVE', None, '35.25220', '-85.12110'), ('SIGNAL MOUNTAIN', 7429, '35.13040', '-85.34210'), ('SODDY-DAISY', 11530, '35.26260', '-85.17220')], 'partOfState': '', 'wfo': 'MRX'}, -'TNC063': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALPHA', None, '36.17580', '-83.38420'), ('LOWLAND', None, '36.15250', '-83.20860'), ('MORRISTOWN', 24965, '36.21460', '-83.29600'), ('RUSSELLVILLE', None, '36.25780', '-83.19610')], 'partOfState': '', 'wfo': 'MRX'}, -'TXC459': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIG SANDY', 1288, '32.58570', '-95.11260'), ('EAST MOUNTAIN', 580, '32.59390', '-94.85520'), ('GILMER', 4799, '32.73020', '-94.94570'), ('ORE CITY', 1106, '32.80150', '-94.71690'), ('UNION GROVE', 346, '32.58310', '-94.90850')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TNC061': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALTAMONT', 1136, '35.42970', '-85.72840'), ('BEERSHEBA SPRINGS', 553, '35.45740', '-85.67130'), ('COALMONT', 948, '35.33900', '-85.71340'), ('GRUETLI-LAAGER', 1867, '35.37100', '-85.63710'), ('PALMER', 726, '35.35790', '-85.56520'), ('TRACY CITY', 1679, '35.25900', '-85.75190')], 'partOfState': '', 'wfo': 'OHX'}, -'TXC329': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COTTON FLAT', None, '31.93000', '-102.06000'), ('GREENWOOD', None, '32.03000', '-101.90000'), ('MIDLAND', 94996, '32.00000', '-102.08020'), ('MIDLAND INTERNATIONAL AIR', None, '31.94280', '-102.18890'), ('MISSION DORADO', None, '31.91270', '-102.27170'), ('SPRABERRY', None, '31.93000', '-101.83000'), ('VALLEY VIEW', 737, '31.94470', '-101.99420'), ('WARFIELD', None, '31.92000', '-102.22000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC455': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GROVETON', 1107, '31.05730', '-95.12710'), ('TRINITY', 2721, '30.94420', '-95.37330')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC325': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CASTROVILLE', 2664, '29.34800', '-98.87320'), ("D'HANIS", None, '29.32860', '-99.27770'), ('DEVINE', 4140, '29.14540', '-98.90470'), ('HONDO', 7897, '29.35630', '-99.15830'), ('LACOSTE', 1255, '29.30930', '-98.81090'), ('MICO', None, '29.53330', '-98.93330'), ('NATALIA', 1663, '29.19050', '-98.85570'), ('RIO MEDINA', None, '29.43330', '-98.88330'), ('YANCEY', None, '29.15000', '-99.13000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC451': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARLSBAD', None, '31.59810', '-100.63250'), ('CHRISTOVAL', 422, '31.19330', '-100.49830'), ('GRAPE CREEK', 3138, '31.58080', '-100.54690'), ('HARRIET', None, '31.54690', '-100.31830'), ('KNICKERBOCKER', None, '31.26640', '-100.62280'), ('MERETA', None, '31.45690', '-100.14060'), ('ORIENT', None, '31.65670', '-100.33140'), ('SAN ANGELO', 88439, '31.44600', '-100.45240'), ('TANKERSLEY', None, '31.34940', '-100.64310'), ('VANCOURT', None, '31.34280', '-100.17670'), ('VERIBEST', None, '31.47640', '-100.25920'), ('WALL', None, '31.37390', '-100.30720'), ('WATER VALLEY', None, '31.66750', '-100.71670')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'TNC069': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BOLIVAR', 5802, '35.26400', '-88.99910'), ('CLOVERPORT', None, '35.40000', '-89.01670'), ('GRAND JUNCTION', 301, '35.04920', '-89.18860'), ('HICKORY VALLEY', 136, '35.15480', '-89.12650'), ('HORNSBY', 306, '35.22970', '-88.83040'), ('MIDDLETON', 602, '35.06030', '-88.89140'), ('MIDTOWN MEMPHIS', None, '35.13330', '-89.00000'), ('POCAHONTAS', None, '35.05000', '-88.81670'), ('SAULSBURY', 99, '35.04920', '-89.08880'), ('SILERTON', 60, '35.35000', '-88.81670'), ('TOONE', 330, '35.35300', '-88.95350'), ('WHITEVILLE', 3148, '35.32760', '-89.14770')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'TXC453': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AUSTIN', 656562, '30.30590', '-97.75050'), ('BEE CAVE', 656, '30.30800', '-97.95520'), ('BERGSTROM', None, '30.20000', '-97.66670'), ('BRIARCLIFF', 895, '30.40590', '-98.04600'), ('CREEDMOOR', 211, '30.09190', '-97.74170'), ('GARFIELD', 1660, '30.18970', '-97.56060'), ('JOLLYVILLE', 15813, '30.44950', '-97.75100'), ('JONESTOWN', 1681, '30.48920', '-97.92810'), ('LAGO VISTA', 4507, '30.45190', '-97.99670'), ('LAKEWAY', 8002, '30.36660', '-97.97940'), ('LOST CREEK', 4729, '30.29540', '-97.84400'), ('MANOR', 1204, '30.34600', '-97.55570'), ('MANSFIELD DAM', None, '30.33330', '-97.90000'), ('MUSTANG RIDGE', 785, '30.05660', '-97.69090'), ('ONION CREEK', 2116, '30.13630', '-97.78390'), ('PFLUGERVILLE', 16335, '30.44070', '-97.62020'), ('ROLLINGWOOD', 1403, '30.27380', '-97.78680'), ('SAN LEANNA', 384, '30.14490', '-97.81870'), ('SUNSET VALLEY', 365, '30.22610', '-97.81640'), ('TANGLEWOOD FOREST', None, '30.17430', '-97.83890'), ('WELLS BRANCH', 11271, '30.44580', '-97.67910'), ('WEST LAKE HILLS', 3116, '30.29210', '-97.80960'), ('WINDEMERE', 6868, '30.45890', '-97.64880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'KSC079': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURRTON', 932, '38.02260', '-97.67200'), ('HALSTEAD', 1873, '38.00100', '-97.50930'), ('HESSTON', 3509, '38.13990', '-97.42760'), ('NEWTON', 17190, '38.04440', '-97.34190'), ('NORTH NEWTON', 1522, '38.07390', '-97.34600'), ('SEDGWICK', 1537, '37.91780', '-97.42610'), ('WALTON', 284, '38.11830', '-97.25610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'FLC059': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARDS CROSSROADS', None, '30.95920', '-85.69300'), ('ARRANT SETTLEMENT', None, '30.85840', '-85.97430'), ('BAKER SETTLEMENT', None, '30.86620', '-85.90560'), ('BARKER STORE', None, '30.91360', '-85.91590'), ('BONIFAY', 4078, '30.78840', '-85.67980'), ('CERRO GORDO', None, '30.83120', '-85.88760'), ('COBB CROSSROADS', None, '30.97970', '-85.54760'), ('COLLINS MILL', None, '30.96590', '-85.53120'), ('ELEANOR', None, '30.96400', '-85.55360'), ('ESTO', 356, '30.98680', '-85.64590'), ('GRITNEY', None, '30.83820', '-85.82840'), ('HICKORY HILL', None, '30.82140', '-85.92510'), ('HOBBS CROSSROADS', None, '30.91400', '-85.96020'), ('HOLLAND CROSSROADS', None, '30.96480', '-85.64640'), ('HOLMES CO A/P', None, '30.84430', '-85.60150'), ('HUDSON', 12765, '30.86150', '-85.94350'), ('IZAGORA', None, '30.90940', '-85.84180'), ('LEONIA', None, '30.90870', '-86.01540'), ('MILLER CROSSROADS', None, '30.94870', '-85.74180'), ('NEW HOPE', None, '30.94900', '-85.87960'), ('NOMA', 213, '30.98240', '-85.61870'), ('NOMA JUNCTION', None, '30.97130', '-85.61820'), ('PITTMAN', 192, '30.94190', '-85.81970'), ('PONCE DE LEON', 457, '30.72280', '-85.93750'), ('PROSPERITY', None, '30.85100', '-85.94700'), ('TENDIL CROSSING', None, '30.96390', '-85.57980'), ('UNDERWOOD CROSSING', None, '30.97300', '-85.58380'), ('WESTVILLE', 221, '30.77450', '-85.85180')], 'partOfState': '', 'wfo': 'TAE'}, -'NVC510': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('CARSON CITY', 52457, '39.16990', '-119.76490'), ('LAKEVIEW', None, '39.21000', '-119.80000'), ('STEWART', None, '39.12000', '-119.76000')], 'partOfState': '', 'wfo': 'REV'}, -'KSC071': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('HORACE', 143, '38.47670', '-101.79040'), ('TRIBUNE', 835, '38.47130', '-101.75400')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'KSC073': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CLIMAX', 64, '37.71930', '-96.22360'), ('EUREKA', 2914, '37.82270', '-96.28840'), ('FALL RIVER', 156, '37.60840', '-96.02850'), ('HAMILTON', 334, '37.98110', '-96.16380'), ('MADISON', 857, '38.13300', '-96.13700'), ('PIEDMONT', None, '37.62000', '-96.37000'), ('SEVERY', 359, '37.62160', '-96.22730'), ('THRALL', None, '38.02000', '-96.32000'), ('VIRGIL', 113, '37.98060', '-96.01080')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'GAC275': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BARWICK', 444, '30.89210', '-83.73960'), ('BOSTON', 1417, '30.79170', '-83.79080'), ('COOLIDGE', 552, '31.01050', '-83.86670'), ('DILLON', None, '30.89800', '-83.89360'), ('EASON', None, '30.80920', '-83.84960'), ('FIVE POINTS', None, '30.87700', '-83.79870'), ('LAKE RIVERSIDE', None, '30.95590', '-83.97010'), ('MEIGS', 1090, '31.07210', '-84.09190'), ('MERRILLVILLE', None, '30.94710', '-83.87660'), ('METCALF', None, '30.70100', '-83.98890'), ('OCHLOCKNEE', 605, '30.97520', '-84.05080'), ('PASCO', None, '30.90970', '-83.99630'), ('PAVO', 711, '30.96010', '-83.73760'), ('THOMASVILLE', 18162, '30.83910', '-83.97890'), ('THOMASVILLE MUNI A/P', None, '30.90030', '-83.88110')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAC277': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BROOKFIELD', None, '31.41780', '-83.39110'), ('CHULA', None, '31.54940', '-83.54750'), ('ELDORADO', None, '31.35800', '-83.48610'), ('EXCELSIOR', None, '31.40310', '-83.60830'), ('HARDING', None, '31.52630', '-83.42930'), ('HILLSDALE', None, '31.46630', '-83.59920'), ('OMEGA', 1340, '31.33830', '-83.59560'), ('OMEGA', 1340, '31.33830', '-83.59560'), ('PHILLIPSBURG', 887, '31.43910', '-83.52050'), ('SUNSWEET', None, '31.56820', '-83.56590'), ('TIFT A/P', None, '31.42770', '-83.49080'), ('TIFTON', 15060, '31.46540', '-83.51060'), ('TY TY', 716, '31.47200', '-83.65040'), ('UNIONVILLE', 2074, '31.43630', '-83.50920'), ('VANCEVILLE', None, '31.43160', '-83.44090')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAC051': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALABAMA JUNCTION', None, '32.07580', '-81.14030'), ('BETHESDA', None, '31.96310', '-81.09420'), ('BLOOMINGDALE', 2665, '32.13220', '-81.29920'), ('BONA BELLA', None, '32.01390', '-81.06610'), ('BURNSIDE', None, '31.94390', '-81.11080'), ('BURROUGHS', None, '31.97470', '-81.24780'), ('CENTRAL JUNCTION', None, '32.09000', '-81.16440'), ('CHATHAM CITY', None, '32.10030', '-81.15440'), ('CLEARVIEW', None, '32.09110', '-81.12060'), ('CRESTHILL', None, '31.98970', '-81.08750'), ('EDGEMERE', None, '32.03920', '-81.08780'), ('FAIRFIELD', None, '32.03250', '-81.09080'), ('FERNWOOD', None, '32.03190', '-81.06440'), ('FLEETWOOD', None, '32.03110', '-81.07330'), ('GARDEN CITY', 11289, '32.10000', '-81.17500'), ('GEORGETOWN', 973, '31.98310', '-81.22750'), ('GOLDEN ISLES', None, '32.02500', '-80.96860'), ('GORDONSTON', None, '32.05500', '-81.06640'), ('GRUBBS', None, '32.01030', '-81.18110'), ('HAMER', None, '32.09390', '-81.20780'), ('HUNTER ARMY AIRFIELD', None, '32.00970', '-81.14570'), ('ISLE OF ARMSTRONG', None, '32.03750', '-81.03970'), ('ISLE OF HOPE', 2605, '31.98170', '-81.06110'), ('LAMARVILLE', None, '32.03360', '-81.14860'), ('LEPAGEVILLE', None, '32.07170', '-81.05920'), ('LIBERTY CITY', None, '32.04750', '-81.13780'), ('LYNHURST', None, '31.99220', '-81.11170'), ('MEINHARD', None, '32.18140', '-81.21110'), ('MONTEITH', None, '32.18030', '-81.19030'), ('MOUNT HERMAN', None, '31.95330', '-81.14560'), ("O'LEARY", None, '32.21060', '-81.17610'), ('OSSABAW ISLAND', None, '31.79360', '-81.12970'), ('PARKERSBURG', None, '31.98440', '-81.05220'), ('PIN POINT', None, '31.95310', '-81.09250'), ('POOLER', 6239, '32.11530', '-81.24720'), ('PORT WENTWORTH', 3276, '32.14990', '-81.18000'), ('RICHFIELD', None, '32.04080', '-81.13280'), ('RIDGEWOOD', None, '32.03330', '-81.09860'), ('RIO VISTA', None, '31.92920', '-81.08810'), ('RIVERSIDE', 57, '32.04500', '-81.00000'), ('SANDFLY', None, '31.98940', '-81.07640'), ('SAVANNAH', 131510, '32.05000', '-81.08330'), ('SAVANNAH BEACH', None, '31.99360', '-80.84860'), ('SILK HOPE', None, '32.04280', '-81.19190'), ('SKIDAWAY ISLAND', 6914, '31.93330', '-81.05000'), ('TATUMSVILLE', None, '32.03720', '-81.11500'), ('THUNDERBOLT', 2340, '32.03330', '-81.05000'), ('TURNERS ROCK', None, '32.01310', '-81.00560'), ('TUTENS', None, '32.10500', '-81.25390'), ('TYBEE ISLAND', 3392, '32.00000', '-80.84980'), ('UNION JUNCTION', None, '32.05000', '-81.12670'), ('VERNONBURG', 138, '31.96560', '-81.12030'), ('WHEAT HILL', None, '32.10580', '-81.15640'), ('WHITE BLUFF', None, '31.98750', '-81.12890'), ('WILLIAMS', None, '32.10610', '-81.25220'), ('WILMINGTON', None, '31.98170', '-80.99720'), ('WILMINGTON ISLAND', 14213, '32.00830', '-80.98330'), ('WINDSOR FOREST', None, '31.97640', '-81.13250'), ('WINDWARD', None, '31.97440', '-81.18640'), ('WORMSLOE', None, '31.97640', '-81.06280'), ('WYMBERLY', None, '31.97580', '-81.06110')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAC053': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CUSSETA', 1196, '32.30400', '-84.77760'), ('FORT BENNING SOUTH', 11737, '32.36230', '-84.94930')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAC055': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LYERLY', 488, '34.40330', '-85.40420'), ('MENLO', 485, '34.48330', '-85.47680'), ('SUMMERVILLE', 4556, '34.47850', '-85.34900'), ('TRION', 1993, '34.54910', '-85.31060')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAC057': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BALL GROUND', 730, '34.33720', '-84.37690'), ('CANTON', 7709, '34.24900', '-84.49020'), ('HOLLY SPRINGS', 3195, '34.17220', '-84.49790'), ('NELSON', 626, '34.38150', '-84.37140'), ('WALESKA', 616, '34.31580', '-84.55010'), ('WOODSTOCK', 10050, '34.10150', '-84.51440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'KSC045': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BALDWIN CITY', 3400, '38.77500', '-95.18000'), ('CLINTON', None, '38.91170', '-95.39030'), ('CLINTON LAKE', None, '38.92000', '-95.38000'), ('EUDORA', 4307, '38.94330', '-95.09830'), ('LAWRENCE', 80098, '38.97170', '-95.23500'), ('LECOMPTON', 608, '39.04450', '-95.39450')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'WIC105': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BELOIT', 35775, '42.52370', '-89.02010'), ('CLINTON', 2162, '42.55650', '-88.86610'), ('EDGERTON', 4933, '42.83780', '-89.07260'), ('EVANSVILLE', 4039, '42.77990', '-89.29870'), ('FOOTVILLE', 788, '42.67150', '-89.20890'), ('JANESVILLE', 59498, '42.68460', '-89.01560'), ('MILTON', 5132, '42.77890', '-88.94940'), ('ORFORDVILLE', 1272, '42.62920', '-89.25730')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WIC039': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRANDON', 912, '43.73740', '-88.78380'), ('CAMPBELLSPORT', 1913, '43.59940', '-88.28130'), ('EDEN', 687, '43.69240', '-88.36280'), ('FAIRWATER', 350, '43.74110', '-88.86880'), ('FOND DU LAC', 42203, '43.77330', '-88.44550'), ('MOUNT CALVARY', 956, '43.82650', '-88.24680'), ('NORTH FOND DU LAC', 4557, '43.80900', '-88.48330'), ('OAKFIELD', 1012, '43.68460', '-88.54690'), ('RIPON', 6828, '43.84580', '-88.84160'), ('ROSENDALE', 923, '43.80830', '-88.67580'), ('ST. CLOUD', 497, '43.82260', '-88.16730')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MKX'}, -'MSC125': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ANGUILLA', 907, '32.97210', '-90.82820'), ('CARY', 427, '32.80470', '-90.92590'), ('ROLLING FORK', 2486, '32.90690', '-90.87700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'JAN'}, -'MSC127': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BRAXTON', 181, '32.02470', '-89.97220'), ("D'LO", 394, '31.98650', '-89.90100'), ('MAGEE', 4200, '31.87120', '-89.73120'), ('MENDENHALL', 2555, '31.96070', '-89.86940')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSC121': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BRANDON', 16436, '32.28050', '-90.00380'), ('FLORENCE', 2396, '32.15480', '-90.12840'), ('FLOWOOD', 4750, '32.32320', '-90.10570'), ('PEARL', 21961, '32.27180', '-90.10520'), ('PELAHATCHIE', 1461, '32.31540', '-89.80110'), ('PUCKETT', 354, '32.08440', '-89.77840'), ('RICHLAND', 6027, '32.23320', '-90.16500')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSC123': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('FOREST', 5987, '32.35690', '-89.47400'), ('LAKE', 408, '32.34310', '-89.32740'), ('MORTON', 3482, '32.35550', '-89.65640'), ('SEBASTOPOL', 233, '32.56910', '-89.33380')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSC129': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MIZE', 285, '31.86720', '-89.55430'), ('POLKVILLE', 132, '32.19150', '-89.69250'), ('RALEIGH', 1255, '32.03040', '-89.52360'), ('SYLVARENA', 120, '32.01300', '-89.38040'), ('TAYLORSVILLE', 1341, '31.83100', '-89.43200')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'GAC183': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AIMAR', None, '31.75280', '-81.67170'), ('BEARDS CREEK', None, '31.86610', '-81.88560'), ('DONALD', None, '31.82140', '-81.85030'), ('ELIM', None, '31.79470', '-81.67470'), ('LUDOWICI', 1440, '31.70780', '-81.74250'), ('NOBLE', None, '31.84640', '-81.92920'), ('WEFANIE', None, '31.77060', '-81.81640')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAC181': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LINCOLNTON', 1595, '33.79180', '-82.47930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'GAC187': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAHLONEGA', 3638, '34.53680', '-83.98460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAC185': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BARRETTS', None, '31.00130', '-83.19940'), ('BEMISS', None, '30.93280', '-83.24150'), ('BRIGGSTON', None, '30.72010', '-83.30640'), ('CLYATTVILLE', None, '30.69270', '-83.31610'), ('DASHER', 834, '30.74700', '-83.21840'), ('DELMAR', None, '30.88390', '-83.13790'), ('GREENS CROSSING', None, '30.91490', '-83.05730'), ('HAHIRA', 1626, '30.99030', '-83.37280'), ('HIGHLAND HEIGHTS', None, '30.87850', '-83.27470'), ('INDIANOLA', None, '30.86320', '-83.18950'), ('KINDERLOU', None, '30.80150', '-83.36590'), ('LAKE PARK', 549, '30.68460', '-83.18780'), ('LANGDALE YARD', None, '30.82900', '-83.26110'), ('LITTLE MIAMI', None, '30.81270', '-83.26090'), ('MELROSE', None, '30.63930', '-83.13620'), ('MINEOLA', None, '30.90620', '-83.34390'), ('MONKS CROSSING', None, '30.89840', '-83.10310'), ('MOODY AFB', 993, '30.97400', '-83.20410'), ('NAYLOR', None, '30.90670', '-83.07900'), ('OUSLEY', None, '30.80550', '-83.43360'), ('RAMERTON', None, '30.84260', '-83.31060'), ('REMERTON', 847, '30.84380', '-83.30940'), ('SHILOH', 423, '30.93880', '-83.40790'), ('TILLMAN', None, '30.92260', '-83.34990'), ('TROUPVILLE', None, '30.84760', '-83.33790'), ('TWIN LAKES', None, '30.69390', '-83.20920'), ('VALDOSTA', 43724, '30.84940', '-83.27840'), ('VALDOSTA REGIONAL A/P', None, '30.78220', '-83.27670'), ('WEST VALDOSTA', None, '30.81800', '-83.31670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'ILC099': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CEDAR POINT', 262, '41.26470', '-89.12520'), ('DANA', 171, '40.95630', '-88.94980'), ('EARLVILLE', 1778, '41.58850', '-88.92390'), ('GRAND RIDGE', 546, '41.23620', '-88.83150'), ('KANGLEY', 287, '41.14760', '-88.87260'), ('LA SALLE', 9796, '41.34000', '-89.09350'), ('LELAND', 970, '41.61470', '-88.79800'), ('LEONORE', 110, '41.18940', '-88.98260'), ('LOSTANT', 486, '41.14040', '-89.06110'), ('MARSEILLES', 4655, '41.32780', '-88.68780'), ('MENDOTA', 7272, '41.55090', '-89.12010'), ('NAPLATE', 523, '41.33130', '-88.87820'), ('NORTH UTICA', 977, '41.33980', '-89.01130'), ('OGLESBY', 3647, '41.29450', '-89.06450'), ('OTTAWA', 18307, '41.35020', '-88.83940'), ('PERU', 9835, '41.34170', '-89.12830'), ('RANSOM', 409, '41.15810', '-88.65530'), ('RUTLAND', 354, '40.98410', '-89.03930'), ('SENECA', 2053, '41.30340', '-88.61350'), ('SHERIDAN', 2411, '41.52590', '-88.68670'), ('SOMONAUK', 1295, '41.63230', '-88.68350'), ('STREATOR', 14190, '41.12530', '-88.83150'), ('TONICA', 685, '41.21410', '-89.06780'), ('TROY GROVE', 305, '41.46540', '-89.08110'), ('WENONA', 1065, '41.05300', '-89.05330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'GAC189': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DEARING', 441, '33.41520', '-82.38440'), ('THOMSON', 6828, '33.46610', '-82.50000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'WYC023': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('AFTON', 1818, '42.72630', '-110.92840'), ('ALPINE', 550, '43.16080', '-111.01360'), ('AUBURN', 276, '42.79000', '-111.00000'), ('BEDFORD', 169, '42.90000', '-110.93000'), ('COKEVILLE', 506, '42.08320', '-110.95500'), ('DIAMONDVILLE', 716, '41.77770', '-110.53640'), ('ETNA', 123, '43.03000', '-111.01000'), ('FAIRVIEW', 277, '42.69000', '-110.98000'), ('FOSSIL BUTTE NATIONAL MON', None, '41.86000', '-110.76000'), ('GROVER', 137, '42.69000', '-110.93000'), ('KEMMERER', 2651, '41.78220', '-110.55140'), ('LA BARGE', 431, '42.26120', '-110.19630'), ('OPAL', 102, '41.77000', '-110.32080'), ('SAGE JUNCTION', None, '41.82000', '-110.98000'), ('SMOOT', 182, '42.62000', '-110.92000'), ('THAYNE', 341, '42.91980', '-111.00110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RIW'}, -'TXC039': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALVIN', 21413, '29.43210', '-95.24600'), ('ANGLETON', 18130, '29.16690', '-95.42760'), ("BAILEY'S PRAIRIE", 694, '29.15340', '-95.49430'), ('BONNEY', 384, '29.30170', '-95.45850'), ('BRAZORIA', 2787, '29.04710', '-95.56820'), ('BROOKSIDE VILLAGE', 1960, '29.58940', '-95.31630'), ('CLUTE', 10424, '29.02460', '-95.39750'), ('DANBURY', 1611, '29.22660', '-95.34570'), ('FREEPORT', 12708, '28.95140', '-95.36430'), ('HILLCREST', 722, '29.39210', '-95.22260'), ('HOLIDAY LAKES', 1095, '29.20880', '-95.51420'), ('IOWA COLONY', 804, '29.44270', '-95.41540'), ('JONES CREEK', 2130, '28.97460', '-95.46780'), ('LAKE JACKSON', 26386, '29.04190', '-95.44630'), ('LIVERPOOL', 404, '29.29900', '-95.27730'), ('MANVEL', 3046, '29.48380', '-95.35960'), ('OYSTER CREEK', 1192, '28.99740', '-95.33050'), ('PEARLAND', 37640, '29.55560', '-95.27550'), ('QUINTANA', 38, '28.93050', '-95.31580'), ('RICHWOOD', 3012, '29.05800', '-95.40750'), ('SURFSIDE BEACH', 763, '28.95380', '-95.28220'), ('SWEENY', 3624, '29.04530', '-95.69930'), ('WEST COLUMBIA', 4255, '29.14150', '-95.64810'), ('WILD PEACH VILLAGE', 2498, '29.08340', '-95.63370')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'WVC091': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('FLEMINGTON', 287, '39.26730', '-80.12820'), ('GRAFTON', 5489, '39.34060', '-80.01720'), ('TYGART LAKE STATE PARK', None, '39.29810', '-80.03460')], 'partOfState': '', 'wfo': 'RLX'}, -'TXC033': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GAIL', None, '32.77000', '-101.45000'), ('LAKE J.B. THOMAS', None, '32.58580', '-101.25190'), ('MESQUITE', 124523, '32.87000', '-101.63000')], 'partOfState': '', 'wfo': 'MAF'}, -'OHC049': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEXLEY', 13203, '39.96460', '-82.93450'), ('BLACKLICK ESTATES', 9518, '39.90490', '-82.86450'), ('BRICE', 70, '39.91660', '-82.83200'), ('CANAL WINCHESTER', 4478, '39.84690', '-82.82140'), ('COLUMBUS', 711470, '39.98890', '-82.98740'), ('DUBLIN', 31392, '40.11840', '-83.13290'), ('GAHANNA', 32636, '40.02500', '-82.87500'), ('GRANDVIEW HEIGHTS', 6695, '39.97950', '-83.03990'), ('GROVE CITY', 27075, '39.87310', '-83.07470'), ('GROVEPORT', 3865, '39.86160', '-82.89730'), ('HARRISBURG', 332, '39.81080', '-83.17150'), ('HILLIARD', 24230, '40.03800', '-83.14260'), ('HUBER RIDGE', 4883, '40.09020', '-82.91840'), ('LAKE DARBY', 3727, '39.95730', '-83.22890'), ('LINCOLN VILLAGE', 9482, '39.95470', '-83.13090'), ('LOCKBOURNE', 280, '39.80900', '-82.97050'), ('MARBLE CLIFF', 646, '39.98510', '-83.06050'), ('MINERVA PARK', 1288, '40.07760', '-82.94360'), ('NEW ALBANY', 3711, '40.07960', '-82.80870'), ('NEW ROME', 60, '39.95160', '-83.14130'), ('OBETZ', 3977, '39.87670', '-82.94060'), ('ORIENT', 269, '39.80560', '-83.15150'), ('REYNOLDSBURG', 32069, '39.95550', '-82.79920'), ('RIVERLEA', 499, '40.08040', '-83.02580'), ('UPPER ARLINGTON', 33686, '40.02660', '-83.07050'), ('URBANCREST', 868, '39.89940', '-83.08900'), ('VALLEYVIEW', 601, '39.96480', '-83.07290'), ('WESTERVILLE', 35318, '40.12120', '-82.91760'), ('WHITEHALL', 19201, '39.96860', '-82.88370'), ('WORTHINGTON', 14125, '40.09770', '-83.02090')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'TXC031': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLANCO', 1505, '30.09840', '-98.42230'), ('CYPRESS MILL', None, '30.40000', '-98.25000'), ('JOHNSON CITY', 1191, '30.27430', '-98.40650'), ('PEDERNALES FALLS STATE PA', None, '30.31000', '-98.25000'), ('ROUND MOUNTAIN', 111, '30.43610', '-98.35380'), ('TWIN SISTERS', None, '30.00000', '-98.40000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC037': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DE KALB', 1769, '33.50720', '-94.61650'), ('HOOKS', 2973, '33.46930', '-94.28500'), ('LEARY', 555, '33.47050', '-94.21210'), ('MAUD', 1028, '33.33040', '-94.34470'), ('NASH', 2169, '33.44350', '-94.12940'), ('NEW BOSTON', 4808, '33.46030', '-94.41850'), ('REDWATER', 872, '33.35820', '-94.25440'), ('TEXARKANA', 34782, '33.44100', '-94.07240'), ('WAKE VILLAGE', 5129, '33.42330', '-94.11240')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXC035': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLIFTON', 3542, '31.78130', '-97.58010'), ('IREDELL', 360, '31.98620', '-97.87110'), ('MERIDIAN', 1491, '31.92400', '-97.64720'), ('MORGAN', 485, '32.01570', '-97.60570'), ('VALLEY MILLS', 1123, '31.65840', '-97.47180'), ('WALNUT SPRINGS', 755, '32.05700', '-97.75150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'VAC167': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CASTLEWOOD', 2036, '36.87830', '-82.28720'), ('CLEVELAND', 148, '36.94360', '-82.15250'), ('COLLINGWOOD', None, '36.73580', '-82.32670'), ('DYE', None, '37.06670', '-81.92670'), ('HANSONVILLE', None, '36.82110', '-82.14860'), ('HONAKER', 945, '37.01620', '-81.97720'), ('LEBANON', 3273, '36.89940', '-82.07850'), ('ROSEDALE', None, '36.95610', '-81.93310'), ('ST. PAUL', 1000, '36.90550', '-82.31030')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'VAC165': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BRIDGEWATER', 5203, '38.38490', '-78.96900'), ('BROADWAY', 2192, '38.60820', '-78.79590'), ('CHERRY GROVE', None, '38.58670', '-78.87170'), ('CLOVER HILL', None, '38.45190', '-79.03030'), ('CRIDERS', None, '38.75140', '-79.00440'), ('DALE ENTERPRISE', None, '38.45440', '-78.93970'), ('ELKTON', 2042, '38.41310', '-78.61710'), ('GROTTOES', 2114, '38.26810', '-78.82460'), ('LINVILLE', None, '38.52030', '-78.83780'), ('MASSANUTTEN', 1945, '38.40960', '-78.73800'), ('MONTEVIDEO', None, '38.36440', '-78.76970'), ('MOUNT CRAWFORD', 254, '38.35690', '-78.94100'), ('RAWLEY SPRINGS', None, '38.50530', '-79.05670'), ('ROCKY BAR', None, '38.34360', '-78.70190'), ('SPARKLING SPRINGS', None, '38.55140', '-78.95190'), ('SWIFT RUN', None, '38.36830', '-78.58110'), ('TIMBERVILLE', 1739, '38.63600', '-78.77240'), ('TUNIS', None, '38.70280', '-78.86750'), ('YANKEETOWN', None, '38.68470', '-78.94810')], 'partOfState': '', 'wfo': 'LWX'}, -'OHC153': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AKRON', 217074, '41.08040', '-81.52150'), ('BARBERTON', 27899, '41.01190', '-81.60570'), ('BOSTON HEIGHTS', 1186, '41.25570', '-81.50460'), ('CLINTON', 1337, '40.92910', '-81.63110'), ('CUYAHOGA FALLS', 49374, '41.16900', '-81.52260'), ('FAIRLAWN', 7307, '41.12490', '-81.62130'), ('GREEN', 22817, '40.94770', '-81.48650'), ('GREEN', 22817, '40.93630', '-81.43660'), ('HUDSON', 22439, '41.24470', '-81.45120'), ('LAKEMORE', 2561, '41.02130', '-81.42770'), ('MACEDONIA', 9224, '41.31100', '-81.49730'), ('MOGADORE', 3893, '41.05040', '-81.40060'), ('MONTROSE-GHENT', 5261, '41.15730', '-81.64250'), ('MUNROE FALLS', 5314, '41.13970', '-81.43630'), ('NORTHFIELD', 3827, '41.34360', '-81.52970'), ('NORTON', 11523, '41.02880', '-81.64570'), ('PENINSULA', 602, '41.23680', '-81.55300'), ('PIGEON CREEK', 945, '41.11100', '-81.67320'), ('PORTAGE LAKES', 9870, '40.98710', '-81.53660'), ('REMINDERVILLE', 2347, '41.32740', '-81.39730'), ('RICHFIELD', 3286, '41.23170', '-81.63730'), ('SILVER LAKE', 3019, '41.15660', '-81.45950'), ('STOW', 32139, '41.17660', '-81.43640'), ('TALLMADGE', 16390, '41.10330', '-81.42320'), ('TWINSBURG', 17006, '41.32420', '-81.45290')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'KYC199': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALPINE', None, '36.92220', '-84.51900'), ('BANDY', None, '37.29330', '-84.50360'), ('BENT', None, '37.11190', '-84.44470'), ('BOBTOWN', None, '37.21450', '-84.53820'), ('BRONSTON', None, '36.98590', '-84.61890'), ('BURNSIDE', 637, '36.98730', '-84.60090'), ('CAINS STORE', None, '37.13250', '-84.85060'), ('DABNEY', None, '37.18390', '-84.55000'), ('DYKES', None, '37.06860', '-84.43600'), ('ELIHU', None, '37.04520', '-84.59120'), ('EUBANK', 358, '37.27930', '-84.65490'), ('FAUBUSH', None, '37.06560', '-84.82660'), ('FERGUSON', 881, '37.06670', '-84.59450'), ('GENERAL BURNSIDE STATE PA', None, '36.97450', '-84.60220'), ('GRADE', None, '37.07180', '-84.46150'), ('HOGUE', None, '37.16330', '-84.70970'), ('MAGNUM', None, '37.15220', '-84.83510'), ('MOUNT VICTORY', None, '37.02920', '-84.38640'), ('NANCY', None, '37.07250', '-84.75090'), ('NAOMI', None, '37.00890', '-84.79190'), ('POINTER', None, '37.13280', '-84.76730'), ('PULASKI', None, '37.20890', '-84.63890'), ('PULASKI COUNTY PARK', None, '37.06520', '-84.70750'), ('QUINTON', None, '36.95320', '-84.62670'), ('RUTH', None, '37.07620', '-84.52470'), ('SCIENCE HILL', 634, '37.17600', '-84.63640'), ('SHOPVILLE', None, '37.15860', '-84.48000'), ('SLOANS VALLEY', None, '36.93830', '-84.53630'), ('SOMERSET', 11352, '37.08230', '-84.60980'), ('SOMERSET PULASKI COUNTY A', None, '37.05540', '-84.61360'), ('STAB', None, '37.15140', '-84.75090'), ('TATEVILLE', None, '36.96390', '-84.58180'), ('TRIMBLE', None, '37.01010', '-84.73680'), ('VALLEY OAK', None, '37.18920', '-84.47220'), ('WOODSTOCK', None, '37.26130', '-84.51670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'WYC027': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('KEELINE', None, '42.75000', '-104.75000'), ('LANCE CREEK', 51, '43.02000', '-104.64000'), ('LUSK', 1447, '42.76070', '-104.45360'), ('MANVILLE', 101, '42.77950', '-104.61690'), ('REDBIRD', None, '43.24000', '-104.27000'), ('VAN TASSELL', 18, '42.66360', '-104.09070')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CYS'}, -'VAC161': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BENT MOUNTAIN', None, '37.15000', '-80.11670'), ('BRADSHAW', None, '37.30000', '-80.23330'), ('CATAWBA', None, '37.38330', '-80.11670'), ('CAVE SPRING', 24941, '37.22380', '-80.00760'), ('GLENVAR', None, '37.26670', '-80.15000'), ('HOLLINS', 14309, '37.34290', '-79.95350'), ('POAGES MILL', None, '37.20000', '-80.05000'), ('ROANOKE AIRPORT', None, '37.33330', '-79.98330'), ('VINTON', 7782, '37.27310', '-79.88840')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'KYC195': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARGO', None, '37.48120', '-82.06460'), ('ASHCAMP', None, '37.26600', '-82.43460'), ('BELCHER', None, '37.34180', '-82.37400'), ('BELFRY', None, '37.62350', '-82.26760'), ('BIGGS', None, '37.41960', '-82.26670'), ('BOARD TREE', None, '37.53830', '-82.16210'), ('BOLDMAN', None, '37.52970', '-82.61190'), ('CANADA', None, '37.60770', '-82.32570'), ('CEDARVILLE', 52, '37.31410', '-82.35830'), ('CHLOE', None, '37.45180', '-82.47640'), ('COAL RUN', None, '37.51290', '-82.55870'), ('COLEMAN', None, '37.48660', '-82.18640'), ('CONDER', None, '37.67460', '-82.37720'), ('DORTON', None, '37.27670', '-82.57920'), ('ELKHORN CITY', 1060, '37.30290', '-82.34800'), ('FEDSCREEK', None, '37.40160', '-82.24610'), ('FISHTRAP LAKE', None, '37.42510', '-82.36960'), ('FOREST HILLS', 494, '37.64200', '-82.28040'), ('GARDEN VILLAGE', None, '37.42080', '-82.46430'), ('GULNARE', None, '37.62800', '-82.54970'), ('HARDY', None, '37.61580', '-82.24200'), ('HATFIELD STATION', None, '37.72540', '-82.37970'), ('HEENAN', None, '37.66860', '-82.48760'), ('HEISEY', None, '37.66470', '-82.38720'), ('HUDDY', None, '37.59800', '-82.27520'), ('JAMBOREE', None, '37.50600', '-82.13460'), ('JARAD', None, '37.66380', '-82.48100'), ('JONANCY', None, '37.31510', '-82.58430'), ('KIMPER', None, '37.49750', '-82.34990'), ('LOOKOUT', None, '37.31350', '-82.46750'), ('MAJESTIC', None, '37.53650', '-82.10050'), ('MARROWBONE', None, '37.36770', '-82.41280'), ('MCANDREWS', None, '37.56820', '-82.26780'), ('MCCOMBS', None, '37.65390', '-82.58360'), ('META', None, '37.57100', '-82.43710'), ('MOUTHCARD', None, '37.38230', '-82.25480'), ('MYRA', None, '37.28970', '-82.60000'), ('PAW PAW', None, '37.43920', '-82.11090'), ('PHELPS', 1053, '37.50910', '-82.16010'), ('PHYLLIS', None, '37.44290', '-82.33450'), ('PIKEVILLE', 6295, '37.47720', '-82.51380'), ('PISO', None, '37.63610', '-82.46600'), ('RACCOON', None, '37.49130', '-82.44030'), ('ROCKHOUSE', None, '37.32830', '-82.45340'), ('RURAL', None, '37.70450', '-82.36060'), ('SHELBIANA', None, '37.42890', '-82.49290'), ('SHELBY GAP', None, '37.21340', '-82.55660'), ('SIDNEY', None, '37.62120', '-82.35480'), ('SPEIGHT', None, '37.27540', '-82.68150'), ('TOONERVILLE', None, '37.36810', '-82.23060'), ('TURKEY CREEK', None, '37.67090', '-82.30670'), ('VARNEY', None, '37.63840', '-82.42180'), ('VIRGIE', None, '37.33410', '-82.57920'), ('WHITEPOST', None, '37.72850', '-82.34520'), ('WOODMAN', None, '37.51950', '-82.04920'), ('ZEBULON', None, '37.51590', '-82.47440')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC197': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BOWEN', None, '37.84110', '-83.77190'), ('CAT CREEK', None, '37.84500', '-83.80560'), ('CLAY CITY', 1303, '37.86310', '-83.92840'), ('FURNACE', None, '37.76210', '-83.83160'), ('HARDWICK', None, '37.77780', '-83.94090'), ('HAYSTACK', None, '37.84760', '-83.67900'), ('KNOWLTON', None, '37.78610', '-83.83750'), ('LOMBARD', None, '37.81780', '-83.74680'), ('NADA', None, '37.81460', '-83.71900'), ('NATURAL BRIDGE STATE RESO', None, '37.77520', '-83.68590'), ('PILOT', None, '37.74080', '-83.76870'), ('POWELL VALLEY', None, '37.86500', '-83.94780'), ('ROGERS CHAPEL', None, '37.77420', '-83.78310'), ('ROSSLYN', None, '37.84060', '-83.81220'), ('SLADE', None, '37.79050', '-83.70600'), ('STANTON', 3029, '37.84690', '-83.85720'), ('VAUGHNS MILL', None, '37.81360', '-83.91670'), ('VIRDEN', None, '37.88190', '-83.95500'), ('WALTERSVILLE', None, '37.86470', '-83.93440'), ('WESTBEND', None, '37.90580', '-83.96920')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYC191': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BUTLER', 613, '38.78790', '-84.37070'), ('FALMOUTH', 2058, '38.67380', '-84.33430')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYC193': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARY', None, '37.37860', '-83.14670'), ('AVAWAM', None, '37.22230', '-83.27860'), ('BUCKHORN', 144, '37.34510', '-83.47160'), ('BUCKHORN LAKE STATE RESOR', None, '37.30490', '-83.44000'), ('BULAN', None, '37.29810', '-83.16670'), ('CHAVIES', None, '37.34570', '-83.35370'), ('CORNETTSVILLE', None, '37.13160', '-83.07930'), ('DAISY', None, '37.11680', '-83.09140'), ('DELPHIA', None, '37.02900', '-83.08670'), ('DIABLOCK', None, '37.22830', '-83.17220'), ('DICE', None, '37.36280', '-83.22750'), ('DWARF', None, '37.33710', '-83.12860'), ('GAYS CREEK', None, '37.33690', '-83.40660'), ('HAZARD', 4806, '37.25300', '-83.19530'), ('JEFF', None, '37.20590', '-83.13520'), ('KRYPTON', None, '37.31090', '-83.33900'), ('LAMONT', None, '37.35080', '-83.31350'), ('LEATHERWOOD', None, '37.04040', '-83.17080'), ('ROWDY', None, '37.41500', '-83.20600'), ('SAUL', None, '37.27800', '-83.49380'), ('SLEMP', None, '37.07890', '-83.11140'), ('VICCO', 318, '37.21610', '-83.06120'), ('VIPER', None, '37.18180', '-83.14870')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'OHC155': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BOLINDALE', 2489, '41.20730', '-80.77780'), ('BROOKFIELD CENTER', 1288, '41.24050', '-80.55820'), ('CHAMPION HEIGHTS', 4727, '41.28810', '-80.84880'), ('CHURCHILL', 2601, '41.17360', '-80.66730'), ('CORTLAND', 6830, '41.33150', '-80.72340'), ('GIRARD', 10902, '41.15460', '-80.69750'), ('HOWLAND CENTER', 6481, '41.25120', '-80.74570'), ('HUBBARD', 8284, '41.16000', '-80.56960'), ('LORDSTOWN', 3633, '41.16540', '-80.85440'), ('MCDONALD', 3481, '41.16420', '-80.72380'), ('MINERAL RIDGE', 3900, '41.13910', '-80.76730'), ('NEWTON FALLS', 5002, '41.18890', '-80.96980'), ('NILES', 20932, '41.18780', '-80.75310'), ('ORANGEVILLE', 189, '41.34330', '-80.52920'), ('SOUTH CANAL', 1346, '41.17730', '-80.98680'), ('TURNPIKE INTERCHANGE', None, '41.21640', '-80.93440'), ('VIENNA', None, '41.25510', '-80.67710'), ('WARREN', 46832, '41.23810', '-80.81690'), ('WEST FARMINGTON', 519, '41.39100', '-80.97350'), ('WEST HILL', 2523, '41.23090', '-80.52740'), ('YANKEE LAKE', 99, '41.27140', '-80.57070')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'WIC037': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AURORA', None, '45.78000', '-88.09000'), ('COMMONWEALTH', None, '45.91000', '-88.23000'), ('FENCE', None, '45.75000', '-88.43000'), ('FLORENCE', None, '45.93000', '-88.25000'), ('LONG LAKE', None, '45.83000', '-88.66000'), ('SPREAD EAGLE', None, '45.88000', '-88.13000'), ('TIPLER', None, '45.91000', '-88.63000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'NYC123': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BELLONA STN', None, '42.75000', '-77.03330'), ('BENTON', None, '42.73330', '-77.06670'), ('BLUFF POINT', None, '42.61670', '-77.11670'), ('BRANCHPORT', None, '42.60000', '-77.15000'), ('CROSBY', None, '42.55000', '-77.10000'), ('DRESDEN', 307, '42.68310', '-76.95690'), ('DUNDEE', 1690, '42.52350', '-76.97820'), ('FERGUSON CORNERS', None, '42.75000', '-77.10000'), ('FRIEND', None, '42.66670', '-77.18330'), ('GLENORA', None, '42.48330', '-76.91670'), ('GUYANOGA', None, '42.61670', '-77.16670'), ('HIMROD', None, '42.58330', '-76.95000'), ('ITALY', None, '42.61670', '-77.28330'), ('ITALY HILL', None, '42.60000', '-77.25000'), ('KEUKA PARK', None, '42.61670', '-77.08330'), ('LAKEMONT', None, '42.51670', '-76.91670'), ('MAYS MILLS', None, '42.66670', '-76.98330'), ('MIDDLESEX', None, '42.70000', '-77.26670'), ('MILO CENTER', None, '42.66670', '-77.00000'), ('MILO MILLS', None, '42.66670', '-77.03330'), ('PENN YAN', 5219, '42.66120', '-77.05490'), ('PORTER CORNER', None, '42.55000', '-77.03330'), ('POTTER', None, '42.70000', '-77.20000'), ('ROCK STREAM', None, '42.46670', '-76.91670'), ('RUSHVILLE', 621, '42.76060', '-77.22750'), ('STARKEY', None, '42.53330', '-76.91670'), ('VINE VALLEY', None, '42.71670', '-77.31670'), ('YATESVILLE', None, '42.66670', '-77.13330')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYC121': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARCADE', 2026, '42.53340', '-78.43320'), ('ATTICA', 2597, '42.86550', '-78.28010'), ('CASTILE', 1051, '42.63100', '-78.05260'), ('GAINESVILLE', 304, '42.64080', '-78.13520'), ('PERRY', 3945, '42.71730', '-78.00670'), ('PIKE', 382, '42.55590', '-78.15420'), ('SILVER SPRINGS', 844, '42.66010', '-78.08470'), ('WARSAW', 3814, '42.74140', '-78.14100'), ('WYOMING', 513, '42.82510', '-78.08550')], 'partOfState': '', 'wfo': 'BUF'}, -'MNC153': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BERTHA', 470, '46.26600', '-95.06310'), ('BROWERVILLE', 735, '46.08570', '-94.86810'), ('BURTRUM', 146, '45.86590', '-94.68720'), ('CLARISSA', 609, '46.12920', '-94.94940'), ('EAGLE BEND', 595, '46.16500', '-95.03400'), ('GREY EAGLE', 335, '45.82500', '-94.74860'), ('HEWITT', 267, '46.32290', '-95.08790'), ('LONG PRAIRIE', 3040, '45.97960', '-94.86300'), ('STAPLES', 3104, '46.36400', '-94.80340'), ('WEST UNION', 87, '45.80140', '-95.08330')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'TNC149': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('EAGLEVILLE', 464, '35.74010', '-86.65360'), ('LA VERGNE', 18687, '35.99930', '-86.57320'), ('MURFREESBORO', 68816, '35.85340', '-86.39460'), ('SMYRNA', 25569, '35.98260', '-86.51720'), ('WALTERHILL', 1523, '35.96280', '-86.37920')], 'partOfState': '', 'wfo': 'OHX'}, -'OKC053': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('DEER CREEK', 147, '36.80630', '-97.51880'), ('JEFFERSON', 37, '36.71910', '-97.79020'), ('LAMONT', 465, '36.69110', '-97.55610'), ('MANCHESTER', 104, '36.99440', '-98.03500'), ('MEDFORD', 1172, '36.80430', '-97.73790'), ('NASH', 224, '36.66540', '-98.05210'), ('POND CREEK', 896, '36.66750', '-97.80170'), ('RENFROW', 16, '36.92420', '-97.65640'), ('SALT FORK', None, '36.63000', '-97.58000'), ('WAKITA', 420, '36.88180', '-97.92340')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'NDC059': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALMONT', 89, '46.72780', '-101.50280'), ('FLASHER', 285, '46.45210', '-101.23200'), ('FORT RICE', None, '46.51670', '-100.58330'), ('GLEN ULLIN', 865, '46.81240', '-101.83210'), ('HEBRON', 803, '46.90280', '-102.04410'), ('HUFF', None, '46.61670', '-100.65000'), ('MANDAN', 16718, '46.82930', '-100.88780'), ('NEW SALEM', 938, '46.84280', '-101.41740'), ('ST. ANTHONY', None, '46.61670', '-100.91670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'OKC057': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('GOULD', 206, '34.66910', '-99.77380'), ('HOLLIS', 2264, '34.68970', '-99.91540'), ('MADGE', None, '34.90000', '-99.95000'), ('MCKNIGHT', None, '34.77000', '-99.92000'), ('MCQUEEN', None, '34.67000', '-99.70000'), ('VINSON', None, '34.90000', '-99.87000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OKC055': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BRINKMAN', None, '35.02000', '-99.52000'), ('GRANITE', 1844, '34.96290', '-99.37830'), ('HESTER', None, '34.80000', '-99.43000'), ('MANGUM', 2924, '34.87880', '-99.50320'), ('REED', None, '34.90000', '-99.68000'), ('WILLOW', 114, '35.05250', '-99.50920')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'NDC053': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALEXANDER', 217, '47.84100', '-103.64260'), ('ARNEGARD', 105, '47.80810', '-103.43810'), ('CARTWRIGHT', None, '47.86670', '-103.93330'), ('CHARLSON', None, '48.06670', '-102.86670'), ('GRASSY BUTTE', None, '47.40000', '-103.25000'), ('KEENE', None, '47.93330', '-102.95000'), ('MANDAREE', 558, '47.73840', '-102.67670'), ('RAWSON', 6, '47.82000', '-103.54070'), ('TRNP NORTH UNIT', None, '47.59720', '-103.26080'), ('WATFORD CITY', 1435, '47.80230', '-103.27140')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'OKC059': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BUFFALO', 1200, '36.83490', '-99.62760'), ('LAVERNE', 1097, '36.70610', '-99.89670'), ('MAY', 33, '36.61650', '-99.74900'), ('ROSSTON', 66, '36.81220', '-99.92990'), ('SELMAN', None, '36.80000', '-99.48000')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'NDC057': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BEULAH', 3152, '47.26690', '-101.77340'), ('GOLDEN VALLEY', 183, '47.29040', '-102.06470'), ('HAZEN', 2457, '47.29950', '-101.62480'), ('PICK CITY', 166, '47.51190', '-101.45610'), ('STANTON', 345, '47.31850', '-101.38200'), ('ZAP', 231, '47.28480', '-101.92190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDC055': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BENEDICT', 53, '47.83050', '-101.08370'), ('BUTTE', 92, '47.83740', '-100.66590'), ('COLEHARBOR', 106, '47.54240', '-101.22120'), ('EMMET', None, '47.65000', '-101.65000'), ('GARRISON', 1318, '47.65370', '-101.42340'), ('MAX', 278, '47.81970', '-101.29090'), ('MERCER', 86, '47.49100', '-100.71020'), ('RAUB', None, '47.75000', '-102.05000'), ('RIVERDALE', 273, '47.49660', '-101.36550'), ('ROSEGLEN', None, '47.75000', '-101.83330'), ('RUSO', 6, '47.83650', '-100.93350'), ('TURTLE LAKE', 580, '47.52150', '-100.89030'), ('UNDERWOOD', 812, '47.45430', '-101.14120'), ('WASHBURN', 1389, '47.29130', '-101.02720'), ('WHITE SHIELD', 348, '47.66130', '-101.84480'), ('WILTON', 807, '47.15870', '-100.78400')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'TXC147': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAILEY', 213, '33.43260', '-96.16450'), ('BONHAM', 9990, '33.58930', '-96.18000'), ('DODD CITY', 419, '33.57580', '-96.07470'), ('ECTOR', 600, '33.57900', '-96.27290'), ('HONEY GROVE', 1746, '33.58340', '-95.90990'), ('LADONIA', 667, '33.42780', '-95.94530'), ('LEONARD', 1846, '33.38110', '-96.24650'), ('SAVOY', 850, '33.59950', '-96.36920'), ('TRENTON', 662, '33.42950', '-96.33990'), ('WINDOM', 245, '33.56440', '-95.99850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC145': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GOLINDA', 423, '31.37040', '-97.08110'), ('LOTT', 724, '31.20600', '-97.03340'), ('MARLIN', 6628, '31.30900', '-96.89300'), ('ROSEBUD', 1493, '31.07500', '-96.97530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC143': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DUBLIN', 3754, '32.08660', '-98.33890'), ('STEPHENVILLE', 14921, '32.21910', '-98.21530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC141': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANTHONY', 3850, '31.99350', '-106.59160'), ('CANUTILLO', 5129, '31.91870', '-106.59940'), ('CLINT', 980, '31.59010', '-106.22840'), ('EL PASO', 563662, '31.84930', '-106.43750'), ('FABENS', 8043, '31.50800', '-106.15380'), ('FORT BLISS', 8264, '31.80750', '-106.42170'), ('HORIZON CITY', 5233, '31.67010', '-106.19130'), ('MONTANA VISTA', None, '31.84160', '-106.17530'), ('SAN ELIZARIO', 11046, '31.57840', '-106.26210'), ('SOCORRO', 27152, '31.63870', '-106.26970'), ('SPARKS', 2974, '31.67260', '-106.23930'), ('TORNILLO', 1609, '31.44530', '-106.08780'), ('VINTON', 1892, '31.96170', '-106.59570'), ('WESTWAY', 3829, '31.95870', '-106.57760')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'TXC149': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARMINE', 228, '30.14960', '-96.68880'), ('CISTERN', None, '29.81670', '-97.21670'), ('ELLINGER', None, '29.83350', '-96.70300'), ('FAYETTEVILLE', 261, '29.90640', '-96.67440'), ('FLATONIA', 1377, '29.68730', '-97.10750'), ('LA GRANGE', 4478, '29.90870', '-96.87810'), ('MULDOON', None, '29.81670', '-97.06670'), ('ROUND TOP', 77, '30.06440', '-96.69570'), ('SCHULENBURG', 2699, '29.68120', '-96.90690')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC457': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHESTER', 265, '30.92260', '-94.60260'), ('COLMESNEIL', 638, '30.90900', '-94.42310'), ('FRED', None, '30.57640', '-94.17610'), ('HILLISTER', None, '30.66750', '-94.38110'), ('IVANHOE', None, '30.68440', '-94.41310'), ('ROCKLAND', None, '31.00000', '-94.38200'), ('SPURGER', None, '30.69300', '-94.17800'), ('TOWN BLUFF', None, '30.79080', '-94.18030'), ('WARREN', None, '30.61440', '-94.40830'), ('WOODVILLE', 2415, '30.77410', '-94.42240')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'UTC001': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ADAMSVILLE', None, '38.25000', '-112.80000'), ('BEAVER', 2454, '38.27900', '-112.63980'), ('MANDERFIELD', None, '38.35000', '-112.63000'), ('MILFORD', 1451, '38.40000', '-113.02010'), ('MINERSVILLE', 817, '38.21330', '-112.92410')], 'partOfState': '', 'wfo': 'SLC'}, -'TXC323': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EAGLE PASS', 22413, '28.70980', '-100.49140'), ('EL INDIO', 263, '28.51670', '-100.31670'), ('QUEMADO', 243, '28.95000', '-100.63330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'NYC017': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AFTON', 836, '42.22910', '-75.52520'), ('BAINBRIDGE', 1365, '42.29600', '-75.48040'), ('BRISBEN', None, '42.36670', '-75.68330'), ('COLUMBUS', None, '42.68330', '-75.36670'), ('COVENTRY', None, '42.31670', '-75.63330'), ('EARLVILLE', 791, '42.74030', '-75.54360'), ('GERMAN', None, '42.48330', '-75.85000'), ('GREENE', 1701, '42.33000', '-75.77050'), ('GUILFORD', None, '42.40000', '-75.48330'), ('HOLMESVILLE', None, '42.51670', '-75.40000'), ('LAMBS CORNERS', None, '42.68330', '-75.31670'), ('LATHAMS CORNERS', None, '42.46670', '-75.40000'), ('LINCKLAEN', None, '42.66670', '-75.85000'), ('MC DONOUGH', None, '42.50000', '-75.76670'), ('MT UPTON', None, '42.41670', '-75.38330'), ('NEW BERLIN', 1129, '42.62410', '-75.33570'), ('NINEVEH', None, '42.20000', '-75.60000'), ('NORTH NORWICH', None, '42.61670', '-75.53330'), ('NORWICH', 7355, '42.53500', '-75.52370'), ('OTSELIC', None, '42.71670', '-75.71670'), ('OXFORD', 1584, '42.44060', '-75.59620'), ('PHARSALIA', None, '42.58330', '-75.76670'), ('PITCHER', None, '42.58330', '-75.85000'), ('PLYMOUTH', None, '42.61670', '-75.60000'), ('POLKVILLE', None, '42.51670', '-75.51670'), ('PRESTON', None, '42.53330', '-75.60000'), ('ROCKDALE', None, '42.38330', '-75.41670'), ('SHERBURNE', 1455, '42.68030', '-75.49750'), ('SMITHVILLE CENTER', None, '42.40000', '-75.71670'), ('SMITHVILLE FLATS', None, '42.40000', '-75.80000'), ('SMYRNA', 241, '42.68580', '-75.56750'), ('SOUTH OTSELIC', None, '42.65000', '-75.78330'), ('SOUTH OXFORD', None, '42.38330', '-75.61670'), ('SOUTH PLYMOUTH', None, '42.58330', '-75.56670'), ('TYNER', None, '42.43330', '-75.66670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYC015': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BIG FLATS', 2482, '42.14230', '-76.93040'), ('BIG FLATS AIRPORT', 2184, '42.17100', '-76.88980'), ('BREESPORT', None, '42.16670', '-76.73330'), ('CHAMBERS', None, '42.25000', '-76.95000'), ('ELMIRA', 30940, '42.09320', '-76.81010'), ('ELMIRA ARPT', None, '42.16670', '-76.90000'), ('ELMIRA HEIGHTS', 4170, '42.12640', '-76.82660'), ('ERIN', None, '42.18330', '-76.66670'), ('FISHERVILLE', None, '42.16670', '-76.86670'), ('HORSEHEADS', 6452, '42.16970', '-76.82990'), ('HORSEHEADS NORTH', 2852, '42.19200', '-76.80910'), ('LOWMAN', None, '42.03330', '-76.71670'), ('MILLPORT', 297, '42.26760', '-76.83640'), ('MILTOOR', None, '42.26670', '-76.83330'), ('OWENS MILL', None, '42.06670', '-76.60000'), ('PINE CITY', None, '42.03330', '-76.86670'), ('SAGETOWN', None, '42.03330', '-76.95000'), ('SEELY CREEK', None, '42.01670', '-76.88330'), ('SOUTHPORT', 7396, '42.06380', '-76.81160'), ('SWARTWOOD', None, '42.23330', '-76.61670'), ('TOMPKINS CORNERS', None, '42.20000', '-76.88330'), ('VAN ETTEN', 581, '42.19820', '-76.55470'), ('WEBB MILLS', None, '42.01670', '-76.88330'), ('WELLSBURG', 631, '42.01280', '-76.72960'), ('WEST ELMIRA', 5136, '42.08950', '-76.85070')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'UTC003': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BEAR RIVER', None, '41.61440', '-112.12310'), ('BOTHWELL', None, '41.72000', '-112.27000'), ('BRIGHAM CITY', 17411, '41.50910', '-112.00960'), ('COLLINSTON', None, '41.77000', '-112.08000'), ('CORINNE', 621, '41.54770', '-112.11660'), ('CURLEW JCT', None, '41.97000', '-113.05000'), ('DEWEYVILLE', 278, '41.71000', '-112.08980'), ('ELWOOD', 678, '41.68200', '-112.09500'), ('ETNA', None, '41.67000', '-113.97000'), ('FIELDING', 448, '41.81200', '-112.11640'), ('GARLAND', 1943, '41.73680', '-112.14900'), ('GROUSE CR', None, '41.72000', '-113.88000'), ('HONEYVILLE', 1214, '41.63480', '-112.08280'), ('HOWELL', 221, '41.77120', '-112.44490'), ('LAKESIDE', None, '41.21000', '-112.88000'), ('LUCIN', None, '41.35000', '-113.92000'), ('LYNN', None, '41.88000', '-113.73000'), ('MANTUA RES', None, '41.50280', '-111.93240'), ('PARK VLY', None, '41.82000', '-113.33000'), ('PENROSE', None, '41.65000', '-112.30000'), ('PERRY', 2383, '41.46490', '-112.03430'), ('PLYMOUTH', 328, '41.87640', '-112.13480'), ('PORTAGE', 257, '41.97660', '-112.23780'), ('PROMONTORY', None, '41.62000', '-112.57000'), ('ROSETTE', None, '41.82000', '-113.42000'), ('SNOWVILLE', 177, '41.96980', '-112.71470'), ('STANDROD', None, '41.98000', '-113.42000'), ('THATCHER', None, '41.70000', '-112.30000'), ('TREMONTON', 5592, '41.68500', '-112.13000'), ('WASHAKIE', None, '41.95000', '-112.22000'), ('WILLARD', 1630, '41.41170', '-112.04400'), ('YOST', None, '41.97000', '-113.55000')], 'partOfState': '', 'wfo': 'SLC'}, -'NYC013': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BEMUS POINT', 340, '42.16340', '-79.39120'), ('BROCTON', 1547, '42.38920', '-79.44230'), ('CASSADAGA', 676, '42.34100', '-79.31710'), ('CELORON', 1295, '42.10480', '-79.27610'), ('CHERRY CREEK', 551, '42.29510', '-79.10170'), ('FALCONER', 2540, '42.11890', '-79.19730'), ('FORESTVILLE', 770, '42.46860', '-79.17500'), ('FREDONIA', 10706, '42.44040', '-79.33180'), ('FREWSBURG', 1965, '42.05720', '-79.16110'), ('JAMESTOWN', 31730, '42.09740', '-79.23630'), ('JAMESTOWN WEST', 2535, '42.08940', '-79.27880'), ('LAKEWOOD', 3258, '42.10020', '-79.32000'), ('MAYVILLE', 1756, '42.25290', '-79.50230'), ('PANAMA', 491, '42.07500', '-79.48610'), ('RIPLEY', 1030, '42.26560', '-79.71140'), ('SHERMAN', 714, '42.16010', '-79.59490'), ('SILVER CREEK', 2896, '42.54350', '-79.16890'), ('SINCLAIRVILLE', 665, '42.26440', '-79.25820'), ('WESTFIELD', 3481, '42.32200', '-79.57590')], 'partOfState': '', 'wfo': 'BUF'}, -'NYC011': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AUBURN', 28574, '42.93320', '-76.56890'), ('AURORA', 720, '42.75220', '-76.69890'), ('CASCADE', None, '42.75000', '-76.46670'), ('CASOWASCO', None, '42.78330', '-76.48330'), ('CATO', 601, '43.16800', '-76.57240'), ('CAYUGA', 509, '42.91940', '-76.72830'), ('COMO', None, '42.68330', '-76.26670'), ('DRESSERVILLE', None, '42.70000', '-76.31670'), ('EAST GENOA', None, '42.65000', '-76.50000'), ('EAST VENICE', None, '42.68330', '-76.50000'), ('EDGEWATER', None, '42.76670', '-76.48330'), ('ENSENORE', None, '42.78330', '-76.50000'), ('FAIR HAVEN', 884, '43.32570', '-76.70240'), ('FLEMING', None, '42.86670', '-76.55000'), ('FOSTERVILLE', None, '42.95000', '-76.66670'), ('GENOA', None, '42.66670', '-76.53330'), ('KELLOGGSVILLE', None, '42.78330', '-76.35000'), ('KING FERRY', None, '42.66670', '-76.61670'), ('LEDYARD', None, '42.70000', '-76.61670'), ('LEVANNA', None, '42.78330', '-76.68330'), ('LOCKE', None, '42.66670', '-76.41670'), ('MAPLETON', None, '42.85000', '-76.58330'), ('MELROSE PARK', 2359, '42.90230', '-76.52830'), ('MERIDIAN', 350, '43.16350', '-76.53540'), ('MERRIFIELD', None, '42.78330', '-76.56670'), ('MONTEZUMA', None, '43.01670', '-76.71670'), ('MONTVILLE', None, '42.71670', '-76.40000'), ('MORAVIA', 1363, '42.71210', '-76.42250'), ('NEW HOPE', None, '42.80000', '-76.35000'), ('NILES', None, '42.83330', '-76.40000'), ('OWASCO', None, '42.85000', '-76.45000'), ('PORT BYRON', 1297, '43.03670', '-76.62580'), ('SCIPIO CENTER', None, '42.78330', '-76.53330'), ('SEMPRONIUS', None, '42.73330', '-76.31670'), ('SENNETT', None, '43.00000', '-76.53330'), ('SHERWOOD', None, '42.75000', '-76.48330'), ('THROOPSVILLE', None, '42.96670', '-76.60000'), ('UNION SPRINGS', 1074, '42.84500', '-76.69330'), ('VENICE CENTER', None, '42.73330', '-76.55000'), ('WEEDSPORT', 2017, '43.04700', '-76.56470'), ('WILLETS', None, '42.71670', '-76.68330'), ('WYCKOFF', None, '42.83330', '-76.51670')], 'partOfState': 'CENTRAL', 'wfo': 'BGMBUF'}, -'GAC009': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MIDWAY-HARDWICK', 5135, '33.05130', '-83.24470'), ('MILLEDGEVILLE', 18757, '33.08520', '-83.23980')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TXC321': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAY CITY', 18667, '28.97860', '-95.96340'), ('MARKHAM', 1138, '28.96380', '-96.06340'), ('PALACIOS', 5153, '28.71360', '-96.23580'), ('VAN VLECK', 1411, '29.03610', '-95.88180')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'NYC019': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALTONA', 1056, '44.89220', '-73.65930'), ('BEEKMANTOWN', None, '44.77000', '-73.48000'), ('BLACK BROOK', None, '44.47000', '-73.73000'), ('CHAMPLAIN', 1173, '44.98730', '-73.44460'), ('CHAZY', None, '44.88000', '-73.43000'), ('CHURUBUSCO', None, '44.95000', '-73.92000'), ('CLAYBURG', None, '44.60000', '-73.83000'), ('CUMBERLAND HEAD', 1532, '44.71630', '-73.40300'), ('DANNEMORA', 4129, '44.72080', '-73.71930'), ('ELLENBURG DEPOT', None, '44.90000', '-73.80000'), ('HARKNESS', None, '44.52000', '-73.53000'), ('HAWKEYE', None, '44.51000', '-73.87000'), ('JERICHO', 13045, '44.78000', '-73.65000'), ('KEESEVILLE', 1850, '44.50370', '-73.48270'), ('LYON MOUNTAIN', 458, '44.72000', '-73.92000'), ('MERRILL', None, '44.77000', '-73.95000'), ('MOOERS', 440, '44.96530', '-73.58590'), ('MORRISONVILLE', 1702, '44.69070', '-73.55120'), ('PERU', 1514, '44.58000', '-73.53450'), ('PLATTSBURGH', 18816, '44.69550', '-73.45680'), ('RIVERVIEW', None, '44.58000', '-73.90000'), ('ROUSES POINT', 2277, '44.99200', '-73.36600'), ('SCIOTA', None, '44.90000', '-73.55000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'KSC003': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('COLONY', 397, '38.07080', '-95.36530'), ('GARNETT', 3368, '38.28060', '-95.24170'), ('GREELEY', 327, '38.36670', '-95.12670'), ('HARRIS', 53, '38.32000', '-95.43000'), ('KINCAID', 178, '38.08420', '-95.15330'), ('WESTPHALIA', 165, '38.18200', '-95.49000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'MTC047': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ALLENTOWN', None, '47.44056', '-114.09556'), ('ARLEE', 602, '47.16194', '-114.08417'), ('BIG ARM', 131, '47.79806', '-114.29389'), ('CHARLO', 439, '47.43861', '-114.17139'), ('DAYTON', 95, '47.86583', '-114.27806'), ('ELMO', 143, '47.83056', '-114.34861'), ('FINLEY POINT', 493, '47.73820', '-114.06240'), ('FORT CONNAH', None, '47.40556', '-114.08722'), ('KICKING HORSE', 80, '47.46060', '-114.07420'), ('LAKE MARY RONAN', None, '47.94306', '-114.39361'), ('MOIESE', None, '47.37056', '-114.26500'), ('PABLO', 1814, '47.60028', '-114.11806'), ('POLSON', 4041, '47.69361', '-114.16222'), ('PROCTOR', None, '47.89250', '-114.30444'), ('RAVALLI', 119, '47.27722', '-114.17972'), ('ROLLINS', 183, '47.90611', '-114.19750'), ('RONAN', 1812, '47.52889', '-114.10056'), ('ROUND BUTTE', None, '47.52972', '-114.26267'), ('SALMON PRAIRIE', None, '47.63000', '-113.78444'), ('ST. IGNATIUS', 788, '47.32000', '-114.09306'), ('SWAN LAKE', None, '47.92917', '-113.84389'), ('WOODS BAY', 748, '48.00167', '-114.04944')], 'partOfState': 'NORTHWEST', 'wfo': 'MSO'}, -'GAC279': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LYONS', 4169, '32.20390', '-82.32110'), ('SANTA CLAUS', 237, '32.17170', '-82.32990'), ('VIDALIA', 10491, '32.21230', '-82.40340')], 'partOfState': 'SOUTHEAST', 'wfo': 'FFC'}, -'UTC007': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CASTLE GATE', None, '39.73000', '-110.88000'), ('CLEAR CREEK', None, '39.65000', '-111.15000'), ('COAL CITY', None, '39.67000', '-111.02000'), ('EAST CARBON', 1393, '39.55000', '-110.38330'), ('HELPER', 2025, '39.68970', '-110.85910'), ('HIAWATHA', None, '39.49620', '-111.02900'), ('KENILWORTH', None, '39.68000', '-110.80000'), ('PRICE', 8402, '39.60170', '-110.82000'), ('SCOFIELD RES', None, '39.72500', '-111.16120'), ('SUNNYSIDE', 404, '39.55220', '-110.40010'), ('WATTIS', None, '39.53000', '-111.02000'), ('WELLINGTON', 1666, '39.53790', '-110.73740')], 'partOfState': '', 'wfo': 'SLC'}, -'MTC041': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BOX ELDER', 794, '48.31720', '-110.01250'), ('GILDFORD', 185, '48.56940', '-110.29890'), ('HAVRE', 9621, '48.54380', '-109.67910'), ('HINGHAM', 157, '48.55560', '-110.42070'), ('INVERNESS', 103, '48.55670', '-110.68330'), ('KREMLIN', 126, '48.56970', '-110.08580'), ('ROCKY BOY', None, '48.25610', '-109.78750'), ('RUDYARD', 275, '48.56000', '-110.55330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'IAC149': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AKRON', 1489, '42.82730', '-96.55630'), ('BRUNSVILLE', 146, '42.81130', '-96.26640'), ('CRAIG', 102, '42.89550', '-96.31010'), ('HINTON', 808, '42.62470', '-96.29390'), ('KINGSLEY', 1245, '42.58750', '-95.96800'), ('LE MARS', 9237, '42.78760', '-96.16990'), ('MERRILL', 754, '42.72100', '-96.24910'), ('OYENS', 132, '42.81940', '-96.05750'), ('REMSEN', 1762, '42.81310', '-95.97280'), ('STRUBLE', 85, '42.89480', '-96.19410'), ('WESTFIELD', 189, '42.75670', '-96.60540')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'MIC079': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARKER CREEK', None, '44.78330', '-85.31660'), ('BEAR LAKE', 318, '44.71660', '-84.93330'), ('DARRAGH', None, '44.76660', '-85.05000'), ('KALKASKA', 2226, '44.73460', '-85.17990'), ('RAPID CITY', None, '44.83340', '-85.28330'), ('SHARON', None, '44.58330', '-85.08330'), ('SIGMA', None, '44.66660', '-85.05000'), ('SMITHVILLE', None, '44.52000', '-85.15000'), ('SOUTH BOARDMAN', None, '44.63330', '-85.25020')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'VAC830': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('WILLIAMSBURG', 11998, '37.27000', '-76.70690')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'HIC007': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('ALAPII POINT', None, '22.16520', '-159.69940'), ('ANAHOLA', 1932, '22.14720', '-159.31780'), ('ELEELE', 2040, '21.91050', '-159.58430'), ('HANALEI', 478, '22.20900', '-159.50170'), ('HANAMAULU', 3272, '21.99820', '-159.35240'), ('HANAPEPE', 2153, '21.91630', '-159.59040'), ('HANAPEPE HEIGHTS', None, '21.92260', '-159.59110'), ('KAANA', None, '22.10600', '-159.67970'), ('KAAWANUI VILLAGE', None, '21.94610', '-159.63220'), ('KALAHEO', 3913, '21.92080', '-159.52670'), ('KALALAU LOOKOUT', None, '22.15300', '-159.64850'), ('KALIHIWAI', 717, '22.21940', '-159.42150'), ('KAPAA', 9472, '22.09730', '-159.35400'), ('KAPALUA HEIAU', None, '22.09150', '-159.75250'), ('KAUMAKANI', 607, '21.92210', '-159.62810'), ('KAUNALEWA', None, '22.00370', '-159.74050'), ('KEAWANUI', None, '22.15270', '-159.72520'), ('KEKAHA', 3175, '21.97230', '-159.71780'), ('KILAUEA', 2092, '22.21110', '-159.40960'), ('KOHEO POINT', None, '21.89080', '-159.55420'), ('KOKEE SP', None, '22.13320', '-159.65970'), ('KOLOA', 1942, '21.90680', '-159.46430'), ('KUKUIULA', None, '21.88910', '-159.48940'), ('LAWAI', 1984, '21.92490', '-159.50470'), ('LIHUE', 5674, '21.97510', '-159.35440'), ('MAKAHA POINT', None, '22.14290', '-159.73260'), ('MAKAOKAHAI POINT', None, '21.88750', '-159.52960'), ('MAKOLE', None, '22.12070', '-159.73260'), ('MANA', None, '22.03860', '-159.77170'), ('MUKUAIKI POINT', None, '22.16130', '-159.70900'), ('NA PALI COAST S.P.', None, '22.18430', '-159.64210'), ('NUMILA', None, '21.90190', '-159.56010'), ('OMAO', 1221, '21.92510', '-159.48620'), ('PAKALA POINT', None, '21.93520', '-159.65110'), ('PAKALA VILLAGE', 478, '21.94500', '-159.64870'), ('POIPU', 1075, '21.88140', '-159.46240'), ('POKII', None, '21.98370', '-159.71970'), ('POLIHALE HEIAU', None, '22.09950', '-159.74850'), ('POLIHALE STATE PARK', None, '22.08660', '-159.76070'), ('PORT ALLEN', None, '21.90400', '-159.58980'), ('PRINCEVILLE', 1698, '22.22350', '-159.48540'), ('PUANAIEA POINT', None, '22.16650', '-159.69180'), ('PUHI', 1186, '21.96880', '-159.39960'), ('SAKI MANA', None, '22.06020', '-159.76330'), ('SALT POND BEACH PARK', None, '21.90300', '-159.61010'), ('WAILUA', 2083, '22.05790', '-159.34070'), ('WAILUA HOMESTEADS', 4567, '22.06570', '-159.37960'), ('WAIMEA CANYON SP', None, '22.07520', '-159.66670'), ('WAIMEA KAUAI', None, '21.96070', '-159.67520'), ('WELI POINT', None, '21.89650', '-159.57750')], 'partOfState': '', 'wfo': 'HFO'}, -'HIC003': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('AHUIMANU', 8506, '21.44120', '-157.83650'), ('AIEA', 9019, '21.38840', '-157.92780'), ('AINA HAINA', None, '21.28870', '-157.75150'), ('ALA MOANA BEACH PARK', None, '21.29230', '-157.85040'), ('ALIAMANU', None, '21.36490', '-157.91440'), ('BARBERS POINT HOUSING', 67, '21.32450', '-158.08320'), ('EWA BEACH', 14650, '21.31620', '-158.01180'), ('EWA GENTRY', 4939, '21.34410', '-158.03080'), ('EWA VILLAGES', 4741, '21.34540', '-158.04090'), ('FORT SHAFTER', None, '21.35360', '-157.87420'), ('HAHAIONE VALLEY', None, '21.30560', '-157.71230'), ('HALAWA', 13891, '21.37940', '-157.92160'), ('HALEIWA', 2225, '21.59550', '-158.10880'), ('HAUULA', 3651, '21.59060', '-157.92330'), ('HAWAII KAI', None, '21.28170', '-157.70250'), ('HEEIA', 4944, '21.42800', '-157.81720'), ('HICKAM HOUSING', 5471, '21.34130', '-157.96140'), ('HONOLULU', 371657, '21.31000', '-157.86090'), ('IROQUOIS POINT', 2462, '21.32530', '-157.98130'), ('IWILEI', None, '21.31980', '-157.87300'), ('KAAAWA', 1324, '21.55740', '-157.85720'), ('KAHALA', None, '21.27280', '-157.78460'), ('KAHALUU', 2935, '21.46200', '-157.83480'), ('KAHUKU', 2097, '21.68220', '-157.94630'), ('KAILUA', 36513, '21.40160', '-157.73850'), ('KAIMUKI', None, '21.28130', '-157.80920'), ('KALANI VALLEY', None, '21.28680', '-157.77300'), ('KALIHI', None, '21.32780', '-157.87880'), ('KALUANUI', None, '21.30750', '-157.70560'), ('KAMEHAMEHA HEIGHTS', None, '21.33760', '-157.86410'), ('KAMILOIKI', None, '21.31330', '-157.68620'), ('KANEOHE', 34970, '21.41110', '-157.79250'), ('KANEOHE STATION', 11827, '21.45010', '-157.75160'), ('KAWELA BAY', 410, '21.70320', '-158.00990'), ('KULIOUOU', None, '21.29420', '-157.72710'), ('LAIE', 4585, '21.64910', '-157.92550'), ('MAILI', 5943, '21.41870', '-158.18040'), ('MAKAHA', 7753, '21.46830', '-158.21510'), ('MAKAHA VALLEY', 1289, '21.48240', '-158.20380'), ('MAKAKILO CITY', 13156, '21.35860', '-158.08840'), ('MAKIKI', None, '21.30980', '-157.83770'), ('MANOA', None, '21.31880', '-157.81010'), ('MAUNALANI HEIGHTS', None, '21.30070', '-157.78920'), ('MAUNAWILI', 4869, '21.37240', '-157.76580'), ('MILILANI TOWN', 28608, '21.44900', '-158.01820'), ('MOILILI', None, '21.29620', '-157.82680'), ('MOKULEIA', 1839, '21.58220', '-158.17880'), ('NANAKULI', 10814, '21.39190', '-158.15650'), ('NIU VALLEY', None, '21.29230', '-157.73930'), ('PEARL CITY', 30976, '21.40470', '-157.96910'), ('PORTLOCK', None, '21.27720', '-157.70960'), ('PUNALUU', 881, '21.59260', '-157.89660'), ('PUPUKEA', 4250, '21.66430', '-158.05350'), ('PUUNUI', None, '21.33860', '-157.85020'), ('SAINT LOUIS HEIGHTS', None, '21.30160', '-157.80670'), ('SCHOFIELD BARRACKS', 14428, '21.49630', '-158.06460'), ('TANTALUS', None, '21.32980', '-157.82300'), ('VILLAGE PARK', 9625, '21.39820', '-158.03020'), ('WAHIAWA', 16151, '21.50290', '-158.02210'), ('WAIALAE', None, '21.27820', '-157.79420'), ('WAIALAE IKI', None, '21.29610', '-157.76170'), ('WAIALUA', 3761, '21.57760', '-158.12850'), ('WAIANAE', 10506, '21.44940', '-158.18400'), ('WAIKANE', 726, '21.50140', '-157.87520'), ('WAIKIKI', None, '21.28230', '-157.83010'), ('WAILUPE', None, '21.27930', '-157.75980'), ('WAIMALU', 29371, '21.40470', '-157.94320'), ('WAIMANALO', 3664, '21.34760', '-157.72500'), ('WAIMANALO BEACH', 4271, '21.33000', '-157.69020'), ('WAIPAHU', 33108, '21.39060', '-158.01270'), ('WAIPIO', 11672, '21.41830', '-158.00060'), ('WAIPIO ACRES', 5298, '21.47420', '-158.02010'), ('WHEELER AFB', 2829, '21.48190', '-158.04140'), ('WHITMORE VILLAGE', 4057, '21.51420', '-158.02920'), ('WILHELMINA RISE', None, '21.29090', '-157.79170'), ('WOODLAWN', None, '21.31980', '-157.79950')], 'partOfState': '', 'wfo': 'HFO'}, -'HIC001': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('AKAKA FALLS S.P.', None, '19.85600', '-155.15450'), ('ANAEHOOMALU', None, '19.91690', '-155.88950'), ('CAPTAIN COOK', 3206, '19.49610', '-155.92100'), ('GLENWOOD', None, '19.49080', '-155.15390'), ('HAENA', None, '19.64550', '-154.98940'), ('HAINA', None, '20.09310', '-155.46980'), ('HAKALAU', None, '19.89950', '-155.12850'), ('HALAULA', 495, '20.23200', '-155.78340'), ('HAWAIIAN BEACHES', 3709, '19.54300', '-154.91570'), ('HAWAIIAN OCEAN VIEW ESTAT', None, '19.08900', '-155.78060'), ('HAWAIIAN PARADISE PARK', 7051, '19.59330', '-154.97310'), ('HAWI', 938, '20.24280', '-155.83420'), ('HIKAPOLOA', None, '20.24210', '-155.86010'), ('HILEA', None, '19.13860', '-155.53710'), ('HILO', 40759, '19.69620', '-155.08750'), ('HOLUALOA', 6107, '19.62750', '-155.95110'), ('HONALO', 1987, '19.54580', '-155.93190'), ('HONAUNAU', None, '19.42580', '-155.91210'), ('HONOHINA', None, '19.92560', '-155.15550'), ('HONOKAA', 2233, '20.07710', '-155.46740'), ('HONOKOHAU-BIG ISLAND', None, '19.67470', '-156.02400'), ('HONOMAKAU', None, '20.23980', '-155.82080'), ('HONOMU', 541, '19.87270', '-155.11490'), ('HONUAPO', None, '19.09340', '-155.55160'), ('HOOKENA', None, '19.38340', '-155.89890'), ('HOOPULA', None, '19.20020', '-155.90630'), ('KAHALUU-BIG ISLAND', None, '19.58800', '-155.97100'), ('KAHUKU-BIG ISLAND', None, '19.05770', '-155.69410'), ('KAILUA-KONA', None, '19.64230', '-155.99390'), ('KAINALIU', None, '19.53510', '-155.92790'), ('KALAOA', 6794, '19.72810', '-155.98590'), ('KANIAHIKU VILLAGE', None, '19.49040', '-154.92820'), ('KAPAA BEACH PARK', None, '20.20650', '-155.90470'), ('KAPAAU', 1159, '20.23070', '-155.81090'), ('KAPALAOA', None, '19.91230', '-155.89790'), ('KAPOHO', None, '19.50510', '-154.84880'), ('KAPULENA', None, '20.10530', '-155.52980'), ('KAUPULEHU', None, '19.83390', '-155.98760'), ('KAWAIHAE', None, '20.04150', '-155.83070'), ('KEAAU', 2010, '19.61920', '-155.03970'), ('KEALAKEKUA', 1645, '19.52020', '-155.92270'), ('KEAMUKU', None, '19.84120', '-155.72030'), ('KEAUHOU', None, '19.56550', '-155.96460'), ('KEAUKAHA', None, '19.73130', '-155.04600'), ('KEAWAIKI', None, '19.89100', '-155.90590'), ('KEEI', None, '19.46260', '-155.92740'), ('KEKAHA KAI S.P.', None, '19.77880', '-156.02910'), ('KEOKEA BEACH PARK', None, '20.22940', '-155.74600'), ('KEOKEA-BIG ISLAND', None, '19.42130', '-155.88360'), ('KIHOLO', None, '19.85710', '-155.92570'), ('KIPUKA NAHUAOPALA', None, '19.04640', '-155.61780'), ('KOAE', None, '19.52500', '-154.84510'), ('KUHIO VILLAGE', None, '20.02300', '-155.65940'), ('KUKAIAU', None, '20.03280', '-155.34980'), ('KUKII HEIAU', None, '19.51490', '-154.83440'), ('KUKIO', None, '19.82010', '-156.00110'), ('KUKUIHAELE', 317, '20.12550', '-155.57070'), ('KURTISTOWN', 1157, '19.58910', '-155.07110'), ('LAHUIPUAA', None, '19.94450', '-155.87010'), ('LAUPAHOEHOE', 473, '19.97850', '-155.24010'), ('LELEIWI BEACH PARK', None, '19.73440', '-155.01920'), ('MAHAIULA', None, '19.78690', '-156.03870'), ('MAHUKONA', None, '20.18710', '-155.90260'), ('MAKAPALA', None, '20.22630', '-155.76290'), ('MILOLII', None, '19.18940', '-155.90880'), ('MOOKINI HEIAU', None, '20.26220', '-155.88020'), ('MOUNTAIN VIEW', 2799, '19.52070', '-155.14920'), ('NAALEHU', 919, '19.07720', '-155.57530'), ('NAPOOPOO', None, '19.47640', '-155.92100'), ('NINOLE', None, '19.93830', '-155.16740'), ('NIULII', None, '20.22410', '-155.74910'), ('OHIA MILL', None, '19.22690', '-155.86410'), ('OOKALA', None, '20.01660', '-155.28090'), ('PAAUHAU', None, '20.08550', '-155.43990'), ('PAAUILO', 571, '20.04340', '-155.37170'), ('PAHALA', 1378, '19.20330', '-155.48240'), ('PAHOA', 962, '19.49870', '-154.94890'), ('PAPA', None, '19.20970', '-155.86980'), ('PAPAALOA', None, '19.97800', '-155.22210'), ('PAPAIKOU', 1414, '19.79400', '-155.09650'), ('PAUKAA', 495, '19.76440', '-155.09860'), ('PEPEEKEO', 1697, '19.83470', '-155.10880'), ('PUAKO', 429, '19.97380', '-155.84390'), ('PUALAA', None, '19.47270', '-154.83520'), ('PUUANAHULU', None, '19.81770', '-155.84630'), ('PUUEO', None, '19.04020', '-155.65500'), ('PUUOPELU', None, '20.02220', '-155.68510'), ('SADDLE ROAD JUNCTION', None, '19.93850', '-155.68960'), ('UPOLU AIRPORT', None, '20.26780', '-155.86110'), ('VOLCANO', 2231, '19.43180', '-155.23790'), ('WAIAKA', None, '20.03040', '-155.70210'), ('WAIKAPUNA', None, '19.02550', '-155.58330'), ('WAIKI', None, '19.87760', '-155.66390'), ('WAIKOLOA', None, '19.93930', '-155.79120'), ('WAIKUI', None, '20.02500', '-155.82360'), ('WAIMEA', 1787, '20.01660', '-155.63660'), ('WAINAKU', 1227, '19.74730', '-155.10100'), ('WAIPAHOEHOE', None, '19.60370', '-155.01090'), ('WELIWELI', None, '19.90120', '-155.90520'), ('WELOKA', None, '19.96010', '-155.20050')], 'partOfState': '', 'wfo': 'HFO'}, -'WIC031': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BENNETT', None, '46.44930', '-91.85050'), ('BLUEBERRY', None, '46.58030', '-91.66880'), ('BRULE', None, '46.55310', '-91.57670'), ('CHAFFEY', None, '46.39830', '-92.16360'), ('CLOVERLAND', None, '46.67710', '-91.67960'), ('COZY CORNER', None, '46.16490', '-92.23830'), ('DAIRYLAND', None, '46.21620', '-92.15550'), ('FOXBORO', None, '46.48190', '-92.28280'), ('GORDON', None, '46.24700', '-91.79860'), ('HAWTHORNE', None, '46.50310', '-91.86080'), ('LAKE NEBAGAMON', 1015, '46.50780', '-91.69450'), ('MAPLE', None, '46.58980', '-91.72080'), ('MOOSE JUNCTION', None, '46.28760', '-92.15550'), ('OLIVER', 358, '46.64990', '-92.18990'), ('PATZAU', None, '46.49150', '-92.22080'), ('POPLAR', 552, '46.58190', '-91.78780'), ('SOLON SPRINGS', 576, '46.34940', '-91.82000'), ('SUPERIOR', 500, '46.69690', '-92.05960'), ('WAINO', None, '46.63980', '-91.57370'), ('WASCOTT', None, '46.17250', '-91.79830'), ('WENTWORTH', None, '46.60010', '-91.83610')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'NCC197': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARLINGTON', 795, '36.22970', '-80.83270'), ('ARLINGTON', 795, '36.23330', '-80.83330'), ('BOONVILLE', 1138, '36.23320', '-80.70810'), ('BROOKS CROSSROADS', None, '36.11670', '-80.78330'), ('BUCK SHOALS', None, '36.10000', '-80.83330'), ('COURTNEY', None, '36.06670', '-80.63330'), ('EAST BEND', 659, '36.21730', '-80.50930'), ('ENON', None, '36.15000', '-80.46670'), ('HUNTSVILLE', None, '36.08330', '-80.51670'), ('JONESVILLE', 1464, '36.23480', '-80.84040'), ('LONE HICKORY', None, '36.06670', '-80.71670'), ('NEBO', None, '36.21670', '-80.65000'), ('SHACKTOWN', None, '36.11670', '-80.60000'), ('SWANCREEK', None, '36.18330', '-80.86670'), ('YADKINVILLE', 2818, '36.13140', '-80.65960')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'HIC009': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('ALAU ISLAND', None, '20.73120', '-155.97680'), ('CAPE HALAWA', None, '21.16120', '-156.71270'), ('CRATER RESERVOIR', None, '20.89910', '-156.66810'), ('H.P. BALDWIN B.P.', None, '20.91740', '-156.39640'), ('HAIKU', None, '20.91830', '-156.32360'), ('HALAWA-MOLOKAI', None, '21.16010', '-156.74170'), ('HALENA', None, '21.09280', '-157.23400'), ('HALIIMAILE', 895, '20.87630', '-156.34830'), ('HAMOA', None, '20.72360', '-155.98840'), ('HANA', 709, '20.77000', '-155.99420'), ('HAOU', None, '20.69630', '-156.00630'), ('HAPOI VILLAGE', None, '20.88220', '-156.51090'), ('HAPPY VALLEY', None, '20.89500', '-156.51030'), ('HOKUULA', None, '20.72680', '-155.98740'), ('HONOKAHUA', None, '21.00260', '-156.65760'), ('HONOKOHAU', None, '21.02090', '-156.61180'), ('HONOKOWAI', None, '20.95440', '-156.68990'), ('HONOLUA', None, '21.01480', '-156.63930'), ('HONOMAELE', None, '20.80070', '-156.03950'), ('HOOKIPA B.P.', None, '20.93640', '-156.36020'), ('HOOLEHUA', None, '21.17040', '-157.07130'), ('HUELO', None, '20.90770', '-156.22760'), ('HUELO ISLAND', None, '21.17390', '-156.92370'), ('HULOPOE BAY', None, '20.74290', '-156.89580'), ('HYASHI VILLAGE', None, '20.84050', '-156.50880'), ('ILIO POINT', None, '21.22060', '-157.26170'), ('KAANAPALI', 1375, '20.93080', '-156.69580'), ('KAELEKU', None, '20.78650', '-156.02580'), ('KAHAKULOA', None, '21.00010', '-156.55400'), ('KAHANA', None, '20.97510', '-156.68140'), ('KAHIWA FALLS', None, '21.17490', '-156.80920'), ('KAHOKUNUI', None, '20.90540', '-156.88880'), ('KAHULUI', 20146, '20.87380', '-156.45930'), ('KAKIO', None, '20.71310', '-155.99660'), ('KALAE', None, '21.16510', '-157.00830'), ('KALAUPAPA', None, '21.19340', '-156.98580'), ('KALAUPAPA AIRPORT', None, '21.20260', '-156.97680'), ('KALAWAO', None, '21.18010', '-156.95120'), ('KALUAAHA', None, '21.06990', '-156.82140'), ('KALULU', None, '20.58680', '-156.35330'), ('KAMALO', None, '21.05070', '-156.87730'), ('KAMILOLOA', None, '21.08500', '-157.00300'), ('KANAHA ROCK', None, '21.13390', '-156.70790'), ('KANAHENA', None, '20.62190', '-156.43930'), ('KAONOULU', None, '20.74060', '-156.33580'), ('KAPALUA', 467, '20.99970', '-156.65810'), ('KAPUNAKEA', None, '20.89060', '-156.68420'), ('KAUMALAPAU', None, '20.79030', '-156.99370'), ('KAUNAKAKAI', 2726, '21.08860', '-157.01270'), ('KAUNOLU VILLAGE', None, '20.73650', '-156.96510'), ('KAUPAKULUA', None, '20.89010', '-156.29870'), ('KAUPO', None, '20.63960', '-156.12520'), ('KAWELA', None, '21.07220', '-156.96440'), ('KEANAE', None, '20.86140', '-156.15110'), ('KEAWAKAPU', None, '20.70750', '-156.44780'), ('KEAWALUA', None, '21.02660', '-156.59160'), ('KEOKEA', None, '20.70860', '-156.36010'), ('KEOMUKU VILLAGE', None, '20.85340', '-156.83040'), ('KEONEOIO', None, '20.60340', '-156.42250'), ('KEPUHI', None, '21.19030', '-157.24980'), ('KIHEI', 16749, '20.76380', '-156.45320'), ('KIPAHULU', None, '20.65690', '-156.05790'), ('KIPU', None, '21.16550', '-157.02460'), ('KOALI', None, '20.68810', '-156.02360'), ('KOELE', None, '20.83920', '-156.92100'), ('KOKOMO', None, '20.86990', '-156.30930'), ('KUALAPUU', 1936, '21.16000', '-157.05840'), ('KUAU', None, '20.93030', '-156.37160'), ('KUKAIWAA POINT', None, '21.17400', '-156.91790'), ('KUKUINUI RIDGE', None, '21.15180', '-156.82930'), ('LAHAINA', 9118, '20.89130', '-156.67430'), ('LAHAINALUNA', None, '20.89230', '-156.66260'), ('LALAKOA', None, '20.82070', '-156.91860'), ('LANAI AIRPORT', None, '20.79330', '-156.95250'), ('LANAI CITY', 3164, '20.83270', '-156.92650'), ('LAUNIUPOKO', None, '20.85700', '-156.65040'), ('LEINAOPAPIO POINT', None, '21.17510', '-156.93120'), ('LOPA', None, '20.80270', '-156.81380'), ('LOWER PAIA', None, '20.91940', '-156.38400'), ('MAALAEA', 454, '20.79670', '-156.51340'), ('MAALEHU', None, '21.16660', '-157.02310'), ('MAHANA', None, '21.15300', '-157.14850'), ('MAKAIWA BEACH', None, '20.92580', '-156.96350'), ('MAKAWAO', 6327, '20.85750', '-156.32500'), ('MAKENA', None, '20.65780', '-156.44490'), ('MALA', None, '20.89200', '-156.68700'), ('MAUNALEI', None, '20.90150', '-156.88180'), ('MAUNALOA', 230, '21.13650', '-157.21390'), ('MOKAE', None, '20.72060', '-155.99570'), ('MOKAPU ISLAND', None, '21.18640', '-156.92620'), ('MOKIO POINT', None, '21.22330', '-157.21450'), ('MOKU', None, '21.07040', '-156.95870'), ('MOKUHOONIKI ISLAND', None, '21.13580', '-156.70570'), ('MOKULAU', None, '20.64550', '-156.11000'), ('MOLOKAI AIRPORT', None, '21.15640', '-157.09650'), ('MOOMOMI', None, '21.19990', '-157.15490'), ('MOPUA', None, '20.81460', '-156.61380'), ('MUOLEA', None, '20.68980', '-156.01970'), ('NAHA', None, '20.78060', '-156.82910'), ('NAHIKU', None, '20.82800', '-156.09510'), ('NAPILI', None, '20.98930', '-156.66730'), ('NUU', None, '20.63190', '-156.18650'), ('OHIAPILI', None, '21.10380', '-157.05050'), ('OKALA ISLAND', None, '21.17770', '-156.93150'), ('OLOWALU', None, '20.81460', '-156.62480'), ('PAIA', 2499, '20.90470', '-156.37490'), ('PALAAU STATE PARK', None, '21.17900', '-157.00840'), ('PAPALAUA VALLEY', None, '21.16960', '-156.80010'), ('PAPOHAKU BEACH PARK', None, '21.16980', '-157.26490'), ('PAUKUKALO', None, '20.90860', '-156.48760'), ('PAUWALU', None, '21.09140', '-156.77670'), ('PAUWELA', None, '20.93380', '-156.32030'), ('PUKAAUHUHU', None, '20.63600', '-156.14910'), ('PUKALANI', 7380, '20.83690', '-156.34100'), ('PUKOO', None, '21.07640', '-156.79580'), ('PULEHU', None, '20.77870', '-156.32880'), ('PUUIKI', None, '20.70460', '-156.00090'), ('PUUKOLII', None, '20.93470', '-156.67690'), ('PUUNENE', None, '20.86410', '-156.45350'), ('PUUNOA', None, '20.88260', '-156.68500'), ('PUUOHALA VILLAGE', None, '20.89930', '-156.51140'), ('SHIPWRECK BEACH', None, '20.91980', '-156.91030'), ('SPRECKELSVILLE', None, '20.90820', '-156.41510'), ('UALAPUE', None, '21.06550', '-156.83240'), ('UKUMEHAME B.P.', None, '20.79870', '-156.57790'), ('ULAINO', None, '20.80920', '-156.05810'), ('ULUMALU', None, '20.90940', '-156.28730'), ('ULUPALAKUA', None, '20.64910', '-156.40000'), ('UMIPAA', None, '21.10990', '-157.05560'), ('WAHILAUHUE', None, '21.17040', '-157.25690'), ('WAIAKOA', None, '20.75980', '-156.33150'), ('WAIANAPANAPA S.P.', None, '20.78940', '-156.00460'), ('WAIEHU', None, '20.92140', '-156.49740'), ('WAIEHU VILLAGE', None, '20.91740', '-156.51460'), ('WAIHEE', None, '20.93350', '-156.51380'), ('WAIKAPU', 1115, '20.85400', '-156.50730'), ('WAILAU', None, '21.16860', '-156.83080'), ('WAILEA', None, '20.69100', '-156.44640'), ('WAILUA-MAUI', None, '20.68480', '-156.02750'), ('WAILUA-MOLOKAI', None, '21.10010', '-156.76150'), ('WAILUKU', 12296, '20.88850', '-156.50680'), ('WAILUKU HEIGHTS', None, '20.87840', '-156.51980'), ('WAINEE', None, '20.87400', '-156.67000'), ('WAIOHULI', None, '20.72140', '-156.34910'), ('WALOPAI', None, '20.62930', '-156.21110')], 'partOfState': '', 'wfo': 'HFO'}, -'INC183': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CHURUBUSCO', 1666, '41.23240', '-85.32140'), ('COLUMBIA CITY', 7077, '41.15860', '-85.48480'), ('LARWILL', 282, '41.17890', '-85.62440'), ('SOUTH WHITLEY', 1782, '41.08570', '-85.62860'), ('TRI-LAKES', 3925, '41.22100', '-85.48420')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'INC181': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROOKSTON', 1717, '40.60020', '-86.86580'), ('BURNETTSVILLE', 373, '40.76150', '-86.59480'), ('CHALMERS', 513, '40.66250', '-86.86760'), ('MONON', 1733, '40.86360', '-86.87870'), ('MONTICELLO', 5723, '40.74670', '-86.76390'), ('REYNOLDS', 547, '40.74870', '-86.87370'), ('WOLCOTT', 989, '40.75820', '-87.04330')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'FLC053': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARIPEKA', None, '28.43500', '-82.66800'), ('BROOKSVILLE', 7264, '28.55440', '-82.39300'), ('CROOM', None, '28.59000', '-82.24000'), ('HERNANDO BEACH', 2185, '28.46900', '-82.65940'), ('MASARYKTOWN', 920, '28.43440', '-82.46120'), ('NORTH BROOKSVILLE', 1461, '28.57290', '-82.40830'), ('RIDGE MANOR', 4108, '28.50300', '-82.18410'), ('ROYAL HIGHLANDS', None, '28.64000', '-82.53000'), ('SPRING HILL', 69078, '28.44500', '-82.56190'), ('WEEKI WACHEE', 12, '28.51520', '-82.57870'), ('WEEKI WACHEE ACRES', None, '28.48310', '-82.59780')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'VAC580': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('COVINGTON CITY', None, '37.78330', '-79.98330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'IAC009': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AUDUBON', 2382, '41.71810', '-94.92980'), ('BRAYTON', 145, '41.54260', '-94.92560'), ('EXIRA', 810, '41.59160', '-94.87930'), ('GRAY', 82, '41.84130', '-94.98420'), ('KIMBALLTON', 342, '41.62830', '-95.07420')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'LAC099': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BREAUX BRIDGE', 7281, '30.27820', '-91.90100'), ('BUTTE LA ROSE', None, '30.27750', '-91.68670'), ('CADE', None, '30.08700', '-91.90500'), ('CATAHOULA', None, '30.21400', '-91.70900'), ('CECILIA', 1505, '30.33610', '-91.84780'), ('HENDERSON', 1531, '30.31430', '-91.79930'), ('PARKS', 533, '30.21530', '-91.82940'), ('ST. MARTINVILLE', 6989, '30.12500', '-91.83050'), ('STEPHENSVILLE', None, '29.77810', '-91.16580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'FLC051': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BIG CYPRESS SEMINOLE INDI', None, '26.30000', '-80.97000'), ('CLEWISTON', 6460, '26.75000', '-80.93700'), ('DEVILS GARDEN', None, '26.61000', '-81.13000'), ('FELDA', None, '26.54000', '-81.43000'), ('HENDRY CORRECTIONAL INSTI', None, '26.31000', '-81.21000'), ('KERI', None, '26.60000', '-81.39000'), ('LA BELLE', None, '26.76000', '-81.44000')], 'partOfState': 'SOUTHERN', 'wfo': 'MFL'}, -'IAC001': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ADAIR', 839, '41.50010', '-94.64360'), ('BRIDGEWATER', 178, '41.24690', '-94.66740'), ('FONTANELLE', 692, '41.29000', '-94.56070'), ('GREENFIELD', 2129, '41.30550', '-94.45850'), ('ORIENT', 402, '41.20280', '-94.41790'), ('STUART', 1712, '41.50240', '-94.31830')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'IAC003': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CARBON', 28, '41.04930', '-94.82350'), ('CORNING', 1783, '40.99390', '-94.73930'), ('NODAWAY', 132, '40.93650', '-94.89520'), ('PRESCOTT', 266, '41.02340', '-94.61240')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'IAC005': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHURCHTOWN', None, '43.34832', '-91.34956'), ('DALBY', None, '43.26218', '-91.28540'), ('DORCHESTER', None, '43.46746', '-91.51635'), ('ELON', None, '43.26584', '-91.33306'), ('HANOVER', None, '43.36298', '-91.53468'), ('HARPERS FERRY', 330, '43.20100', '-91.15120'), ('LANSING', 1012, '43.36170', '-91.22580'), ('LUDLOW', None, '43.23102', '-91.58600'), ('MAUD', None, '43.23102', '-91.38438'), ('NEW ALBIN', 527, '43.49700', '-91.28850'), ('POSTVILLE', 2273, '43.08410', '-91.56930'), ('QUANDAHL', None, '43.44913', '-91.60616'), ('ROSSVILLE', None, '43.18153', '-91.38438'), ('VILLAGE CREEK', None, '43.31533', '-91.25241'), ('VOLNEY', None, '43.13387', '-91.38255'), ('WATERVILLE', 145, '43.20810', '-91.29480'), ('WAUKON', 4131, '43.26980', '-91.47630'), ('WAUKON JCT', None, '43.14670', '-91.18276')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'IAC007': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CENTERVILLE', 5924, '40.73080', '-92.87430'), ('CINCINNATI', 428, '40.63180', '-92.92180'), ('EXLINE', 191, '40.64880', '-92.84170'), ('MORAVIA', 713, '40.89210', '-92.81830'), ('MOULTON', 658, '40.68530', '-92.67900'), ('MYSTIC', 588, '40.77910', '-92.94370'), ('NUMA', 109, '40.68540', '-92.98060'), ('PLANO', 58, '40.75530', '-93.04610'), ('RATHBUN', 88, '40.80210', '-92.88790'), ('UDELL', 58, '40.78020', '-92.74250'), ('UNIONVILLE', 127, '40.81900', '-92.69680')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'INC125': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('PETERSBURG', 2570, '38.49170', '-87.28170'), ('SPURGEON', 227, '38.25560', '-87.25940'), ('WINSLOW', 881, '38.38380', '-87.21270')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'UTC053': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BLOOMINGTON', None, '37.05000', '-113.60000'), ('ENTERPRISE', 1285, '37.57040', '-113.71460'), ('GOLDSTRIKE', None, '37.38000', '-113.90000'), ('GUNLOCK', None, '37.28000', '-113.77000'), ('HILDALE', 1895, '37.00820', '-112.96810'), ('HURRICANE', 8250, '37.15990', '-113.31920'), ('IVINS', 4450, '37.17490', '-113.68450'), ('LA VERKIN', 3392, '37.20640', '-113.27250'), ('LEEDS', 547, '37.23700', '-113.35800'), ('MOTOQUA', None, '37.32000', '-114.00000'), ('NEW HARMONY', 190, '37.47840', '-113.30810'), ('PINE VLY', None, '37.42000', '-113.50000'), ('PINTO', None, '37.53330', '-113.51670'), ('PINTURA', None, '37.35000', '-113.27000'), ('ROCKVILLE', 247, '37.15360', '-113.05940'), ('SANTA CLARA', 4630, '37.13390', '-113.65130'), ('SPRINGDALE', 457, '37.18400', '-112.99910'), ('ST GEORGE', None, '37.08000', '-113.59000'), ('TOQUERVILLE', 910, '37.23670', '-113.28550'), ('VIRGIN', 394, '37.20080', '-113.19850'), ('WASHINGTON', 8186, '37.13470', '-113.49350'), ('ZION NP', None, '37.25330', '-112.95000')], 'partOfState': '', 'wfo': 'SLC'}, -'UTC051': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CHARLESTON', 378, '40.46550', '-111.46790'), ('HAILSTONE', None, '40.60000', '-111.40000'), ('HEBER CITY', None, '40.50180', '-111.40150'), ('MIDWAY', 2121, '40.51450', '-111.47450'), ('STRAWBERRY RES', None, '40.14000', '-111.13000'), ('WALLSBURG', 274, '40.38690', '-111.42090'), ('WOODLAND', 335, '40.58000', '-111.23000')], 'partOfState': '', 'wfo': 'SLC'}, -'UTC057': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('EDEN', None, '41.30000', '-111.82000'), ('FARR WEST', 3094, '41.29800', '-112.03030'), ('HARRISVILLE', 3645, '41.28090', '-111.98430'), ('HOOPER', 3926, '41.17300', '-112.12450'), ('HUNTSVILLE', 649, '41.25990', '-111.77270'), ('LIBERTY', None, '41.33000', '-111.87000'), ('NORDIC VLY', None, '41.36000', '-111.79000'), ('NORTH OGDEN', 15026, '41.31140', '-111.95890'), ('OGDEN', 77226, '41.22790', '-111.96580'), ('PLAIN CITY', 3489, '41.29890', '-112.07510'), ('PLEASANT VIEW', 5632, '41.32370', '-111.99870'), ('RIVERDALE', 7656, '41.17110', '-111.99500'), ('ROY', 32885, '41.17260', '-112.03500'), ('SLATERVILLE', None, '41.27000', '-112.03000'), ('SNOWBASIN', None, '41.22000', '-111.83000'), ('SOUTH OGDEN', 14377, '41.18000', '-111.95800'), ('UINTAH', 1127, '41.14280', '-111.93380'), ('WARREN', None, '41.28000', '-112.12000'), ('WEST WARREN', None, '41.25000', '-112.15000'), ('WEST WEBER', None, '41.25000', '-112.08000'), ('WILSON', None, '41.23000', '-112.02000')], 'partOfState': '', 'wfo': 'SLC'}, -'UTC055': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BICKNELL', 353, '38.34140', '-111.54470'), ('CAINEVILLE', None, '38.33000', '-111.02000'), ('CAPITOL REEF NP', None, '38.28000', '-111.20000'), ('FREMONT', None, '38.45000', '-111.62000'), ('FRUITA', None, '38.28000', '-111.25000'), ('HANKSVILLE', None, '38.36670', '-110.71670'), ('LOA', 525, '38.40290', '-111.64320'), ('LYMAN', 234, '38.39620', '-111.58820'), ('TEASDALE', None, '38.28000', '-111.47000'), ('TORREY', 171, '38.30160', '-111.41920')], 'partOfState': '', 'wfo': 'SLC'}, -'INC169': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LA FONTAINE', 900, '40.67370', '-85.72170'), ('LAGRO', 454, '40.83830', '-85.72840'), ('NORTH MANCHESTER', 6260, '41.00490', '-85.77410'), ('ROANN', 400, '40.91120', '-85.92390'), ('WABASH', 11743, '40.79920', '-85.82530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'KSC077': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANTHONY', 2440, '37.15390', '-98.02910'), ('ATTICA', 636, '37.24250', '-98.22590'), ('BLUFF CITY', 80, '37.07560', '-97.87500'), ('CORWIN', None, '37.08000', '-98.30000'), ('DANVILLE', 59, '37.28570', '-97.89100'), ('FREEPORT', 6, '37.19870', '-97.85420'), ('HARPER', 1567, '37.28520', '-98.02630'), ('METCALF STN', None, '37.06670', '-97.80000'), ('RUNNYMEDE', None, '37.35000', '-97.93000'), ('WALDRON', 17, '37.00080', '-98.18280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'NEC057': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENKELMAN', 1006, '40.05160', '-101.53460'), ('HAIGLER', 211, '40.01240', '-101.93850'), ('MAX', None, '40.11000', '-101.40000'), ('PARKS', None, '40.04000', '-101.73000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GLD'}, -'NCC161': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALEXANDER MILLS', None, '35.30980', '-81.85700'), ('CLIFFSIDE', None, '35.23810', '-81.77000'), ('ELLENBORO', 479, '35.32960', '-81.75910'), ('FOREST CITY', 7549, '35.33600', '-81.86910'), ('HARRIS', None, '35.24280', '-81.87470'), ('LAKE LURE', 1027, '35.44060', '-82.20660'), ('RUTHERFORDTON', 4131, '35.36480', '-81.96090'), ('SPINDALE', 4022, '35.36030', '-81.92470'), ('SUNSHINE', None, '35.44890', '-81.81060'), ('THERMAL CITY', None, '35.51920', '-81.97500')], 'partOfState': '', 'wfo': 'GSP'}, -'NEC055': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENNINGTON', 937, '41.36760', '-96.15690'), ('BOYS TOWN', 818, '41.25950', '-96.13120'), ('ELKHORN', 6062, '41.28270', '-96.23620'), ('MILLARD', None, '41.20530', '-96.15770'), ('OMAHA', 390007, '41.26390', '-96.01170'), ('RALSTON', 6314, '41.20130', '-96.03670'), ('VALLEY', 1788, '41.31300', '-96.34600'), ('WATERLOO', 459, '41.28780', '-96.28570')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'CTC009': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('ANSONIA', 18554, '41.34340', '-73.06900'), ('BEACON FALLS', None, '41.44000', '-73.04000'), ('BRANFORD', None, '41.28000', '-72.81000'), ('CHESHIRE', None, '41.50420', '-72.90010'), ('DERBY', 12391, '41.32670', '-73.08280'), ('EAST HAVEN', 28189, '41.29560', '-72.86310'), ('GUILFORD', None, '41.28030', '-72.67700'), ('HAMDEN', None, '41.37000', '-72.90000'), ('MADISON', None, '41.27600', '-72.59500'), ('MERIDEN', 58244, '41.53670', '-72.79520'), ('MILFORD', None, '41.22620', '-73.06260'), ('NAUGATUCK', 30989, '41.48960', '-73.05200'), ('NEW HAVEN', 123626, '41.31010', '-72.92410'), ('NORTH BRANDFORD', None, '41.33000', '-72.76000'), ('NORTH HAVEN', 23035, '41.38090', '-72.85640'), ('NORTH MADISON', None, '41.35000', '-72.63000'), ('ORANGE', 13233, '41.27940', '-73.02590'), ('OXFORD', None, '41.42000', '-73.11000'), ('SEYMOUR', None, '41.40000', '-73.06000'), ('SOUTHBURY', None, '41.48560', '-73.22430'), ('WALLINGFORD', None, '41.44980', '-72.81940'), ('WATERBURY', 107271, '41.55840', '-73.03740'), ('WEST HAVEN', 52360, '41.27390', '-72.96830'), ('WOLCOTT', None, '41.61000', '-72.98000'), ('WOODMONT', 1711, '41.22420', '-72.99260')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'NEC053': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('DODGE', 700, '41.72160', '-96.87940'), ('FREMONT', 25174, '41.44080', '-96.49210'), ('HOOPER', 827, '41.61220', '-96.54800'), ('INGLEWOOD', 382, '41.41670', '-96.50160'), ('NICKERSON', 431, '41.53500', '-96.47050'), ('NORTH BEND', 1213, '41.46520', '-96.78310'), ('SCRIBNER', 971, '41.66450', '-96.66490'), ('SNYDER', 318, '41.70450', '-96.78620'), ('UEHLING', 275, '41.73430', '-96.50540'), ('WINSLOW', 104, '41.60880', '-96.50470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEC051': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALLEN', 411, '42.41460', '-96.84280'), ('CONCORD', 160, '42.38420', '-96.98870'), ('DIXON', 108, '42.41560', '-96.99450'), ('MARTINSBURG', 103, '42.50800', '-96.83160'), ('MASKELL', 67, '42.69040', '-96.98150'), ('NEWCASTLE', 299, '42.65200', '-96.87490'), ('PONCA', 1062, '42.56540', '-96.70910'), ('WAKEFIELD', 1411, '42.26760', '-96.86710'), ('WATERBURY', 89, '42.45720', '-96.73520')], 'partOfState': 'NORTHEAST', 'wfo': 'FSD'}, -'WIC033': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BOYCEVILLE', 1043, '45.04260', '-92.03990'), ('COLFAX', 1136, '44.99690', '-91.72590'), ('DOWNING', 257, '45.04850', '-92.12410'), ('ELK MOUND', 785, '44.87510', '-91.68770'), ('KNAPP', 421, '44.95410', '-92.07690'), ('MENOMONIE', 14937, '44.88790', '-91.91400'), ('RIDGELAND', 265, '45.20220', '-91.89740'), ('TAINTER LAKE', 2089, '44.98930', '-91.84760'), ('WHEELER', 317, '45.04370', '-91.90550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'ARC107': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CRUMROD', None, '34.15000', '-90.98330'), ('ELAINE', 865, '34.30830', '-90.85410'), ('HELENA', 6323, '34.52630', '-90.60470'), ('LAKE VIEW', 531, '34.42310', '-90.81030'), ('LEXA', 331, '34.59820', '-90.75260'), ('MARVELL', 1395, '34.55600', '-90.91450'), ('WATKINS CORNER', None, '34.46670', '-90.95000'), ('WEST HELENA', 8689, '34.54600', '-90.64650')], 'partOfState': '', 'wfo': 'MEG'}, -'CTC003': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('AVON', None, '41.80000', '-72.83333'), ('BERLIN', None, '41.61667', '-72.75000'), ('BLOOMFIELD', None, '41.81667', '-72.73333'), ('BRISTOL', 60062, '41.68120', '-72.94100'), ('BURLINGTON', None, '41.76667', '-72.96667'), ('CANTON', None, '41.81667', '-72.90000'), ('EAST GRANBY', None, '41.93333', '-72.71667'), ('EAST HARTFORD', 49575, '41.76140', '-72.61590'), ('EAST WINDSOR', None, '41.85000', '-72.60000'), ('ENFIELD', None, '41.96667', '-72.56667'), ('FARMINGTON', None, '41.71667', '-72.83333'), ('GLASTONBURY', None, '41.70090', '-72.60000'), ('GRANBY', None, '41.95000', '-72.78333'), ('HARTFORD', 121578, '41.76570', '-72.68390'), ('MANCHESTER', None, '41.78333', '-72.51667'), ('MARLBOROUGH', None, '41.63333', '-72.45000'), ('NEW BRITAIN', 71538, '41.67510', '-72.78780'), ('NEWINGTON', 29306, '41.68730', '-72.73070'), ('PLAINVILLE', None, '41.66667', '-72.90000'), ('ROCKY HILL', None, '41.66667', '-72.63333'), ('SIMSBURY', None, '41.88300', '-72.81140'), ('SOUTH WINDSOR', None, '41.81667', '-72.61667'), ('SOUTHINGTON', None, '41.60000', '-72.88333'), ('SUFFIELD', None, '41.98120', '-72.65030'), ('WEST HARTFORD', 63589, '41.76770', '-72.75440'), ('WETHERSFIELD', 26271, '41.70110', '-72.67010'), ('WINDSOR', None, '41.85000', '-72.65000'), ('WINDSOR LOCKS', 12043, '41.92600', '-72.65800')], 'partOfState': 'NORTHERN', 'wfo': 'BOX'}, -'ARC105': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ADONA', 187, '35.04000', '-92.89850'), ('BIGELOW', 329, '34.99900', '-92.63100'), ('CASA', 209, '35.02580', '-93.04430'), ('FOURCHE', 59, '34.99310', '-92.61880'), ('HOUSTON', 159, '35.03490', '-92.69410'), ('PERRY', 314, '35.04490', '-92.79380'), ('PERRYVILLE', 1458, '35.00840', '-92.80350')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'CTC001': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('BETHEL', 9137, '41.37150', '-73.41160'), ('BRIDGEPORT', 139529, '41.18630', '-73.19620'), ('DANBURY', 74848, '41.40210', '-73.47150'), ('DARIEN', 19607, '41.05110', '-73.47970'), ('EASTON', None, '41.24000', '-73.31000'), ('FAIRFIELD', None, '41.13000', '-73.28000'), ('GEORGETOWN', 1650, '41.26000', '-73.43000'), ('MONROE', None, '41.36000', '-73.20000'), ('NEW CANAAN', None, '41.14000', '-73.49000'), ('NEWTOWN', 1843, '41.41320', '-73.31600'), ('NORWALK', 82951, '41.09390', '-73.42020'), ('RIDGEFIELD', 7212, '41.27380', '-73.49990'), ('SHELTON', 38101, '41.32000', '-73.10000'), ('SHERMAN', None, '41.58000', '-73.50000'), ('STAMFORD', 117083, '41.02000', '-73.56000'), ('STRATFORD', 49976, '41.20430', '-73.13020'), ('TRUMBULL', 34243, '41.25820', '-73.20750'), ('WESTPORT', 25749, '41.12320', '-73.34760'), ('WILTON', None, '41.18000', '-73.42000')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'ARC103': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BEARDEN', 1125, '33.72750', '-92.61630'), ('CAMDEN', 13154, '33.56670', '-92.84570'), ('CHIDESTER', 335, '33.69990', '-93.01870'), ('EAST CAMDEN', 902, '33.60850', '-92.74240'), ('LOUANN', 195, '33.39160', '-92.79270'), ('READER', 82, '33.75180', '-93.10120'), ('STEPHENS', 1152, '33.42010', '-93.06740')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'CTC007': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('CHESTER', None, '41.40050', '-72.45380'), ('CLINTON', 3516, '41.27580', '-72.53010'), ('CROMWELL', None, '41.60000', '-72.63000'), ('DEEP RIVER', None, '41.39000', '-72.43010'), ('DURHAM', 2773, '41.47390', '-72.68190'), ('EAST HADDAM', None, '41.45500', '-72.46000'), ('EAST HAMPTON', 2254, '41.57290', '-72.49600'), ('ESSEX', None, '41.35600', '-72.39850'), ('FENWICK', 52, '41.27110', '-72.35540'), ('HIGGANUM', 1671, '41.49120', '-72.55800'), ('KILLINGWORTH', None, '41.35000', '-72.56000'), ('MIDDLETOWN', 43167, '41.54840', '-72.65430'), ('MILLINGTON', None, '41.48000', '-72.35000'), ('MOODUS', 1263, '41.50400', '-72.45010'), ('OLD SAYBROOK', None, '41.29140', '-72.36880'), ('PORTLAND', 5534, '41.56000', '-72.63000'), ('SAYBROOK MANOR', 1133, '41.28030', '-72.40620'), ('WESTBROOK', None, '41.28410', '-72.45250')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'ARC101': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('JASPER', 498, '36.00610', '-93.18830'), ('WESTERN GROVE', 407, '36.10110', '-92.95390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'CTC005': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('BANTAM', 802, '41.72350', '-73.24380'), ('BETHLEHEM VILLAGE', 2022, '41.64260', '-73.20350'), ('CANAAN', 1288, '42.03160', '-73.33140'), ('CORNWALL BRIDGE', None, '41.81800', '-73.37080'), ('FALLS VILLAGE', None, '41.95450', '-73.36050'), ('GAYLORDSVILLE', None, '41.64400', '-73.48720'), ('KENT', None, '41.72420', '-73.47850'), ('LITCHFIELD', 1328, '41.74470', '-73.19010'), ('NEW HARTFORD', None, '41.87970', '-72.97390'), ('NEW MILFORD', 6633, '41.58850', '-73.40680'), ('NEW PRESTON', 1110, '41.68170', '-73.35430'), ('NORFOLK', None, '41.99270', '-73.19880'), ('OAKVILLE', 8618, '41.59190', '-73.08590'), ('SHARON', None, '41.87820', '-73.47430'), ('TERRYVILLE', 5360, '41.67910', '-73.00770'), ('THOMASTON', None, '41.67250', '-73.07320'), ('TORRINGTON', 35202, '41.83500', '-73.12940'), ('WINSTED', 7321, '41.92700', '-73.06690'), ('WOODBURY CENTER', 1298, '41.54660', '-73.20700')], 'partOfState': 'NORTHERN', 'wfo': 'ALY'}, -'IDC023': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ARCO', 1026, '43.63410', '-113.29980'), ('ATOMIC CITY', 25, '43.44430', '-112.81260'), ('BERENICE', None, '43.83000', '-112.99000'), ('BUTTE CITY', 76, '43.60640', '-113.23850'), ('CRATERS OF MOON', None, '43.42000', '-113.53000'), ('HOWE', None, '43.78000', '-113.00000'), ('MOORE', 196, '43.73410', '-113.36610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PIH'}, -'IDC021': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BONNERS FERRY', 2515, '48.69170', '-116.31510'), ('EASTPORT', None, '48.99300', '-116.17480'), ('MEADOW CREEK', None, '48.81870', '-116.15350'), ('MOYIE SPRINGS', 656, '48.72480', '-116.19250'), ('NAPLES', None, '48.56930', '-116.38820'), ('PORTHILL', None, '48.99230', '-116.49150')], 'partOfState': '', 'wfo': 'OTX'}, -'IDC027': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CALDWELL', 25967, '43.65830', '-116.67490'), ('GREENLEAF', 862, '43.67230', '-116.82030'), ('HUSTON', None, '43.61700', '-116.78300'), ('MELBA', 439, '43.37390', '-116.52950'), ('MIDDLETON', 2978, '43.70770', '-116.62400'), ('NAMPA', 51867, '43.58000', '-116.56400'), ('NOTUS', 458, '43.72570', '-116.79980'), ('PARMA', 1771, '43.78560', '-116.94050'), ('WILDER', 1462, '43.67660', '-116.90780')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'MOC217': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRONAUGH', 245, '37.69410', '-94.46850'), ('DEERFIELD', 75, '37.83850', '-94.50580'), ('HARWOOD', 90, '37.95610', '-94.15410'), ('HORTON', None, '37.97460', '-94.36500'), ('METZ', 67, '37.99740', '-94.44300'), ('MILO', 84, '37.75610', '-94.30580'), ('MONTEVALLO', None, '37.72600', '-94.10800'), ('MOUNDVILLE', 103, '37.76590', '-94.45120'), ('NEVADA', 8607, '37.83910', '-94.35440'), ('RICHARDS', 95, '37.90720', '-94.55690'), ('SCHELL CITY', 286, '38.01990', '-94.11550'), ('SHELDON', 529, '37.65800', '-94.29240'), ('STOTESBURY', 43, '37.97180', '-94.56330'), ('WALKER', 275, '37.89850', '-94.23180')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SGF'}, -'AZC012': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BOUSE', 615, '33.92500', '-114.00000'), ('BRENDA', None, '33.69000', '-113.94000'), ('CIBOLA', 172, '33.35000', '-114.68000'), ('EHRENBERG', 1357, '33.62290', '-114.49390'), ('HARCUVAR', None, '33.77000', '-113.65900'), ('PARKER', 3140, '34.13000', '-114.28000'), ('POSTON', 389, '33.95910', '-114.41520'), ('QUARTZSITE', 3354, '33.66700', '-114.21500'), ('SALOME', 1690, '33.78000', '-113.62000'), ('VICKSBURG', None, '33.75000', '-113.73000'), ('VICKSBURG JUNCTION', None, '33.73000', '-113.73000'), ('WENDEN', 556, '33.82000', '-113.55000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PSR'}, -'IAC029': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANITA', 1049, '41.44360', '-94.76530'), ('ATLANTIC', 7257, '41.39820', '-95.01480'), ('CUMBERLAND', 281, '41.27370', '-94.86970'), ('GRISWOLD', 1039, '41.23390', '-95.13890'), ('LEWIS', 438, '41.30630', '-95.08420'), ('MARNE', 149, '41.44850', '-95.11030'), ('MASSENA', 414, '41.25130', '-94.76930'), ('WIOTA', 149, '41.40060', '-94.88750')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'UTC035': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ALTA', 370, '40.57910', '-111.61910'), ('BLUFFDALE', 4700, '40.47600', '-111.95550'), ('BRIGHTON', None, '40.60000', '-111.56000'), ('COPPERTON', None, '40.57000', '-112.10000'), ('COTTONWOOD HEIGHTS', 27569, '40.61010', '-111.80960'), ('DRAPER', 25220, '40.49940', '-111.86370'), ('HERRIMAN', 1523, '40.52000', '-112.03000'), ('HOLLADAY', 14561, '40.67000', '-111.82000'), ('KEARNS', 33659, '40.65250', '-112.00830'), ('MAGNA', 22770, '40.70400', '-112.08620'), ('MIDVALE', 27029, '40.61180', '-111.90230'), ('MURRAY', 34024, '40.65250', '-111.89250'), ('RIVERTON', 25011, '40.51970', '-111.94520'), ('SALT LAKE CITY', 181743, '40.77730', '-111.87000'), ('SANDY', 88418, '40.56970', '-111.85430'), ('SLC ARPT #2', None, '40.61670', '-112.00000'), ('SLC INTL ARPT', None, '40.78330', '-111.96670'), ('SNOWBIRD', None, '40.57000', '-111.65000'), ('SOUTH JORDAN', 29437, '40.55880', '-111.97320'), ('SOUTH SALT LAKE', 22038, '40.71020', '-111.88680'), ('SUGARHOUSE', None, '40.73000', '-111.81000'), ('TAYLORSVILLE', 57439, '40.67000', '-111.93000'), ('UNIV OF UTAH', None, '40.78000', '-111.83000'), ('WEST JORDAN', 68336, '40.59990', '-111.99460'), ('WEST VALLEY CITY', 108896, '40.69090', '-112.00860')], 'partOfState': '', 'wfo': 'SLC'}, -'MOC069': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARBYRD', 528, '36.05260', '-90.24000'), ('CAMPBELL', 1883, '36.49210', '-90.07430'), ('CARDWELL', 789, '36.04720', '-90.29120'), ('CLARKTON', 1330, '36.45240', '-89.96530'), ('GLENNONVILLE', None, '36.58330', '-90.15000'), ('HOLCOMB', 696, '36.40020', '-90.02310'), ('HORNERSVILLE', 686, '36.04030', '-90.11480'), ('KENNETT', 11260, '36.24000', '-90.04870'), ('MALDEN', 4782, '36.58490', '-89.97560'), ('SENATH', 1650, '36.13350', '-90.16110')], 'partOfState': 'SOUTHEAST', 'wfo': 'MEG'}, -'IAC137': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('COBURG', 31, '40.91780', '-95.26560'), ('ELLIOTT', 402, '41.14980', '-95.16300'), ('GRANT', 102, '41.14220', '-94.98510'), ('RED OAK', 6197, '41.01250', '-95.22460'), ('STANTON', 714, '40.98110', '-95.10320'), ('VILLISCA', 1344, '40.93100', '-94.97790')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'MOC215': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARROLL', None, '37.10750', '-91.72630'), ('BENDAVIS', None, '37.29580', '-92.20720'), ('BUCYRUS', None, '37.34410', '-92.01660'), ('CABOOL', 2168, '37.12380', '-92.10110'), ('CLEAR SPRINGS', None, '37.09600', '-91.85300'), ('ELK CREEK', None, '37.18880', '-91.99690'), ('EUNICE', None, '37.24490', '-91.77930'), ('HARTSHORN', None, '37.26470', '-91.67020'), ('HAZELTON', None, '37.52490', '-92.02460'), ('HOUSTON', 1992, '37.32600', '-91.95580'), ('HUGGINS', None, '37.31990', '-92.19830'), ('LICKING', 1471, '37.49940', '-91.85690'), ('PLATO', None, '37.50360', '-92.22460'), ('PRESCOTT', None, '37.43690', '-91.92130'), ('RAYMONDVILLE', 442, '37.33960', '-91.83380'), ('ROBY', None, '37.51550', '-92.13880'), ('SIMMONS', None, '37.23040', '-92.01520'), ('SOLO', None, '37.23330', '-91.95300'), ('SUCCESS', None, '37.44350', '-92.08740'), ('YUKON', None, '37.27290', '-91.84800')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'IAC131': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BAILEY', None, '43.46634', '-92.61673'), ('BROWNVILLE', None, '43.33110', '-92.68252'), ('CARPENTER', 130, '43.41490', '-93.01740'), ('LITTLE CEDAR', None, '43.38410', '-92.73552'), ('MCINTIRE', 173, '43.43720', '-92.59310'), ('MEYER', None, '43.44806', '-92.71908'), ('MITCHELL', 155, '43.32120', '-92.87020'), ('MONA', None, '43.48096', '-92.95118'), ('NEW HAVEN', None, '43.28176', '-92.65146'), ('ORCHARD', 88, '43.22700', '-92.77440'), ('OSAGE', 3451, '43.28360', '-92.81190'), ('OTRANTO', None, '43.49375', '-93.00966'), ('ROCK CREEK', None, '43.23241', '-92.93473'), ('ST. ANSGAR', 1031, '43.37810', '-92.91960'), ('STACYVILLE', 469, '43.43840', '-92.78280'), ('TOETERVILLE', None, '43.44806', '-92.91462')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ARX'}, -'IAC133': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLENCOE', 231, '41.92970', '-96.08100'), ('CASTANA', 178, '42.07360', '-95.90940'), ('MAPLETON', 1416, '42.16770', '-95.79080'), ('MOORHEAD', 232, '41.92430', '-95.85040'), ('ONAWA', 3091, '42.02740', '-96.08810'), ('RODNEY', 74, '42.20480', '-95.95120'), ('SOLDIER', 207, '41.98460', '-95.77960'), ('TURIN', 75, '42.02040', '-95.96580'), ('UTE', 378, '42.04970', '-95.70560'), ('WHITING', 707, '42.12640', '-96.15070')], 'partOfState': 'WEST CENTRAL', 'wfo': 'OAX'}, -'MOC061': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALTAMONT', 218, '39.88890', '-94.08670'), ('COFFEY', 140, '40.10510', '-94.00620'), ('GALLATIN', 1789, '39.91030', '-93.96380'), ('JAMESON', 120, '40.00530', '-93.98760'), ('JAMESPORT', 505, '39.97470', '-93.80210'), ('LOCK SPRINGS', 69, '39.84910', '-93.77590'), ('MCFALL', 135, '40.11170', '-94.22250'), ('PATTONSBURG', 261, '40.04800', '-94.13760'), ('WINSTON', 247, '39.86990', '-94.14150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'LAC095': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('EDGARD', 2637, '30.02510', '-90.55670'), ('GARYVILLE', 2775, '30.07730', '-90.62450'), ('LAPLACE', 27684, '30.07230', '-90.47280'), ('RESERVE', 9111, '30.07540', '-90.56060')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'MOC063': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AMITY', 70, '39.86860', '-94.43450'), ('CAMERON', 8312, '39.74290', '-94.23630'), ('CLARKSDALE', 351, '39.81350', '-94.55020'), ('FAIRPORT', None, '39.98330', '-94.35000'), ('MAYSVILLE', 1212, '39.88700', '-94.36130'), ('OSBORN', 455, '39.75000', '-94.35710'), ('STEWARTSVILLE', 759, '39.75440', '-94.49870'), ('UNION STAR', 433, '39.97940', '-94.59800'), ('WEATHERBY', 123, '39.90920', '-94.24130')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'WIC035': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALTOONA', 6698, '44.80510', '-91.44200'), ('AUGUSTA', 1460, '44.67870', '-91.12120'), ('EAU CLAIRE', 61704, '44.82120', '-91.49230'), ('FAIRCHILD', 564, '44.60550', '-90.95640'), ('FALL CREEK', 1236, '44.76210', '-91.27400')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MOC065': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANUTT', None, '37.71580', '-91.71960'), ('BANGERT', None, '37.77100', '-91.51580'), ('BOSS', None, '37.64300', '-91.18910'), ('DARIEN', None, '37.51990', '-91.59210'), ('GLADDEN', None, '37.49850', '-91.45630'), ('HOWES', None, '37.70940', '-91.51550'), ('HOWES MILL', None, '37.61770', '-91.29160'), ('JADWIN', None, '37.48660', '-91.57070'), ('LAKE SPRING', None, '37.78240', '-91.67830'), ('LECOMA', None, '37.77600', '-91.73070'), ('LENOX', None, '37.65300', '-91.76110'), ('MONTAUK', None, '37.44770', '-91.69550'), ('SALEM', 4854, '37.64550', '-91.53580'), ('SLIGO', None, '37.77380', '-91.37740'), ('STONE HILL', None, '37.60160', '-91.34190'), ('TURTLE', None, '37.52320', '-91.41220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'MOC067': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AVA', 3021, '36.95190', '-92.66020'), ('BRUSHYKNOB', None, '36.96470', '-92.48580'), ('DOGWOOD', None, '37.03770', '-92.83070'), ('DRURY', None, '36.92990', '-92.32240'), ('GENTRYVILLE', None, '36.86380', '-92.36050'), ('GOODHOPE', None, '36.90880', '-92.80750'), ('ROME', None, '36.84130', '-92.77320'), ('SQUIRES', None, '36.85130', '-92.62460'), ('VANZANT', None, '36.96960', '-92.30270')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC213': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRADLEYVILLE', None, '36.78350', '-92.90800'), ('BRANSON', 6050, '36.64350', '-93.21820'), ('BROWNBRANCH', None, '36.79440', '-92.83040'), ('EDGEWATER BEACH', None, '36.66130', '-93.14160'), ('FORSYTH', 1686, '36.68490', '-93.11960'), ('HOLLISTER', 3867, '36.62100', '-93.21520'), ('KIRBYVILLE', None, '36.62290', '-93.16380'), ('KISSEE MILLS', None, '36.68350', '-93.04960'), ('MERRIAM WOODS', 1142, '36.71380', '-93.16160'), ('OZARK BEACH', None, '36.65880', '-93.13850'), ('POWERSITE', None, '36.65550', '-93.12100'), ('PROTEM', None, '36.52880', '-92.85860'), ('RIDGEDALE', None, '36.50380', '-93.22350'), ('ROCKAWAY BEACH', 577, '36.69910', '-93.15970'), ('RUETER', None, '36.60830', '-92.86880'), ('TABLE ROCK', 229, '36.60430', '-93.30030'), ('TANEYVILLE', 359, '36.74130', '-93.03410'), ('WALNUT SHADE', None, '36.73240', '-93.19330')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'WIC133': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BIG BEND', 1278, '42.88230', '-88.20410'), ('BROOKFIELD', 38649, '43.06280', '-88.11980'), ('BUTLER', 1881, '43.10840', '-88.07220'), ('CHENEQUA', 583, '43.12340', '-88.38110'), ('DELAFIELD', 6472, '43.06960', '-88.39190'), ('DOUSMAN', 1584, '43.01480', '-88.47140'), ('EAGLE', 1707, '42.87960', '-88.47130'), ('ELM GROVE', 6249, '43.04760', '-88.08670'), ('HARTLAND', 7905, '43.09820', '-88.34460'), ('LAC LA BELLE', 329, '43.14550', '-88.52570'), ('LANNON', 1009, '43.15140', '-88.16240'), ('MENOMONEE FALLS', 32647, '43.14720', '-88.12590'), ('MERTON', 1926, '43.14100', '-88.31350'), ('MUKWONAGO', 6162, '42.86630', '-88.33120'), ('MUSKEGO', 21397, '42.89110', '-88.12290'), ('NASHOTAH', 1266, '43.09300', '-88.40130'), ('NEW BERLIN', 38220, '42.97280', '-88.12920'), ('NORTH PRAIRIE', 1571, '42.93720', '-88.39560'), ('OCONOMOWOC', 12382, '43.10280', '-88.49680'), ('OCONOMOWOC LAKE', 564, '43.09870', '-88.45500'), ('OKAUCHEE LAKE', 3916, '43.12340', '-88.44060'), ('PEWAUKEE', 8170, '43.08570', '-88.25200'), ('SUSSEX', 8828, '43.13590', '-88.21790'), ('WALES', 2523, '43.00490', '-88.37770'), ('WAUKESHA', 64825, '43.01250', '-88.23820')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'INC163': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('DARMSTADT', 1313, '38.09100', '-87.57620'), ('EVANSVILLE', 121582, '37.98410', '-87.54330'), ('MELODY HILL', 3066, '38.02420', '-87.51320')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'GAC059': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ATHENS', None, '33.95530', '-83.39370'), ('GAINES SCHOOL', None, '33.92660', '-83.33940'), ('WINTERVILLE', 1068, '33.96660', '-83.28180')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'MOC211': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BROWNING', 317, '40.03490', '-93.16020'), ('GREEN CITY', 688, '40.26570', '-92.95710'), ('GREENCASTLE', 308, '40.26150', '-92.87830'), ('HARRIS', 105, '40.30640', '-93.35010'), ('HUMPHREYS', 164, '40.12510', '-93.31840'), ('MILAN', 1958, '40.20320', '-93.12390'), ('NEWTOWN', 209, '40.37660', '-93.33280'), ('OSGOOD', 51, '40.19810', '-93.35060'), ('POLLOCK', 131, '40.35900', '-93.08410'), ('WINIGAN', None, '40.05000', '-92.90000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'WIC131': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('GERMANTOWN', 18260, '43.23610', '-88.12030'), ('HARTFORD', 10905, '43.32370', '-88.38880'), ('JACKSON', 4938, '43.32090', '-88.16390'), ('KEWASKUM', 3274, '43.52190', '-88.23040'), ('NEWBURG', 1119, '43.43140', '-88.04750'), ('SLINGER', 3901, '43.33210', '-88.28570'), ('WEST BEND', 28152, '43.42280', '-88.18420')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'SCC045': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BEREA', 14158, '34.88150', '-82.46510'), ('CAESARS HEAD', None, '35.10330', '-82.61420'), ('CLEVELAND', None, '35.07220', '-82.52750'), ('FORK SHOALS', None, '34.62250', '-82.30690'), ('FOUNTAIN INN', 6017, '34.69350', '-82.20060'), ('GOWENSVILLE', None, '35.11470', '-82.22530'), ('GREENVILLE', 56002, '34.83870', '-82.37160'), ('GREER', 16843, '34.93900', '-82.23180'), ('MARIETTA', None, '35.03350', '-82.49420'), ('MAULDIN', 15224, '34.78710', '-82.30150'), ('PARIS MOUNTAIN STATE PARK', None, '34.94500', '-82.39560'), ('PRINCETON', 65, '34.50080', '-82.28940'), ('SIMPSONVILLE', 14352, '34.73140', '-82.25900'), ('TAYLORS', 20125, '34.91520', '-82.31350'), ('TIGERVILLE', None, '35.07100', '-82.37120'), ('TRAVELERS REST', 4099, '34.96720', '-82.43780'), ('WELCOME', 6390, '34.82090', '-82.45800')], 'partOfState': '', 'wfo': 'GSP'}, -'SCC047': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CALLISON', None, '34.01440', '-82.12580'), ('COKESBURY', 279, '34.28920', '-82.20810'), ('CORONACA', 170, '34.25970', '-82.09440'), ('DYSON', None, '34.16170', '-81.93250'), ('GREENWOOD', 22071, '34.19020', '-82.15280'), ('HODGES', 158, '34.28760', '-82.24800'), ('NINETY SIX', 1936, '34.17200', '-82.02350'), ('TROY', 105, '33.98740', '-82.29680'), ('VERDERY', None, '34.10920', '-82.24940'), ('WARE SHOALS', 2363, '34.39010', '-82.24420')], 'partOfState': '', 'wfo': 'GSP'}, -'SCC041': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CARTERSVILLE', None, '34.08610', '-80.02890'), ('CENTRAL CROSSROADS', None, '33.88780', '-79.91310'), ('CLAUSSEN', None, '34.13080', '-79.63110'), ('COWARD', 650, '33.97310', '-79.74720'), ('EFFINGHAM', None, '34.05780', '-79.75330'), ('EVERGREEN', None, '34.06830', '-79.67920'), ('FLORENCE', 30248, '34.19530', '-79.76280'), ('JOHNSONVILLE', 1418, '33.81780', '-79.44940'), ('KINGSBURG', None, '33.88030', '-79.45220'), ('LAKE CITY', 6478, '33.87080', '-79.75560'), ('MARS BLUFF', None, '34.20530', '-79.65560'), ('OLANTA', 613, '33.93530', '-79.93280'), ('PAMPLICO', 1139, '33.99580', '-79.57030'), ('QUINBY', 842, '34.23230', '-79.73260'), ('SARDIS', None, '34.04030', '-79.94420'), ('SCRANTON', 942, '33.91730', '-79.74360'), ('TIMMONSVILLE', 2315, '34.13470', '-79.94000')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCC043': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ANDREWS', 3068, '33.45110', '-79.56110'), ('ANNANDALE PLANTATION', None, '33.21690', '-79.29750'), ('BETHERA', None, '33.20140', '-79.23830'), ('BROOKGREEN GARDENS', None, '33.52030', '-79.08390'), ('CARVERS BAY', None, '33.61780', '-79.33080'), ('GEORGETOWN', 8950, '33.37670', '-79.29470'), ('GRAVES', None, '33.39330', '-79.36920'), ('LAMBERT', None, '33.32580', '-79.57250'), ('MURRELLS INLET', 5519, '33.55080', '-79.04330'), ('NORTH SANTEE', None, '33.24670', '-79.37690'), ('OATLAND', None, '33.49500', '-79.34750'), ("PAWLEY'S ISLAND", None, '33.43310', '-79.12170'), ('PLANTERSVILLE', None, '33.55530', '-79.21560'), ('PLEASANT HILL', None, '33.68110', '-79.36830'), ('SAMPIT', None, '33.36390', '-79.45890'), ('WEDGEFIELD PLANTATION', None, '33.42440', '-79.24580'), ('YAUHANNAH', None, '33.63190', '-79.18860')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'WIC137': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AURORAVILLE', None, '44.04000', '-89.00000'), ('BORTH', None, '44.09000', '-88.90000'), ('COLOMA', 461, '44.03000', '-89.51000'), ('HANCOCK', 463, '44.13000', '-89.51000'), ('LOHRVILLE', 408, '44.02000', '-89.11000'), ('MOUNT MORRIS', None, '44.11000', '-89.19000'), ('PINE RIVER', None, '44.15000', '-89.08000'), ('PLAINFIELD', 899, '44.21000', '-89.48000'), ('POY SIPPI', None, '44.13000', '-89.00000'), ('REDGRANITE', 1040, '44.03000', '-89.09000'), ('RICHFORD', None, '44.01000', '-89.43000'), ('SAXEVILLE', None, '44.18000', '-89.11000'), ('SILVER LAKE', 2341, '44.04000', '-89.23000'), ('SPRING LAKE', None, '44.01000', '-89.16000'), ('TUSTIN', None, '44.16000', '-88.89000'), ('WAUTOMA', 1998, '44.06000', '-89.28000'), ('WEST BLOOMFIELD', None, '44.21000', '-88.96000'), ('WILD ROSE', 765, '44.18000', '-89.25000')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'SCC049': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALMEDA', None, '32.82970', '-81.04940'), ('BARKERVILLE', None, '32.70560', '-80.93690'), ('BLOUNTVILLE', None, '32.69640', '-80.85170'), ('BRIGHTON', None, '32.61250', '-81.27390'), ('BRUNSON', 589, '32.92530', '-81.18750'), ('CAMP BRANCH', None, '32.81030', '-81.02330'), ('COSBY', None, '32.58170', '-81.24830'), ('CROCKETVILLE', None, '32.91640', '-81.07750'), ('CUMMINGS', None, '32.78690', '-80.99060'), ('DAVIDSON', None, '32.72470', '-80.90080'), ('DE LOACH', None, '32.65970', '-81.17920'), ('DUKES', None, '32.89750', '-81.23810'), ('EARLY BRANCH', None, '32.74560', '-80.92810'), ('ESTILL', 2425, '32.75470', '-81.24220'), ('FECHTIG', None, '32.76890', '-80.96420'), ('FURMAN', 286, '32.68140', '-81.18830'), ('GARNETT', None, '32.60610', '-81.24560'), ('GIFFORD', 370, '32.85940', '-81.23920'), ('HAMPTON', 2837, '32.87780', '-81.12780'), ('KRESS', None, '32.64330', '-80.88440'), ('LENA', None, '32.75330', '-81.21530'), ('LURAY', 115, '32.81360', '-81.24000'), ('MCPHERSONVILLE', None, '32.69170', '-80.91940'), ('MILEY', None, '32.94780', '-81.03190'), ('NIXVILLE', None, '32.74280', '-81.15220'), ('SCOTIA', 227, '32.68080', '-81.24360'), ('SHIRLEY', None, '32.66000', '-81.31640'), ('STAFFORD', None, '32.67000', '-81.16500'), ('VALENTINE', None, '32.82330', '-81.25780'), ('VARNVILLE', 2074, '32.85030', '-81.07940'), ('YEMASSEE', 807, '32.69000', '-80.85080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'NMC001': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALAMEDA', None, '35.18700', '-106.61800'), ('ALBUQUERQUE', 448607, '35.11720', '-106.62460'), ('CANONCITO', None, '35.13700', '-106.37300'), ('CARNUEL', 872, '35.06400', '-106.45700'), ('CEDAR CREST', 1060, '35.10800', '-106.37200'), ('CEDRO', None, '35.02200', '-106.35300'), ('CHILILI', 113, '34.88900', '-106.23200'), ('ESCABOSA', None, '34.92500', '-106.28900'), ('LOS RANCHOS DE ALBUQUERQU', None, '35.16510', '-106.64900'), ('MIERA', None, '34.96500', '-106.29100'), ('NORTH VALLEY', 11923, '35.17320', '-106.62270'), ('PAJARITO', None, '34.98600', '-106.69600'), ('PARADISE HILLS', None, '35.19650', '-106.69430'), ('PONDEROSA', 310, '34.98100', '-106.30300'), ('SAN ANTONITO', None, '35.16300', '-106.34700'), ('SANDIA HEIGHTS', None, '35.17690', '-106.49070'), ('SANDIA PARK', None, '35.16800', '-106.36500'), ('SEDILLO', None, '35.10000', '-106.29500'), ('SOUTH VALLEY', 39060, '35.01000', '-106.67750'), ('TIJERAS', 474, '35.08840', '-106.37490')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'WIC135': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BIG FALLS', 85, '44.61000', '-89.00000'), ('CLINTONVILLE', 4736, '44.61000', '-88.75000'), ('EMBARRASS', 399, '44.66000', '-88.69000'), ('FREMONT', 666, '44.26000', '-88.86000'), ('IOLA', 1298, '44.50000', '-89.11000'), ('KING', None, '44.33000', '-89.13000'), ('LIND CENTER', None, '44.28000', '-89.03000'), ('MANAWA', 1330, '44.46000', '-88.91000'), ('MARION', 1297, '44.66000', '-88.88000'), ('NEW LONDON', 7085, '44.38000', '-88.75000'), ('NORTHLAND', None, '44.59000', '-89.19000'), ('NORTHPORT', None, '44.40000', '-88.80000'), ('OGDENSBURG', 224, '44.45000', '-89.03000'), ('READFIELD', None, '44.26000', '-88.76000'), ('ROYALTON', None, '44.41000', '-88.86000'), ('RURAL', None, '44.31000', '-89.15000'), ('SCANDINAVIA', 349, '44.46000', '-89.13000'), ('SHERIDAN', None, '44.38000', '-89.21000'), ('SUGAR BUSH', None, '44.48000', '-88.73000'), ('SYMCO', None, '44.51000', '-88.90000'), ('WAUPACA', 5676, '44.34000', '-89.06000'), ('WEYAUWEGA', 1806, '44.31000', '-88.93000'), ('WHITE LAKE IN WAUPACA COU', None, '44.36000', '-88.94000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'VAC750': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('RADFORD', 15859, '37.13330', '-80.56670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'MOC115': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BROOKFIELD', 4769, '39.78580', '-93.07630'), ('BUCKLIN', 524, '39.78240', '-92.88930'), ('LACLEDE', 415, '39.78820', '-93.16950'), ('LINNEUS', 369, '39.87690', '-93.18750'), ('MARCELINE', 2558, '39.71700', '-92.94740'), ('MEADVILLE', 457, '39.78780', '-93.30270'), ('NEW BOSTON', None, '39.95000', '-92.88330'), ('PURDIN', 223, '39.95020', '-93.16700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOC117': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AVALON', None, '39.66670', '-93.45000'), ('CHILLICOTHE', 8968, '39.79160', '-93.55410'), ('CHULA', 198, '39.92160', '-93.47630'), ('DAWN', None, '39.66670', '-93.63330'), ('LUDLOW', 204, '39.65350', '-93.70310'), ('MOORESVILLE', 89, '39.74640', '-93.72020'), ('SPRING HILL', None, '39.86670', '-93.65000'), ('UTICA', 274, '39.74560', '-93.62930'), ('WHEELING', 268, '39.78660', '-93.38640')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOC111': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CANTON', 2557, '40.12970', '-91.52380'), ('EWING', 464, '40.00840', '-91.71440'), ('LA BELLE', 669, '40.11640', '-91.91390'), ('LA GRANGE', 1000, '40.04800', '-91.50050'), ('LEWISTOWN', 595, '40.08420', '-91.81270'), ('MAYWOOD', None, '39.95440', '-91.60320'), ('MONTICELLO', 126, '40.11910', '-91.71260'), ('STEFFENVILLE', None, '39.97060', '-91.88200')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'MOC113': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CAVE', 7, '39.02380', '-91.04520'), ('DAVIS', None, '39.05810', '-91.01950'), ('ELSBERRY', 2047, '39.17000', '-90.78990'), ('FOLEY', 178, '39.04570', '-90.74130'), ('HAWK POINT', 459, '38.97120', '-91.13370'), ('MOSCOW MILLS', 1742, '38.94590', '-90.91920'), ('NEW HOPE', None, '39.13540', '-90.86460'), ('OLD MONROE', 250, '38.93130', '-90.74700'), ('OLNEY', None, '39.08400', '-91.24320'), ('SILEX', 206, '39.12630', '-91.05750'), ('TROY', 6737, '38.97690', '-90.97540'), ('TRUXTON', 96, '39.00220', '-91.24060'), ('WHITESIDE', 67, '39.18340', '-91.01650'), ('WINFIELD', 723, '38.99540', '-90.73980')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'OKC091': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('EUFAULA', 2639, '35.28720', '-95.58220'), ('CHECOTAH', 3481, '35.47000', '-95.52280'), ('HANNA', 133, '35.20500', '-95.89000'), ('VERNON', None, '35.21560', '-95.92560'), ('RAIFORD', None, '35.26780', '-95.78670'), ('VIVIAN', None, '35.28970', '-95.71610'), ('STIDHAM', 23, '35.36860', '-95.69940'), ('ONAPA', None, '35.40580', '-95.55310'), ('PIERCE', None, '35.43470', '-95.71610'), ('HITCHITA', 113, '35.51970', '-95.75110'), ('RENTIESVILLE', 102, '35.52140', '-95.49470'), ('COUNCIL HILL', 129, '35.55560', '-95.65110')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'MOC119': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANDERSON', 1856, '36.65050', '-94.44330'), ('GOODMAN', 1183, '36.74160', '-94.39880'), ('LANAGAN', 411, '36.60800', '-94.44740'), ('NOEL', 1480, '36.54550', '-94.48490'), ('PINEVILLE', 768, '36.59440', '-94.38380'), ('POWELL', None, '36.62270', '-94.18040'), ('ROCKY COMFORT', None, '36.74630', '-94.09020'), ('SOUTH WEST CITY', 855, '36.51250', '-94.61110'), ('TIFF CITY', None, '36.66820', '-94.61880')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'FLC093': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BASINGER', None, '27.40000', '-81.01670'), ('BASSWOOD ESTATES', None, '27.27890', '-80.85770'), ('COUNTRY HILLS ESTATES', None, '27.35850', '-80.81540'), ('FORT DRUM', None, '27.52660', '-80.80700'), ('FOUR SEASONS ESTATES', None, '27.25010', '-80.77510'), ('OKEE TANTIE RECREATION AR', None, '27.14900', '-80.87000'), ('OKEECHOBEE', 5376, '27.24130', '-80.82990'), ('TAYLOR CREEK', 4289, '27.21630', '-80.78980'), ('WHISPERING PINES', None, '27.27720', '-80.83980')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'VAC001': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ACCOMAC', 547, '37.71850', '-75.66770'), ('ASSAWOMAN', None, '37.87400', '-75.52290'), ('ATLANTIC', None, '37.90330', '-75.50620'), ('BLOXOM', 395, '37.83080', '-75.62020'), ('CHINCOTEAGUE', 4317, '37.94930', '-75.35530'), ('CLAM', None, '37.81300', '-75.67150'), ('GREENBACKVILLE', None, '38.00140', '-75.41530'), ('GUILFORD', None, '37.82450', '-75.65230'), ('HALLWOOD', 290, '37.87780', '-75.58950'), ('HARBORTON', None, '37.66000', '-75.84000'), ('HORNTOWN', None, '37.97020', '-75.46310'), ('KELLER', 173, '37.62040', '-75.76450'), ('LOCUSTVILLE', None, '37.65340', '-75.67870'), ('MAPPSVILLE', None, '37.84480', '-75.56780'), ('MELFA', 450, '37.64920', '-75.74080'), ('MODEST TOWN', None, '37.81190', '-75.57320'), ('NELSONIA', None, '37.81960', '-75.58780'), ('NEW CHURCH', None, '37.97910', '-75.53150'), ('OAK HALL', None, '37.93650', '-75.54610'), ('ONANCOCK', 1525, '37.70990', '-75.74430'), ('ONLEY', 496, '37.69060', '-75.71930'), ('PAINTER', 246, '37.58550', '-75.78380'), ('PARKSLEY', 837, '37.78580', '-75.65400'), ('PUNGOTEAGUE', None, '37.62990', '-75.81350'), ('QUINBY', None, '37.55630', '-75.73170'), ('SANFORD', None, '37.92200', '-75.66870'), ('SAXIS', 337, '37.92540', '-75.72360'), ('TANGIER', 604, '37.82500', '-75.99340'), ('TASLEY', None, '37.70870', '-75.70520'), ('TEMPERANCEVILLE', None, '37.89340', '-75.54890'), ('WACHAPREAGUE', 236, '37.60620', '-75.68980'), ('WALLOPS ISLAND', None, '37.84390', '-75.47940')], 'partOfState': '', 'wfo': 'AKQ'}, -'MNC119': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ANGUS', None, '48.08110', '-96.70280'), ('BELTRAMI', 101, '47.54320', '-96.52800'), ('BYGLAND', None, '47.81170', '-96.93190'), ('CLIMAX', 243, '47.60680', '-96.81230'), ('CROOKSTON', 8192, '47.77420', '-96.60560'), ('DAVIDSON', None, '47.87670', '-96.84690'), ('DUGDALE', None, '47.70170', '-96.26610'), ('EAST GRAND FORKS', 7501, '47.93000', '-97.01590'), ('ELDRED', None, '47.68280', '-96.78000'), ('ERSKINE', 437, '47.66360', '-96.01370'), ('EUCLID', None, '47.97190', '-96.63860'), ('FERTILE', 893, '47.53210', '-96.29130'), ('FISHER', 435, '47.79930', '-96.79960'), ('FOSSTON', 1575, '47.58090', '-95.74770'), ('GENTILLY', None, '47.78920', '-96.44890'), ('GREENVIEW', None, '47.62580', '-96.56030'), ('GULLY', 106, '47.76900', '-95.62350'), ('HAROLD', None, '47.70220', '-96.49720'), ('KEY WEST', None, '47.93470', '-96.78310'), ('LENGBY', 79, '47.51490', '-95.63350'), ('MALLORY', None, '47.87670', '-96.91140'), ('MAPLE BAY', None, '47.63580', '-96.22470'), ('MCINTOSH', 638, '47.63750', '-95.88520'), ('MELVIN', None, '47.62080', '-96.38890'), ('MENTOR', 150, '47.69660', '-96.14470'), ('NIELSVILLE', 91, '47.52880', '-96.81630'), ('OLGA', None, '47.68720', '-95.66330'), ('SHERACK', None, '48.02080', '-96.78140'), ('TABOR', None, '48.07920', '-96.86250'), ('TRAIL', 62, '47.78370', '-95.69910'), ('WINGER', 205, '47.53700', '-95.98510')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'WYC017': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('GRASS CREEK', None, '43.93000', '-108.65000'), ('HAMILTON DOME', None, '43.77000', '-108.58000'), ('KIRBY', 57, '43.80410', '-108.18020'), ('LUCERNE', 525, '43.73000', '-108.17000'), ('THERMOPOLIS', 3172, '43.64800', '-108.21390')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'NEC129': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BOSTWICK', None, '40.04000', '-98.18500'), ('HARDY', 179, '40.01160', '-97.92330'), ('LAWRENCE', 312, '40.29020', '-98.25900'), ('NELSON', 587, '40.20090', '-98.06900'), ('NORA', 20, '40.16380', '-97.97360'), ('OAK', 60, '40.23730', '-97.90400'), ('RUSKIN', 195, '40.14430', '-97.86650'), ('SUPERIOR', 2055, '40.02240', '-98.06770')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'PAC089': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARLINGTON HEIGHTS', 5132, '41.00440', '-75.21310'), ('BRODHEADSVILLE', 1637, '40.92410', '-75.40330'), ('EAST STROUDSBURG', 9888, '41.00150', '-75.17840'), ('MOUNT POCONO', 2742, '41.12250', '-75.35790'), ('MOUNTAINHOME', 1169, '41.17660', '-75.26320'), ('POCONO PINES', 1013, '41.11680', '-75.45790'), ('STROUDSBURG', 5756, '40.98360', '-75.19760')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'NEC127': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AUBURN', 3350, '40.38830', '-95.84200'), ('BROCK', 162, '40.48110', '-95.95970'), ('BROWNVILLE', 146, '40.39710', '-95.66140'), ('JOHNSON', 280, '40.41130', '-95.99840'), ('JULIAN', 63, '40.52030', '-95.86710'), ('NEMAHA', 178, '40.33780', '-95.67590'), ('PERU', 569, '40.47870', '-95.73100')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'MNC111': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALMORA', None, '46.24640', '-95.36530'), ('AMOR', None, '46.41250', '-95.74500'), ('BATTLE LAKE', 686, '46.28880', '-95.71510'), ('BIG MCDONALD LAKE', None, '46.58000', '-95.76690'), ('BLUFFTON', 210, '46.46930', '-95.23350'), ('BUTLER', None, '46.68810', '-95.35280'), ('CARLISLE', None, '46.36830', '-96.18940'), ('CLITHERALL', 118, '46.27430', '-95.62970'), ('DALTON', 258, '46.17340', '-95.91630'), ('DEER CREEK', 328, '46.39130', '-95.32200'), ('DENT', 192, '46.55210', '-95.71720'), ('DUNVILLA', None, '46.66310', '-96.01580'), ('EDWARDS', None, '46.44890', '-95.98860'), ('ELIZABETH', 172, '46.37930', '-96.13040'), ('ERHARD', 150, '46.48400', '-96.09710'), ('FERGUS FALLS', 13471, '46.28210', '-96.06770'), ('HENNING', 719, '46.32240', '-95.44290'), ('HILLVIEW', None, '46.68030', '-95.25750'), ('LAKE LIDA', None, '46.58220', '-95.97060'), ('MAPLEWOOD STATE PARK', None, '46.53360', '-95.94920'), ('NEW YORK MILLS', 1158, '46.51970', '-95.37420'), ('OTTERTAIL', 451, '46.42850', '-95.55870'), ('OTTERTAIL LAKE', None, '46.39810', '-95.66280'), ('PARKERS PRAIRIE', 991, '46.15380', '-95.32930'), ('PELICAN RAPIDS', 2374, '46.57080', '-96.08560'), ('PERHAM', 2559, '46.59960', '-95.57340'), ('PHELPS', None, '46.38030', '-95.82030'), ('RICHVILLE', 124, '46.50670', '-95.62610'), ('STAR LAKE', None, '46.52920', '-95.80560'), ('UNDERWOOD', 319, '46.28520', '-95.87000'), ('URBANK', 59, '46.12560', '-95.51060'), ('VERGAS', 311, '46.65530', '-95.80380'), ('VINING', 68, '46.26320', '-95.53380'), ('WESTERN', None, '46.15190', '-96.18280'), ('WRIGHTSTOWN', None, '46.27390', '-95.18580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGF'}, -'AKC261': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CHENEGA', 86, '60.10480', '-147.94370'), ('CHISTOCHINA', 93, '62.56440', '-144.68720'), ('CHITINA', 123, '61.52480', '-144.48910'), ('COPPER CENTER', 362, '61.98080', '-145.35110'), ('COPPERVILLE', 179, '62.04390', '-145.42070'), ('CORDOVA', 2454, '60.54780', '-145.74760'), ('EYAK', None, '60.52850', '-145.59260'), ('GAKONA', 215, '62.29270', '-145.30950'), ('GLENNALLEN', 554, '62.08490', '-145.60350'), ('GULKANA', 88, '62.25270', '-145.39900'), ('KENNY LAKE', 410, '61.71930', '-144.94830'), ('MCCARTHY', 42, '61.42320', '-142.89800'), ('MENDELTNA', 63, '62.06620', '-146.44990'), ('MENTASTA LAKE', 142, '62.85180', '-143.76090'), ('PAXSON', 43, '63.08990', '-145.61300'), ('SLANA', 124, '62.70150', '-143.99400'), ('TATITLEK', 107, '60.88390', '-146.67770'), ('TONSINA', 92, '61.63580', '-145.15750')], 'partOfState': '', 'wfo': 'AJK'}, -'MIC095': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BETSY LAKE', None, '46.62400', '-85.27400'), ('CRISP POINT', None, '46.75300', '-85.25700'), ('DEER PARK', None, '46.67000', '-85.60000'), ('DOLLARVILLE', None, '46.35100', '-85.54200'), ('HELMER', None, '46.27000', '-85.72000'), ('MCMILLAN', None, '46.33000', '-85.67000'), ('NEWBERRY', 2686, '46.35330', '-85.50900'), ('PIKE LAKE', None, '46.64200', '-85.40700'), ('PINE STUMP JUNCTION', None, '46.57000', '-85.58000'), ('SOO JUNCTION', None, '46.33600', '-85.25900')], 'partOfState': '', 'wfo': 'MQT'}, -'NEC123': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANGORA', None, '41.87000', '-103.10000'), ('BAYARD', 1247, '41.75710', '-103.32300'), ('BRIDGEPORT', 1594, '41.66670', '-103.09830'), ('BROADWATER', 140, '41.59760', '-102.85150'), ('REDINGTON', None, '41.59000', '-103.30000')], 'partOfState': '', 'wfo': 'CYS'}, -'MNC115': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ASKOV', 368, '46.18870', '-92.78150'), ('BELDEN', None, '46.32230', '-92.31340'), ('BEROUN', None, '45.91030', '-92.95530'), ('BROOK PARK', 156, '45.94890', '-93.07310'), ('BRUNO', 102, '46.28050', '-92.66750'), ('CLOVERDALE', None, '46.01240', '-92.74040'), ('CLOVERTON', None, '46.16810', '-92.31970'), ('DENHAM', 40, '46.36230', '-92.94360'), ('DUQUETTE', None, '46.37040', '-92.55360'), ('DUXBURY', None, '46.12780', '-92.50890'), ('FINLAYSON', 314, '46.20500', '-92.92760'), ('FRIESLAND', None, '46.08630', '-92.92950'), ('GREELY', None, '45.74540', '-93.06860'), ('HARLIS', None, '46.41220', '-92.31280'), ('HENRIETTE', 101, '45.87130', '-93.12000'), ('HINCKLEY', 1291, '46.01450', '-92.93840'), ('KERRICK', 71, '46.33970', '-92.58560'), ('KINGSDALE', None, '46.23840', '-92.31170'), ('MARKVILLE', None, '46.09200', '-92.33080'), ('NICKERSON', None, '46.41130', '-92.49930'), ('PINE CITY', 3043, '45.83090', '-92.96990'), ('ROCK CREEK', 1119, '45.75930', '-92.96600'), ('RUTLEDGE', 196, '46.26000', '-92.86920'), ('SANDSTONE', 1549, '46.12520', '-92.86460'), ('STURGEON LAKE', 347, '46.38330', '-92.82710'), ('WEST ROCK', None, '45.76720', '-93.02180'), ('WILLOW RIVER', 309, '46.32000', '-92.83670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DLH'}, -'NEC121': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARCHER', None, '41.16640', '-98.13000'), ('CENTRAL CITY', 2998, '41.11440', '-98.00280'), ('CHAPMAN', 341, '41.02290', '-98.15970'), ('CLARKS', 361, '41.21630', '-97.83940'), ('PALMER', 472, '41.22750', '-98.21890'), ('SILVER CREEK', 441, '41.33280', '-97.66570')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'MNC117': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('EDGERTON', 1033, '43.87420', '-96.13060'), ('HATFIELD', 47, '43.95160', '-96.18910'), ('HOLLAND', 215, '44.09090', '-96.19170'), ('IHLEN', 107, '43.91000', '-96.37190'), ('JASPER', 597, '43.84960', '-96.39950'), ('PIPESTONE', 4280, '44.00000', '-96.31410'), ('RUTHTON', 284, '44.17780', '-96.10390'), ('TROSKY', 116, '43.88840', '-96.25570'), ('WOODSTOCK', 132, '44.01040', '-96.09650')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'FLC131': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLIGATOR', None, '30.41830', '-86.22800'), ('ALPINE HEIGHTS', None, '30.74580', '-86.21610'), ('ARGYLE', None, '30.71900', '-86.04430'), ('BRUCE', None, '30.47220', '-85.96420'), ('BUNKER', None, '30.38620', '-86.08300'), ('CANEY CREEK', None, '30.89970', '-86.20870'), ('CENTER RIDGE', None, '30.79840', '-86.09420'), ('CHOCTAW', None, '30.36630', '-86.10500'), ('CHOCTAW BAY ESTATES', None, '30.37290', '-86.13600'), ('CLEAR SPRINGS', None, '30.97980', '-86.34540'), ('CLUSTER SPRINGS', None, '30.83840', '-86.20540'), ('COSSON MILL', None, '30.69850', '-86.18220'), ('DARLINGTON', None, '30.94240', '-86.05880'), ('DE FUNIAK SPRINGS', 5089, '30.71700', '-86.11820'), ('DEFUNIAK SPRINGS A/P', None, '30.72980', '-86.15180'), ('DIXON', None, '30.74100', '-86.13280'), ('DOUGLASS CROSSROADS', None, '30.68860', '-85.97630'), ('EALUM', None, '30.84030', '-86.24360'), ('EUCHEEANNA', None, '30.64570', '-86.04600'), ('FLOWERSVILLE', None, '30.95580', '-86.33850'), ('FOX HILL', None, '30.82120', '-86.29690'), ('FREEPORT', 1190, '30.50010', '-86.13520'), ('GASKIN', None, '30.97080', '-86.13530'), ('GLENDALE', None, '30.86290', '-86.11450'), ('GORDON', None, '30.88980', '-86.27960'), ('GROSH', None, '30.39490', '-86.28360'), ('INWOOD', 6925, '30.70040', '-85.97410'), ('IONIA', None, '30.70710', '-86.21070'), ('KNOX HILL', None, '30.64150', '-85.95830'), ('KOERBER', None, '30.72720', '-86.07150'), ('LAKEWOOD', None, '30.98720', '-86.28290'), ('LIBERTY', None, '30.82140', '-86.21510'), ('MILLER BEND', None, '30.47350', '-85.88510'), ('MOSSY HEAD', None, '30.74310', '-86.31500'), ('NARROWS', None, '30.75880', '-86.14730'), ('NATURAL BRIDGE', None, '30.98250', '-86.20550'), ('NEW HARMONY', None, '30.85360', '-86.28000'), ('NEW HOME', None, '30.60940', '-86.21990'), ('OAKWOOD HILLS', None, '30.75810', '-86.25620'), ('OLD BAY VIEW', None, '30.43690', '-86.11010'), ('OWLS HEAD', None, '30.55950', '-86.10390'), ('PAXTON', 656, '30.98170', '-86.30980'), ('PINEY GROVE', None, '30.80290', '-86.13000'), ('PLEASANT GROVE', None, '30.96880', '-86.35480'), ('PLEASANT HILL', None, '30.82400', '-86.06370'), ('PLEASANT RIDGE', None, '30.69190', '-86.17400'), ('PORT WASHINGTON', None, '30.36830', '-86.11350'), ('PORTLAND', None, '30.51230', '-86.19580'), ('RED BAY', None, '30.59020', '-85.94350'), ('ROCK HILL', None, '30.60070', '-86.10610'), ('SAND HILL', None, '30.83650', '-86.19070'), ('SANDESTIN', None, '30.37990', '-86.33040'), ('SANTA ROSA BEACH', None, '30.37390', '-86.22830'), ('SCONIERS MILL', None, '30.67940', '-86.16390'), ('SHADY GROVE', None, '30.65300', '-85.99580'), ('SINAI', None, '30.66080', '-85.91040'), ('STEELE CHURCH', None, '30.64790', '-86.14750'), ('TURQUOISE BEACH', None, '30.40470', '-86.30820'), ('UNION', None, '30.80630', '-86.04180'), ('WALCAN', None, '30.72440', '-86.08600')], 'partOfState': '', 'wfo': 'TAE'}, -'FLC133': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BUNKER DONATION', None, '30.52850', '-85.86970'), ('CARYVILLE', 218, '30.77010', '-85.81460'), ('CHIPLEY', 3592, '30.77850', '-85.53900'), ('CHIPLEY MUNI A/P', None, '30.75720', '-85.51510'), ('COUNTRY OAKS', None, '30.60600', '-85.45600'), ('CRYSTAL LAKE', 5341, '30.44180', '-85.68860'), ('EBRO', 250, '30.44270', '-85.87410'), ('FIVE POINTS', 1362, '30.71100', '-85.75190'), ('GREENHEAD', None, '30.50160', '-85.66050'), ('HINSONS CROSSROADS', None, '30.66690', '-85.84250'), ('NEW HOPE', None, '30.57650', '-85.80920'), ('ORANGE HILL', None, '30.69490', '-85.50060'), ('POPLAR HEAD', None, '30.71830', '-85.64770'), ('RED HEAD', None, '30.48370', '-85.84230'), ('SUNNY HILLS', None, '30.53500', '-85.62470'), ('VERNON', 743, '30.62330', '-85.71260'), ('WAUSAU', 398, '30.63190', '-85.58890')], 'partOfState': '', 'wfo': 'TAE'}, -'ALC009': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALLGOOD', 629, '33.90640', '-86.51800'), ('BLOUNTSVILLE', 1768, '34.08090', '-86.58840'), ('CLEVELAND', 1241, '33.99490', '-86.57050'), ('COUNTY LINE', 257, '33.82100', '-86.72280'), ('HAYDEN', 470, '33.89530', '-86.75440'), ('HIGHLAND LAKE', 408, '33.88920', '-86.42380'), ('LOCUST FORK', 1016, '33.90270', '-86.62170'), ('NECTAR', 372, '33.96900', '-86.63630'), ('ONEONTA', 5576, '33.95120', '-86.47060'), ('ROSA', 313, '33.98450', '-86.50870'), ('SMOKE RISE', 1750, '33.87990', '-86.82450'), ('SNEAD', 748, '34.11590', '-86.39150'), ('SUSAN MOORE', 721, '34.07410', '-86.42970')], 'partOfState': '', 'wfo': 'BMX'}, -'VAC620': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('FRANKLIN', 8346, '36.68080', '-76.93600')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'ALC005': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BLUE SPRINGS', 121, '31.66050', '-85.50310'), ('CLAYTON', 1475, '31.88070', '-85.45120'), ('CLIO', 2206, '31.70930', '-85.61050'), ('EUFAULA', 13908, '31.90930', '-85.15040'), ('LOUISVILLE', 612, '31.78110', '-85.55800')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'ALC007': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BRENT', 4024, '32.94230', '-87.17620'), ('CENTREVILLE', 2466, '32.95890', '-87.13270'), ('WEST BLOCTON', 1372, '33.11810', '-87.12580')], 'partOfState': '', 'wfo': 'BMX'}, -'ALC001': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AUTAUGAVILLE', 820, '32.43100', '-86.65580'), ('BILLINGSLEY', 116, '32.66030', '-86.70850'), ('PRATTVILLE', 24303, '32.46170', '-86.44670')], 'partOfState': '', 'wfo': 'BMX'}, -'FLC091': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AUBURN', None, '30.82000', '-86.53900'), ('BAKER', None, '30.79700', '-86.68190'), ('BLACKMAN', None, '30.92400', '-86.63700'), ('CAMPTON', None, '30.87300', '-86.52700'), ('CANNON TOWN', None, '30.85200', '-86.68000'), ('CRESTVIEW', 14766, '30.76220', '-86.57480'), ('CRESTVIEW AIRPORT', None, '30.77900', '-86.52300'), ('DEERLAND', None, '30.75700', '-86.44500'), ('DESTIN', 11119, '30.40500', '-86.49650'), ('DORCAS', None, '30.79800', '-86.41600'), ('EGLIN AFB', 8082, '30.46040', '-86.54990'), ('ESCAMBIA FARMS', None, '30.95800', '-86.63500'), ('FORT WALTON BEACH', 19973, '30.42550', '-86.58500'), ('GALLIVER', None, '30.72500', '-86.71100'), ('GOOD HOPE', None, '30.96700', '-86.63700'), ('HOLT', None, '30.72200', '-86.67300'), ('LAUREL HILL', 549, '30.96510', '-86.45680'), ('MARY ESTHER', 4055, '30.41130', '-86.66300'), ('MILLIGAN', None, '30.75200', '-86.64100'), ('NICEVILLE', 11684, '30.50200', '-86.46300'), ('OCEAN CITY', 5594, '30.43900', '-86.59100'), ('PEADEN', None, '30.90850', '-86.59400'), ('POSTIL', None, '30.48800', '-86.48000'), ('SEMINOLE', 10890, '30.47650', '-86.41100'), ('SVEA', None, '30.96500', '-86.40500'), ('VALPARAISO', 6408, '30.51300', '-86.49500'), ('WRIGHT', 21697, '30.44570', '-86.64030')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'LAC005': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DONALDSONVILLE', 7605, '30.09810', '-90.99670'), ('GEISMER', None, '30.20420', '-91.02250'), ('GONZALES', 8156, '30.21680', '-90.92360'), ('PRAIRIEVILLE', None, '30.30280', '-90.97190'), ('SORRENTO', 1227, '30.18830', '-90.86580')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'WYC011': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALADDIN', None, '44.63330', '-104.18330'), ('ALVA', None, '44.70000', '-104.45000'), ('BEULAH', None, '44.53330', '-104.08330'), ('CARLILE', None, '44.48330', '-104.80000'), ('COLONY', None, '44.91450', '-104.17480'), ('DEVILS TOWER', None, '44.60000', '-104.73330'), ('DEVILS TOWER JUNCTION', None, '44.50420', '-104.68740'), ('FARRALL', None, '44.58330', '-104.23330'), ('HULETT', 408, '44.68040', '-104.60380'), ('INYAN KARA MOUNTAIN', None, '44.21380', '-104.34870'), ('KEYHOLE RESERVOIR', None, '44.36670', '-104.85000'), ('LIGHTNING FLAT', None, '44.98330', '-105.03330'), ('LINDEN', None, '44.31670', '-104.60000'), ('MONA', None, '44.81670', '-104.38330'), ('MOORCROFT', 807, '44.26670', '-104.95000'), ('MOSKEE', None, '44.28330', '-104.18330'), ('NEW HAVEN', None, '44.75000', '-104.85000'), ('OSHOTO', None, '44.60000', '-104.95000'), ('PINE HAVEN', 222, '44.34880', '-104.81010'), ('STRONER', None, '44.77000', '-105.05000'), ('SUNDANCE', 1161, '44.40470', '-104.37420'), ('WARREN PEAK', None, '44.48180', '-104.44210'), ('WONDER VIEW', None, '44.45000', '-104.63330')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'TXC201': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALDINE', 13979, '29.91360', '-95.37600'), ('BARRETT', 2872, '29.87300', '-95.06200'), ('BAYTOWN', 66430, '29.74850', '-94.96900'), ('BELLAIRE', 15642, '29.70380', '-95.46080'), ('BUNKER HILL VILLAGE', 3654, '29.76470', '-95.53160'), ('CHANNELVIEW', 29685, '29.78860', '-95.11510'), ('CLOVERLEAF', 23508, '29.78730', '-95.17280'), ('CROSBY', 1714, '29.91410', '-95.05820'), ('DEER PARK', 28520, '29.69040', '-95.11530'), ('EL LAGO', 3075, '29.57280', '-95.04450'), ('GALENA PARK', 10592, '29.74490', '-95.23420'), ('HEDWIG VILLAGE', 2334, '29.77980', '-95.51920'), ('HIGHLANDS', 7089, '29.81270', '-95.05750'), ('HILSHIRE VILLAGE', 720, '29.79020', '-95.48800'), ('HOUSTON', 1953631, '29.76870', '-95.38670'), ('HUMBLE', 14579, '29.99470', '-95.26470'), ('HUNTERS CREEK VILLAGE', 4374, '29.77380', '-95.49770'), ('JACINTO CITY', 10302, '29.76600', '-95.24090'), ('JERSEY VILLAGE', 6880, '29.88830', '-95.56840'), ('KATY', 11775, '29.79830', '-95.82310'), ('KINGWOOD', None, '30.05790', '-95.18620'), ('LA PORTE', 31880, '29.66660', '-95.04470'), ("MORGAN'S POINT", 336, '29.67610', '-95.00520'), ('NASSAU BAY', 4170, '29.54530', '-95.08770'), ('PASADENA', 141674, '29.66060', '-95.15200'), ('PINEY POINT VILLAGE', 3380, '29.75990', '-95.51550'), ('SHELDON', 1831, '29.86030', '-95.13360'), ('SHOREACRES', 1488, '29.61790', '-95.00160'), ('SOUTH HOUSTON', 15833, '29.66080', '-95.22800'), ('SOUTHSIDE PLACE', 1546, '29.70840', '-95.43520'), ('SPRING', 36385, '30.06190', '-95.38380'), ('SPRING VALLEY', 3611, '29.78810', '-95.50390'), ('TAYLOR LAKE VILLAGE', 3694, '29.57370', '-95.05480'), ('TOMBALL', 9089, '30.09690', '-95.61640'), ('WALLER', 2092, '30.05780', '-95.92330'), ('WEBSTER', 9083, '29.53280', '-95.11640'), ('WEST UNIVERSITY PLACE', 14211, '29.71520', '-95.43130')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC203': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HALLSVILLE', 2772, '32.50340', '-94.57610'), ('MARSHALL', 23935, '32.53600', '-94.35080'), ('NESBITT', 302, '32.58930', '-94.44530'), ('SCOTTSVILLE', 263, '32.53590', '-94.24140'), ('UNCERTAIN', 150, '32.70860', '-94.12250'), ('WASKOM', 2068, '32.47790', '-94.06480')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXC205': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHANNING', 356, '35.68210', '-102.33170'), ('HARTLEY', 441, '35.88560', '-102.39640'), ('ROMERO', None, '35.72750', '-102.93080')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC207': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HASKELL', 3106, '33.15900', '-99.73180'), ('IRBY', None, '33.17970', '-99.52220'), ("O'BRIEN", 132, '33.38000', '-99.84330'), ('ROCHESTER', 378, '33.31580', '-99.85560'), ('RULE', 698, '33.18440', '-99.89330'), ('SAGERTON', None, '33.07690', '-99.95530'), ('WEINERT', 177, '33.32430', '-99.67290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXC209': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUDA', 2404, '30.08580', '-97.83970'), ('DRIFTWOOD', None, '30.11670', '-98.03330'), ('DRIPPING SPRINGS', 1548, '30.18850', '-98.08830'), ('HAYS', 233, '30.12280', '-97.87100'), ('HENLY', None, '30.20000', '-98.21670'), ('KYLE', 5314, '29.99400', '-97.87060'), ('MOUNTAIN CITY', 671, '30.03850', '-97.89300'), ('SAN MARCOS', 34733, '29.88020', '-97.92900'), ('UHLAND', 386, '29.96370', '-97.79460'), ('WIMBERLEY', 3797, '29.99290', '-98.10150'), ('WOODCREEK', 1274, '30.03110', '-98.11220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'NMC005': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BITTER LAKE WILDLIFE REFU', None, '33.45900', '-104.40400'), ('DEXTER', 1235, '33.19470', '-104.36840'), ('DUNKEN', None, '32.81300', '-105.20200'), ('ELK', None, '32.94300', '-105.33400'), ('ELKINS', None, '33.69400', '-104.05400'), ('GREENFIELD', None, '33.16500', '-104.34900'), ('HAGERMAN', 1168, '33.11350', '-104.32830'), ('LAKE ARTHUR', 432, '32.99970', '-104.36340'), ('MESA', None, '33.98400', '-104.67700'), ('MIDWAY', None, '33.29500', '-104.45000'), ('ROSWELL', 45293, '33.37110', '-104.52940'), ('ROSWELL CORRECTIONAL FACI', None, '33.13300', '-104.53300')], 'partOfState': 'SOUTHEAST', 'wfo': 'ABQ'}, -'NMC006': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ACOMA PUEBLO', None, '34.89600', '-107.58100'), ('ACOMITA LAKE', 312, '35.07020', '-107.61300'), ('BIBO', None, '35.17400', '-107.38800'), ('BLUEWATER LAKE', None, '35.30000', '-108.08300'), ('CEBOLLETA', None, '35.17400', '-107.39600'), ('CUBERO', None, '35.08600', '-107.51800'), ('EL MORRO', None, '35.04400', '-108.32000'), ('ENCINAL', 200, '35.11700', '-107.46400'), ('FENCE LAKE', None, '34.65300', '-108.67700'), ('GRANTS', 8806, '35.15340', '-107.83830'), ('LAGUNA PUEBLO', None, '35.04100', '-107.37300'), ('MCCARTYS', None, '35.06300', '-107.66900'), ('MESITA', 776, '35.01310', '-107.33070'), ('MILAN', 1891, '35.18900', '-107.89200'), ('NEW LAGUNA', None, '35.04100', '-107.42100'), ('NORTH ACOMITA VILLAGE', 288, '35.06320', '-107.56540'), ('OJO CALIENTE', None, '34.91700', '-108.96800'), ('PAGUATE', 474, '35.13460', '-107.36380'), ('PARAJE', 669, '35.04610', '-107.46730'), ('PINE HILL', None, '35.00000', '-108.40000'), ('SAN FIDEL', None, '35.08200', '-107.59900'), ('SAN MATEO', None, '35.33100', '-107.64300'), ('SAN RAFAEL', None, '35.11300', '-107.88200'), ('SEAMA', 333, '35.04740', '-107.52750'), ('SKYLINE-GANIPA', 1035, '35.03460', '-107.61530')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABQ'}, -'NMC007': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABBOTT', None, '36.30600', '-104.25800'), ('ANGEL FIRE', 1048, '36.39060', '-105.27870'), ('BLACK LAKE', None, '36.29800', '-105.25800'), ('CIMARRON', 917, '36.50990', '-104.91260'), ('EAGLE NEST', 306, '36.55300', '-105.26080'), ('ELIZABETHTOWN', None, '36.61900', '-105.28400'), ('FARLEY', None, '36.35300', '-104.03900'), ('MAXWELL', 274, '36.54050', '-104.54210'), ('MIAMI', None, '36.35000', '-104.79300'), ('PHILMONT SCOUT RANCH', None, '36.48300', '-104.93300'), ('RATON', 7282, '36.88570', '-104.44150'), ('RATON CREWS AIRPORT', None, '36.73300', '-104.50000'), ('RAYADO', None, '36.36900', '-104.92600'), ('SPRINGER', 1285, '36.36620', '-104.59310'), ('SUGARITE', None, '36.94400', '-104.38100'), ('UTE PARK', None, '36.55800', '-105.11400')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'MSC049': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOLTON', 629, '32.35260', '-90.45740'), ('CLINTON', 23347, '32.33970', '-90.33490'), ('EDWARDS', 1347, '32.33230', '-90.60470'), ('JACKSON', 184256, '32.32050', '-90.20760'), ('LEARNED', 50, '32.19770', '-90.54870'), ('RAYMOND', 1664, '32.26030', '-90.42270'), ('TERRY', 664, '32.10280', '-90.29880'), ('UTICA', 966, '32.10330', '-90.62210')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'NMC003': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALMA', None, '33.37900', '-108.90300'), ('APACHE CREEK', None, '33.83300', '-108.62400'), ('ARAGON', None, '33.88100', '-108.53800'), ('CRUZVILLE', None, '33.80700', '-108.66500'), ('DATIL', None, '34.14500', '-107.84300'), ('GLENWOOD', None, '33.31700', '-108.88300'), ('LUNA', None, '33.81900', '-108.95400'), ('MOGOLLON', None, '33.39700', '-108.79400'), ('NATIONAL RADIO ASTRONOMY', None, '33.87700', '-107.72700'), ('OLD HORSE SPRINGS', None, '33.92400', '-108.22700'), ('OMEGA', None, '34.32300', '-108.37400'), ('PIETOWN', None, '34.29800', '-108.13400'), ('PLEASANTON', None, '33.27200', '-108.87200'), ('QUEMADO LAKE', None, '34.33400', '-108.49500'), ('RED HILL', None, '34.21900', '-108.87200'), ('RESERVE', 387, '33.70840', '-108.76120'), ('SALT LAKE', None, '34.45300', '-108.76900'), ('SAN FRANCISCO PLAZA', None, '33.69300', '-108.76600')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABQ'}, -'CAC055': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AMERICAN CANYON', 9774, '38.17320', '-122.26120'), ('ANGWIN', 3148, '38.57760', '-122.44800'), ('CALISTOGA', 5190, '38.58140', '-122.58170'), ('DEER PARK', 1433, '38.53280', '-122.46860'), ('NAPA', 72585, '38.29790', '-122.29990'), ('ST. HELENA', 5950, '38.50470', '-122.46570'), ('YOUNTVILLE', 2916, '38.39140', '-122.36780')], 'partOfState': '', 'wfo': 'MTR'}, -'CAC057': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALTA SIERRA', 6522, '39.12290', '-121.05260'), ('BALD MOUNTAIN SUMMIT', None, '39.33440', '-121.01220'), ('BOCA RESERVOIR', None, '39.40000', '-120.09000'), ('BOWMAN LAKE', None, '39.44830', '-120.65000'), ('CEDAR RIDGE', None, '39.19880', '-121.02000'), ('CHEROKEE', None, '39.37030', '-121.04190'), ('DELEVAN NATIONAL WILDLIFE', None, '39.31670', '-121.10000'), ('FLORISTON', None, '39.40000', '-120.01000'), ('GLENSHIRE-DEVONSHIRE', None, '39.35050', '-120.08750'), ('GRANITEVILLE', None, '39.44080', '-120.73860'), ('GRASS VALLEY', 10922, '39.22150', '-121.05670'), ('HIGGINS CORNER', None, '39.04280', '-121.09390'), ('HIRSCHDALE', None, '39.37000', '-120.07000'), ('HOBART MILLS', None, '39.40000', '-120.18000'), ('INDEPENDENCE LAKE', None, '39.44000', '-120.30000'), ('KINGVALE', None, '39.32110', '-120.42780'), ('LAKE OF THE PINES', 3956, '39.03970', '-121.05550'), ('LAKE SPAULDING', None, '39.32720', '-120.64190'), ('LAKE WILDWOOD', 4868, '39.23310', '-121.19940'), ('MEADOW LAKE', None, '39.40360', '-120.49720'), ('NEVADA CITY', 3001, '39.26040', '-121.02120'), ('PENN VALLEY', 1387, '39.19620', '-121.18990'), ('PROSSER CREEK RESERVOIR', None, '39.38000', '-120.17000'), ('RATTLESNAKE MOUNTAIN', None, '39.31580', '-120.52940'), ('ROUGH AND READY', None, '39.23030', '-121.13500'), ('SCOTTS FLAT', None, '39.28330', '-120.91250'), ('SKILLMAN CAMPGROUND', None, '39.31830', '-120.78920'), ('SODA SPRINGS', None, '39.32300', '-120.37880'), ('SWEETLAND', None, '39.34310', '-121.11920'), ('TRUCKEE', 13864, '39.32640', '-120.20230'), ('WHITE CLOUD CAMPGROUND', None, '39.32010', '-120.84530')], 'partOfState': 'CENTRAL', 'wfo': 'REVSTO'}, -'MDC039': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BYRDTOWN', None, '37.95950', '-75.83990'), ('CHAMP', None, '38.15390', '-75.80710'), ('COKESBURY', None, '38.12680', '-75.57900'), ('CRISFIELD', 2723, '37.97710', '-75.85930'), ('DAMES QUARTER', 188, '38.18850', '-75.89750'), ('DEAL ISLAND', 578, '38.15920', '-75.94880'), ('EDEN', 793, '38.28120', '-75.65070'), ('FAIRMOUNT', 537, '38.09010', '-75.81740'), ('HOPEWELL', None, '38.00690', '-75.81730'), ('KINGSTON', None, '38.07430', '-75.72850'), ('LAWSONIA', None, '37.95750', '-75.84200'), ('MANOKIN', None, '38.11530', '-75.75600'), ('MARION STATION', None, '38.01631', '-75.73219'), ('MONIE', None, '38.18610', '-75.81320'), ('MOUNT VERNON', 761, '38.24530', '-75.82180'), ('ORIOLE', None, '38.17440', '-75.80760'), ('PRINCESS ANNE', 2313, '38.20430', '-75.69540'), ('REHOBETH', None, '38.03930', '-75.66670'), ('RUMBLEY', None, '38.09190', '-75.84940'), ('SHELLTOWN', None, '37.98240', '-75.64400'), ('UPPER FAIRMOUNT', None, '38.10420', '-75.79140'), ('UPPER HILL', None, '38.11190', '-75.79000'), ('WESTOVER', None, '38.12280', '-75.70690'), ('WIDGEON', None, '38.25110', '-75.76940')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'CAC051': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BENTON', None, '37.82000', '-118.48000'), ('BENTON HOT SPRINGS', None, '37.78000', '-118.52800'), ('BODIE', None, '38.21200', '-119.00800'), ('BRIDGEPORT', None, '38.26000', '-119.22000'), ('BRIDGEPORT RESERVOIR', None, '38.31990', '-119.22000'), ('CHALFANT', None, '37.53000', '-118.36000'), ('COLEVILLE', None, '38.57000', '-119.51000'), ('CONWAY SUMMIT', None, '38.09000', '-119.18000'), ('CRESTVIEW', None, '37.75600', '-118.98700'), ('CROWLEY LAKE', None, '37.61000', '-118.74000'), ('JUNE LAKE', None, '37.78000', '-119.08000'), ('LEAVITT MEADOWS', None, '38.32000', '-119.55000'), ('LEE VINING', None, '37.96000', '-119.12000'), ('MAMMOTH LAKES', 7093, '37.64400', '-118.95500'), ('MAMMOUTH MOUNTAIN', None, '37.65500', '-119.03300'), ('MONO LAKE', None, '38.00600', '-119.00600'), ('OASIS', None, '37.49000', '-117.92000'), ('SONORA PASS', None, '38.32800', '-119.62900'), ('TIOGA PASS', None, '37.91500', '-119.25600'), ('TOMS PLACE', None, '37.56300', '-118.69500'), ('TWIN LAKES', 5533, '38.14900', '-119.34400'), ('WALKER', None, '38.52000', '-119.48000')], 'partOfState': 'CENTRAL', 'wfo': 'REV'}, -'MTC099': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BYNUM', None, '47.97920', '-112.31080'), ('CHOTEAU', 1781, '47.81260', '-112.17960'), ('DUTTON', 389, '47.84760', '-111.71360'), ('FAIRFIELD', 659, '47.61530', '-111.98000'), ('PENDROY', None, '48.05690', '-112.29810'), ('POWER', 171, '47.71580', '-111.68610')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'CAC053': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AROMAS', 2797, '36.87750', '-121.64030'), ('CARMEL VALLEY VILLAGE', 4700, '36.48620', '-121.72290'), ('CASTROVILLE', 6724, '36.76400', '-121.75180'), ('DEL MONTE FOREST', 4531, '36.58630', '-121.94630'), ('DEL REY OAKS', 1650, '36.59280', '-121.83730'), ('ELKHORN', 1591, '36.81090', '-121.71750'), ('GONZALES', 7525, '36.50650', '-121.44260'), ('GREENFIELD', 12583, '36.32170', '-121.24240'), ('KING CITY', 11094, '36.21300', '-121.12820'), ('LAS LOMAS', 3078, '36.86880', '-121.73100'), ('MARINA', 25101, '36.68270', '-121.79080'), ('MONTEREY', 29674, '36.60130', '-121.88180'), ('PRUNEDALE', 16432, '36.79990', '-121.65640'), ('SALINAS', 151060, '36.68480', '-121.63510'), ('SEASIDE', 31696, '36.62140', '-121.81860'), ('SOLEDAD', 11263, '36.43010', '-121.32250')], 'partOfState': '', 'wfo': 'MTR'}, -'MTC097': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BIG TIMBER', 1650, '45.83410', '-109.95060')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTC095': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ABSAROKEE', 1234, '45.52490', '-109.44450'), ('COLUMBUS', 1748, '45.63720', '-109.25060')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MDC031': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ASPEN HILL', 50228, '39.09210', '-77.07900'), ('BARNESVILLE', 161, '39.21990', '-77.38110'), ('BETHESDA', 55277, '38.98980', '-77.12030'), ('BOYDS', None, '39.18360', '-77.31310'), ('BRADLEY FARMS', None, '39.00670', '-77.19110'), ('BROOKEVILLE', 120, '39.17660', '-77.05740'), ('BURTONSVILLE', 7305, '39.11120', '-76.93220'), ('CALVERTON', 12610, '39.05640', '-76.94820'), ('CHEVY CHASE', 9381, '38.99500', '-77.07310'), ('CLARKSBURG', 1834, '39.23860', '-77.27970'), ('CLOVERLY', 7835, '39.10280', '-76.97660'), ('COLESVILLE', 19810, '39.08830', '-77.00710'), ('CONGRESSIONAL MANOR', None, '38.99720', '-77.17310'), ('DAMASCUS', 11430, '39.27770', '-77.20500'), ('DAWSONVILLE', None, '39.12830', '-77.34330'), ('DICKERSON', None, '39.22000', '-77.42440'), ('EDNOR', None, '39.13580', '-76.99530'), ('FAIRLAND', 21738, '39.08220', '-76.95160'), ('FOUR CORNERS', None, '39.02030', '-77.01310'), ('FRIENDSHIP', None, '39.30690', '-77.19750'), ('GAITHERSBURG', 52613, '39.14120', '-77.21660'), ('GARRETT PARK', 917, '39.03610', '-77.09460'), ('GERMANTOWN', 55419, '39.17820', '-77.26070'), ('GLEN ECHO', 242, '38.96740', '-77.14080'), ('GLENMONT', None, '39.05780', '-77.05000'), ('HILLANDALE', 3054, '39.01960', '-76.97470'), ('KENSINGTON', 1873, '39.02590', '-77.07320'), ('LAYTONSVILLE', 277, '39.20960', '-77.14160'), ('MONTGOMERY VILLAGE', 38051, '39.18120', '-77.19360'), ('NORBECK', None, '39.11000', '-77.07610'), ('NORTH POTOMAC', 23044, '39.09640', '-77.24500'), ('OLNEY', 31438, '39.14920', '-77.08220'), ('POOLESVILLE', 5151, '39.14480', '-77.41000'), ('POTOMAC', 44822, '39.02580', '-77.19770'), ('ROCKVILLE', 47388, '39.08120', '-77.15390'), ('SILVER SPRING', 76540, '39.00000', '-77.05000'), ('SOMERSET', 1124, '38.96580', '-77.09540'), ('TAKOMA PARK', 17299, '38.98210', '-77.00280'), ('WHITE OAK', 20973, '39.04200', '-76.98860')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'MSC045': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BAY ST. LOUIS', 8209, '30.31020', '-89.33000'), ('DIAMONDHEAD', 5912, '30.38360', '-89.36860'), ('KILN', 2040, '30.41650', '-89.43420'), ('PEARLINGTON', 1684, '30.24840', '-89.60120'), ('WAVELAND', 6674, '30.28630', '-89.38450')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'MTC091': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ANTELOPE', 43, '48.68970', '-104.45770'), ('ARCHER', None, '48.79270', '-104.81020'), ('COALRIDGE', None, '48.69830', '-104.18860'), ('COMERTOWN', None, '48.89690', '-104.24830'), ('DAGMAR', None, '48.58330', '-104.19770'), ('DALEVIEW', None, '48.91330', '-104.93330'), ('DOOLEY', None, '48.88110', '-104.38880'), ('HOMESTEAD', None, '48.42110', '-104.53830'), ('MEDICINE LAKE', 269, '48.50130', '-104.50410'), ('OUTLOOK', 82, '48.88750', '-104.77720'), ('PLENTYWOOD', 2061, '48.77470', '-104.56190'), ('RAYMOND', None, '48.87630', '-104.57970'), ('RAYMOND PORT OF ENTRY', None, '48.99660', '-104.57500'), ('REDSTONE', None, '48.82160', '-104.94360'), ('RESERVE', 37, '48.60550', '-104.45910')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'NDC013': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BATTLEVIEW', None, '48.58330', '-102.78330'), ('BOWBELLS', 406, '48.80300', '-102.24680'), ('COLUMBUS', 151, '48.90450', '-102.78100'), ('FLAXTON', 73, '48.89730', '-102.39270'), ('LARSON', 17, '48.89110', '-102.86560'), ('LIGNITE', 174, '48.87690', '-102.56370'), ('NORTHGATE', None, '48.98330', '-102.26670'), ('PORTAL', 131, '48.99560', '-102.54790'), ('POWERS LAKE', 309, '48.56360', '-102.64350')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'TXC417': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALBANY', 1921, '32.72670', '-99.29560'), ('FORT GRIFFIN', None, '32.92890', '-99.23280'), ('IBEX', None, '32.67890', '-99.11890'), ('MORAN', 233, '32.54680', '-99.16560')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'PAC063': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARMAGH', 131, '40.45320', '-79.03310'), ('BLACK LICK', 1438, '40.46500', '-79.18800'), ('BLAIRSVILLE', 3607, '40.43150', '-79.26010'), ('BOLIVAR', 501, '40.39480', '-79.15210'), ('BRUSH VLY', None, '40.53000', '-79.07000'), ('CHEVY CHASE HEIGHTS', 1511, '40.63900', '-79.14370'), ('CLYMER', 1547, '40.66830', '-79.01400'), ('CREEKSIDE', 323, '40.68000', '-79.19350'), ('ERNEST', 501, '40.67850', '-79.16500'), ('GLEN CAMPBELL', 306, '40.81830', '-78.83050'), ('HOMER CITY', 1844, '40.53960', '-79.15950'), ('INDIANA', 14895, '40.62190', '-79.15580'), ('JACKSONVILLE', 675, '40.54150', '-79.28340'), ('LUCERNE MINES', 951, '40.55440', '-79.15580'), ('MARION CENTER', 451, '40.77020', '-79.04800'), ('PLUMVILLE', 342, '40.79380', '-79.18050'), ('SALTSBURG', 955, '40.48520', '-79.44650'), ('SHELOCTA', 127, '40.65650', '-79.30240'), ('SMICKSBURG', 49, '40.87000', '-79.17180'), ('WEST LEBANON', None, '40.60000', '-79.35000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'NEC059': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('EXETER', 712, '40.64470', '-97.44920'), ('FAIRMONT', 691, '40.63550', '-97.58420'), ('GENEVA', 2226, '40.52760', '-97.60160'), ('GRAFTON', 152, '40.62960', '-97.71510'), ('MILLIGAN', 315, '40.49990', '-97.38800'), ('OHIOWA', 142, '40.41410', '-97.45190'), ('SHICKLEY', 376, '40.41610', '-97.72350'), ('STRANG', 32, '40.41510', '-97.58710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'MPC100': {'fullStateName': 'NORTHERN MARIANA ISLANDS', 'state': 'MP', 'cities': [('SINAPALU', None, '14.16670', '145.23330')], 'partOfState': '', 'wfo': 'GUM'}, -'GAC267': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALTAMAHA', None, '31.96140', '-82.20750'), ('COBBTOWN', 311, '32.28030', '-82.13890'), ('COLLINS', 528, '32.18110', '-82.10920'), ('DANIELS', None, '32.08110', '-81.98030'), ('FIVE POINTS', None, '31.92190', '-82.03420'), ('GLENNVILLE', 3641, '31.93640', '-81.92860'), ('HUGHLAND', None, '32.04500', '-82.05500'), ('LYNN', None, '31.97250', '-81.96190'), ('MANASSAS', 100, '32.16030', '-82.01970'), ('MENDES', None, '31.99860', '-81.97420'), ('MIDWAY', 1100, '32.03140', '-81.89360'), ('REIDSVILLE', 2235, '32.08670', '-82.11810'), ('TISON', None, '31.93830', '-82.02080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'TNC013': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CARYVILLE', 2243, '36.32440', '-84.21930'), ('DISNEY', None, '36.24810', '-84.17220'), ('ELK VALLEY', None, '36.48170', '-84.24940'), ('FINCASTLE', None, '36.40860', '-84.04970'), ('JACKSBORO', 1887, '36.33180', '-84.19100'), ('JELLICO', 2448, '36.57710', '-84.12870'), ('LA FOLLETTE', 7926, '36.37300', '-84.12710'), ('ROYAL BLUE', None, '36.38170', '-84.27890'), ('WHITE OAK', None, '36.53360', '-84.03500')], 'partOfState': '', 'wfo': 'MRX'}, -'GAC265': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CRAWFORDVILLE', 572, '33.55440', '-82.89690'), ('SHARON', 105, '33.55910', '-82.79530')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'TNC011': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CALHOUN', 496, '35.29700', '-84.74730'), ('CHARLESTON', 630, '35.28720', '-84.76040'), ('CLEVELAND', 37192, '35.17760', '-84.86750'), ('FLINT SPRINGS', None, '35.03330', '-84.90720'), ('GAP SPRINGS', None, '35.00440', '-84.78610'), ('HOPEWELL', 1815, '35.23490', '-84.90530'), ('MCDONALD', None, '35.11170', '-84.98420'), ('TASSO', None, '35.20440', '-84.81030'), ('WATERVILLE', None, '35.10640', '-84.86470')], 'partOfState': '', 'wfo': 'MRX'}, -'TXC339': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHATEAU WOODS', None, '30.16540', '-95.42740'), ('CONROE', 36811, '30.32330', '-95.47140'), ('CUT AND SHOOT', 1158, '30.33860', '-95.35290'), ('MAGNOLIA', 1111, '30.21100', '-95.74870'), ('MONTGOMERY', 489, '30.39120', '-95.69580'), ('OAK RIDGE NORTH', 2991, '30.15900', '-95.44500'), ('PANORAMA VILLAGE', 1965, '30.38210', '-95.49270'), ('PATTON VILLAGE', 1391, '30.19470', '-95.16690'), ('PINEHURST', 2274, '30.18890', '-95.70510'), ('PORTER HEIGHTS', 1490, '30.15170', '-95.32160'), ('ROMAN FOREST', 1279, '30.17770', '-95.15930'), ('SHENANDOAH', 1503, '30.18100', '-95.45480'), ('SPLENDORA', 1275, '30.23010', '-95.16400'), ('STAGECOACH', 455, '30.14120', '-95.71010'), ('THE WOODLANDS', 55649, '30.15770', '-95.48930'), ('WILLIS', 3985, '30.42480', '-95.47810'), ('WOODBRANCH', 1305, '30.18400', '-95.18430'), ('WOODLOCH', 247, '30.21770', '-95.41400')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TNC017': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ATWOOD', 1000, '35.97700', '-88.67100'), ('BRUCETON', 1554, '36.03440', '-88.24710'), ('BUENA VISTA', None, '35.98330', '-88.28330'), ('CEDAR GROVE', None, '35.81670', '-88.60000'), ('CLARKSBURG', 285, '35.87160', '-88.38980'), ('HOLLOW ROCK', 963, '36.03520', '-88.27260'), ('HUNTINGDON', 4349, '36.00850', '-88.41200'), ('MCKENZIE', 5295, '36.13960', '-88.51130'), ('MCLEMORESVILLE', 259, '35.98600', '-88.57940'), ('MIDDLE FORK', None, '35.86670', '-88.50000'), ('TREZEVANT', 901, '36.01350', '-88.62000'), ('VALE', None, '36.11670', '-88.26670')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'GAC261': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMERICUS', 17013, '32.07210', '-84.22690'), ('ANDERSONVILLE', 331, '32.19780', '-84.14600'), ('DE SOTO', 214, '31.95430', '-84.06370'), ('LESLIE', 455, '31.95470', '-84.08700'), ('PLAINS', 637, '32.03310', '-84.39470')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'TNC015': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('AUBURNTOWN', 252, '35.94890', '-86.09430'), ('WOODBURY', 2428, '35.82480', '-86.07050')], 'partOfState': '', 'wfo': 'OHX'}, -'TXC443': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DRYDEN', None, '30.05000', '-102.12000'), ('SANDERSON', 861, '30.14260', '-102.39770'), ('THE TERRELL GAS PLANT', None, '30.37000', '-101.84500')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXC337': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOWIE', 5219, '33.55910', '-97.84480'), ('NOCONA', 3198, '33.78350', '-97.73000'), ('ST. JO', 977, '33.69520', '-97.52240')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TNC019': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ELIZABETHTON', 13372, '36.33880', '-82.23200'), ('ELK MILLS', None, '36.26940', '-81.99190'), ('HAMPTON', None, '36.28190', '-82.17470'), ('HUNTER', 1566, '36.37880', '-82.16330'), ('MILLIGAN COLLEGE', None, '36.26940', '-82.29920'), ('ROAN MOUNTAIN', 1160, '36.18370', '-82.07390'), ('SADIE', None, '36.43190', '-82.05670'), ('WATAUGA', 403, '36.36800', '-82.29230')], 'partOfState': '', 'wfo': 'MRX'}, -'TXC331': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUCKHOLTS', 387, '30.87260', '-97.12750'), ('CAMERON', 5634, '30.85810', '-96.97700'), ('MILANO', 400, '30.70680', '-96.85990'), ('ROCKDALE', 5439, '30.65530', '-97.00770'), ('THORNDALE', 1278, '30.61430', '-97.20500')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FWD'}, -'TXC445': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROWNFIELD', 9488, '33.17970', '-102.27050'), ('MEADOW', 658, '33.33820', '-102.20620'), ('TOKIO', None, '33.18130', '-102.57190'), ('UNION', None, '33.03630', '-102.22130'), ('WELLMAN', 203, '33.04700', '-102.42760')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'FLC049': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BOWLING GREEN', 2892, '27.63730', '-81.82380'), ('FORT GREEN', None, '27.62000', '-81.95000'), ('GARNDER', None, '27.35000', '-81.80500'), ('LILY', None, '27.36800', '-81.97000'), ('ONA', None, '27.49000', '-81.92000'), ('WAUCHULA', 4368, '27.54580', '-81.80990'), ('ZOLFO SPRINGS', 1641, '27.49420', '-81.79450')], 'partOfState': 'CENTRAL', 'wfo': 'TBW'}, -'FLC041': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELL', 349, '29.75580', '-82.86190'), ('TRENTON', 1617, '29.61420', '-82.81680')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLC043': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRIGHTON SEMINOLE INDIAN', None, '27.08000', '-81.06000'), ('BUCKHEAD RIDGE', 1390, '27.14000', '-80.89000'), ('LAKEPORT', None, '26.98000', '-81.13000'), ('MOORE HAVEN', 1635, '26.83500', '-81.10000'), ('MUSE', None, '26.83000', '-81.50000'), ('ORTONA', None, '26.81000', '-81.30000'), ('PALMDALE', None, '26.94000', '-81.31000')], 'partOfState': 'SOUTHERN', 'wfo': 'MFL'}, -'FLC045': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BEACON HILL', None, '29.92130', '-85.37900'), ('DALKEITH', None, '30.00600', '-85.15360'), ('GULF CO A/P', None, '29.75750', '-85.28910'), ('HONEYVILLE', None, '30.05690', '-85.19000'), ('HOWARD CREEK', None, '29.89990', '-85.06860'), ('OAK GROVE', None, '29.79010', '-85.29700'), ('ODENA', None, '29.73730', '-85.18700'), ('OVERSTREET', None, '29.99730', '-85.36900'), ('PORT ST. JOE', 3644, '29.80880', '-85.29610'), ('ST JOE BEACH', None, '29.90080', '-85.36210'), ('WETAPPO', None, '30.15010', '-85.30010'), ('WEWAHITCHKA', 1722, '30.10980', '-85.20050'), ('WHITE CITY', 4221, '29.88490', '-85.21970')], 'partOfState': '', 'wfo': 'TAE'}, -'FLC047': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELMONT', None, '30.48580', '-82.72280'), ('BLUE SPRINGS', None, '30.48540', '-83.22080'), ('JASPER', 1780, '30.51710', '-82.95620'), ('JENNINGS', 833, '30.60110', '-83.10700'), ('WEST LAKE', None, '30.50250', '-83.11520'), ('WHITE SPRINGS', 819, '30.33150', '-82.75800')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'WIC021': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARLINGTON', 484, '43.33850', '-89.37660'), ('CAMBRIA', 792, '43.54090', '-89.11380'), ('COLUMBUS', 4479, '43.33570', '-89.02840'), ('DOYLESTOWN', 328, '43.42760', '-89.14620'), ('FALL RIVER', 1097, '43.38510', '-89.04770'), ('FRIESLAND', 298, '43.58900', '-89.06780'), ('LAKE WISCONSIN', 3493, '43.37350', '-89.57560'), ('LODI', 2882, '43.31640', '-89.53210'), ('PARDEEVILLE', 1982, '43.53410', '-89.30030'), ('PORTAGE', 9728, '43.54790', '-89.46590'), ('POYNETTE', 2266, '43.39080', '-89.40820'), ('RIO', 938, '43.45030', '-89.23770'), ('WYOCENA', 668, '43.49310', '-89.31000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'ALC057': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BELK', 214, '33.64810', '-87.92770'), ('BERRY', 1238, '33.66320', '-87.60770'), ('FAYETTE', 4922, '33.69400', '-87.83140'), ('GLEN ALLEN', 442, '33.88480', '-87.74410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'WIC023': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BARNUM', None, '43.21231', '-90.83487'), ('BELL CENTER', 116, '43.29200', '-90.82540'), ('BRIDGEPORT', None, '43.00214', '-91.05417'), ('CLAYTON', 507, '43.38227', '-90.71608'), ('EASTMAN', 437, '43.16230', '-91.02030'), ('FAIRVIEW', None, '43.36217', '-90.95000'), ('FERRYVILLE', 174, '43.34320', '-91.08350'), ('GAYS MILLS', 625, '43.32010', '-90.85040'), ('LYNXVILLE', 176, '43.24800', '-91.04790'), ('MOUNT STERLING', 215, '43.31430', '-90.93060'), ('PLUGTOWN', None, '43.21414', '-90.74897'), ('PRAIRIE DU CHIEN', 6018, '43.04320', '-91.14000'), ('RISING SUN', None, '43.41517', '-90.96645'), ('ROLLING GROUND', None, '43.33110', '-90.73252'), ('SENECA', None, '43.26531', '-90.96645'), ('SOLDIERS GROVE', 653, '43.39240', '-90.77360'), ('STEUBEN', 177, '43.18120', '-90.85730'), ('WAUZEKA', 768, '43.08440', '-90.89550')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'GAC069': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMBROSE', 320, '31.59340', '-83.01370'), ('BROXTON', 1428, '31.62380', '-82.88690'), ('DOUGLAS', 10639, '31.50520', '-82.85150'), ('NICHOLLS', 1008, '31.51820', '-82.63580'), ('PRIDGEN', None, '31.69680', '-82.92310'), ('WEST GREEN', None, '31.60970', '-82.73620')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAC049': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('FOLKSTON', 2178, '30.83700', '-82.00910'), ('HOMELAND', 765, '30.85500', '-82.02430'), ('RACE POND', None, '31.00010', '-82.13050'), ('ST. GEORGE', None, '30.51870', '-82.04210'), ('STEVEN FOSTER STATE PARK', None, '30.82000', '-82.34000'), ('WINOKUR', None, '31.03620', '-82.02190')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'KYC219': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALLEGRE', None, '36.92860', '-87.21720'), ('ALLENSVILLE', 189, '36.71710', '-87.06840'), ('CLIFTY', None, '36.99520', '-87.14770'), ('ELKTON', 1984, '36.81010', '-87.15800'), ('TRENTON', 419, '36.72280', '-87.26320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'GAC047': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('FORT OGLETHORPE', 6940, '34.92280', '-85.25340'), ('INDIAN SPRINGS', 1982, '34.96080', '-85.16000'), ('LAKEVIEW', 4820, '34.97700', '-85.25370'), ('RINGGOLD', 2422, '34.91780', '-85.10970')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'KYC217': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CAMPBELLSVILLE', 10498, '37.34750', '-85.34910'), ('ELK HORN', None, '37.31670', '-85.28330'), ('HOBSON', None, '37.41670', '-85.36670'), ('MANNSVILLE', None, '37.36670', '-85.20000'), ('SALOMA', None, '37.41670', '-85.40000'), ('YUMA', None, '37.28330', '-85.20000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'GAC045': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOWDON', 1959, '33.53740', '-85.25420'), ('CARROLLTON', 19843, '33.58380', '-85.07590'), ('MOUNT ZION', 1275, '33.63390', '-85.18050'), ('ROOPVILLE', 177, '33.45680', '-85.13230'), ('TEMPLE', 2383, '33.73460', '-85.03150'), ('VILLA RICA', 4134, '33.73290', '-84.92290'), ('WHITESBURG', 596, '33.49330', '-84.91360')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'KYC215': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ELK CREEK', None, '38.10000', '-85.36670'), ('LITTLE MOUNT', None, '38.06670', '-85.25000'), ('MT. EDEN', None, '38.05000', '-85.15000'), ('TAYLORSVILLE', 1009, '38.03480', '-85.34380'), ('WAKEFIELD', None, '37.96670', '-85.30000'), ('WATERFORD', None, '38.03330', '-85.43330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'GAC043': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALINE', None, '32.36080', '-82.16060'), ('CANOE', None, '32.41940', '-82.14140'), ('EXCELSIOR', None, '32.31330', '-81.96610'), ('METTER', 3879, '32.39690', '-82.06030'), ('OLIFFTOWN', None, '32.49440', '-82.09750'), ('PARISH', None, '32.39390', '-81.98890'), ('PULASKI', 261, '32.39000', '-81.95690'), ('SHAMROCK', None, '32.40280', '-82.08420'), ('UNION', None, '32.48250', '-82.05390')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'KYC213': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FRANKLIN', 7996, '36.72800', '-86.57390'), ('GOLD CITY', None, '36.75000', '-86.45000'), ('PRICES MILL', None, '36.68330', '-86.71670'), ('PROVIDENCE', 3611, '36.66670', '-86.66670'), ('RAPIDS', None, '36.66670', '-86.46670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYC211': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAGDAD', None, '38.26670', '-85.05000'), ('CHESTNUT GROVE', None, '38.30000', '-85.26670'), ('CROPPER', None, '38.31670', '-85.11670'), ('FINCHVILLE', None, '38.15000', '-85.31670'), ('GRAEFENBURG', None, '38.15000', '-85.03000'), ('HARRISONVILLE', None, '38.08330', '-85.06670'), ('PEYTONA', None, '38.18330', '-85.06670'), ('SHELBYVILLE', 10085, '38.21760', '-85.23120'), ('SIMPSONVILLE', 1281, '38.21830', '-85.35310'), ('SOUTHVILLE', None, '38.11670', '-85.18330'), ('TODDS POINT', None, '38.28330', '-85.35000'), ('WADDY', None, '38.13330', '-85.06670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'MSC133': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DODDSVILLE', 108, '33.65850', '-90.52440'), ('DREW', 2434, '33.80980', '-90.53040'), ('INDIANOLA', 12066, '33.44860', '-90.64480'), ('INVERNESS', 1153, '33.35400', '-90.59070'), ('MOORHEAD', 2573, '33.44920', '-90.50680'), ('RULEVILLE', 3234, '33.72500', '-90.55010'), ('SUNFLOWER', 696, '33.54660', '-90.53840')], 'partOfState': 'NORTHWEST', 'wfo': 'JAN'}, -'MSC131': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BEATRICE', None, '30.73840', '-88.94220'), ('MCHENRY', None, '30.70710', '-89.13780'), ('PERKINSTON', None, '30.78110', '-89.13810'), ('PERRY', None, '30.71970', '-89.14170'), ('RAMSEY SPRINGS', None, '30.76970', '-88.92110'), ('ROGERS LAKE', None, '30.73810', '-89.31180'), ('TEN MILE', None, '30.76390', '-89.14850'), ('WHITES CROSSING', None, '30.84890', '-89.04500'), ('WIGGINS', 3849, '30.85720', '-89.13560'), ('WLOX TV STATION TOWER', None, '30.72390', '-89.09140')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'MSC137': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ARKABUTLA', None, '34.70000', '-90.13330'), ('BARR', None, '34.61670', '-89.78330'), ('COLDWATER', 1674, '34.69020', '-89.97540'), ('INDEPENDENCE', None, '34.70000', '-89.80000'), ('PHILLIPP', None, '34.73330', '-90.18330'), ('SENATOBIA', 6682, '34.61750', '-89.97210'), ('STRAYHORN', None, '34.62670', '-90.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSC135': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BRAZIL', None, '34.03330', '-90.28330'), ('CHARLESTON', 2198, '34.00740', '-90.05510'), ('ENID', None, '34.11670', '-89.95000'), ('GLENDORA', 285, '33.82850', '-90.29210'), ('PAYNES', None, '33.91670', '-90.06670'), ('SUMNER', 407, '33.96980', '-90.36950'), ('TUTWILER', 1364, '34.01180', '-90.42990'), ('WEBB', 587, '33.94800', '-90.34620')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSC139': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BLUE MOUNTAIN', 670, '34.67100', '-89.02720'), ('DUMAS', 452, '34.63530', '-88.83700'), ('FALKNER', 212, '34.84750', '-88.93190'), ('RIPLEY', 5478, '34.72960', '-88.94440'), ('WALNUT', 754, '34.94850', '-88.90010')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'GAC191': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARDICK', None, '31.46110', '-81.43360'), ('ASHINTILLY', None, '31.39360', '-81.40920'), ('BRICKSTON', None, '31.61220', '-81.49030'), ('CARNIGAN', None, '31.43420', '-81.39420'), ('COX', None, '31.45500', '-81.56360'), ('CRESCENT', None, '31.50920', '-81.36970'), ('DARIEN', 1719, '31.37000', '-81.43420'), ('EULONIA', None, '31.53310', '-81.42720'), ('FAIRHOPE', None, '31.53720', '-81.38890'), ('HUXFORD', None, '31.55920', '-81.51030'), ('JONES', None, '31.63360', '-81.48030'), ('MERIDIAN', None, '31.45170', '-81.37810'), ('PINE HARBOR', None, '31.54720', '-81.37560'), ('RACCOON BLUFF', None, '31.46580', '-81.23530'), ('RIDGEVILLE', None, '31.40610', '-81.40170'), ('SAPELO ISLAND', None, '31.39720', '-81.27890'), ('SHELLMAN BLUFF', None, '31.57250', '-81.32330'), ('SOUTH NEWPORT', None, '31.63470', '-81.39640'), ('TOWNSEND', None, '31.53920', '-81.52280'), ('VALONA', None, '31.47810', '-81.34420'), ('WARSAW', None, '31.58970', '-81.49530')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAC193': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('IDEAL', 518, '32.37280', '-84.18890'), ('MARSHALLVILLE', 1335, '32.45720', '-83.94110'), ('MONTEZUMA', 3999, '32.29960', '-84.02680'), ('OGLETHORPE', 1200, '32.29320', '-84.06270')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAC195': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CARLTON', 233, '34.04270', '-83.03860'), ('COLBERT', 488, '34.03700', '-83.21300'), ('COMER', 1052, '34.06190', '-83.12540'), ('DANIELSVILLE', 457, '34.12390', '-83.22060'), ('HULL', 160, '34.01470', '-83.29350'), ('ILA', 328, '34.17230', '-83.29350')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAC197': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BUENA VISTA', 1664, '32.31840', '-84.51760')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAC199': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GAY', 149, '33.09370', '-84.57400'), ('GREENVILLE', 946, '33.02690', '-84.71540'), ('LONE OAK', 104, '33.17200', '-84.82010'), ('LUTHERSVILLE', 783, '33.20990', '-84.74440'), ('MANCHESTER', 3988, '32.85460', '-84.61650'), ('WARM SPRINGS', 485, '32.88910', '-84.67760'), ('WOODBURY', 1184, '32.98330', '-84.58280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'TXC029': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALAMO HEIGHTS', 7319, '29.48260', '-98.46700'), ('BALCONES HEIGHTS', 3016, '29.49000', '-98.55190'), ('CALAVERAS LAKE', None, '29.28000', '-98.30000'), ('CASTLE HILLS', 4202, '29.52380', '-98.51920'), ('CHINA GROVE', 1247, '29.39560', '-98.34810'), ('CONVERSE', 11508, '29.51380', '-98.31190'), ('CROSS MOUNTAIN', 1524, '29.64520', '-98.65910'), ('ELMENDORF', 664, '29.25850', '-98.33460'), ('FAIR OAKS RANCH', 4695, '29.73610', '-98.63560'), ('GREY FOREST', 418, '29.61410', '-98.68240'), ('HELOTES', 4285, '29.56810', '-98.69350'), ('HILL COUNTRY VILLAGE', 1028, '29.58390', '-98.49180'), ('HOLLYWOOD PARK', 2983, '29.59890', '-98.48490'), ('KIRBY', 8673, '29.46000', '-98.38560'), ('LACKLAND AFB', 7123, '29.38280', '-98.62650'), ('LEON SPRINGS', None, '29.66660', '-98.63330'), ('LEON VALLEY', 9239, '29.49520', '-98.61340'), ('LIVE OAK', 9156, '29.55410', '-98.33980'), ('OLMOS PARK', 2343, '29.47450', '-98.48590'), ('SAN ANTONIO', 1144646, '29.45770', '-98.50540'), ('SAN GERONIMO', None, '29.63000', '-98.80000'), ('SCENIC OAKS', 3279, '29.71060', '-98.67570'), ('SCHERTZ', 18694, '29.55480', '-98.26200'), ('SEA WORLD', None, '29.46000', '-98.70000'), ('SHAVANO PARK', 1754, '29.58410', '-98.55500'), ('SOMERSET', 1550, '29.22760', '-98.65670'), ('ST. HEDWIG', 1875, '29.42430', '-98.21410'), ('TERRELL HILLS', 5019, '29.47730', '-98.44660'), ('THE DOMINION', None, '29.65660', '-98.61620'), ('TIMBERWOOD PARK', 5889, '29.70540', '-98.47810'), ('UNIVERSAL CITY', 14849, '29.55160', '-98.30620'), ('WINDCREST', 5105, '29.51770', '-98.37890')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'PAC051': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BELLE VERNON', 1211, '40.12460', '-79.86580'), ('BROWNSVILLE', 2804, '40.01900', '-79.89140'), ('COAL CENTER', 134, '40.06990', '-79.90120'), ('CONNELLSVILLE', 9146, '40.01630', '-79.58910'), ('DAWSON', 451, '40.04780', '-79.65890'), ('DUNBAR', 1219, '39.97960', '-79.61410'), ('DUNLEVY', 397, '40.11240', '-79.85870'), ('EAST UNIONTOWN', 2760, '39.89970', '-79.69810'), ('EVERSON', 842, '40.09050', '-79.58730'), ('FAIRCHANCE', 2174, '39.82590', '-79.75460'), ('FAYETTE CITY', 714, '40.10020', '-79.83910'), ('GREENSBORO', 295, '39.79210', '-79.91300'), ('GRINDSTONE-ROWES RUN', 1141, '40.01520', '-79.81520'), ('HILLER', 1234, '40.00720', '-79.90390'), ('HOPWOOD', 2006, '39.87750', '-79.70180'), ('ISABELLA', None, '39.95000', '-79.93000'), ('JUNIATA', None, '39.98000', '-79.72000'), ('LEITH-HATFIELD', 2820, '39.87980', '-79.73470'), ('LYNNWOOD-PRICEDALE', 2168, '40.12980', '-79.85230'), ('MARKLEYSBURG', 282, '39.73710', '-79.45290'), ('MASONTOWN', 3611, '39.84830', '-79.90860'), ('NEW SALEM-BUFFINGTON', 808, '39.93190', '-79.82060'), ('NEWELL', 551, '40.07350', '-79.88860'), ('OHIOPYLE', 77, '39.86750', '-79.49420'), ('OLIVER', 2925, '39.91520', '-79.72210'), ('PERRYOPOLIS', 1764, '40.08650', '-79.75320'), ('POINT MARION', 1333, '39.73450', '-79.90070'), ('REPUBLIC', 1396, '39.96480', '-79.87660'), ('SMITHFIELD', 854, '39.80200', '-79.80950'), ('SOUTH CONNELLSVILLE', 2281, '39.99260', '-79.58250'), ('SPEERS', 1241, '40.12260', '-79.88010'), ('STOCKDALE', 555, '40.08330', '-79.85070'), ('UNIONTOWN', 12422, '39.89920', '-79.72470'), ('VANDERBILT', 553, '40.03310', '-79.66300')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'TNC129': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DEERLODGE', None, '36.19920', '-84.76190'), ('HIGH POINT', None, '36.14860', '-84.82830'), ('OAKDALE', 244, '35.98880', '-84.55790'), ('PETROS', None, '36.09190', '-84.44670'), ('PINE ORCHARD', None, '35.96610', '-84.65580'), ('RUGBY', None, '36.35860', '-84.70440'), ('SUNBRIGHT', 577, '36.24170', '-84.67170'), ('WARTBURG', 890, '36.10340', '-84.58820')], 'partOfState': '', 'wfo': 'MRX'}, -'TXC021': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BASTROP', 5340, '30.11300', '-97.30540'), ('CAMP SWIFT', 4731, '30.19070', '-97.29210'), ('CEDAR CREEK', None, '30.08330', '-97.50000'), ('CIRCLE D-KC ESTATES', 2010, '30.16080', '-97.23140'), ('ELGIN', 5700, '30.34920', '-97.37250'), ('PAIGE', None, '30.21670', '-97.11670'), ('ROSANKY', None, '29.93330', '-97.30000'), ('SMITHVILLE', 3901, '30.00770', '-97.15660'), ('WYLDWOOD', 2310, '30.12920', '-97.47250')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TNC127': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LYNCHBURG', None, '35.28420', '-86.35740')], 'partOfState': '', 'wfo': 'HUN'}, -'TXC023': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOMARTON', None, '33.50000', '-99.43000'), ('LAKE KEMP', None, '33.75000', '-99.23000'), ('MABELLE', None, '33.67000', '-99.13000'), ('RED SPRINGS', None, '33.62000', '-99.42000'), ('ROUND TIMBER', None, '33.43000', '-99.08000'), ('SEYMOUR', 2908, '33.59690', '-99.25930'), ('WESTOVER', None, '33.50000', '-99.02000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TNC125': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GUTHRIE', 1469, '36.64740', '-87.17070'), ('CLARKSVILLE', 103455, '36.56110', '-87.34730')], 'partOfState': '', 'wfo': 'OHX'}, -'TXC025': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BEEVILLE', 13129, '28.40560', '-97.74910'), ('NORMANNA', 121, '28.53333', '-97.79166'), ('PAWNEE', 201, '28.64266', '-98.00500'), ('PETTUS', 608, '28.57580', '-97.80000'), ('SKIDMORE', 1013, '28.23333', '-97.68333'), ('TYNAN', 301, '28.15530', '-97.73333')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TNC123': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BULLET CREEK', None, '35.27810', '-84.42810'), ('CITICO', None, '35.39920', '-84.11810'), ('CITICO BEACH', None, '35.53470', '-84.10920'), ('COKER CREEK', None, '35.26310', '-84.28750'), ('MADISONVILLE', 3939, '35.52280', '-84.35990'), ('MOUNT VERNON', None, '35.41140', '-84.36390'), ('SWEETWATER', 5586, '35.60030', '-84.46830'), ('TARIFFVILLE', None, '35.48580', '-84.18030'), ('TELLICO PLAINS', 859, '35.36650', '-84.29900'), ('VONORE', 1162, '35.59680', '-84.23190')], 'partOfState': '', 'wfo': 'MRX'}, -'TXC027': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELTON', 14623, '31.06810', '-97.46370'), ('FORT HOOD', 33711, '31.13380', '-97.77410'), ('HARKER HEIGHTS', 17308, '31.06120', '-97.65410'), ('HOLLAND', 1102, '30.88380', '-97.40350'), ('KILLEEN', 86911, '31.09830', '-97.71720'), ('LITTLE RIVER-ACADEMY', 1645, '30.99130', '-97.35190'), ("MORGAN'S POINT RESORT", 2989, '31.15560', '-97.45420'), ('NOLANVILLE', 2150, '31.07820', '-97.61010'), ('ROGERS', 1117, '30.93220', '-97.22850'), ('SALADO', 3475, '30.95080', '-97.52470'), ('TEMPLE', 54514, '31.09770', '-97.36350'), ('TROY', 1378, '31.19560', '-97.30680')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TNC121': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIG SPRING', None, '35.39560', '-84.90030'), ('DECATUR', 1395, '35.52500', '-84.79120'), ('PEAKLAND', None, '35.62670', '-84.76390'), ('TEN MILE', None, '35.66560', '-84.66610')], 'partOfState': '', 'wfo': 'MRX'}, -'VAC113': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AYLOR', None, '38.43470', '-78.30220'), ('BIG MEADOWS', None, '38.52640', '-78.44000'), ('CRIGLERSVILLE', None, '38.45780', '-78.30140'), ('ETLAN', None, '38.52530', '-78.26280'), ('FIVE FORKS', None, '38.29890', '-78.13560'), ('FORDSVILLE', None, '38.40140', '-78.11640'), ('GRAVES MILL', None, '38.42250', '-78.36780'), ('MADISON', 210, '38.37750', '-78.25930'), ('NETHERS', None, '38.57030', '-78.27810'), ('OAKPARK', None, '38.36670', '-78.16030'), ('ROCHELLE', None, '38.29030', '-78.27280'), ('SYRIA', None, '38.48780', '-78.32640'), ('TWYMANS MILL', None, '38.31780', '-78.17170'), ('WOLFTOWN', None, '38.35560', '-78.34780')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'VAC111': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARVINS STORE', None, '37.01970', '-78.34310'), ('BACONS FORK', None, '36.85270', '-78.06030'), ('BLEVINS CORNER', None, '36.98060', '-78.43690'), ('DUNDAS', None, '36.91320', '-78.02180'), ('FORT MITCHELL', None, '36.91790', '-78.48190'), ('GARY', None, '36.86500', '-78.20070'), ('GILLS CORNER', None, '36.86060', '-78.03530'), ('KELLS CORNER', None, '36.87870', '-78.40770'), ('KENBRIDGE', 1253, '36.96410', '-78.13060'), ('LAFOON CORNER', None, '36.92370', '-78.08910'), ('LOVES MILL', None, '36.90580', '-78.28420'), ('LUNENBURG', None, '36.96140', '-78.26570'), ('MEHERRIN', None, '37.09000', '-78.36670'), ('NUTBUSH', None, '37.04500', '-78.27630'), ('ORAL OAKS', None, '36.91570', '-78.19590'), ('PLANTERSVILLE', None, '36.92580', '-78.44190'), ('PLEASANT GROVE', None, '37.00060', '-78.37200'), ('REHOBOTH', None, '36.92050', '-78.35510'), ('RUBERMOUNT', None, '37.06250', '-78.20640'), ('SCHOLFIELD', None, '37.10180', '-78.32400'), ('SIMPLICITY', None, '37.07970', '-78.42440'), ('VICTORIA', 1821, '36.99460', '-78.22450'), ('WILBURN', None, '36.85570', '-78.27090')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'VAC117': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BASKERVILLE', None, '36.68890', '-78.27490'), ('BEECHWOOD', None, '36.61720', '-78.21390'), ('BOYDTON', 454, '36.66600', '-78.38980'), ('BRACEY', None, '36.59710', '-78.14330'), ('BUFFALO JUNCTION', None, '36.60470', '-78.63060'), ('BUFFALO SPRINGS', None, '36.64620', '-78.66260'), ('CHASE CITY', 2457, '36.79920', '-78.46130'), ('CLARKSVILLE', 1329, '36.62050', '-78.56560'), ('EPPES FORK', None, '36.55280', '-78.36190'), ('FAIRVIEW', None, '36.81530', '-78.46690'), ('FINCHLEY', None, '36.65090', '-78.49230'), ('FINNEYWOOD', None, '36.87530', '-78.48060'), ('FORKSVILLE', None, '36.75220', '-78.04640'), ('JOHN H KERR DAM', None, '36.59830', '-78.29870'), ('KEATS', None, '36.55560', '-78.29760'), ('LA CROSSE', 618, '36.69680', '-78.09370'), ('NELSON', None, '36.55650', '-78.67250'), ('NORTH VIEW', None, '36.78060', '-78.24440'), ('PALMER SPRINGS', None, '36.56050', '-78.23890'), ('RICHARDSON', None, '36.56110', '-78.44640'), ('ROGERS CORNER', None, '36.72000', '-78.41810'), ('SKIPWITH', None, '36.69190', '-78.49070'), ('SOUTH HILL', 4403, '36.72900', '-78.12830'), ('SPANISH GROVE', None, '36.79560', '-78.53560'), ('WIGHTMAN', None, '36.79010', '-78.30320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'KYC055': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DYCUSBURG', 39, '37.16000', '-88.18490'), ('MARION', 3196, '37.33150', '-88.07920')], 'partOfState': '', 'wfo': 'PAH'}, -'PAC055': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMBERSON VALLEY', None, '40.14000', '-77.69000'), ('CHAMBERSBURG', 17862, '39.93220', '-77.65640'), ('CLAYLICK', None, '39.77000', '-77.91000'), ('DOYLESBURG', None, '40.22000', '-77.70000'), ('FANNETTSBURG', None, '40.05000', '-77.83000'), ('FAYETTEVILLE', 2774, '39.91240', '-77.56570'), ('FORT LOUDON', None, '39.94000', '-77.87000'), ('GREENCASTLE', 3722, '39.79050', '-77.72690'), ('MARION', None, '39.86000', '-77.67000'), ('MERCERSBURG', 1540, '39.83140', '-77.90180'), ('MONT ALTO', 1357, '39.83960', '-77.55470'), ('ORRSTOWN', 231, '40.05830', '-77.60950'), ('ROUZERVILLE', 862, '39.73400', '-77.52480'), ('ROXBURY', None, '40.09000', '-77.67000'), ('SCOTLAND', None, '39.96000', '-77.59000'), ('ST. THOMAS', None, '39.94000', '-77.74000'), ('UPPER STRASBURG', None, '40.02000', '-77.70000'), ('WAYNESBORO', 9614, '39.75200', '-77.58240'), ('WILLOW HILL', None, '40.11000', '-77.77000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'VAC119': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMBURG', None, '37.55360', '-76.35860'), ('CHURCH VIEW', None, '37.67790', '-76.68020'), ('COOPER', None, '37.61090', '-76.52060'), ('DELTAVILLE', None, '37.55600', '-76.32770'), ('GRAFTON', None, '37.55890', '-76.47060'), ('GREYS POINT', None, '37.60500', '-76.43330'), ('HARDYVILLE', None, '37.55590', '-76.38230'), ('HARMONY VILLAGE', None, '37.58180', '-76.48730'), ('HARTFIELD', None, '37.55080', '-76.44400'), ('HEALYS', None, '37.57280', '-76.51190'), ('JAMAICA', None, '37.71490', '-76.69440'), ('NESTING', None, '37.73390', '-76.64890'), ('REMLIK', None, '37.66160', '-76.62020'), ('SALUDA', None, '37.60610', '-76.59550'), ('SAMOS', None, '37.70120', '-76.63520'), ('STAMPERS', None, '37.53970', '-76.43280'), ('STINGRAY POINT', None, '37.55870', '-76.30510'), ('URBANNA', 543, '37.63970', '-76.57540'), ('WAKE', None, '37.56630', '-76.42950'), ('WARNER', None, '37.63780', '-76.64480'), ('WATER VIEW', None, '37.72200', '-76.61390'), ('WILTON', None, '37.54950', '-76.40690')], 'partOfState': '', 'wfo': 'AKQ'}, -'PAC057': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BARNES GAP', None, '39.77000', '-78.34000'), ('BIG COVE TANNERY', None, '39.84000', '-78.05000'), ('COVE MILLS', None, '39.78000', '-78.18000'), ('CRYSTAL SPRINGS', None, '39.92000', '-78.24000'), ('FORT LITTLETON', None, '40.06000', '-77.93000'), ('HARRISSONVILLE', None, '39.97000', '-78.06000'), ('LOCUST GROVE', None, '39.83000', '-78.25000'), ('MCCONNELLSBURG', 1073, '39.93150', '-77.99530'), ('NEEDMORE', None, '39.86000', '-78.15000'), ('SALUVIA', None, '40.00000', '-78.10000'), ('SIDELING HILL REST AREA', None, '40.03000', '-78.06000'), ('VALLEY-HI', 20, '40.02700', '-78.19080'), ('WATERFALL', None, '40.12000', '-78.06000'), ('WELLS TANNERY', None, '40.09000', '-78.18000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'VAC163': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BELLS VALLEY', None, '38.03330', '-79.45000'), ('BROWNSBURG', None, '37.93330', '-79.31670'), ('COLLIERSTOWN', None, '37.76670', '-79.58330'), ('CORNWALL', None, '37.80000', '-79.30000'), ('FAIRFIELD', None, '37.88330', '-79.30000'), ('GLASGOW', 1046, '37.63330', '-79.45000'), ('GOSHEN', 406, '37.98330', '-79.50000'), ('NATURAL BRIDGE', None, '37.63330', '-79.55000'), ('ROCKBRIDGE BATHS', None, '37.90000', '-79.41670'), ('VESUVIUS', None, '37.90000', '-79.20000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'VAC049': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ANGOLA', None, '37.40130', '-78.24030'), ('ASHBY', None, '37.57770', '-78.17520'), ('BEAR CREEK LAKE STATE PAR', None, '37.52860', '-78.27020'), ('CARTERSVILLE', None, '37.66000', '-78.10000'), ('CLINTON', None, '37.54290', '-78.12590'), ('CUMBERLAND', None, '37.49610', '-78.24470'), ('DUNCAN', None, '37.71280', '-78.15130'), ('GRAYS SIDING', None, '37.51110', '-78.21270'), ('GUINEA MILLS', None, '37.43690', '-78.33190'), ('HAWK', None, '37.40990', '-78.35580'), ('LAKESIDE VILLAGE', None, '37.66330', '-78.17860'), ('MCRAE', None, '37.46150', '-78.28250'), ('OAK FOREST', None, '37.53640', '-78.19420'), ('RAINES TAVERN', None, '37.36930', '-78.36960'), ('REEDS', None, '37.33780', '-78.40420'), ('STODDERT', None, '37.35030', '-78.29530'), ('SUNNYSIDE', None, '37.47710', '-78.15210'), ('TRENTON MILLS', None, '37.62920', '-78.22860'), ('TRENTS MILL', None, '37.55470', '-78.28970'), ('WHITEVILLE', None, '37.60230', '-78.16810')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'NDC049': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANAMOOSE', 282, '47.88320', '-100.24150'), ('BALFOUR', 20, '47.95230', '-100.53470'), ('BANTRY', 19, '48.49780', '-100.60920'), ('BERGEN', 11, '48.00470', '-100.71830'), ('BERWICK', None, '48.36670', '-100.25000'), ('DEERING', 118, '48.39530', '-101.04940'), ('DENBIGH', None, '48.31670', '-100.58330'), ('DRAKE', 322, '47.92190', '-100.37590'), ('GRANVILLE', 286, '48.26750', '-100.84290'), ('KARLSRUHE', 119, '48.09080', '-100.61710'), ('KIEF', 13, '47.86050', '-100.51260'), ('NORWICH', None, '48.25000', '-100.98330'), ('TOWNER', 574, '48.34760', '-100.40720'), ('UPHAM', 155, '48.58040', '-100.72810'), ('VELVA', 1049, '48.05830', '-100.93120'), ('VOLTAIRE', 51, '48.01930', '-100.84390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'OKC043': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALEDO', None, '35.83000', '-99.12000'), ('BURMAH', None, '35.83000', '-99.07000'), ('CAMARGO', 115, '36.01780', '-99.28830'), ('CESTOS', None, '36.15000', '-99.10000'), ('FAY', None, '35.82000', '-98.65000'), ('HUCMAC', None, '36.05000', '-98.78000'), ('LEEDEY', 345, '35.86950', '-99.34500'), ('OAKWOOD', 72, '35.93080', '-98.70320'), ('PUTNAM', 46, '35.99960', '-99.23410'), ('RHEA', None, '35.83000', '-99.23000'), ('SEILING', 875, '36.14960', '-98.92470'), ('TALOGA', 372, '36.04020', '-98.96430'), ('VICI', 668, '36.14910', '-99.29890')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'OKC045': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ARNETT', 520, '36.13530', '-99.77040'), ('CATESBY', None, '36.50000', '-99.97000'), ('FARGO', 326, '36.37340', '-99.62240'), ('GAGE', 429, '36.31810', '-99.75670'), ('HARMON', None, '36.14500', '-99.54200'), ('SHATTUCK', 1274, '36.27260', '-99.87710')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'OKC047': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BISON', None, '36.20000', '-97.88000'), ('BRECKENRIDGE', 239, '36.46070', '-97.72370'), ('CARRIER', 77, '36.47680', '-98.01440'), ('COVINGTON', 553, '36.30750', '-97.58560'), ('DOUGLAS', 32, '36.26000', '-97.66730'), ('DRUMMOND', 405, '36.30100', '-98.03540'), ('ENID', 47045, '36.40860', '-97.86810'), ('FAIRMONT', 147, '36.35490', '-97.70330'), ('GARBER', 845, '36.43650', '-97.58040'), ('HAYWARD', None, '36.28000', '-97.52000'), ('HILLSDALE', 101, '36.56400', '-97.99250'), ('HUNTER', 173, '36.56400', '-97.66240'), ('KREMLIN', 240, '36.54660', '-97.83090'), ('LAHOMA', 577, '36.38790', '-98.09030'), ('NORTH ENID', 796, '36.44660', '-97.86150'), ('WAUKOMIS', 1261, '36.28160', '-97.90460')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'OKC049': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ELMORE CITY', 756, '34.62330', '-97.39650'), ('ERIN SPRINGS', 114, '34.81070', '-97.60510'), ('FOSTER', None, '34.62000', '-97.48000'), ('LINDSAY', 2889, '34.83960', '-97.60970'), ('MAYSVILLE', 1313, '34.81670', '-97.41020'), ('PAOLI', 649, '34.82690', '-97.26210'), ('PAULS VALLEY', 6256, '34.72530', '-97.22440'), ('PERNELL', None, '34.57000', '-97.50000'), ('PURDY', None, '34.72000', '-97.58000'), ('STRATFORD', 1474, '34.79510', '-96.96000'), ('WHITEBEAD', None, '34.77000', '-97.30000'), ('WYNNEWOOD', 2367, '34.64430', '-97.16170')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'NDC043': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('CRYSTAL SPRINGS', None, '46.88330', '-99.46670'), ('DAWSON', 75, '46.86810', '-99.75210'), ('LAKE WILLIAMS', None, '47.13330', '-99.60000'), ('PETTIBONE', 88, '47.11780', '-99.52010'), ('ROBINSON', 71, '47.14310', '-99.78020'), ('STEELE', 761, '46.85610', '-99.91620'), ('TAPPEN', 210, '46.87290', '-99.62340'), ('TUTTLE', 106, '47.14410', '-99.99360')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDC045': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ADRIAN', None, '46.60000', '-98.55000'), ('ALFRED', None, '46.60000', '-99.00000'), ('BERLIN', 35, '46.37840', '-98.48750'), ('DICKEY', 57, '46.53650', '-98.46740'), ('EDGELEY', 637, '46.36260', '-98.71180'), ('GRAND RAPIDS', None, '46.45000', '-98.36670'), ('JUD', 76, '46.52500', '-98.89780'), ('KULM', 422, '46.30190', '-98.94780'), ('LA MOURE', None, '46.35780', '-98.29660'), ('MARION', 146, '46.60950', '-98.33480'), ('NORTONVILLE', None, '46.55000', '-98.73330'), ('VERONA', 108, '46.36530', '-98.07100')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'NDC047': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BURNSTAD', None, '46.38330', '-99.61670'), ('FREDONIA', 51, '46.32860', '-99.09490'), ('GACKLE', 335, '46.62640', '-99.14140'), ('NAPOLEON', 857, '46.50360', '-99.76800')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'TXC155': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CROWELL', 1141, '33.98360', '-99.72410'), ('MARGARET', None, '34.05000', '-99.67000'), ('RAYLAND', None, '34.07000', '-99.50000'), ('THALIA', None, '33.98000', '-99.53000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TXC157': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARCOLA', 1048, '29.50110', '-95.46350'), ('BEASLEY', 590, '29.49740', '-95.91790'), ('FIRST COLONY', None, '29.57450', '-95.60830'), ('FRESNO', 6603, '29.53740', '-95.45690'), ('FULSHEAR', 716, '29.69110', '-95.88420'), ('KENDLETON', 466, '29.44590', '-96.00010'), ('MEADOWS', None, '29.65150', '-95.58630'), ('MISSION BEND', 30831, '29.69370', '-95.66460'), ('MISSOURI CITY', 52913, '29.57230', '-95.53670'), ('NEEDVILLE', 2609, '29.39570', '-95.83920'), ('ORCHARD', 408, '29.60300', '-95.96870'), ('PECAN GROVE', 13551, '29.62580', '-95.73140'), ('PLEAK', 947, '29.48390', '-95.80990'), ('RICHMOND', 11081, '29.58140', '-95.76500'), ('ROSENBERG', 24043, '29.54860', '-95.79460'), ('SIMONTON', 718, '29.68140', '-95.99520'), ('STAFFORD', 15681, '29.62400', '-95.56310'), ('SUGAR LAND', 63328, '29.61880', '-95.61620'), ('THOMPSONS', 236, '29.49100', '-95.61960'), ('TOWN WEST', None, '29.66350', '-95.63090')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC151': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUSBY', None, '32.62280', '-100.42060'), ('CAPITOLA', None, '32.62220', '-100.49220'), ('GANNON', None, '32.55670', '-100.48310'), ('HITSON', None, '32.89440', '-100.21140'), ('HOBBS', None, '32.78140', '-100.59140'), ('LONGWORTH', None, '32.65030', '-100.34530'), ('MCCAULLEY', None, '32.78190', '-100.20360'), ('ROBY', 673, '32.74630', '-100.37850'), ('ROTAN', 1611, '32.85360', '-100.46540'), ('SYLVESTER', None, '32.72080', '-100.25390')], 'partOfState': 'NORTHWEST', 'wfo': 'SJT'}, -'TXC153': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AIKEN', None, '34.14220', '-101.52520'), ('CEDAR HILL', 32093, '34.14330', '-101.20380'), ('DOUGHERTY', None, '33.94160', '-101.08610'), ('FLOYDADA', 3676, '33.98370', '-101.33680'), ('LOCKNEY', 2056, '34.12290', '-101.44180'), ('SOUTH PLAINS', None, '34.22440', '-101.30910')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'WYC021': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALBIN', 120, '41.41710', '-104.09970'), ('BURNS', 285, '41.19010', '-104.35870'), ('CARPENTER', None, '41.03000', '-104.34000'), ('CHEYENNE', 53011, '41.14540', '-104.79230'), ('FEDERAL', None, '41.27000', '-105.10000'), ('FOX FARM-COLLEGE', 3272, '41.11010', '-104.78740'), ('GUN BARREL', None, '41.44000', '-104.35000'), ('HORSE CREEK', None, '41.41000', '-105.18000'), ('NORTH CHEYENNE', None, '41.21850', '-104.78970'), ('PINE BLUFFS', 1153, '41.18040', '-104.06820'), ('SOUTH GREELEY HIGHWAY', None, '41.09710', '-104.80580'), ('WARREN AF BASE', None, '41.15310', '-104.86060'), ('WHITAKER', None, '41.41000', '-104.87000')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'MEC023': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ARROWSIC', None, '43.84970', '-69.77860'), ('BATH', 9266, '43.91060', '-69.82110'), ('BOWDOINHAM', None, '44.01000', '-69.89890'), ('GEORGETOWN', None, '43.80440', '-69.74720'), ('PHIPPSBURG', None, '43.82060', '-69.81530'), ('RICHMOND', 1864, '44.08720', '-69.79940'), ('TOPSHAM', 6271, '43.92750', '-69.97640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'MEC021': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ABBOT', None, '45.18640', '-69.45250'), ('ATKINSON', None, '45.15970', '-69.08280'), ('BARNARD', None, '45.36640', '-69.20750'), ('BAXTER ST PARK', None, '46.02450', '-68.99500'), ('BLANCHARD', None, '45.26750', '-69.58420'), ('BOWERBANK', None, '45.27280', '-69.21250'), ('BOYD LAKE', None, '45.27280', '-69.21250'), ('BROWNVILLE', None, '45.30690', '-69.03390'), ('BROWNVILLE JUNCTION', None, '45.35000', '-69.05280'), ('CAUCOMGOMOC LAKE', None, '46.19470', '-69.55920'), ('CHAMBERLAIN LAKE', None, '46.27500', '-69.35170'), ('CHESUNCOOK', None, '46.06030', '-69.41000'), ('CHURCHILL DAM', None, '46.49250', '-69.28970'), ('DOVER-FOXCROFT', 2592, '45.18330', '-69.22750'), ('GREENVILLE', 1319, '45.45940', '-69.59110'), ('GUILFORD', 945, '45.16890', '-69.38500'), ('KATAHDIN IRON WORKS', None, '45.44330', '-69.17750'), ('KINGSBURY', None, '45.11940', '-69.64970'), ('KOKADJO', None, '45.67110', '-69.44750'), ('LAKE VIEW', None, '45.32330', '-68.92640'), ('LILY BAY', None, '45.59780', '-69.54720'), ('LOBSTER LAKE', None, '45.85310', '-69.52310'), ('MEDFORD', None, '45.28530', '-68.85220'), ('MILO', 1898, '45.25360', '-68.98640'), ('MONSON', None, '45.28690', '-69.50170'), ('MOUNT KATAHDIN', None, '45.90420', '-68.92280'), ('NORTH EAST CARRY', None, '45.86640', '-69.62690'), ('ONAWA', None, '45.36670', '-69.37220'), ('PARKMAN', None, '45.13360', '-69.43360'), ('RIPOGENUS', None, '45.88140', '-69.17580'), ('ROCKWOOD', None, '45.67780', '-69.74140'), ('SANGERVILLE', None, '45.16470', '-69.35690'), ('SEBEC', None, '45.27140', '-69.11720'), ('SHIRLEY', None, '45.36560', '-69.61860'), ('TAMWAY', None, '46.32220', '-69.37700'), ('TELOS LAKE', None, '46.14690', '-69.12720'), ('WELLINGTON', None, '45.03970', '-69.59780'), ('WILLIAMSBURG', None, '45.38000', '-69.11640'), ('WILLIMANTIC', None, '45.30670', '-69.40890')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CAR'}, -'IDC003': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BEAR', None, '45.01700', '-116.68300'), ('BROWNLEE DAM', None, '44.84000', '-116.90000'), ('COUNCIL', 816, '44.72890', '-116.43520'), ('CUPRUM', None, '45.08300', '-116.70000'), ('FRUITVALE', None, '44.81700', '-116.41700'), ('GLENDALE', None, '44.83300', '-116.40000'), ('GOODRICH', None, '44.65000', '-116.55000'), ('INDIAN VALLEY', None, '44.55000', '-116.43300'), ('MEADOWS', None, '44.96700', '-116.22200'), ('MESA', None, '44.63300', '-116.45000'), ('NEW MEADOWS', 533, '44.97070', '-116.28430'), ('TAMARACK', None, '44.95000', '-116.36700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BOI'}, -'MEC027': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BELFAST', 6381, '44.42580', '-69.00690'), ('BROOKS', None, '44.55030', '-69.12140'), ('BURNHAM', None, '44.69280', '-69.42810'), ('FRANKFORT', None, '44.60970', '-68.87720'), ('FREEDOM', None, '44.53030', '-69.29830'), ('ISLEBORO', None, '44.30830', '-68.90390'), ('JACKSON', None, '44.61470', '-69.12140'), ('KNOX', None, '44.52310', '-69.24310'), ('LIBERTY', None, '44.38920', '-69.30330'), ('LINCOLNVILLE', None, '44.28110', '-69.00920'), ('MONROE', None, '44.61500', '-69.01860'), ('MONTVILLE', None, '44.44670', '-69.24670'), ('MORRILL', None, '44.44310', '-69.14970'), ('NORTHPORT', None, '44.33780', '-68.96190'), ('PROSPECT', None, '44.55310', '-68.86530'), ('SEARSMONT', None, '44.36170', '-69.19560'), ('SEARSPORT', 1102, '44.45830', '-68.92470'), ('STOCKTON SPRINGS', None, '44.48940', '-68.85750'), ('SWANVILLE', None, '44.52110', '-68.99830'), ('THORNDIKE', None, '44.57810', '-69.27640'), ('TROY', None, '44.66470', '-69.24140'), ('UNITY', 486, '44.61110', '-69.33500'), ('WALDO', None, '44.51250', '-69.07670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'MEC025': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ANSON', 818, '44.79830', '-69.88970'), ('ATHENS', None, '44.92310', '-69.67330'), ('ATTEAN', None, '45.57470', '-70.31860'), ('BAKER LAKE', None, '46.26470', '-69.91030'), ('BILLY-JACK DEPOT', None, '46.24500', '-70.03670'), ('BINGHAM', 856, '45.05860', '-69.88280'), ('BRASSUA', None, '45.62670', '-69.91280'), ('BRIGHTON', None, '45.04530', '-69.69530'), ('CAMBRIDGE', None, '45.02420', '-69.47440'), ('CANAAN', None, '44.76170', '-69.56190'), ('CARATUNK', None, '45.23390', '-69.99060'), ('COMSTOCK', None, '45.99170', '-70.02890'), ('CORNVILLE', None, '44.83670', '-69.67360'), ('DETROIT', None, '44.79250', '-69.29720'), ('EMBDEN', None, '44.91810', '-69.86720'), ('FAIRFIELD', 2569, '44.58830', '-69.59920'), ('FLAGSTAFF LAKE', None, '45.22780', '-70.20390'), ('HARMONY', None, '44.97390', '-69.54670'), ('HARTLAND', 872, '44.88330', '-69.44810'), ('JACKMAN', None, '45.62390', '-70.25500'), ('LAKE MOXIE', None, '45.35110', '-69.88470'), ('LONG POND', None, '45.62140', '-70.08690'), ('MADISON', 2733, '44.79750', '-69.88030'), ('MAYFIELD', None, '45.10360', '-69.69360'), ('MERCER', None, '44.67810', '-69.93690'), ('MOOSEHEAD', None, '45.58330', '-69.71420'), ('MOSCOW', None, '45.07060', '-69.89170'), ('NEW PORTLAND', None, '44.88420', '-70.09720'), ('NORRIDGEWOCK', 1557, '44.71310', '-69.79110'), ('PALMYRA', None, '44.84640', '-69.35920'), ('PITTSFIELD', 3217, '44.78250', '-69.38390'), ('PITTSTON FARM', None, '45.89250', '-69.96530'), ('RIPLEY', None, '44.99110', '-69.37220'), ('SAINT ALBANS', None, '44.91000', '-69.41060'), ('SEBOOMOOK', None, '45.88060', '-69.72560'), ('SKOWHEGAN', 6696, '44.76500', '-69.71970'), ('SOLON', None, '44.94940', '-69.85890'), ('THE FORKS', None, '45.33610', '-69.96780')], 'partOfState': 'WEST CENTRAL', 'wfo': 'CARGYX'}, -'VAC041': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEACH', None, '37.35610', '-77.59390'), ('BELLWOOD', 5974, '37.40720', '-77.43680'), ('BENSLEY', 5435, '37.44660', '-77.44370'), ('BON AIR', 16213, '37.51980', '-77.56910'), ('CENTRALIA', None, '37.38080', '-77.46030'), ('CHESTER', 17890, '37.35330', '-77.43610'), ('CHESTERFIELD', None, '37.37580', '-77.50920'), ('DREWRYS BLUFF', None, '37.42640', '-77.45810'), ('ETTRICK', 5627, '37.24090', '-77.42830'), ('MATOACA', 2273, '37.23060', '-77.47930'), ('MEADOWVILLE', None, '37.37060', '-77.32280'), ('MIDLOTHIAN', None, '37.50250', '-77.63980'), ('MOSELEY', None, '37.41650', '-77.77020'), ('POCAHONTAS STATE PARK', None, '37.37880', '-77.55990'), ('SKINQUARTER', None, '37.39500', '-77.77920'), ('WINTERPOCK', None, '37.34600', '-77.72000')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'NYC063': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BARKER', 577, '43.32740', '-78.55380'), ('GASPORT', 1248, '43.19540', '-78.57720'), ('LEWISTON', 2781, '43.17160', '-79.04080'), ('LOCKPORT', 22279, '43.16970', '-78.69630'), ('MIDDLEPORT', 1917, '43.21170', '-78.47600'), ('NEWFANE', 3129, '43.28800', '-78.69930'), ('NIAGARA FALLS', 55593, '43.09110', '-79.01620'), ('NORTH TONAWANDA', 33262, '43.04380', '-78.86590'), ('OLCOTT', 1156, '43.33530', '-78.71230'), ('RANSOMVILLE', 1488, '43.23780', '-78.90910'), ('RAPIDS', 1356, '43.10130', '-78.64140'), ('WILSON', 1213, '43.31070', '-78.82690'), ('YOUNGSTOWN', 1957, '43.24870', '-79.04280')], 'partOfState': '', 'wfo': 'BUF'}, -'NYC061': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BATTERY PARK', None, '40.70900', '-74.00600'), ('GREENWICH VILLAGE', None, '40.75090', '-73.99750'), ('HARLEM', None, '40.82400', '-73.93750'), ('MIDTOWN MANHATTAN', None, '40.77000', '-73.96750'), ('WASHINGTON HEIGHTS', 1318, '40.85000', '-73.93000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYC067': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMBOY', None, '43.06670', '-76.28330'), ('APULIA', None, '42.81670', '-76.05000'), ('BALDWINSVILLE', 7053, '43.15640', '-76.33380'), ('BAYBERRY', None, '43.15000', '-76.21670'), ('BENNETTS CORNERS', None, '43.03330', '-76.36670'), ('BREWERTON', 3453, '43.23550', '-76.14180'), ('BRIDGEPORT', 1665, '43.15440', '-75.97520'), ('CAMILLUS', 1249, '43.03930', '-76.30820'), ('CEDARVALE', None, '42.96670', '-76.23330'), ('CICERO', None, '43.18330', '-76.11670'), ('CLAY', None, '43.18330', '-76.18330'), ('DE WITT', None, '43.03850', '-76.07340'), ('EAST SYRACUSE', 3178, '43.06370', '-76.06980'), ('ELBRIDGE', 1103, '43.03420', '-76.44360'), ('EUCLID', None, '43.18330', '-76.21670'), ('FABIUS', 355, '42.83550', '-75.98550'), ('FAIRMOUNT', 10795, '43.04060', '-76.24720'), ('FAYETTEVILLE', 4190, '43.03010', '-75.99780'), ('IONIA', None, '43.10000', '-76.38330'), ('JACKS REEF', None, '43.10000', '-76.43330'), ('JAMESVILLE', None, '42.98330', '-76.06670'), ('JORDAN', 1314, '43.06570', '-76.47330'), ('KIRKVILLE', None, '43.06670', '-75.96670'), ('LA FAYETTE', None, '42.88330', '-76.10000'), ('LAKELAND', 2852, '43.08330', '-76.25000'), ('LIVERPOOL', 2505, '43.10590', '-76.20990'), ('LOWER SOUTH BAY', None, '43.20000', '-76.06670'), ('LYNCOURT', 4268, '43.08140', '-76.12620'), ('LYNDON', None, '43.02780', '-76.04060'), ('LYSANDER', None, '43.21670', '-76.46670'), ('MANLIUS', 4819, '43.00090', '-75.98250'), ('MARCELLUS', 1826, '42.98410', '-76.34000'), ('MARIETTA', None, '42.91670', '-76.31670'), ('MARYSVILLE', None, '42.98330', '-76.43330'), ('MATTYDALE', 6367, '43.09940', '-76.14590'), ('MEMPHIS', None, '43.08330', '-76.38330'), ('MINOA', 3348, '43.07540', '-76.01040'), ('NEDROW', 2265, '42.98330', '-76.13330'), ('NORTH SYRACUSE', 6862, '43.13230', '-76.13020'), ('ONONDAGA', None, '43.00000', '-76.18330'), ('ORAN', None, '42.98330', '-75.91670'), ('OTISCO', None, '42.86670', '-76.20000'), ('PLAINVILLE', None, '43.16670', '-76.45000'), ('POMPEY', None, '42.90000', '-76.01670'), ('SENECA KNOLLS', 2138, '43.13330', '-76.30000'), ('SKANEATELES', 2616, '42.94500', '-76.42550'), ('SOLVAY', 6845, '43.05830', '-76.21200'), ('SYRACUSE', 147306, '43.04110', '-76.14410'), ('TAUNTON', None, '43.03330', '-76.21670'), ('TULLY', 924, '42.79790', '-76.10800'), ('VAN BUREN', None, '43.11670', '-76.31670'), ('VESPER', None, '42.81670', '-76.16670'), ('VILLAGE GREEN', 3945, '43.13330', '-76.31340'), ('WARNERS', None, '43.08330', '-76.33330'), ('WATERVALE', None, '42.95000', '-75.96670'), ('WESTVALE', 5166, '43.04180', '-76.21230'), ('WOODARD', None, '43.15000', '-76.20000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYC065': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALDER CREEK', None, '43.41670', '-75.21670'), ('AUGUSTA', None, '42.96670', '-75.51670'), ('AVA', None, '43.41670', '-75.48330'), ('BARNEVELD', 332, '43.27400', '-75.18910'), ('BARNVELD', None, '43.26670', '-75.18330'), ('BLOSSVALE', None, '43.28330', '-75.65000'), ('BOONVILLE', 2138, '43.48080', '-75.33010'), ('BRIDGEWATER', 579, '42.87770', '-75.25020'), ('CAMDEN', 2330, '43.33630', '-75.74760'), ('CHADWICKS', None, '43.03330', '-75.28330'), ('CLARK MILLS', 1424, '43.08420', '-75.37660'), ('CLAYVILLE', 445, '42.97420', '-75.24980'), ('CLINTON', 1952, '43.04890', '-75.37870'), ('COLEMANS', None, '43.13330', '-75.35000'), ('DEERFIELD', None, '43.11670', '-75.21670'), ('DELTA LAKE', None, '43.28330', '-75.45000'), ('FLORENCE', None, '43.43330', '-75.75000'), ('FLOYD', None, '43.21670', '-75.35000'), ('FORESTPORT', None, '43.45000', '-75.21670'), ('FRENCHVILLE', None, '43.33330', '-75.36670'), ('GLENMORE', None, '43.36670', '-75.61670'), ('GRIFFISS AFB', None, '43.23330', '-75.41670'), ('HAWKINSVILLE', None, '43.50000', '-75.26670'), ('HINCKLEY', None, '43.31670', '-75.11670'), ('HOLLAND PATENT', 461, '43.24180', '-75.25740'), ('HUBBARD CORNERS', None, '42.96670', '-75.33330'), ('JEWELL', None, '43.23330', '-75.81670'), ('KIRKLAND', None, '43.08330', '-75.38330'), ('LEE', None, '43.28330', '-75.58330'), ('MAYNARD', None, '43.13330', '-75.26670'), ('NEW HARTFORD', 1886, '43.07110', '-75.28960'), ('NEW LONDON', None, '43.20000', '-75.60000'), ('NEW YORK MILLS', 3191, '43.10030', '-75.29320'), ('NORTH WESTERN', None, '43.35000', '-75.36670'), ('ONEIDA CASTLE', 627, '43.08390', '-75.63230'), ('ORISKANY', 1459, '43.15590', '-75.33280'), ('PARIS', None, '43.00000', '-75.31670'), ('POINT ROCK', None, '43.38330', '-75.55000'), ('PROSPECT', 330, '43.30420', '-75.15280'), ('REMSEN', 531, '43.32750', '-75.18710'), ('ROME', 34950, '43.22550', '-75.48930'), ('SAUQUOIT', None, '43.00000', '-75.25000'), ('SHERRILL', 3147, '43.07000', '-75.60000'), ('STEUBEN', None, '43.31670', '-75.28330'), ('STITTVILLE', None, '43.21670', '-75.28330'), ('STOCKWELL', None, '42.88330', '-75.40000'), ('STOKES CORNER', None, '43.30000', '-75.46670'), ('SYLVAN BEACH', 1071, '43.20660', '-75.72550'), ('TABERG', None, '43.30000', '-75.61670'), ('TRENTON', None, '43.28330', '-75.18330'), ('TRENTON FALLS', None, '43.26670', '-75.16670'), ('UTICA', 60651, '43.09690', '-75.22840'), ('VERNON', 1155, '43.08030', '-75.53840'), ('VERNON CENTER', None, '43.05000', '-75.51670'), ('VERONA', None, '43.13330', '-75.58330'), ('VERONA BEACH', None, '43.20000', '-75.73330'), ('VERONA MILLS', None, '43.20000', '-75.56670'), ('VIENNA', None, '43.23330', '-75.71670'), ('WATERVILLE', 1721, '42.93100', '-75.38130'), ('WESTERNVILLE', None, '43.31670', '-75.38330'), ('WESTMORELAND', None, '43.11670', '-75.41670'), ('WHITESBORO', 3943, '43.12380', '-75.29700'), ('WOODGATE', None, '43.51670', '-75.15000'), ('YORKVILLE', 2675, '43.11170', '-75.27390')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NDC105': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALAMO', 51, '48.58200', '-103.46700'), ('APPUM', None, '48.56670', '-103.58330'), ('CORINTH', None, '48.61670', '-103.31670'), ('EPPING', 79, '48.28070', '-103.35770'), ('GRENORA', 202, '48.61920', '-103.93610'), ('HAMLET', None, '48.63330', '-103.05000'), ('HANKS', None, '48.60250', '-103.80200'), ('MCGREGOR', None, '48.60000', '-102.93330'), ('RAY', 534, '48.34130', '-103.16270'), ('SPRING BROOK', None, '48.25190', '-103.46210'), ('TIOGA', 1125, '48.39350', '-102.93850'), ('TRENTON', None, '48.06670', '-103.85000'), ('WHEELOCK', None, '48.29500', '-103.25250'), ('WILDROSE', 129, '48.62920', '-103.18310'), ('WILLISTON', 12512, '48.16230', '-103.63090'), ('ZAHL', None, '48.56670', '-103.68330')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'NYC069': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CANANDAIGUA', 11264, '42.88900', '-77.28070'), ('CLIFTON SPRINGS', 2223, '42.95970', '-77.13340'), ('EAST BLOOMFIELD', None, '42.89710', '-77.43380'), ('GENEVA', 13617, '42.86530', '-76.98350'), ('HOLCOMB', None, '42.90020', '-77.41830'), ('MANCHESTER', 1475, '42.96860', '-77.23160'), ('NAPLES', 1072, '42.61690', '-77.40190'), ('PHELPS', 1969, '42.95830', '-77.06260'), ('SHORTSVILLE', 1320, '42.95610', '-77.22230'), ('VICTOR', 2433, '42.98260', '-77.41170')], 'partOfState': '', 'wfo': 'BUF'}, -'NDC101': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BERTHOLD', 466, '48.31500', '-101.73530'), ('BURLINGTON', 1096, '48.27560', '-101.42570'), ('CARPIO', 148, '48.44240', '-101.71540'), ('DES LACS', 209, '48.25690', '-101.56320'), ('DONNYBROOK', 90, '48.50790', '-101.88560'), ('DOUGLAS', 64, '47.85860', '-101.50080'), ('FOXHOLM', None, '48.36670', '-101.56670'), ('HARTLAND', None, '48.40000', '-101.81670'), ('KENMARE', 1081, '48.67400', '-102.07980'), ('MAKOTI', 145, '47.96050', '-101.80470'), ('MINOT', 36567, '48.23370', '-101.29610'), ('MINOT AFB', 7599, '48.41990', '-101.33630'), ('RYDER', 92, '47.91730', '-101.67310'), ('SAWYER', 377, '48.08930', '-101.05400'), ('SURREY', 917, '48.23600', '-101.13260'), ('WOLSETH', None, '48.45000', '-101.11670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDC103': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BOWDON', 139, '47.46890', '-99.70810'), ('BREMEN', None, '47.75000', '-99.36670'), ('CATHAY', 56, '47.55390', '-99.41100'), ('CHASELEY', None, '47.45000', '-99.80000'), ('EMRICK', None, '47.53330', '-99.40000'), ('FESSENDEN', 625, '47.64970', '-99.62570'), ('HAMBERG', 28, '47.76260', '-99.51480'), ('HARVEY', 1989, '47.77000', '-99.93070'), ('HEATON', None, '47.48330', '-99.53330'), ('HEIMDAL', None, '47.80000', '-99.61670'), ('HURDSFIELD', 91, '47.44780', '-99.93000'), ('SYKESTON', 153, '47.46570', '-99.39850'), ('WELLSBURG', None, '47.83330', '-99.73330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'ILC121': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALMA', 386, '38.72290', '-88.91010'), ('BRUBAKER', None, '38.69310', '-88.87650'), ('CARTTER', None, '38.54110', '-88.91220'), ('CENTRAL CITY', 1371, '38.54800', '-89.12860'), ('CENTRALIA', 14136, '38.52280', '-89.12700'), ('FAIRMAN', None, '38.67780', '-89.10470'), ('HELM', None, '38.51700', '-88.71700'), ('IUKA', 598, '38.61450', '-88.78980'), ('JUNCTION CITY', 559, '38.57730', '-89.12540'), ('KELL', 231, '38.49080', '-88.90420'), ('KINMUNDY', 892, '38.77400', '-88.84960'), ('ODIN', 1122, '38.61640', '-89.05390'), ('OMEGA', None, '38.70450', '-88.78070'), ('PATOKA', 633, '38.75340', '-89.09600'), ('SALEM', 7909, '38.62830', '-88.95180'), ('SANDOVAL', 1434, '38.61130', '-89.11930'), ('SELMAVILLE', None, '38.60700', '-88.99540'), ('STEPHEN FORBES STATE PARK', None, '38.72490', '-88.76380'), ('TONTI', None, '38.66470', '-88.97840'), ('VERNON', 178, '38.80200', '-89.08910'), ('WALNUT HILL', 109, '38.47740', '-89.04420')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'KSC013': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('EVEREST', 314, '39.67720', '-95.42450'), ('FAIRVIEW', 271, '39.84110', '-95.72780'), ('HIAWATHA', 3417, '39.85250', '-95.53560'), ('HORTON', 1967, '39.66060', '-95.52610'), ('IOWA SAC AND FOX RESERVAT', None, '39.98000', '-95.44000'), ('KICKAPOO RESERVATION', None, '39.69000', '-95.66000'), ('MORRILL', 277, '39.92830', '-95.69170'), ('POWHATTAN', 91, '39.76170', '-95.62970'), ('RESERVE', 100, '39.97720', '-95.56170'), ('ROBINSON', 216, '39.81670', '-95.41030'), ('WILLIS', 69, '39.72500', '-95.50560')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'OHC003': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEAVERDAM', 356, '40.83290', '-83.97640'), ('BLUFFTON', 3896, '40.89010', '-83.88590'), ('CAIRO', 499, '40.83130', '-84.08460'), ('ELIDA', 1917, '40.78600', '-84.19980'), ('FORT SHAWNEE', 3855, '40.68120', '-84.13150'), ('HARROD', 491, '40.70840', '-83.92040'), ('LAFAYETTE', 304, '40.75860', '-83.94950'), ('LIMA', 40081, '40.74330', '-84.11140'), ('SPENCERVILLE', 2235, '40.70800', '-84.35320')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'FLC097': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLIGATOR LAKE', None, '28.21790', '-81.20460'), ('BUENA VENTURA LAKES', None, '28.33570', '-81.35320'), ('CAMPBELL', 2677, '28.25710', '-81.45270'), ('DEER PARK', None, '28.09110', '-80.89810'), ('EAST LAKE TOHO', None, '28.29880', '-81.28720'), ('HOLOPAW', None, '28.12600', '-81.07640'), ('INTERCESSION CITY', None, '28.26220', '-81.50820'), ('KENANSVILLE', None, '27.88470', '-80.99520'), ('KISSIMMEE', 47814, '28.30350', '-81.41050'), ('LAKE KISSIMMEE', None, '27.91610', '-81.27640'), ('LAKE MARIAN', None, '27.87150', '-81.06630'), ('NARCOOSSEE', None, '28.29820', '-81.23940'), ('OSCEOLA ASTROS COMPLEX', None, '28.29560', '-81.33590'), ('PINE GROVE', None, '28.25940', '-81.18480'), ('POINCIANA PLACE', None, '28.15730', '-81.48490'), ('REPTILE WORLD', None, '28.24290', '-81.22510'), ('SAINT CLOUD', None, '28.24180', '-81.28980'), ('WEST LAKE TOHO', None, '28.21420', '-81.39860'), ('YEEHAW JUNCTION', 21778, '27.69990', '-80.90450')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'INC093': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BEDFORD', 13768, '38.86040', '-86.49080'), ('MITCHELL', 4567, '38.73660', '-86.47550'), ('OOLITIC', 1152, '38.89140', '-86.52640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'IND'}, -'VTC019': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ALBANY', 165, '44.73050', '-72.38200'), ('BARTON', 742, '44.74960', '-72.17740'), ('COVENTRY', None, '44.87000', '-72.27000'), ('CRAFTSBURY', None, '44.63000', '-72.37000'), ('DERBY CENTER', 670, '44.95580', '-72.13230'), ('DERBY LINE', 776, '45.00240', '-72.10400'), ('EAST CHARLESTON', None, '44.83000', '-72.00000'), ('GLOVER', None, '44.70000', '-72.18000'), ('GREENSBORO', None, '44.58000', '-72.28000'), ('JAY', None, '44.97000', '-72.47000'), ('LOWELL', None, '44.80000', '-72.45000'), ('MORGAN CENTER', None, '44.92000', '-71.98000'), ('NEWPORT', 5005, '44.93700', '-72.20890'), ('NEWPORT CENTER', None, '44.95000', '-72.30000'), ('NORTH TROY', 593, '44.99540', '-72.40490'), ('ORLEANS', 826, '44.81060', '-72.20180'), ('WESTFIELD', None, '44.88000', '-72.42000'), ('WESTMORE', None, '44.77000', '-72.05000')], 'partOfState': 'NORTHEAST', 'wfo': 'BTV'}, -'AKC150': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AKHIOK', 80, '56.97730', '-154.21760'), ('KARLUK', 27, '57.58610', '-154.39530'), ('KODIAK', 6334, '57.79850', '-152.40230'), ('KODIAK STATION', 1840, '57.76290', '-152.52690'), ('LARSEN BAY', 115, '57.55870', '-154.01970'), ('OLD HARBOR', 237, '57.24500', '-153.37360'), ('OUZINKIE', 225, '57.93520', '-152.45820'), ('PORT LIONS', 256, '57.89080', '-152.85890'), ('WOMENS BAY', 690, '57.68230', '-152.66870')], 'partOfState': '', 'wfo': 'AFC'}, -'VTC015': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BELVIDERE', None, '44.75000', '-72.68000'), ('CAMBRIDGE', 235, '44.63540', '-72.88250'), ('EDEN', None, '44.70000', '-72.55000'), ('HYDE PARK', 415, '44.59430', '-72.61290'), ('JEFFERSONVILLE', 568, '44.64440', '-72.82810'), ('JOHNSON', 1420, '44.63720', '-72.67790'), ('MORRISVILLE', 2009, '44.55860', '-72.59640'), ('STOWE', None, '44.46590', '-72.68570'), ('WOLCOTT', None, '44.55000', '-72.47000')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'VTC013': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ALBURG', 488, '44.97740', '-73.30130'), ('GRAND ISLE', None, '44.72000', '-73.30000'), ('ISLE LA MOTTE', None, '44.87000', '-73.33000'), ('NORTH HERO', None, '44.82200', '-73.28000'), ('SOUTH HERO', None, '44.64000', '-73.31000')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'VTC011': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BAKERSFIELD', None, '44.78000', '-72.80000'), ('ENOSBURG FALLS', 1473, '44.90830', '-72.80440'), ('FAIRFAX', None, '44.67000', '-73.02000'), ('FAIRFIELD', None, '44.80000', '-72.95000'), ('FLETCHER', None, '44.68000', '-72.92000'), ('FRANKLIN', None, '44.98000', '-72.92000'), ('GEORGIA', None, '44.72000', '-73.12000'), ('HIGHGATE FALLS', None, '44.93000', '-73.03000'), ('HIGHGATE SPRINGS', None, '44.97000', '-73.10000'), ('MONTGOMERY', None, '44.90000', '-72.63000'), ('RICHFORD', None, '44.99570', '-72.67340'), ('SHELDON', None, '44.88000', '-72.95000'), ('ST. ALBANS', 7650, '44.81130', '-73.08490'), ('SWANTON', 2548, '44.92150', '-73.12100')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'IAC035': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AURELIA', 1062, '42.71300', '-95.43690'), ('CHEROKEE', 5369, '42.75060', '-95.55250'), ('CLEGHORN', 250, '42.81160', '-95.71350'), ('LARRABEE', 149, '42.86130', '-95.54490'), ('MARCUS', 1139, '42.82410', '-95.80720'), ('MERIDEN', 184, '42.79420', '-95.63260'), ('QUIMBY', 368, '42.62920', '-95.64270'), ('WASHTA', 282, '42.57590', '-95.71920')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAC037': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALTA VISTA', 286, '43.19570', '-92.41710'), ('BASSETT', 74, '43.06240', '-92.51570'), ('BOYD', None, '43.01493', '-92.26584'), ('DEVON', None, '43.13373', '-92.38281'), ('FREDERICKSBURG', 984, '42.96460', '-92.19830'), ('IONIA', 277, '43.03620', '-92.45760'), ('LAWLER', 461, '43.07170', '-92.15380'), ('LITTLE TURKEY', None, '43.13190', '-92.10136'), ('NASHUA', 1618, '42.95060', '-92.53910'), ('NEW HAMPTON', 3692, '43.05970', '-92.31450'), ('NORTH WASHINGTON', 118, '43.11630', '-92.41500'), ('REPUBLIC', None, '42.94731', '-92.40108'), ('SAUDE', None, '43.19769', '-92.18360'), ('WILLIAMSTOWN', None, '42.96559', '-92.33346')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'IAC031': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BENNETT', 395, '41.73970', '-90.97430'), ('BUCHANAN', None, '41.76670', '-91.25000'), ('CEDAR BLUFF', None, '41.78330', '-91.31670'), ('CEDAR VALLEY', None, '41.73340', '-91.25000'), ('CENTERDALE', None, '41.65000', '-91.30000'), ('CLARENCE', 1008, '41.88590', '-91.05810'), ('DOWNEY', None, '41.61670', '-91.35000'), ('DURANT', 1677, '41.60090', '-90.90900'), ('LIME CITY', None, '41.65000', '-91.08340'), ('LOWDEN', 794, '41.85860', '-90.92310'), ('MASSILLON', None, '41.91670', '-90.91670'), ('MECHANICSVILLE', 1173, '41.90490', '-91.25330'), ('ROCHESTER', None, '41.66670', '-91.16670'), ('SPRINGDALE', None, '41.66670', '-91.26670'), ('STANWOOD', 680, '41.89360', '-91.15000'), ('SUNBURY', None, '41.66670', '-90.93330'), ('TIPTON', 3155, '41.77050', '-91.12890'), ('TIPTON MATTHEWS AIRPORT', None, '41.77000', '-91.15000'), ('WALD', None, '41.83330', '-91.13330'), ('WEST BRANCH', 2188, '41.67010', '-91.34920')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAC033': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CLEAR LAKE', 8161, '43.13510', '-93.37360'), ('DOUGHERTY', 80, '42.92260', '-93.03630'), ('MASON CITY', 29172, '43.15130', '-93.19850'), ('MESERVEY', 252, '42.91510', '-93.47320'), ('PLYMOUTH', 429, '43.24690', '-93.12240'), ('ROCK FALLS', 170, '43.20720', '-93.08700'), ('ROCKWELL', 989, '42.97990', '-93.18690'), ('SWALEDALE', 174, '42.97690', '-93.31530'), ('THORNTON', 422, '42.94400', '-93.38760'), ('VENTURA', 670, '43.12640', '-93.45980')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'WIC045': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALBANY', 1191, '42.70700', '-89.43680'), ('BRODHEAD', 3180, '42.61670', '-89.37620'), ('BROWNTOWN', 252, '42.57790', '-89.79140'), ('MONROE', 10843, '42.59980', '-89.64380'), ('MONTICELLO', 1146, '42.74580', '-89.58970'), ('NEW GLARUS', 2111, '42.81320', '-89.63460')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'INC177': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BOSTON', 177, '39.74150', '-84.85110'), ('CAMBRIDGE CITY', 2121, '39.81200', '-85.17080'), ('CENTERVILLE', 2427, '39.81720', '-84.99550'), ('DUBLIN', 697, '39.81240', '-85.20510'), ('EAST GERMANTOWN', 243, '39.81280', '-85.13670'), ('ECONOMY', 200, '39.97740', '-85.08710'), ('FOUNTAIN CITY', 735, '39.95590', '-84.91790'), ('GREENS FORK', 371, '39.89140', '-85.04230'), ('HAGERSTOWN', 1768, '39.91170', '-85.15690'), ('MILTON', 611, '39.78650', '-85.15620'), ('MOUNT AUBURN', 75, '39.81290', '-85.19030'), ('RICHMOND', 39124, '39.82950', '-84.88540'), ('SPRING GROVE', 386, '39.84720', '-84.89050'), ('WHITEWATER', 78, '39.94430', '-84.83070')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILN'}, -'INC175': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BECKS MILL', None, '38.53330', '-86.15000'), ('BLUE RIVER', None, '38.53330', '-85.93330'), ('BUNKER HILL', 987, '38.56670', '-85.88330'), ('CAMPBELLSBURG', 578, '38.65120', '-86.26080'), ('CANTON', None, '38.63330', '-86.03330'), ('CLAYSVILLE', None, '38.61670', '-86.28330'), ('DAISY HILL', None, '38.50000', '-85.93330'), ('FARABEE', None, '38.55000', '-86.01670'), ('FREDERICKSBURG', 92, '38.43290', '-86.18850'), ('HARDINSBURG', 244, '38.46040', '-86.27270'), ('HITCHCOCK', None, '38.63330', '-86.16670'), ('KOSSUTH', None, '38.70000', '-86.10000'), ('LITTLE YORK', 185, '38.69970', '-85.90390'), ('LIVONIA', 112, '38.55710', '-86.27890'), ('MARTINSBURG', None, '38.45000', '-86.03330'), ('MCKINLEY', None, '38.75000', '-86.20000'), ('MILLPORT', None, '38.76670', '-86.10000'), ('MOUNT CARMEL', 106, '38.71670', '-86.25000'), ('NEW LIBERTY', None, '38.56670', '-85.86670'), ('NEW PEKIN', 1334, '38.50250', '-86.01540'), ('NEW PHILADELPHIA', None, '38.63330', '-85.96670'), ('ORGAN SPRINGS', None, '38.48330', '-86.16670'), ('PLATTSBURG', None, '38.71670', '-86.08330'), ('PUMPKIN CENTER', None, '38.70000', '-85.95000'), ('ROSEBUD', None, '38.53330', '-86.21670'), ('RUSH CREEK VALLEY', None, '38.70000', '-86.16670'), ('SALEM', 6172, '38.60410', '-86.09880'), ('SALTILLO', 107, '38.66570', '-86.29830'), ('SMEDLEY', None, '38.63330', '-86.21670'), ('SOUTH BOSTON', None, '38.58330', '-85.98330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'IAC039': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('MURRAY', 766, '41.04130', '-93.94840'), ('OSCEOLA', 4659, '41.03130', '-93.77380'), ('WOODBURN', 244, '41.01050', '-93.59650')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'INC171': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('PINE VILLAGE', 255, '40.44990', '-87.25250'), ('STATE LINE CITY', 141, '40.19720', '-87.52720'), ('WEST LEBANON', 793, '40.27130', '-87.38340'), ('WILLIAMSPORT', 1935, '40.28710', '-87.29350')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'WYC025': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALCOVA', 20, '42.55000', '-106.72000'), ('ARMINTO', None, '43.18000', '-107.26000'), ('BAR NUNN', 936, '42.92620', '-106.34630'), ('CASPER', 49644, '42.83260', '-106.32930'), ('EDGERTON', 169, '43.41450', '-106.24720'), ('EVANSVILLE', 2255, '42.87250', '-106.25870'), ('HILAND', None, '43.12000', '-107.35000'), ('MIDWEST', 408, '43.41130', '-106.27750'), ('MILLS', 2591, '42.84580', '-106.37590'), ('NATRONA', None, '43.03000', '-106.81000'), ('POWDER RIVER', 51, '43.03000', '-106.98000'), ('WALTMAN', None, '43.06000', '-107.19000')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'WIC103': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BLOOM CITY', None, '43.49741', '-90.46753'), ('BOAZ', 137, '43.33080', '-90.52720'), ('BOSSTOWN', None, '43.38227', '-90.61739'), ('CAZENOVIA', 326, '43.52530', '-90.19880'), ('EAGLE CORNERS', None, '43.21414', '-90.50042'), ('FIVE POINTS', None, '43.31465', '-90.59911'), ('GILLINGHAM', None, '43.43162', '-90.44925'), ('GOTHAM', None, '43.21414', '-90.29939'), ('ITHACA', None, '43.34755', '-90.28295'), ('LONE ROCK', 929, '43.18450', '-90.20170'), ('LOYD', None, '43.41517', '-90.24822'), ('NEPTUNE', None, '43.36582', '-90.26650'), ('PORT ANDREW', None, '43.20500', '-90.56804'), ('RICHLAND CENTER', 5114, '43.33780', '-90.38320'), ('ROCKBRIDGE', None, '43.44806', '-90.36701'), ('SABIN', None, '43.43162', '-90.56439'), ('SEXTONVILLE', None, '43.28176', '-90.29757'), ('TRAVERA', None, '43.28358', '-90.65028'), ('WEST LIMA', None, '43.54858', '-90.53149'), ('WESTPORT', None, '43.19952', '-90.63384'), ('YUBA', 92, '43.53630', '-90.42790')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'WIC141': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARPIN', 337, '44.54000', '-90.03000'), ('AUBURNDALE', 738, '44.63000', '-90.00000'), ('BABCOCK', None, '44.29000', '-90.13000'), ('BAKERVILLE', None, '44.63000', '-90.21000'), ('BETHEL', None, '44.53000', '-90.08000'), ('BIRON', 915, '44.43000', '-89.78000'), ('BLENKER', None, '44.61000', '-89.91000'), ('DEXTERVILLE', None, '44.38000', '-90.11000'), ('HEWITT', 670, '44.63000', '-90.13000'), ('LINDSEY', None, '44.54000', '-90.30000'), ('MARSHFIELD', 18800, '44.66000', '-90.16000'), ('MILLADORE', 268, '44.59000', '-89.86000'), ('NEKOOSA', 2590, '44.31000', '-89.88000'), ('PITTSVILLE', 866, '44.45000', '-90.13000'), ('PORT EDWARDS', 1944, '44.33000', '-89.84000'), ('RUDOLPH', 423, '44.50000', '-89.80000'), ('SHERRY', None, '44.58000', '-89.91000'), ('VESPER', 541, '44.48000', '-89.96000'), ('WISCONSIN RAPIDS', 18435, '44.40000', '-89.84000')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'NEC023': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ABIE', 108, '41.33370', '-96.94930'), ('BELLWOOD', 446, '41.34210', '-97.24020'), ('BRAINARD', 351, '41.18270', '-97.00220'), ('BRUNO', 112, '41.28330', '-96.96050'), ('DAVID CITY', 2597, '41.25450', '-97.12610'), ('DWIGHT', 259, '41.08300', '-97.01910'), ('GARRISON', 67, '41.17550', '-97.16300'), ('LINWOOD', 118, '41.41180', '-96.93240'), ('OCTAVIA', 145, '41.34730', '-97.05910'), ('RISING CITY', 386, '41.19860', '-97.29690'), ('SURPRISE', 44, '41.10440', '-97.30860'), ('ULYSSES', 276, '41.07240', '-97.20240')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEC021': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CRAIG', 241, '41.78490', '-96.36160'), ('DECATUR', 618, '42.00810', '-96.25070'), ('LYONS', 963, '41.93610', '-96.47190'), ('OAKLAND', 1367, '41.83510', '-96.46580'), ('TEKAMAH', 1892, '41.77740', '-96.22270')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEC027': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BELDEN', 131, '42.41170', '-97.20760'), ('COLERIDGE', 541, '42.50630', '-97.20230'), ('FORDYCE', 182, '42.69810', '-97.36270'), ('HARTINGTON', 1640, '42.62000', '-97.26500'), ('LAUREL', 986, '42.42800', '-97.09400'), ('MAGNET', 79, '42.45740', '-97.46920'), ('OBERT', 49, '42.68900', '-97.02700'), ('RANDOLPH', 955, '42.37730', '-97.35720'), ('ST. HELENA', 86, '42.80990', '-97.24890'), ('WYNOT', 191, '42.73950', '-97.16960')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEC025': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALVO', 142, '40.87150', '-96.38660'), ('AVOCA', 270, '40.79640', '-96.11780'), ('CEDAR CREEK', 396, '41.04540', '-96.09790'), ('EAGLE', 1105, '40.81610', '-96.43210'), ('ELMWOOD', 668, '40.84220', '-96.29430'), ('GREENWOOD', 544, '40.96160', '-96.44270'), ('LOUISVILLE', 1046, '40.99880', '-96.16030'), ('MANLEY', 191, '40.91880', '-96.16520'), ('MURDOCK', 269, '40.92600', '-96.28030'), ('MURRAY', 481, '40.91660', '-95.92790'), ('NEHAWKA', 232, '40.82980', '-95.98930'), ('PLATTSMOUTH', 6887, '41.00770', '-95.89140'), ('SOUTH BEND', 86, '41.00210', '-96.24620'), ('UNION', 260, '40.81470', '-95.92070'), ('WEEPING WATER', 1103, '40.86780', '-96.13880')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'CTC011': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('COLCHESTER', None, '41.57400', '-72.33200'), ('FRANKLIN', None, '41.60000', '-72.14000'), ('GALES FERRY', None, '41.46000', '-72.09000'), ('GROTON', 10010, '41.34000', '-72.08000'), ('JEWETT CITY', 3053, '41.60590', '-71.98170'), ('LEBANON', None, '41.66000', '-72.24000'), ('LEDYARD CENTER', None, '41.47000', '-72.03000'), ('MONTVILLE', None, '41.44360', '-72.12440'), ('MYSTIC', 4001, '41.35180', '-71.97210'), ('NEW LONDON', 25671, '41.35000', '-72.10000'), ('NIANTIC', 3085, '41.32280', '-72.19430'), ('NORTH LYME', None, '41.41000', '-72.34000'), ('NORTH STONINGTON', None, '41.44000', '-71.89000'), ('NORWICH', 36117, '41.55020', '-72.08790'), ('OLD LYME', None, '41.31000', '-72.34000'), ('PAWCATUCK', 5474, '41.37560', '-71.85300'), ('POQUONOCK BRIDGE', 1592, '41.34900', '-72.02810'), ('PRESTON', None, '41.55000', '-71.99000'), ('SALEM', None, '41.48000', '-72.27000'), ('VOLUNTOWN', None, '41.59000', '-71.85000'), ('WATERFORD', None, '41.34270', '-72.14070')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'CTC013': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('ANDOVER', None, '41.73333', '-72.36667'), ('BOLTON', None, '41.76667', '-72.43333'), ('COLUMBIA', None, '41.70000', '-72.30000'), ('COVENTRY', None, '41.78333', '-72.30000'), ('ELLINGTON', None, '41.90000', '-72.46667'), ('HEBRON', None, '41.65000', '-72.36667'), ('MANSFIELD', None, '41.83333', '-72.25000'), ('ROCKVILLE', 7708, '41.86667', '-72.46667'), ('SOMERS', None, '41.98333', '-72.45000'), ('STAFFORD', None, '41.98333', '-72.28333'), ('STAFFORD SPRINGS', None, '41.95410', '-72.30950'), ('STORRS', 10996, '41.80610', '-72.25670'), ('TOLLAND', None, '41.98333', '-72.15000'), ('UNION', None, '41.98333', '-72.15000'), ('VERNON', None, '41.81667', '-72.48333'), ('WILLINGTON', None, '41.86667', '-72.27000')], 'partOfState': 'NORTHERN', 'wfo': 'BOX'}, -'NEC029': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CHAMPION', None, '40.46500', '-101.71000'), ('ENDERS', None, '40.44250', '-101.52000'), ('IMPERIAL', 1982, '40.51620', '-101.63760'), ('LAMAR', 19, '40.57240', '-101.97950'), ('WAUNETA', 625, '40.41660', '-101.37160')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'CTC015': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('ASHFORD', None, '41.86667', '-72.11667'), ('BROOKLYN', None, '41.78333', '-71.95000'), ('CANTERBURY', None, '41.70000', '-71.96667'), ('CHAPLIN', None, '41.80000', '-72.11667'), ('DANIELSON', 4265, '41.80000', '-71.88333'), ('EASTFORD', None, '41.90000', '-72.08333'), ('HAMPTON', None, '41.78333', '-72.05000'), ('KILLINGLY', None, '41.83333', '-71.86667'), ('PLAINFIELD', None, '41.67650', '-71.92480'), ('POMFRET', None, '41.90000', '-71.96667'), ('PUTNAM', None, '41.91670', '-71.90000'), ('SCOTLAND', None, '41.70000', '-72.08333'), ('STERLING', None, '41.70000', '-71.83333'), ('THOMPSON', None, '41.95000', '-71.86667'), ('WILLIMANTIC', 15823, '41.71560', '-72.21800'), ('WINDHAM', None, '41.70000', '-72.16667'), ('WOODSTOCK', None, '41.95000', '-71.98333')], 'partOfState': 'NORTHERN', 'wfo': 'BOX'}, -'IDC031': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ALBION', 262, '42.41100', '-113.58010'), ('ALMO', None, '42.10000', '-113.63000'), ('BASIN', None, '42.25000', '-113.78000'), ('BRIDGE', None, '42.13000', '-113.33000'), ('BURLEY', 9316, '42.53890', '-113.78790'), ('CHURCHILL', None, '42.35000', '-113.92000'), ('CONANT', None, '42.27000', '-113.45000'), ('DECLO', 338, '42.51930', '-113.62810'), ('ELBA', None, '42.25000', '-113.55000'), ('HEGLAR', None, '42.47000', '-113.15000'), ('IDAHOME', None, '42.42000', '-113.38000'), ('KEOGH', None, '42.22000', '-113.33000'), ('LOCUST', None, '42.27000', '-113.87000'), ('MALTA', 177, '42.30760', '-113.36970'), ('MARION', None, '42.28000', '-113.90000'), ('OAKLEY', 668, '42.24240', '-113.88010'), ('SUBLETT', None, '42.32000', '-113.13000'), ('VIEW', None, '42.45000', '-113.68000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PIH'}, -'MOC055': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BOURBON', 1348, '38.15160', '-91.24720'), ('CHERRYVILLE', None, '37.85000', '-91.28300'), ('COOK STATION', None, '37.81280', '-91.43790'), ('CUBA', 3230, '38.06300', '-91.39990'), ('DAVISVILLE', None, '37.80790', '-91.18510'), ('DILLARD', None, '37.73680', '-91.20430'), ('LEASBURG', 323, '38.09420', '-91.29500'), ('OAK HILL', None, '38.20590', '-91.42070'), ('ROSATI', None, '38.02690', '-91.53090'), ('ST. CLOUD', 56, '38.17250', '-91.21260'), ('STEELVILLE', 1429, '37.96940', '-91.35540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'IDC033': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('DUBOIS', 647, '44.17350', '-112.22940'), ('HUMPHREY', None, '44.48000', '-112.23000'), ('IDMON', None, '44.37000', '-111.90000'), ('KILGORE', None, '44.40000', '-111.88000'), ('SMALL', None, '44.22000', '-112.38000'), ('SPENCER', 38, '44.38080', '-112.18640')], 'partOfState': '', 'wfo': 'PIH'}, -'MOC057': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARCOLA', 45, '37.54910', '-93.87490'), ('BONA', None, '37.54460', '-93.67130'), ('CEDARVILLE', None, '37.57430', '-93.98410'), ('DADEVILLE', 224, '37.48020', '-93.67350'), ('EVERTON', 322, '37.34240', '-93.70220'), ('GREENFIELD', 1358, '37.41520', '-93.84080'), ('LOCKWOOD', 989, '37.38550', '-93.95300'), ('MEINERT', None, '37.33520', '-93.99050'), ('NEOLA', None, '37.50550', '-93.86930'), ('PENNSBORO', None, '37.32710', '-93.83380'), ('SOUTH GREENFIELD', 136, '37.37600', '-93.84080'), ('SYLVANIA', None, '37.50770', '-94.02240')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'IDC035': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('AHSAHKA', None, '46.50222', '-116.32306'), ('CARDIFF', None, '46.57444', '-115.81139'), ('DENT', None, '46.62389', '-116.20222'), ('ELK RIVER', 156, '46.78361', '-116.17889'), ('GREER', None, '46.39000', '-116.17417'), ('HEADQUARTERS', None, '46.63000', '-115.80833'), ('JAYPE', None, '46.53028', '-115.82889'), ('MUSSELSHELL', None, '46.35722', '-115.74278'), ('OROFINO', 3247, '46.47944', '-116.25417'), ('PIERCE', 617, '46.49111', '-115.79806'), ('RIVERSIDE', None, '46.49556', '-116.29639'), ('TEAKEAN', None, '46.55111', '-116.37972'), ('WEIPPE', 416, '46.37611', '-115.93722')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'MSO'}, -'MOC051': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRAZITO', None, '38.45000', '-92.28300'), ('CENTERTOWN', 257, '38.61900', '-92.40930'), ('ELSTON', None, '38.61290', '-92.32370'), ('EUGENE', None, '38.35370', '-92.40340'), ('HICKORY HILL', None, '38.40060', '-92.35940'), ('JEFFERSON CITY', 39636, '38.57190', '-92.19050'), ('LOHMAN', 168, '38.54250', '-92.36350'), ('MARION', None, '38.69090', '-92.36620'), ('OSAGE BEND', None, '38.40610', '-92.14310'), ('OSAGE CITY', None, '38.55230', '-92.03230'), ('RUSSELLVILLE', 758, '38.51270', '-92.43790'), ('SCHUBERT', None, '38.51760', '-92.04940'), ('ST. MARTINS', 1023, '38.59570', '-92.33330'), ('ST. THOMAS', 287, '38.36880', '-92.21560'), ('TAOS', 870, '38.49780', '-92.08080'), ('WARDSVILLE', 976, '38.48800', '-92.17340')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'IDC037': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CHALLIS', 909, '44.50770', '-114.22390'), ('CHILLY', None, '44.08000', '-113.87000'), ('CLAYTON', 27, '44.25910', '-114.39850'), ('CUSTER', None, '44.38000', '-114.68000'), ('DARLINGTON', None, '43.82000', '-113.42000'), ('DICKEY', None, '44.13000', '-113.90000'), ('GOLDBURG', None, '44.38000', '-113.63000'), ('GROUSE', None, '43.68000', '-113.62000'), ('LOST RIVER', 26, '43.72190', '-113.54410'), ('MACKAY', 566, '43.91200', '-113.61090'), ('OBSIDIAN', None, '44.00000', '-114.83000'), ('STANLEY', 100, '44.21580', '-114.93700'), ('SUNBEAM', None, '44.27000', '-114.73000')], 'partOfState': 'CENTRAL', 'wfo': 'PIH'}, -'MOC053': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLACKWATER', 199, '38.97940', '-92.99070'), ('BOONVILLE', 8202, '38.96420', '-92.74780'), ('BUNCETON', 348, '38.78970', '-92.79850'), ('OTTERVILLE', 476, '38.70230', '-93.00280'), ('PILOT GROVE', 723, '38.87380', '-92.91200'), ('PRAIRIE HOME', 220, '38.81490', '-92.58960'), ('WOOLDRIDGE', 47, '38.90650', '-92.52180')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'IDC039': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ANDERSON DAM', None, '43.35000', '-115.45000'), ('ATLANTA', None, '43.79470', '-115.11780'), ('FEATHERVILLE', None, '43.61500', '-115.26690'), ('GLENNS FERRY', 1611, '42.95400', '-115.29990'), ('HAMMETT', None, '42.94000', '-115.47000'), ('MOUNTAIN HOME', 11143, '43.13830', '-115.68870'), ('MOUNTAIN HOME AFB', 8894, '43.04960', '-115.86550'), ('PINE', None, '43.48080', '-115.31500'), ('PRAIRIE', None, '43.50000', '-115.58330')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'MOC059': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BUFFALO', 2781, '37.64380', '-93.09210'), ('CHARITY', None, '37.51520', '-93.01610'), ('FOOSE', None, '37.56130', '-93.14630'), ('LEADMINE', None, '37.83660', '-92.96190'), ('LONG LANE', None, '37.61130', '-92.90910'), ('LOUISBURG', 147, '37.75770', '-93.13910'), ('MARCH', None, '37.52240', '-93.08910'), ('OLIVE', None, '37.45910', '-93.10860'), ('PLAD', None, '37.74850', '-92.97520'), ('PUMPKIN CENTER', None, '37.74490', '-93.07040'), ('TUNAS', None, '37.84960', '-93.02740'), ('URBANA', 407, '37.84210', '-93.16660'), ('WINDYVILLE', None, '37.70660', '-92.92680')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'IAC101': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ABINGDON', None, '41.08330', '-92.13330'), ('BATAVIA', 500, '40.99480', '-92.16760'), ('BECKWITH', None, '41.01670', '-91.86670'), ('BROOKVILLE', None, '41.05000', '-92.08330'), ('COLLETT', None, '40.90800', '-91.98330'), ('EAST PLEASANT PLAIN', None, '41.13330', '-91.85000'), ('FAIRFIELD', 9509, '41.00710', '-91.96710'), ('FAIRFIELD MUNICIPAL AIRPO', None, '41.05000', '-91.98330'), ('FOUR CORNERS', None, '41.01670', '-91.76660'), ('GERMANVILLE', None, '41.10000', '-91.76660'), ('GLASGOW', None, '40.93330', '-91.78330'), ('LIBERTYVILLE', 325, '40.95860', '-92.04890'), ('LINBY', None, '41.15000', '-92.13330'), ('LOCKRIDGE', 275, '40.99360', '-91.74760'), ('MERRIMAC', None, '41.08330', '-91.71660'), ('PACKWOOD', 223, '41.13250', '-92.08180'), ('PERLEE', None, '41.08330', '-91.90000'), ('PLEASANT PLAIN', 131, '41.14740', '-91.85970'), ('SALINA', None, '41.05000', '-91.83330')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'IAC103': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMISH', None, '41.53330', '-91.78330'), ('CORALVILLE', 15123, '41.69100', '-91.60070'), ('COSGROVE', None, '41.65000', '-91.73330'), ('COU FALLS', None, '41.81660', '-91.66670'), ('ELMIRA', None, '41.71660', '-91.41670'), ('HILLS', 679, '41.57470', '-91.53710'), ('IOWA CITY', 62220, '41.65830', '-91.53510'), ('IOWA CITY MUNICIPAL AIRPO', None, '41.63330', '-91.55000'), ('KENT COUNTY PARK', None, '41.73330', '-91.73330'), ('LAKE MACBRIDE STATE PARK', None, '41.80000', '-91.55000'), ('LONE TREE', 1151, '41.48580', '-91.42480'), ('MORSE', None, '41.75000', '-91.43330'), ('NEWPORT', None, '41.73330', '-91.46670'), ('NORTH LIBERTY', 5367, '41.74150', '-91.60930'), ('OAKDALE', None, '41.70000', '-91.60000'), ('OASIS', None, '41.70000', '-91.38330'), ('OXFORD', 705, '41.72470', '-91.78970'), ('RIVER JCT.', None, '41.48330', '-91.50000'), ('SHARON CENTER', None, '41.56670', '-91.66660'), ('SHUEYVILLE', 250, '41.84810', '-91.64850'), ('SOLON', 1177, '41.80500', '-91.49460'), ('SUTIFF', None, '41.83330', '-91.38330'), ('SWISHER', 813, '41.84340', '-91.69580'), ('TIFFIN', 975, '41.70640', '-91.67730'), ('TWIN VIEW HEIGHTS', None, '41.81660', '-91.56660'), ('UNIVERSITY HEIGHTS', 987, '41.65450', '-91.55800'), ('WILLIAMSTOWN', None, '41.56670', '-91.73330'), ('WINDHAM', None, '41.61670', '-91.76660')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAC105': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANAMOSA', 5494, '42.10900', '-91.28130'), ('CANTON', None, '42.16670', '-90.90000'), ('CENTER JUNCTION', 131, '42.11440', '-91.08930'), ('FAIRVIEW', None, '42.08330', '-91.33330'), ('HALE', None, '42.01670', '-91.06670'), ('JONES COUNTY PARK', None, '42.11670', '-91.13330'), ('LANGWORTHY', None, '42.18330', '-91.21670'), ('MARTELLE', 280, '42.02040', '-91.35760'), ('MONTICELLO', 3607, '42.23770', '-91.19100'), ('MONTICELLO MUNICIPAL AIRP', None, '42.23330', '-91.16660'), ('MORLEY', 88, '42.00650', '-91.24660'), ('OLIN', 716, '41.99760', '-91.14110'), ('ONSLOW', 223, '42.10800', '-91.01370'), ('OXFORD JUNCTION', 573, '41.98460', '-90.95430'), ('OXFORD MILLS', None, '41.96660', '-90.96660'), ('PICTURED ROCKS WMA', None, '42.21660', '-91.11660'), ('SCOTCH GROVE', None, '42.16670', '-91.10000'), ('STONE CITY', None, '42.11670', '-91.35000'), ('TEMPLE HILL', None, '42.23330', '-90.98330'), ('WAPSIPINICON STATE PARK', None, '42.10000', '-91.28330'), ('WYOMING', 626, '42.06010', '-91.00480')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAC107': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('COAL CREEK', None, '41.43330', '-92.40000'), ('DELTA', 410, '41.32310', '-92.32940'), ('GIBSON', 92, '41.48060', '-92.39150'), ('HARPER', 134, '41.36330', '-92.05120'), ('HAYESVILLE', 64, '41.26450', '-92.24700'), ('HEDRICK', 837, '41.17060', '-92.30770'), ('KEOTA', 1025, '41.36600', '-91.95550'), ('KESWICK', 295, '41.45500', '-92.23730'), ('KINROSS', 80, '41.45940', '-91.98720'), ('LANCASTER', None, '41.28330', '-92.16660'), ('MARTINSBURG', 126, '41.17840', '-92.25230'), ('OLLIE', 224, '41.19880', '-92.09280'), ('PEKIN', None, '41.16670', '-92.16670'), ('RICHLAND', 587, '41.18590', '-91.99500'), ('SIG-NOR FIELD AIRPORT', None, '41.31220', '-92.18530'), ('SIGOURNEY', 2209, '41.33400', '-92.20650'), ('SIGOURNEY IOWA AIRPORT', None, '41.38330', '-92.18830'), ('SOUTH ENGLISH', 213, '41.45230', '-92.09080'), ('TALLEYRAND', None, '41.30000', '-91.96670'), ('THORNBURG', 84, '41.45630', '-92.33260'), ('WEBSTER', 110, '41.43790', '-92.17080'), ('WHAT CHEER', 678, '41.40010', '-92.35390')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'IAC109': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALGONA', 5741, '43.07390', '-94.23070'), ('BANCROFT', 808, '43.29250', '-94.21680'), ('BURT', 556, '43.19920', '-94.22140'), ('FENTON', 317, '43.21830', '-94.42770'), ('LAKOTA', 255, '43.37800', '-94.09400'), ('LEDYARD', 147, '43.42030', '-94.15870'), ('LONE ROCK', 157, '43.22040', '-94.32490'), ('LU VERNE', 299, '42.91660', '-94.08340'), ('SWEA CITY', 642, '43.38280', '-94.31020'), ('TITONKA', 584, '43.23660', '-94.04160'), ('WESLEY', 467, '43.08890', '-93.99300'), ('WHITTEMORE', 530, '43.06340', '-94.42400')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'INC081': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BARGERSVILLE', 2120, '39.51990', '-86.16560'), ('EDINBURGH', 4505, '39.35270', '-85.96750'), ('FRANKLIN', 19463, '39.49220', '-86.05650'), ('GREENWOOD', 36037, '39.61550', '-86.11380'), ('MORGANTOWN', 964, '39.37390', '-86.25930'), ('NEW WHITELAND', 4579, '39.56210', '-86.09690'), ('PRINCES LAKES', 1506, '39.35070', '-86.10910'), ('TRAFALGAR', 798, '39.41500', '-86.14970'), ('WHITELAND', 3958, '39.55030', '-86.08860')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'INC087': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LAGRANGE', 2919, '41.64340', '-85.41720'), ('SHIPSHEWANA', 536, '41.67490', '-85.57930'), ('TOPEKA', 1159, '41.53860', '-85.54220')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'INC085': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BURKET', 195, '41.15440', '-85.96920'), ('CLAYPOOL', 311, '41.12780', '-85.87970'), ('ETNA GREEN', 663, '41.27810', '-86.04630'), ('LEESBURG', 625, '41.32950', '-85.84860'), ('MENTONE', 898, '41.17380', '-86.03690'), ('MILFORD', 1550, '41.41040', '-85.84830'), ('NORTH WEBSTER', 1067, '41.32530', '-85.69720'), ('PIERCETON', 695, '41.19960', '-85.70760'), ('SIDNEY', 168, '41.10500', '-85.74290'), ('SILVER LAKE', 546, '41.07240', '-85.89170'), ('SYRACUSE', 3038, '41.42320', '-85.74900'), ('WARSAW', 12415, '41.23960', '-85.84760'), ('WINONA LAKE', 3987, '41.21860', '-85.81530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'KSC141': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALTON', 117, '39.46820', '-98.94820'), ('DOWNS', 1038, '39.50330', '-98.54680'), ('NATOMA', 367, '39.18900', '-99.02450'), ('OSBORNE', 1607, '39.43940', '-98.69830'), ('PORTIS', 123, '39.55800', '-98.69100')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'SCC071': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CHAPPELLS', None, '34.18250', '-81.87000'), ('LITTLE MOUNTAIN', 255, '34.19500', '-81.41410'), ('NEWBERRY', 10580, '34.27890', '-81.61190'), ('PEAK', 61, '34.23810', '-81.32910'), ('POMARIA', 177, '34.26640', '-81.41980'), ('PROSPERITY', 1047, '34.21030', '-81.53430'), ('SILVERSTREET', 216, '34.21810', '-81.71480'), ('WHITMIRE', 1512, '34.50340', '-81.61560')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'ARC005': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BIG FLAT', 104, '36.00580', '-92.40500'), ('COTTER', 921, '36.28250', '-92.52020'), ('GASSVILLE', 1706, '36.28260', '-92.49470'), ('LAKEVIEW', 763, '36.37520', '-92.53920'), ('MOUNTAIN HOME', 11012, '36.33590', '-92.37920'), ('NORFORK', 484, '36.20830', '-92.28200'), ('SALESVILLE', 437, '36.24490', '-92.27000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARC003': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CROSSETT', 6097, '33.12740', '-91.96600'), ('FOUNTAIN HILL', 159, '33.35690', '-91.85090'), ('HAMBURG', 3039, '33.22580', '-91.79700'), ('MONTROSE', 526, '33.29860', '-91.49700'), ('NORTH CROSSETT', 3581, '33.16980', '-91.93620'), ('PARKDALE', 377, '33.12080', '-91.54580'), ('PORTLAND', 552, '33.23830', '-91.51120'), ('WEST CROSSETT', 1664, '33.14440', '-92.01990'), ('WILMOT', 786, '33.05830', '-91.57500')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'ARC001': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALMYRA', 319, '34.40570', '-91.41060'), ('DE WITT', 3552, '34.28950', '-91.33810'), ('GILLETT', 819, '34.11910', '-91.37900'), ('ST. CHARLES', 261, '34.37580', '-91.13290'), ('STUTTGART', 9745, '34.49350', '-91.55090')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'SCC079': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ARCADIA LAKES', 882, '34.05350', '-80.96210'), ('BLYTHEWOOD', 170, '34.21700', '-80.97580'), ('COLUMBIA', 116278, '34.03920', '-80.88630'), ('DENTSVILLE', 13009, '34.07650', '-80.95610'), ('EASTOVER', 830, '33.87840', '-80.69570'), ('FOREST ACRES', 10558, '34.02630', '-80.97680'), ('IRMO', 11039, '34.09360', '-81.18800'), ('ST. ANDREWS', 21814, '34.04850', '-81.10340'), ('VALENCIA HEIGHTS', None, '33.97640', '-80.98530'), ('WOODFIELD', 9238, '34.05910', '-80.93100')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'ARC009': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALPENA', 371, '36.29300', '-93.29330'), ('BELLEFONTE', 400, '36.20040', '-93.04640'), ('BERGMAN', 407, '36.31290', '-93.01110'), ('DIAMOND CITY', 730, '36.45580', '-92.91510'), ('EVERTON', 170, '36.15540', '-92.90840'), ('HARRISON', 12152, '36.24190', '-93.11950'), ('LEAD HILL', 287, '36.41470', '-92.90670'), ('OMAHA', 165, '36.46320', '-93.19190'), ('SOUTH LEAD HILL', 88, '36.39500', '-92.90540'), ('VALLEY SPRINGS', 167, '36.15290', '-92.99100'), ('ZINC', 76, '36.28530', '-92.91530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'WIC041': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALVIN', None, '46.01000', '-88.81000'), ('ARGONNE', None, '45.66000', '-88.88000'), ('ARMSTRONG CREEK', None, '45.65000', '-88.44000'), ('BLACKWELL', None, '45.51000', '-88.61000'), ('CARTER', None, '45.39000', '-88.63000'), ('CAVOUR', None, '45.65000', '-88.63000'), ('CRANDON', 1961, '45.56000', '-88.90000'), ('HILES', None, '45.71000', '-88.98000'), ('LAONA', None, '45.56000', '-88.68000'), ('MOLE LAKE', None, '45.48000', '-89.00000'), ('NASHVILLE', None, '45.51000', '-89.03000'), ('NEWALD', None, '45.73000', '-88.69000'), ('WABENO', None, '45.43000', '-88.66000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'VAC740': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHURCHLAND', None, '36.86170', '-76.39600'), ('CRADOCK', None, '36.79560', '-76.32140'), ('DOWNTOWN PORTSMOUTH', None, '36.83820', '-76.30260')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'MOC121': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ATLANTA', 450, '39.89800', '-92.47980'), ('BEVIER', 723, '39.74910', '-92.56370'), ('CALLAO', 291, '39.76220', '-92.62320'), ('ELMER', 98, '39.95760', '-92.64980'), ('ETHEL', 100, '39.89350', '-92.74040'), ('LA PLATA', 1486, '40.02500', '-92.49090'), ('MACON', 5538, '39.73870', '-92.47050'), ('NEW CAMBRIA', 222, '39.77530', '-92.75130'), ('SOUTH GIFFORD', 72, '40.02590', '-92.68230')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOC123': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BUCKHORN', None, '37.33300', '-90.30000'), ('CATHERINE PLACE', None, '37.57510', '-90.32440'), ('FREDERICKTOWN', 3928, '37.56460', '-90.29650'), ('JUNCTION CITY', 319, '37.57390', '-90.29390'), ('MARQUAND', 251, '37.42870', '-90.16710'), ('MINE LA MOTTE', None, '37.61570', '-90.28980'), ('ROSELLE', None, '37.60000', '-90.53300'), ('SACO', None, '37.36700', '-90.45000')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'ARC013': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('HAMPTON', 1579, '33.53670', '-92.46540'), ('HARRELL', 293, '33.51000', '-92.40170'), ('THORNTON', 517, '33.77620', '-92.48920'), ('TINSMAN', 75, '33.62900', '-92.35350')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'MOC127': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('HANNIBAL', 17757, '39.70750', '-91.38360'), ('PALMYRA', 3467, '39.79640', '-91.52470'), ('PHILADELPHIA', None, '39.83880', '-91.73900'), ('TAYLOR', None, '39.93820', '-91.52370'), ('WARREN', None, '39.76700', '-91.76700')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'MOC129': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('MERCER', 342, '40.51100', '-93.52930'), ('MODENA', None, '40.30000', '-93.68330'), ('PRINCETON', 1047, '40.39710', '-93.58810'), ('SOUTH LINEVILLE', 37, '40.57790', '-93.52360')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'GAC221': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARNOLDSVILLE', 312, '33.91070', '-83.21810'), ('CRAWFORD', 807, '33.88290', '-83.15630'), ('LEXINGTON', 239, '33.87020', '-83.11100'), ('MAXEYS', 210, '33.75480', '-83.17390')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'MNC107': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADA', 1657, '47.29950', '-96.51390'), ('BORUP', 91, '47.18080', '-96.50580'), ('FAITH', None, '47.28690', '-96.09860'), ('FLAMING', None, '47.45670', '-96.27030'), ('FLOM', None, '47.16610', '-96.13060'), ('GARY', 215, '47.37280', '-96.26510'), ('HADLER', None, '47.36860', '-96.53500'), ('HALSTAD', 622, '47.35120', '-96.82400'), ('HENDRUM', 315, '47.26380', '-96.81020'), ('LOCKHART', None, '47.44000', '-96.55080'), ('PERLEY', 121, '47.17660', '-96.80050'), ('RANUM', None, '47.45560', '-96.13140'), ('RINDAL', None, '47.49940', '-96.13110'), ('SHELLY', 266, '47.45750', '-96.82000'), ('SYRE', None, '47.18030', '-96.25830'), ('TWIN VALLEY', 865, '47.25780', '-96.25840'), ('WAUKON', None, '47.36890', '-96.13080')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNC105': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADRIAN', 1234, '43.63460', '-95.93240'), ('BIGELOW', 231, '43.50540', '-95.68910'), ('BREWSTER', 502, '43.69620', '-95.46480'), ('DUNDEE', 102, '43.84430', '-95.46610'), ('ELLSWORTH', 540, '43.52110', '-96.01850'), ('KINBRAE', 21, '43.82630', '-95.48020'), ('LISMORE', 238, '43.74940', '-95.94820'), ('ROUND LAKE', 424, '43.53880', '-95.46930'), ('RUSHMORE', 376, '43.62010', '-95.79880'), ('WILMONT', 332, '43.76400', '-95.82830'), ('WORTHINGTON', 11283, '43.62720', '-95.59840')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNC103': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('COURTLAND', 538, '44.26650', '-94.34400'), ('LAFAYETTE', 529, '44.44830', '-94.39330'), ('NICOLLET', 889, '44.27560', '-94.18810'), ('NORTH MANKATO', 11798, '44.17620', '-94.03090'), ('ST PETER', None, '44.32900', '-93.96390')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNC101': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AVOCA', 146, '43.94950', '-95.64530'), ('CHANDLER', 276, '43.92940', '-95.94910'), ('CURRENT LAKE', None, '44.13800', '-95.94140'), ('CURRIE', 225, '44.07100', '-95.66660'), ('DOVRAY', 67, '44.05480', '-95.54610'), ('FULDA', 1283, '43.87000', '-95.60230'), ('HADLEY', 81, '43.99740', '-95.85810'), ('IONA', 173, '43.91490', '-95.78500'), ('LAKE WILSON', 270, '43.99480', '-95.95300'), ('SLAYTON', 2072, '43.99050', '-95.75490')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'COC097': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ASPEN', 5914, '39.19460', '-106.82690'), ('MERIDITH', None, '39.35000', '-106.72000'), ('REDSTONE', None, '39.18000', '-107.23000'), ('SNOWMASS', None, '39.33000', '-106.98000'), ('SNOWMASS VILLAGE', 1822, '39.19550', '-106.93870'), ('WOODY CREEK', None, '39.28000', '-106.88000')], 'partOfState': 'CENTRAL', 'wfo': 'GJT'}, -'SCC063': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BATESBURG', None, '33.90740', '-81.54690'), ('CAYCE', 12150, '33.95580', '-81.06090'), ('CHAPIN', 628, '34.16520', '-81.34800'), ('GASTON', 1304, '33.81580', '-81.10110'), ('GILBERT', 500, '33.92360', '-81.39420'), ('LEESVILLE', None, '33.91810', '-81.51230'), ('LEXINGTON', 9793, '33.98630', '-81.22900'), ('OAK GROVE', 8183, '33.98060', '-81.14340'), ('PELION', 553, '33.78020', '-81.24790'), ('PINERIDGE', None, '33.91090', '-81.09500'), ('RED BANK', 8811, '33.92890', '-81.23330'), ('SEVEN OAKS', 15755, '34.04870', '-81.14650'), ('SOUTH CONGAREE', 2266, '33.90950', '-81.13710'), ('SPRINGDALE', 2877, '33.95980', '-81.11240'), ('SUMMIT', 219, '33.92430', '-81.42330'), ('SWANSEA', 533, '33.73610', '-81.10640'), ('WEST COLUMBIA', 13064, '33.99150', '-81.08140')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'GAC229': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLACKSHEAR', 3283, '31.29890', '-82.24170'), ('BRISTOL', None, '31.44850', '-82.21490'), ('PATTERSON', 627, '31.38420', '-82.13800')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'MNC109': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BYRON', 3500, '44.03340', '-92.64610'), ('CHESTER', None, '43.99816', '-92.35174'), ('CUMMINGSVILLE', None, '43.88302', '-92.26584'), ('DOUGLAS', None, '44.11695', '-92.56739'), ('DOVER', 438, '43.96990', '-92.13370'), ('EYOTA', 1644, '43.98760', '-92.22820'), ('GENOA', None, '44.11512', '-92.61673'), ('HIGH FOREST', None, '43.84647', '-92.55094'), ('LITTLE VALLEY', None, '44.08223', '-92.13426'), ('MARION', None, '43.94881', '-92.35174'), ('ORONOCO', 883, '44.16350', '-92.54090'), ('PLEASANT GROVE', None, '43.86292', '-92.38463'), ('POTSDAM', None, '44.16447', '-92.34991'), ('PREDMORE', None, '43.93419', '-92.33529'), ('RINGE', None, '44.11512', '-92.39925'), ('ROCHESTER', 85806, '44.01360', '-92.47570'), ('ROCK DELL', None, '43.91226', '-92.65146'), ('SALEM CORNERS', None, '43.98354', '-92.60028'), ('SIMPSON', None, '43.93237', '-92.40108'), ('STEWARTVILLE', 5411, '43.85730', '-92.48700'), ('VIOLA', None, '44.06578', '-92.26584')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'NEC159': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BEAVER CROSSING', 457, '40.77780', '-97.28190'), ('BEE', 223, '41.00690', '-97.05770'), ('CORDOVA', 127, '40.71640', '-97.35090'), ('GARLAND', 247, '40.94420', '-96.98510'), ('GOEHNER', 186, '40.83270', '-97.21990'), ('MILFORD', 2070, '40.77280', '-97.05200'), ('PLEASANT DALE', 245, '40.79180', '-96.93270'), ('SEWARD', 6319, '40.91210', '-97.09670'), ('STAPLEHURST', 270, '40.97480', '-97.17200'), ('TAMORA', None, '40.89580', '-97.22410'), ('UTICA', 844, '40.89560', '-97.34500')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'PAC099': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMITY HALL', None, '40.45000', '-77.00000'), ('BIG SPRING SP', None, '40.27000', '-77.65000'), ('BLAIN', 252, '40.33720', '-77.51220'), ('DUNCANNON', 1508, '40.40000', '-77.03000'), ('ICKESBURG', None, '40.49000', '-77.29000'), ('KISTLER', 344, '40.42000', '-77.39000'), ('LANDISBURG', 195, '40.34320', '-77.30590'), ('LIVERPOOL', 876, '40.57240', '-76.99280'), ('LOYSVILLE', None, '40.38000', '-77.33000'), ('MARYSVILLE', 2306, '40.33760', '-76.93260'), ('MILLERSTOWN', 679, '40.55280', '-77.15280'), ('MONTGOMERY FERRY', None, '40.50000', '-76.98000'), ('NEW BLOOMFIELD', None, '40.41970', '-77.18880'), ('NEWPORT', 1506, '40.47830', '-77.13410'), ('SHERMANSDALE', None, '40.35000', '-77.18000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'VAC630': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('FREDERICKSBURG', 19279, '38.29930', '-77.48710')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'MIC085': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BALDWIN', 1107, '43.89760', '-85.85240'), ('BRISTOL', None, '44.10380', '-85.58370'), ('CHASE', None, '43.88920', '-85.63550'), ('IDLEWILD', None, '43.88700', '-85.80250'), ('IRONS', None, '44.14000', '-85.91580'), ('LUTHER', 339, '44.03870', '-85.68290'), ('NIRVANA', None, '43.90250', '-85.71200')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'NEC153': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BELLEVUE', 44382, '41.15640', '-95.92260'), ('CHALCO', 10736, '41.18340', '-96.13390'), ('GRETNA', 2355, '41.14070', '-96.24360'), ('LA VISTA', 11699, '41.18430', '-96.03910'), ('OFFUTT AFB', 8901, '41.11160', '-95.91880'), ('PAPILLION', 16363, '41.15720', '-96.04050'), ('SPRINGFIELD', 1450, '41.08310', '-96.13220')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'PAC097': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('DELAWARE RUN', None, '41.14000', '-76.85000'), ('ELYSBURG', 2067, '40.86820', '-76.54930'), ('FARNSWORTH', None, '40.83000', '-76.66000'), ('FERNDALE', 1834, '40.78000', '-76.57560'), ('HERNDON', 383, '40.71060', '-76.85460'), ('KULPMONT', 2985, '40.79540', '-76.47220'), ('LECK KILL', None, '40.72000', '-76.60000'), ('MCEWENSVILLE', 314, '41.07210', '-76.81900'), ('MILTON', 6650, '41.00800', '-76.85060'), ('MONTANDON', None, '40.96000', '-76.86000'), ('MOUNT CARMEL', 6390, '40.79530', '-76.41230'), ('NORTHUMBERLAND', 3714, '40.89710', '-76.79370'), ('REBUCK', None, '40.72000', '-76.75000'), ('RESLER', None, '40.78000', '-76.80000'), ('RIVERSIDE', 1861, '40.94260', '-76.64570'), ('SHAMOKIN', 8009, '40.78810', '-76.55490'), ('SNYDERTOWN', 357, '40.87240', '-76.67450'), ('STONINGTON', None, '40.84000', '-76.66000'), ('SUNBURY', 10610, '40.86210', '-76.78810'), ('TREVORTON', 2010, '40.78290', '-76.67350'), ('TURBOTVILLE', 691, '41.10100', '-76.76940'), ('URBAN', None, '40.67000', '-76.74000'), ('WATSONTOWN', 2255, '41.08470', '-76.86460'), ('WEST MILTON', None, '41.01000', '-76.80000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'NEC151': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CRETE', 6028, '40.62560', '-96.95830'), ('DE WITT', 572, '40.39500', '-96.92180'), ('DORCHESTER', 615, '40.64760', '-97.11480'), ('FRIEND', 1174, '40.65110', '-97.28400'), ('SWANTON', 106, '40.37930', '-97.07970'), ('TOBIAS', 158, '40.41840', '-97.33630'), ('WESTERN', 287, '40.39310', '-97.19930'), ('WILBER', 1761, '40.48090', '-96.96330')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'MIC081': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ADA', None, '42.95420', '-85.48880'), ('ALASKA', None, '42.84000', '-85.47800'), ('ALTO', None, '42.85670', '-85.38020'), ('BELMONT', None, '43.07550', '-85.60920'), ('BYRON CENTER', 3777, '42.81220', '-85.72280'), ('CALEDONIA', 1102, '42.79390', '-85.51320'), ('CANNONSBURG', None, '43.05380', '-85.46970'), ('CASCADE', None, '42.91220', '-85.49800'), ('CASNOVIA', 315, '43.23480', '-85.79130'), ('CEDAR SPRINGS', 3112, '43.22140', '-85.55320'), ('COMSTOCK PARK', 10674, '43.04500', '-85.67230'), ('CUTLERVILLE', 15114, '42.84150', '-85.66160'), ('DUTTON', None, '42.84120', '-85.58500'), ('EAST GRAND RAPIDS', 10764, '42.94640', '-85.60740'), ('GRAND RAPIDS', 197800, '42.96120', '-85.65570'), ('GRANDVILLE', 16263, '42.90380', '-85.75610'), ('GRATTAN', None, '43.08420', '-85.38120'), ('KENT CITY', 1061, '43.21910', '-85.75210'), ('KENTWOOD', 45255, '42.88240', '-85.59220'), ('LOWELL', 4013, '42.93320', '-85.34570'), ('ROCKFORD', 4626, '43.12620', '-85.55660'), ('SAND LAKE', 492, '43.29090', '-85.51820'), ('SPARTA', 4159, '43.15790', '-85.70940'), ('WALKER', 21842, '42.98470', '-85.74770'), ('WYOMING', 69368, '42.89240', '-85.70250')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'NEC157': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('GERING', 7751, '41.82850', '-103.66520'), ('LYMAN', 421, '41.91810', '-104.03650'), ('MCGREW', 103, '41.74720', '-103.41720'), ('MELBETA', 138, '41.78200', '-103.51680'), ('MINATARE', 810, '41.81100', '-103.50220'), ('MITCHELL', 1831, '41.94210', '-103.80900'), ('MORRILL', 957, '41.96410', '-103.92380'), ('SCOTTSBLUFF', 14732, '41.86720', '-103.66160'), ('TERRYTOWN', 646, '41.85000', '-103.66850')], 'partOfState': '', 'wfo': 'CYS'}, -'PAC093': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('DANVILLE', 4897, '40.96150', '-76.61230'), ('EXCHANGE', None, '41.11000', '-76.69000'), ('MECHANICSVILLE', 515, '40.96640', '-76.58550'), ('MOORESBURG', None, '40.98000', '-76.72000'), ('WASHINGTONVILLE', 201, '41.05190', '-76.67510')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'NEC155': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ASHLAND', 2262, '41.04050', '-96.37090'), ('CEDAR BLUFFS', 615, '41.39780', '-96.60920'), ('CERESCO', 920, '41.05770', '-96.64530'), ('COLON', 138, '41.29780', '-96.60650'), ('ITHACA', 168, '41.16040', '-96.53960'), ('LESHARA', 111, '41.33010', '-96.42870'), ('MALMO', 109, '41.26630', '-96.72100'), ('MEAD', 564, '41.22910', '-96.48940'), ('MEMPHIS', 106, '41.09460', '-96.43280'), ('MORSE BLUFF', 134, '41.43110', '-96.76570'), ('PRAGUE', 346, '41.30970', '-96.80860'), ('VALPARAISO', 563, '41.07940', '-96.83200'), ('WAHOO', 3942, '41.21520', '-96.62000'), ('WESTON', 310, '41.19200', '-96.74120'), ('YUTAN', 1216, '41.24320', '-96.39730')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'ALC019': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CEDAR BLUFF', 1467, '34.22050', '-85.59600'), ('CENTRE', 3216, '34.15300', '-85.67170'), ('GAYLESVILLE', 140, '34.26790', '-85.55830'), ('LEESBURG', 799, '34.17900', '-85.76910'), ('SAND ROCK', 509, '34.23210', '-85.77060')], 'partOfState': 'NORTHEAST', 'wfo': 'BMX'}, -'FLC109': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANASTASIA', None, '29.88760', '-81.28980'), ('BAKERSVILLE', None, '29.90590', '-81.49150'), ('BUTLER BEACH', 4436, '29.79820', '-81.26710'), ('CRESCENT BEACH', 985, '29.73110', '-81.23880'), ('DUPONT CENTER', None, '29.75620', '-81.31340'), ('DURBIN', None, '30.08730', '-81.46150'), ('ELKTON', None, '29.78290', '-81.42620'), ('FRUIT COVE', 16077, '30.10090', '-81.61850'), ('GUANA RIVER STATE PARK', None, '30.09000', '-81.34000'), ('HASTINGS', 521, '29.71490', '-81.50790'), ('PALM VALLEY', 19860, '30.19970', '-81.39110'), ('PICOLATA', None, '29.91480', '-81.59320'), ('PONTE VEDRA BEACH', None, '30.23960', '-81.38590'), ('SAWGRASS', 4942, '30.19240', '-81.37080'), ('SOUTH PONTE VEDRA BEACH', None, '30.02220', '-81.32390'), ('SPUDS', None, '29.73950', '-81.47180'), ('ST. AUGUSTINE', 11592, '29.89190', '-81.31080'), ('ST. AUGUSTINE BEACH', 4683, '29.84210', '-81.27110'), ('ST. AUGUSTINE SHORES', 4922, '29.81050', '-81.31070'), ('ST. AUGUSTINE SOUTH', 5035, '29.84250', '-81.31570'), ('SWITZERLAND', None, '30.07590', '-81.64760'), ('VILANO BEACH', None, '29.93830', '-81.30210')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'ALC013': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AVANT', None, '31.62110', '-86.70440'), ('BOLLING', None, '31.72420', '-86.70410'), ('BUTLER SPRINGS', None, '31.80660', '-86.86760'), ('CHAPMAN', None, '31.66750', '-86.72070'), ('FOREST HOME', None, '31.86300', '-86.84100'), ('GARLAND', None, '31.55640', '-86.82670'), ('GEORGIANA', 1737, '31.63640', '-86.74240'), ('GREENVILLE', 7228, '31.82970', '-86.61750'), ('HERBERT', None, '31.83560', '-86.80470'), ('I65 AND AL 10', None, '31.82290', '-86.66520'), ('I65 AND AL 106', None, '31.65070', '-86.77570'), ('I65 AND AL 185', None, '31.85090', '-86.64090'), ('I65 AND CR 7', None, '31.57670', '-86.84660'), ('INDUSTRY', None, '31.60420', '-86.61340'), ('MCKENZIE', 644, '31.54170', '-86.71530'), ('MONTERY', None, '31.90360', '-86.88260'), ('OAKY STREAK', None, '31.57960', '-86.55330'), ('PIGEON CREEK', None, '31.65960', '-86.50630'), ('SAUCER', None, '31.82190', '-86.83610'), ('STARLINGTON', None, '31.67430', '-86.82470'), ('WALD', None, '31.76190', '-86.67430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'FLC105': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AUBURNDALE', 11032, '28.07020', '-81.79780'), ('BABSON PARK', 1182, '27.83360', '-81.52810'), ('BARTOW', 15340, '27.89520', '-81.84720'), ('BRADLEY JUNCTION', None, '27.79500', '-81.98060'), ('CROOKED LAKE PARK', 1682, '27.82990', '-81.58970'), ('CRYSTAL LAKE', 5341, '28.03530', '-81.90850'), ('CYPRESS GARDENS', 8844, '28.00120', '-81.68700'), ('DAVENPORT', 1924, '28.16050', '-81.60490'), ('DUNDEE', 2912, '28.02050', '-81.62100'), ('EAGLE LAKE', 2496, '27.97820', '-81.75770'), ('FORT MEADE', 5691, '27.75230', '-81.79560'), ('FROSTPROOF', 2975, '27.74610', '-81.53130'), ('GIBSONIA', 4507, '28.11790', '-81.96840'), ('HAINES CITY', 13174, '28.10900', '-81.62890'), ('HIGHLAND CITY', 2051, '27.96060', '-81.87930'), ('HIGHLAND PARK', 244, '27.86510', '-81.56310'), ('HILLCREST HEIGHTS', 266, '27.82380', '-81.53330'), ('INWOOD', 6925, '28.03820', '-81.76750'), ('KATHLEEN', 3280, '28.11790', '-82.02810'), ('LAKE ALFRED', 3890, '28.09070', '-81.72580'), ('LAKE HAMILTON', 1304, '28.04780', '-81.62590'), ('LAKE WALES', 10194, '27.90110', '-81.58780'), ('LAKELAND', 78452, '28.04120', '-81.96000'), ('LAKELAND HIGHLANDS', 12557, '27.95950', '-81.95020'), ('LOUGHMAN', 1385, '28.23670', '-81.57170'), ('MULBERRY', 3230, '27.90160', '-81.97310'), ('POLK CITY', 1516, '28.18210', '-81.82470'), ('WAHNETA', 4731, '27.95590', '-81.72930'), ('WAVERLY', 1927, '27.96760', '-81.61890'), ('WILLOW OAK', 4917, '27.91810', '-82.02150'), ('WINSTON', 9024, '28.04250', '-82.01130'), ('WINTER HAVEN', 26487, '28.02000', '-81.72180'), ('WITHLA', None, '28.33970', '-81.87400')], 'partOfState': 'CENTRAL', 'wfo': 'TBW'}, -'ALC011': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('MIDWAY', 457, '32.07430', '-85.52030'), ('UNION SPRINGS', 3670, '32.13880', '-85.71370')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'FLC107': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BOSTWICK', None, '29.77380', '-81.63750'), ('CARRAWAY', None, '29.70900', '-81.78680'), ('CRESCENT CITY', 1776, '29.43830', '-81.51660'), ('EAST PALATKA', 1707, '29.65110', '-81.59940'), ('FLORAHOME', None, '29.73190', '-81.88400'), ('GEORGETOWN', None, '29.39120', '-81.63900'), ('HOLLISTER', None, '29.62260', '-81.81400'), ('INTERLACHEN', 1475, '29.61690', '-81.89790'), ('JOHNSON', None, '29.58450', '-81.97350'), ('LAKE COMO', None, '29.48370', '-81.57320'), ('MANNVILLE', None, '29.62870', '-81.86840'), ('ORANGE MILLS', None, '29.68480', '-81.57350'), ('PALATKA', 10033, '29.64920', '-81.65660'), ('POMONA PARK', 789, '29.49920', '-81.59430'), ('PUTNAM HALL', None, '29.73650', '-81.95960'), ('SAN MATEO', None, '29.60650', '-81.58480'), ('SATSUMA', None, '29.55480', '-81.65620'), ('WELAKA', 586, '29.48090', '-81.66350')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'ALC017': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('FIVE POINTS', 146, '33.01710', '-85.35130'), ('HUGULEY', 2953, '32.84310', '-85.24070'), ('LAFAYETTE', None, '32.89950', '-85.40080'), ('LANETT', 7897, '32.86620', '-85.20510'), ('VALLEY', 9198, '32.80900', '-85.17300'), ('WAVERLY', 184, '32.73610', '-85.57610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'FLC101': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('DADE CITY', 6188, '28.36150', '-82.19550'), ('DADE CITY NORTH', 3319, '28.38330', '-82.19310'), ('DARBY', None, '28.37000', '-82.35000'), ('HOLIDAY', 21904, '28.18590', '-82.74220'), ('HUDSON', 12765, '28.35770', '-82.69950'), ('JASMINE ESTATES', 18213, '28.29260', '-82.69040'), ('LACOOCHEE', 1345, '28.46500', '-82.16920'), ("LAND O' LAKES", 20971, '28.22170', '-82.45380'), ('MOON LAKE ESTATES', None, '28.30000', '-82.60000'), ('NEW PORT RICHEY', 16117, '28.24770', '-82.71780'), ('ODESSA', 3173, '28.20000', '-82.59000'), ('PORT RICHEY', 3021, '28.27540', '-82.72860'), ('SAN ANTONIO', 655, '28.33740', '-82.27900'), ('ST. LEO', 595, '28.33700', '-82.25950'), ('WESLEY CHAPEL', 5691, '28.23940', '-82.32810'), ('ZEPHYRHILLS', 10833, '28.23600', '-82.17650')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'ALC015': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ANNISTON', 24276, '33.66260', '-85.81390'), ('BLUE MOUNTAIN', 233, '33.68850', '-85.83760'), ('BYNUM', 1863, '33.60550', '-85.95750'), ('FORT MCCLELLAN', None, '33.71880', '-85.79070'), ('HOBSON CITY', 878, '33.61700', '-85.85170'), ('JACKSONVILLE', 8404, '33.81070', '-85.76080'), ('OHATCHEE', 1215, '33.78450', '-86.01870'), ('OXFORD', 14592, '33.59700', '-85.82580'), ('PIEDMONT', 5120, '33.92740', '-85.61520'), ('SAKS', 10698, '33.71130', '-85.85380'), ('WEAVER', 2619, '33.75560', '-85.80860'), ('WEST END-COBB TOWN', 3924, '33.64820', '-85.87120')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'FLC103': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BASKIN', None, '27.89310', '-82.80930'), ('BELLEAIR', 4067, '27.93670', '-82.81220'), ('BELLEAIR BLUFFS', 2243, '27.91930', '-82.81930'), ('BELLEAIR SHORE', 0, '27.91740', '-82.84950'), ('CLEARWATER', 108787, '27.96000', '-82.76550'), ('DUNEDIN', 35691, '28.04000', '-82.79000'), ('FEATHER SOUND', 3597, '27.90930', '-82.65710'), ('GULFPORT', 12527, '27.74630', '-82.71020'), ('HARBOR BLUFFS', 2807, '27.90910', '-82.82780'), ('HIGHPOINT', None, '27.91670', '-82.71310'), ('INDIAN ROCKS BEACH', 5072, '27.89770', '-82.84430'), ('KENNETH CITY', 4400, '27.81570', '-82.71550'), ('LARGO', 69371, '27.90860', '-82.78100'), ('LEALMAN', None, '27.82250', '-82.68890'), ('MADEIRA BEACH', 4511, '27.79540', '-82.79170'), ('NORTH REDINGTON BEACH', 1474, '27.81730', '-82.82190'), ('OLDSMAR', 11910, '28.04850', '-82.67070'), ('PALM HARBOR', 59248, '28.08760', '-82.76320'), ('PINELLAS PARK', 45658, '27.85720', '-82.70600'), ('REDINGTON BEACH', 1539, '27.80970', '-82.81190'), ('REDINGTON SHORES', 2338, '27.82940', '-82.83210'), ('SAFETY HARBOR', 17203, '28.00930', '-82.69630'), ('SEMINOLE', 10890, '27.84170', '-82.78620'), ('ST. PETERSBURG', 248232, '27.75800', '-82.67210'), ('ST. PETERSBURG BEACH', None, '27.72500', '-82.74140'), ('TARPON SPRINGS', 21003, '28.14580', '-82.75700'), ('TREASURE ISLAND', 7450, '27.76750', '-82.76850')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'FLC085': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('HOBE SOUND', 11376, '27.07240', '-80.13960'), ('HOBE SOUND BEACH', None, '27.10200', '-80.13430'), ('INDIANTOWN', 5588, '27.03610', '-80.46900'), ('JENSEN BEACH', 11100, '27.23610', '-80.23090'), ('JOHNATHAN DICKINSON STATE', None, '27.01220', '-80.12480'), ('JUPITER ISLAND', 620, '27.04270', '-80.10970'), ('NORTH RIVER SHORES', 3101, '27.22270', '-80.27570'), ('PALM CITY', 20097, '27.16130', '-80.26890'), ('PORT MAYACA', None, '26.98200', '-80.61190'), ('PORT SALERNO', 10141, '27.14650', '-80.18980'), ('PORT SEWALL', None, '27.16790', '-80.21690'), ('SNUG HARBOR', None, '27.20230', '-80.22140'), ('STUART', 14633, '27.19430', '-80.24320')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'KSC021': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BAXTER SPRINGS', 4602, '37.02350', '-94.73520'), ('CARONA', None, '37.28020', '-94.86820'), ('COLUMBUS', 3396, '37.16910', '-94.84380'), ('CRESTLINE', None, '37.17070', '-94.70410'), ('FAULKNER', None, '37.10130', '-95.01130'), ('GALENA', 3287, '37.07570', '-94.63940'), ('HALLOWELL', None, '37.17460', '-94.99520'), ('LAWTON', None, '37.22180', '-94.63580'), ('LOWELL', None, '37.04850', '-94.70130'), ('MELROSE', None, '37.03070', '-94.95800'), ('NEUTRAL', None, '37.09770', '-94.79460'), ('RIVERTON', None, '37.07490', '-94.70440'), ('ROSELAND', 101, '37.28100', '-94.85020'), ('SCAMMON', 496, '37.27740', '-94.82460'), ('SHERMAN', None, '37.25720', '-95.05690'), ('SHERWIN', None, '37.17990', '-94.94740'), ('SKIDMORE', None, '37.24020', '-94.83160'), ('STIPPVILLE', None, '37.22210', '-94.83740'), ('TREECE', 149, '37.00080', '-94.84300'), ('WEIR', 780, '37.31000', '-94.77160'), ('WEST MINERAL', 243, '37.28410', '-94.92270')], 'partOfState': 'SOUTHEAST', 'wfo': 'SGF'}, -'VAC840': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('WINCHESTER', 23585, '39.17450', '-78.17500')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'LAC069': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ASHLAND', 291, '32.11630', '-93.11460'), ('CAMPTI', 1057, '31.89790', '-93.11500'), ('CLARENCE', 516, '31.82000', '-93.02860'), ('GOLDONNA', 457, '32.02040', '-92.91200'), ('NATCHEZ', 583, '31.67400', '-93.04530'), ('NATCHITOCHES', 17865, '31.75550', '-93.09770'), ('POWHATAN', 141, '31.87410', '-93.20330'), ('PROVENCAL', 708, '31.65270', '-93.20030'), ('ROBELINE', 183, '31.69180', '-93.30330')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'FLC081': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANNA MARIA ISLAND', None, '27.52890', '-82.73300'), ('BAYSHORE GARDENS', 17350, '27.43350', '-82.58000'), ('BRADENTON', 49504, '27.48790', '-82.57900'), ('BRADENTON BEACH', 1482, '27.46400', '-82.69760'), ('CORTEZ', 4491, '27.46850', '-82.67060'), ('DUETTE', None, '27.59000', '-82.12300'), ('ELLENTON', 3142, '27.52360', '-82.52800'), ('HOLMES BEACH', 4966, '27.51000', '-82.71570'), ('LAKE MANATEE STATE PARK', None, '27.47900', '-82.33600'), ('LONGBOAT KEY', 7603, '27.42000', '-82.65000'), ('MYAKKA CITY', None, '27.35010', '-82.16270'), ('MYAKKA HEAD', None, '27.47000', '-82.08000'), ('ONECO', None, '27.44800', '-82.54600'), ('PALMETTO', 12571, '27.52190', '-82.57760'), ('PARRISH', None, '27.58780', '-82.42690'), ('SAMOSET', 3440, '27.47700', '-82.54150'), ('SARASOTA BRADENTON AIRPOR', None, '27.39500', '-82.55000'), ('WEST BRADENTON', 4444, '27.50220', '-82.61420'), ('WEST SAMOSET', 5507, '27.46920', '-82.55690'), ('WHITFIELD', 2984, '27.41140', '-82.56620')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'TXC239': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EDNA', 5899, '28.97400', '-96.64730'), ('GANADO', 1915, '29.04210', '-96.51140'), ('LA WARD', 200, '28.84760', '-96.46540')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC235': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARDEN', None, '31.44360', '-100.76670'), ('BARNHART', None, '31.12780', '-101.17030'), ('MERTZON', 839, '31.26170', '-100.81690'), ('SHERWOOD', None, '31.28110', '-100.79500')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'TXC237': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRYSON', 528, '33.15970', '-98.38660'), ('JACKSBORO', 4533, '33.22310', '-98.15410'), ('SHANNON', None, '33.47000', '-98.27000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC231': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CADDO MILLS', 1149, '33.06570', '-96.22690'), ('CAMPBELL', 734, '33.14790', '-95.95500'), ('CELESTE', 817, '33.29420', '-96.19410'), ('COMMERCE', 7669, '33.23820', '-95.90080'), ('GREENVILLE', 23960, '33.11690', '-96.10120'), ('LONE OAK', 521, '32.99630', '-95.94150'), ('NEYLANDVILLE', 56, '33.19960', '-96.00400'), ('QUINLAN', 1370, '32.90870', '-96.13250'), ('WEST TAWAKONI', 1462, '32.90180', '-96.02090'), ('WOLFE CITY', 1566, '33.36980', '-96.06770')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC233': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BORGER', 14302, '35.65930', '-101.40020'), ('FRITCH', 2235, '35.64060', '-101.59680'), ('PRINGLE', None, '35.94920', '-101.45580'), ('SANFORD', 203, '35.70260', '-101.53130'), ('STINNETT', 1936, '35.82220', '-101.44320')], 'partOfState': '', 'wfo': 'AMA'}, -'NMC013': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ANTHONY', 7904, '32.00540', '-106.59560'), ('CHAPARRAL', 6117, '32.02590', '-106.39950'), ('DONA ANA', 1379, '32.39130', '-106.81530'), ('GARFIELD', None, '32.75690', '-107.26390'), ('HATCH', 1673, '32.66760', '-107.15580'), ('LA MESA', None, '32.12190', '-106.70720'), ('LA UNION', None, '31.95500', '-106.66110'), ('LAS CRUCES', 74267, '32.33610', '-106.75580'), ('LEASBURG', None, '32.45390', '-106.88250'), ('MESILLA', 2180, '32.27020', '-106.80670'), ('MESQUITE', 948, '32.16440', '-106.69610'), ('ORGAN', None, '32.42550', '-106.59440'), ('RADIUM SPRINGS', 1518, '32.50110', '-106.92750'), ('RINCON', 220, '32.67280', '-107.06420'), ('SALEM', 795, '32.70750', '-107.21110'), ('SANTA TERESA', 2607, '31.87330', '-106.64110'), ('SUNLAND PARK', 13309, '31.79910', '-106.57720'), ('UNIVERSITY PARK', 2732, '32.27810', '-106.74730'), ('VADO', 3003, '32.11170', '-106.66190'), ('WHITE SANDS', 1323, '32.38270', '-106.49240')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EPZ'}, -'NMC011': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('FORT SUMNER', 1249, '34.47810', '-104.23720'), ('SUMNER LAKE', None, '34.60300', '-104.38100'), ('TAIBAN', None, '34.44400', '-104.00900'), ('YESO', None, '34.43900', '-104.60900')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ABQ'}, -'NMC017': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BAYARD', 2534, '32.75950', '-108.13340'), ('BUCKHORN', None, '33.03690', '-108.70800'), ('CENTRAL', None, '32.77530', '-108.15420'), ('CLIFF', None, '32.96220', '-108.61010'), ('FAYWOOD', None, '32.56420', '-108.02360'), ('FORT BAYARD', None, '32.79600', '-108.14860'), ('GILA', None, '32.96580', '-108.57610'), ('GILA HOT SPRINGS', None, '33.19580', '-108.20640'), ('HACHITA', None, '31.91810', '-108.31970'), ('HURLEY', 1464, '32.69760', '-108.13140'), ('LAKE ROBERTS', None, '33.04190', '-108.19690'), ('MIMBRES', None, '32.85610', '-107.97920'), ('MULE CREEK', None, '33.12190', '-108.95560'), ('PINOS ALTOS', None, '32.88750', '-108.24180'), ('REDROCK', None, '32.68610', '-108.73750'), ('SAN LORENZO', None, '32.81000', '-107.91940'), ('SILVER CITY', 10545, '32.78290', '-108.26680'), ('TYRONE', None, '32.65690', '-108.35870')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'NMC015': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARTESIA', 10692, '32.84750', '-104.42970'), ('ATOKA', None, '32.76940', '-104.38830'), ('AVALON', None, '32.49750', '-104.23610'), ('CARLSBAD', 25625, '32.40420', '-104.23660'), ('CARLSBAD NORTH', 1245, '32.44630', '-104.22260'), ('DAYTON', None, '32.73140', '-104.38470'), ('ESPUELA', None, '32.92970', '-104.38720'), ('HOPE', 107, '32.81730', '-104.73670'), ('LAKEWOOD', None, '32.61780', '-104.35390'), ('LOCO HILLS', None, '32.81890', '-103.97640'), ('LOVING', 1326, '32.28650', '-104.09600'), ('MALAGA', None, '32.22390', '-104.07190'), ('OTIS', None, '32.35110', '-104.16800'), ('QUEEN', None, '32.19080', '-104.74530'), ('SEVEN RIVERS', None, '32.59500', '-104.42110'), ('WHITES CITY', None, '32.17560', '-104.37610')], 'partOfState': 'SOUTHEAST', 'wfo': 'MAF'}, -'NMC019': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ANTON CHICO', None, '35.20000', '-105.14200'), ('COLONIAS', None, '35.11000', '-104.84700'), ('CUERVO', None, '35.03100', '-104.40800'), ('DILIA', None, '35.19300', '-105.06300'), ('MILAGRO', None, '34.93800', '-105.23900'), ('NEWKIRK', None, '35.06800', '-104.26400'), ('PASTURA', None, '34.78300', '-104.94400'), ('PINTADA', None, '34.88200', '-105.07200'), ('PUERTO DE LUNA', None, '34.83200', '-104.62100'), ('SAN IGNACIO', None, '34.91300', '-104.94500'), ('SANTA ROSA', 2744, '34.94340', '-104.67670'), ('SANTA ROSA LAKE STATE PAR', None, '35.03300', '-104.68300'), ('VAUGHN', 539, '34.60660', '-105.21230')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ABQ'}, -'CAC043': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('EL PORTAL', None, '37.67570', '-119.78030'), ('FISH CAMP', None, '37.47890', '-119.63700'), ('LAKE MCCLURE', None, '37.58400', '-120.27370'), ('MARIPOSA', 1373, '37.48850', '-119.96650'), ('WAWONA', None, '37.54790', '-119.64420'), ('YOSEMITE VALLEY', 265, '37.74000', '-119.59810')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'MDC009': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BROOMES ISLAND', None, '38.41810', '-76.54440'), ('CHESAPEAKE BEACH', 3180, '38.68730', '-76.53590'), ('COVE POINT', None, '38.38110', '-76.38920'), ('DARES BEACH', None, '38.56170', '-76.51580'), ('DRUM POINT', None, '38.32670', '-76.42640'), ('DUNKIRK', 2363, '38.72170', '-76.66080'), ('HUNTINGTOWN', 2436, '38.61580', '-76.61330'), ('LONG BEACH', None, '38.46080', '-76.46920'), ('LOWER MARLBORO', None, '38.65580', '-76.68220'), ('LUSBY', 1666, '38.41060', '-76.45560'), ('MOUNT HARMONY', None, '38.69830', '-76.60440'), ('NORTH BEACH', 1880, '38.70870', '-76.53470'), ('PRINCE FREDERICK', 1432, '38.54860', '-76.58910'), ('SAINT LEONARD', None, '38.47420', '-76.50670')], 'partOfState': 'SOUTHERN', 'wfo': 'LWX'}, -'CAC041': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BOLINAS', 1246, '37.90560', '-122.69700'), ('CORTE MADERA', 9100, '37.92360', '-122.50730'), ('FAIRFAX', 7319, '37.98860', '-122.59380'), ('INVERNESS', 1421, '38.08510', '-122.84110'), ('KENTFIELD', 6351, '37.95030', '-122.54740'), ('LAGUNITAS-FOREST KNOLLS', 1835, '38.01520', '-122.68760'), ('LARKSPUR', 12014, '37.94120', '-122.52920'), ('LUCAS VALLEY-MARINWOOD', 6357, '38.03520', '-122.56550'), ('MILL VALLEY', 13600, '37.90800', '-122.54100'), ('NOVATO', 47630, '38.09210', '-122.55670'), ('ROSS', 2329, '37.96180', '-122.56060'), ('SAN ANSELMO', 12378, '37.98260', '-122.56890'), ('SAN RAFAEL', 56063, '37.98110', '-122.50590'), ('SANTA VENETIA', 4298, '38.00910', '-122.50370'), ('SAUSALITO', 7330, '37.85770', '-122.49150'), ('STRAWBERRY', 5302, '37.89700', '-122.50770'), ('TAMALPAIS-HOMESTEAD VALLE', None, '37.88840', '-122.53900'), ('TIBURON', 8666, '37.88680', '-122.45680'), ('WOODACRE', 1393, '38.00570', '-122.63470')], 'partOfState': '', 'wfo': 'MTR'}, -'CAC047': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ATWATER', 23113, '37.35330', '-120.60000'), ('DOS PALOS', 4581, '36.98650', '-120.63680'), ('GUSTINE', 4698, '37.25250', '-120.99320'), ('LE GRAND', 1760, '37.21910', '-120.26050'), ('LIVINGSTON', 10473, '37.38800', '-120.72150'), ('LOS BANOS', 25869, '37.06420', '-120.83530'), ('MERCED', 63893, '37.29630', '-120.48440'), ('PLANADA', 4369, '37.28810', '-120.32330'), ('SAN LUIS RESERVOIR', None, '37.06800', '-121.06860')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'CAC045': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BOONVILLE', None, '39.00000', '-123.37000'), ('BRANSCOMB', None, '39.65000', '-123.63000'), ('CALPELLA', None, '39.23000', '-123.20000'), ('COMPTCHE', None, '39.27000', '-123.60000'), ('COVELO', 1175, '39.80000', '-123.25000'), ('DOS RIOS', None, '39.72000', '-123.35000'), ('FORT BRAGG', 7026, '39.44000', '-123.80000'), ('GUALALA', None, '38.77000', '-123.53000'), ('HOPLAND', None, '38.98000', '-123.12000'), ('LAYTONVILLE', 1301, '39.67000', '-123.50000'), ('LEGGETT', None, '39.87000', '-123.72000'), ('MANCHESTER', None, '38.97000', '-123.68000'), ('NAVARRO', None, '39.15000', '-123.53000'), ('PHILO', None, '39.07000', '-123.43000'), ('PIERCY', None, '39.98000', '-123.80000'), ('POINT ARENA', 474, '38.91000', '-123.69000'), ('POTTER VALLEY', None, '39.32000', '-123.12000'), ('REDWOOD VLY', None, '39.27000', '-123.20000'), ('ROCKPORT', None, '39.75000', '-123.82000'), ('TALMAGE', 1141, '39.13000', '-123.17000'), ('UKIAH', 15497, '39.15000', '-123.21000'), ('WILLITS', 5073, '39.40000', '-123.35000'), ('YORKVILLE', None, '38.90000', '-123.22000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'LAC061': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CHOUDRANT', 582, '32.53030', '-92.51770'), ('DOWNSVILLE', 118, '32.62700', '-92.41430'), ('DUBACH', 800, '32.69800', '-92.65600'), ('GRAMBLING', 4693, '32.52700', '-92.71160'), ('RUSTON', 20546, '32.53180', '-92.63960'), ('SIMSBORO', 684, '32.53320', '-92.78300'), ('VIENNA', 424, '32.60860', '-92.65180')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'MDC001': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BOWERS', 305, '39.06030', '-75.40020'), ('CAMDEN', 2100, '39.11280', '-75.54950'), ('CHESWOLD', 313, '39.21650', '-75.58460'), ('CLAYTON', 1273, '39.29250', '-75.63320'), ('DOVER', 32135, '39.15870', '-75.51740'), ('DOVER BASE HOUSING', 3394, '39.11830', '-75.48260'), ('FARMINGTON', 75, '38.87070', '-75.57960'), ('FELTON', 784, '39.00910', '-75.57790'), ('FREDERICA', 648, '39.00890', '-75.46480'), ('HARRINGTON', 3174, '38.92270', '-75.57230'), ('HARTLY', 78, '39.16840', '-75.71310'), ('HIGHLAND ACRES', 3379, '39.11720', '-75.52310'), ('HOUSTON', 430, '38.91680', '-75.50450'), ('KENT ACRES', 1637, '39.13310', '-75.51880'), ('KENTON', 237, '39.22720', '-75.66580'), ('LEIPSIC', 203, '39.24310', '-75.51710'), ('LITTLE CREEK', 195, '39.16520', '-75.44880'), ('MAGNOLIA', 226, '39.06980', '-75.47670'), ('RISING SUN-LEBANON', 2458, '39.10110', '-75.50660'), ('RIVERVIEW', 1583, '39.02910', '-75.51980'), ('RODNEY VILLAGE', 1602, '39.12640', '-75.53690'), ('SMYRNA', 5679, '39.29540', '-75.60770'), ('VIOLA', 156, '39.04210', '-75.57190'), ('WOODSIDE', 184, '39.07030', '-75.56850'), ('WOODSIDE EAST', 2174, '39.06710', '-75.53820'), ('WYOMING', 1141, '39.11680', '-75.56060'), ('MARYDEL', 147, '39.11390', '-75.74850')], 'partOfState': 'CENTRAL', 'wfo': 'PHI'}, -'CAC049': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ADIN', None, '41.21170', '-120.94420'), ('ALTURAS', 2892, '41.49150', '-120.54540'), ('CANBY', None, '41.44390', '-120.86920'), ('CEDARVILLE', None, '41.53000', '-120.17000'), ('DAVIS CREEK', None, '41.73330', '-120.37080'), ('DAY', None, '41.21170', '-121.37330'), ('EAGLEVILLE', None, '41.32000', '-120.12000'), ('FORT BIDWELL', None, '41.86000', '-120.15000'), ('FORT BIDWELL', None, '41.86000', '-120.15000'), ('LAKE CITY', None, '41.64000', '-120.22000'), ('LIKELY', None, '41.23060', '-120.50310'), ('LOOKOUT', None, '41.20810', '-121.15420'), ('NEWELL', None, '41.88830', '-121.37110'), ('TIONESTA', None, '41.64610', '-121.32690'), ('WILLOW RANCH', None, '41.90250', '-120.35720')], 'partOfState': 'NORTHERN', 'wfo': 'MFRREV'}, -'MDC003': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('(BWI)BALTMOR-WSHNGT', None, '39.17000', '-76.67000'), ('ANNAPOLIS', 35838, '38.97160', '-76.50300'), ('ARNOLD', 23422, '39.04270', '-76.49940'), ('BAY RIDGE', None, '38.93780', '-76.46030'), ('BELVEDERE HEIGHTS', None, '39.05580', '-76.50250'), ('BENFIELD', None, '39.08860', '-76.62250'), ('BROOKLYN PARK', 10938, '39.21700', '-76.61050'), ('CAPE ARTHUR', None, '39.07890', '-76.52500'), ('CAPE ST. CLAIRE', 8022, '39.04430', '-76.44590'), ('CHELSEA BEACH', None, '39.10190', '-76.52030'), ('CROFTON', 20091, '39.01100', '-76.68730'), ('CROWNSVILLE', 1670, '39.01680', '-76.59550'), ('DEALE', 4796, '38.79320', '-76.54660'), ('FERNDALE', 16056, '39.18650', '-76.63440'), ('FORT MEADE', 9882, '39.10810', '-76.74200'), ('GALESVILLE', None, '38.84310', '-76.54390'), ('GIBSON ISLAND', None, '39.07420', '-76.42420'), ('GLEN BURNIE', 38922, '39.16640', '-76.60240'), ('GREEN HAVEN', 17415, '39.13670', '-76.54010'), ('HERALD HARBOR', 2313, '39.05040', '-76.57420'), ('HILLSMERE SHORES', 2977, '38.93190', '-76.49710'), ('JESSUP', 7865, '39.14610', '-76.77300'), ('LAKE SHORE', 13065, '39.09760', '-76.48560'), ('LINTHICUM', 7539, '39.20540', '-76.66600'), ('LONDONTOWNE', 7595, '38.93570', '-76.55800'), ('MAYO', 3153, '38.89170', '-76.50040'), ('MILLERSVILLE', None, '39.05940', '-76.64830'), ('ODENTON', 20534, '39.06120', '-76.69580'), ('PAROLE', 14031, '38.98410', '-76.55310'), ('PASADENA', 12093, '39.11210', '-76.55240'), ('PUMPHREY', 5317, '39.21800', '-76.64290'), ('RIDGEWAY', None, '39.11470', '-76.68390'), ('RIVA', 3966, '38.94600', '-76.58960'), ('SEVERN', 35076, '39.13520', '-76.69160'), ('SEVERNA PARK', 28507, '39.08190', '-76.57250'), ('SHADY SIDE', 5559, '38.83010', '-76.52450'), ('SOUTH GATE', 28672, '39.12890', '-76.62600')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'MDC005': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ARBUTUS', 20116, '39.24260', '-76.69230'), ('BALTIMORE MARTIN ST', None, '39.33000', '-76.42000'), ('BENTLEY SPRINGS', None, '39.67360', '-76.67110'), ('BOWLEYS QUARTERS', 6314, '39.31230', '-76.38230'), ('BROOKLANDVILLE', None, '39.42030', '-76.67030'), ('CARNEY', 28264, '39.40440', '-76.52270'), ('CATONSVILLE', 39820, '39.26450', '-76.74170'), ('CHASE', None, '39.36330', '-76.37140'), ('COCKEYSVILLE', 19388, '39.47780', '-76.63180'), ('DUNDALK', 62306, '39.26860', '-76.49740'), ('EDGEMERE', 9248, '39.22290', '-76.45970'), ('ESSEX', 39078, '39.30270', '-76.44600'), ('FORT HOWARD', None, '39.20720', '-76.44530'), ('FULLERTON', None, '39.37170', '-76.51140'), ('GLYNDON', None, '39.47640', '-76.81610'), ('GUNPOWDER', None, '39.41470', '-76.38810'), ('HAMPTON', 5004, '39.41830', '-76.57280'), ('KINGSVILLE', 4214, '39.44900', '-76.41830'), ('LOCHEARN', 25269, '39.34730', '-76.73080'), ('LONG GREEN', None, '39.47280', '-76.52330'), ('MCDONOGH', None, '39.39110', '-76.76470'), ('MIDDLE RIVER', 23958, '39.33400', '-76.43400'), ('MILFORD MILL', 26527, '39.34770', '-76.77030'), ('OWINGS MILLS', 20193, '39.41130', '-76.79320'), ('PARKVILLE', 31118, '39.38400', '-76.55180'), ('PERRY HALL', 28705, '39.40660', '-76.47860'), ('PIKESVILLE', 29123, '39.39140', '-76.70070'), ('RANDALLSTOWN', 30870, '39.37170', '-76.80220'), ('REISTERSTOWN', 22438, '39.45690', '-76.81490'), ('ROSEDALE', 19199, '39.32760', '-76.50840'), ('ROSSVILLE', 11515, '39.35480', '-76.48080'), ('TIMONIUM', None, '39.43690', '-76.62000'), ('TOWSON', 51793, '39.39500', '-76.62130'), ('WHITE MARSH', 8485, '39.38350', '-76.45860'), ('WOODLAWN', 6251, '39.30670', '-76.74780'), ('WOODSTOCK', None, '39.32860', '-76.87220')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'INC117': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ABYDEL', None, '38.56670', '-86.55000'), ('BACON', None, '38.40000', '-86.43330'), ('BROMER', None, '38.60000', '-86.33330'), ('CHAMBERSBURG', None, '38.51670', '-86.38330'), ('ETHEL', None, '38.40000', '-86.51670'), ('FARGO', None, '38.40000', '-86.48330'), ('FRENCH LICK', 1941, '38.54720', '-86.62020'), ('GREENBRIER', None, '38.46670', '-86.55000'), ('LEIPSIC', None, '38.66670', '-86.36670'), ('MILLERSBURG', 868, '38.55000', '-86.33330'), ('NEWTON STEWART', None, '38.40000', '-86.61670'), ('ORANGEVILLE', None, '38.63330', '-86.55000'), ('ORLEANS', 2273, '38.66200', '-86.45290'), ('PAOLI', 3844, '38.55760', '-86.46920'), ('PROSPECT', None, '38.58330', '-86.61670'), ('PUMPKIN CENTER', None, '38.58330', '-86.36670'), ('ROLAND', None, '38.60000', '-86.68330'), ('SYRIA', None, '38.58330', '-86.40000'), ('VALEENE', None, '38.43330', '-86.40000'), ('WEST BADEN SPRINGS', 618, '38.56770', '-86.61230'), ('YOUNGS CREEK', None, '38.48330', '-86.50000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'INC111': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROOK', 1062, '40.86600', '-87.36580'), ('GOODLAND', 1096, '40.76430', '-87.29490'), ('KENTLAND', 1822, '40.77280', '-87.44600'), ('MOROCCO', 1127, '40.94560', '-87.45270'), ('MOUNT AYR', 147, '40.95150', '-87.29830')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'WVC053': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('HARTFORD CITY', 519, '38.99860', '-81.98870'), ('HENDERSON', 325, '38.83150', '-82.13570'), ('LEON', 132, '38.74730', '-81.95610'), ('NEW HAVEN', 1559, '38.98800', '-81.96750'), ('POINT PLEASANT', 4637, '38.85390', '-82.13070')], 'partOfState': '', 'wfo': 'RLX'}, -'LAC067': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BASTROP', 12988, '32.77450', '-91.90930'), ('BONITA', 335, '32.91990', '-91.67490'), ('COLLINSTON', 327, '32.68880', '-91.87150'), ('MER ROUGE', 721, '32.77690', '-91.79430'), ('OAK RIDGE', 142, '32.62470', '-91.77330')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'WVC051': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BENWOOD', 1585, '40.01000', '-80.73390'), ('CAMERON', 1212, '39.82640', '-80.57050'), ('GLEN DALE', 1552, '39.94900', '-80.75620'), ('LYNN CAMP', None, '39.77000', '-80.70000'), ('MCMECHEN', 1937, '39.98650', '-80.73320'), ('MOUNDSVILLE', 9998, '39.92280', '-80.74180')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'TNC001': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CLINTON', 9409, '36.09080', '-84.13050'), ('LAKE CITY', 1888, '36.22420', '-84.15600'), ('NORRIS', 1446, '36.21310', '-84.06100'), ('ROSEDALE', None, '36.17030', '-84.35170')], 'partOfState': '', 'wfo': 'MRX'}, -'FLC075': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRONSON', 964, '29.44880', '-82.63870'), ('CEDAR KEY', 790, '29.14630', '-83.03960'), ('CHIEFLAND', 1993, '29.47890', '-82.86140'), ('FANNING SPRINGS', 737, '29.58370', '-82.93050'), ('LEBANON', None, '29.17000', '-82.64000'), ('OTTER CREEK', 121, '29.32400', '-82.77340'), ('WILLISTON', 2297, '29.37040', '-82.45700')], 'partOfState': 'NORTHERN', 'wfo': 'TBW'}, -'TNC003': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELL BUCKLE', 391, '35.59070', '-86.35410'), ('NORMANDY', 141, '35.45140', '-86.25810'), ('SHELBYVILLE', 16105, '35.49040', '-86.44670'), ('WARTRACE', 548, '35.52780', '-86.33290')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC011': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BRONSON', 346, '37.89590', '-95.07250'), ('DEVON', None, '37.92210', '-94.81880'), ('FORT SCOTT', 8297, '37.83960', '-94.70800'), ('FULTON', 184, '38.01000', '-94.71930'), ('GARLAND', None, '37.73160', '-94.62210'), ('HAMMOND', None, '37.93550', '-94.69490'), ('HARDING', None, '37.99380', '-94.81930'), ('HIATTVILLE', None, '37.72210', '-94.87130'), ('MAPLETON', 98, '38.01500', '-94.88330'), ('MARMATON', None, '37.83180', '-94.82430'), ('PAWNEE STATION', None, '37.70000', '-94.79100'), ('PETERSBURG', None, '37.77570', '-94.97910'), ('PORTERVILLE', None, '37.71790', '-95.06850'), ('REDFIELD', 140, '37.83660', '-94.88070'), ('UNIONTOWN', 288, '37.84710', '-94.97490'), ('XENIA', None, '37.99520', '-94.98600')], 'partOfState': 'SOUTHEAST', 'wfo': 'SGF'}, -'TNC005': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIG SANDY', 518, '36.23270', '-88.08570'), ('CAMDEN', 3828, '36.06440', '-88.10490')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC017': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR POINT', 53, '38.25990', '-96.82170'), ('COTTONWOOD FALLS', 966, '38.36910', '-96.54260'), ('ELMDALE', 50, '38.37300', '-96.64570'), ('HYMER', None, '38.48000', '-96.68000'), ('MATFIELD', None, '38.17000', '-96.57000'), ('MATFIELD GREEN', 60, '38.15870', '-96.56340'), ('SAFFORDVILLE', None, '38.38330', '-96.40000'), ('STRONG CITY', 584, '38.39560', '-96.53650'), ('WONSEVU', None, '38.15000', '-96.77000')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'TNC007': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRAYTON', None, '35.46920', '-85.18500'), ('MELVINE', None, '35.73220', '-85.05970'), ('MOUNT CREST', None, '35.66860', '-85.24170'), ('OLD CUMBERLAND', None, '35.54750', '-85.37440'), ('PALIO', None, '35.46920', '-85.32190'), ('PIKEVILLE', 1781, '35.60670', '-85.19580')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC015': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANDOVER', 6698, '37.69120', '-97.13930'), ('AUGUSTA', 8423, '37.69230', '-96.97530'), ('BENTON', 827, '37.78880', '-97.10810'), ('CASSODAY', 130, '38.03870', '-96.63690'), ('DOUGLASS', 1813, '37.51780', '-97.01140'), ('EL DORADO', 12057, '37.82110', '-96.85800'), ('ELBING', 218, '38.05410', '-97.12680'), ('LATHAM', 164, '37.53520', '-96.64150'), ('LEON', 645, '37.68820', '-96.78350'), ('POTWIN', 457, '37.93890', '-97.01870'), ('ROSE HILL', 3432, '37.56620', '-97.13210'), ('TOWANDA', 1338, '37.79690', '-96.99700'), ('WHITEWATER', 653, '37.96320', '-97.14680')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'TNC009': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALCOA', 7734, '35.79300', '-83.97920'), ('CADES COVE', None, '35.59670', '-83.81060'), ('CLOVER HILL', None, '35.70810', '-84.06720'), ('EAGLETON VILLAGE', 4883, '35.79400', '-83.93670'), ('FRIENDSVILLE', 890, '35.75720', '-84.13040'), ('HAPPY VALLEY', None, '35.60810', '-83.95810'), ('MARYVILLE', 23120, '35.74750', '-83.97300'), ('TALASSEE', None, '35.54810', '-84.06080'), ('TOWNSEND', 244, '35.67610', '-83.75190'), ('WALLAND', None, '35.72530', '-83.81530'), ('WILDWOOD', None, '35.80250', '-83.87360')], 'partOfState': '', 'wfo': 'MRX'}, -'WVC057': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('LUKE', 80, '39.47560', '-79.06040'), ('ANTIOCH', None, '39.32360', '-79.01780'), ('EMORYVILLE', None, '39.35330', '-79.17060'), ('FORT ASHBY', 1354, '39.49820', '-78.76540'), ('HARTMANSVILLE', None, '39.32190', '-79.15530'), ('HEADSVILLE', None, '39.39250', '-78.85610'), ('KEYSER', 5303, '39.43950', '-78.98400'), ('KITZMILLER', None, '39.38000', '-79.18000'), ('NEW CREEK', None, '39.37500', '-79.02690'), ('PATTERSON CREEK', None, '39.56670', '-78.73330'), ('PIEDMONT', 1014, '39.47930', '-79.04780'), ('REESES MILL', None, '39.43060', '-78.85500'), ('RIDGEVILLE', None, '39.34830', '-78.99080'), ('RUSSELLDALE', None, '39.29250', '-78.93030'), ('SHORT GAP', None, '39.54360', '-78.81140'), ('SULPHUR CITY', None, '39.35310', '-79.13780'), ('WAGONER', None, '39.53810', '-78.67250'), ('WARNOCKS', None, '39.46190', '-79.09780')], 'partOfState': '', 'wfo': 'LWX'}, -'KSC019': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR VALE', 723, '37.10640', '-96.50060'), ('CHAUTAUQUA', 113, '37.02390', '-96.17680'), ('ELGIN', 82, '37.00160', '-96.28040'), ('HALE', None, '37.23000', '-96.02000'), ('NIOTAZE', 122, '37.06730', '-96.01400'), ('PERU', 183, '37.08120', '-96.09600'), ('SEDAN', 1342, '37.12740', '-96.18470')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'FLC079': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CHERRY LAKE', None, '30.58220', '-83.42740'), ('GREENVILLE', 837, '30.46700', '-83.63520'), ('HAMBURG', None, '30.56500', '-83.52700'), ('HANSON', None, '30.55090', '-83.36730'), ('HOPEWELL', None, '30.38130', '-83.44480'), ('LEE', 352, '30.41840', '-83.30060'), ('LOVETT', None, '30.62760', '-83.57340'), ('MADISON', 3061, '30.46860', '-83.41540'), ('MADISON CO A/P', None, '30.44220', '-83.30980'), ('MOSELEY HALL', None, '30.35140', '-83.58170'), ('PINETTA', None, '30.59340', '-83.35260'), ('SIRMANS', None, '30.35040', '-83.65940'), ('SMITH', None, '30.62620', '-83.35310')], 'partOfState': '', 'wfo': 'TAE'}, -'TXC307': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRADY', 5523, '31.13500', '-99.33470'), ('DOOLE', None, '31.39560', '-99.59860'), ('FIFE', None, '31.39030', '-99.38420'), ('LOHN', None, '31.32360', '-99.40970'), ('MELVIN', 155, '31.19830', '-99.58090'), ('MERCURY', None, '31.41220', '-99.15720'), ('MILBURN', None, '31.43750', '-99.10940'), ('PEAR VALLEY', None, '31.31000', '-99.49360'), ('PLACID', None, '31.32530', '-99.18420'), ('ROCHELLE', None, '31.22440', '-99.21080'), ('SALT GAP', None, '31.30360', '-99.59890'), ('STACY', None, '31.47690', '-99.59750'), ('VOCA', None, '31.01080', '-99.18420'), ('WALDRIP', None, '31.44250', '-99.42280')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'WVC055': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('GLEN LYN', 151, '37.36670', '-80.88330'), ('ATHENS', 1102, '37.41670', '-81.01670'), ('ATHENS', 1102, '37.42280', '-81.01610'), ('BLUEFIELD', 11451, '37.26670', '-81.21670'), ('BRAMWELL', 426, '37.32670', '-81.31270'), ('BRAMWELL', 426, '37.31670', '-81.31670'), ('CAMP CREEK', None, '37.48330', '-81.10000'), ('CERES', None, '37.30000', '-81.15000'), ('COALDALE', None, '37.35000', '-81.35000'), ('DUNNS', None, '37.53330', '-81.05000'), ('ELGOOD', None, '37.40000', '-80.93330'), ('FLAT TOP', None, '37.58330', '-81.11670'), ('KEGLEY', None, '37.40000', '-81.13330'), ('LERONA', None, '37.50000', '-80.98330'), ('MATOAKA', 317, '37.41670', '-81.25000'), ('MERCER CO AIRPORT', None, '37.30000', '-81.21670'), ('MONTCALM', 885, '37.35030', '-81.25180'), ('MONTCALM', 885, '37.35000', '-81.25000'), ('OAKVALE', 142, '37.33290', '-80.96600'), ('PRINCETON', 6347, '37.36670', '-81.10000'), ('SANDLICK', None, '37.33330', '-81.21670'), ('SPANISHBURG', None, '37.45000', '-81.11670'), ('WENONAH', None, '37.46670', '-81.25000'), ('WILLOWTON', None, '37.35000', '-80.88330')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'VAC810': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BACK BAY', None, '36.65360', '-76.03170'), ('BAYSIDE', None, '36.88880', '-76.13340'), ('CAPE HENRY', None, '36.92960', '-76.01310'), ('DAM NECK', None, '36.78280', '-75.96550'), ('GALLUPS CORNER', None, '36.79970', '-76.12970'), ('GREENBRIER', None, '36.78150', '-76.20990'), ('KEMPSVILLE', None, '36.82730', '-76.16000'), ('LONDON BRIDGE', None, '36.84170', '-76.05000'), ('LYNNHAVEN', None, '36.83600', '-76.05950'), ('MACONS CORNER', None, '36.80000', '-76.00440'), ('MUNDEN', None, '36.57770', '-76.02720'), ('NORTH VIRGINIA BEACH', None, '36.89070', '-75.98800'), ('OCEANA', None, '36.84190', '-76.01330'), ('OCEANA NAS', None, '36.81520', '-76.02780'), ('PRINCESS ANNE', None, '36.75180', '-76.05390'), ('PRINCESS ANNE PLAZA', None, '36.83680', '-76.09150'), ('PUNGO', None, '36.72400', '-76.01780'), ('RUDEE HEIGHTS', None, '36.82690', '-75.97690'), ('SANDBRIDGE BEACH', None, '36.72280', '-75.93540'), ('SIGMA', None, '36.73170', '-75.98640'), ('VIRGINIA BEACH OCEANFRONT', None, '36.84950', '-75.97730')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'TXC491': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANDERSON MILL', 8953, '30.45480', '-97.80550'), ('ANDICE', None, '30.78330', '-97.85000'), ('BARTLETT', 1675, '30.79470', '-97.43190'), ('BRUSHY CREEK', 15371, '30.51330', '-97.73940'), ('CEDAR PARK', 26049, '30.51460', '-97.83080'), ('COUPLAND', None, '30.46670', '-97.38330'), ('FLORENCE', 1054, '30.83970', '-97.79260'), ('GEORGETOWN', 28339, '30.64760', '-97.68630'), ('GEORGETOWN DAM', None, '30.66000', '-97.71000'), ('GRANGER', 1299, '30.71790', '-97.44070'), ('GRANGER DAM', None, '30.70000', '-97.33000'), ('HUTTO', 1250, '30.54580', '-97.54210'), ('JARRELL', None, '30.81670', '-97.60000'), ('LEANDER', 7596, '30.56240', '-97.86050'), ('LIBERTY HILL', 1409, '30.66670', '-97.41670'), ('ROUND ROCK', 61136, '30.51750', '-97.67210'), ('SERENADA', 1847, '30.69910', '-97.69150'), ('TAYLOR', 13575, '30.57180', '-97.41000'), ('THRALL', 710, '30.58840', '-97.29840'), ('WEIR', 591, '30.67330', '-97.59120')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'GAC039': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('KINGS FERRY', None, '30.78510', '-81.83920'), ('COLESBURG', None, '30.92350', '-81.71650'), ('CUMBERLAND ISLAND', None, '30.83100', '-81.45220'), ('DOVER BLUFF', None, '31.01700', '-81.52730'), ('DUNGENESS', None, '30.74000', '-81.47000'), ('HARRIETTS BLUFF', None, '30.87120', '-81.58590'), ('HIGH POINT', None, '30.94000', '-81.42000'), ('KINGS BAY BASE', 2599, '30.79000', '-81.51000'), ('KINGSLAND', 10506, '30.79130', '-81.66310'), ('ST. MARYS', 13761, '30.71000', '-81.54000'), ('TARBORO', None, '31.01490', '-81.80710'), ('WAVERLY', None, '31.09360', '-81.72490'), ('WOODBINE', 1218, '30.95910', '-81.72170')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'KYC209': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DAVIS', None, '38.36670', '-84.47000'), ('GEORGETOWN', 18080, '38.20520', '-84.55220'), ('NEW ZION', None, '38.19000', '-84.48330'), ('NEWTOWN', None, '38.21670', '-84.46670'), ('OXFORD', None, '38.26670', '-84.53330'), ('SADIEVILLE', 263, '38.39130', '-84.53650'), ('SAND LICK', None, '38.25000', '-84.71670'), ('STAMPING GROUND', 566, '38.27000', '-84.68610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'TXC495': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KERMIT', 5714, '31.85390', '-103.09200'), ('THE WINKLER COUNTY SANDHI', None, '31.95360', '-102.97110'), ('WINK', 919, '31.75520', '-103.15440')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC497': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALVORD', 1007, '33.35890', '-97.69500'), ('AURORA', 853, '33.05820', '-97.51590'), ('BOYD', 1099, '33.08050', '-97.56160'), ('BRIDGEPORT', 4309, '33.20760', '-97.75720'), ('CHICO', 947, '33.29420', '-97.79920'), ('DECATUR', 5201, '33.23330', '-97.59140'), ('LAKE BRIDGEPORT', 372, '33.20710', '-97.83060'), ('RHOME', 551, '33.05100', '-97.46730'), ('RUNAWAY BAY', 1104, '33.17490', '-97.86650')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'KYC205': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BANGOR', None, '38.05000', '-83.44400'), ('BLUESTONE', None, '38.15190', '-83.50900'), ('BRANDY', None, '38.15710', '-83.45600'), ('CHRISTY', None, '38.18920', '-83.37280'), ('CLEARFIELD', None, '38.16490', '-83.43270'), ('COGSWELL', None, '38.09620', '-83.48980'), ('CRANEY', None, '38.07710', '-83.35580'), ('CRANSTON', None, '38.26330', '-83.43570'), ('CRIX', None, '38.15570', '-83.37460'), ('ELLIOTTVILLE', None, '38.18280', '-83.27580'), ('FARLEY', None, '38.16750', '-83.22620'), ('FARMERS', None, '38.14280', '-83.54610'), ('FREESTONE', None, '38.14790', '-83.51660'), ('GATES', None, '38.23480', '-83.36660'), ('HALDEMAN', None, '38.25280', '-83.31860'), ('HAMM', None, '38.12490', '-83.31160'), ('HAYS CROSSING', None, '38.24110', '-83.44860'), ('HILDA', None, '38.23840', '-83.50780'), ('LAKEVIEW HEIGHTS', 251, '38.15210', '-83.50450'), ('LICK FORK', None, '38.09630', '-83.41110'), ('MINOR', None, '38.12980', '-83.26480'), ('MOREHEAD', 5914, '38.19010', '-83.44220'), ('MUNSON', None, '38.23060', '-83.45760'), ('PARAGON', None, '38.04770', '-83.39890'), ('PELFREY', None, '38.11300', '-83.38510'), ('RAMEY', None, '38.18060', '-83.57130'), ('RODBURN', None, '38.19780', '-83.41090'), ('SHARKEY', None, '38.23140', '-83.56030'), ('TRIPLETT', None, '38.29310', '-83.39610'), ('VALE', None, '38.19230', '-83.29560'), ('WAGNER', None, '38.13600', '-83.28410'), ('WAGNER STORE', None, '38.16750', '-83.26840'), ('WALTZ', None, '38.31600', '-83.44320')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'GAC033': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLYTHE', 718, '33.29250', '-82.19950'), ('GIRARD', 227, '33.04080', '-81.71130'), ('KEYSVILLE', 180, '33.23620', '-82.22950'), ('MIDVILLE', 457, '32.82110', '-82.23530'), ('SARDIS', 1171, '32.97300', '-81.76040'), ('WAYNESBORO', 5813, '33.09000', '-82.01370')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'KYC207': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CREELSBORO', None, '36.88330', '-85.20000'), ('FREEDOM', None, '36.91670', '-85.10000'), ('JABEZ', None, '36.98330', '-84.88330'), ('JAMESTOWN', 1624, '36.99310', '-85.07060'), ('OLGA', None, '36.95000', '-85.15000'), ('RUSSELL SPRINGS', 2399, '37.05040', '-85.07810'), ('SALEM', 769, '37.06670', '-84.98330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'GAC031': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADABELLE', None, '32.29140', '-81.92720'), ('AKINS', None, '32.30610', '-81.62060'), ('ARCOLA', None, '32.34330', '-81.60220'), ('BLITCH', None, '32.58940', '-81.78250'), ('BROOKLET', 1113, '32.37940', '-81.66330'), ('CLITO', None, '32.51220', '-81.75390'), ('DEERFIELD', None, '32.48830', '-81.78140'), ('DENMARK', None, '32.28440', '-81.72420'), ('DONEGAL', None, '32.56330', '-81.72420'), ('EMIT', None, '32.34360', '-81.74000'), ('EUREKA', None, '32.51750', '-81.71560'), ('GEORGIA SOUTHERN', None, '32.41330', '-81.78330'), ('GRIMSHAW', None, '32.39890', '-81.69890'), ('HOPEULIKIT', None, '32.52140', '-81.85060'), ('HUBERT', None, '32.30640', '-81.49190'), ('HUNTINGTON', None, '32.48750', '-81.77640'), ('IRONGATE', None, '32.41810', '-81.83750'), ('IVANHOE', None, '32.28390', '-81.47750'), ('JIMPS', None, '32.38560', '-81.83560'), ('LEEFIELD', None, '32.41810', '-81.61360'), ('NEVILS', None, '32.26360', '-81.76110'), ('NEW HOPE', None, '32.33810', '-81.89690'), ('OLNEY', None, '32.25530', '-81.46080'), ('OVERBROOK', None, '32.23750', '-81.81220'), ('PORTAL', 597, '32.53810', '-81.93250'), ('PRETORIA', None, '32.40970', '-81.73060'), ('REGISTER', 164, '32.36690', '-81.88420'), ('SOMERSET', None, '32.41190', '-81.76530'), ('STATESBORO', 22698, '32.44860', '-81.78330'), ('STILSON', None, '32.32580', '-81.55330'), ('WESTBROOKE', None, '32.42780', '-81.80720'), ('WESTCHESTER', None, '32.47640', '-81.79470'), ('WINDFIELD', None, '32.45000', '-81.74500')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'KYC201': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('MOUNT OLIVET', 289, '38.53180', '-84.03720')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'GAC037': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARLINGTON', 1602, '31.43780', '-84.72540'), ('BERMUDA', None, '31.48800', '-84.49200'), ('COMMISSARY HILL', None, '31.44870', '-84.66680'), ('CORDRAYS MILL', None, '31.58760', '-84.56350'), ('DICKEY', None, '31.55650', '-84.66080'), ('EDISON', 1340, '31.56070', '-84.73810'), ('HOLT', None, '31.50240', '-84.45380'), ('LEARY', 666, '31.48490', '-84.51280'), ('MORGAN', 1464, '31.53740', '-84.59940'), ('MOYE', None, '31.61010', '-84.77690'), ('OAK HILL', None, '31.60140', '-84.47730'), ('PARKSVILLE', None, '31.50840', '-84.76360'), ('TURMAN', None, '31.50010', '-84.72890'), ('WILLIAMSBURG', None, '31.46410', '-84.59850')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'KYC203': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEE LICK', None, '37.32840', '-84.50210'), ('BILLOWS', None, '37.17080', '-84.29670'), ('BLOSS', None, '37.21640', '-84.36000'), ('BOONE', None, '37.51750', '-84.31670'), ('BRODHEAD', 1193, '37.40290', '-84.41690'), ('BROMO', None, '37.31540', '-84.41870'), ('BUMMER', None, '37.42580', '-84.24610'), ('BURR', None, '37.34190', '-84.30500'), ('CEDARVILLE', 52, '37.21340', '-84.32880'), ('CLIMAX', None, '37.46940', '-84.22530'), ('CONWAY', None, '37.47780', '-84.33440'), ('COOKSBURG', None, '37.38720', '-84.18720'), ('DISPUTANTA', None, '37.48840', '-84.25560'), ('DONARO', None, '37.35140', '-84.21680'), ('DUDLEY STATION', None, '37.37090', '-84.25560'), ('FLAT ROCK', None, '37.36120', '-84.26630'), ('GAULEY', None, '37.31400', '-84.19720'), ('GOOCHLAND', None, '37.43410', '-84.18850'), ('GUM SULPHUR', None, '37.42690', '-84.45940'), ('HANSFORD', None, '37.26990', '-84.37050'), ('HIATT', None, '37.41660', '-84.37640'), ('HORSE LICK', None, '37.33130', '-84.15580'), ('HUMMEL', None, '37.39610', '-84.28590'), ('INDIAN LAKES PARK', None, '37.41140', '-84.46160'), ('JEP HILL', None, '37.35380', '-84.18110'), ('JOHNETTA', None, '37.41520', '-84.19940'), ('LAKE LINVILLE', None, '37.38800', '-84.34500'), ('LEVEL GREEN', None, '37.28110', '-84.42610'), ('LIVINGSTON', 228, '37.29850', '-84.21670'), ('LUNER', None, '37.23770', '-84.28080'), ('MARETBURG', None, '37.35540', '-84.38730'), ('MOUNT VERNON', 2592, '37.36310', '-84.34420'), ('MUELLERSVILLE', None, '37.38580', '-84.30710'), ('ORLANDO', None, '37.37160', '-84.26860'), ('OTTOWA', None, '37.36170', '-84.45670'), ('PINE HILL', None, '37.32870', '-84.26330'), ('PONGO', None, '37.22220', '-84.32340'), ('QUAIL', None, '37.32720', '-84.45470'), ('RENFRO VALLEY', None, '37.38780', '-84.33170'), ('ROBINET', None, '37.37590', '-84.17760'), ('ROCKFORD', None, '37.51460', '-84.26880'), ('ROUNDSTONE', None, '37.43860', '-84.31680'), ('SAND HILL', None, '37.28930', '-84.26340'), ('SAND SPRINGS', None, '37.29770', '-84.35840'), ('SINKS', None, '37.33650', '-84.23200'), ('SNIDER', None, '37.49680', '-84.32430'), ('SPIRO', None, '37.34230', '-84.39970'), ('WABO', None, '37.31320', '-84.38970'), ('WELLHOPE', None, '37.31700', '-84.31870'), ('WILDIE', None, '37.42330', '-84.30220'), ('WILLAILLA', None, '37.30510', '-84.46280'), ('WITHERS', None, '37.34590', '-84.22580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'GAC035': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('FLOVILLA', 652, '33.25300', '-83.89970'), ('JACKSON', 3934, '33.29210', '-83.96220'), ('JENKINSBURG', 203, '33.32490', '-84.03430')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TXC015': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELLVILLE', 3794, '29.94640', '-96.25870'), ('SAN FELIPE', 868, '29.79860', '-96.10560'), ('SEALY', 5248, '29.77370', '-96.15290'), ('WALLIS', 1172, '29.63130', '-96.06420')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'OKC021': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PUMPKIN CENTER', None, '35.71280', '-95.12690'), ('OAKS', 412, '36.16610', '-94.85440'), ('TAHLEQUAH', 14458, '35.91530', '-94.96970'), ('COOKSON', None, '35.71080', '-94.91970'), ('HULBERT', 543, '35.93250', '-95.14110'), ('ELDON', 991, '35.92810', '-94.84000'), ('LOST CITY', 809, '35.98780', '-95.13610'), ('PEGGS', None, '36.08080', '-95.09920'), ('SCRAPER', 475, '36.08940', '-94.85030')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'TXC017': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BULA', None, '33.91130', '-102.63750'), ('ENOCHS', None, '33.87300', '-102.75940'), ('MAPLE', None, '33.84860', '-102.89800'), ('MULESHOE', 4530, '34.22860', '-102.72810'), ('MULESHOE WILDLIFE REF.', None, '33.94690', '-102.75270'), ('NEEDMORE', None, '34.03300', '-102.73690'), ('PROGRESS', None, '34.28270', '-102.80940'), ('WEST CAMP', None, '34.28380', '-102.98190')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'MNC113': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARPENTERS CORNER', None, '48.15810', '-96.43720'), ('DAKOTA JUNCTION', None, '48.15890', '-96.19420'), ('GOODRIDGE', 98, '48.14470', '-95.80400'), ('HAZEL', None, '48.02000', '-96.11500'), ('HIGH LANDING', None, '48.04940', '-95.80830'), ('MAVIE', None, '48.14470', '-95.93860'), ('ST. HILAIRE', 272, '48.01320', '-96.21380'), ('THIEF RIVER FALLS', 8410, '48.11350', '-96.17540')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'TXC011': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLAUDE', 1313, '35.10730', '-101.36230'), ('GOODNIGHT', None, '35.03440', '-101.18583'), ('WASHBURN', None, '35.17670', '-101.57278'), ('WAYSIDE', None, '34.79280', '-101.54667')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC013': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAMPBELLTON', None, '28.75000', '-98.30000'), ('CHARLOTTE', 1637, '28.85920', '-98.70000'), ('CHRISTINE', 436, '28.78520', '-98.49860'), ('JOURDANTON', 3732, '28.91270', '-98.54140'), ('LEMING', None, '29.06660', '-98.48330'), ('LYTLE', 2383, '29.23410', '-98.79710'), ('PLEASANTON', 8266, '28.96460', '-98.49150'), ('POTEET', 3305, '29.03740', '-98.57510')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC019': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BANDERA', 957, '29.72480', '-99.07380'), ('LAKEHILLS', 4668, '29.60440', '-98.94290'), ('LOST MAPLES STATE PARK', None, '29.84000', '-99.59000'), ('MEDINA', 2960, '29.80000', '-99.25000'), ('PIPE CREEK', None, '29.71660', '-98.93330'), ('TARPLEY', None, '29.63330', '-99.28330'), ('VANDERPOOL', None, '29.73700', '-99.55280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TNC139': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARCHVILLE', None, '35.13140', '-84.52640'), ('BENTON', 1138, '35.17530', '-84.65280'), ('BIG FROG MOUNTAIN', None, '35.00060', '-84.53060'), ('CONASAUGA', None, '35.00250', '-84.73060'), ('DUCKTOWN', 427, '35.03580', '-84.38980'), ('PARKSVILLE', None, '35.09810', '-84.65220'), ('RELIANCE', None, '35.18610', '-84.56690'), ('TURTLETOWN', None, '35.12610', '-84.35500')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC129': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ELKHART', 2233, '37.00220', '-101.89450'), ('RICHFIELD', 48, '37.26570', '-101.78320'), ('ROLLA', 482, '37.11930', '-101.63060'), ('WILBURTON', None, '37.07000', '-101.76000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'TNC135': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LINDEN', 1015, '35.61120', '-87.84390'), ('LOBELVILLE', 915, '35.75100', '-87.79710')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC127': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURDICK', None, '38.56360', '-96.84530'), ('COUNCIL GROVE', 2321, '38.66110', '-96.49170'), ('DUNLAP', 81, '38.57640', '-96.36560'), ('DWIGHT', 330, '38.84440', '-96.59310'), ('LATIMER', 21, '38.73890', '-96.84530'), ('PARKERVILLE', 73, '38.76390', '-96.66110'), ('WHITE CITY', 518, '38.79560', '-96.73560'), ('WILSEY', 191, '38.63610', '-96.67500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'TNC137': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BYRDSTOWN', 903, '36.57400', '-85.13330')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC125': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BOLTON', None, '37.18000', '-95.80000'), ('CANEY', 2092, '37.01350', '-95.93150'), ('CHERRYVALE', 2386, '37.26800', '-95.55110'), ('COFFEYVILLE', 11021, '37.04080', '-95.63210'), ('COFFEYVILLE ARPT', None, '37.10000', '-95.56670'), ('DEARING', 415, '37.05910', '-95.71210'), ('ELK CITY', 305, '37.28910', '-95.91000'), ('HAVANA', 86, '37.09220', '-95.94130'), ('INDEPDENCE ARPT', None, '37.15000', '-95.78330'), ('INDEPENDENCE', 9846, '37.23150', '-95.71380'), ('LIBERTY', 95, '37.15610', '-95.59770'), ('SYCAMORE', None, '37.33000', '-95.72000'), ('TYRO', 226, '37.03670', '-95.82140')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'TNC131': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CLAYTON', None, '36.46670', '-89.25000'), ('CLOVERDALE', None, '36.23330', '-89.33330'), ('HORNBEAK', 435, '36.33140', '-89.29690'), ('OBION', 1134, '36.26080', '-89.19200'), ('RIVES', 331, '36.35710', '-89.04970'), ('SAMBURG', 260, '36.38230', '-89.35190'), ('SOUTH FULTON', 2517, '36.49200', '-88.88490'), ('TROY', 1273, '36.33950', '-89.16160'), ('UNION CITY', 10876, '36.42250', '-89.05100'), ('WOODLAND MILLS', 296, '36.47630', '-89.11260')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'KSC123': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ASHERVILLE', None, '39.40600', '-97.97650'), ('BELOIT', 4019, '39.46580', '-98.10780'), ('CAWKER CITY', 521, '39.50970', '-98.43210'), ('GLEN ELDER', 439, '39.49970', '-98.30620'), ('HUNTER', 77, '39.23560', '-98.39560'), ('SCOTTSVILLE', 21, '39.54310', '-97.95200'), ('SIMPSON', 114, '39.38630', '-97.93370'), ('TIPTON', 243, '39.33940', '-98.47110'), ('VICTOR', None, '39.24800', '-98.28350')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'TNC133': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LIVINGSTON', 3498, '36.38870', '-85.32750')], 'partOfState': '', 'wfo': 'OHX'}, -'GAC321': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALFORDS', None, '31.46090', '-83.92390'), ('ANDERSON CITY', None, '31.37080', '-83.85470'), ('BRIDGEBORO', None, '31.40090', '-83.97490'), ('CUFFIETOWN', None, '31.73440', '-83.81680'), ('DAVIS MILL', None, '31.75770', '-83.92000'), ('DOLES', None, '31.69840', '-83.88540'), ('EAST DOUGHERTY', None, '31.52270', '-83.98800'), ('GAMMAGE', None, '31.54050', '-83.87650'), ('GORDY', None, '31.47980', '-83.88010'), ('ISABELLA', None, '31.56800', '-83.85390'), ('LIBERTY HILL', None, '31.39970', '-83.93990'), ('LIVINGSTON', None, '31.41480', '-83.94340'), ('MINTON', None, '31.35390', '-83.81890'), ('OAKFIELD', None, '31.77630', '-83.97070'), ('PARKERVILLE', None, '31.43910', '-83.93080'), ('POULAN', 946, '31.51310', '-83.78990'), ('POWELLTOWN', None, '31.40820', '-83.78470'), ('PRITCHETTS', None, '31.36350', '-83.95590'), ('RED ROCK', None, '31.58120', '-83.93640'), ('SCOOTERVILLE', None, '31.38060', '-83.69010'), ('SHINGLER', None, '31.57780', '-83.78450'), ('SUMNER', 309, '31.51220', '-83.74000'), ('SYLVESTER', 5990, '31.52860', '-83.83650'), ('SYLVESTER A/P', None, '31.55620', '-83.89840'), ('TEMPY', None, '31.44730', '-83.81820'), ('TERRELL', None, '31.61660', '-83.74520'), ('WARWICK', 430, '31.82980', '-83.92040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'VAC101': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AYLETT', None, '37.77000', '-77.12000'), ('BEULAHVILLE', None, '37.85510', '-77.17900'), ('CALNO', None, '37.81310', '-77.30170'), ('CENTRAL GARAGE', None, '37.74420', '-77.13150'), ('COHOKE', None, '37.57940', '-76.94670'), ('COOKE', None, '37.57920', '-76.94640'), ('DUANE FORK', None, '37.87440', '-77.23070'), ('ENFIELD', None, '37.74530', '-77.21860'), ('EPWORTH', None, '37.79080', '-77.21220'), ('ETNA MILLS', None, '37.76560', '-77.26610'), ('GLOBE', None, '37.81220', '-77.20000'), ('KING WILLIAM', None, '37.68720', '-77.01360'), ('LANESVILLE', None, '37.61440', '-76.97890'), ('MANGOHICK', None, '37.81000', '-77.27350'), ('MANQUIN', None, '37.70890', '-77.15420'), ('PALLS', None, '37.64430', '-77.05470'), ('POLLARDS CORNER', None, '37.79010', '-77.18500'), ('ROMANCOKE', None, '37.57780', '-76.84520'), ('ROSE GARDEN', None, '37.63250', '-76.93450'), ('RUMFORD', None, '37.72450', '-77.08980'), ('TURPIN', None, '37.76110', '-77.14720'), ('UPSHAW', None, '37.79390', '-77.14720'), ('WEST POINT', 2866, '37.55230', '-76.80030')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'GAC147': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOWERSVILLE', 334, '34.37220', '-83.08330'), ('BOWERSVILLE', 334, '34.37220', '-83.08330'), ('HARTWELL', 4188, '34.35370', '-82.93200'), ('HARTWELL', 4188, '34.35370', '-82.93200'), ('NUBERG', None, '34.26440', '-82.89500'), ('REED CREEK', 2148, '34.43660', '-82.91510'), ('REED CREEK', 2148, '34.43660', '-82.91510'), ('VANNA', None, '34.24140', '-83.07170')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'VAC103': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALFONSO', None, '37.80910', '-76.50830'), ('BELLE ISLE STATE PARK', None, '37.77920', '-76.59310'), ('BERTRAND', None, '37.66890', '-76.51780'), ('BROOK VALE', None, '37.75930', '-76.42080'), ('CHRIST CHURCH', None, '37.68190', '-76.42340'), ('FOXWELLS', None, '37.62920', '-76.31140'), ('KILMARNOCK', 1244, '37.71450', '-76.38270'), ('LANCASTER', None, '37.76990', '-76.46730'), ('LIVELY', None, '37.77770', '-76.51390'), ('MILLENBECK', None, '37.66970', '-76.48890'), ('MOLLUSK', None, '37.72680', '-76.53690'), ('MORATTICO', None, '37.80000', '-76.61000'), ('NUTTSVILLE', None, '37.79340', '-76.55120'), ('SENORA', None, '37.67640', '-76.52140'), ('SLABTOWN', None, '37.67580', '-76.49710'), ('SOMERS', None, '37.78810', '-76.56670'), ('WEEMS', None, '37.65410', '-76.44990'), ('WHITE STONE', 358, '37.64500', '-76.39160'), ('WINDMILL POINT', None, '37.61440', '-76.27960')], 'partOfState': '', 'wfo': 'AKQ'}, -'GAC145': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HAMILTON', 307, '32.75890', '-84.87560'), ('PINE MOUNTAIN', 1141, '32.86430', '-84.85310'), ('SHILOH', 423, '32.81240', '-84.69780'), ('WAVERLY HALL', 709, '32.68400', '-84.73820')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'VAC105': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CUMBERLAND GAP', None, '36.60280', '-83.66530'), ('DRYDEN', 1253, '36.77560', '-82.94310'), ('EWING', 436, '36.63470', '-83.43220'), ('JASPER', None, '36.76640', '-82.82420'), ('JONESVILLE', 995, '36.68820', '-83.11550'), ('PATTONSVILLE', None, '36.69560', '-82.94310'), ('PENNINGTON GAP', 1781, '36.75960', '-83.02890'), ('ROSE HILL', 714, '36.69060', '-83.28920'), ('ST. CHARLES', 159, '36.80390', '-83.05790')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'GAC143': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BREMEN', 4579, '33.70840', '-85.15230'), ('BUCHANAN', 941, '33.80120', '-85.18060'), ('TALLAPOOSA', 2789, '33.75250', '-85.29490'), ('WACO', 469, '33.70300', '-85.18510')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'VAC107': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALDIE', None, '38.97560', '-77.64170'), ('ARCOLA', None, '38.95170', '-77.53440'), ('ASHBURN', None, '39.04140', '-77.48100'), ('BELMONT', None, '39.06470', '-77.51030'), ('BLUEMONT', None, '39.11110', '-77.83420'), ('COUNTRYSIDE', None, '39.05240', '-77.41760'), ('DULLES INTERNATIONAL AIRP', None, '38.94440', '-77.45560'), ('GLEEDSVILLE', None, '39.04920', '-77.60500'), ('HILLSBORO', 96, '39.19790', '-77.72450'), ('HUGHESVILLE', None, '39.09970', '-77.66000'), ('LEESBURG', 28311, '39.10470', '-77.55610'), ('LOVETTSVILLE', 853, '39.27410', '-77.63900'), ('LUCKETTS', None, '39.21560', '-77.53470'), ('MIDDLEBURG', 632, '38.97100', '-77.73980'), ('PHILOMONT', None, '39.05610', '-77.74060'), ('PURCELLVILLE', 3584, '39.13800', '-77.71150'), ('ROUND HILL', 500, '39.13350', '-77.77050'), ('STERLING PARK', None, '39.00130', '-77.40830'), ('TAYLORSTOWN', None, '39.25420', '-77.57500'), ('UPPERVILLE', None, '38.99390', '-77.88500'), ('WATERFORD', None, '39.18670', '-77.61030')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'GAC141': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('SPARTA', 1522, '33.27710', '-82.97160')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'VAC109': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('APPLE GROVE', None, '37.89010', '-77.89810'), ('BOSWELLS TAVERN', None, '38.07070', '-78.18600'), ('BUMPASS', None, '37.96380', '-77.73730'), ('BYRD MILL', None, '37.99200', '-78.08220'), ('CUCKOO', None, '37.95230', '-77.90050'), ('DABNEYS', None, '37.76580', '-77.80020'), ('FERNCLIFF', None, '37.93330', '-78.10960'), ('FREDERICKS HALL', None, '37.98580', '-77.82300'), ('GREEN SPRINGS', None, '38.08610', '-78.11260'), ('GUM SPRING', None, '37.77540', '-77.89700'), ('LOCUST CREEK', None, '37.86730', '-77.78790'), ('LOUISA', 1401, '38.01920', '-77.99950'), ('LOUISA AIRPORT', None, '38.01380', '-77.98090'), ('MINERAL', 424, '38.00730', '-77.90660'), ('ORCHID', None, '37.82900', '-77.89540'), ('PENDLETON', None, '37.99470', '-77.89830'), ('TREVILIANS', None, '38.05040', '-78.07370'), ('VAWTER CORNER', None, '38.12900', '-78.01380'), ('WALDROP', None, '38.07360', '-78.20190'), ('WARES CROSSROADS', None, '38.07960', '-77.87980'), ('YANCEYVILLE', None, '37.91650', '-77.98640'), ('ZION CROSSROADS', None, '37.97060', '-78.21940')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'PRC057': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CORAZON', None, '17.99550', '-66.08360'), ('GUAYAMA', 21624, '17.97820', '-66.11100'), ('JOBOS', 3475, '17.96250', '-66.16570'), ('OLIMPO', 2493, '18.00470', '-66.10950')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC054': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('FLORIDA', 5652, '18.36440', '-66.56150')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC055': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('FUIG', 1204, '17.98830', '-66.91770'), ('GUANICA', None, '17.97040', '-66.93070'), ('MARIA ANTONIA', None, '17.98030', '-66.88970')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC053': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('FAJARDO', 33286, '18.33500', '-65.65970'), ('LUIS M. CINTRON', None, '18.30160', '-65.63890')], 'partOfState': '', 'wfo': 'SJU'}, -'GAC149': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CENTRALHATCHEE', 383, '33.36840', '-85.10420'), ('CORINTH', 213, '33.23030', '-84.94400'), ('EPHESUS', 388, '33.40810', '-85.26180'), ('FRANKLIN', 902, '33.28140', '-85.09770')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'NDC075': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('GLENBURN', 374, '48.51310', '-101.22050'), ('GRANO', 9, '48.61700', '-101.58650'), ('LORAINE', 19, '48.86710', '-101.56730'), ('MOHALL', 812, '48.76600', '-101.51060'), ('NORMA', None, '48.70000', '-101.76670'), ('SHERWOOD', 255, '48.96150', '-101.63310'), ('TOLLEY', 63, '48.73050', '-101.82650')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDC077': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ABERCROMBIE', 296, '46.44780', '-96.73000'), ('BARNEY', 69, '46.26650', '-96.99920'), ('BARRIE', None, '46.56890', '-97.12220'), ('BLACKMER', None, '45.97890', '-96.60030'), ('CHRISTINE', 153, '46.57530', '-96.80670'), ('COLFAX', 91, '46.47020', '-96.87400'), ('DWIGHT', 75, '46.30290', '-96.73860'), ('FAIRMOUNT', 406, '46.05450', '-96.60270'), ('GALCHUTT', None, '46.38750', '-96.80920'), ('GREAT BEND', 118, '46.15450', '-96.80110'), ('HANKINSON', 1058, '46.07150', '-96.89380'), ('LAMARS', None, '45.96470', '-96.69000'), ('LIDGERWOOD', 738, '46.07490', '-97.14630'), ('MANTADOR', 71, '46.16590', '-96.97780'), ('MOORETON', 204, '46.26910', '-96.87630'), ('SONORA', None, '46.06670', '-96.74110'), ('STILES', None, '46.07530', '-97.05220'), ('WAHPETON', 8586, '46.27100', '-96.61010'), ('WALCOTT', 189, '46.55040', '-96.93700'), ('WYNDMERE', 533, '46.26420', '-97.13100')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'NDC071': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BROCKET', 65, '48.21120', '-98.35620'), ('CAMP GRAFTON', None, '48.05690', '-98.92060'), ('CHURCHS FERRY', 77, '48.26860', '-99.19420'), ('CRARY', 149, '48.07150', '-98.64000'), ('DERRICK', None, '48.47690', '-98.55720'), ('DEVILS LAKE', 7222, '48.11280', '-98.87410'), ('DOYON', None, '48.05280', '-98.53640'), ('EDMORE', 256, '48.41270', '-98.45320'), ('GARSKE', None, '48.35780', '-98.87690'), ('HAMPDEN', 60, '48.53950', '-98.65450'), ('LAWTON', 42, '48.30290', '-98.36740'), ('PENN', None, '48.22170', '-99.08860'), ('SOUTHAM', None, '48.15830', '-98.55170'), ('STARKWEATHER', 157, '48.45230', '-98.87770'), ('WEBSTER', None, '48.28220', '-98.87580')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NCC139': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BOB WHITE FORK', None, '36.19360', '-76.20830'), ('ELIZABETH CITY', 17188, '36.29600', '-76.22060'), ('FROG ISLAND', None, '36.14030', '-76.10470'), ('GLEN COVE', None, '36.16810', '-76.07220'), ('LISTERS CORNER', None, '36.14140', '-76.17170'), ('LYNCHS CORNER', None, '36.42320', '-76.42030'), ('MORGANS CORNER', None, '36.41740', '-76.34890'), ('NIXONTON', None, '36.19970', '-76.27190'), ('OKISKO', None, '36.25920', '-76.35500'), ('PARKVILLE', None, '36.29140', '-76.39940'), ('PASQUOTANK', None, '36.26720', '-76.33870'), ('RABBIT CORNER', None, '36.24390', '-76.32220'), ('SYMONDS CREEK', None, '36.19250', '-76.23170'), ('WEEKSVILLE', None, '36.20730', '-76.17000')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCC137': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALLIANCE', 781, '35.14450', '-76.80790'), ('ARAPAHOE', 436, '35.01910', '-76.82730'), ('BAYBORO', 741, '35.14390', '-76.76870'), ('MESIC', 257, '35.20450', '-76.64830'), ('MINNESOTT BEACH', 311, '34.98030', '-76.81870'), ('ORIENTAL', 875, '35.03470', '-76.68460'), ('STONEWALL', 285, '35.13750', '-76.74150'), ('VANDEMERE', 289, '35.18910', '-76.66490')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC135': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CARR', None, '36.22000', '-79.22000'), ('CARRBORO', 16782, '35.91530', '-79.08380'), ('CHAPEL HILL', 48715, '35.92760', '-79.04060'), ('EFLAND', None, '36.06000', '-79.17000'), ('HILLSBOROUGH', 5446, '36.07120', '-79.10270'), ('SCHLEY', None, '36.15000', '-79.07000'), ('TEER', None, '35.95000', '-79.23000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'UTC033': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('GARDEN CITY', 357, '41.93410', '-111.40970'), ('LAKETOWN', 188, '41.82230', '-111.31770'), ('LAKOTA', None, '41.98000', '-111.40000'), ('MEADOWVILLE', None, '41.85000', '-111.40000'), ('PICKELVILLE', None, '41.92000', '-111.38000'), ('RANDOLPH', 483, '41.66450', '-111.18270'), ('WOODRUFF', 194, '41.52290', '-111.16360')], 'partOfState': '', 'wfo': 'SLC'}, -'NCC133': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CAMP LEJEUNE CENTRAL', None, '34.69580', '-77.36650'), ('HALF MOON', 6645, '34.82700', '-77.46650'), ('HOLLY RIDGE', 831, '34.49260', '-77.55580'), ('JACKSONVILLE', 66715, '34.76440', '-77.40410'), ('NEW RIVER STATION', None, '34.70970', '-77.44250'), ('PINEY GREEN', 11658, '34.75440', '-77.32160'), ('PUMPKIN CENTER', 2228, '34.78040', '-77.36660'), ('RICHLANDS', 928, '34.89980', '-77.54780'), ('SNEADS FERRY', 2248, '34.55370', '-77.37870'), ('SWANSBORO', 1426, '34.69050', '-77.12890')], 'partOfState': '', 'wfo': 'MHX'}, -'TXC301': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('MENTONE', None, '31.71000', '-103.60000'), ('RED BLUFF LAKE', None, '31.94970', '-103.88190'), ('SLASH RANCH', None, '31.82880', '-103.60020')], 'partOfState': '', 'wfo': 'MAF'}, -'OKC079': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('POTEAU', 7939, '35.05360', '-94.62330'), ('OCTAVIA', None, '34.52670', '-94.70280'), ('BIG CEDAR', None, '34.64580', '-94.64860'), ('MUSE', None, '34.67190', '-94.76250'), ('WHITESBORO', None, '34.69250', '-94.88500'), ('TALIHINA', 1211, '34.75140', '-95.04780'), ('HODGEN', None, '34.84170', '-94.63110'), ('SUMMERFIELD', None, '34.89860', '-94.86580'), ('HEAVENER', 3201, '34.88920', '-94.60060'), ('FANSHAWE', 384, '34.95080', '-94.90810'), ('HOWE', 697, '34.95110', '-94.63690'), ('WISTER', 1002, '34.96720', '-94.72440'), ('SHADY POINT', 848, '35.13000', '-94.65830'), ('CAMERON', 312, '35.13390', '-94.53440'), ('MILTON', None, '35.16170', '-94.86330'), ('PANAMA', 1362, '35.16720', '-94.67220'), ('BOKOSHE', 450, '35.18640', '-94.78560'), ('ROCK ISLAND', 709, '35.18220', '-94.47360'), ('SPIRO', 2227, '35.24110', '-94.61970'), ('POCOLA', 3994, '35.23110', '-94.47780'), ('SCULLYVILLE', None, '35.25000', '-94.57000'), ('BRADEN', None, '35.28420', '-94.50110'), ('COWLINGTON', 133, '35.27530', '-94.72830'), ('ARKOMA', 2180, '35.35440', '-94.44390'), ('HONOBIA', None, '34.53890', '-94.93720')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKC075': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BABBS', None, '34.95000', '-99.06100'), ('COLD SPRINGS', None, '34.80000', '-99.00000'), ('COOPERTON', 20, '34.86330', '-98.87780'), ('GOTEBO', 272, '35.07110', '-98.87380'), ('HOBART', 3997, '35.02620', '-99.09190'), ('LONE WOLF', 500, '34.99010', '-99.24570'), ('LUGERT', None, '34.90000', '-99.27000'), ('MOUNTAIN PARK', 390, '34.69850', '-98.95160'), ('MOUNTAIN VIEW', 880, '35.09870', '-98.75040'), ('ROOSEVELT', 280, '34.84800', '-99.02200'), ('SADDLE MOUNTAIN', None, '34.87000', '-98.70000'), ('SNYDER', 1509, '34.65620', '-98.95220'), ('TOM STEED RESERVOIR', None, '34.77000', '-99.00000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OKC077': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('WILBURTON', 2972, '34.91860', '-95.30890'), ('YANUSH', None, '34.70970', '-95.31360'), ('HIGGINS', None, '34.81140', '-95.43330'), ('BENGAL', None, '34.83280', '-95.06170'), ('DAMON', None, '34.85500', '-95.30750'), ('GOWEN', None, '34.88140', '-95.47670'), ('PANOLA', None, '34.92860', '-95.21310'), ('RED OAK', 581, '34.95080', '-95.08000')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKC071': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BLACKWELL', 7668, '36.80160', '-97.29850'), ('BRAMAN', 244, '36.92290', '-97.33370'), ('CHILOCCO', None, '36.98000', '-97.07000'), ('EDDY', None, '36.73000', '-97.45000'), ('HARDY', None, '36.98000', '-96.78000'), ('KAW CITY', 372, '36.76490', '-96.86300'), ('KILDARE', 92, '36.80900', '-97.04960'), ('NARDIN', None, '36.80630', '-97.44800'), ('NEWKIRK', 2243, '36.88170', '-97.05540'), ('PONCA CITY', 25919, '36.72360', '-97.06880'), ('THREE SANDS', None, '36.60000', '-97.28000'), ('TONKAWA', 3299, '36.68280', '-97.30780')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'OKC073': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CASHION', 635, '35.80330', '-97.67630'), ('DOVER', 367, '35.98160', '-97.91070'), ('HENNESSEY', 2058, '36.10590', '-97.89800'), ('KINGFISHER', 4380, '35.84460', '-97.93890'), ('LACEY', None, '36.12000', '-98.08000'), ('LOYAL', 81, '35.97280', '-98.11730'), ('OMEGA', None, '35.86900', '-98.19600')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'TXC161': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FAIRFIELD', 3094, '31.71880', '-96.16550'), ('KIRVIN', 122, '31.76680', '-96.32980'), ('STREETMAN', 203, '31.87590', '-96.32390'), ('TEAGUE', 4557, '31.63040', '-96.28160'), ('WORTHAM', 1082, '31.79000', '-96.46080')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC181': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HENDRIX', 79, '33.77470', '-96.40800'), ('BELLS', 1190, '33.62000', '-96.41290'), ('COLLINSVILLE', 1235, '33.55970', '-96.91000'), ('DENISON', 22773, '33.75590', '-96.56410'), ('DORCHESTER', 109, '33.53010', '-96.69190'), ('GUNTER', 1230, '33.45080', '-96.74190'), ('HOWE', 2478, '33.51280', '-96.61310'), ('KNOLLWOOD', 375, '33.68900', '-96.61850'), ('LUELLA', None, '33.56930', '-96.54250'), ('POTTSBORO', 1579, '33.77220', '-96.67160'), ('SADLER', 404, '33.68310', '-96.84570'), ('SHERMAN', 35082, '33.61830', '-96.60950'), ('SOUTHMAYD', 992, '33.62140', '-96.72010'), ('TIOGA', 754, '33.47220', '-96.91720'), ('TOM BEAN', 941, '33.52070', '-96.48370'), ('VAN ALSTYNE', 2502, '33.41980', '-96.57350'), ('WHITESBORO', 3760, '33.65950', '-96.90340'), ('WHITEWRIGHT', 1740, '33.51110', '-96.39470')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC165': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ASHMORE', None, '32.92000', '-102.28000'), ('CEDAR LAKE', None, '32.81780', '-102.29580'), ('FAIRVIEW', 2644, '32.70000', '-102.54000'), ('FAIRVIEW', 2644, '32.69670', '-102.53610'), ('HIGGINBOTHAM', None, '32.90000', '-102.99000'), ('LOOP', None, '32.92000', '-102.42000'), ('PAYNES CORNER', None, '32.73000', '-102.80000'), ('SEAGRAVES', 2334, '32.94150', '-102.56490'), ('SEMINOLE', 5910, '32.71830', '-102.65260')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC167': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BACLIFF', 6962, '29.50820', '-94.99190'), ('BAYOU VISTA', 1644, '29.32530', '-94.93780'), ('CLEAR LAKE SHORES', 1205, '29.54820', '-95.03390'), ('DICKINSON', 17093, '29.45370', '-95.06630'), ('FRIENDSWOOD', 29037, '29.51230', '-95.19770'), ('HITCHCOCK', 6386, '29.31570', '-95.01730'), ('JAMAICA BEACH', 1075, '29.19120', '-94.97980'), ('KEMAH', 2330, '29.52880', '-95.02050'), ('LA MARQUE', 13682, '29.36700', '-94.99330'), ('LEAGUE CITY', 45444, '29.48560', '-95.10750'), ('SAN LEON', 4365, '29.48860', '-94.93830'), ('SANTA FE', 9548, '29.38200', '-95.09830'), ('TEXAS CITY', 41521, '29.40940', '-94.95800')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC169': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRAHAM', 8716, '33.15050', '-101.46910'), ('JUSTICEBURG', None, '33.04270', '-101.20240'), ('LAKE ALAN HENRY', None, '33.06440', '-101.04830'), ('POST', 3708, '33.19090', '-101.38130'), ('SOUTHLAND', None, '33.36190', '-101.54970')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'OKC097': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PRYOR', None, '36.30830', '-95.31670'), ('MAZIE', 88, '36.10750', '-95.36310'), ('MURPHY', 231, '36.14690', '-95.24440'), ('CHOUTEAU', 1931, '36.18580', '-95.34280'), ('LOCUST GROVE', 1366, '36.20000', '-95.16750'), ('ROSE', None, '36.21940', '-95.02940'), ('SALINA', 1422, '36.29280', '-95.15310'), ('SPAVINAW', 563, '36.39110', '-95.04640'), ('STRANG', 100, '36.41060', '-95.13060'), ('ADAIR', 704, '36.43670', '-95.27110'), ('PENSACOLA', 71, '36.45500', '-95.13030'), ('LANGLEY', 669, '36.46390', '-95.04750'), ('DISNEY', 226, '36.48110', '-95.01470')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'OKC095': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ANTIOCH', None, '34.10000', '-96.85000'), ('KINGSTON', 1390, '34.00220', '-96.72170'), ('LEBANON', None, '33.98600', '-96.91300'), ('LITTLE CITY', None, '34.08000', '-96.62000'), ('MADILL', 3410, '34.09150', '-96.77230'), ('MCBRIDE', None, '33.93590', '-96.63600'), ('OAKLAND', 674, '34.10000', '-96.79310'), ('RUSSETT', None, '34.18000', '-96.80000'), ('WILLIS', None, '33.87000', '-96.83000'), ('WOODVILLE', 69, '33.96860', '-96.65490')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'OKC093': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('AMES', 199, '36.24780', '-98.18640'), ('BADO', None, '36.22000', '-98.73000'), ('CEDAR SPRINGS', None, '36.22000', '-98.58000'), ('CHESTER', None, '36.22000', '-98.92000'), ('CLEO SPRINGS', 326, '36.40690', '-98.43950'), ('DANE', None, '36.22000', '-98.62000'), ('FAIRVIEW', 2733, '36.26940', '-98.47630'), ('ISABELLA', None, '36.23000', '-98.33000'), ('MENO', 195, '36.38780', '-98.17730'), ('ORIENTA', None, '36.35000', '-98.48000'), ('ORION', None, '36.22000', '-98.78000'), ('RINGWOOD', 424, '36.38220', '-98.24080')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'VAC550': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOWERS HILL', None, '36.78410', '-76.42340'), ('CHESAPEAKE AIRPORT', None, '36.66310', '-76.32230'), ('DEEP CREEK', None, '36.74070', '-76.34440'), ('FENTRESS', None, '36.69800', '-76.18420'), ('GREAT BRIDGE', None, '36.71280', '-76.23820'), ('HERBERTS CORNER', None, '36.72750', '-76.30250'), ('HICKORY', None, '36.66400', '-76.22590'), ('MOUNT PLEASANT', None, '36.71150', '-76.13420'), ('NORTHWEST', None, '36.56370', '-76.19940'), ('PORTLOCK', None, '36.78500', '-76.27780'), ('SOUTH NORFOLK', None, '36.80000', '-76.28330'), ('WESTERN BRANCH', None, '36.82520', '-76.40650')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'GAC079': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ROBERTA', 808, '32.71970', '-84.01090')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'OKC099': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('DAVIS', 2610, '34.48090', '-97.13050'), ('DOUGHERTY', 224, '34.39980', '-97.05110'), ('DRAKE', None, '34.40000', '-96.95000'), ('HENNEPIN', None, '34.50990', '-97.34670'), ('HICKORY', 87, '34.55600', '-96.85540'), ('NEBO', None, '34.37000', '-96.95000'), ('SCULLIN', None, '34.52000', '-96.87000'), ('SULPHUR', 4794, '34.50670', '-96.97700')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'KYC025': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALTRO', None, '37.38250', '-83.38220'), ('BARWICK', None, '37.36820', '-83.36530'), ('BAYS', None, '37.64750', '-83.24780'), ('BEECH', None, '37.37030', '-83.42890'), ('BUSH BRANCH', None, '37.37660', '-83.39070'), ('CAMP LEWIS', None, '37.58500', '-83.18770'), ('CANOE', None, '37.44970', '-83.44920'), ('CHENOWEE', None, '37.54340', '-83.48020'), ('CLAYHOLE', None, '37.46670', '-83.29750'), ('COPEBRANCH', None, '37.51750', '-83.52650'), ('COPLAND', None, '37.45510', '-83.37320'), ('CROCKETTSVILLE', None, '37.40320', '-83.46940'), ('CURT', None, '37.49590', '-83.39460'), ('DAISYDELL', None, '37.53810', '-83.12160'), ('DALESBURG', None, '37.36730', '-83.49200'), ('DUMONT', None, '37.53050', '-83.36070'), ('ELKATAWA', None, '37.55810', '-83.42750'), ('EVANSTON', None, '37.54190', '-83.03130'), ('FIVEMILE', None, '37.59380', '-83.40890'), ('FLINTVILLE', None, '37.48540', '-83.30090'), ('FROZEN CREEK', None, '37.59190', '-83.42220'), ('GENTRY', None, '37.56270', '-83.44290'), ('GUAGE', None, '37.59690', '-83.19780'), ('GUERRANT', None, '37.50810', '-83.49780'), ('HADDIX', None, '37.48810', '-83.34890'), ('HAGINSVILLE', None, '37.56600', '-83.29620'), ('HARDSHELL', None, '37.45860', '-83.25220'), ('HOUSTON', None, '37.44560', '-83.51690'), ('HOWARD CREEK', None, '37.46840', '-83.38000'), ('INVERNESS', None, '37.53680', '-83.36690'), ('JACKSON', 2490, '37.55770', '-83.37970'), ('JETTS CREEK', None, '37.49950', '-83.54340'), ('KECK', None, '37.60620', '-83.36240'), ('LAMBRIC', None, '37.56940', '-83.13140'), ('LAWSON', None, '37.60160', '-83.45860'), ('LITTLE', None, '37.44030', '-83.36190'), ('LOST CREEK', None, '37.48310', '-83.32530'), ('LUNAH', None, '37.56330', '-83.17730'), ('MOCT', None, '37.66070', '-83.34620'), ('MORRIS FORK', None, '37.37700', '-83.52180'), ('MOUNTAIN VALLEY', None, '37.66220', '-83.26940'), ('NED', None, '37.40940', '-83.27190'), ('NOBLE', None, '37.45030', '-83.19000'), ('NOCTOR', None, '37.56060', '-83.33750'), ('OAKDALE', None, '37.55450', '-83.51500'), ('PAXTON', None, '37.67560', '-83.41010'), ('PORTSMOUTH', None, '37.53170', '-83.31440'), ('PRESS', None, '37.52780', '-83.26940'), ('QUICKSAND', None, '37.53030', '-83.34470'), ('ROCK LICK', None, '37.65210', '-83.31170'), ('ROUSSEAU', None, '37.59390', '-83.23060'), ('SALDEE', None, '37.45270', '-83.38010'), ("SEBASTIAN'S BRANCH", None, '37.43670', '-83.47280'), ('SEWELL', None, '37.62690', '-83.38890'), ('SIKES', None, '37.54240', '-83.24030'), ('SIMPSON', None, '37.66830', '-83.37100'), ('SMITH BRANCH', None, '37.52680', '-83.31400'), ('STEVENSON', None, '37.57990', '-83.26330'), ('TALBERT', None, '37.42250', '-83.45970'), ('TAULBEE', None, '37.64330', '-83.33030'), ('TURKEY', None, '37.47940', '-83.50780'), ('VAIL', None, '37.50990', '-82.99960'), ('VALJEAN', None, '37.33860', '-83.53810'), ('VANCLEVE', None, '37.62830', '-83.41390'), ('WAR CREEK', None, '37.59410', '-83.48510'), ('WATTS', None, '37.44330', '-83.31010'), ('WHICK', None, '37.42310', '-83.37690'), ('WIDECREEK', None, '37.61100', '-83.53220'), ('WILHURST', None, '37.63390', '-83.41500'), ('WILSTACY', None, '37.52870', '-83.28140'), ('WOLF COAL', None, '37.39860', '-83.37890'), ('YEADON', None, '37.55130', '-83.45810')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC027': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BIG SPRING', None, '37.80000', '-86.17000'), ('CLOVERPORT', 1256, '37.83090', '-86.62990'), ('CONSTANTINE', None, '37.66670', '-86.25000'), ('CUSTER', None, '37.73330', '-86.25000'), ('DYER', None, '37.70000', '-86.23000'), ('FALLS OF ROUGH', None, '37.60000', '-86.55000'), ('GARFIELD', None, '37.78330', '-86.35000'), ('GLEN DEAN', None, '37.65000', '-86.55000'), ('HARDINSBURG', 2345, '37.77610', '-86.45500'), ('HARNED', None, '37.75000', '-86.41670'), ('HUDSON', None, '37.65000', '-86.28330'), ('IRVINGTON', 1257, '37.87890', '-86.28470'), ('MADRID', None, '37.61670', '-86.35000'), ('MCDANIELS', None, '37.60000', '-86.43330'), ('MCQUADY', None, '37.70000', '-86.51670'), ('MOOLEYVILLE', None, '38.01670', '-86.46670'), ('ROFF', None, '37.65000', '-86.43330'), ('STEPHENSPORT', None, '37.91670', '-86.53330'), ('UNION STAR', None, '37.93330', '-86.45000'), ('WEBSTER', None, '37.88330', '-86.33330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYC021': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DANVILLE', 15477, '37.64210', '-84.77210'), ('JUNCTION CITY', 2184, '37.58550', '-84.78900'), ('MITCHELLSBURG', None, '37.60000', '-84.95000'), ('PARKSVILLE', None, '37.60000', '-84.90000'), ('PERRYVILLE', 763, '37.64990', '-84.95140')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYC023': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AUGUSTA', 1204, '38.77250', '-84.00160'), ('BROOKSVILLE', 589, '38.68250', '-84.06670'), ('FOSTER', None, '38.79980', '-84.21390')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'NYC079': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BREWSTER', 2162, '41.39680', '-73.61510'), ('BREWSTER HILL', 2226, '41.42380', '-73.60480'), ('CARMEL', None, '41.41450', '-73.68380'), ('COLD SPRING', 1983, '41.41880', '-73.95490'), ('FAHNESTOCK STATE PARK', None, '41.45000', '-73.83000'), ('LAKE CARMEL', 8663, '41.46120', '-73.67030'), ('MAHOPAC', 8478, '41.36950', '-73.74160'), ('PEACH LAKE', 1671, '41.36740', '-73.57840'), ('PUTNAM LAKE', 3855, '41.47770', '-73.55000'), ('PUTNAM VALLEY', None, '41.34000', '-73.87000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'VAC037': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ABILENE', None, '37.13330', '-78.55000'), ('ASPEN', None, '37.03330', '-78.83330'), ('CHARLOTTE COURT HOUSE', 404, '37.05000', '-78.63330'), ('CULLEN', None, '37.11670', '-78.65000'), ('DRAKES BRANCH', 504, '37.00000', '-78.60000'), ('DRAKES BRANCH', 504, '36.99280', '-78.60100'), ('KEYSVILLE', 817, '37.03890', '-78.48150'), ('MADISONVILLE', None, '37.18330', '-78.68330'), ('PHENIX', 200, '37.08330', '-78.75000'), ('RED HOUSE', None, '37.18330', '-78.80000'), ('REDOAK', None, '36.78330', '-78.61670'), ('SAXE', None, '36.93330', '-78.66670'), ('WREN', None, '37.11670', '-78.85000'), ('WYLLIESBURG', None, '36.85000', '-78.58330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'TXC303': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABERNATHY', 2839, '33.83180', '-101.84460'), ('DOWNTOWN LUBBOCK', None, '33.58770', '-101.84580'), ('IDALOU', 2157, '33.66290', '-101.68190'), ('LUBBOCK', 199564, '33.57590', '-101.87540'), ('LUBBOCK', 199564, '33.58380', '-101.85770'), ('LUBBOCK INT. AIRPORT', None, '33.65380', '-101.81380'), ('LUBBOCK SOUTH PLAINS MALL', None, '33.53500', '-101.92270'), ('NEW DEAL', 708, '33.73130', '-101.83810'), ('RANSOM CANYON', 1011, '33.52960', '-101.68250'), ('REESE CENTER', 42, '33.59250', '-102.02690'), ('SHALLOWATER', 2086, '33.69010', '-101.99230'), ('SLATON', 6109, '33.43910', '-101.64230'), ('SLIDE', None, '33.41380', '-101.92940'), ('TEXAS TECH UNIV.', None, '33.58380', '-101.85770'), ('WOLFFORTH', 2554, '33.50800', '-102.01030'), ('WOODROW', None, '33.44660', '-101.84360')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'KYC029': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BARDSTOWN JUNCTION', None, '37.93330', '-85.70000'), ('BROOKS', 2678, '38.06820', '-85.71690'), ('CLERMONT', None, '37.91670', '-85.65000'), ('HILLVIEW', 7037, '38.06970', '-85.68570'), ('LEBANON JUNCTION', 1801, '37.83380', '-85.72540'), ('MOUNT WASHINGTON', 8485, '38.04760', '-85.55010'), ('SHEPHERDSVILLE', 8334, '37.98740', '-85.71320')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'VAC033': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOWLING GREEN', 936, '38.04980', '-77.35100'), ('BURRUSS CORNER', None, '37.89330', '-77.41650'), ('CEDAR FORK', None, '37.96170', '-77.54830'), ('CEDON', None, '38.06110', '-77.51890'), ('CENTRAL POINT', None, '37.98890', '-77.13150'), ('CHILESBURG', None, '37.99950', '-77.59330'), ('CORBIN', None, '38.19940', '-77.38880'), ('DAWN', None, '37.83330', '-77.36580'), ('FORT A.P. HILL', None, '38.10970', '-77.26620'), ('GETHER', None, '37.91640', '-77.20790'), ('GOLANSVILLE', None, '37.98090', '-77.50130'), ('GUINEA', None, '38.14280', '-77.43770'), ('LADYSMITH', None, '38.01750', '-77.51500'), ('MILFORD', None, '38.02690', '-77.36980'), ('NANCY WRIGHTS CORNER', None, '38.09050', '-77.51620'), ('PENOLA', None, '37.95770', '-77.37090'), ('PORT ROYAL', 170, '38.16970', '-77.19110'), ('RAPPAHANNOCK ACADEMY', None, '38.15580', '-77.30300'), ('RUTHER GLEN', None, '38.00450', '-77.54350'), ('SPARTA', None, '37.99150', '-77.22970'), ('VILLBORO', None, '38.13500', '-77.38970'), ('WOODFORD', None, '38.11310', '-77.40940')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'AKQ'}, -'MIC047': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAYSHORE', None, '45.37000', '-85.08330'), ('BAY VIEW', None, '45.39000', '-84.94000'), ('BLISS', None, '45.68330', '-84.85000'), ('BRUTUS', None, '45.50000', '-84.75000'), ('CARP LAKE', None, '45.69000', '-84.79000'), ('CONWAY', None, '45.41720', '-84.87000'), ('CROSS VILLAGE', None, '45.63690', '-85.03880'), ('GOOD HART', None, '45.56660', '-85.11660'), ('HARBOR SPRINGS', 1567, '45.43200', '-84.98960'), ('LEVERING', None, '45.63630', '-84.76740'), ('MACKINAW CITY', 859, '45.77900', '-84.73200'), ('ODEN', None, '45.42000', '-84.84220'), ('PELLSTON', 771, '45.56000', '-84.78330'), ('PLEASANT VIEW', None, '45.52000', '-84.93000'), ('STUTSMANVILLE', None, '45.50000', '-85.03000'), ('WILDERNESS STATE PARK', None, '45.75500', '-84.95000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'KSC067': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('HICKOK', None, '37.56000', '-101.23000'), ('RYUS', None, '37.50000', '-101.11000'), ('ULYSSES', 5960, '37.57900', '-101.35580')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'GAC317': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('RAYLE', 139, '33.79080', '-82.90880'), ('TIGNALL', 653, '33.86690', '-82.74240'), ('WASHINGTON', 4295, '33.73550', '-82.74400')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'WYC033': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CLEARMONT', 115, '44.64030', '-106.38050'), ('DAYTON', 678, '44.87290', '-107.26340'), ('RANCHESTER', 701, '44.90730', '-107.16410'), ('SHERIDAN', 15804, '44.79210', '-106.95710')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BYZ'}, -'VTC009': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('AVERILL', None, '45.00000', '-71.72000'), ('BLOOMFIELD', None, '44.75000', '-71.63000'), ('CANAAN', None, '45.00000', '-71.53000'), ('CONCORD', None, '44.43000', '-71.88000'), ('GRANBY', None, '44.57000', '-71.77000'), ('ISLAND POND', 849, '44.81290', '-71.88550'), ('LUNENBURG', None, '44.47000', '-71.68000'), ('MAIDSTONE', None, '44.67000', '-71.61000'), ('NORTON', None, '45.00000', '-71.80000'), ('VICTORY', None, '44.52000', '-71.85000')], 'partOfState': 'NORTHEAST', 'wfo': 'BTV'}, -'VTC005': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BARNET', None, '44.30000', '-72.05000'), ('DANVILLE', None, '44.42000', '-72.13000'), ('EAST HAVEN', None, '44.67000', '-71.90000'), ('GROTON', None, '44.22000', '-72.20000'), ('HARDWICK', None, '44.50000', '-72.37000'), ('LOWER WATERFORD', None, '44.35000', '-71.92000'), ('LYNDONVILLE', 1227, '44.53490', '-72.00300'), ('PASSUMPSIC', None, '44.38000', '-72.03000'), ('PEACHAM', None, '44.33000', '-72.17000'), ('SHEFFIELD', None, '44.60000', '-72.12000'), ('ST. JOHNSBURY', 6319, '44.43040', '-72.01320'), ('STANNARD', None, '44.53000', '-72.22000'), ('WALDEN', None, '44.43000', '-72.23000'), ('WEST BURKE', 364, '44.64380', '-71.98030')], 'partOfState': 'NORTHEAST', 'wfo': 'BTV'}, -'VTC007': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BOLTON', None, '44.37000', '-72.88000'), ('BURLINGTON', 38889, '44.48810', '-73.22620'), ('CHARLOTTE', None, '44.30000', '-73.25000'), ('COLCHESTER', None, '44.53000', '-73.15000'), ('ESSEX JUNCTION', 8591, '44.49030', '-73.11240'), ('HINESBURG', None, '44.33000', '-73.12000'), ('HUNTINGTON', None, '44.33000', '-72.98000'), ('JERICHO', 1457, '44.50180', '-72.98700'), ('MILTON', 1537, '44.63840', '-73.11250'), ('RICHMOND', None, '44.40000', '-73.00000'), ('SHELBURNE', None, '44.38000', '-73.23000'), ('SOUTH BURLINGTON', 15814, '44.44560', '-73.21610'), ('UNDERHILL', None, '44.53000', '-72.97000'), ('WESTFORD', None, '44.62000', '-73.02000'), ('WILLISTON', None, '44.43000', '-73.07000'), ('WINOOSKI', 6561, '44.49540', '-73.18510')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'VTC001': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ADDISON', None, '44.08000', '-73.30000'), ('BRIDPORT', None, '43.98000', '-73.32000'), ('BRISTOL', None, '44.13650', '-73.08090'), ('CORNWALL', None, '43.97000', '-73.22000'), ('FERRISBURG', None, '44.20000', '-73.25000'), ('GRANVILLE', None, '43.98000', '-72.85000'), ('HANCOCK', None, '43.93000', '-72.83000'), ('HANKSVILLE', None, '44.25000', '-72.97000'), ('LEICESTER', None, '43.87000', '-73.10000'), ('MIDDLEBURY', 6252, '44.00770', '-73.15720'), ('MONKTON', None, '44.23000', '-73.15000'), ('NEW HAVEN', None, '44.12000', '-73.15000'), ('ORWELL', None, '43.80000', '-73.30000'), ('RIPTON', None, '43.98000', '-73.03000'), ('SALISBURY', None, '43.90000', '-73.10000'), ('SHOREHAM', None, '43.90000', '-73.32000'), ('SOUTH LINCOLN', None, '44.07000', '-72.98000'), ('VERGENNES', 2741, '44.16740', '-73.25570')], 'partOfState': 'CENTRAL', 'wfo': 'BTV'}, -'KSC115': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURNS', 268, '38.08970', '-96.88770'), ('DURHAM', 114, '38.48510', '-97.22700'), ('FLORENCE', 671, '38.24280', '-96.92910'), ('GOESSEL', 565, '38.24650', '-97.34540'), ('HILLSBORO', 2854, '38.35130', '-97.20220'), ('LEHIGH', 215, '38.37490', '-97.30240'), ('LINCOLNVILLE', 225, '38.49400', '-96.96120'), ('LOST SPRINGS', 71, '38.56650', '-96.96490'), ('MARION', 2110, '38.34890', '-97.01570'), ('PEABODY', 1384, '38.16880', '-97.10690'), ('TAMPA', 144, '38.54700', '-97.15400')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'VTC003': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ARLINGTON', 1199, '43.06730', '-73.15190'), ('BENNINGTON', 9168, '42.87280', '-73.18510'), ('DORSET', None, '43.25500', '-73.09850'), ('MANCHESTER', 602, '43.16200', '-73.07200'), ('MANCHESTER CENTER', 2065, '43.17780', '-73.04350'), ('NORTH BENNINGTON', 1428, '42.92530', '-73.24430'), ('OLD BENNINGTON', 232, '42.88330', '-73.21380'), ('PERU', None, '43.23050', '-72.89870'), ('POWNAL', None, '42.76450', '-73.23780'), ('READSBORO', None, '42.77100', '-72.94790'), ('STAMFORD', None, '42.75470', '-73.06880'), ('WOODFORD STATE PARK', None, '42.88980', '-73.03450')], 'partOfState': 'SOUTHERN', 'wfo': 'ALY'}, -'IAC023': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALLISON', 1006, '42.75250', '-92.79560'), ('APLINGTON', 1054, '42.58160', '-92.88090'), ('AREDALE', 89, '42.83340', '-93.00450'), ('BRISTOW', 202, '42.77350', '-92.90670'), ('CLARKSVILLE', 1441, '42.78020', '-92.66810'), ('DUMONT', 676, '42.75160', '-92.97340'), ('GREENE', 1099, '42.89680', '-92.80390'), ('NEW HARTFORD', 659, '42.56720', '-92.62240'), ('PARKERSBURG', 1889, '42.57360', '-92.78250'), ('SHELL ROCK', 1298, '42.71260', '-92.58150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'WAC077': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FAIRVIEW-SUMACH', None, '46.58780', '-120.47460'), ('FRUITVALE', None, '46.61720', '-120.54170'), ('GRANDVIEW', 8377, '46.24440', '-119.91080'), ('GRANGER', 2530, '46.34280', '-120.18960'), ('HARRAH', 542, '46.40430', '-120.54130'), ('MABTON', 1891, '46.21290', '-119.99560'), ('MOXEE', 821, '46.56340', '-120.39880'), ('NACHES', 643, '46.72950', '-120.69730'), ('SATUS', 746, '46.23200', '-120.11840'), ('SELAH', 6310, '46.65620', '-120.53390'), ('SOUTH BROADWAY', None, '46.56640', '-120.51560'), ('SUNNYSIDE', 13905, '46.32100', '-120.01250'), ('TERRACE HEIGHTS', 6447, '46.60600', '-120.43770'), ('TIETON', 1154, '46.70180', '-120.75290'), ('TOPPENISH', 8946, '46.38110', '-120.31150'), ('UNION GAP', 5621, '46.55510', '-120.48740'), ('WAPATO', 4582, '46.44570', '-120.42070'), ('WEST VALLEY', 10433, '46.59230', '-120.60400'), ('WHITE SWAN', 3033, '46.38820', '-120.72080'), ('YAKIMA', 71845, '46.59260', '-120.52890'), ('ZILLAH', 2198, '46.40370', '-120.25950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PDT'}, -'IAC021': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBERT CITY', 709, '42.78110', '-94.94890'), ('ALTA', 1865, '42.67200', '-95.30450'), ('LAKESIDE', 484, '42.61970', '-95.17390'), ('LINN GROVE', 211, '42.89260', '-95.24170'), ('MARATHON', 302, '42.86100', '-94.98290'), ('NEWELL', 887, '42.61060', '-95.00380'), ('REMBRANDT', 228, '42.82640', '-95.16570'), ('SIOUX RAPIDS', 720, '42.89190', '-95.14810'), ('STORM LAKE', 10076, '42.64500', '-95.19990'), ('TRUESDALE', 91, '42.72950', '-95.18270')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'WAC075': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALBION', 616, '46.79250', '-117.24950'), ('BELMONT', None, '47.08620', '-117.15680'), ('COLFAX', 2844, '46.88410', '-117.36270'), ('COLTON', 386, '46.56840', '-117.12700'), ('DIAMOND', None, '46.91750', '-117.48580'), ('DUSTY', None, '46.80620', '-117.65050'), ('ENDICOTT', 621, '46.92890', '-117.68500'), ('EWEN', None, '47.11680', '-117.73370'), ('FARMINGTON', 153, '47.08890', '-117.04510'), ('GARFIELD', 641, '47.00840', '-117.14070'), ('HAY', None, '46.67400', '-117.90880'), ('LA CROSSE', 380, '46.81440', '-117.87900'), ('LAMONT', 106, '47.20060', '-117.90350'), ('MALDEN', 215, '47.23130', '-117.47190'), ('OAKESDALE', 420, '47.13090', '-117.24550'), ('PALOUSE', 1011, '46.91110', '-117.07380'), ('PINE CITY', None, '47.20150', '-117.52070'), ('PULLMAN', 24675, '46.73330', '-117.16200'), ('ROSALIA', 648, '47.23700', '-117.36790'), ('ST. JOHN', 548, '47.08880', '-117.58110'), ('STEPTOE', None, '47.00370', '-117.35300'), ('TEKOA', 826, '47.22560', '-117.07330'), ('THORNTON', None, '47.11920', '-117.38650'), ('UNIONTOWN', 345, '46.53740', '-117.08460'), ('WINONA', None, '46.94080', '-117.79300')], 'partOfState': '', 'wfo': 'OTX'}, -'IAC027': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARCADIA', 443, '42.08700', '-95.04350'), ('BREDA', 477, '42.18320', '-94.97770'), ('CARROLL', 10106, '42.06920', '-94.86470'), ('COON RAPIDS', 1305, '41.87250', '-94.67650'), ('DEDHAM', 280, '41.90870', '-94.82260'), ('GLIDDEN', 1253, '42.05730', '-94.72520'), ('HALBUR', 202, '42.00550', '-94.97140'), ('LANESBORO', 152, '42.18360', '-94.69100'), ('LIDDERDALE', 186, '42.12390', '-94.78420'), ('MANNING', 1490, '41.90950', '-95.06430'), ('RALSTON', 98, '42.04350', '-94.64500'), ('TEMPLETON', 334, '41.91810', '-94.94230'), ('WILLEY', 103, '41.97840', '-94.82070')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'WAC073': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BELLINGHAM', 67171, '48.74400', '-122.46690'), ('BLAINE', 3770, '48.98910', '-122.75810'), ('EVERSON', 2035, '48.91480', '-122.35090'), ('FERNDALE', 8758, '48.85090', '-122.58720'), ('LYNDEN', 9020, '48.94840', '-122.45610'), ('MARIETTA-ALDERWOOD', 3594, '48.78900', '-122.55480'), ('NOOKSACK', 851, '48.92840', '-122.32120'), ('SUDDEN VALLEY', 4165, '48.72080', '-122.34470')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'IAC025': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FARNHAMVILLE', 430, '42.27750', '-94.41500'), ('JOLLEY', 54, '42.47930', '-94.71790'), ('KNIERIM', 70, '42.45610', '-94.45630'), ('LAKE CITY', 1787, '42.26770', '-94.73060'), ('LOHRVILLE', 431, '42.26800', '-94.55090'), ('MANSON', 1893, '42.52870', '-94.53930'), ('POMEROY', 710, '42.55350', '-94.67850'), ('RINARD', 72, '42.33950', '-94.48650'), ('ROCKWELL CITY', 2264, '42.39840', '-94.63100'), ('SOMERS', 165, '42.37790', '-94.43080'), ('YETTER', 36, '42.31650', '-94.84360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'TXC305': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRASSLAND', None, '33.13880', '-101.58970'), ('NEW HOME', 320, '33.32730', '-101.91080'), ('NEW MOORE', None, '33.02190', '-102.03220'), ("O'DONNELL", 1011, '32.96520', '-101.83010'), ('TAHOKA', 2910, '33.16450', '-101.79440'), ('WILSON', 532, '33.31980', '-101.72670')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'LAC091': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DARLINGTON', None, '30.87780', '-90.78140'), ('EASLEYVILLE', None, '30.92860', '-90.68750'), ('GREENSBURG', 631, '30.82960', '-90.67000'), ('MONTPELIER', 214, '30.67950', '-90.65450')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'KSC113': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CANTON', 829, '38.38610', '-97.42990'), ('GALVA', 701, '38.38210', '-97.53800'), ('INMAN', 1142, '38.22910', '-97.77380'), ('LINDSBORG', 3321, '38.57430', '-97.67490'), ('MARQUETTE', 542, '38.55380', '-97.83400'), ('MCPHERSON', 13770, '38.37190', '-97.66190'), ('MOUNDRIDGE', 1593, '38.20180', '-97.51560'), ('ROXBURY', None, '38.55000', '-97.42000'), ('WINDOM', 137, '38.38430', '-97.91020')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'LAC093': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CONVENT', None, '30.02060', '-90.82970'), ('GRAMERCY', 3066, '30.05940', '-90.69550'), ('LUTCHER', 3735, '30.06300', '-90.71170')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'INC161': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LIBERTY', 2061, '39.63450', '-84.92700')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILN'}, -'LAC097': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ARNAUDVILLE', 1398, '30.41750', '-91.93140'), ('BIG CANE', None, '30.82060', '-92.00920'), ('CANKTON', 362, '30.34890', '-92.11140'), ('EUNICE', 11499, '30.49110', '-92.41910'), ('GRAND COTEAU', 1040, '30.41970', '-92.04640'), ('KROTZ SPRINGS', 1219, '30.53430', '-91.75350'), ('LAWTELL', None, '30.51830', '-92.18470'), ('LEONVILLE', 1007, '30.46440', '-91.98010'), ('MELVILLE', 1376, '30.69180', '-91.74730'), ('OPELOUSAS', 22860, '30.52470', '-92.08350'), ('PALMETTO', 188, '30.71780', '-91.90800'), ('PORT BARRE', 2287, '30.55680', '-91.95640'), ('SUNSET', 2352, '30.40830', '-92.06600'), ('WASHINGTON', 1082, '30.61540', '-92.05970')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'GAC099': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLAKELY', 5696, '31.37910', '-84.93530'), ('CEDAR SPRINGS', None, '31.18340', '-85.03800'), ('CENTERVILLE', 4278, '31.27340', '-84.89660'), ('COLOMOKEE', None, '31.45860', '-84.87920'), ('CUBA', None, '31.29110', '-84.86420'), ('DAMASCUS', 277, '31.29840', '-84.71750'), ('DOUGLASS CROSSROADS', None, '31.30190', '-84.67340'), ('DOUGLASVILLE', 20065, '31.35840', '-84.67090'), ('EARLY CO A/P', None, '31.39560', '-84.89250'), ('FERRELL CROSSROADS', None, '31.48290', '-84.91610'), ('FREEMAN', None, '31.35940', '-85.06300'), ('HENTOWN', None, '31.27890', '-84.83700'), ('HILTON', None, '31.28640', '-85.06540'), ('HOWARDS MILL', None, '31.15630', '-84.99470'), ('JAKIN', 157, '31.09040', '-84.98330'), ('JONES CROSSROADS', None, '31.17300', '-84.93770'), ('KILLARNEY', None, '31.13610', '-84.94140'), ('KOLOMOKI MOUNDS SP', None, '31.46720', '-84.92820'), ('LUCILE', None, '31.24360', '-84.91790'), ('NICHOLASVILLE', None, '31.40260', '-84.67000'), ('OLD DAMASCUS', None, '31.30570', '-84.73700'), ('ROCK HILL', None, '31.32660', '-85.03180'), ('ROWENA', None, '31.37900', '-84.71300'), ('SAFFOLD', None, '31.11870', '-85.03310'), ('SAWHATCHEE', None, '31.27560', '-85.02790')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAC311': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CLEVELAND', 1907, '34.59690', '-83.76420'), ('HELEN', 430, '34.70200', '-83.72220')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'ASC010': {'fullStateName': 'AMERICAN SAMOA', 'state': 'AS', 'cities': [('AFONO', None, '-14.26220', '-170.64610'), ('AMAUA', None, '-14.27650', '-170.62370'), ('ANUA', None, '-14.27600', '-170.68830'), ('AOA', None, '-14.26820', '-170.58520'), ("ATU'U", None, '-14.27490', '-170.68390'), ('AUA', None, '-14.28050', '-170.66390'), ('AUASI', None, '-14.27580', '-170.57650'), ('AUTO', None, '-14.28160', '-170.62680'), ("FAGA'ALU", None, '-14.29430', '-170.68060'), ('FAGANEANEA', None, '-14.30560', '-170.69310'), ('FAGATOGO', None, '-14.28740', '-170.69060'), ('LELOALOA', None, '-14.27270', '-170.67580'), ('PAGAI', None, '-14.27400', '-170.60340'), ('UTULEI', None, '-14.28810', '-170.67850')], 'partOfState': '', 'wfo': 'PPG'}, -'AKC090': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('COLLEGE', 11402, '64.86950', '-147.82340'), ('EIELSON AFB', 5400, '64.67570', '-147.09130'), ('ESTER', 1680, '64.86130', '-148.02450'), ('FAIRBANKS', 30224, '64.83710', '-147.64900'), ('FOX', 300, '64.96070', '-147.62130'), ('HARDING LAKE', None, '64.42180', '-146.85070'), ('MOOSE CREEK', 542, '64.71370', '-147.16520'), ('NORTH POLE', 1570, '64.75320', '-147.35600'), ('PLEASANT VALLEY', 623, '64.88130', '-146.86850'), ('SALCHA', 854, '64.46930', '-146.94150'), ('TWO RIVERS', 482, '64.87100', '-147.09000')], 'partOfState': '', 'wfo': 'AFG'}, -'KSC065': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BOGUE', 179, '39.35960', '-99.68790'), ('HILL CITY', 1604, '39.36630', '-99.84650'), ('MORLAND', 164, '39.34880', '-100.07440'), ('NICODEMUS', None, '39.39000', '-99.61000'), ('PENOKEE', None, '39.35000', '-99.97000'), ('SAINT PETER', None, '39.19000', '-100.09000'), ('STUDLEY', None, '39.35000', '-100.16000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'NEC031': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BROWNLEE', None, '42.29050', '-100.62500'), ('CODY', 149, '42.93710', '-101.24770'), ('CROOKSTON', 98, '42.92530', '-100.75290'), ('ELI', None, '42.94000', '-101.44000'), ('ELSMERE', None, '42.16000', '-100.18000'), ('KILGORE', 99, '42.93850', '-100.95670'), ('MERRIMAN', 118, '42.92110', '-101.69980'), ('MERRITT RESERVOIR DAM', None, '42.64600', '-100.87200'), ('NENZEL', 13, '42.92690', '-101.10130'), ('SPARKS', None, '42.93100', '-100.26800'), ('VALENTINE', 2820, '42.87370', '-100.54990'), ('WOOD LAKE', 72, '42.63910', '-100.23680')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEC033': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BROWNSON', None, '41.17000', '-103.08000'), ('DALTON', 332, '41.40770', '-102.97040'), ('GURLEY', 228, '41.32060', '-102.97390'), ('LODGEPOLE', 348, '41.14850', '-102.63830'), ('LORENZO', None, '41.03000', '-103.05000'), ('POTTER', 390, '41.21890', '-103.31430'), ('SIDNEY', 6282, '41.13370', '-102.97000')], 'partOfState': '', 'wfo': 'CYS'}, -'TXC479': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AGUILARES', None, '27.45416', '-99.10000'), ('BRUNI', 412, '27.42770', '-98.84380'), ('COLUMBIA BRIDGE', None, '27.71190', '-99.73180'), ('EL CENIZO', 3545, '27.34580', '-99.49690'), ('LAREDO', 176576, '27.53430', '-99.48660'), ('LAS TIENDAS', None, '27.89580', '-99.62580'), ('MIRANDO CITY', 493, '27.43080', '-98.93190'), ('OILTON', 310, '27.45000', '-98.91388'), ('ORVIL', None, '27.62580', '-99.49690'), ('RIO BRAVO', 5553, '27.36166', '-99.47666')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'NEC035': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CLAY CENTER', 861, '40.52330', '-98.05470'), ('DEWEESE', 80, '40.35430', '-98.13920'), ('EDGAR', 539, '40.36840', '-97.97050'), ('FAIRFIELD', 467, '40.43200', '-98.10320'), ('GLENVIL', 332, '40.50260', '-98.25480'), ('HARVARD', 998, '40.61930', '-98.09620'), ('INLAND', None, '40.59080', '-98.22920'), ('ONG', 67, '40.39820', '-97.83910'), ('SARONVILLE', 61, '40.60290', '-97.93890'), ('SUTTON', 1447, '40.60760', '-97.85830'), ('TRUMBULL', 212, '40.68010', '-98.27280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC037': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CLARKSON', 685, '41.72470', '-97.12130'), ('HOWELLS', 632, '41.72340', '-97.00470'), ('LEIGH', 442, '41.70410', '-97.23680'), ('RICHLAND', 89, '41.43730', '-97.21410'), ('ROGERS', 95, '41.46460', '-96.91620'), ('SCHUYLER', 5371, '41.44810', '-97.05990')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEC039': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BANCROFT', 520, '42.01040', '-96.57300'), ('BEEMER', 773, '41.93040', '-96.80950'), ('WEST POINT', 3660, '41.83770', '-96.70730'), ('WISNER', 1270, '41.98670', '-96.91350')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'MOC043': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BILLINGS', 1091, '37.06740', '-93.55190'), ('BOAZ', None, '37.01850', '-93.40020'), ('BRUNER', None, '37.01470', '-92.98580'), ('CHADWICK', None, '36.92990', '-93.05660'), ('CHESTNUTRIDGE', None, '36.83660', '-93.25160'), ('CHRISTIAN CENTER', None, '36.94080', '-93.16660'), ('CLEVER', 1010, '37.03020', '-93.47270'), ('ELKHEAD', None, '37.01360', '-92.93020'), ('FREMONT HILLS', 597, '37.06580', '-93.25260'), ('GARRISON', None, '36.83880', '-93.01930'), ('HIGHLANDVILLE', 872, '36.93270', '-93.28020'), ('KELTNER', None, '36.96880', '-92.94800'), ('LINDEN', None, '37.04630', '-93.13380'), ('NIXA', 12124, '37.04330', '-93.29410'), ('OLDFIELD', None, '36.97820', '-93.03990'), ('OZARK', 9665, '37.02070', '-93.20580'), ('SELMORE', None, '36.96790', '-93.22990'), ('SPARTA', 1144, '37.00110', '-93.08130'), ('SPOKANE', 133, '36.86790', '-93.29660')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC041': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRUNSWICK', 925, '39.42400', '-93.12600'), ('DALTON', 27, '39.39820', '-92.99200'), ('KEYTESVILLE', 533, '39.43270', '-92.93680'), ('MENDON', 208, '39.59110', '-93.13360'), ('ROTHVILLE', 93, '39.65470', '-93.06090'), ('SALISBURY', 1726, '39.42340', '-92.80230'), ('SUMNER', 142, '39.65570', '-93.24320'), ('TRIPLETT', 64, '39.49770', '-93.19350'), ('WIEN', None, '39.66670', '-92.80000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOC047': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AVONDALE', 529, '39.15350', '-94.54500'), ('BIRMINGHAM', 214, '39.16660', '-94.45040'), ('CLAYCOMO', 1267, '39.19950', '-94.47680'), ('EXCELSIOR SPRINGS', 10847, '39.33790', '-94.23550'), ('GLADSTONE', 26365, '39.21280', '-94.55890'), ('GLENAIRE', 553, '39.22000', '-94.45000'), ('HOLT', 405, '39.45420', '-94.34410'), ('KEARNEY', 5472, '39.36440', '-94.36150'), ('LIBERTY', 26232, '39.24200', '-94.41910'), ('MISSOURI CITY', 295, '39.23810', '-94.30090'), ('MOSBY', 242, '39.31960', '-94.30080'), ('NORTH KANSAS CITY', 4714, '39.13920', '-94.56400'), ('NORTHMOOR', 399, '39.18430', '-94.60660'), ('OAKS', 136, '39.19700', '-94.57190'), ('OAKVIEW', 386, '39.20800', '-94.57080'), ('OAKWOOD', 197, '39.20030', '-94.57210'), ('OAKWOOD PARK', 183, '39.20570', '-94.57280'), ('PLEASANT VALLEY', 3321, '39.21840', '-94.48130'), ('PRATHERSVILLE', 111, '39.31410', '-94.27630'), ('RANDOLPH', 47, '39.15640', '-94.49060'), ('SMITHVILLE', 5514, '39.38150', '-94.57410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'IDC009': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CHATCOLET', None, '47.35410', '-116.75250'), ('EMIDA', None, '47.10950', '-116.59150'), ('PLUMMER', 990, '47.32970', '-116.88410'), ('SANDERS', None, '47.10380', '-116.79050'), ('SANTA', None, '47.15020', '-116.44220'), ('ST. JOE', None, '47.30670', '-116.35120'), ('ST. MARIES', 2652, '47.31490', '-116.57060'), ('TENSED', 126, '47.15960', '-116.92340')], 'partOfState': '', 'wfo': 'OTX'}, -'MOC045': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALEXANDRIA', 166, '40.35970', '-91.45920'), ('ANSON', None, '40.56830', '-91.76870'), ('ANTIOCH', None, '40.31880', '-91.68410'), ('ASHTON', None, '40.45030', '-91.80110'), ('ATHENS', None, '40.57300', '-91.69000'), ('CHAMBERSBURG', None, '40.51800', '-91.80060'), ('CHARLIE HEATH MEMORIAL CA', None, '40.57880', '-91.89470'), ('CLARK CITY', None, '40.41800', '-91.68010'), ('FAIRMONT', None, '40.33360', '-91.90140'), ('FROST ISLAND CA', None, '40.44000', '-91.54860'), ('GREGORY LANDING', None, '40.28360', '-91.50500'), ('KAHOKA', 2241, '40.42380', '-91.71840'), ('LURAY', 102, '40.45250', '-91.88430'), ('MEDILL', None, '40.43380', '-91.76770'), ('NEEPER', None, '40.33360', '-91.78440'), ('PEAKSVILLE', None, '40.50190', '-91.68520'), ('REVERE', 121, '40.49420', '-91.67600'), ('ST. PATRICK', None, '40.26880', '-91.62550'), ('WAYLAND', 425, '40.39520', '-91.58170'), ('WINCHESTER', 1651, '40.31740', '-91.60170'), ('WYACONDA', 310, '40.39300', '-91.92630')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'IDC005': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ARIMO', 348, '42.55950', '-112.17060'), ('CHUBBUCK', 9700, '42.92220', '-112.46470'), ('DOWNEY', 613, '42.42940', '-112.12280'), ('FORT HALL', 3193, '43.00650', '-112.44730'), ('HAWKINS', None, '42.53000', '-112.33000'), ('INKOM', 738, '42.79690', '-112.24780'), ('LAVA HOT SPRINGS', 521, '42.62030', '-112.00960'), ('MCCAMMON', 805, '42.64700', '-112.19230'), ('POCATELLO', 51466, '42.87620', '-112.46850'), ('PORTNEUF', None, '42.80000', '-112.35000'), ('ROBIN', None, '42.58000', '-112.25000'), ('SWANLAKE', None, '42.32000', '-112.00000'), ('VIRGINIA', None, '42.50000', '-112.17000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'MOC049': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GOWER', 1399, '39.61230', '-94.59470'), ('LATHROP', 2092, '39.54920', '-94.32950'), ('PLATTSBURG', 2354, '39.56500', '-94.46230'), ('TRIMBLE', 451, '39.47460', '-94.56100'), ('TURNEY', 155, '39.63690', '-94.32060')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'IDC007': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ALTON', None, '42.23000', '-111.15000'), ('BENNINGTON', None, '42.38000', '-111.32000'), ('BERN', None, '42.33000', '-111.38000'), ('BLOOMINGTON', 251, '42.19090', '-111.40480'), ('FISH HAVEN', None, '42.03000', '-111.38000'), ('GENEVA', None, '42.35000', '-111.07000'), ('GEORGETOWN', 538, '42.47780', '-111.36500'), ('LIBERTY', None, '42.32000', '-111.45000'), ('LINDSAYVILLE', None, '42.42000', '-111.42000'), ('MONTPELIER', 2785, '42.32310', '-111.30090'), ('NOUNAN', None, '42.47000', '-111.45000'), ('OVID', None, '42.28000', '-111.38000'), ('PARIS', 576, '42.23000', '-111.40000'), ('SHARON', None, '42.35000', '-111.47000'), ('ST. CHARLES', 156, '42.11260', '-111.38920'), ('WARDBORO', None, '42.25000', '-111.27000')], 'partOfState': 'SOUTHEAST', 'wfo': 'SLC'}, -'IDC001': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BOISE', None, '43.60670', '-116.22610'), ('EAGLE', 11085, '43.69350', '-116.35480'), ('GARDEN CITY', 10624, '43.64850', '-116.26700'), ('KUNA', 5382, '43.49010', '-116.41750'), ('MERIDIAN', 34919, '43.61110', '-116.39970'), ('STAR', 1795, '43.70000', '-116.48300'), ('SWAN FALLS', None, '43.25000', '-116.36700')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'UTC023': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CALLAO', None, '39.90000', '-113.72000'), ('EUREKA', 766, '39.95500', '-112.11560'), ('JERICHO', None, '39.75000', '-112.17000'), ('LEVAN', 688, '39.55680', '-111.86020'), ('LITTLE SAHARA', None, '39.72000', '-112.23000'), ('MILLS', None, '39.48000', '-112.05000'), ('MONA', 850, '39.81540', '-111.85750'), ('NEPHI', 4733, '39.71080', '-111.82880'), ('PARTOUN', None, '39.65000', '-113.90000'), ('TINTIC JCT', None, '39.92000', '-112.17000'), ('TROUT CREEK', None, '39.70000', '-113.83330')], 'partOfState': '', 'wfo': 'SLC'}, -'INC099': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ARGOS', 1613, '41.23770', '-86.24770'), ('BOURBON', 1691, '41.29780', '-86.11690'), ('BREMEN', 4486, '41.44700', '-86.15440'), ('CULVER', 1539, '41.21790', '-86.42250'), ('LA PAZ', 489, '41.45940', '-86.31000'), ('PLYMOUTH', 9840, '41.34700', '-86.31450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'GAC259': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LUMPKIN', 1369, '32.04970', '-84.79960'), ('OMAHA', None, '32.14780', '-85.01280'), ('RICHLAND', 1794, '32.08450', '-84.67580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'FLC073': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAUM', None, '30.51280', '-84.08060'), ('BELLAIR', None, '30.38000', '-84.27000'), ('BELLWOOD ESTATES', None, '30.50390', '-84.32360'), ('BLACK CREEK', None, '30.50690', '-84.08860'), ('BLOCKER', None, '30.58590', '-84.26990'), ('BLOXHAM', None, '30.38710', '-84.63130'), ('BRADFORDVILLE', None, '30.56030', '-84.21590'), ('BRIDGE PATH ACRES', None, '30.50810', '-84.26260'), ('CAPITOLA', None, '30.45010', '-84.08830'), ('CENTERVILLE', None, '30.55570', '-84.17630'), ('CHAIRES', None, '30.43530', '-84.11760'), ('CHAIRES CROSSROADS', None, '30.42220', '-84.11810'), ('CONCORD', None, '30.56250', '-84.04580'), ('COREY', None, '30.36680', '-84.18110'), ('EL DESTINADO', None, '30.50400', '-84.27770'), ('FELKEL', None, '30.59560', '-84.11800'), ('FORT BRADEN', None, '30.42160', '-84.53770'), ('FOUR POINTS', None, '30.39920', '-84.28100'), ('HARBINWOOD ESTATES', None, '30.51590', '-84.33490'), ('HENRIETTA', None, '30.39350', '-84.29970'), ('HIAMONEE', None, '30.64880', '-84.28350'), ('HOLLAND', None, '30.42630', '-84.53270'), ('IAMONIA', None, '30.66680', '-84.16350'), ('KILLEARN ESTATES', None, '30.54390', '-84.23680'), ('KILLEARN LAKES', None, '30.58740', '-84.23130'), ('LAFAYETTE', None, '30.42780', '-84.21610'), ('LAKE JACKSON', None, '30.53070', '-84.36110'), ('LAKE VIEW PT', None, '30.42520', '-84.59850'), ('LAKESIDE', 30927, '30.38230', '-84.29910'), ('LOCHIOCHA', None, '30.36520', '-84.66660'), ('LUTTERLOH', None, '30.32760', '-84.25320'), ('MACLAY STATE GARDENS', None, '30.50880', '-84.25000'), ('MCCAIN', None, '30.44770', '-84.40290'), ('MERIDIAN', None, '30.63950', '-84.28270'), ('MICCOSUKEE', None, '30.59350', '-84.04180'), ('NORFLEET', None, '30.44130', '-84.39210'), ('OAK KNOLL ESTATES', None, '30.52250', '-84.26660'), ('OCHLOCKONEE', None, '30.47100', '-84.40710'), ('PECK', None, '30.53870', '-84.09190'), ('PERKINS', None, '30.45310', '-84.22270'), ('ROSE', None, '30.34850', '-84.13360'), ('SPRING HILL', 69078, '30.33880', '-84.38820'), ('ST PETER', None, '30.48550', '-84.22890'), ('TALLAHASSEE', 150624, '30.43790', '-84.28160'), ('TALLAHASSEE COML A/P', None, '30.54600', '-84.37430'), ('TALLAHASSEE RGNL A/P', None, '30.39620', '-84.35340'), ('WADESBORO', None, '30.50360', '-84.06600'), ('WOODVILLE', 3006, '30.31410', '-84.24740'), ('ZION HILL', None, '30.48020', '-84.32330')], 'partOfState': '', 'wfo': 'TAE'}, -'ILC089': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AURORA', 142990, '41.76760', '-88.29300'), ('BATAVIA', 23866, '41.85060', '-88.30040'), ('BURLINGTON', 452, '42.05040', '-88.54740'), ('CARPENTERSVILLE', 30586, '42.12130', '-88.27150'), ('EAST DUNDEE', 2955, '42.09580', '-88.25580'), ('ELBURN', 2756, '41.89020', '-88.47170'), ('ELGIN', 94487, '42.03960', '-88.28800'), ('GENEVA', 19515, '41.88230', '-88.31450'), ('GILBERTS', 1279, '42.10160', '-88.36720'), ('HAMPSHIRE', 2900, '42.09580', '-88.52170'), ('MAPLE PARK', 765, '41.90720', '-88.59370'), ('MONTGOMERY', 5471, '41.72990', '-88.34150'), ('NORTH AURORA', 10585, '41.80380', '-88.33040'), ('PINGREE GROVE', 124, '42.06860', '-88.41470'), ('SLEEPY HOLLOW', 3553, '42.09340', '-88.31420'), ('SOUTH ELGIN', 16100, '41.99630', '-88.29800'), ('ST. CHARLES', 27896, '41.92030', '-88.30080'), ('SUGAR GROVE', 3909, '41.76960', '-88.45880'), ('WEST DUNDEE', 5428, '42.09810', '-88.29200')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'IAC119': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALVORD', 187, '43.34220', '-96.30250'), ('DOON', 533, '43.27870', '-96.23160'), ('GEORGE', 1051, '43.34170', '-96.00270'), ('INWOOD', 875, '43.28700', '-96.44010'), ('LARCHWOOD', 788, '43.45530', '-96.43740'), ('LESTER', 251, '43.43920', '-96.33020'), ('LITTLE ROCK', 489, '43.44460', '-95.88090'), ('ROCK RAPIDS', 2573, '43.42580', '-96.16610')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'INC091': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('KINGSBURY', 229, '41.53120', '-86.69560'), ('KINGSFORD HEIGHTS', 1453, '41.48000', '-86.69130'), ('LA CROSSE', 561, '41.31790', '-86.88980'), ('LA PORTE', 21621, '41.60750', '-86.71480'), ('LONG BEACH', 1559, '41.74660', '-86.85210'), ('MICHIANA SHORES', 330, '41.75630', '-86.81840'), ('MICHIGAN CITY', 32900, '41.71260', '-86.87600'), ('POTTAWATTOMIE PARK', None, '41.72250', '-86.86700'), ('TRAIL CREEK', 2296, '41.69640', '-86.85620'), ('WANATAH', 1013, '41.43080', '-86.88860'), ('WESTVILLE', 2116, '41.53960', '-86.90610')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'ILC085': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AIKEN', None, '42.35000', '-90.41670'), ('APPLE CANYON LAKE', None, '42.42000', '-90.16000'), ('APPLE RIVER', 379, '42.50190', '-90.09470'), ('APPLE RIVER CANYON S. P.', None, '42.45000', '-90.05000'), ('BLANDING', None, '42.26670', '-90.38330'), ('COUNCIL HILL', None, '42.48330', '-90.35000'), ('COUNCIL HILL STATION', None, '42.46670', '-90.33330'), ('DERINDA CENTER', None, '42.25000', '-90.18330'), ('EAST DUBUQUE', 1995, '42.49150', '-90.63880'), ('ELIZABETH', 682, '42.31610', '-90.22470'), ('ELMOVILLE', None, '42.26670', '-90.05000'), ('GALENA', 3460, '42.42070', '-90.42730'), ('GALENA JCT.', None, '42.36670', '-90.45000'), ('GALENA TERRITORY', None, '42.40000', '-90.33330'), ('GUILFORD', None, '42.42670', '-90.30000'), ('HANOVER', 836, '42.25420', '-90.27870'), ('MASSBACH', None, '42.25000', '-90.11670'), ('MENOMINEE', 237, '42.47460', '-90.54200'), ('NORA', 118, '42.45730', '-89.94460'), ('NORTH HANOVER', None, '42.30000', '-90.28330'), ('PLUM RIVER', None, '42.30000', '-89.98330'), ('RICE', None, '42.33330', '-90.40000'), ('RODDEN', None, '42.33330', '-90.31670'), ('SCALES MOUND', 401, '42.47750', '-90.25200'), ('SCHAPVILLE', None, '42.40000', '-90.20000'), ('STOCKTON', 1926, '42.35160', '-90.00600'), ('STOCKTON AIRPORT', None, '42.31670', '-90.00000'), ('WARREN', 1496, '42.49470', '-89.99020'), ('WHITTON', None, '42.23330', '-90.31670'), ('WILLOW', None, '42.28330', '-89.95000'), ('WOODBINE', None, '42.35000', '-90.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'IAC115': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMBER', None, '41.13330', '-91.18330'), ('CAIRO', None, '41.18330', '-91.33330'), ('COLUMBUS CITY', 376, '41.25930', '-91.37500'), ('COLUMBUS JUNCTION', 1900, '41.27940', '-91.36460'), ('COTTER', 48, '41.29260', '-91.47050'), ('ELRICK JUNCTION', None, '41.10000', '-91.11670'), ('FREDONIA', 251, '41.28470', '-91.33900'), ('GLADWIN', None, '41.36670', '-91.45000'), ('GRANDVIEW', 600, '41.27720', '-91.18740'), ('LETTS', 392, '41.33000', '-91.23480'), ('MARSH', None, '41.10000', '-91.35000'), ('MORNING SUN', 872, '41.09400', '-91.25150'), ('NEWPORT', None, '41.08330', '-91.18330'), ('OAKVILLE', 439, '41.09780', '-91.04350'), ('SAND SPRINGS', None, '41.31770', '-91.19330'), ('TOOLESBORO', None, '41.15000', '-91.06670'), ('WAPELLO', 2124, '41.17840', '-91.18880'), ('WYMAN', None, '41.20000', '-91.46670')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'ILC087': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELKNAP', 133, '37.32230', '-88.94010'), ('BUNCOMBE', 186, '37.47090', '-88.97490'), ('CYPRESS', 271, '37.36550', '-89.01900'), ('GOREVILLE', 938, '37.55510', '-88.97360'), ('NEW BURNSIDE', 242, '37.57840', '-88.77310'), ('SIMPSON', 54, '37.46760', '-88.75500'), ('VIENNA', 1234, '37.41420', '-88.89270')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'IAC113': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBURNETT', 559, '42.14950', '-91.61820'), ('BERTRAM', 681, '41.95490', '-91.53660'), ('CEDAR RAPIDS', 120758, '41.97300', '-91.66960'), ('CEDAR RAPIDS MUNICIPAL AI', None, '41.88330', '-91.71660'), ('CENTER POINT', 2007, '42.18500', '-91.77670'), ('CENTRAL CITY', 1157, '42.20350', '-91.52360'), ('COGGON', 745, '42.27940', '-91.53090'), ('ELY', 1149, '41.87510', '-91.58730'), ('FAIRFAX', 889, '41.92160', '-91.78010'), ('HIAWATHA', 6480, '42.04640', '-91.68370'), ('LAFAYETTE', None, '42.15000', '-91.68330'), ('LISBON', 1898, '41.92120', '-91.39110'), ('MARION', 26294, '42.03440', '-91.58950'), ('MARION AIRPORT', None, '42.03330', '-91.53330'), ('MIDWAY', None, '42.10000', '-91.70000'), ('MOUNT VERNON', 3390, '41.92310', '-91.42380'), ('PALISADES-KEPLER SP', None, '41.91660', '-91.51660'), ('PALO', 614, '42.06420', '-91.79600'), ('PARALTA', None, '42.03330', '-91.45000'), ('PARIS', None, '42.23330', '-91.58330'), ('PRAIRIEBURG', 175, '42.23780', '-91.42600'), ('ROBINS', 1806, '42.07840', '-91.66920'), ('SPRINGVILLE', 1091, '42.05580', '-91.44400'), ('TODDVILLE', None, '42.10000', '-91.71670'), ('TROY MILLS', None, '42.28330', '-91.68330'), ('VIOLA', None, '42.08330', '-91.38330'), ('WALKER', 750, '42.28620', '-91.78090'), ('WAUBEEK', None, '42.16670', '-91.46670'), ('WHITTIER', None, '42.10000', '-91.46670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'ILC081': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELLE RIVE', 371, '38.23200', '-88.73990'), ('BLUFORD', 785, '38.32630', '-88.73560'), ('BONNIE', 424, '38.20150', '-88.90750'), ('DIX', 494, '38.44060', '-88.94240'), ('INA', 2455, '38.15220', '-88.90370'), ('MOUNT VERNON', 16269, '38.31760', '-88.91100'), ('NASON', 234, '38.17630', '-88.96590'), ('WALTONVILLE', 422, '38.21320', '-89.03910'), ('WOODLAWN', 630, '38.33050', '-89.03530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'INC097': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BEECH GROVE', 14880, '39.71500', '-86.08740'), ('CASTLETON', None, '39.90480', '-86.05010'), ('CLERMONT', 1477, '39.81740', '-86.32040'), ('CROWS NEST', 96, '39.85220', '-86.17280'), ('HOMECROFT', 751, '39.67010', '-86.13010'), ('INDIANAPOLIS', 156000, '39.77640', '-86.14620'), ('LAWRENCE', 38915, '39.86860', '-85.98720'), ('MERIDIAN HILLS', 1713, '39.88640', '-86.15650'), ('NORTH CROWS NEST', 42, '39.86510', '-86.16200'), ('ROCKY RIPPLE', 712, '39.84890', '-86.17320'), ('SOUTHPORT', 1852, '39.65960', '-86.11660'), ('SPEEDWAY', 12881, '39.79340', '-86.24740'), ('SPRING HILL', 97, '39.83340', '-86.19270'), ('WARREN PARK', 1656, '39.78240', '-86.05240'), ('WILLIAMS CREEK', 413, '39.90040', '-86.14990'), ('WYNNEDALE', 275, '39.83270', '-86.19870')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'ILC083': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('DELHI', None, '39.04530', '-90.25500'), ('ELSAH', 635, '38.95370', '-90.35460'), ('FIDELITY', 105, '39.15460', '-90.16350'), ('FIELDON', 271, '39.10810', '-90.49990'), ('GRAFTON', 609, '38.97250', '-90.42700'), ('JERSEYVILLE', 7984, '39.11950', '-90.32800'), ('KEMPER', None, '39.21700', '-90.16700'), ('MCCLUSKY', None, '39.04340', '-90.32040'), ('NUTWOOD', None, '39.08480', '-90.55590'), ('OTTERVILLE', 120, '39.05100', '-90.39750')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'AKC164': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CHIGNIK', 79, '56.30160', '-158.41570'), ('CHIGNIK LAGOON', 103, '56.28410', '-158.51110'), ('CHIGNIK LAKE', 145, '56.25610', '-158.77220'), ('IGIUGIG', 53, '59.33510', '-155.90720'), ('ILIAMNA', 102, '59.77510', '-154.86760'), ('IVANOF BAY', 22, '55.96080', '-159.48950'), ('KOKHANOK', 174, '59.40750', '-154.74420'), ('LEVELOCK', 122, '59.10860', '-156.88500'), ('NEWHALEN', 160, '59.73440', '-154.88010'), ('NONDALTON', 221, '59.99040', '-154.85310'), ('PEDRO BAY', 50, '59.79050', '-154.13660'), ('PERRYVILLE', 107, '55.95860', '-159.22610'), ('PILOT POINT', 100, '57.61930', '-157.45900'), ('PORT ALSWORTH', 104, '60.20950', '-154.30400'), ('PORT HEIDEN', 119, '56.95510', '-158.58780')], 'partOfState': '', 'wfo': 'AFC'}, -'KSC063': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GOVE', None, '38.95970', '-100.48950'), ('GRAINFIELD', 327, '39.11410', '-100.46860'), ('GRINNELL', 329, '39.12490', '-100.63070'), ('PARK', 151, '39.11230', '-100.36170'), ('QUINTER', 961, '39.06660', '-100.23370'), ('THE MONUMENT ROCKS', None, '38.77000', '-100.77000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'ARC015': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('OAK HILL', None, '36.47720', '-93.69830'), ('PLEASANT RIDGE', None, '36.48170', '-93.64390'), ('DENVER', None, '36.39250', '-93.31470'), ('BERRYVILLE', 4433, '36.36470', '-93.56780'), ('EUREKA SPRINGS', 2278, '36.40110', '-93.73780'), ('OSAGE', None, '36.18250', '-93.40440'), ('GREEN FOREST', 2717, '36.33530', '-93.43580'), ('OAK GROVE', 376, '36.46120', '-93.44690'), ('DRYFORK', None, '36.15330', '-93.48890'), ('DELMAR', None, '36.16060', '-93.34080'), ('METALTON', None, '36.22310', '-93.52970'), ('RUDD', None, '36.21360', '-93.48580'), ('CONNOR', None, '36.25000', '-93.43330'), ('CARROLLTON', None, '36.26250', '-93.32170'), ('CABANAL', None, '36.27830', '-93.53190'), ('RULE', None, '36.27780', '-93.45970'), ('COIN', None, '36.33030', '-93.34780'), ('URBANETTE', None, '36.41970', '-93.53330'), ('GRANDVIEW', None, '36.43390', '-93.62110'), ('BUSCH', None, '36.46420', '-93.83060'), ('BEAVER', 95, '36.47360', '-93.76720')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'ILC067': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADRIAN', None, '40.51670', '-91.16670'), ('AUGUSTA', 657, '40.23090', '-90.94890'), ('BASCO', 107, '40.32680', '-91.19910'), ('BENTLEY', 43, '40.34470', '-91.11110'), ('BOWEN', 535, '40.23200', '-91.06360'), ('BURNSIDE', None, '40.50000', '-91.10000'), ('CARTHAGE', 2725, '40.41430', '-91.13510'), ('COLUSA', None, '40.56670', '-91.16670'), ('DALLAS CITY', 1055, '40.63500', '-91.16450'), ('DENVER', None, '40.28330', '-91.10000'), ('DISCO', None, '40.61670', '-91.01670'), ('ELVASTON', 152, '40.39430', '-91.24840'), ('FERRIS', 168, '40.46950', '-91.16940'), ('FOUNTAIN GREEN', None, '40.48330', '-90.96670'), ('HAMILTON', 3029, '40.38910', '-91.36320'), ('LA HARPE', 1385, '40.58400', '-90.97000'), ('NAUVOO', 1063, '40.54750', '-91.38480'), ('NIOTA', None, '40.61670', '-91.28330'), ('PLYMOUTH', 562, '40.29120', '-90.92000'), ('PONTOOSUC', 171, '40.62860', '-91.21160'), ('STILLWELL', None, '40.21670', '-91.18330'), ('SUTTER', None, '40.28330', '-91.35000'), ('TIOGA', None, '40.21660', '-91.35000'), ('WARSAW', 1793, '40.35280', '-91.42690'), ('WEBSTER', None, '40.46670', '-91.00000'), ('WEST POINT', 195, '40.25560', '-91.18310'), ('WESTERN ILLINOIS THRESHER', None, '40.43330', '-91.33330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'ARC017': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('DERMOTT', 3292, '33.52660', '-91.43770'), ('EUDORA', 2819, '33.11980', '-91.26310'), ('LAKE VILLAGE', 2823, '33.32420', '-91.28350')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'ILC065': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELLE PRAIRIE CITY', 60, '38.22310', '-88.55150'), ('BROUGHTON', 193, '37.93410', '-88.46140'), ('DAHLGREN', 514, '38.19860', '-88.68410'), ('MACEDONIA', 51, '38.05380', '-88.70310'), ('MCLEANSBORO', 2945, '38.09230', '-88.53280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'ARC011': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BANKS', 120, '33.57590', '-92.26820'), ('HERMITAGE', 769, '33.44720', '-92.17020'), ('WARREN', 6442, '33.61010', '-92.06970')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'ILC063': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BRACEVILLE', 792, '41.22420', '-88.26640'), ('CARBON HILL', 392, '41.29630', '-88.29950'), ('COAL CITY', 4797, '41.28830', '-88.27820'), ('DIAMOND', 1393, '41.28870', '-88.25520'), ('EAST BROOKLYN', 123, '41.17240', '-88.26570'), ('GARDNER', 1406, '41.18770', '-88.31220'), ('KINSMAN', 109, '41.19060', '-88.56970'), ('MAZON', 904, '41.23960', '-88.42490'), ('MORRIS', 11928, '41.36860', '-88.42770'), ('SOUTH WILMINGTON', 621, '41.17420', '-88.27630'), ('VERONA', 257, '41.21570', '-88.50500')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'SCC069': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BENNETTSVILLE', 9425, '34.61720', '-79.68500'), ('BLENHEIM', 137, '34.51060', '-79.65310'), ('BROWNSVILLE', None, '34.39220', '-79.59250'), ('CLIO', 774, '34.57940', '-79.54670'), ('DUNBAR', None, '34.53360', '-79.56140'), ('FLETCHER', None, '34.70580', '-79.59560'), ('FULTON', None, '34.77810', '-79.79190'), ('MARLBORO', None, '34.53920', '-79.73280'), ('MCCOLL', 2498, '34.66860', '-79.54560'), ('TATUM', 69, '34.64380', '-79.58670'), ('WALLACE', None, '34.72000', '-79.84170')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'ILC061': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATHENSVILLE', None, '39.45580', '-90.18930'), ('BARROW', None, '39.50620', '-90.40140'), ('BELLTOWN', None, '39.38250', '-90.40790'), ('BERDAN', None, '39.36490', '-90.39760'), ('CARROLLTON', 2605, '39.29780', '-90.40680'), ('ELDRED', 211, '39.28620', '-90.55330'), ('GREENFIELD', 1179, '39.34430', '-90.20760'), ('HAYPRESS', None, '39.36050', '-90.53670'), ('HILLVIEW', 179, '39.44960', '-90.53790'), ('KANE', 459, '39.19030', '-90.35120'), ('OLD KANE', None, '39.18300', '-90.36700'), ('PATTERSON', None, '39.48070', '-90.48310'), ('ROCKBRIDGE', 189, '39.27290', '-90.20890'), ('ROODHOUSE', 2214, '39.48460', '-90.37340'), ('WALKERSVILLE', None, '39.38700', '-90.49540'), ('WHITE HALL', 2629, '39.43740', '-90.40400'), ('WOODY', None, '39.26370', '-90.48520'), ('WRIGHTS', None, '39.37580', '-90.29420')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'SCC067': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BRITTON NECK', None, '33.90000', '-79.33330'), ('CENTENARY', None, '34.03080', '-79.35580'), ('FRIENDSHIP', None, '34.01670', '-79.43560'), ('GAPWAY', None, '34.15750', '-79.24690'), ('GRESHAM', None, '33.93000', '-79.41140'), ('MARION', 7042, '34.17810', '-79.40060'), ('MULLINS', 5029, '34.20560', '-79.25470'), ('NICHOLS', 408, '34.23360', '-79.14890'), ('PEE DEE', None, '34.20580', '-79.53920'), ('RAINS', None, '34.09750', '-79.31580'), ('SELLERS', 277, '34.28250', '-79.47220')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCC065': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('MCCORMICK', 1489, '33.91000', '-82.29290'), ('MOUNT CARMEL', 237, '34.00610', '-82.50790'), ('PARKSVILLE', 120, '33.78620', '-82.21790'), ('PLUM BRANCH', 98, '33.84940', '-82.25920')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'FLC037': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLIGATOR PT', None, '29.89520', '-84.37750'), ('APALACHICLA MUNI A/P', None, '29.72490', '-85.02830'), ('APALACHICOLA', 2334, '29.71970', '-84.99100'), ('BAY CITY', None, '29.75700', '-85.02340'), ('BEVERLY', None, '29.85200', '-84.96860'), ('BUCK SIDING', None, '29.88640', '-84.98050'), ('CARRABELLE', 1303, '29.85240', '-84.66460'), ('CREELS', None, '29.82220', '-84.90920'), ('FORT GADSDEN', None, '29.91630', '-84.97710'), ('FRANKLIN', None, '29.76810', '-85.03830'), ('HAYS PLACE', None, '29.84000', '-84.94590'), ('HIGH BLUFF', None, '29.81860', '-84.82540'), ('LANARK VILLAGE', None, '29.88250', '-84.59580'), ('MCINTYRE', None, '29.98030', '-84.52630'), ('MORGAN PLACE', None, '30.00750', '-84.75660'), ('ST TERESA', None, '29.92980', '-84.45440'), ('TILTON', None, '29.73790', '-85.08190'), ('YENT PLACE', None, '29.86270', '-84.70040')], 'partOfState': '', 'wfo': 'TAE'}, -'ARC019': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AMITY', 762, '34.26610', '-93.46390'), ('ARKADELPHIA', 10912, '34.12380', '-93.07060'), ('CADDO VALLEY', 563, '34.18790', '-93.07000'), ('GUM SPRINGS', 194, '34.06450', '-93.09590'), ('GURDON', 2276, '33.91640', '-93.14810'), ('OKOLONA', 160, '34.00050', '-93.33720'), ('WHELEN SPRINGS', 84, '33.83160', '-93.12570')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'SCC061': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BISHOPVILLE', 3670, '34.21990', '-80.24790'), ('LYNCHBURG', 588, '34.05920', '-80.07700')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'ILC069': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAVE-IN-ROCK', 346, '37.47020', '-88.16550'), ('ELIZABETHTOWN', 348, '37.45080', '-88.30430'), ('GROSS', None, '37.53300', '-88.29050'), ('KARBERS RIDGE', None, '37.57970', '-88.33330'), ('ROSICLARE', 1213, '37.42240', '-88.35070')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ALC127': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CARBON HILL', 2071, '33.89580', '-87.52500'), ('CORDOVA', 2423, '33.76060', '-87.19280'), ('DORA', 2413, '33.73140', '-87.08320'), ('ELDRIDGE', 184, '33.92200', '-87.61980'), ('JASPER', 14052, '33.85200', '-87.27010'), ('KANSAS', 260, '33.90180', '-87.55330'), ('NAUVOO', 284, '33.98850', '-87.48780'), ('OAKMAN', 944, '33.71300', '-87.38850'), ('PARRISH', 1268, '33.73380', '-87.28070'), ('SIPSEY', 552, '33.82210', '-87.08310'), ('SUMITON', 2665, '33.75310', '-87.04820')], 'partOfState': '', 'wfo': 'BMX'}, -'FLC039': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRANCHVILLE', None, '30.65280', '-84.48300'), ('CHATTAHOOCHEE', 3287, '30.70000', '-84.84350'), ('CONCORD', None, '30.65680', '-84.36510'), ('DARSEY', None, '30.68750', '-84.38020'), ('DOGTOWN', None, '30.67750', '-84.50340'), ('DOUGLAS CITY', None, '30.59080', '-84.64400'), ('EBENEZER', None, '30.45610', '-84.59210'), ('FLORENCE', None, '30.59350', '-84.48290'), ('FREEMONT', None, '30.61420', '-84.45250'), ('GIBSON', None, '30.56550', '-84.39940'), ('GREENSBORO', 619, '30.57020', '-84.74440'), ('GRETNA', 1709, '30.61770', '-84.66050'), ('HARDAWAY', None, '30.63460', '-84.73650'), ('HARDIN HEIGHTS', None, '30.67460', '-84.83960'), ('HAVANA', 1713, '30.62340', '-84.41220'), ('HINSON', None, '30.64870', '-84.41680'), ('JAMIESON', None, '30.66140', '-84.45090'), ('JUNIPER', None, '30.54220', '-84.75340'), ('LITTMAN', None, '30.59070', '-84.51460'), ('MIDWAY', 1714, '30.49120', '-84.46210'), ('MT PLEASANT', None, '30.65720', '-84.69310'), ('OAK GROVE', None, '30.69140', '-84.73330'), ('QUINCY', 6982, '30.58430', '-84.58410'), ('QUINCY A/P', None, '30.59750', '-84.55750'), ('RICH BAY', None, '30.60410', '-84.39190'), ('RIVER JUNCTION', None, '30.68530', '-84.84140'), ('ROSEDALE', None, '30.65460', '-84.81410'), ('SANTA CLARA', None, '30.58290', '-84.56220'), ('SAWDUST', None, '30.54640', '-84.67770'), ('SCOTLAND', None, '30.57580', '-84.43040'), ('SHADY REST', None, '30.58790', '-84.48690'), ('SYCAMORE', None, '30.58120', '-84.82070'), ('WETUMPKA', None, '30.48170', '-84.62340')], 'partOfState': '', 'wfo': 'TAE'}, -'TNC047': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADEN', 271, '35.36970', '-89.57590'), ('GALLAWAY', 666, '35.33830', '-89.60350'), ('LA GRANGE', 136, '35.04930', '-89.23470'), ('LAGRANGE', None, '35.05000', '-89.21670'), ('MOSCOW', 422, '35.06130', '-89.39680'), ('OAKLAND', 1279, '35.22420', '-89.51340'), ('PIPERTON', 589, '35.02650', '-89.63020'), ('ROSSVILLE', 380, '35.04380', '-89.54290'), ('SOMERVILLE', 2519, '35.23750', '-89.35070'), ('WILLISTON', 341, '35.15940', '-89.37600')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'GAC255': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EAST GRIFFIN', 1635, '33.24300', '-84.23230'), ('EXPERIMENT', 3233, '33.27820', '-84.27730'), ('GRIFFIN', 23451, '33.24110', '-84.27290'), ('ORCHARD HILL', 230, '33.18670', '-84.21150'), ('SUNNY SIDE', 142, '33.34160', '-84.29030')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'MOC139': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AMERICUS', None, '38.78030', '-91.56400'), ('BELLFLOWER', 427, '39.00380', '-91.35270'), ('BIG SPRING', None, '38.80000', '-91.48300'), ('BUELL', None, '39.03430', '-91.43890'), ('DANVILLE', None, '38.91070', '-91.53480'), ('HIGH HILL', 231, '38.87540', '-91.37560'), ('JONESBURG', 695, '38.85360', '-91.30650'), ('MCKITTRICK', 72, '38.73520', '-91.44270'), ('MIDDLETOWN', 199, '39.12850', '-91.41450'), ('MINEOLA', None, '38.88820', '-91.57160'), ('MONTGOMERY CITY', 2442, '38.97560', '-91.50510'), ('NEW FLORENCE', 764, '38.90820', '-91.44990'), ('RHINELAND', 176, '38.71860', '-91.51730'), ('WELLSVILLE', 1423, '39.07370', '-91.56790')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOC137': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DUNCANS BRIDGE', None, '39.57560', '-92.26380'), ('FLORIDA', 9, '39.49330', '-91.79010'), ('GRANVILLE', None, '39.56260', '-92.09770'), ('HOLLIDAY', 129, '39.49360', '-92.13190'), ('INDIAN CREEK', None, '39.59450', '-91.77690'), ('MADISON', 586, '39.47320', '-92.21190'), ('MONROE CITY', 2588, '39.65410', '-91.73220'), ('PARIS', 1529, '39.47710', '-92.00390'), ('SANTA FE', None, '39.36700', '-91.83300'), ('STOUTSVILLE', 44, '39.55170', '-91.85290'), ('WOODLAWN', None, '39.58300', '-92.21700')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'ALC123': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALEXANDER CITY', 15008, '32.92700', '-85.93400'), ('CAMP HILL', 1273, '32.80010', '-85.65330'), ('DADEVILLE', 3212, '32.83190', '-85.76520'), ('DAVISTON', 267, '33.05510', '-85.63920'), ('GOLDVILLE', 37, '33.08350', '-85.78440'), ("JACKSONS' GAP", 761, '32.88410', '-85.81700'), ('NEW SITE', 848, '33.03520', '-85.77500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'MOC135': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CALIFORNIA', 4005, '38.63160', '-92.56680'), ('CLARKSBURG', 375, '38.66140', '-92.66610'), ('ENON', None, '38.45700', '-92.48950'), ('HIGH POINT', None, '38.48300', '-92.58300'), ('JAMESTOWN', 382, '38.76570', '-92.47780'), ('KLIEVER', None, '38.69730', '-92.50340'), ('LATHAM', None, '38.56090', '-92.68230'), ('LUPUS', 29, '38.84570', '-92.45420'), ('MCGIRK', None, '38.61120', '-92.47620'), ('SANDY HOOK', None, '38.74830', '-92.40840'), ('TIPTON', 3261, '38.65310', '-92.78000')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'MOC133': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANNISTON', 285, '36.82450', '-89.32620'), ('BERTRAND', 740, '36.90900', '-89.44970'), ('CHARLESTON', 4732, '36.91890', '-89.33790'), ('EAST PRAIRIE', 3227, '36.77900', '-89.38410'), ('WILSON CITY', 165, '36.92300', '-89.22280'), ('WYATT', 364, '36.91200', '-89.22360')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOC131': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AURORA SPRINGS', None, '38.32460', '-92.58490'), ('BAGNELL', 86, '38.22660', '-92.60130'), ('BRUMLEY', 102, '38.08630', '-92.48660'), ('ELDON', 4895, '38.34830', '-92.58130'), ('ETTERVILLE', None, '38.36740', '-92.46990'), ('IBERIA', 605, '38.09020', '-92.29240'), ('KAISER', None, '38.13350', '-92.58960'), ('LAKE OZARK', 1489, '38.19850', '-92.63850'), ('LAKELAND', None, '38.21950', '-92.63090'), ('LAKEVIEW', None, '38.21380', '-92.62710'), ('MARYS HOME', None, '38.30550', '-92.35500'), ('OLEAN', 157, '38.41040', '-92.53010'), ('SAINT ELIZABETH', None, '38.25580', '-92.26770'), ('ST. ELIZABETH', 297, '38.25620', '-92.26600'), ('TUSCUMBIA', 218, '38.23290', '-92.45830'), ('ULMAN', None, '38.15300', '-92.44380')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'GAC253': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAVIS PARK', None, '31.02980', '-84.87640'), ('DESSER', None, '30.88580', '-84.86290'), ('DONALDSONVILLE MUNI A/P', None, '31.00630', '-84.87770'), ('DONALSONVILLE', 2796, '31.04070', '-84.87850'), ('FAIRCHILD', None, '30.82310', '-84.90680'), ('IRON CITY', 321, '31.01300', '-84.81380'), ('LELA', None, '30.98290', '-84.86310'), ('LITTLE HOPE', None, '31.01020', '-84.91000'), ('REYNOLDSVILLE', None, '30.85640', '-84.77820'), ('RIVERTURN', None, '30.98890', '-84.94760'), ('SEMINOLE STATE PARK', None, '30.79180', '-84.87920'), ('SHARPHAGEN', None, '31.01840', '-84.82910')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'KSC061': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('JUNCTION CITY', 18886, '39.02860', '-96.83110'), ('MILFORD', 502, '39.16830', '-96.91220'), ('MILFORD LAKE', None, '39.16000', '-96.92000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'ALC121': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BON AIR', 96, '33.26130', '-86.33810'), ('CHILDERSBURG', 4927, '33.27940', '-86.35330'), ('GANTTS QUARRY', 0, '33.14820', '-86.29940'), ('LINCOLN', 4577, '33.59800', '-86.13940'), ('MIGNON', 1348, '33.19400', '-86.26400'), ('OAK GROVE', 457, '33.18620', '-86.30290'), ('SYLACAUGA', 12616, '33.17600', '-86.26130'), ('TALLADEGA', 15143, '33.43200', '-86.09800'), ('TALLADEGA SPRINGS', 124, '33.11750', '-86.44450'), ('WALDO', 281, '33.39090', '-86.03540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'GAC251': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALTMAN', None, '32.72560', '-81.63060'), ('BASCOM', None, '32.84030', '-81.66830'), ('CAMERON', None, '32.55780', '-81.67390'), ('CAPTOLO', None, '32.62530', '-81.59720'), ('COOPERVILLE', None, '32.59060', '-81.70420'), ('DOVER', None, '32.57690', '-81.71530'), ('FARMDALE', None, '32.69940', '-81.61030'), ('GOLOID', None, '32.69140', '-81.67250'), ('GREEN HILL', None, '32.70940', '-81.59310'), ('HALCYONDALE', None, '32.53890', '-81.59830'), ('HILLTONIA', None, '32.88330', '-81.65830'), ('HUNTERS', None, '32.65440', '-81.55060'), ('LEWIS', None, '32.80170', '-81.68170'), ('MIDDLEGROUND', None, '32.64110', '-81.53280'), ('MILLHAVEN', None, '32.93360', '-81.64970'), ('NEWINGTON', 322, '32.59000', '-81.50420'), ('OGEECHEE', None, '32.61970', '-81.76500'), ('OLIVER', 253, '32.52140', '-81.53330'), ('PARKERS', None, '32.69970', '-81.81000'), ('ROCKY FORD', 186, '32.66330', '-81.82970'), ('SHEPPARDS', None, '32.63720', '-81.53530'), ('STALCO', None, '32.53330', '-81.55890'), ('SYLVANIA', 2675, '32.75030', '-81.63690'), ('THOMASBORO', None, '32.71940', '-81.79030'), ('WATERS', None, '32.75560', '-81.66580'), ('WHITE HILL', None, '32.67970', '-81.57330'), ('WOODCLIFF', None, '32.74060', '-81.76330'), ('ZEIGLER', None, '32.75170', '-81.73030')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'MNC173': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CANBY', 1903, '44.71460', '-96.26900'), ('CLARKFIELD', 944, '44.79120', '-95.80730'), ('ECHO', 278, '44.62270', '-95.41130'), ('GRANITE FALLS', 3070, '44.81110', '-95.53870'), ('HANLEY FALLS', 323, '44.69190', '-95.61910'), ('HAZEL RUN', 64, '44.74980', '-95.71610'), ('PORTER', 190, '44.64070', '-96.16960'), ('ST LEO', None, '44.71610', '-96.05470'), ('WOOD LAKE', 436, '44.65080', '-95.53490')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNC171': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBERTVILLE', 3621, '45.23920', '-93.66000'), ('ANNANDALE', 2684, '45.26220', '-94.11890'), ('BUFFALO', 10097, '45.17700', '-93.86850'), ('CLEARWATER', 858, '45.41020', '-94.04270'), ('COKATO', 2727, '45.07680', '-94.18940'), ('DELANO', 3837, '45.04130', '-93.78550'), ('HOWARD LAKE', 1853, '45.05960', '-94.06580'), ('MAPLE LAKE', 1633, '45.23140', '-94.00300'), ('MONTICELLO', 7868, '45.30470', '-93.80220'), ('MONTROSE', 1143, '45.06720', '-93.91230'), ('SOUTH HAVEN', 204, '45.29150', '-94.21590'), ('ST MICHAEL', None, '45.21090', '-93.66370'), ('WAVERLY', 732, '45.06890', '-93.96900')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'OHC175': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CAREY', 3901, '40.95150', '-83.38190'), ('HARPSTER', 203, '40.73860', '-83.25060'), ('KIRBY', 132, '40.81340', '-83.41870'), ('MARSEILLES', 124, '40.70120', '-83.39280'), ('NEVADA', 814, '40.81860', '-83.13140'), ('SYCAMORE', 914, '40.95100', '-83.17090'), ('UPPER SANDUSKY', 6533, '40.83100', '-83.28080'), ('WHARTON', 409, '40.86200', '-83.46470')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHC173': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAIRDSTOWN', 130, '41.17100', '-83.60700'), ('BLOOMDALE', 724, '41.17090', '-83.55360'), ('BOWLING GREEN', 29636, '41.37640', '-83.64950'), ('BRADNER', 1171, '41.32360', '-83.43650'), ('CUSTAR', 208, '41.28420', '-83.84350'), ('CYGNET', 564, '41.24010', '-83.64380'), ('GRAND RAPIDS', 1002, '41.41040', '-83.86570'), ('HASKINS', 638, '41.46380', '-83.70410'), ('HOYTVILLE', 296, '41.19030', '-83.78370'), ('JERRY CITY', 453, '41.25310', '-83.60270'), ('LUCKEY', 998, '41.45230', '-83.48370'), ('MILLBURY', 1161, '41.56410', '-83.42570'), ('MILTON CENTER', 195, '41.30140', '-83.82950'), ('NORTH BALTIMORE', 3361, '41.18030', '-83.67560'), ('NORTHWOOD', 5471, '41.61030', '-83.48030'), ('PEMBERVILLE', 1365, '41.40980', '-83.45790'), ('PERRYSBURG', 16945, '41.55300', '-83.62380'), ('PORTAGE', 428, '41.32380', '-83.64790'), ('RISINGSUN', 620, '41.26880', '-83.42640'), ('ROSSFORD', 6406, '41.60370', '-83.56200'), ('TONTOGANY', 364, '41.42010', '-83.74010'), ('WALBRIDGE', 2546, '41.58560', '-83.48920'), ('WAYNE', 842, '41.30120', '-83.47240'), ('WEST MILLGROVE', 78, '41.24380', '-83.49210'), ('WESTON', 1659, '41.34580', '-83.79460')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHC171': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALVORDTON', 305, '41.66530', '-84.43440'), ('BLAKESLEE', 130, '41.52390', '-84.73110'), ('BRYAN', 8333, '41.47020', '-84.54800'), ('EDGERTON', 2117, '41.44670', '-84.74980'), ('EDON', 898, '41.55660', '-84.76830'), ('MONTPELIER', 4320, '41.58160', '-84.60050'), ('PIONEER', 1460, '41.67800', '-84.55210'), ('STRYKER', 1406, '41.50320', '-84.41760'), ('WEST UNITY', 1790, '41.58600', '-84.43420')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'NEC149': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BASSETT', 743, '42.58260', '-99.53570'), ('NEWPORT', 98, '42.60080', '-99.32760'), ('ROSE', None, '42.17000', '-99.52850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'VAC640': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('GALAX CITY', None, '36.66670', '-80.91670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'SCC073': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('FAIR PLAY', None, '34.51110', '-82.98560'), ('LONG CREEK', None, '34.77330', '-83.25920'), ('MOUNTAIN REST', None, '34.86920', '-83.15330'), ('OAKWAY', None, '34.60110', '-83.02580'), ('SALEM', 126, '34.89150', '-82.97790'), ('SENECA', 7652, '34.68610', '-82.95780'), ('TOWNVILLE', None, '34.56360', '-82.89860'), ('WALHALLA', 3801, '34.77200', '-83.06180'), ('WESTMINSTER', 2743, '34.66620', '-83.09160')], 'partOfState': '', 'wfo': 'GSP'}, -'NEC141': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('COLUMBUS', 20971, '41.43470', '-97.35560'), ('CORNLEA', 41, '41.68070', '-97.56710'), ('CRESTON', 215, '41.70710', '-97.36150'), ('DUNCAN', 359, '41.39000', '-97.49350'), ('HUMPHREY', 786, '41.68820', '-97.48740'), ('LINDSAY', 276, '41.70060', '-97.69430'), ('MONROE', 307, '41.47370', '-97.60010'), ('PLATTE CENTER', 359, '41.53800', '-97.48720'), ('TARNOV', 63, '41.61490', '-97.50280')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'WIC115': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ADAMS BEACH', None, '44.68000', '-88.68000'), ('ADVANCE', None, '44.78000', '-88.33000'), ('ANGELICA', None, '44.66000', '-88.30000'), ('ANIWA', 272, '45.00000', '-89.21000'), ('BELLE PLAINE', None, '44.71000', '-88.66000'), ('BIRNAMWOOD', 795, '44.93000', '-89.19000'), ('BONDUEL', 1416, '44.73000', '-88.44000'), ('BOWLER', 343, '44.86000', '-88.96000'), ('CAROLINE', None, '44.71000', '-88.88000'), ('CECIL', 466, '44.79000', '-88.44000'), ('ELAND', 251, '44.88000', '-89.19000'), ('GREEN VALLEY', None, '44.79000', '-88.26000'), ('GRESHAM', 575, '44.84000', '-88.78000'), ('HOFA PARK', None, '44.63000', '-88.33000'), ('KRAKOW', None, '44.75000', '-88.25000'), ('LEOPOLIS', None, '44.76000', '-88.83000'), ('LYNDHURST', None, '44.83000', '-88.80000'), ('MATTOON', 466, '45.00000', '-89.03000'), ('MORGAN', None, '44.88000', '-88.81000'), ('NAVARINO', None, '44.61000', '-88.48000'), ('PELLA', None, '44.73000', '-88.80000'), ('PULCIFER', None, '44.84000', '-88.34000'), ('RED RIVER', None, '44.81000', '-88.69000'), ('ROSE LAWN', None, '44.59000', '-88.31000'), ('SHAWANO', 8298, '44.78000', '-88.59000'), ('SHAWANO LAKE', None, '44.80000', '-88.51000'), ('SHEPLEY', None, '44.86000', '-89.08000'), ('SPLIT ROCK', None, '44.70000', '-89.01000'), ('THORNTON', None, '44.79000', '-88.68000'), ('TIGERTON', 764, '44.73000', '-89.05000'), ('TILLEDA', None, '44.81000', '-88.90000'), ('WHITCOMB', None, '44.78000', '-89.09000'), ('WITTENBERG', 1177, '44.81000', '-89.15000'), ('ZACHOW', None, '44.73000', '-88.34000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'NEC143': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('OSCEOLA', 921, '41.17790', '-97.54840'), ('POLK', 322, '41.07520', '-97.78280'), ('SHELBY', 690, '41.19420', '-97.42640'), ('STROMSBURG', 1232, '41.11630', '-97.59050')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GID'}, -'NEC145': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BARTLEY', 355, '40.25250', '-100.30930'), ('DANBURY', 127, '40.03780', '-100.40440'), ('INDIANOLA', 642, '40.23490', '-100.41890'), ('LEBANON', 70, '40.04920', '-100.27590'), ('MCCOOK', 7994, '40.20410', '-100.62030')], 'partOfState': 'SOUTHWEST', 'wfo': 'GLD'}, -'NEC147': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BARADA', 28, '40.21830', '-95.57860'), ('DAWSON', 209, '40.13090', '-95.82980'), ('FALLS CITY', 4671, '40.06530', '-95.59960'), ('HUMBOLDT', 941, '40.16620', '-95.94420'), ('PRESTON', 50, '40.03410', '-95.51730'), ('RULO', 226, '40.05200', '-95.43000'), ('SALEM', 138, '40.07710', '-95.72680'), ('SHUBERT', 252, '40.23580', '-95.68330'), ('STELLA', 220, '40.23160', '-95.77260'), ('VERDON', 223, '40.14890', '-95.71080')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'GAC073': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EVANS', 17727, '33.51380', '-82.14550'), ('GROVETOWN', 6089, '33.44940', '-82.20180'), ('HARLEM', 1814, '33.41400', '-82.31700'), ('MARTINEZ', 27749, '33.51940', '-82.08830')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'FLC119': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BUSHNELL', 2050, '28.66440', '-82.11440'), ('CENTER HILL', 910, '28.64740', '-81.99810'), ('COLEMAN', 647, '28.80110', '-82.06930'), ('LAKE PANASOFFKEE', 3413, '28.79020', '-82.13010'), ('NOBLETON', 160, '28.64500', '-82.26000'), ('THE GREEN SWAMP', None, '28.38000', '-82.00000'), ('WEBSTER', 805, '28.61180', '-82.05140'), ('WILDWOOD', 3924, '28.85430', '-82.04080')], 'partOfState': 'CENTRAL', 'wfo': 'TBW'}, -'GAC179': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALLENHURST', 788, '31.78390', '-81.60780'), ('CREEK ISLAND', None, '31.82060', '-81.65690'), ('CROSSROADS', None, '31.74720', '-81.46330'), ('DORCHESTER', None, '31.79530', '-81.40530'), ('FLEMING', None, '31.88060', '-81.42670'), ('FLEMINGTON', 369, '31.85940', '-81.56420'), ('FORT STEWART', 11205, '31.86250', '-81.51780'), ('GUM BRANCH', None, '31.85810', '-81.72690'), ('HALFMOON LANDING', None, '31.69940', '-81.27860'), ('HINESVILLE', 30392, '31.84670', '-81.59610'), ('LECOUNT', None, '31.67970', '-81.45890'), ('LIMERICK', None, '31.83670', '-81.38610'), ('LIVE OAK', None, '31.81250', '-81.62440'), ('MCINTOSH', None, '31.82560', '-81.52390'), ('MIDWAY', 1100, '31.80560', '-81.43080'), ('MILL CREEK', None, '31.82920', '-81.62060'), ('RETREAT', None, '31.70280', '-81.41420'), ('RICEBORO', 736, '31.73530', '-81.43360'), ('SCREVEN FORK', None, '31.77310', '-81.49140'), ('SEABROOK', None, '31.74330', '-81.32890'), ('SUNBURY', None, '31.76810', '-81.28110'), ('TRINITY', None, '31.92970', '-81.55670'), ('WALTHOURVILLE', 4030, '31.77390', '-81.63280'), ('WILDWOOD', None, '31.81940', '-81.61530'), ('WILLIE', None, '32.01390', '-81.66750')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'FLC113': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELFOREST', None, '30.60350', '-86.85260'), ('DIXONVILLE', None, '31.00000', '-87.03670'), ('ALLENTOWN', None, '30.76220', '-87.04220'), ('BAGDAD', 1490, '30.59690', '-87.03140'), ('BERRYDALE', None, '30.89600', '-87.01640'), ('CHUMUCKLA', None, '30.77610', '-87.23750'), ('GULF BREEZE', 5665, '30.35900', '-87.19600'), ('HAROLD', None, '30.65860', '-86.88560'), ('JAY', 579, '30.95250', '-87.15210'), ('MCLELLAN', None, '30.98940', '-86.89310'), ('MILTON', 7045, '30.63170', '-87.04000'), ('MILTON NEAR WHITING FIELD', None, '30.73310', '-87.01690'), ('MUNSON', None, '30.85720', '-86.87330'), ('NAVARRE', None, '30.41000', '-86.86390'), ('ORIOLE BEACH', None, '30.37500', '-87.09690'), ('PACE', 7393, '30.59890', '-87.16080')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'FLC111': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CARLTON', None, '27.34320', '-80.42290'), ('COLLINS PARK ESTATES', None, '27.36980', '-80.32090'), ('FORT PIERCE', 37516, '27.44130', '-80.32200'), ('FORT PIERCE NORTH', 7386, '27.47480', '-80.35620'), ('FORT PIERCE SOUTH', 5672, '27.41080', '-80.35510'), ('FREDERICK DOUGLASS PARK', None, '27.40920', '-80.26770'), ('INDIAN RIVER ESTATES', 5793, '27.36400', '-80.31010'), ('INDRIO', None, '27.52040', '-80.35320'), ('LAKEWOOD PARK', 10458, '27.53800', '-80.39030'), ('PORT SAINT LUCIE', None, '27.27980', '-80.35450'), ('PORT SAINT LUCIE RIVER PA', None, '27.32130', '-80.33180'), ('QUEENS COVE', None, '27.51480', '-80.31790'), ('SAINT LUCIE AIRPORT', None, '27.47240', '-80.40490'), ('SAINT LUCIE NUCLEAR PLANT', None, '27.29550', '-80.22050'), ('SAINT LUCIE WEST', None, '27.31490', '-80.39560'), ('WAVELAND', None, '27.26760', '-80.20690'), ('WHITE CITY', 4221, '27.37900', '-80.34230')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLC117': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALTAMONTE SPRINGS', 41200, '28.66210', '-81.39520'), ('CASSELBERRY', 22629, '28.66340', '-81.32350'), ('CHULUOTA', 1921, '28.63950', '-81.12030'), ('FERN PARK', 8318, '28.64820', '-81.34580'), ('FOREST CITY', 12612, '28.66120', '-81.44510'), ('GENEVA', 2601, '28.73940', '-81.11530'), ('GOLDENROD', 12871, '28.61150', '-81.29170'), ('LAKE HARNEY', None, '28.76140', '-81.05850'), ('LAKE JESSUP', None, '28.72660', '-81.22130'), ('LAKE MARY', 11458, '28.75900', '-81.33410'), ('LONGWOOD', 13745, '28.70100', '-81.34840'), ('MIDWAY', 1714, '28.79010', '-81.23120'), ('MULLET LAKE PARK', None, '28.78890', '-81.13870'), ('OVIEDO', 26316, '28.65750', '-81.18140'), ('PALM SHALDOWS', None, '28.78830', '-81.14320'), ('SANFORD', 38291, '28.78920', '-81.27570'), ('WEKIVA SPRINGS', None, '28.69840', '-81.42600'), ('WINTER SPRINGS', 31666, '28.68150', '-81.27470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLC115': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BEE RIDGE', 8744, '27.28730', '-82.47560'), ('DESOTO LAKES', 3198, '27.37120', '-82.49000'), ('ENGLEWOOD', 16196, '26.95950', '-82.35430'), ('FRUITVILLE', 12741, '27.33250', '-82.46350'), ('GATOR CREEK ESTATES', None, '27.26000', '-82.38000'), ('HIDDEN RIVER', None, '27.28000', '-82.27000'), ('LAUREL', 8393, '27.14250', '-82.46240'), ('MYAKKA RIVER STATE PARK', None, '27.24300', '-82.31600'), ('NOKOMIS', 3334, '27.12190', '-82.43670'), ('NORTH PORT', 22797, '27.04960', '-82.19490'), ('RIDGE WOOD HEIGHTS', 5028, '27.28700', '-82.51350'), ('SARASOTA', 52715, '27.33610', '-82.54660'), ('SIESTA KEY', 7150, '27.27710', '-82.56650'), ('SOUTH GATE RIDGE', 5655, '27.28600', '-82.49680'), ('SOUTH SARASOTA', 5314, '27.28590', '-82.53320'), ('SOUTH VENICE', 13539, '27.04260', '-82.41430'), ('VAMO', 5285, '27.22860', '-82.49650'), ('VENICE', 17764, '27.09790', '-82.45580'), ('VENICE GARDENS', 7466, '27.06900', '-82.40500'), ('WARM MINERAL SPRINGS', 4811, '27.04850', '-82.27030')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'WIC119': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CHELSEA', None, '45.28030', '-90.31915'), ('DONALD', None, '45.24832', '-90.89940'), ('GILMAN', 474, '45.16690', '-90.80690'), ('GOODRICH', None, '45.16151', '-90.06330'), ('HANNIBAL', None, '45.24832', '-90.78290'), ('JUMP RIVER', None, '45.35569', '-90.80117'), ('LUBLIN', 110, '45.07520', '-90.72400'), ('MEDFORD', 4350, '45.13860', '-90.34790'), ('POLLEY', None, '45.13638', '-90.80117'), ('PREKINSTOWN', None, '45.20035', '-90.63441'), ('RIB LAKE', 878, '45.31890', '-90.20360'), ('STETSONVILLE', 563, '45.07640', '-90.31250'), ('WESTBORO', None, '45.34884', '-90.30088')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ARX'}, -'MNC129': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BIRD ISLAND', 1195, '44.76480', '-94.89400'), ('BUFFALO LAKE', 768, '44.73670', '-94.61770'), ('DANUBE', 529, '44.79130', '-95.10250'), ('FAIRFAX', 1295, '44.52820', '-94.72290'), ('FRANKLIN', 498, '44.53090', '-94.88610'), ('HECTOR', 1166, '44.74140', '-94.71270'), ('MORTON', 442, '44.55300', '-94.98490'), ('OLIVIA', 2570, '44.77580', '-94.99710'), ('RENVILLE', 1323, '44.79420', '-95.21110'), ('SACRED HEART', 549, '44.78310', '-95.35030')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'KSC057': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELLEFONT', None, '37.88000', '-99.65000'), ('BLOOM', None, '37.48000', '-99.88000'), ('BUCKLIN', 725, '37.54900', '-99.63460'), ('DODGE CITY', 25176, '37.75870', '-100.01540'), ('FORD', 314, '37.63700', '-99.75400'), ('FT. DODGE', None, '37.74000', '-99.93000'), ('HOWELL', None, '37.78000', '-100.18000'), ('KINGSDOWN', None, '37.51000', '-99.76000'), ('SPEARVILLE', 813, '37.84800', '-99.75430'), ('WINDTHORST', None, '37.78000', '-99.63000'), ('WRIGHT', None, '37.78000', '-99.89000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'TXC229': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CORNUDAS', None, '31.78330', '-105.46670'), ('DELL CITY', 413, '31.93520', '-105.19980'), ('FT HANCOCK', None, '31.29830', '-105.84470'), ('MCNARY', None, '31.24800', '-105.79600'), ('SALT FLAT', None, '31.74780', '-105.08580'), ('SIERRA BLANCA', 533, '31.17450', '-105.35670')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'OHC089': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALEXANDRIA', 85, '40.08970', '-82.61310'), ('BEECHWOOD TRAILS', 2258, '40.02370', '-82.65090'), ('BUCKEYE LAKE', 3049, '39.93700', '-82.47920'), ('GRANVILLE', 3167, '40.07100', '-82.50160'), ('GRANVILLE SOUTH', 1194, '40.05290', '-82.54020'), ('GRATIOT', 187, '39.95140', '-82.21730'), ('HANOVER', 885, '40.07920', '-82.27050'), ('HARBOR HILLS', 1303, '39.93670', '-82.43520'), ('HARTFORD', 412, '40.23940', '-82.68770'), ('HEATH', 8527, '40.02690', '-82.43740'), ('HEBRON', 2034, '39.96260', '-82.49160'), ('JOHNSTOWN', 3440, '40.15110', '-82.68770'), ('KIRKERSVILLE', 520, '39.95030', '-82.59800'), ('NEWARK', 46279, '40.06770', '-82.42340'), ('PATASKALA', 10249, '40.00070', '-82.67350'), ('ST. LOUISVILLE', 346, '40.17150', '-82.41900'), ('SUMMIT STATION', None, '40.00480', '-82.75080'), ('UTICA', 2130, '40.23340', '-82.44360')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'GAC171': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALDORA', 98, '33.05130', '-84.17410'), ('BARNESVILLE', 5972, '33.05080', '-84.15510'), ('MILNER', 522, '33.11410', '-84.19510')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'MNC009': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('FOLEY', 2154, '45.66320', '-93.90940'), ('GILMAN', 215, '45.73530', '-93.95010'), ('RICE', 711, '45.74860', '-94.22870'), ('RONNEBY', 16, '45.68220', '-93.86570'), ('SAUK RAPIDS', 10213, '45.59440', '-94.16610')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'TXC223': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMO', 621, '33.06050', '-95.47510'), ('CUMBY', 616, '33.13300', '-95.83880'), ('SULPHUR SPRINGS', 14551, '33.14390', '-95.61010'), ('TIRA', 248, '33.32620', '-95.56230')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'MNC007': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEMIDJI', 11917, '47.48230', '-94.87860'), ('BLACKDUCK', 696, '47.72640', '-94.54820'), ('CARMEL', None, '48.28170', '-95.44420'), ('DEBS', None, '47.73140', '-95.12780'), ('FOURTOWN', None, '48.28110', '-95.33530'), ('FUNKLEY', 15, '47.78640', '-94.42750'), ('GATES CORNER', None, '48.45280', '-95.31890'), ('HINES', None, '47.68610', '-94.63250'), ('ISLAND LAKE', None, '47.78890', '-95.01780'), ('JELLE', None, '48.23810', '-95.40000'), ('KELLIHER', 294, '47.94300', '-94.44600'), ('LAVINIA', None, '47.51500', '-94.81140'), ('MALCOLM', None, '48.32440', '-95.33530'), ('NEBISH', None, '47.77140', '-94.84720'), ('OTTO', None, '48.08810', '-94.60720'), ('PENNINGTON', None, '47.48360', '-94.47970'), ('PINEWOOD', None, '47.59720', '-95.12750'), ('PONEMAH', 874, '48.02060', '-94.91360'), ('PUPOSKY', None, '47.67780', '-94.90690'), ('RED LAKE', 1430, '47.87640', '-95.01670'), ('REDBY', 957, '47.87860', '-94.91280'), ('ROSBY', None, '47.42080', '-94.80640'), ('SAUM', None, '47.97470', '-94.67670'), ('SHOOKS', None, '47.87420', '-94.43810'), ('SHOTLEY', None, '48.04890', '-94.63860'), ('SOLWAY', 69, '47.52070', '-95.12970'), ('TENSTRIKE', 195, '47.66080', '-94.68460'), ('THORHULT', None, '48.23030', '-95.24780'), ('TURTLE RIVER', 75, '47.58850', '-94.76020'), ('WASKISH', None, '48.16140', '-94.51220'), ('WILTON', 186, '47.50520', '-94.99120')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGF'}, -'TXC221': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRANBURY', 5718, '32.44020', '-97.78770'), ('LIPAN', 425, '32.51890', '-98.04670'), ('OAK TRAIL SHORES', 2475, '32.48860', '-97.83390'), ('TOLAR', 504, '32.39000', '-97.91680')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'MNC005': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AUDUBON', 445, '46.86420', '-95.98090'), ('BAD MEDICINE LAKE', None, '47.12690', '-95.40080'), ('CALLAWAY', 200, '46.98300', '-95.91130'), ('CORMORANT', None, '46.73060', '-96.06530'), ('DETROIT LAKES', 7348, '46.81310', '-95.84220'), ('EVERGREEN', None, '46.76000', '-95.45060'), ('FRAZEE', 1377, '46.72700', '-95.69960'), ('HEIGHT OF LAND LAKE', None, '46.89110', '-95.60830'), ('LAKE PARK', 782, '46.88360', '-96.09650'), ('MANY POINT LAKE', None, '47.07670', '-95.53470'), ('MIDWAY', None, '46.78190', '-95.26000'), ('OGEMA', 143, '47.10160', '-95.92250'), ('OSAGE', None, '46.92030', '-95.25670'), ('PONSFORD', None, '46.97000', '-95.38360'), ('RICHWOOD', None, '46.97470', '-95.82250'), ('ROCHERT', None, '46.86000', '-95.68750'), ('SHOREHAM', None, '46.75750', '-95.89860'), ('SNELLMAN', None, '46.88940', '-95.41280'), ('TOAD LAKE', None, '46.86440', '-95.48970'), ('TWO INLETS', None, '47.05280', '-95.21720'), ('WESTBURY', None, '46.91720', '-95.90940'), ('WHITE EARTH', 424, '47.09670', '-95.84310'), ('WOLF LAKE', 31, '46.80290', '-95.35510')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'TXC227': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIG SPRING', 25233, '32.25000', '-101.47890'), ('COAHOMA', 932, '32.29500', '-101.30630'), ('ELBOW', None, '32.16000', '-101.51000'), ('FAIRVIEW', 2644, '32.36000', '-101.52000'), ('FORSAN', 226, '32.11020', '-101.36610'), ('KNOTT', None, '32.40000', '-101.64000'), ('LOMAX', None, '32.12000', '-101.64000'), ('LUTHER', None, '32.45000', '-101.46000'), ('MIDWAY', 288, '32.28000', '-101.37000'), ('SAND SPRINGS', None, '32.28000', '-101.35000'), ('SOUTH HAVEN', None, '32.19000', '-101.48000'), ('VEALMOOR', None, '32.51000', '-101.57000'), ('VINCENT', None, '32.48000', '-101.23000')], 'partOfState': '', 'wfo': 'MAF'}, -'MNC003': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ANDOVER', 26588, '45.25750', '-93.33110'), ('ANOKA', 18076, '45.21040', '-93.39010'), ('BETHEL', 443, '45.40060', '-93.26940'), ('BLAINE', 44942, '45.16610', '-93.20840'), ('CENTERVILLE', 3202, '45.16500', '-93.05300'), ('CIRCLE PINES', 4663, '45.13850', '-93.15240'), ('COLUMBIA HEIGHTS', 18520, '45.04910', '-93.24660'), ('COON RAPIDS', 61607, '45.17410', '-93.31110'), ('EAST BETHEL', 10941, '45.34420', '-93.20140'), ('FRIDLEY', 27449, '45.08480', '-93.25890'), ('HAM LAKE', 12710, '45.26000', '-93.20080'), ('LINO LAKES', 16791, '45.16190', '-93.08250'), ('RAMSEY', 18510, '45.26340', '-93.44770'), ('ST FRANCIS', None, '45.39980', '-93.38960')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'TXC225': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CROCKETT', 7141, '31.31790', '-95.45630'), ('GRAPELAND', 1451, '31.49130', '-95.48180'), ('KENNARD', 317, '31.35820', '-95.18490'), ('LATEXO', 272, '31.38910', '-95.47450'), ('LOVELADY', 608, '31.12600', '-95.44530')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'MNC001': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AITKIN', 1984, '46.53010', '-93.71040'), ('ARTHYDE', None, '46.35620', '-93.08950'), ('BAIN', None, '46.79090', '-93.58980'), ('BALL BLUFF', None, '46.95470', '-93.27330'), ('BALSAM', None, '46.78110', '-93.15610'), ('DADS CORNER', None, '46.33280', '-93.25910'), ('GLEN', None, '46.41870', '-93.51540'), ('GLORY', None, '46.41760', '-93.60060'), ('HASSMAN', None, '46.60220', '-93.61370'), ('HAYPOINT', None, '46.90030', '-93.61690'), ('HILL CITY', 479, '46.98610', '-93.59640'), ('JACOBSON', None, '47.00080', '-93.26270'), ('KIMBERLY', None, '46.56090', '-93.46650'), ('LAWLER', None, '46.53620', '-93.17060'), ('LIBBY', None, '46.78420', '-93.32670'), ('MALMO', None, '46.33420', '-93.51970'), ('MCGRATH', 65, '46.24290', '-93.27440'), ('MCGREGOR', 404, '46.60830', '-93.30600'), ('PALISADE', 118, '46.71310', '-93.49070'), ('PINE KNOLL', None, '46.57730', '-93.75780'), ('RONALD', None, '46.44740', '-93.05430'), ('ROSSBURG', None, '46.53530', '-93.58010'), ('SHESHEBEE', None, '46.70470', '-93.24260'), ('SWATARA', None, '46.89560', '-93.67420'), ('TAMARACK', 59, '46.65190', '-93.11900'), ('WALDECK', None, '46.67440', '-93.60780'), ('WAUKENABO', None, '46.74020', '-93.60080'), ('WEALTHWOOD', None, '46.36320', '-93.65430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DLH'}, -'MDC017': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BEL ALTON', None, '38.46390', '-76.98310'), ('BENEDICT', None, '38.50920', '-76.68000'), ('BRYANTOWN', None, '38.55500', '-76.84220'), ('DENTSVILLE', None, '38.48170', '-76.89280'), ('FAULKNER', None, '38.43890', '-76.97860'), ('HUGHESVILLE', 1537, '38.53870', '-76.78370'), ('INDIAN HEAD', 3422, '38.59850', '-77.15790'), ('IRONSIDES', None, '38.49170', '-77.16000'), ('LA PLATA', 6551, '38.53410', '-76.97050'), ('MARBURY', None, '38.55610', '-77.15850'), ('NANJEMOY', None, '38.45470', '-77.21720'), ('PORT TOBACCO VILLAGE', 15, '38.51140', '-77.02040'), ('POTOMAC HEIGHTS', 1154, '38.60760', '-77.12280'), ('RIPLEY', None, '38.54470', '-77.07860'), ('ST. CHARLES', 33379, '38.60570', '-76.92320'), ('TOMPKINSVILLE', None, '38.32170', '-76.89280'), ('WALDORF', 22312, '38.64190', '-76.90450'), ('WHITE PLAINS', None, '38.59440', '-76.97640'), ('WICOMICO', None, '38.41330', '-76.87690')], 'partOfState': 'SOUTHERN', 'wfo': 'LWX'}, -'MDC015': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('CECILTON', 474, '39.40280', '-75.86980'), ('CHARLESTOWN', 1019, '39.57520', '-75.97930'), ('CHESAPEAKE CITY', 787, '39.52970', '-75.81070'), ('ELKTON', 11893, '39.60350', '-75.82080'), ('NORTH EAST', 2733, '39.60020', '-75.94250'), ('PERRYVILLE', 3672, '39.57100', '-76.06880'), ('PORT DEPOSIT', 676, '39.60360', '-76.11580'), ('RISING SUN', 1702, '39.69830', '-76.06060')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'MDC013': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ELDERSBURG', 27741, '39.40840', '-76.94320'), ('FINKSBURG', None, '39.49280', '-76.88970'), ('GAITHER', None, '39.36140', '-76.99330'), ('GAMBER', None, '39.46470', '-76.93420'), ('HAMPSTEAD', 5060, '39.61840', '-76.85580'), ('HARNEY', None, '39.71390', '-77.20690'), ('HENRYTON', None, '39.35110', '-76.91360'), ('KEYSVILLE', None, '39.63390', '-77.25890'), ('LINEBORO', None, '39.71860', '-76.84420'), ('LINWOOD', None, '39.56330', '-77.14310'), ('LOUISVILLE', None, '39.44860', '-76.92420'), ('MANCHESTER', 3329, '39.65850', '-76.89070'), ('MARRIOTTSVILLE', None, '39.35000', '-76.89970'), ('MARSTON', None, '39.50780', '-77.10060'), ('MIDDLEBURG', None, '39.59390', '-77.21310'), ('MILLERS', None, '39.67110', '-76.85140'), ('MOUNT AIRY', 6425, '39.37420', '-77.15930'), ('OAKLAND', 1930, '39.41240', '-76.90190'), ('REESE', None, '39.54280', '-76.93810'), ('SYKESVILLE', 4197, '39.37000', '-76.97540'), ('TANEYTOWN', 5128, '39.65510', '-77.16870'), ('UNIONTOWN', None, '39.59330', '-77.11640'), ('WAGNERS MILL', None, '39.56140', '-77.05580'), ('WATERSVILLE', None, '39.36750', '-77.10390'), ('WESTMINSTER', 16731, '39.57880', '-77.00770'), ('WINFIELD', None, '39.44720', '-77.05530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LWX'}, -'PAC133': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ABBOTTSTOWN', 905, '39.88450', '-76.98970'), ('BROGUE', None, '39.86000', '-76.45000'), ('CODORUS', None, '39.80000', '-76.82000'), ('DALLASTOWN', 4087, '39.89970', '-76.64110'), ('DELTA', 741, '39.72610', '-76.32770'), ('DILLSBURG', 2063, '40.11010', '-77.03480'), ('DOVER', 1815, '40.00370', '-76.84970'), ('EAST PROSPECT', 678, '39.97140', '-76.52090'), ('EMIGSVILLE', 2467, '40.00780', '-76.73020'), ('FAWN GROVE', 463, '39.72990', '-76.45110'), ('FELTON', 449, '39.85630', '-76.56150'), ('FRANKLINTOWN', 532, '40.07520', '-77.02910'), ('GLEN ROCK', 1809, '39.79340', '-76.73050'), ('GOLDSBORO', 939, '40.15450', '-76.75050'), ('HALLAM', 1532, '40.00250', '-76.60440'), ('HANOVER', 14535, '39.81210', '-76.98370'), ('JACOBUS', 1203, '39.88240', '-76.71240'), ('LEWISBERRY', 385, '40.13520', '-76.86080'), ('LOGANVILLE', 908, '39.85510', '-76.70880'), ('MANCHESTER', 2350, '40.06130', '-76.72030'), ('NEW FREEDOM', 3512, '39.73630', '-76.69680'), ('NEW SALEM', 648, '39.90240', '-76.79350'), ('PARKVILLE', 6593, '39.78290', '-76.96750'), ('PENNVILLE', 1964, '39.78560', '-76.99040'), ('RED LION', 6149, '39.89870', '-76.60770'), ('SEVEN VALLEYS', 492, '39.85260', '-76.76650'), ('SHENKS FERRY', None, '39.90000', '-76.39000'), ('SHREWSBURY', 3378, '39.77100', '-76.68030'), ('SIDDONSBURG', None, '40.15000', '-76.96000'), ('SPRING GROVE', 2050, '39.88140', '-76.86440'), ('SPRY', 4903, '39.91250', '-76.68750'), ('STEWARTSTOWN', 1752, '39.75240', '-76.59300'), ('STONYBROOK', None, '39.97480', '-76.64300'), ('SUNNYBURN', None, '39.79000', '-76.37000'), ('THOMASVILLE', None, '39.92000', '-76.87000'), ('VALLEY GREEN', 3550, '40.15720', '-76.79300'), ('WEIGELSTOWN', 10117, '39.98740', '-76.82940'), ('WELLSVILLE', 279, '40.05020', '-76.94080'), ('WINDSOR', 1331, '39.91550', '-76.58330'), ('WINTERSTOWN', 546, '39.84090', '-76.61320'), ('WRIGHTSVILLE', 2223, '40.02440', '-76.53150'), ('YORK', 40862, '39.96450', '-76.73180'), ('YORK HAVEN', 809, '40.11010', '-76.71580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'MDC011': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('DENTON', 2960, '38.88230', '-75.82230'), ('FEDERALSBURG', 2620, '38.69100', '-75.77360'), ('GOLDSBORO', 216, '39.03540', '-75.78740'), ('GREENSBORO', 1632, '38.97610', '-75.80680'), ('HENDERSON', 118, '39.07490', '-75.76710'), ('HILLSBORO', 163, '38.91620', '-75.94170'), ('PRESTON', 566, '38.71080', '-75.90860'), ('RIDGELY', 1352, '38.94750', '-75.88530'), ('TEMPLEVILLE', 80, '39.13480', '-75.76800')], 'partOfState': '', 'wfo': 'PHI'}, -'PAC131': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALDOVIN', None, '41.61670', '-75.93330'), ('AVERY', None, '41.63330', '-75.93330'), ('BEAUMONT', None, '41.41670', '-76.00000'), ('CENTER MORELAND', None, '41.41670', '-75.93330'), ('EATONVILLE', None, '41.51670', '-75.96670'), ('EVANS FALLS', None, '41.46670', '-76.01670'), ('FACTORYVILLE', 1144, '41.56000', '-75.78350'), ('FALLS', None, '41.46670', '-75.88330'), ('FORKSTON', None, '41.53330', '-76.13330'), ('JENNINGSVILLE', None, '41.58330', '-76.15000'), ('KASSON BROOK', None, '41.46670', '-76.15000'), ('LACEYVILLE', 396, '41.64500', '-76.15950'), ('LAKE CAREY', None, '41.60000', '-75.95000'), ('LAKE SHERIDAN', None, '41.60000', '-75.76670'), ('LAKE WINOLA', None, '41.50000', '-75.86670'), ('LOVELTON', None, '41.53330', '-76.18330'), ('MEHOOPANY', None, '41.56670', '-76.06670'), ('MESHOPPEN', 459, '41.61360', '-76.04590'), ('MILL CITY', None, '41.50000', '-75.85000'), ('NICHOLSON', 713, '41.62740', '-75.78570'), ('NOXEN', None, '41.43330', '-76.06670'), ('OSTERHOUT', None, '41.51670', '-75.91670'), ('RUGGLES', None, '41.40000', '-76.05000'), ('RUSSELL HILL', None, '41.58330', '-76.00000'), ('STOWELL', None, '41.58330', '-76.20000'), ('STULL', None, '41.41670', '-76.10000'), ('TUNKHANNOCK', 1911, '41.54100', '-75.94930'), ('VERNON', None, '41.45000', '-75.96670'), ('VOSBURG', None, '41.56670', '-76.00000'), ('WALLS CORNERS', None, '41.53330', '-75.80000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'MDC019': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ANDREWS', None, '38.35690', '-76.11050'), ('BROOKVIEW', 65, '38.57440', '-75.79510'), ('BUCKTOWN', None, '38.45910', '-76.03140'), ('CAMBRIDGE', 10911, '38.56180', '-76.07780'), ('CHURCH CREEK', 85, '38.50530', '-76.15470'), ('CROCHERON', None, '38.24270', '-76.05290'), ('EAST NEW MARKET', 167, '38.59910', '-75.92390'), ('ELDORADO', 60, '38.58250', '-75.79080'), ('ELLIOTT', None, '38.30900', '-76.00400'), ('GALESTOWN', 101, '38.56200', '-75.71690'), ('HONGA', None, '38.34000', '-76.22500'), ('HOOPERSVILLE', None, '38.26170', '-76.18130'), ('HUDSON', None, '38.59220', '-76.25530'), ('HURLOCK', 1874, '38.62910', '-75.87100'), ('LINKWOOD', None, '38.54060', '-75.94610'), ('LLOYDS', None, '38.59000', '-76.18260'), ('MADISON', None, '38.50730', '-76.22100'), ('SECRETARY', 503, '38.60740', '-75.94750'), ('TAYLORS ISLAND', None, '38.46700', '-76.30290'), ('VIENNA', 280, '38.48500', '-75.82740'), ('WINGATE', None, '38.28130', '-76.08140'), ('WOOLFORD', None, '38.50440', '-76.18110')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC790': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('STAUNTON', 23853, '38.15880', '-79.06230')], 'partOfState': '', 'wfo': 'LWX'}, -'MPC120': {'fullStateName': 'NORTHERN MARIANA ISLANDS', 'state': 'MP', 'cities': [('SAN JOSE (TINIAN)', None, '14.96870', '145.61970')], 'partOfState': '', 'wfo': 'GUM'}, -'TXC317': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROWN', None, '32.43000', '-101.74000'), ('BUFORD', None, '32.48000', '-101.96000'), ('COURTNEY', None, '32.15000', '-101.91000'), ('FLOWER GROVE', None, '32.50000', '-101.89000'), ('GRADY', None, '32.31000', '-101.93000'), ('LENORAH', None, '32.31000', '-101.88000'), ('STANTON', 2556, '32.12930', '-101.78990'), ('TARZAN', None, '32.31000', '-101.98000'), ('THE INTERSECTION OF HWY 3', None, '32.31780', '-102.16190'), ('THREE LEAGUES', None, '32.50000', '-101.97000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC315': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('JEFFERSON', 2024, '32.76090', '-94.34910')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXC313': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('MADISONVILLE', 4159, '30.95200', '-95.90840'), ('MIDWAY', 288, '31.02650', '-95.75280'), ('NORMANGEE', 719, '31.03000', '-96.11550')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC311': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CALLIHAM', None, '28.46580', '-98.35580'), ('CROSS', None, '28.59690', '-98.54880'), ('LOMA ALTA', None, '28.08770', '-98.51580'), ('TILDEN', None, '28.45000', '-98.54444')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXC319': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FREDONIA', None, '30.93190', '-99.11310'), ('KATEMCY', None, '30.91250', '-99.25360'), ('KOOCKVILLE', None, '30.75690', '-99.24970'), ('LOYAL VALLEY', None, '30.57560', '-99.00750'), ('MASON', 2134, '30.74860', '-99.23030'), ('PONTOTOC', None, '30.90920', '-98.97970'), ('STREETER', None, '30.76470', '-99.37610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SJT'}, -'FLC063': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALFORD', 466, '30.69300', '-85.39240'), ('ALLIANCE', None, '30.60910', '-85.11370'), ('BASCOM', 106, '30.92860', '-85.11710'), ('BROWNTOWN', None, '30.98200', '-85.46740'), ('CAMPBELLTON', 212, '30.94900', '-85.40120'), ('CHIPOLA TERRACE', None, '30.82750', '-85.16910'), ('COMPASS LAKE', None, '30.59170', '-85.39280'), ('COTTONDALE', 869, '30.79850', '-85.37610'), ('CYPRESS', None, '30.71740', '-85.07790'), ('DELLWOOD', None, '30.82360', '-85.04980'), ('GLASS', None, '30.86360', '-85.42870'), ('GRACEVILLE', 2402, '30.95800', '-85.51360'), ('GRAND RIDGE', 792, '30.71850', '-85.01950'), ('GREENWOOD', 735, '30.87000', '-85.16200'), ('HAYNES', None, '30.86470', '-84.97370'), ('JACOBS', None, '30.89410', '-85.40990'), ('KYNESVILLE', None, '30.73070', '-85.35470'), ('LOVEDALE', None, '30.87840', '-85.04320'), ('MALONE', 2007, '30.95750', '-85.16200'), ('MARIANNA', 6230, '30.77500', '-85.23970'), ('MARIANNA MUNI A/P', None, '30.83400', '-85.18440'), ('OAKDALE', None, '30.71130', '-85.18560'), ('PARRAMORE', None, '30.87060', '-84.99330'), ('RAMBO', None, '30.99610', '-85.40400'), ('RICHTER CROSSROADS', None, '30.83610', '-85.50220'), ('ROCK CREEK', None, '30.65100', '-85.16030'), ('ROUND LAKE', None, '30.65080', '-85.39430'), ('SIMSVILLE', None, '30.67990', '-85.17420'), ('SIMSVILLE', None, '30.67930', '-85.17480'), ('SINK CREEK', None, '30.62350', '-85.15240'), ('SNEADS', 1919, '30.70880', '-84.92460'), ('STEELE CITY', None, '30.72360', '-85.38790'), ('TWO EGG', None, '30.85120', '-85.07640')], 'partOfState': '', 'wfo': 'TAE'}, -'FLC061': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BLUE CYPRESS LAKE', None, '27.72910', '-80.75450'), ('DIXIE HEIGHTS', None, '27.58130', '-80.38830'), ('FELLSMERE', 3813, '27.76650', '-80.59690'), ('FLORALTON BEACH', None, '27.59290', '-80.33280'), ('GIFFORD', 7599, '27.67530', '-80.40960'), ('GROVENOR ESTATES', None, '27.57780', '-80.42550'), ('INDIAN RIVER SHORES', 3448, '27.70570', '-80.38250'), ('JAYCEE PARK', None, '27.66580', '-80.35950'), ('MOORINGS OF VERO BEACH', None, '27.57840', '-80.32990'), ('PARADISE PARK', None, '27.64310', '-80.49580'), ('PINE TREE PARK', None, '27.61890', '-80.45750'), ('ROSELAND', 1775, '27.83990', '-80.48950'), ('SEBASTIAN INLET', None, '27.78730', '-80.48070'), ('SEBASTIAN INLET RECREATIO', None, '27.84980', '-80.44310'), ('STEVENS PARK', None, '27.60730', '-80.44150'), ('VERO BEACH', 17705, '27.64590', '-80.39420'), ('VERO BEACH HIGHLANDS', None, '27.57670', '-80.39830'), ('VERO BEACH SOUTH', 20362, '27.61580', '-80.41340'), ('VERO LAKE ESTATES', None, '27.74620', '-80.52860'), ('WABASSO', 918, '27.75050', '-80.43770'), ('WABASSO BEACH', 1075, '27.76450', '-80.39920'), ('WABASSO BEACH PARK', None, '27.76320', '-80.39720'), ('WINTER BEACH', 965, '27.71890', '-80.42090')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'WIC053': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMA CENTER', 446, '44.43660', '-90.91300'), ('BLACK RIVER FALLS', 3618, '44.29870', '-90.84700'), ('BUCKHOLZ CORNERS', None, '44.14985', '-91.11631'), ('DISCO', None, '44.26864', '-90.99935'), ('FALL HALL GLEN', None, '44.21564', '-90.83487'), ('FRANKLIN', 29494, '44.21564', '-91.11631'), ('HATFIELD', None, '44.41667', '-90.73070'), ('HIXTON', 446, '44.38400', '-91.01110'), ('IRVING', None, '44.18640', '-90.89883'), ('LEVIS', None, '44.53729', '-91.09986'), ('MELROSE', 529, '44.13200', '-90.99680'), ('MERRILLAN', 585, '44.45100', '-90.83660'), ('MILLSTON', None, '44.19919', '-90.64846'), ('NORTH BEND', None, '44.09867', '-91.11814'), ('NORTH BRANCH', None, '44.45139', '-91.00117'), ('NORTHFIELD', None, '44.46601', '-91.09986'), ('PRAY', None, '44.36915', '-90.49860'), ('PRICE', None, '44.57932', '-91.05052'), ('REQUA', None, '44.58115', '-91.13367'), ('SHAMROCK', None, '44.18091', '-90.79832'), ('SHEPPARD', None, '44.25036', '-90.75080'), ('SPAULDING', None, '44.36184', '-90.42732'), ('TAYLOR', 513, '44.32210', '-91.12120'), ('VAUDREUIL', None, '44.31067', '-90.81111'), ('WATERBURY', None, '44.38377', '-90.59729'), ('YORK', None, '44.43494', '-91.13459')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'FLC067': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BUCKVILLE', None, '30.12770', '-83.29300'), ('COOKS HAMMOCK', None, '29.92740', '-83.27710'), ('DAY', None, '30.19240', '-83.29190'), ('HATCH BEND', None, '29.84480', '-82.91800'), ('MAYO', 988, '30.05100', '-83.17670'), ('MIDWAY', 1714, '30.00980', '-83.07890')], 'partOfState': '', 'wfo': 'TAE'}, -'TNC039': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DECATURVILLE', 859, '35.58230', '-88.11920'), ('PARSONS', 2452, '35.65330', '-88.12500')], 'partOfState': '', 'wfo': 'MEG'}, -'FLC065': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALMA', None, '30.61020', '-83.90650'), ('ASHVILLE', None, '30.61520', '-83.64710'), ('AUCILLA', None, '30.47990', '-83.75430'), ('CAPPS', None, '30.41150', '-83.91130'), ('CASA BLANCO', None, '30.51560', '-83.88790'), ('DILLS', None, '30.62190', '-83.77230'), ('DRIFTON', None, '30.49500', '-83.88070'), ('FANLEW', None, '30.27090', '-84.05770'), ('FESTUS', None, '30.60000', '-83.96900'), ('JARROTT', None, '30.62270', '-83.93230'), ('LAMONT', None, '30.37660', '-83.81340'), ('LLOYD', None, '30.47550', '-84.02220'), ('LOIS', None, '30.52570', '-83.91590'), ('MONTICELLO', 2533, '30.54470', '-83.87020'), ('MONTIVILLA', None, '30.54690', '-83.88880'), ('NASH', None, '30.45770', '-83.89330'), ('NUTALL RISE', None, '30.14970', '-83.96420'), ('THOMAS CITY', None, '30.35460', '-83.97320'), ('WACISSA', None, '30.35770', '-83.98880'), ('WAUKEENAH', None, '30.41230', '-83.95150')], 'partOfState': '', 'wfo': 'TAE'}, -'GAC209': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AILEY', 394, '32.18740', '-82.57040'), ('ALSTON', 159, '32.08050', '-82.47960'), ('HIGGSTON', 316, '32.21680', '-82.46720'), ('MOUNT VERNON', 2082, '32.18120', '-82.59390'), ('TARRYTOWN', 100, '32.31890', '-82.55970'), ('UVALDA', 530, '32.03650', '-82.50860')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TNC035': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CRAB ORCHARD', 838, '35.90960', '-84.88210'), ('CROSSVILLE', 8981, '35.95190', '-85.03680'), ('FAIRFIELD GLADE', 4885, '36.00010', '-84.89940'), ('PLEASANT HILL', 544, '35.97500', '-85.19720')], 'partOfState': '', 'wfo': 'OHX'}, -'FLC069': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ASTATULA', 1298, '28.71060', '-81.73490'), ('ASTOR', 1487, '29.14970', '-81.53220'), ('BASSVILLE PARK', None, '28.83850', '-81.76770'), ('BLUE SPRING STATE PARK', None, '28.95140', '-81.34460'), ('CASSIA', None, '28.88910', '-81.46570'), ('CLERMONT', 9333, '28.55120', '-81.75770'), ('EMERALDA', None, '28.94990', '-81.82470'), ('EUSTIS', 15106, '28.85390', '-81.68520'), ('FERNDALE', 233, '28.62180', '-81.69930'), ('FOREST HILLS', None, '29.00290', '-81.43360'), ('FRUITLAND PARK', 3186, '28.85710', '-81.90950'), ('FULLERVILLE', None, '29.00880', '-81.45450'), ('GROVELAND', 2360, '28.56300', '-81.85210'), ('HAWTHORNE', 1415, '28.76120', '-81.87100'), ('HONTOON ISLAND STATE PARK', None, '28.97430', '-81.36960'), ('HOWEY IN THE HILLS', None, '28.71590', '-81.77480'), ('LADY LAKE', 11828, '28.92780', '-81.92890'), ('LAKE DORA', None, '28.78920', '-81.69520'), ('LAKE EUSTIS', None, '28.85090', '-81.72970'), ('LAKE GRIFFIN', None, '28.84660', '-81.85010'), ('LAKE HARRIS', None, '28.77690', '-81.82520'), ('LAKE KATHRYN HEIGHTS', None, '29.01530', '-81.48860'), ('LAKE YALE', None, '28.91610', '-81.74000'), ('LEESBURG', 15956, '28.80850', '-81.88260'), ('LISBON', 273, '28.87040', '-81.78320'), ('LITTLE LAKE HARRIS', None, '28.72560', '-81.75840'), ('MASCOTTE', 2687, '28.57620', '-81.88860'), ('MID FLORIDA LAKES', None, '28.86280', '-81.75700'), ('MINNEOLA', 5435, '28.57510', '-81.74710'), ('MONTVERDE', 882, '28.59680', '-81.67600'), ('MOUNT DORA', 9418, '28.80670', '-81.64170'), ('MOUNT PLYMOUTH', 2814, '28.79970', '-81.53230'), ('OKAHUMPKA', 251, '28.74760', '-81.89490'), ('PAISLEY', 734, '28.98230', '-81.54290'), ('SILVER LAKE', 1882, '28.84170', '-81.79850'), ('TAVARES', 9700, '28.80480', '-81.73570'), ('THE VILLAGES', 8333, '28.94520', '-81.94470'), ('UMATILLA', 2214, '28.92750', '-81.66690'), ('YALAHA', 1175, '28.74650', '-81.82420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'TNC037': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELLE MEADE', 2943, '36.09880', '-86.85500'), ('BERRY HILL', 674, '36.11930', '-86.76780'), ('FOREST HILLS', 4710, '36.06340', '-86.83680'), ('GOODLETTSVILLE', 13780, '36.33370', '-86.70380'), ('LAKEWOOD', 2341, '36.23950', '-86.63430'), ('NASHVILLE', 545524, '36.17160', '-86.78480'), ('OAK HILL', 4493, '36.07690', '-86.78690')], 'partOfState': '', 'wfo': 'OHX'}, -'TNC031': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('MANCHESTER', 8294, '35.46860', '-86.08080'), ('TULLAHOMA', 17994, '35.37120', '-86.21550')], 'partOfState': '', 'wfo': 'OHX'}, -'TNC033': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALAMO', 2392, '35.78260', '-89.11570'), ('BELLS', 2171, '35.71840', '-89.08530'), ('CHESTNUT BLUFF', None, '35.86670', '-89.33300'), ('FRIENDSHIP', 608, '35.91030', '-89.24180'), ('GADSDEN', 553, '35.77840', '-88.98360'), ('MAURY CITY', 704, '35.81550', '-89.22380')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'PAC053': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('LYNCH', None, '41.60000', '-79.05000'), ('MARIENVILLE', None, '41.45000', '-79.08000'), ('TIONESTA', 615, '41.49600', '-79.44680')], 'partOfState': 'NORTHWEST', 'wfo': 'PBZ'}, -'GAC029': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BELFAST', None, '31.82420', '-81.29190'), ('BLITCHTON', None, '32.19690', '-81.43810'), ('BRISBON', None, '31.91690', '-81.30640'), ('DANIEL', None, '31.91360', '-81.36440'), ('ELLABELL', None, '32.12330', '-81.48580'), ('FORT MCALLISTER', None, '31.89060', '-81.19610'), ('GROVELAND', None, '32.14420', '-81.74580'), ('KELLER', None, '31.84310', '-81.25390'), ('LANIER', None, '32.12970', '-81.53690'), ('LETFORD', None, '32.03860', '-81.60140'), ('OAK LEVEL', None, '31.85560', '-81.22530'), ('PEMBROKE', 2379, '32.13580', '-81.62220'), ('PORT ROYAL', None, '31.90360', '-81.29580'), ('RABBIT HILL', None, '31.90610', '-81.26940'), ('REKA', None, '32.13920', '-81.67750'), ('RICHMOND HILL', 6959, '31.93810', '-81.30360'), ('SWEET HILL', None, '31.84830', '-81.24250')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'KYC239': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DUCKERS', None, '38.16670', '-84.78330'), ('MIDWAY', 1620, '38.14970', '-84.68350'), ('MILLVILLE', None, '38.13340', '-84.81670'), ('NONESUCH', None, '37.90000', '-84.75000'), ('TROY', None, '37.90000', '-84.72000'), ('VERSAILLES', 7511, '38.05440', '-84.72940')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'WIC009': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALLOUEZ', 15443, '44.46000', '-87.98000'), ('ANSTON', None, '44.61000', '-88.15000'), ('ASHWAUBENON', 17634, '44.46000', '-88.08000'), ('ASKEATON', None, '44.26000', '-88.11000'), ('BELLEVUE', None, '44.43000', '-87.91000'), ('CHAMPION', None, '44.58000', '-87.80000'), ('DE PERE', 20559, '44.45000', '-88.05000'), ('DENMARK', 1958, '44.34000', '-87.83000'), ('FLINTVILLE', None, '44.65000', '-88.11000'), ('GREEN BAY', 102313, '44.51000', '-88.00000'), ('GREENLEAF', None, '44.31000', '-88.09000'), ('HOLLAND', None, '44.25000', '-88.16000'), ('HOWARD', 13546, '44.56000', '-88.06000'), ('HUMBOLDT', None, '44.50000', '-87.83000'), ('KUNESH', None, '44.61000', '-88.18000'), ('LANGES CORNERS', None, '44.38000', '-87.86000'), ('LARK', None, '44.31000', '-87.94000'), ('MORRISON', None, '44.29000', '-87.98000'), ('NEW FRANKEN', None, '44.53000', '-87.83000'), ('POLAND', None, '44.43000', '-87.83000'), ('PULASKI', 3060, '44.66000', '-88.23000'), ('SHIRLEY', None, '44.34000', '-87.94000'), ('SUAMICO', None, '44.63000', '-88.05000'), ('WAYSIDE', None, '44.25000', '-87.94000'), ('WRIGHTSTOWN', 1934, '44.33000', '-88.16000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'TXC489': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('LYFORD', 1973, '26.41090', '-97.78960'), ('PORT MANSFIELD', 415, '26.55000', '-97.43330'), ('RAYMONDVILLE', 9733, '26.47910', '-97.78080'), ('SAN PERLITA', 680, '26.50040', '-97.63980'), ('SEBASTIAN', 1864, '26.34390', '-97.79730')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'GAC021': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MACON', 97255, '32.83680', '-83.65680'), ('PAYNE', 178, '32.85040', '-83.67880')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'KYC231': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BARRIER', None, '36.76890', '-84.76720'), ('BETSEY', None, '36.90360', '-84.74310'), ('BURFIELD', None, '36.72640', '-84.79090'), ('CABELL', None, '36.83110', '-85.00690'), ('COOPER', None, '36.77110', '-84.86140'), ('COOPERSVILLE', None, '36.76040', '-84.73800'), ('DELTA', None, '36.86490', '-84.65840'), ('DENNEY', None, '36.81330', '-84.65690'), ('FRAZER', None, '36.95640', '-84.70500'), ('GREGORY', None, '36.82940', '-84.70190'), ('GRIFFIN', None, '36.70430', '-84.72930'), ('HIDALGO', None, '36.73560', '-84.94750'), ('KIDDER', None, '36.91500', '-84.65170'), ('KIDDS CROSSING', None, '36.75640', '-84.68000'), ('MILL SPRINGS', None, '36.93190', '-84.77920'), ('MONTICELLO', 5981, '36.84050', '-84.84760'), ('MOUNT PISGAH', None, '36.65890', '-84.81470'), ('OIL VALLEY', None, '36.77440', '-84.79830'), ('PARMLEYSVILLE', None, '36.68420', '-84.75390'), ('PARNELL', None, '36.86780', '-84.94530'), ('POWERSBURG', None, '36.70420', '-84.96530'), ('RITNER', None, '36.79250', '-84.64000'), ('ROCKEYBRANCH', None, '36.73240', '-84.73300'), ('SLICKFORD', None, '36.69750', '-84.89010'), ('STEUBENVILLE', None, '36.88750', '-84.80280'), ('SUNNYBROOK', None, '36.65700', '-84.97580'), ('SUSIE', None, '36.77640', '-84.95640'), ('ZULA', None, '36.76720', '-84.97940')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'GAC023': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COCHRAN', 4455, '32.38730', '-83.35490')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'KYC233': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CLAY', 1179, '37.47690', '-87.82040'), ('DIXON', 632, '37.51720', '-87.69070'), ('PROVIDENCE', 3611, '37.39920', '-87.75020'), ('SEBREE', 1558, '37.60400', '-87.52860'), ('SLAUGHTERS', 238, '37.49130', '-87.50120'), ('WHEATCROFT', 173, '37.48930', '-87.86120')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'TXC483': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALLISON', None, '35.60580', '-100.10030'), ('BRISCOE', None, '35.58360', '-100.28940'), ('KELLERVILLE', None, '35.37170', '-100.50250'), ('LELA', None, '35.22750', '-100.34250'), ('MOBEETIE', 107, '35.53050', '-100.44210'), ('NEW MOBEETIE', None, '35.53190', '-100.44110'), ('SHAMROCK', 2029, '35.21600', '-100.24550'), ('TWITTY', None, '35.31390', '-100.23580'), ('WHEELER', 1378, '35.44030', '-100.27500')], 'partOfState': '', 'wfo': 'AMA'}, -'KYC235': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AYERS', None, '36.63040', '-84.22900'), ('BARK CAMP', None, '36.91340', '-84.25530'), ('BARTON', None, '36.93500', '-84.12990'), ('BON', None, '36.72270', '-84.19100'), ('BOUNTY', None, '36.72670', '-84.26760'), ('CARPENTER', None, '36.71510', '-83.97140'), ('CLIO', None, '36.81690', '-84.19930'), ('CORBIN', 7742, '36.93740', '-84.10740'), ('CUMBERLAND FALLS STATE RE', None, '36.84070', '-84.33840'), ('DEERING', None, '36.88100', '-84.19920'), ('DIXIE', None, '36.69610', '-84.05450'), ('DUCKRUN', None, '36.73590', '-84.31570'), ('EMLYN', None, '36.70470', '-84.14250'), ('FABER', None, '36.87630', '-84.13220'), ('FAIRVIEW', 156, '36.59960', '-84.11250'), ('GATLIFF', None, '36.67880', '-84.02140'), ('GAUSDALE', None, '36.75750', '-83.97570'), ('GOINS', None, '36.69970', '-83.94020'), ('GOLDBUG', None, '36.79450', '-84.17360'), ('GROVE', None, '36.93050', '-84.22330'), ('JELLICO CREEK', None, '36.68690', '-84.23260'), ('JULIP', None, '36.74210', '-84.06630'), ('KRUPP', None, '36.78700', '-84.25030'), ('LIBERTY', 1850, '36.76460', '-84.20340'), ('LOT', None, '36.60040', '-84.08870'), ('LOUDEN', None, '36.75170', '-84.02840'), ('LUCKY', None, '36.73110', '-84.06740'), ('MOUNTAIN ASH', None, '36.65720', '-84.12910'), ('NEVISDALE', None, '36.68490', '-84.04410'), ('PACKARD', None, '36.66680', '-84.05570'), ('PEARL', None, '36.63030', '-83.94550'), ('PERKINS', None, '36.78430', '-84.06190'), ('PLEASANT VIEW', None, '36.67860', '-84.12950'), ('POLLY CAMP', None, '36.66460', '-84.04440'), ('RED ASH', None, '36.61610', '-84.12250'), ('REDBIRD', None, '36.76150', '-84.21960'), ('ROCKHOLDS', None, '36.82920', '-84.11660'), ('RYE', None, '36.92440', '-84.18730'), ('SAXTON', None, '36.63320', '-84.10950'), ('SILER', None, '36.69830', '-83.96250'), ('SUTTONS MILL', None, '36.74300', '-84.10180'), ('VERNE', None, '36.71790', '-84.07010'), ('WALDEN', None, '36.84590', '-84.16820'), ('WILKERSON', None, '36.59850', '-83.97150'), ('WILLIAMSBURG', 5143, '36.73830', '-84.16750'), ('WOFFORD', None, '36.78120', '-84.13490'), ('WOODBINE', None, '36.90450', '-84.08830'), ('YADEN', None, '36.73690', '-84.09800'), ('YOUNGS CREEK', None, '36.86560', '-84.24090'), ('ZION HILL', None, '36.60950', '-84.23710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'GAC027': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BADEN', None, '30.71750', '-83.56650'), ('BARNEY', None, '31.00760', '-83.51570'), ('BLUE SPRINGS', None, '30.78830', '-83.45660'), ('BROOKS CO A/P', None, '30.80550', '-83.58470'), ('DIXIE', None, '30.78230', '-83.66810'), ('DURDEN', None, '30.79020', '-83.47380'), ('EMERSON', 1092, '30.77430', '-83.63220'), ('EMPRESS', None, '30.67140', '-83.56610'), ('FODIE', None, '30.84780', '-83.54100'), ('GROOVERVILLE', None, '30.72080', '-83.72730'), ('MORVEN', 634, '30.94260', '-83.50070'), ('NANKIN', None, '30.66600', '-83.46820'), ('NEW ROCK HILL', None, '31.00090', '-83.57420'), ('PEBBLE HILL', None, '30.91730', '-83.57850'), ('PIDCOCK', None, '30.78280', '-83.70770'), ('PISCOLA', None, '30.68840', '-83.67600'), ('QUITMAN', 4638, '30.78530', '-83.56030'), ('SAND HILL', None, '30.98450', '-83.65060'), ('SHIVER', None, '30.82680', '-83.54230'), ('SPAIN', None, '30.86300', '-83.53800')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'KYC237': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAPTIST', None, '37.73140', '-83.47930'), ('BELKNAP', None, '37.72040', '-83.29380'), ('BETHANY', None, '37.65030', '-83.47360'), ('BOOTH', None, '37.69560', '-83.63200'), ('BURKHART', None, '37.70670', '-83.27480'), ('CALABOOSE', None, '37.78310', '-83.52970'), ('CAMPTON', 424, '37.73520', '-83.54730'), ('DAYSBORO', None, '37.79340', '-83.37560'), ('FLAT', None, '37.65420', '-83.54610'), ('GILMORE', None, '37.73780', '-83.36970'), ('GLENCAIRN', None, '37.76430', '-83.67000'), ('GOSNEYVILLE', None, '37.80000', '-83.48990'), ('GRANNIE', None, '37.69680', '-83.58570'), ('HAZEL GREEN', None, '37.79800', '-83.41560'), ('HELECHAWA', None, '37.76620', '-83.33990'), ('HIGH FALLS', None, '37.72980', '-83.58370'), ('HOLLONVILLE', None, '37.66850', '-83.46750'), ('JENSON', None, '37.77750', '-83.63000'), ('KOOMER RIDGE CAMPGROUND', None, '37.78320', '-83.63250'), ('LANDSAW', None, '37.72770', '-83.45160'), ('LANE', None, '37.66710', '-83.48490'), ('LEE CITY', None, '37.73920', '-83.33310'), ('LEXIE', None, '37.72890', '-83.40390'), ('LOWER GILMORE', None, '37.76410', '-83.36970'), ('MALAGA', None, '37.71350', '-83.42750'), ('MARY', None, '37.66710', '-83.53650'), ('MAYTOWN', None, '37.84700', '-83.47010'), ('PENCE', None, '37.63490', '-83.47380'), ('PINE RIDGE', None, '37.76310', '-83.61280'), ('RED RIVER GORGE', None, '37.82490', '-83.61770'), ('ROGERS', None, '37.74400', '-83.63580'), ('ROSEFORK', None, '37.69860', '-83.33600'), ('SHOCKEY', None, '37.69100', '-83.33190'), ('STILLWATER', None, '37.75640', '-83.48440'), ('TOLIVER', None, '37.81360', '-83.45780'), ('TORRENT', None, '37.71690', '-83.66230'), ('TRENT', None, '37.77150', '-83.46160'), ('UPPER GILMORE', None, '37.72440', '-83.36500'), ('VALERIA', None, '37.83000', '-83.51670'), ('VORTEX', None, '37.69720', '-83.52720'), ('WHISMAN', None, '37.69550', '-83.65490')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'TXC003': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANDREWS', 9652, '32.32170', '-102.54950'), ('FLOREY', None, '32.45000', '-102.59000'), ('FRANKEL CITY', None, '32.39000', '-102.78000'), ('THE INTERSECTION OF SH 11', None, '32.18170', '-102.74890')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC001': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ELKHART', 1215, '31.62830', '-95.57840'), ('FRANKSTON', 1209, '32.05510', '-95.50360'), ('PALESTINE', 17598, '31.75650', '-95.64650')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'KSC069': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CHARLESTON', None, '37.87000', '-100.57000'), ('CIMARRON', 1934, '37.80820', '-100.34570'), ('COPELAND', 339, '37.54020', '-100.62850'), ('ENSIGN', 203, '37.65360', '-100.23220'), ('INGALLS', 328, '37.82790', '-100.45240'), ('MONTEZUMA', 966, '37.59650', '-100.44170'), ('THE HAGGARD ELEV', None, '37.62000', '-100.30000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'TXC007': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FULTON', 1553, '28.07130', '-97.03580'), ('HOLIDAY BEACH', None, '28.13000', '-96.99000'), ('ROCKPORT', 7385, '28.04070', '-97.05150')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'MIC165': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BOON', None, '44.28340', '-85.60000'), ('BUCKLEY', 550, '44.50390', '-85.67170'), ('CADILLAC', 10000, '44.24830', '-85.41610'), ('HARRIETTA', 169, '44.30950', '-85.70050'), ('MANTON', 1221, '44.41140', '-85.40040'), ('MEAUWATAKA', None, '44.35000', '-85.53330'), ('MESICK', 447, '44.40360', '-85.71940'), ('SHERMAN', None, '44.41670', '-85.70000'), ('YUMA', None, '44.35000', '-85.75000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'TXC005': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BURKE', 315, '31.22830', '-94.76920'), ('DIBOLL', 5470, '31.18860', '-94.78350'), ('HUDSON', 3792, '31.33010', '-94.79720'), ('HUNTINGTON', 2068, '31.27980', '-94.57750'), ('LUFKIN', 32709, '31.33350', '-94.72610'), ('ZAVALLA', 647, '31.15690', '-94.41740')], 'partOfState': '', 'wfo': 'SHV'}, -'TXC009': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANARENE', None, '33.48000', '-98.67000'), ('ARCHER CITY', 1848, '33.59350', '-98.62520'), ('DUNDEE', None, '33.73000', '-98.90000'), ('HOLLIDAY', 1632, '33.81290', '-98.68970'), ('LAKE DIVERSION', None, '33.80000', '-98.95000'), ('LAKE KICKAPOO', None, '33.65000', '-98.78000'), ('LAKESIDE CITY', 984, '33.82820', '-98.54120'), ('MANKINS', None, '33.78000', '-98.80000'), ('MEGARGEL', 248, '33.45330', '-98.92920'), ('SCOTLAND', 438, '33.64870', '-98.45560'), ('WINDTHORST', 440, '33.57550', '-98.43670')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TNC109': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ACTON', None, '35.01670', '-88.46670'), ('ADAMSVILLE', 1983, '35.23470', '-88.38760'), ('BETHEL SPRINGS', 763, '35.23550', '-88.60990'), ('EASTVIEW', 618, '35.08900', '-88.55380'), ('FINGER', 350, '35.35470', '-88.61550'), ('GUYS', 483, '35.01590', '-88.54420'), ('MCNAIRY', None, '35.31670', '-88.63330'), ('MICHIE', 647, '35.06290', '-88.42750'), ('MILLEDGEVILLE', 287, '35.37600', '-88.36660'), ('RAMER', 354, '35.07030', '-88.61770'), ('SELMER', 4541, '35.17180', '-88.59000'), ('STANTONVILLE', 312, '35.15810', '-88.42830')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'KSC139': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURLINGAME', 1017, '38.75390', '-95.83470'), ('CARBONDALE', 1478, '38.81860', '-95.68890'), ('LYNDON', 1038, '38.61000', '-95.68420'), ('MELVERN', 429, '38.50690', '-95.63750'), ('MELVERN LAKE', None, '38.50000', '-95.79000'), ('OLIVET', 64, '38.48060', '-95.75140'), ('OSAGE CITY', 3034, '38.63390', '-95.82560'), ('OVERBROOK', 947, '38.78060', '-95.55700'), ('POMONA LAKE', None, '38.67000', '-95.58000'), ('QUENEMO', 468, '38.57970', '-95.52670'), ('SCRANTON', 724, '38.78170', '-95.73830')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'KSC135': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARNOLD', None, '38.63000', '-100.04000'), ('BAZINE', 311, '38.44600', '-99.69220'), ('BEELER', None, '38.43000', '-100.20000'), ('BROWNELL', 48, '38.64020', '-99.74370'), ('NESS CITY', 1534, '38.45340', '-99.90560'), ('RANSOM', 338, '38.63630', '-99.93200'), ('UTICA', 223, '38.64290', '-100.16990')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'TNC101': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('HOHENWALD', 3754, '35.55090', '-87.55970')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC137': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALMENA', 469, '39.89150', '-99.70980'), ('CALVERT', None, '39.83000', '-99.76000'), ('CLAYTON', 66, '39.73720', '-100.17640'), ('DENSMORE', None, '39.64000', '-99.74000'), ('EDMOND', 47, '39.62670', '-99.82030'), ('LENORA', 306, '39.61100', '-100.00100'), ('NEW ALMELO', None, '39.59000', '-100.12000'), ('NORTON', 3012, '39.83550', '-99.89180'), ('REAGER', None, '39.83000', '-100.10000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'TNC103': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('FAYETTEVILLE', 6994, '35.14990', '-86.56440'), ('PETERSBURG', 580, '35.31710', '-86.64010')], 'partOfState': '', 'wfo': 'HUN'}, -'KSC131': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BAILEYVILLE', None, '39.84440', '-96.18470'), ('BERN', 204, '39.96220', '-95.97170'), ('CENTRALIA', 534, '39.72580', '-96.12700'), ('CORNING', 170, '39.65720', '-96.02920'), ('GOFF', 181, '39.66390', '-95.93200'), ('ONEIDA', 70, '39.86390', '-95.93890'), ('SABETHA', 2589, '39.90220', '-95.80060'), ('SENECA', 2122, '39.83420', '-96.06390'), ('WETMORE', 362, '39.63330', '-95.81110')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'TNC105': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GREENBACK', 954, '35.65180', '-84.17520'), ('LENOIR CITY', 6819, '35.80090', '-84.27100'), ('LOUDON', 4476, '35.73530', '-84.35780'), ('PHILADELPHIA', 533, '35.67910', '-84.40040')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC133': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(CNU)JOHN', None, '37.67000', '-95.48000'), ('CHANUTE', 9411, '37.67100', '-95.46030'), ('EARLTON', 80, '37.58730', '-95.46920'), ('ERIE', 1211, '37.56850', '-95.24370'), ('GALESBURG', 150, '37.47240', '-95.35560'), ('ST. PAUL', 646, '37.51730', '-95.17480'), ('STARK', 106, '37.68950', '-95.14330'), ('THAYER', 500, '37.48790', '-95.47400')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'TNC107': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ATHENS', 13220, '35.45150', '-84.60200'), ('CLEAR WATER', None, '35.50390', '-84.65280'), ('DENTVILLE', None, '35.27970', '-84.60830'), ('ENGLEWOOD', 1590, '35.42260', '-84.48970'), ('ETOWAH', 3663, '35.33500', '-84.52890'), ('HILLSVIEW', None, '35.38670', '-84.80330'), ('MURRAY STORE', None, '35.61470', '-84.62640'), ('NIOTA', 781, '35.51460', '-84.54930'), ('RICEVILLE', None, '35.38250', '-84.69530')], 'partOfState': '', 'wfo': 'MRX'}, -'GAC155': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ABBA', None, '31.75540', '-83.37080'), ('ARP', None, '31.75460', '-83.40710'), ('HOLT', None, '31.59340', '-83.15100'), ('IRWINVILLE', None, '31.64820', '-83.38270'), ('LANDS CROSSROADS', None, '31.71820', '-83.38490'), ('LANDS CROSSROADS', None, '31.71830', '-83.38490'), ('MYSTIC', None, '31.62150', '-83.33400'), ('OCILLA', 3270, '31.59570', '-83.24920'), ('OSIERFIELD', None, '31.66640', '-83.11610'), ('PINETTA', None, '31.59290', '-83.35860'), ('RIVERBEND', None, '31.48930', '-83.26330'), ('WATERLOO', None, '31.59350', '-83.47450'), ('WRAY', None, '31.62190', '-83.05510')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAC157': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARCADE', 1643, '34.07690', '-83.56100'), ('COMMERCE', 5292, '34.20590', '-83.46120'), ('HOSCHTON', 1070, '34.09250', '-83.76120'), ('JEFFERSON', 3825, '34.13340', '-83.59970'), ('MAYSVILLE', 1247, '34.25340', '-83.55570'), ('NICHOLSON', 1247, '34.11380', '-83.43270'), ('PENDERGRASS', 431, '34.16260', '-83.67920'), ('TALMO', 477, '34.18390', '-83.71800')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAC151': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLACKSVILLE', 4, '33.42950', '-84.15630'), ('HAMPTON', 3857, '33.38440', '-84.28520'), ('LOCUST GROVE', 2322, '33.34530', '-84.10500'), ('MCDONOUGH', 8493, '33.45060', '-84.14400'), ('STOCKBRIDGE', 9853, '33.54580', '-84.24290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'VAC139': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALMA', None, '38.59110', '-78.55780'), ('COMPTON', None, '38.78250', '-78.36920'), ('FAIRVIEW', None, '38.65420', '-78.42940'), ('HAMBURG', None, '38.65810', '-78.51470'), ('HONEYVILLE', None, '38.57860', '-78.56250'), ('IDA', None, '38.58890', '-78.42420'), ('INGHAM', None, '38.52890', '-78.57830'), ('JOLLETT', None, '38.46390', '-78.52420'), ('KIMBALL', None, '38.68690', '-78.40280'), ('LEAKSVILLE', None, '38.62640', '-78.52640'), ('LURAY', 4871, '38.66470', '-78.45530'), ('NEWPORT', None, '38.57860', '-78.59670'), ('PINE GROVE', None, '38.53580', '-78.48030'), ('RILEYVILLE', None, '38.76500', '-78.38830'), ('SHENANDOAH', 1878, '38.48740', '-78.62250'), ('SKYLAND', None, '38.59360', '-78.38220'), ('STANLEY', 1326, '38.57910', '-78.50470')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'GAC153': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CENTERVILLE', 4278, '32.63200', '-83.67640'), ('PERRY', 9602, '32.46410', '-83.73800'), ('ROBINS AFB', 3949, '32.60780', '-83.58680'), ('WARNER ROBINS', 48804, '32.61270', '-83.63130')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'PRC045': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('COMERIO', None, '18.22170', '-66.22500')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC135': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BLACKSTONE', 3675, '37.07870', '-78.00170'), ('BLACKSTONE AIRPORT', None, '37.07650', '-77.95510'), ('BURKEVILLE', 489, '37.18700', '-78.20200'), ('CLAY STORE', None, '37.19610', '-77.96260'), ('CREWE', 2378, '37.18070', '-78.13090'), ('DOMINY CORNER', None, '37.08160', '-77.96990'), ('FERGUSONVILLE', None, '37.22950', '-78.06800'), ('FORKLAND', None, '37.01750', '-77.96550'), ('FORT PICKETT', None, '37.04590', '-77.94360'), ('IRBY', None, '37.03160', '-78.04270'), ('JENNINGS ORDINARY', None, '37.22550', '-78.14580'), ('MURDOCKS', None, '37.02700', '-78.05980'), ('NORTH WELLVILLE', None, '37.15050', '-77.91720'), ('NOTTOWAY', None, '37.13030', '-78.07960'), ('OLIVEVILLE', None, '37.14710', '-78.23280'), ('PATTERSONS STORE', None, '37.14580', '-77.96230'), ('SPAINVILLE', None, '37.18900', '-77.91610'), ('THE FALLS', None, '37.04600', '-78.14900'), ('WELLVILLE', None, '37.12600', '-77.92220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'PRC047': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('COROZAL', 11444, '18.34370', '-66.31270')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC137': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARBOURSVILLE', None, '38.17080', '-78.28190'), ('BURR HILL', None, '38.34390', '-77.86000'), ('EHEART', None, '38.20360', '-78.32330'), ('EVERONA', None, '38.30470', '-77.96750'), ('FLAT RUN', None, '38.36470', '-77.76670'), ('GOLD DALE', None, '38.26690', '-77.80610'), ('GORDONSVILLE', 1498, '38.13660', '-78.18810'), ('LAHORE', None, '38.19860', '-77.96970'), ('MADISON MILLS', None, '38.28080', '-78.14110'), ('MADISON RUN', None, '38.19670', '-78.13060'), ('NASONS', None, '38.25500', '-78.02690'), ('OLD SOMERSET', None, '38.22360', '-78.22030'), ('ORANGE', 4123, '38.24700', '-78.11140'), ('RAPIDAN', None, '38.31250', '-78.06610'), ('THORNHILL', None, '38.15420', '-77.96830'), ('UNIONVILLE', None, '38.25970', '-77.96860'), ('VERDIERSVILLE', None, '38.27170', '-77.90280')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'GAC159': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MONTICELLO', 2428, '33.30560', '-83.68790'), ('SHADY DALE', 242, '33.40040', '-83.58910')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'VAC131': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BAY VIEW', None, '37.27667', '-75.96778'), ('BIRDSNEST', None, '37.43850', '-75.88240'), ('CAPE CHARLES', 1134, '37.27040', '-76.01460'), ('CAPE CHARLES LIGHT', None, '37.12160', '-75.90280'), ('CAPEVILLE', None, '37.20500', '-75.95720'), ('CHEAPSIDE', None, '37.20070', '-75.98320'), ('CHERITON', 499, '37.28800', '-75.96760'), ('DALBYS', None, '37.23000', '-75.97060'), ('EASTVILLE', 203, '37.35080', '-75.94040'), ('EXMORE', 1136, '37.53370', '-75.82410'), ('FISHERMANS ISLAND', None, '37.10000', '-75.97000'), ('FRANKTOWN', None, '37.47800', '-75.87830'), ('JAMESVILLE', None, '37.51470', '-75.93250'), ('KIPTOPEKE', None, '37.13950', '-75.96380'), ('KIPTOPEKE STATE PARK', None, '37.17000', '-75.97920'), ('MACHIPONGO', None, '37.40340', '-75.90180'), ('NASSAWADOX', 572, '37.47650', '-75.86280'), ('OYSTER', None, '37.28640', '-75.92260'), ('PLANTATION', None, '37.24030', '-75.98380'), ('SILVER BEACH', None, '37.48460', '-75.96110'), ('SIMPKINS', None, '37.32420', '-75.94390'), ('SMITH BEACH', None, '37.38280', '-75.98380'), ('TOWNSEND', None, '37.18540', '-75.95820'), ('WARDTOWN', None, '37.50830', '-75.87040'), ('WILLIS WHARF', None, '37.50960', '-75.80720')], 'partOfState': '', 'wfo': 'AKQ'}, -'PRC043': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('COAMO', 12356, '18.08110', '-66.36060'), ('LOS LLANOS', 2301, '18.05820', '-66.40960'), ('MARIANO COLON', None, '18.02540', '-66.33280')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC133': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AVALON', None, '37.90670', '-76.42420'), ('BEANES CORNER', None, '37.82000', '-76.46390'), ('BROWNS STORE', None, '37.82890', '-76.42960'), ('BURGESS', None, '37.88370', '-76.34780'), ('BYRDTON', None, '37.70110', '-76.33690'), ('CALLAO', None, '37.96830', '-76.55780'), ('DODLYT', None, '37.89690', '-76.51060'), ('EDWARDSVILLE', None, '37.90660', '-76.36460'), ('FAIR PORT', None, '37.83333', '-76.29056'), ('FLEETON', None, '37.81750', '-76.28160'), ('GIBEON', None, '37.97030', '-76.61870'), ('HEATHSVILLE', None, '37.91760', '-76.47250'), ('HOWLAND', None, '37.87080', '-76.45560'), ('HULL NECK', None, '37.95370', '-76.37620'), ('LARA', None, '37.85440', '-76.51710'), ('LEWISETTA', None, '38.00500', '-76.46380'), ('LILIAN', None, '37.86360', '-76.30140'), ('LOTTSBURG', None, '37.96130', '-76.51930'), ('MIDDLETONS CORNER', None, '37.94550', '-76.44600'), ('OPHEILA', None, '37.91030', '-76.28330'), ('REEDVILLE', None, '37.86520', '-76.29060'), ('REEDVILLE', None, '37.84650', '-76.26500'), ('REGINA', None, '37.80390', '-76.41780'), ('REHOBOTH CHURCH', None, '37.76770', '-76.36600'), ('SMITH POINT', None, '37.88860', '-76.23690'), ('VILLAGE', None, '37.94760', '-76.60560'), ('WICOMICO CHURCH', None, '37.81510', '-76.37830')], 'partOfState': '', 'wfo': 'AKQ'}, -'NDC063': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANETA', 284, '47.67890', '-97.98880'), ('DAHLEN', None, '48.15810', '-97.92920'), ('KLOTEN', None, '47.71610', '-98.07500'), ('LAKOTA', 781, '48.04310', '-98.34710'), ('MAPES', None, '48.03110', '-98.22690'), ('MCVILLE', 470, '47.76510', '-98.17610'), ('MICHIGAN', None, '48.02500', '-98.11670'), ('PEKIN', 80, '47.79100', '-98.32660'), ('PETERSBURG', 195, '48.01190', '-97.99970'), ('STUMP LAKE', None, '47.91440', '-98.43420'), ('TOLNA', 202, '47.82720', '-98.43970'), ('WHITMAN', None, '48.15860', '-98.11940')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDC061': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BELDEN', None, '48.15000', '-102.35000'), ('BLAISDELL', None, '48.33330', '-102.06670'), ('LOSTWOOD', None, '48.48330', '-102.41670'), ('NEW TOWN', 1367, '47.98080', '-102.48970'), ('PALERMO', 77, '48.33830', '-102.22850'), ('PARSHALL', 981, '47.95480', '-102.13370'), ('PLAZA', 167, '48.02560', '-101.95940'), ('ROSS', 48, '48.31310', '-102.54280'), ('STANLEY', 1279, '48.31680', '-102.38650'), ('TAGUS', None, '48.35000', '-101.93330'), ('WHITE EARTH', 63, '48.38010', '-102.77180')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'NCC129': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAYSHORE', 2512, '34.28950', '-77.78770'), ('CAROLINA BEACH', 4701, '34.03500', '-77.89390'), ('CASTLE HAYNE', 1116, '34.35560', '-77.90030'), ('FORT FISHER', None, '33.96970', '-77.91830'), ('KURE BEACH', 1507, '33.99670', '-77.90750'), ('MURRAYSVILLE', 7279, '34.29560', '-77.84780'), ('MYRTLE GROVE', 7125, '34.13440', '-77.88190'), ('OGDEN', 5481, '34.27220', '-77.81890'), ('SILVER LAKE', 5788, '34.14860', '-77.91800'), ('SMITH CREEK', None, '34.26270', '-77.86380'), ('WILMINGTON', 75838, '34.23110', '-77.94500'), ('WINDEMERE', None, '34.24370', '-77.84500'), ('WRIGHTSBORO', 4496, '34.28830', '-77.92140'), ('WRIGHTSVILLE BEACH', 2593, '34.20830', '-77.79670')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NDC065': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('CENTER', 678, '47.11500', '-101.29690'), ('FORT CLARK', None, '47.23330', '-101.25000'), ('HANNOVER', None, '47.11670', '-101.43330'), ('HENSLER', None, '47.25000', '-101.08330'), ('PRICE', None, '47.08330', '-100.95000'), ('SANGER', None, '47.18330', '-101.00000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'OHC083': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CENTERBURG', 1432, '40.30370', '-82.69660'), ('DANVILLE', 1104, '40.44790', '-82.26010'), ('FREDERICKTOWN', 2428, '40.47890', '-82.54530'), ('GAMBIER', 1871, '40.37630', '-82.39490'), ('GANN', 143, '40.46910', '-82.19030'), ('MARTINSBURG', 185, '40.26930', '-82.35490'), ('MOUNT VERNON', 14375, '40.39050', '-82.47520')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'NCC125': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ABERDEEN', 3400, '35.13950', '-79.42140'), ('CAMERON', 151, '35.32700', '-79.25160'), ('CARTHAGE', 1871, '35.34740', '-79.41830'), ('EAGLE SPRINGS', None, '35.30000', '-79.65000'), ('FOXFIRE', 474, '35.17360', '-79.56830'), ('GLENDON', None, '35.48000', '-79.53000'), ('HIGHFALLS', None, '35.48000', '-79.53000'), ('PINEBLUFF', 1109, '35.10710', '-79.47230'), ('PINEHURST', 9706, '35.18030', '-79.46140'), ('ROBBINS', 1195, '35.43240', '-79.58420'), ('SEVEN LAKES', 3214, '35.26420', '-79.58500'), ('SOUTHERN PINES', 10918, '35.18350', '-79.40220'), ('TAYLORTOWN', 845, '35.21590', '-79.49200'), ('VASS', 750, '35.25580', '-79.28220'), ('WHISPERING PINES', 2090, '35.25490', '-79.37950')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC127': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AVENTON', None, '36.15000', '-77.95000'), ('BAILEY', 670, '35.78010', '-78.11290'), ('BATTLEBORO', None, '36.04860', '-77.75080'), ('CASTALIA', 340, '36.08230', '-78.05730'), ('DORTCHES', 809, '36.01110', '-77.85840'), ('MIDDLESEX', 838, '35.78770', '-78.20460'), ('NASHVILLE', 4309, '35.96730', '-77.95610'), ('RED OAK', 2723, '36.03850', '-77.90680'), ('SHARPSBURG', 2421, '35.86710', '-77.83240'), ('SPRING HOPE', 1261, '35.94450', '-78.10940')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC121': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAKERSVILLE', 357, '36.01480', '-82.15840'), ('BANDANA', None, '35.97310', '-82.17610'), ('BULADEAN', None, '36.10830', '-82.19500'), ('LEDGER', None, '35.96420', '-82.16530'), ('POPLAR', None, '36.07250', '-82.34330'), ('SPRUCE PINE', 2030, '35.91620', '-82.06990')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC123': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BADIN LAKE', None, '35.46000', '-80.08000'), ('BISCOE', 1700, '35.36030', '-79.78050'), ('CANDOR', 825, '35.29120', '-79.74360'), ('ELDORADO', None, '35.47000', '-80.03000'), ('MOUNT GILEAD', 1389, '35.21510', '-80.00300'), ('PEKIN', None, '35.22000', '-79.88000'), ('STAR', 807, '35.40050', '-79.78420'), ('STEEDS', None, '35.47000', '-79.80000'), ('TROY', 3430, '35.36410', '-79.89320')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'GAC003': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AXSON', None, '31.27440', '-82.73660'), ('PEARSON', 1805, '31.29720', '-82.85320'), ('WILLACOOCHEE', 1434, '31.34020', '-83.04620')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'OKC069': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BROMIDE', 163, '34.41780', '-96.49430'), ('COLEMAN', None, '34.27000', '-96.42000'), ('CONNERVILE', None, '34.44700', '-96.63400'), ('EMET', None, '34.20000', '-96.55000'), ('FILLMORE', None, '34.27000', '-96.50000'), ('FOLSOM', None, '34.20000', '-96.42000'), ('MANNSVILLE', 587, '34.18740', '-96.88000'), ('MILBURN', 312, '34.24090', '-96.55160'), ('MILL CREEK', 340, '34.40260', '-96.82490'), ('NIDA', None, '34.15000', '-96.50000'), ('PONTOTOC', None, '34.48000', '-96.62000'), ('RAVIA', 459, '34.24060', '-96.75570'), ('REAGAN', None, '34.35000', '-96.72000'), ('TISHOMINGO', 3162, '34.23910', '-96.67890'), ('TROY', None, '34.32000', '-96.78000'), ('WAPANUCKA', 445, '34.37340', '-96.42440')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'OHC081': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMSTERDAM', 568, '40.47140', '-80.92140'), ('BERGHOLZ', 769, '40.52110', '-80.88470'), ('BLOOMINGDALE', 221, '40.34180', '-80.81750'), ('BRENTWOOD', None, '40.35310', '-80.73070'), ('BRILLIANT', None, '40.26850', '-80.62490'), ('IRONDALE', 418, '40.57270', '-80.72600'), ('MINGO JUNCTION', 3631, '40.32060', '-80.61360'), ('MOUNT PLEASANT', 535, '40.17590', '-80.80000'), ('NEW ALEXANDRIA', 222, '40.29120', '-80.67530'), ('RAYLAND', 434, '40.18340', '-80.69140'), ('RICHMOND', 471, '40.43280', '-80.77210'), ('SMITHFIELD', 867, '40.27260', '-80.77680'), ('STEUBENVILLE', 19015, '40.36700', '-80.64660'), ('TILTONSVILLE', 1329, '40.17250', '-80.69770'), ('WINTERSVILLE', 4067, '40.37900', '-80.70660')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'ARC109': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ANTOINE', 156, '34.03400', '-93.42110'), ('DAISY', 118, '34.23310', '-93.74190'), ('DELIGHT', 311, '34.02940', '-93.50580'), ('GLENWOOD', 1751, '34.33110', '-93.54970'), ('MURFREESBORO', 1764, '34.06300', '-93.69110')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'OKC063': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ATWOOD', 113, '34.95000', '-96.33000'), ('CALVIN', 279, '34.96740', '-96.25320'), ('DUSTIN', 452, '35.27120', '-96.03140'), ('GERTY', 101, '34.83600', '-96.28960'), ('HOLDENVILLE', 4732, '35.08480', '-96.39900'), ('LAMAR', 172, '35.09790', '-96.12680'), ('STUART', 220, '34.90070', '-96.09980'), ('WETUMKA', 1451, '35.24160', '-96.23830'), ('YEAGER', 67, '35.15680', '-96.33960')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'OKC061': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MCCURTAIN', 466, '35.14970', '-94.97050'), ('STIGLER', 2731, '35.25360', '-95.12280'), ('LEQUIRE', None, '35.10440', '-95.10720'), ('LEWISVILLE', None, '35.12000', '-95.27670'), ('KINTA', 243, '35.11920', '-95.23750'), ('MC CURTAIN', None, '35.15000', '-94.97000'), ('ENTERPRISE', None, '35.22970', '-95.37970'), ('WHITEFIELD', 231, '35.25250', '-95.23720'), ('KEOTA', 517, '35.25560', '-94.92140'), ('KANIMA', None, '35.28000', '-95.02000'), ('TAMAHA', 198, '35.39610', '-94.98330')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKC067': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ADDINGTON', 117, '34.24310', '-97.96630'), ('CORNISH', 172, '34.16250', '-97.59520'), ('FLEETWOOD', None, '33.90000', '-97.85000'), ('GRADY', None, '34.02000', '-97.67000'), ('HASTINGS', 155, '34.22510', '-98.10840'), ('OSCAR', None, '33.98000', '-97.75000'), ('RINGLING', 1135, '34.17670', '-97.59040'), ('RYAN', 894, '34.02160', '-97.95400'), ('SUGDEN', 59, '34.08120', '-97.97840'), ('TERRAL', 386, '33.89610', '-97.93870'), ('WAURIKA', 1988, '34.18650', '-98.02230')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'GAC001': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BAXLEY', 4150, '31.76470', '-82.35190'), ('GRAHAM', 312, '31.82850', '-82.50390'), ('PINE GROVE', None, '31.81320', '-82.44760'), ('PLANT HATCH', None, '31.93000', '-82.34000'), ('SURRENCY', 237, '31.72180', '-82.19830')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'OKC065': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALTUS', 21447, '34.64920', '-99.31300'), ('BLAIR', 894, '34.77900', '-99.33300'), ('DUKE', None, '34.67000', '-99.58000'), ('ELDORADO', 527, '34.47250', '-99.65020'), ('ELMER', 96, '34.48140', '-99.35230'), ('FRIENDSHIP', None, '34.70000', '-99.23000'), ('HEADRICK', 130, '34.62670', '-99.13710'), ('HUMPHREYS', None, '34.55000', '-99.23000'), ('MARTHA', 205, '34.72650', '-99.38600'), ('OLUSTEE', 680, '34.54790', '-99.42390'), ('WARREN', None, '34.78000', '-99.22000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OHC087': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ATHALIA', 328, '38.51220', '-82.30760'), ('BURLINGTON', 2794, '38.40930', '-82.52900'), ('CHESAPEAKE', 842, '38.43050', '-82.45050'), ('COAL GROVE', 2027, '38.49800', '-82.64270'), ('HANGING ROCK', 279, '38.55890', '-82.72620'), ('IRONTON', 11211, '38.53250', '-82.67850'), ('LAKE VESUVIUS', None, '38.61550', '-82.63070'), ('PROCTORVILLE', 620, '38.43760', '-82.38090'), ('SOUTH POINT', 3742, '38.41920', '-82.57420')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'TXC179': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALANREED', None, '35.21250', '-100.73390'), ('KINGSMILL', None, '35.48830', '-101.05920'), ('LAKE MCCLELLAN', None, '35.21690', '-100.87190'), ('LEFORS', 559, '35.43970', '-100.80330'), ('MCLEAN', 830, '35.23290', '-100.60000'), ('PAMPA', 17887, '35.54700', '-100.96430')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC177': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHEAPSIDE', None, '29.28330', '-97.40000'), ('GONZALES', 7202, '29.50860', '-97.44750'), ('NIXON', 2186, '29.26930', '-97.76190'), ('PALMETO', None, '29.59000', '-97.60000'), ('SMILEY', 453, '29.27150', '-97.63750'), ('WAELDER', 947, '29.69380', '-97.29630')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'KSC207': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BATESVILLE', None, '37.83330', '-95.88330'), ('NEOSHO FALLS', 179, '38.00580', '-95.55520'), ('ROSE', None, '37.80000', '-95.68000'), ('TORONTO', 312, '37.79860', '-95.94930'), ('YATES CENTER', 1599, '37.87240', '-95.74280')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'TXC175': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BERCLAIR', None, '28.50000', '-97.53333'), ('CHARCO', None, '28.73270', '-97.62880'), ('FANNIN', None, '28.69270', '-97.21690'), ('GOLIAD', 1975, '28.66970', '-97.39160'), ('SCHROEDER', None, '28.80470', '-97.21690'), ('WEESATCHE', None, '28.83333', '-97.41666')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'OHC085': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('EASTLAKE', 20255, '41.65960', '-81.43060'), ('FAIRPORT HARBOR', 3180, '41.74750', '-81.27330'), ('GRAND RIVER', 345, '41.74220', '-81.28600'), ('KIRTLAND', 6670, '41.59840', '-81.33800'), ('KIRTLAND HILLS', 597, '41.64250', '-81.31810'), ('MADISON', 2921, '41.77170', '-81.05320'), ('MENTOR', 50278, '41.69150', '-81.33450'), ('MENTOR-ON-THE-LAKE', 8127, '41.71370', '-81.36490'), ('NORTH MADISON', 8451, '41.82970', '-81.05480'), ('NORTH PERRY', 838, '41.80680', '-81.12550'), ('PAINESVILLE', 17503, '41.72710', '-81.24830'), ('PERRY', 1195, '41.76730', '-81.14300'), ('WAITE HILL', 446, '41.60980', '-81.38800'), ('WICKLIFFE', 13484, '41.60810', '-81.46750'), ('WILLOUGHBY', 22621, '41.64630', '-81.40940'), ('WILLOUGHBY HILLS', 8595, '41.58480', '-81.43520'), ('WILLOWICK', 14361, '41.63500', '-81.46850')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'TXC173': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIGBY CORNER', None, '31.71000', '-101.65000'), ('GARDEN CITY', None, '31.87000', '-101.48000'), ('LEES', None, '32.08000', '-101.49000'), ('ST. LAWRENCE', None, '31.70000', '-101.54000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC171': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FREDERICKSBURG', 8911, '30.27050', '-98.87220'), ('HARPER', 1006, '30.30000', '-99.25000'), ('LBJ STATE PARK', None, '30.24000', '-98.63000'), ('LUCKENBACH', None, '30.18330', '-98.75000'), ('WILLOW CITY', None, '30.40000', '-98.70000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'OKC085': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BOMAR', None, '33.85000', '-97.13000'), ('BURNEYVILLE', None, '33.90000', '-97.28000'), ('COURTNEY', None, '33.93000', '-97.50000'), ('LEON', 96, '33.87700', '-97.42950'), ('MARIETTA', 2445, '33.93390', '-97.12330'), ('OVERBROOK', None, '34.07000', '-97.15000'), ('RUBOTTOM', None, '33.93000', '-97.43000'), ('THACKERVILLE', 404, '33.79390', '-97.14340')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'OKC087': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BLANCHARD', 2816, '35.14520', '-97.65860'), ('BYARS', 280, '34.87180', '-97.05360'), ('COLE', 473, '35.10280', '-97.57250'), ('CRINER', None, '34.97000', '-97.57000'), ('DIBBLE', 289, '35.03400', '-97.62800'), ('GOLDSBY', 1204, '35.12800', '-97.47140'), ('NEWCASTLE', 5434, '35.24770', '-97.59940'), ('PAYNE', None, '34.90000', '-97.53000'), ('PURCELL', 5571, '35.01450', '-97.37150'), ('ROSEDALE', 66, '34.91870', '-97.18460'), ('WASHINGTON', 520, '35.05830', '-97.48350'), ('WAYNE', 714, '34.91720', '-97.31580')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'OKC081': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('AGRA', 356, '35.89510', '-96.87010'), ('AVERY', None, '35.88000', '-96.75000'), ('CARNEY', 649, '35.80580', '-97.01540'), ('CHANDLER', 2842, '35.70800', '-96.87650'), ('DAVENPORT', 881, '35.70930', '-96.76560'), ('FALLIS', 28, '35.74920', '-97.11810'), ('JACKTOWN', None, '35.50000', '-97.00000'), ('KENDRICK', 138, '35.78530', '-96.77490'), ('MEEKER', 978, '35.48500', '-96.89360'), ('PRAGUE', 2138, '35.48820', '-96.69430'), ('SPARKS', 137, '35.61090', '-96.81830'), ('STROUD', 2758, '35.76910', '-96.64950'), ('TRYON', 448, '35.87950', '-96.96410'), ('WARWICK', 235, '35.68750', '-97.00000'), ('WELLSTON', 825, '35.68790', '-97.06180')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'KSC205': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALTOONA', 485, '37.52550', '-95.66160'), ('BENEDICT', 103, '37.62470', '-95.74190'), ('BUFFALO', 284, '37.70860', '-95.69670'), ('BUXTON', None, '37.45000', '-95.92000'), ('COYVILLE', 71, '37.68720', '-95.89530'), ('FREDONIA', 2600, '37.53290', '-95.82400'), ('NEODESHA', 2848, '37.42350', '-95.68090'), ('NEW ALBANY', 73, '37.56770', '-95.93450')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'OKC083': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CEDAR VALLEY', 58, '35.86400', '-97.56160'), ('CIMARRON CITY', 110, '35.88940', '-97.60130'), ('COYLE', 337, '35.95400', '-97.23740'), ('CRESCENT', 1281, '35.94990', '-97.58960'), ('GUTHRIE', 9925, '35.84020', '-97.42810'), ('LANGSTON', 1670, '35.94600', '-97.26360'), ('LOVELL', None, '36.05000', '-97.63000'), ('MARSHALL', 258, '36.15540', '-97.62480'), ('MERIDIAN', 1485, '35.84190', '-97.24670'), ('MULHALL', 239, '36.06430', '-97.40480'), ('NAVINA', None, '35.80000', '-97.57000'), ('ORLANDO', 201, '36.14830', '-97.37580'), ('SEWARD', None, '35.80000', '-97.48000')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'TXC057': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KAMAY', None, '28.61690', '-96.73880'), ('LONG MOTT', None, '28.46666', '-96.78333'), ('MAGNOLIA BEACH', None, '28.51380', '-96.51690'), ('POINT COMFORT', 781, '28.65580', '-96.55690'), ('PORT LAVACA', 12035, '28.61470', '-96.62120'), ('SEADRIFT', 1352, '28.38000', '-96.69000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'OKC089': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('AMERICA', None, '33.82000', '-94.55000'), ('BATTIEST', None, '34.40000', '-94.93000'), ('BETHEL', None, '34.35000', '-94.85000'), ('BOKHOMA', None, '33.82000', '-94.58000'), ('BROKEN BOW', 4230, '34.02570', '-94.73630'), ('EAGLETOWN', None, '34.03000', '-94.57000'), ('GARVIN', 143, '33.95480', '-94.94130'), ('GLOVER', None, '34.07000', '-94.90000'), ('HARRIS', None, '33.75000', '-94.73000'), ('HAWORTH', 354, '33.84420', '-94.65480'), ('HOCHATOWN', None, '34.20000', '-94.67000'), ('IDABEL', 6952, '33.90200', '-94.81880'), ('MILLERTON', 359, '33.98470', '-95.01510'), ('PICKENS', None, '34.40000', '-95.03000'), ('RINGOLD', None, '34.21700', '-95.13000'), ('RUFE', None, '34.12000', '-95.15000'), ('SMITHVILLE', 123, '34.46810', '-94.64610'), ('TOM', None, '33.73000', '-94.57000'), ('VALLIANT', 771, '34.00490', '-95.08970'), ('WATSON', None, '34.43000', '-94.55000'), ('WRIGHT CITY', 848, '34.06370', '-95.00740')], 'partOfState': 'SOUTHEAST', 'wfo': 'SHV'}, -'KYC011': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHEL', None, '38.25060', '-83.86640'), ('BOURBON FURNACE', None, '38.11820', '-83.74530'), ('CRAIGS', None, '38.16280', '-83.72540'), ('CROOKS', None, '38.07430', '-83.76020'), ('FLAT CREEK', None, '38.13590', '-83.86930'), ('KENDALL SPRINGS', None, '38.10120', '-83.77910'), ('MARSHALL', None, '38.13620', '-83.67830'), ('MIDLAND', None, '38.13330', '-83.57830'), ('MOORES FERRY', None, '38.16840', '-83.61820'), ('OAKLEY', None, '38.24770', '-83.72460'), ('ODESSA', None, '38.22010', '-83.75030'), ('OLYMPIA', None, '38.09860', '-83.69610'), ('OLYMPIA SPRINGS', None, '38.06200', '-83.67330'), ('OWINGSVILLE', 1488, '38.13690', '-83.75950'), ('PEASTICKS', None, '38.15560', '-83.69880'), ('PEBBLE', None, '38.26880', '-83.75730'), ('PEELED OAK', None, '38.06080', '-83.80160'), ('POLKSVILLE', None, '38.13800', '-83.65550'), ('PRESTON', None, '38.08610', '-83.75390'), ('REYNOLDSVILLE', None, '38.19110', '-83.82470'), ('SALT LICK', 342, '38.11950', '-83.61610'), ('SHARPSBURG', 295, '38.20210', '-83.92840'), ('SLATE VALLEY', None, '38.17150', '-83.72230'), ('STEPSTONE', None, '38.08800', '-83.83030'), ('YALE', None, '38.06380', '-83.50090'), ('YOUNG SPRINGS', None, '38.06640', '-83.60130'), ('ZILPO', None, '38.07200', '-83.47410')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYC013': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARJAY', None, '36.80500', '-83.64690'), ('BALKAN', None, '36.75970', '-83.54500'), ('BEVERLY', None, '36.93000', '-83.53300'), ('BINGHAMTOWN', None, '36.63190', '-83.71940'), ('BLACK SNAKE', None, '36.76910', '-83.50390'), ('BLACKMONT', None, '36.79200', '-83.52500'), ('BLANCHE', None, '36.81910', '-83.65610'), ('CALLAWAY', None, '36.78420', '-83.56310'), ('CALVIN', None, '36.72280', '-83.62220'), ('CARY', None, '36.79360', '-83.66530'), ('CHENOA', None, '36.66940', '-83.86190'), ('CLEAR CREEK SPRINGS', None, '36.72690', '-83.72830'), ('CUBAGE', None, '36.70250', '-83.52170'), ('DAVISBURG', None, '36.68000', '-83.82360'), ('EAST PINEVILLE', None, '36.73470', '-83.67170'), ('ELYS', None, '36.80590', '-83.75090'), ('FERNDALE', None, '36.69610', '-83.68610'), ('FIELD', None, '36.89310', '-83.60280'), ('FONDE', None, '36.60000', '-83.87780'), ('FOURMILE', None, '36.79360', '-83.74190'), ('FRAKES', None, '36.64310', '-83.92780'), ('HUTCH', None, '36.65030', '-83.62220'), ('INGRAM', None, '36.73110', '-83.79920'), ('KETTLE ISLAND', None, '36.79140', '-83.60470'), ('MELDRUM', None, '36.66750', '-83.69390'), ('MIDDLESBORO', None, '36.61320', '-83.72240'), ('MIRACLE', None, '36.76110', '-83.58390'), ('NOETOWN', None, '36.61750', '-83.75560'), ('OAKS', None, '36.72330', '-83.55670'), ('PINEVILLE', 2093, '36.76280', '-83.70130'), ('PONZA', None, '36.72000', '-83.64300'), ('PRUDEN', None, '36.59500', '-83.89140'), ('RELLA', None, '36.83580', '-83.63280'), ('STONY FORK', None, '36.83250', '-83.53470'), ('STRAIGHT CREEK', None, '36.77280', '-83.66720'), ('VARILLA', None, '36.73940', '-83.60030'), ('WALLSEND', None, '36.76580', '-83.71000'), ('WASIOTO', None, '36.75250', '-83.68920')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC015': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BURLINGTON', 10779, '39.02440', '-84.72300'), ('FLORENCE', 23551, '38.99150', '-84.64290'), ('OAKBROOK', 7726, '38.99960', '-84.68530'), ('UNION', 2893, '38.95290', '-84.66920'), ('WALTON', 2450, '38.86620', '-84.61560')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYC017': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CENTERVILLE', None, '38.21670', '-84.38330'), ('CLINTONVILLE', None, '38.08330', '-84.26670'), ('MILLERSBURG', 842, '38.30340', '-84.14620'), ('NORTH MIDDLETOWN', 562, '38.14100', '-84.11060'), ('PARIS', 9183, '38.20680', '-84.26100'), ('RUDDELS MILLS', None, '38.30000', '-84.23330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYC019': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ASHLAND', 21981, '38.45920', '-82.64490'), ('CANNONSBURG', None, '38.38860', '-82.70290'), ('CATLETTSBURG', 1960, '38.41760', '-82.60120'), ('WESTWOOD', 612, '38.48120', '-82.67800')], 'partOfState': '', 'wfo': 'RLX'}, -'NYC047': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BAY RIDGE', None, '40.62000', '-74.02000'), ('CANARSIE', None, '40.65000', '-73.89000'), ('CONEY ISLAND', None, '40.58300', '-73.98300'), ('CROWN HEIGHTS', 2992, '40.67000', '-73.94000'), ('FLATBUSH', None, '40.64000', '-73.95000'), ('GREENPOINT', None, '40.72000', '-73.95000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYC041': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BLUE MOUNTAIN LAKE', None, '43.87530', '-74.44420'), ('HOFFMEISTER', None, '43.40000', '-74.72000'), ('INDIAN LAKE', None, '43.78330', '-74.26920'), ('LONG LAKE', None, '43.97000', '-74.42000'), ('PISECO', None, '43.42400', '-74.53600'), ('RAQUETTE LAKE', None, '43.81300', '-74.65720'), ('SABAEL', None, '43.72830', '-74.30700'), ('SABATTIS', None, '44.08120', '-74.70120'), ('SPECULATOR', 348, '43.58060', '-74.38060'), ('WELLS', None, '43.39030', '-74.29120')], 'partOfState': '', 'wfo': 'ALY'}, -'NYC043': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ATWELL', None, '43.52470', '-74.94330'), ('BIG MOOSE', None, '43.81750', '-74.91350'), ('COLD BROOK', 336, '43.24090', '-75.03760'), ('DOLGEVILLE', 2166, '43.10120', '-74.77450'), ('EAGLE BAY', None, '43.76670', '-74.82170'), ('FRANKFORT', 2537, '43.03810', '-75.07190'), ('HERKIMER', 7498, '43.02870', '-74.99280'), ('ILION', 8610, '43.01120', '-75.04070'), ('JORDANVILLE', None, '42.91570', '-74.95120'), ('LITTLE FALLS', 5188, '43.04540', '-74.85590'), ('MCKEEVER', None, '43.61220', '-75.10000'), ('MIDDLEVILLE', 550, '43.13830', '-74.97110'), ('MOHAWK', 2660, '43.00940', '-75.00720'), ('NEWPORT', 640, '43.18730', '-75.01500'), ('NOBLEBORO', None, '43.39530', '-74.86080'), ('NORTHWOOD', None, '43.34900', '-75.07120'), ('OHIO', None, '43.32220', '-74.97870'), ('OLD FORGE', None, '43.71100', '-74.97170'), ('POLAND', 451, '43.22610', '-75.06150'), ('WEST WINFIELD', 862, '42.88360', '-75.19170')], 'partOfState': '', 'wfo': 'ALY'}, -'MIC029': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BEAVER ISLAND', None, '45.70000', '-85.55000'), ('BOYNE CITY', 3503, '45.18400', '-84.95670'), ('BOYNE FALLS', 370, '45.16650', '-84.90000'), ('CHARLEVOIX', 2994, '45.32000', '-85.26000'), ('CLARION', None, '45.28360', '-84.90410'), ('EAST JORDAN', 2507, '45.15780', '-85.13030'), ('HORTON BAY', None, '45.28330', '-85.08460'), ('IRONTON', None, '45.26000', '-85.20000'), ('NORWOOD', None, '45.24000', '-85.39000'), ('WALLOON LAKE', None, '45.26710', '-84.91700')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIC027': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CASSOPOLIS', 1740, '41.91250', '-86.00790'), ('DOWAGIAC', 6147, '41.98380', '-86.11060'), ('EDWARDSBURG', 1147, '41.79670', '-86.08350'), ('MARCELLUS', 1162, '42.02600', '-85.81320'), ('VANDALIA', 429, '41.91840', '-85.91500')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'MIC025': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALBION', 9144, '42.24640', '-84.75690'), ('ATHENS', 1111, '42.08580', '-85.23620'), ('BATTLE CREEK', 53364, '42.29890', '-85.22900'), ('BEFORD', None, '42.39530', '-85.23220'), ('BROWNLEE PARK', 2588, '42.32420', '-85.13370'), ('BURLINGTON', 405, '42.10480', '-85.07910'), ('CERESCO', None, '42.27180', '-85.06130'), ('HOMER', 1851, '42.14550', '-84.81000'), ('MARENGO', None, '42.27130', '-84.84870'), ('MARSHALL', 7459, '42.26170', '-84.95840'), ('PINE CREEK', None, '42.16550', '-85.25620'), ('SPRINGFIELD', 5189, '42.32400', '-85.23760'), ('TEKONSHA', 712, '42.09470', '-84.98930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'MIC023': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BRONSON', 2421, '41.87370', '-85.19150'), ('COLDWATER', 12697, '41.94060', '-85.00450'), ('QUINCY', 1701, '41.94390', '-84.88300'), ('SHERWOOD', 324, '42.00000', '-85.24000'), ('UNION CITY', 1804, '42.06630', '-85.14050')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'IDC025': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BLAINE', None, '43.35000', '-114.61700'), ('CORRAL', None, '43.38300', '-114.96700'), ('FAIRFIELD', 395, '43.34610', '-114.79210'), ('HILL CITY', None, '43.29580', '-115.05280'), ('SELBY', None, '43.33300', '-114.71700'), ('SOLDIER', None, '43.36700', '-114.80000')], 'partOfState': 'CENTRAL', 'wfo': 'BOI'}, -'WAC065': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ADDY', None, '48.35370', '-117.83520'), ('ARDEN', None, '48.45620', '-117.87180'), ('CEDONIA', None, '48.15230', '-118.16750'), ('CHEWELAH', 2186, '48.28600', '-117.72970'), ('CLAYTON', None, '47.99080', '-117.55500'), ('COLVILLE', 4988, '48.54330', '-117.89510'), ('EVANS', None, '48.70820', '-118.02120'), ('FORD', None, '47.90500', '-117.80280'), ('FRUITLAND', None, '48.06930', '-118.19200'), ('GIFFORD', None, '48.30380', '-118.14050'), ('HUNTERS', None, '48.11680', '-118.20050'), ('KETTLE FALLS', 1527, '48.60600', '-118.05890'), ('LOON LAKE', None, '48.05700', '-117.62570'), ('MARCUS', 117, '48.66320', '-118.05790'), ('NORTHPORT', 336, '48.91670', '-117.77830'), ('ORIN', None, '48.48800', '-117.90530'), ('RICE', None, '48.42400', '-118.16820'), ('SPRINGDALE', 283, '48.05690', '-117.74630'), ('TUM TUM', None, '47.88830', '-117.67580'), ('VALLEY', None, '48.17180', '-117.72080'), ('WELLPINIT', None, '47.88620', '-117.98550')], 'partOfState': 'NORTHEAST', 'wfo': 'OTX'}, -'INC159': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('KEMPTON', 380, '40.28750', '-86.23000'), ('SHARPSVILLE', 618, '40.37990', '-86.08730'), ('TIPTON', 5251, '40.28280', '-86.04030'), ('WINDFALL', None, '40.36290', '-85.95750')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'WAC067': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BUCODA', 628, '46.79820', '-122.86790'), ('GRAND MOUND', 1948, '46.81000', '-123.01270'), ('LACEY', 31226, '47.03310', '-122.80580'), ('NISQUALLY INDIAN COMMUNIT', None, '47.00590', '-122.66980'), ('NORTH YELM', 2793, '46.96320', '-122.60170'), ('OLYMPIA', 42514, '47.04190', '-122.89380'), ('RAINIER', 1492, '46.89050', '-122.68460'), ('ROCHESTER', 1829, '46.82910', '-123.07070'), ('TANGLEWILDE-THOMPSON PLAC', None, '47.05250', '-122.77810'), ('TENINO', 1447, '46.85740', '-122.84740'), ('TUMWATER', 12698, '46.99810', '-122.91790'), ('YELM', 3289, '46.94570', '-122.60350')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'WAC061': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALDERWOOD MANOR-BOTHELL N', None, '47.79960', '-122.24210'), ('ARLINGTON', 11713, '48.17580', '-122.13830'), ('BRIER', 6383, '47.79250', '-122.27170'), ('CATHAN', 526, '48.11430', '-122.27620'), ('DARRINGTON', 1136, '48.25240', '-121.60390'), ('EDMONDS', 39515, '47.82590', '-122.36790'), ('ESPERANCE', 3503, '47.78910', '-122.35430'), ('EVERETT', 91488, '47.96330', '-122.19860'), ('GOLD BAR', 2014, '47.85770', '-121.69570'), ('GRANITE FALLS', 2347, '48.08290', '-121.96710'), ('HARBOUR POINTE', None, '47.88600', '-122.30400'), ('INDEX', 157, '47.82070', '-121.55240'), ('JOHN SAM LAKE', 753, '48.10940', '-122.24460'), ('LAKE GOODWIN', 3354, '48.13910', '-122.27840'), ('LAKE SERENE-NORTH LYNNWOO', None, '47.85500', '-122.28410'), ('LAKE STEVENS', 6361, '48.01710', '-122.06530'), ('LYNNWOOD', 33847, '47.82720', '-122.30430'), ('MARTHA LAKE', 12633, '47.85100', '-122.23810'), ('MARYSVILLE', 25315, '48.05950', '-122.15470'), ('MILL CREEK', 11525, '47.85770', '-122.20580'), ('MONROE', 13795, '47.85810', '-121.98180'), ('MOUNTLAKE TERRACE', 20362, '47.79120', '-122.30660'), ('MUKILTEO', 18019, '47.92680', '-122.30870'), ('NORTH CREEK-CANYON PARK', None, '47.81060', '-122.18640'), ('NORTH MARYSVILLE', 21161, '48.09940', '-122.14760'), ('PAINE FIELD-LAKE STICKNEY', 24383, '47.88710', '-122.26240'), ('SHAKER CHURCH', 787, '48.05280', '-122.22710'), ('SILVER LAKE-FIRCREST', None, '47.87360', '-122.16980'), ('SMOKEY POINT', 1556, '48.15040', '-122.19330'), ('SNOHOMISH', 8494, '47.91950', '-122.09340'), ('STANWOOD', 3923, '48.24320', '-122.34820'), ('STIMSON CROSSING', 773, '48.10790', '-122.20700'), ('SULTAN', 3344, '47.86460', '-121.80430'), ('WEALLUP LAKE', 882, '48.11040', '-122.30490'), ('WEST LAKE STEVENS', 18071, '47.99350', '-122.10070')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'PAC031': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CALLENSBURG', 224, '41.12560', '-79.55850'), ('CLARION', 6185, '41.21010', '-79.38040'), ('EAST BRADY', 1038, '40.98480', '-79.61410'), ('FOXBURG', 275, '41.14500', '-79.68060'), ('FRYBURG', None, '41.35000', '-79.45000'), ('KNOX', 1176, '41.23480', '-79.53570'), ('NEW BETHLEHEM', 1057, '41.00300', '-79.32880'), ('RIMERSBURG', 1051, '41.04120', '-79.50210'), ('SHIPPENVILLE', 505, '41.25090', '-79.46300'), ('SLIGO', 728, '41.10880', '-79.49590'), ('ST. PETERSBURG', 405, '41.16090', '-79.65440'), ('STRATTANVILLE', 542, '41.20290', '-79.32760')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'WAC063': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FOUR LAKES', None, '47.55680', '-117.58920'), ('AIRWAY HEIGHTS', 4500, '47.64440', '-117.58290'), ('CHATTAROY', None, '47.88720', '-117.35400'), ('CHENEY', 8832, '47.49060', '-117.57950'), ('COLBERT', None, '47.82270', '-117.33780'), ('DEEP CREEK', None, '47.63920', '-117.70670'), ('DEER PARK', 3017, '47.96330', '-117.43400'), ('DISHMAN', 10031, '47.65890', '-117.27550'), ('ELK', None, '48.00980', '-117.27200'), ('FAIRCHILD AFB', 4357, '47.61310', '-117.64370'), ('FAIRFIELD', 494, '47.38520', '-117.17400'), ('GREEN ACRES', 5158, '47.66360', '-117.16090'), ('LATAH', 151, '47.28180', '-117.15430'), ('LIBERTY LAKE', 4660, '47.65440', '-117.08250'), ('MARSHALL', None, '47.55900', '-117.49230'), ('MEAD', None, '47.76720', '-117.35230'), ('MEDICAL LAKE', 3758, '47.57000', '-117.69210'), ('MICA', None, '47.55370', '-117.20670'), ('MILAN', None, '47.96700', '-117.32570'), ('MILLWOOD', 1649, '47.68570', '-117.27930'), ('NEWMAN LAKE', None, '47.77280', '-117.08970'), ('OPPORTUNITY', 25065, '47.64950', '-117.24050'), ('OTIS ORCHARDS', None, '47.70020', '-117.09010'), ('PLAZA', None, '47.31880', '-117.37630'), ('ROCKFORD', 413, '47.45100', '-117.12920'), ('SPANGLE', 240, '47.43050', '-117.37880'), ('SPOKANE', 195629, '47.67230', '-117.41400'), ('TRENTWOOD', 4388, '47.69790', '-117.21340'), ('TYLER', None, '47.43500', '-117.77620'), ('VALLEYFORD', None, '47.52580', '-117.23620'), ('VERADALE', 9387, '47.64950', '-117.20750'), ('WAVERLY', 121, '47.33950', '-117.22870')], 'partOfState': '', 'wfo': 'OTX'}, -'INC151': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ANGOLA', 7344, '41.64290', '-85.00010'), ('CLEAR LAKE', 244, '41.73580', '-84.83830'), ('FREMONT', 1696, '41.73110', '-84.93370'), ('ORLAND', 341, '41.73100', '-85.17110')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'INC153': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CARLISLE', 2660, '38.96220', '-87.40070'), ('DUGGER', 955, '39.06840', '-87.26040'), ('FARMERSBURG', 1180, '39.25240', '-87.38040'), ('HYMERA', 833, '39.18570', '-87.29890'), ('MEROM', 294, '39.05690', '-87.56780'), ('SHELBURN', 1268, '39.17950', '-87.39690'), ('SULLIVAN', 4617, '39.09690', '-87.40780')], 'partOfState': 'SOUTHWEST', 'wfo': 'IND'}, -'WAC069': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALTOONA', None, '46.26700', '-123.65000'), ('CATHLAMET', 565, '46.20020', '-123.37960'), ('DEEP RIVER', None, '46.34800', '-123.68500'), ('GRAYS RIVER', None, '46.35000', '-123.60000'), ('PILLAR ROCK', None, '46.26660', '-123.58330'), ('PUGET ISLAND', None, '46.17000', '-123.38000'), ('ROSBURG', None, '46.33330', '-123.63330'), ('SKAMOKAWA', None, '46.26700', '-123.45000')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'INC155': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('PATRIOT', 202, '38.83820', '-84.82780')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILN'}, -'INC157': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BATTLE GROUND', 1323, '40.51000', '-86.83850'), ('CLARKS HILL', 680, '40.24690', '-86.72460'), ('DAYTON', 1120, '40.37760', '-86.77680'), ('LAFAYETTE', 56397, '40.41090', '-86.87070'), ('OTTERBEIN', 1312, '40.48830', '-87.09410'), ('SHADELAND', 1682, '40.34450', '-86.96370'), ('WEST LAFAYETTE', 28778, '40.44470', '-86.91190')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'MIC055': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BATES', None, '44.76660', '-85.44000'), ('FIFE LAKE', 466, '44.57370', '-85.35330'), ('GRAWN', None, '44.66670', '-85.68330'), ('HANNAH', None, '44.58330', '-85.61670'), ('INTERLOCHEN', None, '44.65000', '-85.75000'), ('KARLIN', None, '44.58330', '-85.76660'), ('KINGSLEY', 1469, '44.58430', '-85.53540'), ('MAPLETON', None, '44.90000', '-85.51660'), ('OLD MISSION', None, '44.97250', '-85.48650'), ('TRAVERSE CITY', 14532, '44.75440', '-85.60290'), ('WILLIAMSBURG', None, '44.76670', '-85.40000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'ALC079': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('COURTLAND', 769, '34.66890', '-87.31660'), ('HILLSBORO', 608, '34.63670', '-87.18460'), ('MOULTON', 3260, '34.48390', '-87.28110'), ('NORTH COURTLAND', 799, '34.67720', '-87.30840'), ('TOWN CREEK', 1216, '34.67270', '-87.40830')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'IAC135': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBIA', 3706, '41.02660', '-92.80280'), ('LOVILIA', 583, '41.13540', '-92.90790'), ('MELROSE', 130, '40.98080', '-93.04930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'NEC009': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BREWSTER', 29, '41.93840', '-99.86510'), ('DUNNING', 109, '41.82770', '-100.10370'), ('PURDUM', None, '42.07000', '-100.26000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEC005': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARTHUR', 145, '41.57230', '-101.69190')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEC007': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('HARRISBURG', 75, '41.55000', '-103.74000')], 'partOfState': '', 'wfo': 'CYS'}, -'NEC001': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AYR', 98, '40.43790', '-98.44020'), ('HANSEN', None, '40.69580', '-98.36860'), ('HASTINGS', 24064, '40.58930', '-98.39010'), ('HOLSTEIN', 229, '40.46480', '-98.65110'), ('JUNIATA', 693, '40.58950', '-98.50540'), ('KENESAW', 873, '40.61960', '-98.65810'), ('PROSSER', 94, '40.68870', '-98.57730'), ('ROSELAND', 242, '40.47090', '-98.55790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC003': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRUNSWICK', 179, '42.33820', '-97.97120'), ('CLEARWATER', 384, '42.17060', '-98.18860'), ('ELGIN', 735, '41.98370', '-98.08320'), ('NELIGH', 1651, '42.13000', '-98.02880'), ('OAKDALE', 345, '42.07000', '-97.96610'), ('ORCHARD', 391, '42.33600', '-98.24120'), ('ROYAL', 75, '42.33270', '-98.12500')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'IDC019': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('AMMON', 6187, '43.47960', '-111.96830'), ('BONE', None, '43.32000', '-111.80000'), ('GRAY', None, '43.05000', '-111.35000'), ('HERMAN', None, '43.13000', '-111.43000'), ('IDAHO FALLS', 50730, '43.49290', '-112.03500'), ('IDAHO FALLS ARPT', None, '43.50000', '-112.04000'), ('IONA', 1201, '43.52850', '-111.92770'), ('IRWIN', 157, '43.39750', '-111.26520'), ('OSGOOD', None, '43.57000', '-112.10000'), ('OZONE', None, '43.40000', '-111.85000'), ('PALISADES', None, '43.35000', '-111.22000'), ('POPLAR', None, '43.62000', '-111.68000'), ('SWAN VALLEY', 213, '43.43980', '-111.31500'), ('UCON', 943, '43.59420', '-111.95540')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'IDC013': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BELLEVUE', 1876, '43.46590', '-114.25740'), ('CAREY', 513, '43.30000', '-113.95000'), ('GALENA', None, '43.87000', '-114.65000'), ('GANNETT', None, '43.35000', '-114.18000'), ('HAILEY', 6200, '43.51170', '-114.29920'), ('KETCHUM', 3003, '43.68880', '-114.37520'), ('MAGIC CITY', None, '43.28000', '-114.37000'), ('PICABO', None, '43.30000', '-114.07000'), ('SUN VALLEY', 1427, '43.68150', '-114.32840')], 'partOfState': 'CENTRAL', 'wfo': 'PIH'}, -'IDC011': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ABERDEEN', 1840, '42.94460', '-112.83700'), ('BASALT', 419, '43.31440', '-112.16520'), ('BLACKFOOT', 10419, '43.19400', '-112.34490'), ('FIRTH', 408, '43.30560', '-112.18310'), ('GIBSON', None, '43.08000', '-112.42000'), ('GOSHEN', None, '43.32000', '-112.08000'), ('MORELAND', None, '43.22000', '-112.45000'), ('PINGREE', None, '43.12000', '-112.62000'), ('ROCKFORD', None, '43.18000', '-112.55000'), ('ROSE', None, '43.25000', '-112.33000'), ('SHELLEY', 3813, '43.38020', '-112.12310'), ('SPRINGFIELD', None, '43.08000', '-112.70000'), ('STERLING', None, '43.03000', '-112.75000'), ('TABER', None, '43.32000', '-112.63000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'TXC333': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GOLDTHWAITE', 1802, '31.45390', '-98.57100'), ('MULLIN', 175, '31.55470', '-98.66500')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'IDC017': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BLANCHARD', None, '48.01680', '-116.97630'), ('CABINET', None, '48.08400', '-116.07020'), ('CAREYWOOD', None, '48.03420', '-116.63870'), ('CLARK FORK', 530, '48.14790', '-116.17670'), ('COCOLALLA', None, '48.10480', '-116.60980'), ('COLBURN', None, '48.39170', '-116.53380'), ('COOLIN', None, '48.47450', '-116.84230'), ('DOVER', 342, '48.25360', '-116.60030'), ('EAST HOPE', 200, '48.24180', '-116.29130'), ('ELMIRA', None, '48.48750', '-116.45680'), ('GRANITE', None, '48.08600', '-116.42150'), ('GRANITE', None, '48.00630', '-116.66830'), ('HOPE', 79, '48.24790', '-116.30660'), ('KOOTENAI', 441, '48.31070', '-116.51780'), ('OLDTOWN', 190, '48.18240', '-117.03400'), ('PONDERAY', 638, '48.30120', '-116.53950'), ('PRIEST RIVER', 1754, '48.18510', '-116.91010'), ('SANDPOINT', 6835, '48.27990', '-116.55810')], 'partOfState': '', 'wfo': 'OTX'}, -'IDC015': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BANKS', None, '44.08390', '-116.11500'), ('CENTERVILLE', None, '43.91700', '-115.88300'), ('CROUCH', 154, '44.11530', '-115.97160'), ('GARDEN VALLEY', None, '44.09750', '-115.95780'), ('GARDENA', None, '43.98300', '-116.20000'), ('HORSESHOE BEND', 770, '43.91300', '-116.19460'), ('IDAHO CITY', 458, '43.84250', '-115.85110'), ('LOWMAN', None, '44.06890', '-115.61500'), ('PIONEERVILLE', None, '43.95000', '-115.86700'), ('PLACERVILLE', 60, '43.94300', '-115.94480')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BOI'}, -'SDC167': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALTON', 1095, '42.98640', '-96.00760'), ('BOYDEN', 672, '43.19020', '-96.00200'), ('CHATSWORTH', 89, '42.91640', '-96.51470'), ('GRANVILLE', 325, '42.98470', '-95.87480'), ('HAWARDEN', 2478, '43.00220', '-96.48240'), ('HOSPERS', 672, '43.07200', '-95.90360'), ('HULL', 1960, '43.19020', '-96.13270'), ('IRETON', 585, '42.97530', '-96.32150'), ('MATLOCK', 83, '43.24450', '-95.93420'), ('MAURICE', 254, '42.96640', '-96.18300'), ('ORANGE CITY', 5582, '43.00330', '-96.05850'), ('ROCK VALLEY', 2702, '43.20460', '-96.29720'), ('SIOUX CENTER', 6002, '43.07660', '-96.17150'), ('FAIRVIEW', 94, '43.22210', '-96.48900')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAC169': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMES', 50731, '42.02340', '-93.62560'), ('CAMBRIDGE', 819, '41.89950', '-93.53090'), ('COLLINS', 499, '41.90250', '-93.30540'), ('COLO', 868, '42.01590', '-93.31850'), ('GILBERT', 987, '42.10740', '-93.64750'), ('HUXLEY', 2316, '41.89600', '-93.60250'), ('KELLEY', 300, '41.95090', '-93.66470'), ('MAXWELL', 807, '41.89140', '-93.39880'), ('MCCALLSBURG', 318, '42.16550', '-93.39030'), ('NEVADA', 6658, '42.01820', '-93.45020'), ('ROLAND', 1324, '42.16700', '-93.50120'), ('SHELDAHL', 336, '41.86410', '-93.69620'), ('SLATER', 1306, '41.88030', '-93.68410'), ('STORY CITY', 3228, '42.18640', '-93.59160'), ('ZEARING', 617, '42.15890', '-93.29650')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'INC165': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CAYUGA', 1109, '39.94710', '-87.46480'), ('DANA', 662, '39.80670', '-87.49420'), ('FAIRVIEW PARK', 1496, '39.68180', '-87.41360'), ('NEWPORT', 578, '39.88480', '-87.40630'), ('PERRYSVILLE', 502, '40.05350', '-87.43580'), ('UNIVERSAL', 419, '39.62160', '-87.45300')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'ILC091': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AROMA PARK', 821, '41.07980', '-87.80540'), ('BONFIELD', 364, '41.14720', '-88.05670'), ('BOURBONNAIS', 15256, '41.16320', '-87.88040'), ('BRADLEY', 12784, '41.14720', '-87.85570'), ('BUCKINGHAM', 237, '41.04680', '-88.17610'), ('ESSEX', 554, '41.17830', '-88.19470'), ('GRANT PARK', 1358, '41.23920', '-87.64460'), ('HERSCHER', 1523, '41.04910', '-88.10060'), ('HOPKINS PARK', 711, '41.07220', '-87.61470'), ('IRWIN', 92, '41.05250', '-87.98400'), ('KANKAKEE', 27491, '41.11550', '-87.86120'), ('MANTENO', 6414, '41.25120', '-87.83670'), ('MOMENCE', 3171, '41.16350', '-87.66360'), ('REDDICK', 219, '41.09730', '-88.24880'), ('ST. ANNE', 1212, '41.02330', '-87.71700'), ('SUN RIVER TERRACE', 383, '41.12650', '-87.73460'), ('UNION HILL', 66, '41.10930', '-88.14550')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'IAC161': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AUBURN', 296, '42.24990', '-94.87690'), ('EARLY', 605, '42.46090', '-95.15250'), ('LAKE VIEW', 1278, '42.30620', '-95.04660'), ('LYTTON', 305, '42.42340', '-94.87000'), ('NEMAHA', 102, '42.51500', '-95.08770'), ('ODEBOLT', 1153, '42.31150', '-95.25380'), ('SAC CITY', 2368, '42.42210', '-94.99730'), ('SCHALLER', 779, '42.49570', '-95.29540'), ('WALL LAKE', 841, '42.26960', '-95.09300')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'LAC087': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CHALMETTE', 32069, '29.94420', '-89.96730'), ('VIOLET', 8555, '29.89620', '-89.89250'), ('YSCLOSKEY', None, '29.84170', '-89.68830')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'ILC095': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ABINGDON', 3612, '40.80260', '-90.40070'), ('ALTONA', 570, '41.11520', '-90.16470'), ('DAHINDA', None, '40.95000', '-90.10000'), ('DELONG', None, '40.81670', '-90.31670'), ('GALESBURG', 33706, '40.95000', '-90.37790'), ('GILSON', None, '40.86670', '-90.20000'), ('HENDERSON', 319, '41.02450', '-90.35290'), ('KNOXVILLE', 3183, '40.90630', '-90.28540'), ('MAQUON', 318, '40.79830', '-90.16270'), ('ONEIDA', 752, '41.07240', '-90.22540'), ('RIO', 240, '41.10870', '-90.39900'), ('ST. AUGUSTINE', 152, '40.71970', '-90.40890'), ('VICTORIA', 323, '41.03300', '-90.09530'), ('WATAGA', 857, '41.02510', '-90.27510'), ('WILLIAMSFIELD', 620, '40.92610', '-90.01730'), ('YATES CITY', 725, '40.77800', '-90.01360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'IAC165': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DEFIANCE', 346, '41.82540', '-95.33930'), ('EARLING', 471, '41.77610', '-95.41970'), ('ELK HORN', 649, '41.59270', '-95.06040'), ('HARLAN', 5282, '41.64900', '-95.32620'), ('IRWIN', 372, '41.79010', '-95.20670'), ('KIRKMAN', 76, '41.72900', '-95.26630'), ('PANAMA', 212, '41.72670', '-95.47530'), ('PORTSMOUTH', 225, '41.65070', '-95.51940'), ('SHELBY', 696, '41.50850', '-95.45160'), ('TENNANT', 73, '41.59550', '-95.44290'), ('WESTPHALIA', 160, '41.71930', '-95.39310')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'AKC170': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BIG LAKE', 2635, '61.52140', '-149.95440'), ('BUTTE', 2561, '61.54250', '-149.05170'), ('CHASE', 41, '62.44910', '-150.10180'), ('CHICKALOON', 213, '61.79510', '-148.48050'), ('HOUSTON', 1202, '61.62410', '-149.78110'), ('KNIK', None, '61.45330', '-149.74160'), ('LAZY MOUNTAIN', 1158, '61.62620', '-148.94570'), ('MEADOW LAKES', 4819, '61.62460', '-149.60120'), ('PALMER', 4533, '61.59890', '-149.10990'), ('SKWENTNA', 111, '61.99020', '-151.39780'), ('SUTTON', None, '61.71730', '-148.88120'), ('TALKEETNA', 772, '62.33690', '-150.09260'), ('TRAPPER CREEK', 423, '62.24140', '-150.41570'), ('WASILLA', 5469, '61.58020', '-149.46160'), ('WILLOW', 1658, '61.74080', '-150.05630')], 'partOfState': '', 'wfo': 'AFCAFG'}, -'OHC079': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('COALTON', 545, '39.11250', '-82.61120'), ('JACKSON', 6184, '39.04570', '-82.62920'), ('OAK HILL', 1685, '38.89600', '-82.56940'), ('WELLSTON', 6078, '39.11710', '-82.53830')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'VAC149': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BIRCHETT ESTATE', None, '37.26030', '-77.27720'), ('BRANDON', None, '37.25580', '-76.99890'), ('BURROWSVILLE', None, '37.21670', '-77.08310'), ('DISPUTANTA', None, '37.12430', '-77.22610'), ('FORT LEE', 7269, '37.23340', '-77.33030'), ('GARYSVILLE', None, '37.24950', '-77.15730'), ('JORDAN POINT COUNTRY CLUB', None, '37.28420', '-77.25480'), ('JORDANS POINT', None, '37.30560', '-77.22110'), ('NEW BOHEMIA', None, '37.18430', '-77.31940'), ('PRINCE GEORGE', None, '37.22310', '-77.28780'), ('PRINCE GEORGE GOLF COURSE', None, '37.14620', '-77.26640'), ('RICHARD BLAND COLLEGE', None, '37.17320', '-77.37160'), ('TAYLORS CORNER', None, '37.22920', '-77.04060'), ('TEMPLETON', None, '37.07540', '-77.33010')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'ILC075': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASHKUM', 724, '40.87840', '-87.95360'), ('BEAVERVILLE', 391, '40.95350', '-87.65500'), ('BUCKLEY', 593, '40.59720', '-88.03700'), ('CHEBANSE', 1148, '41.00220', '-87.91380'), ('CISSNA PARK', 811, '40.56680', '-87.89250'), ('CLIFTON', 1317, '40.93550', '-87.93340'), ('CRESCENT CITY', 631, '40.77150', '-87.85640'), ('DANFORTH', 587, '40.82120', '-87.97790'), ('DONOVAN', 351, '40.88540', '-87.61470'), ('GILMAN', 1793, '40.76590', '-87.99610'), ('IROQUOIS', 207, '40.82870', '-87.58470'), ('LODA', 419, '40.51670', '-88.07530'), ('MARTINTON', 375, '40.91530', '-87.72630'), ('MILFORD', 1369, '40.62770', '-87.69700'), ('ONARGA', 1438, '40.71310', '-88.01320'), ('PAPINEAU', 196, '40.96770', '-87.71590'), ('SHELDON', 1232, '40.77090', '-87.56640'), ('THAWVILLE', 258, '40.67390', '-88.11330'), ('WATSEKA', 5670, '40.77590', '-87.73210'), ('WELLINGTON', 264, '40.54050', '-87.67830'), ('WOODLAND', 319, '40.71300', '-87.73070')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LOT'}, -'ARC021': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CORNING', 3679, '36.41080', '-90.58590'), ('DATTO', 97, '36.39320', '-90.72810'), ('GREENWAY', 244, '36.34110', '-90.22220'), ('HICKORIA', None, '36.38330', '-90.45000'), ('KNOBEL', 358, '36.31930', '-90.60170'), ('MCDOUGAL', 195, '36.43660', '-90.39020'), ('NIMMONS', 100, '36.30700', '-90.09450'), ('PEACH ORCHARD', 195, '36.28090', '-90.66190'), ('PIGGOTT', 3894, '36.38390', '-90.20080'), ('POLLARD', 240, '36.43070', '-90.26620'), ('RECTOR', 2017, '36.26420', '-90.29330'), ('ST. FRANCIS', 250, '36.45350', '-90.14320'), ('SUCCESS', 180, '36.45450', '-90.72290')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC077': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AVA', 662, '37.88840', '-89.49630'), ('CAMPBELL HILL', 333, '37.93020', '-89.55100'), ('CARBONDALE', 20681, '37.72460', '-89.21740'), ('DE SOTO', 1653, '37.81590', '-89.22720'), ('DOWELL', 441, '37.93950', '-89.23950'), ('ELKVILLE', 1001, '37.90950', '-89.23650'), ('GORHAM', 256, '37.71780', '-89.48260'), ('GRAND TOWER', 624, '37.63960', '-89.50330'), ('MAKANDA', 419, '37.61910', '-89.23720'), ('MURPHYSBORO', 13295, '37.76810', '-89.33720'), ('VERGENNES', 491, '37.90200', '-89.33970')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ARC023': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CONCORD', 255, '35.66340', '-91.84870'), ('GREERS FERRY', 930, '35.56780', '-92.16920'), ('HEBER SPRINGS', 6432, '35.50020', '-92.03860'), ('HIGDEN', 101, '35.56640', '-92.20520'), ('QUITMAN', 714, '35.38230', '-92.21430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ILC071': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BALD BLUFF', None, '41.01670', '-90.85000'), ('BIG RIVER STATE FOREST', None, '41.03330', '-90.91670'), ('BIGGSVILLE', 343, '40.85350', '-90.86130'), ('CARMAN', None, '40.73330', '-91.06670'), ('CARTHAGE LAKE', None, '40.80000', '-91.08330'), ('DECORRA', None, '40.73330', '-90.96670'), ('DELABAR STATE PARK', None, '40.96670', '-90.93330'), ('GLADSTONE', 284, '40.86370', '-90.95750'), ('GULFPORT', None, '40.80900', '-91.08360'), ('HEAPSVILLE', None, '40.76670', '-91.06670'), ('HOPPER', None, '40.78330', '-90.98330'), ('LOMAX', 477, '40.67760', '-91.07640'), ('LONE TREE', None, '40.83330', '-91.01670'), ('MEDIA', 130, '40.77270', '-90.83400'), ('OLENA', None, '40.78330', '-90.93330'), ('OQUAWKA', 1539, '40.93760', '-90.94950'), ('RARITAN', 140, '40.69540', '-90.82500'), ('ROZETTA', None, '40.95000', '-90.86670'), ('SHOKOKON', None, '40.75000', '-91.06670'), ('STRONGHURST', 896, '40.75000', '-90.90000'), ('TERRE HAUTE', None, '40.67000', '-90.98330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'ARC025': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('KINGSLAND', 449, '33.86130', '-92.29410'), ('RISON', 1271, '33.95450', '-92.19070')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'ILC073': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALPHA', 726, '41.19220', '-90.38080'), ('ANDOVER', 594, '41.29500', '-90.29050'), ('ANNAWAN', 868, '41.39870', '-89.90700'), ('ATKINSON', 1001, '41.41870', '-90.01450'), ('BARSTOW', None, '41.51660', '-90.35000'), ('BISHOP HILL', 125, '41.19960', '-90.11720'), ('BRANDENBURG CORNERS', None, '41.28330', '-89.88330'), ('CAMBRIDGE', 2180, '41.30330', '-90.19330'), ('CLEVELAND', 253, '41.50290', '-90.31640'), ('COLONA', 5173, '41.48600', '-90.35050'), ('DAYTON', None, '41.48330', '-90.31670'), ('GALVA', 2758, '41.16660', '-90.03890'), ('GENESEO', 6480, '41.44720', '-90.15450'), ('GERMAN CORNER', None, '41.30000', '-90.03330'), ('GREEN RIVER', None, '41.47000', '-90.33300'), ('GREEN ROCK', None, '41.47500', '-90.36360'), ('HOOPPOLE', 162, '41.52090', '-89.91330'), ('KEWANEE', 12944, '41.24110', '-89.92560'), ('KEWANEE MUNICIPAL AIRPORT', None, '41.20000', '-89.96670'), ('LYNN CENTER', None, '41.30000', '-90.35000'), ('MORRISTOWN', None, '41.40000', '-90.30000'), ('NEKOMA', None, '41.17220', '-90.18700'), ('OPHIEM', None, '41.25000', '-90.38330'), ('ORION', 1713, '41.35120', '-90.37410'), ('OSBORN', None, '41.51660', '-90.26670'), ('OSCO', None, '41.35000', '-90.28330'), ('SHADY BEACH', None, '41.53330', '-90.20000'), ('SUNNY HILL', None, '41.40000', '-90.43330'), ('ULAH', None, '41.26670', '-90.15000'), ('WARNER', None, '41.41670', '-90.38330'), ('WOODHULL', 809, '41.17840', '-90.32170')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ARC027': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('EMERSON', 359, '33.09740', '-93.19610'), ('MAGNOLIA', 10858, '33.27400', '-93.23540'), ('MCNEIL', 662, '33.34790', '-93.20880'), ('TAYLOR', 566, '33.10030', '-93.46210'), ('WALDO', 1594, '33.35250', '-93.29530')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'ARC029': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('MENIFEE', 311, '35.14830', '-92.55480'), ('MORRILTON', 6550, '35.15620', '-92.74090'), ('OPPELO', 725, '35.10100', '-92.77510'), ('PLUMERVILLE', 854, '35.16060', '-92.64120')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'SCC011': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BARNWELL', 5035, '33.24140', '-81.36510'), ('BLACKVILLE', 2973, '33.36020', '-81.28100'), ('ELKO', 212, '33.37910', '-81.37950'), ('HILDA', 436, '33.27380', '-81.24660'), ('KLINE', 238, '33.12420', '-81.34320'), ('SNELLING', 246, '33.24030', '-81.45590'), ('WILLISTON', 3307, '33.40170', '-81.42270')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'ILC079': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BOGOTA', None, '38.91670', '-88.23330'), ('GILA', None, '39.11670', '-88.26670'), ('HIDALGO', 123, '39.15660', '-88.15070'), ('LATONA', None, '38.95000', '-88.31670'), ('NEWTON', 3069, '38.98810', '-88.16330'), ('ROSE HILL', 79, '39.10410', '-88.15120'), ('STE. MARIE', 261, '38.93200', '-88.02660'), ('WEST LIBERTY', None, '38.86670', '-88.08530'), ('WHEELER', 119, '39.04280', '-88.31860'), ('WILLOW HILL', 250, '38.99630', '-88.02130'), ('YALE', 97, '39.12010', '-88.02430')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILX'}, -'SCC017': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CAMERON', 449, '33.55840', '-80.71490'), ('ST. MATTHEWS', 2107, '33.66370', '-80.77790')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCC015': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALVIN', None, '33.34890', '-79.81640'), ('ARARAT', None, '32.97830', '-80.00360'), ('BETHERA', None, '33.20140', '-79.78830'), ('BEUFORDTOWN', None, '33.28390', '-79.74360'), ('BLACK CREEK', None, '33.28470', '-80.25780'), ('BONNEAU', 354, '33.30530', '-79.95810'), ('BONNEAU BEACH', None, '33.31970', '-80.00060'), ('CAINHOY', None, '32.92920', '-79.83140'), ('CALESTOWN', None, '33.29030', '-79.78690'), ('CARNES CROSSROAD', None, '33.06330', '-80.09330'), ('CHARITY', None, '33.00580', '-79.85000'), ('CHICORA', None, '33.26690', '-80.10970'), ('COLLEGE PARK', None, '33.01720', '-80.09830'), ('COMINGTEE', None, '33.07940', '-79.91720'), ('CORDESVILLE', None, '33.13190', '-79.88360'), ('COTE BAS LANDING', None, '33.01470', '-79.92420'), ('CROSS', None, '33.32720', '-80.14860'), ('CROSS CROSS ROADS', None, '33.34440', '-80.14280'), ('DANIEL ISLAND', None, '32.87500', '-79.90000'), ('DRIGGERSTOWN', None, '33.03030', '-80.09140'), ('EADYTOWN', None, '33.41220', '-80.14720'), ('EBENEZER', None, '33.25580', '-80.32500'), ('ELLWOOD', None, '33.11080', '-79.93640'), ('FAREWELL CORNER', None, '33.22280', '-79.74750'), ('GOOSE CREEK', 29208, '32.98080', '-80.03280'), ('GROOMVILLE', None, '33.08560', '-80.05690'), ('GROVE HALL', None, '33.04530', '-80.07780'), ('HAGAN', None, '33.05720', '-79.90920'), ('HALFWAY CREEK', None, '33.11360', '-79.64750'), ('HUGER', None, '33.09640', '-79.80360'), ('HUSSERTOWN', None, '33.25560', '-80.25830'), ('JAMESTOWN', 97, '33.28580', '-79.69280'), ('JUDGE TOWN', None, '33.43190', '-80.01940'), ('LIMERICK', None, '33.13580', '-79.81530'), ('MACBETH', None, '33.26750', '-79.97500'), ('MEPKIN', None, '33.11470', '-79.95250'), ('MONCKS CORNER', 5952, '33.19580', '-80.01330'), ('MOOREFIELD', None, '33.28860', '-80.16890'), ('MORELAND', None, '33.00920', '-79.89530'), ('MOUNT HOLLY', None, '33.03420', '-80.03470'), ('MURRAYSVILLE', None, '33.18110', '-80.10170'), ('NEW HOPE', None, '33.10640', '-80.18830'), ('NEW HOPE', None, '33.08940', '-79.81670'), ('NEWLAND', None, '33.20420', '-79.61640'), ('OAKATEE', None, '33.04170', '-80.07920'), ('OAKLEY', None, '33.12390', '-80.01920'), ('OLD CORDESVILLE', None, '33.17750', '-79.91690'), ('PALMERVILLE', None, '33.25390', '-79.64780'), ('PIMLICO', None, '33.09720', '-79.96060'), ('PINEVILLE', None, '33.42810', '-80.02940'), ('PINOPOLIS', None, '33.22640', '-80.03780'), ('POPPENHEIM CROSSING', None, '32.96830', '-80.00190'), ('PRIOLEAU', None, '33.36420', '-80.19580'), ('RED BANK LANDING', None, '32.95170', '-79.93190'), ('RICHMOND', None, '33.07530', '-79.87890'), ('RUSSELLVILLE', None, '33.39690', '-79.97190'), ('SAINT JOHNS', None, '33.12060', '-80.06920'), ('SAINT STEPHEN', None, '33.40420', '-79.92190'), ('SANDRIDGE', None, '33.25500', '-80.31610'), ('SANGAREE', None, '33.03530', '-80.12810'), ('SHULERVILLE', None, '33.18720', '-79.63220'), ('SIMMONSVILLE', None, '33.24830', '-79.64060'), ('SIMPSON CROSSING', None, '33.24940', '-79.97530'), ('SMITH', None, '33.05780', '-79.77000'), ('SPRING HILL', None, '33.23110', '-80.32470'), ('STONY LANDING', None, '33.19310', '-79.96940'), ('STRAWBERRY', None, '33.09140', '-80.03080'), ('SUGAR HILL', None, '33.20780', '-80.04580'), ('TARRY TOWN', None, '33.08110', '-79.99310'), ('THOMAS CORNER', None, '33.16060', '-79.71500'), ('WADBOO', None, '33.19080', '-79.93780'), ('WAMPEE', None, '33.24310', '-80.03170'), ('WANDO', None, '32.93330', '-79.83190'), ('WAPPOOLA', None, '33.09780', '-79.99030'), ('WHITESVILLE', None, '33.14720', '-80.06170'), ('WILDER', None, '33.34690', '-79.94330'), ('WILSONS LANDING', None, '33.44830', '-80.16190'), ('WOODLAND', None, '33.03780', '-79.90670'), ('WOODLAND LANDING', None, '33.04560', '-79.91580')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'VAC145': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BALLSVILLE', None, '37.49830', '-78.06780'), ('BELONA', None, '37.52210', '-78.01200'), ('CLAYVILLE', None, '37.45970', '-77.81720'), ('FINE CREEK MILLS', None, '37.59780', '-77.81930'), ('FLAT ROCK', None, '37.52200', '-77.82200'), ('GENITO', None, '37.46190', '-77.85940'), ('GILES MILL', None, '37.48190', '-77.96780'), ('GOODWINS STORE', None, '37.53750', '-77.88370'), ('HATCHERS', None, '37.58040', '-78.05120'), ('HOLLY HILLS', None, '37.50420', '-77.75840'), ('JEFFERSON', 27422, '37.61320', '-77.90500'), ('LAKE POWHATAN', None, '37.57620', '-77.99310'), ('MACON', None, '37.52170', '-77.96220'), ('MICHAUX', None, '37.64860', '-77.90190'), ('PILKINTON', None, '37.43000', '-77.84170'), ('POWHATAN', None, '37.54450', '-77.92020'), ('PROVOST', None, '37.60550', '-77.98280'), ('SUBLETTS', None, '37.58560', '-77.74940'), ('TAMWORTH', None, '37.64810', '-78.08110'), ('TOBACCOVILLE', None, '37.48250', '-78.09610'), ('TRENHOLM', None, '37.59500', '-78.06200'), ('WORSHAMS', None, '37.53530', '-77.89420')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'MOC149': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALTON', 668, '36.69410', '-91.39910'), ('COUCH', None, '36.60610', '-91.38290'), ('GREER', None, '36.76930', '-91.35330'), ('KOSHKONONG', 205, '36.59580', '-91.64550'), ('MYRTLE', None, '36.50860', '-91.26680'), ('ROVER', None, '36.72160', '-91.62070'), ('THAYER', 2201, '36.52430', '-91.53800'), ('THOMASVILLE', None, '36.78910', '-91.53180'), ('WILDERNESS', None, '36.71940', '-91.19190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'INC167': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('NORTH TERRE HAUTE', 4606, '39.53990', '-87.36020'), ('RILEY', 160, '39.38980', '-87.30040'), ('SEELYVILLE', 1182, '39.49400', '-87.26700'), ('TERRE HAUTE', 59614, '39.47040', '-87.38350'), ('WEST TERRE HAUTE', 2330, '39.46430', '-87.44900')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'MOC143': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CANALOU', 348, '36.75430', '-89.68750'), ('CATRON', 68, '36.61240', '-89.70630'), ('GIDEON', 1113, '36.45080', '-89.91060'), ('HOWARDVILLE', 342, '36.56830', '-89.59730'), ('LILBOURN', 1303, '36.59080', '-89.61370'), ('MARSTON', 610, '36.51760', '-89.60870'), ('MATTHEWS', 605, '36.75930', '-89.58360'), ('MOREHOUSE', 1015, '36.84600', '-89.69090'), ('NEW MADRID', 3334, '36.58930', '-89.54860'), ('NORTH LILBOURN', 95, '36.60170', '-89.62190'), ('PARMA', 852, '36.61090', '-89.81820'), ('PORTAGEVILLE', 3295, '36.42870', '-89.69980'), ('RISCO', 392, '36.55150', '-89.81870'), ('TALLAPOOSA', 204, '36.50750', '-89.81870')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOC141': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BARNETT', 207, '38.37820', '-92.67430'), ('FLORENCE', None, '38.58880', '-92.97880'), ('GRAVOIS MILLS', 208, '38.30830', '-92.82520'), ('LAURIE', 663, '38.20360', '-92.82910'), ('ROCKY MOUNT', None, '38.27210', '-92.71930'), ('STOVER', 968, '38.44080', '-92.99160'), ('SYRACUSE', 172, '38.66990', '-92.87290'), ('VERSAILLES', 2565, '38.43130', '-92.84080')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOC147': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRADDYVILLE', 176, '40.57790', '-95.04440'), ('ARKOE', 58, '40.25880', '-94.82960'), ('BARNARD', 257, '40.17570', '-94.82260'), ('BURLINGTON JUNCTION', 632, '40.44720', '-95.06740'), ('CLEARMONT', 191, '40.50740', '-95.03290'), ('CLYDE', 74, '40.26620', '-94.67020'), ('CONCEPTION JUNCTION', 202, '40.26830', '-94.69070'), ('ELMO', 166, '40.51880', '-95.11720'), ('GRAHAM', 191, '40.20150', '-95.03980'), ('GUILFORD', 87, '40.16890', '-94.73610'), ('HOPKINS', 579, '40.55110', '-94.81620'), ('MARYVILLE', 10581, '40.34330', '-94.87100'), ('PARNELL', 197, '40.44010', '-94.62180'), ('PICKERING', 154, '40.45060', '-94.84170'), ('QUITMAN', 46, '40.37310', '-95.07670'), ('RAVENWOOD', 448, '40.35260', '-94.67120'), ('SKIDMORE', 342, '40.28750', '-95.07870')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOC145': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CLIFF VILLAGE', 33, '37.02530', '-94.51690'), ('DENNIS ACRES', 68, '37.04580', '-94.50410'), ('DIAMOND', 807, '36.99520', '-94.31580'), ('FAIRVIEW', 395, '36.81740', '-94.08800'), ('GRANBY', 2121, '36.91910', '-94.25500'), ('I-44 NEAR MILE MARKER 0', None, '36.99500', '-94.62000'), ('I-44 NEAR MILE MARKER 10', None, '37.04400', '-94.46500'), ('LEAWOOD', 904, '37.03340', '-94.49050'), ('NEOSHO', 10505, '36.86880', '-94.36770'), ('NEWTONIA', 231, '36.87660', '-94.18520'), ('RACINE', None, '36.89600', '-94.52710'), ('REDINGS MILL', 159, '37.01970', '-94.51650'), ('RITCHEY', 76, '36.94410', '-94.18460'), ('SAGINAW', 276, '37.02380', '-94.46790'), ('SENECA', 2135, '36.84130', '-94.61080'), ('SHOAL CREEK DRIVE', 346, '37.03750', '-94.52320'), ('SHOAL CREEK ESTATES', 51, '37.01870', '-94.49410'), ('SILVER CREEK', 608, '37.03880', '-94.47190'), ('STARK CITY', 156, '36.86220', '-94.18550'), ('STELLA', 178, '36.76130', '-94.19100'), ('WENTWORTH', 141, '36.99330', '-94.07410')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MNC161': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ELYSIAN', 486, '44.20000', '-93.67710'), ('JANESVILLE', 2109, '44.11670', '-93.70780'), ('NEW RICHLAND', 1197, '43.89340', '-93.49300'), ('WALDORF', 242, '43.93260', '-93.69670'), ('WASECA', 8493, '44.08110', '-93.50190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'NEC175': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARCADIA', 359, '41.42470', '-99.12560'), ('ELYRIA', 54, '41.67970', '-99.00530'), ('FORT HARTSUFF STATE PARK', None, '41.73000', '-99.01000'), ('NORTH LOUP', 339, '41.49490', '-98.77190'), ('ORD', 2269, '41.60250', '-98.92960')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'MNC163': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AFTON', 2839, '44.90320', '-92.81880'), ('BAYPORT', 3162, '45.01780', '-92.78020'), ('COTTAGE GROVE', 30582, '44.81750', '-92.92700'), ('FOREST LAKE', 6798, '45.27580', '-92.98580'), ('HUGO', 6363, '45.15910', '-92.96300'), ('LAKE ELMO', 6863, '44.99540', '-92.90770'), ('LAKELAND', 1917, '44.95050', '-92.77060'), ('MAHTOMEDI', 7563, '45.05610', '-92.96080'), ('MARINE ON ST CROIX', None, '45.19800', '-92.77320'), ('NEWPORT', 3715, '44.87450', '-92.99860'), ('OAKDALE', 26653, '44.98870', '-92.96630'), ('ST PAUL PARK', None, '44.83940', '-92.99500'), ('STILLWATER', 15143, '45.05650', '-92.82220'), ('WOODBURY', 46463, '44.90550', '-92.92090')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'NEC177': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARLINGTON', 1197, '41.45420', '-96.35550'), ('BLAIR', 7512, '41.54420', '-96.13670'), ('FORT CALHOUN', 856, '41.45510', '-96.02560'), ('HERMAN', 310, '41.67310', '-96.21660'), ('KENNARD', 371, '41.47430', '-96.20340'), ('WASHINGTON', 126, '41.39830', '-96.20870')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'OHC169': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('APPLE CREEK', 999, '40.74830', '-81.83350'), ('BURBANK', 279, '40.98760', '-81.99460'), ('CONGRESS', 192, '40.92630', '-82.05530'), ('CRESTON', 2161, '40.97940', '-81.90040'), ('DALTON', 1605, '40.79920', '-81.69720'), ('DOYLESTOWN', 2799, '40.97030', '-81.69670'), ('FREDERICKSBURG', 487, '40.67740', '-81.86970'), ('MARSHALLVILLE', 826, '40.90040', '-81.73330'), ('MOUNT EATON', 246, '40.69500', '-81.70280'), ('ORRVILLE', 8551, '40.84680', '-81.77120'), ('RITTMAN', 6314, '40.97100', '-81.78330'), ('SHREVE', 1582, '40.68220', '-82.02230'), ('SMITHVILLE', 1333, '40.86280', '-81.85980'), ('WEST SALEM', 1501, '40.96960', '-82.10780'), ('WOOSTER', 24811, '40.81850', '-81.93290')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'NEC171': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('HALSEY', 59, '41.90280', '-100.26910'), ('SENECA', 51, '42.04270', '-100.83130'), ('THEDFORD', 211, '41.97880', '-100.57450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'MNC167': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BRECKENRIDGE', 3559, '46.26360', '-96.58780'), ('BRUSHVALE', None, '46.36940', '-96.64310'), ('CAMPBELL', 241, '46.09790', '-96.40540'), ('DORAN', 59, '46.18520', '-96.48560'), ('EVERDELL', None, '46.26750', '-96.40780'), ('FOXHOME', 143, '46.27670', '-96.31020'), ('KENT', 120, '46.43960', '-96.68440'), ('LAWNDALE', None, '46.55690', '-96.36000'), ('MCCAULEYVILLE', None, '46.44170', '-96.70750'), ('NASHUA', 69, '46.03600', '-96.30470'), ('ROTHSAY', 497, '46.47470', '-96.28670'), ('TENNEY', 6, '46.04430', '-96.45400'), ('WOLVERTON', 122, '46.56470', '-96.73550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGF'}, -'NEC173': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('MACY', 956, '42.11260', '-96.36300'), ('PENDER', 1148, '42.11000', '-96.71060'), ('ROSALIE', 194, '42.05690', '-96.51270'), ('THURSTON', 125, '42.17650', '-96.69990'), ('WALTHILL', 909, '42.14870', '-96.49280'), ('WINNEBAGO', 768, '42.23720', '-96.47290')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'MNC169': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALTURA', 417, '44.06980', '-91.93890'), ('BEAVER', None, '44.14802', '-92.03374'), ('BETHANY', None, '44.02923', '-91.91861'), ('DAKOTA', 329, '43.91180', '-91.35860'), ('ELBA', 214, '44.08710', '-92.01730'), ('FREMONT', None, '43.91409', '-91.90033'), ('GOODVIEW', 3373, '44.06720', '-91.71070'), ('HART', None, '43.88119', '-91.73585'), ('LEWISTON', 1484, '43.98490', '-91.86790'), ('MINNESOTA CITY', 235, '44.09200', '-91.75010'), ('NEW HARTFORD', None, '43.88119', '-91.48365'), ('NODINE', None, '43.89764', '-91.45075'), ('PICKWICK', None, '43.98171', '-91.60061'), ('RIDGEWAY', None, '43.91409', '-91.56772'), ('ROLLINGSTONE', 697, '44.09990', '-91.81910'), ('SARATOGA', None, '43.88119', '-92.06847'), ('ST. CHARLES', 3295, '43.96960', '-92.06410'), ('STOCKTON', 682, '44.02800', '-91.77230'), ('TROY', None, '43.86109', '-92.06664'), ('UTICA', 230, '43.97640', '-91.95070'), ('WHITMAN', None, '44.14802', '-91.79982'), ('WILSON', None, '43.94881', '-91.69930'), ('WINONA', 27069, '44.04780', '-91.65710'), ('WITOKA', None, '43.93237', '-91.61706'), ('WYATTVILLE', None, '43.93237', '-91.79982')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'OHC167': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELPRE', 6660, '39.27830', '-81.58860'), ('BEVERLY', 1282, '39.54970', '-81.63630'), ('DEVOLA', 2771, '39.47330', '-81.46960'), ('LOWELL', 628, '39.52910', '-81.50750'), ('LOWER SALEM', 109, '39.56350', '-81.39460'), ('MACKSBURG', 202, '39.63120', '-81.45690'), ('MARIETTA', 14515, '39.42140', '-81.44690'), ('MATAMORAS', 957, '39.51860', '-81.07050')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHC161': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CONVOY', 1110, '40.91720', '-84.70620'), ('DELPHOS', 6944, '40.84440', '-84.33940'), ('ELGIN', 50, '40.74170', '-84.47610'), ('MIDDLE POINT', 593, '40.85600', '-84.44680'), ('OHIO CITY', 784, '40.77010', '-84.61610'), ('VAN WERT', 10690, '40.86460', '-84.58170'), ('VENEDOCIA', 160, '40.78540', '-84.45550'), ('WILLSHIRE', 463, '40.74660', '-84.79210'), ('WREN', 199, '40.80030', '-84.77410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'NEC179': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CARROLL', 238, '42.27630', '-97.19110'), ('HOSKINS', 283, '42.11370', '-97.30460'), ('SHOLES', 24, '42.33500', '-97.29400'), ('WAYNE', 5583, '42.23710', '-97.01670'), ('WINSIDE', 468, '42.17800', '-97.17410')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'OHC163': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('HAMDEN', 871, '39.16000', '-82.52540'), ('LAKE HOPE STATE PARK', None, '39.33330', '-82.35160'), ('MCARTHUR', 1888, '39.24700', '-82.47840'), ('WILKESVILLE', 151, '39.07650', '-82.32660'), ('ZALESKI', 375, '39.28060', '-82.39630')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'VAC650': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BUCKROE BEACH', None, '37.04280', '-76.29360'), ('FORT MONROE', None, '37.00580', '-76.30720'), ('FOX HILL', None, '37.08080', '-76.29000'), ('GRAND VIEW', None, '37.07840', '-76.27730'), ('HALLWOOD', 290, '37.06600', '-76.29640'), ('HAMPTON', 146437, '37.04980', '-76.29500'), ('LANGLEY AFB', None, '37.08770', '-76.36700'), ('LANGLEY VIEW', None, '37.07000', '-76.36460'), ('NORTHAMPTON', None, '37.04500', '-76.42420'), ('PHOEBUS', None, '37.02140', '-76.31830'), ('RALEIGH TERRACE', None, '37.00420', '-76.36810')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'AZC009': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BYLAS', None, '33.13060', '-110.11010'), ('PIMA', 1989, '32.88810', '-109.83330'), ('SAFFORD', 9232, '32.83120', '-109.69810'), ('THATCHER', 4022, '32.83840', '-109.75900')], 'partOfState': 'SOUTHEAST', 'wfo': 'TWC'}, -'AZC007': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CANYON DAY', 1092, '33.78140', '-110.02620'), ('CARRIZO', None, '33.99385', '-110.28519'), ('CLAYPOOL', 1794, '33.43300', '-110.83300'), ('GLOBE', 7486, '33.38280', '-110.75430'), ('HAYDEN', 892, '32.99990', '-110.78100'), ('JAKES CORNER', None, '34.01008', '-111.31897'), ('KOHLS RANCH', None, '34.32365', '-111.10196'), ('MIAMI', 1936, '33.39430', '-110.87210'), ('PAYSON', 13620, '34.24260', '-111.32700'), ('PERIDOT', 1266, '33.30270', '-110.45430'), ('PINE', 1931, '34.38660', '-111.45822'), ('PUNKIN CENTER', None, '33.85000', '-111.33000'), ('ROOSEVELT', None, '33.67000', '-111.13000'), ('RYE', None, '34.10890', '-111.35345'), ('SAN CARLOS', 3716, '33.34860', '-110.46510'), ('STAR VALLEY', None, '34.25473', '-111.25447'), ('STRAWBERRY', 1028, '34.40743', '-111.49093'), ('TONTO VILLAGE', None, '34.31586', '-111.13446'), ('WASHINGTON PARK', None, '34.42242', '-111.27084'), ('WINKELMAN', 443, '32.98900', '-110.76960'), ('YOUNG', 561, '34.10170', '-110.94659')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FGZPSR'}, -'AZC005': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ANGELL', None, '35.19736', '-111.30345'), ('BIG FIVE', None, '36.89192', '-111.44362'), ('BITTER SPRINGS', 547, '36.36522', '-111.65119'), ('BRIGHT ANGEL POINT AT GRA', None, '36.19845', '-112.05262'), ('CAMERON', 978, '35.84830', '-111.43190'), ('CEDAR RIDGE', None, '36.39231', '-111.52428'), ('CLINTS WELL', None, '34.55486', '-111.31176'), ('COSNINO', None, '35.20149', '-111.47713'), ('DESERT VIEW AT GRAND CAYN', None, '36.04295', '-111.82546'), ('DONEY PARK', None, '35.27110', '-111.51195'), ('FLAGSTAFF', 52894, '35.18900', '-111.61980'), ('FOREST LAKES', None, '34.33720', '-110.80430'), ('FORT VALLEY', None, '35.26314', '-111.72799'), ('FRAZIERS WELL', None, '35.78146', '-113.07097'), ('FREDONIA', 1036, '36.96480', '-112.51880'), ('GRAND CANYON VILLAGE', 1460, '36.04640', '-112.15350'), ('GRAY MOUNTAIN', None, '35.74646', '-111.47160'), ('HAPPY JACK', None, '34.74263', '-111.40526'), ('HERMITS REST AT GRAND CAN', None, '36.06220', '-112.21015'), ('HOUSE ROCK', None, '36.73151', '-112.04268'), ('JACOB LAKE', None, '36.71349', '-112.21612'), ('KACHINA VILLAGE', 2664, '35.09700', '-111.69190'), ('KAIBITO', 1607, '36.58900', '-111.11030'), ('LE CHEE', None, '36.85869', '-111.44011'), ('LEES FERRY', None, '36.86729', '-111.58661'), ('LEUPP', 970, '35.28539', '-110.96149'), ('LEUPP', 970, '35.29540', '-111.00060'), ('MARBLE CANYON', None, '36.81655', '-111.63362'), ('METEOR CRATER', None, '35.02704', '-111.02222'), ('MOENAVE', None, '36.13791', '-111.34170'), ('MOENKOPI', 901, '36.11090', '-111.22220'), ('MOUNTAINAIRE', 1014, '35.08323', '-111.66270'), ('MUNDS PARK', 1250, '34.94103', '-111.64153'), ('PAGE', 6809, '36.90430', '-111.45780'), ('PARKS', 1137, '35.26318', '-111.94954'), ('RIMMY JIMS', None, '35.11064', '-111.02943'), ('SOUTH RIM VISITORS CENTER', None, '36.05700', '-112.12810'), ('SUNRISE', None, '35.30049', '-110.98789'), ('SUPAI', 0, '36.22420', '-112.69320'), ('THE GAP', None, '36.30314', '-111.46046'), ('TUBA CITY', 8225, '36.12500', '-111.24250'), ('TUSAYAN', 562, '35.97898', '-112.12295'), ('TWIN ARROWS', None, '35.16090', '-111.26971'), ('TWO GUNS', None, '35.11803', '-111.08982'), ('VALLE', None, '35.65176', '-112.13788'), ('WAHWEEP', None, '36.99362', '-111.49452'), ('WILLIAMS', 2842, '35.26460', '-112.17280'), ('WINONA', None, '35.20190', '-111.40681'), ('WUPATKI NATIONAL MONUMENT', None, '35.52170', '-111.37058')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGZ'}, -'AZC003': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BENSON', 4711, '31.96220', '-110.30310'), ('BISBEE', 6090, '31.40460', '-109.91750'), ('DOUGLAS', 14312, '31.34270', '-109.52820'), ('HUACHUCA CITY', 1751, '31.63210', '-110.34080'), ('PIRTLEVILLE', 1550, '31.36170', '-109.56690'), ('SIERRA VISTA', 37775, '31.56510', '-110.32250'), ('ST. DAVID', 1744, '31.90010', '-110.22940'), ('TOMBSTONE', 1504, '31.71730', '-110.06220'), ('WILLCOX', 3733, '32.25070', '-109.83520')], 'partOfState': 'SOUTHEAST', 'wfo': 'TWC'}, -'AZC001': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ALPINE', None, '33.84650', '-109.13844'), ('CHAMBERS', None, '35.18921', '-109.43312'), ('CHINLE', 5366, '36.15190', '-109.58000'), ('CONCHO', None, '34.47484', '-109.60690'), ('CORNFIELDS', None, '35.65189', '-109.67858'), ('DENNEHOTSO', 734, '36.82150', '-109.88380'), ('EAGAR', 4033, '34.10490', '-109.29210'), ('FORT DEFIANCE', 4061, '35.74370', '-109.06660'), ('GANADO', 1505, '35.70760', '-109.55200'), ('GREER', None, '34.01467', '-109.45689'), ('HOUCK', 1087, '35.28383', '-109.20239'), ('HUNT', None, '34.60929', '-109.63456'), ('KLAGETOH', None, '35.50908', '-109.52475'), ('LUKACHUKAI', 1565, '36.40010', '-109.25690'), ('LUPTON', None, '35.35560', '-109.04829'), ('LYMAN LAKE STATE PARK', None, '34.36050', '-109.38039'), ('MANY FARMS', 1548, '36.35030', '-109.61850'), ('MCNARY', 349, '34.09580', '-109.85050'), ('MEXICAN WATER', None, '36.96808', '-109.63615'), ('NAZLINI', 397, '35.90127', '-109.44868'), ('NUTRIOSO', None, '33.95376', '-109.20684'), ('PETRIFIED FOREST NATIONAL', None, '35.06737', '-109.77985'), ('PINE SPRINGS', None, '35.40633', '-109.28102'), ('RED MESA', 237, '36.96002', '-109.35625'), ('RED ROCK', None, '36.60838', '-109.05427'), ('ROCK POINT', 724, '36.71961', '-109.62629'), ('ROUGH ROCK', 469, '36.40950', '-109.86750'), ('ROUND ROCK', 601, '36.51090', '-109.47181'), ('SALINA', None, '36.02546', '-109.87030'), ('SANDERS', None, '35.21548', '-109.33239'), ('SAWMILL', 612, '35.89170', '-109.15350'), ('SPRINGERVILLE', 1972, '34.13220', '-109.28090'), ('ST. JOHNS', 3269, '34.50990', '-109.37680'), ('ST. MICHAELS', 1295, '35.66170', '-109.09360'), ('STEAMBOAT CANYON', None, '35.74938', '-109.85915'), ('SUNRISE SPRINGS', None, '35.60280', '-109.74242'), ('TEEC NOS POS', 799, '36.92910', '-109.08210'), ('THREE FORKS', None, '33.85438', '-109.31159'), ('TOTACON', None, '36.84980', '-109.42666'), ('TSAILE', 1078, '36.30370', '-109.21470'), ('TWIN FALLS', None, '36.86591', '-109.08827'), ('UPPER WHEATFIELDS', None, '36.22309', '-109.10030'), ('VERNON', None, '34.25466', '-109.69178'), ('WHEATFIELDS', None, '36.23877', '-109.12788'), ('WIDE RUINS', None, '35.42031', '-109.49295'), ('WINDOW ROCK', 3059, '35.67090', '-109.06440')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'TXC099': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COPPERAS COVE', 29592, '31.11870', '-97.90180'), ('EVANT', 393, '31.47580', '-98.14960'), ('FORT GATES', None, '31.40330', '-97.70960'), ('GATESVILLE', 15591, '31.44030', '-97.73400'), ('OGLESBY', 458, '31.41890', '-97.50990'), ('SOUTH MOUNTAIN', 412, '31.43830', '-97.67630')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'OHC099': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AUSTINTOWN', 31627, '41.09160', '-80.73830'), ('BELOIT', 1024, '40.92050', '-81.00050'), ('BOARDMAN', 37215, '41.03220', '-80.66850'), ('CAMPBELL', 9460, '41.07740', '-80.59060'), ('CANFIELD', 7374, '41.02970', '-80.76740'), ('CRAIG BEACH', 1254, '41.11850', '-80.98240'), ('LOWELLVILLE', 1281, '41.04010', '-80.54810'), ('MAPLE RIDGE', 910, '40.91630', '-81.05000'), ('NEW MIDDLETOWN', 1682, '40.96370', '-80.56000'), ('POLAND', 2866, '41.02410', '-80.61410'), ('SEBRING', 4912, '40.92350', '-81.02230'), ('STRUTHERS', 11756, '41.05120', '-80.59310'), ('WASHINGTONVILLE', 789, '40.90020', '-80.76790'), ('YOUNGSTOWN', 82026, '41.09910', '-80.64640')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'MNC019': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARVER', 1266, '44.76040', '-93.62750'), ('CHANHASSEN', 20321, '44.85720', '-93.55780'), ('CHASKA', 17449, '44.82110', '-93.60510'), ('COLOGNE', 1012, '44.77160', '-93.78800'), ('HAMBURG', 538, '44.73160', '-93.96320'), ('MAYER', 554, '44.88420', '-93.88830'), ('NEW GERMANY', 346, '44.88370', '-93.97090'), ('NORWOOD/YOUNG AMERICA', None, '44.78070', '-93.91530'), ('VICTORIA', 4025, '44.86610', '-93.65840'), ('WACONIA', 6814, '44.84790', '-93.79410'), ('WATERTOWN', 3029, '44.96310', '-93.84570')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'OHC091': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELLE CENTER', 807, '40.50910', '-83.74490'), ('BELLEFONTAINE', 13069, '40.36000', '-83.75700'), ('DE GRAFF', 1212, '40.31030', '-83.91470'), ('HUNTSVILLE', 454, '40.44240', '-83.80390'), ('LAKEVIEW', 1074, '40.48780', '-83.92570'), ('QUINCY', 734, '40.29590', '-83.96950'), ('RUSHSYLVANIA', 543, '40.46120', '-83.67110'), ('RUSSELLS POINT', 1619, '40.46800', '-83.89330'), ('VALLEY HI', 244, '40.31610', '-83.67300'), ('WEST LIBERTY', 1813, '40.25380', '-83.75800'), ('WEST MANSFIELD', 700, '40.39960', '-83.54500'), ('ZANESFIELD', 220, '40.33820', '-83.67810')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC093': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMHERST', 11797, '41.40010', '-82.23070'), ('AVON', 11446, '41.45130', '-82.02350'), ('AVON LAKE', 18145, '41.49370', '-82.01590'), ('EATON ESTATES', 1409, '41.30550', '-82.00960'), ('ELYRIA', 55953, '41.37990', '-82.10560'), ('GRAFTON', 2302, '41.28050', '-82.03320'), ('KIPTON', 265, '41.26700', '-82.30480'), ('LAGRANGE', 1815, '41.23880', '-82.12050'), ('LORAIN', 68652, '41.44150', '-82.18340'), ('NORTH RIDGEVILLE', 22338, '41.38800', '-82.01520'), ('OBERLIN', 8195, '41.29040', '-82.21670'), ('ROCHESTER', 190, '41.12480', '-82.30630'), ('SHEFFIELD', 2949, '41.45690', '-82.09460'), ('SHEFFIELD LAKE', 9371, '41.48880', '-82.09790'), ('SOUTH AMHERST', 1863, '41.35390', '-82.23820'), ('VERMILION', 10927, '41.41200', '-82.31820'), ('WELLINGTON', 4511, '41.16460', '-82.22360')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHC095': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BERKEY', 265, '41.71440', '-83.83350'), ('HARBOR VIEW', 99, '41.69260', '-83.44460'), ('HOLLAND', 1306, '41.62030', '-83.70950'), ('MAUMEE', 15237, '41.57420', '-83.65340'), ('OREGON', 19355, '41.66690', '-83.41940'), ('OTTAWA HILLS', 4564, '41.66750', '-83.64500'), ('SYLVANIA', 18670, '41.71460', '-83.70600'), ('TOLEDO', 313619, '41.66390', '-83.58160'), ('WATERVILLE', 4828, '41.49800', '-83.73330'), ('WHITEHOUSE', 2733, '41.51890', '-83.80260')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHC097': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHOCTAW LAKE', 1562, '39.96010', '-83.48510'), ('JEFFERSON', 3572, '39.94120', '-83.29440'), ('LONDON', 8771, '39.88920', '-83.44090'), ('MIDWAY', 274, '39.73270', '-83.47630'), ('MOUNT STERLING', 1865, '39.71950', '-83.26810'), ('PLAIN CITY', 2832, '40.10680', '-83.27000'), ('SOUTH SOLON', 405, '39.73710', '-83.61350')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'PAC125': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALLENPORT', 549, '40.09090', '-79.85690'), ('AMITY', None, '40.05000', '-80.20000'), ('AVELLA', None, '40.28000', '-80.47000'), ('BAIDLAND', 1576, '40.18910', '-79.95510'), ('BEALLSVILLE', 511, '40.05860', '-80.03310'), ('BENTLEYVILLE', 2502, '40.11780', '-80.00360'), ('BURGETTSTOWN', 1576, '40.38120', '-80.39220'), ('CALIFORNIA', 5274, '40.06620', '-79.91080'), ('CANONSBURG', 8607, '40.26380', '-80.18680'), ('CECIL-BISHOP', 2585, '40.31640', '-80.19100'), ('CENTERVILLE', 3390, '40.03070', '-79.95930'), ('CHARLEROI', 4871, '40.13920', '-79.90050'), ('CLAYSVILLE', 724, '40.12060', '-80.41320'), ('COKEBURG', 705, '40.09840', '-80.06630'), ('DEEMSTON', 809, '40.03210', '-80.02670'), ('DONORA', 5653, '40.17830', '-79.86340'), ('EAST WASHINGTON', 1930, '40.17370', '-80.23290'), ('EIGHTY FOUR', None, '40.18000', '-80.13000'), ('ELCO', 362, '40.08500', '-79.88310'), ('ELLSWORTH', 1083, '40.10800', '-80.02210'), ('FINLEYVILLE', 459, '40.25290', '-80.00220'), ('FREDERICKTOWN-MILLSBORO', 1094, '39.99740', '-80.00510'), ('GASTONVILLE', 3002, '40.26440', '-80.00730'), ('GREEN HILLS', 18, '40.11560', '-80.30880'), ('HICKORY', None, '40.30000', '-80.32000'), ('HOUSTON', 1314, '40.25000', '-80.21180'), ('LONG BRANCH', 539, '40.10270', '-79.87890'), ('MARIANNA', 626, '40.01120', '-80.11440'), ('MCDONALD', 2281, '40.37020', '-80.23250'), ('MCGOVERN', 2538, '40.24030', '-80.22910'), ('MCMURRAY', 4726, '40.28080', '-80.08830'), ('MONONGAHELA', 4761, '40.19830', '-79.92260'), ('NEW EAGLE', 2262, '40.20620', '-79.95450'), ('NORTH CHARLEROI', 1409, '40.15040', '-79.90840'), ('ROSCOE', 848, '40.07760', '-79.86490'), ('SCENERY HILL', None, '40.08000', '-80.07000'), ('TAYLORSTOWN', None, '40.17000', '-80.38000'), ('THOMPSONVILLE', 3592, '40.28130', '-80.11990'), ('TWILIGHT', 241, '40.11430', '-79.89050'), ('WASHINGTON', 15268, '40.17430', '-80.24740'), ('WEST ALEXANDER', 320, '40.10410', '-80.50800'), ('WEST BROWNSVILLE', 1075, '40.03130', '-79.89200'), ('WEST FINLEY', None, '40.00000', '-80.47000'), ('WEST MIDDLETOWN', 144, '40.24510', '-80.42550'), ('WICKERHAM MANOR-FISHER', 1783, '40.17540', '-79.90450'), ('WOLFDALE', 2873, '40.19870', '-80.29970')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'PAC127': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('HANKINS', None, '41.81670', '-75.10000'), ('ABRAHAMSVILLE', None, '41.76670', '-75.11670'), ('ALDENVILLE', None, '41.65000', '-75.36670'), ('ANGELS', None, '41.28330', '-75.36670'), ('ARLINGTON', None, '41.41670', '-75.33330'), ('BEACH LAKE', None, '41.60000', '-75.15000'), ('BEECH GROVE', None, '41.60000', '-75.30000'), ('BETHANY', 292, '41.61420', '-75.28890'), ('BROWNDALE', None, '41.66670', '-75.45000'), ('CALKINS', None, '41.65000', '-75.15000'), ('DAMASCUS', None, '41.70000', '-75.06670'), ('EQUINUNK', None, '41.85000', '-75.21670'), ('GOULDSBORO', None, '41.25000', '-75.46670'), ('HAWLEY', 1303, '41.47660', '-75.17800'), ('HEADLEY', None, '41.51670', '-75.28330'), ('HIAWATHA', None, '41.91670', '-75.36670'), ('HONESDALE', 4874, '41.57720', '-75.25360'), ('LA ANNA', None, '41.25000', '-75.35000'), ('LAKE ARIEL', None, '41.45000', '-75.38330'), ('LAKE COMO', None, '41.85000', '-75.33330'), ('LAKEVILLE', None, '41.43330', '-75.28330'), ('LAKEWOOD', None, '41.85000', '-75.36670'), ('LAURELLA', None, '41.58330', '-75.21670'), ('LOOKOUT', None, '41.78330', '-75.16670'), ('MILANVILLE', None, '41.66670', '-75.06670'), ('NEWFOUNDLAND', None, '41.30000', '-75.33330'), ('ORSON', None, '41.81670', '-75.45000'), ('PLEASANT MOUNT', None, '41.73330', '-75.41670'), ('PRESTON PARK', None, '41.88330', '-75.35000'), ('PROMPTON', 243, '41.58980', '-75.32950'), ('RILEYVILLE', None, '41.71670', '-75.21670'), ('RUTLEDGEDALE', None, '41.71670', '-75.18330'), ('SCOTT CENTER', None, '41.93330', '-75.40000'), ('SEELYVILLE', None, '41.56670', '-75.26670'), ('SHEHAWKEN', None, '41.88330', '-75.38330'), ('SHERMAN', None, '41.98330', '-75.43330'), ('SOUTH CANAAN', None, '41.50000', '-75.41670'), ('STALKER', None, '41.83330', '-75.11670'), ('STARLIGHT', None, '41.90000', '-75.33330'), ('STARRUCA', None, '41.90280', '-75.45440'), ('STERLING', None, '41.33330', '-75.40000'), ('TRESSLARVILLE', None, '41.45000', '-75.40000'), ('WAYMART', 1429, '41.58720', '-75.40930'), ('WINTERDALE', None, '41.95000', '-75.35000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'TXC097': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CALLISBURG', 365, '33.69980', '-97.01640'), ('GAINESVILLE', 15538, '33.63730', '-97.15060'), ('LINDSAY', 394, '33.63620', '-97.21980'), ('MUENSTER', 1556, '33.65190', '-97.37670'), ('VALLEY VIEW', 737, '33.48540', '-97.16080')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'PAC121': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BARKEYVILLE', 237, '41.20020', '-79.98310'), ('CLINTONVILLE', 528, '41.20180', '-79.87610'), ('COOPERSTOWN', 460, '41.49960', '-79.87400'), ('CRANBERRY', None, '41.35000', '-79.72000'), ('EMLENTON', 784, '41.18070', '-79.70830'), ('FRANKLIN', 7212, '41.39200', '-79.83880'), ('HASSON HEIGHTS', 1495, '41.44880', '-79.67710'), ('KENNERDELL', None, '41.27000', '-79.85000'), ('OIL CITY', 11504, '41.42660', '-79.70430'), ('PLEASANTVILLE', 850, '41.59360', '-79.57930'), ('POLK', 1031, '41.36920', '-79.93010'), ('ROUSEVILLE', 472, '41.47100', '-79.68610'), ('SENECA', 966, '41.37570', '-79.70550'), ('SUGARCREEK', 5331, '41.43950', '-79.81150'), ('UTICA', 211, '41.43700', '-79.95760'), ('WESLEY', None, '41.23000', '-79.97000'), ('WOODLAND HEIGHTS', 1402, '41.40930', '-79.70180')], 'partOfState': 'NORTHWEST', 'wfo': 'PBZ'}, -'PAC123': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEAR LAKE', 193, '41.99310', '-79.50100'), ('CHAPMAN SP', None, '41.77000', '-79.18000'), ('CLARENDON', 564, '41.78070', '-79.09640'), ('COLUMBUS', None, '41.95000', '-79.58000'), ('ENTERPRISE', None, '41.63000', '-79.59000'), ('GARLAND', None, '41.80000', '-79.43000'), ('GERMANY', None, '41.94000', '-79.01000'), ('GRAND VALLEY', None, '41.72000', '-79.54000'), ('KINZUA DAM', None, '41.84000', '-79.00000'), ('LOTTSVILLE', None, '41.93000', '-79.44000'), ('RUSSELL', None, '41.92000', '-79.14000'), ('SHEFFIELD', 1268, '41.69630', '-79.02830'), ('SPRING CREEK', None, '41.88000', '-79.51000'), ('SUGAR GROVE', 613, '41.98340', '-79.34000'), ('TIDIOUTE', 792, '41.68360', '-79.40210'), ('WARREN', 10259, '41.84370', '-79.14400'), ('YOUNGSVILLE', 1834, '41.85190', '-79.31570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'MEC013': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('APPLETON', None, '44.28920', '-69.25140'), ('CAMDEN', 3934, '44.20970', '-69.06530'), ('CRIEHAVEN', None, '43.83390', '-68.88970'), ('CUSHING', None, '44.01920', '-69.24030'), ('FRIENDSHIP', None, '43.98360', '-69.33440'), ('HOPE', None, '44.26500', '-69.15940'), ('MATINICUS', None, '43.86500', '-68.88750'), ('OWLS HEAD', None, '44.08220', '-69.05780'), ('ROCKLAND', 7609, '44.10360', '-69.10940'), ('ROCKPORT', None, '44.18440', '-69.07670'), ('SAINT GEORGE', None, '44.01640', '-69.19940'), ('SOUTH THOMASTON', None, '44.05140', '-69.12830'), ('THOMASTON', 2714, '44.07890', '-69.18220'), ('UNION', None, '44.21140', '-69.27470'), ('VINALHAVEN', None, '44.04810', '-68.83220'), ('WARREN', None, '44.12030', '-69.24060'), ('WASHINGTON', None, '44.27360', '-69.36780')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'PAC129': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ADAMSBURG', 221, '40.31040', '-79.65470'), ('ARNOLD', 5667, '40.57890', '-79.76490'), ('ARONA', 407, '40.26820', '-79.65750'), ('AVONMORE', 820, '40.52680', '-79.47000'), ('CALUMET-NORVELT', 1682, '40.20730', '-79.49310'), ('CHAMPION', None, '40.08000', '-79.37000'), ('DELMONT', 2497, '40.41390', '-79.57340'), ('DERRY', 2991, '40.33330', '-79.30170'), ('DONEGAL', 165, '40.11280', '-79.38250'), ('EXPORT', 895, '40.41870', '-79.62500'), ('GREENSBURG', 15889, '40.31090', '-79.54440'), ('HUNKER', 329, '40.20400', '-79.61530'), ('IRWIN', 4366, '40.32590', '-79.69960'), ('JEANNETTE', 10654, '40.32720', '-79.61410'), ('LATROBE', 8994, '40.31210', '-79.38270'), ('LAUREL MOUNTAIN', 185, '40.21130', '-79.18480'), ('LAWSON HEIGHTS', 2339, '40.29200', '-79.38830'), ('LIGONIER', 1695, '40.24440', '-79.23730'), ('LOWER BURRELL', 12608, '40.58240', '-79.71300'), ('MADISON', 510, '40.24660', '-79.67290'), ('MANOR', 2796, '40.34650', '-79.67080'), ('MCCHESNEYTOWN-LOYALHANNA', 3415, '40.31280', '-79.35600'), ('MONESSEN', 8669, '40.15220', '-79.88220'), ('MOUNT PLEASANT', 4728, '40.15040', '-79.54410'), ('MUNICIPALITY OF MURRYSVIL', None, '40.44150', '-79.65590'), ('NEW ALEXANDRIA', 595, '40.39350', '-79.41840'), ('NEW FLORENCE', 784, '40.37910', '-79.07500'), ('NEW KENSINGTON', 14701, '40.56990', '-79.75080'), ('NEW STANTON', 1906, '40.22170', '-79.60900'), ('NORTH BELLE VERNON', 2107, '40.13200', '-79.86510'), ('NORTH IRWIN', 879, '40.33890', '-79.71120'), ('NORTH WASHINGTON', None, '40.53000', '-79.60000'), ('OKLAHOMA', 915, '40.58090', '-79.57470'), ('PENN', 460, '40.32880', '-79.64170'), ('SCOTTDALE', 4772, '40.10280', '-79.58990'), ('SEWARD', 484, '40.41250', '-79.02170'), ('SMITHTON', 444, '40.15330', '-79.74170'), ('SOUTH GREENSBURG', 2280, '40.27690', '-79.54790'), ('SOUTHWEST GREENSBURG', 2398, '40.29200', '-79.54780'), ('SUTERSVILLE', 636, '40.23570', '-79.80260'), ('TRAFFORD', 3236, '40.38420', '-79.75710'), ('VANDERGRIFT', 5455, '40.59950', '-79.57440'), ('WEST LEECHBURG', 1290, '40.63210', '-79.61740'), ('WEST NEWTON', 3083, '40.20840', '-79.76960'), ('YOUNGSTOWN', 400, '40.28090', '-79.36580'), ('YOUNGWOOD', 4138, '40.24370', '-79.58110')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'NHC013': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALLENSTOWN', None, '43.15780', '-71.40610'), ('ANDOVER', None, '43.43690', '-71.82390'), ('BOSCAWEN', None, '43.31500', '-71.62140'), ('BOW', None, '43.13190', '-71.54970'), ('BRADFORD', None, '43.27000', '-71.96060'), ('CANTERBURY', None, '43.33690', '-71.56580'), ('CHICHESTER', None, '43.24920', '-71.40030'), ('CONCORD', 40687, '43.20810', '-71.53810'), ('CONTOOCOOK', 1444, '43.22350', '-71.71510'), ('DANBURY', None, '43.52560', '-71.86220'), ('DUNBARTON', None, '43.10250', '-71.61690'), ('EPSOM', None, '43.22280', '-71.33250'), ('FRANKLIN', 8405, '43.44420', '-71.64780'), ('HENNIKER', 1627, '43.17970', '-71.82280'), ('HILL', None, '43.52420', '-71.70140'), ('HOOKSETT', 3609, '43.09670', '-71.46560'), ('HOPKINTON', None, '43.19140', '-71.67580'), ('LACONIA', 16411, '43.24440', '-71.47080'), ('LOUDON', None, '43.28560', '-71.46780'), ('NEW LONDON', None, '43.41390', '-71.98560'), ('NEWBURY', None, '43.32140', '-72.03640'), ('NORTHFIELD', None, '43.43310', '-71.59280'), ('PEMBROKE', None, '43.14670', '-71.45810'), ('PITTSFIELD', 1669, '43.30580', '-71.32470'), ('SALISBURY', None, '43.38000', '-71.71750'), ('SOUTH HOOKSETT', 5282, '43.03490', '-71.42260'), ('SUNCOOK', 5362, '43.13870', '-71.45210'), ('SUTTON', None, '43.33420', '-71.95190'), ('WARNER', None, '43.28060', '-71.81720'), ('WEBSTER', None, '43.32890', '-71.71830'), ('WILMOT', None, '43.45170', '-71.91420')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'NHC011': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('AMHERST', None, '42.86667', '-71.61667'), ('ANTRIM', 1389, '43.03170', '-71.94580'), ('BEDFORD', None, '42.95000', '-71.50000'), ('BENNINGTON', None, '43.00000', '-71.93330'), ('BROOKLINE', None, '42.73333', '-71.66667'), ('DEERING', None, '43.06667', '-71.86667'), ('FRANCESTOWN', None, '42.98333', '-71.80000'), ('GOFFSTOWN', None, '43.01667', '-71.60000'), ('GREENFIELD', None, '42.95000', '-71.85000'), ('GREENVILLE', 1131, '42.76960', '-71.79980'), ('HANCOCK', None, '42.96667', '-71.98333'), ('HILLSBOROUGH', 1842, '43.11430', '-71.89980'), ('HOLLIS', None, '42.73333', '-71.58333'), ('HUDSON', 7814, '42.76380', '-71.43210'), ('LITCHFIELD', None, '42.83333', '-71.46667'), ('LYNDEBOROUGH', None, '42.90000', '-71.75000'), ('MANCHESTER', 107006, '42.98360', '-71.44490'), ('MASON', None, '42.75000', '-71.75000'), ('MERRIMACK', None, '42.86667', '-71.48333'), ('MILFORD', 8293, '42.83400', '-71.66180'), ('MONT VERNON', None, '42.90000', '-71.66667'), ('NASHUA', 86605, '42.74860', '-71.49180'), ('NEW BOSTON', None, '42.96667', '-71.68333'), ('NEW IPSWICH', None, '42.75000', '-71.85000'), ('PELHAM', None, '42.73333', '-71.31667'), ('PETERBOROUGH', 2944, '42.87660', '-71.96230'), ('SHARON', None, '42.81667', '-71.90000'), ('TEMPLE', None, '42.81667', '-71.83333'), ('WEARE', None, '43.10000', '-71.73333'), ('WILTON', 1236, '42.84690', '-71.73680'), ('WINDSOR', None, '43.06667', '-71.96667')], 'partOfState': 'SOUTHERN', 'wfo': 'BOX'}, -'NHC017': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('BARRINGTON', None, '43.22280', '-71.04750'), ('DOVER', 26884, '43.19780', '-70.87420'), ('DURHAM', 9024, '43.13390', '-70.92690'), ('FARMINGTON', 3468, '43.38970', '-71.06560'), ('LEE', None, '43.12310', '-71.01190'), ('MADBURY', None, '43.16920', '-70.92440'), ('MIDDLETON', None, '43.47610', '-71.07000'), ('MILTON', None, '43.40970', '-70.98890'), ('NEW DURHAM', None, '43.43670', '-71.17280'), ('ROCHESTER', 28461, '43.30440', '-70.97610'), ('ROLLINSFORD', None, '43.23610', '-70.82080'), ('STRAFFORD', None, '43.32690', '-71.18470')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'NHC015': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ATKINSON', None, '42.83830', '-71.14750'), ('AUBURN', None, '43.00440', '-71.34890'), ('BRENTWOOD', None, '42.97860', '-71.07330'), ('CANDIA', None, '43.07780', '-71.27720'), ('CHESTER', None, '42.95670', '-71.25780'), ('DANVILLE', None, '42.91250', '-71.12500'), ('DEERFIELD', None, '43.14610', '-71.21690'), ('DERRY', 22661, '42.88060', '-71.32780'), ('EAST KINGSTON', None, '42.92560', '-71.01720'), ('EPPING', 1673, '43.03330', '-71.07470'), ('EXETER', 9759, '42.98140', '-70.94830'), ('FREMONT', None, '42.99080', '-71.14310'), ('GREENLAND', None, '43.03610', '-70.83330'), ('HAMPSTEAD', None, '42.87440', '-71.18170'), ('HAMPTON', 9126, '42.93750', '-70.83940'), ('HAMPTON FALLS', None, '42.91610', '-70.86420'), ('KENSINGTON', None, '42.92690', '-70.94440'), ('KINGSTON', None, '42.93640', '-71.05390'), ('LONDONDERRY', 11417, '42.86500', '-71.37440'), ('NEWFIELDS', None, '43.03690', '-70.93890'), ('NEWINGTON', None, '43.10000', '-70.83420'), ('NEWMARKET', 5124, '43.08280', '-70.93560'), ('NEWTON', None, '42.86940', '-71.03500'), ('NORTH HAMPTON', None, '42.97250', '-70.83030'), ('NORTHWOOD', None, '43.19420', '-71.15140'), ('NOTTINGHAM', None, '43.11440', '-71.10030'), ('PLAISTOW', None, '42.83640', '-71.09530'), ('PORTSMOUTH', 20784, '43.07170', '-70.76310'), ('RAYMOND', 2839, '43.03610', '-71.18390'), ('RYE', None, '43.01330', '-70.77140'), ('SALEM', None, '42.78830', '-71.20140'), ('SANDOWN', None, '42.92860', '-71.18750'), ('SEABROOK', None, '42.89470', '-70.87170'), ('SOUTH HAMPTON', None, '42.88080', '-70.96310'), ('STRATHAM', None, '43.02390', '-70.91420'), ('WINDHAM', None, '42.80060', '-71.30470')], 'partOfState': 'SOUTHERN', 'wfo': 'GYX'}, -'NHC019': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ACWORTH', None, '43.21780', '-72.29250'), ('CHARLESTOWN', 1145, '43.23860', '-72.42500'), ('CLAREMONT', 13151, '43.37670', '-72.34720'), ('CORNISH', None, '43.48280', '-72.32000'), ('CROYDON', None, '43.45060', '-72.16360'), ('GOSHEN', None, '43.30110', '-72.14830'), ('GRANTHAM', None, '43.48940', '-72.13810'), ('LANGDON', None, '43.16690', '-72.38000'), ('LEMPSTER', None, '43.23830', '-72.21110'), ('NEWPORT', 4008, '43.36530', '-72.17390'), ('PLAINFIELD', None, '43.53420', '-72.35670'), ('SPRINGFIELD', None, '43.49500', '-72.03390'), ('SUNAPEE', None, '43.38750', '-72.08830'), ('UNITY', None, '43.29390', '-72.26080'), ('WASHINGTON', None, '43.17580', '-72.09720')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'MEC017': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ANDOVER', None, '44.63560', '-70.75170'), ('BETHEL', None, '44.40420', '-70.79110'), ('BROWNFIELD', None, '43.93810', '-70.90920'), ('BRYANT POND', None, '44.37830', '-70.64640'), ('BUCKFIELD', None, '44.28940', '-70.36580'), ('BYRON', None, '44.72190', '-70.63110'), ('CANTON', None, '44.44060', '-70.31580'), ('DENMARK', None, '43.97030', '-70.80390'), ('DIXFIELD', 1137, '44.53390', '-70.45920'), ('FRYEBURG', 1549, '44.01640', '-70.98110'), ('GILEAD', None, '44.39420', '-70.97330'), ('GREENWOOD', None, '44.31830', '-70.65140'), ('HANOVER', None, '44.49670', '-70.69470'), ('HARTFORD', None, '44.37280', '-70.34720'), ('HEBRON', None, '44.19810', '-70.40690'), ('HIRAM', None, '43.87860', '-70.80390'), ('KEZAR FALLS', None, '43.80780', '-70.88940'), ('LOCKE MILLS', None, '44.40000', '-70.70250'), ('LOVELL', None, '44.12670', '-70.89220'), ('MEXICO', 1946, '44.56080', '-70.54580'), ('MIDDLE DAM', None, '44.78000', '-70.92280'), ('MILTON', None, '44.44780', '-70.65360'), ('NEWRY', None, '44.48720', '-70.78750'), ('NORWAY', 2623, '44.21390', '-70.54530'), ('OTISFIELD', None, '44.14830', '-70.56440'), ('OXFORD', 1300, '44.13170', '-70.49360'), ('PERU', None, '44.50670', '-70.40580'), ('PORTER', None, '43.79580', '-70.93310'), ('ROXBURY', None, '44.66970', '-70.59390'), ('RUMFORD', 4795, '44.55360', '-70.55140'), ('SOUTH ARM', None, '44.75530', '-70.84610'), ('SOUTH PARIS', 2237, '44.22360', '-70.51390'), ('STONEHAM', None, '44.25030', '-70.81310'), ('STOWE', None, '44.16060', '-70.98560'), ('SUMNER', None, '44.39190', '-70.43890'), ('SWEDEN', None, '44.13330', '-70.82310'), ('UPTON', None, '44.69420', '-71.01110'), ('WATERFORD', None, '44.18140', '-70.71780'), ('WEST PARIS', None, '44.32420', '-70.57440'), ('WILSONS MILLS', None, '44.93810', '-71.03580')], 'partOfState': '', 'wfo': 'GYX'}, -'KSC001': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BASSETT', 22, '37.90670', '-95.40720'), ('ELSMORE', 73, '37.79420', '-95.14920'), ('GAS', 556, '37.92270', '-95.34470'), ('HUMBOLDT', 1999, '37.81160', '-95.43720'), ('IOLA', 6302, '37.92820', '-95.40100'), ('LA HARPE', 706, '37.91650', '-95.30190'), ('MILDRED', 36, '38.02480', '-95.17380'), ('MORAN', 562, '37.91610', '-95.17050'), ('PETROLIA', None, '37.75000', '-95.47000'), ('SAVONBURG', 91, '37.74910', '-95.14170')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'MSC099': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('PEARL RIVER', 3156, '32.78760', '-89.24280'), ('PHILADELPHIA', 7303, '32.77400', '-89.10920'), ('TUCKER', 534, '32.70750', '-89.04890')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSC095': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ABERDEEN', 6415, '33.82850', '-88.55160'), ('AMORY', 6956, '33.98790', '-88.48290'), ('GATTMAN', 114, '33.88550', '-88.23610'), ('HATLEY', 476, '33.97720', '-88.41810'), ('NETTLETON', 1932, '34.09130', '-88.61650'), ('NEW WREN', None, '33.96670', '-88.61670'), ('PRAIRIE', None, '33.80000', '-88.66670'), ('SMITHVILLE', 882, '34.06700', '-88.39810')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSC097': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DUCK HILL', 746, '33.63140', '-89.71250'), ('KILMICHAEL', 830, '33.43900', '-89.56700'), ('WINONA', 5482, '33.48940', '-89.72610')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'MSC091': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COLUMBIA', 6603, '31.25660', '-89.82870')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'MSC093': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BETHLEHEM', None, '34.56670', '-89.33330'), ('BYHALIA', 706, '34.86450', '-89.68740'), ('HOLLY SPRINGS', 7957, '34.77270', '-89.44350'), ('LAWS HILL', None, '34.58330', '-89.58330'), ('MARIANNA', None, '34.71670', '-89.60000'), ('MT PLEASANT', None, '34.95000', '-89.51670'), ('POTTS CAMP', 494, '34.64830', '-89.30690'), ('RED BANKS', None, '34.83330', '-89.58330'), ('SLAYDEN', None, '34.95000', '-89.45000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TXC363': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GORDON', 451, '32.54580', '-98.36580'), ('GRAFORD', 578, '32.93670', '-98.24750'), ('MINERAL WELLS', 16946, '32.82030', '-98.07830'), ('MINGUS', 246, '32.53680', '-98.42390'), ('STRAWN', 739, '32.55080', '-98.49780')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC361': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRIDGE CITY', 8651, '30.02990', '-93.85090'), ('MAURICEVILLE', 2743, '30.21830', '-93.87290'), ('ORANGE', 18643, '30.10390', '-93.75820'), ('PINE FOREST', 632, '30.17990', '-94.02980'), ('ROSE CITY', 519, '30.10410', '-94.05000'), ('VIDOR', 11440, '30.12930', '-94.00160'), ('WEST ORANGE', 4111, '30.07820', '-93.75990')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXC367': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALEDO', 1726, '32.69600', '-97.60380'), ('ANNETTA', 1108, '32.69550', '-97.65770'), ('ANNETTA NORTH', 467, '32.71990', '-97.67360'), ('ANNETTA SOUTH', 555, '32.66930', '-97.64700'), ('BRIAR', 5350, '32.99210', '-97.55460'), ('COOL', 162, '32.79830', '-98.01250'), ('HUDSON OAKS', 1637, '32.74730', '-97.70110'), ('MILLSAP', 353, '32.75000', '-98.00860'), ('RENO', 2441, '32.94090', '-97.58300'), ('SANCTUARY', 256, '32.90870', '-97.58390'), ('SPRINGTOWN', 2062, '32.96930', '-97.68100'), ('WEATHERFORD', 19000, '32.75570', '-97.77130'), ('WILLOW PARK', 2849, '32.75580', '-97.65130')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'OKC031': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CACHE', 2371, '34.62860', '-98.61570'), ('CHATTANOOGA', 432, '34.42400', '-98.65470'), ('ELGIN', 1210, '34.78260', '-98.29120'), ('FAXON', 134, '34.46040', '-98.57830'), ('FLETCHER', 1022, '34.82450', '-98.24030'), ('FORT SILL', None, '34.65860', '-98.40660'), ('GERONIMO', 959, '34.48250', '-98.38330'), ('INDIAHOMA', 374, '34.62030', '-98.75180'), ('LAWTON', 92757, '34.60040', '-98.42280'), ('MEDICINE PARK', 373, '34.72860', '-98.46400'), ('MEERS', None, '34.78000', '-98.57000'), ('PUMPKIN CENTER', None, '34.59700', '-98.20800'), ('RICHARDS SPUR', None, '34.77000', '-98.38000'), ('STERLING', 762, '34.74950', '-98.17240')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'KSC005': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARRINGTON', None, '39.46670', '-95.53330'), ('ATCHISON', 10232, '39.56150', '-95.13340'), ('CUMMINGS', None, '39.46670', '-95.25000'), ('EFFINGHAM', 588, '39.52230', '-95.39820'), ('LANCASTER', 291, '39.57180', '-95.30340'), ('MUSCOTAH', 200, '39.55330', '-95.52050'), ('NORTONVILLE', 620, '39.41590', '-95.33110')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'TXC369': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLACK', None, '34.68250', '-102.60880'), ('BOVINA', 1874, '34.51620', '-102.88830'), ('FARWELL', 1364, '34.39270', '-103.02580'), ('FRIONA', 3854, '34.63890', '-102.72230'), ('LARIAT', None, '34.33020', '-102.90740'), ('LAZBUDDIE', None, '34.39300', '-102.61080'), ('OKLAHOMA LANE', None, '34.37880', '-102.87690'), ('RHEA', None, '34.67110', '-102.94860')], 'partOfState': '', 'wfo': 'LUB'}, -'TNC029': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BYBEE', None, '36.04420', '-83.18140'), ('COSBY', None, '35.81470', '-83.25080'), ('DEL RIO', None, '35.91780', '-83.02830'), ('HARTFORD', None, '35.81470', '-83.14560'), ('NEWPORT', 7242, '35.96020', '-83.19120'), ('PARROTTSVILLE', 207, '36.00930', '-83.09130'), ('ROUND MOUNTAIN', None, '35.83670', '-82.96220')], 'partOfState': '', 'wfo': 'MRX'}, -'MEC019': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALTON', None, '45.03140', '-68.72920'), ('ARGYLE', None, '45.05420', '-68.67280'), ('BANGOR', 31473, '44.80110', '-68.77830'), ('BRADFORD', None, '45.06670', '-68.93830'), ('BRADLEY', None, '44.92080', '-68.62860'), ('BREWER', 8987, '44.79670', '-68.76190'), ('BURLINGTON', None, '45.20920', '-68.42720'), ('CARMEL', None, '44.79750', '-69.05170'), ('CARROLL', None, '45.41440', '-68.03860'), ('CHARLESTON', None, '45.08500', '-69.04110'), ('CHESTER', None, '45.40860', '-68.50030'), ('CLIFTON', None, '44.81670', '-68.51170'), ('CORINNA', None, '44.92110', '-69.26220'), ('COSTIGAN', None, '45.01280', '-68.64000'), ('DEXTER', 2201, '45.02390', '-69.29030'), ('DIXMONT', None, '44.68030', '-69.16330'), ('EAST CORINTH', None, '45.00250', '-69.02420'), ('EAST MILLINOCKET', 1701, '45.62750', '-68.57500'), ('EDDINGTON', None, '44.82610', '-68.69390'), ('ENFIELD', None, '45.24890', '-68.56890'), ('ETNA', None, '44.82080', '-69.11170'), ('EXETER', None, '44.97000', '-69.14060'), ('GARLAND', None, '45.03830', '-69.16080'), ('GLENBURN', None, '44.91060', '-68.84780'), ('GRAND LAKE MATAGAMON', None, '46.16440', '-68.78690'), ('GREENBUSH', None, '45.08030', '-68.65140'), ('GREENFIELD', None, '45.04720', '-68.48190'), ('GRINDSTONE', None, '45.73610', '-68.58720'), ('HAMPDEN', 4126, '44.74440', '-68.83750'), ('HERMON', None, '44.81000', '-68.91390'), ('HOLDEN', None, '44.75280', '-68.67940'), ('HOWLAND', 1210, '45.23860', '-68.66420'), ('HUDSON', None, '45.00110', '-68.88110'), ('KENDUSKEAG', None, '44.91940', '-68.93220'), ('KINGMAN', None, '45.54940', '-68.20000'), ('LAGRANGE', None, '45.16670', '-68.84500'), ('LEE', None, '45.36000', '-68.28690'), ('LEVANT', None, '44.86920', '-68.93530'), ('LINCOLN', 2933, '45.36220', '-68.50560'), ('LOWELL', None, '45.18780', '-68.46830'), ('MATTAWAMKEAG', None, '45.51360', '-68.35500'), ('MEDWAY', None, '45.60890', '-68.53140'), ('MILFORD', 2197, '44.94610', '-68.64440'), ('MILLINOCKET', 5190, '45.65720', '-68.71030'), ('MOOSEHORN CROSSING', None, '46.34830', '-68.76330'), ('NEWBURGH', None, '44.72170', '-69.00280'), ('NEWPORT', 1754, '44.83530', '-69.27440'), ('NORCROSS', None, '45.62940', '-68.80310'), ('OLD TOWN', 8130, '44.93420', '-68.64580'), ('ORONO', 8253, '44.88310', '-68.67250'), ('ORRINGTON', None, '44.73110', '-68.82690'), ('PASSADUMKEAG', None, '45.18530', '-68.61720'), ('PATTEN', None, '45.99640', '-68.44670'), ('PLYMOUTH', None, '44.76720', '-69.21080'), ('SAPONAC', None, '45.17080', '-68.31860'), ('SEBOEIS', None, '45.36310', '-68.71170'), ('SHIN POND', None, '46.10530', '-68.55720'), ('SPRINGFIELD', None, '45.39610', '-68.13610'), ('STACYVILLE', None, '45.86360', '-68.50580'), ('STETSON', None, '44.89170', '-69.14330'), ('VEAZIE', None, '44.83860', '-68.70580'), ('WEST SEBOEIS', None, '45.52920', '-68.87920'), ('WINN', None, '45.48560', '-68.37280')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAR'}, -'KSC039': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR BLUFFS', None, '39.98000', '-100.56000'), ('DRESDEN', 51, '39.62140', '-100.41970'), ('JENNINGS', 146, '39.68020', '-100.29350'), ('KANONA', None, '39.80000', '-100.39000'), ('LEOVILLE', None, '39.58000', '-100.46000'), ('NORCATUR', 169, '39.83460', '-100.18800'), ('OBERLIN', 1994, '39.82320', '-100.53040'), ('TRAER', None, '39.93000', '-100.65000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'FLC099': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ABERDEEN GOLF COURSE', None, '26.56000', '-80.17000'), ('BELLE GLADE', 14906, '26.69000', '-80.67000'), ('BOCA RATON', 74764, '26.36000', '-80.10000'), ('BOCA RATON EQUESTRIAN CEN', None, '26.44000', '-80.19000'), ('BOCA WEST', None, '26.38000', '-80.16000'), ('BOYNTON BEACH', 60389, '26.53000', '-80.09000'), ('CALOOSA', None, '26.89000', '-80.26000'), ('CANAL POINT', 525, '26.86000', '-80.63000'), ('DELRAY BEACH', 60020, '26.46000', '-80.09000'), ('FLORIDA GARDENS', None, '26.62000', '-80.17000'), ('GREENACRES CITY', None, '26.63000', '-80.13500'), ('HAVERHILL', 1454, '26.69000', '-80.12400'), ('HOLEY LAND WILDLIFE MANAG', None, '26.43000', '-80.73000'), ('JUNO BEACH', 3262, '26.88000', '-80.05500'), ('JUPITER', 39328, '26.93000', '-80.10000'), ('LAKE HARBOR', 195, '26.70000', '-80.83000'), ('LAKE WORTH', 35133, '26.62000', '-80.07000'), ('LION COUNTRY SAFARI', None, '26.71000', '-80.36000'), ('OCEAN RIDGE', 1636, '26.53000', '-80.05000'), ('OKEELANTA', None, '26.60000', '-80.71000'), ('PAHOKEE', 5985, '26.82000', '-80.66000'), ('PALM BEACH', 10468, '26.70000', '-80.04000'), ('PALM BEACH GARDENS', 35058, '26.83000', '-80.10000'), ('PALM SPRINGS', 11699, '26.63500', '-80.09500'), ('PHILO FARMS', None, '26.95000', '-80.18000'), ('RIVIERA BEACH', 29884, '26.78000', '-80.08000'), ('ROTENBERGER WILDLIFE MANA', None, '26.40000', '-80.83000'), ('ROYAL PALM BEACH', 21523, '26.71000', '-80.23000'), ('SANDALFOOT COVE', 16582, '26.34000', '-80.20000'), ('SOUTH BAY', 3859, '26.66000', '-80.72000'), ('TEQUESTA', 5273, '26.96000', '-80.09000'), ('THE ACREAGE', None, '26.77000', '-80.25000'), ('WELLINGTON', 38216, '26.67000', '-80.25000'), ('WEST PALM BEACH', 82103, '26.71000', '-80.06000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'TNC023': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ENVILLE', 230, '35.38790', '-88.42470'), ('HENDERSON', 5670, '35.44490', '-88.64770'), ('JACKS CREEK', None, '35.46670', '-88.53330'), ('MASSEYVILLE', None, '35.30000', '-88.71670'), ('MIFFLIN', None, '35.55000', '-88.58330')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'GAC235': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HAWKINSVILLE', 3280, '32.28260', '-83.47410')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TNC021': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ASHLAND CITY', 3641, '36.27690', '-87.05980'), ('KINGSTON SPRINGS', 2773, '36.09650', '-87.10040'), ('PEGRAM', 2146, '36.10430', '-87.05670')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC037': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARCADIA', 391, '37.64190', '-94.62350'), ('ARMA', 1529, '37.54380', '-94.70000'), ('BEULAH', None, '37.44020', '-94.82790'), ('BRAZILTON', None, '37.55970', '-94.95720'), ('CHEROKEE', 722, '37.34580', '-94.80860'), ('CHICOPEE', None, '37.38180', '-94.74160'), ('CROWEBURG', None, '37.55690', '-94.66580'), ('ENGLEVALE', None, '37.59380', '-94.72710'), ('FARLINGTON', None, '37.61770', '-94.82740'), ('FRANKLIN', None, '37.52630', '-94.70550'), ('FRONTENAC', 2996, '37.45550', '-94.68880'), ('GIRARD', 2773, '37.51110', '-94.83770'), ('GREENBUSH', None, '37.51440', '-94.98770'), ('HEPLER', 154, '37.66110', '-94.96790'), ('LONE OAK', None, '37.43690', '-94.74170'), ('MCCUNE', 426, '37.35470', '-95.01630'), ('MULBERRY', 577, '37.55690', '-94.62160'), ('OPOLIS', None, '37.34440', '-94.62070'), ('PITTSBURG', 19243, '37.41080', '-94.70470'), ('POLK', None, '37.54330', '-94.74160'), ('RINGO', None, '37.50940', '-94.76110'), ('WALNUT', 221, '37.60130', '-95.07770'), ('YALE', None, '37.48380', '-94.64160')], 'partOfState': 'SOUTHEAST', 'wfo': 'SGF'}, -'TNC027': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CELINA', 1379, '36.54830', '-85.50200')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC031': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURLINGTON', 2790, '38.19440', '-95.74250'), ('GRIDLEY', 372, '38.09780', '-95.88330'), ('JOHN REDMOND RESERVOIR', None, '38.25000', '-95.81000'), ('LE ROY', 593, '38.08390', '-95.63420'), ('LEBO', 961, '38.41670', '-95.85280'), ('WAVERLY', 589, '38.39390', '-95.60280')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'TNC025': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARTHUR', None, '36.54640', '-83.67310'), ('CLAIRFIELD', None, '36.54830', '-83.95170'), ('HARROGATE-SHAWANEE', 2865, '36.58140', '-83.64370'), ('HOWARD QUARTER', None, '36.47250', '-83.41280'), ('LONE MOUNTAIN', None, '36.38780', '-83.58640'), ('SANDLICK', None, '36.39690', '-83.68310'), ('SPRINGDALE', None, '36.42390', '-83.69110'), ('TAZEWELL', 2165, '36.45820', '-83.57600')], 'partOfState': '', 'wfo': 'MRX'}, -'GAC233': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARAGON', 1039, '34.04620', '-85.05770'), ('CEDARTOWN', 9470, '34.01730', '-85.25720'), ('ROCKMART', 3870, '34.00990', '-85.04970'), ('TAYLORSVILLE', 229, '34.08580', '-84.98820')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'KSC009': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALBERT', 181, '38.45450', '-99.01170'), ('CLAFLIN', 705, '38.52390', '-98.53680'), ('ELLINWOOD', 2164, '38.35620', '-98.58200'), ('GALATIA', 61, '38.64140', '-98.95720'), ('GREAT BEND', 15345, '38.36080', '-98.80880'), ('GREAT BEND ARPT', None, '38.35000', '-98.85000'), ('HOISINGTON', 2975, '38.51840', '-98.77810'), ('OLMITZ', 138, '38.51640', '-98.93700'), ('PAWNEE ROCK', 356, '38.26530', '-98.98220'), ('SUSANK', 57, '38.64040', '-98.77460')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'OKC037': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MANNFORD', 2095, '36.13330', '-96.35420'), ('BRISTOW', 4325, '35.83060', '-96.39080'), ('MILFAY', None, '35.75500', '-96.56560'), ('SLICK', 148, '35.77690', '-96.26580'), ('DEPEW', 564, '35.80280', '-96.50580'), ('MOUNDS', 1153, '35.87640', '-96.06080'), ('SHAMROCK', 125, '35.91000', '-96.58360'), ('KIEFER', 1026, '35.94470', '-96.06500'), ('DRUMRIGHT', 2905, '35.98830', '-96.60080'), ('OILTON', 1099, '36.08440', '-96.58330'), ('SILVER CITY', None, '36.09030', '-96.49420'), ('MANNFORD', 2095, '36.13330', '-96.35420'), ('KELLYVILLE', 906, '35.94360', '-96.21330'), ('SAPULPA', 19166, '35.99860', '-96.11390')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'MDC510': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BALTIMORE', 651154, '39.30080', '-76.61060'), ('FELLS POINT', None, '39.26470', '-76.56500'), ('HAMILTON', None, '39.34080', '-76.55190'), ('HIGHLANDTOWN', None, '39.28690', '-76.54890'), ('PARK HEIGHTS', None, '39.33690', '-76.60780')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'INC039': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRISTOL', 1382, '41.72100', '-85.81940'), ('DUNLAP', 5887, '41.63550', '-85.91940'), ('ELKHART', 51874, '41.68680', '-85.96880'), ('GOSHEN', 29383, '41.57850', '-85.83510'), ('MIDDLEBURY', 2956, '41.67310', '-85.70960'), ('MILLERSBURG', 868, '41.52630', '-85.69560'), ('NAPPANEE', 6710, '41.44600', '-85.98460'), ('NEW PARIS', 1006, '41.50480', '-85.82650'), ('SIMONTON LAKE', 4053, '41.74770', '-85.96850'), ('WAKARUSA', 1618, '41.53450', '-86.01270')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'WIC003': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ASHLAND', 8620, '46.58020', '-90.87410'), ('BUTTERNUT', 407, '46.01370', '-90.49770'), ('CLAM LAKE', None, '46.15580', '-90.91690'), ('GLIDDEN', None, '46.13500', '-90.57860'), ('HIGH BRIDGE', None, '46.38890', '-90.73630'), ('MARENGO', None, '46.42250', '-90.81690'), ('MELLEN', 845, '46.32330', '-90.66110'), ('MORSE', None, '46.22230', '-90.62770'), ('ODANAH', 254, '46.60450', '-90.68350'), ('SANBORN', None, '46.43340', '-90.90950')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'TNC117': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CHAPEL HILL', 943, '35.62810', '-86.69620'), ('CORNERSVILLE', 962, '35.35870', '-86.84100'), ('LEWISBURG', 10413, '35.44700', '-86.78810')], 'partOfState': '', 'wfo': 'OHX'}, -'TNC115': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GRIFFITH CREEK', None, '35.28890', '-85.55190'), ('HALETOWN (GUILD)', None, '35.02720', '-85.53920'), ('JASPER', 3214, '35.05990', '-85.62870'), ('MARTIN SPRINGS', None, '35.16560', '-85.53920'), ('MONTEAGLE', 1238, '35.22820', '-85.83070'), ('ORME', 124, '35.01190', '-85.80640'), ('POWELLS CROSSROADS', 1286, '35.18350', '-85.48290'), ('SOUTH PITTSBURG', 3295, '35.01580', '-85.71140'), ('WHITWELL', 1660, '35.20150', '-85.51870')], 'partOfState': '', 'wfo': 'MRX'}, -'TNC113': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ADAIR', None, '35.71670', '-88.96670'), ('BEMIS', None, '35.58330', '-88.83330'), ('FAIRVIEW', 5800, '35.76670', '-88.85000'), ('JACKSON', 59643, '35.63370', '-88.82850'), ('MEDON', 191, '35.45850', '-88.86570'), ('MERCER', None, '35.48330', '-89.03330'), ('SPRING CREEK', None, '35.76670', '-88.68330')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'AKC290': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALLAKAKET', 97, '66.54520', '-152.73310'), ('ANVIK', 104, '62.65550', '-160.20830'), ('ARCTIC VILLAGE', 152, '68.12520', '-145.52690'), ('BEAVER', 84, '66.33420', '-147.31470'), ('BETTLES', 43, '66.88660', '-151.59440'), ('BIRCH CREEK', 28, '66.24540', '-145.83030'), ('CENTRAL', 134, '65.55580', '-144.85780'), ('CHALKYITSIK', 83, '66.63800', '-143.75500'), ('CIRCLE', 100, '65.82450', '-144.08260'), ('CIRCLE HOT SPRINGS STATIO', None, '65.47030', '-144.68910'), ('EVANSVILLE', 28, '66.87860', '-151.45970'), ('FORT YUKON', 595, '66.56500', '-145.26180'), ('GALENA', 675, '64.74080', '-156.81990'), ('GRAYLING', 194, '62.89950', '-160.10740'), ('HOLY CROSS', 227, '62.18140', '-159.79940'), ('HUGHES', 78, '66.03710', '-154.26770'), ('HUSLIA', 293, '65.68990', '-156.29200'), ('KALTAG', 230, '64.33860', '-158.68620'), ('KOYUKUK', 101, '64.91350', '-157.65070'), ('LAKE MINCHUMINA', 32, '63.87440', '-152.41280'), ('MANLEY HOT SPRINGS', 72, '64.98580', '-150.63660'), ('MCGRATH', 401, '62.95430', '-155.57580'), ('MINTO', 258, '65.02620', '-149.52960'), ('NENANA', 402, '64.54400', '-149.08670'), ('NIKOLAI', 100, '62.99520', '-154.39070'), ('NULATO', 336, '64.70760', '-158.22360'), ('RAMPART', 45, '65.38360', '-150.01120'), ('RUBY', 188, '64.71760', '-155.52070'), ('SHAGELUK', 129, '62.66840', '-159.56510'), ('STEVENS VILLAGE', 87, '65.99900', '-149.05470'), ('TAKOTNA', 50, '62.99280', '-156.17180'), ('TANANA', 308, '65.15600', '-152.10190'), ('VENETIE', 202, '67.01460', '-146.39790')], 'partOfState': '', 'wfo': 'AFCAFG'}, -'TNC111': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LAFAYETTE', 3885, '36.52450', '-86.03090'), ('RED BOILING SPRINGS', 1023, '36.53170', '-85.85070')], 'partOfState': '', 'wfo': 'OHX'}, -'INC135': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FARMLAND', 1456, '40.18900', '-85.12710'), ('LOSANTVILLE', 280, '40.02310', '-85.18310'), ('LYNN', 1143, '40.04870', '-84.94230'), ('MODOC', 225, '40.04470', '-85.12620'), ('PARKER CITY', 1416, '40.18960', '-85.20340'), ('RIDGEVILLE', 843, '40.28960', '-85.02980'), ('SARATOGA', 288, '40.23690', '-84.91550'), ('UNION CITY', 3622, '40.20160', '-84.81750'), ('WINCHESTER', 5037, '40.17190', '-84.97710')], 'partOfState': 'EAST CENTRAL', 'wfo': 'IND'}, -'TNC119': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COLUMBIA', 33055, '35.62250', '-87.04900'), ('MOUNT PLEASANT', 4491, '35.55130', '-87.19120'), ('SPRING HILL', 7715, '35.74200', '-86.92370')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC109': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('MONUMENT', None, '39.10000', '-101.00000'), ('OAKLEY', 2173, '39.12580', '-100.85410'), ('RUSSELL SPRINGS', 32, '38.91230', '-101.17550'), ('WINONA', 228, '39.06160', '-101.24460')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'GAC301': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CAMAK', 165, '33.45130', '-82.64670'), ('NORWOOD', 299, '33.46260', '-82.70650'), ('WARRENTON', 2013, '33.40650', '-82.66550')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAC303': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAVISBORO', 1544, '32.98320', '-82.60610'), ('DEEPSTEP', 132, '33.01610', '-82.96760'), ('HARRISON', 509, '32.82590', '-82.72590'), ('OCONEE', 280, '32.85220', '-82.95740'), ('RIDDLEVILLE', 124, '32.90780', '-82.66750'), ('SANDERSVILLE', 6144, '32.98330', '-82.81270'), ('TENNILLE', 1505, '32.93620', '-82.81130')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'KSC105': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ASH GROVE', None, '39.17000', '-98.35000'), ('BARNARD', 123, '39.18950', '-98.04400'), ('BEVERLY', 199, '39.01380', '-97.97570'), ('LINCOLN', None, '39.04270', '-98.14820'), ('SYLVAN GROVE', 324, '39.01280', '-98.39350'), ('WESTFALL', None, '38.93000', '-98.00000')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'KSC107': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BLUE MOUND', 277, '38.08920', '-95.00940'), ('LA CYGNE', 1115, '38.34680', '-94.76130'), ('MOUND CITY', 821, '38.14380', '-94.82240'), ('PARKER', 281, '38.32890', '-94.99050'), ('PLEASANTON', 1387, '38.17520', '-94.71300'), ('PRESCOTT', 280, '38.06300', '-94.69610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'EAX'}, -'GAC161': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DENTON', 269, '31.72250', '-82.69650'), ('HAZLEHURST', 3787, '31.86590', '-82.59970'), ('SNIPESVILLE', None, '31.75950', '-82.75250')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAC163': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AVERA', 217, '33.19370', '-82.52960'), ('BARTOW', 223, '32.88270', '-82.47250'), ('LOUISVILLE', 2712, '32.99580', '-82.40040'), ('STAPLETON', 318, '33.21620', '-82.46700'), ('WADLEY', 2088, '32.86460', '-82.40270'), ('WRENS', 2314, '33.20650', '-82.38730')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAC165': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BIRDSVILLE', None, '32.87140', '-82.07810'), ('BUTTS', None, '32.72580', '-82.02640'), ('EMMALANE', None, '32.75970', '-81.99830'), ('FOUR POINTS', None, '32.67170', '-81.99330'), ('HERNDON', None, '32.82030', '-82.12940'), ('LAWTON', None, '32.87170', '-81.94560'), ('MILLEN', 3492, '32.80390', '-81.94940'), ('PERKINS', None, '32.90940', '-81.95310'), ('ROGERS', None, '32.81920', '-82.07390'), ('SCARBORO', None, '32.71310', '-81.87560'), ('THRIFT', None, '32.69890', '-82.05610')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAC167': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADRIAN', 579, '32.52970', '-82.59150'), ('KITE', 241, '32.69130', '-82.51550'), ('WRIGHTSVILLE', 2223, '32.72500', '-82.72040')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAC169': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GRAY', 1811, '33.00740', '-83.53570')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'VAC121': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BLACKSBURG', 39573, '37.23330', '-80.41670'), ('CHILDRESS', None, '37.06670', '-80.51670'), ('CHRISTIANSBURG', 16947, '37.14170', '-80.40270'), ('CROCKETT SPRINGS', None, '37.10000', '-80.26670'), ('ELLISTON', None, '37.21670', '-80.23330'), ('ELLISTON-LAFAYETTE', 1241, '37.22300', '-80.21570'), ('MC DONALDS MILL', None, '37.30000', '-80.28330'), ('MERRIMAC', 1751, '37.19060', '-80.42580'), ('PILOT', None, '37.05000', '-80.36670'), ('PRICES FORK', None, '37.21670', '-80.50000'), ('SHAWSVILLE', 1029, '37.16670', '-80.26670'), ('WALTON', None, '37.16670', '-80.53330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'PRC073': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('JAYUYA', 3516, '18.22050', '-66.59700')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC127': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARHAMSVILLE', None, '37.45610', '-76.84100'), ('BOTTOMS BRIDGE', None, '37.51080', '-77.19210'), ('BROWNS CORNER', None, '37.51780', '-77.08970'), ('CHICKAHOMINY SHORES', None, '37.39360', '-76.94140'), ('COLONIAL DOWNS', None, '37.49280', '-77.02090'), ('ELTHAM', None, '37.52380', '-76.82660'), ('HOLLY FORKS', None, '37.46820', '-76.78430'), ('LANEXA', None, '37.42300', '-76.90620'), ('MOUNTCASTLE', None, '37.45330', '-77.09420'), ('NEW KENT', None, '37.51770', '-76.97830'), ('NEW KENT AIRPORT', None, '37.50260', '-77.11860'), ('ORAPAX FARMS', None, '37.53360', '-77.20580'), ('PLUM POINT', None, '37.51640', '-76.81390'), ('PROVIDENCE FORGE', None, '37.44260', '-77.04760'), ('QUINTON', None, '37.53270', '-77.11540'), ('SLATERVILLE', None, '37.49950', '-76.94440'), ('TALLEYSVILLE', None, '37.52450', '-77.07540'), ('TUNSTALL', None, '37.61150', '-77.12480'), ('WALKERS', None, '37.41530', '-76.94030'), ('WRIGHTS CORNER', None, '37.49930', '-77.13840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'PRC075': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUILITA', 4922, '18.03000', '-66.53360'), ('CAPITANEJO', 3209, '18.01530', '-66.53610'), ('GUAYABAL', 2377, '18.07820', '-66.50210'), ('JUANA DIAZ', None, '18.05480', '-66.50530'), ('LUIS LLORENS TORRES', None, '18.05880', '-66.52730'), ('POTALA PASTILLO', 3819, '17.99350', '-66.49690'), ('RIO CANAS ABAJO', None, '18.04110', '-66.46870')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC125': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AFTON', None, '38.03220', '-78.83940'), ('ALLENS CREEK', None, '37.54670', '-78.86890'), ('ARRINGTON', None, '37.68390', '-78.90140'), ('BUFFALO SPRINGS', None, '37.60940', '-78.86220'), ('ELMA', None, '37.75360', '-78.79530'), ('FIVE FORKS', None, '37.57920', '-78.85890'), ('GREENFIELD', None, '37.92750', '-78.83830'), ('JONESBORO', None, '37.78330', '-78.97860'), ('LOVINGSTON', None, '37.77000', '-78.88000'), ('MONTEBELLO', None, '37.86360', '-79.13810'), ('NORWOOD', None, '37.64310', '-78.80920'), ('PIEDMONT', None, '37.61080', '-78.92190'), ('ROCKFISH', None, '37.80110', '-78.75580'), ('ROSELAND', None, '37.74750', '-78.97610'), ('SCHUYLER', None, '37.79220', '-78.69860'), ('SHIPMAN', None, '37.72360', '-78.83940'), ('TYRO', None, '37.82140', '-79.00500'), ('WINTERGREEN', None, '37.88470', '-78.89970')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'PRC077': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('EL MANGO', None, '18.23690', '-65.87560'), ('JUNCOS', 8978, '18.22850', '-65.91680')], 'partOfState': '', 'wfo': 'SJU'}, -'NCC119': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CHARLOTTE', 540828, '35.19750', '-80.83450'), ('CORNELIUS', 11969, '35.48080', '-80.86860'), ('CROFT', None, '35.34470', '-80.82440'), ('DAVIDSON', 7139, '35.49850', '-80.84650'), ('HUNTERSVILLE', 24960, '35.41580', '-80.84510'), ('MATTHEWS', 22127, '35.12200', '-80.71320'), ('MINT HILL', 14922, '35.17690', '-80.66170'), ('NEWELL', None, '35.27940', '-80.73330'), ('PAW CREEK', None, '35.27420', '-80.93860'), ('PINEVILLE', 3449, '35.08460', '-80.88570')], 'partOfState': '', 'wfo': 'GSP'}, -'INC035': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALBANY', 2368, '40.30210', '-85.23360'), ('DALEVILLE', 1658, '40.11880', '-85.55630'), ('EATON', 1603, '40.34050', '-85.35490'), ('GASTON', 1010, '40.31350', '-85.50130'), ('MATTHEWS', 595, '40.38730', '-85.49820'), ('MUNCIE', 67430, '40.19750', '-85.39060'), ('SELMA', 880, '40.18840', '-85.27430'), ('YORKTOWN', 4785, '40.17330', '-85.47860')], 'partOfState': 'EAST CENTRAL', 'wfo': 'IND'}, -'NDC099': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ADAMS', 203, '48.41970', '-98.07380'), ('ARDOCH', 61, '48.20590', '-97.34090'), ('CONWAY', 23, '48.23400', '-97.67440'), ('EDINBURG', 252, '48.49560', '-97.86220'), ('FAIRDALE', 51, '48.48950', '-98.23150'), ('FORDVILLE', 266, '48.21670', '-97.79450'), ('FOREST RIVER', 154, '48.21710', '-97.47000'), ('GRAFTON', 4516, '48.41510', '-97.40310'), ('HERRICK', None, '48.51390', '-97.22810'), ('HOOPLE', 292, '48.53550', '-97.63750'), ('LANKIN', 131, '48.31480', '-97.92080'), ('MINTO', 657, '48.29220', '-97.37210'), ('NASH', None, '48.47060', '-97.51280'), ('OAKWOOD', None, '48.42690', '-97.29500'), ('PARK RIVER', 1535, '48.39340', '-97.74480'), ('PISEK', 96, '48.31110', '-97.71030'), ('POLAND', None, '48.19780', '-97.21810'), ('VESELEYVILLE', None, '48.32530', '-97.55690'), ('VOSS', None, '48.29640', '-97.45500'), ('WARSAW', None, '48.29610', '-97.25440')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDC097': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BLANCHARD', None, '47.34580', '-97.21920'), ('BUXTON', 350, '47.60220', '-97.09920'), ('CALEDONIA', None, '47.45750', '-96.88530'), ('CLIFFORD', 51, '47.34830', '-97.40930'), ('CUMMINGS', None, '47.51470', '-97.07920'), ('GALESBURG', 157, '47.27060', '-97.40850'), ('HATTON', 707, '47.63600', '-97.45760'), ('HILLSBORO', 1563, '47.40280', '-97.06140'), ('KELSO', None, '47.32310', '-97.02920'), ('MAYVILLE', 1953, '47.50010', '-97.32820'), ('PORTLAND', 604, '47.49910', '-97.36890'), ('REYNOLDS', 350, '47.67110', '-97.10840'), ('ROSEVILLE', None, '47.44030', '-97.38860')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'NDC095': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AMOURDALE', None, '48.87140', '-99.37250'), ('ARNDT', None, '48.63000', '-99.23500'), ('BISBEE', 167, '48.62660', '-99.37830'), ('CANDO', 1342, '48.48760', '-99.20260'), ('CONSIDINE', None, '48.56190', '-99.28280'), ('EGELAND', 49, '48.62800', '-99.09760'), ('HANSBORO', 8, '48.95220', '-99.38080'), ('MAZA', 5, '48.39490', '-99.19950'), ('NEWVILLE', None, '48.55860', '-98.98690'), ('PERTH', 13, '48.71460', '-99.45720'), ('ROCKLAKE', 194, '48.79070', '-99.24500'), ('SARLES', 25, '48.94520', '-98.99650')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDC093': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BUCHANAN', 77, '47.06300', '-98.82920'), ('CLEVELAND', 112, '46.89090', '-99.12000'), ('COURTENAY', 53, '47.22450', '-98.56870'), ('EDMUNDS', None, '47.25000', '-98.96670'), ('ELDRIDGE', None, '46.90000', '-98.83330'), ('JAMESTOWN', 15527, '46.91010', '-98.69820'), ('KENSAL', 161, '47.30030', '-98.73250'), ('MEDINA', 335, '46.89510', '-99.30000'), ('MILLARTON', None, '46.66670', '-98.75000'), ('MONTPELIER', 103, '46.69880', '-98.58700'), ('PINGREE', 66, '47.16330', '-98.90900'), ('SPIRITWOOD', None, '46.93330', '-98.50000'), ('SPIRITWOOD LAKE', 72, '47.07470', '-98.58720'), ('STREETER', 172, '46.65690', '-99.35710'), ('SYDNEY', None, '46.73330', '-98.76670'), ('WINDSOR', None, '46.90000', '-99.03330'), ('WOODWORTH', 80, '47.14220', '-99.30390'), ('YPSILANTI', None, '46.78330', '-98.55000')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'NCC117': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEARGRASS', 53, '35.76580', '-77.12980'), ('EVERETTS', 179, '35.83330', '-77.17180'), ('HAMILTON', 516, '35.94400', '-77.20810'), ('HASSELL', 72, '35.90820', '-77.27780'), ('JAMESVILLE', 502, '35.81160', '-76.89970'), ('OAK CITY', 339, '35.96210', '-77.30490'), ('PARMELE', 290, '35.81970', '-77.31240'), ('ROBERSONVILLE', 1731, '35.82490', '-77.25300'), ('WILLIAMSTON', 5843, '35.85140', '-77.05860')], 'partOfState': '', 'wfo': 'MHX'}, -'MSC077': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MONTICELLO', 1726, '31.55030', '-90.11270'), ('NEW HEBRON', 447, '31.73290', '-89.98320'), ('SILVER CREEK', 209, '31.60330', '-90.00460')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'MSC075': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COLLINSVILLE', 1823, '32.49440', '-88.84250'), ('MARION', 1305, '32.42760', '-88.64830'), ('MERIDIAN', 39968, '32.38090', '-88.71250'), ('MERIDIAN STATION', 1849, '32.54620', '-88.61760'), ('NELLIEBURG', 1354, '32.38720', '-88.78420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSC073': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('LUMBERTON', 2228, '31.00420', '-89.45170'), ('PURVIS', 2164, '31.14250', '-89.40880'), ('SUMRALL', 1005, '31.41850', '-89.54650'), ('WEST HATTIESBURG', 6305, '31.31880', '-89.37500')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MSC071': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ABBEVILLE', 423, '34.50270', '-89.50220'), ('BURGESS', None, '34.35000', '-89.66670'), ('CAMBRIDGE', None, '34.45000', '-89.36670'), ('DENMARK', None, '34.31670', '-89.35000'), ('HARMONTOWN', None, '34.53330', '-89.65000'), ('OXFORD', 11756, '34.35980', '-89.52620'), ('PARIS', None, '34.18330', '-89.46770'), ('SPRINGDALE', None, '34.23330', '-89.61670'), ('TAYLOR', 289, '34.27210', '-89.58240'), ('TULA', None, '34.23330', '-89.36670')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSC079': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CARTHAGE', 4637, '32.74400', '-89.53340'), ('LENA', 167, '32.59460', '-89.59350'), ('REDWATER', 409, '32.78260', '-89.55060'), ('STANDING PINE', 509, '32.67350', '-89.45150'), ('WALNUT GROVE', 488, '32.59780', '-89.45830')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'KYC227': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALVATON', None, '36.86670', '-86.35000'), ('BOWLING GREEN', 49296, '36.97370', '-86.44120'), ('BOYCE', None, '36.83330', '-86.36670'), ('CLAYPOOL', None, '36.90000', '-86.25000'), ('HADLEY', None, '37.05000', '-86.61670'), ('HAYS', None, '37.03330', '-86.13330'), ('OAKLAND', 260, '37.04090', '-86.25230'), ('PLANO', None, '36.88330', '-86.41670'), ('PLUM SPRINGS', 447, '37.02140', '-86.38280'), ('RICHARDSVILLE', None, '37.10000', '-86.50000'), ('RICH POND', None, '36.90000', '-86.50000'), ('RIVERSIDE', None, '37.16670', '-86.55000'), ('ROCKFIELD', None, '36.90000', '-86.55000'), ('SMITHS GROVE', 784, '37.05030', '-86.20810'), ('THREE FORKS', None, '36.95000', '-86.20000'), ('WOODBURN', 323, '36.84110', '-86.52930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'GAC015': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADAIRSVILLE', 2542, '34.36630', '-84.91220'), ('CARTERSVILLE', 15925, '34.16740', '-84.80140'), ('EMERSON', 1092, '34.13180', '-84.73940'), ('EUHARLEE', 3208, '34.14340', '-84.93280'), ('KINGSTON', 659, '34.23570', '-84.94610'), ('WHITE', 693, '34.28240', '-84.74770')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'KYC225': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRECKINRIDGE CENTER', 1874, '37.68270', '-87.86310'), ('MORGANFIELD', 3494, '37.68420', '-87.90690'), ('STURGIS', 2030, '37.54590', '-87.98730'), ('UNIONTOWN', 1064, '37.77330', '-87.93220'), ('WAVERLY', 297, '37.70970', '-87.81530')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'GAC017': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ASHTON', None, '31.70360', '-83.15610'), ('BOWENS MILL', None, '31.84130', '-83.20940'), ('FITZGERALD', 8758, '31.70620', '-83.25360'), ('FITZGERALD MUNI A/P', None, '31.68330', '-83.27050'), ('QUEENSLAND', None, '31.79830', '-83.23570'), ('RED BLUFF', None, '31.77400', '-82.99940'), ('WESTWOOD', None, '31.73410', '-83.29270')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'KYC223': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHLEHEM', None, '38.53330', '-85.41670'), ('BEDFORD', 677, '38.59300', '-85.31690'), ('MILTON', 525, '38.71210', '-85.37430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'GAC011': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALTO', 876, '34.46740', '-83.57450'), ('HOMER', 950, '34.33380', '-83.49970')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'KYC221': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CADIZ', 2373, '36.86970', '-87.82330'), ('CANTON', None, '36.79880', '-87.96080'), ('LINTON', None, '36.68660', '-87.91860'), ('ROCKCASTLE', None, '36.89970', '-87.98720')], 'partOfState': '', 'wfo': 'PAH'}, -'GAC013': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AUBURN', 6904, '34.01330', '-83.83320'), ('BETHLEHEM', 716, '33.93760', '-83.70840'), ('BRASELTON', 1206, '34.10230', '-83.78820'), ('CARL', 205, '34.00500', '-83.81130'), ('RUSSELL', None, '33.97530', '-83.69580'), ('STATHAM', 2040, '33.96540', '-83.59680'), ('WINDER', 10201, '33.99200', '-83.72220')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'TXC103': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CORDONA LAKE', None, '31.30390', '-102.50690'), ('CRANE', 3191, '31.39180', '-102.35000'), ('TUBBS CORNER', None, '31.38270', '-102.61500')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC101': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CEE VEE', None, '34.22940', '-100.44080'), ('CHALK', None, '33.87690', '-100.23280'), ('DELWIN', None, '33.87690', '-100.39970'), ('HACKBERRY', 544, '33.92780', '-100.15080'), ('LAZARE', None, '34.29190', '-100.00000'), ('PADUCAH', 1498, '34.01480', '-100.30340'), ('SWEARINGEN', None, '34.14780', '-100.14580')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXC107': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAPROCK', None, '33.47970', '-101.40990'), ('CONE', None, '33.79720', '-101.38720'), ('CROSBYTON', 1874, '33.64190', '-101.23740'), ('KALGARY', None, '33.40880', '-101.14800'), ('LORENZO', 1372, '33.67010', '-101.53450'), ('RALLS', 2252, '33.67830', '-101.38440'), ('WHITE RIVER LAKE', None, '33.48080', '-101.09880')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'KYC229': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FENWICK', None, '37.71670', '-85.15000'), ('FREDRICKTOWN', None, '37.75000', '-85.33330'), ('MACKVILLE', 206, '37.73360', '-85.06840'), ('MAUD', None, '37.81670', '-85.30000'), ('SPRINGFIELD', 2634, '37.68770', '-85.22280'), ('ST. CATHERINE', None, '37.70000', '-85.25000'), ('TEXAS', None, '37.65000', '-85.11670'), ('WILLISBURG', 304, '37.81010', '-85.12200')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'TXC105': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('OZONA', 3436, '30.71000', '-101.20030')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'VAC017': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BACOVA JUNCTION', None, '38.01670', '-79.86670'), ('BURNSVILLE', None, '38.18330', '-79.65000'), ('CALLISON', None, '37.98330', '-79.90000'), ('CARLOOVER', None, '37.91670', '-79.90000'), ('HOT SPRINGS', None, '38.00000', '-79.83330'), ('INGALLS FIELD', None, '37.95000', '-79.83330'), ('MILLBORO', None, '37.96670', '-79.60000'), ('MOUNTAIN GROVE', None, '38.10000', '-79.88330'), ('NIMROD HALL', None, '37.95000', '-79.63330'), ('WARM SPRINGS', None, '38.05000', '-79.78330'), ('YOST', None, '38.05000', '-79.53330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'VAC015': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHRISTIAN', None, '38.18220', '-79.22780'), ('CHURCHVILLE', None, '38.22610', '-79.16250'), ('CRAIGSVILLE', 979, '38.08100', '-79.38440'), ('CRIMORA', 1796, '38.16070', '-78.83930'), ('DEERFIELD', None, '38.19640', '-79.40690'), ('GREENVILLE', 886, '38.00330', '-79.15610'), ('HERMITAGE', None, '38.14140', '-78.91440'), ('MINT SPRING', None, '38.07440', '-79.10110'), ('MOSCOW', None, '38.31690', '-79.08920'), ('SANGERVILLE', None, '38.38860', '-79.08360'), ('SHERANDO', 665, '37.98110', '-78.95420'), ('SPOTTSWOOD', None, '37.95500', '-79.21390'), ('STAUNTON ARPT', None, '38.27000', '-78.90000'), ('STUARTS DRAFT', 8367, '38.02560', '-79.02490'), ('SUMMERDEAN', None, '38.07500', '-79.25640'), ('TRIMBLES MILL', None, '38.13530', '-79.21890'), ('VERONA', 3638, '38.19980', '-79.00620'), ('WEST AUGUSTA', None, '38.27000', '-79.30810')], 'partOfState': '', 'wfo': 'LWX'}, -'VAC013': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARLINGTON', 189453, '38.87870', '-77.10190'), ('BALLSTON', None, '38.88000', '-77.11420'), ('BARCROFT', None, '38.85580', '-77.10420'), ('CHERRYDALE', None, '38.89690', '-77.10860'), ('REAGAN NATIONAL AIRPORT', None, '38.85220', '-77.03750'), ('RIVERCREST', None, '38.92190', '-77.11940'), ('ROSSLYN', None, '38.89670', '-77.07280'), ('WESTOVER', None, '38.88690', '-77.13970')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAC011': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('APPOMATTOX', 1761, '37.35880', '-78.82670'), ('BENT CREEK', None, '37.53330', '-78.83330'), ('EVERGREEN', None, '37.30000', '-78.78330'), ('HIXBURG', None, '37.33330', '-78.66670'), ('OAKVILLE', None, '37.43330', '-78.86670'), ('PAMPLIN CITY', 199, '37.26670', '-78.68330'), ('SPOUT SPRING', None, '37.35000', '-78.91670'), ('STONEWALL', None, '37.41670', '-78.96670'), ('TOWER HILL', None, '37.50000', '-78.78330')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'VAC019': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BIG ISLAND', None, '37.53330', '-79.36670'), ('BOONSBORO', None, '37.45000', '-79.26670'), ('CHAMBLISSBURG', None, '37.25000', '-79.71670'), ('COLEMAN FALLS', None, '37.50000', '-79.33330'), ('FOREST', 8006, '37.36670', '-79.28330'), ('GOODE', None, '37.36670', '-79.38330'), ('GOODVIEW', None, '37.21670', '-79.71670'), ('HUDDLESTON', None, '37.16670', '-79.48330'), ('MONETA', None, '37.18330', '-79.63330'), ('MONTVALE', None, '37.38330', '-79.73330'), ('SEDALIA', None, '37.48330', '-79.45000'), ('SNOWDEN', None, '37.60000', '-79.40000'), ('STEWARTSVILLE', None, '37.26670', '-79.80000'), ('THAXTON', None, '37.35000', '-79.63330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'NYC059': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ATLANTIC BEACH', 1986, '40.59000', '-73.71000'), ('BALDWIN', 23455, '40.66300', '-73.61120'), ('BALDWIN HARBOR', 8147, '40.63600', '-73.60230'), ('BAYVILLE', 7135, '40.90700', '-73.56310'), ('BELLEROSE', 1173, '40.72430', '-73.71670'), ('BELLMORE', 16441, '40.65710', '-73.52920'), ('BETHPAGE', 16543, '40.74950', '-73.48580'), ('BROOKVILLE', 2126, '40.80750', '-73.57030'), ('CARLE PLACE', 5247, '40.75100', '-73.61150'), ('CEDARHURST', 6164, '40.62550', '-73.72790'), ('CENTRE ISLAND', 444, '40.90020', '-73.52210'), ('COVE NECK', 300, '40.88440', '-73.49660'), ('EAST HILLS', 6842, '40.79650', '-73.62920'), ('EAST MASSAPEQUA', 19565, '40.67340', '-73.43690'), ('EAST MEADOW', 37461, '40.71990', '-73.55930'), ('EAST NORWICH', 2675, '40.84700', '-73.52920'), ('EAST ROCKAWAY', 10414, '40.64370', '-73.66730'), ('EAST WILLISTON', 2503, '40.76060', '-73.63390'), ('ELMONT', 32657, '40.70390', '-73.70750'), ('FARMINGDALE', 8399, '40.73310', '-73.44760'), ('FLORAL PARK', 15967, '40.72230', '-73.70360'), ('FRANKLIN SQUARE', 29342, '40.70000', '-73.67700'), ('FREEPORT', 43783, '40.65080', '-73.58500'), ('GARDEN CITY', 21672, '40.72590', '-73.64450'), ('GLEN COVE', 26622, '40.87150', '-73.63880'), ('GLEN HEAD', 4625, '40.84330', '-73.61930'), ('GLENWOOD LANDING', 3541, '40.82980', '-73.63770'), ('GREAT NECK', 9538, '40.80230', '-73.73340'), ('HEMPSTEAD', 56554, '40.70340', '-73.61900'), ('HERRICKS', 4076, '40.75690', '-73.66430'), ('HEWLETT', 7060, '40.64170', '-73.69470'), ('HICKSVILLE', 41260, '40.76380', '-73.52520'), ('INWOOD', 9325, '40.62280', '-73.75000'), ('JERICHO', 13045, '40.78850', '-73.54190'), ('KINGS POINT', 5076, '40.83000', '-73.74000'), ('LAKE SUCCESS', 2797, '40.76870', '-73.71020'), ('LAWRENCE', 6522, '40.60440', '-73.71280'), ('LEVITTOWN', 53067, '40.72380', '-73.51310'), ('LIDO BEACH', 2825, '40.59210', '-73.60780'), ('LOCUST VALLEY', 3521, '40.88070', '-73.58760'), ('LONG BEACH', 35462, '40.59000', '-73.67000'), ('LYNBROOK', 19911, '40.65870', '-73.67440'), ('MALVERNE', 8934, '40.67450', '-73.67260'), ('MANHASSET', 8362, '40.79150', '-73.69280'), ('MANORHAVEN', 6138, '40.84800', '-73.71400'), ('MASSAPEQUA', 22652, '40.66830', '-73.47180'), ('MATINECOCK', 836, '40.86440', '-73.58400'), ('MERRICK', 22764, '40.65060', '-73.55460'), ('MILL NECK', 825, '40.88010', '-73.55620'), ('MINEOLA', 19234, '40.74700', '-73.63860'), ('MUNSEY PARK', 2632, '40.79940', '-73.68010'), ('MUTTONTOWN', 3412, '40.82060', '-73.54110'), ('NEW HYDE PARK', 9523, '40.73200', '-73.68590'), ('NORTH WANTAGH', 12156, '40.69910', '-73.50870'), ('OCEANSIDE', 32733, '40.63240', '-73.63580'), ('OLD BROOKVILLE', 2167, '40.82750', '-73.60490'), ('OLD WESTBURY', 4228, '40.78630', '-73.59620'), ('OYSTER BAY', 6826, '40.86860', '-73.53310'), ('OYSTER BAY COVE', 2262, '40.85920', '-73.50440'), ('PLAINEDGE', 9195, '40.72440', '-73.47780'), ('PLAINVIEW', 25637, '40.78330', '-73.47260'), ('PLANDOME', 1272, '40.80750', '-73.70040'), ('PORT WASHINGTON', 15215, '40.82720', '-73.68030'), ('ROCKVILLE CENTRE', 24568, '40.66380', '-73.63830'), ('ROOSEVELT', 15854, '40.67960', '-73.58390'), ('ROSLYN', 2570, '40.79960', '-73.64880'), ('ROSLYN HEIGHTS', 6295, '40.77880', '-73.64060'), ('RUSSELL GARDENS', 1074, '40.78130', '-73.72540'), ('SANDS POINT', 2786, '40.86000', '-73.71000'), ('SEA CLIFF', 5066, '40.85000', '-73.64000'), ('SEAFORD', 15791, '40.66780', '-73.49300'), ('SEARINGTOWN', 5034, '40.77010', '-73.66010'), ('SYOSSET', 18544, '40.81540', '-73.50280'), ('THOMASTON', 2607, '40.78800', '-73.71450'), ('UNIONDALE', 23011, '40.70220', '-73.59150'), ('UPPER BROOKVILLE', 1801, '40.84410', '-73.56490'), ('VALLEY STREAM', 36368, '40.66450', '-73.70520'), ('WANTAGH', 18971, '40.66770', '-73.51080'), ('WEST HEMPSTEAD', 18713, '40.69530', '-73.65110'), ('WESTBURY', 14263, '40.75970', '-73.58890'), ('WOODBURY', 9010, '40.81490', '-73.47030'), ('WOODMERE', 16447, '40.63790', '-73.72180')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'KYC009': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AUSTIN', None, '36.81670', '-86.01670'), ('BON AYR', None, '37.05000', '-86.06670'), ('CAVE CITY', 1880, '37.13850', '-85.96430'), ('EIGHTY EIGHT', None, '36.91670', '-85.76670'), ('FINNEY', None, '36.91670', '-86.10000'), ('GLASGOW', 13019, '36.99910', '-85.92150'), ('HAYWOOD', None, '36.95000', '-85.96670'), ('HISEVILLE', 224, '37.10010', '-85.81510'), ('LECTA', None, '37.01670', '-85.85000'), ('LUCAS', None, '36.88330', '-86.03330'), ('PARK CITY', 517, '37.09390', '-86.04950'), ('ROSEVILLE', None, '36.88330', '-85.91670'), ('TEMPLE HILL', None, '36.88330', '-85.83330'), ('TRACY', None, '36.80000', '-85.96670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYC007': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BARLOW', 715, '37.05070', '-89.04510'), ('BLANDVILLE', 99, '36.94350', '-88.96460'), ('KEVIL', 574, '37.08490', '-88.88510'), ('LA CENTER', 1038, '37.07480', '-88.97410'), ('LOVELACEVILLE', None, '36.96860', '-88.83080'), ('WICKLIFFE', 794, '36.96630', '-89.08150')], 'partOfState': '', 'wfo': 'PAH'}, -'NYC051': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AVON', 2977, '42.91230', '-77.74610'), ('CALEDONIA', 2327, '42.97560', '-77.85740'), ('DANSVILLE', 4832, '42.56090', '-77.69530'), ('GENESEO', 7579, '42.79830', '-77.81060'), ('LEICESTER', 469, '42.77140', '-77.89800'), ('LIMA', 2459, '42.90640', '-77.61310'), ('LIVONIA', 1373, '42.82090', '-77.66880'), ('MOUNT MORRIS', 3266, '42.72370', '-77.87500'), ('NUNDA', 1330, '42.58060', '-77.93870')], 'partOfState': '', 'wfo': 'BUF'}, -'KYC003': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FOREST SPRINGS', None, '36.65000', '-86.16670'), ('HALFWAY', None, '36.80000', '-86.30000'), ('HOLLAND', None, '36.70000', '-86.06670'), ('MAYNARD', None, '36.76670', '-86.08330'), ('MT. ARIEAL', None, '36.75000', '-86.38330'), ('SCOTTSVILLE', 4327, '36.74960', '-86.19640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYC001': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BREEDING', None, '36.95000', '-85.41670'), ('CANE VALLEY', None, '37.18330', '-85.31670'), ('COBURG', None, '37.20000', '-85.30000'), ('COLUMBIA', 4014, '37.09800', '-85.30810'), ('CROCUS', None, '36.98330', '-85.23000'), ('ELLA', None, '37.15000', '-85.13330'), ('GLENS FORK', None, '37.01670', '-85.25000'), ('GRADYVILLE', None, '37.08330', '-85.41670'), ('KNIFELY', None, '37.23330', '-85.18330'), ('MONTPELIER', None, '37.01670', '-85.20000'), ('PELLYTON', None, '37.21670', '-85.08330'), ('VESTER', None, '37.13330', '-85.21670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'TXC487': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DOANS', None, '34.35000', '-99.25000'), ('ELLIOTT', None, '34.15000', '-99.05000'), ('FARGO', None, '34.30000', '-99.27000'), ('GRAYBACK', None, '33.98000', '-99.17000'), ('HARROLD', None, '34.08000', '-99.03000'), ('LOCKETT', None, '34.08000', '-99.37000'), ('ODELL', None, '34.35000', '-99.42000'), ('OKLAUNION', None, '34.13000', '-99.13000'), ('TOLBERT', None, '34.22000', '-99.38000'), ('VERNON', 11660, '34.14740', '-99.30010'), ('WHITE CITY', None, '34.28000', '-99.35000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TXC327': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ERNA', None, '30.75060', '-99.48560'), ('FORT MCKAVETT', None, '30.82690', '-100.10640'), ('HEXT', None, '30.86890', '-99.52830'), ('MENARD', 1653, '30.91750', '-99.78610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SJT'}, -'TXC485': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BURKBURNETT', 10927, '34.07920', '-98.56480'), ('ELECTRA', 3168, '34.03030', '-98.91850'), ('HAYNESVILLE', None, '34.10000', '-98.92000'), ('IOWA PARK', 6431, '33.95970', '-98.68060'), ('KADANE CORNER', None, '33.85000', '-98.83000'), ('KAMAY', None, '33.85000', '-98.82000'), ('LAKE WICHITA', None, '33.84000', '-98.56500'), ('PLEASANT VALLEY', 408, '33.93750', '-98.60100'), ('SHEPPARD AFB', None, '33.98000', '-98.50000'), ('WICHITA FALLS', 104197, '33.91300', '-98.49530')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'INC147': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CHRISNEY', 544, '38.01230', '-87.03410'), ('DALE', 1568, '38.16720', '-86.98660'), ('GENTRYVILLE', 262, '38.10880', '-87.03040'), ('GRANDVIEW', 696, '37.93800', '-86.98310'), ('ROCKPORT', 2160, '37.88370', '-87.05090'), ('SANTA CLAUS', 2041, '38.11550', '-86.92510')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'SDC083': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CANTON', 3110, '43.30320', '-96.58090'), ('HARRISBURG', 958, '43.43030', '-96.69580'), ('HUDSON', 402, '43.12980', '-96.45550'), ('LENNOX', 2037, '43.35280', '-96.89640'), ('TEA', 1742, '43.44810', '-96.83730'), ('WORTHING', 585, '43.32890', '-96.76490')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'INC145': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FAIRLAND', 1276, '39.59870', '-85.85810'), ('MORRISTOWN', 1133, '39.67230', '-85.69980'), ('SHELBYVILLE', 17951, '39.52330', '-85.77580')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'SDC081': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BROWNSVILLE', None, '44.27430', '-103.69410'), ('CENTRAL CITY', 149, '44.36920', '-103.76920'), ('CHEYENNE CROSSING', None, '44.29840', '-103.86490'), ('CROW PEAK', None, '44.47610', '-103.96750'), ('DEADWOOD', 1380, '44.38200', '-103.72330'), ('DUMONT', None, '44.23640', '-103.79720'), ('GALENA', None, '44.33330', '-103.65000'), ('LEAD', 3027, '44.35210', '-103.76690'), ('NEMO', None, '44.19190', '-103.50430'), ("O'NEIL PASS", None, '44.20370', '-104.00360'), ('PLUMA', None, '44.35000', '-103.73330'), ('ROUBAIX LAKE', None, '44.20000', '-103.66670'), ('SAVOY', None, '44.35480', '-103.92740'), ('SPEARFISH', 8606, '44.50000', '-103.85000'), ('ST. ONGE', None, '44.54840', '-103.72140'), ('TERRY PEAK', None, '44.33230', '-103.83410'), ('WHITEWOOD', 844, '44.45930', '-103.63740')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'INC143': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AUSTIN', 4724, '38.74340', '-85.81020'), ('LEOTA', None, '38.65000', '-85.85000'), ('LEXINGTON', None, '38.65000', '-85.61670'), ('NABB', None, '38.61000', '-85.63330'), ('NEW FRANKFORT', None, '38.73330', '-85.71670'), ('SCOTTSBURG', 6040, '38.68590', '-85.78090'), ('VIENNA', None, '38.65000', '-85.76670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'SDC087': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRIDGEWATER', 607, '43.55020', '-97.49860'), ('CANISTOTA', 700, '43.59750', '-97.29160'), ('MONTROSE', 460, '43.70150', '-97.18300'), ('SALEM', 1371, '43.72430', '-97.38860'), ('SPENCER', 157, '43.72790', '-97.59170')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'INC141': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('GEORGETOWN', 4497, '41.72940', '-86.22830'), ('GRANGER', 28284, '41.73550', '-86.13950'), ('GULIVOIRE PARK', 2974, '41.61320', '-86.24520'), ('INDIAN VILLAGE', 144, '41.71450', '-86.23190'), ('LAKEVILLE', 567, '41.52580', '-86.27450'), ('MISHAWAKA', 46557, '41.66920', '-86.16850'), ('NEW CARLISLE', 1505, '41.70440', '-86.51090'), ('NORTH LIBERTY', 1402, '41.53300', '-86.43040'), ('OSCEOLA', 1859, '41.66510', '-86.07850'), ('ROSELAND', 1809, '41.71670', '-86.25160'), ('SOUTH BEND', 107789, '41.67530', '-86.26570'), ('WALKERTON', 2274, '41.46400', '-86.48230')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'SDC085': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CEDAR CREEK REC AREA', None, '44.14910', '-99.93290'), ('CEDAR CREEK REC AREA', None, '44.14910', '-99.93290'), ('COUNSELOR CREEK REC AREA', None, '44.03160', '-99.51070'), ('COUNSELOR CREEK REC AREA', None, '44.03160', '-99.51070'), ('IONA', None, '43.54270', '-99.42580'), ('IONA', None, '43.54270', '-99.42580'), ('KENNEBEC', 286, '43.90430', '-99.86240'), ('KENNEBEC', 286, '43.90430', '-99.86240'), ('LOWER BRULE', 599, '44.07400', '-99.58250'), ('LOWER BRULE', 599, '44.07400', '-99.58250'), ('LYMAN', None, '43.87630', '-99.72630'), ('LYMAN', None, '43.87630', '-99.72630'), ('OACOMA', 390, '43.79920', '-99.38440'), ('OACOMA', 390, '43.79920', '-99.38440'), ('PRESHO', 588, '43.90710', '-100.05770'), ('PRESHO', 588, '43.90710', '-100.05770'), ('RELIANCE', 206, '43.88040', '-99.60230'), ('RELIANCE', 206, '43.88040', '-99.60230'), ('TAILWATERS REC AREA', None, '44.03430', '-99.44070'), ('TAILWATERS REC AREA', None, '44.03430', '-99.44070'), ('VIVIAN', 131, '43.92770', '-100.29150'), ('VIVIAN', 131, '43.92770', '-100.29150')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'GAC025': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ATKINSON', None, '31.22080', '-81.85400'), ('HICKOX', None, '31.14750', '-81.99720'), ('HOBOKEN', 463, '31.18140', '-82.13170'), ('HORTENSE', None, '31.33440', '-81.95750'), ('NAHUNTA', 930, '31.20880', '-81.98120'), ('RAYBON', None, '31.25970', '-81.97270'), ('WAYNESVILLE', None, '31.22700', '-81.79060')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'SDC089': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('EUREKA', 1101, '45.76870', '-99.62300'), ('EUREKA', 1101, '45.76870', '-99.62300'), ('GREENWAY', None, '45.91240', '-99.71340'), ('GREENWAY', None, '45.91240', '-99.71340'), ('HILLSVIEW', 3, '45.66520', '-99.55950'), ('HILLSVIEW', 3, '45.66520', '-99.55950'), ('LEOLA', 462, '45.72130', '-98.93810'), ('LEOLA', 462, '45.72130', '-98.93810'), ('LONG LAKE', 58, '45.85630', '-99.20620'), ('LONG LAKE', 58, '45.85630', '-99.20620'), ('LONG LAKE COLONY', None, '45.60760', '-98.81930'), ('LONG LAKE COLONY', None, '45.60760', '-98.81930'), ('SPRING CREEK COLONY', None, '45.90910', '-98.88000'), ('SPRING CREEK COLONY', None, '45.90910', '-98.88000'), ('WETONKA', 12, '45.62460', '-98.77000'), ('WETONKA', 12, '45.62460', '-98.77000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'INC149': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('HAMLET', 820, '41.37850', '-86.58320'), ('KNOX', 3721, '41.29190', '-86.62130'), ('KOONTZ LAKE', 1554, '41.41820', '-86.48410'), ('NORTH JUDSON', 1675, '41.21700', '-86.77590')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'WAC051': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CUSICK', 212, '48.33450', '-117.29410'), ('DIAMOND LAKE', None, '48.11980', '-117.19220'), ('IONE', 479, '48.74060', '-117.42090'), ('METALINE', 162, '48.85460', '-117.38810'), ('METALINE FALLS', 223, '48.86240', '-117.36940'), ('NEWPORT', 1921, '48.18080', '-117.05080'), ('RUBY', None, '48.52000', '-117.29220'), ('TIGER', None, '48.68830', '-117.40400'), ('USK', None, '48.30830', '-117.27380')], 'partOfState': 'NORTHEAST', 'wfo': 'OTX'}, -'WAC053': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ARTONDALE', 8630, '47.31380', '-122.63450'), ('BONNEY LAKE', 9687, '47.18730', '-122.16880'), ('BUCKLEY', 4145, '47.16260', '-122.01870'), ('CARBONADO', 621, '47.08090', '-122.05340'), ('DUPONT', 2452, '47.10680', '-122.65310'), ('EATONVILLE', 2012, '46.86840', '-122.26880'), ('EDGEWOOD-NORTH HILL', None, '47.23210', '-122.28050'), ('ELK PLAIN', 15697, '47.05330', '-122.37800'), ('FIFE', 4784, '47.24000', '-122.36140'), ('FIRCREST', 5868, '47.23110', '-122.51300'), ('FORT LEWIS', 19089, '47.10610', '-122.58190'), ('FOX ISLAND', 2803, '47.25180', '-122.62780'), ('FREDERICKSON', 5758, '47.08650', '-122.36190'), ('GIG HARBOR', 6465, '47.32890', '-122.58790'), ('LAKEWOOD', 58211, '47.16190', '-122.53020'), ('MCCHORD AFB', 4096, '47.13380', '-122.49650'), ('MIDLAND', 7414, '47.17230', '-122.40890'), ('MILTON', 5795, '47.25190', '-122.31590'), ('NORTH PUYALLUP', None, '47.21190', '-122.31150'), ('ORTING', 3760, '47.08880', '-122.20540'), ('PARKLAND', 24053, '47.13790', '-122.42930'), ('PRAIRIE RIDGE', 11688, '47.13790', '-122.14740'), ('PUYALLUP', 33011, '47.18190', '-122.28420'), ('ROY', 260, '47.00120', '-122.54430'), ('RUSTON', 738, '47.29780', '-122.50930'), ('SOUTH HILL', 31623, '47.14120', '-122.26900'), ('SOUTH PRAIRIE', 382, '47.13850', '-122.09180'), ('SPANAWAY', 21588, '47.10620', '-122.42650'), ('STEILACOOM', 6049, '47.16960', '-122.59240'), ('SUMMIT', 8041, '47.17210', '-122.35800'), ('SUMNER', 8504, '47.21050', '-122.23600'), ('TACOMA', 193556, '47.25200', '-122.45980'), ('UNIVERSITY PLACE', 29933, '47.21910', '-122.54240'), ('WALLER', 9200, '47.20090', '-122.36820'), ('WILKESON', 395, '47.10710', '-122.04700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'TXC481': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOLING-IAGO', 1271, '29.26050', '-95.94860'), ('EAST BERNARD', 1729, '29.52800', '-96.06300'), ('EL CAMPO', 10945, '29.19650', '-96.27630'), ('WHARTON', 9237, '29.31640', '-96.09900')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'WAC057': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ANACORTES', 14557, '48.49240', '-122.62940'), ('BURLINGTON', 6757, '48.46920', '-122.33180'), ('CONCRETE', 790, '48.53710', '-121.74890'), ('HAMILTON', 309, '48.52330', '-121.98820'), ('LA CONNER', 761, '48.39270', '-122.49320'), ('LYMAN', 409, '48.52350', '-122.06360'), ('MOUNT VERNON', 26232, '48.42170', '-122.31450'), ('SEDRO-WOOLLEY', 8658, '48.50820', '-122.23500'), ('SHELTER BAY', None, '48.38260', '-122.51400'), ('SNEE OOSH', None, '48.42250', '-122.55310'), ('SWINOMISH VILLAGE', None, '48.40840', '-122.50990')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'WAC059': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('MULTNOMAH FALLS', None, '45.58300', '-122.11700'), ('VIENTO STATE PARK', None, '45.70000', '-121.66000'), ('ADAMS FORK CAMPGROUND', None, '46.32000', '-121.66000'), ('BEACON ROCK', None, '45.63000', '-121.99000'), ('CARSON', None, '45.71600', '-121.81660'), ('COOK', None, '45.71660', '-121.65000'), ('HOME VALLEY', None, '45.71660', '-121.76660'), ('INDIAN HEAVEN WILDERNESS', None, '45.95000', '-121.77000'), ('MOUNT ST. HELENS', None, '46.19000', '-122.19000'), ('NORTH BONNEVILLE', 593, '45.64290', '-121.96950'), ('NORTHWOODS', None, '46.06000', '-122.01000'), ('PRINDLE', None, '45.58500', '-122.16660'), ('SKAMANIA', None, '45.61700', '-122.05000'), ('SPIRIT LAKE', None, '46.27000', '-122.14000'), ('STABLER', None, '45.81000', '-121.89000'), ('STEVENSON', 1200, '45.69360', '-121.89320'), ('SWIFT RESERVOIR', None, '46.06000', '-122.12000'), ('TRAPPER CREEK WILDERNESS', None, '45.89000', '-122.03000'), ('UNDERWOOD', None, '45.72500', '-121.54000'), ('UPPER LEWIS RIVER FALLS', None, '46.16000', '-121.88000'), ('WILLARD', None, '45.78300', '-121.63300')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'NEC019': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AMHERST', 277, '40.83880', '-99.26910'), ('ELM CREEK', 894, '40.71980', '-99.37500'), ('GIBBON', 1759, '40.74650', '-98.84470'), ('KEARNEY', 27431, '40.70080', '-99.08460'), ('MILLER', 156, '40.92700', '-99.39050'), ('ODESSA', None, '40.70000', '-99.25580'), ('PLEASANTON', 360, '40.97010', '-99.08670'), ('POOLE', None, '40.97920', '-98.95280'), ('RAVENNA', 1341, '41.02680', '-98.91300'), ('RIVERDALE', 213, '40.78360', '-99.16000'), ('SHELTON', 1140, '40.77850', '-98.73020')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC013': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALLIANCE', 8959, '42.10040', '-102.87390'), ('BEREA', None, '42.20000', '-102.99000'), ('HEMINGFORD', 993, '42.32120', '-103.07570')], 'partOfState': '', 'wfo': 'CYS'}, -'NEC011': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALBION', 1797, '41.68930', '-98.00280'), ('CEDAR RAPIDS', 407, '41.55880', '-98.14930'), ('PETERSBURG', 374, '41.85470', '-98.07990'), ('PRIMROSE', 69, '41.62360', '-98.23720'), ('ST. EDWARD', 796, '41.57130', '-97.86090')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEC017': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AINSWORTH', 1862, '42.54900', '-99.85720'), ('JOHNSTOWN', 53, '42.57250', '-100.05520'), ('LONG PINE', 341, '42.53480', '-99.70240')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEC015': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANOKA', 10, '42.94690', '-98.82990'), ('BRISTOW', 88, '42.83990', '-98.58370'), ('BUTTE', 366, '42.91260', '-98.84790'), ('GROSS', 5, '42.94680', '-98.56890'), ('LYNCH', 269, '42.83090', '-98.46680'), ('MONOWI', 2, '42.83010', '-98.32880'), ('NAPER', 105, '42.96420', '-99.09710'), ('SPENCER', 541, '42.87460', '-98.70160')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'MNC055': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLACK HAMMER', None, '43.61254', '-91.66640'), ('BROWNSVILLE', 517, '43.69860', '-91.28050'), ('CALEDONIA', 2965, '43.63410', '-91.50030'), ('EITZEN', 229, '43.50830', '-91.46470'), ('FREEBURG', None, '43.61254', '-91.36669'), ('HOKAH', 614, '43.76010', '-91.35000'), ('HOUSTON', 1020, '43.76070', '-91.57230'), ('LA CRESCENT', 4923, '43.82940', '-91.30080'), ('MONEY CREEK', None, '43.81540', '-91.61523'), ('MOUND PRAIRIE', None, '43.78068', '-91.45075'), ('NEWHOUSE', None, '43.51568', '-91.71758'), ('PERKINS', None, '43.78251', '-91.64996'), ('RENO', None, '43.59792', '-91.28079'), ('RICEFORD', None, '43.58330', '-91.72489'), ('SHELDON', None, '43.68199', '-91.60244'), ('SPRING GROVE', 1304, '43.56100', '-91.63950'), ('WILLINGTON', None, '43.54858', '-91.54944'), ('WILLINGTON GROVE', None, '43.57965', '-91.58416')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'IAC179': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AGENCY', 622, '40.99690', '-92.30730'), ('BLAKESBURG', 374, '40.96180', '-92.63540'), ('CHILLICOTHE', 90, '41.08600', '-92.52950'), ('EDDYVILLE', 1064, '41.15870', '-92.62970'), ('ELDON', 998, '40.91770', '-92.21820'), ('KIRKVILLE', 214, '41.14290', '-92.50230'), ('OTTUMWA', 24998, '41.01990', '-92.41820')], 'partOfState': 'SOUTHEAST', 'wfo': 'DMX'}, -'NEC113': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('GANDY', 30, '41.47010', '-100.45740'), ('STAPLETON', 301, '41.47990', '-100.51220')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'SDC155': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BROWNS VALLEY', 690, '45.59480', '-96.83280'), ('BROWNS VALLEY', 690, '45.59480', '-96.83280'), ('CHARLESVILLE', None, '45.94920', '-96.26860'), ('CHARLESVILLE', None, '45.94920', '-96.26860'), ('DAKOMIN', None, '45.72510', '-96.67190'), ('DAKOMIN', None, '45.72510', '-96.67190'), ('DUMONT', 122, '45.71680', '-96.42190'), ('DUMONT', 122, '45.71680', '-96.42190'), ('TINTAH', 79, '46.01100', '-96.32010'), ('TINTAH', 79, '46.01100', '-96.32010'), ('WHEATON', 1619, '45.80580', '-96.49720'), ('WHEATON', 1619, '45.80580', '-96.49720'), ('COLLIS', None, '45.64620', '-96.42480'), ('COLLIS', None, '45.64620', '-96.42480')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABR'}, -'IAC171': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHELSEA', 287, '41.92080', '-92.39520'), ('CLUTIER', 229, '42.07880', '-92.40310'), ('DYSART', 1303, '42.17220', '-92.30930'), ('ELBERON', 245, '42.00540', '-92.31580'), ('GARWIN', 565, '42.09400', '-92.67820'), ('GLADBROOK', 1015, '42.18610', '-92.71440'), ('LINCOLN', 182, '42.26320', '-92.69100'), ('MONTOUR', 285, '41.98050', '-92.71540'), ('TAMA', 2731, '41.96360', '-92.57480'), ('TOLEDO', 2539, '41.99050', '-92.58050'), ('TRAER', 1594, '42.19250', '-92.46470'), ('VINING', 70, '41.99020', '-92.38550')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAC173': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ATHELSTAN', 18, '40.57750', '-94.54220'), ('BEDFORD', 1620, '40.67110', '-94.72410'), ('BLOCKTON', 192, '40.61680', '-94.49000'), ('CLEARFIELD', 371, '40.80210', '-94.48600'), ('CONWAY', 63, '40.74990', '-94.61940'), ('GRAVITY', 218, '40.76010', '-94.74280'), ('LENOX', 1401, '40.88320', '-94.55820'), ('NEW MARKET', 456, '40.73240', '-94.90000'), ('SHARPSBURG', 98, '40.80280', '-94.64100')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'IAC175': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AFTON', 917, '41.02790', '-94.19560'), ('ARISPE', 89, '40.94900', '-94.21870'), ('CRESTON', 7597, '41.05900', '-94.36410'), ('CROMWELL', 120, '41.04000', '-94.46190'), ('KENT', 52, '40.95310', '-94.45630'), ('LORIMOR', 427, '41.12760', '-94.05700'), ('SHANNON CITY', 70, '40.90900', '-94.26360'), ('THAYER', 66, '41.02920', '-94.04960')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAC177': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AUSTIN PARK', None, '40.76670', '-91.96670'), ('BENTONSPORT/VERNON', None, '40.73340', '-91.85000'), ('BIRMINGHAM', 423, '40.87840', '-91.94770'), ('BONAPARTE', 458, '40.70090', '-91.80050'), ('CANTRIL', 257, '40.64310', '-92.06880'), ('DOUDS/LEANDO', None, '40.83330', '-92.08330'), ('FARMINGTON', 756, '40.63880', '-91.73880'), ('INDIAN LAKE PARK', None, '40.63330', '-91.75000'), ('KEOSAUQUA', 1066, '40.73460', '-91.96030'), ('KEOSAUQUA AIRPORT', None, '40.74000', '-91.95000'), ('KILBOURN', None, '40.80000', '-91.96670'), ('LACEY KEOSAUQUA STATE PAR', None, '40.71670', '-91.98330'), ('LAKE SUGEMA CAMPGROUNDS', None, '40.68330', '-92.00000'), ('LEBANON', None, '40.73330', '-92.08330'), ('MILTON', 550, '40.67130', '-92.16250'), ('MOUNT STERLING', 40, '40.61900', '-91.93890'), ('MOUNT ZION', None, '40.78330', '-91.93330'), ('SELMA', None, '40.86670', '-92.15000'), ('STOCKPORT', 284, '40.85700', '-91.83320'), ('UTICA', None, '40.81670', '-91.83330')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'VTC027': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BARNARD', None, '43.73000', '-72.62000'), ('BETHEL', None, '43.83000', '-72.63000'), ('BRIDGEWATER', None, '43.58000', '-72.63000'), ('CAVENDISH', None, '43.38000', '-72.62000'), ('CHESTER', None, '43.26280', '-72.59390'), ('HARTLAND', None, '43.55000', '-72.40000'), ('LUDLOW', 958, '43.39630', '-72.69750'), ('NORWICH', None, '43.72000', '-72.30000'), ('PERKINSVILLE', 142, '43.36970', '-72.51620'), ('PLYMOUTH', None, '43.53000', '-72.73000'), ('POMFRET', None, '43.70000', '-72.52000'), ('QUECHEE', None, '43.65000', '-72.42000'), ('READING', None, '43.47000', '-72.55000'), ('ROCHESTER', None, '43.88000', '-72.82000'), ('SHARON', None, '43.78000', '-72.45000'), ('SOUTH ROYALTON', None, '43.82000', '-72.52000'), ('SOUTH WOODSTOCK', None, '43.57000', '-72.53000'), ('SPRINGFIELD', 3938, '43.28840', '-72.47620'), ('STOCKBRIDGE', None, '43.78000', '-72.77000'), ('TYSON', None, '43.47000', '-72.70000'), ('WEST BRIDGEWATER', None, '43.60000', '-72.75000'), ('WEST HARTFORD', None, '43.72000', '-72.42000'), ('WESTON', None, '43.28000', '-72.80000'), ('WHITE RIVER JUNCTION', 2569, '43.65010', '-72.32340'), ('WILDER', 1636, '43.67230', '-72.31130'), ('WINDSOR', None, '43.48000', '-72.42000'), ('WOODSTOCK', 977, '43.62620', '-72.51710')], 'partOfState': 'SOUTHERN', 'wfo': 'BTV'}, -'MNC059': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BRAHAM', 1276, '45.72370', '-93.17340'), ('CAMBRIDGE', 5520, '45.56430', '-93.22690'), ('ISANTI', 2324, '45.48990', '-93.25260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'VTC025': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BELLOWS FALLS', 3165, '43.13610', '-72.45320'), ('BRATTLEBORO', 8289, '42.86130', '-72.57420'), ('GUILFORD CENTER', None, '42.79200', '-72.62400'), ('JACKSONVILLE', 237, '42.79730', '-72.82080'), ('LONDONDERRY', None, '43.22650', '-72.80550'), ('NEWFANE', 116, '42.98760', '-72.65640'), ('PUTNEY', None, '42.97400', '-72.52030'), ('SAXTONS RIVER', 519, '43.13890', '-72.51130'), ('STRATTON', None, '43.04280', '-72.91070'), ('TOWNSHEND', None, '43.04300', '-72.66600'), ('VERNON', None, '42.78180', '-72.52820'), ('WEST BRATTLEBORO', 3222, '42.85150', '-72.61100'), ('WEST WARDSBORO', None, '43.02970', '-72.85250'), ('WESTMINSTER', 276, '43.07630', '-72.45600'), ('WILMINGTON', None, '42.86820', '-72.87230')], 'partOfState': 'SOUTHERN', 'wfo': 'ALY'}, -'VTC023': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BARRE', 9291, '44.20010', '-72.50790'), ('CABOT', 239, '44.40860', '-72.31100'), ('CALAIS', None, '44.38000', '-72.43000'), ('MARSHFIELD', 262, '44.35080', '-72.35210'), ('MIDDLESEX', None, '44.30000', '-72.68000'), ('MONTPELIER', 8035, '44.26650', '-72.57190'), ('MORETOWN', None, '44.25000', '-72.75000'), ('NORTHFIELD', 3208, '44.15230', '-72.65650'), ('PLAINFIELD', None, '44.28000', '-72.43000'), ('ROXBURY', None, '44.10000', '-72.73000'), ('SOUTH BARRE', 1242, '44.16330', '-72.50660'), ('WAITSFIELD', None, '44.18000', '-72.82000'), ('WARREN', None, '44.12000', '-72.85000'), ('WATERBURY', 1706, '44.33940', '-72.75270'), ('WORCESTER', None, '44.37000', '-72.55000')], 'partOfState': 'CENTRAL', 'wfo': 'BTV'}, -'AKC188': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AMBLER', 309, '67.07690', '-157.91820'), ('BUCKLAND', 406, '65.98110', '-161.13170'), ('DEERING', 136, '66.07360', '-162.73170'), ('KIANA', 388, '66.97020', '-160.45820'), ('KOBUK', 109, '66.90460', '-156.89640'), ('KOTZEBUE', 3082, '66.88800', '-162.53540'), ('NOATAK', 428, '67.58280', '-163.00520'), ('NOORVIK', 634, '66.82860', '-161.04260'), ('SELAWIK', 772, '66.60330', '-160.02500'), ('SHUNGNAK', 256, '66.87590', '-157.15570')], 'partOfState': '', 'wfo': 'AFG'}, -'AKC185': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANAKTUVUK PASS', 282, '68.11590', '-151.67950'), ('ATQASUK', 228, '70.46580', '-157.40860'), ('BARROW', 4581, '71.26830', '-156.80630'), ('DEADHORSE', None, '70.20560', '-148.51160'), ('KAKTOVIK', 293, '70.04920', '-143.63700'), ('NUIQSUT', 433, '70.19150', '-150.99460'), ('PRUDHOE BAY', 5, '70.28400', '-148.37620')], 'partOfState': '', 'wfo': 'AFG'}, -'AKC180': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BREVIG MISSION', 276, '65.33510', '-166.48090'), ('ELIM', 313, '64.62170', '-162.26040'), ('GAMBELL', 649, '63.77660', '-171.70170'), ('GOLOVIN', 144, '64.57900', '-162.99090'), ('NOME', 3505, '64.50920', '-165.41520'), ('SAVOONGA', 643, '63.67970', '-170.47090'), ('SHAKTOOLIK', 230, '64.36400', '-161.20420'), ('ST. MICHAEL', 368, '63.47760', '-162.10910'), ('STEBBINS', 547, '63.47850', '-162.22740'), ('TELLER', 268, '65.25600', '-166.36300'), ('UNALAKLEET', 747, '63.88470', '-160.78980'), ('WALES', 152, '65.60930', '-168.07990'), ('WHITE MOUNTAIN', 203, '64.68360', '-163.41950')], 'partOfState': '', 'wfo': 'AFG'}, -'SCC009': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BAMBERG', 3733, '33.29830', '-81.03210'), ('DENMARK', 3328, '33.31870', '-81.13850'), ('EHRHARDT', 614, '33.09840', '-81.01340'), ('GOVAN', 67, '33.22320', '-81.17510'), ('OLAR', 237, '33.18030', '-81.18520')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'ILC041': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARCOLA', 2652, '39.68460', '-88.30380'), ('ARTHUR', 2203, '39.71530', '-88.46900'), ('BOURBON', None, '39.75000', '-88.38330'), ('CAMARGO', 469, '39.79950', '-88.16670'), ('CHESTERVILLE', None, '39.68460', '-88.40000'), ('GARRETT', 198, '39.79680', '-88.42530'), ('HINDSBORO', 361, '39.68430', '-88.13420'), ('MURDOCK', None, '39.80000', '-88.08330'), ('NEWMAN', 956, '39.79730', '-87.98750'), ('TUSCOLA', 4448, '39.79770', '-88.28150'), ('VILLA GROVE', 2553, '39.86360', '-88.15950')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILC043': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADDISON', 35914, '41.93060', '-88.00860'), ('BARTLETT', 36706, '41.97900', '-88.20540'), ('BENSENVILLE', 20703, '41.95730', '-87.94450'), ('BLOOMINGDALE', 21675, '41.94890', '-88.08650'), ('CAROL STREAM', 40438, '41.91680', '-88.13100'), ('CLARENDON HILLS', 7610, '41.79850', '-87.95760'), ('DARIEN', 22860, '41.74930', '-87.97630'), ('DOWNERS GROVE', 48724, '41.79720', '-88.01740'), ('DUPAGE AIRPORT', None, '41.91660', '-88.25000'), ('ELMHURST', 42762, '41.89800', '-87.94360'), ('GLEN ELLYN', 26999, '41.86650', '-88.06260'), ('GLENBARD SOUTH', None, '41.82970', '-88.06640'), ('GLENDALE HEIGHTS', 31765, '41.92020', '-88.07880'), ('HANOVER PARK', 38278, '41.98460', '-88.14480'), ('HINSDALE', 17349, '41.80060', '-87.92830'), ('ITASCA', 8302, '41.97670', '-88.01850'), ('LISLE', 21182, '41.79180', '-88.08780'), ('LOMBARD', 42322, '41.87490', '-88.01500'), ('MEDINAH', None, '41.97550', '-88.05570'), ('NAPERVILLE', 128358, '41.76260', '-88.15430'), ('OAK BROOK', 8702, '41.83690', '-87.95270'), ('OAKBROOK TERRACE', 2300, '41.85330', '-87.96870'), ('ROSELLE', 23115, '41.98040', '-88.08310'), ('VILLA PARK', 22075, '41.88550', '-87.97820'), ('WARRENVILLE', 13363, '41.82010', '-88.18620'), ('WAYNE', 2137, '41.95210', '-88.26130'), ('WEST CHICAGO', 23469, '41.88990', '-88.22280'), ('WESTMONT', 24554, '41.79700', '-87.97500'), ('WHEATON', 55416, '41.85600', '-88.10760'), ('WILLOWBROOK', 2130, '41.76190', '-87.94630'), ('WINFIELD', 8718, '41.87140', '-88.15360'), ('WOOD DALE', 13535, '41.96590', '-87.98110'), ('WOODRIDGE', 30934, '41.73910', '-88.04250'), ('YORK CENTER', None, '41.85500', '-87.99470')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ILC045': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELL RIDGE', None, '39.50000', '-87.73330'), ('BORTON', None, '39.66500', '-87.93310'), ('BROCTON', 322, '39.71610', '-87.93310'), ('CHRISMAN', 1318, '39.80400', '-87.67420'), ('EDGAR', None, '39.75000', '-87.70000'), ('HUME', 382, '39.79760', '-87.86880'), ('KANSAS', 842, '39.55390', '-87.93990'), ('METCALF', 213, '39.80030', '-87.80800'), ('OLIVER', None, '39.48330', '-87.68330'), ('PALERMO', None, '39.86360', '-87.88020'), ('PARIS', 9077, '39.61550', '-87.69150'), ('REDMON', 199, '39.64500', '-87.86180'), ('SCOTTLAND', None, '39.80000', '-87.60000'), ('VERMILION', 239, '39.57970', '-87.58740')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ARC039': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CARTHAGE', 442, '34.07230', '-92.55550'), ('FORDYCE', 4799, '33.81770', '-92.41380'), ('SPARKMAN', 586, '33.91710', '-92.84860')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'ILC047': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALBION', 1933, '38.37620', '-88.05720'), ('BONE GAP', 272, '38.44480', '-87.99790'), ('BROWNS', 175, '38.37770', '-87.98340'), ('WEST SALEM', 1001, '38.52000', '-88.00880')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'ARC037': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CHERRY VALLEY', 704, '35.40300', '-90.75380'), ('FAIR OAKS', None, '35.23330', '-91.03330'), ('HICKORY RIDGE', 384, '35.40350', '-90.99470'), ('PARKIN', 1602, '35.26450', '-90.55250'), ('VANNDALE', None, '35.31670', '-90.78330'), ('WYNNE', 8615, '35.23130', '-90.78840')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC049': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALTAMONT', 2283, '39.05800', '-88.74850'), ('BEECHER CITY', 493, '39.18650', '-88.78750'), ('DIETERICH', 591, '39.05960', '-88.38210'), ('EDGEWOOD', 527, '38.92180', '-88.66410'), ('EFFINGHAM', 12384, '39.11960', '-88.55090'), ('ELLIOTSTOWN', None, '39.00000', '-88.45000'), ('HEARTVILLE', None, '39.06670', '-88.55000'), ('MASON', 396, '38.95310', '-88.62540'), ('MOCCASIN', None, '39.13330', '-88.75000'), ('MONTROSE', 257, '39.16570', '-88.37830'), ('SHUMWAY', 217, '39.18320', '-88.65300'), ('TEUTOPOLIS', 1559, '39.13210', '-88.47840'), ('WATSON', 729, '39.02560', '-88.56950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ILX'}, -'ARC035': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CRAWFORDSVILLE', 514, '35.22570', '-90.32620'), ('EARLE', 3036, '35.27330', '-90.46500'), ('EDMONDSON', 513, '35.10350', '-90.30980'), ('GILMORE', 292, '35.41110', '-90.27740'), ('HORSESHOE LAKE', 321, '34.91330', '-90.30700'), ('JENNETTE', 124, '35.16560', '-90.40750'), ('JERICHO', 184, '35.28590', '-90.22730'), ('MARION', 8901, '35.20650', '-90.20350'), ('PINCKNEY', None, '34.96670', '-90.30000'), ('SIMSBORO', None, '35.01670', '-90.38330'), ('SUNSET', 348, '35.22470', '-90.20760'), ('TURRELL', 957, '35.37710', '-90.25710'), ('WEST MEMPHIS', 27666, '35.14970', '-90.18220')], 'partOfState': '', 'wfo': 'MEG'}, -'OKC103': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BILLINGS', 436, '36.53140', '-97.44320'), ('LELA', None, '36.32000', '-96.92000'), ('LUCIEN', None, '36.28000', '-97.45000'), ('MARLAND', 280, '36.56130', '-97.15270'), ('MORRISON', 636, '36.29460', '-97.01160'), ('PERRY', 5230, '36.28770', '-97.30420'), ('RED ROCK', 293, '36.45990', '-97.17890'), ('SUMNER', None, '36.32000', '-97.12000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'SCC005': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALLENDALE', 4052, '33.00780', '-81.30860'), ('APPLETON', None, '33.04330', '-81.36310'), ('AVERILL', None, '33.07420', '-81.51360'), ('BALDOCK', None, '33.07920', '-81.42360'), ('BARTON', None, '32.92220', '-81.28670'), ('FAIRFAX', 3206, '32.95890', '-81.23670'), ('JENNYS', None, '33.02610', '-81.11390'), ('MARTIN', None, '33.06890', '-81.47670'), ('MILBURY', None, '32.92420', '-81.43030'), ('MILLETT', None, '33.08110', '-81.53580'), ('ROUSE', None, '32.88530', '-81.27560'), ('SEIGLING', None, '33.04420', '-81.31530'), ('SYCAMORE', 185, '33.03560', '-81.22220'), ('ULMER', 102, '33.09720', '-81.20830')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCC007': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ANDERSON', 25514, '34.51860', '-82.64580'), ('BELTON', 4461, '34.52390', '-82.49510'), ('HONEA PATH', 3504, '34.44700', '-82.39460'), ('IVA', 1156, '34.30680', '-82.66350'), ('PELZER', 97, '34.64380', '-82.46190'), ('PENDLETON', 2966, '34.65080', '-82.78280'), ('PIEDMONT', 4684, '34.71010', '-82.46430'), ('POWDERSVILLE', None, '34.79170', '-82.49310'), ('SADLERS CREEK STATE PARK', None, '34.42500', '-82.82780'), ('SANDY SPRINGS', None, '34.59530', '-82.75000'), ('STARR', 173, '34.37710', '-82.69580'), ('WILLIAMSTON', 3791, '34.61760', '-82.47940')], 'partOfState': '', 'wfo': 'GSP'}, -'NVC033': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BAKER', None, '39.01660', '-114.13330'), ('CHERRY CREEK', None, '39.90000', '-114.88330'), ('ELY', 4041, '39.24910', '-114.87790'), ('ELY AIRPORT', None, '39.29500', '-114.84520'), ('GREAT BASIN NATIONAL PARK', None, '39.00920', '-114.22670'), ('LAGES JUNCTION', None, '40.06330', '-114.61520'), ('LUND', None, '38.86250', '-115.00940'), ('MCGILL', 1054, '39.39970', '-114.77890'), ('PRESTON', None, '38.91660', '-115.06670'), ('RUTH', None, '39.28000', '-114.98750'), ('SCHELLBOURNE', None, '39.81660', '-114.66670'), ('SHOSHONE', None, '38.91030', '-114.40190')], 'partOfState': '', 'wfo': 'LKN'}, -'NVC031': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('CATNIP MOUNTAIN', None, '41.85000', '-119.38000'), ('CRYSTAL BAY', None, '39.25000', '-119.99000'), ('EMPIRE', None, '40.58000', '-119.34000'), ('GERLACH', None, '40.65000', '-119.35000'), ('INCLINE VILLAGE', None, '39.25080', '-119.96320'), ('LOCKWOOD', None, '39.51000', '-119.65000'), ('MOUNT ROSE SUMMIT', None, '39.31000', '-119.90000'), ('MUSTANG', None, '39.52000', '-119.63000'), ('NEW WASHOE CITY', None, '39.30130', '-119.77180'), ('NIXON', 418, '39.83000', '-119.36000'), ('PATRICK', None, '39.55000', '-119.58000'), ('PYRAMID LAKE', None, '40.06000', '-119.56000'), ('RENO', 180480, '39.53870', '-119.82250'), ('SAND PASS', None, '40.26000', '-119.68000'), ('SMOKE CREEK DESERT', None, '40.48000', '-119.73000'), ('SPANISH SPRINGS', 9018, '39.62000', '-119.72000'), ('SPARKS', 66346, '39.54420', '-119.73690'), ('STEAD', None, '39.64000', '-119.88000'), ('SUN VALLEY', 19461, '39.59820', '-119.77860'), ('SUTCLIFFE', 281, '39.95000', '-119.60000'), ('THE NEEDLE ROCKS', None, '40.15000', '-119.68000'), ('VERDI', None, '39.52000', '-119.99000'), ('VYA', None, '41.60000', '-119.86000'), ('WADSWORTH', 881, '39.63260', '-119.29000'), ('WASHOE CITY', None, '39.32000', '-119.81000')], 'partOfState': '', 'wfo': 'REV'}, -'MOC159': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DMO', None, '38.70000', '-93.16670'), ('GREEN RIDGE', 445, '38.62020', '-93.40980'), ('HOUSTONIA', 275, '38.89940', '-93.35980'), ('HUGHESVILLE', 174, '38.83790', '-93.29590'), ('LA MONTE', 1064, '38.77110', '-93.42250'), ('SEDALIA', 20339, '38.70300', '-93.23330'), ('SMITHTON', 510, '38.68160', '-93.09220')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'MOC151': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARGYLE', 164, '38.29500', '-92.02550'), ('BONNOTS MILL', None, '38.57250', '-91.96100'), ('CHAMOIS', 456, '38.67720', '-91.77000'), ('FRANKENSTEIN', None, '38.57420', '-91.88220'), ('FREEBURG', 423, '38.31550', '-91.92250'), ('KOELTZTOWN', None, '38.32480', '-92.04210'), ('LINN', 1354, '38.48080', '-91.84440'), ('LOOSE CREEK', None, '38.50810', '-91.95730'), ('META', 249, '38.31240', '-92.16660'), ('RICH FOUNTAIN', None, '38.39580', '-91.87980'), ('WESTPHALIA', 320, '38.44120', '-92.00050')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'MOC153': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BAKERSFIELD', 285, '36.52240', '-92.14190'), ('BRIXEY', None, '36.75070', '-92.40470'), ('DORA', None, '36.77680', '-92.21710'), ('GAINESVILLE', 632, '36.60300', '-92.42790'), ('HARDENVILLE', None, '36.58910', '-92.37100'), ('ISABELLA', None, '36.58070', '-92.61250'), ('LONG RUN', None, '36.64910', '-92.72290'), ('NOBLE', None, '36.74740', '-92.56960'), ('PONTIAC', None, '36.51550', '-92.60360'), ('ROCKBRIDGE', None, '36.78940', '-92.40880'), ('SUNDOWN', 38, '36.56550', '-92.63730'), ('SYCAMORE', None, '36.70330', '-92.27410'), ('TECUMSEH', None, '36.58660', '-92.28630'), ('THEODOSIA', 240, '36.58270', '-92.67570'), ('THORNFIELD', None, '36.70860', '-92.65910'), ('UDALL', None, '36.54380', '-92.25860'), ('WASOLA', None, '36.79350', '-92.57540'), ('WILLHOIT', None, '36.68330', '-92.50660'), ('ZANONI', None, '36.68600', '-92.33160')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC157': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALTENBURG', 309, '37.63130', '-89.58140'), ('FROHNA', 192, '37.63650', '-89.62050'), ('LITHIUM', 0, '37.83220', '-89.88380'), ('LONGTOWN', 76, '37.66980', '-89.77350'), ('PERRYVILLE', 7667, '37.72610', '-89.87220'), ('SILVER LAKE', None, '37.68360', '-89.99000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'ARC143': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('WALNUT GROVE', None, '36.00360', '-94.26690'), ('HICKS', None, '35.93890', '-94.04810'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('SHADY GROVE', None, '36.14560', '-94.14390'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('SHADY GROVE', None, '36.14560', '-94.14390'), ('WALNUT GROVE', None, '36.00360', '-94.26690'), ('ODELL', None, '35.77250', '-94.41810'), ('WALNUT GROVE', None, '36.00360', '-94.26690'), ('TUTTLE', None, '36.03360', '-93.97220'), ('MAYFIELD', None, '36.13360', '-93.94390'), ('HARMON', None, '36.15360', '-94.27690'), ('FAYETTEVILLE', 58047, '36.06250', '-94.15720'), ('SPRINGDALE', 45798, '36.18670', '-94.12860'), ('WINSLOW', 399, '35.80080', '-94.13470'), ('WEST FORK', 2042, '35.92420', '-94.18830'), ('LINCOLN', 1752, '35.94940', '-94.42330'), ('PRAIRIE GROVE', 2540, '35.97580', '-94.31750'), ('ELKINS', 1251, '36.00140', '-94.00810'), ('FARMINGTON', 3605, '36.04190', '-94.24690'), ('BLACKBURN', None, '35.81640', '-94.21940'), ('HOGEYE', None, '35.92030', '-94.26750'), ('STRICKLER', None, '35.83360', '-94.31310'), ('MORROW', None, '35.85830', '-94.43720'), ('BRENTWOOD', None, '35.86000', '-94.10690'), ('WOOLSEY', None, '35.88530', '-94.16830'), ('WYOLA', None, '35.85860', '-94.05830'), ('CLYDE', None, '35.89140', '-94.40640'), ('ARNETT', None, '35.89500', '-94.03940'), ('CANEHILL', None, '35.90860', '-94.39640'), ('DURHAM', None, '35.94940', '-93.98030'), ('SULPHUR CITY', None, '35.96500', '-94.05030'), ('SUMMERS', None, '35.98110', '-94.49140'), ('BLACK OAK', 286, '35.98330', '-94.07940'), ('GREENLAND', 907, '35.99420', '-94.17500'), ('RHEA', None, '36.01420', '-94.40280'), ('VINEY GROVE', None, '36.00830', '-94.33000'), ('CINCINNATI', None, '36.03720', '-94.51080'), ('WEDINGTON', None, '36.08330', '-94.41670'), ('SAVOY', None, '36.10560', '-94.33250'), ('GOSHEN', 752, '36.10110', '-93.99110'), ('WHEELER', None, '36.11420', '-94.25890'), ('JOHNSON', 2319, '36.13280', '-94.16530'), ('HARMON', None, '36.15360', '-94.27690'), ('SONORA', None, '36.16530', '-94.04470'), ('TONTITOWN', 942, '36.17780', '-94.23330'), ('ELM SPRINGS', 1044, '36.20610', '-94.23420')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'ARC141': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CLINTON', 2283, '35.58110', '-92.45240'), ('FAIRFIELD BAY', 2460, '35.60510', '-92.26980'), ('SHIRLEY', 337, '35.64370', '-92.31340')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARC147': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AUGUSTA', 2665, '35.28550', '-91.36050'), ('COTTON PLANT', 960, '35.00690', '-91.25150'), ('HUNTER', 152, '35.05340', '-91.12270'), ('MCCRORY', 1850, '35.25690', '-91.19770'), ('PATTERSON', 467, '35.25760', '-91.23660')], 'partOfState': '', 'wfo': 'LZK'}, -'ARC145': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BALD KNOB', 3210, '35.30820', '-91.57250'), ('BEEBE', 4930, '35.07230', '-91.89390'), ('BRADFORD', 800, '35.42310', '-91.45660'), ('GARNER', 284, '35.13950', '-91.78010'), ('GEORGETOWN', 126, '35.12630', '-91.45320'), ('GRIFFITHVILLE', 262, '35.12480', '-91.64560'), ('HIGGINSON', 378, '35.19580', '-91.71150'), ('JUDSONIA', 1982, '35.27590', '-91.64020'), ('KENSETT', 1791, '35.23550', '-91.67010'), ('LETONA', 201, '35.36310', '-91.83020'), ('MCRAE', 661, '35.11420', '-91.82260'), ('PANGBURN', 654, '35.42620', '-91.83870'), ('ROSE BUD', 429, '35.33090', '-92.07870'), ('RUSSELL', 228, '35.36210', '-91.51040'), ('SEARCY', 18928, '35.24290', '-91.73080'), ('WEST POINT', 164, '35.20430', '-91.61030')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARC149': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BELLEVILLE', 371, '35.09070', '-93.44530'), ('CORINTH', 65, '35.06820', '-93.42050'), ('DANVILLE', 2392, '35.05210', '-93.39030'), ('DARDANELLE', 4228, '35.22640', '-93.16560'), ('HAVANA', 392, '35.11020', '-93.52790'), ('OLA', 1204, '35.03100', '-93.22410'), ('PLAINVIEW', 755, '34.98950', '-93.29760')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'NEC163': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ASHTON', 237, '41.24760', '-98.79450'), ('HAZARD', 66, '41.09120', '-99.07810'), ('LITCHFIELD', 280, '41.15610', '-99.15190'), ('LOUP CITY', 996, '41.27630', '-98.96770'), ('ROCKVILLE', 111, '41.11930', '-98.83110'), ('SHERMAN RESERVOIR DAM', None, '41.30000', '-98.88000')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'OHC159': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('MAGNETIC SPRINGS', 323, '40.35370', '-83.26280'), ('MARYSVILLE', 15942, '40.23770', '-83.37470'), ('MILFORD CENTER', 626, '40.17910', '-83.43710'), ('RICHWOOD', 2156, '40.42710', '-83.29620'), ('UNIONVILLE CENTER', 299, '40.13630', '-83.34160')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'NEC161': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANTIOCH', None, '42.06800', '-102.62000'), ('BINGHAM', None, '42.01700', '-102.06000'), ('CLINTON', 30, '42.75940', '-102.34820'), ('ELLSWORTH', None, '42.06000', '-102.28600'), ('GORDON', 1756, '42.80630', '-102.20360'), ('HAY SPRINGS', 652, '42.68310', '-102.68900'), ('LAKESIDE', None, '42.06050', '-102.46000'), ('RUSHVILLE', 999, '42.71290', '-102.46580')], 'partOfState': '', 'wfo': 'LBF'}, -'NEC167': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('PILGER', 378, '42.00770', '-97.05400'), ('STANTON', 1627, '41.94890', '-97.22400')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'MNC159': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALDRICH', 53, '46.37470', '-94.93940'), ('BLUE GRASS', None, '46.54280', '-95.00970'), ('HUNTERSVILLE', None, '46.77580', '-94.89250'), ('MENAHGA', 1220, '46.74880', '-95.10210'), ('NIMROD', 75, '46.63780', '-94.88100'), ('OYLEN', None, '46.57470', '-94.79830'), ('SEBEKA', 710, '46.62910', '-95.08820'), ('STAPLES AIRPORT', None, '46.38080', '-94.80670'), ('VERNDALE', 575, '46.39730', '-95.01150'), ('WADENA', 4294, '46.43990', '-95.13480')], 'partOfState': 'CENTRAL', 'wfo': 'FGF'}, -'NEC165': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AGATE', None, '42.41000', '-103.78000'), ('FORT ROBINSON', None, '42.66000', '-103.48000'), ('HARRISON', 279, '42.68800', '-103.88160'), ('HENRY', 162, '41.99830', '-104.04630')], 'partOfState': '', 'wfo': 'CYS'}, -'OHC151': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALLIANCE', 23253, '40.91110', '-81.11710'), ('BEACH CITY', 1137, '40.65270', '-81.58010'), ('BREWSTER', 2324, '40.71270', '-81.60070'), ('CANAL FULTON', 5061, '40.89000', '-81.58450'), ('CANTON', 80806, '40.81220', '-81.37330'), ('EAST CANTON', 1629, '40.78890', '-81.28340'), ('EAST SPARTA', 806, '40.66980', '-81.35380'), ('GREENTOWN', 3154, '40.92750', '-81.40190'), ('HARTVILLE', 2174, '40.96100', '-81.33400'), ('HILLS AND DALES', 260, '40.82810', '-81.44490'), ('LOUISVILLE', 8904, '40.83720', '-81.26090'), ('MAGNOLIA', 931, '40.65150', '-81.29250'), ('MASSILLON', 31325, '40.78670', '-81.52010'), ('MEYERS LAKE', 565, '40.81390', '-81.41820'), ('MINERVA', 3934, '40.72980', '-81.10240'), ('NAVARRE', 1440, '40.72260', '-81.52270'), ('NORTH CANTON', 16369, '40.87310', '-81.39840'), ('PERRY HEIGHTS', 8900, '40.79680', '-81.46910'), ('UNIONTOWN', 2802, '40.97350', '-81.40350'), ('WAYNESBURG', 1003, '40.66810', '-81.25920'), ('WILMOT', 335, '40.65610', '-81.63500')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'NEC169': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALEXANDRIA', 216, '40.24740', '-97.38680'), ('BELVIDERE', 98, '40.25440', '-97.55690'), ('BRUNING', 300, '40.33570', '-97.56460'), ('BYRON', 144, '40.00520', '-97.76810'), ('CARLETON', 136, '40.30170', '-97.67350'), ('CHESTER', 294, '40.00960', '-97.61770'), ('DAVENPORT', 339, '40.31160', '-97.81010'), ('DESHLER', 879, '40.13900', '-97.72320'), ('GILEAD', 40, '40.14650', '-97.41500'), ('HEBRON', 1565, '40.16840', '-97.58770'), ('HUBBELL', 73, '40.00760', '-97.49670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'MNC157': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEAR VALLEY', None, '44.31433', '-92.45043'), ('CONCEPTION', None, '44.26498', '-92.10136'), ('DUMFRIES', None, '44.34905', '-92.11781'), ('ELGIN', 826, '44.13090', '-92.25390'), ('HAMMOND', 198, '44.22170', '-92.37370'), ('JARRETT', None, '44.23391', '-92.33529'), ('KELLOGG', 439, '44.30700', '-91.99880'), ('LAKE CITY', 4950, '44.44650', '-92.27810'), ('MAPLE SPRINGS', None, '44.41484', '-92.16715'), ('MAZEPPA', 778, '44.27360', '-92.54080'), ('MILLVILLE', 186, '44.24510', '-92.29620'), ('MINNEISKA', 116, '44.19480', '-91.87150'), ('OAK CENTER', None, '44.34905', '-92.39925'), ('PLAINVIEW', 3190, '44.16560', '-92.16890'), ('THEILMAN', None, '44.29788', '-92.20005'), ('WABASHA', 2599, '44.37150', '-92.04510'), ('WEST ALBANY', None, '44.29788', '-92.28595'), ('ZUMBRO FALLS', 177, '44.28690', '-92.42630')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'MNC151': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('APPLETON', 2871, '45.20140', '-96.02290'), ('BENSON', 3376, '45.31710', '-95.60710'), ('CLONTARF', 173, '45.37630', '-95.67720'), ('DANVERS', 108, '45.28260', '-95.75270'), ('DE GRAFF', 133, '45.25920', '-95.46890'), ('HOLLOWAY', 112, '45.24760', '-95.91050'), ('KERKHOVEN', 759, '45.19290', '-95.32000'), ('MURDOCK', 303, '45.22370', '-95.39410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'OHC157': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BALTIC', 743, '40.44130', '-81.70180'), ('BARNHILL', 364, '40.44820', '-81.36760'), ('BOLIVAR', 894, '40.65000', '-81.45480'), ('DENNISON', 2992, '40.39710', '-81.32790'), ('DOVER', 12210, '40.52980', '-81.47980'), ('GNADENHUTTEN', 1280, '40.35920', '-81.43130'), ('MIDVALE', 547, '40.43700', '-81.37210'), ('MINERAL CITY', 841, '40.60240', '-81.36150'), ('NEW PHILADELPHIA', 17056, '40.48670', '-81.44130'), ('NEWCOMERSTOWN', 4008, '40.27450', '-81.59880'), ('PARRAL', 241, '40.56120', '-81.49500'), ('PORT WASHINGTON', 552, '40.32690', '-81.51960'), ('ROSWELL', 276, '40.47540', '-81.34640'), ('STILLWATER', None, '40.32000', '-81.32000'), ('STONE CREEK', 184, '40.39870', '-81.55870'), ('STRASBURG', 2310, '40.60230', '-81.52940'), ('SUGARCREEK', 2174, '40.50660', '-81.64190'), ('TUSCARAWAS', 934, '40.39750', '-81.40420'), ('UHRICHSVILLE', 5662, '40.40010', '-81.35080'), ('ZOAR', 193, '40.61400', '-81.42430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'PAC087': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALFARATA', None, '40.66000', '-77.48000'), ('ALLENSVILLE', None, '40.53000', '-77.81000'), ('BELLEVILLE', 1386, '40.60280', '-77.72570'), ('BELLTOWN', None, '40.70000', '-77.40000'), ('BURNHAM', 2144, '40.63660', '-77.56320'), ('LEWISTOWN', 8998, '40.59730', '-77.57350'), ('MCVEYTOWN', 405, '40.49810', '-77.74130'), ('MILROY', 1386, '40.71480', '-77.58690'), ('NEWTON HAMILTON', 272, '40.39280', '-77.83540'), ('REEDS GAP SP', None, '40.73000', '-77.47000'), ('REEDSVILLE', 858, '40.65930', '-77.60200'), ('SEVEN MOUNTAINS', None, '40.74000', '-77.62000'), ('STRODES MILLS', None, '40.55000', '-77.66000'), ('YEAGERTOWN', 1035, '40.64090', '-77.58040')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'VAC660': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('HARRISONBURG', 40468, '38.43670', '-78.87400')], 'partOfState': '', 'wfo': 'LWX'}, -'NEC125': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BELGRADE', 134, '41.47130', '-98.06710'), ('FULLERTON', 1378, '41.36410', '-97.97250'), ('GENOA', 981, '41.44590', '-97.73280')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'PAC085': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CLARK', 633, '41.28530', '-80.40420'), ('FARRELL', 6050, '41.20960', '-80.49740'), ('FREDONIA', 652, '41.32220', '-80.25880'), ('GREENVILLE', 6380, '41.40600', '-80.38430'), ('GREENVILLE EAST', None, '41.40270', '-80.35900'), ('GROVE CITY', 8024, '41.15690', '-80.08880'), ('HERMITAGE', 16157, '41.22980', '-80.44290'), ('JACKSON CENTER', 221, '41.27320', '-80.13880'), ('JAMESTOWN', 636, '41.48490', '-80.43700'), ('MERCER', 2391, '41.22630', '-80.23660'), ('NEW LEBANON', 205, '41.41670', '-80.07590'), ('SANDY LAKE', 743, '41.34760', '-80.08460'), ('SHARON', 16328, '41.23420', '-80.49980'), ('SHARPSVILLE', 4500, '41.25890', '-80.48200'), ('SHEAKLEYVILLE', 164, '41.44470', '-80.20710'), ('STONEBORO', 1104, '41.33660', '-80.10970'), ('WEST MIDDLESEX', 929, '41.17410', '-80.45610'), ('WHEATLAND', 748, '41.19690', '-80.49600')], 'partOfState': 'NORTHWEST', 'wfo': 'PBZ'}, -'AZC019': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AJO', 3705, '32.38720', '-112.86840'), ('AVRA VALLEY', 5038, '32.43790', '-111.31470'), ('CATALINA', 7025, '32.47680', '-110.90020'), ('GREEN VALLEY', 17283, '31.84850', '-111.00980'), ('MARANA', 13556, '32.41440', '-111.17280'), ('ORO VALLEY', 29700, '32.42500', '-110.96470'), ('PICTURE ROCKS', 8139, '32.34580', '-111.24570'), ('PISINEMO', 237, '32.03780', '-112.32030'), ('SANTA ROSA', 438, '32.33480', '-112.04540'), ('SELLS', 2799, '31.91850', '-111.87640'), ('THREE POINTS', 5273, '32.06750', '-111.27840'), ('TUCSON', 486699, '32.19580', '-110.89170')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TWC'}, -'TXC419': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CENTER', 5678, '31.79350', '-94.17830'), ('HUXLEY', 298, '31.76220', '-93.88740'), ('JOAQUIN', 925, '31.96680', '-94.05050'), ('TENAHA', 1046, '31.94370', '-94.24460'), ('TIMPSON', 1094, '31.90620', '-94.39640')], 'partOfState': '', 'wfo': 'SHV'}, -'AZC015': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BULLHEAD CITY', 33769, '35.15000', '-114.56000'), ('CHLORIDE', None, '35.40000', '-114.18330'), ('COLORADO CITY', 3334, '36.99160', '-112.98250'), ('DESERT HILLS', 2183, '34.55400', '-114.37170'), ('DOLAN SPRINGS', 1867, '35.60450', '-114.26650'), ('GOLDEN VALLEY', 4515, '35.22320', '-114.22210'), ('HUALAPAI PEAK', None, '35.07160', '-113.90000'), ('KINGMAN', 20069, '35.20700', '-114.03200'), ('LITTLEFIELD', None, '36.89530', '-113.93450'), ('MEADVIEW', None, '36.00000', '-114.07080'), ('MOHAVE VALLEY', 13694, '34.93320', '-114.58800'), ('MT. TRUMBULL', None, '36.40000', '-113.13330'), ('NEW KINGMAN-BUTLER', 14810, '35.26010', '-114.02980'), ('OATMAN', None, '35.03330', '-114.38330'), ('PEACH SPRINGS', 600, '35.52740', '-113.42980'), ('PIPE SPRING NATIONAL MONU', None, '36.86660', '-112.73330'), ('SOUTH COVE', None, '36.12080', '-114.08330'), ('TEMPLE BAR', None, '36.03220', '-114.32000'), ('TOPOCK', None, '34.71660', '-114.46660'), ('TUWEEP', None, '36.28330', '-113.06660'), ('VALENTINE', None, '35.38330', '-113.66660'), ('WIKIEUP', None, '34.70000', '-113.61660'), ('WILLOW BEACH', None, '35.87100', '-114.66670'), ('WILLOW VALLEY', 585, '34.91200', '-114.60580'), ('YUCCA', None, '34.86660', '-114.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'VEF'}, -'AZC017': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ARIPINE', None, '34.40696', '-110.43454'), ('CASTLE BUTTE', None, '35.30670', '-110.34577'), ('CEDAR SPRINGS', None, '35.45502', '-110.36377'), ('CHILCHINBITO', 462, '36.52861', '-110.07864'), ('CIBECUE', 1331, '34.02950', '-110.48220'), ('CLAY SPRINGS', None, '34.36114', '-110.29491'), ('DILKON', 1265, '35.38498', '-110.32323'), ('EAST FORK', 880, '33.80640', '-109.93140'), ('FORT APACHE', None, '33.79026', '-109.98163'), ('GREASEWOOD', 581, '35.52800', '-109.86010'), ('HEBER-OVERGAARD', 2722, '34.41400', '-110.56880'), ('HOLBROOK', 4917, '34.90167', '-110.16093'), ('HOLBROOK', 4917, '34.91280', '-110.15520'), ('HOTEVILLA', None, '35.92380', '-110.65760'), ('INDIAN WELLS', None, '35.40739', '-110.08518'), ('JADITO', None, '35.77379', '-110.13624'), ('JOSEPH CITY', None, '34.95661', '-110.32790'), ('KAYENTA', 4922, '36.71800', '-110.25260'), ('KEAMS CANYON', 260, '36.81187', '-110.19369'), ('KYKOTSMOVI VILLAGE', 776, '35.87420', '-110.62270'), ('LINDEN', None, '34.28522', '-110.16187'), ('NAVAJO NATIONAL MONUMENT', None, '36.76079', '-110.49675'), ('PINEDALE', None, '34.30730', '-110.24932'), ('PINETOP-LAKESIDE', 3582, '34.14810', '-109.96640'), ('PINON', 1190, '36.10070', '-110.22130'), ('POLACCA', None, '35.83560', '-110.36560'), ('SEBA DALKAI', None, '35.50157', '-110.44849'), ('SECOND MESA', 814, '35.81760', '-110.50360'), ('SHONGOPOVI', 632, '35.81810', '-110.53400'), ('SHONTO', 568, '36.58800', '-110.65420'), ('SHOW LOW', 7695, '34.23730', '-110.04430'), ('SHUMWAY', None, '34.40457', '-110.07875'), ('SNOWFLAKE', 4460, '34.52200', '-110.08420'), ('TAYLOR', 3176, '34.44990', '-110.11150'), ('TSEGI', None, '36.65082', '-110.42613'), ('WHITE CONE', None, '35.60536', '-110.06657'), ('WHITERIVER', 5220, '33.83890', '-109.96160'), ('WINSLOW', 9520, '35.02780', '-110.70690'), ('WOODRUFF', None, '34.78148', '-110.04171')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'AZC011': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CLIFTON', 2596, '33.02350', '-109.29050'), ('DUNCAN', 812, '32.73630', '-109.09180'), ('MORENCI', 1879, '33.05300', '-109.32950')], 'partOfState': 'SOUTHEAST', 'wfo': 'TWC'}, -'AZC013': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AGUILA', None, '33.95000', '-113.17000'), ('ARLINGTON', None, '33.33000', '-112.70000'), ('AVONDALE', 35883, '33.42010', '-112.35000'), ('BEARDSLEY', None, '33.68000', '-112.39000'), ('BUCKEYE', 6537, '33.38000', '-112.60000'), ('CAREFREE', 2927, '33.82240', '-111.91840'), ('CASHION', None, '33.44000', '-112.32000'), ('CAVE CREEK', 3728, '33.82620', '-111.96520'), ('CHANDLER', 176581, '33.29500', '-111.86690'), ('CIRCLE CITY', None, '33.81600', '-112.58300'), ('EL MIRAGE', 7609, '33.59120', '-112.32400'), ('FOUNTAIN HILLS', 20235, '33.60540', '-111.74110'), ('GILA BEND', 1980, '32.95150', '-112.68480'), ('GILBERT', 109697, '33.33200', '-111.76420'), ('GLADDEN', None, '33.90000', '-113.30000'), ('GLENDALE', 218812, '33.58410', '-112.20160'), ('GOODYEAR', 18911, '33.42000', '-112.40000'), ('GUADALUPE', 5228, '33.36580', '-111.96170'), ('HASSAYAMPA', None, '33.35000', '-112.72000'), ('KOMATKE', None, '33.30620', '-112.17810'), ('LAVEEN', None, '33.42000', '-112.13000'), ('LIBERTY', None, '33.38000', '-112.49000'), ('LITCHFIELD PARK', 3810, '33.50250', '-112.35880'), ('LUKE AFB', None, '33.53310', '-112.37070'), ('MESA', 396375, '33.41770', '-111.74030'), ('MORRISTOWN', None, '33.85000', '-112.62000'), ('NEW RIVER', 10740, '33.92000', '-112.13000'), ('PALO VERDE', None, '33.35000', '-112.64000'), ('PARADISE VALLEY', 13664, '33.53930', '-111.95460'), ('PEORIA', 108364, '33.68850', '-112.24450'), ('PERRYVILLE', None, '33.43000', '-112.50000'), ('PHOENIX', 1321045, '33.54250', '-112.07140'), ('QUEEN CREEK', 4316, '33.24140', '-111.64320'), ('SCOTTSDALE', 202705, '33.68600', '-111.87050'), ('SENTINEL', None, '32.88000', '-113.22000'), ('SUN CITY', 38309, '33.61630', '-112.28180'), ('SUN CITY WEST', 26344, '33.66900', '-112.36910'), ('SUN LAKES', 11936, '33.21690', '-111.87010'), ('SUNFLOWER', None, '33.87000', '-111.47000'), ('SURPRISE', 30848, '33.65000', '-112.34000'), ('TEMPE', 158625, '33.38840', '-111.93060'), ('TOLLESON', 4974, '33.44880', '-112.25480'), ('TONOPAH', None, '33.50000', '-112.93000'), ('WADDELL', None, '33.59000', '-112.36000'), ('WICKENBURG', 5082, '33.96660', '-112.75440'), ('WINTERSBURG', None, '33.42000', '-112.87000'), ('WITTMANN', None, '33.78000', '-112.53000'), ('YOUNGTOWN', 3010, '33.58720', '-112.30300')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PSR'}, -'PAC083': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRADFORD', 9175, '41.96050', '-78.64020'), ('CORYVILLE', None, '41.88000', '-78.39000'), ('CROSBY', None, '41.75000', '-78.37000'), ('CYCLONE', None, '41.82000', '-78.58000'), ('ELDRED', 858, '41.95670', '-78.38100'), ('KANE', 4126, '41.66300', '-78.80930'), ('KINZUA BRIDGE SP', None, '41.75000', '-78.57000'), ('LEWIS RUN', 577, '41.87080', '-78.66070'), ('LUDLOW', None, '41.73000', '-78.95000'), ('MARSHBURG', None, '41.85000', '-78.77000'), ('MOUNT JEWETT', 1070, '41.72470', '-78.64400'), ('NORWICH', None, '41.67000', '-78.35000'), ('PORT ALLEGANY', 2355, '41.81360', '-78.27770'), ('REW', None, '41.90000', '-78.50000'), ('SMETHPORT', 1684, '41.80740', '-78.44430'), ('WESTLINE', None, '41.77000', '-78.75000'), ('WETMORE', None, '41.69000', '-78.86000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAC081': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BARBOURS', None, '41.40000', '-76.78000'), ('BIGGERTOWN', None, '41.26000', '-76.50000'), ('BUTTONWOOD', None, '41.49000', '-77.16000'), ('CAMMAL', None, '41.39000', '-77.39000'), ('CEDAR RUN', None, '41.52000', '-77.45000'), ('COGAN STATION', None, '41.31000', '-77.03000'), ('COLLOMSVILLE', None, '41.15000', '-77.15000'), ('DUBOISTOWN', 1280, '41.22310', '-77.03830'), ('ELIMSPORT', None, '41.13000', '-77.01000'), ('ENGLISH CENTER', None, '41.44000', '-77.25000'), ('GARDEN VIEW', 2679, '41.25650', '-77.04870'), ('HUGHESVILLE', 2220, '41.23850', '-76.72640'), ('JERSEY SHORE', 4482, '41.20070', '-77.26700'), ('LAIRDSVILLE', None, '41.23000', '-76.61000'), ('LITTLE PINE SP', None, '41.36000', '-77.33000'), ('LOYALSOCKVILLE', None, '41.32000', '-76.92000'), ('MONTGOMERY', 1695, '41.17090', '-76.87520'), ('MONTOURSVILLE', 4777, '41.24710', '-76.92000'), ('MUNCY', 2663, '41.20190', '-76.78590'), ('PICTURE ROCKS', 693, '41.28000', '-76.70920'), ('RALSTON', None, '41.50000', '-76.94000'), ('SALLADASBURG', 260, '41.27650', '-77.22760'), ('SLATE RUN', None, '41.47000', '-77.49000'), ('SOUTH WILLIAMSPORT', 6412, '41.22990', '-77.00130'), ('TROUT RUN', None, '41.39000', '-77.08000'), ('WATERVILLE', None, '41.32000', '-77.35000'), ('WILLIAMSPORT', 30706, '41.24000', '-77.02000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'MNC029': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALIDA', None, '47.38360', '-95.23440'), ('BAGLEY', 1235, '47.52340', '-95.40360'), ('BERNER', None, '47.80440', '-95.47280'), ('CLEARBROOK', 551, '47.69470', '-95.42830'), ('EBRO', None, '47.49560', '-95.52920'), ('GONVICK', 294, '47.73830', '-95.51250'), ('LAKE ITASCA', None, '47.25390', '-95.21220'), ('LEONARD', 29, '47.65240', '-95.26640'), ('LONG LOST LAKE', None, '47.19360', '-95.41810'), ('LOWER RICE LAKE', None, '47.34910', '-95.47210'), ('ROY LAKE', None, '47.32530', '-95.55140'), ('SHEVLIN', 160, '47.53070', '-95.25920'), ('UPPER RICE LAKE', None, '47.39370', '-95.29690'), ('WEME', None, '47.64420', '-95.53780'), ('ZERKEL', None, '47.31080', '-95.38140')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNC021': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BACKUS', 311, '46.82090', '-94.51410'), ('BENA', 110, '47.34110', '-94.20620'), ('BOY RIVER', 38, '47.16690', '-94.12250'), ('BREVIK', None, '47.08300', '-94.28880'), ('CASINO', None, '46.42700', '-94.54030'), ('CASS LAKE', 860, '47.37880', '-94.60060'), ('CHICKAMAW BEACH', 148, '46.74870', '-94.38980'), ('DAYS HIGH LANDING', None, '47.25230', '-93.80590'), ('EAST GULL LAKE', 978, '46.41080', '-94.35220'), ('ESTERDY', None, '46.47670', '-94.73260'), ('FEDERAL DAM', 101, '47.23850', '-94.21880'), ('HACKENSACK', 285, '46.92790', '-94.51860'), ('INGUADONA', None, '46.98360', '-94.13060'), ('LAKE SHORE', 966, '46.49530', '-94.36100'), ('LEADER', None, '46.51580', '-94.64970'), ('LONGVILLE', 180, '46.98670', '-94.21520'), ('OSHAWA', None, '46.80400', '-94.63890'), ('OUTING', None, '46.82060', '-93.94810'), ('PILLAGER', 420, '46.32690', '-94.47640'), ('PINE RIVER', 928, '46.72260', '-94.39830'), ('PONTORIA', None, '46.86340', '-94.33670'), ('POPLAR', None, '46.58670', '-94.69670'), ('REMER', 372, '47.05800', '-93.91370'), ('SCHLEY', None, '47.36890', '-94.41620'), ('SYLVAN', None, '46.33510', '-94.40680'), ('TOBIQUE', None, '47.11560', '-94.03980'), ('WABEDO', None, '46.92060', '-94.18810'), ('WALKER', 1069, '47.08980', '-94.57890'), ('WHIPHOLT', None, '47.04940', '-94.36610'), ('WILKINSON', None, '47.25090', '-94.62780')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'MNC023': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CLARA CITY', 1393, '44.95800', '-95.36600'), ('MAYNARD', 388, '44.90490', '-95.46720'), ('MILAN', 326, '45.11410', '-95.91350'), ('MONTEVIDEO', 5346, '44.95110', '-95.71850'), ('WATSON', 209, '45.01030', '-95.79990')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNC025': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BRANCH', None, '45.51460', '-92.95760'), ('CENTER CITY', 582, '45.39090', '-92.81810'), ('CHISAGO CITY', 2622, '45.37040', '-92.88800'), ('HARRIS', 1121, '45.60290', '-92.98910'), ('LINDSTROM', 3015, '45.38590', '-92.84040'), ('NORTH BRANCH', 8023, '45.51430', '-92.97840'), ('RUSH CITY', 2102, '45.68170', '-92.96580'), ('SHAFER', 343, '45.38770', '-92.74580'), ('STACY', 1278, '45.39790', '-92.98780'), ('TAYLORS FALLS', 951, '45.41140', '-92.66180'), ('WYOMING', 3048, '45.33360', '-92.99600')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'PAC111': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ACOSTA', None, '40.10000', '-79.04000'), ('ADDISON', 214, '39.74350', '-79.33530'), ('BENSON', 194, '40.20260', '-78.92940'), ('BERLIN', 2192, '39.92240', '-78.95250'), ('BOSWELL', 1364, '40.16080', '-79.02710'), ('CALLIMONT', 51, '39.79660', '-78.92050'), ('CASSELMAN', 99, '39.88540', '-79.21100'), ('CENTRAL CITY', 1258, '40.10970', '-78.80530'), ('CONFLUENCE', 834, '39.80950', '-79.35430'), ('DAVIDSVILLE', 1119, '40.23190', '-78.93690'), ('FRIEDENS', 1673, '40.04260', '-79.00530'), ('GARRETT', 449, '39.86420', '-79.06170'), ('HOOVERSVILLE', 779, '40.15040', '-78.91460'), ('INDIAN LAKE', 450, '40.04750', '-78.85950'), ('JENNERSTOWN', 714, '40.16440', '-79.06210'), ('JEROME', 1068, '40.21340', '-78.98390'), ('MEYERSDALE', 2473, '39.81310', '-79.02680'), ('MOUNT DAVIS', None, '39.79000', '-79.16000'), ('NEW BALTIMORE', 168, '39.98580', '-78.77200'), ('OGLETOWN', None, '40.19000', '-78.70000'), ('ROCKWOOD', 954, '39.91670', '-79.15710'), ('SALISBURY', 878, '39.75420', '-79.08460'), ('SEVEN SPRINGS', 127, '40.02510', '-79.29150'), ('SHANKSVILLE', 245, '40.01740', '-78.90690'), ('SOMERSET', 6762, '40.00500', '-79.07830'), ('STOYSTOWN', 428, '40.10340', '-78.95530'), ('TIRE HILL', None, '40.27000', '-78.92000'), ('WELLERSBURG', 176, '39.72780', '-78.84980'), ('WINDBER', 4395, '40.23380', '-78.82590')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAC113': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('DUSHORE', 663, '41.52530', '-76.39910'), ('EAGLES MERE', 153, '41.40970', '-76.58330'), ('FORKSVILLE', 147, '41.49090', '-76.60390'), ('KETTLE CREEK GORGE', None, '41.42000', '-76.69000'), ('LAPORTE', 290, '41.41860', '-76.49170'), ('LINCOLN FALLS', None, '41.51000', '-76.68000'), ('MUNCY VALLEY', None, '41.35000', '-76.60000'), ('RICKETTS GLEN SP', None, '41.35000', '-76.31000'), ('SHUNK', None, '41.56000', '-76.76000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAC115': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALFORD', None, '41.80000', '-75.78330'), ('ARARAT', None, '41.83330', '-75.51670'), ('AUBURN CENTER', None, '41.68330', '-76.03330'), ('BIRCHARDVILLE', None, '41.85000', '-76.01670'), ('BRACKNEY', None, '41.98330', '-75.91670'), ('BURNWOOD', None, '41.78330', '-75.51670'), ('CLIFFORD', None, '41.65000', '-75.60000'), ('DIMOCK', None, '41.75000', '-75.90000'), ('ELK LAKE', None, '41.75000', '-75.95000'), ('ELKDALE', None, '41.68330', '-75.56670'), ('FOREST CITY', 1855, '41.65160', '-75.46970'), ('FRIENDSVILLE', 91, '41.91790', '-76.04730'), ('GIBSON', None, '41.80000', '-75.65000'), ('GLENWOOD', None, '41.65000', '-75.73330'), ('GREAT BEND', 700, '41.97270', '-75.74560'), ('HALLSTEAD', 1216, '41.96190', '-75.74730'), ('HARFORD', None, '41.78330', '-75.70000'), ('HICKORY GROVE', None, '41.96670', '-75.68330'), ('HOP BOTTOM', 333, '41.70640', '-75.76720'), ('JACKSON', None, '41.83330', '-75.60000'), ('LAKESIDE', None, '41.88330', '-75.66670'), ('LAKEVIEW', None, '41.86670', '-75.61670'), ('LANESBORO', 588, '41.96230', '-75.58240'), ('LAWTON', None, '41.78330', '-76.06670'), ('LENOXVILLE', None, '41.66670', '-75.65000'), ('LITTLE MEADOWS', 290, '41.99310', '-76.13090'), ('MIDDLETOWN CENTER', None, '41.86670', '-76.10000'), ('MONTROSE', 1664, '41.83400', '-75.87690'), ('NEW MILFORD', 878, '41.87590', '-75.72690'), ('ROYAL', None, '41.66670', '-75.63330'), ('RUSH', None, '41.78330', '-76.05000'), ('SOUTH MONTROSE', None, '41.80000', '-75.88330'), ('SPRINGVILLE', None, '41.70000', '-75.93330'), ('SUSQUEHANNA', None, '41.93330', '-75.60000'), ('THOMPSON', 299, '41.86230', '-75.51390'), ('UNIONDALE', None, '41.71430', '-75.48390'), ('WEST AUBURN', None, '41.73330', '-76.10000'), ('WEST LENOX', None, '41.71670', '-75.70000'), ('WYOANNA', None, '41.93330', '-75.91670')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'PAC117': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLOSSBURG', 1480, '41.68290', '-77.06660'), ('COVINGTON', None, '41.74000', '-77.07000'), ('ELKLAND', 1786, '41.98920', '-77.31480'), ('GAINES', None, '41.78000', '-77.54000'), ('KEENEYVILLE', None, '41.86000', '-77.26000'), ('KNOXVILLE', 617, '41.95680', '-77.43580'), ('LAWRENCEVILLE', 627, '41.99910', '-77.12950'), ('LEETONIA', None, '41.62000', '-77.52000'), ('LEONARD HARRISON SP', None, '41.69000', '-77.41000'), ('MANSFIELD', 3411, '41.80570', '-77.07870'), ('MILLERTON', None, '41.98000', '-76.95000'), ('MORRIS', None, '41.65000', '-77.27000'), ('OGDENSBURG', None, '41.59000', '-76.96000'), ('ROSEVILLE', 207, '41.86540', '-76.95890'), ('TIOGA', 622, '41.90490', '-77.13540'), ('TIOGA JUNCTION', None, '41.95000', '-77.12000'), ('WELLSBORO', 3328, '41.74610', '-77.30290'), ('WESTFIELD', 1190, '41.91780', '-77.54060')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAC119': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALLENWOOD', None, '41.09000', '-76.90000'), ('FOREST HILL', None, '40.97000', '-77.01000'), ('HARTLETON', 260, '40.89940', '-77.15680'), ('LAURELTON CENTER', None, '40.93000', '-77.20000'), ('LEWISBURG', 5620, '40.96410', '-76.89050'), ('LINNTOWN', 1542, '40.95690', '-76.90090'), ('MIFFLINBURG', 3594, '40.92010', '-77.04710'), ('NEW BERLIN', 838, '40.88040', '-76.98530'), ('NEW COLUMBIA', None, '41.04000', '-76.88000'), ('R.B. WINTER SP', None, '40.99000', '-77.19000'), ('SAND BRIDGE SP', None, '40.98000', '-77.10000'), ('SPRUCE RUN RESERVIOR', None, '41.02000', '-77.00000'), ('VICKSBURG', None, '40.94000', '-76.98000'), ('WEIKERT', None, '40.86000', '-77.28000'), ('WINFIELD', None, '40.90000', '-76.87000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'NHC001': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALTON', None, '43.45220', '-71.21810'), ('BARNSTEAD', None, '43.33390', '-71.29330'), ('BELMONT', None, '43.44530', '-71.47830'), ('GILFORD', None, '43.54750', '-71.40720'), ('GILMANTON', None, '43.42420', '-71.41500'), ('MEREDITH', 1739, '43.65750', '-71.50080'), ('NEW HAMPTON', None, '43.60560', '-71.65470'), ('SANBORNTON', None, '43.48920', '-71.58280'), ('TILTON', None, '43.44220', '-71.58940'), ('TILTON-NORTHFIELD', 3231, '43.44340', '-71.59310')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'CAC099': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CERES', 34609, '37.59940', '-120.95620'), ('DENAIR', 3446, '37.52960', '-120.80010'), ('EUGENE', None, '37.89300', '-120.84580'), ('HUGHSON', 3980, '37.60100', '-120.86670'), ('KEYES', 4575, '37.56420', '-120.91740'), ('LA GRANGE', None, '37.66360', '-120.46250'), ('MODESTO', 188856, '37.65980', '-120.99390'), ('NEWMAN', 7093, '37.31510', '-121.02140'), ('OAKDALE', 15503, '37.76820', '-120.85180'), ('PATTERSON', 11606, '37.47430', '-121.12760'), ('RIVERBANK', 15826, '37.73280', '-120.94510'), ('SALIDA', 12560, '37.70840', '-121.08480'), ('TURLOCK', 55810, '37.50490', '-120.85040'), ('WATERFORD', 6924, '37.64560', '-120.76460')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'NHC003': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALBANY', None, '43.95780', '-71.16810'), ('BRIDGEWATER', None, '43.63830', '-71.23690'), ('BROOKFIELD', None, '43.55890', '-71.06580'), ('CENTER HARBOR', None, '43.70360', '-71.22640'), ('CHATHAM', None, '44.16440', '-71.01170'), ('CONWAY', 1692, '43.97920', '-71.12080'), ('CRAWFORD NOTCH', None, '44.16860', '-71.40500'), ('EATON', None, '43.90920', '-71.08420'), ('EFFINGHAM', None, '43.76110', '-70.99690'), ('FREEDOM', None, '43.81220', '-71.03610'), ('JACKSON', None, '44.14420', '-71.18140'), ('MADISON', None, '43.89920', '-71.14890'), ('MOULTONBOROUGH', None, '43.75470', '-71.39720'), ('NORTH CONWAY', 2069, '44.05380', '-71.12680'), ('OSSIPEE', None, '43.68530', '-71.11720'), ('SANDWICH', None, '43.79030', '-71.41170'), ('TAMWORTH', None, '43.85970', '-71.26360'), ('TUFTONBORO', None, '43.69640', '-71.22250'), ('WAKEFIELD', None, '43.56810', '-71.03060'), ('WOLFEBORO', 2979, '43.58390', '-71.20780')], 'partOfState': 'NORTHERN', 'wfo': 'GYX'}, -'VAC560': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CLIFTON FORGE CITY', None, '37.82350', '-79.82550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'NHC005': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALSTEAD', None, '43.15000', '-72.36667'), ('CHESTERFIELD', None, '42.88333', '-72.46667'), ('DUBLIN', None, '42.91667', '-72.06667'), ('FITZWILLIAM', None, '42.78333', '-72.15000'), ('GILSUM', None, '43.05000', '-72.26667'), ('HARRISVILLE', None, '42.95000', '-72.10000'), ('HINSDALE', 1713, '42.78820', '-72.48830'), ('JAFFREY', 2802, '42.81300', '-72.02480'), ('KEENE', 22563, '42.95000', '-72.29740'), ('MARLBOROUGH', 1089, '42.90390', '-72.21020'), ('MARLOW', None, '43.11667', '-72.20000'), ('NELSON', None, '42.98333', '-72.13333'), ('RICHMOND', None, '42.75000', '-72.28333'), ('RINDGE', None, '42.75000', '-72.01667'), ('ROXBURY', None, '42.93333', '-72.20000'), ('STODDARD', None, '43.08333', '-72.10000'), ('SULLIVAN', None, '43.01667', '-72.21667'), ('SURRY', None, '43.05000', '-72.33333'), ('SWANZEY', None, '42.86667', '-72.28333'), ('TROY', None, '42.83333', '-72.18333'), ('WALPOLE', None, '43.08333', '-72.43333'), ('WESTMORELAND', None, '42.96667', '-72.45000'), ('WINCHESTER', 1832, '42.77620', '-72.38470')], 'partOfState': 'SOUTHERN', 'wfo': 'BOX'}, -'NHC009': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ASHLAND', None, '43.69530', '-71.63110'), ('BATH', None, '44.16690', '-71.96670'), ('BENTON', None, '44.10310', '-71.90220'), ('BETHLEHEM', None, '44.28030', '-71.68860'), ('BRISTOL', 1670, '43.59110', '-71.73720'), ('CANAAN', None, '43.64750', '-72.01220'), ('DORCHESTER', None, '43.75670', '-71.94920'), ('EASTON', None, '44.14610', '-71.79060'), ('ELLSWORTH', None, '43.87390', '-71.73690'), ('ENFIELD', 1698, '43.64060', '-72.14440'), ('FRANCONIA', None, '44.22690', '-71.74830'), ('GRAFTON', None, '43.55860', '-71.94440'), ('GROTON', None, '43.70170', '-71.83610'), ('HANOVER', 8162, '43.70220', '-72.29000'), ('HAVERHILL', None, '44.03440', '-72.06440'), ('HEBRON', None, '43.69390', '-71.80610'), ('HOLDERNESS', None, '43.73190', '-71.58890'), ('LANDAFF CENTER', None, '44.17500', '-71.88750'), ('LEBANON', 12568, '43.64220', '-72.25220'), ('LINCOLN', None, '44.04560', '-71.67060'), ('LISBON', 1070, '44.21270', '-71.90900'), ('LITTLETON', 4431, '44.30610', '-71.77060'), ('LIVERMORE', None, '44.01830', '-71.45310'), ('LYME', None, '43.80940', '-72.15920'), ('ORANGE', None, '43.65440', '-71.97190'), ('PIERMONT', None, '43.96970', '-72.08110'), ('PLYMOUTH', 3528, '43.75690', '-71.68860'), ('RUMNEY', None, '43.80530', '-71.81310'), ('SUGAR HILL', None, '44.22170', '-71.80140'), ('THORNTON', None, '43.89280', '-71.67640'), ('WARREN', None, '43.92310', '-71.89250'), ('WATERVILLE VALLEY', None, '43.95000', '-71.50000'), ('WENTWORTH', None, '43.87170', '-71.91470'), ('WOODSTOCK', None, '43.97750', '-71.68560'), ('WOODSVILLE', 1081, '44.15220', '-72.03780')], 'partOfState': 'NORTHERN', 'wfo': 'GYX'}, -'CAC091': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALLEGHANY', None, '39.46970', '-120.84220'), ('BASSETTS', None, '39.61970', '-120.58640'), ('CALPINE', None, '39.67000', '-120.44000'), ('DOG VALLEY', None, '39.55000', '-120.04000'), ('DOWNIEVILLE', None, '39.55940', '-120.82660'), ('GIBSONVILLE', None, '39.74030', '-120.90780'), ('LOYALTON', 862, '39.67660', '-120.24340'), ('PIKE', None, '39.43920', '-120.99690'), ('SATTLEY', None, '39.62000', '-120.43000'), ('SIERRA CITY', None, '39.56580', '-120.63280'), ('SIERRAVILLE', None, '39.59000', '-120.37000'), ('STAMPEDE RESERVOIR', None, '39.48000', '-120.13000'), ('VERDI', None, '39.52000', '-120.00000')], 'partOfState': 'NORTHERN', 'wfo': 'REVSTO'}, -'CAC093': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BRAY', None, '41.64420', '-121.96970'), ('CALLAHAN', None, '41.30970', '-122.80030'), ('DORRIS', 886, '41.96520', '-121.92000'), ('DUNSMUIR', 1923, '41.23350', '-122.26990'), ('ETNA', 781, '41.45930', '-122.89280'), ('FORT JONES', 660, '41.60710', '-122.83980'), ('GAZELLE', 136, '41.52080', '-122.51920'), ('GREENVIEW', 200, '41.55080', '-122.90440'), ('GRENADA', 351, '41.64720', '-122.51890'), ('HAPPY CAMP', None, '41.79330', '-123.37830'), ('HILT', None, '41.99500', '-122.62220'), ('KLAMATH RIVER', None, '41.86140', '-122.82440'), ('MACDOEL', 140, '41.82690', '-122.00420'), ('MCCLOUD', 1343, '41.25480', '-122.13520'), ('MONTAGUE', 1456, '41.72750', '-122.52960'), ('MOUNT SHASTA', 3621, '41.32250', '-122.31470'), ('PONDOSA', None, '41.19940', '-121.68780'), ('SCOTT BAR', None, '41.74000', '-123.00000'), ('SEIAD VALLEY', None, '41.84060', '-123.19140'), ('SOMES BAR', None, '41.37640', '-123.47500'), ('TENNANT', 63, '41.58390', '-121.91220'), ('TULELAKE', 1020, '41.95420', '-121.47480'), ('WEED', 2978, '41.41650', '-122.37840'), ('YREKA', 7290, '41.72910', '-122.63150')], 'partOfState': 'NORTHERN', 'wfo': 'MFR'}, -'CAC095': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BENICIA', 26865, '38.07180', '-122.15410'), ('COLLINSVILLE', None, '38.07690', '-121.84890'), ('CORDELIA', None, '38.21050', '-122.13470'), ('CORDELIA JUNCTION', None, '38.21690', '-122.13860'), ('DENVERTON', None, '38.22470', '-121.89640'), ('DIXON', 16103, '38.44470', '-121.82370'), ('FAIRFIELD', 96178, '38.25250', '-122.04170'), ('LIBERTY FARMS', None, '38.31300', '-121.69330'), ('MONTEZUMA', None, '38.09050', '-121.87170'), ('RIO VISTA', 4571, '38.16510', '-121.69470'), ('ROCKVILLE', None, '38.24420', '-122.12110'), ('SUISUN CITY', 26118, '38.24570', '-122.00980'), ('VACAVILLE', 88625, '38.36230', '-121.96610'), ('VALLEJO', 116760, '38.10750', '-122.23330')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAC097': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BODEGA BAY', 1423, '38.32280', '-123.02980'), ('BOYES HOT SPRINGS', 6665, '38.31300', '-122.48500'), ('CLOVERDALE', 6831, '38.79970', '-123.01740'), ('COTATI', 6471, '38.32780', '-122.70950'), ('EL VERANO', 3954, '38.29770', '-122.48940'), ('ELDRIDGE', 1534, '38.33520', '-122.50690'), ('FETTERS HOT SPRINGS-AGUA', None, '38.32230', '-122.47980'), ('FORESTVILLE', 2370, '38.48110', '-122.88860'), ('GLEN ELLEN', 992, '38.35580', '-122.53840'), ('GRATON', 1815, '38.43770', '-122.86530'), ('GUERNEVILLE', 2441, '38.50810', '-122.98490'), ('HEALDSBURG', 10722, '38.61850', '-122.86280'), ('LARKFIELD-WIKIUP', 7479, '38.51340', '-122.75250'), ('MONTE RIO', 1104, '38.46530', '-123.01230'), ('OCCIDENTAL', 1272, '38.39540', '-122.93790'), ('PETALUMA', 54548, '38.24110', '-122.62550'), ('ROHNERT PARK', 42236, '38.34780', '-122.69770'), ('ROSELAND', 6369, '38.42150', '-122.72490'), ('SANTA ROSA', 147595, '38.44860', '-122.70080'), ('SEBASTOPOL', 7774, '38.39930', '-122.82590'), ('SONOMA', 9128, '38.29030', '-122.45930'), ('SOUTH SANTA ROSA', None, '38.40490', '-122.72640'), ('TEMELEC', 1556, '38.25630', '-122.50330'), ('WINDSOR', 22744, '38.54570', '-122.79780')], 'partOfState': '', 'wfo': 'MTR'}, -'MSC089': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CANTON', 12911, '32.61070', '-90.03110'), ('FLORA', 1546, '32.54740', '-90.31200'), ('MADISON', 14692, '32.45340', '-90.10850'), ('RIDGELAND', 20173, '32.42180', '-90.13120')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'WVC029': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('EMPIRE', 300, '40.51100', '-80.62500'), ('STRATTON', 277, '40.52490', '-80.63040'), ('TORONTO', 5676, '40.45890', '-80.60630'), ('CHESTER', 2592, '40.61220', '-80.56380'), ('NEW CUMBERLAND', 1099, '40.49600', '-80.60710'), ('NEWELL', 1602, '40.61750', '-80.60110')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'MSC083': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('GREENWOOD', 18425, '33.51780', '-90.19160'), ('ITTA BENA', 2208, '33.49970', '-90.32500'), ('MORGAN CITY', 305, '33.37890', '-90.34730'), ('SCHLATER', 388, '33.63910', '-90.34940'), ('SIDON', 672, '33.40740', '-90.20820')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'WVC027': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BLOOMERY', None, '39.38690', '-78.37330'), ('CAPON BRIDGE', 200, '39.29780', '-78.43550'), ('CAPON SPRINGS', None, '39.13610', '-78.48470'), ('DELRAY', None, '39.19440', '-78.60440'), ('FRENCHBURG', None, '39.31530', '-78.66080'), ('HIGGINSVILLE', None, '39.41810', '-78.58000'), ('HIGH VIEW', None, '39.23060', '-78.40860'), ('LEHEW', None, '39.19920', '-78.43830'), ('LEVELS', None, '39.48440', '-78.55390'), ('POINTS', None, '39.44000', '-78.61060'), ('PURGITSVILLE', None, '39.23920', '-78.92140'), ('ROMNEY', 1940, '39.34610', '-78.75550'), ('SLANESVILLE', None, '39.37310', '-78.52310'), ('SPRINGFIELD', None, '39.45060', '-78.69390'), ('THREE CHURCHES', None, '39.40080', '-78.65440'), ('WAPOCOMO', None, '39.39500', '-78.73500')], 'partOfState': '', 'wfo': 'LWX'}, -'MSC081': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BALDWYN', 3321, '34.50300', '-88.63370'), ('BLAIR', None, '34.45000', '-88.73330'), ('GUNTOWN', 1183, '34.44490', '-88.66300'), ('PLANTERSVILLE', 1144, '34.21150', '-88.66580'), ('PRATTS FRIENDSHIP', None, '34.45000', '-88.58330'), ('SALTILLO', 3393, '34.38330', '-88.68910'), ('SHANNON', 1657, '34.11370', '-88.69420'), ('TUPELO', 34211, '34.26350', '-88.73200'), ('VERONA', 3334, '34.19020', '-88.71910')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'INC049': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AKRON', 1076, '41.03880', '-86.02480'), ('FULTON', 326, '40.94650', '-86.26400'), ('KEWANNA', 614, '41.01910', '-86.41270'), ('ROCHESTER', 6414, '41.06150', '-86.19550')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'MSC087': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ARTESIA', 498, '33.41700', '-88.64290'), ('CALEDONIA', 1015, '33.68340', '-88.32600'), ('COLUMBUS', 25944, '33.50500', '-88.40420'), ('COLUMBUS AFB', 2060, '33.63450', '-88.44980'), ('CRAWFORD', 655, '33.30270', '-88.62340'), ('NEW HOPE', 1964, '33.44650', '-88.32490')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'WVC023': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BAYARD', 299, '39.27180', '-79.36690'), ('BEECHWOOD', None, '39.20000', '-79.46830'), ('BISMARCK', None, '39.21780', '-79.23330'), ('CABINS', None, '38.99890', '-79.20560'), ('KLINE GAP', None, '39.07220', '-79.19280'), ('LAHMANSVILLE', None, '39.12810', '-79.08170'), ('LANDES', None, '38.89670', '-79.19810'), ('MARTIN', None, '39.22420', '-79.08920'), ('MASONVILLE', None, '38.91860', '-79.08390'), ('MAYSVILLE', None, '39.11500', '-79.16500'), ('MEDLEY', None, '39.17610', '-79.05810'), ('MOUNT PISGAH', None, '39.28970', '-79.17170'), ('MOUNT STORM', None, '39.27720', '-79.24110'), ('PETERSBURG', 2423, '38.99630', '-79.12820'), ('SCHERR', None, '39.20000', '-79.17000'), ('SEYMOURVILLE', None, '39.05690', '-79.10920'), ('STREBY', None, '39.08030', '-79.23970'), ('WELTON', None, '39.00170', '-79.08530'), ('WILSONIA', None, '39.20610', '-79.44970')], 'partOfState': '', 'wfo': 'LWX'}, -'MSC085': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOGUE CHITTO', 533, '31.43270', '-90.45080'), ('BROOKHAVEN', 9861, '31.58340', '-90.44530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'WVC021': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CEDAR CREEK STATE PARK', None, '38.88090', '-80.86240'), ('GLENVILLE', 1544, '38.93840', '-80.83340'), ('SAND FORK', 176, '38.91520', '-80.74880')], 'partOfState': '', 'wfo': 'RLX'}, -'TXC371': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAKERSFIELD', None, '30.89000', '-102.30000'), ('BELDING', None, '30.79000', '-103.03000'), ('COYANOSA', 138, '31.24000', '-103.07000'), ('FORT STOCKTON', 7846, '30.89120', '-102.88570'), ('GIRVIN', None, '31.07000', '-102.39000'), ('HOVEY', None, '30.60470', '-103.34690'), ('IMPERIAL', 428, '31.27000', '-102.69000'), ('IRAAN', 1238, '30.91230', '-101.89940'), ('LONGFELLOW', None, '30.16000', '-102.64000'), ('SHEFFIELD', None, '30.69000', '-101.82000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXC373': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CORRIGAN', 1721, '30.99950', '-94.82440'), ('GOODRICH', 243, '30.60960', '-94.94510'), ('LIVINGSTON', 5433, '30.70940', '-94.93610'), ('ONALASKA', 1174, '30.80880', '-95.10590'), ('SEVEN OAKS', 131, '30.85340', '-94.85620')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'KSC075': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('COOLIDGE', 86, '38.04090', '-102.00740'), ('KENDALL', None, '37.94000', '-101.54000'), ('SYRACUSE', 1824, '37.98110', '-101.75140')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'TXC375': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AMARILLO', 173627, '35.20260', '-101.81870'), ('BUSHLAND', None, '35.19000', '-102.06270'), ('VALLEY DE ORO', None, '35.45170', '-102.10600')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC377': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADOBES', None, '29.77000', '-104.56000'), ('BIG BEND RANCH STATE PARK', None, '29.46670', '-103.95000'), ('CANDELARIA', None, '30.14000', '-104.68000'), ('CASA PIEDRA', None, '29.74000', '-104.06000'), ('MARFA', 2121, '30.31040', '-104.02490'), ('OCHOA', None, '29.67000', '-104.50000'), ('PAISANO PASS', None, '30.28970', '-103.79190'), ('PRESIDIO', 4167, '29.56110', '-104.36370'), ('REDFORD', 132, '29.45000', '-104.19000'), ('RUIDOSA', None, '29.98000', '-104.68000'), ('RYAN', None, '30.43000', '-104.30000'), ('SHAFTER', None, '29.82000', '-104.30000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'INC047': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROOKVILLE', 2652, '39.42360', '-85.00840'), ('CEDAR GROVE', 185, '39.35570', '-84.93700'), ('LAUREL', 579, '39.50160', '-85.18840'), ('MOUNT CARMEL', 106, '39.40750', '-84.87570'), ('OLDENBURG', 647, '39.33850', '-85.20300')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILN'}, -'TXC379': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EAST TAWAKONI', 775, '32.89770', '-95.93360'), ('EMORY', 1021, '32.87570', '-95.76880'), ('POINT', 792, '32.93010', '-95.87010')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'PRC049': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CULEBRA', 1418, '18.31320', '-65.30570')], 'partOfState': '', 'wfo': 'SJU'}, -'KSC029': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AURORA', 79, '39.45200', '-97.52700'), ('CLYDE', 740, '39.59110', '-97.39860'), ('CONCORDIA', 5714, '39.57080', '-97.66220'), ('GLASCO', 536, '39.35670', '-97.84080'), ('JAMESTOWN', 399, '39.59950', '-97.86080'), ('MILTONVALE', 523, '39.34830', '-97.44580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'INC045': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ATTICA', 3491, '40.28760', '-87.24640'), ('COVINGTON', 2565, '40.13990', '-87.39120'), ('HILLSBORO', 489, '40.10950', '-87.15710'), ('KINGMAN', 538, '39.96580', '-87.27830'), ('MELLOTT', 207, '40.16390', '-87.14920'), ('NEWTOWN', 162, '40.20440', '-87.14790'), ('VEEDERSBURG', 2299, '40.11270', '-87.25920'), ('WALLACE', 100, '39.98780', '-87.14770')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'FLC089': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AMELIA CITY', None, '30.59000', '-81.45750'), ('BRYCEVILLE', None, '30.38450', '-81.93900'), ('CALLAHAN', 962, '30.56140', '-81.83260'), ('FERNANDINA BEACH', 10549, '30.65770', '-81.44920'), ('HILLIARD', 2702, '30.69490', '-81.92270'), ('NASSAU VILLAGE-RATLIFF', 4667, '30.50210', '-81.81470'), ('YULEE', 8392, '30.63270', '-81.57390')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'GAC223': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BRASWELL', 80, '33.98310', '-84.96650'), ('DALLAS', 5056, '33.91930', '-84.83190'), ('HIRAM', 1361, '33.86550', '-84.77470')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'FLC087': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAHIA HONDA KEY', None, '24.66000', '-81.26000'), ('BIG COPPITT KEY', 2595, '24.59620', '-81.66030'), ('BIG PINE KEY', 5032, '24.68690', '-81.36610'), ('BIG TORCH KEY', None, '24.73000', '-81.44000'), ('BOCA CHICA', None, '24.59000', '-81.70000'), ('CHOKOLOSKEE', 404, '25.80000', '-81.36000'), ('CRAIG KEY', None, '24.84000', '-80.76000'), ('CUDJOE KEY', 1695, '24.67100', '-81.49850'), ('DUCK KEY', 443, '24.77000', '-80.90000'), ('FLAMINGO', None, '25.15000', '-80.94000'), ('ISLAMORADA', None, '24.91830', '-80.63570'), ('KEY COLONY BEACH', 788, '24.72260', '-81.02330'), ('KEY LARGO', 11886, '25.10610', '-80.44130'), ('KEY WEST', 25478, '24.56280', '-81.77520'), ('LAYTON', 186, '24.82220', '-80.81170'), ('LITTLE TORCH KEY', None, '24.67000', '-81.39000'), ('LOOP ROAD EE CENTER', None, '25.75000', '-80.97000'), ('LOWER MATECUMBE KEY', None, '24.86000', '-80.72000'), ('MARATHON', 10255, '24.71190', '-81.08080'), ('MIDDLE CAPE SABLE', None, '25.17000', '-81.14000'), ('NO NAME KEY', None, '24.70000', '-81.32000'), ('NORTH KEY LARGO', 1049, '25.26680', '-80.32360'), ('NORTHWEST CAPE SABLE', None, '25.24000', '-81.17000'), ('OCEAN REEF', None, '25.32000', '-80.28000'), ('PINECREST', 19055, '25.75000', '-80.94000'), ('RAMROD KEY', None, '24.66000', '-81.41000'), ('ROCK HARBOR', None, '25.08000', '-80.46000'), ('ROUTE 1/CARD SOUND ROAD S', None, '25.17000', '-80.37000'), ('SUGARLOAF KEY', None, '24.63000', '-81.55000'), ('SUMMERLAND KEY', None, '24.66000', '-81.45000'), ('UPPER SUGARLOAF KEY', None, '24.68000', '-81.54000'), ('WILDERNESS WATERWAY NORTH', None, '25.65000', '-81.16000'), ('WILDERNESS WATERWAY SOUTH', None, '25.44000', '-81.06000'), ('WINDLEY KEY', None, '24.95000', '-80.60000')], 'partOfState': '', 'wfo': 'KEY'}, -'FLC086': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AVENTURA', 25267, '25.96000', '-80.14000'), ('CAROL CITY', 59443, '25.94000', '-80.26000'), ('CORAL GABLES', 42249, '25.73000', '-80.27000'), ('CORAL WAY VILLAGE', None, '25.73000', '-80.32000'), ('COUNTRY WALK', 10653, '25.63000', '-80.43000'), ('CUTLER RIDGE', 24781, '25.60000', '-80.36000'), ('DORAL', 20438, '25.84000', '-80.36000'), ('FLORIDA CITY', 7843, '25.45500', '-80.48000'), ('FORTYMILE BEND', None, '25.76000', '-80.83000'), ('GOULDS', 7453, '25.56000', '-80.40000'), ('HIALEAH', 226419, '25.86000', '-80.29000'), ('HIALEAH GARDENS', 19297, '25.87000', '-80.34000'), ('HOMESTEAD', 31909, '25.47500', '-80.47000'), ('HOWARD', None, '25.64000', '-80.35000'), ('INLIKITA', None, '25.60000', '-80.47000'), ('KENDALL', 75226, '25.68000', '-80.32000'), ('KENDALL LAKES', None, '25.71000', '-80.42000'), ('KEY BISCAYNE', 10507, '25.69000', '-80.16000'), ('LIBERTY CITY', None, '25.83000', '-80.22000'), ('MAHOGANY HAMMOCK', None, '25.34000', '-80.84000'), ('MEDLEY', 1098, '25.87000', '-80.36000'), ('MIAMI', 362470, '25.77000', '-80.20000'), ('MIAMI BEACH', 87933, '25.81000', '-80.13000'), ('MIAMI INTERNATIONAL AIRPO', None, '25.80000', '-80.29000'), ('MIAMI LAKES', 22676, '25.91000', '-80.31000'), ('MIAMI SHORES', 10380, '25.86500', '-80.19000'), ('MIAMI SPRINGS', 13712, '25.82000', '-80.29000'), ('NARANJA', 4034, '25.52000', '-80.43000'), ('NORTH MIAMI', 59880, '25.89400', '-80.18000'), ('NORTH MIAMI BEACH', 40786, '25.93000', '-80.16000'), ('OPA-LOCKA', 14951, '25.90000', '-80.26000'), ('PA-HAY OKEE OVERLOOK', None, '25.43000', '-80.79000'), ('PENNSUCO', None, '25.90000', '-80.38000'), ('PERRINE', None, '25.62000', '-80.31000'), ('PRINCETON', 10090, '25.52000', '-80.38000'), ('REDLAND', None, '25.52000', '-80.51000'), ('ROYAL PALM RANGER STATION', None, '25.39000', '-80.61000'), ('SHARK VALLEY OBS TOWER', None, '25.66000', '-80.77000'), ('SOUTH MIAMI', 10741, '25.71000', '-80.30000'), ('SWEETWATER', 14226, '25.76500', '-80.37000'), ('WESTWOOD LAKES', 12005, '25.72000', '-80.37000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'KSC027': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CLAY CENTER', 4564, '39.37700', '-97.12440'), ('GREEN', 147, '39.42780', '-97.00170'), ('IDANA', None, '39.35750', '-97.26390'), ('LONGFORD', 94, '39.17000', '-97.33110'), ('MORGANVILLE', 198, '39.46640', '-97.20170'), ('OAK HILL', 35, '39.24830', '-97.34110'), ('VINING', 58, '39.56000', '-97.29500'), ('WAKEFIELD', 838, '39.21330', '-97.00530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'KSC025': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ACRES', None, '37.10000', '-99.88000'), ('ASHLAND', 975, '37.18680', '-99.76890'), ('CLARK STATE LAKE', None, '37.39000', '-99.78000'), ('ENGLEWOOD', 109, '37.03970', '-99.98540'), ('MINNEOLA', 717, '37.44270', '-100.01260'), ('SITKA', None, '37.17000', '-99.65000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'INC043': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('EDWARDSVILLE', None, '38.28330', '-85.90000'), ('FLOYDS KNOBS', None, '38.31670', '-85.86670'), ('GALENA', 1831, '38.35030', '-85.93940'), ('GEORGETOWN', 4497, '38.30000', '-85.96670'), ('GREENVILLE', 591, '38.37110', '-85.98460'), ('NAVILLETON', None, '38.38330', '-85.93330'), ('NEW ALBANY', 37603, '38.30400', '-85.82580'), ('SCOTTSVILLE', None, '38.39000', '-85.91670'), ('ST. JOSEPH', None, '38.39000', '-85.82000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'VAC685': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('MANASSAS PARK', 10290, '38.77330', '-77.45210')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAC683': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('MANASSAS', 35135, '38.74740', '-77.48540')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAC680': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('LYNCHBURG CITY', None, '37.41670', '-79.15000'), ('MADISON HEIGHTS', 11584, '37.41670', '-79.13330')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'INC041': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CONNERSVILLE', 15411, '39.65570', '-85.14070'), ('GLENWOOD', 318, '39.62650', '-85.30130')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILN'}, -'PRC041': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CIDRA', 4881, '18.17920', '-66.15920'), ('PARCELAS LA MILAGROSA', 1344, '18.17270', '-66.18850'), ('PARCELAS NUEVAS', 1628, '18.14220', '-66.17270')], 'partOfState': '', 'wfo': 'SJU'}, -'KSC099': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALTAMONT', 1092, '37.19150', '-95.29470'), ('ANGOLA', None, '37.10000', '-95.47000'), ('BARTLETT', 124, '37.05490', '-95.21130'), ('CHETOPA', 1281, '37.03630', '-95.09330'), ('DENNIS', None, '37.35000', '-95.42000'), ('EDNA', 423, '37.05850', '-95.35830'), ('LABETTE', 68, '37.23030', '-95.18350'), ('MOUND VALLEY', 418, '37.20720', '-95.40400'), ('OSWEGO', 2046, '37.16760', '-95.11180'), ('PARSONS', 11514, '37.33900', '-95.26790'), ('PARSONS TRI CITY ARPT', None, '37.33330', '-95.51670')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'KSC117': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AXTELL', 445, '39.87170', '-96.25860'), ('BEATTIE', 277, '39.86110', '-96.41940'), ('BLUE RAPIDS', 1088, '39.68200', '-96.65950'), ('FRANKFORT', 855, '39.70560', '-96.41670'), ('LILLIS', None, '39.60970', '-96.29580'), ('MARYSVILLE', 3271, '39.84110', '-96.64690'), ('OKETO', 87, '39.96360', '-96.59940'), ('SUMMERFIELD', 211, '39.98720', '-96.35000'), ('VERMILLION', 107, '39.71940', '-96.26560'), ('WATERVILLE', 681, '39.69110', '-96.74720')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'TNC163': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BLOOMINGDALE', 10350, '36.57830', '-82.50840'), ('BLOUNTVILLE', 2959, '36.53310', '-82.32730'), ('BLUFF CITY', 1559, '36.46370', '-82.27420'), ('BRISTOL TN', None, '36.56780', '-82.19740'), ('COLONIAL HEIGHTS', 7067, '36.47960', '-82.51180'), ('HARR', None, '36.58560', '-81.99470'), ('KINGSPORT', 44905, '36.52960', '-82.55690'), ('SOUTH HOLSTON DAM', None, '36.52440', '-82.08940'), ('SULLIVAN GARDENS', None, '36.47720', '-82.59670'), ('TRI-CITY AIRPORT', None, '36.48000', '-82.40000')], 'partOfState': '', 'wfo': 'MRX'}, -'GAC315': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ABBEVILLE', 2298, '31.99240', '-83.30650'), ('PINEVIEW', 532, '32.10830', '-83.50220'), ('PITTS', 308, '31.94610', '-83.54170'), ('ROCHELLE', 1415, '31.94880', '-83.45720')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TNC161': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CUMBERLAND CITY', 316, '36.38220', '-87.64400'), ('DOVER', 1442, '36.48140', '-87.84370')], 'partOfState': '', 'wfo': 'OHX'}, -'GAC313': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COHUTTA', 582, '34.95490', '-84.95450'), ('DALTON', 27912, '34.76900', '-84.97590'), ('TUNNEL HILL', 1209, '34.84580', '-85.04300'), ('VARNELL', 1491, '34.90200', '-84.97030')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'TNC167': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ATOKA', 3235, '35.44520', '-89.77270'), ('BRIGHTON', 1719, '35.47980', '-89.73900'), ('BURLISON', 453, '35.55870', '-89.78540'), ('COVINGTON', 8463, '35.56710', '-89.64940'), ('DIXONVILLE', None, '35.43330', '-89.73330'), ('GARLAND', 309, '35.58650', '-89.75200'), ('GILT EDGE', 489, '35.53280', '-89.83070'), ('MASON', 1089, '35.41320', '-89.53660'), ('MUNFORD', 4708, '35.44980', '-89.80420')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'KSC111': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ADMIRE', 177, '38.64110', '-96.10280'), ('ALLEN', 211, '38.65610', '-96.16940'), ('AMERICUS', 938, '38.50690', '-96.26170'), ('BUSHONG', 55, '38.64310', '-96.25690'), ('EMPORIA', 26760, '38.40390', '-96.18140'), ('HARTFORD', 500, '38.30830', '-95.95560'), ('NEOSHO RAPIDS', 274, '38.36950', '-95.99170'), ('OLPE', 504, '38.26250', '-96.16670'), ('READING', 247, '38.52000', '-95.95000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'TNC165': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GALLATIN', 23230, '36.37870', '-86.45310'), ('HENDERSONVILLE', 40620, '36.29400', '-86.60350'), ('MILLERSVILLE', 5308, '36.38180', '-86.70130'), ('MITCHELLVILLE', 207, '36.63270', '-86.53920'), ('PORTLAND', 8458, '36.58590', '-86.51660'), ('WESTMORELAND', 2093, '36.56380', '-86.24690')], 'partOfState': '', 'wfo': 'OHX'}, -'WIC015': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRILLION', 2937, '44.18000', '-88.06000'), ('BROTHERTOWN', None, '43.96000', '-88.30000'), ('CENTRAL LAKE WINNEBAGO', None, '44.08000', '-88.40000'), ('CHARLESBURG', None, '43.96000', '-88.16000'), ('CHILTON', 3708, '44.03000', '-88.16000'), ('DARBOY', None, '44.23000', '-88.38000'), ('DUNDAS', None, '44.23000', '-88.19000'), ('FOREST JUNCTION', None, '44.21000', '-88.15000'), ('HAYTON', None, '44.01000', '-88.11000'), ('HIGH CLIFF STATE PARK', None, '44.16000', '-88.28000'), ('HILBERT', 1089, '44.13000', '-88.16000'), ('JERICHO', None, '43.96000', '-88.26000'), ('NEW HOLSTEIN', 3301, '43.95000', '-88.08000'), ('POTTER', 223, '44.11000', '-88.09000'), ('QUINNEY', None, '44.01000', '-88.30000'), ('ST ANNA', None, '43.90000', '-88.13000'), ('ST JOHN', None, '44.16000', '-88.19000'), ('STOCKBRIDGE', 649, '44.06000', '-88.30000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GRB'}, -'TNC169': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('HARTSVILLE', 2395, '36.39000', '-86.15960')], 'partOfState': '', 'wfo': 'OHX'}, -'GAC319': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALLENTOWN', 287, '32.59390', '-83.22600'), ('GORDON', 2152, '32.88570', '-83.33550'), ('IRWINTON', 587, '32.81140', '-83.17470'), ('IVEY', 1100, '32.90790', '-83.29870'), ('MCINTYRE', 718, '32.84690', '-83.19480'), ('TOOMSBORO', 622, '32.82210', '-83.08110')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'NDC067': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AKRA', None, '48.77530', '-97.72670'), ('BACKOO', None, '48.83660', '-97.71000'), ('BATHGATE', 66, '48.88060', '-97.47290'), ('BOWESMONT', None, '48.69000', '-97.17770'), ('CAVALIER', 1537, '48.79530', '-97.62430'), ('CONCRETE', None, '48.74550', '-97.93330'), ('CRYSTAL', 167, '48.59850', '-97.66840'), ('DRAYTON', 913, '48.56460', '-97.17960'), ('GARDAR', None, '48.58910', '-97.86360'), ('GLASSTON', None, '48.70580', '-97.44720'), ('HAMILTON', 73, '48.80810', '-97.45160'), ('HENSEL', None, '48.68830', '-97.66610'), ('JOLIETTE', None, '48.81810', '-97.22680'), ('LEROY', None, '48.92340', '-97.75220'), ('MOUNTAIN', 133, '48.68350', '-97.86340'), ('NECHE', 437, '48.98200', '-97.55090'), ('PEMBINA', 642, '48.96800', '-97.24570'), ('ST. THOMAS', 447, '48.62020', '-97.44690'), ('WALHALLA', 1057, '48.92120', '-97.91670')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NCC107': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('KINSTON', 23688, '35.27540', '-77.59030'), ('LA GRANGE', 2844, '35.30590', '-77.78840'), ('PINK HILL', 521, '35.05640', '-77.74480')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC105': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BROADWAY', 1015, '35.45710', '-79.05360'), ('CUMNOCK', None, '35.54000', '-79.23000'), ('GUM SPRINGS', None, '35.46000', '-79.22000'), ('LEMON SPRINGS', None, '35.38000', '-79.20000'), ('SANFORD', 23220, '35.47700', '-79.18130'), ('TRAMWAY', None, '35.43000', '-79.23000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC103': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('MAYSVILLE', 1002, '34.90370', '-77.23090'), ('POLLOCKSVILLE', 269, '35.00700', '-77.22130'), ('TRENTON', 206, '35.06300', '-77.35500')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC101': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BENSON', 2923, '35.37990', '-78.54700'), ('CLAYTON', 6973, '35.64700', '-78.45830'), ('COATS CROSSROADS', None, '35.52000', '-78.55000'), ('EMIT', None, '35.73000', '-78.27000'), ('FLOWERS', None, '35.65000', '-78.35000'), ('FOUR OAKS', 1424, '35.44770', '-78.42500'), ('KENLY', 1569, '35.59340', '-78.12530'), ('LINWOOD', None, '35.75000', '-78.31660'), ('MICRO', 454, '35.56260', '-78.20420'), ('PINE LEVEL', 1313, '35.51000', '-78.24620'), ('PRINCETON', 1066, '35.46550', '-78.16040'), ('SELMA', 5914, '35.53680', '-78.28870'), ('SMITHFIELD', 11510, '35.50730', '-78.34410')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'GAC177': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARMENA', None, '31.67960', '-84.28450'), ('BYNE CROSSROADS', None, '31.69770', '-84.21970'), ('CENTURY', None, '31.67620', '-84.16290'), ('CHOKEE', None, '31.89090', '-84.04930'), ('EAGLE POND', None, '31.85640', '-84.23220'), ('FORRESTER', None, '31.64870', '-84.16290'), ('JORDAN PLACE', None, '31.75510', '-84.20850'), ('LEESBURG', 2633, '31.73390', '-84.17020'), ('MOSSY DELL', None, '31.75930', '-84.11290'), ('NEYAMI', None, '31.82320', '-84.21530'), ('OAKLAND', None, '31.67350', '-84.26000'), ('PALMYRA', None, '31.63700', '-84.19450'), ('PHILEMA', None, '31.75250', '-84.01710'), ('SCRUTCHINS', None, '31.86290', '-84.19690'), ('SMITHVILLE', 774, '31.90190', '-84.25540'), ('STARKSVILLE', None, '31.77070', '-84.14570')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAC175': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CADWELL', 329, '32.34020', '-83.04260'), ('DEXTER', 509, '32.43300', '-83.06000'), ('DUBLIN', 15857, '32.53830', '-82.92160'), ('DUDLEY', 447, '32.53280', '-83.08070'), ('EAST DUBLIN', 2484, '32.55070', '-82.86880'), ('MONTROSE', 154, '32.56030', '-83.15430'), ('RENTZ', 304, '32.38390', '-82.99180')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAC173': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COURTHOUSE', None, '31.08470', '-83.02100'), ('GREENWOOD', None, '30.93750', '-82.97430'), ('LAKELAND', 2730, '31.04070', '-83.07490'), ('STOCKTON', None, '30.93850', '-83.00120'), ('TEETERVILLE', None, '31.11250', '-83.14430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'NCC109': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BOGER CITY', 554, '35.47940', '-81.20220'), ('CROUSE', None, '35.42080', '-81.30560'), ('DENVER', None, '35.53110', '-81.03000'), ('IRON STATION', None, '35.44140', '-81.15640'), ('LINCOLNTON', 9965, '35.47580', '-81.24550'), ('LOWESVILLE', 1440, '35.42120', '-81.00260'), ('VALE', None, '35.53970', '-81.39750')], 'partOfState': '', 'wfo': 'GSP'}, -'NDC089': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BELFIELD', 866, '46.88690', '-103.19540'), ('DICKINSON', 16010, '46.88610', '-102.78270'), ('GLADSTONE', 248, '46.86000', '-102.56740'), ('LEFOR', None, '46.68330', '-102.55000'), ('RICHARDTON', 619, '46.88460', '-102.31500'), ('SOUTH HEART', 307, '46.86390', '-102.99180'), ('TAYLOR', 150, '46.90210', '-102.42240')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDC085': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BREIEN', None, '46.38330', '-100.93330'), ('CANNON BALL', 864, '46.31250', '-100.63210'), ('FORT YATES', 228, '46.08700', '-100.62980'), ('SELFRIDGE', 223, '46.04200', '-100.92430'), ('SOLEN', 86, '46.38870', '-100.79540')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDC087': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AMIDON', 26, '46.48210', '-103.31880'), ('MARMARTH', 140, '46.29590', '-103.93390')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDC081': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BRAMPTON', None, '45.99470', '-97.77580'), ('CAYUGA', 61, '46.07580', '-97.38340'), ('COGSWELL', 165, '46.10710', '-97.78400'), ('CRETE', None, '46.20030', '-97.96250'), ('DE LAMERE', None, '46.26720', '-97.33470'), ('FORMAN', 506, '46.10520', '-97.63690'), ('GENESEO', None, '46.07390', '-97.27830'), ('GWINNER', 717, '46.22420', '-97.65850'), ('HAMLIN', None, '46.16610', '-97.28470'), ('HAVANA', 94, '45.95070', '-97.61770'), ('MILNOR', 711, '46.26080', '-97.45660'), ('RUTLAND', 220, '46.05380', '-97.50790'), ('STIRUM', None, '46.21030', '-97.80610'), ('STRAUBVILLE', None, '46.04390', '-97.89970')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'NDC069': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BALTA', 73, '48.16620', '-100.03720'), ('BARTON', None, '48.50590', '-100.17810'), ('ORRIN', None, '48.08330', '-100.16670'), ('RUGBY', 2939, '48.36710', '-99.99100'), ('SILVA', None, '48.16670', '-99.91670'), ('WOLFORD', 50, '48.49780', '-99.70450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDC083': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('DENHOFF', None, '47.48330', '-100.26670'), ('GOODRICH', 163, '47.47610', '-100.12470'), ('MARTIN', 96, '47.82670', '-100.11420'), ('MCCLUSKY', 415, '47.48430', '-100.44170')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'MSC065': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BASSFIELD', 315, '31.49730', '-89.74250'), ('PRENTISS', 1158, '31.59630', '-89.87200')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'MSC067': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ELLISVILLE', 3465, '31.59870', '-89.20710'), ('LAUREL', 18393, '31.69370', '-89.14470'), ('SANDERSVILLE', 789, '31.78760', '-89.03610'), ('SOSO', 379, '31.75460', '-89.27640')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MSC061': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BAY SPRINGS', 2097, '31.98020', '-89.28410'), ('HEIDELBERG', 840, '31.89010', '-88.98800'), ('LOUIN', 339, '32.07250', '-89.26170'), ('MONTROSE', 127, '32.12440', '-89.23540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSC063': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('FAYETTE', 2242, '31.71170', '-91.06170')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'MSC069': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DE KALB', 972, '32.76850', '-88.65550'), ('SCOOBA', 632, '32.83140', '-88.47770')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'TXC119': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COOPER', 2150, '33.37180', '-95.69050'), ('PECAN GAP', 214, '33.43660', '-95.85160')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'KSC201': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BARNES', 152, '39.71190', '-96.87420'), ('CLIFTON', 557, '39.56720', '-97.27830'), ('GREENLEAF', 357, '39.72830', '-96.97580'), ('HADDAM', 169, '39.85700', '-97.30140'), ('HANOVER', 653, '39.89390', '-96.87920'), ('HOLLENBURG', None, '39.98060', '-96.99190'), ('LINN', 425, '39.68000', '-97.08390'), ('MAHASKA', 107, '39.98000', '-97.35000'), ('MORROWVILLE', 168, '39.84440', '-97.17140'), ('PALMER', 108, '39.63190', '-97.14000'), ('WASHINGTON', 1223, '39.81670', '-97.05000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'GAC007': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BETHANY', None, '31.30640', '-84.60000'), ('CRESTVIEW', None, '31.33140', '-84.61850'), ('ELMODEL WMA', None, '31.34520', '-84.47690'), ('HAWKINSTOWN', None, '31.26200', '-84.45040'), ('HOGGARD MILL', None, '31.21290', '-84.47460'), ('IVEYS MILL', None, '31.39110', '-84.58620'), ('MILFORD', None, '31.38130', '-84.54390'), ('NEWTON', 851, '31.31640', '-84.33670'), ('PATMOS', None, '31.37470', '-84.56520'), ('RED STORE CROSSROADS', None, '31.40390', '-84.27620')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAC005': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALMA', 3236, '31.54340', '-82.47620'), ('NEW LACY', None, '31.53620', '-82.37360')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'TXC111': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CONLEN', None, '36.23530', '-102.23690'), ('DALHART', 7237, '36.06180', '-102.51460'), ('TEXLINE', 511, '36.37670', '-103.01870'), ('WARE', None, '36.18470', '-102.70970')], 'partOfState': '', 'wfo': 'AMA'}, -'KSC209': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(MKC)KS CITY DNTN ARPT', None, '39.11670', '-94.60000'), ('BONNER SPRINGS', 6768, '39.07930', '-94.88150'), ('EDWARDSVILLE', 4146, '39.07830', '-94.81860'), ('KANSAS CITY', 146866, '39.11840', '-94.72700')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'TXC115': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ACKERLY', 245, '32.52460', '-101.71580'), ('ARVANA', None, '32.81000', '-101.92000'), ('FRIENDSHIP', None, '32.63000', '-102.03000'), ('GRANDVIEW', 1358, '32.91000', '-102.00000'), ('HANCOCK', None, '32.82000', '-101.86000'), ('KEY', None, '32.73000', '-101.80000'), ('KLONDIKE', None, '32.56000', '-101.96000'), ('LAMESA', 9952, '32.73260', '-101.95580'), ('MIDWAY', 288, '32.69000', '-101.79000'), ('MIDWAY', 288, '32.68610', '-101.78610'), ('PATRICIA', None, '32.56000', '-102.02000'), ('PRIDE', None, '32.94000', '-102.08000'), ('PUNKIN CENTER', None, '32.85000', '-102.05000'), ('SAND', None, '32.70000', '-102.18000'), ('SPARENBERG', None, '32.58000', '-101.84000'), ('TENMILE', None, '32.60000', '-101.92000'), ('UNION', None, '32.68000', '-102.07000'), ('UNION', None, '32.67360', '-102.06360'), ('WELCH', None, '32.93000', '-102.13000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC117': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOOTLEG', None, '34.82890', '-102.81361'), ('DAWN', None, '34.91030', '-102.19940'), ('GLENRIO', None, '35.17860', '-103.02190'), ('HEREFORD', 14597, '34.82340', '-102.39840'), ('SIMMS', None, '35.03340', '-102.65770')], 'partOfState': '', 'wfo': 'AMA'}, -'VAC063': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALUM RIDGE', None, '36.93330', '-80.46670'), ('CHECK', None, '37.05000', '-80.18330'), ('COPPER HILL', None, '37.08330', '-80.13330'), ('FLOYD', 432, '36.91670', '-80.31670'), ('INDIAN VALLEY', None, '36.91670', '-80.55000'), ('TERRYS FORK', None, '37.05000', '-80.26670'), ('WILLIS', None, '36.85000', '-80.48330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAC061': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADA', None, '38.83690', '-77.91860'), ('AIRLIE', None, '38.75690', '-77.79190'), ('ASHVILLE', None, '38.86420', '-77.92250'), ('AUBURN', None, '38.70280', '-77.70110'), ('BEALETON', None, '38.57170', '-77.76420'), ('BETHEL', None, '38.76610', '-77.81610'), ('BRISTERSBURG', None, '38.58330', '-77.61420'), ('BROKEN HILL', None, '38.75110', '-77.70830'), ('CALVERTON', None, '38.63190', '-77.67080'), ('CRESTHILL', None, '38.76750', '-78.00860'), ('DELAPLANE', None, '38.92000', '-77.92000'), ('GOLDVEIN', None, '38.44890', '-77.65560'), ('HALFWAY', None, '38.91610', '-77.74500'), ('HUME', None, '38.83190', '-77.99970'), ('MARKHAM', None, '38.90390', '-78.00220'), ('MARSHALL', None, '38.87000', '-77.85000'), ('MEADOWVILLE', None, '38.79810', '-77.81560'), ('MIDLAND', None, '38.59940', '-77.72470'), ('MORRISVILLE', None, '38.50170', '-77.70030'), ('OPAL', None, '38.62080', '-77.80030'), ('ORLEAN', None, '38.74970', '-77.96220'), ('PARIS', None, '39.00440', '-77.95170'), ('REMINGTON', 624, '38.53410', '-77.80900'), ('SOMERVILLE', None, '38.52170', '-77.60970'), ('SUMERDUCK', None, '38.46000', '-77.72830'), ('THE PLAINS', 266, '38.86280', '-77.77360'), ('TURNBULL', None, '38.66750', '-77.86060'), ('WARRENTON', 6670, '38.71820', '-77.79710')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAC067': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOONES MILL', 285, '37.11520', '-79.95070'), ('BURNT CHIMNEY', None, '37.10000', '-79.83330'), ('CALLAWAY', None, '37.01670', '-80.05000'), ('ENDICOTT', None, '36.88330', '-80.15000'), ('FERRUM', 1313, '36.91670', '-80.01670'), ('OAK LEVEL', 885, '36.81670', '-79.91670'), ('PENHOOK', 726, '36.98330', '-79.63330'), ('ROCKY MOUNT', 4066, '37.00000', '-79.88330'), ('SAGO', None, '36.88330', '-79.63330'), ('SNOW CREEK', None, '36.83330', '-79.75000'), ('SONTAG', None, '36.93330', '-79.80000'), ('SYDNORSVILLE', None, '36.86670', '-79.83330'), ('WIRTZ', None, '37.08330', '-79.90000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'MOC186': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLOOMSDALE', 419, '38.01140', '-90.21930'), ('COFFMAN', None, '37.78300', '-90.20000'), ('MINNITH', None, '37.79820', '-90.05010'), ('RIVER AUX VASES', None, '37.87220', '-90.11290'), ('ROCKY RIDGE', None, '37.93340', '-90.24270'), ('ST. MARY', 377, '37.87610', '-89.94870'), ('STE. GENEVIEVE', 4476, '37.97490', '-90.04950'), ('WEINGARTEN', None, '37.88300', '-90.21700'), ('WOMAC', None, '37.68120', '-90.19650')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'VAC065': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ANTIOCH', None, '37.84650', '-78.42050'), ('BREMO BLUFF', None, '37.71240', '-78.29730'), ('BYBEE', None, '37.92560', '-78.20580'), ('CARYSBROOK', None, '37.81210', '-78.24210'), ('CENTRAL PLAINS', None, '37.80380', '-78.33690'), ('COHASSET', None, '37.76920', '-78.30340'), ('COLUMBIA', 49, '37.75300', '-78.16510'), ('CUNNINGHAM', None, '37.87400', '-78.32020'), ('DIXIE', None, '37.78150', '-78.23580'), ('FORK UNION', None, '37.76310', '-78.26250'), ('HARDWARE', None, '37.74260', '-78.40590'), ('KENTS STORE', None, '37.87730', '-78.12860'), ('LAKE MONTICELLO', 6852, '37.91670', '-78.31480'), ('LAKE MONTICELLO', 6852, '37.92310', '-78.33510'), ('NAHOR', None, '37.90880', '-78.34780'), ('PALMYRA', None, '37.86060', '-78.26360'), ('SCOTTSVILLE', 555, '37.79890', '-78.49000'), ('SHORES', None, '37.74190', '-78.35870'), ('STAGE JUNCTION', None, '37.79130', '-78.15330'), ('TROY', None, '37.94720', '-78.24740'), ('UNION MILLS', None, '37.93920', '-78.30080'), ('WILDWOOD', None, '37.90310', '-78.25720'), ('WILMINGTON', None, '37.84910', '-78.20160')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'VAC069': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALBIN', None, '39.22170', '-78.19890'), ('ARMEL', None, '39.07920', '-78.14390'), ('CEDAR GROVE', None, '39.26810', '-78.18940'), ('CEDAR HILL', None, '39.27640', '-78.11420'), ('CROSS JUNCTION', None, '39.32030', '-78.29360'), ('GAINESBORO', None, '39.27830', '-78.25940'), ('GORE', None, '39.26390', '-78.33220'), ('GRAVEL SPRINGS', None, '39.07500', '-78.44060'), ('HIGH VIEW MANOR', None, '39.16190', '-78.32140'), ('MIDDLETOWN', 1015, '39.02870', '-78.27790'), ('ROCK ENON SPRINGS', None, '39.21190', '-78.38670'), ('STEPHENS CITY', 1146, '39.09690', '-78.22140'), ('WILDE ACRES', None, '39.14690', '-78.40000')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'KYC079': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRYANTSVILLE', None, '37.71670', '-84.65000'), ('BUCKEYE', None, '37.71670', '-84.50000'), ('BUENA VISTA', None, '37.75000', '-84.66670'), ('HIGH BRIDGE', None, '37.81670', '-84.71670'), ('LANCASTER', 3734, '37.61850', '-84.57950'), ('MCCREARY', None, '37.66670', '-84.51670'), ('PAINT LICK', None, '37.61670', '-84.41670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYC073': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FORKS OF ELKHORN', None, '38.21670', '-84.80000'), ('FRANKFORT', 27741, '38.19080', '-84.86520'), ('SWITZER', None, '38.25000', '-84.75000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYC071': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALLEN', 150, '37.61120', '-82.72840'), ('ALLEN CITY', None, '37.60940', '-82.72330'), ('ALPHORETTA', None, '37.56360', '-82.76500'), ('ALUBA', None, '37.53080', '-82.64390'), ('ALVIN', None, '37.63810', '-82.69580'), ('ARKANSAS', None, '37.58310', '-82.73280'), ('AUXIER', None, '37.73810', '-82.75890'), ('BAMMER', None, '37.60060', '-82.70220'), ('BAYS BRANCH', None, '37.72330', '-82.76810'), ('BEAVER', None, '37.39810', '-82.65500'), ('BEAVER JUNCTION', None, '37.61420', '-82.73250'), ('BETSY LAYNE', None, '37.55190', '-82.63360'), ('BLUE MOON', None, '37.50780', '-82.69750'), ('BLUE RIVER', None, '37.62000', '-82.84420'), ('BONANZA', None, '37.69330', '-82.86440'), ('BOSCO', None, '37.50470', '-82.84080'), ('BRAINARD', None, '37.66420', '-82.89640'), ('BUCKHORN HOLLOW', None, '37.39250', '-82.66970'), ('BUCKINGHAM', None, '37.37060', '-82.74110'), ('BURTON', None, '37.36060', '-82.72470'), ('CLIFF', None, '37.68190', '-82.78110'), ('CORN FORK HOLLOW', None, '37.67780', '-82.70060'), ('CRAYNOR', None, '37.43780', '-82.66890'), ('DANA', None, '37.55500', '-82.69190'), ('DAVID', None, '37.60030', '-82.89190'), ('DICKS CREEK', None, '37.70170', '-82.67890'), ('DOCK', None, '37.62780', '-82.80170'), ('DOTSON', None, '37.64720', '-82.85810'), ('DRIFT', None, '37.48060', '-82.74830'), ('DWALE', None, '37.62390', '-82.72440'), ('EAST MCDOWELL', None, '37.44860', '-82.72610'), ('EAST POINT', None, '37.74640', '-82.79610'), ('EASTERN', None, '37.51750', '-82.80610'), ('EMMA', None, '37.63670', '-82.70060'), ('ENDICOTT', None, '37.66750', '-82.63940'), ('ESTILL', None, '37.45860', '-82.81860'), ('GALVESTON', None, '37.44110', '-82.62860'), ('GARRET', None, '37.47970', '-82.83110'), ('GLO', None, '37.44890', '-82.80940'), ('GRETHEL', None, '37.49170', '-82.64720'), ('HALO', None, '37.31610', '-82.74080'), ('HAROLD', None, '37.53810', '-82.63310'), ('HI HAT', None, '37.39280', '-82.72970'), ('HIPPO', None, '37.53280', '-82.86940'), ('HONAKER', None, '37.52390', '-82.68030'), ('HUEYSVILLE', None, '37.54170', '-82.83190'), ('HUNTER', None, '37.50690', '-82.75670'), ('IVEL', None, '37.59420', '-82.66830'), ('JUSTELL', None, '37.55690', '-82.63830'), ('LANCER', None, '37.66890', '-82.73690'), ('LANGLEY', None, '37.53220', '-82.79170'), ('LIGON', None, '37.37080', '-82.67330'), ('MARTIN', 633, '37.57180', '-82.75600'), ('MCDOWELL', None, '37.45640', '-82.73690'), ('MELVIN', None, '37.35110', '-82.69560'), ('MINNIE', None, '37.47360', '-82.75470'), ('NERO', None, '37.74900', '-82.74570'), ('ORKNEY', None, '37.43030', '-82.73640'), ('OSBORN', None, '37.47780', '-82.61330'), ('PORTER JUNCTION', None, '37.47310', '-82.82940'), ('PRESTONSBURG', 3612, '37.67370', '-82.76660'), ('PRICE', None, '37.40310', '-82.74280'), ('PRINTER', None, '37.53140', '-82.74670'), ('PYRAMID', None, '37.56560', '-82.86970'), ('WAYLAND', 298, '37.44820', '-82.80050'), ('WHEELWRIGHT', 1042, '37.33890', '-82.72030')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC077': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('WARSAW', 1811, '38.78530', '-84.89480')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYC075': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BOUNDURANT', None, '36.52330', '-89.31970'), ('FULTON', 2775, '36.51250', '-88.88120'), ('HICKMAN', 2560, '36.56290', '-89.18780')], 'partOfState': '', 'wfo': 'PAH'}, -'MDC027': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('CLARKSVILLE', None, '39.20640', '-76.94330'), ('COLUMBIA', 88254, '39.20300', '-76.85800'), ('DAYTON', None, '39.23920', '-76.98690'), ('ELKRIDGE', 22042, '39.20190', '-76.75050'), ('ELLICOTT CITY', 56397, '39.27210', '-76.83460'), ('FULTON', None, '39.15080', '-76.92330'), ('GLENELG', None, '39.26420', '-76.99280'), ('GLENWOOD', None, '39.28750', '-77.02830'), ('HIGHLAND', None, '39.17890', '-76.95780'), ('LISBON', None, '39.33610', '-77.07140'), ('POPLAR SPRINGS', None, '39.34330', '-77.09670'), ('ROXBURY MILLS', None, '39.25810', '-77.05360'), ('SCAGGSVILLE', None, '39.14500', '-76.90060'), ('SIMPSONVILLE', None, '39.18670', '-76.88220'), ('WEST FRIENDSHIP', None, '39.30250', '-76.95310')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'PRC067': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('HORMIGUEROS', 12444, '18.14440', '-67.12080')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC065': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CARRIZALES', 2556, '18.48340', '-66.78810'), ('CORCOVADO', 1527, '18.46320', '-66.77720'), ('HATILLO', 5321, '18.48720', '-66.82350'), ('RAFAEL CAPO', None, '18.40560', '-66.78360'), ('RAFAEL GONZALEZ', None, '18.42950', '-66.78730')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC063': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CELADA', 4435, '18.27200', '-65.96260'), ('GURABO', 9046, '18.25610', '-65.97800')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC061': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('GUAYNABO', 78806, '18.38640', '-66.11430')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC069': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ANTON RUIZ', None, '18.19010', '-65.80760'), ('BAJANDAS', 1418, '18.16230', '-65.78280'), ('CANDELERO ARRIBA', 1346, '18.10400', '-65.83710'), ('HUMACAO', 20682, '18.15450', '-65.81970'), ('PUNTA SANTIAGO', 5803, '18.16470', '-65.75840')], 'partOfState': '', 'wfo': 'SJU'}, -'SDC091': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AMHERST', None, '45.73790', '-97.92170'), ('AMHERST', None, '45.73790', '-97.92170'), ('BRITTON', 1328, '45.78950', '-97.74950'), ('BRITTON', 1328, '45.78950', '-97.74950'), ('EDEN', 97, '45.61620', '-97.42010'), ('EDEN', 97, '45.61620', '-97.42010'), ('FORT SISSETON STATE PARK', None, '45.65730', '-97.52970'), ('FORT SISSETON STATE PARK', None, '45.65730', '-97.52970'), ('HILLHEAD', None, '45.83500', '-97.39210'), ('HILLHEAD', None, '45.83500', '-97.39210'), ('KIDDER', None, '45.88320', '-97.71420'), ('KIDDER', None, '45.88320', '-97.71420'), ('LAKE CITY', 47, '45.72380', '-97.41360'), ('LAKE CITY', 47, '45.72380', '-97.41360'), ('LANGFORD', 290, '45.60230', '-97.82950'), ('LANGFORD', 290, '45.60230', '-97.82950'), ('ROY LAKE STATE PARK', None, '45.71030', '-97.43030'), ('ROY LAKE STATE PARK', None, '45.71030', '-97.43030'), ('VEBLEN', 281, '45.86190', '-97.28680'), ('VEBLEN', 281, '45.86190', '-97.28680')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'INC133': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BAINBRIDGE', 743, '39.76060', '-86.81100'), ('CLOVERDALE', 2243, '39.52130', '-86.79870'), ('FILLMORE', 545, '39.67100', '-86.75360'), ('GREENCASTLE', 9880, '39.64200', '-86.84060'), ('ROACHDALE', 975, '39.84880', '-86.80040'), ('RUSSELLVILLE', 340, '39.85710', '-86.98340')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'SDC093': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BEAR BUTTE', None, '44.48170', '-103.41870'), ('BLACKHAWK', 2432, '44.15170', '-103.31530'), ('BONEITA SPRINGS', None, '44.43500', '-102.56180'), ('ELLSWORTH AFB', 4165, '44.15000', '-103.10000'), ('ELM SPRINGS', None, '44.31670', '-102.48330'), ('ENNING', None, '44.57710', '-102.56130'), ('FAIRPOINT', None, '44.74830', '-102.79640'), ('FAITH', 489, '45.01670', '-102.03330'), ('HAYDRAW', None, '44.44640', '-102.72020'), ('HEREFORD', None, '44.38330', '-102.88330'), ('HOWES', None, '44.62090', '-102.04900'), ('MARCUS', None, '44.66670', '-102.26670'), ('MAURINE', None, '45.01670', '-102.60000'), ('MUD BUTTE', None, '45.00540', '-102.87580'), ('OPAL', None, '44.89410', '-102.61430'), ('PIEDMONT', None, '44.23330', '-103.40000'), ('PLAINVIEW', None, '44.60470', '-102.16470'), ('RED OWL', None, '44.69770', '-102.55170'), ('STONEVILLE', None, '44.73900', '-102.65160'), ('STURGIS', 6442, '44.41160', '-103.51460'), ('TILFORD', None, '44.30000', '-103.43330'), ('UNION CENTER', None, '44.56320', '-102.66900'), ('VIEWFIELD', None, '44.21810', '-102.82880'), ('VOLUNTEER', None, '44.51670', '-103.13330'), ('WHITE OWL', None, '44.59270', '-102.42740')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'INC131': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FRANCESVILLE', 905, '40.98580', '-86.88390'), ('MEDARYVILLE', 565, '41.08030', '-86.89000'), ('MONTEREY', 231, '41.15620', '-86.48170'), ('WINAMAC', 2418, '41.05290', '-86.60330')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'SDC095': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BAD NATION', None, '43.65370', '-100.36960'), ('CEDAR BUTTE', None, '43.57950', '-101.02170'), ('CORN CREEK', None, '43.56340', '-101.20020'), ('MOSHER', None, '43.46670', '-100.30000'), ('NORRIS', None, '43.46670', '-101.20000'), ('WHITE RIVER', 598, '43.56730', '-100.74430'), ('WOOD', 66, '43.49680', '-100.47980')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'UNR'}, -'INC137': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BATESVILLE', 6033, '39.29790', '-85.21830'), ('HOLTON', 407, '39.07560', '-85.38460'), ('MILAN', 1816, '39.12530', '-85.13070'), ('NAPOLEON', 238, '39.20540', '-85.32730'), ('OSGOOD', 1669, '39.12830', '-85.29190'), ('SUNMAN', 805, '39.23390', '-85.09610'), ('VERSAILLES', 1784, '39.06430', '-85.25750')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILN'}, -'SDC097': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CANOVA', 140, '43.88080', '-97.50300'), ('CARTHAGE', 187, '44.16890', '-97.71400'), ('FEDORA', None, '44.00820', '-97.78750'), ('HOWARD', 1071, '44.01190', '-97.52330'), ('ROSWELL', 21, '43.99910', '-97.70100'), ('VILAS', 19, '44.00850', '-97.59570')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'LAC049': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CHATHAM', 623, '32.30890', '-92.45120'), ('EAST HODGE', 366, '32.27690', '-92.71400'), ('EROS', 202, '32.39220', '-92.42430'), ('HODGE', 492, '32.27170', '-92.72910'), ('JONESBORO', 3914, '32.23680', '-92.71000'), ('NORTH HODGE', 436, '32.28410', '-92.71620'), ('QUITMAN', 168, '32.34990', '-92.72150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'SDC099': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BALTIC', 811, '43.75960', '-96.73840'), ('BRANDON', 5693, '43.59130', '-96.57800'), ('COLTON', 662, '43.78640', '-96.92700'), ('CROOKS', 859, '43.66020', '-96.80730'), ('DELL RAPIDS', 2980, '43.82490', '-96.71250'), ('GARRETSON', 1165, '43.71680', '-96.50030'), ('HARTFORD', 1844, '43.62350', '-96.94480'), ('HUMBOLDT', 521, '43.64500', '-97.07400'), ('ROWENA', None, '43.51990', '-96.55710'), ('SHERMAN', 87, '43.75770', '-96.47540'), ('SIOUX FALLS', 123975, '43.54420', '-96.73010'), ('VALLEY SPRINGS', 792, '43.58320', '-96.46470'), ('WALL LAKE', None, '43.52890', '-96.96000')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'LAC047': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BAYOU SORREL', None, '30.16170', '-91.33560'), ('CARVILLE', None, '30.22390', '-91.10450'), ('GROSSE TETE', 670, '30.41440', '-91.43520'), ('MARINGOUIN', 1262, '30.49110', '-91.51830'), ('PLAQUEMINE', 7064, '30.28320', '-91.24050'), ('RAMAH', None, '30.40220', '-91.50720'), ('WHITE CASTLE', 1946, '30.16070', '-91.14930')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAC045': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AVERY ISLAND', None, '29.90330', '-91.91030'), ('JEANERETTE', 5997, '29.91630', '-91.67530'), ('JEFFERSON ISLAND', None, '29.97690', '-91.97720'), ('LAKE FAUSSE POINTE', None, '30.01560', '-91.65140'), ('LOREAUVILLE', 938, '30.05910', '-91.73860'), ('LYDIA', 1079, '29.92450', '-91.78240'), ('NEW IBERIA', 32623, '30.00510', '-91.81720'), ('WEEKS ISLAND', None, '29.80750', '-91.80690')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'LAC043': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('COLFAX', 1659, '31.51890', '-92.70570'), ('DRY PRONG', 421, '31.57860', '-92.52930'), ('GEORGETOWN', 301, '31.75930', '-92.38100'), ('MONTGOMERY', 787, '31.66450', '-92.88920'), ('POLLOCK', 376, '31.52460', '-92.40760')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAC041': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BASKIN', 188, '32.25930', '-91.74780'), ('GILBERT', 561, '32.05060', '-91.65540'), ('WINNSBORO', 5344, '32.16010', '-91.72050'), ('WISNER', 1140, '31.98090', '-91.65510')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'KSC119': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('FOWLER', 567, '37.38330', '-100.19570'), ('MEADE', 1672, '37.28500', '-100.33760'), ('MEADE STATE PARK', None, '37.17000', '-100.42000'), ('MISSLER', None, '37.32000', '-100.43000'), ('PLAINS CITY', None, '37.26360', '-100.58990')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KYC107': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DAWSON SPRINGS', 2980, '37.17270', '-87.68860'), ('EARLINGTON', 1649, '37.27340', '-87.51550'), ('HANSON', 625, '37.41740', '-87.47210'), ('MADISONVILLE', 19307, '37.33660', '-87.50540'), ('MORTONS GAP', 952, '37.23710', '-87.47180'), ('NEBO', 220, '37.38440', '-87.64140'), ('NORTONVILLE', 1264, '37.18630', '-87.45740'), ('ST. CHARLES', 309, '37.18800', '-87.55690'), ('WHITE PLAINS', 800, '37.18770', '-87.38640')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYC105': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CLINTON', 1415, '36.66610', '-88.99400'), ('COLUMBUS', 229, '36.75950', '-89.10180')], 'partOfState': '', 'wfo': 'PAH'}, -'KYC103': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHLEHEM', None, '38.40000', '-85.06670'), ('CAMPBELLSBURG', 705, '38.52620', '-85.20680'), ('DEFOE', None, '38.34500', '-85.05000'), ('EMINENCE', 2231, '38.36540', '-85.17430'), ('LOCKPORT', None, '38.43330', '-84.98000'), ('NEW CASTLE', 919, '38.43370', '-85.17110'), ('PLEASUREVILLE', 869, '38.35190', '-85.11160'), ('PORT ROYAL', None, '38.55000', '-85.08330'), ('SLIGO', None, '38.48330', '-85.31670'), ('SMITHFIELD', 102, '38.38790', '-85.25730'), ('SULPHUR', None, '38.48330', '-85.26670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'WAC049': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BAY CENTER', 174, '46.62000', '-123.95000'), ('BROOKLYN', None, '46.78300', '-123.50000'), ('CAPE DISAPPOINTMENT', None, '46.27000', '-124.08000'), ('CAPE SHOALWATER', None, '46.73000', '-124.08600'), ('CHINOOK', 457, '46.27700', '-123.95000'), ('FRANCES', None, '46.53300', '-123.50000'), ('ILWACO', 950, '46.31090', '-124.03310'), ('KLIPSAN BEACH', None, '46.46660', '-124.05000'), ('KNAPPTON', None, '46.27500', '-123.81660'), ('LEADBETTER POINT', None, '46.64000', '-124.06000'), ('LEBAM', 176, '46.56700', '-123.55000'), ('LONG BEACH', 1283, '46.35550', '-124.05320'), ('MEGLER', None, '46.25000', '-123.86660'), ('MENLO', None, '46.63330', '-123.65000'), ('NAHCOTTA', None, '46.50100', '-124.03000'), ('NASELLE', 377, '46.36700', '-123.81700'), ('NEMAH', None, '46.51600', '-123.88330'), ('NORTH COVE', None, '46.73000', '-124.06700'), ('OCEAN PARK', 1459, '46.49570', '-124.04320'), ('OCEANSIDE', None, '46.40000', '-124.04500'), ('OYSTERVILLE', None, '46.55000', '-124.03330'), ('RAYMOND', 2975, '46.68350', '-123.73690'), ('SEAVIEW', None, '46.33330', '-124.05100'), ('SOUTH BEND', 1807, '46.66000', '-123.80300'), ('SUTICO', None, '46.63000', '-123.51000'), ('TOKELAND', 194, '46.71000', '-123.98330'), ('WILLAPA', None, '46.66660', '-123.66660')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'KYC101': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CORYDON', 744, '37.73970', '-87.70650'), ('HEBBARDSVILLE', None, '37.77610', '-87.37520'), ('HENDERSON', 27373, '37.83990', '-87.58200')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'WAC047': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BREWSTER', 2189, '48.10280', '-119.77960'), ('CARLTON', None, '48.24230', '-120.10900'), ('CHESAW', None, '48.94100', '-119.05020'), ('CONCONULLY', 185, '48.55880', '-119.75100'), ('DISAUTEL', None, '48.35630', '-119.23500'), ('ELLISFORDE', None, '48.78730', '-119.40000'), ('LOOMIS', None, '48.81930', '-119.62600'), ('MALOTT', None, '48.26900', '-119.70580'), ('MAZAMA', None, '48.57550', '-120.38470'), ('METHOW', None, '48.12480', '-120.00150'), ('MOLSON', None, '48.97530', '-119.19300'), ('MONSE', None, '48.13820', '-119.67270'), ('NESPELEM', 212, '48.16770', '-118.97140'), ('NIGHTHAWK', None, '48.96670', '-119.63780'), ('OKANOGAN', 2484, '48.36880', '-119.57610'), ('OMAK', 4721, '48.40960', '-119.52550'), ('OROVILLE', 1653, '48.94240', '-119.43160'), ('PATEROS', 643, '48.05480', '-119.89990'), ('RIVERSIDE', 348, '48.50270', '-119.50750'), ('TONASKET', 994, '48.70480', '-119.43780'), ('TWISP', 938, '48.36330', '-120.11950'), ('WAUCONDA', None, '48.72220', '-119.00750'), ('WINTHROP', 349, '48.47290', '-120.17830')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'WAC045': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('SHELTON', 8442, '47.21480', '-123.10530'), ('SKOKOMISH', 616, '47.33360', '-123.15620')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'WAC043': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALMIRA', 302, '47.71060', '-118.93930'), ('CRESTON', 232, '47.76000', '-118.51940'), ('DAVENPORT', 1730, '47.65130', '-118.15320'), ('EDWALL', None, '47.51780', '-117.95000'), ('HARRINGTON', 426, '47.48040', '-118.25440'), ('IRBY', None, '47.35530', '-118.85000'), ('LAMONA', None, '47.35570', '-118.47550'), ('LINCOLN', None, '47.82420', '-118.40830'), ('MILES', None, '47.90650', '-118.28820'), ('MOHLER', None, '47.40300', '-118.32350'), ('ODESSA', 957, '47.33330', '-118.68710'), ('REARDAN', 608, '47.66920', '-117.87740'), ('SPRAGUE', 490, '47.30000', '-117.97410'), ('WILBUR', 914, '47.75810', '-118.70450')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OTX'}, -'WAC041': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CENTRALIA', 14742, '46.72120', '-122.96200'), ('CHEHALIS', 7057, '46.66490', '-122.96500'), ('FORDS PRAIRIE', 1961, '46.74010', '-123.00150'), ('MORTON', 1045, '46.55800', '-122.28010'), ('MOSSYROCK', 486, '46.53010', '-122.48130'), ('NAPAVINE', 1361, '46.57710', '-122.90850'), ('PE ELL', 657, '46.57150', '-123.29690'), ('TOLEDO', 653, '46.44050', '-122.84770'), ('VADER', 590, '46.40280', '-122.95560'), ('WINLOCK', 1166, '46.49150', '-122.93590')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'KYC109': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALCORN', None, '37.56140', '-84.04890'), ('ANNVILLE', 589, '37.31990', '-83.96140'), ('ARDERY', None, '37.34060', '-84.10430'), ('ATKINSTOWN', None, '37.38310', '-83.96280'), ('BLANTON FLATS', None, '37.57000', '-84.00390'), ('BOND', None, '37.31590', '-83.98640'), ('BRADSHAW', None, '37.42500', '-83.96330'), ('BRAZIL', None, '37.52470', '-84.04170'), ('CARICO', None, '37.33200', '-84.09840'), ('CLOVER BOTTOM', None, '37.49890', '-84.15140'), ('COLLINGSWORTH', None, '37.46390', '-84.08710'), ('CORNELIUS', None, '37.31390', '-84.00860'), ('DABOLT', None, '37.34890', '-84.00410'), ('DANGO', None, '37.36940', '-84.11350'), ('DATHA', None, '37.26010', '-83.91500'), ('DEESE', None, '37.33550', '-84.02440'), ('DRIP ROCK', None, '37.57500', '-83.97360'), ('EBERLE', None, '37.29830', '-84.08870'), ('EGLON', None, '37.45660', '-84.12980'), ('EGYPT', None, '37.31310', '-83.89610'), ('ELIAN', None, '37.38940', '-83.83110'), ('FOXTOWN', None, '37.50420', '-83.99360'), ('GRAY HAWK', None, '37.39280', '-83.93680'), ('GREEN HILL', None, '37.29610', '-83.96550'), ('HERD', None, '37.36420', '-83.87530'), ('HIGH KNOB', None, '37.28720', '-83.90590'), ('HISEL', None, '37.55560', '-84.08390'), ('HURLEY', None, '37.41250', '-84.03720'), ('KERBY KNOB', None, '37.52090', '-84.11520'), ('LAKES', None, '37.50450', '-83.93670'), ('LOAM', None, '37.40690', '-84.12910'), ('MACEDONIA', None, '37.45860', '-83.96580'), ('MAULDEN', None, '37.35420', '-83.84900'), ('MCKEE', 878, '37.42990', '-83.99760'), ('MIDDLEFORK', None, '37.34350', '-84.08140'), ('MILDRED', None, '37.35420', '-83.92720'), ('MOORES CREEK', None, '37.28230', '-83.99490'), ('MORRILL', None, '37.51920', '-84.19750'), ('MUMMIE', None, '37.39360', '-83.87110'), ('NATHANTON', None, '37.36790', '-83.82760'), ('NEW ZION', None, '37.47120', '-83.89600'), ('OLIN', None, '37.35190', '-83.96640'), ('PARROT', None, '37.31680', '-84.06030'), ('PEOPLES', None, '37.28870', '-84.04970'), ('PRIVETT', None, '37.40190', '-83.90060'), ('SAND SPRINGS', None, '37.52610', '-84.00000'), ('SANDGAP', None, '37.48490', '-84.09160'), ('SETTLE STORE', None, '37.32940', '-83.94170'), ('SHIRLEY', None, '37.54590', '-84.14330'), ('SHOP BRANCH', None, '37.38540', '-84.03530'), ('THREELINKS', None, '37.46440', '-84.19020'), ('TURKEY FOOT', None, '37.46450', '-83.91790'), ('TYNER', None, '37.34520', '-83.90390'), ('WANETA', None, '37.47080', '-84.03850'), ('WELCHBURG', None, '37.32060', '-83.93000'), ('WIND CAVE', None, '37.51250', '-83.92890'), ('ZEKES POINT', None, '37.35100', '-83.88890')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'MIC005': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLEGAN', 4838, '42.52830', '-85.84550'), ('BRADLEY', None, '42.63030', '-85.64300'), ('BURNIPS', None, '42.73190', '-85.83940'), ('CASTLE PARK', None, '42.74800', '-86.20690'), ('DORR', None, '42.72530', '-85.72250'), ('DOUGLAS', 1214, '42.64180', '-86.21040'), ('FENNVILLE', 1459, '42.59480', '-86.10520'), ('GANGES', None, '42.57690', '-86.21030'), ('GLENN', None, '42.52030', '-86.22750'), ('HAMILTON', None, '42.67770', '-86.00620'), ('HOLLAND', 35048, '42.77170', '-86.10220'), ('HOPKINS', 592, '42.62530', '-85.76380'), ('MACATAWA', None, '42.76970', '-86.20620'), ('MARTIN', 435, '42.53710', '-85.63750'), ('NORTH DORR', None, '42.76870', '-85.76200'), ('OTSEGO', 3933, '42.45770', '-85.69710'), ('PLAINWELL', 3933, '42.44510', '-85.64410'), ('PULLMAN', None, '42.48370', '-86.09130'), ('SAUGATUCK', 1065, '42.65610', '-86.20580'), ('SHELBYVILLE', None, '42.59420', '-85.63720'), ('WAYLAND', 3939, '42.67190', '-85.64140')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'MIC007': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALPENA', 11304, '45.07280', '-83.43750'), ('CATHRO', None, '45.15000', '-83.56660'), ('DEVILS LAKE', None, '44.99000', '-83.50000'), ('LACHINE', None, '45.08340', '-83.73340'), ('LONG RAPIDS', None, '45.13350', '-83.73340'), ('OSSINEKE', 1059, '44.90720', '-83.43200'), ('SPRATT', None, '45.00000', '-83.76000'), ('THE TOWN OF HUBBARD LAKE', None, '44.88340', '-83.58330')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MOC099': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANTONIA', None, '38.36250', '-90.46560'), ('ARNOLD', 19965, '38.42840', '-90.36930'), ('BARNHART', 6108, '38.33440', '-90.40410'), ('BYRNES MILL', 2376, '38.43930', '-90.57360'), ('CEDAR HILL', 1703, '38.35610', '-90.64160'), ('CRYSTAL CITY', 4247, '38.22590', '-90.38300'), ('DE SOTO', 6375, '38.13900', '-90.56050'), ('DITTMER', None, '38.33300', '-90.68300'), ('FESTUS', 9660, '38.22280', '-90.40540'), ('FLETCHER', None, '38.16590', '-90.73340'), ('GRUBVILLE', None, '38.28840', '-90.75480'), ('HEMATITE', None, '38.20070', '-90.48340'), ('HERCULANEUM', 2805, '38.25920', '-90.38770'), ('HIGH RIDGE', 4236, '38.46290', '-90.53410'), ('HILLSBORO', 1675, '38.23230', '-90.56680'), ('HOUSE SPRINGS', None, '38.41700', '-90.56700'), ('KIMMSWICK', 94, '38.36670', '-90.36510'), ('MAPAVILLE', None, '38.24810', '-90.48560'), ('MORSE MILL', None, '38.27680', '-90.65320'), ('MURPHY', 9048, '38.49290', '-90.48640'), ('OERMANN', None, '38.30750', '-90.72570'), ('OLYMPIAN VILLAGE', 669, '38.13460', '-90.45720'), ('OTTO', None, '38.37200', '-90.50060'), ('PARKDALE', 205, '38.47890', '-90.52660'), ('PEVELY', 3768, '38.28910', '-90.39800'), ('SCOTSDALE', 211, '38.39590', '-90.58970'), ('VALLES MILL', None, '38.04070', '-90.50150'), ('VICTORIA', None, '38.17790', '-90.52590')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'IAC147': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AYRSHIRE', 202, '43.04030', '-94.83340'), ('CURLEW', 62, '42.97950', '-94.73720'), ('CYLINDER', 110, '43.09040', '-94.55130'), ('EMMETSBURG', 3958, '43.11350', '-94.68050'), ('GRAETTINGER', 900, '43.23640', '-94.75100'), ('MALLARD', 298, '42.93970', '-94.68410'), ('RODMAN', 56, '43.02600', '-94.52630'), ('RUTHVEN', 711, '43.12960', '-94.89930'), ('WEST BEND', 834, '42.96010', '-94.45900')], 'partOfState': 'NORTHWEST', 'wfo': 'DMX'}, -'IAC141': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARCHER', 126, '43.11450', '-95.74410'), ('CALUMET', 181, '42.94490', '-95.55040'), ('HARTLEY', 1733, '43.17930', '-95.47750'), ('PAULLINA', 1124, '42.97980', '-95.68680'), ('PRIMGHAR', 891, '43.08780', '-95.62620'), ('SANBORN', 1353, '43.18110', '-95.65630'), ('SHELDON', 4914, '43.17930', '-95.84490'), ('SUTHERLAND', 707, '42.97240', '-95.49530')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAC143': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ASHTON', 461, '43.30980', '-95.79220'), ('HARRIS', 200, '43.44760', '-95.43290'), ('MELVIN', 243, '43.28670', '-95.60850'), ('OCHEYEDAN', 536, '43.41820', '-95.53650'), ('SIBLEY', 2796, '43.40170', '-95.74490')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'MOC091': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRANDSVILLE', 174, '36.65020', '-91.68990'), ('CAULFIELD', None, '36.61440', '-92.10470'), ('LANTON', None, '36.51710', '-91.80130'), ('MOODY', None, '36.52930', '-91.98910'), ('MOUNTAIN VIEW', 2430, '36.99520', '-91.70360'), ('PEACE VALLEY', None, '36.87430', '-91.73100'), ('POMONA', None, '36.86710', '-91.91410'), ('POTTERSVILLE', None, '36.69580', '-92.03100'), ('SILOAM SPRINGS', None, '36.79550', '-92.07520'), ('SOUTH FORK', None, '36.62770', '-91.96250'), ('WEST PLAINS', 10866, '36.72790', '-91.85220'), ('WHITE CHURCH', None, '36.85020', '-91.78600'), ('WILLOW SPRINGS', 2147, '36.99210', '-91.96960')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'MOC093': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANNAPOLIS', 310, '37.35990', '-90.69830'), ('ARCADIA', 567, '37.58540', '-90.62850'), ('BELLEVIEW', None, '37.68300', '-90.75000'), ('BIXBY', None, '37.66700', '-91.08300'), ('CHLORIDE', None, '37.46060', '-90.68700'), ('DES ARC', 187, '37.28420', '-90.63490'), ('GLOVER', None, '37.48700', '-90.69120'), ('GRANITE', None, '37.65450', '-90.67160'), ('HOGAN', None, '37.51120', '-90.69590'), ('IRONTON', 1471, '37.59670', '-90.63580'), ('PILOT KNOB', 697, '37.62350', '-90.64360'), ('SABULA', None, '37.40480', '-90.69620'), ('VIBURNUM', 825, '37.71560', '-91.12920'), ('VULCAN', None, '37.30950', '-90.66260')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'MOC095': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLUE SPRINGS', 48080, '39.02200', '-94.27360'), ('BUCKNER', 2725, '39.13480', '-94.19800'), ('GRAIN VALLEY', 5160, '39.00720', '-94.20680'), ('GRANDVIEW', 24881, '38.88130', '-94.52250'), ('GREENWOOD', 3952, '38.85110', '-94.34200'), ('INDEPENDENCE', 113288, '39.08930', '-94.35340'), ('KANSAS CITY', 441545, '39.12230', '-94.55200'), ('LAKE LOTAWANA', 1872, '38.92950', '-94.25790'), ('LAKE TAPAWINGO', 843, '39.01820', '-94.31040'), ("LEE'S SUMMIT", 70700, '38.91630', '-94.38350'), ('LEVASY', 108, '39.13310', '-94.13230'), ('LONE JACK', 528, '38.87040', '-94.16640'), ('OAK GROVE', 5535, '39.00350', '-94.12570'), ('RAYTOWN', 30388, '38.99490', '-94.46520'), ('SIBLEY', 347, '39.17920', '-94.19690'), ('SUGAR CREEK', 3839, '39.13810', '-94.41120'), ('UNITY VILLAGE', 140, '38.95050', '-94.40150')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOC097': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AIRPORT DRIVE', 622, '37.14240', '-94.51050'), ('ALBA', 588, '37.23830', '-94.41710'), ('ASBURY', 218, '37.27430', '-94.60520'), ('ATLAS', None, '37.09490', '-94.38580'), ('AVILLA', 137, '37.19520', '-94.12930'), ('BROOKLYN HEIGHTS', 125, '37.17040', '-94.38610'), ('CARL JUNCTION', 5294, '37.17660', '-94.56520'), ('CARTERVILLE', 1850, '37.14910', '-94.44270'), ('CARTHAGE', 12668, '37.17630', '-94.31000'), ('CARYTOWN', 217, '37.26610', '-94.30910'), ('DUDENVILLE', None, '37.30550', '-94.09960'), ('DUENWEG', 1034, '37.08350', '-94.41330'), ('DUQUESNE', 1640, '37.07660', '-94.45910'), ('FIDELITY', 252, '37.06790', '-94.31300'), ('I-44 NEAR MILE MARKER 20', None, '37.07600', '-94.28500'), ('I-44 NEAR MILE MARKER 30', None, '37.07590', '-94.10500'), ('IRON GATES', None, '37.06350', '-94.55690'), ('JASPER', 1011, '37.33600', '-94.30110'), ('JOPLIN', 45504, '37.08410', '-94.51300'), ('LAKESIDE', 37, '37.15880', '-94.41470'), ('MAPLE GROVE', None, '37.25360', '-94.12540'), ('NECK CITY', 119, '37.25690', '-94.44410'), ('OAKLAND PARK', None, '37.11000', '-94.47260'), ('ORONOGO', 976, '37.18830', '-94.46990'), ('PURCELL', 357, '37.24210', '-94.43490'), ('REEDS', 103, '37.11610', '-94.16550'), ('SARCOXIE', 1354, '37.06910', '-94.11630'), ('WACO', 86, '37.24690', '-94.59910'), ('WEBB CITY', 9812, '37.14630', '-94.48300')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MIC003': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AU SABLE POINT', None, '46.67200', '-86.14200'), ('AU TRAIN', None, '46.43000', '-86.83000'), ('BEAVER LAKE', None, '46.56800', '-86.33900'), ('CHATHAM', 231, '46.34430', '-86.93080'), ('CHRISTMAS', None, '46.43000', '-86.68000'), ('DEERTON', None, '46.47400', '-87.04200'), ('EBEN JUNCTION', None, '46.35000', '-86.97000'), ('FISH LAKE', None, '46.22300', '-86.63900'), ('FOREST LAKE', None, '46.33000', '-86.83000'), ('GRAND MARAIS', None, '46.67000', '-85.98000'), ('GRAND PORTAL POINT', None, '46.55000', '-86.46300'), ('KIVA', None, '46.25400', '-87.08400'), ('MELSTRAND', None, '46.47000', '-86.42000'), ('MUNISING', 2539, '46.41700', '-86.64120'), ('NAWAKWA LAKE', None, '46.53600', '-85.97500'), ('SHINGLETON', None, '46.34800', '-86.47000'), ('SUNDELL', None, '46.35000', '-87.08000'), ('TRAUNIK', None, '46.26100', '-86.96900'), ('TRENARY', None, '46.20000', '-86.97000'), ('WETMORE', None, '46.38000', '-86.62000')], 'partOfState': '', 'wfo': 'MQT'}, -'VIC020': {'fullStateName': 'VIRGIN ISLANDS', 'state': 'VI', 'cities': [('CRUZ BAY', None, '18.32250', '-64.78240')], 'partOfState': '', 'wfo': 'SJU'}, -'NYC081': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ASTORIA', None, '40.78000', '-73.91000'), ('BAYSIDE', None, '40.79000', '-73.77000'), ('FLUSHING', None, '40.77000', '-73.84000'), ('HOWARD BEACH', None, '40.66000', '-73.84000'), ('JACKSON HEOGHTS', None, '40.77000', '-73.88000'), ('JAMACIA', None, '40.71000', '-73.79000'), ('KENNEDY AIRPORT', None, '40.65750', '-73.77800'), ('LAGUARDIA AIRPORT', None, '40.79000', '-73.87100'), ('OZONE PARK', None, '40.69000', '-73.85000'), ('ROCKAWAY BEACH', None, '40.57000', '-73.90000'), ('TRIBOROUGH BRIDGE', None, '40.79400', '-73.90750'), ('WHITESTONE', None, '40.79000', '-73.81000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYC083': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AVERILL PARK', 1517, '42.63500', '-73.55340'), ('BERLIN', None, '42.70000', '-73.38000'), ('CASTLETON-ON-HUDSON', 1619, '42.53230', '-73.75080'), ('EAGLE BRIDGE', None, '42.94330', '-73.39990'), ('EAST GREENBUSH', 4085, '42.59440', '-73.70320'), ('GRAFTON', None, '42.76720', '-73.43670'), ('HAMPTON MANOR', 2525, '42.62080', '-73.72890'), ('HOOSICK FALLS', 3436, '42.90050', '-73.35040'), ('NASSAU', 1161, '42.51370', '-73.61160'), ('POESTENKILL', 1024, '42.69360', '-73.56450'), ('RENSSELAER', 7761, '42.64440', '-73.73530'), ('SCHAGHTICOKE', 676, '42.89950', '-73.58660'), ('STEPHENTOWN', None, '42.54950', '-73.44330'), ('TROY', 49170, '42.73430', '-73.67550'), ('VALLEY FALLS', 491, '42.90080', '-73.56290'), ('WEST SAND LAKE', 2439, '42.63870', '-73.60660'), ('WYANTSKILL', None, '42.68910', '-73.64930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYC085': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ANNADALE', None, '40.55000', '-74.16000'), ('GRASMERE', None, '40.61000', '-74.07000'), ('HEARTLAND VILLAGE', None, '40.58500', '-74.17000'), ('HUGUENOT', None, '40.54000', '-74.17250'), ('HYLAN BLVD', None, '40.59000', '-74.08000'), ('NEW DORP', None, '40.59000', '-74.11000'), ('TODT HILL', None, '40.61000', '-74.13000'), ('TOMPKINSVILLE', None, '40.63000', '-74.07000'), ('TOTTENVILLE', None, '40.52000', '-74.23000'), ('VERRAZANO-NARROWS BRIDGE', None, '40.61100', '-74.05450'), ('WEST SHORE EXPRESSWAY', None, '40.60000', '-74.17000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYC087': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AIRMONT', 7799, '41.09910', '-74.10040'), ('BARDONIA', 4367, '41.11120', '-73.98140'), ('BLAUVELT', 5207, '41.06800', '-73.95530'), ('CHESTNUT RIDGE', 7829, '41.08190', '-74.05190'), ('CONGERS', 8303, '41.14790', '-73.94670'), ('GRAND VIEW-ON-HUDSON', 284, '41.05840', '-73.90740'), ('HAVERSTRAW', 10117, '41.18530', '-73.95500'), ('HILLBURN', 881, '41.12720', '-74.17040'), ('HILLCREST', 7106, '41.12960', '-74.03590'), ('MONSEY', 14504, '41.11810', '-74.06770'), ('MONTEBELLO', 3688, '41.12880', '-74.11810'), ('MOUNT IVY', 6536, '41.19290', '-74.02870'), ('NANUET', 16707, '41.09520', '-74.01600'), ('NEW CITY', 34038, '41.15380', '-73.99180'), ('NEW HEMPSTEAD', 4767, '41.14960', '-74.04970'), ('NEW SQUARE', 4624, '41.13970', '-74.02860'), ('NYACK', 6737, '41.09010', '-73.91500'), ('ORANGEBURG', 3388, '41.05000', '-73.94560'), ('PEARL RIVER', 15553, '41.06050', '-74.00320'), ('PIERMONT', 2607, '41.03960', '-73.91550'), ('POMONA', 2726, '41.18980', '-74.05370'), ('SLOATSBURG', 3117, '41.16060', '-74.19120'), ('SOUTH NYACK', 3473, '41.07770', '-73.91710'), ('SPRING VALLEY', 25464, '41.11440', '-74.04920'), ('STONY POINT', 11744, '41.22930', '-73.99750'), ('SUFFERN', 11006, '41.11340', '-74.14400'), ('TAPPAN', 6757, '41.02580', '-73.95160'), ('THIELLS', 4758, '41.20760', '-74.01050'), ('UPPER NYACK', 1863, '41.11450', '-73.91450'), ('VALLEY COTTAGE', 9269, '41.11550', '-73.94380'), ('VIOLA', 5931, '41.12940', '-74.08250'), ('WESLEY HILLS', 4848, '41.15760', '-74.07930'), ('WEST HAVERSTRAW', 10295, '41.20640', '-73.98750'), ('WEST NYACK', 3282, '41.09100', '-73.96920')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYC089': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BRASHER FALLS', None, '44.80490', '-74.79370'), ('CANTON', 5882, '44.59660', '-75.17250'), ('CHILDWOLD', None, '44.28000', '-74.67000'), ('CRANBERRY LAKE', None, '44.22000', '-74.83000'), ('DE KALB', None, '44.50000', '-75.35000'), ('DEGRASSE', None, '44.35000', '-75.08000'), ('EDWARDS', 465, '44.32360', '-75.25330'), ('FINE', None, '44.25000', '-75.13000'), ('GOUVERNEUR', 4263, '44.33660', '-75.46620'), ('HAMMOND', 302, '44.44720', '-75.69420'), ('HELENA', None, '44.92000', '-74.72000'), ('HERMON', 402, '44.46840', '-75.23270'), ('HEUVELTON', 804, '44.61710', '-75.40440'), ('HOPKINTON', None, '44.68000', '-74.72000'), ('LAWRENCEVILLE', None, '44.77000', '-74.65000'), ('LOUISVILLE', None, '44.90000', '-75.03000'), ('MADRID', None, '44.75000', '-75.15000'), ('MASSENA', 11209, '44.92850', '-74.89340'), ('MORRISTOWN', 456, '44.58320', '-75.64510'), ('NORFOLK', 1334, '44.80010', '-74.98600'), ('NORWOOD', 1685, '44.74840', '-74.99760'), ('OGDENSBURG', 12364, '44.70700', '-75.47040'), ('PARISHVILLE', None, '44.63000', '-74.82000'), ('PIERCEFIELD', None, '44.23000', '-74.57000'), ('POTSDAM', 9425, '44.66810', '-74.98560'), ('RAYMONDVILLE', None, '44.83000', '-74.97000'), ('RENSSELAER FALLS', 337, '44.59080', '-75.32020'), ('RICHVILLE', 274, '44.41530', '-75.39090'), ('SOUTH COLTON', None, '44.50000', '-74.88000'), ('STAR LAKE', 860, '44.16020', '-75.03750'), ('WADDINGTON', 923, '44.85890', '-75.19650'), ('WANAKENA', None, '44.13000', '-74.92000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'KYC033': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FREDONIA', 420, '37.20910', '-88.05880'), ('FRYER', None, '37.26220', '-87.81970'), ('PRINCETON', 6536, '37.10700', '-87.88470')], 'partOfState': '', 'wfo': 'PAH'}, -'ARC049': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CHEROKEE VILLAGE-HIDDEN V', None, '36.30160', '-91.56950'), ('MAMMOTH SPRING', 1147, '36.49410', '-91.54470'), ('VIOLA', 381, '36.39620', '-91.98490')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'KSC097': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELVIDERE', None, '37.44000', '-99.08000'), ('GREENSBURG', 1574, '37.60540', '-99.29180'), ('HAVILAND', 612, '37.61770', '-99.10510'), ('MULLINVILLE', 279, '37.58800', '-99.47460'), ('WELLSFORD', None, '37.61000', '-99.02000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'ILC059': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('EQUALITY', 721, '37.73590', '-88.34310'), ('JUNCTION', 139, '37.72300', '-88.23780'), ('NEW HAVEN', 477, '37.90010', '-88.12780'), ('OLD SHAWNEETOWN', 278, '37.69690', '-88.13780'), ('OMAHA', 263, '37.88990', '-88.30440'), ('RIDGWAY', 928, '37.79800', '-88.26050'), ('SHAWNEETOWN', 1410, '37.71280', '-88.16550')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILC057': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASTORIA', 1193, '40.22830', '-90.35590'), ('AVON', 915, '40.66220', '-90.43540'), ('BANNER', 149, '40.51470', '-89.91040'), ('BERNADOTTE', None, '40.40000', '-90.32320'), ('BRYANT', 255, '40.46550', '-90.09450'), ('CANTON', 15288, '40.56250', '-90.04030'), ('CUBA', 1418, '40.49340', '-90.19320'), ('DUNCAN MILLS', None, '40.33330', '-90.18330'), ('DUNFERMLINE', 262, '40.49090', '-90.03270'), ('ELLISVILLE', 87, '40.62700', '-90.30570'), ('FAIRVIEW', 493, '40.65050', '-90.19110'), ('FARMINGTON', 2601, '40.71670', '-90.00670'), ('FIATT', None, '40.56670', '-90.18330'), ('IPAVA', 506, '40.35210', '-90.32320'), ('LEWISTOWN', 2522, '40.39690', '-90.15530'), ('LITTLE AMERICA', None, '40.43330', '-90.03330'), ('LIVERPOOL', 119, '40.39690', '-90.00950'), ('LONDON MILLS', 447, '40.71070', '-90.26670'), ('MARBLETOWN', None, '40.22830', '-90.24500'), ('MARIETTA', 150, '40.49980', '-90.39230'), ('MIDDLE GROVE', None, '40.71670', '-90.10000'), ('NORRIS', 194, '40.62550', '-90.03170'), ('SMITHFIELD', 214, '40.47440', '-90.29500'), ('ST. DAVID', 587, '40.49200', '-90.05140'), ('TABLE GROVE', 396, '40.36560', '-90.42490'), ('VERMONT', 792, '40.29600', '-90.42810')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'ARC043': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('JEROME', 46, '33.39880', '-91.47080'), ('MONTICELLO', 9146, '33.62480', '-91.79380'), ('REED', 275, '33.70180', '-91.44370'), ('TILLAR', 240, '33.71020', '-91.45170'), ('WILMAR', 571, '33.62590', '-91.92900'), ('WINCHESTER', 191, '33.77480', '-91.47500')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'ILC055': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BENTON', 6880, '38.00710', '-88.91850'), ('BUCKNER', 479, '37.98110', '-89.01560'), ('CHRISTOPHER', 2836, '37.97260', '-89.05190'), ('EWING', 310, '38.08930', '-88.85220'), ('HANAFORD', 55, '37.95850', '-88.83530'), ('NORTH CITY', 630, '37.99130', '-89.06160'), ('ORIENT', 296, '37.91640', '-88.97540'), ('ROYALTON', 1130, '37.87770', '-89.11350'), ('SESSER', 2128, '38.09030', '-89.05050'), ('THOMPSONVILLE', 571, '37.91410', '-88.76170'), ('VALIER', 662, '38.01780', '-89.04350'), ('WEST CITY', 716, '37.99600', '-88.94870'), ('WEST FRANKFORT', 8196, '37.90060', '-88.92940'), ('ZEIGLER', 1669, '37.89990', '-89.05250')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'ARC041': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('JAY', 2482, '36.42110', '-94.79670'), ('LEACH', 220, '36.20470', '-94.92220'), ('TWIN OAKS', 186, '36.20530', '-94.85110'), ('KANSAS', 685, '36.20500', '-94.79750'), ('COLCORD', 819, '36.26420', '-94.69280'), ('CHLOETA', None, '36.42310', '-94.97060'), ('ZENA', 123, '36.49610', '-94.85330'), ('CLEORA', 1113, '36.57890', '-94.97080'), ('GROVE', 5131, '36.59360', '-94.76890'), ('BERNICE', 504, '36.61580', '-94.91750'), ('WEST SILOAM SPRINGS', 877, '36.17610', '-94.57470'), ('MAYSVILLE', None, '36.40360', '-94.60170')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'ILC053': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CABERY', 263, '40.99470', '-88.20480'), ('ELLIOTT', 341, '40.46420', '-88.27480'), ('GIBSON CITY', None, '40.46570', '-88.37860'), ('KEMPTON', 235, '40.93580', '-88.23580'), ('MELVIN', 465, '40.57140', '-88.24740'), ('PAXTON', 4525, '40.45840', '-88.09950'), ('PIPER CITY', 781, '40.75570', '-88.18770'), ('ROBERTS', 387, '40.61410', '-88.18350'), ('SIBLEY', 329, '40.58760', '-88.37810')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LOT'}, -'ARC047': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CASS', None, '35.68750', '-93.81920'), ('PARADISE', None, '35.63220', '-93.83390'), ('PINEY', 3988, '35.58580', '-94.05750'), ('ALIX', None, '35.42470', '-93.73030'), ('PINEY', 3988, '35.58580', '-94.05750'), ('TAFT', None, '35.66670', '-93.71670'), ('OZARK', 3525, '35.48690', '-93.82750'), ('CHARLESTON', 2965, '35.29690', '-94.03610'), ('BRANCH', 357, '35.30560', '-93.95330'), ('PETER PENDER', None, '35.36000', '-93.93420'), ('VESTA', None, '35.37920', '-94.04170'), ('MEG', None, '35.40420', '-93.88810'), ('DENNING', 270, '35.42920', '-93.75690'), ('CECIL', None, '35.43860', '-93.94440'), ('ALTUS', 817, '35.44610', '-93.76220'), ('TONEY', None, '35.51810', '-93.96250'), ('LONELM', None, '35.55000', '-93.95000'), ('CRAVENS', None, '35.54830', '-93.91670'), ('WATALULA', None, '35.57330', '-93.82720'), ('JETHRO', None, '35.60750', '-93.88720'), ('MOUNTAIN TOP', None, '35.62420', '-93.72970'), ('FERN', None, '35.63890', '-94.01610'), ('PARADISE', None, '35.63220', '-93.83390'), ('BARNES', None, '35.63530', '-93.82030'), ('TURNERS BEND', None, '35.66670', '-93.83330'), ('CASS', None, '35.68750', '-93.81920'), ('REDDING', None, '35.68000', '-93.77690'), ('WIEDERKEHR VILLAGE', 46, '35.47310', '-93.76440'), ('TURNERS BEND', None, '35.66670', '-93.83330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TSA'}, -'ILC051': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AVENA', None, '39.00750', '-88.92800'), ('BAYLE CITY', None, '39.11400', '-89.16630'), ('BINGHAM', 117, '39.11290', '-89.21170'), ('BROWNSTOWN', 705, '38.99630', '-88.95360'), ('FARINA', 558, '38.83170', '-88.77780'), ('HAGERSTOWN', None, '38.94340', '-89.16850'), ('LA CLEDE', None, '38.87970', '-88.71540'), ('LOOGOOTEE', None, '38.90470', '-88.85370'), ('PITTSBURG', 575, '38.87150', '-89.21180'), ('RAMSEY', 1056, '39.14380', '-89.10990'), ('SHAFTER', None, '39.01360', '-89.18510'), ('SHOBONIER', None, '38.86940', '-89.08870'), ('ST. ELMO', 1456, '39.02470', '-88.85320'), ('ST. JAMES', None, '38.95440', '-88.85120'), ('ST. PAUL', None, '38.85280', '-88.95340'), ('ST. PETER', 386, '38.86740', '-88.85180'), ('VANDALIA', 6975, '38.98100', '-89.10140'), ('WRIGHTS CORNER', None, '39.13300', '-88.86700')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ARC045': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CONWAY', 43167, '35.08880', '-92.45310'), ('DAMASCUS', 306, '35.36460', '-92.40580'), ('ENOLA', 188, '35.20020', '-92.20110'), ('GREENBRIER', 3042, '35.22980', '-92.38350'), ('GUY', 202, '35.32450', '-92.33480'), ('MAYFLOWER', 1631, '34.97180', '-92.41900'), ('MOUNT VERNON', 144, '35.22400', '-92.13010'), ('VILONIA', 2106, '35.08400', '-92.21120'), ('WOOSTER', 516, '35.19890', '-92.44830')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'NVC021': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('HAWTHORNE', 3311, '38.52520', '-118.62700'), ('LUNING', None, '38.51000', '-118.18000'), ('MINA', None, '38.39000', '-118.11000'), ('MOUNT MONTGOMERY', None, '37.98000', '-118.32000'), ('SCHURZ', 721, '38.99290', '-118.83280'), ('WALKER LAKE', None, '38.69000', '-118.74000')], 'partOfState': '', 'wfo': 'REV'}, -'MOC165': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('(MCI)KS CITY INTL ARPT', None, '39.30000', '-94.71670'), ('BEAN LAKE', None, '39.51670', '-95.00000'), ('CAMDEN POINT', 484, '39.45280', '-94.74710'), ('DEARBORN', 529, '39.52490', '-94.77290'), ('EDGERTON', 533, '39.50500', '-94.63060'), ('FARLEY', 226, '39.28230', '-94.82840'), ('FERRELVIEW', 593, '39.31370', '-94.66530'), ('HOUSTON LAKE', 284, '39.19170', '-94.62350'), ('IATAN', 54, '39.47520', '-94.98160'), ('LAKE WAUKOMIS', 917, '39.23030', '-94.63650'), ('PARKVILLE', 4059, '39.19510', '-94.67410'), ('PLATTE CITY', 3866, '39.36150', '-94.77780'), ('PLATTE WOODS', 474, '39.22930', '-94.65200'), ('RIDGELY', 64, '39.45220', '-94.63950'), ('RIVERSIDE', 2979, '39.16730', '-94.63370'), ('TRACY', 213, '39.37860', '-94.79300'), ('WEATHERBY LAKE', 1873, '39.23860', '-94.69760'), ('WESTON', 1631, '39.41460', '-94.89650')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'NVC023': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('AMARGOSA VALLEY', None, '36.64160', '-116.39660'), ('BEATTY', 1154, '36.91020', '-116.76000'), ('BLUE EAGLE RANCH', None, '38.53330', '-115.55000'), ('DUCKWATER', None, '38.90000', '-115.71660'), ('GABBS', 318, '38.86770', '-117.92150'), ('LATHROP WELLS', None, '36.66660', '-116.38330'), ('MANHATTAN', None, '38.52080', '-117.06660'), ('MERCURY', None, '36.67000', '-116.00500'), ('PAHRUMP', 24631, '36.20830', '-115.99160'), ('ROUND MOUNTAIN', None, '38.71660', '-117.06670'), ('SCOTTYS JUNCTION', None, '37.30000', '-117.04330'), ('TONOPAH', 2627, '38.06660', '-117.23000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'VEFLKN'}, -'MOC167': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALDRICH', 75, '37.54740', '-93.55440'), ('BOLIVAR', 9143, '37.61440', '-93.41020'), ('BRIGHTON', None, '37.45770', '-93.34770'), ('DUNNEGAN', None, '37.70800', '-93.57660'), ('EUDORA', None, '37.48240', '-93.53740'), ('FAIR PLAY', 418, '37.62990', '-93.57290'), ('FLEMINGTON', 124, '37.80470', '-93.50110'), ('GOODSON', None, '37.70190', '-93.25130'), ('HALF WAY', None, '37.61630', '-93.24440'), ('HUMANSVILLE', 946, '37.79440', '-93.57770'), ('MORRISVILLE', 344, '37.48100', '-93.42710'), ('PLEASANT HOPE', 548, '37.46300', '-93.27240'), ('POLK', None, '37.72910', '-93.29910')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOC161': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BEULAH', None, '37.62410', '-91.91680'), ('DOOLITTLE', 644, '37.94020', '-91.88070'), ('EDGAR SPRINGS', 190, '37.70440', '-91.86630'), ('I-44 NEAR MILE MARKER 170', None, '37.85000', '-92.03000'), ('I-44 NEAR MILE MARKER 180', None, '37.95000', '-91.86800'), ('I-44 NEAR MILE MARKER 190', None, '37.99000', '-91.68000'), ('JEROME', None, '37.92600', '-91.97740'), ('NEWBURG', 484, '37.91410', '-91.90250'), ('NORTHWYE', None, '37.97490', '-91.75550'), ('ROLLA', 16367, '37.95130', '-91.77100'), ('ST. JAMES', 3704, '37.99710', '-91.61410')], 'partOfState': 'EAST CENTRAL', 'wfo': 'SGF'}, -'NVC027': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('IMLAY', None, '40.66000', '-118.15000'), ('LOVELOCK', 2003, '40.18000', '-118.47690'), ('MILL CITY', None, '40.68000', '-118.07000'), ('OREANA', None, '40.33000', '-118.32000'), ('RYE PATCH RESERVOIR', None, '40.49000', '-118.32000'), ('UNIONVILLE', None, '40.44000', '-118.12000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'REV'}, -'MOC163': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANNADA', 48, '39.26220', '-90.82850'), ('ASHBURN', 51, '39.54630', '-91.17100'), ('ASHLEY', None, '39.24940', '-91.22230'), ('BOWLING GREEN', 3260, '39.33900', '-91.19560'), ('CLARKSVILLE', 490, '39.37180', '-90.90560'), ('CURRYVILLE', 251, '39.34590', '-91.34250'), ('CYRENE', None, '39.28650', '-91.10780'), ('EDGEWOOD', None, '39.27130', '-91.07580'), ('EOLIA', 435, '39.23990', '-91.01120'), ('FRANKFORD', 351, '39.49320', '-91.32070'), ('LOUISIANA', 3863, '39.44350', '-91.05920'), ('NEW HARTFORD', None, '39.20000', '-91.28300'), ('PAYNESVILLE', 91, '39.26220', '-90.89960'), ('SPENCERBURG', None, '39.42180', '-91.38760'), ('ST. CLEMENT', None, '39.28300', '-91.20980')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'NVC029': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('GOLD HILL', None, '39.29000', '-119.66000'), ('SIX MILE CANYON', None, '39.31000', '-119.56000'), ('VIRGINIA CITY', None, '39.31000', '-119.64000')], 'partOfState': '', 'wfo': 'REV'}, -'MOC169': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CROCKER', 1033, '37.94880', '-92.26360'), ("DEVIL'S ELBOW", None, '37.84580', '-92.06360'), ('DIXON', 1570, '37.99160', '-92.09350'), ('FORT LEONARD WOOD', 13666, '37.70520', '-92.15800'), ('I-44 NEAR MILE MARKER 150', None, '37.77800', '-92.32000'), ('I-44 NEAR MILE MARKER 160', None, '37.82000', '-92.18500'), ('LAQUEY', None, '37.77020', '-92.30330'), ('OZARK SPRINGS', None, '37.83960', '-92.33770'), ('RICHLAND', 1805, '37.86110', '-92.39950'), ('ST. ROBERT', 2760, '37.82790', '-92.17740'), ('SWEDEBORG', None, '37.91380', '-92.33160'), ('WAYNESVILLE', 3507, '37.82860', '-92.20050')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'VAC515': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEDFORD CITY', None, '37.33780', '-79.52110')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'VAC510': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('THE WOODROW WILSON BRIDGE', None, '38.78890', '-77.04690'), ('ALEXANDRIA', 128283, '38.82100', '-77.08620')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAC083': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALTON', None, '36.56670', '-79.00000'), ('CLOVER', None, '36.83390', '-78.73390'), ('CLUSTER SPRINGS', None, '36.61670', '-78.91670'), ('CODY', None, '36.98330', '-79.08330'), ('CRYSTAL HILL', None, '36.85000', '-78.90000'), ('DRYBURG', None, '36.73330', '-78.71670'), ('ELMO', None, '36.66670', '-79.13330'), ('HALIFAX', 1389, '36.76540', '-78.93240'), ('HITESBURG', None, '36.61670', '-78.71670'), ('INGRAM', None, '36.75000', '-79.15000'), ('LEDA', None, '36.90000', '-79.08330'), ('MT LAUREL', None, '36.86670', '-78.76670'), ('NATHALIE', None, '36.93330', '-78.95000'), ('RIDGEWAY', 775, '36.80000', '-79.13330'), ('SCOTTSBURG', 145, '36.75980', '-78.79080'), ('SCOTTSBURG', 145, '36.75000', '-78.78330'), ('SOUTH BOSTON', 8491, '36.70000', '-78.90000'), ('TURBEVILLE', None, '36.61670', '-79.03330'), ('VIRGILINA', 159, '36.55000', '-78.78330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'KYC031': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ABERDEEN', None, '37.25000', '-86.68330'), ('DUNBAR', None, '37.18330', '-86.76670'), ('LOGANSPORT', None, '37.28330', '-86.78330'), ('MORGANTOWN', 2544, '37.21800', '-86.70180'), ('QUALITY', None, '37.06670', '-86.85000'), ('ROCHESTER', 186, '37.20860', '-86.89110'), ('ROUNDHILL', None, '37.23330', '-86.45000'), ('SOUTH HILL', None, '37.18330', '-86.81670'), ('SUGAR GROVE', None, '37.08330', '-86.66660'), ('WELCHS CREEK', None, '37.35000', '-86.56670'), ('WOODBURY', 87, '37.18300', '-86.63500')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'DEC005': {'fullStateName': 'DELAWARE', 'state': 'DE', 'cities': [('BETHANY BEACH', 903, '38.53800', '-75.06540'), ('BETHEL', 184, '38.57010', '-75.61980'), ('BLADES', 956, '38.63470', '-75.60920'), ('BRIDGEVILLE', 1436, '38.74330', '-75.60240'), ('DAGSBORO', 519, '38.54750', '-75.24770'), ('DEWEY BEACH', 301, '38.69530', '-75.07680'), ('ELLENDALE', 327, '38.80710', '-75.42430'), ('FENWICK ISLAND', 342, '38.46070', '-75.05380'), ('FRANKFORD', 714, '38.52230', '-75.23290'), ('GEORGETOWN', 4643, '38.69080', '-75.38590'), ('GREENWOOD', 837, '38.80740', '-75.59210'), ('HENLOPEN ACRES', 139, '38.72580', '-75.08610'), ('LAUREL', 3668, '38.55500', '-75.57310'), ('LEWES', 2932, '38.78030', '-75.14980'), ('LONG NECK', 1629, '38.62010', '-75.15100'), ('MILFORD', 6732, '38.91410', '-75.43310'), ('MILLSBORO', 2360, '38.58520', '-75.29180'), ('MILLVILLE', 259, '38.54530', '-75.11240'), ('MILTON', 1657, '38.77890', '-75.31320'), ('OCEAN VIEW', 1006, '38.54500', '-75.09270'), ('REHOBOTH BEACH', 1495, '38.71730', '-75.08090'), ('SEAFORD', 6699, '38.64890', '-75.61660'), ('SELBYVILLE', 1645, '38.45810', '-75.22400'), ('SLAUGHTER BEACH', 198, '38.91230', '-75.30430'), ('SOUTH BETHANY', 492, '38.51610', '-75.05840')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'DEC003': {'fullStateName': 'DELAWARE', 'state': 'DE', 'cities': [('ARDEN', 474, '39.81050', '-75.48960'), ('ARDENCROFT', 267, '39.80400', '-75.48680'), ('ARDENTOWN', 300, '39.80900', '-75.48190'), ('BELLEFONTE', 1249, '39.76630', '-75.49830'), ('BROOKSIDE', 14806, '39.66780', '-75.71590'), ('CLAYMONT', 9220, '39.80300', '-75.45940'), ('DELAWARE CITY', 1453, '39.57550', '-75.60040'), ('EDGEMOOR', 5992, '39.75570', '-75.50780'), ('ELSMERE', 5800, '39.73790', '-75.59490'), ('MIDDLETOWN', 6161, '39.45110', '-75.71470'), ('NEW CASTLE', 4862, '39.66640', '-75.57040'), ('NEWARK', 28547, '39.67660', '-75.75770'), ('NEWPORT', 1122, '39.71330', '-75.60700'), ('ODESSA', 286, '39.45640', '-75.66010'), ('PIKE CREEK', 19751, '39.73090', '-75.70450'), ('STANTON', None, '39.71810', '-75.65160'), ('TALLEYVILLE', None, '39.81020', '-75.55030'), ('TOWNSEND', 346, '39.39410', '-75.69300'), ('WILMINGTON', 72664, '39.73560', '-75.53000'), ('WILMINGTON MANOR', 8262, '39.68550', '-75.58480')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'MNC149': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBERTA', 142, '45.57480', '-96.05030'), ('CHOKIO', 443, '45.57370', '-96.17410'), ('DONNELLY', 254, '45.69000', '-96.01410'), ('HANCOCK', 717, '45.49830', '-95.79390'), ('MORRIS', 5068, '45.58590', '-95.90530')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNC143': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARLINGTON', 2048, '44.60710', '-94.07790'), ('GAYLORD', 2279, '44.55450', '-94.21820'), ('GIBBON', 808, '44.53510', '-94.52300'), ('GREEN ISLE', 334, '44.67810', '-94.00620'), ('HENDERSON', 910, '44.53030', '-93.90790'), ('NEW AUBURN', 488, '44.67280', '-94.22890'), ('WINTHROP', 1367, '44.54370', '-94.36460')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNC141': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BECKER', 2673, '45.37130', '-93.87340'), ('BIG LAKE', 6063, '45.33660', '-93.74660'), ('CLEAR LAKE', 266, '45.44610', '-93.99800'), ('ELK RIVER', 16447, '45.33260', '-93.56580'), ('ZIMMERMAN', 2851, '45.44400', '-93.59240')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MAC019': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('NANTUCKET', 3830, '41.27000', '-70.10270')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MNC147': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLOOMING PRAIRIE', 1933, '43.86850', '-93.05450'), ('ELLENDALE', 590, '43.87360', '-93.30120'), ('MEDFORD', 984, '44.17170', '-93.24450'), ('OWATONNA', 22434, '44.08520', '-93.22430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNC145': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBANY', 1796, '45.63090', '-94.56870'), ('AVON', 1242, '45.60880', '-94.45150'), ('BELGRADE', 750, '45.45000', '-94.99900'), ('BROOTEN', 649, '45.50030', '-95.11900'), ('COLD SPRING', 2975, '45.45750', '-94.43150'), ('ELROSA', 166, '45.56250', '-94.94760'), ('FREEPORT', 454, '45.66300', '-94.68720'), ('GREENWALD', 201, '45.60220', '-94.85900'), ('HOLDINGFORD', 736, '45.73080', '-94.47120'), ('KIMBALL', 635, '45.31330', '-94.30080'), ('LAKE HENRY', 90, '45.45780', '-94.79720'), ('MEIRE GROVE', 149, '45.62710', '-94.86890'), ('MELROSE', 3091, '45.67540', '-94.81210'), ('NEW MUNICH', 352, '45.63060', '-94.75280'), ('PAYNESVILLE', 2267, '45.37850', '-94.71970'), ('PLEASANT LAKE', 504, '45.49900', '-94.28500'), ('RICHMOND', 1213, '45.45260', '-94.51770'), ('ROCKVILLE', 749, '45.47240', '-94.33960'), ('ROSCOE', 116, '45.43240', '-94.63520'), ('SARTELL', 9641, '45.62050', '-94.20630'), ('SAUK CENTRE', 3930, '45.73780', '-94.95730'), ('SPRING HILL', 55, '45.52340', '-94.83440'), ('ST CLOUD', None, '45.55400', '-94.17040'), ('ST JOSEPH', None, '45.56650', '-94.31710'), ('ST MARTIN', None, '45.50410', '-94.66270'), ('ST ROSA', None, '45.73130', '-94.71500'), ('ST STEPHEN', None, '45.70210', '-94.27650'), ('WAITE PARK', 6568, '45.55250', '-94.22360')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MDC035': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BARCLAY', 143, '39.14380', '-75.86420'), ('CENTREVILLE', 1970, '39.04350', '-76.06530'), ('CHURCH HILL', 530, '39.14360', '-75.98070'), ('GRASONVILLE', 2193, '38.95800', '-76.19420'), ('KINGSTOWN', 1644, '39.20620', '-76.04810'), ('MILLINGTON', 416, '39.25820', '-75.84170'), ('QUEENSTOWN', 617, '38.98990', '-76.15590'), ('STEVENSVILLE', 5880, '38.99390', '-76.30890'), ('STEVENSVILLE SOUTH', None, '38.96020', '-76.32930'), ('SUDLERSVILLE', 391, '39.18620', '-75.85850')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'MTC111': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BILLINGS', 89847, '45.79140', '-108.53850'), ('BROADVIEW', 150, '46.09780', '-108.87720'), ('LAUREL', 6255, '45.67400', '-108.77170'), ('LOCKWOOD', 4306, '45.81930', '-108.41410')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'VAC670': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('HOPEWELL', 22354, '37.29060', '-77.29840')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'MDC037': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('CALIFORNIA', 9307, '38.29610', '-76.49620'), ('CALLAWAY', None, '38.23830', '-76.51940'), ('CHAPTICO', None, '38.36750', '-76.78330'), ('CHARLOTTE HALL', 1214, '38.47820', '-76.78950'), ('CLEMENTS', None, '38.32610', '-76.72750'), ('DAMERON', None, '38.15220', '-76.36970'), ('GOLDEN BEACH', 2665, '38.48730', '-76.69320'), ('HILLVILLE', None, '38.37250', '-76.60280'), ('HOLLYWOOD', None, '38.34580', '-76.57190'), ('LEONARDTOWN', 1896, '38.29960', '-76.64170'), ('LEXINGTON PARK', 11021, '38.26040', '-76.44590'), ('MECHANICSVILLE', None, '38.43000', '-76.73000'), ('MORGANZA', None, '38.37530', '-76.69580'), ('OAKLEY', None, '38.27280', '-76.74000'), ('PATUXENT RIVER NAS', None, '38.28000', '-76.43000'), ('PINEY POINT', None, '38.14220', '-76.50780'), ('REDGATE', None, '38.25640', '-76.59890'), ('RIDGE', None, '38.11920', '-76.37420'), ('SANDGATES', None, '38.41280', '-76.61560'), ('SOTTERLEY', None, '38.37830', '-76.53330'), ('TINTOP HILL', None, '38.32220', '-76.61890')], 'partOfState': 'SOUTHERN', 'wfo': 'LWX'}, -'SCC087': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ADAMSBURG', None, '34.79110', '-81.52860'), ('BUFFALO', 1426, '34.72430', '-81.68350'), ('CARLISLE', 496, '34.59150', '-81.46470'), ('CROSS KEYS', None, '34.63190', '-81.77690'), ('JONESVILLE', 982, '34.83560', '-81.67990'), ('MONARCH MILLS', None, '34.71900', '-81.58100'), ('SEDALIA', None, '34.60390', '-81.72470'), ('UNION', 8793, '34.72280', '-81.62380')], 'partOfState': '', 'wfo': 'GSP'}, -'VAC009': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALTO', None, '37.76670', '-79.23330'), ('AMHERST', 2251, '37.58330', '-79.05000'), ('CLIFFORD', None, '37.65000', '-79.03330'), ('ELON', None, '37.51670', '-79.20000'), ('FALCONERVILLE', None, '37.53330', '-79.10000'), ('FORKS OF BUFFALO', None, '37.68330', '-79.18330'), ('LOWESVILLE', None, '37.71670', '-79.06670'), ('NAOLA', None, '37.53330', '-79.28330'), ('NEW GLASGOW', None, '37.63330', '-78.98330'), ('ORONOCO', None, '37.73330', '-79.26670'), ('PLEASANT VIEW', None, '37.61670', '-79.25000'), ('RIVERVILLE', None, '37.51670', '-78.91670')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'AZC021': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AK-CHIN VILLAGE', 669, '33.02830', '-112.08700'), ('APACHE JUNCTION', 31814, '33.40500', '-111.54700'), ('ARIZONA CITY', 4385, '32.75080', '-111.66980'), ('CACTUS FOREST', None, '32.99000', '-111.32000'), ('CASA GRANDE', 25224, '32.89230', '-111.73590'), ('CHUICHU', 339, '32.74480', '-111.79720'), ('COOLIDGE', 7786, '32.98240', '-111.52760'), ('DUDLEYVILLE', 1323, '32.91430', '-110.73380'), ('ELOY', 10375, '32.74500', '-111.60650'), ('FLORENCE', 17054, '33.03760', '-111.37390'), ('FLORENCE JUNCTION', None, '33.27000', '-111.33000'), ('KEARNY', 2249, '33.05620', '-110.90600'), ('MAMMOTH', 1762, '32.72150', '-110.64350'), ('ORACLE', 3563, '32.61880', '-110.78420'), ('SACATON', 1584, '33.08210', '-111.74610'), ('SAN MANUEL', 4375, '32.61400', '-110.63620'), ('SANTAN', 651, '33.14550', '-111.80150'), ('SUPERIOR', 3254, '33.28590', '-111.10950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PSRTWC'}, -'AZC023': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('NOGALES', 20878, '31.36370', '-110.93260'), ('PATAGONIA', 881, '31.54330', '-110.74890'), ('RIO RICO', None, '31.47980', '-110.97560')], 'partOfState': 'SOUTHEAST', 'wfo': 'TWC'}, -'AZC025': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ASH FORK', 457, '35.22097', '-112.48698'), ('BAGDAD', 1578, '34.57790', '-113.17370'), ('BAGDAD', 1578, '34.57343', '-113.17705'), ('BIG PARK', 5245, '34.78020', '-111.76180'), ('BLACK CANYON CITY', 2697, '34.06250', '-112.10940'), ('BRIDGEPORT', None, '34.72060', '-111.99109'), ('BUMBLE BEE', None, '34.20514', '-112.15151'), ('CAMP VERDE', 9451, '34.56970', '-111.85620'), ('CHERRY', None, '34.59020', '-112.04060'), ('CHINO VALLEY', 7835, '34.76320', '-112.45470'), ('CLARKDALE', 3422, '34.75970', '-112.05650'), ('CONGRESS', 1717, '34.16129', '-112.85109'), ('CORDES', None, '34.30462', '-112.16628'), ('CORDES JUCNTION', None, '34.33220', '-112.12100'), ('CORNVILLE', 3335, '34.72180', '-111.90780'), ('COTTONWOOD', 9179, '34.73450', '-112.02440'), ('COTTONWOOD-VERDE VILLAGE', 10610, '34.71110', '-111.99440'), ('CROWN KING', None, '34.20691', '-112.33638'), ('DEWEY-HUMBOLDT', 6295, '34.53260', '-112.25180'), ('IRON SPRINGS', None, '34.58307', '-112.57248'), ('JEROME', 329, '34.74670', '-112.10610'), ('KIRKLAND', None, '34.41928', '-112.71018'), ('LAKE MONTEZUMA', 3344, '34.63469', '-111.76997'), ('LAKE MONTEZUMA', 3344, '34.63930', '-111.79550'), ('MAYER', 1408, '34.39791', '-112.23695'), ('MCGUIREVILLE', None, '34.63717', '-111.81362'), ('MIDDLE VERDE', None, '34.62044', '-111.88849'), ('PAGE SPRINGS', None, '34.76921', '-111.89141'), ('PAULDEN', 3420, '34.88628', '-112.46819'), ('PEEPLES VALLEY', 374, '34.27056', '-112.72735'), ('POLAND JUNCTION', None, '34.45408', '-112.26749'), ('PONDEROSA PARK', None, '34.47319', '-112.48714'), ('PRESCOTT', 33938, '34.57600', '-112.44910'), ('PRESCOTT VALLEY', 23535, '34.60820', '-112.32140'), ('RIMROCK', None, '34.65140', '-111.74464'), ('ROCK SPRINGS', None, '34.05143', '-112.14650'), ('SEDONA', 10192, '34.85930', '-111.79510'), ('SELIGMAN', 456, '35.32938', '-112.87536'), ('SKULL VALLEY', None, '34.49983', '-112.68355'), ('VILLAGE AT OAK CREEK', None, '34.77960', '-111.76293'), ('WAGONER', None, '34.21671', '-112.53356'), ('WALKER', None, '34.45895', '-112.38033'), ('WALNUT GROVE', None, '34.28516', '-112.54748'), ('WILHOIT', 664, '34.42548', '-112.59458'), ('YARNELL', 645, '34.22315', '-112.74566'), ('YAVA', None, '34.47288', '-112.89179')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGZ'}, -'AZC027': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('DATELAND', None, '32.82000', '-113.53000'), ('FORTUNA FOOTHILLS', 20478, '32.65770', '-114.41100'), ('GADSDEN', 953, '32.55000', '-114.78000'), ('LIGURTA', None, '32.67000', '-114.30000'), ('MARTINEZ LAKE', None, '32.97000', '-114.47000'), ('MOHAWK', None, '32.73000', '-113.73000'), ('PALM CANYON', None, '33.31500', '-113.98250'), ('SAN LUIS', 15322, '32.49250', '-114.77790'), ('SOMERTON', 7266, '32.59710', '-114.70950'), ('TACNA', 555, '32.70000', '-113.95000'), ('WELLTON', 1829, '32.67290', '-114.13930'), ('YUMA', 77515, '32.67750', '-114.62020')], 'partOfState': 'SOUTHWEST', 'wfo': 'PSR'}, -'MOC007': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BENTON CITY', 122, '39.13480', '-91.76430'), ('FARBER', 411, '39.27410', '-91.57640'), ('LADDONIA', 620, '39.24150', '-91.64290'), ('MARTINSBURG', 326, '39.10110', '-91.64720'), ('MEXICO', 11320, '39.16650', '-91.87060'), ('RUSH HILL', 130, '39.20990', '-91.72510'), ('THOMPSON', None, '39.18860', '-91.98280'), ('VANDALIA', 2529, '39.30930', '-91.49030'), ('VANDIVER', 83, '39.16130', '-91.84880')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'SCC037': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('EDGEFIELD', 4449, '33.78940', '-81.93040'), ('JOHNSTON', 2336, '33.83440', '-81.80510'), ('TRENTON', 226, '33.74090', '-81.84020')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCC031': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('AUBURN', None, '34.37530', '-79.97610'), ('BIRDSTOWN CROSSROADS', None, '34.46280', '-79.99360'), ('CLYDE', None, '34.38530', '-80.18470'), ('DARLINGTON', 6720, '34.29970', '-79.87640'), ('DOVESVILLE', None, '34.40220', '-79.89530'), ('HARTSVILLE', 7556, '34.37390', '-80.07360'), ('LAMAR', 1015, '34.16860', '-80.06280'), ('MCCOYS CROSSROADS', None, '34.38330', '-80.25000'), ('MECHANICSVILLE', None, '34.34470', '-79.75750'), ('MONT CLARE', None, '34.39670', '-79.82140'), ('NORTH HARTSVILLE', 3136, '34.39950', '-80.07120'), ('OATS', None, '34.25330', '-80.07780'), ('PALMETTO', None, '34.25190', '-79.82750'), ('SOCIETY HILL', 700, '34.51250', '-79.85110')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCC033': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BINGHAM', None, '34.43500', '-79.54330'), ('CARMICHAEL CROSSROADS', None, '34.34030', '-79.27470'), ('DILLON', 6316, '34.41640', '-79.37140'), ('FLOYDALE', None, '34.32360', '-79.33640'), ('FORK', None, '34.28810', '-79.27560'), ('LAKE VIEW', 789, '34.34560', '-79.16580'), ('LATTA', 1410, '34.33690', '-79.43140'), ('LITTLE ROCK', None, '34.47640', '-79.40330'), ('MINTURN', None, '34.51690', '-79.47250'), ('OAK GROVE', 8183, '34.35140', '-79.54280'), ('SMITHBORO', None, '34.27030', '-79.30360'), ('SOUTH OF THE BORDER', None, '34.49720', '-79.30890')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCC039': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('RIDGEWAY', 328, '34.30660', '-80.96070'), ('WINNSBORO', 3599, '34.37660', '-81.08970'), ('WINNSBORO MILLS', 2263, '34.35410', '-81.06950')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'NYC049': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CASTORLAND', 306, '43.88420', '-75.51760'), ('CONSTABLEVILLE', 305, '43.56440', '-75.42850'), ('COPENHAGEN', 865, '43.89380', '-75.67400'), ('CROGHAN', 665, '43.89530', '-75.39130'), ('HARRISVILLE', 653, '44.15340', '-75.32170'), ('LOWVILLE', 3476, '43.78580', '-75.48970'), ('LYONS FALLS', 591, '43.61690', '-75.36210'), ('PORT LEYDEN', 665, '43.58400', '-75.34100'), ('TURIN', 263, '43.62890', '-75.40970')], 'partOfState': 'CENTRAL', 'wfo': 'BUF'}, -'MNC037': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('APPLE VALLEY', 45527, '44.74920', '-93.19750'), ('BURNSVILLE', 60220, '44.76460', '-93.27990'), ('EAGAN', 63557, '44.81940', '-93.16300'), ('FARMINGTON', 12365, '44.65720', '-93.17830'), ('HAMPTON', 434, '44.60930', '-93.00230'), ('HASTINGS', 18204, '44.73280', '-92.85250'), ('INVER GROVE HEIGHTS', 29751, '44.82520', '-93.05770'), ('LAKEVILLE', 43128, '44.67940', '-93.24480'), ('MENDOTA HEIGHTS', 11434, '44.88220', '-93.14030'), ('MIESVILLE', 135, '44.60020', '-92.81000'), ('NEW TRIER', 116, '44.60390', '-92.93320'), ('ROSEMOUNT', 14619, '44.74760', '-93.07080'), ('SOUTH ST PAUL', None, '44.88790', '-93.04010'), ('VERMILLION', 437, '44.67460', '-92.96410'), ('WEST ST PAUL', None, '44.90260', '-93.08560')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNC035': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BARROWS', None, '46.30120', '-94.25390'), ('BAXTER', 5555, '46.34120', '-94.28240'), ('BRAINERD', 13178, '46.35440', '-94.19410'), ('BREEZY POINT', 979, '46.60140', '-94.21930'), ('CROSBY', 2299, '46.49000', '-93.95660'), ('CROSSLAKE', 1893, '46.68250', '-94.09480'), ('CUYUNA', 231, '46.51180', '-93.92900'), ('DEERWOOD', 590, '46.47320', '-93.89900'), ('EMILY', 847, '46.75690', '-93.96150'), ('FIFTY LAKES', 392, '46.74880', '-94.09600'), ('FORT RIPLEY', 74, '46.16640', '-94.36170'), ('GARRISON', 213, '46.30260', '-93.82350'), ('IRONTON', 498, '46.48090', '-93.99670'), ('JENKINS', 287, '46.65230', '-94.32900'), ('LAKE HUBERT', None, '46.50230', '-94.25760'), ('LEGIONVILLE', None, '46.44720', '-94.19950'), ('LENNOX', None, '46.24370', '-94.34320'), ('LITTLE PINE', None, '46.74560', '-93.86150'), ('MANHATTAN BEACH', 50, '46.73440', '-94.14440'), ('MERRIFIELD', None, '46.46510', '-94.17290'), ('MISSION', None, '46.58810', '-94.05110'), ('NISSWA', 1953, '46.50000', '-94.29730'), ('PEQUOT LAKES', 947, '46.60190', '-94.32060'), ('PINE CENTER', None, '46.21450', '-93.91450'), ('RIVERTON', 115, '46.46100', '-94.04870'), ('SHEPHARD', None, '46.21400', '-94.10430'), ('ST. MATHIAS', None, '46.22280', '-94.25110'), ('SWANBURG', None, '46.74040', '-94.17550'), ('TROMMALD', 125, '46.50450', '-94.01670'), ('WOLFORD', None, '46.54570', '-93.97920'), ('WOODROW', None, '46.38840', '-94.07450')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DLH'}, -'MNC033': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BINGHAM LAKE', 167, '43.90940', '-95.04540'), ('DELFT', None, '43.98570', '-95.08820'), ('JEFFERS', 396, '44.05550', '-95.19550'), ('MOUNTAIN LAKE', 2082, '43.94030', '-94.92620'), ('STORDEN', 274, '44.03960', '-95.31990'), ('WESTBROOK', 755, '44.04260', '-95.43490'), ('WINDOM', 4490, '43.86950', '-95.11830')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNC031': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('EAGLE MOUNTAIN', None, '47.89760', '-90.56030'), ('GRAND MARAIS', 1353, '47.75520', '-90.34480'), ('GRAND PORTAGE', None, '47.96390', '-89.68500'), ('HOVLAND', None, '47.83880', '-89.97230'), ('LUTSEN', None, '47.63690', '-90.71080'), ('SEA GULL LAKE', None, '48.13090', '-90.94740'), ('TACONITE HARBOR', None, '47.52410', '-90.92170'), ('TOFTE', None, '47.55970', '-90.88080')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MNC039': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BERNE', None, '44.16447', '-92.76659'), ('CLAREMONT', 620, '44.04470', '-92.99620'), ('CONCORD', None, '44.14985', '-92.83421'), ('DODGE CENTER', 2226, '44.02860', '-92.84900'), ('EDEN', None, '44.09867', '-92.88356'), ('HAYFIELD', 1325, '43.89010', '-92.84700'), ('KASSON', 4398, '44.02920', '-92.75290'), ('MANTORVILLE', 1054, '44.06590', '-92.75340'), ('OSLO', 347, '43.88119', '-92.74832'), ('WASIO JA', None, '44.08040', '-92.81411'), ('WEST CONCORD', 836, '44.15300', '-92.89970')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'FLC057': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('APOLLO BEACH', 7444, '27.77290', '-82.40790'), ('BLOOMINGDALE', 19839, '27.87720', '-82.25990'), ('BOYETTE', 5895, '27.82000', '-82.24000'), ('BRANDON', 77895, '27.92940', '-82.29150'), ('CARROLLWOOD', None, '28.04970', '-82.49310'), ('DOVER', 2798, '27.99290', '-82.22050'), ('EAST LAKE-ORIENT PARK', 5703, '27.98250', '-82.37850'), ('FORT LONESOME', None, '27.70000', '-82.14000'), ('GIBSONTON', 8752, '27.84100', '-82.37040'), ('HILLSBOROUGH RIVER STATE', None, '28.10350', '-82.27830'), ('LITHIA', None, '27.85000', '-82.17000'), ('LUTZ', 17081, '28.13870', '-82.46310'), ('MACDILL AIR FORCE BASE', None, '27.85000', '-82.50000'), ('MANGO', 8842, '27.99090', '-82.30750'), ('PALM RIVER-CLAIR MEL', 17589, '27.93160', '-82.38320'), ('PLANT CITY', 29915, '28.00580', '-82.12850'), ('RIVERVIEW', 12035, '27.87050', '-82.31670'), ('RUSKIN', 8321, '27.71440', '-82.42910'), ('SEFFNER', 5467, '27.99760', '-82.27490'), ('SUN CITY CENTER', None, '27.72140', '-82.35200'), ('TAMPA', 303447, '27.95900', '-82.48210'), ('TAMPA INTERNATIONAL AIRPO', None, '27.98000', '-82.51200'), ('TEMPLE TERRACE', 20918, '28.04240', '-82.38220'), ('THONOTOSASSA', 6091, '28.07220', '-82.30290'), ("TOWN 'N' COUNTRY", 72523, '28.01020', '-82.57740'), ('VALRICO', 6582, '27.94800', '-82.25600'), ('WEST PARK', None, '28.01150', '-82.51630'), ('WIMAUMA', 4246, '27.71310', '-82.30660')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'COC019': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BAKERVILLE', None, '39.69100', '-105.80400'), ('BERTHOUD FALLS', None, '39.77100', '-105.80800'), ('BERTHOUD PASS', None, '39.79600', '-105.77500'), ('BLUE VALLEY', None, '39.70000', '-105.49200'), ('BROOKVALE', None, '39.63300', '-105.42200'), ('DOWNIEVILLE', None, '39.76800', '-105.61400'), ('DUMONT', None, '39.78000', '-105.60000'), ('ECHO LAKE', None, '39.65000', '-105.60000'), ('EMPIRE', 355, '39.75970', '-105.68260'), ('FLOYD HILL', None, '39.72100', '-105.40700'), ('GEORGETOWN', 1088, '39.71520', '-105.69600'), ('GUANELLA PASS', None, '39.59200', '-105.71300'), ('IDAHO SPRINGS', 1889, '39.74100', '-105.51190'), ('LAWSON', None, '39.76700', '-105.63300'), ('LOVELAND PASS', None, '39.66500', '-105.87900'), ('MT EVANS', None, '39.58600', '-105.64200'), ('RUSSELL GULCH', None, '39.77000', '-105.52000'), ('SILVER PLUME', 203, '39.69610', '-105.72670'), ('ST MARYS GLACIER', None, '39.83600', '-105.64600')], 'partOfState': 'CENTRAL', 'wfo': 'BOU'}, -'COC017': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARAPAHOE', None, '38.85000', '-102.17000'), ('AROYA', None, '38.85000', '-103.13000'), ('CHEYENNE WELLS', 1010, '38.81940', '-102.35080'), ('FIRSTVIEW', None, '38.82000', '-102.53000'), ('KIT CARSON', 253, '38.76310', '-102.79570'), ('WILD HORSE', None, '38.82000', '-103.00000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GLD'}, -'COC014': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BROOMFIELD', 38272, '39.94400', '-105.06170')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC015': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BUENA VISTA', 2195, '38.83270', '-106.14130'), ('GRANITE', None, '39.05000', '-106.27000'), ('MAYSVILLE', None, '38.54000', '-106.22000'), ('MT PRINCETON', None, '38.73000', '-106.17000'), ('NATHROP', None, '38.73000', '-106.08000'), ('PONCHA PASS', None, '38.43000', '-106.09000'), ('PONCHA SPRINGS', 466, '38.51410', '-106.07410'), ('SALIDA', 5504, '38.53270', '-105.99980')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COC013': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALLENSPARK', 496, '40.20000', '-105.52000'), ('ARAPAHOE PEAK', None, '40.02400', '-105.64600'), ('BOULDER', 94673, '40.02690', '-105.25100'), ('BRAINARD LAKE', None, '40.07900', '-105.57500'), ('CARIBOU', None, '39.98000', '-105.57000'), ('CRESCENT VILLAGE', None, '39.93000', '-105.33000'), ('ELDORA', 170, '39.95000', '-105.57000'), ('ELDORADO SPRINGS', 557, '39.93000', '-105.27000'), ('GOLD HILL', 210, '40.06300', '-105.40800'), ('GUNBARREL', 9435, '40.06550', '-105.17110'), ('HYGIENE', None, '40.18000', '-105.17000'), ('JAMESTOWN', 205, '40.11610', '-105.38960'), ('LAFAYETTE', 23197, '39.99430', '-105.09800'), ('LONGMONT', 71093, '40.17280', '-105.11170'), ('LOUISVILLE', 18937, '39.96840', '-105.13960'), ('LYONS', 1585, '40.22290', '-105.26850'), ('MARSHALL', None, '39.95000', '-105.23000'), ('MEEKER PARK', None, '40.23000', '-105.53000'), ('MT AUDUBON', None, '40.09900', '-105.61700'), ('NEDERLAND', 1394, '39.96260', '-105.50530'), ('NIWOT', 4160, '40.09560', '-105.15580'), ('PEACEFUL VALLEY', None, '40.13100', '-105.50000'), ('PINECLIFFE', None, '39.93000', '-105.43000'), ('RAYMOND', None, '40.15000', '-105.45000'), ('RIVERSIDE', None, '40.17000', '-105.42000'), ('ROLLINS PASS', None, '39.93300', '-105.68200'), ('SUPERIOR', 9011, '39.92920', '-105.15490'), ('WARD', 169, '40.07250', '-105.51130')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC011': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CADDOA', None, '38.07000', '-102.93000'), ('FORT LYON', None, '38.10000', '-103.15000'), ('HASTY', None, '38.12000', '-102.97000'), ('JOHN MARTIN RESERVOIR', None, '38.01700', '-103.03300'), ('LAS ANIMAS', 2758, '38.06680', '-103.22540'), ('MCCLAVE', None, '38.13000', '-102.85000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'CAC087': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('APTOS', 9396, '36.99190', '-121.89960'), ('APTOS HILLS-LARKIN VALLEY', 2361, '36.96100', '-121.83020'), ('BEN LOMOND', 2364, '37.10340', '-122.08450'), ('BOULDER CREEK', 4081, '37.13750', '-122.12790'), ('CAPITOLA', 10033, '36.97610', '-121.95300'), ('CORRALITOS', 2431, '36.99660', '-121.79860'), ('DAY VALLEY', 3587, '37.03580', '-121.86130'), ('FELTON', 1051, '37.04270', '-122.07220'), ('FREEDOM', 6000, '36.94000', '-121.78930'), ('INTERLAKEN', 7328, '36.95140', '-121.73290'), ('LIVE OAK', 6229, '36.98370', '-121.97950'), ('PAJARO', 3384, '36.90010', '-121.74090'), ('SANTA CRUZ', 54593, '36.97330', '-122.03580'), ('SCOTTS VALLEY', 11385, '37.05630', '-122.00800'), ('SOQUEL', 5081, '36.99380', '-121.94670'), ('WATSONVILLE', 44265, '36.91920', '-121.76850')], 'partOfState': '', 'wfo': 'MTR'}, -'CAC085': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CAMBRIAN PARK', 3258, '37.25570', '-121.92780'), ('CAMPBELL', 38138, '37.27880', '-121.95340'), ('CUPERTINO', 50546, '37.31440', '-122.04730'), ('EAST FOOTHILLS', 8133, '37.38110', '-121.81640'), ('GILROY', 41464, '37.01010', '-121.57810'), ('LEXINGTON HILLS', 2454, '37.16480', '-121.97180'), ('LOS ALTOS', 27693, '37.36920', '-122.09550'), ('LOS ALTOS HILLS', 7902, '37.36800', '-122.13930'), ('LOS GATOS', 28592, '37.23070', '-121.95980'), ('LOYOLA', 3478, '37.35140', '-122.09950'), ('MILPITAS', 62698, '37.43460', '-121.89190'), ('MONTE SERENO', 3483, '37.23830', '-121.98860'), ('MORGAN HILL', 33556, '37.13050', '-121.63960'), ('MOUNTAIN VIEW', 70708, '37.40200', '-122.07760'), ('PALO ALTO', 58598, '37.39920', '-122.13940'), ('RANCHO RINCONADA', None, '37.31500', '-122.00180'), ('SAN JOSE', 894943, '37.30400', '-121.84980'), ('SAN MARTIN', 4230, '37.08490', '-121.60630'), ('SANTA CLARA', 102361, '37.36500', '-121.96670'), ('SARATOGA', 29843, '37.26780', '-122.02300'), ('STANFORD', 13315, '37.42410', '-122.16490'), ('SUNNYVALE', 131760, '37.38580', '-122.02550')], 'partOfState': '', 'wfo': 'MTR'}, -'VAC003': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALBERENE', None, '37.88640', '-78.61670'), ('BARRACKS', None, '38.05740', '-78.51350'), ('CARRSBROOK', None, '38.09310', '-78.45810'), ('COBHAM', None, '38.06280', '-78.26830'), ('COVESVILLE', None, '37.89000', '-78.70500'), ('CROZET', 2820, '38.06930', '-78.69900'), ('DAMON', None, '37.82280', '-78.65940'), ('EARLYSVILLE', None, '38.15750', '-78.48310'), ('ESMONT', None, '37.83110', '-78.60750'), ('FLORDON', None, '38.05580', '-78.55670'), ('FREE UNION', None, '38.15470', '-78.56470'), ('GLENDOWER', None, '37.83720', '-78.54390'), ('GREENWOOD', None, '38.05560', '-78.77080'), ('HOLLYMEAD', None, '38.12190', '-78.43960'), ('IVY', None, '38.05640', '-78.59690'), ('KEENE', None, '37.86500', '-78.55560'), ('KESWICK', None, '38.02250', '-78.35940'), ('NORTH GARDEN', None, '37.94060', '-78.63690'), ('OVERTON', None, '37.95720', '-78.46780'), ('SCOTTSVILLE', 555, '37.79890', '-78.49340'), ('SHADWELL', None, '38.01280', '-78.39580'), ('STONY POINT', None, '38.11280', '-78.37170'), ('WESTMORELAND', None, '38.08640', '-78.45470'), ('WHITE HALL', None, '38.11780', '-78.66170'), ('WOODRIDGE', None, '37.89690', '-78.43640')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'CAC083': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BUELLTON', 3828, '34.62590', '-120.20120'), ('CARPINTERIA', 14194, '34.38790', '-119.51320'), ('CUYAMA', None, '34.94000', '-119.65000'), ('GUADALUPE', 5659, '34.96350', '-120.57470'), ('LOMPOC', 41103, '34.66060', '-120.46960'), ('SANTA BARBARA', 92325, '34.42850', '-119.72190'), ('SANTA MARIA', 77423, '34.93700', '-120.43690'), ('SANTA YNEZ', 4584, '34.60800', '-120.10290'), ('SOLVANG', 5332, '34.59250', '-120.13930'), ('VANDENBERG AFB', 6151, '34.74930', '-120.51730'), ('VANDENBERG VILLAGE', 5802, '34.71120', '-120.46260'), ('GOLETA', 55204, '34.43580', '-119.82760'), ('LAKE CACHUMA', None, '34.58280', '-119.98030'), ('REFUGIO STATE BEACH', None, '34.46220', '-120.07230'), ('POINT ARGUELLO', None, '34.57000', '-120.63000'), ('BIG PINE MOUNTAIN', None, '34.69700', '-119.65420'), ('FIGUEROA MOUNTAIN', None, '34.74330', '-119.98510'), ('MIRANDA PINE MOUNTAIN', None, '35.03780', '-120.03700'), ('GAVIOTA', None, '34.47170', '-120.21480')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAC081': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ATHERTON', 7194, '37.45470', '-122.20240'), ('BELMONT', 25123, '37.51530', '-122.29510'), ('BRISBANE', 3597, '37.68930', '-122.39990'), ('BROADMOOR', 4026, '37.69170', '-122.47960'), ('BURLINGAME', 28158, '37.59030', '-122.36260'), ('COLMA', 1191, '37.67380', '-122.45340'), ('DALY CITY', 103621, '37.68700', '-122.46740'), ('EAST PALO ALTO', 29506, '37.46610', '-122.13220'), ('EL GRANADA', 5724, '37.50970', '-122.46660'), ('EMERALD LAKE HILLS', 3899, '37.46460', '-122.26690'), ('FOSTER CITY', 28803, '37.56380', '-122.24470'), ('HIGHLANDS', None, '37.51990', '-122.34280'), ('HILLSBOROUGH', 10825, '37.55750', '-122.35620'), ('MENLO PARK', 30785, '37.48000', '-122.14400'), ('MILLBRAE', 20718, '37.59910', '-122.40100'), ('MONTARA', 2950, '37.54540', '-122.49720'), ('NORTH FAIR OAKS', 15440, '37.47450', '-122.20180'), ('PACIFICA', 38390, '37.61120', '-122.47630'), ('PORTOLA VALLEY', 4462, '37.37170', '-122.21850'), ('REDWOOD CITY', 75402, '37.51640', '-122.20590'), ('SAN BRUNO', 40165, '37.62480', '-122.42800'), ('SAN CARLOS', 27718, '37.49760', '-122.26740'), ('SAN MATEO', 92482, '37.56130', '-122.31200'), ('WEST MENLO PARK', 3629, '37.43370', '-122.20190'), ('WOODSIDE', 5352, '37.42480', '-122.25930')], 'partOfState': '', 'wfo': 'MTR'}, -'MTC029': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('APGAR', None, '48.52778', '-113.99222'), ('BIGFORK', 1421, '48.06333', '-114.07167'), ('BLACKTAIL', None, '48.27694', '-113.44722'), ('COLUMBIA FALLS', 3645, '48.37250', '-114.18056'), ('CORAM', 337, '48.41806', '-114.04528'), ('CRESTON', None, '48.18944', '-114.13639'), ('ESSEX', None, '48.27806', '-113.61167'), ('EVERGREEN', 6215, '48.22570', '-114.27500'), ('HUNGRY HORSE', 934, '48.38583', '-114.06000'), ('KALISPELL', 14223, '48.19583', '-114.31194'), ('KILA', None, '48.12028', '-114.45583'), ('LA SALLE', None, '48.31306', '-114.24306'), ('LAKE MCDONALD', None, '48.62083', '-113.87083'), ('LAKESIDE', 1679, '48.01944', '-114.22361'), ('LOGAN PASS', None, '48.69500', '-113.72000'), ('LUPFER', None, '48.48361', '-114.51028'), ('MARION', None, '48.10556', '-114.66222'), ('MARTIN CITY', 331, '48.39167', '-114.03722'), ('NIARADA', 50, '47.81417', '-114.60361'), ('NYACK', None, '48.43944', '-113.80472'), ('OLNEY', None, '48.54861', '-114.57722'), ('PINNACLE', None, '48.35611', '-113.65222'), ('POLEBRIDGE', None, '48.76528', '-114.28417'), ('RADNOR', None, '48.61000', '-114.65972'), ('SOMERS', 556, '48.08028', '-114.22056'), ('TRAILCREEK', None, '48.91917', '-114.40639'), ('WEST GLACIER', None, '48.50000', '-113.97778'), ('WHITEFISH', 5032, '48.41111', '-114.33667')], 'partOfState': 'NORTHWEST', 'wfo': 'MSO'}, -'PAC107': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ASHLAND', 3283, '40.78100', '-76.34570'), ('AUBURN', 839, '40.59630', '-76.09620'), ('COALDALE', 2295, '40.82080', '-75.91620'), ('DEER LAKE', 528, '40.62060', '-76.05660'), ('FRACKVILLE', 4361, '40.78370', '-76.23330'), ('GILBERTON', 867, '40.79660', '-76.22330'), ('GIRARDVILLE', 1742, '40.79230', '-76.28420'), ('GORDON', 781, '40.75040', '-76.34060'), ('HOMETOWN', 1399, '40.82200', '-75.98600'), ('JOE ZERBEY AIRPORT', None, '40.72000', '-76.36000'), ('LANDINGVILLE', 175, '40.62550', '-76.12310'), ('LOCUST LAKE SP', None, '40.78000', '-76.12000'), ('MAHANOY CITY', 4647, '40.81270', '-76.13850'), ('MCADOO', 2274, '40.90080', '-75.99240'), ('MIDDLEPORT', 458, '40.72730', '-76.08720'), ('MINERSVILLE', 4552, '40.69080', '-76.25930'), ('MUIR', None, '40.59000', '-76.51000'), ('NEW PHILADELPHIA', 1149, '40.71780', '-76.11800'), ('NEW RINGGOLD', 291, '40.68850', '-75.99380'), ('NUREMBURG', None, '40.93300', '-76.17000'), ('ORWIGSBURG', 3106, '40.65370', '-76.10370'), ('PINE GROVE', 2154, '40.55330', '-76.38700'), ('PORT CARBON', 2019, '40.69710', '-76.16710'), ('POTTSVILLE', 15549, '40.67930', '-76.20980'), ('RINGTOWN', 826, '40.85690', '-76.23540'), ('ROUGH AND READY', None, '40.69000', '-76.58000'), ('SCHUYLKILL HAVEN', 5548, '40.62810', '-76.17290'), ('SHENANDOAH', 5624, '40.81660', '-76.20080'), ('SHEPPTON', 239, '40.90000', '-76.11000'), ('SNYDERS', None, '40.73000', '-75.82000'), ('ST. CLAIR', 3254, '40.72040', '-76.19080'), ('SUMMIT STATION', 208, '40.58000', '-76.22050'), ('TAMAQUA', 7174, '40.80520', '-75.93490'), ('TOWER CITY', 1396, '40.58950', '-76.55380'), ('TREMONT', 1784, '40.62970', '-76.39190'), ('TUSCARORA', 939, '40.76020', '-76.05790'), ('VALLEY VIEW', 2743, '40.66000', '-76.53000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'MDC045': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ALLEN', None, '38.28950', '-75.68870'), ('BIVALVE', None, '38.30630', '-75.88940'), ('CATCHPENNY', None, '38.35530', '-75.72420'), ('CHESAPEAKE HEIGHTS', None, '38.37667', '-75.54472'), ('DELMAR', 1859, '38.45260', '-75.57480'), ('FRUITLAND', 3774, '38.32190', '-75.62630'), ('GREEN HILL', None, '38.31170', '-75.77850'), ('HEBRON', 807, '38.41760', '-75.68800'), ('LAKEWOOD', None, '38.32990', '-75.59750'), ('MARDELA SPRINGS', 364, '38.45820', '-75.75660'), ('MELSON', None, '38.44180', '-75.47710'), ('NANTICOKE', None, '38.27220', '-75.90580'), ('PARSONSBURG', None, '38.38800', '-75.47050'), ('PITTSVILLE', 1182, '38.39330', '-75.41320'), ('POWELLVILLE', None, '38.32890', '-75.37580'), ('ROYAL OAK', None, '38.34980', '-75.79350'), ('SALISBURY', 23743, '38.37190', '-75.58900'), ('SALISBURY-WICOMICO COUNTY', None, '38.33990', '-75.50940'), ('SHAD POINT', None, '38.33980', '-75.63250'), ('SHARPTOWN', 649, '38.53920', '-75.72030'), ('TRINITY', None, '38.29440', '-75.74960'), ('TYASKIN', None, '38.32680', '-75.87520'), ('WATERVIEW', None, '38.24600', '-75.90230'), ('WETIPQUIN', None, '38.33710', '-75.84750'), ('WHITEHAVEN', None, '38.26920', '-75.79050'), ('WILLARDS', 938, '38.39190', '-75.34990')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'PAC105': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AUSTIN', 623, '41.63600', '-78.08900'), ('CHERRY SPRINGS SP', None, '41.65000', '-77.84000'), ('COUDERSPORT', 2650, '41.77420', '-78.01430'), ('CROSS FORK', None, '41.48000', '-77.83000'), ('DENTON HILL SP', None, '41.76000', '-77.82000'), ('GALETON', 1325, '41.73320', '-77.64400'), ('GENESEE', None, '41.98000', '-77.90000'), ('HARRISON VALLEY', None, '41.92000', '-77.67000'), ('KEATING SUMMIT', None, '41.71000', '-78.17000'), ('LYMAN RUN SP', None, '41.72000', '-77.79000'), ('OLE BULL SP', None, '41.55000', '-77.71000'), ('OSWAYO', 159, '41.92010', '-78.02050'), ('ROULETTE', None, '41.77000', '-78.16000'), ('SHINGLEHOUSE', 1250, '41.96530', '-78.19150'), ('ULYSSES', 684, '41.90410', '-77.75520'), ('WHARTON', None, '41.55000', '-78.00000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'MTC025': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BAKER', 1695, '46.36310', '-104.27380'), ('PLEVNA', 138, '46.41630', '-104.51730')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'PAC103': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('NARROWSBURG', 414, '41.60000', '-75.06670'), ('BLOOMING GROVE', None, '41.36670', '-75.16670'), ('BUSHKILL', None, '41.10000', '-75.00000'), ('DINGMANS FERRY', None, '41.21670', '-74.88330'), ('FOREST PARK', None, '41.15000', '-75.01670'), ('GREELEY', None, '41.41670', '-75.00000'), ('GREENTOWN', None, '41.31670', '-75.31670'), ('KIMBLES', None, '41.46670', '-75.13330'), ('LACKAWAXEN', None, '41.48330', '-75.00000'), ('LEDGERDALE', None, '41.36670', '-75.31670'), ('LORDS VALLEY', None, '41.36670', '-75.06670'), ('MILFORD', 1104, '41.32400', '-74.80190'), ('MILLRIFT', None, '41.41670', '-74.75000'), ('PANTHER', None, '41.28330', '-75.30000'), ('PAUPACK', None, '41.40000', '-75.20000'), ('PECKS POND', None, '41.30000', '-75.10000'), ('ROWLAND', None, '41.46670', '-75.05000'), ('SHOHOLA', None, '41.46670', '-74.91670'), ('TAMIMENT', None, '41.15000', '-75.01670'), ('TWIN LAKES', None, '41.40000', '-74.91670'), ('WESTCOLANG PARK', None, '41.51670', '-75.05000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'MDC041': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('EASTON', 11708, '38.77460', '-76.06980'), ('OXFORD', 771, '38.68930', '-76.17080'), ('QUEEN ANNE', 176, '38.91890', '-75.95400'), ('ST. MICHAELS', 1193, '38.78840', '-76.22220'), ('TRAPPE', 1146, '38.65980', '-76.05840')], 'partOfState': '', 'wfo': 'PHI'}, -'CAC089': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ANDERSON', 9022, '40.44990', '-122.29420'), ('BEEGUM', None, '40.34500', '-122.85690'), ('BIG BEND', 149, '41.02080', '-121.91000'), ('BURNEY', 3217, '40.88430', '-121.66870'), ('CASSEL', None, '40.91920', '-121.54670'), ('CASTELLA', None, '41.13860', '-122.31660'), ('CASTLE CRAG', None, '41.09460', '-122.29080'), ('CENTERVILLE', None, '40.51830', '-122.48420'), ('CENTRAL VALLEY', None, '40.67960', '-122.37490'), ('CLARK CREEK', None, '41.03780', '-121.66860'), ('CLOVERDALE', 6831, '40.47360', '-122.47470'), ('COTTONWOOD', 2960, '40.39030', '-122.28000'), ('DANA', None, '41.11170', '-121.56360'), ('FALL RIVER MILLS', 648, '41.00470', '-121.43720'), ('FISHER', None, '41.03640', '-122.39220'), ('FRENCH GULCH', 254, '40.70080', '-122.63720'), ('GLENBURN', None, '41.06140', '-121.48920'), ('HILLCREST', None, '40.86390', '-121.90750'), ('IGO', None, '40.50550', '-122.54060'), ('INWOOD', None, '40.52420', '-121.95610'), ('JOHNSON PARK', None, '40.91770', '-121.62610'), ('KESWICK', None, '40.62250', '-122.46470'), ('KNOB', None, '40.38890', '-122.98690'), ('LAKE MCCLOUD', None, '41.13110', '-122.06940'), ('LAKEHEAD', None, '40.90530', '-122.37810'), ('MANTON', 372, '40.43530', '-121.86890'), ('MANZANITA LAKE', None, '40.53560', '-121.55970'), ('MCARTHUR', 365, '41.05030', '-121.39810'), ('MILLVILLE', 610, '40.54940', '-122.17420'), ('MONTGOMERY CREEK', 96, '40.84170', '-121.92250'), ('MOUNTAIN GATE', None, '40.71640', '-122.33050'), ("O'BRIEN", None, '40.81220', '-122.32310'), ('OLD STATION', None, '40.67530', '-121.42970'), ('OLINDA', None, '40.44390', '-122.40640'), ('ONO', None, '40.47530', '-122.61690'), ('PALO CEDRO', 1247, '40.56390', '-122.23780'), ('PINE GROVE', None, '40.66500', '-122.35220'), ('PLATINA', None, '40.35970', '-122.89360'), ('POLLARD FLAT', None, '40.99580', '-122.41720'), ('REDDING', 80865, '40.57240', '-122.36490'), ('ROUND MOUNTAIN', 122, '40.79420', '-121.94080'), ('SHASTA DAM', None, '40.71500', '-122.41660'), ('SHINGLETOWN', 2222, '40.49250', '-121.88810'), ('SIMS', None, '41.07190', '-122.35390'), ('SUGARLOAF', None, '40.85830', '-122.39580'), ('VIOLA', None, '40.51810', '-121.67670'), ('VOLLMERS', None, '40.94310', '-122.43890'), ('WHISKEYTOWN', None, '40.63890', '-122.55860'), ('WHITMORE', None, '40.62940', '-121.91560'), ('YOLLA BOLLY DISTRICT RS', None, '40.36310', '-122.96420')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'MTC021': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BLOOMFIELD', None, '47.41270', '-104.91660'), ('FOREST PARK', None, '47.10470', '-104.75770'), ('GLENDIVE', 4729, '47.10520', '-104.71190'), ('HODGES', None, '46.98360', '-104.38720'), ('HOYT', None, '46.92970', '-104.85410'), ('INTAKE', None, '47.29380', '-104.52130'), ('LINDSAY', None, '47.21880', '-105.15330'), ('MARSH', None, '46.88970', '-104.93250'), ('RICHEY', 189, '47.64380', '-105.07440'), ('STIPEK', None, '47.21220', '-104.66440')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'OHC147': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ATTICA', 955, '41.06520', '-82.88630'), ('BETTSVILLE', 784, '41.24400', '-83.23360'), ('BLOOMVILLE', 1045, '41.05100', '-83.01330'), ('FOSTORIA', 13931, '41.15920', '-83.41360'), ('NEW RIEGEL', 226, '41.05150', '-83.31900'), ('REPUBLIC', 614, '41.12480', '-83.01610'), ('TIFFIN', 18135, '41.11670', '-83.17750')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHC145': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('FRANKLIN FURNACE', 1537, '38.60800', '-82.84650'), ('LUCASVILLE', 1588, '38.87900', '-82.99530'), ('NEW BOSTON', 2340, '38.75200', '-82.93500'), ('OTWAY', 86, '38.86500', '-83.18830'), ('PORTSMOUTH', 20909, '38.75510', '-82.95070'), ('RARDEN', 176, '38.92270', '-83.24280'), ('ROSEMOUNT', 2043, '38.78780', '-82.97170'), ('SCIOTODALE', 982, '38.75530', '-82.86110'), ('SOUTH WEBSTER', 764, '38.81560', '-82.72790'), ('WEST PORTSMOUTH', 3458, '38.76280', '-83.03830'), ('WHEELERSBURG', 6471, '38.73410', '-82.84530')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHC143': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BALLVILLE', 3255, '41.32770', '-83.13730'), ('BELLEVUE', 8193, '41.27580', '-82.84220'), ('BURGOON', 199, '41.26730', '-83.25070'), ('CLYDE', 6064, '41.30510', '-82.97750'), ('FREMONT', 17375, '41.35030', '-83.11310'), ('GIBSONBURG', 2506, '41.38650', '-83.32280'), ('GREEN SPRINGS', 1247, '41.25710', '-83.05370'), ('HELENA', 236, '41.33980', '-83.29180'), ('LINDSEY', 504, '41.42060', '-83.22070'), ('STONY PRAIRIE', 836, '41.35130', '-83.15520'), ('WOODVILLE', 1977, '41.45130', '-83.36300')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHC141': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAINBRIDGE', 1012, '39.23000', '-83.21000'), ('CHILLICOTHE', 21796, '39.33560', '-82.98810'), ('CLARKSBURG', 516, '39.50630', '-83.15460'), ('FRANKFORT', 1011, '39.40800', '-83.18280'), ('NORTH FOLK VILLAGE', None, '39.33640', '-83.02780'), ('SOUTH SALEM', 213, '39.33640', '-83.30750')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'KSC093': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('DEERFIELD', 884, '37.98140', '-101.13260'), ('LAKIN', 2316, '37.94020', '-101.25830')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'VAC007': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMELIA COURTHOUSE', None, '37.34130', '-77.98010'), ('AMMON', None, '37.21120', '-77.76760'), ('CHULA', None, '37.38830', '-77.90310'), ('DEATONVILLE', None, '37.32800', '-78.16750'), ('DENARO', None, '37.24490', '-77.98410'), ('EARLS', None, '37.22860', '-77.89250'), ('JETERSVILLE', None, '37.29380', '-78.09630'), ('LODORE', None, '37.43920', '-78.02230'), ('MANNBORO', None, '37.25160', '-77.82350'), ('MAPLEWOOD', None, '37.31610', '-78.04890'), ('MORVEN', None, '37.41830', '-78.07580'), ('PAINEVILLE', None, '37.38960', '-78.12100'), ('RODOPHIL', None, '37.36830', '-78.15680'), ('SCOTTS FORK', None, '37.31790', '-77.89060'), ('TRUXILLO', None, '37.37060', '-78.04190'), ('WINTERHAM', None, '37.36630', '-77.93330')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'NHC031': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ACTON', None, '43.53420', '-70.91030'), ('ALFRED', None, '43.47640', '-70.71890'), ('ARUNDEL', None, '43.38250', '-70.47830'), ('BERWICK', 1993, '43.26580', '-70.86500'), ('BIDDEFORD', 20942, '43.49250', '-70.45390'), ('BUXTON', None, '43.63780', '-70.51940'), ('CAPE NEDDICK', 2997, '43.17000', '-70.61930'), ('CORNISH', None, '43.80470', '-70.80170'), ('ELIOT', None, '43.15310', '-70.80060'), ('GOODWINS MILLS', None, '43.50860', '-70.58220'), ('HOLLIS', None, '43.60500', '-70.59360'), ('KENNEBUNK', 4804, '43.38390', '-70.54530'), ('KENNEBUNKPORT', 1376, '43.36170', '-70.47720'), ('KITTERY', 4884, '43.08810', '-70.73670'), ('KITTERY POINT', 1135, '43.08470', '-70.69950'), ('LEBANON', None, '43.39440', '-70.85140'), ('LIMERICK', None, '43.68830', '-70.79420'), ('LIMINGTON', None, '43.73170', '-70.71140'), ('NEWFIELD', None, '43.64810', '-70.84750'), ('NORTH BERWICK', 1580, '43.30360', '-70.73390'), ('OGUNQUIT', None, '43.24890', '-70.59970'), ('OLD ORCHARD BEACH', 8856, '43.51720', '-70.37810'), ('PARSONSFIELD', None, '43.72690', '-70.92920'), ('SACO', 16822, '43.50080', '-70.44330'), ('SANFORD', 10133, '43.43920', '-70.77470'), ('SHAPLEIGH', None, '43.54060', '-70.84860'), ('SOUTH BERWICK', None, '43.23440', '-70.81000'), ('SOUTH ELIOT', 3445, '43.12740', '-70.79820'), ('SPRINGVALE', 3488, '43.46700', '-70.80320'), ('WATERBORO', None, '43.53560', '-70.71560'), ('WELLS', None, '43.32190', '-70.58140'), ('YORK', None, '43.14360', '-70.65140'), ('SOMERSWORTH', 11477, '43.26170', '-70.86580')], 'partOfState': 'SOUTHWEST', 'wfo': 'GYX'}, -'OHC149': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANNA', 1319, '40.39560', '-84.17290'), ('BOTKINS', 1205, '40.46720', '-84.18260'), ('FORT LORAMIE', 1344, '40.34630', '-84.37030'), ('JACKSON CENTER', 1369, '40.43910', '-84.03950'), ('KETTLERSVILLE', 175, '40.43880', '-84.26100'), ('LOCKINGTON', 208, '40.20780', '-84.23550'), ('PORT JEFFERSON', 321, '40.33000', '-84.09210'), ('RUSSIA', 551, '40.23240', '-84.41090'), ('SIDNEY', 20211, '40.28880', '-84.16320')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'KSC091': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('COUNTRYSIDE', 295, '39.01600', '-94.65510'), ('DE SOTO', 4561, '38.97360', '-94.95200'), ('EDGERTON', 1440, '38.76310', '-95.01280'), ('FAIRWAY', 3952, '39.02520', '-94.62870'), ('GARDNER', 9396, '38.81230', '-94.92590'), ('JOHNSON CO ARPT', None, '38.85000', '-94.73330'), ('LAKE QUIVIRA', 932, '39.04040', '-94.76800'), ('LEAWOOD', 27656, '38.90710', '-94.62520'), ('LENEXA', 40238, '38.96350', '-94.78850'), ('MERRIAM', 11008, '39.01920', '-94.69180'), ('MISSION', 9727, '39.02670', '-94.65670'), ('MISSION HILLS', 3593, '39.01360', '-94.61640'), ('MISSION WOODS', 165, '39.03320', '-94.61280'), ('OLATHE', 92962, '38.88690', '-94.81450'), ('OVERLAND PARK', 149080, '38.91460', '-94.68490'), ('PRAIRIE VILLAGE', 22072, '38.98670', '-94.63590'), ('ROELAND PARK', 6817, '39.03590', '-94.63750'), ('SHAWNEE', 47996, '39.01520', '-94.80450'), ('SPRING HILL', 2727, '38.75170', '-94.82740'), ('STANLEY', None, '38.85000', '-94.65000'), ('WESTWOOD', 1533, '39.03990', '-94.61500'), ('WESTWOOD HILLS', 378, '39.03910', '-94.61060')], 'partOfState': 'EAST CENTRAL', 'wfo': 'EAX'}, -'WVC039': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BELLE', 1259, '38.23250', '-81.53990'), ('CEDAR GROVE', 862, '38.22070', '-81.42880'), ('CHARLESTON', 53421, '38.35050', '-81.63040'), ('CHESAPEAKE', 1643, '38.22240', '-81.53620'), ('CLENDENIN', 1116, '38.48740', '-81.34930'), ('COAL FORK', 1350, '38.31650', '-81.52090'), ('CROSS LANES', 10353, '38.43510', '-81.76990'), ('DUNBAR', 8154, '38.36820', '-81.73670'), ('EAST BANK', 933, '38.21570', '-81.44520'), ('ELKVIEW', 1182, '38.43490', '-81.47490'), ('GLASGOW', 783, '38.20980', '-81.42260'), ('HANDLEY', 362, '38.18660', '-81.36640'), ('INSTITUTE', None, '38.38360', '-81.76580'), ('MARMET', 1693, '38.24630', '-81.56980'), ('NITRO', 6824, '38.41760', '-81.83110'), ('PINCH', 2811, '38.40740', '-81.47980'), ('PRATT', 551, '38.20700', '-81.38750'), ('SISSONVILLE', 4399, '38.50190', '-81.64470'), ('SOUTH CHARLESTON', 13390, '38.35640', '-81.70720'), ('ST. ALBANS', 11567, '38.37860', '-81.81700'), ('TORNADO', 1111, '38.33280', '-81.85570')], 'partOfState': '', 'wfo': 'RLX'}, -'NDC017': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ABSARAKA', None, '46.97810', '-97.39420'), ('ALICE', 56, '46.76050', '-97.55620'), ('AMENIA', 89, '47.00820', '-97.22390'), ('ARGUSVILLE', 147, '47.05060', '-96.94100'), ('ARTHUR', 402, '47.10350', '-97.21830'), ('AYR', 23, '47.04070', '-97.49120'), ('BUFFALO', 209, '46.92140', '-97.55030'), ('CASSELTON', 1855, '46.90060', '-97.21190'), ('CHAFFEE', None, '46.77440', '-97.35220'), ('COLGATE', None, '47.24470', '-97.65610'), ('DAVENPORT', 261, '46.71380', '-97.06880'), ('DURBIN', None, '46.80860', '-97.14920'), ('EMBDEN', None, '46.80220', '-97.43280'), ('ERIE', 65, '47.11280', '-97.38750'), ('FARGO', 90599, '46.87660', '-96.81710'), ('FRONTIER', 273, '46.80040', '-96.83300'), ('GARDNER', 80, '47.14340', '-96.96880'), ('GRANDIN', 181, '47.23610', '-97.00240'), ('HARWOOD', 607, '46.98030', '-96.87990'), ('HICKSON', None, '46.66940', '-96.81000'), ('HORACE', 915, '46.75740', '-96.90420'), ('HUNTER', 326, '47.19210', '-97.21630'), ('KINDRED', 614, '46.65090', '-97.02110'), ('LEONARD', 255, '46.65130', '-97.24550'), ('MAPLETON', 606, '46.89080', '-97.05340'), ('OXBOW', 248, '46.84720', '-96.80420'), ('PAGE', 225, '47.15800', '-97.57060'), ('PRAIRIE ROSE', 68, '46.81730', '-96.83440'), ('PROSPER', None, '46.96310', '-97.01940'), ("REILE'S ACRES", 254, '46.92250', '-96.86240'), ('TOWER CITY', 252, '46.92530', '-97.67610'), ('WEST FARGO', 14940, '46.87280', '-96.89700'), ('WHEATLAND', 60, '46.90750', '-97.34500'), ('WILD RICE', None, '46.74640', '-96.80920')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'WVC035': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('KENNA', None, '38.67640', '-81.66040'), ('RAVENSWOOD', 4031, '38.95720', '-81.76310'), ('RIPLEY', 3263, '38.82010', '-81.70910')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC037': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BAKERTON', None, '39.36280', '-77.76330'), ('BLOOMERY', None, '39.25470', '-77.81940'), ('CHARLES TOWN', 2907, '39.28510', '-77.85750'), ('KEARNEYSVILLE', None, '39.38810', '-77.88580'), ('MIDDLEWAY', None, '39.30330', '-77.98310'), ('MILLVILLE', None, '39.29390', '-77.78610'), ('MOLER CROSSROADS', None, '39.39580', '-77.76530'), ('RANSON', None, '39.29500', '-77.86080'), ('RIPPON', None, '39.22000', '-77.90000'), ('SHENANDOAH JUNCTION', None, '39.35860', '-77.84330'), ('SHEPHERDSTOWN', 803, '39.43110', '-77.80510'), ('SUMMIT POINT', None, '39.24940', '-77.95890')], 'partOfState': '', 'wfo': 'LWX'}, -'WVC031': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BAKER', None, '39.04170', '-78.74500'), ('BEAN SETTLEMENT', None, '39.11500', '-78.82610'), ('BRAKE', None, '38.88940', '-79.03640'), ('FISHER', None, '39.05140', '-79.00360'), ('INKERMAN', None, '39.13810', '-78.76890'), ('LOST CITY', None, '38.92970', '-78.83440'), ('LOST RIVER', None, '38.95000', '-78.80000'), ('MATHIAS', None, '38.87780', '-78.86640'), ('MCCAULEY', None, '39.04220', '-78.71220'), ('MCNEILL', None, '39.14000', '-78.91360'), ('MILAM', None, '38.81390', '-79.09940'), ('MOOREFIELD', 2375, '39.06290', '-78.96620'), ('PERRY', None, '38.97140', '-78.67530'), ('RIO', None, '39.13000', '-78.67000'), ('WARDENSVILLE', 246, '39.07650', '-78.59370')], 'partOfState': '', 'wfo': 'LWX'}, -'WVC033': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ANMOORE', 685, '39.25890', '-80.29120'), ('BRIDGEPORT', 7306, '39.29150', '-80.25690'), ('CLARKSBURG', 16743, '39.28040', '-80.33180'), ('DESPARD', 1039, '39.29220', '-80.31760'), ('ENTERPRISE', 939, '39.41870', '-80.27770'), ('LOST CREEK', 467, '39.15910', '-80.35050'), ('LUMBERPORT', 937, '39.37300', '-80.34850'), ('NUTTER FORT', 1686, '39.25950', '-80.32460'), ('SALEM', 2006, '39.28290', '-80.56510'), ('SHINNSTON', 2295, '39.39320', '-80.29950'), ('STONEWOOD', 1815, '39.24890', '-80.30520'), ('WEST MILFORD', 651, '39.20570', '-80.40490')], 'partOfState': '', 'wfo': 'RLX'}, -'FLC055': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARCHBOLD', None, '27.19000', '-81.35000'), ('AVON PARK', 8542, '27.59320', '-81.50370'), ('BRIGHTON', None, '27.22000', '-81.09000'), ('CORNWELL', None, '27.37500', '-81.09000'), ('LAKE JOSEPHINE', None, '27.40000', '-81.44000'), ('LAKE PLACID', 1668, '27.29690', '-81.36970'), ('LORIDA', None, '27.45000', '-81.26000'), ('PLACID LAKES', 3054, '27.24120', '-81.40710'), ('SEBRING', 9667, '27.49070', '-81.45350'), ('SEBRING AIR TERMINAL', None, '27.46200', '-81.34300'), ('SEBRING SHORES', None, '27.53000', '-81.48000'), ('SPRING LAKE', 327, '27.43500', '-81.34500'), ('VENUS', None, '27.06500', '-81.35000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TBW'}, -'NCC193': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ABSHERS', None, '36.36670', '-81.11670'), ('BENHAM', None, '36.30000', '-80.91670'), ('BOOMER', None, '36.06670', '-81.25000'), ('BUCK', None, '36.16670', '-81.23330'), ('CLINGMAN', None, '36.18330', '-80.93330'), ('CRICKET', 2053, '36.16630', '-81.19140'), ('DARBY', None, '36.11670', '-81.50000'), ('DOCKERY', None, '36.30000', '-81.08330'), ('ELKVILLE', None, '36.06670', '-81.40000'), ('FAIRPLAINS', 2051, '36.21670', '-81.16670'), ('FAIRPLAINS', 2051, '36.19630', '-81.15270'), ('HALLS MILLS', None, '36.30000', '-81.21670'), ('HAYS', 1731, '36.24910', '-81.11610'), ('MAPLE SPGS', None, '36.18330', '-81.38330'), ('MC GRADY', None, '36.33330', '-81.23330'), ('MILLERS CREEK', 2071, '36.18330', '-81.23330'), ('MILLERS CREEK', 2071, '36.18890', '-81.23760'), ('MORAVIAN FALLS', 1440, '36.10720', '-81.18070'), ('MORAVIAN FALLS', 1440, '36.10000', '-81.18330'), ('MULBERRY', 2269, '36.22770', '-81.16610'), ('MULBERRY', 2269, '36.25000', '-81.16670'), ('NORTH WILKESBORO', 4116, '36.16970', '-81.14220'), ('PLEASANT HILL', 1109, '36.25300', '-80.88530'), ('ROARING RIVER', None, '36.21670', '-81.00000'), ('RONDA', 460, '36.22160', '-80.94330'), ('SUMMIT', None, '36.25000', '-81.41670'), ('TRAPHILL', None, '36.35000', '-81.03330'), ('WILBAR', None, '36.26670', '-81.31670'), ('WILKES CO ARPT', None, '36.21670', '-81.10000'), ('WILKESBORO', 3159, '36.14100', '-81.16480'), ('WINDY GAP', None, '36.11670', '-80.98330')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'TXC349': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANGUS', 334, '31.99770', '-96.42570'), ('BARRY', 209, '32.09870', '-96.63790'), ('BLOOMING GROVE', 833, '32.09190', '-96.71680'), ('CORSICANA', 24485, '32.08420', '-96.46500'), ('DAWSON', 852, '31.89380', '-96.71400'), ('EMHOUSE', 159, '32.16060', '-96.57760'), ('EUREKA', 340, '32.00970', '-96.28590'), ('FROST', 648, '32.07810', '-96.80800'), ('GOODLOW', 264, '32.11260', '-96.21640'), ('KERENS', 1681, '32.13100', '-96.22520'), ('MILDRED', 405, '32.03690', '-96.34480'), ('MUSTANG', 47, '32.01250', '-96.43090'), ('NAVARRO', 191, '32.00030', '-96.38190'), ('OAK VALLEY', 401, '32.03040', '-96.51100'), ('POWELL', 105, '32.11650', '-96.32870'), ('RETREAT', 339, '32.05130', '-96.47710'), ('RICE', 798, '32.24470', '-96.50130'), ('RICHLAND', 291, '31.92500', '-96.42580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC345': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FLOMOT', None, '34.22690', '-100.98860'), ('MATADOR', 740, '34.01510', '-100.82120'), ('NORTHFIELD', None, '34.28720', '-100.59830'), ('ROARING SPRINGS', 265, '33.89940', '-100.85580')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXC347': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('APPLEBY', 444, '31.71780', '-94.60750'), ('CHIRENO', 405, '31.49880', '-94.34540'), ('CUSHING', 637, '31.81330', '-94.84010'), ('GARRISON', 844, '31.82420', '-94.49250'), ('NACOGDOCHES', 29914, '31.61500', '-94.65190')], 'partOfState': '', 'wfo': 'SHV'}, -'TXC341': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CACTUS', 2538, '36.04470', '-102.01110'), ('DUMAS', 13747, '35.86320', '-101.96450'), ('FOUR WAY', None, '35.69190', '-101.96190'), ('LAKE MEREDITH', None, '35.65080', '-101.66190'), ('MASTERSON', None, '35.63580', '-101.95970'), ('SUNRAY', 1950, '36.01820', '-101.82340')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC343': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DAINGERFIELD', 2517, '33.03060', '-94.72420'), ('LONE STAR', 1631, '32.93740', '-94.70850'), ('NAPLES', 1410, '33.20360', '-94.67770'), ('OMAHA', 999, '33.17960', '-94.74220')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'COC123': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AULT', 1432, '40.58400', '-104.73310'), ('BARNESVILLE', None, '40.48000', '-104.48000'), ('BLACK HOLLOW RESERVOIR', None, '40.60800', '-104.87500'), ('BRACEWELL', None, '40.42000', '-104.78000'), ('BRIGGSDALE', None, '40.63000', '-104.32000'), ('BUCKINGHAM', None, '40.62000', '-103.97000'), ('CARR', None, '40.90000', '-104.87000'), ('CORNISH', None, '40.52000', '-104.42000'), ('DACONO', 3015, '40.07580', '-104.94290'), ('EATON', 2690, '40.52490', '-104.70980'), ('ERIE', 6291, '40.02890', '-105.04600'), ('EVANS', 9514, '40.37790', '-104.69680'), ('FIRESTONE', 1908, '40.12090', '-104.93400'), ('FORT LUPTON', 6787, '40.08520', '-104.80510'), ('FORT ST VRAIN', None, '40.27500', '-104.87500'), ('FREDERICK', 2467, '40.10500', '-104.94240'), ('GALETON', None, '40.52000', '-104.58000'), ('GARDEN CITY', 357, '40.39390', '-104.68870'), ('GILCREST', 1162, '40.28270', '-104.78190'), ('GILL', None, '40.45000', '-104.53000'), ('GREELEY', 76930, '40.42130', '-104.74390'), ('GROVER', 153, '40.86920', '-104.22560'), ('HARDIN', None, '40.32000', '-104.38000'), ('HEREFORD', None, '40.97000', '-104.30000'), ('HUDSON', 1565, '40.07100', '-104.64290'), ('IONE', None, '40.12000', '-104.80000'), ('JOHNSTOWN', 3827, '40.33540', '-104.91150'), ('KEENESBURG', 855, '40.10890', '-104.51860'), ('KEOTA', None, '40.70410', '-104.07370'), ('KERSEY', 1389, '40.38610', '-104.55980'), ('LA SALLE', 1849, '40.34780', '-104.70450'), ('LOCHBUIE', 2049, '40.00770', '-104.72010'), ('LOWER LATHAM RESERVOIR', None, '40.35000', '-104.64200'), ('LUCERNE', None, '40.48000', '-104.68000'), ('MASTERS', None, '40.30000', '-104.25000'), ('MEAD', 2017, '40.23430', '-104.98790'), ('MILLIKEN', 2888, '40.31660', '-104.85270'), ('MILTON RESERVOIR', None, '40.24200', '-104.63300'), ('NATURAL FORT REST AREA', None, '40.95700', '-104.92200'), ('NEW RAYMER', None, '40.62500', '-103.78000'), ('NEW WINDSOR RESERVOIR', None, '40.53300', '-104.88800'), ('NUNN', 471, '40.70390', '-104.78040'), ('PAWNEE BUTTES', None, '40.81700', '-103.98300'), ('PECKHAM', None, '40.30000', '-104.75000'), ('PIERCE', 884, '40.63290', '-104.75460'), ('PLATTEVILLE', 2370, '40.21690', '-104.82200'), ('PROSPECT VALLEY', None, '40.07400', '-104.41300'), ('PURCELL', None, '40.63000', '-104.58000'), ('RAYMER', 91, '40.60730', '-103.84390'), ('RIVERSIDE RESERVOIR', None, '40.32500', '-104.25000'), ('ROCKPORT', None, '40.90000', '-104.78000'), ('ROGGEN', None, '40.17000', '-104.37000'), ('SEELEY LAKE', None, '40.44000', '-104.71000'), ('SEVERANCE', 597, '40.52240', '-104.84960'), ('STONEHAM', None, '40.63500', '-103.65000'), ('WATTENBURG', None, '40.02000', '-104.80000'), ('WELTY', None, '40.32000', '-105.02000'), ('WINDSOR', 9896, '40.48520', '-104.90650')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC121': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AKRON', 1711, '40.16260', '-103.21170'), ('ANTON', None, '39.75000', '-103.22000'), ('ARICKAREE SCHOOL', None, '39.74600', '-103.03100'), ('BURDETT', None, '40.36300', '-102.94700'), ('COPE', None, '39.67000', '-102.85000'), ('ELBA', None, '39.92000', '-103.18000'), ('FREMONT BUTTE', None, '40.25000', '-103.30700'), ('HYDE', None, '40.13000', '-102.83000'), ('LAST CHANCE', None, '39.73000', '-103.58000'), ('LINDON', None, '39.73000', '-103.40000'), ('LONE STAR', None, '40.35300', '-102.84200'), ('MESSEX', None, '40.38000', '-103.38000'), ('MIDWAY', None, '40.22800', '-103.39600'), ('OTIS', 534, '40.14970', '-102.96160'), ('PLATNER', None, '40.16000', '-103.07000'), ('PREWITT RESERVOIR', None, '40.42900', '-103.35800'), ('THURMAN', None, '39.59600', '-103.21800'), ('WOODLIN SCHOOL', None, '39.78800', '-103.51900'), ('WOODROW', None, '39.98000', '-103.58000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC125': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ABARR', None, '39.85000', '-102.72000'), ('ALVIN', None, '40.30800', '-102.07800'), ('BEECHER ISLAND', None, '39.88000', '-102.13000'), ('BONNY RESERVOIR', None, '39.61300', '-102.16700'), ('CLARKVILLE', None, '40.38000', '-102.62000'), ('ECKLEY', 278, '40.11200', '-102.48820'), ('HALE', None, '39.62800', '-102.13000'), ('HEARTSTRONG', None, '39.94800', '-102.57900'), ('IDALIA', None, '39.70000', '-102.30000'), ('JOES', None, '39.65000', '-102.68000'), ('KIRK', None, '39.62000', '-102.60000'), ('LAIRD', None, '40.08000', '-102.10000'), ('VERNON', None, '39.93310', '-102.31930'), ('WAUNETA', None, '40.29300', '-102.25100'), ('WRAY', 2187, '40.07940', '-102.22600'), ('YUMA', 3285, '40.12390', '-102.72410')], 'partOfState': 'NORTHEAST', 'wfo': 'GLD'}, -'WVC101': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CAMDEN ON GAULEY', None, '38.36890', '-80.59780'), ('COWEN', 513, '38.41020', '-80.55510'), ('HOLLY RIVER STATE PARK', None, '38.66440', '-80.33520'), ('WEBSTER SPRINGS', None, '38.47840', '-80.41040')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC103': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('HUNDRED', 344, '39.68410', '-80.45750'), ('JACKSONBURG', None, '39.53000', '-80.65000'), ('KNOB FORK', None, '39.65000', '-80.55000'), ('LITTLETON', 207, '39.69960', '-80.51480'), ('NEW MARTINSVILLE', 5984, '39.66410', '-80.85970'), ('PINE GROVE', 571, '39.56470', '-80.68260'), ('SMITHFIELD', 177, '39.49890', '-80.56060')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVC105': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ELIZABETH', 994, '39.06240', '-81.39740')], 'partOfState': '', 'wfo': 'RLX'}, -'VAC690': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('MARTINSVILLE CITY', None, '36.68330', '-79.86670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'WVC107': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BLENNERHASSETT', 3225, '39.25850', '-81.63360'), ('BOAZ', 1345, '39.37100', '-81.48620'), ('LUBECK', 1303, '39.23640', '-81.62950'), ('MINERALWELLS', 1860, '39.17910', '-81.51160'), ('NORTH HILLS', 880, '39.31470', '-81.51050'), ('PARKERSBURG', 33099, '39.26400', '-81.54300'), ('VIENNA', 10861, '39.32270', '-81.53820'), ('WASHINGTON', 1170, '39.24090', '-81.67340'), ('WILLIAMSTOWN', 2996, '39.40120', '-81.45090')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC109': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('MULLENS', 1769, '37.57970', '-81.38520'), ('OCEANA', 1550, '37.69180', '-81.63270'), ('PINEVILLE', 715, '37.58560', '-81.53500'), ('TWIN FALLS STATE PARK', None, '37.63300', '-81.43730')], 'partOfState': '', 'wfo': 'RLX'}, -'TNC171': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BANNER HILL', 1053, '36.12760', '-82.40560'), ('ERWIN', 5610, '36.14490', '-82.41090'), ('LIMESTONE COVE', None, '36.17860', '-82.26330'), ('ROCKY FORK', None, '36.03390', '-82.55390'), ('UNICOI', 3519, '36.19390', '-82.35170')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC163': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CODELL', None, '39.19350', '-99.17700'), ('DAMAR', 155, '39.31910', '-99.58380'), ('PALCO', 248, '39.25390', '-99.56420'), ('PLAINVILLE', 2029, '39.23420', '-99.30130'), ('STOCKTON', 1558, '39.43630', '-99.27130'), ('WEBSTER STATE PARK', None, '39.39800', '-99.45000'), ('WOODSTON', 116, '39.45430', '-99.09870'), ('ZURICH', 126, '39.23160', '-99.43440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'TNC173': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LUTTRELL', 915, '36.20880', '-83.74460'), ('MAYNARDVILLE', 1782, '36.24690', '-83.80620'), ('NORRIS LAKE', None, '36.29220', '-83.91470'), ('PAULETTE', None, '36.19060', '-83.89140'), ('ROSE HILL', None, '36.30500', '-83.76190'), ('SHARPS CHAPEL', None, '36.34140', '-83.80560')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC161': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('KEATS', None, '39.22360', '-96.70830'), ('LEONARDVILLE', 398, '39.36440', '-96.85860'), ('MANHATTAN', 44831, '39.18360', '-96.57140'), ('OGDEN', 1762, '39.11110', '-96.70580'), ('RANDOLPH', 175, '39.43060', '-96.75970'), ('RILEY', 886, '39.29890', '-96.83060')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'TNC175': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('SPENCER', 1713, '35.74230', '-85.45670')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC167': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BUNKER HILL', 101, '38.87260', '-98.70080'), ('DORRANCE', 205, '38.84630', '-98.59020'), ('GORHAM', 360, '38.88070', '-99.02360'), ('LUCAS', 436, '39.05750', '-98.53850'), ('LURAY', 203, '39.11500', '-98.69240'), ('MILBERGER', None, '38.72000', '-98.92000'), ('PARADISE', 64, '39.11460', '-98.91760'), ('RUSSELL', 4696, '38.88790', '-98.85350'), ('RUSSELL ARPT', None, '38.86670', '-98.81670'), ('WALDO', 48, '39.12020', '-98.79750')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'TNC177': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CENTERTOWN', 257, '35.72480', '-85.91970'), ('MCMINNVILLE', 12749, '35.68750', '-85.77630'), ('MORRISON', 684, '35.60240', '-85.91850'), ('VIOLA', 129, '35.53800', '-85.86060')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC165': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALEXANDER', 75, '38.46940', '-99.55200'), ('BISON', 235, '38.51980', '-99.19720'), ('HARGRAVE', None, '38.55000', '-99.43000'), ('LA CROSSE', 1376, '38.53170', '-99.30980'), ('LIEBENTHAL', 111, '38.65450', '-99.32000'), ('LORETTA', None, '38.65000', '-99.18330'), ('MCCRACKEN', 211, '38.58230', '-99.56890'), ('NEKOMA', None, '38.47000', '-99.44000'), ('OTIS', 325, '38.53490', '-99.05310'), ('RUSH CENTER', 176, '38.46490', '-99.31050'), ('SHAFFER', None, '38.46000', '-99.08000'), ('TIMKEN', 83, '38.47290', '-99.17700')], 'partOfState': 'CENTRAL', 'wfo': 'DDC'}, -'TNC179': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('AVONDALE', None, '36.30970', '-82.46420'), ('EMBREEVILLE', None, '36.17970', '-82.46110'), ('FALL BRANCH', 1313, '36.41720', '-82.62340'), ('GRAY', 1273, '36.41120', '-82.47970'), ('JOHNSON CITY', 55469, '36.33140', '-82.36870'), ('JONESBOROUGH', 4168, '36.29360', '-82.47770'), ('LEESBURG', None, '36.29220', '-82.54470'), ('LIBERTY', 367, '36.14000', '-82.61920'), ('LIMESTONE', None, '36.22720', '-82.63280')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC169': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(SLN)SALINA MUNI ARPT', None, '38.80000', '-97.65000'), ('ASSARIA', 438, '38.68040', '-97.60370'), ('BRIDGEPORT', None, '38.63330', '-97.60000'), ('BROOKVILLE', 259, '38.77370', '-97.86420'), ('GLENDALE', None, '38.90000', '-97.87000'), ('GYPSUM', 414, '38.70580', '-97.42650'), ('NEW CAMBRIA', 150, '38.87960', '-97.50540'), ('SALINA', 45679, '38.81580', '-97.61780'), ('SMOLAN', 218, '38.73800', '-97.68360')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'MIC163': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BELLEVILLE', 3997, '42.20340', '-83.48230'), ('CANTON', 76366, '42.30850', '-83.48220'), ('DEARBORN', 97775, '42.31130', '-83.21350'), ('DOWNTOWN DETROIT', None, '42.33220', '-83.04810'), ('FLAT ROCK', 8488, '42.10180', '-83.27290'), ('GROSSE ILE', 10894, '42.12840', '-83.14940'), ('GROSSE POINTE', 5670, '42.38650', '-82.90610'), ('GROSSE POINTE SHORES', 2823, '42.44520', '-82.87410'), ('HAMTRAMCK', 22976, '42.40000', '-83.07000'), ('HIGHLAND PARK', 16746, '42.40490', '-83.09880'), ('LINCOLN PARK', 40008, '42.24350', '-83.18100'), ('LIVONIA', 100545, '42.39820', '-83.37250'), ('NORTHVILLE', 6459, '42.43650', '-83.48840'), ('NORTHEAST DETROIT', None, '42.43000', '-83.03000'), ('NORTHWEST DETROIT', None, '42.40000', '-83.22000'), ('PLYMOUTH', 9022, '42.37120', '-83.46740'), ('REDFORD', 51622, '42.39480', '-83.29420'), ('RIVERVIEW', 13272, '42.17140', '-83.19210'), ('ROMULUS', 22979, '42.22380', '-83.36620'), ('SOUTHWEST DETROIT', None, '42.33000', '-83.11000'), ('SUMPTER TOWNSHIP', None, '42.13150', '-83.48170'), ('TAYLOR', 65868, '42.22530', '-83.26840'), ('WESTLAND', 86602, '42.31900', '-83.38090')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIC161': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ANN ARBOR', 114024, '42.27540', '-83.73080'), ('BRIDGEWATER', None, '42.16020', '-83.89820'), ('CHELSEA', 4398, '42.31440', '-84.02200'), ('DEXTER', 2338, '42.33150', '-83.87980'), ('HUDSON MILLS', None, '42.38720', '-83.91690'), ('LYNDON TOWNSHIP', None, '42.38150', '-84.06750'), ('MANCHESTER', 2160, '42.14890', '-84.03550'), ('MILAN', 4775, '42.08740', '-83.68190'), ('PLEASANT LAKE', None, '42.20670', '-83.95110'), ('SALEM', None, '42.40610', '-83.58000'), ('SALINE', 8034, '42.17580', '-83.78000'), ('WHITMORE LAKE', 6574, '42.42910', '-83.74540'), ('WHITTAKER', None, '42.12810', '-83.59970'), ('YPSILANTI', 22362, '42.24420', '-83.62110')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TXC299': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUCHANAN DAM', 1688, '30.79910', '-98.43830'), ('CASTELL', None, '30.70000', '-98.50000'), ('ENCHANTED ROCK STATE PARK', None, '30.51000', '-98.85000'), ('HORSESHOE BAY', 3337, '30.53710', '-98.35480'), ('KINGSLAND', 4584, '30.66470', '-98.45350'), ('LLANO', 3325, '30.75130', '-98.67390'), ('SUNRISE BEACH VILLAGE', 704, '30.58830', '-98.41880'), ('TOW', None, '30.88330', '-98.46670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'MIC001': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARTON CITY', None, '44.68330', '-83.60000'), ('BLACK RIVER', None, '44.81660', '-83.31000'), ('CURTISVILLE', None, '44.56660', '-83.86660'), ('CURRAN', None, '44.71660', '-83.80000'), ('GLENNIE', None, '44.56660', '-83.71660'), ('HARRISVILLE', 514, '44.65670', '-83.30000'), ('HUBBARD LAKE', 993, '44.80000', '-83.59000'), ('LINCOLN', 364, '44.68520', '-83.41260'), ('MIKADO', None, '44.56680', '-83.41670'), ('SPRUCE', None, '44.83410', '-83.46670')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'TXC293': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COOLIDGE', 848, '31.75120', '-96.65200'), ('GROESBECK', 4291, '31.52450', '-96.53110'), ('KOSSE', 497, '31.30690', '-96.62870'), ('MEXIA', 6563, '31.67970', '-96.48070'), ('TEHUACANA', 307, '31.74420', '-96.54400'), ('THORNTON', 525, '31.41170', '-96.57460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC291': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AMES', 1079, '30.04690', '-94.73770'), ('CLEVELAND', 7605, '30.34420', '-95.07870'), ('DAISETTA', 1034, '30.11410', '-94.64270'), ('DAYTON', 5709, '30.05040', '-94.89530'), ('DAYTON LAKES', 101, '30.14520', '-94.82150'), ('DEVERS', 416, '30.02760', '-94.58510'), ('HARDIN', 755, '30.15000', '-94.73640'), ('KENEFICK', 667, '30.10880', '-94.85410'), ('LIBERTY', 8033, '30.04600', '-94.79770'), ('NORTH CLEVELAND', 263, '30.36270', '-95.10160'), ('PLUM GROVE', 930, '30.19850', '-95.08740')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXC297': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANNAROSE', None, '28.08770', '-98.16690'), ('CHOKE CANYON', None, '28.50880', '-98.31580'), ('CLEGG', None, '28.12500', '-98.29000'), ('DINERO', None, '28.20500', '-97.93333'), ('ESSEVILLE', None, '28.67270', '-98.22000'), ('GEORGE WEST', 2524, '28.33030', '-98.11770'), ('LAGARTO', None, '28.08833', '-97.93333'), ('LAKE CORPUS CHRISTI', None, '28.12880', '-97.87500'), ('NELL', None, '28.69583', '-98.07500'), ('OAKVILLE', None, '28.41380', '-98.06190'), ('RAY POINT', None, '28.47500', '-98.08333'), ('SIMMONS', None, '28.39166', '-98.30416'), ('THREE RIVERS', 1878, '28.46560', '-98.17790'), ('WHITSETT', None, '28.62383', '-98.27777')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXC295': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOOKER', 1315, '36.45590', '-100.53960'), ('DARROUZETT', 303, '36.44510', '-100.32540'), ('FOLLETT', 412, '36.43420', '-100.14070'), ('HIGGINS', 425, '36.12030', '-100.02690'), ('LIPSCOMB', 44, '36.23330', '-100.27060')], 'partOfState': '', 'wfo': 'AMA'}, -'NCC173': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALARKA', None, '35.35180', '-83.43730'), ('ALMOND', None, '35.36970', '-83.56530'), ('BRYSON CITY', 1411, '35.42650', '-83.44730'), ('CHEROKEE', None, '35.47420', '-83.31500'), ('LUADA', None, '35.37280', '-83.50420'), ('NEWFOUND GAP', None, '35.60650', '-83.42500'), ('SMOKEMONT', None, '35.55200', '-83.30520'), ('WESSER', None, '35.33310', '-83.59140')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC171': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARARAT', None, '36.40000', '-80.56670'), ('BOTTOM', None, '36.48330', '-80.76670'), ('BURCH', None, '36.28330', '-80.76670'), ('CRUTCHFIELD', None, '36.28330', '-80.71670'), ('DOBSON', 1457, '36.39160', '-80.72130'), ('ELKIN', 4109, '36.25750', '-80.84920'), ('FAIRVIEW', 2495, '36.33330', '-80.71670'), ('FLAT ROCK', 1690, '36.50700', '-80.58320'), ('LEVEL CROSS', None, '36.35000', '-80.63330'), ('LOW GAP', None, '36.53330', '-80.86670'), ('MOUNT AIRY', 8484, '36.50380', '-80.61310'), ('MOUNTAIN PARK', None, '36.38330', '-80.85000'), ('PILOT MOUNTAIN', 1281, '36.38430', '-80.47190'), ('PINE RIDGE', None, '36.50000', '-80.71670'), ('ROCKFORD', None, '36.26670', '-80.65000'), ('SILOAM', None, '36.28330', '-80.56670'), ('STATE RD', None, '36.31670', '-80.86670'), ('TOAST', 1922, '36.49690', '-80.63290'), ('WESTFIELD', None, '36.48330', '-80.61670'), ('WHITE PLAINS', 1049, '36.45000', '-80.63330'), ('WHITE PLAINS', 1049, '36.44970', '-80.63810'), ('WOODVILLE', None, '36.50000', '-80.48330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'NCC177': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('COLUMBIA', 819, '35.91970', '-76.25120')], 'partOfState': '', 'wfo': 'MHX'}, -'NCC175': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BALSAM GROVE', None, '35.22940', '-82.87390'), ('BREVARD', 6789, '35.23770', '-82.73020'), ('CEDAR MOUNTAIN', None, '35.14330', '-82.64310'), ('LAKE TOXAWAY', None, '35.13220', '-82.93420'), ('LITTLE RIVER', None, '35.23860', '-82.62920'), ('ROSMAN', 490, '35.14380', '-82.82200'), ('SAPPHIRE', None, '35.10690', '-83.00310')], 'partOfState': '', 'wfo': 'GSP'}, -'GAC103': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARDMORE', None, '32.49500', '-81.42890'), ('BERRYVILLE', None, '32.42830', '-81.25890'), ('BIRDS', None, '32.34060', '-81.24420'), ('BLANDFORD', None, '32.27830', '-81.26330'), ('CLYO', None, '32.48390', '-81.26720'), ('COLDBROOK', None, '32.23750', '-81.24190'), ('DOSWELL', None, '32.20970', '-81.39390'), ('EBENEZER', None, '32.37780', '-81.18250'), ('EDEN', None, '32.17360', '-81.39080'), ('EGYPT', None, '32.46170', '-81.47420'), ('EXLEY', None, '32.24560', '-81.22920'), ('GUYTON', 917, '32.33610', '-81.39170'), ('HADDONVILLE', None, '32.43440', '-81.23030'), ('KILDARE', None, '32.53420', '-81.45560'), ('LORENZO', None, '32.43750', '-81.37690'), ('MARLOW', None, '32.26890', '-81.39080'), ('MELDRIM', None, '32.14310', '-81.37810'), ('OAKY', None, '32.52470', '-81.39110'), ('PINEORA', None, '32.28670', '-81.39170'), ('RAHNS', None, '32.31420', '-81.28140'), ('RINCON', 4376, '32.29580', '-81.23560'), ('SHAWNEE', None, '32.47560', '-81.40830'), ('SPRINGFIELD', 1821, '32.37000', '-81.37500'), ('STILLWELL', None, '32.37780', '-81.25060'), ('TUSCULUM', None, '32.39280', '-81.43080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'NCC179': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('FAIRVIEW', 2495, '35.13830', '-80.53780'), ('FAIRVIEW', 2495, '35.13830', '-80.53780'), ('INDIAN TRAIL', 11905, '35.07240', '-80.67920'), ('MARSHVILLE', 2360, '34.98710', '-80.36820'), ('MONROE', 26228, '34.98710', '-80.54180'), ('NEW SALEM', None, '35.13080', '-80.36940'), ('STALLINGS', 3189, '35.08470', '-80.68950'), ('STURDIVANTS', None, '34.90580', '-80.32830'), ('TRINITY', 6690, '34.84970', '-80.53110'), ('WAXHAW', 2625, '34.92430', '-80.74210'), ('WEDDINGTON', 6696, '35.03160', '-80.73810'), ('WINGATE', 2406, '34.98330', '-80.44850')], 'partOfState': '', 'wfo': 'GSP'}, -'GAC107': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GARFIELD', 152, '32.65030', '-82.09650'), ('NUNEZ', 131, '32.49170', '-82.34670'), ('OAK PARK', 366, '32.35790', '-82.31470'), ('STILLMORE', 730, '32.44100', '-82.21480'), ('SUMMERTOWN', 140, '32.74640', '-82.27630'), ('SWAINSBORO', 6943, '32.59010', '-82.33610'), ('TWIN CITY', 1752, '32.58460', '-82.15770')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAC105': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOWMAN', 898, '34.20340', '-83.02890'), ('BOWMAN', 898, '34.20340', '-83.02890'), ('DEWY ROSE', None, '34.16970', '-82.95310'), ('ELBERTON', 4743, '34.10550', '-82.86400'), ('ELBERTON', 4743, '34.10550', '-82.86400'), ('FORTSONIA', None, '34.01500', '-82.77920'), ('MIDDLETON', None, '34.09920', '-82.76750'), ('RUCKERSVILLE', None, '34.16470', '-82.78830')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'GAC097': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DOUGLASVILLE', 20065, '33.74520', '-84.74510'), ('LITHIA SPRINGS', 2072, '33.77900', '-84.64420')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'WYC015': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('FORT LARAMIE', 243, '42.21240', '-104.51660'), ('HAWK SPRINGS', 69, '41.79000', '-104.27000'), ('JAY EM', None, '42.47000', '-104.36000'), ('LA GRANGE', 332, '41.63940', '-104.16380'), ('LINGLE', 510, '42.13880', '-104.34600'), ('TORRINGTON', 5776, '42.06750', '-104.18200'), ('VETERAN', 28, '41.96000', '-104.35000'), ('YODER', 169, '41.91760', '-104.29460')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'GAC263': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GENEVA', 114, '32.57960', '-84.55220'), ('JUNCTION CITY', 179, '32.60290', '-84.45830'), ('TALBOTTON', 1019, '32.67730', '-84.54090'), ('WOODLAND', 432, '32.78750', '-84.56110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'TXC125': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AFTON', None, '33.76270', '-100.81630'), ('DICKENS', 332, '33.62130', '-100.83580'), ('MCAD00', None, '33.73380', '-101.00580'), ('SPUR', 1088, '33.47810', '-100.85490')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXC127': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ASHERTON', 1342, '28.44600', '-99.76050'), ('BIG WELLS', 704, '28.56950', '-99.57000'), ('CARRIZO SPRINGS', 5655, '28.52550', '-99.85900'), ('CATARINA', 135, '28.35000', '-99.61670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'MSC055': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MAYERSVILLE', 795, '32.89740', '-91.04490')], 'partOfState': 'WEST CENTRAL', 'wfo': 'JAN'}, -'TXC123': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CUERO', 6571, '29.09410', '-97.28740'), ('HOCHHEIM', None, '29.31670', '-97.30000'), ('NORDHEIM', 323, '28.92330', '-97.61360'), ('THOMASTON', None, '29.00000', '-97.15000'), ('WESTHOFF', None, '29.20000', '-97.46670'), ('YORKTOWN', 2271, '28.98290', '-97.50410')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'MSC059': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ESCATAWPA', 3566, '30.48900', '-88.55120'), ('GAUTIER', 11681, '30.38890', '-88.63990'), ('GULF PARK ESTATES', 4272, '30.37920', '-88.75850'), ('MOSS POINT', 15851, '30.42550', '-88.52900'), ('OCEAN SPRINGS', 17225, '30.40610', '-88.80190'), ('PASCAGOULA', 26200, '30.36610', '-88.54730'), ('ST. MARTIN', 6676, '30.43770', '-88.86820'), ('VANCLEAVE', 4910, '30.54170', '-88.66710'), ('WADE', 491, '30.64220', '-88.56970')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'TXC129': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLARENDON', 1974, '34.93670', '-100.89180'), ('GREENBELT LAKE', None, '35.01190', '-100.91080'), ('HEDLEY', 379, '34.86700', '-100.65940'), ('HOWARDWICK', 437, '35.03520', '-100.90870'), ('LELIA LAKE', None, '34.90110', '-100.77030')], 'partOfState': '', 'wfo': 'AMA'}, -'GAC227': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('JASPER', 2167, '34.46980', '-84.42830'), ('TALKING ROCK', 49, '34.50950', '-84.50520')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'VAC159': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('DOWNING', None, '37.84440', '-76.62330'), ('EMMERTON', None, '37.89910', '-76.67990'), ('ETHEL', None, '37.99650', '-76.78090'), ('FARNHAM', None, '37.88600', '-76.62570'), ('FONESWOOD', None, '38.10480', '-76.90100'), ('HAYNESVILLE', None, '37.95030', '-76.66280'), ('KENNARD', None, '37.91560', '-76.74810'), ('LYELLS', None, '37.99690', '-76.72920'), ('MOON CORNER', None, '37.86910', '-76.55020'), ('MULCH', None, '37.90380', '-76.57110'), ('NAYLORS BEACH', None, '37.97750', '-76.86330'), ('NEWLAND', None, '38.05070', '-76.87370'), ('PINEY GROVE', None, '38.02700', '-76.78640'), ('ROBLEY', None, '37.84670', '-76.58150'), ('SHARPS', None, '37.84000', '-76.70110'), ('SINGERLY', None, '38.08030', '-76.89670'), ('TIDEWATER', None, '37.85490', '-76.69860'), ('WARSAW', 1375, '37.96110', '-76.76130'), ('WELLFORD', None, '37.90000', '-76.75000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'TXC335': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COLORADO CITY', 4281, '32.39970', '-100.85760'), ('CUTHBERT', None, '32.48000', '-101.03000'), ('LORAINE', 656, '32.40830', '-100.71220'), ('WESTBROOK', 203, '32.35690', '-101.01220')], 'partOfState': '', 'wfo': 'MAF'}, -'NYC025': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ANDES', 289, '42.19000', '-74.78420'), ('ARKVILLE', None, '42.15000', '-74.61670'), ('BEERSTON', None, '42.13330', '-75.16670'), ('BOVINA CENTER', None, '42.26670', '-74.78330'), ('BUTTS CORNER', None, '42.46670', '-74.81670'), ('CANNONSVILLE', None, '42.10000', '-75.31670'), ('COLCHESTER', None, '42.16670', '-75.08330'), ('CORBETT', None, '42.05000', '-75.01670'), ('DAVENPORT', None, '42.46670', '-74.85000'), ('DAVENPORT CENTER', None, '42.45000', '-74.91670'), ('DELHI', 2583, '42.28000', '-74.91450'), ('DEPOSIT', 1699, '42.06400', '-75.42190'), ('DOWNSVILLE', None, '42.08330', '-75.00000'), ('DUNRAVEN', None, '42.11670', '-74.70000'), ('EAST BRANCH', None, '41.98330', '-75.11670'), ('EAST DELHI', None, '42.30000', '-74.88330'), ('EAST MEREDITH', None, '42.41670', '-74.88330'), ('EAST SIDNEY', None, '42.33330', '-75.23330'), ('FERGUSONVILLE', None, '42.50000', '-74.83330'), ('FISHS EDDY', None, '41.96670', '-75.16670'), ('FLEISCHMANNS', 351, '42.15560', '-74.53350'), ('FRANKLIN', 402, '42.34260', '-75.16640'), ('HALCOTTSVILLE', None, '42.20000', '-74.60000'), ('HALE EDDY', None, '42.00000', '-75.36670'), ('HAMDEN', None, '42.20000', '-75.00000'), ('HANCOCK', 1189, '41.95340', '-75.28330'), ('HARVARD', None, '42.03330', '-75.11670'), ('HOBART', 390, '42.37120', '-74.66890'), ('KORTRIGHT', None, '42.40000', '-74.80000'), ('LOOMIS', None, '42.20000', '-75.21670'), ('MARGARETVILLE', 643, '42.14440', '-74.65210'), ('MASONVILLE', None, '42.25000', '-75.36670'), ('MEREDITH', None, '42.35000', '-74.95000'), ('MERIDALE', None, '42.36670', '-74.95000'), ('NEW KINGSTON', None, '42.21670', '-74.68330'), ('NORTH FRANKLIN', None, '42.40000', '-75.08330'), ('PEABROOK', None, '41.90000', '-75.13330'), ('ROCK RIFT', None, '42.10000', '-75.20000'), ('ROXBURY', None, '42.28330', '-74.56670'), ('SHINHOPPLE', None, '42.05000', '-75.06670'), ('SIDNEY', 4068, '42.30590', '-75.39770'), ('SIDNEY CENTER', None, '42.28330', '-75.25000'), ('STAMFORD', 1265, '42.40890', '-74.61760'), ('STILESVILLE', None, '42.08330', '-75.40000'), ('TROUT CREEK', None, '42.20000', '-75.26670'), ('WALTON', 3070, '42.16970', '-75.13070'), ('WOLF HOLLOW', None, '42.15000', '-74.80000'), ('YOUNGS', None, '42.30000', '-75.31670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'MIC141': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('FORTY MILE POINT', None, '45.49000', '-83.92000'), ('HAGENSVILLE', None, '45.33330', '-83.80000'), ('HAWKS', None, '45.30000', '-83.90000'), ('HURON BEACH', None, '45.49000', '-84.11000'), ('METZ', None, '45.28340', '-83.81660'), ('MILLERSBURG', 263, '45.33380', '-84.06060'), ('OCQUEOC', None, '45.41000', '-84.10000'), ('ONAWAY', 993, '45.35850', '-84.22830'), ('P H HOEFT STATE PARK', None, '45.47000', '-83.88500'), ('POSEN', 292, '45.26210', '-83.69940'), ('PRESQUE ISLE', None, '45.30000', '-83.46660'), ('ROGERS CITY', 3322, '45.41850', '-83.80650')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'WYC013': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ARAPAHOE', 1766, '42.97050', '-108.47510'), ('ATLANTIC CITY', 39, '42.50000', '-108.73000'), ('CROWHEART', 163, '43.31000', '-109.19000'), ('DUBOIS', 962, '43.53630', '-109.64210'), ('ETHETE', 1455, '43.02170', '-108.75700'), ('FORT WASHAKIE', 1477, '43.00790', '-108.92590'), ('HUDSON', 407, '42.90200', '-108.58160'), ('JEFFREY CITY', 106, '42.48000', '-107.84000'), ('KINNEAR', None, '43.15000', '-108.68000'), ('LANDER', 6867, '42.83000', '-108.72860'), ('LYSITE', None, '43.25000', '-107.71000'), ('MONETA', None, '43.16000', '-107.73000'), ('MORTON', None, '43.19000', '-108.77000'), ('PAVILLION', 165, '43.24400', '-108.69080'), ('RIVERTON', 9310, '43.03560', '-108.41480'), ('SHOSHONI', 635, '43.23790', '-108.10290'), ('ST. STEPHENS', None, '42.98000', '-108.42000')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'TXC441': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABILENE', 115930, '32.44860', '-99.73280'), ('BRADSHAW', None, '32.09830', '-99.89750'), ('BUFFALO GAP', 463, '32.28220', '-99.83130'), ('DYESS AFB', None, '32.42250', '-99.86170'), ('HAMBY', None, '32.51860', '-99.63080'), ('HAPPY VALLEY', None, '32.13250', '-100.10890'), ('IMPACT', 39, '32.49880', '-99.74630'), ('LAWN', 353, '32.13470', '-99.74940'), ('MERKEL', 2637, '32.46830', '-100.01280'), ('OVALO', None, '32.17280', '-99.80750'), ('POTOSI', 1664, '32.33560', '-99.68420'), ('TRENT', 318, '32.48580', '-100.12500'), ('TUSCOLA', 714, '32.21070', '-99.79890'), ('TYE', 1158, '32.45320', '-99.86940'), ('VIEW', None, '32.34280', '-99.88440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'IAC197': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BELMOND', 2560, '42.84920', '-93.60950'), ('CLARION', 2968, '42.73210', '-93.73210'), ('DOWS', 675, '42.65870', '-93.50200'), ('EAGLE GROVE', 3712, '42.66730', '-93.90130'), ('GALT', 30, '42.69390', '-93.60480'), ('GOLDFIELD', 680, '42.73570', '-93.92120'), ('ROWAN', 218, '42.74010', '-93.54960'), ('WOOLSTOCK', 204, '42.56530', '-93.84340')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'VAC073': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ACHILLES', None, '37.28000', '-76.44070'), ('ADNER', None, '37.49870', '-76.63340'), ('ALLMONDSVILLE', None, '37.39720', '-76.64840'), ('ARK', None, '37.43820', '-76.57730'), ('BELROI', None, '37.38770', '-76.58790'), ('BEULAH', None, '37.39000', '-76.44230'), ('CASH', None, '37.53510', '-76.54550'), ('CLAY BANK', None, '37.36000', '-76.59000'), ('DUTTON', None, '37.49450', '-76.46870'), ('GLASS', None, '37.31680', '-76.44990'), ('GLENNS', None, '37.56550', '-76.61260'), ('GLOUCESTER COURTHOUSE', 2269, '37.40980', '-76.52700'), ('GLOUCESTER POINT', 9429, '37.26770', '-76.49550'), ('HARCUM', None, '37.51840', '-76.50500'), ('HAYES', None, '37.37610', '-76.50310'), ('MARYUS', None, '37.27960', '-76.40310'), ('NAXERA', None, '37.34200', '-76.44770'), ('ORDINARY', None, '37.31640', '-76.51360'), ('PAMPA', None, '37.52540', '-76.59310'), ('PINERO', None, '37.49250', '-76.54060'), ('SELDEN', None, '37.35740', '-76.46820'), ('SEVERN', None, '37.29420', '-76.41580'), ('WARE NECK', None, '37.40250', '-76.45890'), ('WHITE MARSH', None, '37.34210', '-76.52070'), ('WICOMICO', None, '37.29190', '-76.51910')], 'partOfState': '', 'wfo': 'AKQ'}, -'MIC143': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('HIGGINS LAKE', None, '44.46000', '-84.73500'), ('HOUGHTON LAKE', 3749, '44.30000', '-84.76000'), ('LAKE ST. HELEN', None, '44.36000', '-84.50000'), ('NORTH HIGGINS LAKE PARK', None, '44.50000', '-84.73000'), ('PRUDENVILLE', 1737, '44.30000', '-84.67000'), ('ROSCOMMON', 1133, '44.50000', '-84.59500'), ('ROSCOMMON COUNTY AIRPORT', None, '44.35500', '-84.68600'), ('SOUTH HIGGINS LAKE STATE', None, '44.44000', '-84.67000'), ('ST. HELEN', 2993, '44.36280', '-84.41860'), ('TWIN LAKES AREA', None, '44.23330', '-84.45000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'VAC075': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CALEDONIA', None, '37.82110', '-78.10600'), ('CENTERVILLE', None, '37.67090', '-77.68740'), ('CROZIER', None, '37.63720', '-77.79690'), ('ELK HILL', None, '37.71730', '-78.08750'), ('FIFE', None, '37.74220', '-78.05880'), ('GEORGES TAVERN', None, '37.73550', '-78.05430'), ('GOOCHLAND', None, '37.68390', '-77.88540'), ('HADENSVILLE', None, '37.82550', '-77.99970'), ('IRWIN', None, '37.69390', '-77.92350'), ('JOHNSONS SPRINGS', None, '37.69810', '-77.71140'), ('MAIDENS', None, '37.66900', '-77.88180'), ('MANAKIN', None, '37.60170', '-77.70200'), ('OILVILLE', None, '37.70500', '-77.78790'), ('OTHMA', None, '37.77250', '-77.98000'), ('PEMBERTON', None, '37.67440', '-78.08500'), ('ROCK CASTLE', None, '37.62660', '-77.97830'), ('SABOT', None, '37.61410', '-77.74800'), ('SANDY HOOK', None, '37.75280', '-77.91270'), ('TABSCOTT', None, '37.86120', '-78.06440'), ('THREE SQUARE', None, '37.66500', '-77.99460'), ('WEST VIEW', None, '37.64600', '-78.00820')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'VAC077': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BAYWOOD', None, '36.61670', '-81.01670'), ('BRIDLE CREEK', None, '36.61670', '-81.25000'), ('COMERS ROCK', None, '36.75000', '-81.25000'), ('ELK CREEK', None, '36.71670', '-81.18330'), ('FLATRIDGE', None, '36.73330', '-81.31670'), ('FRIES', 614, '36.71670', '-80.96670'), ('INDEPENDENCE', 971, '36.61670', '-81.15000'), ('MOUTH OF WILSON', None, '36.58330', '-81.33330'), ('RUGBY', None, '36.61670', '-81.45000'), ('SPRING VALLEY', None, '36.73330', '-81.06670'), ('TROUT DALE', None, '36.70000', '-81.43330'), ('VOLNEY', None, '36.61670', '-81.38330'), ('WHITETOP', None, '36.60000', '-81.61670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'PRC129': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('JAGUAL', 1402, '18.16280', '-65.99770'), ('SAN LORENZO', 8947, '18.19080', '-65.96640')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC079': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMICUS', None, '38.25560', '-78.48030'), ('DAWSONVILLE', None, '38.26530', '-78.31530'), ('FLETCHER', None, '38.39280', '-78.43360'), ('HANEYTOWN', None, '38.29030', '-78.53560'), ('LYDIA', None, '38.33030', '-78.49110'), ('MCMULLEN', None, '38.34830', '-78.45810'), ('NEWTOWN', None, '38.23750', '-78.33750'), ('RUCKERSVILLE', None, '38.23000', '-78.37000'), ('SHADY GROVE', None, '38.26030', '-78.59280'), ('STANARDSVILLE', 476, '38.30040', '-78.43830')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'PRC127': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('SAN JUAN', 421958, '18.40840', '-66.06440')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC125': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('SABANA ENEAS', 1847, '18.08410', '-67.08540'), ('SAN GERMAN', None, '18.08470', '-67.04550')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC123': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CENTRAL AGUIRRE', 1588, '17.95700', '-66.22660'), ('COCO', 5803, '18.00450', '-66.26000'), ('COQUI', None, '17.98060', '-66.22640'), ('LA PLENA', 1036, '18.04430', '-66.20660'), ('LAS OCHENTA', 1199, '17.98580', '-66.31810'), ('SALINAS', 6141, '17.97940', '-66.29660'), ('VAZQUEZ', None, '18.06770', '-66.23910')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC121': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('LIBORIO NEGRON TORRES', None, '18.04510', '-66.94280'), ('LLUVERAS', 2005, '18.04040', '-66.90510'), ('SABANA GRANDE', 8784, '18.08400', '-66.96710')], 'partOfState': '', 'wfo': 'SJU'}, -'KYC069': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('COWAN', None, '38.40860', '-83.89220'), ('CRAINTOWN', None, '38.38910', '-83.78720'), ('DALESBURG', None, '38.46530', '-83.67830'), ('ELIZAVILLE', None, '38.42110', '-83.82580'), ('EWING', 278, '38.42730', '-83.86230'), ('FAIRVIEW', 156, '38.45000', '-83.93000'), ('FLEMINGSBURG', 3010, '38.42350', '-83.73690'), ('FLEMINGSBURG JUNCTION', None, '38.45940', '-83.80780'), ('FOXPORT', None, '38.47560', '-83.59190'), ('GODDARD', None, '38.36310', '-83.61530'), ('GRANGE CITY', None, '38.24560', '-83.66520'), ('HILLSBORO', None, '38.29440', '-83.65970'), ('MOUNT CARMEL', None, '38.48500', '-83.63720'), ('MUSES MILLS', None, '38.35060', '-83.52750'), ('NEPTON', None, '38.43670', '-83.83530'), ('PECKS RIDGE', None, '38.36000', '-83.80000'), ('PLEASUREVILLE', 869, '38.47970', '-83.60330'), ('PLUMMERS LANDING', None, '38.32060', '-83.56080'), ('POPLAR PLAINS', None, '38.36170', '-83.67500'), ('RINGOS MILLS', None, '38.26640', '-83.60940'), ('SHERBURNE', None, '38.29000', '-83.81000'), ('TILTON', None, '38.34750', '-83.75940'), ('WALLINGFORD', None, '38.40580', '-83.61250'), ('WYOMING', None, '38.21970', '-83.69910')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'VTC021': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BENSON', None, '43.72000', '-73.32000'), ('BRANDON', 1684, '43.80120', '-73.08650'), ('CASTLETON', None, '43.62000', '-73.18000'), ('CHITTENDEN', None, '43.72000', '-72.95000'), ('DANBY', None, '43.35000', '-73.00000'), ('FAIR HAVEN', 2435, '43.59580', '-73.27110'), ('HUBBARDTON', None, '43.72000', '-73.18000'), ('KILLINGTON', None, '43.67000', '-72.77000'), ('MENDON', None, '43.65000', '-72.93000'), ('MIDDLETOWN SPRINGS', None, '43.48000', '-73.12000'), ('MT. HOLLY', None, '43.45000', '-72.82000'), ('PAWLET', None, '43.35000', '-73.18000'), ('PITTSFIELD', None, '43.78000', '-72.82000'), ('PITTSFORD', None, '43.70000', '-73.03000'), ('POULTNEY', 1575, '43.51780', '-73.23610'), ('RUTLAND', 17292, '43.60890', '-72.97960'), ('SHREWSBURY', None, '43.52000', '-72.87000'), ('SOUTH WALLINGFORD', None, '43.42000', '-72.98000'), ('SUDBURY', None, '43.80000', '-73.20000'), ('WALLINGFORD', 948, '43.48050', '-72.97570'), ('WELLS', None, '43.42000', '-73.20000'), ('WEST HAVEN', None, '43.65000', '-73.35000'), ('WEST RUTLAND', 2263, '43.59490', '-73.04550')], 'partOfState': 'SOUTHERN', 'wfo': 'BTV'}, -'GAC269': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BUTLER', 1907, '32.55710', '-84.23750'), ('REYNOLDS', 1036, '32.55900', '-84.09700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'NCC009': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASHLAND', None, '36.43330', '-81.65000'), ('BALDWIN', None, '36.35000', '-81.53330'), ('CLIFTON', None, '36.45000', '-81.56670'), ('FLATWOOD', None, '36.55000', '-81.63330'), ('FLEETWOOD', None, '36.30000', '-81.51670'), ('GLENDALE SPRINGS', None, '36.35000', '-81.38330'), ('GRASSY CREEK', None, '36.56670', '-81.40000'), ('IDLEWILD', None, '36.31670', '-81.43330'), ('JEFFERSON', 1422, '36.42020', '-81.46990'), ('LANSING', 151, '36.49980', '-81.50980'), ('LAUREL SPGS', None, '36.41670', '-81.26670'), ('NELLA', None, '36.56670', '-81.55000'), ('OTHELLO', None, '36.36670', '-81.43330'), ('SHATLEY SPRINGS', None, '36.48330', '-81.56670'), ('TROUT', None, '36.40000', '-81.61670'), ('WAGONER', None, '36.40000', '-81.40000'), ('WEST JEFFERSON', 1081, '36.40000', '-81.50000')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'KYC061': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEE SPRING', None, '37.28330', '-86.28330'), ('BROWNSVILLE', 921, '37.18820', '-86.25930'), ('MAMMOTH CAVE', None, '37.20000', '-86.10000'), ('RHODA', None, '37.15000', '-86.23330'), ('SUNFISH', None, '37.30000', '-86.36670'), ('SWEEDEN', None, '37.25000', '-86.28330'), ('WINDYVILLE', None, '37.21670', '-86.33330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'NCC007': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANSONVILLE', 636, '35.10450', '-80.10990'), ('LILESVILLE', 459, '34.96780', '-79.98520'), ('MCFARLAN', 89, '34.81330', '-79.97620'), ('MORVEN', 579, '34.86330', '-80.00040'), ('PEACHLAND', 554, '34.99370', '-80.26580'), ('POLKTON', 1195, '35.00820', '-80.20190'), ('WADESBORO', 3552, '34.96660', '-80.06850'), ('WHITE STORE', None, '34.90000', '-80.26000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'KYC063': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRUIN', None, '38.18810', '-83.01940'), ('CULVER', None, '38.08500', '-82.99110'), ('FANNIN VALLEY', None, '38.13620', '-83.22670'), ('ISONVILLE', None, '38.06640', '-83.05330'), ('LITTLE SANDY', None, '38.06220', '-83.18220'), ('LYTTEN', None, '38.10580', '-83.22190'), ('NEWFOUNDLAND', None, '38.13310', '-83.10080'), ('SANDY HOOK', 678, '38.09280', '-83.12330'), ('STARK', None, '38.17530', '-83.13470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'NCC005': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BARRETT', None, '36.51670', '-80.95000'), ('ENNICE', None, '36.55000', '-81.00000'), ('GLADE VALLEY', None, '36.48330', '-81.05000'), ('PINEY CREEK', None, '36.55000', '-81.30000'), ('ROARING GAP', None, '36.40000', '-80.98330'), ('SCOTTVILLE', None, '36.50000', '-81.28330'), ('SPARTA', 1817, '36.50000', '-81.13330'), ('STRATFORD', None, '36.51670', '-81.21670'), ('TWIN OAKS', None, '36.53330', '-81.16670'), ('WHITEHEAD', None, '36.46670', '-81.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'KYC065': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALGER', None, '37.67010', '-84.07960'), ('ALUMBAUGH', None, '37.59630', '-83.93190'), ('ARTHURMABEL', None, '37.59350', '-83.94560'), ('BLACKBURN', None, '37.66240', '-84.07600'), ('CALLOWAY CROSSING', None, '37.72460', '-84.00390'), ('COBHILL', None, '37.71640', '-83.82920'), ('COMBS', None, '37.66090', '-84.10920'), ('COW CREEK', None, '37.70130', '-83.92570'), ('CRESSY', None, '37.82480', '-84.04030'), ('DOE CREEK', None, '37.67240', '-83.93260'), ('ENGLE', None, '37.81300', '-84.11570'), ('ESTILCO', None, '37.61130', '-83.96320'), ('FAINVILLE', None, '37.70390', '-84.06500'), ('FITCHBURG', None, '37.73210', '-83.85180'), ('FOX', None, '37.75910', '-84.06700'), ('HARGETT', None, '37.78280', '-84.00970'), ('IRON MOUND', None, '37.81500', '-84.04400'), ('IRVINE', 2843, '37.69640', '-83.96830'), ('JINKS', None, '37.60640', '-84.03220'), ('KIMBRELL', None, '37.80500', '-83.99030'), ('KINGS STATION', None, '37.68660', '-84.06310'), ('LEIGHTON', None, '37.60370', '-83.88580'), ('LOCUST BRANCH', None, '37.58530', '-84.07030'), ('NOLAND', None, '37.64800', '-84.05500'), ('NORTH IRVINE', None, '37.71420', '-83.97970'), ('PALMER', None, '37.81330', '-84.06640'), ('PATSEY', None, '37.71130', '-83.79150'), ('PITTS', None, '37.70980', '-83.88430'), ('PRYSE', None, '37.65950', '-83.87540'), ('RAVENNA', 693, '37.68720', '-83.94780'), ('RICE STATION', None, '37.70270', '-84.04080'), ('SAM', None, '37.78080', '-84.02800'), ('SANDHILL', None, '37.72530', '-84.02460'), ('SEE', None, '37.72760', '-83.76060'), ('SHADE', None, '37.64170', '-83.86450'), ('SOUTH IRVINE', None, '37.68330', '-83.97690'), ('SPOUT SPRINGS', None, '37.82700', '-83.97450'), ('STATION CAMP', None, '37.65040', '-83.99300'), ('TEXOLA', None, '37.65310', '-83.87090'), ('UNION HALL', None, '37.75870', '-83.90500'), ('WAGERSVILLE', None, '37.62540', '-83.95340'), ('WEEDON', None, '37.71130', '-84.01230'), ('WEST IRVINE', None, '37.70140', '-83.99080'), ('WILLOW TREE', None, '37.70820', '-83.91550'), ('WINSTON', None, '37.70260', '-84.07670'), ('WISEMAN CROSSING STATION', None, '37.75530', '-84.01460'), ('WISEMANTOWN', None, '37.67880', '-84.00640'), ('WITT', None, '37.67300', '-84.02440')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'NCC003': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BETHLEHEM', 3713, '35.81340', '-81.29240'), ('ELLENDALE', None, '35.92560', '-81.27970'), ('HIDDENITE', None, '35.90360', '-81.09080'), ('MILLERSVILLE', None, '35.85560', '-81.18360'), ('STONY POINT', 1380, '35.86670', '-81.04910'), ('TAYLORSVILLE', 1799, '35.92110', '-81.17930')], 'partOfState': '', 'wfo': 'GSP'}, -'KYC067': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('LEXINGTON', 260512, '38.04270', '-84.45950')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'NCC001': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALAMANCE', 310, '36.03330', '-79.48520'), ('ALTAMAHAW', None, '36.17930', '-79.50680'), ('BURLINGTON', 44917, '36.08440', '-79.44720'), ('ELON COLLEGE', 6738, '36.09410', '-79.51170'), ('GLEN RAVEN', 2750, '36.12100', '-79.47000'), ('GRAHAM', 12833, '36.06310', '-79.39050'), ('HAW RIVER', 1908, '36.09240', '-79.36010'), ('MEBANE', 7284, '36.09120', '-79.27530'), ('PLEASANT GROVE', None, '36.19330', '-79.32690'), ('SAXAPAHAW', 1418, '35.94790', '-79.32110'), ('SNOW CAMP', None, '35.86660', '-79.41660'), ('SUTPHIN', None, '35.88330', '-79.35000'), ('SWEPSONVILLE', 922, '36.02870', '-79.35980'), ('UNION RIDGE', None, '36.22000', '-79.38330')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'TNC055': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARDMORE', 1082, '34.99990', '-86.85660'), ('ELKTON', 510, '35.06020', '-86.89640'), ('LYNNVILLE', 345, '35.37790', '-87.00560'), ('MINOR HILL', 437, '35.03840', '-87.17110'), ('PULASKI', 7871, '35.19570', '-87.03430')], 'partOfState': '', 'wfo': 'OHX'}, -'INC017': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LOGANSPORT', 19684, '40.75370', '-86.35740'), ('ONWARD', 81, '40.69400', '-86.19540'), ('ROYAL CENTER', 832, '40.86460', '-86.50050'), ('WALTON', 1069, '40.66230', '-86.24470')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'GAC225': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BYRON', 2887, '32.65200', '-83.75760'), ('FORT VALLEY', 8005, '32.55480', '-83.88870')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'PRC013': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ANIMAS', 1450, '18.44760', '-66.63520'), ('ARECIBO', 49318, '18.45670', '-66.73590'), ('BAJADERO', 3877, '18.42530', '-66.67650'), ('LA ALIANZA', 2139, '18.40240', '-66.60180'), ('SABANA HOYOS', 1823, '18.42900', '-66.61210')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC011': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ANASCO', None, '18.28850', '-67.14130'), ('ESPINO', 1422, '18.27830', '-67.11980'), ('LA PLAYA', 2139, '18.28940', '-67.18740'), ('LAS MARIAS', None, '18.29430', '-67.14480')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC017': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BARCELONETA', 4253, '18.45480', '-66.53900'), ('BUFALO', None, '18.42040', '-66.57370'), ('GARROCHALES', 1208, '18.46440', '-66.57010'), ('IMBERY', None, '18.43920', '-66.55730'), ('TIBURONES', 709, '18.43870', '-66.58000')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC015': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ARROYO', 7244, '17.97080', '-66.06210'), ('BUENA VISTA', 2026, '17.99840', '-66.05230'), ('PALMAS', 2829, '17.98900', '-66.02570'), ('YAUREL', 1468, '18.02890', '-66.05750')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC019': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BARRANQUITAS', 2910, '18.18770', '-66.30930')], 'partOfState': '', 'wfo': 'SJU'}, -'UTC015': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CASTLE DALE', 1657, '39.22140', '-111.01980'), ('CLAWSON', 153, '39.13290', '-111.09720'), ('CLEVELAND', 508, '39.34900', '-110.85650'), ('ELGIN', None, '38.98000', '-110.15000'), ('ELMO', 368, '39.38880', '-110.81550'), ('EMERY', 308, '38.92530', '-111.25060'), ('FERRON', 1623, '39.09070', '-111.13230'), ('GOBLIN VALLEY', None, '38.54000', '-110.70000'), ('GREEN RIVER', 973, '38.98160', '-110.16670'), ('HUNTINGTON', 2131, '39.33110', '-110.96290'), ('MOLEN', None, '39.08000', '-111.08000'), ('MOORE', None, '38.97000', '-111.15000'), ('ORANGEVILLE', 1398, '39.23130', '-111.05890')], 'partOfState': '', 'wfo': 'SLC'}, -'INC121': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOOMINGDALE', 319, '39.83150', '-87.24950'), ('CLINTON', 5126, '39.66100', '-87.40450'), ('JUDSON', None, '39.81350', '-87.13520'), ('MARSHALL', 360, '39.84700', '-87.18580'), ('MECCA', 355, '39.72710', '-87.33150'), ('MONTEZUMA', 1179, '39.79100', '-87.36910'), ('ROCKVILLE', 2765, '39.76670', '-87.23090'), ('ROSEDALE', 750, '39.62320', '-87.28210')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'INC123': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ADYEVILLE', None, '38.20000', '-86.76670'), ('APALONA', None, '38.15000', '-86.63330'), ('BANDON', None, '38.13330', '-86.60000'), ('BRANCHVILLE', None, '38.16670', '-86.58330'), ('BRISTOW', None, '38.13330', '-86.71670'), ('CANNELTON', 1209, '37.91010', '-86.73680'), ('DERBY', None, '38.03330', '-86.53330'), ('DEXTER', None, '38.06670', '-86.48330'), ('DODD', None, '37.91670', '-86.66670'), ('DOOLITTLE MILLS', None, '38.25000', '-86.60000'), ('GATCHEL', None, '38.05000', '-86.65000'), ('GERALD', None, '38.00000', '-86.56670'), ('LEOPOLD', None, '38.10000', '-86.58330'), ('MAGNET', None, '38.10000', '-86.46670'), ('MT. PLEASANT', None, '38.11670', '-86.51670'), ('ORIOLE', None, '38.16670', '-86.50000'), ('ROME', None, '37.93330', '-86.52500'), ('SASSAFRAS', None, '38.18330', '-86.68330'), ('SIBERIA', None, '38.23330', '-86.73330'), ('ST. CROIX', None, '38.23330', '-86.58330'), ('TELL CITY', 7845, '37.94990', '-86.75740'), ('TERRY', None, '38.08330', '-86.63330'), ('TOBINSPORT', None, '37.85500', '-86.63330'), ('UNIONTOWN', None, '38.23330', '-86.66670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'LAC059': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('JENA', 2971, '31.68760', '-92.12580'), ('MIDWAY', 1505, '31.68510', '-92.15120'), ('OLLA', 1417, '31.89980', '-92.23760'), ('TULLOS', 419, '31.82020', '-92.32910'), ('URANIA', 700, '31.86390', '-92.29050')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'INC127': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BEVERLY SHORES', 708, '41.68550', '-86.97880'), ('BURNS HARBOR', 766, '41.61400', '-87.12550'), ('CHESTERTON', 10488, '41.60090', '-87.05700'), ('DUNE ACRES', 213, '41.64370', '-87.10330'), ('HEBRON', 3596, '41.32240', '-87.20280'), ('KOUTS', 1698, '41.31690', '-87.02640'), ('KVPZ', None, '41.45000', '-87.00000'), ('LAKES OF THE FOUR SEASONS', 7291, '41.40860', '-87.22300'), ('OGDEN DUNES', 1313, '41.62280', '-87.19350'), ('PORTAGE', 33496, '41.58670', '-87.18150'), ('PORTER', 4972, '41.62730', '-87.08190'), ('SOUTH HAVEN', 5619, '41.54360', '-87.13390'), ('TOWN OF PINES', 798, '41.68860', '-86.95170'), ('VALPARAISO', 27428, '41.47730', '-87.05100')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'INC129': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CYNTHIANA', 693, '38.18690', '-87.70880'), ('GRIFFIN', 160, '38.20430', '-87.91530'), ('MOUNT VERNON', 7478, '37.93600', '-87.89870'), ('NEW HARMONY', 916, '38.12850', '-87.93250'), ('POSEYVILLE', 1187, '38.17020', '-87.78280')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'LAC057': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CUT OFF', 5635, '29.52940', '-90.33460'), ('GALLIANO', 7356, '29.43100', '-90.30270'), ('GOLDEN MEADOW', 2193, '29.38770', '-90.27340'), ('LAROSE', 7306, '29.57080', '-90.37450'), ('LEEVILLE', None, '29.23890', '-90.20750'), ('LOCKPORT', 2624, '29.64040', '-90.53800'), ('MATHEWS', 2003, '29.68720', '-90.56140'), ('RACELAND', 10224, '29.71810', '-90.59680'), ('THIBODAUX', 14431, '29.79000', '-90.82090')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAC051': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AVONDALE', 5441, '29.90210', '-90.19160'), ('BARATARIA', 1333, '29.71560', '-90.12410'), ('BRIDGE CITY', 8323, '29.93380', '-90.16140'), ('GRETNA', 17423, '29.91400', '-90.05250'), ('HARAHAN', 9885, '29.93700', '-90.20370'), ('HARVEY', 22226, '29.88600', '-90.06730'), ('JEAN LAFITTE', 2137, '29.74950', '-90.10610'), ('KENNER', 70517, '29.98000', '-90.25000'), ('LAFITTE', 1576, '29.68860', '-90.09710'), ('MARRERO', 36165, '29.88500', '-90.11430'), ('METAIRIE', 146136, '29.99760', '-90.17740'), ('TERRYTOWN', 25430, '29.90000', '-90.02830'), ('TIMBERLANE', 11405, '29.87730', '-90.03200'), ('WAGGAMAN', 9435, '29.93760', '-90.23370'), ('WESTWEGO', 10763, '29.90490', '-90.14280')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'KYC115': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAKER', None, '37.86010', '-82.75820'), ('BALLOT', None, '37.77700', '-82.94290'), ('BARNETTS CREEK', None, '37.82760', '-82.87970'), ('BARNROCK', None, '37.95280', '-82.92120'), ('BLAIR', None, '37.78540', '-82.82870'), ('BOBBS', None, '37.82700', '-82.74340'), ('BOONS CAMP', None, '37.83290', '-82.70130'), ('BUFFALO', None, '37.79470', '-82.75390'), ('CHANDLERVILLE', None, '37.93460', '-82.81380'), ('CHESTNUT', None, '37.89060', '-82.68190'), ('COLLISTA', None, '37.78240', '-82.82410'), ('DENVER', None, '37.77590', '-82.85510'), ('DOBSON', None, '37.74080', '-82.88460'), ('FITZ', None, '37.78410', '-82.84000'), ('FLATGAP', None, '37.93350', '-82.88770'), ('GALEN', None, '37.89050', '-82.80670'), ('GILLEM BRANCH', None, '37.96370', '-82.97240'), ('HAGERHILL', None, '37.78750', '-82.79060'), ('HAMMOND', None, '37.88400', '-82.67080'), ('HARGIS', None, '37.84080', '-82.97720'), ('KEATON', None, '37.98160', '-82.96180'), ('KERZ', None, '37.91510', '-82.84090'), ('LEANDER', None, '37.75380', '-82.87140'), ('MEALLY', None, '37.79850', '-82.73430'), ('MINEFORK', None, '37.86090', '-83.00710'), ('NILES', None, '37.82900', '-82.97460'), ('NIPPA', None, '37.86620', '-82.78820'), ('OAKLAWN ESTATES', None, '37.75650', '-82.77520'), ('ODDS', None, '37.75520', '-82.69300'), ('OFFUTT', None, '37.85070', '-82.72880'), ('OIL SPRINGS', None, '37.80990', '-82.94210'), ('PAINTSVILLE', 4132, '37.81710', '-82.80710'), ('PATRICK', None, '37.75930', '-82.86880'), ('REDBUSH', None, '37.93930', '-82.94940'), ('RICEVILLE', None, '37.73360', '-82.92380'), ('RIVER', None, '37.86040', '-82.72600'), ('SIP', None, '37.92400', '-82.82840'), ('STAFFORDSVILLE', None, '37.83010', '-82.84170'), ('STAMBAUGH', None, '37.88530', '-82.79710'), ('SWAMP BRANCH', None, '37.73740', '-82.89670'), ('THEALKA', None, '37.82180', '-82.78960'), ('THELMA', None, '37.81980', '-82.76580'), ('TUTOR KEY', None, '37.84420', '-82.76490'), ('VAN LEAR', None, '37.76990', '-82.75640'), ('WELLS CHAPEL', None, '37.83150', '-82.69670'), ('WEST VAN LEAR', None, '37.78530', '-82.77900'), ('WHITEHOUSE', None, '37.87170', '-82.69700'), ('WILLIAMSPORT', None, '37.82430', '-82.72890'), ('WIN', None, '37.86740', '-82.98930'), ('WINIFRED', None, '37.94640', '-82.85450'), ('WITTENSVILLE', None, '37.86330', '-82.79900'), ('WOODLAND ESTATES', None, '37.80330', '-82.76650')], 'partOfState': 'NORTHEAST', 'wfo': 'JKL'}, -'KYC117': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('COVINGTON', 43370, '39.03680', '-84.51430'), ('CRESCENT PARK', None, '39.04320', '-84.57630'), ('CRESCENT SPRINGS', 3931, '39.05250', '-84.58020'), ('CRESTVIEW HILLS', 2889, '39.02630', '-84.57140'), ('EDGEWOOD', 9400, '39.00610', '-84.56230'), ('ELSMERE', 8139, '38.99430', '-84.60040'), ('ERLANGER', 16676, '39.00990', '-84.58810'), ('FAIRVIEW', 156, '38.99860', '-84.48280'), ('FORT MITCHELL', 8089, '39.04520', '-84.55550'), ('FORT WRIGHT', 5681, '39.04710', '-84.53690'), ('INDEPENDENCE', 14982, '38.95440', '-84.54740'), ('KENTON VALE', 156, '39.05140', '-84.51990'), ('LAKESIDE PARK', 2869, '39.03430', '-84.56650'), ('LATONIA LAKES', 325, '38.96750', '-84.49570'), ('PARK HILLS', 2977, '39.07020', '-84.53090'), ('RYLAND HEIGHTS', 799, '38.95800', '-84.46930'), ('TAYLOR MILL', 6913, '39.01180', '-84.49720'), ('VILLA HILLS', 7948, '39.06390', '-84.59630'), ('VISALIA', 111, '38.91500', '-84.45130')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'WAC039': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BINGEN', 672, '45.71420', '-121.46810'), ('GOLDENDALE', 3760, '45.82200', '-120.81830'), ('WHITE SALMON', 2193, '45.72770', '-121.48370')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'KYC111': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ANCHORAGE', 2264, '38.27020', '-85.53810'), ('FAIRDALE', 7658, '38.11180', '-85.75750'), ('FERN CREEK', 17870, '38.15830', '-85.59670'), ('HIGHVIEW', 15161, '38.14020', '-85.63500'), ('JEFFERSONTOWN', 26633, '38.20560', '-85.57090'), ('LOUISVILLE', 256231, '38.22480', '-85.74120'), ('LYNDON', 9369, '38.26440', '-85.58930'), ('MIDDLETOWN', 5744, '38.24250', '-85.51960'), ('OKOLONA', 17807, '38.13900', '-85.68600'), ('PLEASURE RIDGE PARK', 25776, '38.15370', '-85.85290'), ('PROSPECT', 4657, '38.34780', '-85.60930'), ('SHIVELY', 15157, '38.19590', '-85.81320'), ('ST. MATTHEWS', 15852, '38.24920', '-85.63780'), ('VALLEY STATION', 22946, '38.10350', '-85.85860')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYC113': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CAMP NELSON', None, '37.77000', '-84.62000'), ('KEENE', None, '37.93330', '-84.63330'), ('NICHOLASVILLE', 19680, '37.87830', '-84.58000'), ('SPEARS', None, '37.86670', '-84.45500'), ('SULPHUR WELL', None, '37.83330', '-84.55000'), ('WILMORE', 5905, '37.86660', '-84.65900')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'WAC033': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALGONA', 2460, '47.28370', '-122.25010'), ('AUBURN', 40314, '47.29900', '-122.21180'), ('BEAUX ARTS VILLAGE', 307, '47.58610', '-122.20320'), ('BELLEVUE', 109569, '47.60340', '-122.15500'), ('BLACK DIAMOND', 3970, '47.31170', '-122.00990'), ('BOTHELL', 30150, '47.76000', '-122.19690'), ('BRYN MAWR-SKYWAY', 13977, '47.49520', '-122.23820'), ('BURIEN', 31881, '47.46490', '-122.34640'), ('CARNATION', 1893, '47.64610', '-121.90930'), ('CASCADE-FAIRWOOD', 34580, '47.44920', '-122.16270'), ('CLYDE HILL', 2890, '47.62920', '-122.21780'), ('COVINGTON-SAWYER-WILDERNE', None, '47.35280', '-122.07310'), ('DES MOINES', 29267, '47.39550', '-122.30950'), ('DUVALL', 4616, '47.73370', '-121.96920'), ('EAST HILL-MERIDIAN', 29308, '47.38980', '-122.17200'), ('EAST RENTON HIGHLANDS', 13264, '47.48510', '-122.11120'), ('EASTGATE', 4558, '47.57230', '-122.13490'), ('ENUMCLAW', 11116, '47.20090', '-121.98910'), ('FALL CITY', 1638, '47.56630', '-121.90210'), ('FEDERAL WAY', 83259, '47.31190', '-122.34080'), ('HUNTS POINT', 443, '47.63880', '-122.22750'), ('INGLEWOOD-FINN HILL', 22661, '47.72600', '-122.23500'), ('ISSAQUAH', 11212, '47.53230', '-122.03850'), ('KENMORE', 18678, '47.76460', '-122.24260'), ('KENT', 79524, '47.39430', '-122.23850'), ('KINGSGATE', 12222, '47.73060', '-122.16710'), ('KIRKLAND', 45054, '47.68460', '-122.19390'), ('LAKE FOREST NORTH', None, '47.76770', '-122.28560'), ('LAKE FOREST PARK', 13142, '47.76270', '-122.28620'), ('LAKELAND NORTH', 15085, '47.32920', '-122.27800'), ('LAKELAND SOUTH', 11436, '47.27740', '-122.28280'), ('LEA HILL', 10871, '47.32630', '-122.18030'), ('MAPLE VALLEY', 14209, '47.40130', '-122.02570'), ('MEDINA', 3011, '47.61630', '-122.23650'), ('MERCER ISLAND', 22036, '47.56930', '-122.23090'), ('MIRRORMONT', 3804, '47.46260', '-121.99430'), ('NEWPORT HILLS', None, '47.54750', '-122.17400'), ('NORMANDY PARK', 6392, '47.44470', '-122.35580'), ('NORTH BEND', 4746, '47.49570', '-121.78870'), ('NORTH CITY-RIDGECREST', None, '47.75090', '-122.31310'), ('NORTH HILL', None, '47.41940', '-122.32230'), ('PACIFIC', 5527, '47.26570', '-122.24670'), ('PINE LAKE', None, '47.57890', '-122.04490'), ('REDMOND', 45256, '47.67420', '-122.11480'), ('RENTON', 50052, '47.48190', '-122.19660'), ('RICHMOND BEACH-INNIS ARDE', None, '47.75520', '-122.37340'), ('RICHMOND HIGHLANDS', None, '47.75910', '-122.34300'), ('RIVERTON-BOULEVARD PARK', 11188, '47.49760', '-122.30920'), ('SAHALEE', None, '47.63490', '-122.05410'), ('SEA-TAC', None, '47.44350', '-122.29780'), ('SEATTLE', 563374, '47.62180', '-122.35030'), ('SHERIDAN BEACH', None, '47.74490', '-122.28680'), ('SKYKOMISH', 214, '47.71120', '-121.35740'), ('SNOQUALMIE', 1631, '47.52430', '-121.81760'), ('TUKWILA', 17181, '47.47770', '-122.26830'), ('WEST LAKE SAMMAMISH', 5937, '47.57790', '-122.09990'), ('WHITE CENTER-SHOREWOOD', None, '47.50200', '-122.34980'), ('WOODINVILLE', 9194, '47.74620', '-122.11190'), ('WOODMONT BEACH', None, '47.36180', '-122.31630'), ('YARROW POINT', 1008, '47.64570', '-122.21530')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'WAC031': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('PORT TOWNSEND', 8334, '48.12200', '-122.77920')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'KYC119': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AMBURGEY', None, '37.26930', '-82.98290'), ('AMELIA', None, '37.20710', '-82.92040'), ('ANCO', None, '37.24210', '-83.06030'), ('BATH', None, '37.24230', '-82.91060'), ('BEARVILLE', None, '37.37270', '-83.06540'), ('BETTY', None, '37.45130', '-82.84080'), ('BOLYN', None, '37.44470', '-82.90570'), ('BRINKLEY', None, '37.30060', '-82.94450'), ('BUCK', None, '37.44830', '-83.10930'), ('CARR CREEK', None, '37.23150', '-82.96920'), ('CARRIE', None, '37.33140', '-83.03350'), ('CODY', None, '37.22420', '-82.97590'), ('CORDIA', None, '37.27940', '-83.11570'), ('DECOY', None, '37.50170', '-83.09390'), ('DEMO', None, '37.41010', '-82.78120'), ('DIRK', None, '37.23020', '-82.95860'), ('DREW', None, '37.28340', '-82.86250'), ('DRY CREEK', None, '37.33350', '-82.77770'), ('ELIC', None, '37.26700', '-83.06830'), ('ELMROCK', None, '37.45220', '-83.02580'), ('EMMALENA', None, '37.33630', '-83.07750'), ('FISTY', None, '37.33580', '-83.10140'), ('GARNER', None, '37.35620', '-82.92710'), ('GREENLEAF', None, '37.30080', '-82.75730'), ('HALL', None, '37.30020', '-82.77500'), ('HANDSHOE', None, '37.47000', '-82.90670'), ('HINDMAN', 787, '37.33370', '-82.98320'), ('HOLLYBUSH', None, '37.34790', '-82.85650'), ('IVAN', None, '37.27810', '-82.82800'), ('IVIS', None, '37.30620', '-82.92820'), ('KITE', None, '37.33520', '-82.81190'), ('LARKSLANE', None, '37.38400', '-82.88160'), ('LEBURN', None, '37.34820', '-82.95650'), ('LITTCARR', None, '37.24270', '-82.94770'), ('MALLIE', None, '37.30300', '-82.91700'), ('MAY', None, '37.27270', '-82.86230'), ('MOUSIE', None, '37.41890', '-82.87740'), ('NEALY', None, '37.27420', '-82.86810'), ('OMAHA', None, '37.27450', '-82.84390'), ('PINE TOP', None, '37.27220', '-82.88350'), ('PIPPA PASSES', 297, '37.33410', '-82.87440'), ('PUNCHEON', None, '37.30220', '-82.78900'), ('RAVEN', None, '37.40280', '-82.80640'), ('REDFOX', None, '37.21550', '-82.94390'), ('RITCHIE', None, '37.31110', '-83.08400'), ('SASSAFRAS', None, '37.22080', '-83.05470'), ('SMITHSBORO', None, '37.23100', '-82.99610'), ('SOFT SHELL', None, '37.39370', '-82.94420'), ('SPIDER', None, '37.25910', '-82.91840'), ('TALCUM', None, '37.37210', '-83.10610'), ('TINA', None, '37.36080', '-83.02020'), ('TOPMOST', None, '37.36100', '-82.78860'), ('VEST', None, '37.39600', '-83.00620'), ('WISCOAL', None, '37.23600', '-83.05730'), ('YELLOW MOUNTAIN', None, '37.40480', '-82.96730')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'WAC037': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CLE ELUM', 1755, '47.19400', '-120.93310'), ('ELLENSBURG', 15414, '46.99710', '-120.54800'), ('KITTITAS', 1105, '46.98500', '-120.41700'), ('ROSLYN', 1017, '47.24480', '-121.10260'), ('SOUTH CLE ELUM', 457, '47.18680', '-120.95180')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'WAC035': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BANGOR TRIDENT BASE', 7253, '47.69200', '-122.71610'), ('BREMERTON', 37259, '47.54890', '-122.70200'), ('EAST PORT ORCHARD', 5116, '47.52120', '-122.62380'), ('ERLANDS POINT-KITSAP LAKE', 2723, '47.59630', '-122.70300'), ('INDIANOLA', 3026, '47.75450', '-122.51330'), ('NAVY YARD CITY', 2638, '47.55160', '-122.66700'), ('PARKWOOD', 7213, '47.52600', '-122.59670'), ('PORT ORCHARD', 7693, '47.52900', '-122.64120'), ('POULSBO', 6813, '47.73710', '-122.64000'), ('SILVERDALE', 15816, '47.65210', '-122.68310'), ('SUQUAMISH', 3510, '47.72910', '-122.58430'), ('TRACYTON', 3267, '47.60960', '-122.65450'), ('WINSLOW', None, '47.62970', '-122.51780')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'KSC203': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('LEOTI', 1598, '38.48300', '-101.35720'), ('LYDIA', None, '38.28000', '-101.29000'), ('MARIENTHAL', None, '38.49000', '-101.21000'), ('SELKIRK', None, '38.47000', '-101.54000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'LAC121': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ADDIS', 2238, '30.35450', '-91.26940'), ('BRUSLY', 2020, '30.39470', '-91.25170'), ('ERWINVILLE', None, '30.53080', '-91.40780'), ('PORT ALLEN', 5278, '30.45070', '-91.20880')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAC123': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('EPPS', 1153, '32.60500', '-91.47950'), ('FOREST', 275, '32.79240', '-91.41220'), ('KILBOURNE', 436, '32.99780', '-91.31320'), ('OAK GROVE', 2174, '32.86220', '-91.39120'), ('PIONEER', 171, '32.73810', '-91.43590')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAC125': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('SPILLMAN', None, '30.92970', '-91.28360'), ('ST. FRANCISVILLE', 1712, '30.78360', '-91.37910'), ('WAKEFIELD', None, '30.88920', '-91.35000')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAC127': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ATLANTA', 150, '31.80560', '-92.73690'), ('CALVIN', 236, '31.95970', '-92.77830'), ('DODSON', 357, '32.07920', '-92.65820'), ('SIKES', 120, '32.07930', '-92.48590'), ('WINNFIELD', 5749, '31.92210', '-92.64120')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'MOC087': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BIG LAKE', 127, '40.07410', '-95.35150'), ('BIGELOW', 38, '40.10940', '-95.28850'), ('CORNING', 21, '40.24880', '-95.45470'), ('CRAIG', 309, '40.19220', '-95.37340'), ('FOREST CITY', 338, '39.98270', '-95.18790'), ('FORTESCUE', 51, '40.05200', '-95.31750'), ('MAITLAND', 342, '40.20310', '-95.07870'), ('MOUND CITY', 1193, '40.13600', '-95.23420'), ('OREGON', 935, '39.98450', '-95.14360')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOC085': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CROSS TIMBERS', 185, '38.02460', '-93.22660'), ('ELKTON', None, '37.85250', '-93.42570'), ('HERMITAGE', 406, '37.94130', '-93.31610'), ('NEMO', None, '37.87660', '-93.26160'), ('PITTSBURG', None, '37.83380', '-93.30020'), ('PRESTON', 113, '37.94080', '-93.20750'), ('QUINCY', None, '38.00830', '-93.47210'), ('WEAUBLEAU', 518, '37.89050', '-93.54160'), ('WHEATLAND', 388, '37.94600', '-93.40080')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOC083': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLAIRSTOWN', 141, '38.55740', '-93.95740'), ('BROWNINGTON', 119, '38.24570', '-93.72250'), ('CALHOUN', 491, '38.46790', '-93.62450'), ('CLINTON', 9311, '38.37130', '-93.76810'), ('CREIGHTON', 322, '38.49670', '-94.07180'), ('DEEPWATER', 507, '38.25920', '-93.77380'), ('HARTWELL', 16, '38.43490', '-93.93390'), ('LA DUE', 39, '38.31280', '-93.87780'), ('MONTROSE', 417, '38.25940', '-93.98200'), ('TIGHTWAD', 63, '38.31110', '-93.54170'), ('URICH', 499, '38.45990', '-93.99900'), ('WINDSOR', 3087, '38.53340', '-93.52240')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOC081': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BETHANY', 3087, '40.26780', '-94.02830'), ('BLYTHEDALE', 233, '40.47520', '-93.92720'), ('CAINSVILLE', 370, '40.44010', '-93.77450'), ('EAGLEVILLE', 321, '40.46870', '-93.98810'), ('GILMAN CITY', 380, '40.13830', '-93.87240'), ('HATFIELD', None, '40.53330', '-94.15000'), ('MOUNT MORIAH', 143, '40.32930', '-93.79730'), ('NEW HAMPTON', 349, '40.26510', '-94.19580'), ('RIDGEWAY', 530, '40.37780', '-93.93770')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'ORC069': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('FOSSIL', 469, '44.99840', '-120.21320'), ('MITCHELL', 170, '44.56730', '-120.15250'), ('SPRAY', 140, '44.83200', '-119.79330')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'ORC067': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALOHA', 41741, '45.49210', '-122.87180'), ('BANKS', 1286, '45.61540', '-123.11000'), ('BEAVERTON', 76129, '45.47550', '-122.81660'), ('BUXTON', None, '45.68330', '-123.20000'), ('CEDAR HILLS', 8949, '45.50370', '-122.80560'), ('CHERRY GROVE', None, '45.45000', '-123.25000'), ('CORNELIUS', 9652, '45.51890', '-123.05410'), ('DILLEY', None, '45.48330', '-123.11660'), ('DURHAM', 1382, '45.39470', '-122.75750'), ('FARMINGTON', None, '45.45000', '-122.95000'), ('FOREST GROVE', 17708, '45.52230', '-123.10440'), ('GALES CREEK', None, '45.58330', '-123.21660'), ('GASTON', 600, '45.43560', '-123.14080'), ('GLENWOOD', None, '45.65000', '-123.26700'), ('HILLSBORO', 70186, '45.52770', '-122.93910'), ('KING CITY', 1949, '45.40540', '-122.80160'), ('MANNING', None, '45.66660', '-123.16660'), ('NORTH PLAINS', 1605, '45.59670', '-122.99880'), ('RALEIGH HILLS', 5865, '45.48490', '-122.75430'), ('ROCKCREEK', 9404, '45.55030', '-122.87590'), ('SCHOLLS', None, '45.40000', '-122.95000'), ('SHERWOOD', 11791, '45.35990', '-122.84190'), ('TIGARD', 41223, '45.42500', '-122.77390'), ('TIMBER', None, '45.71660', '-123.30000'), ('TUALATIN', 22791, '45.37630', '-122.77170')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORC065': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ANTELOPE', 59, '44.91090', '-120.72250'), ('CHENOWETH', 3412, '45.62730', '-121.23010'), ('CITY OF THE DALLES', 12156, '45.59920', '-121.17500'), ('DUFUR', 588, '45.45340', '-121.12710'), ('MAUPIN', 411, '45.17520', '-121.08290'), ('MOSIER', 410, '45.68370', '-121.39490'), ('SHANIKO', 26, '45.00420', '-120.75050')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'PDT'}, -'ORC063': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ENTERPRISE', 1895, '45.42530', '-117.27610'), ('JOSEPH', 1054, '45.35200', '-117.22790'), ('LOSTINE', 263, '45.48710', '-117.42900'), ('WALLOWA', 869, '45.57070', '-117.52770')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'MOC089': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARMSTRONG', 287, '39.26930', '-92.70500'), ('FAYETTE', 2793, '39.14750', '-92.68560'), ('FRANKLIN', 112, '39.01130', '-92.75470'), ('GLASGOW', 1263, '39.22700', '-92.83790'), ('NEW FRANKLIN', 1145, '39.01860', '-92.74060')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'ORC061': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('COVE', 594, '45.29670', '-117.80950'), ('ELGIN', 1654, '45.56450', '-117.92020'), ('IMBLER', 284, '45.46240', '-117.96250'), ('ISLAND CITY', 916, '45.33880', '-118.04610'), ('LA GRANDE', 12327, '45.32530', '-118.08730'), ('NORTH POWDER', 489, '45.03060', '-117.91860'), ('SUMMERVILLE', 117, '45.48980', '-118.00250'), ('UNION', 1926, '45.20900', '-117.86710')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'IAC153': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALLEMAN', 439, '41.81710', '-93.61030'), ('ALTOONA', 10345, '41.65090', '-93.47630'), ('ANKENY', 27117, '41.72480', '-93.60530'), ('BONDURANT', 1846, '41.68840', '-93.46220'), ('CLIVE', 12855, '41.60770', '-93.76950'), ('DES MOINES', 198682, '41.57670', '-93.61740'), ('ELKHART', 362, '41.79410', '-93.51450'), ('GRIMES', 5098, '41.66080', '-93.78930'), ('JOHNSTON', 8649, '41.68590', '-93.70230'), ('MITCHELLVILLE', 1715, '41.66150', '-93.36090'), ('PLEASANT HILL', 5070, '41.58570', '-93.51440'), ('POLK CITY', 2344, '41.77310', '-93.71650'), ('RUNNELLS', 352, '41.51230', '-93.35810'), ('SAYLORVILLE', 3238, '41.68450', '-93.62580'), ('URBANDALE', 29072, '41.63650', '-93.74090'), ('WEST DES MOINES', 46403, '41.57070', '-93.75290'), ('WINDSOR HEIGHTS', 4805, '41.60480', '-93.71190')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAC151': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FONDA', 648, '42.58180', '-94.84550'), ('GILMORE CITY', 556, '42.72660', '-94.46000'), ('HAVELOCK', 177, '42.83390', '-94.70010'), ('LAURENS', 1476, '42.84780', '-94.84800'), ('PALMER', 214, '42.62880', '-94.59830'), ('PLOVER', 95, '42.87710', '-94.62240'), ('POCAHONTAS', 1970, '42.73620', '-94.66680'), ('ROLFE', 675, '42.81280', '-94.53030'), ('VARINA', 90, '42.65860', '-94.89850')], 'partOfState': 'NORTHWEST', 'wfo': 'DMX'}, -'INC059': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CUMBERLAND', 5500, '39.78280', '-85.95240'), ('FORTVILLE', 3444, '39.93590', '-85.84700'), ('GREENFIELD', 14600, '39.79280', '-85.77000'), ('MCCORDSVILLE', 1134, '39.90810', '-85.93120'), ('NEW PALESTINE', 1264, '39.72110', '-85.89160'), ('SPRING LAKE', 262, '39.77680', '-85.85440'), ('WILKINSON', 356, '39.88480', '-85.60830')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'IAC155': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AVOCA', 1610, '41.48080', '-95.33550'), ('CARSON', 668, '41.23660', '-95.41630'), ('CARTER LAKE', 3248, '41.28870', '-95.91610'), ('COUNCIL BLUFFS', 58268, '41.24000', '-95.85950'), ('CRESCENT', 537, '41.36630', '-95.85880'), ('HANCOCK', 207, '41.39330', '-95.36500'), ('MACEDONIA', 325, '41.19210', '-95.42480'), ('MCCLELLAND', 129, '41.32760', '-95.68380'), ('MINDEN', 564, '41.46710', '-95.54190'), ('NEOLA', 845, '41.45090', '-95.61720'), ('OAKLAND', 1487, '41.30850', '-95.39670'), ('TREYNOR', 950, '41.23110', '-95.60640'), ('UNDERWOOD', 688, '41.38570', '-95.67930'), ('WALNUT', 778, '41.47910', '-95.22270')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'INC055': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOOMFIELD', 2542, '39.02640', '-86.93700'), ('JASONVILLE', 2490, '39.16250', '-87.19960'), ('LINTON', 5774, '39.03600', '-87.15920'), ('LYONS', 748, '38.98810', '-87.08160'), ('NEWBERRY', 206, '38.92370', '-87.01890'), ('SWITZ CITY', 311, '39.03470', '-87.05360'), ('WORTHINGTON', 1481, '39.11850', '-86.97980')], 'partOfState': 'SOUTHWEST', 'wfo': 'IND'}, -'WIC025': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BELLEVILLE', 1908, '42.86170', '-89.53650'), ('BLACK EARTH', 1320, '43.13660', '-89.74610'), ('BLUE MOUNDS', 708, '43.02070', '-89.82620'), ('BROOKLYN', 916, '42.85290', '-89.37220'), ('CAMBRIDGE', 1101, '43.00720', '-89.01870'), ('COTTAGE GROVE', 4059, '43.08500', '-89.20230'), ('CROSS PLAINS', 3084, '43.11390', '-89.64620'), ('DANE', 799, '43.25040', '-89.50040'), ('DE FOREST', None, '43.24580', '-89.34580'), ('DEERFIELD', 1971, '43.05140', '-89.07430'), ('FITCHBURG', 20501, '42.98600', '-89.42510'), ('MADISON', 208054, '43.07980', '-89.38750'), ('MAPLE BLUFF', 1358, '43.10980', '-89.36940'), ('MARSHALL', 3432, '43.17250', '-89.06410'), ('MAZOMANIE', 1485, '43.17440', '-89.79480'), ('MCFARLAND', 6416, '43.01890', '-89.29390'), ('MIDDLETON', 15770, '43.10290', '-89.50630'), ('MONONA', 8018, '43.05440', '-89.33320'), ('MOUNT HOREB', 5860, '43.00910', '-89.73360'), ('OREGON', 7514, '42.92630', '-89.38210'), ('ROCKDALE', 214, '42.97250', '-89.03260'), ('SHOREWOOD HILLS', 1732, '43.07770', '-89.44650'), ('STOUGHTON', 12354, '42.92110', '-89.22280'), ('SUN PRAIRIE', 20369, '43.18370', '-89.23230'), ('VERONA', 7052, '42.98880', '-89.53540'), ('WAUNAKEE', 8995, '43.18660', '-89.45200'), ('WINDSOR', 2533, '43.21670', '-89.34210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'INC057': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ARCADIA', 1747, '40.17410', '-86.02130'), ('ATLANTA', 761, '40.21480', '-86.02710'), ('CARMEL', 37733, '39.96930', '-86.10950'), ('CICERO', 4303, '40.12470', '-86.02260'), ('FISHERS', 37835, '39.95410', '-86.02360'), ('NOBLESVILLE', 28590, '40.05660', '-86.03170'), ('SHERIDAN', 2520, '40.13470', '-86.21890'), ('WESTFIELD', 9293, '40.04700', '-86.13090')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'INC051': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FORT BRANCH', 2320, '38.24680', '-87.57480'), ('FRANCISCO', 543, '38.33400', '-87.44860'), ('HAUBSTADT', 1529, '38.20310', '-87.57480'), ('HAZLETON', 288, '38.48900', '-87.54040'), ('MACKEY', 142, '38.24990', '-87.39070'), ('OAKLAND CITY', 2588, '38.34000', '-87.34800'), ('OWENSVILLE', 1322, '38.27170', '-87.69060'), ('PATOKA', 749, '38.40580', '-87.58750'), ('PRINCETON', 8175, '38.35570', '-87.56920'), ('SOMERVILLE', 312, '38.27770', '-87.37680')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'INC053': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FAIRMOUNT', 2992, '40.41690', '-85.64790'), ('FOWLERTON', 298, '40.40960', '-85.57300'), ('GAS CITY', 5940, '40.48920', '-85.60770'), ('JONESBORO', 1887, '40.47930', '-85.62990'), ('MARION', 31320, '40.54910', '-85.66700'), ('SWAYZEE', 1011, '40.50680', '-85.82410'), ('SWEETSER', 906, '40.56970', '-85.76700'), ('UPLAND', 3803, '40.46280', '-85.51330'), ('VAN BUREN', 935, '40.61640', '-85.50550')], 'partOfState': 'CENTRAL', 'wfo': 'IWX'}, -'IAC139': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ADAMS', None, '41.48330', '-91.25000'), ('ARDON', None, '41.40000', '-91.18330'), ('ATALISSA', 283, '41.57150', '-91.16660'), ('CONESVILLE', 424, '41.38040', '-91.34810'), ('CRANSTON', None, '41.38330', '-91.26670'), ('FAIRPORT', None, '41.43330', '-90.90000'), ('FRUITLAND', 703, '41.34680', '-91.12570'), ('MIDWAY BEACH', None, '41.46670', '-90.83330'), ('MONTPELIER', None, '41.46670', '-90.80000'), ('MOSCOW', None, '41.58330', '-91.08330'), ('MUSCATINE', 22697, '41.41770', '-91.07170'), ('MUSCATINE MUNICIPAL AIRPO', None, '41.36670', '-91.15000'), ('NEW ERA', None, '41.46670', '-90.90000'), ('NICHOLS', 374, '41.47910', '-91.30810'), ('PLEASANT PRARIE', None, '41.51670', '-90.86670'), ('STOCKTON', 182, '41.58330', '-90.86670'), ('SWEETLAND CENTER', None, '41.50000', '-90.96670'), ('WEST LIBERTY', 3332, '41.57270', '-91.26380'), ('WILDCAT DEN STATE PARK', None, '41.46670', '-90.88330'), ('WILTON', 2829, '41.58910', '-91.02470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'VIC030': {'fullStateName': 'VIRGIN ISLANDS', 'state': 'VI', 'cities': [("ANNA'S RETREAT", None, '18.34210', '-64.88790'), ('CHARLOTTE AMALIE', None, '18.34400', '-64.93350'), ('CHARLOTTE AMALIE EAST', None, '18.33700', '-64.91270'), ('CHARLOTTE AMALIE WEST', None, '18.33920', '-64.96050')], 'partOfState': '', 'wfo': 'SJU'}, -'SCC035': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BROWNSVILLE', None, '33.02860', '-80.19830'), ('BYRD', None, '33.16890', '-80.51720'), ('CANAAN', None, '32.96560', '-80.29440'), ('CAT HOLE', None, '33.14440', '-80.69420'), ('CLUBHOUSE CROSSROADS', None, '32.89780', '-80.32280'), ('COOKE CROSSROADS', None, '32.94810', '-80.20580'), ('DELEMAR CROSSROADS', None, '32.84610', '-80.28440'), ('DORCHESTER', None, '33.13970', '-80.39440'), ('DORCHESTER ESTATES', None, '32.96780', '-80.19690'), ('DUNCAN CHAPEL', None, '33.29580', '-80.56060'), ('GETTYSVILLE', None, '32.90170', '-80.36420'), ('GIANT', None, '33.23690', '-80.44500'), ('GIVHANS', None, '33.01140', '-80.33780'), ('GREGGS LANDING', None, '32.92830', '-80.15420'), ('GROVER', None, '33.10500', '-80.59500'), ('HARLEYVILLE', 594, '33.21440', '-80.44810'), ('HUDSONTOWN', None, '33.20580', '-80.59110'), ('JEDBURG', None, '33.05560', '-80.23860'), ('KNIGHTSVILLE', None, '33.01140', '-80.23810'), ('LOTTS CROSSROADS', None, '33.04080', '-80.24940'), ('MOUNT ZION', None, '33.22560', '-80.58750'), ('OAKBROOK', None, '32.95830', '-80.17220'), ('OLD SAINT GEORGE', None, '33.17110', '-80.61250'), ('ORCHARD HILL', None, '33.02530', '-80.22280'), ('PREGNALL', None, '33.15610', '-80.46470'), ('PRINGLETOWN', None, '33.14360', '-80.30610'), ('REEVESVILLE', 207, '33.20560', '-80.64810'), ('RIDGEVILLE', 1690, '33.09560', '-80.31560'), ('ROSINVILLE', None, '33.25440', '-80.52780'), ('SAINT GEORGE', None, '33.18580', '-80.57580'), ('SLANDSVILLE', None, '32.98030', '-80.24170'), ('STALLSVILLE', None, '32.99640', '-80.18220'), ('SUMMERVILLE', 27752, '33.01830', '-80.17580'), ('TEXAS', None, '33.13190', '-80.55390'), ('WESTOE', None, '32.94580', '-80.23360')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SDC137': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRIDGER', None, '44.55130', '-101.91010'), ('CHERRY CREEK', None, '44.60000', '-101.50000'), ('DUPREE', 434, '45.05060', '-101.59100'), ('GLAD VALLEY', None, '45.40000', '-101.78330'), ('IRON LIGHTNING', None, '45.18000', '-101.84040'), ('RED ELM', None, '45.05620', '-101.79070'), ('RED SCAFFOLD', None, '44.76940', '-101.84950'), ('THUNDER BUTTE', None, '45.21320', '-101.68050')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDC135': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('GAYVILLE', 418, '42.88820', '-97.17280'), ('LESTERVILLE', 158, '43.03870', '-97.59050'), ('MAYFIELD', None, '43.08190', '-97.31760'), ('MISSION HILL', 183, '42.92120', '-97.27910'), ('UTICA', 86, '42.98130', '-97.49620'), ('VOLIN', 207, '42.95900', '-97.18070'), ('YANKTON', 13528, '42.88980', '-97.39210')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'WIC029': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAILEYS HARBOR', None, '45.06000', '-87.13000'), ('BRUSSELS', None, '44.73000', '-87.63000'), ('CARLSVILLE', None, '44.95000', '-87.34000'), ('CHAMBERS ISLAND', None, '45.18000', '-87.35000'), ('CLAY BANKS', None, '44.71000', '-87.36000'), ('EGG HARBOR', 250, '45.04000', '-87.28000'), ('ELLISON BAY', None, '45.25000', '-87.06000'), ('EPHRAIM', 353, '45.15000', '-87.16000'), ('FISH CREEK', None, '45.13000', '-87.23000'), ('FORESTVILLE', 429, '44.68000', '-87.50000'), ('GILLS ROCK', None, '45.28000', '-87.01000'), ('GILLS ROCK', None, '45.28000', '-87.01000'), ('INSTITUTE', None, '44.90000', '-87.30000'), ('JACKSONPORT', None, '44.98000', '-87.18000'), ('KOLBERG', None, '44.71000', '-87.56000'), ('LITTLE STURGEON', None, '44.84000', '-87.57000'), ('MAPLEWOOD', None, '44.75000', '-87.48000'), ('PENINSULA STATE PARK', None, '45.16000', '-87.21000'), ('POTAWATOMI STATE PARK', None, '44.88000', '-87.44000'), ('SISTER BAY', 886, '45.18000', '-87.11000'), ('VALMY', None, '44.90000', '-87.26000'), ('WHITEFISH BAY', 14163, '44.90000', '-87.21000'), ('WHITEFISH DUNES STATE PAR', None, '44.92000', '-87.21000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'RIC009': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('BLOCK ISLAND', None, '41.16667', '-71.58333'), ('CHARLESTOWN', None, '41.38333', '-71.65000'), ('EXETER', None, '41.56667', '-71.68333'), ('HOPKINTON', None, '41.45000', '-71.78333'), ('KINGSTON', 5446, '41.47220', '-71.52340'), ('NARRAGANSETT', None, '41.42710', '-71.46690'), ('NORTH KINGSTOWN', None, '41.51000', '-71.45000'), ('RICHMOND', None, '41.50000', '-71.63333'), ('SOUTH KINGSTOWN', None, '41.43333', '-71.55000'), ('WESTERLY', 17682, '41.37060', '-71.81030')], 'partOfState': '', 'wfo': 'BOX'}, -'NYC099': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BORDER CITY', None, '42.88330', '-76.95000'), ('CANOGA', None, '42.85000', '-76.73330'), ('CAYWOOD', None, '42.56670', '-76.85000'), ('COVERT', None, '42.58330', '-76.66670'), ('DUBLIN', None, '43.00000', '-76.91670'), ('EAST VARICK', None, '42.76670', '-76.76670'), ('FAYETTE', None, '42.81670', '-76.80000'), ('HAYTS CORNERS', None, '42.70000', '-76.78330'), ('INTERLAKEN', 674, '42.61870', '-76.72470'), ('KELLY CORNERS', None, '42.60000', '-76.75000'), ('KENDAIA', None, '42.75000', '-76.88330'), ('KIDDERS', None, '42.65000', '-76.68330'), ('LEHIGH VLY JCT', None, '42.95000', '-76.76670'), ('LODI', 338, '42.61330', '-76.82250'), ('LODI STATION', None, '42.61670', '-76.85000'), ('MAC DOUGALL', None, '42.80000', '-76.86670'), ('MAGEE', None, '42.96670', '-76.83330'), ('OVID', 612, '42.67530', '-76.82160'), ('PACKWOOD CORNERS', None, '42.90000', '-76.90000'), ('ROMULUS', None, '42.75000', '-76.83330'), ('ROSE HILL', None, '42.85000', '-76.90000'), ('SENECA FALLS', 6861, '42.90940', '-76.79580'), ('SHELDRAKE', None, '42.66670', '-76.68330'), ('SHELDRAKE SPGS', None, '42.66670', '-76.75000'), ('TOWNSENDVILLE', None, '42.56670', '-76.76670'), ('TYRE', None, '42.98330', '-76.80000'), ('WATERLOO', 5111, '42.90450', '-76.85940'), ('WILLARD', None, '42.68330', '-76.86670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYC097': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALPINE', None, '42.31670', '-76.71670'), ('ALTAY', None, '42.43330', '-77.01670'), ('BEAVER DAMS', None, '42.28330', '-76.96670'), ('BENNETTSBURG', None, '42.43330', '-76.80000'), ('BURDETT', 357, '42.41710', '-76.84730'), ('CATHARINE', None, '42.31670', '-76.78330'), ('CAYUTA', None, '42.28330', '-76.70000'), ('EAST STEAMBURG', None, '42.53330', '-76.76670'), ('HECTOR', None, '42.50000', '-76.86670'), ('LOGAN', None, '42.48330', '-76.83330'), ('MECKLENBURG', None, '42.46670', '-76.70000'), ('MONTEREY', None, '42.30000', '-77.05000'), ('MONTOUR FALLS', 1797, '42.35020', '-76.84940'), ('MORELAND', None, '42.30000', '-76.90000'), ('ODESSA', 617, '42.31110', '-76.81750'), ('PERRY CITY', None, '42.50000', '-76.70000'), ('READING CENTER', None, '42.43330', '-76.93330'), ('REYNOLDSVILLE', None, '42.46670', '-76.76670'), ('SEARSBURG', None, '42.53330', '-76.73330'), ('SMITH VALLEY', None, '42.41670', '-76.75000'), ('TOWNSEND', None, '42.35000', '-76.95000'), ('TYRONE', None, '42.41670', '-77.06670'), ('WATKINS GLEN', 2149, '42.38030', '-76.86780'), ('WAYNE', None, '42.46670', '-77.10000'), ('WEDGEWOOD', None, '42.35000', '-76.88330'), ('WESTON', None, '42.41670', '-77.06670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'RIC005': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('JAMESTOWN', None, '41.48333', '-71.36667'), ('LITTLE COMPTON', None, '41.50000', '-71.16667'), ('NEWPORT', 26475, '41.49010', '-71.32030'), ('PORTSMOUTH', None, '41.60000', '-71.25000'), ('PRUDENCE ISLAND', None, '41.60000', '-71.31667'), ('TIVERTON', 7282, '41.65420', '-71.20090')], 'partOfState': '', 'wfo': 'BOX'}, -'NYC095': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BREAKABEEN', None, '42.52970', '-74.40970'), ('CENTRAL BRIDGE', None, '42.70880', '-74.33620'), ('COBLESKILL', 4533, '42.67910', '-74.48610'), ('GILBOA', None, '42.39780', '-74.39780'), ('JEFFERSON', None, '42.48020', '-74.61250'), ('LIVINGSTONVILLE', None, '42.48800', '-74.26930'), ('MIDDLEBURGH', 1398, '42.59890', '-74.32990'), ('NORTH BLENHEIM', None, '42.47350', '-74.43750'), ('RICHMONDVILLE', 786, '42.63320', '-74.56450'), ('SCHOHARIE', 1030, '42.66670', '-74.31290'), ('SHARON SPRINGS', 547, '42.79490', '-74.61750'), ('SUMMIT', None, '42.58000', '-74.58650')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'RIC007': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('MILLBURY', None, '42.00000', '-71.75000'), ('BURRILLVILLE', None, '41.95370', '-71.71670'), ('CENTRAL FALLS', 18928, '41.88940', '-71.39390'), ('CRANSTON', 79269, '41.76660', '-71.48110'), ('CUMBERLAND', None, '41.97200', '-71.46010'), ('EAST PROVIDENCE', 48688, '41.80020', '-71.35950'), ('FOSTER', None, '41.85000', '-71.76667'), ('GLOCESTER', None, '41.91667', '-71.66667'), ('JOHNSTON', None, '41.81667', '-71.46667'), ('LINCOLN', None, '41.91667', '-71.46667'), ('NORTH PROVIDENCE', 32411, '41.86120', '-71.45750'), ('NORTH SMITHFIELD', None, '41.95000', '-71.55000'), ('PAWTUCKET', 72958, '41.87330', '-71.37430'), ('PROVIDENCE', 173618, '41.82200', '-71.41970'), ('SCITUATE', None, '41.80000', '-71.61667'), ('SMITHFIELD', None, '41.88333', '-71.55000'), ('WOONSOCKET', 43224, '41.99990', '-71.50040')], 'partOfState': '', 'wfo': 'BOX'}, -'NYC093': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALPLAUS', None, '42.85570', '-73.90250'), ('DELANSON', 385, '42.74770', '-74.18500'), ('DUANESBURG', 339, '42.76220', '-74.13350'), ('EAST GLENVILLE', 6064, '42.86010', '-73.91590'), ('ESPERANCE', 380, '42.76440', '-74.25770'), ('MARIAVILLE', None, '42.82930', '-74.13770'), ('NISKAYUNA', 4892, '42.81710', '-73.89800'), ('ROTTERDAM', 20536, '42.77840', '-73.95450'), ('ROTTERDAM JUNCTION', None, '42.87420', '-74.04600'), ('SCHENECTADY', 61821, '42.80180', '-73.92810'), ('SCOTIA', 7957, '42.83200', '-73.96080')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'RIC001': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('BARRINGTON', 16819, '41.73520', '-71.31860'), ('BRISTOL', 22469, '41.67780', '-71.27430'), ('WARREN', None, '41.71667', '-71.26667')], 'partOfState': '', 'wfo': 'BOX'}, -'NYC091': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BALLSTON SPA', 5556, '43.00600', '-73.85150'), ('BURNT HILLS', None, '42.91180', '-73.90050'), ('CLIFTON PARK', None, '42.85480', '-73.80850'), ('CORINTH', 2474, '43.24550', '-73.83070'), ('DAY CENTER', None, '43.30500', '-74.01720'), ('EDINBURG', None, '43.22620', '-74.09250'), ('GALWAY', 214, '43.01880', '-74.03180'), ('GANSEVOORT', None, '43.19600', '-73.64780'), ('MECHANICVILLE', 5019, '42.90400', '-73.69010'), ('MILTON', 1251, '43.03350', '-73.85300'), ('PORTER CORNERS', None, '43.14750', '-73.88670'), ('ROCK CITY FALLS', None, '43.06150', '-73.92130'), ('ROUND LAKE', 604, '42.93720', '-73.79610'), ('SARATOGA LAKE', None, '43.03170', '-73.73830'), ('SARATOGA SPRINGS', 26186, '43.06760', '-73.77880'), ('SCHUYLERVILLE', 1197, '43.10200', '-73.59060'), ('SOUTH GLENS FALLS', 3368, '43.29340', '-73.63530'), ('STILLWATER', 1644, '42.95000', '-73.64490'), ('THE SARATOGA BATTLEFIELD', None, '43.00250', '-73.64370'), ('VICTORY', 544, '43.09360', '-73.59240'), ('WATERFORD', 2204, '42.79180', '-73.67940')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'RIC003': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('COVENTRY', None, '41.68333', '-71.65000'), ('EAST GREENWICH', None, '41.65000', '-71.46667'), ('WARWICK', 85808, '41.70220', '-71.42190'), ('WEST GREENWICH', None, '41.63333', '-71.65000'), ('WEST WARWICK', 29581, '41.69750', '-71.51830')], 'partOfState': '', 'wfo': 'BOX'}, -'ARC059': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FRIENDSHIP', 206, '34.22380', '-93.00300'), ('MALVERN', 9021, '34.37110', '-92.81560'), ('PERLA', 115, '34.36440', '-92.77860'), ('ROCKPORT', 792, '34.39190', '-92.81630')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'ILC029': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASHMORE', 809, '39.53110', '-88.02040'), ('CHARLESTON', 21039, '39.48480', '-88.17610'), ('COLES', None, '39.51670', '-88.46670'), ('COOKS MILL', None, '39.58330', '-88.41670'), ('HUMBOLDT', 481, '39.60510', '-88.31950'), ('HUTTON', None, '39.40000', '-88.06670'), ('LERNA', 322, '39.41790', '-88.28890'), ('MATTOON', 18291, '39.47700', '-88.36880'), ('OAKLAND', 996, '39.65770', '-88.02660'), ('PARADISE', None, '39.41670', '-88.45000'), ('RARDIN', None, '39.60000', '-88.10000'), ('TRILLA', None, '39.38330', '-88.35000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ARC051': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('HOT SPRINGS', 35750, '34.49370', '-93.05200'), ('HOT SPRINGS VILLAGE', 8397, '34.66520', '-93.00010'), ('LAKE HAMILTON', 1609, '34.42600', '-93.08930'), ('LONSDALE', 118, '34.54470', '-92.81110'), ('MOUNTAIN PINE', 772, '34.57140', '-93.17400'), ('PINEY', 3988, '34.50340', '-93.14260'), ('ROCKWELL', 3024, '34.46430', '-93.13360')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ILC023': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CASEY', 2942, '39.30260', '-87.98930'), ('CLARKSVILLE', None, '39.45000', '-87.80000'), ('DENNISON', None, '39.46670', '-87.58330'), ('MARSHALL', 3771, '39.39620', '-87.69020'), ('MARTINSVILLE', 1225, '39.33620', '-87.88020'), ('ORANGE', None, '39.20000', '-87.84000'), ('WEST UNION', None, '39.21670', '-87.66670'), ('WESTFIELD', 678, '39.45550', '-87.99690')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ARC053': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('LEOLA', 515, '34.16930', '-92.59070'), ('POYEN', 272, '34.32240', '-92.64230'), ('PRATTSVILLE', 282, '34.31810', '-92.54300'), ('SHERIDAN', 3872, '34.30930', '-92.40550'), ('TULL', 358, '34.44230', '-92.57350')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ILC021': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASSUMPTION', 1261, '39.51800', '-89.04840'), ('EDINBURG', 1135, '39.65780', '-89.38960'), ('KINCAID', 1441, '39.58870', '-89.41430'), ('MORRISONVILLE', 1068, '39.42120', '-89.45780'), ('MOUNT AUBURN', 515, '39.76590', '-89.26100'), ('OWANECO', 256, '39.48140', '-89.19440'), ('PALMER', 248, '39.45840', '-89.40790'), ('PANA', 5614, '39.38660', '-89.07850'), ('ROBY', None, '39.74000', '-89.39820'), ('SHARPSBURG', None, '39.61670', '-89.35000'), ('SICILY', None, '39.60000', '-89.50000'), ('STONINGTON', 960, '39.63910', '-89.19220'), ('TAYLORVILLE', 11427, '39.52150', '-89.26220'), ('VANDERVILLE', None, '39.42120', '-89.26220'), ('WILLEYS', None, '39.60000', '-89.23330')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ARC055': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BEECH GROVE', None, '36.16670', '-90.61670'), ('DELAPLAINE', 127, '36.23130', '-90.72600'), ('EVENING STAR', None, '36.18330', '-90.70000'), ('FONTAINE', None, '36.00000', '-90.81670'), ('LAFE', 385, '36.20710', '-90.50310'), ('MARMADUKE', 1158, '36.18840', '-90.38780'), ('OAK GROVE HEIGHTS', 727, '36.12730', '-90.51520'), ('PARAGOULD', 22017, '36.05610', '-90.51350'), ('WALCOTT', None, '36.03330', '-90.66670')], 'partOfState': '', 'wfo': 'MEG'}, -'ILC027': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALBERS', 878, '38.54480', '-89.61510'), ('AVISTON', 1231, '38.60780', '-89.60620'), ('BARTELSO', 593, '38.53650', '-89.46840'), ('BECKEMEYER', 1043, '38.60510', '-89.43400'), ('BOULDER', None, '38.70000', '-89.21700'), ('BREESE', 4048, '38.61100', '-89.52220'), ('CARLYLE', 3406, '38.61900', '-89.37220'), ('DAMIANSVILLE', 368, '38.50950', '-89.62420'), ('FERRIN', None, '38.60950', '-89.23340'), ('GERMANTOWN', 1118, '38.55230', '-89.53760'), ('HOFFMAN', 460, '38.53840', '-89.26290'), ('HUEY', 196, '38.60540', '-89.29140'), ('JAMESTOWN', None, '38.73400', '-89.51450'), ('KEYESPORT', 481, '38.74070', '-89.27700'), ('NEW BADEN', 3001, '38.53640', '-89.69770'), ('NEW MEMPHIS', None, '38.47930', '-89.67840'), ('POSEY', None, '38.53700', '-89.35260'), ('SHATTUC', None, '38.61070', '-89.19290'), ('ST. ROSE', None, '38.68300', '-89.55000'), ('STOLLETOWN', None, '38.69340', '-89.44680'), ('TRENTON', 2610, '38.60670', '-89.68160')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ARC057': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLEVINS', 365, '33.87110', '-93.57720'), ('FULTON', 245, '33.61190', '-93.81430'), ('HOPE', 10616, '33.66820', '-93.59120'), ('MCCASKILL', 84, '33.91760', '-93.64110'), ('MCNAB', 37, '33.66070', '-93.83220'), ('OAKHAVEN', 54, '33.72910', '-93.62000'), ('OZAN', 81, '33.84730', '-93.71940'), ('PATMOS', 61, '33.51190', '-93.56670'), ('PERRYTOWN', 255, '33.69650', '-93.53260'), ('WASHINGTON', 148, '33.77310', '-93.68300')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'ILC025': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BIBLE GROVE', None, '38.86670', '-88.43330'), ('CLAY CITY', 1000, '38.68550', '-88.35120'), ('FLORA', 5086, '38.67050', '-88.47880'), ('HORD', None, '38.88330', '-88.51670'), ('INGAHAM', None, '38.83330', '-88.33330'), ('IOLA', 171, '38.83460', '-88.62770'), ('LOUISVILLE', 1242, '38.76950', '-88.50730'), ('OSKALOOSA', None, '38.75000', '-88.65000'), ('SAILOR SPRINGS', 128, '38.76480', '-88.35870'), ('WENDELIN', None, '38.83330', '-88.28330'), ('XENIA', 407, '38.63680', '-88.63710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ILX'}, -'MOC173': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CENTER', 644, '39.50980', '-91.52850'), ('ILASCO', None, '39.67150', '-91.31070'), ('NEW LONDON', 1001, '39.58420', '-91.39880'), ('PERRY', 666, '39.43000', '-91.66790'), ('RENSSELAER', 145, '39.67070', '-91.54780'), ('SAVERTON', None, '39.64380', '-91.26980'), ('SPAULDING', None, '39.61860', '-91.52660'), ('THE LANDING', None, '39.55940', '-91.65900')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'MOC171': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GRAYSVILLE', None, '40.45000', '-92.76670'), ('LEMONS', None, '40.40000', '-93.05000'), ('LIVONIA', 114, '40.49160', '-92.69970'), ('LUCERNE', 92, '40.46370', '-93.29160'), ('POWERSVILLE', 86, '40.54990', '-93.30080'), ('UNIONVILLE', 2041, '40.47570', '-93.00370'), ('WORTHINGTON', 89, '40.40810', '-92.68880')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOC177': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CAMDEN', 209, '39.20020', '-94.01890'), ('CRYSTAL LAKES', 383, '39.35820', '-94.19000'), ('ELMIRA', 82, '39.50830', '-94.15310'), ('EXCELSIOR ESTATES', 263, '39.39020', '-94.20760'), ('FLEMING', 122, '39.19290', '-94.05120'), ('HARDIN', 614, '39.26760', '-93.83030'), ('HENRIETTA', 457, '39.23740', '-93.93800'), ('HOMESTEAD', 181, '39.35970', '-94.20190'), ('KNOXVILLE', None, '39.45000', '-94.01670'), ('LAWSON', 2336, '39.43630', '-94.21360'), ('ORRICK', 889, '39.21360', '-94.12520'), ('RAYVILLE', 204, '39.34800', '-94.06360'), ('RICHMOND', 6116, '39.27870', '-93.97330'), ('WOODS HEIGHTS', 742, '39.34000', '-94.16220')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'NVC019': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('DAYTON', 5907, '39.24000', '-119.57970'), ('FERNLEY', 8543, '39.61380', '-119.24000'), ('FORT CHURCHILL STATE PARK', None, '39.29000', '-119.27000'), ('MASON', None, '38.95000', '-119.19000'), ('SILVER SPRINGS', 4708, '39.42070', '-119.22000'), ('SMITH', None, '38.80000', '-119.33000'), ('SMITH VALLEY', 1425, '38.78610', '-119.34080'), ('STAGECOACH', None, '39.37000', '-119.37000'), ('SWEETWATER SUMMIT', None, '38.52000', '-119.21000'), ('WABUSKA', None, '39.14000', '-119.18000'), ('WEED HEIGHTS', None, '38.99000', '-119.21000'), ('WELLINGTON', None, '38.76000', '-119.38000'), ('YERINGTON', 2883, '38.98810', '-119.16310')], 'partOfState': '', 'wfo': 'REV'}, -'MOC175': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CAIRO', 293, '39.51200', '-92.44070'), ('CLARK', 275, '39.28060', '-92.34190'), ('CLIFTON HILL', 124, '39.43920', '-92.66710'), ('HIGBEE', 623, '39.30640', '-92.51220'), ('HUNTSVILLE', 1553, '39.43740', '-92.54360'), ('JACKSONVILLE', 163, '39.58750', '-92.47280'), ('MOBERLY', 11945, '39.41970', '-92.43620'), ('RENICK', 221, '39.34210', '-92.41070'), ('THOMAS HILL RES', None, '39.60000', '-92.63330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'NVC015': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('ARGENTA', None, '40.66670', '-116.75000'), ('AUSTIN', None, '39.48330', '-117.06670'), ('BATTLE MOUNTAIN', 2871, '40.64150', '-116.93770'), ('GILLMAN SPRINGS', None, '39.25020', '-117.01410'), ('GRASS VALLEY', None, '39.90000', '-116.58330'), ('HICKISON SUMMIT', None, '39.43330', '-116.73330'), ('KINGSTON', None, '39.20000', '-117.08330'), ('NEW PASS SUMMIT', None, '39.53330', '-117.46660')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LKN'}, -'MOC179': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLACK', None, '37.53140', '-90.93320'), ('BUNKER', 427, '37.45750', '-91.21150'), ('CENTERVILLE', 171, '37.43630', '-90.96030'), ('CORRIDON', None, '37.38200', '-91.07230'), ('ELLINGTON', 1045, '37.23540', '-90.97200'), ('GARWOOD', None, '37.06700', '-90.90000'), ('LESTERVILLE', None, '37.45580', '-90.82530'), ('OATES', None, '37.56700', '-91.05000'), ('REDFORD', None, '37.32010', '-90.89840'), ('REYNOLDS', None, '37.40000', '-91.06700')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'NVC017': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('ALAMO', None, '37.35250', '-115.15250'), ('BEAVER DAM', None, '37.50500', '-114.05000'), ('CALIENTE', 1123, '37.61560', '-114.51450'), ('CARP', None, '37.10660', '-114.48330'), ('EAGLE VALLEY', None, '38.03330', '-114.18330'), ('ELGIN', None, '37.35000', '-114.53660'), ('HIKO', None, '37.60000', '-115.21660'), ('PANACA', None, '37.78330', '-114.38330'), ('PIOCHE', None, '37.93330', '-114.45000'), ('RACHEL', None, '37.63330', '-115.71660'), ('URSINE', None, '37.98300', '-114.20000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'VEF'}, -'NVC011': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BEOWAWE', None, '40.58330', '-116.46660'), ('CRESCENT VALLEY', None, '40.41660', '-116.56660'), ('DIAMOND VALLEY', None, '39.70860', '-116.04940'), ('DUNPHY', None, '40.70000', '-116.51660'), ('EMIGRANT PASS', None, '40.63330', '-116.30220'), ('EUREKA', None, '39.50000', '-115.95000'), ('EUREKA AIRPORT', None, '39.60000', '-116.00000'), ('GARDEN PASS', None, '39.82770', '-116.16300'), ('PALISADE', None, '40.60000', '-116.20000'), ('PINE VALLEY', None, '40.41660', '-116.11660'), ('PINTO SUMMIT', None, '39.44000', '-115.92750')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LKN'}, -'UTC019': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CASTLE VALLEY', 349, '38.63260', '-109.39940'), ('GREEN RIVER', 973, '38.98160', '-110.08990'), ('MOAB', 4779, '38.57250', '-109.54710')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GJT'}, -'NVC013': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('DENIO', None, '41.98330', '-118.63340'), ('DUFFERENA', None, '41.86670', '-119.00010'), ('GOLCONDA', None, '40.95010', '-117.48330'), ('KINGS RIVER VALLEY', None, '41.73340', '-118.21660'), ('LEONARD CREEK RANCH', None, '41.63340', '-118.71680'), ('MCDERMITT', 269, '41.98900', '-117.71550'), ('OROVADA', None, '41.56660', '-117.83330'), ('PARADISE VALLEY', None, '41.50020', '-117.53330'), ('VALMY', None, '40.78330', '-117.13330'), ('WINNEMUCCA', 7174, '40.96830', '-117.72570')], 'partOfState': 'NORTHWEST', 'wfo': 'LKN'}, -'SDC047': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ANGOSTURA RESERVOIR', None, '43.31670', '-103.43330'), ('ARDMORE', None, '43.02450', '-103.65800'), ('BURDOCK', None, '43.45610', '-103.99280'), ('COLD BROOK RESERVOIR', None, '43.46130', '-103.49160'), ('COTTONWOOD SPRINGS DAM', None, '43.43470', '-103.56240'), ('EDGEMONT', 867, '43.29850', '-103.82710'), ('HOT SPRINGS', 4129, '43.43300', '-103.48030'), ('MAVERICK JUNCTION', None, '43.40060', '-103.39590'), ('MINNEKAHTA', None, '43.43370', '-103.68470'), ('OELRICHS', 145, '43.17850', '-103.23090'), ('ORAL', None, '43.40000', '-103.26670'), ('PROVO', None, '43.19130', '-103.83100'), ('RUMFORD', None, '43.12800', '-103.69800'), ('SMITHWICK', None, '43.30340', '-103.22290')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDC045': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BOWDLE', 571, '45.45170', '-99.65590'), ('BOWDLE', 571, '45.45170', '-99.65590'), ('CRAVENS CORNER', None, '45.44820', '-98.92700'), ('CRAVENS CORNER', None, '45.44820', '-98.92700'), ('DEERFIELD COLONY', None, '45.58820', '-98.90290'), ('DEERFIELD COLONY', None, '45.58820', '-98.90290'), ('HOSMER', 287, '45.57890', '-99.47370'), ('HOSMER', 287, '45.57890', '-99.47370'), ('IPSWICH', 943, '45.44410', '-99.02990'), ('IPSWICH', 943, '45.44410', '-99.02990'), ('LOYALTON', None, '45.28810', '-99.27870'), ('LOYALTON', None, '45.28810', '-99.27870'), ('MINA', None, '45.43810', '-98.75530'), ('MINA', None, '45.43810', '-98.75530'), ('PAMBROOK COLONY', None, '45.37650', '-99.00080'), ('PAMBROOK COLONY', None, '45.37650', '-99.00080'), ('PLAINVIEW COLONY', None, '45.58160', '-99.00660'), ('PLAINVIEW COLONY', None, '45.58160', '-99.00660'), ('ROSCOE', 324, '45.45030', '-99.33490'), ('ROSCOE', 324, '45.45030', '-99.33490')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDC043': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARMOUR', 782, '43.31940', '-98.34390'), ('CORSICA', 644, '43.42430', '-98.40570'), ('DELMONT', 263, '43.26600', '-98.15990'), ('HARRISON', 51, '43.44000', '-98.52970')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDC041': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FIRESTEEL', None, '45.42520', '-101.28460'), ('FIRESTEEL', None, '45.42520', '-101.28460'), ('GREEN GRASS', 58, '45.16770', '-101.25050'), ('GREEN GRASS', 58, '45.16770', '-101.25050'), ('ISABEL', 239, '45.39580', '-101.42850'), ('ISABEL', 239, '45.39580', '-101.42850'), ('LAPLANT', None, '45.14430', '-100.65100'), ('LAPLANT', None, '45.14430', '-100.65100'), ('LITTLE MOREAU REC AREA', None, '45.35450', '-101.09960'), ('LITTLE MOREAU REC AREA', None, '45.35450', '-101.09960'), ('PARADE', None, '45.02350', '-101.10420'), ('PARADE', None, '45.02350', '-101.10420'), ('PROMISE', None, '45.32910', '-100.60380'), ('PROMISE', None, '45.32910', '-100.60380'), ('RIDGEVIEW', None, '45.08470', '-100.79990'), ('RIDGEVIEW', None, '45.08470', '-100.79990'), ('TIMBER LAKE', 443, '45.42760', '-101.07420'), ('TIMBER LAKE', 443, '45.42760', '-101.07420'), ('TRAIL CITY', None, '45.47330', '-100.73120'), ('TRAIL CITY', None, '45.47330', '-100.73120'), ('WHITE HORSE', 180, '45.27040', '-100.88780'), ('WHITE HORSE', 180, '45.27040', '-100.88780')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDC049': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BURKMERE', None, '45.04860', '-99.31180'), ('BURKMERE', None, '45.04860', '-99.31180'), ('CHELSEA', 33, '45.16720', '-98.74220'), ('CHELSEA', 33, '45.16720', '-98.74220'), ('CRESBARD', 143, '45.16960', '-98.94760'), ('CRESBARD', 143, '45.16960', '-98.94760'), ('DEVOE', None, '45.09160', '-98.87870'), ('DEVOE', None, '45.09160', '-98.87870'), ('FAULKTON', 785, '45.03430', '-99.12770'), ('FAULKTON', 785, '45.03430', '-99.12770'), ('MIRANDA', None, '44.97220', '-98.96490'), ('MIRANDA', None, '44.97220', '-98.96490'), ('NORBECK', None, '45.18750', '-99.20610'), ('NORBECK', None, '45.18750', '-99.20610'), ('ONAKA', 30, '45.19120', '-99.46460'), ('ONAKA', 30, '45.19120', '-99.46460'), ('ORIENT', 57, '44.90290', '-99.08830'), ('ORIENT', 57, '44.90290', '-99.08830'), ('ROCKHAM', 53, '44.90500', '-98.82290'), ('ROCKHAM', 53, '44.90500', '-98.82290'), ('SENECA', 58, '45.06100', '-99.50810'), ('SENECA', 58, '45.06100', '-99.50810'), ('ZELL', None, '44.89270', '-98.72630'), ('ZELL', None, '44.89270', '-98.72630')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'KSC121': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('FONTANA', 149, '38.42590', '-94.83790'), ('LOUISBURG', 2576, '38.62380', '-94.68290'), ('OSAWATOMIE', 4645, '38.50250', '-94.95110'), ('PAOLA', 5011, '38.57700', '-94.86620')], 'partOfState': 'EAST CENTRAL', 'wfo': 'EAX'}, -'ILC119': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALHAMBRA', 630, '38.88760', '-89.73500'), ('ALTON', 30496, '38.90400', '-90.15400'), ('BETHALTO', 9454, '38.90080', '-90.04690'), ('CARPENTER', None, '38.89210', '-89.89440'), ('COLLINSVILLE', 24707, '38.67840', '-89.99730'), ('DORSEY', None, '38.97380', '-89.99840'), ('EDWARDSVILLE', 21491, '38.79640', '-89.96500'), ('FOSTERBURG', None, '38.97180', '-90.07500'), ('FRUIT', None, '38.83090', '-89.86260'), ('GLEN CARBON', 10425, '38.76050', '-89.97300'), ('GODFREY', 16286, '38.96670', '-90.18830'), ('GRANITE CITY', 31301, '38.71440', '-90.12970'), ('GRANTFORK', 254, '38.83090', '-89.66780'), ('HAMEL', 570, '38.88860', '-89.84270'), ('HARTFORD', 1545, '38.82800', '-90.09180'), ('HIGHLAND', 8438, '38.74100', '-89.67580'), ('KAUFMAN', None, '38.86260', '-89.77730'), ('KUHN', None, '38.78200', '-89.87650'), ('LIVINGSTON', 825, '38.96780', '-89.76390'), ('MADISON', 4545, '38.67670', '-90.15030'), ('MARINE', 910, '38.78580', '-89.77900'), ('MARYVILLE', 4651, '38.72640', '-89.96470'), ('MITCHELL', None, '38.76880', '-90.08130'), ('NEW DOUGLAS', 369, '38.97000', '-89.66590'), ('POAG', None, '38.79400', '-90.03820'), ('PONTOON BEACH', 5620, '38.72650', '-90.05110'), ('PRAIRIETOWN', None, '38.96650', '-89.92200'), ('ROXANA', 1547, '38.83660', '-90.05260'), ('ST. JACOB', 801, '38.71690', '-89.76860'), ('TROY', 8524, '38.73120', '-89.89380'), ('VENICE', 2528, '38.67200', '-90.16870'), ('WILLIAMSON', 251, '38.98740', '-89.76390'), ('WOOD RIVER', 11296, '38.86210', '-90.08480'), ('WORDEN', 905, '38.93220', '-89.83850')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'ILC117': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATWATER', None, '39.33300', '-89.72510'), ('BENLD', 1541, '39.09310', '-89.80190'), ('BRIGHTON', 2196, '39.04030', '-90.13900'), ('BUNKER HILL', 1801, '39.04050', '-89.95080'), ('CARLINVILLE', 5685, '39.28040', '-89.88090'), ('CHESTERFIELD', 223, '39.25570', '-90.06770'), ('DORCHESTER', 142, '39.08620', '-89.88820'), ('GILLESPIE', 3412, '39.12540', '-89.81720'), ('GIRARD', 2245, '39.44680', '-89.78240'), ('HETTICK', 182, '39.35520', '-90.03700'), ('HORNSBY', None, '39.17070', '-89.74510'), ('MEDORA', 501, '39.17600', '-90.14170'), ('MILES STATION', None, '39.07710', '-90.10720'), ('MODESTO', 252, '39.47910', '-89.98020'), ('MOUNT OLIVE', 2150, '39.07260', '-89.72800'), ('NILWOOD', 284, '39.39950', '-89.80730'), ('PALMYRA', 733, '39.43490', '-89.99620'), ('PIASA', None, '39.11590', '-90.12570'), ('PLAINVIEW', None, '39.15930', '-89.98980'), ('PRUETT', None, '39.06480', '-89.91090'), ('ROYAL LAKES', 190, '39.11250', '-89.96180'), ('SCOTTVILLE', 140, '39.47750', '-90.10330'), ('SHIPMAN', 655, '39.12080', '-90.04520'), ('STANDARD CITY', 138, '39.35040', '-89.78380'), ('STAUNTON', 5030, '39.01260', '-89.78850'), ('VIRDEN', 3488, '39.50490', '-89.76950'), ('WHITE CITY', 221, '39.07240', '-89.76400'), ('WILSONVILLE', 604, '39.06890', '-89.85530')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'ILC115': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARGENTA', 921, '39.98500', '-88.81870'), ('BLUE MOUND', 1129, '39.70070', '-89.11890'), ('BOODY', None, '39.76670', '-89.05500'), ('DECATUR', 81860, '39.85220', '-88.93380'), ('ELWIN', None, '39.78330', '-88.95590'), ('FORSYTH', 2434, '39.92360', '-88.95590'), ('HARRISTOWN', 1338, '39.84160', '-89.05950'), ('LONG CREEK', 1364, '39.80430', '-88.84730'), ('MACON', 1213, '39.70900', '-88.99940'), ('MAROA', 1654, '40.03820', '-88.95490'), ('MOUNT ZION', 4845, '39.77790', '-88.87850'), ('NIANTIC', 738, '39.85390', '-89.16550'), ('OAKLEY', None, '39.85220', '-88.81870'), ('OREANA', 892, '39.93790', '-88.86920'), ('WARRENSBURG', 1289, '39.93230', '-89.06120')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILC113': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ANCHOR', 175, '40.56870', '-88.53870'), ('ARROWSMITH', 298, '40.44890', '-88.63150'), ('BELLFLOWER', 408, '40.34050', '-88.52670'), ('BLOOMINGTON', 64808, '40.47890', '-88.97350'), ('CARLOCK', 456, '40.58210', '-89.13270'), ('CHENOA', 1845, '40.74420', '-88.71810'), ('COLFAX', 989, '40.56670', '-88.61650'), ('COOKSVILLE', 213, '40.54260', '-88.71510'), ('CROPSEY', None, '40.60000', '-88.48330'), ('DANVERS', 1183, '40.52890', '-89.17330'), ('DOWNS', 776, '40.39590', '-88.87170'), ('ELLSWORTH', 271, '40.44950', '-88.71660'), ('GRIDLEY', 1411, '40.74390', '-88.88040'), ('HEYWORTH', 2431, '40.31380', '-88.97880'), ('HOLDER', None, '40.45000', '-88.80000'), ('HUDSON', 1510, '40.60700', '-88.98860'), ('LE ROY', 3332, '40.34160', '-88.76470'), ('LEXINGTON', 1912, '40.64380', '-88.78270'), ('MCLEAN', 808, '40.31560', '-89.17040'), ('NORMAL', 45386, '40.51740', '-88.99940'), ('PLEASANT HILL', 1047, '40.61670', '-88.73330'), ('SAYBROOK', 764, '40.42830', '-88.52650'), ('SHIRLEY', None, '40.41670', '-89.03330'), ('STANFORD', 670, '40.43400', '-89.22010'), ('TOWANDA', 493, '40.56320', '-88.90040')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILC111': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALGONQUIN', 23276, '42.16420', '-88.30050'), ('BULL VALLEY', 726, '42.31140', '-88.34990'), ('CARY', 15531, '42.20900', '-88.24970'), ('CRYSTAL LAKE', 38000, '42.23190', '-88.33050'), ('FOX RIVER GROVE', 4862, '42.19700', '-88.21900'), ('HARVARD', 7996, '42.42120', '-88.61530'), ('HEBRON', 1038, '42.47100', '-88.42990'), ('HOLIDAY HILLS', 831, '42.29130', '-88.22690'), ('HUNTLEY', 5730, '42.16810', '-88.42420'), ('ISLAND LAKE', 8153, '42.27600', '-88.20150'), ('LAKE IN THE HILLS', 23152, '42.19280', '-88.32160'), ('LAKEMOOR', 2788, '42.34150', '-88.20490'), ('LAKEWOOD', 2337, '42.22010', '-88.37810'), ('MARENGO', 6355, '42.24790', '-88.60030'), ('MCCULLOM LAKE', 1038, '42.36880', '-88.29380'), ('MCHENRY', 21501, '42.34070', '-88.29130'), ('OAKWOOD HILLS', 2194, '42.24730', '-88.24440'), ('PISTAKEE HIGHLANDS', 3812, '42.40320', '-88.21220'), ('PRAIRIE GROVE', 960, '42.28030', '-88.26650'), ('RICHMOND', 1091, '42.48120', '-88.30730'), ('SPRING GROVE', 3880, '42.44490', '-88.24380'), ('SUNNYSIDE', None, '42.39560', '-88.23370'), ('UNION', 576, '42.23430', '-88.54350'), ('WONDER LAKE', 1345, '42.38000', '-88.35670'), ('WOODSTOCK', 20151, '42.31070', '-88.43670')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'NEC185': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENEDICT', 278, '41.00660', '-97.60680'), ('BRADSHAW', 336, '40.88370', '-97.74620'), ('GRESHAM', 270, '41.02770', '-97.40110'), ('HENDERSON', 986, '40.77900', '-97.81160'), ('LUSHTON', 33, '40.72380', '-97.72410'), ('MCCOOL JUNCTION', 385, '40.74430', '-97.59520'), ('THAYER', 71, '40.96970', '-97.49450'), ('WACO', 256, '40.89660', '-97.46120'), ('YORK', 8081, '40.87120', '-97.59560')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GID'}, -'OKC051': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ACME', None, '34.80000', '-98.02000'), ('AGAWAM', None, '34.87000', '-97.95000'), ('ALEX', 635, '34.92020', '-97.77940'), ('AMBER', 490, '35.16140', '-97.88050'), ('BRADLEY', 182, '34.87730', '-97.70850'), ('CHICKASHA', 15850, '35.04040', '-97.95230'), ('LAVERTY', None, '34.98000', '-98.07000'), ('MIDDLEBERG', None, '35.10400', '-97.74300'), ('MINCO', 1672, '35.31550', '-97.95120'), ('NINNEKAH', 994, '34.95000', '-97.92000'), ('NORGE', 82, '34.98790', '-97.99570'), ('POCASSET', 192, '35.20000', '-97.93000'), ('RUSH SPRINGS', 1278, '34.77840', '-97.95680'), ('TABLER', None, '35.05000', '-97.82000'), ('TUTTLE', 4294, '35.29610', '-97.75190'), ('VERDEN', 659, '35.08370', '-98.08710')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'NEC181': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BLADEN', 291, '40.32360', '-98.59510'), ('BLUE HILL', 867, '40.33300', '-98.44760'), ('COWLES', 48, '40.17100', '-98.44800'), ('GUIDE ROCK', 245, '40.07300', '-98.32920'), ('INAVALE', None, '40.09580', '-98.63860'), ('RED CLOUD', 1131, '40.08610', '-98.52230'), ('ROSEMONT', None, '40.28690', '-98.36390')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEC183': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BARTLETT', 128, '41.88410', '-98.55140'), ('ERICSON', 104, '41.78050', '-98.67760')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'MTC101': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('DEVON', None, '48.46670', '-111.47780'), ('ETHRIDGE', None, '48.55780', '-112.11970'), ('FERDIG', None, '48.75420', '-111.77420'), ('GALATA', None, '48.47560', '-111.35140'), ('KEVIN', 178, '48.74580', '-111.96550'), ('OILMONT', None, '48.74000', '-111.84000'), ('SHELBY', 3216, '48.50950', '-111.85670'), ('SUNBURST', 415, '48.87650', '-111.90620')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTC103': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('HYSHAM', 330, '46.29050', '-107.22930')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTC105': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BAYLOR', None, '48.66330', '-106.47880'), ('DUCK CREEK FISHING ACCESS', None, '47.98440', '-106.52250'), ('FORT PECK', 240, '48.00910', '-106.44910'), ('FRAZER', 452, '48.05910', '-106.04160'), ('GLASGOW', 3253, '48.19690', '-106.63610'), ('GLENTANA', None, '48.84800', '-106.24880'), ('HINSDALE', None, '48.39410', '-107.08410'), ('LARSLAN', None, '48.57830', '-106.19330'), ('LUSTRE', None, '48.39330', '-105.88160'), ('NASHUA', 325, '48.13220', '-106.35580'), ('OPHEIM', 111, '48.85660', '-106.40660'), ('OSWEGO', None, '48.05860', '-105.88050'), ('PARK GROVE', None, '48.03020', '-106.44470'), ('PORT OF OPHEIM', None, '48.99940', '-106.37720'), ('RICHLAND', None, '48.82080', '-106.05050'), ('SAINT MARIE', None, '48.40220', '-106.53220'), ('TAMPICO', None, '48.30470', '-106.82630'), ('THE BENTONITE PLANT', None, '48.13880', '-107.01940'), ('THE PINES RECREATION AREA', None, '47.83330', '-106.62500'), ('THOENY', None, '48.87690', '-106.91690'), ('VANDALIA', None, '48.35470', '-106.90910'), ('WHATLEY', None, '48.14880', '-106.51660')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTC107': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('HARLOWTON', 1062, '46.43720', '-109.83400'), ('JUDITH GAP', 164, '46.67890', '-109.75400')], 'partOfState': 'CENTRAL', 'wfo': 'BYZ'}, -'INC007': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AMBIA', 197, '40.48880', '-87.51620'), ('BOSWELL', 827, '40.51900', '-87.38260'), ('EARL PARK', 485, '40.68580', '-87.42040'), ('FOWLER', 2415, '40.61720', '-87.31700'), ('OXFORD', 1271, '40.52140', '-87.24850')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'MTC109': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CARLYLE', None, '46.65500', '-104.07550'), ('SAINT PHILLIP', None, '46.83160', '-104.14500'), ('WIBAUX', 567, '46.98500', '-104.18770'), ('YATES', None, '46.95110', '-104.13000')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'UTC017': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ANTIMONY', 122, '38.10090', '-111.98360'), ('BOULDER', 180, '37.92900', '-111.42780'), ('BRYCE CYN NP', None, '37.67000', '-112.17000'), ('CANNONVILLE', 148, '37.56610', '-112.05410'), ('ESCALANTE', 818, '37.76490', '-111.60080'), ('HATCH', 127, '37.65240', '-112.43260'), ('HENRIEVILLE', 159, '37.56460', '-111.99460'), ('HILLSDALE', None, '37.72000', '-112.38000'), ('HITE MARINA', None, '37.90000', '-110.39000'), ('PANGUITCH', 1623, '37.82370', '-112.43770'), ('RUBYS INN', None, '37.70000', '-112.16000'), ('TICABOO', None, '37.60000', '-110.68000'), ('TROPIC', 508, '37.62460', '-112.08770')], 'partOfState': '', 'wfo': 'SLC'}, -'VAC800': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHUCKATUCK', None, '36.86140', '-76.58010'), ('CLEOPUS', None, '36.59280', '-76.83030'), ('CRITTENDEN', None, '36.91010', '-76.49590'), ('DEANES', None, '36.83940', '-76.46280'), ('DOWNTOWN SUFFOLK', None, '36.72440', '-76.58660'), ('DRIVER', None, '36.82310', '-76.50280'), ('ELWOOD', None, '36.67610', '-76.82420'), ('HOBSON', None, '36.89470', '-76.51220'), ('HOLLAND', None, '36.68110', '-76.78060'), ('HUNTERSVILLE', None, '36.87420', '-76.43170'), ('KILBY', None, '36.72480', '-76.63330'), ('KINGS FORK', None, '36.78180', '-76.62700'), ('LUMMIS', None, '36.69500', '-76.70140'), ('MAGNOLIA', None, '36.74580', '-76.54080'), ('NURNEY', None, '36.64220', '-76.61420'), ('SAUNDERS', None, '36.64000', '-76.57580'), ('SOMERTON', None, '36.56810', '-76.75170'), ('SUFFOLK AIRPORT', None, '36.68330', '-76.60190'), ('WHALEYVILLE', None, '36.58820', '-76.68480'), ('WILLS CORNER', None, '36.88060', '-76.58220'), ('WILROY', None, '36.78640', '-76.53390')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'SCC023': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BLACKSTOCK', None, '34.55830', '-81.15250'), ('CHESTER', 6476, '34.70570', '-81.21420'), ('CORNWELL', None, '34.60720', '-81.17940'), ('EDGEMOOR', None, '34.80560', '-81.01170'), ('FORT LAWN', 864, '34.70110', '-80.89850'), ('GREAT FALLS', 2194, '34.57460', '-80.90320'), ('LEEDS', None, '34.62940', '-81.39640'), ('LOCKHART', 39, '34.79470', '-81.46100'), ('LOWRYS', 207, '34.80490', '-81.23820'), ('RICHBURG', 332, '34.71550', '-81.02030')], 'partOfState': '', 'wfo': 'GSP'}, -'SCC021': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BLACKSBURG', 1880, '35.12110', '-81.51870'), ('GAFFNEY', 12968, '35.07230', '-81.65610'), ('SARATT', None, '34.89580', '-81.54030'), ('THICKETTY', None, '35.01640', '-81.72500')], 'partOfState': '', 'wfo': 'GSP'}, -'SCC027': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('MANNING', 4025, '33.69380', '-80.21560'), ('PAXVILLE', 248, '33.73980', '-80.36040'), ('SUMMERTON', 1061, '33.60220', '-80.35180'), ('TURBEVILLE', 602, '33.89030', '-80.01540')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCC025': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CHERAW', 5524, '34.69640', '-79.89530'), ('CHESTERFIELD', 1318, '34.73470', '-80.08470'), ('JEFFERSON', 704, '34.65140', '-80.38810'), ('MCBEE', 714, '34.46770', '-80.25830'), ('MOUNT CROGHAN', 155, '34.76930', '-80.22510'), ('PAGELAND', 2521, '34.77300', '-80.38970'), ('PATRICK', 354, '34.57570', '-80.04470'), ('RUBY', 348, '34.74410', '-80.17970')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCC029': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ASHEPOO', None, '32.74000', '-80.55060'), ('ASHTON', None, '33.01580', '-80.97080'), ('BECK LANDING', None, '32.80440', '-80.41890'), ('BELLS CROSSROADS', None, '32.97890', '-80.85170'), ('BENNETTS POINT', None, '32.56080', '-80.45470'), ('BLAKE', None, '32.69170', '-80.76940'), ('CALDWELL', None, '33.04170', '-80.90390'), ('CANADY LANDING', None, '32.81530', '-80.40500'), ('CANADYS', None, '33.05560', '-80.62060'), ('COLLETON', None, '33.03970', '-80.88250'), ('COTTAGEVILLE', 707, '32.93670', '-80.48110'), ('DRAWDY', None, '32.84780', '-80.62500'), ('FENWICK', None, '32.65140', '-80.45170'), ('GLOVERVILLE', 2805, '32.90000', '-80.49360'), ('GREEN POND', None, '32.73170', '-80.61440'), ('HENDERSONVILLE', None, '32.79060', '-80.72560'), ('HIOTTS', None, '32.97860', '-80.54470'), ('ISLANDTON', None, '32.90890', '-80.93560'), ('JACKSONBORO', None, '32.77000', '-80.45470'), ('LODGE', 114, '33.06780', '-80.95390'), ('MOSELLE', None, '32.96580', '-81.01280'), ('NEYLES', None, '32.82500', '-80.55860'), ('NORMAN LANDING', None, '32.98440', '-80.40860'), ('PADGETTS', None, '33.07170', '-80.88640'), ('PARKERS FERRY LANDING', None, '32.85920', '-80.40390'), ('RHODES CROSSROADS', None, '32.95860', '-80.71000'), ('RITTER', None, '32.78940', '-80.63060'), ('ROUND O', None, '32.93690', '-80.54110'), ('RUFFIN', None, '33.00440', '-80.81580'), ('SALKEHATCHIE', None, '32.70610', '-80.81330'), ('SIDNEY', None, '32.99940', '-80.56860'), ('SMOAKS', 140, '33.08940', '-80.81420'), ('SMYLY', None, '33.02580', '-80.79580'), ('SPRINGTOWN', None, '33.09890', '-80.67640'), ('STOKES', None, '32.95920', '-80.72580'), ('THAYER', None, '32.87440', '-80.62890'), ('WALTERBORO', 5153, '32.90500', '-80.66690'), ('WHITE HALL', None, '32.72170', '-80.69060'), ('WIGGINS', None, '32.60440', '-80.54390'), ('WILLIAMS', 116, '33.03440', '-80.84280')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'MNC043': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLUE EARTH', 3621, '43.63910', '-94.09980'), ('BRICELYN', 379, '43.56070', '-93.81300'), ('DELAVAN', 223, '43.76730', '-94.01850'), ('EASTON', 214, '43.76590', '-93.90030'), ('ELMORE', 735, '43.50590', '-94.08850'), ('FROST', 251, '43.58370', '-93.92540'), ('KIESTER', 540, '43.53660', '-93.71140'), ('MINNESOTA LAKE', 681, '43.84050', '-93.82870'), ('WALTERS', 88, '43.60520', '-93.67350'), ('WELLS', 2494, '43.74370', '-93.72620'), ('WINNEBAGO', 1487, '43.76600', '-94.16830')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNC041': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALEXANDRIA', 8820, '45.87400', '-95.37510'), ('BRANDON', 450, '45.96540', '-95.59690'), ('CARLOS', 329, '45.97390', '-95.29280'), ('EVANSVILLE', 566, '46.00720', '-95.68370'), ('FORADA', 197, '45.78950', '-95.35540'), ('GARFIELD', 281, '45.94040', '-95.49440'), ('KENSINGTON', 286, '45.77790', '-95.69530'), ('MILLERVILLE', 115, '46.07110', '-95.55260'), ('MILTONA', 279, '46.04480', '-95.29200'), ('NELSON', 172, '45.88500', '-95.26570'), ('OSAKIS', 1567, '45.86540', '-95.15280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNC047': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBERT LEA', 18356, '43.65510', '-93.36660'), ('ALDEN', 652, '43.67010', '-93.57320'), ('CLARKS GROVE', 734, '43.76440', '-93.32780'), ('CONGER', 133, '43.61530', '-93.52860'), ('EMMONS', 432, '43.50740', '-93.48380'), ('FREEBORN', 305, '43.76640', '-93.56320'), ('GENEVA', 449, '43.82390', '-93.26830'), ('GLENVILLE', 720, '43.56900', '-93.27560'), ('HARTLAND', 288, '43.80430', '-93.48560'), ('HAYWARD', 249, '43.64940', '-93.24670'), ('HOLLANDALE', 292, '43.75980', '-93.20540'), ('MANCHESTER', 81, '43.72490', '-93.45060'), ('MYRTLE', 63, '43.56320', '-93.16290'), ('TWIN LAKES', 168, '43.56090', '-93.42330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNC045': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AMHERST', None, '43.61254', '-91.91678'), ('ARENDAHL', None, '43.83185', '-91.91495'), ('BRATSBERG', None, '43.73134', '-91.76692'), ('BRISTOL', None, '43.54858', '-92.18360'), ('CANTON', 343, '43.53010', '-91.92940'), ('CARINONA', None, '43.66554', '-92.16715'), ('CHATFIELD', 2394, '43.84390', '-92.18590'), ('CHERRY GROVE', None, '43.57965', '-92.28412'), ('CHOICE', None, '43.66372', '-91.79982'), ('ETNA', None, '43.59792', '-92.34991'), ('FILLMORE', None, '43.74778', '-92.26767'), ('FOUNTAIN', 343, '43.74070', '-92.13400'), ('GRANGER', None, '43.50106', '-92.09954'), ('GREENLEAFTON', None, '43.58148', '-92.21833'), ('HAMILTON', None, '43.76423', '-92.45043'), ('HARMONY', 1080, '43.55530', '-92.00940'), ('HENRYTOWN', None, '43.59792', '-91.93506'), ('HIGHLAND', None, '43.68382', '-91.88388'), ('HUTTON', None, '43.61437', '-92.05202'), ('ISINOURS', None, '43.71489', '-92.05019'), ('LANESBORO', 788, '43.71950', '-91.97350'), ('LENORA', None, '43.56503', '-91.90033'), ('MABEL', 766, '43.52030', '-91.76830'), ('NEWBURG', None, '43.56503', '-91.83271'), ('OSTRANDER', 212, '43.61400', '-92.42560'), ('PETERSON', 269, '43.78600', '-91.83320'), ('PILOT MOUND', None, '43.81540', '-92.03557'), ('PRESTON', 1426, '43.67160', '-92.08250'), ('RUSHFORD', 1696, '43.81230', '-91.75240'), ('RUSHFORD VILLAGE', 714, '43.80440', '-91.78730'), ('SPRING VALLEY', 2518, '43.68600', '-92.38990'), ('TAWNEY', None, '43.61620', '-91.79982'), ('WASHINGTON', None, '43.76423', '-92.34991'), ('WHALAN', 64, '43.73280', '-91.92770'), ('WYKOFF', 460, '43.70820', '-92.26740'), ('YORK', None, '43.53213', '-92.26584')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'WVC089': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BALLENGEE', None, '37.61670', '-80.75000'), ('BUCK', None, '37.60000', '-80.83330'), ('ELLISON', None, '37.58330', '-81.00000'), ('ELTON', None, '37.81670', '-80.81670'), ('GLENRAY', None, '37.71670', '-80.66670'), ('HINTON', 2880, '37.66670', '-80.90000'), ('HIX', None, '37.71670', '-80.81670'), ('INDIAN MILLS', None, '37.53330', '-80.81670'), ('JUMPING BRANCH', None, '37.65000', '-80.98330'), ('LAWN', None, '37.83330', '-80.75000'), ('LICK CREEK', None, '37.48330', '-80.91670'), ('PIPESTEM', None, '37.53330', '-80.96670'), ('SANDSTONE', None, '37.76670', '-80.88330'), ('TALCOTT', None, '37.65000', '-80.75000')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'OHC047': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BLOOMINGBURG', 874, '39.60790', '-83.39550'), ('JEFFERSONVILLE', 1288, '39.65200', '-83.55690'), ('MILLEDGEVILLE', 122, '39.59360', '-83.58780'), ('OCTA', 83, '39.61530', '-83.60860'), ('WASHINGTON COURT HOUSE', None, '39.53770', '-83.43110')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHC045': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMANDA', 707, '39.65040', '-82.74330'), ('BALTIMORE', 2881, '39.84630', '-82.60760'), ('BREMEN', 1265, '39.70590', '-82.43140'), ('CARROLL', 488, '39.79990', '-82.70340'), ('FAIRFIELD BEACH', 1163, '39.91780', '-82.48110'), ('LANCASTER', 35335, '39.72230', '-82.59920'), ('LITHOPOLIS', 600, '39.80500', '-82.81120'), ('MILLERSPORT', 963, '39.89630', '-82.54210'), ('PICKERINGTON', 9792, '39.89050', '-82.76840'), ('PLEASANTVILLE', 877, '39.80900', '-82.52280'), ('RUSHVILLE', 268, '39.76270', '-82.43130'), ('STOUTSVILLE', 581, '39.60660', '-82.82460'), ('SUGAR GROVE', 448, '39.62670', '-82.54710'), ('TARLTON', 298, '39.55430', '-82.77740'), ('THURSTON', 555, '39.84130', '-82.54500'), ('WEST RUSHVILLE', 132, '39.76270', '-82.44860')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHC043': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAY VIEW', 692, '41.46890', '-82.82360'), ('BERLIN HEIGHTS', 685, '41.32090', '-82.49270'), ('CASTALIA', 935, '41.40130', '-82.80930'), ('FAIRVIEW LANES', 1015, '41.42710', '-82.65670'), ('HURON', 7958, '41.39650', '-82.56210'), ('MILAN', 1445, '41.28880', '-82.60110'), ('SANDUSKY', 27844, '41.45590', '-82.71440'), ('SANDUSKY SOUTH', 6599, '41.41600', '-82.68700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHC041': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ASHLEY', 1216, '40.40910', '-82.95450'), ('DELAWARE', 25243, '40.29870', '-83.08130'), ('GALENA', 305, '40.22050', '-82.88210'), ('OSTRANDER', 405, '40.26510', '-83.21210'), ('POWELL', 6247, '40.16050', '-83.06560'), ('SUNBURY', 2630, '40.24510', '-82.86480')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'COC009': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BARTLETT', None, '37.43000', '-102.13000'), ('CAMPO', 150, '37.10470', '-102.57790'), ('PRITCHETT', 137, '37.37020', '-102.85860'), ('SPRINGFIELD', 1562, '37.40660', '-102.61680'), ('STONINGTON', None, '37.30000', '-102.18000'), ('TWO BUTTES', 67, '37.56050', '-102.39590'), ('VILAS', 110, '37.37410', '-102.44650'), ('WALSH', 723, '37.38550', '-102.27960')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COC005': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARAPAHOE PARK', None, '39.63600', '-104.68800'), ('AURORA', 276393, '39.69900', '-104.81300'), ('BROADWAY ESTATES', None, '39.58000', '-104.95000'), ('BUCKLEY ANGB', None, '39.70000', '-104.75000'), ('BYERS', 1233, '39.71030', '-104.22470'), ('CASTLEWOOD', 25567, '39.58470', '-104.90050'), ('CHERRY CREEK RESERVOIR', None, '39.63200', '-104.87000'), ('CHERRY HILLS VILLAGE', 5958, '39.63750', '-104.94690'), ('CHERRY KNOLLS', None, '39.60000', '-104.97000'), ('COLUMBINE VALLEY', 1132, '39.59810', '-105.03360'), ('COUNTRY GARDENS', None, '39.69200', '-104.31900'), ('DEER TRAIL', 598, '39.61690', '-104.04180'), ('ENGLEWOOD', 31727, '39.64740', '-104.99380'), ('GREENWOOD VILLAGE', 11035, '39.61550', '-104.91500'), ('JOLLY RANCH', None, '39.64100', '-103.77500'), ('LITTLETON', 40340, '39.59460', '-105.01440'), ('OEA BUILDING', None, '39.63800', '-104.58300'), ('SHERIDAN', 5600, '39.64890', '-105.01710'), ('SMOKY HILL', None, '39.60700', '-104.77000'), ('SOUTHGLENN', 43520, '39.58740', '-104.95220'), ('SOUTHWOOD', None, '39.62000', '-104.98000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC007': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARBOLES', 232, '37.02000', '-107.40000'), ('CHIMNEY ROCK', None, '37.20000', '-107.18000'), ('CHROMO', None, '37.03000', '-106.83000'), ('GATO', None, '37.03000', '-107.18000'), ('JUANITA', None, '37.03000', '-107.13000'), ('LONETREE', None, '37.17000', '-107.17000'), ('PAGOSA JUNCTION', None, '37.03000', '-107.18000'), ('PAGOSA SPRINGS', 1591, '37.27010', '-107.01820')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GJT'}, -'COC001': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ADAMS CITY', None, '39.81500', '-104.90500'), ('BARR LAKE', None, '39.95000', '-104.78000'), ('BENNETT', 2021, '39.75510', '-104.42340'), ('BRIGHTON', 20905, '39.95800', '-104.79480'), ('COMMERCE CITY', 20991, '39.81400', '-104.92400'), ('CORONADO', None, '39.87000', '-105.05000'), ('DERBY', 6423, '39.83940', '-104.91810'), ('FEDERAL HEIGHTS', 12065, '39.86510', '-105.01590'), ('HENDERSON', None, '39.92000', '-104.87000'), ('LEADER', None, '39.90000', '-104.05800'), ('MANILA VILLAGE', None, '39.75700', '-104.51700'), ('NORTHGLENN', 31575, '39.90570', '-104.97790'), ('SHAMROCK', None, '39.88800', '-103.81300'), ('SHAW HGTS', None, '39.87000', '-105.03000'), ('SHERRELWOOD', 17657, '39.83780', '-105.00090'), ('STRASBURG', 1402, '39.73500', '-104.30000'), ('THORNTON', 82384, '39.89200', '-104.95520'), ('WATKINS', None, '39.75000', '-104.60000'), ('WELBY', 12973, '39.83830', '-104.96470'), ('WESTERN HILLS', None, '39.83000', '-105.00000'), ('WESTMINSTER', 100940, '39.88150', '-105.05090'), ('WESTMINSTER EAST', None, '39.82270', '-105.00370')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC003': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALAMOSA', 7960, '37.46880', '-105.87310'), ('HOOPER', 123, '37.73000', '-105.87760'), ('MOSCA', None, '37.65000', '-105.88000'), ('SAN LUIS LAKE', None, '37.67000', '-105.72000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'FLC023': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('COLUMBIA', None, '30.07340', '-82.69620'), ('FIVE POINTS', 1362, '30.22270', '-82.64400'), ('FORT WHITE', 409, '29.92150', '-82.71450'), ('LAKE CITY', 9980, '30.19280', '-82.64230'), ('LULU', None, '30.10700', '-82.49150'), ('OLENO STATE PARK', None, '29.92490', '-82.56420'), ('SUWANNEE VALLEY', None, '30.29860', '-82.70850'), ('WATERTOWN', 2837, '30.18780', '-82.59910'), ('WINFIELD', None, '30.26260', '-82.68630')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'MTC039': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BEARMOUTH', None, '46.71028', '-113.33056'), ('DRUMMOND', 318, '46.66750', '-113.14639'), ('GARNET', None, '46.82528', '-113.33806'), ('HALL', None, '46.58528', '-113.19583'), ('MAXVILLE', None, '46.46472', '-113.23333'), ('NEW CHICAGO', None, '46.62694', '-113.14139'), ('NIMROD', None, '46.70028', '-113.47639'), ('PHILIPSBURG', 914, '46.33222', '-113.29333'), ('PORTERS CORNER', None, '46.25194', '-113.33111'), ('PRINCETON', None, '46.41694', '-113.16472'), ('QUIGLEY', None, '46.61222', '-113.64750')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'PAC065': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BIG RUN', 686, '40.96990', '-78.87810'), ('BROCKWAY', 2182, '41.24710', '-78.79330'), ('BROOKVILLE', 4230, '41.16160', '-79.08280'), ('CORSICA', 354, '41.18170', '-79.20290'), ('FALLS CREEK', 983, '41.14210', '-78.80720'), ('PUNXSUTAWNEY', 6271, '40.94410', '-78.97760'), ('REYNOLDSVILLE', 2710, '41.09430', '-78.88800'), ('SIGEL', None, '41.28000', '-79.12000'), ('SUMMERVILLE', 525, '41.11640', '-79.18860'), ('SYKESVILLE', 1246, '41.04930', '-78.81890'), ('TIMBLIN', 151, '40.96610', '-79.19930'), ('WORTHVILLE', 85, '41.02440', '-79.14110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'MTC035': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BABB', None, '48.86030', '-113.43580'), ('BROWNING', 1065, '48.55670', '-113.01370'), ('CUT BANK', 3105, '48.63480', '-112.33020'), ('EAST GLACIER PARK', None, '48.44710', '-113.22230'), ('KIOWA', None, '48.52000', '-113.31000'), ('SANTA RITA', None, '48.77060', '-112.31920'), ('ST MARY', None, '48.74390', '-113.42860')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTC037': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('LAVINA', 209, '46.29640', '-108.93910'), ('RYEGATE', 268, '46.29880', '-109.25340')], 'partOfState': 'CENTRAL', 'wfo': 'BYZ'}, -'MTC031': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('AMSTERDAM', None, '45.75810', '-111.31920'), ('BELGRADE', 5728, '45.77790', '-111.17740'), ('BIG SKY', 1221, '45.26390', '-111.33060'), ('BOZEMAN', 27509, '45.67690', '-111.04250'), ('BOZEMAN HOT SPRINGS', None, '45.65000', '-111.18330'), ('CHURCHILL', None, '45.75080', '-111.30360'), ('GALLATIN GATEWAY', None, '45.59170', '-111.19690'), ('LOGAN', None, '45.88440', '-111.42670'), ('MANHATTAN', 1396, '45.85740', '-111.33020'), ('MAUDLOW', None, '46.10780', '-111.17220'), ('THREE FORKS', 1728, '45.88940', '-111.55370'), ('TRIDENT', None, '45.94750', '-111.47580'), ('WEST YELLOWSTONE', 1177, '44.66460', '-111.10670'), ('WILLOW CREEK', 209, '45.82530', '-111.64390')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'MTC033': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BRUSETT', None, '47.42520', '-107.26610'), ('COHAGEN', None, '47.05440', '-106.61690'), ('DEVILS CREEK RECREATION A', None, '47.61830', '-107.65000'), ('EDWARDS', None, '47.14020', '-107.33300'), ('HAXBY', None, '47.77000', '-106.42660'), ('HELL CREEK RECREATION ARE', None, '47.61580', '-106.88720'), ('HILLSIDE', None, '46.91110', '-106.39940'), ('JORDAN', 364, '47.32080', '-106.90940'), ('MOSBY', None, '46.99220', '-107.88300'), ('SAND SPRINGS', None, '47.10080', '-107.48500'), ('STEVE FORKS', None, '47.27080', '-107.33330'), ('VAN NORMAN', None, '47.35330', '-106.38660')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'OHC133': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AURORA', 13556, '41.31220', '-81.34460'), ('BRADY LAKE', 513, '41.16270', '-81.31390'), ('BRIMFIELD', 3248, '41.09020', '-81.35010'), ('GARRETTSVILLE', 2262, '41.28390', '-81.09540'), ('HIRAM', 1242, '41.31020', '-81.14450'), ('KENT', 27906, '41.14710', '-81.36250'), ('LIMAVILLE', 193, '40.98410', '-81.14810'), ('MANTUA', 1046, '41.28140', '-81.22270'), ('RAVENNA', 11771, '41.15980', '-81.24260'), ('STREETSBORO', 12311, '41.23880', '-81.34580'), ('SUGAR BUSH KNOLLS', 227, '41.20490', '-81.34670'), ('WINDHAM', 2806, '41.23620', '-81.03640')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHC131': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEAVER', 464, '39.03240', '-82.82520'), ('CYNTHIANA', None, '39.17000', '-83.34000'), ('KINCAID SPRINGS', None, '39.10000', '-83.27000'), ('PIKE LAKE', None, '39.14000', '-83.17000'), ('PIKETON', 1907, '39.06820', '-82.99990'), ('WAVERLY', None, '39.12530', '-82.98250')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHC137': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELMORE', 171, '41.15440', '-83.94140'), ('CLOVERDALE', 201, '41.01960', '-84.30420'), ('COLUMBUS GROVE', 2200, '40.91940', '-84.05820'), ('CONTINENTAL', 1188, '41.09890', '-84.26680'), ('DUPONT', 268, '41.05490', '-84.30210'), ('FORT JENNINGS', 432, '40.90610', '-84.29930'), ('GILBOA', 170, '41.01890', '-83.92140'), ('GLANDORF', 919, '41.03030', '-84.07920'), ('KALIDA', 1031, '40.98590', '-84.19550'), ('LEIPSIC', 2236, '41.09930', '-83.98450'), ('MILLER CITY', 136, '41.10190', '-84.13200'), ('OTTAWA', 4367, '41.02080', '-84.04140'), ('OTTOVILLE', 873, '40.93160', '-84.33880'), ('PANDORA', 1188, '40.94770', '-83.96120'), ('WEST LEIPSIC', 271, '41.10540', '-84.00180')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'OHC135': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('WEST COLLEGE CORNER', 634, '39.56960', '-84.81930'), ('CAMDEN', 2302, '39.63710', '-84.64650'), ('COLLEGE CORNER', 424, '39.56780', '-84.81260'), ('EATON', 8133, '39.74850', '-84.63390'), ('ELDORADO', 543, '39.90380', '-84.67580'), ('GRATIS', 934, '39.64840', '-84.52880'), ('LEWISBURG', 1798, '39.84900', '-84.54060'), ('NEW PARIS', 1623, '39.85700', '-84.79350'), ('VERONA', 430, '39.90290', '-84.48650'), ('WEST ALEXANDRIA', 1395, '39.74290', '-84.53360'), ('WEST ELKTON', 194, '39.58880', '-84.55430'), ('WEST MANCHESTER', 433, '39.90230', '-84.62620')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC139': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELLVILLE', 1773, '40.62080', '-82.51100'), ('BUTLER', 921, '40.58640', '-82.42010'), ('LEXINGTON', 4165, '40.67820', '-82.58690'), ('LUCAS', 620, '40.70290', '-82.42120'), ('MANSFIELD', 49346, '40.76280', '-82.52690'), ('ONTARIO', 5303, '40.76600', '-82.60760'), ('SHELBY', 9821, '40.88210', '-82.66150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'MIC071': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALPHA', 198, '46.04390', '-88.37830'), ('AMASA', None, '46.23000', '-88.45000'), ('BEECHWOOD', 2963, '46.17000', '-88.77000'), ('BEWABIC STATE PARK', None, '46.09300', '-88.42700'), ('BONE LAKE', None, '46.37500', '-88.30700'), ('CASPIAN', 997, '46.06520', '-88.62570'), ('CRYSTAL FALLS', 1791, '46.09730', '-88.32770'), ('GAASTRA', 339, '46.05880', '-88.60540'), ('GIBBS CITY', None, '46.22600', '-88.70100'), ('GOLDEN LAKE', None, '46.17600', '-88.88700'), ('HAGERMAN LAKE', None, '46.06000', '-88.78000'), ('IRON RIVER', 1929, '46.09880', '-88.63820'), ('MINERAL HILLS', 214, '46.11230', '-88.64470'), ('PEAVY FALLS DAM', None, '45.99100', '-88.20800'), ('PERCH LAKE', None, '46.36200', '-88.66200'), ('SMOKY LAKE', None, '46.09600', '-88.94200'), ('STAGER', None, '46.00000', '-88.32000'), ('STAMBAUGH', 1243, '46.07920', '-88.63340'), ('TRIANGLE RANCH', None, '46.31400', '-88.41900'), ('WAY DAM', None, '46.16100', '-88.23900')], 'partOfState': '', 'wfo': 'MQT'}, -'WVC009': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEECH BOTTOM', 606, '40.22630', '-80.65200'), ('BETHANY', 985, '40.20550', '-80.56360'), ('FOLLANSBEE', 3115, '40.33720', '-80.59720'), ('HOOVERSON HEIGHTS', 2909, '40.31840', '-80.57980'), ('WEIRTON', 20411, '40.40090', '-80.56410'), ('WELLSBURG', 2891, '40.28170', '-80.60980')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVC001': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('AUDRA STATE PARK', None, '39.04040', '-80.06570'), ('BELINGTON', 1788, '39.02230', '-79.93870'), ('JUNIOR', 450, '38.97730', '-79.95050'), ('PHILIPPI', 2870, '39.15220', '-80.04420')], 'partOfState': '', 'wfo': 'RLX'}, -'MIC073': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BEAL CITY', 345, '43.66990', '-84.90980'), ('BLANCHARD', None, '43.51970', '-85.08000'), ('BRINTON', None, '43.77030', '-85.01030'), ('DELWIN', None, '43.69720', '-84.67800'), ('LOOMIS', None, '43.79370', '-84.66620'), ('MOUNT PLEASANT', 25946, '43.59660', '-84.77830'), ('ROSEBUSH', 379, '43.69960', '-84.76580'), ('SHEPHERD', 1536, '43.52460', '-84.69380'), ('WEIDMAN', 879, '43.69400', '-84.97290'), ('WINN', None, '43.52330', '-84.90170')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'WVC005': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('DANVILLE', 550, '38.08130', '-81.83480'), ('MADISON', 2677, '38.05930', '-81.80080'), ('SYLVESTER', 195, '38.00810', '-81.56100'), ('WHITESVILLE', 520, '37.97950', '-81.53600')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC007': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BURNSVILLE', 481, '38.85560', '-80.65600'), ('FLATWOODS', 348, '38.72130', '-80.65310'), ('GASSAWAY', 901, '38.67060', '-80.77060'), ('SUTTON', 1011, '38.66670', '-80.71070')], 'partOfState': '', 'wfo': 'RLX'}, -'TXC359': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADRIAN', 159, '35.27590', '-102.66390'), ('BOYS RANCH', None, '35.51110', '-102.25080'), ('VEGA', 936, '35.24660', '-102.42590'), ('WILDORADO', None, '35.21640', '-102.24440')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC353': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLACKWELL', 360, '32.08670', '-100.31720'), ('CHAMPION', None, '32.35860', '-100.62000'), ('HYLTON', None, '32.12810', '-100.20250'), ('MARYNEAL', None, '32.23530', '-100.45000'), ('NOLAN', None, '32.27360', '-100.24220'), ('ROSCOE', 1378, '32.44580', '-100.53830'), ('SWEETWATER', 11415, '32.46900', '-100.40460'), ('WASTELLA', None, '32.51030', '-100.64920')], 'partOfState': 'NORTHWEST', 'wfo': 'SJT'}, -'TXC351': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLEAKWOOD', None, '30.69220', '-93.82500'), ('BON WEIR', None, '30.73970', '-93.66330'), ('BURKEVILLE', None, '30.99970', '-93.66780'), ('CALL', None, '30.61250', '-93.87390'), ('DEWEYVILLE', 1190, '30.30690', '-93.75790'), ('FARRSVILLE', None, '30.98390', '-93.80750'), ('JAMESTOWN', None, '30.92280', '-93.82640'), ('NEWTON', 2459, '30.85050', '-93.75280'), ('TOLEDO BEND DAM', None, '31.17420', '-93.56670'), ('WIERGATE', None, '30.99940', '-93.70750')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXC357': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FARNSWORTH', None, '36.32110', '-100.96580'), ('PERRYTON', 7774, '36.39170', '-100.80300'), ('WAKA', None, '36.28170', '-101.04720'), ('WOLF CREEK PARK', None, '36.21470', '-100.64580')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC355': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AGUA DULCE', 737, '27.78280', '-97.90980'), ('BISHOP', 3305, '27.58480', '-97.79760'), ('CC NAS', None, '27.69000', '-97.28500'), ('CHAPMAN RANCH', None, '27.58000', '-97.45270'), ('CORPUS CHRISTI', 277454, '27.70570', '-97.29280'), ('DRISCOLL', 825, '27.67220', '-97.75080'), ('FLOUR BLUFF', None, '27.65380', '-97.30270'), ('NORTH SAN PEDRO', 920, '27.80240', '-97.68270'), ('PETRONILA', 83, '27.66940', '-97.63360'), ('ROBSTOWN', 12727, '27.79920', '-97.66070'), ('TULOSO', None, '27.80880', '-97.54880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'PAC007': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALIQUIPPA', 11734, '40.61740', '-80.25500'), ('AMBRIDGE', 7769, '40.59310', '-80.22540'), ('BADEN', 4377, '40.63860', '-80.22190'), ('BEAVER', 4775, '40.69290', '-80.30750'), ('BEAVER FALLS', 9920, '40.76090', '-80.32240'), ('BIG BEAVER', 2186, '40.81830', '-80.36360'), ('BRIDGEWATER', 739, '40.70900', '-80.30050'), ('CONWAY', 2290, '40.66450', '-80.24090'), ('DARLINGTON', 299, '40.81000', '-80.42390'), ('EAST ROCHESTER', 623, '40.69810', '-80.26820'), ('EASTVALE', 293, '40.76770', '-80.31550'), ('ECONOMY', 9363, '40.63840', '-80.18510'), ('FALLSTON', 307, '40.72150', '-80.31450'), ('FRANKFORT SPRINGS', 130, '40.48130', '-80.44560'), ('FREEDOM', 1763, '40.68460', '-80.25340'), ('GEORGETOWN', 182, '40.64170', '-80.49980'), ('GLASGOW', 63, '40.64460', '-80.50860'), ('HARMONY TOWNSHIP', 3373, '40.60710', '-80.22050'), ('HARSHAVILLE', None, '40.55000', '-80.42000'), ('HOMEWOOD', 147, '40.81340', '-80.32920'), ('HOOKSTOWN', 152, '40.59880', '-80.47440'), ('INDUSTRY', 1921, '40.65600', '-80.40980'), ('KOPPEL', 856, '40.83480', '-80.32250'), ('MIDLAND', 3137, '40.63990', '-80.45790'), ('MONACA', 6286, '40.68330', '-80.27320'), ('NEW BRIGHTON', 6641, '40.73560', '-80.30890'), ('NEW GALILEE', 424, '40.83310', '-80.40090'), ('OHIOVILLE', 3759, '40.68290', '-80.47730'), ('PATTERSON HEIGHTS', 670, '40.73900', '-80.32700'), ('PATTERSON TOWNSHIP', 3197, '40.74240', '-80.33240'), ('ROCHESTER', 4014, '40.70200', '-80.28330'), ('SHIPPINGPORT', 237, '40.62540', '-80.42420'), ('SOUTH HEIGHTS', 542, '40.57460', '-80.23630'), ('WEST MAYFIELD', 1187, '40.77900', '-80.33810')], 'partOfState': '', 'wfo': 'PBZ'}, -'MIC015': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ASSYRIA', None, '42.46450', '-85.13130'), ('BANFIELD', None, '42.46350', '-85.28850'), ('DELTON', None, '42.49970', '-85.40800'), ('DOWLING', None, '42.52250', '-85.25300'), ('FREEPORT', 444, '42.76350', '-85.31450'), ('HASTINGS', 7095, '42.65020', '-85.28850'), ('HICKORY CORNERS', None, '42.44130', '-85.37550'), ('IRVING', None, '42.68830', '-85.41800'), ('LACEY', None, '42.49300', '-85.19120'), ('MIDDLEVILLE', 2721, '42.71340', '-85.46550'), ('NASHVILLE', 1684, '42.60290', '-85.09390'), ('ORANGEVILLE', None, '42.55280', '-85.51920'), ('WOODLAND', 495, '42.72650', '-85.13490')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'PAC003': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ASPINWALL', 2960, '40.49230', '-79.90370'), ('AVALON', 5294, '40.50100', '-80.06870'), ('BALDWIN', 19999, '40.36320', '-79.96610'), ('BELL ACRES', 1382, '40.59210', '-80.17630'), ('BELLEVUE', 8770, '40.49390', '-80.05590'), ('BEN AVON', 1917, '40.50650', '-80.08240'), ('BEN AVON HEIGHTS', 392, '40.51150', '-80.07290'), ('BETHEL PARK', 33556, '40.32360', '-80.03610'), ('BLAWNOX', 1550, '40.49110', '-79.86220'), ('BRACKENRIDGE', 3543, '40.60740', '-79.74210'), ('BRADDOCK', 2912, '40.40200', '-79.86930'), ('BRADDOCK HILLS', 1998, '40.41680', '-79.86340'), ('BRADFORDWOODS', 1149, '40.63580', '-80.08030'), ('BRENTWOOD', 10466, '40.37330', '-79.97600'), ('BRIDGEVILLE', 5341, '40.35660', '-80.10610'), ('CARNEGIE', 8389, '40.40760', '-80.08660'), ('CARNOT-MOON', 10637, '40.51860', '-80.21420'), ('CASTLE SHANNON', 8556, '40.36630', '-80.02020'), ('CHALFANT', 870, '40.40990', '-79.83850'), ('CHESWICK', 1899, '40.54290', '-79.80130'), ('CHURCHILL', 3566, '40.43830', '-79.84070'), ('CLAIRTON', 8491, '40.29650', '-79.88550'), ('CORAOPOLIS', 6131, '40.51410', '-80.16210'), ('CRAFTON', 6706, '40.43330', '-80.07090'), ('CURTISVILLE', 1173, '40.64870', '-79.84960'), ('DORMONT', 9305, '40.39300', '-80.03750'), ('DRAVOSBURG', 2015, '40.35210', '-79.88870'), ('DUQUESNE', 7332, '40.37320', '-79.85080'), ('EAST MCKEESPORT', 2343, '40.38430', '-79.80680'), ('EAST PITTSBURGH', 2017, '40.39720', '-79.83690'), ('EDGEWOOD', 2619, '40.43140', '-79.88370'), ('EDGEWORTH', 1730, '40.55430', '-80.19220'), ('ELIZABETH', 1609, '40.27150', '-79.88650'), ('EMSWORTH', 2598, '40.51060', '-80.09640'), ('ETNA', 3924, '40.49860', '-79.94730'), ('FOREST HILLS', 6831, '40.42480', '-79.85250'), ('FOX CHAPEL', 5436, '40.52540', '-79.88960'), ('FRANKLIN PARK', 11364, '40.59170', '-80.09870'), ('GLASSPORT', 4993, '40.32540', '-79.88660'), ('GLENFIELD', 236, '40.52170', '-80.13210'), ('GREEN TREE', 4719, '40.41850', '-80.05530'), ('HAMPTON TOWNSHIP', 17526, '40.58580', '-79.95500'), ('HARRISON TOWNSHIP', 10934, '40.63660', '-79.71670'), ('HAYSVILLE', 78, '40.52610', '-80.15440'), ('HEIDELBERG', 1225, '40.39140', '-80.09200'), ('HOMESTEAD', 3569, '40.40680', '-79.90980'), ('IMPERIAL-ENLOW', 3514, '40.45340', '-80.24850'), ('INGRAM', 3712, '40.44570', '-80.06840'), ('JEFFERSON', 631, '40.29370', '-79.93220'), ('KENNEDY TOWNSHIP', 7504, '40.47620', '-80.10190'), ('LEETSDALE', 1232, '40.56830', '-80.21480'), ('LIBERTY', 230, '40.32380', '-79.85800'), ('LINCOLN', 1218, '40.29320', '-79.85250'), ('MC KEESPORT', None, '40.33000', '-79.83000'), ('MCCANDLESS TOWNSHIP', 29022, '40.58350', '-80.03000'), ('MCKEES ROCKS', 6622, '40.46930', '-80.06210'), ('MCKEESPORT', 24040, '40.34150', '-79.84430'), ('MILLVALE', 4028, '40.48210', '-79.97440'), ('MOUNT LEBANON', 33017, '40.37400', '-80.04890'), ('MOUNT OLIVER', 3970, '40.41090', '-79.98640'), ('MUNHALL', 12264, '40.39330', '-79.90110'), ('MUNICIPALITY OF MONROEVIL', None, '40.42600', '-79.76090'), ('NORTH BRADDOCK', 6410, '40.40100', '-79.85210'), ('NORTH VERSAILLES', 11125, '40.37980', '-79.80970'), ("O'HARA TOWNSHIP", 8856, '40.49930', '-79.90170'), ('OAKDALE', 1551, '40.39970', '-80.18770'), ('OAKMONT', 6911, '40.51940', '-79.83650'), ('OSBORNE', 566, '40.53080', '-80.16950'), ('PENN HILLS', 46809, '40.47590', '-79.82700'), ('PENNSBURY VILLAGE', 738, '40.42770', '-80.10090'), ('PITCAIRN', 3689, '40.40760', '-79.77600'), ('PITTSBURGH', 334563, '40.43920', '-79.97670'), ('PLEASANT HILLS', 8397, '40.32870', '-79.96110'), ('PLUM', 26940, '40.50240', '-79.75400'), ('PORT VUE', 4228, '40.33690', '-79.87050'), ('RANKIN', 2315, '40.41140', '-79.88210'), ('RESERVE TOWNSHIP', 3856, '40.48270', '-79.98710'), ('ROBINSON TOWNSHIP', 12289, '40.46210', '-80.12680'), ('ROSS TOWNSHIP', 32551, '40.52660', '-80.02490'), ('ROSSLYN FARMS', 464, '40.42160', '-80.08980'), ('RUSSELLTON', 1530, '40.61070', '-79.83770'), ('SCOTT TOWNSHIP', 17288, '40.38620', '-80.07720'), ('SEWICKLEY', 3902, '40.53970', '-80.18050'), ('SEWICKLEY HEIGHTS', 981, '40.56100', '-80.15580'), ('SEWICKLEY HILLS', 652, '40.56030', '-80.12020'), ('SHALER TOWNSHIP', 29757, '40.52090', '-79.96400'), ('SHARPSBURG', 3594, '40.49320', '-79.92660'), ('SOUTH PARK TOWNSHIP', 14340, '40.29700', '-79.99390'), ('SPRINGDALE', 3828, '40.53960', '-79.78200'), ('STOWE TOWNSHIP', 6706, '40.48310', '-80.07330'), ('STURGEON-NOBLESTOWN', 1764, '40.38880', '-80.20310'), ('SWISSVALE', 9653, '40.42050', '-79.88650'), ('TARENTUM', 4993, '40.60520', '-79.76020'), ('THORNBURG', 468, '40.43350', '-80.08340'), ('TURTLE CREEK', 6076, '40.40810', '-79.82090'), ('UPPER ST. CLAIR', 20053, '40.33570', '-80.08370'), ('VERONA', 3124, '40.50500', '-79.84110'), ('VERSAILLES', 1724, '40.31720', '-79.83050'), ('WALL', 727, '40.39320', '-79.78510'), ('WEST ELIZABETH', 565, '40.27310', '-79.89390'), ('WEST HOMESTEAD', 2197, '40.39900', '-79.92040'), ('WEST MIFFLIN', 22464, '40.35710', '-79.90780'), ('WEST VIEW', 7277, '40.51830', '-80.03390'), ('WEXFORD', None, '40.63000', '-80.05000'), ('WHITAKER', 1338, '40.39970', '-79.88740'), ('WHITE OAK', 8437, '40.33920', '-79.80430'), ('WHITEHALL', 14444, '40.35910', '-79.99180'), ('WILKINS TOWNSHIP', 6917, '40.42630', '-79.82430'), ('WILKINSBURG', 19196, '40.44480', '-79.87330'), ('WILMERDING', 2145, '40.39360', '-79.81090')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'PAC001': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARENDTSVILLE', 848, '39.92500', '-77.30120'), ('BENDERSVILLE', 576, '39.98240', '-77.24990'), ('BIGLERVILLE', 1101, '39.93010', '-77.24720'), ('BONNEAUVILLE', 1378, '39.81140', '-77.13680'), ('CARROLL VALLEY', 3291, '39.75060', '-77.38110'), ('CASHTOWN', None, '39.88000', '-77.34000'), ('EAST BERLIN', 1365, '39.93680', '-76.98040'), ('FAIRFIELD', 486, '39.78770', '-77.36920'), ('GERMANTOWN', None, '39.77000', '-77.16000'), ('GETTYSBURG', 7490, '39.83010', '-77.23450'), ('HEIDLERSBURG', None, '39.93000', '-77.09000'), ('LAKE MEADE', 1832, '39.97000', '-77.02000'), ('LITTLESTOWN', 3947, '39.74410', '-77.08870'), ('MCSHERRYSTOWN', 2691, '39.80410', '-77.01960'), ('NEW OXFORD', 1696, '39.86220', '-77.05570'), ('SEVEN STARS', None, '39.85000', '-77.27000'), ('YORK SPRINGS', 574, '40.00890', '-77.11660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'MNC133': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEAVER CREEK', 250, '43.61260', '-96.36180'), ('HARDWICK', 222, '43.77520', '-96.19670'), ('HILLS', 565, '43.52650', '-96.36080'), ('KENNETH', 61, '43.75330', '-96.07180'), ('LUVERNE', 4617, '43.65480', '-96.20990'), ('MAGNOLIA', 221, '43.64490', '-96.07450'), ('STEEN', 182, '43.51320', '-96.26220')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'ALC085': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BENTON', 47, '32.30740', '-86.81760'), ('FORT DEPOSIT', 1270, '31.98590', '-86.57620'), ('HAYNEVILLE', 1177, '32.18250', '-86.57880'), ('LOWNDESBORO', 140, '32.27670', '-86.61030'), ('MOSSES', 1101, '32.17620', '-86.67460'), ('WHITE HALL', 1014, '32.30080', '-86.71450')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BMX'}, -'ALC087': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('FRANKLIN', 149, '32.45520', '-85.80280'), ('NOTASULGA', 916, '32.55760', '-85.67240'), ('SHORTER', 355, '32.40080', '-85.93660'), ('TUSKEGEE', 11846, '32.43770', '-85.71110')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'ALC081': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AUBURN', 42987, '32.59290', '-85.48030'), ('LOACHAPOKA', 165, '32.60470', '-85.59690'), ('OPELIKA', 23498, '32.65420', '-85.37880'), ('SMITHS', 21756, '32.53980', '-85.08720')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALC083': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ARDMORE', 1034, '34.98340', '-86.83660'), ('ATHENS', 18967, '34.78600', '-86.95990'), ('ELKMONT', 470, '34.92840', '-86.97590'), ('LESTER', 107, '34.98420', '-87.14790'), ('MOORESVILLE', 59, '34.62680', '-86.88000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'ALC089': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('GURLEY', 876, '34.70310', '-86.37310'), ('HARVEST', 3054, '34.85560', '-86.74990'), ('HAZEL GREEN', 3805, '34.92360', '-86.56720'), ('HUNTSVILLE', 158216, '34.70700', '-86.62770'), ('MADISON', 29329, '34.70290', '-86.74970'), ('MERIDIANVILLE', 4117, '34.87380', '-86.57090'), ('MOORES MILL', 5178, '34.85190', '-86.52580'), ('NEW HOPE', 2539, '34.53910', '-86.41590'), ('NEW MARKET', 1864, '34.90950', '-86.42510'), ('OWENS CROSSROADS', None, '34.58200', '-86.46020'), ('REDSTONE ARSENAL', 2365, '34.68410', '-86.65400'), ('TRIANA', 458, '34.59460', '-86.74430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'TNC099': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ETHRIDGE', 536, '35.32120', '-87.30230'), ('IRON CITY', 368, '35.02560', '-87.58370'), ('LAWRENCEBURG', 10796, '35.24570', '-87.33800'), ('LORETTO', 1665, '35.08030', '-87.43610'), ('ST. JOSEPH', 829, '35.02950', '-87.50610')], 'partOfState': '', 'wfo': 'OHX'}, -'MIC017': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AUBURN', 2011, '43.60190', '-84.07710'), ('BAY CITY', 36817, '43.59000', '-83.88860'), ('BENTLEY', None, '43.94810', '-84.13440'), ('CRUMP', None, '43.75390', '-84.08720'), ('ESSEXVILLE', 3766, '43.61120', '-83.84350'), ('KAWKAWLIN', None, '43.65320', '-83.94720'), ('LINWOOD', None, '43.73890', '-83.97670'), ('MOUNT FOREST', None, '43.88720', '-84.11420'), ('MUNGER', None, '43.52300', '-83.77460'), ('PINCONNING', 1386, '43.85790', '-83.96460'), ('WILLARD', None, '43.66830', '-84.10830')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TNC091': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DOEVILLE', None, '36.38690', '-81.97190'), ('LAUREL BLOOMERY', None, '36.55830', '-81.76110'), ('MOUNTAIN CITY', 2383, '36.47180', '-81.80530'), ('NEVA', None, '36.39030', '-81.86530'), ('SHADY VALLEY', None, '36.51720', '-81.92780'), ('TRADE', None, '36.34610', '-81.74750')], 'partOfState': '', 'wfo': 'MRX'}, -'TNC097': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ASHPORT', None, '35.76670', '-89.80000'), ('EDITH', None, '35.85000', '-89.55000'), ('FT PILLOW', None, '35.66670', '-89.75000'), ('FULTON', None, '35.61670', '-89.88330'), ('GATES', 901, '35.83940', '-89.40780'), ('HALLS', 2311, '35.86670', '-89.40000'), ('HENNING', 970, '35.67330', '-89.57540'), ('RIPLEY', 7844, '35.74590', '-89.53410')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'TNC095': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COTTONWOOD GROVE', None, '36.23330', '-89.53330'), ('RIDGELY', 1667, '36.26450', '-89.48260'), ('TIPTONVILLE', 2439, '36.37730', '-89.47230')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TXC437': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLAYTONVILLE', None, '34.37520', '-101.57440'), ('HAPPY', 647, '34.74130', '-101.85590'), ('KRESS', 826, '34.36620', '-101.74750'), ('TULIA', 5117, '34.53760', '-101.77150')], 'partOfState': '', 'wfo': 'LUB'}, -'KSC171': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GRIGSTON', None, '38.47000', '-100.72000'), ('MANNING', None, '38.54000', '-100.72000'), ('MODOC', None, '38.48000', '-101.07000'), ('SCOTT CITY', 3855, '38.47980', '-100.90840'), ('SCOTT STATE LAKE', None, '38.68000', '-100.92000'), ('SHALLOW WATER', None, '38.36000', '-100.91000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'KSC173': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(3KM)JABARA ARPT', None, '37.75000', '-97.21670'), ('(IAB)MCCONNELL AFB', None, '37.62000', '-97.27000'), ('(ICT)WICHITA ARPT', None, '37.65000', '-97.43330'), ('ANDALE', 766, '37.79270', '-97.62910'), ('BEL AIRE', 5836, '37.76450', '-97.26820'), ('BENTLEY', 368, '37.88640', '-97.51560'), ('CHENEY', 1783, '37.62790', '-97.78020'), ('CLEARWATER', 2178, '37.50560', '-97.50130'), ('COLWICH', 1229, '37.78170', '-97.53750'), ('DERBY', 17807, '37.54930', '-97.25890'), ('EASTBOROUGH', 826, '37.68470', '-97.25840'), ('GARDEN PLAIN', 797, '37.66110', '-97.68160'), ('GODDARD', 2037, '37.65980', '-97.57660'), ('HAYSVILLE', 8502, '37.56700', '-97.34920'), ('KECHI', 1038, '37.79530', '-97.27830'), ('MAIZE', 1868, '37.77310', '-97.46410'), ('MOUNT HOPE', 830, '37.86840', '-97.66420'), ('MULVANE', 5155, '37.48070', '-97.24070'), ('PARK CITY', 5814, '37.79600', '-97.32190'), ('VALLEY CENTER', 4883, '37.83520', '-97.37350'), ('VIOLA', 211, '37.48250', '-97.64460'), ('WICHITA', 344284, '37.68740', '-97.34270')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'TXC435': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('SONORA', 2924, '30.56670', '-100.64310')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'KSC175': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('HAYNE', None, '37.10000', '-100.80000'), ('KISMET', 484, '37.20500', '-100.70060'), ('LIBERAL', 19666, '37.04470', '-100.93550')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'PAC109': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEAVER SPRINGS', 634, '40.74000', '-77.22000'), ('BEAVERTOWN', 870, '40.75260', '-77.16970'), ('FREEBURG', 584, '40.76280', '-76.94120'), ('FREMONT', None, '40.72000', '-77.01000'), ('HUMMELS WHARF', 641, '40.83360', '-76.83960'), ('KRATZERVILLE', 391, '40.85000', '-76.91000'), ('MCCLURE', 975, '40.70760', '-77.31130'), ('MEISERVILLE', None, '40.67000', '-76.95000'), ('MIDDLEBURG', 1382, '40.78900', '-77.04590'), ('PENNS CREEK', 668, '40.86000', '-77.07000'), ('PORT TREVERTON', None, '40.71000', '-76.88000'), ('SELINSGROVE', 5383, '40.80110', '-76.86550'), ('SHAMOKIN DAM', 1502, '40.85310', '-76.82250'), ('SNYDER-MIDDLESWARTH SP', None, '40.79000', '-77.32000'), ('TROXELVILLE', 192, '40.81000', '-77.20000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'KSC177': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AUBURN', 1121, '38.90610', '-95.81580'), ('DOVER', None, '38.96470', '-95.93720'), ('RICHLAND', None, '38.88360', '-95.53940'), ('ROSSVILLE', 1014, '39.13610', '-95.95140'), ('SILVER LAKE', 1358, '39.10420', '-95.85830'), ('TOPEKA', 122377, '39.04830', '-95.67780'), ('WILLARD', 86, '39.09330', '-95.94170')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'KSC179': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANGELUS', None, '39.19000', '-100.69000'), ('HOXIE', 1244, '39.35530', '-100.43950'), ('SEGUIN', None, '39.34000', '-100.60000'), ('SELDEN', 201, '39.54120', '-100.56660'), ('TASCO', None, '39.35000', '-100.29000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'TNC145': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADBURY', None, '35.86970', '-84.39030'), ('DEARMOND', None, '35.96640', '-84.48530'), ('EAGLE FURNACE', None, '35.77080', '-84.73670'), ('FAIRVIEW', 5800, '35.78970', '-84.57670'), ('HARRIMAN', 6744, '35.93340', '-84.56170'), ('KINGSTON', 5264, '35.87010', '-84.51010'), ('OAK RIDGE', 27387, '35.96270', '-84.29620'), ('OLIVER SPRINGS', 3303, '36.03640', '-84.33700'), ('PAINT ROCK', None, '35.73640', '-84.51670'), ('ROCKWOOD', 5774, '35.87410', '-84.67520')], 'partOfState': '', 'wfo': 'MRX'}, -'TNC147': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ADAMS', 566, '36.58160', '-87.06510'), ('CEDAR HILL', 298, '36.55060', '-87.00010'), ('CROSS PLAINS', 1381, '36.54010', '-86.68120'), ('GREENBRIER', 4940, '36.42300', '-86.80090'), ('ORLINDA', 594, '36.60070', '-86.67190'), ('RIDGETOP', 1083, '36.39670', '-86.77340'), ('SPRINGFIELD', 14329, '36.49950', '-86.87870'), ('WHITE HOUSE', 7220, '36.46320', '-86.66780')], 'partOfState': '', 'wfo': 'OHX'}, -'TNC141': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALGOOD', 2942, '36.19770', '-85.44720'), ('BAXTER', 1279, '36.15430', '-85.63830'), ('COOKEVILLE', 23923, '36.15690', '-85.50540'), ('MONTEREY', 2717, '36.13300', '-85.24430')], 'partOfState': '', 'wfo': 'OHX'}, -'TNC143': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DAYTON', 6180, '35.49280', '-85.01300'), ('EVENSVILLE', None, '35.56280', '-84.95690'), ('GRANDVIEW', None, '35.74330', '-84.83860'), ('GRAYSVILLE', 1411, '35.44780', '-85.08250'), ('OLD WASHINGTON', None, '35.53170', '-84.90920'), ('SPRING CITY', 2025, '35.68740', '-84.86410')], 'partOfState': '', 'wfo': 'MRX'}, -'TXC289': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUFFALO', 1804, '31.46120', '-96.06280'), ('CENTERVILLE', 903, '31.25830', '-95.97680'), ('JEWETT', 861, '31.36160', '-96.14580'), ('LEONA', 181, '31.15460', '-95.97550'), ('MARQUEZ', 220, '31.23690', '-96.25680'), ('OAKWOOD', 471, '31.58440', '-95.84890')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'MTC027': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BUFFALO', None, '46.82110', '-109.82780'), ('CHRISTINA', None, '47.38190', '-109.32330'), ('COFFEE CREEK', None, '47.34780', '-110.08080'), ('DANVERS', None, '47.22520', '-109.71640'), ('DENTON', 301, '47.32310', '-109.94890'), ('FERGUS', None, '47.33080', '-109.06640'), ('FORESTGROVE', None, '46.99140', '-109.07940'), ('GARNEILL', None, '46.75250', '-109.75190'), ('GRASS RANGE', 149, '47.02680', '-108.80280'), ('HILGER', None, '47.25390', '-109.35920'), ('LEWISTOWN', 5813, '47.06360', '-109.42770'), ('MOORE', 186, '46.97490', '-109.69490'), ('ROY', None, '47.33140', '-108.95920'), ('SUFFOLK', None, '47.46690', '-109.35500'), ('WINIFRED', 156, '47.56150', '-109.37530')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, -'TXC281': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('LAMPASAS', 6786, '31.06340', '-98.18090'), ('LOMETA', 782, '31.21610', '-98.39280')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC283': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARTESIA WELLS', None, '28.22080', '-99.29380'), ('COTULLA', 3614, '28.43610', '-99.23640'), ('ENCINAL', 629, '28.04130', '-99.35470'), ('FOWLERTON', 62, '28.45277', '-98.81666'), ('LOS ANGELES', None, '28.45000', '-99.00194'), ('MILLET', None, '28.57222', '-99.21250'), ('WOODWARD', None, '28.53333', '-99.29333')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXC285': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EZZELL', None, '29.28330', '-96.90000'), ('HALLETTSVILLE', 2345, '29.44490', '-96.94180'), ('MOULTON', 944, '29.57160', '-97.14600'), ('SHINER', 2070, '29.43200', '-97.17180'), ('SPEAKS', None, '29.25000', '-96.71670'), ('SUBLIME', None, '29.48300', '-96.80000'), ('YOAKUM', 5731, '29.29280', '-97.14650')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC287': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DIME BOX', None, '30.35000', '-96.81670'), ('FEDOR', None, '30.31670', '-97.05000'), ('GIDDINGS', 5105, '30.18330', '-96.92790'), ('LEXINGTON', 1178, '30.41470', '-97.00940'), ('TANGLEWOOD', None, '30.50000', '-96.98330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'GAC119': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CANON', 755, '34.34620', '-83.11070'), ('CANON', 755, '34.34620', '-83.11070'), ('CARNESVILLE', 541, '34.36720', '-83.23330'), ('CARNESVILLE', 541, '34.36720', '-83.23330'), ('FRANKLIN SPRINGS', 762, '34.28350', '-83.14630'), ('FRANKLIN SPRINGS', 762, '34.28350', '-83.14630'), ('LAVONIA', 1827, '34.43600', '-83.10640'), ('ROYSTON', 2493, '34.28550', '-83.10940'), ('ROYSTON', 2493, '34.28550', '-83.10940'), ('WHITWORTH', None, '34.48390', '-83.09500')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'NCC163': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AUTRYVILLE', 196, '34.99650', '-78.64060'), ('CLINTON', 8600, '35.00020', '-78.33180'), ('GARLAND', 808, '34.78600', '-78.39500'), ('HARRELLS', 187, '34.72960', '-78.20100'), ('HOBBTON', None, '35.18000', '-78.32000'), ('IVANHOE', 311, '34.60000', '-78.25000'), ('NEWTON GROVE', 606, '35.25220', '-78.35590'), ('ROSEBORO', 1267, '34.95390', '-78.51210'), ('SALEMBURG', 469, '35.01420', '-78.50310'), ("SPIVEY'S CORNER", None, '35.25000', '-78.53000'), ('TURKEY', 262, '34.99320', '-78.18540')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'MDC047': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BEAVER DAM', None, '38.01520', '-75.56080'), ('BERLIN', 3491, '38.32520', '-75.21810'), ('BISHOP', None, '38.42860', '-75.21950'), ('BISHOPVILLE', None, '38.44260', '-75.19380'), ('BOXIRON', None, '38.11530', '-75.34920'), ('CAPE ISLE OF WIGHT', None, '38.35278', '-75.11833'), ('CEDARTOWN', None, '38.19560', '-75.30120'), ('GIRDLETREE', 117, '38.09420', '-75.39760'), ('GOODWILL', None, '38.07080', '-75.49140'), ('IRONSHIRE', None, '38.28420', '-75.23140'), ('LONGRIDGE', None, '38.26670', '-75.51340'), ('MOUNT WESLEY', None, '38.17160', '-75.34620'), ('NEWARK', 339, '38.25080', '-75.29090'), ('OCEAN CITY', 7173, '38.35720', '-75.07400'), ('OCEAN CITY MUNICIPAL AIRP', None, '38.31170', '-75.12380'), ('OCEAN PINES', 10496, '38.38310', '-75.14960'), ('POCOMOKE CITY', 4098, '38.06710', '-75.56190'), ('PUBLIC LANDING', None, '38.14910', '-75.28860'), ('SHOWELL', None, '38.39970', '-75.21160'), ('SNOW HILL', 2409, '38.17320', '-75.39160'), ('STOCKTON', 143, '38.05370', '-75.40990'), ('WEST OCEAN CITY', 3311, '38.34530', '-75.10970'), ('WHALEYVILLE', 124, '38.40160', '-75.30370'), ('WHITESBURG', None, '38.18570', '-75.53790'), ('WHITON', None, '38.28930', '-75.37710')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'NCC165': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CAMP MACKALL', None, '35.02000', '-79.47000'), ('EAST LAURINBURG', 295, '34.77020', '-79.44530'), ('GIBSON', 584, '34.75870', '-79.60680'), ('LAUREL HILL', None, '34.80000', '-79.54000'), ('LAURINBURG', 15874, '34.76610', '-79.47010'), ('WAGRAM', 801, '34.88990', '-79.36570')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC167': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALBEMARLE', 15680, '35.36340', '-80.19220'), ('BADIN', 1154, '35.40710', '-80.11130'), ('FINGER', None, '35.38000', '-80.37000'), ('LOCUST', 2416, '35.25810', '-80.43060'), ('NEW LONDON', 326, '35.44260', '-80.21980'), ('NORWOOD', 2216, '35.22470', '-80.12030'), ('OAKBORO', 1198, '35.22310', '-80.32580'), ('PLYLER', None, '35.37000', '-80.28000'), ('RICHFIELD', 515, '35.47150', '-80.25670'), ('STANFIELD', 1113, '35.23530', '-80.42780')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC169': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AYERSVILLE', None, '36.48330', '-80.03330'), ('CAPELLA', None, '36.36670', '-80.31670'), ('COLLINSTOWN', None, '36.53330', '-80.35000'), ('DANBURY', 108, '36.40880', '-80.21170'), ('DILLARD', None, '36.40000', '-80.10000'), ('FRANCISCO', None, '36.50000', '-80.36670'), ('GERMANTON', None, '36.26670', '-80.23330'), ('KING', 5952, '36.27800', '-80.35760'), ('LAWSONVILLE', None, '36.48330', '-80.25000'), ('MEADOWS', None, '36.36670', '-80.18330'), ('PINE HALL', None, '36.31670', '-80.06670'), ('PINNACLE', None, '36.33330', '-80.40000'), ('PRESTONVILLE', None, '36.46670', '-80.11670'), ('SANDY RIDGE', None, '36.50000', '-80.11670'), ('VADE MECUM', None, '36.41670', '-80.31670'), ('WALNUT COVE', 1465, '36.29480', '-80.13930')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'GAC113': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BROOKS', 553, '33.29500', '-84.45920'), ('FAYETTEVILLE', 11148, '33.44550', '-84.46130'), ('PEACHTREE CITY', 31580, '33.39260', '-84.56890'), ('TYRONE', 3916, '33.46800', '-84.59700'), ('WOOLSEY', 175, '33.36130', '-84.41200')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAC115': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CAVE SPRING', 975, '34.10950', '-85.33390'), ('LINDALE', 4088, '34.18760', '-85.18070'), ('ROME', 34980, '34.26270', '-85.18670'), ('SHANNON', 1682, '34.33990', '-85.08630')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'VAC059': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('THE AMERICAN LEGION BRIDG', None, '38.96580', '-77.18890'), ('ANNANDALE', 54994, '38.83320', '-77.21210'), ("BAILEY'S CROSSROADS", 23166, '38.84800', '-77.12920'), ('BAILEYS XRDS', None, '38.86670', '-77.15000'), ('BELLE HAVEN', 6269, '38.77730', '-77.05740'), ('BURKE', 57737, '38.78020', '-77.27210'), ('CENTREVILLE', 48661, '38.84690', '-77.44380'), ('CHANTILLY', 41041, '38.87560', '-77.40870'), ('CLIFTON', 185, '38.77990', '-77.38770'), ('FAIRFAX STATION', None, '38.80080', '-77.32580'), ('FORT BELVOIR', 7176, '38.70970', '-77.14700'), ('FRANCONIA', 31907, '38.76310', '-77.14910'), ('GREAT FALLS', 8549, '39.01020', '-77.28850'), ('HERNDON', 21655, '38.96920', '-77.38730'), ('HYBLA VALLEY', 16721, '38.74880', '-77.07660'), ('LAKE BARCROFT', 8906, '38.85130', '-77.15820'), ('LANGLEY', None, '38.94640', '-77.15920'), ('LINCOLNIA', 15788, '38.82440', '-77.15420'), ('LORTON', 17786, '38.70070', '-77.24080'), ('MCLEAN', 38929, '38.93850', '-77.17700'), ('MERRIFIELD', 11170, '38.87300', '-77.24330'), ('MOUNT VERNON', 28582, '38.71860', '-77.10920'), ('NEWINGTON', 19784, '38.73600', '-77.20420'), ('OAK GROVE', None, '38.98390', '-77.40420'), ('OAKTON', 29348, '38.89220', '-77.30120'), ('OCCOQUAN', 759, '38.68240', '-77.26050'), ('RAVENSWORTH', None, '38.80390', '-77.22080'), ('RESTON', 56407, '38.95210', '-77.34520'), ('ROSE HILL', 714, '38.78860', '-77.11300'), ('SPRINGFIELD', 30417, '38.78600', '-77.17960'), ('THE I395 AND I495 INTERCH', None, '38.78890', '-77.17390'), ('THE I66 AND I495 INTERCHA', None, '38.88000', '-77.22280'), ('TYSONS CORNER', 18540, '38.91860', '-77.23170'), ('VIENNA', 14453, '38.90040', '-77.26020'), ('WOLF TRAP', 14001, '38.93980', '-77.28630')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'GAC117': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CUMMING', 4220, '34.20880', '-84.13510')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'MTC023': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ANACONDA', None, '46.12861', '-112.94139'), ('CRACKERVILLE', None, '46.06472', '-112.80417'), ('FISHTRAP', None, '45.87222', '-113.22861'), ('GALEN', None, '46.23556', '-112.77528'), ('GEORGETOWN', None, '46.19944', '-113.24556'), ('GREGSON HOT SPRINGS', None, '46.04306', '-112.80917'), ('LOST CREEK', None, '46.17583', '-112.94833'), ('OPPORTUNITY', None, '46.10722', '-112.82722'), ('WARM SPRINGS', None, '46.18139', '-112.78389'), ('WEST VALLEY', None, '46.15194', '-113.02167')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'PAC101': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('COLWYN', 2453, '39.91150', '-75.25330'), ('MILLBOURNE', 943, '39.96310', '-75.25280'), ('PENN WYNNE', 5382, '39.98620', '-75.27270'), ('PHILADELPHIA', 1517550, '40.00680', '-75.13470')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'TXC133': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARBON', 224, '32.26860', '-98.82670'), ('CISCO', 3851, '32.38500', '-98.98000'), ('EASTLAND', 3769, '32.40120', '-98.81910'), ('GORMAN', 1236, '32.21400', '-98.67180'), ('RANGER', 2584, '32.47010', '-98.67430'), ('RISING STAR', 835, '32.09730', '-98.96570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC131': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BENAVIDES', 1686, '27.59770', '-98.40920'), ('CONCEPCION', 61, '27.38333', '-98.27000'), ('FREER', 3241, '27.88140', '-98.61820'), ('REALITOS', 209, '27.42500', '-98.55000'), ('RIOS', None, '27.42666', '-98.27000'), ('ROSITA', None, '27.78333', '-98.42500'), ('SEVEN SISTERS', None, '28.03000', '-98.52000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXC137': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARTA VALLEY', None, '29.80000', '-100.68330'), ('ROCKSPRINGS', 1285, '30.01680', '-100.21180')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC135': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GARDENDALE', 1197, '32.02040', '-102.37130'), ('GOLDSMITH', 253, '31.98310', '-102.61650'), ('NORTH COWDEN', None, '32.01000', '-102.51000'), ('NOTREES', None, '31.92000', '-102.76000'), ('ODESSA', 90943, '31.85440', '-102.36830'), ('PENWELL', None, '31.73000', '-102.59000'), ('PLEASANT FARMS', None, '31.68000', '-102.34000'), ('WEST ODESSA', 17799, '31.84220', '-102.49830')], 'partOfState': '', 'wfo': 'MAF'}, -'MSC047': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BILOXI', 50644, '30.41580', '-88.93190'), ('GULFPORT', 71127, '30.38610', '-89.06770'), ('LONG BEACH', 17320, '30.36200', '-89.16730'), ('LYMAN', 1081, '30.50120', '-89.13080'), ('PASS CHRISTIAN', 6579, '30.31880', '-89.24170'), ('SAUCIER', 1303, '30.63570', '-89.13500')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'TXC139': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALMA', 302, '32.28540', '-96.54470'), ('BARDWELL', 583, '32.26720', '-96.69520'), ('ENNIS', 16045, '32.33800', '-96.62910'), ('FERRIS', 2175, '32.53510', '-96.66390'), ('GARRETT', 448, '32.36080', '-96.65180'), ('GLENN HEIGHTS', 7224, '32.55100', '-96.85390'), ('ITALY', 1993, '32.18140', '-96.88390'), ('MAYPEARL', 746, '32.31560', '-97.00660'), ('MIDLOTHIAN', 7480, '32.49400', '-96.99770'), ('MILFORD', 685, '32.12220', '-96.94940'), ('OAK LEAF', 1209, '32.52090', '-96.84990'), ('OVILLA', 3405, '32.53970', '-96.89270'), ('PALMER', 1774, '32.42730', '-96.67240'), ('PECAN HILL', 672, '32.49690', '-96.77510'), ('RED OAK', 4301, '32.51790', '-96.80880'), ('WAXAHACHIE', 21426, '32.40720', '-96.85200')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'VAC115': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BAVON', None, '37.33250', '-76.28800'), ('BLAKES', None, '37.50630', '-76.37620'), ('CARDINAL', None, '37.42050', '-76.37840'), ('COBBS CREEK', None, '37.50530', '-76.39680'), ('DIGGS', None, '37.43600', '-76.28130'), ('DIXIE', None, '37.50060', '-76.41470'), ('FORT NONSENSE', None, '37.46500', '-76.44490'), ('GWYNN', None, '37.50440', '-76.28860'), ('HUDGINS', None, '37.47100', '-76.32640'), ('LABAN', None, '37.40030', '-76.28360'), ('MATHEWS', None, '37.43340', '-76.32180'), ('MOBJACK', None, '37.37620', '-76.34830'), ('MOON', None, '37.44960', '-76.30350'), ('NEW POINT', None, '37.34880', '-76.28150'), ('NEW POINT COMFORT', None, '37.30630', '-76.27760'), ('NORTH', None, '37.46750', '-76.38050'), ('PEARY', None, '37.37190', '-76.27970'), ('PORT HAYWOOD', None, '37.38610', '-76.31740'), ('REDART', None, '37.47000', '-76.30190'), ('RUFF', None, '37.41000', '-76.31280'), ('SOLES', None, '37.49280', '-76.43720')], 'partOfState': '', 'wfo': 'AKQ'}, -'MSC043': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('GRENADA', 14879, '33.77820', '-89.81040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'MSC041': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('AVENT STATION', None, '31.00640', '-88.77560'), ('AVERA', None, '31.29770', '-88.74000'), ('BOTHWELL', None, '31.32780', '-88.74830'), ('JONATHAN', None, '31.22400', '-88.63830'), ('LEAF', None, '31.02720', '-88.79410'), ('LEAKESVILLE', 1026, '31.15400', '-88.55830'), ('MCLAIN', 603, '31.10860', '-88.82750'), ('NEELY', None, '31.16530', '-88.75500'), ('PIAVE', None, '31.39390', '-88.74560'), ('PISGAH', None, '31.10530', '-88.48760'), ('ROUNSAVILLE', None, '31.16970', '-88.45830'), ('ROYCE', None, '31.06310', '-88.80620'), ('SAND HILL', None, '31.34560', '-88.76390'), ('VERNAL', None, '31.03920', '-88.61000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'VAC057': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOWLERS WHARF', None, '37.82320', '-76.75220'), ('BRAYS FORK', None, '37.89610', '-76.87190'), ('CARET', None, '37.98280', '-76.96200'), ('CENTER CROSS', None, '37.80460', '-76.77940'), ('CHAMPLAIN', None, '38.01380', '-76.99290'), ('CHANCE', None, '38.06340', '-77.00920'), ('DUNBROOKE', None, '37.89420', '-76.96410'), ('DUNNSVILLE', None, '37.85890', '-76.82270'), ('ELEVON', None, '37.99410', '-77.07310'), ('HOWERTONS', None, '37.83120', '-76.89070'), ('HUSTLE', None, '38.04250', '-77.06690'), ('LANEVIEW', None, '37.77000', '-76.73500'), ('LORETTO', None, '38.07620', '-77.05150'), ('MILLERS TAVERN', None, '37.83090', '-76.93680'), ('MONTAGUE', None, '37.76800', '-76.73740'), ('MOUNT LANDING', None, '37.94000', '-76.92170'), ('REXBURG', None, '37.93640', '-76.98720'), ('SUPPLY', None, '38.09420', '-77.13620'), ('TAPPAHANNOCK', 2068, '37.92000', '-76.86780'), ('UPRIGHT', None, '37.80940', '-76.83770')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'VAC051': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BREAKS INTERSTATE PARK', None, '37.29030', '-82.29520'), ('CLINTWOOD', 1549, '37.15060', '-82.45620'), ('HAYSI', 186, '37.20510', '-82.29310'), ('JOHN FLANNAGAN LAKE', None, '37.23320', '-82.34520')], 'partOfState': '', 'wfo': 'RLX'}, -'GAC237': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EATONTON', 6764, '33.32290', '-83.38700')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'MIC013': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALBERTA', None, '46.65000', '-88.47000'), ('ARNHEIM', None, '46.92000', '-88.47000'), ('ASSININS', None, '46.81000', '-88.47700'), ('BARAGA', 1285, '46.77730', '-88.49350'), ('HERMAN', None, '46.66700', '-88.36700'), ('ISLAND LAKE', None, '46.69800', '-88.01500'), ('KEWEENAW BAY', None, '46.87000', '-88.47000'), ("L'ANSE", 2107, '46.75360', '-88.44940'), ('MOUNT ARVON', None, '46.75600', '-88.15600'), ('NED LAKE', None, '46.45200', '-88.33400'), ('PELKIE', None, '46.82000', '-88.63000'), ('PEQUAMING', None, '46.85000', '-88.38000'), ('THREE LAKES', None, '46.55400', '-88.20100'), ('WATTON', None, '46.53000', '-88.60000')], 'partOfState': '', 'wfo': 'MQT'}, -'KYC057': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AMANDAVILLE', None, '36.90000', '-85.30000'), ('BECKS STORE', None, '36.91670', '-85.40000'), ('BURKESVILLE', 1756, '36.79070', '-85.36880'), ('DUBRE', None, '36.83330', '-85.55000'), ('MARROWBONE', None, '36.81670', '-85.50000'), ('PEYTONSBURG', None, '36.63330', '-85.38330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'PRC139': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('TRUJILLO ALTO', 50841, '18.36300', '-66.01760')], 'partOfState': '', 'wfo': 'SJU'}, -'KYC051': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADD', None, '37.12640', '-83.76950'), ('ALGER', None, '37.31500', '-83.72870'), ('AMMIE', None, '37.26640', '-83.69220'), ('ASHERS FORK', None, '37.00810', '-83.59470'), ('BARCREEK', None, '37.22780', '-83.64140'), ('BENGE', None, '37.22830', '-83.92310'), ('BERNICE', None, '37.20690', '-83.75360'), ('BIG CREEK', None, '37.16360', '-83.56860'), ('BLUEHOLE', None, '37.10170', '-83.75640'), ('BOHO', None, '37.11870', '-83.70320'), ('BOTTO', None, '37.08720', '-83.67720'), ('BRIGHTSHADE', None, '37.02050', '-83.65790'), ('BRUTUS', None, '37.25580', '-83.57720'), ('BURNING SPRINGS', None, '37.25580', '-83.80230'), ('BUSH', None, '37.09250', '-83.87030'), ('BYRON', None, '37.16770', '-83.88650'), ('CHESTNUTBURG', None, '37.29030', '-83.79610'), ('COTTONGIN', None, '37.06470', '-83.80250'), ('CRAWFORD', None, '37.19440', '-83.95190'), ('CREEKVILLE', None, '37.07890', '-83.54920'), ('DEER LICK', None, '37.14700', '-83.94320'), ('ENLINE', None, '37.18860', '-83.59420'), ('FALL ROCK', None, '37.22140', '-83.78890'), ('FELTY', None, '37.30100', '-83.70780'), ('FOGERTOWN', None, '37.22000', '-83.90140'), ('GARDNER', None, '36.96870', '-83.53590'), ('GARRARD', None, '37.12530', '-83.74580'), ('GOOSE ROCK', None, '37.09140', '-83.69470'), ('GRACE', None, '37.19860', '-83.86670'), ('HECTOR', None, '37.15440', '-83.65440'), ('HENSLEY', None, '37.23730', '-83.67440'), ('HERRON', None, '37.12730', '-83.79410'), ('HIGH KNOB', None, '37.26770', '-83.81840'), ('HIMA', None, '37.12190', '-83.77920'), ('HOOKER', None, '37.13810', '-83.83510'), ('HORSE CREEK JUNCTION', None, '37.13680', '-83.76340'), ('HOUSE', None, '37.08270', '-83.76930'), ('ICE CLIFF', None, '37.00910', '-83.63560'), ('JACKS CREEK', None, '37.20750', '-83.55690'), ('JONSEE', None, '37.07220', '-83.78570'), ('LANGNAU', None, '37.17970', '-83.96690'), ('LARUE', None, '37.20310', '-83.92500'), ('LAUREL CREEK', None, '37.24420', '-83.74850'), ('LINCOLN', None, '37.05780', '-83.73920'), ('LIPPS', None, '37.04860', '-83.65750'), ('LITTLETON', None, '37.16360', '-83.75500'), ('MALCOMB', None, '37.27820', '-83.83750'), ('MANCHESTER', 1738, '37.15250', '-83.76810'), ('MARCUM', None, '37.11170', '-83.55940'), ('MILL POND', None, '37.22920', '-83.73750'), ('NEWFOUND', None, '37.31060', '-83.63150'), ('OGLE', None, '37.03080', '-83.71190'), ('ONEIDA', None, '37.27060', '-83.64970'), ('PANCO', None, '37.23860', '-83.53280'), ('PARK VALLEY', None, '37.07760', '-83.77810'), ('PEABODY', None, '37.15970', '-83.59800'), ('PIGEONROOST', None, '37.11090', '-83.80970'), ('PLANK', None, '37.07780', '-83.64720'), ('PORTERSBURG', None, '37.17060', '-83.92580'), ('QUEENDALE', None, '37.00880', '-83.52580'), ('ROYRADER', None, '37.26100', '-83.94080'), ('SACKER GAP', None, '37.26570', '-83.79750'), ('SETH', None, '37.24770', '-83.65040'), ('SEXTONS CREEK', None, '37.31580', '-83.78440'), ('SHEPHERDTOWN', None, '37.28810', '-83.86560'), ('SIBERT', None, '37.12470', '-83.78690'), ('SIDELL', None, '37.19040', '-83.82240'), ('SKIDMORE', None, '36.99310', '-83.53630'), ('SOURWOOD', None, '37.32880', '-83.79990'), ('SPRING CREEK', None, '37.06280', '-83.54250'), ('SPURLOCK', None, '37.21280', '-83.63470'), ('TANKSLEY', None, '37.21780', '-83.71060'), ('TEGES', None, '37.29560', '-83.66750'), ('TREADWAY', None, '37.23060', '-83.78330'), ('TRIXIE', None, '37.33520', '-83.67300'), ('URBAN', None, '37.15810', '-83.84780'), ('WILD CAT', None, '37.23420', '-83.69060')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC053': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALBANY', 2220, '36.69050', '-85.13540'), ('CUMBERLAND CITY', None, '36.80000', '-85.06670'), ('STATIC', None, '36.63000', '-85.08330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'PRC135': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('GALATEO', 2705, '18.36440', '-66.25930'), ('H. RIVERA COLON', None, '18.34970', '-66.27410'), ('MUCARABONES', 1690, '18.39270', '-66.21650'), ('PAJAROS', None, '18.36210', '-66.21910'), ('TOA ALTA', 4368, '18.39010', '-66.25010')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC045': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ABBOTT', None, '37.41670', '-80.15000'), ('CRAIG SPRINGS', None, '37.48330', '-80.28330'), ('HUFFMAN', None, '37.35000', '-80.41670'), ('MAGGIE', None, '37.43330', '-80.40000'), ('NEW CASTLE', 179, '37.50000', '-80.11670'), ('PAINT BANK', None, '37.56670', '-80.28330'), ('SIMMONSVILLE', None, '37.38330', '-80.36670'), ('SINKING CREEK', None, '37.41670', '-80.28330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'PRC137': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CAMPANILLA', 7757, '18.42460', '-66.23870'), ('CANDELARIA', 17300, '18.40670', '-66.21830'), ('CANDELARIA ARENAS', 5854, '18.41920', '-66.21780'), ('INGENIO', 5664, '18.44730', '-66.22580'), ('LEVITTOWN', 30140, '18.44760', '-66.17630'), ('SABANA SECA', 6247, '18.42560', '-66.18540'), ('SAN JOSE', None, '18.40600', '-66.24850'), ('TOA BAJA', 1841, '18.44430', '-66.25480')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC047': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALANTHUS', None, '38.54190', '-77.93310'), ('CARDOVA', None, '38.53220', '-78.03830'), ('CATALPA', None, '38.51060', '-77.98810'), ('CULPEPER', 9664, '38.47100', '-78.00110'), ('ELKWOOD', None, '38.51170', '-77.85610'), ('JEFFERSONTON', None, '38.63690', '-77.91530'), ('LIGNUM', None, '38.41580', '-77.82690'), ('REVA', None, '38.49390', '-78.13360'), ('RICHARDSVILLE', None, '38.40000', '-77.72920'), ('RIXEYVILLE', None, '38.58000', '-77.97000'), ('STEVENSBURG', None, '38.44310', '-77.90000'), ('WINSTON', None, '38.41000', '-78.00970')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'PRC131': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('JUNCAL', 1155, '18.31570', '-66.91940'), ('SAN SEBASTIAN', None, '18.33800', '-66.99590')], 'partOfState': '', 'wfo': 'SJU'}, -'KYC059': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('MASONVILLE', 1075, '37.67310', '-87.03450'), ('MOSELEYVILLE', None, '37.66300', '-87.19330'), ('OWENSBORO', 54067, '37.75930', '-87.11930'), ('WHITESVILLE', 632, '37.68390', '-86.86980')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'PRC133': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('EL OJO', 1713, '18.00590', '-66.39210'), ('JAUCA', 1838, '17.96580', '-66.36600'), ('LAS OLLAS', 1949, '18.01640', '-66.42170'), ('PARCELAS PENUELAS', None, '18.00400', '-66.34010'), ('SANTA ISABEL', 6993, '17.97090', '-66.40510')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC043': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BERRYVILLE', 2963, '39.14960', '-77.98110'), ('BETHEL', None, '39.03080', '-78.04360'), ('BOYCE', 426, '39.09300', '-78.05950'), ('BRIGGS', None, '39.10780', '-78.01420'), ('GAYLORD', None, '39.18750', '-77.93080'), ('MILLWOOD', None, '39.06940', '-78.03810'), ('STRINGTOWN', None, '39.18810', '-77.97830'), ('WADESVILLE', None, '39.24250', '-78.03920'), ('WHITE POST', None, '39.05690', '-78.10390'), ('WICKLIFFE', None, '39.16610', '-77.89250')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'SDC009': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AVON', 561, '43.00510', '-98.05910'), ('SCOTLAND', 891, '43.14810', '-97.71950'), ('SPRINGFIELD', 792, '42.85470', '-97.89300'), ('TABOR', 417, '42.94770', '-97.65970'), ('TYNDALL', 1239, '42.98970', '-97.86460')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'NCC019': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BALD HEAD ISLAND', 173, '33.86310', '-77.98830'), ('BELVILLE', 285, '34.23000', '-77.98650'), ('BOILING SPRING LAKES', 2972, '34.03180', '-78.06690'), ('BOLIVIA', 148, '34.06750', '-78.14860'), ('CALABASH', 711, '33.89060', '-78.56860'), ('CASWELL BEACH', 370, '33.90480', '-78.04850'), ('FREELAND', None, '34.10690', '-78.53750'), ('HOLDEN BEACH', 787, '33.91330', '-78.25280'), ('LELAND', 1938, '34.25610', '-78.04500'), ('LONG BEACH', None, '33.91030', '-78.11810'), ('LONGWOOD', None, '34.00330', '-78.54250'), ('MACO', None, '34.28690', '-78.14640'), ('MAKATOKA', None, '34.11830', '-78.40750'), ('NAVASSA', 479, '34.25720', '-78.00270'), ('OCEAN ISLE BEACH', 426, '33.89250', '-78.43220'), ('SANDY CREEK', 246, '34.28500', '-78.15700'), ('SHALLOTTE', 1381, '33.97310', '-78.38610'), ('SOUTHPORT', 2351, '33.92140', '-78.02060'), ('SUNSET BEACH', 1824, '33.87470', '-78.51000'), ('SUPPLY', None, '34.01750', '-78.26780'), ('VARNAMTOWN', 481, '33.94190', '-78.23970'), ('WINNABOW', None, '34.28250', '-78.09390'), ('YAUPON BEACH', None, '33.90750', '-78.07640')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCC015': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASKEWVILLE', 180, '36.10970', '-76.94120'), ('AULANDER', 888, '36.22890', '-77.11360'), ('BUENA VISTA', None, '36.12060', '-76.96470'), ('BURDEN', None, '36.15990', '-77.06490'), ('COLERAIN', 221, '36.20100', '-76.76840'), ('CONNARITSA', None, '36.18930', '-77.07430'), ('EDENHOUSE', None, '36.03860', '-76.72500'), ('GOOSE POND', None, '36.17780', '-76.77530'), ('KELFORD', 245, '36.18080', '-77.22420'), ('LEWISTON WOODVILLE', 613, '36.11430', '-77.17990'), ('MERRY HILL', None, '36.01210', '-76.77170'), ('MIDWAY', None, '36.03440', '-76.78440'), ('MOUNT GOULD', None, '36.12100', '-76.76090'), ('POWELLSVILLE', 259, '36.22480', '-76.93200'), ('QUITSNA', None, '35.97400', '-77.08590'), ('REPUBLICAN', None, '36.08250', '-77.05950'), ('ROSEMEAD', None, '36.18000', '-76.86640'), ('ROXOBEL', 263, '36.20180', '-77.23820'), ('TRAP', None, '36.20670', '-76.87110'), ('WAKELON', None, '36.15860', '-76.84390'), ('WHITES CROSSROADS', None, '36.13690', '-76.86610'), ('WINDSOR', 2283, '36.00070', '-76.94390'), ('WOODARD', None, '35.91620', '-76.86170')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCC017': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AMMON', None, '34.80000', '-78.58060'), ('BAY TREE LAKE', None, '34.66670', '-78.40830'), ('BLADENBORO', 1718, '34.53860', '-78.78780'), ('CLARKTON', 705, '34.48720', '-78.65640'), ('COUNCIL', None, '34.42080', '-78.46780'), ('DUART', None, '34.79330', '-78.81810'), ('DUBLIN', 250, '34.65670', '-78.72670'), ('EAST ARCADIA', 524, '34.38190', '-78.32360'), ('ELIZABETHTOWN', 3698, '34.62920', '-78.60560'), ('KELLY', 454, '34.46610', '-78.32470'), ('LAGOON', None, '34.56110', '-78.43500'), ('TAR HEEL', 70, '34.73310', '-78.79030'), ('WHITE LAKE', 529, '34.64030', '-78.48420'), ('WHITE OAK', 304, '34.74940', '-78.70830')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCC011': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BANNER ELK', 811, '36.16240', '-81.87230'), ('CROSSNORE', 242, '36.02240', '-81.93140'), ('ELK PARK', 459, '36.15800', '-81.98080'), ('GRANDFATHER MOUNTAIN', None, '36.09850', '-81.84750'), ('INGALLS', None, '35.97140', '-82.01190'), ('MINNEAPOLIS', None, '36.09920', '-81.98720'), ('NEWLAND', 704, '36.08660', '-81.92640'), ('SUGAR MOUNTAIN', 226, '36.12420', '-81.86330')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC013': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AURORA', 583, '35.30350', '-76.78840'), ('BELHAVEN', 1968, '35.54370', '-76.62470'), ('CHOCOWINITY', 733, '35.51390', '-77.09970'), ('PANTEGO', 170, '35.58740', '-76.65850'), ('RIVER ROAD', 4094, '35.50660', '-76.99100'), ('WASHINGTON', 9583, '35.55630', '-77.05050'), ('WASHINGTON PARK', 440, '35.53250', '-77.03120')], 'partOfState': '', 'wfo': 'MHX'}, -'WIC095': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AMERY', 2845, '45.30460', '-92.36310'), ('BALSAM LAKE', 950, '45.45810', '-92.45470'), ('CENTURIA', 865, '45.44960', '-92.55580'), ('CLAYTON', 507, '45.32370', '-92.17000'), ('CLEAR LAKE', 1051, '45.25010', '-92.26860'), ('DRESSER', 732, '45.36150', '-92.63380'), ('FREDERIC', 1262, '45.65640', '-92.46400'), ('LUCK', 1210, '45.57520', '-92.46730'), ('MILLTOWN', 888, '45.52690', '-92.49970'), ('OSCEOLA', 2421, '45.31920', '-92.69590'), ('ST CROIX FALLS', None, '45.40940', '-92.63380')], 'partOfState': 'NORTHWEST', 'wfo': 'MPX'}, -'PRC001': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ADJUNTAS', 4980, '18.16570', '-66.72410')], 'partOfState': '', 'wfo': 'SJU'}, -'ILC093': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BOULDER HILL', 8169, '41.71250', '-88.33610'), ('LISBON', 248, '41.48060', '-88.48270'), ('MILLINGTON', 458, '41.56100', '-88.59920'), ('NEWARK', 887, '41.53710', '-88.58070'), ('OSWEGO', 13326, '41.69790', '-88.33260'), ('PLANO', 5633, '41.66330', '-88.53480'), ('YORKVILLE', 6189, '41.64220', '-88.44750')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'PRC003': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUADA', 3871, '18.38220', '-67.18780'), ('LUYANDO', 3553, '18.35840', '-67.15630')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC005': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUADILLA', 16776, '18.43970', '-67.15490'), ('CABAN', None, '18.44540', '-67.13630'), ('RAFAEL HERNANDEZ', None, '18.47330', '-67.07950')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC007': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUAS BUENAS', 4368, '18.25940', '-66.10540'), ('SUMIDERO', None, '18.21280', '-66.13430')], 'partOfState': '', 'wfo': 'SJU'}, -'VAC540': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHARLOTTESVILLE', 45049, '38.03740', '-78.48570')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'PRC009': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AIBONITO', 9269, '18.14180', '-66.26610'), ('PASTOS', 1528, '18.11970', '-66.25910')], 'partOfState': '', 'wfo': 'SJU'}, -'MIC011': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALGER', None, '44.11660', '-84.11660'), ('AU GRES', 1028, '44.04420', '-83.69280'), ('MAPLE RIDGE', None, '44.13340', '-83.91670'), ('OMER', 337, '44.04950', '-83.85720'), ('STANDISH', 1581, '43.98060', '-83.96340'), ('STERLING', 533, '44.03210', '-84.02030'), ('TURNER', 139, '44.14180', '-83.78820'), ('TWINING', 192, '44.11260', '-83.80780')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'WIC005': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMENA', 720, '45.41450', '-92.03650'), ('BARRON', 3248, '45.40060', '-91.84650'), ('CAMERON', 1546, '45.40330', '-91.74340'), ('CHETEK', 2180, '45.31600', '-91.65310'), ('CUMBERLAND', 2280, '45.53590', '-92.02320'), ('DALLAS', 356, '45.25810', '-91.81470'), ('HAUGEN', 287, '45.60780', '-91.77840'), ('PRAIRIE FARM', 508, '45.23760', '-91.98080'), ('RICE LAKE', 8320, '45.49690', '-91.73920'), ('TURTLE LAKE', 1065, '45.39240', '-92.14130')], 'partOfState': 'NORTHWEST', 'wfo': 'MPX'}, -'IAC093': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARTHUR', 245, '42.33520', '-95.34640'), ('BATTLE CREEK', 743, '42.31690', '-95.59930'), ('CUSHING', 246, '42.46510', '-95.67610'), ('GALVA', 368, '42.50620', '-95.41630'), ('HOLSTEIN', 1470, '42.48680', '-95.54230'), ('IDA GROVE', 2350, '42.34440', '-95.47290')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAC091': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BODE', 327, '42.86810', '-94.28640'), ('BRADGATE', 101, '42.80260', '-94.41930'), ('DAKOTA CITY', 911, '42.72220', '-94.19690'), ('HARDY', 57, '42.81020', '-94.05150'), ('HUMBOLDT', 4452, '42.72150', '-94.22370'), ('LIVERMORE', 431, '42.86780', '-94.18380'), ('OTTOSEN', 61, '42.89960', '-94.37530'), ('PIONEER', 21, '42.65350', '-94.39110'), ('RENWICK', 306, '42.82740', '-93.98070'), ('RUTLAND', 145, '42.76120', '-94.29260'), ('THOR', 174, '42.68870', '-94.05000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'INC119': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('GOSPORT', 715, '39.35050', '-86.66570'), ('SPENCER', 2508, '39.28710', '-86.76920')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'IAC095': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMANA', None, '41.80000', '-91.86670'), ('AMANA AIRPORT', None, '41.79500', '-91.86000'), ('CONROY', None, '41.73330', '-92.00000'), ('EAST AMANA', None, '41.81670', '-91.85000'), ('GENOA BLUFF', None, '41.71670', '-92.15000'), ('HIGH AMANA', None, '41.80000', '-91.93330'), ('HOLBROOK', None, '41.58330', '-91.91670'), ('HOMESTEAD', None, '41.76670', '-91.86670'), ('KOSZTA', None, '41.83330', '-92.20000'), ('LADORA', 287, '41.75580', '-92.18540'), ('LAKE IOWA', None, '41.63330', '-92.18330'), ('MARENGO', 2535, '41.79720', '-92.06940'), ('MIDDLE AMANA', None, '41.80000', '-91.90000'), ('MILLERSBURG', 184, '41.57270', '-92.15920'), ('NORTH ENGLISH', 991, '41.51590', '-92.07810'), ('PARNELL', 220, '41.58350', '-92.00480'), ('SOUTH AMANA', None, '41.78330', '-91.96670'), ('UPPER SOUTH AMANA', None, '41.76670', '-91.96670'), ('VICTOR', 952, '41.73090', '-92.29440'), ('WEST AMANA', None, '41.80000', '-91.97000'), ('WILLIAMSBURG', 2622, '41.66800', '-92.00840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAC097': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANDREW', 460, '42.15310', '-90.59170'), ('BALDWIN', 127, '42.07360', '-90.83900'), ('BELLEVUE', 2350, '42.25880', '-90.42860'), ('BUCKHORN', None, '42.06670', '-90.75000'), ('COTTONVILLE', None, '42.23330', '-90.60000'), ('CRABTOWN', None, '42.18330', '-90.80000'), ('EMELINE', None, '42.15000', '-90.83330'), ('FULTON', None, '42.15000', '-90.68330'), ('GARRY OWEN', None, '42.28330', '-90.83330'), ('GORDONS FERRY', None, '42.38330', '-90.48330'), ('GREEN ISLAND', None, '42.15460', '-90.32240'), ('HURSTVILLE', None, '42.10000', '-90.68330'), ('IRONHILLS', None, '42.15000', '-90.76660'), ('LA MOTTE', 272, '42.29490', '-90.62130'), ('MAQUOKETA', 6112, '42.06530', '-90.66610'), ('MAQUOKETA CAVES STATE PAR', None, '42.11670', '-90.78330'), ('MAQUOKETA MUNICIPAL AIRPO', None, '42.05000', '-90.73330'), ('MILES', 462, '42.04830', '-90.31750'), ('MONMOUTH', 180, '42.07370', '-90.88180'), ('NASHVILLE', None, '42.06670', '-90.78330'), ('OTTER CREEK', None, '42.23330', '-90.68330'), ('PRESTON', 949, '42.04850', '-90.39930'), ('REECEVILLE', None, '42.13330', '-90.30000'), ('SABULA', 670, '42.06780', '-90.17410'), ('SMITHS FERRY', None, '42.31670', '-90.43330'), ('SOUTH GARY OWEN', None, '42.23330', '-90.80000'), ('SPRAGUEVILLE', 89, '42.07050', '-90.43100'), ('SPRINGBROOK', 182, '42.16750', '-90.48190'), ('ST. DONATUS', 140, '42.36210', '-90.54310'), ('VAN BUREN', None, '42.08330', '-90.36670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'INC115': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('RISING SUN', 2470, '38.95160', '-84.85710')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILN'}, -'IAC099': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BAXTER', 1052, '41.82580', '-93.15070'), ('COLFAX', 2223, '41.67620', '-93.24020'), ('KELLOGG', 606, '41.71660', '-92.90740'), ('LAMBS GROVE', 225, '41.70030', '-93.07830'), ('LYNNVILLE', 366, '41.57680', '-92.78620'), ('MINGO', 269, '41.76740', '-93.28430'), ('MONROE', 1808, '41.52020', '-93.10450'), ('NEWTON', 15579, '41.69510', '-93.04510'), ('OAKLAND ACRES', 166, '41.71930', '-92.82000'), ('PRAIRIE CITY', 1365, '41.59810', '-93.23540'), ('REASNOR', 194, '41.57850', '-93.02260'), ('SULLY', 904, '41.57860', '-92.84650'), ('VALERIA', 62, '41.72950', '-93.32450')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'LAC065': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DELTA', 239, '32.32380', '-90.92320'), ('MOUND', 12, '32.33680', '-91.02150'), ('RICHMOND', 499, '32.38780', '-91.18240'), ('TALLULAH', 9189, '32.40740', '-91.18920')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'INC113': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALBION', 2284, '41.39520', '-85.41970'), ('AVILLA', 2049, '41.36500', '-85.23810'), ('CROMWELL', 452, '41.40350', '-85.61440'), ('KENDALLVILLE', 9616, '41.44340', '-85.25810'), ('LIGONIER', 4357, '41.46410', '-85.59470'), ('ROME CITY', 1615, '41.48830', '-85.35580'), ('WOLCOTTVILLE', 933, '41.52550', '-85.36600')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'WAC029': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('AULT FIELD', 2064, '48.33710', '-122.67620'), ('COUPEVILLE', 1723, '48.21730', '-122.67580'), ('FREELAND', 1313, '48.01310', '-122.53770'), ('LANGLEY', 959, '48.03710', '-122.40720')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'KYC121': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARKLE', None, '36.91990', '-83.97670'), ('ARTEMUS', None, '36.83360', '-83.84150'), ('AVIS', None, '36.81530', '-83.82840'), ('BAILEYS SWITCH', None, '36.91240', '-83.90010'), ('BARBOURVILLE', 3589, '36.86640', '-83.88400'), ('BARNYARD', None, '36.90900', '-83.74130'), ('BAUGHMAN', None, '36.86550', '-83.80050'), ('BENTLEY STATION', None, '36.91780', '-83.93190'), ('BERTHA STATION', None, '36.92990', '-83.99070'), ('BIMBLE', None, '36.87690', '-83.82000'), ('BIRDSEYE', None, '36.74290', '-83.93210'), ('BOONE HEIGHTS', None, '36.85070', '-83.85450'), ('BRUSH CREEK', None, '36.82240', '-83.84010'), ('BRYANTS STORE', None, '36.77440', '-83.92120'), ('CANNON', None, '36.91720', '-83.85910'), ('CLATE', None, '36.79890', '-83.96050'), ('CRANES NEST', None, '36.98950', '-83.87950'), ('DEWITT', None, '36.87700', '-83.73750'), ('DISHMAN SPRINGS', None, '36.86890', '-83.95970'), ('EMMANUEL', None, '36.90630', '-83.93270'), ('EROSE', None, '36.92780', '-83.61680'), ('FLAT LICK', None, '36.82420', '-83.76900'), ('FLETCHER', None, '37.00440', '-83.86960'), ('FOUNT', None, '36.98770', '-83.82870'), ('GARRICH', None, '36.93250', '-83.93650'), ('GIBBS', None, '37.02040', '-83.89910'), ('GIRDLER', None, '36.93730', '-83.84110'), ('GRAY', None, '36.94340', '-84.00570'), ('GREEN ROAD', None, '36.95960', '-83.83590'), ('HAMMOND', None, '36.95730', '-83.72710'), ('HAVEN', None, '37.01150', '-83.82050'), ('HEIDRICK', None, '36.88260', '-83.87840'), ('HIMYAR', None, '36.83300', '-83.79850'), ('HINKLE', None, '36.91350', '-83.81830'), ('HUBBS', None, '36.77730', '-83.88990'), ('INDIAN CREEK', None, '36.87000', '-83.98230'), ('JARVIS', None, '36.95520', '-83.89150'), ('KAYJAY', None, '36.74420', '-83.84820'), ('KING', None, '36.79570', '-83.94110'), ('KNOXFORK', None, '36.99260', '-83.92420'), ('LOWELL', None, '36.90960', '-83.92920'), ('MILLS', None, '36.92260', '-83.64240'), ('MOORE HILL', None, '36.93490', '-84.08070'), ('MYRICK', None, '36.80620', '-83.84110'), ('NORTH CORBIN', 1662, '36.96650', '-84.09470'), ('OLD FLAT LICK', None, '36.83840', '-83.77100'), ('PERMON', None, '36.81010', '-83.98280'), ('PROVIDENCE', 3611, '36.86700', '-83.90930'), ('ROSSLAND', None, '36.92680', '-83.98760'), ('SALT GUM', None, '36.94800', '-83.70380'), ('SCALF', None, '36.91850', '-83.70010'), ('SILER', None, '36.94120', '-84.04000'), ('SPRULE', None, '37.01500', '-83.84890'), ('SWAN LAKE', None, '36.82430', '-83.92880'), ('SWANPOND', None, '36.83260', '-83.90170'), ('TEDDERS', None, '37.02000', '-83.87870'), ('TROSPER', None, '36.78750', '-83.81590'), ('WALKER', None, '36.88280', '-83.71580'), ('WARREN', None, '36.75260', '-83.84440'), ('WHEELER', None, '36.72520', '-83.84320'), ('WILTON', None, '36.88840', '-84.04390'), ('WOOLLUM', None, '37.02090', '-83.81780'), ('YEAGER', None, '36.87400', '-83.83130')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYC123': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ATHERTONVILLE', None, '37.63330', '-85.60000'), ('BUFFALO', None, '37.51670', '-85.70000'), ('GLEANINGS', None, '37.55000', '-85.53330'), ('HODGENVILLE', 2874, '37.56810', '-85.73570'), ('LYONS', None, '37.68330', '-85.61670'), ('MAGNOLIA', None, '37.45000', '-85.75000'), ('TONNIEVILLE', None, '37.60000', '-85.80000'), ('UPTON', 654, '37.46460', '-85.89000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYC125': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ATLANTA', None, '37.23250', '-84.04940'), ('BALDROCK', None, '36.99030', '-84.28360'), ('BERNSTADT', None, '37.15610', '-84.19470'), ('BLACKWATER', None, '37.05310', '-83.89500'), ('BROCK', None, '37.10970', '-84.00000'), ('BUNCH', None, '37.09860', '-84.23640'), ('CAMP WILDCAT', None, '37.26490', '-84.20080'), ('CANE CREEK', None, '37.05580', '-83.92280'), ('CARMICHAEL', None, '37.18690', '-84.13870'), ('CRUISE', None, '37.31830', '-84.12310'), ('DILLON', None, '37.26030', '-84.22710'), ('DORTHAE', None, '36.99330', '-84.10470'), ('EAST BERNSTADT', 774, '37.18940', '-84.11830'), ('FARISTON', None, '37.07000', '-84.05670'), ('GREENMOUNT', None, '37.24750', '-84.03080'), ('HARE', None, '37.20430', '-84.15990'), ('HAZEL PATCH', None, '37.24440', '-84.19310'), ('HIGHTOP', None, '37.03280', '-84.18780'), ('HOLLY BAY RECREATIONAL AR', None, '36.98460', '-84.25040'), ('HUXLEY', None, '36.95470', '-84.34310'), ('KEAVY', None, '37.00120', '-84.16560'), ('LAKE', None, '37.08940', '-83.88560'), ('LAMERO', None, '37.29010', '-84.14070'), ('LESBAS', None, '37.07890', '-83.99560'), ('LEVI JACKSON WILDERNESS R', None, '37.08150', '-84.04130'), ('LIDA', None, '37.08220', '-83.93470'), ('LILY', None, '37.02380', '-84.07550'), ('LONDON', 5692, '37.12800', '-84.08220'), ('LONDON-CORBIN AIRPORT', None, '37.08680', '-84.07710'), ('LYNN CAMP', None, '36.99380', '-84.00900'), ('MAPLESVILLE', None, '37.15000', '-84.02780'), ('MARYDELL', None, '37.10920', '-83.90890'), ('MCHARGUE', None, '37.00530', '-84.01750'), ('MCWHORTER', None, '37.23420', '-84.00000'), ('MERSHONS', None, '37.28310', '-84.12580'), ('OAKLEY', None, '37.23830', '-84.09780'), ('PITTSBURG', None, '37.16070', '-84.10770'), ('ROCKCASTLE SPRINGS', None, '37.01640', '-84.30450'), ('SASSER', None, '37.07140', '-83.89110'), ('SUBLIMITY CITY', None, '37.10020', '-84.08630'), ('TEMPLER', None, '37.30230', '-84.12390'), ('TUTTLE', None, '37.02000', '-83.95000'), ('VICTORY', None, '37.25640', '-84.09700'), ('VOX', None, '36.98640', '-84.19920'), ('WOOD CREEK LAKE', None, '37.20330', '-84.18970')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'TXC113': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADDISON', 14166, '32.96120', '-96.83720'), ('BALCH SPRINGS', 19375, '32.71880', '-96.61620'), ('BUCKINGHAM', None, '32.93410', '-96.72500'), ('CARROLLTON', 109576, '32.98810', '-96.89670'), ('CEDAR HILL', 32093, '32.58030', '-96.95760'), ('COCKRELL HILL', 4443, '32.73860', '-96.88890'), ('COPPELL', 35958, '32.96290', '-96.99050'), ('DALLAS', 1188580, '32.79420', '-96.76520'), ('DESOTO', 37646, '32.59920', '-96.86250'), ('DUNCANVILLE', 36081, '32.64590', '-96.91350'), ('FARMERS BRANCH', 27508, '32.92680', '-96.87890'), ('GARLAND', 215768, '32.91080', '-96.62930'), ('GRAND PRAIRIE', 127427, '32.69220', '-97.01670'), ('HIGHLAND PARK', 8842, '32.83150', '-96.80080'), ('HUTCHINS', 2805, '32.64370', '-96.70730'), ('IRVING', 191615, '32.85770', '-96.96930'), ('LANCASTER', 25894, '32.59560', '-96.78100'), ('MESQUITE', 124523, '32.76900', '-96.59980'), ('RICHARDSON', 91802, '32.97280', '-96.70980'), ('ROWLETT', 44503, '32.90810', '-96.55000'), ('SACHSE', 9751, '32.97460', '-96.58080'), ('SEAGOVILLE', 10823, '32.65670', '-96.54650'), ('SUNNYVALE', 2693, '32.79930', '-96.55830'), ('UNIVERSITY PARK', 23324, '32.85010', '-96.79310'), ('WILMER', 3393, '32.59880', '-96.68420')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'WAC021': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CONNELL', 2956, '46.66000', '-118.86100'), ('KAHLOTUS', 214, '46.64360', '-118.55240'), ('MESA', 425, '46.57320', '-118.99960'), ('PASCO', 32066, '46.25210', '-119.12780'), ('WEST PASCO', 4629, '46.24560', '-119.18170')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PDT'}, -'KYC129': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AIREDALE', None, '37.60250', '-83.63940'), ('ARVEL', None, '37.51830', '-83.88530'), ('ATHOL', None, '37.55250', '-83.57280'), ('BANFORD', None, '37.51350', '-83.82060'), ('BEATTYVILLE', 1193, '37.58020', '-83.70720'), ('BELLE POINT', None, '37.56250', '-83.74810'), ('CANYON FALLS', None, '37.57640', '-83.57750'), ('CARYTON', None, '37.54400', '-83.77770'), ('CORGLETON', None, '37.55260', '-83.71240'), ('CRESSMONT', None, '37.53080', '-83.79500'), ('CRYSTAL', None, '37.66300', '-83.82570'), ('CRYSTAL', None, '37.65640', '-83.81370'), ('DELVINTA', None, '37.50080', '-83.79390'), ('EARNESTVILLE', None, '37.49400', '-83.82930'), ('ENOCH', None, '37.54330', '-83.67560'), ('EVELYN', None, '37.61310', '-83.86050'), ('FILLMORE', None, '37.60410', '-83.55000'), ('FINCASTLE', 825, '37.64850', '-83.64540'), ('FIXER', None, '37.67810', '-83.71830'), ('GREELEY', None, '37.67640', '-83.75310'), ('HEIDELBERG', None, '37.55520', '-83.77890'), ('IDA MAY', None, '37.52110', '-83.76630'), ('LEECO', None, '37.71040', '-83.69430'), ('LONE', None, '37.53000', '-83.60390'), ('LOWER BUFFALO', None, '37.52780', '-83.68780'), ('MALONEY', None, '37.58020', '-83.67800'), ('MONICA', None, '37.58240', '-83.60010'), ('MOUNT OLIVE', None, '37.61400', '-83.73040'), ('OLD LANDING', None, '37.63730', '-83.80290'), ('OLD ORCHARD', None, '37.52280', '-83.88980'), ('PINNACLE', None, '37.62110', '-83.81750'), ('PRIMROSE', None, '37.60220', '-83.60860'), ('PROCTOR', None, '37.57000', '-83.71390'), ('ST. HELENS', None, '37.58280', '-83.64720'), ('STANDING ROCK', None, '37.71440', '-83.70390'), ('TALLEGA', None, '37.55950', '-83.59270'), ('UNION', 2893, '37.63010', '-83.59690'), ('VADA', None, '37.62230', '-83.59130'), ('WHITE ASH', None, '37.55910', '-83.73520'), ('WHYNOT', None, '37.64180', '-83.78590'), ('WILLIBA', None, '37.62280', '-83.57010'), ('WILLOW SHOALS', None, '37.59130', '-83.81340'), ('YELLOW ROCK', None, '37.57080', '-83.80500'), ('ZACHARIAH', None, '37.70490', '-83.68370'), ('ZOE', None, '37.68120', '-83.68320')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'WAC023': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('DODGE', None, '46.52170', '-117.81920'), ('MAYVIEW', None, '46.62530', '-117.45880'), ('PEOLA', None, '46.30550', '-117.47580'), ('POMEROY', 1517, '46.47400', '-117.59550')], 'partOfState': 'SOUTHEAST', 'wfo': 'OTX'}, -'VAC770': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ROANOKE', 94911, '37.27840', '-79.95840'), ('VINTON', 7782, '37.28330', '-79.90000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'WAC025': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BEVERLY', None, '46.83550', '-119.92580'), ('COULEE CITY', 600, '47.61190', '-119.28980'), ('DESERT AIRE', 1124, '46.67430', '-119.90970'), ('ELECTRIC CITY', 922, '47.93020', '-119.03620'), ('EPHRATA', 6808, '47.31230', '-119.53690'), ('GEORGE', 528, '47.07860', '-119.85600'), ('GRAND COULEE', 897, '47.93960', '-119.00390'), ('HARTLINE', 134, '47.68940', '-119.10590'), ('KRUPP', 60, '47.40990', '-118.98780'), ('LAVEVIEW PARK', None, '47.37270', '-119.50400'), ('MARLIN', None, '47.40450', '-118.98370'), ('MATTAWA', 2609, '46.73650', '-119.90080'), ('MOSES LAKE', 14953, '47.11570', '-119.28620'), ('QUINCY', 5044, '47.23380', '-119.85110'), ('ROYAL CITY', 1823, '46.89890', '-119.61410'), ('SOAP LAKE', 1733, '47.38830', '-119.48970'), ('STRATFORD', None, '47.42300', '-119.41900'), ('WARDEN', 2544, '46.96790', '-119.04700'), ('WILSON CREEK', 227, '47.42260', '-119.11570'), ('WINCHESTER', None, '47.24280', '-119.71780')], 'partOfState': 'CENTRAL', 'wfo': 'OTX'}, -'WAC027': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ABERDEEN', 16461, '46.97700', '-123.80840'), ('CENTRAL PARK', 2558, '46.97060', '-123.70150'), ('CHEHALIS VILLAGE', 346, '46.80360', '-123.16790'), ('COSMOPOLIS', 1595, '46.95550', '-123.76980'), ('ELMA', 3049, '47.00510', '-123.40090'), ('HOQUIAM', 9097, '46.97540', '-123.88660'), ('MCCLEARY', 1454, '47.05530', '-123.26760'), ('MONTESANO', 3312, '47.01460', '-123.58390'), ('OAKVILLE', 675, '46.84040', '-123.23360'), ('OCEAN SHORES', 3836, '46.97110', '-124.15230'), ('WESTPORT', 2137, '46.89200', '-124.11100')], 'partOfState': '', 'wfo': 'SEW'}, -'VAC199': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARLOWS CORNER', None, '37.35900', '-76.71670'), ('CAMP PEARY', None, '37.32150', '-76.66370'), ('DARE', None, '37.16900', '-76.43830'), ('GRAFTON', None, '37.16570', '-76.46680'), ('HARRIS GROVE', None, '37.19417', '-76.48222'), ('HORNSBYVILLE', None, '37.19640', '-76.46860'), ('LACKEY', None, '37.23210', '-76.54790'), ('OAKTREE', None, '37.33330', '-76.70500'), ('QUEENS LAKE', None, '37.29028', '-76.65806'), ('SEAFORD', None, '37.19790', '-76.43240'), ('SKIMINO', None, '37.34690', '-76.70500'), ('TABB', None, '37.13010', '-76.45730'), ('U.S. NAVAL WEAPONS STATIO', None, '37.26770', '-76.57510'), ('WATER COUNTRY U.S.A.', None, '37.26200', '-76.63850'), ('YORK TERRACE', None, '37.26280', '-76.66170'), ('YORKTOWN', 203, '37.23450', '-76.50720')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC193': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('COLES POINT', None, '38.14850', '-76.63750'), ('COLONIAL BEACH', 3228, '38.25480', '-76.97070'), ('CURRIOMAN LANDING', None, '38.15400', '-76.76500'), ('ERICA', None, '38.11830', '-76.67920'), ('HAGUE', None, '38.07230', '-76.65180'), ('KINSALE', None, '38.02990', '-76.57890'), ('KREMLIN', None, '38.02940', '-76.69170'), ('LEEDSTOWN', None, '38.11160', '-76.99890'), ('LERTY', None, '38.14200', '-76.86710'), ('MONTROSS', 315, '38.09310', '-76.82280'), ('MOUNT HOLLY', None, '38.09110', '-76.71850'), ('OAK GROVE', None, '38.18170', '-76.99740'), ('OLDHAMS', None, '38.00250', '-76.66920'), ('PEEDS', None, '38.10060', '-76.92280'), ('POTOMAC BEACH', None, '38.27280', '-77.00010'), ('POTOMAC MILLS', None, '38.16330', '-76.94130'), ('SANDY POINT', None, '38.06060', '-76.53360'), ('STRATFORD HALL', None, '38.14380', '-76.83560'), ('TEMPLEMAN', None, '38.07060', '-76.77530'), ('THREEWAY', None, '37.99280', '-76.69900'), ('WESTMORELAND', None, '38.06410', '-76.55910'), ('WESTMORELAND STATE PARK', None, '38.16210', '-76.86530')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'VAC191': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ABINGDON', 7780, '36.70890', '-81.96930'), ('BENHAMS', None, '36.67690', '-82.21940'), ('DAMASCUS', 981, '36.63280', '-81.78930'), ('EMORY-MEADOW VIEW', 2266, '36.77320', '-81.84640'), ('GLADE SPRING', 1374, '36.79040', '-81.77210'), ('HILANDER PARK', None, '36.77560', '-82.08420'), ('HOLSTON', None, '36.77560', '-82.08420'), ('KONNAROCK', None, '36.66420', '-81.63940'), ('LINDELL', None, '36.80280', '-81.90170')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'VAC197': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('COLEMAN STORE', None, '36.88330', '-80.98330'), ('CRIPPLE CREEK', None, '36.81670', '-81.10000'), ('CROCKETT', None, '36.88330', '-81.18330'), ('FAVONIA', None, '36.96670', '-81.18330'), ('GRAHAMS FORGE', None, '36.93330', '-80.86670'), ('GUNTON PARK', None, '37.00000', '-80.88330'), ('IVANHOE', None, '36.83330', '-80.95000'), ('MAX MEADOWS', 512, '36.96670', '-80.93330'), ('PATTERSON', None, '36.88330', '-80.78330'), ('RURAL RETREAT', 1350, '36.90000', '-81.26670'), ('SPEEDWELL', None, '36.81670', '-81.16670'), ('WYTHEVILLE', 7804, '36.95000', '-81.08330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAC195': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('APPALACHIA', 1839, '36.90880', '-82.78700'), ('BIG STONE GAP', 4856, '36.86000', '-82.77790'), ('COEBURN', 1996, '36.94570', '-82.46930'), ('PARDEE', None, '37.00530', '-82.75250'), ('POUND', 1089, '37.12470', '-82.60750'), ('WISE', 3255, '36.97730', '-82.58040')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'WYC045': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BUCKHORN', None, '44.15000', '-104.10000'), ('CLARETON', None, '43.70000', '-104.68330'), ('CLIFTON', None, '43.63330', '-104.10000'), ('FOUR CORNERS', None, '44.08330', '-104.13330'), ('HAMPSHIRE', None, '43.58330', '-104.71670'), ('MORRISEY', None, '43.53330', '-104.40000'), ('NEWCASTLE', 3065, '43.84490', '-104.18050'), ('OSAGE', 215, '43.98000', '-104.42020'), ('PEDRO', None, '43.90830', '-104.33780'), ('ROCHELLE', None, '43.58680', '-105.00300'), ('THORNTON', None, '44.16670', '-104.73330'), ('UPTON', 872, '44.10210', '-104.62810')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'WYC043': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BIG TRAILS', None, '43.77000', '-107.32000'), ('TEN SLEEP', 304, '44.03470', '-107.44740'), ('WINCHESTER', 60, '43.86000', '-108.16000'), ('WORLAND', 5250, '44.00540', '-107.95800')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RIW'}, -'LAC119': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('COTTON VALLEY', 1189, '32.81270', '-93.42300'), ('CULLEN', 1296, '32.97010', '-93.44630'), ('DIXIE INN', 352, '32.59400', '-93.33500'), ('DOYLINE', 841, '32.51890', '-93.41590'), ('DUBBERLY', 290, '32.53950', '-93.23760'), ('HEFLIN', 245, '32.45790', '-93.26740'), ('MINDEN', 13027, '32.61660', '-93.28080'), ('SAREPTA', 925, '32.89520', '-93.45140'), ('SHONGALOO', 162, '32.94040', '-93.29380'), ('SIBLEY', 1098, '32.54370', '-93.29410'), ('SPRINGHILL', 5439, '33.00210', '-93.46130')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'WYC041': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALMY', None, '41.33000', '-111.00000'), ('ALTAMONT', None, '41.20000', '-110.80000'), ('CARTER', 8, '41.43000', '-110.43000'), ('CHURCH BUTTES', None, '41.42000', '-110.08000'), ('EVANSTON', 11507, '41.26500', '-110.97500'), ('FT BRIDGER', None, '41.32000', '-110.38000'), ('LEROY', None, '41.32000', '-110.62000'), ('LONETREE', 61, '41.05000', '-110.15000'), ('LYMAN', 1938, '41.32780', '-110.30030'), ('MILLBURNE', None, '41.25000', '-110.42000'), ('MILLIS', None, '41.22000', '-110.92000'), ('PIEDMONT', None, '41.23000', '-110.65000'), ('RAGEN', None, '41.27000', '-110.68000'), ('ROBERTSON', 59, '41.18000', '-110.42000')], 'partOfState': 'SOUTHWEST', 'wfo': 'SLC'}, -'LAC115': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ANACOCO', 866, '31.25570', '-93.34390'), ('BURR FERRY', None, '31.06600', '-93.49600'), ('EVANS', None, '30.98890', '-93.50190'), ('FORT POLK', None, '31.04640', '-93.20530'), ('HORNBECK', 435, '31.32670', '-93.39620'), ('KURTHWOOD', None, '31.33800', '-93.16500'), ('LACAMP', None, '31.16400', '-92.91500'), ('LEESVILLE', 6753, '31.13740', '-93.27480'), ('NEW LLANO', 2415, '31.11280', '-93.27910'), ('PICKERING', None, '31.03390', '-93.27060'), ('PITKIN', None, '30.93610', '-92.93610'), ('ROSEPINE', 1390, '30.91940', '-93.28430'), ('SIMPSON', 583, '31.25580', '-93.01840'), ('SLAGLE', None, '31.20220', '-93.12720')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LCH'}, -'LAC117': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ANGIE', 240, '30.96390', '-89.81580'), ('BOGALUSA', 13365, '30.78270', '-89.86410'), ('ENON', None, '30.72670', '-90.08420'), ('FRANKLINTON', 3657, '30.84880', '-90.14360'), ('MOUNT HERMAN', None, '30.96000', '-90.29580'), ('VARNADO', 342, '30.89470', '-89.83160')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'AKC201': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANNETTE', None, '55.04210', '-131.58580'), ('CRAIG', 1397, '55.48280', '-133.12320'), ('DORA BAY', None, '55.18900', '-132.29520'), ('EDNA BAY', 49, '55.95390', '-133.65070'), ('HOLLIS', 139, '55.55670', '-132.63630'), ('HYDER', 97, '55.98040', '-130.05870'), ('KASAAN', 39, '55.54670', '-132.40410'), ('KLAWOCK', 854, '55.55380', '-133.09100'), ('METLAKATLA', 1375, '55.12460', '-131.58060'), ('MEYERS CHUCK', 21, '55.71490', '-132.22300'), ('NAUKATI BAY', 135, '55.87370', '-133.18480'), ('POLK INLET', None, '55.34970', '-132.54590'), ('PORT PROTECTION', 63, '56.31710', '-133.59810'), ('THORNE BAY', 557, '55.65920', '-132.52470'), ('WHALE PASS', 58, '56.10320', '-133.17270')], 'partOfState': '', 'wfo': 'AJK'}, -'LAC111': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BERNICE', 1809, '32.82730', '-92.65920'), ('FARMERVILLE', 3808, '32.77390', '-92.40050'), ('LILLIE', 139, '32.92020', '-92.66140'), ('MARION', 806, '32.89980', '-92.23950'), ('SPEARSVILLE', 155, '32.93540', '-92.60390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAC113': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ABBEVILLE', 11887, '29.97420', '-92.12360'), ('DELCAMBRE', 2168, '29.95010', '-91.98960'), ('ERATH', 2187, '29.95820', '-92.03750'), ('FORKED ISLAND', None, '29.83140', '-92.30000'), ('GUEYDAN', 1598, '30.02890', '-92.50850'), ('HENRY', None, '29.88310', '-92.07830'), ('INTRACOASTAL CITY', None, '29.78420', '-92.15610'), ('KAPLAN', 5177, '30.00340', '-92.28430'), ('MAURICE', 642, '30.10620', '-92.12390'), ('MEAUX', None, '30.02060', '-92.18250'), ('PECAN ISLAND', None, '29.64640', '-92.45310')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'UTC027': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ABRAHAM', None, '39.40000', '-112.72000'), ('BLACK ROCK', None, '38.72000', '-112.97000'), ('COVE FT', None, '38.60000', '-112.58000'), ('DELTA', 3209, '39.35330', '-112.56570'), ('FILLMORE', 2253, '38.96770', '-112.33680'), ('FLOWELL', None, '38.98000', '-112.43000'), ('GANDY', None, '39.45000', '-113.98000'), ('GARRISON', None, '38.93000', '-114.03000'), ('GREENWOOD', None, '39.12000', '-112.35000'), ('HATTON', None, '38.83000', '-112.47000'), ('HINCKLEY', 698, '39.33240', '-112.67280'), ('HOLDEN', 400, '39.09990', '-112.26890'), ('KANOSH', 485, '38.80460', '-112.43830'), ('LEAMINGTON', 217, '39.53100', '-112.28930'), ('LYNNDYL', 134, '39.50810', '-112.38900'), ('MC CORNICK', None, '39.22000', '-112.42000'), ('MEADOW', 254, '38.88680', '-112.40590'), ('OAK CITY', 650, '39.37610', '-112.33600'), ('SCIPIO', 290, '39.24760', '-112.10200'), ('SUGARVILLE', None, '39.47000', '-112.65000'), ('SUTHERLAND', None, '39.38000', '-112.63000')], 'partOfState': '', 'wfo': 'SLC'}, -'UTC025': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ALTON', 134, '37.43880', '-112.48320'), ('BIG WATER', 417, '37.06850', '-111.66160'), ('BULLFROG', None, '37.50000', '-110.72000'), ('GLENDALE', 355, '37.33210', '-112.60070'), ('KANAB', 3564, '37.03500', '-112.52000'), ('MT CARMEL', None, '37.23000', '-112.67000'), ('ORDERVILLE', 596, '37.27620', '-112.63260')], 'partOfState': '', 'wfo': 'SLC'}, -'AKC020': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANCHORAGE', 260283, '61.17840', '-149.18640')], 'partOfState': '', 'wfo': 'AFC'}, -'UTC021': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BRIAN HEAD', 118, '37.69840', '-112.84170'), ('CEDAR CITY', 20527, '37.67500', '-113.07000'), ('ENOCH', 3467, '37.76220', '-113.04200'), ('HAMILTON FT', None, '37.63000', '-113.13000'), ('KANARRAVILLE', 311, '37.53750', '-113.17940'), ('LUND', None, '38.00000', '-113.43000'), ('MODENA', None, '37.80000', '-113.92000'), ('NEWCASTLE', None, '37.67000', '-113.55000'), ('PARAGONAH', 470, '37.88690', '-112.77160'), ('PAROWAN', 2565, '37.83220', '-112.82010'), ('SUMMIT', None, '37.82000', '-112.97000')], 'partOfState': '', 'wfo': 'SLC'}, -'ORC071': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('AMITY', 1478, '45.11570', '-123.20310'), ('CARLTON', 1514, '45.29500', '-123.17500'), ('DAYTON', 2119, '45.22050', '-123.07660'), ('DUNDEE', 2598, '45.27650', '-123.00590'), ('GRANDE RONDE INDIAN RESER', None, '45.15000', '-123.63000'), ('LAFAYETTE', 2586, '45.24610', '-123.11040'), ('MCMINNVILLE', 26499, '45.21120', '-123.19020'), ('NEWBERG', 18064, '45.30100', '-122.97000'), ('PIKE', None, '45.38330', '-123.26660'), ('SHERIDAN', 3570, '45.09540', '-123.39510'), ('UNIONVALE', None, '45.15000', '-123.06660'), ('WHEATLAND', None, '45.08000', '-123.05000'), ('WHITESON', None, '45.15000', '-123.20000'), ('WILLAMINA', 1844, '45.07910', '-123.48350'), ('YAMHILL', 794, '45.34130', '-123.18440')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'UTC029': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CROYDON', None, '41.07000', '-111.52000'), ('DEVILS SLIDE', None, '41.07000', '-111.55000'), ('MORGAN', 2635, '41.04960', '-111.68270'), ('MOUNTAIN GREEN', None, '41.15500', '-111.80000'), ('PETERSON', None, '41.12000', '-111.74500'), ('PORTERSVILLE', None, '40.98000', '-111.68000'), ('RICHVILLE', None, '41.01500', '-111.69500'), ('STODDARD', None, '41.07000', '-111.69400')], 'partOfState': '', 'wfo': 'SLC'}, -'INC069': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ANDREWS', 1290, '40.85950', '-85.60100'), ('HUNTINGTON', 17450, '40.88070', '-85.50560'), ('MOUNT ETNA', 110, '40.74180', '-85.56250'), ('ROANOKE', 1495, '40.96440', '-85.37520'), ('WARREN', 1272, '40.68670', '-85.42340')], 'partOfState': 'NORTHEAST', 'wfo': 'IWX'}, -'INC061': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRADFORD', None, '38.36670', '-86.06670'), ('BRIDGEPORT', None, '38.17000', '-85.92000'), ('BUENA VISTA', None, '38.05000', '-85.98330'), ('BYRNEVILLE', None, '38.33330', '-86.05000'), ('CENTRAL', None, '38.10000', '-86.15000'), ('CENTRAL BARREN', None, '38.36670', '-86.10000'), ('CORYDON', 2715, '38.21270', '-86.12530'), ('CRANDALL', 131, '38.28780', '-86.06580'), ('DEPAUW', None, '38.33330', '-86.21670'), ('DOGWOOD', None, '38.10000', '-86.08330'), ('ELIZABETH', 137, '38.12530', '-85.97480'), ('EVANS LANDING', None, '38.01000', '-86.00000'), ('FRENCHTOWN', None, '38.31670', '-86.21670'), ('HANCOCK CHAPEL', None, '38.38330', '-86.18330'), ('LACONIA', 29, '38.03210', '-86.08530'), ('LANESVILLE', 614, '38.23830', '-85.98480'), ('MAUCKPORT', 83, '38.02430', '-86.20160'), ('NEW AMSTERDAM', 1, '38.10280', '-86.27690'), ('NEW BOSTON', None, '38.01000', '-86.01670'), ('NEW MIDDLETOWN', 77, '38.16340', '-86.05010'), ('NEW SALISBURY', None, '38.31670', '-86.10000'), ('PALMYRA', 633, '38.40820', '-86.11420'), ('RAMSEY', None, '38.31670', '-86.15000'), ('VALLEY CITY', None, '38.10000', '-86.21670'), ('WHITE CLOUD', None, '38.23330', '-86.23330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'INC063': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AMO', 414, '39.68940', '-86.61410'), ('BROWNSBURG', 14520, '39.84160', '-86.39430'), ('CLAYTON', 693, '39.68940', '-86.52360'), ('COATESVILLE', 516, '39.68730', '-86.66920'), ('DANVILLE', 6418, '39.76220', '-86.51980'), ('JAMESTOWN', 886, '39.92740', '-86.62840'), ('LIZTON', 372, '39.88570', '-86.54250'), ('NORTH SALEM', 591, '39.85940', '-86.64450'), ('PITTSBORO', 1588, '39.86730', '-86.46480'), ('PLAINFIELD', 18396, '39.70040', '-86.38790'), ('STILESVILLE', 261, '39.63830', '-86.63230')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'INC065': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOUNTSVILLE', 166, '40.05960', '-85.23890'), ('CADIZ', 161, '39.95050', '-85.48650'), ('DUNREITH', 184, '39.80290', '-85.43690'), ('GREENSBORO', 174, '39.87830', '-85.46300'), ('KENNARD', 455, '39.90430', '-85.51980'), ('KNIGHTSTOWN', 2148, '39.79570', '-85.52830'), ('LEWISVILLE', 395, '39.80590', '-85.35320'), ('MIDDLETOWN', 2488, '40.05950', '-85.54270'), ('MOORELAND', 393, '39.99770', '-85.25170'), ('MOUNT SUMMIT', 313, '40.00320', '-85.38670'), ('NEW CASTLE', 17780, '39.92090', '-85.36490'), ('SHIRLEY', 806, '39.89050', '-85.57980'), ('SPICELAND', 807, '39.83810', '-85.43810'), ('SPRINGPORT', 174, '40.04690', '-85.39290'), ('STRAUGHN', 263, '39.80830', '-85.29040'), ('SULPHUR SPRINGS', 346, '40.00570', '-85.44340')], 'partOfState': 'EAST CENTRAL', 'wfo': 'IND'}, -'INC067': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CONVERSE', 1137, '40.57990', '-85.87790'), ('GALVESTON', 1532, '40.57640', '-86.19170'), ('GREENTOWN', 2546, '40.47850', '-85.96470'), ('INDIAN HEIGHTS', 3274, '40.42500', '-86.11650'), ('KOKOMO', 46113, '40.47550', '-86.13310'), ('RUSSIAVILLE', 1092, '40.41880', '-86.27030')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'SDC129': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AKASKA', 31, '45.33190', '-100.12070'), ('AKASKA', 31, '45.33190', '-100.12070'), ('GLENHAM', 139, '45.53330', '-100.27030'), ('GLENHAM', 139, '45.53330', '-100.27030'), ('INDIAN CREEK REC AREA', None, '45.51860', '-100.38630'), ('INDIAN CREEK REC AREA', None, '45.51860', '-100.38630'), ('JAVA', 197, '45.50360', '-99.88420'), ('JAVA', 197, '45.50360', '-99.88420'), ('LOWRY', 10, '45.31540', '-99.98200'), ('LOWRY', 10, '45.31540', '-99.98200'), ('MOBRIDGE', 3574, '45.54070', '-100.43580'), ('MOBRIDGE', 3574, '45.54070', '-100.43580'), ('SELBY', 736, '45.50470', '-100.03240'), ('SELBY', 736, '45.50470', '-100.03240'), ('SWAN CREEK REC AREA', None, '45.31580', '-100.26390'), ('SWAN CREEK REC AREA', None, '45.31580', '-100.26390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDC121': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ANTELOPE', 867, '43.29830', '-100.61610'), ('HIDDEN TIMBER', None, '43.23100', '-100.42600'), ('LAKEVIEW', None, '43.11290', '-100.74820'), ('LITTLEBURG', None, '43.04640', '-100.44980'), ('MISSION', 904, '43.30650', '-100.66050'), ('OKREEK', None, '43.36670', '-100.38330'), ('OLSONVILLE', None, '43.09040', '-100.59760'), ('PARMELEE', 650, '43.32300', '-101.02130'), ('ROSEBUD', 1557, '43.23240', '-100.85200'), ('SOLDIER CREEK', None, '43.32370', '-100.88760'), ('SPRING CREEK', 136, '43.11670', '-101.01670'), ('ST. FRANCIS', 675, '43.14230', '-100.90200')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'UNR'}, -'SDC123': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CARTER', None, '43.38700', '-100.20670'), ('CLEARFIELD', None, '43.16670', '-100.03330'), ('COLOME', 340, '43.26000', '-99.71570'), ('HAMILL', 11, '43.59640', '-99.67870'), ('IDEAL', None, '43.54420', '-99.90070'), ('JORDAN JUNCTION', None, '43.38750', '-100.02780'), ('KEYAPAHA', None, '43.10000', '-100.13330'), ('MILLBORO', None, '43.06670', '-99.96670'), ('PAXTON', None, '43.08300', '-99.54110'), ('WEWELA', None, '43.01150', '-99.77760'), ('WINNER', 3137, '43.37390', '-99.85870'), ('WITTEN', None, '43.43840', '-100.08600')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'UNR'}, -'SDC125': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CENTERVILLE', 910, '43.11770', '-96.95890'), ('CHANCELLOR', 328, '43.37240', '-96.98740'), ('DAVIS', 104, '43.25830', '-96.99580'), ('DOLTON', 41, '43.49150', '-97.38480'), ('HURLEY', 426, '43.27980', '-97.09030'), ('MARION', 892, '43.42400', '-97.26060'), ('MONROE', 163, '43.48710', '-97.21600'), ('PARKER', 1031, '43.39620', '-97.13840'), ('VIBORG', 832, '43.17120', '-97.08050')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'MIC119': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ATLANTA', 757, '45.00100', '-84.15000'), ('CLEAR LAKE STATE PARK', None, '45.15100', '-84.20220'), ('FLETCHER POND', None, '44.98000', '-83.89000'), ('HETHERTON', None, '45.00000', '-84.36670'), ('HILLMAN', 685, '45.06590', '-83.90060'), ('LEWISTON', 990, '44.88330', '-84.31660'), ('LOCKWOOD LAKE', None, '44.91670', '-84.00000'), ('LONG LAKE', None, '45.13340', '-83.98330')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'SDC127': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALCESTER', 880, '43.02310', '-96.62870'), ('BERESFORD', 2006, '43.07970', '-96.78010'), ('ELK POINT', 1714, '42.68270', '-96.68080'), ('JEFFERSON', 586, '42.60350', '-96.56140'), ('NORTH SIOUX CITY', 2288, '42.53660', '-96.50210')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'IAC117': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHARITON', 4573, '41.01760', '-93.30990'), ('DERBY', 131, '40.92990', '-93.45670'), ('LUCAS', 243, '41.03170', '-93.46030'), ('RUSSELL', 559, '40.98040', '-93.20080'), ('WILLIAMSON', 163, '41.08790', '-93.25670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'NDC041': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BENTLEY', None, '46.33330', '-102.06670'), ('BURT', None, '46.36670', '-102.15000'), ('MOTT', 808, '46.37470', '-102.31810'), ('NEW ENGLAND', 555, '46.54090', '-102.86670'), ('REGENT', 211, '46.42270', '-102.55760')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'ILC039': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CLINTON', 7485, '40.15030', '-88.96160'), ('DE WITT', 188, '40.18440', '-88.78590'), ('FARMER CITY', 2055, '40.24440', '-88.64120'), ('HALLSVILLE', None, '40.15000', '-89.10000'), ('KENNEY', 374, '40.09830', '-89.08610'), ('LANE', None, '40.13500', '-88.85000'), ('ROWELL', None, '40.06670', '-89.03330'), ('WAPELLA', 651, '40.22130', '-88.96170'), ('WAYNESVILLE', 452, '40.24090', '-89.12500'), ('WELDON', 440, '40.12150', '-88.75060')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILC031': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALSIP', 19725, '41.67030', '-87.73580'), ('ARLINGTON HEIGHTS', 76031, '42.09490', '-87.98200'), ('BARRINGTON', 10168, '42.15180', '-88.12920'), ('BARRINGTON HILLS', 3915, '42.13370', '-88.21120'), ('BEDFORD PARK', 574, '41.76980', '-87.79800'), ('BELLWOOD', 20535, '41.88290', '-87.87630'), ('BERKELEY', 5245, '41.88840', '-87.91230'), ('BERWYN', 54016, '41.84240', '-87.79100'), ('BLUE ISLAND', 23463, '41.65840', '-87.68140'), ('BRIDGEPORT', 2168, '41.80000', '-87.67000'), ('BRIDGEVIEW', 15335, '41.73880', '-87.80590'), ('BROADVIEW', 8264, '41.85800', '-87.85590'), ('BROOKFIELD', 19085, '41.82430', '-87.84780'), ('BURBANK', 27902, '41.74410', '-87.76900'), ('BURNHAM', 4170, '41.63820', '-87.54120'), ('BURR RIDGE', 10408, '41.75090', '-87.92060'), ('CALUMET CITY', 39071, '41.61180', '-87.54950'), ('CALUMET PARK', 8516, '41.66410', '-87.65640'), ('CHATHAM', 8583, '41.73000', '-87.62000'), ('CHICAGO', 2896016, '41.88000', '-87.63000'), ('CHICAGO HEIGHTS', 32776, '41.50990', '-87.63760'), ('CHICAGO RIDGE', 14127, '41.70240', '-87.77860'), ('CICERO', 85616, '41.84430', '-87.75990'), ('COUNTRY CLUB HILLS', 16169, '41.56320', '-87.72530'), ('COUNTRYSIDE', 5991, '41.77660', '-87.87660'), ('CRESTWOOD', 11251, '41.64520', '-87.74030'), ('DES PLAINES', 58720, '42.03460', '-87.90090'), ('DIXMOOR', 3934, '41.63190', '-87.66800'), ('DOLTON', 25614, '41.62930', '-87.59870'), ('DOUGLAS PARK', None, '41.85000', '-87.68000'), ('EAST HAZEL CREST', 1607, '41.57630', '-87.64970'), ('ELK GROVE VILLAGE', 34727, '42.00570', '-87.99260'), ('ELMWOOD PARK', 25405, '41.92240', '-87.81650'), ('ENGLEWOOD', None, '41.77000', '-87.68000'), ('EVANSTON', 74239, '42.04630', '-87.69450'), ('EVERGREEN PARK', 20821, '41.72110', '-87.70110'), ('FLOSSMOOR', 9301, '41.53930', '-87.68420'), ('FORD HEIGHTS', 3456, '41.50960', '-87.58900'), ('FOREST PARK', 15688, '41.86910', '-87.81480'), ('FOREST VIEW', 778, '41.80660', '-87.78100'), ('FRANKLIN PARK', 19434, '41.93540', '-87.87820'), ('GLENCOE', 8762, '42.13460', '-87.76340'), ('GLENVIEW', 41847, '42.07960', '-87.81520'), ('GLENWOOD', 9000, '41.54610', '-87.61700'), ('GOLF', 451, '42.05880', '-87.78650'), ('HARVEY', 30000, '41.60730', '-87.65190'), ('HARWOOD HEIGHTS', 8297, '41.96610', '-87.80550'), ('HAZEL CREST', 14816, '41.57230', '-87.68940'), ('HICKORY HILLS', 13926, '41.72380', '-87.82820'), ('HILLSIDE', 8155, '41.87100', '-87.89860'), ('HODGKINS', 2134, '41.77080', '-87.85630'), ('HOFFMAN ESTATES', 49495, '42.06450', '-88.13830'), ('HOMETOWN', 4467, '41.73220', '-87.73130'), ('HOMEWOOD', 19543, '41.55840', '-87.66110'), ('HUMBOLDT PARK', None, '41.90000', '-87.70000'), ('HYDE PARK', None, '41.79000', '-87.59000'), ('INDIAN HEAD PARK', 3685, '41.76760', '-87.89750'), ('INVERNESS', 6749, '42.11510', '-88.10080'), ('JUSTICE', 12193, '41.74640', '-87.83550'), ('KENILWORTH', 2494, '42.08890', '-87.71490'), ('LA GRANGE', 15608, '41.80790', '-87.87340'), ('LA GRANGE PARK', 13295, '41.83160', '-87.87160'), ('LAKEVIEW', None, '41.94000', '-87.65000'), ('LANSING', 28332, '41.56750', '-87.54570'), ('LEMONT', 13098, '41.67010', '-87.99150'), ('LINCOLN PARK', None, '41.93000', '-87.63950'), ('LINCOLNWOOD', 12359, '42.00590', '-87.73280'), ('LOGAN SQUARE', None, '41.93000', '-87.71000'), ('LYNWOOD', 7377, '41.52640', '-87.54200'), ('LYONS', 10255, '41.81170', '-87.81860'), ('MARKHAM', 12620, '41.59920', '-87.69120'), ('MATTESON', 12928, '41.51100', '-87.73750'), ('MAYWOOD', 26987, '41.88020', '-87.84450'), ('MCCOOK', 254, '41.79280', '-87.83580'), ('MELROSE PARK', 23171, '41.90310', '-87.86340'), ('MERRIONETTE PARK', 1999, '41.68030', '-87.69970'), ('MIDLOTHIAN', 14315, '41.62630', '-87.72430'), ('MIDWAY AIRPORT', None, '41.78300', '-87.75000'), ('MORTON GROVE', 22451, '42.04230', '-87.78900'), ('MOUNT PROSPECT', 56265, '42.06540', '-87.93750'), ('MONTROSE HARBOR', None, '41.96000', '-87.64000'), ('NAVY PIER', None, '41.89000', '-87.62000'), ('NILES', 30068, '42.02690', '-87.80950'), ('NORRIDGE', 14582, '41.96500', '-87.82250'), ('NORTH RIVERSIDE', 6688, '41.84750', '-87.82490'), ('NORTHBROOK', 33435, '42.12970', '-87.83290'), ('NORTHFIELD', 5389, '42.10060', '-87.77870'), ('NORTHLAKE', 11878, '41.91370', '-87.90390'), ('OAK FOREST', 28051, '41.60650', '-87.75260'), ('OAK LAWN', 55245, '41.71500', '-87.75210'), ('OAK PARK', 52524, '41.88760', '-87.78950'), ('OHARE AIRPORT', None, '41.98330', '-87.90000'), ('OLYMPIA FIELDS', 4732, '41.51740', '-87.69290'), ('ORLAND HILLS', 6779, '41.59260', '-87.84280'), ('ORLAND PARK', 51077, '41.61050', '-87.85070'), ('PALATINE', 65479, '42.11250', '-88.04300'), ('PALOS HEIGHTS', 11260, '41.66530', '-87.79710'), ('PALOS HILLS', 17665, '41.69760', '-87.82610'), ('PALOS PARK', 4689, '41.66450', '-87.84430'), ('PARK FOREST', 23462, '41.48230', '-87.68700'), ('PARK RIDGE', 37775, '42.01170', '-87.84400'), ('PHOENIX', 2157, '41.61230', '-87.63050'), ('POSEN', 4730, '41.62820', '-87.68570'), ('PROSPECT HEIGHTS', 17081, '42.10240', '-87.92470'), ('RICHTON PARK', 12533, '41.48190', '-87.72830'), ('RIVER FOREST', 11635, '41.89480', '-87.81900'), ('RIVER GROVE', 10668, '41.92400', '-87.83760'), ('RIVERDALE', 15055, '41.64460', '-87.63470'), ('RIVERSIDE', 8895, '41.83080', '-87.81590'), ('ROBBINS', 6635, '41.64290', '-87.70810'), ('ROGERS PARK', None, '42.01000', '-87.67000'), ('ROLLING MEADOWS', 24604, '42.07500', '-88.02500'), ('ROSEMONT', 4224, '41.98910', '-87.87150'), ('SAUK VILLAGE', 10411, '41.48850', '-87.56560'), ('SCHAUMBURG', 75386, '42.03300', '-88.08340'), ('SCHILLER PARK', 11850, '41.95980', '-87.87000'), ('SKOKIE', 63348, '42.03710', '-87.73990'), ('SOUTH BARRINGTON', 3760, '42.08720', '-88.15300'), ('SOUTH CHICAGO', None, '41.74000', '-87.55000'), ('SOUTH CHICAGO HEIGHTS', 3970, '41.48330', '-87.63740'), ('SOUTH HOLLAND', 22147, '41.59750', '-87.60120'), ('STICKNEY', 6148, '41.81800', '-87.77280'), ('STONE PARK', 5127, '41.90430', '-87.88040'), ('STREAMWOOD', 36407, '42.02060', '-88.17330'), ('SUMMIT', 10637, '41.78480', '-87.81620'), ('THORNTON', 2582, '41.57400', '-87.61880'), ('TINLEY PARK', 48401, '41.57480', '-87.80040'), ('WESTCHESTER', 16824, '41.85090', '-87.88710'), ('WESTERN SPRINGS', 12493, '41.80340', '-87.90080'), ('WHEELING', 34496, '42.13050', '-87.92360'), ('WILLOW SPRINGS', 5027, '41.73350', '-87.88240'), ('WILMETTE', 27651, '42.07720', '-87.72860'), ('WINNETKA', 12419, '42.10650', '-87.74270'), ('WORTH', 11047, '41.68730', '-87.79260')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ILC033': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ANNAPOLIS', None, '39.15000', '-87.81670'), ('BELLAIR', None, '39.15000', '-87.95000'), ('EATON', None, '39.08330', '-87.80000'), ('FLAT ROCK', 415, '38.90440', '-87.67250'), ('HARDINVILLE', None, '38.91670', '-87.83330'), ('HUTSONVILLE', 568, '39.10870', '-87.66060'), ('NEW HEBRON', None, '38.95000', '-87.74000'), ('OBLONG', 1580, '39.00220', '-87.90840'), ('PALESTINE', 1366, '39.00220', '-87.61210'), ('ROBINSON', 6822, '39.00790', '-87.74050'), ('STOY', 119, '38.99680', '-87.83340'), ('WEST YORK', None, '39.17000', '-87.67250')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILC035': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('GREENUP', 1532, '39.24780', '-88.15990'), ('HAZEL DELL', None, '39.20000', '-88.05000'), ('JANESVILLE', None, '39.36670', '-88.25000'), ('JEWETT', 232, '39.20770', '-88.24280'), ('NEOGA', 1854, '39.32160', '-88.45150'), ('TOLEDO', 1166, '39.27430', '-88.24270'), ('UNION CENTER', None, '39.33620', '-88.06670'), ('WOODBURY', None, '39.20000', '-88.31670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILC037': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CORTLAND', 2066, '41.92730', '-88.69440'), ('DE KALB', None, '41.93060', '-88.75190'), ('GENOA', 4169, '42.09760', '-88.68990'), ('HINCKLEY', 1994, '41.76970', '-88.64180'), ('KINGSTON', 980, '42.09920', '-88.75690'), ('KIRKLAND', 1166, '42.09220', '-88.85460'), ('LEE', 313, '41.79400', '-88.94020'), ('MALTA', 969, '41.93020', '-88.86310'), ('SANDWICH', 6509, '41.64660', '-88.62310'), ('SHABBONA', 929, '41.76490', '-88.87640'), ('SYCAMORE', 12020, '41.98170', '-88.69580'), ('WATERMAN', 1224, '41.76940', '-88.77320')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'NVC009': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BOUNDARY PEAK', None, '37.85000', '-118.35000'), ('COALDALE', None, '38.03330', '-117.87500'), ('DYER', None, '37.61660', '-118.03100'), ('GOLD POINT', None, '37.35500', '-117.36330'), ('GOLDFIELD', None, '37.70000', '-117.23330'), ('LIDA', None, '37.45830', '-117.49660'), ('LIDA JUNCTION', None, '37.50000', '-117.18750'), ('SILVER PEAK', None, '37.76670', '-117.46660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'VEF'}, -'SCC019': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ADAMS RUN', None, '32.72060', '-80.34830'), ('AWENDAW', 1195, '33.03750', '-79.61330'), ('BAPTIST HILL', None, '32.73310', '-80.26890'), ('BATTERY POINT', None, '32.74280', '-79.94920'), ('BENNETT', None, '32.86190', '-80.02580'), ('BERRY HILL', None, '32.77560', '-80.17280'), ('BUCK HALL', None, '33.05310', '-79.56000'), ('CAPWELLS CROSSROADS', None, '32.77920', '-80.26860'), ('CENTERVILLE', 5181, '32.73330', '-79.96660'), ('CENTERVILLE', 5181, '32.99560', '-80.17060'), ('CHANDLER', None, '32.90440', '-79.73580'), ('CHARLESTON', 96650, '32.78330', '-79.93750'), ('CHARLESTON AIRPORT', None, '32.89870', '-80.04050'), ('CITADEL MALL', None, '32.79670', '-80.04000'), ('DEWEES ISLAND', None, '32.85000', '-79.71670'), ('EDISTO ISLAND', None, '32.56000', '-80.28000'), ('FENWICK CROSSROADS', None, '32.72060', '-80.08250'), ('FOLLY BEACH', 2116, '32.65500', '-79.94060'), ('FORT MOULTRIE', None, '32.75890', '-79.85810'), ('FREEDMAN', None, '32.53640', '-80.29500'), ('GERMANTOWN', None, '33.19530', '-79.44750'), ('HANAHAN', 12937, '32.91830', '-80.02220'), ('HOBCAW POINT', None, '32.82000', '-79.89420'), ('HOLLYWOOD', 3946, '32.73420', '-80.24190'), ('HUSKUM CORNER CROSS ROADS', None, '32.67500', '-80.05060'), ('JAMES ISLAND', None, '32.73330', '-79.93330'), ('JERICHO', None, '32.75890', '-80.31670'), ('JOHNS ISLAND', None, '32.72500', '-80.07500'), ('JOSHUA', None, '32.85390', '-80.01440'), ('KIAWAH ISLAND', 1163, '32.60810', '-80.08500'), ('LADSON', 13264, '32.98560', '-80.11000'), ('LAMBS', None, '32.88640', '-80.06810'), ('LEGAREVILLE', None, '32.65470', '-80.05310'), ('LINCOLNVILLE', 904, '33.00670', '-80.15560'), ('MARYVILLE', None, '32.79220', '-79.99530'), ('MCCALLS CORNER', None, '32.73140', '-79.96530'), ('MCCLELLANVILLE', 459, '33.08810', '-79.46140'), ('MEGGETT', 1230, '32.71780', '-80.23920'), ('MIDLAND PARK', None, '32.92060', '-80.04080'), ('MOUNT PLEASANT', 47609, '32.79390', '-79.86280'), ('MYERS', None, '32.81670', '-79.95060'), ('NORTH CHARLESTON', 79641, '32.85440', '-79.97500'), ('NORTHWOODS MALL', None, '32.94080', '-80.04580'), ('OAKLAND', 1272, '32.78530', '-80.03530'), ('OSBORN', None, '32.75560', '-80.34640'), ('OTRANTO', None, '32.96500', '-80.04440'), ('PARKERS FERRY', None, '32.76000', '-80.39640'), ('PHILIP', None, '32.88750', '-79.81420'), ('PINELAND', None, '33.04330', '-79.58750'), ('RANTOWLES', None, '32.78280', '-80.14890'), ('RAVENEL', 2214, '32.76310', '-80.25030'), ('RED TOP', None, '32.80250', '-80.12280'), ('REMLEYS POINT', None, '32.80970', '-79.89390'), ('ROCKVILLE', 137, '32.60060', '-80.19500'), ('SAINT ANDREWS', None, '32.78330', '-79.98330'), ('SCANLONVILLE', None, '32.81170', '-79.89780'), ('SEABROOK ISLAND', 1250, '32.57690', '-80.17080'), ('SEASIDE', None, '32.71140', '-79.94170'), ('SECESSIONVILLE', None, '32.70560', '-79.93940'), ('SHADOWMOSS', None, '32.85000', '-80.07500'), ('SNOWDEN', None, '32.84140', '-79.84670'), ('SOUTH SANTEE', None, '33.17330', '-79.41780'), ('SOUTH WINDERMERE', None, '32.77580', '-79.98030'), ('STILES POINT', None, '32.73920', '-79.92360'), ('STONO', None, '32.73000', '-79.98250'), ('SULLIVANS ISLAND', None, '32.76310', '-79.83690'), ('THOMPSON CORNER', None, '33.12690', '-79.58470'), ('WADMALAW ISLAND', None, '32.68330', '-80.16670'), ('WAMBAW CORNER', None, '33.19530', '-79.46330'), ('WEST ASHLEY', None, '32.80000', '-80.01000'), ('WHITEHALL TERRACE', None, '32.87330', '-79.74860'), ('WILD DUNES', None, '32.80000', '-79.73330'), ('WILDWOOD', None, '32.91140', '-80.03580'), ('WILSONVILLE', None, '32.91390', '-80.04310'), ('YONGES ISLAND', None, '32.69330', '-80.23080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'MOC189': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AFFTON', 20535, '38.54950', '-90.32890'), ('BALLWIN', 31283, '38.59410', '-90.55240'), ('BEL-RIDGE', 3082, '38.71410', '-90.32790'), ('BELLEFONTAINE NEIGHBORS', 11271, '38.75200', '-90.22690'), ('BERKELEY', 10063, '38.74330', '-90.33560'), ('BEVERLY HILLS', 603, '38.69770', '-90.29040'), ('BLACK JACK', 6792, '38.79810', '-90.26360'), ('BRENTWOOD', 7693, '38.61910', '-90.34860'), ('BRIDGETON', 15550, '38.76630', '-90.42650'), ('CHESTERFIELD', 46802, '38.65430', '-90.58120'), ('CLARKSON VALLEY', 2675, '38.62500', '-90.59410'), ('CLAYTON', 12825, '38.64430', '-90.32860'), ('COOL VALLEY', 1081, '38.72480', '-90.30480'), ('CRESTWOOD', 11863, '38.55560', '-90.38160'), ('CREVE COEUR', 16500, '38.66050', '-90.43550'), ('DELLWOOD', 5255, '38.75520', '-90.27770'), ('DES PERES', 8592, '38.59600', '-90.44720'), ('ELLISVILLE', 9104, '38.58910', '-90.58600'), ('EUREKA', 7676, '38.50290', '-90.64270'), ('FENTON', 4360, '38.53610', '-90.45140'), ('FERGUSON', 22406, '38.74880', '-90.29580'), ('FLORISSANT', 50497, '38.79740', '-90.32430'), ('FRONTENAC', 3483, '38.63080', '-90.41600'), ('GLENDALE', 5767, '38.59300', '-90.38120'), ('GREENDALE', 722, '38.69150', '-90.31220'), ('HAZELWOOD', 26206, '38.77770', '-90.35960'), ('HILLSDALE', 1477, '38.68510', '-90.28850'), ('JENNINGS', 15469, '38.72360', '-90.26450'), ('KINLOCH', 449, '38.73810', '-90.32530'), ('KIRKWOOD', 27324, '38.58040', '-90.42010'), ('LADUE', 8645, '38.63680', '-90.38160'), ('LAKESHIRE', 1375, '38.54130', '-90.33700'), ('LEMAY', 17215, '38.53180', '-90.28390'), ('MANCHESTER', 19161, '38.59260', '-90.51480'), ('MAPLEWOOD', 9228, '38.61210', '-90.32430'), ('MARYLAND HEIGHTS', 25756, '38.72250', '-90.47740'), ('MEHLVILLE', 28822, '38.50110', '-90.31570'), ('NORMANDY', 5153, '38.70770', '-90.30040'), ('NORTHWOODS', 4643, '38.70320', '-90.28220'), ('OAKLAND', 1540, '38.57580', '-90.38440'), ('OAKVILLE', 35309, '38.44410', '-90.31690'), ('OLIVETTE', 7438, '38.67230', '-90.37720'), ('OVERLAND', 16838, '38.69600', '-90.36820'), ('PEERLESS PARK', None, '38.54240', '-90.50110'), ('RICHMOND HEIGHTS', 9602, '38.63020', '-90.33170'), ('RIVERVIEW', 3146, '38.74930', '-90.21430'), ('SHREWSBURY', 6644, '38.58700', '-90.32790'), ('SPANISH LAKE', 21337, '38.78690', '-90.20770'), ('ST. ANN', 13607, '38.72590', '-90.38780'), ('ST. JOHN', 6871, '38.71450', '-90.34610'), ('SUNSET HILLS', 8267, '38.53730', '-90.41630'), ('TOWN AND COUNTRY', 10894, '38.62470', '-90.47630'), ('UNIVERSITY CITY', 37428, '38.66620', '-90.33110'), ('UPLANDS PARK', 460, '38.69270', '-90.28250'), ('VALLEY PARK', 6518, '38.55450', '-90.48240'), ('WARSON WOODS', 1983, '38.60690', '-90.39150'), ('WEBSTER GROVES', 23230, '38.58560', '-90.35460'), ('WILDWOOD', 32884, '38.58280', '-90.66280'), ('WOODSON TERRACE', 4189, '38.72840', '-90.36010')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'NVC003': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BIG BEND RAWS', None, '35.11660', '-114.70000'), ('BLACK MTN', None, '35.93330', '-115.04160'), ('BOULDER BEACH', None, '36.04330', '-114.81000'), ('BOULDER CITY', 14966, '35.98300', '-114.83000'), ('BUNKERVILLE', 1014, '36.78000', '-114.10990'), ('CAL NEV ARI', None, '35.31660', '-114.88660'), ('CALLVILLE BAY', None, '36.13330', '-114.72880'), ('COTTONWOOD COVE', None, '35.48330', '-114.69000'), ('DOWNTOWN LAS VEGAS', None, '36.17300', '-115.14600'), ('EAST LAS VEGAS', None, '36.09650', '-115.04350'), ('ECHO BAY', None, '36.31660', '-114.41110'), ('FRENCHMAN MTN', None, '36.17750', '-114.99600'), ('GASS PK', None, '36.40000', '-115.17830'), ('GOODSPRINGS', 232, '35.83330', '-115.43330'), ('GREEN VALLEY', None, '36.05700', '-115.08000'), ('HAYFORD PK', None, '36.65830', '-115.19910'), ('HENDERSON', 175381, '36.03370', '-115.00240'), ('HENDERSON EXECUTIVE AIRPO', None, '35.98950', '-115.13200'), ('HOOVER DAM', None, '36.01660', '-114.73830'), ('INDIAN SPRINGS', 1302, '36.57080', '-115.66660'), ('JEAN', None, '35.77660', '-115.33330'), ('LAS VEGAS BAY', None, '36.11000', '-114.86000'), ('LAUGHLIN', 7076, '35.15730', '-114.57900'), ('LOGANDALE', None, '36.61660', '-114.48330'), ('LONE MTN', None, '36.23920', '-115.31250'), ('MESQUITE', 9389, '36.79100', '-114.07250'), ('MOAPA', None, '36.66660', '-114.61660'), ('MOUNTAIN SPRINGS', None, '36.02330', '-115.00750'), ('MT. CHARLESTON', None, '36.28330', '-115.61660'), ('MT. POTOSI', None, '35.96670', '-115.50000'), ('NELLIS AFB', 8896, '36.24440', '-115.05380'), ('NORTH LAS VEGAS', 115488, '36.26780', '-115.14420'), ('NWS LAS VEGAS', None, '36.05000', '-115.19160'), ('OVERTON', None, '36.53330', '-114.45000'), ('OVERTON BEACH', None, '36.44000', '-114.36440'), ('PRIMM', None, '35.61660', '-115.39330'), ('RAILROAD PASS', None, '35.98330', '-114.91650'), ('RED ROCK CANYON', None, '36.14000', '-115.45330'), ("SAM'S TOWN", None, '36.11250', '-115.05500'), ('SANDY VALLEY', 1804, '35.80000', '-115.60000'), ('SEARCHLIGHT', 576, '35.46330', '-114.91660'), ('SLOAN', None, '35.94080', '-115.20500'), ('SPRING MOUNTAIN RANCH', None, '36.07330', '-115.45000'), ('SPRING VALLEY', 117390, '36.10830', '-115.24160'), ('STRATOSPHERE TOWER', None, '36.14660', '-115.15830'), ('SUMMERLIN', None, '36.20600', '-115.30500'), ('SUNRISE MTN', None, '36.22660', '-114.97500'), ('THE LAKES', None, '36.14200', '-115.29000'), ('THE SILVER BOWL', None, '36.08880', '-115.02250'), ('THE STRIP', None, '36.11660', '-115.17500'), ('UNLV', None, '36.10500', '-115.14000'), ('VALLEY OF FIRE STATE PARK', None, '36.43330', '-114.51660')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, -'MOC187': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BISMARCK', 1470, '37.76740', '-90.62270'), ('BLACKWELL', None, '38.04370', '-90.62400'), ('BONNE TERRE', 4039, '37.92270', '-90.54980'), ('DESLOGE', 4802, '37.87380', '-90.52070'), ('DOE RUN', None, '37.74290', '-90.50370'), ('FARMINGTON', 13924, '37.78000', '-90.42590'), ('FRANKCLAY', None, '37.86180', '-90.61510'), ('FRENCH VILLAGE', None, '37.97260', '-90.38980'), ('IRON MOUNTAIN', None, '37.69540', '-90.64040'), ('KNOB LICK', None, '37.68300', '-90.38300'), ('LEADINGTON', 206, '37.83430', '-90.48160'), ('LEADWOOD', 1160, '37.86220', '-90.58940'), ('LIBERTYVILLE', None, '37.70370', '-90.28820'), ('PARK HILLS', 7861, '37.84930', '-90.52660')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'NVC001': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('COLD SPRINGS', 3834, '39.41000', '-117.84000'), ('DIXIE VALLEY', None, '39.57000', '-118.08000'), ('FALLON', 7536, '39.47580', '-118.77780'), ('FALLON STATION', 1265, '39.41860', '-118.72010'), ('FRENCHMAN', None, '39.28000', '-118.27000'), ('HAZEN', None, '39.57000', '-119.05000'), ('LAHONTAN RESERVOIR', None, '39.46000', '-119.07000'), ('MIDDLEGATE', None, '39.29000', '-118.03000'), ('SAND MOUNTAIN', None, '39.31000', '-118.40000'), ('STILLWATER', None, '39.52000', '-118.55000'), ('TRINITY JUNCTION', None, '39.94000', '-118.75000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'REV'}, -'MOC185': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('APPLETON CITY', 1314, '38.19050', '-94.02910'), ('COLLINS', 176, '37.89100', '-93.62270'), ('GERSTER', 35, '37.95330', '-93.57540'), ('HARPER', None, '38.06250', '-93.51820'), ('ICONIUM', None, '38.10580', '-93.54440'), ('JOHNSON CITY', None, '38.11680', '-93.92770'), ('LOWRY CITY', 728, '38.13990', '-93.72660'), ('MONEGAW SPRINGS', None, '38.02910', '-93.83880'), ('OSCEOLA', 835, '38.04660', '-93.70410'), ('ROSCOE', 112, '37.97270', '-93.81190'), ('TABERVILLE', None, '38.00830', '-93.99440'), ('TIFFIN', None, '37.95500', '-93.93800'), ('VISTA', 55, '37.98830', '-93.66380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SGF'}, -'NVC007': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('CARLIN', 2161, '40.71720', '-116.11270'), ('CHARLESTON', None, '41.66670', '-115.53330'), ('CLOVER VALLEY', None, '40.84940', '-115.03170'), ('CONTACT', None, '41.77060', '-114.75280'), ('CURRIE', None, '40.26670', '-114.75000'), ('DEETH', None, '41.06610', '-115.27110'), ('ELKO', 16708, '40.83870', '-115.76070'), ('GIBBS RANCH', None, '41.56970', '-115.21220'), ('JACKPOT', None, '41.98670', '-114.67440'), ('JARBIDGE', None, '41.88330', '-115.41670'), ('JIGGS', None, '40.41800', '-115.66600'), ('LAMOILLE', None, '40.74470', '-115.48610'), ('LEE', None, '40.55050', '-115.57150'), ('MIDAS', None, '41.25000', '-116.81670'), ('MONTELLO', None, '41.26100', '-114.18550'), ('MOUNTAIN CITY', None, '41.83900', '-115.96100'), ('OASIS', None, '41.03140', '-114.47280'), ('OWYHEE', 1017, '41.94200', '-116.09600'), ('PEQUOP SUMMIT', None, '41.07510', '-114.55800'), ('RUBY LAKE', None, '40.20280', '-115.49270'), ('RUBY VALLEY', None, '40.78110', '-115.18580'), ('RYNDON', None, '40.95280', '-115.60750'), ('SOUTH FORK', None, '40.67580', '-115.74470'), ('SPRING CREEK', 10548, '40.73850', '-115.59590'), ('TUSCARORA', None, '41.31610', '-116.22440'), ('WELLS', 1346, '41.11440', '-114.94810'), ('WEST WENDOVER', 4721, '40.76770', '-114.11550')], 'partOfState': 'NORTHEAST', 'wfo': 'LKN'}, -'MOC183': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AUGUSTA', 218, '38.57290', '-90.88280'), ('COTTLEVILLE', 1928, '38.75400', '-90.65380'), ('DARDENNE PRAIRIE', 4384, '38.75430', '-90.73210'), ('DEFIANCE', None, '38.63300', '-90.78300'), ('FLINT HILL', 379, '38.85350', '-90.86350'), ('FORISTELL', 331, '38.81850', '-90.95990'), ('HARVESTER', None, '38.74970', '-90.57920'), ('KAMPVILLE', None, '38.85240', '-90.54730'), ('LAKE ST. LOUIS', 10169, '38.78900', '-90.78280'), ('MATSON', None, '38.60820', '-90.79710'), ('NEW MELLE', 124, '38.71020', '-90.88030'), ("O'FALLON", 46169, '38.78430', '-90.70790'), ('ORCHARD FARMS', None, '38.87980', '-90.44600'), ('PORTAGE DES SIOUX', 351, '38.92610', '-90.34190'), ('ST. CHARLES', 60321, '38.79060', '-90.51640'), ('ST. PAUL', 1634, '38.84990', '-90.73660'), ('ST. PETERS', 51381, '38.77850', '-90.60530'), ('WELDON SPRING', 5270, '38.71650', '-90.64900'), ('WENTZVILLE', 6896, '38.81340', '-90.85950'), ('WEST ALTON', 573, '38.86280', '-90.22380')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'NVC005': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('HEAVENLY VALLEY', None, '38.96000', '-119.89000'), ('TOPAZ LAKE', None, '38.69000', '-119.54900'), ('DAGGET PASS', None, '38.98000', '-119.89000'), ('GARDNERVILLE', 3357, '38.93930', '-119.73590'), ('GARDNERVILLE RANCHOS', 11054, '38.88820', '-119.74020'), ('GENOA', None, '39.00000', '-119.85000'), ('GLENBROOK', None, '39.09000', '-119.94000'), ('HOLBROOK JUNCTION', None, '38.73000', '-119.55000'), ('INDIAN HILLS', 4407, '39.08600', '-119.78300'), ('JOHNSON LANE', 4837, '39.04800', '-119.72120'), ('KINGSBURY', 2624, '38.97590', '-119.88210'), ('MINDEN', 2836, '38.96050', '-119.77220'), ('SPOONER SUMMIT', None, '39.10000', '-119.90000'), ('STATELINE', 1215, '38.96000', '-119.94000'), ('ZEPHYR COVE', None, '39.00000', '-119.96000')], 'partOfState': '', 'wfo': 'REV'}, -'MOC181': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRIAR', None, '36.64350', '-90.96120'), ('DONIPHAN', 1932, '36.62290', '-90.82200'), ('GATEWOOD', None, '36.56290', '-91.07400'), ('NAYLOR', 610, '36.57400', '-90.60530')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'SDC055': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALLEMAN STATION', None, '44.69260', '-101.21310'), ('BILLSBURG', None, '44.40000', '-101.68330'), ('FOUR CORNER BRIDGE', None, '44.52190', '-101.99120'), ('GRINDSTONE', None, '44.14170', '-101.96590'), ('HILLAND', None, '44.28330', '-101.85000'), ('KIRLEY', None, '44.52420', '-101.31160'), ('MIDLAND', 179, '44.07240', '-101.15230'), ('MILESVILLE', None, '44.46670', '-101.68330'), ('NOWLIN', None, '44.04920', '-101.30250'), ('OTTUMWA', None, '44.23380', '-101.34100'), ('PHILIP', 885, '44.04580', '-101.66550'), ('POWELL', None, '44.05000', '-101.50000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDC057': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRYANT', 396, '44.58990', '-97.46740'), ('BRYANT', 396, '44.58990', '-97.46740'), ('CASTLEWOOD', 666, '44.72430', '-97.03070'), ('CASTLEWOOD', 666, '44.72430', '-97.03070'), ('ESTELLINE', 675, '44.57620', '-96.90010'), ('ESTELLINE', 675, '44.57620', '-96.90010'), ('HAYTI', 367, '44.65660', '-97.20400'), ('HAYTI', 367, '44.65660', '-97.20400'), ('HAZEL', 105, '44.75800', '-97.38010'), ('HAZEL', 105, '44.75800', '-97.38010'), ('LAKE NORDEN', 432, '44.57910', '-97.20800'), ('LAKE NORDEN', 432, '44.57910', '-97.20800'), ('STONE BRIDGE', None, '44.60280', '-97.05570'), ('STONE BRIDGE', None, '44.60280', '-97.05570'), ('THOMAS', None, '44.76080', '-97.20950'), ('THOMAS', None, '44.76080', '-97.20950')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDC051': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALBEE', 10, '45.05130', '-96.55430'), ('ALBEE', 10, '45.05130', '-96.55430'), ('BIG STONE CITY', 605, '45.29520', '-96.46440'), ('BIG STONE CITY', 605, '45.29520', '-96.46440'), ('LA BOLT', 86, '45.05000', '-96.67420'), ('LA BOLT', 86, '45.05000', '-96.67420'), ('MARVIN', 66, '45.26090', '-96.91250'), ('MARVIN', 66, '45.26090', '-96.91250'), ('MILBANK', 3640, '45.21960', '-96.63480'), ('MILBANK', 3640, '45.21960', '-96.63480'), ('REVILLO', 147, '45.01460', '-96.57030'), ('REVILLO', 147, '45.01460', '-96.57030'), ('STOCKHOLM', 105, '45.10250', '-96.79840'), ('STOCKHOLM', 105, '45.10250', '-96.79840'), ('STRANDBURG', 69, '45.04330', '-96.76100'), ('STRANDBURG', 69, '45.04330', '-96.76100'), ('TROY', None, '45.03490', '-96.86720'), ('TROY', None, '45.03490', '-96.86720'), ('TWIN BROOKS', 55, '45.20770', '-96.78690'), ('TWIN BROOKS', 55, '45.20770', '-96.78690')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDC053': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BONESTEEL', 297, '43.07810', '-98.94680'), ('BURKE', 676, '43.18300', '-99.29250'), ('DALLAS', 144, '43.23790', '-99.51770'), ('DIXON', None, '43.38320', '-99.47390'), ('FAIRFAX', 123, '43.02810', '-98.88900'), ('GREGORY', 1342, '43.23180', '-99.42510'), ('HERRICK', 105, '43.11540', '-99.18720')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FSD'}, -'GAC125': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EDGE HILL', 30, '33.15290', '-82.62680'), ('GIBSON', 694, '33.23260', '-82.59540'), ('MITCHELL', 173, '33.21900', '-82.70310')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'SDC059': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AMES', None, '44.26910', '-99.08470'), ('AMES', None, '44.26910', '-99.08470'), ('BURDETTE', None, '44.70730', '-98.81000'), ('BURDETTE', None, '44.70730', '-98.81000'), ('DANFORTH', None, '44.25420', '-98.88330'), ('DANFORTH', None, '44.25420', '-98.88330'), ('MILLER', 1530, '44.52000', '-98.98770'), ('MILLER', 1530, '44.52000', '-98.98770'), ('MILLER DALE COLONY', None, '44.39990', '-99.11280'), ('MILLER DALE COLONY', None, '44.39990', '-99.11280'), ('POLO', None, '44.77960', '-99.10960'), ('POLO', None, '44.77960', '-99.10960'), ('REE HEIGHTS', 85, '44.51610', '-99.20040'), ('REE HEIGHTS', 85, '44.51610', '-99.20040'), ('SAINT LAWRENCE', None, '44.51700', '-98.94000'), ('SAINT LAWRENCE', None, '44.51700', '-98.94000'), ('VAYLAND', None, '44.49250', '-98.79880'), ('VAYLAND', None, '44.49250', '-98.79880')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'MEC029': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ADDISON', None, '45.08860', '-67.46890'), ('ALEXANDER', None, '45.08860', '-67.46890'), ('BROOKTON', None, '45.52970', '-67.76610'), ('CENTERVILLE', None, '44.70560', '-67.67940'), ('CHARLOTTE', None, '45.02110', '-67.24580'), ('CHERRYFIELD', None, '44.60720', '-67.92640'), ('CODYVILLE', None, '45.43970', '-67.69470'), ('COLUMBIA', None, '44.65810', '-67.77500'), ('COLUMBIA FALLS', None, '44.65360', '-67.72810'), ('COOPER', None, '44.95940', '-67.44030'), ('CRAWFORD', None, '45.05280', '-67.55190'), ('DANFORTH', None, '45.66030', '-67.86890'), ('DEBLOIS', None, '44.74140', '-68.01530'), ('DENNYSVILLE', None, '44.90360', '-67.22920'), ('EAST MACHIAS', None, '44.73920', '-67.39060'), ('EASTPORT', 1640, '44.90610', '-66.99060'), ('EATON', None, '45.60530', '-67.80610'), ('EDMUNDS', None, '44.87190', '-67.16470'), ('FOREST', None, '45.57110', '-67.72830'), ('FOREST CITY', None, '45.65970', '-67.73030'), ('GRAND LAKE STREAM', None, '45.17940', '-67.77500'), ('HARRINGTON', None, '44.61920', '-67.81080'), ('JONESBORO', None, '44.66250', '-67.57310'), ('JONESPORT', None, '44.53280', '-67.59890'), ('LAMBERT LAKE', None, '45.54580', '-67.52750'), ('MACHIAS', 1376, '44.71500', '-67.46190'), ('MACHIASPORT', None, '44.69860', '-67.39530'), ('MARION', None, '44.87830', '-67.31750'), ('MARSHFIELD', None, '44.73310', '-67.47810'), ('MEDDYBEMPS', None, '45.03830', '-67.35640'), ('MILLBRIDGE', None, '44.53530', '-67.88140'), ('NORTHFIELD', None, '44.82890', '-67.57110'), ('PEMBROKE', None, '44.95360', '-67.16250'), ('PERRY', None, '44.97500', '-67.07640'), ('PRINCETON', None, '45.22330', '-67.57280'), ('ROQUE BLUFFS', None, '44.61280', '-67.48030'), ('STEUBEN', None, '44.51060', '-67.96580'), ('TOPSFIELD', None, '45.41890', '-67.73610'), ('TRESCOTT', None, '44.76920', '-67.07470'), ('VANCEBORO', None, '45.56330', '-67.43030'), ('WAITE', None, '45.32560', '-67.69080'), ('WESLEY', None, '44.95220', '-67.66140'), ('WHITING', None, '44.79080', '-67.17610'), ('WHITNEYVILLE', None, '44.72190', '-67.52390')], 'partOfState': 'SOUTHEAST', 'wfo': 'CAR'}, -'ILC109': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADAIR', None, '40.41670', '-90.50000'), ('ARGYLE LAKE STATE PARK', None, '40.45000', '-90.78330'), ('BARDOLPH', 253, '40.49680', '-90.56320'), ('BLANDINSVILLE', 777, '40.55470', '-90.86940'), ('BUSHNELL', 3221, '40.55150', '-90.50450'), ('COLCHESTER', 1493, '40.42680', '-90.79300'), ('COLMAR', None, '40.35000', '-90.88330'), ('DODDSVILLE', None, '40.28330', '-90.65000'), ('FANDON', None, '40.36670', '-90.76670'), ('GOOD HOPE', 415, '40.55760', '-90.67490'), ('INDUSTRY', 540, '40.32720', '-90.60800'), ('MACOMB', 18558, '40.47040', '-90.68140'), ('MACOMB MUNICIPAL AIRPORT', None, '40.51670', '-90.65000'), ('NEW PHILADELPHIA', None, '40.48330', '-90.46670'), ('PENNINGTON POINT', None, '40.40000', '-90.55000'), ('PRAIRIE CITY', 461, '40.62060', '-90.46450'), ('PRAIRIE CITY AIRPORT', None, '40.61670', '-90.46670'), ('SCIOTA', 58, '40.56190', '-90.74900'), ('SCOTTSBURG', None, '40.55000', '-90.60000'), ('TENNESSEE', 144, '40.41170', '-90.83590'), ('WALNUT GROVE', None, '40.61670', '-90.56670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'TXC269': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DUMONT', None, '33.80390', '-100.51780'), ('FINNEY', None, '33.77780', '-100.38280'), ('GROW', None, '33.80970', '-100.29830'), ('GUTHRIE', None, '33.62890', '-100.32280')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'SCC013': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ASHDALE', None, '32.44810', '-80.61940'), ('ATTAWAY', None, '32.46750', '-80.63030'), ('BLUFFTON', 1275, '32.23690', '-80.86060'), ('BON AIRE', None, '32.39440', '-80.74330'), ('BREWTON', None, '32.65080', '-80.80610'), ('BRIARS', None, '32.58110', '-80.69940'), ('BRIGHTON BEACH', None, '32.21530', '-80.84860'), ('BURTON', 7180, '32.43560', '-80.72420'), ('CALIBOGUE CAY', None, '32.14830', '-80.79890'), ('CHESTERFIELD', 1318, '32.40140', '-80.76420'), ('CHISOLM', None, '32.53750', '-80.60280'), ('CHISOLMS', None, '32.57560', '-80.67330'), ('COOSAW', None, '32.54500', '-80.77360'), ('DALE', None, '32.55640', '-80.69000'), ('DANIELS', None, '32.47860', '-80.62750'), ('DAUFUSKIE ISLAND', None, '32.12500', '-80.86670'), ('DOWLINGWOOD', None, '32.38580', '-80.73610'), ('FOLLY FIELD', None, '32.20190', '-80.69060'), ('FOREST BEACH', None, '32.14640', '-80.74390'), ('FRIPP ISLAND', None, '32.31670', '-80.46670'), ('FROGMORE', None, '32.39670', '-80.57640'), ('GARDENS CORNER', None, '32.60060', '-80.76140'), ('GRASSLAWN BEACH', None, '32.21080', '-80.68000'), ('HARBORTOWN', None, '32.13330', '-80.81250'), ('HILTON HEAD ISLAND', 33862, '32.21610', '-80.75280'), ('HUNTING ISLAND', None, '32.37500', '-80.44170'), ('LANDS END', None, '32.29170', '-80.64170'), ('LAUREL BAY', 6625, '32.45000', '-80.78500'), ('LAWTON', None, '32.14330', '-80.78860'), ('LOBECO', None, '32.55250', '-80.74360'), ('LONGWOOD', None, '32.32250', '-80.61000'), ('MYRTLE ISLAND', None, '32.21170', '-80.86500'), ('PARRIS ISLAND', 4841, '32.35000', '-80.68330'), ('PORT ROYAL', 3950, '32.37890', '-80.69280'), ('PRITCHARD', None, '32.24390', '-81.00190'), ('PRITCHARDVILLE', None, '32.23780', '-80.96440'), ('RIVER REACH', None, '32.40440', '-80.76810'), ('RIVERDALE', None, '32.37500', '-80.83970'), ('ROSEIDA', None, '32.45310', '-80.73750'), ('SCOTT', None, '32.34640', '-80.62330'), ('SEA PINES', None, '32.13330', '-80.79500'), ('SHELDON', None, '32.60140', '-80.79330'), ('SPRINGFIELD', 504, '32.47920', '-80.63060'), ('TANGLEWOOD', None, '32.40500', '-80.72360'), ('TOMOTLEY', None, '32.63170', '-80.81530'), ('WALLING GROVE', None, '32.49220', '-80.65780'), ('WALSH', None, '32.44250', '-80.71890'), ('WILKINS', None, '32.48470', '-80.60080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'ILC105': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAMPUS', 145, '41.02480', '-88.30790'), ('CHATSWORTH', 1265, '40.75300', '-88.29380'), ('CORNELL', 511, '40.99230', '-88.72970'), ('CULLOM', 563, '40.87790', '-88.26960'), ('DWIGHT', 4363, '41.09700', '-88.42480'), ('EMINGTON', 120, '40.97010', '-88.35740'), ('FAIRBURY', 3968, '40.74660', '-88.51240'), ('FLANAGAN', 1083, '40.87730', '-88.86060'), ('FORREST', 1225, '40.75000', '-88.40990'), ('LONG POINT', 247, '41.00470', '-88.89360'), ('ODELL', 1014, '41.00280', '-88.52280'), ('PONTIAC', 11864, '40.87660', '-88.64180'), ('SAUNEMIN', 456, '40.89290', '-88.40650'), ('STRAWN', 104, '40.65270', '-88.39890')], 'partOfState': 'CENTRAL', 'wfo': 'LOT'}, -'ILC107': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATLANTA', 1649, '40.26220', '-89.23220'), ('BEASON', None, '40.15000', '-89.20000'), ('BROADWELL', 169, '40.06730', '-89.44260'), ('CHESTNUT', None, '40.06670', '-89.20000'), ('CORNLAND', None, '39.94000', '-89.40900'), ('ELKHART', 443, '40.01930', '-89.48180'), ('EMDEN', 515, '40.29770', '-89.48520'), ('HARTSBURG', 358, '40.25070', '-89.44070'), ('LATHAM', 371, '39.96690', '-89.16190'), ('LAWNDALE', None, '40.21670', '-89.28330'), ('LINCOLN', 15369, '40.15060', '-89.36690'), ('MIDDLETOWN', 434, '40.10060', '-89.59130'), ('MOUNT PULASKI', 1701, '40.01010', '-89.28310'), ('NEW HOLLAND', 318, '40.18430', '-89.58250'), ('SAN JOSE', 696, '40.30600', '-89.60340')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILC101': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BILLETT', None, '38.66670', '-87.65000'), ('BIRDS', 51, '38.83750', '-87.67080'), ('BRIDGEPORT', 2168, '38.71000', '-87.75850'), ('CHAUNCEY', None, '38.83330', '-87.86670'), ('HELENA', None, '38.61800', '-87.86670'), ('LAWRENCEVILLE', 4745, '38.72640', '-87.68790'), ('PETROLIA', None, '38.76670', '-87.77500'), ('PINKSTAFF', None, '38.80000', '-87.66670'), ('RUSSELLVILLE', 119, '38.82000', '-87.52930'), ('ST. FRANCISVILLE', 759, '38.59190', '-87.64760'), ('SUMNER', 1022, '38.71710', '-87.86230')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILX'}, -'ILC103': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AMBOY', 2561, '41.71660', '-89.33350'), ('ASHTON', 1142, '41.86810', '-89.22150'), ('COMPTON', 347, '41.69420', '-89.08590'), ('DIXON', 15941, '41.84950', '-89.47880'), ('FRANKLIN GROVE', 1052, '41.84100', '-89.30010'), ('HARMON', 149, '41.71970', '-89.55660'), ('NELSON', 163, '41.79550', '-89.60260'), ('PAW PAW', 852, '41.68790', '-88.98060'), ('STEWARD', 271, '41.84850', '-89.02060'), ('SUBLETTE', 456, '41.64350', '-89.23170'), ('WEST BROOKLYN', 174, '41.69310', '-89.14700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'GAC121': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALPHARETTA', 34854, '34.06890', '-84.27200'), ('ATLANTA', 416474, '33.76290', '-84.42260'), ('COLLEGE PARK', 20382, '33.63910', '-84.45860'), ('EAST POINT', 39595, '33.67070', '-84.46930'), ('FAIRBURN', 5464, '33.56540', '-84.58350'), ('HAPEVILLE', 6180, '33.66110', '-84.40930'), ('PALMETTO', 3400, '33.52610', '-84.66170'), ('ROSWELL', 79334, '34.03740', '-84.35600'), ('SANDY SPRINGS', 85781, '33.93730', '-84.36870'), ('UNION CITY', 11621, '33.57720', '-84.54420')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAC201': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BABCOCK', None, '31.11080', '-84.64180'), ('BELLVIEW', None, '31.15600', '-84.59990'), ('BOYKIN', None, '31.10430', '-84.68680'), ('COLQUITT', 1939, '31.17140', '-84.73420'), ('COOKTOWN', None, '31.20580', '-84.56050'), ('COREA', None, '31.23260', '-84.72740'), ('ENTERPRISE', None, '31.12120', '-84.82580'), ('JETERVILLE', None, '31.24170', '-84.70630'), ('MACEDONIA', None, '31.24580', '-84.66150'), ('MAYHAW', None, '31.17630', '-84.87550'), ('MIMSVILLE', None, '31.25450', '-84.52830')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'NYC045': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ADAMS', 1624, '43.80980', '-76.02250'), ('ADAMS CENTER', 1500, '43.85960', '-75.99760'), ('ALEXANDRIA BAY', 1088, '44.33740', '-75.91770'), ('ANTWERP', 716, '44.19970', '-75.60900'), ('BLACK RIVER', 1285, '44.00960', '-75.79680'), ('CALCIUM', 3346, '44.03470', '-75.84800'), ('CAPE VINCENT', 760, '44.12630', '-76.33100'), ('CARTHAGE', 3721, '43.98480', '-75.60460'), ('CHAUMONT', 592, '44.06530', '-76.13340'), ('CLAYTON', 1821, '44.23570', '-76.08690'), ('DEFERIET', 309, '44.03460', '-75.67970'), ('ELLISBURG', 269, '43.73600', '-76.13380'), ('EVANS MILLS', 605, '44.08780', '-75.80830'), ('FORT DRUM', 12123, '44.05340', '-75.77380'), ('MANNSVILLE', 400, '43.71520', '-76.06660'), ('PHILADELPHIA', 1519, '44.15480', '-75.70940'), ('SACKETS HARBOR', 1386, '43.94160', '-76.12220'), ('THERESA', 812, '44.21480', '-75.79720'), ('WATERTOWN', 26705, '43.97360', '-75.91020'), ('WEST CARTHAGE', 2102, '43.97360', '-75.62170')], 'partOfState': 'CENTRAL', 'wfo': 'BUF'}, -'IAC195': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FERTILE', 360, '43.26490', '-93.42260'), ('GRAFTON', 290, '43.33010', '-93.06990'), ('HANLONTOWN', 229, '43.28090', '-93.37920'), ('JOICE', 231, '43.36430', '-93.45710'), ('KENSETT', 280, '43.35390', '-93.21090'), ('MANLY', 1342, '43.28830', '-93.20170'), ('NORTHWOOD', 2050, '43.44460', '-93.21640')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAC129': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('EMERSON', 480, '41.01850', '-95.40280'), ('GLENWOOD', 5358, '41.04780', '-95.74220'), ('HASTINGS', 214, '41.02390', '-95.49560'), ('HENDERSON', 171, '41.13910', '-95.43100'), ('MALVERN', 1256, '41.00750', '-95.58540'), ('PACIFIC JUNCTION', 507, '41.01830', '-95.79960'), ('SILVER CITY', 259, '41.11100', '-95.63780')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'TXC159': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('MOUNT VERNON', 2286, '33.17270', '-95.22180')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'MIC019': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BENDON', None, '44.64340', '-85.85110'), ('BENZONIA', 519, '44.61650', '-86.09790'), ('BEULAH', 363, '44.62960', '-86.09550'), ('ELBERTA', 457, '44.62140', '-86.22970'), ('FRANKFORT', 1513, '44.63690', '-86.23400'), ('HONOR', 299, '44.66680', '-86.02020'), ('LAKE ANN', 276, '44.72570', '-85.84450'), ('THOMPSONVILLE', 457, '44.52070', '-85.93870')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'GAC129': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CALHOUN', 10667, '34.49450', '-84.94380'), ('FAIRMOUNT', 745, '34.44080', '-84.70130'), ('PLAINVILLE', 257, '34.40410', '-85.03640'), ('RANGER', 85, '34.50010', '-84.71150'), ('RESACA', 815, '34.58190', '-84.94450')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'ARC065': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CALICO ROCK', 991, '36.12830', '-92.13110'), ('FRANKLIN', 184, '36.17140', '-91.77230'), ('GUION', 90, '35.92910', '-91.94010'), ('HORSESHOE BEND', 2278, '36.22330', '-91.74100'), ('MELBOURNE', 1673, '36.06230', '-91.89870'), ('MOUNT PLEASANT', 401, '35.98240', '-91.77770'), ('OXFORD', 642, '36.20730', '-91.91940'), ('PINEVILLE', 246, '36.15770', '-92.10390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARC067': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AMAGON', 95, '35.56240', '-91.11060'), ('BEEDEVILLE', 105, '35.42860', '-91.10890'), ('CAMPBELL STATION', 228, '35.66950', '-91.25440'), ('DIAZ', 1284, '35.64790', '-91.25990'), ('GRUBBS', 438, '35.65270', '-91.07470'), ('JACKSONPORT', 235, '35.64120', '-91.30780'), ('NEWPORT', 7811, '35.62550', '-91.23520'), ('SWIFTON', 871, '35.82420', '-91.12890'), ('TUCKERMAN', 1757, '35.72790', '-91.20060'), ('TUPELO', 177, '35.39150', '-91.22990'), ('WELDON', 100, '35.44750', '-91.23140')], 'partOfState': '', 'wfo': 'LZK'}, -'ARC061': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('DIERKS', 1230, '34.12060', '-94.01880'), ('MINERAL SPRINGS', 1264, '33.87760', '-93.92000'), ('NASHVILLE', 4878, '33.94090', '-93.85160'), ('TOLLETTE', 324, '33.81800', '-93.89610')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'ARC063': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BATESVILLE', 9445, '35.76820', '-91.62230'), ('CUSHMAN', 461, '35.86360', '-91.77860'), ('MAGNESS', 191, '35.70190', '-91.48230'), ('MOOREFIELD', 160, '35.76810', '-91.57100'), ('NEWARK', 1219, '35.70530', '-91.44290'), ('OIL TROUGH', 218, '35.62950', '-91.46120'), ('PLEASANT PLAINS', 267, '35.55060', '-91.62700'), ('SULPHUR ROCK', 421, '35.75100', '-91.49930')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'KSC007': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AETNA', None, '37.08000', '-98.97000'), ('HARDTNER', 199, '37.01430', '-98.64840'), ('HAZELTON', 144, '37.08820', '-98.40130'), ('KIOWA', 1055, '37.01750', '-98.48440'), ('LAKE CITY', None, '37.35000', '-98.81000'), ('MEDICINE LODGE', 2193, '37.28600', '-98.58030'), ('SHARON', 210, '37.25000', '-98.41830'), ('SUN CITY', 81, '37.37850', '-98.91640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'ARC069': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALTHEIMER', 1192, '34.31890', '-91.84620'), ('HUMPHREY', 806, '34.42260', '-91.70230'), ('PINE BLUFF', 55085, '34.21340', '-92.01860'), ('REDFIELD', 1157, '34.44190', '-92.18390'), ('SHERRILL', 126, '34.38470', '-91.95070'), ('WABBASEKA', 323, '34.36030', '-91.79270'), ('WHITE HALL', 4732, '34.27560', '-92.09780')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'SDC071': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BELVIDERE', 57, '43.83420', '-101.27050'), ('CACTUS FLAT', None, '43.84160', '-101.89890'), ('CEDAR PASS', None, '43.75000', '-101.95000'), ('COTTONWOOD', 6, '43.96980', '-101.91140'), ('HISLE', None, '43.40760', '-101.74950'), ('INTERIOR', 77, '43.72630', '-101.98080'), ('KADOKA', 706, '43.83200', '-101.50880'), ('LONG VALLEY', None, '43.46200', '-101.49360'), ('POTATO CREEK', None, '43.53470', '-101.98590'), ('STAMFORD', None, '43.89340', '-101.09520'), ('WANBLEE', 641, '43.56850', '-101.65910'), ('WETA', None, '43.80000', '-101.70000')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'MNC051': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ASHBY', 472, '46.09320', '-95.81610'), ('BARRETT', 355, '45.91070', '-95.89140'), ('ELBOW LAKE', 1275, '45.99180', '-95.97740'), ('ERDAHL', None, '45.99190', '-95.81750'), ('HERMAN', 452, '45.81060', '-96.13990'), ('HOFFMAN', 672, '45.83190', '-95.78590'), ('NORCROSS', 59, '45.86860', '-96.19590'), ('WENDELL', 177, '46.03540', '-96.10100')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGF'}, -'MNC053': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLOOMINGTON', 85172, '44.82950', '-93.31510'), ('BROOKLYN CENTER', 29172, '45.06880', '-93.31780'), ('BROOKLYN PARK', 67388, '45.10960', '-93.35210'), ('CHAMPLIN', 22193, '45.16550', '-93.38920'), ('CORCORAN', 5630, '45.11700', '-93.58630'), ('CRYSTAL', 22698, '45.03730', '-93.35930'), ('DAYTON', 4699, '45.18990', '-93.47170'), ('EDEN PRAIRIE', 54901, '44.84920', '-93.45810'), ('EDINA', 47425, '44.89100', '-93.35960'), ('GOLDEN VALLEY', 20281, '44.98990', '-93.35860'), ('GREENFIELD', 2544, '45.10490', '-93.69640'), ('HANOVER', 1355, '45.15610', '-93.65860'), ('HOPKINS', 17145, '44.92670', '-93.40530'), ('INDEPENDENCE', 3236, '45.02210', '-93.70520'), ('LONG LAKE', 1842, '44.98530', '-93.56880'), ('LORETTO', 570, '45.05540', '-93.63520'), ('MAPLE GROVE', 50365, '45.10600', '-93.46000'), ('MAPLE PLAIN', 2088, '45.00890', '-93.66150'), ('MEDINA', 4005, '45.03120', '-93.59530'), ('MINNEAPOLIS', 382618, '44.96180', '-93.26680'), ('NEW HOPE', 20873, '45.03700', '-93.38700'), ('OSSEO', 2434, '45.11790', '-93.39910'), ('PLYMOUTH', 65894, '45.02430', '-93.46020'), ('RICHFIELD', 34439, '44.87720', '-93.28210'), ('ROBBINSDALE', 14123, '45.02670', '-93.33320'), ('ROCKFORD', 3484, '45.08910', '-93.73560'), ('ROGERS', 3588, '45.19390', '-93.55170'), ('ST BONIFACIUS', None, '44.90490', '-93.74700'), ('ST LOUIS PARK', None, '44.94860', '-93.36490'), ('THE LAKE MINNETONKA AREA', None, '44.93210', '-93.46140')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'OHC059': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANTRIM', None, '40.12000', '-81.35000'), ('BYESVILLE', 2574, '39.96800', '-81.54260'), ('CAMBRIDGE', 11520, '40.02500', '-81.58690'), ('CUMBERLAND', 402, '39.85230', '-81.65860'), ('FAIRVIEW', 81, '40.05890', '-81.23410'), ('KIMBOLTON', 190, '40.15400', '-81.57430'), ('LORE CITY', 305, '39.98400', '-81.45960'), ('OLD WASHINGTON', 265, '40.03740', '-81.44440'), ('PLEASANT CITY', 439, '39.90340', '-81.54470'), ('QUAKER CITY', 563, '39.96910', '-81.29640'), ('SALESVILLE', 154, '39.97340', '-81.33700'), ('SENECAVILLE', 453, '39.93450', '-81.45990')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'MNC057': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AKELEY', 412, '47.00040', '-94.72760'), ('BADOURA', None, '46.86220', '-94.76580'), ('BECIDA', None, '47.35420', '-95.08080'), ('BENEDICT', None, '47.15810', '-94.69030'), ('CHAMBERLAIN', None, '46.90530', '-94.72140'), ('DORSET', None, '46.95640', '-94.95220'), ('EMMAVILLE', None, '47.06560', '-94.98030'), ('GUTHRIE', None, '47.30030', '-94.79080'), ('HUBBARD', None, '46.83670', '-95.01000'), ('KABEKONA', None, '47.23470', '-94.87640'), ('LAKE GEORGE', None, '47.20060', '-94.99330'), ('LAPORTE', 145, '47.21430', '-94.75720'), ('NARY', None, '47.36690', '-94.82310'), ('NEVIS', 364, '46.96530', '-94.83920'), ('PARK RAPIDS', 3276, '46.91750', '-95.06010')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGF'}, -'WAC015': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ARIEL', None, '45.96700', '-122.56700'), ('CARROLLS', None, '46.06700', '-122.85000'), ('CASTLE ROCK', 2130, '46.27290', '-122.90150'), ('COLDWATER LAKE', None, '46.29000', '-122.27000'), ('KALAMA', 1783, '46.01030', '-122.84090'), ('KELSO', 11895, '46.12640', '-122.89140'), ('LAKE MERWIN', None, '45.98000', '-122.50000'), ('LEXINGTON', None, '46.18300', '-122.90000'), ('LONGVIEW', 34660, '46.13330', '-122.93330'), ('OAK POINT', None, '46.18330', '-123.18330'), ('OSTRANDER', None, '46.18330', '-122.88330'), ('PIGEON SPRINGS', None, '46.06000', '-122.62000'), ('ROSE VALLEY', None, '46.10500', '-122.84000'), ('RYDERWOOD', None, '46.37000', '-123.05000'), ('SILVER LAKE', None, '46.29500', '-122.80000'), ('STELLA', None, '46.19000', '-123.10500'), ('TOUTLE', None, '46.33330', '-122.71000'), ('WOODLAND', 3780, '45.91500', '-122.74300'), ('YALE', None, '46.00000', '-122.38300')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'OHC055': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AQUILLA', 372, '41.54600', '-81.17120'), ('BAINBRIDGE', 1012, '41.39340', '-81.33720'), ('BURTON', 1450, '41.47050', '-81.14640'), ('CHARDON', 5156, '41.57910', '-81.20850'), ('CHESTERLAND', 2646, '41.52420', '-81.34300'), ('MIDDLEFIELD', 2233, '41.45910', '-81.07510'), ('SOUTH RUSSELL', 4022, '41.43460', '-81.33280')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHC057': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEAVERCREEK', 37984, '39.72930', '-84.06240'), ('BELLBROOK', 7009, '39.64000', '-84.08560'), ('BOWERSVILLE', 290, '39.58010', '-83.72370'), ('CEDARVILLE', 3828, '39.74490', '-83.81050'), ('CLIFTON', 179, '39.79730', '-83.82570'), ('FAIRBORN', 32052, '39.80450', '-84.01750'), ('JAMESTOWN', 1917, '39.65860', '-83.74000'), ('SHAWNEE HILLS', 2355, '39.65250', '-83.78260'), ('SPRING VALLEY', 510, '39.61020', '-84.00610'), ('WILBERFORCE', 1579, '39.71650', '-83.88360'), ('WRIGHT-PATTERSON AFB', 6656, '39.80160', '-84.07080'), ('XENIA', 24164, '39.68500', '-83.94080'), ('YELLOW SPRINGS', 3761, '39.79960', '-83.89460')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHC051': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ARCHBOLD', 4290, '41.51550', '-84.30440'), ('DELTA', 2930, '41.57410', '-84.00250'), ('FAYETTE', 1340, '41.67270', '-84.32910'), ('LYONS', 559, '41.69960', '-84.07300'), ('METAMORA', 563, '41.71110', '-83.90800'), ('SWANTON', 3307, '41.58380', '-83.89170'), ('WAUSEON', 7091, '41.55350', '-84.14190')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'INC109': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BETHANY', 94, '39.53370', '-86.37890'), ('BROOKLYN', 1545, '39.54260', '-86.37150'), ('LAKE HART', None, '39.56840', '-86.43010'), ('MARTINSVILLE', 11698, '39.42280', '-86.42170'), ('MOORESVILLE', 9273, '39.61590', '-86.37010'), ('PARAGON', 663, '39.39490', '-86.56310')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'OHC053': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHESHIRE', 221, '38.94400', '-82.11220'), ('CROWN CITY', 411, '38.58830', '-82.28970'), ('GALLIPOLIS', 4180, '38.82000', '-82.19150'), ('RIO GRANDE', 915, '38.88170', '-82.37860'), ('VINTON', 324, '38.97740', '-82.34030')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'COC039': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AGATE', None, '39.47000', '-103.95000'), ('CEDAR POINT', None, '39.35000', '-103.81700'), ('ELBERT', None, '39.22000', '-104.53000'), ('ELIZABETH', 1434, '39.36010', '-104.59950'), ('FONDIS', None, '39.22000', '-104.45000'), ('KIOWA', 581, '39.34530', '-104.46100'), ('KUTCH', None, '38.90000', '-103.87000'), ('MATHESON', None, '39.17000', '-103.98000'), ('PONDEROSA PARK', 3112, '39.39730', '-104.63550'), ('SIMLA', 663, '39.14080', '-104.08090')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BOU'}, -'WAC017': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BRIDGEPORT', 2059, '48.00570', '-119.67120'), ('COULEE DAM', 1044, '47.96870', '-118.97440'), ('DOUGLAS', None, '47.61950', '-120.00220'), ('EAST WENATCHEE', 5757, '47.41710', '-120.28830'), ('ELMER CITY', 267, '47.99900', '-118.95240'), ('MANSFIELD', 319, '47.81150', '-119.63700'), ('MOLD', None, '47.73920', '-119.33780'), ('PALISADES', None, '47.41820', '-119.90800'), ('ROCK ISLAND', 863, '47.37180', '-120.13710'), ('WATERVILLE', 1163, '47.64800', '-120.06950'), ('WITHROW', None, '47.70300', '-119.80450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'COC031': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('DENVER', 554636, '39.76800', '-104.87270'), ('DENVER INTERNATIONAL AIRP', None, '39.86500', '-104.67300'), ('GLENDALE', 4547, '39.70410', '-104.93460')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC033': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CAHONE', None, '37.65000', '-108.82000'), ('DOVE CREEK', 698, '37.76600', '-108.90520'), ('DUNTON', None, '37.77000', '-108.10000'), ('RICO', 205, '37.68800', '-108.03100')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COC035': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ACRES GREEN', 3205, '39.55800', '-104.89600'), ('BEVERLY HILLS', None, '39.47500', '-104.87500'), ('CASTLE ROCK', 20224, '39.37890', '-104.85130'), ('CASTLEWOOD CANYON', None, '39.34500', '-104.76500'), ("DEVIL'S HEAD", None, '39.26000', '-105.10300'), ('FRANKTOWN', 99, '39.38000', '-104.75000'), ('GATEWAY', None, '39.54930', '-104.90550'), ('GRANDVIEW ESTATES', None, '39.54600', '-104.81900'), ('GREENLAND', None, '39.15000', '-104.83000'), ('HIGHLANDS RANCH', 70931, '39.55400', '-104.96890'), ('KASSLER', None, '39.48000', '-105.08000'), ('LARKSPUR', 234, '39.18160', '-104.89600'), ('LOUVIERS', 237, '39.47000', '-105.00000'), ('PARKER', 23558, '39.50960', '-104.76380'), ('PERRY PARK', 1180, '39.26000', '-104.98300'), ('ROXBOROUGH PARK', 4446, '39.44200', '-105.07400'), ('SEDALIA', 211, '39.43000', '-104.97000'), ('SHAMBALLA', None, '39.37000', '-105.00000'), ('SILVER HEIGHTS', None, '39.41800', '-104.86700'), ('SPRUCEWOOD', None, '39.34900', '-105.12400'), ('SURREY RIDGE', None, '39.50000', '-104.87800'), ('THE PINERY', 7253, '39.45520', '-104.73390'), ('WESTCREEK', 105, '39.15000', '-105.17000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COC037': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AVON', 5561, '39.65250', '-106.53310'), ('BASALT', 2681, '39.36670', '-107.02700'), ('BOND', None, '39.87000', '-106.70000'), ('BURNS', None, '39.87000', '-106.88000'), ('DOTSERO', None, '39.65000', '-107.05000'), ('DOWD', None, '39.60000', '-106.45000'), ('EAGLE', 3032, '39.65560', '-106.82540'), ('EAGLE-VAIL', 2887, '39.62200', '-106.48910'), ('EDWARDS', 8257, '39.65000', '-106.60000'), ('EL JEBEL', 4488, '39.39980', '-107.08910'), ('EMMA', None, '39.39000', '-107.07000'), ('GILMAN', None, '39.53000', '-106.40000'), ('GYPSUM', 3654, '39.64340', '-106.94770'), ('MINTURN', 1068, '39.58430', '-106.42610'), ('RED CLIFF', 289, '39.50840', '-106.36950'), ('REDCLIFF', None, '39.52000', '-106.37000'), ('STATE BRIDGE', None, '39.83000', '-106.60000'), ('SWEETWATER', None, '39.72000', '-107.02000'), ('TENNESSEE PASS', None, '39.36400', '-106.31300'), ('VAIL', 4531, '39.63950', '-106.35770'), ('WOLCOTT', None, '39.70000', '-106.68000')], 'partOfState': 'CENTRAL', 'wfo': 'GJT'}, -'MTC009': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BEARCREEK', 83, '45.16060', '-109.15700'), ('BRIDGER', 745, '45.29340', '-108.91480'), ('FROMBERG', 486, '45.39110', '-108.90570'), ('JOLIET', 575, '45.48460', '-108.97060'), ('RED LODGE', 2177, '45.19150', '-109.24710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTC001': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BANNACK', None, '45.16110', '-112.99470'), ('DELL', None, '44.71880', '-112.69640'), ('DEWEY', None, '45.77720', '-112.85420'), ('DILLON', 3752, '45.21610', '-112.63450'), ('GLEN', None, '45.47670', '-112.68970'), ('GRANT', None, '45.00860', '-113.06610'), ('JACKSON', None, '45.36810', '-113.40810'), ('LAKEVIEW', None, '44.59940', '-111.80970'), ('LIMA', 242, '44.63840', '-112.59140'), ('MONIDA', None, '44.56190', '-112.31280'), ('POLARIS', None, '45.36970', '-113.11860'), ('WISDOM', 114, '45.61810', '-113.45000'), ('WISE RIVER', None, '45.79140', '-112.94860')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'MTC003': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BUSBY', 695, '45.53120', '-106.95570'), ('CROW AGENCY', 1552, '45.60030', '-107.46070'), ('HARDIN', 3384, '45.73190', '-107.61340'), ('LODGE GRASS', 510, '45.31440', '-107.36660'), ('PRYOR', 628, '45.41910', '-108.53190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTC005': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CHINOOK', 1386, '48.59040', '-109.23120'), ('FORT BELKNAP', None, '48.48310', '-108.76630'), ('HARLEM', 848, '48.53180', '-108.78370'), ('HAYS', 702, '47.99050', '-108.64940'), ('HOGELAND', None, '48.85250', '-108.65810'), ('LLOYD', None, '48.29030', '-109.36140'), ('LODGEPOLE', None, '48.03470', '-108.53250'), ('TURNER', None, '48.84360', '-108.40640'), ('ZURICH', None, '48.58440', '-109.02970')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTC007': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('RADERSBURG', 70, '46.19580', '-111.63110'), ('TOSTON', 105, '46.19280', '-111.44030'), ('TOWNSEND', 1867, '46.31890', '-111.51920'), ('WINSTON', 73, '46.47670', '-111.65810')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'OHC121': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BATESVILLE', 100, '39.91420', '-81.28120'), ('BELLE VALLEY', 263, '39.78870', '-81.55520'), ('CALDWELL', 1956, '39.74580', '-81.51310'), ('DEXTER CITY', 166, '39.65920', '-81.47490'), ('SARAHSVILLE', 198, '39.80770', '-81.46950'), ('SUMMERFIELD', 296, '39.79770', '-81.33590')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'IAC089': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BONAIR', None, '43.41334', '-92.20005'), ('CHESTER', 151, '43.49010', '-92.36340'), ('CRESCO', 3905, '43.37180', '-92.11570'), ('DAVIS CORNERS', None, '43.36400', '-92.29874'), ('ELMA', 598, '43.24570', '-92.44000'), ('LIME SPRINGS', 496, '43.45020', '-92.28110'), ('LOURDES', None, '43.26714', '-92.30239'), ('MAPLE LEAF', None, '43.31283', '-92.38463'), ('PROTIVIN', 317, '43.21750', '-92.08810'), ('RICEVILLE', 840, '43.36250', '-92.55490'), ('SARATOGA', None, '43.36400', '-92.41936'), ('SCHLEY', None, '43.29820', '-92.23295'), ('VERNON SPRINGS', None, '43.34755', '-92.15253')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'OHC123': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CLAY CENTER', 294, '41.56880', '-83.36100'), ('ELMORE', 1426, '41.47300', '-83.29190'), ('GENOA', 2230, '41.51840', '-83.36100'), ('MARBLEHEAD', 762, '41.53180', '-82.72150'), ('OAK HARBOR', 2841, '41.51160', '-83.14670'), ('PORT CLINTON', 6391, '41.50970', '-82.93840'), ('ROCKY RIDGE', 389, '41.53050', '-83.21350')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHC125': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANTWERP', 1740, '41.18070', '-84.73910'), ('BROUGHTON', 166, '41.08790', '-84.53590'), ('CECIL', 216, '41.21910', '-84.60150'), ('GROVER HILL', 412, '41.01870', '-84.47710'), ('HAVILAND', 180, '41.01840', '-84.58110'), ('LATTY', 200, '41.08810', '-84.58340'), ('MELROSE', 322, '41.08960', '-84.41950'), ('PAULDING', 3595, '41.13680', '-84.58270'), ('PAYNE', 1166, '41.07940', '-84.72720'), ('SCOTT', 322, '40.98860', '-84.58410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'OHC127': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CORNING', 593, '39.60230', '-82.08870'), ('CROOKSVILLE', 2483, '39.76810', '-82.09490'), ('GLENFORD', 198, '39.88620', '-82.31980'), ('HEMLOCK', 142, '39.58890', '-82.15530'), ('JUNCTION CITY', 818, '39.72150', '-82.30020'), ('NEW LEXINGTON', 4689, '39.71330', '-82.20810'), ('NEW STRAITSVILLE', 774, '39.57780', '-82.23600'), ('PERRY STATE FOREST', None, '39.76950', '-82.20850'), ('RENDVILLE', 46, '39.61930', '-82.09020'), ('SHAWNEE', 608, '39.61050', '-82.20720'), ('SOMERSET', 1549, '39.80580', '-82.30000'), ('THORNVILLE', 731, '39.89580', '-82.41920')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHC129': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADELPHI', 371, '39.46460', '-82.74630'), ('ASHVILLE', 3174, '39.71760', '-82.95520'), ('CIRCLEVILLE', 13485, '39.60180', '-82.93900'), ('COMMERCIAL POINT', 776, '39.76940', '-83.05790'), ('DARBYVILLE', 293, '39.69570', '-83.11420'), ('KINGSTON', 1032, '39.47220', '-82.91180'), ('LAURELVILLE', 533, '39.47150', '-82.73750'), ('LOGAN ELM VILLAGE', 1062, '39.57170', '-82.94740'), ('NEW HOLLAND', 785, '39.55320', '-83.25740'), ('SOUTH BLOOMFIELD', 1179, '39.71590', '-82.99000'), ('WILLIAMSPORT', 1002, '39.58340', '-83.11670')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'MIC049': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARGENTINE', 2285, '42.79020', '-83.83200'), ('BURTON', 30308, '42.99670', '-83.61960'), ('CLIO', 2483, '43.17710', '-83.73610'), ('DAVISON', 5536, '43.03210', '-83.51830'), ('FENTON', 10582, '42.80000', '-83.71420'), ('FLINT', 124943, '43.02280', '-83.69280'), ('FLUSHING', 8348, '43.06490', '-83.84160'), ('GAINES', 366, '42.87230', '-83.91180'), ('GENESEE', None, '43.11250', '-83.61780'), ('GOODRICH', 1353, '42.91660', '-83.50830'), ('GRAND BLANC', 8242, '42.92580', '-83.61870'), ('LINDEN', 2861, '42.81920', '-83.78150'), ('MONTROSE', 1619, '43.17560', '-83.89260'), ('MOUNT MORRIS', 3194, '43.11630', '-83.69890'), ('OTISVILLE', 882, '43.16530', '-83.52430'), ('RANKIN', None, '42.91440', '-83.75060'), ('SWARTZ CREEK', 5102, '42.96210', '-83.82650')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'OHC005': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ASHLAND', 21249, '40.86690', '-82.31760'), ('BAILEY LAKES', 397, '40.94740', '-82.35550'), ('HAYESVILLE', 348, '40.77470', '-82.26070'), ('JEROMESVILLE', 478, '40.80390', '-82.19620'), ('LOUDONVILLE', 2906, '40.63470', '-82.23400'), ('MIFFLIN', 144, '40.77440', '-82.36430'), ('PERRYSVILLE', 816, '40.65670', '-82.31240'), ('POLK', 357, '40.94520', '-82.21430'), ('SAVANNAH', 372, '40.96740', '-82.36430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'NDC073': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANSELM', None, '46.52860', '-97.49530'), ('ELLIOTT', 44, '46.40240', '-97.81390'), ('ENDERLIN', 947, '46.62300', '-97.59890'), ('ENGLEVALE', None, '46.39280', '-97.91310'), ('FORT RANSOM', 70, '46.52470', '-97.93040'), ('LISBON', 2292, '46.43830', '-97.68320'), ('MCLEOD', None, '46.39360', '-97.29920'), ('SHELDON', 135, '46.58700', '-97.49220'), ('VENLO', None, '46.48640', '-97.44580')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'WAC019': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BOYDS', None, '48.70830', '-118.12570'), ('CURLEW', None, '48.88470', '-118.59230'), ('DANVILLE', None, '48.98880', '-118.50420'), ('INCHELIUM', 389, '48.34120', '-118.24740'), ('KELLER', None, '48.07400', '-118.68370'), ('LAUIER', None, '48.99270', '-118.22050'), ('MALO', None, '48.80100', '-118.60350'), ('ORIENT', None, '48.85970', '-118.20100'), ('REPUBLIC', 954, '48.64910', '-118.73180')], 'partOfState': 'NORTHEAST', 'wfo': 'OTX'}, -'COC105': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('DEL NORTE', 1705, '37.67830', '-106.35210'), ('MONTE VISTA', 4529, '37.57860', '-106.14420'), ('SOUTH FORK', 604, '37.67000', '-106.64000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COC107': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CLARK', None, '40.70000', '-106.92000'), ('HAHNS PEAK', None, '40.80000', '-106.93000'), ('HAYDEN', 1634, '40.48810', '-107.26030'), ('MC COY', None, '39.92000', '-106.72000'), ('MILNER', None, '40.48000', '-107.02000'), ('MT ZIRKEL', None, '40.83300', '-106.66300'), ('OAK CREEK', 849, '40.27450', '-106.95700'), ('PHIPPSBURG', None, '40.23000', '-106.93000'), ('STEAMBOAT SPRINGS', 9815, '40.47790', '-106.82100'), ('TOPONAS', None, '40.07000', '-106.80000'), ('TOW CREEK', None, '40.47000', '-107.07000'), ('YAMPA', 443, '40.15330', '-106.90750')], 'partOfState': 'NORTHWEST', 'wfo': 'GJT'}, -'COC101': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AVONDALE', 754, '38.23000', '-104.35000'), ('BEULAH', None, '38.08000', '-104.98000'), ('BLENDE', None, '38.20000', '-104.57000'), ('BOONE', 323, '38.25010', '-104.25580'), ('CEDARWOOD', None, '37.93000', '-104.62000'), ('COLORADO CITY', 2018, '37.94400', '-104.84630'), ('GREENHORN MTN', None, '37.89000', '-105.02000'), ('PINON', None, '38.42000', '-104.61000'), ('PUEBLO', 102121, '38.29800', '-104.61900'), ('PUEBLO DEPOT', None, '38.32000', '-104.33000'), ('PUEBLO RESERVOIR', None, '38.26000', '-104.75000'), ('PUEBLO WEST', 16899, '38.34990', '-104.72210'), ('RYE', 202, '37.92180', '-104.93100'), ('WOODLAND ACRES', None, '37.90000', '-104.93000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COC103': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BUFORD', None, '39.98000', '-107.58000'), ('MEEKER', 2242, '40.05450', '-107.88980'), ('RANGELY', 2096, '40.08760', '-108.77850'), ('RIO BLANCO', None, '39.72000', '-107.97000')], 'partOfState': 'NORTHWEST', 'wfo': 'GJT'}, -'GAC205': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BACONTON', 804, '31.37580', '-84.16160'), ('BRANCHVILLE', None, '31.14980', '-84.31570'), ('CAMILLA', 5669, '31.22970', '-84.21010'), ('COTTON', None, '31.16160', '-84.06660'), ('FLINT', None, '31.31710', '-84.18810'), ('GREENOUGH', None, '31.31520', '-84.10140'), ('GREENWOOD', None, '31.19640', '-84.34020'), ('HINSONTON', None, '31.17830', '-84.02850'), ('HOPEFUL', None, '31.16750', '-84.39270'), ('LESTER', None, '31.36830', '-84.04500'), ('LUKE', None, '31.33580', '-84.00030'), ('MITCHELL CO A/P', None, '31.21290', '-84.23740'), ('PEBBLE CITY', None, '31.24620', '-84.07790'), ('PELHAM', 4126, '31.12650', '-84.15210'), ('SALE CITY', 319, '31.26280', '-84.02230')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'COC109': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BONANZA', 14, '38.30000', '-106.14000'), ('CENTER', 2392, '37.75180', '-106.10990'), ('CRESTONE', 73, '37.99500', '-105.69730'), ('GREAT SAND DUNES', None, '37.74000', '-105.51500'), ('LA GARITA', None, '37.83000', '-106.25000'), ('MOFFAT', 114, '38.00170', '-105.90430'), ('NORTH PASS', None, '38.21000', '-106.57000'), ('SAGUACHE', 578, '38.08610', '-106.14090'), ('SARGENTS', None, '38.40000', '-106.42000'), ('VILLA GROVE', None, '38.25000', '-105.95000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'PAC015': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CHEMUNG', None, '42.00000', '-76.61670'), ('ALBA', 186, '41.70430', '-76.82780'), ('ATHENS', 3415, '41.95040', '-76.51710'), ('BENTLEY CREEK', None, '41.95000', '-76.68330'), ('BROWNTOWN', None, '41.65000', '-76.23330'), ('BRUSHVILLE', None, '41.81670', '-76.18330'), ('BURLINGTON', 182, '41.78280', '-76.60890'), ('CAMPTOWN', None, '41.73330', '-76.23330'), ('CANTON', 1807, '41.65700', '-76.85300'), ('CHERRYTOWN', None, '41.68330', '-76.28330'), ('COWLEY', None, '41.88330', '-76.76670'), ('DUNNING', None, '41.93330', '-76.78330'), ('DURELL', None, '41.71670', '-76.36670'), ('EAST SMITHFIELD', None, '41.86670', '-76.61670'), ('EVERGREEN', None, '41.61670', '-76.41670'), ('FRANKLINDALE', None, '41.70000', '-76.55000'), ('GILLETT', None, '41.95000', '-76.78330'), ('GROVER', None, '41.61670', '-76.86670'), ('HERRICK', None, '41.78330', '-76.25000'), ('HERRICKVILLE', None, '41.80000', '-76.25000'), ('HOLLENBACK', None, '41.60000', '-76.23330'), ('LE RAYSVILLE', 318, '41.83760', '-76.18070'), ('LE ROY', None, '41.66670', '-76.70000'), ('LEONA', None, '41.81670', '-76.73330'), ('LIBERTY CORNERS', None, '41.70000', '-76.41670'), ('LITCHFIELD', None, '41.96670', '-76.43330'), ('MACEDONIA', None, '41.76670', '-76.38330'), ('MILAN', None, '41.91670', '-76.50000'), ('MINNEQUA', None, '41.68330', '-76.83330'), ('MONROE', 514, '41.71360', '-76.47560'), ('MONROETON', None, '41.71670', '-76.46670'), ('MOSHERVILLE', None, '41.98330', '-76.88330'), ('NEW ALBANY', 306, '41.60080', '-76.44330'), ('NORTH TOWANDA', None, '41.78330', '-76.45000'), ('ORWELL', None, '41.88330', '-76.26670'), ('OVERTON', None, '41.56670', '-76.50000'), ('RIDGEBURY', None, '41.96670', '-76.71670'), ('RIGGS', None, '41.83330', '-76.56670'), ('ROME', 382, '41.85790', '-76.34160'), ('RUSHVILLE', None, '41.78330', '-76.13330'), ('SAYRE', 5813, '41.98590', '-76.52100'), ('SHESHEQUIN', None, '41.85000', '-76.48330'), ('SILVARA', None, '41.70000', '-76.13330'), ('SOUTH BRANCH', None, '41.65000', '-76.43330'), ('SOUTH WAVERLY', 987, '41.99560', '-76.54430'), ('SPRING HILL', 970, '41.70000', '-76.18330'), ('SPRINGFIELD', 23677, '41.85000', '-76.73330'), ('STEVENSVILLE', None, '41.76670', '-76.18330'), ('SUGAR RUN', None, '41.65000', '-76.23330'), ('SYLVANIA', 200, '41.80500', '-76.85750'), ('TERRYTOWN', None, '41.66670', '-76.28330'), ('TOWANDA', 3024, '41.77090', '-76.44690'), ('TROY', 1508, '41.78470', '-76.78960'), ('ULSTER', None, '41.85000', '-76.50000'), ('WARREN CENTER', None, '41.93330', '-76.16670'), ('WEST BURLINGTON', None, '41.76670', '-76.66670'), ('WEST FRANKLIN', None, '41.70000', '-76.61670'), ('WEST LE ROY', None, '41.66670', '-76.75000'), ('WEST WARREN', None, '41.93330', '-76.23330'), ('WETONA', None, '41.83330', '-76.68330'), ('WILAWANA', None, '41.98330', '-76.60000'), ('WILMOT', None, '41.60000', '-76.31670'), ('WINDHAM', None, '41.96670', '-76.28330'), ('WYALUSING', 564, '41.66910', '-76.26270'), ('WYSOX', None, '41.76670', '-76.40000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'PAC017': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRISTOL', 9923, '40.10160', '-74.85320'), ('BRITTANY FARMS-HIGHLANDS', 3268, '40.26880', '-75.21450'), ('CHALFONT', 3900, '40.28890', '-75.20970'), ('CHURCHVILLE', 4469, '40.20070', '-74.99740'), ('CORNWELLS HEIGHTS-EDDINGT', None, '40.08170', '-74.94710'), ('CROYDON', 9993, '40.09020', '-74.89550'), ('DOYLESTOWN', 8227, '40.31400', '-75.12790'), ('DUBLIN', 2083, '40.37060', '-75.20470'), ('FAIRLESS HILLS', 8365, '40.17880', '-74.85340'), ('FEASTERVILLE-TREVOSE', 6525, '40.15270', '-74.98660'), ('HULMEVILLE', 893, '40.14310', '-74.90750'), ('IVYLAND', 492, '40.20810', '-75.07290'), ('LANGHORNE', 1981, '40.17730', '-74.91930'), ('LANGHORNE MANOR', 927, '40.16580', '-74.91820'), ('LEVITTOWN', 53966, '40.15350', '-74.85310'), ('MORRISVILLE', 1443, '40.20730', '-74.78030'), ('NEW BRITAIN', 3125, '40.29910', '-75.17860'), ('NEW HOPE', 2252, '40.36140', '-74.95930'), ('NEWTOWN', 244, '40.22810', '-74.93270'), ('NEWTOWN GRANT', 3887, '40.26000', '-74.95530'), ('PENNDEL', 2420, '40.15490', '-74.91390'), ('PERKASIE', 8828, '40.37100', '-75.29240'), ('QUAKERTOWN', 8931, '40.43960', '-75.34600'), ('RICHBORO', 6678, '40.22730', '-75.00080'), ('RICHLANDTOWN', 1283, '40.47230', '-75.32130'), ('RIEGELSVILLE', 863, '40.59690', '-75.19780'), ('SELLERSVILLE', 4564, '40.36030', '-75.30830'), ('SILVERDALE', 1001, '40.34640', '-75.27130'), ('TELFORD', 4680, '40.32550', '-75.32730'), ('TRUMBAUERSVILLE', 1059, '40.41410', '-75.37940'), ('TULLYTOWN', 2031, '40.13930', '-74.81280'), ('VILLAGE SHIRES', 4137, '40.20300', '-74.97080'), ('WARMINSTER HEIGHTS', 4191, '40.18670', '-75.08480'), ('WOODBOURNE', 3512, '40.20210', '-74.88640'), ('WOODSIDE', 2575, '40.23030', '-74.85870'), ('YARDLEY', 2498, '40.23980', '-74.83840')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'PAC011': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMITY GARDENS', 3370, '40.27410', '-75.73560'), ('BALLY', 1062, '40.40090', '-75.58870'), ('BECHTELSVILLE', 931, '40.37090', '-75.63070'), ('BERNVILLE', 865, '40.43420', '-76.11070'), ('BIRDSBORO', 5064, '40.26070', '-75.81050'), ('BOYERTOWN', 3940, '40.33180', '-75.63780'), ('CENTERPORT', 327, '40.48660', '-76.00630'), ('FLEETWOOD', 4018, '40.45560', '-75.82140'), ('FLYING HILLS', 1191, '40.27670', '-75.91450'), ('HAMBURG', 4114, '40.55620', '-75.98300'), ('KENHORST', 2679, '40.30670', '-75.94410'), ('KUTZTOWN', 5067, '40.52090', '-75.77830'), ('LAURELDALE', 3759, '40.38920', '-75.91450'), ('LEESPORT', 1805, '40.44490', '-75.96990'), ('LENHARTSVILLE', 173, '40.57270', '-75.89120'), ('LORANE', 2994, '40.29360', '-75.84630'), ('LYONS', 504, '40.48090', '-75.76020'), ('MOHNTON', 2963, '40.28650', '-75.98770'), ('MOUNT PENN', 3016, '40.32850', '-75.88920'), ('PORT CLINTON', 288, '40.58240', '-76.02670'), ('READING', 81207, '40.33900', '-75.92640'), ('REIFFTON', 2888, '40.31600', '-75.86760'), ('ROBESONIA', 2036, '40.34860', '-76.14110'), ('SHILLINGTON', 5059, '40.30250', '-75.96720'), ('SHOEMAKERSVILLE', 2124, '40.49990', '-75.96940'), ('SINKING SPRING', 2639, '40.32460', '-76.02270'), ('ST. LAWRENCE', 1812, '40.32600', '-75.86500'), ('STRAUSSTOWN', 339, '40.49200', '-76.18440'), ('TEMPLE', None, '40.40830', '-75.92100'), ('TOPTON', 1948, '40.50350', '-75.70260'), ('WERNERSVILLE', 2150, '40.33040', '-76.08310'), ('WEST LAWN', 1597, '40.32850', '-75.99330'), ('WEST READING', 4049, '40.33340', '-75.94690'), ('WEST WYOMISSING', 3016, '40.32270', '-75.99490'), ('WHITFIELD', 2952, '40.33590', '-76.00630'), ('WOMELSDORF', 2599, '40.36560', '-76.18670'), ('WYOMISSING', 8587, '40.33050', '-75.96770'), ('WYOMISSING HILLS', 2568, '40.33470', '-75.98200')], 'partOfState': '', 'wfo': 'PHI'}, -'PAC013': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALTOONA', 49523, '40.50780', '-78.40130'), ('BALD EAGLE', None, '40.73000', '-78.17000'), ('BELLWOOD', 2016, '40.60110', '-78.33420'), ('CANOE CREEK SP', None, '40.50000', '-78.32000'), ('CLAYSBURG', 1503, '40.29210', '-78.44960'), ('DUNCANSVILLE', 1238, '40.42630', '-78.42960'), ('HOLLIDAYSBURG', 5368, '40.43010', '-78.39310'), ('HORSESHOE CURVE', None, '40.50000', '-78.47000'), ('LAKEMONT', None, '40.47000', '-78.38000'), ('MARTINSBURG', 2236, '40.31030', '-78.32450'), ('NEWRY', 245, '40.39310', '-78.43530'), ('ROARING SPRING', 2418, '40.33370', '-78.39670'), ('ROYER', None, '40.42000', '-78.27000'), ('SINKING VALLEY', None, '40.57000', '-78.27000'), ('SKI GAP', None, '40.32000', '-78.52000'), ('TIPTON', 1225, '40.63630', '-78.29860'), ('TUNNELHILL', 409, '40.47390', '-78.54340'), ('TYRONE', 5528, '40.67680', '-78.24620'), ('WILLIAMSBURG', 1345, '40.46390', '-78.20570')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'KYC037': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALEXANDRIA', 8286, '38.96050', '-84.38420'), ('BELLEVUE', 6480, '39.10120', '-84.47750'), ('CALIFORNIA', 86, '38.91970', '-84.26260'), ('CLARYVILLE', 2588, '38.92460', '-84.40930'), ('COLD SPRING', 3806, '39.02400', '-84.43740'), ('CRESTVIEW', 471, '39.02240', '-84.41610'), ('FORT THOMAS', 16495, '39.08240', '-84.45030'), ('HIGHLAND HEIGHTS', 6554, '39.03690', '-84.45420'), ('MELBOURNE', 457, '39.03170', '-84.37100'), ('MENTOR', 181, '38.89060', '-84.24370'), ('NEWPORT', 17048, '39.08500', '-84.48660'), ('SILVER GROVE', 1215, '39.03670', '-84.39690'), ('SOUTHGATE', 3472, '39.06130', '-84.47080'), ('WILDER', 2624, '39.03560', '-84.47860'), ('WOODLAWN', 268, '39.09080', '-84.47200')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'PAC019': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRUIN', 534, '41.05510', '-79.72730'), ('BUTLER', 15121, '40.86190', '-79.89670'), ('CALLERY', 444, '40.73950', '-80.03760'), ('CHERRY VALLEY', 72, '41.16190', '-79.79910'), ('CHICORA', 1021, '40.94890', '-79.74190'), ('CONNOQUENESSING', 564, '40.81800', '-80.01390'), ('EAST BUTLER', 679, '40.87860', '-79.84760'), ('EAU CLAIRE', 355, '41.13690', '-79.79820'), ('EVANS CITY', 2009, '40.76850', '-80.05870'), ('FERNWAY', 12188, '40.69470', '-80.13100'), ('FOX RUN', 3044, '40.70230', '-80.08300'), ('HARMONY', 937, '40.80130', '-80.12520'), ('HARRISVILLE', 883, '41.13600', '-80.01100'), ('HOMEACRE-LYNDORA', 6685, '40.87100', '-79.92300'), ('KARNS CITY', 244, '40.99710', '-79.72600'), ('MARS', 1746, '40.69660', '-80.01410'), ('MEADOWOOD', 2912, '40.84200', '-79.89400'), ('MERIDIAN', 3794, '40.85440', '-79.95660'), ('NIXON', 1404, '40.78320', '-79.92970'), ('OAK HILLS', 2335, '40.82470', '-79.91340'), ('PETROLIA', 218, '41.02180', '-79.71720'), ('PORTERSVILLE', 268, '40.92520', '-80.14440'), ('PROSPECT', 1234, '40.90070', '-80.04960'), ('SARVER', None, '40.73000', '-79.73000'), ('SAXONBURG', 1629, '40.75200', '-79.81550'), ('SEVEN FIELDS', 1986, '40.68840', '-80.06200'), ('SHANOR-NORTHVUE', 4825, '40.90930', '-79.91720'), ('SLIPPERY ROCK', 3068, '41.07000', '-80.06030'), ('VALENCIA', 384, '40.67570', '-79.98820'), ('WEST LIBERTY', 325, '41.00730', '-80.05500'), ('WEST SUNBURY', 104, '41.00610', '-79.89630'), ('ZELIENOPLE', 4123, '40.78940', '-80.14350')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'ALC093': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BEAR CREEK', 1053, '34.26050', '-87.71560'), ('BRILLIANT', 762, '34.01670', '-87.77580'), ('GU-WIN', 204, '33.95820', '-87.87170'), ('GUIN', 2389, '33.96610', '-87.91050'), ('HACKLEBURG', 1527, '34.27420', '-87.83370'), ('HAMILTON', 6786, '34.14030', '-87.98280'), ('WESTON', None, '34.16220', '-88.03090'), ('WINFIELD', 4540, '33.92990', '-87.79610')], 'partOfState': 'NORTHWEST', 'wfo': 'BMX'}, -'ALC091': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CONSUL', None, '32.26440', '-87.54040'), ('DAYTON', 60, '32.35140', '-87.64220'), ('DEMOPOLIS', 7540, '32.51560', '-87.83920'), ('DIXONS MILL', None, '32.05750', '-87.78780'), ('FAUNSDALE', 87, '32.45980', '-87.59430'), ('HALF ACRE', None, '32.19420', '-87.91210'), ('JEFFERSON', None, '32.38610', '-87.89790'), ('LINDEN', 2424, '32.30500', '-87.79920'), ('MAGNOLIA', None, '32.13580', '-87.66790'), ('MILLER', None, '32.15680', '-87.78550'), ('MYRTLEWOOD', 139, '32.25010', '-87.94980'), ('NANAFALIA', None, '32.11300', '-87.98810'), ('OCTAGON', None, '32.20430', '-87.75550'), ('OLD SPRING HILL', None, '32.43730', '-87.77380'), ('PROVIDENCE', 311, '32.34130', '-87.78150'), ('PUTNAM', None, '32.02190', '-88.03250'), ('SHILOH', 289, '32.12740', '-87.73580'), ('SURGINER', None, '32.05540', '-87.71030'), ('SWEET WATER', 234, '32.09720', '-87.86750'), ('THOMASTON', 383, '32.26610', '-87.62670'), ('US 80 AND AL 28', None, '32.44250', '-87.98570'), ('VINELAND', None, '32.03500', '-87.65960')], 'partOfState': 'SOUTHWEST', 'wfo': 'BMX'}, -'KYC035': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('HARRIS GROVE', None, '36.57000', '-88.42770'), ('HAZEL', 440, '36.50540', '-88.32600'), ('KIRKSEY', None, '36.68170', '-88.42670'), ('MURRAY', 14950, '36.61150', '-88.31570'), ('NEW CONCORD', None, '36.59640', '-88.06980')], 'partOfState': '', 'wfo': 'PAH'}, -'ALC097': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AIRPORT AND GOVERNMENT', None, '30.67610', '-88.08690'), ('AIRPORT AND UNIVERSITY', None, '30.67580', '-88.16970'), ('AXIS', None, '30.92970', '-88.02890'), ('BAYOU LA BATRE', 2313, '30.40370', '-88.24860'), ('BELLEFONTAINE', None, '30.50120', '-88.11080'), ('BIG CREEK LAKE', None, '30.76640', '-88.34860'), ('BIG CREEK LAKE DAM', None, '30.71000', '-88.33000'), ('BROOKLEY FIELD AIRPORT', None, '30.63500', '-88.07430'), ('BUCKS', None, '31.01080', '-88.02580'), ('CALVERT', None, '31.15520', '-88.01040'), ('CELESTE', None, '30.89430', '-88.12340'), ('CHASTANG', None, '31.03900', '-88.02500'), ('CHICKASAW', 6364, '30.76360', '-88.07640'), ('CHUNCHULA', None, '30.92140', '-88.20060'), ('CITRONELLE', 3659, '31.09030', '-88.23860'), ('COCHRANE BRIDGE', None, '30.73300', '-88.04200'), ('COTTAGE HILL PARK', None, '30.65610', '-88.18440'), ('CREOLA', 2002, '30.89690', '-88.03900'), ('CRICHTON', None, '30.70070', '-88.11230'), ('DAUPHIN ISLAND', 1371, '30.25530', '-88.10980'), ('DAWES', None, '30.60810', '-88.25690'), ('DEES', None, '30.56360', '-88.34360'), ('DELCHAMPS', None, '30.40060', '-88.14920'), ('DIXON CORNER', None, '30.45220', '-88.24200'), ('DOWNTOWN MOBILE', None, '30.69060', '-88.03890'), ('EARLVILLE', None, '30.98370', '-88.41000'), ('EAST END OF DAUPHIN ISLAN', None, '30.26000', '-88.07420'), ('EIGHT MILE', None, '30.76360', '-88.12720'), ('FOREST HILL', None, '30.71880', '-88.15420'), ('FORT STODDARD', None, '31.09440', '-87.97890'), ('GEORGETOWN', None, '30.90260', '-88.27820'), ('GRAND BAY', 3918, '30.47580', '-88.34250'), ('GULFCREST', None, '30.99560', '-88.23940'), ('HOLLINGERS ISLAND', None, '30.54840', '-88.11040'), ('HUTCHENS ELEMENTARY SCHOO', None, '30.62000', '-88.27600'), ('I10 AND I65 INTERSECTION', None, '30.62830', '-88.11690'), ('I10 AND MCDONALD ROAD', None, '30.53560', '-88.23990'), ('I65 AND AIRPORT BLVD', None, '30.67670', '-88.12780'), ('I65 AND AL 158', None, '30.80250', '-88.10380'), ('I65 AND I165', None, '30.75250', '-88.09540'), ('I65 AND MOFFETT ROAD', None, '30.70710', '-88.12220'), ('I65 AND US 43', None, '30.87790', '-88.04300'), ('I65 AND US 45', None, '30.74080', '-88.10800'), ('IRVINGTON', None, '30.50690', '-88.23560'), ('KNOLLWOOD HOSPITAL', None, '30.61950', '-88.17170'), ('KUSHLA', None, '30.81870', '-88.16290'), ('LADD STADIUM', None, '30.67350', '-88.07620'), ('LANGAN PARK', None, '30.70570', '-88.15990'), ('LAURENDINE', None, '30.49810', '-88.17170'), ('LOTT AND COLEMAN DAIRY RO', None, '30.83700', '-88.27120'), ('MAGNOLIA GROVE GOLF COURS', None, '30.73480', '-88.20950'), ('MOBILE AIRPORT', None, '30.68000', '-88.24000'), ('MOBILE GREYHOUND PARK', None, '30.56540', '-88.20580'), ('MOBILE INFIRMARY', None, '30.69700', '-88.08120'), ('MOFFET', None, '30.85390', '-88.39890'), ('MON LOUIS', None, '30.44660', '-88.11600'), ('MOUNT VERNON', 844, '31.08630', '-88.01820'), ('OAK GROVE', 457, '30.85810', '-88.18360'), ('PINEOLA', None, '31.05710', '-88.11180'), ('PINTO ISLAND', None, '30.67550', '-88.02680'), ('PRICHARD', 28633, '30.73850', '-88.08790'), ('SALCO', None, '30.96780', '-88.02760'), ('SAND ISLAND', None, '30.22280', '-88.10880'), ('SARALAND', 12288, '30.82010', '-88.07060'), ('SATSUMA', 5687, '30.85410', '-88.05750'), ('SCHILLINGER AND THREE NOT', None, '30.58900', '-88.22470'), ('SEMMES', None, '30.77860', '-88.26080'), ('SEVEN HILLS', None, '30.66030', '-88.30180'), ('SIDNEY', None, '31.06810', '-88.23580'), ('SNOW AND TANNER WILLIAMS', None, '30.71100', '-88.27600'), ('SOUTH ORCHARD', None, '30.46470', '-88.15190'), ('SPRING HILL COLLEGE', None, '30.69280', '-88.14000'), ('ST ELMO', None, '30.50360', '-88.25560'), ('TANNER WILLIAMS', None, '30.72330', '-88.37030'), ('THEODORE', 6811, '30.54550', '-88.17660'), ('TILLMANS CORNER', 15685, '30.59030', '-88.17220'), ('TURNERVILLE', None, '30.97860', '-88.12920'), ('UNIVERSITY OF SOUTH ALABA', None, '30.69480', '-88.18000'), ('WALLACE TUNNEL', None, '30.68930', '-88.03760'), ('WEST END OF DAUPHIN ISLAN', None, '30.23050', '-88.29850'), ('WHISTLER', None, '30.75640', '-88.10440'), ('WILMER', None, '30.82250', '-88.36170')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALC095': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALBERTVILLE', 17247, '34.26250', '-86.20940'), ('ARAB', 7174, '34.32960', '-86.50010'), ('BOAZ', 7411, '34.20260', '-86.15550'), ('DOUGLAS', 530, '34.17150', '-86.32120'), ('GRANT', 665, '34.51720', '-86.25230'), ('GUNTERSVILLE', 7395, '34.35680', '-86.27040'), ('UNION GROVE', 94, '34.40000', '-86.44610')], 'partOfState': 'NORTHEAST', 'wfo': 'HUN'}, -'IDC067': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ACEQUIA', 144, '42.66850', '-113.59560'), ('HEYBURN', 2899, '42.55580', '-113.76090'), ('MINIDOKA', 129, '42.75400', '-113.48900'), ('PAUL', 998, '42.60640', '-113.78240'), ('RUPERT', 5645, '42.61810', '-113.67370')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PIH'}, -'MAC017': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ACTON', None, '42.48333', '-71.46667'), ('ARLINGTON', 42389, '42.41860', '-71.16430'), ('ASHBY', None, '42.68333', '-71.81667'), ('ASHLAND', None, '42.25000', '-71.46667'), ('AYER', 2960, '42.56220', '-71.58530'), ('BEDFORD', None, '42.48333', '-71.26667'), ('BELMONT', 24194, '42.40000', '-71.16667'), ('BILLERICA', None, '42.55000', '-71.26667'), ('BOXBOROUGH', None, '42.50000', '-71.50000'), ('BURLINGTON', 22876, '42.50310', '-71.20210'), ('CAMBRIDGE', 101355, '42.37580', '-71.11870'), ('CARLISLE', None, '42.53333', '-71.35000'), ('CHELMSFORD', None, '42.59990', '-71.36770'), ('CONCORD', None, '42.45000', '-71.35000'), ('DRACUT', None, '42.66667', '-71.30000'), ('DUNSTABLE', None, '42.66667', '-71.48333'), ('EVERETT', 38037, '42.40660', '-71.05460'), ('FRAMINGHAM', 66910, '42.30590', '-71.43790'), ('GROTON', 1113, '42.60640', '-71.57150'), ('HOLLISTON', None, '42.20000', '-71.43333'), ('HOPKINTON', 2628, '42.22280', '-71.52140'), ('HUDSON', 14388, '42.39230', '-71.56400'), ('LEXINGTON', 30355, '42.44570', '-71.23140'), ('LINCOLN', None, '42.41667', '-71.30000'), ('LITTLETON', None, '42.53650', '-71.47250'), ('LOWELL', 105167, '42.63870', '-71.32210'), ('MALDEN', 56340, '42.43040', '-71.05840'), ('MARLBOROUGH', 36255, '42.34990', '-71.54770'), ('MAYNARD', 10433, '42.42570', '-71.45700'), ('MEDFORD', 55765, '42.42240', '-71.10870'), ('MELROSE', 27134, '42.45490', '-71.05910'), ('NATICK', None, '42.28333', '-71.35000'), ('NEWTON', 83829, '42.33160', '-71.20710'), ('NORTH READING', None, '42.56667', '-71.06667'), ('PEPPERELL', 2517, '42.66780', '-71.58820'), ('READING', 23708, '42.53580', '-71.10700'), ('SHERBORN', None, '42.23333', '-71.36667'), ('SHIRLEY', 1427, '42.54200', '-71.65290'), ('SOMERVILLE', 77478, '42.39030', '-71.10180'), ('STONEHAM', 22219, '42.47410', '-71.09820'), ('STOW', None, '42.43333', '-71.50000'), ('SUDBURY', None, '42.36667', '-71.40000'), ('TEWKSBURY', None, '42.61667', '-71.23333'), ('TOWNSEND', 1043, '42.66980', '-71.70330'), ('TYNGSBORO', None, '42.68333', '-71.41667'), ('WAKEFIELD', 24804, '42.50460', '-71.06660'), ('WALTHAM', 59226, '42.38780', '-71.24220'), ('WATERTOWN', 32986, '42.36950', '-71.17760'), ('WAYLAND', None, '42.36667', '-71.36667'), ('WESTFORD', None, '42.58333', '-71.43333'), ('WESTON', None, '42.36667', '-71.26667'), ('WILMINGTON', 21363, '42.55940', '-71.16660'), ('WINCHESTER', 20810, '42.45190', '-71.14690'), ('WOBURN', 37258, '42.48550', '-71.15520')], 'partOfState': '', 'wfo': 'BOX'}, -'ALC099': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AL 47 AND CR 29 ROADS', None, '31.76850', '-86.99820'), ('AWIN', None, '31.83830', '-86.94730'), ('BEATRICE', 412, '31.73250', '-87.20500'), ('BUENA VISTA', None, '31.79280', '-87.25560'), ('BURNT CORN', None, '31.55440', '-87.16610'), ('CHESTNUT', None, '31.80940', '-87.23830'), ('CHRYSLER', None, '31.30420', '-87.70190'), ('CLAIBORNE', None, '31.53970', '-87.51610'), ('CORDUROY STATION', None, '31.76970', '-87.22860'), ('DREWRY', None, '31.48610', '-87.25780'), ('ELISKA', None, '31.35280', '-87.68440'), ('EXCEL', 582, '31.42890', '-87.34780'), ('FINCHBURG', None, '31.64280', '-87.51640'), ('FOUNTAIN', None, '31.59560', '-87.41470'), ('FRANKLIN', 149, '31.71370', '-87.41150'), ('FRISCO CITY', 1460, '31.43250', '-87.40190'), ('GOODWAY', None, '31.33640', '-87.43190'), ('HOMEWOOD', 25043, '31.36970', '-87.59970'), ('HYBART', None, '31.82580', '-87.38250'), ('KEITH', None, '31.67780', '-87.36830'), ('MANISTEE', None, '31.44080', '-87.49430'), ('MCWILLIAMS', None, '31.83030', '-87.09390'), ('MEGARGEL', None, '31.38080', '-87.43750'), ('MEXIA', None, '31.50860', '-87.39390'), ('MIDWAY', 457, '31.71780', '-87.05140'), ('MINEOLA', None, '31.27780', '-87.64060'), ('MONROEVILLE', 6862, '31.52690', '-87.32530'), ('MT PLEASANT', None, '31.33330', '-87.69580'), ('NADAWAH', None, '31.81420', '-87.17210'), ('NATCHEZ', None, '31.72750', '-87.26050'), ('PACKARDS BEND', None, '31.77570', '-87.48970'), ('PERDUE HILL', None, '31.51400', '-87.49350'), ('PETERMAN', None, '31.58420', '-87.25940'), ('PINE ORCHARD', None, '31.64170', '-87.13440'), ('RIVER RIDGE', None, '31.71390', '-87.31300'), ('TINELA', None, '31.80830', '-87.39720'), ('TUNNEL SPRINGS', None, '31.64330', '-87.24640'), ('TURKESTAN', None, '31.77670', '-87.15500'), ('TURNBULL', None, '31.71470', '-87.13200'), ('URIAH', None, '31.30530', '-87.50220'), ('VREDENBURGH', 327, '31.82860', '-87.32170'), ('WEST MONROEVILLE', None, '31.51730', '-87.35370')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'MAC015': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AMHERST', None, '42.37510', '-72.52000'), ('BELCHERTOWN', 2626, '42.27320', '-72.40320'), ('CHESTERFIELD', None, '42.40000', '-72.85000'), ('CUMMINGTON', None, '42.46667', '-72.90000'), ('EASTHAMPTON', 15994, '42.26667', '-72.68333'), ('GOSHEN', None, '42.43333', '-72.80000'), ('GRANBY', 1344, '42.26270', '-72.52740'), ('HADLEY', None, '42.35000', '-72.58333'), ('HATFIELD', 1298, '42.37190', '-72.60880'), ('HUNTINGTON', None, '42.23333', '-72.88333'), ('MIDDLEFIELD', None, '42.35000', '-73.01667'), ('NORTHAMPTON', 28978, '42.32710', '-72.67510'), ('PELHAM', None, '42.40000', '-72.40000'), ('PLAINFIELD', None, '42.51667', '-72.91667'), ('SOUTH HADLEY', None, '42.26667', '-72.56666'), ('SOUTHAMPTON', None, '42.23333', '-72.73333'), ('WARE', 6174, '42.25320', '-72.24550'), ('WESTHAMPTON', None, '42.30000', '-72.76667'), ('WILLIAMSBURG', None, '42.40000', '-72.71667'), ('WORTHINGTON', None, '42.41667', '-72.93333')], 'partOfState': '', 'wfo': 'BOX'}, -'MAC013': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AGAWAM', 28144, '42.06667', '-72.61667'), ('BLANDFORD', None, '42.18333', '-72.93333'), ('BRIMFIELD', None, '42.11667', '-72.20000'), ('CHESTER', None, '42.28333', '-72.98333'), ('CHICOPEE', 54653, '42.17590', '-72.57310'), ('EAST LONGMEADOW', None, '42.06667', '-72.51667'), ('GRANVILLE', None, '42.06667', '-72.86667'), ('HAMPDEN', None, '42.06667', '-72.41667'), ('HOLLAND', 1444, '42.05280', '-72.15210'), ('HOLYOKE', 39838, '42.21350', '-72.64240'), ('LONGMEADOW', 15633, '42.04780', '-72.57010'), ('LUDLOW', None, '42.16667', '-72.48333'), ('MONSON', None, '42.09710', '-72.31040'), ('MONTGOMERY', None, '42.20000', '-72.80000'), ('PALMER', 3900, '42.16090', '-72.32230'), ('RUSSELL', None, '42.18333', '-72.85000'), ('SOUTHWICK', None, '42.05000', '-72.76667'), ('SPRINGFIELD', 152082, '42.11500', '-72.53900'), ('TOLLAND', None, '42.08333', '-73.01667'), ('WALES', None, '42.06667', '-72.21667'), ('WEST SPRINGFIELD', 27899, '42.12320', '-72.65310'), ('WESTFIELD', 40072, '42.13890', '-72.75600'), ('WILBRAHAM', 3544, '42.13580', '-72.43630')], 'partOfState': '', 'wfo': 'BOX'}, -'MAC011': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ASHFIELD', None, '42.53333', '-72.78333'), ('BERNARDSTON', None, '42.66667', '-72.55000'), ('BUCKLAND', None, '42.60000', '-72.78333'), ('CHARLEMONT', None, '42.63333', '-72.88333'), ('COLRAIN', None, '42.66667', '-72.68333'), ('CONWAY', None, '42.51667', '-72.68333'), ('DEERFIELD', None, '42.55000', '-72.60000'), ('ERVING', None, '42.60000', '-72.40000'), ('GILL', None, '42.65000', '-72.50000'), ('GREENFIELD', 13716, '42.58930', '-72.59890'), ('HAWLEY', None, '42.56667', '-72.88333'), ('HEATH', None, '42.66667', '-72.83333'), ('LEVERETT', None, '42.45000', '-72.50000'), ('LEYDEN', None, '42.70000', '-72.61667'), ('MONROE', None, '42.71667', '-72.95000'), ('MONTAGUE', None, '42.53333', '-72.53333'), ('NEW SALEM', None, '42.50000', '-72.33333'), ('NORTHFIELD', 1141, '42.70940', '-72.43730'), ('ORANGE', 3945, '42.59420', '-72.30430'), ('ROWE', None, '42.70000', '-72.90000'), ('SHELBURNE', None, '42.58333', '-72.68333'), ('SHUTESBURY', None, '42.45000', '-72.40000'), ('SUNDERLAND', None, '42.46667', '-72.58333'), ('WARWICK', None, '42.68333', '-72.33333'), ('WENDELL', None, '42.55000', '-72.40000'), ('WHATELY', None, '42.45000', '-72.61667')], 'partOfState': '', 'wfo': 'BOX'}, -'TNC089': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CHESTNUT HILL', None, '35.93000', '-83.34030'), ('DANDRIDGE', 2078, '36.02310', '-83.41870'), ('JEFFERSON CITY', 7760, '36.11900', '-83.48760'), ('NEW MARKET', 1234, '36.09890', '-83.55240'), ('PIEDMONT', None, '36.02530', '-83.52810'), ('WHITE PINE', 1997, '36.09930', '-83.29770')], 'partOfState': '', 'wfo': 'MRX'}, -'GAC299': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BICKLEY', None, '31.40540', '-82.60310'), ('DEENWOOD', 1836, '31.24720', '-82.36600'), ('DIXIE UNION', None, '31.33680', '-82.46390'), ('MANOR', None, '31.10170', '-82.57400'), ('MILLWOOD', None, '31.26570', '-82.66200'), ('NEEDHAM', None, '31.15590', '-82.42870'), ('SUNNYSIDE', 1385, '31.23920', '-82.34210'), ('WARESBORO', None, '31.24740', '-82.47440'), ('WAYCROSS', 15333, '31.21190', '-82.35770')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'MTC093': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BUTTE', 33892, '46.00389', '-112.53389'), ('DIVIDE', None, '45.75111', '-112.74639'), ('JANNEY', None, '45.90944', '-112.49444'), ('MELROSE', None, '45.63194', '-112.68361'), ('NEWCOMB', None, '45.92000', '-112.51889'), ('NISSLER', None, '46.00472', '-112.64139'), ('RAMSAY', None, '46.00583', '-112.68528'), ('SILVER BOW', None, '46.00361', '-112.66694'), ('WALKERVILLE', 714, '46.03650', '-112.54030')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'TNC081': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CENTERVILLE', 3793, '35.79410', '-87.44980')], 'partOfState': '', 'wfo': 'OHX'}, -'GAC293': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('THE ROCK', None, '32.96370', '-84.24210'), ('THOMASTON', 9411, '32.89160', '-84.32700'), ('YATESVILLE', 408, '32.91320', '-84.14270')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'TNC083': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ERIN', 1490, '36.31590', '-87.70260'), ('TENNESSEE RIDGE', 1334, '36.31980', '-87.76380')], 'partOfState': '', 'wfo': 'OHX'}, -'GAC291': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLAIRSVILLE', 659, '34.87360', '-83.95160')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'TNC085': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('MCEWEN', 1702, '36.10680', '-87.63570'), ('NEW JOHNSONVILLE', 1905, '36.01690', '-87.95740'), ('WAVERLY', 4028, '36.09240', '-87.78780')], 'partOfState': '', 'wfo': 'OHX'}, -'GAC297': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BETWEEN', 148, '33.81300', '-83.80890'), ('GOOD HOPE', 210, '33.78390', '-83.60980'), ('JERSEY', 163, '33.71750', '-83.80030'), ('LOGANVILLE', 5435, '33.83590', '-83.89510'), ('MONROE', 11407, '33.79410', '-83.71190'), ('SOCIAL CIRCLE', 3379, '33.65850', '-83.71800'), ('WALNUT GROVE', 1241, '33.74510', '-83.85430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'TNC087': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GAINESBORO', 879, '36.36050', '-85.65380')], 'partOfState': '', 'wfo': 'OHX'}, -'KSC095': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CLEVELAND', None, '37.55000', '-98.13000'), ('CUNNINGHAM', 514, '37.64490', '-98.43200'), ('KINGMAN', 3387, '37.64700', '-98.11350'), ('MT VERNON', None, '37.72000', '-97.85000'), ('NASHVILLE', 111, '37.43860', '-98.42230'), ('NORWICH', 551, '37.45670', '-97.84550'), ('PENALOSA', 27, '37.71580', '-98.31970'), ('RAGO', None, '37.45000', '-98.08000'), ('SPIVEY', 80, '37.44820', '-98.16500'), ('ZENDA', 123, '37.44500', '-98.28220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'GAC207': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CULLODEN', 223, '32.86300', '-84.09370'), ('FORSYTH', 3776, '33.03430', '-83.94000')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'MIC149': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BURR OAK', 797, '41.84820', '-85.32090'), ('CENTREVILLE', 1579, '41.92180', '-85.52740'), ('COLON', 1227, '41.95900', '-85.32350'), ('CONSTANTINE', 2095, '41.83800', '-85.66530'), ('MENDON', 917, '42.00840', '-85.45410'), ('STURGIS', 11285, '41.80170', '-85.42120'), ('THREE RIVERS', 7328, '41.94410', '-85.63210'), ('WHITE PIGEON', 1627, '41.79840', '-85.64280')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'TNC159': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CARTHAGE', 2251, '36.25680', '-85.94370'), ('GORDONSVILLE', 1066, '36.18310', '-85.93260'), ('SOUTH CARTHAGE', 1302, '36.24070', '-85.95800')], 'partOfState': '', 'wfo': 'OHX'}, -'VAC025': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALBERTA', 306, '36.86460', '-77.88300'), ('ANTE', None, '36.66500', '-77.71910'), ('BARROWS STORE', None, '36.93470', '-77.97920'), ('BOWENS CORNER', None, '36.63590', '-77.96080'), ('BRODNAX', 317, '36.70350', '-78.03290'), ('BRUNSWICK', None, '36.64760', '-77.86990'), ('CALLAVILLE', None, '36.82830', '-77.66780'), ('COCHRAN', None, '36.84310', '-77.90530'), ('DANIELTOWN', None, '36.90470', '-77.96000'), ('DOLPHIN', None, '36.83790', '-77.79480'), ('EBONY', None, '36.57870', '-77.99100'), ('EDGERTON', None, '36.77840', '-77.77090'), ('GASBURG', None, '36.56700', '-77.89590'), ('LAWRENCEVILLE', 1275, '36.75760', '-77.85200'), ('MEREDITHVILLE', None, '36.79850', '-77.95990'), ('ORDSBURG', None, '36.96260', '-77.86000'), ('PRICES MILL', None, '36.81260', '-77.92340'), ('RAWLINGS', None, '36.94830', '-77.77880'), ('TRIPLET', None, '36.61030', '-77.76610'), ('VALENTINES', None, '36.58870', '-77.83020'), ('WARFIELD', None, '36.89550', '-77.74440'), ('WHITE PLAINS', None, '36.63360', '-77.91320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'KSC149': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELVUE', 228, '39.21670', '-96.17780'), ('BLAINE', None, '39.49670', '-96.40280'), ('EMMETT', 277, '39.30720', '-96.05580'), ('HAVENSVILLE', 146, '39.51110', '-96.07780'), ('LOUISVILLE', 209, '39.25030', '-96.31450'), ('OLSBURG', 192, '39.43060', '-96.61530'), ('ONAGA', 704, '39.48890', '-96.16970'), ('ST. GEORGE', 434, '39.19110', '-96.42000'), ('ST. MARYS', 2198, '39.19420', '-96.07080'), ('TUTTLE CREEK LAKE', None, '39.31000', '-96.64000'), ('WAMEGO', 4246, '39.20200', '-96.30470'), ('WESTMORELAND', 631, '39.40000', '-96.41670'), ('WHEATON', 92, '39.50220', '-96.32060')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'TNC153': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CAGLE', None, '35.47420', '-85.46250'), ('CARTWRIGHT', None, '35.27690', '-85.46030'), ('DUNLAP', 4173, '35.37270', '-85.38650'), ('LONE OAK', None, '35.19810', '-85.36560')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC145': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ASH VALLEY', None, '38.29000', '-99.21000'), ('BURDETT', 256, '38.19340', '-99.52610'), ('FRIZELL', None, '38.17000', '-99.20000'), ('GARFIELD', 198, '38.07760', '-99.24460'), ('LARNED', 4236, '38.18320', '-99.10130'), ('ROZEL', 182, '38.19590', '-99.40210'), ('SANFORD', None, '38.17000', '-99.31000'), ('ZOOK', None, '38.04000', '-99.09000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'TNC151': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIG SOUTH FORK NATIONAL R', None, '36.52000', '-84.67310'), ('ELGIN', None, '36.33030', '-84.60940'), ('HUNTSVILLE', 981, '36.41360', '-84.48750'), ('KETCHEN', None, '36.56810', '-84.32030'), ('NORMA', None, '36.33470', '-84.38780'), ('ONEIDA', 3615, '36.50390', '-84.51500'), ('SLICK ROCK', None, '36.30080', '-84.50720'), ('SMOKEY JUNCTION', None, '36.28670', '-84.36580'), ('WINFIELD', 911, '36.56180', '-84.45050')], 'partOfState': '', 'wfo': 'MRX'}, -'KSC147': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AGRA', 306, '39.76100', '-99.11970'), ('GLADE', 114, '39.68260', '-99.31060'), ('KIRWIN', 229, '39.66980', '-99.12280'), ('LOGAN', 603, '39.66130', '-99.56650'), ('LONG ISLAND', 155, '39.94630', '-99.53290'), ('PHILLIPSBURG', 2668, '39.75140', '-99.32190'), ('PRAIRIE VIEW', 141, '39.83170', '-99.57290'), ('SPEED', 44, '39.67630', '-99.42030'), ('WOODRUFF', None, '39.99250', '-99.42600')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'TNC157': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARLINGTON', 2569, '35.28220', '-89.66420'), ('BARTLETT', 40543, '35.21550', '-89.83530'), ('COLLIERVILLE', 31872, '35.05530', '-89.67850'), ('DOWNTOWN MEMPHIS', None, '35.13330', '-90.05000'), ('EADS', None, '35.20000', '-89.66670'), ('ELLENDALE', None, '35.23330', '-89.83330'), ('FRAYSER', None, '35.21670', '-89.97000'), ('GERMANTOWN', 37348, '35.08890', '-89.79170'), ('LAKELAND', 6862, '35.24020', '-89.72980'), ('MILLINGTON', 10433, '35.33440', '-89.88830'), ('SOUTHEAST MEMPHIS', None, '35.06670', '-89.88330'), ('SOUTHWEST MEMPHIS', None, '35.05000', '-90.06670'), ('WHITEHAVEN', None, '35.01670', '-90.03330')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'MIC145': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARTHUR', None, '43.44290', '-83.75110'), ('BIRCH RUN', 1653, '43.25010', '-83.79010'), ('BRIDGEPORT', 7849, '43.37580', '-83.88320'), ('BURT', 1122, '43.23680', '-83.90630'), ('CHESANING', 2548, '43.18460', '-84.11990'), ('FENMORE', None, '43.17280', '-84.34530'), ('FOSTERS', None, '43.29810', '-83.91640'), ('FRANKENMUTH', 4838, '43.33050', '-83.74020'), ('FREELAND', 5147, '43.52110', '-84.11770'), ('HEMLOCK', 1585, '43.41580', '-84.23160'), ('LAYTON CORNERS', None, '43.17580', '-83.98830'), ('MARION SPRINGS', None, '43.24440', '-84.32720'), ('MERRILL', 782, '43.40930', '-84.33530'), ('NELSON', None, '43.33420', '-84.22970'), ('OAKLEY', 339, '43.14310', '-84.16860'), ('SAGINAW', 61799, '43.41960', '-83.94950'), ('SHIELDS', 6590, '43.41770', '-84.07320'), ('ST. CHARLES', 2215, '43.29940', '-84.14970'), ('ZILWAUKEE', 1799, '43.48000', '-83.92180')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TNC155': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIRD CROSSING', None, '35.91170', '-83.36560'), ('ELKMONT', None, '35.65220', '-83.58220'), ('GATLINBURG', 3382, '35.72340', '-83.49370'), ('HARRISBURG', None, '35.86250', '-83.48440'), ('KODAK', None, '35.97310', '-83.62860'), ('MCMAHAN', None, '35.91500', '-83.67310'), ('PIGEON FORGE', 5083, '35.79270', '-83.55810'), ('PITTMAN CENTER', 477, '35.75880', '-83.38830'), ('SEVIERVILLE', 11757, '35.89200', '-83.57820'), ('SEYMOUR', 8850, '35.87470', '-83.77390'), ('WEARS VALLEY', None, '35.71360', '-83.65580')], 'partOfState': '', 'wfo': 'MRX'}, -'MIC147': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ADAIR', None, '42.79810', '-82.63390'), ('ALGONAC', 4613, '42.62210', '-82.53460'), ('BERVILLE', None, '42.90830', '-82.88310'), ('BROCKWAY', None, '43.07440', '-82.76560'), ('CAPAC', 1775, '43.01330', '-82.92930'), ('EMMETT', 251, '42.99110', '-82.76590'), ('FAIR HAVEN', None, '42.67740', '-82.64810'), ('HARSENS ISLAND', None, '42.59550', '-82.57850'), ('JEDDO', None, '43.15150', '-82.58380'), ('LAKEPORT', None, '43.11500', '-82.49730'), ('LYNN TOWNSHIP', None, '43.11750', '-82.92930'), ('MARINE CITY', 4652, '42.71420', '-82.50110'), ('MARYSVILLE', 9684, '42.91020', '-82.47980'), ('PORT HURON', 32338, '42.99370', '-82.43360'), ('RUBY', None, '43.04220', '-82.60750'), ('SMITHS CREEK', None, '42.91440', '-82.60100'), ('ST. CLAIR', 5802, '42.82470', '-82.49290'), ('WADHAMS', None, '42.98720', '-82.53860'), ('YALE', 2063, '43.12800', '-82.79640')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'WVC017': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('WEST UNION', 806, '39.29630', '-80.77560')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC015': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CLAY', 593, '38.46280', '-81.08020')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC013': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ARNOLDSBURG', None, '38.78900', '-81.12790'), ('GRANTSVILLE', 565, '38.92050', '-81.09340')], 'partOfState': '', 'wfo': 'RLX'}, -'WVC011': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BARBOURSVILLE', 3183, '38.40480', '-82.29450'), ('CULLODEN', 2940, '38.41710', '-82.06780'), ('HUNTINGTON', 51475, '38.41300', '-82.43380'), ('MILTON', 2206, '38.43390', '-82.13770'), ('PEA RIDGE', 6363, '38.41400', '-82.32000')], 'partOfState': '', 'wfo': 'RLX'}, -'KYC039': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARLINGTON', 395, '36.79010', '-89.01230'), ('BARDWELL', 799, '36.87260', '-89.01000')], 'partOfState': '', 'wfo': 'PAH'}, -'WVC019': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ANSTED', 1576, '38.13590', '-81.10210'), ('BABCOCK STATE PARK', None, '37.99350', '-80.97210'), ('FAYETTEVILLE', 2754, '38.05210', '-81.10550'), ('GAULEY BRIDGE', 738, '38.16830', '-81.20170'), ('HAWKS NEST STATE PARK', None, '38.12380', '-81.11920'), ('MEADOW BRIDGE', 321, '37.86230', '-80.85540'), ('MONTGOMERY', 1942, '38.17380', '-81.31850'), ('MOUNT HOPE', 1487, '37.89530', '-81.17100'), ('OAK HILL', 7589, '37.98200', '-81.14770'), ('PAX', 174, '37.90960', '-81.26390'), ('POWELLTON', 1796, '38.09050', '-81.31620'), ('SMITHERS', 904, '38.17850', '-81.30650'), ('THURMOND', 7, '37.96380', '-81.08030')], 'partOfState': '', 'wfo': 'RLX'}, -'NCC159': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CHINA GROVE', 3616, '35.57120', '-80.58030'), ('CLEVELAND', 808, '35.73090', '-80.67920'), ('CRAVEN', None, '35.62830', '-80.33190'), ('ENOCHVILLE', 2851, '35.52000', '-80.66600'), ('FAITH', 695, '35.58810', '-80.46120'), ('GOLD HILL', None, '35.52110', '-80.33830'), ('GRANITE QUARRY', 2175, '35.61320', '-80.44570'), ('LANDIS', 2996, '35.54630', '-80.61190'), ('MOUNT ULLA', None, '35.65830', '-80.72690'), ('ROCKWELL', 1971, '35.55180', '-80.40690'), ('SALISBURY', 26462, '35.66650', '-80.48290'), ('SPENCER', 3355, '35.69440', '-80.43310'), ('WOODLEAF', None, '35.76890', '-80.59110')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC155': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BARKER TEN MILE', 976, '34.67980', '-78.98880'), ('BARNESVILLE', None, '34.40860', '-79.04690'), ('BOWMORE', 145, '34.54190', '-79.30330'), ('BUIE', None, '34.73640', '-79.14500'), ('FAIRMONT', 2604, '34.49670', '-79.11440'), ('LUMBER BRIDGE', 118, '34.88830', '-79.07250'), ('LUMBERTON', 20795, '34.61810', '-79.00890'), ('MARIETTA', 164, '34.36890', '-79.12740'), ('MAXTON', 2551, '34.73500', '-79.34920'), ('MCDONALD', 119, '34.55310', '-79.17630'), ('ORRUM', 79, '34.46580', '-79.00940'), ('PARKTON', 428, '34.90250', '-79.01190'), ('PEMBROKE', 2399, '34.68000', '-79.19530'), ('PROCTORVILLE', 133, '34.47540', '-79.03790'), ('PURVIS', None, '34.58860', '-79.26360'), ('RAEMON', 212, '34.63750', '-79.34890'), ('RAYNHAM', 67, '34.57420', '-79.19530'), ('RED SPRINGS', 3493, '34.81500', '-79.18330'), ('RENNERT', 283, '34.81420', '-79.08110'), ('ROWLAND', 1146, '34.53640', '-79.29170'), ('ROWLAND', 1146, '34.53660', '-79.29270'), ('SMITHS', None, '34.65280', '-78.86780'), ('ST. PAULS', 2137, '34.80640', '-78.97140'), ('TOLARSVILLE', None, '34.76110', '-78.87250')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCC157': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BETHANY', None, '36.31670', '-79.85000'), ('DRAPER', None, '36.51670', '-79.68330'), ('EDEN', 15908, '36.50000', '-79.75000'), ('EDEN', 15908, '36.50570', '-79.74220'), ('ELLISBORO', None, '36.33330', '-79.98330'), ('HARRISONS CROSSROADS', None, '36.43330', '-79.68330'), ('INTELLIGENCE', None, '36.36670', '-79.90000'), ('LAWSONVILLE', None, '36.40000', '-79.56670'), ('MADISON', 2262, '36.38620', '-79.97550'), ('MAYFIELD', None, '36.51670', '-79.56670'), ('MAYODAN', 2417, '36.41350', '-79.97290'), ('MAYODAN', 2417, '36.41670', '-79.96670'), ('MONROETON', None, '36.28330', '-79.73330'), ('OREGON HILL', None, '36.45000', '-79.65000'), ('PRICE', None, '36.53330', '-79.91670'), ('REIDSVILLE', 14485, '36.34830', '-79.67240'), ('RUFFIN', None, '36.45000', '-79.55000'), ('STONEVILLE', 1002, '36.46570', '-79.90660'), ('WENTWORTH', 2779, '36.40000', '-79.76670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'NCC151': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARCHDALE', 9014, '35.90380', '-79.96630'), ('ASHEBORO', 21672, '35.71980', '-79.81170'), ('COLERIDGE', None, '35.64000', '-79.60000'), ('FRANKLINVILLE', 1258, '35.74500', '-79.69180'), ('LIBERTY', 2661, '35.85420', '-79.57140'), ('MARTHA', None, '35.62000', '-80.01000'), ('NEW HOPE', None, '35.55000', '-80.02000'), ('RAMSEUR', 1588, '35.73340', '-79.65060'), ('RANDLEMAN', 3557, '35.81700', '-79.80240'), ('SEAGROVE', 246, '35.54150', '-79.77690'), ('STALEY', 347, '35.79460', '-79.55140'), ('TRINITY', 6690, '35.88790', '-80.01450'), ('ULAH', None, '35.64000', '-79.84000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCC153': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('COVINGTON', None, '35.15000', '-79.87000'), ('DERBY', None, '35.15000', '-79.65000'), ('DIGGS', None, '34.85000', '-79.87000'), ('DOBBINS HEIGHTS', 936, '34.90660', '-79.69350'), ('EAST ROCKINGHAM', 3885, '34.91130', '-79.76550'), ('ELLERBE', 1021, '35.07070', '-79.76080'), ('HAMLET', 6018, '34.88960', '-79.70930'), ('HOFFMAN', 624, '35.03250', '-79.54970'), ('NORMAN', 72, '35.16390', '-79.72250'), ('ROCKINGHAM', 9672, '34.93930', '-79.76230')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'MSC039': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('AGRICOLA', None, '30.80720', '-88.52030'), ('AVENT', None, '30.98390', '-88.75960'), ('BASIN', None, '30.79860', '-88.64600'), ('BENNDALE', None, '30.87060', '-88.80720'), ('BEXLEY', None, '30.96720', '-88.67890'), ('EVANSTON', None, '30.90330', '-88.56580'), ('LUCEDALE', 2458, '30.92440', '-88.59000'), ('MERRILL', None, '30.97830', '-88.72060'), ('MOVELLA', None, '30.76360', '-88.51250'), ('SHIPMAN', None, '30.87870', '-88.47400')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'WVC081': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEAVER', 1378, '37.74050', '-81.15090'), ('BECKLEY', 17254, '37.78750', '-81.18580'), ('BRADLEY', 2371, '37.86140', '-81.19630'), ('COAL CITY', 1905, '37.67620', '-81.21450'), ('CRAB ORCHARD', 2761, '37.74060', '-81.23140'), ('DANIELS', 1846, '37.72260', '-81.12600'), ('GLEN DANIEL', None, '37.77900', '-81.33740'), ('LESTER', 322, '37.73510', '-81.30090'), ('MABSCOTT', 1403, '37.76830', '-81.21230'), ('MACARTHUR', 1693, '37.75700', '-81.20950'), ('PINEY VIEW', 1046, '37.84710', '-81.13890'), ('PROSPERITY', 1310, '37.83530', '-81.20320'), ('RHODELL', 234, '37.60980', '-81.30500'), ('SHADY SPRING', 2078, '37.70300', '-81.09520'), ('SOPHIA', 1301, '37.70780', '-81.25600'), ('STANAFORD', 1443, '37.81500', '-81.15200')], 'partOfState': '', 'wfo': 'RLX'}, -'WIC099': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRANTWOOD', None, '45.56290', '-90.11520'), ('CATAWBA', 149, '45.53580', '-90.53290'), ('FIFIELD', None, '45.87980', '-90.42220'), ('KENNAN', 171, '45.53090', '-90.58610'), ('OGEMA', None, '45.44360', '-90.29820'), ('PARK FALLS', 2793, '45.93340', '-90.44590'), ('PHILLIPS', 1675, '45.69560', '-90.39770'), ('PRENTICE', 626, '45.54170', '-90.28810'), ('SPIRIT', None, '45.45420', '-90.11440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'MSC033': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('LAKE CORMORANT', None, '34.90000', '-90.21670'), ('EUDORA', None, '34.83330', '-90.15000'), ('HERNANDO', 6812, '34.82760', '-89.98690'), ('HOLLYWOOD', None, '34.75000', '-90.20000'), ('HORN LAKE', 14099, '34.95610', '-90.03530'), ('LEWISBURG', None, '34.86670', '-89.81670'), ('LYNCHBURG', 2959, '34.96710', '-90.09450'), ('MEMPHIS', 87, '34.92570', '-90.14090'), ('NEWPORT', None, '34.89320', '-90.22850'), ('OLIVE BRANCH', 21054, '34.95480', '-89.82900'), ('SOUTHAVEN', 28977, '34.97440', '-89.99900'), ('WALLS', None, '34.95000', '-90.13330')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSC031': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COLLINS', 2683, '31.63780', '-89.55780'), ('MOUNT OLIVE', 893, '31.75940', '-89.65620'), ('SEMINARY', 335, '31.55920', '-89.49530')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MSC037': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BUDE', 1037, '31.46260', '-90.85120'), ('MEADVILLE', 519, '31.47180', '-90.89300'), ('ROXIE', 569, '31.50510', '-91.06720')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'MSC035': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('HATTIESBURG', 44779, '31.31280', '-89.30690'), ('PETAL', 7579, '31.34410', '-89.25140')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'TXC381': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUFFALO LAKE', None, '34.88890', '-102.13390'), ('CANYON', 12875, '34.98130', '-101.92160'), ('LAKE TANGLEWOOD', 825, '35.05900', '-101.78290'), ('PALO DURO CANYON', None, '34.94890', '-101.67190'), ('TIMBERCREEK CANYON', 406, '35.05480', '-101.81600'), ('UMBARGER', None, '34.95440', '-102.10500')], 'partOfState': '', 'wfo': 'AMA'}, -'TXC383': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BEST', None, '31.23000', '-101.62000'), ('BIG LAKE', 2885, '31.19380', '-101.45840'), ('NORTH REAGAN FIRE STATION', None, '31.57640', '-101.61110'), ('STILES', None, '31.41000', '-101.57000'), ('STILES', None, '31.40670', '-101.56580'), ('TEXON', None, '31.23000', '-101.69000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXC385': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BARKSDALE', None, '29.70000', '-100.03330'), ('CAMP WOOD', 822, '29.66890', '-100.01130'), ('LEAKEY', 387, '29.72440', '-99.76220'), ('RIO FRIO', None, '29.63330', '-99.73330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXC439': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARLINGTON', 332969, '32.69450', '-97.12750'), ('AZLE', 9600, '32.89520', '-97.53110'), ('BEDFORD', 47152, '32.84610', '-97.13440'), ('BENBROOK', 20208, '32.67840', '-97.46120'), ('BLUE MOUND', 2388, '32.85380', '-97.33720'), ('COLLEYVILLE', 19636, '32.89250', '-97.14710'), ('CROWLEY', 7467, '32.57730', '-97.35810'), ('DALWORTHINGTON GARDENS', 2186, '32.69370', '-97.15870'), ('EAGLE MOUNTAIN', 6599, '32.89340', '-97.44430'), ('EDGECLIFF', None, '32.65520', '-97.34130'), ('EULESS', 46005, '32.84910', '-97.07730'), ('EVERMAN', 5836, '32.63020', '-97.28260'), ('FOREST HILL', 12949, '32.66150', '-97.26530'), ('FORT WORTH', 534694, '32.75390', '-97.33620'), ('GRAPEVINE', 42059, '32.93350', '-97.07170'), ('HALTOM CITY', 39018, '32.81760', '-97.27070'), ('HASLET', 1134, '32.95820', '-97.33970'), ('HURST', 36273, '32.83550', '-97.17990'), ('KELLER', 27345, '32.93010', '-97.22610'), ('KENNEDALE', 5850, '32.64750', '-97.21910'), ('LAKE WORTH', 4618, '32.81370', '-97.43290'), ('LAKESIDE', 1040, '32.82160', '-97.48930'), ('MANSFIELD', 28031, '32.56710', '-97.11740'), ('NEWARK', 887, '32.99490', '-97.47080'), ('NORTH RICHLAND HILLS', 55635, '32.86010', '-97.21910'), ('PANTEGO', 2318, '32.71510', '-97.15460'), ('PECAN ACRES', 2289, '32.97000', '-97.47440'), ('PELICAN BAY', 1505, '32.92330', '-97.51920'), ('RENDON', 9022, '32.58000', '-97.23650'), ('RICHLAND HILLS', 8132, '32.81000', '-97.22610'), ('RIVER OAKS', 6985, '32.77570', '-97.39790'), ('SAGINAW', 12374, '32.86520', '-97.36530'), ('SANSOM PARK', 4181, '32.80260', '-97.40170'), ('SOUTHLAKE', 21519, '32.95320', '-97.14830'), ('WATAUGA', 21908, '32.87150', '-97.25090'), ('WESTLAKE', 207, '32.98500', '-97.19800'), ('WESTOVER HILLS', 658, '32.74530', '-97.41150'), ('WESTWORTH', None, '32.76000', '-97.42220'), ('WHITE SETTLEMENT', 14831, '32.75480', '-97.46020')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXC389': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BALMORHEA', 527, '30.98410', '-103.74350'), ('ORLA', None, '31.83000', '-103.91000'), ('PECOS', 9501, '31.41250', '-103.49560'), ('RED BLUFF', None, '31.90000', '-103.92000'), ('SARAGOSA', None, '31.03000', '-103.66000'), ('THE INTERSECTION OF U.S.', None, '31.64780', '-103.63080'), ('TOYAH', 100, '31.31950', '-103.79350'), ('TOYAH LAKE', None, '31.32280', '-103.41080'), ('TOYAVALE', None, '30.94000', '-103.79000'), ('VERHALEN', None, '31.13000', '-103.59000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXC449': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [("MILLER'S COVE", 120, '33.15570', '-95.11560'), ('MOUNT PLEASANT', 13935, '33.16550', '-94.97580'), ('TALCO', 570, '33.36200', '-95.10390'), ('WINFIELD', 499, '33.16650', '-95.10930')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXC433': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ASPERMONT', 1021, '33.13990', '-100.22490'), ('OLD GLORY', None, '33.12970', '-100.05550'), ('PEACOCK', None, '33.18220', '-100.39880'), ('SWENSON', None, '33.20690', '-100.31160')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXC431': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROOME', None, '31.75940', '-100.83690'), ('STERLING CITY', 1081, '31.83900', '-100.98550')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'KYC043': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CARTER CAVES STATE PARK', None, '38.37180', '-83.11890'), ('GRAYSON', 3877, '38.33360', '-82.93830'), ('GRAYSON LAKE STATE PARK', None, '38.21610', '-83.01760'), ('OLIVE HILL', 1813, '38.30320', '-83.16940')], 'partOfState': '', 'wfo': 'RLX'}, -'PRC109': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('LAMBOGLIA', 1121, '17.98630', '-65.98490'), ('PATILLAS', 4091, '18.00900', '-66.01390')], 'partOfState': '', 'wfo': 'SJU'}, -'KYC041': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('VEVAY', 1735, '38.74440', '-85.07120'), ('CARROLLTON', 3846, '38.67860', '-85.16460'), ('GHENT', 371, '38.73570', '-85.06100'), ('PRESTONVILLE', 164, '38.67950', '-85.19520'), ('WORTHVILLE', 215, '38.60940', '-85.06850')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYC047': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CROFTON', 838, '37.04810', '-87.48340'), ('FORT CAMPBELL NORTH', 14338, '36.65360', '-87.45970'), ('HAWKINS', None, '37.02910', '-87.65050'), ('HERNDON', None, '36.71290', '-87.60120'), ('HOPKINSVILLE', 30089, '36.85440', '-87.49090'), ('LAFAYETTE', 193, '36.66010', '-87.65820'), ('OAK GROVE', 7064, '36.66800', '-87.42730'), ('PEMBROKE', 797, '36.77400', '-87.35880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'KYC045': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARGYLE', None, '37.21670', '-84.81670'), ('BETHELRIDGE', None, '37.23330', '-84.76670'), ('CLEMENTSVILLE', None, '37.28330', '-85.10000'), ('DUNNVILLE', None, '37.20000', '-85.00000'), ('ELLISBURG', None, '37.46670', '-84.93330'), ('JACKTOWN', None, '37.45000', '-85.01670'), ('LIBERTY', 1850, '37.31780', '-84.93060'), ('MIDDLEBURG', None, '37.35000', '-84.81670'), ('MINTONVILLE', None, '37.18330', '-84.84000'), ('PHIL', None, '37.21670', '-84.96670'), ('RHEBER', None, '37.25000', '-85.01670'), ('WINDSOR', None, '37.13330', '-84.91670'), ('YOSEMITE', None, '37.35000', '-84.83330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'VAC053': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADDISON', None, '37.19750', '-77.50280'), ('BURGESS', None, '37.14050', '-77.50880'), ('BUTTERWORTH', None, '37.05110', '-77.62720'), ('CARSON', None, '37.03470', '-77.40530'), ('CENTER STAR', None, '37.11100', '-77.64000'), ('CHERRY HILL', None, '36.93810', '-77.62220'), ('CHURCH ROAD', None, '37.15600', '-77.63180'), ('DARVILLS', None, '37.06320', '-77.83390'), ('DEWITT', None, '37.03860', '-77.64320'), ('DINWIDDIE', None, '37.07710', '-77.58620'), ('FIVE FORKS', None, '37.13920', '-77.62310'), ('FORD', None, '37.14850', '-77.73150'), ('HEBRON', None, '37.14420', '-77.80560'), ('MCKENNEY', 441, '36.98560', '-77.72170'), ('PETERSBURG AIRPORT', None, '37.15920', '-77.52290'), ('REAMS', None, '37.10080', '-77.40610'), ('ROCKY RUN', None, '37.07540', '-77.68410'), ('SUTHERLAND', None, '37.19600', '-77.56330'), ('WALKERS', None, '37.15810', '-77.70640'), ('WHARFS STORE', None, '36.98180', '-77.57690'), ('WILSONS', None, '37.14370', '-77.85950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'PRC101': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BARAHONA', 2632, '18.35340', '-66.44590'), ('FRANQUEZ', None, '18.34210', '-66.42800'), ('MOROVIS', 2285, '18.32680', '-66.40520')], 'partOfState': '', 'wfo': 'SJU'}, -'KYC049': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FORD', None, '37.88330', '-84.25000'), ('RUCKERVILLE', None, '37.93330', '-84.10000'), ('TRAPP', None, '37.88330', '-84.05000'), ('WINCHESTER', 16724, '37.99730', '-84.18830')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'PRC103': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('DAGUAO', 1488, '18.22350', '-65.68070'), ('DUQUE', 1529, '18.24010', '-65.74460'), ('NAGUABO', 4432, '18.21350', '-65.73760'), ('PENA POBRE', None, '18.21870', '-65.82290'), ('RIO BLANCO', None, '18.21440', '-65.79320')], 'partOfState': '', 'wfo': 'SJU'}, -'TXC507': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BATESVILLE', 1298, '28.94730', '-99.61430'), ('COMETA', None, '28.66670', '-100.01670'), ('CRYSTAL CITY', 7190, '28.68990', '-99.82550'), ('LA PRYOR', 1491, '28.94860', '-99.84880'), ('LOMA VISTA', None, '28.76670', '-99.60000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'PRC105': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('NARANJITO', 1931, '18.30510', '-66.24500')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC107': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('OROCOVIS', 909, '18.22690', '-66.39180')], 'partOfState': '', 'wfo': 'SJU'}, -'NCC029': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BARTLETT', None, '36.28920', '-76.08470'), ('BELCROSS', None, '36.34740', '-76.15510'), ('BURNT MILLS', None, '36.39420', '-76.26530'), ('CAMDEN', None, '36.32730', '-76.16800'), ('GOOSE CREEK', None, '36.22810', '-76.02830'), ('HORSESHOE', None, '36.46000', '-76.39360'), ('INDIANTOWN', None, '36.33350', '-76.07730'), ('JOHNSONS CORNER', None, '36.43440', '-76.29890'), ('LAMBS CORNER', None, '36.37970', '-76.22220'), ('LILLY', None, '36.48570', '-76.30250'), ('OLD TRAP', None, '36.24050', '-76.02710'), ('PIERCEVILLE', None, '36.44830', '-76.29390'), ('RIDDLE', None, '36.28940', '-76.04350'), ('SHARON', None, '36.49560', '-76.31000'), ('SHILOH', None, '36.27140', '-76.08080'), ('SOUTH MILLS', None, '36.44530', '-76.32950'), ('SPENCES CORNER', None, '36.35080', '-76.19610'), ('TAR CORNER', None, '36.47690', '-76.28640'), ('TAYLORS BEACH', None, '36.27940', '-76.11720'), ('TEXAS', None, '36.19780', '-76.01030'), ('WHITEHALL SHORES', None, '36.29130', '-76.14530')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'WIC097': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMOND', 459, '44.26000', '-89.40000'), ('AMHERST', 964, '44.45000', '-89.28000'), ('AMHERST JUNCTION', 305, '44.46000', '-89.30000'), ('ARNOTT', None, '44.45000', '-89.43000'), ('BANCROFT', None, '44.31000', '-89.51000'), ('BLAINE', None, '44.31000', '-89.30000'), ('CUSTER', None, '44.50000', '-89.41000'), ('DANCY', None, '44.68000', '-89.69000'), ('ELLIS', None, '44.58000', '-89.43000'), ('JORDAN', None, '44.56000', '-89.48000'), ('JUNCTION CITY', 440, '44.58000', '-89.75000'), ('KEENE', None, '44.36000', '-89.46000'), ('KELLNER', None, '44.34000', '-89.71000'), ('NELSONVILLE', 191, '44.50000', '-89.30000'), ('PARK RIDGE', 488, '44.51000', '-89.54000'), ('PERU', None, '44.56000', '-89.23000'), ('PLOVER', 10520, '44.45000', '-89.53000'), ('POLONIA', None, '44.56000', '-89.41000'), ('ROSHOLT', 518, '44.63000', '-89.30000'), ('SHANTYTOWN', None, '44.68000', '-89.41000'), ('STEVENS POINT', 24551, '44.51000', '-89.56000'), ('STOCKTON', None, '44.51000', '-89.46000'), ('WHITING', 1760, '44.48900', '-89.56190')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'WIC091': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('DURAND', 1968, '44.62910', '-91.96060'), ('PEPIN', 878, '44.44240', '-92.14630'), ('STOCKHOLM', 97, '44.48360', '-92.26030')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'WIC093': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAY CITY', 465, '44.58530', '-92.45260'), ('ELLSWORTH', 2909, '44.73740', '-92.47980'), ('ELMWOOD', 841, '44.78010', '-92.14930'), ('MAIDEN ROCK', 121, '44.56780', '-92.30840'), ('PLUM CITY', 574, '44.63300', '-92.19180'), ('PRESCOTT', 3764, '44.75070', '-92.79010'), ('RIVER FALLS', 12560, '44.85570', '-92.62160'), ('SPRING VALLEY', 1189, '44.85000', '-92.23980')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNC165': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BUTTERFIELD', 564, '43.95820', '-94.79300'), ('DARFUR', 137, '44.05360', '-94.83730'), ('LA SALLE', 90, '44.07210', '-94.57000'), ('LEWISVILLE', 274, '43.92400', '-94.43510'), ('MADELIA', 2340, '44.04930', '-94.41710'), ('ODIN', 125, '43.86760', '-94.74170'), ('ORMSBY', 154, '43.85100', '-94.69860'), ('ST JAMES', None, '43.98480', '-94.62530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'NCC023': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CONNELLY SPRINGS', 1814, '35.74870', '-81.50000'), ('DREXEL', 1938, '35.75730', '-81.60820'), ('GLEN ALPINE', 1090, '35.72930', '-81.77860'), ('HILDEBRAN', 1472, '35.71520', '-81.42150'), ('ICARD', 2734, '35.72570', '-81.45860'), ('JONAS RIDGE', None, '35.97250', '-81.89500'), ('MORGANTON', 17310, '35.74160', '-81.69840'), ('PLEASANT GROVE', None, '35.63360', '-81.58390'), ('TABLE ROCK', None, '35.83810', '-81.80470'), ('VALDESE', 4485, '35.74650', '-81.55770')], 'partOfState': '', 'wfo': 'GSP'}, -'NCC025': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CONCORD', 55977, '35.40730', '-80.59430'), ('HARRISBURG', 4493, '35.32140', '-80.66510'), ('KANNAPOLIS', 36910, '35.49110', '-80.62040'), ('MIDLAND', None, '35.22720', '-80.50080'), ('MOUNT PLEASANT', 1259, '35.40250', '-80.43610')], 'partOfState': '', 'wfo': 'GSP'}, -'MSC147': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DEXTER', None, '31.07420', '-89.99280'), ('SALEM', None, '31.22970', '-90.11720'), ('TYLERTOWN', 1910, '31.11690', '-90.14250')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'MSC145': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BLUE SPRINGS', 144, '34.40290', '-88.87280'), ('ETTA', None, '34.46670', '-89.20000'), ('KEOWNVILLE', None, '34.55000', '-88.91670'), ('MYRTLE', 407, '34.55930', '-89.11580'), ('NEW ALBANY', 7607, '34.49060', '-89.02070'), ('NEW HARMONY', None, '34.40000', '-88.91670'), ('PINEDALE', None, '34.41670', '-89.20000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSC143': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DUBBS', None, '34.56670', '-90.36670'), ('DUNDEE', None, '34.51670', '-90.45000'), ('LITTLE TEXAS', None, '34.62670', '-90.28330'), ('NORTH TUNICA', 1450, '34.70090', '-90.37810'), ('PRICHARD', None, '34.71670', '-90.23330'), ('ROBINSONVILLE', None, '34.81670', '-90.31670'), ('TUNICA', 1132, '34.68820', '-90.38150')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSC141': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BELMONT', 1961, '34.50700', '-88.20800'), ('BURNSVILLE', 1034, '34.84200', '-88.31600'), ('GOLDEN', 201, '34.48520', '-88.18610'), ('IUKA', 3059, '34.80800', '-88.19730'), ('MIDAY', None, '34.73330', '-88.23330'), ('PADEN', 106, '34.66460', '-88.26460'), ('PINEFLAT', None, '34.98330', '-88.26670'), ('TISHOMINGO', 316, '34.63650', '-88.22990')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSC149': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('VICKSBURG', 26407, '32.32910', '-90.87080')], 'partOfState': 'WEST CENTRAL', 'wfo': 'JAN'}, -'OHC165': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUTLERVILLE', 231, '39.30200', '-84.08900'), ('CARLISLE', 5121, '39.57830', '-84.32090'), ('CORWIN', 256, '39.52500', '-84.07320'), ('FIVE POINTS', 2191, '39.56160', '-84.19710'), ('FRANKLIN', 11396, '39.55390', '-84.30120'), ('HARVEYSBURG', 563, '39.50030', '-84.00230'), ('LANDEN', 12766, '39.30790', '-84.27970'), ('LEBANON', 16962, '39.42670', '-84.21270'), ('LOVELAND PARK', 1799, '39.29840', '-84.26250'), ('MAINEVILLE', 885, '39.31580', '-84.22310'), ('MASON', 22016, '39.36000', '-84.30700'), ('MORROW', 1286, '39.34910', '-84.12660'), ('PLEASANT PLAIN', 156, '39.27970', '-84.10930'), ('SOUTH LEBANON', 2538, '39.37120', '-84.21140'), ('SPRINGBORO', 12380, '39.56340', '-84.23770'), ('WAYNESVILLE', 2558, '39.53410', '-84.08660')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'GAC127': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOYS ESTATE', None, '31.31650', '-81.47290'), ('BRUNSWICK', 15600, '31.14290', '-81.47100'), ('COUNTRY CLUB ESTATES', 7594, '31.21250', '-81.46440'), ('DOCK JUNCTION', 6951, '31.20220', '-81.51690'), ('EVERETT', None, '31.38730', '-81.63990'), ('GLYNN HAVEN', None, '31.18830', '-81.37690'), ('JEKYLL ISLAND', None, '31.04140', '-81.41730'), ('LITTLE ST. SIMMONS IS.', None, '31.29890', '-81.32860'), ('SEA ISLAND', None, '31.18330', '-81.35000'), ('ST. SIMONS', 13381, '31.17680', '-81.38450'), ('THALMANN', None, '31.29060', '-81.68900')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'PRC039': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CIALES', 3082, '18.33600', '-66.47100')], 'partOfState': '', 'wfo': 'SJU'}, -'GAC123': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EAST ELLIJAY', 707, '34.68210', '-84.47420'), ('ELLIJAY', 1584, '34.69230', '-84.48370')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'PRC035': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CAYEY', 19940, '18.11640', '-66.16270'), ('G. L. GARCIA', None, '18.12950', '-66.10430')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC037': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUAS CLARAS', 3499, '18.24950', '-65.66630'), ('CEIBA', 3698, '18.26660', '-65.64900'), ('ROOSEVELT ROADS', 3975, '18.23820', '-65.62780')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC031': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CAROLINA', 168164, '18.40840', '-65.98110')], 'partOfState': '', 'wfo': 'SJU'}, -'PRC033': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CATANO', None, '18.44540', '-66.13940')], 'partOfState': '', 'wfo': 'SJU'}, -'IAC081': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BRITT', 2052, '43.09730', '-93.80330'), ('CORWITH', 350, '42.98930', '-93.95860'), ('CRYSTAL LAKE', 285, '43.22360', '-93.79270'), ('GARNER', 2922, '43.09820', '-93.60250'), ('GOODELL', 174, '42.92360', '-93.61390'), ('KANAWHA', 739, '42.93400', '-93.79410'), ('KLEMME', 593, '43.00910', '-93.60110'), ('WODEN', 243, '43.23050', '-93.91040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'OKC141': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('DAVIDSON', 375, '34.24210', '-99.07820'), ('FREDERICK', 4637, '34.38890', '-99.01210'), ('GRANDFIELD', 1110, '34.23120', '-98.68730'), ('HOLLISTER', 60, '34.34160', '-98.87040'), ('LOVELAND', 14, '34.30420', '-98.77080'), ('MANITOU', 278, '34.50680', '-98.98050'), ('TIPTON', 916, '34.50130', '-99.13750')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'IAC083': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ACKLEY', 1809, '42.55150', '-93.05190'), ('ALDEN', 904, '42.51240', '-93.37900'), ('BUCKEYE', 110, '42.41840', '-93.37590'), ('ELDORA', 3035, '42.36020', '-93.10110'), ('HUBBARD', 885, '42.30610', '-93.30050'), ('IOWA FALLS', 5193, '42.52080', '-93.26580'), ('NEW PROVIDENCE', 227, '42.28190', '-93.17230'), ('OWASA', 38, '42.43110', '-93.20510'), ('RADCLIFFE', 607, '42.31810', '-93.43460'), ('STEAMBOAT ROCK', 336, '42.40800', '-93.06610'), ('UNION', 427, '42.24290', '-93.06260'), ('WHITTEN', 160, '42.26480', '-93.01140')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'INC095': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALEXANDRIA', 6260, '40.25820', '-85.67620'), ('ANDERSON', 59734, '40.09290', '-85.68800'), ('CHESTERFIELD', 2969, '40.11190', '-85.59280'), ('COUNTRY CLUB HEIGHTS', 91, '40.12540', '-85.68760'), ('EDGEWOOD', 1988, '40.10260', '-85.73760'), ('ELWOOD', 9737, '40.27570', '-85.83890'), ('FRANKTON', 1905, '40.22050', '-85.77250'), ('INGALLS', 1168, '39.96030', '-85.79880'), ('LAPEL', 1855, '40.06880', '-85.84750'), ('MARKLEVILLE', 383, '39.97720', '-85.61610'), ('ORESTES', 334, '40.27070', '-85.72520'), ('PENDLETON', 3873, '40.00030', '-85.74220'), ('RIVER FOREST', 28, '40.10950', '-85.72940'), ('SUMMITVILLE', 1090, '40.33730', '-85.64300'), ('WOODLAWN HEIGHTS', 73, '40.11720', '-85.69670')], 'partOfState': 'CENTRAL', 'wfo': 'IND'}, -'IAC085': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DUNLAP', 1139, '41.85280', '-95.59960'), ('LITTLE SIOUX', 217, '41.80830', '-96.02670'), ('LOGAN', 1545, '41.64460', '-95.79100'), ('MAGNOLIA', 200, '41.68740', '-95.87430'), ('MISSOURI VALLEY', 2992, '41.55890', '-95.89510'), ('MODALE', 303, '41.61920', '-96.01220'), ('MONDAMIN', 423, '41.70980', '-96.02080'), ('PERSIA', 363, '41.57900', '-95.57010'), ('PISGAH', 316, '41.83080', '-95.92680'), ('WOODBINE', 1564, '41.73650', '-95.70710')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'WAC011': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('GOVERNMENT ISLAND', None, '45.59000', '-122.53000'), ('ALPINE', None, '45.79000', '-122.43000'), ('AMBOY', 2085, '45.90000', '-122.45000'), ('BATTLE GROUND', 9296, '45.78200', '-122.54110'), ('BRUSH PRAIRIE', 2384, '45.73140', '-122.55140'), ('CAMAS', 12534, '45.58790', '-122.42350'), ('CAMP BONNEVILLE', None, '45.70000', '-122.41660'), ('CASCADE PARK', None, '45.61000', '-122.54000'), ('CHELATCHIE', None, '45.92000', '-122.38330'), ('CLARK COUNTY FAIRGROUNDS', None, '45.75000', '-122.67000'), ('COUGAR', None, '46.05000', '-122.30000'), ('ELKHORN MOUNTAIN', None, '45.73000', '-122.37000'), ('ELLSWORTH', None, '45.61000', '-122.57000'), ('EVERGREEN', None, '45.62730', '-122.52730'), ('FARGHER LAKE', None, '45.88330', '-122.51660'), ('FELIDA', 5683, '45.71680', '-122.70820'), ('HAZEL DELL', None, '45.67800', '-122.65400'), ('HEISSON', None, '45.81660', '-122.50000'), ('HOCKINSON', 5136, '45.73300', '-122.48300'), ('LA CENTER', 1654, '45.86420', '-122.66650'), ('LACAMAS LAKE', None, '45.61000', '-122.43000'), ('LARCH MOUNTAIN', None, '45.71000', '-122.29000'), ('MCLOUGHLIN HEIGHTS', None, '45.62000', '-122.60000'), ('MINNEHAHA', 7689, '45.65700', '-122.62630'), ('MOULTON', None, '45.82000', '-122.38000'), ('ORCHARDS', 17852, '45.66660', '-122.55000'), ('PROEBSTEL', None, '45.67000', '-122.45000'), ('RIDGEFIELD', 2147, '45.81730', '-122.74020'), ('SALMON CREEK', 16767, '45.71340', '-122.66110'), ('SALMON FALLS', None, '45.76000', '-122.42000'), ('SIFTON', None, '45.68000', '-122.51660'), ('VANCOUVER DOWNTOWN', None, '45.63420', '-122.66500'), ('VANCOUVER LAKE', None, '45.68000', '-122.73000'), ('VANCOUVER MALL', None, '45.65900', '-122.58370'), ('WASHOUGAL', 8595, '45.57900', '-122.34390'), ('YACOLT', 1055, '45.86570', '-122.40590'), ('YALE LAKE', None, '46.02000', '-122.31000')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'IAC087': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('GEODE STATE PARK', None, '40.81670', '-91.38330'), ('HILLSBORO', 205, '40.83680', '-91.71350'), ('LOWELL', None, '40.83330', '-91.43330'), ('MOUNT PLEASANT', 8751, '40.96310', '-91.54650'), ('MOUNT PLEASANT MUNICIPAL', None, '40.95000', '-91.51670'), ('MOUNT UNION', 132, '41.05740', '-91.39060'), ('NEW LONDON', 1937, '40.92750', '-91.40730'), ('OAKLAND MILLS', None, '40.93330', '-91.61670'), ('OLDS', 249, '41.13330', '-91.54540'), ('ROME', 113, '40.98330', '-91.68070'), ('SALEM', 464, '40.85200', '-91.62070'), ('SWEDESBURG', None, '41.10000', '-91.55000'), ('TRENTON', None, '41.06670', '-91.63330'), ('WAYLAND', 945, '41.14770', '-91.65790'), ('WINFIELD', 1131, '41.12580', '-91.43720')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'WAC013': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('DAYTON', 2655, '46.31770', '-117.97680'), ('STARBUCK', 130, '46.51910', '-118.12500')], 'partOfState': 'SOUTHEAST', 'wfo': 'PDT'}, -'INC103': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AMBOY', 360, '40.60160', '-85.92740'), ('BUNKER HILL', 987, '40.66040', '-86.10180'), ('DENVER', 541, '40.86420', '-86.07640'), ('GRISSOM AFB', 1652, '40.65940', '-86.14760'), ('MACY', 248, '40.95770', '-86.12890'), ('MEXICO', 984, '40.81290', '-86.11090'), ('PERU', 12994, '40.75360', '-86.06800')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'IWX'}, -'OKC149': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BESSIE', 190, '35.38490', '-98.98830'), ('BURNS FLAT', 1782, '35.35510', '-99.17510'), ('CANUTE', 524, '35.42510', '-99.27670'), ('CLOUD CHIEF', None, '35.25000', '-98.85000'), ('COLONY', 147, '35.34770', '-98.67010'), ('CORDELL', None, '35.30000', '-98.98000'), ('CORN', 591, '35.37890', '-98.78130'), ('COWDEN', None, '35.25000', '-98.72000'), ('DILL CITY', 526, '35.28250', '-99.13380'), ('FOSS', 127, '35.45060', '-99.17160'), ('LAKE VALLEY', None, '35.17000', '-98.87000'), ('ROCKY', 174, '35.15640', '-99.05850'), ('SENTINEL', 859, '35.15660', '-99.17350')], 'partOfState': '', 'wfo': 'OUN'}, -'INC101': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CRANE', 203, '38.89510', '-86.90040'), ('LOOGOOTEE', 2741, '38.67540', '-86.91430'), ('SHOALS', 807, '38.66700', '-86.79350')], 'partOfState': 'SOUTHWEST', 'wfo': 'IND'}, -'INC107': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALAMO', 137, '39.98370', '-87.05510'), ('CRAWFORDSVILLE', 15243, '40.04420', '-86.89660'), ('DARLINGTON', 854, '40.10820', '-86.77650'), ('LADOGA', 1047, '39.91680', '-86.79870'), ('LINDEN', 700, '40.19070', '-86.90200'), ('NEW MARKET', 659, '39.95190', '-86.92210'), ('NEW RICHMOND', 349, '40.19390', '-86.97860'), ('NEW ROSS', 334, '39.96390', '-86.71370'), ('WAVELAND', 416, '39.87700', '-87.04630'), ('WAYNETOWN', 909, '40.08750', '-87.06560'), ('WINGATE', 299, '40.17050', '-87.07350')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IND'}, -'GAC089': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AVONDALE ESTATES', 2609, '33.76860', '-84.26480'), ('BELVEDERE PARK', 18945, '33.74880', '-84.25970'), ('CANDLER-MCAFEE', 28294, '33.72560', '-84.27030'), ('CHAMBLEE', 9552, '33.88710', '-84.30300'), ('CLARKSTON', 7231, '33.81090', '-84.24070'), ('DECATUR', 18147, '33.77130', '-84.29780'), ('DORAVILLE', 9862, '33.90700', '-84.27430'), ('DRUID HILLS', 12741, '33.78710', '-84.32600'), ('DUNWOODY', 32808, '33.94230', '-84.31400'), ('GRESHAM PARK', 9215, '33.70320', '-84.31440'), ('LITHONIA', 2187, '33.71260', '-84.10600'), ('NORTH ATLANTA', 38579, '33.86250', '-84.33350'), ('NORTH DECATUR', 15270, '33.80720', '-84.28960'), ('NORTH DRUID HILLS', 18852, '33.82110', '-84.32800'), ('PANTHERSVILLE', 11791, '33.70670', '-84.27790'), ('PINE LAKE', 621, '33.79030', '-84.20600'), ('REDAN', 33841, '33.73620', '-84.15960'), ('SCOTTDALE', 9803, '33.79450', '-84.26320'), ('STONE MOUNTAIN', 7145, '33.80280', '-84.17170'), ('TUCKER', 26532, '33.85460', '-84.22310')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'INC105': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOOMINGTON', 69291, '39.16660', '-86.52150'), ('ELLETTSVILLE', 5078, '39.23140', '-86.62210'), ('STINESVILLE', 194, '39.30040', '-86.64920')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'IND'}, -'MNC127': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELVIEW', 412, '44.60590', '-95.32880'), ('CLEMENTS', 191, '44.37990', '-95.05480'), ('DELHI', 69, '44.59820', '-95.21300'), ('LAMBERTON', 859, '44.22970', '-95.26410'), ('LUCAN', 226, '44.40930', '-95.41270'), ('MILROY', 271, '44.41740', '-95.55400'), ('MORGAN', 903, '44.41570', '-94.92460'), ('NORTH REDWOOD', None, '44.56360', '-95.09350'), ('REDWOOD FALLS', 5459, '44.54160', '-95.11370'), ('REVERE', 100, '44.21890', '-95.36330'), ('SANBORN', 434, '44.21020', '-95.12900'), ('SEAFORTH', 77, '44.47690', '-95.32930'), ('VESTA', 339, '44.50650', '-95.41370'), ('WABASSO', 643, '44.40260', '-95.25500'), ('WALNUT GROVE', 599, '44.22560', '-95.46860'), ('WANDA', 103, '44.31600', '-95.21210')], 'partOfState': 'SOUTHWEST', 'wfo': 'MPX'}, -'KYC139': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('GOLCONDA', 726, '37.36270', '-88.48670'), ('CARRSVILLE', 64, '37.39770', '-88.37320'), ('GRAND RIVERS', 343, '37.00570', '-88.23590'), ('LEDBETTER', 1700, '37.04810', '-88.49720'), ('SALEM', 769, '37.26550', '-88.23950'), ('SMITHLAND', 401, '37.13780', '-88.40330')], 'partOfState': '', 'wfo': 'PAH'}, -'KYC137': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CRAB ORCHARD', 842, '37.46320', '-84.50610'), ('DOG WALK', None, '37.38330', '-84.50000'), ('HUSTONVILLE', 347, '37.47270', '-84.81770'), ('KINGS MOUNTAIN', None, '37.36670', '-84.70000'), ('MCKINNEY', None, '37.45000', '-84.76670'), ('MORELAND', None, '37.50000', '-84.81670'), ('MT. SALEM', None, '37.40000', '-84.78330'), ('PREACHERSVILLE', None, '37.53330', '-84.55000'), ('ROWLAND', None, '37.51670', '-84.63330'), ('STANFORD', 3430, '37.53190', '-84.66270'), ('WAYNESBURG', None, '37.33330', '-84.68330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYC135': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CAMP DIX', None, '38.49000', '-83.27000'), ('HEAD OF GRASSY', None, '38.40000', '-83.26000'), ('TOLLESBORO', None, '38.57000', '-83.57000'), ('VANCEBURG', 1731, '38.59420', '-83.32100')], 'partOfState': 'NORTHEAST', 'wfo': 'ILN'}, -'KYC133': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADAMSON', None, '37.20370', '-82.57830'), ('ARMINTA', None, '37.16270', '-83.02130'), ('BAKER', None, '37.21120', '-82.72070'), ('BANKS', None, '37.08280', '-83.02260'), ('BEEFHIDE', None, '37.23930', '-82.62670'), ('BELLCRAFT', None, '37.13650', '-82.82460'), ('BLACKEY', 153, '37.14020', '-82.97830'), ('BLUEFIELD', None, '37.13650', '-83.03010'), ('BURDINE', None, '37.18980', '-82.60290'), ('CARBON GLOW', None, '37.17500', '-82.95010'), ('CARCASSONNE', None, '37.17200', '-82.98810'), ('CHIP', None, '37.18530', '-82.71700'), ('COLLY', None, '37.12460', '-82.78450'), ('COLSON', None, '37.22870', '-82.86130'), ('CRAFTSVILLE', None, '37.18120', '-82.75350'), ('CROMONA', None, '37.18640', '-82.69650'), ('CROWN', None, '37.14530', '-82.84750'), ('DAVID', None, '37.16120', '-82.95000'), ('DAY', None, '37.07120', '-82.84720'), ('DEANE', None, '37.24050', '-82.77260'), ('DEFEATED CREEK', None, '37.05230', '-82.99180'), ('DEMOCRAT', None, '37.23370', '-82.79220'), ('DONGOLA', None, '37.09190', '-82.84010'), ('DUNHAM', None, '37.19350', '-82.64580'), ('EHKHORN MINE', None, '37.22370', '-82.71200'), ('ELKO', None, '37.13880', '-82.98930'), ('EOLIA', None, '37.05340', '-82.79200'), ('ERMINE', None, '37.11970', '-82.79340'), ('FARRADAY', None, '37.16360', '-82.77140'), ('FISHPOND LAKE', None, '37.16140', '-82.67690'), ('FLEMING-NEON', 840, '37.19180', '-82.70380'), ('FLINT', None, '37.05160', '-82.93170'), ('GANDER', None, '37.17560', '-83.00040'), ('GASKILL', None, '37.18490', '-82.61130'), ('GILLEY', None, '36.99490', '-83.11160'), ('GORDON', None, '37.00000', '-83.02390'), ('HALLIE', None, '37.10210', '-83.02240'), ('HAYMOND', None, '37.18500', '-82.69260'), ('HEMPHILL', None, '37.21550', '-82.70520'), ('HORN', None, '37.20730', '-82.72900'), ('HOT SPOT', None, '37.12760', '-82.91690'), ('ICE', None, '37.10860', '-82.85950'), ('INDIAN BOTTOM', None, '37.14240', '-82.95940'), ('ISOM', None, '37.18730', '-82.89950'), ('JENKINS', 2401, '37.17810', '-82.62660'), ('JEREMIAH', None, '37.16750', '-82.92900'), ('KINGS CREEK', None, '37.05270', '-82.91450'), ('LESTER', None, '37.21210', '-82.80600'), ('LETCHER', None, '37.14580', '-82.95930'), ('LEWIS CREEK', None, '36.99620', '-82.89740'), ('LILLEY CORNETT WOODS', None, '37.08490', '-82.98950'), ('LINEFORK', None, '37.02000', '-82.95990'), ('LOWNDES', None, '37.19870', '-82.68570'), ('LUCASTOWN', None, '37.20620', '-82.79610'), ('MAGGARD', None, '37.01550', '-82.88250'), ('MARLOWE', None, '37.13090', '-82.83110'), ('MAYKING', None, '37.13580', '-82.76450'), ('MCROBERTS', 921, '37.21180', '-82.66800'), ('MILLSTONE', None, '37.16500', '-82.75120'), ('NEON JUNCTION', None, '37.17970', '-82.71450'), ('OSCALOOSA', None, '37.10570', '-82.89400'), ('OVEN FORK', None, '37.05880', '-82.80900'), ('PARTRIDGE', None, '37.00820', '-82.89830'), ('PAYNE GAP', None, '37.15550', '-82.65870'), ('POLLY', None, '37.20240', '-82.82390'), ('POTTERS FORK', None, '37.18310', '-82.67350'), ('PREMIUM', None, '37.12360', '-82.91890'), ('RED STAR', None, '37.13940', '-83.02020'), ('ROXANA', None, '37.10920', '-82.94970'), ('SACKETT', None, '37.20270', '-82.88500'), ('SECO', None, '37.17370', '-82.73240'), ('SERGENT', None, '37.14810', '-82.77010'), ('SKYLINE', None, '37.07580', '-82.98170'), ('SOUTHDOWN', None, '37.16330', '-82.80410'), ('THORNTON', None, '37.15670', '-82.73970'), ('TILLIE', None, '37.18130', '-82.86370'), ('TOLLIVER TOWN', None, '37.18070', '-82.70900'), ('TRAILER', None, '37.11790', '-82.88170'), ('ULVAH', None, '37.12810', '-83.05260'), ('VAN', None, '37.15180', '-82.87220'), ('WHITAKER', None, '37.17230', '-82.72120'), ('WHITCO', None, '37.12010', '-82.85150'), ('WHITESBURG', 1600, '37.11810', '-82.82570'), ('WINTERS', None, '37.15480', '-82.76430'), ('WRIGHT', None, '37.15370', '-82.73090')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'LAC101': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AMELIA', 2423, '29.66370', '-91.10680'), ('BALDWIN', 2497, '29.83340', '-91.55370'), ('BAYOU VISTA', 4351, '29.69230', '-91.26710'), ('BERWICK', 4418, '29.70030', '-91.23580'), ('BURNS POINT', None, '29.57330', '-91.52850'), ('CENTERVILLE', None, '29.76000', '-91.42800'), ('CHARENTON', 1944, '29.86850', '-91.53640'), ('CYPREMORT POINT', None, '29.77470', '-91.77440'), ('FRANKLIN', 8354, '29.80080', '-91.51450'), ('MORGAN CITY', 12703, '29.70170', '-91.19190'), ('PATTERSON', 5130, '29.69170', '-91.30870')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'KYC131': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ASHER', None, '37.04400', '-83.40180'), ('BEAR BRANCH', None, '37.16390', '-83.54860'), ('BIG FORK', None, '37.05250', '-83.25670'), ('BIG ROCK', None, '37.04360', '-83.20730'), ('BOBS FORK', None, '37.16410', '-83.51850'), ('CAUSEY', None, '37.05760', '-83.28050'), ('CHAPPELL', None, '37.00960', '-83.34970'), ('CINDA', None, '37.10860', '-83.29460'), ('CONFLUENCE', None, '37.27180', '-83.38280'), ('CUTSHIN', None, '37.09030', '-83.26100'), ('DALEY', None, '37.13590', '-83.23260'), ('DRYHILL', None, '37.22310', '-83.37710'), ('ESSIE', None, '37.06450', '-83.45360'), ('FREW', None, '37.18170', '-83.24690'), ('HOSEA', None, '37.13670', '-83.44270'), ('HOSKINSTON', None, '37.07720', '-83.39170'), ('HYDEN', 204, '37.16170', '-83.37360'), ('KALIOPI', None, '37.23290', '-83.41510'), ('LEWIS CREEK', None, '36.98990', '-83.31190'), ('MOSLEY BEND', None, '37.27500', '-83.36000'), ('MOZELLE', None, '37.00080', '-83.39840'), ('NAPIER', None, '36.98420', '-83.28470'), ('ROARK', None, '37.02380', '-83.51670'), ('SANDY FORK', None, '36.93620', '-83.50540'), ('SAYLOR', None, '36.89920', '-83.46220'), ('SHOAL', None, '37.26840', '-83.43560'), ('SIZEROCK', None, '37.22270', '-83.50460'), ('SMILAX', None, '37.13340', '-83.28260'), ('SPRUCE PINE', None, '36.92330', '-83.44530'), ('STINNETT', None, '37.09190', '-83.39660'), ('THOUSANDSTICKS', None, '37.18500', '-83.42890'), ('TOULOUSE', None, '37.24850', '-83.35350'), ('WARBRANCH', None, '36.97430', '-83.44810'), ('WENDOVER', None, '37.12630', '-83.36290'), ('WOOTON', None, '37.17900', '-83.30330'), ('YEADDISS', None, '37.07020', '-83.21890')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'VAC181': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALLIANCE', None, '37.13810', '-76.78390'), ('BACONS CASTLE', None, '37.10530', '-76.73010'), ('BARHAM', None, '37.14110', '-77.11310'), ('BEACHLAND', None, '37.08530', '-76.81610'), ('BOOTH FORK', None, '36.97920', '-76.94720'), ('CABIN POINT', None, '37.18480', '-77.03150'), ('CARSLEY', None, '37.09560', '-77.00610'), ('CHIPPOKES STATE PARK', None, '37.13790', '-76.72670'), ('CLAREMONT', 343, '37.22710', '-76.96580'), ('DELK CROSSRAODS', None, '37.04420', '-76.79220'), ('DENDRON', 297, '37.03460', '-76.92420'), ('ELBERON', None, '37.07420', '-76.88430'), ('ELLIS FORK', None, '37.00310', '-76.90080'), ('GWALTNEY CORNER', None, '37.11130', '-77.02400'), ('HOG ISLAND GAME REFUGE', None, '37.17390', '-76.68130'), ('OAK HILL CORNER', None, '37.15920', '-77.06970'), ('POOLESVILLE', None, '37.09250', '-76.72440'), ('RUNNYMEDE', None, '37.03440', '-76.85170'), ('SAVEDGE', None, '37.13360', '-77.01940'), ('SCOTLAND', None, '37.18230', '-76.78700'), ('SPRING GROVE', None, '37.16560', '-76.97340'), ('SURRY', 262, '37.13740', '-76.83500')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC183': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOOKER', None, '36.93940', '-77.28500'), ('GRAY', None, '36.79670', '-77.34390'), ('GRIZZARD', None, '36.72640', '-77.43780'), ('HILDA', None, '36.82030', '-77.32940'), ('HOMEVILLE', None, '36.94920', '-77.17190'), ('HUSKE', None, '36.89750', '-77.41890'), ('JARRATT', 589, '36.81580', '-77.47010'), ('LITTLETON', None, '36.90270', '-77.14920'), ('LUMBERTON', None, '36.88140', '-77.21080'), ('MASON', None, '36.75940', '-77.38560'), ('NEWVILLE', None, '37.01250', '-77.17670'), ('NEWVILLE', None, '37.01280', '-77.17670'), ('OWENS', None, '36.85360', '-77.42470'), ('STONY CREEK', 202, '36.94740', '-77.40020'), ('SUSSEX', None, '36.91530', '-77.27940'), ('WAKEFIELD', 1038, '36.96860', '-76.98820'), ('WAVERLY', 2309, '37.03380', '-77.09570'), ('YALE', None, '36.84540', '-77.28760')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAC185': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMONATE', None, '37.18330', '-81.65000'), ('ASBERRYS', None, '37.01670', '-81.55000'), ('BANDY', None, '37.15000', '-81.71670'), ('BLUEFIELD', 5078, '37.23690', '-81.26610'), ('BOISSEVAIN', None, '37.28330', '-81.38330'), ('BURKES GARDEN', None, '37.10000', '-81.35000'), ('CEDAR BLUFF', 1085, '37.08680', '-81.76390'), ('CLAYPOOL HILL', 1719, '37.06510', '-81.75600'), ('CLIFFIELD', None, '37.10000', '-81.66670'), ('GLEN BURKE', None, '37.15000', '-81.85000'), ('GRATTON', None, '37.13330', '-81.41670'), ('JEWELL RIDGE', None, '37.18330', '-81.80000'), ('POCAHONTAS', 441, '37.30580', '-81.34320'), ('RAVEN', 2593, '37.09420', '-81.86200'), ('RICHLANDS', 4144, '37.09520', '-81.80230'), ('TAZEWELL', 4206, '37.11670', '-81.51670'), ('TIPTOP', None, '37.20000', '-81.43330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAC187': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARCO', None, '38.86000', '-78.17500'), ('BENTONVILLE', None, '38.83170', '-78.31670'), ('BLUE MOUNTAIN', None, '38.96250', '-78.03940'), ('BROWNTOWN', None, '38.81080', '-78.23390'), ('BUCKTON', None, '38.95530', '-78.25420'), ('CEDARVILLE', None, '38.97690', '-78.18440'), ('FRONT ROYAL', 13589, '38.92480', '-78.18470'), ('GLEN ECHO', None, '38.85000', '-78.22470'), ('HOWELLSVILLE', None, '38.97470', '-78.07940'), ('KARO', None, '38.87190', '-78.25220'), ('LINDEN', None, '38.90890', '-78.07580'), ('NINEVEH', None, '39.01580', '-78.16530'), ('RELIANCE', None, '39.00640', '-78.25060'), ('RIVERSIDE', None, '38.90140', '-78.21390')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'GAC083': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('TRENTON', 1942, '34.87490', '-85.50950')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'LAC109': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BAYOU CANE', 17046, '29.62390', '-90.75110'), ('CHAUVIN', 3229, '29.44550', '-90.59440'), ('COCODRIE', None, '29.24670', '-90.66140'), ('DULAC', 2458, '29.36980', '-90.70040'), ('GRAY', 4958, '29.67690', '-90.78160'), ('HOUMA', 32393, '29.57870', '-90.70690'), ('MONTEGUT', 1803, '29.46980', '-90.55990'), ('SCHRIEVER', 5880, '29.73610', '-90.82680')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'WYC031': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BORDEAUX', None, '41.95000', '-104.95000'), ('CHUGWATER', 244, '41.75570', '-104.82110'), ('GLENDO', 229, '42.50400', '-105.02490'), ('GUERNSEY', 1147, '42.26630', '-104.74430'), ('HARTVILLE', 76, '42.32740', '-104.72420'), ('SIBLEY PEAK', None, '42.44000', '-105.03000'), ('WHEATLAND', 3548, '42.05120', '-104.95890')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'WYC037': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BAIROIL', 97, '42.23800', '-107.55890'), ('BURNTFORK', None, '41.03000', '-110.00000'), ('EDEN', 388, '42.05000', '-109.43000'), ('FARSON', 242, '42.11000', '-109.44000'), ('GRANGER', 146, '41.59410', '-109.96590'), ('GREEN RIVER', 11808, '41.51590', '-109.46790'), ('LITTLE AMERICA', 56, '41.55000', '-109.86000'), ('MCKINNON', 49, '41.03000', '-109.93000'), ('POINT OF ROCKS', 3, '41.68000', '-108.78000'), ('RED DESERT', None, '41.65000', '-108.12000'), ('RELIANCE', 665, '41.67000', '-109.19000'), ('ROCK SPRINGS', 18708, '41.59810', '-109.22150'), ('SUPERIOR', 244, '41.76060', '-108.96360'), ('WAMSUTTER', 261, '41.66890', '-107.97590')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RIW'}, -'WYC035': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BIG PINEY', 408, '42.54100', '-110.11710'), ('BIG SANDY', None, '42.63000', '-109.47000'), ('BONDURANT', 155, '43.20000', '-110.41000'), ('BOULDER', 30, '42.72000', '-109.63000'), ('CORA', 76, '42.94000', '-109.98000'), ('DANIEL', 89, '42.87000', '-110.07000'), ('MARBLETON', 720, '42.55750', '-110.09940'), ('PINEDALE', 1412, '42.86640', '-109.86470')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RIW'}, -'LAC103': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ABITA SPRINGS', 1957, '30.47760', '-90.03130'), ('BUSH', None, '30.60860', '-89.90000'), ('COVINGTON', 8483, '30.47860', '-90.11210'), ('FOLSOM', 525, '30.63190', '-90.19800'), ('LACOMBE', 7518, '30.30770', '-89.92800'), ('MADISONVILLE', 677, '30.39520', '-90.16420'), ('MANDEVILLE', 10489, '30.37010', '-90.08220'), ('PEARL RIVER', 1839, '30.37220', '-89.74800'), ('SLIDELL', 25695, '30.28100', '-89.77770'), ('SUN', 471, '30.64960', '-89.90450')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'AKC232': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANGOON', 572, '57.47840', '-134.52000'), ('CUBE COVE', 72, '57.93510', '-134.71120'), ('ELFIN COVE', 32, '58.18620', '-136.33680'), ('GAME CREEK', 35, '58.05670', '-135.50790'), ('GUSTAVUS', 429, '58.40610', '-135.80110'), ('HOBART BAY', 3, '57.46580', '-133.35330'), ('HOONAH', 860, '58.11150', '-135.41980'), ('PELICAN', 163, '57.95320', '-136.20990'), ('SKAGWAY', 862, '59.52040', '-135.33570'), ('TENAKEE SPRINGS', 104, '57.77840', '-135.13940'), ('WHITESTONE LOGGING CAMP', 116, '58.07120', '-135.42980')], 'partOfState': '', 'wfo': 'AJK'}, -'WYC039': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('HOBACK JUNCTION', None, '43.32000', '-110.73000'), ('JACKSON', 8647, '43.47400', '-110.76390'), ('LAKE', None, '44.55000', '-110.40000'), ('MADISON', None, '44.64000', '-110.86000'), ('MOOSE', None, '43.65000', '-110.72000'), ('MORAN JUNCTION', None, '43.84000', '-110.51000'), ('OLD FAITHFUL', None, '44.46000', '-110.83000'), ('RAFTER J RANCH', 1138, '43.42620', '-110.79840'), ('TETON VILLAGE', 175, '43.57000', '-110.81000'), ('WILSON', 1294, '43.50000', '-110.87000')], 'partOfState': 'NORTHWEST', 'wfo': 'RIW'}, -'LAC107': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('NEWELLTON', 1482, '32.07260', '-91.23910'), ('ST. JOSEPH', 1340, '31.92010', '-91.23930'), ('WATERPROOF', 834, '31.80680', '-91.38510')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAC105': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AMITE', None, '30.73340', '-90.51000'), ('HAMMOND', 17639, '30.50770', '-90.46010'), ('INDEPENDENCE', 1724, '30.63550', '-90.50510'), ('KENTWOOD', 2205, '30.93470', '-90.51530'), ('PONCHATOULA', 5180, '30.43730', '-90.44350'), ('ROBERT', None, '30.50610', '-90.34080'), ('ROSELAND', 1162, '30.76470', '-90.51280'), ('TANGIPAHOA', 747, '30.87530', '-90.51390'), ('TICKFAW', 617, '30.57620', '-90.48570'), ('WILMER', None, '30.81390', '-90.36250')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'} +'AKC013': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Cold Bay', 88, '55.22500', '-162.73890'), ('False Pass', 64, '54.84100', '-163.43680'), ('King Cove', 792, '55.05860', '-162.29980'), ('Nelson Lagoon', 83, '55.92070', '-161.18900'), ('Sand Point', 952, '55.31950', '-160.49120')], 'partOfState': '', 'wfo': 'AFC'}, +'AKC016': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Akutan', 713, '54.13630', '-165.78600'), ('Atka', 92, '52.24220', '-174.20520'), ('Nikolski', 39, '52.96130', '-168.82210'), ('St. Paul', 532, '57.21050', '-170.21890')], 'partOfState': '', 'wfo': 'AFC'}, +'AKC020': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anchorage', 260283, '61.21806', '-149.90020')], 'partOfState': '', 'wfo': 'AFC'}, +'AKC050': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Akiachak', 585, '60.87170', '-161.40360'), ('Akiak', 309, '60.88570', '-161.19230'), ('Aniak', 572, '61.58070', '-159.53910'), ('Atmautluak', 294, '60.85430', '-162.26900'), ('Bethel', 5471, '60.76820', '-161.77220'), ('Chefornak', 394, '60.15370', '-164.21030'), ('Chuathbaluk', 119, '61.57320', '-159.21640'), ('Crooked Creek', 137, '61.87690', '-158.07780'), ('Eek', 280, '60.21890', '-162.02640'), ('Kasigluk', 543, '60.88900', '-162.54570'), ('Kipnuk', 644, '59.92320', '-164.10100'), ('Kwethluk', 713, '60.77180', '-161.38850'), ('Lime Village', 6, '61.43280', '-155.47250'), ('Lower Kalskag', 267, '61.51880', '-160.34990'), ('Mekoryuk', 210, '60.36570', '-166.28360'), ('Napakiak', 353, '60.67690', '-161.97870'), ('Napaskiak', 390, '60.66380', '-161.73810'), ('Newtok', 321, '60.94940', '-164.64410'), ('Nightmute', 208, '60.44830', '-164.80410'), ('Nunapitchuk', 466, '60.87910', '-162.45250'), ('Oscarville', 61, '60.69660', '-161.75920'), ('Platinum', 41, '58.97390', '-161.72520'), ('Quinhagak', 555, '59.73940', '-161.87240'), ('Red Devil', 48, '61.79030', '-157.34790'), ('Sleetmute', 100, '61.72110', '-157.18360'), ('Stony River', 61, '61.79310', '-156.58080'), ('Tuluksak', 428, '61.11580', '-160.93920'), ('Tuntutuliak', 370, '60.32630', '-162.74070'), ('Tununak', 325, '60.57890', '-165.24480'), ('Upper Kalskag', 230, '61.53910', '-160.32890')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC060': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('King Salmon', 442, '58.74290', '-156.54460'), ('Naknek', 678, '58.76070', '-156.90180'), ('South Naknek', 137, '58.68520', '-156.98050')], 'partOfState': '', 'wfo': 'AFC'}, +'AKC068': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anderson', 367, '64.30650', '-149.15970'), ('Cantwell', 222, '63.37160', '-148.92020'), ('Ferry', 29, '63.92790', '-149.13020'), ('Healy', 1000, '63.81150', '-149.00200'), ('Lignite', 99, '63.89050', '-149.04640'), ('McKinley Park', 142, '63.69670', '-148.95480')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC070': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Aleknagik', 221, '59.28550', '-158.62900'), ('Clarks Point', 75, '58.84570', '-158.51570'), ('Dillingham', 2466, '59.06220', '-158.52800'), ('Ekwok', 130, '59.36020', '-157.47940'), ('Koliganek', 182, '59.73610', '-157.26630'), ('Manokotak', 399, '59.00960', '-158.98970'), ('New Stuyahok', 471, '59.47320', '-157.26200'), ('Twin Hills', 69, '59.07950', '-160.21020')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC090': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('College', 11402, '64.86950', '-147.82340'), ('Eielson AFB', 5400, '64.67570', '-147.09130'), ('Ester', 1680, '64.86130', '-148.02450'), ('Fairbanks', 30224, '64.83710', '-147.64900'), ('Fox', 300, '64.96070', '-147.62130'), ('Harding Lake', 27, '64.42180', '-146.85070'), ('Moose Creek', 542, '64.71370', '-147.16520'), ('North Pole', 1570, '64.75320', '-147.35600'), ('Pleasant Valley', 623, '64.88130', '-146.86850'), ('Salcha', 854, '64.46930', '-146.94150'), ('Two Rivers', 482, '64.87100', '-147.09000')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC100': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Covenant Life', 102, '59.41720', '-136.02510'), ('Haines', 1811, '59.24030', '-135.44040'), ('Klukwan', 139, '59.40390', '-135.88450'), ('Mosquito Lake', 221, '59.52920', '-136.09100')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC105': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Angoon', 572, '57.49840', '-134.58800'), ('Cube Cove', 72, '57.93510', '-134.71120'), ('Elfin Cove', 32, '58.18620', '-136.33680'), ('Game Creek', 35, '58.05670', '-135.50790'), ('Gustavus', 429, '58.40610', '-135.80110'), ('Hobart Bay', 3, '57.41580', '-133.42200'), ('Hoonah', 860, '58.11050', '-135.44000'), ('Pelican', 163, '57.95320', '-136.20990'), ('Tenakee Springs', 104, '57.77840', '-135.21800'), ('Whitestone Logging', 116, '58.07120', '-135.42980')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC110': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Juneau', 30711, '58.29820', '-134.41100')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC122': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anchor Point', 1845, '59.77070', '-151.81310'), ('Clam Gulch', 173, '60.22470', '-151.40210'), ('Cooper Landing', 369, '60.49110', '-149.79230'), ('Crown Point', 75, '60.42250', '-149.33750'), ('English Bay', 158, '59.34690', '-151.90350'), ('Fox River', 616, '59.85830', '-150.95820'), ('Fritz Creek', 1603, '59.73610', '-151.29530'), ('Halibut Cove', 35, '59.58720', '-151.23770'), ('Happy Valley', 489, '59.94730', '-151.73220'), ('Homer', 3946, '59.63550', '-151.52220'), ('Hope', 137, '60.89720', '-149.63160'), ('Jakolof Bay', 28, '59.44690', '-151.51040'), ('Kachemak', 431, '59.67400', '-151.43100'), ('Kalifonsky', 285, '60.41010', '-151.27980'), ('Kasilof', 471, '60.33290', '-151.22990'), ('Kenai', 6942, '60.55370', '-151.20740'), ('Moose Pass', 206, '60.46730', '-149.38840'), ('Nikolaevsk', 345, '59.83230', '-151.58920'), ('Ninilchik', 772, '60.07350', '-151.63130'), ('Port Graham', 171, '59.34850', '-151.83740'), ('Primrose', 93, '60.37830', '-149.32280'), ('Ridgeway', 1932, '60.53200', '-151.08520'), ('Salamatof', 954, '60.61590', '-151.33740'), ('Seldovia', 286, '59.43910', '-151.70910'), ('Soldotna', 3759, '60.48750', '-151.06440'), ('Sterling', 4705, '60.51520', '-150.79710'), ('Tyonek', 193, '61.06700', '-151.21520')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC130': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Ketchikan', 7922, '55.33990', '-131.64500')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC150': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Akhiok', 80, '56.97730', '-154.21760'), ('Karluk', 27, '57.58610', '-154.39530'), ('Kodiak', 6334, '57.79850', '-152.40230'), ('Kodiak Station', 2025, '57.76290', '-152.52690'), ('Larsen Bay', 115, '57.55870', '-154.01970'), ('Old Harbor', 237, '57.24500', '-153.37360'), ('Ouzinkie', 225, '57.93520', '-152.45820'), ('Port Lions', 256, '57.89080', '-152.85890'), ('Womens Bay', 690, '57.68230', '-152.66870')], 'partOfState': '', 'wfo': 'AFC'}, +'AKC164': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Chignik', 79, '56.30160', '-158.41570'), ('Chignik Lagoon', 103, '56.28410', '-158.51110'), ('Chignik Lake', 145, '56.25610', '-158.77220'), ('Egegik', 116, '58.22870', '-157.39270'), ('Igiugig', 53, '59.33510', '-155.90720'), ('Iliamna', 102, '59.77510', '-154.86760'), ('Ivanof Bay', 22, '55.96080', '-159.48950'), ('Kokhanok', 174, '59.40750', '-154.74420'), ('Levelock', 122, '59.10860', '-156.88500'), ('Newhalen', 160, '59.73440', '-154.88010'), ('Nondalton', 221, '59.99040', '-154.85310'), ('Pedro Bay', 50, '59.79050', '-154.13660'), ('Perryville', 107, '55.95860', '-159.22610'), ('Pilot Point', 100, '57.61930', '-157.45900'), ('Port Alsworth', 104, '60.20950', '-154.30400'), ('Port Heiden', 119, '56.95510', '-158.58780')], 'partOfState': '', 'wfo': 'AFC'}, +'AKC170': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Big Lake', 2635, '61.52140', '-149.95440'), ('Butte', 2561, '61.54250', '-149.05170'), ('Chase', 41, '62.44910', '-150.10180'), ('Chickaloon', 213, '61.79510', '-148.48050'), ('Houston', 1202, '61.62410', '-149.78110'), ('Knik', 272, '61.45330', '-149.74160'), ('Lazy Mountain', 1158, '61.62620', '-148.94570'), ('Meadow Lakes', 4819, '61.62460', '-149.60120'), ('Palmer', 4533, '61.59890', '-149.10990'), ('Skwentna', 111, '61.99020', '-151.39780'), ('Sutton', 308, '61.71730', '-148.88120'), ('Talkeetna', 772, '62.33690', '-150.09260'), ('Trapper Creek', 423, '62.24140', '-150.41570'), ('Wasilla', 5469, '61.58020', '-149.46160'), ('Willow', 1658, '61.74080', '-150.05630')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC180': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Brevig Mission', 276, '65.33510', '-166.48090'), ('Elim', 313, '64.62170', '-162.26040'), ('Gambell', 649, '63.77660', '-171.70170'), ('Golovin', 144, '64.57900', '-162.99090'), ('Koyuk', 297, '64.93290', '-161.14830'), ('Nome', 3505, '64.50920', '-165.41520'), ('Savoonga', 643, '63.67970', '-170.47090'), ('Shaktoolik', 230, '64.36400', '-161.20420'), ('Stebbins', 547, '63.47850', '-162.22740'), ('St. Michael', 368, '63.47760', '-162.10910'), ('Unalakleet', 747, '63.88470', '-160.78980'), ('Wales', 152, '65.60930', '-168.07990'), ('White Mountain', 203, '64.68360', '-163.41950')], 'partOfState': '', 'wfo': 'AFG'}, +'AKC185': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anaktuvuk Pass', 282, '68.11590', '-151.67950'), ('Atqasuk', 228, '70.46580', '-157.40860'), ('Barrow', 4581, '71.26830', '-156.80630'), ('Deadhorse', 26, '70.20560', '-148.51160'), ('Kaktovik', 293, '70.04920', '-143.63700'), ('Nuiqsut', 433, '70.19150', '-150.99460'), ('Prudhoe Bay', 5, '70.28400', '-148.37620')], 'partOfState': '', 'wfo': 'AFG'}, +'AKC188': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Ambler', 309, '67.07690', '-157.91820'), ('Buckland', 406, '65.98110', '-161.13170'), ('Deering', 136, '66.07360', '-162.73170'), ('Kiana', 388, '66.97020', '-160.45820'), ('Kobuk', 109, '66.90460', '-156.89640'), ('Kotzebue', 3082, '66.88800', '-162.53540'), ('Noatak', 428, '67.58280', '-163.00520'), ('Noorvik', 634, '66.82860', '-161.04260'), ('Selawik', 772, '66.60330', '-160.02500'), ('Shungnak', 256, '66.87590', '-157.15570')], 'partOfState': '', 'wfo': 'AFG'}, +'AKC195': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Kake', 710, '56.96850', '-133.92500')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC198': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Annette', 43, '55.04210', '-131.58580'), ('Coffman Cove', 199, '56.00820', '-132.83200'), ('Craig', 1397, '55.47280', '-133.13500'), ('Dora Bay', 57, '55.18900', '-132.29520'), ('Edna Bay', 49, '55.94850', '-133.66700'), ('Hollis', 139, '55.48300', '-132.67300'), ('Hydaburg', 382, '55.20900', '-132.81740'), ('Hyder', 97, '55.91120', '-130.02200'), ('Kasaan', 39, '55.54670', '-132.40410'), ('Klawock', 854, '55.55380', '-133.09100'), ('Metlakatla', 1375, '55.12460', '-131.58060'), ('Naukati Bay', 135, '55.87370', '-133.18480'), ('Point Baker', 35, '56.34970', '-133.62400'), ('Polk Inlet', 135, '55.34970', '-132.54590'), ('Port Alice', 30, '55.79540', '-133.59600'), ('Port Protection', 63, '56.31710', '-133.59810'), ('Thorne Bay', 557, '55.67120', '-132.49900'), ('Whale Pass', 58, '56.10320', '-133.17270')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC220': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [], 'partOfState': '', 'wfo': 'AJK'}, +'AKC230': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Skagway', 862, '59.47570', '-135.33300')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC240': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Alcan', 27, '62.72300', '-141.18820'), ('Big Delta', 749, '64.13990', '-145.76210'), ('Delta Junction', 840, '64.06370', '-145.70820'), ('Dot Lake', 19, '63.62910', '-144.09510'), ('Dry Creek', 128, '63.65340', '-144.66530'), ('Eagle', 129, '64.77810', '-141.20060'), ('Eagle Village', 68, '64.79040', '-141.10910'), ('Fort Greely', 461, '63.95870', '-145.75610'), ('Healy Lake', 37, '63.97700', '-144.72410'), ('Northway', 107, '62.93290', '-141.87490'), ('Northway Junction', 72, '63.00210', '-141.77730'), ('Northway Village', 107, '62.97740', '-141.90360'), ('Tanacross', 140, '63.33910', '-143.43270'), ('Tetlin', 117, '63.06460', '-142.43890'), ('Tok', 1393, '63.30030', '-143.03880')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC261': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Chenega', 86, '60.10480', '-147.94370'), ('Chistochina', 93, '62.56440', '-144.68720'), ('Chitina', 123, '61.52480', '-144.48910'), ('Copper Center', 362, '61.98080', '-145.35110'), ('Copperville', 179, '62.04390', '-145.42070'), ('Cordova', 2454, '60.54780', '-145.74760'), ('Eyak', 172, '60.52850', '-145.59260'), ('Gakona', 215, '62.29270', '-145.30950'), ('Glennallen', 554, '62.08490', '-145.60350'), ('Gulkana', 88, '62.25270', '-145.39900'), ('Kenny Lake', 410, '61.71930', '-144.94830'), ('McCarthy', 42, '61.42320', '-142.89800'), ('Mendeltna', 63, '62.06620', '-146.44990'), ('Mentasta Lake', 142, '62.85180', '-143.76090'), ('Paxson', 43, '63.08990', '-145.61300'), ('Slana', 124, '62.70150', '-143.99400'), ('Tatitlek', 107, '60.88390', '-146.67770'), ('Tonsina', 92, '61.63580', '-145.15750')], 'partOfState': '', 'wfo': 'AFCAFGAJK'}, +'AKC270': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Alakanuk', 652, '62.67560', '-164.64360'), ('Chevak', 765, '61.53350', '-165.59160'), ('Emmonak', 767, '62.77830', '-164.53720'), ('Hooper Bay', 1014, '61.53980', '-166.10310'), ('Marshall', 349, '61.87530', '-162.06010'), ('Mountain Village', 755, '62.08780', '-163.71670'), ('Pilot Station', 550, '61.94140', '-162.87590'), ('Pitkas Point', 125, '62.03130', '-163.27000'), ('Russian Mission', 296, '61.79450', '-161.35380'), ('Scammon Bay', 465, '61.84500', '-165.58190'), ('Sheldon Point', 164, '62.51690', '-164.89280'), ("St. Mary's", 500, '62.04610', '-163.24630')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'AKC275': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [], 'partOfState': '', 'wfo': 'AJK'}, +'AKC282': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Yakutat', 680, '59.54250', '-139.73200')], 'partOfState': '', 'wfo': 'AJK'}, +'AKC290': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Allakaket', 97, '66.54520', '-152.73310'), ('Anvik', 104, '62.65550', '-160.20830'), ('Arctic Village', 152, '68.12520', '-145.52690'), ('Beaver', 84, '66.33420', '-147.31470'), ('Bettles', 43, '66.88660', '-151.59440'), ('Birch Creek', 28, '66.24540', '-145.83030'), ('Central', 134, '65.55580', '-144.85780'), ('Chalkyitsik', 83, '66.63800', '-143.75500'), ('Circle', 100, '65.82450', '-144.08260'), ('Circle Hot Springs', 29, '65.47030', '-144.68910'), ('Evansville', 28, '66.87860', '-151.45970'), ('Fort Yukon', 595, '66.56500', '-145.26180'), ('Galena', 675, '64.74080', '-156.81990'), ('Grayling', 194, '62.89950', '-160.10740'), ('Holy Cross', 227, '62.18140', '-159.79940'), ('Hughes', 78, '66.03710', '-154.26770'), ('Huslia', 293, '65.68990', '-156.29200'), ('Kaltag', 230, '64.33860', '-158.68620'), ('Koyukuk', 101, '64.91350', '-157.65070'), ('Lake Minchumina', 32, '63.87440', '-152.41280'), ('Manley Hot Springs', 72, '64.98580', '-150.63660'), ('McGrath', 401, '62.95430', '-155.57580'), ('Minto', 258, '65.02620', '-149.52960'), ('Nenana', 402, '64.54400', '-149.08670'), ('Nikolai', 100, '62.99520', '-154.39070'), ('Nulato', 336, '64.70760', '-158.22360'), ('Rampart', 45, '65.38360', '-150.01120'), ('Ruby', 188, '64.71760', '-155.52070'), ('Shageluk', 129, '62.66840', '-159.56510'), ('Stevens Village', 87, '65.99900', '-149.05470'), ('Takotna', 50, '62.99280', '-156.17180'), ('Tanana', 308, '65.15600', '-152.10190'), ('Venetie', 202, '67.01460', '-146.39790')], 'partOfState': '', 'wfo': 'AFCAFG'}, +'ALC001': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Autaugaville', 820, '32.43100', '-86.65580'), ('Billingsley', 116, '32.66030', '-86.70850'), ('Prattville', 24303, '32.46170', '-86.44670')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC003': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Barnwell', 0, '30.42493', '-87.87939'), ('Battles Wharf', 1876, '30.49451', '-87.92780'), ('Bay Minette', 7820, '30.77490', '-87.77533'), ('Bayside', 0, '30.40851', '-87.82361'), ('Belforest', 0, '30.60388', '-87.85248'), ('Blacksher', 0, '31.21088', '-87.83832'), ('Blakeley', 0, '30.74213', '-87.92419'), ('Bon Secour', 5044, '30.31348', '-87.73370'), ('Bridgehead', 5423, '30.66809', '-87.91101'), ('Bromley', 0, '30.73889', '-87.86749'), ('Carney', 7820, '30.92749', '-87.71918'), ('Carpenter', 7820, '30.85712', '-87.86609'), ('Caswell', 0, '30.29388', '-87.53943'), ('Cedar Grove', 0, '30.24469', '-87.83911'), ('Clay City', 12480, '30.48590', '-87.80670'), ('Crossroads', 7820, '30.83490', '-87.86108'), ('Daphne', 16581, '30.63489', '-87.88440'), ("D'Olive", 0, '30.87048', '-87.79578'), ('Douglasville', 7820, '30.86609', '-87.78552'), ('Dyas', 7820, '30.96252', '-87.67609'), ('Eastwood', 0, '30.89069', '-87.75299'), ('Elberta', 552, '30.42029', '-87.55908'), ('Ellisville', 0, '30.62811', '-87.79303'), ('Elsanor', 3782, '30.54529', '-87.58362'), ('Fairhope', 12480, '30.50208', '-87.88422'), ('Foley', 7590, '30.36829', '-87.70032'), ('Fort Mcdermott', 0, '30.67090', '-87.91718'), ('Fort Morgan', 1371, '30.22852', '-88.02301'), ('Gasque', 5044, '30.25330', '-87.81970'), ('Gateswood', 1348, '30.72113', '-87.58081'), ('Georgetown', 503, '31.29669', '-87.73541'), ('Gulf Highlands', 0, '30.23132', '-87.87970'), ('Gulf Shores', 0, '30.27032', '-87.69861'), ('Holly Hills', 0, '30.78308', '-87.77972'), ('Houstonville', 1876, '30.50189', '-87.90033'), ('Hurricane', 2002, '30.84113', '-87.90192'), ('I65 And Al 225', 7820, '30.94910', '-87.85760'), ('I65 And Al 287', 7820, '30.96448', '-87.75983'), ('I65 And Al 59', 7820, '30.95367', '-87.82251'), ('I65 And Cr 47', 7676, '31.01929', '-87.65570'), ('Jackson Oak', 16581, '30.62268', '-87.91193'), ('Josephine', 0, '30.32672', '-87.53113'), ('Latham', 844, '31.08490', '-87.83423'), ('Lillian', 19386, '30.41968', '-87.42981'), ('Little River', 7676, '31.25708', '-87.70862'), ('Lottie', 7676, '31.12909', '-87.62219'), ('Loxley', 1348, '30.62567', '-87.75629'), ('Magnolia Beach', 0, '30.51569', '-87.91748'), ('Magnolia Springs', 7590, '30.40033', '-87.77490'), ('Malbis', 5423, '30.65588', '-87.85193'), ('Marlow', 616, '30.46112', '-87.79919'), ('Miflin', 552, '30.37048', '-87.61078'), ('Montgomery Hill', 0, '31.16412', '-87.78638'), ('Montrose', 12480, '30.56567', '-87.90161'), ('Oak', 5044, '30.31812', '-87.70642'), ('Orange Beach', 0, '30.29327', '-87.58362'), ('Oyster Bay', 0, '30.28552', '-87.74298'), ('Park City', 16581, '30.64331', '-87.91211'), ('Perdido', 7676, '31.00970', '-87.62390'), ('Perdido Beach', 0, '30.34229', '-87.50311'), ('Phillipsville', 7820, '30.89630', '-87.63550'), ('Pinchona', 0, '30.92328', '-87.72418'), ('Pine Grove', 0, '30.83350', '-87.74109'), ('Pine Haven', 0, '30.73212', '-87.79303'), ('Point Clear', 1876, '30.49030', '-87.90948'), ('Rabun', 7820, '31.02692', '-87.72498'), ('Redtown', 7676, '31.13788', '-87.63251'), ('River Park', 0, '30.45068', '-87.81189'), ('Robertsdale', 3782, '30.56970', '-87.71918'), ('Romar Beach', 0, '30.26068', '-87.62219'), ('Rosinton', 1348, '30.61853', '-87.69360'), ('Seacliff', 0, '30.54529', '-87.90271'), ('Seminole', 552, '30.51532', '-87.47388'), ('Serange', 0, '31.21808', '-87.63922'), ('Silverhill', 616, '30.54572', '-87.74951'), ('Spanish Fort', 5423, '30.67651', '-87.91779'), ('Stapleton', 5423, '30.74487', '-87.78448'), ('Steelwood', 1348, '30.71588', '-87.78473'), ('Stockton', 7820, '31.00110', '-87.85773'), ('Summerdale', 655, '30.50250', '-87.70142'), ('Swift', 0, '30.37628', '-87.62640'), ('Tensaw', 844, '31.15692', '-87.79919'), ('Turkey Branch', 1876, '30.42188', '-87.83643'), ('Vangordon', 0, '30.79132', '-87.77081'), ('Vaughn', 844, '31.02991', '-87.86108'), ('Volanta', 0, '30.53387', '-87.90161'), ('Whitehouse Forks', 7820, '30.80811', '-87.81421'), ('Yupon', 0, '30.40887', '-87.81689')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALC005': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Blue Springs', 121, '31.66050', '-85.50310'), ('Clayton', 1475, '31.88070', '-85.45120'), ('Clio', 2206, '31.70930', '-85.61050'), ('Eufaula', 13908, '31.90930', '-85.15040'), ('Louisville', 612, '31.78110', '-85.55800')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALC007': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Brent', 4024, '32.94230', '-87.17620'), ('Centreville', 2466, '32.95890', '-87.13270'), ('West Blocton', 1372, '33.11810', '-87.12580')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC009': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Allgood', 629, '33.90640', '-86.51800'), ('Blountsville', 1768, '34.08090', '-86.58840'), ('Cleveland', 1241, '33.99490', '-86.57050'), ('County Line', 257, '33.82100', '-86.72280'), ('Hayden', 470, '33.89530', '-86.75440'), ('Highland Lake', 408, '33.88920', '-86.42380'), ('Locust Fork', 1016, '33.90270', '-86.62170'), ('Nectar', 372, '33.96900', '-86.63630'), ('Oneonta', 5576, '33.95120', '-86.47060'), ('Rosa', 313, '33.98450', '-86.50870'), ('Smoke Rise', 1750, '33.87990', '-86.82450'), ('Snead', 748, '34.11590', '-86.39150'), ('Susan Moore', 721, '34.07410', '-86.42970')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC011': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Midway', 457, '32.07430', '-85.52030'), ('Union Springs', 3670, '32.13880', '-85.71370')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALC013': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Avant', 1737, '31.62152', '-86.70142'), ('Beacon', 0, '31.71472', '-86.82300'), ('Bolling', 1737, '31.72552', '-86.70581'), ('Brushy Creek', 0, '31.66852', '-86.67041'), ('Butler Springs', 145, '31.80212', '-86.86609'), ('Chapman', 1737, '31.72388', '-86.71411'), ('Daisy', 0, '31.89911', '-86.48468'), ('East Chapman', 0, '31.66571', '-86.69659'), ('Forest Home', 145, '31.87347', '-86.77112'), ('Fort Dale', 0, '31.89148', '-86.65741'), ('Garland', 644, '31.55670', '-86.82330'), ('Georgiana', 1737, '31.61169', '-86.73071'), ('Glasgow', 0, '31.76331', '-86.52771'), ('Grace', 0, '31.61212', '-86.88049'), ('Greenville', 7228, '31.82629', '-86.60779'), ('Halso Mill', 0, '31.71332', '-86.52051'), ('Herbert', 7228, '31.83612', '-86.80530'), ('I65 And Al 10', 7228, '31.82312', '-86.66443'), ('I65 And Al 106', 1737, '31.65088', '-86.77533'), ('I65 And Al 185', 7228, '31.85071', '-86.64081'), ('I65 And Cr 7', 1737, '31.57690', '-86.84631'), ('Industry', 644, '31.60431', '-86.61261'), ('Liberty', 0, '31.82568', '-86.70142'), ('Manningham', 0, '31.88611', '-86.74640'), ('Mashville', 0, '31.80328', '-86.54108'), ('McKenzie', 644, '31.54291', '-86.72461'), ('Midway', 0, '31.81348', '-86.46362'), ('Monterey', 145, '31.90350', '-86.88190'), ('Mount Moriah', 0, '31.91772', '-86.90002'), ('Mount Olive', 0, '31.57849', '-86.84802'), ('Oaky Streak', 644, '31.57831', '-86.55359'), ('Odom Crossroads', 0, '31.53809', '-86.78601'), ('Pigeon Creek', 391, '31.65771', '-86.50720'), ('Providence', 0, '31.72211', '-86.82281'), ('Reddock Springs', 0, '31.82190', '-86.69159'), ('Rhodes', 0, '31.57831', '-86.69159'), ('Ridgeville', 0, '31.92529', '-86.84021'), ('Salter', 0, '31.54669', '-86.78192'), ('Sand Cut', 0, '31.76831', '-86.73688'), ('Sardis', 0, '31.67987', '-86.50659'), ('Saucer', 145, '31.82288', '-86.83551'), ('Searcy', 0, '31.91553', '-86.60529'), ('Shacklesville', 0, '31.77869', '-86.81549'), ('Shell', 0, '31.60132', '-86.65363'), ('Spring Hill', 0, '31.87268', '-86.57410'), ('Starlington', 1737, '31.67493', '-86.82532'), ('Wald', 7228, '31.75787', '-86.66553')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALC015': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Anniston', 24276, '33.66260', '-85.81390'), ('Blue Mountain', 233, '33.68850', '-85.83760'), ('Bynum', 1863, '33.60550', '-85.95750'), ('Fort Mcclellan', 4128, '33.71880', '-85.79070'), ('Hobson City', 878, '33.61700', '-85.85170'), ('Jacksonville', 8404, '33.81070', '-85.76080'), ('Ohatchee', 1215, '33.78450', '-86.01870'), ('Oxford', 14592, '33.59700', '-85.82580'), ('Piedmont', 5120, '33.92740', '-85.61520'), ('Saks', 10698, '33.71130', '-85.85380'), ('Weaver', 2619, '33.75560', '-85.80860'), ('West End-Cobb Town', 3924, '33.64820', '-85.87120')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC017': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Five Points', 146, '33.01710', '-85.35130'), ('Huguley', 2953, '32.84310', '-85.24070'), ('Lafayette', 3234, '32.89950', '-85.40080'), ('Lanett', 7897, '32.86620', '-85.20510'), ('Valley', 9198, '32.80900', '-85.17300'), ('Waverly', 184, '32.73610', '-85.57610')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC019': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Cedar Bluff', 1467, '34.22050', '-85.59600'), ('Centre', 3216, '34.15300', '-85.67170'), ('Gaylesville', 140, '34.26790', '-85.55830'), ('Leesburg', 799, '34.17900', '-85.76910'), ('Sand Rock', 509, '34.23210', '-85.77060')], 'partOfState': 'northeast', 'wfo': 'BMX'}, +'ALC021': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Clanton', 7800, '32.84000', '-86.62470'), ('Jemison', 2248, '32.96500', '-86.74410'), ('Maplesville', 672, '32.78570', '-86.87840'), ('Thorsby', 1820, '32.91500', '-86.71410')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC023': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Aquilla', 529, '31.71252', '-88.41388'), ('Ararat', 1952, '31.96832', '-88.14673'), ('Barrytown', 187, '31.83752', '-88.25281'), ('Bladon Springs', 360, '31.73071', '-88.19751'), ('Bogueloosa', 0, '31.98767', '-88.33252'), ('Bolinger', 529, '31.77850', '-88.33112'), ('Brightwater', 0, '31.98029', '-88.35419'), ('Butler', 1952, '32.08911', '-88.20563'), ('Chapel Hill', 0, '32.23993', '-88.18860'), ('Chappell Hill', 0, '31.89191', '-88.25562'), ('Choctaw City', 353, '32.20911', '-88.09418'), ('Collumburg', 529, '31.71307', '-88.29181'), ('Contwell', 0, '31.70831', '-88.42859'), ('Cromwell', 653, '32.22888', '-88.27448'), ('Cyril', 653, '32.17828', '-88.42230'), ('Deas', 353, '32.22931', '-88.09723'), ('Edna', 353, '32.28693', '-88.07422'), ('Eiler', 0, '31.96271', '-88.42358'), ('Emory', 0, '31.81073', '-88.45752'), ('Evansboro', 187, '31.88391', '-88.46808'), ('Flatwood', 0, '31.79688', '-88.23749'), ('Gilbertown', 187, '31.87592', '-88.31952'), ('Halsell', 653, '32.28412', '-88.27722'), ('Hinton', 97, '32.09210', '-88.44232'), ('Hodgewood', 152, '31.93750', '-88.30219'), ('Indian Springs', 353, '32.25250', '-88.10089'), ('Isney', 529, '31.78247', '-88.45563'), ('Jachin', 353, '32.22992', '-88.16840'), ('Jackson Spur', 0, '31.95691', '-88.31500'), ('Land', 97, '32.02869', '-88.32831'), ('Lavaca', 353, '32.14050', '-88.08002'), ('Lisman', 653, '32.22772', '-88.21198'), ('Little Walker', 0, '32.15051', '-88.17780'), ('Lou', 152, '31.91913', '-88.21112'), ('Lusk', 0, '31.96832', '-88.28748'), ('Melvin', 97, '31.93048', '-88.45892'), ('Mollie', 0, '32.24152', '-88.27173'), ('Morgan Chapel', 0, '32.04327', '-88.21051'), ('Mount Sterling', 1952, '32.09369', '-88.16309'), ('Naheola', 353, '32.22772', '-88.02881'), ('Needham', 97, '31.98712', '-88.33661'), ('Oakchia', 139, '32.29852', '-88.01062'), ('Okatuppa', 0, '31.94489', '-88.39612'), ('Old Samuel', 0, '31.87250', '-88.30609'), ('Paragon', 187, '31.87628', '-88.37451'), ('Pelham', 0, '32.27972', '-88.12000'), ('Pennington', 353, '32.20709', '-88.05609'), ('Pleasant Hill', 0, '31.93030', '-88.21448'), ('Pushmataha', 653, '32.19348', '-88.35339'), ('Red Springs', 0, '32.02991', '-88.27112'), ('Rescueville', 0, '31.69928', '-88.26532'), ('Riderwood', 653, '32.12891', '-88.32782'), ('Robjohn', 353, '32.21411', '-88.12720'), ('Rock Springs', 97, '32.07849', '-88.36639'), ('Silas', 529, '31.77869', '-88.32031'), ('Slater', 0, '31.99353', '-88.09998'), ('Souwilpa', 529, '31.82031', '-88.32922'), ('Spring Hill', 0, '31.94708', '-88.13721'), ('Thornton Springs', 0, '31.90210', '-88.21613'), ('Tompkinsville', 0, '32.20331', '-88.02032'), ('Toxey', 152, '31.92712', '-88.32861'), ('Turner', 0, '31.99530', '-88.38110'), ('Water Valley', 187, '31.89410', '-88.39313'), ('West Butler', 0, '32.06891', '-88.33533'), ('Wimbly', 152, '31.91528', '-88.24841'), ('Womack Hill', 187, '31.85327', '-88.18860'), ('Yantley', 653, '32.24609', '-88.37952')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALC025': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alma', 5419, '31.46411', '-87.75391'), ('Asbury', 0, '31.70068', '-87.72388'), ('Atkeison', 0, '31.96552', '-87.68640'), ('Barlow Bend', 1460, '31.45471', '-87.63470'), ('Bashi', 234, '31.97131', '-87.86139'), ('Campbell', 0, '31.92352', '-87.98108'), ('Carlton', 5419, '31.34869', '-87.83569'), ('Center Point', 0, '31.78851', '-88.03003'), ('Chance', 308, '31.74890', '-87.53192'), ('Chilton', 1438, '31.78210', '-87.84418'), ('Choctaw Bluff', 5419, '31.38892', '-87.78888'), ('Choctaw Corner', 0, '31.93488', '-87.75470'), ('Clarksville', 0, '31.72913', '-87.89313'), ('Coffeeville', 360, '31.76929', '-88.06390'), ('Cunningham', 0, '31.90051', '-88.07611'), ('Dickinson', 308, '31.76349', '-87.71051'), ('Failetown', 0, '31.92792', '-88.01642'), ('Finley Crossing', 0, '31.96191', '-87.68579'), ('Fulton', 308, '31.79388', '-87.70172'), ('Gainestown', 5419, '31.44550', '-87.69330'), ('Glover', 0, '31.93707', '-87.84003'), ('Gosport', 0, '31.58270', '-87.58362'), ('Greenwood', 0, '31.77972', '-87.76001'), ('Grove Hill', 1438, '31.67273', '-87.72919'), ('Jackson', 5419, '31.61969', '-87.92291'), ('Manila', 5419, '31.50848', '-87.72308'), ('Mays Crossroads', 0, '31.60388', '-87.98749'), ('McEntyre', 0, '31.80847', '-87.96558'), ('McVay', 0, '31.60687', '-87.89563'), ('McWer', 0, '31.86133', '-87.69562'), ('Midway', 0, '31.88568', '-87.78888'), ('Morvin', 234, '31.98572', '-87.99329'), ('Nettleboro', 308, '31.79907', '-87.62219'), ('Opine', 4649, '31.90491', '-87.93390'), ('Peacock', 308, '31.75751', '-87.77472'), ('Pleasant Hill', 0, '31.84747', '-87.63562'), ('Rock Springs', 0, '31.95007', '-88.08112'), ('Rockville', 0, '31.40649', '-87.84229'), ('Roundhill', 4649, '31.89270', '-87.71161'), ('Rural', 4649, '31.86432', '-87.73859'), ('Salitpa', 0, '31.62970', '-88.02002'), ('Scyrene', 308, '31.75568', '-87.64783'), ('Smyer', 0, '31.89349', '-88.02881'), ('Springfield', 0, '31.83368', '-87.76190'), ('Stave Creek', 0, '31.55573', '-87.93890'), ('Suggsville', 1438, '31.58972', '-87.69312'), ('Tallahatta Springs', 4649, '31.90973', '-87.87671'), ('Tattlersville', 0, '31.71271', '-88.05640'), ('Thomasville', 4649, '31.91248', '-87.78778'), ('Toddtown', 0, '31.61890', '-87.87671'), ('Union', 0, '31.62891', '-87.78528'), ('Vashti', 0, '31.70331', '-87.63812'), ('Walker Springs', 5419, '31.39709', '-87.81891'), ('West Bend', 360, '31.82428', '-88.13220'), ('Whatley', 1438, '31.64648', '-87.71082'), ('Winn', 5419, '31.65192', '-87.91718'), ('Woods Bluff', 360, '31.93573', '-88.06171'), ('Zimco', 0, '31.70288', '-87.87811')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALC027': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ashland', 1965, '33.27100', '-85.83070'), ('Lineville', 2401, '33.31240', '-85.75260')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC029': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Edwardsville', 186, '33.70670', '-85.50980'), ('Fruithurst', 270, '33.73030', '-85.43190'), ('Heflin', 3002, '33.64630', '-85.58670'), ('Ranburne', 459, '33.52490', '-85.34020')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC031': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alberton', 602, '31.27720', '-86.12590'), ('Arcus', 0, '31.51353', '-85.97736'), ('Asbury', 0, '31.25323', '-85.97939'), ('Basin', 0, '31.34175', '-86.13103'), ('Battens Crossroads', 21178, '31.25950', '-85.88990'), ('Bluff Spring', 0, '31.57399', '-86.06899'), ('Brooklyn', 0, '31.31303', '-86.17066'), ('Camp Alaflo Bsa', 0, '31.41213', '-85.85804'), ('Camp Humming Hills', 0, '31.46824', '-85.99867'), ('Carl Folsom A/P', 4185, '31.40940', '-86.08890'), ('Central City', 251, '31.24180', '-85.88510'), ('Chestnut Grove', 0, '31.59694', '-85.91426'), ('Clintonville', 1250, '31.40580', '-85.89470'), ('Clowers Crossroads', 0, '31.60752', '-85.88249'), ('Cool Springs', 0, '31.22971', '-85.82207'), ('Coppinville', 0, '31.30436', '-85.81385'), ('Curtis', 4185, '31.39680', '-86.15730'), ('Damascus', 1250, '31.31910', '-86.00460'), ('Danleys Crossroads', 4185, '31.41930', '-86.16690'), ('Eanon', 0, '31.51852', '-85.86304'), ('Elba', 4185, '31.41633', '-86.07831'), ('Enterprise', 21178, '31.31340', '-85.85410'), ('Enterprise Municipal A/P', 21178, '31.29860', '-85.89980'), ('Fairview', 602, '31.23752', '-86.04550'), ('Frisco', 0, '31.59525', '-85.86586'), ('Goodman', 1250, '31.27870', '-85.99460'), ('Holley Store', 0, '31.22215', '-86.09947'), ('Ino', 602, '31.27070', '-86.09470'), ('Jack', 4185, '31.57500', '-85.99920'), ('Java', 0, '31.55811', '-85.84391'), ('Keyton', 21178, '31.28140', '-85.82580'), ('Kinston', 602, '31.21620', '-86.16890'), ('Lee', 0, '31.48742', '-86.07485'), ('Lowry Mill', 0, '31.53803', '-85.98242'), ('Lucile', 0, '31.24296', '-85.91822'), ('Marvin Chapel', 0, '31.20743', '-85.98983'), ('Mixons Crossroads', 1250, '31.48400', '-85.91951'), ('Mount Pleasant', 0, '31.23051', '-85.92043'), ('New Brockton', 1250, '31.38003', '-85.92270'), ('Newby', 191, '31.55560', '-86.13130'), ('New Haven', 0, '31.35575', '-86.07597'), ('New Hope', 772, '31.55290', '-85.86790'), ('Perry Store', 602, '31.27940', '-86.15730'), ('Pine Level', 0, '31.47570', '-86.18674'), ('Rhoades', 0, '31.26296', '-86.16235'), ('Richburg', 0, '31.39685', '-85.96118'), ('Roeton', 772, '31.59730', '-85.83480'), ('Shell Army Field', 0, '31.36279', '-85.84957'), ('Tabernacle', 1250, '31.45320', '-85.86920'), ('Turner Crossroads', 0, '31.31280', '-85.97393'), ('Victoria', 1250, '31.54227', '-85.91882'), ('Wilkinstown', 0, '31.60862', '-85.99787'), ('Wise Mill', 0, '31.49568', '-86.02717'), ('Woodland Grove Church', 0, '31.45439', '-85.96590'), ('Zoar', 0, '31.54762', '-86.10789')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALC033': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Cherokee', 1237, '34.75640', '-87.96670'), ('Leighton', 849, '34.69960', '-87.53070'), ('Littleville', 978, '34.59500', '-87.67400'), ('Muscle Shoals', 11924, '34.74710', '-87.64200'), ('Sheffield', 9652, '34.75520', '-87.70130'), ('Tuscumbia', 7856, '34.72870', '-87.70570')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALC035': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Belleville', 280, '31.42987', '-87.10901'), ('Bermuda', 280, '31.48749', '-87.18829'), ('Bethel', 0, '31.70068', '-86.91412'), ('Bookers Mill', 0, '31.52692', '-87.03223'), ('Bowles', 0, '31.57349', '-86.97693'), ('Brantley Crossing', 0, '31.49652', '-87.11908'), ('Brooklyn', 556, '31.26270', '-86.77112'), ('Brownville', 3630, '31.46851', '-86.90051'), ('Castleberry', 590, '31.34808', '-87.05029'), ('Centerville', 0, '31.40009', '-86.87891'), ('China', 3630, '31.52350', '-87.01782'), ('Cohassett', 556, '31.39490', '-86.69330'), ('Commerce', 0, '31.68188', '-86.96722'), ('Cooks Crossroads', 0, '31.56830', '-86.97638'), ('Deans', 1737, '31.66028', '-86.93890'), ('Evergreen', 3630, '31.41351', '-86.92108'), ('Fairnelson', 3630, '31.56390', '-87.07660'), ('Fairview', 0, '31.41931', '-87.00531'), ('Flat Rock', 0, '31.48352', '-86.83331'), ('Fowler', 0, '31.58948', '-87.09723'), ('Georgiaville', 0, '31.23688', '-86.73053'), ('I65 And Al 41', 280, '31.27631', '-87.20520'), ('I65 And Al 83', 3630, '31.45770', '-86.96539'), ('I65 And Cr 29', 3630, '31.50610', '-86.92310'), ('I65 And Cr 6', 590, '31.32990', '-87.12610'), ('I65 And Us 84', 3630, '31.41913', '-87.00610'), ('Johnsonville', 590, '31.29468', '-86.87219'), ('Lenox', 280, '31.33649', '-87.18549'), ('London', 0, '31.29773', '-87.08783'), ('Loree', 3630, '31.48749', '-87.09003'), ('Lyeffion', 3630, '31.58289', '-87.02002'), ('Melrose', 0, '31.34912', '-86.73688'), ('Mixonville', 145, '31.70490', '-86.94861'), ('Mount Union', 0, '31.38647', '-86.77002'), ('Nichburg', 280, '31.47968', '-87.13660'), ('Nymph', 590, '31.33832', '-86.93970'), ('Old Sparta', 0, '31.36310', '-86.98718'), ('Old Town', 0, '31.42932', '-86.84521'), ('Owassa', 3630, '31.49329', '-86.93158'), ('Paul', 556, '31.32031', '-86.74390'), ('Rabb', 0, '31.43909', '-86.88049'), ('Ramah', 0, '31.61249', '-87.13751'), ('Range', 280, '31.31268', '-87.23541'), ('Repton', 280, '31.37488', '-87.23969'), ('Sand Cut', 0, '31.31830', '-87.12079'), ('Shreve', 644, '31.42712', '-86.73938'), ('Skinnerton', 0, '31.66992', '-87.06500'), ('Spring Hill', 0, '31.36328', '-86.78888'), ('Stokes', 0, '31.49652', '-87.09637'), ('Travis Bridge', 0, '31.45428', '-86.78888'), ('Wilcox', 3630, '31.50848', '-86.87640')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALC037': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Goodwater', 1633, '33.06040', '-86.05150'), ('Rockford', 428, '32.88760', '-86.21720')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC039': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Andalusia', 8794, '31.31891', '-86.48218'), ('Antioch', 0, '31.38568', '-86.38300'), ('Babbie', 627, '31.30212', '-86.32300'), ('Beck', 248, '31.25629', '-86.58472'), ('Beda', 0, '31.05109', '-86.58270'), ('Beulah', 0, '31.22913', '-86.23242'), ('Blairs', 0, '31.26410', '-86.22333'), ('Blue Springs', 0, '31.20911', '-86.31299'), ('Boston', 0, '31.46808', '-86.48181'), ('Boykin', 0, '31.51007', '-86.57330'), ('Brooks', 644, '31.48187', '-86.68500'), ('Carolina', 248, '31.23370', '-86.52271'), ('Cedar Grove', 0, '31.35193', '-86.32880'), ('Chapel Hill', 0, '31.02948', '-86.23108'), ('Clearview', 241, '31.45068', '-86.44769'), ('Coldwater', 0, '31.43488', '-86.42328'), ('County Line', 0, '31.28351', '-86.19489'), ('Dunns', 0, '31.43213', '-86.46973'), ('Duvall', 0, '31.27631', '-86.24188'), ('Eoda', 627, '31.37469', '-86.31909'), ('Estothel', 602, '31.24469', '-86.19830'), ('Fairfield', 0, '31.25189', '-86.64551'), ('Falco', 543, '31.15527', '-86.56628'), ('Five Points', 0, '31.44067', '-86.30328'), ('Florala', 1964, '31.02612', '-86.34021'), ('Friendship', 0, '31.40350', '-86.20660'), ('Gantt', 241, '31.40930', '-86.48419'), ('Green Bay', 208, '31.17810', '-86.28943'), ('Harmony', 0, '31.35748', '-86.37500'), ('Heath', 249, '31.35791', '-86.46722'), ('Horn Hill', 0, '31.23828', '-86.32111'), ('Howells', 1964, '31.05249', '-86.20911'), ('Huckaville', 0, '31.07971', '-86.41608'), ('Libertyville', 106, '31.24292', '-86.46002'), ('Loango', 556, '31.32971', '-86.64893'), ('Lockhart', 548, '31.01288', '-86.35052'), ('McRae', 0, '31.05890', '-86.26129'), ('Onycha', 208, '31.22467', '-86.27850'), ('Opine', 0, '31.32770', '-86.28711'), ('Opp', 6607, '31.28168', '-86.25751'), ('Rawls', 0, '31.45331', '-86.48108'), ('Red Level', 556, '31.40552', '-86.60828'), ('Red Oak', 106, '31.13989', '-86.46051'), ('Rhump', 0, '31.39410', '-86.58893'), ('River Falls', 616, '31.35248', '-86.54108'), ('Rome', 0, '31.14191', '-86.66882'), ('Rose Hill', 391, '31.44208', '-86.39990'), ('Sanford', 269, '31.30048', '-86.39661'), ('Shiloh', 0, '31.11548', '-86.48608'), ('Stanley', 0, '31.20111', '-86.44769'), ('Stedman', 1964, '31.07129', '-86.30359'), ('Straughn', 0, '31.38831', '-86.41803'), ('Valley Of Shiloh', 0, '31.41608', '-86.46661'), ('Wiggins', 0, '31.31610', '-86.32861'), ('Wing', 543, '31.02771', '-86.61041')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALC041': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bradleyton', 63, '31.90192', '-86.24219'), ('Brantley', 920, '31.55389', '-86.29272'), ('Bullock', 920, '31.54071', '-86.17859'), ('Carmen', 0, '31.63251', '-86.18909'), ('Centenary', 0, '31.77869', '-86.36749'), ('Center Ridge', 0, '31.81610', '-86.41248'), ('Cherokee Village', 0, '31.72968', '-86.33691'), ('Clearview', 0, '32.04327', '-86.38800'), ('Danielsville', 0, '31.92072', '-86.40631'), ('Dozier', 391, '31.50311', '-86.36938'), ('Fullers Crossroads', 0, '31.81787', '-86.31110'), ('Garnersville', 0, '31.87628', '-86.27271'), ('Glenwood', 191, '31.66748', '-86.17291'), ('Helicon', 0, '31.91351', '-86.21191'), ('Highland Home', 63, '31.95349', '-86.31390'), ('Honoraville', 476, '31.85071', '-86.40613'), ('Ivy Creek', 0, '31.70709', '-86.36511'), ('Joquin', 0, '31.78668', '-86.16412'), ('Leon', 0, '31.55768', '-86.39270'), ('Live Oak', 63, '31.80847', '-86.24750'), ('Luverne', 2635, '31.71771', '-86.28131'), ('Magnolia Shores', 0, '31.93268', '-86.29413'), ('Merrill Mill', 0, '31.59332', '-86.40253'), ('Moodys Crossroads', 0, '31.73492', '-86.39471'), ('Mulberry', 0, '31.59491', '-86.43359'), ('New Hope', 0, '31.54053', '-86.34192'), ('Panola', 0, '31.97168', '-86.38892'), ('Patsburg', 63, '31.78668', '-86.22821'), ('Petrey', 63, '31.90430', '-86.30890'), ('Robinson Crossroads', 0, '31.73572', '-86.37549'), ('Rutledge', 476, '31.73468', '-86.30591'), ('Sardis', 0, '31.90308', '-86.31580'), ('Saville', 63, '31.87750', '-86.33112'), ('Searight', 0, '31.47113', '-86.39331'), ('Shirleys Crossroads', 0, '31.71490', '-86.16498'), ('Social Town', 0, '31.71191', '-86.18188'), ('Theba', 0, '31.55573', '-86.30359'), ('Vernledge', 0, '31.77130', '-86.29272'), ('Vidette', 0, '31.73291', '-86.19501'), ('Weed Crossroad', 0, '31.51892', '-86.22302')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALC043': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Baileyton', 684, '34.26210', '-86.61350'), ('Colony', 385, '33.94140', '-86.90120'), ('Cullman', 13995, '34.17610', '-86.83890'), ('Fairview', 522, '34.24680', '-86.68740'), ('Garden City', 564, '34.01480', '-86.75010'), ('Good Hope', 1966, '34.11010', '-86.86460'), ('Hanceville', 2951, '34.06490', '-86.76350'), ('Holly Pond', 645, '34.17460', '-86.61700'), ('South Vinemont', 425, '34.23610', '-86.86260'), ('West Point', 295, '34.23810', '-86.94820')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALC045': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Arguta', 772, '31.56870', '-85.59540'), ('Ariton', 772, '31.60044', '-85.71262'), ('Asbury', 15119, '31.51110', '-85.54530'), ('Bagwells Crossroads', 0, '31.37869', '-85.56517'), ('Barefield Crossroads', 0, '31.55163', '-85.45299'), ('Barnes', 772, '31.54200', '-85.67440'), ('Beamon', 15119, '31.51850', '-85.58620'), ('Bells Crossroads', 121, '31.52150', '-85.45080'), ('Bertha', 121, '31.54110', '-85.42880'), ('Blackwell Field A/P', 15119, '31.42980', '-85.61940'), ('Browns Crossroads', 15119, '31.41625', '-85.52691'), ('Cairns Aaf', 4653, '31.27718', '-85.70982'), ('Clayhatchee', 501, '31.26422', '-85.71081'), ('Clopton', 121, '31.60720', '-85.43000'), ('Currytown', 0, '31.27806', '-85.52809'), ('Dale County Lake', 0, '31.48008', '-85.63201'), ('Daleville', 4653, '31.28809', '-85.72800'), ('Dean Church Road', 0, '31.40293', '-85.65654'), ('Dill', 15119, '31.51020', '-85.65320'), ('Dillard', 0, '31.51325', '-85.70557'), ('Dykes Crossroads', 121, '31.59940', '-85.56120'), ('Echo', 553, '31.47450', '-85.46360'), ('Ewell', 15119, '31.42080', '-85.57470'), ('Five Points', 0, '31.30170', '-85.62537'), ('Fort Rucker', 6052, '31.34897', '-85.70485'), ('Gerald', 1544, '31.31831', '-85.75861'), ('Goldberg Field', 0, '31.41392', '-85.46005'), ('Greater Salem Church', 0, '31.52964', '-85.76546'), ('Grimes', 459, '31.30340', '-85.44830'), ('Hanchey Field', 0, '31.34566', '-85.65467'), ('Hooper Stage Field', 0, '31.40666', '-85.69037'), ('Hunt Field', 0, '31.38375', '-85.61924'), ('Hwy 231 Pea River Bridge', 0, '31.59480', '-85.78341'), ('Kelly', 4653, '31.31920', '-85.65410'), ('Klondyke Hill', 0, '31.38268', '-85.60246'), ('Knox Field', 0, '31.32035', '-85.67412'), ('Level Plains', 1544, '31.29900', '-85.77700'), ('Lowe Army Heliport', 0, '31.35578', '-85.75164'), ('Mabson', 15119, '31.46760', '-85.56160'), ('Marley Hill', 15119, '31.49438', '-85.69153'), ('Midland City', 1703, '31.31630', '-85.49340'), ('Napier Field', 404, '31.31510', '-85.45530'), ('Newton', 1708, '31.33350', '-85.60380'), ('Ozark', 15119, '31.45344', '-85.64985'), ('Phillips Crossroads', 2206, '31.61650', '-85.60690'), ('Pinckard', 667, '31.31020', '-85.54780'), ('Pleasant Hill', 15119, '31.42770', '-85.67460'), ('Roberts Crossroads', 121, '31.60040', '-85.52900'), ('Rocky Head', 772, '31.56750', '-85.76830'), ('Skipperville', 121, '31.55710', '-85.54630'), ('Snells Crossroads', 0, '31.52580', '-85.43612'), ('Snow Hill', 1703, '31.45810', '-85.48070'), ('Sylvan Grove', 404, '31.35250', '-85.46570'), ('Ward Bridge', 0, '31.50893', '-85.49937'), ('Waterford', 1708, '31.35078', '-85.61182')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALC047': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Orrville', 230, '32.30830', '-87.24540'), ('Selma', 20512, '32.41610', '-87.03300'), ('Selmont-West Selmont', 3502, '32.37840', '-87.00670')], 'partOfState': 'south central', 'wfo': 'BMX'}, +'ALC049': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Collinsville', 1644, '34.26660', '-85.86300'), ('Crossville', 1431, '34.28630', '-85.99360'), ('Fort Payne', 12938, '34.45380', '-85.69440'), ('Fyffe', 971, '34.45100', '-85.90640'), ('Geraldine', 786, '34.36080', '-86.00300'), ('Hammondville', 486, '34.56930', '-85.63830'), ('Henagar', 2400, '34.63390', '-85.73740'), ('Ider', 664, '34.70070', '-85.66690'), ('Lakeview', 163, '34.39220', '-85.97330'), ('Mentone', 451, '34.56830', '-85.58270'), ('Pine Ridge', 243, '34.44440', '-85.77970'), ('Powell', 762, '34.53080', '-85.89510'), ('Rainsville', 4499, '34.49880', '-85.84490'), ('Shiloh', 289, '34.46550', '-85.87730'), ('Sylvania', 1186, '34.55980', '-85.80760'), ('Valley Head', 611, '34.55080', '-85.62580')], 'partOfState': 'northeast', 'wfo': 'HUN'}, +'ALC051': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Blue Ridge', 1331, '32.49250', '-86.19060'), ('Coosada', 1382, '32.49580', '-86.33020'), ('Eclectic', 1037, '32.63680', '-86.03470'), ('Millbrook', 10386, '32.49460', '-86.36770'), ('Tallassee', 4934, '32.53520', '-85.89140'), ('Wetumpka', 5726, '32.54420', '-86.20180')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC053': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Appleton', 5498, '31.22113', '-87.12140'), ('Atmore', 7676, '31.03851', '-87.47028'), ('Barnett Crossroads', 280, '31.22131', '-87.30438'), ('Booneville', 7676, '31.20111', '-87.60303'), ('Boykin', 590, '31.14612', '-86.87439'), ('Bradley', 543, '31.03351', '-86.72552'), ('Brewton', 5498, '31.12970', '-87.09192'), ('Canoe', 7676, '31.02631', '-87.41193'), ('Damascus', 0, '31.17310', '-86.85681'), ('Dixie', 248, '31.14471', '-86.71942'), ('Dixonville', 99, '31.00049', '-87.03601'), ('East Brewton', 2496, '31.09052', '-87.05560'), ('Ewing Farms', 0, '31.08270', '-87.58752'), ('Flomaton', 1588, '31.05670', '-87.27161'), ('Foshee', 1588, '31.11688', '-87.22638'), ('Freemanville', 7676, '31.07190', '-87.52081'), ('Hammac', 0, '31.12250', '-87.22302'), ('Huxford', 7676, '31.22028', '-87.46191'), ('I65 And Al 113', 1588, '31.20392', '-87.31091'), ('I65 And Al 21', 7676, '31.11072', '-87.47412'), ('I65 And Cr 1', 7676, '31.08392', '-87.53461'), ('Jack Springs', 0, '31.16132', '-87.55249'), ('Keego', 120, '31.06073', '-87.12750'), ('Kirkland', 5498, '31.18848', '-87.03052'), ('Little Rock', 7676, '31.11469', '-87.38892'), ('Malta', 7676, '31.02490', '-87.45471'), ('Marietta', 0, '31.14111', '-86.77722'), ('Martinville', 0, '31.09253', '-87.48053'), ('McCullough', 7676, '31.14288', '-87.50391'), ('Mount Gillis', 0, '31.08911', '-87.52222'), ('Nokomis', 7676, '31.01031', '-87.56470'), ('Osaka', 1588, '31.06390', '-87.22388'), ('Parker Springs', 99, '31.05487', '-86.80969'), ('Pea Ridge', 0, '31.11609', '-87.09772'), ('Pineview', 0, '31.13489', '-87.28943'), ('Pleasant Hill', 0, '31.06329', '-87.49109'), ('Poarch', 7676, '31.11749', '-87.52942'), ('Poarch Creek Reservation', 0, '31.09808', '-87.55688'), ('Pollard', 120, '31.02368', '-87.17358'), ('Raley Forest Hill', 0, '31.01129', '-87.51111'), ('Riverview', 99, '31.05811', '-87.05768'), ('Roberts', 2496, '31.08191', '-86.88892'), ('Robinsonville', 7676, '31.06128', '-87.43829'), ('Rock Creek', 0, '31.00891', '-86.79718'), ('Rock Hill', 2496, '31.11670', '-86.99908'), ('Sardine', 1588, '31.13129', '-87.36658'), ('Spring Hill', 0, '31.10809', '-87.03522'), ('Stanley Crossroads', 0, '31.13470', '-87.34021'), ('Us 29 And Cr 43', 590, '31.16492', '-86.80261'), ('Wahl', 1588, '31.00531', '-87.22137'), ('Wallace', 5498, '31.20972', '-87.21832'), ('Wawbeek', 1588, '31.02808', '-87.36078'), ('Welka', 0, '31.01349', '-87.20081')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALC055': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Altoona', 984, '34.03140', '-86.31360'), ('Attalla', 6592, '34.01000', '-86.10190'), ('Gadsden', 38978, '34.01000', '-86.01440'), ('Glencoe', 5152, '33.94620', '-85.93120'), ('Hokes Bluff', 4149, '33.98960', '-85.86300'), ('Mountainboro', 338, '34.14770', '-86.13120'), ('Rainbow City', 8428, '33.92970', '-86.08740'), ('Reece City', 634, '34.07240', '-86.03240'), ('Ridgeville', 158, '34.05700', '-86.10330'), ('Sardis City', 1438, '34.17670', '-86.11350'), ('Southside', 7036, '33.90380', '-86.02200'), ('Walnut Grove', 710, '34.06460', '-86.28730')], 'partOfState': 'northeast', 'wfo': 'BMX'}, +'ALC057': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Belk', 214, '33.64810', '-87.92770'), ('Berry', 1238, '33.66320', '-87.60770'), ('Fayette', 4922, '33.69400', '-87.83140'), ('Glen Allen', 442, '33.88480', '-87.74410')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALC059': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Hodges', 261, '34.32740', '-87.92650'), ('Phil Campbell', 1091, '34.35200', '-87.70580'), ('Red Bay', 3374, '34.43610', '-88.13630'), ('Russellville', 8971, '34.50590', '-87.72920'), ('Vina', 400, '34.37430', '-88.05650')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALC061': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bailey Crossroad', 0, '31.19114', '-85.60002'), ('Bald Hill', 0, '31.16355', '-85.63610'), ('Bellwood', 501, '31.17160', '-85.79320'), ('Black', 202, '31.00940', '-85.74320'), ('Chancellor', 251, '31.18010', '-85.87720'), ('Coffee Springs', 251, '31.16660', '-85.90990'), ('Dundee', 0, '31.12040', '-85.67193'), ('Earlytown', 0, '31.12805', '-86.12982'), ('Eunola', 182, '31.04162', '-85.84852'), ('Fadette', 2675, '31.04423', '-85.53689'), ('Ganer', 2071, '31.08180', '-86.10720'), ('Geneva', 4388, '31.03660', '-85.87680'), ('Geneva Municipal A/P', 4388, '31.05139', '-85.86262'), ('Hacoda', 2071, '31.07360', '-86.16680'), ('Hartford', 2369, '31.10624', '-85.69120'), ('Hendrix Crossroad', 0, '31.12371', '-85.71343'), ('High Bluff', 0, '31.15601', '-85.73276'), ('Highfalls', 0, '31.09848', '-85.79972'), ('Kellys Crossroads', 0, '31.06995', '-85.75210'), ('Light', 0, '31.14101', '-85.49428'), ('Logan Field Municipal A/P', 2071, '31.10050', '-86.06300'), ('Lowery', 0, '31.16731', '-86.14321'), ('Lytle', 0, '31.07609', '-85.95255'), ('Malvern', 1215, '31.13936', '-85.51940'), ('Marl', 0, '31.09045', '-85.97997'), ('Oak Grove', 202, '31.08580', '-85.77580'), ('Pera', 0, '31.13541', '-86.09212'), ('Piney Grove', 0, '31.16842', '-86.05018'), ('Samson', 2071, '31.11220', '-86.04660'), ('Sellersville', 2071, '31.12860', '-86.00370'), ('Slocomb', 2052, '31.11030', '-85.59430'), ('Somerset', 0, '31.02103', '-85.89292'), ('Spears', 0, '31.14485', '-85.98562'), ('Thurston', 202, '31.01340', '-85.78190'), ('Vaughanville', 0, '31.00580', '-85.91468'), ('Weeks', 0, '31.15080', '-86.11666')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALC063': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Boligee', 369, '32.75300', '-88.02430'), ('Eutaw', 1878, '32.84060', '-87.89150'), ('Forkland', 629, '32.64760', '-87.86720'), ('Union', 227, '32.99340', '-87.90550')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALC065': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Akron', 521, '32.87610', '-87.73880'), ('Greensboro', 2731, '32.70060', '-87.59410'), ('Moundville', 1809, '32.99590', '-87.63070'), ('Newbern', 231, '32.59130', '-87.53600')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALC067': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Abbeville', 2987, '31.56750', '-85.25050'), ('Abbeville Municipal A/P', 2987, '31.59920', '-85.23890'), ('Balkum', 0, '31.41785', '-85.22759'), ('Blackwood', 3523, '31.38760', '-85.40250'), ('Capps', 553, '31.49570', '-85.31210'), ('Coates', 0, '31.72639', '-85.15007'), ('Dancey', 0, '31.46763', '-85.28462'), ('Double Bridges', 0, '31.70273', '-85.15725'), ('Edwin', 121, '31.66480', '-85.37520'), ('Graball', 0, '31.58818', '-85.27694'), ('Grandberry Crossroads', 0, '31.35425', '-85.22883'), ('Haleburg', 108, '31.40956', '-85.14088'), ('Hardwickburg', 0, '31.49855', '-85.15108'), ('Hayes', 0, '31.50274', '-85.07295'), ('Headland', 3523, '31.35190', '-85.34330'), ('Headland Municipal A/P', 3523, '31.36460', '-85.30980'), ('Kirkland Crossroads', 0, '31.40284', '-85.41461'), ('Lawrenceville', 2987, '31.65660', '-85.26940'), ('Miller', 0, '31.44054', '-85.15405'), ('Murphy Station', 0, '31.54479', '-85.29198'), ('Newville', 553, '31.42170', '-85.33650'), ('Otho', 0, '31.68951', '-85.12983'), ('Scottsboro Crossroads', 0, '31.69930', '-85.21193'), ('Screamer', 2987, '31.66020', '-85.20690'), ('Shorterville', 1248, '31.56990', '-85.10090'), ('Thomas Mill Creek', 0, '31.70420', '-85.15219'), ('Tumbleton', 553, '31.40590', '-85.25620'), ('Walter F. George Lock And Dam', 1248, '31.62248', '-85.06711'), ('Willis Crossroads', 0, '31.55725', '-85.17964')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALC069': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ardilla', 0, '31.17560', '-85.36055'), ('Ashford', 1853, '31.18291', '-85.23653'), ('Avon', 466, '31.18764', '-85.27572'), ('Barber', 0, '31.23410', '-85.23574'), ('Chattahoochee Sp', 137, '31.00550', '-85.03330'), ('Columbia', 804, '31.29230', '-85.11130'), ('Cottonwood', 1170, '31.05443', '-85.30212'), ('Cowarts', 1546, '31.19880', '-85.30510'), ('Crosby', 408, '31.03830', '-85.08600'), ('Dothan', 57737, '31.22280', '-85.39330'), ('Enon', 0, '31.21550', '-85.27702'), ('Farley Nuclear Plant', 804, '31.22060', '-85.11040'), ('Garretts Crossroads', 0, '31.04618', '-85.43877'), ('Gordon', 408, '31.14560', '-85.09440'), ('Grangeburg', 765, '31.01100', '-85.22420'), ('Green Acres', 0, '31.22024', '-85.47582'), ('Harmon', 408, '31.09026', '-85.15444'), ('Hodgesville', 303, '31.08160', '-85.37310'), ('Hollis Dairy Road', 0, '31.23564', '-85.55904'), ('Jones Crossroads', 0, '31.21070', '-85.48492'), ('Kelly Springs', 0, '31.27580', '-85.45530'), ('Keytons', 0, '31.10724', '-85.37077'), ('Kinsey', 1796, '31.29750', '-85.34450'), ('Lovetown', 1170, '31.11510', '-85.27510'), ('Lucy', 0, '31.01984', '-85.04154'), ('Madrid', 303, '31.03506', '-85.39691'), ('Memphis', 33, '31.13212', '-85.37567'), ('Merritts Crossroads', 0, '31.08712', '-85.48434'), ('Olympia Spa Resort', 0, '31.12065', '-85.40593'), ('Pansey', 1853, '31.15290', '-85.17630'), ('Pearce', 0, '31.25860', '-85.22598'), ('Peterman', 0, '31.20052', '-85.47994'), ('Pleasant Plains', 1298, '31.30441', '-85.22941'), ('Power Dam Road', 0, '31.26015', '-85.64615'), ('Rehobeth', 993, '31.13470', '-85.43617'), ('Sealy Springs', 0, '31.03646', '-85.30902'), ('Sigma', 804, '31.28120', '-85.19630'), ('Smyrna', 0, '31.23497', '-85.32588'), ('Southern Junction', 303, '31.02800', '-85.47020'), ('Taylor', 1898, '31.16450', '-85.46760'), ('Webb', 1298, '31.25930', '-85.27350'), ('Wicksburg', 501, '31.20900', '-85.62470'), ('Wilson Mill', 1546, '31.15910', '-85.34390'), ('W. Main/Brannon St', 459, '31.23890', '-85.48100')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALC071': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bridgeport', 2728, '34.94440', '-85.71900'), ('Dutton', 310, '34.60760', '-85.91560'), ('Hollywood', 950, '34.71690', '-85.96570'), ('Langston', 254, '34.53420', '-86.09240'), ('Paint Rock', 185, '34.66060', '-86.32880'), ('Pisgah', 706, '34.68220', '-85.84780'), ('Scottsboro', 14762, '34.64930', '-86.04740'), ('Section', 769, '34.58100', '-85.98380'), ('Skyline', 843, '34.80290', '-86.12350'), ('Stevenson', 1770, '34.87060', '-85.83310'), ('Woodville', 761, '34.62520', '-86.28220')], 'partOfState': 'northeast', 'wfo': 'HUN'}, +'ALC073': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Adamsville', 4965, '33.59550', '-86.95800'), ('Bessemer', 29672, '33.37520', '-86.96060'), ('Birmingham', 242820, '33.52770', '-86.79920'), ('Brighton', 3640, '33.43890', '-86.94550'), ('Brookside', 1393, '33.63190', '-86.91470'), ('Cahaba Heights', 5203, '33.45960', '-86.72820'), ('Cardiff', 82, '33.64610', '-86.92900'), ('Center Point', 22784, '33.64310', '-86.67880'), ('Fairfield', 12381, '33.47300', '-86.91770'), ('Forestdale', 10509, '33.57930', '-86.90290'), ('Fultondale', 6595, '33.61730', '-86.80010'), ('Gardendale', 11626, '33.66520', '-86.80060'), ('Graysville', 2344, '33.62640', '-86.96920'), ('Homewood', 25043, '33.46480', '-86.80700'), ('Hoover', 62742, '33.37530', '-86.81900'), ('Hueytown', 15364, '33.43760', '-86.99760'), ('Irondale', 9813, '33.53230', '-86.67630'), ('Kimberly', 1801, '33.76820', '-86.80480'), ('Leeds', 10455, '33.54600', '-86.56270'), ('Lipscomb', 2458, '33.42610', '-86.92540'), ('Maytown', 435, '33.55110', '-86.99570'), ('Midfield', 5626, '33.45410', '-86.92280'), ('Minor', 1116, '33.52530', '-86.94760'), ('Morris', 1827, '33.74970', '-86.80530'), ('Mountain Brook', 20604, '33.48690', '-86.74050'), ('Mulga', 973, '33.54660', '-86.97530'), ('North Johns', 142, '33.36810', '-87.10150'), ('Pinson-Clay-chalkv', 10987, '33.67670', '-86.65860'), ('Pleasant Grove', 9983, '33.48920', '-86.97590'), ('Sylvan Springs', 1465, '33.51290', '-87.03060'), ('Tarrant', 8046, '33.59370', '-86.76790'), ('Trafford', 523, '33.82360', '-86.74650'), ('Trussville', 12924, '33.63590', '-86.59320'), ('Vestavia Hills', 24476, '33.43360', '-86.78760'), ('Warrior', 3169, '33.81390', '-86.80820'), ('West Jefferson', 344, '33.64870', '-87.06790')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC075': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Beaverton', 226, '33.93430', '-88.02140'), ('Detroit', 247, '34.02620', '-88.16880'), ('Kennedy', 541, '33.58140', '-87.98550'), ('Millport', 1160, '33.55950', '-88.08120'), ('Sulligent', 2151, '33.89470', '-88.13190'), ('Vernon', 2143, '33.75830', '-88.11380')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALC077': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Anderson', 354, '34.91350', '-87.27060'), ('Florence', 36264, '34.82780', '-87.66510'), ('Killen', 1119, '34.86150', '-87.52930'), ('Lexington', 840, '34.96600', '-87.37290'), ('Rogersville', 1199, '34.82620', '-87.28450'), ('Saint Florian', 335, '34.86570', '-87.62380'), ('Underwood-Petersville', 3137, '34.87700', '-87.69600'), ('Waterloo', 208, '34.91670', '-88.06420')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALC079': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Courtland', 769, '34.66890', '-87.31660'), ('Hillsboro', 608, '34.63670', '-87.18460'), ('Moulton', 3260, '34.48390', '-87.28110'), ('North Courtland', 799, '34.67720', '-87.30840'), ('Town Creek', 1216, '34.67270', '-87.40830')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALC081': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Auburn', 42987, '32.59290', '-85.48030'), ('Loachapoka', 165, '32.60470', '-85.59690'), ('Opelika', 23498, '32.65420', '-85.37880'), ('Smiths', 21756, '32.53980', '-85.08720')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC083': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ardmore', 1034, '34.98340', '-86.83660'), ('Athens', 18967, '34.78600', '-86.95990'), ('Elkmont', 470, '34.92840', '-86.97590'), ('Lester', 107, '34.98420', '-87.14790'), ('Mooresville', 59, '34.62680', '-86.88000')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALC085': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Benton', 47, '32.30740', '-86.81760'), ('Fort Deposit', 1270, '31.98590', '-86.57620'), ('Hayneville', 1177, '32.18250', '-86.57880'), ('Lowndesboro', 140, '32.27670', '-86.61030'), ('Mosses', 1101, '32.17620', '-86.67460'), ('White Hall', 1014, '32.30080', '-86.71450')], 'partOfState': 'south central', 'wfo': 'BMX'}, +'ALC087': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Franklin', 149, '32.45520', '-85.80280'), ('Notasulga', 916, '32.55760', '-85.67240'), ('Shorter', 355, '32.40080', '-85.93660'), ('Tuskegee', 11846, '32.43770', '-85.71110')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALC089': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Gurley', 876, '34.70310', '-86.37310'), ('Harvest', 3054, '34.85560', '-86.74990'), ('Hazel Green', 3805, '34.92360', '-86.56720'), ('Huntsville', 158216, '34.70700', '-86.62770'), ('Madison', 29329, '34.70290', '-86.74970'), ('Meridianville', 4117, '34.87380', '-86.57090'), ('Moores Mill', 5178, '34.85190', '-86.52580'), ('New Hope', 2539, '34.53910', '-86.41590'), ('New Market', 1864, '34.90950', '-86.42510'), ('Owens Crossroads', 1124, '34.58200', '-86.46020'), ('Redstone Arsenal', 2365, '34.68410', '-86.65400'), ('Triana', 458, '34.59460', '-86.74430')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALC091': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Consul', 383, '32.26440', '-87.54040'), ('Dayton', 60, '32.35140', '-87.64220'), ('Demopolis', 7540, '32.51560', '-87.83920'), ('Dixons Mill', 234, '32.05750', '-87.78780'), ('Faunsdale', 87, '32.45980', '-87.59430'), ('Flatwood', 0, '32.14929', '-87.52301'), ('Half Acre', 139, '32.19420', '-87.91210'), ('Holtamville', 234, '31.99190', '-87.94010'), ('Jefferson', 7540, '32.38610', '-87.89790'), ('Linden', 2424, '32.30500', '-87.79920'), ('Magnolia', 383, '32.13580', '-87.66790'), ('Miller', 234, '32.15680', '-87.78550'), ('Myrtlewood', 139, '32.25010', '-87.94980'), ('Nanafalia', 353, '32.11300', '-87.98810'), ('Octagon', 2424, '32.20430', '-87.75550'), ('Old Spring Hill', 7540, '32.43730', '-87.77380'), ('Providence', 311, '32.34130', '-87.78150'), ('Putnam', 353, '32.02190', '-88.03250'), ('Shawnee', 4649, '31.99360', '-87.70710'), ('Shiloh', 266, '32.12740', '-87.73580'), ('Surginer', 966, '32.05540', '-87.71030'), ('Sweet Water', 234, '32.09720', '-87.86750'), ('Thomaston', 383, '32.26610', '-87.62670'), ('Us 80 And Al 28', 7540, '32.44250', '-87.98570'), ('Vineland', 966, '32.03500', '-87.65960')], 'partOfState': 'southwest', 'wfo': 'BMX'}, +'ALC093': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bear Creek', 1053, '34.26050', '-87.71560'), ('Brilliant', 762, '34.01670', '-87.77580'), ('Guin', 2389, '33.96610', '-87.91050'), ('Gu-Win', 204, '33.95820', '-87.87170'), ('Hackleburg', 1527, '34.27420', '-87.83370'), ('Hamilton', 6786, '34.14030', '-87.98280'), ('Weston', 384, '34.16220', '-88.03090'), ('Winfield', 4540, '33.92990', '-87.79610')], 'partOfState': 'northwest', 'wfo': 'BMX'}, +'ALC095': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Albertville', 17247, '34.26250', '-86.20940'), ('Arab', 7174, '34.32960', '-86.50010'), ('Boaz', 7411, '34.20260', '-86.15550'), ('Douglas', 530, '34.17150', '-86.32120'), ('Grant', 665, '34.51720', '-86.25230'), ('Guntersville', 7395, '34.35680', '-86.27040'), ('Union Grove', 94, '34.40000', '-86.44610')], 'partOfState': 'northeast', 'wfo': 'HUN'}, +'ALC097': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Acropolis Heights', 0, '30.73352', '-88.17780'), ('Airport And Government', 0, '30.67792', '-88.08099'), ('Airport And University', 0, '30.67609', '-88.16998'), ('Akka', 0, '30.77753', '-88.02301'), ('Alabama Port', 0, '30.36310', '-88.11469'), ('Alderbrook', 0, '30.64893', '-88.27771'), ('Allenville', 0, '30.70288', '-88.07892'), ('Alpine Hills', 0, '30.71191', '-88.18811'), ('Ashley Oaks', 0, '30.76312', '-88.13470'), ('Axis', 2002, '30.92249', '-88.02191'), ('Barry Village', 0, '30.99890', '-88.02692'), ('Bayleys Corner', 0, '30.46490', '-88.11438'), ('Bayou La Batre', 2313, '30.40033', '-88.20331'), ('Belle Chene', 0, '30.63831', '-88.14362'), ('Belle Fontaine', 6811, '30.49451', '-88.11151'), ('Bellwood', 0, '30.71552', '-88.15002'), ('Belvedere', 0, '30.65271', '-88.11060'), ('Big Creek Lake Dam', 503, '30.71008', '-88.33002'), ('Boothetown', 0, '30.95129', '-88.33948'), ('Bridlewood', 0, '30.66492', '-88.11670'), ('Brookley Field Airport', 198915, '30.63348', '-88.07019'), ('Brookwood', 0, '30.66827', '-88.10779'), ('Bucks', 844, '31.01050', '-88.02411'), ('Burma Hills', 0, '30.64191', '-88.15271'), ('Calvert', 844, '31.15448', '-88.01050'), ('Canebrake', 0, '30.65448', '-88.19440'), ('Canterbury Heights', 0, '30.62488', '-88.16101'), ('Carriage Hills', 0, '30.63629', '-88.19580'), ('Celeste', 5687, '30.89471', '-88.12329'), ('Charmingdale', 0, '30.75049', '-88.19891'), ('Chastang', 844, '31.03772', '-88.02332'), ('Chickasaw', 6364, '30.77148', '-88.07910'), ('Chunchula', 12288, '30.92731', '-88.20819'), ('Churchill Downs', 0, '30.76630', '-88.28198'), ('Citronelle', 3659, '31.06189', '-88.25751'), ('Clarke Gardens', 0, '30.58228', '-88.10138'), ('Cloverdale', 0, '30.50171', '-88.38892'), ('Coden', 0, '30.38312', '-88.23828'), ('College Woods', 0, '30.79889', '-88.12140'), ('Cottage Hill', 0, '30.65033', '-88.14612'), ('Cox', 0, '30.64270', '-88.08331'), ('Cox Beach', 0, '30.85211', '-88.03998'), ('Crawford', 0, '30.76410', '-88.22778'), ('Creekwood', 0, '30.65308', '-88.21942'), ('Creola', 2002, '30.89032', '-88.01001'), ('Crestview', 0, '30.62109', '-88.15002'), ('Crichton', 198915, '30.70630', '-88.10608'), ('Dawes', 15685, '30.60773', '-88.25531'), ('Dawes Point', 0, '30.63629', '-88.25360'), ('Deerwood', 0, '30.71350', '-88.16058'), ('Dees', 3918, '30.56409', '-88.34332'), ('Delchamps', 2313, '30.40088', '-88.14893'), ('Dixon Corner', 2313, '30.45209', '-88.24188'), ('Earlville', 503, '30.98352', '-88.40698'), ('Edgefield', 0, '30.64252', '-88.18890'), ('Eight Mile', 28633, '30.76349', '-88.12689'), ('El Monte', 0, '30.66089', '-88.16388'), ('Fairview', 0, '30.79327', '-88.30139'), ('Farnell', 0, '30.64349', '-88.10321'), ('Faustinas', 0, '30.43390', '-88.10559'), ('Fernland', 0, '30.48328', '-88.29309'), ('Forest Highlands', 0, '30.72949', '-88.16669'), ('Forest Hill', 28633, '30.71490', '-88.15332'), ('Forest Park', 0, '30.62891', '-88.08893'), ('Fort Stoddard', 844, '31.09991', '-87.97919'), ('Fowl River', 0, '30.46252', '-88.16888'), ('Georgetown', 0, '30.88849', '-88.27032'), ('Glen Acres', 0, '30.71191', '-88.24719'), ('Grand Bay', 3918, '30.47168', '-88.34491'), ('Gulfcrest', 3659, '30.99109', '-88.24188'), ('Gulf Dale', 0, '30.60852', '-88.07922'), ('Hatters', 0, '30.90350', '-88.05078'), ('Heron Bay', 0, '30.35468', '-88.13031'), ('Hollingers Island', 6811, '30.54852', '-88.11041'), ('I10 And I65', 198915, '30.62848', '-88.11829'), ('I10 And Mcdonald Rd', 6811, '30.53729', '-88.23969'), ('I65 And Airport Blvd', 198915, '30.67633', '-88.12732'), ('I65 And Al 158', 12288, '30.80231', '-88.10449'), ('I65 And I165', 6364, '30.75372', '-88.09448'), ('I65 And Moffett Rd', 198915, '30.70709', '-88.12238'), ('I65 And Us 43', 5687, '30.87708', '-88.04462'), ('I65 And Us 45', 28633, '30.74072', '-88.10760'), ('Indian Hills', 0, '30.79187', '-88.19720'), ('Indian Springs', 0, '30.78052', '-88.19171'), ('Irvington', 6811, '30.50690', '-88.23389'), ('Kali-Oka Springs', 0, '30.85712', '-88.14673'), ('Kirewakra', 0, '30.43347', '-88.17639'), ('Kushla', 28633, '30.81549', '-88.15808'), ('Ladd Stadium', 198915, '30.67352', '-88.07611'), ('Lambert', 0, '31.02808', '-88.19330'), ('Lambert Grove', 0, '31.04352', '-88.15723'), ('Lansdowne', 0, '30.61407', '-88.16388'), ('Laurendine', 6811, '30.49811', '-88.16998'), ('Le Moyne', 0, '30.95831', '-88.02771'), ('Little Pines', 0, '30.83850', '-88.07080'), ('Lloyds', 0, '30.61768', '-88.12811'), ('Lott', 0, '30.81128', '-88.25140'), ('Lott And Coleman Dairy Rd', 503, '30.83710', '-88.27069'), ('Mackies', 0, '30.83289', '-88.06812'), ('Magazine', 0, '30.73450', '-88.05249'), ('Mann', 0, '30.59332', '-88.14392'), ('Mauvilla', 0, '30.83691', '-88.18439'), ('Meadow Lake', 0, '30.59052', '-88.23328'), ('Mertz', 0, '30.66272', '-88.08832'), ('Millertown', 0, '30.82111', '-88.25830'), ('Mobile', 198915, '30.70288', '-88.11389'), ('Mobile Regional Airport', 15685, '30.68127', '-88.24432'), ('Moffet', 503, '30.85449', '-88.39752'), ('Mon Louis', 6811, '30.44049', '-88.10571'), ('Mount Vernon', 844, '31.06689', '-88.04889'), ('Movico', 0, '31.06268', '-88.02661'), ('Navco', 0, '30.62970', '-88.10529'), ('Neely', 0, '30.73212', '-88.10028'), ('Nelson', 0, '30.38629', '-88.21667'), ('Nenemoosha', 0, '30.80988', '-88.00470'), ('Neshota', 0, '30.63928', '-88.08911'), ('North Mobile', 0, '30.76172', '-88.09131'), ('Norwood', 0, '30.76910', '-88.09021'), ('Oak Grove', 12288, '30.85712', '-88.18188'), ('Orchard', 0, '30.71973', '-88.20721'), ('Park Forest', 0, '30.70752', '-88.17969'), ('Parkwood', 0, '30.75568', '-88.15973'), ('Pennsylvania', 0, '30.87329', '-88.04749'), ('Petaluma', 0, '30.71692', '-88.27448'), ('Pinecrest', 0, '30.47113', '-88.35699'), ('Pine Grove', 0, '30.71332', '-88.13110'), ('Pineola', 844, '31.05750', '-88.11169'), ('Pine Run', 0, '30.67249', '-88.21112'), ('Pine Wood', 0, '30.81970', '-88.07642'), ('Pinto Island', 198915, '30.67548', '-88.02679'), ('Plateau', 0, '30.73633', '-88.06390'), ('Ponderosa', 0, '30.72949', '-88.25830'), ('Prichard', 28633, '30.77368', '-88.12970'), ('Regency', 0, '30.66272', '-88.17389'), ('Robinwood', 0, '30.59192', '-88.20502'), ('Rosehaven', 0, '30.78088', '-88.14722'), ('Russell', 0, '31.05627', '-88.23199'), ('Saint Elmo', 6811, '30.50348', '-88.25421'), ('Salco', 2002, '30.96692', '-88.03473'), ('San Souci Beach', 0, '30.38892', '-88.25830'), ('Saraland', 12288, '30.83112', '-88.09808'), ('Satsuma', 5687, '30.85492', '-88.06049'), ('Schillinger And Three Notch', 15685, '30.58893', '-88.22522'), ('Scoutshire Woods', 0, '31.04688', '-88.18170'), ('Semmes', 503, '30.79907', '-88.29138'), ('Seven Hills', 15685, '30.65411', '-88.30310'), ('Sherwood', 0, '30.61969', '-88.08331'), ('Sibert', 0, '30.74469', '-88.06000'), ('Sidney', 3659, '31.06787', '-88.23450'), ('Smithfield', 0, '30.66193', '-88.21161'), ('Smithport', 0, '30.45947', '-88.11499'), ('Smithtown', 0, '30.86108', '-88.20862'), ('Snow And Tanner Williams', 503, '30.71088', '-88.27618'), ('South Orchard', 6811, '30.46490', '-88.15051'), ('Southridge', 0, '30.62708', '-88.18890'), ('Spanish Trace', 0, '30.82971', '-88.12079'), ('Spring Hill', 0, '30.69849', '-88.13892'), ('Spring Hill College', 198915, '30.69373', '-88.13647'), ('Spring Valley', 0, '30.63129', '-88.13812'), ('Stage Coach Woods', 0, '31.01831', '-88.08063'), ('Suburban Heights', 0, '30.59692', '-88.17499'), ('Sugar Creek', 0, '30.66272', '-88.19672'), ('Summerville', 0, '30.74548', '-88.07672'), ('Sunny Cove', 0, '30.48413', '-88.10071'), ('Sunset Ranch', 0, '30.63208', '-88.14081'), ('Tacon', 0, '30.68811', '-88.10468'), ('Tanner Williams', 503, '30.68732', '-88.31689'), ('Theodore', 6811, '30.55548', '-88.17169'), ('Tillmans Corner', 15685, '30.58447', '-88.20221'), ('Timbers', 0, '30.67047', '-88.18750'), ('Todd Acres', 0, '30.57928', '-88.13470'), ('Toulminville', 0, '30.71887', '-88.09082'), ('Turnerville', 0, '30.97852', '-88.12921'), ('Union Church', 0, '30.56549', '-88.34381'), ('University Of South Alabama', 28633, '30.69647', '-88.18042'), ('Warley', 0, '30.82831', '-88.36560'), ('West End Of Dauphin Island', 1371, '30.22992', '-88.29999'), ('West Hill', 0, '30.69031', '-88.18079'), ('Wheelerville', 0, '30.69031', '-88.19171'), ('Whistler', 6364, '30.75671', '-88.10309'), ('Wildwood Heights', 0, '30.65491', '-88.16571'), ('Williams Heights', 0, '30.84192', '-88.07080'), ('Wilmer', 503, '30.82330', '-88.36139'), ('Windcrest', 0, '30.62250', '-88.21442')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALC099': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Al 47 And CR 29', 0, '31.76947', '-86.99799'), ('Axle', 0, '31.59570', '-87.32971'), ('Beatrice', 412, '31.72351', '-87.15442'), ('Buena Vista', 327, '31.79327', '-87.24860'), ('Burnt Corn', 280, '31.55353', '-87.16028'), ('Chestnut', 327, '31.80768', '-87.23218'), ('Chrysler', 5419, '31.30530', '-87.70111'), ('Claiborne', 1460, '31.54028', '-87.51550'), ('Drewry', 6862, '31.48633', '-87.25299'), ('Eliska', 5419, '31.35272', '-87.68298'), ('Excel', 582, '31.42651', '-87.34332'), ('Finchburg', 6862, '31.64270', '-87.51080'), ('Fountain', 6862, '31.59473', '-87.40887'), ('Franklin', 149, '31.71472', '-87.41138'), ('Frisco City', 1460, '31.41528', '-87.38940'), ('Goodway', 1460, '31.33691', '-87.42578'), ('Halls Crossroads', 0, '31.40253', '-87.33142'), ('Hixon', 0, '31.57288', '-87.42609'), ('Homewood', 1460, '31.36969', '-87.59943'), ('Hybart', 327, '31.82648', '-87.38190'), ('Jeddo', 7676, '31.33252', '-87.51422'), ('Kalem', 0, '31.70508', '-87.21582'), ('Keith', 327, '31.67749', '-87.36139'), ('Manistee', 1460, '31.44110', '-87.49438'), ('Megargel', 1460, '31.37811', '-87.43060'), ('Mexboro', 0, '31.49390', '-87.37439'), ('Mexia', 6862, '31.50708', '-87.38831'), ('Mexia Crossing', 0, '31.48853', '-87.37140'), ('Midway', 412, '31.71912', '-87.04901'), ('Mineola', 1460, '31.27972', '-87.63391'), ('Monroeton', 0, '31.53833', '-87.27802'), ('Monroeville', 6862, '31.51691', '-87.33643'), ('Mount Pleasant', 5419, '31.33350', '-87.69580'), ('Nadawah', 412, '31.81427', '-87.17218'), ('Natchez', 412, '31.72772', '-87.26050'), ('Old Salem', 0, '31.53967', '-87.40613'), ('Old Texas', 0, '31.76971', '-87.00031'), ('Ollie', 0, '31.47168', '-87.34222'), ('Packards Bend', 327, '31.77612', '-87.48938'), ('Palmers Crossroads', 0, '31.29993', '-87.54858'), ('Perdue Hill', 1460, '31.51410', '-87.49329'), ('Peterman', 6862, '31.58368', '-87.26300'), ('Pine Orchard', 0, '31.64069', '-87.13641'), ('Pineville', 0, '31.74268', '-87.17719'), ('Renson', 0, '31.55408', '-87.28387'), ('Riley', 0, '31.72632', '-87.12610'), ('River Ridge', 412, '31.71368', '-87.31299'), ('Scotland', 0, '31.66687', '-87.27301'), ('Scratch Ankle', 0, '31.66272', '-87.43750'), ('Tinela', 327, '31.80847', '-87.39722'), ('Tunnel Springs', 412, '31.64270', '-87.23999'), ('Turnbull', 412, '31.71490', '-87.13190'), ('Uriah', 1460, '31.33771', '-87.67078'), ('Valley Estates', 0, '31.54968', '-87.29828'), ('Vredenburgh', 327, '31.73169', '-87.39502'), ('Wainwright', 0, '31.64911', '-87.48688'), ('West Monroeville', 6862, '31.51569', '-87.35358')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALC101': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Montgomery', 201568, '32.35440', '-86.28430')], 'partOfState': 'south central', 'wfo': 'BMX'}, +'ALC103': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Decatur', 53929, '34.57180', '-86.98820'), ('Eva', 491, '34.33040', '-86.75590'), ('Falkville', 1202, '34.37690', '-86.90970'), ('Flint City', 1033, '34.51550', '-86.97280'), ('Hartselle', 12019, '34.43690', '-86.93980'), ('Priceville', 1631, '34.52420', '-86.88560'), ('Somerville', 347, '34.47470', '-86.80140'), ('Trinity', 1841, '34.59860', '-87.08980')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALC105': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Marion', 3511, '32.63160', '-87.31760'), ('Uniontown', 1636, '32.44700', '-87.50850')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC107': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Aliceville', 2567, '33.12510', '-88.15800'), ('Carrollton', 987, '33.26180', '-88.09510'), ('Ethelsville', 81, '33.41420', '-88.21630'), ('Gordo', 1677, '33.32130', '-87.90370'), ('McMullen', 66, '33.14710', '-88.17610'), ('Memphis', 33, '33.13830', '-88.30130'), ('Pickensville', 662, '33.22660', '-88.26560'), ('Reform', 1978, '33.37960', '-88.01670')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALC109': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Banks', 224, '31.81430', '-85.83830'), ('Brundidge', 2341, '31.71890', '-85.81530'), ('Goshen', 300, '31.71960', '-86.12590'), ('Troy', 13935, '31.80410', '-85.96820')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALC111': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Roanoke', 6563, '33.14530', '-85.36930'), ('Wadley', 640, '33.12330', '-85.56860'), ('Wedowee', 818, '33.30850', '-85.48650'), ('Woodland', 192, '33.37410', '-85.39930')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC113': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Hurtsboro', 592, '32.23990', '-85.41440'), ('Ladonia', 3229, '32.46240', '-85.08680'), ('Phenix City', 28265, '32.46550', '-85.01460')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALC115': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Argo', 1780, '33.68670', '-86.51000'), ('Ashville', 2260, '33.83470', '-86.26400'), ('Branchville', 825, '33.66110', '-86.42700'), ('Margaret', 1169, '33.68770', '-86.47470'), ('Moody', 8053, '33.59690', '-86.49460'), ('Odenville', 1131, '33.68600', '-86.39840'), ('Pell City', 9565, '33.56020', '-86.27240'), ('Ragland', 1918, '33.74810', '-86.13630'), ('Riverside', 1564, '33.61130', '-86.20770'), ('Springville', 2521, '33.77360', '-86.47510'), ('Steele', 1093, '33.93400', '-86.19730')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC117': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alabaster', 22619, '33.22650', '-86.82460'), ('Calera', 3158, '33.10130', '-86.75370'), ('Chelsea', 2949, '33.32630', '-86.63740'), ('Columbiana', 3316, '33.17700', '-86.60080'), ('Harpersville', 1620, '33.34180', '-86.43270'), ('Helena', 10296, '33.28970', '-86.85240'), ('Inverness', 2528, '33.40410', '-86.72290'), ('Lake Purdy', 5799, '33.42990', '-86.68050'), ('Meadowbrook', 4697, '33.40190', '-86.69680'), ('Montevallo', 4825, '33.10930', '-86.85120'), ('Pelham', 14369, '33.30330', '-86.79410'), ('Vincent', 1853, '33.38560', '-86.40990'), ('Wilsonville', 1551, '33.23600', '-86.47900'), ('Wilton', 580, '33.08220', '-86.88110')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC119': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Cuba', 363, '32.44060', '-88.37430'), ('Emelle', 31, '32.72850', '-88.31520'), ('Epes', 206, '32.69170', '-88.12600'), ('Gainesville', 220, '32.81530', '-88.15960'), ('Geiger', 161, '32.87370', '-88.31340'), ('Livingston', 3297, '32.59880', '-88.18710'), ('York', 2854, '32.49600', '-88.29610')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALC121': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bon Air', 96, '33.26130', '-86.33810'), ('Childersburg', 4927, '33.27940', '-86.35330'), ('Gantts Quarry', 0, '33.14820', '-86.29940'), ('Lincoln', 4577, '33.59800', '-86.13940'), ('Mignon', 1348, '33.19400', '-86.26400'), ('Oak Grove', 457, '33.18620', '-86.30290'), ('Sylacauga', 12616, '33.17600', '-86.26130'), ('Talladega', 15143, '33.43200', '-86.09800'), ('Talladega Springs', 124, '33.11750', '-86.44450'), ('Waldo', 281, '33.39090', '-86.03540')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC123': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alexander City', 15008, '32.92700', '-85.93400'), ('Camp Hill', 1273, '32.80010', '-85.65330'), ('Dadeville', 3212, '32.83190', '-85.76520'), ('Daviston', 267, '33.05510', '-85.63920'), ('Goldville', 37, '33.08350', '-85.78440'), ("Jacksons' Gap", 761, '32.88410', '-85.81700'), ('New Site', 848, '33.03520', '-85.77500')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALC125': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Brookwood', 1483, '33.24720', '-87.32390'), ('Holt', 4103, '33.22960', '-87.48090'), ('Northport', 19435, '33.24410', '-87.59210'), ('Tuscaloosa', 77906, '33.23770', '-87.54100'), ('Vance', 500, '33.17090', '-87.22790')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALC127': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Carbon Hill', 2071, '33.89580', '-87.52500'), ('Cordova', 2423, '33.76060', '-87.19280'), ('Dora', 2413, '33.73140', '-87.08320'), ('Eldridge', 184, '33.92200', '-87.61980'), ('Jasper', 14052, '33.85200', '-87.27010'), ('Kansas', 260, '33.90180', '-87.55330'), ('Nauvoo', 284, '33.98850', '-87.48780'), ('Oakman', 944, '33.71300', '-87.38850'), ('Parrish', 1268, '33.73380', '-87.28070'), ('Sipsey', 552, '33.82210', '-87.08310'), ('Sumiton', 2665, '33.75310', '-87.04820')], 'partOfState': '', 'wfo': 'BMX'}, +'ALC129': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Barlow', 7676, '31.56689', '-88.32361'), ('Bassetts Creek', 248, '31.46472', '-88.03223'), ('Bigbee', 615, '31.61407', '-88.16638'), ('Burbank', 556, '31.21808', '-88.39062'), ('Carpenter', 548, '31.54169', '-88.23639'), ('Carson', 5419, '31.47247', '-87.94141'), ('Chapel Hill', 412, '31.69348', '-88.44031'), ('Chatom', 1193, '31.52112', '-88.20813'), ('Chestang', 360, '31.16193', '-88.11438'), ('Copeland', 0, '31.56030', '-88.41919'), ('Cortelyou', 5419, '31.42352', '-88.00830'), ('Deer Park', 3659, '31.21869', '-88.32532'), ('Dunbar', 0, '31.67828', '-88.34601'), ('Dwight', 0, '31.15192', '-88.25861'), ('Ellisville', 0, '31.54547', '-88.21332'), ('Epworth', 0, '31.26068', '-88.42419'), ('Escatawpa', 395, '31.28967', '-88.38721'), ('Fairford', 844, '31.17810', '-88.07281'), ('Fitee', 0, '31.54413', '-88.34949'), ('Four Point', 0, '31.30133', '-88.36450'), ('Frankville', 360, '31.64648', '-88.14752'), ('Fruitdale', 395, '31.34351', '-88.41180'), ('Happy Hill', 0, '31.18170', '-88.05170'), ('Hawthorn', 244, '31.33331', '-88.08832'), ('Healing Springs', 615, '31.63251', '-88.33661'), ('Hobson', 0, '31.48871', '-88.15088'), ('Jordan', 1193, '31.50488', '-88.24719'), ('Koenton', 615, '31.64008', '-88.25952'), ('Laton Hill', 0, '31.48907', '-88.36810'), ('Leroy', 5419, '31.49487', '-87.97278'), ('Loper', 615, '31.58148', '-88.29999'), ('Malcolm', 244, '31.19873', '-88.00110'), ('McIntosh', 244, '31.25250', '-88.05420'), ('Mehaffey', 0, '31.61768', '-88.39862'), ('Millry', 615, '31.63068', '-88.32141'), ('Mowa Choctaw Reservation', 0, '31.14691', '-88.05292'), ('New Wakefield', 0, '31.34747', '-88.03192'), ('Prestwick', 5419, '31.45288', '-87.96613'), ('Reid Settlement', 0, '31.24609', '-88.09888'), ('Rutan', 0, '31.43970', '-88.18951'), ('Saint Stephens', 5419, '31.55188', '-88.06073'), ('Seaboard', 1193, '31.32129', '-88.18860'), ('Shady Grove', 0, '31.63110', '-88.39142'), ('Silver Cross', 360, '31.68109', '-88.17419'), ('Sims Chapel', 0, '31.22931', '-88.14539'), ('Sunflower', 244, '31.38251', '-88.00830'), ('Tibbie', 1193, '31.36292', '-88.24670'), ('Toinette', 244, '31.33972', '-88.00830'), ('Topton', 244, '31.28632', '-88.15002'), ('Uniform', 0, '31.34949', '-88.23450'), ('Vinegar Bend', 3659, '31.25909', '-88.36731'), ('Wagar', 0, '31.44189', '-87.99359'), ('Wagarville', 5419, '31.43890', '-88.02441'), ('Walley', 0, '31.18469', '-88.42499'), ('Wilson', 0, '31.54608', '-88.06171'), ('Yarbo', 1193, '31.54388', '-88.27771'), ('Yellow Pine', 395, '31.40570', '-88.42969')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALC131': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ackerville', 37, '32.02972', '-87.06641'), ('Alberta', 230, '32.23212', '-87.40991'), ('Allenton', 37, '31.93689', '-87.05328'), ('Allenton Station', 0, '31.92987', '-87.02362'), ('Anne Manie', 966, '32.05292', '-87.57080'), ('Arlington', 0, '32.05713', '-87.58862'), ('Asahel', 0, '31.86792', '-87.42078'), ('Awin', 145, '31.83807', '-86.94891'), ('Bellview', 327, '31.84369', '-87.35608'), ('Bethel', 0, '32.14111', '-87.47498'), ('Boiling Springs', 0, '32.13428', '-87.46832'), ('Boykin', 2257, '32.06848', '-87.29462'), ('Caledonia', 37, '31.89050', '-87.08752'), ('Camden', 2257, '32.01190', '-87.29248'), ('Carleys', 0, '32.26709', '-87.49139'), ('Catherine', 383, '32.18628', '-87.46991'), ('Coal Bluff', 181, '31.94513', '-87.43829'), ('Coy', 181, '31.86267', '-87.35358'), ('Culpeper', 5687, '31.88708', '-87.57751'), ('Darlington', 37, '31.97772', '-87.13049'), ('Dry Forks', 0, '31.90149', '-87.36670'), ('Estelle', 2257, '31.96930', '-87.20251'), ('Fatama', 327, '31.89911', '-87.23541'), ('Furman', 145, '32.00690', '-86.96692'), ('Gastonburg', 383, '32.20728', '-87.43750'), ('Hamburg', 0, '31.97607', '-87.03552'), ('Hestle', 0, '31.92969', '-87.62811'), ('Kimbrough', 966, '32.03351', '-87.56531'), ('Lamison', 966, '32.12128', '-87.56671'), ('Lower Peach Tree', 181, '31.84070', '-87.54529'), ('Macmillan', 0, '31.97290', '-87.52252'), ('McBrydes', 37, '31.99249', '-87.02142'), ('McWilliams', 37, '31.83112', '-87.09381'), ('Midway', 0, '32.08429', '-87.40503'), ('Millers Ferry', 2257, '32.09967', '-87.36749'), ('Neenah', 0, '31.91467', '-87.17798'), ('Nellie', 0, '31.90149', '-87.38281'), ('Oak Hill', 37, '31.92151', '-87.08508'), ('Pebble Hill', 0, '31.93909', '-87.34332'), ('Pine Apple', 145, '31.93030', '-87.00922'), ('Pine Hill', 966, '31.97290', '-87.57501'), ('Prairie', 181, '32.15411', '-87.44000'), ('Prairie Bluff', 0, '32.13428', '-87.40363'), ('Rehoboth', 230, '32.19568', '-87.38141'), ('Rock Springs', 0, '31.97168', '-86.99078'), ('Rockwest', 2257, '31.99988', '-87.37170'), ('Rosebud', 0, '31.94128', '-87.13690'), ('Rutthven', 145, '31.85352', '-87.02972'), ('Schuster', 0, '31.86407', '-87.04688'), ('Shawnee', 0, '31.99390', '-87.20691'), ('Sheppard', 181, '31.91132', '-87.47998'), ('Snow Hill', 37, '32.00470', '-87.00720'), ('Sunny South', 966, '31.96490', '-87.64001'), ('Watsonville', 37, '31.86768', '-87.16498'), ('Yellow Bluff', 181, '31.96228', '-87.48053')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALC133': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Addison', 723, '34.19990', '-87.17790'), ('Arley', 290, '34.08500', '-87.21060'), ('Double Springs', 1003, '34.14840', '-87.40310'), ('Haleyville', 4182, '34.23880', '-87.61820'), ('Lynn', 597, '34.04380', '-87.54670')], 'partOfState': 'northwest', 'wfo': 'BMX'}, +'ARC001': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Almyra', 319, '34.40570', '-91.41060'), ('De Witt', 3552, '34.28950', '-91.33810'), ('Gillett', 819, '34.11910', '-91.37900'), ('Humphrey', 806, '34.42260', '-91.70230'), ('Saint Charles', 261, '34.37580', '-91.13290'), ('Stuttgart', 9745, '34.49350', '-91.55090')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARC003': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Crossett', 6097, '33.12740', '-91.96600'), ('Fountain Hill', 159, '33.35690', '-91.85090'), ('Hamburg', 3039, '33.22580', '-91.79700'), ('Montrose', 526, '33.29860', '-91.49700'), ('North Crossett', 3581, '33.16980', '-91.93620'), ('Parkdale', 377, '33.12080', '-91.54580'), ('Portland', 552, '33.23830', '-91.51120'), ('West Crossett', 1664, '33.14440', '-92.01990'), ('Wilmot', 786, '33.05830', '-91.57500')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'ARC005': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Big Flat', 104, '36.00580', '-92.40500'), ('Cotter', 921, '36.28250', '-92.52020'), ('Gassville', 1706, '36.28260', '-92.49470'), ('Lakeview', 531, '36.37520', '-92.53920'), ('Mountain Home', 11012, '36.33590', '-92.37920'), ('Norfork', 484, '36.20830', '-92.28200'), ('Salesville', 437, '36.24490', '-92.27000')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC007': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Avoca', 423, '36.40190', '-94.07060'), ('Beaver Lake', 0, '36.36670', '-93.88330'), ('Bella Vista', 16582, '36.42940', '-94.23140'), ('Bentonville', 19730, '36.37280', '-94.20860'), ('Bland', 0, '36.33330', '-93.92360'), ('Cave Springs', 1103, '36.26330', '-94.23170'), ('Centerton', 2146, '36.35970', '-94.28500'), ('Cherokee City', 0, '36.29830', '-94.57750'), ('Decatur', 1314, '36.33580', '-94.46060'), ('Fairmount', 0, '36.22670', '-94.44580'), ('Gallitin', 0, '36.20000', '-94.43330'), ('Garfield', 490, '36.44830', '-93.97390'), ('Gateway', 116, '36.49030', '-93.93170'), ('Gentry', 2165, '36.26750', '-94.48440'), ('Gravette', 1810, '36.42190', '-94.45330'), ('Healing Springs', 0, '36.25470', '-94.27810'), ('Highfill', 379, '36.26140', '-94.35750'), ('Hill Top', 490, '36.44690', '-93.99940'), ('Hiwasse', 0, '36.43170', '-94.33360'), ('Lake Francis', 0, '36.13330', '-94.53330'), ('Larue', 0, '36.34170', '-93.94580'), ('Lookout', 0, '36.28330', '-93.90000'), ('Lowell', 5013, '36.25530', '-94.13060'), ('Maysville', 0, '36.40360', '-94.60170'), ('Miller', 2146, '36.41640', '-94.26420'), ('Monte Ne', 0, '36.28720', '-94.06890'), ('Pea Ridge', 2346, '36.45390', '-94.11500'), ('Rocky Comfort', 0, '36.23920', '-94.30810'), ('Rogers', 38829, '36.33190', '-94.11830'), ('Siloam Springs', 10843, '36.18810', '-94.54030'), ('Springtown', 114, '36.26080', '-94.42310'), ('Sulphur Springs', 671, '36.48330', '-94.45830'), ('Vaughn', 0, '36.31530', '-94.30390'), ('Walnut Hill', 490, '36.40830', '-93.99110'), ('War Eagle', 0, '36.26780', '-93.94080')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARC009': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alpena', 371, '36.29300', '-93.29330'), ('Bellefonte', 400, '36.20040', '-93.04640'), ('Bergman', 407, '36.31290', '-93.01110'), ('Diamond City', 730, '36.45580', '-92.91510'), ('Everton', 170, '36.15540', '-92.90840'), ('Harrison', 12152, '36.24190', '-93.11950'), ('Lead Hill', 287, '36.41470', '-92.90670'), ('Omaha', 165, '36.46320', '-93.19190'), ('South Lead Hill', 88, '36.39500', '-92.90540'), ('Valley Springs', 167, '36.15290', '-92.99100'), ('Zinc', 76, '36.28530', '-92.91530')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC011': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Banks', 120, '33.57590', '-92.26820'), ('Hermitage', 769, '33.44720', '-92.17020'), ('Warren', 6442, '33.61010', '-92.06970')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARC013': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Hampton', 1579, '33.53670', '-92.46540'), ('Harrell', 293, '33.51000', '-92.40170'), ('Thornton', 517, '33.77620', '-92.48920'), ('Tinsman', 75, '33.62900', '-92.35350')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARC015': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Beaver', 95, '36.47360', '-93.76720'), ('Berryville', 4433, '36.36470', '-93.56780'), ('Blue Eye', 36, '36.49600', '-93.39690'), ('Busch', 0, '36.46420', '-93.83060'), ('Cabanal', 0, '36.27830', '-93.53190'), ('Carrollton', 0, '36.26250', '-93.32170'), ('Coin', 0, '36.33030', '-93.34780'), ('Connor', 0, '36.25000', '-93.43330'), ('Delmar', 0, '36.16060', '-93.34080'), ('Denver', 0, '36.39250', '-93.31470'), ('Dryfork', 0, '36.15330', '-93.48890'), ('Eureka Springs', 2278, '36.40110', '-93.73780'), ('Grandview', 0, '36.43390', '-93.62110'), ('Green Forest', 2717, '36.33530', '-93.43580'), ('Metalton', 0, '36.22310', '-93.52970'), ('Oak Grove', 376, '36.46120', '-93.44690'), ('Oak Hill', 0, '36.47720', '-93.69830'), ('Osage', 0, '36.18250', '-93.40440'), ('Pleasant Ridge', 0, '36.48170', '-93.64390'), ('Rudd', 0, '36.21360', '-93.48580'), ('Rule', 0, '36.27780', '-93.45970'), ('Urbanette', 0, '36.41970', '-93.53330')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARC017': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Dermott', 3292, '33.52660', '-91.43770'), ('Eudora', 2819, '33.11980', '-91.26310'), ('Lake Village', 2823, '33.32420', '-91.28350')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'ARC019': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Amity', 762, '34.26610', '-93.46390'), ('Arkadelphia', 10912, '34.12380', '-93.07060'), ('Caddo Valley', 563, '34.18790', '-93.07000'), ('Gum Springs', 194, '34.06450', '-93.09590'), ('Gurdon', 2276, '33.91640', '-93.14810'), ('Okolona', 160, '34.00050', '-93.33720'), ('Whelen Springs', 84, '33.83160', '-93.12570')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARC021': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Corning', 3679, '36.41080', '-90.58590'), ('Datto', 97, '36.39320', '-90.72810'), ('Greenway', 244, '36.34110', '-90.22220'), ('Hickoria', 195, '36.38330', '-90.45000'), ('Knobel', 358, '36.31930', '-90.60170'), ('McDougal', 195, '36.43660', '-90.39020'), ('Nimmons', 100, '36.30700', '-90.09450'), ('Peach Orchard', 195, '36.28090', '-90.66190'), ('Piggott', 3894, '36.38390', '-90.20080'), ('Pollard', 240, '36.43070', '-90.26620'), ('Rector', 2017, '36.26420', '-90.29330'), ('Saint Francis', 250, '36.45350', '-90.14320'), ('Success', 180, '36.45450', '-90.72290')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC023': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Concord', 255, '35.66340', '-91.84870'), ('Greers Ferry', 930, '35.56780', '-92.16920'), ('Heber Springs', 6432, '35.50020', '-92.03860'), ('Higden', 101, '35.56640', '-92.20520'), ('Quitman', 714, '35.38230', '-92.21430')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC025': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Kingsland', 449, '33.86130', '-92.29410'), ('Rison', 1271, '33.95450', '-92.19070')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARC027': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Emerson', 359, '33.09740', '-93.19610'), ('Magnolia', 10858, '33.27400', '-93.23540'), ('McNeil', 662, '33.34790', '-93.20880'), ('Taylor', 566, '33.10030', '-93.46210'), ('Waldo', 1594, '33.35250', '-93.29530')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC029': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Menifee', 311, '35.14830', '-92.55480'), ('Morrilton', 6550, '35.15620', '-92.74090'), ('Oppelo', 725, '35.10100', '-92.77510'), ('Plumerville', 854, '35.16060', '-92.64120')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC031': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bay', 1800, '35.74000', '-90.55920'), ('Black Oak', 286, '35.83550', '-90.36710'), ('Bono', 1512, '35.91050', '-90.79670'), ('Brookland', 1332, '35.90140', '-90.58080'), ('Caraway', 1349, '35.75800', '-90.33200'), ('Cash', 294, '35.79980', '-90.93220'), ('Egypt', 101, '35.86660', '-90.95290'), ('Jonesboro', 55515, '35.82180', '-90.68580'), ('Lake City', 1956, '35.81900', '-90.44860'), ('Monette', 1179, '35.89370', '-90.34460')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC033': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alma', 4160, '35.47780', '-94.22170'), ('Bidville', 0, '35.73970', '-93.98170'), ('Cedarville', 1133, '35.56970', '-94.36670'), ('Chester', 99, '35.68080', '-94.17500'), ('Concord', 255, '35.47060', '-94.25750'), ('Dora', 0, '35.45420', '-94.44060'), ('Dyer', 585, '35.49220', '-94.13750'), ('Figure Five', 0, '35.51690', '-94.35360'), ('Furry', 0, '35.48060', '-94.30220'), ('Kibler', 969, '35.43030', '-94.23140'), ('Lee Creek', 0, '35.68140', '-94.34920'), ('Locke', 0, '35.67390', '-94.07330'), ('Mountainburg', 682, '35.63560', '-94.16720'), ('Mount Gayler', 0, '35.75000', '-94.08330'), ('Mulberry', 1627, '35.50060', '-94.05140'), ('Natural Dam', 0, '35.64860', '-94.39440'), ('Pleasant Hill', 1627, '35.52170', '-94.04890'), ('Rudy', 72, '35.52780', '-94.27060'), ('Shibley', 0, '35.45030', '-94.29360'), ('Uniontown', 0, '35.58440', '-94.44390'), ('Van Buren', 18986, '35.43670', '-94.34810')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARC035': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Crawfordsville', 514, '35.22570', '-90.32620'), ('Earle', 3036, '35.27330', '-90.46500'), ('Edmondson', 513, '35.10350', '-90.30980'), ('Gilmore', 292, '35.41110', '-90.27740'), ('Horseshoe Lake', 321, '34.91330', '-90.30700'), ('Jennette', 124, '35.16560', '-90.40750'), ('Jericho', 184, '35.28590', '-90.22730'), ('Marion', 8901, '35.20650', '-90.20350'), ('Pinckney', 321, '34.96670', '-90.30000'), ('Simsboro', 1867, '35.01670', '-90.38330'), ('Sunset', 348, '35.22470', '-90.20760'), ('Turrell', 957, '35.37710', '-90.25710'), ('West Memphis', 27666, '35.14970', '-90.18220')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC037': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Cherry Valley', 704, '35.40300', '-90.75380'), ('Fair Oaks', 1850, '35.23330', '-91.03330'), ('Hickory Ridge', 384, '35.40350', '-90.99470'), ('Parkin', 1602, '35.26450', '-90.55250'), ('Vanndale', 8615, '35.31670', '-90.78330'), ('Wynne', 8615, '35.23130', '-90.78840')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC039': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Carthage', 442, '34.07230', '-92.55550'), ('Fordyce', 4799, '33.81770', '-92.41380'), ('Sparkman', 586, '33.91710', '-92.84860')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARC041': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arkansas City', 589, '33.60880', '-91.20570'), ('Dumas', 5238, '33.88320', '-91.48590'), ('McGehee', 4570, '33.62540', '-91.39250'), ('Mitchellville', 497, '33.90590', '-91.49850'), ('Reed', 275, '33.70180', '-91.44370'), ('Watson', 288, '33.89360', '-91.25740')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARC043': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Jerome', 46, '33.39880', '-91.47080'), ('Monticello', 9146, '33.62480', '-91.79380'), ('Tillar', 240, '33.71020', '-91.45170'), ('Wilmar', 571, '33.62590', '-91.92900'), ('Winchester', 191, '33.77480', '-91.47500')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARC045': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Conway', 43167, '35.08880', '-92.45310'), ('Damascus', 306, '35.36460', '-92.40580'), ('Enola', 188, '35.20020', '-92.20110'), ('Greenbrier', 3042, '35.22980', '-92.38350'), ('Guy', 202, '35.32450', '-92.33480'), ('Mayflower', 1631, '34.97180', '-92.41900'), ('Mount Vernon', 144, '35.22400', '-92.13010'), ('Vilonia', 2106, '35.08400', '-92.21120'), ('Wooster', 516, '35.19890', '-92.44830')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC047': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alix', 270, '35.42470', '-93.73030'), ('Altus', 817, '35.44610', '-93.76220'), ('Barnes', 3525, '35.63530', '-93.82030'), ('Branch', 357, '35.30560', '-93.95330'), ('Cass', 0, '35.68750', '-93.81920'), ('Cecil', 3525, '35.43860', '-93.94440'), ('Charleston', 2965, '35.29690', '-94.03610'), ('Cravens', 3525, '35.54830', '-93.91670'), ('Denning', 270, '35.42920', '-93.75690'), ('Fern', 0, '35.63890', '-94.01610'), ('Fort Chaffee', 0, '35.21670', '-94.06000'), ('Jethro', 3525, '35.60750', '-93.88720'), ('Lonelm', 3525, '35.55000', '-93.95000'), ('Meg', 191, '35.40420', '-93.88810'), ('Ozark', 3525, '35.48690', '-93.82750'), ('Paradise', 3525, '35.63220', '-93.83390'), ('Peter Pender', 357, '35.36000', '-93.93420'), ('Piney', 1627, '35.58580', '-94.05750'), ('Redding', 0, '35.68000', '-93.77690'), ('Taft', 0, '35.66670', '-93.71670'), ('Toney', 1627, '35.51810', '-93.96250'), ('Turners Bend', 0, '35.66670', '-93.83330'), ('Vesta', 0, '35.37920', '-94.04170'), ('Watalula', 3525, '35.57330', '-93.82720'), ('Wiederkehr Village', 46, '35.47310', '-93.76440')], 'partOfState': 'west central', 'wfo': 'TSA'}, +'ARC049': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Cherokee Village', 4416, '36.30160', '-91.56950'), ('Mammoth Spring', 1147, '36.49410', '-91.54470'), ('Viola', 381, '36.39620', '-91.98490')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC051': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Hot Springs', 35750, '34.49370', '-93.05200'), ('Hot Springs Village', 8397, '34.66520', '-93.00010'), ('Lake Hamilton', 1609, '34.42600', '-93.08930'), ('Lonsdale', 118, '34.54470', '-92.81110'), ('Mountain Pine', 772, '34.57140', '-93.17400'), ('Piney', 3988, '34.50340', '-93.14260'), ('Rockwell', 3024, '34.46430', '-93.13360')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC053': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Leola', 515, '34.16930', '-92.59070'), ('Poyen', 272, '34.32240', '-92.64230'), ('Prattsville', 282, '34.31810', '-92.54300'), ('Sheridan', 3872, '34.30930', '-92.40550'), ('Tull', 358, '34.44230', '-92.57350')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC055': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Beech Grove', 727, '36.16670', '-90.61670'), ('Delaplaine', 127, '36.23130', '-90.72600'), ('Evening Star', 127, '36.18330', '-90.70000'), ('Fontaine', 112, '36.00000', '-90.81670'), ('Lafe', 385, '36.20710', '-90.50310'), ('Marmaduke', 1158, '36.18840', '-90.38780'), ('Oak Grove Heights', 727, '36.12730', '-90.51520'), ('Paragould', 22017, '36.05610', '-90.51350'), ('Walcott', 22017, '36.03330', '-90.66670')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC057': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Blevins', 365, '33.87110', '-93.57720'), ('Fulton', 245, '33.61190', '-93.81430'), ('Hope', 10616, '33.66820', '-93.59120'), ('McCaskill', 84, '33.91760', '-93.64110'), ('McNab', 37, '33.66070', '-93.83220'), ('Oakhaven', 54, '33.72910', '-93.62000'), ('Ozan', 81, '33.84730', '-93.71940'), ('Patmos', 61, '33.51190', '-93.56670'), ('Perrytown', 255, '33.69650', '-93.53260'), ('Washington', 148, '33.77310', '-93.68300')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC059': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Friendship', 206, '34.22380', '-93.00300'), ('Malvern', 9021, '34.37110', '-92.81560'), ('Perla', 115, '34.36440', '-92.77860'), ('Rockport', 792, '34.39190', '-92.81630')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARC061': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Dierks', 1230, '34.12060', '-94.01880'), ('Mineral Springs', 1264, '33.87760', '-93.92000'), ('Nashville', 4878, '33.94090', '-93.85160'), ('Tollette', 324, '33.81800', '-93.89610')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC063': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Batesville', 9445, '35.76820', '-91.62230'), ('Cushman', 461, '35.86360', '-91.77860'), ('Magness', 191, '35.70190', '-91.48230'), ('Moorefield', 160, '35.76810', '-91.57100'), ('Newark', 1219, '35.70530', '-91.44290'), ('Oil Trough', 218, '35.62950', '-91.46120'), ('Pleasant Plains', 267, '35.55060', '-91.62700'), ('Sulphur Rock', 421, '35.75100', '-91.49930')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC065': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Calico Rock', 991, '36.12830', '-92.13110'), ('Franklin', 184, '36.17140', '-91.77230'), ('Guion', 90, '35.92910', '-91.94010'), ('Horseshoe Bend', 2278, '36.22330', '-91.74100'), ('Melbourne', 1673, '36.06230', '-91.89870'), ('Mount Pleasant', 401, '35.98240', '-91.77770'), ('Oxford', 642, '36.20730', '-91.91940'), ('Pineville', 246, '36.15770', '-92.10390')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC067': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Amagon', 95, '35.56240', '-91.11060'), ('Beedeville', 105, '35.42860', '-91.10890'), ('Campbell Station', 228, '35.66950', '-91.25440'), ('Diaz', 1284, '35.64790', '-91.25990'), ('Grubbs', 438, '35.65270', '-91.07470'), ('Jacksonport', 235, '35.64120', '-91.30780'), ('Newport', 7811, '35.62550', '-91.23520'), ('Swifton', 871, '35.82420', '-91.12890'), ('Tuckerman', 1757, '35.72790', '-91.20060'), ('Tupelo', 177, '35.39150', '-91.22990'), ('Weldon', 100, '35.44750', '-91.23140')], 'partOfState': 'eastern', 'wfo': 'LZK'}, +'ARC069': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Altheimer', 1192, '34.31890', '-91.84620'), ('Pine Bluff', 55085, '34.21340', '-92.01860'), ('Redfield', 1157, '34.44190', '-92.18390'), ('Sherrill', 126, '34.38470', '-91.95070'), ('Wabbaseka', 323, '34.36030', '-91.79270'), ('White Hall', 4732, '34.27560', '-92.09780')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARC071': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Clarksville', 7719, '35.45760', '-93.47240'), ('Coal Hill', 1001, '35.43700', '-93.66760'), ('Hartman', 596, '35.43450', '-93.61850'), ('Knoxville', 511, '35.37780', '-93.36480'), ('Lamar', 1415, '35.43920', '-93.38780')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARC073': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bradley', 563, '33.09990', '-93.65690'), ('Buckner', 396, '33.35720', '-93.43540'), ('Lewisville', 1285, '33.36300', '-93.57660'), ('Stamps', 2131, '33.35870', '-93.49570')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC075': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alicia', 145, '35.89440', '-91.08300'), ('Annieville', 684, '36.15000', '-91.23330'), ('Black Rock', 717, '36.10640', '-91.10860'), ('College City', 269, '36.12570', '-90.94000'), ('Hoxie', 2817, '36.04370', '-90.97750'), ('Imboden', 684, '36.20170', '-91.17980'), ('Lynn', 315, '36.00660', '-91.25200'), ('Minturn', 114, '35.97500', '-91.02750'), ('Portia', 483, '36.08530', '-91.07130'), ('Powhatan', 50, '36.08190', '-91.11890'), ('Ravenden', 511, '36.23620', '-91.25040'), ('Sedgwick', 112, '35.97850', '-90.86320'), ('Smithville', 73, '36.08000', '-91.30280'), ('Strawberry', 283, '35.96560', '-91.32140'), ('Walnut Ridge', 4925, '36.06980', '-90.95830')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC077': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Aubrey', 221, '34.71980', '-90.89780'), ('Brickeys', 1867, '34.85000', '-90.58330'), ('Garret Grove', 241, '34.80000', '-91.08330'), ('Haynes', 214, '34.88980', '-90.79240'), ('Lagrange', 122, '34.65550', '-90.73370'), ('Marianna', 5181, '34.77460', '-90.76640'), ('Moro', 241, '34.79250', '-90.98930'), ('New Salem', 241, '34.88330', '-91.00000'), ('Rondo', 237, '34.65740', '-90.82020')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC079': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Gould', 1305, '33.98540', '-91.56270'), ('Grady', 523, '34.07870', '-91.69830'), ('Star City', 2471, '33.94100', '-91.84440')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARC081': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Ashdown', 4781, '33.67440', '-94.12600'), ('Foreman', 1125, '33.71730', '-94.39750'), ('Ogden', 214, '33.58480', '-94.04450'), ('Wilton', 439, '33.73880', '-94.14750'), ('Winthrop', 186, '33.83120', '-94.35340')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC083': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Blue Mountain', 132, '35.13170', '-93.71530'), ('Booneville', 4117, '35.13940', '-93.91850'), ('Caulksville', 233, '35.30170', '-93.86850'), ('Magazine', 915, '35.15270', '-93.80630'), ('Morrison Bluff', 74, '35.38220', '-93.52740'), ('Paris', 3707, '35.28890', '-93.72460'), ('Ratcliff', 191, '35.30800', '-93.88820'), ('Scranton', 222, '35.36030', '-93.53850'), ('Subiaco', 439, '35.29750', '-93.63920')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARC085': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Allport', 127, '34.53950', '-91.78480'), ('Austin', 605, '34.99800', '-91.98180'), ('Cabot', 15261, '34.96820', '-92.02200'), ('Carlisle', 2304, '34.78610', '-91.74650'), ('Coy', 116, '34.54180', '-91.86960'), ('England', 2972, '34.54490', '-91.96790'), ('Humnoke', 280, '34.54210', '-91.75880'), ('Keo', 235, '34.61310', '-92.01110'), ('Lonoke', 4287, '34.78600', '-91.89960'), ('Ward', 2580, '35.01890', '-91.95500')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC087': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alabam', 0, '36.15250', '-93.68110'), ('Aurora', 0, '35.99720', '-93.70250'), ('Best', 0, '36.23000', '-93.88000'), ('Boston', 0, '35.84060', '-93.60110'), ('Brashears', 0, '35.81170', '-93.79560'), ('Clifty', 0, '36.23720', '-93.79610'), ('Combs', 0, '35.82560', '-93.83640'), ('Crosses', 0, '35.87420', '-93.91110'), ('Delaney', 0, '35.85220', '-93.90000'), ('Dutton', 0, '35.81670', '-93.69360'), ('Forum', 0, '36.18170', '-93.71470'), ('Georgetown', 126, '35.99560', '-93.83110'), ('Harmony', 0, '36.10810', '-93.71220'), ('Hindsville', 75, '36.14420', '-93.86190'), ('Huntsville', 1931, '36.08610', '-93.74110'), ('Japton', 0, '35.96190', '-93.80420'), ('Kingston', 0, '36.05060', '-93.51830'), ('Marble', 0, '36.13970', '-93.58720'), ('Patrick', 0, '35.84310', '-93.88360'), ('Pettigrew', 0, '35.81780', '-93.64830'), ('Red Star', 0, '35.86670', '-93.53060'), ('Rockhouse', 0, '36.28190', '-93.67280'), ('Saint Paul', 163, '35.82000', '-93.77000'), ('Weathers', 0, '35.95940', '-93.52030'), ('Wesley', 0, '36.02720', '-93.92000'), ('Witter', 0, '35.93750', '-93.68330')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARC089': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bull Shoals', 2000, '36.37600', '-92.58840'), ('Flippin', 1357, '36.27700', '-92.59210'), ('Pyatt', 253, '36.25130', '-92.84440'), ('Summit', 586, '36.25010', '-92.68740'), ('Yellville', 1312, '36.22870', '-92.68590')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC091': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Fouke', 814, '33.26080', '-93.88640'), ('Garland', 352, '33.35980', '-93.71280'), ('Texarkana', 26448, '33.45020', '-94.01580')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC093': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bassett', 168, '35.53610', '-90.13090'), ('Birdsong', 40, '35.45900', '-90.26050'), ('Blytheville', 18272, '35.93430', '-89.92480'), ('Burdette', 129, '35.81490', '-89.94590'), ('Dell', 251, '35.85520', '-90.03340'), ('Dyess', 515, '35.58940', '-90.21310'), ('Gosnell', 3968, '35.96110', '-89.97240'), ('Joiner', 540, '35.50830', '-90.14970'), ('Keiser', 808, '35.67450', '-90.09480'), ('Leachville', 1981, '35.92150', '-90.25620'), ('Luxora', 1317, '35.75770', '-89.93020'), ('Manila', 3055, '35.88360', '-90.16150'), ('Marie', 108, '35.61330', '-90.08170'), ('Osceola', 8875, '35.70130', '-89.99450'), ('Three Way', 1349, '35.70000', '-90.25000'), ('Victoria', 59, '35.75810', '-90.06070'), ('Wilson', 939, '35.56620', '-90.04190')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC095': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Brinkley', 3940, '34.88430', '-91.18900'), ('Clarendon', 1960, '34.69550', '-91.30580'), ('Fargo', 118, '34.95500', '-91.17710'), ('Holly Grove', 722, '34.59620', '-91.20070'), ('Roe', 124, '34.63090', '-91.38570')], 'partOfState': 'eastern', 'wfo': 'LZK'}, +'ARC097': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Black Springs', 114, '34.46150', '-93.71350'), ('Mount Ida', 981, '34.55180', '-93.63110'), ('Norman', 423, '34.45670', '-93.67780'), ('Oden', 220, '34.62020', '-93.78520')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARC099': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bluff City', 158, '33.71720', '-93.13310'), ('Bodcaw', 154, '33.55660', '-93.40110'), ('Cale', 75, '33.62790', '-93.23310'), ('Emmet', 506, '33.72210', '-93.46620'), ('Prescott', 3686, '33.80070', '-93.38800'), ('Rosston', 265, '33.58690', '-93.27600'), ('Willisville', 188, '33.51850', '-93.29480')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC101': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arbaugh', 0, '35.78330', '-93.51670'), ('Jasper', 498, '36.00610', '-93.18830'), ('Western Grove', 407, '36.10110', '-92.95390')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC103': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bearden', 1125, '33.72750', '-92.61630'), ('Camden', 13154, '33.56670', '-92.84570'), ('Chidester', 335, '33.69990', '-93.01870'), ('East Camden', 902, '33.60850', '-92.74240'), ('Louann', 195, '33.39160', '-92.79270'), ('Reader', 82, '33.75180', '-93.10120'), ('Stephens', 1152, '33.42010', '-93.06740')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARC105': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Adona', 187, '35.04000', '-92.89850'), ('Bigelow', 329, '34.99900', '-92.63100'), ('Casa', 209, '35.02580', '-93.04430'), ('Fourche', 59, '34.99310', '-92.61880'), ('Houston', 159, '35.03490', '-92.69410'), ('Perry', 314, '35.04490', '-92.79380'), ('Perryville', 1458, '35.00840', '-92.80350')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC107': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Crumrod', 865, '34.15000', '-90.98330'), ('Elaine', 865, '34.30830', '-90.85410'), ('Helena', 6323, '34.52630', '-90.60470'), ('Lake View', 531, '34.42310', '-90.81030'), ('Lexa', 331, '34.59820', '-90.75260'), ('Marvell', 1395, '34.55600', '-90.91450'), ('Watkins Corner', 1395, '34.46670', '-90.95000'), ('West Helena', 8689, '34.54600', '-90.64650')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC109': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Antoine', 156, '34.03400', '-93.42110'), ('Daisy', 118, '34.23310', '-93.74190'), ('Delight', 311, '34.02940', '-93.50580'), ('Glenwood', 1751, '34.33110', '-93.54970'), ('Murfreesboro', 1764, '34.06300', '-93.69110')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARC111': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Fisher', 265, '35.49150', '-90.97220'), ('Greenfield', 2192, '35.68330', '-90.71670'), ('Harrisburg', 2192, '35.56030', '-90.72110'), ('Lepanto', 2133, '35.60710', '-90.33350'), ('Marked Tree', 2800, '35.53000', '-90.41750'), ('Trumann', 6889, '35.67470', '-90.51950'), ('Tyronza', 918, '35.49030', '-90.35890'), ('Waldenburg', 80, '35.56490', '-90.93480'), ('Weiner', 760, '35.61920', '-90.90200')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC113': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Cove', 383, '34.43500', '-94.40920'), ('Grannis', 575, '34.24010', '-94.32030'), ('Hatfield', 402, '34.48710', '-94.37870'), ('Mena', 5637, '34.58040', '-94.23670'), ('Vandervoort', 120, '34.37960', '-94.36450'), ('Wickes', 675, '34.29970', '-94.33520')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARC115': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Atkins', 2878, '35.24260', '-92.94560'), ('Dover', 1329, '35.40220', '-93.11240'), ('Hector', 506, '35.46570', '-92.97530'), ('London', 925, '35.32820', '-93.24010'), ('Pottsville', 1271, '35.23840', '-93.05840'), ('Russellville', 23682, '35.27180', '-93.14080')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC117': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Des Arc', 1933, '34.97570', '-91.50520'), ('De Valls Bluff', 783, '34.78570', '-91.46080'), ('Fredonia (Biscoe)', 476, '34.81860', '-91.40910'), ('Hazen', 1637, '34.78930', '-91.57370'), ('Ulm', 205, '34.57600', '-91.46130')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC119': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alexander', 614, '34.63030', '-92.44280'), ('Cammack Village', 831, '34.77990', '-92.34680'), ('Gibson', 4678, '34.89540', '-92.22710'), ('Gravel Ridge', 3232, '34.87140', '-92.18770'), ('Jacksonville', 29916, '34.86980', '-92.12800'), ('Little Rock', 183133, '34.72240', '-92.35410'), ('Maumelle', 10557, '34.85250', '-92.41050'), ('North Little Rock', 60433, '34.78840', '-92.25540'), ('Parkers-Iron Spring', 3499, '34.60520', '-92.32220'), ('Sherwood', 21511, '34.83200', '-92.20750'), ('Wrightsville', 1368, '34.61400', '-92.21990')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC121': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Attica', 6518, '36.35000', '-91.00000'), ('Biggers', 355, '36.33200', '-90.80590'), ('Dalton', 137, '36.41670', '-91.15000'), ('Maynard', 381, '36.42180', '-90.90190'), ("O'kean", 201, '36.16780', '-90.81720'), ('Pocahontas', 6518, '36.26350', '-90.96860'), ('Ravenden Springs', 137, '36.31460', '-91.22400'), ('Reyno', 484, '36.36080', '-90.75790')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC123': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Caldwell', 465, '35.07930', '-90.81510'), ('Colt', 368, '35.13250', '-90.81230'), ('Forrest City', 14774, '35.01440', '-90.78530'), ('Hughes', 1867, '34.94850', '-90.47130'), ('Madison', 987, '35.01940', '-90.73050'), ('New Home', 335, '35.03330', '-90.56670'), ('Palestine', 741, '34.97030', '-90.90500'), ('Wheatley', 372, '34.91880', '-91.10730'), ('Widener', 335, '35.02200', '-90.68240')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARC125': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bauxite', 432, '34.55690', '-92.52600'), ('Benton', 21906, '34.56920', '-92.57730'), ('Bryant', 9764, '34.61240', '-92.49200'), ('Haskell', 2645, '34.50550', '-92.63660'), ('Salem', 2789, '34.62970', '-92.55550'), ('Shannon Hills', 2005, '34.62060', '-92.40850'), ('Traskwood', 548, '34.45190', '-92.66670')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC127': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Waldron', 3508, '34.89970', '-94.09360')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARC129': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Gilbert', 33, '35.99020', '-92.71820'), ('Leslie', 482, '35.82940', '-92.55590'), ('Marshall', 1313, '35.90990', '-92.63620'), ('Pindall', 95, '36.05830', '-92.86530')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC131': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arkola', 0, '35.08470', '-94.30890'), ('Barling', 4176, '35.32560', '-94.30140'), ('Bloomer', 0, '35.29390', '-94.13860'), ('Bonanza', 514, '35.23920', '-94.42580'), ('Burnville', 0, '35.18860', '-94.18890'), ('Central City', 531, '35.31920', '-94.25190'), ('Crossroads', 0, '35.11190', '-94.19810'), ('Dayton', 0, '35.11420', '-94.22640'), ('Excelsior', 0, '35.20000', '-94.31420'), ('Fort Smith', 80268, '35.38580', '-94.39830'), ('Greenwood', 7112, '35.21560', '-94.25560'), ('Hackett', 694, '35.19030', '-94.41080'), ('Hartford', 772, '35.02280', '-94.38110'), ('Huntington', 688, '35.08220', '-94.26310'), ('Jenny Lind', 0, '35.25030', '-94.31830'), ('Jenson', 0, '35.19720', '-94.43890'), ('Lavaca', 1825, '35.33610', '-94.17310'), ('Liberty', 1097, '35.02750', '-94.23080'), ('Mansfield', 1097, '35.05940', '-94.25250'), ('Midland', 253, '35.09310', '-94.35310'), ('Mill Creek', 0, '35.33920', '-94.42280'), ('Milltown', 0, '35.15690', '-94.14940'), ('Patterson', 467, '34.99190', '-94.36080'), ('Rye Hill', 0, '35.26670', '-94.36670'), ('Ursula', 2965, '35.32390', '-94.09280'), ('Washburn', 0, '35.16830', '-94.09330'), ('Witcherville', 0, '35.13750', '-94.26420')], 'partOfState': 'west central', 'wfo': 'TSA'}, +'ARC133': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Ben Lomond', 126, '33.83440', '-94.11500'), ('De Queen', 5765, '34.04270', '-94.34180'), ('Gillham', 188, '34.16790', '-94.31350'), ('Horatio', 997, '33.93980', '-94.35510'), ('Lockesburg', 711, '33.97090', '-94.17310')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARC135': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Ash Flat', 977, '36.22580', '-91.60650'), ('Cave City', 1946, '35.94670', '-91.54780'), ('Evening Shade', 465, '36.07040', '-91.62130'), ('Hardy', 578, '36.32150', '-91.48040'), ('Sidney', 275, '36.00430', '-91.65900'), ('Williford', 63, '36.25140', '-91.36070')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC137': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Fifty-Six', 163, '35.96040', '-92.22990'), ('Mountain View', 2876, '35.87000', '-92.11110')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC139': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Calion', 516, '33.32880', '-92.53840'), ('El Dorado', 21530, '33.21900', '-92.66280'), ('Felsenthal', 152, '33.05790', '-92.15260'), ('Huttig', 731, '33.04130', '-92.18220'), ('Junction City', 721, '33.02410', '-92.72360'), ('Norphlet', 822, '33.31960', '-92.66320'), ('Smackover', 2005, '33.36460', '-92.73080'), ('Strong', 651, '33.10800', '-92.35940')], 'partOfState': 'south central', 'wfo': 'SHV'}, +'ARC141': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Clinton', 2283, '35.58110', '-92.45240'), ('Fairfield Bay', 2460, '35.60510', '-92.26980'), ('Shirley', 337, '35.64370', '-92.31340')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARC143': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arnett', 0, '35.89500', '-94.03940'), ('Blackburn', 0, '35.81640', '-94.21940'), ('Black Oak', 286, '35.98330', '-94.07940'), ('Brentwood', 0, '35.86000', '-94.10690'), ('Canehill', 0, '35.90860', '-94.39640'), ('Cincinnati', 0, '36.03720', '-94.51080'), ('Clyde', 0, '35.89140', '-94.40640'), ('Durham', 0, '35.94940', '-93.98030'), ('Elkins', 1251, '36.00140', '-94.00810'), ('Elm Springs', 1044, '36.20610', '-94.23420'), ('Farmington', 3605, '36.04190', '-94.24690'), ('Fayetteville', 58047, '36.06250', '-94.15720'), ('Goshen', 752, '36.10110', '-93.99110'), ('Greenland', 907, '35.99420', '-94.17500'), ('Harmon', 0, '36.15360', '-94.27690'), ('Hicks', 0, '35.93890', '-94.04810'), ('Hogeye', 0, '35.92030', '-94.26750'), ('Johnson', 2319, '36.13280', '-94.16530'), ('Lincoln', 1752, '35.94940', '-94.42330'), ('Mayfield', 0, '36.13360', '-93.94390'), ('Morrow', 0, '35.85830', '-94.43720'), ('Oak Grove', 1044, '36.18970', '-94.18690'), ('Odell', 0, '35.77250', '-94.41810'), ('Prairie Grove', 2540, '35.97580', '-94.31750'), ('Rhea', 0, '36.01420', '-94.40280'), ('Savoy', 0, '36.10560', '-94.33250'), ('Shady Grove', 2319, '36.14560', '-94.14390'), ('Sonora', 0, '36.16530', '-94.04470'), ('Springdale', 45798, '36.18670', '-94.12860'), ('Strickler', 0, '35.83360', '-94.31310'), ('Sulphur City', 0, '35.96500', '-94.05030'), ('Summers', 0, '35.98110', '-94.49140'), ('Tontitown', 942, '36.17780', '-94.23330'), ('Tuttle', 0, '36.03360', '-93.97220'), ('Viney Grove', 0, '36.00830', '-94.33000'), ('Walnut Grove', 3605, '36.00360', '-94.26690'), ('Wedington', 0, '36.08330', '-94.41670'), ('West Fork', 2042, '35.92420', '-94.18830'), ('Wheeler', 0, '36.11420', '-94.25890'), ('Winslow', 399, '35.80080', '-94.13470'), ('Woolsey', 0, '35.88530', '-94.16830'), ('Wyola', 0, '35.85860', '-94.05830')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARC145': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bald Knob', 3210, '35.30820', '-91.57250'), ('Beebe', 4930, '35.07230', '-91.89390'), ('Bradford', 800, '35.42310', '-91.45660'), ('Garner', 284, '35.13950', '-91.78010'), ('Georgetown', 126, '35.12630', '-91.45320'), ('Griffithville', 262, '35.12480', '-91.64560'), ('Higginson', 378, '35.19580', '-91.71150'), ('Judsonia', 1982, '35.27590', '-91.64020'), ('Kensett', 1791, '35.23550', '-91.67010'), ('Letona', 201, '35.36310', '-91.83020'), ('McRae', 661, '35.11420', '-91.82260'), ('Pangburn', 654, '35.42620', '-91.83870'), ('Rose Bud', 429, '35.33090', '-92.07870'), ('Russell', 228, '35.36210', '-91.51040'), ('Searcy', 18928, '35.24290', '-91.73080'), ('West Point', 164, '35.20430', '-91.61030')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARC147': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Augusta', 2665, '35.28550', '-91.36050'), ('Cotton Plant', 960, '35.00690', '-91.25150'), ('Hunter', 152, '35.05340', '-91.12270'), ('McCrory', 1850, '35.25690', '-91.19770'), ('Patterson', 467, '35.25760', '-91.23660')], 'partOfState': 'eastern', 'wfo': 'LZK'}, +'ARC149': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Belleville', 371, '35.09070', '-93.44530'), ('Corinth', 65, '35.06820', '-93.42050'), ('Danville', 2392, '35.05210', '-93.39030'), ('Dardanelle', 4228, '35.22640', '-93.16560'), ('Havana', 392, '35.11020', '-93.52790'), ('Ola', 1204, '35.03100', '-93.22410'), ('Plainview', 755, '34.98950', '-93.29760')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ASC010': {'fullStateName': 'American Samoa', 'state': 'AS', 'cities': [('Afono', 530, '-14.26220', '-170.64610'), ('Amaua', 102, '-14.27650', '-170.62370'), ('Aoa', 507, '-14.26820', '-170.58520'), ('Aua', 2193, '-14.28050', '-170.66390'), ("Faga'alu", 1006, '-14.29430', '-170.68060'), ('Faganeanea', 183, '-14.30560', '-170.69310'), ('Fagatogo', 2096, '-14.28740', '-170.69060'), ('Pagai', 122, '-14.27400', '-170.60340'), ('Tula', 0, '-14.25806', '-170.56417'), ('Utulei', 807, '-14.28810', '-170.67850')], 'partOfState': '', 'wfo': 'PPG'}, +'ASC020': {'fullStateName': 'American Samoa', 'state': 'AS', 'cities': [('Fitiuta', 0, '-14.22222', '-169.42361'), ('Ofu', 0, '-14.17528', '-169.67605'), ('Tau', 0, '-14.23361', '-169.51444'), ('Tay', 0, '-14.23361', '-169.51444')], 'partOfState': '', 'wfo': 'PPG'}, +'ASC040': {'fullStateName': 'American Samoa', 'state': 'AS', 'cities': [], 'partOfState': '', 'wfo': 'PPG'}, +'ASC050': {'fullStateName': 'American Samoa', 'state': 'AS', 'cities': [('Aasu', 364, '-14.30940', '-170.75670'), ('Aoloau', 778, '-14.29330', '-170.78140'), ("Fagali'i", 259, '-14.31010', '-170.82680'), ('Faleniu', 2056, '-14.33110', '-170.74350'), ('Leone', 3658, '-14.34030', '-170.78370'), ('Malaeimi', 1067, '-14.31470', '-170.73720'), ('Malaeloa/Aitulagi', 597, '-14.33700', '-170.76560'), ('Malaeloa/Ituau', 627, '-14.34670', '-170.76890'), ('Maloata', 17, '-14.31140', '-170.81640'), ('Mapusagafou', 1642, '-14.32460', '-170.75060'), ('Mesepa', 481, '-14.32600', '-170.74100'), ('Pago Pago', 0, '-14.33300', '-170.71700'), ("Pava'ia'i", 2200, '-14.33880', '-170.75310'), ('Tafuna', 0, '-14.33583', '-170.72000'), ('Taputimu', 640, '-14.35760', '-170.77010')], 'partOfState': '', 'wfo': 'PPG'}, +'AZC001': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Alpine', 4033, '33.84650', '-109.13844'), ('Chambers', 1505, '35.18921', '-109.43312'), ('Chinle', 5366, '36.15190', '-109.58000'), ('Concho', 3269, '34.47484', '-109.60690'), ('Cornfields', 1505, '35.65189', '-109.67858'), ('Dennehotso', 734, '36.82150', '-109.88380'), ('Eagar', 4033, '34.10490', '-109.29210'), ('Fort Defiance', 4061, '35.74370', '-109.06660'), ('Ganado', 1505, '35.70760', '-109.55200'), ('Greer', 4033, '34.01467', '-109.45689'), ('Houck', 1087, '35.28383', '-109.20239'), ('Hunt', 3269, '34.60929', '-109.63456'), ('Klagetoh', 1505, '35.50908', '-109.52475'), ('Lukachukai', 1565, '36.40010', '-109.25690'), ('Lupton', 1295, '35.35560', '-109.04829'), ('Lyman Lake State Park', 3269, '34.36050', '-109.38039'), ('Many Farms', 1548, '36.35030', '-109.61850'), ('McNary', 349, '34.09580', '-109.85050'), ('Mexican Water', 0, '36.96808', '-109.63615'), ('Nazlini', 397, '35.90127', '-109.44868'), ('Nutrioso', 4033, '33.95376', '-109.20684'), ('Petrified Forest National Park', 4917, '35.06737', '-109.77985'), ('Pine Springs', 1295, '35.40633', '-109.28102'), ('Red Mesa', 237, '36.96002', '-109.35625'), ('Red Rock', 626, '36.60838', '-109.05427'), ('Rock Point', 724, '36.71961', '-109.62629'), ('Rough Rock', 469, '36.40950', '-109.86750'), ('Round Rock', 601, '36.51090', '-109.47181'), ('Salina', 5366, '36.02546', '-109.87030'), ('Sanders', 5857, '35.21548', '-109.33239'), ('Sawmill', 612, '35.89170', '-109.15350'), ('Springerville', 1972, '34.13220', '-109.28090'), ('Steamboat Canyon', 581, '35.74938', '-109.85915'), ('St. Johns', 3269, '34.50990', '-109.37680'), ('St. Michaels', 1295, '35.66170', '-109.09360'), ('Sunrise Springs', 581, '35.60280', '-109.74242'), ('Teec Nos Pos', 799, '36.92910', '-109.08210'), ('Three Forks', 4033, '33.85438', '-109.31159'), ('Totacon', 0, '36.84980', '-109.42666'), ('Tsaile', 1043, '36.30370', '-109.21470'), ('Twin Falls', 799, '36.86591', '-109.08827'), ('Upper Wheatfields', 1043, '36.22309', '-109.10030'), ('Vernon', 349, '34.25466', '-109.69178'), ('Wheatfields', 1043, '36.23877', '-109.12788'), ('Wide Ruins', 1505, '35.42031', '-109.49295'), ('Window Rock', 3059, '35.67090', '-109.06440')], 'partOfState': 'northeast', 'wfo': 'FGZ'}, +'AZC003': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Benson', 4711, '31.96220', '-110.30310'), ('Bisbee', 6090, '31.40460', '-109.91750'), ('Douglas', 14312, '31.34270', '-109.52820'), ('Huachuca City', 1751, '31.63210', '-110.34080'), ('Pirtleville', 1550, '31.36170', '-109.56690'), ('Sierra Vista', 37775, '31.56510', '-110.32250'), ('St. David', 1744, '31.90010', '-110.22940'), ('Tombstone', 1504, '31.71730', '-110.06220'), ('Willcox', 3733, '32.25070', '-109.83520')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZC005': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Angell', 52894, '35.19736', '-111.30345'), ('Big Five', 6809, '36.89192', '-111.44362'), ('Bitter Springs', 547, '36.63718', '-111.65116'), ('Bright Angel Point', 1460, '36.19845', '-112.05262'), ('Cameron', 978, '35.84830', '-111.43190'), ('Cedar Ridge', 8225, '36.39231', '-111.52428'), ('Clints Well', 13620, '34.55486', '-111.31176'), ('Cosnino', 52894, '35.20149', '-111.47713'), ('Desert View At Gra', 1460, '36.04295', '-111.82546'), ('Doney Park', 52894, '35.27110', '-111.51195'), ('Flagstaff', 52894, '35.18900', '-111.61980'), ('Forest Lakes', 1581, '34.33720', '-110.80430'), ('Fort Valley', 52894, '35.26314', '-111.72799'), ('Fraziers Well', 600, '35.78146', '-113.07097'), ('Fredonia', 1036, '36.96480', '-112.51880'), ('Grand Canyon Village', 1460, '36.04640', '-112.15350'), ('Gray Mountain', 978, '35.74646', '-111.47160'), ('Happy Jack', 5245, '34.74263', '-111.40526'), ('Hermits Rest At Gr', 1460, '36.06220', '-112.21015'), ('House Rock', 0, '36.73151', '-112.04268'), ('Jacob Lake', 1036, '36.71349', '-112.21612'), ('Kachina Village', 2664, '35.09700', '-111.69190'), ('Kaibito', 1607, '36.58900', '-111.11030'), ('Le Chee', 6809, '36.85869', '-111.44011'), ('Lees Ferry', 6809, '36.86729', '-111.58661'), ('Leupp', 970, '35.28539', '-110.96149'), ('Marble Canyon', 6809, '36.81655', '-111.63362'), ('Meteor Crater', 970, '35.02704', '-111.02222'), ('Moenave', 8225, '36.13791', '-111.34170'), ('Moenkopi', 901, '36.11090', '-111.22220'), ('Mountainaire', 1014, '35.08323', '-111.66270'), ('Munds Park', 1250, '34.94103', '-111.64153'), ('Page', 6809, '36.90430', '-111.45780'), ('Parks', 1137, '35.26318', '-111.94954'), ('Rimmy Jims', 970, '35.11064', '-111.02943'), ('South Rim Visitors', 1460, '36.05700', '-112.12810'), ('Sunrise', 970, '35.30049', '-110.98789'), ('Supai', 0, '36.22420', '-112.69320'), ('The Gap', 8225, '36.30314', '-111.46046'), ('Tuba City', 8225, '36.12500', '-111.24250'), ('Tusayan', 562, '35.97898', '-112.12295'), ('Twin Arrows', 970, '35.16090', '-111.26971'), ('Two Guns', 970, '35.11803', '-111.08982'), ('Valle', 2842, '35.65176', '-112.13788'), ('Wahweep', 6809, '36.99362', '-111.49452'), ('Williams', 2842, '35.26460', '-112.17280'), ('Winona', 52894, '35.20190', '-111.40681'), ('Wupatki National Monument', 978, '35.52170', '-111.37058')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZC007': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Canyon Day', 1092, '33.78140', '-110.02620'), ('Carrizo', 1331, '33.99385', '-110.28519'), ('Claypool', 1794, '33.43300', '-110.83300'), ('Globe', 7486, '33.38280', '-110.75430'), ('Hayden', 892, '32.99990', '-110.78100'), ('Jakes Corner', 13620, '34.01008', '-111.31897'), ('Kohls Ranch', 13620, '34.32365', '-111.10196'), ('Miami', 1936, '33.39430', '-110.87210'), ('Payson', 13620, '34.24260', '-111.32700'), ('Peridot', 1266, '33.30270', '-110.45430'), ('Pine', 1931, '34.38660', '-111.45822'), ('Punkin Center', 13620, '33.85000', '-111.33000'), ('Roosevelt', 1936, '33.67000', '-111.13000'), ('Rye', 13620, '34.10890', '-111.35345'), ('San Carlos', 3716, '33.34860', '-110.46510'), ('Star Valley', 13620, '34.25473', '-111.25447'), ('Strawberry', 1028, '34.40743', '-111.49093'), ('Tonto Village', 13620, '34.31586', '-111.13446'), ('Washington Park', 13620, '34.42242', '-111.27084'), ('Winkelman', 443, '32.98900', '-110.76960'), ('Young', 561, '34.10170', '-110.94659')], 'partOfState': 'east central', 'wfo': 'PSRFGZ'}, +'AZC009': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bylas', 1219, '33.13060', '-110.11010'), ('Pima', 1989, '32.88810', '-109.83330'), ('Safford', 9232, '32.83120', '-109.69810'), ('Thatcher', 4022, '32.83840', '-109.75900')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZC011': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Clifton', 2596, '33.02350', '-109.29050'), ('Duncan', 812, '32.73630', '-109.09180'), ('Morenci', 1879, '33.05300', '-109.32950')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZC012': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bouse', 615, '33.92500', '-114.00000'), ('Brenda', 3354, '33.69000', '-113.94000'), ('Cibola', 172, '33.35000', '-114.68000'), ('Ehrenberg', 1357, '33.62290', '-114.49390'), ('Harcuvar', 3354, '33.77000', '-113.65900'), ('Parker', 3140, '34.13000', '-114.28000'), ('Poston', 389, '33.95910', '-114.41520'), ('Quartzsite', 3354, '33.66700', '-114.21500'), ('Salome', 1690, '33.78000', '-113.62000'), ('Vicksburg', 3354, '33.75000', '-113.73000'), ('Vicksburg Junction', 3354, '33.73000', '-113.73000'), ('Wenden', 556, '33.82000', '-113.55000')], 'partOfState': 'west central', 'wfo': 'PSR'}, +'AZC013': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Aguila', 5082, '33.95000', '-113.17000'), ('Arlington', 6537, '33.33000', '-112.70000'), ('Avondale', 35883, '33.42010', '-112.35000'), ('Beardsley', 26344, '33.68000', '-112.39000'), ('Buckeye', 6537, '33.38000', '-112.60000'), ('Carefree', 2927, '33.82240', '-111.91840'), ('Cashion', 35883, '33.44000', '-112.32000'), ('Cave Creek', 3728, '33.82620', '-111.96520'), ('Chandler', 176581, '33.29500', '-111.86690'), ('Circle City', 30848, '33.81600', '-112.58300'), ('El Mirage', 7609, '33.59120', '-112.32400'), ('Fountain Hills', 20235, '33.60540', '-111.74110'), ('Gila Bend', 1980, '32.95150', '-112.68480'), ('Gilbert', 109697, '33.33200', '-111.76420'), ('Gladden', 5082, '33.90000', '-113.30000'), ('Glendale', 218812, '33.58410', '-112.20160'), ('Goodyear', 18911, '33.42000', '-112.40000'), ('Guadalupe', 5228, '33.36580', '-111.96170'), ('Hassayampa', 6537, '33.35000', '-112.72000'), ('Komatke', 1116, '33.30620', '-112.17810'), ('Laveen', 1116, '33.42000', '-112.13000'), ('Liberty', 18911, '33.38000', '-112.49000'), ('Litchfield Park', 3810, '33.50250', '-112.35880'), ('Luke AFB', 4371, '33.53310', '-112.37070'), ('Mesa', 396375, '33.41770', '-111.74030'), ('Morristown', 5082, '33.85000', '-112.62000'), ('New River', 10740, '33.92000', '-112.13000'), ('Palo Verde', 6537, '33.35000', '-112.64000'), ('Paradise Valley', 13664, '33.53930', '-111.95460'), ('Peoria', 108364, '33.68850', '-112.24450'), ('Perryville', 6537, '33.43000', '-112.50000'), ('Phoenix', 1321045, '33.54250', '-112.07140'), ('Queen Creek', 4316, '33.24140', '-111.64320'), ('Scottsdale', 202705, '33.68600', '-111.87050'), ('Sentinel', 1980, '32.88000', '-113.22000'), ('Sun City', 38309, '33.61630', '-112.28180'), ('Sun City West', 26344, '33.66900', '-112.36910'), ('Sunflower', 20235, '33.87000', '-111.47000'), ('Sun Lakes', 11936, '33.21690', '-111.87010'), ('Surprise', 30848, '33.65000', '-112.34000'), ('Tempe', 158625, '33.38840', '-111.93060'), ('Tolleson', 4974, '33.44880', '-112.25480'), ('Tonopah', 6537, '33.50000', '-112.93000'), ('Waddell', 7609, '33.59000', '-112.36000'), ('Wickenburg', 5082, '33.96660', '-112.75440'), ('Wintersburg', 6537, '33.42000', '-112.87000'), ('Wittmann', 30848, '33.78000', '-112.53000'), ('Youngtown', 3010, '33.58720', '-112.30300')], 'partOfState': 'south central', 'wfo': 'PSR'}, +'AZC015': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bullhead City', 33769, '35.15000', '-114.56000'), ('Chloride', 4515, '35.40000', '-114.18330'), ('Colorado City', 3334, '36.99160', '-112.98250'), ('Desert Hills', 2183, '34.55400', '-114.37170'), ('Dolan Springs', 1867, '35.60450', '-114.26650'), ('Golden Valley', 4515, '35.22320', '-114.22210'), ('Hualapai Peak', 20069, '35.07160', '-113.90000'), ('Kingman', 20069, '35.20700', '-114.03200'), ('Lake Havasu City', 41938, '34.45000', '-114.33330'), ('Littlefield', 396375, '36.89530', '-113.93450'), ('Meadview', 1867, '36.00000', '-114.07080'), ('Mohave Valley', 13694, '34.93320', '-114.58800'), ('Mt. Trumbull', 0, '36.40000', '-113.13330'), ('New Kingman-Butler', 14810, '35.26010', '-114.02980'), ('Oatman', 33769, '35.03330', '-114.38330'), ('Peach Springs', 600, '35.52740', '-113.42980'), ('Pipe Spring Nation', 1036, '36.86660', '-112.73330'), ('South Cove', 1867, '36.12080', '-114.08330'), ('Temple Bar', 1867, '36.03220', '-114.32000'), ('Topock', 5191, '34.71660', '-114.46660'), ('Tuweep', 0, '36.28330', '-113.06660'), ('Valentine', 600, '35.38330', '-113.66660'), ('Wikieup', 1578, '34.70000', '-113.61660'), ('Willow Valley', 585, '34.91200', '-114.60580'), ('Yucca', 20069, '34.86660', '-114.15000')], 'partOfState': 'northwest', 'wfo': 'VEF'}, +'AZC017': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Aripine', 1581, '34.40696', '-110.43454'), ('Castle Butte', 4917, '35.30670', '-110.34577'), ('Cedar Springs', 1108, '35.45502', '-110.36377'), ('Chilchinbito', 462, '36.52861', '-110.07864'), ('Cibecue', 1331, '34.02950', '-110.48220'), ('Clay Springs', 3176, '34.36114', '-110.29491'), ('Dilkon', 1265, '35.38498', '-110.32323'), ('East Fork', 880, '33.80640', '-109.93140'), ('Fort Apache', 1092, '33.79026', '-109.98163'), ('Greasewood', 581, '35.52800', '-109.86010'), ('Heber-Overgaard', 1581, '34.41400', '-110.56880'), ('Holbrook', 4917, '34.90167', '-110.16093'), ('Hotevilla', 869, '35.92380', '-110.65760'), ('Indian Wells', 581, '35.40739', '-110.08518'), ('Jadito', 260, '35.77379', '-110.13624'), ('Joseph City', 4917, '34.95661', '-110.32790'), ('Kayenta', 4922, '36.71800', '-110.25260'), ('Keams Canyon', 260, '35.81144', '-110.19403'), ('Kykotsmovi Village', 776, '35.87420', '-110.62270'), ('Linden', 7695, '34.28522', '-110.16187'), ('Navajo National Monument', 568, '36.76079', '-110.49675'), ('Pinedale', 3176, '34.30730', '-110.24932'), ('Pinetop-Lakeside', 3582, '34.14810', '-109.96640'), ('Pinon', 1190, '36.10070', '-110.22130'), ('Polacca', 1108, '35.83560', '-110.36560'), ('Seba Dalkai', 814, '35.50157', '-110.44849'), ('Second Mesa', 814, '35.81760', '-110.50360'), ('Shongopovi', 632, '35.81810', '-110.53400'), ('Shonto', 568, '36.58800', '-110.65420'), ('Show Low', 7695, '34.23730', '-110.04430'), ('Shumway', 3176, '34.40457', '-110.07875'), ('Snowflake', 4460, '34.52200', '-110.08420'), ('Taylor', 3176, '34.44990', '-110.11150'), ('Tsegi', 4922, '36.65082', '-110.42613'), ('White Cone', 581, '35.60536', '-110.06657'), ('Whiteriver', 5220, '33.83890', '-109.96160'), ('Winslow', 9520, '35.02780', '-110.70690'), ('Woodruff', 4917, '34.78148', '-110.04171')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZC019': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Ajo', 3705, '32.38720', '-112.86840'), ('Avra Valley', 5038, '32.43790', '-111.31470'), ('Catalina', 7025, '32.47680', '-110.90020'), ('Green Valley', 17283, '31.84850', '-111.00980'), ('Marana', 13556, '32.41440', '-111.17280'), ('Oro Valley', 29700, '32.42500', '-110.96470'), ('Picture Rocks', 8139, '32.34580', '-111.24570'), ('Pisinemo', 237, '32.03780', '-112.32030'), ('Santa Rosa', 438, '32.33480', '-112.04540'), ('Sells', 2799, '31.91850', '-111.87640'), ('Three Points', 5273, '32.06750', '-111.27840'), ('Tucson', 486699, '32.19580', '-110.89170')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZC021': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Ak-Chin Village', 669, '33.02830', '-112.08700'), ('Apache Junction', 31814, '33.40500', '-111.54700'), ('Arizona City', 4385, '32.75080', '-111.66980'), ('Cactus Forest', 17054, '32.99000', '-111.32000'), ('Casa Grande', 25224, '32.89230', '-111.73590'), ('Chuichu', 339, '32.74480', '-111.79720'), ('Coolidge', 7786, '32.98240', '-111.52760'), ('Dudleyville', 1323, '32.91430', '-110.73380'), ('Eloy', 10375, '32.74500', '-111.60650'), ('Florence', 17054, '33.03760', '-111.37390'), ('Florence Junction', 3254, '33.27000', '-111.33000'), ('Kearny', 2249, '33.05620', '-110.90600'), ('Mammoth', 1762, '32.72150', '-110.64350'), ('Oracle', 3563, '32.61880', '-110.78420'), ('Sacaton', 1584, '33.08210', '-111.74610'), ('San Manuel', 4375, '32.61400', '-110.63620'), ('Santan', 651, '33.14550', '-111.80150'), ('Superior', 3254, '33.28590', '-111.10950')], 'partOfState': 'southeast', 'wfo': 'PSRTWC'}, +'AZC023': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Nogales', 20878, '31.36370', '-110.93260'), ('Patagonia', 881, '31.54330', '-110.74890'), ('Rio Rico', 1407, '31.47980', '-110.97560')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZC025': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Ash Fork', 457, '35.22097', '-112.48698'), ('Bagdad', 1578, '34.57343', '-113.17705'), ('Big Park', 5245, '34.78020', '-111.76180'), ('Black Canyon City', 2697, '34.06250', '-112.10940'), ('Bridgeport', 10610, '34.72060', '-111.99109'), ('Bumble Bee', 2697, '34.20514', '-112.15151'), ('Camp Verde', 9451, '34.56970', '-111.85620'), ('Cherry', 10610, '34.59020', '-112.04060'), ('Chino Valley', 7835, '34.76320', '-112.45470'), ('Clarkdale', 3422, '34.75970', '-112.05650'), ('Congress', 1717, '34.16129', '-112.85109'), ('Cordes', 6295, '34.30462', '-112.16628'), ('Cordes Junction', 6295, '34.33220', '-112.12100'), ('Cornville', 3335, '34.72180', '-111.90780'), ('Cottonwood', 9179, '34.73450', '-112.02440'), ('Cottonwood-Verde Village', 10610, '34.71110', '-111.99440'), ('Crown King', 2697, '34.20691', '-112.33638'), ('Dewey-Humboldt', 6295, '34.53260', '-112.25180'), ('Iron Springs', 33938, '34.58307', '-112.57248'), ('Jerome', 329, '34.74670', '-112.10610'), ('Kirkland', 33938, '34.41928', '-112.71018'), ('Lake Montezuma', 3344, '34.63469', '-111.76997'), ('Mayer', 1408, '34.39791', '-112.23695'), ('McGuireville', 3344, '34.63717', '-111.81362'), ('Middle Verde', 9451, '34.62044', '-111.88849'), ('Page Springs', 3335, '34.76921', '-111.89141'), ('Paulden', 3420, '34.88628', '-112.46819'), ('Peeples Valley', 374, '34.27056', '-112.72735'), ('Poland Junction', 6295, '34.45408', '-112.26749'), ('Ponderosa Park', 33938, '34.47319', '-112.48714'), ('Prescott', 33938, '34.57600', '-112.44910'), ('Prescott Valley', 23535, '34.60820', '-112.32140'), ('Rimrock', 3344, '34.65140', '-111.74464'), ('Rock Springs', 2697, '34.05143', '-112.14650'), ('Sedona', 10192, '34.85930', '-111.79510'), ('Seligman', 456, '35.32938', '-112.87536'), ('Skull Valley', 33938, '34.49983', '-112.68355'), ('Village At Oak Cre', 5245, '34.77960', '-111.76293'), ('Wagoner', 5082, '34.21671', '-112.53356'), ('Walker', 33938, '34.45895', '-112.38033'), ('Walnut Grove', 33938, '34.28516', '-112.54748'), ('Wilhoit', 664, '34.42548', '-112.59458'), ('Yarnell', 645, '34.22315', '-112.74566'), ('Yava', 1578, '34.47288', '-112.89179')], 'partOfState': 'west central', 'wfo': 'FGZ'}, +'AZC027': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Dateland', 1829, '32.82000', '-113.53000'), ('Fortuna Foothills', 20478, '32.65770', '-114.41100'), ('Gadsden', 953, '32.55000', '-114.78000'), ('Ligurta', 20478, '32.67000', '-114.30000'), ('Mohawk', 1829, '32.73000', '-113.73000'), ('Palm Canyon', 3354, '33.31500', '-113.98250'), ('San Luis', 15322, '32.49250', '-114.77790'), ('Somerton', 7266, '32.59710', '-114.70950'), ('Tacna', 555, '32.70000', '-113.95000'), ('Wellton', 1829, '32.67290', '-114.13930'), ('Yuma', 77515, '32.67750', '-114.62020')], 'partOfState': 'southwest', 'wfo': 'PSR'}, +'CAC001': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Ashland', 20793, '37.69470', '-122.11540'), ('Berkeley', 102743, '37.86720', '-122.29730'), ('Castro Valley', 57292, '37.71090', '-122.06110'), ('Cherryland', 13837, '37.67930', '-122.10230'), ('Dublin', 29973, '37.71590', '-121.90990'), ('Fairview', 9470, '37.67860', '-122.04460'), ('Fremont', 203413, '37.52850', '-121.99710'), ('Hayward', 140030, '37.62770', '-122.10460'), ('Livermore', 73345, '37.69190', '-121.76370'), ('Newark', 42471, '37.51930', '-122.03050'), ('Oakland', 399484, '37.77150', '-122.22450'), ('Piedmont', 10952, '37.82290', '-122.22890'), ('Pleasanton', 63654, '37.67240', '-121.88910'), ('San Leandro', 79452, '37.70470', '-122.16080'), ('San Lorenzo', 21898, '37.67500', '-122.13010'), ('Union City', 66869, '37.60160', '-122.01610')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC003': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bear Valley', 4218, '38.46470', '-120.03890'), ('Carson Pass', 23609, '38.69390', '-119.98750'), ('Ebbetts Pass', 197, '38.54440', '-119.81080'), ('Grover Hot Springs', 197, '38.69600', '-119.83900'), ('Hermit Valley Basin', 197, '38.54330', '-119.88420'), ('Hope Valley', 23609, '38.78000', '-119.93000'), ('Indian Creek Reservoir', 197, '38.75000', '-119.77000'), ('Kirkwood', 23609, '38.70280', '-120.07170'), ('Kirkwood Meadows', 23609, '38.69220', '-120.07190'), ('Kirkwood Ski Area', 23609, '38.67830', '-120.04190'), ('Lake Alpine', 4218, '38.47170', '-120.00330'), ('Lookout Peak', 197, '38.51080', '-119.87190'), ('Markleeville', 197, '38.69200', '-119.77990'), ('Monitor Pass', 197, '38.68000', '-119.62000'), ('Paynesville', 7455, '38.81100', '-119.79700'), ('Upper Blue Lake', 23609, '38.62830', '-119.93940'), ('Woodfords', 7455, '38.78000', '-119.82000')], 'partOfState': 'northern', 'wfo': 'STOREV'}, +'CAC005': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Amador City', 196, '38.41850', '-120.82330'), ('Buena Vista', 7129, '38.29440', '-120.91220'), ('Camanche Village', 7129, '38.27000', '-120.97220'), ('Carbondale', 7129, '38.40890', '-121.00580'), ('Clinton', 3989, '38.37610', '-120.66720'), ('Cooks Station', 4728, '38.50140', '-120.45190'), ('Drytown', 196, '38.44110', '-120.85330'), ('Fiddletown', 980, '38.50390', '-120.75440'), ('Forest Home', 7129, '38.46500', '-120.96310'), ('Ione', 7129, '38.35960', '-120.94140'), ('Jackson', 3989, '38.35050', '-120.77350'), ('Kit Carson', 23609, '38.67080', '-120.11250'), ('Pine Grove', 3989, '38.41310', '-120.65780'), ('Pioneer', 3989, '38.43190', '-120.57080'), ('Plymouth', 980, '38.47840', '-120.84480'), ('Shriner Lake Campground', 4218, '38.53530', '-120.15940'), ('Sutter Creek', 2303, '38.39080', '-120.80350'), ('Volcano', 3989, '38.44310', '-120.62970')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAC007': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bangor', 2075, '39.38860', '-121.40420'), ('Big Bend', 1095, '39.69830', '-121.45970'), ('Biggs', 1793, '39.41390', '-121.70920'), ('Brush Creek Rs', 1095, '39.69050', '-121.33810'), ('Butte Meadows', 10569, '40.08140', '-121.55000'), ('Chico', 59954, '39.75380', '-121.80690'), ('Dayton', 5220, '39.64860', '-121.87110'), ('De Sabla Powerhous', 10569, '39.86970', '-121.63110'), ('Durham', 5220, '39.59950', '-121.82770'), ('Feather Falls', 1069, '39.59330', '-121.25530'), ('Forbestown', 1069, '39.51720', '-121.26610'), ('Forest Ranch', 10569, '39.88220', '-121.67170'), ('Gridley', 5382, '39.36440', '-121.69520'), ('Hurleton', 8680, '39.49750', '-121.38640'), ('Lovelock', 10569, '39.89140', '-121.57670'), ('Magalia', 10569, '39.82750', '-121.61080'), ('Mill Creek', 10569, '40.08140', '-121.52160'), ('Nord', 1903, '39.77970', '-121.95610'), ('Oroville', 13004, '39.50160', '-121.56590'), ('Oroville Dam', 8680, '39.53880', '-121.48440'), ('Palermo', 5720, '39.43670', '-121.53050'), ('Paradise', 26408, '39.75640', '-121.60430'), ('Pulga', 1095, '39.80310', '-121.44750'), ('Richardson Springs', 59954, '39.84000', '-121.77580'), ('Stirling City', 10569, '39.90770', '-121.52690'), ('Thermalito', 6045, '39.49110', '-121.60800'), ('Wyandotte', 5720, '39.45810', '-121.46660')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAC009': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Angels Camp', 2677, '38.07580', '-120.54790'), ('Arnold', 4218, '38.23220', '-120.36960'), ('Black Springs', 4218, '38.37660', '-120.19660'), ('Calaveras Big Tree', 4218, '38.27190', '-120.28670'), ('Campo Seco', 3989, '38.22720', '-120.85110'), ('Carson Hill', 2409, '38.02830', '-120.50550'), ('Copper Cove Village', 2363, '37.95970', '-120.63440'), ('Copperopolis', 2363, '37.98110', '-120.64080'), ('Glencoe', 2615, '38.35420', '-120.58390'), ('Hodson', 2409, '37.99670', '-120.68440'), ('Lily Gap', 4218, '38.43000', '-120.44920'), ('Milton', 2615, '38.03190', '-120.85110'), ('Mokelumne Hill', 3989, '38.30010', '-120.70530'), ('Murphys', 2061, '38.15200', '-120.46090'), ('Paloma', 3989, '38.25940', '-120.76220'), ('San Andreas', 2615, '38.18930', '-120.67460'), ('Tamarack', 4218, '38.43880', '-120.07500'), ('Telegraph City', 15503, '37.93440', '-120.73880'), ('Valley Springs', 2615, '38.19160', '-120.82810')], 'partOfState': 'northern', 'wfo': 'STOREV'}, +'CAC011': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Arbuckle', 2332, '39.01630', '-122.06060'), ('College City', 2332, '39.00580', '-122.00830'), ('Colusa', 5402, '39.20610', '-122.01130'), ('Colusa National Wildlife Refuge', 5402, '39.15750', '-122.04220'), ('Cortina Indian Ran', 3670, '39.01610', '-122.28670'), ('Delevan', 6220, '39.35420', '-122.19000'), ('East Park Reservoir', 6220, '39.35750', '-122.51470'), ('Fouts Springs', 2509, '39.35330', '-122.66390'), ('Grimes', 13142, '39.07440', '-122.42250'), ('Leesville', 3670, '39.18940', '-122.42250'), ('Lodoga', 2402, '39.30190', '-122.48810'), ('Maxwell', 3670, '39.27640', '-122.19030'), ('Stoneyford', 6220, '39.37500', '-122.54300'), ('Sycamore', 5402, '39.13380', '-121.94080'), ('Wilbur Springs', 13142, '39.03940', '-122.41860'), ('Williams', 3670, '39.15460', '-122.13680')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC013': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alamo', 15626, '37.85710', '-121.99860'), ('Antioch', 90532, '37.98870', '-121.79890'), ('Bayview-Montalvin', 5004, '38.00160', '-122.32270'), ('Bethel Island', 2312, '38.03220', '-121.64680'), ('Blackhawk', 6199, '37.82090', '-121.90670'), ('Brentwood', 23302, '37.93360', '-121.70860'), ('Clayton', 10762, '37.94100', '-121.92890'), ('Concord', 121780, '37.97330', '-121.99990'), ('Crockett', 3194, '38.05110', '-122.21940'), ('Danville', 41715, '37.81440', '-121.97140'), ('Discovery Bay', 8981, '37.90880', '-121.59520'), ('East Richmond Heigts', 3357, '37.94510', '-122.31260'), ('El Cerrito', 23171, '37.92050', '-122.30210'), ('El Sobrante', 12260, '37.97660', '-122.29260'), ('Kensington', 4936, '37.90820', '-122.27730'), ('Lafayette', 23908, '37.89380', '-122.11790'), ('Martinez', 35866, '38.00070', '-122.11450'), ('Moraga Town', 16290, '37.84390', '-122.12340'), ('Oakley', 25619, '37.98650', '-121.71600'), ('Orinda', 17599, '37.88090', '-122.17730'), ('Pacheco', 3562, '37.98760', '-122.06230'), ('Pittsburg', 56769, '38.01810', '-121.88950'), ('Pleasant Hill', 32837, '37.95370', '-122.07420'), ('Richmond', 99216, '37.95130', '-122.36090'), ('Rodeo', 8717, '38.04550', '-122.23770'), ('San Pablo', 30215, '37.96210', '-122.34270'), ('San Ramon', 44722, '37.75740', '-121.95110'), ('Tara Hills', 5332, '37.99360', '-122.31750'), ('Vine Hill', 3260, '38.01600', '-122.09150'), ('Walnut Creek', 64296, '37.90200', '-122.04080'), ('West Pittsburg', 17453, '38.03820', '-121.97400')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC015': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Crescent City', 4006, '41.75000', '-124.20000'), ('Ft Dick', 4028, '41.87000', '-124.15000'), ('Gasquet', 4006, '41.85000', '-123.97000'), ('Klamath Glen', 651, '41.52000', '-124.00000'), ('Requa', 651, '41.55000', '-124.07000'), ('Smith River', 2143, '41.93000', '-124.15000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAC017': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Bend Summit', 4728, '38.85000', '-120.53280'), ('Bliss State Park', 23609, '38.98000', '-120.10000'), ('Cameron Park', 14549, '38.68170', '-120.98720'), ('Camino', 4728, '38.73800', '-120.67270'), ('Chiquita Lake', 1791, '38.93810', '-120.72890'), ('Clarksville', 18016, '38.65500', '-121.05140'), ('Coloma', 9610, '38.80000', '-120.88920'), ('Cool', 12462, '38.88720', '-121.01470'), ('Diamond Springs', 4888, '38.68600', '-120.82160'), ('El Dorado Hills', 18016, '38.68590', '-121.08100'), ('Emerald Bay', 23609, '38.96000', '-120.09000'), ('Fresh Pond', 4728, '38.76030', '-120.52890'), ('Garden Valley', 9610, '38.85420', '-120.85830'), ('Georgetown', 1791, '38.90690', '-120.83500'), ('Greenwood', 1791, '38.89670', '-120.91170'), ('Grizzly Flat', 4728, '38.63640', '-120.52640'), ('Kyburz', 4728, '38.77470', '-120.29580'), ('Latrobe', 4193, '38.55970', '-120.98270'), ('Lotus', 9610, '38.80170', '-120.90750'), ('Luther Pass', 23609, '38.79000', '-119.95000'), ('Meeks Bay', 1761, '39.01000', '-120.12000'), ('Meyers', 23609, '38.86000', '-120.01000'), ('Pacific House', 4728, '38.76000', '-120.50600'), ('Pilot Hill', 12462, '38.83500', '-121.01330'), ('Placerville', 9610, '38.73020', '-120.79570'), ('Pollock Pines', 4728, '38.75210', '-120.57060'), ('Rescue', 2643, '38.71160', '-120.95030'), ('Riverton', 4728, '38.77110', '-120.44830'), ('Shingle Springs', 2643, '38.67080', '-120.93970'), ('Smithflat', 9610, '38.73470', '-120.75420'), ('Somerset', 9610, '38.64770', '-120.68470'), ('South Lake Tahoe', 23609, '38.93930', '-119.98110'), ('Sugar Pine Point S', 1761, '39.06000', '-120.12000'), ('Twin Bridges', 23609, '38.81140', '-120.12300'), ('White Hall', 4728, '38.77530', '-120.40420')], 'partOfState': 'northern', 'wfo': 'STOREV'}, +'CAC019': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Auberry', 2053, '37.07780', '-119.49360'), ('Caruthers', 2103, '36.54180', '-119.84170'), ('Cedar Grove', 2691, '36.79160', '-118.67220'), ('Clovis', 68468, '36.81960', '-119.69600'), ('Coalinga', 11668, '36.14240', '-120.35460'), ('Firebaugh', 5743, '36.84920', '-120.44890'), ('Five Points', 3270, '36.42960', '-120.10230'), ('Florence Lake', 7093, '37.27600', '-118.97600'), ('Fowler', 3979, '36.62470', '-119.67230'), ('Fresno', 427652, '36.78060', '-119.79290'), ('Hume Lake', 2691, '36.78650', '-118.91120'), ('Huntington Lake', 2053, '37.23100', '-119.23460'), ('Kerman', 8551, '36.72420', '-120.06100'), ('Kingsburg', 9199, '36.51950', '-119.55480'), ('Lake Thomas Edison', 7093, '37.37890', '-119.00990'), ('Lake Wishon', 2691, '37.00720', '-118.97620'), ('Laton', 1236, '36.43400', '-119.68890'), ('Mendota', 7890, '36.75760', '-120.37890'), ('Millerton Lake', 68468, '37.00050', '-119.70410'), ('Orange Cove', 7722, '36.62250', '-119.31740'), ('Parlier', 11145, '36.60850', '-119.53820'), ('Reedley', 20756, '36.60040', '-119.44830'), ('Riverdale', 2416, '36.43080', '-119.86600'), ('Sanger', 18931, '36.70020', '-119.55320'), ('San Joaquin', 3270, '36.60690', '-120.18690'), ('Selma', 19444, '36.57420', '-119.61540'), ('Shaver Lake', 2053, '37.10350', '-119.31770'), ('Squaw Valley', 2691, '36.69640', '-119.19420'), ('Tranquility', 3270, '36.64820', '-120.25140')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAC021': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Afton', 5402, '39.42000', '-121.96530'), ('Alder Springs', 2509, '39.65000', '-122.72500'), ('Artois', 6220, '39.61970', '-122.19280'), ('Bluegum', 6220, '39.58360', '-122.19220'), ('Butte City', 5220, '39.46470', '-121.98890'), ('Chrome', 6281, '39.72920', '-122.54830'), ('Codora', 6220, '39.45890', '-122.02110'), ('Elk Creek', 6220, '39.60530', '-122.53800'), ('Fruto', 6220, '39.59000', '-122.44890'), ('Glenn', 6220, '39.52190', '-122.01280'), ('Greenwood', 6281, '39.69610', '-122.19330'), ('Hamilton City', 1903, '39.74230', '-122.01170'), ('Newville', 6281, '39.79110', '-122.52720'), ('Ordbend', 1903, '39.62970', '-122.00440'), ('Orland', 6281, '39.74570', '-122.18720'), ('Stoney Gorge Reservoir', 6220, '39.58500', '-122.53170'), ('Willows', 6220, '39.51590', '-122.19890')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC023': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alderpoint', 1188, '40.18000', '-123.60000'), ('Arcata', 16651, '40.87000', '-124.08000'), ('Arcata Arpt', 13599, '40.98000', '-124.10000'), ('Bayview', 2359, '40.76000', '-124.18000'), ('Benbow', 1188, '40.07000', '-123.78000'), ('Blocksburg', 1188, '40.28000', '-123.63000'), ('Blue Lake', 1135, '40.88000', '-123.99000'), ('Briceland', 1188, '40.10000', '-123.90000'), ('Bridgeville', 1209, '40.47000', '-123.80000'), ('Bull Creek', 3174, '40.35000', '-124.03000'), ('Capetown', 1382, '40.47000', '-124.37000'), ('Carlotta', 1209, '40.53000', '-124.05000'), ('Cutten', 2933, '40.77000', '-124.14000'), ('Dinsmore', 1743, '40.48000', '-123.60000'), ('Ettersburg', 1188, '40.13000', '-124.00000'), ('Eureka', 26128, '40.80000', '-124.16000'), ('Fernbridge', 10497, '40.62000', '-124.20000'), ('Ferndale', 1382, '40.58000', '-124.26000'), ('Fieldbrook', 13599, '40.97000', '-124.03000'), ('Fortuna', 10497, '40.59000', '-124.14000'), ('Freshwater', 4459, '40.77000', '-124.07000'), ('Ft Seward', 1188, '40.22000', '-123.65000'), ('Garberville', 1188, '40.10000', '-123.80000'), ('Honeydew', 3174, '40.23000', '-124.12000'), ('Hoopa', 1743, '41.05000', '-123.67000'), ('Humboldt Hill', 3246, '40.73000', '-124.19000'), ('Hydesville', 1209, '40.55000', '-124.09000'), ('Kneeland', 1135, '40.75000', '-123.98000'), ('Loleta', 1382, '40.63000', '-124.22000'), ('Maple Creek', 1135, '40.77000', '-123.87000'), ('Miranda', 1188, '40.23000', '-123.82000'), ('Myers Flat', 1188, '40.27000', '-123.88000'), ('Myrtletown', 4459, '40.79000', '-124.13000'), ('Orick', 311, '41.28000', '-124.07000'), ('Orleans', 1743, '41.30000', '-123.53000'), ('Pepperwood', 3174, '40.45000', '-123.98000'), ('Petrolia', 3174, '40.32000', '-124.28000'), ('Pine Hills', 3108, '40.73000', '-124.15000'), ('Redway', 1188, '40.12000', '-123.82000'), ('Richardson Grove', 1188, '40.02000', '-123.78000'), ('Rio Dell', 3174, '40.50000', '-124.11000'), ('Rohnerville', 10497, '40.57000', '-124.13000'), ('Samoa', 26128, '40.82000', '-124.18000'), ('Scotia', 3174, '40.48000', '-124.10000'), ('Shelter Cove', 1188, '40.03000', '-124.05000'), ('Shively', 3174, '40.43000', '-123.97000'), ('Weitchpec', 1743, '41.18000', '-123.70000'), ('Weott', 1188, '40.33000', '-123.92000'), ('Westhaven-Moonston', 1044, '41.04000', '-124.10000'), ('Whitehorn', 1188, '40.02000', '-123.92000'), ('Willow Creek', 1743, '40.88000', '-123.67000')], 'partOfState': 'southwest', 'wfo': 'EKA'}, +'CAC025': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alamorio', 22052, '32.97000', '-115.45000'), ('Bonds Corner', 5612, '32.69000', '-115.34000'), ('Brawley', 22052, '32.97980', '-115.53340'), ('Calexico', 27109, '32.67850', '-115.50080'), ('Calipatria', 7289, '33.12720', '-115.51760'), ('Coolidge Springs', 5402, '33.40000', '-116.05000'), ('Coyote Wells', 1624, '32.75000', '-115.97000'), ('Desert Shores', 5402, '33.41500', '-116.04160'), ('Dixieland', 1624, '32.79000', '-115.78000'), ('El Centro', 37835, '32.78710', '-115.55940'), ('Glamis', 5612, '33.00000', '-115.08000'), ("Gordon's Well", 5282, '32.71000', '-114.96000'), ('Heber', 2988, '32.73410', '-115.52010'), ('Holtville', 5612, '32.81370', '-115.37730'), ('Imperial', 7560, '32.84000', '-115.56000'), ('Imperial Hot Mineral Springs', 1143, '33.42000', '-115.69000'), ('Martinez Lake', 20478, '32.97000', '-114.47000'), ('Mountain Spring', 1624, '32.67000', '-116.10000'), ('Niland', 1143, '33.23850', '-115.51310'), ('Ocotillo', 1624, '32.74000', '-116.00000'), ('Palo Verde', 12155, '33.42420', '-114.72920'), ('Plaster City', 1624, '32.79000', '-115.85000'), ('Salton City', 5402, '33.26250', '-115.95000'), ('Seeley', 1624, '32.78900', '-115.68020'), ('Westmorland', 2131, '33.03680', '-115.62150'), ('Wiest', 7289, '33.06000', '-115.44000'), ('Winona', 5402, '33.24000', '-115.94000'), ('Winterhaven', 54923, '32.73900', '-114.62000')], 'partOfState': 'southeast', 'wfo': 'PSR'}, +'CAC027': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aspendell', 2807, '37.23330', '-118.58330'), ('Big Pine', 1350, '37.16540', '-118.29540'), ('Bishop', 3575, '37.36770', '-118.39680'), ('Death Valley Junction', 7424, '36.30000', '-116.41330'), ('Dixon Lane-Meadow', 2702, '37.38730', '-118.41250'), ('Furnace Creek', 31, '36.45000', '-116.85000'), ('Independence', 1655, '36.80000', '-118.20000'), ('Keeler', 1655, '36.48160', '-117.86830'), ('Lone Pine', 1655, '36.59400', '-118.06500'), ('Olancha', 1655, '36.27830', '-118.00000'), ('Panamint Springs', 1885, '36.33330', '-117.47000'), ('Shoshone', 7424, '35.96670', '-116.27500'), ('South Lake', 2807, '37.18330', '-118.56660'), ('Stovepipe Wells', 1623, '36.60000', '-117.16660'), ('West Bishop', 2807, '37.36110', '-118.45410')], 'partOfState': 'south central', 'wfo': 'VEF'}, +'CAC029': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Arvin', 12956, '35.20030', '-118.83370'), ('Bakersfield', 247057, '35.35770', '-119.00460'), ('Blackwells Corner', 1938, '35.61510', '-119.86690'), ('Boron', 2025, '35.00490', '-117.65030'), ('Buttonwillow', 1266, '35.40180', '-119.46980'), ('California City', 8385, '35.18930', '-117.81150'), ('Delano', 38824, '35.76480', '-119.25040'), ('Edwards AFB', 5909, '34.90960', '-117.93460'), ('Frazier Park', 2348, '34.82210', '-118.94530'), ('Grapevine', 2348, '34.94170', '-118.93030'), ('Inyokern', 24927, '35.64680', '-117.81200'), ('Kernville', 1736, '35.76160', '-118.43010'), ('Lake Isabella', 3315, '35.61520', '-118.46570'), ('Lamont', 13296, '35.26410', '-118.91400'), ('Lebec', 2348, '34.84220', '-118.86610'), ('Lost Hills', 1938, '35.62340', '-119.69350'), ('McFarland', 9618, '35.67910', '-119.23560'), ('McKittrick', 1266, '35.30550', '-119.62210'), ('Mojave', 3836, '35.05210', '-118.17980'), ('North Edwards', 1227, '35.01910', '-117.83030'), ('Randsburg', 8385, '35.36840', '-117.65570'), ('Ridgecrest', 24927, '35.63100', '-117.66110'), ('Rosamond', 14349, '34.86020', '-118.19950'), ('Shafter', 12736, '35.50120', '-119.27270'), ('Taft', 6400, '35.14240', '-119.45480'), ('Tehachapi', 10957, '35.13480', '-118.44050'), ('Wasco', 21263, '35.59360', '-119.34100')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAC031': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Avenal', 14674, '36.02960', '-120.11470'), ('Corcoran', 14458, '36.08180', '-119.56000'), ('Hanford', 41686, '36.32500', '-119.64690'), ('Kettleman City', 1499, '36.00870', '-119.96190'), ('Lemoore', 19712, '36.29860', '-119.78750'), ('Lemoore Station', 5749, '36.26440', '-119.90370'), ('Stratford', 5749, '36.18950', '-119.82350')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAC033': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Adams', 1638, '38.85640', '-122.71860'), ('Anderson Springs', 1638, '38.77500', '-122.69190'), ('Barkerville', 2402, '39.15440', '-122.56140'), ('Buckingham Park', 2928, '39.01550', '-122.75690'), ('Clearlake', 13142, '38.95820', '-122.63160'), ('Clearlake Oaks', 2402, '39.02250', '-122.66510'), ('Clearlake Park', 13142, '38.96670', '-122.65000'), ('Cobb', 1638, '38.83780', '-122.72410'), ('Ettawa Springs', 1638, '38.85110', '-122.69500'), ('Finley', 4820, '39.00440', '-122.87440'), ('Forest Lake', 1638, '38.81800', '-122.71670'), ('Glenhaven', 2402, '39.02640', '-122.73190'), ('Gravelly Valley Airport', 2509, '39.44970', '-122.95530'), ('Hidden Valley Lake', 3777, '38.81110', '-122.56330'), ('Hobergs', 1638, '38.84360', '-122.72330'), ('Hough Springs', 2402, '39.16250', '-122.61110'), ('Indian Valley Reservation', 2402, '39.12530', '-122.54170'), ('Kelseyville', 2928, '38.95810', '-122.82450'), ('Knobcone Camp', 4820, '39.04360', '-123.03360'), ('Konocti Bay', 2402, '38.97080', '-122.72920'), ('Lakeport', 4820, '39.04230', '-122.91990'), ('Loch Lomond', 1638, '38.86330', '-122.71830'), ('Lower Lake', 1755, '38.91120', '-122.61030'), ('Lucerne', 2870, '39.09030', '-122.79530'), ('Middletown', 3777, '38.75250', '-122.61390'), ('Mount Konocti', 2928, '38.97500', '-122.76530'), ('Nice', 2509, '39.12530', '-122.85050'), ('Pine Grove', 1638, '38.82830', '-122.73000'), ('Saratoga Springs', 2509, '39.17530', '-122.97970'), ('Seigler Springs', 1638, '38.87500', '-122.68750'), ('Soda Bay', 2928, '39.00560', '-122.79170'), ('Upper Lake', 2509, '39.16470', '-122.90940'), ('Whispering Pines', 1638, '38.81360', '-122.71140'), ('Witter Springs', 2509, '39.19000', '-122.99030')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC035': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bieber', 3217, '41.12000', '-121.14000'), ('Doyle', 862, '40.02000', '-120.10000'), ('Eagle Lake', 13541, '40.65000', '-120.74000'), ('Fredonyer Pass', 1998, '40.36000', '-120.87000'), ('Hallelujah Junction', 862, '39.78000', '-120.04000'), ('Herlong', 2227, '40.14000', '-120.13000'), ('Honey Lake', 13541, '40.23000', '-120.35000'), ('Madeline', 2892, '41.05000', '-120.47000'), ('Nubieber', 3217, '41.09000', '-121.19000'), ('Pittville', 3217, '41.05000', '-121.32000'), ('Ravendale', 13541, '40.80000', '-120.36000'), ('Spaulding', 13541, '40.65000', '-120.78000'), ('Standish', 13541, '40.37000', '-120.42000'), ('Susanville', 13541, '40.41110', '-120.65060'), ('Termo', 13541, '40.86000', '-120.45000'), ('Wendel', 13541, '40.35000', '-120.23000'), ('Westwood', 1998, '40.31000', '-121.00000')], 'partOfState': 'northern', 'wfo': 'REVSTO'}, +'CAC037': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Acton', 2390, '34.48280', '-118.18250'), ('Agoura Hills', 20537, '34.15100', '-118.75980'), ('Alhambra', 85804, '34.08400', '-118.13470'), ('Altadena', 42610, '34.19230', '-118.13470'), ('Avalon', 3127, '33.34290', '-118.32740'), ('Azusa', 44712, '34.13810', '-117.91230'), ('Beverly Hills', 33784, '34.07930', '-118.40140'), ('Big Pines', 3837, '34.37890', '-117.69010'), ('Burbank', 100316, '34.19130', '-118.32570'), ('Castaic Lake', 1472, '34.65000', '-118.70000'), ('Catalina Airport', 3127, '33.41000', '-118.42000'), ('Chatsworth', 1875, '34.27000', '-118.59000'), ('Claremont', 33998, '34.12190', '-117.71570'), ('Compton', 93493, '33.89250', '-118.22650'), ('Culver City', 38816, '34.00580', '-118.39610'), ('Diamond Bar', 56287, '33.99940', '-117.81430'), ('Downey', 107323, '33.93820', '-118.12990'), ('East Los Angeles', 124283, '34.03260', '-118.16860'), ('El Monte', 115965, '34.07480', '-118.02780'), ('Falling Springs', 49415, '34.30170', '-117.83920'), ('Glendale', 194973, '34.17670', '-118.25330'), ('Gorman', 2348, '34.80000', '-118.85000'), ('Hawthorne', 84112, '33.91470', '-118.34700'), ('Hermosa Beach', 63261, '33.86000', '-118.40000'), ('Hollywood', 35716, '34.10000', '-118.33000'), ('Huntington Park', 61348, '33.98030', '-118.21510'), ('Inglewood', 112580, '33.95580', '-118.34360'), ('Lake Los Angeles', 11523, '34.61190', '-117.82690'), ('Lakewood', 79345, '33.84880', '-118.12200'), ('Lancaster', 118718, '34.69310', '-118.17640'), ('La Puente', 41063, '34.03250', '-117.95230'), ('Littlerock', 1402, '34.52510', '-117.98480'), ('Long Beach', 461522, '33.78890', '-118.15980'), ('Los Angeles', 10958, '34.04000', '-118.30000'), ('Lynwood', 69845, '33.92370', '-118.20140'), ('Manhattan Beach', 33852, '33.89510', '-118.41000'), ('Monrovia', 36929, '34.16340', '-117.99040'), ('Montebello', 62150, '34.01550', '-118.11000'), ('Monterey Park', 60051, '34.04680', '-118.13060'), ('Mount Wilson', 10578, '34.22310', '-118.05870'), ('Norwalk', 103298, '33.90690', '-118.08250'), ('Palmdale', 116670, '34.60540', '-118.08630'), ('Palos Verdes Estates', 13340, '33.78780', '-118.39620'), ('Pasadena', 133936, '34.16070', '-118.13870'), ('Pearblossom', 1402, '34.50000', '-117.90000'), ('Point Dume', 2809, '34.01230', '-118.80160'), ('Pomona', 149473, '34.05900', '-117.76140'), ('Pyramid Lake', 2348, '34.69000', '-118.80000'), ('Redondo Beach', 63261, '33.83000', '-118.39000'), ('Reseda', 23564, '34.20000', '-118.52000'), ('Rowland Heights', 48553, '33.97980', '-117.89140'), ('Saddleback Butte State Park', 11523, '34.71000', '-117.82000'), ('San Fernando', 23564, '34.28950', '-118.43500'), ('San Pedro', 1871, '33.75000', '-118.33000'), ('Santa Clarita', 151088, '34.41340', '-118.51020'), ('Santa Monica', 84084, '34.01340', '-118.49320'), ('South San Jose Hill', 20218, '34.01280', '-117.90380'), ('Torrance', 137946, '33.83480', '-118.34040'), ('Two Harbors', 3127, '33.44000', '-118.50000'), ('Val Verde', 1472, '34.44550', '-118.65570'), ('Van Nuys', 3694820, '34.18000', '-118.45000'), ('Walnut', 30004, '34.02900', '-117.85740'), ('West Covina', 105080, '34.05430', '-117.90980'), ('Westlake Village', 8368, '34.13610', '-118.82130'), ('Whittier', 83680, '33.96660', '-118.02170'), ('Woodland Hills', 1875, '34.17000', '-118.59000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAC039': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bass Lake', 2868, '37.32220', '-119.55820'), ('Chowchilla', 11127, '37.11540', '-120.25660'), ('Coarsegold', 2868, '37.26180', '-119.69950'), ('Devils Postpile', 7093, '37.62940', '-119.08370'), ('Madera', 43207, '36.96760', '-120.07670'), ('North Fork', 2053, '37.22860', '-119.50820'), ('Oakhurst', 2868, '37.33330', '-119.64700')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAC041': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bolinas', 1246, '37.90560', '-122.69700'), ('Corte Madera', 9100, '37.92360', '-122.50730'), ('Fairfax', 7319, '37.98860', '-122.59380'), ('Inverness', 1421, '38.08510', '-122.84110'), ('Kentfield', 6351, '37.95030', '-122.54740'), ('Lagunitas-Forest Knolls', 1835, '38.01520', '-122.68760'), ('Larkspur', 12014, '37.94120', '-122.52920'), ('Lucas Valley-Marinwood', 6357, '38.03520', '-122.56550'), ('Mill Valley', 13600, '37.90800', '-122.54100'), ('Novato', 47630, '38.09210', '-122.55670'), ('Ross', 2329, '37.96180', '-122.56060'), ('San Anselmo', 12378, '37.98260', '-122.56890'), ('San Rafael', 56063, '37.98110', '-122.50590'), ('Santa Venetia', 4298, '38.00910', '-122.50370'), ('Sausalito', 7330, '37.85770', '-122.49150'), ('Strawberry', 5302, '37.89700', '-122.50770'), ('Tamalpais-Homestead', 10691, '37.88840', '-122.53900'), ('Tiburon', 8666, '37.88680', '-122.45680'), ('Woodacre', 1393, '38.00570', '-122.63470')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC043': {'fullStateName': 'California', 'state': 'CA', 'cities': [('El Portal', 1588, '37.67570', '-119.78030'), ('Fish Camp', 2868, '37.47890', '-119.63700'), ('Lake Mcclure', 3388, '37.58400', '-120.27370'), ('Mariposa', 1373, '37.48850', '-119.96650'), ('Wawona', 2868, '37.54790', '-119.64420'), ('Yosemite National', 0, '37.71000', '-119.68000'), ('Yosemite Valley', 1588, '37.74000', '-119.59810')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAC045': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Boonville', 15497, '39.00000', '-123.37000'), ('Branscomb', 1301, '39.65000', '-123.63000'), ('Calpella', 15497, '39.23000', '-123.20000'), ('Comptche', 7026, '39.27000', '-123.60000'), ('Covelo', 1175, '39.80000', '-123.25000'), ('Dos Rios', 1175, '39.72000', '-123.35000'), ('Fort Bragg', 7026, '39.44000', '-123.80000'), ('Gualala', 474, '38.77000', '-123.53000'), ('Hopland', 15497, '38.98000', '-123.12000'), ('Laytonville', 1301, '39.67000', '-123.50000'), ('Leggett', 1188, '39.87000', '-123.72000'), ('Manchester', 474, '38.97000', '-123.68000'), ('Navarro', 474, '39.15000', '-123.53000'), ('Philo', 15497, '39.07000', '-123.43000'), ('Piercy', 1188, '39.98000', '-123.80000'), ('Point Arena', 474, '38.91000', '-123.69000'), ('Potter Valley', 15497, '39.32000', '-123.12000'), ('Redwood Vly', 15497, '39.27000', '-123.20000'), ('Rockport', 7026, '39.75000', '-123.82000'), ('Talmage', 15497, '39.13000', '-123.17000'), ('Ukiah', 15497, '39.15000', '-123.21000'), ('Willits', 5073, '39.40000', '-123.35000'), ('Yorkville', 6831, '38.90000', '-123.22000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAC047': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Atwater', 23113, '37.35330', '-120.60000'), ('Dos Palos', 4581, '36.98650', '-120.63680'), ('Gustine', 4698, '37.25250', '-120.99320'), ('Le Grand', 1760, '37.21910', '-120.26050'), ('Livingston', 10473, '37.38800', '-120.72150'), ('Los Banos', 25869, '37.06420', '-120.83530'), ('Merced', 63893, '37.29630', '-120.48440'), ('Planada', 4369, '37.28810', '-120.32330'), ('San Luis Reservoir', 4698, '37.06800', '-121.06860')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAC049': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Adin', 2892, '41.21170', '-120.94420'), ('Alturas', 2892, '41.49150', '-120.54540'), ('Canby', 2892, '41.44390', '-120.86920'), ('Cedarville', 2892, '41.53000', '-120.17000'), ('Davis Creek', 2892, '41.73330', '-120.37080'), ('Day', 3217, '41.21170', '-121.37330'), ('Eagleville', 2892, '41.32000', '-120.12000'), ('Fort Bidwell', 2526, '41.86000', '-120.15000'), ('Lake City', 2892, '41.64000', '-120.22000'), ('Likely', 2892, '41.23060', '-120.50310'), ('Lookout', 3217, '41.20810', '-121.15420'), ('Newell', 1020, '41.88830', '-121.37110'), ('Tionesta', 1020, '41.64610', '-121.32690'), ('Willow Ranch', 2526, '41.90250', '-120.35720')], 'partOfState': 'northern', 'wfo': 'MFRREV'}, +'CAC051': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Benton', 2702, '37.82000', '-118.48000'), ('Benton Hot Springs', 2702, '37.78000', '-118.52800'), ('Bodie', 4162, '38.21200', '-119.00800'), ('Bridgeport', 894943, '38.26000', '-119.22000'), ('Bridgeport Reservoir', 894943, '38.31990', '-119.22000'), ('Chalfant', 2702, '37.53000', '-118.36000'), ('Coleville', 894943, '38.57000', '-119.51000'), ('Conway Summit', 7093, '38.09000', '-119.18000'), ('Crestview', 7093, '37.75600', '-118.98700'), ('Crowley Lake', 7093, '37.61000', '-118.74000'), ('June Lake', 7093, '37.78000', '-119.08000'), ('Leavitt Meadows', 894943, '38.32000', '-119.55000'), ('Lee Vining', 7093, '37.96000', '-119.12000'), ('Mammoth Lakes', 7093, '37.64400', '-118.95500'), ('Mammouth Mountain', 7093, '37.65500', '-119.03300'), ('Mono Lake', 7093, '38.00600', '-119.00600'), ('Oasis', 3575, '37.49000', '-117.92000'), ('Sonora Pass', 894943, '38.32800', '-119.62900'), ('Tioga Pass', 7093, '37.91500', '-119.25600'), ('Toms Place', 7093, '37.56300', '-118.69500'), ('Twin Lakes', 7093, '38.14900', '-119.34400'), ('Walker', 894943, '38.52000', '-119.48000')], 'partOfState': 'northern', 'wfo': 'REV'}, +'CAC053': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Carmel Valley Village', 4700, '36.48620', '-121.72290'), ('Castroville', 6724, '36.76400', '-121.75180'), ('Del Monte Forest', 4531, '36.58630', '-121.94630'), ('Del Rey Oaks', 1650, '36.59280', '-121.83730'), ('Elkhorn', 1591, '36.81090', '-121.71750'), ('Gonzales', 7525, '36.50650', '-121.44260'), ('Greenfield', 12583, '36.32170', '-121.24240'), ('King City', 11094, '36.21300', '-121.12820'), ('Las Lomas', 3078, '36.86880', '-121.73100'), ('Marina', 25101, '36.68270', '-121.79080'), ('Monterey', 29674, '36.60130', '-121.88180'), ('Pajaro', 3384, '36.90010', '-121.74090'), ('Prunedale', 16432, '36.79990', '-121.65640'), ('Salinas', 151060, '36.68480', '-121.63510'), ('Seaside', 31696, '36.62140', '-121.81860'), ('Soledad', 11263, '36.43010', '-121.32250')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC055': {'fullStateName': 'California', 'state': 'CA', 'cities': [('American Canyon', 9774, '38.17320', '-122.26120'), ('Angwin', 3148, '38.57760', '-122.44800'), ('Calistoga', 5190, '38.58140', '-122.58170'), ('Deer Park', 1433, '38.53280', '-122.46860'), ('Napa', 72585, '38.29790', '-122.29990'), ('St. Helena', 5950, '38.50470', '-122.46570'), ('Yountville', 2916, '38.39140', '-122.36780')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC057': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alta Sierra', 6522, '39.12290', '-121.05260'), ('Bald Mountain Summit', 3001, '39.33440', '-121.01220'), ('Boca Reservoir', 2133, '39.40000', '-120.09000'), ('Bowman Lake', 2227, '39.44830', '-120.65000'), ('Bridgeport', 1387, '39.29170', '-121.19360'), ('Cedar Ridge', 10922, '39.19880', '-121.02000'), ('Cherokee', 3001, '39.37030', '-121.04190'), ('Delevan National Wildlife Refuge', 3001, '39.31670', '-121.10000'), ('Floriston', 2133, '39.40000', '-120.01000'), ('Glenshire-Devonshire', 13864, '39.35050', '-120.08750'), ('Graniteville', 3001, '39.44080', '-120.73860'), ('Grass Valley', 10922, '39.22150', '-121.05670'), ('Higgins Corner', 3956, '39.04280', '-121.09390'), ('Hirschdale', 2133, '39.37000', '-120.07000'), ('Hobart Mills', 13864, '39.40000', '-120.18000'), ('Independence Lake', 13864, '39.44000', '-120.30000'), ('Kingvale', 13864, '39.32110', '-120.42780'), ('Lake Of The Pines', 3956, '39.03970', '-121.05550'), ('Lake Spaulding', 1791, '39.32720', '-120.64190'), ('Lake Wildwood', 1387, '39.23310', '-121.19940'), ('Meadow Lake', 13864, '39.40360', '-120.49720'), ('Nevada City', 3001, '39.26040', '-121.02120'), ('Penn Valley', 1387, '39.19620', '-121.18990'), ('Prosser Creek Reservoir', 13864, '39.38000', '-120.17000'), ('Rattlesnake Mountain', 13864, '39.31580', '-120.52940'), ('Rough And Ready', 1387, '39.23030', '-121.13500'), ('Scotts Flat', 3001, '39.28330', '-120.91250'), ('Skillman Campground', 3001, '39.31830', '-120.78920'), ('Soda Springs', 13864, '39.32300', '-120.37880'), ('Sweetland', 3001, '39.34310', '-121.11920'), ('Truckee', 13864, '39.32640', '-120.20230'), ('White Cloud Campgrond', 3001, '39.32010', '-120.84530')], 'partOfState': 'northern', 'wfo': 'STOREV'}, +'CAC059': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aliso Viejo', 40166, '33.56750', '-117.72530'), ('Anaheim', 328014, '33.83890', '-117.87230'), ('Brea', 35410, '33.92360', '-117.86720'), ('Buena Park', 78282, '33.85770', '-118.00330'), ('Costa Mesa', 108724, '33.66680', '-117.91260'), ('Coto De Caza', 13057, '33.60410', '-117.58600'), ('Cypress', 46229, '33.81630', '-118.03790'), ('El Toro', 62685, '33.64710', '-117.68270'), ('El Toro Station', 6869, '33.67920', '-117.71840'), ('Fountain Valley', 54978, '33.71090', '-117.95030'), ('Fullerton', 126003, '33.88480', '-117.92810'), ('Garden Grove', 165196, '33.77880', '-117.95940'), ('Huntington Beach', 189594, '33.69180', '-118.00810'), ('Irvine', 143072, '33.66210', '-117.79580'), ('Laguna Beach', 23727, '33.53990', '-117.76070'), ('Laguna Hills', 31178, '33.59980', '-117.71090'), ('Laguna Niguel', 61891, '33.52650', '-117.70430'), ('La Habra', 58974, '33.92740', '-117.95060'), ('La Palma', 15408, '33.85090', '-118.03870'), ('Los Alamitos', 11536, '33.79860', '-118.05810'), ('Mission Viejo', 93102, '33.61240', '-117.65160'), ('Orange', 128821, '33.80530', '-117.82400'), ('Placentia', 46488, '33.88160', '-117.85480'), ('Portola Hills', 6391, '33.68370', '-117.63200'), ('Rancho Santa Marga', 47214, '33.64070', '-117.60220'), ('Rossmoor', 10298, '33.78950', '-118.07890'), ('San Clemente', 49936, '33.44720', '-117.61110'), ('San Juan Capistrano', 33826, '33.50160', '-117.65260'), ('Santa Ana', 337977, '33.73640', '-117.88210'), ('Seal Beach', 24157, '33.75850', '-118.07580'), ('Stanton', 37403, '33.80040', '-117.99090'), ('Trabuco Highlands', 3191, '33.61490', '-117.56550'), ('Tustin', 67504, '33.73000', '-117.81110'), ('Tustin Foothills', 24044, '33.76450', '-117.79300'), ('Villa Park', 5999, '33.81850', '-117.81030'), ('Westminster', 88207, '33.75140', '-117.99310'), ('Yorba Linda', 58918, '33.88870', '-117.76630')], 'partOfState': 'southwest', 'wfo': 'SGXPSR'}, +'CAC061': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alpine Meadows', 1761, '39.17000', '-120.22000'), ('Applegate', 3096, '39.00000', '-120.98900'), ('Auburn', 12462, '38.89200', '-121.07610'), ('Baxter', 1496, '39.21300', '-120.78000'), ('Big Bend', 13864, '39.30550', '-120.51690'), ('Blue Canyon', 1791, '39.27470', '-120.70900'), ('Carnelian Bay', 1668, '39.23000', '-120.07000'), ('Cisco', 13864, '39.30160', '-120.54580'), ('Colfax', 1496, '39.09530', '-120.95320'), ('Dollar Point', 1539, '39.18970', '-120.10840'), ('Donner Peak', 13864, '39.30890', '-120.31110'), ('Emigrant Gap', 1791, '39.29690', '-120.67160'), ('Foresthill', 1791, '38.99940', '-120.83210'), ('Granite Bay', 6260, '38.76330', '-121.16270'), ('Homewood', 1761, '39.08000', '-120.16000'), ('Iowa Hill', 1496, '39.10860', '-120.85830'), ('Kings Beach', 4037, '39.24000', '-120.03000'), ('Lincoln', 11205, '38.89920', '-121.31650'), ('Loomis', 6260, '38.80970', '-121.19430'), ('Meadow Vista', 3096, '39.00400', '-121.03070'), ('Newcastle', 12462, '38.87400', '-121.13200'), ('North Auburn', 11847, '38.93130', '-121.08070'), ('Northstar', 1668, '39.28000', '-120.12000'), ('Rocklin', 36330, '38.80240', '-121.24030'), ('Roseville', 79921, '38.75980', '-121.29370'), ('Sheridan', 2275, '38.97970', '-121.37440'), ('Squaw Valley', 1761, '39.20000', '-120.22000'), ('Sugar Pine', 1791, '39.13420', '-120.79110'), ('Sunnyside-Tahoe City', 1761, '39.14750', '-120.16370'), ('Tahoe City', 1761, '39.17000', '-120.14000'), ('Tahoe Vista', 1668, '39.24790', '-120.05360'), ('Weimar', 1791, '39.04330', '-120.88920')], 'partOfState': 'central', 'wfo': 'STOREV'}, +'CAC063': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Almanor', 2316, '40.21750', '-121.17310'), ('American House', 4271, '39.65220', '-121.02220'), ('Antelope Lake', 13541, '40.18000', '-120.61000'), ('Bald Eagle Mountain', 2316, '39.93810', '-121.23500'), ('Beckwourth', 2227, '39.82000', '-120.38000'), ('Belden', 1095, '39.93810', '-121.24810'), ('Blairsden', 2227, '39.78000', '-120.62000'), ('Bucks Lake', 4271, '39.88670', '-121.19030'), ('Caribou', 1160, '40.08060', '-121.15670'), ('Chester', 2316, '40.30040', '-121.23320'), ('Chilcoot', 862, '39.80000', '-120.14000'), ('Crescent Mills', 1160, '40.09670', '-120.90970'), ('Cromberg', 2227, '39.86000', '-120.69000'), ('Frenchman Lake', 862, '39.92000', '-120.20000'), ('Genesee', 4271, '40.04000', '-120.75000'), ('Graeagle', 2227, '39.77000', '-120.62000'), ('Greenville', 1160, '40.13580', '-120.93790'), ('Johnsville', 2227, '39.78000', '-120.66000'), ('Lake Almanor', 2316, '40.25280', '-121.16030'), ('Lake Davis', 2227, '39.91000', '-120.51000'), ('Moccasin', 1160, '40.07690', '-120.93530'), ('Paxton', 1160, '40.03810', '-120.99380'), ('Plumas Eureka State Park', 2227, '39.77000', '-120.69000'), ('Portola', 2227, '39.80490', '-120.46760'), ('Quincy', 2398, '39.92350', '-120.92380'), ('Seneca', 1160, '40.11050', '-121.08360'), ('Sloat', 2227, '39.87000', '-120.73000'), ('Storrie', 1095, '39.91750', '-121.32220'), ('Twain', 4271, '40.02030', '-121.07080'), ('Vinton', 862, '39.80000', '-120.18000')], 'partOfState': 'northern', 'wfo': 'STOREV'}, +'CAC065': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Banning', 23562, '33.93730', '-116.89210'), ('Beaumont', 11384, '33.93180', '-116.97850'), ('Bermuda Dunes', 6229, '33.74270', '-116.28840'), ('Blythe', 12155, '33.60940', '-114.59010'), ('Cabazon', 2229, '33.91140', '-116.77170'), ('Calimesa', 7139, '33.99590', '-117.04510'), ('Canyon Lake', 9952, '33.68350', '-117.25340'), ('Cathedral City', 42647, '33.83080', '-116.46340'), ('Cherry Valley', 5891, '33.97250', '-116.96530'), ('Chiriaco Summit', 5402, '33.66660', '-115.71600'), ('Coachella', 22724, '33.68090', '-116.15230'), ('Corona', 124966, '33.86790', '-117.56970'), ('Cottonwood Visitor', 5402, '33.74830', '-115.78880'), ('Desert Center', 1143, '33.71600', '-115.40000'), ('Desert Hot Springs', 16582, '33.95910', '-116.50020'), ('Eagle Mtn', 1143, '33.85000', '-115.48300'), ('East Blythe', 3, '33.61170', '-114.57730'), ('East Hemet', 14823, '33.74000', '-116.93800'), ('Glen Avon', 14853, '34.01740', '-117.48760'), ('Hemet', 58812, '33.73160', '-116.99780'), ('Highgrove', 3445, '34.01450', '-117.32800'), ('Home Gardens', 9461, '33.88090', '-117.51320'), ('Homeland', 3710, '33.74850', '-117.10860'), ('Idyllwild-Pine Cove', 3504, '33.74730', '-116.72320'), ('Indian Wells', 3816, '33.70540', '-116.34060'), ('Indio', 49116, '33.71980', '-116.22860'), ('Lake Elsinore', 28928, '33.66900', '-117.32150'), ('Lakeland Village', 5626, '33.63830', '-117.34480'), ('Lakeview', 1619, '33.82810', '-117.12380'), ('La Quinta', 23694, '33.67140', '-116.29220'), ('Lost Horse-Keys Village', 5120, '33.94080', '-116.21250'), ('March AFB', 370, '33.89130', '-117.26390'), ('Mecca', 5402, '33.57590', '-116.07170'), ('Midland', 12155, '33.86660', '-114.80000'), ('Mira Loma', 17617, '33.98460', '-117.51270'), ('Moreno Valley', 142381, '33.92620', '-117.21030'), ('Murrieta', 44282, '33.55970', '-117.20960'), ('Murrieta Hot Springs', 2948, '33.56510', '-117.15080'), ('Norco', 24157, '33.92550', '-117.55120'), ('Nuevo', 4135, '33.80690', '-117.13700'), ('Palm Desert', 41155, '33.73320', '-116.37540'), ('Palm Desert Country', 41155, '33.74060', '-116.31470'), ('Palm Springs', 42807, '33.83020', '-116.54440'), ('Pedley', 11207, '33.97670', '-117.47060'), ('Perris', 36189, '33.79300', '-117.22310'), ('Quail Valley', 1639, '33.70540', '-117.25210'), ('Rancho Mirage', 13249, '33.75800', '-116.42560'), ('Ripley', 12155, '33.52500', '-114.66660'), ('Riverside', 255166, '33.94040', '-117.39740'), ('Romoland', 2764, '33.74460', '-117.17170'), ('Rubidoux', 29180, '33.99550', '-117.42120'), ('San Jacinto', 23779, '33.79270', '-116.96420'), ('Sedco Hills', 3078, '33.64000', '-117.28250'), ('Sun City', 17773, '33.71290', '-117.20250'), ('Sunnyslope', 4437, '34.01890', '-117.42270'), ('Temecula', 57716, '33.50270', '-117.12880'), ('Thousand Palms', 5120, '33.82180', '-116.38580'), ('Valle Vista', 10488, '33.75060', '-116.89610'), ('Wildomar', 14064, '33.60960', '-117.25150'), ('Winchester', 2155, '33.70890', '-117.08060'), ('Woodcrest', 8342, '33.88580', '-117.36200')], 'partOfState': 'southern', 'wfo': 'SGXPSR'}, +'CAC067': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Antelope', 17426, '38.70830', '-121.32880'), ('Arco Arena', 10466, '38.65160', '-121.52220'), ('Arden-Arcade', 96025, '38.60110', '-121.37670'), ('Bruceville', 59984, '38.33580', '-121.41610'), ('Cal Expo', 407018, '38.59110', '-121.43420'), ('Carmichael', 49742, '38.63390', '-121.31880'), ('Citrus Heights', 85071, '38.69170', '-121.28670'), ('Courtland', 34309, '38.33110', '-121.56750'), ('Elk Grove', 59984, '38.40080', '-121.36750'), ('Elverta', 10466, '38.71380', '-121.46160'), ('Fair Oaks', 28008, '38.64850', '-121.24720'), ('Florin', 27653, '38.49610', '-121.40770'), ('Folsom', 51884, '38.67670', '-121.14620'), ('Franklin', 34309, '38.37920', '-121.45330'), ('Freeport', 36468, '38.46190', '-121.50050'), ('Galt', 19472, '38.26860', '-121.30120'), ('Isleton', 828, '38.16140', '-121.60430'), ('Laguna', 34309, '38.42110', '-121.42270'), ('Mather AFB', 55060, '38.54840', '-121.27720'), ('Natomas', 51884, '38.65500', '-121.18030'), ('North Highlands', 44187, '38.66770', '-121.38040'), ('Orangevale', 26705, '38.68830', '-121.21730'), ('Paintersville', 828, '38.32000', '-121.57500'), ('Rancho Cordova', 55060, '38.59540', '-121.30020'), ('Rancho Murieta', 4193, '38.50190', '-121.09360'), ('Rancho Seco Park', 4551, '38.33890', '-121.09310'), ('Rio Linda', 10466, '38.68760', '-121.45820'), ('Rosemont', 22904, '38.54720', '-121.35080'), ('Sacramento', 407018, '38.56690', '-121.46740'), ('Sacramento Zoo', 407018, '38.53920', '-121.50250'), ('Sheldon', 59984, '38.43080', '-121.29920'), ('Sloughhouse', 4551, '38.49580', '-121.19280'), ('Thornton', 34309, '38.33610', '-121.42360'), ('Walnut Grove', 828, '38.24220', '-121.51060'), ('Wilton', 4551, '38.41900', '-121.20760')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC069': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aromas', 2797, '36.87750', '-121.64030'), ('Hollister', 34413, '36.85550', '-121.39910'), ('San Juan Bautista', 1549, '36.84600', '-121.53710')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC071': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Adelanto', 18130, '34.56970', '-117.43690'), ('Amboy', 8413, '34.56660', '-115.75000'), ('Apple Valley', 54239, '34.52930', '-117.21420'), ('Baker', 7424, '35.28100', '-116.07000'), ('Barstow', 21119, '34.87760', '-117.06590'), ('Big Bear City', 5779, '34.26630', '-116.84550'), ('Big Bear Lake', 5438, '34.24370', '-116.89450'), ('Big River', 1266, '34.14010', '-114.36050'), ('Bloomington', 19318, '34.05940', '-117.39780'), ('Chino', 67168, '34.00690', '-117.68600'), ('Chino Hills', 66787, '33.97480', '-117.74870'), ('Colton', 47662, '34.05790', '-117.32200'), ('Crestline', 10218, '34.24670', '-117.29580'), ('Daggett', 1174, '34.85830', '-116.88330'), ('Earp', 1266, '34.15000', '-114.33330'), ('Essex', 4830, '34.73330', '-115.25000'), ('Fontana', 128929, '34.09770', '-117.45730'), ('George AFB', 64029, '34.58170', '-117.36650'), ('Grand Terrace', 11626, '34.03060', '-117.31450'), ('Hesperia', 62582, '34.41910', '-117.30240'), ('Highland', 44605, '34.11730', '-117.18910'), ('Joshua Tree', 4207, '34.12700', '-116.31780'), ('Lake Arrowhead', 8934, '34.26230', '-117.18850'), ('Lenwood', 3222, '34.88580', '-117.10360'), ('Loma Linda', 18681, '34.04420', '-117.24900'), ('Los Serranos', 66787, '33.97380', '-117.70310'), ('Ludlow', 8413, '34.71670', '-116.16660'), ('Mentone', 7803, '34.06300', '-117.12280'), ('Montclair', 33049, '34.07280', '-117.69660'), ('Morongo Valley', 1929, '34.06390', '-116.59180'), ('Mountain Pass', 6412, '35.47500', '-115.53900'), ('Mountain View Acre', 2521, '34.49680', '-117.34790'), ('Muscoy', 8919, '34.15230', '-117.34570'), ('Nebo Center', 1174, '34.87160', '-116.95560'), ('Needles', 4830, '34.81410', '-114.61320'), ('Nipton', 6412, '35.46650', '-115.28330'), ('Ontario', 158007, '34.05440', '-117.60580'), ('Parker Dam', 1646, '34.26650', '-114.15000'), ('Rancho Cucamonga', 127743, '34.12380', '-117.57020'), ('Redlands', 63591, '34.05790', '-117.17090'), ('Rialto', 91873, '34.11360', '-117.38700'), ('Running Springs', 5125, '34.20970', '-117.11350'), ('San Antonio Height', 3122, '34.15430', '-117.65840'), ('San Bernardino', 185401, '34.13970', '-117.29230'), ('Searles Valley', 1885, '35.76760', '-117.40290'), ('Trona', 1885, '35.76660', '-117.36660'), ('Twentynine Palms', 14764, '34.13950', '-116.06570'), ('Twentynine Palms Mountain', 8413, '34.22810', '-116.05570'), ('Upland', 68393, '34.11880', '-117.65770'), ('Victorville', 64029, '34.52300', '-117.33160'), ('Vidal Junction', 1266, '34.18330', '-114.57500'), ('West Wind Aero', 14764, '34.13330', '-115.91660'), ('Wrightwood', 3837, '34.35940', '-117.63030'), ('Yucaipa', 41207, '34.03310', '-117.04440'), ('Yucca Valley', 16865, '34.11120', '-116.42860')], 'partOfState': 'southern', 'wfo': 'VEFSGXPSR'}, +'CAC073': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alpine', 13143, '32.84300', '-116.76110'), ('Bonita', 12401, '32.66750', '-117.02990'), ('Bonsall', 3401, '33.28250', '-117.22020'), ('Borrego Springs', 2535, '33.23870', '-116.35450'), ('Bostonia', 15169, '32.81980', '-116.94570'), ('Camp Pendleton North', 8197, '33.31400', '-117.31460'), ('Camp Pendleton South', 11299, '33.23330', '-117.37350'), ('Carlsbad', 78247, '33.12380', '-117.28590'), ('Casa De Oro-Mount Helix', 18874, '32.76540', '-116.93810'), ('Chula Vista', 54260, '32.64000', '-117.08330'), ('Coronado', 24100, '32.68580', '-117.18220'), ('Del Mar', 4389, '32.96490', '-117.26240'), ('El Cajon', 94869, '32.80250', '-116.96080'), ('Encinitas', 58014, '33.04770', '-117.26260'), ('Escondido', 133559, '33.13640', '-117.07130'), ('Fallbrook', 29100, '33.36860', '-117.23780'), ('Granite Hills', 3246, '32.80300', '-116.90380'), ('Harbison Canyon', 3645, '32.81940', '-116.82950'), ('Hidden Meadows', 3463, '33.22520', '-117.11170'), ('Imperial Beach', 26992, '32.57020', '-117.11860'), ('Jamul', 5920, '32.72020', '-116.88880'), ('Julian', 1621, '33.07310', '-116.58740'), ('Lake San Marcos', 4138, '33.11910', '-117.20910'), ('Lakeside', 19560, '32.84900', '-116.90990'), ('La Mesa', 54749, '32.76960', '-117.01890'), ('Lemon Grove', 24918, '32.73340', '-117.03280'), ('National City', 54260, '32.66600', '-117.09850'), ('Oceanside', 161029, '33.19580', '-117.37860'), ('Pine Valley', 1501, '32.85540', '-116.50120'), ('Poway', 48044, '32.98550', '-117.01790'), ('Rainbow', 2026, '33.40520', '-117.14750'), ('Ramona', 15691, '33.03610', '-116.87010'), ('Rancho San Diego', 20155, '32.74730', '-116.93450'), ('San Diego', 54260, '32.71530', '-117.15640'), ('San Diego Country', 9262, '33.00660', '-116.78280'), ('San Marcos', 54977, '33.13660', '-117.17310'), ('Santee', 52975, '32.85510', '-116.98270'), ('Solana Beach', 12979, '32.99580', '-117.25590'), ('Spring Valley', 26663, '32.72080', '-116.98890'), ('Valley Center', 7323, '33.21740', '-117.01100'), ('Vista', 89857, '33.18880', '-117.23820')], 'partOfState': 'southwest', 'wfo': 'SGX'}, +'CAC075': {'fullStateName': 'California', 'state': 'CA', 'cities': [('San Francisco', 0, '37.77493', '-122.41942')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC077': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Acampo', 3456, '38.17470', '-121.27750'), ('August', 7808, '37.97890', '-121.26100'), ('Camanche Reservoir', 3179, '38.22500', '-121.02160'), ('Country Club', 9462, '37.96900', '-121.33970'), ('Escalon', 5963, '37.78950', '-120.99620'), ('French Camp', 4109, '37.88280', '-121.27870'), ('Garden Acres', 9747, '37.96390', '-121.22830'), ('Kennedy', 9747, '37.93000', '-121.25170'), ('Lathrop', 10445, '37.82090', '-121.27660'), ('Lincoln Village', 4216, '38.00420', '-121.33350'), ('Linden', 1103, '38.01890', '-121.09990'), ('Lockeford', 3179, '38.15160', '-121.15550'), ('Lodi', 56999, '38.12320', '-121.29440'), ('Manteca', 49258, '37.80230', '-121.22350'), ('Morada', 3726, '38.03870', '-121.24470'), ('Ripon', 10146, '37.73510', '-121.12650'), ('Stockton', 243771, '37.96990', '-121.30670'), ('Tracy', 56929, '37.73700', '-121.43190'), ('Victor', 3179, '38.13810', '-121.20500'), ('Waterloo', 3726, '38.03470', '-121.18580'), ('Woodbridge', 3456, '38.16340', '-121.31730')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC079': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Arroyo Grande', 15851, '35.12530', '-120.58360'), ('Atascadero', 26411, '35.48550', '-120.68790'), ('Black Mountain', 44174, '35.39000', '-120.35000'), ('California Valley', 1938, '35.32000', '-120.00000'), ('Cambria', 6232, '35.54650', '-121.07990'), ('Cayucos', 2943, '35.43800', '-120.88480'), ('Hearst Castle', 6232, '35.69000', '-121.17000'), ('Lake Nacimiento', 2176, '35.72850', '-120.87850'), ('Morro Bay', 10350, '35.36000', '-120.83000'), ('Nipomo', 12626, '35.03240', '-120.48300'), ('Paso Robles', 24297, '35.63230', '-120.66420'), ('Pismo Beach', 11656, '35.14000', '-120.63000'), ('San Luis Obispo', 44174, '35.27290', '-120.66480'), ('San Miguel', 1427, '35.75170', '-120.69220'), ('Santa Margarita', 44174, '35.38000', '-120.62000'), ('Shandon', 24297, '35.65000', '-120.38000'), ('Templeton', 4687, '35.55390', '-120.70840')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAC081': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Atherton', 7194, '37.45470', '-122.20240'), ('Belmont', 25123, '37.51530', '-122.29510'), ('Brisbane', 3597, '37.68930', '-122.39990'), ('Broadmoor', 4026, '37.69170', '-122.47960'), ('Burlingame', 28158, '37.59030', '-122.36260'), ('Colma', 1191, '37.67380', '-122.45340'), ('Daly City', 103621, '37.68700', '-122.46740'), ('East Palo Alto', 29506, '37.46610', '-122.13220'), ('El Granada', 5724, '37.50970', '-122.46660'), ('Emerald Lake Hills', 3899, '37.46460', '-122.26690'), ('Highlands', 2644, '37.51990', '-122.34280'), ('Hillsborough', 10825, '37.55750', '-122.35620'), ('Menlo Park', 30785, '37.48000', '-122.14400'), ('Millbrae', 20718, '37.59910', '-122.40100'), ('Montara', 2950, '37.54540', '-122.49720'), ('North Fair Oaks', 15440, '37.47450', '-122.20180'), ('Pacifica', 38390, '37.61120', '-122.47630'), ('Portola Valley', 4462, '37.37170', '-122.21850'), ('San Bruno', 40165, '37.62480', '-122.42800'), ('San Carlos', 27718, '37.49760', '-122.26740'), ('San Mateo', 92482, '37.56130', '-122.31200'), ('West Menlo Park', 3629, '37.43370', '-122.20190'), ('Woodside', 5352, '37.42480', '-122.25930')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC083': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Pine Mountain', 92325, '34.69700', '-119.65420'), ('Buellton', 3828, '34.62590', '-120.20120'), ('Carpinteria', 14194, '34.38790', '-119.51320'), ('Cuyama', 1865, '34.94000', '-119.65000'), ('Figueroa Mountain', 4584, '34.74330', '-119.98510'), ('Gaviota', 5332, '34.47170', '-120.21480'), ('Goleta', 18344, '34.43580', '-119.82760'), ('Guadalupe', 5659, '34.96350', '-120.57470'), ('Lake Cachuma', 4584, '34.58280', '-119.98030'), ('Lompoc', 41103, '34.66060', '-120.46960'), ('Miranda Pine Mountain', 77423, '35.03780', '-120.03700'), ('Point Arguello', 41103, '34.57000', '-120.63000'), ('Santa Barbara', 92325, '34.42850', '-119.72190'), ('Santa Maria', 77423, '34.93700', '-120.43690'), ('Santa Ynez', 4584, '34.60800', '-120.10290'), ('Solvang', 5332, '34.59250', '-120.13930'), ('Vandenberg AFB', 6151, '34.74930', '-120.51730'), ('Vandenberg Village', 5802, '34.71120', '-120.46260')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAC085': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Cambrian Park', 3258, '37.25570', '-121.92780'), ('Campbell', 36048, '37.27880', '-121.95340'), ('Cupertino', 50546, '37.31440', '-122.04730'), ('East Foothills', 8133, '37.38110', '-121.81640'), ('Gilroy', 41464, '37.01010', '-121.57810'), ('Lexington Hills', 2454, '37.16480', '-121.97180'), ('Los Altos', 27693, '37.36920', '-122.09550'), ('Los Altos Hills', 7902, '37.36800', '-122.13930'), ('Los Gatos', 28592, '37.23070', '-121.95980'), ('Loyola', 3478, '37.35140', '-122.09950'), ('Milpitas', 62698, '37.43460', '-121.89190'), ('Monte Sereno', 3483, '37.23830', '-121.98860'), ('Morgan Hill', 33556, '37.13050', '-121.63960'), ('Mountain View', 70708, '37.40200', '-122.07760'), ('Palo Alto', 58598, '37.39920', '-122.13940'), ('Rancho Rinconada', 50546, '37.31500', '-122.00180'), ('San Jose', 894943, '37.30400', '-121.84980'), ('San Martin', 4230, '37.08490', '-121.60630'), ('Santa Clara', 102361, '37.36500', '-121.96670'), ('Saratoga', 29843, '37.26780', '-122.02300'), ('Stanford', 13315, '37.42410', '-122.16490'), ('Sunnyvale', 131760, '37.38580', '-122.02550')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC087': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aptos', 9396, '36.99190', '-121.89960'), ('Aptos Hills-Larkin', 2361, '36.96100', '-121.83020'), ('Ben Lomond', 2364, '37.10340', '-122.08450'), ('Boulder Creek', 4081, '37.13750', '-122.12790'), ('Capitola', 10033, '36.97610', '-121.95300'), ('Corralitos', 2431, '36.99660', '-121.79860'), ('Day Valley', 3587, '37.03580', '-121.86130'), ('Felton', 1051, '37.04270', '-122.07220'), ('Freedom', 6000, '36.94000', '-121.78930'), ('Interlaken', 7328, '36.95140', '-121.73290'), ('Live Oak', 16628, '36.98370', '-121.97950'), ('Santa Cruz', 54593, '36.97330', '-122.03580'), ('Scotts Valley', 11385, '37.05630', '-122.00800'), ('Soquel', 5081, '36.99380', '-121.94670'), ('Watsonville', 44265, '36.91920', '-121.76850')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC089': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Anderson', 9022, '40.44990', '-122.29420'), ('Beegum', 2315, '40.34500', '-122.85690'), ('Big Bend', 3217, '41.02080', '-121.91000'), ('Burney', 3217, '40.88430', '-121.66870'), ('Cassel', 3217, '40.91920', '-121.54670'), ('Castella', 1923, '41.13860', '-122.31660'), ('Castle Crag', 1923, '41.09460', '-122.29080'), ('Centerville', 80865, '40.51830', '-122.48420'), ('Central Valley', 9008, '40.67960', '-122.37490'), ('Clark Creek', 3217, '41.03780', '-121.66860'), ('Cloverdale', 80865, '40.47360', '-122.47470'), ('Cottonwood', 2960, '40.39030', '-122.28000'), ('Dana', 3217, '41.11170', '-121.56360'), ('Fall River Mills', 3217, '41.00470', '-121.43720'), ('Fisher', 1923, '41.03640', '-122.39220'), ('French Gulch', 1305, '40.70080', '-122.63720'), ('Glenburn', 3217, '41.06140', '-121.48920'), ('Hillcrest', 3217, '40.86390', '-121.90750'), ('Igo', 80865, '40.50550', '-122.54060'), ('Inwood', 9022, '40.52420', '-121.95610'), ('Johnson Park', 3217, '40.91770', '-121.62610'), ('Keswick', 4340, '40.62250', '-122.46470'), ('Knob', 2315, '40.38890', '-122.98690'), ('Lakehead', 4340, '40.90530', '-122.37810'), ('Lake Mccloud', 1343, '41.13110', '-122.06940'), ('Lassen National Park', 0, '40.50000', '-121.53000'), ('Manzanita Lake', 3217, '40.53560', '-121.55970'), ('McArthur', 3217, '41.05030', '-121.39810'), ('Millville', 9022, '40.54940', '-122.17420'), ('Montgomery Creek', 3217, '40.84170', '-121.92250'), ('Mountain Gate', 4340, '40.71640', '-122.33050'), ("O'brien", 4340, '40.81220', '-122.32310'), ('Old Station', 3217, '40.67530', '-121.42970'), ('Olinda', 9022, '40.44390', '-122.40640'), ('Ono', 80865, '40.47530', '-122.61690'), ('Palo Cedro', 9022, '40.56390', '-122.23780'), ('Pine Grove', 9008, '40.66500', '-122.35220'), ('Platina', 2315, '40.35970', '-122.89360'), ('Pollard Flat', 1923, '40.99580', '-122.41720'), ('Redding', 80865, '40.57240', '-122.36490'), ('Round Mountain', 3217, '40.79420', '-121.94080'), ('Shasta Dam', 4340, '40.71500', '-122.41660'), ('Shingletown', 2960, '40.49250', '-121.88810'), ('Sims', 1923, '41.07190', '-122.35390'), ('Sugarloaf', 4340, '40.85830', '-122.39580'), ('Viola', 3217, '40.51810', '-121.67670'), ('Vollmers', 4340, '40.94310', '-122.43890'), ('Whiskeytown', 4340, '40.63890', '-122.55860'), ('Whitmore', 3217, '40.62940', '-121.91560'), ('Yolla Bolly District', 2315, '40.36310', '-122.96420')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAC091': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alleghany', 3001, '39.46970', '-120.84220'), ('Bassetts', 2227, '39.61970', '-120.58640'), ('Calpine', 2227, '39.67000', '-120.44000'), ('Dog Valley', 2133, '39.55000', '-120.04000'), ('Downieville', 3001, '39.55940', '-120.82660'), ('Gibsonville', 4271, '39.74030', '-120.90780'), ('Loyalton', 862, '39.67660', '-120.24340'), ('Pike', 3001, '39.43920', '-120.99690'), ('Sattley', 2227, '39.62000', '-120.43000'), ('Sierra City', 2227, '39.56580', '-120.63280'), ('Sierraville', 862, '39.59000', '-120.37000'), ('Stampede Reservoir', 2133, '39.48000', '-120.13000')], 'partOfState': 'northern', 'wfo': 'STOREV'}, +'CAC093': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bray', 886, '41.64420', '-121.96970'), ('Callahan', 781, '41.30970', '-122.80030'), ('Dorris', 886, '41.96520', '-121.92000'), ('Dunsmuir', 1923, '41.23350', '-122.26990'), ('Etna', 781, '41.45930', '-122.89280'), ('Fort Jones', 660, '41.60710', '-122.83980'), ('Gazelle', 2978, '41.52080', '-122.51920'), ('Greenview', 660, '41.55080', '-122.90440'), ('Grenada', 1456, '41.64720', '-122.51890'), ('Happy Camp', 1126, '41.79330', '-123.37830'), ('Hilt', 16234, '41.99500', '-122.62220'), ('Klamath River', 7290, '41.86140', '-122.82440'), ('Macdoel', 886, '41.82690', '-122.00420'), ('McCloud', 1343, '41.25480', '-122.13520'), ('Montague', 1456, '41.72750', '-122.52960'), ('Mount Shasta', 3621, '41.32250', '-122.31470'), ('Pondosa', 3217, '41.19940', '-121.68780'), ('Scott Bar', 660, '41.74000', '-123.00000'), ('Seiad Valley', 660, '41.84060', '-123.19140'), ('Somes Bar', 1743, '41.37640', '-123.47500'), ('Tennant', 886, '41.58390', '-121.91220'), ('Tulelake', 1020, '41.95420', '-121.47480'), ('Weed', 2978, '41.41650', '-122.37840'), ('Yreka', 7290, '41.72910', '-122.63150')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'CAC095': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Benicia', 26865, '38.07180', '-122.15410'), ('Collinsville', 56769, '38.07690', '-121.84890'), ('Cordelia', 96178, '38.21050', '-122.13470'), ('Cordelia Junction', 96178, '38.21690', '-122.13860'), ('Denverton', 26118, '38.22470', '-121.89640'), ('Dixon', 16103, '38.44470', '-121.82370'), ('Fairfield', 96178, '38.25250', '-122.04170'), ('Liberty Farms', 4571, '38.31300', '-121.69330'), ('Montezuma', 56769, '38.09050', '-121.87170'), ('Rio Vista', 4571, '38.16510', '-121.69470'), ('Rockville', 96178, '38.24420', '-122.12110'), ('Suisun City', 26118, '38.24570', '-122.00980'), ('Vacaville', 88625, '38.36230', '-121.96610'), ('Vallejo', 116760, '38.10750', '-122.23330')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC097': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bodega Bay', 1423, '38.32280', '-123.02980'), ('Boyes Hot Springs', 6665, '38.31300', '-122.48500'), ('Cloverdale', 6831, '38.79970', '-123.01740'), ('Cotati', 6471, '38.32780', '-122.70950'), ('Eldridge', 1534, '38.33520', '-122.50690'), ('El Verano', 3954, '38.29770', '-122.48940'), ('Fetters Hot Spring', 2505, '38.32230', '-122.47980'), ('Forestville', 2370, '38.48110', '-122.88860'), ('Glen Ellen', 992, '38.35580', '-122.53840'), ('Graton', 1815, '38.43770', '-122.86530'), ('Guerneville', 2441, '38.50810', '-122.98490'), ('Healdsburg', 10722, '38.61850', '-122.86280'), ('Larkfield-Wikiup', 7479, '38.51340', '-122.75250'), ('Monte Rio', 1104, '38.46530', '-123.01230'), ('Occidental', 1272, '38.39540', '-122.93790'), ('Petaluma', 54548, '38.24110', '-122.62550'), ('Rohnert Park', 42236, '38.34780', '-122.69770'), ('Roseland', 6369, '38.42150', '-122.72490'), ('Santa Rosa', 147595, '38.44860', '-122.70080'), ('Sebastopol', 7774, '38.39930', '-122.82590'), ('Sonoma', 9128, '38.29030', '-122.45930'), ('South Santa Rosa', 147595, '38.40490', '-122.72640'), ('Temelec', 1556, '38.25630', '-122.50330'), ('Windsor', 22744, '38.54570', '-122.79780')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAC099': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Ceres', 34609, '37.59940', '-120.95620'), ('Denair', 3446, '37.52960', '-120.80010'), ('Eugene', 15503, '37.89300', '-120.84580'), ('Hughson', 3980, '37.60100', '-120.86670'), ('Keyes', 4575, '37.56420', '-120.91740'), ('La Grange', 3017, '37.66360', '-120.46250'), ('Modesto', 188856, '37.65980', '-120.99390'), ('Newman', 7093, '37.31510', '-121.02140'), ('Oakdale', 15503, '37.76820', '-120.85180'), ('Patterson', 11606, '37.47430', '-121.12760'), ('Riverbank', 15826, '37.73280', '-120.94510'), ('Salida', 12560, '37.70840', '-121.08480'), ('Turlock', 55810, '37.50490', '-120.85040'), ('Waterford', 6924, '37.64560', '-120.76460')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC101': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Cranmore', 2885, '38.98800', '-121.80550'), ('Karnak', 49151, '38.78500', '-121.65440'), ('Kirkville', 49151, '38.90880', '-121.79170'), ('Live Oak', 6229, '39.27580', '-121.65880'), ('Meridian', 5402, '39.14330', '-121.91330'), ('Nicolaus', 11061, '38.90330', '-121.57670'), ('Pennington', 5382, '39.29110', '-121.79220'), ('Pleasant Grove', 10466, '38.82380', '-121.48270'), ('Robbins', 49151, '38.87030', '-121.70530'), ('South Yuba City', 12651, '39.11650', '-121.63800'), ('Sutter', 2885, '39.15930', '-121.74620'), ('Tierra Buena', 4587, '39.15860', '-121.66770'), ('Tisdale', 2885, '39.04050', '-121.78500'), ('Tudor', 11061, '39.00500', '-121.62250'), ('Verona', 49151, '38.78610', '-121.61750'), ('Yuba City', 36758, '39.13550', '-121.62270')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC103': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Black Butte Dam', 6281, '39.81660', '-122.33530'), ('Black Butte Lake', 6281, '39.81750', '-122.33670'), ('Black Butte Summit', 6281, '39.81550', '-122.35170'), ('Blossom', 13147, '40.17750', '-122.42220'), ('Corning', 6741, '39.92630', '-122.18200'), ('Dairyville', 13147, '40.25530', '-122.20750'), ('Flournoy', 6741, '39.92050', '-122.43500'), ('Henleyville', 6741, '39.96190', '-122.32550'), ('Los Molinos', 1952, '40.02760', '-122.09720'), ('Lyonsville', 1952, '40.30940', '-121.73690'), ('Manton', 2960, '40.43530', '-121.86890'), ('Mineral', 2316, '40.34780', '-121.59390'), ('Paskenta', 6741, '39.88470', '-122.54470'), ('Paynes Creek', 1952, '40.33560', '-121.91390'), ('Red Bluff', 13147, '40.17380', '-122.24040'), ('Richfield', 6741, '39.97500', '-122.17550'), ('Rosewood', 2960, '40.26970', '-122.55530'), ('Saddle Camp', 2315, '40.16660', '-122.80000'), ('Vina', 1952, '39.93300', '-122.05270')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAC105': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Bar', 2315, '40.73000', '-123.25000'), ('Burnt Ranch', 1743, '40.82000', '-123.47000'), ('Carrville', 3370, '41.07000', '-122.72000'), ('Del Loma', 2315, '40.78000', '-123.33000'), ('Denny', 1743, '40.95000', '-123.38000'), ('Douglas City', 3370, '40.65000', '-122.95000'), ('Forest Glen', 2315, '40.38000', '-123.32000'), ('Hayfork', 2315, '40.57000', '-123.13000'), ('Helena', 3370, '40.77000', '-123.13000'), ('Hyampom', 2315, '40.62000', '-123.45000'), ('Junction City', 3370, '40.73000', '-123.05000'), ('Lewiston', 1305, '40.70000', '-122.80000'), ('Peanut', 2315, '40.47000', '-123.17000'), ('Ruth', 2315, '40.28000', '-123.40000'), ('Salyer', 1743, '40.90000', '-123.57000'), ('Trinity Center', 1305, '41.00000', '-122.70000'), ('Weaverville', 3554, '40.77000', '-122.95000'), ('Zenia', 1188, '40.20000', '-123.48000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAC107': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alpaugh', 14458, '35.88760', '-119.48370'), ('Camp Nelson', 6730, '36.13970', '-118.61240'), ('Dinuba', 16844, '36.54560', '-119.38730'), ('Earlimart', 6583, '35.88090', '-119.27050'), ('Exeter', 9168, '36.29460', '-119.14300'), ('Farmersville', 8737, '36.30410', '-119.20690'), ('Giant Forest', 6651, '36.56440', '-118.77260'), ('Goshen', 91565, '36.35110', '-119.42060'), ('Grant Grove', 2691, '36.74020', '-118.96230'), ('Johnsondale', 1736, '35.97320', '-118.54010'), ('Lemon Cove', 6651, '36.38350', '-119.02450'), ('Lindsay', 10297, '36.20630', '-119.08880'), ('Lodgepole', 6651, '36.60440', '-118.73040'), ('Pixley', 2586, '35.97290', '-119.28720'), ('Porterville', 39615, '36.06460', '-119.02700'), ('Richgrove', 2723, '35.79670', '-119.10570'), ('Springville', 6730, '36.13050', '-118.81680'), ('Three Rivers', 6651, '36.44320', '-118.90230'), ('Tipton', 1790, '36.05810', '-119.31190'), ('Tulare', 43994, '36.19510', '-119.34310'), ('Visalia', 91565, '36.32540', '-119.32060'), ('Woodlake', 6651, '36.41280', '-119.09740')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAC109': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Buck Meadows Fss', 3388, '37.82220', '-120.09720'), ('Cedar Ridge', 5123, '38.06580', '-120.27580'), ('Columbia', 2405, '38.02670', '-120.40180'), ('Dardanelle', 1485, '38.34190', '-119.83220'), ('East Sonora', 2078, '37.98050', '-120.33930'), ('Groveland-Big Oak', 3388, '37.84550', '-120.19640'), ('Hetch Hetchy', 1485, '37.94750', '-119.78800'), ('Jamestown', 3017, '37.95730', '-120.41390'), ('Jupiter', 2586, '38.12250', '-120.28160'), ('Kennedy Meadow', 1485, '38.31160', '-119.74470'), ('Keystone', 3017, '37.83530', '-120.50660'), ('Long Barn', 1485, '38.09300', '-120.13330'), ('Mi-Wuk Village', 1485, '38.05800', '-120.17630'), ('Moccasin', 3388, '37.81080', '-120.29890'), ('Mono Vista', 3072, '38.01150', '-120.26970'), ('Phoenix Lake-Cedar', 5123, '38.02320', '-120.30070'), ('Pinecrest', 1485, '38.18860', '-119.98970'), ('Smith Station', 3388, '37.81280', '-120.12030'), ('Sonora', 4423, '37.98360', '-120.38160'), ('Soulsbyville', 1729, '37.99260', '-120.25990'), ('Springfield', 2405, '38.02080', '-120.41140'), ('Strawberry', 1485, '38.19830', '-120.00830'), ('Tuolumne City', 1865, '37.96280', '-120.24030'), ('Tuolumne Meadows', 7093, '37.87430', '-119.35640'), ('Tuttletown', 3017, '37.99160', '-120.45860'), ('Twain Harte', 2586, '38.04050', '-120.23260')], 'partOfState': 'northern', 'wfo': 'HNXSTO'}, +'CAC111': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Camarillo', 57077, '34.22250', '-119.02940'), ('Fillmore', 13643, '34.40020', '-118.91850'), ('Lake Casitas', 4199, '34.39000', '-119.34000'), ('Lake Piru', 1196, '34.47000', '-118.75000'), ('Lockwood Valley', 2348, '34.75000', '-119.08000'), ('Moorpark', 31415, '34.28510', '-118.87760'), ('Ojai', 7862, '34.44910', '-119.24570'), ('Oxnard', 170358, '34.19740', '-119.21370'), ('Piru', 1196, '34.40730', '-118.79870'), ('Point Mugu', 57077, '34.09000', '-119.06000'), ('Port Hueneme', 21845, '34.16210', '-119.20340'), ('Reyes Peak', 3750, '34.63000', '-119.28000'), ('Santa Paula', 28598, '34.35230', '-119.06930'), ('Simi Valley', 111351, '34.26300', '-118.75130'), ('Thousand Oaks', 117005, '34.19270', '-118.86760'), ('Topatopa Peak', 13643, '34.54000', '-118.99000'), ('Ventura', 100916, '34.26590', '-119.25840')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAC113': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Brooks', 1858, '38.74160', '-122.14690'), ('Cadenasso', 1858, '38.71440', '-122.12800'), ('Capay', 1858, '38.71610', '-122.04690'), ('Capay Dam', 1858, '38.71330', '-122.08330'), ('Davis', 60308, '38.55490', '-121.73590'), ('Dunnigan', 2332, '38.88530', '-121.96860'), ('El Macero', 60308, '38.54690', '-121.69300'), ('Esparto', 1858, '38.69220', '-122.01610'), ('Guinda', 1858, '38.82920', '-122.19280'), ('Knights Landing', 49151, '38.79970', '-121.71720'), ('Madison', 1858, '38.67940', '-121.96720'), ('Raley Field', 31615, '38.57930', '-121.51860'), ('Rumsey', 2332, '38.88830', '-122.23640'), ('Tancred', 1858, '38.76530', '-122.16250'), ('West Point', 34309, '38.39920', '-121.52640'), ('West Sacramento', 31615, '38.55670', '-121.54780'), ('Winters', 6125, '38.53210', '-121.98020'), ('Woodland', 49151, '38.67690', '-121.76660'), ('Yolo', 49151, '38.73190', '-121.80660'), ('Yolo County Airport', 60308, '38.57890', '-121.85640'), ('Yolo Fliers Club', 49151, '38.68000', '-121.86890'), ('Zamora', 49151, '38.79670', '-121.88080')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAC115': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Arboga', 11061, '39.05140', '-121.55470'), ('Beale AFB', 5115, '39.11370', '-121.36130'), ('Browns Valley', 2075, '39.24220', '-121.40800'), ('Brownsville', 1069, '39.47330', '-121.26800'), ('Camptonville', 3001, '39.45190', '-121.04750'), ('Challenge', 1069, '39.46150', '-121.25890'), ('Dobbins', 1069, '39.37160', '-121.20500'), ('Frenchtown', 1069, '39.38800', '-121.25390'), ('Hammonton', 6912, '39.19300', '-121.41970'), ('Iowa City', 2075, '39.28330', '-121.47640'), ('Linda', 13474, '39.12280', '-121.55470'), ('Loma Rica', 2075, '39.31870', '-121.40040'), ('Marysville', 12268, '39.15160', '-121.58230'), ('Olivehurst', 11061, '39.08430', '-121.54750'), ('Oregon House', 1069, '39.35640', '-121.27800'), ('Smartville', 1387, '39.20750', '-121.29750'), ('Stanfield Hill', 2075, '39.34250', '-121.33190'), ('Timbuctoo', 6912, '39.21690', '-121.31750'), ('Wheatland', 2275, '39.01300', '-121.42670')], 'partOfState': 'central', 'wfo': 'STOREV'}, +'COC001': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Adams City', 20991, '39.81500', '-104.90500'), ('Barr Lake', 20905, '39.95000', '-104.78000'), ('Bennett', 2021, '39.75510', '-104.42340'), ('Brighton', 20905, '39.95800', '-104.79480'), ('Commerce City', 20991, '39.81400', '-104.86840'), ('Coronado', 100940, '39.87000', '-105.05000'), ('Derby', 6423, '39.83940', '-104.91810'), ('Federal Heights', 12065, '39.86510', '-105.01590'), ('Henderson', 0, '39.92000', '-104.87000'), ('Leader', 0, '39.90000', '-104.05800'), ('Manila Village', 0, '39.75700', '-104.51700'), ('Northglenn', 31575, '39.90570', '-104.97790'), ('Shamrock', 0, '39.88800', '-103.81300'), ('Shaw Hgts', 100940, '39.87000', '-105.03000'), ('Sherrelwood', 17657, '39.83780', '-105.00090'), ('Thornton', 82384, '39.89200', '-104.95520'), ('Watkins', 0, '39.75000', '-104.60000'), ('Welby', 12973, '39.83830', '-104.96470'), ('Western Hills', 17657, '39.83000', '-105.00000'), ('Westminster', 100940, '39.88150', '-105.05090'), ('Westminster East', 0, '39.82270', '-105.00370')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC003': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Alamosa', 7960, '37.46880', '-105.87310'), ('Blanca Peak', 0, '37.58000', '-105.49000'), ('Great Sand Dunes', 0, '37.74000', '-105.51500'), ('Hooper', 123, '37.73000', '-105.87760'), ('Mosca', 0, '37.65000', '-105.88000'), ('San Luis Lake', 0, '37.67000', '-105.72000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC005': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arapahoe Park', 0, '39.63600', '-104.68800'), ('Aurora', 276393, '39.69900', '-104.72980'), ('Bow Mar', 847, '39.62580', '-105.05210'), ('Broadway Estates', 43520, '39.58000', '-104.95000'), ('Buckley ANGB', 276393, '39.70000', '-104.75000'), ('Byers', 1233, '39.71030', '-104.22470'), ('Castlewood', 25567, '39.58470', '-104.90050'), ('Cherry Creek Reservoir', 0, '39.63200', '-104.87000'), ('Cherry Hills Village', 5958, '39.63750', '-104.94690'), ('Cherry Knolls', 43520, '39.60000', '-104.97000'), ('Columbine Valley', 1132, '39.59810', '-105.03360'), ('Country Gardens', 0, '39.69200', '-104.31900'), ('Deer Trail', 598, '39.61690', '-104.04180'), ('Englewood', 31727, '39.64740', '-104.99380'), ('Greenwood Village', 11035, '39.61550', '-104.91500'), ('Jolly Ranch', 0, '39.64100', '-103.77500'), ('Littleton', 40340, '39.59460', '-105.01440'), ('Oea Building', 0, '39.63800', '-104.58300'), ('Sheridan', 5600, '39.64890', '-105.01710'), ('Smoky Hill', 0, '39.60700', '-104.77000'), ('Southglenn', 43520, '39.58740', '-104.95220'), ('Southwood', 0, '39.62000', '-104.98000'), ('Strasburg', 1402, '39.73500', '-104.30000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC007': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arboles', 232, '37.02000', '-107.40000'), ('Chimney Rock', 0, '37.20000', '-107.18000'), ('Chromo', 0, '37.03000', '-106.83000'), ('Gato', 0, '37.03000', '-107.18000'), ('Juanita', 0, '37.03000', '-107.13000'), ('Lonetree', 0, '37.17000', '-107.17000'), ('Pagosa Junction', 0, '37.03800', '-107.19900'), ('Pagosa Springs', 1591, '37.27010', '-107.01820')], 'partOfState': 'south central', 'wfo': 'GJT'}, +'COC009': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Campo', 150, '37.10470', '-102.57790'), ('Pritchett', 137, '37.37020', '-102.85860'), ('Springfield', 1562, '37.40660', '-102.61680'), ('Stonington', 0, '37.30000', '-102.18000'), ('Two Buttes', 67, '37.56050', '-102.39590'), ('Vilas', 110, '37.37410', '-102.44650'), ('Walsh', 723, '37.38550', '-102.27960')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC011': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Caddoa', 0, '38.07000', '-102.93000'), ('Fort Lyon', 0, '38.10000', '-103.15000'), ('Hasty', 0, '38.12000', '-102.97000'), ('John Martin Reservoir', 0, '38.01700', '-103.03300'), ('Las Animas', 2758, '38.06680', '-103.22540'), ('McClave', 0, '38.13000', '-102.85000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC013': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Allenspark', 496, '40.20000', '-105.52000'), ('Arapahoe Peak', 0, '40.02400', '-105.64600'), ('Boulder', 94673, '40.02690', '-105.25100'), ('Brainard Lake', 0, '40.07900', '-105.57500'), ('Caribou', 0, '39.98000', '-105.57000'), ('Crescent Village', 0, '39.93000', '-105.33000'), ('Eldora', 170, '39.95000', '-105.57000'), ('Eldorado Springs', 557, '39.93000', '-105.27000'), ('Gold Hill', 0, '40.06300', '-105.40800'), ('Gunbarrel', 9435, '40.06550', '-105.17110'), ('Hygiene', 0, '40.18000', '-105.17000'), ('Jamestown', 205, '40.11610', '-105.38960'), ('Lafayette', 23197, '39.99430', '-105.09800'), ('Longmont', 71093, '40.17280', '-105.11170'), ("Long's Peak", 0, '40.25800', '-105.61300'), ('Louisville', 18937, '39.96840', '-105.13960'), ('Lyons', 1585, '40.22290', '-105.26850'), ('Marshall', 0, '39.95000', '-105.23000'), ('Meeker Park', 496, '40.23000', '-105.53000'), ('Mt Audubon', 0, '40.09900', '-105.61700'), ('Nederland', 1394, '39.96260', '-105.50530'), ('Niwot', 4160, '40.09560', '-105.15580'), ('Peaceful Valley', 0, '40.13100', '-105.50000'), ('Raymond', 0, '40.15000', '-105.45000'), ('Riverside', 0, '40.17000', '-105.42000'), ('Superior', 9011, '39.92920', '-105.15490'), ('Ward', 169, '40.07250', '-105.51130')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COC014': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Broomfield', 38272, '39.94400', '-105.06170')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC015': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Alpine', 0, '38.71332', '-106.27568'), ('Buena Vista', 2195, '38.83270', '-106.14130'), ('Granite', 0, '39.05000', '-106.27000'), ('Maysville', 0, '38.54000', '-106.22000'), ('Nathrop', 0, '38.73000', '-106.08000'), ('Poncha Pass', 0, '38.43000', '-106.09000'), ('Poncha Springs', 466, '38.51410', '-106.07410'), ('Salida', 5504, '38.53270', '-105.99980'), ('St Elmo', 0, '38.70250', '-106.34860')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COC017': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arapahoe', 2021, '38.85000', '-102.17000'), ('Aroya', 0, '38.85000', '-103.13000'), ('Cheyenne Wells', 1010, '38.81940', '-102.35080'), ('Firstview', 0, '38.82000', '-102.53000'), ('Kit Carson', 253, '38.76310', '-102.79570'), ('Wild Horse', 0, '38.82000', '-103.00000')], 'partOfState': 'east central', 'wfo': 'GLD'}, +'COC019': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bakerville', 0, '39.69100', '-105.80400'), ('Berthoud Falls', 0, '39.77100', '-105.80800'), ('Berthoud Pass', 0, '39.79600', '-105.77500'), ('Blue Valley', 0, '39.70000', '-105.49200'), ('Brookvale', 0, '39.63300', '-105.42200'), ('Downieville', 0, '39.76800', '-105.61400'), ('Dumont', 0, '39.78000', '-105.60000'), ('Echo Lake', 0, '39.65000', '-105.60000'), ('Empire', 355, '39.75970', '-105.68260'), ('Floyd Hill', 0, '39.72100', '-105.40700'), ('Georgetown', 1088, '39.71520', '-105.69600'), ('Guanella Pass', 0, '39.59200', '-105.71300'), ('Idaho Springs', 1889, '39.74100', '-105.51190'), ('Lawson', 0, '39.76700', '-105.63300'), ('Loveland Pass', 0, '39.66500', '-105.87900'), ('Mt Evans', 0, '39.58600', '-105.64200'), ('Silver Plume', 203, '39.69610', '-105.72670'), ('St Marys Glacier', 0, '39.83600', '-105.64600')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COC021': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Antonito', 873, '37.07650', '-106.01020'), ('Bountiful', 0, '37.25000', '-105.98300'), ('Capulin', 0, '37.28000', '-106.12000'), ('Conejos', 0, '37.08000', '-106.02000'), ('Cumbres Pass', 0, '37.02000', '-106.43000'), ('La Jara', 877, '37.27440', '-105.95950'), ('Manassa', 1042, '37.17290', '-105.93600'), ('Ortiz', 0, '37.03000', '-106.03000'), ('Platoro', 0, '37.35000', '-106.53000'), ('Romeo', 375, '37.17160', '-105.98590'), ('Sanford', 817, '37.25740', '-105.90000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COC023': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Blanca', 391, '37.43890', '-105.51190'), ('Chama', 0, '37.17000', '-105.38000'), ('Fort Garland', 432, '37.43000', '-105.43000'), ('Garcia', 0, '37.00000', '-105.55000'), ('Jaroso', 0, '37.00000', '-105.63000'), ('Mesita', 0, '37.08000', '-105.58000'), ('San Acacio', 0, '37.22000', '-105.57000'), ('San Luis', 739, '37.20090', '-105.42360'), ('San Pablo', 0, '37.15000', '-105.40000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COC025': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Crowley', 187, '38.19360', '-103.85850'), ('Olney Springs', 389, '38.16730', '-103.94410'), ('Ordway', 1248, '38.22090', '-103.75680'), ('Sugar City', 279, '38.23290', '-103.66310')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC027': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Rosita', 0, '38.10000', '-105.33000'), ('Silver Cliff', 512, '38.11730', '-105.40450'), ('Westcliffe', 417, '38.13290', '-105.46510'), ('Wetmore', 0, '38.23000', '-105.08000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC029': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Austin', 0, '38.78000', '-107.93000'), ('Bowie', 0, '38.92000', '-107.53000'), ('Cedaredge', 1854, '38.89880', '-107.92630'), ('Cory', 0, '38.77000', '-107.98000'), ('Crawford', 366, '38.70510', '-107.60860'), ('Delta', 6400, '38.74480', '-108.07370'), ('Eckert', 2880, '38.84200', '-107.95000'), ('Grand Mesa', 0, '39.05000', '-107.87000'), ('Hotchkiss', 968, '38.80100', '-107.71790'), ('Lazear', 0, '38.78000', '-107.77000'), ('Orchard City', 2880, '38.81480', '-107.96360'), ('Paonia', 1497, '38.86950', '-107.58950')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC031': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Denver', 554636, '39.76800', '-104.87270'), ('Denver International Arpt', 0, '39.86500', '-104.67300'), ('Glendale', 4547, '39.70410', '-104.93460')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC033': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cahone', 0, '37.65000', '-108.82000'), ('Dove Creek', 698, '37.76600', '-108.90520'), ('Dunton', 0, '37.77000', '-108.10000'), ('Rico', 205, '37.68800', '-108.03100')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC035': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Acres Green', 3205, '39.55800', '-104.89600'), ('Beverly Hills', 0, '39.47500', '-104.87500'), ('Castle Rock', 20224, '39.37890', '-104.85130'), ('Castlewood Canyon', 0, '39.34500', '-104.76500'), ('Cheesman Reservoir', 0, '39.20800', '-105.27100'), ('Deckers', 0, '39.25000', '-105.23000'), ("Devil's Head", 0, '39.26000', '-105.10300'), ('Franktown', 99, '39.38000', '-104.75000'), ('Grandview Estates', 0, '39.54600', '-104.81900'), ('Greenland', 0, '39.15000', '-104.83000'), ('Highlands Ranch', 70931, '39.55400', '-104.96890'), ('Kassler', 4446, '39.48000', '-105.08000'), ('Larkspur', 234, '39.18160', '-104.89600'), ('Louviers', 237, '39.47000', '-105.00000'), ('Parker', 23558, '39.50960', '-104.76380'), ('Perry Park', 1180, '39.26000', '-104.98300'), ('Roxborough Park', 4446, '39.44200', '-105.07400'), ('Sedalia', 211, '39.43000', '-104.97000'), ('Shamballa', 0, '39.37000', '-105.00000'), ('Silver Heights', 0, '39.41800', '-104.86700'), ('Sprucewood', 0, '39.34900', '-105.12400'), ('Surrey Ridge', 0, '39.50000', '-104.87800'), ('The Pinery', 7253, '39.45520', '-104.73390'), ('Westcreek', 105, '39.15000', '-105.17000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC037': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Avon', 5561, '39.65250', '-106.53310'), ('Basalt', 2681, '39.36670', '-107.02700'), ('Bond', 0, '39.87000', '-106.70000'), ('Burns', 0, '39.87000', '-106.88000'), ('Dotsero', 0, '39.65000', '-107.05000'), ('Dowd', 0, '39.60000', '-106.45000'), ('Eagle', 3032, '39.65560', '-106.82540'), ('Eagle-Vail', 0, '39.62200', '-106.48910'), ('Edwards', 8257, '39.65000', '-106.60000'), ('El Jebel', 4488, '39.39980', '-107.08910'), ('Emma', 0, '39.39000', '-107.07000'), ('Gilman', 0, '39.53000', '-106.40000'), ('Gypsum', 3654, '39.64340', '-106.94770'), ('Mc Coy', 0, '39.92000', '-106.72000'), ('Minturn', 1068, '39.58430', '-106.42610'), ('Redcliff', 0, '39.52000', '-106.37000'), ('Red Cliff', 289, '39.50840', '-106.36950'), ('State Bridge', 0, '39.83000', '-106.60000'), ('Sweetwater', 0, '39.72000', '-107.02000'), ('Tennessee Pass', 0, '39.36400', '-106.31300'), ('Vail', 4531, '39.63950', '-106.35770'), ('Wolcott', 0, '39.70000', '-106.68000')], 'partOfState': 'central', 'wfo': 'GJT'}, +'COC039': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Agate', 0, '39.47000', '-103.95000'), ('Cedar Point', 0, '39.35000', '-103.81700'), ('Elbert', 0, '39.22000', '-104.53000'), ('Elizabeth', 1434, '39.36010', '-104.59950'), ('Fondis', 0, '39.22000', '-104.45000'), ('Kiowa', 581, '39.34530', '-104.46100'), ('Kutch', 0, '38.90000', '-103.87000'), ('Matheson', 0, '39.17000', '-103.98000'), ('Ponderosa Park', 3112, '39.39730', '-104.63550'), ('Simla', 663, '39.14080', '-104.08090')], 'partOfState': 'east central', 'wfo': 'BOU'}, +'COC041': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Air Force Academy', 0, '38.98000', '-104.86010'), ('Black Forest', 13247, '39.04630', '-104.66810'), ('Calhan', 896, '39.03440', '-104.29930'), ('Cascade', 0, '38.90000', '-104.97000'), ('Chipita Park', 0, '38.92000', '-105.00000'), ('Colorado Springs', 360890, '38.86320', '-104.75990'), ('Crystola', 0, '38.95000', '-105.02000'), ('Ellicott', 0, '38.84000', '-104.38000'), ('Falcon', 0, '38.93000', '-104.62000'), ('Fountain', 15197, '38.66690', '-104.69330'), ('Green Mountain Falls', 773, '38.93420', '-105.01970'), ('Manitou Springs', 4980, '38.85710', '-104.91090'), ('Monument', 1971, '39.07010', '-104.85710'), ('Palmer Lake', 2179, '39.11680', '-104.90590'), ('Peterson AFB', 360890, '38.83000', '-104.70000'), ('Peyton', 0, '39.03000', '-104.48000'), ('Pikes Peak', 0, '38.82000', '-105.04000'), ('Ramah', 117, '39.12190', '-104.16660'), ('Rush', 0, '38.84000', '-104.08000'), ('Schriever AFB', 0, '38.80000', '-104.52000'), ('Security', 0, '38.74400', '-104.71150'), ('Truckton', 0, '38.73000', '-104.18000'), ('Yoder', 0, '38.84000', '-104.22000')], 'partOfState': 'east central', 'wfo': 'PUB'}, +'COC043': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Canon City', 15431, '38.46400', '-105.23440'), ('Coaldale', 0, '38.37000', '-105.75000'), ('Cotopaxi', 0, '38.37000', '-105.68000'), ('Florence', 3653, '38.38520', '-105.11640'), ('Hillside', 0, '38.27000', '-105.60000'), ('Howard', 0, '38.45000', '-105.83000'), ('Penrose', 4070, '38.43110', '-105.01250'), ('Royal Gorge', 0, '38.46000', '-105.31300'), ('Swissvale', 0, '38.48000', '-105.92000'), ('Texas Creek', 0, '38.40000', '-105.58000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COC045': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Battlement Mesa', 3497, '39.44150', '-108.02450'), ('Carbondale', 5196, '39.39730', '-107.21400'), ('Cattle Creek', 0, '39.45000', '-107.25000'), ('Glenwood Springs', 7736, '39.54490', '-107.33010'), ('New Castle', 1984, '39.58540', '-107.53060'), ('Parachute', 1006, '39.44580', '-108.05510'), ('Rifle', 6784, '39.53930', '-107.77780'), ('Shoshone', 0, '39.58300', '-107.18000'), ('Silt', 1740, '39.54970', '-107.65380')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC047': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Aspen Springs', 0, '39.83300', '-105.48300'), ('Black Hawk', 118, '39.80030', '-105.49130'), ('Central City', 515, '39.79980', '-105.51240'), ('East Portal', 0, '39.90000', '-105.65000'), ('Pinecliffe', 0, '39.93000', '-105.43000'), ('Rollinsville', 0, '39.92000', '-105.50000'), ('Russell Gulch', 0, '39.77000', '-105.52000'), ('Tolland', 0, '39.90000', '-105.60000')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COC049': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Devils Thumb Park', 0, '39.96300', '-105.75000'), ('Elkdale', 0, '40.03800', '-105.87800'), ('Fraser', 910, '39.93700', '-105.79440'), ('Granby', 1525, '40.08840', '-105.93720'), ('Grand Lake', 447, '40.25120', '-105.82140'), ('Hot Sulphur Spring', 521, '40.07370', '-106.09910'), ('Kremmling', 1578, '40.05640', '-106.37630'), ('Parshall', 0, '40.05000', '-106.18000'), ('Rabbit Ears Pass', 0, '40.38300', '-106.61300'), ('Radium', 0, '39.95000', '-106.53000'), ('Rollins Pass', 0, '39.93300', '-105.68200'), ('Tabernash', 165, '39.98000', '-105.85000'), ('Williams Fork Reservoir', 0, '40.03500', '-106.20400'), ('Winter Park', 662, '39.88690', '-105.77940')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COC051': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Almont', 0, '38.67000', '-106.83000'), ('Crested Butte', 1529, '38.87010', '-106.98310'), ('Gunnison', 5409, '38.54470', '-106.92700'), ('Iola', 0, '38.43000', '-107.08000'), ('Marble', 105, '39.07140', '-107.18840'), ('Mount Crested Butt', 707, '38.90780', '-106.96620'), ('Ohio', 0, '38.57000', '-106.60000'), ('Parlin', 0, '38.50000', '-106.72000'), ('Pitkin', 124, '38.60810', '-106.51610'), ('Powderhorn', 0, '38.28000', '-107.12000'), ('Ragged Mtn', 0, '39.10000', '-107.40000'), ('Sapinero', 0, '38.43000', '-107.38000'), ('Somerset', 0, '38.92000', '-107.43000'), ('Tincup', 0, '38.75000', '-106.47000'), ('Waunita Hot Spgs', 0, '38.52000', '-106.50000'), ('White Pine', 0, '38.50000', '-106.40000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC053': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Lake City', 375, '38.02910', '-107.31030')], 'partOfState': 'southeast', 'wfo': 'GJT'}, +'COC055': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cuchara', 0, '37.38000', '-105.10000'), ('Farisita', 0, '37.75000', '-105.07000'), ('Gardner', 0, '37.78000', '-105.17000'), ('La Veta', 924, '37.51000', '-105.00730'), ('La Veta Pass', 0, '37.59000', '-105.18000'), ('Red Wing', 0, '37.73000', '-105.30000'), ('Walsenburg', 4182, '37.62670', '-104.77710')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC057': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Brownlee', 0, '40.80000', '-106.25000'), ('Cameron Pass', 0, '40.51700', '-105.88300'), ('Coalmont', 0, '40.57000', '-106.43000'), ('Cowdrey', 0, '40.85000', '-106.30000'), ('Gould', 0, '40.52000', '-106.02000'), ('Mt Zirkel', 0, '40.83300', '-106.66300'), ('Pearl', 0, '40.98000', '-106.53000'), ('Rand', 0, '40.45000', '-106.17000'), ('Spicer', 0, '40.45000', '-106.43000'), ('Walden', 734, '40.73060', '-106.28090')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COC059': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Applewood', 7123, '39.74720', '-105.16230'), ('Arvada', 102153, '39.82110', '-105.10670'), ('Aspen Park', 874, '39.52000', '-105.27000'), ('Bergen Park', 0, '39.69200', '-105.35800'), ('Buffalo Creek', 0, '39.38000', '-105.27000'), ('Chatfield Reservoir', 0, '39.55800', '-105.06400'), ('Columbine', 0, '39.58790', '-105.06880'), ('Conifer', 0, '39.52000', '-105.30000'), ('Edgewater', 5445, '39.75030', '-105.06260'), ('Evergreen', 9216, '39.63370', '-105.34230'), ('Foxton', 0, '39.42000', '-105.23000'), ('Genesee', 3699, '39.68570', '-105.27220'), ('Golden', 17159, '39.73890', '-105.21550'), ('Idledale', 0, '39.67000', '-105.23000'), ('Indian Hills', 1197, '39.62000', '-105.23000'), ('Ken Caryl', 30887, '39.57590', '-105.11170'), ('Kittredge', 954, '39.65000', '-105.30000'), ('Lakeside', 20, '39.77880', '-105.05750'), ('Lakewood', 144126, '39.69520', '-105.11360'), ('Leyden', 102153, '39.82000', '-105.12000'), ('Morrison', 430, '39.65450', '-105.18240'), ('Mountain View', 569, '39.77570', '-105.05570'), ('Pine', 0, '39.42000', '-105.33000'), ('Pleasant View', 0, '39.72000', '-105.17000'), ('Red Rocks Park', 0, '39.66400', '-105.20100'), ('Rocky Flats', 0, '39.89200', '-105.20400'), ('Shaffers Crossing', 0, '39.45000', '-105.33000'), ('South Platte', 0, '39.40000', '-105.17000'), ('Tiny Town', 0, '39.60000', '-105.22000'), ('Wah Keeney Park', 9216, '39.65000', '-105.33000'), ('Wellington Lake', 0, '39.31400', '-105.35800'), ('Wheat Ridge', 32913, '39.77340', '-105.09860'), ('White Ranch Open Space', 0, '39.81700', '-105.28100')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COC061': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arlington', 0, '38.33000', '-103.33000'), ('Brandon', 0, '38.45000', '-102.43000'), ('Chivington', 0, '38.44000', '-102.53000'), ('Eads', 747, '38.48150', '-102.77940'), ('Haswell', 84, '38.45280', '-103.16390'), ('Neegronda Reservoir', 0, '38.30000', '-102.75000'), ('Neenoshe Reservoir', 0, '38.34000', '-102.69000'), ('Queens Reservoir', 0, '38.29000', '-102.64000'), ('Sheridan Lake', 66, '38.46600', '-102.29350'), ('Sweetwater Reservoir', 0, '38.35000', '-102.76000'), ('Towner', 0, '38.47000', '-102.08000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC063': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bethune', 225, '39.30350', '-102.42290'), ('Burlington', 3678, '39.30540', '-102.27220'), ('Flagler', 612, '39.29400', '-103.06530'), ('Seibert', 180, '39.29810', '-102.86840'), ('Stratton', 669, '39.30300', '-102.60380'), ('Vona', 95, '39.30270', '-102.74360')], 'partOfState': 'east central', 'wfo': 'GLD'}, +'COC065': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Climax', 0, '39.37000', '-106.18000'), ('Independence Pass', 0, '39.10800', '-106.56400'), ('Leadville', 2821, '39.24680', '-106.29380'), ('Mt Elbert', 0, '39.11500', '-106.44600'), ('Mt Massive', 0, '39.18300', '-106.47500'), ('Turquoise Lake', 0, '39.27000', '-106.38000'), ('Twin Lakes', 0, '39.08000', '-106.38000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COC067': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Allison', 0, '37.02000', '-107.50000'), ('Bayfield', 1549, '37.23420', '-107.59490'), ('Bondad', 0, '37.08000', '-107.88000'), ('Breen', 0, '37.18000', '-108.08000'), ('Durango', 13922, '37.28600', '-107.86940'), ('Falfa', 0, '37.20000', '-107.78000'), ('Hermosa', 0, '37.42000', '-107.85000'), ('Hesperus', 0, '37.28000', '-108.03000'), ('Ignacio', 669, '37.11680', '-107.63440'), ('Kline', 0, '37.13000', '-108.12000'), ('La Plata', 0, '37.40000', '-108.07000'), ('Marvel', 0, '37.12000', '-108.13000'), ('Mayday', 0, '37.35000', '-108.07000'), ('Oxford', 0, '37.17000', '-107.72000'), ('Redmesa', 0, '37.10000', '-108.17000'), ('Rockwood', 0, '37.50000', '-107.80000'), ('Tacoma', 0, '37.48000', '-107.77000'), ('Tiffany', 0, '37.03000', '-107.53000'), ('Trimble', 0, '37.40000', '-107.85000'), ('Vallecito', 0, '37.38000', '-107.60000')], 'partOfState': 'southeast', 'wfo': 'GJT'}, +'COC069': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bellvue', 0, '40.63000', '-105.17000'), ('Berthoud', 4839, '40.30570', '-105.08120'), ('Buckeye', 0, '40.80000', '-105.12000'), ('Buckhorn Mountain', 0, '40.61300', '-105.32500'), ('Campion', 1832, '40.34470', '-105.09500'), ('Deer Ridge', 0, '40.38000', '-105.60000'), ('Drake', 0, '40.43000', '-105.33000'), ('Estes Park', 5413, '40.37210', '-105.52100'), ('Fort Collins', 118652, '40.55550', '-105.06850'), ('Four Corners', 0, '40.87100', '-105.91300'), ('Glendevey', 0, '40.78000', '-105.95000'), ('Glen Haven', 0, '40.45000', '-105.43000'), ('Harmony', 118652, '40.52500', '-105.08300'), ('Horsetooth Mountain', 0, '40.53900', '-105.19200'), ('Kelim', 0, '40.40000', '-104.95000'), ('Laporte', 2691, '40.62000', '-105.13000'), ('Livermore', 0, '40.75000', '-105.23000'), ('Loveland', 50608, '40.41860', '-105.07170'), ('Loveland Heights', 0, '40.38000', '-105.19000'), ('Masonville', 0, '40.48000', '-105.20000'), ('Mishowaka', 0, '40.69000', '-105.36700'), ('Olympus Hgt', 0, '40.38000', '-105.47000'), ('Owl Canyon', 0, '40.72000', '-105.13000'), ('Pingree Park', 0, '40.56700', '-105.58300'), ('Poudre Park', 0, '40.68000', '-105.30000'), ('Red Feather Lakes', 525, '40.80000', '-105.58000'), ('Rustic', 0, '40.70000', '-105.57000'), ('Teds Place', 0, '40.67000', '-105.18000'), ('Timnath', 223, '40.52930', '-104.98320'), ('Trail Ridge', 0, '40.43300', '-105.75000'), ('Virginia Dale', 0, '40.95000', '-105.35000'), ('Wellington', 2672, '40.70280', '-105.00190')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COC071': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Aguilar', 593, '37.40410', '-104.65440'), ('Boncarbo', 0, '37.22000', '-104.70000'), ('Branson', 77, '37.01460', '-103.87910'), ('Cokedale', 139, '37.14340', '-104.62150'), ('Delhi', 0, '37.63000', '-104.02000'), ('Gulnare', 0, '37.33000', '-104.75000'), ('Hoehne', 0, '37.28000', '-104.38000'), ('Kim', 65, '37.24630', '-103.35180'), ('Model', 0, '37.34000', '-104.23000'), ('Segundo', 0, '37.12000', '-104.77000'), ('Spanish Peaks', 0, '37.38000', '-104.95000'), ('Stonewall', 0, '37.15000', '-105.02000'), ('Thatcher', 0, '37.56000', '-104.03000'), ('Trinchera', 0, '37.05000', '-104.03000'), ('Trinidad', 9078, '37.16850', '-104.50570'), ('Tyrone', 0, '37.45000', '-104.20000'), ('Weston', 0, '37.13300', '-105.01700')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC073': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arriba', 244, '39.28380', '-103.27350'), ('Boyero', 0, '38.93000', '-103.27000'), ('Forder', 0, '38.67900', '-103.71700'), ('Genoa', 211, '39.27840', '-103.49940'), ('Hugo', 885, '39.13440', '-103.46710'), ('Karval', 0, '38.73000', '-103.53000'), ('Limon', 2071, '39.26610', '-103.68950'), ('Punkin Center', 0, '38.85300', '-103.70000'), ('Wild Horse Point', 0, '38.56300', '-103.50300')], 'partOfState': 'east central', 'wfo': 'BOU'}, +'COC075': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Atwood', 195, '40.55000', '-103.27000'), ('Crook', 128, '40.85830', '-102.80110'), ('Dailey', 0, '40.65000', '-102.72000'), ('Fleming', 426, '40.68120', '-102.83980'), ('Iliff', 213, '40.75790', '-103.06540'), ('Logan Corners', 0, '40.62500', '-103.35400'), ('Merino', 246, '40.48430', '-103.35350'), ('North Sterling Reservoir', 0, '40.78300', '-103.26700'), ('Padroni', 97, '40.77000', '-103.17000'), ('Pawnee Pass', 0, '40.62500', '-103.47800'), ('Peetz', 227, '40.96140', '-103.11420'), ('Proctor', 0, '40.80000', '-102.93000'), ('Reiradon Hill', 0, '40.58300', '-103.03800'), ('Sterling', 11360, '40.65090', '-103.19910'), ('St Petersburg', 0, '40.55700', '-102.81900'), ('Twin Buttes', 0, '40.91100', '-102.76900'), ('Westplains', 0, '40.86400', '-103.49900'), ('Willard', 0, '40.55000', '-103.48000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC077': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cameo', 0, '39.15000', '-108.32000'), ('Clifton', 17345, '39.07520', '-108.46340'), ('Collbran', 388, '39.23930', '-107.95860'), ('De Beque', 451, '39.33250', '-108.21370'), ('Escalante Forks', 0, '38.58000', '-108.40000'), ('Fruita', 6478, '39.15650', '-108.72730'), ('Fruitvale', 6936, '39.09320', '-108.47840'), ('Gateway', 0, '38.68248', '-108.97511'), ('Glade Park', 0, '39.00000', '-108.73000'), ('Grand Junction', 41986, '39.08730', '-108.55290'), ('Loma', 0, '39.20000', '-108.82000'), ('Mack', 0, '39.22000', '-108.87000'), ('Mesa', 0, '39.17000', '-108.13000'), ('Molina', 0, '39.18000', '-108.07000'), ('Orchard Mesa', 6456, '39.03380', '-108.52240'), ('Palisade', 2579, '39.10740', '-108.35780'), ('Plateau City', 0, '39.18000', '-107.98000'), ('Redlands', 8043, '39.08500', '-108.65080'), ('Skyway', 0, '39.05000', '-108.12000'), ('Whitewater', 0, '38.98000', '-108.43000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC079': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Creede', 377, '37.85060', '-106.92650'), ('Wagon Wheel Gap', 0, '37.77000', '-106.82000'), ('Wolf Creek Pass', 0, '37.48000', '-106.80000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COC081': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Axial', 0, '40.25000', '-107.78000'), ('Blue Mountain', 0, '40.25000', '-108.85000'), ('Craig', 9189, '40.51690', '-107.55340'), ('Dinosaur', 319, '40.24160', '-109.00800'), ('Elk Springs', 0, '40.35000', '-108.45000'), ('Fortification', 0, '40.82100', '-107.61700'), ('Great Divide', 0, '40.78000', '-107.82000'), ('Greystone', 0, '40.62000', '-108.67000'), ('Hamilton', 0, '40.37000', '-107.60000'), ('Hiawatha', 0, '40.98000', '-108.62000'), ('Juniper Springs', 0, '40.43000', '-107.95000'), ('Lay', 0, '40.52000', '-107.87000'), ('Loyd', 0, '40.27000', '-107.72000'), ('Maybell', 0, '40.52000', '-108.08000'), ('Powder Wash', 0, '40.95000', '-108.30000'), ('Slater', 0, '41.00000', '-107.37000'), ('Sparks', 0, '40.88000', '-108.55000'), ('Sunbeam', 0, '40.55000', '-108.18000')], 'partOfState': 'northwest', 'wfo': 'GJT'}, +'COC083': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arriola', 0, '37.43000', '-108.65000'), ('Cortez', 7977, '37.35150', '-108.57730'), ('Dolores', 857, '37.47450', '-108.49760'), ('Lebanon', 0, '37.45000', '-108.60000'), ('Lewis', 0, '37.50000', '-108.67000'), ('Mancos', 1119, '37.34650', '-108.29340'), ('Mesa Verde Natl Park', 0, '37.15000', '-108.48000'), ('Stoner', 0, '37.58000', '-108.32000'), ('Towaoc', 1097, '37.20990', '-108.72720'), ('Yellow Jacket', 0, '37.53000', '-108.72000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC085': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bedrock', 0, '38.32000', '-108.88000'), ('Cimmaron', 0, '38.45000', '-107.55000'), ('Maher', 0, '38.65000', '-107.58000'), ('Montrose', 12344, '38.47940', '-107.87140'), ('Naturita', 635, '38.21900', '-108.56800'), ('Nucla', 734, '38.26680', '-108.54960'), ('Olathe', 1573, '38.60570', '-107.98170'), ('Paradox', 0, '38.37000', '-108.95000'), ('Redvale', 0, '38.18000', '-108.42000'), ('Uravan', 0, '38.37000', '-108.73000'), ('Vancorum', 0, '38.23000', '-108.60000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC087': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Adena', 0, '40.01700', '-103.88600'), ('Adena School', 0, '40.11700', '-103.79200'), ('Antelope Springs', 0, '40.43800', '-103.71400'), ('Brush', 5117, '40.25680', '-103.63230'), ('Fort Morgan', 11034, '40.26520', '-103.79460'), ('Fort Morgan Airport', 11034, '40.33300', '-103.80000'), ('Gary', 0, '40.07400', '-103.58300'), ('Goodrich', 0, '40.35000', '-104.07000'), ('Hillrose', 254, '40.32450', '-103.52220'), ('Hoyt', 0, '40.02000', '-104.07000'), ('Hoyt Beet Dump', 0, '40.07400', '-104.05400'), ('Jackson Reservoir', 0, '40.38300', '-104.06700'), ('Log Lane Village', 1006, '40.27000', '-103.82840'), ('Orchard', 0, '40.33000', '-104.12000'), ('Snyder', 0, '40.32000', '-103.58000'), ('Twelve-Mile Corner', 0, '40.07300', '-103.79200'), ('Union', 0, '40.35000', '-103.50000'), ('Weldona', 0, '40.35000', '-103.97000'), ('Wiggins', 838, '40.23030', '-104.07330')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC089': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cheraw', 211, '38.10780', '-103.51070'), ('Fowler', 1206, '38.12830', '-104.02450'), ('Higbee', 0, '37.77000', '-103.45000'), ('La Junta', 7568, '37.98030', '-103.54440'), ('Manzanola', 525, '38.10880', '-103.86620'), ('Rocky Ford', 4286, '38.04990', '-103.72190'), ('Swink', 696, '38.01380', '-103.62730'), ('Timpas', 0, '37.82000', '-103.77000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC091': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Camp Bird', 0, '37.97000', '-107.73000'), ('Colona', 0, '38.28000', '-107.75000'), ('Ouray', 813, '38.02610', '-107.67190'), ('Red Mtn', 0, '37.90000', '-107.70000'), ('Ridgway', 713, '38.15580', '-107.75220')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC093': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('11-Mile Canyon Res', 0, '38.90400', '-105.48300'), ('Alma', 179, '39.28580', '-106.06470'), ('Antero Junction', 0, '38.92000', '-105.97000'), ('Antero Reservoir', 0, '38.99200', '-105.89200'), ('Bailey', 0, '39.40000', '-105.47000'), ('Como', 0, '39.32000', '-105.90000'), ('Fairplay', 610, '39.22380', '-105.99910'), ('Garo', 0, '39.12000', '-105.90000'), ('Glenisle', 0, '39.40800', '-105.50000'), ('Grant', 0, '39.45000', '-105.67000'), ('Guffey', 0, '38.75000', '-105.53000'), ('Harris Park', 0, '39.51100', '-105.50400'), ('Hartsel', 0, '39.02000', '-105.80000'), ('Highland Park', 0, '39.50100', '-105.52500'), ('Jefferson', 9011, '39.38000', '-105.80000'), ('Kenosha Pass', 0, '39.41300', '-105.75800'), ('Lake George', 0, '38.98000', '-105.37000'), ('Red Hill Pass', 0, '39.26500', '-105.96400'), ('Santa Maria', 0, '39.45000', '-105.63300'), ('Shawnee', 0, '39.42000', '-105.55000'), ('Singleton', 0, '39.44400', '-105.60300'), ('Tarryall', 0, '39.10000', '-105.43000'), ('Tarryall Reservoir', 0, '39.22900', '-105.60800'), ('Wilkerson Pass', 0, '39.04000', '-105.52500')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COC095': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Amherst', 0, '40.68000', '-102.17000'), ('Fairfield', 0, '40.73800', '-102.47900'), ('Haxtun', 982, '40.64270', '-102.62880'), ('Highland Center', 0, '40.52600', '-102.58900'), ('Holyoke', 2261, '40.58490', '-102.30370'), ('Paoli', 42, '40.61210', '-102.47240'), ('Pleasant Valley', 0, '40.61300', '-102.11700'), ('Wages', 0, '40.58400', '-102.45400')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC097': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Aspen', 5914, '39.19460', '-106.82690'), ('Meridith', 0, '39.35000', '-106.72000'), ('Redstone', 0, '39.18000', '-107.23000'), ('Snowmass', 0, '39.33000', '-106.98000'), ('Snowmass Village', 1822, '39.19550', '-106.93870'), ('Woody Creek', 0, '39.28000', '-106.88000')], 'partOfState': 'central', 'wfo': 'GJT'}, +'COC099': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bristol', 0, '38.12000', '-102.32000'), ('Granada', 640, '38.06370', '-102.31060'), ('Hartman', 111, '38.12090', '-102.21810'), ('Holly', 1048, '38.05560', '-102.12400'), ('Lamar', 8869, '38.08030', '-102.61750'), ('Wiley', 483, '38.15610', '-102.71870')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC101': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Avondale', 754, '38.23000', '-104.35000'), ('Beulah', 0, '38.08000', '-104.98000'), ('Blende', 0, '38.20000', '-104.57000'), ('Boone', 323, '38.25010', '-104.25580'), ('Colorado City', 2018, '37.94400', '-104.84630'), ('Pinon', 0, '38.42000', '-104.60000'), ('Pueblo', 102121, '38.29800', '-104.62100'), ('Pueblo Depot', 0, '38.32000', '-104.33000'), ('Pueblo Reservoir', 0, '38.26000', '-104.75000'), ('Pueblo West', 16899, '38.34990', '-104.72210'), ('Rye', 202, '37.92180', '-104.93100'), ('San Isabel', 0, '37.98000', '-105.03000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COC103': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Artesia', 0, '40.22000', '-109.02000'), ('Buford', 0, '39.98000', '-107.58000'), ('Massadona', 0, '40.22000', '-108.62000'), ('Meeker', 2242, '40.05450', '-107.88980'), ('Rangely', 2096, '40.08760', '-108.77850'), ('Rio Blanco', 0, '39.72000', '-107.97000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC105': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Del Norte', 1705, '37.67830', '-106.35210'), ('Monte Vista', 4529, '37.57860', '-106.14420'), ('South Fork', 604, '37.67000', '-106.62000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COC107': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Clark', 0, '40.70000', '-106.92000'), ('Hahns Peak', 0, '40.80000', '-106.93000'), ('Hayden', 1634, '40.48810', '-107.26030'), ('Milner', 0, '40.48000', '-107.02000'), ('Oak Creek', 849, '40.27450', '-106.95700'), ('Phippsburg', 0, '40.23000', '-106.93000'), ('Steamboat Springs', 9815, '40.47790', '-106.82100'), ('Toponas', 0, '40.07000', '-106.80000'), ('Tow Creek', 0, '40.47000', '-107.07000'), ('Yampa', 443, '40.15330', '-106.90750')], 'partOfState': 'central', 'wfo': 'GJT'}, +'COC109': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bonanza', 14, '38.30000', '-106.12000'), ('Center', 2392, '37.75180', '-106.10990'), ('Crestone', 73, '37.99500', '-105.69730'), ('La Garita', 0, '37.83000', '-106.25000'), ('Moffat', 114, '38.00170', '-105.90430'), ('North Pass', 0, '38.21000', '-106.57000'), ('Saguache', 578, '38.08610', '-106.14090'), ('Sargents', 0, '38.40000', '-106.42000'), ('Villa Grove', 0, '38.25000', '-105.95000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COC111': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Elk Park', 0, '37.68000', '-107.67000'), ('Gladstone', 0, '37.88000', '-107.65000'), ('Silverton', 531, '37.81090', '-107.66400')], 'partOfState': 'southeast', 'wfo': 'GJT'}, +'COC113': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Egnar', 0, '37.92000', '-108.93000'), ('Fall Creek', 0, '38.02000', '-108.03000'), ('Norwood', 438, '38.13030', '-108.29160'), ('Ophir', 113, '37.85690', '-107.82890'), ('Placerville', 0, '38.02000', '-108.07000'), ('Sawpit', 25, '37.99480', '-107.99990'), ('Slick Rock', 0, '38.08300', '-108.89200'), ('Telluride', 2221, '37.93870', '-107.81240'), ('Trout Lake', 0, '37.80000', '-107.87000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COC115': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Julesburg', 1467, '40.98670', '-102.26460'), ('Marks Butte', 0, '40.81700', '-102.50700'), ('Ovid', 330, '40.95990', '-102.38810'), ('Sedgwick', 191, '40.93480', '-102.52480'), ('Sixteen-Mile Corner', 0, '40.76400', '-102.22900')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC117': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Blue River', 685, '39.43250', '-106.03660'), ('Breckenridge', 2408, '39.50750', '-106.04740'), ('Copper Mountain', 0, '39.49200', '-106.15000'), ('Dillon', 802, '39.62500', '-106.03900'), ('Frisco', 2443, '39.57910', '-106.09600'), ('Green Mtn Reservoir', 0, '39.87600', '-106.33200'), ('Heeney', 0, '39.87000', '-106.30000'), ('Keystone', 0, '39.60800', '-105.96700'), ('Kokomo', 0, '39.38000', '-106.18000'), ('Montezuma', 42, '39.58130', '-105.86840'), ('Silverthorne', 3196, '39.65170', '-106.08160'), ('Vail Pass', 0, '39.53100', '-106.21800')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COC119': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cripple Creek', 1115, '38.74630', '-105.17870'), ('Divide', 0, '38.94000', '-105.15000'), ('Florissant', 0, '38.95000', '-105.30000'), ('Victor', 445, '38.70840', '-105.14060'), ('Woodland Park', 6515, '38.99500', '-105.05170')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COC121': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Akron', 1711, '40.16260', '-103.21170'), ('Anton', 0, '39.75000', '-103.22000'), ('Arickaree School', 0, '39.74600', '-103.03100'), ('Burdett', 0, '40.36300', '-102.94700'), ('Cope', 0, '39.67000', '-102.85000'), ('Elba', 0, '39.92000', '-103.18000'), ('Fremont Butte', 0, '40.25000', '-103.30700'), ('Hyde', 0, '40.13000', '-102.83000'), ('Last Chance', 0, '39.73000', '-103.58000'), ('Lindon', 0, '39.73000', '-103.40000'), ('Lone Star', 0, '40.35300', '-102.84200'), ('Messex', 0, '40.38000', '-103.38000'), ('Midway', 0, '40.22800', '-103.39600'), ('Otis', 534, '40.14970', '-102.96160'), ('Platner', 0, '40.16000', '-103.07000'), ('Prewitt Reservoir', 0, '40.42900', '-103.35800'), ('Thurman', 0, '39.59600', '-103.21800'), ('Woodlin School', 0, '39.78800', '-103.51900'), ('Woodrow', 0, '39.98000', '-103.58000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC123': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Ault', 1432, '40.58400', '-104.73310'), ('Barnesville', 0, '40.48000', '-104.48000'), ('Black Hollow Reservoir', 0, '40.60800', '-104.87500'), ('Bracewell', 0, '40.42000', '-104.78000'), ('Briggsdale', 0, '40.63000', '-104.32000'), ('Buckingham', 0, '40.62000', '-103.97000'), ('Carr', 0, '40.90000', '-104.87000'), ('Cornish', 0, '40.52000', '-104.42000'), ('Dacono', 3015, '40.07580', '-104.94290'), ('Eaton', 2690, '40.52490', '-104.70980'), ('Erie', 6291, '40.02890', '-105.04600'), ('Evans', 9514, '40.37790', '-104.69680'), ('Firestone', 1908, '40.12090', '-104.93400'), ('Fort Lupton', 6787, '40.08520', '-104.80510'), ('Fort St Vrain', 0, '40.27500', '-104.87500'), ('Frederick', 2467, '40.10500', '-104.94240'), ('Galeton', 0, '40.52000', '-104.58000'), ('Garden City', 357, '40.39390', '-104.68870'), ('Gilcrest', 1162, '40.28270', '-104.78190'), ('Gill', 0, '40.45000', '-104.53000'), ('Greeley', 76930, '40.42130', '-104.74390'), ('Grover', 153, '40.86920', '-104.22560'), ('Hardin', 0, '40.32000', '-104.38000'), ('Hereford', 0, '40.97000', '-104.30000'), ('Hudson', 1565, '40.07100', '-104.64290'), ('Ione', 0, '40.12000', '-104.80000'), ('Johnstown', 3827, '40.33540', '-104.91150'), ('Keenesburg', 855, '40.10890', '-104.51860'), ('Keota', 5, '40.70410', '-104.07370'), ('Kersey', 1389, '40.38610', '-104.55980'), ('La Salle', 1849, '40.34780', '-104.70450'), ('Lochbuie', 2049, '40.00770', '-104.72010'), ('Lower Latham Reservoir', 0, '40.35000', '-104.64200'), ('Lucerne', 0, '40.48000', '-104.68000'), ('Masters', 0, '40.30000', '-104.25000'), ('Mead', 2017, '40.23430', '-104.98790'), ('Milliken', 2888, '40.31660', '-104.85270'), ('Milton Reservoir', 0, '40.24200', '-104.63300'), ('Natural Fort Rest Area', 0, '40.95700', '-104.92200'), ('New Raymer', 109, '40.62500', '-103.78000'), ('New Windsor Reservoir', 0, '40.53300', '-104.88800'), ('Nunn', 471, '40.70390', '-104.78040'), ('Pawnee Buttes', 0, '40.81700', '-103.98300'), ('Peckham', 0, '40.30000', '-104.75000'), ('Pierce', 884, '40.63290', '-104.75460'), ('Platteville', 2370, '40.21690', '-104.82200'), ('Prospect Valley', 0, '40.07400', '-104.41300'), ('Purcell', 0, '40.63000', '-104.58000'), ('Raymer', 91, '40.60730', '-103.84390'), ('Riverside Reservoir', 0, '40.32500', '-104.25000'), ('Rockport', 0, '40.90000', '-104.78000'), ('Roggen', 0, '40.17000', '-104.37000'), ('Seeley Lake', 0, '40.44000', '-104.71000'), ('Severance', 597, '40.52240', '-104.84960'), ('Stoneham', 0, '40.63500', '-103.65000'), ('Wattenburg', 0, '40.02000', '-104.80000'), ('Welty', 0, '40.32000', '-105.02000'), ('Windsor', 9896, '40.48520', '-104.90650')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COC125': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Abarr', 0, '39.85000', '-102.72000'), ('Alvin', 0, '40.30800', '-102.07800'), ('Beecher Island', 0, '39.88000', '-102.13000'), ('Bonny Reservoir', 0, '39.61300', '-102.16700'), ('Clarkville', 0, '40.38000', '-102.62000'), ('Eckley', 278, '40.11200', '-102.48820'), ('Hale', 0, '39.62800', '-102.13000'), ('Heartstrong', 0, '39.94800', '-102.57900'), ('Idalia', 0, '39.70000', '-102.30000'), ('Joes', 0, '39.65000', '-102.68000'), ('Kirk', 0, '39.62000', '-102.60000'), ('Laird', 0, '40.08000', '-102.10000'), ('Vernon', 0, '39.93310', '-102.28000'), ('Wauneta', 0, '40.29300', '-102.25100'), ('Wray', 2187, '40.07940', '-102.22600'), ('Yuma', 3285, '40.12390', '-102.72410')], 'partOfState': 'northeast', 'wfo': 'GLD'}, +'CTC001': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Bethel', 9137, '41.37150', '-73.41160'), ('Bridgeport', 139529, '41.18630', '-73.19620'), ('Danbury', 74848, '41.40210', '-73.47150'), ('Darien', 19607, '41.05110', '-73.47970'), ('Easton', 34243, '41.24000', '-73.31000'), ('Fairfield', 25749, '41.13000', '-73.28000'), ('Georgetown', 1650, '41.26000', '-73.43000'), ('Monroe', 38101, '41.36000', '-73.20000'), ('New Canaan', 117083, '41.14000', '-73.49000'), ('Newtown', 1843, '41.41320', '-73.31600'), ('Norwalk', 82951, '41.09390', '-73.42020'), ('Ridgefield', 7212, '41.27380', '-73.49990'), ('Shelton', 38101, '41.32000', '-73.10000'), ('Sherman', 6633, '41.58000', '-73.50000'), ('Stamford', 117083, '41.02000', '-73.56000'), ('Stratford', 49976, '41.20430', '-73.13020'), ('Trumbull', 34243, '41.25820', '-73.20750'), ('Westport', 25749, '41.12320', '-73.34760'), ('Wilton', 1650, '41.18000', '-73.42000')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTC003': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Avon', 2805, '41.80000', '-72.83333'), ('Berlin', 8541, '41.61667', '-72.75000'), ('Bloomfield', 3020, '41.81667', '-72.73333'), ('Bristol', 60062, '41.68120', '-72.94100'), ('Burlington', 2686, '41.76667', '-72.96667'), ('Canton', 1565, '41.81667', '-72.90000'), ('East Granby', 1371, '41.93333', '-72.71667'), ('East Hartford', 49575, '41.76140', '-72.61590'), ('East Windsor', 3469, '41.85000', '-72.60000'), ('Enfield', 8067, '41.96667', '-72.56667'), ('Farmington', 71538, '41.71667', '-72.83333'), ('Glastonbury', 7157, '41.70090', '-72.60000'), ('Granby', 2453, '41.95000', '-72.78333'), ('Hartford', 121578, '41.76570', '-72.68390'), ('Manchester', 30595, '41.78333', '-72.51667'), ('Marlborough', 1048, '41.63333', '-72.45000'), ('New Britain', 71538, '41.67510', '-72.78780'), ('Newington', 29306, '41.68730', '-72.73070'), ('Plainville', 60062, '41.66667', '-72.90000'), ('Rocky Hill', 7157, '41.66667', '-72.63333'), ('Simsbury', 5603, '41.88300', '-72.81140'), ('Southington', 5789, '41.60000', '-72.88333'), ('South Windsor', 49575, '41.81667', '-72.61667'), ('Suffield', 1244, '41.98120', '-72.65030'), ('West Hartford', 63589, '41.76770', '-72.75440'), ('Wethersfield', 26271, '41.70110', '-72.67010'), ('Windsor', 3020, '41.85000', '-72.65000'), ('Windsor Locks', 12043, '41.92600', '-72.65800')], 'partOfState': 'northern', 'wfo': 'BOX'}, +'CTC005': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Bantam', 802, '41.72350', '-73.24380'), ('Bethlehem Village', 2022, '41.64260', '-73.20350'), ('Canaan', 1288, '42.03160', '-73.33140'), ('Cornwall Bridge', 1110, '41.81800', '-73.37080'), ('Falls Village', 1288, '41.95450', '-73.36050'), ('Gaylordsville', 6633, '41.64400', '-73.48720'), ('Kent', 1847, '41.72420', '-73.47850'), ('Litchfield', 1328, '41.74470', '-73.19010'), ('New Hartford', 1049, '41.87970', '-72.97390'), ('New Milford', 6633, '41.58850', '-73.40680'), ('New Preston', 1110, '41.68170', '-73.35430'), ('Norfolk', 1288, '41.99270', '-73.19880'), ('Oakville', 8618, '41.59190', '-73.08590'), ('Sharon', 884, '41.87820', '-73.47430'), ('Terryville', 5360, '41.67910', '-73.00770'), ('Thomaston', 5360, '41.67250', '-73.07320'), ('Torrington', 35202, '41.83500', '-73.12940'), ('Winsted', 7321, '41.92700', '-73.06690'), ('Woodbury Center', 1298, '41.54660', '-73.20700')], 'partOfState': 'northern', 'wfo': 'ALY'}, +'CTC007': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Chester', 1546, '41.40050', '-72.45380'), ('Clinton', 3516, '41.27580', '-72.53010'), ('Cromwell', 5534, '41.60000', '-72.63000'), ('Deep River', 2470, '41.39000', '-72.43010'), ('Durham', 2773, '41.47390', '-72.68190'), ('East Haddam', 1263, '41.45500', '-72.46000'), ('East Hampton', 2254, '41.57290', '-72.49600'), ('Essex', 2573, '41.35600', '-72.39850'), ('Fenwick', 52, '41.27110', '-72.35540'), ('Higganum', 1671, '41.49120', '-72.55800'), ('Killingworth', 3516, '41.35000', '-72.56000'), ('Middletown', 43167, '41.54840', '-72.65430'), ('Millington', 3212, '41.48000', '-72.35000'), ('Moodus', 1263, '41.50400', '-72.45010'), ('Old Saybrook', 1962, '41.29140', '-72.36880'), ('Portland', 5534, '41.56000', '-72.63000'), ('Saybrook Manor', 1133, '41.28030', '-72.40620'), ('Westbrook', 2238, '41.28410', '-72.45250')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTC009': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Ansonia', 18554, '41.34340', '-73.06900'), ('Beacon Falls', 30989, '41.44000', '-73.04000'), ('Branford', 5735, '41.28000', '-72.81000'), ('Cheshire', 5789, '41.50420', '-72.90010'), ('Derby', 12391, '41.32670', '-73.08280'), ('East Haven', 28189, '41.29560', '-72.86310'), ('Guilford', 2603, '41.28030', '-72.67700'), ('Hamden', 23035, '41.37000', '-72.90000'), ('Madison', 2222, '41.27600', '-72.59500'), ('Meriden', 58244, '41.53670', '-72.79520'), ('Milford', 49092, '41.22620', '-73.06260'), ('Naugatuck', 30989, '41.48960', '-73.05200'), ('New Haven', 123626, '41.31010', '-72.92410'), ('North Brandford', 5735, '41.33000', '-72.76000'), ('North Haven', 23035, '41.38090', '-72.85640'), ('North Madison', 2222, '41.35000', '-72.63000'), ('Orange', 13233, '41.27940', '-73.02590'), ('Oxford', 18554, '41.42000', '-73.11000'), ('Seymour', 18554, '41.40000', '-73.06000'), ('Southbury', 3435, '41.48560', '-73.22430'), ('Wallingford', 17509, '41.44980', '-72.81940'), ('Waterbury', 107271, '41.55840', '-73.03740'), ('West Haven', 52360, '41.27390', '-72.96830'), ('Wolcott', 5360, '41.61000', '-72.98000'), ('Woodmont', 1711, '41.22420', '-72.99260')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTC011': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Colchester', 3212, '41.57400', '-72.33200'), ('Franklin', 36117, '41.60000', '-72.14000'), ('Gales Ferry', 2975, '41.46000', '-72.09000'), ('Groton', 10010, '41.34000', '-72.08000'), ('Jewett City', 3053, '41.60590', '-71.98170'), ('Lebanon', 15823, '41.66000', '-72.24000'), ('Ledyard Center', 2975, '41.47000', '-72.03000'), ('Montville', 2975, '41.44360', '-72.12440'), ('Mystic', 4001, '41.35180', '-71.97210'), ('New London', 25671, '41.35000', '-72.10000'), ('Niantic', 3085, '41.32280', '-72.19430'), ('North Lyme', 2573, '41.41000', '-72.34000'), ('North Stonington', 5474, '41.44000', '-71.89000'), ('Norwich', 36117, '41.55020', '-72.08790'), ('Old Lyme', 1962, '41.31000', '-72.34000'), ('Pawcatuck', 5474, '41.37560', '-71.85300'), ('Poquonock Bridge', 1592, '41.34900', '-72.02810'), ('Preston', 3053, '41.55000', '-71.99000'), ('Salem', 3212, '41.48000', '-72.27000'), ('Voluntown', 2638, '41.59000', '-71.85000'), ('Waterford', 2935, '41.34270', '-72.14070')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTC013': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Andover', 2914, '41.73333', '-72.36667'), ('Bolton', 0, '41.76667', '-72.43333'), ('Columbia', 1381, '41.70000', '-72.30000'), ('Coventry', 1381, '41.78333', '-72.30000'), ('Ellington', 3469, '41.90000', '-72.46667'), ('Hebron', 3212, '41.65000', '-72.36667'), ('Mansfield', 10996, '41.83333', '-72.25000'), ('Rockville', 7708, '41.86667', '-72.46667'), ('Somers', 1626, '41.98333', '-72.45000'), ('Stafford', 4100, '41.98333', '-72.28333'), ('Stafford Springs', 4100, '41.95410', '-72.30950'), ('Storrs', 10996, '41.80610', '-72.25670'), ('Tolland', 1331, '41.87140', '-72.36900'), ('Union', 1331, '41.98333', '-72.15000'), ('Vernon', 0, '41.81667', '-72.48333'), ('Willington', 10996, '41.86667', '-72.27000')], 'partOfState': 'northern', 'wfo': 'BOX'}, +'CTC015': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Ashford', 10996, '41.86667', '-72.11667'), ('Brooklyn', 1085, '41.78333', '-71.95000'), ('Canterbury', 2638, '41.70000', '-71.96667'), ('Chaplin', 15823, '41.80000', '-72.11667'), ('Danielson', 4265, '41.80000', '-71.88333'), ('Eastford', 1211, '41.90000', '-72.08333'), ('Hampton', 1085, '41.78333', '-72.05000'), ('Killingly', 4265, '41.83333', '-71.86667'), ('Plainfield', 2638, '41.67650', '-71.92480'), ('Pomfret', 1211, '41.90000', '-71.96667'), ('Putnam', 6746, '41.91670', '-71.90000'), ('Scotland', 1278, '41.70000', '-72.08333'), ('Sterling', 3237, '41.70000', '-71.83333'), ('Thompson', 1424, '41.95000', '-71.86667'), ('Willimantic', 15823, '41.71560', '-72.21800'), ('Windham', 1278, '41.70000', '-72.16667'), ('Woodstock', 1211, '41.95000', '-71.98333')], 'partOfState': 'northern', 'wfo': 'BOX'}, +'DCC001': {'fullStateName': 'District of Columbia', 'state': 'DC', 'cities': [('Adams Morgan', 606900, '38.92140', '-77.04250'), ('American University', 0, '38.93690', '-77.08720'), ('Anacostia', 17136, '38.86640', '-76.98420'), ('Bolling Air Force', 0, '38.84080', '-77.01670'), ('Catholic University', 0, '38.93470', '-76.99940'), ('Georgetown', 0, '38.92280', '-77.07780'), ('Kenilworth', 0, '38.90580', '-76.94060'), ('Little Falls', 0, '38.93330', '-77.11830'), ('National Arboretum', 1249, '38.91030', '-76.96640'), ('National Zoo', 0, '38.92940', '-77.05000'), ('The Mall', 0, '38.88940', '-77.02330'), ('The White House', 0, '38.89750', '-77.03670'), ('Us Capitol', 0, '38.88970', '-77.00920'), ('Washington', 572059, '38.90510', '-77.01620')], 'partOfState': '', 'wfo': 'LWX'}, +'DEC001': {'fullStateName': 'Delaware', 'state': 'DE', 'cities': [('Andrewsville', 0, '38.86140', '-75.63530'), ('Big Stone Beach', 0, '39.00140', '-75.32780'), ('Bowers', 0, '39.06030', '-75.40020'), ('Camden', 0, '39.11280', '-75.54950'), ('Cheswold', 0, '39.21650', '-75.58460'), ('Clayton', 0, '39.29060', '-75.63470'), ('Dover', 0, '39.15900', '-75.51700'), ('Dover Speedway', 0, '39.18000', '-75.53000'), ('Farmington', 0, '38.87070', '-75.57960'), ('Felton', 0, '39.00910', '-75.57790'), ('Frederica', 0, '39.00890', '-75.46480'), ('Harrington', 0, '38.92270', '-75.57230'), ('Hartly', 0, '39.16840', '-75.71310'), ('Hazlettville', 0, '39.11640', '-75.64250'), ('Highland Acres', 0, '39.11720', '-75.52310'), ('Houston', 0, '38.91680', '-75.50450'), ('Kent Acres', 0, '39.13310', '-75.51880'), ('Kenton', 0, '39.22720', '-75.66580'), ('Leipsic', 0, '39.24310', '-75.51710'), ('Little Creek', 0, '39.16520', '-75.44880'), ('Magnolia', 0, '39.06980', '-75.47670'), ('Rising Sun', 0, '39.10110', '-75.50660'), ('Riverview', 0, '39.02910', '-75.51980'), ('Rodney Village', 0, '39.12640', '-75.53690'), ('Sandtown', 0, '39.03330', '-75.71920'), ('Smyrna', 0, '39.29540', '-75.60770'), ('Viola', 0, '39.04210', '-75.57190'), ('Woodland Beach', 0, '39.33330', '-75.47500'), ('Woodside', 0, '39.07030', '-75.56850'), ('Woodside East', 0, '39.06710', '-75.53820'), ('Wyoming', 0, '39.11680', '-75.56060')], 'partOfState': 'central', 'wfo': 'PHI'}, +'DEC003': {'fullStateName': 'Delaware', 'state': 'DE', 'cities': [('Arden', 0, '39.81050', '-75.48960'), ('Ardencroft', 0, '39.80400', '-75.48680'), ('Ardentown', 0, '39.80900', '-75.48190'), ('Ashland', 0, '39.79970', '-75.65750'), ('Bear', 0, '39.62000', '-75.68000'), ('Bellefonte', 0, '39.76630', '-75.49830'), ('Brookside', 0, '39.66780', '-75.71590'), ('Chambersville', 0, '39.36360', '-75.57920'), ('Claymont', 0, '39.80300', '-75.45940'), ('Delaney Corner', 0, '39.29920', '-75.74750'), ('Delaware City', 0, '39.57550', '-75.60040'), ('Edgemoor', 0, '39.75570', '-75.50780'), ('Elsmere', 0, '39.73790', '-75.59490'), ('Glasgow', 0, '39.60470', '-75.74550'), ('Green Spring', 0, '39.31750', '-75.64920'), ('Hockessin', 0, '39.78000', '-75.69000'), ('Middletown', 0, '39.45000', '-75.72000'), ('Mount Pleasant', 0, '39.51080', '-75.71170'), ('Newark', 0, '39.67660', '-75.75770'), ('New Castle', 0, '39.66640', '-75.57040'), ('Newport', 0, '39.71330', '-75.60700'), ('North Star', 0, '39.76110', '-75.71940'), ('Odessa', 0, '39.45640', '-75.66010'), ('Pike Creek', 0, '39.73080', '-75.70440'), ('Port Penn', 0, '39.51670', '-75.57690'), ('Saint Georges', 0, '39.55500', '-75.65060'), ('Stanton', 0, '39.71570', '-75.64080'), ('Talleyville', 0, '39.81020', '-75.55030'), ('Townsend', 0, '39.39410', '-75.69300'), ('Wilmington', 0, '39.73000', '-75.53000'), ('Wilmington Manor', 0, '39.68550', '-75.58480')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'DEC005': {'fullStateName': 'Delaware', 'state': 'DE', 'cities': [('Bethany Beach', 0, '38.53800', '-75.06540'), ('Bethel', 0, '38.57010', '-75.61980'), ('Blades', 0, '38.63470', '-75.60920'), ('Bridgeville', 0, '38.74330', '-75.60240'), ('Dagsboro', 0, '38.54920', '-75.24570'), ('Delmar', 0, '38.45880', '-75.57010'), ('Dewey Beach', 0, '38.69530', '-75.07680'), ('Ellendale', 0, '38.80710', '-75.42430'), ('Fenwick Island', 0, '38.46070', '-75.05380'), ('Frankford', 0, '38.52230', '-75.23290'), ('Georgetown', 0, '38.69000', '-75.39000'), ('Greenwood', 0, '38.80740', '-75.59210'), ('Gumboro', 0, '38.47750', '-75.36560'), ('Laurel', 0, '38.55500', '-75.57310'), ('Long Neck', 0, '38.62010', '-75.15100'), ('Milford', 0, '38.91410', '-75.43310'), ('Millsboro', 0, '38.58520', '-75.29180'), ('Millville', 0, '38.54960', '-75.12320'), ('Milton', 0, '38.77890', '-75.31320'), ('Ocean View', 0, '38.54080', '-75.09270'), ('Rehoboth Beach', 0, '38.71730', '-75.08090'), ('Seaford', 0, '38.64890', '-75.61660'), ('Selbyville', 0, '38.45810', '-75.22400'), ('Slaughter Beach', 0, '38.91230', '-75.30430'), ('South Bethany', 0, '38.51610', '-75.05840'), ('Sycamore', 0, '38.59580', '-75.49080')], 'partOfState': 'central', 'wfo': 'PHI'}, +'FLC001': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alachua', 6098, '29.77900', '-82.48000'), ('Archer', 1289, '29.53410', '-82.51890'), ('Cross Creek', 453, '29.48600', '-82.16560'), ('Gainesville', 95447, '29.67420', '-82.33630'), ('Gainesville Airport', 95447, '29.69100', '-82.27540'), ('Grove Park', 653, '29.59990', '-82.15390'), ('High Springs', 3863, '29.82210', '-82.59190'), ('La Crosse', 143, '29.84390', '-82.40450'), ('Lochloosa', 453, '29.51120', '-82.10070'), ('Micanopy', 653, '29.50610', '-82.28080'), ('Newberry', 3316, '29.64480', '-82.61230'), ('Newnans Lake', 95447, '29.64950', '-82.23990'), ('Orange Heights', 821, '29.71930', '-82.13970'), ('Rochelle', 653, '29.59630', '-82.21790'), ('University Of Florida', 0, '29.64300', '-82.35710'), ('Waldo', 821, '29.79050', '-82.17170')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC003': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Glen Saint Mary', 473, '30.27390', '-82.16110'), ('Macclenny', 4459, '30.28020', '-82.12590'), ('Olustee', 2837, '30.20370', '-82.42920'), ('Sanderson', 473, '30.25160', '-82.27330'), ('Taylor', 473, '30.44010', '-82.29170')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLC005': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Allanton', 0, '30.03157', '-85.45795'), ('Bahama Beach', 0, '30.19690', '-85.84198'), ('Bay Harbor', 8810, '30.14580', '-85.61480'), ('Bayhead', 0, '30.30690', '-85.58069'), ('Bayou George', 999, '30.26120', '-85.54000'), ('Beacon Beach', 0, '30.09871', '-85.64570'), ('Bennett', 12451, '30.39246', '-85.53216'), ('Betts', 466, '30.53532', '-85.39416'), ('Bid-A-wee', 0, '30.20248', '-85.85034'), ('Biltmore Beach', 0, '30.14499', '-85.75765'), ('Brannonville', 999, '30.22620', '-85.59280'), ('Cairo', 12451, '30.30380', '-85.47730'), ('Callaway', 14233, '30.14090', '-85.57780'), ('Camp Flowers', 0, '30.32482', '-85.55778'), ('Cedar Grove', 5367, '30.17580', '-85.62450'), ('College Station', 999, '30.23350', '-85.57780'), ('Davis Beach', 1017, '29.96760', '-85.46790'), ('Dirego Park', 999, '30.19060', '-85.63940'), ('Econfina', 12451, '30.41331', '-85.53926'), ('Edgewater Gulf Beach', 0, '30.18677', '-85.82248'), ('Fountain', 466, '30.47759', '-85.42084'), ('Gainer Spring', 0, '30.42553', '-85.54893'), ('Gulf Lagoon Beach', 0, '30.16753', '-85.78880'), ('Gulf Resort Beach', 0, '30.22324', '-85.89035'), ('Hiland Park', 999, '30.19930', '-85.62990'), ('Hollywood Beach', 0, '30.25414', '-85.95663'), ('Laguna Beach', 0, '30.25262', '-85.95314'), ('Laird', 2909, '30.31378', '-85.92389'), ('Lynn Haven', 12451, '30.23229', '-85.64906'), ('Magnolia Beach', 10889, '30.15917', '-85.72420'), ('Majette', 0, '30.28036', '-85.51105'), ('Mexico Beach', 0, '29.94803', '-85.41815'), ('Millville', 0, '30.15317', '-85.63093'), ('Nixon', 12451, '30.32120', '-85.45150'), ('Panama City', 36417, '30.17531', '-85.66800'), ('Panama City Beach', 0, '30.21007', '-85.84882'), ('Parker', 0, '30.13079', '-85.60301'), ('Pfn-Bay County Airport', 3519, '30.21200', '-85.68290'), ('Pine Log', 250, '30.40370', '-85.91160'), ('Recota Beach', 0, '30.30418', '-85.59452'), ('Saunders', 398, '30.42810', '-85.42500'), ('Seminole Hills', 250, '30.36960', '-85.93200'), ('Southport', 12451, '30.28955', '-85.64094'), ('Springfield', 8810, '30.16754', '-85.60792'), ('St Andrews State Park', 0, '30.13079', '-85.73800'), ('Sunnyside', 0, '30.25004', '-85.94813'), ('Tyndall AFB', 2757, '30.07101', '-85.57745'), ('Vicksburg', 12451, '30.32210', '-85.66000'), ('West Bay', 7671, '30.29290', '-85.85910'), ('West Panama City', 0, '30.17690', '-85.80526'), ('Wetappo', 0, '30.05500', '-85.42126'), ('Youngstown', 12451, '30.36640', '-85.43900')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC007': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Brooker', 352, '29.88600', '-82.33400'), ('Hampton', 431, '29.86400', '-82.13720'), ('Lawtey', 656, '30.04560', '-82.07080'), ('New River', 1927, '29.96070', '-82.26590'), ('Sampson', 431, '29.91620', '-82.20830'), ('Starke', 5593, '29.94690', '-82.11220')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC009': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aurantia', 9147, '28.72810', '-80.88760'), ('Barefoot Bay', 9498, '27.88780', '-80.52140'), ('Bellwood', 0, '28.50280', '-80.78120'), ('Camp Holly Fish Camp', 0, '28.08500', '-80.75310'), ('Canaveral Acres', 12112, '28.40730', '-80.84360'), ('Canaveral Groves', 0, '28.41670', '-80.83330'), ('Cape Canaveral', 9912, '28.39250', '-80.60460'), ('Cocoa', 16412, '28.37700', '-80.75020'), ('Cocoa Beach', 12482, '28.33176', '-80.61685'), ('Eau Gallie', 71382, '28.13010', '-80.64620'), ('Floridana Beach', 9498, '27.94620', '-80.49580'), ('Georgiana', 36090, '28.28820', '-80.67540'), ('Grant', 9498, '27.92860', '-80.52680'), ('Haulover Canal', 9147, '28.73620', '-80.75440'), ('Indialantic', 2944, '28.08930', '-80.56590'), ('Indian Harbour Beach', 8152, '28.15300', '-80.59780'), ('Jetty Park', 0, '28.40690', '-80.58960'), ('Kennedy Space Center', 40670, '28.63960', '-80.70690'), ('Lagrange', 40670, '28.63620', '-80.83060'), ('Lone Cabbage Fish Camp', 0, '28.36900', '-80.87220'), ('Malabar', 2622, '27.98670', '-80.58230'), ('Melbourne', 71382, '28.11500', '-80.64010'), ('Melbourne Airport', 0, '28.10231', '-80.63978'), ('Melbourne Beach', 3335, '28.06740', '-80.55960'), ('Melbourne Shores', 0, '27.96260', '-80.50980'), ('Melbourne Village', 706, '28.08500', '-80.66720'), ('Merritt Island', 34743, '28.35830', '-80.69160'), ('Merritt Island Wildlife Refuge', 0, '28.63960', '-80.70690'), ('Micco', 9498, '27.87110', '-80.51550'), ('Mims', 9147, '28.68460', '-80.84630'), ('Palm Bay', 79413, '27.98570', '-80.66020'), ('Palm Shores', 794, '28.18630', '-80.65750'), ('Patrick Air Force Base', 12482, '28.23500', '-80.61000'), ('Pineda', 794, '28.23690', '-80.67870'), ('Playalinda Beach', 40670, '28.65523', '-80.63206'), ('Port Canaveral', 0, '28.40770', '-80.58880'), ('Port Saint John', 12112, '28.47680', '-80.78880'), ('Rockledge', 20170, '28.31980', '-80.72900'), ('Satellite Beach', 9577, '28.17344', '-80.59667'), ('Scottsmoor', 9147, '28.76680', '-80.87190'), ('Sharpes', 3411, '28.44128', '-80.76102'), ('Shiloh', 1378, '28.78940', '-80.80450'), ('Space Coast Stadium', 0, '28.25730', '-80.73950'), ('Spessard Holland Park', 0, '28.04550', '-80.54710'), ('Suntree', 0, '28.22113', '-80.69169'), ('Titusville', 40670, '28.58880', '-80.82020'), ('Titusville Airport', 0, '28.51380', '-80.79847'), ('Turnbull', 9147, '28.71010', '-80.86260'), ('Valkaria', 2622, '27.96340', '-80.54390'), ('Viera', 17398, '28.25885', '-80.71650'), ('West Melbourne', 9824, '28.07980', '-80.67160')], 'partOfState': '', 'wfo': 'MLB'}, +'FLC011': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Coconut Creek', 43566, '26.27000', '-80.19000'), ('Cooper City', 27939, '26.06000', '-80.27000'), ('Coral Springs', 117549, '26.27000', '-80.27000'), ('Dania Beach', 13940, '26.06000', '-80.14000'), ('Davie', 75720, '26.08000', '-80.31000'), ('Deerfield Beach', 64583, '26.31000', '-80.10000'), ('Fort Lauderdale', 152397, '26.12000', '-80.15000'), ('Hallandale', 34282, '25.99000', '-80.14000'), ('Hollywood', 139357, '26.03000', '-80.17000'), ('Lauderdale Lakes', 31705, '26.16000', '-80.20000'), ('Lauderhill', 57585, '26.15000', '-80.21000'), ('Lighthouse Point', 2163, '26.28000', '-80.08500'), ('Margate', 53909, '26.25000', '-80.22000'), ('Miccosukee Indian Reservation', 3859, '26.17000', '-80.86000'), ('Miramar', 72739, '25.98000', '-80.35000'), ('North Lauderdale', 32264, '26.22000', '-80.23000'), ('North Perry Airport', 9132, '26.00000', '-80.24000'), ('Oakland Park', 30966, '26.17000', '-80.14000'), ('Parkland', 13835, '26.31000', '-80.24000'), ('Pembroke Pines', 137427, '26.01000', '-80.34000'), ('Plantation', 4168, '26.12000', '-80.25000'), ('Pompano Beach', 78191, '26.23000', '-80.12000'), ('Sawgrass Mills Mal', 85779, '26.15000', '-80.32000'), ('Southwest Ranches', 1704, '26.04000', '-80.33000'), ('Sunrise', 85779, '26.17000', '-80.28000'), ('Tamarac', 55588, '26.21000', '-80.27000'), ('Weston', 49286, '26.11000', '-80.39000'), ('Wilton Manors', 12697, '26.16000', '-80.13000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLC013': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Abe Springs', 2444, '30.36470', '-85.14770'), ('Altha', 506, '30.57140', '-85.12650'), ('Blountstown', 2444, '30.44370', '-85.04550'), ('Blountstown Airport', 0, '30.48631', '-85.11439'), ('Broad Branch', 1722, '30.31195', '-85.29493'), ('Camps Head', 0, '30.54675', '-85.27410'), ('Center Lake', 0, '30.55026', '-85.33775'), ('Chason', 506, '30.53260', '-85.19220'), ('Chipola', 506, '30.50530', '-85.11870'), ('Chipola Park', 1722, '30.23621', '-85.20845'), ('Clarksville', 2444, '30.43650', '-85.18570'), ('Durham', 2444, '30.46470', '-85.07510'), ('Frink', 2444, '30.36730', '-85.21440'), ('Henderson Mill', 506, '30.56770', '-85.07020'), ('Hugh Creek', 0, '30.35910', '-85.06988'), ('Kennys Mill', 0, '30.41994', '-85.06988'), ('Kinard', 1722, '30.28060', '-85.26407'), ('Macedonia', 506, '30.53380', '-85.05570'), ('Marysville', 2444, '30.29370', '-85.09980'), ('Moose Pond', 0, '30.51223', '-85.31150'), ('Nettle Ridge', 0, '30.47525', '-85.04512'), ('Ocheesee', 506, '30.58631', '-85.02205'), ('Red Oak', 0, '30.46208', '-85.14521'), ('Scotts Ferry', 2444, '30.29460', '-85.13180'), ('Selman', 2444, '30.53290', '-85.02880'), ('Sharpstown', 2444, '30.36540', '-85.10040'), ('Torreya State Park', 2444, '30.56470', '-84.96720'), ('White Pond', 0, '30.55584', '-85.21912'), ('Willis', 506, '30.54990', '-85.18700')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC015': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Babcock Ranch', 0, '26.94664', '-81.76155'), ('Babcock Webb Wma', 0, '26.88434', '-81.82455'), ('Charlotte County Airport', 0, '26.91674', '-81.98325'), ('Charlotte Harbor', 0, '26.96474', '-82.06245'), ('Charlotte Park', 0, '26.90404', '-82.04915'), ('Cleveland', 0, '26.95214', '-81.99115'), ('El Jobean', 0, '26.96894', '-82.21005'), ('Grove City', 0, '26.91394', '-82.32715'), ('Gulf Cove', 0, '26.95544', '-82.24135'), ('Harbour Heights', 0, '26.99254', '-82.00785'), ('Murdock', 0, '27.01294', '-82.14625'), ('Palm Island', 0, '26.88894', '-82.33495'), ('Pirate Harbor', 0, '26.80224', '-82.04115'), ('Placida', 0, '26.84744', '-82.23725'), ('Port Charlotte', 0, '26.97584', '-82.09795'), ('Punta Gorda', 0, '26.93004', '-82.05695'), ('Rotonda', 0, '26.89244', '-82.27295'), ('Solana', 0, '26.93914', '-82.02835'), ('Tropical Gulf Acres', 0, '26.84284', '-81.99085')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLC015': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Babcock Ranch', 0, '26.94664', '-81.76155'), ('Babcock Webb Wma', 0, '26.88434', '-81.82455'), ('Charlotte County Airport', 0, '26.91674', '-81.98325'), ('Charlotte Harbor', 0, '26.96474', '-82.06245'), ('Charlotte Park', 0, '26.90404', '-82.04915'), ('Cleveland', 0, '26.95214', '-81.99115'), ('El Jobean', 0, '26.96894', '-82.21005'), ('Grove City', 0, '26.91394', '-82.32715'), ('Gulf Cove', 0, '26.95544', '-82.24135'), ('Harbour Heights', 0, '26.99254', '-82.00785'), ('Murdock', 0, '27.01294', '-82.14625'), ('Palm Island', 0, '26.88894', '-82.33495'), ('Pirate Harbor', 0, '26.80224', '-82.04115'), ('Placida', 0, '26.84744', '-82.23725'), ('Port Charlotte', 0, '26.97584', '-82.09795'), ('Punta Gorda', 0, '26.93004', '-82.05695'), ('Rotonda', 0, '26.89244', '-82.27295'), ('Solana', 0, '26.93914', '-82.02835'), ('Tropical Gulf Acres', 0, '26.84284', '-81.99085')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLC017': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arbor Lakes', 0, '28.92544', '-82.36775'), ('Beverly Hills', 0, '28.91234', '-82.46445'), ('Brent Wood', 0, '28.90354', '-82.46565'), ('Chassahowitzka', 0, '28.70004', '-82.56995'), ('Citronelle', 0, '28.97804', '-82.56495'), ('Citrus Hills', 0, '28.88814', '-82.43275'), ('Citrus Springs', 0, '28.99664', '-82.47465'), ('Crystal Manor', 0, '29.00004', '-82.62135'), ('Crystal Oaks', 0, '28.86514', '-82.52255'), ('Crystal River', 0, '28.90104', '-82.59755'), ('Crystal River Airport', 0, '28.86794', '-82.57395'), ('Floral City', 0, '28.74144', '-82.29145'), ('Gospel Island', 0, '28.85144', '-82.31165'), ('Green Acres', 0, '28.79194', '-82.54715'), ('Heatherwood', 0, '28.73184', '-82.36795'), ('Hernando', 0, '28.90734', '-82.37455'), ('Homosassa', 0, '28.78124', '-82.61835'), ('Homosassa Springs', 0, '28.79724', '-82.54825'), ('Inverness', 0, '28.83914', '-82.34345'), ('Inverness Airport', 0, '28.80364', '-82.31815'), ('Inverness Highlands', 0, '28.79954', '-82.33045'), ('Lecanto', 0, '28.85804', '-82.48575'), ('Leisure Acres', 0, '28.78874', '-82.50105'), ('Ozello', 0, '28.83404', '-82.67225'), ('Pine Ridge', 0, '28.92514', '-82.53815'), ('River Lakes Manor', 0, '28.95354', '-82.37065'), ('Stokes Ferry', 0, '28.98754', '-82.35025'), ('Suburban Acres', 0, '28.69214', '-82.33095'), ('Sugarmill Woods', 0, '28.73294', '-82.50545'), ('Withlapopka Isle', 0, '28.79124', '-82.25365')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC017': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arbor Lakes', 0, '28.92544', '-82.36775'), ('Beverly Hills', 0, '28.91234', '-82.46445'), ('Brent Wood', 0, '28.90354', '-82.46565'), ('Chassahowitzka', 0, '28.70004', '-82.56995'), ('Citronelle', 0, '28.97804', '-82.56495'), ('Citrus Hills', 0, '28.88814', '-82.43275'), ('Citrus Springs', 0, '28.99664', '-82.47465'), ('Crystal Manor', 0, '29.00004', '-82.62135'), ('Crystal Oaks', 0, '28.86514', '-82.52255'), ('Crystal River', 0, '28.90104', '-82.59755'), ('Crystal River Airport', 0, '28.86794', '-82.57395'), ('Floral City', 0, '28.74144', '-82.29145'), ('Gospel Island', 0, '28.85144', '-82.31165'), ('Green Acres', 0, '28.79194', '-82.54715'), ('Heatherwood', 0, '28.73184', '-82.36795'), ('Hernando', 0, '28.90734', '-82.37455'), ('Homosassa', 0, '28.78124', '-82.61835'), ('Homosassa Springs', 0, '28.79724', '-82.54825'), ('Inverness', 0, '28.83914', '-82.34345'), ('Inverness Airport', 0, '28.80364', '-82.31815'), ('Inverness Highlands', 0, '28.79954', '-82.33045'), ('Lecanto', 0, '28.85804', '-82.48575'), ('Leisure Acres', 0, '28.78874', '-82.50105'), ('Ozello', 0, '28.83404', '-82.67225'), ('Pine Ridge', 0, '28.92514', '-82.53815'), ('River Lakes Manor', 0, '28.95354', '-82.37065'), ('Stokes Ferry', 0, '28.98754', '-82.35025'), ('Suburban Acres', 0, '28.69214', '-82.33095'), ('Sugarmill Woods', 0, '28.73294', '-82.50545'), ('Withlapopka Isle', 0, '28.79124', '-82.25365')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC019': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Asbury Lake', 2228, '30.04890', '-81.82160'), ('Bellair', 16539, '30.18020', '-81.74360'), ('Doctors Inlet', 30927, '30.12190', '-81.76710'), ('Green Cove Springs', 5378, '29.98970', '-81.67890'), ('Keystone Heights', 1349, '29.78000', '-82.03370'), ('Kingsley', 656, '29.96550', '-81.99970'), ('Lake Geneva', 1349, '29.77190', '-82.01060'), ('Lakeside', 30927, '30.12970', '-81.76840'), ('Middleburg', 10338, '30.05050', '-81.90220'), ('Orange Park', 9081, '30.16860', '-81.70470'), ('Penney Farms', 580, '29.98080', '-81.81170')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLC021': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bonita Shores', 32797, '26.32000', '-81.84000'), ('Bunker Hill', 19763, '26.39000', '-81.38000'), ('Carnestown', 479, '25.91000', '-81.36000'), ('Copeland', 479, '25.96000', '-81.35000'), ('Dade-Collier Train', 479, '25.86000', '-80.90000'), ('Deep Lake', 479, '26.04000', '-81.34000'), ('East Naples', 22951, '26.14000', '-81.74000'), ('Everglades City', 379, '25.86000', '-81.38500'), ('Fiddlers Creek', 5186, '26.04000', '-81.69000'), ('Golden Gate', 20951, '26.18000', '-81.70000'), ('Goodland', 320, '25.92000', '-81.66000'), ('Immokalee', 19763, '26.42000', '-81.44000'), ('Jerome', 479, '26.00000', '-81.34000'), ('Lely', 3857, '26.10000', '-81.71000'), ('Marco Island', 14879, '25.94000', '-81.73000'), ('Marco Island Airport', 14879, '26.00000', '-81.66000'), ('Miles City', 19763, '26.15000', '-81.34000'), ('Monroe Station', 479, '25.86000', '-81.10000'), ('Naples', 20976, '26.14000', '-81.80000'), ('North Blocks Golde', 20951, '26.23000', '-81.54000'), ('North Naples', 13422, '26.22000', '-81.76000'), ('Oasis Ranger Station', 479, '25.86000', '-81.03000'), ('Ochopee', 479, '25.90000', '-81.30000'), ('Orange Tree', 20951, '26.28000', '-81.59000'), ('Pelican Bay', 5686, '26.23000', '-81.81000'), ('Port Of The Island', 479, '25.96000', '-81.51000'), ('Quail Creek Estate', 3507, '26.30000', '-81.74000'), ('Rock Island', 3076, '26.13000', '-81.34000'), ('Royal Palm Hammock', 14879, '25.99000', '-81.59000'), ('South Blocks Golde', 5186, '26.06000', '-81.54000'), ('Sunniland', 19763, '26.27000', '-81.34000'), ('Vanderbilt Beach', 6741, '26.27000', '-81.82000')], 'partOfState': 'southwest', 'wfo': 'MFL'}, +'FLC023': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Columbia', 9980, '30.07340', '-82.69620'), ('Five Points', 1362, '30.22270', '-82.64400'), ('Fort White', 409, '29.92150', '-82.71450'), ('Ichetucknee Spring', 409, '29.96000', '-82.77000'), ('Lake City', 9980, '30.19280', '-82.64230'), ('Lulu', 2837, '30.10700', '-82.49150'), ('Oleno State Park', 3863, '29.92490', '-82.56420'), ('Suwannee Valley', 819, '30.29860', '-82.70850'), ('Watertown', 2837, '30.18780', '-82.59910'), ('Winfield', 1362, '30.26260', '-82.68630')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC027': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arcadia', 0, '27.21964', '-81.85965'), ('Brownville', 0, '27.29704', '-81.80995'), ('Fort Ogden', 0, '27.09004', '-81.95495'), ('Lake Suzy', 0, '27.04314', '-82.04205'), ('Nocatee', 0, '27.16004', '-81.88995'), ('Pine Level', 0, '27.26504', '-81.98995')], 'partOfState': 'south central', 'wfo': 'TBW'}, +'FLC029': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cross City', 1775, '29.63902', '-83.12336'), ('Cross City Airport', 1775, '29.63380', '-83.10500'), ('Eugene', 0, '29.61209', '-83.08816'), ('Fletcher', 0, '29.74640', '-82.98464'), ('Guaranto Springs', 0, '29.77980', '-82.94005'), ('Hines', 1775, '29.73890', '-83.23658'), ('Horseshoe Beach', 206, '29.44020', '-83.28810'), ('Jena', 206, '29.66377', '-83.37090'), ('Jonesboro', 1775, '29.70900', '-83.29386'), ('Old Town', 737, '29.60173', '-82.98195'), ('Shamrock', 0, '29.64278', '-83.14538'), ('Shired Island', 206, '29.39490', '-83.20100'), ('Suwannee', 206, '29.32810', '-83.14400'), ('Yellow Jacket', 737, '29.46787', '-83.00430')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC031': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arlington', 635230, '30.33540', '-81.60320'), ('Baldwin', 1634, '30.30440', '-81.97520'), ('Bayard', 16077, '30.14280', '-81.51310'), ('Fort Caroline', 13368, '30.38640', '-81.50090'), ('Jacksonville', 635230, '30.33180', '-81.65610'), ('Jacksonville Heights', 16539, '30.25190', '-81.78640'), ('Jacksonville International Arpt', 4667, '30.48390', '-81.70500'), ('Little Talbot Island', 13368, '30.45640', '-81.41690'), ('Mandarin', 16077, '30.15280', '-81.64150'), ('Maxville', 1634, '30.19820', '-82.01140'), ('Mayport', 13368, '30.38480', '-81.40940'), ('Neptune Beach', 7270, '30.31470', '-81.39370'), ('Normandy', 635230, '30.30550', '-81.76110'), ('Oceanway', 635230, '30.46650', '-81.63270'), ('Ortega', 635230, '30.27030', '-81.70860'), ('Riverside', 635230, '30.31270', '-81.68400'), ('San Marco', 635230, '30.31120', '-81.66060'), ('San Pablo', 7270, '30.29500', '-81.43800'), ('Talbot Island', 13368, '30.47000', '-81.42000'), ('Tallyrand', 635230, '30.35940', '-81.63300'), ('Unf', 7270, '30.27530', '-81.51200')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLC033': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Avondale', 0, '30.45190', '-87.30658'), ('Barrineau Park', 1312, '30.69391', '-87.43610'), ('Barth', 1312, '30.76172', '-87.33032'), ('Bay Springs', 1312, '30.77350', '-87.47913'), ('Beach Haven', 0, '30.38489', '-87.30780'), ('Bellview', 21201, '30.46210', '-87.31189'), ('Beulah', 21201, '30.53448', '-87.40161'), ('Bluff Springs', 0, '30.93628', '-87.29468'), ('Bogia', 1312, '30.84253', '-87.32440'), ('Bohemia', 0, '30.48352', '-87.15991'), ('Bratt', 8046, '30.96588', '-87.42749'), ('Brent', 22257, '30.47290', '-87.24951'), ('Brickton', 0, '30.73389', '-87.32141'), ('Brownsville', 21939, '30.42529', '-87.25189'), ('Byrneville', 0, '30.96631', '-87.32690'), ('Cantonment', 11365, '30.57269', '-87.33862'), ('Century', 1714, '30.88690', '-87.35608'), ('Chanticleer', 0, '30.32111', '-87.39532'), ('Cottage Hill', 11365, '30.63269', '-87.32001'), ('Enon', 0, '30.79309', '-87.52441'), ('Ensley', 18752, '30.52612', '-87.27350'), ('Farm Hill', 0, '30.61389', '-87.35358'), ('Ferry Pass', 27176, '30.52209', '-87.20740'), ('Fort Pickens', 0, '30.32892', '-87.29901'), ('Gaberonne', 0, '30.46887', '-87.16083'), ('Gandyville', 0, '30.99707', '-87.28821'), ('Gonzalez', 11365, '30.58228', '-87.29059'), ('Goulding', 4484, '30.43909', '-87.23029'), ('McDavid', 1714, '30.86627', '-87.31970'), ('McKinnon', 0, '30.78912', '-87.47333'), ('Millview', 0, '30.41809', '-87.35608'), ('Molino', 1312, '30.71228', '-87.32397'), ('Molino Crossroads', 0, '30.71808', '-87.33893'), ('Muscogee', 0, '30.60590', '-87.39661'), ('Myrtle Grove', 17211, '30.41589', '-87.30280'), ('Navy Point', 0, '30.37988', '-87.29321'), ('Oak Grove', 8046, '30.90887', '-87.42749'), ('Olive', 0, '30.50891', '-87.25531'), ('Oyster Lodge', 0, '30.96808', '-87.23401'), ('Paradise Beach', 0, '30.40088', '-87.42041'), ('Pensacola Beach', 0, '30.33368', '-87.13751'), ('Pensacola Naval Base', 15207, '30.35809', '-87.26703'), ('Pensacola Regional Airport', 56255, '30.47308', '-87.18799'), ('Perdido Bay', 0, '30.33313', '-87.42041'), ('Perdido Heights', 0, '30.40051', '-87.42291'), ('Perdido Key', 0, '30.30029', '-87.42749'), ('Pine Barren', 0, '30.77753', '-87.33441'), ('Pine Forest', 0, '30.51971', '-87.31641'), ('Pineville', 0, '30.89893', '-87.58252'), ('Pleasant Grove', 0, '30.35913', '-87.34528'), ('Quinavista', 0, '30.32867', '-87.35638'), ('Quintette', 0, '30.66632', '-87.31281'), ('Ramsey Beach', 0, '30.44672', '-87.35101'), ('Sand Cut', 0, '30.42169', '-87.32800'), ('Sanders Beach', 0, '30.39972', '-87.23798'), ('Seaglades', 0, '30.32489', '-87.38281'), ('South Flomaton', 0, '30.99188', '-87.25751'), ('Tenile', 0, '30.73169', '-87.46442'), ('Villa Sabine', 0, '30.33191', '-87.15912'), ('Walnut Hill', 8046, '30.88550', '-87.51001'), ('Warrington', 15207, '30.38409', '-87.27502'), ('West Pensacola', 21939, '30.42633', '-87.26801'), ('Yniestra', 0, '30.50189', '-87.16022')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLC035': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Andalusia', 1776, '29.49390', '-81.47080'), ('Bunnell', 2122, '29.46680', '-81.25890'), ('Espanola', 2122, '29.50670', '-81.31000'), ('Flagler Beach', 4954, '29.47030', '-81.13000'), ('Marineland', 6, '29.66400', '-81.21330'), ('Palm Coast', 32732, '29.57110', '-81.21410')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLC037': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alligator Point', 426, '29.89975', '-84.39955'), ('Apalachicola', 2334, '29.72395', '-84.98907'), ('Apalachicola Airport', 2334, '29.72490', '-85.02830'), ('Bay City', 2334, '29.74988', '-85.02884'), ('Beverly', 2334, '29.85200', '-84.96860'), ('Buck Siding', 2334, '29.88640', '-84.98050'), ('Carrabelle', 1303, '29.85240', '-84.66460'), ('Carrabelle Beach', 0, '29.83185', '-84.68415'), ('Creels', 2158, '29.82220', '-84.90920'), ('Eastpoint', 0, '29.75378', '-84.87147'), ('Eleven Mile', 0, '29.71022', '-85.15443'), ('Fort Gadsden', 2334, '29.91630', '-84.97710'), ('Franklin', 0, '29.78155', '-84.85727'), ('Green Point', 0, '29.75779', '-84.83351'), ('Hays Place', 2158, '29.84000', '-84.94590'), ('High Bluff', 2158, '29.81860', '-84.82540'), ('Lanark Village', 1303, '29.88250', '-84.59580'), ('McIntyre', 426, '29.98030', '-84.52630'), ('Morgan Place', 1303, '30.00750', '-84.75660'), ('Nine Mile', 0, '29.71692', '-85.11993'), ('Royal Bluff', 0, '29.79297', '-84.75050'), ('Saint Teresa', 426, '29.92980', '-84.45440'), ('St George Island', 0, '29.66377', '-84.86328'), ('St George Island St Pk', 0, '29.71889', '-84.74926'), ('Thirteen Mile', 0, '29.70336', '-85.19098'), ('Tilton', 2334, '29.73790', '-85.08190'), ('Yent Place', 1303, '29.86270', '-84.70040')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC037': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alligator Point', 426, '29.89975', '-84.39955'), ('Apalachicola', 2334, '29.72395', '-84.98907'), ('Apalachicola Airport', 2334, '29.72490', '-85.02830'), ('Bay City', 2334, '29.74988', '-85.02884'), ('Beverly', 2334, '29.85200', '-84.96860'), ('Buck Siding', 2334, '29.88640', '-84.98050'), ('Carrabelle', 1303, '29.85240', '-84.66460'), ('Carrabelle Beach', 0, '29.83185', '-84.68415'), ('Creels', 2158, '29.82220', '-84.90920'), ('Eastpoint', 0, '29.75378', '-84.87147'), ('Eleven Mile', 0, '29.71022', '-85.15443'), ('Fort Gadsden', 2334, '29.91630', '-84.97710'), ('Franklin', 0, '29.78155', '-84.85727'), ('Green Point', 0, '29.75779', '-84.83351'), ('Hays Place', 2158, '29.84000', '-84.94590'), ('High Bluff', 2158, '29.81860', '-84.82540'), ('Lanark Village', 1303, '29.88250', '-84.59580'), ('McIntyre', 426, '29.98030', '-84.52630'), ('Morgan Place', 1303, '30.00750', '-84.75660'), ('Nine Mile', 0, '29.71692', '-85.11993'), ('Royal Bluff', 0, '29.79297', '-84.75050'), ('Saint Teresa', 426, '29.92980', '-84.45440'), ('St George Island', 0, '29.66377', '-84.86328'), ('St George Island St Pk', 0, '29.71889', '-84.74926'), ('Thirteen Mile', 0, '29.70336', '-85.19098'), ('Tilton', 2334, '29.73790', '-85.08190'), ('Yent Place', 1303, '29.86270', '-84.70040')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC039': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Branchville', 1713, '30.65280', '-84.48300'), ('Chattahoochee', 3287, '30.70453', '-84.84350'), ('Concord', 1713, '30.65680', '-84.36510'), ('Darsey', 1713, '30.68750', '-84.38020'), ('Dogtown', 380, '30.67750', '-84.50340'), ('Douglas City', 1709, '30.59080', '-84.64400'), ('Florence', 1713, '30.59350', '-84.48290'), ('Freemont', 1713, '30.61420', '-84.45250'), ('Gibson', 1713, '30.56550', '-84.39940'), ('Greensboro', 0, '30.57139', '-84.57192'), ('Gretna', 1709, '30.61770', '-84.66050'), ('Hardaway', 619, '30.63060', '-84.73551'), ('Hardin Heights', 3287, '30.67460', '-84.83960'), ('Havana', 1713, '30.62400', '-84.41545'), ('Hinson', 1713, '30.64870', '-84.41680'), ('Jamieson', 1713, '30.66140', '-84.45090'), ('Juniper', 619, '30.54063', '-84.76003'), ('Lake Talquin', 0, '30.44108', '-84.55399'), ('Littman', 6982, '30.59070', '-84.51460'), ('Midway', 1446, '30.49494', '-84.46264'), ('Mount Pleasant', 1709, '30.65720', '-84.69310'), ('Oak Grove', 3287, '30.69140', '-84.73330'), ('Quincy', 6982, '30.58003', '-84.57695'), ('Quincy Airport', 6982, '30.59750', '-84.55750'), ('River Junction', 3287, '30.68530', '-84.84140'), ('Rosedale', 3287, '30.65528', '-84.80898'), ('Santa Clara', 6982, '30.58302', '-84.56344'), ('Sawdust', 1709, '30.54640', '-84.67770'), ('Scotland', 1713, '30.57580', '-84.43040'), ('Shady Rest', 1713, '30.58790', '-84.48690'), ('Sycamore', 619, '30.58417', '-84.82915'), ('Wetumpka', 6982, '30.48170', '-84.62340')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC041': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bell', 349, '29.75580', '-82.86190'), ('Trenton', 1617, '29.61420', '-82.81680')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC043': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Brighton Seminole', 1390, '27.08000', '-81.06000'), ('Buckhead Ridge', 1390, '27.14000', '-80.89000'), ('Lakeport', 1635, '26.98000', '-81.13000'), ('Moore Haven', 1635, '26.83500', '-81.10000'), ('Muse', 4210, '26.83000', '-81.50000'), ('Ortona', 3050, '26.81000', '-81.30000'), ('Palmdale', 3050, '26.94000', '-81.31000')], 'partOfState': 'southern', 'wfo': 'MFL'}, +'FLC045': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Beacon Hill', 1017, '29.92540', '-85.38783'), ('Cape San Blas', 0, '29.66220', '-85.35067'), ('Chipola Cutoff', 0, '30.12885', '-85.15761'), ('Dalkeith', 1722, '30.00600', '-85.15360'), ('Highland View', 0, '29.83799', '-85.31623'), ('Honeyville', 1722, '30.05690', '-85.19000'), ('Howard Creek', 2334, '29.89990', '-85.06860'), ('Indian Pass', 0, '29.68797', '-85.26495'), ('Jones Homestead', 0, '29.77140', '-85.28612'), ('Milltown', 0, '29.83135', '-85.29684'), ('Oak Grove', 3644, '29.79010', '-85.30142'), ('Odena', 3644, '29.73923', '-85.18816'), ('Overstreet', 1017, '29.99730', '-85.36900'), ('Port St. Joe', 3644, '29.80880', '-85.29610'), ('Saint Joe Beach', 1017, '29.90080', '-85.36399'), ('Simmons Bayou', 0, '29.74971', '-85.30347'), ('St Joseph State Park', 0, '29.79411', '-85.40960'), ('Stonemill Creek', 0, '30.14012', '-85.18168'), ('Ward Ridge', 0, '29.78900', '-85.28536'), ('Wewahitchka', 1722, '30.11557', '-85.19968'), ('White City', 3644, '29.88490', '-85.21970'), ('Willis Landing', 0, '29.97547', '-85.07336')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC045': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Beacon Hill', 1017, '29.92540', '-85.38783'), ('Cape San Blas', 0, '29.66220', '-85.35067'), ('Chipola Cutoff', 0, '30.12885', '-85.15761'), ('Dalkeith', 1722, '30.00600', '-85.15360'), ('Highland View', 0, '29.83799', '-85.31623'), ('Honeyville', 1722, '30.05690', '-85.19000'), ('Howard Creek', 2334, '29.89990', '-85.06860'), ('Indian Pass', 0, '29.68797', '-85.26495'), ('Jones Homestead', 0, '29.77140', '-85.28612'), ('Milltown', 0, '29.83135', '-85.29684'), ('Oak Grove', 3644, '29.79010', '-85.30142'), ('Odena', 3644, '29.73923', '-85.18816'), ('Overstreet', 1017, '29.99730', '-85.36900'), ('Port St. Joe', 3644, '29.80880', '-85.29610'), ('Saint Joe Beach', 1017, '29.90080', '-85.36399'), ('Simmons Bayou', 0, '29.74971', '-85.30347'), ('St Joseph State Park', 0, '29.79411', '-85.40960'), ('Stonemill Creek', 0, '30.14012', '-85.18168'), ('Ward Ridge', 0, '29.78900', '-85.28536'), ('Wewahitchka', 1722, '30.11557', '-85.19968'), ('White City', 3644, '29.88490', '-85.21970'), ('Willis Landing', 0, '29.97547', '-85.07336')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC047': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Belmont', 819, '30.48580', '-82.72280'), ('Blue Springs', 352, '30.48540', '-83.22080'), ('Jasper', 1780, '30.51710', '-82.95620'), ('Jennings', 833, '30.60110', '-83.10700'), ('Suwannee River Station', 352, '30.40790', '-83.16470'), ('West Lake', 833, '30.50250', '-83.11520'), ('White Springs', 819, '30.33150', '-82.75800')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC049': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bowling Green', 0, '27.63734', '-81.82375'), ('Crewsville', 0, '27.42964', '-81.59055'), ('Fort Green', 0, '27.62004', '-81.94995'), ('Garnder', 0, '27.35004', '-81.80495'), ('Limestone', 0, '27.36654', '-81.91495'), ('Ona', 0, '27.49004', '-81.91995'), ('Sweetwater', 0, '27.40964', '-81.70675'), ('Wauchula', 0, '27.54584', '-81.80985'), ('Zolfo Springs', 0, '27.49424', '-81.79445')], 'partOfState': 'central', 'wfo': 'TBW'}, +'FLC051': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Big Cypress Semino', 2730, '26.30000', '-80.97000'), ('Clewiston', 6460, '26.75000', '-80.93700'), ('Devils Garden', 2730, '26.61000', '-81.13000'), ('Felda', 19763, '26.54000', '-81.43000'), ('Hendry Correctional', 19763, '26.31000', '-81.21000'), ('Keri', 3050, '26.60000', '-81.39000'), ('La Belle', 4210, '26.76000', '-81.44000')], 'partOfState': 'southern', 'wfo': 'MFL'}, +'FLC053': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bayport', 0, '28.54854', '-82.64525'), ('Brookridge', 0, '28.54874', '-82.49035'), ('Brooksville', 0, '28.55444', '-82.39295'), ('Chassahowitzka Refuge', 0, '28.65084', '-82.59945'), ('Croom', 0, '28.59004', '-82.23995'), ('Garden Grove', 0, '28.48134', '-82.43285'), ('Glen Lakes', 0, '28.56764', '-82.56065'), ('Hernando Beach', 0, '28.46904', '-82.65935'), ('Hernando County Airport', 0, '28.47364', '-82.45535'), ('High Point', 0, '28.54424', '-82.52645'), ('Lake Lindsey', 0, '28.63364', '-82.36225'), ('Masaryktown', 0, '28.43444', '-82.46115'), ('Nobleton', 0, '28.64504', '-82.25995'), ('Pine Island', 0, '28.57204', '-82.64995'), ('Ridge Manor', 0, '28.50304', '-82.18405'), ('Royal Highlands', 0, '28.64004', '-82.52995'), ('Spring Hill', 0, '28.44504', '-82.56185'), ('Weeki Wachee', 0, '28.51524', '-82.57865'), ('Weeki Wachee Acres', 0, '28.48314', '-82.59775')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC055': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Archbold', 0, '27.19004', '-81.34995'), ('Avon Park', 0, '27.59324', '-81.50365'), ('Avon Park Air Force Range', 0, '27.58854', '-81.32075'), ('Avon Park Executive Airport', 0, '27.59134', '-81.52885'), ('Brighton', 0, '27.22004', '-81.08995'), ('Cornwell', 0, '27.37504', '-81.08995'), ('Lake Istokpoga', 0, '27.36274', '-81.24775'), ('Lake Josephine', 0, '27.40004', '-81.43995'), ('Lake Placid', 0, '27.29694', '-81.36965'), ('Lorida', 0, '27.45004', '-81.25995'), ('Placid Lakes', 0, '27.24124', '-81.40705'), ('Sebring', 0, '27.49074', '-81.45345'), ('Sebring Regional Airport', 0, '27.45644', '-81.34235'), ('Sebring Shores', 0, '27.53004', '-81.47995'), ('Spring Lake', 0, '27.43504', '-81.34495'), ('Venus', 0, '27.06504', '-81.34995')], 'partOfState': 'south central', 'wfo': 'TBW'}, +'FLC057': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alafia River State Park', 0, '27.77924', '-82.13205'), ('Bloomingdale', 0, '27.87724', '-82.25985'), ('Boyette', 0, '27.82004', '-82.23995'), ('Brandon', 0, '27.92944', '-82.29145'), ('Busch Gardens', 0, '28.03504', '-82.42045'), ('Carrollwood', 0, '28.04974', '-82.49305'), ('Channelside', 0, '27.94804', '-82.44695'), ('Cheval', 0, '28.14844', '-82.51405'), ('Davis Islands', 0, '27.92374', '-82.45435'), ('Dover', 0, '27.99294', '-82.22045'), ('Egmont Key', 0, '27.59504', '-82.76295'), ('Fish Hawk', 0, '27.85054', '-82.21045'), ('Florida State Fairgrounds', 0, '27.99044', '-82.36515'), ('Fort Lonesome', 0, '27.70004', '-82.13995'), ('Gibsonton', 0, '27.84104', '-82.37035'), ('Hillsborough River State Park', 0, '28.14384', '-82.23145'), ('Lake Fern', 0, '28.14944', '-82.57965'), ('Lettuce Lake Park', 0, '28.07164', '-82.37605'), ('Lithia Springs State Park', 0, '27.86514', '-82.22735'), ('Little Manatee River State Park', 0, '27.67394', '-82.37145'), ('Lutz', 0, '28.13874', '-82.46305'), ('Macdill Air Force Base', 0, '27.84924', '-82.52145'), ('Mango', 0, '27.99094', '-82.30745'), ('New Tampa', 0, '28.12004', '-82.36995'), ('Orient Park', 0, '27.98254', '-82.37845'), ('Palm River', 0, '27.93164', '-82.38315'), ('Peter O Knight Airport', 0, '27.91564', '-82.44925'), ('Plant City', 0, '28.00584', '-82.12845'), ('Plant City Airport', 0, '28.00014', '-82.16325'), ('Progress Village', 0, '27.90174', '-82.36465'), ('Raymond James Stadium', 0, '27.97564', '-82.50325'), ('Riverview', 0, '27.87054', '-82.31665'), ('Ruskin', 0, '27.71444', '-82.42905'), ('Seffner', 0, '27.99764', '-82.27485'), ('Soho', 0, '27.92914', '-82.48305'), ('South Tampa', 0, '27.89444', '-82.50605'), ('Sun City Center', 0, '27.72144', '-82.35195'), ('Tampa', 0, '27.95904', '-82.48205'), ('Tampa Executive Airport', 0, '28.01094', '-82.34355'), ('Tampa International Airport', 0, '27.97554', '-82.53315'), ('Temple Terrace', 0, '28.04244', '-82.38215'), ('Thonotosassa', 0, '28.07224', '-82.30285'), ('Town N Country', 0, '28.01024', '-82.57735'), ('University Of South Florida', 0, '28.05174', '-82.40265'), ('University Of Tampa', 0, '27.94704', '-82.46445'), ('Valrico', 0, '27.94804', '-82.25595'), ('Westchase', 0, '28.05284', '-82.61135'), ('West Park', 0, '28.01154', '-82.51625'), ('Wimauma', 0, '27.71314', '-82.30655'), ('Ybor City', 0, '27.96454', '-82.43525')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC057': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alafia River State Park', 0, '27.77924', '-82.13205'), ('Bloomingdale', 0, '27.87724', '-82.25985'), ('Boyette', 0, '27.82004', '-82.23995'), ('Brandon', 0, '27.92944', '-82.29145'), ('Busch Gardens', 0, '28.03504', '-82.42045'), ('Carrollwood', 0, '28.04974', '-82.49305'), ('Channelside', 0, '27.94804', '-82.44695'), ('Cheval', 0, '28.14844', '-82.51405'), ('Davis Islands', 0, '27.92374', '-82.45435'), ('Dover', 0, '27.99294', '-82.22045'), ('Egmont Key', 0, '27.59504', '-82.76295'), ('Fish Hawk', 0, '27.85054', '-82.21045'), ('Florida State Fairgrounds', 0, '27.99044', '-82.36515'), ('Fort Lonesome', 0, '27.70004', '-82.13995'), ('Gibsonton', 0, '27.84104', '-82.37035'), ('Hillsborough River State Park', 0, '28.14384', '-82.23145'), ('Lake Fern', 0, '28.14944', '-82.57965'), ('Lettuce Lake Park', 0, '28.07164', '-82.37605'), ('Lithia Springs State Park', 0, '27.86514', '-82.22735'), ('Little Manatee River State Park', 0, '27.67394', '-82.37145'), ('Lutz', 0, '28.13874', '-82.46305'), ('Macdill Air Force Base', 0, '27.84924', '-82.52145'), ('Mango', 0, '27.99094', '-82.30745'), ('New Tampa', 0, '28.12004', '-82.36995'), ('Orient Park', 0, '27.98254', '-82.37845'), ('Palm River', 0, '27.93164', '-82.38315'), ('Peter O Knight Airport', 0, '27.91564', '-82.44925'), ('Plant City', 0, '28.00584', '-82.12845'), ('Plant City Airport', 0, '28.00014', '-82.16325'), ('Progress Village', 0, '27.90174', '-82.36465'), ('Raymond James Stadium', 0, '27.97564', '-82.50325'), ('Riverview', 0, '27.87054', '-82.31665'), ('Ruskin', 0, '27.71444', '-82.42905'), ('Seffner', 0, '27.99764', '-82.27485'), ('Soho', 0, '27.92914', '-82.48305'), ('South Tampa', 0, '27.89444', '-82.50605'), ('Sun City Center', 0, '27.72144', '-82.35195'), ('Tampa', 0, '27.95904', '-82.48205'), ('Tampa Executive Airport', 0, '28.01094', '-82.34355'), ('Tampa International Airport', 0, '27.97554', '-82.53315'), ('Temple Terrace', 0, '28.04244', '-82.38215'), ('Thonotosassa', 0, '28.07224', '-82.30285'), ('Town N Country', 0, '28.01024', '-82.57735'), ('University Of South Florida', 0, '28.05174', '-82.40265'), ('University Of Tampa', 0, '27.94704', '-82.46445'), ('Valrico', 0, '27.94804', '-82.25595'), ('Westchase', 0, '28.05284', '-82.61135'), ('West Park', 0, '28.01154', '-82.51625'), ('Wimauma', 0, '27.71314', '-82.30655'), ('Ybor City', 0, '27.96454', '-82.43525')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC059': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Ards Crossroads', 356, '30.95920', '-85.69300'), ('Arrant Settlement', 457, '30.85840', '-85.97430'), ('Baker Settlement', 221, '30.86620', '-85.90560'), ('Barker Store', 4681, '30.91360', '-85.91590'), ('Bethlehem', 0, '30.92547', '-85.73961'), ('Bonifay', 4078, '30.78840', '-85.67980'), ('Cerrogordo', 221, '30.83120', '-85.88760'), ('Cobb Crossroads', 2402, '30.97970', '-85.54760'), ('Esto', 356, '30.98161', '-85.64670'), ('Gritney', 218, '30.83377', '-85.84021'), ('Hickory Hill', 221, '30.82214', '-85.91698'), ('Holland Crossroads', 356, '30.96480', '-85.64640'), ('Holmes County Airport', 3592, '30.84430', '-85.60150'), ('Hudson', 221, '30.86150', '-85.94350'), ('Hulaw', 0, '30.77553', '-85.72527'), ('Izagora', 199, '30.90940', '-85.84180'), ('Leonia', 4681, '30.91202', '-86.01761'), ('Miller Crossroads', 174, '30.94870', '-85.74180'), ('New Hope', 4681, '30.95195', '-85.87849'), ('Noma', 0, '30.89120', '-85.62196'), ('Noma Junction', 213, '30.97270', '-85.61840'), ('Pittman', 199, '30.94190', '-85.81970'), ('Ponce De Leon', 457, '30.72280', '-85.93750'), ('Prosperity', 457, '30.85100', '-85.94700'), ('Royals Crossroads', 0, '30.97602', '-85.99795'), ('Smith Crossroads', 0, '30.98305', '-85.77206'), ('Sweetgum Head', 0, '30.98005', '-85.95899'), ('Tendil Crossing', 213, '30.96390', '-85.57980'), ('Westville', 221, '30.77450', '-85.85180')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC061': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Blue Cypress Lake', 3813, '27.72910', '-80.75450'), ('Disneys Vero Beach Resort', 0, '27.76120', '-80.39620'), ('Fellsmere', 3813, '27.76650', '-80.59690'), ('Floralton Beach', 3457, '27.59290', '-80.33280'), ('Gifford', 7599, '27.67530', '-80.40960'), ('Grovenor Estates', 15217, '27.57780', '-80.42550'), ('Indian River Shores', 3448, '27.70570', '-80.38250'), ('Jaycee Beach', 17705, '27.66580', '-80.35950'), ('Moorings Of Vero Beach', 3457, '27.57840', '-80.32990'), ('Orchid', 292, '27.77000', '-80.41000'), ('Pointe West', 0, '27.63000', '-80.48700'), ('Roseland', 1775, '27.83990', '-80.48950'), ('Sebastian', 21921, '27.79203', '-80.48576'), ('Sebastian Highlands', 0, '27.78524', '-80.49638'), ('Sebastian Inlet', 16181, '27.85900', '-80.44740'), ('Sebastian Inlet State Park', 1775, '27.84980', '-80.44310'), ('South Beach', 0, '27.59000', '-80.33330'), ('Vero Beach', 17705, '27.64590', '-80.39420'), ('Vero Beach Airport', 0, '27.65433', '-80.41806'), ('Vero Beach Highland', 15217, '27.57670', '-80.39830'), ('Vero Beach South', 20362, '27.61580', '-80.41340'), ('Vero Lake Estates', 16181, '27.74620', '-80.52860'), ('Wabasso', 918, '27.75050', '-80.43770'), ('Wabasso Beach', 1075, '27.76450', '-80.39920'), ('Winter Beach', 965, '27.71890', '-80.42090')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC063': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alford', 466, '30.69300', '-85.39240'), ('Alliance', 506, '30.61460', '-85.11431'), ('Bascom', 106, '30.92860', '-85.11710'), ('Blue Spring', 0, '30.78977', '-85.14166'), ('Browntown', 2402, '30.98200', '-85.46740'), ('Buena Vista', 0, '30.87999', '-85.03517'), ('Campbellton', 212, '30.94900', '-85.40120'), ('Chipola Terrace', 735, '30.82750', '-85.16910'), ('Compass Lake', 466, '30.59170', '-85.39280'), ('Cottondale', 869, '30.79850', '-85.37610'), ('Cottondale Airport', 0, '30.78278', '-85.37824'), ('Cypress', 792, '30.71312', '-85.07484'), ('Dellwood', 792, '30.82696', '-85.05237'), ('Ellaville', 0, '30.97170', '-85.37703'), ('Graceville', 2402, '30.95722', '-85.51736'), ('Grand Ridge', 792, '30.71147', '-85.01981'), ('Greenwood', 735, '30.87000', '-85.16200'), ('Haynes', 792, '30.86885', '-84.95810'), ('Hornsville', 0, '30.94093', '-85.00419'), ('Inwood', 0, '30.70003', '-84.97423'), ('Jacobs', 239, '30.89410', '-85.40990'), ('Kynesville', 466, '30.73070', '-85.35470'), ('Lovedale', 106, '30.87840', '-85.04320'), ('Malone', 2007, '30.95750', '-85.16200'), ('Marianna', 6230, '30.77500', '-85.23970'), ('Marianna Municipal A/P', 735, '30.83400', '-85.18440'), ('Richter Crossroads', 3592, '30.83610', '-85.50220'), ('Ridgetop', 0, '30.63252', '-85.40013'), ('Rock Creek', 506, '30.65100', '-85.16030'), ('Round Lake', 466, '30.65080', '-85.39430'), ('Sills', 0, '30.94477', '-85.28400'), ('Simsville', 6230, '30.67990', '-85.17420'), ('Sink Creek', 506, '30.62350', '-85.15240'), ('Sneads', 1919, '30.70880', '-84.92460'), ('Star', 0, '30.71811', '-85.13722'), ('Steele City', 466, '30.72360', '-85.38790'), ('Two Egg', 735, '30.85278', '-85.07739'), ('Union City', 0, '30.63154', '-85.15657')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC063': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alford', 466, '30.69300', '-85.39240'), ('Alliance', 506, '30.61460', '-85.11431'), ('Bascom', 106, '30.92860', '-85.11710'), ('Blue Spring', 0, '30.78977', '-85.14166'), ('Browntown', 2402, '30.98200', '-85.46740'), ('Buena Vista', 0, '30.87999', '-85.03517'), ('Campbellton', 212, '30.94900', '-85.40120'), ('Chipola Terrace', 735, '30.82750', '-85.16910'), ('Compass Lake', 466, '30.59170', '-85.39280'), ('Cottondale', 869, '30.79850', '-85.37610'), ('Cottondale Airport', 0, '30.78278', '-85.37824'), ('Cypress', 792, '30.71312', '-85.07484'), ('Dellwood', 792, '30.82696', '-85.05237'), ('Ellaville', 0, '30.97170', '-85.37703'), ('Graceville', 2402, '30.95722', '-85.51736'), ('Grand Ridge', 792, '30.71147', '-85.01981'), ('Greenwood', 735, '30.87000', '-85.16200'), ('Haynes', 792, '30.86885', '-84.95810'), ('Hornsville', 0, '30.94093', '-85.00419'), ('Inwood', 0, '30.70003', '-84.97423'), ('Jacobs', 239, '30.89410', '-85.40990'), ('Kynesville', 466, '30.73070', '-85.35470'), ('Lovedale', 106, '30.87840', '-85.04320'), ('Malone', 2007, '30.95750', '-85.16200'), ('Marianna', 6230, '30.77500', '-85.23970'), ('Marianna Municipal A/P', 735, '30.83400', '-85.18440'), ('Richter Crossroads', 3592, '30.83610', '-85.50220'), ('Ridgetop', 0, '30.63252', '-85.40013'), ('Rock Creek', 506, '30.65100', '-85.16030'), ('Round Lake', 466, '30.65080', '-85.39430'), ('Sills', 0, '30.94477', '-85.28400'), ('Simsville', 6230, '30.67990', '-85.17420'), ('Sink Creek', 506, '30.62350', '-85.15240'), ('Sneads', 1919, '30.70880', '-84.92460'), ('Star', 0, '30.71811', '-85.13722'), ('Steele City', 466, '30.72360', '-85.38790'), ('Two Egg', 735, '30.85278', '-85.07739'), ('Union City', 0, '30.63154', '-85.15657')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC065': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alma', 2533, '30.61020', '-83.90650'), ('Ashville', 837, '30.61520', '-83.64710'), ('Aucilla', 837, '30.47990', '-83.75430'), ('Capps', 2533, '30.41150', '-83.91130'), ('Casa Blanco', 2533, '30.51560', '-83.88790'), ('Cody', 0, '30.36138', '-84.05166'), ('Dills', 2533, '30.62190', '-83.77230'), ('Drifton', 2533, '30.49500', '-83.88070'), ('Fanlew', 272, '30.27090', '-84.05770'), ('Festus', 2533, '30.60000', '-83.96900'), ('Fincher', 0, '30.65287', '-83.97421'), ('Goose Pasture', 0, '30.20250', '-83.93815'), ('Hells Half Acre', 0, '30.19901', '-83.98607'), ('Jarrott', 2533, '30.62270', '-83.93230'), ('Lake Miccosukee', 0, '30.57367', '-83.97766'), ('Lamont', 2533, '30.37660', '-83.81340'), ('Limestone', 0, '30.35836', '-84.02933'), ('Lloyd', 2533, '30.47808', '-84.02263'), ('Lois', 2533, '30.52570', '-83.91590'), ('Monticello', 2533, '30.54470', '-83.87020'), ('Montivilla', 2533, '30.54690', '-83.88880'), ('Nash', 2533, '30.45770', '-83.89330'), ('Thomas City', 2533, '30.35460', '-83.97320'), ('Wacissa', 2533, '30.35770', '-83.98880'), ('Wacissa Springs', 0, '30.33975', '-83.99165'), ('Waukeenah', 2533, '30.41230', '-83.95150')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC067': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alton', 0, '30.05302', '-83.13822'), ('Buckville', 988, '30.12920', '-83.29249'), ('Chancey', 0, '30.24594', '-83.25923'), ('Cooks Hammock', 988, '29.92990', '-83.27656'), ('Day', 988, '30.19240', '-83.29190'), ('Fletcher Springs', 0, '29.84667', '-82.89290'), ('Grady', 0, '29.95435', '-82.93207'), ('Hatch Bend', 349, '29.84738', '-82.91671'), ('Mayo', 988, '30.05100', '-83.17670'), ('Mayo Junction', 0, '30.20545', '-83.26604'), ('Midway', 1446, '30.01205', '-83.07973'), ('San Pedro Junction', 0, '30.01083', '-83.21528'), ('Townsend', 0, '30.12913', '-83.33949')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC069': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alexander Springs', 0, '29.08120', '-81.57640'), ('Altoona', 88, '28.96570', '-81.64890'), ('Astatula', 1298, '28.71060', '-81.73490'), ('Astor', 1487, '29.16390', '-81.53460'), ('Astor Park', 0, '29.15200', '-81.57400'), ('Bassville Park', 2752, '28.83850', '-81.76770'), ('Cassia', 2814, '28.88910', '-81.46570'), ('Clermont', 9333, '28.55120', '-81.75770'), ('Emeralda', 11828, '28.94990', '-81.82470'), ('Eustis', 15106, '28.85390', '-81.68520'), ('Ferndale', 233, '28.62180', '-81.69930'), ('Forest Hills', 3424, '29.00290', '-81.43360'), ('Fruitland Park', 3186, '28.85710', '-81.90950'), ('Fullerville', 3424, '29.00880', '-81.45450'), ('Groveland', 2360, '28.56300', '-81.85210'), ('Hawthorne', 1415, '28.76120', '-81.87100'), ('Hontoon Island State Park', 3424, '28.97430', '-81.36960'), ('Howey In The Hills', 956, '28.71590', '-81.77480'), ('Lady Lake', 11828, '28.92780', '-81.92890'), ('Lake Dora', 9700, '28.78920', '-81.69520'), ('Lake Dorr', 0, '29.00030', '-81.62210'), ('Lake Eustis', 2776, '28.85090', '-81.72970'), ('Lake Griffin', 1008, '28.84660', '-81.85010'), ('Lake Harris', 1008, '28.77690', '-81.82520'), ('Lake Kathryn', 1487, '29.01530', '-81.48860'), ('Lake Louisa', 0, '28.47950', '-81.73850'), ('Lake Yale', 2776, '28.91610', '-81.74000'), ('Leesburg', 15956, '28.80850', '-81.88260'), ('Leesburg Airport', 0, '28.82373', '-81.80776'), ('Lisbon', 273, '28.87040', '-81.78320'), ('Little Lake Harris', 956, '28.72560', '-81.75840'), ('Mascotte', 2687, '28.57620', '-81.88860'), ('Mid Florida Lakes', 2776, '28.86280', '-81.75700'), ('Minneola', 5435, '28.57510', '-81.74710'), ('Montverde', 882, '28.59680', '-81.67600'), ('Mount Dora', 9418, '28.80670', '-81.64170'), ('Mount Plymouth', 2814, '28.79970', '-81.53230'), ('Okahumpka', 251, '28.74760', '-81.89490'), ('Paisley', 734, '28.98230', '-81.54290'), ('Pittman', 192, '28.99740', '-81.64380'), ('Sellers Lake', 0, '29.11400', '-81.63430'), ('Silver Lake', 1882, '28.84170', '-81.79850'), ('Tavares', 9700, '28.80480', '-81.73570'), ('Umatilla', 2214, '28.92750', '-81.66690'), ('Yalaha', 1175, '28.74650', '-81.82420')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC071': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alva', 0, '26.71514', '-81.61105'), ('Bokeelia', 0, '26.70404', '-82.16995'), ('Bonita Springs', 0, '26.34094', '-81.78505'), ('Burnt Store Marina', 0, '26.75004', '-82.05095'), ('Cape Coral', 0, '26.57504', '-81.98495'), ('Captiva', 0, '26.52004', '-82.18995'), ('Estero', 0, '26.47604', '-81.81515'), ('Fort Myers', 0, '26.63064', '-81.85055'), ('Fort Myers Beach', 0, '26.45004', '-81.94595'), ('Fort Myers Shores', 0, '26.71354', '-81.73865'), ('Fort Myers Villas', 0, '26.55004', '-81.86895'), ('Gateway', 0, '26.57474', '-81.75425'), ('Lehigh Acres', 0, '26.60294', '-81.63305'), ('North Fort Myers', 0, '26.70564', '-81.89275'), ('Page Field Airport', 0, '26.58664', '-81.86325'), ('Page Park', 0, '26.57384', '-81.86995'), ('Pine Island', 0, '26.61004', '-82.11995'), ('Punta Rassa', 0, '26.48754', '-82.01245'), ('Saint James City', 0, '26.49974', '-82.08085'), ('Sanibel', 0, '26.44394', '-82.10085'), ('Southwest Florida Airport', 0, '26.53624', '-81.75515'), ('Suncoast Estates', 0, '26.71124', '-81.86925'), ('Tice', 0, '26.67454', '-81.81775'), ('Whiskey Creek', 0, '26.57224', '-81.89035')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLC071': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alva', 0, '26.71514', '-81.61105'), ('Bokeelia', 0, '26.70404', '-82.16995'), ('Bonita Springs', 0, '26.34094', '-81.78505'), ('Burnt Store Marina', 0, '26.75004', '-82.05095'), ('Cape Coral', 0, '26.57504', '-81.98495'), ('Captiva', 0, '26.52004', '-82.18995'), ('Estero', 0, '26.47604', '-81.81515'), ('Fort Myers', 0, '26.63064', '-81.85055'), ('Fort Myers Beach', 0, '26.45004', '-81.94595'), ('Fort Myers Shores', 0, '26.71354', '-81.73865'), ('Fort Myers Villas', 0, '26.55004', '-81.86895'), ('Gateway', 0, '26.57474', '-81.75425'), ('Lehigh Acres', 0, '26.60294', '-81.63305'), ('North Fort Myers', 0, '26.70564', '-81.89275'), ('Page Field Airport', 0, '26.58664', '-81.86325'), ('Page Park', 0, '26.57384', '-81.86995'), ('Pine Island', 0, '26.61004', '-82.11995'), ('Punta Rassa', 0, '26.48754', '-82.01245'), ('Saint James City', 0, '26.49974', '-82.08085'), ('Sanibel', 0, '26.44394', '-82.10085'), ('Southwest Florida Airport', 0, '26.53624', '-81.75515'), ('Suncoast Estates', 0, '26.71124', '-81.86925'), ('Tice', 0, '26.67454', '-81.81775'), ('Whiskey Creek', 0, '26.57224', '-81.89035')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLC073': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Andrew', 0, '30.39997', '-84.40012'), ('Apalachee Regional Park', 0, '30.42098', '-84.15343'), ('Baum', 0, '30.49288', '-84.09153'), ('Belair', 3006, '30.38667', '-84.27280'), ('Bloxham', 1446, '30.38710', '-84.63130'), ('Bradfordville', 150624, '30.57019', '-84.21999'), ('Bragg Stadium', 0, '30.42598', '-84.29223'), ('Brown House', 1446, '30.30350', '-84.50860'), ('Capitola', 150624, '30.45182', '-84.09131'), ('Chaires', 150624, '30.43982', '-84.12319'), ('Chaires Crossroads', 150624, '30.42220', '-84.11810'), ('Concord', 2533, '30.55820', '-84.04537'), ('Doak Campbell Stadium', 0, '30.43798', '-84.30458'), ('Eight Mile Pond', 0, '30.32831', '-84.30543'), ('Fallschase', 0, '30.45975', '-84.21032'), ('Florida A And M', 0, '30.42851', '-84.28574'), ('Florida State University', 0, '30.44155', '-84.29522'), ('Forest Meadows Park', 0, '30.53352', '-84.27935'), ('Fort Braden', 1446, '30.42778', '-84.53323'), ('Gaither Community Center', 0, '30.40447', '-84.29747'), ('Governors Square Mall', 0, '30.43661', '-84.25409'), ('Helen', 0, '30.30293', '-84.40068'), ('Iamonia', 9035, '30.66680', '-84.16350'), ('Indian Head Acres', 0, '30.42567', '-84.25784'), ('Innovation Park', 0, '30.42520', '-84.32190'), ('Killearn Estates', 150624, '30.51321', '-84.22360'), ('Killearn Lakes', 150624, '30.58153', '-84.22429'), ('Kleman Plaza', 0, '30.43995', '-84.28377'), ('Lake Bradford', 0, '30.40499', '-84.33936'), ('Lake Ella', 0, '30.46100', '-84.27973'), ('Lake Iamonia', 0, '30.62994', '-84.25021'), ('Lake Jackson', 0, '30.53008', '-84.33020'), ('Lake Munson', 0, '30.36864', '-84.30941'), ('Leon County Civic Center', 0, '30.43774', '-84.28734'), ('Leon Sinks', 0, '30.30938', '-84.34604'), ('Levy Park', 0, '30.46256', '-84.29129'), ('Lutterloh', 3006, '30.33064', '-84.25145'), ('Maclay State Gardens', 150624, '30.52664', '-84.25571'), ('Macon Community Park', 0, '30.49038', '-84.28004'), ('Miccosukee', 2533, '30.59544', '-84.04115'), ('Mission San Luis', 0, '30.45091', '-84.32009'), ('Moccasin Gap', 150624, '30.59495', '-84.12037'), ('Natural Bridge', 0, '30.28520', '-84.15178'), ('North Florida Fairgrounds', 0, '30.40413', '-84.27722'), ('Orchard Pond', 0, '30.59179', '-84.32650'), ('Pisgah Church', 150624, '30.55392', '-84.15917'), ('Ralford Greenway', 0, '30.44443', '-84.17625'), ('Southwood', 0, '30.39128', '-84.21814'), ('Spring Hill', 69078, '30.33880', '-84.38820'), ('Springsax Park', 0, '30.40776', '-84.30111'), ('State Capital Complex', 0, '30.43798', '-84.28168'), ('Tallahassee', 150624, '30.43790', '-84.28160'), ('Tallahassee Coml Airport', 1713, '30.54600', '-84.37430'), ('Tallahassee Comm College', 0, '30.44488', '-84.34060'), ('Tallahassee Mall', 0, '30.47538', '-84.29129'), ('Tallahassee Memorial Hosp', 0, '30.45662', '-84.26191'), ('Tallahassee Regional A/P', 150624, '30.39620', '-84.35340'), ('Tom Brown Park', 0, '30.44599', '-84.21533'), ('Winthrop Park', 0, '30.46412', '-84.26753'), ('Woodville', 3006, '30.31410', '-84.24740')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC075': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bronson', 0, '29.44884', '-82.63865'), ('Cedar Key', 0, '29.14634', '-83.03955'), ('Chiefland', 0, '29.47894', '-82.86135'), ('Fanning Springs', 0, '29.58374', '-82.93045'), ('Fowlers Bluff', 0, '29.39514', '-83.02635'), ('Inglis', 0, '29.03264', '-82.65935'), ('Lebanon', 0, '29.17004', '-82.63995'), ('Manatee Springs State Park', 0, '29.49924', '-82.96855'), ('Otter Creek', 0, '29.32404', '-82.77335'), ('Williston', 0, '29.37044', '-82.45695'), ('Williston Municipal Airport', 0, '29.35574', '-82.47165'), ('Yankeetown', 0, '29.02990', '-82.71570')], 'partOfState': 'northern', 'wfo': 'TBW'}, +'FLC075': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bronson', 0, '29.44884', '-82.63865'), ('Cedar Key', 0, '29.14634', '-83.03955'), ('Chiefland', 0, '29.47894', '-82.86135'), ('Fanning Springs', 0, '29.58374', '-82.93045'), ('Fowlers Bluff', 0, '29.39514', '-83.02635'), ('Inglis', 0, '29.03264', '-82.65935'), ('Lebanon', 0, '29.17004', '-82.63995'), ('Manatee Springs State Park', 0, '29.49924', '-82.96855'), ('Otter Creek', 0, '29.32404', '-82.77335'), ('Williston', 0, '29.37044', '-82.45695'), ('Williston Municipal Airport', 0, '29.35574', '-82.47165'), ('Yankeetown', 0, '29.02990', '-82.71570')], 'partOfState': 'northern', 'wfo': 'TBW'}, +'FLC077': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bristol', 845, '30.43174', '-84.98173'), ('Central City', 845, '30.18780', '-84.92570'), ('Clio', 845, '30.31870', '-84.82610'), ('East Camp', 0, '30.14481', '-84.73464'), ('Estiffanulga', 845, '30.30830', '-85.03360'), ('Hosford', 845, '30.39022', '-84.79826'), ('Jensen Place', 0, '30.22992', '-84.92711'), ('Jewel Fire Tower', 0, '30.19678', '-84.72776'), ('Kern', 1722, '30.12830', '-84.98910'), ('Lewis', 1722, '30.21400', '-85.05690'), ('Liberty', 845, '30.28140', '-84.84170'), ('Lowry', 619, '30.42280', '-84.77610'), ('Nixon Garden', 0, '30.21222', '-84.91693'), ('Orange', 845, '30.23108', '-85.02824'), ('Owens Bridge', 0, '30.03874', '-84.84404'), ('Poplar Camp', 0, '30.12607', '-84.69097'), ('Red Hill', 0, '30.22217', '-85.06614'), ('Rock Bluff', 845, '30.54200', '-84.91320'), ('Roy', 0, '30.56484', '-84.90291'), ('Sumatra', 1722, '30.01870', '-84.97930'), ('Sweetwater', 14494, '30.50640', '-84.97250'), ('Telogia', 845, '30.35040', '-84.81930'), ('Twin Pole', 1303, '30.10240', '-84.84980'), ('Vilas', 845, '30.22137', '-84.88908'), ('Wilma', 1722, '30.15780', '-84.96230'), ('Woods', 845, '30.34590', '-84.98010')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC079': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cherry Lake', 3061, '30.58220', '-83.42740'), ('Ebb', 0, '30.35359', '-83.65297'), ('Greenville', 837, '30.47063', '-83.63508'), ('Hamburg', 837, '30.57110', '-83.51987'), ('Hanson', 3061, '30.55090', '-83.36730'), ('Hopewell', 3061, '30.38130', '-83.44480'), ('Lee', 352, '30.41840', '-83.30060'), ('Lovett', 5292, '30.62760', '-83.57340'), ('Madison', 3061, '30.46860', '-83.41540'), ('Moseley Hall', 837, '30.35389', '-83.58194'), ('Pinetta', 3061, '30.59340', '-83.35260'), ('Sirmans', 837, '30.35045', '-83.66124')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC081': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anna Maria Island', 0, '27.52894', '-82.73295'), ('Bayshore Gardens', 0, '27.43354', '-82.57995'), ('Bradenton', 0, '27.48794', '-82.57895'), ('Bradenton Beach', 0, '27.46404', '-82.69755'), ('Cortez', 0, '27.46854', '-82.67055'), ('Duette', 0, '27.59004', '-82.12295'), ('Ellenton', 0, '27.52364', '-82.52795'), ('Holmes Beach', 0, '27.51004', '-82.71565'), ('Lake Manatee State Park', 0, '27.47904', '-82.33595'), ('Lakewood Ranch', 0, '27.39494', '-82.43765'), ('Myakka City', 0, '27.35014', '-82.16265'), ('Myakka Head', 0, '27.47004', '-82.07995'), ('Oneco', 0, '27.44804', '-82.54595'), ('Palma Sola', 0, '27.51244', '-82.63285'), ('Palmetto', 0, '27.52194', '-82.57755'), ('Parrish', 0, '27.58784', '-82.42685'), ('Samoset', 0, '27.46954', '-82.54145'), ('Sarasota Bradenton Airport', 0, '27.39544', '-82.55435'), ('Whitney Beach', 0, '27.42974', '-82.68045')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC081': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anna Maria Island', 0, '27.52894', '-82.73295'), ('Bayshore Gardens', 0, '27.43354', '-82.57995'), ('Bradenton', 0, '27.48794', '-82.57895'), ('Bradenton Beach', 0, '27.46404', '-82.69755'), ('Cortez', 0, '27.46854', '-82.67055'), ('Duette', 0, '27.59004', '-82.12295'), ('Ellenton', 0, '27.52364', '-82.52795'), ('Holmes Beach', 0, '27.51004', '-82.71565'), ('Lake Manatee State Park', 0, '27.47904', '-82.33595'), ('Lakewood Ranch', 0, '27.39494', '-82.43765'), ('Myakka City', 0, '27.35014', '-82.16265'), ('Myakka Head', 0, '27.47004', '-82.07995'), ('Oneco', 0, '27.44804', '-82.54595'), ('Palma Sola', 0, '27.51244', '-82.63285'), ('Palmetto', 0, '27.52194', '-82.57755'), ('Parrish', 0, '27.58784', '-82.42685'), ('Samoset', 0, '27.46954', '-82.54145'), ('Sarasota Bradenton Airport', 0, '27.39544', '-82.55435'), ('Whitney Beach', 0, '27.42974', '-82.68045')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC083': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anthony', 45943, '29.28850', '-82.11250'), ('Belleview', 3478, '29.05980', '-82.05480'), ('Burbank', 45943, '29.28950', '-82.00200'), ('Citra', 571, '29.41130', '-82.11040'), ('Dunnellon', 1898, '29.04950', '-82.44840'), ('Flemington', 453, '29.40690', '-82.29860'), ('Fort Mccoy', 571, '29.36390', '-81.96790'), ('Hog Valley', 1475, '29.49240', '-81.89610'), ('Juniper Springs', 1487, '29.18190', '-81.73500'), ('Lake Weir', 3478, '29.01830', '-81.98860'), ('Lowell', 571, '29.32990', '-82.19210'), ('Lynne', 6690, '29.19180', '-81.91800'), ('McIntosh', 453, '29.44910', '-82.22080'), ('Moss Bluff', 6690, '29.08260', '-81.88400'), ('Ocala', 45943, '29.18740', '-82.13080'), ('Ocala Airport', 45943, '29.17090', '-82.22240'), ('Ocklawaha', 6690, '29.04210', '-81.92990'), ('Orange Springs', 1475, '29.50500', '-81.94590'), ('Rainbow Lakes Estates', 1898, '29.14690', '-82.44780'), ('Reddick', 571, '29.36760', '-82.19830'), ('Romeo', 1898, '29.20540', '-82.43690'), ('Salt Springs', 586, '29.34920', '-81.73640'), ('Santos', 3478, '29.10760', '-82.09460'), ('Silver Springs Shores', 6690, '29.10360', '-82.00630'), ('Sparr', 571, '29.33840', '-82.11290'), ('Summerfield', 3478, '29.00850', '-82.03510'), ('Weirsdale', 11828, '28.98180', '-81.92460')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC085': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Hobe Sound', 11376, '27.07240', '-80.13960'), ('Hobe Sound Beach', 11376, '27.06500', '-80.11550'), ('Hobe Sound Wildlife Refuge', 0, '27.10200', '-80.13430'), ('Indiantown', 5588, '27.02340', '-80.47140'), ('J And S Fish Camp', 0, '27.09027', '-80.65737'), ('Jensen Beach', 11100, '27.23610', '-80.23090'), ('Jonathan Dickinson State Park', 620, '27.01220', '-80.12480'), ('Jupiter Island', 620, '27.01000', '-80.09300'), ('Palm City', 20097, '27.16130', '-80.26890'), ('Port Salerno', 10141, '27.14650', '-80.18980'), ('Rio', 1028, '27.21842', '-80.24004'), ('Sewalls Point', 1946, '27.19731', '-80.19911'), ('Stuart', 14633, '27.19430', '-80.24320'), ('Witham Field', 0, '27.18162', '-80.22154')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC086': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aventura', 25267, '25.96000', '-80.14000'), ('Carol City', 59443, '25.94000', '-80.26000'), ('Coral Gables', 42249, '25.73000', '-80.27000'), ('Coral Way Village', 16243, '25.73000', '-80.32000'), ('Country Walk', 10653, '25.63000', '-80.43000'), ('Cutler Ridge', 24781, '25.60000', '-80.36000'), ('Doral', 20438, '25.84000', '-80.36000'), ('Florida City', 7843, '25.45500', '-80.48000'), ('Fortymile Bend', 10653, '25.76000', '-80.83000'), ('Goulds', 7453, '25.56000', '-80.40000'), ('Hialeah', 226419, '25.86000', '-80.29000'), ('Hialeah Gardens', 19297, '25.87000', '-80.34000'), ('Homestead', 31909, '25.47500', '-80.47000'), ('Howard', 13675, '25.64000', '-80.35000'), ('Inlikita', 10653, '25.60000', '-80.47000'), ('Kendale Lakes', 56901, '25.71000', '-80.42000'), ('Kendall', 75226, '25.68000', '-80.32000'), ('Key Biscayne', 10507, '25.69000', '-80.16000'), ('Liberty City', 14468, '25.83000', '-80.22000'), ('Mahogany Hammock', 7843, '25.34000', '-80.84000'), ('Medley', 1098, '25.87000', '-80.36000'), ('Miami', 362470, '25.77000', '-80.20000'), ('Miami Beach', 87933, '25.81000', '-80.13000'), ('Miami International Arpt', 2348, '25.80000', '-80.29000'), ('Miami Lakes', 22676, '25.91000', '-80.31000'), ('Miami Shores', 10380, '25.86500', '-80.19000'), ('Miami Springs', 13712, '25.82000', '-80.29000'), ('Naranja', 4034, '25.52000', '-80.43000'), ('North Miami', 59880, '25.89400', '-80.18000'), ('North Miami Beach', 40786, '25.93000', '-80.16000'), ('Opa-Locka', 14951, '25.90000', '-80.26000'), ('Pa-Hay Okee Overlook', 7843, '25.43000', '-80.79000'), ('Pennsuco', 19297, '25.90000', '-80.38000'), ('Perrine', 17390, '25.62000', '-80.31000'), ('Princeton', 10090, '25.52000', '-80.38000'), ('Redland', 7843, '25.52000', '-80.51000'), ('Royal Palm Ranger', 7843, '25.39000', '-80.61000'), ('Shark Valley Obs Tower', 10653, '25.66000', '-80.77000'), ('South Miami', 10741, '25.71000', '-80.30000'), ('Sweetwater', 14494, '25.76500', '-80.37000'), ('Westwood Lakes', 12005, '25.72000', '-80.37000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLC087': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Big Coppitt Key', 2595, '24.59620', '-81.66030'), ('Big Pine Key', 5032, '24.68690', '-81.36610'), ('Big Torch Key', 1695, '24.73000', '-81.44000'), ('Boca Chica', 2595, '24.59000', '-81.70000'), ('Cudjoe Key', 1695, '24.67100', '-81.49850'), ('Flamingo', 186, '25.15000', '-80.94000'), ('Islamorada', 1220, '24.91830', '-80.63570'), ('Key Colony Beach', 788, '24.72260', '-81.02330'), ('Key West', 25478, '24.56280', '-81.77520'), ('Layton', 186, '24.82220', '-80.81170'), ('Little Torch Key', 5032, '24.67000', '-81.39000'), ('Loop Road Ee Cente', 479, '25.75000', '-80.97000'), ('Lower Matecumbe Key', 186, '24.86000', '-80.72000'), ('Marathon', 10255, '24.71190', '-81.08080'), ('No Name Key', 5032, '24.70000', '-81.32000'), ('North Key Largo', 1049, '25.26680', '-80.32360'), ('Northwest Cape Sable', 10255, '25.24000', '-81.17000'), ('Ocean Reef', 1049, '25.32000', '-80.28000'), ('Pinecrest', 19055, '25.75000', '-80.94000'), ('Ramrod Key', 5032, '24.66000', '-81.41000'), ('Rock Harbor', 11886, '25.08000', '-80.46000'), ('Route 1/Card Sound', 11886, '25.17000', '-80.37000'), ('Sugarloaf Key', 1695, '24.63000', '-81.55000'), ('Summerland Key', 1695, '24.66000', '-81.45000'), ('Wilderness Waterway', 479, '25.65000', '-81.16000')], 'partOfState': '', 'wfo': 'KEY'}, +'FLC087': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Big Coppitt Key', 2595, '24.59620', '-81.66030'), ('Big Pine Key', 5032, '24.68690', '-81.36610'), ('Big Torch Key', 1695, '24.73000', '-81.44000'), ('Boca Chica', 2595, '24.59000', '-81.70000'), ('Cudjoe Key', 1695, '24.67100', '-81.49850'), ('Flamingo', 186, '25.15000', '-80.94000'), ('Islamorada', 1220, '24.91830', '-80.63570'), ('Key Colony Beach', 788, '24.72260', '-81.02330'), ('Key West', 25478, '24.56280', '-81.77520'), ('Layton', 186, '24.82220', '-80.81170'), ('Little Torch Key', 5032, '24.67000', '-81.39000'), ('Loop Road Ee Cente', 479, '25.75000', '-80.97000'), ('Lower Matecumbe Key', 186, '24.86000', '-80.72000'), ('Marathon', 10255, '24.71190', '-81.08080'), ('No Name Key', 5032, '24.70000', '-81.32000'), ('North Key Largo', 1049, '25.26680', '-80.32360'), ('Northwest Cape Sable', 10255, '25.24000', '-81.17000'), ('Ocean Reef', 1049, '25.32000', '-80.28000'), ('Pinecrest', 19055, '25.75000', '-80.94000'), ('Ramrod Key', 5032, '24.66000', '-81.41000'), ('Rock Harbor', 11886, '25.08000', '-80.46000'), ('Route 1/Card Sound', 11886, '25.17000', '-80.37000'), ('Sugarloaf Key', 1695, '24.63000', '-81.55000'), ('Summerland Key', 1695, '24.66000', '-81.45000'), ('Wilderness Waterway', 479, '25.65000', '-81.16000')], 'partOfState': 'southwest', 'wfo': 'MFL'}, +'FLC087': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Big Coppitt Key', 2595, '24.59620', '-81.66030'), ('Big Pine Key', 5032, '24.68690', '-81.36610'), ('Big Torch Key', 1695, '24.73000', '-81.44000'), ('Boca Chica', 2595, '24.59000', '-81.70000'), ('Cudjoe Key', 1695, '24.67100', '-81.49850'), ('Flamingo', 186, '25.15000', '-80.94000'), ('Islamorada', 1220, '24.91830', '-80.63570'), ('Key Colony Beach', 788, '24.72260', '-81.02330'), ('Key West', 25478, '24.56280', '-81.77520'), ('Layton', 186, '24.82220', '-80.81170'), ('Little Torch Key', 5032, '24.67000', '-81.39000'), ('Loop Road Ee Cente', 479, '25.75000', '-80.97000'), ('Lower Matecumbe Key', 186, '24.86000', '-80.72000'), ('Marathon', 10255, '24.71190', '-81.08080'), ('No Name Key', 5032, '24.70000', '-81.32000'), ('North Key Largo', 1049, '25.26680', '-80.32360'), ('Northwest Cape Sable', 10255, '25.24000', '-81.17000'), ('Ocean Reef', 1049, '25.32000', '-80.28000'), ('Pinecrest', 19055, '25.75000', '-80.94000'), ('Ramrod Key', 5032, '24.66000', '-81.41000'), ('Rock Harbor', 11886, '25.08000', '-80.46000'), ('Route 1/Card Sound', 11886, '25.17000', '-80.37000'), ('Sugarloaf Key', 1695, '24.63000', '-81.55000'), ('Summerland Key', 1695, '24.66000', '-81.45000'), ('Wilderness Waterway', 479, '25.65000', '-81.16000')], 'partOfState': 'southeast', 'wfo': 'KEY'}, +'FLC087': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Big Coppitt Key', 2595, '24.59620', '-81.66030'), ('Big Pine Key', 5032, '24.68690', '-81.36610'), ('Big Torch Key', 1695, '24.73000', '-81.44000'), ('Boca Chica', 2595, '24.59000', '-81.70000'), ('Cudjoe Key', 1695, '24.67100', '-81.49850'), ('Flamingo', 186, '25.15000', '-80.94000'), ('Islamorada', 1220, '24.91830', '-80.63570'), ('Key Colony Beach', 788, '24.72260', '-81.02330'), ('Key West', 25478, '24.56280', '-81.77520'), ('Layton', 186, '24.82220', '-80.81170'), ('Little Torch Key', 5032, '24.67000', '-81.39000'), ('Loop Road Ee Cente', 479, '25.75000', '-80.97000'), ('Lower Matecumbe Key', 186, '24.86000', '-80.72000'), ('Marathon', 10255, '24.71190', '-81.08080'), ('No Name Key', 5032, '24.70000', '-81.32000'), ('North Key Largo', 1049, '25.26680', '-80.32360'), ('Northwest Cape Sable', 10255, '25.24000', '-81.17000'), ('Ocean Reef', 1049, '25.32000', '-80.28000'), ('Pinecrest', 19055, '25.75000', '-80.94000'), ('Ramrod Key', 5032, '24.66000', '-81.41000'), ('Rock Harbor', 11886, '25.08000', '-80.46000'), ('Route 1/Card Sound', 11886, '25.17000', '-80.37000'), ('Sugarloaf Key', 1695, '24.63000', '-81.55000'), ('Summerland Key', 1695, '24.66000', '-81.45000'), ('Wilderness Waterway', 479, '25.65000', '-81.16000')], 'partOfState': '', 'wfo': 'KEY'}, +'FLC089': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Amelia City', 10549, '30.59000', '-81.45750'), ('Bryceville', 1634, '30.38450', '-81.93900'), ('Callahan', 962, '30.56140', '-81.83260'), ('Fernandina Beach', 10549, '30.65770', '-81.44920'), ('Hilliard', 2702, '30.69490', '-81.92270'), ('Kings Ferry', 2702, '30.78510', '-81.83920'), ('Ratliff', 4667, '30.50210', '-81.81470'), ('Yulee', 8392, '30.63270', '-81.57390')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLC091': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Auburn', 14766, '30.82031', '-86.53772'), ('Baker', 14766, '30.84692', '-86.68909'), ('Beaver Creek', 0, '30.88031', '-86.77661'), ('Blackman', 14766, '30.92468', '-86.63660'), ('Campton', 549, '30.87347', '-86.51831'), ('Cannon Town', 14766, '30.85492', '-86.67401'), ('Cinco Bayou', 0, '30.42230', '-86.60962'), ('Clear Springs', 0, '30.87390', '-86.57001'), ('Crestview', 14766, '30.78131', '-86.51361'), ('Crestview Airport', 14766, '30.77911', '-86.52301'), ('Dana Point', 0, '30.48712', '-86.46613'), ('Deerland', 14766, '30.75189', '-86.43579'), ('Destin', 11119, '30.39490', '-86.47021'), ('Dorcas', 14766, '30.79828', '-86.41571'), ('Eglin AFB', 8082, '30.55890', '-86.57660'), ('Eglin Village', 0, '30.46307', '-86.53943'), ('Escambia Farms', 549, '30.95789', '-86.63300'), ('Fort Walton Beach', 0, '30.39392', '-86.58051'), ('Galliver', 14766, '30.72449', '-86.70721'), ('Garden City', 0, '30.83252', '-86.53333'), ('Garnier', 0, '30.45813', '-86.60132'), ('Good Hope', 549, '30.96912', '-86.63129'), ('Harris', 0, '30.41412', '-86.73633'), ('Holt', 14766, '30.71588', '-86.74579'), ('Kellys Mill', 0, '30.73810', '-86.77612'), ('Killingsworth Crossroads', 0, '30.75067', '-86.45862'), ('Lake Lorraine', 0, '30.44031', '-86.56818'), ('Laurel Hill', 549, '30.92810', '-86.45862'), ('Longwood', 0, '30.46088', '-86.58862'), ('Mary Esther', 4055, '30.41290', '-86.65887'), ('Milligan', 14766, '30.75250', '-86.64081'), ('Nubbin Ridge', 0, '30.84052', '-86.67468'), ('Oak Grove', 0, '30.92493', '-86.56750'), ('Okaloo', 0, '30.91571', '-86.48608'), ('Peaden', 549, '30.90851', '-86.58301'), ('Rock Creek', 0, '30.96228', '-86.77881'), ('Seminole', 11684, '30.47913', '-86.40991'), ('Shalimar', 0, '30.44330', '-86.58313'), ('Silver Springs', 0, '30.80670', '-86.55249'), ('Svea', 549, '30.96771', '-86.40332'), ('Valparaiso', 6408, '30.49268', '-86.50781'), ('Wright', 21697, '30.44452', '-86.64130'), ('Wynnehaven Beach', 0, '30.41028', '-86.78223')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLC093': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Basinger', 0, '27.40000', '-81.01670'), ('Basswood Estates', 0, '27.27890', '-80.85770'), ('Country Hills Estates', 0, '27.35850', '-80.81540'), ('Fort Drum', 0, '27.52660', '-80.80700'), ('Four Seasons Estates', 0, '27.25010', '-80.77510'), ('Kissimmee Prarie Preserve', 0, '27.58400', '-81.04530'), ('Okeechobee', 0, '27.24130', '-80.82990'), ('Okeechobee Airport', 0, '27.26603', '-80.85100'), ('Taylor Creek', 0, '27.21630', '-80.78980'), ('Treasure Island', 0, '27.21749', '-80.78606'), ('Whispering Pines', 0, '27.27720', '-80.83980')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC095': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aloma', 0, '28.60070', '-81.30690'), ('Animal Kingdom', 0, '28.35740', '-81.59070'), ('Apopka', 26969, '28.68670', '-81.51330'), ('Avalon Park', 0, '28.50475', '-81.16047'), ('Azalea Park', 0, '28.54540', '-81.29520'), ('Bay Hill', 0, '28.46760', '-81.51630'), ('Bay Lake', 47, '28.39140', '-81.56670'), ('Belle Isle', 5988, '28.47010', '-81.35030'), ('Bithlo', 8268, '28.56970', '-81.10960'), ('Christmas', 1146, '28.53880', '-81.02270'), ('Clarcona', 0, '28.61260', '-81.49890'), ('College Park', 0, '28.57156', '-81.37273'), ('Conway', 13467, '28.49520', '-81.33230'), ('Doctor Phillips', 0, '28.44920', '-81.49250'), ('Eatonville', 0, '28.61690', '-81.39090'), ('Edgewood', 0, '28.48560', '-81.37210'), ('Epcot', 0, '28.37170', '-81.54940'), ('Fairview Shores', 0, '28.60020', '-81.39090'), ('Hollywood Studios', 0, '28.35700', '-81.56030'), ('Horizon West', 14000, '28.46273', '-81.60387'), ('Killarney', 0, '28.54690', '-81.65060'), ('Lake Apopka', 0, '28.63690', '-81.63690'), ('Lake Buena Vista', 0, '28.37736', '-81.52570'), ('Lake Nona', 0, '28.40167', '-81.24527'), ('Lockhart', 0, '28.62610', '-81.43660'), ('Magic Kingdom', 0, '28.41870', '-81.58120'), ('Maitland', 0, '28.62790', '-81.36710'), ('Oakland', 0, '28.55610', '-81.62890'), ('Oak Ridge', 0, '28.47090', '-81.42460'), ('Ocoee', 0, '28.57220', '-81.53260'), ('Orlando', 0, '28.50470', '-81.37420'), ('Orlando Executive Airport', 0, '28.54566', '-81.33576'), ('Orlando International Airport', 0, '28.43115', '-81.30814'), ('Orlovista', 0, '28.54400', '-81.46300'), ('Pine Castle', 0, '28.46560', '-81.37300'), ('Pine Hills', 0, '28.58000', '-81.46020'), ('Plymouth', 0, '28.69190', '-81.54760'), ('Rock Springs', 0, '28.75790', '-81.50080'), ('Sea World', 0, '28.41138', '-81.46126'), ('Tangelo Park', 0, '28.45572', '-81.44621'), ('Tangerine', 0, '28.76480', '-81.62070'), ('Union Park', 0, '28.56380', '-81.23600'), ('Universal Studios', 0, '28.47561', '-81.46836'), ('University Of Central Florida', 0, '28.60190', '-81.20050'), ('Vineland', 0, '28.39510', '-81.50330'), ('Wedgefield', 6705, '28.48030', '-81.07850'), ('Wekiwa Springs State Park', 0, '28.72170', '-81.46480'), ('Wet N Wild Water Park', 0, '28.46124', '-81.46498'), ('Windermere', 0, '28.49510', '-81.53350'), ('Winter Garden', 0, '28.56230', '-81.58330'), ('Winter Park', 0, '28.59590', '-81.34370'), ('Zellwood', 0, '28.73080', '-81.60140')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC097': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alligator Lake', 0, '28.21790', '-81.20460'), ('Austin Tindall Park', 0, '28.33266', '-81.27911'), ('Buena Ventura Lakes', 0, '28.33570', '-81.35320'), ('Campbell', 0, '28.25710', '-81.45270'), ('Celebration', 7427, '28.32000', '-81.54010'), ('Champions Gate', 0, '28.26173', '-81.61843'), ('Deer Park', 4367, '28.09110', '-80.89810'), ('East Lake Toho', 0, '28.29880', '-81.28720'), ('Forever Florida', 0, '28.04170', '-81.04170'), ('Four Corners', 0, '28.32574', '-81.63998'), ('Harmony', 1350, '28.18917', '-81.14528'), ('Holopaw', 0, '28.13296', '-81.06512'), ('Intercession City', 0, '28.26220', '-81.50820'), ('Kenansville', 0, '27.87640', '-80.99220'), ('Kissimmee', 0, '28.30350', '-81.41050'), ('Kissimmee Airport', 0, '28.29041', '-81.43759'), ('Lake Kissimmee', 0, '27.91610', '-81.27640'), ('Lake Marian', 0, '27.87150', '-81.06630'), ('Narcoossee', 0, '28.29820', '-81.23940'), ('Osceola Heritage Park', 0, '28.29840', '-81.36400'), ('Pine Grove', 0, '28.25940', '-81.18480'), ('Poinciana Place', 0, '28.26173', '-81.61843'), ('Saint Cloud', 0, '28.24180', '-81.28980'), ('West Lake Toho', 0, '28.21420', '-81.39860'), ('Yeehaw Junction', 0, '27.69975', '-80.90437')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC099': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aberdeen Golf Course', 2572, '26.56000', '-80.17000'), ('Belle Glade', 14906, '26.69000', '-80.67000'), ('Boca Raton', 74764, '26.36000', '-80.10000'), ('Boca Raton Equestrian', 4758, '26.44000', '-80.19000'), ('Boca West', 2847, '26.38000', '-80.16000'), ('Boynton Beach', 60389, '26.53000', '-80.09000'), ('Caloosa', 35058, '26.89000', '-80.26000'), ('Canal Point', 525, '26.86000', '-80.63000'), ('Delray Beach', 60020, '26.46000', '-80.09000'), ('Florida Gardens', 22940, '26.62000', '-80.17000'), ('Greenacres City', 22940, '26.63000', '-80.13500'), ('Haverhill', 1454, '26.69000', '-80.12400'), ('Holey Land Wildlife Refuge', 1141, '26.43000', '-80.73000'), ('Juno Beach', 3262, '26.88000', '-80.05500'), ('Jupiter', 39328, '26.93000', '-80.10000'), ('Lake Harbor', 195, '26.70000', '-80.83000'), ('Lake Worth', 35133, '26.62000', '-80.07000'), ('Lion Country Safari Park', 38216, '26.71000', '-80.36000'), ('Ocean Ridge', 1636, '26.53000', '-80.05000'), ('Okeelanta', 1141, '26.60000', '-80.71000'), ('Pahokee', 5985, '26.82000', '-80.66000'), ('Palm Beach', 10468, '26.70000', '-80.04000'), ('Palm Beach Gardens', 35058, '26.83000', '-80.10000'), ('Palm Springs', 11699, '26.63500', '-80.09500'), ('Philo Farms', 5273, '26.95000', '-80.18000'), ('Riviera Beach', 29884, '26.78000', '-80.08000'), ('Rotenberger Wildlife Refuge', 3859, '26.40000', '-80.83000'), ('Royal Palm Beach', 21523, '26.71000', '-80.23000'), ('Sandalfoot Cove', 16582, '26.34000', '-80.20000'), ('South Bay', 3859, '26.66000', '-80.72000'), ('Tequesta', 5273, '26.96000', '-80.09000'), ('The Acreage', 21523, '26.77000', '-80.25000'), ('Wellington', 38216, '26.67000', '-80.25000'), ('West Palm Beach', 82103, '26.71000', '-80.06000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLC101': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aripeka', 0, '28.43084', '-82.66375'), ('Bayonet Point', 0, '28.32630', '-82.68320'), ('Blanton', 0, '28.41160', '-82.24540'), ('Crystal Springs', 0, '28.18150', '-82.15800'), ('Dade City', 0, '28.36154', '-82.19545'), ('Dade City North', 0, '28.38334', '-82.19305'), ('Darby', 0, '28.37004', '-82.34995'), ('Elfers', 0, '28.21670', '-82.72200'), ('Gowers Corner', 0, '28.32130', '-82.50320'), ('Holiday', 0, '28.18594', '-82.74215'), ('Hudson', 0, '28.35774', '-82.69945'), ('Jay B Starkey Wilderness Park', 0, '28.24604', '-82.58945'), ('Lacoochee', 0, '28.46504', '-82.16915'), ('Land O Lakes', 0, '28.22174', '-82.45375'), ('Meadow Pointe', 0, '28.17950', '-82.31040'), ('Moon Lake', 0, '28.30004', '-82.59995'), ('New Port Richey', 0, '28.24774', '-82.71775'), ('Odessa', 0, '28.20004', '-82.58995'), ('Richland', 0, '28.28300', '-82.14620'), ('Saint Leo', 0, '28.33704', '-82.25945'), ('San Antonio', 0, '28.33744', '-82.27895'), ('Shady Hills', 0, '28.41000', '-82.54370'), ('Trinity', 0, '28.17784', '-82.67105'), ('Wesley Chapel', 0, '28.23944', '-82.32805'), ('Zephyrhills', 0, '28.23604', '-82.17645'), ('Zephyrhills Municipal Airport', 0, '28.22814', '-82.15585')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC103': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Albert Whitted Airport', 0, '27.76004', '-82.63995'), ('Belleair', 0, '27.93674', '-82.81215'), ('Belleair Beach', 0, '27.92314', '-82.84325'), ('Belleair Bluffs', 0, '27.91934', '-82.81925'), ('Belleair Shore', 0, '27.91704', '-82.84295'), ('Boyd Hill Nature Preserve', 0, '27.72794', '-82.64995'), ('Caladesi Island', 0, '28.02904', '-82.81995'), ('Clearwater', 0, '27.96004', '-82.76545'), ('Clearwater Beach', 0, '27.97704', '-82.82795'), ('Crescent Lake', 0, '27.78764', '-82.63995'), ('Crystal Beach', 0, '28.09004', '-82.77995'), ('Downtown Saint Petersburg', 0, '27.77004', '-82.63995'), ('Dunedin', 0, '28.01914', '-82.77155'), ('Fort Desoto Park', 0, '27.61994', '-82.72335'), ('Gulfport', 0, '27.74634', '-82.71015'), ('Highpoint', 0, '27.91674', '-82.71355'), ('Honeymoon Island', 0, '28.07004', '-82.82995'), ('Indian Rocks Beach', 0, '27.89774', '-82.84425'), ('Indian Shores', 0, '27.86284', '-82.84815'), ('Kenneth City', 0, '27.81574', '-82.71545'), ('Lake Maggiore', 0, '27.74004', '-82.64995'), ('Largo', 0, '27.90864', '-82.78095'), ('Lealman', 0, '27.82254', '-82.68885'), ('Madeira Beach', 0, '27.79544', '-82.79165'), ('North Redington Beach', 0, '27.81734', '-82.82185'), ('Oldsmar', 0, '28.04854', '-82.67065'), ('Palm Harbor', 0, '28.08764', '-82.76315'), ('Pass-A-grille Beach', 0, '27.68764', '-82.73765'), ('Pinellas Park', 0, '27.85724', '-82.70595'), ('Pinellas Point', 0, '27.70854', '-82.65385'), ('Redington Beach', 0, '27.80974', '-82.81185'), ('Redington Shores', 0, '27.82904', '-82.82995'), ('Safety Harbor', 0, '28.00934', '-82.69625'), ('Saint Pete Beach', 0, '27.72504', '-82.74135'), ('Saint Pete Clearwater Airport', 0, '27.92004', '-82.68995'), ('Saint Petersburg', 0, '27.75804', '-82.67205'), ('Sawgrass Lake Park', 0, '27.84004', '-82.66995'), ('Seminole', 0, '27.84174', '-82.78615'), ('Snell Isle', 0, '27.80004', '-82.60995'), ('South Pasadena', 0, '27.76014', '-82.73345'), ('Tarpon Springs', 0, '28.14584', '-82.75695'), ('Treasure Island', 0, '27.76754', '-82.76845'), ('Tropicana Field', 0, '27.76814', '-82.65315'), ('Venetian Isles', 0, '27.81804', '-82.59995'), ('Vinoy Park', 0, '27.77904', '-82.62995'), ('Walsingham Park', 0, '27.87504', '-82.80995'), ('Weedon Island State Preserve', 0, '27.84264', '-82.59995')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC103': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Albert Whitted Airport', 0, '27.76004', '-82.63995'), ('Belleair', 0, '27.93674', '-82.81215'), ('Belleair Beach', 0, '27.92314', '-82.84325'), ('Belleair Bluffs', 0, '27.91934', '-82.81925'), ('Belleair Shore', 0, '27.91704', '-82.84295'), ('Boyd Hill Nature Preserve', 0, '27.72794', '-82.64995'), ('Caladesi Island', 0, '28.02904', '-82.81995'), ('Clearwater', 0, '27.96004', '-82.76545'), ('Clearwater Beach', 0, '27.97704', '-82.82795'), ('Crescent Lake', 0, '27.78764', '-82.63995'), ('Crystal Beach', 0, '28.09004', '-82.77995'), ('Downtown Saint Petersburg', 0, '27.77004', '-82.63995'), ('Dunedin', 0, '28.01914', '-82.77155'), ('Fort Desoto Park', 0, '27.61994', '-82.72335'), ('Gulfport', 0, '27.74634', '-82.71015'), ('Highpoint', 0, '27.91674', '-82.71355'), ('Honeymoon Island', 0, '28.07004', '-82.82995'), ('Indian Rocks Beach', 0, '27.89774', '-82.84425'), ('Indian Shores', 0, '27.86284', '-82.84815'), ('Kenneth City', 0, '27.81574', '-82.71545'), ('Lake Maggiore', 0, '27.74004', '-82.64995'), ('Largo', 0, '27.90864', '-82.78095'), ('Lealman', 0, '27.82254', '-82.68885'), ('Madeira Beach', 0, '27.79544', '-82.79165'), ('North Redington Beach', 0, '27.81734', '-82.82185'), ('Oldsmar', 0, '28.04854', '-82.67065'), ('Palm Harbor', 0, '28.08764', '-82.76315'), ('Pass-A-grille Beach', 0, '27.68764', '-82.73765'), ('Pinellas Park', 0, '27.85724', '-82.70595'), ('Pinellas Point', 0, '27.70854', '-82.65385'), ('Redington Beach', 0, '27.80974', '-82.81185'), ('Redington Shores', 0, '27.82904', '-82.82995'), ('Safety Harbor', 0, '28.00934', '-82.69625'), ('Saint Pete Beach', 0, '27.72504', '-82.74135'), ('Saint Pete Clearwater Airport', 0, '27.92004', '-82.68995'), ('Saint Petersburg', 0, '27.75804', '-82.67205'), ('Sawgrass Lake Park', 0, '27.84004', '-82.66995'), ('Seminole', 0, '27.84174', '-82.78615'), ('Snell Isle', 0, '27.80004', '-82.60995'), ('South Pasadena', 0, '27.76014', '-82.73345'), ('Tarpon Springs', 0, '28.14584', '-82.75695'), ('Treasure Island', 0, '27.76754', '-82.76845'), ('Tropicana Field', 0, '27.76814', '-82.65315'), ('Venetian Isles', 0, '27.81804', '-82.59995'), ('Vinoy Park', 0, '27.77904', '-82.62995'), ('Walsingham Park', 0, '27.87504', '-82.80995'), ('Weedon Island State Preserve', 0, '27.84264', '-82.59995')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC105': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alturas', 0, '27.85724', '-81.71155'), ('Auburndale', 0, '28.07024', '-81.79775'), ('Babson Park', 0, '27.83364', '-81.52805'), ('Bartow', 0, '27.89524', '-81.84715'), ('Bartow Municipal Airport', 0, '27.94344', '-81.78335'), ('Bradley Junction', 0, '27.79504', '-81.98055'), ('Crooked Lake Park', 0, '27.82994', '-81.58965'), ('Crystal Lake', 0, '28.03534', '-81.90845'), ('Cypress Gardens', 0, '28.00124', '-81.68695'), ('Davenport', 0, '28.16054', '-81.60485'), ('Dundee', 0, '28.02054', '-81.62095'), ('Eagle Lake', 0, '27.97824', '-81.75765'), ('Fort Meade', 0, '27.75234', '-81.79555'), ('Frostproof', 0, '27.74614', '-81.53125'), ('Gibsonia', 0, '28.11794', '-81.96835'), ('Haines City', 0, '28.10904', '-81.62885'), ('Highland City', 0, '27.96064', '-81.87925'), ('Highland Park', 0, '27.86514', '-81.56305'), ('Hillcrest Heights', 0, '27.82384', '-81.53325'), ('Homeland', 0, '27.81784', '-81.82455'), ('Indian Lake Estates', 0, '27.81234', '-81.32655'), ('Inwood', 0, '28.03824', '-81.76745'), ('Kathleen', 0, '28.11794', '-82.02805'), ('Lake Alfred', 0, '28.09074', '-81.72575'), ('Lake Hamilton', 0, '28.04784', '-81.62585'), ('Lakeland', 0, '28.04124', '-81.95995'), ('Lakeland Highlands', 0, '27.95954', '-81.95015'), ('Lakeland Linder Airport', 0, '27.98894', '-82.01855'), ('Lake Wales', 0, '27.90114', '-81.58775'), ('Lake Wales Municipal Airport', 0, '27.89384', '-81.62035'), ('Loughman', 0, '28.23674', '-81.57165'), ('Mulberry', 0, '27.90164', '-81.97305'), ('Poinciana', 0, '28.08514', '-81.48945'), ('Polk City', 0, '28.18214', '-81.82465'), ('River Ranch', 0, '27.77594', '-81.20715'), ('Rockridge', 0, '28.30264', '-81.93705'), ('Wahneta', 0, '27.95594', '-81.72925'), ('Waverly', 0, '27.96764', '-81.61885'), ('Willow Oak', 0, '27.91814', '-82.02145'), ('Winston', 0, '28.04254', '-82.01125'), ('Winter Haven', 0, '28.02004', '-81.72175'), ('Winter Haven Airport', 0, '28.06294', '-81.75325'), ('Withla', 0, '28.33974', '-81.87395')], 'partOfState': 'central', 'wfo': 'TBW'}, +'FLC107': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bostwick', 10033, '29.77380', '-81.63750'), ('Carraway', 10033, '29.70900', '-81.78680'), ('Crescent City', 1776, '29.43830', '-81.51660'), ('East Palatka', 1707, '29.65110', '-81.59940'), ('Florahome', 1475, '29.73190', '-81.88400'), ('Georgetown', 586, '29.39120', '-81.63900'), ('Hollister', 1475, '29.62260', '-81.81400'), ('Interlachen', 1475, '29.61690', '-81.89790'), ('Johnson', 1475, '29.58450', '-81.97350'), ('Lake Como', 789, '29.48370', '-81.57320'), ('Mannville', 1475, '29.62870', '-81.86840'), ('Melrose', 1349, '29.70930', '-82.05010'), ('Orange Mills', 1707, '29.68480', '-81.57350'), ('Palatka', 10033, '29.64920', '-81.65660'), ('Pomona Park', 789, '29.49920', '-81.59430'), ('Putnam Hall', 1349, '29.73650', '-81.95960'), ('San Mateo', 1707, '29.60650', '-81.58480'), ('Satsuma', 586, '29.55480', '-81.65620'), ('Welaka', 586, '29.48090', '-81.66350')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLC109': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anastasia', 11592, '29.88760', '-81.28980'), ('Bakersville', 11592, '29.90590', '-81.49150'), ('Butler Beach', 4436, '29.79820', '-81.26710'), ('Crescent Beach', 985, '29.73110', '-81.23880'), ('Dupont Center', 4922, '29.75620', '-81.31340'), ('Durbin', 19860, '30.08730', '-81.46150'), ('Elkton', 521, '29.78290', '-81.42620'), ('Fruit Cove', 16077, '30.10090', '-81.61850'), ('Guana River State Park', 4942, '30.09000', '-81.34000'), ('Hastings', 521, '29.71490', '-81.50790'), ('Palm Valley', 19860, '30.19970', '-81.39110'), ('Picolata', 5378, '29.91480', '-81.59320'), ('Ponte Vedra Beach', 20990, '30.23960', '-81.38590'), ('Saint Augustine', 11592, '29.89190', '-81.31080'), ('Saint Augustine Beach', 4683, '29.84210', '-81.27110'), ('Saint Augustine Shore', 4922, '29.81050', '-81.31070'), ('Saint Augustine South', 5035, '29.84250', '-81.31570'), ('Sawgrass', 4942, '30.19240', '-81.37080'), ('South Ponte Vedra', 2533, '30.02220', '-81.32390'), ('Spuds', 521, '29.73950', '-81.47180'), ('Switzerland', 16077, '30.07590', '-81.64760'), ('Vilano Beach', 2533, '29.93830', '-81.30210')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLC111': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Carlton', 4221, '27.34320', '-80.42290'), ('Collins Park Estates', 5793, '27.36980', '-80.32090'), ('Digital Domain Park', 0, '27.32480', '-80.40470'), ('Fort Pierce', 37516, '27.44130', '-80.32200'), ('Fort Pierce North', 7386, '27.47480', '-80.35620'), ('Fort Pierce Ocean Park', 0, '27.46090', '-80.28740'), ('Fort Pierce South', 5672, '27.41080', '-80.35510'), ('Frederick Douglass Park', 5793, '27.40920', '-80.26770'), ('Indian River Estates', 5793, '27.36400', '-80.31010'), ('Indrio', 604, '27.52040', '-80.35320'), ('Lakewood Park', 10458, '27.53800', '-80.39030'), ('Nettles Island', 0, '27.28557', '-80.22334'), ('Pepper Beach Park', 0, '27.49790', '-80.30100'), ('Port Saint Lucie', 88769, '27.27980', '-80.35450'), ('Port Saint Lucie River Park', 4874, '27.32130', '-80.33180'), ('Queens Cove', 604, '27.51480', '-80.31790'), ('Saint Lucie Airport', 0, '27.49467', '-80.36647'), ('Saint Lucie Nuclear Power Plant', 4846, '27.34748', '-80.24561'), ('Saint Lucie Village', 0, '27.50000', '-80.34100'), ('Saint Lucie West', 5175, '27.31490', '-80.39560'), ('Surfside Park', 0, '27.44940', '-80.28560'), ('Tradition', 0, '27.27521', '-80.44347'), ('Walton', 0, '27.29650', '-80.26000'), ('Waveland', 463, '27.26760', '-80.20690'), ('White City', 4221, '27.37900', '-80.34230')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC113': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Allentown', 7045, '30.76550', '-87.10773'), ('Avalon', 0, '30.53711', '-87.10089'), ('Bagdad', 1490, '30.50513', '-87.06201'), ('Belandville', 0, '30.98187', '-86.84882'), ('Berrydale', 579, '30.90210', '-87.02808'), ('Brownsdale', 0, '30.89429', '-87.23492'), ('Broxson', 0, '30.56769', '-86.92188'), ('Chumuckla', 1312, '30.76349', '-87.22229'), ('Chumuckla Springs', 0, '30.83392', '-87.29608'), ('Cobbtown', 0, '30.88312', '-87.11969'), ('Dickerson City', 0, '30.48389', '-87.06348'), ('Dixonville', 0, '30.98669', '-87.04022'), ('East Milton', 0, '30.61609', '-86.96002'), ('Fidelis', 0, '30.93951', '-87.02710'), ('Floridale', 0, '30.68170', '-86.83691'), ('Floridatown', 0, '30.58289', '-87.15991'), ('Galt City', 0, '30.58948', '-87.05798'), ('Garcon Point', 0, '30.47308', '-87.08899'), ('Gulf Breeze', 5665, '30.36688', '-87.17419'), ('Harold', 1490, '30.66650', '-86.85071'), ('Harp', 0, '30.56049', '-87.10791'), ('Harper', 0, '30.44550', '-86.87909'), ('Holley', 0, '30.45270', '-86.91071'), ('Indian Ford', 0, '30.71350', '-86.92389'), ('Jay', 579, '30.88068', '-87.18939'), ('McLellan', 90, '30.98669', '-86.88641'), ('Midway', 0, '30.40649', '-87.00549'), ('Milton', 7045, '30.62988', '-87.05670'), ('Mineral Springs', 0, '30.83270', '-87.29578'), ('Mount Carmel', 0, '30.97192', '-87.14062'), ('Muddy Ford', 0, '30.45972', '-86.89502'), ('Mulat', 0, '30.55988', '-87.12921'), ('Munson', 90, '30.84692', '-86.88452'), ('Navarre', 4055, '30.41687', '-86.88068'), ('Navarre Beach', 0, '30.38110', '-86.86798'), ('New York', 0, '30.83850', '-87.20081'), ('Oriole Beach', 5665, '30.37988', '-87.09802'), ('Pace', 7393, '30.59949', '-87.16132'), ('Parkerville', 0, '30.62408', '-86.84833'), ('Pea Ridge', 0, '30.60309', '-87.10449'), ('Pine Bluff', 0, '30.55969', '-86.97821'), ('Pine Level', 412, '30.89447', '-87.14642'), ('Point Baker', 0, '30.67590', '-87.03998'), ('Roeville', 0, '30.68170', '-86.99573'), ('Santa Maria', 0, '30.94971', '-86.83521'), ('Sellersville', 0, '30.99188', '-86.92798'), ('Simmons Crossing', 0, '30.91412', '-86.96442'), ('Skyline', 0, '30.68127', '-87.06458'), ('Springhill', 0, '30.74792', '-86.92059'), ('Tiger Point', 0, '30.38409', '-87.06091'), ('Wallace', 0, '30.68872', '-87.18018'), ('Ward Basin', 0, '30.58533', '-86.99689'), ('Whitfield', 0, '30.88171', '-87.05670'), ('Whiting Field', 0, '30.71271', '-87.01910'), ('Woodlawn Beach', 0, '30.39111', '-86.99292')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLC115': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bee Ridge', 0, '27.28734', '-82.47555'), ('Desoto Lakes', 0, '27.37124', '-82.48995'), ('Englewood', 0, '26.95954', '-82.35425'), ('Fruitville', 0, '27.33254', '-82.46345'), ('Gator Creek Estate', 0, '27.26004', '-82.37995'), ('Hidden River', 0, '27.28004', '-82.26995'), ('Laurel', 0, '27.14254', '-82.46235'), ('Myakka River State Park', 0, '27.24304', '-82.31595'), ('Nokomis', 0, '27.12194', '-82.43665'), ('North Port', 0, '27.04964', '-82.19485'), ('Oscar Scherer State Park', 0, '27.17764', '-82.45865'), ('Osprey', 0, '27.19604', '-82.47995'), ('Sarasota', 0, '27.33614', '-82.54655'), ('Siesta Key', 0, '27.27714', '-82.56645'), ('South Venice', 0, '27.04264', '-82.41425'), ('Turtle Beach', 0, '27.21944', '-82.51715'), ('Vamo', 0, '27.22864', '-82.49645'), ('Venice', 0, '27.09794', '-82.45575'), ('Venice Gardens', 0, '27.06904', '-82.40495'), ('Warm Mineral Springs', 0, '27.04854', '-82.27025')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC115': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bee Ridge', 0, '27.28734', '-82.47555'), ('Desoto Lakes', 0, '27.37124', '-82.48995'), ('Englewood', 0, '26.95954', '-82.35425'), ('Fruitville', 0, '27.33254', '-82.46345'), ('Gator Creek Estate', 0, '27.26004', '-82.37995'), ('Hidden River', 0, '27.28004', '-82.26995'), ('Laurel', 0, '27.14254', '-82.46235'), ('Myakka River State Park', 0, '27.24304', '-82.31595'), ('Nokomis', 0, '27.12194', '-82.43665'), ('North Port', 0, '27.04964', '-82.19485'), ('Oscar Scherer State Park', 0, '27.17764', '-82.45865'), ('Osprey', 0, '27.19604', '-82.47995'), ('Sarasota', 0, '27.33614', '-82.54655'), ('Siesta Key', 0, '27.27714', '-82.56645'), ('South Venice', 0, '27.04264', '-82.41425'), ('Turtle Beach', 0, '27.21944', '-82.51715'), ('Vamo', 0, '27.22864', '-82.49645'), ('Venice', 0, '27.09794', '-82.45575'), ('Venice Gardens', 0, '27.06904', '-82.40495'), ('Warm Mineral Springs', 0, '27.04854', '-82.27025')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLC117': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Altamonte Springs', 41200, '28.66210', '-81.39520'), ('Casselberry', 22629, '28.66340', '-81.32350'), ('Central Florida Zoo', 15559, '28.82463', '-81.31265'), ('Chuluota', 1921, '28.63950', '-81.12030'), ('Fern Park', 8318, '28.64820', '-81.34580'), ('Forest City', 12612, '28.66120', '-81.44510'), ('Geneva', 2601, '28.73940', '-81.11530'), ('Goldenrod', 12039, '28.61150', '-81.29170'), ('Lake Harney', 1921, '28.76140', '-81.05850'), ('Lake Jessup', 0, '28.72660', '-81.22130'), ('Lake Mary', 11458, '28.75900', '-81.33410'), ('Longwood', 13745, '28.70100', '-81.34840'), ('Midway', 1446, '28.79010', '-81.23120'), ('Mullet Lake Park', 38291, '28.78890', '-81.13870'), ('Oviedo', 26316, '28.65750', '-81.18140'), ('Sanford', 38291, '28.78920', '-81.27570'), ('Sanford Airport', 0, '28.77574', '-81.23857'), ('Wekiva Springs', 23026, '28.69840', '-81.42600'), ('Winter Springs', 31666, '28.68150', '-81.27470')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC119': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Adamsville', 0, '28.79974', '-82.01995'), ('Bushnell', 0, '28.66444', '-82.11435'), ('Center Hill', 0, '28.64744', '-81.99805'), ('Coleman', 0, '28.80114', '-82.06925'), ('Istachatta', 0, '28.65004', '-82.26995'), ('Lake Panasoffkee', 0, '28.79024', '-82.13005'), ('Oxford', 0, '28.92764', '-82.03825'), ('Rutland', 0, '28.85364', '-82.21205'), ('Sumterville', 0, '28.74464', '-82.06435'), ('Tarrytown', 0, '28.55504', '-82.05485'), ('The Green Swamp', 0, '28.38004', '-81.99995'), ('The Villages', 0, '28.92484', '-82.00455'), ('Wahoo', 0, '28.69084', '-82.19585'), ('Webster', 0, '28.61184', '-82.05135'), ('Wildwood', 0, '28.85434', '-82.04075')], 'partOfState': 'central', 'wfo': 'TBW'}, +'FLC121': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Branford', 695, '29.96210', '-82.92760'), ('Dowling Park', 352, '30.24350', '-83.23650'), ('Hildreth', 409, '29.95260', '-82.80560'), ('Houston', 6480, '30.25680', '-82.90290'), ('Live Oak', 6480, '30.29430', '-82.98610'), ('Luraville', 988, '30.12230', '-83.16950'), ('McAlpin', 6480, '30.13900', '-82.95210'), ('Newburn', 6480, '30.27230', '-83.14090'), ('Obrien', 695, '30.03820', '-82.94040'), ('Suwannee Springs', 6480, '30.39400', '-82.93760'), ('Wellborn', 819, '30.23090', '-82.81990')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC123': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Adams Beach', 6847, '29.88164', '-83.63484'), ('Athena', 6847, '29.98804', '-83.49408'), ('Bird Island', 0, '29.79995', '-83.58018'), ('Blue Springs', 6847, '29.83546', '-83.57414'), ('Boyd', 6847, '30.18939', '-83.60335'), ('Bucell Junction', 6847, '30.06790', '-83.55983'), ('Buckhorn', 272, '30.13560', '-83.91499'), ('Cabbage Grove', 6847, '30.20945', '-83.87399'), ('Carbur', 6847, '29.91337', '-83.43186'), ('Cedar Island', 6847, '29.81450', '-83.58685'), ('Clara', 0, '29.79686', '-83.32049'), ('Dekle Beach', 6847, '29.84933', '-83.61922'), ('Econfina', 6847, '30.13150', '-83.86547'), ('Eridu', 837, '30.30190', '-83.74680'), ('Fenholloway', 6847, '30.07762', '-83.49661'), ('Fish Creek', 6847, '29.78570', '-83.57230'), ('Foley', 6847, '30.06932', '-83.53090'), ('Hampton Springs', 6847, '30.08572', '-83.65500'), ('Howell Place', 6847, '29.77107', '-83.50802'), ('Iddo', 837, '30.27780', '-83.72490'), ('Jack Lee Island', 0, '29.83097', '-83.60038'), ('Jug Island', 0, '29.84366', '-83.61699'), ('Lake Bird', 6847, '30.24858', '-83.62231'), ('Perry', 6847, '30.11757', '-83.58210'), ('Perry-Foley Airport', 6847, '30.07040', '-83.57590'), ('Pinland', 6847, '30.01800', '-83.52797'), ('Riverside', 0, '30.18172', '-83.80779'), ('Salem', 6847, '29.88741', '-83.41256'), ('Scanlon', 272, '30.13049', '-83.89603'), ('Secotan', 6847, '30.17637', '-83.63446'), ('Shady Grove', 837, '30.28804', '-83.63189'), ('Smith', 6847, '30.11972', '-83.40975'), ('Steinhatchee', 206, '29.67105', '-83.38760'), ('Tennille', 1775, '29.77802', '-83.32601')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC125': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Dukes', 193, '29.96620', '-82.40760'), ('Ellerbee', 187, '30.10540', '-82.20560'), ('Johnstown', 187, '30.04430', '-82.27230'), ('Lake Butler', 1927, '30.02050', '-82.33960'), ('Raiford', 187, '30.06410', '-82.23890'), ('Worthington Spring', 193, '29.93120', '-82.42430')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLC127': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Allandale', 45823, '29.12150', '-80.97980'), ('Apollo Beach', 7444, '28.90890', '-80.81070'), ('Bakerstown', 1776, '29.34790', '-81.49170'), ('Barberville', 2596, '29.18700', '-81.42120'), ('Bethune Beach', 0, '28.95830', '-80.84580'), ('Blue Spring State Park', 6604, '28.94437', '-81.33794'), ('Cassadaga', 2743, '28.96620', '-81.23630'), ('Daytona Beach', 64112, '29.21250', '-81.03080'), ('Daytona Beach Airport', 0, '29.18080', '-81.05736'), ('Daytona Beach Shores', 4299, '29.17350', '-80.98240'), ('Daytona International Speedway', 0, '29.18530', '-81.06910'), ('Debary', 15559, '28.88340', '-81.31180'), ('Deland', 20904, '29.03600', '-81.29750'), ('Deland Airport', 0, '29.06654', '-81.28366'), ('Deland Highlands', 1327, '29.06060', '-81.26440'), ('Deleon Springs', 2358, '29.11740', '-81.35180'), ('Deltona', 69543, '28.90990', '-81.20880'), ('Edgewater', 18668, '28.96760', '-80.90480'), ('Eldora', 0, '28.90830', '-80.81670'), ('Eldridge', 2596, '29.21130', '-81.45750'), ('Enterprise', 15559, '28.86910', '-81.26690'), ('Farmton', 69543, '28.84670', '-81.06090'), ('Glenwood', 2358, '29.08590', '-81.35440'), ('Harbor Oaks', 0, '29.10790', '-80.96920'), ('High Banks', 15559, '28.88490', '-81.35470'), ('Holly Hill', 12119, '29.24260', '-81.04410'), ('Lake Ashby', 69543, '28.93080', '-81.09500'), ('Lake George', 0, '29.28100', '-81.58920'), ('Lake Helen', 2743, '28.98370', '-81.23140'), ('Lake Monroe', 15559, '28.84430', '-81.27600'), ('Lake Woodruff', 0, '29.10030', '-81.41770'), ('Maytown', 1378, '28.80690', '-80.96040'), ('New Smyrna Beach', 22464, '29.02500', '-80.93330'), ('New Smyrna Beach Airport', 0, '29.05577', '-80.94742'), ('Oak Hill', 1792, '28.87500', '-80.85000'), ('Orange City', 6604, '28.93650', '-81.29280'), ('Ormond Beach', 36301, '29.27660', '-81.06140'), ('Ormond Beach Airport', 0, '29.30193', '-81.11385'), ('Ormond By The Sea', 8430, '29.33921', '-81.06576'), ('Osteen', 69543, '28.84590', '-81.16290'), ('Pierson', 2596, '29.23770', '-81.46090'), ('Port Orange', 45823, '29.16010', '-81.00330'), ('Seville', 2596, '29.31690', '-81.49290'), ('South Daytona', 13177, '29.16480', '-81.00480'), ('Spruce Creek', 4877, '29.07930', '-81.05310'), ('Turtle Mound', 1378, '28.94470', '-80.83520'), ('Valdez', 15559, '28.84500', '-81.33260'), ('Wilbur By The Sea', 2513, '29.13070', '-80.95790')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLC129': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arran', 0, '30.19042', '-84.41626'), ('Bethel', 3006, '30.25090', '-84.32420'), ('Buckhorn', 426, '30.06620', '-84.45190'), ('Crawfordville', 426, '30.17530', '-84.37350'), ('Curtis Mill', 0, '30.00799', '-84.52679'), ('Hilliardville', 3006, '30.28660', '-84.39960'), ('Hyde Park', 0, '30.16988', '-84.26226'), ('Liveoak Island', 0, '30.06155', '-84.27711'), ('Medart', 426, '30.08190', '-84.38730'), ('Newport', 272, '30.19982', '-84.18365'), ('Panacea', 426, '30.03660', '-84.38800'), ('Panacea-Wakulla Airport', 0, '29.98915', '-84.39577'), ('Plum Orchard', 0, '30.15131', '-84.14835'), ('Port Leon', 272, '30.13010', '-84.19520'), ('Saint Marks', 272, '30.15680', '-84.20700'), ('Sanborn', 426, '30.07479', '-84.60444'), ('Shadeville', 272, '30.19820', '-84.30910'), ('Shell Point', 0, '30.05907', '-84.29383'), ('Smith Creek', 426, '30.18050', '-84.65700'), ('Sopchoppy', 426, '30.05940', '-84.48880'), ('Spring Creek', 272, '30.08000', '-84.32980'), ('Tully', 0, '30.10461', '-84.38076'), ('Vereen', 0, '30.27327', '-84.23935'), ('Wakulla', 272, '30.23410', '-84.22910'), ('Wakulla Beach', 0, '30.10519', '-84.26195'), ('Wakulla Springs', 3006, '30.23360', '-84.30030')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC129': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arran', 0, '30.19042', '-84.41626'), ('Bethel', 3006, '30.25090', '-84.32420'), ('Buckhorn', 426, '30.06620', '-84.45190'), ('Crawfordville', 426, '30.17530', '-84.37350'), ('Curtis Mill', 0, '30.00799', '-84.52679'), ('Hilliardville', 3006, '30.28660', '-84.39960'), ('Hyde Park', 0, '30.16988', '-84.26226'), ('Liveoak Island', 0, '30.06155', '-84.27711'), ('Medart', 426, '30.08190', '-84.38730'), ('Newport', 272, '30.19982', '-84.18365'), ('Panacea', 426, '30.03660', '-84.38800'), ('Panacea-Wakulla Airport', 0, '29.98915', '-84.39577'), ('Plum Orchard', 0, '30.15131', '-84.14835'), ('Port Leon', 272, '30.13010', '-84.19520'), ('Saint Marks', 272, '30.15680', '-84.20700'), ('Sanborn', 426, '30.07479', '-84.60444'), ('Shadeville', 272, '30.19820', '-84.30910'), ('Shell Point', 0, '30.05907', '-84.29383'), ('Smith Creek', 426, '30.18050', '-84.65700'), ('Sopchoppy', 426, '30.05940', '-84.48880'), ('Spring Creek', 272, '30.08000', '-84.32980'), ('Tully', 0, '30.10461', '-84.38076'), ('Vereen', 0, '30.27327', '-84.23935'), ('Wakulla', 272, '30.23410', '-84.22910'), ('Wakulla Beach', 0, '30.10519', '-84.26195'), ('Wakulla Springs', 3006, '30.23360', '-84.30030')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLC131': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alpine Heights', 5089, '30.74580', '-86.20975'), ('Argyle', 5089, '30.71900', '-86.04430'), ('Blue Mountain Beach', 0, '30.34061', '-86.19845'), ('Bruce', 250, '30.47220', '-85.96420'), ('Bunker', 1190, '30.38620', '-86.08300'), ('Caney Creek', 656, '30.89970', '-86.20870'), ('Center Ridge', 5089, '30.79840', '-86.09420'), ('Choctaw Beach', 0, '30.46983', '-86.34430'), ('Clear Springs', 656, '30.97980', '-86.34540'), ('Cluster Springs', 5089, '30.83840', '-86.20540'), ('Darlington', 2190, '30.94240', '-86.05880'), ('De Funiak Spring Airport', 5089, '30.72980', '-86.15180'), ('De Funiak Springs', 5089, '30.72219', '-86.12051'), ('Douglass Crossroad', 457, '30.68860', '-85.97630'), ('Eucheeanna', 5089, '30.64570', '-86.04600'), ('Flowersville', 656, '30.95580', '-86.33850'), ('Four Mile Village', 0, '30.37899', '-86.32319'), ('Fox Hill', 656, '30.82639', '-86.29055'), ('Freeport', 1190, '30.50010', '-86.13520'), ('Gaskin', 2190, '30.97080', '-86.13530'), ('Glendale', 5089, '30.86290', '-86.11450'), ('Gordon', 656, '30.88980', '-86.27960'), ('Grayton Beach', 0, '30.33677', '-86.16455'), ('Gulf Pines', 0, '30.37675', '-86.33727'), ('Inlet Beach', 0, '30.27694', '-86.00830'), ('Knox Hill', 457, '30.64150', '-85.95830'), ('Lakewood', 656, '30.98720', '-86.28290'), ('Liberty', 5089, '30.82140', '-86.21510'), ('Miramar Beach', 0, '30.37931', '-86.36093'), ('Mossy Head', 5089, '30.74310', '-86.31500'), ('Natural Bridge', 656, '30.98712', '-86.21242'), ('New Harmony', 656, '30.85360', '-86.28000'), ('New Home', 1190, '30.60940', '-86.21990'), ('Oakwood Hills', 5089, '30.75810', '-86.25620'), ('Paxton', 656, '30.97651', '-86.30403'), ('Piney Grove', 5089, '30.80809', '-86.12481'), ('Pleasant Hill', 5089, '30.82400', '-86.06370'), ('Pleasant Ridge', 5089, '30.69190', '-86.17400'), ('Pond Creek', 0, '30.79225', '-86.38744'), ('Portland', 1190, '30.51230', '-86.19580'), ('Port Washington', 1190, '30.36830', '-86.11350'), ('Red Bay', 457, '30.59020', '-85.94350'), ('Rock Hill', 1190, '30.59839', '-86.11072'), ('Sandestin', 2435, '30.37990', '-86.33040'), ('Sand Hill', 5089, '30.83650', '-86.19070'), ('Santa Rosa Beach', 2435, '30.38890', '-86.22888'), ('Seagrove Beach', 0, '30.31758', '-86.12968'), ('Seaside', 0, '30.31982', '-86.13800'), ('Shady Grove', 457, '30.65646', '-85.99638'), ('Turquoise Beach', 2435, '30.40758', '-86.31224'), ('Union', 5089, '30.80630', '-86.04180'), ('Villa Tasso', 0, '30.46183', '-86.38780')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC131': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alpine Heights', 5089, '30.74580', '-86.20975'), ('Argyle', 5089, '30.71900', '-86.04430'), ('Blue Mountain Beach', 0, '30.34061', '-86.19845'), ('Bruce', 250, '30.47220', '-85.96420'), ('Bunker', 1190, '30.38620', '-86.08300'), ('Caney Creek', 656, '30.89970', '-86.20870'), ('Center Ridge', 5089, '30.79840', '-86.09420'), ('Choctaw Beach', 0, '30.46983', '-86.34430'), ('Clear Springs', 656, '30.97980', '-86.34540'), ('Cluster Springs', 5089, '30.83840', '-86.20540'), ('Darlington', 2190, '30.94240', '-86.05880'), ('De Funiak Spring Airport', 5089, '30.72980', '-86.15180'), ('De Funiak Springs', 5089, '30.72219', '-86.12051'), ('Douglass Crossroad', 457, '30.68860', '-85.97630'), ('Eucheeanna', 5089, '30.64570', '-86.04600'), ('Flowersville', 656, '30.95580', '-86.33850'), ('Four Mile Village', 0, '30.37899', '-86.32319'), ('Fox Hill', 656, '30.82639', '-86.29055'), ('Freeport', 1190, '30.50010', '-86.13520'), ('Gaskin', 2190, '30.97080', '-86.13530'), ('Glendale', 5089, '30.86290', '-86.11450'), ('Gordon', 656, '30.88980', '-86.27960'), ('Grayton Beach', 0, '30.33677', '-86.16455'), ('Gulf Pines', 0, '30.37675', '-86.33727'), ('Inlet Beach', 0, '30.27694', '-86.00830'), ('Knox Hill', 457, '30.64150', '-85.95830'), ('Lakewood', 656, '30.98720', '-86.28290'), ('Liberty', 5089, '30.82140', '-86.21510'), ('Miramar Beach', 0, '30.37931', '-86.36093'), ('Mossy Head', 5089, '30.74310', '-86.31500'), ('Natural Bridge', 656, '30.98712', '-86.21242'), ('New Harmony', 656, '30.85360', '-86.28000'), ('New Home', 1190, '30.60940', '-86.21990'), ('Oakwood Hills', 5089, '30.75810', '-86.25620'), ('Paxton', 656, '30.97651', '-86.30403'), ('Piney Grove', 5089, '30.80809', '-86.12481'), ('Pleasant Hill', 5089, '30.82400', '-86.06370'), ('Pleasant Ridge', 5089, '30.69190', '-86.17400'), ('Pond Creek', 0, '30.79225', '-86.38744'), ('Portland', 1190, '30.51230', '-86.19580'), ('Port Washington', 1190, '30.36830', '-86.11350'), ('Red Bay', 457, '30.59020', '-85.94350'), ('Rock Hill', 1190, '30.59839', '-86.11072'), ('Sandestin', 2435, '30.37990', '-86.33040'), ('Sand Hill', 5089, '30.83650', '-86.19070'), ('Santa Rosa Beach', 2435, '30.38890', '-86.22888'), ('Seagrove Beach', 0, '30.31758', '-86.12968'), ('Seaside', 0, '30.31982', '-86.13800'), ('Shady Grove', 457, '30.65646', '-85.99638'), ('Turquoise Beach', 2435, '30.40758', '-86.31224'), ('Union', 5089, '30.80630', '-86.04180'), ('Villa Tasso', 0, '30.46183', '-86.38780')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLC133': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bahoma', 0, '30.81465', '-85.50812'), ('Bradford', 0, '30.65510', '-85.55196'), ('Brock Crossroad', 0, '30.69056', '-85.62971'), ('Caryville', 218, '30.77305', '-85.81460'), ('Chipley', 3592, '30.77850', '-85.53900'), ('Chipley Municipal Airport', 3592, '30.75720', '-85.51510'), ('Crystal Lake', 5341, '30.44180', '-85.68860'), ('Ebro', 250, '30.44270', '-85.87410'), ('Five Points', 1362, '30.71100', '-85.75190'), ('Gilberts Mill', 0, '30.63552', '-85.49272'), ('Greenhead', 743, '30.50160', '-85.66050'), ('Hinsons Crossroads', 221, '30.66690', '-85.84250'), ('Holmes Valley', 0, '30.57685', '-85.74400'), ('Johnson Crossroads', 0, '30.72963', '-85.66334'), ('Live Oak', 0, '30.57977', '-85.86590'), ('Millers Ferry', 0, '30.57262', '-85.84434'), ('New Hope', 743, '30.57650', '-85.80920'), ('Orange Hill', 3592, '30.66951', '-85.51558'), ('Poplar Head', 4078, '30.71830', '-85.64770'), ('Porter Lake', 0, '30.49830', '-85.54342'), ('Red Head', 250, '30.48370', '-85.84230'), ('Riverside', 0, '30.48229', '-85.66447'), ('Singer Road', 0, '30.45644', '-85.48822'), ('Smyrna', 0, '30.59960', '-85.67848'), ('Spring Hollow', 0, '30.59364', '-85.62978'), ('Sunny Hills', 0, '30.69140', '-85.52191'), ('Sylvania', 0, '30.62003', '-85.67559'), ('Vernon', 743, '30.62330', '-85.71260'), ('Wausau', 398, '30.63190', '-85.58890'), ('Whitehead Crossroads', 0, '30.70435', '-85.76797')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'GAC001': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baxley', 4150, '31.76470', '-82.35190'), ('Graham', 312, '31.82850', '-82.50390'), ('Pine Grove', 4150, '31.81320', '-82.44760'), ('Plant Hatch', 4150, '31.93000', '-82.34000'), ('Surrency', 237, '31.72180', '-82.19830')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC003': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Axson', 1805, '31.27440', '-82.73660'), ('Pearson', 1805, '31.29720', '-82.85320'), ('Willacoochee', 1434, '31.34020', '-83.04620')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC005': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alma', 3236, '31.54340', '-82.47620'), ('New Lacy', 3236, '31.53620', '-82.37360')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC007': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bethany', 277, '31.30640', '-84.60000'), ('Crestview', 277, '31.33140', '-84.61850'), ('Elmodel Wma', 851, '31.34520', '-84.47690'), ('Hawkinstown', 851, '31.26200', '-84.45040'), ('Hoggard Mill', 851, '31.21694', '-84.47172'), ('Iveys Mill', 666, '31.39110', '-84.58620'), ('Milford', 666, '31.38130', '-84.54390'), ('Mimsville', 277, '31.25450', '-84.52830'), ('Newton', 851, '31.31640', '-84.33670'), ('Patmos', 666, '31.37470', '-84.56520'), ('Red Store Crossroads', 851, '31.40390', '-84.27620')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC009': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Allenwood', 0, '33.07021', '-83.26000'), ('Browns Crossing', 0, '33.05214', '-83.36164'), ('Coopers', 0, '32.97609', '-83.29022'), ('Hardwick', 0, '33.06794', '-83.22356'), ('Meriwether', 0, '33.15542', '-83.31449'), ('Milledgeville', 0, '33.08110', '-83.22706'), ('Pancras', 0, '33.00111', '-83.25472'), ('Scottsboro', 0, '33.02274', '-83.23339'), ('Underwood', 0, '33.14186', '-83.12404')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC011': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alto', 0, '34.46627', '-83.57308'), ('Banks Crossing', 0, '34.25484', '-83.46298'), ('Five Points', 0, '34.24106', '-83.39050'), ('Hollingsworth', 0, '34.43905', '-83.50688'), ('Homer', 0, '34.33392', '-83.49880'), ('Pinefield Crossroads', 0, '34.42163', '-83.44096')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC013': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Auburn', 0, '34.01318', '-83.82808'), ('Bethlehem', 0, '33.93205', '-83.71401'), ('Carl', 0, '34.00545', '-83.81150'), ('Chateau Elan', 0, '34.10024', '-83.81778'), ('County Line', 0, '34.04372', '-83.77668'), ('Fort Yargo State Park', 0, '33.96728', '-83.72750'), ('Russell', 0, '33.97948', '-83.69925'), ('Statham', 0, '33.96481', '-83.59676'), ('Thompsons Mill', 0, '34.11311', '-83.81887'), ('Winder', 0, '33.99243', '-83.72081')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC015': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adairsville', 0, '34.36826', '-84.93469'), ('Cartersville', 0, '34.16508', '-84.79969'), ('Cassville', 0, '34.24327', '-84.85426'), ('Emerson', 0, '34.12675', '-84.75620'), ('Euharlee', 0, '34.14549', '-84.93311'), ('Folsom', 0, '34.38256', '-84.82788'), ('Funkhouser', 0, '34.38008', '-84.70922'), ('George Washington Carver St Pk', 0, '34.13782', '-84.66287'), ('Kingston', 0, '34.23748', '-84.94519'), ('Pine Log', 0, '34.34209', '-84.73457'), ('Red Top Mountain State Park', 0, '34.15437', '-84.70263'), ('Stilesboro', 0, '34.10468', '-84.91704'), ('Taylorsville', 0, '34.08621', '-84.98767'), ('White', 0, '34.28278', '-84.74528')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC017': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ashton', 8758, '31.70360', '-83.15610'), ('Bowens Mill', 8758, '31.83957', '-83.20709'), ('Fitzgerald', 8758, '31.71485', '-83.25302'), ('Fitzgerald Municipal A/P', 8758, '31.68330', '-83.27050'), ('Lulaville', 0, '31.77494', '-83.24366'), ('Queensland', 8758, '31.79830', '-83.24032'), ('Red Bluff', 118, '31.77411', '-83.00860'), ('Westwood', 8758, '31.73410', '-83.29270')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC019': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alapaha', 682, '31.38320', '-83.22370'), ('Allenville', 746, '31.12790', '-83.21430'), ('Bannockburn', 1434, '31.28370', '-83.06415'), ('Berrien Co A/P', 4697, '31.21200', '-83.22790'), ('Cottle', 4697, '31.20040', '-83.31480'), ('Enigma', 869, '31.41314', '-83.32789'), ('Gladys', 682, '31.46890', '-83.23780'), ('Glory', 682, '31.37089', '-83.14446'), ('Nashville', 4697, '31.20440', '-83.24920'), ('New Lois', 0, '31.08481', '-83.26933'), ('Ray City', 746, '31.07480', '-83.19670'), ('Weber', 4697, '31.23640', '-83.13990')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC021': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arkwright', 0, '32.92522', '-83.70744'), ('Cross Keys', 0, '32.85237', '-83.59124'), ('Franklinton', 0, '32.80721', '-83.53822'), ('Lake Tobesofkee', 0, '32.83066', '-83.81196'), ('Lizella', 0, '32.80732', '-83.82154'), ('Macon', 0, '32.83290', '-83.64349'), ('Middle Georgia Regional Airport', 0, '32.69582', '-83.64766'), ('Payne City', 0, '32.85284', '-83.68788'), ('Rutland', 0, '32.74102', '-83.65544'), ('Skipperton', 0, '32.74338', '-83.69393'), ('Wesleyan', 0, '32.87553', '-83.71737')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC023': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baileys Park', 0, '32.31180', '-83.35413'), ('Cary', 0, '32.51498', '-83.30522'), ('Cochran', 0, '32.38662', '-83.35475'), ('Coley Station', 0, '32.42850', '-83.38912'), ('Goldsboro', 0, '32.47241', '-83.22768'), ('Magnolia', 0, '32.43003', '-83.45386'), ('Paulk', 0, '32.38571', '-83.40522'), ('Porter', 0, '32.41068', '-83.40050'), ('Rebie', 0, '32.46203', '-83.17585'), ('Royal', 0, '32.44608', '-83.37919')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC025': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Atkinson', 930, '31.22080', '-81.85400'), ('Hickox', 930, '31.14750', '-81.99720'), ('Hoboken', 463, '31.18140', '-82.13170'), ('Hortense', 930, '31.33440', '-81.95750'), ('Nahunta', 930, '31.20880', '-81.98120'), ('Raybon', 930, '31.25970', '-81.97270'), ('Waynesville', 930, '31.22700', '-81.79060')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC027': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barney', 634, '31.00760', '-83.51570'), ('Barwick', 444, '30.89210', '-83.73960'), ('Blue Springs', 4638, '30.79234', '-83.46006'), ('Brooks Co A/P', 4638, '30.80550', '-83.58470'), ('Dixie', 4638, '30.78518', '-83.66406'), ('Empress', 4638, '30.67140', '-83.56610'), ('Grooverville', 1417, '30.72080', '-83.72730'), ('Morven', 634, '30.94260', '-83.50070'), ('Nankin', 4638, '30.66542', '-83.46993'), ('Oaklawn', 0, '30.84904', '-83.73967'), ('Pavo', 711, '30.96010', '-83.73760'), ('Pidcock', 1417, '30.78280', '-83.70770'), ('Quitman', 4638, '30.78530', '-83.56030'), ('Sand Hill', 595, '30.98450', '-83.65060')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC029': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Belfast', 6959, '31.82420', '-81.29190'), ('Blitchton', 917, '32.19690', '-81.43810'), ('Brisbon', 6959, '31.91690', '-81.30640'), ('Daniel', 6959, '31.91360', '-81.36440'), ('Ellabell', 2379, '32.12330', '-81.48580'), ('Fort Mcallister', 10599, '31.89060', '-81.19610'), ('Groveland', 126, '32.14420', '-81.74580'), ('Keller', 6959, '31.84310', '-81.25390'), ('Lanier', 2379, '32.12970', '-81.53690'), ('Letford', 2379, '32.03860', '-81.60140'), ('Oak Level', 6959, '31.85560', '-81.22530'), ('Pembroke', 2379, '32.13580', '-81.62220'), ('Port Royal', 6959, '31.90360', '-81.29580'), ('Rabbit Hill', 6959, '31.90610', '-81.26940'), ('Reka', 2379, '32.13920', '-81.67750'), ('Richmond Hill', 6959, '31.93810', '-81.30360'), ('Sweet Hill', 6959, '31.84830', '-81.24250')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC029': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Belfast', 6959, '31.82420', '-81.29190'), ('Blitchton', 917, '32.19690', '-81.43810'), ('Brisbon', 6959, '31.91690', '-81.30640'), ('Daniel', 6959, '31.91360', '-81.36440'), ('Ellabell', 2379, '32.12330', '-81.48580'), ('Fort Mcallister', 10599, '31.89060', '-81.19610'), ('Groveland', 126, '32.14420', '-81.74580'), ('Keller', 6959, '31.84310', '-81.25390'), ('Lanier', 2379, '32.12970', '-81.53690'), ('Letford', 2379, '32.03860', '-81.60140'), ('Oak Level', 6959, '31.85560', '-81.22530'), ('Pembroke', 2379, '32.13580', '-81.62220'), ('Port Royal', 6959, '31.90360', '-81.29580'), ('Rabbit Hill', 6959, '31.90610', '-81.26940'), ('Reka', 2379, '32.13920', '-81.67750'), ('Richmond Hill', 6959, '31.93810', '-81.30360'), ('Sweet Hill', 6959, '31.84830', '-81.24250')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC031': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adabelle', 164, '32.29140', '-81.92720'), ('Akins', 1113, '32.30610', '-81.62060'), ('Arcola', 1113, '32.34330', '-81.60220'), ('Blitch', 186, '32.58940', '-81.78250'), ('Brooklet', 1113, '32.37940', '-81.66330'), ('Clito', 22698, '32.51220', '-81.75390'), ('Deerfield', 22698, '32.48830', '-81.78140'), ('Denmark', 1113, '32.28440', '-81.72420'), ('Donegal', 22698, '32.56330', '-81.72420'), ('Emit', 1113, '32.34360', '-81.74000'), ('Eureka', 22698, '32.51750', '-81.71560'), ('Georgia Southern', 22698, '32.41330', '-81.78330'), ('Grimshaw', 1113, '32.39890', '-81.69890'), ('Hopeulikit', 597, '32.52140', '-81.85060'), ('Hubert', 917, '32.30640', '-81.49190'), ('Huntington', 22698, '32.48750', '-81.77640'), ('Irongate', 22698, '32.41810', '-81.83750'), ('Ivanhoe', 917, '32.28390', '-81.47750'), ('Jimps', 164, '32.38560', '-81.83560'), ('Leefield', 1113, '32.41810', '-81.61360'), ('Nevils', 126, '32.26360', '-81.76110'), ('New Hope', 164, '32.33810', '-81.89690'), ('Olney', 917, '32.25530', '-81.46080'), ('Overbrook', 126, '32.23750', '-81.81220'), ('Portal', 597, '32.53810', '-81.93250'), ('Pretoria', 22698, '32.40970', '-81.73060'), ('Register', 164, '32.36690', '-81.88420'), ('Somerset', 22698, '32.41190', '-81.76530'), ('Statesboro', 22698, '32.44860', '-81.78330'), ('Stilson', 1113, '32.32580', '-81.55330'), ('Westbrooke', 22698, '32.42780', '-81.80720'), ('Westchester', 22698, '32.47640', '-81.79470'), ('Windfield', 22698, '32.45000', '-81.74500')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC033': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Girard', 227, '33.04080', '-81.71130'), ('Keysville', 180, '33.23620', '-82.22950'), ('Midville', 457, '32.82110', '-82.23530'), ('Sardis', 1171, '32.97300', '-81.76040'), ('Vidette', 0, '33.03600', '-82.24800'), ('Waynesboro', 5813, '33.09000', '-82.01370')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAC035': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Fincherville', 0, '33.40919', '-83.95335'), ('Flovilla', 0, '33.25596', '-83.89717'), ('Indian Springs State Park', 0, '33.24773', '-83.93130'), ('Jackson', 0, '33.29443', '-83.96553'), ('Jenkinsburg', 0, '33.32424', '-84.03468'), ('McKibben', 0, '33.27674', '-84.05033'), ('Stark', 0, '33.33313', '-83.90733'), ('Worthville', 0, '33.39182', '-83.92232')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC037': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arlington', 1602, '31.43780', '-84.72540'), ('Bermuda', 666, '31.48800', '-84.49200'), ('Commissary Hill', 1602, '31.44870', '-84.66680'), ('Cordrays Mill', 1464, '31.58760', '-84.56350'), ('Dickey', 1464, '31.55650', '-84.66080'), ('Edison', 1340, '31.56070', '-84.73810'), ('Holt', 666, '31.50240', '-84.45380'), ('Leary', 666, '31.48490', '-84.51280'), ('Morgan', 1464, '31.53740', '-84.59940'), ('Moye', 1340, '31.61010', '-84.77690'), ('Oak Hill', 666, '31.60140', '-84.47730'), ('Parksville', 1340, '31.50840', '-84.76360'), ('Turman', 1340, '31.50010', '-84.72890'), ('Williamsburg', 1464, '31.46410', '-84.59850')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC039': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Colesburg', 1218, '30.92350', '-81.71650'), ('Cumberland Island', 2599, '30.83100', '-81.45220'), ('Dover Bluff', 15600, '31.01700', '-81.52730'), ('Dungeness', 8765, '30.74000', '-81.47000'), ('Harrietts Bluff', 2599, '30.87120', '-81.58590'), ('High Point', 2599, '30.94000', '-81.42000'), ('Kings Bay Base', 2599, '30.79000', '-81.51000'), ('Kingsland', 10506, '30.79130', '-81.66310'), ('Tarboro', 1218, '31.01490', '-81.80710'), ('Waverly', 1218, '31.09360', '-81.72490'), ('Woodbine', 1218, '30.95910', '-81.72170')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC043': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aline', 311, '32.36080', '-82.16060'), ('Excelsior', 261, '32.31330', '-81.96610'), ('Metter', 3879, '32.39690', '-82.06030'), ('Olifftown', 3879, '32.49440', '-82.09750'), ('Parish', 261, '32.39390', '-81.98890'), ('Pulaski', 261, '32.39000', '-81.95690'), ('Union', 3879, '32.48250', '-82.05390')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC045': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abilene', 0, '33.64924', '-85.04980'), ('Blackjack Mountain', 0, '33.43651', '-85.26592'), ('Bowdon', 0, '33.53819', '-85.25333'), ('Bowdon Junction', 0, '33.66211', '-85.14759'), ('Byers Crossroads', 0, '33.52762', '-84.86264'), ('Carrollton', 0, '33.58005', '-85.07526'), ('Clem', 0, '33.53018', '-85.01121'), ('John Tanner State Park', 0, '33.60082', '-85.16725'), ('Lowell', 0, '33.46779', '-85.04620'), ('Mount Zion', 0, '33.63428', '-85.18668'), ('Roopville', 0, '33.45615', '-85.13119'), ('Seaton Lake', 0, '33.53554', '-84.94426'), ('Temple', 0, '33.73702', '-85.03227'), ('Treasure Lake', 0, '33.64204', '-84.92268'), ('Tyus', 0, '33.46775', '-85.20231'), ('Villa Rica', 0, '33.73156', '-84.91950'), ('Whitesburg', 0, '33.49298', '-84.91329')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC047': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Beaumont', 0, '34.83787', '-85.19202'), ('Blue Spring', 0, '34.87428', '-85.22679'), ('Boynton', 0, '34.92311', '-85.18631'), ('Fort Oglethorpe', 0, '34.94861', '-85.25892'), ('Graysville', 0, '34.97664', '-85.14202'), ('Indian Springs', 0, '34.95979', '-85.16584'), ('Lakeview', 0, '34.98020', '-85.26046'), ('Ringgold', 0, '34.91569', '-85.10938'), ('Salem', 0, '34.96427', '-85.03067'), ('Wood Station', 0, '34.80554', '-85.14870')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC049': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Folkston', 2178, '30.83700', '-82.00910'), ('Homeland', 765, '30.85500', '-82.02430'), ('Race Pond', 765, '31.00010', '-82.13050'), ('Stephen Foster State Park', 765, '30.82000', '-82.34000'), ('St. George', 1751, '30.51870', '-82.04210'), ('Winokur', 930, '31.03620', '-82.02190')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC051': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alabama Junction', 11289, '32.07580', '-81.14030'), ('Bethesda', 4134, '31.96310', '-81.09420'), ('Bloomingdale', 2665, '32.13220', '-81.29920'), ('Bona Bella', 2340, '32.01390', '-81.06610'), ('Burnside', 4134, '31.94390', '-81.11080'), ('Burroughs', 10599, '31.97470', '-81.24780'), ('Central Junction', 11289, '32.09000', '-81.16440'), ('Chatham City', 11289, '32.10030', '-81.15440'), ('Clearview', 11289, '32.09110', '-81.12060'), ('Cresthill', 2605, '31.98970', '-81.08750'), ('Edgemere', 2340, '32.03920', '-81.08780'), ('Fairfield', 2340, '32.03250', '-81.09080'), ('Fernwood', 2340, '32.03190', '-81.06440'), ('Fleetwood', 2340, '32.03110', '-81.07330'), ('Garden City', 11289, '32.10000', '-81.17500'), ('Georgetown', 10599, '31.98310', '-81.22750'), ('Golden Isles', 14213, '32.02500', '-80.96860'), ('Gordonston', 2340, '32.05500', '-81.06640'), ('Grubbs', 131510, '32.01030', '-81.18110'), ('Hamer', 11289, '32.09390', '-81.20780'), ('Hunter Army Air Field', 131510, '32.00970', '-81.14570'), ('Isle Of Armstrong', 2340, '32.03750', '-81.03970'), ('Isle Of Hope', 2605, '31.98170', '-81.06110'), ('Lamarville', 131510, '32.03360', '-81.14860'), ('Lepageville', 2340, '32.07170', '-81.05920'), ('Liberty City', 131510, '32.04750', '-81.13780'), ('Lynhurst', 138, '31.99220', '-81.11170'), ('Meinhard', 3276, '32.18140', '-81.21110'), ('Monteith', 3276, '32.18030', '-81.19030'), ('Mount Herman', 138, '31.95330', '-81.14560'), ("O'leary", 3276, '32.21060', '-81.17610'), ('Ossabaw Island', 4134, '31.79360', '-81.12970'), ('Parkersburg', 2605, '31.98440', '-81.05220'), ('Pin Point', 4134, '31.95310', '-81.09250'), ('Pooler', 6239, '32.11530', '-81.24720'), ('Port Wentworth', 3276, '32.14990', '-81.18000'), ('Richfield', 131510, '32.04080', '-81.13280'), ('Ridgewood', 131510, '32.03330', '-81.09860'), ('Rio Vista', 4134, '31.92920', '-81.08810'), ('Riverside', 5824, '32.04500', '-81.00000'), ('Sandfly', 2605, '31.98940', '-81.07640'), ('Savannah', 131510, '32.05000', '-81.08330'), ('Savannah Beach', 3392, '31.99360', '-80.84860'), ('Silk Hope', 131510, '32.04280', '-81.19190'), ('Skidaway Island', 6914, '31.93330', '-81.05000'), ('Tatumsville', 131510, '32.03720', '-81.11500'), ('Thunderbolt', 2340, '32.03330', '-81.05000'), ('Turners Rock', 5824, '32.01310', '-81.00560'), ('Tutens', 6239, '32.10500', '-81.25390'), ('Tybee Island', 3392, '32.00000', '-80.84980'), ('Union Junction', 131510, '32.05000', '-81.12670'), ('Vernonburg', 138, '31.96560', '-81.12030'), ('Wheat Hill', 11289, '32.10580', '-81.15640'), ('White Bluff', 138, '31.98750', '-81.12890'), ('Williams', 6239, '32.10610', '-81.25220'), ('Wilmington', 14213, '31.98170', '-80.99720'), ('Wilmington Island', 14213, '32.00830', '-80.98330'), ('Windsor Forest', 138, '31.97640', '-81.13250'), ('Windward', 10599, '31.97440', '-81.18640'), ('Wormsloe', 2605, '31.97640', '-81.06280'), ('Wymberly', 2605, '31.97580', '-81.06110')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC051': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alabama Junction', 11289, '32.07580', '-81.14030'), ('Bethesda', 4134, '31.96310', '-81.09420'), ('Bloomingdale', 2665, '32.13220', '-81.29920'), ('Bona Bella', 2340, '32.01390', '-81.06610'), ('Burnside', 4134, '31.94390', '-81.11080'), ('Burroughs', 10599, '31.97470', '-81.24780'), ('Central Junction', 11289, '32.09000', '-81.16440'), ('Chatham City', 11289, '32.10030', '-81.15440'), ('Clearview', 11289, '32.09110', '-81.12060'), ('Cresthill', 2605, '31.98970', '-81.08750'), ('Edgemere', 2340, '32.03920', '-81.08780'), ('Fairfield', 2340, '32.03250', '-81.09080'), ('Fernwood', 2340, '32.03190', '-81.06440'), ('Fleetwood', 2340, '32.03110', '-81.07330'), ('Garden City', 11289, '32.10000', '-81.17500'), ('Georgetown', 10599, '31.98310', '-81.22750'), ('Golden Isles', 14213, '32.02500', '-80.96860'), ('Gordonston', 2340, '32.05500', '-81.06640'), ('Grubbs', 131510, '32.01030', '-81.18110'), ('Hamer', 11289, '32.09390', '-81.20780'), ('Hunter Army Air Field', 131510, '32.00970', '-81.14570'), ('Isle Of Armstrong', 2340, '32.03750', '-81.03970'), ('Isle Of Hope', 2605, '31.98170', '-81.06110'), ('Lamarville', 131510, '32.03360', '-81.14860'), ('Lepageville', 2340, '32.07170', '-81.05920'), ('Liberty City', 131510, '32.04750', '-81.13780'), ('Lynhurst', 138, '31.99220', '-81.11170'), ('Meinhard', 3276, '32.18140', '-81.21110'), ('Monteith', 3276, '32.18030', '-81.19030'), ('Mount Herman', 138, '31.95330', '-81.14560'), ("O'leary", 3276, '32.21060', '-81.17610'), ('Ossabaw Island', 4134, '31.79360', '-81.12970'), ('Parkersburg', 2605, '31.98440', '-81.05220'), ('Pin Point', 4134, '31.95310', '-81.09250'), ('Pooler', 6239, '32.11530', '-81.24720'), ('Port Wentworth', 3276, '32.14990', '-81.18000'), ('Richfield', 131510, '32.04080', '-81.13280'), ('Ridgewood', 131510, '32.03330', '-81.09860'), ('Rio Vista', 4134, '31.92920', '-81.08810'), ('Riverside', 5824, '32.04500', '-81.00000'), ('Sandfly', 2605, '31.98940', '-81.07640'), ('Savannah', 131510, '32.05000', '-81.08330'), ('Savannah Beach', 3392, '31.99360', '-80.84860'), ('Silk Hope', 131510, '32.04280', '-81.19190'), ('Skidaway Island', 6914, '31.93330', '-81.05000'), ('Tatumsville', 131510, '32.03720', '-81.11500'), ('Thunderbolt', 2340, '32.03330', '-81.05000'), ('Turners Rock', 5824, '32.01310', '-81.00560'), ('Tutens', 6239, '32.10500', '-81.25390'), ('Tybee Island', 3392, '32.00000', '-80.84980'), ('Union Junction', 131510, '32.05000', '-81.12670'), ('Vernonburg', 138, '31.96560', '-81.12030'), ('Wheat Hill', 11289, '32.10580', '-81.15640'), ('White Bluff', 138, '31.98750', '-81.12890'), ('Williams', 6239, '32.10610', '-81.25220'), ('Wilmington', 14213, '31.98170', '-80.99720'), ('Wilmington Island', 14213, '32.00830', '-80.98330'), ('Windsor Forest', 138, '31.97640', '-81.13250'), ('Windward', 10599, '31.97440', '-81.18640'), ('Wormsloe', 2605, '31.97640', '-81.06280'), ('Wymberly', 2605, '31.97580', '-81.06110')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC053': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Christopher', 0, '32.31190', '-84.72858'), ('Cusseta', 0, '32.30620', '-84.77701'), ('Eelbeck/West Fort Benning', 0, '32.43975', '-84.73313'), ('Fort Benning/Lawson Army Air Fld', 0, '32.34850', '-84.97769'), ('Jamestown/South Fort Benning', 0, '32.27335', '-84.84080'), ('Manta', 0, '32.28752', '-84.71766'), ('Renfroe', 0, '32.23340', '-84.71275')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC055': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Berryton', 0, '34.45020', '-85.38697'), ('Chattoogaville', 0, '34.34586', '-85.44657'), ('Cloudland', 0, '34.51787', '-85.48969'), ('Holland', 0, '34.35237', '-85.37286'), ('James H. Floyd State Park', 0, '34.43947', '-85.34080'), ('Lyerly', 0, '34.40442', '-85.40599'), ('Menlo', 0, '34.48471', '-85.47624'), ('Subligna', 0, '34.56019', '-85.18803'), ('Summerville', 0, '34.48062', '-85.34781'), ('Tidings', 0, '34.43614', '-85.24860'), ('Trion', 0, '34.54306', '-85.31060')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC057': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ball Ground', 0, '34.33811', '-84.37676'), ('Bridgemill', 0, '34.18032', '-84.55203'), ('Buffington', 0, '34.24144', '-84.42127'), ('Canton', 0, '34.23709', '-84.49112'), ('Free Home', 0, '34.23848', '-84.28857'), ('Hickory Flat', 0, '34.17653', '-84.42033'), ('Hobgood Park', 0, '34.13037', '-84.58522'), ('Holbrook', 0, '34.21248', '-84.27112'), ('Hollis Lathem Reservoir', 0, '34.37443', '-84.25783'), ('Holly Springs', 0, '34.17375', '-84.50127'), ('Kellogg Creek', 0, '34.12273', '-84.61568'), ('Lake Arrowhead', 0, '34.28843', '-84.59347'), ('Lathemtown', 0, '34.24757', '-84.30603'), ('Lebanon', 0, '34.14232', '-84.50951'), ('Little River Landing', 0, '34.16370', '-84.58040'), ('Oak Grove', 0, '34.09608', '-84.61280'), ('Reavis Mountain', 0, '34.37208', '-84.32740'), ('Salacoa Valley', 0, '34.37887', '-84.58960'), ('Sutallee', 0, '34.21968', '-84.61128'), ('Union Hill', 0, '34.19478', '-84.38190'), ('Waleska', 0, '34.31670', '-84.55306'), ('Woodstock', 0, '34.10130', '-84.51941')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC059': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Athens', 0, '33.95816', '-83.37715'), ('Barretts Mill', 0, '34.01239', '-83.36396'), ('Beechwood Hills', 0, '33.94039', '-83.41442'), ('James Holland Youth Sports Cmpx', 0, '34.00065', '-83.40462'), ('Oconee Heights', 0, '33.98945', '-83.42779'), ('Sandy Creek Recreation Area', 0, '34.02767', '-83.38178'), ('State Botanical Garden Of Ga', 0, '33.90140', '-83.38232'), ('Westgate Park', 0, '33.99980', '-83.45093'), ('Whitehall', 0, '33.90874', '-83.35380'), ('Winterville', 0, '33.96626', '-83.27946')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC061': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bagby State Park', 1110, '31.73890', '-85.07460'), ('Bellville', 0, '31.59448', '-84.90028'), ('Bethel', 149, '31.67810', '-84.95900'), ('Bluffton', 118, '31.52000', '-84.86700'), ('Cotton Hill', 149, '31.72940', '-84.96660'), ('Days Crossroads', 1110, '31.72050', '-85.04380'), ('Fort Gaines', 1110, '31.62389', '-85.04596'), ('Fort Gaines-Clay Airport', 0, '31.63903', '-85.04148'), ('Garnersville', 149, '31.75180', '-84.99910'), ('Harrisons Mill', 118, '31.54670', '-84.88590'), ('Jones Crossing', 1110, '31.64020', '-84.97250'), ('Moores Crossroads', 1110, '31.74300', '-85.01730'), ('Pecan', 1110, '31.63920', '-84.99250'), ('Ricks Place', 1110, '31.76862', '-85.09188'), ('Standleys Store', 1110, '31.70284', '-85.07493'), ('Suttons Corner', 118, '31.59970', '-84.84430'), ('Walter F George Lake', 0, '31.67225', '-85.08300'), ('Watson Crossroads', 1110, '31.72820', '-85.01730'), ('Zetto', 149, '31.59200', '-84.93640')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC063': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bonanza', 0, '33.46304', '-84.33691'), ('Conley', 0, '33.64469', '-84.32592'), ('Ellenwood', 0, '33.61092', '-84.28261'), ('Forest Park', 0, '33.62190', '-84.36912'), ('Fort Gillem', 0, '33.62218', '-84.32624'), ('Hartsfield-Jackson Airport', 0, '33.64037', '-84.42872'), ('Irondale', 0, '33.47542', '-84.36033'), ('Jonesboro', 0, '33.52077', '-84.35355'), ('Jw Smith Reservoir', 0, '33.41389', '-84.37287'), ('Lake City', 0, '33.60431', '-84.34083'), ('Lake Spivey', 0, '33.51541', '-84.28716'), ('Lovejoy', 0, '33.43619', '-84.31412'), ('Morrow', 0, '33.57948', '-84.34024'), ('Rex', 0, '33.59296', '-84.26722'), ('Riverdale', 0, '33.57259', '-84.41253')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC065': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Argyle', 151, '31.07370', '-82.64940'), ('Cogdell', 151, '31.16400', '-82.71900'), ('Du Pont', 139, '30.98920', '-82.86990'), ('Fargo', 380, '30.68510', '-82.56230'), ('Homerville', 2803, '31.03610', '-82.75360')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC067': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Acworth', 0, '34.06594', '-84.67658'), ('Austell', 0, '33.81279', '-84.63462'), ('Dobbins Air Reserve Base', 0, '33.91548', '-84.51628'), ('Due West', 0, '33.96884', '-84.66599'), ('Jim R Miller Park', 0, '33.89822', '-84.59061'), ('Kennesaw', 0, '34.02349', '-84.61525'), ('Kennesaw State University', 0, '34.03822', '-84.58177'), ('Lost Mountain Park', 0, '33.94026', '-84.69264'), ('Mableton', 0, '33.81886', '-84.58245'), ('Marietta', 0, '33.95274', '-84.54960'), ('Mount Bethel', 0, '33.96646', '-84.41189'), ('Powder Springs', 0, '33.85960', '-84.68445'), ('Sandy Plains', 0, '34.01306', '-84.49567'), ('Six Flags Over Georgia', 0, '33.76778', '-84.55124'), ('Smyrna', 0, '33.88399', '-84.51410'), ('Sweat Mountain', 0, '34.06696', '-84.45548'), ('Vinings', 0, '33.86525', '-84.46538'), ('White Water Park', 0, '33.95773', '-84.51984')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC069': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ambrose', 320, '31.59340', '-83.01370'), ('Broxton', 1428, '31.62380', '-82.88690'), ('Douglas', 10639, '31.50520', '-82.85150'), ('Nicholls', 1008, '31.51820', '-82.63580'), ('Pridgen', 1428, '31.69680', '-82.92310'), ('West Green', 269, '31.60970', '-82.73620')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC071': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Autreyville', 711, '31.06060', '-83.76520'), ('Bay', 426, '31.19040', '-83.92680'), ('Berlin', 595, '31.07239', '-83.61976'), ('Center Hill', 426, '31.13770', '-83.89810'), ('Cool Spring', 0, '31.22903', '-83.60232'), ('Crosland', 849, '31.30410', '-83.64360'), ('Doerun', 828, '31.31910', '-83.91800'), ('Ellenton', 336, '31.17640', '-83.58810'), ('Funston', 426, '31.20020', '-83.87330'), ('Hartsfield', 319, '31.21650', '-83.97610'), ('Minnesota', 0, '31.31284', '-83.90963'), ('Moultrie', 14387, '31.17865', '-83.78851'), ('Moultrie Municipal A/P', 14387, '31.08450', '-83.80570'), ('Murphy', 0, '31.07046', '-83.82506'), ('New Elm', 828, '31.29230', '-83.81940'), ('Norman Park', 849, '31.26890', '-83.68643'), ('Pineboro', 0, '31.17768', '-83.67329'), ('Poplar Arbor Church', 0, '31.26150', '-83.97230'), ('Schley', 0, '31.23809', '-83.82582'), ('Sigsbee', 426, '31.26552', '-83.85974'), ('South Moultrie', 0, '31.15579', '-83.77372'), ('Spence Airport', 14387, '31.13603', '-83.69885'), ('Ticknor', 828, '31.32856', '-83.93166')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC073': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Evans', 17727, '33.51380', '-82.14550'), ('Grovetown', 6089, '33.44940', '-82.20180'), ('Harlem', 1814, '33.41400', '-82.31700'), ('Martinez', 27749, '33.51940', '-82.08830')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAC075': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adel', 5307, '31.13620', '-83.42225'), ('Barneyville', 1755, '31.21310', '-83.45420'), ('Cecil', 265, '31.04560', '-83.39310'), ('Cook Co A/P', 5307, '31.13750', '-83.45130'), ('Flat Ford', 889, '31.22366', '-83.50583'), ('Greggs', 5307, '31.06842', '-83.48451'), ('Laconte', 1755, '31.20940', '-83.44730'), ('Lenox', 889, '31.28028', '-83.46755'), ('Massee', 1755, '31.18900', '-83.35740'), ('Pine Valley', 5307, '31.08640', '-83.47350'), ('Reed Bingham State Park', 336, '31.16650', '-83.53930'), ('Sparks', 1755, '31.16760', '-83.44000'), ('Staunton', 889, '31.27152', '-83.46551'), ('Wagon Wheel', 889, '31.23580', '-83.46210')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC077': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arnco-Sargent', 0, '33.42620', '-84.85990'), ('Cannongate', 0, '33.47292', '-84.65620'), ('Dunaway Gardens', 0, '33.47909', '-84.81997'), ('Grantville', 0, '33.23468', '-84.83572'), ('Handy', 0, '33.37670', '-84.96900'), ('Haralson', 0, '33.22635', '-84.57140'), ('Madras', 0, '33.43860', '-84.74564'), ('Moreland', 0, '33.28671', '-84.76783'), ('Newnan', 0, '33.37479', '-84.80008'), ('Plant Yates', 0, '33.46348', '-84.90099'), ('Powers Crossroads', 0, '33.33885', '-84.97978'), ('Roscoe', 0, '33.49528', '-84.82160'), ('Senoia', 0, '33.29972', '-84.55375'), ('Sharpsburg', 0, '33.33993', '-84.64768'), ('Thomas Crossroads', 0, '33.40817', '-84.68250'), ('Turin', 0, '33.32560', '-84.63462')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC079': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Friendship', 0, '32.67321', '-83.86290'), ('Horns', 0, '32.67579', '-84.00361'), ('Jack Brown Estates', 0, '32.70044', '-83.77894'), ('Knoxville', 0, '32.72455', '-83.99774'), ('Lee Pope', 0, '32.61147', '-83.94972'), ('Musella', 0, '32.79790', '-84.02903'), ('Nakomis', 0, '32.54742', '-84.00104'), ('Roberta', 0, '32.72067', '-84.01176'), ('Sandy Point', 0, '32.76651', '-83.94298')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC081': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arabi', 0, '31.83149', '-83.73813'), ('Cordele', 0, '31.96361', '-83.77670'), ('East Crisp', 0, '31.95717', '-83.67797'), ('Fort Early', 0, '31.85361', '-83.91828'), ('Georgia Veterans Memorial St Pk', 0, '31.95524', '-83.91386'), ('Hatley', 0, '31.89939', '-83.61330'), ('Raines', 0, '31.90011', '-83.86038'), ('Tremont', 0, '32.01292', '-83.65784'), ('Wenona', 0, '31.90542', '-83.74671')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC083': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cloudland Canyon State Park', 0, '34.82679', '-85.47866'), ('Cole City', 0, '34.97674', '-85.56447'), ('Hooker', 0, '34.97897', '-85.43370'), ('Morganville', 0, '34.93851', '-85.45350'), ('New England', 0, '34.90685', '-85.48447'), ('Rising Fawn', 0, '34.76000', '-85.53113'), ('Stephensville', 0, '34.88508', '-85.54880'), ('Trenton', 0, '34.87222', '-85.50938'), ('Wildwood', 0, '34.96577', '-85.41366')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC085': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amicalola Falls State Park', 0, '34.56591', '-84.24213'), ('Dawsonville', 0, '34.42133', '-84.11912'), ('Dougherty', 0, '34.38160', '-84.06572'), ('Fausett Lake', 0, '34.52840', '-84.27889'), ('Juno', 0, '34.47590', '-84.19524'), ('Len Foote Hike Inn', 0, '34.59207', '-84.20828'), ('Lumpkin', 0, '34.36354', '-84.03667'), ('McKee', 0, '34.45966', '-84.14169'), ('Silver City', 0, '34.33449', '-84.11503'), ('War Hill Park', 0, '34.33486', '-83.96547')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC087': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amsterdam', 492, '30.72700', '-84.43480'), ('Attapulgus', 492, '30.74930', '-84.48460'), ('Ausmac', 11722, '30.99530', '-84.62470'), ('Bainbridge', 11722, '30.90600', '-84.57770'), ('Bethany', 225, '30.85723', '-84.73574'), ('Brinson', 225, '30.97880', '-84.73384'), ('Climax', 297, '30.87560', '-84.43130'), ('Cyrene', 225, '30.96070', '-84.69240'), ('Decatur Co A/P', 11722, '30.97090', '-84.63730'), ('Eldorendo', 225, '31.04320', '-84.65200'), ('Faceville', 1981, '30.75340', '-84.63970'), ('Fowlstown', 492, '30.80049', '-84.55021'), ('Hanover', 11722, '30.93450', '-84.64968'), ('Jinks', 4382, '30.71480', '-84.82390'), ('Laingkat', 492, '30.71770', '-84.48870'), ('Lynn', 11722, '30.97750', '-84.61520'), ('Mount Pleasant', 297, '31.02240', '-84.46020'), ('Recovery', 4382, '30.75972', '-84.72779'), ('Steinham Store', 11722, '31.02270', '-84.54580'), ('Vada', 297, '31.07730', '-84.41340'), ('West Bainbridge', 11722, '30.91905', '-84.58456')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC087': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amsterdam', 492, '30.72700', '-84.43480'), ('Attapulgus', 492, '30.74930', '-84.48460'), ('Ausmac', 11722, '30.99530', '-84.62470'), ('Bainbridge', 11722, '30.90600', '-84.57770'), ('Bethany', 225, '30.85723', '-84.73574'), ('Brinson', 225, '30.97880', '-84.73384'), ('Climax', 297, '30.87560', '-84.43130'), ('Cyrene', 225, '30.96070', '-84.69240'), ('Decatur Co A/P', 11722, '30.97090', '-84.63730'), ('Eldorendo', 225, '31.04320', '-84.65200'), ('Faceville', 1981, '30.75340', '-84.63970'), ('Fowlstown', 492, '30.80049', '-84.55021'), ('Hanover', 11722, '30.93450', '-84.64968'), ('Jinks', 4382, '30.71480', '-84.82390'), ('Laingkat', 492, '30.71770', '-84.48870'), ('Lynn', 11722, '30.97750', '-84.61520'), ('Mount Pleasant', 297, '31.02240', '-84.46020'), ('Recovery', 4382, '30.75972', '-84.72779'), ('Steinham Store', 11722, '31.02270', '-84.54580'), ('Vada', 297, '31.07730', '-84.41340'), ('West Bainbridge', 11722, '30.91905', '-84.58456')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC089': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arabia Mountain', 0, '33.66563', '-84.11972'), ('Avondale Estates', 0, '33.76918', '-84.26477'), ('Belmont', 0, '33.72291', '-84.16702'), ('Brookhaven', 0, '33.86069', '-84.33926'), ('Cedar Grove', 0, '33.66062', '-84.30180'), ('Chamblee', 0, '33.89295', '-84.30072'), ('Clarkston', 0, '33.80986', '-84.23966'), ('Decatur', 0, '33.77512', '-84.29643'), ('Doraville', 0, '33.90440', '-84.27670'), ('Druid Hills', 0, '33.79204', '-84.32236'), ('Dunwoody', 0, '33.94608', '-84.33432'), ('East Lake', 0, '33.75292', '-84.30482'), ('Edgewood', 0, '33.76177', '-84.33948'), ('Gresham Park', 0, '33.69805', '-84.31076'), ('Kirkwood', 0, '33.75285', '-84.32500'), ('Klondike', 0, '33.64562', '-84.12682'), ('La Vista', 0, '33.81570', '-84.33478'), ('Lithonia', 0, '33.71221', '-84.10558'), ('Panthersville', 0, '33.71314', '-84.27186'), ('Pine Lake', 0, '33.79067', '-84.20569'), ('Redan', 0, '33.74497', '-84.13183'), ('Scottdale', 0, '33.78951', '-84.26436'), ('Snapfinger', 0, '33.68657', '-84.20196'), ('Stone Mountain', 0, '33.80585', '-84.17056'), ('Tucker', 0, '33.85514', '-84.21702')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC091': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Achord', 0, '32.10515', '-82.97487'), ('Chauncey', 0, '32.10478', '-83.06488'), ('Chester', 0, '32.39438', '-83.15338'), ('Dubois', 0, '32.30360', '-83.27328'), ('Eastman', 0, '32.19780', '-83.17857'), ('Empire', 0, '32.33938', '-83.29878'), ('Five Points', 0, '32.07332', '-83.18155'), ('Godwinsville', 0, '32.13723', '-83.12833'), ('Gresston', 0, '32.28703', '-83.25230'), ('Jay Bird Springs', 0, '32.13135', '-83.00560'), ('Plainfield', 0, '32.28454', '-83.10794'), ('Rhine', 0, '31.98986', '-83.20010'), ('Roddy', 0, '32.35266', '-83.25032'), ('Rowland', 0, '32.43152', '-83.17570'), ('Union', 0, '32.09931', '-83.25022'), ('Yonkers', 0, '32.36630', '-83.21659')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC093': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Byromville', 0, '32.20183', '-83.90872'), ('Dooling', 0, '32.23021', '-83.92871'), ('Drayton', 0, '32.07434', '-83.95577'), ('Flint River Wma', 0, '32.14373', '-83.99184'), ('Lilly', 0, '32.14697', '-83.87741'), ('Pinehurst', 0, '32.19498', '-83.76154'), ('Richwood', 0, '32.04121', '-83.79471'), ('Tippettville', 0, '32.09892', '-83.61396'), ('Unadilla', 0, '32.26056', '-83.73701'), ('Vienna', 0, '32.09147', '-83.79636')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC095': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Acree', 2998, '31.55370', '-83.99440'), ('Albany', 76939, '31.57780', '-84.17560'), ('Ducker', 666, '31.52450', '-84.36640'), ('East Albany', 76939, '31.57560', '-84.12670'), ('Lockett Crossing', 76939, '31.55851', '-84.25142'), ('Pecan City', 2998, '31.51780', '-84.07000'), ('Pretoria', 76939, '31.50380', '-84.31730'), ('Putney', 2998, '31.47936', '-84.10564'), ('Radium Springs', 2998, '31.52650', '-84.13535'), ('South Albany', 0, '31.56805', '-84.17692'), ('Southwest Ga Regional A/P', 76939, '31.53490', '-84.19460'), ('Turner City', 76939, '31.59710', '-84.10810'), ('Walker', 76939, '31.53910', '-84.31520'), ('Williamsburg', 2998, '31.49670', '-84.11550')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC097': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bill Arp', 0, '33.67038', '-84.80587'), ('Chapel Hill', 0, '33.68662', '-84.71556'), ('Douglasville', 0, '33.75165', '-84.74743'), ('Fairplay', 0, '33.62407', '-84.86022'), ('Hannah', 0, '33.58649', '-84.86394'), ('Lake Val-Do-mar', 0, '33.74265', '-84.88825'), ('Lithia Springs', 0, '33.79402', '-84.66083'), ('Sweetwater Creek State Park', 0, '33.75067', '-84.62508'), ('Winston', 0, '33.72652', '-84.82739')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC099': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blakely', 5696, '31.37910', '-84.93530'), ('Cedar Springs', 493, '31.18340', '-85.03800'), ('Centerville', 5696, '31.27340', '-84.89660'), ('Colomokee', 118, '31.45860', '-84.87920'), ('Cuba', 5696, '31.29860', '-84.85843'), ('Damascus', 277, '31.29840', '-84.71750'), ('Douglasville', 20065, '31.35840', '-84.67090'), ('Early Co A/P', 5696, '31.39560', '-84.89250'), ('Ferrell Crossroads', 118, '31.48290', '-84.91610'), ('Hentown', 277, '31.27890', '-84.83700'), ('Hilton', 922, '31.28640', '-85.06540'), ('Howards Mill', 157, '31.15630', '-84.99470'), ('Jakin', 157, '31.08636', '-84.98445'), ('Jones Crossroads', 157, '31.17300', '-84.93770'), ('Killarney', 157, '31.13610', '-84.94140'), ('Kolomoki Mounds Sp', 118, '31.46720', '-84.92820'), ('Nicholasville', 1602, '31.40260', '-84.67000'), ('Old Damascus', 277, '31.30570', '-84.73700'), ('Rock Hill', 922, '31.32198', '-85.02949'), ('Rowena', 1602, '31.37900', '-84.71300'), ('Saffold', 157, '31.12216', '-85.03714'), ('Sawhatchee', 922, '31.27560', '-85.02790')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC101': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Mayday', 110, '30.82730', '-83.00930'), ('Needmore', 2099, '30.67890', '-82.67500'), ('Statenville', 712, '30.70080', '-83.03000')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC103': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ardmore', 253, '32.49500', '-81.42890'), ('Berryville', 1821, '32.42830', '-81.25890'), ('Blandford', 4376, '32.27830', '-81.26330'), ('Clyo', 1821, '32.48390', '-81.26720'), ('Coldbrook', 4376, '32.23750', '-81.24190'), ('Ebenezer', 4376, '32.37780', '-81.18250'), ('Eden', 2665, '32.17360', '-81.39080'), ('Egypt', 253, '32.46170', '-81.47420'), ('Guyton', 917, '32.33610', '-81.39170'), ('Kildare', 322, '32.53420', '-81.45560'), ('Marlow', 917, '32.26890', '-81.39080'), ('Meldrim', 2665, '32.14310', '-81.37810'), ('Oaky', 322, '32.52470', '-81.39110'), ('Pineora', 917, '32.28670', '-81.39170'), ('Rincon', 4376, '32.29580', '-81.23560'), ('Shawnee', 253, '32.47560', '-81.40830'), ('Springfield', 917, '32.37000', '-81.37500'), ('Stillwell', 1821, '32.37780', '-81.25060'), ('Tusculum', 917, '32.39280', '-81.43080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC105': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bowman', 898, '34.20340', '-83.02890'), ('Dewy Rose', 898, '34.16970', '-82.95310'), ('Elberton', 4743, '34.10550', '-82.86400'), ('Fortsonia', 4743, '34.01500', '-82.77920'), ('Middleton', 4743, '34.09920', '-82.76750'), ('Ruckersville', 4743, '34.16470', '-82.78830')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAC107': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blundale', 0, '32.74812', '-82.39153'), ('Canoochee', 0, '32.67327', '-82.17811'), ('Colemans Lake', 0, '32.82200', '-82.27540'), ('Covena', 0, '32.49550', '-82.44420'), ('Dellwood', 0, '32.66801', '-82.37862'), ('Garfield', 0, '32.64967', '-82.09640'), ('George L Smith State Park', 0, '32.55053', '-82.12578'), ('Lexsy', 0, '32.46861', '-82.29875'), ('Modoc', 0, '32.65674', '-82.30906'), ('Norristown', 0, '32.50633', '-82.49684'), ('Norristown Junction', 0, '32.55754', '-82.48826'), ('Nunez', 0, '32.49361', '-82.34591'), ('Oak Park', 0, '32.35912', '-82.31528'), ('Stillmore', 0, '32.44168', '-82.21546'), ('Summertown', 0, '32.74654', '-82.27575'), ('Swainsboro', 0, '32.59710', '-82.33350'), ('Three Points', 0, '32.78422', '-82.24508'), ('Twin City', 0, '32.58262', '-82.15493')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC109': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bay Branch', 130, '32.08640', '-81.97580'), ('Bellville', 130, '32.15220', '-81.97440'), ('Claxton', 2276, '32.16140', '-81.90420'), ('Daisy', 126, '32.15170', '-81.83470'), ('Edna', 126, '32.23110', '-81.83080'), ('Hagan', 898, '32.15580', '-81.93390'), ('Jennie', 898, '32.05060', '-81.88920'), ('Undine', 130, '32.22720', '-81.97970')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC111': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blue Ridge', 0, '34.86432', '-84.32477'), ('Cohutta Wilderness', 0, '34.97800', '-84.59000'), ('Colwell', 0, '34.89786', '-84.46909'), ('Dial', 0, '34.75955', '-84.21681'), ('Epworth', 0, '34.95050', '-84.38504'), ('Hemp', 0, '34.88328', '-84.17155'), ('Higdon', 0, '34.89635', '-84.43832'), ('Hurst', 0, '34.84125', '-84.18987'), ('Jones Mill', 0, '34.90600', '-84.52287'), ('Loving', 0, '34.91678', '-84.21585'), ('Margret', 0, '34.75130', '-84.14679'), ('McCaysville-Copperhill', 0, '34.98723', '-84.37080'), ('Mineral Bluff', 0, '34.91447', '-84.27685'), ('Morganton', 0, '34.87496', '-84.24421'), ('Springer Mountain Shelter', 0, '34.62915', '-84.19306'), ('Stover Creek Shelter', 0, '34.64945', '-84.19985')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC113': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brooks', 0, '33.29094', '-84.45882'), ('Fayetteville', 0, '33.44820', '-84.45455'), ('Inman', 0, '33.38378', '-84.41297'), ('Kenwood', 0, '33.51071', '-84.43767'), ('Lake Horton', 0, '33.32679', '-84.41723'), ('Peachtree City', 0, '33.40081', '-84.57946'), ('Sandy Creek', 0, '33.50050', '-84.56008'), ('Starrs Mill', 0, '33.32885', '-84.50876'), ('Tyrone', 0, '33.47438', '-84.59706'), ('Woolsey', 0, '33.36104', '-84.41143')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC115': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Armuchee', 0, '34.38967', '-85.18287'), ('Cave Spring', 0, '34.10788', '-85.33660'), ('Coosa', 0, '34.26157', '-85.33105'), ('Everett Springs', 0, '34.49569', '-85.11379'), ('Lake Marvin', 0, '34.56660', '-85.08221'), ('Lindale', 0, '34.18671', '-85.17473'), ('Pinson', 0, '34.36215', '-85.06032'), ('Rome', 0, '34.25986', '-85.18503'), ('Shannon', 0, '34.33731', '-85.07151')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC117': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brookwood', 0, '34.09471', '-84.17654'), ('Chestatee', 0, '34.29415', '-83.99948'), ('Coal Mountain', 0, '34.27159', '-84.10078'), ('Cumming', 0, '34.20690', '-84.14038'), ('Drew', 0, '34.20831', '-84.21577'), ('Ducktown', 0, '34.23834', '-84.23424'), ('Hightower', 0, '34.30617', '-84.21377'), ('Matt', 0, '34.29895', '-84.15331'), ('Oscarville', 0, '34.24933', '-83.97480')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC119': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Canon', 755, '34.34620', '-83.11070'), ('Carnesville', 541, '34.36720', '-83.23330'), ('Franklin Springs', 762, '34.28350', '-83.14630'), ('Lavonia', 1827, '34.43600', '-83.10640'), ('Royston', 2493, '34.28550', '-83.10940'), ('Whitworth', 2025, '34.48390', '-83.09500')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAC121': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alpharetta', 0, '34.07562', '-84.29455'), ('Atlanta', 0, '33.74884', '-84.39035'), ('Atlantic Station', 0, '33.79259', '-84.39624'), ('Bankhead', 0, '33.77672', '-84.44984'), ('Birmingham', 0, '34.16652', '-84.33357'), ('Bolton', 0, '33.81738', '-84.45490'), ('Buckhead', 0, '33.83941', '-84.37988'), ('Campbellton', 0, '33.65032', '-84.66982'), ('Cascade Heights', 0, '33.72246', '-84.46322'), ('Chastain Memorial Park', 0, '33.87628', '-84.39292'), ('Chattahoochee Hill Country', 0, '33.56325', '-84.75003'), ('College Park', 0, '33.65334', '-84.44946'), ('East Point', 0, '33.67953', '-84.44014'), ('Fairburn', 0, '33.56685', '-84.58150'), ('Grant Park-Zoo Atlanta', 0, '33.73549', '-84.37122'), ('Hapeville', 0, '33.66002', '-84.41030'), ('Johns Creek', 0, '34.04783', '-84.17742'), ('Lakewood Park', 0, '33.70250', '-84.39269'), ('Little Five Points', 0, '33.76497', '-84.34921'), ('Midtown', 0, '33.78154', '-84.39112'), ('Milton', 0, '34.13230', '-84.30073'), ('Mountain Park', 0, '34.08150', '-84.41216'), ('Palmetto', 0, '33.51856', '-84.66891'), ('Piedmont Park', 0, '33.78784', '-84.37354'), ('Roswell', 0, '34.02321', '-84.36157'), ('Sandtown', 0, '33.70394', '-84.55875'), ('Sandy Springs', 0, '33.93093', '-84.37937'), ('Sweet Auburn', 0, '33.75549', '-84.37429'), ('Turner Field', 0, '33.73520', '-84.38965'), ('Union City', 0, '33.57893', '-84.55259'), ('Virginia Highland', 0, '33.78237', '-84.35433'), ('West End', 0, '33.74655', '-84.41459')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC123': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Black Gap Shelter', 0, '34.61755', '-84.19881'), ('Cartecay', 0, '34.62688', '-84.38390'), ('Cherry Log', 0, '34.78580', '-84.38774'), ('East Ellijay', 0, '34.68507', '-84.47332'), ('Ellijay', 0, '34.69503', '-84.48274'), ('Marion', 0, '34.63540', '-84.25905'), ('Mountaintown', 0, '34.75578', '-84.55974'), ('Pisgah', 0, '34.70806', '-84.29483'), ('Roundtop', 0, '34.60459', '-84.56554'), ('Roy', 0, '34.65134', '-84.35106'), ('Tails Creek', 0, '34.68980', '-84.61571'), ('Talona', 0, '34.59803', '-84.51132')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC125': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Agricola', 0, '33.19622', '-82.71952'), ('Bastonville', 0, '33.30610', '-82.52809'), ('Edgehill', 0, '33.15263', '-82.62427'), ('Five Points', 0, '33.28716', '-82.66120'), ('Gibson', 0, '33.23349', '-82.59547'), ('Mitchell', 0, '33.21980', '-82.70322')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC127': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Boys Estate', 1719, '31.31650', '-81.47290'), ('Country Club Estate', 7594, '31.21250', '-81.46440'), ('Dock Junction', 6951, '31.20220', '-81.51690'), ('Everett', 1719, '31.38730', '-81.63990'), ('Glynn Haven', 13381, '31.18830', '-81.37690'), ('Jekyll Island', 15600, '31.04140', '-81.41730'), ('Sea Island', 13381, '31.18330', '-81.35000'), ('St. Simons', 13381, '31.17680', '-81.38450'), ('Thalmann', 6951, '31.29060', '-81.68900')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC129': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Audubon', 0, '34.56645', '-84.81963'), ('Calhoun', 0, '34.50250', '-84.95112'), ('Fairmount', 0, '34.43629', '-84.70003'), ('Nickelsville', 0, '34.60164', '-84.86664'), ('Oakman', 0, '34.56614', '-84.70824'), ('Oostanaula', 0, '34.48139', '-85.01478'), ('Plainville', 0, '34.40491', '-85.03694'), ('Ranger', 0, '34.50112', '-84.70973'), ('Redbud', 0, '34.53311', '-84.81929'), ('Resaca', 0, '34.58020', '-84.94339'), ('Sonoraville', 0, '34.44834', '-84.82818'), ('Sugar Valley', 0, '34.55734', '-85.01176')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC131': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Akridge', 605, '30.98275', '-84.16552'), ('Beachton', 9239, '30.72680', '-84.13970'), ('Boydville', 631, '30.87990', '-84.35530'), ('Cairo', 9239, '30.87930', '-84.20600'), ('Calvary', 1654, '30.72490', '-84.34660'), ('Capel', 9239, '30.97310', '-84.19880'), ('Elpino', 9239, '30.99540', '-84.23130'), ('Grady Co A/P', 9239, '30.88740', '-84.15470'), ('Harrells Still', 631, '31.01560', '-84.35550'), ('Moncrief', 9239, '30.71160', '-84.13800'), ('Nickleville', 631, '30.80410', '-84.33550'), ('Peoples Still', 631, '30.98950', '-84.31230'), ('Pine Park', 9239, '30.85150', '-84.10420'), ('Princes Still', 9239, '30.79730', '-84.25460'), ('Reno', 631, '30.77310', '-84.29330'), ('Rocky Hill', 9239, '30.70100', '-84.21050'), ('Spence', 1090, '31.03120', '-84.16420'), ('Whigham', 631, '30.88360', '-84.32460')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC133': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Carey', 0, '33.54776', '-83.26858'), ('Daniel Springs', 0, '33.65200', '-82.97451'), ('Greensboro', 0, '33.57590', '-83.18265'), ('Greshamville', 0, '33.62651', '-83.32373'), ('Jacksonville', 0, '33.63166', '-83.02956'), ('Liberty', 0, '33.41355', '-83.14751'), ('Penfield', 0, '33.66756', '-83.17753'), ('Reynolds Plantation', 0, '33.42233', '-83.21568'), ('Siloam', 0, '33.53654', '-83.08119'), ('Union Point', 0, '33.61465', '-83.07424'), ('Veazey', 0, '33.50318', '-83.14457'), ('White Plains', 0, '33.47205', '-83.03549'), ('Woodville', 0, '33.67267', '-83.10656'), ('Wrayswood', 0, '33.69419', '-83.31320')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC135': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Berkeley Lake', 0, '33.98256', '-84.18372'), ('Buford', 0, '34.11918', '-84.00379'), ('Buford Dam-Lake Lanier Parks', 0, '34.15157', '-84.05956'), ('Centerville', 0, '33.80392', '-84.04307'), ('Dacula', 0, '33.98841', '-83.89566'), ('Duluth', 0, '34.00229', '-84.14385'), ('Grayson', 0, '33.89348', '-83.95560'), ('Harbin', 0, '33.94772', '-83.85598'), ('Hog Mountain', 0, '34.05062', '-83.92817'), ('Lawrenceville', 0, '33.95629', '-83.98836'), ('Lilburn', 0, '33.88978', '-84.14380'), ('Mechanicsville', 0, '33.92557', '-84.24817'), ('Mountain Park', 0, '33.84034', '-84.13111'), ('Norcross', 0, '33.93916', '-84.21118'), ('Pleasant Hill', 0, '33.94113', '-84.12238'), ('Rest Haven', 0, '34.13321', '-83.97646'), ('Rosebud', 0, '33.80800', '-83.96726'), ('Snellville', 0, '33.85756', '-84.01982'), ('Sugar Hill', 0, '34.10582', '-84.03031'), ('Suwanee', 0, '34.05493', '-84.06905')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC137': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baldwin', 2425, '34.49210', '-83.55000'), ('Batesville', 430, '34.74810', '-83.61140'), ('Clarkesville', 1248, '34.60950', '-83.52280'), ('Cornelia', 3674, '34.51240', '-83.52940'), ('Demorest', 1465, '34.56550', '-83.54540'), ('Hollywood', 1248, '34.64940', '-83.44750'), ('Mount Airy', 604, '34.51940', '-83.50330'), ('Tallulah Falls', 164, '34.72390', '-83.38250'), ('Turnerville', 164, '34.68670', '-83.42610')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAC139': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aqualand Park', 0, '34.20369', '-83.96538'), ('Candler', 0, '34.21139', '-83.78142'), ('Chestnut Mountain', 0, '34.17320', '-83.83820'), ('Clermont', 0, '34.47758', '-83.77364'), ('Flowery Branch', 0, '34.18508', '-83.92651'), ('Gainesville', 0, '34.29930', '-83.82731'), ('Gillsville', 0, '34.30883', '-83.63555'), ('Lake Lanier Islands', 0, '34.17643', '-84.02526'), ('Lula', 0, '34.38879', '-83.66457'), ('Murrayville', 0, '34.41923', '-83.90569'), ('Oakwood', 0, '34.22860', '-83.88310'), ('Road Atlanta-Lanier Speedway', 0, '34.15119', '-83.81277')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC141': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Beulah', 0, '33.14297', '-83.05603'), ('Culverton', 0, '33.30835', '-82.89516'), ('Devereux', 0, '33.21484', '-83.07529'), ('Linton', 0, '33.11541', '-82.99014'), ('Mayfield', 0, '33.35562', '-82.79999'), ('Powelton', 0, '33.42802', '-82.87288'), ('Shoulderbone', 0, '33.33904', '-83.08024'), ('Sparta', 0, '33.27562', '-82.97476'), ('Springfield', 0, '33.41908', '-82.95218')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC143': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bremen', 0, '33.72107', '-85.14589'), ('Buchanan', 0, '33.80219', '-85.18930'), ('Draketown', 0, '33.82673', '-85.04292'), ('Eubank Lake', 0, '33.89804', '-85.09015'), ('Felton', 0, '33.88774', '-85.22400'), ('Tallapoosa', 0, '33.74424', '-85.28810'), ('Waco', 0, '33.70295', '-85.18331')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC145': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cataula', 0, '32.65599', '-84.86779'), ('Ellerslie', 0, '32.63212', '-84.80135'), ('F.D. Roosevelt State Park', 0, '32.83972', '-84.81254'), ('Fortson', 0, '32.61060', '-84.93743'), ('Goat Rock Lake', 0, '32.61312', '-85.07856'), ('Hamilton', 0, '32.75862', '-84.87501'), ('Lake Harding', 0, '32.68167', '-85.09458'), ('Mountain Hill', 0, '32.70154', '-85.02459'), ('Mulberry Grove', 0, '32.66040', '-84.95756'), ('Pine Mountain-Callaway Gardens', 0, '32.85658', '-84.84960'), ('Pine Mountain Valley', 0, '32.79909', '-84.82274'), ('Shiloh', 0, '32.80822', '-84.69640'), ('Waverly Hall', 0, '32.68481', '-84.73807'), ('Whitesville-Pine Lake', 0, '32.81701', '-85.04159')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC147': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bowersville', 334, '34.37220', '-83.08330'), ('Hartwell', 4188, '34.35370', '-82.93200'), ('Nuberg', 4188, '34.26440', '-82.89500'), ('Reed Creek', 2148, '34.43660', '-82.91510'), ('Vanna', 898, '34.24140', '-83.07170')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAC149': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Centralhatchee', 0, '33.36896', '-85.10372'), ('Corinth', 0, '33.23023', '-84.94524'), ('Ephesus', 0, '33.40575', '-85.25391'), ('Franklin', 0, '33.27874', '-85.09844'), ('Frolona', 0, '33.32548', '-85.23763'), ('Glenn', 0, '33.15513', '-85.20294'), ('Plant Wansley', 0, '33.41078', '-85.03301'), ('Roosterville', 0, '33.40338', '-85.18412'), ('Texas', 0, '33.24104', '-85.19642'), ('Waresville', 0, '33.22887', '-85.23875')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC151': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Atlanta Motor Speedway', 0, '33.38332', '-84.31805'), ('Blacksville', 0, '33.43355', '-84.14876'), ('Eagles Landing', 0, '33.50867', '-84.22598'), ('Flippen', 0, '33.48317', '-84.18675'), ('Hampton', 0, '33.38686', '-84.28300'), ('Hidden Valley Park', 0, '33.61074', '-84.21719'), ('Kelleytown', 0, '33.53772', '-84.08907'), ('Locust Grove', 0, '33.34332', '-84.10440'), ('Luella', 0, '33.35180', '-84.17914'), ('McDonough', 0, '33.44737', '-84.14674'), ('Ola', 0, '33.43538', '-84.04224'), ('Stockbridge', 0, '33.54478', '-84.23253')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC153': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bonaire', 0, '32.54385', '-83.59657'), ('Centerville', 0, '32.63074', '-83.68866'), ('Clinchfield', 0, '32.41350', '-83.63781'), ('Elberta', 0, '32.65945', '-83.61889'), ('Elko', 0, '32.33107', '-83.70718'), ('Grovania', 0, '32.36622', '-83.66316'), ('Grove Park', 0, '32.37798', '-83.72573'), ('Hayneville', 0, '32.38335', '-83.62087'), ('Henderson', 0, '32.34147', '-83.78934'), ('Houston Lake', 0, '32.50101', '-83.66825'), ('Kathleen', 0, '32.49574', '-83.60824'), ('Klondike', 0, '32.34823', '-83.57606'), ('Meadowdale', 0, '32.44260', '-83.78061'), ('Moss Oak', 0, '32.41930', '-83.77433'), ('Perry', 0, '32.45895', '-83.73394'), ('Robins Air Force Base', 0, '32.62597', '-83.59253'), ('Sand Bed', 0, '32.45704', '-83.61872'), ('Warner Robins', 0, '32.61830', '-83.63181')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC155': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abba', 8758, '31.75540', '-83.37080'), ('Arp', 246, '31.75460', '-83.40710'), ('Holt', 330, '31.59513', '-83.15100'), ('Irwinville', 8758, '31.64820', '-83.38270'), ('Irwinville Airport', 0, '31.66551', '-83.44451'), ('Mystic', 3270, '31.62265', '-83.33515'), ('Ocilla', 3270, '31.59570', '-83.24920'), ('Osierfield', 320, '31.66640', '-83.11610'), ('Pinetta', 3270, '31.59290', '-83.35860'), ('Waterloo', 15060, '31.59350', '-83.47450'), ('Wray', 320, '31.62190', '-83.05510')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC157': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Apple Valley', 0, '34.15885', '-83.50941'), ('Arcade', 0, '34.07788', '-83.56224'), ('Bear Creek Reservoir', 0, '33.98311', '-83.51575'), ('Braselton', 0, '34.10918', '-83.76272'), ('Center', 0, '34.05498', '-83.41861'), ('Commerce', 0, '34.20371', '-83.45720'), ('Hoschton', 0, '34.09660', '-83.76141'), ('Jefferson', 0, '34.11738', '-83.57324'), ('Maysville', 0, '34.25289', '-83.56154'), ('Nicholson', 0, '34.11302', '-83.43147'), ('Peach State Speedway', 0, '34.16668', '-83.55230'), ('Pendergrass', 0, '34.16211', '-83.67829'), ('Talmo', 0, '34.18487', '-83.72043')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC159': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adgateville', 0, '33.22466', '-83.67325'), ('Calvin', 0, '33.38697', '-83.70410'), ('Eudora', 0, '33.41048', '-83.76219'), ('Farrar', 0, '33.47230', '-83.64085'), ('Hillsboro', 0, '33.17989', '-83.64078'), ('McElheneys Crossroads', 0, '33.24355', '-83.76044'), ('Monticello', 0, '33.30430', '-83.68412'), ('North Alcovy', 0, '33.42070', '-83.81776'), ('Piedmont', 0, '33.27569', '-83.59632'), ('Shady Dale', 0, '33.40079', '-83.58922'), ('Turtle Cove', 0, '33.37047', '-83.84232')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC161': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Denton', 269, '31.72250', '-82.69650'), ('Hazlehurst', 3787, '31.86590', '-82.59970'), ('Snipesville', 269, '31.75950', '-82.75250')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC163': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Avera', 0, '33.19387', '-82.52778'), ('Bartow', 0, '32.87867', '-82.47421'), ('Grange', 0, '33.08218', '-82.57887'), ('Louisville', 0, '33.00174', '-82.40945'), ('Matthews', 0, '33.21107', '-82.30860'), ('Moxley', 0, '32.92190', '-82.39750'), ('Stapleton', 0, '33.21570', '-82.46834'), ('Stapletons Crossroads', 0, '33.10015', '-82.50198'), ('Stellaville', 0, '33.18826', '-82.33134'), ('Wadley', 0, '32.86570', '-82.40464'), ('Wrens', 0, '33.20848', '-82.38586')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC165': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Birdsville', 3492, '32.87140', '-82.07810'), ('Butts', 152, '32.72580', '-82.02640'), ('Emmalane', 3492, '32.75970', '-81.99830'), ('Four Points', 152, '32.67170', '-81.99330'), ('Herndon', 457, '32.82030', '-82.12940'), ('Lawton', 3492, '32.87170', '-81.94560'), ('Millen', 3492, '32.80390', '-81.94940'), ('Perkins', 3492, '32.90940', '-81.95310'), ('Rogers', 3492, '32.81920', '-82.07390'), ('Scarboro', 186, '32.71310', '-81.87560'), ('Thrift', 152, '32.69890', '-82.05610')], 'partOfState': 'east central', 'wfo': 'CHS'}, +'GAC167': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adrian', 0, '32.53103', '-82.58972'), ('Donovan', 0, '32.77153', '-82.71292'), ('Kite', 0, '32.69234', '-82.51449'), ('Meeks', 0, '32.61889', '-82.55712'), ('New Home', 0, '32.76998', '-82.60154'), ('Scott', 0, '32.55295', '-82.66703'), ('Spann', 0, '32.66582', '-82.74822'), ('Wrightsville', 0, '32.72949', '-82.71971')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC169': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blountsville', 0, '33.12339', '-83.47688'), ('Bradley', 0, '33.05352', '-83.55843'), ('Clinton', 0, '32.99472', '-83.56120'), ('Ethridge', 0, '33.16353', '-83.44264'), ('Gray', 0, '33.00916', '-83.53429'), ('Greenberry Crossroads', 0, '32.95385', '-83.44971'), ('Griswoldville', 0, '32.87439', '-83.48954'), ('Haddock', 0, '33.03425', '-83.42498'), ('James', 0, '32.96634', '-83.47395'), ('Jarrell Plantation', 0, '33.05222', '-83.72411'), ('Mountain Springs', 0, '32.90137', '-83.44960'), ('Postell', 0, '32.91244', '-83.52125'), ('Round Oak', 0, '33.10949', '-83.61489'), ('Wayside', 0, '33.06154', '-83.60547')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC171': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aldora', 0, '33.05107', '-84.17566'), ('Barnesville', 0, '33.05446', '-84.15548'), ('Chappel Mill', 0, '33.18004', '-84.09701'), ('Goggins', 0, '33.07616', '-84.09260'), ('Johnstonville', 0, '33.08932', '-84.07406'), ('Liberty Hill', 0, '33.15374', '-84.13739'), ('Milner', 0, '33.11651', '-84.19657'), ('Piedmont', 0, '33.01691', '-84.25093'), ('Redbone', 0, '32.98958', '-84.09733')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC173': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Courthouse', 2730, '31.08470', '-83.02100'), ('Greenwood', 110, '30.94788', '-82.97430'), ('Hansell', 0, '31.02756', '-83.06649'), ('Lakeland', 2730, '31.04070', '-83.07490'), ('Meigs', 0, '31.07094', '-83.09062'), ('Stockton', 110, '30.93850', '-83.00120'), ('Teeterville', 746, '31.11250', '-83.14430')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC175': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brewton', 0, '32.59359', '-82.79835'), ('Cadwell', 0, '32.33959', '-83.04219'), ('Cedar Grove', 0, '32.25322', '-82.88974'), ('Chappells Mill', 0, '32.65934', '-83.04681'), ('Dexter', 0, '32.43332', '-83.05884'), ('Dublin', 0, '32.54020', '-82.90360'), ('Dudley', 0, '32.54040', '-83.07203'), ('East Dublin', 0, '32.54866', '-82.87350'), ('Harlow', 0, '32.49424', '-82.98867'), ('Lovett', 0, '32.63843', '-82.76751'), ('Lowery', 0, '32.35626', '-82.80002'), ('Minter', 0, '32.48590', '-82.76084'), ('Montrose', 0, '32.55993', '-83.15342'), ('Rentz', 0, '32.38345', '-82.99154'), ('Rockledge', 0, '32.44447', '-82.69635'), ('Tuckers Crossroad', 0, '32.70108', '-82.86509')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC177': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Armena', 393, '31.67037', '-84.28854'), ('Byne Crossroads', 2633, '31.69770', '-84.21970'), ('Century', 2633, '31.67851', '-84.17213'), ('Chokee', 214, '31.89263', '-84.05045'), ('Forrester', 76939, '31.64697', '-84.17098'), ('Jordan Place', 2633, '31.75510', '-84.20850'), ('Leesburg', 2633, '31.73390', '-84.17020'), ('Mossy Dell', 2633, '31.75930', '-84.11290'), ('Neyami', 774, '31.82320', '-84.21530'), ('Oakland', 393, '31.67350', '-84.26000'), ('Palmyra', 76939, '31.63700', '-84.19450'), ('Philema', 430, '31.75250', '-84.01710'), ('Scrutchins', 774, '31.86290', '-84.19690'), ('Smithville', 774, '31.90190', '-84.25540'), ('Starksville', 2633, '31.77128', '-84.14282'), ('Stocks', 0, '31.65564', '-84.09160')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC179': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Allenhurst', 788, '31.78390', '-81.60780'), ('Creek Island', 273, '31.82060', '-81.65690'), ('Crossroads', 736, '31.74720', '-81.46330'), ('Dorchester', 1100, '31.79530', '-81.40530'), ('Fleming', 1100, '31.88060', '-81.42670'), ('Flemington', 369, '31.85940', '-81.56420'), ('Fort Stewart', 369, '31.86250', '-81.51780'), ('Gum Branch', 273, '31.85810', '-81.72690'), ('Halfmoon Landing', 736, '31.69940', '-81.27860'), ('Hinesville', 30392, '31.84670', '-81.59610'), ('Lecount', 736, '31.67970', '-81.45890'), ('Limerick', 1100, '31.83670', '-81.38610'), ('Live Oak', 30392, '31.81250', '-81.62440'), ('McIntosh', 369, '31.82560', '-81.52390'), ('Midway', 1100, '31.80560', '-81.43080'), ('Mill Creek', 30392, '31.82920', '-81.62060'), ('Retreat', 736, '31.70280', '-81.41420'), ('Riceboro', 736, '31.73530', '-81.43360'), ('Screven Fork', 736, '31.77310', '-81.49140'), ('Seabrook', 736, '31.74330', '-81.32890'), ('Sunbury', 1100, '31.76810', '-81.28110'), ('Trinity', 11205, '31.92970', '-81.55670'), ('Walthourville', 4030, '31.77390', '-81.63280'), ('Wildwood', 30392, '31.81940', '-81.61530'), ('Willie', 2379, '32.01390', '-81.66750')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC181': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Lincolnton', 1595, '33.79180', '-82.47930')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAC183': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aimar', 4030, '31.75280', '-81.67170'), ('Beards Creek', 3641, '31.86610', '-81.88560'), ('Donald', 3641, '31.82140', '-81.85030'), ('Elim', 273, '31.79470', '-81.67470'), ('Ludowici', 1440, '31.70780', '-81.74250'), ('Noble', 3641, '31.84640', '-81.92920'), ('Wefanie', 1440, '31.77060', '-81.81640')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC185': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barretts', 993, '31.00130', '-83.19940'), ('Clyattville', 549, '30.69270', '-83.31610'), ('Dasher', 834, '30.74700', '-83.21840'), ('Hahira', 1626, '30.99030', '-83.37280'), ('I-75 At Exit 11', 0, '30.75090', '-83.27359'), ('I-75 At Exit 16', 847, '30.81800', '-83.31670'), ('I-75 At Exit 22', 0, '30.89486', '-83.35563'), ('I-75 At Exit 29', 0, '30.99223', '-83.38811'), ('I-75 At Exit 5', 0, '30.68018', '-83.22300'), ('Kinderlou', 847, '30.80150', '-83.36590'), ('Lake Park', 549, '30.68460', '-83.18780'), ('Moody AFB', 993, '30.97862', '-83.18852'), ('Naylor', 110, '30.90670', '-83.07900'), ('Remerton', 847, '30.84380', '-83.30940'), ('Twin Lakes', 549, '30.69390', '-83.20920'), ('Valdosta', 43724, '30.84940', '-83.27840'), ('Valdosta Regional Airport', 43724, '30.78220', '-83.27670')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC187': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Auraria', 0, '34.46987', '-84.02284'), ('Camp Merrill', 0, '34.62765', '-84.10427'), ('Dahlonega', 0, '34.53369', '-83.98492'), ('Garland', 0, '34.51520', '-83.90150'), ('Nimblewill', 0, '34.56349', '-84.14056'), ('Porter Springs', 0, '34.62916', '-83.94963'), ('Turners Corner', 0, '34.66313', '-83.90106')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC189': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Dearing', 441, '33.41520', '-82.38440'), ('Thomson', 6828, '33.46610', '-82.50000')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAC191': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ardick', 1719, '31.46110', '-81.43360'), ('Ashintilly', 1719, '31.39360', '-81.40920'), ('Brickston', 736, '31.61220', '-81.49030'), ('Carnigan', 1719, '31.43420', '-81.39420'), ('Cox', 1719, '31.45500', '-81.56360'), ('Crescent', 1719, '31.50920', '-81.36970'), ('Darien', 1719, '31.37000', '-81.43420'), ('Eulonia', 1719, '31.53310', '-81.42720'), ('Fairhope', 1719, '31.53720', '-81.38890'), ('Huxford', 736, '31.55920', '-81.51030'), ('Jones', 736, '31.63360', '-81.48030'), ('Meridian', 1719, '31.45170', '-81.37810'), ('Pine Harbor', 1719, '31.54720', '-81.37560'), ('Raccoon Bluff', 1719, '31.46580', '-81.23530'), ('Ridgeville', 1719, '31.40610', '-81.40170'), ('Sapelo Island', 1719, '31.39720', '-81.27890'), ('Shellman Bluff', 736, '31.57250', '-81.32330'), ('South Newport', 736, '31.63470', '-81.39640'), ('Townsend', 1719, '31.53920', '-81.52280'), ('Valona', 1719, '31.47810', '-81.34420'), ('Warsaw', 736, '31.58970', '-81.49530')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC191': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ardick', 1719, '31.46110', '-81.43360'), ('Ashintilly', 1719, '31.39360', '-81.40920'), ('Brickston', 736, '31.61220', '-81.49030'), ('Carnigan', 1719, '31.43420', '-81.39420'), ('Cox', 1719, '31.45500', '-81.56360'), ('Crescent', 1719, '31.50920', '-81.36970'), ('Darien', 1719, '31.37000', '-81.43420'), ('Eulonia', 1719, '31.53310', '-81.42720'), ('Fairhope', 1719, '31.53720', '-81.38890'), ('Huxford', 736, '31.55920', '-81.51030'), ('Jones', 736, '31.63360', '-81.48030'), ('Meridian', 1719, '31.45170', '-81.37810'), ('Pine Harbor', 1719, '31.54720', '-81.37560'), ('Raccoon Bluff', 1719, '31.46580', '-81.23530'), ('Ridgeville', 1719, '31.40610', '-81.40170'), ('Sapelo Island', 1719, '31.39720', '-81.27890'), ('Shellman Bluff', 736, '31.57250', '-81.32330'), ('South Newport', 736, '31.63470', '-81.39640'), ('Townsend', 1719, '31.53920', '-81.52280'), ('Valona', 1719, '31.47810', '-81.34420'), ('Warsaw', 736, '31.58970', '-81.49530')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC193': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Andersonville National Historic', 0, '32.19697', '-84.12862'), ('Bartlett', 0, '32.33593', '-84.11713'), ('Clearview', 0, '32.24624', '-84.08533'), ('Five Points', 0, '32.29142', '-83.91747'), ('Fountainville', 0, '32.28341', '-84.15712'), ('Garden Valley', 0, '32.43968', '-84.11760'), ('Hicks', 0, '32.48208', '-84.09628'), ('Ideal', 0, '32.37520', '-84.18755'), ('Marshallville', 0, '32.45636', '-83.94191'), ('Montezuma', 0, '32.30060', '-84.02992'), ('Oglethorpe', 0, '32.29387', '-84.06073'), ('Saint Louis', 0, '32.46810', '-83.86716'), ('Whitewater State Park', 0, '32.34953', '-84.06641'), ('Winchester', 0, '32.41827', '-83.95829')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC195': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Carlton', 0, '34.04287', '-83.03387'), ('Colbert', 0, '34.03820', '-83.21261'), ('Comer', 0, '34.06388', '-83.12552'), ('Danielsville', 0, '34.12462', '-83.22129'), ('Diamond Hill', 0, '34.06300', '-83.27776'), ('Harrison', 0, '34.22577', '-83.12070'), ('Hull', 0, '34.01459', '-83.29380'), ('Ila', 0, '34.17263', '-83.29212'), ('Neese', 0, '34.07739', '-83.31584'), ('Paoli', 0, '34.09197', '-83.09159'), ('Pocataligo', 0, '34.20022', '-83.28426'), ('Sanford', 0, '34.07856', '-83.34866'), ('Watson Mill Bridge State Park', 0, '34.02739', '-83.07477')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC197': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brantley', 0, '32.37142', '-84.55901'), ('Buena Vista', 0, '32.31848', '-84.51753'), ('Church Hill', 0, '32.16157', '-84.54480'), ('Doyle', 0, '32.28373', '-84.44368'), ('Draneville', 0, '32.21157', '-84.48917'), ('Five Points', 0, '32.45324', '-84.44477'), ('Juniper', 0, '32.52844', '-84.60253'), ('Marion Estates', 0, '32.49906', '-84.56089'), ('Oakland', 0, '32.46448', '-84.53928'), ('Putnam', 0, '32.25966', '-84.42055'), ('Tazewell', 0, '32.38056', '-84.43988'), ('Zellobee', 0, '32.30010', '-84.61879')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC199': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alvaton', 0, '33.16956', '-84.58060'), ('Durand', 0, '32.91801', '-84.77074'), ('Gay', 0, '33.09379', '-84.57420'), ('Greenville', 0, '33.02869', '-84.71308'), ('Harris City', 0, '32.96864', '-84.71213'), ('Imlac', 0, '33.03216', '-84.56366'), ('Lone Oak', 0, '33.17186', '-84.81612'), ('Luthersville', 0, '33.21010', '-84.74474'), ('Manchester', 0, '32.85736', '-84.61972'), ('Odessadale', 0, '33.01758', '-84.81662'), ('Raleigh', 0, '32.93580', '-84.63694'), ('Rocky Mount', 0, '33.16536', '-84.67315'), ('Saint Marks', 0, '33.12534', '-84.82126'), ('Stovall', 0, '32.96093', '-84.85163'), ('Warm Springs', 0, '32.89053', '-84.67988'), ('Woodbury', 0, '32.98407', '-84.57960'), ('Wooster', 0, '33.14064', '-84.63500')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC201': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Babcock', 1939, '31.11080', '-84.64180'), ('Bellview', 1939, '31.15600', '-84.59990'), ('Boykin', 1939, '31.10430', '-84.68680'), ('Colquitt', 1939, '31.17140', '-84.73420'), ('Cooktown', 1939, '31.20580', '-84.56050'), ('Enterprise', 2796, '31.12293', '-84.82638'), ('Harmony Church Rd/Hwy 45', 1939, '31.23430', '-84.73054'), ('Jeterville', 277, '31.24170', '-84.70630'), ('Macedonia', 277, '31.24580', '-84.66150'), ('Mayhaw', 2796, '31.17630', '-84.87550')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC205': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baconton', 804, '31.37926', '-84.16275'), ('Branchville', 5669, '31.14980', '-84.31570'), ('Camilla', 5669, '31.22970', '-84.21010'), ('Cotton', 4126, '31.16160', '-84.06660'), ('Flint', 804, '31.31710', '-84.17483'), ('Freeman', 0, '31.35135', '-84.05989'), ('Greenough', 804, '31.31520', '-84.10140'), ('Hinsonton', 319, '31.18061', '-84.03312'), ('Hopeful', 851, '31.16750', '-84.39270'), ('Laney', 0, '31.20789', '-84.03346'), ('Lester', 319, '31.36830', '-84.04500'), ('Mitchell Co A/P', 5669, '31.21290', '-84.23740'), ('Pelham', 4126, '31.12650', '-84.15210'), ('Sale City', 319, '31.26280', '-84.02230')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC207': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Berner', 0, '33.15281', '-83.83361'), ('Blount', 0, '33.17940', '-83.95904'), ('Bolingbroke', 0, '32.94938', '-83.80284'), ('Brent', 0, '32.98512', '-84.00924'), ('Collier', 0, '33.04746', '-84.01058'), ('Culloden', 0, '32.86312', '-84.09392'), ('Dames Ferry', 0, '33.02351', '-83.73719'), ('Forsyth', 0, '33.03461', '-83.93851'), ('High Falls State Park', 0, '33.17863', '-84.01819'), ('Juliette', 0, '33.10712', '-83.79999'), ('Plant Scherer', 0, '33.06021', '-83.80826'), ('Russellville', 0, '32.90277', '-83.99136')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC209': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ailey', 0, '32.18692', '-82.56634'), ('Alston', 0, '32.08026', '-82.47741'), ('Charlotteville', 0, '32.01078', '-82.52435'), ('Higgston', 0, '32.21757', '-82.46731'), ('Kibbee', 0, '32.28703', '-82.52490'), ('Mount Vernon', 0, '32.17832', '-82.59464'), ('Tarrytown', 0, '32.31874', '-82.55972'), ('Uvalda', 0, '32.03595', '-82.50828')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC211': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Apalachee', 0, '33.68634', '-83.43112'), ('Bostwick', 0, '33.73725', '-83.51438'), ('Buckhead', 0, '33.56842', '-83.36182'), ('Godfrey', 0, '33.45347', '-83.50481'), ('Hard Labor Creek State Park', 0, '33.65197', '-83.59571'), ('Madison', 0, '33.59571', '-83.46745'), ('Parks Mill', 0, '33.50424', '-83.28987'), ('Reese', 0, '33.54569', '-83.61743'), ('Rutledge', 0, '33.62603', '-83.61222'), ('Swords', 0, '33.54564', '-83.30470')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC213': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Carters', 0, '34.60946', '-84.69224'), ('Chatsworth', 0, '34.76609', '-84.76966'), ('Cisco', 0, '34.95112', '-84.73699'), ('Conasauga Lake', 0, '34.86066', '-84.64998'), ('Crandall', 0, '34.86750', '-84.74371'), ('Eton', 0, '34.82446', '-84.76320'), ('Fort Mountain State Park', 0, '34.75782', '-84.70728'), ('Gregory', 0, '34.95650', '-84.77406'), ('North Georgia Speedway', 0, '34.69201', '-84.82965'), ('Ramhurst', 0, '34.69722', '-84.73549'), ('Sumac', 0, '34.88366', '-84.79924'), ('Tennga', 0, '34.98552', '-84.73834')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC215': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Avondale', 0, '32.46060', '-84.97455'), ('Battle Park', 0, '32.38426', '-84.95001'), ('Benning Hills', 0, '32.41251', '-84.93450'), ('Benning Park', 0, '32.42751', '-84.94595'), ('Bibb City', 0, '32.49866', '-84.99043'), ('Carter Acres', 0, '32.40985', '-84.96593'), ('Columbus', 0, '32.46450', '-84.98735'), ('Columbus Metropolitan Airport', 0, '32.51539', '-84.94055'), ('Custer Road Terrace', 0, '32.38942', '-84.94258'), ('Edgewood', 0, '32.49001', '-84.93024'), ('Flat Rock', 0, '32.54543', '-84.86644'), ('Green Island Hills', 0, '32.53413', '-85.00253'), ('Highland Park', 0, '32.47887', '-84.94417'), ('Kenwood', 0, '32.50310', '-84.90628'), ('Laurel Hills', 0, '32.51642', '-84.97429'), ('Midland', 0, '32.57038', '-84.82090'), ('North Fort Benning', 0, '32.45455', '-84.79733'), ('Rose Hill', 0, '32.48506', '-84.98486'), ('Saint Marys Hills', 0, '32.45308', '-84.93341'), ('Sand Hill', 0, '32.40833', '-84.89519'), ('Upatoi', 0, '32.55217', '-84.74002'), ('Vista Terrace', 0, '32.46582', '-84.88737')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC217': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Almon', 0, '33.62057', '-83.92501'), ('Brick Store', 0, '33.60162', '-83.74517'), ('Covington', 0, '33.59644', '-83.85982'), ('Gum Creek', 0, '33.71485', '-83.89278'), ('Mansfield', 0, '33.51801', '-83.73487'), ('Newborn', 0, '33.51621', '-83.69473'), ('Oak Hill', 0, '33.53893', '-84.00991'), ('Oxford', 0, '33.61984', '-83.87080'), ('Porterdale', 0, '33.57402', '-83.89500'), ('Rocky Plains', 0, '33.49681', '-83.91798'), ('Starrsville', 0, '33.54364', '-83.79671'), ('Stewart', 0, '33.42280', '-83.85137')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC219': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barnett Shoals', 0, '33.83902', '-83.31000'), ('Bishop', 0, '33.81969', '-83.43911'), ('Bogart', 0, '33.94860', '-83.53302'), ('Eastville', 0, '33.88117', '-83.50468'), ('Farmington', 0, '33.77586', '-83.42318'), ('North High Shoals', 0, '33.82482', '-83.50374'), ('Rose Hill', 0, '33.77749', '-83.31105'), ('Salem', 0, '33.72424', '-83.38626'), ('Watkinsville', 0, '33.86339', '-83.40932')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC221': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arnoldsville', 0, '33.90487', '-83.21714'), ('Crawford', 0, '33.88248', '-83.15584'), ('Dunlap', 0, '33.95448', '-83.25512'), ('Hutchings', 0, '33.84207', '-83.16753'), ('Lexington', 0, '33.86967', '-83.11167'), ('Maxeys', 0, '33.75520', '-83.17384'), ('Philomath', 0, '33.72701', '-82.99094'), ('Point Peter', 0, '33.99640', '-83.01291'), ('Sandy Cross', 0, '33.94340', '-83.06724'), ('Smithonia', 0, '34.00292', '-83.17618'), ('Stephens', 0, '33.79434', '-83.16108'), ('Vesta', 0, '33.95664', '-82.93960')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC223': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Braswell', 0, '33.98960', '-84.96193'), ('Brownsville', 0, '33.79965', '-84.75767'), ('Burnt Hickory Ridge', 0, '34.02493', '-84.85054'), ('Cross Roads', 0, '34.01023', '-84.75520'), ('Dallas', 0, '33.92446', '-84.84128'), ('Hiram', 0, '33.87549', '-84.76139'), ('New Georgia', 0, '33.80875', '-84.88984'), ('New Hope', 0, '33.95865', '-84.78910'), ('Union', 0, '33.84322', '-84.98116'), ('Yorkville', 0, '33.92566', '-84.99609')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC225': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Byron', 0, '32.65164', '-83.75580'), ('Fort Valley', 0, '32.55373', '-83.88665'), ('Lakewood', 0, '32.57873', '-83.74773'), ('Miami Valley', 0, '32.55377', '-83.80240'), ('Powerville', 0, '32.60326', '-83.79264')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC227': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blaine', 0, '34.51085', '-84.55771'), ('Hinton', 0, '34.48079', '-84.58428'), ('Jasper', 0, '34.46867', '-84.42770'), ('Lake Tamarack', 0, '34.49008', '-84.37191'), ('Marblehill', 0, '34.43088', '-84.33797'), ('Nelson', 0, '34.38159', '-84.37174'), ('Sequoyah Lake', 0, '34.54518', '-84.36626'), ('Talking Rock', 0, '34.51008', '-84.50596'), ('Talmadge', 0, '34.42404', '-84.55807'), ('Tate', 0, '34.41843', '-84.38269')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC229': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blackshear', 3283, '31.29890', '-82.24170'), ('Bristol', 627, '31.44850', '-82.21490'), ('Patterson', 627, '31.38420', '-82.13800')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC231': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Concord', 0, '33.09113', '-84.43854'), ('Hilltop', 0, '33.10336', '-84.43447'), ('Hollonville', 0, '33.16549', '-84.46073'), ('Lifsey Springs', 0, '33.03638', '-84.37675'), ('Meansville', 0, '33.04930', '-84.30633'), ('Molena', 0, '33.01182', '-84.49991'), ('Williamson', 0, '33.18234', '-84.36167'), ('Zebulon', 0, '33.10257', '-84.34219')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC233': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Antioch', 0, '33.95297', '-85.16251'), ('Aragon', 0, '34.04412', '-85.05634'), ('Cedartown', 0, '34.01118', '-85.25493'), ('Esom Hill', 0, '33.94917', '-85.38818'), ('Etna', 0, '34.00513', '-85.40192'), ('Fish Creek', 0, '34.01008', '-85.13214'), ('Rockmart', 0, '34.00298', '-85.04154'), ('Seney', 0, '34.08423', '-85.12108'), ('Van Wert', 0, '33.98774', '-85.04309')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC235': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Browndale', 0, '32.30486', '-83.58741'), ('Finleyson', 0, '32.12921', '-83.50060'), ('Hartford', 0, '32.28371', '-83.44860'), ('Hawkinsville', 0, '32.28238', '-83.46998'), ('Mobley Crossing', 0, '32.32675', '-83.41439'), ('Mock Springs', 0, '32.21734', '-83.59277'), ('Ocmulgee Banks', 0, '32.16077', '-83.36894'), ('Ocmulgee Public Fishing Area', 0, '32.38480', '-83.48668'), ('Pulaski State Prison', 0, '32.31150', '-83.45691'), ('Wallace', 0, '32.19701', '-83.49736')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC237': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Central Georgia Experiment Stn', 0, '33.40135', '-83.49143'), ('Eatonton', 0, '33.32571', '-83.38876'), ('Flat Rock', 0, '33.23749', '-83.31862'), ('Harmony', 0, '33.45815', '-83.34910'), ('Oconee Springs Park', 0, '33.28825', '-83.19966'), ('Phoenix', 0, '33.41823', '-83.27000'), ('Plant Harlee Branch', 0, '33.19494', '-83.29863'), ('Resseaus Crossroads', 0, '33.20110', '-83.43419'), ('Rock Eagle 4-H Center', 0, '33.41882', '-83.39194'), ('Rockville', 0, '33.33036', '-83.21682'), ('Stanfordville', 0, '33.22306', '-83.50129'), ('Warfield', 0, '33.29722', '-83.38406'), ('Willard', 0, '33.31199', '-83.48998')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC239': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bonapartes Retreat', 0, '31.79306', '-85.12453'), ('Crossroads', 13220, '31.83330', '-84.99150'), ('Georgetown', 973, '31.88468', '-85.10634'), ('Hatcher', 13220, '31.81551', '-85.00953'), ('Morris', 149, '31.79360', '-84.94790'), ('Union', 3731, '31.87480', '-84.93760'), ('Wire Bridge', 13220, '31.84610', '-85.07490')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC241': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Clayton', 2019, '34.87740', '-83.40090'), ('Dillard', 198, '34.97250', '-83.38560'), ('Lakemont', 316, '34.78190', '-83.41640'), ('Moccasin Creek State Park', 316, '34.84580', '-83.58750'), ('Mountain City', 829, '34.91880', '-83.38600'), ('Pine Mountain', 948, '34.94030', '-83.18720'), ('Sky Valley', 221, '34.98330', '-83.33220'), ('Tiger', 316, '34.84550', '-83.43340')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAC243': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aycock Mill', 1464, '31.63650', '-84.61360'), ('Benevolence', 3731, '31.88150', '-84.73540'), ('Brooksville', 75, '31.87200', '-84.65680'), ('Carnegie', 1340, '31.64290', '-84.77980'), ('Coleman', 149, '31.67260', '-84.89030'), ('Coles', 3731, '31.75210', '-84.83430'), ('Cuthbert', 3731, '31.77118', '-84.79014'), ('Five Points', 0, '31.70170', '-84.55899'), ('Fountain Bridge', 1340, '31.66260', '-84.68540'), ('Goffs Mill', 1166, '31.70149', '-84.70265'), ('Martins Crossroads', 1166, '31.69560', '-84.63910'), ('Pachitla', 1166, '31.76130', '-84.68150'), ('Peterson Hill', 3731, '31.78030', '-84.84800'), ('Randolph Co A/P', 149, '31.70070', '-84.82520'), ('Shellman', 1166, '31.75630', '-84.61570'), ('Shivers Mill', 3731, '31.67570', '-84.74010'), ('Springvale', 3731, '31.82690', '-84.87970'), ('Springvale Station', 3731, '31.79930', '-84.89230'), ('Wades', 3731, '31.85216', '-84.75095'), ('White House', 3731, '31.81270', '-84.78490')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC245': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Augusta', 43459, '33.45730', '-81.99500'), ('Blythe', 718, '33.29250', '-82.19950'), ('Fort Gordon', 9140, '33.41710', '-82.14090'), ('Hephzibah', 3880, '33.28730', '-82.10600')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAC247': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Big Haynes Creek Park', 0, '33.75562', '-83.94781'), ('Conyers', 0, '33.66755', '-84.01735'), ('Georgia International Horse Park', 0, '33.66896', '-83.93509'), ('Lakeview Estates', 0, '33.70609', '-84.03354'), ('Magnet', 0, '33.56577', '-84.01551'), ('Milstead', 0, '33.68532', '-83.99094'), ('Panola Mountain State Park', 0, '33.63380', '-84.17180'), ('Richardson Park', 0, '33.59025', '-84.13806')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC249': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bumphead', 0, '32.18927', '-84.20380'), ('Cedar Creek', 0, '32.39083', '-84.38860'), ('Concord', 0, '32.33159', '-84.34230'), ('Ellaville', 0, '32.23810', '-84.30885'), ('La Crosse', 0, '32.18696', '-84.24042'), ('Murrays Crossroads', 0, '32.32084', '-84.29391'), ('Walls Crossing', 0, '32.25223', '-84.37044')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC251': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Altman', 2675, '32.72560', '-81.63060'), ('Bascom', 402, '32.84030', '-81.66830'), ('Cameron', 253, '32.55780', '-81.67390'), ('Captolo', 322, '32.62530', '-81.59720'), ('Cooperville', 186, '32.59060', '-81.70420'), ('Dover', 186, '32.57690', '-81.71530'), ('Farmdale', 2675, '32.69940', '-81.61030'), ('Goloid', 2675, '32.69140', '-81.67250'), ('Green Hill', 2675, '32.70940', '-81.59310'), ('Halcyondale', 253, '32.53890', '-81.59830'), ('Hilltonia', 402, '32.88330', '-81.65830'), ('Hunters', 322, '32.65440', '-81.55060'), ('Lewis', 2675, '32.80170', '-81.68170'), ('Middleground', 322, '32.64110', '-81.53280'), ('Millhaven', 402, '32.93360', '-81.64970'), ('Newington', 322, '32.59000', '-81.50420'), ('Ogeechee', 186, '32.61970', '-81.76500'), ('Oliver', 253, '32.52140', '-81.53330'), ('Parkers', 186, '32.69970', '-81.81000'), ('Rocky Ford', 186, '32.66330', '-81.82970'), ('Sheppards', 322, '32.63720', '-81.53530'), ('Stalco', 253, '32.53330', '-81.55890'), ('Sylvania', 2675, '32.75030', '-81.63690'), ('Thomasboro', 186, '32.71940', '-81.79030'), ('Waters', 2675, '32.75560', '-81.66580'), ('White Hill', 2675, '32.67970', '-81.57330'), ('Woodcliff', 186, '32.74060', '-81.76330'), ('Zeigler', 2675, '32.75170', '-81.73030')], 'partOfState': 'east central', 'wfo': 'CHS'}, +'GAC253': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Davis Park', 2796, '31.02980', '-84.87640'), ('Desser', 321, '30.88580', '-84.86290'), ('Donaldsonville A/P', 2796, '31.00630', '-84.87770'), ('Donalsonville', 2796, '31.04070', '-84.87850'), ('Drakes Still', 0, '30.81072', '-84.90707'), ('Fairchild', 1746, '30.82310', '-84.90680'), ('Iron City', 321, '31.01300', '-84.81380'), ('Lake Seminole', 0, '30.74201', '-84.87536'), ('Lela', 321, '30.98290', '-84.86310'), ('Little Hope', 2796, '31.01020', '-84.91000'), ('Reynoldsville', 225, '30.85640', '-84.77820'), ('Riverturn', 2796, '30.98890', '-84.94760'), ('Seminole State Park', 1746, '30.79180', '-84.87920'), ('Sharphagen', 321, '31.01840', '-84.82910'), ('Steam Mill', 0, '30.97155', '-84.97050')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC253': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Davis Park', 2796, '31.02980', '-84.87640'), ('Desser', 321, '30.88580', '-84.86290'), ('Donaldsonville A/P', 2796, '31.00630', '-84.87770'), ('Donalsonville', 2796, '31.04070', '-84.87850'), ('Drakes Still', 0, '30.81072', '-84.90707'), ('Fairchild', 1746, '30.82310', '-84.90680'), ('Iron City', 321, '31.01300', '-84.81380'), ('Lake Seminole', 0, '30.74201', '-84.87536'), ('Lela', 321, '30.98290', '-84.86310'), ('Little Hope', 2796, '31.01020', '-84.91000'), ('Reynoldsville', 225, '30.85640', '-84.77820'), ('Riverturn', 2796, '30.98890', '-84.94760'), ('Seminole State Park', 1746, '30.79180', '-84.87920'), ('Sharphagen', 321, '31.01840', '-84.82910'), ('Steam Mill', 0, '30.97155', '-84.97050')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC255': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Birdie', 0, '33.31734', '-84.36160'), ('Digbey', 0, '33.25468', '-84.48926'), ('Experiment', 0, '33.26547', '-84.28150'), ('Griffin', 0, '33.24716', '-84.26360'), ('Highland Mills', 0, '33.27445', '-84.29087'), ('Orchard Hill', 0, '33.18654', '-84.21165'), ('Rover', 0, '33.20664', '-84.33484'), ('Sunny Side', 0, '33.34064', '-84.29309'), ('Towalaga', 0, '33.31628', '-84.20930'), ('Vaughn', 0, '33.28355', '-84.38689'), ('Walker Mill', 0, '33.28985', '-84.17550'), ('Zetella', 0, '33.24094', '-84.38251')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC257': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Avalon', 278, '34.50150', '-83.19440'), ('Boydville', 9323, '34.54000', '-83.36640'), ('Eastanolee', 278, '34.52030', '-83.25560'), ('Martin', 311, '34.48510', '-83.18640'), ('Toccoa', 9323, '34.57990', '-83.32470')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAC259': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brooklyn', 0, '32.17141', '-84.70778'), ('Charles', 0, '32.12866', '-84.82415'), ('Florence Marina State Park', 0, '32.09055', '-85.04353'), ('Louvale', 0, '32.16928', '-84.82796'), ('Lumpkin', 0, '32.05091', '-84.79490'), ('Omaha', 0, '32.14638', '-85.01326'), ('Providence Canyon State Park', 0, '32.06833', '-84.91012'), ('Richland', 0, '32.08932', '-84.66394'), ('Sanford', 0, '31.97991', '-84.94328'), ('Troutman', 0, '31.93926', '-84.69682'), ('Westville', 0, '32.03687', '-84.78388')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC261': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Americus', 0, '32.07278', '-84.23326'), ('Andersonville', 0, '32.19613', '-84.14201'), ('Cobb', 0, '31.95904', '-83.98827'), ('Concord', 0, '32.13969', '-84.38102'), ('Croxton Crossroads', 0, '31.95906', '-84.32552'), ('Desoto', 0, '31.95517', '-84.06264'), ('Friendship', 0, '32.14958', '-84.41949'), ('Huntington', 0, '32.00224', '-84.14084'), ('Lamar', 0, '32.01573', '-84.07231'), ('Leslie', 0, '31.95548', '-84.08633'), ('Maddox', 0, '32.00191', '-84.25050'), ('Methvins', 0, '32.11265', '-84.06976'), ('New Era', 0, '32.11269', '-84.13636'), ('Pennington', 0, '32.15909', '-84.08984'), ('Plains', 0, '32.03392', '-84.39266'), ('Shiloh', 0, '32.15296', '-84.30715'), ('Sumter', 0, '31.94832', '-84.25604')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC263': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baldwinville', 0, '32.64854', '-84.44196'), ('Baughville', 0, '32.65474', '-84.66812'), ('Big Lazer Creek Wma', 0, '32.77465', '-84.40706'), ('Box Springs', 0, '32.53279', '-84.66035'), ('Flint Hill', 0, '32.83111', '-84.64206'), ('Geneva', 0, '32.57957', '-84.55083'), ('Junction City', 0, '32.60280', '-84.45984'), ('Olive Branch', 0, '32.67580', '-84.60604'), ('Pleasant Hill', 0, '32.80408', '-84.49845'), ('Po Biddy Crossroads', 0, '32.68998', '-84.47214'), ('Prattsburg', 0, '32.71233', '-84.35746'), ('Talbotton', 0, '32.67757', '-84.54012'), ('Woodland', 0, '32.78752', '-84.56113')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC265': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alexander Stephens Park', 0, '33.56715', '-82.89640'), ('Carters Grove', 0, '33.69334', '-82.94383'), ('Crawfordville', 0, '33.55415', '-82.89556'), ('Lyneville', 0, '33.63684', '-82.93069'), ('Raytown', 0, '33.56979', '-82.75165'), ('Robinson', 0, '33.58262', '-82.98778'), ('Sandy Cross', 0, '33.61042', '-82.83267'), ('Sharon', 0, '33.55993', '-82.79508')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC267': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Altamaha', 2235, '31.96140', '-82.20750'), ('Cobbtown', 311, '32.28030', '-82.13890'), ('Collins', 528, '32.18110', '-82.10920'), ('Daniels', 130, '32.08110', '-81.98030'), ('Five Points', 3641, '31.92190', '-82.03420'), ('Glennville', 3641, '31.93640', '-81.92860'), ('Hughland', 2235, '32.04500', '-82.05500'), ('Lynn', 3641, '31.97250', '-81.96190'), ('Manassas', 100, '32.16030', '-82.01970'), ('Mendes', 3641, '31.99860', '-81.97420'), ('Midway', 3641, '32.03140', '-81.89360'), ('Reidsville', 2235, '32.08670', '-82.11810'), ('Tison', 3641, '31.93830', '-82.02080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAC269': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Butler', 0, '32.55685', '-84.23855'), ('Carsonville', 0, '32.71287', '-84.28933'), ('Charing', 0, '32.46210', '-84.36160'), ('Fickling Mill', 0, '32.65378', '-84.17786'), ('Howard', 0, '32.59595', '-84.38418'), ('Mauk', 0, '32.50098', '-84.42001'), ('Potterville', 0, '32.51562', '-84.11845'), ('Reynolds', 0, '32.55908', '-84.09544'), ('Rupert', 0, '32.44017', '-84.27804'), ('Wesley Church', 0, '32.65903', '-84.33028')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC271': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('China Hill', 0, '31.85267', '-83.08433'), ('Helena', 0, '32.07410', '-82.91431'), ('Horse Creek Wma', 0, '31.81280', '-82.86827'), ('Jacksonville', 0, '31.81256', '-82.97901'), ('Lumber City', 0, '31.93128', '-82.68173'), ('McRae', 0, '32.06794', '-82.90029'), ('Milan', 0, '32.01876', '-83.06130'), ('Scotland', 0, '32.04741', '-82.82199'), ('Temperance', 0, '31.88912', '-83.14588'), ('Towns', 0, '32.00600', '-82.75360'), ('Workmore', 0, '31.93572', '-82.93895')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC273': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bridges Crossroad', 393, '31.76460', '-84.35380'), ('Bronwood', 513, '31.83080', '-84.36400'), ('Chambliss', 0, '31.91918', '-84.54393'), ('Chickasawhatchee', 393, '31.70000', '-84.37460'), ('Clarks Mill', 5058, '31.64280', '-84.46660'), ('Dawson', 5058, '31.77170', '-84.44400'), ('Dawson Municipal A/P', 5058, '31.74349', '-84.42042'), ('Doverel', 5058, '31.70110', '-84.52220'), ('Graves', 5058, '31.76988', '-84.52083'), ('Herod', 5058, '31.69860', '-84.44190'), ('Oakville', 156, '31.85140', '-84.46430'), ('Olivers Mill', 513, '31.87080', '-84.33650'), ('Parrott', 156, '31.89390', '-84.51120'), ('Pleasant Hill', 513, '31.87670', '-84.40390'), ('Sasser', 393, '31.71910', '-84.34790'), ('Yeomans', 5058, '31.83420', '-84.46730')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAC275': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Boston', 1417, '30.79170', '-83.79080'), ('Chastain', 0, '31.03346', '-83.93153'), ('Coolidge', 552, '31.01050', '-83.86670'), ('Dawesville', 0, '30.92171', '-84.01383'), ('Dillon', 18162, '30.89800', '-83.89360'), ('Eason', 1417, '30.80920', '-83.84960'), ('Enon', 0, '31.01308', '-83.80165'), ('Everett', 0, '30.70425', '-83.80467'), ('Five Points', 444, '30.87700', '-83.79870'), ('Hollis', 0, '30.92290', '-83.73985'), ('Merrillville', 552, '30.94900', '-83.88008'), ('Metcalf', 18162, '30.70100', '-83.98890'), ('Newark', 0, '30.82582', '-83.89377'), ('Ochlocknee', 605, '30.97520', '-84.05080'), ('Pasco', 18162, '30.91432', '-83.98188'), ('Patten', 0, '30.91718', '-83.81600'), ('Quality', 0, '31.04328', '-84.07574'), ('Thomasville', 18162, '30.83910', '-83.97890'), ('Thomasville Municipal A/P', 552, '30.90030', '-83.88110')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC277': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brookfield', 869, '31.41780', '-83.39110'), ('Chula', 15060, '31.54940', '-83.54750'), ('Eldorado', 2074, '31.35165', '-83.48437'), ('Excelsior', 1340, '31.40310', '-83.60830'), ('Fender', 0, '31.36418', '-83.48754'), ('Harding', 15060, '31.52630', '-83.42930'), ('Hillsdale', 716, '31.46630', '-83.59920'), ('Omega', 1340, '31.34061', '-83.59387'), ('Phillipsburg', 887, '31.43564', '-83.52281'), ('Sunsweet', 15060, '31.56820', '-83.56590'), ('Tift Airport', 2074, '31.42770', '-83.49080'), ('Tifton', 15060, '31.45155', '-83.50829'), ('Ty Ty', 716, '31.47200', '-83.65040'), ('Unionville', 2074, '31.43745', '-83.50458'), ('Vanceville', 2074, '31.43160', '-83.44090')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC279': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cedar Crossing', 0, '32.02260', '-82.40759'), ('Center', 0, '32.12824', '-82.39696'), ('English Eddy', 0, '31.96949', '-82.35650'), ('Grays Landing', 0, '31.96850', '-82.42960'), ('Johnson Corner', 0, '32.06525', '-82.30112'), ('Lyons', 0, '32.20361', '-82.32164'), ('McNatt Falls', 0, '31.97399', '-82.47709'), ('New Branch', 0, '32.08240', '-82.25156'), ('Normantown', 0, '32.30644', '-82.37094'), ('Ohoopee', 0, '32.18006', '-82.22019'), ('Ponderosa', 0, '32.19255', '-82.25489'), ('Rock Springs', 0, '32.07704', '-82.41081'), ('Santa Claus', 0, '32.17126', '-82.33255'), ('South Thompson', 0, '32.10813', '-82.37136'), ('Toombs Central', 0, '32.04772', '-82.34777'), ('Vidalia', 0, '32.21647', '-82.41064')], 'partOfState': 'southeast', 'wfo': 'FFC'}, +'GAC281': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alexanders Mill', 0, '34.97398', '-83.88191'), ('Blue Mountain Shelter', 0, '34.81711', '-83.76681'), ('Brasstown Bald', 0, '34.87424', '-83.81090'), ('Gumlog', 0, '34.96704', '-83.93629'), ('Hiawassee', 0, '34.94881', '-83.75643'), ('Macedonia', 0, '34.91152', '-83.72702'), ('Mountain Scene', 0, '34.85730', '-83.72228'), ('Plum Orchard Gap Shelter', 0, '34.94604', '-83.58830'), ('Tate City', 0, '34.97373', '-83.55460'), ('Titus', 0, '34.94773', '-83.63125'), ('Young Harris', 0, '34.93321', '-83.84704')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC283': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barnhill', 0, '32.32688', '-82.66919'), ('Blackville', 0, '32.48224', '-82.59890'), ('Five Points', 0, '32.42355', '-82.46550'), ('Gillis Springs', 0, '32.45927', '-82.49024'), ('Lothair', 0, '32.35537', '-82.65535'), ('Orianna', 0, '32.47242', '-82.64469'), ('Orland', 0, '32.43500', '-82.67550'), ('Soperton', 0, '32.37751', '-82.59160'), ('Zaidee', 0, '32.37434', '-82.52893')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC285': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abbottsford', 0, '33.04628', '-85.18156'), ('Baughs Crossroads', 0, '32.91627', '-85.02025'), ('Big Springs', 0, '32.99541', '-84.90365'), ('Cannonville', 0, '32.96581', '-85.10606'), ('Harrisonville', 0, '33.17600', '-84.98854'), ('Hillcrest', 0, '33.12956', '-85.04021'), ('Hogansville', 0, '33.17302', '-84.91438'), ('Jones Crossroads', 0, '32.86970', '-85.03523'), ('Lagrange', 0, '33.03908', '-85.03162'), ('Long Cane', 0, '32.94971', '-85.14310'), ('Louise', 0, '33.08124', '-84.93443'), ('Mountville', 0, '33.03867', '-84.88434'), ('Piedmont Heights', 0, '32.99338', '-85.20108'), ('Smiths Crossroad', 0, '32.95506', '-85.01974'), ('State Line Park', 0, '33.02133', '-85.21147'), ('Wares Crossroads', 0, '33.10573', '-85.07518'), ('West Point', 0, '32.87521', '-85.17577')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC287': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amboy', 246, '31.79220', '-83.58840'), ('Ashburn', 4419, '31.70890', '-83.65270'), ('c', 496, '31.61880', '-83.60610'), ('Coverdale', 496, '31.62790', '-83.71930'), ('Dakota', 456, '31.77560', '-83.69330'), ('Five Points', 0, '31.64431', '-83.76012'), ('Hobby', 4419, '31.66140', '-83.74090'), ('Rebecca', 246, '31.80710', '-83.48700'), ('Sibley', 456, '31.79670', '-83.71030'), ('Sycamore', 496, '31.67020', '-83.63510'), ('Turner Co Airport', 496, '31.68808', '-83.63545'), ('Worth', 4419, '31.74960', '-83.67600')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAC289': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bullard', 0, '32.63035', '-83.49725'), ('Danville', 0, '32.60531', '-83.24531'), ('District Path', 0, '32.61260', '-83.37464'), ('Dry Branch', 0, '32.79560', '-83.49769'), ('Fitzpatrick', 0, '32.74850', '-83.43502'), ('Huber', 0, '32.71070', '-83.54197'), ('Jeffersonville', 0, '32.68353', '-83.34119'), ('Marion', 0, '32.66200', '-83.43744'), ('Myricks Mill', 0, '32.78422', '-83.37710'), ('Ripley', 0, '32.72600', '-83.41738'), ('Tarversville', 0, '32.54284', '-83.44094')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC291': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blairsville', 0, '34.87615', '-83.95844'), ('Blood Mountain Shelter', 0, '34.73996', '-83.93754'), ('Gaddistown', 0, '34.70564', '-84.07784'), ('Gooch Mountain Shelter', 0, '34.65320', '-84.03430'), ('Hawk Mountain Shelter', 0, '34.66583', '-84.13643'), ('Ivy Log', 0, '34.96223', '-84.05894'), ('Jones Creek', 0, '34.84495', '-84.10105'), ('Nottely Dam', 0, '34.95799', '-84.08775'), ('Owltown', 0, '34.81406', '-83.93962'), ('Suches', 0, '34.68891', '-84.02222'), ('Track Rock', 0, '34.85971', '-83.87424'), ('Vogel State Park', 0, '34.76645', '-83.92301'), ('Woods Hole Shelter', 0, '34.73713', '-83.95502')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC293': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Atwater', 0, '32.96904', '-84.37063'), ('Crest', 0, '32.93142', '-84.44561'), ('Hannahs Mill', 0, '32.93546', '-84.33989'), ('Logtown', 0, '32.85139', '-84.18727'), ('Redbone Crossroads', 0, '32.86927', '-84.25512'), ('Rowland', 0, '32.85961', '-84.41560'), ('Salem', 0, '32.75151', '-84.19792'), ('Sprewell Bluff State Park', 0, '32.86131', '-84.46632'), ('Sunnyside', 0, '32.89835', '-84.40641'), ('The Rock', 0, '32.96399', '-84.24111'), ('Thomaston', 0, '32.88745', '-84.32658'), ('Yatesville', 0, '32.91400', '-84.14278')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC295': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cedar Grove', 0, '34.71722', '-85.43036'), ('Center Post', 0, '34.60723', '-85.35337'), ('Chattanooga Valley', 0, '34.92467', '-85.34797'), ('Chickamauga', 0, '34.87111', '-85.29084'), ('Cooper Heights', 0, '34.80722', '-85.38930'), ('Fairview', 0, '34.94558', '-85.28445'), ('Lafayette', 0, '34.70524', '-85.28194'), ('Linwood', 0, '34.71278', '-85.28917'), ('Lookout Mountain', 0, '34.97756', '-85.35781'), ('Naomi', 0, '34.69304', '-85.20783'), ('Noble', 0, '34.78381', '-85.25312'), ('Rock Spring', 0, '34.82012', '-85.24090'), ('Rossville', 0, '34.98307', '-85.28612'), ('Suttles Mill', 0, '34.62322', '-85.18119'), ('Villanow', 0, '34.67380', '-85.11462')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC297': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Between', 0, '33.81794', '-83.80750'), ('Bold Springs', 0, '33.90097', '-83.80134'), ('Campton', 0, '33.87084', '-83.71989'), ('Ebenezer', 0, '33.71116', '-83.62225'), ('Good Hope', 0, '33.78500', '-83.60921'), ('Gratis', 0, '33.88155', '-83.66541'), ('Herndonville', 0, '33.71110', '-83.69985'), ('Jersey', 0, '33.71546', '-83.79903'), ('Loganville', 0, '33.83932', '-83.90052'), ('Monroe', 0, '33.79455', '-83.71247'), ('Mount Vernon', 0, '33.83565', '-83.64386'), ('Nicholasville', 0, '33.86620', '-83.75311'), ('Pannell', 0, '33.76836', '-83.67535'), ('Social Circle', 0, '33.65617', '-83.71862'), ('Walnut Grove', 0, '33.74235', '-83.85243'), ('Windsor', 0, '33.88015', '-83.84352'), ('Youth', 0, '33.78530', '-83.85637')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAC299': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bickley', 1008, '31.40540', '-82.60310'), ('Deenwood', 1836, '31.24720', '-82.36600'), ('Dixie Union', 1836, '31.33680', '-82.46390'), ('Manor', 151, '31.10170', '-82.57400'), ('Millwood', 151, '31.26570', '-82.66200'), ('Needham', 15333, '31.15590', '-82.42870'), ('Sunnyside', 1385, '31.23920', '-82.34210'), ('Waresboro', 1836, '31.24740', '-82.47440'), ('Waycross', 15333, '31.21190', '-82.35770')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC301': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barnett', 0, '33.50478', '-82.80788'), ('Beall Springs', 0, '33.31598', '-82.71322'), ('Cadley', 0, '33.53529', '-82.65746'), ('Camak', 0, '33.45303', '-82.64632'), ('Jewell', 0, '33.29634', '-82.77339'), ('Mesena', 0, '33.46047', '-82.59175'), ('Norwood', 0, '33.46223', '-82.70625'), ('Reese', 0, '33.34494', '-82.57969'), ('Shoals', 0, '33.25454', '-82.75531'), ('Warrenton', 0, '33.40698', '-82.66208')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC303': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Davisboro', 0, '32.97908', '-82.60825'), ('Deepstep', 0, '33.01791', '-82.96879'), ('Downs', 0, '33.06715', '-82.67354'), ('Hamburg State Park', 0, '33.20942', '-82.78877'), ('Harrison', 0, '32.82620', '-82.72576'), ('Hebron', 0, '32.96652', '-83.00020'), ('Oconee', 0, '32.85493', '-82.96083'), ('Pringle', 0, '32.79977', '-82.63395'), ('Riddleville', 0, '32.90688', '-82.66611'), ('Sandersville', 0, '32.98144', '-82.81104'), ('Tennille', 0, '32.93732', '-82.81088'), ('Warthen', 0, '33.10241', '-82.80432')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC305': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Broadhurst', 702, '31.47400', '-81.91760'), ('Doctortown', 9279, '31.65060', '-81.83000'), ('Gardi', 9279, '31.53540', '-81.79960'), ('Jesup', 9279, '31.59860', '-81.88940'), ('Mount Pleasant', 1719, '31.43460', '-81.67910'), ('Odum', 414, '31.66530', '-82.02640'), ('Screven', 702, '31.48380', '-82.01710')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAC307': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Centerpoint', 0, '31.98532', '-84.53097'), ('Dumas', 0, '32.04342', '-84.49026'), ('Kimbrough', 0, '32.00466', '-84.64925'), ('Leveretts', 0, '31.94286', '-84.57078'), ('Preston', 0, '32.06586', '-84.53670'), ('Seminole', 0, '32.16929', '-84.60732'), ('Weston', 0, '31.97609', '-84.61503')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAC309': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alamo', 0, '32.14748', '-82.77836'), ('Glenwood', 0, '32.18000', '-82.67221'), ('Jordan', 0, '32.03484', '-82.66861'), ('Landsburg', 0, '32.23466', '-82.69312'), ('Little Ocmulgee State Park', 0, '32.09451', '-82.89007'), ('Spring Hill', 0, '32.01311', '-82.72559')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC311': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Anna Ruby Falls', 0, '34.75743', '-83.71037'), ('Camp Coleman Lake', 0, '34.66366', '-83.86322'), ('Cleveland', 0, '34.59713', '-83.76326'), ('Helen', 0, '34.70112', '-83.72977'), ('Leaf', 0, '34.57478', '-83.66079'), ('Low Gap Shelter', 0, '34.77617', '-83.82465'), ('Mossy Creek', 0, '34.54344', '-83.68769'), ('Qualatchee Lake', 0, '34.65110', '-83.80157'), ('Robertstown', 0, '34.71252', '-83.74206'), ('Sautee', 0, '34.68450', '-83.67936'), ('Smithgall Woods Conservation Are', 0, '34.68911', '-83.76629'), ('Unicoi State Park', 0, '34.72293', '-83.72311'), ('Whitley Gap Shelter', 0, '34.71239', '-83.83438')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAC313': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Beaverdale', 0, '34.92033', '-84.84508'), ('Cohutta', 0, '34.95934', '-84.95324'), ('Dalton', 0, '34.76974', '-84.97030'), ('Dawnville', 0, '34.81903', '-84.87920'), ('Mill Creek', 0, '34.73257', '-85.04205'), ('Rocky Face', 0, '34.80478', '-85.02631'), ('Tilton', 0, '34.66546', '-84.94010'), ('Tunnel Hill', 0, '34.84462', '-85.04361'), ('Varnell', 0, '34.90080', '-84.97398')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAC315': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abbeville', 0, '31.99233', '-83.30691'), ('Antioch Church', 0, '31.92058', '-83.35656'), ('Browning', 0, '31.92183', '-83.26244'), ('Cedar Creek', 0, '32.08882', '-83.38962'), ('Double Run', 0, '31.85850', '-83.55848'), ('Owensboro', 0, '31.87756', '-83.42790'), ('Pineview', 0, '32.11016', '-83.50107'), ('Pitts', 0, '31.94476', '-83.54173'), ('Pleasant View', 0, '32.03589', '-83.59748'), ('Pope City', 0, '32.05974', '-83.50366'), ('Rochelle', 0, '31.95020', '-83.45620'), ('Seville', 0, '31.96100', '-83.60140')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC317': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aonia', 0, '33.67582', '-82.62287'), ('Celeste', 0, '33.78322', '-82.84500'), ('Centerville', 0, '33.80125', '-82.92288'), ('Danburg', 0, '33.86801', '-82.65203'), ('Delhi', 0, '33.91365', '-82.67437'), ('Ficklin', 0, '33.63809', '-82.77718'), ('Floral Hill', 0, '33.83401', '-82.62497'), ('Holliday Park', 0, '33.67352', '-82.52377'), ('Jacksons Crossroads', 0, '33.89023', '-82.84514'), ('Lundberg', 0, '33.65408', '-82.73010'), ('Mallorysville', 0, '33.89600', '-82.77717'), ('Metasville', 0, '33.76536', '-82.60404'), ('Newtown', 0, '33.81195', '-82.81089'), ('Norman', 0, '33.94164', '-82.76828'), ('Rayle', 0, '33.78965', '-82.89996'), ('Rocky Creek Fire Dept.', 0, '33.64916', '-82.67748'), ('Tignall', 0, '33.86752', '-82.74136'), ('Tyrone', 0, '33.67237', '-82.86133'), ('Washington', 0, '33.73692', '-82.73926')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAC319': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Allentown', 0, '32.59288', '-83.22564'), ('Gordon', 0, '32.88212', '-83.33278'), ('Irwinton', 0, '32.81162', '-83.17436'), ('Ivey', 0, '32.90708', '-83.29175'), ('McIntyre', 0, '32.84618', '-83.19220'), ('Nicklesville', 0, '32.68988', '-83.09480'), ('Toomsboro', 0, '32.82667', '-83.07988')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAC321': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alfords', 5990, '31.46090', '-83.92390'), ('Anderson City', 828, '31.37080', '-83.85470'), ('Bridgeboro', 828, '31.40090', '-83.97490'), ('Crestwood', 0, '31.47442', '-83.96852'), ('Doles', 430, '31.70302', '-83.88598'), ('Gammage', 5990, '31.54050', '-83.87650'), ('Gordy', 5990, '31.47980', '-83.88010'), ('Isabella', 5990, '31.56800', '-83.85390'), ('Liberty Hill', 828, '31.39970', '-83.93990'), ('Livingston', 828, '31.41480', '-83.94340'), ('Minton', 828, '31.35390', '-83.81890'), ('Oakfield', 430, '31.77630', '-83.97070'), ('Parkerville', 828, '31.43910', '-83.93080'), ('Poulan', 946, '31.51887', '-83.78528'), ('Powelltown', 946, '31.40820', '-83.78470'), ('Pritchetts', 828, '31.36350', '-83.95590'), ('Red Rock', 5990, '31.58120', '-83.93640'), ('Scooterville', 716, '31.38060', '-83.69010'), ('Shingler', 946, '31.58011', '-83.78681'), ('Sumner', 309, '31.50874', '-83.74173'), ('Sylvester', 5990, '31.52860', '-83.83650'), ('Sylvester Airport', 5990, '31.55620', '-83.89436'), ('Tempy', 946, '31.44730', '-83.81820'), ('Terrell', 309, '31.61660', '-83.74520'), ('Warwick', 430, '31.82980', '-83.92040')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GUC010': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('Agana Heights', 3732, '13.46270', '144.74390'), ('Agat', 3988, '13.38240', '144.65780'), ('Andersen AFB', 3506, '13.56270', '144.92710'), ('Apra Harbor', 3347, '13.42660', '144.64720'), ('Asan', 1002, '13.46710', '144.71530'), ('Barrigada', 4417, '13.46160', '144.79470'), ('Barrigada Heights', 1105, '13.48770', '144.82340'), ('Chalan Pago', 2666, '13.43630', '144.77040'), ('Dededo', 3181, '13.51700', '144.83620'), ('Finegayan Station', 1696, '13.56880', '144.83530'), ('Hagatna', 1122, '13.47510', '144.74840'), ('Inarajan', 686, '13.27610', '144.73760'), ('Latte Heights', 1437, '13.48830', '144.84090'), ('Maina', 928, '13.45530', '144.72950'), ('Maite', 949, '13.47570', '144.76210'), ('Mangilao', 7794, '13.44160', '144.80170'), ('Marbo Annex', 1351, '13.50660', '144.86520'), ('Merizo', 1587, '13.26780', '144.67030'), ('Mongmong', 3307, '13.47060', '144.76520'), ('Nimitz Hill Annex', 44, '13.45920', '144.72480'), ('Ordot', 3257, '13.44670', '144.77440'), ('Piti', 706, '13.46470', '144.69540'), ('Santa Rita', 1205, '13.38730', '144.66930'), ('Santa Rosa', 542, '13.39710', '144.67120'), ('Sinajana', 2101, '13.45960', '144.75260'), ('Talofofo', 2340, '13.35560', '144.75340'), ('Tamuning', 10833, '13.49360', '144.77670'), ('Tiyan', 20, '13.47990', '144.79140'), ('Toto', 2044, '13.46550', '144.77720'), ('Umatac', 564, '13.29670', '144.66200'), ('Yigo', 6391, '13.53800', '144.89850'), ('Yona', 2332, '13.41430', '144.77310')], 'partOfState': '', 'wfo': 'GUM'}, +'GUC085': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUC100': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('Sinapalu', 0, '14.16670', '145.23330')], 'partOfState': '', 'wfo': 'GUM'}, +'GUC110': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('Capital Hill', 1496, '15.20010', '145.75180'), ('Chalan Kanoa', 3108, '15.14620', '145.70410'), ('Dandan', 2718, '15.13450', '145.73710'), ('Garapan', 3588, '15.20610', '145.71790'), ('Gualo Rai', 2354, '15.19090', '145.72260'), ('Kagman', 3026, '15.16670', '145.77860'), ('Koblerville', 3543, '15.12050', '145.70640'), ('Navy Hill', 1001, '15.20940', '145.73370'), ('San Antonio', 4741, '15.13330', '145.69910'), ('San Jose (Saipan)', 839, '15.16690', '145.70860'), ('San Roque', 911, '15.24740', '145.77200'), ('San Vicente', 3494, '15.15160', '145.73780'), ('Susupe', 2083, '15.15640', '145.70570'), ('Tanapag', 3318, '15.23890', '145.75380')], 'partOfState': '', 'wfo': 'GUM'}, +'GUC120': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('San Jose (Tinian)', 1361, '14.96870', '145.61970')], 'partOfState': '', 'wfo': 'GUM'}, +'HIC001': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Captain Cook', 3206, '19.49610', '-155.92100'), ('Glenwood', 2799, '19.49080', '-155.15390'), ('Hakalau', 541, '19.89950', '-155.12850'), ('Hawaiian Beaches', 3709, '19.54300', '-154.91570'), ('Hawaiian Ocean View Estates', 2178, '19.08900', '-155.78060'), ('Hawaiian Paradise Park', 3389, '19.59330', '-154.97310'), ('Hawi', 938, '20.24280', '-155.83420'), ('Hilo', 40759, '19.69620', '-155.08750'), ('Holualoa', 6107, '19.62750', '-155.95110'), ('Honaunau', 2400, '19.45490', '-155.87960'), ('Honokaa', 2186, '20.07710', '-155.46740'), ('Honomu', 541, '19.87270', '-155.11490'), ('Kailua-Kona', 6107, '19.64230', '-155.99390'), ('Kamuela', 7028, '20.01660', '-155.63660'), ('Kapoho', 3709, '19.50510', '-154.84880'), ('Kawa Flats', 10, '19.12470', '-155.52580'), ('Kawaihae', 429, '20.04150', '-155.83070'), ('Keaau', 1584, '19.61920', '-155.03970'), ('Keahole Point', 10, '19.72810', '-156.06070'), ('Kealakekua', 1645, '19.52020', '-155.92270'), ('Keauhou', 1990, '19.56550', '-155.96460'), ('Kona Village Resort', 4490, '19.83390', '-155.98760'), ('Laupahoehoe', 473, '19.97850', '-155.24010'), ('Mahukona', 938, '20.18710', '-155.90260'), ('Mauna Kea Summit', 10, '19.82350', '-155.47080'), ('Milolii', 2178, '19.18940', '-155.90880'), ('Mountain View', 2799, '19.52070', '-155.14920'), ('Naalehu', 1027, '19.07720', '-155.57530'), ('Ookala', 473, '20.01660', '-155.28090'), ('Paauilo', 620, '20.04340', '-155.37170'), ('Pahala', 1520, '19.20330', '-155.48240'), ('Pahoa', 1027, '19.49870', '-154.94890'), ('Papaikou', 1634, '19.79400', '-155.09650'), ('Pepeekeo', 1697, '19.83470', '-155.10880'), ('Pohakuloa Camp', 100, '19.75760', '-155.53760'), ('Puako', 429, '19.97380', '-155.84390'), ('Puuanahulu', 4806, '19.81770', '-155.84630'), ('Saddle Road Junction', 7028, '19.93850', '-155.68960'), ('Upolu Airport', 938, '20.26780', '-155.86110'), ('Volcano', 2231, '19.43180', '-155.23790'), ('Waikii', 7028, '19.87760', '-155.66390'), ('Waikoloa Beach Resort', 429, '19.91690', '-155.88950'), ('Waikoloa Village', 4806, '19.93930', '-155.79120'), ('Waipio Valley', 316, '20.12550', '-155.57070'), ('Wood Valley', 200, '19.26930', '-155.47090')], 'partOfState': '', 'wfo': 'HFO'}, +'HIC003': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Ahuimanu', 8387, '21.44120', '-157.83650'), ('Aiea', 9019, '21.38840', '-157.92780'), ('Aina Haina', 371657, '21.28870', '-157.75150'), ('Ala Moana Beach Park', 371657, '21.29230', '-157.85040'), ('Dillingham Field', 10, '21.57960', '-158.20710'), ('Ewa', 3780, '21.34540', '-158.04090'), ('Ewa Beach', 14650, '21.31620', '-158.01180'), ('Fort Shafter', 371657, '21.35360', '-157.87420'), ('Halawa', 13408, '21.37940', '-157.92160'), ('Haleiwa', 2442, '21.59550', '-158.10880'), ('Hauula', 3479, '21.59060', '-157.92330'), ('Hawaii Kai', 4271, '21.28170', '-157.70250'), ('Heeia', 5010, '21.42800', '-157.81720'), ('Honolulu', 371657, '21.31000', '-157.86090'), ('Iroquois Point', 4188, '21.32530', '-157.98130'), ('Iwilei', 371657, '21.31980', '-157.87300'), ('Kaaawa', 1324, '21.55740', '-157.85720'), ('Kahala', 371657, '21.27280', '-157.78460'), ('Kahaluu', 3068, '21.46200', '-157.83480'), ('Kahuku', 2097, '21.68220', '-157.94630'), ('Kailua', 9870, '21.40160', '-157.73850'), ('Kaimuki', 371657, '21.28130', '-157.80920'), ('Kalihi', 371657, '21.32780', '-157.87880'), ('Kaneohe', 35448, '21.41110', '-157.79250'), ('Kaneohe Marine Base', 11662, '21.45010', '-157.75160'), ('Kapolei', 20000, '21.33500', '-158.06670'), ('Kuliouou', 4271, '21.29420', '-157.72710'), ('Kunia', 50000, '21.39170', '-158.03290'), ('Laie', 5577, '21.64910', '-157.92550'), ('Maili', 6059, '21.41870', '-158.18040'), ('Makaha', 7990, '21.46830', '-158.21510'), ('Makaha Valley', 1012, '21.48240', '-158.20380'), ('Makakilo', 13156, '21.35860', '-158.08840'), ('Makiki', 371657, '21.30980', '-157.83770'), ('Makua Valley', 10, '21.53010', '-158.22470'), ('Manoa', 371657, '21.31880', '-157.81010'), ('Maunawili', 4869, '21.37240', '-157.76580'), ('Mililani Town', 28608, '21.44900', '-158.01820'), ('Moilili', 371657, '21.29620', '-157.82680'), ('Mokuleia', 1839, '21.58220', '-158.17880'), ('Nanakuli', 9575, '21.39190', '-158.15650'), ('Niu Valley', 3664, '21.29230', '-157.73930'), ('Palolo', 30000, '21.29630', '-157.79680'), ('Pearl City', 30976, '21.40470', '-157.96910'), ('Punaluu', 672, '21.59260', '-157.89660'), ('Pupukea', 4111, '21.66430', '-158.05350'), ('Salt Lake', 30000, '21.34950', '-157.91100'), ('Schofield Barracks', 19597, '21.49630', '-158.06460'), ('Turtle Bay', 300, '21.70350', '-158.00290'), ('Wahiawa', 17386, '21.50290', '-158.02210'), ('Waiahole', 400, '21.48410', '-157.84740'), ('Waialae', 371657, '21.27820', '-157.79420'), ('Waialua', 3761, '21.57760', '-158.12850'), ('Waianae', 8758, '21.44940', '-158.18400'), ('Waikane', 717, '21.49540', '-157.85190'), ('Waikele', 67000, '21.40220', '-158.00670'), ('Waikiki', 371657, '21.28230', '-157.83010'), ('Waimalu', 29371, '21.40470', '-157.94320'), ('Waimanalo', 3664, '21.34760', '-157.72500'), ('Waipahu', 33108, '21.39060', '-158.01270'), ('Waipio', 11812, '21.41830', '-158.00060'), ('Whitmore Village', 4057, '21.51420', '-158.02920')], 'partOfState': '', 'wfo': 'HFO'}, +'HIC007': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Anahola', 1932, '22.14720', '-159.31780'), ('Barking Sands', 100, '22.02720', '-159.78480'), ('Haena', 50, '22.22000', '-159.57000'), ('Hanalei', 478, '22.20900', '-159.50170'), ('Hanamaulu', 3272, '21.99820', '-159.35240'), ('Hanapepe', 2153, '21.91630', '-159.59040'), ('Kalaheo', 3913, '21.92080', '-159.52670'), ('Kalalau Valley', 20, '22.17360', '-159.64720'), ('Kalihiwai', 717, '22.21940', '-159.42150'), ('Kapaa', 9472, '22.09730', '-159.35400'), ('Kaumakani', 607, '21.92210', '-159.62810'), ('Kawaihau', 700, '22.10030', '-159.33920'), ('Kekaha', 3175, '21.97230', '-159.71780'), ('Kilauea', 2092, '22.21110', '-159.40960'), ('Kipu Falls', 20, '21.93890', '-159.40280'), ('Kokee State Park', 3175, '22.13320', '-159.65970'), ('Koloa', 1942, '21.90680', '-159.46430'), ('Lawai', 1984, '21.92490', '-159.50470'), ('Lihue', 5674, '21.97510', '-159.35440'), ('Mana', 3175, '22.03860', '-159.77170'), ('Moloaa', 300, '22.20000', '-159.34000'), ('Na Pali State Park', 10, '22.20830', '-159.59860'), ('Omao', 1221, '21.92510', '-159.48620'), ('Pakala Village', 478, '21.94500', '-159.64870'), ('Poipu', 1075, '21.88140', '-159.46240'), ('Polihale', 10, '22.09060', '-159.75470'), ('Princeville', 1698, '22.22350', '-159.48540'), ('Puhi', 1186, '21.96880', '-159.39960'), ('Wailua', 2083, '22.05790', '-159.34070'), ('Waimea', 478, '21.96070', '-159.67520'), ('Wainiha', 200, '22.21380', '-159.54510')], 'partOfState': '', 'wfo': 'HFO'}, +'HIC009': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Haiku', 6578, '20.91830', '-156.32360'), ('Halawa Valley', 467, '21.16010', '-156.74170'), ('Haliimaile', 895, '20.87630', '-156.34830'), ('Hamoa', 709, '20.72360', '-155.98840'), ('Hana', 709, '20.77000', '-155.99420'), ('Honokohau', 467, '21.02090', '-156.61180'), ('Honokowai', 1375, '20.95440', '-156.68990'), ('Honolua', 467, '21.01480', '-156.63930'), ('Hookipa Beach Park', 2499, '20.93640', '-156.36020'), ('Hoolehua', 1936, '21.17040', '-157.07130'), ('Huelo', 6578, '20.90770', '-156.22760'), ('Kaanapali', 1375, '20.93080', '-156.69580'), ('Kahakuloa', 7310, '21.00010', '-156.55400'), ('Kahului', 20146, '20.87380', '-156.45930'), ('Kalaupapa', 1936, '21.19340', '-156.98580'), ('Kamalo', 2726, '21.05070', '-156.87730'), ('Kapalua', 467, '20.99970', '-156.65810'), ('Kaumalapau Harbor', 3164, '20.79030', '-156.99370'), ('Kaunakakai', 2726, '21.08860', '-157.01270'), ('Kaupo', 709, '20.63960', '-156.12520'), ('Kawela', 2726, '21.07220', '-156.96440'), ('Keanae', 6578, '20.86140', '-156.15110'), ('Keokea', 5671, '20.70860', '-156.36010'), ('Kepuhi', 230, '21.19030', '-157.24980'), ('Kihei', 11107, '20.76380', '-156.45320'), ('Kipahulu', 709, '20.65690', '-156.05790'), ('Koele', 3164, '20.83920', '-156.92100'), ('Kualapuu', 1936, '21.16000', '-157.05840'), ('Kula', 7800, '20.75580', '-156.32700'), ('Lahaina', 9118, '20.89130', '-156.67430'), ('Lanai Airport', 3164, '20.79330', '-156.95250'), ('Lanai City', 3164, '20.83270', '-156.92650'), ('Launiupoko', 9118, '20.85700', '-156.65040'), ('Maalaea', 454, '20.79670', '-156.51340'), ('Makawao', 6327, '20.85750', '-156.32500'), ('Makena', 5671, '20.65780', '-156.44490'), ('Maunaloa', 230, '21.13650', '-157.21390'), ('Molokai Airport', 1936, '21.15640', '-157.09650'), ('Nahiku', 709, '20.82800', '-156.09510'), ('Napili', 467, '20.98930', '-156.66730'), ('Nuu', 709, '20.63190', '-156.18650'), ('Olowalu', 9118, '20.81460', '-156.62480'), ('Paia', 2499, '20.90470', '-156.37490'), ('Pauwela', 6578, '20.93380', '-156.32030'), ('Pukalani', 7380, '20.83690', '-156.34100'), ('Pukoo', 467, '21.07640', '-156.79580'), ('Puunene', 20146, '20.86410', '-156.45350'), ('Shipwreck Beach', 3164, '20.91980', '-156.91030'), ('Spreckelsville', 2499, '20.90820', '-156.41510'), ('Ukumehame Beach Park', 1115, '20.79870', '-156.57790'), ('Ulupalakua', 5671, '20.64910', '-156.40000'), ('Waiehu', 7310, '20.92140', '-156.49740'), ('Waihee', 7310, '20.93350', '-156.51380'), ('Waikapu', 1115, '20.85400', '-156.50730'), ('Wailea', 5671, '20.69100', '-156.44640'), ('Wailuku', 12296, '20.88850', '-156.50680')], 'partOfState': '', 'wfo': 'HFO'}, +'IAC001': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Adair', 839, '41.50010', '-94.64360'), ('Bridgewater', 178, '41.24690', '-94.66740'), ('Fontanelle', 692, '41.29000', '-94.56070'), ('Greenfield', 2129, '41.30550', '-94.45850'), ('Orient', 402, '41.20280', '-94.41790'), ('Stuart', 1712, '41.50240', '-94.31830')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAC003': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Carbon', 28, '41.04930', '-94.82350'), ('Corning', 1783, '40.99390', '-94.73930'), ('Nodaway', 132, '40.93650', '-94.89520'), ('Prescott', 266, '41.02340', '-94.61240')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAC005': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Churchtown', 1012, '43.34832', '-91.34956'), ('Dalby', 145, '43.26218', '-91.28540'), ('Dorchester', 221, '43.46746', '-91.51635'), ('Elon', 145, '43.26584', '-91.33306'), ('Hanover', 4131, '43.36298', '-91.53468'), ('Hardin', 249, '43.08255', '-91.49985'), ('Harpers Ferry', 330, '43.20100', '-91.15120'), ('Lansing', 1012, '43.36170', '-91.22580'), ('Ludlow', 4131, '43.23102', '-91.58600'), ('Maud', 145, '43.23102', '-91.38438'), ('New Albin', 527, '43.49700', '-91.28850'), ('Postville', 2273, '43.08410', '-91.56930'), ('Quandahl', 1153, '43.44913', '-91.60616'), ('Rossville', 145, '43.18153', '-91.38438'), ('Village Creek', 1012, '43.31533', '-91.25241'), ('Volney', 1550, '43.13387', '-91.38255'), ('Waterville', 145, '43.20810', '-91.29480'), ('Waukon', 4131, '43.26980', '-91.47630'), ('Waukon Jct', 330, '43.14670', '-91.18276')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAC007': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Centerville', 5924, '40.73080', '-92.87430'), ('Cincinnati', 428, '40.63180', '-92.92180'), ('Exline', 191, '40.64880', '-92.84170'), ('Moravia', 713, '40.89210', '-92.81830'), ('Moulton', 658, '40.68530', '-92.67900'), ('Mystic', 588, '40.77910', '-92.94370'), ('Numa', 109, '40.68540', '-92.98060'), ('Plano', 58, '40.75530', '-93.04610'), ('Rathbun', 88, '40.80210', '-92.88790'), ('Udell', 58, '40.78020', '-92.74250'), ('Unionville', 127, '40.81900', '-92.69680')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC009': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Audubon', 2382, '41.71810', '-94.92980'), ('Brayton', 145, '41.54260', '-94.92560'), ('Exira', 810, '41.59160', '-94.87930'), ('Gray', 82, '41.84130', '-94.98420'), ('Kimballton', 342, '41.62830', '-95.07420')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAC011': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Atkins', 977, '41.99730', '-91.85930'), ('Belle Plaine', 2878, '41.89670', '-92.27410'), ('Blairstown', 682, '41.90580', '-92.08180'), ('Cheney', 1019, '42.25000', '-91.93330'), ('Garrison', 413, '42.14360', '-92.14280'), ('Keystone', 687, '41.99980', '-92.19860'), ('Luzerne', 105, '41.90620', '-92.18020'), ('Mount Auburn', 160, '42.25680', '-92.09330'), ('Newhall', 886, '41.99300', '-91.96670'), ('Norway', 601, '41.90280', '-91.92190'), ('Shellsburg', 938, '42.09320', '-91.86940'), ('Spencers Grove', 1019, '42.28330', '-91.86670'), ('Urbana', 1019, '42.22330', '-91.87500'), ('Van Horne', 716, '42.01000', '-92.09010'), ('Vinton', 5102, '42.16420', '-92.02700'), ('Vinton Memorial Airport', 5102, '42.20000', '-92.03330'), ('Walford', 1224, '41.88330', '-91.84000'), ('Watkins', 601, '41.88330', '-91.98330')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC013': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Cedar Falls', 36145, '42.52060', '-92.45280'), ('Dunkerton', 749, '42.56830', '-92.15990'), ('Elk Run Heights', 1052, '42.46710', '-92.24930'), ('Evansdale', 4526, '42.46180', '-92.27560'), ('Gilbertville', 767, '42.41870', '-92.21370'), ('Hudson', 2117, '42.42330', '-92.45470'), ('Jesup Golf Course', 2212, '42.47590', '-92.08330'), ('La Porte City', 2275, '42.31310', '-92.19120'), ('Raymond', 537, '42.46690', '-92.22820'), ('Waterloo', 68747, '42.49160', '-92.35110')], 'partOfState': 'northeast', 'wfo': 'DMX'}, +'IAC015': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaver', 53, '42.03780', '-94.14090'), ('Berkley', 24, '41.94610', '-94.11360'), ('Boone', 12803, '42.05250', '-93.87920'), ('Boxholm', 215, '42.17330', '-94.10630'), ('Fraser', 137, '42.12680', '-93.97370'), ('Luther', 158, '41.96710', '-93.81970'), ('Madrid', 2264, '41.87550', '-93.81970'), ('Ogden', 2023, '42.03940', '-94.02850'), ('Pilot Mound', 214, '42.15910', '-94.01870')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC017': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Denver', 1627, '42.67120', '-92.33410'), ('Frederika', 199, '42.88360', '-92.30590'), ('Janesville', 829, '42.64440', '-92.46390'), ('Oran', 1041, '42.69765', '-92.08454'), ('Plainfield', 438, '42.84390', '-92.53550'), ('Readlyn', 786, '42.70340', '-92.22480'), ('Sumner', 2106, '42.84990', '-92.09600'), ('Tripoli', 1310, '42.80980', '-92.25760'), ('Waverly', 8968, '42.72540', '-92.46980')], 'partOfState': 'northeast', 'wfo': 'DMX'}, +'IAC019': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Aurora', 194, '42.61920', '-91.72980'), ('Brandon', 311, '42.31400', '-92.00240'), ('Cedar Rock State Park', 574, '42.40000', '-91.80000'), ('Fairbank', 1041, '42.63890', '-92.05010'), ('Fontana County Park', 950, '42.60000', '-91.91670'), ('Hazleton', 950, '42.61830', '-91.90540'), ('Independence', 6014, '42.46810', '-91.89100'), ('Independence Airport', 6014, '42.45000', '-91.95000'), ('Jesup', 2212, '42.47590', '-92.06690'), ('Lamont', 503, '42.59870', '-91.64080'), ('Lime Creek County', 311, '42.33330', '-91.98330'), ('Littleton', 2212, '42.53330', '-92.01670'), ('Monti', 104, '42.38330', '-91.63330'), ('Otterville', 6014, '42.51670', '-91.95000'), ('Quasqueton', 574, '42.39550', '-91.75640'), ('Rowley', 290, '42.36840', '-91.84480'), ('Stanley', 128, '42.64200', '-91.81170'), ('Three Elms County', 6014, '42.45000', '-91.86670'), ('Troy Mills Park', 750, '42.31670', '-91.71670'), ('Wapsipinicon Golf Course', 6014, '42.48330', '-91.93330'), ('Winthrop', 772, '42.47330', '-91.73370'), ('Winthrop Golf Course', 104, '42.50000', '-91.65000')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'IAC021': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albert City', 709, '42.78110', '-94.94890'), ('Alta', 1865, '42.67200', '-95.30450'), ('Lakeside', 484, '42.61970', '-95.17390'), ('Linn Grove', 211, '42.89260', '-95.24170'), ('Marathon', 302, '42.86100', '-94.98290'), ('Newell', 887, '42.61060', '-95.00380'), ('Rembrandt', 228, '42.82640', '-95.16570'), ('Sioux Rapids', 720, '42.89190', '-95.14810'), ('Storm Lake', 10076, '42.64500', '-95.19990'), ('Truesdale', 91, '42.72950', '-95.18270')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC023': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Allison', 1006, '42.75250', '-92.79560'), ('Aplington', 1054, '42.58160', '-92.88090'), ('Aredale', 89, '42.83340', '-93.00450'), ('Bristow', 202, '42.77350', '-92.90670'), ('Clarksville', 1441, '42.78020', '-92.66810'), ('Dumont', 676, '42.75160', '-92.97340'), ('Greene', 1099, '42.89680', '-92.80390'), ('New Hartford', 659, '42.56720', '-92.62240'), ('Parkersburg', 1889, '42.57360', '-92.78250'), ('Shell Rock', 1298, '42.71260', '-92.58150')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC025': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Farnhamville', 430, '42.27750', '-94.41500'), ('Jolley', 54, '42.47930', '-94.71790'), ('Knierim', 70, '42.45610', '-94.45630'), ('Lake City', 1787, '42.26770', '-94.73060'), ('Lohrville', 431, '42.26800', '-94.55090'), ('Manson', 1893, '42.52870', '-94.53930'), ('Pomeroy', 710, '42.55350', '-94.67850'), ('Rinard', 72, '42.33950', '-94.48650'), ('Rockwell City', 2264, '42.39840', '-94.63100'), ('Somers', 165, '42.37790', '-94.43080'), ('Yetter', 36, '42.31650', '-94.84360')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAC027': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arcadia', 443, '42.08700', '-95.04350'), ('Breda', 477, '42.18320', '-94.97770'), ('Carroll', 10106, '42.06920', '-94.86470'), ('Coon Rapids', 1305, '41.87250', '-94.67650'), ('Dedham', 280, '41.90870', '-94.82260'), ('Glidden', 1253, '42.05730', '-94.72520'), ('Halbur', 202, '42.00550', '-94.97140'), ('Lanesboro', 152, '42.18360', '-94.69100'), ('Lidderdale', 186, '42.12390', '-94.78420'), ('Manning', 1490, '41.90950', '-95.06430'), ('Ralston', 98, '42.04350', '-94.64500'), ('Templeton', 334, '41.91810', '-94.94230'), ('Willey', 103, '41.97840', '-94.82070')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAC029': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Anita', 1049, '41.44360', '-94.76530'), ('Atlantic', 7257, '41.39820', '-95.01480'), ('Cumberland', 281, '41.27370', '-94.86970'), ('Griswold', 1039, '41.23390', '-95.13890'), ('Lewis', 438, '41.30630', '-95.08420'), ('Marne', 149, '41.44850', '-95.11030'), ('Massena', 414, '41.25130', '-94.76930'), ('Wiota', 149, '41.40060', '-94.88750')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAC031': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bennett', 395, '41.73970', '-90.97430'), ('Buchanan', 3155, '41.76670', '-91.25000'), ('Cedar Bluff', 2188, '41.78330', '-91.31670'), ('Cedar Valley', 2188, '41.73340', '-91.25000'), ('Clarence', 1008, '41.88590', '-91.05810'), ('Durant', 1677, '41.60090', '-90.90900'), ('Lowden', 794, '41.85860', '-90.92310'), ('Mechanicsville', 1173, '41.90490', '-91.25330'), ('Rochester', 283, '41.66670', '-91.16670'), ('Springdale', 2188, '41.66670', '-91.26670'), ('Stanwood', 680, '41.89360', '-91.15000'), ('Sunbury', 1677, '41.66670', '-90.93330'), ('Tipton', 3155, '41.77050', '-91.12890'), ('Tipton Matthews Airport', 3155, '41.77000', '-91.15000'), ('West Branch', 2188, '41.67010', '-91.34920')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC033': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Clear Lake', 8161, '43.13510', '-93.37360'), ('Dougherty', 80, '42.92260', '-93.03630'), ('Mason City', 29172, '43.15130', '-93.19850'), ('Meservey', 252, '42.91510', '-93.47320'), ('Plymouth', 429, '43.24690', '-93.12240'), ('Rock Falls', 170, '43.20720', '-93.08700'), ('Rockwell', 989, '42.97990', '-93.18690'), ('Swaledale', 174, '42.97690', '-93.31530'), ('Thornton', 422, '42.94400', '-93.38760'), ('Ventura', 670, '43.12640', '-93.45980')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC035': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Aurelia', 1062, '42.71300', '-95.43690'), ('Cherokee', 5369, '42.75060', '-95.55250'), ('Cleghorn', 250, '42.81160', '-95.71350'), ('Larrabee', 149, '42.86130', '-95.54490'), ('Marcus', 1139, '42.82410', '-95.80720'), ('Meriden', 184, '42.79420', '-95.63260'), ('Quimby', 368, '42.62920', '-95.64270'), ('Washta', 282, '42.57590', '-95.71920')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC037': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alta Vista', 286, '43.19570', '-92.41710'), ('Bassett', 74, '43.06240', '-92.51570'), ('Boyd', 3692, '43.01493', '-92.26584'), ('Devon', 118, '43.13373', '-92.38281'), ('Fredericksburg', 984, '42.96460', '-92.19830'), ('Ionia', 277, '43.03620', '-92.45760'), ('Lawler', 461, '43.07170', '-92.15380'), ('Little Turkey', 60, '43.13190', '-92.10136'), ('Nashua', 1618, '42.95060', '-92.53910'), ('New Hampton', 3692, '43.05970', '-92.31450'), ('North Washington', 118, '43.11630', '-92.41500'), ('Republic', 277, '42.94731', '-92.40108'), ('Saude', 317, '43.19769', '-92.18360'), ('Williamstown', 199, '42.96559', '-92.33346')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAC039': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Murray', 766, '41.04130', '-93.94840'), ('Osceola', 4659, '41.03130', '-93.77380'), ('Woodburn', 244, '41.01050', '-93.59650')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC041': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Dickens', 202, '43.13340', '-95.02210'), ('Everly', 647, '43.16050', '-95.32160'), ('Fostoria', 230, '43.24160', '-95.15480'), ('Gillett Grove', 55, '43.01540', '-95.03520'), ('Greenville', 93, '43.01720', '-95.14520'), ('Peterson', 372, '42.91850', '-95.34120'), ('Rossie', 58, '43.01320', '-95.18880'), ('Royal', 479, '43.06400', '-95.28320'), ('Spencer', 11317, '43.14590', '-95.15110'), ('Webb', 165, '42.94920', '-95.01200')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC043': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beula', 300, '43.01290', '-91.31840'), ('Clayton', 55, '42.90230', '-91.15000'), ('Clayton Center', 754, '42.88094', '-91.31656'), ('Communia', 26, '42.78196', '-91.36422'), ('Edgewood', 923, '42.64490', '-91.40170'), ('Elkader', 1465, '42.85600', '-91.40280'), ('Elkport', 88, '42.74110', '-91.27540'), ('Farmersburg', 300, '42.95850', '-91.36740'), ('Froelich', 300, '42.99824', '-91.33306'), ('Garber', 103, '42.74390', '-91.26290'), ('Garnavillo', 754, '42.86780', '-91.23640'), ('Giard', 300, '42.99824', '-91.29824'), ('Gunder', 676, '42.96158', '-91.51818'), ('Guttenberg', 1987, '42.78790', '-91.10410'), ('Highland', 676, '42.89743', '-91.60066'), ('Littleport', 26, '42.75310', '-91.36900'), ('Luana', 249, '43.06090', '-91.45500'), ('Marquette', 421, '43.04290', '-91.18400'), ('McGregor', 871, '43.02290', '-91.18070'), ('Mederville', 26, '42.76363', '-91.41921'), ('Millville', 23, '42.70480', '-91.07720'), ('Monona', 1550, '43.05130', '-91.39040'), ('National', 300, '42.94875', '-91.28357'), ('North Buena Vista', 124, '42.68250', '-90.95640'), ('Osborne', 1465, '42.80029', '-91.43570'), ('Osterdock', 50, '42.73250', '-91.15860'), ('St. Olaf', 136, '42.92770', '-91.38710'), ('Strawberry Point', 1386, '42.68300', '-91.53550'), ('Volga', 247, '42.80250', '-91.54290'), ('Watson', 1550, '43.08072', '-91.33489')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAC045': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Andover', 87, '41.97880', '-90.25160'), ('Bryant', 232, '41.96670', '-90.33330'), ('Bulgers Hollow', 3698, '41.93330', '-90.18330'), ('Calamus', 394, '41.82670', '-90.75970'), ('Camanche', 4215, '41.79390', '-90.27500'), ('Charlotte', 421, '41.96190', '-90.46750'), ('Clinton', 27772, '41.84320', '-90.23300'), ('Clinton Municipal Airport', 240, '41.83330', '-90.33330'), ('Delmar', 514, '41.99950', '-90.60500'), ('Dewitt', 5049, '41.82160', '-90.54680'), ('Elvira', 240, '41.86660', '-90.35000'), ('Elwood', 497, '42.00000', '-90.73330'), ('Folletts', 240, '41.75000', '-90.35000'), ('Goose Lake', 232, '41.96820', '-90.38220'), ('Grand Mound', 676, '41.82350', '-90.64890'), ('Lost Nation', 497, '41.96610', '-90.81750'), ('Low Moor', 240, '41.80240', '-90.35430'), ('Lyons', 0, '41.93000', '-90.71100'), ('Malone', 299, '41.81670', '-90.45000'), ('Rock Creek Park', 0, '41.75100', '-90.31960'), ('Sherman Park', 0, '41.77400', '-90.72700'), ('Teeds Grove', 87, '42.01670', '-90.25000'), ('Toronto', 134, '41.90330', '-90.86290'), ('Welton', 159, '41.91190', '-90.59780'), ('Wheatland', 772, '41.83290', '-90.83720')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC047': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arion', 136, '41.94860', '-95.46250'), ('Aspinwall', 58, '41.91140', '-95.13480'), ('Buck Grove', 49, '41.91870', '-95.39700'), ('Charter Oak', 530, '42.06790', '-95.58910'), ('Deloit', 288, '42.09720', '-95.31750'), ('Denison', 7339, '42.01830', '-95.34890'), ('Dow City', 503, '41.92820', '-95.49420'), ('Kiron', 273, '42.19380', '-95.32670'), ('Manilla', 839, '41.88910', '-95.23500'), ('Ricketts', 144, '42.12750', '-95.57420'), ('Schleswig', 833, '42.16190', '-95.43450'), ('Vail', 452, '42.05980', '-95.20060'), ('Westside', 327, '42.07520', '-95.10000')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAC049': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Adel', 3435, '41.61260', '-94.02710'), ('Bouton', 136, '41.85170', '-94.01080'), ('Dallas Center', 1595, '41.68470', '-93.98410'), ('Dawson', 155, '41.84310', '-94.21990'), ('De Soto', 1009, '41.53460', '-94.00850'), ('Dexter', 689, '41.51560', '-94.22690'), ('Granger', 583, '41.76030', '-93.82370'), ('Linden', 226, '41.64300', '-94.27010'), ('Minburn', 391, '41.75790', '-94.02780'), ('Perry', 7633, '41.84210', '-94.09980'), ('Redfield', 833, '41.59010', '-94.19760'), ('Van Meter', 866, '41.53050', '-93.95570'), ('Waukee', 5126, '41.60760', '-93.86240'), ('Woodward', 1200, '41.85630', '-93.92130')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC051': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bloomfield', 2601, '40.74810', '-92.41820'), ('Drakesville', 185, '40.79800', '-92.48090'), ('Floris', 153, '40.86410', '-92.33210'), ('Pulaski', 249, '40.69750', '-92.27410')], 'partOfState': 'southeast', 'wfo': 'DMX'}, +'IAC053': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Davis City', 275, '40.64020', '-93.81190'), ('Decatur City', 199, '40.74230', '-93.83250'), ('Garden Grove', 250, '40.82650', '-93.60750'), ('Grand River', 225, '40.81890', '-93.96250'), ('Lamoni', 2444, '40.62060', '-93.93730'), ('Leon', 1983, '40.74130', '-93.75330'), ('Le Roy', 13, '40.87890', '-93.59220'), ('Pleasanton', 37, '40.58240', '-93.74290'), ('Van Wert', 231, '40.87080', '-93.79190'), ('Weldon', 145, '40.89790', '-93.73510')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC055': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Backbone State Park', 179, '42.61670', '-91.55000'), ('Baileys Ford Park', 458, '42.43330', '-91.40000'), ('Buck Creek', 458, '42.33330', '-91.35000'), ('Coffins Grove Park', 104, '42.50000', '-91.53330'), ('Colesburg', 412, '42.63850', '-91.20090'), ('Delaware', 188, '42.47190', '-91.34010'), ('Delhi', 458, '42.43000', '-91.33150'), ('Dundee', 179, '42.57970', '-91.54690'), ('Earlville', 900, '42.48300', '-91.26970'), ('Fountain Springs Park', 276, '42.61670', '-91.31670'), ('Greeley', 276, '42.58510', '-91.34190'), ('Hopkinton', 681, '42.34360', '-91.24870'), ('Manchester', 5257, '42.48520', '-91.45580'), ('Manchester Airport', 5257, '42.50000', '-91.50000'), ('Masonville', 104, '42.47980', '-91.59180'), ('Oneida', 49, '42.54110', '-91.35290'), ('Petersburg', 900, '42.55000', '-91.21670'), ('Robinson', 745, '42.35000', '-91.58330'), ('Ryan', 410, '42.35260', '-91.48280'), ('Turtle Creek Park', 458, '42.41670', '-91.36670'), ('Twin Bridges Park', 276, '42.63330', '-91.28330')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'IAC057': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaverdale', 3161, '40.85000', '-91.21670'), ('Burlington', 26839, '40.80870', '-91.12290'), ('Burlington Regional Airport', 26839, '40.78330', '-91.13330'), ('Danville', 914, '40.86120', '-91.31400'), ('Dodgeville', 1644, '40.95000', '-91.18330'), ('Garland', 872, '41.06670', '-91.21670'), ('Kingston', 1442, '40.98330', '-91.03330'), ('Kossuth', 1644, '41.01670', '-91.13330'), ('Mediapolis', 1644, '41.00820', '-91.16450'), ('Middletown', 535, '40.82920', '-91.26080'), ('Northfield', 1644, '41.06670', '-91.11670'), ('Pleasant Grove', 914, '40.96670', '-91.28330'), ('Prairie Grove', 535, '40.88330', '-91.25000'), ('Sperry', 1644, '40.95000', '-91.15000'), ('Spring Grove', 26839, '40.74330', '-91.16000'), ('West Burlington', 3161, '40.82350', '-91.17860'), ('Yarmouth', 132, '41.03330', '-91.31670')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC059': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arnolds Park', 1162, '43.36280', '-95.13180'), ('Lake Park', 1023, '43.44840', '-95.32480'), ('Milford', 2474, '43.32700', '-95.15180'), ('Okoboji', 820, '43.39210', '-95.13620'), ('Orleans', 583, '43.44520', '-95.09870'), ('Spirit Lake', 4261, '43.42280', '-95.11140'), ('Superior', 142, '43.43270', '-94.94710'), ('Terril', 404, '43.30850', '-94.96880'), ('Wahpeton', 462, '43.37450', '-95.17450'), ('West Okoboji', 432, '43.34940', '-95.16530')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC061': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Asbury', 2450, '42.51470', '-90.75850'), ('Balltown', 73, '42.63750', '-90.86850'), ('Bankston', 27, '42.50870', '-90.96020'), ('Bernard', 97, '42.31270', '-90.83100'), ('Cascade', 1958, '42.29910', '-91.00990'), ('Center Grove', 57686, '42.48330', '-90.71670'), ('Centralia', 101, '42.47230', '-90.83680'), ('Cottage Hill', 191, '42.58330', '-90.91670'), ('Dubuque', 57686, '42.50450', '-90.69000'), ('Dubuque Regional Airport', 100, '42.40000', '-90.71670'), ('Durango', 24, '42.56160', '-90.77350'), ('Dyersville', 4035, '42.48040', '-91.11830'), ('East Rickardsville', 191, '42.56670', '-90.85000'), ('Edmore', 203, '42.55000', '-90.68330'), ('Epworth', 1428, '42.44680', '-90.93420'), ('Farley', 1334, '42.44390', '-91.00670'), ('Fillmore', 97, '42.31670', '-90.91670'), ('Five Points', 191, '42.55000', '-90.86670'), ('Graf', 73, '42.49470', '-90.86890'), ('Holy Cross', 339, '42.60150', '-90.99630'), ('Key West', 57686, '42.45000', '-90.68330'), ('Lattnerville', 73, '42.48330', '-90.88330'), ('Luxemburg', 246, '42.60300', '-91.07300'), ('Massey', 187, '42.43330', '-90.58330'), ('New Vienna', 400, '42.54780', '-91.11340'), ('Old Balltown', 73, '42.63330', '-90.86670'), ('Peosta', 651, '42.44880', '-90.85070'), ('Rickardsville', 191, '42.58360', '-90.87530'), ('Rockdale', 57686, '42.46670', '-90.68330'), ('Sageville', 203, '42.54880', '-90.70370'), ('Sherrill', 186, '42.60290', '-90.78200'), ('Washington Mills', 97, '42.30000', '-90.78330'), ('Waupeton', 73, '42.66670', '-90.88330'), ('Worthington', 381, '42.39650', '-91.12060'), ('Zwingle', 100, '42.29780', '-90.68690')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'IAC063': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Armstrong', 979, '43.39360', '-94.47900'), ('Dolliver', 77, '43.46490', '-94.61460'), ('Estherville', 6656, '43.39940', '-94.83320'), ('Gruver', 106, '43.39320', '-94.70310'), ('Ringsted', 436, '43.29640', '-94.50660'), ('Wallingford', 210, '43.32020', '-94.79200')], 'partOfState': 'northwest', 'wfo': 'DMX'}, +'IAC065': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albany', 1300, '42.86444', '-91.74912'), ('Alpha', 299, '42.99824', '-92.04972'), ('Arlington', 490, '42.74870', '-91.67040'), ('Brainard', 676, '42.93226', '-91.69964'), ('Clermont', 716, '43.00030', '-91.65330'), ('Donnan', 7, '42.90100', '-91.86930'), ('Eldorado', 178, '43.04956', '-91.84993'), ('Elgin', 676, '42.95600', '-91.63440'), ('Fayette', 1300, '42.84040', '-91.80260'), ('Hawkeye', 489, '42.93800', '-91.95090'), ('Maynard', 500, '42.77420', '-91.87690'), ('Oelwein', 6692, '42.67630', '-91.91390'), ('Randalia', 84, '42.86330', '-91.88620'), ('Richfield', 2106, '42.94692', '-92.06438'), ('St. Lucas', 178, '43.06660', '-91.93390'), ('Wadena', 243, '42.83950', '-91.65800'), ('Waucoma', 299, '43.05530', '-92.03460'), ('Westgate', 234, '42.76850', '-91.99510'), ('West Union', 2549, '42.95870', '-91.81260')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAC067': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Carrville', 7812, '43.01493', '-92.60211'), ('Charles City', 7812, '43.06730', '-92.67500'), ('Colwell', 76, '43.15810', '-92.59150'), ('Floyd', 361, '43.12840', '-92.73940'), ('Floyd Crossing', 361, '43.07890', '-92.75197'), ('Marble Rock', 326, '42.96470', '-92.86760'), ('Nora Springs', 1532, '43.14400', '-93.00870'), ('Oakwood', 326, '43.01493', '-92.78121'), ('Powersville', 1099, '42.93087', '-92.70080'), ('Rockford', 907, '43.05280', '-92.94750'), ('Roseville', 326, '43.01676', '-92.81045'), ('Rudd', 431, '43.12680', '-92.90480')], 'partOfState': 'north central', 'wfo': 'ARX'}, +'IAC069': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alexander', 165, '42.80480', '-93.47720'), ('Coulter', 262, '42.73330', '-93.37030'), ('Geneva', 171, '42.67590', '-93.13000'), ('Hampton', 4218, '42.74500', '-93.20090'), ('Hansell', 96, '42.75720', '-93.10340'), ('Latimer', 535, '42.76320', '-93.36500'), ('Popejoy', 78, '42.59410', '-93.42680'), ('Sheffield', 930, '42.89440', '-93.21050')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC071': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Farragut', 509, '40.71980', '-95.48010'), ('Hamburg', 1240, '40.60580', '-95.65480'), ('Imogene', 66, '40.87870', '-95.42740'), ('Randolph', 209, '40.87290', '-95.56420'), ('Riverton', 304, '40.68740', '-95.56880'), ('Sidney', 1300, '40.74600', '-95.64440'), ('Tabor', 993, '40.89380', '-95.67210'), ('Thurman', 236, '40.81940', '-95.74840')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAC073': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Churdan', 418, '42.15470', '-94.47770'), ('Dana', 84, '42.10670', '-94.24010'), ('Grand Junction', 964, '42.03220', '-94.23650'), ('Jefferson', 4626, '42.01880', '-94.37650'), ('Paton', 265, '42.16390', '-94.25470'), ('Rippey', 319, '41.93460', '-94.20000'), ('Scranton', 604, '42.02040', '-94.54820')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAC075': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaman', 210, '42.22000', '-92.82280'), ('Conrad', 1055, '42.22400', '-92.87360'), ('Dike', 944, '42.46310', '-92.63010'), ('Grundy Center', 2596, '42.36300', '-92.77470'), ('Holland', 250, '42.39970', '-92.79930'), ('Morrison', 97, '42.34340', '-92.67290'), ('Reinbeck', 1751, '42.32220', '-92.59850'), ('Stout', 217, '42.52710', '-92.71120'), ('Wellsburg', 716, '42.43380', '-92.92440')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC077': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bagley', 354, '41.84570', '-94.42990'), ('Bayard', 536, '41.85220', '-94.55830'), ('Casey', 478, '41.50730', '-94.52150'), ('Guthrie Center', 1668, '41.67860', '-94.49830'), ('Jamaica', 237, '41.84550', '-94.30720'), ('Menlo', 365, '41.52200', '-94.40350'), ('Panora', 1175, '41.69100', '-94.36490'), ('Yale', 287, '41.77530', '-94.35680')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAC079': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Blairsburg', 235, '42.47950', '-93.64260'), ('Ellsworth', 531, '42.31060', '-93.58180'), ('Jewell', 1188, '42.31130', '-93.63860'), ('Kamrar', 229, '42.39170', '-93.72740'), ('Randall', 148, '42.23720', '-93.60300'), ('Stanhope', 488, '42.28860', '-93.79500'), ('Stratford', 746, '42.27100', '-93.92760'), ('Webster City', 8176, '42.46340', '-93.81650'), ('Williams', 427, '42.49010', '-93.54160')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC081': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Britt', 2052, '43.09730', '-93.80330'), ('Corwith', 350, '42.98930', '-93.95860'), ('Crystal Lake', 285, '43.22360', '-93.79270'), ('Garner', 2922, '43.09820', '-93.60250'), ('Goodell', 174, '42.92360', '-93.61390'), ('Kanawha', 739, '42.93400', '-93.79410'), ('Klemme', 593, '43.00910', '-93.60110'), ('Woden', 243, '43.23050', '-93.91040')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC083': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ackley', 1809, '42.55150', '-93.05190'), ('Alden', 904, '42.51240', '-93.37900'), ('Buckeye', 110, '42.41840', '-93.37590'), ('Eldora', 3035, '42.36020', '-93.10110'), ('Hubbard', 885, '42.30610', '-93.30050'), ('Iowa Falls', 5193, '42.52080', '-93.26580'), ('New Providence', 227, '42.28190', '-93.17230'), ('Owasa', 38, '42.43110', '-93.20510'), ('Radcliffe', 607, '42.31810', '-93.43460'), ('Steamboat Rock', 336, '42.40800', '-93.06610'), ('Union', 427, '42.24290', '-93.06260'), ('Whitten', 160, '42.26480', '-93.01140')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC085': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Dunlap', 1139, '41.85280', '-95.59960'), ('Little Sioux', 217, '41.80830', '-96.02670'), ('Logan', 1545, '41.64460', '-95.79100'), ('Magnolia', 200, '41.68740', '-95.87430'), ('Missouri Valley', 2992, '41.55890', '-95.89510'), ('Modale', 303, '41.61920', '-96.01220'), ('Mondamin', 423, '41.70980', '-96.02080'), ('Persia', 363, '41.57900', '-95.57010'), ('Pisgah', 316, '41.83080', '-95.92680'), ('Woodbine', 1564, '41.73650', '-95.70710')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAC087': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Geode State Park', 914, '40.81670', '-91.38330'), ('Hillsboro', 205, '40.83680', '-91.71350'), ('Lowell', 1937, '40.83330', '-91.43330'), ('Merrimac', 57, '41.08330', '-91.71660'), ('Mount Pleasant', 8751, '40.96310', '-91.54650'), ('Mount Pleasant Municipal Arpt', 8751, '40.95000', '-91.51670'), ('Mount Union', 132, '41.05740', '-91.39060'), ('New London', 1937, '40.92750', '-91.40730'), ('Oakland Mills', 127, '40.93330', '-91.61670'), ('Olds', 249, '41.13330', '-91.54540'), ('Rome', 113, '40.98330', '-91.68070'), ('Salem', 464, '40.85200', '-91.62070'), ('Swedesburg', 249, '41.10000', '-91.55000'), ('Trenton', 945, '41.06670', '-91.63330'), ('Wayland', 945, '41.14770', '-91.65790'), ('Westwood', 0, '40.96480', '-91.62660'), ('Winfield', 1131, '41.12580', '-91.43720')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC089': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bonair', 496, '43.41334', '-92.20005'), ('Chester', 151, '43.49010', '-92.36340'), ('Cresco', 3905, '43.37180', '-92.11570'), ('Davis Corners', 496, '43.36400', '-92.29874'), ('Elma', 598, '43.24570', '-92.44000'), ('Lime Springs', 496, '43.45020', '-92.28110'), ('Lourdes', 286, '43.26714', '-92.30239'), ('Maple Leaf', 598, '43.31283', '-92.38463'), ('Protivin', 317, '43.21750', '-92.08810'), ('Saratoga', 598, '43.36400', '-92.41936'), ('Schley', 3905, '43.29820', '-92.23295'), ('Vernon Springs', 3905, '43.34755', '-92.15253')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAC091': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bode', 327, '42.86810', '-94.28640'), ('Bradgate', 101, '42.80260', '-94.41930'), ('Dakota City', 911, '42.72220', '-94.19690'), ('Hardy', 57, '42.81020', '-94.05150'), ('Humboldt', 4452, '42.72150', '-94.22370'), ('Livermore', 431, '42.86780', '-94.18380'), ('Ottosen', 61, '42.89960', '-94.37530'), ('Pioneer', 21, '42.65350', '-94.39110'), ('Renwick', 306, '42.82740', '-93.98070'), ('Rutland', 145, '42.76120', '-94.29260'), ('Thor', 174, '42.68870', '-94.05000')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC093': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arthur', 245, '42.33520', '-95.34640'), ('Battle Creek', 743, '42.31690', '-95.59930'), ('Galva', 368, '42.50620', '-95.41630'), ('Holstein', 1470, '42.48680', '-95.54230'), ('Ida Grove', 2350, '42.34440', '-95.47290'), ('Saylorville Lake', 0, '42.26862', '-95.64065')], 'partOfState': 'west central', 'wfo': 'FSD'}, +'IAC095': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Amana', 1224, '41.80000', '-91.86670'), ('Conroy', 2622, '41.73330', '-92.00000'), ('East Amana', 1224, '41.81670', '-91.85000'), ('Genoa Bluff', 287, '41.71670', '-92.15000'), ('High Amana', 601, '41.80000', '-91.93330'), ('Holbrook', 220, '41.58330', '-91.91670'), ('Homestead', 705, '41.76670', '-91.86670'), ('Koszta', 105, '41.83330', '-92.20000'), ('Ladora', 287, '41.75580', '-92.18540'), ('Lake Iowa', 184, '41.63330', '-92.18330'), ('Marengo', 2535, '41.79720', '-92.06940'), ('Middle Amana', 1224, '41.80000', '-91.90000'), ('Millersburg', 184, '41.57270', '-92.15920'), ('North English', 991, '41.51590', '-92.07810'), ('Parnell', 220, '41.58350', '-92.00480'), ('South Amana', 2535, '41.78330', '-91.96670'), ('Upper South Amana', 2535, '41.76670', '-91.96670'), ('Victor', 952, '41.73090', '-92.29440'), ('West Amana', 2535, '41.80000', '-91.97000'), ('Williamsburg', 2622, '41.66800', '-92.00840')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC097': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Andrew', 460, '42.15310', '-90.59170'), ('Baldwin', 127, '42.07360', '-90.83900'), ('Bellevue', 2350, '42.25880', '-90.42860'), ('Buckhorn', 6112, '42.06670', '-90.75000'), ('Cottonville', 272, '42.23330', '-90.60000'), ('Crab Town', 127, '42.18330', '-90.80000'), ('Emeline', 127, '42.15000', '-90.83330'), ('Fulton', 6112, '42.15000', '-90.68330'), ('Garry Owen', 97, '42.28330', '-90.83330'), ('Green Island', 55, '42.15460', '-90.32240'), ('Hurstville', 6112, '42.10000', '-90.68330'), ('Ironhills', 127, '42.15000', '-90.76660'), ('La Motte', 272, '42.29490', '-90.62130'), ('Maquoketa', 6112, '42.06530', '-90.66610'), ('Maquoketa Caves State Park', 127, '42.11670', '-90.78330'), ('Maquoketa Municipal Airport', 6112, '42.05000', '-90.73330'), ('Miles', 462, '42.04830', '-90.31750'), ('Monmouth', 180, '42.07370', '-90.88180'), ('Nashville', 127, '42.06670', '-90.78330'), ('Otter Creek', 100, '42.23330', '-90.68330'), ('Preston', 949, '42.04850', '-90.39930'), ('Reeceville', 55, '42.13330', '-90.30000'), ('Sabula', 670, '42.06780', '-90.17410'), ('Smiths', 2350, '42.31670', '-90.43330'), ('South Gary Owen', 97, '42.23330', '-90.80000'), ('Spragueville', 89, '42.07050', '-90.43100'), ('Springbrook', 182, '42.16750', '-90.48190'), ('St. Donatus', 140, '42.36210', '-90.54310'), ('Van Buren', 949, '42.08330', '-90.36670')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC099': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Baxter', 1052, '41.82580', '-93.15070'), ('Colfax', 2223, '41.67620', '-93.24020'), ('Kellogg', 606, '41.71660', '-92.90740'), ('Lambs Grove', 225, '41.70030', '-93.07830'), ('Lynnville', 366, '41.57680', '-92.78620'), ('Mingo', 269, '41.76740', '-93.28430'), ('Monroe', 1808, '41.52020', '-93.10450'), ('Newton', 15579, '41.69510', '-93.04510'), ('Oakland Acres', 166, '41.71930', '-92.82000'), ('Prairie City', 1365, '41.59810', '-93.23540'), ('Reasnor', 194, '41.57850', '-93.02260'), ('Sully', 904, '41.57860', '-92.84650'), ('Valeria', 62, '41.72950', '-93.32450')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC101': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Abingdon', 223, '41.08330', '-92.13330'), ('Batavia', 500, '40.99480', '-92.16760'), ('Beckwith', 9509, '41.01670', '-91.86670'), ('Brookville', 223, '41.05000', '-92.08330'), ('Collett', 423, '40.90800', '-91.98330'), ('East Pleasant Plain', 131, '41.13330', '-91.85000'), ('Fairfield', 9509, '41.00710', '-91.96710'), ('Fairfield Municipal Airport', 9509, '41.05000', '-91.98330'), ('Germanville', 57, '41.10000', '-91.76660'), ('Glasgow', 275, '40.93330', '-91.78330'), ('Libertyville', 325, '40.95860', '-92.04890'), ('Linby', 223, '41.15000', '-92.13330'), ('Lockridge', 275, '40.99360', '-91.74760'), ('Maharishi Vedic City', 0, '41.05250', '-91.99490'), ('Packwood', 223, '41.13250', '-92.08180'), ('Perlee', 131, '41.08330', '-91.90000'), ('Pleasant Plain', 131, '41.14740', '-91.85970'), ('Salina', 131, '41.05000', '-91.83330')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC103': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Amish', 1393, '41.53330', '-91.78330'), ('Coralville', 15123, '41.69100', '-91.60070'), ('Cosgrove', 975, '41.65000', '-91.73330'), ('Cou Falls', 250, '41.81660', '-91.66670'), ('Elmira', 2188, '41.71660', '-91.41670'), ('Frytown', 2293, '41.56670', '-91.73330'), ('Hills', 679, '41.57470', '-91.53710'), ('Iowa City', 62220, '41.65830', '-91.53510'), ('Iowa City Municipal Airport', 987, '41.63330', '-91.55000'), ('Kent County Park', 705, '41.73330', '-91.73330'), ('Lake Macbride State Park', 1177, '41.80000', '-91.55000'), ('Lone Tree', 1151, '41.48580', '-91.42480'), ('Morse', 1177, '41.75000', '-91.43330'), ('Newport', 1177, '41.73330', '-91.46670'), ('North Liberty', 5367, '41.74150', '-91.60930'), ('Oakdale', 15123, '41.70000', '-91.60000'), ('Oasis', 2188, '41.70000', '-91.38330'), ('Oxford', 705, '41.72470', '-91.78970'), ('River Junction', 928, '41.48330', '-91.50000'), ('Sandy Beach Camp Ground', 0, '41.81360', '-91.59520'), ('Sharon Center', 2293, '41.56670', '-91.66660'), ('Shueyville', 250, '41.84810', '-91.64850'), ('Solon', 1177, '41.80500', '-91.49460'), ('Sugar Bottom Camp Ground', 0, '41.75800', '-91.56110'), ('Sutliff', 1898, '41.83330', '-91.38330'), ('Swisher', 813, '41.84340', '-91.69580'), ('Tiffin', 975, '41.70640', '-91.67730'), ('Twin View Heights', 1149, '41.81660', '-91.56660'), ('University Heights', 987, '41.65450', '-91.55800'), ('University Of Iowa', 0, '41.66150', '-91.53610'), ('West Overlook', 0, '41.72480', '-91.52380'), ('Windham', 705, '41.61670', '-91.76660')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC105': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Anamosa', 5494, '42.10900', '-91.28130'), ('Camp Courageous', 0, '42.20850', '-91.10840'), ('Canton', 180, '42.16670', '-90.90000'), ('Center Junction', 131, '42.11440', '-91.08930'), ('Central Park', 131, '42.11670', '-91.13330'), ('Fairview', 5494, '42.08330', '-91.33330'), ('Hale', 626, '42.01670', '-91.06670'), ('Langworthy', 3607, '42.18330', '-91.21670'), ('Martelle', 280, '42.02040', '-91.35760'), ('Monticello', 3607, '42.23770', '-91.19100'), ('Monticello Municipal Airport', 3607, '42.23330', '-91.16660'), ('Morley', 88, '42.00650', '-91.24660'), ('Olin', 716, '41.99760', '-91.14110'), ('Onslow', 223, '42.10800', '-91.01370'), ('Oxford Junction', 573, '41.98460', '-90.95430'), ('Oxford Mills', 573, '41.96660', '-90.96660'), ('Pictured Rocks Wildlife Area', 3607, '42.21660', '-91.11660'), ('Scotch Grove', 131, '42.16670', '-91.10000'), ('Stone City', 5494, '42.11670', '-91.35000'), ('Temple Hill', 1958, '42.23330', '-90.98330'), ('Wapsipinicon State Park', 5494, '42.10000', '-91.28330'), ('Wildwood Acres', 0, '42.17410', '-90.90100'), ('Wyoming', 626, '42.06010', '-91.00480')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC107': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Coal Creek', 92, '41.43330', '-92.40000'), ('Delta', 410, '41.32310', '-92.32940'), ('Gibson', 92, '41.48060', '-92.39150'), ('Harper', 134, '41.36330', '-92.05120'), ('Hayesville', 64, '41.26450', '-92.24700'), ('Hedrick', 837, '41.17060', '-92.30770'), ('Keota', 1025, '41.36600', '-91.95550'), ('Keswick', 295, '41.45500', '-92.23730'), ('Kinross', 80, '41.45940', '-91.98720'), ('Lancaster', 2209, '41.28330', '-92.16660'), ('Martinsburg', 126, '41.17840', '-92.25230'), ('Ollie', 224, '41.19880', '-92.09280'), ('Pekin', 224, '41.16670', '-92.16670'), ('Richland', 587, '41.18590', '-91.99500'), ('Sig-Nor Field Airport', 2209, '41.31220', '-92.18530'), ('Sigourney', 2209, '41.33400', '-92.20650'), ('Sigourney Iowa Airport', 2209, '41.38330', '-92.18830'), ('South English', 213, '41.45230', '-92.09080'), ('Talleyrand', 1025, '41.30000', '-91.96670'), ('Thornburg', 84, '41.45630', '-92.33260'), ('Webster', 110, '41.43790', '-92.17080'), ('What Cheer', 678, '41.40010', '-92.35390')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC109': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Algona', 5741, '43.07390', '-94.23070'), ('Bancroft', 808, '43.29250', '-94.21680'), ('Burt', 556, '43.19920', '-94.22140'), ('Fenton', 317, '43.21830', '-94.42770'), ('Lakota', 255, '43.37800', '-94.09400'), ('Ledyard', 147, '43.42030', '-94.15870'), ('Lone Rock', 157, '43.22040', '-94.32490'), ('Lu Verne', 299, '42.91660', '-94.08340'), ('Swea City', 642, '43.38280', '-94.31020'), ('Titonka', 584, '43.23660', '-94.04160'), ('Wesley', 467, '43.08890', '-93.99300'), ('Whittemore', 530, '43.06340', '-94.42400')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC111': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Argyle', 963, '40.53330', '-91.56670'), ('Augusta', 535, '40.75000', '-91.28330'), ('Bluff Park', 957, '40.53330', '-91.40000'), ('Charleston', 963, '40.58330', '-91.53330'), ('Croton', 756, '40.58330', '-91.68330'), ('Denmark', 535, '40.75000', '-91.33330'), ('Donnellson', 963, '40.64340', '-91.56490'), ('Fort Madison', 10715, '40.61970', '-91.35220'), ('Fort Madison Municipal Arpt', 10715, '40.66670', '-91.33330'), ('Franklin', 136, '40.66640', '-91.51170'), ('Galland', 957, '40.50000', '-91.38100'), ('Houghton', 130, '40.78300', '-91.61240'), ('Keokuk', 11427, '40.40960', '-91.40350'), ('Keokuk Airport', 957, '40.46670', '-91.43330'), ('Montrose', 957, '40.52540', '-91.41620'), ('Mooar', 11427, '40.45000', '-91.45000'), ('Mt Hamill', 130, '40.75000', '-91.61670'), ('New Boston', 957, '40.56670', '-91.50000'), ('Pilot Grove', 118, '40.76660', '-91.53330'), ('Primrose', 963, '40.68330', '-91.63330'), ('Sandusky', 11427, '40.46670', '-91.38330'), ('Sawyer', 10715, '40.70000', '-91.35000'), ('Shimek State Forest', 756, '40.62000', '-91.68000'), ('St. Francisville', 425, '40.46300', '-91.55300'), ('St. Paul', 118, '40.76690', '-91.51680'), ('Summitville', 957, '40.46670', '-91.45000'), ('Vincennes', 391, '40.50000', '-91.56670'), ('West Point', 980, '40.71580', '-91.45150'), ('Wever', 264, '40.71670', '-91.23330')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC113': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alburnett', 559, '42.14950', '-91.61820'), ('Bertram', 681, '41.95490', '-91.53660'), ('Cedar Rapids', 120758, '41.97300', '-91.66960'), ('Cedar Rapids Municipal Airport', 813, '41.88330', '-91.71660'), ('Center Point', 2007, '42.18500', '-91.77670'), ('Central City', 1157, '42.20350', '-91.52360'), ('Coggon', 745, '42.27940', '-91.53090'), ('Ely', 1149, '41.87510', '-91.58730'), ('Fairfax', 889, '41.92160', '-91.78010'), ('Hiawatha', 6480, '42.04640', '-91.68370'), ('Lafayette', 559, '42.15000', '-91.68330'), ('Lisbon', 1898, '41.92120', '-91.39110'), ('Marion', 26294, '42.03440', '-91.58950'), ('Marion Airport', 26294, '42.03330', '-91.53330'), ('Midway', 1806, '42.10000', '-91.70000'), ('Mount Vernon', 3390, '41.92310', '-91.42380'), ('Palisades-Kepler Sate Park', 681, '41.91660', '-91.51660'), ('Palo', 614, '42.06420', '-91.79600'), ('Paralta', 1091, '42.03330', '-91.45000'), ('Paris', 1157, '42.23330', '-91.58330'), ('Prairieburg', 175, '42.23780', '-91.42600'), ('Robins', 1806, '42.07840', '-91.66920'), ('Springville', 1091, '42.05580', '-91.44400'), ('Toddville', 1806, '42.10000', '-91.71670'), ('Troy Mills', 750, '42.28330', '-91.68330'), ('Viola', 1091, '42.08330', '-91.38330'), ('Walker', 750, '42.28620', '-91.78090'), ('Waubeek', 1157, '42.16670', '-91.46670'), ('Whittier', 1091, '42.10000', '-91.46670')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC115': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Amber', 2124, '41.13330', '-91.18330'), ('Cairo', 376, '41.18330', '-91.33330'), ('Columbus City', 376, '41.25930', '-91.37500'), ('Columbus Junction', 1900, '41.27940', '-91.36460'), ('Cotter', 48, '41.29260', '-91.47050'), ('Elrick Junction', 439, '41.10000', '-91.11670'), ('Fredonia', 251, '41.28470', '-91.33900'), ('Gladwin', 48, '41.36670', '-91.45000'), ('Grandview', 600, '41.27720', '-91.18740'), ('Letts', 392, '41.33000', '-91.23480'), ('Marsh', 132, '41.10000', '-91.35000'), ('Morning Sun', 872, '41.09400', '-91.25150'), ('Newport', 872, '41.08330', '-91.18330'), ('Oakville', 439, '41.09780', '-91.04350'), ('Sand Springs', 600, '41.31770', '-91.19330'), ('Toolesboro', 439, '41.15000', '-91.06670'), ('Wapello', 2124, '41.17840', '-91.18880'), ('Wyman', 295, '41.20000', '-91.46670')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC117': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Chariton', 4573, '41.01760', '-93.30990'), ('Derby', 131, '40.92990', '-93.45670'), ('Lucas', 243, '41.03170', '-93.46030'), ('Russell', 559, '40.98040', '-93.20080'), ('Williamson', 163, '41.08790', '-93.25670')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC119': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alvord', 187, '43.34220', '-96.30250'), ('Doon', 533, '43.27870', '-96.23160'), ('George', 1051, '43.34170', '-96.00270'), ('Inwood', 875, '43.28700', '-96.44010'), ('Larchwood', 788, '43.45530', '-96.43740'), ('Lester', 251, '43.43920', '-96.33020'), ('Little Rock', 489, '43.44460', '-95.88090'), ('Rock Rapids', 2573, '43.42580', '-96.16610')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC121': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Earlham', 1298, '41.49220', '-94.12200'), ('East Peru', 153, '41.22750', '-93.92760'), ('Macksburg', 142, '41.21430', '-94.18540'), ('Patterson', 126, '41.34900', '-93.87920'), ('St. Charles', 619, '41.28790', '-93.80630'), ('Truro', 427, '41.21040', '-93.84570'), ('Winterset', 4768, '41.33800', '-94.01850')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC123': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Barnes City', 201, '41.50740', '-92.46880'), ('Beacon', 518, '41.27460', '-92.68120'), ('Fremont', 704, '41.21210', '-92.43490'), ('Keomah Village', 97, '41.28820', '-92.53630'), ('Leighton', 153, '41.33850', '-92.78660'), ('New Sharon', 1301, '41.47020', '-92.65060'), ('Oskaloosa', 10938, '41.29300', '-92.63960'), ('Rose Hill', 205, '41.32040', '-92.46280'), ('University Park', 536, '41.28670', '-92.61580')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC125': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bussey', 450, '41.20590', '-92.88420'), ('Hamilton', 144, '41.17000', '-92.90410'), ('Harvey', 277, '41.31660', '-92.92340'), ('Knoxville', 7731, '41.31910', '-93.10130'), ('Lake Red Rock', 0, '41.41480', '-93.09890'), ('Marysville', 54, '41.18270', '-92.95340'), ('Melcher-Dallas', 1298, '41.22780', '-93.24080'), ('Pella', 9832, '41.40870', '-92.91900'), ('Pleasantville', 1539, '41.38900', '-93.26740'), ('Swan', 121, '41.46560', '-93.30940')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC127': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albion', 592, '42.11280', '-92.98920'), ('Clemons', 148, '42.11320', '-93.15820'), ('Ferguson', 126, '41.93840', '-92.86340'), ('Gilman', 600, '41.87860', '-92.78780'), ('Haverhill', 170, '41.94410', '-92.96120'), ('Laurel', 266, '41.88380', '-92.92130'), ('Le Grand', 883, '42.00720', '-92.77510'), ('Liscomb', 272, '42.19060', '-93.00550'), ('Marshalltown', 26009, '42.03550', '-92.91180'), ('Melbourne', 794, '41.94180', '-93.10220'), ('Rhodes', 294, '41.92740', '-93.18400'), ('St. Anthony', 109, '42.12440', '-93.19780'), ('State Center', 1349, '42.01530', '-93.16540')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC129': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Emerson', 480, '41.01850', '-95.40280'), ('Glenwood', 5358, '41.04780', '-95.74220'), ('Hastings', 214, '41.02390', '-95.49560'), ('Henderson', 171, '41.13910', '-95.43100'), ('Malvern', 1256, '41.00750', '-95.58540'), ('Pacific Junction', 507, '41.01830', '-95.79960'), ('Silver City', 259, '41.11100', '-95.63780')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAC131': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bailey', 173, '43.46634', '-92.61673'), ('Brownville', 840, '43.33110', '-92.68252'), ('Carpenter', 130, '43.41490', '-93.01740'), ('Little Cedar', 469, '43.38410', '-92.73552'), ('McIntire', 173, '43.43720', '-92.59310'), ('Meyer', 469, '43.44806', '-92.71908'), ('Mitchell', 155, '43.32120', '-92.87020'), ('Mona', 504, '43.48096', '-92.95118'), ('New Haven', 840, '43.28176', '-92.65146'), ('Orchard', 88, '43.22700', '-92.77440'), ('Osage', 3451, '43.28360', '-92.81190'), ('Otranto', 504, '43.49375', '-93.00966'), ('Riceville', 840, '43.36250', '-92.55490'), ('Rock Creek', 155, '43.23241', '-92.93473'), ('Stacyville', 469, '43.43840', '-92.78280'), ('St. Ansgar', 1031, '43.37810', '-92.91960'), ('Toeterville', 504, '43.44806', '-92.91462')], 'partOfState': 'north central', 'wfo': 'ARX'}, +'IAC133': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Blencoe', 231, '41.92970', '-96.08100'), ('Castana', 178, '42.07360', '-95.90940'), ('Mapleton', 1416, '42.16770', '-95.79080'), ('Moorhead', 232, '41.92430', '-95.85040'), ('Onawa', 3091, '42.02740', '-96.08810'), ('Rodney', 74, '42.20480', '-95.95120'), ('Soldier', 207, '41.98460', '-95.77960'), ('Turin', 75, '42.02040', '-95.96580'), ('Ute', 378, '42.04970', '-95.70560'), ('Whiting', 707, '42.12640', '-96.15070')], 'partOfState': 'west central', 'wfo': 'OAX'}, +'IAC135': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albia', 3706, '41.02660', '-92.80280'), ('Lovilia', 583, '41.13540', '-92.90790'), ('Melrose', 130, '40.98080', '-93.04930')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC137': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Coburg', 31, '40.91780', '-95.26560'), ('Elliott', 402, '41.14980', '-95.16300'), ('Grant', 102, '41.14220', '-94.98510'), ('Red Oak', 6197, '41.01250', '-95.22460'), ('Stanton', 714, '40.98110', '-95.10320'), ('Villisca', 1344, '40.93100', '-94.97790')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAC139': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ardon', 703, '41.40000', '-91.18330'), ('Atalissa', 283, '41.57150', '-91.16660'), ('Conesville', 424, '41.38040', '-91.34810'), ('Cranston', 392, '41.38330', '-91.26670'), ('Fairport', 1169, '41.43330', '-90.90000'), ('Fruitland', 703, '41.34680', '-91.12570'), ('Midway Beach', 1169, '41.46670', '-90.83330'), ('Montpelier', 1169, '41.46670', '-90.80000'), ('Moscow', 2829, '41.58330', '-91.08330'), ('Muscatine', 22697, '41.41770', '-91.07170'), ('Muscatine Municipal Airport', 703, '41.36670', '-91.15000'), ('New Era', 182, '41.46670', '-90.90000'), ('Nichols', 374, '41.47910', '-91.30810'), ('Pleasant Prairie', 182, '41.51670', '-90.86670'), ('Stockton', 182, '41.58330', '-90.86670'), ('Sweetland Center', 2829, '41.50000', '-90.96670'), ('West Liberty', 3332, '41.57270', '-91.26380'), ('Wildcat Den State Park', 1169, '41.46670', '-90.88330'), ('Wilton', 2829, '41.58910', '-91.02470')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC141': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Archer', 126, '43.11450', '-95.74410'), ('Calumet', 181, '42.94490', '-95.55040'), ('Hartley', 1733, '43.17930', '-95.47750'), ('Moneta', 29, '43.13250', '-95.39240'), ('Paullina', 1124, '42.97980', '-95.68680'), ('Primghar', 891, '43.08780', '-95.62620'), ('Sanborn', 1353, '43.18110', '-95.65630'), ('Sheldon', 4914, '43.17930', '-95.84490'), ('Sutherland', 707, '42.97240', '-95.49530')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC143': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ashton', 461, '43.30980', '-95.79220'), ('Harris', 200, '43.44760', '-95.43290'), ('Melvin', 243, '43.28670', '-95.60850'), ('Ocheyedan', 536, '43.41820', '-95.53650'), ('Sibley', 2796, '43.40170', '-95.74490')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC145': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Clarinda', 5690, '40.73860', '-95.03570'), ('Coin', 252, '40.65590', '-95.23520'), ('College Springs', 246, '40.62090', '-95.12170'), ('Essex', 884, '40.83300', '-95.30340'), ('Hepburn', 39, '40.84820', '-95.01650'), ('Northboro', 60, '40.60880', '-95.29310'), ('Shambaugh', 188, '40.65710', '-95.03610'), ('Shenandoah', 5546, '40.75940', '-95.36920'), ('Yorktown', 82, '40.73650', '-95.15490')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAC147': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ayrshire', 202, '43.04030', '-94.83340'), ('Curlew', 62, '42.97950', '-94.73720'), ('Cylinder', 110, '43.09040', '-94.55130'), ('Emmetsburg', 3958, '43.11350', '-94.68050'), ('Graettinger', 900, '43.23640', '-94.75100'), ('Mallard', 298, '42.93970', '-94.68410'), ('Rodman', 56, '43.02600', '-94.52630'), ('Ruthven', 711, '43.12960', '-94.89930'), ('West Bend', 834, '42.96010', '-94.45900')], 'partOfState': 'northwest', 'wfo': 'DMX'}, +'IAC149': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Akron', 1489, '42.82730', '-96.55630'), ('Brunsville', 146, '42.81130', '-96.26640'), ('Craig', 102, '42.89550', '-96.31010'), ('Hinton', 808, '42.62470', '-96.29390'), ('Kingsley', 1245, '42.58750', '-95.96800'), ('Le Mars', 9237, '42.78760', '-96.16990'), ('Merrill', 754, '42.72100', '-96.24910'), ('Oyens', 132, '42.81940', '-96.05750'), ('Remsen', 1762, '42.81310', '-95.97280'), ('Struble', 85, '42.89480', '-96.19410'), ('Westfield', 189, '42.75670', '-96.60540')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC151': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Fonda', 648, '42.58180', '-94.84550'), ('Gilmore City', 556, '42.72660', '-94.46000'), ('Havelock', 177, '42.83390', '-94.70010'), ('Laurens', 1476, '42.84780', '-94.84800'), ('Palmer', 214, '42.62880', '-94.59830'), ('Plover', 95, '42.87710', '-94.62240'), ('Pocahontas', 1970, '42.73620', '-94.66680'), ('Rolfe', 675, '42.81280', '-94.53030'), ('Varina', 90, '42.65860', '-94.89850')], 'partOfState': 'northwest', 'wfo': 'DMX'}, +'IAC153': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alleman', 439, '41.81710', '-93.61030'), ('Altoona', 10345, '41.65090', '-93.47630'), ('Ankeny', 27117, '41.72480', '-93.60530'), ('Bondurant', 1846, '41.68840', '-93.46220'), ('Clive', 12855, '41.60770', '-93.76950'), ('Des Moines', 198682, '41.57670', '-93.61740'), ('Elkhart', 362, '41.79410', '-93.51450'), ('Grimes', 5098, '41.66080', '-93.78930'), ('Johnston', 8649, '41.68590', '-93.70230'), ('Mitchellville', 1715, '41.66150', '-93.36090'), ('Pleasant Hill', 5070, '41.58570', '-93.51440'), ('Polk City', 2344, '41.77310', '-93.71650'), ('Runnells', 352, '41.51230', '-93.35810'), ('Saylorville', 3238, '41.68450', '-93.62580'), ('Urbandale', 29072, '41.63650', '-93.74090'), ('West Des Moines', 46403, '41.57070', '-93.75290'), ('Windsor Heights', 4805, '41.60480', '-93.71190')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC155': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Avoca', 1610, '41.48080', '-95.33550'), ('Carson', 668, '41.23660', '-95.41630'), ('Carter Lake', 3248, '41.28870', '-95.91610'), ('Council Bluffs', 58268, '41.24000', '-95.85950'), ('Crescent', 537, '41.36630', '-95.85880'), ('Hancock', 207, '41.39330', '-95.36500'), ('Macedonia', 325, '41.19210', '-95.42480'), ('McClelland', 129, '41.32760', '-95.68380'), ('Minden', 564, '41.46710', '-95.54190'), ('Neola', 845, '41.45090', '-95.61720'), ('Oakland', 1487, '41.30850', '-95.39670'), ('Treynor', 950, '41.23110', '-95.60640'), ('Underwood', 688, '41.38570', '-95.67930'), ('Walnut', 778, '41.47910', '-95.22270')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAC157': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Brooklyn', 1367, '41.73120', '-92.44460'), ('Deep River', 288, '41.58150', '-92.37240'), ('Grinnell', 9105, '41.74080', '-92.72270'), ('Guernsey', 70, '41.64930', '-92.34310'), ('Hartwick', 83, '41.78400', '-92.34600'), ('Malcom', 352, '41.70750', '-92.55780'), ('Montezuma', 1440, '41.58290', '-92.52750'), ('Searsboro', 155, '41.57990', '-92.70480')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC159': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaconsfield', 11, '40.80700', '-94.05040'), ('Benton', 40, '40.70190', '-94.35940'), ('Delphos', 25, '40.66320', '-94.33930'), ('Diagonal', 312, '40.81080', '-94.34120'), ('Ellston', 57, '40.84040', '-94.10830'), ('Kellerton', 372, '40.71020', '-94.04880'), ('Maloy', 28, '40.67420', '-94.41120'), ('Mount Ayr', 1822, '40.71420', '-94.23790'), ('Redding', 78, '40.60600', '-94.38680'), ('Tingley', 171, '40.85280', '-94.19550')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC161': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Auburn', 296, '42.24990', '-94.87690'), ('Early', 605, '42.46090', '-95.15250'), ('Lake View', 1278, '42.30620', '-95.04660'), ('Lytton', 305, '42.42340', '-94.87000'), ('Nemaha', 102, '42.51500', '-95.08770'), ('Odebolt', 1153, '42.31150', '-95.25380'), ('Sac City', 2368, '42.42210', '-94.99730'), ('Schaller', 779, '42.49570', '-95.29540'), ('Wall Lake', 841, '42.26960', '-95.09300')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAC163': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bettendorf', 31275, '41.56420', '-90.47620'), ('Big Rock', 0, '41.77030', '-90.82620'), ('Blue Grass', 1169, '41.50860', '-90.76360'), ('Buffalo', 1321, '41.46030', '-90.71820'), ('Campbells Island', 127, '41.55000', '-90.43330'), ('Credit Island', 40552, '41.50000', '-90.61670'), ('Davenport', 98359, '41.55680', '-90.60420'), ('Davenport Municipal Airport', 4159, '41.61670', '-90.58330'), ('Dixon', 276, '41.74280', '-90.78140'), ('Donahue', 293, '41.69190', '-90.67500'), ('Eldridge', 4159, '41.63580', '-90.57330'), ('Le Claire', 2847, '41.59880', '-90.36460'), ('Long Grove', 597, '41.69450', '-90.58040'), ('Maysville', 163, '41.64910', '-90.71820'), ('McCausland', 299, '41.74340', '-90.44520'), ('New Liberty', 121, '41.71660', '-90.87860'), ('Panorama Park', 111, '41.55510', '-90.45470'), ('Park View', 2169, '41.68950', '-90.54080'), ('Plainview', 163, '41.66670', '-90.78330'), ('Pleasant Valley', 1601, '41.56670', '-90.41670'), ('Princeton', 946, '41.67110', '-90.35950'), ('Princeton Wildlife Area', 638, '41.70000', '-90.31670'), ('Riverdale', 656, '41.53540', '-90.46710'), ('Scott County Park', 2169, '41.71670', '-90.53330'), ('Walcott', 1528, '41.59460', '-90.77500'), ('West Lake Park', 1321, '41.51670', '-90.68330')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAC165': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Defiance', 346, '41.82540', '-95.33930'), ('Earling', 471, '41.77610', '-95.41970'), ('Elk Horn', 649, '41.59270', '-95.06040'), ('Harlan', 5282, '41.64900', '-95.32620'), ('Irwin', 372, '41.79010', '-95.20670'), ('Kirkman', 76, '41.72900', '-95.26630'), ('Panama', 212, '41.72670', '-95.47530'), ('Portsmouth', 225, '41.65070', '-95.51940'), ('Shelby', 696, '41.50850', '-95.45160'), ('Tennant', 73, '41.59550', '-95.44290'), ('Westphalia', 160, '41.71930', '-95.39310')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAC167': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alton', 1095, '42.98640', '-96.00760'), ('Boyden', 672, '43.19020', '-96.00200'), ('Chatsworth', 89, '42.91640', '-96.51470'), ('Granville', 325, '42.98470', '-95.87480'), ('Hawarden', 2478, '43.00220', '-96.48240'), ('Hospers', 672, '43.07200', '-95.90360'), ('Hull', 1960, '43.19020', '-96.13270'), ('Ireton', 585, '42.97530', '-96.32150'), ('Matlock', 83, '43.24450', '-95.93420'), ('Maurice', 254, '42.96640', '-96.18300'), ('Orange City', 5582, '43.00330', '-96.05850'), ('Rock Valley', 2702, '43.20460', '-96.29720'), ('Sioux Center', 6002, '43.07660', '-96.17150')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAC169': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ames', 50731, '42.02340', '-93.62560'), ('Cambridge', 819, '41.89950', '-93.53090'), ('Collins', 499, '41.90250', '-93.30540'), ('Colo', 868, '42.01590', '-93.31850'), ('Gilbert', 987, '42.10740', '-93.64750'), ('Huxley', 2316, '41.89600', '-93.60250'), ('Kelley', 300, '41.95090', '-93.66470'), ('Maxwell', 807, '41.89140', '-93.39880'), ('McCallsburg', 318, '42.16550', '-93.39030'), ('Nevada', 6658, '42.01820', '-93.45020'), ('Roland', 1324, '42.16700', '-93.50120'), ('Sheldahl', 336, '41.86410', '-93.69620'), ('Slater', 1306, '41.88030', '-93.68410'), ('Story City', 3228, '42.18640', '-93.59160'), ('Zearing', 617, '42.15890', '-93.29650')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC171': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Chelsea', 287, '41.92080', '-92.39520'), ('Clutier', 229, '42.07880', '-92.40310'), ('Dysart', 1303, '42.17220', '-92.30930'), ('Elberon', 245, '42.00540', '-92.31580'), ('Garwin', 565, '42.09400', '-92.67820'), ('Gladbrook', 1015, '42.18610', '-92.71440'), ('Irving', 245, '41.95100', '-92.30000'), ('Lincoln', 182, '42.26320', '-92.69100'), ('Montour', 285, '41.98050', '-92.71540'), ('Tama', 2731, '41.96360', '-92.57480'), ('Toledo', 2539, '41.99050', '-92.58050'), ('Traer', 1594, '42.19250', '-92.46470'), ('Vining', 70, '41.99020', '-92.38550')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC173': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Athelstan', 18, '40.57750', '-94.54220'), ('Bedford', 1620, '40.67110', '-94.72410'), ('Blockton', 192, '40.61680', '-94.49000'), ('Clearfield', 371, '40.80210', '-94.48600'), ('Conway', 63, '40.74990', '-94.61940'), ('Gravity', 218, '40.76010', '-94.74280'), ('Lenox', 1401, '40.88320', '-94.55820'), ('New Market', 456, '40.73240', '-94.90000'), ('Sharpsburg', 98, '40.80280', '-94.64100')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAC175': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Afton', 917, '41.02790', '-94.19560'), ('Arispe', 89, '40.94900', '-94.21870'), ('Creston', 7597, '41.05900', '-94.36410'), ('Cromwell', 120, '41.04000', '-94.46190'), ('Kent', 52, '40.95310', '-94.45630'), ('Lorimor', 427, '41.12760', '-94.05700'), ('Shannon City', 70, '40.90900', '-94.26360'), ('Thayer', 66, '41.02920', '-94.04960')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC177': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Austin County Park', 1066, '40.76670', '-91.96670'), ('Bentonsport/Vernon', 458, '40.73340', '-91.85000'), ('Birmingham', 423, '40.87840', '-91.94770'), ('Bonaparte', 458, '40.70090', '-91.80050'), ('Cantril', 257, '40.64310', '-92.06880'), ('Douds/Leando', 325, '40.83330', '-92.08330'), ('Farmington', 756, '40.63880', '-91.73880'), ('Indian Lake Park', 756, '40.63330', '-91.75000'), ('Keosauqua', 1066, '40.73460', '-91.96030'), ('Keosauqua Airport', 1066, '40.74000', '-91.95000'), ('Kilbourn', 1066, '40.80000', '-91.96670'), ('Lacey Keosauqua State Park', 1066, '40.71670', '-91.98330'), ('Lake Sugema Campground', 1066, '40.68330', '-92.00000'), ('Lebanon', 257, '40.73330', '-92.08330'), ('Milton', 550, '40.67130', '-92.16250'), ('Mount Sterling', 40, '40.61900', '-91.93890'), ('Mount Zion', 1066, '40.78330', '-91.93330'), ('Selma', 998, '40.86670', '-92.15000'), ('Stockport', 284, '40.85700', '-91.83320'), ('Utica', 284, '40.81670', '-91.83330')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC179': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Agency', 622, '40.99690', '-92.30730'), ('Blakesburg', 374, '40.96180', '-92.63540'), ('Chillicothe', 90, '41.08600', '-92.52950'), ('Eddyville', 1064, '41.15870', '-92.62970'), ('Eldon', 998, '40.91770', '-92.21820'), ('Kirkville', 214, '41.14290', '-92.50230'), ('Ottumwa', 24998, '41.01990', '-92.41820')], 'partOfState': 'southeast', 'wfo': 'DMX'}, +'IAC181': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ackworth', 85, '41.36510', '-93.47300'), ('Bevington', 58, '41.35960', '-93.79020'), ('Carlisle', 3497, '41.50000', '-93.48520'), ('Cumming', 162, '41.48470', '-93.76180'), ('Hartford', 759, '41.45780', '-93.40390'), ('Indianola', 12998, '41.36070', '-93.56550'), ('Lacona', 360, '41.18990', '-93.38420'), ('Martensdale', 467, '41.37410', '-93.73820'), ('Milo', 839, '41.28930', '-93.43850'), ('New Virginia', 469, '41.18090', '-93.73050'), ('Norwalk', 6884, '41.49810', '-93.68090'), ('Sandyville', 61, '41.37020', '-93.38550'), ('Spring Hill', 92, '41.41200', '-93.64900'), ('St. Marys', 134, '41.30860', '-93.73320')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC183': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ainsworth', 524, '41.29020', '-91.55410'), ('Brighton', 687, '41.17430', '-91.82060'), ('Coppock', 57, '41.16700', '-91.72000'), ('Crawfordsville', 295, '41.21440', '-91.53590'), ('Haskins', 524, '41.33330', '-91.53330'), ('Kalona', 2293, '41.48760', '-91.70050'), ('Lake Darling State Park', 131, '41.18330', '-91.90000'), ('Noble', 945, '41.16670', '-91.61670'), ('Richmond', 2293, '41.45000', '-91.70000'), ('Riverside', 928, '41.48230', '-91.57310'), ('Rubio', 587, '41.21670', '-91.93330'), ('Washington', 7047, '41.29880', '-91.69090'), ('Washington Airport', 7047, '41.28330', '-91.66670'), ('Wellman', 1393, '41.46790', '-91.83700'), ('West Chester', 159, '41.34000', '-91.81620')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAC185': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Allerton', 559, '40.70820', '-93.36700'), ('Clio', 91, '40.63470', '-93.45180'), ('Corydon', 1591, '40.75910', '-93.31750'), ('Humeston', 543, '40.86030', '-93.49680'), ('Lineville', 273, '40.58600', '-93.52360'), ('Millerton', 48, '40.84930', '-93.30690'), ('Promise City', 105, '40.74690', '-93.15090'), ('Seymour', 810, '40.68280', '-93.12180')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAC187': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Badger', 610, '42.61230', '-94.14260'), ('Barnum', 195, '42.50670', '-94.36430'), ('Callender', 424, '42.36220', '-94.29560'), ('Clare', 190, '42.58770', '-94.34460'), ('Dayton', 884, '42.26170', '-94.07150'), ('Duncombe', 474, '42.46990', '-93.99600'), ('Fort Dodge', 25136, '42.50790', '-94.17680'), ('Gowrie', 1038, '42.27680', '-94.28850'), ('Harcourt', 340, '42.26100', '-94.17500'), ('Lehigh', 497, '42.35590', '-94.05310'), ('Moorland', 197, '42.44100', '-94.29410'), ('Otho', 571, '42.42090', '-94.14760'), ('Vincent', 158, '42.59130', '-94.01790')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAC189': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Buffalo Center', 963, '43.38980', '-93.94310'), ('Forest City', 4362, '43.25720', '-93.63800'), ('Lake Mills', 2140, '43.41620', '-93.53210'), ('Leland', 258, '43.33370', '-93.63720'), ('Rake', 227, '43.48130', '-93.92100'), ('Scarville', 97, '43.47060', '-93.61630'), ('Thompson', 596, '43.36960', '-93.77430')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC191': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bluffton', 293, '43.39781', '-91.93425'), ('Burr Oak', 362, '43.44730', '-91.88292'), ('Calmar', 1058, '43.17940', '-91.86690'), ('Castalia', 175, '43.11190', '-91.67640'), ('Conover', 386, '43.21452', '-91.91775'), ('Decorah', 8172, '43.30530', '-91.79330'), ('Festina', 1058, '43.11921', '-91.86826'), ('Fort Atkinson', 389, '43.14410', '-91.93470'), ('Frankville', 175, '43.18153', '-91.63549'), ('Hesper', 745, '43.48029', '-91.78578'), ('Highlandville', 745, '43.44913', '-91.68497'), ('Jackson Junction', 60, '43.10330', '-92.04800'), ('Kendallville', 3905, '43.43080', '-92.03322'), ('Locust', 745, '43.41614', '-91.73263'), ('Nordness', 8172, '43.23102', '-91.78395'), ('Ossian', 853, '43.14680', '-91.76450'), ('Ridgeway', 293, '43.29720', '-91.99110'), ('Sattre', 1153, '43.39964', '-91.65015'), ('Spillville', 386, '43.20400', '-91.95190')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAC193': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Anthon', 649, '42.38770', '-95.86610'), ('Bronson', 269, '42.40950', '-96.21130'), ('Correctionville', 851, '42.47820', '-95.78340'), ('Cushing', 246, '42.46510', '-95.67610'), ('Danbury', 384, '42.23720', '-95.72150'), ('Hornick', 253, '42.23100', '-96.09630'), ('Lawton', 697, '42.47890', '-96.18440'), ('Moville', 1583, '42.48960', '-96.06680'), ('Oto', 145, '42.28150', '-95.89380'), ('Pierson', 371, '42.54370', '-95.86690'), ('Salix', 370, '42.30950', '-96.28660'), ('Sergeant Bluff', 3321, '42.40070', '-96.35560'), ('Sioux City', 85013, '42.50020', '-96.39400'), ('Sloan', 1032, '42.23430', '-96.22410'), ('Smithland', 221, '42.22910', '-95.93160')], 'partOfState': 'west central', 'wfo': 'FSD'}, +'IAC195': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Fertile', 360, '43.26490', '-93.42260'), ('Grafton', 290, '43.33010', '-93.06990'), ('Hanlontown', 229, '43.28090', '-93.37920'), ('Joice', 231, '43.36430', '-93.45710'), ('Kensett', 280, '43.35390', '-93.21090'), ('Manly', 1342, '43.28830', '-93.20170'), ('Northwood', 2050, '43.44460', '-93.21640')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAC197': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Belmond', 2560, '42.84920', '-93.60950'), ('Clarion', 2968, '42.73210', '-93.73210'), ('Dows', 675, '42.65870', '-93.50200'), ('Eagle Grove', 3712, '42.66730', '-93.90130'), ('Galt', 30, '42.69390', '-93.60480'), ('Goldfield', 680, '42.73570', '-93.92120'), ('Lake Cornelia', 0, '42.78730', '-93.68920'), ('Rowan', 218, '42.74010', '-93.54960'), ('Woolstock', 204, '42.56530', '-93.84340')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IDC001': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Boise', 145987, '43.60670', '-116.22610'), ('Eagle', 11085, '43.69350', '-116.35480'), ('Garden City', 10624, '43.64850', '-116.26700'), ('Kuna', 5382, '43.49010', '-116.41750'), ('Meridian', 34919, '43.61110', '-116.39970'), ('Star', 1795, '43.70000', '-116.48300'), ('Swan Falls', 439, '43.25000', '-116.36700')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC003': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bear', 816, '45.01700', '-116.68300'), ('Council', 816, '44.72890', '-116.43520'), ('Cuprum', 533, '45.08300', '-116.70000'), ('Fruitvale', 816, '44.81700', '-116.41700'), ('Glendale', 816, '44.83300', '-116.40000'), ('Goodrich', 816, '44.65000', '-116.55000'), ('Indian Valley', 816, '44.55000', '-116.43300'), ('Meadows', 533, '44.96700', '-116.22200'), ('Mesa', 816, '44.63300', '-116.45000'), ('New Meadows', 533, '44.97070', '-116.28430'), ('Tamarack', 533, '44.95000', '-116.36700')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC005': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Arimo', 348, '42.55950', '-112.17060'), ('Chubbuck', 9700, '42.92220', '-112.46470'), ('Downey', 613, '42.42940', '-112.12280'), ('Fort Hall', 3193, '43.00650', '-112.44730'), ('Hawkins', 348, '42.53000', '-112.33000'), ('Inkom', 738, '42.79690', '-112.24780'), ('Lava Hot Springs', 521, '42.62030', '-112.00960'), ('McCammon', 805, '42.64700', '-112.19230'), ('Pocatello', 51466, '42.87620', '-112.46850'), ('Portneuf', 738, '42.80000', '-112.35000'), ('Robin', 348, '42.58000', '-112.25000'), ('Swanlake', 53, '42.32000', '-112.00000'), ('Virginia', 348, '42.50000', '-112.17000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC007': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Alton', 0, '42.23000', '-111.15000'), ('Bennington', 0, '42.38000', '-111.32000'), ('Bern', 0, '42.33000', '-111.38000'), ('Bloomington', 251, '42.19090', '-111.40480'), ('Fish Haven', 0, '42.03000', '-111.38000'), ('Geneva', 0, '42.35000', '-111.07000'), ('Georgetown', 558, '42.47780', '-111.36500'), ('Liberty', 0, '42.32000', '-111.45000'), ('Lindsayville', 0, '42.42000', '-111.42000'), ('Montpelier', 2785, '42.32310', '-111.30090'), ('Nounan', 0, '42.47000', '-111.45000'), ('Ovid', 0, '42.28000', '-111.38000'), ('Paris', 576, '42.23000', '-111.40000'), ('Sharon', 0, '42.35000', '-111.47000'), ('St. Charles', 156, '42.11260', '-111.38920'), ('Wardboro', 0, '42.25000', '-111.27000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC009': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Chatcolet', 76, '47.35410', '-116.75250'), ('Emida', 2652, '47.10950', '-116.59150'), ('Plummer', 990, '47.32970', '-116.88410'), ('Sanders', 126, '47.10380', '-116.79050'), ('Santa', 2652, '47.15020', '-116.44220'), ('St. Joe', 2652, '47.30670', '-116.35120'), ('St. Maries', 2652, '47.31490', '-116.57060'), ('Tensed', 126, '47.15960', '-116.92340')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDC011': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Aberdeen', 1840, '42.94460', '-112.83700'), ('Atomic City', 25, '43.44430', '-112.81260'), ('Basalt', 419, '43.31440', '-112.16520'), ('Blackfoot', 10419, '43.19400', '-112.34490'), ('Firth', 408, '43.30560', '-112.18310'), ('Gibson', 3193, '43.08000', '-112.42000'), ('Goshen', 3813, '43.32000', '-112.08000'), ('Moreland', 10419, '43.22000', '-112.45000'), ('Pingree', 3193, '43.12000', '-112.62000'), ('Rockford', 3193, '43.18000', '-112.55000'), ('Rose', 10419, '43.25000', '-112.33000'), ('Shelley', 3813, '43.38020', '-112.12310'), ('Springfield', 1840, '43.08000', '-112.70000'), ('Sterling', 1840, '43.03000', '-112.75000'), ('Taber', 25, '43.32000', '-112.63000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC013': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bellevue', 1876, '43.46590', '-114.25740'), ('Carey', 513, '43.30000', '-113.95000'), ('Galena', 3003, '43.87000', '-114.65000'), ('Gannett', 1876, '43.35000', '-114.18000'), ('Hailey', 6200, '43.51170', '-114.29920'), ('Ketchum', 3003, '43.68880', '-114.37520'), ('Magic City', 1876, '43.28000', '-114.37000'), ('Picabo', 1876, '43.30000', '-114.07000'), ('Sun Valley', 1427, '43.68150', '-114.32840')], 'partOfState': 'central', 'wfo': 'PIH'}, +'IDC015': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Banks', 154, '44.08390', '-116.11500'), ('Centerville', 60, '43.91700', '-115.88300'), ('Crouch', 154, '44.11530', '-115.97160'), ('Gardena', 770, '43.98300', '-116.20000'), ('Garden Valley', 154, '44.09750', '-115.95780'), ('Horseshoe Bend', 770, '43.91300', '-116.19460'), ('Idaho City', 458, '43.84250', '-115.85110'), ('Lowman', 458, '44.06890', '-115.61500'), ('Pioneerville', 60, '43.95000', '-115.86700'), ('Placerville', 60, '43.94300', '-115.94480')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC017': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Blanchard', 1376, '48.01680', '-116.97630'), ('Cabinet', 530, '48.08400', '-116.07020'), ('Careywood', 676, '48.03420', '-116.63870'), ('Clark Fork', 530, '48.14790', '-116.17670'), ('Cocolalla', 342, '48.10480', '-116.60980'), ('Colburn', 441, '48.39170', '-116.53380'), ('Coolin', 1754, '48.47450', '-116.84230'), ('Dover', 342, '48.25360', '-116.60030'), ('East Hope', 200, '48.24180', '-116.29130'), ('Elmira', 441, '48.48750', '-116.45680'), ('Granite', 79, '48.08600', '-116.42150'), ('Granite', 676, '48.00630', '-116.66830'), ('Hope', 79, '48.24790', '-116.30660'), ('Kootenai', 441, '48.31070', '-116.51780'), ('Oldtown', 190, '48.18240', '-117.03400'), ('Ponderay', 638, '48.30120', '-116.53950'), ('Priest River', 1754, '48.18510', '-116.91010'), ('Sandpoint', 6835, '48.27990', '-116.55810')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDC019': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Ammon', 6187, '43.47960', '-111.96830'), ('Bone', 6187, '43.32000', '-111.80000'), ('Gray', 200, '43.05000', '-111.35000'), ('Herman', 157, '43.13000', '-111.43000'), ('Idaho Falls', 50730, '43.49290', '-112.03500'), ('Idaho Falls Arpt', 50730, '43.50000', '-112.04000'), ('Iona', 1201, '43.52850', '-111.92770'), ('Irwin', 157, '43.39750', '-111.26520'), ('Osgood', 50730, '43.57000', '-112.10000'), ('Ozone', 6187, '43.40000', '-111.85000'), ('Palisades', 157, '43.35000', '-111.22000'), ('Poplar', 545, '43.62000', '-111.68000'), ('Swan Valley', 213, '43.43980', '-111.31500'), ('Ucon', 943, '43.59420', '-111.95540')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC021': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bonners Ferry', 2515, '48.69170', '-116.31510'), ('Eastport', 656, '48.99300', '-116.17480'), ('Meadow Creek', 656, '48.81870', '-116.15350'), ('Moyie Springs', 656, '48.72480', '-116.19250'), ('Naples', 2515, '48.56930', '-116.38820'), ('Porthill', 2515, '48.99230', '-116.49150')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDC023': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Arco', 1026, '43.63410', '-113.29980'), ('Berenice', 76, '43.83000', '-112.99000'), ('Butte City', 76, '43.60640', '-113.23850'), ('Craters Of Moon', 29, '43.42000', '-113.53000'), ('Grouse', 29, '43.68000', '-113.62000'), ('Howe', 76, '43.78000', '-113.00000'), ('Moore', 196, '43.73410', '-113.36610')], 'partOfState': 'central', 'wfo': 'PIH'}, +'IDC025': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Blaine', 395, '43.35000', '-114.61700'), ('Corral', 395, '43.38300', '-114.96700'), ('Fairfield', 395, '43.34610', '-114.79210'), ('Hill City', 395, '43.29580', '-115.05280'), ('Selby', 395, '43.33300', '-114.71700'), ('Soldier', 395, '43.36700', '-114.80000')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC027': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Caldwell', 25967, '43.65830', '-116.67490'), ('Greenleaf', 862, '43.67230', '-116.82030'), ('Huston', 862, '43.61700', '-116.78300'), ('Melba', 439, '43.37390', '-116.52950'), ('Middleton', 2978, '43.70770', '-116.62400'), ('Nampa', 51867, '43.58000', '-116.56400'), ('Notus', 458, '43.72570', '-116.79980'), ('Parma', 1771, '43.78560', '-116.94050'), ('Wilder', 1462, '43.67660', '-116.90780')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC029': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bancroft', 382, '42.72020', '-111.88230'), ('Chesterfield', 382, '42.87000', '-111.88000'), ('Conda', 3381, '42.73000', '-111.52000'), ('Freedom', 341, '42.98000', '-111.05000'), ('Grace', 990, '42.57630', '-111.73000'), ('Hatch', 382, '42.82000', '-111.83000'), ('Henry', 3381, '42.90000', '-111.52000'), ('Lago', 0, '42.45000', '-111.68000'), ('Lund', 382, '42.65000', '-111.88000'), ('Niter', 990, '42.50000', '-111.72000'), ('Pebble', 521, '42.75000', '-112.02000'), ('Soda Springs', 3381, '42.65860', '-111.58550'), ('Wayan', 267, '42.98000', '-111.37000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC031': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Albion', 262, '42.41100', '-113.58010'), ('Almo', 0, '42.10000', '-113.63000'), ('Basin', 668, '42.25000', '-113.78000'), ('Bridge', 0, '42.13000', '-113.33000'), ('Burley', 9316, '42.53890', '-113.78790'), ('Churchill', 668, '42.35000', '-113.92000'), ('Conant', 177, '42.27000', '-113.45000'), ('Declo', 338, '42.51930', '-113.62810'), ('Elba', 262, '42.25000', '-113.55000'), ('Heglar', 177, '42.47000', '-113.15000'), ('Idahome', 177, '42.42000', '-113.38000'), ('Keogh', 177, '42.22000', '-113.33000'), ('Locust', 668, '42.27000', '-113.87000'), ('Malta', 177, '42.30760', '-113.36970'), ('Marion', 668, '42.28000', '-113.90000'), ('Oakley', 668, '42.24240', '-113.88010'), ('Sublett', 177, '42.32000', '-113.13000'), ('View', 338, '42.45000', '-113.68000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC033': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Dubois', 647, '44.17350', '-112.22940'), ('Humphrey', 38, '44.48000', '-112.23000'), ('Idmon', 38, '44.37000', '-111.90000'), ('Kilgore', 38, '44.40000', '-111.88000'), ('Small', 647, '44.22000', '-112.38000'), ('Spencer', 38, '44.38080', '-112.18640')], 'partOfState': 'eastern', 'wfo': 'PIH'}, +'IDC035': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Ahsahka', 3247, '46.50222', '-116.32306'), ('Cardiff', 617, '46.57444', '-115.81139'), ('Dent', 3247, '46.62389', '-116.20222'), ('Elk River', 156, '46.78361', '-116.17889'), ('Greer', 3247, '46.39000', '-116.17417'), ('Headquarters', 617, '46.63000', '-115.80833'), ('Jaype', 617, '46.53028', '-115.82889'), ('Musselshell', 617, '46.35722', '-115.74278'), ('Orofino', 3247, '46.47944', '-116.25417'), ('Pierce', 617, '46.49111', '-115.79806'), ('Riverside', 3247, '46.49556', '-116.29639'), ('Teakean', 186, '46.55111', '-116.37972'), ('Weippe', 416, '46.37611', '-115.93722')], 'partOfState': 'panhandle', 'wfo': 'MSO'}, +'IDC037': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Challis', 909, '44.50770', '-114.22390'), ('Chilly', 566, '44.08000', '-113.87000'), ('Clayton', 27, '44.25910', '-114.39850'), ('Custer', 100, '44.38000', '-114.68000'), ('Darlington', 196, '43.82000', '-113.42000'), ('Dickey', 566, '44.13000', '-113.90000'), ('Goldburg', 90, '44.38000', '-113.63000'), ('Lost River', 29, '43.72190', '-113.54410'), ('Mackay', 566, '43.91200', '-113.61090'), ('Obsidian', 100, '44.00000', '-114.83000'), ('Stanley', 100, '44.21580', '-114.93700'), ('Sunbeam', 100, '44.27000', '-114.73000')], 'partOfState': 'central', 'wfo': 'PIH'}, +'IDC039': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Anderson Dam', 11143, '43.35000', '-115.45000'), ('Atlanta', 100, '43.79470', '-115.11780'), ('Featherville', 395, '43.61500', '-115.26690'), ('Glenns Ferry', 1611, '42.95400', '-115.29990'), ('Hammett', 1611, '42.94000', '-115.47000'), ('Mountain Home', 11143, '43.13830', '-115.68870'), ('Mountain Home AFB', 5936, '43.04960', '-115.86550'), ('Pine', 11143, '43.48080', '-115.31500'), ('Prairie', 11143, '43.50000', '-115.58330')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC041': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Banida', 0, '42.23000', '-111.93000'), ('Clifton', 213, '42.18770', '-112.00510'), ('Dayton', 444, '42.11300', '-111.97640'), ('Franklin', 641, '42.01610', '-111.80230'), ('Mapleton', 0, '42.08000', '-111.75000'), ('Mink Creek', 0, '42.23000', '-111.72000'), ('Oxford', 53, '42.25980', '-112.01660'), ('Preston', 4682, '42.09730', '-111.87450'), ('Riverdale', 0, '42.17000', '-111.83000'), ('Thatcher', 0, '42.42000', '-111.72000'), ('Weston', 425, '42.03840', '-111.97710'), ('Whitney', 0, '42.07000', '-111.83000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC043': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Ashton', 1129, '44.07340', '-111.44860'), ('Big Springs', 215, '44.50000', '-111.25000'), ('Chester', 3342, '44.00000', '-111.57000'), ('Drummond', 15, '43.99890', '-111.34160'), ('Egin', 319, '43.93000', '-111.83000'), ('Island Park', 215, '44.55690', '-111.33700'), ('Macks Inn', 215, '44.50000', '-111.33000'), ('Marysville', 1129, '44.07000', '-111.42000'), ('Newdale', 358, '43.88610', '-111.60410'), ('Parker', 319, '43.95860', '-111.75840'), ('Rea', 215, '44.47000', '-111.43000'), ('Squirrel', 15, '44.03000', '-111.30000'), ('St. Anthony', 3342, '43.96620', '-111.68370'), ('Teton', 569, '43.88780', '-111.66850'), ('Warm River', 10, '44.11960', '-111.32270')], 'partOfState': 'south central', 'wfo': 'PIH'}, +'IDC045': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Emmett', 5490, '43.87390', '-116.49390'), ('Ola', 770, '44.17970', '-116.28080'), ('Sweet', 770, '43.96470', '-116.31500')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC047': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bliss', 275, '42.92620', '-114.94910'), ('Gooding', 3384, '42.93810', '-114.71260'), ('Hagerman', 656, '42.81700', '-114.89670'), ('Wendell', 2338, '42.77610', '-114.70180')], 'partOfState': 'south central', 'wfo': 'BOI'}, +'IDC049': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Burgdorf', 2084, '45.27722', '-115.91194'), ('Canfield', 106, '45.83778', '-116.37083'), ('Clearwater', 226, '46.02250', '-115.89000'), ('Copperville', 106, '45.75306', '-116.32333'), ('Cottonwood', 944, '46.04861', '-116.34861'), ('East Kamiah', 1160, '46.20278', '-116.00694'), ('Elk City', 226, '45.82694', '-115.43583'), ('Fall Creek', 226, '45.81222', '-115.65167'), ('Fenn', 944, '45.96333', '-116.25528'), ('Ferdinand', 145, '46.15250', '-116.38833'), ('Glenwood', 416, '46.24417', '-115.83194'), ('Golden', 226, '45.81222', '-115.67889'), ('Grangeville', 3328, '45.92667', '-116.12139'), ('Harpster', 226, '45.98667', '-115.96250'), ('Keuterville', 944, '46.03417', '-116.44056'), ('Kooskia', 675, '46.14500', '-115.97694'), ('Lowell', 675, '46.14417', '-115.59472'), ('Lucile', 410, '45.53528', '-116.30944'), ('Mackay Bar', 2084, '45.37611', '-115.50528'), ('Newsome', 226, '45.90750', '-115.62917'), ('Orogrande', 226, '45.70556', '-115.54250'), ('Pardee', 1160, '46.29861', '-116.12444'), ('Pollock', 410, '45.31250', '-116.35806'), ('Powell', 354, '46.57917', '-114.71778'), ('Red River Hot Spring', 226, '45.78778', '-115.19917'), ('Riggins', 410, '45.42222', '-116.31444'), ('Riggins Hot Spring', 410, '45.41694', '-116.17083'), ('Slate Creek', 106, '45.63833', '-116.27944'), ('Stites', 226, '46.09167', '-115.97528'), ('Syringa', 675, '46.15083', '-115.72611'), ('Warren', 2084, '45.26417', '-115.67556'), ('White Bird', 106, '45.76167', '-116.29972'), ('Winona', 1160, '46.13222', '-116.10694'), ('Woodland', 1160, '46.31111', '-116.06750')], 'partOfState': 'central', 'wfo': 'MSO'}, +'IDC051': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Camas', 12, '44.00000', '-112.22000'), ('Hamer', 12, '43.92570', '-112.20370'), ('Lewisville', 467, '43.69490', '-112.01400'), ('Lorenzo', 2998, '43.73000', '-111.88000'), ('Menan', 707, '43.72200', '-111.99410'), ('Monteview', 270, '43.93000', '-112.53000'), ('Mud Lake', 270, '43.84260', '-112.47910'), ('Rigby', 2998, '43.67390', '-111.91550'), ('Ririe', 545, '43.63130', '-111.77340'), ('Roberts', 647, '43.72070', '-112.12680'), ('Terreton', 270, '43.83000', '-112.43000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC053': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Eden', 411, '42.60520', '-114.20870'), ('Hazelton', 687, '42.59480', '-114.13430'), ('Jerome', 7780, '42.72570', '-114.51570')], 'partOfState': 'south central', 'wfo': 'BOI'}, +'IDC055': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Athol', 676, '47.94510', '-116.70650'), ('Bayview', 676, '47.97480', '-116.55550'), ('Chilco', 494, '47.85830', '-116.74070'), ("Coeur D'alene", 34514, '47.69780', '-116.78480'), ('Dalton Gardens', 2278, '47.73350', '-116.76690'), ('Fernan Lake Village', 186, '47.67330', '-116.74700'), ('Harrison', 267, '47.45240', '-116.78040'), ('Hauser', 668, '47.76970', '-117.01180'), ('Hayden', 9159, '47.76020', '-116.78850'), ('Hayden Lake', 494, '47.76580', '-116.75280'), ('Huetter', 96, '47.70390', '-116.84780'), ('Laclede', 676, '47.96880', '-116.75200'), ('Medimont', 2652, '47.47230', '-116.60200'), ('Post Falls', 17247, '47.71250', '-116.94460'), ('Rathdrum', 4816, '47.81170', '-116.88870'), ('Rose Lake', 1661, '47.53670', '-116.46920'), ('Spirit Lake', 1376, '47.96800', '-116.86970'), ('State Line', 31, '47.70620', '-117.03510'), ('Worley', 223, '47.40130', '-116.91840')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDC057': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bovill', 305, '46.85830', '-116.39330'), ('Deary', 552, '46.80060', '-116.55650'), ('Genesee', 946, '46.55120', '-116.92800'), ('Harvard', 230, '46.91720', '-116.72380'), ('Helmer', 552, '46.80050', '-116.46820'), ('Joel', 798, '46.70630', '-116.87280'), ('Juliaetta', 609, '46.57460', '-116.70790'), ('Kendrick', 369, '46.61390', '-116.65210'), ('Moscow', 21291, '46.72980', '-116.99680'), ('Onaway', 230, '46.92870', '-116.88810'), ('Potlatch', 791, '46.92320', '-116.89790'), ('Princeton', 915, '46.90850', '-117.02080'), ('Troy', 798, '46.73870', '-116.76800'), ('Viola', 915, '46.83650', '-117.02080')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDC059': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Baker', 3122, '45.09472', '-113.73361'), ('Carmen', 3122, '45.24250', '-113.89250'), ('Cobalt', 3122, '45.09306', '-114.23083'), ('Ellis', 909, '44.69194', '-114.04750'), ('Gibbonsville', 3122, '45.55556', '-113.92222'), ('Gilmore', 90, '44.45889', '-113.26889'), ('Leadore', 90, '44.68028', '-113.35722'), ('Leesburg', 3122, '45.22389', '-114.11306'), ('Lemhi', 90, '44.85167', '-113.61889'), ('May', 909, '44.60444', '-113.91111'), ('Nicholia', 90, '44.36000', '-113.01083'), ('North Fork', 3122, '45.40611', '-113.99306'), ('Patterson', 90, '44.52361', '-113.71139'), ('Salmon', 3122, '45.17583', '-113.89500'), ('Shoup', 3122, '45.37694', '-114.27611'), ('Tendoy', 3122, '44.95944', '-113.64389'), ('Williams Lake', 3122, '45.01194', '-113.96500'), ('Yellowjacket', 909, '44.97972', '-114.53083')], 'partOfState': 'east central', 'wfo': 'MSO'}, +'IDC061': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Craigmont', 556, '46.24280', '-116.47130'), ('Kamiah', 1160, '46.22690', '-116.02770'), ('Mohler', 523, '46.28720', '-116.34050'), ('Nezperce', 523, '46.23360', '-116.23880'), ('Reubens', 72, '46.32220', '-116.54110'), ('Winchester', 308, '46.24110', '-116.62240')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'IDC063': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Dietrich', 150, '42.91370', '-114.26400'), ('Kimama', 998, '42.83000', '-113.78000'), ('Owinza', 412, '42.90000', '-114.05000'), ('Richfield', 412, '43.05230', '-114.15510'), ('Shoshone', 1398, '42.93620', '-114.40460')], 'partOfState': 'south central', 'wfo': 'PIH'}, +'IDC065': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Archer', 545, '43.72000', '-111.78000'), ('Herbert', 545, '43.70000', '-111.67000'), ('Moody', 358, '43.83000', '-111.63000'), ('Plano', 17257, '43.88000', '-111.88000'), ('Rexburg', 17257, '43.82520', '-111.78740'), ('Sugar City', 1242, '43.87240', '-111.74650'), ('Thornton', 17257, '43.75000', '-111.85000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC067': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Acequia', 144, '42.66850', '-113.59560'), ('Heyburn', 2899, '42.55580', '-113.76090'), ('Minidoka', 129, '42.75400', '-113.48900'), ('Paul', 998, '42.60640', '-113.78240'), ('Rupert', 5645, '42.61810', '-113.67370')], 'partOfState': 'south central', 'wfo': 'PIH'}, +'IDC069': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Culdesac', 378, '46.37500', '-116.66940'), ('Gifford', 72, '46.43930', '-116.55330'), ('Lapwai', 1134, '46.40470', '-116.80340'), ('Lenore', 186, '46.50520', '-116.55000'), ('Lewiston', 30904, '46.39290', '-116.99220'), ('Peck', 186, '46.47390', '-116.42410'), ('Southwick', 186, '46.60350', '-116.47200'), ('Spalding', 186, '46.44683', '-116.81700'), ('Waha', 1134, '46.20800', '-116.85070')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'IDC071': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Black Pine', 0, '42.02000', '-112.98000'), ('Buist', 2158, '42.33000', '-112.43000'), ('Cherry Creek', 2158, '42.10000', '-112.23000'), ('Holbrook', 251, '42.17000', '-112.65000'), ('Malad City', 2158, '42.18950', '-112.24910'), ('Pleasantview', 2158, '42.18000', '-112.35000'), ('Ridgedale', 0, '42.02000', '-112.48000'), ('Samaria', 2158, '42.12000', '-112.33000'), ('Stone', 251, '42.02000', '-112.70000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC073': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bruneau', 5936, '42.86580', '-115.78080'), ('Grand View', 470, '42.98350', '-116.09000'), ('Grasmere', 908, '42.38330', '-115.88330'), ('Homedale', 2528, '43.61810', '-116.93590'), ('Hot Spring', 5936, '42.78330', '-115.70000'), ('Marsing', 890, '43.54560', '-116.80680'), ('Murphy', 439, '43.21690', '-116.54470'), ('Murphy Hot Springs', 277, '42.03330', '-115.36670'), ('Oreana', 470, '43.05000', '-116.35000'), ('Reynolds', 439, '43.20000', '-116.73330'), ('Riddle', 908, '42.19000', '-116.11000'), ('Silver City', 364, '43.01700', '-116.73330'), ('Three Creek', 277, '42.06670', '-115.15000')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC075': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Fruitland', 3805, '44.01800', '-116.92010'), ('New Plymouth', 1400, '43.97080', '-116.81800'), ('Payette', 7054, '44.07700', '-116.92900')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC077': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('American Falls', 4111, '42.78200', '-112.85380'), ('Arbon Valley', 627, '42.88390', '-112.59780'), ('Cold Water', 316, '42.62000', '-113.12000'), ('Crystal', 51466, '42.63000', '-112.48000'), ('Michaud', 613, '42.93000', '-112.57000'), ('Neeley', 4111, '42.73000', '-112.88000'), ('Pocatello Arpt', 613, '42.92000', '-112.60000'), ('Rockland', 316, '42.57360', '-112.87420'), ('Roy', 316, '42.37000', '-112.82000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDC079': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Avery', 840, '47.25030', '-115.80250'), ('Calder', 215, '47.27330', '-116.18750'), ('Cataldo', 1661, '47.54270', '-116.32230'), ('Clarkia', 305, '47.00650', '-116.25120'), ('Kellogg', 2395, '47.53930', '-116.13530'), ('Kingston', 1661, '47.54280', '-116.26850'), ('Mullan', 840, '47.46910', '-115.79400'), ('Murray', 960, '47.62300', '-115.85450'), ('Osburn', 1545, '47.50590', '-115.99960'), ('Pinehurst', 1661, '47.53560', '-116.23340'), ('Prichard', 1545, '47.65380', '-115.97180'), ('Smelterville', 651, '47.54240', '-116.17650'), ('Wallace', 960, '47.47290', '-115.92230'), ('Wardner', 215, '47.52030', '-116.13400')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDC081': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Clementsville', 15, '43.87000', '-111.37000'), ('Driggs', 1100, '43.72530', '-111.10710'), ('Felt', 247, '43.87000', '-111.18000'), ('Judkins', 247, '43.92000', '-111.15000'), ('Tetonia', 247, '43.81590', '-111.15880'), ('Victor', 840, '43.60370', '-111.11330')], 'partOfState': 'eastern', 'wfo': 'PIH'}, +'IDC083': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Buhl', 3985, '42.59860', '-114.76070'), ('Castleford', 277, '42.52130', '-114.87110'), ('Filer', 1620, '42.56890', '-114.60890'), ('Hansen', 970, '42.53130', '-114.30070'), ('Hollister', 237, '42.35380', '-114.58720'), ('Kimberly', 2614, '42.53420', '-114.36450'), ('Murtaugh', 139, '42.49190', '-114.16020'), ('Rogerson', 237, '42.21780', '-114.59190'), ('Twin Falls', 34469, '42.56150', '-114.46280')], 'partOfState': 'south central', 'wfo': 'BOI'}, +'IDC085': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Big Creek', 2084, '45.13330', '-115.31670'), ('Cascade', 997, '44.51300', '-116.04070'), ('Deadwood Reservoir', 154, '44.30000', '-115.66670'), ('Donnelly', 138, '44.73030', '-116.07590'), ('McCall', 2084, '44.91340', '-116.10750'), ('Smiths Ferry', 154, '44.29890', '-116.08000'), ('Warm Lake', 997, '44.64780', '-115.66890'), ('Yellow Pine', 338, '44.90000', '-115.48330')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDC087': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Cambridge', 360, '44.57260', '-116.67590'), ('Midvale', 176, '44.47060', '-116.73310'), ('Weiser', 5343, '44.25080', '-116.96670')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'ILC001': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adams', 1066, '39.86540', '-91.19830'), ('Beverly', 265, '39.79340', '-90.99100'), ('Burton', 1066, '39.90460', '-91.25120'), ('Camp Point', 1244, '40.03800', '-91.06660'), ('Chatton', 60, '40.15090', '-91.03290'), ('Clayton', 904, '40.03030', '-90.95800'), ('Coatsburg', 226, '40.03230', '-91.15940'), ('Columbus', 112, '39.98810', '-91.14650'), ('Fall Creek', 1066, '39.77900', '-91.30220'), ('Fowler', 883, '40.00780', '-91.25840'), ('Golden', 629, '40.10970', '-91.01840'), ('Kellerville', 127, '39.93120', '-90.93450'), ('Kingston', 519, '39.81670', '-91.02880'), ('La Prairie', 60, '40.14710', '-91.00270'), ('Liberty', 519, '39.88080', '-91.10800'), ('Lima', 159, '40.17670', '-91.37500'), ('Loraine', 363, '40.15320', '-91.22220'), ('Marblehead', 40366, '39.83980', '-91.36850'), ('Mendon', 883, '40.08910', '-91.28430'), ('Meyer', 2623, '40.14810', '-91.49650'), ('Paloma', 226, '40.02290', '-91.19520'), ('Payson', 1066, '39.81680', '-91.24410'), ('Plainville', 248, '39.78400', '-91.18160'), ('Quincy', 40366, '39.93350', '-91.38860'), ('Richfield', 519, '39.81540', '-91.11650'), ('Ursa', 595, '40.07460', '-91.37060'), ('Woodville', 363, '40.18840', '-91.18290')], 'partOfState': 'west central', 'wfo': 'LSX'}, +'ILC003': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cairo', 3632, '36.99760', '-89.17760'), ('East Cape Girardea', 437, '37.29020', '-89.48300'), ('Tamms', 724, '37.23920', '-89.26760'), ('Thebes', 478, '37.21080', '-89.45320')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC005': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Beaver Creek', 481, '38.76760', '-89.39370'), ('Dudleyville', 6955, '38.82390', '-89.41820'), ('Greenville', 6955, '38.88930', '-89.40160'), ('Mulberry Grove', 671, '38.92440', '-89.26730'), ('Old Ripley', 127, '38.89230', '-89.57300'), ('Pierron', 653, '38.77890', '-89.56630'), ('Pleasant Mound', 200, '38.86310', '-89.29040'), ('Pocahontas', 727, '38.82450', '-89.53900'), ('Reno', 323, '38.96700', '-89.51700'), ('Shiloh Hill', 127, '38.92530', '-89.62110'), ('Smithboro', 200, '38.89490', '-89.34110'), ('Sorento', 601, '39.00000', '-89.57270'), ('Tamalco', 481, '38.77090', '-89.29160'), ('Woburn', 200, '38.95870', '-89.34660')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILC007': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belvidere', 20820, '42.25260', '-88.84830'), ('Capron', 961, '42.39890', '-88.74260'), ('Poplar Grove', 1368, '42.36730', '-88.82290')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILC009': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Buckhorn', 127, '39.93300', '-90.83300'), ('Coopertown', 103, '39.96400', '-90.60650'), ('La Grange', 1041, '39.94180', '-90.53810'), ('Mound Station', 127, '40.00670', '-90.87310'), ('Mount Sterling', 2070, '39.98470', '-90.76370'), ('Ripley', 103, '40.02500', '-90.63770'), ('Versailles', 567, '39.88380', '-90.65890')], 'partOfState': 'west central', 'wfo': 'LSX'}, +'ILC011': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Arlington', 211, '41.47120', '-89.24820'), ('Buda', 592, '41.32770', '-89.67840'), ('Bureau', 360, '41.28780', '-89.36430'), ('Cherry', 509, '41.42960', '-89.21360'), ('Coal Hollow', 343, '41.36670', '-89.36670'), ('Dalzell', 717, '41.35810', '-89.17560'), ('Depue', 1842, '41.32970', '-89.29580'), ('Dover', 172, '41.43420', '-89.39570'), ('Hollowayville', 90, '41.36490', '-89.29450'), ('Kasbeer', 540, '41.50000', '-89.46670'), ('Ladd', 1313, '41.38270', '-89.21430'), ('La Moille', 773, '41.53010', '-89.28090'), ('Lone Tree Corners', 787, '41.18330', '-89.48330'), ('Malden', 343, '41.42490', '-89.37020'), ('Manlius', 355, '41.45570', '-89.66800'), ('Milo', 787, '41.20000', '-89.58330'), ('Mineral', 272, '41.38190', '-89.83650'), ('Neponset', 519, '41.29710', '-89.79020'), ('New Bedford', 95, '41.51170', '-89.71730'), ('Normandy', 48, '41.56670', '-89.65000'), ('Ohio', 540, '41.55690', '-89.45950'), ('Ottville', 303, '41.35000', '-89.26660'), ('Princeton', 7501, '41.37840', '-89.46680'), ('Providence', 1028, '41.28330', '-89.60000'), ('Seatonville', 303, '41.36380', '-89.27290'), ('Sheffield', 946, '41.35700', '-89.73960'), ('Spring Valley', 5398, '41.32610', '-89.19900'), ('Spring Valley Airport', 5398, '41.33330', '-89.21660'), ('Thomas', 162, '41.51660', '-89.81670'), ('Tiskilwa', 787, '41.29270', '-89.50780'), ('Van Orin', 773, '41.55000', '-89.35000'), ('Walnut', 1461, '41.55680', '-89.59110'), ('Wyanet', 1028, '41.36010', '-89.58380'), ('Yorktown', 162, '41.56670', '-89.85000'), ('Zearing', 343, '41.45000', '-89.31670')], 'partOfState': 'north central', 'wfo': 'DVN'}, +'ILC013': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Batchtown', 218, '39.03290', '-90.65400'), ('Beechville', 218, '38.97150', '-90.64760'), ('Belleview', 408, '39.35090', '-90.78120'), ('Brussels', 141, '38.95100', '-90.58880'), ('Deer Plain', 141, '38.92980', '-90.53280'), ('Golden Eagle', 141, '38.89230', '-90.57940'), ('Hamburg', 126, '39.23280', '-90.71560'), ('Hardin', 959, '39.15740', '-90.62310'), ('Kampsville', 302, '39.30970', '-90.62520'), ('Meppen', 141, '38.99570', '-90.60680'), ('Michael', 302, '39.23520', '-90.62210'), ('Mozier', 126, '39.29250', '-90.75150')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC015': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Argo Fay', 559, '42.00000', '-90.01670'), ('Center Hill', 1832, '42.08330', '-90.05000'), ('Chadwick', 505, '42.01410', '-89.88890'), ('Fairhaven', 505, '41.95000', '-89.93330'), ('Hitt', 1016, '42.00000', '-89.73330'), ('Ideal', 505, '41.98330', '-89.98330'), ('Lanark', 1584, '42.10280', '-89.83210'), ('Milledgeville', 1016, '41.96380', '-89.77560'), ('Mississippi Palisades', 3542, '42.13330', '-90.16670'), ('Mount Carroll', 1832, '42.09540', '-89.97690'), ('Savanna', 3542, '42.09000', '-90.13990'), ('Shannon', 854, '42.15200', '-89.74010'), ('Thomson', 559, '41.95750', '-90.10320'), ('Wacker', 1832, '42.05000', '-90.05000')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILC017': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Arenzville', 419, '39.88500', '-90.37200'), ('Ashland', 1361, '39.88870', '-90.00870'), ('Beardstown', 5766, '40.01240', '-90.43000'), ('Bluff Springs', 5766, '39.98000', '-90.37100'), ('Chandlerville', 704, '40.04820', '-90.15070'), ('Newmansville', 638, '40.00000', '-90.01670'), ('Philadelphia', 1728, '39.91670', '-90.11670'), ('Virginia', 1728, '39.95080', '-90.21130')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILC019': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Broadlands', 312, '39.90850', '-87.99540'), ('Champaign', 67518, '40.11300', '-88.26490'), ('Fisher', 1647, '40.31580', '-88.34850'), ('Foosland', 90, '40.36040', '-88.42870'), ('Gifford', 815, '40.30640', '-88.02160'), ('Homer', 1200, '40.03190', '-87.95890'), ('Ivesdale', 288, '39.94510', '-88.45700'), ('Lake Of The Woods', 3026, '40.20650', '-88.36860'), ('Longview', 153, '39.88550', '-88.06650'), ('Ludlow', 324, '40.38620', '-88.12610'), ('Mahomet', 4877, '40.19380', '-88.40180'), ('Ogden', 743, '40.11550', '-87.95580'), ('Pesotum', 521, '39.91290', '-88.27410'), ('Philo', 1314, '40.00310', '-88.15800'), ('Rantoul', 12857, '40.30340', '-88.15550'), ('Royal', 279, '40.19200', '-87.97130'), ('Sadorus', 426, '39.96700', '-88.34540'), ('Savoy', 4476, '40.06500', '-88.25270'), ('Seymour', 354, '40.10000', '-88.41670'), ('Sidney', 1062, '40.02440', '-88.07180'), ('St. Joseph', 2912, '40.11270', '-88.04060'), ('Thomasboro', 1233, '40.24400', '-88.18690'), ('Tolono', 2700, '39.98630', '-88.26300'), ('Urbana', 36395, '40.10850', '-88.20520')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC021': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Assumption', 1261, '39.51800', '-89.04840'), ('Edinburg', 1135, '39.65780', '-89.38960'), ('Kincaid', 1441, '39.58870', '-89.41430'), ('Morrisonville', 1068, '39.42120', '-89.45780'), ('Mount Auburn', 515, '39.76590', '-89.26100'), ('Owaneco', 256, '39.48140', '-89.19440'), ('Palmer', 248, '39.45840', '-89.40790'), ('Pana', 5614, '39.38660', '-89.07850'), ('Roby', 456, '39.74000', '-89.39820'), ('Sharpsburg', 1135, '39.61670', '-89.35000'), ('Sicily', 533, '39.60000', '-89.50000'), ('Stonington', 960, '39.63910', '-89.19220'), ('Taylorville', 11427, '39.52150', '-89.26220'), ('Vanderville', 82, '39.42120', '-89.26220'), ('Willeys', 960, '39.60000', '-89.23330')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC023': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Casey', 2942, '39.30260', '-87.98930'), ('Clarksville', 3771, '39.45000', '-87.80000'), ('Dennison', 239, '39.46670', '-87.58330'), ('Marshall', 3771, '39.39620', '-87.69020'), ('Martinsville', 1225, '39.33620', '-87.88020'), ('Orange', 1225, '39.20000', '-87.84000'), ('Westfield', 678, '39.45550', '-87.99690'), ('West Union', 568, '39.21670', '-87.66670')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC025': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bible Grove', 1242, '38.86670', '-88.43330'), ('Clay City', 1000, '38.68550', '-88.35120'), ('Flora', 5086, '38.67050', '-88.47880'), ('Hord', 1242, '38.88330', '-88.51670'), ('Ingraham', 128, '38.83330', '-88.33330'), ('Iola', 171, '38.83460', '-88.62770'), ('Louisville', 1242, '38.76950', '-88.50730'), ('Oskaloosa', 171, '38.75000', '-88.65000'), ('Sailor Springs', 128, '38.76480', '-88.35870'), ('Wendelin', 128, '38.83330', '-88.28330'), ('Xenia', 407, '38.63680', '-88.63710')], 'partOfState': 'south central', 'wfo': 'ILX'}, +'ILC027': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Albers', 878, '38.54480', '-89.61510'), ('Aviston', 1231, '38.60780', '-89.60620'), ('Bartelso', 593, '38.53650', '-89.46840'), ('Beckemeyer', 1043, '38.60510', '-89.43400'), ('Boulder', 481, '38.70000', '-89.21700'), ('Breese', 4048, '38.61100', '-89.52220'), ('Carlyle', 3406, '38.61900', '-89.37220'), ('Damiansville', 368, '38.50950', '-89.62420'), ('Ferrin', 196, '38.60950', '-89.23340'), ('Germantown', 1118, '38.55230', '-89.53760'), ('Hoffman', 460, '38.53840', '-89.26290'), ('Huey', 196, '38.60540', '-89.29140'), ('Jamestown', 653, '38.73400', '-89.51450'), ('Keyesport', 481, '38.74070', '-89.27700'), ('New Baden', 3001, '38.53640', '-89.69770'), ('New Memphis', 3001, '38.47930', '-89.67840'), ('Posey', 3406, '38.53700', '-89.35260'), ('Shattuc', 1434, '38.61070', '-89.19290'), ('Stolletown', 1043, '38.69340', '-89.44680'), ('St. Rose', 4048, '38.68300', '-89.55000'), ('Trenton', 2610, '38.60670', '-89.68160')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILC029': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ashmore', 809, '39.53110', '-88.02040'), ('Charleston', 21039, '39.48480', '-88.17610'), ('Coles', 259, '39.51670', '-88.46670'), ('Cooks Mill', 481, '39.58330', '-88.41670'), ('Humboldt', 481, '39.60510', '-88.31950'), ('Hutton', 678, '39.40000', '-88.06670'), ('Lerna', 322, '39.41790', '-88.28890'), ('Mattoon', 18291, '39.47700', '-88.36880'), ('Oakland', 996, '39.65770', '-88.02660'), ('Paradise', 259, '39.41670', '-88.45000'), ('Rardin', 361, '39.60000', '-88.10000'), ('Trilla', 322, '39.38330', '-88.35000')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC031': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alsip', 19725, '41.67030', '-87.73580'), ('Arlington Heights', 76031, '42.09490', '-87.98200'), ('Barrington', 10168, '42.15180', '-88.12920'), ('Barrington Hills', 3915, '42.13370', '-88.21120'), ('Bedford Park', 574, '41.76980', '-87.79800'), ('Bellwood', 20535, '41.88290', '-87.87630'), ('Berkeley', 5245, '41.88840', '-87.91230'), ('Berwyn', 54016, '41.84240', '-87.79100'), ('Blue Island', 23463, '41.65840', '-87.68140'), ('Bridgeport', 2168, '41.80000', '-87.67000'), ('Bridgeview', 15335, '41.73880', '-87.80590'), ('Broadview', 8264, '41.85800', '-87.85590'), ('Brookfield', 19085, '41.82430', '-87.84780'), ('Burbank', 27902, '41.74410', '-87.76900'), ('Burnham', 4170, '41.63820', '-87.54120'), ('Calumet City', 39071, '41.61180', '-87.54950'), ('Calumet Park', 8516, '41.66410', '-87.65640'), ('Chatham', 8516, '41.73000', '-87.62000'), ('Chicago', 2896016, '41.88000', '-87.63000'), ('Chicago Heights', 32776, '41.50990', '-87.63760'), ('Chicago Ridge', 14127, '41.70240', '-87.77860'), ('Cicero', 85616, '41.84430', '-87.75990'), ('Country Club Hills', 16169, '41.56320', '-87.72530'), ('Countryside', 5991, '41.77660', '-87.87660'), ('Crestwood', 11251, '41.64520', '-87.74030'), ('Des Plaines', 58720, '42.03460', '-87.90090'), ('Dixmoor', 3934, '41.63190', '-87.66800'), ('Dolton', 25614, '41.62930', '-87.59870'), ('Douglas Park', 2896016, '41.85000', '-87.68000'), ('East Hazel Crest', 1607, '41.57630', '-87.64970'), ('Elk Grove Village', 34727, '42.00570', '-87.99260'), ('Elmwood Park', 25405, '41.92240', '-87.81650'), ('Englewood', 20821, '41.77000', '-87.68000'), ('Evanston', 74239, '42.04630', '-87.69450'), ('Evergreen Park', 20821, '41.72110', '-87.70110'), ('Flossmoor', 9301, '41.53930', '-87.68420'), ('Ford Heights', 3456, '41.50960', '-87.58900'), ('Forest Park', 15688, '41.86910', '-87.81480'), ('Forest View', 778, '41.80660', '-87.78100'), ('Franklin Park', 19434, '41.93540', '-87.87820'), ('Glencoe', 8762, '42.13460', '-87.76340'), ('Glenview', 41847, '42.07960', '-87.81520'), ('Glenwood', 9000, '41.54610', '-87.61700'), ('Golf', 451, '42.05880', '-87.78650'), ('Harvey', 30000, '41.60730', '-87.65190'), ('Harwood Heights', 8297, '41.96610', '-87.80550'), ('Hazel Crest', 14816, '41.57230', '-87.68940'), ('Hickory Hills', 13926, '41.72380', '-87.82820'), ('Hillside', 8155, '41.87100', '-87.89860'), ('Hodgkins', 2134, '41.77080', '-87.85630'), ('Hoffman Estates', 49495, '42.06450', '-88.13830'), ('Hometown', 4467, '41.73220', '-87.73130'), ('Homewood', 19543, '41.55840', '-87.66110'), ('Humboldt Park', 2896016, '41.90000', '-87.70000'), ('Hyde Park', 2896016, '41.79000', '-87.59000'), ('Indian Head Park', 3685, '41.76760', '-87.89750'), ('Inverness', 6749, '42.11510', '-88.10080'), ('Justice', 12193, '41.74640', '-87.83550'), ('Kenilworth', 2494, '42.08890', '-87.71490'), ('La Grange', 15608, '41.80790', '-87.87340'), ('La Grange Park', 13295, '41.83160', '-87.87160'), ('Lakeview', 2896016, '41.94000', '-87.65000'), ('Lansing', 28332, '41.56750', '-87.54570'), ('Lemont', 13098, '41.67010', '-87.99150'), ('Lincoln Park', 2896016, '41.93000', '-87.63950'), ('Lincolnwood', 12359, '42.00590', '-87.73280'), ('Logan Square', 2896016, '41.93000', '-87.71000'), ('Lynwood', 7377, '41.52640', '-87.54200'), ('Lyons', 10255, '41.81170', '-87.81860'), ('Markham', 12620, '41.59920', '-87.69120'), ('Matteson', 12928, '41.51100', '-87.73750'), ('Maywood', 26987, '41.88020', '-87.84450'), ('McCook', 254, '41.79280', '-87.83580'), ('Meigs Field', 2896016, '41.86000', '-87.61490'), ('Melrose Park', 23171, '41.90310', '-87.86340'), ('Merrionette Park', 1999, '41.68030', '-87.69970'), ('Midlothian', 14315, '41.62630', '-87.72430'), ('Midway Airport', 778, '41.78300', '-87.75000'), ('Montrose Harbor', 74239, '41.96000', '-87.64000'), ('Morton Grove', 22451, '42.04230', '-87.78900'), ('Mount Prospect', 56265, '42.06540', '-87.93750'), ('Navy Pier', 2896016, '41.89000', '-87.62000'), ('Niles', 30068, '42.02690', '-87.80950'), ('Norridge', 14582, '41.96500', '-87.82250'), ('Northbrook', 33435, '42.12970', '-87.83290'), ('Northfield', 5389, '42.10060', '-87.77870'), ('Northlake', 11878, '41.91370', '-87.90390'), ('North Riverside', 6688, '41.84750', '-87.82490'), ('Oak Forest', 28051, '41.60650', '-87.75260'), ('Oak Lawn', 55245, '41.71500', '-87.75210'), ('Oak Park', 52524, '41.88760', '-87.78950'), ('Ohare Airport', 4224, '41.98330', '-87.90000'), ('Olympia Fields', 4732, '41.51740', '-87.69290'), ('Orland Hills', 6779, '41.59260', '-87.84280'), ('Orland Park', 51077, '41.61050', '-87.85070'), ('Palatine', 65479, '42.11250', '-88.04300'), ('Palos Heights', 11260, '41.66530', '-87.79710'), ('Palos Hills', 17665, '41.69760', '-87.82610'), ('Palos Park', 4689, '41.66450', '-87.84430'), ('Park Forest', 23462, '41.48230', '-87.68700'), ('Park Ridge', 37775, '42.01170', '-87.84400'), ('Phoenix', 2157, '41.61230', '-87.63050'), ('Posen', 4730, '41.62820', '-87.68570'), ('Prospect Heights', 17081, '42.10240', '-87.92470'), ('Richton Park', 12533, '41.48190', '-87.72830'), ('Riverdale', 15055, '41.64460', '-87.63470'), ('River Forest', 11635, '41.89480', '-87.81900'), ('River Grove', 10668, '41.92400', '-87.83760'), ('Riverside', 8895, '41.83080', '-87.81590'), ('Robbins', 6635, '41.64290', '-87.70810'), ('Rogers Park', 74239, '42.01000', '-87.67000'), ('Rolling Meadows', 24604, '42.07500', '-88.02500'), ('Rosemont', 4224, '41.98910', '-87.87150'), ('Sauk Village', 10411, '41.48850', '-87.56560'), ('Schaumburg', 75386, '42.03300', '-88.08340'), ('Schiller Park', 11850, '41.95980', '-87.87000'), ('Skokie', 63348, '42.03710', '-87.73990'), ('South Barrington', 3760, '42.08720', '-88.15300'), ('South Chicago', 2896016, '41.74000', '-87.55000'), ('South Chicago Heights', 3970, '41.48330', '-87.63740'), ('South Holland', 22147, '41.59750', '-87.60120'), ('Stickney', 6148, '41.81800', '-87.77280'), ('Stone Park', 5127, '41.90430', '-87.88040'), ('Streamwood', 36407, '42.02060', '-88.17330'), ('Summit', 10637, '41.78480', '-87.81620'), ('Thornton', 2582, '41.57400', '-87.61880'), ('Tinley Park', 48401, '41.57480', '-87.80040'), ('Westchester', 16824, '41.85090', '-87.88710'), ('Western Springs', 12493, '41.80340', '-87.90080'), ('Wheeling', 34496, '42.13050', '-87.92360'), ('Willow Springs', 5027, '41.73350', '-87.88240'), ('Wilmette', 27651, '42.07720', '-87.72860'), ('Winnetka', 12419, '42.10650', '-87.74270'), ('Worth', 11047, '41.68730', '-87.79260')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC033': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Annapolis', 119, '39.15000', '-87.81670'), ('Eaton', 119, '39.08330', '-87.80000'), ('Flat Rock', 415, '38.90440', '-87.67250'), ('Hardinville', 119, '38.91670', '-87.83330'), ('Hutsonville', 568, '39.10870', '-87.66060'), ('New Hebron', 6822, '38.95000', '-87.74000'), ('Oblong', 1580, '39.00220', '-87.90840'), ('Palestine', 1366, '39.00220', '-87.61210'), ('Robinson', 6822, '39.00790', '-87.74050'), ('Stoy', 119, '38.99680', '-87.83340'), ('West York', 568, '39.17000', '-87.67250')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC035': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Greenup', 1532, '39.24780', '-88.15990'), ('Hazel Dell', 97, '39.20000', '-88.05000'), ('Janesville', 322, '39.36670', '-88.25000'), ('Jewett', 232, '39.20770', '-88.24280'), ('Neoga', 1854, '39.32160', '-88.45150'), ('Toledo', 1166, '39.27430', '-88.24270'), ('Union Center', 2942, '39.33620', '-88.06670'), ('Woodbury', 257, '39.20000', '-88.31670')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC037': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cortland', 2066, '41.92730', '-88.69440'), ('De Kalb', 39018, '41.93060', '-88.75190'), ('Genoa', 4169, '42.09760', '-88.68990'), ('Hinckley', 1994, '41.76970', '-88.64180'), ('Kingston', 980, '42.09920', '-88.75690'), ('Kirkland', 1166, '42.09220', '-88.85460'), ('Lee', 313, '41.79400', '-88.94020'), ('Malta', 969, '41.93020', '-88.86310'), ('Sandwich', 6509, '41.64660', '-88.62310'), ('Shabbona', 929, '41.76490', '-88.87640'), ('Somonauk', 1295, '41.63230', '-88.68350'), ('Sycamore', 12020, '41.98170', '-88.69580'), ('Waterman', 1224, '41.76940', '-88.77320')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILC039': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Clinton', 7485, '40.15030', '-88.96160'), ('De Witt', 188, '40.18440', '-88.78590'), ('Farmer City', 2055, '40.24440', '-88.64120'), ('Hallsville', 374, '40.15000', '-89.10000'), ('Kenney', 374, '40.09830', '-89.08610'), ('Lane', 188, '40.13500', '-88.85000'), ('Rowell', 374, '40.06670', '-89.03330'), ('Wapella', 651, '40.22130', '-88.96170'), ('Waynesville', 452, '40.24090', '-89.12500'), ('Weldon', 440, '40.12150', '-88.75060')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC041': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Arcola', 2652, '39.68460', '-88.30380'), ('Arthur', 2203, '39.71530', '-88.46900'), ('Bourbon', 198, '39.75000', '-88.38330'), ('Camargo', 469, '39.79950', '-88.16670'), ('Chesterville', 2203, '39.68460', '-88.40000'), ('Garrett', 198, '39.79680', '-88.42530'), ('Hindsboro', 361, '39.68430', '-88.13420'), ('Murdock', 469, '39.80000', '-88.08330'), ('Newman', 956, '39.79730', '-87.98750'), ('Tuscola', 4448, '39.79770', '-88.28150'), ('Villa Grove', 2553, '39.86360', '-88.15950')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC043': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Addison', 35914, '41.93060', '-88.00860'), ('Bartlett', 36706, '41.97900', '-88.20540'), ('Bensenville', 20703, '41.95730', '-87.94450'), ('Bloomingdale', 21675, '41.94890', '-88.08650'), ('Burr Ridge', 10408, '41.75090', '-87.92060'), ('Carol Stream', 40438, '41.91680', '-88.13100'), ('Clarendon Hills', 7610, '41.79850', '-87.95760'), ('Darien', 22860, '41.74930', '-87.97630'), ('Downers Grove', 48724, '41.79720', '-88.01740'), ('Dupage Airport', 2137, '41.91660', '-88.25000'), ('Elmhurst', 42762, '41.89800', '-87.94360'), ('Glenbard South', 3957, '41.82970', '-88.06640'), ('Glendale Heights', 31765, '41.92020', '-88.07880'), ('Glen Ellyn', 26999, '41.86650', '-88.06260'), ('Hanover Park', 38278, '41.98460', '-88.14480'), ('Hinsdale', 17349, '41.80060', '-87.92830'), ('Itasca', 8302, '41.97670', '-88.01850'), ('Lisle', 21182, '41.79180', '-88.08780'), ('Lombard', 42322, '41.87490', '-88.01500'), ('Medinah', 2512, '41.97550', '-88.05570'), ('Naperville', 128358, '41.76260', '-88.15430'), ('Oak Brook', 8702, '41.83690', '-87.95270'), ('Oakbrook Terrace', 2300, '41.85330', '-87.96870'), ('Roselle', 23115, '41.98040', '-88.08310'), ('Villa Park', 22075, '41.88550', '-87.97820'), ('Warrenville', 13363, '41.82010', '-88.18620'), ('Wayne', 2137, '41.95210', '-88.26130'), ('West Chicago', 23469, '41.88990', '-88.22280'), ('Westmont', 24554, '41.79700', '-87.97500'), ('Wheaton', 55416, '41.85600', '-88.10760'), ('Willowbrook', 2130, '41.76190', '-87.94630'), ('Winfield', 8718, '41.87140', '-88.15360'), ('Wood Dale', 13535, '41.96590', '-87.98110'), ('Woodridge', 30934, '41.73910', '-88.04250'), ('York Center', 4818, '41.85500', '-87.99470')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC045': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bell Ridge', 3771, '39.50000', '-87.73330'), ('Borton', 322, '39.66500', '-87.93310'), ('Brocton', 322, '39.71610', '-87.93310'), ('Chrisman', 1318, '39.80400', '-87.67420'), ('Edgar', 1318, '39.75000', '-87.70000'), ('Hume', 382, '39.79760', '-87.86880'), ('Kansas', 842, '39.55390', '-87.93990'), ('Metcalf', 213, '39.80030', '-87.80800'), ('Oliver', 3771, '39.48330', '-87.68330'), ('Palermo', 382, '39.86360', '-87.88020'), ('Paris', 9077, '39.61550', '-87.69150'), ('Redmon', 199, '39.64500', '-87.86180'), ('Scottland', 1318, '39.80000', '-87.60000'), ('Vermilion', 239, '39.57970', '-87.58740')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC047': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Albion', 1933, '38.37620', '-88.05720'), ('Bone Gap', 272, '38.44480', '-87.99790'), ('Browns', 175, '38.37770', '-87.98340'), ('Grayville', 1725, '38.25980', '-87.99690'), ('West Salem', 1001, '38.52000', '-88.00880')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'ILC049': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Altamont', 2283, '39.05800', '-88.74850'), ('Beecher City', 493, '39.18650', '-88.78750'), ('Dieterich', 591, '39.05960', '-88.38210'), ('Edgewood', 527, '38.92180', '-88.66410'), ('Effingham', 12384, '39.11960', '-88.55090'), ('Elliotstown', 591, '39.00000', '-88.45000'), ('Heartville', 729, '39.06670', '-88.55000'), ('Mason', 396, '38.95310', '-88.62540'), ('Moccasin', 493, '39.13330', '-88.75000'), ('Montrose', 257, '39.16570', '-88.37830'), ('Shumway', 217, '39.18320', '-88.65300'), ('Teutopolis', 1559, '39.13210', '-88.47840'), ('Watson', 729, '39.02560', '-88.56950')], 'partOfState': 'south central', 'wfo': 'ILX'}, +'ILC051': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Avena', 705, '39.00750', '-88.92800'), ('Bayle City', 117, '39.11400', '-89.16630'), ('Bingham', 117, '39.11290', '-89.21170'), ('Brownstown', 705, '38.99630', '-88.95360'), ('Farina', 558, '38.83170', '-88.77780'), ('Hagerstown', 6975, '38.94340', '-89.16850'), ('La Clede', 527, '38.87970', '-88.71540'), ('Loogootee', 386, '38.90470', '-88.85370'), ('Pittsburg', 671, '38.87150', '-89.21180'), ('Ramsey', 1056, '39.14380', '-89.10990'), ('Shafter', 6975, '39.01360', '-89.18510'), ('Shobonier', 178, '38.86940', '-89.08870'), ('St. Elmo', 1456, '39.02470', '-88.85320'), ('St. James', 1456, '38.95440', '-88.85120'), ('St. Paul', 386, '38.85280', '-88.95340'), ('St. Peter', 386, '38.86740', '-88.85180'), ('Vandalia', 6975, '38.98100', '-89.10140'), ('Wrights Corner', 493, '39.13300', '-88.86700')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILC053': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cabery', 263, '40.99470', '-88.20480'), ('Elliott', 341, '40.46420', '-88.27480'), ('Gibson City', 3373, '40.46570', '-88.37860'), ('Kempton', 235, '40.93580', '-88.23580'), ('Melvin', 465, '40.57140', '-88.24740'), ('Paxton', 4525, '40.45840', '-88.09950'), ('Piper City', 781, '40.75570', '-88.18770'), ('Roberts', 387, '40.61410', '-88.18350'), ('Sibley', 329, '40.58760', '-88.37810')], 'partOfState': 'east central', 'wfo': 'LOT'}, +'ILC055': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Benton', 6880, '38.00710', '-88.91850'), ('Buckner', 479, '37.98110', '-89.01560'), ('Christopher', 2836, '37.97260', '-89.05190'), ('Ewing', 310, '38.08930', '-88.85220'), ('Hanaford', 55, '37.95850', '-88.83530'), ('North City', 630, '37.99130', '-89.06160'), ('Orient', 296, '37.91640', '-88.97540'), ('Royalton', 1130, '37.87770', '-89.11350'), ('Sesser', 2128, '38.09030', '-89.05050'), ('Thompsonville', 571, '37.91410', '-88.76170'), ('Valier', 662, '38.01780', '-89.04350'), ('West City', 716, '37.99600', '-88.94870'), ('West Frankfort', 8196, '37.90060', '-88.92940'), ('Zeigler', 1669, '37.89990', '-89.05250')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILC057': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Astoria', 1193, '40.22830', '-90.35590'), ('Avon', 915, '40.66220', '-90.43540'), ('Banner', 149, '40.51470', '-89.91040'), ('Bernadotte', 506, '40.40000', '-90.32320'), ('Bryant', 255, '40.46550', '-90.09450'), ('Canton', 15288, '40.56250', '-90.04030'), ('Cuba', 1418, '40.49340', '-90.19320'), ('Duncan Mills', 2522, '40.33330', '-90.18330'), ('Dunfermline', 262, '40.49090', '-90.03270'), ('Ellisville', 87, '40.62700', '-90.30570'), ('Fairview', 493, '40.65050', '-90.19110'), ('Fiatt', 1418, '40.56670', '-90.18330'), ('Ipava', 506, '40.35210', '-90.32320'), ('Lewistown', 2522, '40.39690', '-90.15530'), ('Little America', 119, '40.43330', '-90.03330'), ('Liverpool', 119, '40.39690', '-90.00950'), ('London Mills', 447, '40.71070', '-90.26670'), ('Marbletown', 310, '40.22830', '-90.24500'), ('Marietta', 150, '40.49980', '-90.39230'), ('Norris', 194, '40.62550', '-90.03170'), ('Smithfield', 214, '40.47440', '-90.29500'), ('St. David', 58, '40.49200', '-90.05140'), ('Table Grove', 396, '40.36560', '-90.42490'), ('Vermont', 792, '40.29600', '-90.42810')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILC059': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Equality', 721, '37.73590', '-88.34310'), ('Junction', 139, '37.72300', '-88.23780'), ('New Haven', 477, '37.90010', '-88.12780'), ('Old Shawneetown', 278, '37.69690', '-88.13780'), ('Omaha', 263, '37.88990', '-88.30440'), ('Ridgway', 928, '37.79800', '-88.26050'), ('Shawneetown', 1410, '37.71280', '-88.16550')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC061': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Athensville', 140, '39.45580', '-90.18930'), ('Barrow', 2214, '39.50620', '-90.40140'), ('Belltown', 2629, '39.38250', '-90.40790'), ('Berdan', 2605, '39.36490', '-90.39760'), ('Carrollton', 2605, '39.29780', '-90.40680'), ('Eldred', 211, '39.28620', '-90.55330'), ('Greenfield', 1179, '39.34430', '-90.20760'), ('Haypress', 211, '39.36050', '-90.53670'), ('Hillview', 179, '39.44960', '-90.53790'), ('Kane', 459, '39.19030', '-90.35120'), ('Old Kane', 459, '39.18300', '-90.36700'), ('Patterson', 130, '39.48070', '-90.48310'), ('Rockbridge', 189, '39.27290', '-90.20890'), ('Roodhouse', 2214, '39.48460', '-90.37340'), ('Walkersville', 271, '39.38700', '-90.49540'), ('White Hall', 2629, '39.43740', '-90.40400'), ('Woody', 211, '39.26370', '-90.48520'), ('Wrights', 1179, '39.37580', '-90.29420')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC063': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Braceville', 792, '41.22420', '-88.26640'), ('Carbon Hill', 392, '41.29630', '-88.29950'), ('Coal City', 4797, '41.28830', '-88.27820'), ('Diamond', 1393, '41.28870', '-88.25520'), ('East Brooklyn', 123, '41.17240', '-88.26570'), ('Gardner', 1406, '41.18770', '-88.31220'), ('Kinsman', 109, '41.19060', '-88.56970'), ('Mazon', 904, '41.23960', '-88.42490'), ('Minooka', 3971, '41.44910', '-88.26000'), ('Morris', 11928, '41.36860', '-88.42770'), ('South Wilmington', 621, '41.17420', '-88.27630'), ('Verona', 257, '41.21570', '-88.50500')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC065': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belle Prairie City', 60, '38.22310', '-88.55150'), ('Broughton', 193, '37.93410', '-88.46140'), ('Dahlgren', 514, '38.19860', '-88.68410'), ('Macedonia', 51, '38.05380', '-88.70310'), ('McLeansboro', 2945, '38.09230', '-88.53280')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILC067': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adrian', 168, '40.51670', '-91.16670'), ('Augusta', 657, '40.23090', '-90.94890'), ('Basco', 107, '40.32680', '-91.19910'), ('Bentley', 43, '40.34470', '-91.11110'), ('Bowen', 535, '40.23200', '-91.06360'), ('Burnside', 168, '40.50000', '-91.10000'), ('Carthage', 2725, '40.41430', '-91.13510'), ('Colusa', 1055, '40.56670', '-91.16670'), ('Dallas City', 1055, '40.63500', '-91.16450'), ('Denver', 43, '40.28330', '-91.10000'), ('Disco', 1385, '40.61670', '-91.01670'), ('Elvaston', 152, '40.39430', '-91.24840'), ('Ferris', 168, '40.46950', '-91.16940'), ('Fountain Green', 1385, '40.48330', '-90.96670'), ('Hamilton', 3029, '40.38910', '-91.36320'), ('La Harpe', 1385, '40.58400', '-90.97000'), ('Nauvoo', 1063, '40.54750', '-91.38480'), ('Nauvoo State Park', 0, '40.54630', '-91.38420'), ('Niota', 11618, '40.61670', '-91.28330'), ('Plymouth', 562, '40.29120', '-90.92000'), ('Pontoosuc', 171, '40.62860', '-91.21160'), ('Stillwell', 195, '40.21670', '-91.18330'), ('Sutter', 1793, '40.28330', '-91.35000'), ('Tioga', 159, '40.21660', '-91.35000'), ('Warsaw', 1793, '40.35280', '-91.42690'), ('Webster', 1385, '40.46670', '-91.00000'), ('Western Illinois University', 3029, '40.43330', '-91.33330'), ('West Point', 195, '40.25560', '-91.18310')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILC069': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cave-In-rock', 346, '37.47020', '-88.16550'), ('Elizabethtown', 348, '37.45080', '-88.30430'), ('Gross', 348, '37.53300', '-88.29050'), ('Karbers Ridge', 348, '37.57970', '-88.33330'), ('Rosiclare', 1213, '37.42240', '-88.35070')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC071': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bald Bluff', 242, '41.01670', '-90.85000'), ('Biggsville', 343, '40.85350', '-90.86130'), ('Big River State Forest', 714, '41.03330', '-90.91670'), ('Carman', 477, '40.73330', '-91.06670'), ('Carthage Lake', 207, '40.80000', '-91.08330'), ('Decorra', 896, '40.73330', '-90.96670'), ('Delabar State Park', 1539, '40.96670', '-90.93330'), ('Gladstone', 284, '40.86370', '-90.95750'), ('Gulf Port', 207, '40.80900', '-91.08360'), ('Heapsville', 207, '40.76670', '-91.06670'), ('Hopper', 896, '40.78330', '-90.98330'), ('Lomax', 477, '40.67760', '-91.07640'), ('Lone Tree', 284, '40.83330', '-91.01670'), ('Media', 130, '40.77270', '-90.83400'), ('Olena', 896, '40.78330', '-90.93330'), ('Oquawka', 1539, '40.93760', '-90.94950'), ('Raritan', 140, '40.69540', '-90.82500'), ('Rozetta', 1539, '40.95000', '-90.86670'), ('Shokokon', 207, '40.75000', '-91.06670'), ('Stronghurst', 896, '40.75000', '-90.90000'), ('Terre Haute', 1385, '40.67000', '-90.98330')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILC073': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alpha', 726, '41.19220', '-90.38080'), ('Andover', 594, '41.29500', '-90.29050'), ('Annawan', 868, '41.39870', '-89.90700'), ('Atkinson', 1001, '41.41870', '-90.01450'), ('Bishop Hill', 125, '41.19960', '-90.11720'), ('Cambridge', 2180, '41.30330', '-90.19330'), ('Cleveland', 253, '41.50290', '-90.31640'), ('Colona', 5173, '41.48600', '-90.35050'), ('Dayton', 253, '41.48330', '-90.31670'), ('Galva', 2758, '41.16660', '-90.03890'), ('Geneseo', 6480, '41.44720', '-90.15450'), ('German Corner', 1001, '41.30000', '-90.03330'), ('Green River', 5173, '41.47000', '-90.33300'), ('Hooppole', 162, '41.52090', '-89.91330'), ('Johnson Sauk Trail', 360, '41.32500', '-89.89167'), ('Kewanee', 12944, '41.24110', '-89.92560'), ('Kewanee Municipal Airport', 12944, '41.20000', '-89.96670'), ('Lynn Center', 1713, '41.30000', '-90.35000'), ('Morristown', 5173, '41.40000', '-90.30000'), ('Nekoma', 570, '41.17220', '-90.18700'), ('Ophiem', 753, '41.25000', '-90.38330'), ('Orion', 1713, '41.35120', '-90.37410'), ('Osborn', 253, '41.51660', '-90.26670'), ('Osco', 594, '41.35000', '-90.28330'), ('Shady Beach', 588, '41.53330', '-90.20000'), ('Sunny Hill', 0, '41.38600', '-90.40000'), ('Sunny Hill Estates', 0, '41.39640', '-90.42900'), ('Ulah', 2180, '41.26670', '-90.15000'), ('Warner', 2615, '41.41670', '-90.38330'), ('Woodhull', 809, '41.17840', '-90.32170')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILC075': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ashkum', 724, '40.87840', '-87.95360'), ('Beaverville', 391, '40.95350', '-87.65500'), ('Buckley', 593, '40.59720', '-88.03700'), ('Chebanse', 1148, '41.00220', '-87.91380'), ('Cissna Park', 811, '40.56680', '-87.89250'), ('Clifton', 1317, '40.93550', '-87.93340'), ('Crescent City', 631, '40.77150', '-87.85640'), ('Danforth', 587, '40.82120', '-87.97790'), ('Donovan', 351, '40.88540', '-87.61470'), ('Gilman', 1793, '40.76590', '-87.99610'), ('Iroquois', 207, '40.82870', '-87.58470'), ('Loda', 419, '40.51670', '-88.07530'), ('Martinton', 375, '40.91530', '-87.72630'), ('Milford', 1369, '40.62770', '-87.69700'), ('Onarga', 1438, '40.71310', '-88.01320'), ('Papineau', 196, '40.96770', '-87.71590'), ('Sheldon', 1232, '40.77090', '-87.56640'), ('Thawville', 258, '40.67390', '-88.11330'), ('Watseka', 5670, '40.77590', '-87.73210'), ('Wellington', 264, '40.54050', '-87.67830'), ('Woodland', 319, '40.71300', '-87.73070')], 'partOfState': 'east central', 'wfo': 'LOT'}, +'ILC077': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ava', 662, '37.88840', '-89.49630'), ('Campbell Hill', 333, '37.93020', '-89.55100'), ('Carbondale', 20681, '37.72460', '-89.21740'), ('De Soto', 1653, '37.81590', '-89.22720'), ('Dowell', 441, '37.93950', '-89.23950'), ('Elkville', 1001, '37.90950', '-89.23650'), ('Gorham', 256, '37.71780', '-89.48260'), ('Grand Tower', 624, '37.63960', '-89.50330'), ('Makanda', 419, '37.61910', '-89.23720'), ('Murphysboro', 13295, '37.76810', '-89.33720'), ('Vergennes', 491, '37.90200', '-89.33970')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC079': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bellair', 97, '39.15000', '-87.95000'), ('Bogota', 3069, '38.91670', '-88.23330'), ('Gila', 119, '39.11670', '-88.26670'), ('Hidalgo', 123, '39.15660', '-88.15070'), ('Latona', 119, '38.95000', '-88.31670'), ('Newton', 3069, '38.98810', '-88.16330'), ('Rose Hill', 79, '39.10410', '-88.15120'), ('Ste. Marie', 261, '38.93200', '-88.02660'), ('West Liberty', 261, '38.86670', '-88.08530'), ('Wheeler', 119, '39.04280', '-88.31860'), ('Willow Hill', 250, '38.99630', '-88.02130'), ('Yale', 97, '39.12010', '-88.02430')], 'partOfState': 'southeast', 'wfo': 'ILX'}, +'ILC081': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belle Rive', 371, '38.23200', '-88.73990'), ('Bluford', 785, '38.32630', '-88.73560'), ('Bonnie', 424, '38.20150', '-88.90750'), ('Dix', 494, '38.44060', '-88.94240'), ('Ina', 2455, '38.15220', '-88.90370'), ('Mount Vernon', 16269, '38.31760', '-88.91100'), ('Nason', 234, '38.17630', '-88.96590'), ('Waltonville', 422, '38.21320', '-89.03910'), ('Woodlawn', 630, '38.33050', '-89.03530')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILC083': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Delhi', 16286, '39.04530', '-90.25500'), ('Elsah', 635, '38.95370', '-90.35460'), ('Fidelity', 105, '39.15460', '-90.16350'), ('Fieldon', 271, '39.10810', '-90.49990'), ('Grafton', 609, '38.97250', '-90.42700'), ('Jerseyville', 7984, '39.11950', '-90.32800'), ('Kemper', 501, '39.21700', '-90.16700'), ('McClusky', 7984, '39.04340', '-90.32040'), ('Nutwood', 271, '39.08480', '-90.55590'), ('Otterville', 120, '39.05100', '-90.39750')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC085': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aiken', 3460, '42.35000', '-90.41670'), ('Apple Canyon Lake', 379, '42.42000', '-90.16000'), ('Apple River', 379, '42.50190', '-90.09470'), ('Apple River Canyon State Park', 379, '42.45000', '-90.05000'), ('Blanding', 2239, '42.26670', '-90.38330'), ('Council Hill', 898, '42.48330', '-90.35000'), ('East Dubuque', 1995, '42.49150', '-90.63880'), ('Elizabeth', 682, '42.31610', '-90.22470'), ('Elmoville', 1926, '42.26670', '-90.05000'), ('Galena', 3460, '42.42070', '-90.42730'), ('Galena Territory', 3460, '42.40000', '-90.33330'), ('Guilford', 401, '42.42670', '-90.30000'), ('Hanover', 836, '42.25420', '-90.27870'), ('Massbach', 682, '42.25000', '-90.11670'), ('Menominee', 237, '42.47460', '-90.54200'), ('Nora', 118, '42.45730', '-89.94460'), ('North Hanover', 836, '42.30000', '-90.28330'), ('Rice', 2239, '42.33330', '-90.40000'), ('Rodden', 836, '42.33330', '-90.31670'), ('Scales Mound', 401, '42.47750', '-90.25200'), ('Schapville', 682, '42.40000', '-90.20000'), ('Stockton', 1926, '42.35160', '-90.00600'), ('Stockton Airport', 1926, '42.31670', '-90.00000'), ('Warren', 1496, '42.49470', '-89.99020'), ('Whitton', 836, '42.23330', '-90.31670'), ('Willow', 1926, '42.28330', '-89.95000'), ('Woodbine', 682, '42.35000', '-90.15000')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILC087': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belknap', 133, '37.32230', '-88.94010'), ('Buncombe', 186, '37.47090', '-88.97490'), ('Cypress', 271, '37.36550', '-89.01900'), ('Goreville', 938, '37.55510', '-88.97360'), ('New Burnside', 242, '37.57840', '-88.77310'), ('Simpson', 54, '37.46760', '-88.75500'), ('Vienna', 1234, '37.41420', '-88.89270')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC089': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aurora', 142990, '41.76760', '-88.29300'), ('Batavia', 23866, '41.85060', '-88.30040'), ('Burlington', 452, '42.05040', '-88.54740'), ('Carpentersville', 30586, '42.12130', '-88.27150'), ('East Dundee', 2955, '42.09580', '-88.25580'), ('Elburn', 2756, '41.89020', '-88.47170'), ('Elgin', 94487, '42.03960', '-88.28800'), ('Geneva', 19515, '41.88230', '-88.31450'), ('Gilberts', 1279, '42.10160', '-88.36720'), ('Hampshire', 2900, '42.09580', '-88.52170'), ('Maple Park', 765, '41.90720', '-88.59370'), ('Montgomery', 5471, '41.72990', '-88.34150'), ('North Aurora', 10585, '41.80380', '-88.33040'), ('Pingree Grove', 124, '42.06860', '-88.41470'), ('Sleepy Hollow', 3553, '42.09340', '-88.31420'), ('South Elgin', 16100, '41.99630', '-88.29800'), ('St. Charles', 2789, '41.92030', '-88.30080'), ('Sugar Grove', 3909, '41.76960', '-88.45880'), ('West Dundee', 5428, '42.09810', '-88.29200')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC091': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aroma Park', 821, '41.07980', '-87.80540'), ('Bonfield', 364, '41.14720', '-88.05670'), ('Bourbonnais', 15256, '41.16320', '-87.88040'), ('Bradley', 12784, '41.14720', '-87.85570'), ('Buckingham', 237, '41.04680', '-88.17610'), ('c', 92, '41.05250', '-87.98400'), ('Essex', 554, '41.17830', '-88.19470'), ('Grant Park', 1358, '41.23920', '-87.64460'), ('Herscher', 1523, '41.04910', '-88.10060'), ('Hopkins Park', 711, '41.07220', '-87.61470'), ('Kankakee', 27491, '41.11550', '-87.86120'), ('Manteno', 6414, '41.25120', '-87.83670'), ('Momence', 3171, '41.16350', '-87.66360'), ('Reddick', 219, '41.09730', '-88.24880'), ('St. Anne', 1212, '41.02330', '-87.71700'), ('Sun River Terrace', 383, '41.12650', '-87.73460'), ('Union Hill', 37, '41.10930', '-88.14550')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC093': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Boulder Hill', 8169, '41.71250', '-88.33610'), ('Lisbon', 248, '41.48060', '-88.48270'), ('Millington', 458, '41.56100', '-88.59920'), ('Newark', 887, '41.53710', '-88.58070'), ('Oswego', 13326, '41.69790', '-88.33260'), ('Plano', 5633, '41.66330', '-88.53480'), ('Yorkville', 6189, '41.64220', '-88.44750')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC095': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Abingdon', 3612, '40.80260', '-90.40070'), ('Altona', 570, '41.11520', '-90.16470'), ('Dahinda', 323, '40.95000', '-90.10000'), ('Delong', 3612, '40.81670', '-90.31670'), ('Farmington', 2601, '40.71670', '-90.00670'), ('Galesburg', 33706, '40.95000', '-90.37790'), ('Gilson', 318, '40.86670', '-90.20000'), ('Henderson', 319, '41.02450', '-90.35290'), ('Knoxville', 3183, '40.90630', '-90.28540'), ('Maquon', 318, '40.79830', '-90.16270'), ('Middle Grove', 2601, '40.71670', '-90.10000'), ('Oneida', 752, '41.07240', '-90.22540'), ('Rio', 240, '41.10870', '-90.39900'), ('St. Augustine', 15, '40.71970', '-90.40890'), ('Victoria', 323, '41.03300', '-90.09530'), ('Wataga', 857, '41.02510', '-90.27510'), ('Williamsfield', 620, '40.92610', '-90.01730'), ('Yates City', 725, '40.77800', '-90.01360')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILC097': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Antioch', 8788, '42.47470', '-88.07950'), ('Bannockburn', 1429, '42.19280', '-87.86840'), ('Beach Park', 10072, '42.42500', '-87.85620'), ('Buffalo Grove', 42909, '42.16630', '-87.96330'), ('Channel Lake', 1785, '42.48430', '-88.15030'), ('Deerfield', 18420, '42.16560', '-87.84990'), ('Deer Park', 3102, '42.16810', '-88.08820'), ('Forest Lake', 1530, '42.20560', '-88.05220'), ('Fox Lake', 9178, '42.41810', '-88.18330'), ('Fox Lake Hills', 2561, '42.40710', '-88.12350'), ('Fox River Valley', 788, '42.24440', '-88.19490'), ('Gages Lake', 10415, '42.35160', '-87.98240'), ('Grandwood Park', 4521, '42.39320', '-87.98670'), ('Grayslake', 18506, '42.34980', '-88.03850'), ('Green Oaks', 3572, '42.30170', '-87.91520'), ('Gurnee', 28834, '42.37710', '-87.93600'), ('Hainesville', 2129, '42.33970', '-88.06470'), ('Hawthorn Woods', 6002, '42.22360', '-88.05730'), ('Highland Park', 31365, '42.18270', '-87.80970'), ('Highwood', 4143, '42.21160', '-87.81170'), ('Indian Creek', 194, '42.22590', '-87.97680'), ('Kildeer', 3460, '42.17930', '-88.04910'), ('Lake Barrington', 4757, '42.21080', '-88.16520'), ('Lake Bluff', 6056, '42.28260', '-87.85030'), ('Lake Catherine', 1490, '42.49030', '-88.12560'), ('Lake Forest', 20059, '42.23630', '-87.85760'), ('Lake Villa', 5864, '42.41750', '-88.08230'), ('Lake Zurich', 18104, '42.19230', '-88.08800'), ('Libertyville', 20742, '42.28410', '-87.96600'), ('Lincolnshire', 6108, '42.19560', '-87.91610'), ('Lindenhurst', 12539, '42.41740', '-88.02980'), ('Long Grove', 6735, '42.19540', '-88.00280'), ('Long Lake', 3356, '42.37670', '-88.12620'), ('Mettawa', 367, '42.24370', '-87.91540'), ('Mundelein', 30935, '42.26700', '-88.00310'), ('North Barrington', 2918, '42.20710', '-88.13140'), ('North Chicago', 35918, '42.31860', '-87.85920'), ('Old Mill Creek', 251, '42.43310', '-87.98210'), ('Park City', 6637, '42.35070', '-87.89100'), ('Riverwoods', 3843, '42.17110', '-87.89590'), ('Round Lake', 5842, '42.34990', '-88.11030'), ('Round Lake Beach', 25859, '42.37760', '-88.08170'), ('Round Lake Heights', 1347, '42.38400', '-88.10410'), ('Round Lake Park', 6038, '42.32320', '-88.05860'), ('Third Lake', 1355, '42.36770', '-88.00840'), ('Tower Lakes', 1310, '42.23020', '-88.15580'), ('Venetian Village', 3082, '42.39980', '-88.04620'), ('Vernon Hills', 20120, '42.23600', '-87.96270'), ('Wadsworth', 3083, '42.43690', '-87.92340'), ('Wauconda', 9448, '42.26660', '-88.13950'), ('Waukegan', 87901, '42.37090', '-87.86800'), ('Winthrop Harbor', 6670, '42.47980', '-87.82820'), ('Zion', 22866, '42.45670', '-87.84310')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC099': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cedar Point', 262, '41.26470', '-89.12520'), ('Dana', 171, '40.95630', '-88.94980'), ('Earlville', 1778, '41.58850', '-88.92390'), ('Grand Ridge', 546, '41.23620', '-88.83150'), ('Kangley', 287, '41.14760', '-88.87260'), ('La Salle', 9796, '41.34000', '-89.09350'), ('Leland', 970, '41.61470', '-88.79800'), ('Leonore', 110, '41.18940', '-88.98260'), ('Lostant', 486, '41.14040', '-89.06110'), ('Marseilles', 4655, '41.32780', '-88.68780'), ('Mendota', 7272, '41.55090', '-89.12010'), ('Naplate', 523, '41.33130', '-88.87820'), ('Oglesby', 3647, '41.29450', '-89.06450'), ('Ottawa', 18307, '41.35020', '-88.83940'), ('Peru', 9835, '41.34170', '-89.12830'), ('Ransom', 409, '41.15810', '-88.65530'), ('Rutland', 354, '40.98410', '-89.03930'), ('Seneca', 2053, '41.30340', '-88.61350'), ('Sheridan', 2411, '41.52590', '-88.68670'), ('Streator', 14190, '41.12530', '-88.83150'), ('Tonica', 685, '41.21410', '-89.06780'), ('Troy Grove', 305, '41.46540', '-89.08110'), ('Utica', 977, '41.33980', '-89.01130')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILC101': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Billett', 4745, '38.66670', '-87.65000'), ('Birds', 51, '38.83750', '-87.67080'), ('Bridgeport', 2168, '38.71000', '-87.75850'), ('Chauncey', 1022, '38.83330', '-87.86670'), ('Helena', 1022, '38.61800', '-87.86670'), ('Lawrenceville', 4745, '38.72640', '-87.68790'), ('Petrolia', 2168, '38.76670', '-87.77500'), ('Pinkstaff', 51, '38.80000', '-87.66670'), ('Russellville', 119, '38.82000', '-87.52930'), ('St. Francisville', 759, '38.59190', '-87.64760'), ('Sumner', 1022, '38.71710', '-87.86230')], 'partOfState': 'southeast', 'wfo': 'ILX'}, +'ILC103': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Amboy', 2561, '41.71660', '-89.33350'), ('Ashton', 1142, '41.86810', '-89.22150'), ('Compton', 347, '41.69420', '-89.08590'), ('Dixon', 15941, '41.84950', '-89.47880'), ('Franklin Grove', 1052, '41.84100', '-89.30010'), ('Harmon', 149, '41.71970', '-89.55660'), ('Nelson', 163, '41.79550', '-89.60260'), ('Paw Paw', 852, '41.68790', '-88.98060'), ('Steward', 271, '41.84850', '-89.02060'), ('Sublette', 456, '41.64350', '-89.23170'), ('West Brooklyn', 174, '41.69310', '-89.14700')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILC105': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Campus', 145, '41.02480', '-88.30790'), ('Chatsworth', 1265, '40.75300', '-88.29380'), ('Cornell', 511, '40.99230', '-88.72970'), ('Cullom', 563, '40.87790', '-88.26960'), ('Dwight', 4363, '41.09700', '-88.42480'), ('Emington', 120, '40.97010', '-88.35740'), ('Fairbury', 3968, '40.74660', '-88.51240'), ('Flanagan', 1083, '40.87730', '-88.86060'), ('Forrest', 1225, '40.75000', '-88.40990'), ('Long Point', 247, '41.00470', '-88.89360'), ('Odell', 1014, '41.00280', '-88.52280'), ('Pontiac', 11864, '40.87660', '-88.64180'), ('Saunemin', 456, '40.89290', '-88.40650'), ('Strawn', 104, '40.65270', '-88.39890')], 'partOfState': 'central', 'wfo': 'LOT'}, +'ILC107': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atlanta', 1649, '40.26220', '-89.23220'), ('Beason', 1649, '40.15000', '-89.20000'), ('Broadwell', 169, '40.06730', '-89.44260'), ('Chestnut', 1701, '40.06670', '-89.20000'), ('Cornland', 491, '39.94000', '-89.40900'), ('Elkhart', 443, '40.01930', '-89.48180'), ('Emden', 515, '40.29770', '-89.48520'), ('Hartsburg', 358, '40.25070', '-89.44070'), ('Latham', 371, '39.96690', '-89.16190'), ('Lawndale', 1649, '40.21670', '-89.28330'), ('Lincoln', 15369, '40.15060', '-89.36690'), ('Middletown', 434, '40.10060', '-89.59130'), ('Mount Pulaski', 1701, '40.01010', '-89.28310'), ('New Holland', 318, '40.18430', '-89.58250')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC109': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adair', 396, '40.41670', '-90.50000'), ('Argyle Lake State Park', 1493, '40.45000', '-90.78330'), ('Bardolph', 253, '40.49680', '-90.56320'), ('Blandinsville', 777, '40.55470', '-90.86940'), ('Bushnell', 3221, '40.55150', '-90.50450'), ('Colchester', 1493, '40.42680', '-90.79300'), ('Colmar', 562, '40.35000', '-90.88330'), ('Doddsville', 197, '40.28330', '-90.65000'), ('Fandon', 1493, '40.36670', '-90.76670'), ('Good Hope', 415, '40.55760', '-90.67490'), ('Industry', 540, '40.32720', '-90.60800'), ('Macomb', 18558, '40.47040', '-90.68140'), ('Macomb Municipal Airport', 415, '40.51670', '-90.65000'), ('New Philadelphia', 150, '40.48330', '-90.46670'), ('Pennington Point', 540, '40.40000', '-90.55000'), ('Prairie City', 461, '40.62060', '-90.46450'), ('Prairie City Airport', 461, '40.61670', '-90.46670'), ('Sciota', 58, '40.56190', '-90.74900'), ('Scottsburg', 253, '40.55000', '-90.60000'), ('Tennessee', 144, '40.41170', '-90.83590'), ('Walnut Grove', 3221, '40.61670', '-90.56670')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILC111': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Algonquin', 23276, '42.16420', '-88.30050'), ('Bull Valley', 726, '42.31140', '-88.34990'), ('Cary', 15531, '42.20900', '-88.24970'), ('Crystal Lake', 38000, '42.23190', '-88.33050'), ('Fox River Grove', 4862, '42.19700', '-88.21900'), ('Harvard', 7996, '42.42120', '-88.61530'), ('Hebron', 1038, '42.47100', '-88.42990'), ('Holiday Hills', 831, '42.29130', '-88.22690'), ('Huntley', 5730, '42.16810', '-88.42420'), ('Island Lake', 8153, '42.27600', '-88.20150'), ('Lake In The Hills', 23152, '42.19280', '-88.32160'), ('Lakemoor', 2788, '42.34150', '-88.20490'), ('Lakewood', 2337, '42.22010', '-88.37810'), ('Marengo', 6355, '42.24790', '-88.60030'), ('McCullom Lake', 1038, '42.36880', '-88.29380'), ('McHenry', 21501, '42.34070', '-88.29130'), ('Oakwood Hills', 2194, '42.24730', '-88.24440'), ('Pistakee Highlands', 3812, '42.40320', '-88.21220'), ('Prairie Grove', 960, '42.28030', '-88.26650'), ('Richmond', 1091, '42.48120', '-88.30730'), ('Spring Grove', 3880, '42.44490', '-88.24380'), ('Sunnyside', 5391, '42.39560', '-88.23370'), ('Union', 576, '42.23430', '-88.54350'), ('Wonder Lake', 1345, '42.38000', '-88.35670'), ('Woodstock', 20151, '42.31070', '-88.43670')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC113': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Anchor', 175, '40.56870', '-88.53870'), ('Arrowsmith', 298, '40.44890', '-88.63150'), ('Bellflower', 408, '40.34050', '-88.52670'), ('Bloomington', 64808, '40.47890', '-88.97350'), ('Carlock', 456, '40.58210', '-89.13270'), ('Chenoa', 1845, '40.74420', '-88.71810'), ('Colfax', 989, '40.56670', '-88.61650'), ('Cooksville', 213, '40.54260', '-88.71510'), ('Cropsey', 175, '40.60000', '-88.48330'), ('Danvers', 1183, '40.52890', '-89.17330'), ('Downs', 776, '40.39590', '-88.87170'), ('Ellsworth', 271, '40.44950', '-88.71660'), ('Gridley', 1411, '40.74390', '-88.88040'), ('Heyworth', 2431, '40.31380', '-88.97880'), ('Holder', 271, '40.45000', '-88.80000'), ('Hudson', 1510, '40.60700', '-88.98860'), ('Le Roy', 3332, '40.34160', '-88.76470'), ('Lexington', 1912, '40.64380', '-88.78270'), ('McLean', 808, '40.31560', '-89.17040'), ('Normal', 45386, '40.51740', '-88.99940'), ('Pleasant Hill', 1912, '40.61670', '-88.73330'), ('Saybrook', 764, '40.42830', '-88.52650'), ('Shirley', 64808, '40.41670', '-89.03330'), ('Stanford', 67, '40.43400', '-89.22010'), ('Towanda', 493, '40.56320', '-88.90040')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC115': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Argenta', 921, '39.98500', '-88.81870'), ('Blue Mound', 1129, '39.70070', '-89.11890'), ('Boody', 1338, '39.76670', '-89.05500'), ('Decatur', 81860, '39.85220', '-88.93380'), ('Elwin', 81860, '39.78330', '-88.95590'), ('Forsyth', 2434, '39.92360', '-88.95590'), ('Harristown', 1338, '39.84160', '-89.05950'), ('Long Creek', 1364, '39.80430', '-88.84730'), ('Macon', 1213, '39.70900', '-88.99940'), ('Maroa', 1654, '40.03820', '-88.95490'), ('Mount Zion', 4845, '39.77790', '-88.87850'), ('Niantic', 738, '39.85390', '-89.16550'), ('Oakley', 1364, '39.85220', '-88.81870'), ('Oreana', 892, '39.93790', '-88.86920'), ('Warrensburg', 1289, '39.93230', '-89.06120')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC117': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atwater', 13, '39.33300', '-89.72510'), ('Benld', 1541, '39.09310', '-89.80190'), ('Brighton', 2196, '39.04030', '-90.13900'), ('Bunker Hill', 1801, '39.04050', '-89.95080'), ('Carlinville', 5685, '39.28040', '-89.88090'), ('Chesterfield', 223, '39.25570', '-90.06770'), ('Dorchester', 142, '39.08620', '-89.88820'), ('Gillespie', 3412, '39.12540', '-89.81720'), ('Girard', 2245, '39.44680', '-89.78240'), ('Hettick', 182, '39.35520', '-90.03700'), ('Hornsby', 127, '39.17070', '-89.74510'), ('Medora', 501, '39.17600', '-90.14170'), ('Miles Station', 2196, '39.07710', '-90.10720'), ('Modesto', 252, '39.47910', '-89.98020'), ('Mount Olive', 2150, '39.07260', '-89.72800'), ('Nilwood', 284, '39.39950', '-89.80730'), ('Palmyra', 733, '39.43490', '-89.99620'), ('Piasa', 105, '39.11590', '-90.12570'), ('Plainview', 276, '39.15930', '-89.98980'), ('Pruett', 142, '39.06480', '-89.91090'), ('Royal Lakes', 276, '39.11250', '-89.96180'), ('Scottville', 140, '39.47750', '-90.10330'), ('Shipman', 655, '39.12080', '-90.04520'), ('Standard City', 13, '39.35040', '-89.78380'), ('Staunton', 503, '39.01260', '-89.78850'), ('Virden', 3488, '39.50490', '-89.76950'), ('White City', 221, '39.07240', '-89.76400'), ('Wilsonville', 604, '39.06890', '-89.85530')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC119': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alhambra', 630, '38.88760', '-89.73500'), ('Alton', 30496, '38.90400', '-90.15400'), ('Bethalto', 9454, '38.90080', '-90.04690'), ('Carpenter', 570, '38.89210', '-89.89440'), ('Collinsville', 24707, '38.67840', '-89.99730'), ('Dorsey', 1801, '38.97380', '-89.99840'), ('Edwardsville', 21491, '38.79640', '-89.96500'), ('Fosterburg', 9454, '38.97180', '-90.07500'), ('Fruit', 570, '38.83090', '-89.86260'), ('Glen Carbon', 10425, '38.76050', '-89.97300'), ('Godfrey', 16286, '38.96670', '-90.18830'), ('Granite City', 31301, '38.71440', '-90.12970'), ('Grantfork', 254, '38.83090', '-89.66780'), ('Hamel', 570, '38.88860', '-89.84270'), ('Hartford', 1545, '38.82800', '-90.09180'), ('Highland', 8438, '38.74100', '-89.67580'), ('Kaufman', 630, '38.86260', '-89.77730'), ('Kuhn', 8524, '38.78200', '-89.87650'), ('Livingston', 825, '38.96780', '-89.76390'), ('Madison', 4545, '38.67670', '-90.15030'), ('Marine', 910, '38.78580', '-89.77900'), ('Maryville', 4651, '38.72640', '-89.96470'), ('Mitchell', 5620, '38.76880', '-90.08130'), ('New Douglas', 369, '38.97000', '-89.66590'), ('Poag', 1961, '38.79400', '-90.03820'), ('Pontoon Beach', 5620, '38.72650', '-90.05110'), ('Prairietown', 1801, '38.96650', '-89.92200'), ('Roxana', 1547, '38.83660', '-90.05260'), ('St. Jacob', 801, '38.71690', '-89.76860'), ('Troy', 8524, '38.73120', '-89.89380'), ('Venice', 2528, '38.67200', '-90.16870'), ('Williamson', 251, '38.98740', '-89.76390'), ('Wood River', 11296, '38.86210', '-90.08480'), ('Worden', 905, '38.93220', '-89.83850')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC121': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alma', 386, '38.72290', '-88.91010'), ('Brubaker', 386, '38.69310', '-88.87650'), ('Cartter', 231, '38.54110', '-88.91220'), ('Central City', 1371, '38.54800', '-89.12860'), ('Centralia', 14136, '38.52280', '-89.12700'), ('Fairman', 1434, '38.67780', '-89.10470'), ('Helm', 598, '38.51700', '-88.71700'), ('Iuka', 598, '38.61450', '-88.78980'), ('Junction City', 559, '38.57730', '-89.12540'), ('Kell', 231, '38.49080', '-88.90420'), ('Kinmundy', 892, '38.77400', '-88.84960'), ('Odin', 1122, '38.61640', '-89.05390'), ('Omega', 598, '38.70450', '-88.78070'), ('Patoka', 633, '38.75340', '-89.09600'), ('Salem', 7909, '38.62830', '-88.95180'), ('Sandoval', 1434, '38.61130', '-89.11930'), ('Selmaville', 7909, '38.60700', '-88.99540'), ('Stephen Forbes Station', 892, '38.72490', '-88.76380'), ('Tonti', 7909, '38.66470', '-88.97840'), ('Vernon', 178, '38.80200', '-89.08910'), ('Walnut Hill', 109, '38.47740', '-89.04420')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILC123': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Camp Grove', 787, '41.08330', '-89.63330'), ('Henry', 2540, '41.11230', '-89.36180'), ('Hopewell', 396, '40.98330', '-89.45630'), ('Lacon', 1979, '41.02170', '-89.40680'), ('La Rose', 159, '40.97740', '-89.23450'), ('Lawn Ridge', 5996, '40.98330', '-89.61670'), ('Sparland', 504, '41.03030', '-89.44090'), ('Toluca', 1339, '41.00530', '-89.13320'), ('Varna', 436, '41.03560', '-89.22450'), ('Wenona', 1065, '41.06670', '-89.07000')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC125': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bath', 310, '40.19110', '-90.14240'), ('Chatauqua Park', 3577, '40.33330', '-90.05000'), ('Easton', 373, '40.23200', '-89.84210'), ('Forest City', 287, '40.37100', '-89.83190'), ('Havana', 3577, '40.29840', '-90.05680'), ('Kilbourne', 375, '40.15160', '-90.00950'), ('Manito', 1733, '40.42180', '-89.78070'), ('Mason City', 2558, '40.20180', '-89.69620'), ('Poplar City', 90, '40.25000', '-89.95000'), ('San Jose', 696, '40.30600', '-89.60340'), ('Snicarte', 310, '40.13500', '-90.24000'), ('Topeka', 90, '40.32990', '-89.93090'), ('Union', 1733, '40.40000', '-89.80000')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC127': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Brookport', 1054, '37.12500', '-88.62720'), ('Joppa', 409, '37.20580', '-88.84430'), ('Metropolis', 6482, '37.15220', '-88.71200')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC129': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Athens', 1726, '39.96090', '-89.72480'), ('Atterberry', 309, '40.06670', '-89.91670'), ('Fancy Prairie', 1439, '39.98330', '-89.60000'), ('Greenview', 862, '40.08480', '-89.74020'), ('Oakford', 309, '40.10100', '-89.96540'), ('Petersburg', 2299, '40.01240', '-89.85140'), ('Sweetwater', 862, '40.06000', '-89.70000'), ('Tallula', 638, '39.94580', '-89.93630')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC131': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aledo', 3613, '41.19830', '-90.74740'), ('Aledo Mercer County Airport', 3613, '41.25000', '-90.73330'), ('Boden', 772, '41.26670', '-90.58330'), ('Burgess', 956, '41.13330', '-90.63330'), ('Cable', 694, '41.28330', '-90.50000'), ('Eliza', 632, '41.30000', '-90.96670'), ('Gilchrist', 956, '41.20000', '-90.61670'), ('Gingle Corners', 3613, '41.26670', '-90.73330'), ('Griffin', 694, '41.23330', '-90.48330'), ('Hamlet', 508, '41.31670', '-90.73330'), ('Joy', 373, '41.19690', '-90.87960'), ('Keithsburg', 714, '41.10090', '-90.93590'), ('Mannon', 373, '41.23330', '-90.95000'), ('Marston', 508, '41.31670', '-90.80000'), ('Matherville', 772, '41.25910', '-90.60570'), ('Millersburg', 373, '41.23330', '-90.81670'), ('New Boston', 632, '41.16940', '-91.00050'), ('New Windsor', 782, '41.20000', '-90.45000'), ('North Henderson', 187, '41.09070', '-90.47500'), ('Ogle', 714, '41.10000', '-90.88330'), ('Old Gilchrist', 772, '41.23330', '-90.63330'), ('Petersville', 373, '41.28330', '-90.93330'), ('Preemption', 772, '41.31660', '-90.58330'), ('Seaton', 242, '41.10190', '-90.79920'), ('Shale City', 956, '41.21660', '-90.63330'), ('Sherrard', 694, '41.31840', '-90.50530'), ('Sunbeam', 3613, '41.13330', '-90.73330'), ('Swedona', 694, '41.28330', '-90.45000'), ('Viola', 956, '41.20520', '-90.58740'), ('Wanlock', 956, '41.21660', '-90.63000')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILC133': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ames', 260, '38.14520', '-90.05700'), ('Burksville', 7614, '38.26730', '-90.15460'), ('Chalfin Bridge', 148, '38.21200', '-90.27060'), ('Columbia', 7922, '38.45520', '-90.22620'), ('Foster Pond', 608, '38.31380', '-90.23370'), ('Fountain', 608, '38.35930', '-90.29090'), ('Fults', 28, '38.16370', '-90.21260'), ('Harrisonville', 2263, '38.27640', '-90.35050'), ('Hecker', 475, '38.30450', '-89.99400'), ('Kidd', 28, '38.11730', '-90.17290'), ('Madonnaville', 148, '38.26390', '-90.24710'), ('Maeystown', 148, '38.22650', '-90.23160'), ('Monroe City', 148, '38.25470', '-90.26770'), ('New Design', 7614, '38.26820', '-90.11840'), ('New Handover', 7922, '38.39050', '-90.22510'), ('Renault', 28, '38.15360', '-90.13400'), ('Valmeyer', 608, '38.30410', '-90.31300'), ('Wartburg', 7614, '38.28990', '-90.19610'), ('Waterloo', 7614, '38.33160', '-90.15560')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC135': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Butler', 197, '39.19790', '-89.53400'), ('Chapman', 362, '39.10570', '-89.31700'), ('Coalton', 307, '39.28460', '-89.30450'), ('Coffeen', 709, '39.08890', '-89.39050'), ('Donnellson', 243, '39.03020', '-89.47460'), ('Farmersville', 768, '39.44420', '-89.65300'), ('Fillmore', 362, '39.11570', '-89.27930'), ('Harvel', 235, '39.35700', '-89.54550'), ('Hillsboro', 4359, '39.16310', '-89.48440'), ('Honey Bend', 927, '39.25540', '-89.62570'), ('Irving', 2484, '39.20490', '-89.40600'), ('Litchfield', 6815, '39.17590', '-89.65600'), ('Nokomis', 2389, '39.30040', '-89.28530'), ('Ohlman', 82, '39.34550', '-89.21830'), ('Panama', 323, '39.02870', '-89.52520'), ('Raymond', 927, '39.32020', '-89.57370'), ('Taylor Springs', 583, '39.13070', '-89.49520'), ('Van Burensburg', 362, '39.03610', '-89.27950'), ('Waggoner', 245, '39.37820', '-89.65230'), ('Walshville', 89, '39.06940', '-89.61950'), ('Wenonah', 44, '39.32010', '-89.28930'), ('White Oak', 2647, '39.50980', '-89.57120'), ('Witt', 991, '39.25580', '-89.34900')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILC137': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alexander', 586, '39.71670', '-90.05000'), ('Chapin', 592, '39.76730', '-90.40330'), ('Concord', 176, '39.81610', '-90.37170'), ('Franklin', 586, '39.62040', '-90.04720'), ('Jacksonville', 18940, '39.72970', '-90.23430'), ('Literberry', 1728, '39.85000', '-90.20000'), ('Lynnville', 137, '39.68500', '-90.34630'), ('Meredosia', 1041, '39.83150', '-90.55830'), ('Murrayville', 644, '39.58230', '-90.25090'), ('Nortonville', 559, '39.56670', '-90.15000'), ('Prentice', 1361, '39.85000', '-90.05000'), ('Sinclair', 1361, '39.81670', '-90.11670'), ('Waverly', 1346, '39.59270', '-89.95230'), ('Woodson', 559, '39.62750', '-90.22290')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILC139': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Allenville', 154, '39.55790', '-88.53830'), ('Bethany', 1287, '39.64420', '-88.74090'), ('Cadwell', 2203, '39.68330', '-88.53330'), ('Dalton City', 581, '39.71410', '-88.80700'), ('Gays', 259, '39.45790', '-88.49590'), ('Kirksville', 4326, '39.56670', '-88.66670'), ('Lake City', 1222, '39.75000', '-88.71670'), ('Lovington', 1222, '39.71450', '-88.63090'), ('Sullivan', 4326, '39.59740', '-88.60710')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC141': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adeline', 139, '42.14080', '-89.49050'), ('Byron', 2917, '42.12840', '-89.25830'), ('Creston', 543, '41.93080', '-88.96550'), ('Davis Junction', 491, '42.10190', '-89.09200'), ('Forreston', 1469, '42.12610', '-89.57870'), ('Hillcrest', 1158, '41.95250', '-89.07040'), ('Leaf River', 555, '42.12320', '-89.40290'), ('Mount Morris', 3013, '42.04890', '-89.43200'), ('Oregon', 4060, '42.01310', '-89.33540'), ('Polo', 2477, '41.98470', '-89.57830'), ('Rochelle', 9424, '41.91840', '-89.06270'), ('Stillman Valley', 1048, '42.10400', '-89.17810')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILC143': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alta', 112936, '40.81670', '-89.63330'), ('Bartonville', 6310, '40.63760', '-89.66420'), ('Bellevue', 1887, '40.68630', '-89.67390'), ('Brimfield', 933, '40.83820', '-89.88390'), ('Chillicothe', 5996, '40.91830', '-89.49930'), ('Dunlap', 926, '40.86080', '-89.67660'), ('Elmore', 620, '40.96670', '-89.96670'), ('Elmwood', 1945, '40.77910', '-89.96690'), ('Glasford', 1076, '40.57230', '-89.81320'), ('Hanna City', 1013, '40.69220', '-89.79310'), ('Kickapoo', 926, '40.80000', '-89.75000'), ('Kingston Mines', 259, '40.55820', '-89.77060'), ('Laura', 933, '40.91670', '-89.91670'), ('Mapleton', 227, '40.56970', '-89.72140'), ('Monica', 1621, '40.93330', '-89.83330'), ('Mossville', 436, '40.81670', '-89.56670'), ('Norwood', 473, '40.70680', '-89.69950'), ('Peoria', 112936, '40.74500', '-89.60920'), ('Princeville', 1621, '40.93150', '-89.75560'), ('Rome', 1776, '40.87840', '-89.51170'), ('Smithville', 1013, '40.66670', '-89.80000'), ('Trivoli', 1013, '40.69220', '-89.88330'), ('West Peoria', 4762, '40.69920', '-89.63350')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC145': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cutler', 543, '38.03270', '-89.56660'), ('Du Quoin', 6448, '38.00420', '-89.23540'), ('Pinckneyville', 5464, '38.07810', '-89.38420'), ('St. Johns', 218, '38.03120', '-89.24040'), ('Tamaroa', 740, '38.13540', '-89.22890'), ('Willisville', 694, '37.98290', '-89.59060')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILC147': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atwood', 1290, '39.80000', '-88.47000'), ('Bement', 1784, '39.92280', '-88.57160'), ('Cerro Gordo', 1436, '39.89010', '-88.73460'), ('Cisco', 264, '40.01370', '-88.72350'), ('De Land', 475, '40.12160', '-88.64380'), ('Hammond', 518, '39.79850', '-88.59150'), ('La Place', 1436, '39.80000', '-88.71670'), ('Lodge', 5138, '40.10000', '-88.55000'), ('Mansfield', 949, '40.21200', '-88.50900'), ('Monticello', 5138, '40.02580', '-88.57470'), ('White Heath', 5138, '40.08330', '-88.50000')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC149': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atlas', 89, '39.51700', '-90.96700'), ('Barry', 1368, '39.69560', '-91.03970'), ('Baylis', 265, '39.72900', '-90.90920'), ('Bedford', 274, '39.52920', '-90.59600'), ('Beecreek', 187, '39.40030', '-90.63590'), ('Chambersburg', 567, '39.81730', '-90.65730'), ('Detroit', 93, '39.61980', '-90.67630'), ('El Dara', 89, '39.62210', '-90.99110'), ('Fishhook', 265, '39.80570', '-90.88540'), ('Florence', 71, '39.62820', '-90.61020'), ('Griggsville', 1258, '39.70790', '-90.72700'), ('Hull', 474, '39.70910', '-91.20500'), ('Independence', 29, '39.53150', '-90.79150'), ('Kinderhook', 249, '39.70490', '-91.15470'), ('Martinsburg', 1047, '39.51590', '-90.84260'), ('Milton', 274, '39.56420', '-90.64980'), ('Montezuma', 274, '39.55120', '-90.58320'), ('Nebo', 408, '39.44140', '-90.79030'), ('New Canton', 417, '39.63820', '-91.09780'), ('New Hartford', 89, '39.57570', '-90.91010'), ('New Salem', 136, '39.70800', '-90.84740'), ('Pearl', 187, '39.45860', '-90.62430'), ('Perry', 437, '39.78240', '-90.74720'), ('Pike', 3967, '39.45970', '-91.03500'), ('Pittsfield', 4211, '39.61070', '-90.80930'), ('Pleasant Hill', 1047, '39.44460', '-90.87290'), ('Rockport', 89, '39.53900', '-91.00870'), ('Seehorn', 1066, '39.75530', '-91.26120'), ('Summer Hill', 89, '39.54640', '-90.91930'), ('Time', 29, '39.56110', '-90.72280'), ('Valley City', 14, '39.70890', '-90.64910')], 'partOfState': 'west central', 'wfo': 'LSX'}, +'ILC151': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Eddyville', 153, '37.50030', '-88.58520'), ('Golconda', 726, '37.36270', '-88.48670'), ('Hamletsburg', 90, '37.14080', '-88.44600')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC153': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Karnak', 619, '37.29400', '-88.97600'), ('Mound City', 692, '37.08560', '-89.16300'), ('Mounds', 1117, '37.11480', '-89.20120'), ('New Grand Chain', 233, '37.25320', '-89.01710'), ('Olmsted', 299, '37.18150', '-89.08380'), ('Pulaski', 274, '37.21600', '-89.20700'), ('Ullin', 779, '37.28160', '-89.18380')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC155': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Florid', 75, '41.23330', '-89.28330'), ('Granville', 1414, '41.26430', '-89.22990'), ('Hennepin', 707, '41.25600', '-89.31960'), ('Lake Thunderbird', 787, '41.21670', '-89.45000'), ('Magnolia', 279, '41.11400', '-89.19520'), ('Mark', 491, '41.26420', '-89.24840'), ('Mc Nabb', 310, '41.17730', '-89.20980'), ('Putnam', 100, '41.18330', '-89.40000'), ('Standard', 300, '41.25640', '-89.18030')], 'partOfState': 'north central', 'wfo': 'DVN'}, +'ILC157': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Baldwin', 3627, '38.18370', '-89.84460'), ('Blair', 2077, '38.04480', '-89.74200'), ('Bremen', 5185, '37.97120', '-89.74730'), ('Chester', 5185, '37.91970', '-89.82510'), ('Coulterville', 1230, '38.18490', '-89.60430'), ('Eden', 4486, '38.12060', '-89.66760'), ('Ellis Grove', 381, '38.00930', '-89.90870'), ('Evansville', 724, '38.08880', '-89.93290'), ('Houston', 4486, '38.15930', '-89.78120'), ('Kaskaskia', 9, '37.92130', '-89.91640'), ('Kellogg', 4411, '38.01370', '-90.05540'), ('Modoc', 613, '38.05260', '-90.03730'), ('New Palestine', 5185, '37.99650', '-89.82070'), ('Percy', 942, '38.01600', '-89.61680'), ('Prairie', 3422, '38.17320', '-89.94320'), ('Prairie Du Rocher', 613, '38.08130', '-90.09760'), ('Preston', 724, '38.10610', '-89.86010'), ('Red Bud', 3422, '38.21020', '-89.99640'), ('Rockwood', 41, '37.83790', '-89.69740'), ('Roots', 381, '38.01790', '-89.97230'), ('Ruma', 260, '38.13440', '-89.99840'), ('Sparta', 4486, '38.15280', '-89.71550'), ('Steeleville', 2077, '38.00750', '-89.66070'), ('Tilden', 922, '38.21190', '-89.68330'), ('Walsh', 724, '38.08950', '-89.85080'), ('Welge', 2077, '37.95650', '-89.71260')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC159': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Berryville', 1001, '38.60000', '-87.95000'), ('Calhoun', 222, '38.65140', '-88.04280'), ('Claremont', 212, '38.71910', '-87.97450'), ('Dundas', 8631, '38.83330', '-88.08000'), ('Noble', 746, '38.69720', '-88.22460'), ('Olney', 8631, '38.73140', '-88.08530'), ('Parkersburg', 234, '38.58870', '-88.05570'), ('Schnell', 746, '38.63330', '-88.25000'), ('Wakefield', 746, '38.83500', '-88.23330')], 'partOfState': 'southeast', 'wfo': 'ILX'}, +'ILC161': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Andalusia', 1050, '41.43800', '-90.72540'), ('Barstow', 253, '41.51660', '-90.35000'), ('Blackhawk State Park', 39684, '41.46660', '-90.56660'), ('Buffalo Prairie', 373, '41.33330', '-90.85000'), ('Carbon Cliff', 1689, '41.49760', '-90.39030'), ('Coal Valley', 3606, '41.44900', '-90.44780'), ('Cordova', 633, '41.67800', '-90.32200'), ('Coyne Center', 906, '41.40000', '-90.56670'), ('East Moline', 20333, '41.51420', '-90.42740'), ('Edgington', 1050, '41.38330', '-90.76670'), ('Fruitland', 43768, '41.46670', '-90.51670'), ('Hampton', 1626, '41.55330', '-90.40560'), ('Hillsdale', 588, '41.61180', '-90.17520'), ('Illiniwek Park', 1626, '41.56670', '-90.40000'), ('Illinois City', 22881, '41.40000', '-90.90000'), ('Indian Bluff Park', 5831, '41.43330', '-90.51660'), ('Joslin', 0, '41.55730', '-90.22210'), ('Loud Thunder Forest Preserve', 1214, '41.43330', '-90.83330'), ('Milan', 5348, '41.44420', '-90.56130'), ('Moline', 43768, '41.48510', '-90.48880'), ('Moline Quad-City Airport', 43768, '41.45000', '-90.50000'), ('Oak Grove', 906, '41.41400', '-90.57320'), ('Port Byron', 1535, '41.62130', '-90.32370'), ('Rapids City', 953, '41.58190', '-90.34140'), ('Reynolds', 508, '41.33250', '-90.67280'), ('Rock Island', 39684, '41.47550', '-90.58030'), ('Rock Island Arsenal', 0, '41.51780', '-90.53780'), ('Silvis', 7269, '41.50630', '-90.41270'), ('Silvis Heights', 7269, '41.50000', '-90.41670'), ('Taylor Ridge', 508, '41.38330', '-90.66670')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILC163': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Barr', 2794, '38.40470', '-90.10430'), ('Belleville', 41410, '38.53000', '-90.00320'), ('Brooklyn', 676, '38.65160', '-90.16740'), ('Cahokia', 16391, '38.56480', '-90.17760'), ('Caseyville', 4310, '38.63300', '-90.03270'), ('Centreville', 5951, '38.57720', '-90.10160'), ('Dupo', 3933, '38.51750', '-90.20960'), ('East Carondelet', 267, '38.53860', '-90.23700'), ('East St. Louis', 31542, '38.61460', '-90.13100'), ('Fairmont City', 2436, '38.65100', '-90.10150'), ('Fairview Heights', 15034, '38.59670', '-90.00490'), ('Fayetteville', 384, '38.37790', '-89.79610'), ('Floraville', 2248, '38.37580', '-90.05630'), ('Freeburg', 3872, '38.42780', '-89.90810'), ('Lebanon', 3523, '38.60310', '-89.81500'), ('Lenzburg', 577, '38.28520', '-89.81870'), ('Marissa', 2141, '38.25500', '-89.75370'), ('Mascoutah', 5659, '38.50910', '-89.80540'), ('Millstadt', 2794, '38.45940', '-90.09310'), ('New Athens', 1981, '38.31900', '-89.87740'), ("O'fallon", 21910, '38.59200', '-89.91330'), ('Paderborn', 2248, '38.35910', '-90.04230'), ('Sauget', 249, '38.58940', '-90.16970'), ('Scott AFB', 2707, '38.54420', '-89.85040'), ('Shiloh', 7643, '38.55350', '-89.90520'), ('Smithton', 2248, '38.40820', '-89.99020'), ('St. Libory', 58, '38.36450', '-89.71400'), ('Summerfield', 472, '38.59570', '-89.74730'), ('Swansea', 10579, '38.54210', '-89.98860'), ('Washington Park', 5345, '38.62990', '-90.09220')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILC165': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Carriers Mills', 1886, '37.68860', '-88.62890'), ('Eldorado', 4534, '37.81180', '-88.44170'), ('Galatia', 1013, '37.84110', '-88.61390'), ('Harrisburg', 9860, '37.73650', '-88.54930'), ('Muddy', 78, '37.76500', '-88.51680'), ('Raleigh', 330, '37.82530', '-88.53160'), ('Stonefort', 292, '37.61750', '-88.70720')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC167': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Auburn', 4317, '39.57720', '-89.74580'), ('Berlin', 140, '39.75770', '-89.90250'), ('Berry', 2893, '39.71670', '-89.48330'), ('Buffalo', 491, '39.84950', '-89.40900'), ('Cantrall', 139, '39.93440', '-89.68010'), ('Chatham', 8583, '39.67290', '-89.69710'), ('Curran', 1206, '39.74000', '-89.76670'), ('Dawson', 466, '39.85380', '-89.46270'), ('Divernon', 1201, '39.56930', '-89.65400'), ('Farmingdale', 777, '39.83330', '-89.81670'), ('Glenarm', 1201, '39.61670', '-89.67000'), ('Illiopolis', 916, '39.85130', '-89.24700'), ('Loami', 804, '39.67440', '-89.84800'), ('Lowder', 750, '39.55000', '-89.85000'), ('Mechanicsburg', 456, '39.81020', '-89.39820'), ('New Berlin', 1030, '39.72520', '-89.91190'), ('Pawnee', 2647, '39.59200', '-89.58090'), ('Pleasant Plains', 777, '39.87320', '-89.92000'), ('Riverton', 3048, '39.84920', '-89.54010'), ('Rochester', 2893, '39.75060', '-89.54150'), ('Salisbury', 777, '39.90000', '-89.81670'), ('Sherman', 2871, '39.88660', '-89.60900'), ('Springfield', 111454, '39.78140', '-89.64470'), ('Thayer', 750, '39.53990', '-89.75840'), ('Williamsville', 1439, '39.95280', '-89.55630')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC169': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bluff City', 310, '40.18330', '-90.23330'), ('Brooklyn', 97, '40.23330', '-90.76670'), ('Browning', 130, '40.12810', '-90.37280'), ('Camden', 97, '40.15300', '-90.77240'), ('Frederick', 5766, '40.06670', '-90.43330'), ('Huntsville', 657, '40.18330', '-90.86670'), ('Littleton', 197, '40.23470', '-90.62330'), ('Ray', 792, '40.21670', '-90.48330'), ('Rushville', 3212, '40.11980', '-90.56570')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILC171': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alsey', 246, '39.55930', '-90.43350'), ('Bluffs', 748, '39.75000', '-90.53440'), ('Exeter', 70, '39.71900', '-90.49590'), ('Glasgow', 170, '39.54970', '-90.47960'), ('Manchester', 354, '39.54220', '-90.33040'), ('Merritt', 592, '39.71670', '-90.41670'), ('Naples', 134, '39.75390', '-90.60800'), ('Oxville', 748, '39.70000', '-90.56670'), ('Riggston', 1650, '39.68330', '-90.43330'), ('Winchester', 1650, '39.62940', '-90.45660')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILC173': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Clarksburg', 4971, '39.34000', '-88.75000'), ('Cowden', 612, '39.24890', '-88.85880'), ('Findlay', 723, '39.52110', '-88.75430'), ('Herrick', 524, '39.21920', '-88.98530'), ('Lakewood', 609, '39.32500', '-88.90000'), ('Moweaqua', 1923, '39.62540', '-89.01770'), ('Oconee', 202, '39.28650', '-89.10620'), ('Shelbyville', 4971, '39.40710', '-88.80400'), ('Sigel', 386, '39.22620', '-88.49510'), ('Stewardson', 747, '39.26420', '-88.62990'), ('Strasburg', 603, '39.35060', '-88.62320'), ('Tower Hill', 609, '39.38680', '-88.95960'), ('Trowbridge', 1854, '39.32100', '-88.53330'), ('Westervelt', 4971, '39.46670', '-88.86670'), ('Windsor', 1125, '39.43810', '-88.59580')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC175': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bradford', 787, '41.17690', '-89.65720'), ('Castleton', 787, '41.11670', '-89.70000'), ('Duncan', 1621, '40.98330', '-89.78330'), ('Elmira', 1400, '41.18330', '-89.83330'), ('La Fayette', 227, '41.10980', '-89.97350'), ('Lombardville', 787, '41.23330', '-89.65000'), ('Osceola', 519, '41.21670', '-89.78330'), ('Toulon', 1400, '41.09450', '-89.86370'), ('West Jersey', 227, '41.01670', '-89.93330'), ('Wyoming', 1424, '41.06450', '-89.77230')], 'partOfState': 'north central', 'wfo': 'ILX'}, +'ILC177': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Afolkey', 499, '42.43330', '-89.56670'), ('Albertus Airport', 26443, '42.25000', '-89.58330'), ('Bolton', 780, '42.25000', '-89.73330'), ('Buena Vista', 751, '42.43330', '-89.68330'), ('Cedarville', 719, '42.37510', '-89.63650'), ('Dakota', 499, '42.38740', '-89.52710'), ('Dakota Dornink Airport', 499, '42.38330', '-89.56670'), ('Damascus', 719, '42.36670', '-89.70000'), ('Davis', 662, '42.42220', '-89.41570'), ('Eleroy', 2887, '42.33330', '-89.76670'), ('Freeport', 26443, '42.29020', '-89.63470'), ('German Valley', 481, '42.21580', '-89.48380'), ('Kent', 780, '42.31670', '-89.90000'), ('Lake Leaquana State Park', 2887, '42.41670', '-89.83330'), ('Lena', 2887, '42.38090', '-89.82580'), ('Loran', 780, '42.23330', '-89.91670'), ('Mc Connell', 345, '42.43330', '-89.73330'), ('Oakdale Nature Preserve', 26443, '42.23330', '-89.60000'), ('Oneco', 751, '42.48330', '-89.66670'), ('Orangeville', 751, '42.46810', '-89.64470'), ('Pearl City', 780, '42.26770', '-89.82550'), ('Red Oak', 719, '42.40000', '-89.66670'), ('Ridott', 159, '42.29750', '-89.47730'), ('Ridott Corners', 159, '42.28330', '-89.48330'), ('Rock City', 313, '42.41260', '-89.47080'), ('Rock Grove', 313, '42.46670', '-89.51670'), ('Scioto Mills', 719, '42.35000', '-89.66670'), ('Waddams Grove', 2887, '42.41670', '-89.88330'), ('Winneshiek', 499, '42.35000', '-89.53330'), ('Winslow', 345, '42.49240', '-89.79630')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILC179': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Armington', 368, '40.33990', '-89.31370'), ('Creve Coeur', 5448, '40.64130', '-89.59970'), ('Deer Creek', 605, '40.62930', '-89.33310'), ('Delavan', 1825, '40.37140', '-89.54490'), ('Dillon', 2029, '40.46670', '-89.53330'), ('East Peoria', 22638, '40.67150', '-89.54780'), ('Green Valley', 728, '40.40640', '-89.64250'), ('Groveland', 15198, '40.61120', '-89.52500'), ('Hopedale', 929, '40.42180', '-89.41630'), ('Mackinaw', 1452, '40.53500', '-89.35850'), ('Marquette Heights', 2794, '40.61720', '-89.60370'), ('Minier', 1244, '40.43380', '-89.31400'), ('Morton', 15198, '40.61120', '-89.46780'), ('Pekin', 33857, '40.56820', '-89.62810'), ('Powerton', 1162, '40.53330', '-89.68330'), ('South Pekin', 1162, '40.49690', '-89.65180'), ('Tremont', 2029, '40.52580', '-89.49030'), ('Washington', 10841, '40.69820', '-89.43510')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILC181': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alto Pass', 388, '37.57290', '-89.31930'), ('Anna', 5136, '37.46000', '-89.24110'), ('Cobden', 1116, '37.53340', '-89.25420'), ('Dongola', 806, '37.36000', '-89.16390'), ('Jonesboro', 1853, '37.45430', '-89.26960'), ('Mill Creek', 76, '37.34150', '-89.25420')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC183': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Allerton', 293, '39.91530', '-87.93560'), ('Alvin', 316, '40.30770', '-87.60680'), ('Armstrong', 681, '40.31670', '-87.88330'), ('Bismarck', 316, '40.26670', '-87.60000'), ('Catlin', 2087, '40.06840', '-87.70790'), ('Collison', 681, '40.23330', '-87.80000'), ('Danville', 33904, '40.14390', '-87.61940'), ('Fairmount', 640, '40.04610', '-87.82860'), ('Fithian', 506, '40.11400', '-87.87470'), ('Georgetown', 3628, '39.97650', '-87.63500'), ('Henning', 241, '40.30620', '-87.70070'), ('Hoopeston', 5965, '40.46520', '-87.67090'), ('Indianola', 207, '39.92710', '-87.74020'), ('Jamaica', 640, '39.98330', '-87.80000'), ('Oakwood', 1502, '40.10900', '-87.77650'), ('Potomac', 681, '40.30640', '-87.79720'), ('Rankin', 617, '40.46470', '-87.89610'), ('Ridge Farm', 912, '39.89530', '-87.65230'), ('Rossville', 1217, '40.38180', '-87.66910'), ('Sidell', 626, '39.91020', '-87.82200'), ('Tilton', 2976, '40.09430', '-87.63850'), ('Westville', 3175, '40.04480', '-87.63800')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILC185': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Allendale', 528, '38.52760', '-87.71030'), ('Bellmont', 297, '38.38260', '-87.90950'), ('Keensburg', 252, '38.35200', '-87.86700'), ('Mount Carmel', 7982, '38.41720', '-87.77010')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'ILC187': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alexis', 863, '41.06400', '-90.56500'), ('Berwick', 3612, '40.80000', '-90.53330'), ('Cameron', 9489, '40.88330', '-90.51670'), ('Coldbrook', 863, '40.95000', '-90.51670'), ('Eleanor', 269, '40.98330', '-90.70000'), ('Gerlaw', 9489, '40.98330', '-90.60000'), ('Greenbush', 915, '40.71670', '-90.53330'), ('Kirkwood', 794, '40.86750', '-90.74830'), ('Lake Warren', 0, '40.99760', '-90.64200'), ('Larchland', 1083, '40.81670', '-90.65000'), ('Little Swan Lake', 0, '40.66660', '-90.54500'), ('Little York', 269, '41.01040', '-90.74670'), ('Monmouth', 9841, '40.91340', '-90.64300'), ('Monmouth Municipal Airport', 9489, '40.93330', '-90.63330'), ('Ormonde', 9489, '40.85000', '-90.61670'), ('Ponemah', 794, '40.81670', '-90.70000'), ('Roseville', 1083, '40.73080', '-90.66270'), ('Smithshire', 130, '40.80000', '-90.78330'), ('Swan Creek', 1083, '40.66670', '-90.65000'), ('Youngstown', 1083, '40.66670', '-90.61670')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILC189': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Addieville', 267, '38.39170', '-89.48740'), ('Ashley', 613, '38.32910', '-89.18940'), ('Beaucoup', 3147, '38.34980', '-89.29210'), ('Cordes', 213, '38.29610', '-89.45720'), ('Covington', 204, '38.45480', '-89.43590'), ('Du Bois', 222, '38.22190', '-89.21280'), ('Elkton', 213, '38.29190', '-89.55680'), ('Frogtown', 267, '38.44230', '-89.49180'), ('Hoyleton', 520, '38.44530', '-89.27160'), ('Huegely', 520, '38.40570', '-89.31840'), ('Irvington', 736, '38.43710', '-89.16240'), ('Johannisburg', 137, '38.38450', '-89.65320'), ('Lively Grove', 137, '38.30000', '-89.61700'), ('Nashville', 3147, '38.34810', '-89.37770'), ('New Minden', 204, '38.43750', '-89.37090'), ('Oakdale', 213, '38.26380', '-89.50490'), ('Okawville', 1355, '38.43420', '-89.54830'), ('Posen', 3147, '38.25830', '-89.33570'), ('Radom', 395, '38.28060', '-89.19180'), ('Richview', 308, '38.37560', '-89.18370'), ('Stone Church', 137, '38.35040', '-89.62450'), ('Venedy', 137, '38.39590', '-89.64590'), ('Wamac', 1378, '38.50020', '-89.14570')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILC191': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cisne', 673, '38.51400', '-88.43710'), ('Fairfield', 5421, '38.38040', '-88.36900'), ('Golden Gate', 100, '38.35860', '-88.20550'), ('Jeffersonville', 366, '38.44300', '-88.40470'), ('Johnsonville', 69, '38.52060', '-88.53720'), ('Keenes', 99, '38.33790', '-88.64120'), ('Mount Erie', 105, '38.51460', '-88.23270'), ('Sims', 273, '38.36120', '-88.53500'), ('Wayne City', 1089, '38.34870', '-88.58740')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILC193': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Burnt Prairie', 58, '38.25050', '-88.25770'), ('Carmi', 5422, '38.08640', '-88.17120'), ('Crossville', 782, '38.16260', '-88.06450'), ('Enfield', 625, '38.10170', '-88.33730'), ('Maunie', 177, '38.03510', '-88.04530'), ('Mill Shoals', 235, '38.25140', '-88.34510'), ('Norris City', 1057, '37.97950', '-88.32820'), ('Phillipstown', 28, '38.14070', '-88.01920'), ('Springerton', 134, '38.17890', '-88.35490')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'ILC195': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Agnew', 9580, '41.78330', '-89.80000'), ('Albany', 895, '41.78560', '-90.21950'), ('Coleta', 155, '41.90560', '-89.79920'), ('Como', 9580, '41.76670', '-89.76670'), ('Deer Grove', 48, '41.61010', '-89.68460'), ('Denrock', 2023, '41.70000', '-89.98330'), ('Douglas Park', 15451, '41.80000', '-89.73330'), ('East Clinton', 3881, '41.83330', '-90.16670'), ('Emerson', 15451, '41.80000', '-89.76670'), ('Erie', 1589, '41.65870', '-90.08120'), ('Fenton', 1589, '41.73330', '-90.03330'), ('Franklin Corners', 505, '41.91670', '-89.91670'), ('Fulton', 3881, '41.86500', '-90.15870'), ('Galt', 9580, '41.78330', '-89.76670'), ('Garden Plain', 3881, '41.80000', '-90.13330'), ('Grimes Addition', 15451, '41.80000', '-89.75000'), ('Hamilton Corners', 2023, '41.70000', '-89.96670'), ('Leon Corners', 2023, '41.60000', '-89.91670'), ('Lyndon', 566, '41.71730', '-89.92520'), ('Malvern', 4447, '41.85000', '-89.88330'), ('Morrison', 4447, '41.80840', '-89.96540'), ('Morrison/Rockwood Park', 4447, '41.85000', '-89.96670'), ('Newton Corners', 1589, '41.73330', '-90.11670'), ('Penrose', 15451, '41.88330', '-89.66670'), ('Portland Corners', 2023, '41.66670', '-89.98330'), ('Prophetstown', 2023, '41.66970', '-89.93460'), ('Rock Falls', 9580, '41.77420', '-89.69110'), ('Round Grove', 566, '41.78330', '-89.86670'), ('Spring Hill', 1589, '41.61670', '-90.05000'), ('Sterling', 15451, '41.79820', '-89.69150'), ('Tampico', 772, '41.63050', '-89.78550'), ('Union Grove', 4447, '41.83330', '-90.03330'), ('Unionville', 4447, '41.81670', '-89.98330'), ('Ustick', 4447, '41.88330', '-90.00000'), ('White Pigeon', 155, '41.88330', '-89.88330'), ('Whiteside County Airport', 9580, '41.75000', '-89.68330'), ('Yeoward Addition', 9580, '41.75000', '-89.66670')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILC197': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Beecher', 2033, '41.34770', '-87.61490'), ('Bolingbrook', 56321, '41.70040', '-88.07720'), ('Braidwood', 5203, '41.26810', '-88.22320'), ('Channahon', 7344, '41.43450', '-88.21860'), ('Crest Hill', 13329, '41.56630', '-88.10510'), ('Crete', 7346, '41.45320', '-87.61510'), ('Crystal Lawns', 2933, '41.57030', '-88.15790'), ('Elwood', 1620, '41.41210', '-88.10900'), ('Fairmont', 2563, '41.56180', '-88.05990'), ('Frankfort', 10391, '41.49700', '-87.83590'), ('Frankfort Square', 7766, '41.51890', '-87.80310'), ('Godley', 594, '41.23730', '-88.24460'), ('Homer Glen', 17084, '41.62160', '-87.94060'), ('Ingalls Park', 3082, '41.52130', '-88.03390'), ('Joliet', 106221, '41.52670', '-88.12240'), ('Lakewood Shores', 1487, '41.27080', '-88.13630'), ('Lockport', 15191, '41.58940', '-88.04790'), ('Manhattan', 3330, '41.42600', '-87.98870'), ('Mokena', 14583, '41.53200', '-87.87570'), ('Monee', 2924, '41.42200', '-87.75410'), ('New Lenox', 17771, '41.51870', '-87.98400'), ('Peotone', 3385, '41.33160', '-87.79630'), ('Plainfield', 13038, '41.61590', '-88.20410'), ('Preston Heights', 2527, '41.49280', '-88.07310'), ('Rockdale', 1888, '41.50550', '-88.11820'), ('Romeoville', 21153, '41.64610', '-88.08630'), ('Shorewood', 7686, '41.52320', '-88.20240'), ('Steger', 968, '41.46780', '-87.63500'), ('Symerton', 106, '41.32810', '-88.05450'), ('University Park', 6662, '41.44240', '-87.70960'), ('Wilmington', 5134, '41.29770', '-88.15960')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILC199': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bush', 257, '37.84190', '-89.12980'), ('Cambria', 1330, '37.77860', '-89.11430'), ('Carterville', 4616, '37.76170', '-89.08270'), ('Colp', 224, '37.80750', '-89.07790'), ('Crainville', 992, '37.75030', '-89.06010'), ('Creal Springs', 702, '37.61860', '-88.83760'), ('Energy', 1175, '37.77540', '-89.02580'), ('Freeman Spur', 273, '37.85990', '-88.99980'), ('Herrin', 11298, '37.80160', '-89.03160'), ('Hurst', 805, '37.83560', '-89.14340'), ('Johnston City', 3557, '37.82160', '-88.92550'), ('Marion', 16035, '37.73280', '-88.94130'), ('Pittsburg', 575, '37.77670', '-88.85030'), ('Spillertown', 220, '37.76590', '-88.92110'), ('Whiteash', 268, '37.78520', '-88.93050')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILC201': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cherry Valley', 2191, '42.24000', '-88.96180'), ('Durand', 1081, '42.43560', '-89.32860'), ('Lake Summerset', 2061, '42.44970', '-89.39750'), ('Loves Park', 20044, '42.33580', '-89.01000'), ('Machesney Park', 20759, '42.36040', '-89.03800'), ('New Millford', 541, '42.17460', '-89.06540'), ('Pecatonica', 1997, '42.30990', '-89.35850'), ('Rockford', 150115, '42.27030', '-89.06310'), ('Rockford Airport', 541, '42.20000', '-89.10000'), ('Rockton', 5296, '42.44930', '-89.06990'), ('Roscoe', 6244, '42.41680', '-89.00700'), ('South Beloit', 5397, '42.48470', '-89.03340'), ('Winnebago', 2958, '42.26800', '-89.24050')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILC203': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Benson', 408, '40.85070', '-89.12050'), ('Cazenovia', 2700, '40.85070', '-89.33310'), ('Congerville', 466, '40.61670', '-89.20850'), ('El Paso', 2695, '40.73980', '-89.01480'), ('Eureka', 4871, '40.71560', '-89.27510'), ('Germantown Hills', 2111, '40.76890', '-89.46800'), ('Goodfield', 686, '40.62950', '-89.27120'), ('Kappa', 170, '40.67480', '-89.00820'), ('Low Point', 1147, '40.87840', '-89.32000'), ('Metamora', 2700, '40.79210', '-89.36360'), ('Minonk', 2168, '40.90360', '-89.03750'), ('Panola', 33, '40.78510', '-89.02040'), ('Roanoke', 1994, '40.79630', '-89.20170'), ('Secor', 379, '40.74050', '-89.13580'), ('Spring Bay', 436, '40.82350', '-89.52560'), ('Washburn', 1147, '40.92070', '-89.29170')], 'partOfState': 'central', 'wfo': 'ILX'}, +'INC001': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Berne', 4150, '40.65710', '-84.95430'), ('Ceylon', 0, '40.60700', '-84.95300'), ('Decatur', 9528, '40.83000', '-84.92820'), ('Geneva', 1368, '40.59720', '-84.95710'), ('Linn Grove', 0, '40.64500', '-85.03300'), ('Magley', 0, '40.83100', '-85.05300'), ('Monmouth', 0, '40.86800', '-84.94400'), ('Monroe', 734, '40.74450', '-84.94050'), ('Peterson', 0, '40.81300', '-85.01500'), ('Pleasant Mills', 0, '40.77800', '-84.84200'), ('Preble', 0, '40.83200', '-85.01500'), ('Rivare', 0, '40.81200', '-84.84100'), ('Salem', 0, '40.71700', '-84.85400'), ('Williams', 0, '40.91900', '-84.97500')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC003': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Aboite', 0, '41.00000', '-85.31800'), ('Arcola', 0, '41.10400', '-85.29400'), ('Cuba', 0, '41.18600', '-84.93900'), ('Dixon', 0, '40.95100', '-84.80400'), ('Dunfee', 0, '41.08700', '-85.33700'), ('Edgerton', 0, '41.07700', '-84.80600'), ('Fort Wayne', 205727, '41.07370', '-85.13900'), ('Georgetown', 0, '41.23200', '-84.86700'), ('Grabill', 1113, '41.21070', '-84.96790'), ('Harlan', 0, '41.19600', '-84.92000'), ('Hessen Cassel', 0, '40.97800', '-85.07900'), ('Hoagland', 0, '40.94800', '-84.99000'), ('Huntertown', 1771, '41.23130', '-85.16980'), ('Lake Everett', 0, '41.15500', '-85.31400'), ('Leo-Cedarville', 0, '41.21300', '-85.01700'), ('Maples', 0, '41.01300', '-84.96900'), ('Middletown', 0, '40.94300', '-85.04900'), ('Monroeville', 1236, '40.97220', '-84.86760'), ('New Haven', 12406, '41.06900', '-85.02510'), ('Nine Mile', 0, '40.97500', '-85.22500'), ('Poe', 0, '40.93600', '-85.08700'), ('Roanoke', 1495, '40.91911', '-85.28235'), ('Rolling Hills', 0, '41.02700', '-85.26800'), ('Tillman', 0, '41.02400', '-84.89300'), ('Townley', 0, '41.01800', '-84.86400'), ('Wallen', 0, '41.16100', '-85.16600'), ('Woodburn', 1579, '41.12600', '-84.85280'), ('Yoder', 0, '40.93100', '-85.17700'), ('Zanesville', 602, '40.91771', '-85.28015'), ('Zulu', 0, '41.03700', '-84.89200')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC005': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Clifford', 291, '39.28300', '-85.86960'), ('Columbus', 39059, '39.21070', '-85.91340'), ('Elizabethtown', 391, '39.13530', '-85.81270'), ('Hartsville', 376, '39.26700', '-85.69870'), ('Hope', 2140, '39.29990', '-85.76810'), ('Jonesville', 220, '39.06000', '-85.88880'), ('Taylorsville', 936, '39.29620', '-85.94920')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC007': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Ambia', 197, '40.48880', '-87.51620'), ('Boswell', 827, '40.51900', '-87.38260'), ('Earl Park', 485, '40.68580', '-87.42040'), ('Fowler', 2415, '40.61720', '-87.31700'), ('Otterbein', 1312, '40.48830', '-87.11000'), ('Oxford', 1271, '40.52140', '-87.24850')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INC009': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Hartford City', 6928, '40.45250', '-85.37180'), ('Mill Grove', 0, '40.40800', '-85.27500'), ('Montpelier', 1929, '40.55290', '-85.28170'), ('Roll', 0, '40.55200', '-85.39000'), ('Shamrock Lakes', 168, '40.41100', '-85.42620'), ('Trenton', 0, '40.45000', '-85.23900')], 'partOfState': 'east central', 'wfo': 'IWX'}, +'INC011': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Advance', 562, '39.99520', '-86.62040'), ('Jamestown', 886, '39.92740', '-86.62840'), ('Lebanon', 14222, '40.05160', '-86.47350'), ('Thorntown', 1562, '40.12870', '-86.61010'), ('Ulen', 123, '40.06420', '-86.46340'), ('Whitestown', 471, '39.99560', '-86.34640'), ('Zionsville', 8775, '39.95240', '-86.27270')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC013': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Nashville', 825, '39.20380', '-86.23600')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INC015': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Burlington', 444, '40.48130', '-86.39450'), ('Camden', 582, '40.61020', '-86.53870'), ('Delphi', 3015, '40.58460', '-86.67030'), ('Flora', 2227, '40.54490', '-86.52340'), ('Yeoman', 96, '40.66710', '-86.72340')], 'partOfState': 'north central', 'wfo': 'IND'}, +'INC017': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Adamsboro', 0, '40.78400', '-86.26700'), ('Anoka', 0, '40.72200', '-86.28200'), ('Clymers', 0, '40.70800', '-86.44900'), ('Deacon', 0, '40.63400', '-86.31700'), ('Galveston', 0, '40.57900', '-86.19000'), ('Georgetown', 0, '40.74100', '-86.50500'), ('Hoover', 0, '40.80900', '-86.20100'), ('Lake Cicott', 0, '40.76400', '-86.52400'), ('Leases Corner', 0, '40.86600', '-86.37400'), ('Lincoln', 0, '40.61600', '-86.21000'), ('Logansport', 19684, '40.75370', '-86.35740'), ('Lucerne', 0, '40.86600', '-86.40300'), ('Metea', 0, '40.86900', '-86.30900'), ('New Waverly', 0, '40.76400', '-86.19200'), ('Onward', 81, '40.69400', '-86.19540'), ('Royal Center', 832, '40.86460', '-86.50050'), ('Twelve Mile', 0, '40.86600', '-86.22500'), ('Walton', 1069, '40.66230', '-86.24470')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC019': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bennettsville', 6071, '38.42562', '-85.80858'), ('Bethlehem', 761, '38.53923', '-85.42051'), ('Blue Lick', 0, '38.50840', '-85.80469'), ('Borden', 818, '38.46673', '-85.94580'), ('Carwood', 818, '38.44840', '-85.86386'), ('Cementville', 21400, '38.34979', '-85.74607'), ('Charlestown', 5993, '38.45312', '-85.67024'), ('Chestnut Hill', 0, '38.47589', '-85.93275'), ('Clark Regional Airport', 13140, '38.36833', '-85.73846'), ('Clark Siding', 0, '38.47284', '-85.66357'), ('Clarksville', 0, '38.29674', '-85.75996'), ('Hamburg', 6071, '38.38340', '-85.76746'), ('Henryville', 1545, '38.54173', '-85.76774'), ('Hibernia', 0, '38.50201', '-85.52552'), ('Jeffersonville', 27362, '38.27757', '-85.73718'), ('Marysville', 5993, '38.58562', '-85.64357'), ('Memphis', 400, '38.48340', '-85.76163'), ('Nabb', 5993, '38.60562', '-85.63274'), ('New Market', 650, '38.53562', '-85.61691'), ('New Washington', 547, '38.56312', '-85.53968'), ('Oak Park', 0, '38.30562', '-85.69635'), ('Otisco', 5993, '38.54228', '-85.66719'), ('Otto', 2834, '38.57090', '-85.46690'), ('Owen', 2447, '38.45812', '-85.54190'), ('Prather', 0, '38.38173', '-85.69274'), ('River Ridge', 0, '38.37868', '-85.64552'), ('Rolling Hills', 0, '38.47812', '-85.58857'), ('Sellersburg', 6071, '38.39812', '-85.75496'), ('Speed', 6071, '38.41229', '-85.75246'), ('Starlight', 818, '38.41506', '-85.89247'), ('Underwood', 6040, '38.60367', '-85.77441'), ('Utica', 591, '38.33368', '-85.65357'), ('Vesta', 0, '38.48506', '-85.55052'), ('Watson', 5379, '38.34868', '-85.69996'), ('Wilson', 0, '38.44451', '-85.82969')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC021': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brazil', 8188, '39.52360', '-87.12340'), ('Carbon', 334, '39.59890', '-87.10750'), ('Center Point', 292, '39.41480', '-87.07450'), ('Clay City', 1019, '39.27700', '-87.11210'), ('Harmony', 589, '39.53400', '-87.07340'), ('Knightsville', 624, '39.52610', '-87.08980'), ('Staunton', 550, '39.48610', '-87.18940')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC023': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Colfax', 768, '40.19430', '-86.66720'), ('Frankfort', 16662, '40.28110', '-86.51030'), ('Kirklin', 766, '40.19300', '-86.35970'), ('Michigantown', 406, '40.32780', '-86.39100'), ('Mulberry', 1387, '40.34560', '-86.66810'), ('Rossville', 1513, '40.42110', '-86.59560')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC025': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alton', 53, '38.12256', '-86.41776'), ('Beechwood', 353, '38.20673', '-86.42442'), ('Brownstown', 673, '38.38089', '-86.50304'), ('Cape Sandy', 353, '38.15090', '-86.37081'), ('Carefree', 27, '38.25173', '-86.35137'), ('Curby', 27, '38.28756', '-86.37720'), ('Deuchars', 53, '38.17229', '-86.44831'), ('Eckerty', 465, '38.32034', '-86.61193'), ('English', 673, '38.33450', '-86.46415'), ('Fredonia', 353, '38.17812', '-86.38303'), ('Grantsburg', 673, '38.28812', '-86.46943'), ('Hogtown', 0, '38.35839', '-86.31776'), ('Leavenworth', 353, '38.19979', '-86.34414'), ('Marengo', 829, '38.36923', '-86.34359'), ('Mifflin', 673, '38.30617', '-86.54026'), ('Milltown', 932, '38.34228', '-86.27609'), ('Pilot Knob', 27, '38.28256', '-86.34970'), ('Riceville', 465, '38.32450', '-86.66554'), ('Riddle', 27, '38.25062', '-86.43054'), ('Sulphur', 673, '38.22756', '-86.47081'), ('Sulphur Springs', 53, '38.21201', '-86.47498'), ('Switzer Crossroads', 0, '38.26895', '-86.41665'), ('Taswell', 673, '38.33423', '-86.56110'), ('Temple', 673, '38.34450', '-86.41582'), ('West Fork', 673, '38.23367', '-86.52637'), ('Wickliffe', 465, '38.36839', '-86.64110'), ('Wyandotte', 353, '38.22868', '-86.29470')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC027': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alfordsville', 112, '38.56010', '-86.94870'), ('Cannelburg', 140, '38.66900', '-86.99790'), ('Elnora', 721, '38.87720', '-87.08490'), ('Montgomery', 368, '38.66520', '-87.04710'), ('Odon', 1376, '38.84230', '-86.98870'), ('Plainville', 513, '38.80430', '-87.15190'), ('Washington', 11380, '38.65820', '-87.17300')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INC029': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Aurora', 3965, '39.06640', '-84.90330'), ('Bright', 5405, '39.21592', '-84.85779'), ('Dillsboro', 1436, '39.01860', '-85.06170'), ('Greendale', 4296, '39.11770', '-84.86020'), ('Hidden Valley', 4417, '39.16220', '-84.84310'), ('Lawrenceburg', 4685, '39.09317', '-84.85657'), ('Moores Hill', 635, '39.11340', '-85.08900'), ('St. Leon', 387, '39.29149', '-84.95749'), ('West Harrison', 284, '39.26120', '-84.82090')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INC031': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Greensburg', 10260, '39.34140', '-85.48050'), ('Millhousen', 136, '39.21070', '-85.43530'), ('Newpoint', 298, '39.30890', '-85.33010'), ('St. Paul', 1022, '39.42730', '-85.62910'), ('Westport', 1515, '39.17610', '-85.57530')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC033': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Altona', 198, '41.35090', '-85.15280'), ('Artic', 0, '41.47400', '-84.81500'), ('Ashley', 0, '41.52700', '-85.06600'), ('Auburn', 12074, '41.36330', '-85.05760'), ('Butler', 2725, '41.42920', '-84.87060'), ('Butler Center', 0, '41.30800', '-85.13700'), ('Concord', 0, '41.32600', '-84.94500'), ('Corunna', 254, '41.43570', '-85.14420'), ('Fairfield Center', 0, '41.48300', '-85.12800'), ('Garrett', 5803, '41.34990', '-85.12770'), ('Moore', 0, '41.40000', '-84.95200'), ('Newville', 0, '41.34900', '-84.84500'), ('Saint Joe', 478, '41.31480', '-84.90350'), ('Saint Johns', 0, '41.30900', '-85.11400'), ('Sedan', 0, '41.43600', '-85.10000'), ('Spencerville', 0, '41.28300', '-84.92200'), ('Waterloo', 2200, '41.43340', '-85.02660')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC035': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Albany', 2368, '40.30210', '-85.23360'), ('Daleville', 1658, '40.11880', '-85.55630'), ('Eaton', 1603, '40.34050', '-85.35490'), ('Gaston', 1010, '40.31350', '-85.50130'), ('Muncie', 67430, '40.19750', '-85.39060'), ('Selma', 880, '40.18840', '-85.27430'), ('Yorktown', 4785, '40.17330', '-85.47860')], 'partOfState': 'east central', 'wfo': 'IND'}, +'INC037': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Birdseye', 465, '38.31672', '-86.69582'), ('Bretzville', 2277, '38.29950', '-86.87305'), ('Celestine', 465, '38.38478', '-86.77916'), ('Crystal', 1941, '38.49200', '-86.75388'), ('Cuzco', 1941, '38.47505', '-86.72277'), ('Dubois', 12100, '38.44533', '-86.80444'), ('Dubois Crossroads', 0, '38.48116', '-86.81194'), ('Duff', 695, '38.32727', '-87.02639'), ('Ellsworth', 0, '38.42783', '-86.71833'), ('Ferdinand', 2277, '38.22394', '-86.86222'), ('Haysville', 112, '38.48561', '-86.91500'), ('Hillham', 1941, '38.51394', '-86.70055'), ('Holland', 695, '38.24561', '-87.03611'), ('Huntingburg', 5598, '38.29894', '-86.95500'), ('Huntingburg Airport', 13140, '38.24900', '-86.95400'), ('Ireland', 12100, '38.41477', '-86.99945'), ('Jasper', 12100, '38.39144', '-86.93111'), ('Johnsburg', 1568, '38.21783', '-86.95555'), ('Kellerville', 12100, '38.48172', '-86.83166'), ('Kyana', 465, '38.30506', '-86.78221'), ('Maltersville', 12100, '38.34644', '-86.88972'), ('Mentor', 465, '38.31645', '-86.71888'), ('Millersport', 0, '38.34311', '-87.05389'), ('Norton', 1941, '38.49450', '-86.68305'), ('Portersville', 112, '38.49950', '-86.97834'), ('Saint Anthony', 2277, '38.31450', '-86.82666'), ('Saint Henry', 2277, '38.21755', '-86.92861'), ('Saint Marks', 2277, '38.30561', '-86.81805'), ('Schnellville', 465, '38.34117', '-86.75610'), ('Thales', 807, '38.51033', '-86.79861')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC039': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Benton', 0, '41.50900', '-85.76100'), ('Bristol', 1382, '41.72100', '-85.81940'), ('Dunlap', 5887, '41.63550', '-85.91940'), ('Elkhart', 51874, '41.68680', '-85.96880'), ('Foraker', 0, '41.51600', '-85.92400'), ('Goshen', 29383, '41.57850', '-85.83510'), ('Gravelton', 0, '41.43600', '-85.92400'), ('Jimtown', 0, '41.63600', '-86.02300'), ('Locke', 0, '41.47200', '-86.01200'), ('Middlebury', 2956, '41.67310', '-85.70960'), ('Millersburg', 868, '41.52630', '-85.69560'), ('Nappanee', 6710, '41.44600', '-85.98460'), ('New Paris', 1006, '41.50480', '-85.82650'), ('Simonton Lake', 4053, '41.74770', '-85.96850'), ('Southwest', 0, '41.53700', '-85.94400'), ('Wakarusa', 1618, '41.53450', '-86.01270'), ('Waterford Mills', 0, '41.54300', '-85.83100')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC041': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Connersville', 15411, '39.65570', '-85.14070')], 'partOfState': 'east central', 'wfo': 'ILN'}, +'INC043': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Edwardsville', 37603, '38.28423', '-85.90941'), ('Floyds Knobs', 37603, '38.32451', '-85.87358'), ('Galena', 1831, '38.35173', '-85.94164'), ('Georgetown', 2227, '38.29451', '-85.97552'), ('Greenville', 0, '38.37256', '-85.98636'), ('Navilleton', 1831, '38.38173', '-85.93858'), ('New Albany', 37603, '38.28562', '-85.82413'), ('Saint Joseph', 6071, '38.40007', '-85.80830'), ('Scottsville', 1831, '38.40201', '-85.90914')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC045': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Attica', 3491, '40.28760', '-87.24640'), ('Covington', 2565, '40.13990', '-87.39120'), ('Hillsboro', 489, '40.10950', '-87.15710'), ('Kingman', 538, '39.96580', '-87.27830'), ('Mellott', 207, '40.16390', '-87.14920'), ('Newtown', 162, '40.20440', '-87.14790'), ('Veedersburg', 2299, '40.11270', '-87.25920'), ('Wallace', 100, '39.98780', '-87.14770')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC047': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brookville', 2652, '39.42360', '-85.00840'), ('Cedar Grove', 185, '39.35570', '-84.93700'), ('Laurel', 579, '39.50160', '-85.18840'), ('Oldenburg', 647, '39.33850', '-85.20300')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INC049': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Akron', 1076, '41.03880', '-86.02480'), ('Athens', 0, '41.05400', '-86.12500'), ('Bruce Lake Station', 0, '41.07000', '-86.41500'), ('Delong', 0, '41.13800', '-86.41600'), ('Fletcher', 0, '40.91200', '-86.33300'), ('Fulton', 326, '40.94650', '-86.26400'), ('Grass Creek', 0, '40.94800', '-86.40400'), ('Kewanna', 614, '41.01910', '-86.41270'), ('Lake Bruce', 0, '41.07000', '-86.46400'), ('Lake Manitou', 0, '41.05400', '-86.18300'), ('Leiters Ford', 0, '41.12200', '-86.38600'), ('Marshtown', 0, '40.94500', '-86.33900'), ('Nyena Lake', 0, '40.96500', '-86.18500'), ('Rochester', 6414, '41.06150', '-86.19550'), ('Talma', 0, '41.15301', '-86.13455'), ('Tiosa', 0, '41.15300', '-86.20600')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC051': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Fort Branch', 2320, '38.24680', '-87.57480'), ('Francisco', 543, '38.33400', '-87.44860'), ('Haubstadt', 1529, '38.20310', '-87.57480'), ('Hazleton', 288, '38.48900', '-87.54040'), ('Mackey', 142, '38.24990', '-87.39070'), ('Oakland City', 2588, '38.34000', '-87.34800'), ('Owensville', 1322, '38.27170', '-87.69060'), ('Patoka', 749, '38.40580', '-87.58750'), ('Princeton', 8175, '38.35570', '-87.56920'), ('Somerville', 312, '38.27770', '-87.37680')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INC053': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Arcana', 0, '40.53900', '-85.50300'), ('Fairmount', 2992, '40.41690', '-85.64790'), ('Fowlerton', 298, '40.40960', '-85.57300'), ('Gas City', 5940, '40.48920', '-85.60770'), ('Hackleman', 0, '40.42200', '-85.74800'), ('Hanfield', 0, '40.60400', '-85.58000'), ('Herbst', 0, '40.51500', '-85.78700'), ('Home Corner', 0, '40.52400', '-85.64100'), ('Jalapa', 0, '40.62800', '-85.74600'), ('Jonesboro', 1887, '40.47930', '-85.62990'), ('Lake Wood', 0, '40.55300', '-85.56800'), ('Landess', 0, '40.61100', '-85.56100'), ('Marion', 31320, '40.54910', '-85.66700'), ('Michaelsville', 0, '40.45240', '-85.70200'), ('Mier', 0, '40.57500', '-85.82300'), ('Normal', 0, '40.46500', '-85.82500'), ('Point Isabel', 0, '40.42200', '-85.82400'), ('Radley', 0, '40.43600', '-85.73400'), ('Roseburg', 0, '40.52200', '-85.72900'), ('Sims', 0, '40.49900', '-85.85500'), ('Swayzee', 1011, '40.50680', '-85.82410'), ('Sweetser', 906, '40.56970', '-85.76700'), ('Upland', 3803, '40.46280', '-85.51330'), ('Van Buren', 935, '40.61640', '-85.50550')], 'partOfState': 'central', 'wfo': 'IWX'}, +'INC055': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bloomfield', 2542, '39.02640', '-86.93700'), ('Jasonville', 2490, '39.16250', '-87.19960'), ('Linton', 5774, '39.03600', '-87.15920'), ('Lyons', 748, '38.98810', '-87.08160'), ('Newberry', 206, '38.92370', '-87.01890'), ('Switz City', 311, '39.03470', '-87.05360'), ('Worthington', 1481, '39.11850', '-86.97980')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INC057': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Arcadia', 1747, '40.17410', '-86.02130'), ('Atlanta', 761, '40.21480', '-86.02710'), ('Carmel', 37733, '39.96930', '-86.10950'), ('Cicero', 4303, '40.12470', '-86.02260'), ('Fishers', 37835, '39.95410', '-86.02360'), ('Noblesville', 28590, '40.05660', '-86.03170'), ('Sheridan', 2520, '40.13470', '-86.21890'), ('Westfield', 9293, '40.04700', '-86.13090')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC059': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Fortville', 3444, '39.93590', '-85.84700'), ('Greenfield', 14600, '39.79280', '-85.77000'), ('McCordsville', 1134, '39.90810', '-85.93120'), ('New Palestine', 1264, '39.72110', '-85.89160'), ('Shirley', 806, '39.89050', '-85.57980'), ('Spring Lake', 262, '39.77680', '-85.85440'), ('Wilkinson', 356, '39.88480', '-85.60830')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC061': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bradford', 633, '38.36784', '-86.06192'), ('Breckenridge', 0, '38.21785', '-86.03302'), ('Bridgeport', 0, '38.17618', '-85.90635'), ('Buena Vista', 0, '38.05896', '-85.97996'), ('Byrneville', 131, '38.32757', '-86.04358'), ('Central', 0, '38.09979', '-86.15858'), ('Central Barren', 633, '38.36423', '-86.09636'), ('Corydon', 2715, '38.21201', '-86.12192'), ('Crandall', 131, '38.28757', '-86.06636'), ('Depauw', 932, '38.33506', '-86.21748'), ('Dogwood', 29, '38.10535', '-86.08441'), ('Elizabeth', 137, '38.12118', '-85.97413'), ('Evans Landing', 1216, '38.00424', '-85.98469'), ('Fairdale', 0, '38.32618', '-86.17109'), ('Fishtown', 0, '38.06952', '-85.91746'), ('Frenchtown', 932, '38.31479', '-86.21442'), ('Glidas', 0, '38.05674', '-86.18442'), ('Hancock Chapel', 92, '38.38173', '-86.17942'), ('Happy Hollow', 0, '38.05340', '-85.93774'), ('Laconia', 29, '38.03174', '-86.08552'), ('Lanesville', 614, '38.23701', '-85.98580'), ('Lottick Corner', 0, '38.17118', '-85.94024'), ('Macedonia', 0, '38.05396', '-85.95996'), ('Mauckport', 83, '38.02479', '-86.20192'), ('Moberly', 0, '38.26979', '-86.20942'), ('New Amsterdam', 1, '38.10229', '-86.27497'), ('New Boston', 1216, '37.99980', '-86.01080'), ('New Middletown', 77, '38.16396', '-86.05080'), ('New Salisbury', 131, '38.31368', '-86.09497'), ('Palmyra', 633, '38.40784', '-86.10997'), ('Ramsey', 131, '38.32368', '-86.15470'), ('Rosewood', 0, '38.03813', '-85.92913'), ('Seven Springs', 0, '38.14201', '-85.97663'), ('Sugar Grove', 0, '38.11785', '-85.91108'), ('Titus', 0, '38.05423', '-86.25608'), ('Valley City', 1, '38.09396', '-86.22275'), ('White Cloud', 2715, '38.22812', '-86.22442')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC063': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Amo', 414, '39.68940', '-86.61410'), ('Brownsburg', 14520, '39.84160', '-86.39430'), ('Clayton', 693, '39.68940', '-86.52360'), ('Coatesville', 516, '39.68730', '-86.66920'), ('Danville', 6418, '39.76220', '-86.51980'), ('Lizton', 372, '39.88570', '-86.54250'), ('North Salem', 591, '39.85940', '-86.64450'), ('Pittsboro', 1588, '39.86730', '-86.46480'), ('Plainfield', 18396, '39.70040', '-86.38790'), ('Stilesville', 261, '39.63830', '-86.63230')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC065': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Blountsville', 166, '40.05960', '-85.23890'), ('Cadiz', 161, '39.95050', '-85.48650'), ('Dunreith', 184, '39.80290', '-85.43690'), ('Greensboro', 174, '39.87830', '-85.46300'), ('Kennard', 455, '39.90430', '-85.51980'), ('Knightstown', 2148, '39.79570', '-85.52830'), ('Lewisville', 395, '39.80590', '-85.35320'), ('Middletown', 2488, '40.05950', '-85.54270'), ('Mooreland', 393, '39.99770', '-85.25170'), ('Mount Summit', 313, '40.00320', '-85.38670'), ('New Castle', 17780, '39.92090', '-85.36490'), ('Spiceland', 807, '39.83810', '-85.43810'), ('Springport', 174, '40.04690', '-85.39290'), ('Straughn', 263, '39.80830', '-85.29040'), ('Sulphur Springs', 346, '40.00570', '-85.44340')], 'partOfState': 'east central', 'wfo': 'IND'}, +'INC067': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Greentown', 2546, '40.47850', '-85.96470'), ('Indian Heights', 3274, '40.42500', '-86.11650'), ('Kokomo', 46113, '40.47550', '-86.13310'), ('Russiaville', 1092, '40.41880', '-86.27030')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC069': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Andrews', 1290, '40.85950', '-85.60100'), ('Banquo', 0, '40.69600', '-85.62000'), ('Bippus', 0, '40.94400', '-85.62400'), ('Bowerstown', 0, '40.88900', '-85.44200'), ('Bracken', 0, '40.98700', '-85.62400'), ('Buckeye', 0, '40.69100', '-85.35400'), ('Goblesville', 0, '40.99000', '-85.51000'), ('Huntington', 17450, '40.88070', '-85.50560'), ('Lancaster', 0, '40.74900', '-85.50700'), ('Luther', 0, '41.00300', '-85.57400'), ('Mahon', 0, '40.93900', '-85.38100'), ('Majenica', 0, '40.77000', '-85.45300'), ('Markle', 1102, '40.82640', '-85.33810'), ('Mount Etna', 110, '40.74180', '-85.56250'), ('Pleasant Plain', 0, '40.69700', '-85.54500'), ('Plum Tree', 0, '40.74200', '-85.39200'), ('Warren', 1272, '40.68670', '-85.42340')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC071': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brownstown', 2978, '38.88030', '-86.04610'), ('Crothersville', 1570, '38.79640', '-85.84000'), ('Medora', 565, '38.82460', '-86.17070'), ('Seymour', 18101, '38.95850', '-85.88640')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INC073': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Collegeville', 865, '40.90810', '-87.16390'), ('De Motte', 3234, '41.19970', '-87.19920'), ('Remington', 1323, '40.76270', '-87.15170'), ('Rensselaer', 5294, '40.93550', '-87.14920'), ('Wheatfield', 772, '41.19130', '-87.05250')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INC075': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Balbec', 0, '40.53100', '-85.14900'), ('Bellfountain', 0, '40.43300', '-84.86400'), ('Blaine', 0, '40.40300', '-85.05600'), ('Bluff Point', 0, '40.34600', '-84.97700'), ('Boundary City', 0, '40.34400', '-84.92200'), ('Brice', 0, '40.41800', '-84.89600'), ('Bryant', 0, '40.53300', '-84.96400'), ('Center', 0, '40.44500', '-85.07700'), ('College Corner', 0, '40.41100', '-84.97700'), ('Collett', 0, '40.37500', '-85.00000'), ('Como', 0, '40.38500', '-85.08700'), ('Dunkirk', 2646, '40.37350', '-85.20790'), ('Fiat', 0, '40.55300', '-85.15000'), ('Liber', 0, '40.40800', '-84.96900'), ('New Corydon', 0, '40.56900', '-84.84000'), ('New Mount Pleasant', 0, '40.35600', '-85.06500'), ('Pennville', 706, '40.49330', '-85.14740'), ('Portland', 6437, '40.43320', '-84.98110'), ('Powers', 0, '40.32200', '-85.09200'), ('Redkey', 1427, '40.34800', '-85.15270'), ('Salamonia', 158, '40.38200', '-84.86610'), ('Trinity', 0, '40.54300', '-84.84900'), ('Westchester', 0, '40.49800', '-84.89500')], 'partOfState': 'east central', 'wfo': 'IWX'}, +'INC077': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Barbersville', 0, '38.90589', '-85.28079'), ('Belleview', 12004, '38.85589', '-85.37801'), ('Brooksburg', 74, '38.73645', '-85.24357'), ('Bryantsburg', 12004, '38.88589', '-85.37440'), ('Canaan', 74, '38.86672', '-85.29579'), ('Chelsea', 2834, '38.65062', '-85.52496'), ('China', 12004, '38.82589', '-85.33829'), ('Deputy', 392, '38.79422', '-85.65330'), ('Dupont', 392, '38.89006', '-85.51413'), ('Five Points', 0, '38.84617', '-85.50913'), ('Hanover', 2834, '38.71423', '-85.47357'), ('Hanover Beach', 0, '38.70673', '-85.45329'), ('Kent', 2834, '38.73784', '-85.53996'), ('Lancaster', 392, '38.83145', '-85.51857'), ('Madison', 12004, '38.73589', '-85.37996'), ('Madison Municipal Airport', 13140, '38.75995', '-85.46383'), ('Manville', 74, '38.78784', '-85.28551'), ('Middlefork', 0, '38.85395', '-85.47218'), ('North Madison', 12004, '38.76784', '-85.39662'), ('Paynesville', 2834, '38.62117', '-85.49329'), ('Ringwald', 0, '38.78367', '-85.38274'), ('Saluda', 2834, '38.65062', '-85.48496'), ('Smyrna', 0, '38.78200', '-85.48079'), ('Swanville', 0, '38.68645', '-85.55857'), ('Volga', 2834, '38.78395', '-85.51802'), ('Wakefield', 2834, '38.78728', '-85.55996'), ('Wirt', 12004, '38.80950', '-85.45357')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC079': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('North Vernon', 6515, '39.00780', '-85.63120'), ('Vernon', 330, '38.98510', '-85.61110')], 'partOfState': 'southeast', 'wfo': 'IND'}, +'INC081': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bargersville', 2120, '39.51990', '-86.16560'), ('Edinburgh', 4505, '39.35270', '-85.96750'), ('Franklin', 19463, '39.49220', '-86.05650'), ('Greenwood', 36037, '39.61550', '-86.11380'), ('New Whiteland', 4579, '39.56210', '-86.09690'), ('Princes Lakes', 1506, '39.35070', '-86.10910'), ('Trafalgar', 798, '39.41500', '-86.14970'), ('Whiteland', 3958, '39.55030', '-86.08860')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC083': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bicknell', 3378, '38.77530', '-87.30840'), ('Bruceville', 469, '38.75810', '-87.41440'), ('Decker', 283, '38.51830', '-87.52380'), ('Edwardsport', 363, '38.81240', '-87.25160'), ('Monroe City', 548, '38.61420', '-87.35350'), ('Oaktown', 633, '38.87170', '-87.44130'), ('Sandborn', 451, '38.89680', '-87.18460'), ('Vincennes', 18701, '38.67620', '-87.51110'), ('Wheatland', 504, '38.66410', '-87.30670')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INC085': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Atwood', 0, '41.26100', '-85.97500'), ('Beaver Dam', 0, '41.08600', '-86.01300'), ('Beaver Dam Lake', 0, '41.09300', '-85.97500'), ('Big Barbee Lake', 0, '41.28500', '-85.70400'), ('Burket', 195, '41.15440', '-85.96920'), ('Claypool', 311, '41.12780', '-85.87970'), ('Clunette', 0, '41.32000', '-85.92300'), ('Dewart Lake', 0, '41.37500', '-85.77700'), ('Etna Green', 663, '41.27810', '-86.04630'), ('Hastings', 0, '41.38400', '-85.92900'), ('Hoffman Lake', 0, '41.27200', '-85.98700'), ('Irish Lake', 0, '41.29500', '-85.73500'), ('James Lake', 0, '41.31900', '-85.72600'), ('Lake Wawasee', 0, '41.40100', '-85.70200'), ('Leesburg', 625, '41.32950', '-85.84860'), ('Mentone', 898, '41.17380', '-86.03690'), ('Milford', 1550, '41.41040', '-85.84830'), ('Monoquet', 0, '41.28900', '-85.86200'), ('North Webster', 1067, '41.32530', '-85.69720'), ('Oakwood Park', 0, '41.41100', '-85.73800'), ('Oswego', 0, '41.32000', '-85.78700'), ('Packerton', 0, '41.11600', '-85.79700'), ('Palestine', 0, '41.17800', '-85.95000'), ('Pierceton', 695, '41.19960', '-85.70760'), ('Ridinger Lake', 0, '41.26100', '-85.66700'), ('Sechrist Lake', 0, '41.29700', '-85.71800'), ('Sevastopol', 0, '41.12900', '-86.01900'), ('Sidney', 168, '41.10500', '-85.74290'), ('Silver Lake', 546, '41.07240', '-85.89170'), ('Syracuse', 3038, '41.42320', '-85.74900'), ('Tippecanoe Lake', 0, '41.32700', '-85.75900'), ('Warsaw', 12415, '41.23960', '-85.84760'), ('Winona Lake', 3987, '41.21860', '-85.81530'), ('Wooster', 0, '41.20900', '-85.74300')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC087': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Adams Lake', 0, '41.55400', '-85.32900'), ('Big Long Lake', 0, '41.56000', '-85.24000'), ('Brighton', 0, '41.72200', '-85.31100'), ('Brushy Prairie', 0, '41.64200', '-85.24700'), ('Eddy', 0, '41.53600', '-85.43800'), ('Elmira', 0, '41.59200', '-85.20400'), ('Emma', 0, '41.61100', '-85.54100'), ('Honeyville', 0, '41.58200', '-85.60200'), ('Howe', 0, '41.72100', '-85.42000'), ('Indianola', 0, '41.56500', '-85.24700'), ('Lagrange', 2919, '41.64340', '-85.41720'), ('Mongo', 0, '41.68500', '-85.23000'), ('Oliver Lake', 0, '41.57200', '-85.40400'), ('Ontario', 0, '41.70200', '-85.38200'), ('Plato', 0, '41.64200', '-85.33200'), ('Scott', 0, '41.73400', '-85.55700'), ('Shipshewana', 536, '41.67490', '-85.57930'), ('Stroh', 0, '41.58100', '-85.19900'), ('Topeka', 1159, '41.53860', '-85.54220'), ('Woodruff', 0, '41.57300', '-85.32900')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC089': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Cedar Lake', 9279, '41.37330', '-87.43620'), ('Crown Point', 19806, '41.42420', '-87.35770'), ('Dyer', 13895, '41.50340', '-87.50520'), ('East Chicago', 32414, '41.64870', '-87.45190'), ('Gary', 102746, '41.59580', '-87.34410'), ('Griffith', 17334, '41.52240', '-87.42370'), ('Hammond', 83048, '41.62100', '-87.49040'), ('Highland', 23546, '41.54910', '-87.45770'), ('Hobart', 25363, '41.53160', '-87.26730'), ('Lake Dalecarlia', 1285, '41.33910', '-87.40330'), ('Lakes Of The Four Seasons', 7291, '41.40860', '-87.22300'), ('Lake Station', 13948, '41.57280', '-87.26140'), ('Lowell', 7505, '41.29470', '-87.41320'), ('Merrillville', 30560, '41.47160', '-87.32580'), ('Munster', 21511, '41.54670', '-87.50390'), ('New Chicago', 2063, '41.55870', '-87.27220'), ('Schererville', 24851, '41.48920', '-87.44820'), ('Schneider', 317, '41.19190', '-87.44770'), ('St. John', 8382, '41.44700', '-87.47580'), ('Whiting', 5137, '41.67820', '-87.48670')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INC091': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Byron', 0, '41.65600', '-86.62500'), ('Fish Lake', 0, '41.56700', '-86.55200'), ('Hanna', 0, '41.41200', '-86.78000'), ('Haskell', 0, '41.48400', '-86.90200'), ('Hesston', 0, '41.75300', '-86.66000'), ('Hudson Lake', 0, '41.71000', '-86.53400'), ('Kingsbury', 229, '41.53120', '-86.69560'), ('Kingsford Heights', 1453, '41.48000', '-86.69130'), ('La Crosse', 561, '41.31790', '-86.88980'), ('La Porte', 21621, '41.60750', '-86.71480'), ('Long Beach', 1559, '41.74660', '-86.85210'), ('Michiana Shores', 330, '41.75630', '-86.81840'), ('Michigan City', 32900, '41.71260', '-86.87600'), ('Otis', 0, '41.59900', '-86.90600'), ('Pinhook', 0, '41.56400', '-86.85600'), ('Pinola', 0, '41.59900', '-86.79800'), ('Pottawattomie Park', 300, '41.72250', '-86.86700'), ('Rolling Prarie', 0, '41.67100', '-86.61600'), ('Salem Heights', 0, '41.47500', '-86.62200'), ('South Center', 0, '41.47600', '-86.64000'), ('South Wanatah', 0, '41.40600', '-86.89900'), ('Springville', 0, '41.68500', '-86.73700'), ('Stillwell', 0, '41.55600', '-86.60300'), ('Thomaston', 0, '41.37800', '-86.81400'), ('Tracy', 0, '41.48500', '-86.68300'), ('Trail Creek', 2296, '41.69640', '-86.85620'), ('Union Mills', 0, '41.49300', '-86.77800'), ('Wanatah', 1013, '41.43080', '-86.88860'), ('Waterford', 0, '41.67100', '-86.84500'), ('Westville', 2116, '41.53960', '-86.90610')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INC093': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bedford', 13768, '38.86040', '-86.49080'), ('Mitchell', 4567, '38.73660', '-86.47550'), ('Oolitic', 1152, '38.89140', '-86.52640')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INC095': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alexandria', 6260, '40.25820', '-85.67620'), ('Anderson', 59734, '40.09290', '-85.68800'), ('Chesterfield', 2969, '40.11190', '-85.59280'), ('Country Club Heights', 91, '40.12540', '-85.68760'), ('Edgewood', 1988, '40.10260', '-85.73760'), ('Elwood', 9737, '40.27570', '-85.83890'), ('Frankton', 1905, '40.22050', '-85.77250'), ('Ingalls', 1168, '39.96030', '-85.79880'), ('Lapel', 1855, '40.06880', '-85.84750'), ('Markleville', 383, '39.97720', '-85.61610'), ('Orestes', 334, '40.27070', '-85.72520'), ('Pendleton', 3873, '40.00030', '-85.74220'), ('River Forest', 28, '40.10950', '-85.72940'), ('Summitville', 1090, '40.33730', '-85.64300'), ('Woodlawn Heights', 73, '40.11720', '-85.69670')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC097': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Beech Grove', 14880, '39.71500', '-86.08740'), ('Castleton', 36, '39.90480', '-86.05010'), ('Clermont', 1477, '39.81740', '-86.32040'), ('Crows Nest', 96, '39.85220', '-86.17280'), ('Cumberland', 5500, '39.78280', '-85.95240'), ('Homecroft', 751, '39.67010', '-86.13010'), ('Indianapolis', 752279, '39.77640', '-86.14620'), ('Lawrence', 38915, '39.86860', '-85.98720'), ('Meridian Hills', 1713, '39.88640', '-86.15650'), ('North Crows Nest', 42, '39.86510', '-86.16200'), ('Rocky Ripple', 712, '39.84890', '-86.17320'), ('Southport', 1852, '39.65960', '-86.11660'), ('Speedway', 12881, '39.79340', '-86.24740'), ('Spring Hill', 112, '39.83340', '-86.19270'), ('Warren Park', 1656, '39.78240', '-86.05240'), ('Williams Creek', 413, '39.90040', '-86.14990'), ('Wynnedale', 275, '39.83270', '-86.19870')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC099': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Argos', 1613, '41.23770', '-86.24770'), ('Bourbon', 1691, '41.29780', '-86.11690'), ('Bremen', 4486, '41.44700', '-86.15440'), ('Burr Oak', 0, '41.25600', '-86.41500'), ('Culver', 1539, '41.21790', '-86.42250'), ('Donaldson', 0, '41.36100', '-86.44400'), ('Hibbard', 0, '41.25300', '-86.38700'), ('Inwood', 0, '41.31800', '-86.20300'), ('Lake Of The Woods', 0, '41.42300', '-86.23500'), ('La Paz', 489, '41.45940', '-86.31000'), ('Linkville', 0, '41.41600', '-86.28700'), ('Maxinkuckee', 0, '41.20800', '-86.38100'), ('Old Tip Town', 0, '41.22400', '-86.11500'), ('Plymouth', 9840, '41.34700', '-86.31450'), ('Rutland', 0, '41.24400', '-86.35700'), ('Teegarden', 0, '41.46500', '-86.37800'), ('Tippecanoe', 0, '41.20900', '-86.11500'), ('Twin Lakes', 0, '41.30400', '-86.35700'), ('Tyner', 0, '41.41000', '-86.40300'), ('Walnut', 0, '41.17600', '-86.21200')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC101': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Crane', 203, '38.89510', '-86.90040'), ('Loogootee', 2741, '38.67540', '-86.91430'), ('Shoals', 807, '38.66700', '-86.79350')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INC103': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Amboy', 360, '40.60160', '-85.92740'), ('Bennetts Switch', 0, '40.58500', '-86.11300'), ('Bunker Hill', 987, '40.66040', '-86.10180'), ('Chili', 0, '40.86000', '-86.02600'), ('Converse', 1137, '40.57990', '-85.87790'), ('Deedsville', 0, '40.91000', '-86.10100'), ('Denver', 541, '40.86420', '-86.07640'), ('Erie', 0, '40.80100', '-85.99100'), ('Flora', 0, '40.73300', '-86.01000'), ('Gilead', 0, '40.97000', '-86.01900'), ('Grissom AFB', 1652, '40.65940', '-86.14760'), ('Macy', 248, '40.95770', '-86.12890'), ('Mexico', 984, '40.81290', '-86.11090'), ('Miami', 0, '40.61400', '-86.10600'), ('Nead', 0, '40.70700', '-86.12700'), ('Peoria', 0, '40.71900', '-85.96100'), ('Peru', 12994, '40.75360', '-86.06800'), ('Santa Fe', 0, '40.65300', '-85.98600'), ('Wells', 0, '40.73200', '-86.11100')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC105': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bloomington', 69291, '39.16660', '-86.52150'), ('Ellettsville', 5078, '39.23140', '-86.62210'), ('Stinesville', 194, '39.30040', '-86.64920')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INC107': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alamo', 137, '39.98370', '-87.05510'), ('Crawfordsville', 15243, '40.04420', '-86.89660'), ('Darlington', 854, '40.10820', '-86.77650'), ('Ladoga', 1047, '39.91680', '-86.79870'), ('Linden', 700, '40.19070', '-86.90200'), ('New Market', 659, '39.95190', '-86.92210'), ('New Richmond', 349, '40.19390', '-86.97860'), ('New Ross', 334, '39.96390', '-86.71370'), ('Waveland', 416, '39.87700', '-87.04630'), ('Waynetown', 909, '40.08750', '-87.06560'), ('Wingate', 299, '40.17050', '-87.07350')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC109': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bethany', 94, '39.53370', '-86.37890'), ('Brooklyn', 1545, '39.54260', '-86.37150'), ('Lake Hart', 235, '39.56840', '-86.43010'), ('Martinsville', 11698, '39.42280', '-86.42170'), ('Mooresville', 9273, '39.61590', '-86.37010'), ('Morgantown', 964, '39.37390', '-86.25930'), ('Paragon', 663, '39.39490', '-86.56310')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC111': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brook', 1062, '40.86600', '-87.36580'), ('Goodland', 1096, '40.76430', '-87.29490'), ('Kentland', 1822, '40.77280', '-87.44600'), ('Morocco', 1127, '40.94560', '-87.45270'), ('Mount Ayr', 147, '40.95150', '-87.29830')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INC113': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Albion', 2284, '41.39520', '-85.41970'), ('Ari', 0, '41.26400', '-85.24900'), ('Avilla', 2049, '41.36500', '-85.23810'), ('Bear Lake', 0, '41.32200', '-85.51800'), ('Big Lake', 0, '41.27700', '-85.50000'), ('Brimfield', 0, '41.45400', '-85.39800'), ('Cosperville', 0, '41.48100', '-85.47400'), ('Cromwell', 452, '41.40350', '-85.61440'), ('Ege', 0, '41.29300', '-85.28800'), ('Green Center', 0, '41.30800', '-85.36600'), ('Kendallville', 9616, '41.44340', '-85.25810'), ('Kimmel', 0, '41.39500', '-85.54800'), ('Knapp Lake', 0, '41.34300', '-85.60800'), ('Laotto', 0, '41.29000', '-85.19800'), ('Ligonier', 4357, '41.46410', '-85.59470'), ('Lisbon', 0, '41.41100', '-85.25900'), ('Merriam', 0, '41.28700', '-85.43400'), ('Rome City', 1615, '41.48830', '-85.35580'), ('Swan', 0, '41.31600', '-85.21200'), ('Wilmot', 0, '41.31000', '-85.64200'), ('Wolcottville', 0, '41.52467', '-85.36606'), ('Wolflake', 0, '41.33500', '-85.49600')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC115': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Rising Sun', 2470, '38.95160', '-84.85710')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INC117': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Abydel', 618, '38.57061', '-86.56110'), ('Bacon', 673, '38.41061', '-86.43332'), ('Bonds', 0, '38.68116', '-86.62944'), ('Braxtons Siding', 0, '38.55922', '-86.48804'), ('Bromer', 112, '38.59367', '-86.33582'), ('Chambersburg', 3844, '38.51811', '-86.39221'), ('Ethel', 673, '38.40367', '-86.52443'), ('Fargo', 0, '38.40006', '-86.48332'), ('French Lick', 1941, '38.54894', '-86.61999'), ('French Lick Municipal Airport', 13140, '38.50600', '-86.63700'), ('Greenbrier', 1941, '38.46311', '-86.55582'), ('Hindostan', 0, '38.66561', '-86.60444'), ('Leipsic', 107, '38.67117', '-86.36971'), ('Mahan Crossing', 0, '38.55728', '-86.36443'), ('Millersburg', 868, '38.55728', '-86.33554'), ('Orangeville', 0, '38.63144', '-86.55666'), ('Orleans', 2273, '38.66172', '-86.45166'), ('Paoli', 3844, '38.55617', '-86.46832'), ('Pine Valley', 0, '38.47645', '-86.45026'), ('Prospect', 618, '38.57811', '-86.61416'), ('Pumpkin Center', 112, '38.58950', '-86.36443'), ('Rego', 0, '38.48506', '-86.31776'), ('Roland', 618, '38.59533', '-86.68194'), ('Scarlet', 0, '38.65783', '-86.66749'), ('Stampers Creek', 0, '38.55839', '-86.38332'), ('Syria', 3844, '38.58617', '-86.40165'), ('Trotter Crossing', 0, '38.51145', '-86.36554'), ('Valeene', 829, '38.43895', '-86.39721'), ('West Baden Springs', 618, '38.56533', '-86.61110'), ('Woodlawn Grove', 0, '38.57811', '-86.45804'), ('Youngs Creek', 3844, '38.47672', '-86.49554')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC119': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Gosport', 715, '39.35050', '-86.66570'), ('Spencer', 2508, '39.28710', '-86.76920')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC121': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bloomingdale', 319, '39.83150', '-87.24950'), ('Judson', 53, '39.81350', '-87.13520'), ('Marshall', 360, '39.84700', '-87.18580'), ('Mecca', 355, '39.72710', '-87.33150'), ('Montezuma', 1179, '39.79100', '-87.36910'), ('Rockville', 2765, '39.76670', '-87.23090'), ('Rosedale', 750, '39.62320', '-87.28210')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC123': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Adyeville', 2277, '38.19089', '-86.76943'), ('Apalona', 465, '38.15450', '-86.63221'), ('Bandon', 53, '38.13728', '-86.60026'), ('Branchville', 53, '38.16367', '-86.57971'), ('Bristow', 392, '38.14006', '-86.72166'), ('Cannelton', 1209, '37.91144', '-86.74443'), ('Celina', 0, '38.18812', '-86.61276'), ('Derby', 53, '38.03034', '-86.52720'), ('Dexter', 53, '38.05923', '-86.47859'), ('Dodd', 1209, '37.91228', '-86.65193'), ('Doolittle Mills', 465, '38.25089', '-86.60304'), ('Fenn Haven', 0, '37.93144', '-86.75665'), ('Gatchel', 7845, '38.04673', '-86.65054'), ('Gerald', 1207, '38.00756', '-86.57304'), ('Hardingrove', 0, '37.92700', '-86.57137'), ('Kitterman Corners', 0, '38.22256', '-86.69749'), ('Lauer', 0, '37.87922', '-86.60165'), ('Leopold', 53, '38.10395', '-86.58332'), ('Lilly Dale', 0, '38.01173', '-86.65137'), ('Magnet', 53, '38.09673', '-86.46331'), ('Mount Pleasant', 53, '38.12173', '-86.51776'), ('Oriole', 53, '38.16895', '-86.50470'), ('Ranger', 0, '38.09589', '-86.68554'), ('Rome', 1207, '37.92339', '-86.52359'), ('Saint Croix', 465, '38.22395', '-86.58637'), ('Sassafras', 465, '38.18839', '-86.69027'), ('Siberia', 465, '38.23811', '-86.73360'), ('Tell City', 7845, '37.95144', '-86.76777'), ('Terry', 7845, '38.08728', '-86.63304'), ('Tobinsport', 1207, '37.85256', '-86.63554'), ('Troy', 0, '37.99533', '-86.79777'), ('Uniontown', 465, '38.22534', '-86.66082')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC125': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Petersburg', 2570, '38.49170', '-87.28170'), ('Spurgeon', 227, '38.25560', '-87.25940'), ('Winslow', 881, '38.38380', '-87.21270')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INC127': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Beverly Shores', 708, '41.68550', '-86.97880'), ('Burns Harbor', 766, '41.61400', '-87.12550'), ('Chesterton', 10488, '41.60090', '-87.05700'), ('Dune Acres', 213, '41.64370', '-87.10330'), ('Hebron', 3596, '41.32240', '-87.20280'), ('Kouts', 1698, '41.31690', '-87.02640'), ('Kvpz', 27428, '41.45000', '-87.00000'), ('Ogden Dunes', 1313, '41.62280', '-87.19350'), ('Portage', 33496, '41.58670', '-87.18150'), ('Porter', 4972, '41.62730', '-87.08190'), ('South Haven', 5619, '41.54360', '-87.13390'), ('Town Of Pines', 798, '41.68860', '-86.95170'), ('Valparaiso', 27428, '41.47730', '-87.05100')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INC129': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Cynthiana', 693, '38.18690', '-87.70880'), ('Griffin', 160, '38.20430', '-87.91530'), ('Mount Vernon', 7478, '37.93600', '-87.89870'), ('New Harmony', 916, '38.12850', '-87.93250'), ('Poseyville', 1187, '38.17020', '-87.78280')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INC131': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Beardstown', 0, '41.13800', '-86.60200'), ('Clarks', 0, '41.13300', '-86.89000'), ('Denham', 0, '41.15200', '-86.71400'), ('Francesville', 905, '40.98580', '-86.88390'), ('Lakeside', 0, '40.93400', '-86.73800'), ('Lawton', 0, '41.01000', '-86.52500'), ('Medaryville', 565, '41.08030', '-86.89000'), ('Monterey', 231, '41.15620', '-86.48170'), ('Pulaski', 0, '40.97500', '-86.65800'), ('Ripley', 0, '41.10000', '-86.66000'), ('Star City', 0, '40.97200', '-86.55600'), ('Thornhope', 0, '40.92600', '-86.53000'), ('Vanmeter Park', 0, '41.08600', '-86.56800'), ('Winamac', 2418, '41.05290', '-86.60330')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INC133': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bainbridge', 743, '39.76060', '-86.81100'), ('Cloverdale', 2243, '39.52130', '-86.79870'), ('Fillmore', 545, '39.67100', '-86.75360'), ('Greencastle', 9880, '39.64200', '-86.84060'), ('Roachdale', 975, '39.84880', '-86.80040'), ('Russellville', 340, '39.85710', '-86.98340')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC135': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Farmland', 1456, '40.18900', '-85.12710'), ('Losantville', 280, '40.02310', '-85.18310'), ('Lynn', 1143, '40.04870', '-84.94230'), ('Modoc', 225, '40.04470', '-85.12620'), ('Parker City', 1416, '40.18960', '-85.20340'), ('Ridgeville', 843, '40.28960', '-85.02980'), ('Saratoga', 288, '40.23690', '-84.91550'), ('Union City', 3622, '40.20160', '-84.81750'), ('Winchester', 5037, '40.17190', '-84.97710')], 'partOfState': 'east central', 'wfo': 'IND'}, +'INC137': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Batesville', 6033, '39.29790', '-85.21830'), ('Holton', 407, '39.07560', '-85.38460'), ('Milan', 1816, '39.12530', '-85.13070'), ('Napoleon', 238, '39.20540', '-85.32730'), ('Osgood', 1669, '39.12830', '-85.29190'), ('Sunman', 805, '39.23390', '-85.09610'), ('Versailles', 1784, '39.06430', '-85.25750')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INC139': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Carthage', 928, '39.73720', '-85.57160'), ('Glenwood', 318, '39.62650', '-85.30130'), ('Rushville', 5995, '39.61460', '-85.44710')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC141': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Chain-O-lakes', 0, '41.70800', '-86.38000'), ('Crumstown', 0, '41.62400', '-86.40800'), ('Georgetown', 4497, '41.72940', '-86.22830'), ('Granger', 28284, '41.73550', '-86.13950'), ('Gulivoire Park', 2974, '41.61320', '-86.24520'), ('Indian Village', 144, '41.71450', '-86.23190'), ('Lakeville', 567, '41.52580', '-86.27450'), ('Lydick', 0, '41.69300', '-86.38000'), ('Mishawaka', 46557, '41.66920', '-86.16850'), ('New Carlisle', 1505, '41.70440', '-86.51090'), ('North Liberty', 1402, '41.53300', '-86.43040'), ('Osceola', 1859, '41.66510', '-86.07850'), ('Roseland', 1809, '41.71670', '-86.25160'), ('South Bend', 107789, '41.67530', '-86.26570'), ('Walkerton', 2274, '41.46400', '-86.48230'), ('Woodland', 0, '41.56400', '-86.17700'), ('Wyatt', 0, '41.52600', '-86.16900')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC143': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Albion', 0, '38.74367', '-85.73413'), ('Austin', 4724, '38.75839', '-85.80803'), ('Blocher', 6040, '38.71811', '-85.65663'), ('Goshen', 29383, '38.67145', '-85.70969'), ('Leota', 185, '38.64839', '-85.85025'), ('Lexington', 0, '38.65228', '-85.62524'), ('New Frankfort', 6040, '38.73672', '-85.71108'), ('Scottsburg', 0, '38.68561', '-85.77025'), ('Vienna', 6040, '38.64895', '-85.76886'), ('Wooster', 0, '38.73672', '-85.69274')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC145': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Fairland', 1276, '39.59870', '-85.85810'), ('Morristown', 1133, '39.67230', '-85.69980'), ('Shelbyville', 17951, '39.52330', '-85.77580')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC147': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Chrisney', 544, '38.01230', '-87.03410'), ('Dale', 1568, '38.16720', '-86.98660'), ('Gentryville', 262, '38.10880', '-87.03040'), ('Grandview', 696, '37.93800', '-86.98310'), ('Rockport', 2160, '37.88370', '-87.05090'), ('Santa Claus', 2041, '38.11550', '-86.92510')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INC149': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bass Lake', 0, '41.20700', '-86.60200'), ('Brems', 0, '41.33900', '-86.69800'), ('English Lake', 0, '41.26600', '-86.82400'), ('Grovertown', 0, '41.37500', '-86.50500'), ('Hamlet', 820, '41.37850', '-86.58320'), ('Knox', 3721, '41.29190', '-86.62130'), ('Koontz Lake', 1554, '41.41820', '-86.48410'), ('Lomax', 0, '41.25900', '-86.87200'), ('North Judson', 1675, '41.21700', '-86.77590'), ('Oak Grove', 0, '41.28800', '-86.48600'), ('Ober', 0, '41.27100', '-86.52400'), ('Ora', 0, '41.17400', '-86.55300'), ('San Pierre', 0, '41.19936', '-86.89200'), ('Toto', 0, '41.25900', '-86.69800'), ('Winona', 0, '41.23600', '-86.56900')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INC151': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alvarado', 0, '41.57700', '-84.83800'), ('Angola', 7344, '41.64290', '-85.00010'), ('Berlien', 0, '41.63700', '-84.87700'), ('Big Turkey Lake', 0, '41.58700', '-85.18900'), ('Clear Lake', 244, '41.73580', '-84.83830'), ('Crooked Lake', 0, '41.68000', '-85.03700'), ('Flint', 0, '41.69000', '-85.12500'), ('Fremont', 1696, '41.73110', '-84.93370'), ('Golden Lake', 0, '41.60400', '-85.06500'), ('Hamilton', 1233, '41.53230', '-84.91750'), ('Hamilton Lake', 0, '41.55100', '-84.91700'), ('Helmer', 0, '41.53100', '-85.17000'), ('Hudson', 0, '41.53300', '-85.08100'), ('Lake Gauge', 0, '41.70300', '-85.11200'), ('Lake James', 0, '41.70500', '-85.04800'), ('Long Lake', 0, '41.58200', '-85.02700'), ('Metz', 0, '41.61600', '-84.83900'), ('Nevada Mills', 0, '41.72700', '-85.08200'), ('Orland', 341, '41.73100', '-85.17110'), ('Pleasant Lake', 0, '41.57500', '-85.01600'), ('Salem Center', 0, '41.58500', '-85.14000'), ('Silver Lake', 0, '41.62888', '-85.06373'), ('Steubenville', 0, '41.53200', '-85.02234'), ('York', 0, '41.68800', '-84.82200')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC153': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Carlisle', 2660, '38.96220', '-87.40070'), ('Dugger', 955, '39.06840', '-87.26040'), ('Farmersburg', 1180, '39.25240', '-87.38040'), ('Hymera', 833, '39.18570', '-87.29890'), ('Merom', 294, '39.05690', '-87.56780'), ('Shelburn', 1268, '39.17950', '-87.39690'), ('Sullivan', 4617, '39.09690', '-87.40780')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INC155': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Florence', 0, '38.78400', '-84.92400'), ('Patriot', 202, '38.83820', '-84.82780'), ('Vevay', 1735, '38.74783', '-85.06701')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INC157': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Battle Ground', 1323, '40.51000', '-86.83850'), ('Clarks Hill', 680, '40.24690', '-86.72460'), ('Dayton', 1120, '40.37760', '-86.77680'), ('Lafayette', 56397, '40.41090', '-86.87070'), ('Shadeland', 1682, '40.34450', '-86.96370'), ('West Lafayette', 28778, '40.44470', '-86.91190')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC159': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Kempton', 380, '40.28750', '-86.23000'), ('Sharpsville', 618, '40.37990', '-86.08730'), ('Tipton', 5251, '40.28280', '-86.04030'), ('Windfall', 803, '40.36290', '-85.95750')], 'partOfState': 'central', 'wfo': 'IND'}, +'INC161': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Liberty', 2061, '39.63450', '-84.92700'), ('West College Corner', 634, '39.56960', '-84.81930')], 'partOfState': 'east central', 'wfo': 'ILN'}, +'INC163': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Darmstadt', 1313, '38.09100', '-87.57620'), ('Evansville', 121582, '37.98410', '-87.54330'), ('Melody Hill', 3066, '38.02420', '-87.51320')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INC165': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Cayuga', 1109, '39.94710', '-87.46480'), ('Clinton', 5126, '39.66100', '-87.40450'), ('Dana', 662, '39.80670', '-87.49420'), ('Fairview Park', 1496, '39.68180', '-87.41360'), ('Newport', 578, '39.88480', '-87.40630'), ('Perrysville', 502, '40.05350', '-87.43580'), ('Universal', 419, '39.62160', '-87.45300')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC167': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('North Terre Haute', 4606, '39.53990', '-87.36020'), ('Riley', 160, '39.38980', '-87.30040'), ('Seelyville', 1182, '39.49400', '-87.26700'), ('Terre Haute', 59614, '39.47040', '-87.38350'), ('West Terre Haute', 2330, '39.46430', '-87.44900')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC169': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Disko', 0, '41.00200', '-85.94400'), ('Ijamsville', 0, '40.96000', '-85.83300'), ('La Fontaine', 900, '40.67370', '-85.72170'), ('Lagro', 454, '40.83830', '-85.72840'), ('Laketon', 0, '40.97400', '-85.83400'), ('Liberty Mills', 0, '41.03400', '-85.73600'), ('Lincolnville', 0, '40.75400', '-85.67800'), ('North Manchester', 6260, '41.00490', '-85.77410'), ('Richvalley', 0, '40.78500', '-85.92000'), ('Roann', 400, '40.91120', '-85.92390'), ('Servia', 0, '40.79570', '-85.74100'), ('Somerset', 0, '40.66900', '-85.82800'), ('Speicherville', 0, '40.85400', '-85.79200'), ('Stockdale', 0, '40.91500', '-85.94400'), ('Treaty', 0, '40.72400', '-85.78200'), ('Urbana', 0, '40.89800', '-85.79300'), ('Wabash', 11743, '40.79920', '-85.82530')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INC171': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Pine Village', 255, '40.44990', '-87.25250'), ('State Line City', 188, '40.19720', '-87.52720'), ('West Lebanon', 793, '40.27130', '-87.38340'), ('Williamsport', 1935, '40.28710', '-87.29350')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INC173': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Boonville', 6834, '38.04510', '-87.27370'), ('Chandler', 3094, '38.04200', '-87.36900'), ('Elberfeld', 636, '38.16120', '-87.44810'), ('Lynnville', 781, '38.19890', '-87.31740'), ('Newburgh', 3088, '37.94650', '-87.40370'), ('Tennyson', 290, '38.08160', '-87.11890')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INC175': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Becks Mill', 6172, '38.53534', '-86.15553'), ('Blue River', 987, '38.53006', '-85.93942'), ('Bunker Hill', 987, '38.57367', '-85.89442'), ('Campbellsburg', 578, '38.65144', '-86.26109'), ('Canton', 6172, '38.62395', '-86.03470'), ('Claysville', 578, '38.62256', '-86.28943'), ('Daisy Hill', 987, '38.50617', '-85.93942'), ('Farabee', 1334, '38.55700', '-86.01581'), ('Fredericksburg', 92, '38.43312', '-86.18970'), ('Georgetown', 0, '38.64839', '-85.99831'), ('Hardinsburg', 0, '38.46089', '-86.27859'), ('Harristown', 0, '38.59784', '-86.02414'), ('Highland', 0, '38.64950', '-86.12748'), ('Hitchcock', 6172, '38.63811', '-86.16970'), ('Kossuth', 6172, '38.70450', '-86.10276'), ('Little York', 185, '38.70284', '-85.90497'), ('Livonia', 112, '38.55700', '-86.27748'), ('Martinsburg', 1334, '38.44395', '-86.02608'), ('McKinley', 565, '38.74478', '-86.21054'), ('Mount Carmel', 106, '38.71700', '-86.24943'), ('New Liberty', 987, '38.56812', '-85.86719'), ('New Pekin', 1334, '38.50506', '-86.01692'), ('New Philadelphia', 185, '38.62645', '-85.96997'), ('New Salem', 0, '38.62145', '-85.90414'), ('Organ Springs', 92, '38.47673', '-86.16470'), ('Plattsburg', 6172, '38.71950', '-86.08970'), ('Prowsville', 0, '38.68006', '-86.20165'), ('Pumpkin Center', 185, '38.70422', '-85.95053'), ('Rosebud', 0, '38.52728', '-86.21192'), ('Rush Creek Valley', 578, '38.69533', '-86.17054'), ('Salem', 0, '38.60561', '-86.10109'), ('Saltillo', 107, '38.66506', '-86.28915'), ('Shorts Corner', 0, '38.49978', '-86.10025'), ('Smedley', 578, '38.63311', '-86.21582'), ('South Boston', 1334, '38.58284', '-85.97914')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INC177': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Boston', 177, '39.74150', '-84.85110'), ('Cambridge City', 2121, '39.81200', '-85.17080'), ('Centerville', 2427, '39.81720', '-84.99550'), ('Dublin', 697, '39.81240', '-85.20510'), ('East Germantown', 243, '39.81280', '-85.13670'), ('Economy', 200, '39.97740', '-85.08710'), ('Fountain City', 735, '39.95590', '-84.91790'), ('Greens Fork', 371, '39.89140', '-85.04230'), ('Hagerstown', 1768, '39.91170', '-85.15690'), ('Milton', 611, '39.78650', '-85.15620'), ('Mount Auburn', 75, '39.81290', '-85.19030'), ('Richmond', 39124, '39.82950', '-84.88540'), ('Spring Grove', 386, '39.84720', '-84.89050'), ('Whitewater', 78, '39.94430', '-84.83070')], 'partOfState': 'east central', 'wfo': 'ILN'}, +'INC179': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bluffton', 9536, '40.74150', '-85.17090'), ('Craigville', 0, '40.77800', '-85.08900'), ('Curryville', 0, '40.78600', '-85.07200'), ('Dillman', 0, '40.61000', '-85.24290'), ('Domestic', 0, '40.61200', '-85.08900'), ('Keystone', 0, '40.59600', '-85.25900'), ('Kingsland', 0, '40.83000', '-85.17700'), ('Liberty Center', 0, '40.69900', '-85.28000'), ('McNatts', 0, '40.62400', '-85.39100'), ('Mount Zion', 0, '40.65000', '-85.33500'), ('Murray', 0, '40.79200', '-85.20000'), ('North Oaks', 0, '40.77700', '-85.21740'), ('Nottingham', 0, '40.58100', '-85.15000'), ('Ossian', 2943, '40.87860', '-85.16840'), ('Petroleum', 0, '40.61100', '-85.15000'), ('Poneto', 240, '40.65610', '-85.22220'), ('Reiffsburg', 0, '40.65600', '-85.15200'), ('Rockford', 0, '40.76000', '-85.31400'), ('Tocsin', 0, '40.83000', '-85.10900'), ('Travisville', 0, '40.69200', '-85.20800'), ('Uniondale', 277, '40.82840', '-85.24140'), ('Vera Cruz', 55, '40.70090', '-85.07960'), ('Wellsburg', 0, '40.66600', '-85.22200')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INC181': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Badger Grove', 0, '40.58400', '-86.96400'), ('Bell Center', 0, '40.86900', '-86.63900'), ('Brookston', 1717, '40.60020', '-86.86580'), ('Buffalo', 0, '40.88300', '-86.74500'), ('Burnettsville', 373, '40.76150', '-86.59480'), ('Chalmers', 513, '40.66250', '-86.86760'), ('Headlee', 0, '40.89700', '-86.65800'), ('Idaville', 0, '40.75700', '-86.64900'), ('Indiana Beach', 0, '40.79100', '-86.76800'), ('Lee', 0, '40.89600', '-86.96800'), ('Monon', 1733, '40.86360', '-86.87870'), ('Monticello', 5723, '40.74670', '-86.76390'), ('Norway', 0, '40.77800', '-86.75900'), ('Reynolds', 547, '40.74870', '-86.87370'), ('Sitka', 0, '40.82600', '-86.73500'), ('Smithson', 0, '40.71800', '-86.87300'), ('Wolcott', 989, '40.75820', '-87.04330')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INC183': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Blue Lake', 0, '41.23900', '-85.36200'), ('Churubusco', 1666, '41.23240', '-85.32140'), ('Coesse', 0, '41.12800', '-85.39500'), ('Collamer', 0, '41.07600', '-85.66500'), ('Collins', 0, '41.19800', '-85.38700'), ('Columbia City', 7077, '41.15860', '-85.48480'), ('Etna', 0, '41.27400', '-85.57400'), ('Goose Lake', 0, '41.24000', '-85.55300'), ('Larwill', 282, '41.17890', '-85.62440'), ('Laud', 0, '41.05000', '-85.45200'), ('Loon Lake', 0, '41.27300', '-85.53900'), ('Lorane', 0, '41.20700', '-85.55800'), ('Ormas', 0, '41.29500', '-85.54600'), ('Peabody', 0, '41.08600', '-85.48900'), ('Raber', 0, '41.08600', '-85.43300'), ('South Whitley', 1782, '41.08570', '-85.62860'), ('Tri-Lakes', 3925, '41.22100', '-85.48420'), ('Tunker', 0, '41.04900', '-85.55700'), ('Washington Center', 0, '41.04800', '-85.50900')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'KSC001': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bassett', 22, '37.90670', '-95.40720'), ('Elsmore', 73, '37.79420', '-95.14920'), ('Gas', 556, '37.92270', '-95.34470'), ('Humboldt', 1999, '37.81160', '-95.43720'), ('Iola', 6302, '37.92820', '-95.40100'), ('La Harpe', 706, '37.91650', '-95.30190'), ('Mildred', 36, '38.02480', '-95.17380'), ('Moran', 562, '37.91610', '-95.17050'), ('Petrolia', 0, '37.75000', '-95.47000'), ('Savonburg', 91, '37.74910', '-95.14170')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC003': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Colony', 397, '38.07080', '-95.36530'), ('Garnett', 3368, '38.28060', '-95.24170'), ('Greeley', 327, '38.36670', '-95.12670'), ('Harris', 53, '38.31900', '-95.43700'), ('Kincaid', 178, '38.08420', '-95.15330'), ('Lone Elm', 27, '38.08000', '-95.24330'), ('Westphalia', 165, '38.18200', '-95.49000')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC005': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arrington', 0, '39.46320', '-95.53660'), ('Atchison', 10232, '39.56310', '-95.12140'), ('Cummings', 0, '39.46320', '-95.24590'), ('Effingham', 588, '39.52220', '-95.40060'), ('Farmington', 0, '39.51860', '-95.30860'), ('Huron', 0, '39.63830', '-95.35140'), ('Lancaster', 291, '39.57280', '-95.30250'), ('Muscotah', 200, '39.55280', '-95.52140'), ('Potter', 0, '39.42580', '-95.14170')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KSC007': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Aetna', 0, '37.08000', '-98.97000'), ('Hardtner', 199, '37.01430', '-98.64840'), ('Hazelton', 144, '37.08820', '-98.40130'), ('Isabel', 108, '37.46770', '-98.55140'), ('Kiowa', 1055, '37.01750', '-98.48440'), ('Lake City', 0, '37.35000', '-98.81000'), ('Medicine Lodge', 2193, '37.28600', '-98.58030'), ('Sharon', 210, '37.25000', '-98.41830'), ('Sun City', 81, '37.37850', '-98.91640')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSC009': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Albert', 181, '38.45450', '-99.01170'), ('Claflin', 705, '38.52390', '-98.53680'), ('Ellinwood', 2164, '38.35620', '-98.58200'), ('Galatia', 61, '38.64140', '-98.95720'), ('Great Bend', 15345, '38.36080', '-98.80880'), ('Great Bend Airport', 0, '38.35000', '-98.85000'), ('Hoisington', 2975, '38.51840', '-98.77810'), ('Olmitz', 138, '38.51640', '-98.93700'), ('Pawnee Rock', 356, '38.26530', '-98.98220'), ('Susank', 57, '38.64040', '-98.77460')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC011': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bronson', 346, '37.89590', '-95.07250'), ('Devon', 140, '37.92210', '-94.81880'), ('Fort Scott', 8297, '37.83960', '-94.70800'), ('Fulton', 184, '38.01000', '-94.71930'), ('Garland', 391, '37.73160', '-94.62210'), ('Hammond', 184, '37.93550', '-94.69490'), ('Harding', 98, '37.99380', '-94.81930'), ('Hiattville', 140, '37.72210', '-94.87130'), ('Mapleton', 98, '38.01500', '-94.88330'), ('Marmaton', 140, '37.83180', '-94.82430'), ('Pawnee Station', 8297, '37.70000', '-94.79100'), ('Petersburg', 288, '37.77570', '-94.97910'), ('Porterville', 91, '37.71790', '-95.06850'), ('Redfield', 140, '37.83660', '-94.88070'), ('Uniontown', 288, '37.84710', '-94.97490'), ('Xenia', 277, '37.99520', '-94.98600')], 'partOfState': 'southeast', 'wfo': 'SGF'}, +'KSC013': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Everest', 314, '39.67720', '-95.42450'), ('Fairview', 271, '39.84110', '-95.72780'), ('Hamlin', 53, '39.91610', '-95.62800'), ('Hiawatha', 3417, '39.85250', '-95.53560'), ('Horton', 1967, '39.66060', '-95.52610'), ('Morrill', 277, '39.92830', '-95.69170'), ('Powhattan', 91, '39.76170', '-95.62970'), ('Reserve', 100, '39.97720', '-95.56170'), ('Robinson', 216, '39.81670', '-95.41030'), ('Willis', 69, '39.72500', '-95.50560')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSC015': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Andover', 6698, '37.69120', '-97.13930'), ('Augusta', 8423, '37.69230', '-96.97530'), ('Benton', 827, '37.78880', '-97.10810'), ('Cassoday', 130, '38.03870', '-96.63690'), ('Douglass', 1813, '37.51780', '-97.01140'), ('Elbing', 218, '38.05410', '-97.12680'), ('El Dorado', 12057, '37.82110', '-96.85800'), ('Latham', 164, '37.53520', '-96.64150'), ('Leon', 645, '37.68820', '-96.78350'), ('Potwin', 457, '37.93890', '-97.01870'), ('Rosalia', 0, '37.82000', '-96.62000'), ('Rose Hill', 3432, '37.56620', '-97.13210'), ('Towanda', 1338, '37.79690', '-96.99700'), ('Whitewater', 653, '37.96320', '-97.14680')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC017': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Point', 53, '38.25990', '-96.82170'), ('Cottonwood Falls', 966, '38.36910', '-96.54260'), ('Elmdale', 50, '38.37300', '-96.64570'), ('Hymer', 0, '38.48000', '-96.68000'), ('Matfield Green', 60, '38.15870', '-96.56340'), ('Saffordville', 0, '38.38330', '-96.40000'), ('Strong City', 584, '38.39560', '-96.53650'), ('Wonsevu', 0, '38.15000', '-96.77000')], 'partOfState': 'east central', 'wfo': 'ICT'}, +'KSC019': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Vale', 723, '37.10640', '-96.50060'), ('Chautauqua', 113, '37.02390', '-96.17680'), ('Elgin', 82, '37.00160', '-96.28040'), ('Hale', 0, '37.23000', '-96.02000'), ('Niotaze', 122, '37.06730', '-96.01400'), ('Peru', 183, '37.08120', '-96.09600'), ('Sedan', 1342, '37.12740', '-96.18470')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC021': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Baxter Springs', 4602, '37.02350', '-94.73520'), ('Carona', 101, '37.28020', '-94.86820'), ('Columbus', 3396, '37.16910', '-94.84380'), ('Crestline', 3287, '37.17070', '-94.70410'), ('Faulkner', 1281, '37.10130', '-95.01130'), ('Galena', 3287, '37.07570', '-94.63940'), ('Hallowell', 2046, '37.17460', '-94.99520'), ('Lawton', 86, '37.22180', '-94.63580'), ('Lowell', 4602, '37.04850', '-94.70130'), ('Melrose', 149, '37.03070', '-94.95800'), ('Neutral', 3396, '37.09770', '-94.79460'), ('Riverton', 4602, '37.07490', '-94.70440'), ('Roseland', 101, '37.28100', '-94.85020'), ('Scammon', 496, '37.27740', '-94.82460'), ('Sherman', 426, '37.25720', '-95.05690'), ('Sherwin', 3396, '37.17990', '-94.94740'), ('Skidmore', 496, '37.24020', '-94.83160'), ('Stippville', 3396, '37.22210', '-94.83740'), ('Treece', 149, '37.00080', '-94.84300'), ('Weir', 780, '37.31000', '-94.77160'), ('West Mineral', 243, '37.28410', '-94.92270')], 'partOfState': 'southeast', 'wfo': 'SGF'}, +'KSC023': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bird City', 482, '39.74990', '-101.53170'), ('St. Francis', 1497, '39.77140', '-101.80030'), ('Wheeler', 0, '39.76000', '-101.71000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC025': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Acres', 0, '37.10000', '-99.88000'), ('Ashland', 1032, '37.18680', '-99.76890'), ('Clark State Lake', 0, '37.39000', '-99.78000'), ('Englewood', 109, '37.03970', '-99.98540'), ('Minneola', 717, '37.44270', '-100.01260'), ('Sitka', 0, '37.17000', '-99.65000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC027': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Clay Center', 4564, '39.37700', '-97.12440'), ('Green', 147, '39.42780', '-97.00170'), ('Idana', 198, '39.35750', '-97.26390'), ('Longford', 94, '39.17000', '-97.33110'), ('Morganville', 198, '39.46640', '-97.20170'), ('Oak Hill', 35, '39.24830', '-97.34110'), ('Wakefield', 838, '39.21600', '-97.01700')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSC029': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Aurora', 79, '39.45200', '-97.52700'), ('Clyde', 740, '39.59110', '-97.39860'), ('Concordia', 5714, '39.57080', '-97.66220'), ('Glasco', 536, '39.35670', '-97.84080'), ('Jamestown', 399, '39.59950', '-97.86080'), ('Miltonvale', 523, '39.34830', '-97.44580')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSC031': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Beto Junction', 0, '38.40560', '-95.69190'), ('Burlington', 2790, '38.19440', '-95.74250'), ('Gridley', 372, '38.09780', '-95.88330'), ('Lebo', 961, '38.41670', '-95.85280'), ('Le Roy', 593, '38.08390', '-95.63420'), ('New Strawn', 425, '38.26250', '-95.74190'), ('Waverly', 589, '38.39390', '-95.60280')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC033': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Buttermilk', 0, '37.11000', '-99.34000'), ('Coldwater', 792, '37.25790', '-99.33680'), ('Lake Coldwater', 792, '37.25000', '-99.35000'), ('Protection', 558, '37.20020', '-99.48030'), ('Wilmore', 57, '37.33590', '-99.20930')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSC035': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arkansas City', 11963, '37.06880', '-97.04060'), ('Atlanta', 255, '37.43640', '-96.76710'), ('Burden', 564, '37.31310', '-96.75500'), ('Cambridge', 103, '37.31730', '-96.66680'), ('Dexter', 364, '37.17930', '-96.71570'), ('Maple City', 0, '37.05000', '-96.78330'), ('Udall', 794, '37.38700', '-97.11750'), ('Winfield', 12206, '37.26860', '-96.96850')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC037': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arcadia', 391, '37.64190', '-94.62350'), ('Arma', 1529, '37.54380', '-94.70000'), ('Beulah', 2773, '37.44020', '-94.82790'), ('Brazilton', 154, '37.55970', '-94.95720'), ('Cherokee', 722, '37.34580', '-94.80860'), ('Chicopee', 19243, '37.38180', '-94.74160'), ('Croweburg', 1529, '37.55690', '-94.66580'), ('Englevale', 1529, '37.59380', '-94.72710'), ('Farlington', 2773, '37.61770', '-94.82740'), ('Franklin', 1529, '37.52630', '-94.70550'), ('Frontenac', 2996, '37.45550', '-94.68880'), ('Girard', 2773, '37.51110', '-94.83770'), ('Greenbush', 221, '37.51440', '-94.98770'), ('Hepler', 154, '37.66110', '-94.96790'), ('Lone Oak', 19243, '37.43690', '-94.74170'), ('McCune', 426, '37.35470', '-95.01630'), ('Mulberry', 577, '37.55690', '-94.62160'), ('Opolis', 220, '37.34440', '-94.62070'), ('Pittsburg', 19243, '37.41080', '-94.70470'), ('Polk', 1529, '37.54330', '-94.74160'), ('Ringo', 1529, '37.50940', '-94.76110'), ('Walnut', 221, '37.60130', '-95.07770'), ('Yale', 346, '37.48380', '-94.64160')], 'partOfState': 'southeast', 'wfo': 'SGF'}, +'KSC039': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Bluffs', 0, '39.98000', '-100.56000'), ('Dresden', 51, '39.62140', '-100.41970'), ('Jennings', 146, '39.68020', '-100.29350'), ('Kanona', 0, '39.80000', '-100.39000'), ('Leoville', 0, '39.58000', '-100.46000'), ('Norcatur', 169, '39.83460', '-100.18800'), ('Oberlin', 1994, '39.82320', '-100.53040'), ('Traer', 0, '39.93000', '-100.65000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC041': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Abilene', 6543, '38.91720', '-97.21360'), ('Carlton', 38, '38.68720', '-97.29310'), ('Chapman', 1241, '38.97220', '-97.02220'), ('Enterprise', 836, '38.90280', '-97.11670'), ('Herington', 2563, '38.67110', '-96.94220'), ('Hope', 372, '38.69030', '-97.07640'), ('Manchester', 102, '39.09470', '-97.32450'), ('Moonlight', 1241, '39.00280', '-97.10220'), ('Solomon', 1072, '38.92000', '-97.36100'), ('Talmage', 102, '39.02500', '-97.26030'), ('Woodbine', 207, '38.79610', '-96.95830')], 'partOfState': 'central', 'wfo': 'TOP'}, +'KSC043': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bendena', 0, '39.74220', '-95.18080'), ('Denton', 186, '39.73160', '-95.26980'), ('Doniphan', 0, '39.64100', '-95.08090'), ('Elwood', 1145, '39.75390', '-94.87220'), ('Fanning', 0, '39.83460', '-95.16060'), ('Highland', 942, '39.86000', '-95.26940'), ('Leona', 88, '39.78580', '-95.32190'), ('Severance', 108, '39.76690', '-95.24970'), ('Troy', 1054, '39.78320', '-95.08860'), ('Wathena', 1348, '39.75910', '-94.94910'), ('White Cloud', 239, '39.97640', '-95.29720')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KSC045': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Baldwin City', 3400, '38.77500', '-95.18700'), ('Clinton', 0, '38.91170', '-95.39030'), ('Eudora', 4307, '38.94330', '-95.09830'), ('Globe', 0, '38.78220', '-95.39970'), ('Lawrence', 80098, '38.95900', '-95.26000'), ('Lecompton', 608, '39.04450', '-95.39450'), ('Lone Star', 0, '38.86670', '-95.35530'), ('Pleasant Grove', 0, '38.85560', '-95.26970'), ('Vinland', 0, '38.83950', '-95.18220')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC047': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Belpre', 104, '37.95100', '-99.09920'), ('Centerview', 0, '37.80000', '-99.27000'), ('Fellsburg', 0, '37.80000', '-99.18000'), ('Kinsley', 1658, '37.92240', '-99.41110'), ('Lewis', 486, '37.93700', '-99.25430'), ('Offerle', 220, '37.89090', '-99.56050'), ('Trousdale', 0, '37.80000', '-99.08000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSC049': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Elk Falls', 112, '37.37400', '-96.19250'), ('Grenola', 231, '37.35070', '-96.44820'), ('Howard', 808, '37.46950', '-96.26270'), ('Longton', 394, '37.37750', '-96.08260'), ('Moline', 457, '37.36370', '-96.30180')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC051': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Antonino', 0, '38.78000', '-99.38000'), ('Catherine', 0, '38.93330', '-99.21670'), ('Ellis', 1873, '38.93620', '-99.55890'), ('Emmeram', 0, '38.97000', '-99.14000'), ('Hays', 20013, '38.87820', '-99.31880'), ('Munjor', 0, '38.81000', '-99.27000'), ('Pheifer', 44831, '38.70000', '-99.16670'), ('Schoenchen', 214, '38.71320', '-99.33040'), ('Toulon', 0, '38.84000', '-99.25000'), ('Victoria', 1208, '38.85360', '-99.14710'), ('Walker', 0, '38.86000', '-99.06000'), ('Yocemento', 0, '38.90000', '-99.42000')], 'partOfState': 'central', 'wfo': 'DDC'}, +'KSC053': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ellsworth', 2965, '38.73560', '-98.22810'), ('Holyrood', 464, '38.58730', '-98.41170'), ('Kanopolis', 543, '38.70850', '-98.15670'), ('Lorraine', 136, '38.56960', '-98.31710'), ('Wilson', 799, '38.82560', '-98.47440')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC055': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Friend', 0, '38.25000', '-100.91000'), ('Garden City', 28451, '37.97710', '-100.86280'), ('Holcomb', 2026, '37.99020', '-100.98810'), ('Kalvesta', 0, '38.05000', '-100.28000'), ('Pierceville', 0, '37.88000', '-100.67000'), ('Plymell', 0, '37.81000', '-100.87000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC057': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bellefont', 0, '37.88000', '-99.65000'), ('Bloom', 0, '37.48000', '-99.88000'), ('Bucklin', 725, '37.54900', '-99.63460'), ('Dodge City', 25176, '37.75870', '-100.01540'), ('Ford', 314, '37.63700', '-99.75400'), ('Ft. Dodge', 0, '37.74000', '-99.93000'), ('Howell', 0, '37.78000', '-100.18000'), ('Kingsdown', 0, '37.51000', '-99.76000'), ('Spearville', 813, '37.84800', '-99.75430'), ('Windhorst', 0, '37.78000', '-99.63000'), ('Wright', 0, '37.78000', '-99.89000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC059': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Centropolis', 0, '38.71610', '-95.35030'), ('Lane', 256, '38.43970', '-95.08200'), ('Ottawa', 11921, '38.61560', '-95.26750'), ('Pomona', 923, '38.60830', '-95.45140'), ('Princeton', 317, '38.48890', '-95.27500'), ('Rantoul', 241, '38.54860', '-95.10000'), ('Richmond', 510, '38.40280', '-95.25360'), ('Wellsville', 1606, '38.71830', '-95.08140'), ('Williamsburg', 351, '38.48060', '-95.46670')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC061': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Grandview Plaza', 1184, '39.02920', '-96.78920'), ('Junction City', 18886, '39.02860', '-96.83110'), ('Milford', 502, '39.17500', '-96.91400')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC063': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Gove', 99, '38.95970', '-100.48950'), ('Grainfield', 327, '39.11410', '-100.46860'), ('Grinnell', 329, '39.12490', '-100.63070'), ('Park', 151, '39.11230', '-100.36170'), ('Quinter', 961, '39.06660', '-100.23370'), ('The Monument Rocks', 0, '38.77000', '-100.77000')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSC065': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bogue', 179, '39.35960', '-99.68790'), ('Hill City', 1604, '39.36630', '-99.84650'), ('Morland', 164, '39.34880', '-100.07440'), ('Nicodemus', 0, '39.39000', '-99.61000'), ('Penokee', 0, '39.35000', '-99.97000'), ('Saint Peter', 0, '39.19000', '-100.09000'), ('Studley', 0, '39.35000', '-100.16000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC067': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Hickok', 0, '37.56000', '-101.23000'), ('Ryus', 0, '37.50000', '-101.11000'), ('Ulysses', 5960, '37.57900', '-101.35580')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC069': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Charleston', 0, '37.87000', '-100.57000'), ('Cimarron', 1934, '37.80820', '-100.34570'), ('Copeland', 339, '37.54020', '-100.62850'), ('Ensign', 203, '37.65360', '-100.23220'), ('Ingalls', 328, '37.82790', '-100.45240'), ('Montezuma', 966, '37.59650', '-100.44170'), ('The Haggard Elev', 0, '37.62000', '-100.30000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC071': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Horace', 143, '38.47670', '-101.79040'), ('Tribune', 835, '38.47130', '-101.75400')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSC073': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Climax', 64, '37.71930', '-96.22360'), ('Eureka', 2914, '37.82270', '-96.28840'), ('Fall River', 156, '37.60840', '-96.02850'), ('Hamilton', 334, '37.98110', '-96.16380'), ('Madison', 857, '38.13300', '-96.13700'), ('Piedmont', 0, '37.62000', '-96.37000'), ('Severy', 359, '37.62160', '-96.22730'), ('Thrall', 0, '38.02000', '-96.32000'), ('Virgil', 113, '37.98060', '-96.01080')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC075': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Coolidge', 86, '38.04090', '-102.00740'), ('Syracuse', 1824, '37.98110', '-101.75140')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC077': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Anthony', 2440, '37.15390', '-98.02910'), ('Attica', 636, '37.24250', '-98.22590'), ('Bluff City', 80, '37.07560', '-97.87500'), ('Corwin', 0, '37.08000', '-98.30000'), ('Danville', 59, '37.28570', '-97.89100'), ('Freeport', 6, '37.19870', '-97.85420'), ('Harper', 1567, '37.28520', '-98.02630'), ('Runnymede', 0, '37.35000', '-97.93000'), ('Waldron', 17, '37.00080', '-98.18280')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC079': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burrton', 932, '38.02260', '-97.67200'), ('Halstead', 1873, '38.00100', '-97.50930'), ('Hesston', 3509, '38.13990', '-97.42760'), ('Newton', 17190, '38.04440', '-97.34190'), ('North Newton', 1522, '38.07390', '-97.34600'), ('Sedgwick', 1537, '37.91780', '-97.42610'), ('Walton', 284, '38.11830', '-97.25610')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC081': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Satanta', 1239, '37.43590', '-100.98790'), ('Sublette', 1592, '37.47960', '-100.84650'), ('Tice', 0, '37.51000', '-100.71000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC083': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Gray', 0, '38.15000', '-99.63000'), ('Hanston', 259, '38.12290', '-99.71210'), ('Jetmore', 903, '38.08310', '-99.89300')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC085': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Circleville', 185, '39.50830', '-95.85830'), ('Delia', 179, '39.24060', '-95.96670'), ('Denison', 231, '39.39170', '-95.62780'), ('Holton', 3353, '39.46530', '-95.73610'), ('Hoyt', 571, '39.24780', '-95.70610'), ('Mayetta', 312, '39.33890', '-95.72220'), ('Netawaka', 170, '39.60280', '-95.71810'), ('Soldier', 122, '39.53610', '-95.96390'), ('Whiting', 206, '39.58970', '-95.61250')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSC087': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Grantville', 706, '39.08330', '-95.56110'), ('McLouth', 868, '39.19580', '-95.20810'), ('Meriden', 706, '39.18890', '-95.56940'), ('Nortonville', 620, '39.41670', '-95.33360'), ('Oskaloosa', 1165, '39.21530', '-95.31250'), ('Ozawkie', 552, '39.23330', '-95.46670'), ('Perry', 901, '39.07580', '-95.39310'), ('Valley Falls', 1254, '39.34330', '-95.46000'), ('Williamstown', 0, '39.06280', '-95.33250'), ('Winchester', 579, '39.32220', '-95.26670')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSC089': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burr Oak', 265, '39.87040', '-98.30400'), ('Esbon', 148, '39.82170', '-98.43340'), ('Formoso', 129, '39.77930', '-97.99350'), ('Ionia', 439, '39.66400', '-98.34700'), ('Jewell', 483, '39.67180', '-98.15130'), ('Lovewell State Park', 37, '39.89000', '-98.03000'), ('Mankato', 976, '39.78740', '-98.20760'), ('Montrose', 129, '39.78450', '-98.08750'), ('Randall', 90, '39.64160', '-98.04510'), ('Webber', 37, '39.93440', '-98.03580')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSC091': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Clearview City', 0, '38.94510', '-95.00200'), ('De Soto', 4561, '38.97910', '-94.96840'), ('Edgerton', 1440, '38.76480', '-95.00780'), ('Fairway', 3952, '39.02230', '-94.63170'), ('Gardner', 9396, '38.81230', '-94.92700'), ('Holliday', 0, '39.03890', '-94.80620'), ('Lake Quivira', 932, '39.04040', '-94.76800'), ('Leawood', 27656, '38.96670', '-94.61670'), ('Lenexa', 40238, '38.95360', '-94.73330'), ('Merriam', 11008, '39.02360', '-94.69180'), ('Mission', 9727, '39.02670', '-94.65670'), ('Mission Hills', 3593, '39.01360', '-94.61640'), ('Mission Woods', 165, '39.03320', '-94.61280'), ('Olathe', 92962, '38.88690', '-94.81450'), ('Overland Park', 149080, '38.98220', '-94.67060'), ('Prairie Village', 23186, '38.99170', '-94.63590'), ('Roeland Park', 6817, '39.03590', '-94.63750'), ('Shawnee', 47996, '39.00900', '-94.81200'), ('Spring Hill', 2727, '38.74300', '-94.82500'), ('Stanley', 149080, '38.85400', '-94.66700'), ('Stillwell', 0, '38.76920', '-94.65650'), ('Westwood', 1533, '39.03990', '-94.61700'), ('Westwood Hills', 378, '39.03910', '-94.61060')], 'partOfState': 'east central', 'wfo': 'EAX'}, +'KSC093': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Deerfield', 884, '37.98140', '-101.13260'), ('Kendall', 0, '37.94000', '-101.54000'), ('Lakin', 2316, '37.94020', '-101.25830')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC095': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cleveland', 0, '37.55000', '-98.13000'), ('Cunningham', 514, '37.64490', '-98.43200'), ('Kingman', 3387, '37.64700', '-98.11350'), ('Mt Vernon', 0, '37.72000', '-97.85000'), ('Nashville', 111, '37.43860', '-98.42230'), ('Norwich', 551, '37.45670', '-97.84550'), ('Penalosa', 27, '37.71580', '-98.31970'), ('Rago', 0, '37.45000', '-98.08000'), ('Spivey', 80, '37.44820', '-98.16500'), ('Zenda', 123, '37.44500', '-98.28220')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC097': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Belvidere', 0, '37.44000', '-99.08000'), ('Greensburg', 1574, '37.60540', '-99.29180'), ('Haviland', 612, '37.61770', '-99.10510'), ('Mullinville', 279, '37.58800', '-99.47460'), ('Wellsford', 0, '37.61000', '-99.02000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSC099': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Altamont', 1092, '37.19150', '-95.29470'), ('Angola', 0, '37.10000', '-95.47000'), ('Bartlett', 124, '37.05490', '-95.21130'), ('Chetopa', 1281, '37.03630', '-95.09330'), ('Dennis', 0, '37.35000', '-95.42000'), ('Edna', 423, '37.05850', '-95.35830'), ('Labette', 68, '37.23030', '-95.18350'), ('Mound Valley', 418, '37.20720', '-95.40400'), ('Oswego', 2046, '37.16760', '-95.11180'), ('Parsons', 11514, '37.33900', '-95.26790'), ('Parsons Tri City Airport', 0, '37.33330', '-95.51670')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC101': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alamota', 0, '38.44000', '-100.31000'), ('Amy', 0, '38.46000', '-100.60000'), ('Dighton', 1261, '38.48150', '-100.46580'), ('Healy', 0, '38.60000', '-100.62000'), ('Pendennis', 0, '38.65000', '-100.33000'), ('Shields', 0, '38.62000', '-100.45000')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSC103': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Basehor', 2238, '39.14170', '-94.93830'), ('Easton', 362, '39.34540', '-95.11630'), ('Fort Leavenworth', 35420, '39.35800', '-94.91990'), ('Jarbalo', 0, '39.20230', '-95.06670'), ('Lansing', 9199, '39.24820', '-94.90000'), ('Leavenworth', 35420, '39.31110', '-94.92220'), ('Linwood', 374, '39.00000', '-95.03890'), ('Lowemont', 0, '39.38070', '-95.05530'), ('Reno', 0, '39.05000', '-95.11990'), ('Tonganoxie', 2728, '39.10970', '-95.08750')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KSC105': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ash Grove', 0, '39.17000', '-98.35000'), ('Barnard', 123, '39.18950', '-98.04400'), ('Beverly', 199, '39.01380', '-97.97570'), ('Lincoln', 1274, '39.04270', '-98.14820'), ('Sylvan Grove', 324, '39.01280', '-98.39350'), ('Westfall', 0, '38.93000', '-98.00000')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC107': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Blue Mound', 277, '38.08920', '-95.00940'), ('La Cygne', 1115, '38.34680', '-94.76130'), ('Mound City', 821, '38.14380', '-94.82240'), ('Parker', 281, '38.32890', '-94.99050'), ('Pleasanton', 1387, '38.17520', '-94.71300'), ('Prescott', 280, '38.06300', '-94.69610')], 'partOfState': 'east central', 'wfo': 'EAX'}, +'KSC109': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Monument', 0, '39.10000', '-101.00000'), ('Oakley', 2173, '39.12580', '-100.85410'), ('Russell Springs', 32, '38.91230', '-101.17550'), ('Winona', 228, '39.06160', '-101.24460')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSC111': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Admire', 177, '38.64110', '-96.10280'), ('Allen', 211, '38.65610', '-96.16940'), ('Americus', 938, '38.50690', '-96.26170'), ('Bushong', 55, '38.64310', '-96.25690'), ('Emporia', 26760, '38.40390', '-96.18140'), ('Hartford', 500, '38.30830', '-95.95560'), ('Neosho Rapids', 274, '38.36950', '-95.99170'), ('Olpe', 504, '38.26250', '-96.16670'), ('Reading', 247, '38.51900', '-95.95900')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC113': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Canton', 829, '38.38610', '-97.42990'), ('Galva', 701, '38.38210', '-97.53800'), ('Inman', 1142, '38.22910', '-97.77380'), ('Lindsborg', 3321, '38.57430', '-97.67490'), ('Marquette', 542, '38.55380', '-97.83400'), ('McPherson', 13770, '38.37190', '-97.66190'), ('Moundridge', 1593, '38.20180', '-97.51560'), ('Roxbury', 0, '38.55000', '-97.42000'), ('Windom', 137, '38.38430', '-97.91020')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC115': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burns', 268, '38.08970', '-96.88770'), ('Durham', 114, '38.48510', '-97.22700'), ('Florence', 671, '38.24280', '-96.92910'), ('Goessel', 565, '38.24650', '-97.34540'), ('Hillsboro', 2854, '38.35130', '-97.20220'), ('Lehigh', 215, '38.37490', '-97.30240'), ('Lincolnville', 225, '38.49400', '-96.96120'), ('Lost Springs', 71, '38.56650', '-96.96490'), ('Marion', 2110, '38.34890', '-97.01570'), ('Peabody', 1384, '38.16880', '-97.10690'), ('Tampa', 144, '38.54700', '-97.15400')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC117': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Axtell', 445, '39.87170', '-96.25860'), ('Beattie', 277, '39.86110', '-96.41940'), ('Blue Rapids', 1088, '39.68200', '-96.65950'), ('Bremen', 0, '39.90140', '-96.78920'), ('Frankfort', 855, '39.70560', '-96.41670'), ('Lillis', 0, '39.60970', '-96.29580'), ('Marysville', 3271, '39.84110', '-96.64690'), ('Oketo', 87, '39.96360', '-96.59940'), ('Summerfield', 211, '39.99640', '-96.34900'), ('Vermillion', 107, '39.71940', '-96.26560'), ('Waterville', 681, '39.69110', '-96.74720')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSC119': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Fowler', 567, '37.38330', '-100.19570'), ('Meade', 1672, '37.28500', '-100.33760'), ('Meade State Park', 0, '37.17000', '-100.42000'), ('Missler', 0, '37.32000', '-100.43000'), ('Plains City', 1163, '37.26360', '-100.58990')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC121': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Beagle', 0, '38.41760', '-94.95490'), ('Bucyrus', 0, '38.72500', '-94.71800'), ('Chiles', 0, '38.67990', '-94.76110'), ('Fontana', 149, '38.42590', '-94.83790'), ('Hillsdale', 0, '38.66270', '-94.85130'), ('Louisburg', 2576, '38.62380', '-94.68290'), ('New Lancaster', 0, '38.46250', '-94.73340'), ('Osawatomie', 4645, '38.50250', '-94.95110'), ('Paola', 5011, '38.57700', '-94.86620'), ('Wagstaff', 0, '38.66520', '-94.79700')], 'partOfState': 'east central', 'wfo': 'EAX'}, +'KSC123': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Asherville', 114, '39.40600', '-97.97650'), ('Beloit', 4019, '39.46580', '-98.10780'), ('Cawker City', 521, '39.50970', '-98.43210'), ('Glen Elder', 439, '39.49970', '-98.30620'), ('Hunter', 77, '39.23560', '-98.39560'), ('Scottsville', 21, '39.54310', '-97.95200'), ('Simpson', 114, '39.38630', '-97.93370'), ('Tipton', 243, '39.33940', '-98.47110'), ('Victor', 0, '39.24800', '-98.28350')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSC125': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bolton', 0, '37.18000', '-95.80000'), ('Caney', 2092, '37.01350', '-95.93150'), ('Cherryvale', 2386, '37.26800', '-95.55110'), ('Coffeyville', 11021, '37.04080', '-95.63210'), ('Coffeyville Airport', 0, '37.10000', '-95.56670'), ('Dearing', 415, '37.05910', '-95.71210'), ('Elk City', 305, '37.28910', '-95.91000'), ('Havana', 86, '37.09220', '-95.94130'), ('Independence', 9846, '37.23150', '-95.71380'), ('Independence Airport', 0, '37.15000', '-95.78330'), ('Liberty', 95, '37.15610', '-95.59770'), ('Sycamore', 0, '37.33000', '-95.72000'), ('Tyro', 226, '37.03670', '-95.82140')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC127': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burdick', 0, '38.56360', '-96.84530'), ('Council Grove', 2321, '38.66110', '-96.49170'), ('Dunlap', 81, '38.57640', '-96.36560'), ('Dwight', 330, '38.84440', '-96.59310'), ('Latimer', 21, '38.73890', '-96.84530'), ('Parkerville', 73, '38.76390', '-96.66110'), ('White City', 518, '38.79560', '-96.73560'), ('Wilsey', 191, '38.63610', '-96.67500')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC129': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Elkhart', 2233, '37.00220', '-101.89450'), ('Richfield', 48, '37.26570', '-101.78320'), ('Rolla', 482, '37.11930', '-101.63060'), ('Wilburton', 0, '37.07000', '-101.76000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC131': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Baileyville', 445, '39.84440', '-96.18470'), ('Bern', 204, '39.96220', '-95.97170'), ('Centralia', 534, '39.72580', '-96.12700'), ('Corning', 170, '39.65720', '-96.02920'), ('Goff', 181, '39.66390', '-95.93200'), ('Oneida', 70, '39.86390', '-95.93890'), ('Sabetha', 2589, '39.90220', '-95.80060'), ('Seneca', 2122, '39.83420', '-96.06390'), ('Wetmore', 362, '39.63330', '-95.81110'), ('Woodlawn', 0, '39.78330', '-95.86470')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSC133': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Chanute', 9411, '37.67100', '-95.46030'), ('Earlton', 80, '37.58730', '-95.46920'), ('Erie', 1211, '37.56850', '-95.24370'), ('Galesburg', 150, '37.47240', '-95.35560'), ('Stark', 106, '37.68950', '-95.14330'), ('St. Paul', 687, '37.51730', '-95.17480'), ('Thayer', 500, '37.48790', '-95.47400')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC135': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arnold', 0, '38.63000', '-100.04000'), ('Bazine', 311, '38.44600', '-99.69220'), ('Beeler', 0, '38.43000', '-100.20000'), ('Brownell', 48, '38.64020', '-99.74370'), ('Ness City', 1534, '38.45340', '-99.90560'), ('Ransom', 338, '38.63630', '-99.93200'), ('Utica', 223, '38.64290', '-100.16990')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSC137': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Almena', 469, '39.89150', '-99.70980'), ('Calvert', 0, '39.83000', '-99.76000'), ('Clayton', 66, '39.73720', '-100.17640'), ('Densmore', 0, '39.64000', '-99.74000'), ('Edmond', 47, '39.62670', '-99.82030'), ('Lenora', 306, '39.61100', '-100.00100'), ('New Almelo', 0, '39.59000', '-100.12000'), ('Norton', 3012, '39.83550', '-99.89180'), ('Reager', 0, '39.83000', '-100.10000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC139': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burlingame', 1017, '38.75390', '-95.83470'), ('Carbondale', 1478, '38.81860', '-95.68890'), ('Lyndon', 1038, '38.61000', '-95.68420'), ('Melvern', 429, '38.50690', '-95.63750'), ('Olivet', 64, '38.48060', '-95.75140'), ('Osage City', 3034, '38.63390', '-95.82560'), ('Overbrook', 947, '38.78060', '-95.55700'), ('Quenemo', 468, '38.57970', '-95.52670'), ('Scranton', 724, '38.78170', '-95.73830')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC141': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alton', 117, '39.46820', '-98.94820'), ('Downs', 1038, '39.50330', '-98.54680'), ('Natoma', 367, '39.18900', '-99.02450'), ('Osborne', 1607, '39.43940', '-98.69830'), ('Portis', 123, '39.55800', '-98.69100')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSC143': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ada', 339, '39.15140', '-97.88890'), ('Bennington', 623, '39.03060', '-97.59390'), ('Culver', 164, '38.97080', '-97.75860'), ('Delphos', 469, '39.27390', '-97.77170'), ('Minneapolis', 2046, '39.12190', '-97.70640'), ('Niles', 0, '38.96940', '-97.46280'), ('Tescott', 339, '39.00810', '-97.87530'), ('Wells', 0, '39.13890', '-97.55090')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSC145': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ash Valley', 0, '38.29000', '-99.21000'), ('Burdett', 256, '38.19340', '-99.52610'), ('Frizell', 0, '38.17000', '-99.20000'), ('Garfield', 198, '38.07760', '-99.24460'), ('Larned', 4236, '38.18320', '-99.10130'), ('Rozel', 182, '38.19590', '-99.40210'), ('Sanford', 0, '38.17000', '-99.31000'), ('Zook', 0, '38.04000', '-99.09000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSC147': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Agra', 306, '39.76100', '-99.11970'), ('Glade', 114, '39.68260', '-99.31060'), ('Kirwin', 229, '39.66980', '-99.12280'), ('Logan', 603, '39.66130', '-99.56650'), ('Long Island', 155, '39.94630', '-99.53290'), ('Phillipsburg', 2668, '39.75140', '-99.32190'), ('Prairie View', 141, '39.83170', '-99.57290'), ('Speed', 44, '39.67630', '-99.42030'), ('Woodruff', 155, '39.99250', '-99.42600')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSC149': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Belvue', 228, '39.21670', '-96.17780'), ('Blaine', 92, '39.49670', '-96.40280'), ('Emmett', 277, '39.30720', '-96.05580'), ('Havensville', 146, '39.51110', '-96.07780'), ('Louisville', 209, '39.25030', '-96.31450'), ('Olsburg', 192, '39.43060', '-96.61530'), ('Onaga', 704, '39.48890', '-96.16970'), ('St. George', 434, '39.19110', '-96.42000'), ('St. Marys', 2198, '39.19420', '-96.07080'), ('Wamego', 4246, '39.20200', '-96.30470'), ('Westmoreland', 631, '39.39400', '-96.41400'), ('Wheaton', 92, '39.50220', '-96.32060')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSC151': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Byers', 50, '37.78780', '-98.86670'), ('Cairo', 0, '37.64000', '-98.54000'), ('Coats', 112, '37.51090', '-98.82440'), ('Croft', 0, '37.49000', '-98.99000'), ('Cullison', 98, '37.62970', '-98.90510'), ('Hopewell', 0, '37.80000', '-98.98000'), ('Iuka', 185, '37.72900', '-98.73140'), ('Pratt', 6570, '37.64670', '-98.73590'), ('Preston', 164, '37.75800', '-98.55550'), ('Sawyer', 124, '37.49770', '-98.68270')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSC153': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Atwood', 1279, '39.81040', '-101.04100'), ('Beardsley', 0, '39.81000', '-101.23000'), ('Blakeman', 0, '39.82000', '-101.12000'), ('Herndon', 149, '39.90850', '-100.78570'), ('Ludell', 0, '39.85000', '-100.96000'), ('McDonald', 159, '39.78520', '-101.37030')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC155': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Abbyville', 128, '37.97060', '-98.20340'), ('Arlington', 459, '37.89600', '-98.17760'), ('Buhler', 1358, '38.13810', '-97.77130'), ('Haven', 1175, '37.90230', '-97.78060'), ('Hutchinson', 40787, '38.06550', '-97.91420'), ('Langdon', 62, '37.85330', '-98.32410'), ('Nickerson', 1194, '38.14770', '-98.08670'), ('Partridge', 259, '37.96740', '-98.09390'), ('Plevna', 99, '37.97110', '-98.30910'), ('Pretty Prairie', 615, '37.78020', '-98.01970'), ('South Hutchinson', 2539, '38.02840', '-97.94100'), ('Sylvia', 297, '37.95990', '-98.40780'), ('Turon', 436, '37.80740', '-98.42800'), ('Willowbrook', 36, '38.10160', '-97.99110')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC157': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Agenda', 81, '39.70780', '-97.43140'), ('Belleville', 2239, '39.82440', '-97.63220'), ('Courtland', 334, '39.78140', '-97.89250'), ('Cuba', 231, '39.80280', '-97.45560'), ('Munden', 122, '39.91390', '-97.53780'), ('Narka', 93, '39.96060', '-97.42560'), ('Norway', 436, '39.69610', '-97.77360'), ('Republic', 161, '39.92360', '-97.82140'), ('Scandia', 436, '39.79450', '-97.78330')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSC159': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alden', 168, '38.24410', '-98.31110'), ('Bushton', 314, '38.51280', '-98.39470'), ('Chase', 490, '38.35570', '-98.34840'), ('Frederick', 11, '38.51310', '-98.26740'), ('Geneseo', 272, '38.51680', '-98.15400'), ('Little River', 536, '38.39770', '-98.01240'), ('Lyons', 3732, '38.34600', '-98.20220'), ('Raymond', 95, '38.27850', '-98.41450'), ('Silica', 0, '38.35000', '-98.45000'), ('Sterling', 2642, '38.20920', '-98.20580')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC161': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Keats', 1494, '39.22360', '-96.70830'), ('Leonardville', 398, '39.36440', '-96.85860'), ('Manhattan', 44831, '39.18360', '-96.57140'), ('Ogden', 1762, '39.11110', '-96.70580'), ('Randolph', 175, '39.43060', '-96.75970'), ('Riley', 886, '39.29890', '-96.83060')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSC163': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Codell', 2029, '39.19350', '-99.17700'), ('Damar', 155, '39.31910', '-99.58380'), ('Palco', 248, '39.25390', '-99.56420'), ('Plainville', 2029, '39.23420', '-99.30130'), ('Stockton', 1558, '39.43630', '-99.27130'), ('Webster State Park', 155, '39.39800', '-99.45000'), ('Woodston', 116, '39.45430', '-99.09870'), ('Zurich', 126, '39.23160', '-99.43440')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSC165': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alexander', 75, '38.46940', '-99.55200'), ('Bison', 235, '38.51980', '-99.19720'), ('Hargrave', 0, '38.55000', '-99.43000'), ('La Crosse', 1376, '38.53170', '-99.30980'), ('Liebenthal', 111, '38.65450', '-99.32000'), ('Loretta', 0, '38.65000', '-99.18330'), ('McCracken', 211, '38.58230', '-99.56890'), ('Nekoma', 0, '38.47000', '-99.44000'), ('Otis', 325, '38.53490', '-99.05310'), ('Rush Center', 176, '38.46490', '-99.31050'), ('Shaffer', 0, '38.46000', '-99.08000'), ('Timken', 83, '38.47290', '-99.17700')], 'partOfState': 'central', 'wfo': 'DDC'}, +'KSC167': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bunker Hill', 101, '38.87260', '-98.70080'), ('Dorrance', 205, '38.84630', '-98.59020'), ('Gorham', 360, '38.88070', '-99.02360'), ('Lucas', 436, '39.05750', '-98.53850'), ('Luray', 203, '39.11500', '-98.69240'), ('Milberger', 0, '38.72000', '-98.92000'), ('Paradise', 64, '39.11460', '-98.91760'), ('Russell', 4696, '38.88790', '-98.85350'), ('Russell Airport', 0, '38.86670', '-98.81670'), ('Waldo', 48, '39.12020', '-98.79750')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC169': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Assaria', 438, '38.68040', '-97.60370'), ('Bridgeport', 0, '38.63330', '-97.60000'), ('Brookville', 259, '38.77370', '-97.86420'), ('Glendale', 0, '38.90000', '-97.87000'), ('Gypsum', 414, '38.70580', '-97.42650'), ('New Cambria', 150, '38.87960', '-97.50540'), ('Salina', 45679, '38.81580', '-97.61780'), ('Smolan', 218, '38.73800', '-97.68360')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSC171': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Grigston', 0, '38.47000', '-100.72000'), ('Manning', 0, '38.54000', '-100.72000'), ('Modoc', 0, '38.48000', '-101.07000'), ('Scott City', 3855, '38.47980', '-100.90840'), ('Scott State Lake', 3855, '38.68000', '-100.92000'), ('Shallow Water', 0, '38.36000', '-100.91000')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSC173': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Andale', 766, '37.79270', '-97.62910'), ('Bel Aire', 5836, '37.76450', '-97.26820'), ('Bentley', 368, '37.88640', '-97.51560'), ('Cheney', 1783, '37.62790', '-97.78020'), ('Clearwater', 2178, '37.50560', '-97.50130'), ('Colwich', 1229, '37.78170', '-97.53750'), ('Derby', 17807, '37.54930', '-97.25890'), ('Downtown Wichita', 0, '37.68740', '-97.34270'), ('East Wichita', 0, '37.68470', '-97.25840'), ('Garden Plain', 797, '37.66110', '-97.68160'), ('Goddard', 2037, '37.65980', '-97.57660'), ('Haysville', 8502, '37.56700', '-97.34920'), ('Kechi', 1038, '37.79530', '-97.27830'), ('Maize', 1868, '37.77310', '-97.46410'), ('McConnell Air Force Base', 0, '37.62000', '-97.27000'), ('Mount Hope', 830, '37.86840', '-97.66420'), ('Mulvane', 5155, '37.48070', '-97.24070'), ('Oaklawn', 0, '37.60670', '-97.29880'), ('Park City', 5814, '37.79600', '-97.32190'), ('Valley Center', 4883, '37.83520', '-97.37350'), ('Viola', 211, '37.48250', '-97.64460'), ('Wichita', 0, '37.75140', '-97.33366')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC175': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Hayne', 0, '37.10000', '-100.80000'), ('Kismet', 484, '37.20500', '-100.70060'), ('Liberal', 19666, '37.04470', '-100.93550')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC177': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Auburn', 1121, '38.90610', '-95.81580'), ('Berryton', 0, '38.94080', '-95.63160'), ('Dover', 0, '38.96470', '-95.93720'), ('Pauline', 0, '38.96330', '-95.69050'), ('Richland', 0, '38.88360', '-95.53940'), ('Rossville', 1014, '39.13610', '-95.95140'), ('Silver Lake', 1358, '39.10420', '-95.85830'), ('Tecumseh', 0, '39.04810', '-95.57910'), ('Topeka', 122377, '39.04830', '-95.67780'), ('Willard', 86, '39.09330', '-95.94170')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC179': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Angelus', 0, '39.19000', '-100.69000'), ('Hoxie', 1244, '39.35530', '-100.43950'), ('Seguin', 0, '39.34000', '-100.60000'), ('Selden', 201, '39.54120', '-100.56660'), ('Tasco', 0, '39.35000', '-100.29000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC181': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Edson', 0, '39.33000', '-101.54000'), ('Goodland', 4948, '39.34860', '-101.70930'), ('Kanorado', 248, '39.33710', '-102.03690'), ('Ruleton', 0, '39.34000', '-101.88000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC183': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Athol', 51, '39.76570', '-98.91990'), ('Bellaire', 1931, '39.79850', '-98.67600'), ('Cedar', 26, '39.65670', '-98.94000'), ('Gaylord', 145, '39.64610', '-98.84670'), ('Harlan', 123, '39.60550', '-98.76650'), ('Kensington', 529, '39.76740', '-99.03200'), ('Lebanon', 303, '39.81050', '-98.55700'), ('Smith Center', 1931, '39.77970', '-98.78310')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSC185': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Dillwyn', 0, '37.97000', '-98.87000'), ('Hudson', 133, '38.10390', '-98.66010'), ('Macksville', 514, '37.95720', '-98.96830'), ('Neola', 0, '37.86000', '-98.51000'), ('Radium', 40, '38.17370', '-98.89390'), ('Seward', 63, '38.17760', '-98.79380'), ('Stafford', 1161, '37.96280', '-98.59930'), ('St. John', 1318, '38.00100', '-98.76070'), ('Zenith', 0, '37.95000', '-98.48000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSC187': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Big Bow', 0, '37.56000', '-101.56000'), ('Johnson City', 1348, '37.56960', '-101.75250'), ('Manter', 178, '37.52420', '-101.88270'), ('The Saunders Elevator', 0, '37.47000', '-102.03000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC189': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cave', 0, '37.36000', '-101.12000'), ('Feterita', 0, '37.15000', '-101.48000'), ('Hugoton', 3708, '37.17640', '-101.34680'), ('Moscow', 247, '37.32550', '-101.20630'), ('Woods', 0, '37.17000', '-101.10000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSC191': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Argonia', 534, '37.26530', '-97.76450'), ('Belle Plaine', 1708, '37.39420', '-97.27880'), ('Caldwell', 1284, '37.03520', '-97.60870'), ('Conway Springs', 1322, '37.38950', '-97.64400'), ('Geuda Springs', 212, '37.11080', '-97.14940'), ('Hunnewell', 83, '37.00450', '-97.40690'), ('Mayfield', 113, '37.26230', '-97.54550'), ('Milan', 137, '37.25810', '-97.67300'), ('Oxford', 1173, '37.27480', '-97.16950'), ('South Haven', 390, '37.04910', '-97.40030'), ('Wellington', 8647, '37.27130', '-97.39720')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSC193': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Brewster', 285, '39.36290', '-101.37740'), ('Colby', 5450, '39.38770', '-101.04590'), ('Gem', 96, '39.42580', '-100.89680'), ('Halford', 0, '39.37000', '-100.87000'), ('Levant', 0, '39.38000', '-101.19000'), ('Menlo', 57, '39.35610', '-100.72390'), ('Mingo', 0, '39.28000', '-100.96000'), ('Rexford', 157, '39.47050', '-100.74350')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSC195': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Bluff', 0, '38.78000', '-99.73000'), ('Collyer', 133, '39.03780', '-100.11810'), ('Ogallah', 0, '38.98000', '-99.73000'), ('Riga', 0, '38.94000', '-99.63000'), ('Trego Center', 0, '38.88000', '-99.90000'), ('Voda', 0, '39.04000', '-100.02000'), ('Wakeeney', 1924, '39.02340', '-99.88130')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSC197': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alma', 797, '39.01670', '-96.28890'), ('Alta Vista', 442, '38.86390', '-96.48890'), ('Eskridge', 589, '38.85890', '-96.10890'), ('Harveyville', 267, '38.79000', '-95.96140'), ('Keene', 0, '38.95750', '-96.03920'), ('Maple Hill', 469, '39.08470', '-96.02780'), ('McFarland', 271, '39.05280', '-96.23750'), ('Paxico', 211, '39.06940', '-96.16610'), ('Volland', 0, '38.94440', '-96.40420')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSC199': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Sharon Springs', 835, '38.89420', '-101.75210'), ('Wallace', 67, '38.91370', '-101.59240'), ('Weskan', 0, '38.86000', '-101.96000')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSC201': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Barnes', 152, '39.71190', '-96.87420'), ('Clifton', 557, '39.56720', '-97.27830'), ('Greenleaf', 357, '39.72830', '-96.97580'), ('Haddam', 169, '39.85700', '-97.30140'), ('Hanover', 653, '39.89390', '-96.87920'), ('Hollenberg', 31, '39.98060', '-96.99190'), ('Linn', 425, '39.68000', '-97.08390'), ('Mahaska', 107, '39.98700', '-97.35400'), ('Morrowville', 168, '39.84440', '-97.17140'), ('Palmer', 108, '39.63190', '-97.14000'), ('Vining', 58, '39.56690', '-97.29530'), ('Washington', 1223, '39.81800', '-97.05100')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSC203': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Leoti', 1598, '38.48300', '-101.35720'), ('Lydia', 0, '38.28000', '-101.29000'), ('Marienthal', 0, '38.49000', '-101.21000'), ('Selkirk', 0, '38.47000', '-101.54000')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSC205': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Altoona', 485, '37.52550', '-95.66160'), ('Benedict', 103, '37.62470', '-95.74190'), ('Buffalo', 284, '37.70860', '-95.69670'), ('Buxton', 0, '37.45000', '-95.92000'), ('Coyville', 71, '37.68720', '-95.89530'), ('Fredonia', 2600, '37.53290', '-95.82400'), ('Neodesha', 2848, '37.42350', '-95.68090'), ('New Albany', 73, '37.56770', '-95.93450')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC207': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Batesville', 0, '37.83330', '-95.88330'), ('Neosho Falls', 179, '38.00580', '-95.55520'), ('Rose', 0, '37.80000', '-95.68000'), ('Toronto', 312, '37.79860', '-95.94930'), ('Yates Center', 1599, '37.87240', '-95.74280')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSC209': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bonner Springs', 6768, '39.05600', '-94.88150'), ('Edwardsville', 4146, '39.06100', '-94.81860'), ('Kansas City Kansas', 146866, '39.11450', '-94.62700'), ('Piper', 0, '39.14290', '-94.86150')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KYC001': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Absher', 0, '37.16868', '-85.25913'), ('Barnett Springs', 0, '37.24201', '-85.09135'), ('Bliss', 0, '37.08006', '-85.37191'), ('Breeding', 1756, '36.95923', '-85.43441'), ('Cane Valley', 4014, '37.18034', '-85.31968'), ('Casey Creek', 0, '37.27229', '-85.15746'), ('Chance', 0, '36.97534', '-85.32468'), ('Christine', 0, '37.14229', '-85.20690'), ('Coburg', 4014, '37.20145', '-85.33580'), ('Columbia', 4014, '37.10284', '-85.30635'), ('Craycraft', 0, '37.09395', '-85.20274'), ('Crocus', 4014, '36.98062', '-85.21079'), ('Cundiff', 0, '36.94479', '-85.25440'), ('Dunbar Hill', 0, '37.21590', '-85.17163'), ('Ella', 2399, '37.15673', '-85.13968'), ('Fairplay', 0, '37.01228', '-85.30385'), ('Feathersburg', 0, '37.31146', '-85.16913'), ('Flatwood', 0, '37.04784', '-85.36163'), ('Gadberry', 0, '37.04367', '-85.30941'), ('Garlin', 0, '37.11395', '-85.25218'), ('Gentrys Mill', 0, '37.08479', '-85.15357'), ('Glens Fork', 4014, '37.01395', '-85.25052'), ('Gradyville', 4014, '37.06339', '-85.42246'), ('Holmes', 0, '37.20756', '-85.26968'), ('Inroad', 0, '36.95645', '-85.27968'), ('Joppa', 0, '37.05173', '-85.24218'), ('Keltner', 0, '37.09506', '-85.51024'), ('Knifley', 0, '37.24284', '-85.18940'), ('Milltown', 0, '37.12228', '-85.40746'), ('Montpelier', 2399, '37.01895', '-85.18551'), ('Neatsville', 0, '37.19729', '-85.12551'), ('Nell', 0, '37.00950', '-85.48330'), ('Ozark', 0, '37.07923', '-85.23135'), ('Pellyton', 2399, '37.21174', '-85.08412'), ('Pickett', 0, '37.12256', '-85.47552'), ('Portland', 0, '37.12062', '-85.44608'), ('Purdy', 0, '37.15146', '-85.18496'), ('Sparksville', 0, '37.00839', '-85.40191'), ('Toria', 0, '36.98950', '-85.43746'), ('Weed', 0, '37.03867', '-85.47135')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC003': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adolphus', 0, '36.65171', '-86.26138'), ('Allen Springs', 0, '36.83171', '-86.31499'), ('Alonzo', 0, '36.69310', '-86.34471'), ('Amos', 0, '36.65255', '-86.08832'), ('Bornes Ford', 0, '36.66254', '-86.41221'), ('Butlersville', 0, '36.78365', '-86.31305'), ('Cedar Springs', 0, '36.83088', '-86.10665'), ('Chapel Hill', 0, '36.71976', '-86.29277'), ('Clare', 0, '36.71504', '-86.39471'), ('Eubanks Ford', 0, '36.69254', '-86.41360'), ('Fleet', 0, '36.65365', '-86.29388'), ('Forest Springs', 4327, '36.65894', '-86.16110'), ('Gainesville', 0, '36.85060', '-86.15832'), ('Halfway', 0, '36.79560', '-86.29610'), ('Halifax', 0, '36.82838', '-86.24221'), ('Holland', 236, '36.69894', '-86.06832'), ('Maynard', 4327, '36.76922', '-86.07582'), ('McElroy Ford', 0, '36.73393', '-86.40999'), ('Meador', 0, '36.89116', '-86.17610'), ('Mount Aerial', 0, '36.75337', '-86.39277'), ('Mount Zion', 0, '36.68311', '-86.05721'), ('New Roe', 0, '36.66588', '-86.38249'), ('Oak Forest', 0, '36.71588', '-86.09832'), ('Petroleum', 0, '36.69532', '-86.24832'), ('Pope', 0, '36.76254', '-86.33971'), ('Port Oliver Ford', 0, '36.89394', '-86.13804'), ('Raley Ford', 0, '36.85976', '-86.26721'), ('Red Hill', 0, '36.74115', '-86.29916'), ('Rodemer', 0, '36.71921', '-86.22943'), ('Scottsville', 4327, '36.75338', '-86.19054'), ('Settle', 0, '36.86949', '-86.21443'), ('Trammel', 0, '36.78532', '-86.35332'), ('Walnut Hill', 0, '36.72311', '-86.04582'), ('West Fork', 0, '36.78282', '-86.28054'), ('Yesse', 0, '36.85310', '-86.19721')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC005': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alton', 9014, '38.08896', '-84.93495'), ('Anderson City', 0, '38.00729', '-85.02579'), ('Ashbrook', 0, '37.93202', '-85.04579'), ('Avenstoke', 0, '38.10841', '-85.00051'), ('Ballard', 0, '37.93035', '-84.99051'), ('Birdie', 0, '38.03757', '-85.01468'), ('Drydock', 0, '37.98868', '-85.02245'), ('Fairview', 0, '37.90146', '-85.10690'), ('Fox Creek', 0, '37.98785', '-84.96801'), ('Gee', 0, '38.04507', '-85.06301'), ('Glensboro', 9014, '38.00479', '-85.05995'), ('Hickory Grove', 0, '37.96730', '-84.99329'), ('Johnsonville', 304, '37.93507', '-85.10690'), ('Klondyke', 0, '37.94646', '-85.09023'), ('Lawrenceburg', 9014, '38.03730', '-84.89662'), ('McBrayer', 0, '37.97535', '-84.88551'), ('Nevin', 0, '37.94619', '-84.88328'), ('Ninevah', 0, '38.08257', '-84.87884'), ('Sinai', 0, '37.95424', '-85.02718'), ('Sparrow', 0, '37.92396', '-85.15079'), ('Stringtown', 0, '38.00813', '-84.88078'), ('Tyrone', 9014, '38.03285', '-84.83634'), ('Van Buren', 0, '37.97451', '-85.16523'), ('Wayside', 0, '38.02507', '-85.10523')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC007': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Barlow', 715, '37.05070', '-89.04510'), ('Blandville', 99, '36.94350', '-88.96460'), ('Kevil', 574, '37.08490', '-88.88510'), ('La Center', 1038, '37.07480', '-88.97410'), ('Lovelaceville', 574, '36.96860', '-88.83080'), ('Wickliffe', 794, '36.96630', '-89.08150')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC009': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Apple Grove', 0, '37.05533', '-86.07276'), ('Austin', 236, '36.82533', '-86.01915'), ('Beckton', 0, '36.98422', '-86.03637'), ('Berry Store', 0, '36.95338', '-86.14082'), ('Bon Ayr', 517, '37.02449', '-86.05887'), ('Bristletown', 0, '36.93422', '-85.91942'), ('Carden', 0, '37.04255', '-85.99859'), ('Cave City', 1880, '37.13672', '-85.95692'), ('Cooktown', 0, '36.83477', '-85.94081'), ('Coral Hill', 0, '37.05144', '-85.85636'), ('Dry Fork', 0, '36.81533', '-85.92470'), ('Eighty Eight', 1586, '36.91839', '-85.78636'), ('Etoile', 0, '36.83561', '-85.89998'), ('Finney', 784, '36.91532', '-86.10498'), ('Glasgow', 1309, '36.99588', '-85.91192'), ('Goodnight', 0, '37.09338', '-85.88025'), ('Griderville', 0, '37.11283', '-85.87025'), ('Halfway', 4327, '37.08839', '-85.79553'), ('Haywood', 1309, '36.94616', '-85.97442'), ('Highland Springs', 0, '37.13144', '-86.02581'), ('Hiseville', 224, '37.10089', '-85.81247'), ('Kino', 0, '36.94783', '-85.77747'), ('Lecta', 1309, '37.01116', '-85.85609'), ('Lucas', 1309, '36.89172', '-86.03748'), ('Merry Oaks', 0, '37.02227', '-86.10609'), ('Nobob', 0, '36.86533', '-85.77414'), ('Oil City', 0, '37.03338', '-85.98303'), ('Park', 0, '37.14033', '-85.77469'), ('Park City', 517, '37.09394', '-86.04637'), ('Peter Creek', 0, '36.84505', '-85.97915'), ('Pritchardsville', 0, '36.97227', '-85.93720'), ('Railton', 0, '36.98171', '-86.12054'), ('Red Cross', 0, '36.97866', '-86.08582'), ('Rocky Hill', 0, '36.94005', '-86.07109'), ('Roseville', 1309, '36.88727', '-85.92553'), ('Slick Rock', 0, '37.00589', '-85.79803'), ('Stovall', 0, '37.05644', '-86.01026'), ('Temple Hill', 1309, '36.88672', '-85.84720'), ('Tracy', 236, '36.79811', '-85.97054')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC011': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bethel', 295, '38.25060', '-83.86640'), ('Bourbon Furnace', 1488, '38.11820', '-83.74530'), ('Craigs', 1488, '38.16280', '-83.72540'), ('Crooks', 1488, '38.07430', '-83.76020'), ('Flat Creek', 295, '38.13590', '-83.86930'), ('Kendall Springs', 1488, '38.10120', '-83.77910'), ('Marshall', 342, '38.13620', '-83.67830'), ('Midland', 342, '38.13330', '-83.57830'), ('Moores Ferry', 342, '38.16840', '-83.61820'), ('Oakley', 1488, '38.24770', '-83.72460'), ('Odessa', 1488, '38.22010', '-83.75030'), ('Olympia', 1488, '38.09860', '-83.69610'), ('Olympia Springs', 342, '38.06200', '-83.67330'), ('Owingsville', 1488, '38.13690', '-83.75950'), ('Peasticks', 1488, '38.15560', '-83.69880'), ('Pebble', 1488, '38.26880', '-83.75730'), ('Peeled Oak', 1488, '38.06080', '-83.80160'), ('Polksville', 342, '38.13800', '-83.65550'), ('Preston', 1488, '38.08610', '-83.75390'), ('Reynoldsville', 1488, '38.19110', '-83.82470'), ('Salt Lick', 342, '38.11950', '-83.61610'), ('Sharpsburg', 295, '38.20210', '-83.92840'), ('Slate Valley', 1488, '38.17150', '-83.72230'), ('Wyoming', 1488, '38.21970', '-83.69910'), ('Yale', 251, '38.06380', '-83.50090'), ('Young Springs', 342, '38.06640', '-83.60130'), ('Zilpo', 251, '38.07200', '-83.47410')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC013': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arjay', 2093, '36.80500', '-83.64690'), ('Balkan', 996, '36.75970', '-83.54500'), ('Beverly', 257, '36.93000', '-83.53300'), ('Binghamtown', 10730, '36.63190', '-83.71940'), ('Blackmont', 257, '36.79200', '-83.52500'), ('Black Snake', 996, '36.76910', '-83.50390'), ('Blanche', 2093, '36.81910', '-83.65610'), ('Callaway', 2093, '36.78420', '-83.56310'), ('Calvin', 2093, '36.72280', '-83.62220'), ('Cary', 2093, '36.79360', '-83.66530'), ('Chenoa', 10730, '36.66940', '-83.86190'), ('Clear Creek Spring', 2093, '36.72690', '-83.72830'), ('Cubage', 996, '36.70250', '-83.52170'), ('Davisburg', 10730, '36.68000', '-83.82360'), ('East Pineville', 2093, '36.73470', '-83.67170'), ('Ferndale', 2093, '36.69610', '-83.68610'), ('Field', 2093, '36.89310', '-83.60280'), ('Fonde', 10730, '36.60000', '-83.87780'), ('Fourmile', 2093, '36.79360', '-83.74190'), ('Frakes', 10730, '36.64310', '-83.92780'), ('Hutch', 210, '36.65030', '-83.62220'), ('Ingram', 2093, '36.73110', '-83.79920'), ('Kettle Island', 2093, '36.79140', '-83.60470'), ('Meldrum', 10730, '36.66750', '-83.69390'), ('Middlesboro', 10730, '36.61320', '-83.72240'), ('Miracle', 2093, '36.76110', '-83.58390'), ('Noetown', 10730, '36.61750', '-83.75560'), ('Oaks', 2093, '36.72330', '-83.55670'), ('Pearl', 2447, '36.63030', '-83.94550'), ('Pineville', 2093, '36.76280', '-83.70130'), ('Ponza', 2093, '36.72000', '-83.64300'), ('Pruden', 10730, '36.59500', '-83.89140'), ('Rella', 2093, '36.83580', '-83.63280'), ('Stony Fork', 257, '36.83250', '-83.53470'), ('Straight Creek', 2093, '36.77280', '-83.66720'), ('Varilla', 2093, '36.73940', '-83.60030'), ('Wallsend', 2093, '36.76580', '-83.71000'), ('Wasioto', 2093, '36.75250', '-83.68920')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC015': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Burlington', 10779, '39.02440', '-84.72300'), ('Florence', 23551, '38.99150', '-84.64290'), ('Oakbrook', 7726, '38.99960', '-84.68530'), ('Union', 2893, '38.95290', '-84.66920'), ('Walton', 2450, '38.86620', '-84.61560')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC017': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Austerlitz', 0, '38.09063', '-84.21687'), ('Blacks Crossroads', 0, '38.25091', '-84.13826'), ('Brentsville', 0, '38.23785', '-84.28966'), ('Bunker Hill', 0, '38.16397', '-84.01298'), ('Centerville', 0, '38.22396', '-84.39133'), ('Clintonville', 16724, '38.08508', '-84.26826'), ('Currentsville', 0, '38.26091', '-84.25104'), ('Escondida', 0, '38.12619', '-84.22799'), ('Ewalt Crossroads', 0, '38.27396', '-84.29938'), ('Hutchison', 0, '38.13813', '-84.33993'), ('Jacksonville', 0, '38.27285', '-84.36577'), ('Jackstown', 0, '38.24480', '-84.05854'), ('Kiserton', 0, '38.27702', '-84.27604'), ('Little Rock', 0, '38.19397', '-84.05104'), ('Millersburg', 842, '38.30202', '-84.14743'), ('Monterey', 167, '38.17258', '-84.30882'), ('North Middletown', 562, '38.14508', '-84.11132'), ('Paris', 9183, '38.20980', '-84.25299'), ('Plum', 0, '38.17897', '-84.03132'), ('Ruddels Mills', 842, '38.30424', '-84.23799'), ('Shawhan', 0, '38.30174', '-84.27243'), ('Sidville', 0, '38.12813', '-84.25965'), ('Stony Point', 0, '38.12063', '-84.19382')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC019': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ashland', 21981, '38.45920', '-82.64490'), ('Cannonsburg', 21981, '38.38860', '-82.70290'), ('Catlettsburg', 1960, '38.41760', '-82.60120'), ('Westwood', 4888, '38.48120', '-82.67800')], 'partOfState': '', 'wfo': 'RLX'}, +'KYC021': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aliceton', 0, '37.59090', '-85.02996'), ('Alum Springs', 0, '37.59674', '-84.84051'), ('Brumfield', 0, '37.60424', '-84.98218'), ('Caldwell Manor', 0, '37.65813', '-84.78189'), ('Clifton', 0, '37.64952', '-84.68800'), ('Craintown', 3010, '37.62368', '-85.01829'), ('Danville', 15477, '37.64563', '-84.77217'), ('Davis Hill', 0, '37.64869', '-84.83662'), ('Faulconer', 0, '37.70702', '-84.77773'), ('Forkland', 0, '37.55257', '-84.97996'), ('Hedgeville', 0, '37.63341', '-84.68356'), ('Junction City', 2184, '37.58674', '-84.79384'), ('Little Needmore', 0, '37.65786', '-84.72661'), ('Mitchellsburg', 763, '37.60063', '-84.94968'), ('Needmore', 0, '37.65174', '-84.87773'), ('Parksville', 763, '37.59785', '-84.89134'), ('Perryville', 763, '37.65035', '-84.95162')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC023': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Augusta', 1204, '38.77250', '-84.00160'), ('Brooksville', 589, '38.68250', '-84.06670'), ('Foster', 65, '38.79980', '-84.21390'), ('Germantown', 190, '38.65200', '-83.96720')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC025': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Altro', 2490, '37.38250', '-83.38220'), ('Barwick', 2490, '37.36820', '-83.36530'), ('Bays', 2490, '37.64750', '-83.24780'), ('Beech', 2490, '37.37030', '-83.42890'), ('Bush Branch', 2490, '37.37660', '-83.39070'), ('c', 2490, '37.53680', '-83.36690'), ('Camp Lewis', 2490, '37.58500', '-83.18770'), ('Canoe', 2490, '37.44970', '-83.44920'), ('Chenowee', 2490, '37.54340', '-83.48020'), ('Clayhole', 2490, '37.46670', '-83.29750'), ('Copebranch', 2490, '37.51750', '-83.52650'), ('Copland', 2490, '37.45510', '-83.37320'), ('Crockettsville', 2490, '37.40320', '-83.46940'), ('Curt', 2490, '37.49590', '-83.39460'), ('Daisydell', 1604, '37.53810', '-83.12160'), ('Dalesburg', 111, '37.36730', '-83.49200'), ('Decoy', 787, '37.50170', '-83.09390'), ('Dumont', 2490, '37.53050', '-83.36070'), ('Elkatawa', 2490, '37.55810', '-83.42750'), ('Evanston', 1604, '37.54190', '-83.03130'), ('Fivemile', 2490, '37.59380', '-83.40890'), ('Flintville', 2490, '37.48540', '-83.30090'), ('Frozen Creek', 2490, '37.59190', '-83.42220'), ('Gentry', 2490, '37.56270', '-83.44290'), ('Guage', 2490, '37.59690', '-83.19780'), ('Guerrant', 2490, '37.50810', '-83.49780'), ('Haddix', 2490, '37.48810', '-83.34890'), ('Haginsville', 2490, '37.56600', '-83.29620'), ('Hardshell', 2490, '37.45860', '-83.25220'), ('Houston', 111, '37.44560', '-83.51690'), ('Howard Creek', 2490, '37.46840', '-83.38000'), ('Jackson', 2490, '37.55770', '-83.37970'), ('Jetts Creek', 111, '37.49950', '-83.54340'), ('Keck', 2490, '37.60620', '-83.36240'), ('Lambric', 1604, '37.56940', '-83.13140'), ('Lawson', 2490, '37.60160', '-83.45860'), ('Little', 2490, '37.44030', '-83.36190'), ('Lost Creek', 2490, '37.48310', '-83.32530'), ('Lunah', 2490, '37.56330', '-83.17730'), ('Moct', 2490, '37.66070', '-83.34620'), ('Morris Fork', 111, '37.37700', '-83.52180'), ('Mountain Valley', 2490, '37.66220', '-83.26940'), ('Ned', 4806, '37.40940', '-83.27190'), ('Noble', 4806, '37.45030', '-83.19000'), ('Noctor', 2490, '37.56060', '-83.33750'), ('Oakdale', 2490, '37.55450', '-83.51500'), ('Paxton', 2490, '37.67560', '-83.41010'), ('Portsmouth', 2490, '37.53170', '-83.31440'), ('Press', 2490, '37.52780', '-83.26940'), ('Quicksand', 2490, '37.53030', '-83.34470'), ('Rock Lick', 2490, '37.65210', '-83.31170'), ('Rousseau', 2490, '37.59390', '-83.23060'), ('Saldee', 2490, '37.45270', '-83.38010'), ("Sebastian's Branch", 2490, '37.43670', '-83.47280'), ('Sewell', 2490, '37.62690', '-83.38890'), ('Sikes', 2490, '37.54240', '-83.24030'), ('Simpson', 2490, '37.66830', '-83.37100'), ('Smith Branch', 2490, '37.52680', '-83.31400'), ('Stevenson', 2490, '37.57990', '-83.26330'), ('Talbert', 2490, '37.42250', '-83.45970'), ('Taulbee', 2490, '37.64330', '-83.33030'), ('Turkey', 2490, '37.47940', '-83.50780'), ('Vail', 787, '37.50990', '-82.99960'), ('Valjean', 111, '37.33860', '-83.53810'), ('Vancleve', 2490, '37.62830', '-83.41390'), ('War Creek', 2490, '37.59410', '-83.48510'), ('Watts', 2490, '37.44330', '-83.31010'), ('Whick', 2490, '37.42310', '-83.37690'), ('Widecreek', 424, '37.61100', '-83.53220'), ('Wilhurst', 2490, '37.63390', '-83.41500'), ('Wilstacy', 2490, '37.52870', '-83.28140'), ('Wolf Coal', 2490, '37.39860', '-83.37890'), ('Yeadon', 2490, '37.55130', '-83.45810')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC027': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ammons', 0, '37.95117', '-86.49387'), ('Axtel', 0, '37.64422', '-86.47581'), ('Basin Spring', 0, '37.84201', '-86.30664'), ('Bewleyville', 0, '37.84006', '-86.24442'), ('Big Spring', 170, '37.79923', '-86.15219'), ('Buras', 0, '37.70173', '-86.31609'), ('Cannons Point', 0, '37.58394', '-86.46137'), ('Cave Spring', 0, '37.64950', '-86.42414'), ('Centerview', 0, '37.63089', '-86.30859'), ('Chenaultt', 0, '38.01506', '-86.51803'), ('Clifton Mills', 0, '37.86728', '-86.38803'), ('Cloverport', 1256, '37.83339', '-86.63276'), ('Cobblers Knob', 0, '37.56811', '-86.38553'), ('Constantine', 794, '37.67534', '-86.23636'), ('Corners', 0, '37.79479', '-86.23025'), ('Custer', 1257, '37.73840', '-86.25469'), ('Dempster', 0, '37.62533', '-86.55970'), ('Dyer', 1257, '37.70617', '-86.22136'), ('Fairfield', 72, '37.67145', '-86.28720'), ('Fisher', 0, '37.57644', '-86.36831'), ('Frymire', 0, '37.96062', '-86.39636'), ('Garfield', 2345, '37.78284', '-86.35748'), ('Glen Dean', 2345, '37.65339', '-86.54109'), ('Graysville', 0, '37.77228', '-86.29747'), ('Hardinsburg', 2345, '37.78006', '-86.46053'), ('Harned', 2345, '37.75173', '-86.41359'), ('Hensley', 1738, '37.79201', '-86.33497'), ('High Plains', 0, '37.77312', '-86.21108'), ('High Plains Corner', 0, '37.77340', '-86.17191'), ('Hinton Hills', 0, '37.62339', '-86.46109'), ('Holt', 0, '37.91089', '-86.58109'), ('Hudson', 794, '37.65117', '-86.27664'), ('Irvington', 1257, '37.88034', '-86.28386'), ('Kingswood', 0, '37.71895', '-86.40859'), ('Kirk', 0, '37.72395', '-86.47859'), ('Locust Hill', 0, '37.72784', '-86.35664'), ('Lodiburg', 0, '37.90451', '-86.40275'), ('Madrid', 6139, '37.61228', '-86.34220'), ('Manning Crossing', 0, '37.99590', '-86.48109'), ('Mattingly', 0, '37.76283', '-86.60193'), ('McCoy', 0, '37.61867', '-86.38164'), ('McDaniels', 2345, '37.60672', '-86.42498'), ('McQuady', 2345, '37.70839', '-86.51887'), ('Mook', 0, '37.67339', '-86.35220'), ('Mooleyville', 57, '38.02117', '-86.46387'), ('Mystic', 0, '37.89701', '-86.44276'), ('Raymond', 0, '37.93895', '-86.36525'), ('Rockvale', 0, '37.63255', '-86.57665'), ('Rosetta', 0, '37.79673', '-86.27303'), ('Sample', 0, '37.90451', '-86.48109'), ('Se Ree', 0, '37.68339', '-86.37970'), ('Stephensport', 1256, '37.91256', '-86.52720'), ('Tar Fork', 0, '37.72061', '-86.60165'), ('Union Star', 2345, '37.93840', '-86.45164'), ('Vanzant', 0, '37.64311', '-86.61248'), ('Webster', 1257, '37.88895', '-86.33886'), ('Westview', 0, '37.70006', '-86.40914'), ('Woodrow', 0, '37.74145', '-86.31970')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC029': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bardstown Junction', 8334, '37.94006', '-85.69940'), ('Barrallton', 0, '38.03896', '-85.79885'), ('Beech Grove', 0, '37.93396', '-85.75579'), ('Belmont', 0, '37.89645', '-85.71357'), ('Brooks', 0, '38.06118', '-85.70968'), ('Brownington', 0, '37.94840', '-85.58523'), ('Cedar Grove', 0, '37.97229', '-85.63107'), ('Clermont', 8334, '37.92979', '-85.65274'), ('Cupio', 0, '38.00618', '-85.87830'), ('Fox Chase', 0, '38.04562', '-85.69274'), ('Gap In Knob', 0, '38.01673', '-85.70301'), ('Hebron Estates', 0, '38.04951', '-85.66607'), ('Hobbs', 0, '37.92729', '-85.62523'), ('Hunters Hollow', 0, '38.07729', '-85.69218'), ('Lebanon Junction', 1801, '37.83451', '-85.73190'), ('Lotus', 0, '37.91895', '-85.59662'), ('Mount Washington', 8485, '38.05006', '-85.54579'), ('Pitts Point', 0, '37.91673', '-85.82607'), ('Ridgetop', 0, '37.90701', '-85.62107'), ('Scuffletown', 0, '37.87256', '-85.64857'), ('Shepherdsville', 8334, '37.98840', '-85.71579'), ('Smithville', 0, '38.01312', '-85.51412'), ('Solitude', 0, '37.97312', '-85.54023'), ('Stites', 0, '38.01674', '-85.90469'), ('Whitfield', 0, '38.09618', '-85.47051'), ('Zoneton', 0, '38.06340', '-85.67051')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC031': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aberdeen', 2544, '37.25394', '-86.68165'), ('Banock', 0, '37.35088', '-86.65554'), ('Boston', 0, '37.08866', '-86.78694'), ('Brooklyn', 0, '37.28977', '-86.57637'), ('Casey', 0, '37.33449', '-86.60749'), ('Davis Crossroads', 0, '37.05143', '-86.74138'), ('Decker', 0, '37.33533', '-86.48554'), ('Dimple', 0, '37.10282', '-86.72027'), ('Dunbar', 2544, '37.18810', '-86.75694'), ('Eden', 0, '37.27560', '-86.70443'), ('Flener', 0, '37.28949', '-86.66665'), ('Gilstrap', 0, '37.31533', '-86.70666'), ('Grancer', 0, '37.30894', '-86.54609'), ('Harper Crossroads', 0, '37.09032', '-86.88527'), ('Harreldsville', 0, '37.06477', '-86.89388'), ('Horsemill', 0, '37.23310', '-86.53804'), ('Huldeville', 0, '37.26699', '-86.60887'), ('Huntsville', 0, '37.16338', '-86.88166'), ('Jetson', 0, '37.24921', '-86.53193'), ('Lee', 0, '37.29588', '-86.49943'), ('Leetown', 0, '37.13949', '-86.74277'), ('Logansport', 2544, '37.28505', '-86.76805'), ('Love', 0, '37.28310', '-86.52721'), ('Mining City', 0, '37.22727', '-86.77888'), ('Monford', 0, '37.26727', '-86.64138'), ('Morgantown', 2544, '37.22560', '-86.68360'), ('Neafus', 0, '37.39505', '-86.61193'), ('Needmore', 0, '37.11088', '-86.65110'), ('Pleasant Hill', 0, '37.18032', '-86.86527'), ('Provo', 0, '37.23310', '-86.82833'), ('Quality', 903, '37.07560', '-86.84666'), ('Reedyville', 0, '37.19144', '-86.43165'), ('Richelieu', 0, '37.00588', '-86.69277'), ('Rochester', 186, '37.21254', '-86.89305'), ('Sharer', 0, '37.03671', '-86.67083'), ('Silver City', 0, '37.13782', '-86.83166'), ('South Hill', 186, '37.17588', '-86.80471'), ('Sugar Grove', 0, '37.09004', '-86.66499'), ('Tilford', 0, '37.37394', '-86.54748'), ('Turnertown', 0, '37.06032', '-86.75999'), ('Vineyard', 0, '37.24588', '-86.48832'), ('Welchs Creek', 627, '37.34477', '-86.56804'), ('Welcome', 0, '37.30366', '-86.65138'), ('Woodbury', 87, '37.18338', '-86.63388'), ('Youngtown', 0, '37.18143', '-86.71860')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC033': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Fredonia', 420, '37.20910', '-88.05880'), ('Fryer', 3611, '37.26220', '-87.81970'), ('Princeton', 6536, '37.10700', '-87.88470')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC035': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Harris Grove', 14950, '36.57000', '-88.42770'), ('Hazel', 440, '36.50540', '-88.32600'), ('Kirksey', 14950, '36.68170', '-88.42670'), ('Murray', 14950, '36.61150', '-88.31570'), ('New Concord', 14950, '36.59640', '-88.06980')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC037': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alexandria', 5592, '38.96050', '-84.38420'), ('Bellevue', 6480, '39.10120', '-84.47750'), ('California', 86, '38.91970', '-84.26260'), ('Claryville', 2588, '38.92460', '-84.40930'), ('Crestview', 471, '39.02240', '-84.41610'), ('Dayton', 5966, '39.11250', '-84.46240'), ('Fort Thomas', 16495, '39.08240', '-84.45030'), ('Highland Heights', 6554, '39.03690', '-84.45420'), ('Melbourne', 457, '39.03170', '-84.37100'), ('Mentor', 181, '38.89060', '-84.24370'), ('Newport', 17048, '39.08766', '-84.49421'), ('Silver Grove', 1215, '39.03670', '-84.39690'), ('Southgate', 3472, '39.06130', '-84.47080'), ('Wilder', 2624, '39.03560', '-84.47860'), ('Woodlawn', 268, '39.09080', '-84.47200')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC039': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arlington', 395, '36.79010', '-89.01230'), ('Bardwell', 799, '36.87260', '-89.01000')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC041': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Carrollton', 3846, '38.67860', '-85.16460'), ('Ghent', 371, '38.73570', '-85.06100'), ('Prestonville', 164, '38.67950', '-85.19520'), ('Sanders', 246, '38.65460', '-84.94680'), ('Worthville', 215, '38.60940', '-85.06850')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC043': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Carter Caves State Park', 1813, '38.37180', '-83.11890'), ('Grayson', 3877, '38.33360', '-82.93830'), ('Grayson Lake State Park', 3877, '38.21610', '-83.01760'), ('Olive Hill', 1813, '38.30320', '-83.16940')], 'partOfState': '', 'wfo': 'RLX'}, +'KYC045': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Argyle', 1850, '37.22591', '-84.80745'), ('Atterson', 0, '37.33840', '-85.07801'), ('Bass', 0, '37.33868', '-85.14468'), ('Beech Bottom', 0, '37.37035', '-84.93523'), ('Bethelridge', 358, '37.23369', '-84.75828'), ('Butchertown', 0, '37.51146', '-84.89051'), ('Cantown', 0, '37.26146', '-84.91217'), ('Chilton', 0, '37.45507', '-84.98746'), ('Clementsville', 1850, '37.29007', '-85.09301'), ('Creston', 0, '37.26674', '-85.04218'), ('Duncan', 206, '37.35869', '-84.72745'), ('Dunnville', 1850, '37.20007', '-85.00995'), ('Ellisburg', 347, '37.46730', '-84.91940'), ('Evans Ford', 0, '37.23118', '-84.98551'), ('Evona', 0, '37.19424', '-84.91051'), ('Gilpin', 0, '37.25674', '-84.88190'), ('Jacktown', 304, '37.44396', '-85.01551'), ('Labascus', 0, '37.22646', '-84.91912'), ('Lanhamtown', 0, '37.33619', '-84.88245'), ('Lawhorn Hill', 0, '37.30007', '-84.85384'), ('Liberty', 1850, '37.31841', '-84.93940'), ('Middleburg', 1850, '37.35785', '-84.82106'), ('Mintonville', 1850, '37.17730', '-84.81078'), ('Mount Olive', 1193, '37.27952', '-84.76578'), ('Peytons Store', 0, '37.46396', '-84.97051'), ('Phil', 1850, '37.21535', '-84.95356'), ('Pricetown', 0, '37.28424', '-84.95551'), ('Rheber', 1850, '37.25924', '-85.02190'), ('Rubert Ford', 0, '37.23535', '-84.96690'), ('Teddy', 0, '37.17979', '-84.94190'), ('Walltown', 0, '37.32230', '-84.73161'), ('Ware', 0, '37.20869', '-84.76884'), ('Windsor', 2399, '37.12785', '-84.91217')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC047': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Crofton', 838, '37.04810', '-87.48340'), ('Fort Campbell North', 14338, '36.65360', '-87.45970'), ('Hawkins', 2980, '37.02910', '-87.65050'), ('Herndon', 193, '36.71290', '-87.60120'), ('Hopkinsville', 30089, '36.85440', '-87.49090'), ('Lafayette', 193, '36.66010', '-87.65820'), ('Oak Grove', 7064, '36.66800', '-87.42730'), ('Pembroke', 797, '36.77400', '-87.35880')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'KYC049': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Agawam', 0, '37.91452', '-84.08798'), ('Becknerville', 0, '37.96647', '-84.27938'), ('Bloomingdale', 0, '37.88702', '-84.12687'), ('Colby', 0, '37.99591', '-84.26354'), ('Constant Station', 0, '38.02438', '-84.20717'), ('Cotton Branch', 0, '37.87271', '-84.11822'), ('Elkin', 0, '37.91286', '-84.22382'), ('Flanagan', 0, '37.93397', '-84.21048'), ('Ford', 16724, '37.88175', '-84.26021'), ('Forest Grove', 0, '37.94563', '-84.22437'), ('Franklin', 0, '37.97871', '-84.13977'), ('Goffs Corner', 0, '37.92869', '-84.00659'), ('Haggard', 0, '37.90746', '-84.13772'), ('Hedges', 0, '37.99369', '-84.04604'), ('Hootentown', 0, '37.92563', '-84.29243'), ('Hunt', 0, '37.91064', '-84.16048'), ('Jackson Ferry', 0, '37.88739', '-84.22126'), ('Judianne Estates', 0, '38.02692', '-84.23161'), ('Kiddville', 0, '37.95980', '-83.99298'), ('Lisletown', 0, '37.91925', '-84.27354'), ('Locust Grove', 0, '37.93452', '-84.31854'), ('Log Lick', 0, '37.85814', '-84.02687'), ('Lyndale', 0, '37.96925', '-84.20521'), ('Mina', 0, '37.86258', '-84.06715'), ('Mount Zion', 0, '38.03091', '-84.09604'), ('Old Pine Grove', 0, '38.02647', '-84.27188'), ('Olivers', 0, '37.88714', '-84.19088'), ('Pilot View', 0, '37.96786', '-84.06381'), ('Pinchem', 0, '37.92619', '-84.15993'), ('Pine Grove', 0, '38.00202', '-84.31577'), ('Pine Ridge', 0, '37.87144', '-84.01389'), ('Pretty Run', 0, '38.07330', '-84.15815'), ('Providence', 0, '37.92560', '-84.24240'), ('Rabbit Town', 0, '37.90591', '-84.01520'), ('Renick', 0, '38.05841', '-84.20660'), ('Rightangle', 0, '37.89480', '-84.02854'), ('Ruckerville', 16724, '37.93369', '-84.09437'), ('Sewell Shop', 0, '38.03063', '-84.02742'), ('Silver Lake', 0, '38.07766', '-84.23943'), ('Tebbs', 0, '37.99786', '-84.28243'), ('Thomson', 0, '38.00591', '-84.02604'), ('Trapp', 1303, '37.88341', '-84.05493'), ('Vianna', 0, '37.83619', '-84.03826'), ('Winchester', 16724, '37.99008', '-84.17965'), ('Wyandotte', 0, '38.04980', '-84.27215'), ('Yorktown', 0, '38.03828', '-84.28352')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC051': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Add', 1738, '37.12640', '-83.76950'), ('Alger', 1738, '37.31500', '-83.72870'), ('Ammie', 1738, '37.26640', '-83.69220'), ('Ashers Fork', 1738, '37.00810', '-83.59470'), ('Barcreek', 1738, '37.22780', '-83.64140'), ('Benge', 589, '37.22830', '-83.92310'), ('Bernice', 1738, '37.20690', '-83.75360'), ('Big Creek', 204, '37.16360', '-83.56860'), ('Bluehole', 1738, '37.10170', '-83.75640'), ('Boho', 1738, '37.11870', '-83.70320'), ('Botto', 1738, '37.08720', '-83.67720'), ('Brightshade', 1738, '37.02050', '-83.65790'), ('Brutus', 1738, '37.25580', '-83.57720'), ('Burning Springs', 1738, '37.25580', '-83.80230'), ('Byron', 1738, '37.16770', '-83.88650'), ('Chestnutburg', 1738, '37.29030', '-83.79610'), ('Cottongim', 1738, '37.06470', '-83.80250'), ('Creekville', 204, '37.07890', '-83.54920'), ('Deer Lick', 5757, '37.14700', '-83.94320'), ('Eriline', 1738, '37.18860', '-83.59420'), ('Fall Rock', 1738, '37.22140', '-83.78890'), ('Felty', 1738, '37.30100', '-83.70780'), ('Fogertown', 589, '37.22000', '-83.90140'), ('Gardner', 257, '36.96870', '-83.53590'), ('Garrard', 1738, '37.12530', '-83.74580'), ('Goose Rock', 1738, '37.09140', '-83.69470'), ('Grace', 1738, '37.19860', '-83.86670'), ('Hector', 1738, '37.15440', '-83.65440'), ('Hensley', 1738, '37.23730', '-83.67440'), ('Herron', 1738, '37.12730', '-83.79410'), ('High Knob', 1738, '37.26770', '-83.81840'), ('Hima', 1738, '37.12190', '-83.77920'), ('Hooker', 1738, '37.13810', '-83.83510'), ('Horse Creek Junction', 1738, '37.13680', '-83.76340'), ('House', 1738, '37.08270', '-83.76930'), ('Ice Cliff', 1738, '37.00910', '-83.63560'), ('Jacks Creek', 204, '37.20750', '-83.55690'), ('Jonsee', 1738, '37.07220', '-83.78570'), ('Larue', 589, '37.20310', '-83.92500'), ('Laurel Creek', 1738, '37.24420', '-83.74850'), ('Lincoln', 1738, '37.05780', '-83.73920'), ('Lipps', 1738, '37.04860', '-83.65750'), ('Littleton', 1738, '37.16360', '-83.75500'), ('Malcomb', 589, '37.27820', '-83.83750'), ('Manchester', 1738, '37.15250', '-83.76810'), ('Marcum', 204, '37.11170', '-83.55940'), ('Mill Pond', 1738, '37.22920', '-83.73750'), ('Newfound', 111, '37.31060', '-83.63150'), ('Ogle', 1738, '37.03080', '-83.71190'), ('Oneida', 1738, '37.27060', '-83.64970'), ('Panco', 204, '37.23860', '-83.53280'), ('Park Valley', 1738, '37.07760', '-83.77810'), ('Peabody', 1738, '37.15970', '-83.59800'), ('Pigeonroost', 1738, '37.11090', '-83.80970'), ('Plank', 1738, '37.07780', '-83.64720'), ('Portersburg', 589, '37.17060', '-83.92580'), ('Queendale', 257, '37.00880', '-83.52580'), ('Sacker Gap', 1738, '37.26570', '-83.79750'), ('Seth', 1738, '37.24770', '-83.65040'), ('Sextons Creek', 1738, '37.31580', '-83.78440'), ('Shepherdtown', 589, '37.28810', '-83.86560'), ('Sibert', 1738, '37.12470', '-83.78690'), ('Sidell', 1738, '37.19040', '-83.82240'), ('Skidmore', 257, '36.99310', '-83.53630'), ('Sourwood', 589, '37.32880', '-83.79990'), ('Spring Creek', 204, '37.06280', '-83.54250'), ('Spurlock', 1738, '37.21280', '-83.63470'), ('Tanksley', 1738, '37.21780', '-83.71060'), ('Teges', 1738, '37.29560', '-83.66750'), ('Treadway', 1738, '37.23060', '-83.78330'), ('Trixie', 111, '37.33520', '-83.67300'), ('Urban', 1738, '37.15810', '-83.84780'), ('Wild Cat', 1738, '37.23420', '-83.69060')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC053': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aaron', 0, '36.81257', '-85.18079'), ('Albany', 2220, '36.69090', '-85.13468'), ('Alpha', 0, '36.76229', '-85.01023'), ('Browns Crossroads', 0, '36.71590', '-85.19079'), ('Bug', 0, '36.65479', '-85.10912'), ('Cannons Mill', 0, '36.68896', '-85.08995'), ('Cartwright', 0, '36.75284', '-85.07606'), ('Cumberland City', 2220, '36.80507', '-85.06829'), ('Decide', 0, '36.77340', '-85.20412'), ('Desda', 0, '36.83451', '-85.19829'), ('Highway', 0, '36.73840', '-85.20885'), ('Hobart', 0, '36.68395', '-85.26302'), ('Huntersville', 0, '36.62479', '-85.13551'), ('Ida', 0, '36.76757', '-85.16801'), ('Marlow', 0, '36.77729', '-85.09245'), ('Narvel', 0, '36.78479', '-85.04551'), ('Nora', 0, '36.76062', '-85.04273'), ('Rolan', 0, '36.65201', '-85.03328'), ('Savage', 0, '36.69285', '-85.04773'), ('Seventy Six', 0, '36.78645', '-85.14385'), ('Shipley', 0, '36.66729', '-85.21774'), ('Snow', 0, '36.75034', '-85.13690'), ('Static', 998, '36.62201', '-85.08495'), ('Upchurch', 0, '36.74646', '-85.11079'), ('Wago', 0, '36.73645', '-85.17246'), ('Willis Creek', 0, '36.81423', '-85.22190'), ('Wolf River Dock', 0, '36.62618', '-85.20857')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC055': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Dycusburg', 39, '37.16000', '-88.18490'), ('Marion', 3196, '37.33150', '-88.07920')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC057': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Amandaville', 1756, '36.89673', '-85.31107'), ('Arat', 0, '36.75673', '-85.46524'), ('Ashlock', 0, '36.62451', '-85.43247'), ('Bakerton', 0, '36.84840', '-85.33357'), ('Bow', 0, '36.76256', '-85.34496'), ('Burkesville', 1756, '36.79034', '-85.37052'), ('Claywell', 0, '36.81867', '-85.28996'), ('Cloyds Landing', 0, '36.75423', '-85.49108'), ('Dubre', 1586, '36.83895', '-85.55858'), ('Ellington', 0, '36.75728', '-85.42302'), ('Frogue', 0, '36.66617', '-85.29829'), ('Green Grove', 0, '36.73395', '-85.26968'), ('Grider', 0, '36.80423', '-85.42552'), ('Hegira', 0, '36.70673', '-85.27607'), ('Judio', 0, '36.69589', '-85.48080'), ('Kettle', 0, '36.70228', '-85.36107'), ('Leslie', 0, '36.77951', '-85.45191'), ('Littrell', 0, '36.68590', '-85.39635'), ('Marrowbone', 1756, '36.82784', '-85.50663'), ('Modoc', 0, '36.73590', '-85.30274'), ('Peytonsburg', 1493, '36.63423', '-85.39274'), ('Stalcup', 0, '36.70284', '-85.44663'), ('Tanbark', 0, '36.72228', '-85.38441'), ('Waterview', 0, '36.81700', '-85.45830')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC059': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Masonville', 1119, '37.67310', '-87.03450'), ('Moseleyville', 54067, '37.66300', '-87.19330'), ('Owensboro', 54067, '37.75930', '-87.11930'), ('Whitesville', 632, '37.68390', '-86.86980')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYC061': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arthur', 1101, '37.17560', '-86.20664'), ('Asphalt', 0, '37.19088', '-86.34998'), ('Bee Spring', 921, '37.28949', '-86.28470'), ('Big Reedy', 0, '37.26922', '-86.43554'), ('Black Gold', 0, '37.25949', '-86.32998'), ('Broadway', 0, '37.31449', '-86.27358'), ('Brownsville', 0, '37.19255', '-86.26775'), ('Cedar Spring', 0, '37.12227', '-86.15303'), ('Chalybeate', 0, '37.12699', '-86.23609'), ('Cub Run', 1563, '37.32283', '-86.19469'), ('Elko', 318, '37.16171', '-86.13525'), ('Hillview', 7037, '37.29922', '-86.22858'), ('Huff', 0, '37.24866', '-86.36776'), ('Lindseyville', 0, '37.23588', '-86.29442'), ('Mammoth Cave', 517, '37.18616', '-86.09998'), ('Nash', 0, '37.32033', '-86.43081'), ('Nick', 0, '37.12977', '-86.31109'), ('Ollie', 0, '37.25199', '-86.18025'), ('Pig', 0, '37.13282', '-86.16998'), ('Prosperity', 0, '37.32172', '-86.31748'), ('Rhoda', 921, '37.15588', '-86.22526'), ('Rocky Hill', 0, '37.06894', '-86.13637'), ('Roundhill', 87, '37.23699', '-86.43081'), ('Segal', 0, '37.20560', '-86.38498'), ('Sloans Crossing', 0, '37.15088', '-86.09720'), ('Stockholm', 0, '37.24810', '-86.13081'), ('Straw', 0, '37.27588', '-86.17247'), ('Sunfish', 921, '37.29699', '-86.36970'), ('Sweeden', 921, '37.25366', '-86.27886'), ('Union City', 0, '37.13699', '-86.07192'), ('Windyville', 0, '37.21616', '-86.32442')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC063': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bruin', 678, '38.18810', '-83.01940'), ('Culver', 678, '38.08500', '-82.99110'), ('Isonville', 678, '38.06640', '-83.05330'), ('Little Sandy', 678, '38.06220', '-83.18220'), ('Lytten', 678, '38.10580', '-83.22190'), ('Newfoundland', 678, '38.13310', '-83.10080'), ('Sandy Hook', 678, '38.09280', '-83.12330'), ('Stark', 678, '38.17530', '-83.13470')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC065': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alger', 2843, '37.67010', '-84.07960'), ('Alumbaugh', 693, '37.59630', '-83.93190'), ('Arthurmabel', 693, '37.59350', '-83.94560'), ('Blackburn', 2843, '37.66240', '-84.07600'), ('Calloway Crossing', 2843, '37.72460', '-84.00390'), ('Cobhill', 693, '37.71640', '-83.82920'), ('Cow Creek', 693, '37.70130', '-83.92570'), ('Cressy', 1303, '37.82480', '-84.04030'), ('Crystal', 693, '37.66300', '-83.82570'), ('Doe Creek', 693, '37.67240', '-83.93260'), ('Engle', 2843, '37.81300', '-84.11570'), ('Estilco', 693, '37.61130', '-83.96320'), ('Fainville', 2843, '37.70390', '-84.06500'), ('Fitchburg', 693, '37.73210', '-83.85180'), ('Fox', 2843, '37.75910', '-84.06700'), ('Furnace', 3029, '37.76210', '-83.83160'), ('Hardwick', 2843, '37.77780', '-83.94090'), ('Hargett', 2843, '37.78280', '-84.00970'), ('Iron Mound', 1303, '37.81500', '-84.04400'), ('Irvine', 2843, '37.69640', '-83.96830'), ('Jinks', 2843, '37.60640', '-84.03220'), ('Kimbrell', 1303, '37.80500', '-83.99030'), ('Kings Station', 2843, '37.68660', '-84.06310'), ('Leighton', 693, '37.60370', '-83.88580'), ('Locust Branch', 2843, '37.58530', '-84.07030'), ('Noland', 2843, '37.64800', '-84.05500'), ('North Irvine', 2843, '37.71420', '-83.97970'), ('Palmer', 1303, '37.81330', '-84.06640'), ('Patsey', 3029, '37.71130', '-83.79150'), ('Pilot', 3029, '37.74080', '-83.76870'), ('Pitts', 693, '37.70980', '-83.88430'), ('Pryse', 693, '37.65950', '-83.87540'), ('Ravenna', 693, '37.68720', '-83.94780'), ('Rice Station', 2843, '37.70270', '-84.04080'), ('Sam', 2843, '37.78080', '-84.02800'), ('Sandhill', 2843, '37.72530', '-84.02460'), ('See', 3029, '37.72760', '-83.76060'), ('Shade', 693, '37.64170', '-83.86450'), ('South Irvine', 2843, '37.68330', '-83.97690'), ('Spout Springs', 1303, '37.82700', '-83.97450'), ('Station Camp', 2843, '37.65040', '-83.99300'), ('Texola', 693, '37.65310', '-83.87090'), ('Union Hall', 693, '37.75870', '-83.90500'), ('Wagersville', 693, '37.62540', '-83.95340'), ('Weedon', 2843, '37.71130', '-84.01230'), ('West Irvine', 2843, '37.70140', '-83.99080'), ('Willow Tree', 693, '37.70820', '-83.91550'), ('Winston', 2843, '37.70260', '-84.07670'), ('Wiseman Crossing', 2843, '37.75530', '-84.01460'), ('Wisemantown', 2843, '37.67880', '-84.00640'), ('Witt', 2843, '37.67300', '-84.02440')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC067': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Athens', 0, '37.94925', '-84.36410'), ('Avon', 0, '38.07174', '-84.31854'), ('Beaumont Park', 0, '38.03258', '-84.56022'), ('Bracktown', 0, '38.09480', '-84.56244'), ('Bryan Station', 0, '38.07674', '-84.41132'), ('Cadentown', 0, '38.01230', '-84.42660'), ('Cardinal Hill', 0, '38.04285', '-84.53883'), ('Centerville', 9183, '37.97897', '-84.36299'), ('Chevy Chase', 0, '38.02036', '-84.48744'), ('Chilesburg', 0, '38.00702', '-84.35966'), ('Coletown', 0, '37.92841', '-84.44327'), ('Columbus', 0, '38.03702', '-84.36549'), ('Donerail', 0, '38.14924', '-84.53494'), ('Dunbar High School', 13140, '38.01740', '-84.57520'), ('East Hickman', 0, '37.92341', '-84.47077'), ('Elk Chester', 0, '38.07202', '-84.61800'), ('Elmendorf', 0, '38.10841', '-84.40438'), ('Fayette Mall', 13140, '37.99030', '-84.52410'), ('Fenwick', 2634, '38.07869', '-84.35549'), ('Frogtown', 0, '38.03313', '-84.64967'), ('Greendale', 0, '38.10591', '-84.52550'), ('Highlands', 0, '38.08980', '-84.50827'), ('Holiday Hills', 0, '38.05174', '-84.55661'), ('Jimtown', 0, '38.18896', '-84.37438'), ('Lexington', 225366, '38.04267', '-84.45949'), ('Little Texas', 0, '38.01258', '-84.64189'), ('Loradale', 0, '38.19508', '-84.39744'), ('Mattoxtown', 0, '38.12730', '-84.45022'), ('Meadowthorpe', 0, '38.07008', '-84.52327'), ('Muir', 0, '38.10591', '-84.37716'), ('Northland', 0, '38.06563', '-84.47938'), ('South Elkhorn', 0, '37.99647', '-84.58216'), ('Spears', 19680, '37.87258', '-84.43771'), ('Spindletop Estates', 0, '38.13452', '-84.52300'), ('Thoroughbred Acres', 0, '38.08174', '-84.45494'), ('U K Arboretum', 13140, '38.01940', '-84.50660'), ('Veterans Park', 13140, '37.96250', '-84.49440'), ('Viley', 0, '38.07563', '-84.55161'), ('Walnut Hill', 0, '38.01119', '-84.38743'), ('Yarnallton', 0, '38.10619', '-84.58550')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC069': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Cowan', 278, '38.40860', '-83.89220'), ('Craintown', 3010, '38.38910', '-83.78720'), ('Dalesburg', 3010, '38.46530', '-83.67830'), ('Elizaville', 278, '38.42110', '-83.82580'), ('Ewing', 278, '38.42730', '-83.86230'), ('Fairview', 278, '38.45000', '-83.93000'), ('Flemingsburg', 3010, '38.42350', '-83.73690'), ('Flemingsburg Junction', 278, '38.45940', '-83.80780'), ('Foxport', 3010, '38.47560', '-83.59190'), ('Goddard', 3010, '38.36310', '-83.61530'), ('Grange City', 342, '38.24560', '-83.66520'), ('Hillsboro', 3010, '38.29440', '-83.65970'), ('Mount Carmel', 3010, '38.48500', '-83.63720'), ('Muses Mills', 5914, '38.35060', '-83.52750'), ('Nepton', 278, '38.43670', '-83.83530'), ('Pecks Ridge', 3010, '38.36000', '-83.80000'), ('Pleasureville', 3010, '38.47970', '-83.60330'), ('Plummers Landing', 5914, '38.32060', '-83.56080'), ('Poplar Plains', 3010, '38.36170', '-83.67500'), ('Ringos Mills', 342, '38.26640', '-83.60940'), ('Sharkey', 251, '38.23140', '-83.56030'), ('Sherburne', 278, '38.29000', '-83.81000'), ('Tilton', 3010, '38.34750', '-83.75940'), ('Wallingford', 3010, '38.40580', '-83.61250')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC071': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Allen', 150, '37.61120', '-82.72840'), ('Allen City', 150, '37.60940', '-82.72330'), ('Alphoretta', 633, '37.56360', '-82.76500'), ('Aluba', 262, '37.53080', '-82.64390'), ('Alvin', 150, '37.63810', '-82.69580'), ('Arkansas', 633, '37.58310', '-82.73280'), ('Auxier', 1079, '37.73810', '-82.75890'), ('Bammer', 150, '37.60060', '-82.70220'), ('Bays Branch', 1079, '37.72330', '-82.76810'), ('Beaver', 1042, '37.39810', '-82.65500'), ('Beaver Junction', 150, '37.61420', '-82.73250'), ('Betsy Layne', 262, '37.55190', '-82.63360'), ('Blue Moon', 633, '37.50780', '-82.69750'), ('Blue River', 3612, '37.62000', '-82.84420'), ('Bonanza', 3612, '37.69330', '-82.86440'), ('Bosco', 298, '37.50470', '-82.84080'), ('Brainard', 3612, '37.66420', '-82.89640'), ('Buckhorn Hollow', 1042, '37.39250', '-82.66970'), ('Buckingham', 1042, '37.37060', '-82.74110'), ('Burton', 1042, '37.36060', '-82.72470'), ('Cliff', 3612, '37.68190', '-82.78110'), ('Corn Fork Hollow', 3612, '37.67780', '-82.70060'), ('Craynor', 1042, '37.43780', '-82.66890'), ('Dana', 633, '37.55500', '-82.69190'), ('David', 633, '37.60030', '-82.89190'), ('Dicks Creek', 3612, '37.70170', '-82.67890'), ('Dock', 3612, '37.62780', '-82.80170'), ('Dotson', 3612, '37.64720', '-82.85810'), ('Drift', 298, '37.48060', '-82.74830'), ('Dwale', 150, '37.62390', '-82.72440'), ('Eastern', 298, '37.51750', '-82.80610'), ('East Mcdowell', 298, '37.44860', '-82.72610'), ('Emma', 150, '37.63670', '-82.70060'), ('Endicott', 150, '37.66750', '-82.63940'), ('Estill', 298, '37.45860', '-82.81860'), ('Galveston', 262, '37.44110', '-82.62860'), ('Garret', 298, '37.47970', '-82.83110'), ('Glo', 298, '37.44890', '-82.80940'), ('Grethel', 262, '37.49170', '-82.64720'), ('Halo', 1042, '37.31610', '-82.74080'), ('Harold', 262, '37.53810', '-82.63310'), ('Hi Hat', 1042, '37.39280', '-82.72970'), ('Hippo', 298, '37.53280', '-82.86940'), ('Honaker', 633, '37.52390', '-82.68030'), ('Hueysville', 633, '37.54170', '-82.83190'), ('Hunter', 633, '37.50690', '-82.75670'), ('Ivel', 150, '37.59420', '-82.66830'), ('Justell', 262, '37.55690', '-82.63830'), ('Lancer', 3612, '37.66890', '-82.73690'), ('Langley', 633, '37.53220', '-82.79170'), ('Ligon', 1042, '37.37080', '-82.67330'), ('Martin', 633, '37.57180', '-82.75600'), ('McDowell', 298, '37.45640', '-82.73690'), ('Melvin', 1042, '37.35110', '-82.69560'), ('Minnie', 298, '37.47360', '-82.75470'), ('Orkney', 298, '37.43030', '-82.73640'), ('Osborn', 262, '37.47780', '-82.61330'), ('Porter Junction', 298, '37.47310', '-82.82940'), ('Prestonsburg', 3612, '37.67370', '-82.76660'), ('Price', 1042, '37.40310', '-82.74280'), ('Printer', 633, '37.53140', '-82.74670'), ('Pyramid', 633, '37.56560', '-82.86970'), ('Wayland', 298, '37.44820', '-82.80050'), ('Wheelwright', 1042, '37.33890', '-82.72030')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC073': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Benson', 0, '38.20702', '-84.95940'), ('Big Eddy', 0, '38.17007', '-84.85828'), ('Bon Air Hills', 0, '38.19285', '-84.82523'), ('Bridgeport', 0, '38.16007', '-84.95106'), ('Broadville Manor', 0, '38.16868', '-84.93134'), ('Bryant', 0, '38.23924', '-84.95106'), ('Elmville', 0, '38.34118', '-84.76134'), ('Elsinore', 0, '38.22063', '-84.79606'), ('Evergreen', 0, '38.13563', '-84.92578'), ('Farmdale', 0, '38.10952', '-84.91662'), ('Flag Fork', 0, '38.32146', '-84.94828'), ('Frankfort', 27741, '38.20091', '-84.87328'), ('Harvieland', 0, '38.25424', '-84.91273'), ('Indian Hills', 0, '38.21702', '-84.83078'), ('Jett', 0, '38.17868', '-84.81439'), ('Kennebec', 0, '38.20702', '-84.91301'), ('Ottusville', 0, '38.32285', '-84.89551'), ('Peaks Mill', 0, '38.29840', '-84.81245'), ('Polsgrove', 0, '38.34813', '-84.88495'), ('Slickway', 0, '38.18702', '-84.79912'), ('Swallowfield', 0, '38.33924', '-84.84856'), ('Switzer', 0, '38.25417', '-84.75444'), ('Woodlake', 0, '38.21063', '-84.75356')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC075': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Boundurant', 2560, '36.52330', '-89.31970'), ('Fulton', 2775, '36.51250', '-88.88120'), ('Hickman', 2560, '36.56290', '-89.18780')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC077': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Glencoe', 251, '38.71110', '-84.82180'), ('Sparta', 230, '38.67763', '-84.90894'), ('Warsaw', 1811, '38.78530', '-84.89480')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC079': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bourne', 0, '37.70980', '-84.61300'), ('Bryantsville', 3734, '37.71452', '-84.64911'), ('Buckeye', 3734, '37.71564', '-84.50549'), ('Buena Vista', 874, '37.75036', '-84.66522'), ('Cartersville', 0, '37.53814', '-84.40799'), ('Davistown', 0, '37.69202', '-84.69550'), ('Hackley', 0, '37.63314', '-84.47160'), ('Hyattsville', 0, '37.60508', '-84.52244'), ('Lancaster', 3734, '37.61952', '-84.57800'), ('Lowell', 3589, '37.60953', '-84.42521'), ('Manse', 0, '37.58786', '-84.43771'), ('Marcellus', 0, '37.68619', '-84.67717'), ('Marksbury', 0, '37.67258', '-84.63772'), ('McCreary', 3734, '37.67119', '-84.51549'), ('Nina', 0, '37.66397', '-84.46633'), ('Paint Lick', 9851, '37.61675', '-84.40938'), ('Point Leavell', 0, '37.59342', '-84.49605'), ('Stone', 0, '37.72814', '-84.54605'), ('Teatersville', 0, '37.68897', '-84.50688'), ('Three Forks', 0, '37.69091', '-84.57494'), ('Toddville', 0, '37.73258', '-84.63605')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC081': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Corinth', 181, '38.49590', '-84.56410'), ('Crittenden', 2401, '38.78110', '-84.60550'), ('Dry Ridge', 1995, '38.68220', '-84.59640'), ('Williamstown', 3227, '38.63750', '-84.56090')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC083': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Fancy Farm', 581, '36.75940', '-88.79280'), ('Lowes', 3733, '36.88550', '-88.77380'), ('Mayfield', 10349, '36.73630', '-88.64570'), ('Symsonia', 4353, '36.90460', '-88.51000'), ('Water Valley', 316, '36.56830', '-88.81080'), ('Wingo', 581, '36.64190', '-88.73790')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC085': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Anneta', 0, '37.37088', '-86.24525'), ('Big Clifty', 794, '37.54561', '-86.15358'), ('Black Rock', 0, '37.46061', '-86.35498'), ('Broad Ford', 0, '37.38144', '-86.07941'), ('Caneyville', 627, '37.42422', '-86.48831'), ('Clarkson', 794, '37.49533', '-86.22136'), ('Concord', 0, '37.56089', '-86.45970'), ('Conoloway', 0, '37.36811', '-86.21553'), ('Do Stop', 0, '37.43200', '-86.55054'), ('Duff', 0, '37.54978', '-86.41303'), ('Dug Hill', 0, '37.35311', '-86.14858'), ('Eveleigh', 0, '37.58756', '-86.32748'), ('Falling Branch', 0, '37.59478', '-86.49720'), ('Fragrant', 0, '37.45422', '-86.16969'), ('Grayson Springs', 794, '37.45922', '-86.22442'), ('Hanging Rock', 0, '37.55256', '-86.32220'), ('Hickory Corner', 0, '37.58728', '-86.53359'), ('Hilltop', 0, '37.39505', '-86.10719'), ('Hites Falls', 0, '37.54228', '-86.59693'), ('Horntown', 0, '37.47672', '-86.12636'), ('Huffman', 0, '37.39005', '-86.21914'), ('Iberia', 794, '37.37311', '-86.16608'), ('Indian Valley', 0, '37.57478', '-86.44026'), ('Johnson Crossroads', 0, '37.39866', '-86.20164'), ('Jugville', 0, '37.46311', '-86.59887'), ('Lacon', 0, '37.49228', '-86.08414'), ('Leitchfield', 6139, '37.48005', '-86.29386'), ('Lilac', 0, '37.54894', '-86.34414'), ('Linwood', 0, '37.34200', '-86.17608'), ('Lone Oak', 0, '37.42561', '-86.07164'), ('Meredith', 794, '37.40255', '-86.23692'), ('Millerstown', 654, '37.44533', '-86.05080'), ('Millwood', 627, '37.45033', '-86.39053'), ('Moutardier', 0, '37.33505', '-86.24775'), ('Pearman', 0, '37.37450', '-86.10858'), ('Peonia', 794, '37.41561', '-86.21914'), ('Peth', 0, '37.40700', '-86.43665'), ('Pine Knob', 627, '37.48339', '-86.51193'), ('Pine Springs', 0, '37.35200', '-86.09469'), ('Ponderosa', 0, '37.34061', '-86.19608'), ('Post', 0, '37.47311', '-86.47554'), ('Ready', 627, '37.37172', '-86.47137'), ('Rock Creek', 0, '37.43200', '-86.15803'), ('Royal', 0, '37.44089', '-86.09525'), ('Sadler', 0, '37.35783', '-86.33414'), ('Saint Paul', 0, '37.55089', '-86.19358'), ('Short Creek', 627, '37.52783', '-86.47442'), ('Shrewsbury', 627, '37.37894', '-86.38470'), ('Skaggstown', 0, '37.43367', '-86.18664'), ('Snap', 0, '37.40311', '-86.15608'), ('South', 627, '37.32922', '-86.36470'), ('Spike', 0, '37.40700', '-86.08469'), ('Steff', 0, '37.42977', '-86.60554'), ('Tar Hill', 0, '37.56561', '-86.21831'), ('Tousey', 0, '37.51450', '-86.54776'), ('Wax', 794, '37.35422', '-86.12219'), ('West Clifty', 0, '37.51339', '-86.18830'), ('Wheelers Mill', 0, '37.39394', '-86.02608'), ('Windyville', 921, '37.36033', '-86.41887'), ('Yeaman', 627, '37.51783', '-86.57748')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC087': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Allendale', 2396, '37.37117', '-85.58302'), ('Black Gnat', 2396, '37.30423', '-85.43635'), ('Bloyd', 0, '37.40534', '-85.57580'), ('Bluff Boom', 0, '37.27784', '-85.46108'), ('Bramlett', 0, '37.16200', '-85.46191'), ('Coakley', 0, '37.37617', '-85.53552'), ('Crailhope', 0, '37.15978', '-85.66580'), ('Donansburg', 0, '37.23728', '-85.62608'), ('Eve', 0, '37.31117', '-85.67858'), ('Exie', 2396, '37.15978', '-85.53580'), ('Fry', 0, '37.14673', '-85.48830'), ('Gabe', 0, '37.30784', '-85.57413'), ('Grab', 0, '37.22589', '-85.60163'), ('Greensburg', 2396, '37.26089', '-85.49885'), ('Gresham', 0, '37.19673', '-85.45024'), ('Haskingsville', 0, '37.18701', '-85.39524'), ('Hudgins', 0, '37.34867', '-85.68052'), ('Kemp', 0, '37.13645', '-85.45802'), ('Liletown', 0, '37.14395', '-85.58330'), ('Little Barren', 0, '37.12783', '-85.61775'), ('Lobb', 0, '37.34589', '-85.64497'), ('Mell', 0, '37.11228', '-85.52858'), ('Mount Gilead', 0, '37.17312', '-85.38413'), ('Newt', 0, '37.17923', '-85.56469'), ('Pierce', 2396, '37.18645', '-85.60775'), ('Roachville', 0, '37.24062', '-85.42358'), ('Summersville', 2396, '37.32617', '-85.54441'), ('Thurlow', 0, '37.21256', '-85.53636'), ('Wards', 0, '37.45951', '-85.61024'), ('Webbs', 0, '37.25895', '-85.60191'), ('Whitewood', 0, '37.28367', '-85.43608')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC089': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bellefonte', 837, '38.49840', '-82.68840'), ('Flatwoods', 7605, '38.51930', '-82.72000'), ('Greenup', 1198, '38.57300', '-82.82910'), ('Raceland', 2355, '38.53620', '-82.73370'), ('Russell', 3645, '38.50970', '-82.70120'), ('South Shore', 1226, '38.72200', '-82.96430'), ('Worthington', 1673, '38.55170', '-82.73630'), ('Wurtland', 1049, '38.55040', '-82.77320')], 'partOfState': '', 'wfo': 'RLX'}, +'KYC091': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adair', 0, '37.95061', '-86.82666'), ('Arrington Corner', 0, '37.77478', '-86.74860'), ('Cabot', 0, '37.68867', '-86.65332'), ('Chambers', 0, '37.83728', '-86.78527'), ('Dukes', 1256, '37.82478', '-86.69832'), ('Easton', 0, '37.70617', '-86.68165'), ('Floral', 0, '37.78672', '-86.81082'), ('Goering', 0, '37.80089', '-86.76165'), ('Hawesville', 971, '37.90006', '-86.75499'), ('Lewisport', 1639, '37.93700', '-86.90221'), ('Patesville', 1256, '37.78200', '-86.71888'), ('Pellville', 632, '37.75227', '-86.81360'), ('Petri', 0, '37.92644', '-86.80416'), ('Roseville', 0, '37.71728', '-86.75499'), ('Skillman', 0, '37.89283', '-86.67165'), ('Sunny Corner', 0, '37.85228', '-86.66971'), ('Victoria Crossroads', 0, '37.74783', '-86.67776'), ('Waitman', 0, '37.90811', '-86.95083'), ('Weberstown', 0, '37.77033', '-86.77888')], 'partOfState': 'northwest', 'wfo': 'LMK'}, +'KYC093': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Booth', 424, '37.80534', '-85.75163'), ('Cecilia', 22542, '37.66590', '-85.95663'), ('Colesburg', 1801, '37.78479', '-85.77385'), ('Crest', 0, '37.75006', '-85.84357'), ('Dietz Acres', 0, '37.86562', '-85.94996'), ('Eastview', 350, '37.58895', '-86.05580'), ('Elizabethtown', 22542, '37.69395', '-85.85913'), ('Flint Hill', 0, '37.49839', '-85.99052'), ('Fort Knox', 13140, '37.89404', '-85.94652'), ('Four Corners', 0, '37.74895', '-86.08802'), ('Franklin Cross Roads', 0, '37.67006', '-86.01496'), ('Gaithers', 0, '37.65756', '-85.89968'), ('Glendale', 350, '37.60173', '-85.90552'), ('Hansbrough', 0, '37.63451', '-85.99358'), ('Harcourt', 0, '37.55589', '-86.01219'), ('Hardin Springs', 0, '37.60950', '-86.25636'), ('Howard', 0, '37.98896', '-85.96080'), ('Howe Valley', 4169, '37.68728', '-86.08830'), ('Indian Hills', 0, '37.70895', '-85.84607'), ('Kraft', 0, '37.71701', '-85.97080'), ('Limp', 0, '37.59228', '-86.19747'), ('Long View', 0, '37.78951', '-85.91302'), ('Nolin', 0, '37.56117', '-85.90274'), ('Perryville', 0, '37.72951', '-86.04858'), ('Pierce Mill', 0, '37.64062', '-86.19997'), ('Radcliff', 21961, '37.84035', '-85.94913'), ('Red Hill', 0, '37.85562', '-85.96746'), ('Rineyville', 4169, '37.74951', '-85.96996'), ('Rogersville', 0, '37.82034', '-85.92885'), ('Saint John', 0, '37.69840', '-85.96635'), ('Seven Corners', 0, '37.48200', '-85.99274'), ('Solway', 0, '37.62117', '-86.17664'), ('Sonora', 350, '37.52423', '-85.89302'), ('Spurrier', 0, '37.47450', '-86.05413'), ('Star Mills', 0, '37.59923', '-85.98024'), ('Stephensburg', 22542, '37.62478', '-86.01885'), ('Summit', 0, '37.56895', '-86.08108'), ('Tunnel Hills', 0, '37.73284', '-85.83135'), ('Vertrees', 4169, '37.69645', '-86.13441'), ('Vine Grove', 4169, '37.81007', '-85.98135'), ('West Point', 1100, '37.99952', '-85.94357'), ('White Mills', 350, '37.55534', '-86.03219'), ('White Mills Junction', 0, '37.57756', '-86.03552'), ('Younger Creek', 0, '37.75673', '-85.72357')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC095': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ages', 1101, '36.85750', '-83.24670'), ('Alva', 996, '36.73600', '-83.42490'), ('Arthur', 1101, '36.99890', '-83.17280'), ('Bailey Creek', 1101, '36.88060', '-83.19080'), ('Bardo', 996, '36.75880', '-83.34340'), ('Baxter', 766, '36.86170', '-83.33180'), ('Benham', 599, '36.96460', '-82.95190'), ('Benito', 1101, '36.90090', '-83.12720'), ('Big Black Mountain', 900, '36.91450', '-82.89090'), ('Big Laurel', 1101, '36.97940', '-83.21900'), ('Black Bottom', 206, '36.90790', '-83.07830'), ('Blackjoe', 2081, '36.85940', '-83.28300'), ('Black Mountain', 1101, '36.84860', '-83.14560'), ('Blair', 599, '36.99010', '-82.95350'), ('Bledsoe', 766, '36.92400', '-83.36620'), ('Bobs Creek', 1101, '36.78960', '-83.24690'), ('Brookside', 1101, '36.85920', '-83.25270'), ('Chad', 2611, '36.97050', '-83.01910'), ('Chevrolet', 2081, '36.81590', '-83.27490'), ('Closplint', 206, '36.90250', '-83.06780'), ('Clover', 599, '36.92830', '-82.96720'), ('Clover-Darby', 206, '36.89230', '-83.06210'), ('Clover Fork', 900, '36.87720', '-82.93160'), ('Clovertown', 2081, '36.85270', '-83.30530'), ('Clutts', 2611, '36.97230', '-82.97130'), ('Coburn', 2081, '36.81590', '-83.31980'), ('Coldiron', 257, '36.82680', '-83.45340'), ('Colts', 1101, '36.88040', '-83.14760'), ('Coxton', 2081, '36.85760', '-83.26670'), ('Cranks', 927, '36.76470', '-83.17210'), ('Creech', 996, '36.76720', '-83.39500'), ('Creech', 2611, '36.96730', '-83.04170'), ('Crummies', 1101, '36.77430', '-83.20520'), ('Cumberland', 2611, '36.98420', '-82.98600'), ('Darkmont', 1101, '36.87300', '-83.18000'), ('Diane', 2611, '36.95120', '-83.08100'), ('Dillon', 1101, '36.91540', '-83.19410'), ('Divide', 1101, '36.93650', '-83.21230'), ('Dizney', 206, '36.85090', '-83.11690'), ('Draper', 1101, '36.87290', '-83.21080'), ('Dressen', 2081, '36.83270', '-83.32330'), ('Elcomb', 2081, '36.82220', '-83.33520'), ('Evarts', 1101, '36.86370', '-83.19770'), ('Farmers Mill', 2081, '36.81530', '-83.28530'), ('Flagler', 1101, '36.76380', '-83.23820'), ('Fresh Meadows', 766, '36.84030', '-83.37540'), ('Gano', 1101, '36.90150', '-83.13420'), ('Gatun', 2081, '36.87210', '-83.31070'), ('Georgetown', 206, '36.88870', '-83.05380'), ('Golden Ash', 2081, '36.86100', '-83.29290'), ('Grays Knob', 2081, '36.80660', '-83.30410'), ('Harlan', 2081, '36.84140', '-83.32020'), ('Harlan Gas', 2081, '36.85070', '-83.30580'), ('Hensley Store', 996, '36.72000', '-83.35000'), ('Highsplint', 1101, '36.89850', '-83.11770'), ('Hiram', 2611, '36.96680', '-83.04760'), ('Holmes Mill', 206, '36.86840', '-83.00060'), ('Incline', 2081, '36.91650', '-83.28130'), ('Insull', 996, '36.76360', '-83.48580'), ('Jonesburg', 1101, '36.92880', '-83.24000'), ('Keith', 766, '36.85320', '-83.36920'), ('Kellioka', 1101, '36.90250', '-83.24380'), ('Kentenia', 996, '36.79800', '-83.40130'), ('Kentenia State Forest', 1101, '36.92490', '-83.22430'), ('Kenvir', 1101, '36.85390', '-83.15960'), ('Kerr', 257, '36.83800', '-83.41290'), ('Kildav', 1101, '36.85720', '-83.21100'), ('Kingdom Come State Park', 2611, '36.99030', '-82.98520'), ('Kitts', 2081, '36.85510', '-83.29790'), ('Laden', 1101, '36.91640', '-83.19290'), ('Layman', 257, '36.82970', '-83.46420'), ('Lejunior', 206, '36.90590', '-83.07170'), ('Lenarve', 2081, '36.80580', '-83.26830'), ('Leonard', 1101, '36.91010', '-83.11020'), ('Liggett', 996, '36.75190', '-83.34720'), ('Longton', 257, '36.83550', '-83.41010'), ('Louellen', 206, '36.91140', '-83.08580'), ('Low', 996, '36.78290', '-83.39820'), ('Loyall', 766, '36.85180', '-83.35080'), ('Lynch', 900, '36.96450', '-82.91360'), ('Martins Fork', 996, '36.73000', '-83.33000'), ('Martins Fork Lake', 2081, '36.75000', '-83.26000'), ('Mary Alice', 2081, '36.78580', '-83.33040'), ('Mary Helen', 2081, '36.81270', '-83.25200'), ('Merna', 2081, '36.79340', '-83.25200'), ('Molus', 257, '36.81360', '-83.49110'), ('Nolansburg', 1101, '36.92620', '-83.16550'), ('Pansy', 2081, '36.77510', '-83.32940'), ('Pathfork', 996, '36.75580', '-83.46310'), ('Peepace Store', 2081, '36.73000', '-83.32000'), ('Pine Mountain', 1101, '36.94970', '-83.18570'), ('Popeville', 1101, '36.79390', '-83.20900'), ('Putney', 1101, '36.90670', '-83.22680'), ('Redbud', 1101, '36.85950', '-83.16880'), ('Rex', 2081, '36.85280', '-83.30030'), ('Rhea', 1101, '36.89890', '-83.25650'), ('Ridgeway', 1101, '36.89640', '-83.12320'), ('Rileyville', 206, '36.89710', '-83.06450'), ('Rio Vista', 766, '36.84560', '-83.35890'), ('River Ridge', 1101, '36.87660', '-83.17190'), ('Rock House', 599, '36.90070', '-82.93930'), ('Rosspoint', 2081, '36.88400', '-83.29100'), ('Rutherford', 206, '36.88460', '-83.03420'), ('Sand Hill', 2611, '36.97500', '-83.00540'), ('Shields', 1101, '36.89560', '-83.14080'), ('Short Town', 1101, '36.87750', '-83.16040'), ('Smith', 2081, '36.74000', '-83.26000'), ('South Wallins', 996, '36.80740', '-83.40630'), ('Stanfill', 996, '36.76500', '-83.34290'), ('Sunshine', 2081, '36.83790', '-83.32920'), ('Tacky Town', 257, '36.85280', '-83.47460'), ('Teetersville', 2081, '36.81230', '-83.33750'), ('Ten Spot', 1101, '36.84300', '-83.21720'), ('Three Point', 2081, '36.76430', '-83.25880'), ('Totz', 1101, '36.94420', '-83.11890'), ('Tremont', 257, '36.84220', '-83.39310'), ('Tway', 2081, '36.82760', '-83.31810'), ('Twila', 996, '36.77270', '-83.39360'), ('Verda', 1101, '36.85100', '-83.22110'), ('Wallins Creek', 257, '36.82790', '-83.41450'), ('White Star', 766, '36.82750', '-83.36650'), ('Woods', 1101, '36.86100', '-83.18160'), ('Yancey', 2081, '36.76560', '-83.31920')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC097': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alberta', 0, '38.40007', '-84.47411'), ('Antioch', 0, '38.56646', '-84.29271'), ('Berry', 310, '38.52063', '-84.38438'), ('Boyd', 0, '38.55063', '-84.39411'), ('Breckinridge', 6258, '38.44146', '-84.37855'), ('Broadwell', 0, '38.32869', '-84.35910'), ('Buena Vista', 0, '38.43646', '-84.16799'), ('Claysville', 0, '38.51924', '-84.18521'), ('Colemansville', 0, '38.52785', '-84.40688'), ('Colville', 6258, '38.36535', '-84.21021'), ('Connersville', 263, '38.38007', '-84.41272'), ('Cynthiana', 6258, '38.39035', '-84.29410'), ('Garnett', 0, '38.45924', '-84.32744'), ('Hinton', 0, '38.45729', '-84.52939'), ('Kelat', 310, '38.52618', '-84.31216'), ('Lair', 0, '38.34202', '-84.30771'), ('Leesburg', 6258, '38.29452', '-84.41827'), ('Lees Lick', 0, '38.33591', '-84.41855'), ('Oddville', 6258, '38.45563', '-84.23882'), ('Poindexter', 0, '38.43702', '-84.30827'), ('Renaker', 0, '38.46285', '-84.42550'), ('Robinson', 0, '38.49118', '-84.34827'), ('Rutland', 0, '38.44480', '-84.45077'), ('Sunrise', 310, '38.54257', '-84.23660'), ('Venus', 0, '38.44202', '-84.19243')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC099': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bear Wallow', 0, '37.15172', '-85.85608'), ('Bee', 0, '37.26894', '-86.08469'), ('Big Windy', 0, '37.31866', '-86.09442'), ('Bonnieville', 354, '37.37867', '-85.90302'), ('Bunnell Crossing', 0, '37.23172', '-85.80469'), ('Canmer', 1563, '37.29033', '-85.76719'), ('Cub Run', 0, '37.30561', '-86.06080'), ('Defries', 0, '37.26839', '-85.68469'), ('Dogcreek', 0, '37.32061', '-86.12525'), ('Forestville', 0, '37.26838', '-85.99664'), ('Glen Lily', 0, '37.30783', '-85.79441'), ('Hammonville', 354, '37.41478', '-85.79746'), ('Hardyville', 1563, '37.25422', '-85.78608'), ('High Hickory', 0, '37.42256', '-85.82996'), ('Hinesdale', 0, '37.31756', '-85.82358'), ('Horse Cave', 2252, '37.17950', '-85.90692'), ('Jonesville', 0, '37.38784', '-85.76830'), ('Kessinger', 1563, '37.30589', '-85.95942'), ('Legrande', 0, '37.17811', '-85.78219'), ('Leitchfield Crossing', 0, '37.30144', '-85.91247'), ('Lines Mill', 0, '37.35811', '-86.04275'), ('Linwood', 354, '37.33950', '-85.75997'), ('Logsdon Valley', 0, '37.26616', '-85.96192'), ('Lone Star', 0, '37.40478', '-85.94663'), ('Macon', 0, '37.33089', '-86.01969'), ('Monroe', 224, '37.23228', '-85.69775'), ('Mount Beulah', 0, '37.29839', '-85.93942'), ('Munfordville', 1563, '37.27228', '-85.89108'), ('Northtown', 0, '37.21422', '-86.00081'), ('Pascal', 0, '37.21700', '-85.73025'), ('Pike View', 0, '37.37950', '-85.75302'), ('Powder Mill', 0, '37.34700', '-85.71330'), ('Priceville', 354, '37.37422', '-85.98719'), ('Rex', 2081, '37.22283', '-85.78553'), ('Riders Mill', 0, '37.41061', '-85.99914'), ('Rio', 0, '37.31895', '-85.77108'), ('Roseburg', 0, '37.33005', '-86.07942'), ('Rowletts', 1563, '37.24089', '-85.89414'), ('Seymour', 0, '37.16589', '-85.80330'), ('Three Springs', 224, '37.17172', '-85.74358'), ('Tom Johns Crossing', 0, '37.24977', '-86.02442'), ('Uno', 2252, '37.18922', '-85.82442'), ('Vento', 0, '37.41811', '-85.89302'), ('Wabash', 0, '37.40645', '-85.84941'), ('Whickerville', 0, '37.20033', '-85.69052'), ('Winesap', 0, '37.28727', '-86.01608'), ('Woodsonville', 0, '37.26283', '-85.88830')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC101': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Corydon', 744, '37.73970', '-87.70650'), ('Hebbardsville', 2880, '37.77610', '-87.37520'), ('Henderson', 27373, '37.83990', '-87.58200')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYC103': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bellview', 0, '38.35618', '-85.14301'), ('Bethlehem', 869, '38.40062', '-85.06940'), ('Campbellsburg', 705, '38.52368', '-85.20273'), ('Defoe', 869, '38.34090', '-85.05440'), ('Delville', 0, '38.47757', '-85.09745'), ('Drennon Springs', 0, '38.50784', '-85.05384'), ('Eminence', 2231, '38.37007', '-85.18051'), ('Fallis', 0, '38.43007', '-84.93523'), ('Franklinton', 0, '38.45257', '-85.05551'), ('Gest', 0, '38.41757', '-84.88273'), ('Jericho', 0, '38.40507', '-85.28996'), ('Lacie', 0, '38.52701', '-85.12940'), ('Lockport', 89, '38.43590', '-84.96717'), ('New Castle', 919, '38.43340', '-85.16968'), ('North Pleasureville', 0, '38.35979', '-85.10718'), ('Orville', 0, '38.39840', '-84.91551'), ('Pendleton', 0, '38.46229', '-85.30357'), ('Pleasureville', 869, '38.34590', '-85.11523'), ('Port Royal', 215, '38.55534', '-85.08023'), ('Slabtown', 0, '38.43285', '-85.00523'), ('Sligo', 5676, '38.48895', '-85.31329'), ('Smithfield', 102, '38.38673', '-85.25690'), ('Sulphur', 705, '38.49479', '-85.27357'), ('Tarascon', 0, '38.41146', '-85.30912'), ('Turners Station', 0, '38.55562', '-85.16773')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC105': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Clinton', 1415, '36.66610', '-88.99400'), ('Columbus', 229, '36.75950', '-89.10180')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC107': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Dawson Springs', 2980, '37.17270', '-87.68860'), ('Earlington', 1649, '37.27340', '-87.51550'), ('Hanson', 625, '37.41740', '-87.47210'), ('Madisonville', 19307, '37.33660', '-87.50540'), ('Mortons Gap', 952, '37.23710', '-87.47180'), ('Nebo', 220, '37.38440', '-87.64140'), ('Nortonville', 1264, '37.18630', '-87.45740'), ('St. Charles', 309, '37.18800', '-87.55690'), ('White Plains', 800, '37.18770', '-87.38640')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYC109': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alcorn', 878, '37.56140', '-84.04890'), ('Annville', 589, '37.31990', '-83.96140'), ('Ardery', 228, '37.34060', '-84.10430'), ('Atkinstown', 878, '37.38310', '-83.96280'), ('Blanton Flats', 693, '37.57000', '-84.00390'), ('Bond', 589, '37.31590', '-83.98640'), ('Bradshaw', 878, '37.42500', '-83.96330'), ('Brazil', 878, '37.52470', '-84.04170'), ('Carico', 228, '37.33200', '-84.09840'), ('Clover Bottom', 9851, '37.49890', '-84.15140'), ('Collingsworth', 878, '37.46390', '-84.08710'), ('Cornelius', 589, '37.31390', '-84.00860'), ('Dabolt', 589, '37.34890', '-84.00410'), ('Dango', 228, '37.36940', '-84.11350'), ('Datha', 589, '37.26010', '-83.91500'), ('Deese', 589, '37.33550', '-84.02440'), ('Drip Rock', 693, '37.57500', '-83.97360'), ('Eberle', 228, '37.29830', '-84.08870'), ('Eglon', 878, '37.45660', '-84.12980'), ('Egypt', 589, '37.31310', '-83.89610'), ('Elian', 589, '37.38940', '-83.83110'), ('Foxtown', 878, '37.50420', '-83.99360'), ('Gray Hawk', 878, '37.39280', '-83.93680'), ('Green Hill', 589, '37.29610', '-83.96550'), ('Herd', 589, '37.36420', '-83.87530'), ('High Knob', 589, '37.28720', '-83.90590'), ('Hisel', 878, '37.55560', '-84.08390'), ('Hurley', 878, '37.41250', '-84.03720'), ('Kerby Knob', 878, '37.52090', '-84.11520'), ('Lakes', 878, '37.50450', '-83.93670'), ('Loam', 228, '37.40690', '-84.12910'), ('Macedonia', 878, '37.45860', '-83.96580'), ('Maulden', 589, '37.35420', '-83.84900'), ('McKee', 878, '37.42990', '-83.99760'), ('Middlefork', 589, '37.34350', '-84.08140'), ('Mildred', 589, '37.35420', '-83.92720'), ('Moores Creek', 589, '37.28230', '-83.99490'), ('Morrill', 9851, '37.51920', '-84.19750'), ('Mummie', 589, '37.39360', '-83.87110'), ('Nathanton', 589, '37.36790', '-83.82760'), ('New Zion', 878, '37.47120', '-83.89600'), ('Old Orchard', 878, '37.52280', '-83.88980'), ('Olin', 589, '37.35190', '-83.96640'), ('Parrot', 589, '37.31680', '-84.06030'), ('Peoples', 589, '37.28870', '-84.04970'), ('Privett', 878, '37.40190', '-83.90060'), ('Royrader', 589, '37.26100', '-83.94080'), ('Sandgap', 878, '37.48490', '-84.09160'), ('Sand Springs', 878, '37.52610', '-84.00000'), ('Settle Store', 589, '37.32940', '-83.94170'), ('Shirley', 9851, '37.54590', '-84.14330'), ('Shop Branch', 878, '37.38540', '-84.03530'), ('Threelinks', 9851, '37.46440', '-84.19020'), ('Turkey Foot', 878, '37.46450', '-83.91790'), ('Tyner', 589, '37.34520', '-83.90390'), ('Waneta', 878, '37.47080', '-84.03850'), ('Welchburg', 589, '37.32060', '-83.93000'), ('Wind Cave', 878, '37.51250', '-83.92890'), ('Zekes Point', 589, '37.35100', '-83.88890')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC111': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Anchorage', 2264, '38.27020', '-85.53810'), ('Fairdale', 7658, '38.11180', '-85.75750'), ('Fern Creek', 17870, '38.15830', '-85.59670'), ('Fisherville', 13140, '38.19120', '-85.46390'), ('Highview', 15161, '38.14020', '-85.63500'), ('Jeffersontown', 26633, '38.20560', '-85.57090'), ('Louisville', 256231, '38.22480', '-85.74120'), ('Lyndon', 9369, '38.26440', '-85.58930'), ('Middletown', 5744, '38.24250', '-85.51960'), ('Okolona', 17807, '38.13900', '-85.68600'), ('Pleasure Ridge Park', 25131, '38.15370', '-85.85290'), ('Prospect', 4657, '38.34780', '-85.60930'), ('Routt', 13140, '38.13400', '-85.46640'), ('Shively', 15157, '38.19590', '-85.81320'), ('St. Matthews', 15852, '38.24920', '-85.63780'), ('Thixton', 13140, '38.10070', '-85.56540'), ('Valley Station', 22946, '38.10350', '-85.85860')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC113': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Brannon', 0, '37.95841', '-84.54605'), ('Catnip', 0, '37.93230', '-84.55605'), ('Dixon Town', 0, '37.93730', '-84.65855'), ('Hall', 0, '37.78397', '-84.61689'), ('High Bridge', 5905, '37.82424', '-84.71828'), ('Jessamine', 0, '37.87591', '-84.62133'), ('Keene', 5905, '37.94341', '-84.64189'), ('Little Hickman', 0, '37.77369', '-84.57022'), ('Logana', 0, '37.86480', '-84.48688'), ('Mount Lebanon', 0, '37.82675', '-84.50438'), ('Nealton', 0, '37.93702', '-84.60439'), ('Nicholasville', 19680, '37.88063', '-84.57300'), ('Pink', 0, '37.77952', '-84.55105'), ('Pollard', 0, '37.80675', '-84.50994'), ('Union Mills', 0, '37.89036', '-84.50994'), ('Vineyard', 0, '37.84397', '-84.58772'), ('Wilmore', 5905, '37.86202', '-84.66161')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC115': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Baker', 4132, '37.86010', '-82.75820'), ('Ballot', 1604, '37.77700', '-82.94290'), ('Barnetts Creek', 4132, '37.82760', '-82.87970'), ('Barnrock', 245, '37.95280', '-82.92120'), ('Bobbs', 1079, '37.82700', '-82.74340'), ('Boons Camp', 1079, '37.83290', '-82.70130'), ('Buffalo', 1079, '37.79470', '-82.75390'), ('Chandlerville', 245, '37.93460', '-82.81380'), ('Chestnut', 1079, '37.89060', '-82.68190'), ('Collista', 4132, '37.78240', '-82.82410'), ('Denver', 4132, '37.77590', '-82.85510'), ('Dobson', 4132, '37.74080', '-82.88460'), ('East Point', 1079, '37.74640', '-82.79610'), ('Elna', 245, '37.91800', '-82.96760'), ('Fitz', 4132, '37.78410', '-82.84000'), ('Flatgap', 245, '37.93350', '-82.88770'), ('Galen', 4132, '37.89050', '-82.80670'), ('Gillem Branch', 245, '37.96370', '-82.97240'), ('Hagerhill', 4132, '37.78750', '-82.79060'), ('Hammond', 466, '37.88400', '-82.67080'), ('Hargis', 1604, '37.84080', '-82.97720'), ('Keaton', 245, '37.98160', '-82.96180'), ('Kerz', 4132, '37.91510', '-82.84090'), ('Leander', 4132, '37.75380', '-82.87140'), ('Meally', 1079, '37.79850', '-82.73430'), ('Nero', 1079, '37.74900', '-82.74570'), ('Niles', 1604, '37.82900', '-82.97460'), ('Nippa', 4132, '37.86620', '-82.78820'), ('Oaklawn Estates', 1079, '37.75650', '-82.77520'), ('Odds', 1079, '37.75520', '-82.69300'), ('Offutt', 4132, '37.85070', '-82.72880'), ('Oil Springs', 4132, '37.80990', '-82.94210'), ('Paintsville', 4132, '37.81710', '-82.80710'), ('Patrick', 4132, '37.75930', '-82.86880'), ('Redbush', 245, '37.93930', '-82.94940'), ('Riceville', 1604, '37.73360', '-82.92380'), ('River', 4132, '37.86040', '-82.72600'), ('Sip', 245, '37.92400', '-82.82840'), ('Staffordsville', 4132, '37.83010', '-82.84170'), ('Stambaugh', 4132, '37.88530', '-82.79710'), ('Swamp Branch', 4132, '37.73740', '-82.89670'), ('Thealka', 4132, '37.82180', '-82.78960'), ('Thelma', 4132, '37.81980', '-82.76580'), ('Tutor Key', 4132, '37.84420', '-82.76490'), ('Van Lear', 1079, '37.76990', '-82.75640'), ('Wells Chapel', 1079, '37.83150', '-82.69670'), ('West Van Lear', 1079, '37.78530', '-82.77900'), ('Whitehouse', 1079, '37.87170', '-82.69700'), ('Williamsport', 1079, '37.82430', '-82.72890'), ('Win', 1604, '37.86740', '-82.98930'), ('Winifred', 245, '37.94640', '-82.85450'), ('Wittensville', 4132, '37.86330', '-82.79900'), ('Woodland Estates', 1079, '37.80330', '-82.76650')], 'partOfState': 'northeast', 'wfo': 'JKL'}, +'KYC117': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bromley', 838, '39.08060', '-84.56240'), ('Covington', 43370, '39.07677', '-84.50802'), ('Crescent Park', 355, '39.04320', '-84.57630'), ('Crescent Springs', 3931, '39.05250', '-84.58020'), ('Crestview Hills', 2889, '39.02630', '-84.57140'), ('Edgewood', 9400, '39.00610', '-84.56230'), ('Elsmere', 8139, '38.99430', '-84.60040'), ('Erlanger', 16676, '39.00990', '-84.58810'), ('Fairview', 156, '38.99860', '-84.48280'), ('Fort Mitchell', 8089, '39.04520', '-84.55550'), ('Fort Wright', 5681, '39.04710', '-84.53690'), ('Independence', 14982, '38.95440', '-84.54740'), ('Kenton Vale', 156, '39.05140', '-84.51990'), ('Lakeside Park', 2869, '39.03430', '-84.56650'), ('Latonia Lakes', 325, '38.96750', '-84.49570'), ('Ludlow', 4409, '39.08940', '-84.55050'), ('Park Hills', 2977, '39.07020', '-84.53090'), ('Ryland Heights', 799, '38.95800', '-84.46930'), ('Taylor Mill', 6913, '39.01180', '-84.49720'), ('Villa Hills', 7948, '39.06390', '-84.59630'), ('Visalia', 111, '38.91500', '-84.45130')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC119': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Amburgey', 787, '37.26930', '-82.98290'), ('Amelia', 1600, '37.20710', '-82.92040'), ('Anco', 318, '37.24210', '-83.06030'), ('Bath', 297, '37.24230', '-82.91060'), ('Bearville', 787, '37.37270', '-83.06540'), ('Betty', 298, '37.45130', '-82.84080'), ('Bolyn', 298, '37.44470', '-82.90570'), ('Brinkley', 787, '37.30060', '-82.94450'), ('Buck', 787, '37.44830', '-83.10930'), ('Carr Creek', 318, '37.23150', '-82.96920'), ('Carrie', 787, '37.33140', '-83.03350'), ('Cody', 318, '37.22420', '-82.97590'), ('Cordia', 318, '37.27940', '-83.11570'), ('Demo', 298, '37.41010', '-82.78120'), ('Dirk', 318, '37.23020', '-82.95860'), ('Drew', 297, '37.28340', '-82.86250'), ('Dry Creek', 1042, '37.33350', '-82.77770'), ('Elic', 318, '37.26700', '-83.06830'), ('Elmrock', 787, '37.45220', '-83.02580'), ('Emmalena', 787, '37.33630', '-83.07750'), ('Fisty', 787, '37.33580', '-83.10140'), ('Garner', 297, '37.35620', '-82.92710'), ('Greenleaf', 1042, '37.30080', '-82.75730'), ('Hall', 1042, '37.30020', '-82.77500'), ('Handshoe', 298, '37.47000', '-82.90670'), ('Hindman', 787, '37.33370', '-82.98320'), ('Hollybush', 297, '37.34790', '-82.85650'), ('Ivan', 297, '37.27810', '-82.82800'), ('Ivis', 297, '37.30620', '-82.92820'), ('Kite', 297, '37.33520', '-82.81190'), ('Larkslane', 297, '37.38400', '-82.88160'), ('Leburn', 787, '37.34820', '-82.95650'), ('Littcarr', 787, '37.24270', '-82.94770'), ('Mallie', 297, '37.30300', '-82.91700'), ('May', 297, '37.27270', '-82.86230'), ('Mousie', 298, '37.41890', '-82.87740'), ('Nealy', 297, '37.27420', '-82.86810'), ('Omaha', 297, '37.27450', '-82.84390'), ('Pine Top', 297, '37.27220', '-82.88350'), ('Pippa Passes', 297, '37.33410', '-82.87440'), ('Puncheon', 1042, '37.30220', '-82.78900'), ('Raven', 298, '37.40280', '-82.80640'), ('Redfox', 318, '37.21550', '-82.94390'), ('Ritchie', 318, '37.31110', '-83.08400'), ('Sassafras', 318, '37.22080', '-83.05470'), ('Smithsboro', 318, '37.23100', '-82.99610'), ('Soft Shell', 787, '37.39370', '-82.94420'), ('Spider', 297, '37.25910', '-82.91840'), ('Talcum', 787, '37.37210', '-83.10610'), ('Tina', 787, '37.36080', '-83.02020'), ('Topmost', 1042, '37.36100', '-82.78860'), ('Vest', 787, '37.39600', '-83.00620'), ('Wiscoal', 318, '37.23600', '-83.05730'), ('Yellow Mountain', 787, '37.40480', '-82.96730')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC121': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arkle', 3589, '36.91990', '-83.97670'), ('Artemus', 3589, '36.83360', '-83.84150'), ('Avis', 3589, '36.81530', '-83.82840'), ('Baileys Switch', 3589, '36.91240', '-83.90010'), ('Barbourville', 3589, '36.86640', '-83.88400'), ('Barnyard', 3589, '36.90900', '-83.74130'), ('Baughman', 3589, '36.86550', '-83.80050'), ('Bentley Station', 3589, '36.91780', '-83.93190'), ('Bertha Station', 1662, '36.92990', '-83.99070'), ('Bimble', 3589, '36.87690', '-83.82000'), ('Birdseye', 3589, '36.74290', '-83.93210'), ('Boone Heights', 3589, '36.85070', '-83.85450'), ('Brush Creek', 3589, '36.82240', '-83.84010'), ('Bryants Store', 3589, '36.77440', '-83.92120'), ('Cannon', 3589, '36.91720', '-83.85910'), ('Clate', 3589, '36.79890', '-83.96050'), ('Cranes Nest', 3589, '36.98950', '-83.87950'), ('Dewitt', 2093, '36.87700', '-83.73750'), ('Dishman Springs', 3589, '36.86890', '-83.95970'), ('Elys', 2093, '36.80590', '-83.75090'), ('Emanuel', 3589, '36.90630', '-83.93270'), ('Erose', 2093, '36.92780', '-83.61680'), ('Flat Lick', 2093, '36.82420', '-83.76900'), ('Fletcher', 3589, '37.00440', '-83.86960'), ('Fount', 3589, '36.98770', '-83.82870'), ('Garrich', 3589, '36.93250', '-83.93650'), ('Gibbs', 3589, '37.02040', '-83.89910'), ('Girdler', 3589, '36.93730', '-83.84110'), ('Gray', 1662, '36.94340', '-84.00570'), ('Green Road', 3589, '36.95960', '-83.83590'), ('Hammond', 3589, '36.95730', '-83.72710'), ('Haven', 1738, '37.01150', '-83.82050'), ('Heidrick', 3589, '36.88260', '-83.87840'), ('Himyar', 3589, '36.83300', '-83.79850'), ('Hinkle', 3589, '36.91350', '-83.81830'), ('Hubbs', 3589, '36.77730', '-83.88990'), ('Indian Creek', 3589, '36.87000', '-83.98230'), ('Jarvis', 3589, '36.95520', '-83.89150'), ('Kayjay', 3589, '36.74420', '-83.84820'), ('King', 3589, '36.79570', '-83.94110'), ('Knoxfork', 3589, '36.99260', '-83.92420'), ('Lowell', 3589, '36.90960', '-83.92920'), ('Mills', 2093, '36.92260', '-83.64240'), ('Moore Hill', 7742, '36.93490', '-84.08070'), ('Myrick', 3589, '36.80620', '-83.84110'), ('Old Flat Lick', 2093, '36.83840', '-83.77100'), ('Permon', 3589, '36.81010', '-83.98280'), ('Providence', 3589, '36.86700', '-83.90930'), ('Rossland', 1662, '36.92680', '-83.98760'), ('Salt Gum', 2093, '36.94800', '-83.70380'), ('Scalf', 2093, '36.91850', '-83.70010'), ('Siler', 1662, '36.94120', '-84.04000'), ('Sprule', 3589, '37.01500', '-83.84890'), ('Swan Lake', 3589, '36.82430', '-83.92880'), ('Swanpond', 3589, '36.83260', '-83.90170'), ('Tedders', 3589, '37.02000', '-83.87870'), ('Trosper', 3589, '36.78750', '-83.81590'), ('Walker', 2093, '36.88280', '-83.71580'), ('Warren', 3589, '36.75260', '-83.84440'), ('Wheeler', 2093, '36.72520', '-83.84320'), ('Wilton', 7742, '36.88840', '-84.04390'), ('Woollum', 1738, '37.02090', '-83.81780'), ('Yeager', 3589, '36.87400', '-83.83130')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC123': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Athertonville', 849, '37.63562', '-85.60413'), ('Attilla', 0, '37.50340', '-85.50636'), ('Boundary Oak', 0, '37.53034', '-85.73774'), ('Buffalo', 2874, '37.51200', '-85.69857'), ('Ginseng', 0, '37.50478', '-85.58108'), ('Gleanings', 144, '37.55840', '-85.53385'), ('Hodgenville', 2874, '37.57395', '-85.73996'), ('Jericho', 0, '37.51867', '-85.64830'), ('Leafdale', 0, '37.56339', '-85.66468'), ('Lyons', 849, '37.67784', '-85.61246'), ('Magnolia', 2874, '37.44395', '-85.74357'), ('Mathers Mill', 0, '37.54034', '-85.76913'), ('Maxine', 0, '37.46506', '-85.79552'), ('Mount Sherman', 0, '37.45256', '-85.66830'), ('Roanoke', 0, '37.67701', '-85.70579'), ('Talley', 0, '37.45061', '-85.84385'), ('Tanner', 0, '37.50950', '-85.78496'), ('Tonieville', 0, '37.60951', '-85.79607'), ('Upton', 654, '37.46506', '-85.89330')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC125': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Atlanta', 5757, '37.23250', '-84.04940'), ('Baldrock', 7742, '36.99030', '-84.28360'), ('Bernstadt', 5757, '37.15610', '-84.19470'), ('Billows', 228, '37.17080', '-84.29670'), ('Blackwater', 1738, '37.05310', '-83.89500'), ('Brock', 5757, '37.10970', '-84.00000'), ('Bunch', 5757, '37.09860', '-84.23640'), ('Bush', 1738, '37.09250', '-83.87030'), ('Camp Wildcat', 228, '37.26490', '-84.20080'), ('Cane Creek', 5757, '37.05580', '-83.92280'), ('Carmichael', 5757, '37.18690', '-84.13870'), ('Crawford', 589, '37.19440', '-83.95190'), ('Cruise', 228, '37.31830', '-84.12310'), ('Dorthae', 1662, '36.99330', '-84.10470'), ('East Bernstadt', 774, '37.18940', '-84.11830'), ('Fariston', 5757, '37.07000', '-84.05670'), ('Greenmount', 589, '37.24750', '-84.03080'), ('Hare', 5757, '37.20430', '-84.15990'), ('Hazel Patch', 228, '37.24440', '-84.19310'), ('Hightop', 1662, '37.03280', '-84.18780'), ('Holly Bay Recreation Area', 7742, '36.98460', '-84.25040'), ('Huxley', 7742, '36.95470', '-84.34310'), ('Keavy', 1662, '37.00120', '-84.16560'), ('Lake', 1738, '37.08940', '-83.88560'), ('Lamero', 228, '37.29010', '-84.14070'), ('Langnau', 5757, '37.17970', '-83.96690'), ('Lesbas', 5757, '37.07890', '-83.99560'), ('Levi Jackson Wilderness Rd Sp', 5757, '37.08150', '-84.04130'), ('Lida', 5757, '37.08220', '-83.93470'), ('Lily', 1662, '37.02380', '-84.07550'), ('London', 5692, '37.12800', '-84.08220'), ('London-Corbin Airport', 5757, '37.08680', '-84.07710'), ('Lynn Camp', 1662, '36.99380', '-84.00900'), ('Maplesville', 5757, '37.15000', '-84.02780'), ('Marydell', 1738, '37.10920', '-83.90890'), ('McHargue', 1662, '37.00530', '-84.01750'), ('McWhorter', 589, '37.23420', '-84.00000'), ('Mershons', 228, '37.28310', '-84.12580'), ('North Corbin', 1662, '36.96650', '-84.09470'), ('Oakley', 5757, '37.23830', '-84.09780'), ('Pittsburg', 5757, '37.16070', '-84.10770'), ('Rockcastle Springs', 7742, '37.01640', '-84.30450'), ('Sasser', 1738, '37.07140', '-83.89110'), ('Sublimity City', 5757, '37.10020', '-84.08630'), ('Templer', 228, '37.30230', '-84.12390'), ('Tuttle', 1662, '37.02000', '-83.95000'), ('Victory', 228, '37.25640', '-84.09700'), ('Vox', 7742, '36.98640', '-84.19920'), ('Wood Creek Lake', 228, '37.20330', '-84.18970')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYC127': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Blaine', 245, '38.02620', '-82.85410'), ('Louisa', 2018, '38.10940', '-82.60340'), ('Yatesville Lake State Park', 2018, '38.14650', '-82.68800')], 'partOfState': '', 'wfo': 'RLX'}, +'KYC129': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Airedale', 1193, '37.60250', '-83.63940'), ('Arvel', 878, '37.51830', '-83.88530'), ('Athol', 111, '37.55250', '-83.57280'), ('Banford', 1193, '37.51350', '-83.82060'), ('Beattyville', 1193, '37.58020', '-83.70720'), ('Belle Point', 1193, '37.56250', '-83.74810'), ('Canyon Falls', 1193, '37.57640', '-83.57750'), ('Caryton', 1193, '37.54400', '-83.77770'), ('Corgleton', 1193, '37.55260', '-83.71240'), ('Cressmont', 1193, '37.53080', '-83.79500'), ('Delvinta', 111, '37.50080', '-83.79390'), ('Earnestville', 1193, '37.49400', '-83.82930'), ('Enoch', 1193, '37.54330', '-83.67560'), ('Evelyn', 693, '37.61310', '-83.86050'), ('Fillmore', 424, '37.60410', '-83.55000'), ('Fincastle', 1193, '37.64850', '-83.64540'), ('Fixer', 1193, '37.67810', '-83.71830'), ('Greeley', 1193, '37.67640', '-83.75310'), ('Heidelberg', 1193, '37.55520', '-83.77890'), ('Idamay', 1193, '37.52110', '-83.76630'), ('Leeco', 1193, '37.71040', '-83.69430'), ('Lone', 111, '37.53000', '-83.60390'), ('Lower Buffalo', 111, '37.52780', '-83.68780'), ('Maloney', 1193, '37.58020', '-83.67800'), ('Monica', 1193, '37.58240', '-83.60010'), ('Mount Olive', 1193, '37.61400', '-83.73040'), ('Old Landing', 1193, '37.63730', '-83.80290'), ('Pinnacle', 1193, '37.62110', '-83.81750'), ('Primrose', 1193, '37.60220', '-83.60860'), ('Proctor', 1193, '37.57000', '-83.71390'), ('Standing Rock', 1193, '37.71440', '-83.70390'), ('St. Helens', 1193, '37.58280', '-83.64720'), ('Tallega', 1193, '37.55950', '-83.59270'), ('Union', 424, '37.63010', '-83.59690'), ('Vada', 424, '37.62230', '-83.59130'), ('White Ash', 1193, '37.55910', '-83.73520'), ('Whynot', 1193, '37.64180', '-83.78590'), ('Wild Dog', 111, '37.48880', '-83.82340'), ('Williba', 424, '37.62280', '-83.57010'), ('Willow Shoals', 1193, '37.59130', '-83.81340'), ('Yellow Rock', 1193, '37.57080', '-83.80500'), ('Zachariah', 1193, '37.70490', '-83.68370'), ('Zoe', 1193, '37.68120', '-83.68320')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC131': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Asher', 204, '37.04400', '-83.40180'), ('Bear Branch', 204, '37.16390', '-83.54860'), ('Big Fork', 204, '37.05250', '-83.25670'), ('Big Rock', 1101, '37.04360', '-83.20730'), ('Bobs Fork', 204, '37.16410', '-83.51850'), ('Causey', 204, '37.05760', '-83.28050'), ('Chappell', 204, '37.00960', '-83.34970'), ('Cinda', 204, '37.10860', '-83.29460'), ('Confluence', 204, '37.27180', '-83.38280'), ('Cutshin', 204, '37.09030', '-83.26100'), ('Daley', 4806, '37.13590', '-83.23260'), ('Dryhill', 204, '37.22310', '-83.37710'), ('Essie', 204, '37.06450', '-83.45360'), ('Frew', 4806, '37.18170', '-83.24690'), ('Hosea', 204, '37.13670', '-83.44270'), ('Hoskinston', 204, '37.07720', '-83.39170'), ('Hyden', 204, '37.16170', '-83.37360'), ('Kaliopi', 204, '37.23290', '-83.41510'), ('Lewis Creek', 766, '36.98990', '-83.31190'), ('Mosley Bend', 204, '37.27500', '-83.36000'), ('Mozelle', 766, '37.00080', '-83.39840'), ('Napier', 2081, '36.98420', '-83.28470'), ('Roark', 204, '37.02380', '-83.51670'), ('Sandy Fork', 257, '36.93620', '-83.50540'), ('Saylor', 257, '36.89920', '-83.46220'), ('Shoal', 204, '37.26840', '-83.43560'), ('Sizerock', 204, '37.22270', '-83.50460'), ('Smilax', 204, '37.13340', '-83.28260'), ('Spruce Pine', 257, '36.92330', '-83.44530'), ('Stinnett', 204, '37.09190', '-83.39660'), ('Thousandsticks', 204, '37.18500', '-83.42890'), ('Toulouse', 204, '37.24850', '-83.35350'), ('Warbranch', 257, '36.97430', '-83.44810'), ('Wendover', 204, '37.12630', '-83.36290'), ('Wooton', 204, '37.17900', '-83.30330'), ('Yeaddiss', 204, '37.07020', '-83.21890')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC133': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adamson', 2401, '37.20370', '-82.57830'), ('Arminta', 318, '37.16270', '-83.02130'), ('Baker', 840, '37.21120', '-82.72070'), ('Banks', 2611, '37.08280', '-83.02260'), ('Beefhide', 921, '37.23930', '-82.62670'), ('Bellcraft', 1600, '37.13650', '-82.82460'), ('Blackey', 318, '37.14020', '-82.97830'), ('Bluefield', 318, '37.13650', '-83.03010'), ('Burdine', 2401, '37.18980', '-82.60290'), ('Carbon Glow', 318, '37.17500', '-82.95010'), ('Carcassonne', 318, '37.17200', '-82.98810'), ('Chip', 840, '37.18530', '-82.71700'), ('Colly', 1600, '37.12460', '-82.78450'), ('Colson', 297, '37.22870', '-82.86130'), ('Craftsville', 840, '37.18120', '-82.75350'), ('Cromona', 840, '37.18640', '-82.69650'), ('Crown', 1600, '37.14530', '-82.84750'), ('David', 318, '37.16120', '-82.95000'), ('Day', 1600, '37.07120', '-82.84720'), ('Deane', 840, '37.24050', '-82.77260'), ('Defeated Creek', 2611, '37.05230', '-82.99180'), ('Democrat', 840, '37.23370', '-82.79220'), ('Dongola', 1600, '37.09190', '-82.84010'), ('Dunham', 2401, '37.19350', '-82.64580'), ('Ehkhorn Mine', 840, '37.22370', '-82.71200'), ('Elko', 318, '37.13880', '-82.98930'), ('Eolia', 1600, '37.05340', '-82.79200'), ('Ermine', 1600, '37.11970', '-82.79340'), ('Farraday', 1600, '37.16360', '-82.77140'), ('Fishpond Lake', 840, '37.16140', '-82.67690'), ('Fleming-Neon', 840, '37.19180', '-82.70380'), ('Flint', 2611, '37.05160', '-82.93170'), ('Gander', 318, '37.17560', '-83.00040'), ('Gaskill', 2401, '37.18490', '-82.61130'), ('Gordon', 2611, '37.00000', '-83.02390'), ('Hallie', 318, '37.10210', '-83.02240'), ('Haymond', 840, '37.18500', '-82.69260'), ('Hemphill', 840, '37.21550', '-82.70520'), ('Horn', 840, '37.20730', '-82.72900'), ('Hot Spot', 1600, '37.12760', '-82.91690'), ('Ice', 1600, '37.10860', '-82.85950'), ('Indian Bottom', 318, '37.14240', '-82.95940'), ('Isom', 1600, '37.18730', '-82.89950'), ('Jenkins', 2401, '37.17810', '-82.62660'), ('Jeremiah', 1600, '37.16750', '-82.92900'), ('Kings Creek', 900, '37.05270', '-82.91450'), ('Lester', 1600, '37.21210', '-82.80600'), ('Letcher', 318, '37.14580', '-82.95930'), ('Lewis Creek', 900, '36.99620', '-82.89740'), ('Lilley Cornett Woods', 2611, '37.08490', '-82.98950'), ('Linefork', 2611, '37.02000', '-82.95990'), ('Lowndes', 840, '37.19870', '-82.68570'), ('Lucastown', 1600, '37.20620', '-82.79610'), ('Maggard', 900, '37.01550', '-82.88250'), ('Marlowe', 1600, '37.13090', '-82.83110'), ('Mayking', 1600, '37.13580', '-82.76450'), ('McRoberts', 921, '37.21180', '-82.66800'), ('Millstone', 840, '37.16500', '-82.75120'), ('Neon Junction', 840, '37.17970', '-82.71450'), ('Oscaloosa', 1600, '37.10570', '-82.89400'), ('Oven Fork', 1600, '37.05880', '-82.80900'), ('Partridge', 900, '37.00820', '-82.89830'), ('Payne Gap', 2401, '37.15550', '-82.65870'), ('Polly', 1600, '37.20240', '-82.82390'), ('Potters Fork', 921, '37.18310', '-82.67350'), ('Premium', 1600, '37.12360', '-82.91890'), ('Red Star', 318, '37.13940', '-83.02020'), ('Roxana', 1600, '37.10920', '-82.94970'), ('Sackett', 1600, '37.20270', '-82.88500'), ('Seco', 840, '37.17370', '-82.73240'), ('Sergent', 1600, '37.14810', '-82.77010'), ('Skyline', 2611, '37.07580', '-82.98170'), ('Southdown', 1600, '37.16330', '-82.80410'), ('Thornton', 840, '37.15670', '-82.73970'), ('Tillie', 1600, '37.18130', '-82.86370'), ('Tolliver Town', 840, '37.18070', '-82.70900'), ('Trailer', 1600, '37.11790', '-82.88170'), ('Ulvah', 318, '37.12810', '-83.05260'), ('Van', 1600, '37.15180', '-82.87220'), ('Whitaker', 840, '37.17230', '-82.72120'), ('Whitco', 1600, '37.12010', '-82.85150'), ('Whitesburg', 1600, '37.11810', '-82.82570'), ('Winters', 840, '37.15480', '-82.76430'), ('Wright', 840, '37.15370', '-82.73090')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC135': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Camp Dix', 1731, '38.49000', '-83.27000'), ('Head Of Grassy', 1813, '38.40000', '-83.26000'), ('Tollesboro', 2223, '38.55915', '-83.57761'), ('Vanceburg', 1731, '38.59420', '-83.32100')], 'partOfState': 'northeast', 'wfo': 'ILN'}, +'KYC137': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Blue Lick', 0, '37.49091', '-84.70744'), ('Boneyville', 0, '37.50536', '-84.69161'), ('Broughtentown', 0, '37.38397', '-84.54327'), ('Chicken Bristle', 0, '37.48591', '-84.76995'), ('Crab Orchard', 842, '37.46453', '-84.50660'), ('Dog Walk', 842, '37.37703', '-84.50216'), ('Geneva', 0, '37.43952', '-84.74634'), ('Gilbert', 0, '37.57397', '-84.59411'), ('Halls Gap', 0, '37.46202', '-84.63328'), ('Highland', 0, '37.42813', '-84.65383'), ('Hubble', 0, '37.59702', '-84.65467'), ('Hustonville', 347, '37.47313', '-84.81578'), ('Jumbo', 0, '37.45813', '-84.68911'), ('Kings Mountain', 358, '37.37258', '-84.68800'), ('Logantown', 0, '37.56064', '-84.62966'), ('Maywood', 0, '37.48036', '-84.61689'), ('McKinney', 347, '37.45258', '-84.75911'), ('Milledgeville', 0, '37.52063', '-84.81384'), ('Moreland', 347, '37.50563', '-84.81328'), ('Mount Salem', 0, '37.41730', '-84.79939'), ('New Salem', 0, '37.40924', '-84.76745'), ('Ottenheim', 0, '37.42314', '-84.59577'), ('Preachersville', 842, '37.52730', '-84.53383'), ('Rowland', 3430, '37.52286', '-84.63161'), ('South Fork', 0, '37.40952', '-84.73800'), ('Stanford', 3430, '37.53119', '-84.66189'), ('Sugar Grove', 87, '37.45814', '-84.56633'), ('Turkeytown', 0, '37.42064', '-84.48688'), ('Turnersville', 0, '37.49036', '-84.73884'), ('Walnut Flat', 0, '37.49536', '-84.57883'), ('Waynesburg', 358, '37.33286', '-84.67161')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC139': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Carrsville', 64, '37.39770', '-88.37320'), ('Grand Rivers', 343, '37.00570', '-88.23590'), ('Ledbetter', 1700, '37.04810', '-88.49720'), ('Salem', 769, '37.26550', '-88.23950'), ('Smithland', 401, '37.13780', '-88.40330')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC141': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adairville', 920, '36.66754', '-86.85194'), ('Agnes', 0, '37.04838', '-87.02028'), ('Anderson', 0, '37.01810', '-86.79972'), ('Auburn', 1444, '36.86421', '-86.71027'), ('Beechland', 0, '37.04171', '-86.91250'), ('Cave Springs', 0, '36.79921', '-86.95333'), ('Chandlers Chapel', 0, '36.94921', '-86.79305'), ('Cooperstown', 0, '36.93032', '-86.88750'), ('Corinth', 1444, '36.78893', '-86.80389'), ('Costelow', 0, '36.99088', '-86.76777'), ('Crossroad', 0, '36.86671', '-87.02194'), ('Danby', 0, '36.88254', '-86.91944'), ('Deer Lick', 0, '37.01588', '-87.03666'), ('Dennis', 0, '36.84282', '-86.78722'), ('Diamond Springs', 0, '37.03560', '-86.97583'), ('Dot', 920, '36.67782', '-86.95250'), ('Edwards', 0, '36.95921', '-86.94083'), ('Epleys', 0, '36.92699', '-86.93861'), ('Everett', 0, '36.93643', '-87.05416'), ('Ferguson', 881, '36.77948', '-86.97722'), ('Gasper', 0, '36.95004', '-86.74194'), ('Gordonsville', 0, '36.84004', '-87.01889'), ('Hilltop', 0, '36.66421', '-86.77916'), ('Hollow Bill', 0, '37.05616', '-86.98833'), ('Homer', 0, '36.96143', '-86.83972'), ('Insco', 0, '36.98115', '-86.86444'), ('Jerico', 0, '36.99671', '-86.97750'), ('Justice', 0, '36.88115', '-87.05611'), ('Keysburg', 189, '36.65115', '-87.00805'), ('Lewisburg', 903, '36.98643', '-86.94722'), ('Lickskillet', 0, '36.73810', '-86.98972'), ('Lost City', 0, '36.97699', '-86.90500'), ('Oakville', 0, '36.74893', '-86.87555'), ('Old Volney', 0, '36.77421', '-87.01250'), ('Olmstead', 189, '36.75226', '-87.01500'), ('Russellville', 7149, '36.84532', '-86.88722'), ('Schley', 0, '36.68615', '-86.92000'), ('Schochoh', 0, '36.72282', '-86.79111'), ('South Union', 1444, '36.87643', '-86.65638'), ('Spa', 903, '36.96171', '-87.00472'), ('Whippoorwill', 0, '36.81671', '-87.00972'), ('Wolf Lick', 0, '37.01893', '-86.95611')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC143': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Eddyville', 2350, '37.07530', '-88.07930'), ('Kuttawa', 596, '37.06190', '-88.10960')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC145': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Lone Oak', 454, '37.03610', '-88.66610'), ('Paducah', 26307, '37.07260', '-88.63600'), ('Reidland', 4353, '37.00760', '-88.52560')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC147': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Beulah Heights', 1111, '36.80340', '-84.43640'), ('Blue Heron', 1586, '36.66840', '-84.54600'), ('Co Operative', 1586, '36.69280', '-84.60780'), ('Great Meadows Camp', 3502, '36.62880', '-84.72490'), ('Greenwood', 1111, '36.87470', '-84.49400'), ('Hollyhill', 1680, '36.66310', '-84.33030'), ('Honeybee', 1111, '36.84220', '-84.37320'), ('Marshes Siding', 1111, '36.74330', '-84.48120'), ('Parkers Lake', 1111, '36.84060', '-84.48050'), ('Pine Knot', 1680, '36.66390', '-84.43890'), ('Slavans', 1111, '36.75360', '-84.66560'), ('Stearns', 1586, '36.69500', '-84.47800'), ('Strunk', 1680, '36.62740', '-84.43490'), ('Whitley City', 1111, '36.72470', '-84.47540'), ('Wiborg', 1111, '36.80910', '-84.48950')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYC149': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Calhoun', 836, '37.54120', '-87.25920'), ('Island', 435, '37.44270', '-87.14760'), ('Livermore', 1482, '37.49160', '-87.13410'), ('Sacramento', 517, '37.41670', '-87.26710')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYC151': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arlington', 0, '37.76064', '-84.30771'), ('Baldwin', 0, '37.79675', '-84.42521'), ('Berea', 9851, '37.56869', '-84.29632'), ('Bighill', 0, '37.55453', '-84.20827'), ('Blue Grass', 0, '37.84758', '-84.33521'), ('Bobtown', 634, '37.61758', '-84.22910'), ('Brassfield', 0, '37.67425', '-84.14632'), ('Buggytown', 0, '37.63564', '-84.36910'), ('Bybee', 2843, '37.73314', '-84.12465'), ('Caleast', 0, '37.69036', '-84.33188'), ('College Hill', 0, '37.78675', '-84.12326'), ('Combs', 2843, '37.66090', '-84.10920'), ('Cottonburg', 0, '37.73064', '-84.46188'), ('Crow Valley', 0, '37.74036', '-84.41438'), ('Cuzick', 0, '37.83425', '-84.45355'), ('Doylesville', 0, '37.84425', '-84.16076'), ('Dreyfus', 0, '37.61730', '-84.17660'), ('Duluth', 0, '37.57953', '-84.16826'), ('Duncanon', 0, '37.65953', '-84.34799'), ('Edenton', 0, '37.76702', '-84.48466'), ('Elliston', 0, '37.74091', '-84.15521'), ('Hillcrest', 0, '37.76869', '-84.29160'), ('Kingston', 9851, '37.65036', '-84.24160'), ('Kirksville', 27152, '37.66536', '-84.40910'), ('Middletown', 0, '37.58980', '-84.29993'), ('Million', 0, '37.77980', '-84.38743'), ('Moberly', 0, '37.74175', '-84.18271'), ('Newby', 0, '37.76314', '-84.41521'), ('Panola', 0, '37.66092', '-84.11521'), ('Peytontown', 0, '37.66953', '-84.33132'), ('Redhouse', 27152, '37.83230', '-84.27215'), ('Reeds Crossing', 0, '37.73925', '-84.22243'), ('Richmond', 27152, '37.74786', '-84.29465'), ('Round Hill', 0, '37.67897', '-84.41605'), ('Ruthton', 0, '37.73286', '-84.43355'), ('Silver Creek', 0, '37.65730', '-84.36605'), ('Slate Lick', 0, '37.54647', '-84.31104'), ('Speedwell', 0, '37.67425', '-84.17521'), ('Stringtown', 0, '37.81980', '-84.41299'), ('Terrill', 0, '37.68619', '-84.25910'), ('Union City', 0, '37.79730', '-84.19771'), ('Valley View', 19680, '37.84619', '-84.43049'), ('Wallaceton', 0, '37.56814', '-84.36216'), ('Whites', 0, '37.63064', '-84.29938')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC153': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bethanna', 1604, '37.77530', '-83.18360'), ('Bloomington', 1604, '37.81690', '-83.14420'), ('Bradley', 1604, '37.71030', '-83.00670'), ('Brownlow', 1604, '37.79790', '-83.00920'), ('Burning Fork', 1604, '37.73330', '-83.02330'), ('Carver', 1604, '37.64480', '-83.04890'), ('Carver Station', 1604, '37.63180', '-83.05580'), ('Cisco', 1604, '37.83460', '-83.12810'), ('Conley', 1604, '37.75170', '-82.97830'), ('Conley Station', 1604, '37.66910', '-83.04240'), ('Coon', 1604, '37.83040', '-83.05820'), ('Cornelia', 1604, '37.66320', '-83.20450'), ('Cutuno', 1604, '37.71810', '-83.24330'), ('Cyrus', 1604, '37.79400', '-83.03830'), ('Dale', 1604, '37.69330', '-83.23180'), ('Duco', 1604, '37.60790', '-83.03030'), ('Elsie', 1604, '37.77830', '-83.13400'), ('Emma', 1604, '37.81320', '-83.05670'), ('Epson', 1604, '37.74470', '-83.21830'), ('Eugene', 1604, '37.68040', '-83.18590'), ('Ever', 1604, '37.85410', '-83.05460'), ('Falcon', 1604, '37.78970', '-83.00190'), ('Flat Fork', 1604, '37.83550', '-83.03320'), ('Foraker', 1604, '37.66000', '-83.13720'), ('Fredville', 1604, '37.60550', '-82.96500'), ('Fritz', 1604, '37.70140', '-83.15170'), ('Galdia', 1604, '37.63000', '-82.95920'), ('Gapville', 1604, '37.63000', '-82.95900'), ('Gifford', 1604, '37.76220', '-83.12210'), ('Grayfox', 1604, '37.86370', '-83.05350'), ('Gullett', 1604, '37.73900', '-83.12560'), ('Gunlock', 298, '37.54820', '-82.92560'), ('Gypsy', 1604, '37.66250', '-82.96390'), ('Hager', 1604, '37.74640', '-83.19940'), ('Haleburg', 1604, '37.87310', '-83.10380'), ('Harper', 3277, '37.79750', '-83.19700'), ('Hendricks', 1604, '37.68960', '-83.12490'), ('Ivyton', 1604, '37.70890', '-82.97860'), ('Kernie', 1604, '37.75670', '-83.16810'), ('Lacey', 1604, '37.86080', '-83.03080'), ('Lakesville', 1604, '37.71970', '-83.07010'), ('Leatha', 1604, '37.81580', '-83.01680'), ('Lickburg', 1604, '37.79190', '-83.08470'), ('Logville', 1604, '37.87220', '-83.10950'), ('Lykins', 3277, '37.77810', '-83.22190'), ('Maggard', 1604, '37.81880', '-83.09940'), ('Marshallville', 1604, '37.67810', '-82.98940'), ('Mary', 1604, '37.86090', '-83.08110'), ('Mashfork', 1604, '37.75920', '-82.99990'), ('Mason', 1604, '37.72060', '-83.05000'), ('Mid', 298, '37.52320', '-82.90110'), ('Netty', 3277, '37.74690', '-83.23860'), ('Orchard', 633, '37.56340', '-82.92550'), ('Ordway', 1604, '37.58910', '-82.96230'), ('Orient', 1604, '37.85010', '-83.10950'), ('Ova', 1604, '37.72530', '-83.17150'), ('Patton', 1604, '37.77930', '-83.15470'), ('Perlie', 1604, '37.79790', '-83.05500'), ('Plutarch', 1604, '37.84000', '-83.08850'), ('Puncheon', 1604, '37.69180', '-83.19640'), ('Quod', 1604, '37.84740', '-83.04300'), ('Royalton', 1604, '37.67580', '-83.02210'), ('Salyersville', 1604, '37.74680', '-83.06370'), ('Seitz', 1604, '37.69560', '-83.19650'), ('Skaggs', 1604, '37.68120', '-83.03330'), ('Stella', 1604, '37.73780', '-83.16610'), ('Stringtown', 1604, '37.76440', '-83.04750'), ('Sublett', 1604, '37.67780', '-83.03570'), ('Swampton', 1604, '37.65860', '-83.01140'), ('Tella', 1604, '37.82060', '-83.08570'), ('Tiptop', 1604, '37.61390', '-83.06110'), ('Waldo', 1604, '37.57660', '-82.97670'), ('West Royalton State Park', 1604, '37.68070', '-83.02990'), ('Wheelersburg', 1604, '37.82650', '-83.01080'), ('Wonnie', 1604, '37.80920', '-83.15420')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC155': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Belltown', 0, '37.53368', '-85.30524'), ('Bradfordsville', 304, '37.49424', '-85.14885'), ('Burkes Spring', 0, '37.64756', '-85.34829'), ('Calvary', 0, '37.51562', '-85.26246'), ('Dant', 0, '37.63590', '-85.45580'), ('Frogtown', 0, '37.59034', '-85.37246'), ('Gandertown', 0, '37.68312', '-85.38996'), ('Gravel Switch', 763, '37.57868', '-85.05218'), ('Greenbriar', 0, '37.49451', '-85.23135'), ('Holy Cross', 623, '37.67395', '-85.44691'), ('Jessietown', 0, '37.48090', '-85.32496'), ('Lebanon', 5718, '37.56979', '-85.25274'), ('Loretto', 623, '37.63534', '-85.40080'), ('Nerinx', 623, '37.66423', '-85.39941'), ('New Market', 5718, '37.50173', '-85.31080'), ('Penick', 0, '37.56840', '-85.15024'), ('Phillipsburg', 0, '37.45645', '-85.25996'), ('Poplar Corner', 0, '37.60840', '-85.14857'), ('Raywick', 144, '37.56034', '-85.43052'), ('Riley', 0, '37.55951', '-85.09885'), ('Saint Francis', 0, '37.62645', '-85.42774'), ('Saint Joseph', 0, '37.52201', '-85.38969'), ('Saint Mary', 0, '37.58062', '-85.34635'), ('Salleetown', 0, '37.45646', '-85.21107')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC157': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aurora', 564, '36.77660', '-88.14410'), ('Benton', 4197, '36.85290', '-88.35810'), ('Brewers', 4197, '36.77130', '-88.43880'), ('Calvert City', 2701, '37.03330', '-88.35290'), ('Hardin', 564, '36.76430', '-88.30150')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC159': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Add', 466, '37.91010', '-82.55210'), ('Andy', 284, '37.83150', '-82.47190'), ('Beauty', 284, '37.83960', '-82.43780'), ('Bradbury', 466, '37.81560', '-82.50450'), ('Calf Creek', 466, '37.92320', '-82.49540'), ('Coalpoint', 284, '37.78440', '-82.44460'), ('Davella', 466, '37.79580', '-82.57210'), ('Davisport', 466, '37.81460', '-82.59990'), ('Debord', 466, '37.82720', '-82.55200'), ('Delong', 466, '37.81030', '-82.56490'), ('Hode', 284, '37.88550', '-82.43000'), ('Inez', 466, '37.86610', '-82.53750'), ('Job', 466, '37.93320', '-82.53290'), ('Laura', 284, '37.72420', '-82.44170'), ('Lovely', 284, '37.82690', '-82.45000'), ('McClure', 284, '37.76560', '-82.48770'), ('Milo', 466, '37.91340', '-82.56160'), ('Moree', 284, '37.71880', '-82.50370'), ('Oppy', 342, '37.80160', '-82.38700'), ('Pevier', 466, '37.82670', '-82.56340'), ('Pilgrim', 284, '37.79800', '-82.42030'), ('Pleasant', 466, '37.73830', '-82.57390'), ('Preece', 466, '37.80180', '-82.51950'), ('Prince', 466, '37.78370', '-82.52490'), ('Stidham', 466, '37.88410', '-82.58300'), ('Threeforks', 284, '37.70640', '-82.46040'), ('Tomahawk', 466, '37.87030', '-82.59190'), ('Warfield', 284, '37.83870', '-82.42320'), ('Wells', 466, '37.89770', '-82.58120')], 'partOfState': 'northeast', 'wfo': 'JKL'}, +'KYC161': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Dover', 316, '38.75580', '-83.88340'), ('Lewisburg', 795, '38.55419', '-83.77047'), ('Maysville', 8993, '38.64051', '-83.74527'), ('Sardis', 149, '38.53420', '-83.95750'), ('Washington', 795, '38.61590', '-83.80810')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC163': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Andyville', 57, '38.03395', '-86.37248'), ('Battletown', 30, '38.06396', '-86.29386'), ('Beechland', 0, '38.08312', '-86.36081'), ('Brandenburg', 2049, '37.99896', '-86.16941'), ('Brandenburg Station', 0, '37.96896', '-86.14052'), ('Buck Grove', 0, '37.91896', '-86.12775'), ('Cedar Flat', 0, '38.11812', '-86.32164'), ('Concordia', 0, '38.05895', '-86.42803'), ('Ekron', 170, '37.92923', '-86.17941'), ('Flaherty', 4169, '37.83646', '-86.06552'), ('Garrett', 0, '37.89785', '-86.11302'), ('Grahamton', 0, '37.90285', '-86.02552'), ('Guston', 170, '37.89284', '-86.22192'), ('Haysville', 0, '37.90340', '-86.24247'), ('Hillgrove', 0, '37.87923', '-86.16386'), ('Hughes Landing', 0, '37.96479', '-86.02997'), ('Liberty', 0, '38.02812', '-86.31914'), ('Lodale', 0, '38.04312', '-86.28081'), ('Maples Corner', 0, '37.83312', '-86.13358'), ('Midway', 0, '37.95201', '-86.23858'), ('Muldraugh', 1298, '37.93702', '-85.99163'), ('Payneville', 1257, '37.98951', '-86.31303'), ('Pilcher Landing', 0, '37.99202', '-86.01746'), ('Rhodelia', 57, '38.00701', '-86.42053'), ('Roberta', 0, '38.11062', '-86.43776'), ('Rock Haven', 0, '37.94702', '-86.05469'), ('Sirocco', 95, '37.98923', '-86.27220'), ('Wolf Creek', 57, '38.10284', '-86.38970')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC165': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Artville', 625, '37.93500', '-83.47500'), ('Big Woods', 625, '37.99500', '-83.47000'), ('Cedar Groves', 1804, '37.96000', '-83.76000'), ('Clay Lick', 1804, '37.98000', '-83.77000'), ('Cornwell', 625, '37.95700', '-83.71400'), ('Dan', 625, '37.96500', '-83.46500'), ('Denniston', 625, '37.91550', '-83.53660'), ('Fagan', 625, '37.92000', '-83.70000'), ('Frenchburg', 551, '37.95480', '-83.62240'), ('Korea', 625, '37.94190', '-83.47860'), ('Mariba', 625, '37.91410', '-83.57690'), ('Means', 1804, '37.94810', '-83.76340'), ('Pomeroyton', 625, '37.87130', '-83.52200'), ('Ratlitt', 625, '38.00000', '-83.58000'), ('Rothwell', 625, '37.96000', '-83.69000'), ('Scranton', 625, '37.98720', '-83.52170'), ('Stoll', 424, '37.87000', '-83.51000'), ('Sudith', 625, '38.01830', '-83.63220'), ('Tabor', 625, '37.92000', '-83.66000'), ('Wellington', 561, '37.91530', '-83.50420')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC167': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bohon', 8014, '37.81174', '-84.91968'), ('Bondville', 0, '37.92174', '-84.87190'), ('Braxton', 0, '37.84147', '-84.80551'), ('Burgin', 874, '37.75341', '-84.76661'), ('Bushtown', 0, '37.73063', '-84.72911'), ('Cornishville', 0, '37.80035', '-84.99357'), ('Dixville', 0, '37.70591', '-84.94801'), ('Dugansville', 0, '37.87868', '-84.98496'), ('Duncan', 0, '37.84924', '-84.99023'), ('Ebenezer', 0, '37.87980', '-84.81495'), ('Harrodsburg', 8014, '37.76230', '-84.84329'), ('Jackson', 0, '37.82508', '-84.87079'), ('Kirkwood', 0, '37.91646', '-84.92329'), ('Mayo', 0, '37.87174', '-84.92495'), ('Nevada', 763, '37.69646', '-84.90968'), ('Oregon', 0, '37.91230', '-84.82356'), ('Riverview Estates', 0, '37.75674', '-84.86940'), ('Shakertown', 8014, '37.81897', '-84.73995'), ('Stewart', 0, '37.69118', '-85.00829'), ('Stringtown', 0, '37.77341', '-84.82328'), ('Talmage', 0, '37.85091', '-84.86940'), ('Terrapin', 0, '37.88424', '-84.93856'), ('Vanarsdell', 0, '37.89258', '-84.88051')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC169': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Beaumont', 1586, '36.87561', '-85.65191'), ('Beechville', 0, '37.06145', '-85.63275'), ('Cedar Flats', 0, '36.94645', '-85.61414'), ('Center', 224, '37.14228', '-85.69302'), ('Clarks Corner', 0, '37.04200', '-85.66108'), ('Cofer', 0, '36.95978', '-85.49024'), ('Cork', 0, '37.03756', '-85.58330'), ('Curtis', 0, '36.93311', '-85.57636'), ('Cyclone', 0, '36.83756', '-85.67942'), ('Echo', 0, '37.02783', '-85.74747'), ('Edmonton', 1586, '36.98006', '-85.61219'), ('Gascon', 1586, '37.00367', '-85.57108'), ('Goodluck', 0, '36.92533', '-85.64164'), ('Knob Lick', 1586, '37.07839', '-85.69441'), ('New Liberty', 0, '37.00755', '-85.69303'), ('Node', 0, '37.12922', '-85.64386'), ('Randolph', 0, '36.97089', '-85.71053'), ('Savoyard', 0, '37.11200', '-85.74108'), ('Summer Shade', 1586, '36.88422', '-85.70247'), ('Willow Shade', 0, '36.84784', '-85.60775'), ('Wisdom', 1586, '37.00394', '-85.71997')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC171': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Akersville', 236, '36.64755', '-85.93776'), ('Blythe', 0, '36.67645', '-85.54886'), ('Boles', 0, '36.61867', '-85.66442'), ('Bugtussle', 0, '36.62589', '-85.87581'), ('Emberton', 0, '36.71311', '-85.80636'), ('Flippin', 236, '36.72033', '-85.87414'), ('Forkton', 0, '36.74811', '-85.71970'), ('Fountain Run', 236, '36.71533', '-85.96581'), ('Freetown', 0, '36.68033', '-85.79720'), ('Gamaliel', 439, '36.63978', '-85.79664'), ('Grandview', 0, '36.71950', '-85.68719'), ('Gum Tree', 0, '36.72422', '-85.81942'), ('Harlan Crossroads', 0, '36.65311', '-85.70386'), ('Hestand', 2660, '36.65423', '-85.62942'), ('Jeffrey', 0, '36.75117', '-85.84053'), ('Lamb', 0, '36.75866', '-85.89914'), ('Meshack', 0, '36.73256', '-85.54886'), ('Mount Hermon', 0, '36.80672', '-85.82081'), ('Mud Lick', 2660, '36.75283', '-85.78053'), ('Otia', 0, '36.68784', '-85.56914'), ('Persimmon', 0, '36.80311', '-85.64247'), ('Raydure', 0, '36.65228', '-85.47913'), ('Rockbridge', 2660, '36.78395', '-85.68414'), ('Sulphur Lick', 0, '36.80533', '-85.73858'), ('Tompkinsville', 2660, '36.70228', '-85.69164'), ('Vernon', 0, '36.63700', '-85.50913')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC173': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bean', 1804, '37.94540', '-83.83640'), ('Camargo', 923, '37.99680', '-83.88960'), ('Coons Station', 923, '38.03080', '-83.87110'), ('Ewington', 5876, '38.08330', '-83.90140'), ('Gatewoods Station', 923, '38.04130', '-83.89420'), ('Grassy Lick', 5876, '38.08160', '-84.02000'), ('Hope', 1804, '38.01550', '-83.77300'), ('Howards Mile', 923, '38.06430', '-83.84730'), ('Jeffersonville', 1804, '37.96500', '-83.82810'), ('Judy', 5876, '38.12970', '-83.95860'), ('Klondike', 5876, '38.01960', '-83.99740'), ('Levee', 923, '37.97110', '-83.93530'), ('Lower Spencer', 923, '38.02890', '-83.84030'), ('Lucky Stop', 1804, '37.96400', '-83.81090'), ('Mount Sterling', 5876, '38.06040', '-83.94530'), ('Oggs Station', 1804, '38.02310', '-83.82450'), ('Prewitt', 5876, '38.02800', '-83.98110'), ('Sideview', 562, '38.11310', '-84.03670'), ('Stepstone', 1488, '38.08800', '-83.83030'), ('Stoops', 5876, '38.12810', '-83.91470'), ('Upper Spencer', 923, '38.02960', '-83.84760'), ('Wades Mill', 5876, '38.03650', '-84.01090'), ('Walkers Crossing', 1804, '38.02690', '-83.79640')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC175': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adele', 3277, '37.75720', '-83.30120'), ('Blairs Mills', 678, '38.08190', '-83.29230'), ('Blaze', 3277, '38.02140', '-83.33330'), ('Burg', 3277, '37.73930', '-83.26000'), ('Caney', 3277, '37.80060', '-83.25840'), ('Cannel City', 3277, '37.78980', '-83.27590'), ('Cottle', 3277, '37.88830', '-83.20310'), ('Crockett', 678, '37.98590', '-83.09210'), ('Dehart', 3277, '37.96420', '-83.33740'), ('Demund', 3277, '37.83250', '-83.33730'), ('Dingus', 1604, '37.90850', '-83.08990'), ('Ebon', 3277, '37.95410', '-83.43600'), ('Elamton', 3277, '37.93940', '-83.15400'), ('Elkfork', 678, '37.96440', '-83.13460'), ('Ezel', 3277, '37.89000', '-83.44440'), ('Florress', 3277, '37.88480', '-83.17710'), ('Gordon Ford', 3277, '37.88450', '-83.23570'), ('Grassy Creek', 3277, '37.86690', '-83.34500'), ('Greear', 3277, '37.87770', '-83.29820'), ('Henry', 3277, '37.91190', '-83.34390'), ('Holliday', 3277, '37.81080', '-83.22970'), ('Index', 3277, '37.89480', '-83.25830'), ('Jeptha', 678, '37.94240', '-83.09990'), ('Kellacey', 3277, '37.96030', '-83.39220'), ('Leisure', 3277, '38.04450', '-83.33330'), ('Lenox', 3277, '37.95660', '-83.20210'), ('Lewis', 3277, '37.82610', '-83.24920'), ('Liberty Road', 3277, '37.90840', '-83.29370'), ('Lick Branch', 3277, '37.95990', '-83.24040'), ('Licking River', 3277, '37.93040', '-83.29370'), ('Lizzielane', 3277, '37.82430', '-83.32070'), ('Malone', 3277, '37.87160', '-83.25830'), ('Matthew', 3277, '37.85590', '-83.15850'), ('Maytown', 424, '37.84700', '-83.47010'), ('Mima', 1604, '37.92230', '-83.03840'), ('Minefork', 1604, '37.86090', '-83.00710'), ('Mize', 3277, '37.86090', '-83.37250'), ('Moon', 678, '37.97440', '-83.04750'), ('Murphyfork', 424, '37.82820', '-83.42100'), ('New Coomer', 3277, '37.89120', '-83.35410'), ('Nickell', 3277, '37.83510', '-83.32640'), ('Omer', 3277, '37.92370', '-83.39930'), ('Ophir', 1604, '37.90730', '-83.01410'), ('Panama', 3277, '37.84730', '-83.30120'), ('Payton', 3277, '37.80400', '-83.29850'), ('Pekin', 3277, '37.88090', '-83.38260'), ('Pomp', 3277, '37.95940', '-83.28170'), ('Relief', 245, '37.94640', '-82.99830'), ('Rexville', 3277, '37.82400', '-83.37090'), ('Salem', 3277, '37.81170', '-83.33340'), ('Sellars', 3277, '37.79120', '-83.33700'), ('Silverhill', 1604, '37.90000', '-83.07030'), ('Stacy Fork', 3277, '37.83600', '-83.26740'), ('Steele', 3277, '37.97780', '-83.17180'), ('Twentysix', 3277, '37.94560', '-83.35930'), ('Wells Station', 3277, '37.85510', '-83.25010'), ('West Liberty', 3277, '37.91340', '-83.26570'), ('Wheel Rim', 3277, '37.72930', '-83.26370'), ('White Oak', 3277, '37.85840', '-83.20200'), ('Williams', 3277, '37.83890', '-83.19160'), ('Woodsbend', 3277, '37.91510', '-83.34390'), ('Wrigley', 3277, '38.01830', '-83.27140'), ('Yocum', 3277, '37.98340', '-83.32510'), ('Zoo', 3277, '37.98620', '-83.36350')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC177': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bremen', 365, '37.36110', '-87.21900'), ('Central City', 5893, '37.29550', '-87.12870'), ('Drakesboro', 627, '37.21650', '-87.04980'), ('Greenville', 4398, '37.20670', '-87.17850'), ('Powderly', 846, '37.23540', '-87.16230'), ('South Carrollton', 184, '37.33640', '-87.14040')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'KYC179': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Balltown', 0, '37.73867', '-85.50635'), ('Bardstown', 10374, '37.80923', '-85.46690'), ('Bellwood', 0, '37.79451', '-85.54746'), ('Bloomfield', 855, '37.91034', '-85.31662'), ('Blue Gap', 0, '37.68784', '-85.56552'), ('Boston', 0, '37.78756', '-85.67274'), ('Botland', 0, '37.77645', '-85.38913'), ('Bourbon Springs', 0, '37.85117', '-85.48301'), ('Chaplin', 855, '37.89784', '-85.22134'), ('Coxs Creek', 10374, '37.89867', '-85.47357'), ('Cravens', 0, '37.80867', '-85.54274'), ('Culvertown', 0, '37.71006', '-85.53385'), ('Deatsville', 10374, '37.89701', '-85.55912'), ('East Bardstown', 0, '37.83256', '-85.40885'), ('Fairfield', 0, '37.93367', '-85.38357'), ('Gethsemane', 0, '37.64617', '-85.54218'), ('Greenbrier', 0, '37.72951', '-85.45913'), ('Highgrove', 8485, '37.98312', '-85.48634'), ('Howardstown', 849, '37.57228', '-85.59191'), ('Hunters', 0, '37.86034', '-85.50107'), ('Lenore', 0, '37.93839', '-85.50940'), ('Nelsonville', 0, '37.73090', '-85.63968'), ('New Haven', 849, '37.65784', '-85.59107'), ('New Hope', 849, '37.63201', '-85.50830'), ('Samuels', 10374, '37.88284', '-85.53329'), ('Stiles', 0, '37.53951', '-85.58052'), ('Withrow', 0, '37.83506', '-85.47246'), ('Woodlawn', 268, '37.81312', '-85.36524')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC181': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Barefoot', 0, '38.42369', '-84.11687'), ('Barterville', 0, '38.37896', '-84.06882'), ('Carlisle', 1917, '38.31202', '-84.02743'), ('East Union', 0, '38.24008', '-83.98048'), ('Ellisville', 0, '38.39091', '-84.02076'), ('Headquarters', 0, '38.35841', '-84.11437'), ('Hooktown', 842, '38.35452', '-84.15160'), ('Milltown', 0, '38.33341', '-83.84603'), ('Moorefield', 295, '38.27313', '-83.93104'), ('Morning Glory', 0, '38.40063', '-84.14771'), ('Myers', 1917, '38.35091', '-83.95326'), ('Pleasant Valley', 0, '38.37924', '-83.93798'), ('Sprout', 0, '38.30202', '-83.88659'), ('Weston', 0, '38.29702', '-83.96298')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC183': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adaburg', 0, '37.59172', '-86.84777'), ('Aetnaville', 0, '37.67283', '-86.79054'), ('Arnold', 0, '37.39144', '-86.65888'), ('Askin', 0, '37.63839', '-86.63998'), ('Baizetown', 2544, '37.37060', '-86.71082'), ('Beaver Dam', 3033, '37.40199', '-86.87583'), ('Beda', 2571, '37.50783', '-86.94944'), ('Bells Run', 0, '37.59505', '-86.92833'), ('Buford', 0, '37.56422', '-86.98388'), ('Centertown', 416, '37.41727', '-86.99611'), ('Ceralvo', 0, '37.36504', '-87.03138'), ('Coffman', 0, '37.46310', '-87.10194'), ('Cool Springs', 417, '37.29338', '-86.88194'), ('Cromwell', 3033, '37.34033', '-86.78805'), ('Deanefield', 632, '37.65950', '-86.80693'), ('Dogwalk', 0, '37.40477', '-86.63026'), ('Dukehurst', 0, '37.51088', '-86.85777'), ('Dundee', 531, '37.55894', '-86.77277'), ('Ellmitch', 0, '37.62950', '-86.69971'), ('Equality', 0, '37.39588', '-87.06583'), ('Flint Springs', 0, '37.34338', '-86.71360'), ('Fordsville', 531, '37.63616', '-86.71749'), ('Hartford', 2571, '37.45116', '-86.90916'), ('Haynesville', 0, '37.68505', '-86.75666'), ('Heflin', 416, '37.50671', '-87.00694'), ('Herbert', 0, '37.71866', '-86.79943'), ('Highview', 0, '37.30588', '-86.84444'), ('Horse Branch', 0, '37.45588', '-86.67665'), ('Horton', 0, '37.43560', '-86.79888'), ('Jingo', 0, '37.49866', '-86.80832'), ('Ken Wye', 0, '37.34560', '-86.95333'), ('Kirtley', 0, '37.43699', '-87.10111'), ('Magan', 0, '37.60033', '-86.79943'), ('Matanzas', 0, '37.45060', '-87.05861'), ('McHenry', 417, '37.38199', '-86.92249'), ('Mount Pleasant', 0, '37.41116', '-86.75110'), ('Narrows', 0, '37.56727', '-86.72999'), ('Nineteen', 0, '37.32754', '-86.94666'), ('No Creek', 0, '37.48060', '-86.95833'), ('Oak Grove', 0, '37.34421', '-86.75471'), ('Olaton', 531, '37.52588', '-86.68749'), ('Pleasant Ridge', 0, '37.59838', '-86.98722'), ('Prentiss', 3033, '37.33477', '-86.84055'), ('Ralph', 0, '37.61811', '-86.83749'), ('Rob Roy', 0, '37.38699', '-86.79832'), ('Rockport', 334, '37.33393', '-86.99611'), ('Rosine', 3033, '37.45033', '-86.74138'), ('Sandefur Crossing', 0, '37.41588', '-86.83249'), ('Scottown', 0, '37.32310', '-86.96527'), ('Select', 0, '37.35977', '-86.74499'), ('Shreve', 0, '37.57866', '-86.62887'), ('Shultztown', 0, '37.29227', '-86.83777'), ('Simmons', 0, '37.35755', '-86.94222'), ('Smallhous', 0, '37.38004', '-87.09361'), ('Sulphur Springs', 0, '37.53561', '-86.77666'), ('Sunnydale', 0, '37.53616', '-86.81943'), ('Taffy', 0, '37.55394', '-86.89166'), ('White Run', 0, '37.44477', '-86.64193'), ('Windy Hill', 0, '37.41977', '-86.70527'), ('Wysox', 0, '37.27310', '-86.90777')], 'partOfState': 'northwest', 'wfo': 'LMK'}, +'KYC185': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ballardsville', 0, '38.36146', '-85.34579'), ('Belknap Beach', 0, '38.38284', '-85.62330'), ('Brownsboro', 1999, '38.35618', '-85.49829'), ('Buckner', 4000, '38.38368', '-85.43996'), ('Cedar Point', 0, '38.40784', '-85.47774'), ('Centerfield', 0, '38.35007', '-85.40746'), ('Crestwood', 0, '38.32424', '-85.47246'), ('Demplytown', 0, '38.38451', '-85.47440'), ('Floydsburg', 0, '38.31118', '-85.45968'), ('Goshen', 907, '38.40312', '-85.57413'), ('Greenhaven', 0, '38.44534', '-85.45413'), ('Halls Landing', 0, '38.45173', '-85.53079'), ('Harmony Village', 0, '38.40451', '-85.61996'), ('La Grange', 5676, '38.40757', '-85.37885'), ('Liro', 0, '38.40118', '-85.33857'), ('Oldham', 0, '38.49756', '-85.42107'), ('Orchard Grass Hills', 0, '38.32368', '-85.52135'), ('Park Lake', 0, '38.34507', '-85.47329'), ('Pewee Valley', 1436, '38.31062', '-85.48746'), ('River Bluff', 0, '38.37062', '-85.61163'), ('Russell Corner', 0, '38.45145', '-85.41162'), ('Skylight', 907, '38.43257', '-85.52163'), ('Westport', 5676, '38.47895', '-85.47496')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC187': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Gratz', 89, '38.47300', '-84.94640'), ('Monterey', 167, '38.42500', '-84.87130'), ('Owenton', 1387, '38.53860', '-84.83970')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC189': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arnett', 111, '37.41030', '-83.56860'), ('Blake', 111, '37.38690', '-83.73920'), ('Booneville', 111, '37.47640', '-83.67920'), ('Chestnut Gap', 111, '37.45820', '-83.65900'), ('Conkling', 111, '37.38140', '-83.69000'), ('Cowcreek', 111, '37.43860', '-83.61060'), ('Endee', 111, '37.43130', '-83.75300'), ('Eversole', 111, '37.44750', '-83.64280'), ('Gobbard', 111, '37.37840', '-83.63110'), ('Grass', 111, '37.52300', '-83.64790'), ('Green Hall', 589, '37.40670', '-83.82550'), ('Island City', 111, '37.36720', '-83.76710'), ('Lerose', 111, '37.48320', '-83.61540'), ('Levi', 111, '37.48030', '-83.72080'), ('Lucky Fork', 111, '37.36750', '-83.57000'), ('Major', 111, '37.41370', '-83.69790'), ('Mistletoe', 111, '37.31280', '-83.59220'), ('Pebworth', 111, '37.50410', '-83.73110'), ('Ricetown', 111, '37.39220', '-83.62230'), ('Scoville', 111, '37.45390', '-83.72000'), ('Sebastian', 111, '37.36080', '-83.62030'), ('Southfork', 111, '37.41630', '-83.66060'), ('Stay', 111, '37.51030', '-83.65190'), ('Sturgeon', 111, '37.41890', '-83.78460'), ('Taft', 111, '37.36160', '-83.68380'), ('Travellers Rest', 111, '37.44830', '-83.78720'), ('Turin', 111, '37.45970', '-83.68730'), ('Vincent', 111, '37.46830', '-83.77390'), ('Whoopflarea', 204, '37.28250', '-83.56030')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC191': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Butler', 613, '38.78790', '-84.37070'), ('Falmouth', 2058, '38.67380', '-84.33430')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC193': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ary', 4806, '37.37860', '-83.14670'), ('Avawam', 4806, '37.22230', '-83.27860'), ('Buckhorn', 204, '37.34510', '-83.47160'), ('Buckhorn Lake State Park', 204, '37.30490', '-83.44000'), ('Bulan', 4806, '37.29810', '-83.16670'), ('Chavies', 4806, '37.34570', '-83.35370'), ('Cornettsville', 318, '37.13160', '-83.07930'), ('Daisy', 318, '37.11680', '-83.09140'), ('Delphia', 2611, '37.02900', '-83.08670'), ('Diablock', 4806, '37.22830', '-83.17220'), ('Dice', 4806, '37.36280', '-83.22750'), ('Dwarf', 4806, '37.33710', '-83.12860'), ('Gays Creek', 204, '37.33690', '-83.40660'), ('Gilley', 2611, '36.99490', '-83.11160'), ('Hazard', 4806, '37.25300', '-83.19530'), ('Jeff', 318, '37.20590', '-83.13520'), ('Krypton', 204, '37.31090', '-83.33900'), ('Lamont', 4806, '37.35080', '-83.31350'), ('Leatherwood', 1101, '37.04040', '-83.17080'), ('Rowdy', 4806, '37.41500', '-83.20600'), ('Saul', 204, '37.27800', '-83.49380'), ('Slemp', 318, '37.07890', '-83.11140'), ('Vicco', 318, '37.21610', '-83.06120'), ('Viper', 4806, '37.18180', '-83.14870')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC195': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Argo', 1053, '37.48120', '-82.06460'), ('Ashcamp', 52, '37.26600', '-82.43460'), ('Belcher', 52, '37.34180', '-82.37400'), ('Belfry', 4154, '37.62350', '-82.26760'), ('Biggs', 1053, '37.41960', '-82.26670'), ('Board Tree', 1053, '37.53830', '-82.16210'), ('Boldman', 262, '37.52970', '-82.61190'), ('Canada', 4154, '37.60770', '-82.32570'), ('Cedarville', 52, '37.31410', '-82.35830'), ('Chloe', 6295, '37.45180', '-82.47640'), ('Coal Run', 577, '37.51290', '-82.55870'), ('Coleman', 1053, '37.48660', '-82.18640'), ('Conder', 4154, '37.67460', '-82.37720'), ('Dorton', 2401, '37.27670', '-82.57920'), ('Elkhorn City', 1060, '37.30290', '-82.34800'), ('Fedscreek', 1053, '37.40160', '-82.24610'), ('Fishtrap Lake', 52, '37.42510', '-82.36960'), ('Forest Hills', 4154, '37.64200', '-82.28040'), ('Garden Village', 6295, '37.42080', '-82.46430'), ('Gulnare', 262, '37.62800', '-82.54970'), ('Hardy', 4154, '37.61580', '-82.24200'), ('Hatfield Station', 1182, '37.72540', '-82.37970'), ('Heenan', 262, '37.66860', '-82.48760'), ('Heisey', 4154, '37.66470', '-82.38720'), ('Huddy', 4154, '37.59800', '-82.27520'), ('Jamboree', 1053, '37.50600', '-82.13460'), ('Jarad', 262, '37.66380', '-82.48100'), ('Jonancy', 921, '37.31510', '-82.58430'), ('Kimper', 6295, '37.49750', '-82.34990'), ('Lookout', 52, '37.31350', '-82.46750'), ('Majestic', 1053, '37.53650', '-82.10050'), ('Marrowbone', 52, '37.36770', '-82.41280'), ('McAndrews', 4154, '37.56820', '-82.26780'), ('McCombs', 262, '37.65390', '-82.58360'), ('Meta', 6295, '37.57100', '-82.43710'), ('Mouthcard', 1060, '37.38230', '-82.25480'), ('Myra', 921, '37.28970', '-82.60000'), ('Paw Paw', 1053, '37.43920', '-82.11090'), ('Phelps', 1053, '37.50910', '-82.16010'), ('Phyllis', 52, '37.44290', '-82.33450'), ('Pikeville', 6295, '37.47720', '-82.51380'), ('Piso', 262, '37.63610', '-82.46600'), ('Raccoon', 6295, '37.49130', '-82.44030'), ('Rockhouse', 52, '37.32830', '-82.45340'), ('Rural', 1182, '37.70450', '-82.36060'), ('Shelbiana', 6295, '37.42890', '-82.49290'), ('Shelby Gap', 2401, '37.21340', '-82.55660'), ('Sidney', 4154, '37.62120', '-82.35480'), ('Speight', 921, '37.27540', '-82.68150'), ('Toonerville', 1060, '37.36810', '-82.23060'), ('Turkey Creek', 4154, '37.67090', '-82.30670'), ('Varney', 4154, '37.63840', '-82.42180'), ('Virgie', 1042, '37.33410', '-82.57920'), ('Whitepost', 1182, '37.72850', '-82.34520'), ('Woodman', 1053, '37.51950', '-82.04920'), ('Zebulon', 6295, '37.51590', '-82.47440')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC197': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bowen', 3029, '37.84110', '-83.77190'), ('Cat Creek', 3029, '37.84500', '-83.80560'), ('Clay City', 1303, '37.86310', '-83.92840'), ('Haystack', 625, '37.84760', '-83.67900'), ('Knowlton', 3029, '37.78610', '-83.83750'), ('Lombard', 3029, '37.81780', '-83.74680'), ('Nada', 3029, '37.81460', '-83.71900'), ('Natural Bridge State Park', 424, '37.77520', '-83.68590'), ('Powell Valley', 1303, '37.86500', '-83.94780'), ('Rogers Chapel', 3029, '37.77420', '-83.78310'), ('Rosslyn', 3029, '37.84060', '-83.81220'), ('Slade', 3029, '37.79050', '-83.70600'), ('Stanton', 3029, '37.84690', '-83.85720'), ('Vaughns Mill', 1303, '37.81360', '-83.91670'), ('Virden', 1303, '37.88190', '-83.95500'), ('Waltersville', 1303, '37.86470', '-83.93440'), ('Westbend', 1303, '37.90580', '-83.96920')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC199': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alpine', 637, '36.92220', '-84.51900'), ('Bandy', 1193, '37.29330', '-84.50360'), ('Bent', 881, '37.11190', '-84.44470'), ('Bobtown', 634, '37.21450', '-84.53820'), ('Bronston', 637, '36.98590', '-84.61890'), ('Burnside', 637, '36.98730', '-84.60090'), ('Cains Store', 1850, '37.13250', '-84.85060'), ('Dabney', 634, '37.18390', '-84.55000'), ('Dykes', 881, '37.06860', '-84.43600'), ('Elihu', 881, '37.04520', '-84.59120'), ('Eubank', 358, '37.27930', '-84.65490'), ('Faubush', 11352, '37.06560', '-84.82660'), ('Ferguson', 881, '37.06670', '-84.59450'), ('General Burnside State Park', 637, '36.97450', '-84.60220'), ('Grade', 881, '37.07180', '-84.46150'), ('Hogue', 634, '37.16330', '-84.70970'), ('Magnum', 1850, '37.15220', '-84.83510'), ('Mount Victory', 881, '37.02920', '-84.38640'), ('Nancy', 11352, '37.07250', '-84.75090'), ('Naomi', 5981, '37.00890', '-84.79190'), ('Pointer', 634, '37.13280', '-84.76730'), ('Pulaski', 634, '37.20890', '-84.63890'), ('Pulaski County Park', 11352, '37.06520', '-84.70750'), ('Quinton', 637, '36.95320', '-84.62670'), ('Ruth', 881, '37.07620', '-84.52470'), ('Science Hill', 634, '37.17600', '-84.63640'), ('Shopville', 881, '37.15860', '-84.48000'), ('Sloans Valley', 637, '36.93830', '-84.53630'), ('Somerset', 11352, '37.08230', '-84.60980'), ('Somerset Pulaski County', 881, '37.05540', '-84.61360'), ('Stab', 634, '37.15140', '-84.75090'), ('Tateville', 637, '36.96390', '-84.58180'), ('Trimble', 637, '37.01010', '-84.73680'), ('Valley Oak', 634, '37.18920', '-84.47220'), ('Woodstock', 358, '37.26130', '-84.51670')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYC201': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Mount Olivet', 289, '38.53180', '-84.03720')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYC203': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bee Lick', 1193, '37.32840', '-84.50210'), ('Bloss', 2592, '37.21640', '-84.36000'), ('Boone', 9851, '37.51750', '-84.31670'), ('Brodhead', 1193, '37.40290', '-84.41690'), ('Bromo', 1193, '37.31540', '-84.41870'), ('Bummer', 2592, '37.42580', '-84.24610'), ('Burr', 2592, '37.34190', '-84.30500'), ('Cedarville', 228, '37.21340', '-84.32880'), ('Climax', 9851, '37.46940', '-84.22530'), ('Conway', 9851, '37.47780', '-84.33440'), ('Cooksburg', 228, '37.38720', '-84.18720'), ('Dillon', 228, '37.26030', '-84.22710'), ('Disputanta', 9851, '37.48840', '-84.25560'), ('Donaro', 228, '37.35140', '-84.21680'), ('Dudley Station', 228, '37.37090', '-84.25560'), ('Flat Rock', 2592, '37.36120', '-84.26630'), ('Gauley', 228, '37.31400', '-84.19720'), ('Goochland', 228, '37.43410', '-84.18850'), ('Gum Sulphur', 1193, '37.42690', '-84.45940'), ('Hansford', 2592, '37.26990', '-84.37050'), ('Hiatt', 1193, '37.41660', '-84.37640'), ('Horse Lick', 228, '37.33130', '-84.15580'), ('Hummel', 2592, '37.39610', '-84.28590'), ('Indian Lakes Park', 1193, '37.41140', '-84.46160'), ('Jep Hill', 228, '37.35380', '-84.18110'), ('Johnetta', 228, '37.41520', '-84.19940'), ('Lake Linville', 2592, '37.38800', '-84.34500'), ('Level Green', 2592, '37.28110', '-84.42610'), ('Livingston', 228, '37.29850', '-84.21670'), ('Luner', 228, '37.23770', '-84.28080'), ('Maretburg', 2592, '37.35540', '-84.38730'), ('Mount Vernon', 2592, '37.36310', '-84.34420'), ('Muellersville', 2592, '37.38580', '-84.30710'), ('Orlando', 2592, '37.37160', '-84.26860'), ('Ottowa', 1193, '37.36170', '-84.45670'), ('Pine Hill', 228, '37.32870', '-84.26330'), ('Pongo', 228, '37.22220', '-84.32340'), ('Quail', 1193, '37.32720', '-84.45470'), ('Renfro Valley', 2592, '37.38780', '-84.33170'), ('Robinet', 228, '37.37590', '-84.17760'), ('Rockford', 9851, '37.51460', '-84.26880'), ('Roundstone', 2592, '37.43860', '-84.31680'), ('Sand Hill', 228, '37.28930', '-84.26340'), ('Sand Springs', 2592, '37.29770', '-84.35840'), ('Sinks', 228, '37.33650', '-84.23200'), ('Snider', 9851, '37.49680', '-84.32430'), ('Spiro', 2592, '37.34230', '-84.39970'), ('Wabo', 2592, '37.31320', '-84.38970'), ('Wellhope', 2592, '37.31700', '-84.31870'), ('Wildie', 2592, '37.42330', '-84.30220'), ('Willailla', 1193, '37.30510', '-84.46280'), ('Withers', 228, '37.34590', '-84.22580')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYC205': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bangor', 251, '38.05000', '-83.44400'), ('Bluestone', 251, '38.15190', '-83.50900'), ('Brandy', 5914, '38.15710', '-83.45600'), ('Christy', 5914, '38.18920', '-83.37280'), ('Clearfield', 5914, '38.16490', '-83.43270'), ('Cogswell', 251, '38.09620', '-83.48980'), ('Craney', 5914, '38.07710', '-83.35580'), ('Cranston', 5914, '38.26330', '-83.43570'), ('Crix', 5914, '38.15570', '-83.37460'), ('Elliottville', 1813, '38.18280', '-83.27580'), ('Fannin Valley', 678, '38.13620', '-83.22670'), ('Farley', 678, '38.16750', '-83.22620'), ('Farmers', 251, '38.14280', '-83.54610'), ('Freestone', 251, '38.14790', '-83.51660'), ('Gates', 5914, '38.23480', '-83.36660'), ('Haldeman', 5914, '38.25280', '-83.31860'), ('Hamm', 5914, '38.12490', '-83.31160'), ('Hays Crossing', 5914, '38.24110', '-83.44860'), ('Hilda', 5914, '38.23840', '-83.50780'), ('Lakeview Heights', 251, '38.15210', '-83.50450'), ('Lick Fork', 5914, '38.09630', '-83.41110'), ('Minor', 678, '38.12980', '-83.26480'), ('Morehead', 5914, '38.19010', '-83.44220'), ('Munson', 5914, '38.23060', '-83.45760'), ('Paragon', 251, '38.04770', '-83.39890'), ('Pelfrey', 5914, '38.11300', '-83.38510'), ('Ramey', 251, '38.18060', '-83.57130'), ('Rodburn', 5914, '38.19780', '-83.41090'), ('Triplett', 5914, '38.29310', '-83.39610'), ('Vale', 5914, '38.19230', '-83.29560'), ('Wagner', 678, '38.13600', '-83.28410'), ('Wagner Store', 678, '38.16750', '-83.26840'), ('Waltz', 5914, '38.31600', '-83.44320')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYC207': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bryan', 0, '36.92951', '-85.20385'), ('Creelsboro', 1624, '36.88506', '-85.19746'), ('Decatur', 0, '37.12535', '-84.99801'), ('Eli', 0, '37.04396', '-84.96440'), ('Esto', 0, '37.00423', '-85.11079'), ('Fonthill', 0, '37.08396', '-85.00356'), ('Helm', 0, '36.89562', '-85.15273'), ('Honey Acre', 0, '37.11285', '-84.97467'), ('Horntown', 0, '37.06785', '-85.00551'), ('Indian Hills', 0, '36.99285', '-84.93356'), ('Jabez', 5981, '36.98702', '-84.89356'), ('Jamestown', 1624, '36.98479', '-85.06301'), ('Jericho', 0, '37.08646', '-85.04912'), ('Karlus', 0, '36.99396', '-85.02634'), ('Long Bottom', 0, '36.88229', '-85.12968'), ('Manntown', 0, '36.87840', '-85.16079'), ('Middletown', 5744, '37.02062', '-85.07607'), ('Old Olga', 0, '36.92562', '-85.16857'), ('Olga', 1624, '36.95090', '-85.16024'), ('Ono', 0, '36.98868', '-84.96662'), ('Ribbon', 0, '36.88034', '-85.24024'), ('Rose Crossroads', 0, '36.97590', '-85.12051'), ('Rowena', 0, '36.87784', '-85.10634'), ('Royville', 0, '37.06673', '-85.10579'), ('Russell Springs', 2399, '37.05618', '-85.08857'), ('Salem', 2399, '37.06896', '-84.98551'), ('Sano', 0, '37.10840', '-85.10357'), ('Sewellton', 0, '36.93618', '-85.10496'), ('Sycamore Flat', 0, '37.12396', '-85.04329'), ('Vinnie', 0, '37.01091', '-84.86911'), ('Webbs Cross Roads', 0, '37.10924', '-85.05357'), ('Whittle', 0, '37.02201', '-84.96162')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC209': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Biddle', 0, '38.34952', '-84.60744'), ('Boydtown', 0, '38.28424', '-84.50272'), ('Clabber Bottom', 0, '38.19369', '-84.52439'), ('Davis', 263, '38.37424', '-84.47216'), ('Delaplain', 0, '38.27368', '-84.54855'), ('Double Culvert', 0, '38.35952', '-84.56411'), ('Duval', 0, '38.24646', '-84.64133'), ('Georgetown', 18080, '38.20980', '-84.55883'), ('Great Crossing', 0, '38.21452', '-84.60522'), ('Herdon', 0, '38.17841', '-84.59383'), ('Josephine', 0, '38.39868', '-84.64994'), ('Lancelot Estates', 0, '38.18341', '-84.62328'), ('Longlick', 0, '38.34257', '-84.65828'), ('Mallard Point', 0, '38.31785', '-84.57605'), ('Minorsville', 0, '38.32952', '-84.70356'), ('Moon Lake Estates', 0, '38.28730', '-84.56133'), ('Muddy Ford', 0, '38.30924', '-84.50244'), ('Newtown', 18080, '38.22035', '-84.46994'), ('New Zion', 18080, '38.17924', '-84.48855'), ('Oxford', 18080, '38.26841', '-84.50300'), ('Paynes Depot', 0, '38.14202', '-84.62355'), ('Porter', 0, '38.38202', '-84.60522'), ('Rogers Gap', 0, '38.30452', '-84.53605'), ('Sadieville', 263, '38.38924', '-84.53744'), ('Shiff', 0, '38.24063', '-84.59605'), ('Skinnersburg', 0, '38.30618', '-84.64217'), ('Stamping Ground', 566, '38.27174', '-84.68634'), ('Stone Hedge Estates', 0, '38.24868', '-84.57022'), ('Stonewall', 0, '38.43924', '-84.56467'), ('Suterville', 0, '38.36813', '-84.70356'), ('Turkey Foot', 878, '38.33841', '-84.51105'), ('Watkinsville', 0, '38.24313', '-84.72634'), ('White Sulphur', 0, '38.20507', '-84.70217'), ('Zion Hill', 2447, '38.12008', '-84.63772')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYC211': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bagdad', 869, '38.26229', '-85.05773'), ('Chestnut Grove', 102, '38.30007', '-85.26385'), ('Clay Village', 0, '38.19257', '-85.10718'), ('Conner', 0, '38.22368', '-85.39024'), ('Cropper', 869, '38.31229', '-85.11329'), ('Elmburg', 0, '38.32118', '-85.07134'), ('Finchville', 1281, '38.15368', '-85.31273'), ('Graefenburg', 27741, '38.15590', '-85.01356'), ('Harrisonville', 9014, '38.08840', '-85.06718'), ('Hatton', 0, '38.22590', '-85.00662'), ('Hemp Ridge', 0, '38.14840', '-85.11884'), ('Hooper', 0, '38.17479', '-85.15690'), ('Jacksonville', 0, '38.27424', '-85.01301'), ('Joyes', 0, '38.20979', '-85.29107'), ('Junte', 0, '38.08118', '-85.09773'), ('L S Park', 0, '38.19562', '-85.39968'), ('Middletown Heights', 0, '38.21590', '-85.24218'), ('Montclair', 0, '38.22007', '-85.32885'), ('Mulberry', 0, '38.26507', '-85.13412'), ('Old Christianburg', 0, '38.28146', '-85.08495'), ('Olive Branch', 0, '38.12562', '-85.26495'), ('Peytona', 10085, '38.18118', '-85.06106'), ('Shelbyville', 10085, '38.21201', '-85.22357'), ('Simpsonville', 1281, '38.22257', '-85.35523'), ('Southville', 10085, '38.11007', '-85.18190'), ('Todds Point', 1281, '38.28424', '-85.34579'), ('Veachland', 0, '38.21146', '-85.19746'), ('Veech', 0, '38.12007', '-85.32107'), ('Waddy', 10085, '38.13702', '-85.07440')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC213': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Flat Rock', 2592, '36.67587', '-86.56194'), ('Franklin', 7996, '36.72226', '-86.57722'), ('Geddes', 0, '36.65671', '-86.54972'), ('Gold City', 323, '36.75448', '-86.44749'), ('Hickory Flat', 0, '36.70782', '-86.46194'), ('Highland', 0, '36.70671', '-86.43916'), ('Hillsdale', 0, '36.79698', '-86.47638'), ('Middleton', 0, '36.75088', '-86.73472'), ('Neosheo', 0, '36.71199', '-86.67861'), ('Peden Mill', 0, '36.68115', '-86.52555'), ('Prices Mill', 3611, '36.68143', '-86.73000'), ('Providence', 3611, '36.66615', '-86.67750'), ('Salmons', 0, '36.77837', '-86.56305'), ('Schweizer', 0, '36.67088', '-86.63388'), ('Temperance', 0, '36.77698', '-86.43110'), ('Turnertown', 0, '36.77476', '-86.65527')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC215': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Crenshaw', 0, '38.05478', '-85.46690'), ('Elk Creek', 1009, '38.10034', '-85.37107'), ('Little Mount', 1009, '38.06146', '-85.25134'), ('Mount Eden', 0, '38.05618', '-85.15106'), ('Normandy', 0, '38.09812', '-85.34273'), ('Rivals', 0, '38.09757', '-85.30440'), ('Taylorsville', 1009, '38.03173', '-85.34245'), ('Wakefield', 855, '37.97173', '-85.30801'), ('Waterford', 1009, '38.03895', '-85.43718'), ('Wilsonville', 0, '38.12729', '-85.40690'), ('Yoder', 0, '38.06062', '-85.34495')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC217': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Acton', 0, '37.34701', '-85.24802'), ('Arista', 0, '37.36868', '-85.30468'), ('Atchison', 0, '37.30756', '-85.30052'), ('Badger', 0, '37.45451', '-85.53135'), ('Bengal', 0, '37.35923', '-85.45719'), ('Burdick', 0, '37.27367', '-85.37607'), ('Campbellsville', 10498, '37.34340', '-85.34191'), ('Durhamtown', 0, '37.39979', '-85.41385'), ('Elk Horn', 10498, '37.31645', '-85.28524'), ('Finley', 0, '37.46145', '-85.33941'), ('Hatcher', 0, '37.29479', '-85.36635'), ('Hibernia', 0, '37.45895', '-85.55997'), ('Hobson', 10498, '37.42562', '-85.36885'), ('Mac', 0, '37.40006', '-85.51052'), ('Mannsville', 304, '37.37257', '-85.19663'), ('Maple', 0, '37.46423', '-85.50219'), ('Merrimac', 0, '37.41257', '-85.12857'), ('Pitman', 0, '37.37812', '-85.48941'), ('Romine', 0, '37.23562', '-85.35024'), ('Saloma', 10498, '37.41201', '-85.39274'), ('South Campbellsville', 0, '37.33340', '-85.32552'), ('Speck', 0, '37.30673', '-85.18774'), ('Spurlington', 0, '37.41229', '-85.27468'), ('Sweeneyville', 0, '37.35229', '-85.39913'), ('White Rose', 0, '37.42117', '-85.46108'), ('Willowtown', 0, '37.45201', '-85.42191'), ('Wooleyville', 0, '37.37923', '-85.24690'), ('Wrights', 0, '37.31256', '-85.39996'), ('Yuma', 10498, '37.28034', '-85.24163')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC219': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Allegre', 1984, '36.92860', '-87.21720'), ('Allensville', 189, '36.71710', '-87.06840'), ('Clifty', 1984, '36.99520', '-87.14770'), ('Elkton', 1984, '36.81010', '-87.15800'), ('Guthrie', 1469, '36.64740', '-87.17070'), ('Trenton', 419, '36.72280', '-87.26320')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'KYC221': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Cadiz', 2373, '36.86970', '-87.82330'), ('Canton', 2373, '36.79880', '-87.96080'), ('Linton', 2373, '36.68660', '-87.91860'), ('Rockcastle', 2373, '36.89970', '-87.98720')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYC223': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bedford', 677, '38.59256', '-85.31773'), ('Milton', 525, '38.72367', '-85.36940'), ('Monitor', 0, '38.65478', '-85.26634'), ('Mount Pleasant', 0, '38.61312', '-85.38385'), ('Providence', 0, '38.57451', '-85.22107'), ('Trout', 0, '38.63867', '-85.40885'), ('Wises Landing', 0, '38.57312', '-85.40829')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC225': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Breckinridge Center', 1874, '37.68270', '-87.86310'), ('Morganfield', 3494, '37.68420', '-87.90690'), ('Sturgis', 2030, '37.54590', '-87.98730'), ('Uniontown', 1064, '37.77330', '-87.93220'), ('Waverly', 297, '37.70970', '-87.81530')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYC227': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alvaton', 49296, '36.87338', '-86.35305'), ('Anna', 0, '37.11643', '-86.42304'), ('Barren River', 0, '37.04921', '-86.51666'), ('Benleo', 0, '37.11393', '-86.54416'), ('Blue Level', 0, '36.97754', '-86.54110'), ('Bowling Green', 49296, '36.99032', '-86.44360'), ('Boyce', 49296, '36.83199', '-86.37944'), ('Bristow', 0, '37.01865', '-86.35999'), ('Browning', 0, '36.94699', '-86.60972'), ('Buffalo Fork', 0, '36.99949', '-86.67333'), ('Claypool', 260, '36.90588', '-86.24082'), ('Crestmoor', 0, '36.97171', '-86.46832'), ('Delafield', 0, '37.01115', '-86.44582'), ('Drake', 0, '36.83615', '-86.40971'), ('Girkin', 0, '37.06754', '-86.35832'), ('Glenmore', 0, '37.16838', '-86.39887'), ('Gotts', 0, '36.97282', '-86.31388'), ('Greencastle', 0, '37.09171', '-86.49554'), ('Greenhill', 0, '36.90810', '-86.31582'), ('Greenwood', 0, '36.94032', '-86.41999'), ('Guy', 0, '37.12393', '-86.61305'), ('Hadley', 87, '37.05977', '-86.60694'), ('Hardcastle', 0, '36.94171', '-86.32888'), ('Hays', 784, '37.03144', '-86.13887'), ('Hydro', 0, '36.97560', '-86.15637'), ('Kepler', 0, '36.97477', '-86.20054'), ('Loving', 0, '37.02032', '-86.29110'), ('Martinsville', 0, '36.92449', '-86.21471'), ('Matlock', 0, '36.83282', '-86.46610'), ('Memphis Junction', 0, '36.94226', '-86.48916'), ('Motley', 0, '36.90754', '-86.28804'), ('Mount Victor', 0, '36.97921', '-86.39499'), ('Oakland', 260, '37.04199', '-86.24832'), ('Petros', 0, '36.89726', '-86.59666'), ('Plano', 49296, '36.88032', '-86.41832'), ('Plum Springs', 447, '37.01838', '-86.38138'), ('Polkville', 0, '36.97254', '-86.27082'), ('Pondsville', 0, '36.99449', '-86.16526'), ('Richardsville', 49296, '37.10477', '-86.47082'), ('Rich Pond', 323, '36.89421', '-86.50944'), ('Riverside', 87, '37.15893', '-86.54360'), ('Rockfield', 323, '36.91032', '-86.56444'), ('Rockland', 0, '37.08977', '-86.58388'), ('Sand Hill', 0, '37.10504', '-86.38582'), ('Smiths Grove', 784, '37.05255', '-86.20776'), ('Sunnyside', 0, '37.02838', '-86.30749'), ('Three Forks', 784, '36.95310', '-86.20387'), ('Three Springs', 0, '36.91671', '-86.43694'), ('Tuckertown', 0, '37.07643', '-86.26137'), ('Woodburn', 323, '36.84254', '-86.52749')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYC229': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Battle', 0, '37.77868', '-85.02857'), ('Bearwallow', 0, '37.70367', '-85.31746'), ('Booker', 0, '37.78201', '-85.29996'), ('Briartown', 0, '37.69395', '-85.24246'), ('Brush Grove', 0, '37.84312', '-85.18024'), ('Cardwell', 0, '37.82424', '-85.03412'), ('Cisselville', 0, '37.69340', '-85.27690'), ('Croakes', 0, '37.77673', '-85.33218'), ('Fredericktown', 0, '37.75895', '-85.34190'), ('Hardesty', 0, '37.80201', '-85.21329'), ('Jenkinsville', 0, '37.73201', '-85.03968'), ('Jimtown', 0, '37.66979', '-85.20940'), ('Litsey', 0, '37.76951', '-85.19274'), ('Mackville', 206, '37.73674', '-85.06746'), ('Manton', 0, '37.71478', '-85.38524'), ('Maud', 855, '37.82145', '-85.29662'), ('Mooresville', 0, '37.79895', '-85.26524'), ('Pleasant Grove', 0, '37.75173', '-85.17246'), ('Polin', 0, '37.81923', '-85.20885'), ('Pottsville', 0, '37.64729', '-85.06690'), ('Pulliam', 0, '37.84590', '-85.14968'), ('Rineltown', 0, '37.65951', '-85.15607'), ('Saint Catharine', 0, '37.70867', '-85.25774'), ('Seaville', 0, '37.88340', '-85.03884'), ('Sharpsville', 0, '37.85535', '-85.06746'), ('Simstown', 0, '37.63395', '-85.17774'), ('Springfield', 2634, '37.68534', '-85.22218'), ('Tablow', 0, '37.86479', '-85.01412'), ('Tatham Springs', 0, '37.86590', '-85.12385'), ('Texas', 206, '37.65562', '-85.11024'), ('Thompsonville', 0, '37.72701', '-85.13690'), ('Valley Hill', 0, '37.75089', '-85.26218'), ('Willisburg', 304, '37.80979', '-85.12635')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYC231': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Barrier', 5981, '36.76890', '-84.76720'), ('Betsey', 5981, '36.90360', '-84.74310'), ('Burfield', 5981, '36.72640', '-84.79090'), ('Cabell', 5981, '36.83110', '-85.00690'), ('Cooper', 5981, '36.77110', '-84.86140'), ('Coopersville', 5981, '36.76040', '-84.73800'), ('Delta', 637, '36.86490', '-84.65840'), ('Denney', 637, '36.81330', '-84.65690'), ('Frazer', 637, '36.95640', '-84.70500'), ('Gregory', 5981, '36.82940', '-84.70190'), ('Griffin', 5981, '36.70430', '-84.72930'), ('Hidalgo', 5981, '36.73560', '-84.94750'), ('Kidder', 637, '36.91500', '-84.65170'), ('Kidds Crossing', 5981, '36.75640', '-84.68000'), ('Mill Springs', 5981, '36.93190', '-84.77920'), ('Monticello', 5981, '36.84050', '-84.84760'), ('Mount Pisgah', 5981, '36.65890', '-84.81470'), ('Oil Valley', 5981, '36.77440', '-84.79830'), ('Parmleysville', 5981, '36.68420', '-84.75390'), ('Parnell', 5981, '36.86780', '-84.94530'), ('Powersburg', 2220, '36.70420', '-84.96530'), ('Ritner', 1111, '36.79250', '-84.64000'), ('Rockeybranch', 5981, '36.73240', '-84.73300'), ('Slickford', 5981, '36.69750', '-84.89010'), ('Steubenville', 5981, '36.88750', '-84.80280'), ('Sunnybrook', 2220, '36.65700', '-84.97580'), ('Susie', 5981, '36.77640', '-84.95640'), ('Zula', 5981, '36.76720', '-84.97940')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYC233': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Clay', 1179, '37.47690', '-87.82040'), ('Dixon', 632, '37.51720', '-87.69070'), ('Providence', 3611, '37.39920', '-87.75020'), ('Sebree', 1558, '37.60400', '-87.52860'), ('Slaughters', 238, '37.49130', '-87.50120'), ('Wheatcroft', 173, '37.48930', '-87.86120')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYC235': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ayers', 2447, '36.63040', '-84.22900'), ('Bark Camp', 7742, '36.91340', '-84.25530'), ('Barton', 7742, '36.93500', '-84.12990'), ('Bon', 5143, '36.72270', '-84.19100'), ('Bounty', 5143, '36.72670', '-84.26760'), ('Carpenter', 3589, '36.71510', '-83.97140'), ('Clio', 5143, '36.81690', '-84.19930'), ('Corbin', 7742, '36.93740', '-84.10740'), ('Cumberland Falls', 1111, '36.84070', '-84.33840'), ('Deering', 7742, '36.88100', '-84.19920'), ('Dixie', 5143, '36.69610', '-84.05450'), ('Duckrun', 1680, '36.73590', '-84.31570'), ('Emlyn', 5143, '36.70470', '-84.14250'), ('Faber', 7742, '36.87630', '-84.13220'), ('Fairview', 2447, '36.59960', '-84.11250'), ('Gatliff', 2447, '36.67880', '-84.02140'), ('Gausdale', 3589, '36.75750', '-83.97570'), ('Goins', 3589, '36.69970', '-83.94020'), ('Goldbug', 5143, '36.79450', '-84.17360'), ('Grove', 7742, '36.93050', '-84.22330'), ('Jellico Creek', 5143, '36.68690', '-84.23260'), ('Julip', 5143, '36.74210', '-84.06630'), ('Krupp', 5143, '36.78700', '-84.25030'), ('Liberty', 5143, '36.76460', '-84.20340'), ('Lot', 2447, '36.60040', '-84.08870'), ('Louden', 5143, '36.75170', '-84.02840'), ('Lucky', 5143, '36.73110', '-84.06740'), ('Mountain Ash', 2447, '36.65720', '-84.12910'), ('Nevisdale', 5143, '36.68490', '-84.04410'), ('Packard', 2447, '36.66680', '-84.05570'), ('Perkins', 5143, '36.78430', '-84.06190'), ('Pleasant View', 5143, '36.67860', '-84.12950'), ('Polly Camp', 2447, '36.66460', '-84.04440'), ('Red Ash', 2447, '36.61610', '-84.12250'), ('Redbird', 5143, '36.76150', '-84.21960'), ('Rockholds', 5143, '36.82920', '-84.11660'), ('Rye', 7742, '36.92440', '-84.18730'), ('Saxton', 2447, '36.63320', '-84.10950'), ('Siler', 3589, '36.69830', '-83.96250'), ('Suttons Mill', 5143, '36.74300', '-84.10180'), ('Verne', 5143, '36.71790', '-84.07010'), ('Walden', 5143, '36.84590', '-84.16820'), ('Wilkerson', 2447, '36.59850', '-83.97150'), ('Williamsburg', 5143, '36.73830', '-84.16750'), ('Wofford', 5143, '36.78120', '-84.13490'), ('Woodbine', 7742, '36.90450', '-84.08830'), ('Yaden', 5143, '36.73690', '-84.09800'), ('Youngs Creek', 5143, '36.86560', '-84.24090'), ('Zion Hill', 2447, '36.60950', '-84.23710')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYC237': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Baptist', 424, '37.73140', '-83.47930'), ('Belknap', 2490, '37.72040', '-83.29380'), ('Bethany', 424, '37.65030', '-83.47360'), ('Booth', 424, '37.69560', '-83.63200'), ('Burkhart', 2490, '37.70670', '-83.27480'), ('Calaboose', 424, '37.78310', '-83.52970'), ('Campton', 424, '37.73520', '-83.54730'), ('Daysboro', 3277, '37.79340', '-83.37560'), ('Flat', 424, '37.65420', '-83.54610'), ('Gillmore', 424, '37.73780', '-83.36970'), ('Glencairn', 424, '37.76430', '-83.67000'), ('Gosneyville', 424, '37.80000', '-83.48990'), ('Grannie', 424, '37.69680', '-83.58570'), ('Hazel Green', 424, '37.79800', '-83.41560'), ('Helechawa', 3277, '37.76620', '-83.33990'), ('Hollonville', 424, '37.66850', '-83.46750'), ('Jenson', 424, '37.77750', '-83.63000'), ('Koomer Ridge Camping Ground', 424, '37.78320', '-83.63250'), ('Landsaw', 424, '37.72770', '-83.45160'), ('Lane', 424, '37.66710', '-83.48490'), ('Lee City', 3277, '37.73920', '-83.33310'), ('Lexie', 424, '37.72890', '-83.40390'), ('Lower Gillmore', 424, '37.76410', '-83.36970'), ('Malaga', 424, '37.71350', '-83.42750'), ('Mary', 424, '37.66710', '-83.53650'), ('Pence', 2490, '37.63490', '-83.47380'), ('Pine Ridge', 424, '37.76310', '-83.61280'), ('Red River Gorge', 424, '37.82490', '-83.61770'), ('Rogers', 424, '37.74400', '-83.63580'), ('Rosefork', 2490, '37.69860', '-83.33600'), ('Shockey', 2490, '37.69100', '-83.33190'), ('Stillwater', 424, '37.75640', '-83.48440'), ('Toliver', 424, '37.81360', '-83.45780'), ('Torrent', 424, '37.71690', '-83.66230'), ('Trent', 424, '37.77150', '-83.46160'), ('Upper Gilmore', 2490, '37.72440', '-83.36500'), ('Valeria', 424, '37.83000', '-83.51670'), ('Vortex', 424, '37.69720', '-83.52720'), ('Whisman', 424, '37.69550', '-83.65490')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYC239': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bonita', 0, '38.08591', '-84.70800'), ('Clifton', 0, '38.08619', '-84.82606'), ('Davistown', 0, '38.14146', '-84.65161'), ('Duckers', 27741, '38.16452', '-84.78384'), ('Faywood', 0, '38.10285', '-84.64161'), ('Firmantown', 0, '38.05980', '-84.68883'), ('Gaybourn', 0, '38.04285', '-84.66661'), ('McKees Crossroads', 0, '38.12091', '-84.77606'), ('Midway', 0, '38.15091', '-84.68383'), ('Millville', 27741, '38.13702', '-84.82189'), ('Milner', 0, '38.03341', '-84.80717'), ('Mortonsville', 0, '37.97202', '-84.75634'), ('Mundys Landing', 0, '37.85424', '-84.77078'), ('Nonesuch', 5905, '37.90619', '-84.75550'), ('Pinckard', 0, '37.97730', '-84.68161'), ('Pisgah', 0, '38.05674', '-84.65494'), ('Troy', 5905, '37.91008', '-84.69467'), ('Versailles', 7511, '38.05258', '-84.72995'), ('Wallace', 0, '38.12119', '-84.69217')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'LAC001': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Branch', 4756, '30.34860', '-92.26750'), ('Church Point', 4756, '30.40390', '-92.21450'), ('Crowley', 14225, '30.21260', '-92.37590'), ('Egan', 807, '30.23670', '-92.50580'), ('Estherwood', 807, '30.18110', '-92.46320'), ('Evangeline', 721, '30.26220', '-92.57060'), ('Iota', 1376, '30.32650', '-92.49480'), ('Mermentau', 721, '30.18500', '-92.58500'), ('Midland', 807, '30.18110', '-92.50310'), ('Mire', 1672, '30.30000', '-92.19390'), ('Morse', 759, '30.12090', '-92.49800'), ('Rayne', 8552, '30.23820', '-92.26710'), ('Richard', 4756, '30.42200', '-92.31300')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAC003': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Elizabeth', 574, '30.86830', '-92.79280'), ('Grant', 574, '30.78830', '-92.94830'), ('Kinder', 2148, '30.48650', '-92.84870'), ('Leblanc', 209, '30.50890', '-92.94890'), ('Mittie', 1853, '30.70670', '-92.90670'), ('Oakdale', 8137, '30.81840', '-92.65650'), ('Oberlin', 1853, '30.61830', '-92.76430'), ('Reeves', 209, '30.51990', '-93.04390')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAC005': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Donaldsonville', 7605, '30.09810', '-90.99670'), ('Geismer', 1108, '30.20420', '-91.02250'), ('Gonzales', 8156, '30.21680', '-90.92360'), ('Prairieville', 5631, '30.30280', '-90.97190'), ('Sorrento', 1227, '30.18830', '-90.86580')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC007': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Labadieville', 1811, '29.82360', '-90.95640'), ('Napoleonville', 686, '29.93760', '-91.02670'), ('Paincourtville', 884, '29.99140', '-91.05390'), ('Pierre Part', 3239, '29.95760', '-91.20890')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC009': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bordelonville', 922, '31.10530', '-91.90720'), ('Bunkie', 4662, '30.95360', '-92.18670'), ('Centerpoint', 1007, '31.24800', '-92.21000'), ('Cottonport', 2316, '30.98830', '-92.05290'), ('Dupont', 281, '30.92940', '-91.94810'), ('Effie', 5537, '31.21580', '-92.15560'), ('Evergreen', 314, '30.95400', '-92.10600'), ('Hamburg', 922, '31.03060', '-91.93140'), ('Hessmer', 642, '31.05360', '-92.12110'), ('Mansura', 1573, '31.05800', '-92.05080'), ('Marksville', 5537, '31.12680', '-92.06310'), ('Moreauville', 922, '31.03330', '-91.98040'), ('Plaucheville', 281, '30.96460', '-91.98290'), ('Simmesport', 2239, '30.98190', '-91.81440')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAC011': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bundick Lake', 9808, '30.74640', '-93.10720'), ('De Ridder', 9808, '30.84570', '-93.29100'), ('Dry Creek', 209, '30.66890', '-93.04530'), ('Fields', 3398, '30.52610', '-93.57470'), ('Junction', 1126, '30.83810', '-93.50890'), ('Longville', 209, '30.60500', '-93.23170'), ('Merryville', 1126, '30.75350', '-93.53260'), ('Oretta', 3398, '30.52580', '-93.43720'), ('Ragley', 209, '30.51250', '-93.23220'), ('Singer', 1126, '30.65470', '-93.41220'), ('Sugartown', 574, '30.83970', '-93.01470')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAC013': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Arcadia', 3041, '32.55100', '-92.92460'), ('Bienville', 262, '32.36130', '-92.97630'), ('Bryceland', 114, '32.44380', '-92.98960'), ('Castor', 209, '32.25410', '-93.16700'), ('Gibsland', 1119, '32.53900', '-93.05330'), ('Jamestown', 149, '32.33760', '-93.20530'), ('Lucky', 355, '32.24350', '-93.01280'), ('Mount Lebanon', 73, '32.50290', '-93.04930'), ('Ringgold', 1660, '32.32600', '-93.28440'), ('Saline', 296, '32.16400', '-92.97700')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC015': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Benton', 2035, '32.69190', '-93.74010'), ('Bossier City', 56461, '32.51860', '-93.66380'), ('Eastwood', 3374, '32.56170', '-93.56620'), ('Haughton', 2792, '32.53010', '-93.50630'), ('Plain Dealing', 1071, '32.90680', '-93.69890'), ('Red Chute', 5984, '32.57350', '-93.61160')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC017': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Belcher', 272, '32.75330', '-93.83510'), ('Blanchard', 2050, '32.59200', '-93.88610'), ('Gilliam', 178, '32.82730', '-93.84270'), ('Greenwood', 2458, '32.44140', '-93.97380'), ('Hosston', 387, '32.88370', '-93.88280'), ('Ida', 258, '33.00210', '-93.89500'), ('Mooringsport', 833, '32.68280', '-93.96160'), ('Oil City', 1219, '32.74470', '-93.97490'), ('Rodessa', 307, '32.97170', '-93.99200'), ('Shreveport', 200145, '32.47160', '-93.79780'), ('Vivian', 4031, '32.87310', '-93.98670')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC019': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bell City', 2663, '30.11310', '-92.96250'), ('Carlyss', 4049, '30.17580', '-93.36960'), ('De Quincy', 3398, '30.44830', '-93.44350'), ('Gillis', 10535, '30.37360', '-93.20080'), ('Hayes', 2663, '30.10860', '-92.92000'), ('Iowa', 2663, '30.23720', '-93.01270'), ('Lake Charles', 71757, '30.21090', '-93.20290'), ('Lebleu Settlement', 2663, '30.27670', '-93.08110'), ('Moss Bluff', 10535, '30.30410', '-93.20380'), ('Starks', 1218, '30.31530', '-93.66170'), ('Sulphur', 20512, '30.22950', '-93.35640'), ('Vinton', 3338, '30.19720', '-93.58050'), ('Westlake', 4668, '30.25110', '-93.25890')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAC021': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Clarks', 1071, '32.02860', '-92.13970'), ('Columbia', 477, '32.10150', '-92.07720'), ('Grayson', 531, '32.04850', '-92.11150')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAC023': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Cameron', 1965, '29.79760', '-93.29960'), ('Constance Beach', 1699, '29.77500', '-93.57940'), ('Creole', 1965, '29.79580', '-93.11110'), ('Grand Chenier', 1965, '29.76670', '-92.97500'), ('Grand Lake', 7215, '30.03060', '-93.27190'), ('Hackberry', 1699, '29.96830', '-93.43380'), ('Holly Beach', 1965, '29.78500', '-93.45920'), ('Johnson Bayou', 58724, '29.77110', '-93.65830'), ('Klondike', 3007, '30.03060', '-92.63280'), ('Lacassine National', 0, '29.99000', '-92.93000'), ('Rockefeller Wildlife Refuge', 0, '29.68000', '-92.76000'), ('Rutherford Beach', 1965, '29.77500', '-93.12500'), ('Sabine National Wildlife Refuge', 0, '29.90000', '-93.58000')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAC025': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Harrisonburg', 746, '31.76700', '-91.82380'), ('Jonesville', 2469, '31.62280', '-91.83050'), ('Sicily Island', 453, '31.84970', '-91.65920')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC027': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Athens', 262, '32.65110', '-93.02590'), ('Haynesville', 2679, '32.96690', '-93.13780'), ('Homer', 3788, '32.79360', '-93.05870'), ('Lisbon', 162, '32.78810', '-92.86550')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC029': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Clayton', 858, '31.72100', '-91.53970'), ('Ferriday', 3723, '31.63450', '-91.55530'), ('Ridgecrest', 801, '31.60190', '-91.52970'), ('Vidalia', 4543, '31.56830', '-91.44050'), ('West Ferriday', 1541, '31.64020', '-91.57320')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC031': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Grand Cane', 191, '32.08450', '-93.80940'), ('Keachi', 277, '32.17570', '-93.91620'), ('Logansport', 1630, '31.97400', '-93.99410'), ('Longstreet', 163, '32.09680', '-93.95010'), ('Mansfield', 5582, '32.03380', '-93.70240'), ('South Mansfield', 352, '32.01850', '-93.72290'), ('Stanley', 145, '31.96350', '-93.90350'), ('Stonewall', 1668, '32.26400', '-93.81640')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC033': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Baker', 13793, '30.58550', '-91.15700'), ('Baton Rouge', 227818, '30.44900', '-91.12600'), ('Gardere', 8992, '30.35720', '-91.13460'), ('Greenwell Spring', 4763, '30.57940', '-90.99420'), ('Oak Hills Place', 7996, '30.36670', '-91.08690'), ('Pride', 1011, '30.69360', '-90.97810'), ('Westminster', 2515, '30.40710', '-91.08980'), ('Zachary', 11275, '30.66110', '-91.15210')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC035': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Lake Providence', 5104, '32.81060', '-91.18440')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC037': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Clinton', 1998, '30.86110', '-91.01500'), ('Felps', 1998, '30.97690', '-90.91860'), ('Jackson', 4130, '30.83420', '-91.21020'), ('Norwood', 337, '30.96450', '-91.10650'), ('Slaughter', 1011, '30.71890', '-91.14160')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC039': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Basile', 1660, '30.49500', '-92.59580'), ('Beaver', 8137, '30.79560', '-92.57190'), ('Chataignier', 383, '30.56750', '-92.31540'), ('Mamou', 3566, '30.63480', '-92.41760'), ('Pine Prairie', 1087, '30.78290', '-92.42290'), ('Reddell', 3566, '30.67390', '-92.42610'), ('St. Landry', 4662, '30.84440', '-92.25810'), ('Turkey Creek', 356, '30.87400', '-92.41600'), ('Ville Platte', 8145, '30.69000', '-92.28030')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAC041': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Baskin', 188, '32.25930', '-91.74780'), ('Gilbert', 561, '32.05060', '-91.65540'), ('Winnsboro', 5344, '32.16010', '-91.72050'), ('Wisner', 1140, '31.98090', '-91.65510')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC043': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Colfax', 1659, '31.51890', '-92.70570'), ('Dry Prong', 421, '31.57860', '-92.52930'), ('Georgetown', 301, '31.75930', '-92.38100'), ('Montgomery', 787, '31.66450', '-92.88920'), ('Pollock', 376, '31.52460', '-92.40760')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAC045': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Avery Island', 2168, '29.90330', '-91.91030'), ('Jeanerette', 5997, '29.91630', '-91.67530'), ('Jefferson Island', 2168, '29.97690', '-91.97720'), ('Lake Fausse Pointe', 938, '30.01560', '-91.65140'), ('Loreauville', 938, '30.05910', '-91.73860'), ('Lydia', 1079, '29.92450', '-91.78240'), ('New Iberia', 32623, '30.00510', '-91.81720'), ('Weeks Island', 1079, '29.80750', '-91.80690')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAC047': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bayou Sorrel', 7064, '30.16170', '-91.33560'), ('Carville', 1108, '30.22390', '-91.10450'), ('Grosse Tete', 670, '30.41440', '-91.43520'), ('Maringouin', 1262, '30.49110', '-91.51830'), ('Plaquemine', 7064, '30.28320', '-91.24050'), ('Ramah', 753, '30.40220', '-91.50720'), ('White Castle', 1946, '30.16070', '-91.14930')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC049': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Chatham', 623, '32.30890', '-92.45120'), ('East Hodge', 366, '32.27690', '-92.71400'), ('Eros', 202, '32.39220', '-92.42430'), ('Hodge', 492, '32.27170', '-92.72910'), ('Jonesboro', 3914, '32.23680', '-92.71000'), ('North Hodge', 436, '32.28410', '-92.71620'), ('Quitman', 168, '32.34990', '-92.72150')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAC051': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Avondale', 5441, '29.90210', '-90.19160'), ('Barataria', 1333, '29.71560', '-90.12410'), ('Bridge City', 8323, '29.93380', '-90.16140'), ('Gretna', 17423, '29.91400', '-90.05250'), ('Harahan', 9885, '29.93700', '-90.20370'), ('Harvey', 22226, '29.88600', '-90.06730'), ('Jean Lafitte', 2137, '29.74950', '-90.10610'), ('Kenner', 70517, '29.98000', '-90.25000'), ('Lafitte', 1576, '29.68860', '-90.09710'), ('Marrero', 36165, '29.88500', '-90.11430'), ('Metairie', 146136, '29.99760', '-90.17740'), ('Terrytown', 25430, '29.90000', '-90.02830'), ('Timberlane', 11405, '29.87730', '-90.03200'), ('Waggaman', 9435, '29.93760', '-90.23370'), ('Westwego', 10763, '29.90490', '-90.14280')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC053': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Elton', 1261, '30.48160', '-92.69710'), ('Fenton', 380, '30.36350', '-92.91680'), ('Hathaway', 10986, '30.34940', '-92.67140'), ('Jennings', 10986, '30.22290', '-92.65840'), ('Lacassine', 2663, '30.23530', '-92.92140'), ('Lake Arthur', 3007, '30.07980', '-92.67740'), ('Roanoke', 3380, '30.23670', '-92.74690'), ('Topsy', 10535, '30.40920', '-93.12220'), ('Welsh', 3380, '30.23550', '-92.81210')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAC055': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Broussard', 5874, '30.15010', '-91.97010'), ('Carencro', 6120, '30.31050', '-92.03660'), ('Duson', 1672, '30.23220', '-92.19190'), ('Lafayette', 110257, '30.21530', '-92.02950'), ('Milton', 642, '30.10360', '-92.07000'), ('Scott', 7870, '30.23770', '-92.09050'), ('Youngsville', 3992, '30.09990', '-91.99250')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAC057': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Cut Off', 5635, '29.52940', '-90.33460'), ('Galliano', 7356, '29.43100', '-90.30270'), ('Golden Meadow', 2193, '29.38770', '-90.27340'), ('Larose', 7306, '29.57080', '-90.37450'), ('Leeville', 2193, '29.23890', '-90.20750'), ('Lockport', 2624, '29.64040', '-90.53800'), ('Mathews', 2003, '29.68720', '-90.56140'), ('Raceland', 10224, '29.71810', '-90.59680'), ('Thibodaux', 14431, '29.79000', '-90.82090')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC059': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Jena', 2971, '31.68760', '-92.12580'), ('Midway', 1505, '31.68510', '-92.15120'), ('Olla', 1417, '31.89980', '-92.23760'), ('Tullos', 419, '31.82020', '-92.32910'), ('Urania', 700, '31.86390', '-92.29050')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAC061': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Choudrant', 582, '32.53030', '-92.51770'), ('Dubach', 800, '32.69800', '-92.65600'), ('Grambling', 4693, '32.52700', '-92.71160'), ('Ruston', 20546, '32.53180', '-92.63960'), ('Simsboro', 684, '32.53320', '-92.78300'), ('Vienna', 424, '32.60860', '-92.65180')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAC063': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Denham Springs', 8757, '30.47970', '-90.95930'), ('Killian', 1053, '30.35020', '-90.57830'), ('Livingston', 1342, '30.50220', '-90.74520'), ('Springfield', 395, '30.42650', '-90.54260'), ('Walker', 4801, '30.48440', '-90.86600'), ('Watson', 8757, '30.57560', '-90.95310'), ('Whitehall', 945, '30.28330', '-90.70030')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC065': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Delta', 239, '32.32380', '-90.92320'), ('Mound', 12, '32.33680', '-91.02150'), ('Richmond', 499, '32.38780', '-91.18240'), ('Tallulah', 9189, '32.40740', '-91.18920')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC067': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bastrop', 12988, '32.77450', '-91.90930'), ('Bonita', 335, '32.91990', '-91.67490'), ('Collinston', 327, '32.68880', '-91.87150'), ('Mer Rouge', 721, '32.77690', '-91.79430'), ('Oak Ridge', 142, '32.62470', '-91.77330')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC069': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Ashland', 291, '32.11630', '-93.11460'), ('Campti', 1057, '31.89790', '-93.11500'), ('Clarence', 516, '31.82000', '-93.02860'), ('Goldonna', 457, '32.02040', '-92.91200'), ('Natchez', 583, '31.67400', '-93.04530'), ('Natchitoches', 17865, '31.75550', '-93.09770'), ('Powhatan', 141, '31.87410', '-93.20330'), ('Provencal', 708, '31.65270', '-93.20030'), ('Robeline', 183, '31.69180', '-93.30330')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC071': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('East New Orleans', 484674, '30.06580', '-89.93140'), ('Lake Catherine', 6261, '30.11420', '-89.70920'), ('New Orleans', 484674, '29.97000', '-90.08300')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC073': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Brownsville-Bawcom', 7397, '32.48380', '-92.16390'), ('Claiborne', 9830, '32.54220', '-92.19670'), ('Monroe', 53107, '32.51170', '-92.08490'), ('Richwood', 2115, '32.44660', '-92.07250'), ('Sterlington', 1276, '32.69060', '-92.06480'), ('Swartz', 4247, '32.56930', '-91.98610'), ('West Monroe', 13250, '32.51480', '-92.14850')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAC075': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Belle Chasse', 9848, '29.84590', '-90.00390'), ('Boothville', 2220, '29.32330', '-89.39580'), ('Buras', 3358, '29.34210', '-89.49650'), ('Empire', 2211, '29.41190', '-89.61060'), ('Myrtle Grove', 1576, '29.63720', '-89.94920'), ('Pointe A La Hache', 3115, '29.57610', '-89.79170'), ('Port Sulphur', 3115, '29.49440', '-89.70850'), ('Venice', 2220, '29.27690', '-89.35470')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC077': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Batchelor', 659, '30.84030', '-91.66140'), ('Lettsworth', 2239, '30.93330', '-91.70470'), ('Livonia', 1339, '30.56490', '-91.55010'), ('Lottie', 933, '30.55610', '-91.64170'), ('Morganza', 659, '30.73660', '-91.59070'), ('New Roads', 4966, '30.69410', '-91.45410')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC079': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Alexandria', 46342, '31.29190', '-92.46330'), ('Ball', 3681, '31.41830', '-92.41010'), ('Boyce', 1190, '31.39000', '-92.66940'), ('Calcasieu', 211, '31.09030', '-92.71280'), ('Cheneyville', 901, '31.01090', '-92.28990'), ('Deville', 1007, '31.34660', '-92.15790'), ('Echo', 901, '31.11100', '-92.24100'), ('Flatwoods', 1190, '31.40250', '-92.86810'), ('Forest Hill', 456, '31.05000', '-92.52460'), ('Gardner', 1190, '31.26900', '-92.69300'), ('Glenmora', 1558, '30.97320', '-92.58280'), ('Hineston', 211, '31.14300', '-92.75900'), ('Lecompte', 1366, '31.08890', '-92.39860'), ('McNary', 211, '30.98670', '-92.57760'), ('Pineville', 13829, '31.33200', '-92.41500'), ('Union Hill', 574, '30.99400', '-92.73100'), ('Woodworth', 1080, '31.15000', '-92.50160')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAC081': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Coushatta', 2299, '32.02480', '-93.34050'), ('Edgefield', 190, '32.04880', '-93.33580'), ('Hall Summit', 264, '32.17690', '-93.30490'), ('Martin', 625, '32.09910', '-93.21830')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC083': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Delhi', 3066, '32.45640', '-91.48920'), ('Mangham', 595, '32.30600', '-91.78090'), ('Rayville', 4234, '32.47160', '-91.75720')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC085': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Converse', 400, '31.78040', '-93.69980'), ('Fisher', 268, '31.49440', '-93.46030'), ('Florien', 692, '31.44940', '-93.45950'), ('Many', 2889, '31.56540', '-93.47490'), ('Noble', 259, '31.69010', '-93.68300'), ('Pleasant Hill', 786, '31.81610', '-93.51520'), ('Zwolle', 1783, '31.63630', '-93.64350')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC087': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Chalmette', 32069, '29.94420', '-89.96730'), ('Violet', 8555, '29.89620', '-89.89250'), ('Yscloskey', 3886, '29.84170', '-89.68830')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC089': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Boutte', 2181, '29.89620', '-90.39750'), ('Des Allemands', 2500, '29.83280', '-90.43000'), ('Destrehan', 11260, '29.96180', '-90.36900'), ('Hahnville', 2792, '29.97300', '-90.42100'), ('New Sarpy', 1568, '29.97740', '-90.38620'), ('Norco', 3579, '30.00170', '-90.40960')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC091': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Darlington', 631, '30.87780', '-90.78140'), ('Easleyville', 631, '30.92860', '-90.68750'), ('Greensburg', 631, '30.82960', '-90.67000'), ('Montpelier', 214, '30.67950', '-90.65450')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC093': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Convent', 3735, '30.02060', '-90.82970'), ('Gramercy', 3066, '30.05940', '-90.69550'), ('Lutcher', 3735, '30.06300', '-90.71170')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC095': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Edgard', 2637, '30.02510', '-90.55670'), ('Garyville', 2775, '30.07730', '-90.62450'), ('Laplace', 27684, '30.07230', '-90.47280'), ('Reserve', 9111, '30.07540', '-90.56060')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC097': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Arnaudville', 1398, '30.41750', '-91.93140'), ('Big Cane', 188, '30.82060', '-92.00920'), ('Cankton', 362, '30.34890', '-92.11140'), ('Eunice', 11499, '30.49110', '-92.41910'), ('Grand Coteau', 1040, '30.41970', '-92.04640'), ('Krotz Springs', 1219, '30.53430', '-91.75350'), ('Lawtell', 22860, '30.51830', '-92.18470'), ('Leonville', 1007, '30.46440', '-91.98010'), ('Melville', 1376, '30.69180', '-91.74730'), ('Opelousas', 22860, '30.52470', '-92.08350'), ('Palmetto', 188, '30.71780', '-91.90800'), ('Port Barre', 2287, '30.55680', '-91.95640'), ('Sunset', 2352, '30.40830', '-92.06600'), ('Washington', 1082, '30.61540', '-92.05970')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAC099': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Breaux Bridge', 7281, '30.27820', '-91.90100'), ('Butte La Rose', 1531, '30.27750', '-91.68670'), ('Cade', 6989, '30.08700', '-91.90500'), ('Catahoula', 533, '30.21400', '-91.70900'), ('Cecilia', 1505, '30.33610', '-91.84780'), ('Henderson', 1531, '30.31430', '-91.79930'), ('Parks', 533, '30.21530', '-91.82940'), ('Stephensville', 12703, '29.77810', '-91.16580'), ('St. Martinville', 6989, '30.12500', '-91.83050')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAC101': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Amelia', 2423, '29.66370', '-91.10680'), ('Baldwin', 2497, '29.83340', '-91.55370'), ('Bayou Vista', 4351, '29.69230', '-91.26710'), ('Berwick', 4418, '29.70030', '-91.23580'), ('Burns Point', 8354, '29.57330', '-91.52850'), ('Centerville', 8354, '29.76000', '-91.42800'), ('Charenton', 1944, '29.86850', '-91.53640'), ('Cypremort Point', 1079, '29.77470', '-91.77440'), ('Franklin', 8354, '29.80080', '-91.51450'), ('Morgan City', 12703, '29.70170', '-91.19190'), ('Patterson', 5130, '29.69170', '-91.30870')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAC103': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Abita Springs', 1957, '30.47760', '-90.03130'), ('Bush', 471, '30.60860', '-89.90000'), ('Covington', 8483, '30.47860', '-90.11210'), ('Eden Isle', 6261, '30.22830', '-89.79870'), ('Folsom', 525, '30.63190', '-90.19800'), ('Lacombe', 7518, '30.30770', '-89.92800'), ('Madisonville', 677, '30.39520', '-90.16420'), ('Mandeville', 10489, '30.37010', '-90.08220'), ('Pearl River', 1839, '30.37220', '-89.74800'), ('Slidell', 25695, '30.28100', '-89.77770'), ('Sun', 471, '30.64960', '-89.90450')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC105': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Amite', 4640, '30.73340', '-90.51000'), ('Hammond', 17639, '30.50770', '-90.46010'), ('Independence', 1724, '30.63550', '-90.50510'), ('Kentwood', 2205, '30.93470', '-90.51530'), ('Ponchatoula', 5180, '30.43730', '-90.44350'), ('Robert', 17639, '30.50610', '-90.34080'), ('Roseland', 1162, '30.76470', '-90.51280'), ('Tangipahoa', 747, '30.87530', '-90.51390'), ('Tickfaw', 617, '30.57620', '-90.48570'), ('Wilmer', 1162, '30.81390', '-90.36250')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC107': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Newellton', 1482, '32.07260', '-91.23910'), ('St. Joseph', 1340, '31.92010', '-91.23930'), ('Waterproof', 834, '31.80680', '-91.38510')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC109': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bayou Cane', 17046, '29.62390', '-90.75110'), ('Chauvin', 3229, '29.44550', '-90.59440'), ('Cocodrie', 2458, '29.24670', '-90.66140'), ('Dulac', 2458, '29.36980', '-90.70040'), ('Gray', 4958, '29.67690', '-90.78160'), ('Houma', 32393, '29.57870', '-90.70690'), ('Montegut', 1803, '29.46980', '-90.55990'), ('Schriever', 5880, '29.73610', '-90.82680')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC111': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bernice', 1809, '32.82730', '-92.65920'), ('Downsville', 118, '32.62700', '-92.41430'), ('Farmerville', 3808, '32.77390', '-92.40050'), ('Junction City', 652, '33.00900', '-92.72280'), ('Lillie', 139, '32.92020', '-92.66140'), ('Marion', 806, '32.89980', '-92.23950'), ('Spearsville', 155, '32.93540', '-92.60390')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAC113': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Abbeville', 11887, '29.97420', '-92.12360'), ('Delcambre', 2168, '29.95010', '-91.98960'), ('Erath', 2187, '29.95820', '-92.03750'), ('Forked Island', 5177, '29.83140', '-92.30000'), ('Gueydan', 1598, '30.02890', '-92.50850'), ('Henry', 2187, '29.88310', '-92.07830'), ('Intracoastal City', 11887, '29.78420', '-92.15610'), ('Kaplan', 5177, '30.00340', '-92.28430'), ('Maurice', 642, '30.10620', '-92.12390'), ('Meaux', 11887, '30.02060', '-92.18250'), ('Pecan Island', 1598, '29.64640', '-92.45310')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAC115': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Anacoco', 866, '31.25570', '-93.34390'), ('Burr Ferry', 2415, '31.06600', '-93.49600'), ('Evans', 1390, '30.98890', '-93.50190'), ('Fort Polk', 11000, '31.04640', '-93.20530'), ('Hornbeck', 435, '31.32670', '-93.39620'), ('Kurthwood', 583, '31.33800', '-93.16500'), ('Lacamp', 583, '31.16400', '-92.91500'), ('Leesville', 6753, '31.13740', '-93.27480'), ('New Llano', 2415, '31.11280', '-93.27910'), ('Pickering', 11000, '31.03390', '-93.27060'), ('Pitkin', 574, '30.93610', '-92.93610'), ('Rosepine', 1390, '30.91940', '-93.28430'), ('Simpson', 583, '31.25580', '-93.01840'), ('Slagle', 3279, '31.20220', '-93.12720')], 'partOfState': 'west central', 'wfo': 'LCH'}, +'LAC117': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Angie', 240, '30.96390', '-89.81580'), ('Bogalusa', 13365, '30.78270', '-89.86410'), ('Enon', 3657, '30.72670', '-90.08420'), ('Franklinton', 3657, '30.84880', '-90.14360'), ('Mount Herman', 483, '30.96000', '-90.29580'), ('Varnado', 342, '30.89470', '-89.83160')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC119': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Cotton Valley', 1189, '32.81270', '-93.42300'), ('Cullen', 1296, '32.97010', '-93.44630'), ('Dixie Inn', 352, '32.59400', '-93.33500'), ('Doyline', 841, '32.51890', '-93.41590'), ('Dubberly', 290, '32.53950', '-93.23760'), ('Heflin', 245, '32.45790', '-93.26740'), ('Minden', 13027, '32.61660', '-93.28080'), ('Sarepta', 925, '32.89520', '-93.45140'), ('Shongaloo', 162, '32.94040', '-93.29380'), ('Sibley', 1098, '32.54370', '-93.29410'), ('Springhill', 5439, '33.00210', '-93.46130')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAC121': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Addis', 2238, '30.35450', '-91.26940'), ('Brusly', 2020, '30.39470', '-91.25170'), ('Erwinville', 753, '30.53080', '-91.40780'), ('Port Allen', 5278, '30.45070', '-91.20880')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC123': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Epps', 1153, '32.60500', '-91.47950'), ('Forest', 275, '32.79240', '-91.41220'), ('Kilbourne', 436, '32.99780', '-91.31320'), ('Oak Grove', 2174, '32.86220', '-91.39120'), ('Pioneer', 171, '32.73810', '-91.43590')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAC125': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Spillman', 4130, '30.92970', '-91.28360'), ('St. Francisville', 1712, '30.78360', '-91.37910'), ('Wakefield', 1712, '30.88920', '-91.35000')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAC127': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Atlanta', 150, '31.80560', '-92.73690'), ('Calvin', 236, '31.95970', '-92.77830'), ('Dodson', 357, '32.07920', '-92.65820'), ('Sikes', 120, '32.07930', '-92.48590'), ('Winnfield', 5749, '31.92210', '-92.64120')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'MAC001': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Barnstable', 47821, '41.70000', '-70.30000'), ('Bourne', 1443, '41.73270', '-70.61400'), ('Brewster', 2212, '41.75160', '-70.08000'), ('Chatham', 1667, '41.67640', '-69.96260'), ('Dennis', 2798, '41.73160', '-70.20190'), ('Eastham', 1716, '41.83333', '-69.96667'), ('Falmouth', 4115, '41.54620', '-70.60780'), ('Harwich', 1668, '41.69180', '-70.07280'), ('Hyannis', 14120, '41.65290', '-70.29580'), ('Mashpee', 2833, '41.65000', '-70.48333'), ('Orleans', 1716, '41.79100', '-70.00030'), ('Sandwich', 3058, '41.75780', '-70.49980'), ('Truro', 3192, '42.00000', '-70.06667'), ('Wellfleet', 1570, '41.93333', '-70.03333'), ('Yarmouth', 4271, '41.70940', '-70.22890')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAC003': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Adams', 5784, '42.62750', '-73.11930'), ('Ashley Falls', 1194, '42.05570', '-73.33430'), ('Becket', 2021, '42.33080', '-73.07970'), ('Cheshire', 5784, '42.55700', '-73.15300'), ('Dalton', 45793, '42.47420', '-73.16170'), ('Florida', 14681, '42.66720', '-73.00800'), ('Great Barrington', 2459, '42.19440', '-73.35640'), ('Hancock', 45793, '42.54300', '-73.32380'), ('Housatonic', 1335, '42.25040', '-73.36270'), ('Lee', 2021, '42.30720', '-73.25150'), ('Lenox', 1667, '42.35810', '-73.28670'), ('Monterey', 2021, '42.18130', '-73.21530'), ('New Ashford', 4754, '42.60420', '-73.23630'), ('North Adams', 14681, '42.68680', '-73.11380'), ('Otis', 2021, '42.19830', '-73.07450'), ('Pittsfield', 45793, '42.45180', '-73.26090'), ('Sandisfield', 8254, '42.11320', '-73.13770'), ('Savoy', 5784, '42.56770', '-73.02420'), ('Sheffield', 1194, '42.10930', '-73.34770'), ('South Egremont', 2459, '42.16120', '-73.41700'), ('Williamstown', 4754, '42.70710', '-73.20190')], 'partOfState': 'western', 'wfo': 'ALY'}, +'MAC005': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Acushnet', 3170, '41.68610', '-70.90610'), ('Attleborough', 38383, '41.93070', '-71.29570'), ('Berkley', 55976, '41.85000', '-71.08333'), ('Dartmouth', 4908, '41.56667', '-71.00000'), ('Dighton', 18234, '41.81667', '-71.11667'), ('Easton', 94304, '42.03333', '-71.10000'), ('Fall River', 91938, '41.71460', '-71.10510'), ('Freetown', 55976, '41.82000', '-71.05000'), ('Mansfield', 7170, '42.02370', '-71.21870'), ('New Bedford', 93768, '41.66130', '-70.93810'), ('North Attleborough', 16796, '41.97310', '-71.32520'), ('Norton', 1899, '41.96980', '-71.18420'), ('Raynham', 3709, '41.93180', '-71.04370'), ('Rehoboth', 2635, '41.83333', '-71.26667'), ('Seekonk', 50380, '41.81667', '-71.33333'), ('Somerset', 18234, '41.73940', '-71.15900'), ('Swansea', 18234, '41.75000', '-71.18333'), ('Taunton', 55976, '41.90300', '-71.09330'), ('Westport', 4697, '41.66667', '-71.10000')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAC007': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Aquinnah', 2048, '41.33333', '-70.81667'), ('Chilmark', 2048, '41.35000', '-70.75000'), ('Edgartown', 2048, '41.38333', '-70.53000'), ('Oak Bluffs', 2048, '41.45000', '-70.56667'), ('Tisbury', 2048, '41.46667', '-70.61667'), ('Vineyard Haven', 2048, '41.45000', '-70.61670'), ('West Tisbury', 2048, '41.38333', '-70.68333')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAC009': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Amesbury', 12327, '42.85640', '-70.92850'), ('Andover', 7900, '42.65530', '-71.14310'), ('Beverly', 39862, '42.55770', '-70.84050'), ('Boxford', 2340, '42.67350', '-70.98660'), ('Danvers', 25212, '42.57190', '-70.95110'), ('Essex', 1426, '42.63080', '-70.77240'), ('Georgetown', 2340, '42.73333', '-70.98333'), ('Gloucester', 30273, '42.61670', '-70.65000'), ('Groveland', 58969, '42.75000', '-71.03333'), ('Hamilton', 39862, '42.61667', '-70.86667'), ('Haverhill', 58969, '42.78430', '-71.08620'), ('Ipswich', 4161, '42.67810', '-70.83150'), ('Lawrence', 72043, '42.70000', '-71.16200'), ('Lynn', 89050, '42.47420', '-70.96250'), ('Lynnfield', 11542, '42.53560', '-71.04030'), ('Manchester', 1426, '42.56667', '-70.76667'), ('Merrimac', 12327, '42.83333', '-71.00000'), ('Methuen', 43789, '42.71667', '-71.18333'), ('Middleton', 11542, '42.60000', '-71.01667'), ('Newbury', 58969, '42.76670', '-70.84500'), ('Newburyport', 17189, '42.81480', '-70.88950'), ('North Andover', 72043, '42.70000', '-71.11667'), ('Peabody', 48129, '42.53290', '-70.97030'), ('Rockport', 5606, '42.64600', '-70.61940'), ('Rowley', 1434, '42.71870', '-70.87460'), ('Salisbury', 4484, '42.83260', '-70.84030'), ('Saugus', 26078, '42.46740', '-71.01530'), ('Swampscott', 14412, '42.46670', '-70.89230'), ('Topsfield', 2826, '42.63920', '-70.95590'), ('Wenham', 39862, '42.60000', '-70.88333'), ('West Newbury', 58969, '42.80147', '-70.99000')], 'partOfState': 'northeast', 'wfo': 'BOX'}, +'MAC011': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Ashfield', 1951, '42.53333', '-72.78333'), ('Bernardston', 4731, '42.66667', '-72.55000'), ('Buckland', 1951, '42.60000', '-72.78333'), ('Charlemont', 1951, '42.63333', '-72.88333'), ('Colrain', 1951, '42.66667', '-72.68333'), ('Conway', 1868, '42.51667', '-72.68333'), ('Deerfield', 13716, '42.55000', '-72.60000'), ('Erving', 1072, '42.60000', '-72.40000'), ('Gill', 1072, '42.65000', '-72.50000'), ('Greenfield', 13716, '42.58930', '-72.59890'), ('Hawley', 1951, '42.56667', '-72.88333'), ('Heath', 1951, '42.66667', '-72.83333'), ('Leverett', 6019, '42.45000', '-72.50000'), ('Leyden', 13716, '42.70000', '-72.61667'), ('Monroe', 244, '42.71667', '-72.95000'), ('Montague', 1072, '42.53333', '-72.53333'), ('New Salem', 3945, '42.50000', '-72.33333'), ('Northfield', 1141, '42.70940', '-72.43730'), ('Orange', 3945, '42.59420', '-72.30430'), ('Rowe', 244, '42.70000', '-72.90000'), ('Shelburne', 1951, '42.58333', '-72.68333'), ('Shutesbury', 6019, '42.45000', '-72.40000'), ('Sunderland', 1868, '42.46667', '-72.58333'), ('Warwick', 3945, '42.68333', '-72.33333'), ('Wendell', 1072, '42.55000', '-72.40000'), ('Whately', 1868, '42.45000', '-72.61667')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAC013': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Agawam', 28144, '42.06667', '-72.61667'), ('Blandford', 40072, '42.18333', '-72.93333'), ('Brimfield', 1444, '42.11667', '-72.20000'), ('Chester', 2021, '42.28333', '-72.98333'), ('Chicopee', 54653, '42.17590', '-72.57310'), ('East Longmeadow', 152082, '42.06667', '-72.51667'), ('Granville', 1455, '42.06667', '-72.86667'), ('Hampden', 3544, '42.06667', '-72.41667'), ('Holland', 1444, '42.05280', '-72.15210'), ('Holyoke', 39838, '42.21350', '-72.64240'), ('Longmeadow', 15633, '42.04780', '-72.57010'), ('Ludlow', 3544, '42.16667', '-72.48333'), ('Monson', 2101, '42.09710', '-72.31040'), ('Montgomery', 40072, '42.20000', '-72.80000'), ('Palmer', 3900, '42.16090', '-72.32230'), ('Russell', 40072, '42.18333', '-72.85000'), ('Southwick', 1455, '42.05000', '-72.76667'), ('Springfield', 152082, '42.11500', '-72.53900'), ('Tolland', 8254, '42.08333', '-73.01667'), ('Wales', 1444, '42.06667', '-72.21667'), ('Westfield', 40072, '42.13890', '-72.75600'), ('West Springfield', 27899, '42.12320', '-72.65310'), ('Wilbraham', 3544, '42.13580', '-72.43630')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAC015': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Amherst', 17050, '42.37510', '-72.52000'), ('Belchertown', 2626, '42.27320', '-72.40320'), ('Chesterfield', 28978, '42.40000', '-72.85000'), ('Cummington', 1951, '42.46667', '-72.90000'), ('Easthampton', 15994, '42.26667', '-72.68333'), ('East Windsor', 5784, '42.47720', '-72.98320'), ('Goshen', 28978, '42.43333', '-72.80000'), ('Granby', 1344, '42.26270', '-72.52740'), ('Hadley', 1298, '42.35000', '-72.58333'), ('Hatfield', 1298, '42.37190', '-72.60880'), ('Huntington', 40072, '42.23333', '-72.88333'), ('Middlefield', 2021, '42.35000', '-73.01667'), ('Northampton', 28978, '42.32710', '-72.67510'), ('Pelham', 6019, '42.40000', '-72.40000'), ('Plainfield', 1951, '42.51667', '-72.91667'), ('Southampton', 39838, '42.23333', '-72.73333'), ('South Hadley', 1344, '42.26667', '-72.56666'), ('Ware', 6174, '42.25320', '-72.24550'), ('Westhampton', 28978, '42.30000', '-72.76667'), ('Williamsburg', 28978, '42.40000', '-72.71667'), ('Worthington', 1951, '42.41667', '-72.93333')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAC017': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Acton', 2816, '42.48333', '-71.46667'), ('Arlington', 42389, '42.41860', '-71.16430'), ('Ashby', 1135, '42.68333', '-71.81667'), ('Ashland', 2515, '42.25000', '-71.46667'), ('Ayer', 2960, '42.56220', '-71.58530'), ('Bedford', 30355, '42.48333', '-71.26667'), ('Belmont', 24194, '42.40000', '-71.16667'), ('Billerica', 6941, '42.55000', '-71.26667'), ('Boxborough', 2816, '42.50000', '-71.50000'), ('Burlington', 22876, '42.50310', '-71.20210'), ('Cambridge', 101355, '42.37580', '-71.11870'), ('Carlisle', 32388, '42.53333', '-71.35000'), ('Chelmsford', 32388, '42.59990', '-71.36770'), ('Concord', 5761, '42.45000', '-71.35000'), ('Dracut', 105167, '42.66667', '-71.30000'), ('Dunstable', 2296, '42.66667', '-71.48333'), ('Everett', 38037, '42.40660', '-71.05460'), ('Framingham', 66910, '42.30590', '-71.43790'), ('Groton', 1113, '42.60640', '-71.57150'), ('Holliston', 4607, '42.20000', '-71.43333'), ('Hopkinton', 2628, '42.22280', '-71.52140'), ('Hudson', 14388, '42.39230', '-71.56400'), ('Lexington', 30355, '42.44570', '-71.23140'), ('Lincoln', 59226, '42.41667', '-71.30000'), ('Littleton', 2816, '42.53650', '-71.47250'), ('Lowell', 105167, '42.63870', '-71.32210'), ('Malden', 56340, '42.43040', '-71.05840'), ('Marlborough', 36255, '42.34990', '-71.54770'), ('Maynard', 10433, '42.42570', '-71.45700'), ('Medford', 55765, '42.42240', '-71.10870'), ('Melrose', 27134, '42.45490', '-71.05910'), ('Natick', 6768, '42.28333', '-71.35000'), ('Newton', 83829, '42.33160', '-71.20710'), ('North Reading', 11542, '42.56667', '-71.06667'), ('Pepperell', 2517, '42.66780', '-71.58820'), ('Reading', 23708, '42.53580', '-71.10700'), ('Sherborn', 4607, '42.23333', '-71.36667'), ('Shirley', 1427, '42.54200', '-71.65290'), ('Somerville', 77478, '42.39030', '-71.10180'), ('Stoneham', 22219, '42.47410', '-71.09820'), ('Stow', 10433, '42.43333', '-71.50000'), ('Sudbury', 6768, '42.36667', '-71.40000'), ('Tewksbury', 6941, '42.61667', '-71.23333'), ('Townsend', 1043, '42.66980', '-71.70330'), ('Tyngsboro', 7626, '42.68333', '-71.41667'), ('Wakefield', 24804, '42.50460', '-71.06660'), ('Waltham', 59226, '42.38780', '-71.24220'), ('Watertown', 32986, '42.36950', '-71.17760'), ('Wayland', 6768, '42.36667', '-71.36667'), ('Westford', 2816, '42.58333', '-71.43333'), ('Weston', 59226, '42.36667', '-71.26667'), ('Wilmington', 21363, '42.55940', '-71.16660'), ('Winchester', 20810, '42.45190', '-71.14690'), ('Woburn', 37258, '42.48550', '-71.15520')], 'partOfState': 'northeast', 'wfo': 'BOX'}, +'MAC019': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Nantucket', 3830, '41.27000', '-70.10270')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAC021': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Avon', 94304, '42.11667', '-71.03333'), ('Bellingham', 4497, '42.09410', '-71.47460'), ('Braintree', 33698, '42.20260', '-71.00340'), ('Canton', 5941, '42.15000', '-71.13333'), ('Dedham', 23464, '42.24660', '-71.17920'), ('Dover', 2216, '42.24750', '-71.27580'), ('Foxborough', 5509, '42.06520', '-71.24840'), ('Franklin', 29560, '42.08690', '-71.38730'), ('Holbrook', 10785, '42.14780', '-71.00710'), ('Medfield', 6670, '42.18790', '-71.30470'), ('Medway', 29560, '42.13333', '-71.40000'), ('Millis', 4607, '42.16890', '-71.35570'), ('Milton', 26062, '42.24330', '-71.08320'), ('Needham', 28911, '42.28070', '-71.24100'), ('Norfolk', 4607, '42.11667', '-71.31667'), ('Norwood', 28587, '42.18530', '-71.19530'), ('Plainville', 16796, '42.00000', '-71.33333'), ('Quincy', 88025, '42.26130', '-71.00700'), ('Randolph', 30963, '42.17520', '-71.05430'), ('Sharon', 5941, '42.11750', '-71.18220'), ('Stoughton', 30963, '42.11667', '-71.10000'), ('Walpole', 5867, '42.13780', '-71.24470'), ('Wellesley', 26613, '42.30450', '-71.28680'), ('Westwood', 28587, '42.21667', '-71.21667'), ('Weymouth', 53988, '42.20620', '-70.94510'), ('Wrentham', 29560, '42.06667', '-71.33333')], 'partOfState': 'eastern', 'wfo': 'BOX'}, +'MAC023': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Abington', 14605, '42.11740', '-70.95910'), ('Bridgewater', 6664, '41.98860', '-70.97130'), ('Brockton', 94304, '42.08110', '-71.02550'), ('Carver', 2059, '41.88333', '-70.76667'), ('Cohasset', 5065, '42.23333', '-70.80000'), ('Duxbury', 1426, '42.04280', '-70.67340'), ('East Bridgewater', 6664, '42.03333', '-70.95000'), ('Halifax', 2044, '41.98333', '-70.86667'), ('Hanover', 2913, '42.11667', '-70.81667'), ('Hanson', 2044, '42.06440', '-70.85040'), ('Hingham', 5352, '42.23720', '-70.88770'), ('Kingston', 5380, '41.99720', '-70.71450'), ('Lakeville', 2048, '41.85000', '-70.95000'), ('Marion', 1202, '41.70310', '-70.76240'), ('Marshfield', 4246, '42.09140', '-70.70600'), ('Mattapoisett', 2949, '41.66260', '-70.80860'), ('Middleborough', 6837, '41.89620', '-70.92790'), ('Norwell', 5065, '42.16667', '-70.78333'), ('Pembroke', 2913, '42.06667', '-70.80000'), ('Plymouth', 7658, '41.95810', '-70.67830'), ('Plympton', 5380, '41.95000', '-70.81667'), ('Rochester', 1202, '41.73333', '-70.81667'), ('Rockland', 14605, '42.13333', '-70.91667'), ('Scituate', 5069, '42.18910', '-70.73430'), ('Wareham', 2607, '41.75230', '-70.72140'), ('West Bridgewater', 6664, '42.01667', '-71.00000'), ('Whitman', 14605, '42.08333', '-70.93333')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAC025': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Allston', 589141, '42.35000', '-71.13333'), ('Boston', 589141, '42.31667', '-71.06667'), ('Brighton', 589141, '42.35000', '-71.15000'), ('Brookline', 57107, '42.32310', '-71.14240'), ('Charlestown', 589141, '42.38333', '-71.06667'), ('Chelsea', 35080, '42.39590', '-71.03350'), ('Dorchester', 589141, '42.28333', '-71.08333'), ('East Boston', 589141, '42.36667', '-71.03333'), ('Forest Hills', 589141, '42.29670', '-71.10400'), ('Hyde Park', 589141, '42.26667', '-71.11667'), ('Jamaica Plain', 589141, '42.30970', '-71.12100'), ('Mattapan', 589141, '42.26667', '-71.10000'), ('Revere', 47283, '42.41830', '-70.99250'), ('Roslindale', 589141, '42.28333', '-71.13333'), ('South Boston', 589141, '42.33333', '-71.05000'), ('West Roxbury', 589141, '42.28333', '-71.16667'), ('Winthrop', 18303, '42.38090', '-70.98000')], 'partOfState': 'eastern', 'wfo': 'BOX'}, +'MAC027': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Ashburnham', 1013, '42.63333', '-71.90000'), ('Athol', 8370, '42.59180', '-72.23200'), ('Auburn', 172648, '42.20000', '-71.83333'), ('Barre', 1150, '42.42250', '-72.10770'), ('Berlin', 7884, '42.38333', '-71.63333'), ('Bolton', 14388, '42.43333', '-71.60000'), ('Boylston', 7884, '42.35000', '-71.73333'), ('Brookfield', 1610, '42.21667', '-72.10000'), ('Charlton', 12878, '42.13333', '-71.96667'), ('Clinton', 7884, '42.41870', '-71.68530'), ('Douglas', 2319, '42.05000', '-71.73333'), ('Dudley', 1031, '42.05000', '-71.93333'), ('East Brookfield', 1410, '42.22870', '-72.04820'), ('Fitchburg', 39102, '42.58920', '-71.81560'), ('Gardner', 20770, '42.58410', '-71.98620'), ('Grafton', 2326, '42.20000', '-71.68333'), ('Hardwick', 6174, '42.35000', '-72.20000'), ('Harvard', 5981, '42.50000', '-71.58333'), ('Holden', 0, '42.35000', '-71.85000'), ('Hopedale', 4158, '42.12680', '-71.54220'), ('Hubbardston', 20770, '42.48333', '-72.01667'), ('Lancaster', 1742, '42.45000', '-71.66667'), ('Leicester', 0, '42.25000', '-71.90000'), ('Leominster', 41303, '42.51910', '-71.77220'), ('Lunenburg', 1695, '42.59500', '-71.72510'), ('Mendon', 4158, '42.10000', '-71.55000'), ('Milford', 24230, '42.14860', '-71.51550'), ('Millville', 43877, '42.03333', '-71.58333'), ('New Braintree', 2527, '42.31667', '-72.13333'), ('Northborough', 6257, '42.31180', '-71.64890'), ('Northbridge', 6340, '42.15000', '-71.65000'), ('North Brookfield', 2527, '42.27170', '-72.08500'), ('Oakham', 2527, '42.35000', '-72.05000'), ('Oxford', 5899, '42.11570', '-71.87090'), ('Paxton', 2205, '42.31667', '-71.93333'), ('Petersham', 1150, '42.48333', '-72.18333'), ('Phillipston', 1852, '42.55000', '-72.13333'), ('Princeton', 41303, '42.45000', '-71.86667'), ('Royalston', 8370, '42.68333', '-72.18333'), ('Rutland', 2205, '42.36280', '-71.95190'), ('Shrewsbury', 6257, '42.30000', '-71.71667'), ('Southborough', 2515, '42.30000', '-71.51667'), ('Southbridge', 12878, '42.08390', '-72.03480'), ('Spencer', 6032, '42.24390', '-71.99200'), ('Sterling', 1742, '42.43333', '-71.75000'), ('Sturbridge', 2047, '42.09990', '-72.06430'), ('Sutton', 2319, '42.15000', '-71.76667'), ('Templeton', 1852, '42.55000', '-72.06667'), ('Upton', 2326, '42.17370', '-71.61020'), ('Uxbridge', 4158, '42.08333', '-71.60000'), ('Warren', 1452, '42.21520', '-72.19070'), ('Webster', 11600, '42.04610', '-71.87470'), ('Westborough', 3983, '42.26590', '-71.61710'), ('West Boylston', 172648, '42.36667', '-71.78333'), ('West Brookfield', 1610, '42.23850', '-72.14810'), ('Westminster', 1013, '42.55000', '-71.90000'), ('Whitinsville', 6340, '42.11240', '-71.67140'), ('Winchendon', 4246, '42.68200', '-72.04470'), ('Worcester', 172648, '42.26960', '-71.80890')], 'partOfState': 'central', 'wfo': 'BOX'}, +'MDC001': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Barton', 478, '39.53250', '-79.01700'), ('Bellegrove', 0, '39.70670', '-78.33830'), ('Brady', 5884, '39.59220', '-78.82190'), ('Corriganville', 4613, '39.69280', '-78.79310'), ('Cumberland', 21518, '39.65110', '-78.76380'), ('Dogwood Flats', 478, '39.52470', '-79.01690'), ('Ellerslie', 21518, '39.72060', '-78.77440'), ('Flintstone', 0, '39.70310', '-78.56810'), ('Frostburg', 7873, '39.65000', '-78.92900'), ('Green Ridge', 538, '39.59360', '-78.42890'), ('La Vale', 4613, '39.66340', '-78.81860'), ('Little Orleans', 538, '39.62580', '-78.38670'), ('Lonaconing', 1205, '39.56520', '-78.97990'), ('Luke', 80, '39.47560', '-79.06040'), ('McCoole', 5870, '39.44640', '-78.97250'), ('Midland', 473, '39.58980', '-78.94900'), ('Mount Savage', 213, '39.69560', '-78.88000'), ('North Branch', 0, '39.58940', '-78.73250'), ('Oldtown', 0, '39.54140', '-78.61170'), ('Paw Paw', 0, '39.53000', '-78.47000'), ('Pleasant Valley', 0, '39.70970', '-78.64080'), ('Potomac Park', 779, '39.61170', '-78.80610'), ('Pumpkin Center', 0, '39.62170', '-78.56560'), ('Rawlings', 5884, '39.53440', '-78.88360'), ('Reynolds', 2104, '39.50920', '-79.02810'), ('Town Creek', 0, '39.52560', '-78.53920'), ('Westernport', 2104, '39.48890', '-79.04250'), ('Wolfe Mill', 0, '39.67330', '-78.72500'), ('Woodland', 473, '39.60830', '-78.95110')], 'partOfState': 'western', 'wfo': 'LWX'}, +'MDC003': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Annapolis', 35838, '38.97160', '-76.50300'), ('Arnold', 23422, '39.04270', '-76.49940'), ('Bay Ridge', 109, '38.93780', '-76.46030'), ('Belvedere Heights', 23422, '39.05580', '-76.50250'), ('Benfield', 1971, '39.08860', '-76.62250'), ('Brooklyn Park', 10938, '39.21700', '-76.61050'), ('(BWII)Baltmore-Washington Arpt', 0, '39.17000', '-76.67000'), ('Cape Arthur', 12093, '39.07890', '-76.52500'), ('Cape St. Claire', 8022, '39.04430', '-76.44590'), ('Chelsea Beach', 12093, '39.10190', '-76.52030'), ('Crofton', 20091, '39.01100', '-76.68730'), ('Crownsville', 1670, '39.01680', '-76.59550'), ('Deale', 4796, '38.79320', '-76.54660'), ('Ferndale', 16056, '39.18650', '-76.63440'), ('Fort Meade', 9882, '39.10810', '-76.74200'), ('Galesville', 5559, '38.84310', '-76.54390'), ('Gibson Island', 8022, '39.07420', '-76.42420'), ('Glen Burnie', 38922, '39.16640', '-76.60240'), ('Green Haven', 17415, '39.13670', '-76.54010'), ('Herald Harbor', 2313, '39.05040', '-76.57420'), ('Highland Beach', 0, '38.93180', '-76.46680'), ('Hillsmere Shores', 2977, '38.93190', '-76.49710'), ('Jessup', 7865, '39.14610', '-76.77300'), ('Lake Shore', 13065, '39.09760', '-76.48560'), ('Linthicum', 7539, '39.20540', '-76.66600'), ('Londontowne', 7595, '38.93570', '-76.55800'), ('Mayo', 3153, '38.89170', '-76.50040'), ('Millersville', 20534, '39.05940', '-76.64830'), ('Odenton', 20534, '39.06120', '-76.69580'), ('Parole', 14031, '38.98410', '-76.55310'), ('Pasadena', 12093, '39.11210', '-76.55240'), ('Pumphrey', 5317, '39.21800', '-76.64290'), ('Ridgeway', 35076, '39.11470', '-76.68390'), ('Riva', 3966, '38.94600', '-76.58960'), ('Severn', 35076, '39.13520', '-76.69160'), ('Severna Park', 28507, '39.08190', '-76.57250'), ('Shady Side', 5559, '38.83010', '-76.52450'), ('South Gate', 28672, '39.12890', '-76.62600')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDC003': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Annapolis', 35838, '38.97160', '-76.50300'), ('Arnold', 23422, '39.04270', '-76.49940'), ('Bay Ridge', 109, '38.93780', '-76.46030'), ('Belvedere Heights', 23422, '39.05580', '-76.50250'), ('Benfield', 1971, '39.08860', '-76.62250'), ('Brooklyn Park', 10938, '39.21700', '-76.61050'), ('(BWII)Baltmore-Washington Arpt', 0, '39.17000', '-76.67000'), ('Cape Arthur', 12093, '39.07890', '-76.52500'), ('Cape St. Claire', 8022, '39.04430', '-76.44590'), ('Chelsea Beach', 12093, '39.10190', '-76.52030'), ('Crofton', 20091, '39.01100', '-76.68730'), ('Crownsville', 1670, '39.01680', '-76.59550'), ('Deale', 4796, '38.79320', '-76.54660'), ('Ferndale', 16056, '39.18650', '-76.63440'), ('Fort Meade', 9882, '39.10810', '-76.74200'), ('Galesville', 5559, '38.84310', '-76.54390'), ('Gibson Island', 8022, '39.07420', '-76.42420'), ('Glen Burnie', 38922, '39.16640', '-76.60240'), ('Green Haven', 17415, '39.13670', '-76.54010'), ('Herald Harbor', 2313, '39.05040', '-76.57420'), ('Highland Beach', 0, '38.93180', '-76.46680'), ('Hillsmere Shores', 2977, '38.93190', '-76.49710'), ('Jessup', 7865, '39.14610', '-76.77300'), ('Lake Shore', 13065, '39.09760', '-76.48560'), ('Linthicum', 7539, '39.20540', '-76.66600'), ('Londontowne', 7595, '38.93570', '-76.55800'), ('Mayo', 3153, '38.89170', '-76.50040'), ('Millersville', 20534, '39.05940', '-76.64830'), ('Odenton', 20534, '39.06120', '-76.69580'), ('Parole', 14031, '38.98410', '-76.55310'), ('Pasadena', 12093, '39.11210', '-76.55240'), ('Pumphrey', 5317, '39.21800', '-76.64290'), ('Ridgeway', 35076, '39.11470', '-76.68390'), ('Riva', 3966, '38.94600', '-76.58960'), ('Severn', 35076, '39.13520', '-76.69160'), ('Severna Park', 28507, '39.08190', '-76.57250'), ('Shady Side', 5559, '38.83010', '-76.52450'), ('South Gate', 28672, '39.12890', '-76.62600')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDC005': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Arbutus', 20116, '39.24260', '-76.69230'), ('Baltimore Martin S', 23958, '39.33000', '-76.42000'), ('Bentley Springs', 2920, '39.67360', '-76.67110'), ('Bowleys Quarters', 6314, '39.31230', '-76.38230'), ('Brooklandville', 11427, '39.42030', '-76.67030'), ('Carney', 28264, '39.40440', '-76.52270'), ('Catonsville', 39820, '39.26450', '-76.74170'), ('Chase', 6314, '39.36330', '-76.37140'), ('Cockeysville', 19388, '39.47780', '-76.63180'), ('Dundalk', 62306, '39.26860', '-76.49740'), ('Edgemere', 9248, '39.22290', '-76.45970'), ('Essex', 39078, '39.30270', '-76.44600'), ('Fort Howard', 0, '39.20720', '-76.44530'), ('Fullerton', 12148, '39.37170', '-76.51140'), ('Glyndon', 22438, '39.47640', '-76.81610'), ('Gunpowder', 11391, '39.41470', '-76.38810'), ('Hampton', 5004, '39.41830', '-76.57280'), ('Kingsville', 4214, '39.44900', '-76.41830'), ('Lochearn', 25269, '39.34730', '-76.73080'), ('Long Green', 28264, '39.47280', '-76.52330'), ('McDonogh', 7969, '39.39110', '-76.76470'), ('Middle River', 23958, '39.33400', '-76.43400'), ('Milford Mill', 26527, '39.34770', '-76.77030'), ('Owings Mills', 20193, '39.41130', '-76.79320'), ('Parkville', 31118, '39.38400', '-76.55180'), ('Perry Hall', 28705, '39.40660', '-76.47860'), ('Pikesville', 29123, '39.39140', '-76.70070'), ('Randallstown', 30870, '39.37170', '-76.80220'), ('Reisterstown', 22438, '39.45690', '-76.81490'), ('Rosedale', 19199, '39.32760', '-76.50840'), ('Rossville', 11515, '39.35480', '-76.48080'), ('Timonium', 15814, '39.43690', '-76.62000'), ('Towson', 51793, '39.39500', '-76.62130'), ('White Marsh', 8485, '39.38350', '-76.45860'), ('Woodlawn', 36079, '39.30670', '-76.74780')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDC005': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Arbutus', 20116, '39.24260', '-76.69230'), ('Baltimore Martin S', 23958, '39.33000', '-76.42000'), ('Bentley Springs', 2920, '39.67360', '-76.67110'), ('Bowleys Quarters', 6314, '39.31230', '-76.38230'), ('Brooklandville', 11427, '39.42030', '-76.67030'), ('Carney', 28264, '39.40440', '-76.52270'), ('Catonsville', 39820, '39.26450', '-76.74170'), ('Chase', 6314, '39.36330', '-76.37140'), ('Cockeysville', 19388, '39.47780', '-76.63180'), ('Dundalk', 62306, '39.26860', '-76.49740'), ('Edgemere', 9248, '39.22290', '-76.45970'), ('Essex', 39078, '39.30270', '-76.44600'), ('Fort Howard', 0, '39.20720', '-76.44530'), ('Fullerton', 12148, '39.37170', '-76.51140'), ('Glyndon', 22438, '39.47640', '-76.81610'), ('Gunpowder', 11391, '39.41470', '-76.38810'), ('Hampton', 5004, '39.41830', '-76.57280'), ('Kingsville', 4214, '39.44900', '-76.41830'), ('Lochearn', 25269, '39.34730', '-76.73080'), ('Long Green', 28264, '39.47280', '-76.52330'), ('McDonogh', 7969, '39.39110', '-76.76470'), ('Middle River', 23958, '39.33400', '-76.43400'), ('Milford Mill', 26527, '39.34770', '-76.77030'), ('Owings Mills', 20193, '39.41130', '-76.79320'), ('Parkville', 31118, '39.38400', '-76.55180'), ('Perry Hall', 28705, '39.40660', '-76.47860'), ('Pikesville', 29123, '39.39140', '-76.70070'), ('Randallstown', 30870, '39.37170', '-76.80220'), ('Reisterstown', 22438, '39.45690', '-76.81490'), ('Rosedale', 19199, '39.32760', '-76.50840'), ('Rossville', 11515, '39.35480', '-76.48080'), ('Timonium', 15814, '39.43690', '-76.62000'), ('Towson', 51793, '39.39500', '-76.62130'), ('White Marsh', 8485, '39.38350', '-76.45860'), ('Woodlawn', 36079, '39.30670', '-76.74780')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDC009': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Broomes Island', 2487, '38.41810', '-76.54440'), ('Chesapeake Beach', 3180, '38.68730', '-76.53590'), ('Cove Point', 5423, '38.38110', '-76.38920'), ('Dares Beach', 1432, '38.56170', '-76.51580'), ('Drum Point', 5423, '38.32670', '-76.42640'), ('Dunkirk', 1880, '38.72170', '-76.66080'), ('Huntingtown', 1432, '38.61580', '-76.61330'), ('Long Beach', 2487, '38.46080', '-76.46920'), ('Lower Marlboro', 55, '38.65580', '-76.68220'), ('Lusby', 1666, '38.41060', '-76.45560'), ('Mount Harmony', 3180, '38.69830', '-76.60440'), ('North Beach', 1880, '38.70870', '-76.53470'), ('Prince Frederick', 1432, '38.54860', '-76.58910'), ('Saint Leonard', 536, '38.47420', '-76.50670')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDC009': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Broomes Island', 2487, '38.41810', '-76.54440'), ('Chesapeake Beach', 3180, '38.68730', '-76.53590'), ('Cove Point', 5423, '38.38110', '-76.38920'), ('Dares Beach', 1432, '38.56170', '-76.51580'), ('Drum Point', 5423, '38.32670', '-76.42640'), ('Dunkirk', 1880, '38.72170', '-76.66080'), ('Huntingtown', 1432, '38.61580', '-76.61330'), ('Long Beach', 2487, '38.46080', '-76.46920'), ('Lower Marlboro', 55, '38.65580', '-76.68220'), ('Lusby', 1666, '38.41060', '-76.45560'), ('Mount Harmony', 3180, '38.69830', '-76.60440'), ('North Beach', 1880, '38.70870', '-76.53470'), ('Prince Frederick', 1432, '38.54860', '-76.58910'), ('Saint Leonard', 536, '38.47420', '-76.50670')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDC011': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Agner', 0, '38.75560', '-75.78970'), ('Choptank', 0, '38.68080', '-75.94860'), ('Denton', 0, '38.88230', '-75.82230'), ('Federalsburg', 0, '38.69100', '-75.77360'), ('Goldsboro', 0, '39.03540', '-75.78740'), ('Greensboro', 0, '38.97610', '-75.80680'), ('Griffin', 0, '38.86140', '-75.91420'), ('Harmony', 0, '38.77890', '-75.88080'), ('Henderson', 0, '39.07490', '-75.76710'), ('Jumptown', 0, '38.96110', '-75.91890'), ('Marydel', 0, '39.11390', '-75.74850'), ('Oakland', 0, '38.98860', '-75.87640'), ('Preston', 0, '38.71080', '-75.90860'), ('Ridgely', 0, '38.94750', '-75.88530'), ('Smithville', 0, '38.77390', '-75.73310'), ('Tanyard', 0, '38.75060', '-75.97690'), ('Templeville', 0, '39.13480', '-75.76800')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'MDC013': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Eldersburg', 27741, '39.40840', '-76.94320'), ('Finksburg', 2078, '39.49280', '-76.88970'), ('Gaither', 4197, '39.36140', '-76.99330'), ('Gamber', 27741, '39.46470', '-76.93420'), ('Hampstead', 5060, '39.61840', '-76.85580'), ('Harney', 5128, '39.71390', '-77.20690'), ('Henryton', 2078, '39.35110', '-76.91360'), ('Keysville', 5128, '39.63390', '-77.25890'), ('Lineboro', 3329, '39.71860', '-76.84420'), ('Linwood', 989, '39.56330', '-77.14310'), ('Louisville', 2078, '39.44860', '-76.92420'), ('Manchester', 3329, '39.65850', '-76.89070'), ('Marston', 1303, '39.50780', '-77.10060'), ('Middleburg', 989, '39.59390', '-77.21310'), ('Millers', 3329, '39.67110', '-76.85140'), ('Oakland', 2078, '39.41240', '-76.90190'), ('Reese', 4284, '39.54280', '-76.93810'), ('Sykesville', 4197, '39.37000', '-76.97540'), ('Taneytown', 5128, '39.65510', '-77.16870'), ('Uniontown', 1303, '39.59330', '-77.11640'), ('Wagners Mill', 1303, '39.56140', '-77.05580'), ('Westminster', 16731, '39.57880', '-77.00770'), ('Winfield', 1303, '39.44720', '-77.05530')], 'partOfState': 'north central', 'wfo': 'LWX'}, +'MDC015': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andora', 0, '39.68470', '-75.86110'), ('Appleton', 0, '39.69830', '-75.81440'), ('Barksdale', 0, '39.66890', '-75.81500'), ('Bay View', 0, '39.64330', '-75.96170'), ('Blake', 0, '39.71560', '-75.91690'), ('Bohemias Mills', 0, '39.46610', '-75.77860'), ('Brantwood', 0, '39.55860', '-75.80420'), ('Calvert', 0, '39.70030', '-75.98280'), ('Cayots', 0, '39.48580', '-75.84810'), ('Cecilton', 0, '39.40280', '-75.86980'), ('Charlestown', 0, '39.57520', '-75.97930'), ('Cherry Hill', 0, '39.66330', '-75.85310'), ('Chesapeake City', 0, '39.52970', '-75.81070'), ('Conowingo', 0, '39.67780', '-76.15940'), ('Elkton', 0, '39.60000', '-75.82000'), ('Fair Hill', 0, '39.70220', '-75.86830'), ('Farmington', 0, '39.67860', '-76.03250'), ('Glen Westover', 0, '39.71360', '-75.79720'), ('Hollywood Beach', 0, '39.50220', '-75.90830'), ('Lombard', 0, '39.71860', '-75.94670'), ('North East', 0, '39.60020', '-75.94250'), ('Octoraro', 0, '39.65860', '-76.15500'), ('Perryville', 0, '39.57100', '-76.06880'), ('Pleasant Hill', 0, '39.67030', '-75.90250'), ('Port Deposit', 0, '39.60360', '-76.11580'), ('Richardsmere', 0, '39.68920', '-76.12670'), ('Rising Sun', 0, '39.69830', '-76.06060'), ('Rock Springs', 0, '39.71500', '-76.15890'), ('Warwick', 0, '39.41670', '-75.77860'), ('West Nottingham', 0, '39.66940', '-76.07670'), ('Woodlawn', 0, '39.63420', '-76.07610'), ('Zion', 0, '39.67560', '-75.96530')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDC015': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andora', 0, '39.68470', '-75.86110'), ('Appleton', 0, '39.69830', '-75.81440'), ('Barksdale', 0, '39.66890', '-75.81500'), ('Bay View', 0, '39.64330', '-75.96170'), ('Blake', 0, '39.71560', '-75.91690'), ('Bohemias Mills', 0, '39.46610', '-75.77860'), ('Brantwood', 0, '39.55860', '-75.80420'), ('Calvert', 0, '39.70030', '-75.98280'), ('Cayots', 0, '39.48580', '-75.84810'), ('Cecilton', 0, '39.40280', '-75.86980'), ('Charlestown', 0, '39.57520', '-75.97930'), ('Cherry Hill', 0, '39.66330', '-75.85310'), ('Chesapeake City', 0, '39.52970', '-75.81070'), ('Conowingo', 0, '39.67780', '-76.15940'), ('Elkton', 0, '39.60000', '-75.82000'), ('Fair Hill', 0, '39.70220', '-75.86830'), ('Farmington', 0, '39.67860', '-76.03250'), ('Glen Westover', 0, '39.71360', '-75.79720'), ('Hollywood Beach', 0, '39.50220', '-75.90830'), ('Lombard', 0, '39.71860', '-75.94670'), ('North East', 0, '39.60020', '-75.94250'), ('Octoraro', 0, '39.65860', '-76.15500'), ('Perryville', 0, '39.57100', '-76.06880'), ('Pleasant Hill', 0, '39.67030', '-75.90250'), ('Port Deposit', 0, '39.60360', '-76.11580'), ('Richardsmere', 0, '39.68920', '-76.12670'), ('Rising Sun', 0, '39.69830', '-76.06060'), ('Rock Springs', 0, '39.71500', '-76.15890'), ('Warwick', 0, '39.41670', '-75.77860'), ('West Nottingham', 0, '39.66940', '-76.07670'), ('Woodlawn', 0, '39.63420', '-76.07610'), ('Zion', 0, '39.67560', '-75.96530')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDC017': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Bel Alton', 15, '38.46390', '-76.98310'), ('Benedict', 2665, '38.50920', '-76.68000'), ('Bryantown', 1537, '38.55500', '-76.84220'), ('Dentsville', 6551, '38.48170', '-76.89280'), ('Faulkner', 15, '38.43890', '-76.97860'), ('Hughesville', 1537, '38.53870', '-76.78370'), ('Indian Head', 3422, '38.59850', '-77.15790'), ('Ironsides', 1244, '38.49170', '-77.16000'), ('La Plata', 6551, '38.53410', '-76.97050'), ('Marbury', 1244, '38.55610', '-77.15850'), ('Nanjemoy', 670, '38.45470', '-77.21720'), ('Port Tobacco Village', 15, '38.51140', '-77.02040'), ('Potomac Heights', 1154, '38.60760', '-77.12280'), ('Ripley', 15, '38.54470', '-77.07860'), ('St. Charles', 33379, '38.60570', '-76.92320'), ('Tompkinsville', 3132, '38.32170', '-76.89280'), ('Waldorf', 22312, '38.64190', '-76.90450'), ('White Plains', 3560, '38.59440', '-76.97640'), ('Wicomico', 1214, '38.41330', '-76.87690')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDC017': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Bel Alton', 15, '38.46390', '-76.98310'), ('Benedict', 2665, '38.50920', '-76.68000'), ('Bryantown', 1537, '38.55500', '-76.84220'), ('Dentsville', 6551, '38.48170', '-76.89280'), ('Faulkner', 15, '38.43890', '-76.97860'), ('Hughesville', 1537, '38.53870', '-76.78370'), ('Indian Head', 3422, '38.59850', '-77.15790'), ('Ironsides', 1244, '38.49170', '-77.16000'), ('La Plata', 6551, '38.53410', '-76.97050'), ('Marbury', 1244, '38.55610', '-77.15850'), ('Nanjemoy', 670, '38.45470', '-77.21720'), ('Port Tobacco Village', 15, '38.51140', '-77.02040'), ('Potomac Heights', 1154, '38.60760', '-77.12280'), ('Ripley', 15, '38.54470', '-77.07860'), ('St. Charles', 33379, '38.60570', '-76.92320'), ('Tompkinsville', 3132, '38.32170', '-76.89280'), ('Waldorf', 22312, '38.64190', '-76.90450'), ('White Plains', 3560, '38.59440', '-76.97640'), ('Wicomico', 1214, '38.41330', '-76.87690')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDC019': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andrews', 85, '38.35690', '-76.11050'), ('Brookview', 65, '38.57440', '-75.79510'), ('Bucktown', 10911, '38.45910', '-76.03140'), ('Cambridge', 10911, '38.56180', '-76.07780'), ('Church Creek', 85, '38.50530', '-76.15470'), ('Crocheron', 85, '38.24270', '-76.05290'), ('East New Market', 167, '38.59910', '-75.92390'), ('Eldorado', 60, '38.58250', '-75.79080'), ('Elliott', 85, '38.30900', '-76.00400'), ('Galestown', 101, '38.56200', '-75.71690'), ('Honga', 85, '38.34000', '-76.22500'), ('Hoopersville', 85, '38.26170', '-76.18130'), ('Hudson', 771, '38.59220', '-76.25530'), ('Hurlock', 1874, '38.62910', '-75.87100'), ('Linkwood', 167, '38.54060', '-75.94610'), ('Lloyds', 85, '38.59000', '-76.18260'), ('Madison', 85, '38.50730', '-76.22100'), ('Secretary', 503, '38.60740', '-75.94750'), ('Taylors Island', 85, '38.46700', '-76.30290'), ('Vienna', 280, '38.48500', '-75.82740'), ('Wingate', 85, '38.28130', '-76.08140'), ('Woolford', 85, '38.50440', '-76.18110')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC019': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andrews', 85, '38.35690', '-76.11050'), ('Brookview', 65, '38.57440', '-75.79510'), ('Bucktown', 10911, '38.45910', '-76.03140'), ('Cambridge', 10911, '38.56180', '-76.07780'), ('Church Creek', 85, '38.50530', '-76.15470'), ('Crocheron', 85, '38.24270', '-76.05290'), ('East New Market', 167, '38.59910', '-75.92390'), ('Eldorado', 60, '38.58250', '-75.79080'), ('Elliott', 85, '38.30900', '-76.00400'), ('Galestown', 101, '38.56200', '-75.71690'), ('Honga', 85, '38.34000', '-76.22500'), ('Hoopersville', 85, '38.26170', '-76.18130'), ('Hudson', 771, '38.59220', '-76.25530'), ('Hurlock', 1874, '38.62910', '-75.87100'), ('Linkwood', 167, '38.54060', '-75.94610'), ('Lloyds', 85, '38.59000', '-76.18260'), ('Madison', 85, '38.50730', '-76.22100'), ('Secretary', 503, '38.60740', '-75.94750'), ('Taylors Island', 85, '38.46700', '-76.30290'), ('Vienna', 280, '38.48500', '-75.82740'), ('Wingate', 85, '38.28130', '-76.08140'), ('Woolford', 85, '38.50440', '-76.18110')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC021': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Arnoldtown', 171, '39.40940', '-77.60610'), ('Ballenger Creek', 13518, '39.37240', '-77.43560'), ('Bloomfield', 3260, '39.47560', '-77.42170'), ('Bolivar', 1382, '39.46640', '-77.59190'), ('Braddock Heights', 4627, '39.41430', '-77.50730'), ('Brunswick', 4894, '39.31640', '-77.62320'), ('Buckeystown', 13518, '39.33470', '-77.43190'), ('Burkittsville', 171, '39.39140', '-77.62740'), ('Emmitsburg', 2290, '39.70460', '-77.32560'), ('Frederick', 52767, '39.42820', '-77.41690'), ('Green Valley', 12262, '39.34360', '-77.24520'), ('Jefferson', 4627, '39.36190', '-77.53190'), ('Libertytown', 846, '39.48500', '-77.24060'), ('Middletown', 2668, '39.44220', '-77.54420'), ('Mount Airy', 6425, '39.37420', '-77.15930'), ('Mount Pleasant', 2152, '39.45360', '-77.32610'), ('Myersville', 1382, '39.50620', '-77.56510'), ('New Market', 427, '39.38410', '-77.27440'), ('Park Mills', 13518, '39.29780', '-77.40810'), ('Petersville', 273, '39.34640', '-77.61110'), ('Pleasant Walk', 1382, '39.53970', '-77.58640'), ('Point Of Rocks', 4894, '39.27580', '-77.53940'), ('Rosemont', 273, '39.33480', '-77.62140'), ('Sabillasville', 276, '39.70000', '-77.45670'), ('Thurmont', 5588, '39.62380', '-77.40970'), ('Utica', 5192, '39.52580', '-77.39420'), ('Walkersville', 5192, '39.48450', '-77.35330'), ('Wolfsville', 1382, '39.57420', '-77.55080'), ('Woodsboro', 846, '39.53210', '-77.31100')], 'partOfState': 'north central', 'wfo': 'LWX'}, +'MDC023': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Accident', 353, '39.62690', '-79.32090'), ('Deer Park', 405, '39.42350', '-79.32670'), ('Friendsville', 539, '39.66300', '-79.40520'), ('Grantsville', 619, '39.69650', '-79.15710'), ('Kitzmiller', 302, '39.38920', '-79.18370'), ('Loch Lynn Heights', 469, '39.39130', '-79.37310'), ('Mc Henry', 0, '39.55000', '-79.35000'), ('Mountain Lake Park', 2248, '39.40380', '-79.37940')], 'partOfState': 'western', 'wfo': 'PBZ'}, +'MDC025': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Aberdeen', 13842, '39.51170', '-76.17250'), ('Aberdeen Proving Ground', 3116, '39.47250', '-76.13000'), ('Abingdon', 23378, '39.46220', '-76.27940'), ('Bel Air', 10080, '39.53460', '-76.34690'), ('Bynum', 25798, '39.56560', '-76.36500'), ('Carsins', 13842, '39.53720', '-76.21280'), ('Chrome Hill', 2756, '39.62250', '-76.42080'), ('Churchville', 13842, '39.56110', '-76.24580'), ('Darlington', 676, '39.63920', '-76.20310'), ('Edgewood', 23378, '39.42050', '-76.29920'), ('Fallston', 8427, '39.52100', '-76.42650'), ('Harford', 0, '39.49500', '-76.26170'), ('Harford Furnace', 39711, '39.49500', '-76.26170'), ('Havre De Grace', 11331, '39.54720', '-76.09900'), ('Hickory', 25798, '39.57860', '-76.34560'), ('Jarrettsville', 2756, '39.60370', '-76.47270'), ('Joppa', 11391, '39.43360', '-76.35810'), ('Joppatowne', 11391, '39.41540', '-76.35420'), ('Magnolia', 23378, '39.40470', '-76.32500'), ('Norrisville', 1308, '39.70470', '-76.53500'), ('Perryman', 2461, '39.46990', '-76.20570'), ('Pleasant Furnace', 0, '39.48710', '-76.39520'), ('Pleasant Hills', 2851, '39.48710', '-76.39520'), ('Pylesville', 761, '39.68970', '-76.37330'), ('Scarboro', 761, '39.64610', '-76.29560'), ('Whiteford', 761, '39.70890', '-76.34580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDC025': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Aberdeen', 13842, '39.51170', '-76.17250'), ('Aberdeen Proving Ground', 3116, '39.47250', '-76.13000'), ('Abingdon', 23378, '39.46220', '-76.27940'), ('Bel Air', 10080, '39.53460', '-76.34690'), ('Bynum', 25798, '39.56560', '-76.36500'), ('Carsins', 13842, '39.53720', '-76.21280'), ('Chrome Hill', 2756, '39.62250', '-76.42080'), ('Churchville', 13842, '39.56110', '-76.24580'), ('Darlington', 676, '39.63920', '-76.20310'), ('Edgewood', 23378, '39.42050', '-76.29920'), ('Fallston', 8427, '39.52100', '-76.42650'), ('Harford', 0, '39.49500', '-76.26170'), ('Harford Furnace', 39711, '39.49500', '-76.26170'), ('Havre De Grace', 11331, '39.54720', '-76.09900'), ('Hickory', 25798, '39.57860', '-76.34560'), ('Jarrettsville', 2756, '39.60370', '-76.47270'), ('Joppa', 11391, '39.43360', '-76.35810'), ('Joppatowne', 11391, '39.41540', '-76.35420'), ('Magnolia', 23378, '39.40470', '-76.32500'), ('Norrisville', 1308, '39.70470', '-76.53500'), ('Perryman', 2461, '39.46990', '-76.20570'), ('Pleasant Furnace', 0, '39.48710', '-76.39520'), ('Pleasant Hills', 2851, '39.48710', '-76.39520'), ('Pylesville', 761, '39.68970', '-76.37330'), ('Scarboro', 761, '39.64610', '-76.29560'), ('Whiteford', 761, '39.70890', '-76.34580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDC027': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Clarksville', 88254, '39.20640', '-76.94330'), ('Columbia', 88254, '39.20300', '-76.85800'), ('Dayton', 3437, '39.23920', '-76.98690'), ('Elkridge', 22042, '39.20190', '-76.75050'), ('Ellicott City', 56397, '39.27210', '-76.83460'), ('Fulton', 7305, '39.15080', '-76.92330'), ('Glenelg', 4197, '39.26420', '-76.99280'), ('Glenwood', 4197, '39.28750', '-77.02830'), ('Highland', 3437, '39.17890', '-76.95780'), ('Lisbon', 6425, '39.33610', '-77.07140'), ('Marriottsville', 2078, '39.35000', '-76.89970'), ('Poplar Springs', 6425, '39.34330', '-77.09670'), ('Roxbury Mills', 120, '39.25810', '-77.05360'), ('Scaggsville', 20468, '39.14500', '-76.90060'), ('Simpsonville', 88254, '39.18670', '-76.88220'), ('Watersville', 6425, '39.36750', '-77.10390'), ('West Friendship', 4197, '39.30250', '-76.95310'), ('Woodstock', 56397, '39.32860', '-76.87220')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDC029': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Betterton', 0, '39.36700', '-76.07250'), ('Chestertown', 0, '39.21920', '-76.07050'), ('Galena', 0, '39.34330', '-75.87920'), ('Kennedyville', 0, '39.30530', '-75.99530'), ('Langford', 0, '39.18830', '-76.14110'), ('Massey', 0, '39.30970', '-75.82560'), ('Millington', 0, '39.25810', '-75.83750'), ('Morgnec', 0, '39.25360', '-76.00080'), ('Newtown', 0, '39.30420', '-76.14830'), ('Old Town', 0, '39.14190', '-76.10640'), ('Overton', 0, '39.03280', '-76.21030'), ('Rock Hall', 0, '39.14050', '-76.24090'), ('Sassafras', 0, '39.37310', '-75.80280')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDC029': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Betterton', 0, '39.36700', '-76.07250'), ('Chestertown', 0, '39.21920', '-76.07050'), ('Galena', 0, '39.34330', '-75.87920'), ('Kennedyville', 0, '39.30530', '-75.99530'), ('Langford', 0, '39.18830', '-76.14110'), ('Massey', 0, '39.30970', '-75.82560'), ('Millington', 0, '39.25810', '-75.83750'), ('Morgnec', 0, '39.25360', '-76.00080'), ('Newtown', 0, '39.30420', '-76.14830'), ('Old Town', 0, '39.14190', '-76.10640'), ('Overton', 0, '39.03280', '-76.21030'), ('Rock Hall', 0, '39.14050', '-76.24090'), ('Sassafras', 0, '39.37310', '-75.80280')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDC031': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Aspen Hill', 50228, '39.09210', '-77.07900'), ('Barnesville', 161, '39.21990', '-77.38110'), ('Bethesda', 55277, '38.98980', '-77.12030'), ('Boyds', 55419, '39.18360', '-77.31310'), ('Bradley Farms', 44822, '39.00670', '-77.19110'), ('Brookeville', 120, '39.17660', '-77.05740'), ('Burtonsville', 7305, '39.11120', '-76.93220'), ('Calverton', 12610, '39.05640', '-76.94820'), ('Chevy Chase', 9381, '38.99500', '-77.07310'), ('Clarksburg', 1834, '39.23860', '-77.27970'), ('Cloverly', 7835, '39.10280', '-76.97660'), ('Colesville', 19810, '39.08830', '-77.00710'), ('Congressional Manor', 44822, '38.99720', '-77.17310'), ('Damascus', 11430, '39.27770', '-77.20500'), ('Dawsonville', 5151, '39.12830', '-77.34330'), ('Dickerson', 161, '39.22000', '-77.42440'), ('Ednor', 3437, '39.13580', '-76.99530'), ('Fairland', 21738, '39.08220', '-76.95160'), ('Four Corners', 76540, '39.02030', '-77.01310'), ('Friendship', 11430, '39.30690', '-77.19750'), ('Gaithersburg', 52613, '39.14120', '-77.21660'), ('Garrett Park', 917, '39.03610', '-77.09460'), ('Germantown', 55419, '39.17820', '-77.26070'), ('Glen Echo', 242, '38.96740', '-77.14080'), ('Glenmont', 57694, '39.05780', '-77.05000'), ('Hillandale', 3054, '39.01960', '-76.97470'), ('Kensington', 1873, '39.02590', '-77.07320'), ('Laytonsville', 277, '39.20960', '-77.14160'), ('Montgomery Village', 38051, '39.18120', '-77.19360'), ('Norbeck', 7569, '39.11000', '-77.07610'), ('North Potomac', 23044, '39.09640', '-77.24500'), ('Olney', 31438, '39.14920', '-77.08220'), ('Poolesville', 5151, '39.14480', '-77.41000'), ('Potomac', 44822, '39.02580', '-77.19770'), ('Rockville', 47388, '39.08120', '-77.15390'), ('Silver Spring', 76540, '39.00000', '-77.05000'), ('Somerset', 1124, '38.96580', '-77.09540'), ('Takoma Park', 17299, '38.98210', '-77.00280'), ('White Oak', 20973, '39.04200', '-76.98860')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDC033': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Accokeek', 7349, '38.67600', '-77.01630'), ('Adelphi', 14998, '39.00190', '-76.96550'), ('Andrews AFB', 7925, '38.80340', '-76.87180'), ('Baden', 1410, '38.65920', '-76.77810'), ('Beltsville', 15690, '39.03680', '-76.92350'), ('Bladensburg', 7661, '38.94360', '-76.92620'), ('Bowie', 50269, '38.95950', '-76.73770'), ('Brandywine', 1410, '38.69850', '-76.85430'), ('Brentwood', 2844, '38.94360', '-76.95710'), ('Camp Springs', 17968, '38.80360', '-76.92080'), ('Capitol Heights', 4138, '38.87790', '-76.90810'), ('Cheltenham', 12322, '38.73560', '-76.82670'), ('Cheverly', 6433, '38.92580', '-76.91390'), ('Clinton', 26064, '38.76440', '-76.89800'), ('College Park', 24657, '38.99610', '-76.93480'), ('Coral Hills', 10720, '38.87170', '-76.92350'), ('Eagle Harbor', 55, '38.56640', '-76.68700'), ('Forestville', 12707, '38.84970', '-76.87480'), ('Friendly', 10938, '38.75640', '-76.96580'), ('Glenarden', 6318, '38.93080', '-76.86290'), ('Glenn Dale', 12609, '38.98690', '-76.80090'), ('Greenbelt', 21456, '38.99480', '-76.88570'), ('Hyattsville', 14733, '38.95920', '-76.95340'), ('Kettering', 11008, '38.89010', '-76.78560'), ('Landover', 5052, '38.93610', '-76.90150'), ('Langley Park', 16214, '38.99390', '-76.98210'), ('Largo', 8408, '38.87950', '-76.83020'), ('Laurel', 19960, '39.09770', '-76.85860'), ('Marlow Heights', 6059, '38.82460', '-76.94960'), ('Marlton', 7798, '38.75810', '-76.78990'), ('Mitchellville', 9611, '38.92920', '-76.82330'), ('Montpelier', 20479, '39.06140', '-76.85110'), ('Morningside', 1295, '38.82940', '-76.89070'), ('New Carrollton', 12589, '38.96630', '-76.87690'), ('Oxon Hill', 2585, '38.80330', '-76.99000'), ('Seat Pleasant', 4885, '38.89520', '-76.90250'), ('Suitland-Silver Hill', 33515, '38.84560', '-76.92280'), ('Tantallon', 23845, '38.72390', '-77.01000'), ('Upper Marlboro', 648, '38.81760', '-76.75540'), ('Woodmore', 6077, '38.93480', '-76.77500')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDC033': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Accokeek', 7349, '38.67600', '-77.01630'), ('Adelphi', 14998, '39.00190', '-76.96550'), ('Andrews AFB', 7925, '38.80340', '-76.87180'), ('Baden', 1410, '38.65920', '-76.77810'), ('Beltsville', 15690, '39.03680', '-76.92350'), ('Bladensburg', 7661, '38.94360', '-76.92620'), ('Bowie', 50269, '38.95950', '-76.73770'), ('Brandywine', 1410, '38.69850', '-76.85430'), ('Brentwood', 2844, '38.94360', '-76.95710'), ('Camp Springs', 17968, '38.80360', '-76.92080'), ('Capitol Heights', 4138, '38.87790', '-76.90810'), ('Cheltenham', 12322, '38.73560', '-76.82670'), ('Cheverly', 6433, '38.92580', '-76.91390'), ('Clinton', 26064, '38.76440', '-76.89800'), ('College Park', 24657, '38.99610', '-76.93480'), ('Coral Hills', 10720, '38.87170', '-76.92350'), ('Eagle Harbor', 55, '38.56640', '-76.68700'), ('Forestville', 12707, '38.84970', '-76.87480'), ('Friendly', 10938, '38.75640', '-76.96580'), ('Glenarden', 6318, '38.93080', '-76.86290'), ('Glenn Dale', 12609, '38.98690', '-76.80090'), ('Greenbelt', 21456, '38.99480', '-76.88570'), ('Hyattsville', 14733, '38.95920', '-76.95340'), ('Kettering', 11008, '38.89010', '-76.78560'), ('Landover', 5052, '38.93610', '-76.90150'), ('Langley Park', 16214, '38.99390', '-76.98210'), ('Largo', 8408, '38.87950', '-76.83020'), ('Laurel', 19960, '39.09770', '-76.85860'), ('Marlow Heights', 6059, '38.82460', '-76.94960'), ('Marlton', 7798, '38.75810', '-76.78990'), ('Mitchellville', 9611, '38.92920', '-76.82330'), ('Montpelier', 20479, '39.06140', '-76.85110'), ('Morningside', 1295, '38.82940', '-76.89070'), ('New Carrollton', 12589, '38.96630', '-76.87690'), ('Oxon Hill', 2585, '38.80330', '-76.99000'), ('Seat Pleasant', 4885, '38.89520', '-76.90250'), ('Suitland-Silver Hill', 33515, '38.84560', '-76.92280'), ('Tantallon', 23845, '38.72390', '-77.01000'), ('Upper Marlboro', 648, '38.81760', '-76.75540'), ('Woodmore', 6077, '38.93480', '-76.77500')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDC035': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Barclay', 0, '39.14380', '-75.86420'), ('Carville', 0, '39.04920', '-76.00420'), ('Centreville', 0, '39.04350', '-76.06530'), ('Chester', 0, '38.97000', '-76.29000'), ('Church Hill', 0, '39.14360', '-75.98070'), ('Crumpton', 0, '39.24140', '-75.92190'), ('Grasonville', 0, '38.95800', '-76.19420'), ('Grasonville', 0, '38.95820', '-76.21020'), ('Hope', 0, '39.04190', '-75.96970'), ('Kent Point', 0, '38.83680', '-76.36920'), ('Kingstown', 0, '39.20620', '-76.04810'), ('Queen Anne', 0, '38.92080', '-75.95560'), ('Queenstown', 0, '38.98990', '-76.15590'), ('Romancoke', 0, '38.88110', '-76.33640'), ('Starkey Corner', 0, '39.12050', '-76.01470'), ('Starr', 0, '38.97810', '-76.01060'), ('Stevensville', 0, '38.99390', '-76.30890'), ('Stevensville South', 0, '38.96020', '-76.32930'), ('Sudlersville', 0, '39.18620', '-75.85850')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDC035': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Barclay', 0, '39.14380', '-75.86420'), ('Carville', 0, '39.04920', '-76.00420'), ('Centreville', 0, '39.04350', '-76.06530'), ('Chester', 0, '38.97000', '-76.29000'), ('Church Hill', 0, '39.14360', '-75.98070'), ('Crumpton', 0, '39.24140', '-75.92190'), ('Grasonville', 0, '38.95800', '-76.19420'), ('Grasonville', 0, '38.95820', '-76.21020'), ('Hope', 0, '39.04190', '-75.96970'), ('Kent Point', 0, '38.83680', '-76.36920'), ('Kingstown', 0, '39.20620', '-76.04810'), ('Queen Anne', 0, '38.92080', '-75.95560'), ('Queenstown', 0, '38.98990', '-76.15590'), ('Romancoke', 0, '38.88110', '-76.33640'), ('Starkey Corner', 0, '39.12050', '-76.01470'), ('Starr', 0, '38.97810', '-76.01060'), ('Stevensville', 0, '38.99390', '-76.30890'), ('Stevensville South', 0, '38.96020', '-76.32930'), ('Sudlersville', 0, '39.18620', '-75.85850')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDC037': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('California', 9307, '38.29610', '-76.49620'), ('Callaway', 9307, '38.23830', '-76.51940'), ('Chaptico', 0, '38.36750', '-76.78330'), ('Charlotte Hall', 1214, '38.47820', '-76.78950'), ('Clements', 1896, '38.32610', '-76.72750'), ('Dameron', 11021, '38.15220', '-76.36970'), ('Golden Beach', 2665, '38.48730', '-76.69320'), ('Hillville', 1896, '38.37250', '-76.60280'), ('Hollywood', 1896, '38.34580', '-76.57190'), ('Leonardtown', 1896, '38.29960', '-76.64170'), ('Lexington Park', 11021, '38.26040', '-76.44590'), ('Mechanicsville', 0, '38.43000', '-76.73000'), ('Morganza', 0, '38.37530', '-76.69580'), ('Oakley', 1896, '38.27280', '-76.74000'), ('Patuxent River NAS', 0, '38.28000', '-76.43000'), ('Piney Point', 11021, '38.14220', '-76.50780'), ('Redgate', 1896, '38.25640', '-76.59890'), ('Ridge', 11021, '38.11920', '-76.37420'), ('Sandgates', 2665, '38.41280', '-76.61560'), ('Sotterley', 9307, '38.37830', '-76.53330'), ('Tintop Hill', 1896, '38.32220', '-76.61890')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDC037': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('California', 9307, '38.29610', '-76.49620'), ('Callaway', 9307, '38.23830', '-76.51940'), ('Chaptico', 0, '38.36750', '-76.78330'), ('Charlotte Hall', 1214, '38.47820', '-76.78950'), ('Clements', 1896, '38.32610', '-76.72750'), ('Dameron', 11021, '38.15220', '-76.36970'), ('Golden Beach', 2665, '38.48730', '-76.69320'), ('Hillville', 1896, '38.37250', '-76.60280'), ('Hollywood', 1896, '38.34580', '-76.57190'), ('Leonardtown', 1896, '38.29960', '-76.64170'), ('Lexington Park', 11021, '38.26040', '-76.44590'), ('Mechanicsville', 0, '38.43000', '-76.73000'), ('Morganza', 0, '38.37530', '-76.69580'), ('Oakley', 1896, '38.27280', '-76.74000'), ('Patuxent River NAS', 0, '38.28000', '-76.43000'), ('Piney Point', 11021, '38.14220', '-76.50780'), ('Redgate', 1896, '38.25640', '-76.59890'), ('Ridge', 11021, '38.11920', '-76.37420'), ('Sandgates', 2665, '38.41280', '-76.61560'), ('Sotterley', 9307, '38.37830', '-76.53330'), ('Tintop Hill', 1896, '38.32220', '-76.61890')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDC039': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Byrdtown', 1326, '37.95950', '-75.83990'), ('Champ', 2313, '38.15390', '-75.80710'), ('Cokesbury', 4098, '38.12680', '-75.57900'), ('Crisfield', 2723, '37.97710', '-75.85930'), ('Dames Quarter', 188, '38.18850', '-75.89750'), ('Deal Island', 578, '38.15920', '-75.94880'), ('Eden', 793, '38.28120', '-75.65070'), ('Fairmount', 2723, '38.09010', '-75.81740'), ('Hopewell', 2723, '38.00690', '-75.81730'), ('Kingston', 2313, '38.07430', '-75.72850'), ('Lawsonia', 1326, '37.95750', '-75.84200'), ('Manokin', 2313, '38.11530', '-75.75600'), ('Marion Station', 367, '38.01631', '-75.73219'), ('Monie', 2313, '38.18610', '-75.81320'), ('Mount Vernon', 761, '38.24530', '-75.82180'), ('Oriole', 2313, '38.17440', '-75.80760'), ('Princess Anne', 2313, '38.20430', '-75.69540'), ('Rehobeth', 4098, '38.03930', '-75.66670'), ('Rumbley', 2723, '38.09190', '-75.84940'), ('Shelltown', 367, '37.98240', '-75.64400'), ('Upper Fairmount', 2313, '38.10420', '-75.79140'), ('Upper Hill', 2313, '38.11190', '-75.79000'), ('Westover', 2313, '38.12280', '-75.70690'), ('Widgeon', 2313, '38.25110', '-75.76940')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC039': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Byrdtown', 1326, '37.95950', '-75.83990'), ('Champ', 2313, '38.15390', '-75.80710'), ('Cokesbury', 4098, '38.12680', '-75.57900'), ('Crisfield', 2723, '37.97710', '-75.85930'), ('Dames Quarter', 188, '38.18850', '-75.89750'), ('Deal Island', 578, '38.15920', '-75.94880'), ('Eden', 793, '38.28120', '-75.65070'), ('Fairmount', 2723, '38.09010', '-75.81740'), ('Hopewell', 2723, '38.00690', '-75.81730'), ('Kingston', 2313, '38.07430', '-75.72850'), ('Lawsonia', 1326, '37.95750', '-75.84200'), ('Manokin', 2313, '38.11530', '-75.75600'), ('Marion Station', 367, '38.01631', '-75.73219'), ('Monie', 2313, '38.18610', '-75.81320'), ('Mount Vernon', 761, '38.24530', '-75.82180'), ('Oriole', 2313, '38.17440', '-75.80760'), ('Princess Anne', 2313, '38.20430', '-75.69540'), ('Rehobeth', 4098, '38.03930', '-75.66670'), ('Rumbley', 2723, '38.09190', '-75.84940'), ('Shelltown', 367, '37.98240', '-75.64400'), ('Upper Fairmount', 2313, '38.10420', '-75.79140'), ('Upper Hill', 2313, '38.11190', '-75.79000'), ('Westover', 2313, '38.12280', '-75.70690'), ('Widgeon', 2313, '38.25110', '-75.76940')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC041': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Copperville', 0, '38.82470', '-76.17110'), ('Cordova', 0, '38.88000', '-75.99000'), ('Easton', 0, '38.77000', '-76.07000'), ('Hambleton', 0, '38.69500', '-76.06470'), ('Matthews', 0, '38.81610', '-75.95310'), ('Oxford', 0, '38.68930', '-76.17080'), ('Skipton', 0, '38.89530', '-76.05920'), ('St. Michaels', 0, '38.78840', '-76.22220'), ('Talbot', 0, '38.81750', '-76.27830'), ('Tilghman Island', 0, '38.75000', '-76.33000'), ('Trappe', 0, '38.65980', '-76.05840'), ('Windyhill', 0, '38.68140', '-75.97780'), ('Wye Mills', 0, '38.94110', '-76.08080')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'MDC041': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Copperville', 0, '38.82470', '-76.17110'), ('Cordova', 0, '38.88000', '-75.99000'), ('Easton', 0, '38.77000', '-76.07000'), ('Hambleton', 0, '38.69500', '-76.06470'), ('Matthews', 0, '38.81610', '-75.95310'), ('Oxford', 0, '38.68930', '-76.17080'), ('Skipton', 0, '38.89530', '-76.05920'), ('St. Michaels', 0, '38.78840', '-76.22220'), ('Talbot', 0, '38.81750', '-76.27830'), ('Tilghman Island', 0, '38.75000', '-76.33000'), ('Trappe', 0, '38.65980', '-76.05840'), ('Windyhill', 0, '38.68140', '-75.97780'), ('Wye Mills', 0, '38.94110', '-76.08080')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'MDC043': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Antietam', 691, '39.41610', '-77.74250'), ('Boonsboro', 2803, '39.50950', '-77.65560'), ('Bridgeport', 2702, '39.64090', '-77.67320'), ('Brownsville', 171, '39.38190', '-77.66060'), ('Clear Spring', 455, '39.65590', '-77.93110'), ('Conococheague', 1868, '39.65720', '-77.84500'), ('Fairplay', 482, '39.53640', '-77.74780'), ('Forest Park', 0, '39.70280', '-78.29970'), ('Fort Ritchie', 276, '39.70050', '-77.50380'), ('Funkstown', 983, '39.60830', '-77.70800'), ('Gapland', 171, '39.40280', '-77.66060'), ('Hagerstown', 36687, '39.63790', '-77.71930'), ('Halfway', 10065, '39.61320', '-77.77070'), ('Hancock', 1725, '39.70290', '-78.17370'), ('Keedysville', 482, '39.48700', '-77.69920'), ('Leitersburg', 523, '39.69250', '-77.62310'), ('Long Meadow', 5594, '39.68620', '-77.71240'), ('Pecktonville', 455, '39.66970', '-78.04440'), ('Pleasantville', 308, '39.33970', '-77.73810'), ('Ringgold', 1683, '39.70940', '-77.56690'), ('Rohersville', 171, '39.43330', '-77.66310'), ('Sharpsburg', 691, '39.45760', '-77.74980'), ('Smithsburg', 2146, '39.65880', '-77.57800'), ('Warrenton', 0, '39.72000', '-77.78000'), ('Williamsport', 1868, '39.59630', '-77.81860')], 'partOfState': 'north central', 'wfo': 'LWX'}, +'MDC045': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Allen', 3774, '38.28950', '-75.68870'), ('Bivalve', 280, '38.30630', '-75.88940'), ('Catchpenny', 807, '38.35530', '-75.72420'), ('Chesapeake Heights', 23743, '38.37667', '-75.54472'), ('Delmar', 1859, '38.45260', '-75.57480'), ('Fruitland', 3774, '38.32190', '-75.62630'), ('Green Hill', 2313, '38.31170', '-75.77850'), ('Hebron', 807, '38.41760', '-75.68800'), ('Lakewood', 3774, '38.32990', '-75.59750'), ('Mardela Springs', 364, '38.45820', '-75.75660'), ('Melson', 1182, '38.44180', '-75.47710'), ('Nanticoke', 2313, '38.27220', '-75.90580'), ('Parsonsburg', 1182, '38.38800', '-75.47050'), ('Pittsville', 1182, '38.39330', '-75.41320'), ('Powellville', 938, '38.32890', '-75.37580'), ('Royal Oak', 364, '38.34980', '-75.79350'), ('Salisbury', 23743, '38.37190', '-75.58900'), ('Salisbury-Wicomico', 23743, '38.33990', '-75.50940'), ('Shad Point', 3774, '38.33980', '-75.63250'), ('Sharptown', 649, '38.53920', '-75.72030'), ('Trinity', 2313, '38.29440', '-75.74960'), ('Tyaskin', 280, '38.32680', '-75.87520'), ('Waterview', 2313, '38.24600', '-75.90230'), ('Wetipquin', 280, '38.33710', '-75.84750'), ('Whitehaven', 2313, '38.26920', '-75.79050'), ('Willards', 938, '38.39190', '-75.34990')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC045': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Allen', 3774, '38.28950', '-75.68870'), ('Bivalve', 280, '38.30630', '-75.88940'), ('Catchpenny', 807, '38.35530', '-75.72420'), ('Chesapeake Heights', 23743, '38.37667', '-75.54472'), ('Delmar', 1859, '38.45260', '-75.57480'), ('Fruitland', 3774, '38.32190', '-75.62630'), ('Green Hill', 2313, '38.31170', '-75.77850'), ('Hebron', 807, '38.41760', '-75.68800'), ('Lakewood', 3774, '38.32990', '-75.59750'), ('Mardela Springs', 364, '38.45820', '-75.75660'), ('Melson', 1182, '38.44180', '-75.47710'), ('Nanticoke', 2313, '38.27220', '-75.90580'), ('Parsonsburg', 1182, '38.38800', '-75.47050'), ('Pittsville', 1182, '38.39330', '-75.41320'), ('Powellville', 938, '38.32890', '-75.37580'), ('Royal Oak', 364, '38.34980', '-75.79350'), ('Salisbury', 23743, '38.37190', '-75.58900'), ('Salisbury-Wicomico', 23743, '38.33990', '-75.50940'), ('Shad Point', 3774, '38.33980', '-75.63250'), ('Sharptown', 649, '38.53920', '-75.72030'), ('Trinity', 2313, '38.29440', '-75.74960'), ('Tyaskin', 280, '38.32680', '-75.87520'), ('Waterview', 2313, '38.24600', '-75.90230'), ('Wetipquin', 280, '38.33710', '-75.84750'), ('Whitehaven', 2313, '38.26920', '-75.79050'), ('Willards', 938, '38.39190', '-75.34990')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC047': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Beaver Dam', 4098, '38.01520', '-75.56080'), ('Berlin', 3491, '38.32520', '-75.21810'), ('Bishop', 1335, '38.42860', '-75.21950'), ('Bishopville', 1335, '38.44260', '-75.19380'), ('Boxiron', 2409, '38.11530', '-75.34920'), ('Cape Isle Of Wight', 3311, '38.35278', '-75.11833'), ('Cedartown', 2409, '38.19560', '-75.30120'), ('Girdletree', 2409, '38.09420', '-75.39760'), ('Goodwill', 4098, '38.07080', '-75.49140'), ('Ironshire', 3491, '38.28420', '-75.23140'), ('Longridge', 3774, '38.26670', '-75.51340'), ('Mount Wesley', 2409, '38.17160', '-75.34620'), ('Newark', 3491, '38.25080', '-75.29090'), ('Ocean City', 7173, '38.35720', '-75.07400'), ('Ocean City Municipality', 3311, '38.31170', '-75.12380'), ('Ocean Pines', 10496, '38.38310', '-75.14960'), ('Pocomoke City', 4098, '38.06710', '-75.56190'), ('Public Landing', 2409, '38.14910', '-75.28860'), ('Showell', 1335, '38.39970', '-75.21160'), ('Snow Hill', 2409, '38.17320', '-75.39160'), ('Stockton', 143, '38.05370', '-75.40990'), ('West Ocean City', 3311, '38.34530', '-75.10970'), ('Whaleyville', 124, '38.40160', '-75.30370'), ('Whitesburg', 4098, '38.18570', '-75.53790'), ('Whiton', 938, '38.28930', '-75.37710')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC047': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Beaver Dam', 4098, '38.01520', '-75.56080'), ('Berlin', 3491, '38.32520', '-75.21810'), ('Bishop', 1335, '38.42860', '-75.21950'), ('Bishopville', 1335, '38.44260', '-75.19380'), ('Boxiron', 2409, '38.11530', '-75.34920'), ('Cape Isle Of Wight', 3311, '38.35278', '-75.11833'), ('Cedartown', 2409, '38.19560', '-75.30120'), ('Girdletree', 2409, '38.09420', '-75.39760'), ('Goodwill', 4098, '38.07080', '-75.49140'), ('Ironshire', 3491, '38.28420', '-75.23140'), ('Longridge', 3774, '38.26670', '-75.51340'), ('Mount Wesley', 2409, '38.17160', '-75.34620'), ('Newark', 3491, '38.25080', '-75.29090'), ('Ocean City', 7173, '38.35720', '-75.07400'), ('Ocean City Municipality', 3311, '38.31170', '-75.12380'), ('Ocean Pines', 10496, '38.38310', '-75.14960'), ('Pocomoke City', 4098, '38.06710', '-75.56190'), ('Public Landing', 2409, '38.14910', '-75.28860'), ('Showell', 1335, '38.39970', '-75.21160'), ('Snow Hill', 2409, '38.17320', '-75.39160'), ('Stockton', 143, '38.05370', '-75.40990'), ('West Ocean City', 3311, '38.34530', '-75.10970'), ('Whaleyville', 124, '38.40160', '-75.30370'), ('Whitesburg', 4098, '38.18570', '-75.53790'), ('Whiton', 938, '38.28930', '-75.37710')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDC510': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Baltimore', 651154, '39.30080', '-76.61060'), ('Fells Point', 651154, '39.26470', '-76.56500'), ('Hamilton', 12148, '39.34080', '-76.55190'), ('Highlandtown', 62306, '39.28690', '-76.54890'), ('Park Heights', 651154, '39.33690', '-76.60780')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDC510': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Baltimore', 651154, '39.30080', '-76.61060'), ('Fells Point', 651154, '39.26470', '-76.56500'), ('Hamilton', 12148, '39.34080', '-76.55190'), ('Highlandtown', 62306, '39.28690', '-76.54890'), ('Park Heights', 651154, '39.33690', '-76.60780')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MEC001': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Auburn', 23203, '44.09780', '-70.23170'), ('Greene', 35690, '44.18970', '-70.14080'), ('Leeds', 2893, '44.30330', '-70.12000'), ('Lewiston', 35690, '44.10030', '-70.21530'), ('Lisbon Falls', 4420, '43.99610', '-70.06110'), ('Livermore', 1626, '44.33390', '-70.24970'), ('Livermore Falls', 1626, '44.47530', '-70.18860'), ('Mechanic Falls', 2450, '44.11170', '-70.39220'), ('Minot', 24309, '44.08560', '-70.32060'), ('Poland', 2450, '44.06060', '-70.39420'), ('Sabattus', 35690, '44.11970', '-70.10810'), ('Turner', 24309, '44.25640', '-70.25670'), ('Wales', 35690, '44.18360', '-70.06560')], 'partOfState': 'southwest', 'wfo': 'GYX'}, +'MEC003': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Allagash', 1978, '47.08330', '-69.04170'), ('Ashland', 9511, '46.63110', '-68.40670'), ('Bancroft', 5270, '45.67360', '-68.03140'), ('Benedicta', 1701, '45.80170', '-68.41220'), ('Blaine', 1428, '46.50470', '-67.86920'), ('Bridgewater', 1428, '46.42780', '-67.84390'), ('Caribou', 8312, '46.86060', '-68.01250'), ('Cary', 5270, '45.99530', '-67.86250'), ('Chapman', 9511, '46.64810', '-68.16140'), ('Clayton Lake', 1319, '46.61080', '-69.52280'), ('Crystal', 1701, '45.95920', '-68.36080'), ('Daigle', 1978, '47.18940', '-68.46140'), ('Deboullie Mountain', 1978, '46.97060', '-68.87640'), ('Dickey', 1978, '47.10950', '-69.08720'), ('Dudley', 5270, '46.17140', '-68.16030'), ('Dyer Brook', 5270, '46.08140', '-68.18390'), ('Eagle Lake', 1978, '47.04000', '-68.59000'), ('Easton', 9511, '46.64110', '-67.91000'), ('Fort Fairfield', 1600, '46.77220', '-67.83440'), ('Fort Kent', 1978, '47.25860', '-68.59000'), ('Frenchville', 3326, '47.28080', '-68.38030'), ('Grand Isle', 3326, '47.30530', '-68.15250'), ('Guerette', 3326, '47.12940', '-68.31780'), ('Haynesville', 5270, '45.82610', '-67.99170'), ('Hodgdon', 5270, '46.05390', '-67.86720'), ('Houlton', 5270, '46.12610', '-67.84080'), ('Island Falls', 5270, '46.00920', '-68.27190'), ('Limestone', 1453, '46.90860', '-67.82640'), ('Linneus', 5270, '46.03860', '-67.96060'), ('Littleton', 5270, '46.23080', '-67.84170'), ('Loring', 7829, '46.94040', '-67.89480'), ('Ludlow', 5270, '46.14060', '-68.04060'), ('Macwahoc', 1701, '45.62830', '-68.26330'), ('Madawaska', 3326, '47.35530', '-68.32220'), ('Mapleton', 9511, '46.68190', '-68.16330'), ('Mars Hill', 1428, '46.51580', '-67.86690'), ('Masardis', 9511, '46.50360', '-68.36170'), ('Molunkus', 1701, '45.61530', '-68.30390'), ('Monarda', 1701, '45.79690', '-68.32440'), ('Monticello', 5270, '46.30830', '-67.84310'), ('New Limerick', 5270, '46.10110', '-67.96060'), ('New Sweden', 8312, '46.94170', '-68.12110'), ('Nine-Mile Bridge', 1319, '46.70590', '-69.72360'), ('North Amity', 5270, '45.94170', '-67.83080'), ('Oakfield', 5270, '46.09890', '-68.15060'), ('Orient', 5270, '45.81690', '-67.84060'), ('Oxbow', 9511, '46.41860', '-68.49060'), ('Perham', 8312, '46.84420', '-68.19780'), ('Portage', 9511, '46.76310', '-68.47640'), ('Presque Isle', 9511, '46.68110', '-68.01640'), ('Reed', 1701, '45.72360', '-68.14280'), ('Russel Crossing', 1978, '46.64000', '-68.74000'), ('Saint Agatha', 3326, '47.24310', '-68.31420'), ('Saint Francis', 1978, '47.17110', '-68.89030'), ('Saint Pamphile', 1978, '46.92000', '-69.70940'), ('Sherman', 1701, '45.87110', '-68.41830'), ('Silver Ridge', 1701, '45.80640', '-68.32530'), ('Smyrna Mills', 5270, '46.12940', '-68.16470'), ('Soldier Pond', 1978, '47.15610', '-68.57640'), ('Squa Pan', 9511, '46.56310', '-68.37860'), ('Stockholm', 2759, '47.04220', '-68.14000'), ('Wallagrass', 1978, '47.12940', '-68.59780'), ('Washburn', 8312, '46.79000', '-68.15810'), ('Westfield', 1428, '46.57030', '-67.92310'), ('Winterville', 1978, '46.97030', '-68.57170'), ('Woodland', 8312, '46.88530', '-68.14250'), ('Wytopitlock', 1701, '45.64060', '-68.07610')], 'partOfState': 'northern', 'wfo': 'CAR'}, +'MEC005': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Bridgton', 2359, '44.05470', '-70.71330'), ('Brunswick', 14816, '43.91440', '-69.96580'), ('Brunswick Naval Air Station', 1511, '43.89620', '-69.93140'), ('Cape Elizabeth', 23324, '43.56360', '-70.20060'), ('Casco', 1300, '44.00670', '-70.52330'), ('Cumberland', 2596, '43.79640', '-70.25940'), ('Falmouth', 1708, '43.72940', '-70.24250'), ('Freeport', 1813, '43.85690', '-70.10360'), ('Gorham', 4164, '43.67940', '-70.44470'), ('Gray', 2596, '43.88560', '-70.33220'), ('Harpswell', 1511, '43.80170', '-69.98470'), ('Harrison', 2359, '44.11030', '-70.67970'), ('Naples', 2359, '43.97170', '-70.60970'), ('New Gloucester', 24309, '43.96280', '-70.28310'), ('North Windham', 4568, '43.83420', '-70.43890'), ('North Yarmouth', 3560, '43.84440', '-70.21780'), ('Portland', 64249, '43.66140', '-70.25580'), ('Pownal', 1813, '43.89220', '-70.18580'), ('Raymond', 4568, '43.90140', '-70.47080'), ('Scarborough', 3867, '43.57810', '-70.32220'), ('South Portland', 23324, '43.64140', '-70.24140'), ('South Windham', 1715, '43.73610', '-70.42420'), ('Standish', 4164, '43.73580', '-70.55250'), ('West Baldwin', 2359, '43.83310', '-70.77830'), ('Westbrook', 16142, '43.67690', '-70.37170'), ('Yarmouth', 3560, '43.80060', '-70.18720')], 'partOfState': 'southwest', 'wfo': 'GYX'}, +'MEC007': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Avon', 4098, '44.80610', '-70.27170'), ('Carrabassett Valley', 856, '45.07780', '-70.21250'), ('Carthage', 1137, '44.62420', '-70.47360'), ('Chesterville', 1399, '44.55110', '-70.08670'), ('Coburn Gore', 4795, '45.37920', '-70.80390'), ('Dallas', 1946, '44.99690', '-70.55640'), ('Davis', 4795, '45.08720', '-70.78610'), ('Eustis', 856, '45.21720', '-70.47890'), ('Farmington', 4098, '44.67060', '-70.15170'), ('Jay', 1399, '44.50390', '-70.21670'), ('Kingfield', 4098, '44.95920', '-70.15440'), ('Madrid', 1946, '44.86440', '-70.46250'), ('New Sharon', 4098, '44.63890', '-70.01610'), ('New Vineyard', 4098, '44.80420', '-70.12190'), ('Oquossoc', 4795, '44.96640', '-70.77420'), ('Phillips', 4098, '44.82310', '-70.34000'), ('Rangeley', 4795, '44.96640', '-70.64330'), ('Redington', 4098, '44.98440', '-70.43580'), ('Salem', 4098, '44.90060', '-70.27860'), ('Stratton', 4098, '45.14110', '-70.44110'), ('Strong', 4098, '44.80750', '-70.22140'), ('Temple', 4098, '44.68500', '-70.22690'), ('Tim Pond', 1946, '45.17030', '-70.62310'), ('Weld', 1137, '44.69860', '-70.42190'), ('Wilton', 2290, '44.59280', '-70.22860')], 'partOfState': 'western', 'wfo': 'GYX'}, +'MEC009': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Amherst', 6456, '44.83330', '-68.36470'), ('Aurora', 6456, '44.85420', '-68.32860'), ('Bar Harbor', 2830, '44.38750', '-68.20440'), ('Blue Hill', 6456, '44.41390', '-68.58720'), ('Brooklin', 6456, '44.26610', '-68.56970'), ('Brooksville', 1102, '44.34670', '-68.68420'), ('Cranberry Isles', 2830, '44.24830', '-68.26080'), ('Dedham', 8987, '44.69170', '-68.66250'), ('Deer Isle', 1102, '44.22390', '-68.67810'), ('Eastbrook', 6456, '44.67860', '-68.26500'), ('Ellsworth', 6456, '44.54060', '-68.42000'), ('Franklin', 2830, '44.58690', '-68.23280'), ('Frenchboro', 2830, '44.11810', '-68.36310'), ('Gouldsboro', 2830, '44.47830', '-68.03890'), ('Great Pond', 2197, '44.94030', '-68.28250'), ('Hancock', 2830, '44.52920', '-68.25420'), ('Mariaville', 6456, '44.72060', '-68.41610'), ('Orland', 2970, '44.57030', '-68.73640'), ('Penobscot', 2970, '44.46440', '-68.71170'), ('Sedgwick', 6456, '44.30360', '-68.61670'), ('Somesville', 2830, '44.36220', '-68.33470'), ('Surry', 6456, '44.49580', '-68.50220'), ('Swans Island', 2830, '44.14500', '-68.45220'), ('Tremont', 2830, '44.25360', '-68.35190'), ('Trenton', 2830, '44.43890', '-68.37060'), ('Waltham', 6456, '44.70860', '-68.33890'), ('Winter Harbor', 2830, '44.39530', '-68.08360')], 'partOfState': 'southeast', 'wfo': 'CAR'}, +'MEC011': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Albion', 1305, '44.53220', '-69.44310'), ('Augusta', 18560, '44.31060', '-69.78000'), ('Belgrade', 2467, '44.44720', '-69.83310'), ('Benton', 2569, '44.58610', '-69.55140'), ('Chelsea', 1911, '44.25030', '-69.71780'), ('China', 7743, '44.47860', '-69.51780'), ('Clinton', 1305, '44.63780', '-69.50360'), ('Farmingdale', 1935, '44.24440', '-69.77190'), ('Fayette', 2893, '44.40890', '-70.03420'), ('Gardiner', 6198, '44.23000', '-69.77580'), ('Hallowell', 2467, '44.28580', '-69.79140'), ('Litchfield', 4420, '44.13310', '-69.96560'), ('Manchester', 2467, '44.32440', '-69.86080'), ('Monmouth', 2893, '44.23860', '-70.01940'), ('Mount Vernon', 2893, '44.50110', '-69.98810'), ('Oakland', 2758, '44.54030', '-69.72250'), ('Palermo', 7743, '44.40780', '-69.47440'), ('Pittston', 1911, '44.22170', '-69.75610'), ('Randolph', 1911, '44.23030', '-69.76720'), ('Readfield', 2893, '44.38780', '-69.96720'), ('Rome', 1557, '44.58500', '-69.86970'), ('Sidney', 18560, '44.41310', '-69.72940'), ('Vassalboro', 17173, '44.45920', '-69.67810'), ('Vienna', 1626, '44.53330', '-69.98530'), ('Waterville', 15605, '44.55190', '-69.63220'), ('Wayne', 2893, '44.34860', '-70.06670'), ('Windsor', 18560, '44.31060', '-69.58110'), ('Winslow', 7743, '44.56360', '-69.62170'), ('Winthrop', 2893, '44.30500', '-69.97750')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEC013': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Appleton', 3934, '44.28920', '-69.25140'), ('Camden', 3934, '44.20970', '-69.06530'), ('Cushing', 2714, '44.01920', '-69.24030'), ('Friendship', 1291, '43.98360', '-69.33440'), ('Hope', 3934, '44.26500', '-69.15940'), ('Matinicus', 7609, '43.86500', '-68.88750'), ('Owls Head', 7609, '44.08220', '-69.05780'), ('Rockland', 7609, '44.10360', '-69.10940'), ('Rockport', 3934, '44.18440', '-69.07670'), ('Saint George', 2714, '44.01640', '-69.19940'), ('South Thomaston', 2714, '44.05140', '-69.12830'), ('Thomaston', 2714, '44.07890', '-69.18220'), ('Union', 1291, '44.21140', '-69.27470'), ('Vinalhaven', 3934, '44.04810', '-68.83220'), ('Warren', 2714, '44.12030', '-69.24060'), ('Washington', 1291, '44.27360', '-69.36780')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEC015': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Alna', 1751, '44.10610', '-69.60420'), ('Boothbay', 1237, '43.87640', '-69.63420'), ('Boothbay Harbor', 1237, '43.85220', '-69.62860'), ('Bremen', 1751, '44.00140', '-69.42920'), ('Bristol', 1751, '43.95750', '-69.50970'), ('Damariscotta', 1751, '44.03280', '-69.51920'), ('Dresden', 1864, '44.10720', '-69.72470'), ('Edgecomb', 1203, '43.95830', '-69.63110'), ('Jefferson', 1291, '44.20670', '-69.45310'), ('Monhegan', 1237, '43.76220', '-69.32080'), ('Newcastle', 1751, '44.03500', '-69.53720'), ('Nobleboro', 1751, '44.07940', '-69.48560'), ('Somerville', 1291, '44.30920', '-69.48940'), ('South Bristol', 1237, '43.86390', '-69.56170'), ('Southport', 1237, '43.84080', '-69.65920'), ('Waldoboro', 1291, '44.09610', '-69.38150'), ('Westport', 1237, '43.89920', '-69.70890'), ('Whitefield', 1911, '44.17000', '-69.62580'), ('Wiscasset', 1203, '44.00280', '-69.66610')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEC017': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Andover', 4795, '44.63560', '-70.75170'), ('Bethel', 4795, '44.40420', '-70.79110'), ('Brownfield', 1549, '43.93810', '-70.90920'), ('Bryant Pond', 4795, '44.37830', '-70.64640'), ('Buckfield', 2237, '44.28940', '-70.36580'), ('Byron', 4795, '44.72190', '-70.63110'), ('Canton', 1399, '44.44060', '-70.31580'), ('Denmark', 2359, '43.97030', '-70.80390'), ('Dixfield', 1137, '44.53390', '-70.45920'), ('Fryeburg', 1549, '44.01640', '-70.98110'), ('Gilead', 1910, '44.39420', '-70.97330'), ('Greenwood', 2623, '44.31830', '-70.65140'), ('Hanover', 4795, '44.49670', '-70.69470'), ('Hartford', 1626, '44.37280', '-70.34720'), ('Hebron', 2450, '44.19810', '-70.40690'), ('Hiram', 2359, '43.87860', '-70.80390'), ('Kezar Falls', 1549, '43.80780', '-70.88940'), ('Locke Mills', 4795, '44.40000', '-70.70250'), ('Lovell', 1549, '44.12670', '-70.89220'), ('Mexico', 1946, '44.56080', '-70.54580'), ('Middle Dam', 4795, '44.78000', '-70.92280'), ('Milton', 4795, '44.44780', '-70.65360'), ('Newry', 4795, '44.48720', '-70.78750'), ('Norway', 2623, '44.21390', '-70.54530'), ('Otisfield', 1300, '44.14830', '-70.56440'), ('Oxford', 1300, '44.13170', '-70.49360'), ('Peru', 1137, '44.50670', '-70.40580'), ('Porter', 1549, '43.79580', '-70.93310'), ('Roxbury', 4795, '44.66970', '-70.59390'), ('Rumford', 4795, '44.55360', '-70.55140'), ('South Arm', 4795, '44.75530', '-70.84610'), ('South Paris', 2237, '44.22360', '-70.51390'), ('Stoneham', 2359, '44.25030', '-70.81310'), ('Stowe', 1549, '44.16060', '-70.98560'), ('Sumner', 1137, '44.39190', '-70.43890'), ('Sweden', 2359, '44.13330', '-70.82310'), ('Upton', 11824, '44.69420', '-71.01110'), ('Waterford', 2359, '44.18140', '-70.71780'), ('West Paris', 2623, '44.32420', '-70.57440'), ('Wilsons Mills', 11824, '44.93810', '-71.03580')], 'partOfState': 'western', 'wfo': 'GYX'}, +'MEC019': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Alton', 8130, '45.03140', '-68.72920'), ('Argyle', 2197, '45.05420', '-68.67280'), ('Bangor', 31473, '44.80110', '-68.77830'), ('Bradford', 1898, '45.06670', '-68.93830'), ('Bradley', 2197, '44.92080', '-68.62860'), ('Brewer', 8987, '44.79670', '-68.76190'), ('Burlington', 2933, '45.20920', '-68.42720'), ('Carmel', 1754, '44.79750', '-69.05170'), ('Carroll', 2933, '45.41440', '-68.03860'), ('Charleston', 1898, '45.08500', '-69.04110'), ('Chester', 2933, '45.40860', '-68.50030'), ('Clifton', 2197, '44.81670', '-68.51170'), ('Corinna', 1754, '44.92110', '-69.26220'), ('Costigan', 2197, '45.01280', '-68.64000'), ('Dexter', 2201, '45.02390', '-69.29030'), ('Dixmont', 1754, '44.68030', '-69.16330'), ('East Corinth', 1898, '45.00250', '-69.02420'), ('East Millinocket', 1701, '45.62750', '-68.57500'), ('Eddington', 8253, '44.82610', '-68.69390'), ('Enfield', 1210, '45.24890', '-68.56890'), ('Etna', 1754, '44.82080', '-69.11170'), ('Exeter', 2201, '44.97000', '-69.14060'), ('Garland', 2201, '45.03830', '-69.16080'), ('Glenburn', 31473, '44.91060', '-68.84780'), ('Grand Lake Matagamon', 5190, '46.16440', '-68.78690'), ('Greenbush', 2197, '45.08030', '-68.65140'), ('Greenfield', 2197, '45.04720', '-68.48190'), ('Grindstone', 1701, '45.73610', '-68.58720'), ('Hampden', 4126, '44.74440', '-68.83750'), ('Hermon', 4126, '44.81000', '-68.91390'), ('Holden', 8987, '44.75280', '-68.67940'), ('Howland', 1210, '45.23860', '-68.66420'), ('Hudson', 8130, '45.00110', '-68.88110'), ('Kenduskeag', 31473, '44.91940', '-68.93220'), ('Kingman', 2933, '45.54940', '-68.20000'), ('Lagrange', 1898, '45.16670', '-68.84500'), ('Lee', 2933, '45.36000', '-68.28690'), ('Levant', 31473, '44.86920', '-68.93530'), ('Lincoln', 2933, '45.36220', '-68.50560'), ('Lowell', 2933, '45.18780', '-68.46830'), ('Mattawamkeag', 2933, '45.51360', '-68.35500'), ('Medway', 1701, '45.60890', '-68.53140'), ('Milford', 2197, '44.94610', '-68.64440'), ('Millinocket', 5190, '45.65720', '-68.71030'), ('Moosehorn Crossing', 5190, '46.34830', '-68.76330'), ('Newburgh', 1307, '44.72170', '-69.00280'), ('Newport', 1754, '44.83530', '-69.27440'), ('Norcross', 5190, '45.62940', '-68.80310'), ('Old Town', 8130, '44.93420', '-68.64580'), ('Orono', 8253, '44.88310', '-68.67250'), ('Orrington', 4126, '44.73110', '-68.82690'), ('Passadumkeag', 1210, '45.18530', '-68.61720'), ('Patten', 1701, '45.99640', '-68.44670'), ('Plymouth', 1754, '44.76720', '-69.21080'), ('Saponac', 2933, '45.17080', '-68.31860'), ('Seboeis', 1210, '45.36310', '-68.71170'), ('Sherman Station', 1701, '45.89920', '-68.43000'), ('Shin Pond', 5190, '46.10530', '-68.55720'), ('Springfield', 2933, '45.39610', '-68.13610'), ('Stacyville', 1701, '45.86360', '-68.50580'), ('Stetson', 1754, '44.89170', '-69.14330'), ('Veazie', 8253, '44.83860', '-68.70580'), ('West Seboeis', 5190, '45.52920', '-68.87920'), ('Winn', 2933, '45.48560', '-68.37280')], 'partOfState': 'east central', 'wfo': 'CAR'}, +'MEC021': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Abbot', 945, '45.18640', '-69.45250'), ('Atkinson', 1898, '45.15970', '-69.08280'), ('Barnard', 2592, '45.36640', '-69.20750'), ('Baxter St Park', 5190, '46.02450', '-68.99500'), ('Blanchard', 1319, '45.26750', '-69.58420'), ('Bowerbank', 2592, '45.27278', '-69.21200'), ('Boyd Lake', 2592, '45.17736', '-68.92100'), ('Brownville', 1898, '45.30690', '-69.03390'), ('Brownville Junction', 1898, '45.35000', '-69.05280'), ('Caucomgomoc Lake', 1319, '46.19470', '-69.55920'), ('Chamberlain Lake', 1319, '46.27500', '-69.35170'), ('Chesuncook', 1319, '46.06030', '-69.41000'), ('Churchill Dam', 5190, '46.49250', '-69.28970'), ('Dover-Foxcroft', 2592, '45.18330', '-69.22750'), ('Greenville', 1319, '45.45940', '-69.59110'), ('Guilford', 945, '45.16890', '-69.38500'), ('Katahdin Iron Works', 2592, '45.44330', '-69.17750'), ('Kingsbury', 856, '45.11940', '-69.64970'), ('Kokadjo', 1319, '45.67110', '-69.44750'), ('Lake View', 1898, '45.32330', '-68.92640'), ('Lily Bay', 1319, '45.59780', '-69.54720'), ('Lobster Lake', 1319, '45.85310', '-69.52310'), ('Medford', 1898, '45.28530', '-68.85220'), ('Milo', 1898, '45.25360', '-68.98640'), ('Monson', 945, '45.28690', '-69.50170'), ('Mount Katahdin', 5190, '45.90420', '-68.92280'), ('North East Carry', 1319, '45.86640', '-69.62690'), ('Onawa', 945, '45.36670', '-69.37220'), ('Parkman', 945, '45.13360', '-69.43360'), ('Ripogenus', 5190, '45.88140', '-69.17580'), ('Rockwood', 1319, '45.67780', '-69.74140'), ('Sangerville', 945, '45.16470', '-69.35690'), ('Sebec', 2592, '45.27140', '-69.11720'), ('Shirley', 1319, '45.36560', '-69.61860'), ('Tamway', 1319, '46.32220', '-69.37700'), ('Telos Lake', 5190, '46.14690', '-69.12720'), ('Wellington', 872, '45.03970', '-69.59780'), ('Williamsburg', 1898, '45.38000', '-69.11640'), ('Willimantic', 945, '45.30670', '-69.40890')], 'partOfState': 'north central', 'wfo': 'CAR'}, +'MEC023': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Arrowsic', 9266, '43.84970', '-69.77860'), ('Bath', 9266, '43.91060', '-69.82110'), ('Bowdoin', 4420, '44.04720', '-70.02530'), ('Bowdoinham', 6271, '44.01000', '-69.89890'), ('Georgetown', 1237, '43.80440', '-69.74720'), ('Phippsburg', 9266, '43.82060', '-69.81530'), ('Richmond', 1864, '44.08720', '-69.79940'), ('Topsham', 6271, '43.92750', '-69.97640')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEC025': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Anson', 818, '44.79830', '-69.88970'), ('Athens', 6696, '44.92310', '-69.67330'), ('Attean', 856, '45.57470', '-70.31860'), ('Baker Lake', 1319, '46.26470', '-69.91030'), ('Billy-Jack Depot', 1319, '46.24500', '-70.03670'), ('Bingham', 856, '45.05860', '-69.88280'), ('Brassua', 1319, '45.62670', '-69.91280'), ('Brighton', 856, '45.04530', '-69.69530'), ('Cambridge', 872, '45.02420', '-69.47440'), ('Canaan', 1305, '44.76170', '-69.56190'), ('Caratunk', 856, '45.23390', '-69.99060'), ('Comstock', 1319, '45.99170', '-70.02890'), ('Cornville', 6696, '44.83670', '-69.67360'), ('Detroit', 1754, '44.79250', '-69.29720'), ('Embden', 2733, '44.91810', '-69.86720'), ('Fairfield', 2569, '44.58830', '-69.59920'), ('Flagstaff Lake', 856, '45.22780', '-70.20390'), ('Harmony', 872, '44.97390', '-69.54670'), ('Hartland', 872, '44.88330', '-69.44810'), ('Jackman', 856, '45.62390', '-70.25500'), ('Lake Moxie', 856, '45.35110', '-69.88470'), ('Long Pond', 1319, '45.62140', '-70.08690'), ('Madison', 2733, '44.79750', '-69.88030'), ('Mayfield', 856, '45.10360', '-69.69360'), ('Mercer', 2733, '44.67810', '-69.93690'), ('Moosehead', 1319, '45.58330', '-69.71420'), ('Moscow', 856, '45.07060', '-69.89170'), ('New Portland', 4098, '44.88420', '-70.09720'), ('Norridgewock', 1557, '44.71310', '-69.79110'), ('Palmyra', 3217, '44.84640', '-69.35920'), ('Pittsfield', 3217, '44.78250', '-69.38390'), ('Pittston Farm', 1319, '45.89250', '-69.96530'), ('Ripley', 2201, '44.99110', '-69.37220'), ('Saint Albans', 872, '44.91000', '-69.41060'), ('Seboomook', 1319, '45.88060', '-69.72560'), ('Skowhegan', 6696, '44.76500', '-69.71970'), ('Solon', 856, '44.94940', '-69.85890'), ('The Forks', 856, '45.33610', '-69.96780')], 'partOfState': 'west central', 'wfo': 'GYXCAR'}, +'MEC027': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Belfast', 6381, '44.42580', '-69.00690'), ('Brooks', 6381, '44.55030', '-69.12140'), ('Burnham', 1305, '44.69280', '-69.42810'), ('Frankfort', 1307, '44.60970', '-68.87720'), ('Freedom', 1305, '44.53030', '-69.29830'), ('Isleboro', 1102, '44.30830', '-68.90390'), ('Jackson', 6381, '44.61470', '-69.12140'), ('Knox', 6381, '44.52310', '-69.24310'), ('Liberty', 6381, '44.38920', '-69.30330'), ('Lincolnville', 3934, '44.28110', '-69.00920'), ('Monroe', 1307, '44.61500', '-69.01860'), ('Montville', 6381, '44.44670', '-69.24670'), ('Morrill', 6381, '44.44310', '-69.14970'), ('Northport', 6381, '44.33780', '-68.96190'), ('Prospect', 2970, '44.55310', '-68.86530'), ('Searsmont', 6381, '44.36170', '-69.19560'), ('Searsport', 1102, '44.45830', '-68.92470'), ('Stockton Springs', 1102, '44.48940', '-68.85750'), ('Swanville', 1102, '44.52110', '-68.99830'), ('Thorndike', 1305, '44.57810', '-69.27640'), ('Troy', 1754, '44.66470', '-69.24140'), ('Unity', 486, '44.61110', '-69.33500'), ('Waldo', 6381, '44.51250', '-69.07670')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEC029': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Addison', 1044, '44.62070', '-67.74300'), ('Alexander', 1044, '45.08960', '-67.46900'), ('Brookton', 1044, '45.52970', '-67.76610'), ('Calais', 0, '45.18896', '-67.27860'), ('Centerville', 1376, '44.70560', '-67.67940'), ('Charlotte', 3963, '45.02110', '-67.24580'), ('Cherryfield', 2830, '44.60720', '-67.92640'), ('Codyville', 1044, '45.43970', '-67.69470'), ('Columbia', 1376, '44.65810', '-67.77500'), ('Columbia Falls', 1376, '44.65360', '-67.72810'), ('Cooper', 1044, '44.95940', '-67.44030'), ('Crawford', 1044, '45.05280', '-67.55190'), ('Danforth', 5270, '45.66030', '-67.86890'), ('Deblois', 2830, '44.74140', '-68.01530'), ('Dennysville', 1640, '44.90360', '-67.22920'), ('East Machias', 1376, '44.73920', '-67.39060'), ('Eastport', 1640, '44.90610', '-66.99060'), ('Eaton', 5270, '45.60530', '-67.80610'), ('Edmunds', 1640, '44.87190', '-67.16470'), ('Forest', 1044, '45.57110', '-67.72830'), ('Forest City', 5270, '45.65970', '-67.73030'), ('Grand Lake Stream', 1044, '45.17940', '-67.77500'), ('Harrington', 1376, '44.61920', '-67.81080'), ('Jonesboro', 1376, '44.66250', '-67.57310'), ('Jonesport', 1376, '44.53280', '-67.59890'), ('Lambert Lake', 1044, '45.54580', '-67.52750'), ('Machias', 1376, '44.71500', '-67.46190'), ('Machiasport', 1376, '44.69860', '-67.39530'), ('Marion', 1376, '44.87830', '-67.31750'), ('Marshfield', 1376, '44.73310', '-67.47810'), ('Meddybemps', 1044, '45.03830', '-67.35640'), ('Millbridge', 2830, '44.53530', '-67.88140'), ('Northfield', 1376, '44.82890', '-67.57110'), ('Pembroke', 1640, '44.95360', '-67.16250'), ('Perry', 1640, '44.97500', '-67.07640'), ('Princeton', 1044, '45.22330', '-67.57280'), ('Roque Bluffs', 1376, '44.61280', '-67.48030'), ('Steuben', 2830, '44.51060', '-67.96580'), ('Topsfield', 1044, '45.41890', '-67.73610'), ('Trescott', 1640, '44.76920', '-67.07470'), ('Vanceboro', 1044, '45.56330', '-67.43030'), ('Waite', 1044, '45.32560', '-67.69080'), ('Wesley', 1376, '44.95220', '-67.66140'), ('Whiting', 1640, '44.79080', '-67.17610'), ('Whitneyville', 1376, '44.72190', '-67.52390')], 'partOfState': 'southeast', 'wfo': 'CAR'}, +'MEC031': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Acton', 3488, '43.53420', '-70.91030'), ('Alfred', 10133, '43.47640', '-70.71890'), ('Arundel', 1376, '43.38250', '-70.47830'), ('Berwick', 1993, '43.26580', '-70.86500'), ('Biddeford', 20942, '43.49250', '-70.45390'), ('Buxton', 4164, '43.63780', '-70.51940'), ('Cape Neddick', 2997, '43.17000', '-70.61930'), ('Cornish', 2359, '43.80470', '-70.80170'), ('Eliot', 3445, '43.15310', '-70.80060'), ('Goodwins Mills', 4804, '43.50860', '-70.58220'), ('Hollis', 15181, '43.60500', '-70.59360'), ('Kennebunk', 4804, '43.38390', '-70.54530'), ('Kennebunkport', 1376, '43.36170', '-70.47720'), ('Kittery', 4884, '43.08810', '-70.73670'), ('Kittery Point', 1093, '43.08470', '-70.69950'), ('Lebanon', 10133, '43.39440', '-70.85140'), ('Limerick', 3488, '43.68830', '-70.79420'), ('Limington', 4164, '43.73170', '-70.71140'), ('Newfield', 3488, '43.64810', '-70.84750'), ('North Berwick', 1580, '43.30360', '-70.73390'), ('Ogunquit', 2997, '43.24890', '-70.59970'), ('Old Orchard Beach', 8856, '43.51720', '-70.37810'), ('Parsonsfield', 3488, '43.72690', '-70.92920'), ('Saco', 16822, '43.50080', '-70.44330'), ('Sanford', 10133, '43.43920', '-70.77470'), ('Shapleigh', 3488, '43.54060', '-70.84860'), ('South Berwick', 1993, '43.23440', '-70.81000'), ('South Eliot', 3445, '43.12740', '-70.79820'), ('Springvale', 3488, '43.46700', '-70.80320'), ('Waterboro', 3488, '43.53560', '-70.71560'), ('Wells', 4804, '43.32190', '-70.58140'), ('York', 2555, '43.14360', '-70.65140')], 'partOfState': 'southwest', 'wfo': 'GYX'}, +'MIC001': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Barton City', 364, '44.68330', '-83.60000'), ('Black River', 1059, '44.81660', '-83.31000'), ('Curran', 2016, '44.71660', '-83.80000'), ('Curtisville', 721, '44.56660', '-83.86660'), ('Glennie', 364, '44.56660', '-83.71660'), ('Harrisville', 514, '44.65670', '-83.30000'), ('Hubbard Lake', 1059, '44.80000', '-83.59000'), ('Lincoln', 364, '44.68520', '-83.41260'), ('Mikado', 5080, '44.56680', '-83.41670'), ('Spruce', 1059, '44.83410', '-83.46670')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC003': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Au Sable Point', 2539, '46.67200', '-86.14200'), ('Au Train', 231, '46.43040', '-86.83750'), ('Beaver Lake', 2539, '46.56800', '-86.33900'), ('Chatham', 231, '46.34430', '-86.93080'), ('Christmas', 2539, '46.43770', '-86.70260'), ('Deerton', 231, '46.47400', '-87.04200'), ('Eben Junction', 231, '46.35490', '-86.97070'), ('Fish Lake', 2539, '46.22300', '-86.63900'), ('Forest Lake', 231, '46.33250', '-86.84440'), ('Grand Marais', 2686, '46.67000', '-85.98000'), ('Grand Portal Point', 2539, '46.55310', '-86.46200'), ('Kiva', 231, '46.25400', '-87.08400'), ('Melstrand', 2539, '46.46480', '-86.41610'), ('Munising', 2539, '46.40910', '-86.65370'), ('Nawakwa Lake', 2686, '46.53600', '-85.97500'), ('Shingleton', 2539, '46.34800', '-86.47000'), ('Sundell', 231, '46.34750', '-87.08500'), ('Traunik', 231, '46.26100', '-86.96900'), ('Trenary', 231, '46.19510', '-86.97000'), ('Wetmore', 2539, '46.38000', '-86.62000')], 'partOfState': 'north central upper', 'wfo': 'MQT'}, +'MIC005': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allegan', 4838, '42.52830', '-85.84550'), ('Bradley', 3939, '42.63030', '-85.64300'), ('Burnips', 546, '42.73190', '-85.83940'), ('Castle Park', 954, '42.74800', '-86.20690'), ('Dorr', 3939, '42.72530', '-85.72250'), ('Douglas', 1214, '42.64180', '-86.21040'), ('Fennville', 1459, '42.59480', '-86.10520'), ('Ganges', 1214, '42.57690', '-86.21030'), ('Glenn', 1214, '42.52030', '-86.22750'), ('Hamilton', 1459, '42.67770', '-86.00620'), ('Hopkins', 592, '42.62530', '-85.76380'), ('Martin', 435, '42.53710', '-85.63750'), ('Otsego', 3933, '42.45770', '-85.69710'), ('Plainwell', 3933, '42.44510', '-85.64410'), ('Pullman', 1459, '42.48370', '-86.09130'), ('Saugatuck', 1065, '42.65610', '-86.20580'), ('Shelbyville', 435, '42.59420', '-85.63720'), ('Wayland', 3939, '42.67190', '-85.64140')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIC007': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alpena', 11304, '45.07280', '-83.43750'), ('Cathro', 11304, '45.15000', '-83.56660'), ('Devils Lake', 11304, '44.99000', '-83.50000'), ('Lachine', 685, '45.08340', '-83.73340'), ('Long Rapids', 292, '45.13350', '-83.73340'), ('Ossineke', 1059, '44.90720', '-83.43200'), ('Spratt', 685, '45.00000', '-83.76000'), ('The Town Of Hubbar', 1059, '44.88340', '-83.58330')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC009': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Antrim', 1370, '44.88330', '-85.08000'), ('Bellaire', 1164, '44.97590', '-85.20670'), ('Central Lake', 990, '45.06980', '-85.26310'), ('Clam River', 1164, '44.93330', '-85.28330'), ('Elk Rapids', 1700, '44.89490', '-85.40420'), ('Ellsworth', 483, '45.16620', '-85.24440'), ('Kewadin', 1700, '44.93340', '-85.36700'), ('Lake Bellaire', 1164, '44.95000', '-85.24000'), ('Mancelona', 1408, '44.90210', '-85.06100'), ('Torch Lake', 954, '45.06670', '-85.36720')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC011': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alger', 2569, '44.11660', '-84.11660'), ('Au Gres', 1028, '44.04420', '-83.69280'), ('Maple Ridge', 314, '44.13340', '-83.91670'), ('Omer', 337, '44.04950', '-83.85720'), ('Standish', 1581, '43.98060', '-83.96340'), ('Sterling', 533, '44.03210', '-84.02030'), ('Turner', 158, '44.14180', '-83.78820'), ('Twining', 192, '44.11260', '-83.80780')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC013': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alberta', 2107, '46.64350', '-88.48010'), ('Arnheim', 1285, '46.91720', '-88.48270'), ('Assinins', 1285, '46.81000', '-88.47700'), ('Baraga', 1285, '46.77730', '-88.49350'), ('Herman', 2107, '46.66700', '-88.36700'), ('Island Lake', 6686, '46.69800', '-88.01500'), ('Keweenaw Bay', 1285, '46.86030', '-88.48170'), ("L'anse", 2107, '46.75360', '-88.44940'), ('Mount Arvon', 2107, '46.75600', '-88.15600'), ('Ned Lake', 2107, '46.45200', '-88.33400'), ('Pelkie', 1285, '46.81320', '-88.63610'), ('Pequaming', 2107, '46.85300', '-88.39200'), ('Three Lakes', 2107, '46.55400', '-88.20100'), ('Watton', 1285, '46.53730', '-88.60580')], 'partOfState': 'north central upper', 'wfo': 'MQT'}, +'MIC015': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Assyria', 1401, '42.46450', '-85.13130'), ('Banfield', 3605, '42.46350', '-85.28850'), ('Delton', 1526, '42.49970', '-85.40800'), ('Dowling', 6549, '42.52250', '-85.25300'), ('Freeport', 444, '42.76350', '-85.31450'), ('Hastings', 7095, '42.65020', '-85.28850'), ('Hickory Corners', 1526, '42.44130', '-85.37550'), ('Irving', 1966, '42.68830', '-85.41800'), ('Lacey', 1654, '42.49300', '-85.19120'), ('Middleville', 2721, '42.71340', '-85.46550'), ('Nashville', 1684, '42.60290', '-85.09390'), ('Orangeville', 435, '42.55280', '-85.51920'), ('Woodbury', 2272, '42.76120', '-85.07450'), ('Woodland', 495, '42.72650', '-85.13490')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIC017': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Auburn', 2011, '43.60190', '-84.07710'), ('Bay City', 36817, '43.59000', '-83.88860'), ('Bentley', 533, '43.94810', '-84.13440'), ('Crump', 2011, '43.75390', '-84.08720'), ('Essexville', 3766, '43.61120', '-83.84350'), ('Kawkawlin', 38936, '43.65320', '-83.94720'), ('Linwood', 1386, '43.73890', '-83.97670'), ('Mount Forest', 1386, '43.88720', '-84.11420'), ('Munger', 1395, '43.52300', '-83.77460'), ('Pinconning', 1386, '43.85790', '-83.96460'), ('Willard', 2011, '43.66830', '-84.10830')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC019': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bendon', 276, '44.64340', '-85.85110'), ('Benzonia', 519, '44.61650', '-86.09790'), ('Beulah', 363, '44.62960', '-86.09550'), ('Elberta', 457, '44.62140', '-86.22970'), ('Frankfort', 1513, '44.63690', '-86.23400'), ('Honor', 299, '44.66680', '-86.02020'), ('Lake Ann', 276, '44.72570', '-85.84450'), ('Thompsonville', 457, '44.52070', '-85.93870')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC021': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Baroda', 858, '41.95460', '-86.48760'), ('Benton Harbor', 11182, '42.11640', '-86.44620'), ('Benton Heights', 5458, '42.12110', '-86.41500'), ('Berrien Springs', 1862, '41.94730', '-86.34000'), ('Bertrand', 0, '41.77400', '-86.26200'), ('Bridgman', 2428, '41.94070', '-86.56360'), ('Buchanan', 4681, '41.82790', '-86.36680'), ('Coloma', 1595, '42.18660', '-86.30770'), ('Dayton', 0, '41.79800', '-86.43900'), ('Eau Claire', 656, '41.98390', '-86.30380'), ('Fair Plain', 7828, '42.08170', '-86.45350'), ('Galien', 593, '41.80160', '-86.49970'), ('Glendora', 0, '41.88500', '-86.48700'), ('Grand Beach', 221, '41.77470', '-86.78830'), ('Harbert', 0, '41.87200', '-86.62900'), ('Lake Michigan Beach', 1509, '42.21430', '-86.38240'), ('Lakeside', 0, '41.84900', '-86.66800'), ('Michiana', 200, '41.76340', '-86.81120'), ('Millburg', 0, '42.12300', '-86.34200'), ('New Buffalo', 2200, '41.79040', '-86.74530'), ('New Troy', 0, '41.87500', '-86.55000'), ('Niles', 12204, '41.83450', '-86.24800'), ('Paw Paw Lake', 3944, '42.21120', '-86.27560'), ('Riverside', 0, '42.18300', '-86.38300'), ('Sawyer', 0, '41.88500', '-86.58900'), ('Shoreham', 860, '42.05770', '-86.51160'), ('Shorewood-Tower Hiill', 1636, '41.88450', '-86.62040'), ('Sodus', 0, '42.04400', '-86.36900'), ('Spinks Corners', 0, '42.09400', '-86.32100'), ('Stevensville', 1191, '42.01380', '-86.52520'), ('St. Joseph', 8789, '42.09690', '-86.49130'), ('Three Oaks', 1829, '41.79930', '-86.61270'), ('Turner Shores', 0, '41.86000', '-86.66000'), ('Union Pier', 0, '41.82800', '-86.69300'), ('Watervliet', 1843, '42.18660', '-86.25720')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIC023': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Batavia', 0, '41.91300', '-85.09800'), ('Bronson', 2421, '41.87370', '-85.19150'), ('California', 0, '41.79600', '-84.88300'), ('Coldwater', 12697, '41.94060', '-85.00450'), ('Coldwater Lake', 0, '41.82300', '-84.97600'), ('East Gilead', 0, '41.78200', '-85.08300'), ('Gilead', 0, '41.80100', '-85.15600'), ('Girard', 0, '42.03000', '-85.00000'), ('Hodunk', 0, '42.01500', '-85.06200'), ('Kinderhook', 0, '41.79700', '-85.00500'), ('Lake Of The Woods', 0, '41.85000', '-85.04200'), ('Marble Lake', 0, '41.90700', '-84.90400'), ('Matteson Lake', 0, '41.93100', '-85.20700'), ('Quincy', 1701, '41.94390', '-84.88300'), ('Ray', 0, '41.76000', '-84.87200'), ('Sherwood', 324, '42.00000', '-85.24000'), ('South Butler', 0, '42.02200', '-84.88500'), ('Union City', 1804, '42.06630', '-85.14050')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIC025': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Albion', 9144, '42.24640', '-84.75690'), ('Athens', 1111, '42.08580', '-85.23620'), ('Battle Creek', 53364, '42.29890', '-85.22900'), ('Beford', 3605, '42.39530', '-85.23220'), ('Brownlee Park', 2588, '42.32420', '-85.13370'), ('Burlington', 405, '42.10480', '-85.07910'), ('Ceresco', 2536, '42.27180', '-85.06130'), ('Homer', 1851, '42.14550', '-84.81000'), ('Marengo', 10066, '42.27130', '-84.84870'), ('Marshall', 7459, '42.26170', '-84.95840'), ('Pine Creek', 1111, '42.16550', '-85.25620'), ('Springfield', 5582, '42.32400', '-85.23760'), ('Tekonsha', 712, '42.09470', '-84.98930')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIC027': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Adamsville', 0, '41.78600', '-86.00000'), ('Barron Lake', 0, '41.84400', '-86.18300'), ('Calvin Center', 0, '41.84600', '-85.93500'), ('Cassopolis', 1740, '41.91250', '-86.00790'), ('Dailey', 0, '41.88700', '-86.08900'), ('Dewey Lake', 0, '42.05500', '-86.18700'), ('Diamond Lake', 0, '41.90300', '-85.98100'), ('Donnell Lake', 0, '41.90700', '-85.89300'), ('Dowagiac', 6147, '41.98380', '-86.11060'), ('Eagle Lake', 0, '41.80400', '-86.02600'), ('Edwardsburg', 1147, '41.79670', '-86.08350'), ('Indian Lake', 0, '42.00000', '-86.21200'), ('Jones', 0, '41.90300', '-85.79900'), ('Juno Lake', 0, '41.81000', '-85.98600'), ('La Grange', 0, '41.95400', '-86.04200'), ('Magician Lake', 0, '42.06600', '-86.16400'), ('Marcellus', 1162, '42.02600', '-85.81320'), ('Paradise Lake', 0, '41.89000', '-85.90800'), ('Penn', 0, '41.94700', '-85.93600'), ('Pokagon', 0, '41.91300', '-86.17600'), ('Sandy Beach', 0, '42.05100', '-86.18800'), ('Shavehead Lake', 0, '41.84300', '-85.86300'), ('Sumnerville', 0, '41.91200', '-86.20700'), ('Union', 0, '41.78600', '-85.86800'), ('Vandalia', 429, '41.91840', '-85.91500'), ('Wakelee', 0, '41.98300', '-85.87600')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIC029': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Beaver Island', 2994, '45.70000', '-85.55000'), ('Boyne City', 3503, '45.18400', '-84.95670'), ('Boyne Falls', 370, '45.16650', '-84.90000'), ('Charlevoix', 2994, '45.32000', '-85.26000'), ('Clarion', 6080, '45.28360', '-84.90410'), ('East Jordan', 2507, '45.15780', '-85.13030'), ('Horton Bay', 3478, '45.28330', '-85.08460'), ('Ironton', 2994, '45.26000', '-85.20000'), ('Walloon Lake', 3503, '45.26710', '-84.91700')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC031': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Aloha', 5295, '45.53330', '-84.46660'), ('Alverno', 5295, '45.56660', '-84.40000'), ('Black Lake', 993, '45.49000', '-84.28000'), ('Burt Lake', 785, '45.43330', '-84.71660'), ('Cheboygan', 5295, '45.64190', '-84.46880'), ('Indian River', 2008, '45.41600', '-84.61660'), ('Mackinaw City', 859, '45.77900', '-84.73200'), ('Mullet Lake', 5295, '45.56660', '-84.53330'), ('Riggsville', 771, '45.57500', '-84.62000'), ('Topinabee', 785, '45.48330', '-84.60000'), ('Tower', 993, '45.35000', '-84.30000'), ('Wolverine', 283, '45.27350', '-84.60550')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC033': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Barbeau', 16542, '46.28330', '-84.28330'), ('Bay Mills', 16542, '46.43500', '-84.58500'), ('Bayview Campground', 16542, '46.44500', '-84.76000'), ('Brimley', 16542, '46.40500', '-84.56660'), ('Dafter', 16542, '46.36700', '-84.43300'), ('Donaldson', 16542, '46.31000', '-84.35000'), ('Eckerman', 2686, '46.36700', '-85.03340'), ('Fibre', 2678, '46.20000', '-84.88330'), ('Goetzville', 421, '46.08000', '-84.09000'), ('Hulbert', 2686, '46.35000', '-85.15000'), ('Kelden', 16542, '46.21000', '-84.31000'), ('Kincheloe', 16542, '46.25000', '-84.50000'), ('Kinross', 16542, '46.26660', '-84.48000'), ('Lower Tahquamenon', 2686, '46.62000', '-85.20000'), ('McCarron', 16542, '46.33000', '-84.28000'), ('Munuscong', 16542, '46.24500', '-84.19000'), ('Pickford', 16542, '46.16400', '-84.36400'), ('Raco', 16542, '46.37100', '-84.71600'), ('Rudyard', 16542, '46.23330', '-84.60000'), ('Sault Ste. Marie', 16542, '46.48460', '-84.36550'), ('Stalwart', 421, '46.10000', '-84.24000'), ('Strongs', 2678, '46.35000', '-84.96700'), ('Three Lakes', 2678, '46.31000', '-84.97000'), ('Trout Lake', 2678, '46.18330', '-85.01710'), ('Whitefish Point', 2686, '46.75200', '-84.98330')], 'partOfState': 'eastern', 'wfo': 'APX'}, +'MIC035': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Clare', 3173, '43.82420', '-84.76500'), ('Farwell', 855, '43.83570', '-84.86770'), ('Lake', 855, '43.85200', '-85.00520'), ('Lake George', 855, '43.96330', '-84.94680'), ('Leota', 3749, '44.13950', '-84.88950'), ('Temple', 836, '44.03080', '-85.02830')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIC037': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bath', 10230, '42.81870', '-84.44870'), ('Dewitt', 4702, '42.83590', '-84.57560'), ('Eagle', 130, '42.80980', '-84.79050'), ('Elsie', 1055, '43.08900', '-84.39060'), ('Eureka', 526, '43.10370', '-84.51380'), ('Fowler', 1136, '43.00400', '-84.74030'), ('Maple Rapids', 643, '43.10660', '-84.69010'), ('Ovid', 1514, '43.00250', '-84.37450'), ('St. Johns', 7485, '43.00020', '-84.55750'), ('Wacousta', 7579, '42.82780', '-84.70080'), ('Westphalia', 876, '42.92970', '-84.79780')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIC039': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Frederic', 1952, '44.78530', '-84.73340'), ('Grayling', 1952, '44.65730', '-84.70950'), ('Hartwick Pines State Park', 1952, '44.76000', '-84.69000'), ('Lovells', 1952, '44.81000', '-84.46670')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC041': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bark River', 13140, '45.70920', '-87.30700'), ('Brampton', 5032, '45.93000', '-87.07000'), ('Chicago Lake', 240, '46.03700', '-86.61100'), ('Cornell', 5032, '45.90160', '-87.22200'), ('Ensign', 5032, '45.90000', '-86.87000'), ('Escanaba', 13140, '45.74620', '-87.08080'), ('Fayette', 240, '45.71830', '-86.66480'), ('Ford River', 13140, '45.67880', '-87.14390'), ('Garden', 240, '45.77530', '-86.55250'), ('Garden Corners', 240, '45.89000', '-86.53700'), ('Gladstone', 5032, '45.85200', '-87.02470'), ('Hyde', 13140, '45.73280', '-87.20220'), ('Isabella', 240, '45.89740', '-86.60580'), ('Lathrop', 1443, '46.15000', '-87.22000'), ('Nahma Junction', 240, '45.89700', '-86.70800'), ('Perkins', 5032, '45.97790', '-87.07090'), ('Rapid River', 5032, '45.92000', '-86.97000'), ('Rock', 5032, '46.06900', '-87.16600'), ('Round Lake', 231, '46.15000', '-86.74600'), ('Schaeffer', 13140, '45.76120', '-87.29850'), ('Stonington', 13140, '45.72490', '-86.97640')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIC043': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Channing', 1791, '46.14100', '-88.09250'), ('Felch', 2959, '45.99630', '-87.82520'), ('Foster City', 2959, '45.96600', '-87.74150'), ('Granite Bluff', 8154, '45.93900', '-88.05400'), ('Hardwood', 2959, '45.96420', '-87.69780'), ('Iron Mountain', 8154, '45.82770', '-88.06150'), ('Kingsford', 5549, '45.80800', '-88.09900'), ('Norway', 2959, '45.78700', '-87.90310'), ('Quinnesec', 1187, '45.80140', '-87.99850'), ('Ralph', 2959, '46.10600', '-87.78460'), ('Randville', 8154, '45.99170', '-88.05690'), ('Sagola', 8154, '46.08850', '-88.07760'), ('Vulcan', 2959, '45.78010', '-87.86140'), ('Waucedah', 2959, '45.76290', '-87.74590')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIC045': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bellevue', 1365, '42.44420', '-85.01860'), ('Brookfield', 8389, '42.45100', '-84.79670'), ('Charlotte', 8389, '42.56440', '-84.83250'), ('Dimondale', 1342, '42.64880', '-84.64910'), ('Eaton Rapids', 5330, '42.51000', '-84.65390'), ('Grand Ledge', 7813, '42.75260', '-84.74860'), ('Gresham', 8389, '42.64130', '-84.89530'), ('Kalamo', 776, '42.54270', '-85.01280'), ('Mulliken', 557, '42.76300', '-84.89510'), ('Olivet', 1758, '42.44610', '-84.92360'), ('Potterville', 2168, '42.62800', '-84.74580'), ('Sunfield', 591, '42.76170', '-84.99170'), ('Vermontville', 789, '42.62600', '-85.02610'), ('Waverly', 16194, '42.73920', '-84.62080')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIC047': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bliss', 859, '45.68330', '-84.85000'), ('Brutus', 771, '45.50000', '-84.75000'), ('Carp Lake', 859, '45.69000', '-84.79000'), ('Conway', 785, '45.41720', '-84.87000'), ('Cross Village', 1567, '45.63690', '-85.03880'), ('Good Hart', 1567, '45.56660', '-85.11660'), ('Harbor Springs', 1567, '45.43200', '-84.98960'), ('Levering', 771, '45.63630', '-84.76740'), ('Oden', 785, '45.42000', '-84.84220'), ('Pellston', 771, '45.56000', '-84.78330'), ('Pleasant View', 1567, '45.52000', '-84.93000'), ('Stutsmanville', 1567, '45.50000', '-85.03000'), ('Wilderness State Park', 859, '45.75500', '-84.95000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC049': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Argentine', 2285, '42.79020', '-83.83200'), ('Burton', 27617, '42.99670', '-83.61960'), ('Clio', 2483, '43.17710', '-83.73610'), ('Davison', 5536, '43.03210', '-83.51830'), ('Fenton', 10582, '42.80000', '-83.71420'), ('Flint', 124943, '43.02280', '-83.69280'), ('Flushing', 8348, '43.06490', '-83.84160'), ('Gaines', 366, '42.87230', '-83.91180'), ('Genesee', 3292, '43.11250', '-83.61780'), ('Goodrich', 1353, '42.91660', '-83.50830'), ('Grand Blanc', 8242, '42.92580', '-83.61870'), ('Linden', 2861, '42.81920', '-83.78150'), ('Montrose', 1619, '43.17560', '-83.89260'), ('Mount Morris', 3194, '43.11630', '-83.69890'), ('Otisville', 882, '43.16530', '-83.52430'), ('Rankin', 4091, '42.91440', '-83.75060'), ('Swartz Creek', 5102, '42.96210', '-83.82650')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC051': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Beaverton', 1106, '43.88170', '-84.48760'), ('Gladwin', 3001, '43.98390', '-84.49160'), ('Hockaday', 3001, '44.08330', '-84.41660'), ('Rhodes', 533, '43.90000', '-84.18340'), ('Skeels', 3001, '44.08340', '-84.58310'), ('Winegars', 1150, '43.93340', '-84.36670'), ('Wooden Shoe Village', 3001, '43.98330', '-84.35000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC053': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bessemer', 2148, '46.48120', '-90.05030'), ('Chaney Lake', 2085, '46.31700', '-89.91300'), ('Ironwood', 6293, '46.45450', '-90.15260'), ('Little Girls Point', 838, '46.60700', '-90.33100'), ('Marenisco', 2085, '46.37930', '-89.69630'), ('Pomeroy Lake', 2085, '46.27900', '-89.57500'), ('Presque Isle Reservoir', 2085, '46.34500', '-89.71200'), ('Tamarack Lake', 214, '46.24000', '-88.99200'), ('Thomaston', 2085, '46.51640', '-89.92790'), ('Thousand Island Lake', 1374, '46.22900', '-89.40000'), ('Wakefield', 2085, '46.47680', '-89.93340'), ('Watersmeet', 1374, '46.27000', '-89.18000')], 'partOfState': 'western upper', 'wfo': 'MQT'}, +'MIC055': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bates', 1700, '44.76660', '-85.44000'), ('Fife Lake', 466, '44.57370', '-85.35330'), ('Grawn', 15155, '44.66670', '-85.68330'), ('Hannah', 1469, '44.58330', '-85.61670'), ('Interlochen', 276, '44.65000', '-85.75000'), ('Karlin', 402, '44.58330', '-85.76660'), ('Kingsley', 1469, '44.58430', '-85.53540'), ('Mapleton', 1700, '44.90000', '-85.51660'), ('Old Mission', 1700, '44.97250', '-85.48650'), ('Traverse City', 14532, '44.75440', '-85.60290'), ('Williamsburg', 1700, '44.76670', '-85.40000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC057': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alma', 9275, '43.37940', '-84.65480'), ('Ashley', 526, '43.18770', '-84.47630'), ('Bannister', 1055, '43.13250', '-84.42170'), ('Breckenridge', 1339, '43.40770', '-84.47840'), ('Elm Hall', 9275, '43.36500', '-84.83530'), ('Forest Hill', 9275, '43.43670', '-84.68550'), ('Ithaca', 3098, '43.29230', '-84.60480'), ('Perrinton', 439, '43.18170', '-84.67860'), ('Riverdale', 9275, '43.38550', '-84.83550'), ('St. Louis', 4494, '43.40930', '-84.61570'), ('Sumner', 1190, '43.30700', '-84.81580'), ('Wheeler', 1339, '43.41280', '-84.43780')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIC059': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allen', 225, '41.95790', '-84.76740'), ('Bear Lake', 0, '41.86900', '-84.68100'), ('Betzer', 0, '41.75300', '-84.47600'), ('Cambria', 0, '41.82200', '-84.66500'), ('Camden', 550, '41.75640', '-84.75700'), ('Frontier', 0, '41.78200', '-84.60500'), ('Hillsdale', 8233, '41.92580', '-84.63570'), ('Jerome', 0, '42.02700', '-84.46900'), ('Jonesville', 2337, '41.98100', '-84.66650'), ('Lake Wilson', 0, '41.87600', '-84.68300'), ('Litchfield', 1458, '42.04310', '-84.75750'), ('Long Lake', 0, '41.87500', '-84.79500'), ('Montgomery', 386, '41.77690', '-84.80600'), ('Moscow', 0, '42.05000', '-84.51000'), ('North Adams', 514, '41.97190', '-84.52420'), ('Osseo', 0, '41.88600', '-84.54400'), ('Pittsford', 0, '41.86200', '-84.47700'), ('Prattville', 0, '41.78200', '-84.40000'), ('Ransom', 0, '41.77500', '-84.53400'), ('Reading', 1134, '41.83920', '-84.74730'), ('Shadyside', 0, '41.82300', '-84.53600'), ('Somerset', 0, '42.04800', '-84.37600'), ('Somerset Center', 0, '42.05100', '-84.41400'), ('Waldron', 590, '41.72460', '-84.41820')], 'partOfState': 'southeast', 'wfo': 'IWX'}, +'MIC061': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alston', 1285, '46.76490', '-88.74190'), ('Bob Lake', 1285, '46.66600', '-88.90900'), ('Calumet', 879, '47.24740', '-88.45320'), ('Chassell', 7498, '47.02750', '-88.52570'), ('Copper City', 205, '47.28450', '-88.38690'), ('Donken', 727, '46.94180', '-88.79200'), ('Echo Lake', 1285, '46.61300', '-88.84800'), ('Hancock', 4323, '47.13230', '-88.60070'), ('Houghton', 7010, '47.11360', '-88.56180'), ('Hubbell', 1105, '47.17510', '-88.42900'), ('Kenton', 214, '46.48580', '-88.89270'), ('Lake Linden', 1081, '47.19510', '-88.40810'), ('Laurium', 2126, '47.23650', '-88.43760'), ('Nisula', 1285, '46.76500', '-88.79400'), ('Painesdale', 727, '47.04330', '-88.67220'), ('Redridge', 727, '47.15090', '-88.76250'), ('Rice Lake', 1081, '47.16400', '-88.28500'), ('Sidnaw', 1285, '46.50670', '-88.70810'), ('South Range', 727, '47.07030', '-88.64460'), ('Tapiola', 727, '46.92410', '-88.62590'), ('Toivola', 727, '46.99920', '-88.76980'), ('Twin Lakes', 727, '46.90000', '-88.83000'), ('Winona', 727, '46.87370', '-88.90620')], 'partOfState': 'western upper', 'wfo': 'MQT'}, +'MIC063': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bad Axe', 3462, '43.80280', '-82.99690'), ('Bay Port', 1207, '43.84830', '-83.37090'), ('Caseville', 888, '43.94220', '-83.27460'), ('Elkton', 863, '43.81890', '-83.18070'), ('Harbor Beach', 1837, '43.84660', '-82.65490'), ('Helena', 2089, '43.77470', '-82.69080'), ('Huron City', 310, '44.02920', '-82.83280'), ('Ivanhoe', 2643, '43.70520', '-83.09780'), ('Kinde', 534, '43.93990', '-82.99490'), ('Owendale', 296, '43.72700', '-83.26770'), ('Parisville', 233, '43.71390', '-82.79940'), ('Pigeon', 1207, '43.82950', '-83.27000'), ('Pinnebog', 473, '43.93530', '-83.10390'), ('Port Austin', 737, '44.04270', '-82.99530'), ('Port Hope', 310, '43.93960', '-82.71510'), ('Rapson', 3484, '43.85610', '-82.88250'), ('Redman', 310, '43.92920', '-82.83420'), ('Sebewaing', 1974, '43.73180', '-83.45100'), ('Ubly', 873, '43.71090', '-82.93460'), ('White Rock', 127, '43.70990', '-82.61500')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC065': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Aurelius', 6714, '42.52420', '-84.52220'), ('Bell Oak', 1698, '42.72870', '-84.17370'), ('Bunker Hill', 437, '42.47550', '-84.31750'), ('Dansville', 429, '42.55530', '-84.30250'), ('East Lansing', 46525, '42.73600', '-84.48430'), ('Eden', 6714, '42.52380', '-84.42830'), ('Edgemont Park', 2442, '42.74670', '-84.59370'), ('Fitchburg', 1260, '42.43920', '-84.27780'), ('Haslett', 11283, '42.75270', '-84.40580'), ('Holt', 11315, '42.63730', '-84.52560'), ('Lansing', 119128, '42.70910', '-84.55400'), ('Leslie', 2044, '42.45000', '-84.43080'), ('Mason', 6714, '42.58170', '-84.44390'), ('Okemos', 22805, '42.70820', '-84.41440'), ('Onondaga', 5330, '42.44420', '-84.56220'), ('Stockbridge', 1260, '42.45070', '-84.17830'), ('Webberville', 1503, '42.66740', '-84.18020'), ('Williamston', 3441, '42.68980', '-84.28220')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIC067': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Belding', 5877, '43.09650', '-85.23300'), ('Clarksville', 317, '42.84150', '-85.24200'), ('Hubbardston', 394, '43.09420', '-84.84140'), ('Ionia', 10569, '42.98510', '-85.05800'), ('Lake Odessa', 2272, '42.78280', '-85.13740'), ('Lyons', 726, '42.98320', '-84.94540'), ('Muir', 634, '42.99740', '-84.93550'), ('Orleans', 5877, '43.06870', '-85.13500'), ('Palo', 667, '43.11250', '-84.98550'), ('Pewamo', 560, '43.00130', '-84.84650'), ('Portland', 3789, '42.87120', '-84.90110'), ('Saranac', 1326, '42.92980', '-85.20940'), ('Sebewa', 610, '42.79950', '-84.95580'), ('Smyrna', 5877, '43.05930', '-85.26280')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIC069': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Au Sable', 1533, '44.41080', '-83.33980'), ('East Tawas', 2951, '44.28500', '-83.48410'), ('Hale', 476, '44.38330', '-83.80500'), ('Long Lake', 476, '44.41660', '-83.86660'), ('National City', 476, '44.23330', '-83.71660'), ('Oscoda', 992, '44.42220', '-83.33480'), ('Sid Town', 2009, '44.44000', '-83.61000'), ('South Branch', 721, '44.46660', '-83.88330'), ('Tawas City', 2005, '44.27000', '-83.52100'), ('Whittemore', 476, '44.23310', '-83.80280'), ('Wilber', 2951, '44.39000', '-83.48000'), ('Wurtsmith Airfield', 5080, '44.46120', '-83.38450')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC071': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alpha', 198, '46.04390', '-88.37830'), ('Amasa', 1791, '46.23400', '-88.45000'), ('Beechwood', 214, '46.15960', '-88.76220'), ('Bewabic State Park', 198, '46.09300', '-88.42700'), ('Bone Lake', 1791, '46.37500', '-88.30700'), ('Caspian', 997, '46.06340', '-88.62970'), ('Crystal Falls', 1791, '46.09730', '-88.32770'), ('Gaastra', 339, '46.05880', '-88.60540'), ('Gibbs City', 214, '46.22600', '-88.70100'), ('Golden Lake', 214, '46.17600', '-88.88700'), ('Hagerman Lake', 214, '46.06000', '-88.78000'), ('Iron River', 1929, '46.09250', '-88.64100'), ('Mineral Hills', 214, '46.11230', '-88.64470'), ('Peavy Falls Dam', 1791, '45.99100', '-88.20800'), ('Perch Lake', 214, '46.36200', '-88.66200'), ('Smoky Lake', 214, '46.09600', '-88.94200'), ('Stager', 198, '45.98930', '-88.31500'), ('Stambaugh', 1243, '46.08300', '-88.62730'), ('Triangle Ranch', 1791, '46.31400', '-88.41900'), ('Way Dam', 1791, '46.16100', '-88.23900')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIC073': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Beal City', 345, '43.66990', '-84.90980'), ('Blanchard', 1244, '43.51970', '-85.08000'), ('Brinton', 696, '43.77030', '-85.01030'), ('Delwin', 333, '43.69720', '-84.67800'), ('Loomis', 1296, '43.79370', '-84.66620'), ('Mount Pleasant', 25946, '43.59660', '-84.77830'), ('Rosebush', 379, '43.69960', '-84.76580'), ('Shepherd', 1536, '43.52460', '-84.69380'), ('Weidman', 879, '43.69400', '-84.97290'), ('Winn', 23285, '43.52330', '-84.90170')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIC075': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Brooklyn', 1176, '42.10550', '-84.24870'), ('Clark Lake', 493, '42.12130', '-84.34500'), ('Concord', 1101, '42.17520', '-84.64390'), ('Grass Lake', 1082, '42.25090', '-84.20600'), ('Hanover', 424, '42.10060', '-84.55270'), ('Horton', 481, '42.15030', '-84.51720'), ('Jackson', 36316, '42.24320', '-84.40480'), ('Leoni', 4863, '42.24380', '-84.26920'), ('Michigan Center', 4641, '42.22690', '-84.32250'), ('Munith', 1260, '42.39050', '-84.25050'), ('Napoleon', 1254, '42.16830', '-84.24630'), ('Norvell', 1254, '42.15750', '-84.18420'), ('Oak Point', 1254, '42.19270', '-84.25580'), ('Parma', 907, '42.25720', '-84.59830'), ('Pulaski', 1101, '42.11500', '-84.64250'), ('Rives Junction', 1872, '42.38580', '-84.46170'), ('Sandstone', 2010, '42.25200', '-84.51770'), ('Spring Arbor', 2188, '42.20660', '-84.55590'), ('Springport', 707, '42.37780', '-84.69730'), ('Sunset Beach', 1027, '42.08720', '-84.20370'), ('Topkins', 809, '42.37300', '-84.54170'), ('Vandercook Lake', 4809, '42.19160', '-84.38540')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIC077': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alamo', 3937, '42.37530', '-85.70780'), ('Augusta', 899, '42.33760', '-85.35140'), ('Climax', 791, '42.23940', '-85.33700'), ('Comstock', 6265, '42.28870', '-85.51330'), ('Cooper', 1958, '42.37630', '-85.61030'), ('Eastwood', 6265, '42.30200', '-85.54410'), ('Fulton', 1111, '42.11500', '-85.35250'), ('Galesburg', 1988, '42.29060', '-85.41760'), ('Kalamazoo', 77145, '42.27470', '-85.58830'), ('Midland Park', 1526, '42.39080', '-85.38550'), ('Oshtemo', 9122, '42.25880', '-85.67750'), ('Parchment', 1936, '42.32690', '-85.56550'), ('Portage', 44897, '42.20140', '-85.59060'), ('Richland', 593, '42.37560', '-85.45610'), ('Schoolcraft', 1587, '42.11520', '-85.63350'), ('Scotts', 1260, '42.19580', '-85.41300'), ('South Gull Lake', 1526, '42.38750', '-85.39670'), ('Vicksburg', 2320, '42.12040', '-85.53420'), ('Westwood', 9122, '42.30340', '-85.63010')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIC079': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Barker Creek', 1700, '44.78330', '-85.31660'), ('Bear Lake', 318, '44.71660', '-84.93330'), ('Darragh', 2226, '44.76660', '-85.05000'), ('Kalkaska', 2226, '44.73460', '-85.17990'), ('Rapid City', 1700, '44.83340', '-85.28330'), ('Sharon', 2226, '44.58330', '-85.08330'), ('Sigma', 2226, '44.66660', '-85.05000'), ('Smithville', 923, '44.52000', '-85.15000'), ('South Boardman', 394, '44.63330', '-85.25020')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC081': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ada', 20942, '42.95420', '-85.48880'), ('Alaska', 885, '42.84000', '-85.47800'), ('Alto', 3983, '42.85670', '-85.38020'), ('Belmont', 13712, '43.07550', '-85.60920'), ('Byron Center', 3777, '42.81220', '-85.72280'), ('Caledonia', 1102, '42.79390', '-85.51320'), ('Cannonsburg', 20942, '43.05380', '-85.46970'), ('Cascade', 20942, '42.91220', '-85.49800'), ('Cedar Springs', 3112, '43.22140', '-85.55320'), ('Comstock Park', 10674, '43.04500', '-85.67230'), ('Cutlerville', 15114, '42.84150', '-85.66160'), ('Dutton', 45255, '42.84120', '-85.58500'), ('East Grand Rapids', 10764, '42.94640', '-85.60740'), ('Grand Rapids', 189126, '42.96120', '-85.65570'), ('Grandville', 16263, '42.90380', '-85.75610'), ('Grattan', 5877, '43.08420', '-85.38120'), ('Kent City', 1061, '43.21910', '-85.75210'), ('Kentwood', 45255, '42.88240', '-85.59220'), ('Lowell', 4013, '42.93320', '-85.34570'), ('North Dorr', 11228, '42.76870', '-85.76200'), ('Rockford', 4626, '43.12620', '-85.55660'), ('Sand Lake', 456, '43.29090', '-85.51820'), ('Sparta', 4159, '43.15790', '-85.70940'), ('Walker', 21842, '42.98470', '-85.74770'), ('Wyoming', 63891, '42.89240', '-85.70250')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIC083': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ahmeek', 157, '47.29790', '-88.39700'), ('Allouez', 157, '47.28700', '-88.40900'), ('Copper Harbor', 205, '47.47000', '-87.89000'), ('Delaware', 205, '47.42000', '-88.10000'), ('Eagle Harbor', 205, '47.45800', '-88.16200'), ('Gay', 205, '47.22900', '-88.16380'), ('Mohawk', 205, '47.30490', '-88.36340'), ('Phoenix', 157, '47.38900', '-88.27800')], 'partOfState': 'northeast', 'wfo': 'MQT'}, +'MIC085': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Baldwin', 1107, '43.89760', '-85.85240'), ('Bristol', 339, '44.10380', '-85.58370'), ('Chase', 2430, '43.88920', '-85.63550'), ('Idlewild', 1107, '43.88700', '-85.80250'), ('Irons', 1107, '44.14000', '-85.91580'), ('Luther', 339, '44.03870', '-85.68290'), ('Nirvana', 339, '43.90250', '-85.71200')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC087': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Almont', 2803, '42.92140', '-83.04450'), ('Attica', 3869, '43.03230', '-83.16230'), ('Burnside', 1244, '43.21060', '-83.07720'), ('Clifford', 324, '43.31430', '-83.17880'), ('Columbiaville', 815, '43.15800', '-83.40780'), ('Dryden', 815, '42.94540', '-83.12450'), ('Goodland Township', 3869, '43.11200', '-83.04750'), ('Hadley', 1252, '42.95440', '-83.40330'), ('Imlay City', 3869, '43.01640', '-83.07800'), ('Kings Mill', 1027, '43.14220', '-83.17280'), ('Lapeer', 9072, '43.04700', '-83.32490'), ('Metamora', 507, '42.94120', '-83.29060'), ('North Branch', 1027, '43.22980', '-83.19170'), ('Otter Lake', 437, '43.21330', '-83.45840')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC089': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bingham', 1415, '44.87500', '-85.69000'), ('Burdickville', 378, '44.85000', '-85.95000'), ('Cedar', 276, '44.85000', '-85.80000'), ('Empire', 378, '44.81320', '-86.05890'), ('Fouch', 1415, '44.82580', '-85.72630'), ('Glen Haven', 378, '44.90000', '-86.02030'), ('Greilickville', 1415, '44.79910', '-85.64580'), ('Leland', 589, '45.01670', '-85.76700'), ('Maple City', 276, '44.84890', '-85.86780'), ('Northport', 648, '45.13000', '-85.62150'), ('Omena', 605, '45.06000', '-85.59660'), ('Peshawbestown', 589, '45.01750', '-85.61330'), ('Suttons Bay', 589, '44.97900', '-85.65150')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC091': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Addison', 627, '41.98590', '-84.34910'), ('Adrian', 21574, '41.89830', '-84.04350'), ('Blissfield', 3223, '41.83240', '-83.86440'), ('Britton', 699, '41.98630', '-83.83190'), ('Cement City', 452, '42.06840', '-84.32730'), ('Clayton', 326, '41.86440', '-84.23590'), ('Clinton', 2293, '42.06890', '-83.97240'), ('Deerfield', 1005, '41.89010', '-83.77860'), ('Fairfield', 22097, '41.81280', '-84.04110'), ('Holloway', 8574, '41.93500', '-83.91440'), ('Hudson', 2499, '41.85630', '-84.34560'), ('Lime Creek', 2580, '41.76560', '-84.32970'), ('Morenci', 2398, '41.72160', '-84.21640'), ('Ogden Center', 543, '41.77190', '-83.95970'), ('Onsted', 813, '42.00760', '-84.19020'), ('Rome Center', 801, '41.94360', '-84.18780'), ('Seneca', 2342, '41.78750', '-84.17670'), ('Tecumseh', 8574, '42.00610', '-83.94450'), ('Tipton', 8574, '42.01670', '-84.06420')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC093': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Brighton', 6701, '42.53010', '-83.78480'), ('Chilson', 6701, '42.52690', '-83.86170'), ('Cohoctah', 573, '42.75970', '-83.94860'), ('Conway Township', 2972, '42.73300', '-84.09600'), ('Fowlerville', 2972, '42.66010', '-84.07230'), ('Gregory', 1260, '42.45970', '-84.08450'), ('Hamburg', 3251, '42.45170', '-83.79970'), ('Hartland', 6701, '42.65570', '-83.75470'), ('Howell', 9232, '42.60940', '-83.93570'), ('Parkers Corners', 2972, '42.56810', '-84.11330'), ('Pinckney', 2141, '42.45450', '-83.94550'), ('Tyrone Township', 8444, '42.73300', '-83.75000')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC095': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Betsy Lake', 2686, '46.62400', '-85.27400'), ('Crisp Point', 2686, '46.75300', '-85.25700'), ('Deer Park', 2686, '46.67410', '-85.61500'), ('Dollarville', 2686, '46.35100', '-85.54200'), ('Helmer', 2686, '46.26640', '-85.71520'), ('McMillan', 2686, '46.33900', '-85.68760'), ('Newberry', 2686, '46.35330', '-85.50900'), ('Pike Lake', 2686, '46.64200', '-85.40700'), ('Pine Stump Junction', 2686, '46.56930', '-85.59140'), ('Soo Junction', 2686, '46.33600', '-85.25900')], 'partOfState': 'eastern upper', 'wfo': 'MQT'}, +'MIC097': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allenville', 2678, '45.98330', '-84.81670'), ('Brevort', 2678, '46.01760', '-85.03400'), ('Cedarville', 523, '45.99000', '-84.36150'), ('Corinne', 2686, '46.08340', '-85.71660'), ('Curtis', 2686, '46.20100', '-85.75000'), ('Engadine', 2686, '46.11670', '-85.56660'), ('Epoufette', 2686, '46.06000', '-85.17400'), ('Garnet', 2686, '46.15000', '-85.30000'), ('Gilchrist', 2686, '46.13330', '-85.38330'), ('Gould City', 2686, '46.10000', '-85.70000'), ('Hessel', 523, '46.00600', '-84.42200'), ('Mackinac Island', 523, '45.85900', '-84.63570'), ('Marquette Island', 523, '45.96000', '-84.40000'), ('Naubinway', 2686, '46.11100', '-85.45000'), ('Point Aux Pins On', 5295, '45.74000', '-84.48000'), ('Rexton', 2686, '46.15000', '-85.24000'), ('St. Ignace', 2678, '45.86840', '-84.72570')], 'partOfState': 'eastern', 'wfo': 'APX'}, +'MIC099': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Armada', 1573, '42.84100', '-82.88350'), ('Fraser', 15297, '42.53970', '-82.94860'), ('Macomb Township', 18405, '42.67260', '-82.91770'), ('Memphis', 1129, '42.89530', '-82.76950'), ('Mount Clemens', 17312, '42.59810', '-82.88190'), ('New Baltimore', 7405, '42.68310', '-82.73810'), ('New Haven', 2331, '42.73260', '-82.79410'), ('Richmond', 4897, '42.80900', '-82.75460'), ('Romeo', 3721, '42.80420', '-83.00530'), ('St. Clair Shores', 63096, '42.49310', '-82.89110'), ('Sterling Heights', 124471, '42.58000', '-83.03050'), ('Utica', 4577, '42.62840', '-83.02090'), ('Warren', 138247, '42.49300', '-83.02820'), ('Washington', 48655, '42.72440', '-83.03610')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC101': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Arcadia', 478, '44.51130', '-86.23330'), ('Brethren', 509, '44.30000', '-86.01670'), ('Copemish', 232, '44.48100', '-85.92390'), ('Dublin', 509, '44.18330', '-85.93330'), ('Eastlake', 466, '44.24550', '-86.29390'), ('Kaleva', 509, '44.37230', '-86.01300'), ('Manistee', 6586, '44.24460', '-86.32640'), ('Norwalk', 647, '44.33330', '-86.16660'), ('Onekama', 647, '44.36680', '-86.20310'), ('Parkdale', 466, '44.26660', '-86.30000'), ('Pierport', 647, '44.43340', '-86.23400'), ('Wellston', 509, '44.21670', '-85.95100'), ('Wildwood', 339, '44.41660', '-86.16660')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC103': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Arnold', 1965, '46.05080', '-87.49230'), ('Big Bass Lake', 6686, '46.30800', '-87.67800'), ('Big Bay', 265, '46.81870', '-87.72890'), ('Carlshend', 1443, '46.31140', '-87.22140'), ('Champion', 6686, '46.51390', '-87.96340'), ('Gwinn', 1965, '46.28160', '-87.44160'), ('Harvey', 1321, '46.49280', '-87.35090'), ('Huron River Point', 6686, '46.90900', '-87.90000'), ('Ishpeming', 6686, '46.48750', '-87.66360'), ('Little Lake', 1443, '46.28920', '-87.34050'), ('Marquette', 19661, '46.55080', '-87.39570'), ('McFarland', 1443, '46.18010', '-87.24410'), ('Michigamme', 287, '46.53500', '-88.11000'), ('Mountain Lake', 6686, '46.86100', '-87.91400'), ('National Mine', 6686, '46.45940', '-87.68240'), ('Negaunee', 4576, '46.50100', '-87.60840'), ('Northland', 1965, '46.07250', '-87.59610'), ('Palmer', 449, '46.44080', '-87.59310'), ('Republic', 614, '46.40730', '-87.97860'), ('Sands', 1443, '46.41970', '-87.40650'), ('Silver Lake', 1443, '46.34100', '-87.33500'), ('Skandia', 1443, '46.37700', '-87.24090'), ('Trowbridge Park', 2012, '46.55380', '-87.43170'), ('Watson', 1965, '46.01960', '-87.41460'), ('Witch Lake', 1791, '46.28000', '-88.02000')], 'partOfState': 'north central upper', 'wfo': 'MQT'}, +'MIC105': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Custer', 318, '43.95030', '-86.21940'), ('Fountain', 175, '44.04780', '-86.17950'), ('Freesoil', 148, '44.10700', '-86.21670'), ('Ludington', 8357, '43.95710', '-86.44300'), ('Scottville', 1266, '43.95040', '-86.28000'), ('Walhalla', 312, '43.95370', '-86.11470')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC105': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Custer', 318, '43.95030', '-86.21940'), ('Fountain', 175, '44.04780', '-86.17950'), ('Freesoil', 148, '44.10700', '-86.21670'), ('Ludington', 8357, '43.95710', '-86.44300'), ('Scottville', 1266, '43.95040', '-86.28000'), ('Walhalla', 312, '43.95370', '-86.11470')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC107': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Altona', 1112, '43.53970', '-85.31350'), ('Barryton', 381, '43.74960', '-85.14270'), ('Big Rapids', 10849, '43.70390', '-85.48630'), ('Chippewa Lake', 440, '43.74380', '-85.29720'), ('Mecosta', 440, '43.61890', '-85.23050'), ('Morley', 495, '43.49120', '-85.44600'), ('Paris', 12603, '43.77330', '-85.50250'), ('Rodney', 440, '43.67370', '-85.32830'), ('Stanwood', 204, '43.58010', '-85.44790'), ('Sylvester', 440, '43.53970', '-85.25450')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIC109': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bagley', 225, '45.55000', '-87.58000'), ('Banat', 270, '45.52000', '-87.70000'), ('Birch Creek', 9398, '45.20270', '-87.61100'), ('Carbondale', 875, '45.27820', '-87.61540'), ('Carney', 225, '45.58910', '-87.55400'), ('Cedar River', 875, '45.41100', '-87.35400'), ('Cunard', 430, '45.73860', '-87.66580'), ('Daggett', 270, '45.46200', '-87.60450'), ('Faithorn', 2959, '45.67910', '-87.75310'), ('Gourley', 225, '45.59500', '-87.42400'), ('Hermansville', 430, '45.71100', '-87.60200'), ('Ingalls', 875, '45.37700', '-87.61070'), ('La Branche', 430, '45.88000', '-87.47000'), ('Menominee', 9131, '45.12110', '-87.62350'), ('Nathan', 225, '45.57900', '-87.70700'), ('Powers', 430, '45.68750', '-87.52640'), ('Spalding', 430, '45.69600', '-87.51100'), ('Stephenson', 875, '45.41370', '-87.60890'), ('Swanson', 270, '45.47500', '-87.70900'), ('Wallace', 875, '45.32610', '-87.61420'), ('Whitney', 430, '45.82160', '-87.38640'), ('Wilson', 430, '45.70530', '-87.43880')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIC111': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bombay', 41685, '43.74170', '-84.26640'), ('Coleman', 1296, '43.75670', '-84.58670'), ('Edenville', 943, '43.80000', '-84.38980'), ('Gordonville', 943, '43.56780', '-84.36940'), ('Midland', 41685, '43.62360', '-84.22940'), ('North Bradley', 1296, '43.71140', '-84.49000'), ('Oil City', 1413, '43.61080', '-84.58830'), ('Pleasant Valley', 3828, '43.50970', '-84.58810'), ('Porter Township', 1339, '43.51000', '-84.43500'), ('Poseyville', 41685, '43.53970', '-84.24940'), ('Sanford', 943, '43.67560', '-84.38060')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC113': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Falmouth', 584, '44.25000', '-85.08330'), ('Jennings', 923, '44.33330', '-85.28330'), ('Lake City', 923, '44.33030', '-85.20850'), ('Lucas', 584, '44.21670', '-85.28330'), ('McBain', 584, '44.19440', '-85.21440'), ('Merritt', 3749, '44.31670', '-84.93330'), ('Moddersville', 3749, '44.21670', '-84.95100'), ('Moorestown', 3749, '44.47000', '-84.95000'), ('Stittsville', 923, '44.45000', '-85.03000'), ('Vogel Center', 836, '44.18330', '-85.05000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC115': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Carleton', 2562, '42.05750', '-83.38980'), ('Cone', 4775, '42.03190', '-83.75310'), ('Dundee', 3522, '41.95700', '-83.66040'), ('Estral Beach', 486, '41.98800', '-83.24100'), ('Ida', 3522, '41.91040', '-83.57400'), ('Lambertville', 9299, '41.74730', '-83.62290'), ('La Salle', 5266, '41.86780', '-83.45220'), ('Luna Pier', 1483, '41.80510', '-83.44250'), ('Maybee', 505, '42.00580', '-83.51610'), ('Monroe', 22076, '41.91670', '-83.38600'), ('Ottawa Lake', 17301, '41.76350', '-83.74830'), ('Petersburg', 1157, '41.89960', '-83.71180'), ('South Rockwood', 1284, '42.06200', '-83.26060'), ('Stony Point', 1775, '41.94720', '-83.27140'), ('Temperance', 7757, '41.76760', '-83.57230')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC117': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Amble', 528, '43.43130', '-85.38850'), ('Butternut', 1190, '43.18330', '-84.91550'), ('Carson City', 1190, '43.17840', '-84.84690'), ('Cedar Lake', 1244, '43.40620', '-84.97500'), ('Coral', 1585, '43.36280', '-85.40280'), ('Crystal', 1190, '43.26300', '-84.91470'), ('Edmore', 1244, '43.40760', '-85.03770'), ('Entrican', 1504, '43.35030', '-85.15370'), ('Fenwick', 705, '43.14920', '-85.08020'), ('Gowen', 7935, '43.25170', '-85.30200'), ('Greenville', 7935, '43.17800', '-85.25390'), ('Howard City', 1585, '43.39520', '-85.46620'), ('Kings Corner', 705, '43.24920', '-85.07330'), ('Lakeview', 1112, '43.44650', '-85.27550'), ('Langston', 7935, '43.31380', '-85.24380'), ('McBride', 232, '43.35280', '-85.04310'), ('Pierson', 185, '43.31900', '-85.49750'), ('Sheridan', 705, '43.21040', '-85.07260'), ('Sidney', 1504, '43.25000', '-85.13300'), ('Six Lakes', 1244, '43.42500', '-85.15000'), ('Stanton', 1504, '43.29310', '-85.07930'), ('Trufant', 1585, '43.31380', '-85.35450'), ('Turk Lake', 7935, '43.27080', '-85.25630'), ('Vestaburg', 1244, '43.39920', '-84.90550'), ('Westville', 236, '43.35780', '-85.08370'), ('Wyman', 1244, '43.45500', '-85.04300')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIC119': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Atlanta', 757, '45.00100', '-84.15000'), ('Clear Lake State Park', 993, '45.15100', '-84.20220'), ('Fletcher Pond', 685, '44.98000', '-83.89000'), ('Hetherton', 3681, '45.00000', '-84.36670'), ('Hillman', 685, '45.06590', '-83.90060'), ('Lewiston', 990, '44.88330', '-84.31660'), ('Lockwood Lake', 685, '44.91670', '-84.00000'), ('Long Lake', 685, '45.13340', '-83.98330')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC121': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bailey', 376, '43.27780', '-85.81030'), ('Brunswick', 4224, '43.43300', '-86.04030'), ('Casnovia', 315, '43.23480', '-85.79130'), ('Cloverville', 1124, '43.19050', '-86.16530'), ('Dalton', 1006, '43.31870', '-86.26170'), ('Fruitport', 1124, '43.12570', '-86.15590'), ('Holton', 1328, '43.41330', '-86.07950'), ('Lakewood Club', 1006, '43.37660', '-86.25510'), ('Montague', 2407, '43.41230', '-86.36290'), ('Muskegon', 40105, '43.22760', '-86.25550'), ('Norton Shores', 22527, '43.16000', '-86.25250'), ('Ravenna', 1206, '43.18960', '-85.94030'), ('Roosevelt Park', 3890, '43.19750', '-86.27350'), ('Slocum', 1206, '43.22220', '-85.90970'), ('Sullivan', 4455, '43.18370', '-86.05300'), ('Twin Lake', 1613, '43.36900', '-86.17990'), ('Vickeryville', 1206, '43.19220', '-85.96530'), ('Wabaningo', 2276, '43.37050', '-86.42170'), ('Whitehall', 2884, '43.39830', '-86.34130'), ('Wolf Lake', 4455, '43.24550', '-86.10590')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC121': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bailey', 376, '43.27780', '-85.81030'), ('Brunswick', 4224, '43.43300', '-86.04030'), ('Casnovia', 315, '43.23480', '-85.79130'), ('Cloverville', 1124, '43.19050', '-86.16530'), ('Dalton', 1006, '43.31870', '-86.26170'), ('Fruitport', 1124, '43.12570', '-86.15590'), ('Holton', 1328, '43.41330', '-86.07950'), ('Lakewood Club', 1006, '43.37660', '-86.25510'), ('Montague', 2407, '43.41230', '-86.36290'), ('Muskegon', 40105, '43.22760', '-86.25550'), ('Norton Shores', 22527, '43.16000', '-86.25250'), ('Ravenna', 1206, '43.18960', '-85.94030'), ('Roosevelt Park', 3890, '43.19750', '-86.27350'), ('Slocum', 1206, '43.22220', '-85.90970'), ('Sullivan', 4455, '43.18370', '-86.05300'), ('Twin Lake', 1613, '43.36900', '-86.17990'), ('Vickeryville', 1206, '43.19220', '-85.96530'), ('Wabaningo', 2276, '43.37050', '-86.42170'), ('Whitehall', 2884, '43.39830', '-86.34130'), ('Wolf Lake', 4455, '43.24550', '-86.10590')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC123': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bitely', 1107, '43.74680', '-85.86170'), ('Bridgeton', 4224, '43.34670', '-85.93720'), ('Croton', 1336, '43.43880', '-85.66080'), ('Croton Heights', 1420, '43.45630', '-85.63470'), ('Fremont', 4224, '43.46150', '-85.95220'), ('Grant', 881, '43.33410', '-85.81010'), ('Hawkins', 2430, '43.80050', '-85.60300'), ('Newaygo', 1670, '43.42000', '-85.80050'), ('Reeman', 4224, '43.44500', '-86.00870'), ('White Cloud', 1420, '43.55290', '-85.77260'), ('Woodland Park', 1107, '43.71470', '-85.86130'), ('Woodville', 1420, '43.66580', '-85.68120'), ('Wooster', 4224, '43.51050', '-85.87380')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC125': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Birmingham', 19291, '42.54480', '-83.21650'), ('Bloomfield Hills', 3940, '42.57890', '-83.24740'), ('Clarkston', 962, '42.73540', '-83.42110'), ('Davisburg', 5595, '42.75240', '-83.54030'), ('Farmington', 10423, '42.46320', '-83.37730'), ('Ferndale', 22105, '42.45930', '-83.13100'), ('Highland', 5511, '42.63810', '-83.61720'), ('Holly', 6135, '42.79900', '-83.62260'), ('Lake Orion', 2715, '42.78370', '-83.24430'), ('Leonard', 332, '42.86590', '-83.14320'), ('Milford', 6272, '42.58570', '-83.60110'), ('Novi', 47386, '42.47550', '-83.49050'), ('Orchard Lake', 2245, '42.58240', '-83.37750'), ('Ortonville', 1535, '42.85140', '-83.44420'), ('Oxford', 3540, '42.82100', '-83.25400'), ('Pontiac', 66337, '42.64910', '-83.28720'), ('Rochester', 10467, '42.68670', '-83.12380'), ('Royal Oak', 60062, '42.50860', '-83.15460'), ('Southfield', 78296, '42.47560', '-83.25920'), ('South Lyon', 10036, '42.46070', '-83.65130'), ('Troy', 72884, '42.58020', '-83.14310'), ('Waterford', 73150, '42.66290', '-83.38800'), ('White Lake', 4727, '42.65450', '-83.50490')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC127': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Colfax', 254, '43.74330', '-86.07920'), ('Crystal Valley', 254, '43.77380', '-86.23750'), ('Elbridge', 254, '43.68580', '-86.21880'), ('Hart', 1950, '43.69710', '-86.36310'), ('Hesperia', 954, '43.56820', '-86.04020'), ('Little Point Sable', 1050, '43.63470', '-86.53750'), ('Mears', 1950, '43.68200', '-86.41970'), ('New Era', 461, '43.55950', '-86.34690'), ('Rothbury', 416, '43.50740', '-86.34840'), ('St. Huberts', 846, '43.54250', '-86.08500'), ('Stony Lake', 520, '43.55970', '-86.50000'), ('Walkerville', 254, '43.71470', '-86.12570'), ('Weare', 1950, '43.74630', '-86.33950')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC127': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Colfax', 254, '43.74330', '-86.07920'), ('Crystal Valley', 254, '43.77380', '-86.23750'), ('Elbridge', 254, '43.68580', '-86.21880'), ('Hart', 1950, '43.69710', '-86.36310'), ('Hesperia', 954, '43.56820', '-86.04020'), ('Little Point Sable', 1050, '43.63470', '-86.53750'), ('Mears', 1950, '43.68200', '-86.41970'), ('New Era', 461, '43.55950', '-86.34690'), ('Rothbury', 416, '43.50740', '-86.34840'), ('St. Huberts', 846, '43.54250', '-86.08500'), ('Stony Lake', 520, '43.55970', '-86.50000'), ('Walkerville', 254, '43.71470', '-86.12570'), ('Weare', 1950, '43.74630', '-86.33950')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIC129': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Clear Lake', 721, '44.41660', '-84.25000'), ('Lupton', 721, '44.43330', '-84.01700'), ('Prescott', 286, '44.19140', '-83.93190'), ('Rifle River State Park', 721, '44.40000', '-83.99000'), ('Rose City', 721, '44.42100', '-84.11540'), ('Selkirk', 721, '44.31670', '-84.06670'), ('Skidway Lake', 3147, '44.19400', '-84.04420'), ('West Branch', 1926, '44.27570', '-84.23530')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC131': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bergland', 1769, '46.59250', '-89.57100'), ('Bruce Crossing', 1769, '46.53500', '-89.17860'), ('Clark Lake', 2085, '46.63400', '-89.77100'), ('Ewen', 1769, '46.53440', '-89.28150'), ('Fourteen Mile Point', 1769, '46.99200', '-89.11700'), ('Lake Of The Clouds', 2085, '46.80400', '-89.75200'), ('Mass City', 1769, '46.76190', '-89.07910'), ('Merriweather', 2085, '46.57190', '-89.63740'), ('Mirror Lake', 2085, '46.76200', '-89.77000'), ('Ontonagon', 1769, '46.86710', '-89.31430'), ('Paulding', 1374, '46.40000', '-89.18000'), ('Rockland', 1769, '46.73800', '-89.17900'), ('Silver City', 1769, '46.83000', '-89.57000'), ('Trout Creek', 1769, '46.48190', '-89.01220'), ('White Pine', 1769, '46.75400', '-89.58400')], 'partOfState': 'western upper', 'wfo': 'MQT'}, +'MIC133': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ashton', 251, '43.97300', '-85.50370'), ('Avondale', 836, '44.01580', '-85.22670'), ('Dighton', 236, '44.08780', '-85.34500'), ('Evart', 1738, '43.90240', '-85.27380'), ('Gibos Corners', 393, '43.85720', '-85.14720'), ('Hersey', 374, '43.84970', '-85.44210'), ('Highland', 584, '44.14550', '-85.26630'), ('Ina', 584, '44.11700', '-85.28670'), ('Le Roy', 267, '44.03850', '-85.45270'), ('Marion', 836, '44.10280', '-85.14700'), ('Park Lake', 584, '44.14580', '-85.20620'), ('Pisgah Heights', 836, '44.09450', '-85.22600'), ('Reed City', 2430, '43.87250', '-85.50920'), ('Sears', 1738, '43.89830', '-85.18470'), ('Stambaugh Corner', 354, '43.94450', '-85.42530'), ('Tustin', 237, '44.10200', '-85.45810')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIC135': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Comins', 2016, '44.80000', '-84.05000'), ('Fairview', 2016, '44.71660', '-84.05000'), ('Luzerne', 2016, '44.61660', '-84.26660'), ('Mack Lake', 2016, '44.56000', '-84.10000'), ('McKinley', 2016, '44.63330', '-83.93330'), ('Mio', 2016, '44.66300', '-84.13000'), ('Red Oak', 2016, '44.70000', '-84.28340')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC137': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Elmira', 3503, '45.06700', '-84.85000'), ('Gaylord', 3681, '45.03200', '-84.67410'), ('Johannesburg', 3681, '44.98400', '-84.46000'), ('Otsego Lake State Park', 3681, '44.93000', '-84.70000'), ('Sparr', 3681, '45.05000', '-84.58330'), ('Vanderbilt', 587, '45.14350', '-84.66350'), ('Waters', 3681, '44.89660', '-84.70000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC139': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allendale', 11555, '42.98570', '-85.95180'), ('Bauer', 7160, '42.92130', '-85.90220'), ('Beechwood', 2963, '42.79700', '-86.12590'), ('Coopersville', 3910, '43.06540', '-85.93380'), ('Drenthe', 5805, '42.78280', '-85.94000'), ('Eastmanville', 11555, '43.01700', '-85.95630'), ('Grand Haven', 11168, '43.05530', '-86.22420'), ('Grand Valley', 17211, '42.97450', '-85.86970'), ('Holland', 35048, '42.77170', '-86.10220'), ('Hudsonville', 7160, '42.86500', '-85.86310'), ('Jamestown', 7160, '42.82550', '-85.84250'), ('Jenison', 17211, '42.90870', '-85.82980'), ('Lamont', 11555, '43.00870', '-85.90620'), ('Macatawa', 2963, '42.76970', '-86.20620'), ('Marne', 17279, '43.03620', '-85.82780'), ('Nunica', 1124, '43.07970', '-86.06720'), ('Olive Center', 5805, '42.91420', '-86.08130'), ('Port Sheldon', 2963, '42.89950', '-86.19970'), ('Spring Lake', 2514, '43.07480', '-86.19050'), ('Wright', 3968, '43.11080', '-85.80870'), ('Zeeland', 5805, '42.81310', '-86.01310')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIC139': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allendale', 11555, '42.98570', '-85.95180'), ('Bauer', 7160, '42.92130', '-85.90220'), ('Beechwood', 2963, '42.79700', '-86.12590'), ('Coopersville', 3910, '43.06540', '-85.93380'), ('Drenthe', 5805, '42.78280', '-85.94000'), ('Eastmanville', 11555, '43.01700', '-85.95630'), ('Grand Haven', 11168, '43.05530', '-86.22420'), ('Grand Valley', 17211, '42.97450', '-85.86970'), ('Holland', 35048, '42.77170', '-86.10220'), ('Hudsonville', 7160, '42.86500', '-85.86310'), ('Jamestown', 7160, '42.82550', '-85.84250'), ('Jenison', 17211, '42.90870', '-85.82980'), ('Lamont', 11555, '43.00870', '-85.90620'), ('Macatawa', 2963, '42.76970', '-86.20620'), ('Marne', 17279, '43.03620', '-85.82780'), ('Nunica', 1124, '43.07970', '-86.06720'), ('Olive Center', 5805, '42.91420', '-86.08130'), ('Port Sheldon', 2963, '42.89950', '-86.19970'), ('Spring Lake', 2514, '43.07480', '-86.19050'), ('Wright', 3968, '43.11080', '-85.80870'), ('Zeeland', 5805, '42.81310', '-86.01310')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIC141': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Hagensville', 3322, '45.33330', '-83.80000'), ('Hawks', 3322, '45.30000', '-83.90000'), ('Huron Beach', 263, '45.49000', '-84.11000'), ('Metz', 292, '45.28340', '-83.81660'), ('Millersburg', 263, '45.33380', '-84.06060'), ('Ocqueoc', 263, '45.41000', '-84.10000'), ('Onaway', 993, '45.35850', '-84.22830'), ('Posen', 292, '45.26210', '-83.69940'), ('Presque Isle', 11304, '45.30000', '-83.46660'), ('Rogers City', 3322, '45.41850', '-83.80650')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC143': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Higgins Lake', 1133, '44.46000', '-84.73500'), ('Houghton Lake', 3749, '44.30000', '-84.76000'), ('Lake St. Helen', 2993, '44.36000', '-84.50000'), ('North Higgins Lake', 1133, '44.50000', '-84.73000'), ('Prudenville', 1737, '44.30000', '-84.67000'), ('Roscommon', 1133, '44.50000', '-84.59500'), ('Roscommon County Airport', 1513, '44.35500', '-84.68600'), ('South Higgins Lake', 1133, '44.44000', '-84.67000'), ('St. Helen', 2993, '44.36280', '-84.41860'), ('Twin Lakes Area', 2993, '44.23330', '-84.45000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIC145': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Arthur', 1375, '43.44290', '-83.75110'), ('Birch Run', 1653, '43.25010', '-83.79010'), ('Bridgeport', 7849, '43.37580', '-83.88320'), ('Burt', 1122, '43.23680', '-83.90630'), ('Chesaning', 2548, '43.18460', '-84.11990'), ('Fenmore', 1055, '43.17280', '-84.34530'), ('Fosters', 1169, '43.29810', '-83.91640'), ('Frankenmuth', 4838, '43.33050', '-83.74020'), ('Freeland', 5147, '43.52110', '-84.11770'), ('Hemlock', 1585, '43.41580', '-84.23160'), ('Layton Corners', 603, '43.17580', '-83.98830'), ('Marion Springs', 526, '43.24440', '-84.32720'), ('Merrill', 782, '43.40930', '-84.33530'), ('Nelson', 1601, '43.33420', '-84.22970'), ('Oakley', 339, '43.14310', '-84.16860'), ('Saginaw', 61799, '43.41960', '-83.94950'), ('Shields', 6590, '43.41770', '-84.07320'), ('St. Charles', 2215, '43.29940', '-84.14970'), ('Zilwaukee', 1799, '43.48000', '-83.92180')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC147': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Adair', 4141, '42.79810', '-82.63390'), ('Algonac', 4613, '42.62210', '-82.53460'), ('Berville', 1548, '42.90830', '-82.88310'), ('Brockway', 2063, '43.07440', '-82.76560'), ('Capac', 1775, '43.01330', '-82.92930'), ('Emmett', 251, '42.99110', '-82.76590'), ('Fair Haven', 1505, '42.67740', '-82.64810'), ('Harsens Island', 3394, '42.59550', '-82.57850'), ('Jeddo', 2467, '43.15150', '-82.58380'), ('Lakeport', 33694, '43.11500', '-82.49730'), ('Lynn Township', 148, '43.11750', '-82.92930'), ('Marine City', 4652, '42.71420', '-82.50110'), ('Marysville', 9684, '42.91020', '-82.47980'), ('Port Huron', 32338, '42.99370', '-82.43360'), ('Ruby', 1974, '43.04220', '-82.60750'), ('Smiths Creek', 1974, '42.91440', '-82.60100'), ('St. Clair', 5802, '42.82470', '-82.49290'), ('Wadhams', 1974, '42.98720', '-82.53860'), ('Yale', 2063, '43.12800', '-82.79640')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC149': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Burr Oak', 797, '41.84820', '-85.32090'), ('Centreville', 1579, '41.92180', '-85.52740'), ('Clear Lake', 0, '41.94800', '-85.73300'), ('Colon', 1227, '41.95900', '-85.32350'), ('Constantine', 2095, '41.83800', '-85.66530'), ('Corey Lake', 0, '41.93000', '-85.74700'), ('Fairfax', 0, '41.95500', '-85.36600'), ('Fawn River', 0, '41.78200', '-85.34400'), ('Findley', 0, '41.89400', '-85.37200'), ('Fishers Lake', 0, '41.99100', '-85.57100'), ('Flowerfield', 0, '42.06500', '-85.65800'), ('Howardsville', 0, '42.02500', '-85.71800'), ('Klinger Lake', 0, '41.80500', '-85.54300'), ('Leonidas', 0, '42.02300', '-85.35200'), ('Mendon', 917, '42.00840', '-85.45410'), ('Moore Park', 0, '42.01400', '-85.63600'), ('Mottville', 0, '41.80000', '-85.75700'), ('Nottawa', 0, '41.91900', '-85.44900'), ('Sturgis', 11285, '41.80170', '-85.42120'), ('Three Rivers', 7328, '41.94410', '-85.63210'), ('Wasepi', 0, '41.94100', '-85.46200'), ('White Pigeon', 1627, '41.79840', '-85.64280')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIC151': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Applegate', 287, '43.35490', '-82.63650'), ('Argyle', 821, '43.56420', '-82.93610'), ('Brown City', 1334, '43.21160', '-82.98870'), ('Carsonville', 502, '43.42570', '-82.67260'), ('Croswell', 2467, '43.27370', '-82.61870'), ('Decker', 2104, '43.45910', '-83.04960'), ('Deckerville', 944, '43.52560', '-82.74210'), ('Forestville', 127, '43.66070', '-82.61310'), ('Juhl', 2745, '43.35970', '-82.94640'), ('Lexington', 1104, '43.26850', '-82.53380'), ('Marlette', 2104, '43.32650', '-83.08070'), ('Melvin', 160, '43.18460', '-82.86350'), ('Minden', 242, '43.67100', '-82.77520'), ('New Greenleaf', 2643, '43.66170', '-83.07830'), ('Peck', 599, '43.25910', '-82.81650'), ('Port Sanilac', 658, '43.43010', '-82.54810'), ('Richmondville', 127, '43.57330', '-82.59760'), ('Roseburg', 2063, '43.19000', '-82.74390'), ('Sandusky', 2745, '43.42290', '-82.83180'), ('Watertown', 2745, '43.34110', '-82.82830')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC153': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Blaney Park', 3583, '46.11520', '-85.92730'), ('Cooks', 240, '45.91800', '-86.47600'), ('Cusino Lake', 2539, '46.45600', '-86.25900'), ('Germfask', 2686, '46.24950', '-85.92620'), ('Gulliver', 3583, '45.99210', '-86.01730'), ('Manistique', 3583, '45.95860', '-86.25010'), ('Seney', 2686, '46.34480', '-85.94590'), ('Seul Choix Point', 3583, '45.92170', '-85.91090'), ('Snyder Lake', 2686, '46.48800', '-85.94800'), ('Steuben', 2539, '46.18800', '-86.45700'), ('Thompson', 3583, '45.90610', '-86.32870')], 'partOfState': 'east central upper', 'wfo': 'MQT'}, +'MIC155': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bancroft', 616, '42.87680', '-84.06550'), ('Bennington', 16322, '42.93530', '-84.24190'), ('Byron', 595, '42.82550', '-83.94890'), ('Carland', 1442, '43.05810', '-84.30470'), ('Corunna', 3381, '42.98400', '-84.11670'), ('Durand', 3933, '42.91300', '-83.98830'), ('Henderson', 362, '43.08600', '-84.19650'), ('Juddville', 603, '43.05860', '-83.98750'), ('Laingsburg', 1223, '42.89000', '-84.34880'), ('Lennon', 517, '42.98530', '-83.93140'), ('Morrice', 882, '42.83800', '-84.17950'), ('New Lothrop', 603, '43.11610', '-83.96890'), ('Owosso', 15713, '42.99520', '-84.17580'), ('Perry', 2065, '42.82090', '-84.22830'), ('Shaftsburg', 2163, '42.80470', '-84.29310'), ('Vernon', 847, '42.93970', '-84.02990')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC157': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Akron', 461, '43.56700', '-83.51430'), ('Bay Park', 421, '43.65470', '-83.58920'), ('Caro', 4145, '43.48800', '-83.40210'), ('Cass City', 2643, '43.60250', '-83.17520'), ('Deford', 2643, '43.51240', '-83.18960'), ('East Dayton', 450, '43.41080', '-83.28530'), ('Ellington', 4054, '43.55390', '-83.32140'), ('Fairgrove', 627, '43.52400', '-83.54170'), ('Fostoria', 1010, '43.25540', '-83.37250'), ('Gagetown', 389, '43.65680', '-83.24520'), ('Kingston', 450, '43.41360', '-83.18670'), ('Mayville', 1055, '43.33600', '-83.35330'), ('Millington', 1137, '43.28030', '-83.52880'), ('Quanicassee', 1375, '43.58400', '-83.67350'), ('Reese', 1375, '43.45180', '-83.68860'), ('Unionville', 605, '43.65410', '-83.46690'), ('Vassar', 2823, '43.37150', '-83.57870'), ('Watrousville', 592, '43.45220', '-83.52310')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC159': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bangor', 1933, '42.31150', '-86.11450'), ('Bloomingdale', 528, '42.38340', '-85.95780'), ('Breedsville', 235, '42.34710', '-86.07090'), ('Covert', 3782, '42.29370', '-86.26220'), ('Decatur', 1838, '42.10970', '-85.97340'), ('Glendale', 503, '42.30280', '-85.95630'), ('Gobles', 815, '42.36190', '-85.87670'), ('Grand Junction', 235, '42.40420', '-86.07300'), ('Hartford', 2476, '42.20750', '-86.16620'), ('Keeler', 2476, '42.11280', '-86.16670'), ('Kendall', 815, '42.36170', '-85.81330'), ('Lacota', 235, '42.41350', '-86.12970'), ('Lawrence', 1059, '42.21870', '-86.05280'), ('Lawton', 1859, '42.16720', '-85.84640'), ('Mattawan', 2536, '42.21400', '-85.78760'), ('McDonald', 2476, '42.26530', '-86.15700'), ('Mentha', 815, '42.35720', '-85.77470'), ('Paw Paw', 3363, '42.21800', '-85.89000'), ('Pine Grove', 815, '42.35380', '-85.86280'), ('South Haven', 5021, '42.40040', '-86.27250')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIC161': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ann Arbor', 114024, '42.27540', '-83.73080'), ('Bridgewater', 6660, '42.16020', '-83.89820'), ('Chelsea', 4398, '42.31440', '-84.02200'), ('Dexter', 2338, '42.33150', '-83.87980'), ('Hudson Mills', 2338, '42.38720', '-83.91690'), ('Lyndon Township', 4398, '42.38150', '-84.06750'), ('Manchester', 2160, '42.14890', '-84.03550'), ('Milan', 4775, '42.08740', '-83.68190'), ('Pleasant Lake', 2160, '42.20670', '-83.95110'), ('Salem', 5857, '42.40610', '-83.58000'), ('Saline', 8034, '42.17580', '-83.78000'), ('Whitmore Lake', 6574, '42.42910', '-83.74540'), ('Whittaker', 4775, '42.12810', '-83.59970'), ('Ypsilanti', 22362, '42.24420', '-83.62110')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC163': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Belleville', 3997, '42.20340', '-83.48230'), ('Canton', 76366, '42.30850', '-83.48220'), ('Dearborn', 97775, '42.31130', '-83.21350'), ('Downtown Detroit', 22976, '42.33220', '-83.04810'), ('Flat Rock', 8488, '42.10180', '-83.27290'), ('Grosse Ile', 10894, '42.12840', '-83.14940'), ('Grosse Pointe', 5670, '42.38650', '-82.90610'), ('Grosse Pointe Shore', 2823, '42.44520', '-82.87410'), ('Hamtramck', 22976, '42.40000', '-83.07000'), ('Highland Park', 16746, '42.40490', '-83.09880'), ('Lincoln Park', 40008, '42.24350', '-83.18100'), ('Livonia', 100545, '42.39820', '-83.37250'), ('Northeast Detroit', 22976, '42.43000', '-83.03000'), ('Northville', 6459, '42.43650', '-83.48840'), ('Northwest Detroit', 54387, '42.40000', '-83.22000'), ('Plymouth', 9022, '42.37120', '-83.46740'), ('Redford', 51622, '42.39480', '-83.29420'), ('Riverview', 13894, '42.17140', '-83.19210'), ('Romulus', 22979, '42.22380', '-83.36620'), ('Southwest Detroit', 951270, '42.33000', '-83.11000'), ('Sumpter Township', 3270, '42.13150', '-83.48170'), ('Taylor', 65868, '42.22530', '-83.26840'), ('Westland', 86602, '42.31900', '-83.38090')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIC165': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Boon', 169, '44.28340', '-85.60000'), ('Buckley', 550, '44.50390', '-85.67170'), ('Cadillac', 10000, '44.24830', '-85.41610'), ('Harrietta', 169, '44.30950', '-85.70050'), ('Manton', 1221, '44.41140', '-85.40040'), ('Meauwataka', 1221, '44.35000', '-85.53330'), ('Mesick', 447, '44.40360', '-85.71940'), ('Sherman', 447, '44.41670', '-85.70000'), ('Yuma', 447, '44.35000', '-85.75000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MNC001': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Aitkin', 1984, '46.53010', '-93.71040'), ('Arthyde', 40, '46.35620', '-93.08950'), ('Bain', 118, '46.79090', '-93.58980'), ('Ball Bluff', 183, '46.95470', '-93.27330'), ('Balsam', 59, '46.78110', '-93.15610'), ('Dads Corner', 65, '46.33280', '-93.25910'), ('Glen', 1984, '46.41870', '-93.51540'), ('Glory', 1984, '46.41760', '-93.60060'), ('Hassman', 1984, '46.60220', '-93.61370'), ('Haypoint', 479, '46.90030', '-93.61690'), ('Hill City', 479, '46.98610', '-93.59640'), ('Jacobson', 183, '47.00080', '-93.26270'), ('Kimberly', 118, '46.56090', '-93.46650'), ('Lawler', 59, '46.53620', '-93.17060'), ('Libby', 404, '46.78420', '-93.32670'), ('Malmo', 707, '46.33420', '-93.51970'), ('McGrath', 65, '46.24290', '-93.27440'), ('McGregor', 404, '46.60830', '-93.30600'), ('Palisade', 118, '46.71310', '-93.49070'), ('Pine Knoll', 1984, '46.57730', '-93.75780'), ('Rossburg', 1984, '46.53530', '-93.58010'), ('Sheshebee', 404, '46.70470', '-93.24260'), ('Swatara', 479, '46.89560', '-93.67420'), ('Tamarack', 59, '46.65190', '-93.11900'), ('Waldeck', 118, '46.67440', '-93.60780'), ('Waukenabo', 118, '46.74020', '-93.60080'), ('Wealthwood', 1984, '46.36320', '-93.65430')], 'partOfState': 'east central', 'wfo': 'DLH'}, +'MNC003': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Andover', 26588, '45.25750', '-93.33110'), ('Anoka', 18076, '45.21040', '-93.39010'), ('Bethel', 443, '45.40060', '-93.26940'), ('Blaine', 44942, '45.16610', '-93.20840'), ('Centerville', 3202, '45.16500', '-93.05300'), ('Circle Pines', 4663, '45.13850', '-93.15240'), ('Columbia Heights', 18520, '45.04910', '-93.24660'), ('Coon Rapids', 61607, '45.17410', '-93.31110'), ('East Bethel', 10941, '45.34420', '-93.20140'), ('Fridley', 27449, '45.08480', '-93.25890'), ('Ham Lake', 12710, '45.26000', '-93.20080'), ('Lino Lakes', 16791, '45.16190', '-93.08250'), ('Oak Grove', 7944, '45.32000', '-93.34700'), ('Ramsey', 18510, '45.26340', '-93.44770'), ('St Francis', 7101, '45.38500', '-93.36000'), ('St Francis', 4910, '45.39980', '-93.38960')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC005': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Audubon', 445, '46.86420', '-95.98090'), ('Bad Medicine Lake', 583, '47.12690', '-95.40080'), ('Callaway', 200, '46.98300', '-95.91130'), ('Cormorant', 782, '46.73060', '-96.06530'), ('Detroit Lakes', 7348, '46.81310', '-95.84220'), ('Evergreen', 31, '46.76000', '-95.45060'), ('Frazee', 1377, '46.72700', '-95.69960'), ('Height Of Land Lake', 1377, '46.89110', '-95.60830'), ('Lake Park', 782, '46.88360', '-96.09650'), ('Many Point Lake', 583, '47.07670', '-95.53470'), ('Midway', 31, '46.78190', '-95.26000'), ('Ogema', 143, '47.10160', '-95.92250'), ('Osage', 31, '46.92030', '-95.25670'), ('Ponsford', 31, '46.97000', '-95.38360'), ('Richwood', 200, '46.97470', '-95.82250'), ('Rochert', 1377, '46.86000', '-95.68750'), ('Shoreham', 7348, '46.75750', '-95.89860'), ('Snellman', 31, '46.88940', '-95.41280'), ('Toad Lake', 31, '46.86440', '-95.48970'), ('Two Inlets', 3276, '47.05280', '-95.21720'), ('Westbury', 200, '46.91720', '-95.90940'), ('White Earth', 424, '47.09670', '-95.84310'), ('Wolf Lake', 31, '46.80290', '-95.35510')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC007': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bemidji', 11917, '47.48230', '-94.87860'), ('Blackduck', 696, '47.72640', '-94.54820'), ('Carmel', 228, '48.28170', '-95.44420'), ('Debs', 1055, '47.73140', '-95.12780'), ('Fourtown', 228, '48.28110', '-95.33530'), ('Funkley', 15, '47.78640', '-94.42750'), ('Gates Corner', 228, '48.45280', '-95.31890'), ('Hines', 195, '47.68610', '-94.63250'), ('Island Lake', 1430, '47.78890', '-95.01780'), ('Jelle', 228, '48.23810', '-95.40000'), ('Kelliher', 294, '47.94300', '-94.44600'), ('Lavinia', 11917, '47.51500', '-94.81140'), ('Malcolm', 228, '48.32440', '-95.33530'), ('Nebish', 957, '47.77140', '-94.84720'), ('Otto', 294, '48.08810', '-94.60720'), ('Pennington', 860, '47.48360', '-94.47970'), ('Pinewood', 69, '47.59720', '-95.12750'), ('Ponemah', 874, '48.02060', '-94.91360'), ('Puposky', 957, '47.67780', '-94.90690'), ('Redby', 957, '47.87860', '-94.91280'), ('Red Lake', 1430, '47.87640', '-95.01670'), ('Rosby', 11917, '47.42080', '-94.80640'), ('Saum', 294, '47.97470', '-94.67670'), ('Shooks', 294, '47.87420', '-94.43810'), ('Shotley', 294, '48.04890', '-94.63860'), ('Solway', 69, '47.52070', '-95.12970'), ('Tenstrike', 195, '47.66080', '-94.68460'), ('Thorhult', 228, '48.23030', '-95.24780'), ('Turtle River', 75, '47.58850', '-94.76020'), ('Waskish', 294, '48.16140', '-94.51220'), ('Wilton', 186, '47.50520', '-94.99120')], 'partOfState': 'north central', 'wfo': 'FGF'}, +'MNC009': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Foley', 2154, '45.66320', '-93.90940'), ('Gilman', 215, '45.73530', '-93.95010'), ('Granite Ledge', 716, '45.80700', '-93.86500'), ('Oak Park', 876, '45.69800', '-93.81700'), ('Rice', 711, '45.74860', '-94.22870'), ('Ronneby', 16, '45.68220', '-93.86570'), ('Sauk Rapids', 10213, '45.59440', '-94.16610')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC011': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Artichoke', 47, '45.39920', '-96.15750'), ('Barry', 25, '45.55850', '-96.55970'), ('Beardsley', 262, '45.55780', '-96.71420'), ('Bonanza Grove', 262, '45.44560', '-96.70950'), ('Clinton', 453, '45.46220', '-96.44330'), ('Correll', 47, '45.23180', '-96.16270'), ('Graceville', 605, '45.56850', '-96.43750'), ('Johnson', 32, '45.57190', '-96.29380'), ('Lagoona Beach', 669, '45.36650', '-96.48560'), ('Odessa', 113, '45.26140', '-96.33120'), ('Ortonville', 2158, '45.30360', '-96.44090'), ('Yankeetown', 262, '45.49110', '-96.74020')], 'partOfState': 'west central', 'wfo': 'ABR'}, +'MNC013': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Amboy', 575, '43.88850', '-94.15730'), ('Eagle Lake', 1787, '44.15940', '-93.88250'), ('Garden City', 666, '44.04700', '-94.16400'), ('Good Thunder', 592, '44.00670', '-94.07010'), ('Judson', 563, '44.19600', '-94.19500'), ('Lake Crystal', 2420, '44.10340', '-94.21790'), ('Madison Lake', 837, '44.20220', '-93.81440'), ('Mankato', 32427, '44.16670', '-93.99110'), ('Mapleton', 1678, '43.92590', '-93.95390'), ('Pemberton', 246, '44.00890', '-93.78390'), ('Skyline', 330, '44.14020', '-94.03520'), ('St Clair', 827, '44.08110', '-93.85750'), ('Vernon Center', 359, '43.96340', '-94.16670')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC015': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cobden', 61, '44.28390', '-94.84770'), ('Comfrey', 367, '44.11090', '-94.90270'), ('Essig', 762, '44.32400', '-94.60400'), ('Evan', 91, '44.35250', '-94.83690'), ('Hanska', 443, '44.14810', '-94.49460'), ('New Ulm', 13594, '44.31310', '-94.46370'), ('Searles', 913, '44.22800', '-94.43400'), ('Sleepy Eye', 3515, '44.29990', '-94.72480'), ('Springfield', 2215, '44.23790', '-94.97680')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC017': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Automba', 168, '46.52090', '-93.01870'), ('Barnum', 525, '46.50480', '-92.68930'), ('Carlton', 810, '46.66030', '-92.42320'), ('Cloquet', 11201, '46.72900', '-92.49440'), ('Cromwell', 143, '46.67950', '-92.87070'), ('Esko', 153, '46.70600', '-92.36330'), ('Holyoke', 308, '46.46760', '-92.38860'), ('Kettle River', 168, '46.48640', '-92.87800'), ('Mahtowa', 525, '46.57400', '-92.63200'), ('Moose Lake', 2239, '46.44600', '-92.76840'), ('Nemadji', 525, '46.47950', '-92.59480'), ('Pleasant Valley', 308, '46.53830', '-92.38500'), ('Ronald', 40, '46.44740', '-93.05430'), ('Sawyer', 11201, '46.67140', '-92.63330'), ('Scanlon', 838, '46.70740', '-92.42890'), ('Scotts Corner', 308, '46.59830', '-92.42910'), ('Thomson', 153, '46.66410', '-92.38980'), ('Wrenshall', 308, '46.61830', '-92.38360'), ('Wright', 93, '46.67210', '-93.00670')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNC019': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Carver', 1266, '44.76040', '-93.62750'), ('Chanhassen', 20321, '44.85720', '-93.55780'), ('Chaska', 17449, '44.82110', '-93.60510'), ('Cologne', 1012, '44.77160', '-93.78800'), ('Hamburg', 538, '44.73160', '-93.96320'), ('Mayer', 554, '44.88420', '-93.88830'), ('New Germany', 346, '44.88370', '-93.97090'), ('Norwood/Young America', 3108, '44.78070', '-93.91530'), ('Victoria', 4025, '44.86610', '-93.65840'), ('Waconia', 6814, '44.84790', '-93.79410'), ('Watertown', 3029, '44.96310', '-93.84570')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC021': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Backus', 311, '46.82090', '-94.51410'), ('Bena', 110, '47.34110', '-94.20620'), ('Boy River', 38, '47.16690', '-94.12250'), ('Brevik', 180, '47.08300', '-94.28880'), ('Casino', 420, '46.42700', '-94.54030'), ('Cass Lake', 860, '47.37880', '-94.60060'), ('Chickamaw Beach', 148, '46.74870', '-94.38980'), ('Days High Landing', 75, '47.25230', '-93.80590'), ('East Gull Lake', 978, '46.41080', '-94.35220'), ('Esterdy', 3104, '46.47670', '-94.73260'), ('Federal Dam', 101, '47.23850', '-94.21880'), ('Hackensack', 285, '46.92790', '-94.51860'), ('Inguadona', 180, '46.98360', '-94.13060'), ('Lake Shore', 966, '46.49530', '-94.36100'), ('Leader', 585, '46.51580', '-94.64970'), ('Longville', 180, '46.98670', '-94.21520'), ('Oshawa', 311, '46.80400', '-94.63890'), ('Outing', 847, '46.82060', '-93.94810'), ('Pillager', 420, '46.32690', '-94.47640'), ('Pine River', 928, '46.72260', '-94.39830'), ('Pontoria', 148, '46.86340', '-94.33670'), ('Poplar', 75, '46.58670', '-94.69670'), ('Remer', 372, '47.05800', '-93.91370'), ('Schley', 860, '47.36890', '-94.41620'), ('Sylvan', 420, '46.33510', '-94.40680'), ('Tobique', 38, '47.11560', '-94.03980'), ('Wabedo', 180, '46.92060', '-94.18810'), ('Walker', 1069, '47.08980', '-94.57890'), ('Whipholt', 180, '47.04940', '-94.36610'), ('Wilkinson', 860, '47.25090', '-94.62780')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNC023': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Clara City', 1393, '44.95800', '-95.36600'), ('Maynard', 388, '44.90490', '-95.46720'), ('Milan', 326, '45.11410', '-95.91350'), ('Montevideo', 5346, '44.95110', '-95.71850'), ('Watson', 209, '45.01030', '-95.79990')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNC025': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Branch', 2696, '45.51460', '-92.95760'), ('Center City', 582, '45.39090', '-92.81810'), ('Chisago City', 2622, '45.37040', '-92.88800'), ('Harris', 1121, '45.60290', '-92.98910'), ('Lindstrom', 3015, '45.38590', '-92.84040'), ('North Branch', 8023, '45.51430', '-92.97840'), ('Rush City', 2102, '45.68170', '-92.96580'), ('Shafer', 343, '45.38770', '-92.74580'), ('Stacy', 1278, '45.39790', '-92.98780'), ('Taylors Falls', 951, '45.41140', '-92.66180'), ('Wyoming', 3048, '45.33360', '-92.99600')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC027': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Averill', 1049, '46.97080', '-96.54690'), ('Baker', 421, '46.71060', '-96.56670'), ('Barnesville', 2173, '46.64890', '-96.41760'), ('Comstock', 123, '46.66000', '-96.74660'), ('Dale', 201, '46.90530', '-96.21940'), ('Dilworth', 3001, '46.87540', '-96.69870'), ('Downer', 2173, '46.75420', '-96.48670'), ('Felton', 216, '47.07640', '-96.50480'), ('Georgetown', 125, '47.07810', '-96.79480'), ('Glyndon', 1049, '46.87270', '-96.57940'), ('Hawley', 1882, '46.87820', '-96.31620'), ('Hitterdal', 201, '46.97850', '-96.25820'), ('Kragnes', 1334, '46.98830', '-96.75140'), ('Moorhead', 32177, '46.86460', '-96.75570'), ('Muskoda', 1882, '46.86170', '-96.40640'), ('Rollag', 1882, '46.74000', '-96.23780'), ('Rustad', 88, '46.73330', '-96.74440'), ('Sabin', 421, '46.78050', '-96.65290'), ('Ulen', 532, '47.07930', '-96.25950')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC029': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alida', 160, '47.38360', '-95.23440'), ('Bagley', 1235, '47.52340', '-95.40360'), ('Berner', 294, '47.80440', '-95.47280'), ('Clearbrook', 551, '47.69470', '-95.42830'), ('Ebro', 79, '47.49560', '-95.52920'), ('Gonvick', 294, '47.73830', '-95.51250'), ('Lake Itasca', 69, '47.25390', '-95.21220'), ('Leonard', 29, '47.65240', '-95.26640'), ('Long Lost Lake', 583, '47.19360', '-95.41810'), ('Lower Rice Lake', 583, '47.34910', '-95.47210'), ('Shevlin', 160, '47.53070', '-95.25920'), ('Upper Rice Lake', 160, '47.39370', '-95.29690'), ('Weme', 294, '47.64420', '-95.53780'), ('Zerkel', 1235, '47.31080', '-95.38140')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC031': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Eagle Mountain', 1353, '47.89760', '-90.56030'), ('Grand Marais', 1353, '47.75520', '-90.34480'), ('Grand Portage', 1353, '47.96390', '-89.68500'), ('Hovland', 1353, '47.83880', '-89.97230'), ('Lutsen', 1353, '47.63690', '-90.71080'), ('Sea Gull Lake', 1353, '48.13090', '-90.94740'), ('Taconite Harbor', 2068, '47.52410', '-90.92170'), ('Tofte', 2068, '47.55970', '-90.88080')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNC033': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bingham Lake', 167, '43.90940', '-95.04540'), ('Delft', 167, '43.98570', '-95.08820'), ('Jeffers', 396, '44.05550', '-95.19550'), ('Mountain Lake', 2082, '43.94030', '-94.92620'), ('Storden', 274, '44.03960', '-95.31990'), ('Westbrook', 755, '44.04260', '-95.43490'), ('Windom', 4490, '43.86950', '-95.11830')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC035': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Barrows', 5555, '46.30120', '-94.25390'), ('Baxter', 5555, '46.34120', '-94.28240'), ('Brainerd', 13178, '46.35440', '-94.19410'), ('Breezy Point', 979, '46.60140', '-94.21930'), ('Crosby', 2299, '46.49000', '-93.95660'), ('Crosslake', 1893, '46.68250', '-94.09480'), ('Cuyuna', 231, '46.51180', '-93.92900'), ('Deerwood', 590, '46.47320', '-93.89900'), ('Emily', 847, '46.75690', '-93.96150'), ('Fifty Lakes', 392, '46.74880', '-94.09600'), ('Fort Ripley', 74, '46.16640', '-94.36170'), ('Garrison', 213, '46.30260', '-93.82350'), ('Ironton', 498, '46.48090', '-93.99670'), ('Jenkins', 287, '46.65230', '-94.32900'), ('Lake Hubert', 1953, '46.50230', '-94.25760'), ('Legionville', 13178, '46.44720', '-94.19950'), ('Lennox', 74, '46.24370', '-94.34320'), ('Little Pine', 847, '46.74560', '-93.86150'), ('Manhattan Beach', 50, '46.73440', '-94.14440'), ('Merrifield', 13178, '46.46510', '-94.17290'), ('Mission', 125, '46.58810', '-94.05110'), ('Nisswa', 1953, '46.50000', '-94.29730'), ('Pequot Lakes', 947, '46.60190', '-94.32060'), ('Pine Center', 213, '46.21450', '-93.91450'), ('Riverton', 115, '46.46100', '-94.04870'), ('Shephard', 105, '46.21400', '-94.10430'), ('St. Mathias', 5555, '46.22280', '-94.25110'), ('Swanburg', 50, '46.74040', '-94.17550'), ('Trommald', 125, '46.50450', '-94.01670'), ('Wolford', 125, '46.54570', '-93.97920'), ('Woodrow', 115, '46.38840', '-94.07450')], 'partOfState': 'east central', 'wfo': 'DLH'}, +'MNC037': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Apple Valley', 45527, '44.74920', '-93.19750'), ('Burnsville', 60220, '44.76460', '-93.27990'), ('Coates', 155, '44.71700', '-93.03600'), ('Eagan', 63557, '44.81940', '-93.16300'), ('Farmington', 12365, '44.65720', '-93.17830'), ('Hampton', 434, '44.60930', '-93.00230'), ('Hastings', 18204, '44.73280', '-92.85250'), ('Inver Grove Heights', 29751, '44.82520', '-93.05770'), ('Lakeville', 43128, '44.67940', '-93.24480'), ('Mendota Heights', 11434, '44.88220', '-93.14030'), ('Miesville', 135, '44.60020', '-92.81000'), ('New Trier', 116, '44.60390', '-92.93320'), ('Rosemount', 14619, '44.74760', '-93.07080'), ('South St Paul', 20197, '44.88790', '-93.04010'), ('Vermillion', 437, '44.67460', '-92.96410'), ('West St Paul', 19405, '44.90260', '-93.08560')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC039': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Berne', 1054, '44.16447', '-92.76659'), ('Claremont', 620, '44.04470', '-92.99620'), ('Concord', 836, '44.14985', '-92.83421'), ('Dodge Center', 2226, '44.02860', '-92.84900'), ('Eden', 836, '44.09867', '-92.88356'), ('Hayfield', 1325, '43.89010', '-92.84700'), ('Kasson', 4398, '44.02920', '-92.75290'), ('Mantorville', 1054, '44.06590', '-92.75340'), ('Oslo', 76, '43.88119', '-92.74832'), ('Wasioja', 1054, '44.08040', '-92.81411'), ('West Concord', 836, '44.15300', '-92.89970')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNC041': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alexandria', 8820, '45.87400', '-95.37510'), ('Brandon', 450, '45.96540', '-95.59690'), ('Carlos', 329, '45.97390', '-95.29280'), ('Evansville', 566, '46.00720', '-95.68370'), ('Forada', 197, '45.78950', '-95.35540'), ('Garfield', 281, '45.94040', '-95.49440'), ('Kensington', 286, '45.77790', '-95.69530'), ('Millerville', 115, '46.07110', '-95.55260'), ('Miltona', 279, '46.04480', '-95.29200'), ('Nelson', 172, '45.88500', '-95.26570'), ('Osakis', 1567, '45.86540', '-95.15280')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNC043': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Blue Earth', 3621, '43.63910', '-94.09980'), ('Bricelyn', 379, '43.56070', '-93.81300'), ('Delavan', 223, '43.76730', '-94.01850'), ('Easton', 214, '43.76590', '-93.90030'), ('Elmore', 735, '43.50590', '-94.08850'), ('Frost', 251, '43.58370', '-93.92540'), ('Kiester', 540, '43.53660', '-93.71140'), ('Minnesota Lake', 681, '43.84050', '-93.82870'), ('Walters', 88, '43.60520', '-93.67350'), ('Wells', 2494, '43.74370', '-93.72620'), ('Winnebago', 1487, '43.76600', '-94.16830')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC045': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Amherst', 343, '43.61254', '-91.91678'), ('Arendahl', 269, '43.83185', '-91.91495'), ('Bratsberg', 714, '43.73134', '-91.76692'), ('Bristol', 438, '43.54858', '-92.18360'), ('Canton', 343, '43.53010', '-91.92940'), ('Carimona', 343, '43.66554', '-92.16715'), ('Chatfield', 2394, '43.84390', '-92.18590'), ('Cherry Grove', 158, '43.57965', '-92.28412'), ('Choice', 269, '43.66372', '-91.79982'), ('Etna', 212, '43.59792', '-92.34991'), ('Fillmore', 460, '43.74778', '-92.26767'), ('Fountain', 343, '43.74070', '-92.13400'), ('Granger', 1080, '43.50106', '-92.09954'), ('Greenleafton', 460, '43.58148', '-92.21833'), ('Harmony', 1080, '43.55530', '-92.00940'), ('Henrytown', 343, '43.59792', '-91.93506'), ('Highland', 64, '43.68382', '-91.88388'), ('Hutton', 1426, '43.61437', '-92.05202'), ('Isinours', 1426, '43.71489', '-92.05019'), ('Lanesboro', 788, '43.71950', '-91.97350'), ('Lenora', 343, '43.56503', '-91.90033'), ('Mabel', 766, '43.52030', '-91.76830'), ('Newburg', 766, '43.56503', '-91.83271'), ('Ostrander', 212, '43.61400', '-92.42560'), ('Peterson', 269, '43.78600', '-91.83320'), ('Pilot Mound', 788, '43.81540', '-92.03557'), ('Preston', 1426, '43.67160', '-92.08250'), ('Rushford', 1696, '43.81230', '-91.75240'), ('Rushford Village', 714, '43.80440', '-91.78730'), ('Spring Valley', 2518, '43.68600', '-92.38990'), ('Tawney', 766, '43.61620', '-91.79982'), ('Washington', 2518, '43.76423', '-92.34991'), ('Whalan', 64, '43.73280', '-91.92770'), ('Wykoff', 460, '43.70820', '-92.26740'), ('York', 438, '43.53213', '-92.26584')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNC047': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Albert Lea', 18356, '43.65510', '-93.36660'), ('Alden', 652, '43.67010', '-93.57320'), ('Clarks Grove', 734, '43.76440', '-93.32780'), ('Conger', 133, '43.61530', '-93.52860'), ('Emmons', 432, '43.50740', '-93.48380'), ('Freeborn', 305, '43.76640', '-93.56320'), ('Geneva', 449, '43.82390', '-93.26830'), ('Glenville', 720, '43.56900', '-93.27560'), ('Hartland', 288, '43.80430', '-93.48560'), ('Hayward', 249, '43.64940', '-93.24670'), ('Hollandale', 292, '43.75980', '-93.20540'), ('London', 334, '43.52600', '-93.06200'), ('Manchester', 81, '43.72490', '-93.45060'), ('Matawan', 255, '43.83800', '-93.63500'), ('Myrtle', 63, '43.56320', '-93.16290'), ('Twin Lakes', 168, '43.56090', '-93.42330')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC049': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bellechester', 172, '44.37090', '-92.51170'), ('Cannon Falls', 3795, '44.51650', '-92.90260'), ('Dennison', 168, '44.40340', '-93.02870'), ('Goodhue', 778, '44.40060', '-92.62160'), ('Kenyon', 1661, '44.27240', '-92.98580'), ('Pine Island', 2337, '44.20490', '-92.64960'), ('Red Wing', 16116, '44.58190', '-92.60210'), ('Vasa', 908, '44.50300', '-92.72200'), ('Wanamingo', 1007, '44.30530', '-92.79150'), ('Zumbrota', 2789, '44.29450', '-92.67260')], 'partOfState': 'southeast', 'wfo': 'MPX'}, +'MNC051': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ashby', 472, '46.09320', '-95.81610'), ('Barrett', 355, '45.91070', '-95.89140'), ('Elbow Lake', 1275, '45.99180', '-95.97740'), ('Erdahl', 472, '45.99190', '-95.81750'), ('Herman', 452, '45.81060', '-96.13990'), ('Hoffman', 672, '45.83190', '-95.78590'), ('Norcross', 59, '45.86860', '-96.19590'), ('Wendell', 177, '46.03540', '-96.10100')], 'partOfState': 'west central', 'wfo': 'FGF'}, +'MNC053': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bloomington', 85172, '44.82950', '-93.31510'), ('Brooklyn Center', 29172, '45.06880', '-93.31780'), ('Brooklyn Park', 67388, '45.10960', '-93.35210'), ('Champlin', 22193, '45.16550', '-93.38920'), ('Corcoran', 5630, '45.11700', '-93.58630'), ('Crystal', 22698, '45.03730', '-93.35930'), ('Dayton', 4699, '45.18990', '-93.47170'), ('Eden Prairie', 54901, '44.84920', '-93.45810'), ('Edina', 47425, '44.89100', '-93.35960'), ('Golden Valley', 20281, '44.98990', '-93.35860'), ('Greenfield', 2544, '45.10490', '-93.69640'), ('Hopkins', 17145, '44.92670', '-93.40530'), ('Independence', 3236, '45.02210', '-93.70520'), ('Long Lake', 1842, '44.98530', '-93.56880'), ('Loretto', 570, '45.05540', '-93.63520'), ('Maple Grove', 50365, '45.10600', '-93.46000'), ('Maple Plain', 2088, '45.00890', '-93.66150'), ('Medina', 4005, '45.03120', '-93.59530'), ('Minneapolis', 382618, '44.96180', '-93.26680'), ('New Hope', 20873, '45.03700', '-93.38700'), ('Osseo', 2434, '45.11790', '-93.39910'), ('Plymouth', 65894, '45.02430', '-93.46020'), ('Richfield', 34439, '44.87720', '-93.28210'), ('Robbinsdale', 14123, '45.02670', '-93.33320'), ('Rogers', 3588, '45.19390', '-93.55170'), ('St Bonifacius', 1873, '44.90490', '-93.74700'), ('St Louis Park', 44126, '44.94860', '-93.36490'), ('The Lake Minnetonk', 51301, '44.93210', '-93.46140')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC055': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Black Hammer', 1304, '43.61254', '-91.66640'), ('Brownsville', 517, '43.69860', '-91.28050'), ('Caledonia', 2965, '43.63410', '-91.50030'), ('Eitzen', 229, '43.50830', '-91.46470'), ('Freeburg', 517, '43.61254', '-91.36669'), ('Hokah', 614, '43.76010', '-91.35000'), ('Houston', 1020, '43.76070', '-91.57230'), ('La Crescent', 4923, '43.82940', '-91.30080'), ('Money Creek', 1020, '43.81540', '-91.61523'), ('Mound Prairie', 614, '43.78068', '-91.45075'), ('Newhouse', 766, '43.51568', '-91.71758'), ('Perkins', 1020, '43.78251', '-91.64996'), ('Reno', 266, '43.59792', '-91.28079'), ('Riceford', 766, '43.58330', '-91.72489'), ('Sheldon', 1020, '43.68199', '-91.60244'), ('Spring Grove', 1304, '43.56100', '-91.63950'), ('Willington Grove', 1304, '43.57965', '-91.58416'), ('Wilmington', 1304, '43.54858', '-91.54944')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNC057': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Akeley', 412, '47.00040', '-94.72760'), ('Badoura', 364, '46.86220', '-94.76580'), ('Becida', 69, '47.35420', '-95.08080'), ('Benedict', 145, '47.15810', '-94.69030'), ('Chamberlain', 412, '46.90530', '-94.72140'), ('Dorset', 364, '46.95640', '-94.95220'), ('Emmaville', 3276, '47.06560', '-94.98030'), ('Guthrie', 145, '47.30030', '-94.79080'), ('Hubbard', 3276, '46.83670', '-95.01000'), ('Kabekona', 145, '47.23470', '-94.87640'), ('Lake George', 145, '47.20060', '-94.99330'), ('Laporte', 145, '47.21430', '-94.75720'), ('Nary', 11917, '47.36690', '-94.82310'), ('Nevis', 364, '46.96530', '-94.83920'), ('Park Rapids', 3276, '46.91750', '-95.06010')], 'partOfState': 'north central', 'wfo': 'FGF'}, +'MNC059': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Braham', 1276, '45.72370', '-93.17340'), ('Cambridge', 5520, '45.56430', '-93.22690'), ('Isanti', 2324, '45.48990', '-93.25260'), ('Spencer Brook', 1616, '45.52200', '-93.44000'), ('Spring Lake', 1787, '45.54200', '-93.06500'), ('Weber', 883, '45.47500', '-93.12400')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC061': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alvwood', 230, '47.73060', '-94.26810'), ('Ball Club', 903, '47.32590', '-93.93620'), ('Bigfork', 469, '47.74840', '-93.65340'), ('Blackberry', 605, '47.18090', '-93.39060'), ('Bovey', 662, '47.29420', '-93.40230'), ('Bowstring', 903, '47.54300', '-93.79680'), ('Calumet', 383, '47.31920', '-93.26960'), ('Cohasset', 2481, '47.26370', '-93.62040'), ('Coleraine', 1110, '47.30630', '-93.42310'), ('Deer River', 903, '47.33600', '-93.79400'), ('Effie', 91, '47.84070', '-93.63780'), ('Goodland', 183, '47.16200', '-93.13590'), ('Grand Rapids', 7764, '47.22880', '-93.52450'), ('Gunn', 605, '47.21620', '-93.47540'), ('Inger', 99, '47.55420', '-93.98540'), ('Jessie Lake', 469, '47.60120', '-93.81730'), ('Keewatin', 1164, '47.40410', '-93.08550'), ('La Prairie', 605, '47.22730', '-93.49010'), ('Marble', 695, '47.32860', '-93.29340'), ('Marcell', 469, '47.59320', '-93.69090'), ('Max', 99, '47.61470', '-94.06810'), ('Nashwauk', 935, '47.38420', '-93.16770'), ('Orth', 230, '47.83920', '-94.31530'), ('Oslund', 99, '47.65580', '-94.03410'), ('Pengilly', 935, '47.33280', '-93.19730'), ('Rosy', 99, '47.65810', '-94.30620'), ('Spring Lake', 469, '47.64260', '-93.86800'), ('Squaw Lake', 99, '47.62690', '-94.14100'), ('Stony Brook', 4960, '47.73500', '-93.09860'), ('Swan River', 183, '47.08670', '-93.19510'), ('Taconite', 315, '47.32320', '-93.36020'), ('Talmoon', 469, '47.60010', '-93.77400'), ('Togo', 249, '47.82140', '-93.15590'), ('Warba', 183, '47.13580', '-93.27090'), ('Wawina', 183, '47.05320', '-93.11920'), ('Wirt', 99, '47.73060', '-93.96010'), ('Zemple', 75, '47.32340', '-93.78620')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNC063': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alpha', 126, '43.63920', '-94.87140'), ('Bergen', 167, '43.79120', '-94.99470'), ('Heron Lake', 768, '43.79530', '-95.32360'), ('Jackson', 3501, '43.62440', '-94.98900'), ('Kilen Woods State Park', 167, '43.72744', '-95.06432'), ('Lakefield', 1721, '43.67790', '-95.17110'), ('Okabena', 185, '43.73860', '-95.31580'), ('Wilder', 69, '43.82550', '-95.20630')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC065': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Grasston', 105, '45.79450', '-93.15390'), ('Mora', 3193, '45.87740', '-93.29330'), ('Ogilvie', 474, '45.83070', '-93.41990'), ('Quamba', 98, '45.91550', '-93.17470')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC067': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Atwater', 1079, '45.13550', '-94.77690'), ('Blomkest', 186, '44.94320', '-95.02240'), ('Kandiyohi', 555, '45.13110', '-94.93230'), ('Lake Lillian', 257, '44.94570', '-94.88050'), ('New London', 1066, '45.29930', '-94.94560'), ('Pennock', 504, '45.14630', '-95.17530'), ('Prinsburg', 458, '44.93560', '-95.18580'), ('Raymond', 803, '45.01600', '-95.23720'), ('Regal', 40, '45.40500', '-94.84020'), ('Spicer', 1126, '45.23260', '-94.93860'), ('Sunburg', 110, '45.34790', '-95.23940'), ('Willmar', 18351, '45.12460', '-95.04960')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC069': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Caribou', 246, '48.98250', '-96.44920'), ('Donaldson', 41, '48.57470', '-96.89730'), ('Hallock', 1196, '48.76640', '-96.94360'), ('Halma', 78, '48.66080', '-96.59760'), ('Humboldt', 61, '48.92150', '-97.09430'), ('Karlstad', 794, '48.57810', '-96.51560'), ('Kennedy', 255, '48.64350', '-96.91010'), ('Lake Bronson', 246, '48.73260', '-96.66260'), ('Lancaster', 363, '48.85790', '-96.80280'), ('Mattson', 1196, '48.68940', '-97.07330'), ('Northcote', 1196, '48.84530', '-97.00080'), ('Noyes', 117, '48.99750', '-97.20420'), ('Orleans', 363, '48.92610', '-96.93640'), ('Robbin', 961, '48.57280', '-97.14220'), ('St. Vincent', 117, '48.96780', '-97.22470')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC071': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Big Falls', 264, '48.18510', '-93.80820'), ('Birchdale', 1104, '48.62700', '-94.10210'), ('Craigville', 91, '47.90310', '-93.61310'), ('Ericksburg', 6703, '48.48780', '-93.33140'), ('Gemmell', 78, '47.97340', '-94.12390'), ('Grand Falls', 264, '48.19860', '-93.79290'), ('International Falls', 6703, '48.58760', '-93.40620'), ('Island View', 150, '48.60600', '-93.19070'), ('Littlefork', 680, '48.39650', '-93.55680'), ('Loman', 680, '48.51280', '-93.80310'), ('Manitou', 264, '48.62840', '-93.99320'), ('Margie', 264, '48.09540', '-93.94010'), ('Mizpah', 78, '47.92250', '-94.21540'), ('Northome', 230, '47.87460', '-94.26580'), ('Pelland', 680, '48.52280', '-93.57540'), ('Ranier', 188, '48.61320', '-93.34660'), ('Ray', 150, '48.41090', '-93.21030')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNC073': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bellingham', 205, '45.13560', '-96.28280'), ('Boyd', 210, '44.85100', '-95.90080'), ('Dawson', 1539, '44.92890', '-96.04900'), ('Louisburg', 26, '45.16620', '-96.17010'), ('Madison', 1768, '45.01380', '-96.18910'), ('Marietta', 174, '45.01030', '-96.41800'), ('Nassau', 83, '45.06800', '-96.44110')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNC075': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alger', 3613, '47.14720', '-91.69270'), ('Basswood Lake', 185, '48.07480', '-91.58220'), ('Beaver Bay', 175, '47.25690', '-91.29860'), ('Butterfly Lake', 185, '47.75840', '-91.47950'), ('Castle Danger', 3613, '47.12090', '-91.50340'), ('Clear Lake', 266, '47.64010', '-91.11940'), ('Finland', 2068, '47.41480', '-91.24910'), ('Forest Center', 2068, '47.79500', '-91.30780'), ('Isabella', 2068, '47.61730', '-91.35500'), ('Knife River', 3613, '46.95010', '-91.78340'), ('Larsmont', 3613, '46.97930', '-91.74580'), ('Little Marais', 2068, '47.41090', '-91.11030'), ('Murphy City', 2068, '47.50980', '-91.32470'), ('Sawbill Landing', 2068, '47.71530', '-91.26810'), ('Silver Bay', 2068, '47.29190', '-91.27860'), ('Silver Rapids', 185, '47.90400', '-91.75560'), ('Snow Bank Lake', 185, '47.99160', '-91.42130'), ('Two Harbors', 3613, '47.03030', '-91.67570'), ('Wales', 3613, '47.23500', '-91.74700'), ('Whyte', 2068, '47.45170', '-91.56230')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNC077': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Angle Inlet', 1722, '49.34530', '-95.06250'), ('Arnesen', 166, '48.95750', '-95.06720'), ('Baudette', 1104, '48.71120', '-94.58700'), ('Carp', 1104, '48.50530', '-94.64690'), ('Clementson', 1104, '48.69080', '-94.43610'), ('Faunce', 210, '48.59310', '-94.95220'), ('Flag Island', 210, '49.32470', '-94.88500'), ('Graceton', 210, '48.74110', '-94.83610'), ('Long Point', 210, '48.97720', '-94.95970'), ('Oak Island', 210, '49.31000', '-94.84970'), ('Oaks Corner', 210, '48.42440', '-94.94970'), ('Penasse', 166, '49.35670', '-94.95860'), ('Pitt', 1104, '48.71750', '-94.73580'), ('Williams', 210, '48.76850', '-94.95270')], 'partOfState': 'north central', 'wfo': 'FGF'}, +'MNC079': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cleveland', 673, '44.32380', '-93.83510'), ('Elysian', 486, '44.20000', '-93.67710'), ('Heidelberg', 72, '44.49340', '-93.62360'), ('Kasota', 680, '44.29020', '-93.96820'), ('Kilkenny', 148, '44.31320', '-93.57430'), ('Le Center', 2240, '44.38760', '-93.73290'), ('Le Sueur', 3922, '44.46320', '-93.90610'), ('Montgomery', 2794, '44.43920', '-93.58050'), ('Waterville', 1833, '44.22270', '-93.57430')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC081': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Arco', 100, '44.38350', '-96.18080'), ('Hendricks', 725, '44.50860', '-96.42630'), ('Ivanhoe', 679, '44.46410', '-96.25040'), ('Lake Benton', 703, '44.26260', '-96.29250'), ('Tyler', 1218, '44.27930', '-96.13510')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC083': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Balaton', 637, '44.23330', '-95.87110'), ('Camden State Park', 0, '44.35613', '-95.93173'), ('Cottonwood', 1148, '44.60990', '-95.67080'), ('Florence', 61, '44.23690', '-96.05150'), ('Garvin', 159, '44.21480', '-95.76090'), ('Ghent', 315, '44.51280', '-95.89240'), ('Lynd', 346, '44.38510', '-95.89560'), ('Marshall', 12735, '44.45070', '-95.78950'), ('Minneota', 1449, '44.56370', '-95.98200'), ('Russell', 371, '44.31890', '-95.94800'), ('Taunton', 207, '44.59310', '-96.06320'), ('Tracy', 2268, '44.23220', '-95.61951')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC085': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Biscay', 114, '44.82650', '-94.27410'), ('Brownton', 807, '44.73260', '-94.35120'), ('Glencoe', 5453, '44.76950', '-94.14950'), ('Hutchinson', 13080, '44.88880', '-94.37470'), ('Lester Prairie', 1377, '44.88370', '-94.03970'), ('Plato', 336, '44.77240', '-94.03900'), ('Silver Lake', 761, '44.90380', '-94.19750'), ('Stewart', 564, '44.72510', '-94.48790'), ('Winsted', 2094, '44.96580', '-94.04880')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC087': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Beaulieu', 1202, '47.33560', '-95.80420'), ('Bejou', 94, '47.44180', '-95.97200'), ('Island_lake', 79, '47.44860', '-95.65140'), ('Mahkonce', 583, '47.32440', '-95.61530'), ('Mahnomen', 1202, '47.31480', '-95.96910'), ('Naytahwaush', 583, '47.26280', '-95.62580'), ('Pine Bend', 79, '47.42640', '-95.59080'), ('Roy Lake', 583, '47.32530', '-95.55140'), ('Tulaby Lake', 583, '47.15250', '-95.60420'), ('Waubun', 403, '47.18410', '-95.93950')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC089': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alvarado', 371, '48.19260', '-96.99830'), ('Argyle', 656, '48.33740', '-96.81570'), ('Big Woods', 347, '48.31140', '-97.10780'), ('Englund', 794, '48.48580', '-96.62780'), ('Espelie', 228, '48.22360', '-95.68000'), ('Florian', 794, '48.44220', '-96.62780'), ('Gatzke', 228, '48.42440', '-95.78390'), ('Grygla', 228, '48.29970', '-95.61970'), ('Holt', 89, '48.29210', '-96.19390'), ('March', 371, '48.19500', '-96.89690'), ('Middle River', 319, '48.43560', '-96.16190'), ('Newfolden', 362, '48.35520', '-96.32970'), ('Old Mill State Par', 88, '48.36140', '-96.57060'), ('Oslo', 347, '48.19490', '-97.12790'), ('Radium', 1678, '48.22940', '-96.61330'), ('Rosewood', 92, '48.18940', '-96.29000'), ('Stephen', 708, '48.45150', '-96.87720'), ('Strandquist', 88, '48.49000', '-96.44810'), ('Viking', 92, '48.21790', '-96.40640'), ('Warren', 1678, '48.19610', '-96.76980')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC091': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ceylon', 413, '43.53190', '-94.63200'), ('Dunnell', 197, '43.56050', '-94.77370'), ('Fairmont', 10889, '43.64240', '-94.45780'), ('Granada', 317, '43.69360', '-94.34930'), ('Imogene', 266, '43.66000', '-94.34500'), ('Northrop', 262, '43.73560', '-94.43560'), ('Sherburn', 1082, '43.65380', '-94.72650'), ('Trimont', 754, '43.76140', '-94.71540'), ('Truman', 1259, '43.82800', '-94.43620'), ('Welcome', 721, '43.66840', '-94.61850')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC093': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cedar Mills', 53, '44.94720', '-94.51730'), ('Cosmos', 582, '44.93590', '-94.69740'), ('Darwin', 276, '45.09700', '-94.40410'), ('Dassel', 1233, '45.08180', '-94.30740'), ('Eden Valley', 866, '45.32570', '-94.54570'), ('Forest City', 697, '45.20600', '-94.46600'), ('Grove City', 608, '45.15190', '-94.68140'), ('Kingston', 120, '45.19670', '-94.30970'), ('Litchfield', 6562, '45.11950', '-94.52710'), ('Watkins', 880, '45.31480', '-94.40790')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC095': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bock', 106, '45.78500', '-93.55320'), ('Foreston', 389, '45.73320', '-93.70940'), ('Isle', 707, '46.14220', '-93.46040'), ('Milaca', 2580, '45.75790', '-93.65290'), ('Onamia', 847, '46.06930', '-93.66520'), ('Pease', 163, '45.69810', '-93.65060'), ('Princeton', 3933, '45.57060', '-93.59080'), ('Vineland', 607, '46.18270', '-93.77360'), ('Wahkon', 314, '46.11860', '-93.52370')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC097': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bowlus', 260, '45.82010', '-94.40750'), ('Buckman', 208, '45.89800', '-94.09230'), ('Camp Ripley Junction', 742, '46.07000', '-94.32800'), ('Elmdale', 107, '45.83730', '-94.49020'), ('Flensburg', 244, '45.94770', '-94.53010'), ('Genola', 71, '45.96880', '-94.11100'), ('Harding', 105, '46.12080', '-94.04380'), ('Hillman', 29, '46.00900', '-93.88820'), ('Lastrup', 99, '46.03980', '-94.06130'), ('Little Falls', 7719, '45.97790', '-94.36110'), ('Little Rock', 1055, '45.83200', '-94.09200'), ('Motley', 585, '46.33570', '-94.64320'), ('Pierz', 1277, '45.97850', '-94.10030'), ('Randall', 535, '46.08940', '-94.49970'), ('Royalton', 816, '45.83180', '-94.28940'), ('Sobieski', 196, '45.92430', '-94.48210'), ('Swanville', 351, '45.91620', '-94.63960'), ('Upsala', 424, '45.80810', '-94.56900')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC099': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Adams', 800, '43.56500', '-92.71850'), ('Austin', 23314, '43.67150', '-92.97060'), ('Brownsdale', 718, '43.74030', '-92.86740'), ('Dexter', 333, '43.71810', '-92.70250'), ('Elkton', 149, '43.65980', '-92.70870'), ('Grand Meadow', 945, '43.70520', '-92.57180'), ('Hamilton', 355, '43.76423', '-92.45043'), ('Johnsburg', 481, '43.50837', '-92.77573'), ('Lansing', 189, '43.74961', '-92.96762'), ('Le Roy', 925, '43.51360', '-92.50780'), ('Lyle', 566, '43.50540', '-92.94200'), ('Mapleview', 189, '43.68900', '-92.97490'), ('Mayville', 718, '43.76423', '-92.91645'), ('Racine', 355, '43.77650', '-92.48200'), ('Ramsey', 18510, '43.71671', '-92.98590'), ('Renova', 76, '43.73134', '-92.78304'), ('Rose Creek', 354, '43.60460', '-92.82960'), ('Sargeant', 76, '43.80560', '-92.80090'), ('Taopi', 93, '43.55840', '-92.64040'), ('Varco', 23314, '43.61437', '-92.98407'), ('Waltham', 196, '43.82070', '-92.87520')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNC101': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Avoca', 146, '43.94950', '-95.64530'), ('Chandler', 276, '43.92940', '-95.94910'), ('Current Lake', 637, '44.13800', '-95.94140'), ('Currie', 225, '44.07100', '-95.66660'), ('Dovray', 67, '44.05480', '-95.54610'), ('Fulda', 1283, '43.87000', '-95.60230'), ('Hadley', 81, '43.99740', '-95.85810'), ('Iona', 173, '43.91490', '-95.78500'), ('Lake Shetek State Park', 0, '44.10079', '-95.68709'), ('Lake Wilson', 270, '43.99480', '-95.95300'), ('Slayton', 2072, '43.99050', '-95.75490')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC103': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Courtland', 538, '44.26650', '-94.34400'), ('Lafayette', 529, '44.44830', '-94.39330'), ('New Sweden', 327, '44.40700', '-94.18900'), ('Nicollet', 889, '44.27560', '-94.18810'), ('North Mankato', 11798, '44.17620', '-94.03090'), ('Oshawa', 464, '44.30000', '-94.10500'), ('St Peter', 9747, '44.32900', '-93.96390')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC105': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Adrian', 1234, '43.63460', '-95.93240'), ('Bigelow', 231, '43.50540', '-95.68910'), ('Brewster', 502, '43.69620', '-95.46480'), ('Dundee', 102, '43.84430', '-95.46610'), ('Ellsworth', 540, '43.52110', '-96.01850'), ('Kinbrae', 21, '43.82630', '-95.48020'), ('Lismore', 238, '43.74940', '-95.94820'), ('Round Lake', 424, '43.53880', '-95.46930'), ('Rushmore', 376, '43.62010', '-95.79880'), ('Wilmont', 332, '43.76400', '-95.82830'), ('Worthington', 11283, '43.62720', '-95.59840')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC107': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ada', 1657, '47.29950', '-96.51390'), ('Borup', 91, '47.18080', '-96.50580'), ('Faith', 1202, '47.28690', '-96.09860'), ('Flaming', 893, '47.45670', '-96.27030'), ('Flom', 532, '47.16610', '-96.13060'), ('Gary', 215, '47.37280', '-96.26510'), ('Hadler', 1657, '47.36860', '-96.53500'), ('Halstad', 622, '47.35120', '-96.82400'), ('Hendrum', 315, '47.26380', '-96.81020'), ('Lockhart', 101, '47.44000', '-96.55080'), ('Perley', 121, '47.17660', '-96.80050'), ('Ranum', 215, '47.45560', '-96.13140'), ('Rindal', 205, '47.49940', '-96.13110'), ('Shelly', 266, '47.45750', '-96.82000'), ('Syre', 865, '47.18030', '-96.25830'), ('Twin Valley', 865, '47.25780', '-96.25840'), ('Waukon', 215, '47.36890', '-96.13080')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC109': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Byron', 3500, '44.03340', '-92.64610'), ('Chester', 1644, '43.99816', '-92.35174'), ('Cummingsville', 2394, '43.88302', '-92.26584'), ('Douglas', 883, '44.11695', '-92.56739'), ('Dover', 438, '43.96990', '-92.13370'), ('Eyota', 1644, '43.98760', '-92.22820'), ('Genoa', 3500, '44.11512', '-92.61673'), ('High Forest', 5411, '43.84647', '-92.55094'), ('Little Valley', 3190, '44.08223', '-92.13426'), ('Marion', 1644, '43.94881', '-92.35174'), ('Oronoco', 883, '44.16350', '-92.54090'), ('Pleasant Grove', 5411, '43.86292', '-92.38463'), ('Potsdam', 198, '44.16447', '-92.34991'), ('Predmore', 1644, '43.93419', '-92.33529'), ('Ringe', 198, '44.11512', '-92.39925'), ('Rochester', 85806, '44.01360', '-92.47570'), ('Rock Dell', 3500, '43.91226', '-92.65146'), ('Salem Corners', 3500, '43.98354', '-92.60028'), ('Simpson', 85806, '43.93237', '-92.40108'), ('Stewartville', 5411, '43.85730', '-92.48700'), ('Viola', 826, '44.06578', '-92.26584')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNC111': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Almora', 991, '46.24640', '-95.36530'), ('Amor', 686, '46.41250', '-95.74500'), ('Battle Lake', 686, '46.28880', '-95.71510'), ('Big Mcdonald Lake', 192, '46.58000', '-95.76690'), ('Bluffton', 210, '46.46930', '-95.23350'), ('Butler', 31, '46.68810', '-95.35280'), ('Carlisle', 172, '46.36830', '-96.18940'), ('Clitherall', 118, '46.27430', '-95.62970'), ('Dalton', 258, '46.17340', '-95.91630'), ('Deer Creek', 328, '46.39130', '-95.32200'), ('Dent', 192, '46.55210', '-95.71720'), ('Dunvilla', 2374, '46.66310', '-96.01580'), ('Edwards', 150, '46.44890', '-95.98860'), ('Elizabeth', 172, '46.37930', '-96.13040'), ('Erhard', 150, '46.48400', '-96.09710'), ('Fergus Falls', 13471, '46.28210', '-96.06770'), ('Henning', 719, '46.32240', '-95.44290'), ('Hillview', 31, '46.68030', '-95.25750'), ('Lake Lida', 2374, '46.58220', '-95.97060'), ('Maplewood State Park', 2374, '46.53360', '-95.94920'), ('New York Mills', 1158, '46.51970', '-95.37420'), ('Ottertail', 451, '46.42850', '-95.55870'), ('Ottertail Lake', 451, '46.39810', '-95.66280'), ('Parkers Prairie', 991, '46.15380', '-95.32930'), ('Pelican Rapids', 2374, '46.57080', '-96.08560'), ('Perham', 2559, '46.59960', '-95.57340'), ('Phelps', 319, '46.38030', '-95.82030'), ('Richville', 124, '46.50670', '-95.62610'), ('Star Lake', 192, '46.52920', '-95.80560'), ('Underwood', 319, '46.28520', '-95.87000'), ('Urbank', 59, '46.12560', '-95.51060'), ('Vergas', 311, '46.65530', '-95.80380'), ('Vining', 68, '46.26320', '-95.53380'), ('Western', 177, '46.15190', '-96.18280'), ('Wrightstown', 267, '46.27390', '-95.18580')], 'partOfState': 'west central', 'wfo': 'FGF'}, +'MNC113': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Carpenters Corner', 92, '48.15810', '-96.43720'), ('Dakota Junction', 8410, '48.15890', '-96.19420'), ('Goodridge', 98, '48.14470', '-95.80400'), ('Hazel', 272, '48.02000', '-96.11500'), ('High Landing', 98, '48.04940', '-95.80830'), ('Mavie', 98, '48.14470', '-95.93860'), ('St. Hilaire', 272, '48.01320', '-96.21380'), ('Thief River Falls', 8410, '48.11350', '-96.17540')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC115': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Askov', 368, '46.18870', '-92.78150'), ('Belden', 71, '46.32230', '-92.31340'), ('Beroun', 3043, '45.91030', '-92.95530'), ('Brook Park', 156, '45.94890', '-93.07310'), ('Bruno', 102, '46.28050', '-92.66750'), ('Cloverdale', 1549, '46.01240', '-92.74040'), ('Cloverton', 623, '46.16810', '-92.31970'), ('Denham', 40, '46.36230', '-92.94360'), ('Duquette', 71, '46.37040', '-92.55360'), ('Duxbury', 102, '46.12780', '-92.50890'), ('Finlayson', 314, '46.20500', '-92.92760'), ('Friesland', 1291, '46.08630', '-92.92950'), ('Greely', 105, '45.74540', '-93.06860'), ('Harlis', 308, '46.41220', '-92.31280'), ('Henriette', 101, '45.87130', '-93.12000'), ('Hinckley', 1291, '46.01450', '-92.93840'), ('Kerrick', 71, '46.33970', '-92.58560'), ('Kingsdale', 71, '46.23840', '-92.31170'), ('Markville', 623, '46.09200', '-92.33080'), ('Nickerson', 71, '46.41130', '-92.49930'), ('Pine City', 3043, '45.83090', '-92.96990'), ('Rock Creek', 1119, '45.75930', '-92.96600'), ('Rutledge', 196, '46.26000', '-92.86920'), ('Sandstone', 1549, '46.12520', '-92.86460'), ('Sturgeon Lake', 347, '46.38330', '-92.82710'), ('West Rock', 3043, '45.76720', '-93.02180'), ('Willow River', 309, '46.32000', '-92.83670')], 'partOfState': 'east central', 'wfo': 'DLH'}, +'MNC117': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Edgerton', 1033, '43.87420', '-96.13060'), ('Hatfield', 47, '43.95160', '-96.18910'), ('Holland', 215, '44.09090', '-96.19170'), ('Ihlen', 107, '43.91000', '-96.37190'), ('Jasper', 597, '43.84960', '-96.39950'), ('Pipestone', 4280, '44.00000', '-96.31410'), ('Pipestone National Monument', 0, '44.04758', '-96.32524'), ('Ruthton', 284, '44.17780', '-96.10390'), ('Trosky', 116, '43.88840', '-96.25570'), ('Woodstock', 132, '44.01040', '-96.09650')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC119': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Angus', 1678, '48.08110', '-96.70280'), ('Beltrami', 101, '47.54320', '-96.52800'), ('Bygland', 435, '47.81170', '-96.93190'), ('Climax', 243, '47.60680', '-96.81230'), ('Crookston', 8192, '47.77420', '-96.60560'), ('Davidson', 435, '47.87670', '-96.84690'), ('Dugdale', 150, '47.70170', '-96.26610'), ('East Grand Forks', 7501, '47.93000', '-97.01590'), ('Eldred', 243, '47.68280', '-96.78000'), ('Erskine', 437, '47.66360', '-96.01370'), ('Euclid', 8192, '47.97190', '-96.63860'), ('Fertile', 893, '47.53210', '-96.29130'), ('Fisher', 435, '47.79930', '-96.79960'), ('Fosston', 1575, '47.58090', '-95.74770'), ('Gentilly', 8192, '47.78920', '-96.44890'), ('Greenview', 101, '47.62580', '-96.56030'), ('Gully', 106, '47.76900', '-95.62350'), ('Harold', 8192, '47.70220', '-96.49720'), ('Key West', 435, '47.93470', '-96.78310'), ('Lengby', 79, '47.51490', '-95.63350'), ('Mallory', 7501, '47.87670', '-96.91140'), ('Maple Bay', 150, '47.63580', '-96.22470'), ('McIntosh', 638, '47.63750', '-95.88520'), ('Melvin', 893, '47.62080', '-96.38890'), ('Mentor', 150, '47.69660', '-96.14470'), ('Nielsville', 91, '47.52880', '-96.81630'), ('Olga', 106, '47.68720', '-95.66330'), ('Sherack', 1678, '48.02080', '-96.78140'), ('Tabor', 1678, '48.07920', '-96.86250'), ('Trail', 62, '47.78370', '-95.69910'), ('Winger', 205, '47.53700', '-95.98510')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC121': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cyrus', 303, '45.61510', '-95.73700'), ('Farwell', 57, '45.75190', '-95.61810'), ('Glenwood', 2594, '45.65330', '-95.38280'), ('Long Beach', 271, '45.64810', '-95.42980'), ('Lowry', 271, '45.70550', '-95.51720'), ('Sedan', 65, '45.57700', '-95.24550'), ('Starbuck', 1314, '45.61210', '-95.53300'), ('Villard', 244, '45.71350', '-95.26960'), ('Westport', 72, '45.71460', '-95.16730')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNC123': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Arden Hills', 9652, '45.07140', '-93.16540'), ('Falcon Heights', 5572, '44.98790', '-93.17940'), ('Little Canada', 9771, '45.02370', '-93.08390'), ('Maplewood', 34947, '44.99290', '-93.02370'), ('Mounds View', 12738, '45.10600', '-93.20610'), ('New Brighton', 22206, '45.06560', '-93.20430'), ('North Oaks', 3883, '45.10680', '-93.08720'), ('North St Paul', 11929, '45.01410', '-92.99830'), ('Roseville', 33690, '45.01520', '-93.15250'), ('Shoreview', 25924, '45.08390', '-93.13590'), ('St Paul', 287151, '44.94770', '-93.10370'), ('Vadnais Heights', 13069, '45.05640', '-93.07300'), ('White Bear Lake', 24325, '45.06770', '-93.01270')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC125': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Brooks', 141, '47.81710', '-96.00110'), ('Delorme', 1590, '47.76470', '-96.28890'), ('Dorothy', 1590, '47.92780', '-96.44640'), ('Huot', 1590, '47.86530', '-96.42310'), ('Oklee', 396, '47.83880', '-95.85010'), ('Perault', 1590, '47.81250', '-96.28970'), ('Plummer', 270, '47.91570', '-96.03940'), ('Red Lake Falls', 1590, '47.88520', '-96.27390'), ('Roland', 396, '47.94420', '-95.77860'), ('Terrebonne', 270, '47.83250', '-96.13310'), ('Wylie', 1590, '47.96190', '-96.35280')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC127': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Belview', 412, '44.60590', '-95.32880'), ('Clements', 191, '44.37990', '-95.05480'), ('Delhi', 69, '44.59820', '-95.21300'), ('Lamberton', 859, '44.22970', '-95.26410'), ('Lucan', 226, '44.40930', '-95.41270'), ('Milroy', 271, '44.41740', '-95.55400'), ('Morgan', 903, '44.41570', '-94.92460'), ('North Redwood', 204, '44.56360', '-95.09350'), ('Redwood Falls', 5459, '44.54160', '-95.11370'), ('Revere', 100, '44.21890', '-95.36330'), ('Sanborn', 434, '44.21020', '-95.12900'), ('Seaforth', 77, '44.47690', '-95.32930'), ('Vesta', 339, '44.50650', '-95.41370'), ('Wabasso', 643, '44.40260', '-95.25500'), ('Walnut Grove', 599, '44.22560', '-95.46860'), ('Wanda', 103, '44.31600', '-95.21210')], 'partOfState': 'southwest', 'wfo': 'MPX'}, +'MNC129': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bird Island', 1195, '44.76480', '-94.89400'), ('Buffalo Lake', 768, '44.73670', '-94.61770'), ('Danube', 529, '44.79130', '-95.10250'), ('Fairfax', 1295, '44.52820', '-94.72290'), ('Franklin', 498, '44.53090', '-94.88610'), ('Hector', 1166, '44.74140', '-94.71270'), ('Morton', 442, '44.55300', '-94.98490'), ('Olivia', 2570, '44.77580', '-94.99710'), ('Renville', 1323, '44.79420', '-95.21110'), ('Sacred Heart', 549, '44.78310', '-95.35030')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC131': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Dundas', 547, '44.42970', '-93.20490'), ('Faribault', 20818, '44.29740', '-93.27490'), ('Lonsdale', 1491, '44.47760', '-93.42780'), ('Morristown', 981, '44.22470', '-93.44480'), ('Nerstrand', 233, '44.34080', '-93.06250'), ('Northfield', 17147, '44.45440', '-93.16530'), ('Veseli', 1393, '44.51500', '-93.45900')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC133': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Beaver Creek', 250, '43.61260', '-96.36180'), ('Blue Mounds State Park', 0, '43.70318', '-96.18909'), ('Hardwick', 222, '43.77520', '-96.19670'), ('Hills', 565, '43.52650', '-96.36080'), ('Kenneth', 61, '43.75330', '-96.07180'), ('Luverne', 4617, '43.65480', '-96.20990'), ('Magnolia', 221, '43.64490', '-96.07450'), ('Steen', 182, '43.51320', '-96.26220')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNC135': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Badger', 470, '48.77610', '-96.02070'), ('Casperson', 2756, '48.57610', '-95.68690'), ('Fox', 2756, '48.83890', '-95.89860'), ('Greenbush', 784, '48.69820', '-96.18390'), ('Haug', 784, '48.81970', '-96.18420'), ('Hayes Lake State Park', 2756, '48.62360', '-95.50780'), ('Leo', 784, '48.76080', '-96.25030'), ('Malung', 2756, '48.77250', '-95.72390'), ('Pencer', 2756, '48.69920', '-95.63750'), ('Pinecreek', 470, '48.97830', '-95.94250'), ('Roosevelt', 166, '48.80360', '-95.09670'), ('Roseau', 2756, '48.84580', '-95.76190'), ('Ross', 470, '48.90610', '-95.92000'), ('Salol', 2756, '48.86610', '-95.57060'), ('Skime', 228, '48.54690', '-95.60250'), ('Strathcona', 29, '48.55220', '-96.16780'), ('Swift', 1722, '48.85330', '-95.22110'), ('Torfin', 2756, '48.59780', '-95.73330'), ('Wannaska', 2756, '48.65830', '-95.73440'), ('Warroad', 1722, '48.90850', '-95.32070')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNC137': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alborn', 98, '46.97310', '-92.57620'), ('Angora', 622, '47.77510', '-92.63420'), ('Arnold', 3032, '46.87510', '-92.10780'), ('Ash Lake', 249, '48.21900', '-92.91610'), ('Aurora', 1850, '47.53200', '-92.24000'), ('Babbitt', 1670, '47.64510', '-91.94010'), ('Biwabik', 954, '47.53420', '-92.35000'), ('Brimson', 3613, '47.27670', '-91.86710'), ('Brookston', 98, '46.86600', '-92.60320'), ('Buhl', 983, '47.49850', '-92.76690'), ('Burnett', 98, '46.90090', '-92.52440'), ('Buyck', 249, '48.14280', '-92.52060'), ('Canyon', 98, '47.04000', '-92.47080'), ('Celina', 249, '47.86580', '-93.06200'), ('Cherry', 111, '47.00080', '-92.70670'), ('Chisholm', 4960, '47.48750', '-92.87920'), ('Cook', 622, '47.85310', '-92.68810'), ('Cotton', 111, '47.16980', '-92.47100'), ('Crane Lake', 249, '48.26670', '-92.48870'), ('Culver', 98, '46.92590', '-92.55860'), ('Cusson', 249, '48.10190', '-92.84310'), ('Duluth', 86918, '46.78100', '-92.11800'), ('Elmer', 111, '47.10360', '-92.77720'), ('Ely', 3724, '47.90570', '-91.85060'), ('Embarrass', 2082, '47.65930', '-92.19810'), ('Eveleth', 3865, '47.46370', '-92.54290'), ('Fairbanks', 2082, '47.37060', '-91.92670'), ('Floodwood', 503, '46.92690', '-92.91550'), ('Fond Du Lac', 2852, '46.67180', '-92.27330'), ('Franklin', 498, '47.53780', '-92.51930'), ('Fredenberg', 3032, '46.97370', '-92.21730'), ('French River', 3032, '46.89810', '-91.89720'), ('Gary New Duluth', 86918, '46.67870', '-92.20680'), ('Gheen', 249, '47.96810', '-92.80830'), ('Gilbert', 1847, '47.49190', '-92.46050'), ('Gowan', 503, '46.86420', '-92.84730'), ('Greaney', 249, '47.96730', '-93.02110'), ('Hermantown', 7448, '46.80620', '-92.24380'), ('Hibbing', 17071, '47.40000', '-92.94810'), ('Hoyt Lakes', 2082, '47.51220', '-92.15470'), ('Idington', 622, '47.73340', '-92.65200'), ('Independence', 98, '46.96080', '-92.46170'), ('Iron Junction', 93, '47.41640', '-92.60670'), ('Island', 503, '46.98620', '-93.01370'), ('Island Lake', 3032, '47.01490', '-92.19380'), ('Kabetogama', 150, '48.43790', '-93.02750'), ('Kelly Lake', 17071, '47.41760', '-93.00670'), ('Kelsey', 111, '47.15390', '-92.59920'), ('Kinney', 199, '47.52230', '-92.72530'), ('Leetonia', 17071, '47.42920', '-92.98540'), ('Leonidas', 60, '47.46730', '-92.56790'), ('Linden Grove', 622, '47.86320', '-92.87060'), ('Little Swan', 17071, '47.29720', '-92.83110'), ('Makinen', 80, '47.35730', '-92.36780'), ('Markham', 1850, '47.29930', '-92.21870'), ('McKinley', 80, '47.51450', '-92.40750'), ('Meadow Brook', 249, '47.86280', '-92.95480'), ('Meadowlands', 111, '47.07280', '-92.73140'), ('Melrude', 1847, '47.24560', '-92.41720'), ('Mesaba', 2082, '47.56900', '-92.13200'), ('Mountain Iron', 2999, '47.52640', '-92.62690'), ('Munger', 7448, '46.80190', '-92.34390'), ('Nett Lake', 249, '48.11120', '-93.07990'), ('Orr', 249, '48.06400', '-92.82040'), ('Palmers', 3613, '46.92480', '-91.85080'), ('Payne', 111, '47.09620', '-92.59950'), ('Proctor', 2852, '46.74310', '-92.22740'), ('Prosit', 98, '46.99810', '-92.61780'), ('Ridge', 1670, '47.62260', '-92.03620'), ('Robinson', 3724, '47.85950', '-92.04200'), ('Saginaw', 11201, '46.85930', '-92.44450'), ('Shaw', 7448, '47.11370', '-92.35310'), ('Shermans Corner', 622, '47.77920', '-92.65640'), ('Side Lake', 4960, '47.66530', '-93.01600'), ('Silica', 1164, '47.26560', '-93.02110'), ('Skibo', 2082, '47.48560', '-91.99440'), ('Snake Trail', 4960, '47.71360', '-93.04660'), ('Soudan', 479, '47.81590', '-92.23780'), ('Taft', 7448, '46.99450', '-92.33280'), ('Toivola', 111, '47.16700', '-92.81120'), ('Tower', 479, '47.81010', '-92.29050'), ('Twig', 7448, '46.89460', '-92.36480'), ('Virginia', 9157, '47.51580', '-92.50710'), ('Wahlsten', 479, '47.73580', '-92.28360'), ('West Duluth', 2852, '46.73560', '-92.18640'), ('Winton', 185, '47.92900', '-91.80140'), ('Zim', 93, '47.30700', '-92.60340')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNC139': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Belle Plaine', 3789, '44.62360', '-93.76420'), ('Credit River', 4449, '44.67700', '-93.36800'), ('Elko', 472, '44.56530', '-93.32450'), ('Jordan', 3833, '44.66850', '-93.63220'), ('New Market', 332, '44.57210', '-93.34970'), ('New Prague', 4559, '44.54660', '-93.57400'), ('Prior Lake', 15917, '44.72850', '-93.43400'), ('Savage', 21115, '44.75540', '-93.35720'), ('Shakopee', 20568, '44.77060', '-93.47560')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC141': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Becker', 2673, '45.37130', '-93.87340'), ('Big Lake', 6063, '45.33660', '-93.74660'), ('Clear Lake', 266, '45.44610', '-93.99800'), ('Elk River', 16447, '45.33260', '-93.56580'), ('Orrock', 3367, '45.44400', '-93.73600'), ('Santiago', 2080, '45.53900', '-93.81900'), ('Zimmerman', 2851, '45.44400', '-93.59240')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC143': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Arlington', 2048, '44.60710', '-94.07790'), ('Gaylord', 2279, '44.55450', '-94.21820'), ('Gibbon', 808, '44.53510', '-94.52300'), ('Green Isle', 334, '44.67810', '-94.00620'), ('Henderson', 910, '44.53030', '-93.90790'), ('New Auburn', 488, '44.67280', '-94.22890'), ('Winthrop', 1367, '44.54370', '-94.36460')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC145': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Albany', 1796, '45.63090', '-94.56870'), ('Avon', 1242, '45.60880', '-94.45150'), ('Belgrade', 750, '45.45000', '-94.99900'), ('Brooten', 649, '45.50030', '-95.11900'), ('Cold Spring', 2975, '45.45750', '-94.43150'), ('Elrosa', 166, '45.56250', '-94.94760'), ('Freeport', 454, '45.66300', '-94.68720'), ('Greenwald', 201, '45.60220', '-94.85900'), ('Holdingford', 736, '45.73080', '-94.47120'), ('Kimball', 635, '45.31330', '-94.30080'), ('Lake Henry', 90, '45.45780', '-94.79720'), ('Meire Grove', 149, '45.62710', '-94.86890'), ('Melrose', 3091, '45.67540', '-94.81210'), ('New Munich', 352, '45.63060', '-94.75280'), ('Paynesville', 2267, '45.37850', '-94.71970'), ('Pleasant Lake', 504, '45.49900', '-94.28500'), ('Richmond', 1213, '45.45260', '-94.51770'), ('Rockville', 749, '45.47240', '-94.33960'), ('Roscoe', 116, '45.43240', '-94.63520'), ('Sartell', 9641, '45.62050', '-94.20630'), ('Sauk Centre', 3930, '45.73780', '-94.95730'), ('Spring Hill', 55, '45.52340', '-94.83440'), ('St Cloud', 59107, '45.55400', '-94.17040'), ('St Joseph', 4681, '45.56650', '-94.31710'), ('St Martin', 278, '45.50410', '-94.66270'), ('St Rosa', 44, '45.73130', '-94.71500'), ('St Stephen', 860, '45.70210', '-94.27650'), ('St Wendel', 2221, '45.66600', '-94.36600'), ('Waite Park', 6568, '45.55250', '-94.22360')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC147': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Blooming Prairie', 1933, '43.86850', '-93.05450'), ('Ellendale', 590, '43.87360', '-93.30120'), ('Lemond', 525, '43.98200', '-93.37900'), ('Medford', 984, '44.17170', '-93.24450'), ('Owatonna', 22434, '44.08520', '-93.22430')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC149': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alberta', 142, '45.57480', '-96.05030'), ('Chokio', 443, '45.57370', '-96.17410'), ('Donnelly', 254, '45.69000', '-96.01410'), ('Hancock', 717, '45.49830', '-95.79390'), ('Morris', 5068, '45.58590', '-95.90530')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNC151': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Appleton', 2871, '45.20140', '-96.02290'), ('Benson', 3376, '45.31710', '-95.60710'), ('Clontarf', 173, '45.37630', '-95.67720'), ('Danvers', 108, '45.28260', '-95.75270'), ('De Graff', 133, '45.25920', '-95.46890'), ('Holloway', 112, '45.24760', '-95.91050'), ('Kerkhoven', 759, '45.19290', '-95.32000'), ('Murdock', 303, '45.22370', '-95.39410')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNC153': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bertha', 470, '46.26600', '-95.06310'), ('Browerville', 735, '46.08570', '-94.86810'), ('Burtrum', 146, '45.86590', '-94.68720'), ('Clarissa', 609, '46.12920', '-94.94940'), ('Eagle Bend', 595, '46.16500', '-95.03400'), ('Grey Eagle', 335, '45.82500', '-94.74860'), ('Hewitt', 267, '46.32290', '-95.08790'), ('Long Prairie', 3040, '45.97960', '-94.86300'), ('Round Prairie', 709, '45.90500', '-94.88500'), ('Staples', 3104, '46.36400', '-94.80340'), ('West Union', 87, '45.80140', '-95.08330')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC155': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Browns Valley', 690, '45.59480', '-96.83280'), ('Charlesville', 79, '45.94920', '-96.26860'), ('Collis', 126, '45.64620', '-96.42480'), ('Dumont', 122, '45.71680', '-96.42190'), ('Tintah', 79, '46.01100', '-96.32010'), ('Wheaton', 1619, '45.80580', '-96.49720')], 'partOfState': 'west central', 'wfo': 'ABR'}, +'MNC157': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bear Valley', 177, '44.31433', '-92.45043'), ('Conception', 439, '44.26498', '-92.10136'), ('Dumfries', 2599, '44.34905', '-92.11781'), ('Elgin', 826, '44.13090', '-92.25390'), ('Hammond', 198, '44.22170', '-92.37370'), ('Jarrett', 198, '44.23391', '-92.33529'), ('Kellogg', 439, '44.30700', '-91.99880'), ('Lake City', 4950, '44.44650', '-92.27810'), ('Maple Springs', 873, '44.41484', '-92.16715'), ('Mazeppa', 778, '44.27360', '-92.54080'), ('Millville', 186, '44.24510', '-92.29620'), ('Minneiska', 116, '44.19480', '-91.87150'), ('Oak Center', 177, '44.34905', '-92.39925'), ('Plainview', 3190, '44.16560', '-92.16890'), ('Theilman', 186, '44.29788', '-92.20005'), ('Wabasha', 2599, '44.37150', '-92.04510'), ('West Albany', 186, '44.29788', '-92.28595'), ('Zumbro Falls', 177, '44.28690', '-92.42630')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNC159': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Aldrich', 53, '46.37470', '-94.93940'), ('Blue Grass', 710, '46.54280', '-95.00970'), ('Huntersville', 75, '46.77580', '-94.89250'), ('Menahga', 1220, '46.74880', '-95.10210'), ('Nimrod', 75, '46.63780', '-94.88100'), ('Oylen', 75, '46.57470', '-94.79830'), ('Sebeka', 710, '46.62910', '-95.08820'), ('Staples Airport', 3104, '46.38080', '-94.80670'), ('Verndale', 575, '46.39730', '-95.01150'), ('Wadena', 4294, '46.43990', '-95.13480')], 'partOfState': 'central', 'wfo': 'FGF'}, +'MNC161': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Janesville', 2109, '44.11670', '-93.70780'), ('New Richland', 1197, '43.89340', '-93.49300'), ('Smiths Mill', 517, '44.13700', '-93.76600'), ('Waldorf', 242, '43.93260', '-93.69670'), ('Waseca', 8493, '44.08110', '-93.50190')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC163': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Afton', 2839, '44.90320', '-92.81880'), ('Bayport', 3162, '45.01780', '-92.78020'), ('Cottage Grove', 30582, '44.81750', '-92.92700'), ('Forest Lake', 6798, '45.27580', '-92.98580'), ('Hugo', 6363, '45.15910', '-92.96300'), ('Lake Elmo', 6863, '44.99540', '-92.90770'), ('Lakeland', 1917, '44.95050', '-92.77060'), ('Lake St Croix Beach', 1101, '44.92200', '-92.76600'), ('Mahtomedi', 7563, '45.05610', '-92.96080'), ('Marine On St Croix', 602, '45.19800', '-92.77320'), ('Newport', 3715, '44.87450', '-92.99860'), ('Oakdale', 26653, '44.98870', '-92.96630'), ('Scandia', 3846, '45.25300', '-92.80500'), ('Stillwater', 15143, '45.05650', '-92.82220'), ('St Paul Park', 5070, '44.83940', '-92.99500'), ('Woodbury', 46463, '44.91900', '-92.93300')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNC165': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Butterfield', 564, '43.95820', '-94.79300'), ('Darfur', 137, '44.05360', '-94.83730'), ('La Salle', 90, '44.07210', '-94.57000'), ('Lewisville', 274, '43.92400', '-94.43510'), ('Madelia', 2340, '44.04930', '-94.41710'), ('Odin', 125, '43.86760', '-94.74170'), ('Ormsby', 154, '43.85100', '-94.69860'), ('St James', 4695, '43.98480', '-94.62530'), ('Sveadahl', 292, '44.07400', '-94.73900')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNC167': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Breckenridge', 3559, '46.26360', '-96.58780'), ('Brushvale', 120, '46.36940', '-96.64310'), ('Campbell', 241, '46.09790', '-96.40540'), ('Doran', 59, '46.18520', '-96.48560'), ('Everdell', 143, '46.26750', '-96.40780'), ('Foxhome', 143, '46.27670', '-96.31020'), ('Kent', 120, '46.43960', '-96.68440'), ('Lawndale', 2173, '46.55690', '-96.36000'), ('McCauleyville', 252, '46.44170', '-96.70750'), ('Nashua', 69, '46.03600', '-96.30470'), ('Rothsay', 497, '46.47470', '-96.28670'), ('Tenney', 6, '46.04430', '-96.45400'), ('Wolverton', 122, '46.56470', '-96.73550')], 'partOfState': 'west central', 'wfo': 'FGF'}, +'MNC169': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Altura', 417, '44.06980', '-91.93890'), ('Beaver', 214, '44.14802', '-92.03374'), ('Bethany', 417, '44.02923', '-91.91861'), ('Dakota', 329, '43.91180', '-91.35860'), ('Elba', 214, '44.08710', '-92.01730'), ('Fremont', 1484, '43.91409', '-91.90033'), ('Goodview', 3373, '44.06720', '-91.71070'), ('Hart', 1696, '43.88119', '-91.73585'), ('Lewiston', 1484, '43.98490', '-91.86790'), ('Minnesota City', 235, '44.09200', '-91.75010'), ('New Hartford', 329, '43.88119', '-91.48365'), ('Nodine', 329, '43.89764', '-91.45075'), ('Pickwick', 27069, '43.98171', '-91.60061'), ('Ridgeway', 1020, '43.91409', '-91.56772'), ('Rollingstone', 697, '44.09990', '-91.81910'), ('Saratoga', 3295, '43.88119', '-92.06847'), ('St. Charles', 3295, '43.96960', '-92.06410'), ('Stockton', 682, '44.02800', '-91.77230'), ('Troy', 3295, '43.86109', '-92.06664'), ('Utica', 230, '43.97640', '-91.95070'), ('Whitman', 697, '44.14802', '-91.79982'), ('Wilson', 27069, '43.94881', '-91.69930'), ('Winona', 27069, '44.04780', '-91.65710'), ('Witoka', 27069, '43.93237', '-91.61706'), ('Wyattville', 1484, '43.93237', '-91.79982')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNC171': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Albertville', 3621, '45.23920', '-93.66000'), ('Annandale', 2684, '45.26220', '-94.11890'), ('Buffalo', 10097, '45.17700', '-93.86850'), ('Clearwater', 858, '45.41020', '-94.04270'), ('Cokato', 2727, '45.07680', '-94.18940'), ('Delano', 3837, '45.04130', '-93.78550'), ('French Lake', 1114, '45.20000', '-94.18500'), ('Hanover', 1355, '45.15610', '-93.65860'), ('Howard Lake', 1853, '45.05960', '-94.06580'), ('Maple Lake', 1633, '45.23140', '-94.00300'), ('Monticello', 7868, '45.30470', '-93.80220'), ('Montrose', 1143, '45.06720', '-93.91230'), ('Rockford', 3484, '45.08910', '-93.73560'), ('South Haven', 204, '45.29150', '-94.21590'), ('St Michael', 9099, '45.21090', '-93.66370'), ('Waverly', 732, '45.06890', '-93.96900')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNC173': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Canby', 1903, '44.71460', '-96.26900'), ('Clarkfield', 944, '44.79120', '-95.80730'), ('Echo', 278, '44.62270', '-95.41130'), ('Granite Falls', 3070, '44.81110', '-95.53870'), ('Hanley Falls', 323, '44.69190', '-95.61910'), ('Hazel Run', 64, '44.74980', '-95.71610'), ('Porter', 190, '44.64070', '-96.16960'), ('St Leo', 106, '44.71610', '-96.05470'), ('Wood Lake', 436, '44.65080', '-95.53490')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MOC001': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brashear', 280, '40.14890', '-92.37840'), ('Gibbs', 100, '40.09780', '-92.41670'), ('Kirksville', 16988, '40.19470', '-92.58300'), ('Kirksville Regional Airport', 0, '40.10000', '-92.54300'), ('Millard', 75, '40.10720', '-92.54580'), ('Novinger', 534, '40.23190', '-92.70830')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'MOC003': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Amazonia', 277, '39.88860', '-94.89170'), ('Bolckow', 234, '40.11300', '-94.82190'), ('Cosby', 143, '39.86420', '-94.67800'), ('Country Club Villa', 1846, '39.83220', '-94.82140'), ('Fillmore', 211, '40.02530', '-94.97340'), ('Helena', 10, '39.91280', '-94.65010'), ('Rea', 56, '40.06190', '-94.76440'), ('Rosendale', 180, '40.04260', '-94.82240'), ('Savannah', 4762, '39.94170', '-94.83000')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC005': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Fairfax', 645, '40.33860', '-95.39310'), ('Phelps City', 31, '40.40330', '-95.59810'), ('Rockport', 1395, '40.41110', '-95.51670'), ('Tarkio', 1935, '40.44030', '-95.37750'), ('Watson', 121, '40.47850', '-95.62270'), ('Westboro', 163, '40.53470', '-95.31890')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC007': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Benton City', 122, '39.13480', '-91.76430'), ('Farber', 411, '39.27410', '-91.57640'), ('Laddonia', 620, '39.24150', '-91.64290'), ('Martinsburg', 326, '39.10110', '-91.64720'), ('Mexico', 11320, '39.16650', '-91.87060'), ('Rush Hill', 130, '39.20990', '-91.72510'), ('Thompson', 11320, '39.18860', '-91.98280'), ('Vandalia', 2529, '39.30930', '-91.49030'), ('Vandiver', 83, '39.16130', '-91.84880')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOC009': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Butterfield', 397, '36.75000', '-93.90750'), ('Cassville', 2890, '36.67680', '-93.86850'), ('Eagle Rock', 111, '36.54800', '-93.75410'), ('Exeter', 707, '36.67210', '-93.94080'), ('Golden', 1393, '36.52410', '-93.65360'), ('Jenkins', 1390, '36.77850', '-93.68580'), ('Madry', 7014, '36.86930', '-93.71990'), ('McDowell', 1103, '36.82410', '-93.79300'), ('Monett', 7396, '36.92110', '-93.92740'), ('Pioneer', 395, '36.83580', '-94.05740'), ('Pleasant Ridge', 714, '36.89630', '-93.79130'), ('Purdy', 1103, '36.81710', '-93.92040'), ('Ridgley', 721, '36.69710', '-94.01990'), ('Seligman', 877, '36.52240', '-93.93940'), ('Shell Knob', 1393, '36.63210', '-93.63410'), ('Washburn', 448, '36.58690', '-93.96580'), ('Wayne', 707, '36.63740', '-93.96190'), ('Wheaton', 721, '36.76270', '-94.05580'), ('Wheelerville', 1390, '36.83600', '-93.62910')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC011': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Boston', 1011, '37.41270', '-94.28160'), ('Burgess', 70, '37.55610', '-94.61470'), ('Golden City', 884, '37.39300', '-94.09350'), ('Hannon', 779, '37.62240', '-94.49380'), ('Iantha', 216, '37.51680', '-94.39740'), ('Irwin', 529, '37.58850', '-94.28520'), ('Kenoma', 4425, '37.43940', '-94.19710'), ('Lamar', 4425, '37.49490', '-94.27630'), ('Lamar Heights', 216, '37.49350', '-94.29740'), ('Liberal', 779, '37.55800', '-94.51960'), ('Milford', 52, '37.58460', '-94.15690'), ('Mindenmines', 409, '37.47130', '-94.58960'), ('Nashville', 119, '37.37430', '-94.49050'), ('Oakton', 216, '37.45800', '-94.35380'), ('Oskaloosa', 338, '37.63910', '-94.59210'), ('Verdella', 779, '37.60630', '-94.43830')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC013': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Adrian', 1780, '38.39750', '-94.35140'), ('Amoret', 211, '38.25530', '-94.58750'), ('Amsterdam', 281, '38.34930', '-94.58890'), ('Ballard', 0, '38.36130', '-94.14260'), ('Butler', 4209, '38.25860', '-94.33030'), ('Foster', 130, '38.16670', '-94.50720'), ('Hume', 337, '38.08950', '-94.58360'), ('Merwin', 83, '38.40420', '-94.59080'), ('Passaic', 40, '38.32160', '-94.34790'), ('Rich Hill', 1461, '38.09580', '-94.36300'), ('Rockville', 162, '38.07040', '-94.08020'), ('Worland', 0, '38.18810', '-94.59320')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC015': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brandon', 108, '38.50800', '-93.42270'), ('Cole Camp', 1028, '38.46000', '-93.20250'), ('Crockerville', 1028, '38.44270', '-93.10410'), ('Edmonson', 1026, '38.30940', '-93.22380'), ('Edwards', 80, '38.13660', '-93.16930'), ('Fristoe', 185, '38.11660', '-93.27540'), ('Hastain', 80, '38.21190', '-93.17600'), ('Ionia', 108, '38.50410', '-93.32380'), ('Knobby', 80, '38.15250', '-93.09520'), ('Lakeview Heights', 80, '38.25880', '-93.15610'), ('Lincoln', 1026, '38.39080', '-93.33440'), ('Mora', 1028, '38.52350', '-93.21550'), ('Palo Pinto', 63, '38.38160', '-93.45520'), ('Racket', 63, '38.29330', '-93.49190'), ('Warsaw', 2070, '38.24300', '-93.38160'), ('Whitakerville', 2070, '38.21380', '-93.37070'), ('Zora', 968, '38.28630', '-93.09630')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOC017': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Glenallen', 145, '37.31680', '-90.02810'), ('Marble Hill', 1502, '37.30230', '-89.98040'), ('Sedgewickville', 197, '37.51510', '-89.90590'), ('Zalma', 93, '37.14340', '-90.08030')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC019': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ashland', 1869, '38.77390', '-92.25670'), ('Centralia', 3774, '39.21150', '-92.13160'), ('Columbia', 84531, '38.95410', '-92.32670'), ('Hallsville', 978, '39.11580', '-92.21970'), ('Harrisburg', 169, '39.14220', '-92.45970'), ('Hartsburg', 108, '38.69520', '-92.30980'), ('McBaine', 17, '38.88700', '-92.44650'), ('Midway', 47, '38.98300', '-92.45000'), ('Murry', 978, '39.04290', '-92.17680'), ('Rocheport', 208, '38.97950', '-92.56330'), ('Sturgeon', 944, '39.23380', '-92.28130'), ('Wilton', 108, '38.73510', '-92.35910')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOC021': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Agency', 599, '39.64470', '-94.73980'), ('De Kalb', 257, '39.58690', '-94.92500'), ('Easton', 258, '39.72220', '-94.64140'), ('Faucett', 0, '39.60000', '-94.80000'), ('Lewis And Clark Villiage', 155, '39.54300', '-95.05250'), ('Rushville', 280, '39.58670', '-95.02580'), ('St. Joseph', 73390, '39.76800', '-94.84600'), ('St. Joseph Airport', 73990, '39.76670', '-94.91670')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC023': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Fisk', 363, '36.78220', '-90.20740'), ('Harviell', 610, '36.68360', '-90.57440'), ('Hendrickson', 379, '36.90440', '-90.46880'), ('Neelyville', 487, '36.55920', '-90.51100'), ('Poplar Bluff', 16651, '36.76390', '-90.40720'), ('Qulin', 467, '36.59790', '-90.24910'), ('Rombauer', 363, '36.84300', '-90.28000')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC025': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Braymer', 910, '39.58700', '-93.79560'), ('Breckenridge', 454, '39.76150', '-93.80480'), ('Cowgill', 247, '39.56060', '-93.92580'), ('Hamilton', 1813, '39.74330', '-94.00210'), ('Kidder', 271, '39.78190', '-94.10240'), ('Kingston', 287, '39.64220', '-94.03820'), ('Polo', 582, '39.55220', '-94.04000')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC027': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Auxvasse', 901, '39.01740', '-91.89450'), ('Carrington', 599, '38.80820', '-92.05940'), ('Fulton', 12128, '38.85310', '-91.94880'), ('Guthrie', 599, '38.75700', '-92.09650'), ('Hatton', 121, '39.02420', '-92.02610'), ('Holts Summit', 2935, '38.64470', '-92.11600'), ('Kingdom City', 121, '38.94630', '-91.93720'), ('Lake Mykee', 326, '38.67650', '-92.10080'), ('Mokane', 188, '38.67440', '-91.87270'), ('New Bloomfield', 599, '38.71940', '-92.08970'), ('Portland', 456, '38.71090', '-91.71780'), ('Reform', 456, '38.76530', '-91.77900'), ('Shamrock', 326, '39.00440', '-91.69370'), ('Steedman', 456, '38.70470', '-91.81790'), ('Tebbetts', 188, '38.62060', '-91.96250'), ('Wainwright', 2935, '38.58370', '-92.06820'), ('Williamsburg', 326, '38.91700', '-91.70000')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOC029': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Barnumton', 80, '38.11000', '-92.93630'), ('Branch', 267, '37.91080', '-93.00270'), ('Camdenton', 2779, '38.00800', '-92.74440'), ('Climax Springs', 80, '38.10140', '-93.05000'), ('Decaturville', 2779, '37.90750', '-92.69960'), ('Freedom', 280, '38.03600', '-92.58940'), ('Green Bay Terrace', 368, '38.10000', '-92.76160'), ('Hurricane Deck', 368, '38.13160', '-92.79250'), ('Linn Creek', 280, '38.03800', '-92.71130'), ('Macks Creek', 267, '37.96630', '-92.96910'), ('Montreal', 280, '37.96880', '-92.59190'), ('Old Linn Creek', 280, '38.07240', '-92.73630'), ('Osage Beach', 3662, '38.15020', '-92.61770'), ('Purvis', 663, '38.16880', '-92.81710'), ('Roach', 2779, '37.99380', '-92.83600'), ('Stoutland', 177, '37.81300', '-92.51430'), ('Sunrise Beach', 368, '38.17570', '-92.78410'), ('Village Of Four Seasons', 1493, '38.19820', '-92.71550'), ('Wet Glaize', 177, '37.92210', '-92.53350')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOC031': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Allenville', 104, '37.22160', '-89.75490'), ('Cape Girardeau', 35349, '37.30830', '-89.55030'), ('Delta', 517, '37.19820', '-89.73700'), ('Gordonville', 425, '37.31040', '-89.67300'), ('Jackson', 11947, '37.38030', '-89.65450'), ('Oak Ridge', 202, '37.49980', '-89.72960'), ('Old Appleton', 82, '37.59320', '-89.70940'), ('Pocahontas', 127, '37.50110', '-89.63970'), ('Whitewater', 113, '37.23660', '-89.79770')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC033': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bogard', 234, '39.45790', '-93.52410'), ('Bosworth', 382, '39.46980', '-93.33560'), ('Carrollton', 4122, '39.36310', '-93.49630'), ('De Witt', 120, '39.38490', '-93.22010'), ('Hale', 473, '39.60520', '-93.34320'), ('Norborne', 805, '39.30230', '-93.67580'), ('Stet', 0, '39.42310', '-93.75890'), ('Tina', 193, '39.53720', '-93.44130'), ('Wakenda', 90, '39.31550', '-93.37790')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC035': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ellsinore', 363, '36.93360', '-90.74600'), ('Freemont', 845, '36.85380', '-91.12320'), ('Grandin', 236, '36.82990', '-90.82180'), ('Van Buren', 845, '37.00730', '-91.01220')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC037': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Archie', 890, '38.48170', '-94.35420'), ('Belton', 21730, '38.81190', '-94.53120'), ('Cleveland', 592, '38.67910', '-94.59300'), ('Creighton', 322, '38.49470', '-94.07300'), ('Drexel', 1090, '38.48280', '-94.60740'), ('East Lynne', 300, '38.66820', '-94.22940'), ('Freeman', 521, '38.61860', '-94.50580'), ('Garden City', 1500, '38.56080', '-94.19110'), ('Gunn City', 85, '38.66620', '-94.16200'), ('Harrisonville', 8946, '38.65330', '-94.34920'), ('Lake Winnebago', 902, '38.83140', '-94.35720'), ('Peculiar', 2604, '38.71900', '-94.45790'), ('Pleasant Hill', 5582, '38.78700', '-94.26920'), ('Raymore', 11146, '38.80190', '-94.45250'), ('Strasburg', 136, '38.76000', '-94.16610'), ('West Line', 95, '38.63260', '-94.58390')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC039': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arnica', 1960, '37.75160', '-93.70830'), ('Bearcreek', 418, '37.65720', '-93.65800'), ('Cane Hill', 52, '37.57880', '-93.73130'), ('Caplinger Mills', 1960, '37.79410', '-93.80410'), ('Cedar Springs', 3775, '37.87350', '-93.89330'), ('El Dorado Springs', 3775, '37.87680', '-94.02100'), ('Filley', 3775, '37.75880', '-93.94880'), ('Jerico Springs', 259, '37.62210', '-94.00830'), ('Masters', 418, '37.60550', '-93.66130'), ('Olympia', 259, '37.72600', '-94.02820'), ('Stockton', 1960, '37.69880', '-93.79580'), ('Umber View Heights', 52, '37.62420', '-93.80380'), ('Wagoner', 259, '37.67040', '-93.92520')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC041': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brunswick', 925, '39.42400', '-93.13030'), ('Dalton', 27, '39.39820', '-92.98970'), ('Keytesville', 533, '39.43440', '-92.93810'), ('Mendon', 208, '39.58970', '-93.13360'), ('Prairie Hill', 0, '39.51880', '-92.73540'), ('Rothville', 93, '39.65330', '-93.06390'), ('Salisbury', 1726, '39.42340', '-92.80230'), ('Sumner', 142, '39.65260', '-93.24320'), ('Triplett', 64, '39.49770', '-93.19350'), ('Wien', 0, '39.66290', '-92.78330')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC043': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Billings', 1091, '37.06740', '-93.55190'), ('Boaz', 1010, '37.01850', '-93.40020'), ('Bruner', 1144, '37.01470', '-92.98580'), ('Chadwick', 1144, '36.92990', '-93.05660'), ('Chestnutridge', 1142, '36.83660', '-93.25160'), ('Christian Center', 9665, '36.94080', '-93.16660'), ('Clever', 1010, '37.03020', '-93.47270'), ('Elkhead', 684, '37.01360', '-92.93020'), ('Fremont Hills', 597, '37.06580', '-93.25260'), ('Garrison', 359, '36.83880', '-93.01930'), ('Highlandville', 872, '36.93270', '-93.28020'), ('Keltner', 1144, '36.96880', '-92.94800'), ('Linden', 1144, '37.04630', '-93.13380'), ('Nixa', 12124, '37.04330', '-93.29410'), ('Oldfield', 1144, '36.97820', '-93.03990'), ('Ozark', 9665, '37.02070', '-93.20580'), ('Selmore', 9665, '36.96790', '-93.22990'), ('Sparta', 1144, '37.00110', '-93.08130'), ('Spokane', 133, '36.86790', '-93.29660')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC045': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Alexandria', 166, '40.35970', '-91.45920'), ('Anson', 655, '40.56830', '-91.76870'), ('Antioch', 2241, '40.31880', '-91.68410'), ('Ashton', 102, '40.45030', '-91.80110'), ('Athens State Park', 121, '40.57300', '-91.69000'), ('Chambersburg', 102, '40.51800', '-91.80060'), ('Clark City', 2241, '40.41800', '-91.68010'), ('Fairmont', 310, '40.33360', '-91.90140'), ('Frost Island Conservation Area', 425, '40.44000', '-91.54860'), ('Gregory Landing', 166, '40.28360', '-91.50500'), ('Heath Memorial Conservation Area', 53, '40.57880', '-91.89470'), ('Kahoka', 2241, '40.42380', '-91.71840'), ('Luray', 102, '40.45250', '-91.88430'), ('Medill', 2241, '40.43380', '-91.76770'), ('Neeper', 2241, '40.33360', '-91.78440'), ('Peaksville', 121, '40.50190', '-91.68520'), ('Revere', 121, '40.49420', '-91.67600'), ('St. Patrick', 425, '40.26880', '-91.62550'), ('Wayland', 425, '40.39520', '-91.58170'), ('Winchester', 425, '40.31740', '-91.60170'), ('Wyaconda', 310, '40.39300', '-91.92630')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'MOC047': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Avondale', 529, '39.15350', '-94.54500'), ('Birmingham', 214, '39.16660', '-94.45040'), ('Claycomo', 1267, '39.20250', '-94.49220'), ('Excelsior Springs', 10847, '39.33790', '-94.22580'), ('Gladstone', 26365, '39.20390', '-94.55890'), ('Glenaire', 553, '39.22000', '-94.45000'), ('Holt', 405, '39.45420', '-94.34190'), ('Kansas City Downtown', 0, '39.12120', '-94.59340'), ('Kearney', 5472, '39.36780', '-94.36150'), ('Liberty', 26232, '39.24610', '-94.41910'), ('Missouri City', 295, '39.24080', '-94.28780'), ('Mosby', 242, '39.31560', '-94.29360'), ('North Kansas City', 4714, '39.13000', '-94.56200'), ('Northmoor', 399, '39.18430', '-94.59250'), ('Oaks', 136, '39.19700', '-94.56940'), ('Oakview', 386, '39.20800', '-94.56810'), ('Oakwood', 197, '39.20030', '-94.57000'), ('Oakwood Park', 183, '39.20570', '-94.57280'), ('Pleasant Valley', 3321, '39.21640', '-94.48390'), ('Prathersville', 111, '39.31410', '-94.27290'), ('Randolph', 47, '39.15640', '-94.49060'), ('Smithville', 5514, '39.38700', '-94.58090')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC049': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cameron', 8312, '39.74030', '-94.24080'), ('Gower', 1399, '39.61230', '-94.59470'), ('Lathrop', 2092, '39.54920', '-94.32950'), ('Plattsburg', 2354, '39.56500', '-94.46230'), ('Trimble', 451, '39.47110', '-94.56100'), ('Turney', 155, '39.63470', '-94.32060')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC051': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brazito', 287, '38.45000', '-92.28300'), ('Centertown', 257, '38.61900', '-92.40930'), ('Elston', 1023, '38.61290', '-92.32370'), ('Eugene', 156, '38.35370', '-92.40340'), ('Hickory Hill', 156, '38.40060', '-92.35940'), ('Jefferson City', 39636, '38.57190', '-92.19050'), ('Lohman', 168, '38.54250', '-92.36350'), ('Marion', 108, '38.69090', '-92.36620'), ('Osage Bend', 287, '38.40610', '-92.14310'), ('Osage City', 870, '38.55230', '-92.03230'), ('Russellville', 758, '38.51270', '-92.43790'), ('Schubert', 870, '38.51760', '-92.04940'), ('St. Martins', 1023, '38.59570', '-92.33330'), ('St. Thomas', 287, '38.36880', '-92.21560'), ('Taos', 870, '38.49780', '-92.08080'), ('Wardsville', 976, '38.48800', '-92.17340')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOC053': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blackwater', 199, '38.97940', '-92.99070'), ('Boonville', 8202, '38.96420', '-92.74780'), ('Bunceton', 348, '38.78970', '-92.79850'), ('Clifton City', 0, '38.76470', '-93.04130'), ('Lamine', 0, '38.95010', '-92.87630'), ('Otterville', 476, '38.70230', '-93.00280'), ('Pilot Grove', 723, '38.87380', '-92.91200'), ('Prairie Home', 220, '38.81490', '-92.58960'), ('Wooldridge', 47, '38.90650', '-92.52180')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOC055': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bourbon', 1348, '38.15160', '-91.24720'), ('Cherryville', 1429, '37.85000', '-91.28300'), ('Cook Station', 1429, '37.81280', '-91.43790'), ('Cuba', 3230, '38.06300', '-91.39990'), ('Davisville', 825, '37.80790', '-91.18510'), ('Dillard', 825, '37.73680', '-91.20430'), ('Leasburg', 323, '38.09420', '-91.29500'), ('Oak Hill', 3230, '38.20590', '-91.42070'), ('St. Cloud', 56, '38.17250', '-91.21260'), ('Steelville', 1429, '37.96940', '-91.35540')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC057': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arcola', 45, '37.54910', '-93.87490'), ('Bona', 224, '37.54460', '-93.67130'), ('Cedarville', 259, '37.57430', '-93.98410'), ('Dadeville', 224, '37.48020', '-93.67350'), ('Everton', 322, '37.34240', '-93.70220'), ('Greenfield', 1358, '37.41520', '-93.84080'), ('Lockwood', 989, '37.38550', '-93.95300'), ('Meinert', 989, '37.33520', '-93.99050'), ('Neola', 45, '37.50550', '-93.86930'), ('Pennsboro', 136, '37.32710', '-93.83380'), ('South Greenfield', 136, '37.37600', '-93.84080'), ('Sylvania', 259, '37.50770', '-94.02240')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC059': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Buffalo', 2781, '37.64380', '-93.09210'), ('Charity', 2781, '37.51520', '-93.01610'), ('Foose', 2781, '37.56130', '-93.14630'), ('Leadmine', 267, '37.83660', '-92.96190'), ('Long Lane', 201, '37.61130', '-92.90910'), ('Louisburg', 147, '37.75770', '-93.13910'), ('March', 2781, '37.52240', '-93.08910'), ('Olive', 1107, '37.45910', '-93.10860'), ('Plad', 2781, '37.74850', '-92.97520'), ('Pumpkin Center', 147, '37.74490', '-93.07040'), ('Tunas', 267, '37.84960', '-93.02740'), ('Urbana', 407, '37.84210', '-93.16660'), ('Windyville', 2781, '37.70660', '-92.92680')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC061': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Altamont', 218, '39.88890', '-94.08670'), ('Coffey', 140, '40.10510', '-94.00620'), ('Gallatin', 1789, '39.91030', '-93.96200'), ('Jameson', 120, '40.00530', '-93.98760'), ('Jamesport', 505, '39.97470', '-93.80210'), ('Lock Springs', 69, '39.84910', '-93.77590'), ('Pattonsburg', 261, '40.04800', '-94.13760'), ('Winston', 247, '39.86990', '-94.13970')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC063': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Amity', 70, '39.86860', '-94.43450'), ('Clarksdale', 351, '39.81350', '-94.55020'), ('Fairport', 0, '39.98330', '-94.34600'), ('Maysville', 1212, '39.88700', '-94.36130'), ('Osborn', 455, '39.75000', '-94.35710'), ('Santa Rosa', 0, '39.98000', '-94.20530'), ('Stewartsville', 759, '39.75080', '-94.49870'), ('Union Star', 433, '39.98030', '-94.59800'), ('Weatherby', 123, '39.90920', '-94.24420')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC065': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anutt', 190, '37.71580', '-91.71960'), ('Bangert', 4854, '37.77100', '-91.51580'), ('Boss', 825, '37.64300', '-91.18910'), ('Bunker', 427, '37.45750', '-91.21150'), ('Darien', 4854, '37.51990', '-91.59210'), ('Gladden', 4854, '37.49850', '-91.45630'), ('Howes', 4854, '37.70940', '-91.51550'), ('Howes Mill', 427, '37.61770', '-91.29160'), ('Jadwin', 4854, '37.48660', '-91.57070'), ('Lake Spring', 16367, '37.78240', '-91.67830'), ('Lecoma', 190, '37.77600', '-91.73070'), ('Lenox', 190, '37.65300', '-91.76110'), ('Montauk', 1471, '37.44770', '-91.69550'), ('Salem', 4854, '37.64550', '-91.53580'), ('Sligo', 1429, '37.77380', '-91.37740'), ('Stone Hill', 427, '37.60160', '-91.34190'), ('Turtle', 4854, '37.52320', '-91.41220')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOC067': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ava', 3021, '36.95190', '-92.66020'), ('Brushyknob', 552, '36.96470', '-92.48580'), ('Dogwood', 1834, '37.03770', '-92.83070'), ('Drury', 552, '36.92990', '-92.32240'), ('Gentryville', 552, '36.86380', '-92.36050'), ('Goodhope', 3021, '36.90880', '-92.80750'), ('Rome', 3021, '36.84130', '-92.77320'), ('Squires', 3021, '36.85130', '-92.62460'), ('Vanzant', 4574, '36.96960', '-92.30270')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC069': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arbyrd', 528, '36.05260', '-90.24000'), ('Campbell', 1883, '36.49210', '-90.07430'), ('Cardwell', 789, '36.04720', '-90.29120'), ('Clarkton', 1330, '36.45240', '-89.96530'), ('Glennonville', 467, '36.58330', '-90.15000'), ('Holcomb', 696, '36.40020', '-90.02310'), ('Hornersville', 686, '36.04030', '-90.11480'), ('Kennett', 11260, '36.24000', '-90.04870'), ('Malden', 4782, '36.58490', '-89.97560'), ('Senath', 1650, '36.13350', '-90.16110')], 'partOfState': 'southeast', 'wfo': 'MEG'}, +'MOC071': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Beaufort', 87, '38.41930', '-91.19090'), ('Berger', 206, '38.67400', '-91.33520'), ('Catawissa', 5482, '38.42470', '-90.78260'), ('Gerald', 1171, '38.39940', '-91.33110'), ('Gray Summit', 2640, '38.49480', '-90.81520'), ('Japan', 1348, '38.23930', '-91.30600'), ('Leslie', 87, '38.41790', '-91.23190'), ('Lonedell', 280, '38.30670', '-90.82880'), ('Lyon', 1867, '38.51180', '-91.17400'), ('Moselle', 2417, '38.38680', '-90.89790'), ('New Haven', 1867, '38.60750', '-91.21810'), ('Noser Mill', 87, '38.39320', '-91.19230'), ('Pacific', 5482, '38.47830', '-90.75290'), ('Parkway', 280, '38.33850', '-90.97370'), ('Piney Park', 280, '38.30020', '-90.94370'), ('Robertsville', 2640, '38.41330', '-90.81540'), ('Stanton', 6351, '38.27350', '-91.10840'), ('St. Clair', 4390, '38.35110', '-90.98090'), ('Sullivan', 6351, '38.21600', '-91.16900'), ('Union', 7757, '38.44830', '-91.01260'), ('Villa Ridge', 2417, '38.47120', '-90.88350'), ('Washington', 13243, '38.55310', '-91.01260')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC073': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bay', 267, '38.50800', '-91.55800'), ('Bland', 565, '38.30060', '-91.63250'), ('Canaan', 2500, '38.31220', '-91.55900'), ('Drake', 364, '38.46700', '-91.46700'), ('Gasconade', 267, '38.66940', '-91.56030'), ('Hermann', 2674, '38.69910', '-91.43500'), ('Morrison', 123, '38.67070', '-91.63280'), ('Mount Sterling', 565, '38.46700', '-91.61700'), ('Owensville', 2500, '38.34760', '-91.49770'), ('Rosebud', 364, '38.38660', '-91.40300'), ('Swiss', 267, '38.56290', '-91.47120')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC075': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Albany', 1937, '40.24820', '-94.33390'), ('Darlington', 113, '40.19880', '-94.39580'), ('Ford City', 29, '40.11220', '-94.46480'), ('Gentry', 101, '40.33310', '-94.42350'), ('King City', 1012, '40.05060', '-94.52470'), ('McFall', 135, '40.11170', '-94.22250'), ('Stanberry', 1243, '40.21670', '-94.53800')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC077': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ash Grove', 1430, '37.31520', '-93.58490'), ('Bassville', 1107, '37.34440', '-93.13210'), ('Battlefield', 2385, '37.11550', '-93.36990'), ("Bois D'Arc", 1430, '37.25630', '-93.50750'), ('Cave Springs', 3193, '37.35130', '-93.46330'), ('Ebenezer', 3193, '37.34020', '-93.30690'), ('Fair Grove', 1107, '37.38380', '-93.15110'), ('Galloway', 597, '37.13660', '-93.23770'), ('Glidewell', 3193, '37.30440', '-93.32680'), ('Republic', 8438, '37.11990', '-93.47990'), ('Sacville', 344, '37.39380', '-93.42880'), ('Springfield', 151580, '37.19620', '-93.28610'), ('Strafford', 1845, '37.26820', '-93.11680'), ('Turners', 1845, '37.18070', '-93.15520'), ('Walnut Grove', 630, '37.41110', '-93.54940'), ('Willard', 3193, '37.30500', '-93.42820')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC079': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brimson', 63, '40.14420', '-93.73780'), ('Galt', 275, '40.12720', '-93.38760'), ('Laredo', 250, '40.02630', '-93.44730'), ('Spickard', 315, '40.24260', '-93.59220'), ('Tindall', 65, '40.16040', '-93.60940'), ('Trenton', 6216, '40.07890', '-93.61640')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC081': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bethany', 3087, '40.26780', '-94.02830'), ('Blythedale', 233, '40.47520', '-93.92720'), ('Cainsville', 370, '40.43750', '-93.77450'), ('Eagleville', 321, '40.46870', '-93.98810'), ('Gilman City', 380, '40.14170', '-93.87240'), ('Hatfield', 0, '40.52790', '-94.15000'), ('Martinsville', 0, '40.33860', '-94.16070'), ('Mount Moriah', 143, '40.32930', '-93.79730'), ('New Hampton', 349, '40.26510', '-94.19580'), ('Ridgeway', 530, '40.37780', '-93.93770')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC083': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blairstown', 141, '38.55740', '-93.96060'), ('Brownington', 119, '38.24570', '-93.72250'), ('Calhoun', 491, '38.46790', '-93.62450'), ('Clinton', 9311, '38.37130', '-93.77800'), ('Coal', 0, '38.32530', '-93.61450'), ('Deepwater', 507, '38.25920', '-93.77380'), ('Hartwell', 16, '38.43490', '-93.93390'), ('La Due', 39, '38.31280', '-93.87780'), ('Montrose', 417, '38.25940', '-93.98200'), ('Tightwad', 63, '38.31110', '-93.54170'), ('Urich', 499, '38.45990', '-93.99900'), ('Windsor', 3087, '38.53340', '-93.52240')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC085': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cross Timbers', 185, '38.02460', '-93.22660'), ('Elkton', 124, '37.85250', '-93.42570'), ('Hermitage', 406, '37.94130', '-93.31610'), ('Nemo', 113, '37.87660', '-93.26160'), ('Pittsburg', 406, '37.83380', '-93.30020'), ('Preston', 113, '37.94080', '-93.20750'), ('Quincy', 388, '38.00830', '-93.47210'), ('Weaubleau', 518, '37.89050', '-93.54160'), ('Wheatland', 388, '37.94600', '-93.40080')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOC087': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bigelow', 38, '40.11060', '-95.28850'), ('Big Lake', 127, '40.08190', '-95.34960'), ('Corning', 21, '40.24880', '-95.45470'), ('Craig', 309, '40.19220', '-95.37340'), ('Forest City', 338, '39.98270', '-95.19170'), ('Fortescue', 51, '40.05200', '-95.31750'), ('Maitland', 342, '40.20310', '-95.07420'), ('Mound City', 1193, '40.13600', '-95.23140'), ('Oregon', 935, '39.98450', '-95.14470')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC089': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Armstrong', 287, '39.26930', '-92.70500'), ('Fayette', 2793, '39.14750', '-92.68560'), ('Franklin', 112, '39.01130', '-92.75470'), ('Glasgow', 1263, '39.22700', '-92.84640'), ('New Franklin', 1145, '39.01860', '-92.73720')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOC091': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brandsville', 174, '36.65020', '-91.68990'), ('Caulfield', 285, '36.61440', '-92.10470'), ('Lanton', 174, '36.51710', '-91.80130'), ('Moody', 320, '36.52930', '-91.98910'), ('Mountain View', 2430, '36.99520', '-91.70360'), ('Peace Valley', 2430, '36.87430', '-91.73100'), ('Pomona', 10866, '36.86710', '-91.91410'), ('Pottersville', 10866, '36.69580', '-92.03100'), ('Siloam Springs', 10866, '36.79550', '-92.07520'), ('South Fork', 10866, '36.62770', '-91.96250'), ('West Plains', 10866, '36.72790', '-91.85220'), ('White Church', 10866, '36.85020', '-91.78600'), ('Willow Springs', 2147, '36.99210', '-91.96960')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOC093': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Annapolis', 310, '37.35990', '-90.69830'), ('Arcadia', 567, '37.58540', '-90.62850'), ('Belleview', 158, '37.68300', '-90.75000'), ('Bixby', 825, '37.66700', '-91.08300'), ('Chloride', 310, '37.46060', '-90.68700'), ('Des Arc', 187, '37.28420', '-90.63490'), ('Glover', 567, '37.48700', '-90.69120'), ('Granite', 697, '37.65450', '-90.67160'), ('Hogan', 567, '37.51120', '-90.69590'), ('Ironton', 1471, '37.59670', '-90.63580'), ('Pilot Knob', 697, '37.62350', '-90.64360'), ('Sabula', 310, '37.40480', '-90.69620'), ('Viburnum', 825, '37.71560', '-91.12920'), ('Vulcan', 187, '37.30950', '-90.66260')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOC095': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blue Springs', 48080, '39.01690', '-94.28140'), ('Buckner', 2725, '39.13480', '-94.19800'), ('Grain Valley', 5160, '39.01500', '-94.19830'), ('Grandview', 24881, '38.88580', '-94.53280'), ('Greenwood', 3952, '38.85110', '-94.34360'), ('Independence', 113288, '39.09110', '-94.41500'), ('Kansas City', 441545, '39.09970', '-94.57800'), ('Lake Lotawana', 1872, '38.92310', '-94.24390'), ('Lake Tapawingo', 843, '39.02140', '-94.31140'), ("Lee's Summit", 70700, '38.91080', '-94.38190'), ('Levasy', 108, '39.13310', '-94.13230'), ('Lone Jack', 528, '38.87040', '-94.17360'), ('Maywood', 0, '39.09500', '-94.44550'), ('Oak Grove', 5535, '39.00500', '-94.12910'), ('Raytown', 30388, '39.00860', '-94.46520'), ('Sibley', 347, '39.17920', '-94.19300'), ('Sugar Creek', 3839, '39.10970', '-94.44440'), ('Unity Village', 140, '38.95140', '-94.40150')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC097': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Airport Drive', 622, '37.14240', '-94.51050'), ('Alba', 588, '37.23830', '-94.41710'), ('Asbury', 218, '37.27430', '-94.60520'), ('Atlas', 1034, '37.09490', '-94.38580'), ('Avilla', 137, '37.19520', '-94.12930'), ('Brooklyn Heights', 125, '37.17040', '-94.38610'), ('Carl Junction', 5294, '37.17660', '-94.56520'), ('Carterville', 1850, '37.14910', '-94.44270'), ('Carthage', 12668, '37.17630', '-94.31000'), ('Carytown', 217, '37.26610', '-94.30910'), ('Dudenville', 884, '37.30550', '-94.09960'), ('Duenweg', 1034, '37.08350', '-94.41330'), ('Duquesne', 1640, '37.07660', '-94.45910'), ('Fidelity', 252, '37.06790', '-94.31300'), ('Iron Gates', 332, '37.06350', '-94.55690'), ('Jasper', 1011, '37.33600', '-94.30110'), ('Joplin', 45504, '37.08410', '-94.51300'), ('Lakeside', 1850, '37.15880', '-94.41470'), ('La Russell', 138, '37.14130', '-94.06130'), ('Maple Grove', 137, '37.25360', '-94.12540'), ('Neck City', 119, '37.25690', '-94.44410'), ('Oakland Park', 95, '37.11000', '-94.47260'), ('Oronogo', 976, '37.18830', '-94.46990'), ('Purcell', 357, '37.24210', '-94.43490'), ('Reeds', 103, '37.11610', '-94.16550'), ('Sarcoxie', 1354, '37.06910', '-94.11630'), ('Waco', 86, '37.24690', '-94.59910'), ('Webb City', 9812, '37.14630', '-94.48300')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC099': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Antonia', 6108, '38.36250', '-90.46560'), ('Arnold', 19965, '38.42840', '-90.36930'), ('Barnhart', 6108, '38.33440', '-90.40410'), ('Byrnes Mill', 2376, '38.43930', '-90.57360'), ('Cedar Hill', 1703, '38.35610', '-90.64160'), ('Crystal City', 4247, '38.22590', '-90.38300'), ('De Soto', 6375, '38.13900', '-90.56050'), ('Dittmer', 229, '38.33300', '-90.68300'), ('Festus', 9660, '38.22280', '-90.40540'), ('Fletcher', 6375, '38.16590', '-90.73340'), ('Grubville', 229, '38.28840', '-90.75480'), ('Hematite', 669, '38.20070', '-90.48340'), ('Herculaneum', 2805, '38.25920', '-90.38770'), ('High Ridge', 4236, '38.46290', '-90.53410'), ('Hillsboro', 1675, '38.23230', '-90.56680'), ('House Springs', 2376, '38.41700', '-90.56700'), ('Kimmswick', 94, '38.36670', '-90.36510'), ('Mapaville', 1043, '38.24810', '-90.48560'), ('Morse Mill', 229, '38.27680', '-90.65320'), ('Murphy', 9048, '38.49290', '-90.48640'), ('Oermann', 229, '38.30750', '-90.72570'), ('Olympian Village', 669, '38.13460', '-90.45720'), ('Otto', 211, '38.37200', '-90.50060'), ('Parkdale', 205, '38.47890', '-90.52660'), ('Pevely', 3768, '38.28910', '-90.39800'), ('Scotsdale', 211, '38.39590', '-90.58970'), ('Valles Mill', 669, '38.04070', '-90.50150'), ('Victoria', 6375, '38.17790', '-90.52590')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC101': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Centerview', 249, '38.74560', '-93.84560'), ('Chilhowee', 329, '38.58890', '-93.85630'), ('Fayetteville', 0, '38.88330', '-93.75610'), ('Holden', 2510, '38.71340', '-93.99110'), ('Kingsville', 257, '38.74290', '-94.06870'), ('Knob Noster', 2462, '38.76800', '-93.55830'), ('Leeton', 619, '38.58360', '-93.69510'), ('Pittsville', 0, '38.85010', '-93.99000'), ('Post Oak', 0, '38.56890', '-93.75080'), ('Warrensburg', 16340, '38.76270', '-93.73580'), ('Whiteman Air Force Base', 3814, '38.73270', '-93.55150')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC103': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Baring', 159, '40.24470', '-92.20570'), ('Colony', 223, '40.25000', '-91.98300'), ('Edina', 1233, '40.16800', '-92.17310'), ('Greensburg', 159, '40.30000', '-92.21700'), ('Hurdland', 239, '40.15070', '-92.30220'), ('Knox City', 223, '40.14360', '-92.01030'), ('Newark', 100, '39.99440', '-91.97310'), ('Novelty', 119, '40.01260', '-92.20740'), ('Plevna', 121, '39.97370', '-92.08620')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOC105': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bennett Springs', 201, '37.72680', '-92.85550'), ('Competition', 42, '37.48350', '-92.42880'), ('Conway', 743, '37.50190', '-92.82070'), ('Dry Knob', 42, '37.64160', '-92.45020'), ('Eldridge', 2779, '37.82960', '-92.74880'), ('Falcon', 42, '37.60500', '-92.37850'), ('Lebanon', 12155, '37.68040', '-92.66360'), ('Lynchburg', 13666, '37.49300', '-92.29410'), ('Morgan', 42, '37.51020', '-92.67630'), ('Phillipsburg', 201, '37.55380', '-92.78460'), ('Sleeper', 177, '37.76050', '-92.59270'), ('Twin Bridges', 42, '37.55220', '-92.59710')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC107': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Alma', 399, '39.09580', '-93.54800'), ('Aullville', 86, '39.01780', '-93.67750'), ('Bates City', 245, '39.00620', '-94.07020'), ('Concordia', 2360, '38.98330', '-93.56840'), ('Corder', 427, '39.09950', '-93.64050'), ('Dover', 108, '39.19330', '-93.68950'), ('Emma', 243, '38.97650', '-93.49550'), ('Higginsville', 4682, '39.07250', '-93.71690'), ('Lexington', 4453, '39.18210', '-93.87490'), ('Mayview', 294, '39.05260', '-93.83020'), ('Napoleon', 208, '39.13230', '-94.07060'), ('Odessa', 4818, '38.99700', '-93.95330'), ('Waverly', 806, '39.20660', '-93.51750'), ('Wellington', 784, '39.13620', '-93.98250')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC109': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Aurora', 7014, '36.97070', '-93.71770'), ('Chesapeake', 189, '37.11680', '-93.68130'), ('Freistatt', 184, '37.01820', '-93.89740'), ('Halltown', 189, '37.19330', '-93.62520'), ('Hoberg', 60, '37.06960', '-93.84850'), ('Marionville', 2113, '37.00300', '-93.63710'), ('Miller', 754, '37.21470', '-93.83960'), ('Mount Vernon', 4017, '37.10360', '-93.81820'), ('Pierce City', 1385, '36.94580', '-94.00000'), ('Red Oak', 138, '37.22850', '-94.01110'), ('Stotts City', 250, '37.10360', '-93.94940'), ('Verona', 714, '36.96380', '-93.79550')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC111': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Canton', 2557, '40.12970', '-91.52380'), ('Ewing', 464, '40.00840', '-91.71440'), ('La Belle', 669, '40.11640', '-91.91390'), ('La Grange', 1000, '40.04800', '-91.50050'), ('Lewistown', 595, '40.08420', '-91.81270'), ('Maywood', 464, '39.95440', '-91.60320'), ('Monticello', 126, '40.11910', '-91.71260'), ('Steffenville', 100, '39.97060', '-91.88200')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOC113': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cave', 7, '39.02380', '-91.04520'), ('Davis', 7, '39.05810', '-91.01950'), ('Elsberry', 2047, '39.17000', '-90.78990'), ('Foley', 178, '39.04570', '-90.74130'), ('Hawk Point', 459, '38.97120', '-91.13370'), ('Moscow Mills', 1742, '38.94590', '-90.91920'), ('New Hope', 2047, '39.13540', '-90.86460'), ('Old Monroe', 250, '38.93130', '-90.74700'), ('Olney', 96, '39.08400', '-91.24320'), ('Silex', 206, '39.12630', '-91.05750'), ('Troy', 6737, '38.97690', '-90.97540'), ('Truxton', 96, '39.00220', '-91.24060'), ('Whiteside', 67, '39.18340', '-91.01650'), ('Winfield', 723, '38.99540', '-90.73980')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC115': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brookfield', 4769, '39.78580', '-93.07630'), ('Browning', 317, '40.03490', '-93.16020'), ('Bucklin', 524, '39.78240', '-92.89000'), ('Laclede', 415, '39.78820', '-93.16950'), ('Linneus', 369, '39.87690', '-93.18750'), ('Marceline', 2558, '39.71190', '-92.94740'), ('Meadville', 457, '39.78780', '-93.30190'), ('New Boston', 0, '39.95000', '-92.85960'), ('Purdin', 223, '39.95020', '-93.16550'), ('Saint Catherine', 0, '39.79425', '-92.99400')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC117': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Avalon', 0, '39.66670', '-93.45000'), ('Chillicothe', 8968, '39.79160', '-93.55410'), ('Chula', 198, '39.92160', '-93.47630'), ('Dawn', 0, '39.66670', '-93.63330'), ('Ludlow', 204, '39.65350', '-93.70310'), ('Mooresville', 89, '39.74640', '-93.71750'), ('Spring Hill', 0, '39.87430', '-93.64310'), ('Utica', 274, '39.74560', '-93.62930'), ('Wheeling', 268, '39.78660', '-93.38640')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC119': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anderson', 1856, '36.65050', '-94.44330'), ('Goodman', 1183, '36.74160', '-94.39880'), ('Lanagan', 411, '36.60800', '-94.44740'), ('Noel', 1480, '36.54550', '-94.48490'), ('Pineville', 768, '36.59440', '-94.38380'), ('Powell', 178, '36.62270', '-94.18040'), ('Rocky Comfort', 721, '36.74630', '-94.09020'), ('South West City', 855, '36.51250', '-94.61110')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC121': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Atlanta', 450, '39.89800', '-92.47980'), ('Bevier', 723, '39.74910', '-92.56370'), ('Callao', 291, '39.76220', '-92.62320'), ('Elmer', 98, '39.95760', '-92.64980'), ('Ethel', 100, '39.89350', '-92.73780'), ('Excello', 0, '39.63450', '-92.47450'), ('La Plata', 1486, '40.02500', '-92.49140'), ('Macon', 5538, '39.74220', '-92.47050'), ('New Cambria', 222, '39.77530', '-92.75130'), ('South Gifford', 72, '40.02590', '-92.68230')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC123': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Buckhorn', 251, '37.33300', '-90.30000'), ('Catherine Place', 3928, '37.57510', '-90.32440'), ('Fredericktown', 3928, '37.56460', '-90.29650'), ('Junction City', 319, '37.57390', '-90.29390'), ('Marquand', 251, '37.42870', '-90.16710'), ('Mine La Motte', 319, '37.61570', '-90.28980'), ('Roselle', 567, '37.60000', '-90.53300'), ('Saco', 187, '37.36700', '-90.45000')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOC125': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Belle', 1344, '38.28580', '-91.72020'), ('Brinktown', 1570, '38.12660', '-92.07440'), ('Vichy', 16367, '38.11130', '-91.76020'), ('Vienna', 628, '38.18660', '-91.94690')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOC127': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Hannibal', 17757, '39.70750', '-91.38360'), ('Palmyra', 3467, '39.79640', '-91.52470'), ('Philadelphia', 464, '39.83880', '-91.73900'), ('Taylor', 1000, '39.93820', '-91.52370'), ('Warren', 2588, '39.76700', '-91.76700')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOC129': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Mercer', 342, '40.51100', '-93.52930'), ('Mill Grove', 0, '40.30890', '-93.59390'), ('Modena', 0, '40.30000', '-93.68330'), ('Princeton', 1047, '40.39710', '-93.58810'), ('South Lineville', 37, '40.57790', '-93.52360')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC131': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Aurora Springs', 4895, '38.32460', '-92.58490'), ('Bagnell', 86, '38.22660', '-92.60130'), ('Brumley', 102, '38.08630', '-92.48660'), ('Eldon', 4895, '38.34830', '-92.58130'), ('Etterville', 156, '38.36740', '-92.46990'), ('Iberia', 605, '38.09020', '-92.29240'), ('Kaiser', 456, '38.13350', '-92.58960'), ('Lakeland', 376, '38.21950', '-92.63090'), ('Lake Ozark', 1489, '38.19850', '-92.63850'), ('Lakeview', 111, '38.21380', '-92.62710'), ('Marys Home', 156, '38.30550', '-92.35500'), ('Olean', 157, '38.41040', '-92.53010'), ('Saint Elizabeth', 297, '38.25580', '-92.26770'), ('Tuscumbia', 218, '38.23290', '-92.45830'), ('Ulman', 102, '38.15300', '-92.44380')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOC133': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anniston', 285, '36.82450', '-89.32620'), ('Bertrand', 740, '36.90900', '-89.44970'), ('Charleston', 4732, '36.91890', '-89.33790'), ('East Prairie', 3227, '36.77900', '-89.38410'), ('Wilson City', 165, '36.92300', '-89.22280'), ('Wyatt', 364, '36.91200', '-89.22360')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC135': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('California', 4005, '38.63160', '-92.56680'), ('Clarksburg', 375, '38.66140', '-92.66610'), ('Easley', 29, '38.80000', '-92.38300'), ('Enon', 157, '38.45700', '-92.48950'), ('High Point', 157, '38.48300', '-92.58300'), ('Jamestown', 382, '38.76570', '-92.47780'), ('Kliever', 382, '38.69730', '-92.50340'), ('Latham', 375, '38.56090', '-92.68230'), ('Lupus', 29, '38.84570', '-92.45420'), ('McGirk', 257, '38.61120', '-92.47620'), ('Sandy Hook', 382, '38.74830', '-92.40840'), ('Tipton', 3261, '38.65310', '-92.78000')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOC137': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Duncans Bridge', 586, '39.57560', '-92.26380'), ('Florida', 9, '39.49330', '-91.79010'), ('Granville', 129, '39.56260', '-92.09770'), ('Holliday', 129, '39.49360', '-92.13190'), ('Indian Creek', 2588, '39.59450', '-91.77690'), ('Madison', 586, '39.47320', '-92.21190'), ('Monroe City', 2588, '39.65410', '-91.73220'), ('Paris', 1529, '39.47710', '-92.00390'), ('Santa Fe', 9, '39.36700', '-91.83300'), ('Stoutsville', 44, '39.55170', '-91.85290'), ('Woodlawn', 586, '39.58300', '-92.21700')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOC139': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Americus', 176, '38.78030', '-91.56400'), ('Bellflower', 427, '39.00380', '-91.35270'), ('Big Spring', 72, '38.80000', '-91.48300'), ('Buell', 2442, '39.03430', '-91.43890'), ('Danville', 2442, '38.91070', '-91.53480'), ('High Hill', 231, '38.87540', '-91.37560'), ('Jonesburg', 695, '38.85360', '-91.30650'), ('McKittrick', 72, '38.73520', '-91.44270'), ('Middletown', 199, '39.12850', '-91.41450'), ('Mineola', 2442, '38.88820', '-91.57160'), ('Montgomery City', 2442, '38.97560', '-91.50510'), ('New Florence', 764, '38.90820', '-91.44990'), ('Rhineland', 176, '38.71860', '-91.51730'), ('Wellsville', 1423, '39.07370', '-91.56790')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC141': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Barnett', 207, '38.37820', '-92.67430'), ('Florence', 476, '38.58880', '-92.97880'), ('Gravois Mills', 208, '38.30830', '-92.82520'), ('Laurie', 663, '38.20360', '-92.82910'), ('Rocky Mount', 1493, '38.27210', '-92.71930'), ('Stover', 968, '38.44080', '-92.99160'), ('Syracuse', 172, '38.66990', '-92.87290'), ('Versailles', 2565, '38.43130', '-92.84080')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOC143': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Canalou', 348, '36.75430', '-89.68750'), ('Catron', 68, '36.61240', '-89.70630'), ('Gideon', 1113, '36.45080', '-89.91060'), ('Howardville', 342, '36.56830', '-89.59730'), ('Lilbourn', 1303, '36.59080', '-89.61370'), ('Marston', 610, '36.51760', '-89.60870'), ('Matthews', 605, '36.75930', '-89.58360'), ('Morehouse', 1015, '36.84600', '-89.69090'), ('New Madrid', 3334, '36.58930', '-89.54860'), ('North Lilbourn', 95, '36.60170', '-89.62190'), ('Parma', 852, '36.61090', '-89.81820'), ('Portageville', 3295, '36.42870', '-89.69980'), ('Risco', 392, '36.55150', '-89.81870'), ('Tallapoosa', 204, '36.50750', '-89.81870')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC145': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cliff Village', 33, '37.02530', '-94.51690'), ('Dennis Acres', 68, '37.04580', '-94.50410'), ('Diamond', 807, '36.99520', '-94.31580'), ('Fairview', 395, '36.81740', '-94.08800'), ('Granby', 2121, '36.91910', '-94.25500'), ('Leawood', 904, '37.03340', '-94.49050'), ('Neosho', 10505, '36.86880', '-94.36770'), ('Newtonia', 231, '36.87660', '-94.18520'), ('Racine', 2135, '36.89600', '-94.52710'), ('Redings Mill', 159, '37.01970', '-94.51650'), ('Ritchey', 76, '36.94410', '-94.18460'), ('Saginaw', 276, '37.02380', '-94.46790'), ('Seneca', 2135, '36.84130', '-94.61080'), ('Shoal Creek Drive', 346, '37.03750', '-94.52320'), ('Shoal Creek Estates', 51, '37.01870', '-94.49410'), ('Silver Creek', 608, '37.03880', '-94.47190'), ('Stark City', 156, '36.86220', '-94.18550'), ('Stella', 178, '36.76130', '-94.19100'), ('Wentworth', 141, '36.99330', '-94.07410')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC147': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arkoe', 58, '40.25880', '-94.82960'), ('Barnard', 257, '40.17440', '-94.82260'), ('Burlington Junction', 632, '40.44720', '-95.06740'), ('Clearmont', 191, '40.50740', '-95.03290'), ('Clyde', 74, '40.26620', '-94.66830'), ('Conception', 0, '40.24450', '-94.68570'), ('Conception Junction', 202, '40.26830', '-94.69070'), ('Elmo', 166, '40.51880', '-95.11720'), ('Graham', 191, '40.20080', '-95.03980'), ('Guilford', 87, '40.17030', '-94.73610'), ('Hopkins', 579, '40.55110', '-94.81620'), ('Maryville', 10581, '40.34330', '-94.87220'), ('Parnell', 197, '40.44010', '-94.62180'), ('Pickering', 154, '40.45060', '-94.84170'), ('Quitman', 46, '40.37310', '-95.07670'), ('Ravenwood', 448, '40.35260', '-94.67120'), ('Skidmore', 342, '40.28750', '-95.08110')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC149': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Alton', 668, '36.69410', '-91.39910'), ('Couch', 668, '36.60610', '-91.38290'), ('Greer', 668, '36.76930', '-91.35330'), ('Koshkonong', 205, '36.59580', '-91.64550'), ('Myrtle', 131, '36.50860', '-91.26680'), ('Rover', 174, '36.72160', '-91.62070'), ('Thayer', 2201, '36.52430', '-91.53800'), ('Thomasville', 668, '36.78910', '-91.53180'), ('Wilderness', 668, '36.71940', '-91.19190')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOC151': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Argyle', 164, '38.29500', '-92.02550'), ('Bonnots Mill', 188, '38.57250', '-91.96100'), ('Chamois', 456, '38.67720', '-91.77000'), ('Frankenstein', 188, '38.57420', '-91.88220'), ('Freeburg', 423, '38.31550', '-91.92250'), ('Koeltztown', 164, '38.32480', '-92.04210'), ('Linn', 1354, '38.48080', '-91.84440'), ('Loose Creek', 320, '38.50810', '-91.95730'), ('Meta', 249, '38.31240', '-92.16660'), ('Rich Fountain', 423, '38.39580', '-91.87980'), ('Westphalia', 320, '38.44120', '-92.00050')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOC153': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bakersfield', 285, '36.52240', '-92.14190'), ('Brixey', 632, '36.75070', '-92.40470'), ('Dora', 285, '36.77680', '-92.21710'), ('Gainesville', 632, '36.60300', '-92.42790'), ('Hardenville', 632, '36.58910', '-92.37100'), ('Isabella', 38, '36.58070', '-92.61250'), ('Long Run', 240, '36.64910', '-92.72290'), ('Noble', 240, '36.74740', '-92.56960'), ('Pontiac', 38, '36.51550', '-92.60360'), ('Rockbridge', 632, '36.78940', '-92.40880'), ('Sundown', 38, '36.56550', '-92.63730'), ('Sycamore', 632, '36.70330', '-92.27410'), ('Tecumseh', 632, '36.58660', '-92.28630'), ('Theodosia', 240, '36.58270', '-92.67570'), ('Thornfield', 240, '36.70860', '-92.65910'), ('Udall', 285, '36.54380', '-92.25860'), ('Wasola', 3021, '36.79350', '-92.57540'), ('Willhoit', 632, '36.68330', '-92.50660'), ('Zanoni', 632, '36.68600', '-92.33160')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC155': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bolton', 230, '36.31670', '-89.78330'), ('Bragg City', 189, '36.26840', '-89.91150'), ('Caruthersville', 6760, '36.17910', '-89.66510'), ('Cooter', 440, '36.04700', '-89.80970'), ('Deering', 189, '36.20000', '-89.88330'), ('Denton', 2263, '36.10000', '-89.88330'), ('Hayti', 3207, '36.23250', '-89.74850'), ('Hayti Heights', 771, '36.23220', '-89.76850'), ('Hayward', 123, '36.39610', '-89.66600'), ('Holland', 246, '36.05730', '-89.87040'), ('Homestown', 181, '36.33170', '-89.82460'), ('North Wardell', 170, '36.35780', '-89.81550'), ('Pascola', 138, '36.26610', '-89.82650'), ('Steele', 2263, '36.08500', '-89.84670'), ('Wardell', 278, '36.35070', '-89.81690')], 'partOfState': 'southeast', 'wfo': 'MEG'}, +'MOC157': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Altenburg', 309, '37.63130', '-89.58140'), ('Frohna', 192, '37.63650', '-89.62050'), ('Lithium', 0, '37.83220', '-89.88380'), ('Longtown', 76, '37.66980', '-89.77350'), ('Perryville', 7667, '37.72610', '-89.87220'), ('Silver Lake', 7667, '37.68360', '-89.99000')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC159': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Green Ridge', 445, '38.62020', '-93.40980'), ('Houstonia', 275, '38.89890', '-93.35980'), ('Hughesville', 174, '38.83790', '-93.29590'), ('La Monte', 1064, '38.77110', '-93.42250'), ('Sedalia', 20339, '38.70300', '-93.22800'), ('Sedalia Memorial Arpt', 0, '38.70900', '-93.17670'), ('Smithton', 510, '38.68160', '-93.09220')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOC161': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Beulah', 190, '37.62410', '-91.91680'), ('Doolittle', 644, '37.94020', '-91.88070'), ('Edgar Springs', 190, '37.70440', '-91.86630'), ('Jerome', 484, '37.92600', '-91.97740'), ('Newburg', 484, '37.91410', '-91.90250'), ('Northwye', 16367, '37.97490', '-91.75550'), ('Rolla', 16367, '37.95130', '-91.77100'), ('Rosati', 3704, '38.02690', '-91.53090'), ('St. James', 3704, '37.99710', '-91.61410')], 'partOfState': 'east central', 'wfo': 'SGF'}, +'MOC163': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Annada', 48, '39.26220', '-90.82850'), ('Ashburn', 51, '39.54630', '-91.17100'), ('Ashley', 3260, '39.24940', '-91.22230'), ('Bowling Green', 3260, '39.33900', '-91.19560'), ('Clarksville', 490, '39.37180', '-90.90560'), ('Curryville', 251, '39.34590', '-91.34250'), ('Cyrene', 3260, '39.28650', '-91.10780'), ('Edgewood', 435, '39.27130', '-91.07580'), ('Eolia', 435, '39.23990', '-91.01120'), ('Frankford', 351, '39.49320', '-91.32070'), ('Louisiana', 3863, '39.44350', '-91.05920'), ('New Hartford', 199, '39.20000', '-91.28300'), ('Paynesville', 91, '39.26220', '-90.89960'), ('Spencerburg', 251, '39.42180', '-91.38760'), ('St. Clement', 3260, '39.28300', '-91.20980')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOC165': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bean Lake', 0, '39.48770', '-95.01780'), ('Beverly', 0, '39.36760', '-94.87040'), ('Camden Point', 484, '39.45280', '-94.74220'), ('Dearborn', 529, '39.52490', '-94.76970'), ('Edgerton', 533, '39.50500', '-94.63060'), ('Farley', 226, '39.28230', '-94.83110'), ('Ferrelview', 593, '39.31120', '-94.66530'), ('Houston Lake', 284, '39.19170', '-94.62000'), ('Iatan', 54, '39.47520', '-94.98160'), ('Kansas City Intl Arpt', 0, '39.29770', '-94.71550'), ('Lake Waukomis', 917, '39.23030', '-94.63780'), ('Parkville', 4059, '39.19510', '-94.68200'), ('Platte City', 3866, '39.37030', '-94.78230'), ('Platte Woods', 474, '39.22930', '-94.64780'), ('Ridgely', 64, '39.45560', '-94.63950'), ('Riverside', 2979, '39.17750', '-94.61280'), ('Tracy', 213, '39.37860', '-94.79300'), ('Waldron', 0, '39.22290', '-94.79300'), ('Weatherby Lake', 1873, '39.23860', '-94.69760'), ('Weston', 1631, '39.41460', '-94.90140')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC167': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Aldrich', 75, '37.54740', '-93.55440'), ('Bolivar', 9143, '37.61440', '-93.41020'), ('Brighton', 548, '37.45770', '-93.34770'), ('Dunnegan', 418, '37.70800', '-93.57660'), ('Eudora', 75, '37.48240', '-93.53740'), ('Fair Play', 418, '37.62990', '-93.57290'), ('Flemington', 124, '37.80470', '-93.50110'), ('Goodson', 176, '37.70190', '-93.25130'), ('Half Way', 176, '37.61630', '-93.24440'), ('Humansville', 946, '37.79440', '-93.57770'), ('Morrisville', 344, '37.48100', '-93.42710'), ('Pleasant Hope', 548, '37.46300', '-93.27240'), ('Polk', 176, '37.72910', '-93.29910')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC169': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Crocker', 1033, '37.94880', '-92.26360'), ("Devil's Elbow", 2760, '37.84580', '-92.06360'), ('Dixon', 1570, '37.99160', '-92.09350'), ('Fort Leonard Wood', 13666, '37.70520', '-92.15800'), ('Laquey', 3507, '37.77020', '-92.30330'), ('Ozark Springs', 1805, '37.83960', '-92.33770'), ('Richland', 1805, '37.86110', '-92.39950'), ('St. Robert', 2760, '37.82790', '-92.17740'), ('Swedeborg', 1033, '37.91380', '-92.33160'), ('Waynesville', 3507, '37.82860', '-92.20050')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOC171': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Lemons', 0, '40.40530', '-93.04830'), ('Livonia', 114, '40.49160', '-92.69970'), ('Lucerne', 92, '40.46370', '-93.29160'), ('Powersville', 86, '40.54990', '-93.30080'), ('Unionville', 2041, '40.47570', '-93.00370'), ('Worthington', 89, '40.40810', '-92.68880')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC173': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Center', 644, '39.50980', '-91.52850'), ('Ilasco', 17757, '39.67150', '-91.31070'), ('New London', 1001, '39.58420', '-91.39880'), ('Perry', 666, '39.43000', '-91.66790'), ('Rensselaer', 145, '39.67070', '-91.54780'), ('Saverton', 514, '39.64380', '-91.26980'), ('Spaulding', 644, '39.61860', '-91.52660'), ('The Landing', 8, '39.55940', '-91.65900')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOC175': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cairo', 293, '39.51200', '-92.44070'), ('Clark', 275, '39.28060', '-92.34190'), ('Clifton Hill', 124, '39.43920', '-92.66710'), ('Higbee', 623, '39.30640', '-92.51220'), ('Huntsville', 1553, '39.44060', '-92.54500'), ('Jacksonville', 163, '39.58750', '-92.47280'), ('Moberly', 11945, '39.41970', '-92.43620'), ('Renick', 221, '39.34210', '-92.41070')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC177': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Camden', 209, '39.19720', '-94.01890'), ('Crystal Lakes', 383, '39.35820', '-94.19000'), ('Elmira', 82, '39.50830', '-94.15310'), ('Excelsior Estates', 263, '39.39020', '-94.20760'), ('Fleming', 122, '39.19290', '-94.06530'), ('Hardin', 614, '39.27090', '-93.83030'), ('Henrietta', 457, '39.23410', '-93.93800'), ('Homestead', 181, '39.36280', '-94.20190'), ('Knoxville', 0, '39.44600', '-94.01670'), ('Lawson', 2336, '39.43630', '-94.20390'), ('Orrick', 889, '39.21360', '-94.12520'), ('Rayville', 204, '39.34800', '-94.06360'), ('Richmond', 6116, '39.27870', '-93.97330'), ('Russellville', 0, '39.40650', '-93.82870'), ('Woods Heights', 742, '39.33950', '-94.16220')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOC179': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Black', 171, '37.53140', '-90.93320'), ('Centerville', 171, '37.43630', '-90.96030'), ('Corridon', 171, '37.38200', '-91.07230'), ('Ellington', 1045, '37.23540', '-90.97200'), ('Garwood', 845, '37.06700', '-90.90000'), ('Lesterville', 171, '37.45580', '-90.82530'), ('Oates', 171, '37.56700', '-91.05000'), ('Redford', 1045, '37.32010', '-90.89840'), ('Reynolds', 171, '37.40000', '-91.06700')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOC181': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Briar', 1932, '36.64350', '-90.96120'), ('Doniphan', 1932, '36.62290', '-90.82200'), ('Gatewood', 354, '36.56290', '-91.07400'), ('Naylor', 610, '36.57400', '-90.60530')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC183': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Augusta', 218, '38.57290', '-90.88280'), ('Cottleville', 1928, '38.75400', '-90.65380'), ('Dardenne Prairie', 4384, '38.75430', '-90.73210'), ('Defiance', 218, '38.63300', '-90.78300'), ('Flint Hill', 379, '38.85350', '-90.86350'), ('Foristell', 331, '38.81850', '-90.95990'), ('Harvester', 51381, '38.74970', '-90.57920'), ('Kampville', 60321, '38.85240', '-90.54730'), ('Lake St. Louis', 10169, '38.78900', '-90.78280'), ('Matson', 218, '38.60820', '-90.79710'), ('New Melle', 124, '38.71020', '-90.88030'), ("O'fallon", 46169, '38.78430', '-90.70790'), ('Orchard Farms', 918, '38.87980', '-90.44600'), ('Portage Des Sioux', 351, '38.92610', '-90.34190'), ('St. Charles', 60321, '38.79060', '-90.51640'), ('St. Paul', 1634, '38.84990', '-90.73660'), ('St. Peters', 51381, '38.77850', '-90.60530'), ('Weldon Spring', 5270, '38.71650', '-90.64900'), ('Wentzville', 6896, '38.81340', '-90.85950'), ('West Alton', 573, '38.86280', '-90.22380')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC185': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Appleton City', 1314, '38.19050', '-94.02910'), ('Collins', 176, '37.89100', '-93.62270'), ('Gerster', 35, '37.95330', '-93.57540'), ('Harper', 35, '38.06250', '-93.51820'), ('Iconium', 35, '38.10580', '-93.54440'), ('Johnson City', 1314, '38.11680', '-93.92770'), ('Lowry City', 728, '38.13990', '-93.72660'), ('Monegaw Springs', 112, '38.02910', '-93.83880'), ('Osceola', 835, '38.04660', '-93.70410'), ('Roscoe', 112, '37.97270', '-93.81190'), ('Taberville', 162, '38.00830', '-93.99440'), ('Tiffin', 3775, '37.95500', '-93.93800'), ('Vista', 55, '37.98830', '-93.66380')], 'partOfState': 'west central', 'wfo': 'SGF'}, +'MOC186': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bloomsdale', 419, '38.01140', '-90.21930'), ('Coffman', 362, '37.78300', '-90.20000'), ('Minnith', 377, '37.79820', '-90.05010'), ('River Aux Vases', 4476, '37.87220', '-90.11290'), ('Rocky Ridge', 362, '37.93340', '-90.24270'), ('Ste. Genevieve', 4476, '37.97490', '-90.04950'), ('St. Mary', 377, '37.87610', '-89.94870'), ('Weingarten', 362, '37.88300', '-90.21700'), ('Womac', 319, '37.68120', '-90.19650')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOC187': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bismarck', 1470, '37.76740', '-90.62270'), ('Blackwell', 6375, '38.04370', '-90.62400'), ('Bonne Terre', 4039, '37.92270', '-90.54980'), ('Desloge', 4802, '37.87380', '-90.52070'), ('Doe Run', 13924, '37.74290', '-90.50370'), ('Farmington', 13924, '37.78000', '-90.42590'), ('Frankclay', 1160, '37.86180', '-90.61510'), ('French Village', 362, '37.97260', '-90.38980'), ('Iron Mountain', 632, '37.69540', '-90.64040'), ('Knob Lick', 13924, '37.68300', '-90.38300'), ('Leadington', 206, '37.83430', '-90.48160'), ('Leadwood', 1160, '37.86220', '-90.58940'), ('Libertyville', 319, '37.70370', '-90.28820'), ('Park Hills', 7861, '37.84930', '-90.52660')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOC189': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Affton', 20535, '38.54950', '-90.32890'), ('Ballwin', 31283, '38.59410', '-90.55240'), ('Bellefontaine Neighbors', 11271, '38.75200', '-90.22690'), ('Bel-Ridge', 3082, '38.71410', '-90.32790'), ('Berkeley', 10063, '38.74330', '-90.33560'), ('Beverly Hills', 603, '38.69770', '-90.29040'), ('Black Jack', 6792, '38.79810', '-90.26360'), ('Brentwood', 7693, '38.61910', '-90.34860'), ('Bridgeton', 15550, '38.76630', '-90.42650'), ('Chesterfield', 46802, '38.65430', '-90.58120'), ('Clarkson Valley', 2675, '38.62500', '-90.59410'), ('Clayton', 12825, '38.64430', '-90.32860'), ('Cool Valley', 1081, '38.72480', '-90.30480'), ('Crestwood', 11863, '38.55560', '-90.38160'), ('Creve Coeur', 16500, '38.66050', '-90.43550'), ('Dellwood', 5255, '38.75520', '-90.27770'), ('Des Peres', 8592, '38.59600', '-90.44720'), ('Ellisville', 9104, '38.58910', '-90.58600'), ('Eureka', 7676, '38.50290', '-90.64270'), ('Fenton', 4360, '38.53610', '-90.45140'), ('Ferguson', 22406, '38.74880', '-90.29580'), ('Florissant', 50497, '38.79740', '-90.32430'), ('Frontenac', 3483, '38.63080', '-90.41600'), ('Glendale', 5767, '38.59300', '-90.38120'), ('Greendale', 722, '38.69150', '-90.31220'), ('Hazelwood', 26206, '38.77770', '-90.35960'), ('Hillsdale', 1477, '38.68510', '-90.28850'), ('Jennings', 15469, '38.72360', '-90.26450'), ('Kinloch', 449, '38.73810', '-90.32530'), ('Kirkwood', 27324, '38.58040', '-90.42010'), ('Ladue', 8645, '38.63680', '-90.38160'), ('Lakeshire', 1375, '38.54130', '-90.33700'), ('Lemay', 17215, '38.53180', '-90.28390'), ('Manchester', 19161, '38.59260', '-90.51480'), ('Maplewood', 9228, '38.61210', '-90.32430'), ('Maryland Heights', 25756, '38.72250', '-90.47740'), ('Mehlville', 28822, '38.50110', '-90.31570'), ('Normandy', 5153, '38.70770', '-90.30040'), ('Northwoods', 4643, '38.70320', '-90.28220'), ('Oakland', 1540, '38.57580', '-90.38440'), ('Oakville', 35309, '38.44410', '-90.31690'), ('Olivette', 7438, '38.67230', '-90.37720'), ('Overland', 16838, '38.69600', '-90.36820'), ('Peerless Park', 42, '38.54240', '-90.50110'), ('Richmond Heights', 9602, '38.63020', '-90.33170'), ('Riverview', 3146, '38.74930', '-90.21430'), ('Shrewsbury', 6644, '38.58700', '-90.32790'), ('Spanish Lake', 21337, '38.78690', '-90.20770'), ('St. Ann', 13607, '38.72590', '-90.38780'), ('St. John', 7690, '38.71450', '-90.34610'), ('Sunset Hills', 8267, '38.53730', '-90.41630'), ('Town And Country', 10894, '38.62470', '-90.47630'), ('University City', 37428, '38.66620', '-90.33110'), ('Uplands Park', 460, '38.69270', '-90.28250'), ('Valley Park', 6518, '38.55450', '-90.48240'), ('Warson Woods', 1983, '38.60690', '-90.39150'), ('Webster Groves', 23230, '38.58560', '-90.35460'), ('Wildwood', 9104, '38.58280', '-90.66280'), ('Woodson Terrace', 4189, '38.72840', '-90.36010')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC195': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arrow Rock', 79, '39.07000', '-92.94800'), ('Blackburn', 284, '39.10490', '-93.48610'), ('Gilliam', 229, '39.23280', '-93.00370'), ('Grand Pass', 53, '39.20520', '-93.44320'), ('Malta Bend', 249, '39.19430', '-93.36410'), ('Marshall', 12433, '39.12300', '-93.19670'), ('Miami', 160, '39.32170', '-93.22550'), ('Mount Leonard', 123, '39.12500', '-93.39280'), ('Nelson', 212, '38.99350', '-93.03030'), ('Slater', 2083, '39.21800', '-93.06470'), ('Sweet Springs', 1628, '38.96420', '-93.41640')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOC197': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Downing', 396, '40.48640', '-92.36850'), ('Glenwood', 203, '40.52360', '-92.57630'), ('Greentop', 427, '40.34690', '-92.56590'), ('Lancaster', 737, '40.52270', '-92.52780'), ('Queen City', 638, '40.41370', '-92.56660')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'MOC199': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arbela', 40, '40.46300', '-92.01600'), ('Azen', 40, '40.55500', '-92.03140'), ('Bible Grove', 159, '40.35020', '-92.30400'), ('Brock', 2061, '40.55080', '-92.15060'), ('Crawford', 396, '40.46670', '-92.27000'), ('Etna', 44, '40.41730', '-91.97410'), ('Granger', 44, '40.46750', '-91.97310'), ('Hitt', 2061, '40.55900', '-92.25140'), ('Indian Hills Conservation Area', 159, '40.31670', '-92.26670'), ('Kilwinning', 396, '40.51220', '-92.33940'), ('Memphis', 2061, '40.46090', '-92.16970'), ('Memphis Memorial Airport', 2061, '40.45900', '-92.21970'), ('Prospect Grove', 44, '40.51880', '-91.98520'), ('Rutledge', 103, '40.31300', '-92.08740'), ('Sand Hill', 103, '40.31200', '-92.11800'), ('South Gorin', 143, '40.36010', '-92.02410'), ('Spillman Mound', 159, '40.31790', '-92.17000')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'MOC201': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Benton', 732, '37.09800', '-89.56210'), ('Blodgett', 265, '37.00430', '-89.52620'), ('Chaffee', 3044, '37.18040', '-89.66130'), ('Commerce', 110, '37.15810', '-89.44660'), ('Diehlstadt', 163, '36.95940', '-89.43240'), ('Hay-Wood City', 239, '37.01180', '-89.60010'), ('Kelso', 527, '37.19010', '-89.55040'), ('Lambert', 49, '37.09360', '-89.55570'), ('Miner', 1056, '36.89380', '-89.53460'), ('Morley', 792, '37.04330', '-89.61260'), ('Oran', 1264, '37.08500', '-89.65290'), ('Scott City', 4591, '37.22250', '-89.53210'), ('Sikeston', 16992, '36.88020', '-89.58070'), ('Vanduser', 217, '36.99120', '-89.68650')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC203': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Akers', 544, '37.37600', '-91.55260'), ('Alley Spring', 548, '37.14410', '-91.44380'), ('Birch Tree', 634, '36.99100', '-91.49240'), ('Eminence', 548, '37.15050', '-91.35750'), ('Midridge', 427, '37.33520', '-91.22160'), ('Montier', 634, '36.98690', '-91.57520'), ('Round Spring', 548, '37.28040', '-91.41110'), ('Teresita', 2430, '36.98460', '-91.62850'), ('West Eminence', 548, '37.14020', '-91.37430'), ('Winona', 1290, '37.00970', '-91.32320')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOC205': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bethel', 121, '39.87820', '-92.02270'), ('Clarence', 915, '39.74300', '-92.26030'), ('Emden', 227, '39.79640', '-91.86280'), ('Hunnewell', 227, '39.66830', '-91.85890'), ('Leonard', 66, '39.89520', '-92.18070'), ('Maud', 915, '39.63340', '-92.19540'), ('Shelbina', 1943, '39.69230', '-92.03970'), ('Shelbyville', 682, '39.80710', '-92.03970')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOC207': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Advance', 1244, '37.10360', '-89.91450'), ('Baker', 5, '36.77360', '-89.76140'), ('Bell City', 461, '37.02380', '-89.81940'), ('Bernie', 1777, '36.67200', '-89.97050'), ('Bloomfield', 1952, '36.88860', '-89.93160'), ('Dexter', 7356, '36.79040', '-89.96030'), ('Dudley', 289, '36.78910', '-90.09140'), ('Essex', 524, '36.81200', '-89.86240'), ('Penermon', 75, '36.79330', '-89.82960'), ('Puxico', 1145, '36.95070', '-90.15900')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC209': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blue Eye', 129, '36.49910', '-93.39580'), ('Branson West', 0, '36.69600', '-93.36900'), ('Cape Fair', 451, '36.72990', '-93.51000'), ('Crane', 1390, '36.90520', '-93.57130'), ('Elsey', 1390, '36.85410', '-93.54050'), ('Galena', 451, '36.80520', '-93.46630'), ('Hurley', 157, '36.93130', '-93.49880'), ('Indian Point', 588, '36.64070', '-93.34690'), ('Kimberling City', 2253, '36.63330', '-93.41660'), ('Lampe', 129, '36.56360', '-93.43770'), ('Ponce De Leon', 465, '36.87570', '-93.35130'), ('Reeds Spring', 465, '36.74960', '-93.37770'), ('Silver Dollar City', 588, '36.66770', '-93.33940')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC211': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Green Castle', 274, '40.26150', '-92.87830'), ('Green City', 688, '40.26570', '-92.95310'), ('Harris', 105, '40.30640', '-93.35010'), ('Humphreys', 164, '40.12510', '-93.31840'), ('Milan', 1958, '40.20320', '-93.12390'), ('Newtown', 209, '40.37660', '-93.33280'), ('Osgood', 51, '40.19810', '-93.34700'), ('Pollock', 131, '40.35900', '-93.08410'), ('Reger', 0, '40.14400', '-93.19230'), ('Winigan', 0, '40.05000', '-92.90000')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOC213': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bradleyville', 359, '36.78350', '-92.90800'), ('Branson', 6050, '36.64350', '-93.21820'), ('Brownbranch', 359, '36.79440', '-92.83040'), ('Edgewater Beach', 1686, '36.66130', '-93.14160'), ('Forsyth', 1686, '36.68490', '-93.11960'), ('Hollister', 3867, '36.62100', '-93.21520'), ('Kirbyville', 3867, '36.62290', '-93.16380'), ('Kissee Mills', 359, '36.68350', '-93.04960'), ('Merriam Woods', 1142, '36.71380', '-93.16160'), ('Ozark Beach', 1686, '36.65880', '-93.13850'), ('Powersite', 1686, '36.65550', '-93.12100'), ('Protem', 601, '36.52880', '-92.85860'), ('Ridgedale', 207, '36.50380', '-93.22350'), ('Rockaway Beach', 577, '36.69910', '-93.15970'), ('Rueter', 601, '36.60830', '-92.86880'), ('Table Rock', 229, '36.60430', '-93.30030'), ('Taneyville', 359, '36.74130', '-93.03410'), ('Walnut Shade', 1142, '36.73240', '-93.19330')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC215': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arroll', 544, '37.10750', '-91.72630'), ('Bendavis', 4574, '37.29580', '-92.20720'), ('Bucyrus', 1992, '37.34410', '-92.01660'), ('Cabool', 2168, '37.12380', '-92.10110'), ('Clear Springs', 2147, '37.09600', '-91.85300'), ('Elk Creek', 2168, '37.18880', '-91.99690'), ('Eunice', 442, '37.24490', '-91.77930'), ('Hartshorn', 544, '37.26470', '-91.67020'), ('Hazelton', 1471, '37.52490', '-92.02460'), ('Houston', 1992, '37.32600', '-91.95580'), ('Huggins', 4574, '37.31990', '-92.19830'), ('Licking', 1471, '37.49940', '-91.85690'), ('Pine Crest', 544, '37.09190', '-91.65860'), ('Plato', 13666, '37.50360', '-92.22460'), ('Prescott', 1471, '37.43690', '-91.92130'), ('Raymondville', 442, '37.33960', '-91.83380'), ('Roby', 13666, '37.51550', '-92.13880'), ('Simmons', 1992, '37.23040', '-92.01520'), ('Solo', 1992, '37.23330', '-91.95300'), ('Success', 1992, '37.44350', '-92.08740'), ('Summersville', 544, '37.17910', '-91.65660'), ('Yukon', 442, '37.27290', '-91.84800')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOC217': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bronaugh', 245, '37.69410', '-94.46850'), ('Deerfield', 75, '37.83850', '-94.50580'), ('Harwood', 90, '37.95610', '-94.15410'), ('Horton', 67, '37.97460', '-94.36500'), ('Metz', 67, '37.99740', '-94.44300'), ('Milo', 84, '37.75610', '-94.30580'), ('Montevallo', 259, '37.72600', '-94.10800'), ('Moundville', 103, '37.76590', '-94.45120'), ('Nevada', 8607, '37.83910', '-94.35440'), ('Richards', 95, '37.90720', '-94.55690'), ('Schell City', 286, '38.01990', '-94.11550'), ('Sheldon', 529, '37.65800', '-94.29240'), ('Stotesbury', 43, '37.97180', '-94.56330'), ('Walker', 275, '37.89850', '-94.23180')], 'partOfState': 'west central', 'wfo': 'SGF'}, +'MOC219': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Dutzow', 13243, '38.60570', '-90.99460'), ('Holstein', 1867, '38.65540', '-91.17120'), ('Marthasville', 837, '38.62840', '-91.05330'), ('Treloar', 1867, '38.64450', '-91.18790'), ('Truesdale', 397, '38.81100', '-91.12510'), ('Warrenton', 5281, '38.82130', '-91.14010'), ('Wright City', 1532, '38.82760', '-91.02430')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC221': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anthonies Mill', 6351, '38.08300', '-91.08300'), ('Belgrade', 158, '37.78680', '-90.84940'), ('Cadet', 363, '37.98750', '-90.68840'), ('Caledonia', 158, '37.76360', '-90.77100'), ('Courtois', 825, '37.76700', '-91.08300'), ('Irondale', 437, '37.83420', '-90.67090'), ('Latty', 2662, '37.98230', '-90.89320'), ('Mineral Point', 363, '37.94510', '-90.72440'), ('Old Mines', 2662, '38.01700', '-90.76700'), ('Potosi', 2662, '37.93600', '-90.78210'), ('Richwoods', 280, '38.16700', '-90.83300'), ('Shirley', 2662, '37.91510', '-90.91930')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOC223': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Greenville', 451, '37.12690', '-90.44600'), ('Mill Spring', 219, '37.06470', '-90.68140'), ('Piedmont', 1992, '37.14780', '-90.69840'), ('Williamsville', 379, '36.97360', '-90.54810')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOC225': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Diggins', 298, '37.17240', '-92.85410'), ('Elkland', 1107, '37.44300', '-93.03070'), ('Fordland', 684, '37.15750', '-92.94050'), ('Marshfield', 5720, '37.33850', '-92.90690'), ('Niangua', 445, '37.38710', '-92.83240'), ('Northview', 5720, '37.28660', '-92.99630'), ('Rader', 743, '37.46020', '-92.71880'), ('Rogersville', 1508, '37.11680', '-93.05550'), ('Seymour', 1834, '37.14630', '-92.76850')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC227': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Allendale', 54, '40.48620', '-94.28870'), ('Denver', 40, '40.39900', '-94.32370'), ('Grant City', 926, '40.48600', '-94.41390'), ('Sheridan', 185, '40.51740', '-94.61460'), ('Worth', 94, '40.40550', '-94.44680')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOC229': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Dawson', 4574, '37.25690', '-92.30770'), ('Duncan', 1834, '37.28160', '-92.69160'), ('Graff', 4574, '37.31740', '-92.28240'), ('Grovespring', 42, '37.39960', '-92.60940'), ('Hartville', 607, '37.25080', '-92.51020'), ('Manes', 607, '37.37990', '-92.36660'), ('Mansfield', 1349, '37.10660', '-92.58040'), ('Mountain Grove', 4574, '37.13040', '-92.26330'), ('Norwood', 552, '37.10830', '-92.41470'), ('Odin', 607, '37.26820', '-92.61820')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOC510': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('St. Louis', 348189, '38.63600', '-90.24430')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MSC001': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Natchez', 18464, '31.54790', '-91.38860')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSC003': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Corinth', 14054, '34.93770', '-88.51680'), ('Glen', 14054, '34.86670', '-88.50000'), ('Hinkle', 330, '34.78330', '-88.56670'), ('Kossuth', 170, '34.87140', '-88.64410'), ('Leedy', 1034, '34.80000', '-88.36670'), ('Rienzi', 330, '34.76350', '-88.53130'), ('Theo', 170, '34.93330', '-88.70000'), ('Wenasoga', 497, '34.98330', '-88.58330')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC005': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Gillsberg', 2468, '31.02500', '-90.65580'), ('Gloster', 1073, '31.19460', '-91.01800'), ('Liberty', 633, '31.16020', '-90.80120'), ('Smithdale', 1037, '31.33940', '-90.68280')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSC007': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ethel', 452, '33.12190', '-89.46480'), ('Kosciusko', 7372, '33.05800', '-89.58820'), ('McCool', 182, '33.19830', '-89.34300'), ('Sallis', 114, '33.02170', '-89.76400')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC009': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ashland', 577, '34.83280', '-89.17660'), ('Canaan', 577, '34.93330', '-89.13330'), ('Hickory Flat', 565, '34.61520', '-89.18700'), ('Lamar', 167, '34.91670', '-89.31670'), ('Michigan City', 167, '34.98330', '-89.25000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC011': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Alligator', 220, '34.08980', '-90.72020'), ('Benoit', 611, '33.65150', '-91.00850'), ('Beulah', 473, '33.79040', '-90.98040'), ('Boyle', 720, '33.70380', '-90.72600'), ('Cleveland', 13841, '33.74320', '-90.72810'), ('Duncan', 578, '34.04350', '-90.74460'), ('Gunnison', 633, '33.94420', '-90.94680'), ('Merigold', 664, '33.83910', '-90.72690'), ('Mound Bayou', 2102, '33.88050', '-90.72790'), ('Pace', 364, '33.79210', '-90.85910'), ('Renova', 623, '33.78090', '-90.72260'), ('Rosedale', 2414, '33.85350', '-91.03220'), ('Shaw', 2312, '33.60030', '-90.77150'), ('Shelby', 2926, '33.95160', '-90.76570'), ('Winstonville', 319, '33.91140', '-90.75270')], 'partOfState': 'northwest', 'wfo': 'JAN'}, +'MSC013': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Banner', 2097, '34.10000', '-89.40000'), ('Big Creek', 127, '33.84330', '-89.41570'), ('Bruce', 2097, '33.99180', '-89.34490'), ('Calhoun City', 1872, '33.85930', '-89.31460'), ('Derma', 1023, '33.85450', '-89.28630'), ('Pittsboro', 212, '33.94130', '-89.33680'), ('Sabougla', 127, '33.76670', '-89.48330'), ('Slate Spring', 117, '33.74260', '-89.37310'), ('Vardaman', 1065, '33.88170', '-89.17860')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC015': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Carrollton', 408, '33.50490', '-89.92260'), ('North Carrollton', 499, '33.51820', '-89.91990'), ('Vaiden', 840, '33.33220', '-89.75250')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSC017': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Houlka', 552, '34.03330', '-89.01670'), ('Houston', 4079, '33.89620', '-89.00160'), ('New Houlka', 710, '34.03630', '-89.02000'), ('Okolona', 3056, '34.00560', '-88.75050'), ('Pyland', 1065, '33.88330', '-89.11670'), ('Trebloc', 4079, '33.83330', '-88.85000'), ('Woodland', 159, '33.78000', '-89.05010')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC019': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ackerman', 1696, '33.31070', '-89.17190'), ('French Camp', 393, '33.29210', '-89.39850'), ('Weir', 553, '33.26330', '-89.28940')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC021': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Port Gibson', 1840, '31.95510', '-90.98340')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSC023': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Enterprise', 474, '32.17490', '-88.81370'), ('Pachuta', 245, '32.04280', '-88.88440'), ('Quitman', 2463, '32.04130', '-88.72040'), ('Shubuta', 651, '31.86080', '-88.70240'), ('Stonewall', 1149, '32.13750', '-88.79590')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC025': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('West Point', 12145, '33.60650', '-88.64460')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'MSC027': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bobo', 220, '34.13330', '-90.68330'), ('Clarksdale', 20645, '34.20040', '-90.57670'), ('Coahoma', 325, '34.36590', '-90.52220'), ('Dublin', 1364, '34.08330', '-90.50000'), ('Friars Point', 1480, '34.36730', '-90.63810'), ('Jonestown', 1701, '34.32120', '-90.45430'), ('Kings', 1480, '34.30000', '-90.60000'), ('Lula', 370, '34.45480', '-90.47760'), ('Lyon', 418, '34.21710', '-90.54220'), ('Sherard', 220, '34.21670', '-90.71670')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC029': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Beauregard', 265, '31.72140', '-90.38800'), ('Crystal Springs', 5873, '31.98970', '-90.35500'), ('Georgetown', 344, '31.86980', '-90.16480'), ('Hazlehurst', 4400, '31.86480', '-90.39130'), ('Wesson', 1693, '31.70050', '-90.39670')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC031': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Collins', 2683, '31.63780', '-89.55780'), ('Mount Olive', 893, '31.75940', '-89.65620'), ('Seminary', 335, '31.55920', '-89.49530')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSC033': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Eudora', 87, '34.83330', '-90.15000'), ('Hernando', 6812, '34.82760', '-89.98690'), ('Hollywood', 35, '34.75000', '-90.20000'), ('Horn Lake', 14099, '34.95610', '-90.03530'), ('Lake Cormorant', 35, '34.90000', '-90.21670'), ('Lewisburg', 21054, '34.86670', '-89.81670'), ('Lynchburg', 2959, '34.96710', '-90.09450'), ('Memphis', 87, '34.92570', '-90.14090'), ('Newport', 35, '34.89320', '-90.22850'), ('Olive Branch', 21054, '34.95480', '-89.82900'), ('Southaven', 28977, '34.97440', '-89.99900'), ('Walls', 87, '34.95000', '-90.13330')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC035': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Hattiesburg', 44779, '31.31280', '-89.30690'), ('Petal', 7579, '31.34410', '-89.25140')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSC037': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bude', 1037, '31.46260', '-90.85120'), ('Meadville', 519, '31.47180', '-90.89300'), ('Roxie', 569, '31.50510', '-91.06720')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSC039': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Agricola', 2458, '30.80768', '-88.52002'), ('Avent', 603, '30.98169', '-88.77917'), ('Barton', 0, '30.77112', '-88.59808'), ('Benndale', 2458, '30.87170', '-88.80701'), ('Bexley', 2458, '30.96667', '-88.67419'), ('Central', 0, '30.88129', '-88.65417'), ('Crossroads', 0, '30.88531', '-88.71051'), ('Dale', 0, '30.83490', '-88.78308'), ('Dean Landing', 0, '30.78131', '-88.47241'), ('Evanston', 2458, '30.90747', '-88.56360'), ('Gibson Landing', 0, '30.76752', '-88.67029'), ('Howell', 0, '30.79388', '-88.42889'), ('Latonia', 0, '30.86108', '-88.42780'), ('Lucedale', 2458, '30.92151', '-88.59430'), ('Merrill', 2458, '30.97913', '-88.72058'), ('Movella', 494, '30.76410', '-88.50641'), ('Rock Creek', 0, '30.95288', '-88.53888'), ('Ruble', 0, '30.77350', '-88.87091'), ('Shipman', 494, '30.87750', '-88.47498'), ('Vaughn', 0, '30.85913', '-88.51562'), ('Ward', 0, '30.86688', '-88.54718'), ('Waters Landing', 0, '30.79071', '-88.46472')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSC041': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Avera', 1038, '31.29608', '-88.74139'), ('Benjoe', 0, '31.00189', '-88.77301'), ('Bothwell', 1038, '31.32770', '-88.74341'), ('Bradley', 0, '31.17529', '-88.67139'), ('Brown Town', 0, '31.07129', '-88.43671'), ('Byrd', 0, '31.22028', '-88.73981'), ('Carson City', 0, '31.36749', '-88.66388'), ('Clark', 0, '31.28833', '-88.57391'), ('Dueitt', 0, '31.15088', '-88.53448'), ('Hillman', 0, '31.13348', '-88.63281'), ('Jonathan', 1026, '31.22272', '-88.63751'), ('Kittrell', 977, '31.43048', '-88.56311'), ('Knobtown', 0, '31.37830', '-88.52338'), ('Leaf', 603, '31.02588', '-88.79559'), ('Leakesville', 1026, '31.15448', '-88.55823'), ('McLain', 603, '31.10370', '-88.82391'), ('Neely', 603, '31.16492', '-88.75482'), ('Old Avera', 0, '31.36108', '-88.56702'), ('Piave', 1038, '31.39429', '-88.74481'), ('Pisgah', 1026, '31.10449', '-88.48859'), ('Rounsaville', 1026, '31.16888', '-88.45691'), ('Royce', 603, '31.06250', '-88.80530'), ('Sand Hill', 1038, '31.34692', '-88.76361'), ('Vernal', 2458, '31.03851', '-88.61090')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSC043': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Grenada', 14879, '33.77820', '-89.81040')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSC045': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bay St. Louis', 8209, '30.31020', '-89.33000'), ('Diamondhead', 5912, '30.38360', '-89.36860'), ('Kiln', 2040, '30.41650', '-89.43420'), ('Pearlington', 1684, '30.24840', '-89.60120'), ('Waveland', 6674, '30.28630', '-89.38450')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSC047': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Gulfport', 71127, '30.38610', '-89.06770'), ('Long Beach', 17320, '30.36200', '-89.16730'), ('Lyman', 1081, '30.50120', '-89.13080'), ('Pass Christian', 6579, '30.31880', '-89.24170'), ('Saucier', 1303, '30.63570', '-89.13500')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'MSC049': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bolton', 629, '32.35260', '-90.45740'), ('Clinton', 23347, '32.33970', '-90.33490'), ('Edwards', 1347, '32.33230', '-90.60470'), ('Jackson', 184256, '32.32050', '-90.20760'), ('Learned', 50, '32.19770', '-90.54870'), ('Raymond', 1664, '32.26030', '-90.42270'), ('Terry', 664, '32.10280', '-90.29880'), ('Utica', 966, '32.10330', '-90.62210')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC051': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Cruger', 449, '33.32380', '-90.23490'), ('Durant', 2932, '33.08020', '-89.85650'), ('Goodman', 1252, '32.96790', '-89.91250'), ('Lexington', 2025, '33.11680', '-90.04920'), ('Pickens', 1325, '32.89090', '-89.96840'), ('Tchula', 2332, '33.18310', '-90.22260'), ('West', 220, '33.19810', '-89.78140')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC053': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Belzoni', 2663, '33.17930', '-90.48550'), ('Isola', 768, '33.26250', '-90.59170'), ('Louise', 315, '32.98260', '-90.59120'), ('Silver City', 337, '33.09630', '-90.49720')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC055': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Mayersville', 795, '32.89740', '-91.04490')], 'partOfState': 'west central', 'wfo': 'JAN'}, +'MSC057': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Evergreen', 1932, '34.16670', '-88.51670'), ('Fairview', 3882, '34.36670', '-88.31670'), ('Fulton', 3882, '34.26230', '-88.40170'), ('Mantachie', 1107, '34.32400', '-88.49300'), ('New Salem', 882, '34.15000', '-88.35000'), ('Sandy Springs', 248, '34.43330', '-88.38330'), ('Tremont', 390, '34.23350', '-88.24900')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC059': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Escatawpa', 3566, '30.48900', '-88.55120'), ('Gautier', 11681, '30.38890', '-88.63990'), ('Gulf Park Estates', 4272, '30.37920', '-88.75850'), ('Moss Point', 15851, '30.42550', '-88.52900'), ('Ocean Springs', 17225, '30.40610', '-88.80190'), ('Pascagoula', 26200, '30.36610', '-88.54730'), ('St. Martin', 6676, '30.43770', '-88.86820'), ('Vancleave', 4910, '30.54170', '-88.66710'), ('Wade', 491, '30.64220', '-88.56970')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSC061': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bay Springs', 2097, '31.98020', '-89.28410'), ('Heidelberg', 840, '31.89010', '-88.98800'), ('Louin', 339, '32.07250', '-89.26170'), ('Montrose', 127, '32.12440', '-89.23540')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC063': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Fayette', 2242, '31.71170', '-91.06170')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSC065': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bassfield', 315, '31.49730', '-89.74250'), ('Prentiss', 1158, '31.59630', '-89.87200')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSC067': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ellisville', 3465, '31.59870', '-89.20710'), ('Laurel', 18393, '31.69370', '-89.14470'), ('Sandersville', 789, '31.78760', '-89.03610'), ('Soso', 379, '31.75460', '-89.27640')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSC069': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('De Kalb', 972, '32.76850', '-88.65550'), ('Scooba', 632, '32.83140', '-88.47770')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC071': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Abbeville', 423, '34.50270', '-89.50220'), ('Burgess', 289, '34.35000', '-89.66670'), ('Cambridge', 423, '34.45000', '-89.36670'), ('Denmark', 189, '34.31670', '-89.35000'), ('Harmontown', 423, '34.53330', '-89.65000'), ('Oxford', 11756, '34.35980', '-89.52620'), ('Paris', 289, '34.18330', '-89.46770'), ('Springdale', 289, '34.23330', '-89.61670'), ('Taylor', 289, '34.27210', '-89.58240'), ('Tula', 189, '34.23330', '-89.36670')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC073': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Lumberton', 2228, '31.00420', '-89.45170'), ('Purvis', 2164, '31.14250', '-89.40880'), ('Sumrall', 1005, '31.41850', '-89.54650'), ('West Hattiesburg', 6305, '31.31880', '-89.37500')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSC075': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Collinsville', 1823, '32.49440', '-88.84250'), ('Marion', 1305, '32.42760', '-88.64830'), ('Meridian', 39968, '32.38090', '-88.71250'), ('Meridian Station', 1849, '32.54620', '-88.61760'), ('Nellieburg', 1354, '32.38720', '-88.78420')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC077': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Monticello', 1726, '31.55030', '-90.11270'), ('New Hebron', 447, '31.73290', '-89.98320'), ('Silver Creek', 209, '31.60330', '-90.00460')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSC079': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Carthage', 4637, '32.74400', '-89.53340'), ('Lena', 167, '32.59460', '-89.59350'), ('Redwater', 409, '32.78260', '-89.55060'), ('Standing Pine', 509, '32.67350', '-89.45150'), ('Walnut Grove', 488, '32.59780', '-89.45830')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC081': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Baldwyn', 3321, '34.50300', '-88.63370'), ('Blair', 1183, '34.45000', '-88.73330'), ('Guntown', 1183, '34.44490', '-88.66300'), ('Nettleton', 1932, '34.09130', '-88.61650'), ('Plantersville', 1144, '34.21150', '-88.66580'), ('Pratts Friendship', 3321, '34.45000', '-88.58330'), ('Saltillo', 3393, '34.38330', '-88.68910'), ('Shannon', 1657, '34.11370', '-88.69420'), ('Tupelo', 34211, '34.26350', '-88.73200'), ('Verona', 3334, '34.19020', '-88.71910')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC083': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Greenwood', 18425, '33.51780', '-90.19160'), ('Itta Bena', 2208, '33.49970', '-90.32500'), ('Morgan City', 305, '33.37890', '-90.34730'), ('Schlater', 388, '33.63910', '-90.34940'), ('Sidon', 672, '33.40740', '-90.20820')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSC085': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bogue Chitto', 1428, '31.43270', '-90.45080'), ('Brookhaven', 9861, '31.58340', '-90.44530')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSC087': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Artesia', 498, '33.41700', '-88.64290'), ('Caledonia', 1015, '33.68340', '-88.32600'), ('Columbus', 25944, '33.50500', '-88.40420'), ('Columbus AFB', 2060, '33.63450', '-88.44980'), ('Crawford', 655, '33.30270', '-88.62340'), ('New Hope', 1964, '33.44650', '-88.32490')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'MSC089': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Canton', 12911, '32.61070', '-90.03110'), ('Flora', 1546, '32.54740', '-90.31200'), ('Madison', 14692, '32.45340', '-90.10850'), ('Ridgeland', 20173, '32.42180', '-90.13120')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC091': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Columbia', 6603, '31.25660', '-89.82870')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSC093': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bethlehem', 494, '34.56670', '-89.33330'), ('Byhalia', 706, '34.86450', '-89.68740'), ('Holly Springs', 7957, '34.77270', '-89.44350'), ('Laws Hill', 423, '34.58330', '-89.58330'), ('Marianna', 7957, '34.71670', '-89.60000'), ('Mt Pleasant', 291, '34.95000', '-89.51670'), ('Potts Camp', 494, '34.64830', '-89.30690'), ('Red Banks', 706, '34.83330', '-89.58330'), ('Slayden', 384, '34.95000', '-89.45000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC095': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Aberdeen', 6415, '33.82850', '-88.55160'), ('Amory', 6956, '33.98790', '-88.48290'), ('Gattman', 114, '33.88550', '-88.23610'), ('Hatley', 476, '33.97720', '-88.41810'), ('New Wren', 1932, '33.96670', '-88.61670'), ('Prairie', 6415, '33.80000', '-88.66670'), ('Smithville', 882, '34.06700', '-88.39810')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC097': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Duck Hill', 746, '33.63140', '-89.71250'), ('Kilmichael', 830, '33.43900', '-89.56700'), ('Winona', 5482, '33.48940', '-89.72610')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSC099': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Pearl River', 3156, '32.78760', '-89.24280'), ('Philadelphia', 7303, '32.77400', '-89.10920'), ('Tucker', 534, '32.70750', '-89.04890')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC101': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Chunky', 344, '32.32710', '-88.92970'), ('Conehatta', 997, '32.45740', '-89.27110'), ('Decatur', 1426, '32.43820', '-89.11090'), ('Hickory', 499, '32.31650', '-89.02110'), ('Newton', 3699, '32.31970', '-89.15890'), ('Union', 2021, '32.57150', '-89.11630')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC103': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Brooksville', 1182, '33.23260', '-88.58260'), ('Macon', 2461, '33.11490', '-88.56120'), ('Shuqualak', 562, '32.97940', '-88.56870')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC105': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Maben', 803, '33.55400', '-89.08100'), ('Starkville', 21869, '33.45670', '-88.82220'), ('Sturgis', 206, '33.34390', '-89.04660')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'MSC107': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Batesville', 7113, '34.31950', '-89.93680'), ('Como', 1310, '34.51490', '-89.94000'), ('Courtland', 460, '34.24110', '-89.94250'), ('Crenshaw', 916, '34.50390', '-90.19470'), ('Curtis Station', 317, '34.33330', '-90.15000'), ('Endville', 7113, '34.31670', '-89.88330'), ('Glenville', 2038, '34.53330', '-89.75000'), ('Pleasant Grove', 916, '34.43330', '-90.10000'), ('Pope', 241, '34.21370', '-89.94760'), ('Sardis', 2038, '34.43470', '-89.91270')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC109': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Crossroads', 14280, '30.78250', '-89.77470'), ('McNeil', 10535, '30.66860', '-89.63830'), ('Picayune', 10535, '30.52870', '-89.67830'), ('Poplarville', 2601, '30.83800', '-89.53410')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSC111': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Barbara', 0, '30.99213', '-88.97839'), ('Batt Place', 0, '30.97552', '-88.97919'), ('Beaumont', 977, '31.17072', '-88.92511'), ('Belleville', 715, '31.21252', '-89.12640'), ('Benmore', 0, '31.24548', '-88.91779'), ('Brewer', 0, '31.37268', '-88.86639'), ('Corinth', 0, '31.34387', '-89.13971'), ('Deep Creek', 0, '30.91992', '-88.91638'), ('East Side', 0, '31.35492', '-88.91119'), ('Ferguson', 977, '31.19409', '-88.97559'), ('Good Hope', 0, '31.40448', '-88.94891'), ('Hercules Station', 0, '31.18073', '-88.93890'), ('Hintonville', 977, '31.26111', '-88.92200'), ('Indian Springs', 0, '31.29773', '-89.13782'), ('Janice', 715, '31.02551', '-89.03668'), ('Kittrell', 0, '31.20728', '-88.91339'), ('Little Creek', 0, '31.12750', '-88.85339'), ('Mahned', 715, '31.20911', '-89.08081'), ('McSwain', 0, '31.31470', '-88.97699'), ('New Augusta', 715, '31.20367', '-89.02759'), ('Oak Grove', 0, '31.03632', '-88.97418'), ('Progress', 0, '31.07629', '-88.85620'), ('Redhill', 0, '31.12988', '-89.06421'), ('Rhodes', 0, '31.43213', '-88.96558'), ('Richton', 1038, '31.34949', '-88.94061'), ('Runnelstown', 7579, '31.37567', '-89.11169'), ('Tallahala', 7579, '31.38647', '-89.12311'), ('Wingate', 715, '31.20270', '-89.00140')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSC113': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Magnolia', 2071, '31.15020', '-90.46070'), ('McComb', 13337, '31.24500', '-90.46520'), ('Osyka', 481, '31.00700', '-90.47110'), ('Summit', 1428, '31.28470', '-90.46620')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSC115': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Algoma', 508, '34.17880', '-89.03600'), ('Ecru', 947, '34.35620', '-89.02540'), ('Furrs', 548, '34.23330', '-88.86670'), ('Pontotoc', 5253, '34.24850', '-89.00670'), ('Randolph', 189, '34.18330', '-89.16670'), ('Sherman', 548, '34.35940', '-88.83870'), ('Thaxton', 513, '34.30820', '-89.17490'), ('Toccopola', 189, '34.25570', '-89.23440'), ('Troy', 5253, '34.16670', '-88.90000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC117': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Booneville', 8625, '34.66260', '-88.56770'), ('Burton', 106, '34.63330', '-88.33330'), ('Jumpertown', 404, '34.70640', '-88.66380'), ('Marietta', 248, '34.50090', '-88.47110'), ('Thrashers', 330, '34.70000', '-88.48330'), ('Wheeler', 8625, '34.58330', '-88.60000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC119': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Belen', 1551, '34.26670', '-90.35000'), ('Crowder', 766, '34.17300', '-90.13760'), ('Darling', 317, '34.35000', '-90.26670'), ('Denton', 1967, '34.15000', '-90.31670'), ('Falcon', 317, '34.39260', '-90.25550'), ('Lambert', 1967, '34.20200', '-90.28300'), ('Marks', 1551, '34.25380', '-90.27290'), ('Sledge', 529, '34.43250', '-90.22130'), ('Vance', 1967, '34.08330', '-90.30000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC121': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Brandon', 16436, '32.28050', '-90.00380'), ('Florence', 2396, '32.15480', '-90.12840'), ('Flowood', 4750, '32.32320', '-90.10570'), ('Pearl', 21961, '32.27180', '-90.10520'), ('Pelahatchie', 1461, '32.31540', '-89.80110'), ('Puckett', 354, '32.08440', '-89.77840'), ('Richland', 6027, '32.23320', '-90.16500')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC123': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Forest', 5987, '32.35690', '-89.47400'), ('Lake', 408, '32.34310', '-89.32740'), ('Morton', 3482, '32.35550', '-89.65640'), ('Sebastopol', 233, '32.56910', '-89.33380')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC125': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Anguilla', 907, '32.97210', '-90.82820'), ('Cary', 427, '32.80470', '-90.92590'), ('Rolling Fork', 2486, '32.90690', '-90.87700')], 'partOfState': 'west central', 'wfo': 'JAN'}, +'MSC127': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Braxton', 181, '32.02470', '-89.97220'), ("D'Lo", 394, '31.98650', '-89.90100'), ('Magee', 4200, '31.87120', '-89.73120'), ('Mendenhall', 2555, '31.96070', '-89.86940')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC129': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Mize', 285, '31.86720', '-89.55430'), ('Polkville', 132, '32.19150', '-89.69250'), ('Raleigh', 1255, '32.03040', '-89.52360'), ('Sylvarena', 120, '32.01300', '-89.38040'), ('Taylorsville', 1341, '31.83100', '-89.43200')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSC131': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Beatrice', 3849, '30.73907', '-88.94702'), ('Big Level', 0, '30.81171', '-89.05139'), ('Bond', 0, '30.89429', '-89.16870'), ('India', 0, '30.81708', '-89.11121'), ('McHenry', 3849, '30.70770', '-89.13843'), ('Perkinston', 3849, '30.78210', '-89.13812'), ('Perry', 3849, '30.72089', '-89.14142'), ('Ramsey Springs', 3849, '30.77087', '-88.91479'), ('Smith Town', 0, '30.80811', '-89.31262'), ('Ten Mile', 3849, '30.76550', '-89.14368'), ('Texas', 0, '30.88611', '-89.27191'), ('Whites Crossing', 3849, '30.84833', '-89.04028'), ('Wiggins', 3849, '30.85571', '-89.13849'), ('Wlox Tv Station Tower', 3849, '30.72388', '-89.09131')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSC133': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Doddsville', 108, '33.65850', '-90.52440'), ('Drew', 2434, '33.80980', '-90.53040'), ('Indianola', 12066, '33.44860', '-90.64480'), ('Inverness', 1153, '33.35400', '-90.59070'), ('Moorhead', 2573, '33.44920', '-90.50680'), ('Ruleville', 3234, '33.72500', '-90.55010'), ('Sunflower', 696, '33.54660', '-90.53840')], 'partOfState': 'northwest', 'wfo': 'JAN'}, +'MSC135': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Brazil', 587, '34.03330', '-90.28330'), ('Charleston', 2198, '34.00740', '-90.05510'), ('Enid', 586, '34.11670', '-89.95000'), ('Glendora', 285, '33.82850', '-90.29210'), ('Paynes', 2198, '33.91670', '-90.06670'), ('Sumner', 407, '33.96980', '-90.36950'), ('Tutwiler', 1364, '34.01180', '-90.42990'), ('Webb', 587, '33.94800', '-90.34620')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC137': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Arkabutla', 1674, '34.70000', '-90.13330'), ('Barr', 1310, '34.61670', '-89.78330'), ('Coldwater', 1674, '34.69020', '-89.97540'), ('Independence', 1674, '34.70000', '-89.80000'), ('Phillipp', 35, '34.73330', '-90.18330'), ('Senatobia', 6682, '34.61750', '-89.97210'), ('Strayhorn', 916, '34.62670', '-90.15000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC139': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Blue Mountain', 670, '34.67100', '-89.02720'), ('Dumas', 452, '34.63530', '-88.83700'), ('Falkner', 212, '34.84750', '-88.93190'), ('Gravestown', 670, '34.75000', '-89.08330'), ('Ripley', 5478, '34.72960', '-88.94440'), ('Walnut', 754, '34.94850', '-88.90010')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC141': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Belmont', 1961, '34.50700', '-88.20800'), ('Burnsville', 1034, '34.84200', '-88.31600'), ('Golden', 201, '34.48520', '-88.18610'), ('Iuka', 3059, '34.80800', '-88.19730'), ('Midway', 106, '34.73330', '-88.23330'), ('Paden', 106, '34.66460', '-88.26460'), ('Pineflat', 1034, '34.98330', '-88.26670'), ('Tishomingo', 316, '34.63650', '-88.22990')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC143': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Dubbs', 1132, '34.56670', '-90.36670'), ('Dundee', 370, '34.51670', '-90.45000'), ('Little Texas', 1132, '34.62670', '-90.28330'), ('North Tunica', 1450, '34.70090', '-90.37810'), ('Prichard', 1450, '34.71670', '-90.23330'), ('Robinsonville', 298, '34.81670', '-90.31670'), ('Tunica', 1132, '34.68820', '-90.38150')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC145': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Blue Springs', 144, '34.40290', '-88.87280'), ('Etta', 407, '34.46670', '-89.20000'), ('Keownville', 452, '34.55000', '-88.91670'), ('Myrtle', 407, '34.55930', '-89.11580'), ('New Albany', 7607, '34.49060', '-89.02070'), ('New Harmony', 144, '34.40000', '-88.91670'), ('Pinedale', 513, '34.41670', '-89.20000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSC147': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Dexter', 1910, '31.07420', '-89.99280'), ('Salem', 1910, '31.22970', '-90.11720'), ('Tylertown', 1910, '31.11690', '-90.14250')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSC149': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Vicksburg', 26407, '32.32910', '-90.87080')], 'partOfState': 'west central', 'wfo': 'JAN'}, +'MSC151': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Arcola', 563, '33.27110', '-90.88030'), ('Greenville', 41633, '33.38540', '-91.05190'), ('Hollandale', 3437, '33.17440', '-90.85320'), ('Leland', 5502, '33.40470', '-90.89990'), ('Metcalfe', 1109, '33.45010', '-91.00230')], 'partOfState': 'northwest', 'wfo': 'JAN'}, +'MSC153': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Battles', 555, '31.50189', '-88.50952'), ('Belmont', 603, '31.56891', '-88.48389'), ('Boice', 5197, '31.74768', '-88.65479'), ('Buckatunna', 555, '31.54871', '-88.53491'), ('Chicora', 5197, '31.56390', '-88.57532'), ('Clara', 5197, '31.57990', '-88.69232'), ('Denham', 5197, '31.65369', '-88.52551'), ('Eret', 2458, '31.47028', '-88.48218'), ('Eucutta', 840, '31.80530', '-88.87231'), ('Gretna', 5197, '31.75970', '-88.50201'), ('Henderson', 56255, '31.44891', '-88.77368'), ('Hiwannee', 651, '31.81030', '-88.69061'), ('Hollis Creek', 0, '31.53113', '-88.83368'), ('Lightsey', 0, '31.73572', '-88.93591'), ('Matherville', 651, '31.86572', '-88.56561'), ('Mulberry', 1038, '31.47711', '-88.84778'), ('Pineview', 0, '31.72632', '-88.94281'), ('Pleasant Grove', 0, '31.70972', '-88.92279'), ('Robinsons Junction', 5197, '31.57471', '-88.55920'), ('Smithtown', 555, '31.43750', '-88.71588'), ('State Line', 555, '31.43610', '-88.47388'), ('Strengthford', 789, '31.61389', '-88.88483'), ('Tokio', 0, '31.74487', '-88.54810'), ('Waynesboro', 5197, '31.67749', '-88.63531'), ('West King', 0, '31.75067', '-88.70093'), ('Whistler', 5197, '31.69708', '-88.80450'), ('Winchester', 5197, '31.61768', '-88.59058'), ('Woodwards', 5197, '31.69391', '-88.66388')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSC155': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Eupora', 2326, '33.54390', '-89.27780'), ('Mantee', 169, '33.73050', '-89.06000'), ('Mathiston', 720, '33.53970', '-89.12830'), ('Walthall', 170, '33.60800', '-89.27600')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSC157': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Centreville', 1680, '31.08640', '-91.06580'), ('Crosby', 360, '31.27860', '-91.06140'), ('Dolorosa', 1192, '31.30500', '-91.35940'), ('Fort Adams', 1192, '31.08640', '-91.54810'), ('Woodville', 1192, '31.10330', '-91.29880')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSC159': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Louisville', 7006, '33.12280', '-89.05460'), ('Noxapater', 419, '32.99280', '-89.06350')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSC161': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Coffeeville', 930, '33.97670', '-89.67750'), ('Oakland', 586, '34.05310', '-89.91460'), ('Scobey', 121, '33.93330', '-89.88330'), ('Tillatoba', 121, '33.98490', '-89.89570'), ('Velma', 930, '34.06670', '-89.65000'), ('Water Valley', 3677, '34.16160', '-89.63030')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSC163': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bentonia', 500, '32.64730', '-90.37020'), ('Eden', 126, '32.98570', '-90.32320'), ('Satartia', 68, '32.67100', '-90.54390'), ('Yazoo City', 14550, '32.86140', '-90.40770')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MTC001': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bannack', 3752, '45.16110', '-112.99470'), ('Dell', 242, '44.71880', '-112.69640'), ('Dewey', 33892, '45.77720', '-112.85420'), ('Dillon', 3752, '45.21610', '-112.63450'), ('Glen', 3752, '45.47670', '-112.68970'), ('Grant', 74, '45.00860', '-113.06610'), ('Jackson', 2941, '45.36810', '-113.40810'), ('Lakeview', 11, '44.59940', '-111.80970'), ('Lima', 242, '44.63840', '-112.59140'), ('Monida', 11, '44.56190', '-112.31280'), ('Polaris', 3752, '45.36970', '-113.11860'), ('Wisdom', 9417, '45.61810', '-113.45000'), ('Wise River', 9417, '45.79140', '-112.94860')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTC003': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Aberdeen', 0, '45.05436', '-107.35406'), ('Busby', 695, '45.53088', '-106.95740'), ('Corinth', 0, '45.85564', '-107.96452'), ('Crow Agency', 1552, '45.59660', '-107.46163'), ('Decker', 0, '45.01153', '-106.86342'), ('Fort Smith', 0, '45.31249', '-107.93556'), ('Garryowen', 0, '45.52953', '-107.41921'), ('Hardin', 3384, '45.73132', '-107.61344'), ('Kirby', 0, '45.30000', '-106.98330'), ('Lodge Grass', 510, '45.31453', '-107.36256'), ('Muddy', 0, '45.60861', '-106.79339'), ('Pryor', 628, '45.41002', '-108.53256'), ('Quietus', 0, '45.09639', '-106.28250'), ('Rosebud Battlefield Park', 0, '45.22640', '-106.99780'), ('St. Xavier', 0, '45.46114', '-107.72650'), ('Tongue River Reservoir Pk', 0, '45.08240', '-106.80560'), ('Wyola', 0, '45.12957', '-107.39369')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTC005': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Chinook', 1386, '48.59040', '-109.23120'), ('Fort Belknap', 422, '48.48310', '-108.76630'), ('Harlem', 848, '48.53180', '-108.78370'), ('Hays', 702, '47.99050', '-108.64940'), ('Hogeland', 848, '48.85250', '-108.65810'), ('Lloyd', 1386, '48.29030', '-109.36140'), ('Lodge Pole', 702, '48.03470', '-108.53250'), ('Turner', 122, '48.84360', '-108.40640'), ('Zurich', 1386, '48.58440', '-109.02970')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC007': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Radersburg', 70, '46.19580', '-111.63110'), ('Toston', 1867, '46.19280', '-111.44030'), ('Townsend', 1867, '46.31890', '-111.51920'), ('Winston', 1867, '46.47670', '-111.65810')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTC009': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Alpine', 0, '45.19758', '-109.63740'), ('Bearcreek', 0, '45.16660', '-109.16660'), ('Bearcreek', 83, '45.16060', '-109.15700'), ('Belfry', 0, '45.14191', '-109.00579'), ('Boyd', 0, '45.45783', '-109.06667'), ('Bridger', 745, '45.29362', '-108.91407'), ('Cooney Reservoir St Park', 0, '45.44380', '-109.21700'), ('East Bridger', 0, '45.26660', '-108.91660'), ('Edgar', 0, '45.46457', '-108.85098'), ('Fox', 0, '45.27599', '-109.21804'), ('Fromberg', 486, '45.39178', '-108.90726'), ('Joliet', 575, '45.48460', '-108.97060'), ('Luther', 0, '45.28410', '-109.42903'), ('Red Lodge', 2177, '45.19486', '-109.24667'), ('Roberts', 0, '45.35881', '-109.16855'), ('Rockvale', 0, '45.52228', '-108.86187'), ('Roscoe', 0, '45.35088', '-109.49554'), ('Silesia', 0, '45.55666', '-108.84120'), ('Warren', 0, '45.05997', '-108.65839'), ('Washoe', 0, '45.16244', '-109.21171')], 'partOfState': '', 'wfo': 'BYZ'}, +'MTC011': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Albion', 0, '45.18695', '-104.27574'), ('Alzada', 0, '45.02323', '-104.41536'), ('Belltower', 0, '45.63937', '-104.37466'), ('Boyes', 0, '45.26873', '-105.03065'), ('Capitol', 0, '45.43365', '-104.06644'), ('Ekalaka', 410, '45.88869', '-104.55057'), ('Hammond', 0, '45.22523', '-104.91605'), ('Medicine Rocks St Park', 0, '46.04000', '-104.48000'), ('Mill Iron', 0, '45.85336', '-104.21742'), ('Ridge', 0, '45.04701', '-105.02048'), ('Ridgeway', 0, '45.48290', '-104.50936')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTC013': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Belt', 633, '47.38600', '-110.92580'), ('Black Eagle', 914, '47.52470', '-111.27750'), ('Cascade', 819, '47.27070', '-111.70250'), ('Centerville', 4544, '47.38970', '-111.14190'), ('Fort Shaw', 274, '47.50560', '-111.80940'), ('Great Falls', 56690, '47.50480', '-111.29060'), ('Malmstrom AFB', 4544, '47.50940', '-111.19070'), ('Monarch', 91, '47.09830', '-110.83780'), ('Neihart', 91, '46.93350', '-110.73570'), ('Sand Coulee', 4544, '47.39940', '-111.16690'), ('Simms', 659, '47.49170', '-111.92720'), ('Stockett', 4544, '47.35670', '-111.16440'), ('Sun Prairie', 1772, '47.53690', '-111.48060'), ('Sun River', 1772, '47.53330', '-111.72060'), ('Tracy', 4544, '47.41310', '-111.15330'), ('Ulm', 1772, '47.43150', '-111.50640'), ('Vaughn', 1772, '47.56060', '-111.54500')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTC015': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Big Sandy', 703, '48.17890', '-110.11290'), ('Carter', 1594, '47.78110', '-110.95560'), ('Floweree', 4544, '47.72970', '-111.02670'), ('Fort Benton', 1594, '47.82860', '-110.65510'), ('Geraldine', 284, '47.60350', '-110.26590'), ('Highwood', 189, '47.58360', '-110.78940'), ('Iliad', 156, '47.79860', '-109.78530'), ('Loma', 92, '47.93690', '-110.50280'), ('Square Butte', 284, '47.51500', '-110.19750'), ('The Knees', 389, '48.02000', '-111.28330')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC017': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bonfield', 0, '46.62500', '-105.57300'), ('Garland', 0, '46.04686', '-105.92610'), ('Horton', 0, '46.34138', '-106.06191'), ('Ismay', 26, '46.50068', '-104.79458'), ('Kinsey', 0, '46.57082', '-105.65720'), ('Knowlton', 0, '46.34338', '-105.08769'), ('Locate', 0, '46.43330', '-105.30000'), ('Miles City', 8487, '46.40839', '-105.84078'), ('Mizpah', 0, '46.24484', '-105.26721'), ('Murn', 0, '46.43330', '-105.73330'), ('Paragon', 0, '46.36441', '-106.00950'), ('Sheffield', 0, '46.33266', '-106.13845'), ('Shirley', 0, '46.58428', '-105.57247'), ('Tusler', 0, '46.48435', '-105.74902'), ('Ulmer', 0, '46.35226', '-105.92098'), ('Volborg', 0, '45.84077', '-105.68074')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTC019': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Flaxville', 87, '48.80380', '-105.17220'), ('Four Buttes', 1082, '48.80970', '-105.60580'), ('Madoc', 87, '48.81080', '-105.28520'), ('Navajo', 87, '48.79220', '-105.05970'), ('Peerless', 1082, '48.78250', '-105.83050'), ('Port Of Scobey', 1082, '48.99940', '-105.40660'), ('Port Of Whitetail', 87, '48.99910', '-105.16130'), ('Scobey', 1082, '48.79250', '-105.42020'), ('West Fork', 1082, '48.68690', '-105.91110'), ('Whitetail', 87, '48.89500', '-105.16270')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC021': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bloomfield', 189, '47.41270', '-104.91660'), ('Forest Park', 4729, '47.10470', '-104.75770'), ('Glendive', 4729, '47.10520', '-104.71190'), ('Hodges', 567, '46.98360', '-104.38720'), ('Hoyt', 4729, '46.92970', '-104.85410'), ('Intake', 4729, '47.29380', '-104.52130'), ('Lindsay', 189, '47.21880', '-105.15330'), ('Marsh', 4729, '46.88970', '-104.93250'), ('Richey', 189, '47.64380', '-105.07440'), ('Stipek', 4729, '47.21220', '-104.66440')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC023': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Anaconda', 9417, '46.12861', '-112.94139'), ('Crackerville', 33892, '46.06472', '-112.80417'), ('Fishtrap', 9417, '45.87222', '-113.22861'), ('Galen', 3421, '46.23556', '-112.77528'), ('Georgetown', 914, '46.19944', '-113.24556'), ('Lost Creek', 9417, '46.17583', '-112.94833'), ('Opportunity', 9417, '46.10722', '-112.82722'), ('Warm Springs', 3421, '46.18139', '-112.78389'), ('West Valley', 9417, '46.15194', '-113.02167')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTC025': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Baker', 1695, '46.36790', '-104.27545'), ('Ollie', 0, '46.58362', '-104.08125'), ('Plevna', 138, '46.41498', '-104.51757'), ('Webster', 0, '46.05464', '-104.24614'), ('Westmore', 0, '46.47408', '-104.64257'), ('Willard', 0, '46.19419', '-104.36841')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTC027': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Buffalo', 164, '46.82110', '-109.82780'), ('Christina', 156, '47.38190', '-109.32330'), ('Coffee Creek', 301, '47.34780', '-110.08080'), ('Danvers', 186, '47.22520', '-109.71640'), ('Denton', 301, '47.32310', '-109.94890'), ('Fergus', 156, '47.33080', '-109.06640'), ('Forestgrove', 149, '46.99140', '-109.07940'), ('Garneill', 164, '46.75250', '-109.75190'), ('Grass Range', 149, '47.02680', '-108.80280'), ('Hilger', 5813, '47.25390', '-109.35920'), ('Lewistown', 5813, '47.06360', '-109.42770'), ('Moore', 186, '46.97490', '-109.69490'), ('Roy', 149, '47.33140', '-108.95920'), ('Suffolk', 156, '47.46690', '-109.35500'), ('Winifred', 156, '47.56150', '-109.37530')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTC029': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Apgar', 3645, '48.52778', '-113.99222'), ('Bigfork', 1421, '48.06333', '-114.07167'), ('Blacktail', 396, '48.27694', '-113.44722'), ('Columbia Falls', 3645, '48.37250', '-114.18056'), ('Coram', 3645, '48.41806', '-114.04528'), ('Creston', 6215, '48.18944', '-114.13639'), ('Essex', 396, '48.27806', '-113.61167'), ('Evergreen', 6215, '48.22570', '-114.27500'), ('Hungry Horse', 934, '48.38583', '-114.06000'), ('Kalispell', 14223, '48.19583', '-114.31194'), ('Kila', 14223, '48.12028', '-114.45583'), ('Lake Mcdonald', 3645, '48.62083', '-113.87083'), ('Lakeside', 14223, '48.01944', '-114.22361'), ('La Salle', 3645, '48.31306', '-114.24306'), ('Logan Pass', 396, '48.69500', '-113.72000'), ('Lupfer', 5032, '48.48361', '-114.51028'), ('Marion', 14223, '48.10556', '-114.66222'), ('Martin City', 331, '48.39167', '-114.03722'), ('Niarada', 50, '47.81417', '-114.60361'), ('Nyack', 3645, '48.43944', '-113.80472'), ('Olney', 5032, '48.54861', '-114.57722'), ('Pinnacle', 396, '48.35611', '-113.65222'), ('Polebridge', 5032, '48.76528', '-114.28417'), ('Radnor', 5032, '48.61000', '-114.65972'), ('Somers', 14223, '48.08028', '-114.22056'), ('Trailcreek', 5032, '48.91917', '-114.40639'), ('West Glacier', 3645, '48.50000', '-113.97778'), ('Whitefish', 5032, '48.41111', '-114.33667')], 'partOfState': 'northwest', 'wfo': 'MSO'}, +'MTC031': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Amsterdam', 1396, '45.75810', '-111.31920'), ('Belgrade', 5728, '45.77790', '-111.17740'), ('Big Sky', 1221, '45.26390', '-111.33060'), ('Bozeman', 27509, '45.67690', '-111.04250'), ('Bozeman Hot Springs', 5728, '45.65000', '-111.18330'), ('Church Hill', 1396, '45.75080', '-111.30360'), ('Gallatin Gateway', 27509, '45.59170', '-111.19690'), ('Logan', 1396, '45.88440', '-111.42670'), ('Manhattan', 1396, '45.85740', '-111.33020'), ('Maudlow', 1396, '46.10780', '-111.17220'), ('Three Forks', 1728, '45.88940', '-111.55370'), ('Trident', 1728, '45.94750', '-111.47580'), ('West Yellowstone', 1177, '44.66460', '-111.10670'), ('Willow Creek', 1728, '45.82530', '-111.64390')], 'partOfState': 'south central', 'wfo': 'TFX'}, +'MTC033': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Brusett', 364, '47.42520', '-107.26610'), ('Cohagen', 364, '47.05440', '-106.61690'), ('Devils Creek Rec Area', 2120, '47.61830', '-107.65000'), ('Edwards', 364, '47.14020', '-107.33300'), ('Haxby', 240, '47.77000', '-106.42660'), ('Hell Creek Rec Area', 364, '47.61580', '-106.88720'), ('Hillside', 364, '46.91110', '-106.39940'), ('Jordan', 364, '47.32080', '-106.90940'), ('Mosby', 136, '46.99220', '-107.88300'), ('Sand Springs', 364, '47.10080', '-107.48500'), ('Steve Forks', 364, '47.27080', '-107.33330'), ('Van Norman', 364, '47.35330', '-106.38660')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC035': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Babb', 248, '48.86030', '-113.43580'), ('Browning', 1065, '48.55670', '-113.01370'), ('Cut Bank', 3105, '48.63480', '-112.33020'), ('East Glacier Park', 396, '48.44710', '-113.22230'), ('Kiowa', 396, '48.52000', '-113.31000'), ('Saint Mary', 248, '48.74390', '-113.42860'), ('Santa Rita', 3105, '48.77060', '-112.31920')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC037': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Barber', 0, '46.31487', '-109.38392'), ('Belmont', 0, '46.22834', '-108.98918'), ('Cushman', 0, '46.28889', '-109.04135'), ('Franklin', 0, '46.37103', '-109.26751'), ('Lavina', 209, '46.29561', '-108.93798'), ('Ryegate', 268, '46.29767', '-109.25650')], 'partOfState': 'central', 'wfo': 'BYZ'}, +'MTC039': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bearmouth', 318, '46.71028', '-113.33056'), ('Drummond', 318, '46.66750', '-113.14639'), ('Garnet', 318, '46.82528', '-113.33806'), ('Hall', 318, '46.58528', '-113.19583'), ('Maxville', 914, '46.46472', '-113.23333'), ('New Chicago', 318, '46.62694', '-113.14139'), ('Nimrod', 318, '46.70028', '-113.47639'), ('Philipsburg', 914, '46.33222', '-113.29333'), ('Porters Corner', 914, '46.25194', '-113.33111'), ('Princeton', 914, '46.41694', '-113.16472'), ('Quigley', 1693, '46.61222', '-113.64750')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTC041': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Box Elder', 703, '48.31720', '-110.01250'), ('Gildford', 185, '48.56940', '-110.29890'), ('Havre', 9621, '48.54380', '-109.67910'), ('Hingham', 157, '48.55560', '-110.42070'), ('Inverness', 103, '48.55670', '-110.68330'), ('Kremlin', 157, '48.56970', '-110.08580'), ('Rocky Boy', 9621, '48.25610', '-109.78750'), ('Rudyard', 275, '48.56000', '-110.55330')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC043': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Basin', 255, '46.27140', '-112.26280'), ('Boulder', 1300, '46.23610', '-112.11950'), ('Cardwell', 40, '45.86000', '-111.95170'), ('Clancy', 1406, '46.46530', '-111.98560'), ('Corbin', 1300, '46.38060', '-112.06110'), ('Montana City', 2094, '46.53780', '-111.93190'), ('Whitehall', 1044, '45.87140', '-112.09590'), ('Wickes', 1300, '46.34970', '-112.10250')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTC045': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Benchland', 244, '47.07940', '-110.01750'), ('Geyser', 454, '47.27380', '-110.49250'), ('Hobson', 244, '46.99890', '-109.87320'), ('Moccasin', 244, '47.05330', '-109.90970'), ('Raynesford', 633, '47.27000', '-110.72920'), ('Stanford', 454, '47.15200', '-110.21840'), ('Utica', 244, '46.96830', '-110.09170'), ('Windham', 454, '47.07860', '-110.13970')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTC047': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Allentown', 80, '47.44056', '-114.09556'), ('Arlee', 602, '47.16194', '-114.08417'), ('Big Arm', 131, '47.79806', '-114.29389'), ('Charlo', 439, '47.43861', '-114.17139'), ('Dayton', 95, '47.86583', '-114.27806'), ('Elmo', 143, '47.83056', '-114.34861'), ('Finley Point', 493, '47.73820', '-114.06240'), ('Fort Connah', 80, '47.40556', '-114.08722'), ('Kicking Horse', 80, '47.46060', '-114.07420'), ('Lake Mary Ronan', 14223, '47.94306', '-114.39361'), ('Moiese', 439, '47.37056', '-114.26500'), ('Pablo', 1814, '47.60028', '-114.11806'), ('Polson', 4041, '47.69361', '-114.16222'), ('Proctor', 4041, '47.89250', '-114.30444'), ('Ravalli', 119, '47.27722', '-114.17972'), ('Rollins', 183, '47.90611', '-114.19750'), ('Ronan', 1812, '47.52889', '-114.10056'), ('Round Butte', 439, '47.52972', '-114.26267'), ('Saint Ignatius', 788, '47.32000', '-114.09306'), ('Salmon Prairie', 493, '47.63000', '-113.78444'), ('Swan Lake', 493, '47.92917', '-113.84389'), ('Woods Bay', 493, '48.00167', '-114.04944')], 'partOfState': 'northwest', 'wfo': 'MSO'}, +'MTC049': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Augusta', 284, '47.49280', '-112.39140'), ('Canyon Creek', 2082, '46.80560', '-112.26360'), ('Craig', 819, '47.07440', '-111.96250'), ('East Helena', 1642, '46.58830', '-111.91800'), ('Helena', 25780, '46.59650', '-112.02040'), ('Lincoln', 1100, '46.95500', '-112.68080'), ('Marysville', 2082, '46.75060', '-112.29940'), ('Wolf Creek', 2082, '47.00610', '-112.06830')], 'partOfState': 'west central', 'wfo': 'TFX'}, +'MTC051': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Chester', 871, '48.51110', '-110.96590'), ('Joplin', 871, '48.56080', '-110.77170'), ('Lothair', 871, '48.47170', '-111.23140'), ('Whitlash', 871, '48.90830', '-111.25220')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC053': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Eureka', 1017, '48.87590', '-115.05250'), ('Fortine', 1017, '48.76444', '-114.90222'), ('Happys Inn', 2626, '48.08333', '-115.13944'), ('Kootenai Falls', 957, '48.44806', '-115.78167'), ('Libby', 2626, '48.38833', '-115.55500'), ('Rexford', 151, '48.89944', '-115.17111'), ('Stryker', 1017, '48.67417', '-114.76917'), ('Trego', 1017, '48.70528', '-114.86833'), ('Troy', 957, '48.46333', '-115.88861'), ('Yaak', 957, '48.83306', '-115.70778'), ('Yakt', 957, '48.54556', '-115.96778')], 'partOfState': 'northwest', 'wfo': 'MSO'}, +'MTC055': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Brockway', 644, '47.29770', '-105.76190'), ('Circle', 644, '47.41660', '-105.59800'), ('Flowing Wells Rest Area', 644, '47.32550', '-106.17050'), ('Nelson Creek Rec Area', 240, '47.55910', '-106.22510'), ('Vida', 2663, '47.83190', '-105.49250'), ('Watkins', 644, '47.24270', '-105.87270'), ('Weldon', 644, '47.61250', '-105.89160')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC057': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Alder', 659, '45.32390', '-112.10640'), ('Cameron', 840, '45.20330', '-111.67780'), ('Ennis', 840, '45.34530', '-111.72970'), ('Harrison', 1728, '45.70080', '-111.78560'), ('Jeffers', 840, '45.34890', '-111.70470'), ('Laurin', 659, '45.35280', '-112.11720'), ('McAllister', 840, '45.44440', '-111.73140'), ('Norris', 840, '45.56810', '-111.69000'), ('Pony', 1044, '45.65860', '-111.89080'), ('Sheridan', 659, '45.45710', '-112.19150'), ('Silver Star', 400, '45.69030', '-112.28220'), ('Twin Bridges', 400, '45.54340', '-112.33260'), ('Virginia City', 130, '45.29860', '-111.93550'), ('Waterloo', 1044, '45.72190', '-112.19140')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTC059': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Checkerboard', 984, '46.57250', '-110.54610'), ('Martinsdale', 1062, '46.45830', '-110.31250'), ('Ringling', 984, '46.27170', '-110.80640'), ('White Sulphur Springs', 984, '46.54720', '-110.90390')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTC061': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Alberton', 374, '47.00167', '-114.47250'), ('Cyr', 374, '47.01028', '-114.58389'), ('De Borgia', 69, '47.37583', '-115.34500'), ('East Portal', 821, '47.39722', '-115.63417'), ('Haugan', 1321, '47.38333', '-115.39861'), ('Keystone', 893, '47.26833', '-114.93472'), ('Lozeau', 893, '47.11667', '-114.77917'), ('Quartz', 893, '47.05194', '-114.76833'), ('Saint Regis', 893, '47.29944', '-115.10167'), ('Saltese', 1321, '47.41028', '-115.50861'), ('Superior', 893, '47.19167', '-114.89083'), ('Taft', 821, '47.41917', '-115.59722'), ('Tarkio', 893, '47.02139', '-114.73806')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTC063': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bonner', 1693, '46.87333', '-113.86361'), ('Clearwater', 318, '47.00028', '-113.37694'), ('Clinton', 549, '46.76917', '-113.71167'), ('Condon', 80, '47.52778', '-113.70972'), ('East Missoula', 2070, '46.87083', '-113.94361'), ('Evaro', 602, '47.03222', '-114.09056'), ('Frenchtown', 883, '47.01500', '-114.22889'), ('Greenough', 318, '46.91667', '-113.43583'), ('Huson', 374, '47.03139', '-114.32639'), ('Lolo', 3388, '46.75889', '-114.08000'), ('Lolo Hot Springs', 374, '46.72778', '-114.52972'), ('Missoula', 57053, '46.87222', '-113.99306'), ('Ninemile', 374, '47.02000', '-114.40833'), ('Potomac', 1693, '46.88167', '-113.57861'), ('Seeley Lake', 1693, '47.17944', '-113.48361'), ('Stark', 374, '47.12556', '-114.50417'), ('Turah', 1693, '46.83611', '-113.82917'), ('Twin Creeks', 1693, '46.91278', '-113.71306')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTC065': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Delphia', 0, '46.51075', '-108.21370'), ('Klein', 0, '46.40449', '-108.54836'), ('Melstone', 136, '46.59750', '-107.86847'), ('Musselshell', 0, '46.51858', '-108.09125'), ('Roundup', 1931, '46.44882', '-108.54191')], 'partOfState': 'central', 'wfo': 'BYZ'}, +'MTC067': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Chico', 0, '45.32115', '-110.70606'), ('Clyde Park', 310, '45.88393', '-110.60413'), ('Cooke City', 0, '45.01947', '-109.93442'), ('Corwin Springs', 0, '45.11301', '-110.79010'), ('Emigrant', 0, '45.36865', '-110.73363'), ('Gardiner', 0, '45.03167', '-110.70588'), ('Jardine', 0, '45.07021', '-110.63411'), ('Livingston', 6851, '45.66170', '-110.56236'), ('Miner', 0, '45.19888', '-110.90818'), ('Pine Creek', 0, '45.50813', '-110.56316'), ('Pray', 0, '45.38063', '-110.68153'), ('Silver Gate', 0, '45.00608', '-109.98859'), ('Springdale', 0, '45.73470', '-110.22716'), ('Wilsall', 0, '45.99370', '-110.66036')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTC069': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Cat Creek', 185, '47.06520', '-108.00550'), ('Crooked Creek Camp', 185, '47.42300', '-107.94020'), ('Flatwillow', 185, '46.83190', '-108.39940'), ('Petrolia Lake', 185, '46.94160', '-108.25130'), ('Tiegen', 149, '47.03660', '-108.59610'), ('Winnett', 185, '47.00270', '-108.35130')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC071': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bowdoin', 2120, '48.39270', '-107.60550'), ('Chapman', 122, '48.86860', '-108.13250'), ('Content', 2120, '48.02050', '-107.55970'), ('Dodson', 122, '48.39550', '-108.24360'), ('Fourchette', 2120, '47.73330', '-107.96940'), ('Frenchman Reservoir', 224, '48.70550', '-107.22500'), ('Landusky', 702, '47.89770', '-108.62160'), ('Loring', 2120, '48.79220', '-107.86110'), ('Malta', 2120, '48.35970', '-107.87360'), ('Phillips', 122, '48.09360', '-108.16330'), ('Port Of Morgan', 2120, '48.99940', '-107.83160'), ('Saco', 224, '48.45720', '-107.34190'), ('Sleeping Buffalo', 224, '48.48380', '-107.52800'), ('Sun Prairie', 2120, '47.84550', '-107.74580'), ('U L Bend', 185, '47.49160', '-107.88330'), ('Wagner', 122, '48.37050', '-108.07690'), ('Whitewater', 224, '48.75940', '-107.62690'), ('Zortman', 702, '47.91770', '-108.52550')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC073': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Brady', 2753, '48.03560', '-111.83920'), ('Conrad', 2753, '48.17280', '-111.94630'), ('Dupuyer', 498, '48.19250', '-112.49860'), ('Heart Butte', 698, '48.29050', '-112.83290'), ('Ledger', 2753, '48.26030', '-111.82220'), ('Valier', 498, '48.30190', '-112.25120')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC075': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Belle Creek', 0, '45.13930', '-105.11069'), ('Biddle', 0, '45.09702', '-105.33812'), ('Broadus', 451, '45.44348', '-105.40833'), ('Coalwood', 0, '45.72805', '-105.59058'), ('Epsie', 0, '45.49146', '-105.65161'), ('Moorhead', 0, '45.06628', '-105.87104'), ('Olive', 0, '45.55037', '-105.52791'), ('Otter', 0, '45.20564', '-106.20476'), ('Powderville', 0, '45.75894', '-105.11594'), ('Sayle', 0, '45.22574', '-105.99339'), ('Sonnette', 0, '45.41335', '-105.83159'), ('Stacey', 0, '45.69950', '-105.93310')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTC077': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Avon', 124, '46.59722', '-112.60111'), ('Blossburg', 1711, '46.63278', '-112.32111'), ('Brock Creek', 3421, '46.60361', '-112.85472'), ('Deer Lodge', 3421, '46.39583', '-112.72917'), ('Elliston', 1711, '46.56222', '-112.43000'), ('Finn', 3421, '46.76611', '-112.70278'), ('Garrison', 3421, '46.52333', '-112.81083'), ('Goldcreek', 318, '46.58667', '-112.92778'), ('Helmville', 318, '46.86667', '-112.96028'), ('Jens', 318, '46.60417', '-113.00528'), ('Ovando', 71, '47.02028', '-113.13222'), ('Racetrack', 3421, '46.27889', '-112.74778'), ('Woodworth', 318, '47.10639', '-113.30167')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTC079': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Calypso', 611, '46.77300', '-105.42220'), ('Crow Rock', 8487, '46.91130', '-106.07020'), ('Fallon', 611, '46.83550', '-105.11880'), ('McCloud', 611, '46.90080', '-105.59970'), ('Mildred', 26, '46.67580', '-104.95940'), ('Terry', 611, '46.79300', '-105.31160'), ('Zero', 611, '46.66910', '-105.48800')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC081': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bell Crossing', 1553, '46.44333', '-114.12306'), ('Charlos Heights', 710, '46.12639', '-114.17694'), ('Como', 710, '46.08972', '-114.17444'), ('Conner', 710, '45.93083', '-114.12361'), ('Corvallis', 443, '46.31417', '-114.11194'), ('Darby', 710, '46.02278', '-114.17722'), ('Florence', 1553, '46.63167', '-114.07806'), ('Grantsdale', 3705, '46.20361', '-114.14083'), ('Hamilton', 3705, '46.24694', '-114.15944'), ('Lost Trail Pass', 710, '45.70000', '-113.94500'), ('Pinesdale', 742, '46.32944', '-114.21583'), ('Skalkaho Pass', 3705, '46.24500', '-113.77500'), ('Stevensville', 1553, '46.51000', '-114.09222'), ('Sula', 710, '45.83667', '-113.98083'), ('Victor', 742, '46.41667', '-114.14917'), ('Woodside', 3705, '46.31333', '-114.15417')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTC083': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Burns', 4729, '47.37800', '-104.40470'), ('Crane', 4774, '47.57580', '-104.26190'), ('Enid', 189, '47.69550', '-104.77910'), ('Lambert', 189, '47.68360', '-104.62020'), ('Midway', 4774, '47.51500', '-104.32000'), ('Nohly', 709, '47.99550', '-104.09130'), ('Savage', 4774, '47.45360', '-104.34220'), ('Sidney', 4774, '47.71660', '-104.15580'), ('Wooley', 4774, '47.76500', '-104.10520')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC085': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bainville', 153, '48.14000', '-104.22220'), ('Bredette', 1082, '48.50550', '-105.29910'), ('Brockton', 245, '48.15130', '-104.91630'), ('Culbertson', 716, '48.14440', '-104.51630'), ('Fort Kipp', 245, '48.14660', '-104.71520'), ('Fort Union', 709, '48.00970', '-104.04830'), ('Froid', 195, '48.33440', '-104.49550'), ('McCabe', 195, '48.24360', '-104.37720'), ('Poplar', 911, '48.11300', '-105.19770'), ('Snowden', 153, '48.02690', '-104.08360'), ('Sprole', 911, '48.10720', '-105.06270'), ('Volt', 2663, '48.38830', '-105.71830'), ('Wolf Point', 2663, '48.09050', '-105.64000')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC087': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Angela', 0, '46.72983', '-106.20038'), ('Ashland', 464, '45.60764', '-106.30018'), ('Bascom', 0, '46.62647', '-106.75363'), ('Birney', 0, '45.41612', '-106.49359'), ('Brandenberg', 0, '45.81411', '-106.23020'), ('Cartersville', 0, '46.29948', '-106.46697'), ('Colstrip', 2346, '45.89487', '-106.63015'), ('Forsyth', 1944, '46.26602', '-106.67797'), ('Hathaway', 0, '46.27483', '-106.19880'), ('Ingomar', 0, '46.57683', '-107.37505'), ('Lame Deer', 2018, '45.61132', '-106.61380'), ('Rock Springs', 0, '46.81680', '-106.24705'), ('Rosebud', 0, '46.27460', '-106.44463'), ('Sumatra', 0, '46.61825', '-107.55082'), ('Vananda', 0, '46.39019', '-107.00378')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTC089': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Belknap', 1321, '47.66222', '-115.40778'), ('Bend', 1321, '47.90944', '-115.04861'), ('Camas', 531, '47.61806', '-114.65694'), ('Camas Prairie', 531, '47.46278', '-114.60611'), ('Dixon', 439, '47.31667', '-114.31306'), ('Eddy', 1321, '47.55833', '-115.13222'), ('Heron', 644, '48.05889', '-115.95611'), ('Hot Springs', 531, '47.60917', '-114.66778'), ('Lonepine', 137, '47.70306', '-114.63583'), ('Noxon', 230, '47.99611', '-115.78056'), ('Paradise', 1126, '47.38944', '-114.80111'), ('Perma', 531, '47.36389', '-114.58389'), ('Plains', 1126, '47.46028', '-114.88194'), ('Snider', 1321, '47.60389', '-115.21750'), ('Thompson Falls', 1321, '47.59722', '-115.34333'), ('Trout Creek', 1321, '47.83694', '-115.59722'), ('Tuscor', 821, '47.90333', '-115.69000'), ('Weeksville', 1126, '47.52306', '-114.99306'), ('White Pine', 1321, '47.74361', '-115.48139')], 'partOfState': 'northwest', 'wfo': 'MSO'}, +'MTC091': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Antelope', 43, '48.68970', '-104.45770'), ('Archer', 82, '48.79270', '-104.81020'), ('Coalridge', 172, '48.69830', '-104.18860'), ('Comertown', 172, '48.89690', '-104.24830'), ('Dagmar', 261, '48.58330', '-104.19770'), ('Daleview', 82, '48.91330', '-104.93330'), ('Dooley', 2061, '48.88110', '-104.38880'), ('Homestead', 269, '48.42110', '-104.53830'), ('Medicine Lake', 269, '48.50130', '-104.50410'), ('Outlook', 82, '48.88750', '-104.77720'), ('Plentywood', 2061, '48.77470', '-104.56190'), ('Raymond', 2061, '48.87630', '-104.57970'), ('Raymond Port Of Entry', 2061, '48.99660', '-104.57500'), ('Redstone', 82, '48.82160', '-104.94360'), ('Reserve', 269, '48.60550', '-104.45910')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC093': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Butte', 714, '46.00389', '-112.53389'), ('Divide', 33892, '45.75111', '-112.74639'), ('Gregson Hot Springs', 33892, '46.04306', '-112.80917'), ('Janney', 714, '45.90944', '-112.49444'), ('Melrose', 33892, '45.63194', '-112.68361'), ('Newcomb', 714, '45.92000', '-112.51889'), ('Nissler', 714, '46.00472', '-112.64139'), ('Ramsay', 33892, '46.00583', '-112.68528'), ('Silver Bow', 33892, '46.00361', '-112.66694'), ('Walkerville', 714, '46.03650', '-112.54030')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTC095': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Absarokee', 1234, '45.52267', '-109.44107'), ('Columbus', 1748, '45.63688', '-109.25240'), ('Dean', 0, '45.40470', '-109.69465'), ('Fishtail', 0, '45.45335', '-109.50754'), ('Hailstone Wildlife Refuge', 0, '46.00740', '-109.18160'), ('Halfbreed Lake Wildlife', 0, '45.94250', '-109.11790'), ('Limestone', 0, '45.48335', '-109.90412'), ('Molt', 0, '45.86115', '-108.92779'), ('Mystic Lake', 0, '45.22270', '-109.78250'), ('Nye', 0, '45.43542', '-109.80908'), ('Park City', 0, '45.63415', '-108.91905'), ('Rapelje', 0, '45.97421', '-109.25484'), ('Reed Point', 0, '45.70515', '-109.54185')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTC097': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Big Timber', 1650, '45.83490', '-109.95540'), ('Greycliff', 0, '45.76612', '-109.79073'), ('Mc Leod', 0, '45.66357', '-110.11566'), ('Melville', 0, '46.10427', '-109.95140'), ('Sourdough', 0, '45.90156', '-109.81423')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTC099': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bynum', 1781, '47.97920', '-112.31080'), ('Choteau', 1781, '47.81260', '-112.17960'), ('Dutton', 389, '47.84760', '-111.71360'), ('Fairfield', 659, '47.61530', '-111.98000'), ('Pendroy', 498, '48.05690', '-112.29810'), ('Power', 389, '47.71580', '-111.68610')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC101': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Devon', 3216, '48.46670', '-111.47780'), ('Ethridge', 3105, '48.55780', '-112.11970'), ('Ferdig', 415, '48.75420', '-111.77420'), ('Galata', 871, '48.47560', '-111.35140'), ('Kevin', 178, '48.74580', '-111.96550'), ('Oilmont', 178, '48.74000', '-111.84000'), ('Shelby', 3216, '48.50950', '-111.85670'), ('Sunburst', 415, '48.87650', '-111.90620')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTC103': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bighorn', 0, '46.15361', '-107.43845'), ('Hysham', 330, '46.29177', '-107.22610'), ('Myers', 0, '46.25076', '-107.33799'), ('Sanders', 0, '46.29136', '-107.09639')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTC105': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Baylor', 111, '48.66330', '-106.47880'), ('Duck Creek Fishing', 240, '47.98440', '-106.52250'), ('Fort Peck', 240, '48.00910', '-106.44910'), ('Frazer', 452, '48.05910', '-106.04160'), ('Glasgow', 3253, '48.19690', '-106.63610'), ('Glentana', 111, '48.84800', '-106.24880'), ('Hinsdale', 224, '48.39410', '-107.08410'), ('Larslan', 111, '48.57830', '-106.19330'), ('Lustre', 452, '48.39330', '-105.88160'), ('Nashua', 325, '48.13220', '-106.35580'), ('Opheim', 111, '48.85660', '-106.40660'), ('Oswego', 452, '48.05860', '-105.88050'), ('Park Grove', 240, '48.03020', '-106.44470'), ('Port Of Opheim', 111, '48.99940', '-106.37720'), ('Richland', 111, '48.82080', '-106.05050'), ('Saint Marie', 183, '48.40220', '-106.53220'), ('Tampico', 3253, '48.30470', '-106.82630'), ('The Bentonite Plan', 3253, '48.13880', '-107.01940'), ('The Pines Recreation Area', 240, '47.83330', '-106.62500'), ('Thoeny', 111, '48.87690', '-106.91690'), ('Vandalia', 3253, '48.35470', '-106.90910'), ('Whatley', 3253, '48.14880', '-106.51660')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC107': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Harlowton', 1062, '46.43702', '-109.83377'), ('Hedgesville', 0, '46.45663', '-109.50115'), ('Judith Gap', 164, '46.67910', '-109.75231'), ('Shawmut', 0, '46.34345', '-109.52417'), ('Twodot', 0, '46.42395', '-110.07337')], 'partOfState': 'central', 'wfo': 'BYZ'}, +'MTC109': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Carlyle', 101, '46.65500', '-104.07550'), ('Saint Phillip', 1205, '46.83160', '-104.14500'), ('Wibaux', 567, '46.98500', '-104.18770'), ('Yates', 567, '46.95110', '-104.13000')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTC111': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Acton', 0, '45.93201', '-108.68299'), ('Ballantine', 0, '45.94869', '-108.14687'), ('Billings', 89847, '45.78270', '-108.50447'), ('Broadview', 150, '46.09687', '-108.87554'), ('Comanche', 0, '45.99756', '-108.77388'), ('Custer', 0, '46.13052', '-107.55393'), ('Huntley', 0, '45.89584', '-108.30843'), ('Laurel', 6255, '45.66925', '-108.77148'), ('Lockwood', 4306, '45.81519', '-108.41397'), ('Pompeys Pillar', 0, '45.95261', '-107.95261'), ('Shepherd', 0, '45.94371', '-108.34278'), ('Worden', 0, '45.95990', '-108.16147')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'NCC001': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alamance', 310, '36.03330', '-79.48520'), ('Altamahaw', 996, '36.17930', '-79.50680'), ('Burlington', 44917, '36.08440', '-79.44720'), ('Elon College', 5277, '36.09410', '-79.51170'), ('Glen Raven', 2750, '36.12100', '-79.47000'), ('Graham', 12833, '36.06310', '-79.39050'), ('Haw River', 1908, '36.09240', '-79.36010'), ('Mebane', 7284, '36.09120', '-79.27530'), ('Pleasant Grove', 1908, '36.19330', '-79.32690'), ('Saxapahaw', 1418, '35.94790', '-79.32110'), ('Snow Camp', 1418, '35.86660', '-79.41660'), ('Sutphin', 1418, '35.88330', '-79.35000'), ('Swepsonville', 922, '36.02870', '-79.35980'), ('Union Ridge', 1908, '36.22000', '-79.38330')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC003': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bethlehem', 3713, '35.81340', '-81.29240'), ('Ellendale', 1799, '35.92560', '-81.27970'), ('Hiddenite', 1380, '35.90360', '-81.09080'), ('Millersville', 1799, '35.85560', '-81.18360'), ('Stony Point', 1380, '35.86670', '-81.04910'), ('Taylorsville', 1799, '35.92110', '-81.17930')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC005': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Barrett', 6670, '36.51670', '-80.95000'), ('Ennice', 1817, '36.55000', '-81.00000'), ('Glade Valley', 1817, '36.48330', '-81.05000'), ('Piney Creek', 988, '36.55000', '-81.30000'), ('Roaring Gap', 1817, '36.40000', '-80.98330'), ('Scottville', 1817, '36.50000', '-81.28330'), ('Sparta', 1817, '36.50000', '-81.13330'), ('Stratford', 1817, '36.51670', '-81.21670'), ('Twin Oaks', 1817, '36.53330', '-81.16670'), ('Whitehead', 1817, '36.46670', '-81.15000')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCC007': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ansonville', 636, '35.10450', '-80.10990'), ('Lilesville', 459, '34.96780', '-79.98520'), ('McFarlan', 89, '34.81330', '-79.97620'), ('Morven', 579, '34.86330', '-80.00040'), ('Peachland', 554, '34.99370', '-80.26580'), ('Polkton', 1195, '35.00820', '-80.20190'), ('Wadesboro', 3552, '34.96660', '-80.06850'), ('White Store', 554, '34.90000', '-80.26000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC009': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ashland', 151, '36.43330', '-81.65000'), ('Baldwin', 1081, '36.35000', '-81.53330'), ('Clifton', 151, '36.45000', '-81.56670'), ('Flatwood', 151, '36.55000', '-81.63330'), ('Fleetwood', 1081, '36.30000', '-81.51670'), ('Glendale Springs', 1422, '36.35000', '-81.38330'), ('Grassy Creek', 151, '36.56670', '-81.40000'), ('Idlewild', 1081, '36.31670', '-81.43330'), ('Jefferson', 1422, '36.42020', '-81.46990'), ('Lansing', 151, '36.49980', '-81.50980'), ('Laurel Springs', 1817, '36.41670', '-81.26670'), ('Nella', 151, '36.56670', '-81.55000'), ('Othello', 1422, '36.36670', '-81.43330'), ('Shatley Springs', 151, '36.48330', '-81.56670'), ('Trout', 1081, '36.40000', '-81.61670'), ('Wagoner', 1422, '36.40000', '-81.40000'), ('West Jefferson', 1081, '36.40000', '-81.50000')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCC011': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Banner Elk', 811, '36.16240', '-81.87230'), ('Crossnore', 242, '36.02240', '-81.93140'), ('Elk Park', 459, '36.15800', '-81.98080'), ('Grandfather Mountain', 73, '36.09850', '-81.84750'), ('Ingalls', 2030, '35.97140', '-82.01190'), ('Minneapolis', 459, '36.09920', '-81.98720'), ('Newland', 704, '36.08660', '-81.92640'), ('Sugar Mountain', 226, '36.12420', '-81.86330')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC013': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aurora', 583, '35.30350', '-76.78840'), ('Belhaven', 1968, '35.54370', '-76.62470'), ('Chocowinity', 733, '35.51390', '-77.09970'), ('Pantego', 170, '35.58740', '-76.65850'), ('River Road', 4094, '35.50660', '-76.99100'), ('Washington', 9583, '35.55630', '-77.05050'), ('Washington Park', 440, '35.53250', '-77.03120')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC015': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Askewville', 180, '36.10970', '-76.94120'), ('Aulander', 888, '36.22890', '-77.11360'), ('Buena Vista', 180, '36.12060', '-76.96470'), ('Burden', 888, '36.15990', '-77.06490'), ('Colerain', 221, '36.20100', '-76.76840'), ('Connaritsa', 888, '36.18930', '-77.07430'), ('Edenhouse', 5394, '36.03860', '-76.72500'), ('Goose Pond', 221, '36.17780', '-76.77530'), ('Kelford', 245, '36.18080', '-77.22420'), ('Lewiston Woodville', 613, '36.11430', '-77.17990'), ('Merry Hill', 4107, '36.01210', '-76.77170'), ('Midway', 2293, '36.03440', '-76.78440'), ('Mount Gould', 221, '36.12100', '-76.76090'), ('Powellsville', 259, '36.22480', '-76.93200'), ('Quitsna', 5843, '35.97400', '-77.08590'), ('Republican', 180, '36.08250', '-77.05950'), ('Rosemead', 259, '36.18000', '-76.86640'), ('Roxobel', 263, '36.20180', '-77.23820'), ('Trap', 259, '36.20670', '-76.87110'), ('Wakelon', 221, '36.15860', '-76.84390'), ('Whites Crossroads', 180, '36.13690', '-76.86610'), ('Windsor', 2283, '36.00070', '-76.94390'), ('Woodard', 502, '35.91620', '-76.86170')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC015': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Askewville', 180, '36.10970', '-76.94120'), ('Aulander', 888, '36.22890', '-77.11360'), ('Buena Vista', 180, '36.12060', '-76.96470'), ('Burden', 888, '36.15990', '-77.06490'), ('Colerain', 221, '36.20100', '-76.76840'), ('Connaritsa', 888, '36.18930', '-77.07430'), ('Edenhouse', 5394, '36.03860', '-76.72500'), ('Goose Pond', 221, '36.17780', '-76.77530'), ('Kelford', 245, '36.18080', '-77.22420'), ('Lewiston Woodville', 613, '36.11430', '-77.17990'), ('Merry Hill', 4107, '36.01210', '-76.77170'), ('Midway', 2293, '36.03440', '-76.78440'), ('Mount Gould', 221, '36.12100', '-76.76090'), ('Powellsville', 259, '36.22480', '-76.93200'), ('Quitsna', 5843, '35.97400', '-77.08590'), ('Republican', 180, '36.08250', '-77.05950'), ('Rosemead', 259, '36.18000', '-76.86640'), ('Roxobel', 263, '36.20180', '-77.23820'), ('Trap', 259, '36.20670', '-76.87110'), ('Wakelon', 221, '36.15860', '-76.84390'), ('Whites Crossroads', 180, '36.13690', '-76.86610'), ('Windsor', 2283, '36.00070', '-76.94390'), ('Woodard', 502, '35.91620', '-76.86170')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC017': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bladenboro', 1718, '34.53980', '-78.79530'), ('Clarkton', 705, '34.48910', '-78.65470'), ('Dublin', 250, '34.65590', '-78.72340'), ('East Arcadia', 524, '34.38140', '-78.32190'), ('Elizabethtown', 3698, '34.62450', '-78.61030'), ('Jerome', 0, '34.83000', '-78.73000'), ('Kelly', 454, '34.47000', '-78.32000'), ('Tar Heel', 70, '34.73150', '-78.79240'), ('White Lake', 529, '34.63880', '-78.50030')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC019': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ash', 0, '34.07000', '-78.52000'), ('Bald Head Island', 173, '33.86310', '-77.98830'), ('Belville', 285, '34.23000', '-77.98650'), ('Boiling Spring Lakes', 2972, '34.03190', '-78.06700'), ('Bolivia', 148, '34.07070', '-78.14680'), ('Calabash', 711, '33.89850', '-78.57700'), ('Caswell Beach', 370, '33.90480', '-78.04850'), ('Freeland', 0, '34.10000', '-78.53000'), ('Holden Beach', 787, '33.90910', '-78.31290'), ('Leland', 1938, '34.24060', '-78.00570'), ('Long Beach', 5618, '33.91830', '-78.14940'), ('Longwood', 0, '34.00000', '-78.55000'), ('Navassa', 479, '34.25720', '-78.00270'), ('Oak Island', 6571, '33.92000', '-78.17000'), ('Ocean Isle Beach', 426, '33.89250', '-78.43220'), ('Sandy Creek', 246, '34.28500', '-78.15700'), ('Shallotte', 1381, '33.97590', '-78.38590'), ('Southport', 2351, '33.92410', '-78.02200'), ('Sunset Beach', 1824, '33.87470', '-78.51000'), ('Supply', 0, '34.02000', '-78.27000'), ('Varnamtown', 481, '33.94190', '-78.23970'), ('Winnabow', 0, '34.15000', '-78.10000'), ('Yaupon Beach', 922, '33.90750', '-78.07640')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC019': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ash', 0, '34.07000', '-78.52000'), ('Bald Head Island', 173, '33.86310', '-77.98830'), ('Belville', 285, '34.23000', '-77.98650'), ('Boiling Spring Lakes', 2972, '34.03190', '-78.06700'), ('Bolivia', 148, '34.07070', '-78.14680'), ('Calabash', 711, '33.89850', '-78.57700'), ('Caswell Beach', 370, '33.90480', '-78.04850'), ('Freeland', 0, '34.10000', '-78.53000'), ('Holden Beach', 787, '33.90910', '-78.31290'), ('Leland', 1938, '34.24060', '-78.00570'), ('Long Beach', 5618, '33.91830', '-78.14940'), ('Longwood', 0, '34.00000', '-78.55000'), ('Navassa', 479, '34.25720', '-78.00270'), ('Oak Island', 6571, '33.92000', '-78.17000'), ('Ocean Isle Beach', 426, '33.89250', '-78.43220'), ('Sandy Creek', 246, '34.28500', '-78.15700'), ('Shallotte', 1381, '33.97590', '-78.38590'), ('Southport', 2351, '33.92410', '-78.02200'), ('Sunset Beach', 1824, '33.87470', '-78.51000'), ('Supply', 0, '34.02000', '-78.27000'), ('Varnamtown', 481, '33.94190', '-78.23970'), ('Winnabow', 0, '34.15000', '-78.10000'), ('Yaupon Beach', 922, '33.90750', '-78.07640')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC021': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Avery Creek', 1405, '35.46280', '-82.57450'), ('Barnardsville', 1764, '35.77650', '-82.45300'), ('Bent Creek', 1389, '35.51090', '-82.61430'), ('Biltmore Forest', 1440, '35.53350', '-82.54100'), ('Black Mountain', 7511, '35.61430', '-82.33030'), ('Candler', 1389, '35.53640', '-82.69310'), ('Canto', 840, '35.70140', '-82.75920'), ('Downtown Asheville', 68889, '35.57410', '-82.54880'), ('Fairview', 2495, '35.52280', '-82.40450'), ('Leicester', 3162, '35.65300', '-82.68780'), ('Montreat', 630, '35.64650', '-82.30060'), ('Skyland', 4418, '35.48350', '-82.52460'), ('Swannanoa', 4132, '35.60160', '-82.39210'), ('Weaverville', 2416, '35.69700', '-82.55790'), ('Woodfin', 3162, '35.63650', '-82.58550')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC023': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Connelly Springs', 1814, '35.74870', '-81.50000'), ('Drexel', 1938, '35.75730', '-81.60820'), ('Glen Alpine', 1090, '35.72930', '-81.77860'), ('Hildebran', 1472, '35.71520', '-81.42150'), ('Icard', 2734, '35.72570', '-81.45860'), ('Jonas Ridge', 242, '35.97250', '-81.89500'), ('Morganton', 17310, '35.74160', '-81.69840'), ('Pleasant Grove', 4485, '35.63360', '-81.58390'), ('Rhodhiss', 366, '35.77050', '-81.43100'), ('Table Rock', 1090, '35.83810', '-81.80470'), ('Valdese', 4485, '35.74650', '-81.55770')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC025': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Concord', 55977, '35.40730', '-80.59430'), ('Harrisburg', 4493, '35.32140', '-80.66510'), ('Kannapolis', 36910, '35.49110', '-80.62040'), ('Midland', 1113, '35.22720', '-80.50080'), ('Mount Pleasant', 1259, '35.40250', '-80.43610')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC027': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [("Cajah's Mountain", 2683, '35.84990', '-81.53890'), ('Collettsville', 3644, '35.92530', '-81.66480'), ('Edgemont', 73, '36.00130', '-81.76500'), ('Gamewell', 3644, '35.86710', '-81.60080'), ('Globe', 1418, '36.03770', '-81.70500'), ('Granite Falls', 4612, '35.80170', '-81.42700'), ('Hudson', 3078, '35.84840', '-81.48590'), ('Kings Creek', 16793, '35.98540', '-81.40120'), ('Lenoir', 16793, '35.90610', '-81.53460'), ('Patterson', 16793, '35.98950', '-81.55850'), ('Sawmills', 4921, '35.81870', '-81.48170'), ('Upton', 1418, '36.06200', '-81.68730')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC029': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bartlett', 17188, '36.28920', '-76.08470'), ('Belcross', 17188, '36.34740', '-76.15510'), ('Burnt Mills', 17188, '36.39420', '-76.26530'), ('Camden', 17188, '36.32730', '-76.16800'), ('Goose Creek', 17188, '36.22810', '-76.02830'), ('Horseshoe', 151976, '36.46000', '-76.39360'), ('Indiantown', 17188, '36.33350', '-76.07730'), ('Johnsons Corner', 17188, '36.43440', '-76.29890'), ('Lambs Corner', 17188, '36.37970', '-76.22220'), ('Lilly', 151976, '36.48570', '-76.30250'), ('Old Trap', 17188, '36.24050', '-76.02710'), ('Pierceville', 17188, '36.44830', '-76.29390'), ('Riddle', 17188, '36.28940', '-76.04350'), ('Sharon', 151976, '36.49560', '-76.31000'), ('Shiloh', 17188, '36.27140', '-76.08080'), ('South Mills', 17188, '36.44530', '-76.32950'), ('Spences Corner', 17188, '36.35080', '-76.19610'), ('Tar Corner', 17188, '36.47690', '-76.28640'), ('Taylors Beach', 17188, '36.27940', '-76.11720'), ('Texas', 17188, '36.19780', '-76.01030'), ('Whitehall Shores', 17188, '36.29130', '-76.14530')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC029': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bartlett', 17188, '36.28920', '-76.08470'), ('Belcross', 17188, '36.34740', '-76.15510'), ('Burnt Mills', 17188, '36.39420', '-76.26530'), ('Camden', 17188, '36.32730', '-76.16800'), ('Goose Creek', 17188, '36.22810', '-76.02830'), ('Horseshoe', 151976, '36.46000', '-76.39360'), ('Indiantown', 17188, '36.33350', '-76.07730'), ('Johnsons Corner', 17188, '36.43440', '-76.29890'), ('Lambs Corner', 17188, '36.37970', '-76.22220'), ('Lilly', 151976, '36.48570', '-76.30250'), ('Old Trap', 17188, '36.24050', '-76.02710'), ('Pierceville', 17188, '36.44830', '-76.29390'), ('Riddle', 17188, '36.28940', '-76.04350'), ('Sharon', 151976, '36.49560', '-76.31000'), ('Shiloh', 17188, '36.27140', '-76.08080'), ('South Mills', 17188, '36.44530', '-76.32950'), ('Spences Corner', 17188, '36.35080', '-76.19610'), ('Tar Corner', 17188, '36.47690', '-76.28640'), ('Taylors Beach', 17188, '36.27940', '-76.11720'), ('Texas', 17188, '36.19780', '-76.01030'), ('Whitehall Shores', 17188, '36.29130', '-76.14530')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC031': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Atlantic Beach', 1781, '34.70020', '-76.73950'), ('Beaufort', 3771, '34.72150', '-76.65250'), ('Cape Carteret', 1214, '34.69430', '-77.05950'), ('Cedar Point', 929, '34.68140', '-77.08150'), ('Emerald Isle', 3488, '34.66640', '-77.02920'), ('Indian Beach', 95, '34.68590', '-76.89440'), ('Morehead City', 7691, '34.72470', '-76.73200'), ('Newport', 3349, '34.78790', '-76.86100'), ('Pine Knoll Shores', 1524, '34.69570', '-76.81820')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC033': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Baynes', 2091, '36.26670', '-79.30000'), ('Bethel', 2091, '36.45000', '-79.45000'), ('Blanch', 132, '36.51670', '-79.28330'), ('Camp Springs', 996, '36.30000', '-79.50000'), ('Gatewood', 53056, '36.53330', '-79.40000'), ('Hamer', 2091, '36.45000', '-79.28330'), ('Hightowers', 2091, '36.33330', '-79.25000'), ('Jericho', 2091, '36.28330', '-79.36670'), ('Leasburg', 132, '36.40000', '-79.16670'), ('Milton', 132, '36.53650', '-79.20840'), ('Pelham', 53056, '36.50000', '-79.46670'), ('Prospect Hill', 7284, '36.25000', '-79.20000'), ('Providence', 53056, '36.50000', '-79.36670'), ('Quick', 2091, '36.40000', '-79.50000'), ('Semora', 132, '36.50000', '-79.15000'), ('Topnot', 2091, '36.36670', '-79.26670'), ('Yanceyville', 2091, '36.40760', '-79.34310')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCC035': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Catawba', 698, '35.70620', '-81.07580'), ('Claremont', 1038, '35.71360', '-81.15090'), ('Conover', 6604, '35.70950', '-81.21750'), ('Cooksville', 962, '35.59310', '-81.47610'), ('Hickory', 37222, '35.73920', '-81.32620'), ('Longview', 4722, '35.72600', '-81.38400'), ('Maiden', 3282, '35.57580', '-81.20610'), ('Newton', 12560, '35.66540', '-81.21870'), ('St. Stephens', 9439, '35.76450', '-81.27340'), ('Terrell', 3185, '35.58920', '-80.97830')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC037': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bynum', 2226, '35.77000', '-79.15000'), ('Fearrington', 903, '35.80630', '-79.07350'), ('Goldston', 319, '35.59340', '-79.32850'), ('Harpers Crossroads', 319, '35.56000', '-79.48000'), ('Hasty', 6966, '35.68000', '-79.47000'), ('Jordan Lake', 903, '35.74000', '-79.04000'), ('Moncure', 2226, '35.62000', '-79.08000'), ('Pittsboro', 2226, '35.71940', '-79.17450'), ('Siler City', 6966, '35.72490', '-79.46260')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC039': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Andrews', 1602, '35.19850', '-83.82290'), ('Culberson', 153, '34.99060', '-84.16890'), ('Hiawasse Dam', 1568, '35.14750', '-84.17110'), ('Hot House', 153, '35.01940', '-84.23330'), ('Marble', 1602, '35.17390', '-83.92580'), ('Murphy', 1568, '35.09330', '-84.02740'), ('Topton', 1602, '35.24560', '-83.70420'), ('Unaka', 1568, '35.19390', '-84.14250'), ('Violet', 657, '35.18830', '-84.21890')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'NCC041': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Arrowhead Beach', 221, '36.22310', '-76.70000'), ('Cape Colony', 5394, '36.01940', '-76.58190'), ('Center Hill', 2070, '36.21480', '-76.60930'), ('Cisco', 221, '36.18970', '-76.63420'), ('Drummond Point', 2070, '36.06000', '-76.43000'), ('Edenton', 5394, '36.05580', '-76.60190'), ('Gliden', 281, '36.30500', '-76.61440'), ('Hancock', 5394, '36.09900', '-76.62860'), ('Icaria', 221, '36.25580', '-76.62750'), ('Macedonia', 5394, '36.10170', '-76.66750'), ('Mavaton', 5394, '36.17390', '-76.64250'), ('Mill Crossroads', 221, '36.22190', '-76.66830'), ('Rockyhock', 221, '36.18110', '-76.69240'), ('Ryland', 221, '36.27400', '-76.63490'), ('Saint Johns', 5394, '36.03060', '-76.52690'), ('Sign Pine', 281, '36.30890', '-76.62440'), ('Smalls Crossroads', 221, '36.22580', '-76.65670'), ('Somerset', 2070, '36.06020', '-76.46620'), ('Tyner', 221, '36.25140', '-76.63230'), ('Valhalla', 5394, '36.13700', '-76.65780')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC041': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Arrowhead Beach', 221, '36.22310', '-76.70000'), ('Cape Colony', 5394, '36.01940', '-76.58190'), ('Center Hill', 2070, '36.21480', '-76.60930'), ('Cisco', 221, '36.18970', '-76.63420'), ('Drummond Point', 2070, '36.06000', '-76.43000'), ('Edenton', 5394, '36.05580', '-76.60190'), ('Gliden', 281, '36.30500', '-76.61440'), ('Hancock', 5394, '36.09900', '-76.62860'), ('Icaria', 221, '36.25580', '-76.62750'), ('Macedonia', 5394, '36.10170', '-76.66750'), ('Mavaton', 5394, '36.17390', '-76.64250'), ('Mill Crossroads', 221, '36.22190', '-76.66830'), ('Rockyhock', 221, '36.18110', '-76.69240'), ('Ryland', 221, '36.27400', '-76.63490'), ('Saint Johns', 5394, '36.03060', '-76.52690'), ('Sign Pine', 281, '36.30890', '-76.62440'), ('Smalls Crossroads', 221, '36.22580', '-76.65670'), ('Somerset', 2070, '36.06020', '-76.46620'), ('Tyner', 221, '36.25140', '-76.63230'), ('Valhalla', 5394, '36.13700', '-76.65780')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC043': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Brasstown', 297, '35.01580', '-83.91030'), ('Hayesville', 297, '35.04630', '-83.81930'), ('Shooting Creek', 547, '35.03060', '-83.64970'), ('Tusquitee', 297, '35.08330', '-83.76670')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'NCC045': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Belwood', 962, '35.47720', '-81.52120'), ('Boiling Springs NC', 3866, '35.24890', '-81.66720'), ('Casar', 308, '35.51290', '-81.61770'), ('Earl', 234, '35.19490', '-81.53430'), ('Fallston', 603, '35.42920', '-81.50240'), ('Grover', 698, '35.17090', '-81.45170'), ('Kings Mountain', 9693, '35.24150', '-81.34800'), ('Kingstown', 845, '35.36250', '-81.62310'), ('Lattimore', 419, '35.31730', '-81.66200'), ('Lawndale', 642, '35.41410', '-81.56160'), ('Mooresboro', 314, '35.29910', '-81.69960'), ('Patterson Springs', 620, '35.23240', '-81.51750'), ('Polkville', 535, '35.41690', '-81.64480'), ('Shelby', 19477, '35.28890', '-81.54200'), ('Waco', 328, '35.36190', '-81.42930')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC047': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bolton', 494, '34.31860', '-78.40280'), ('Brunswick', 360, '34.29270', '-78.70720'), ('Cerro Gordo', 244, '34.32200', '-78.92840'), ('Chadbourn', 2129, '34.32190', '-78.82720'), ('Cherry Grove', 0, '34.23000', '-78.97000'), ('Clarendon', 0, '34.22000', '-78.85000'), ('Delco', 0, '34.32000', '-78.22000'), ('Evergreen', 0, '34.42000', '-78.90000'), ('Fair Bluff', 1181, '34.31170', '-79.03460'), ('Lake Waccamaw', 1411, '34.31960', '-78.51340'), ('Nakina', 0, '34.13000', '-78.67000'), ('Pireway', 0, '34.03000', '-78.63000'), ('Riegelwood', 0, '34.33000', '-78.23000'), ('Tabor City', 2509, '34.14940', '-78.87420'), ('Whiteville', 5148, '34.32990', '-78.70480')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC049': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bridgeton', 328, '35.12240', '-77.02170'), ('Cove City', 433, '35.18840', '-77.32190'), ('Dover', 443, '35.21610', '-77.43350'), ('Havelock', 22442, '34.90740', '-76.89490'), ('James City', 5420, '35.06550', '-77.01810'), ('Neuse Forest', 1426, '34.96360', '-76.94510'), ('New Bern', 23128, '35.11990', '-77.07880'), ('River Bend', 2923, '35.07310', '-77.15220'), ('Trent Woods', 4192, '35.07790', '-77.09630'), ('Vanceboro', 898, '35.30440', '-77.15760')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC051': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bonnie Doone', 3893, '35.09890', '-78.95980'), ('Cedar Creek', 664, '34.95000', '-78.75000'), ('Eastover', 1376, '35.10070', '-78.78250'), ('Falcon', 328, '35.19440', '-78.64860'), ('Fayetteville', 121015, '35.07160', '-78.89920'), ('Fort Bragg', 34744, '35.13850', '-79.00100'), ('Godwin', 112, '35.21740', '-78.68200'), ('Hope Mills', 11237, '34.97330', '-78.95340'), ('Linden', 127, '35.25440', '-78.74850'), ('Pope AFB', 2857, '35.16870', '-79.01060'), ('Spring Lake', 8098, '35.17760', '-78.98240'), ('Stedman', 664, '35.01050', '-78.69830'), ('Vander', 1204, '35.03680', '-78.78700'), ('Wade', 480, '35.16430', '-78.73530')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC053': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aydlett', 2201, '36.32530', '-75.91000'), ('Barco', 17188, '36.39120', '-75.97970'), ('Bertha', 2201, '36.27340', '-75.91120'), ('Coinjock', 17188, '36.34460', '-75.95420'), ('Corolla', 2201, '36.37860', '-75.83120'), ('Currituck', 17188, '36.44820', '-76.01500'), ('Grandy', 2201, '36.24230', '-75.87800'), ('Gregory', 17188, '36.38960', '-76.12630'), ('Harbinger', 2201, '36.10190', '-75.81410'), ('Jarvisburg', 2201, '36.20190', '-75.86550'), ('Knotts Island', 393069, '36.51300', '-75.91960'), ('Mamie', 2201, '36.12740', '-75.83690'), ('Maple', 17188, '36.41350', '-76.00330'), ('Moyock', 17188, '36.48540', '-76.13520'), ('Point Harbor', 2201, '36.08000', '-75.80500'), ('Poplar Branch', 2201, '36.28060', '-75.89320'), ('Powells Point', 2201, '36.15970', '-75.85940'), ('Shawboro', 17188, '36.40520', '-76.09310'), ('Sligo', 17188, '36.45170', '-76.07750'), ('Snowden', 17188, '36.45670', '-76.10890'), ('Spot', 2201, '36.11810', '-75.81940'), ('Waterlily', 17188, '36.38500', '-75.92500')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC053': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aydlett', 2201, '36.32530', '-75.91000'), ('Barco', 17188, '36.39120', '-75.97970'), ('Bertha', 2201, '36.27340', '-75.91120'), ('Coinjock', 17188, '36.34460', '-75.95420'), ('Corolla', 2201, '36.37860', '-75.83120'), ('Currituck', 17188, '36.44820', '-76.01500'), ('Grandy', 2201, '36.24230', '-75.87800'), ('Gregory', 17188, '36.38960', '-76.12630'), ('Harbinger', 2201, '36.10190', '-75.81410'), ('Jarvisburg', 2201, '36.20190', '-75.86550'), ('Knotts Island', 393069, '36.51300', '-75.91960'), ('Mamie', 2201, '36.12740', '-75.83690'), ('Maple', 17188, '36.41350', '-76.00330'), ('Moyock', 17188, '36.48540', '-76.13520'), ('Point Harbor', 2201, '36.08000', '-75.80500'), ('Poplar Branch', 2201, '36.28060', '-75.89320'), ('Powells Point', 2201, '36.15970', '-75.85940'), ('Shawboro', 17188, '36.40520', '-76.09310'), ('Sligo', 17188, '36.45170', '-76.07750'), ('Snowden', 17188, '36.45670', '-76.10890'), ('Spot', 2201, '36.11810', '-75.81940'), ('Waterlily', 17188, '36.38500', '-75.92500')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC055': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Kill Devil Hills', 5897, '36.01600', '-75.66750'), ('Kitty Hawk', 2991, '36.07020', '-75.71950'), ('Manteo', 1052, '35.89900', '-75.66640'), ('Nags Head', 2700, '35.94460', '-75.62650'), ('Southern Shores', 2201, '36.11870', '-75.73320'), ('Wanchese', 1527, '35.83750', '-75.64020')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC055': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Kill Devil Hills', 5897, '36.01600', '-75.66750'), ('Kitty Hawk', 2991, '36.07020', '-75.71950'), ('Manteo', 1052, '35.89900', '-75.66640'), ('Nags Head', 2700, '35.94460', '-75.62650'), ('Southern Shores', 2201, '36.11870', '-75.73320'), ('Wanchese', 1527, '35.83750', '-75.64020')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC057': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Arcadia', 3538, '35.95000', '-80.30000'), ('Denton', 1450, '35.63660', '-80.11190'), ('Gordontown', 1450, '35.75000', '-80.12000'), ('High Rock', 1450, '35.60000', '-80.23000'), ('Lexington', 19953, '35.80900', '-80.25700'), ('Linwood', 4247, '35.75056', '-80.31800'), ('Midway', 3538, '35.98000', '-80.27000'), ('Newsom', 326, '35.53000', '-80.18000'), ('Thomasville', 19788, '35.88890', '-80.07660'), ('Welcome', 3538, '35.91080', '-80.25420')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC059': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Advance', 13827, '35.93460', '-80.40560'), ('Cooleemee', 905, '35.81250', '-80.55750'), ('Farmington', 43720, '36.00930', '-80.52950'), ('Fork Church', 43720, '35.88060', '-80.44580'), ('Mocksville', 43720, '35.89750', '-80.55600'), ('Sheffield', 526, '35.96610', '-80.68030')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC061': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beulaville', 1067, '34.92230', '-77.77250'), ('Calypso', 410, '35.15460', '-78.10500'), ('Faison', 744, '35.11660', '-78.13660'), ('Greenevers', 560, '34.82700', '-77.92440'), ('Kenansville', 1149, '34.96200', '-77.96600'), ('Magnolia', 932, '34.89550', '-78.05520'), ('Rose Hill', 1330, '34.82500', '-78.02820'), ('Teachey', 245, '34.76740', '-78.00880'), ('Wallace', 3344, '34.73500', '-77.99790'), ('Warsaw', 3051, '34.99890', '-78.08800')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC063': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bahama', 5792, '36.17000', '-78.88000'), ('Bethesda', 187035, '35.95000', '-78.85000'), ('Durham', 187035, '35.98040', '-78.91500'), ('Gorman', 1002, '36.03800', '-78.81310'), ('Parkwood', 4123, '35.88850', '-78.90880'), ('Research Triangle', 187035, '35.87000', '-78.84000'), ('Rougemont', 5792, '36.22000', '-78.93000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC065': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Conetoe', 365, '35.81720', '-77.45740'), ('Kingsboro', 11138, '35.91000', '-77.67000'), ('Leggett', 77, '35.99110', '-77.57960'), ('Macclesfield', 458, '35.75220', '-77.67060'), ('Pinetops', 1419, '35.79110', '-77.63730'), ('Princeville', 940, '35.88830', '-77.52600'), ('Rocky Mount', 55893, '35.95000', '-77.78800'), ('Speed', 70, '35.96830', '-77.44430'), ('Tarboro', 11138, '35.90770', '-77.55660'), ('Whitakers', 799, '36.10590', '-77.70000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC067': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Belews Creek', 3267, '36.25000', '-80.06000'), ('Clemmons', 13827, '36.02120', '-80.38770'), ('Donnaha', 659, '36.23000', '-80.43000'), ('Kernersville', 17126, '36.11820', '-80.07640'), ('Lewisville', 8826, '36.09310', '-80.40270'), ('Pfafftown', 185776, '36.15000', '-80.30000'), ('Rural Hall', 2464, '36.23470', '-80.29390'), ('Sedge Garden', 2784, '36.08850', '-80.13900'), ('Stanleyville', 185776, '36.19880', '-80.26690'), ('Walkertown', 4009, '36.17150', '-80.15300'), ('Winston-Salem', 185776, '36.10210', '-80.26290')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC069': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bunn', 357, '35.95870', '-78.25260'), ('Centerville', 99, '36.18650', '-78.11030'), ('Franklinton', 1745, '36.10360', '-78.45660'), ('Ingleside', 3111, '36.18000', '-78.30000'), ('Louisburg', 3111, '36.10030', '-78.29930'), ('Pilot', 3173, '35.88000', '-78.27000'), ('Youngsville', 651, '36.02590', '-78.47710')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC071': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Belmont', 8705, '35.24990', '-81.04020'), ('Bessemer City', 5119, '35.28400', '-81.28520'), ('Cherryville', 5361, '35.38160', '-81.37560'), ('Cramerton', 2976, '35.23460', '-81.07420'), ('Crowders', 5487, '35.18610', '-81.20670'), ('Dallas', 3402, '35.31470', '-81.17680'), ('Gastonia', 66277, '35.25270', '-81.17150'), ('High Shoals', 729, '35.39820', '-81.20150'), ('Lowell', 2662, '35.26860', '-81.10140'), ('Lucia', 1440, '35.38470', '-81.01080'), ('McAdenville', 619, '35.26470', '-81.08000'), ('Mount Holly', 9618, '35.30520', '-81.03140'), ('Ranlo', 2198, '35.28700', '-81.13130'), ('Stanley', 3053, '35.35650', '-81.09750')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC073': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Acorn Hill', 281, '36.44270', '-76.54680'), ('Buckland', 281, '36.47420', '-76.76170'), ('Carter', 281, '36.35720', '-76.68430'), ('Corapeake', 52141, '36.53440', '-76.57680'), ('Dort', 78, '36.52920', '-76.87010'), ('Drum Hill', 281, '36.54150', '-76.72520'), ('Easons Crossroads', 281, '36.44970', '-76.69940'), ('Eure', 956, '36.42600', '-76.85630'), ('Gates', 281, '36.50350', '-76.76860'), ('Gatesville', 281, '36.40720', '-76.75540'), ('Hazelton', 281, '36.51800', '-76.69900'), ('Hobbsville', 281, '36.34760', '-76.60410'), ('Rays Beach', 347, '36.37740', '-76.84020'), ('Reynoldson', 281, '36.52810', '-76.79210'), ('Roduco', 281, '36.46240', '-76.81230'), ('Sandy Cross', 554, '36.36860', '-76.55330'), ('Savage', 281, '36.49180', '-76.60110'), ('Sunbury', 281, '36.44300', '-76.60820'), ('Topsy', 956, '36.50330', '-76.87100'), ('Trotville', 281, '36.36870', '-76.59790'), ('Wyanoke', 78, '36.54340', '-76.91180')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC075': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Fontana Village', 44, '35.43560', '-83.81920'), ('Robbinsville', 747, '35.32280', '-83.80690'), ('Santeetlah', 44, '35.36380', '-83.86650'), ('Stecoah', 747, '35.36970', '-83.69060'), ('Tapoco', 44, '35.44330', '-83.93690')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC077': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Berea', 229, '36.32000', '-78.73000'), ('Butner', 5792, '36.13520', '-78.77040'), ('Creedmoor', 2232, '36.12090', '-78.68720'), ('Kerr Lake', 376, '36.53000', '-78.60000'), ('Oak Hill', 161, '36.43000', '-78.72000'), ('Oxford', 8338, '36.31090', '-78.58960'), ('Stem', 229, '36.19980', '-78.72320'), ('Stovall', 376, '36.44770', '-78.56940')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC079': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Hookerton', 467, '35.42290', '-77.58920'), ('Snow Hill', 1514, '35.45140', '-77.67450'), ('Walstonburg', 224, '35.59470', '-77.69920')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC081': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Climax', 4714, '35.92000', '-79.73000'), ('Colfax', 17126, '36.13000', '-80.02000'), ('Forest Oaks', 3241, '35.98800', '-79.70640'), ('Gibsonville', 4372, '36.10350', '-79.54080'), ('Greensboro', 223891, '36.07890', '-79.82690'), ('High Point', 85839, '35.98130', '-79.99820'), ('Jamestown', 3088, '35.99560', '-79.93450'), ('Lake Townsend', 223891, '36.17000', '-79.78000'), ('McLeansville', 1080, '36.10360', '-79.66050'), ('Monticello', 1080, '36.20000', '-79.68000'), ('Pleasant Garden', 4714, '35.96220', '-79.77410'), ('Stokesdale', 3267, '36.23570', '-79.98420'), ('Summerfield', 7018, '36.20260', '-79.89420')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC083': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Airlie', 692, '36.33000', '-77.88000'), ('Enfield', 2347, '36.17940', '-77.66810'), ('Glenview', 799, '36.17000', '-77.82000'), ('Halifax', 344, '36.32520', '-77.59000'), ('Hobgood', 404, '36.02740', '-77.39520'), ('Littleton', 692, '36.43420', '-77.91060'), ('Roanoke Rapids', 16957, '36.45320', '-77.65170'), ('Rosemary', 2843, '36.45130', '-77.69750'), ('Scotland Neck', 2362, '36.13030', '-77.42130'), ('South Weldon', 1414, '36.40320', '-77.61900'), ('Tillery', 344, '36.25000', '-77.48000'), ('Weldon', 1374, '36.42420', '-77.60560')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC085': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Anderson Creek', 8098, '35.28000', '-78.93000'), ('Angier', 3419, '35.51070', '-78.73880'), ('Buies Creek', 2215, '35.40750', '-78.74020'), ('Coats', 1845, '35.40620', '-78.66880'), ('Duncan', 7898, '35.56000', '-78.88000'), ('Dunn', 9196, '35.31130', '-78.61530'), ('Erwin', 4537, '35.32520', '-78.67230'), ('Lillington', 2915, '35.39790', '-78.81610'), ('Olivia', 1015, '35.37000', '-79.11000'), ('Pineview', 1015, '35.31000', '-79.08000'), ('Seminole', 1015, '35.46000', '-79.00000'), ('Timberlake', 8098, '35.28800', '-78.95000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC087': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Canton', 4029, '35.54610', '-82.84300'), ('Clyde', 1324, '35.53320', '-82.91180'), ('Cove Creek', 2675, '35.60640', '-83.01140'), ('Cruso', 4029, '35.41750', '-82.81080'), ('Lake Junaluska', 2675, '35.52770', '-82.97660'), ('Maggie Valley', 607, '35.51720', '-83.09150'), ('Sunburst', 1678, '35.41060', '-82.93220'), ('Waterville', 7123, '35.76260', '-83.10050'), ('Waynesville', 9232, '35.48450', '-82.99750')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC089': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bat Cave', 1027, '35.45080', '-82.28230'), ('Dana', 4151, '35.32920', '-82.37560'), ('East Flat Rock', 4151, '35.28450', '-82.41920'), ('Etowah', 2766, '35.31530', '-82.59510'), ('Flat Rock', 2565, '35.27110', '-82.44170'), ('Fletcher', 4185, '35.43430', '-82.50290'), ('Hendersonville', 10420, '35.32150', '-82.46220'), ('Mills River', 2169, '35.38830', '-82.56690'), ('Mountain Home', 2169, '35.36990', '-82.50440'), ('Tuxedo', 4151, '35.22530', '-82.42970')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC091': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ahoskie', 4523, '36.28680', '-76.98590'), ('Barretts Crossroad', 78, '36.47030', '-77.05580'), ('Bartonsville', 78, '36.47500', '-76.95890'), ('Brantleys Grove', 4523, '36.32110', '-76.94920'), ('Chowan Beach', 956, '36.41750', '-76.95000'), ('Cofield', 347, '36.35560', '-76.90970'), ('Como', 78, '36.49970', '-77.01480'), ('Earleys', 4523, '36.25720', '-77.02780'), ('Harrellsville', 102, '36.30130', '-76.79270'), ('Mapleton', 2045, '36.42670', '-77.03500'), ('Menola', 833, '36.33890', '-77.12920'), ('Millennium', 888, '36.24860', '-77.09420'), ('Murfreesboro', 2045, '36.44060', '-77.09910'), ('Newsome Store', 102, '36.26220', '-76.76810'), ('Oak Villa', 956, '36.37330', '-76.94720'), ('Poor Town', 4523, '36.28030', '-77.02560'), ('Proctors Corner', 4523, '36.25530', '-76.98810'), ('Riddicksville', 78, '36.52720', '-76.93920'), ('Saint John', 888, '36.30610', '-77.08670'), ('Tunis', 347, '36.37500', '-76.89500'), ('Union', 4523, '36.33380', '-77.02420'), ('Winton', 956, '36.38990', '-76.93610')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC091': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ahoskie', 4523, '36.28680', '-76.98590'), ('Barretts Crossroad', 78, '36.47030', '-77.05580'), ('Bartonsville', 78, '36.47500', '-76.95890'), ('Brantleys Grove', 4523, '36.32110', '-76.94920'), ('Chowan Beach', 956, '36.41750', '-76.95000'), ('Cofield', 347, '36.35560', '-76.90970'), ('Como', 78, '36.49970', '-77.01480'), ('Earleys', 4523, '36.25720', '-77.02780'), ('Harrellsville', 102, '36.30130', '-76.79270'), ('Mapleton', 2045, '36.42670', '-77.03500'), ('Menola', 833, '36.33890', '-77.12920'), ('Millennium', 888, '36.24860', '-77.09420'), ('Murfreesboro', 2045, '36.44060', '-77.09910'), ('Newsome Store', 102, '36.26220', '-76.76810'), ('Oak Villa', 956, '36.37330', '-76.94720'), ('Poor Town', 4523, '36.28030', '-77.02560'), ('Proctors Corner', 4523, '36.25530', '-76.98810'), ('Riddicksville', 78, '36.52720', '-76.93920'), ('Saint John', 888, '36.30610', '-77.08670'), ('Tunis', 347, '36.37500', '-76.89500'), ('Union', 4523, '36.33380', '-77.02420'), ('Winton', 956, '36.38990', '-76.93610')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC093': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Antioch', 3493, '34.88000', '-79.20000'), ('Ashley Heights', 3400, '35.10000', '-79.38000'), ('Bowmore', 145, '34.94000', '-79.31000'), ('Raeford', 3386, '34.97900', '-79.22460'), ('Rockfish', 2353, '34.98000', '-79.07000'), ('Silver City', 1146, '34.99600', '-79.22780')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC095': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC095': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC097': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Harmony', 526, '35.95840', '-80.77280'), ('Love Valley', 30, '35.99020', '-80.98520'), ('Mooresville', 18823, '35.57940', '-80.81220'), ('Scotts', 1380, '35.84280', '-81.00940'), ('Statesville', 23320, '35.78670', '-80.88630'), ('Troutman', 1592, '35.70470', '-80.89050'), ('Turnersburg', 526, '35.90830', '-80.80750'), ('Union Grove', 526, '36.02440', '-80.86360')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC099': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Balsam', 607, '35.42670', '-83.08530'), ('Cashiers', 196, '35.10560', '-83.09670'), ('Cullowhee', 3579, '35.31160', '-83.17840'), ('Dillsboro', 205, '35.36900', '-83.25210'), ('Gay', 205, '35.29140', '-83.27330'), ('Sylva', 2435, '35.37440', '-83.22280'), ('Tuckasegee', 3579, '35.27030', '-83.12280'), ('Webster', 486, '35.35290', '-83.21500'), ('Wolf Mountain', 490, '35.21580', '-82.98670')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC101': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Benson', 2923, '35.37990', '-78.54700'), ('Clayton', 6973, '35.64700', '-78.45830'), ('Coats Crossroads', 2923, '35.52000', '-78.55000'), ('Emit', 838, '35.73000', '-78.27000'), ('Flowers', 6973, '35.65000', '-78.35000'), ('Four Oaks', 1424, '35.44770', '-78.42500'), ('Kenly', 1569, '35.59340', '-78.12530'), ('Micro', 454, '35.56260', '-78.20420'), ('Pine Level', 1313, '35.51000', '-78.24620'), ('Princeton', 1066, '35.46550', '-78.16040'), ('Selma', 5914, '35.53680', '-78.28870'), ('Smithfield', 11510, '35.50730', '-78.34410')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC103': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Maysville', 1002, '34.90370', '-77.23090'), ('Pollocksville', 269, '35.00700', '-77.22130'), ('Trenton', 206, '35.06300', '-77.35500')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC105': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Broadway', 1015, '35.45710', '-79.05360'), ('Cumnock', 23220, '35.54000', '-79.23000'), ('Gum Springs', 23220, '35.46000', '-79.22000'), ('Lemon Springs', 151, '35.38000', '-79.20000'), ('Sanford', 23220, '35.47700', '-79.18130'), ('Tramway', 23220, '35.43000', '-79.23000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC107': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Kinston', 23688, '35.27540', '-77.59030'), ('La Grange', 2844, '35.30590', '-77.78840'), ('Pink Hill', 521, '35.05640', '-77.74480')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC109': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Boger City', 554, '35.47940', '-81.20220'), ('Crouse', 5361, '35.42080', '-81.30560'), ('Denver', 1280, '35.53110', '-81.03000'), ('Iron Station', 554, '35.44140', '-81.15640'), ('Lincolnton', 9965, '35.47580', '-81.24550'), ('Lowesville', 1440, '35.42120', '-81.00260'), ('Vale', 962, '35.53970', '-81.39750')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC111': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ashford', 2030, '35.87280', '-81.93880'), ('Dysartsville', 1556, '35.60020', '-81.87150'), ('Fero', 1556, '35.58200', '-81.97670'), ('Glenwood', 1556, '35.60870', '-81.97930'), ('Little Switzerland', 0, '35.84650', '-82.09000'), ('Marion', 4943, '35.68250', '-82.00860'), ('Nebo', 4943, '35.71500', '-81.93110'), ('Old Fort', 963, '35.63210', '-82.17580'), ('Sugar Hill', 1556, '35.58440', '-82.04250'), ('Woodlawn', 1051, '35.78530', '-82.04060')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC113': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Franklin', 3490, '35.18100', '-83.38180'), ('Highlands', 909, '35.05400', '-83.19810'), ('Kyle', 1602, '35.22270', '-83.60930'), ('Nantahala Lake', 1602, '35.18970', '-83.65130'), ('Otto', 199, '35.06000', '-83.38780'), ('Rainbow Springs', 3490, '35.08650', '-83.55930'), ('Scaly', 187, '35.01170', '-83.31640')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC115': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Allenstand', 645, '35.97280', '-82.75310'), ('Faust', 1764, '35.91110', '-82.53030'), ('Hot Springs', 645, '35.89160', '-82.82830'), ('Luck', 645, '35.73580', '-82.86640'), ('Marshall', 840, '35.79670', '-82.68400'), ('Mars Hill', 1764, '35.82820', '-82.55060'), ('Spring Creek', 645, '35.79860', '-82.85440'), ('Walnut', 840, '35.84940', '-82.73890'), ('Whiterock', 645, '35.95250', '-82.70170')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC117': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beargrass', 53, '35.76580', '-77.12980'), ('Everetts', 179, '35.83330', '-77.17180'), ('Hamilton', 516, '35.94400', '-77.20810'), ('Hassell', 72, '35.90820', '-77.27780'), ('Jamesville', 502, '35.81160', '-76.89970'), ('Oak City', 339, '35.96210', '-77.30490'), ('Parmele', 290, '35.81970', '-77.31240'), ('Robersonville', 1731, '35.82490', '-77.25300'), ('Williamston', 5843, '35.85140', '-77.05860')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC119': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Center City Charlotte', 540828, '35.22710', '-80.84310'), ('Cornelius', 11969, '35.48080', '-80.86860'), ('Croft', 24960, '35.34470', '-80.82440'), ('Davidson', 7139, '35.49850', '-80.84650'), ('Eastland Mall', 540828, '35.20750', '-80.75310'), ('Huntersville', 24960, '35.41580', '-80.84510'), ('Matthews', 22127, '35.12200', '-80.71320'), ('Mint Hill', 14922, '35.17690', '-80.66170'), ('Paw Creek', 9618, '35.27420', '-80.93860'), ('Pineville', 3449, '35.08460', '-80.88570'), ('Southpark Mall', 540828, '35.15130', '-80.82870'), ('Unc Charlotte', 540828, '35.30250', '-80.72910')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC121': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bakersville', 357, '36.01480', '-82.15840'), ('Bandana', 357, '35.97310', '-82.17610'), ('Buladean', 357, '36.10830', '-82.19500'), ('Ledger', 357, '35.96420', '-82.16530'), ('Poplar', 1717, '36.07250', '-82.34330'), ('Spruce Pine', 2030, '35.91620', '-82.06990')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC123': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Badin Lake', 1154, '35.46000', '-80.08000'), ('Biscoe', 1700, '35.36030', '-79.78050'), ('Candor', 825, '35.29120', '-79.74360'), ('Eldorado', 1154, '35.47000', '-80.03000'), ('Mount Gilead', 1389, '35.21510', '-80.00300'), ('Pekin', 1389, '35.22000', '-79.88000'), ('Star', 807, '35.40050', '-79.78420'), ('Steeds', 807, '35.47000', '-79.80000'), ('Troy', 3430, '35.36410', '-79.89320')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC125': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aberdeen', 3400, '35.13950', '-79.42140'), ('Cameron', 151, '35.32700', '-79.25160'), ('Carthage', 1871, '35.34740', '-79.41830'), ('Eagle Springs', 3214, '35.30000', '-79.65000'), ('Foxfire', 474, '35.17360', '-79.56830'), ('Glendon', 1195, '35.48235', '-79.41700'), ('Highfalls', 1195, '35.48000', '-79.53000'), ('High Falls', 424, '35.48360', '-79.52200'), ('Pinebluff', 1109, '35.10710', '-79.47230'), ('Pinehurst', 9706, '35.18030', '-79.46140'), ('Robbins', 1195, '35.43240', '-79.58420'), ('Seven Lakes', 3214, '35.26420', '-79.58500'), ('Southern Pines', 10918, '35.18350', '-79.40220'), ('Taylortown', 845, '35.21590', '-79.49200'), ('Vass', 750, '35.25580', '-79.28220'), ('Whispering Pines', 2090, '35.25490', '-79.37950')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC127': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aventon', 2723, '36.15000', '-77.95000'), ('Bailey', 670, '35.78010', '-78.11290'), ('Battleboro', 527, '36.04860', '-77.75080'), ('Castalia', 340, '36.08230', '-78.05730'), ('Dortches', 809, '36.01110', '-77.85840'), ('Middlesex', 838, '35.78770', '-78.20460'), ('Nashville', 4309, '35.96730', '-77.95610'), ('Red Oak', 2723, '36.03850', '-77.90680'), ('Sharpsburg', 2421, '35.86710', '-77.83240'), ('Spring Hope', 1261, '35.94450', '-78.10940')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC129': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bayshore', 2512, '34.28950', '-77.78770'), ('Carolina Beach', 4701, '34.04020', '-77.89520'), ('Castle Hayne', 1116, '34.35500', '-77.90320'), ('Kure Beach', 1507, '33.99600', '-77.91070'), ('Masonboro', 11812, '34.16910', '-77.86620'), ('Myrtle Grove', 7125, '34.12440', '-77.88370'), ('Ogden', 5481, '34.26500', '-77.79950'), ('Seagate', 4590, '34.20350', '-77.84290'), ('Silver Lake', 5788, '34.14860', '-77.91800'), ('Smith Creek', 7461, '34.26270', '-77.86380'), ('Wilmington', 75838, '34.21240', '-77.91130'), ('Windemere', 4604, '34.24370', '-77.84500'), ('Wrightsboro', 4496, '34.28250', '-77.92420'), ('Wrightsville Beach', 2593, '34.20830', '-77.79670')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC129': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bayshore', 2512, '34.28950', '-77.78770'), ('Carolina Beach', 4701, '34.04020', '-77.89520'), ('Castle Hayne', 1116, '34.35500', '-77.90320'), ('Kure Beach', 1507, '33.99600', '-77.91070'), ('Masonboro', 11812, '34.16910', '-77.86620'), ('Myrtle Grove', 7125, '34.12440', '-77.88370'), ('Ogden', 5481, '34.26500', '-77.79950'), ('Seagate', 4590, '34.20350', '-77.84290'), ('Silver Lake', 5788, '34.14860', '-77.91800'), ('Smith Creek', 7461, '34.26270', '-77.86380'), ('Wilmington', 75838, '34.21240', '-77.91130'), ('Windemere', 4604, '34.24370', '-77.84500'), ('Wrightsboro', 4496, '34.28250', '-77.92420'), ('Wrightsville Beach', 2593, '34.20830', '-77.79670')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC131': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Boones Crossroads', 695, '36.33860', '-77.41890'), ('Bryantown', 931, '36.28060', '-77.35920'), ('Conway', 734, '36.43670', '-77.22970'), ('Creeksville', 103, '36.39390', '-77.30390'), ('Eagletown', 931, '36.27140', '-77.22860'), ('Falsons Old Tavern', 734, '36.44470', '-77.32410'), ('Galatia', 734, '36.47140', '-77.30280'), ('Garysburg', 1254, '36.44680', '-77.55970'), ('Gaston', 973, '36.49620', '-77.64430'), ('George', 833, '36.32200', '-77.23160'), ('Gumberry', 695, '36.47000', '-77.49840'), ('Gum Forks', 973, '36.50610', '-77.68030'), ('Henrico', 692, '36.53420', '-77.83070'), ('Jackson', 695, '36.39030', '-77.41980'), ('Lasker', 103, '36.34970', '-77.30560'), ('Margarettsville', 695, '36.53210', '-77.35070'), ('Milwaukee', 734, '36.40570', '-77.23220'), ('Mud Castle', 344, '36.37000', '-77.53140'), ('Pendleton', 263, '36.47160', '-77.19870'), ('Pleasant Grove', 695, '36.43920', '-77.44470'), ('Pleasant Hill', 795, '36.53330', '-77.53480'), ('Potecasi', 833, '36.36330', '-77.23930'), ('Rich Square', 931, '36.27370', '-77.28440'), ('Seaboard', 695, '36.49030', '-77.44110'), ('Severn', 263, '36.51370', '-77.18980'), ('Vultare', 2843, '36.51690', '-77.76530'), ('Woodland', 833, '36.33220', '-77.21090')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC133': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Camp Lejeune Center', 36716, '34.69580', '-77.36650'), ('Half Moon', 6645, '34.82700', '-77.46650'), ('Holly Ridge', 831, '34.49260', '-77.55580'), ('Jacksonville', 66715, '34.76440', '-77.40410'), ('New River Station', 9732, '34.70970', '-77.44250'), ('Piney Green', 11658, '34.75440', '-77.32160'), ('Pumpkin Center', 2228, '34.78040', '-77.36660'), ('Richlands', 928, '34.89980', '-77.54780'), ('Sneads Ferry', 2248, '34.55370', '-77.37870'), ('Swansboro', 1426, '34.69050', '-77.12890')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC135': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Cane Creek Reservoir', 1418, '35.95000', '-79.23000'), ('Carr', 7284, '36.22000', '-79.22000'), ('Carrboro', 16782, '35.91530', '-79.08380'), ('Chapel Hill', 48715, '35.92760', '-79.04060'), ('Efland', 5446, '36.06000', '-79.17000'), ('Hillsborough', 5446, '36.07120', '-79.10270'), ('Schley', 5446, '36.15000', '-79.07000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC137': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alliance', 781, '35.14450', '-76.80790'), ('Arapahoe', 436, '35.01910', '-76.82730'), ('Bayboro', 741, '35.14390', '-76.76870'), ('Mesic', 257, '35.20450', '-76.64830'), ('Minnesott Beach', 311, '34.98030', '-76.81870'), ('Oriental', 875, '35.03470', '-76.68460'), ('Stonewall', 285, '35.13750', '-76.74150'), ('Vandemere', 289, '35.18910', '-76.66490')], 'partOfState': '', 'wfo': 'MHX'}, +'NCC139': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bob White Fork', 17188, '36.19360', '-76.20830'), ('Elizabeth City', 17188, '36.29600', '-76.22060'), ('Frog Island', 17188, '36.14030', '-76.10470'), ('Glen Cove', 17188, '36.16810', '-76.07220'), ('Listers Corner', 17188, '36.14140', '-76.17170'), ('Lynchs Corner', 554, '36.42320', '-76.42030'), ('Morgans Corner', 17188, '36.41740', '-76.34890'), ('Nixonton', 17188, '36.19970', '-76.27190'), ('Okisko', 554, '36.25920', '-76.35500'), ('Pasquotank', 17188, '36.26720', '-76.33870'), ('Rabbit Corner', 17188, '36.24390', '-76.32220'), ('Symonds Creek', 17188, '36.19250', '-76.23170'), ('Weeksville', 17188, '36.20730', '-76.17000')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC139': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bob White Fork', 17188, '36.19360', '-76.20830'), ('Elizabeth City', 17188, '36.29600', '-76.22060'), ('Frog Island', 17188, '36.14030', '-76.10470'), ('Glen Cove', 17188, '36.16810', '-76.07220'), ('Listers Corner', 17188, '36.14140', '-76.17170'), ('Lynchs Corner', 554, '36.42320', '-76.42030'), ('Morgans Corner', 17188, '36.41740', '-76.34890'), ('Nixonton', 17188, '36.19970', '-76.27190'), ('Okisko', 554, '36.25920', '-76.35500'), ('Pasquotank', 17188, '36.26720', '-76.33870'), ('Rabbit Corner', 17188, '36.24390', '-76.32220'), ('Symonds Creek', 17188, '36.19250', '-76.23170'), ('Weeksville', 17188, '36.20730', '-76.17000')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC141': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Atkinson', 236, '34.52750', '-78.17030'), ('Burgaw', 3337, '34.55030', '-77.92640'), ('Currie', 0, '34.47000', '-78.10000'), ('Hampstead', 0, '34.37000', '-77.70000'), ('Maple Hill', 0, '34.67000', '-77.72000'), ('Penderlea', 0, '34.67000', '-78.05000'), ('Rocky Point', 0, '34.43000', '-77.88000'), ('St. Helena', 395, '34.51380', '-77.91540'), ('Surf City', 1393, '34.42390', '-77.55840'), ('Watha', 151, '34.64230', '-77.96290'), ('Willard', 0, '34.68000', '-77.98000')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC141': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Atkinson', 236, '34.52750', '-78.17030'), ('Burgaw', 3337, '34.55030', '-77.92640'), ('Currie', 0, '34.47000', '-78.10000'), ('Hampstead', 0, '34.37000', '-77.70000'), ('Maple Hill', 0, '34.67000', '-77.72000'), ('Penderlea', 0, '34.67000', '-78.05000'), ('Rocky Point', 0, '34.43000', '-77.88000'), ('St. Helena', 395, '34.51380', '-77.91540'), ('Surf City', 1393, '34.42390', '-77.55840'), ('Watha', 151, '34.64230', '-77.96290'), ('Willard', 0, '34.68000', '-77.98000')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC143': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beach Springs', 2070, '36.20920', '-76.51500'), ('Belvidere', 554, '36.26850', '-76.53590'), ('Burgess', 2070, '36.13470', '-76.40750'), ('Chapanoke', 554, '36.25400', '-76.37740'), ('Forestburg', 554, '36.19080', '-76.37830'), ('Harvey Point', 2070, '36.09000', '-76.32000'), ('Hertford', 2070, '36.18310', '-76.47460'), ('Hickory Crossroads', 554, '36.32030', '-76.54450'), ('Holiday Island', 2070, '36.08750', '-76.38330'), ('Jacocks', 17188, '36.14830', '-76.26410'), ('Light Nixon Fork', 2070, '36.13220', '-76.49390'), ('Nicanor', 554, '36.33220', '-76.47980'), ('Parkville', 554, '36.29140', '-76.39940'), ('Peach', 554, '36.34500', '-76.53610'), ('Smithtown', 554, '36.24200', '-76.48450'), ('Snug Harbor', 2070, '36.08240', '-76.43000'), ('Whiteston', 554, '36.32510', '-76.49860'), ('Winfall', 554, '36.21060', '-76.45520'), ('Woodville', 17188, '36.23420', '-76.32670'), ('Yeopim Station', 2070, '36.14200', '-76.52290')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC143': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beach Springs', 2070, '36.20920', '-76.51500'), ('Belvidere', 554, '36.26850', '-76.53590'), ('Burgess', 2070, '36.13470', '-76.40750'), ('Chapanoke', 554, '36.25400', '-76.37740'), ('Forestburg', 554, '36.19080', '-76.37830'), ('Harvey Point', 2070, '36.09000', '-76.32000'), ('Hertford', 2070, '36.18310', '-76.47460'), ('Hickory Crossroads', 554, '36.32030', '-76.54450'), ('Holiday Island', 2070, '36.08750', '-76.38330'), ('Jacocks', 17188, '36.14830', '-76.26410'), ('Light Nixon Fork', 2070, '36.13220', '-76.49390'), ('Nicanor', 554, '36.33220', '-76.47980'), ('Parkville', 554, '36.29140', '-76.39940'), ('Peach', 554, '36.34500', '-76.53610'), ('Smithtown', 554, '36.24200', '-76.48450'), ('Snug Harbor', 2070, '36.08240', '-76.43000'), ('Whiteston', 554, '36.32510', '-76.49860'), ('Winfall', 554, '36.21060', '-76.45520'), ('Woodville', 17188, '36.23420', '-76.32670'), ('Yeopim Station', 2070, '36.14200', '-76.52290')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCC145': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bethel Hill', 161, '36.50000', '-78.88000'), ('Bushy Fork', 8696, '36.31000', '-79.08000'), ('Concord', 8696, '36.47000', '-79.06000'), ('Moriah', 229, '36.25000', '-78.83000'), ('Roxboro', 8696, '36.40160', '-78.98010'), ('Surl', 8696, '36.32000', '-78.88000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC147': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ayden', 4622, '35.47080', '-77.42110'), ('Bethel', 1681, '35.80760', '-77.37610'), ('Falkland', 112, '35.69860', '-77.51480'), ('Farmville', 4302, '35.59490', '-77.59100'), ('Fountain', 533, '35.67410', '-77.63710'), ('Greenville', 60476, '35.59980', '-77.37440'), ('Grifton', 2073, '35.37380', '-77.43460'), ('Grimesland', 440, '35.56230', '-77.19170'), ('Simpson', 464, '35.57500', '-77.27880'), ('Winterville', 4791, '35.52870', '-77.39770')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC149': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Columbus', 992, '35.24680', '-82.20490'), ('Lake Adger', 992, '35.33500', '-82.18670'), ('Mill Spring', 992, '35.29750', '-82.16140'), ('Saluda', 575, '35.23790', '-82.34810'), ('Tryon', 1760, '35.20890', '-82.23870')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC151': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Archdale', 9014, '35.90380', '-79.96630'), ('Asheboro', 21672, '35.71980', '-79.81170'), ('Coleridge', 1588, '35.64000', '-79.60000'), ('Franklinville', 1258, '35.74500', '-79.69180'), ('Liberty', 2661, '35.85420', '-79.57140'), ('Martha', 1450, '35.62000', '-80.01000'), ('New Hope', 1450, '35.55000', '-80.02000'), ('Ramseur', 1588, '35.73340', '-79.65060'), ('Randleman', 3557, '35.81700', '-79.80240'), ('Seagrove', 246, '35.54150', '-79.77690'), ('Staley', 347, '35.79460', '-79.55140'), ('Trinity', 6690, '35.88790', '-80.01450'), ('Ulah', 21672, '35.64000', '-79.84000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC153': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Covington', 1021, '35.15000', '-79.87000'), ('Derby', 72, '35.15000', '-79.65000'), ('Diggs', 89, '34.85000', '-79.87000'), ('Dobbins Heights', 936, '34.90660', '-79.69350'), ('East Rockingham', 3885, '34.91130', '-79.76550'), ('Ellerbe', 1021, '35.07070', '-79.76080'), ('Hamlet', 6018, '34.88960', '-79.70930'), ('Hoffman', 624, '35.03250', '-79.54970'), ('Norman', 72, '35.16390', '-79.72250'), ('Rockingham', 9672, '34.93930', '-79.76230')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC155': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Barker Ten Mile', 976, '34.67980', '-78.98880'), ('Fairmont', 2604, '34.49510', '-79.11540'), ('Lumber Bridge', 118, '34.88940', '-79.07300'), ('Lumberton', 20795, '34.63230', '-79.01490'), ('Marietta', 164, '34.36890', '-79.12740'), ('Maxton', 2551, '34.73720', '-79.35170'), ('McDonald', 119, '34.55310', '-79.17630'), ('Orrum', 79, '34.46580', '-79.01010'), ('Parkton', 428, '34.90220', '-79.01000'), ('Pembroke', 2399, '34.68080', '-79.19870'), ('Proctorville', 133, '34.47540', '-79.03790'), ('Raynham', 67, '34.57490', '-79.19050'), ('Red Springs', 3493, '34.81420', '-79.18450'), ('Rennert', 283, '34.81470', '-79.07940'), ('Rowland', 1146, '34.53660', '-79.29270'), ('Smiths', 0, '34.65000', '-78.87000'), ('St. Pauls', 2137, '34.80720', '-78.97300'), ('Tolarsville', 0, '34.77000', '-78.87000')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCC157': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bethany', 7018, '36.31670', '-79.85000'), ('Draper', 15908, '36.51670', '-79.68330'), ('Eden', 15908, '36.50570', '-79.74220'), ('Ellisboro', 2262, '36.33330', '-79.98330'), ('Harrisons Crossroads', 14485, '36.43330', '-79.68330'), ('Intelligence', 2262, '36.36670', '-79.90000'), ('Lawsonville', 14485, '36.40000', '-79.56670'), ('Madison', 2262, '36.38620', '-79.97550'), ('Mayfield', 53056, '36.51670', '-79.56670'), ('Mayodan', 2417, '36.41350', '-79.97290'), ('Monroeton', 14485, '36.28330', '-79.73330'), ('Oregon Hill', 14485, '36.45000', '-79.65000'), ('Price', 1002, '36.53330', '-79.91670'), ('Reidsville', 14485, '36.34830', '-79.67240'), ('Ruffin', 14485, '36.45000', '-79.55000'), ('Stoneville', 1002, '36.46570', '-79.90660'), ('Wentworth', 2779, '36.40000', '-79.76670')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCC159': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('China Grove', 3616, '35.57120', '-80.58030'), ('Cleveland', 808, '35.73090', '-80.67920'), ('Craven', 1971, '35.62830', '-80.33190'), ('Enochville', 2851, '35.52000', '-80.66600'), ('Faith', 695, '35.58810', '-80.46120'), ('Gold Hill', 1971, '35.52110', '-80.33830'), ('Granite Quarry', 2175, '35.61320', '-80.44570'), ('Landis', 2996, '35.54630', '-80.61190'), ('Mount Ulla', 808, '35.65830', '-80.72690'), ('Rockwell', 1971, '35.55180', '-80.40690'), ('Salisbury', 26462, '35.66650', '-80.48290'), ('Spencer', 3355, '35.69440', '-80.43310'), ('Woodleaf', 905, '35.76890', '-80.59110')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC161': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alexander Mills', 661, '35.30980', '-81.85700'), ('Cliffside', 479, '35.23810', '-81.77000'), ('Ellenboro', 479, '35.32960', '-81.75910'), ('Forest City', 7549, '35.33600', '-81.86910'), ('Harris', 661, '35.24280', '-81.87470'), ('Lake Lure', 1027, '35.44060', '-82.20660'), ('Rutherfordton', 4131, '35.36480', '-81.96090'), ('Shingle Hollow', 0, '35.47096', '-82.07372'), ('Spindale', 4022, '35.36030', '-81.92470'), ('Sunshine', 371, '35.44890', '-81.81060'), ('Thermal City', 366, '35.51920', '-81.97500')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC163': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Autryville', 196, '34.99650', '-78.64060'), ('Clinton', 8600, '35.00020', '-78.33180'), ('Garland', 808, '34.78600', '-78.39500'), ('Harrells', 187, '34.72960', '-78.20100'), ('Hobbton', 606, '35.18000', '-78.32000'), ('Ivanhoe', 311, '34.60000', '-78.25000'), ('Newton Grove', 606, '35.25220', '-78.35590'), ('Roseboro', 1267, '34.95390', '-78.51210'), ('Salemburg', 469, '35.01420', '-78.50310'), ("Spivey's Corner", 1820, '35.25000', '-78.53000'), ('Turkey', 262, '34.99320', '-78.18540')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC165': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Camp Mackall', 624, '35.02000', '-79.47000'), ('East Laurinburg', 295, '34.77020', '-79.44530'), ('Gibson', 584, '34.75870', '-79.60680'), ('Laurel Hill', 15874, '34.80000', '-79.54000'), ('Laurinburg', 15874, '34.76610', '-79.47010'), ('Wagram', 801, '34.88990', '-79.36570')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC167': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Albemarle', 15680, '35.36340', '-80.19220'), ('Badin', 1154, '35.40710', '-80.11130'), ('Finger', 1259, '35.38000', '-80.37000'), ('Locust', 2416, '35.25810', '-80.43060'), ('New London', 326, '35.44260', '-80.21980'), ('Norwood', 2216, '35.22470', '-80.12030'), ('Oakboro', 1198, '35.22310', '-80.32580'), ('Plyler', 15680, '35.37000', '-80.28000'), ('Richfield', 515, '35.47150', '-80.25670'), ('Stanfield', 1113, '35.23530', '-80.42780')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC169': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ayersville', 2417, '36.48330', '-80.03330'), ('Capella', 5952, '36.36670', '-80.31670'), ('Collinstown', 965, '36.53330', '-80.35000'), ('Danbury', 108, '36.40880', '-80.21170'), ('Dillard', 108, '36.40000', '-80.10000'), ('Francisco', 1281, '36.50000', '-80.36670'), ('Germanton', 2464, '36.26670', '-80.23330'), ('King', 5952, '36.27800', '-80.35760'), ('Lawsonville', 108, '36.48330', '-80.25000'), ('Meadows', 108, '36.36670', '-80.18330'), ('Pine Hall', 1465, '36.31670', '-80.06670'), ('Pinnacle', 5952, '36.33330', '-80.40000'), ('Prestonville', 108, '36.46670', '-80.11670'), ('Sandy Ridge', 108, '36.50000', '-80.11670'), ('Vade Mecum', 108, '36.41670', '-80.31670'), ('Walnut Cove', 1465, '36.29480', '-80.13930')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCC171': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ararat', 1049, '36.40000', '-80.56670'), ('Bottom', 1457, '36.48330', '-80.76670'), ('Burch', 1138, '36.28330', '-80.76670'), ('Crutchfield', 1138, '36.28330', '-80.71670'), ('Dobson', 1457, '36.39160', '-80.72130'), ('Elkin', 4109, '36.25750', '-80.84920'), ('Fairview', 1457, '36.33330', '-80.71670'), ('Flat Rock', 1690, '36.50700', '-80.58320'), ('Level Cross', 1457, '36.35000', '-80.63330'), ('Low Gap', 6670, '36.53330', '-80.86670'), ('Mountain Park', 4109, '36.38330', '-80.85000'), ('Mount Airy', 8484, '36.50380', '-80.61310'), ('Pilot Mountain', 1281, '36.38430', '-80.47190'), ('Pine Ridge', 1922, '36.50000', '-80.71670'), ('Rockford', 1138, '36.26670', '-80.65000'), ('Siloam', 659, '36.28330', '-80.56670'), ('State Road', 4109, '36.31670', '-80.86670'), ('Toast', 1922, '36.49690', '-80.63290'), ('Westfield', 8484, '36.47528', '-80.44700'), ('White Plains', 1049, '36.45000', '-80.63330'), ('Woodville', 1690, '36.50000', '-80.48330')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCC173': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alarka', 1411, '35.35180', '-83.43730'), ('Almond', 1411, '35.36970', '-83.56530'), ('Bryson City', 1411, '35.42650', '-83.44730'), ('Cherokee', 205, '35.47420', '-83.31500'), ('Luada', 1411, '35.37280', '-83.50420'), ('Newfound Gap', 3417, '35.60650', '-83.42500'), ('Smokemont', 1411, '35.55200', '-83.30520'), ('Wesser', 1411, '35.33310', '-83.59140')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC175': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Balsam Grove', 490, '35.22940', '-82.87390'), ('Brevard', 6789, '35.23770', '-82.73020'), ('Cedar Mountain', 6789, '35.14330', '-82.64310'), ('Lake Toxaway', 490, '35.13220', '-82.93420'), ('Little River', 2766, '35.23860', '-82.62920'), ('Rosman', 490, '35.14380', '-82.82200'), ('Sapphire', 490, '35.10690', '-83.00310')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCC177': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Columbia', 819, '35.91970', '-76.25120')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC179': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Fairview', 2495, '35.13830', '-80.53780'), ('Indian Trail', 11905, '35.07240', '-80.67920'), ('Marshville', 2360, '34.98710', '-80.36820'), ('Monroe', 26228, '34.98710', '-80.54180'), ('New Salem', 1198, '35.13080', '-80.36940'), ('Stallings', 3189, '35.08470', '-80.68950'), ('Sturdivants', 2360, '34.90580', '-80.32830'), ('Trinity', 26228, '34.84970', '-80.53110'), ('Waxhaw', 2625, '34.92430', '-80.74210'), ('Weddington', 6696, '35.03160', '-80.73810'), ('Wingate', 2406, '34.98330', '-80.44850')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCC181': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bullocksville', 162, '36.48000', '-78.34500'), ('Dabney', 16095, '36.35000', '-78.48000'), ('Gillburg', 1220, '36.28000', '-78.37000'), ('Henderson', 16095, '36.32480', '-78.41200'), ('Kerr Lake', 162, '36.50000', '-78.35000'), ('Kittrell', 148, '36.22190', '-78.44150'), ('Middleburg', 162, '36.39840', '-78.32480'), ('South Henderson', 1220, '36.30250', '-78.40560'), ('Tungsten', 376, '36.52000', '-78.47000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC183': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Apex', 20212, '35.72580', '-78.84500'), ('Carpenter', 5208, '35.82000', '-78.88000'), ('Cary', 94536, '35.78340', '-78.79890'), ('Falls Lake', 12588, '35.93000', '-78.58000'), ('Fuquay-Varina', 7898, '35.59070', '-78.79400'), ('Garner', 17757, '35.69450', '-78.62690'), ('Holly Springs', 9192, '35.65520', '-78.83570'), ('Knightdale', 5958, '35.79250', '-78.48640'), ('Lake Wheeler', 17757, '35.69950', '-78.72000'), ('Morrisville', 5208, '35.83310', '-78.83310'), ('New Hill', 9192, '35.68000', '-78.90000'), ('New Hope', 5694, '35.80710', '-78.55520'), ('Purnell', 12588, '36.02000', '-78.57000'), ('Raleigh', 276093, '35.82200', '-78.65880'), ('Rdu International', 5208, '35.87000', '-78.78000'), ('Rolesville', 907, '35.92760', '-78.45710'), ('Wake Forest', 12588, '35.97060', '-78.52090'), ('Wendell', 4247, '35.78200', '-78.36850')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC185': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Afton', 811, '36.33000', '-78.22000'), ('Arcola', 99, '36.28000', '-77.98000'), ('Drewry', 162, '36.45000', '-78.30000'), ('Lake Gaston', 692, '36.52000', '-77.99000'), ('Macon', 115, '36.43900', '-78.08470'), ('Norlina', 1107, '36.44570', '-78.19550'), ('Warrenton', 811, '36.40010', '-78.15710'), ('Wise', 1107, '36.48000', '-78.18000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC187': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Creswell', 278, '35.87090', '-76.39320'), ('Plymouth', 4107, '35.86090', '-76.74840'), ('Roper', 613, '35.87740', '-76.61710')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCC189': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aho', 1418, '36.16670', '-81.61670'), ('Beech Mountain', 310, '36.21080', '-81.88900'), ('Blowing Rock', 1418, '36.12910', '-81.67060'), ('Boone', 13472, '36.20950', '-81.66990'), ('Deep Gap', 13472, '36.23330', '-81.51670'), ('Foscoe', 129, '36.16670', '-81.76670'), ('Lovill', 13472, '36.23330', '-81.73330'), ('Meat Camp', 13472, '36.30000', '-81.66670'), ('Peoria', 310, '36.28330', '-81.86670'), ('Reese', 2169, '36.33330', '-81.81670'), ('Rominger', 310, '36.23330', '-81.83330'), ('Rutherwood', 13472, '36.23330', '-81.60000'), ('Sands', 13472, '36.25000', '-81.63330'), ('Seven Devils', 129, '36.14970', '-81.81390'), ('Silverstone', 13472, '36.30000', '-81.75000'), ('Sugar Grove', 310, '36.26670', '-81.78330'), ('Todd', 13472, '36.30000', '-81.60000'), ('Valle Crucis', 129, '36.21670', '-81.78330')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCC191': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Brogden', 2907, '35.29660', '-78.02530'), ('Elroy', 3896, '35.33400', '-77.92060'), ('Eureka', 244, '35.54090', '-77.87750'), ('Fremont', 1463, '35.54330', '-77.97600'), ('Goldsboro', 39043, '35.37380', '-77.97610'), ('Grantham', 3004, '35.30000', '-78.17000'), ('Mar-Mac', 3004, '35.33490', '-78.05600'), ('Mount Olive', 4567, '35.19640', '-78.06770'), ('Nahunta', 719, '35.50000', '-78.06000'), ('Pikeville', 719, '35.49750', '-77.98430'), ('Seven Springs', 86, '35.22540', '-77.84600'), ('Walnut Creek', 859, '35.30860', '-77.86890')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC193': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Abshers', 1731, '36.36670', '-81.11670'), ('Benham', 1109, '36.30000', '-80.91670'), ('Boomer', 1440, '36.06670', '-81.25000'), ('Buck', 2071, '36.16670', '-81.23330'), ('Clingman', 460, '36.18330', '-80.93330'), ('Cricket', 2053, '36.16630', '-81.19140'), ('Darby', 1418, '36.11670', '-81.50000'), ('Dockery', 1731, '36.30000', '-81.08330'), ('Elkville', 2071, '36.06670', '-81.40000'), ('Fairplains', 2051, '36.19630', '-81.15270'), ('Halls Mills', 2269, '36.30000', '-81.21670'), ('Hays', 1731, '36.24910', '-81.11610'), ('Maple Springs', 2071, '36.18330', '-81.38330'), ('Mc Grady', 2269, '36.33330', '-81.23330'), ('Millers Creek', 2071, '36.18890', '-81.23760'), ('Moravian Falls', 1440, '36.10000', '-81.18330'), ('Mulberry', 2269, '36.22770', '-81.16610'), ('North Wilkesboro', 4116, '36.16970', '-81.14220'), ('Pleasant Hill', 795, '36.25300', '-80.88530'), ('Roaring River', 460, '36.21670', '-81.00000'), ('Ronda', 460, '36.22160', '-80.94330'), ('Summit', 1081, '36.25000', '-81.41670'), ('Traphill', 1731, '36.35000', '-81.03330'), ('Wilbar', 2071, '36.26670', '-81.31670'), ('Wilkesboro', 3159, '36.14100', '-81.16480'), ('Wilkes County Airport', 1731, '36.21670', '-81.10000'), ('Windy Gap', 460, '36.11670', '-80.98330')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCC195': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Black Creek', 714, '35.63580', '-77.93350'), ('Elm City', 1165, '35.80890', '-77.86290'), ('Lucama', 847, '35.64350', '-78.00860'), ('New Hope', 44405, '35.80000', '-77.95000'), ('Saratoga', 379, '35.65350', '-77.77680'), ('Sims', 128, '35.76040', '-78.05890'), ('Stantonsburg', 726, '35.60450', '-77.82020'), ('Willbanks', 379, '35.75000', '-77.77000'), ('Wilson', 44405, '35.73180', '-77.92450')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCC197': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Boonville', 1138, '36.23320', '-80.70810'), ('Brooks Crossroads', 795, '36.11670', '-80.78330'), ('Buck Shoals', 795, '36.10000', '-80.83330'), ('Courtney', 2818, '36.06670', '-80.63330'), ('East Bend', 659, '36.21730', '-80.50930'), ('Enon', 659, '36.15000', '-80.46670'), ('Huntsville', 8826, '36.08330', '-80.51670'), ('Jonesville', 1464, '36.23480', '-80.84040'), ('Lone Hickory', 2818, '36.06670', '-80.71670'), ('Nebo', 1138, '36.21670', '-80.65000'), ('Shacktown', 2818, '36.11670', '-80.60000'), ('Swancreek', 795, '36.18330', '-80.86670'), ('Yadkinville', 2818, '36.13140', '-80.65960')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCC199': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Burnsville', 1623, '35.91650', '-82.29790'), ('Busick', 963, '35.76970', '-82.18310'), ('Celo', 1623, '35.85500', '-82.19810'), ('Micaville', 1623, '35.90940', '-82.21330'), ('Mount Mitchell State Park', 630, '35.77080', '-82.26330'), ('Ramseytown', 1623, '36.00060', '-82.35750'), ('Swiss', 1764, '35.91420', '-82.45000')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NDC001': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bucyrus', 0, '46.06390', '-102.78830'), ('Haynes', 0, '45.97410', '-102.47060'), ('Hettinger', 0, '46.00130', '-102.63640'), ('North Lemmon', 0, '45.94570', '-102.15960'), ('Reeder', 0, '46.10580', '-102.94520')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC003': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bald Hill Dam', 61, '47.03470', '-98.07780'), ('Dazey', 91, '47.18820', '-98.20050'), ('Eckelson', 194, '46.93800', '-98.33280'), ('Fingal', 133, '46.76210', '-97.79240'), ('Hastings', 191, '46.68390', '-98.09420'), ('Kathryn', 63, '46.67980', '-97.96760'), ('Leal', 36, '47.10510', '-98.31400'), ('Litchville', 191, '46.65740', '-98.19130'), ('Little Yellowstone', 63, '46.63250', '-97.95060'), ('Lucca', 133, '46.70690', '-97.71940'), ('Nome', 70, '46.67560', '-97.81560'), ('Oriska', 128, '46.93140', '-97.78870'), ('Pillsbury', 24, '47.20680', '-97.79610'), ('Rogers', 61, '47.07310', '-98.20210'), ('Sanborn', 194, '46.94270', '-98.22330'), ('Sibley', 46, '47.21730', '-97.96530'), ('Urbana', 194, '46.93440', '-98.41140'), ('Valley City', 6826, '46.92310', '-98.00560'), ('Wimbledon', 237, '47.17070', '-98.45960')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC005': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Baker', 26, '48.16060', '-99.64720'), ('Brinsmade', 29, '48.18330', '-99.32440'), ('Esmond', 159, '48.03290', '-99.76480'), ('Fillmore', 159, '48.18030', '-99.80030'), ('Flora', 498, '47.95030', '-99.41750'), ('Fort Totten', 952, '47.97610', '-98.99480'), ('Harlow', 464, '48.16360', '-99.51860'), ('Knox', 59, '48.34270', '-99.68930'), ('Leeds', 464, '48.28940', '-99.43850'), ('Maddock', 498, '47.96220', '-99.52910'), ('Minnewaukan', 318, '48.06980', '-99.25010'), ('Oberon', 81, '47.92390', '-99.20520'), ('Pleasant Lake', 59, '48.36140', '-99.80170'), ('St Michael', 952, '47.98500', '-98.87220'), ('Tokio', 75, '47.92470', '-98.81580'), ('York', 26, '48.31350', '-99.57340')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC007': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Fairfield', 0, '47.18940', '-103.22270'), ('Fryburg', 0, '46.87050', '-103.30270'), ('Medora', 0, '46.91390', '-103.52440'), ('South Fairfield', 0, '47.12460', '-103.20080')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC009': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Antler', 0, '48.97080', '-101.28200'), ('Bottineau', 0, '48.82720', '-100.44530'), ('Carbury', 0, '48.89080', '-100.54430'), ('Eckman', 0, '48.65800', '-101.05700'), ('Gardena', 0, '48.70080', '-100.49710'), ('Kramer', 0, '48.69050', '-100.70610'), ('Lake Metigoshe State Park', 0, '48.98670', '-100.32400'), ('Landa', 0, '48.89660', '-100.91100'), ('Lansford', 0, '48.62890', '-101.37540'), ('Maxbass', 0, '48.72160', '-101.14170'), ('Newburg', 0, '48.71500', '-100.91230'), ('Omemee', 0, '48.70610', '-100.35690'), ('Overly', 0, '48.68190', '-100.15070'), ('Roth', 0, '48.90780', '-100.80200'), ('Russell', 0, '48.67140', '-100.90100'), ('Souris', 0, '48.90970', '-100.68150'), ('Westhope', 0, '48.90940', '-101.02060'), ('Willow City', 0, '48.60440', '-100.29470')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDC011': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bowman', 0, '46.18300', '-103.39480'), ('Bowman Haley Dam', 0, '45.98510', '-103.24590'), ('Buffalo Springs', 0, '46.17490', '-103.23510'), ('Gascoyne', 0, '46.11830', '-103.07920'), ('Griffin', 0, '46.21560', '-103.54050'), ('Mud Buttes', 0, '46.02560', '-103.77040'), ('Rhame', 0, '46.23250', '-103.65520'), ('Scranton', 0, '46.14800', '-103.14240'), ('Sunset Butte', 0, '46.14940', '-103.80960')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC013': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Battleview', 0, '48.57890', '-102.79230'), ('Bowbells', 0, '48.80300', '-102.24680'), ('Columbus', 0, '48.90420', '-102.78000'), ('Coteau', 0, '48.75830', '-102.32000'), ('Flaxton', 0, '48.89860', '-102.39270'), ('Larson', 0, '48.88970', '-102.85860'), ('Lignite', 0, '48.87750', '-102.56270'), ('Northgate', 0, '48.99080', '-102.26270'), ('Portal', 0, '48.99580', '-102.54990'), ('Powers Lake', 0, '48.56280', '-102.64750')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDC015': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Arena', 0, '47.12720', '-100.16270'), ('Baldwin', 0, '47.02670', '-100.74920'), ('Bismarck', 0, '46.80830', '-100.78330'), ('Double Ditch Indian Villiage', 0, '46.93410', '-100.89680'), ('Driscoll', 0, '46.84410', '-100.14130'), ('Lincoln', 0, '46.76240', '-100.70090'), ('McKenzie', 0, '46.82410', '-100.41300'), ('Menoken', 0, '46.82050', '-100.53170'), ('Moffit', 0, '46.67720', '-100.29130'), ('New Johns Lake', 0, '47.32010', '-100.65710'), ('Regan', 0, '47.15800', '-100.52850'), ('Sterling', 0, '46.81380', '-100.29130'), ('Wing', 0, '47.14080', '-100.27920')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC017': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Absaraka', 23, '46.97810', '-97.39420'), ('Alice', 56, '46.76050', '-97.55620'), ('Amenia', 89, '47.00820', '-97.22390'), ('Argusville', 147, '47.05060', '-96.94100'), ('Arthur', 402, '47.10350', '-97.21830'), ('Ayr', 23, '47.04070', '-97.49120'), ('Briarwood', 78, '46.78620', '-96.79380'), ('Buffalo', 209, '46.92140', '-97.55030'), ('Casselton', 1855, '46.90060', '-97.21190'), ('Chaffee', 255, '46.77440', '-97.35220'), ('Davenport', 261, '46.71380', '-97.06880'), ('Durbin', 1601, '46.80860', '-97.14920'), ('Embden', 56, '46.80220', '-97.43280'), ('Erie', 65, '47.11280', '-97.38750'), ('Fargo', 90599, '46.87660', '-96.81710'), ('Frontier', 273, '46.80040', '-96.83300'), ('Gardner', 80, '47.14340', '-96.96880'), ('Grandin', 181, '47.23610', '-97.00240'), ('Harwood', 607, '46.98030', '-96.87990'), ('Hickson', 100, '46.66940', '-96.81000'), ('Horace', 915, '46.75740', '-96.90420'), ('Hunter', 326, '47.19210', '-97.21630'), ('Kindred', 614, '46.65090', '-97.02110'), ('Leonard', 255, '46.65130', '-97.24550'), ('Mapleton', 606, '46.89080', '-97.05340'), ('North River', 65, '46.94930', '-96.80210'), ('Oxbow', 248, '46.84720', '-96.80420'), ('Page', 225, '47.15800', '-97.57060'), ('Prairie Rose', 68, '46.81730', '-96.83440'), ('Prosper', 606, '46.96310', '-97.01940'), ("Reile's Acres", 254, '46.92250', '-96.86240'), ('Tower City', 252, '46.92530', '-97.67610'), ('West Fargo', 14940, '46.87280', '-96.89700'), ('Wheatland', 60, '46.90750', '-97.34500'), ('Wild Rice', 78, '46.74640', '-96.80920')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC019': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alsen', 68, '48.62950', '-98.70540'), ('Calio', 24, '48.62360', '-98.93790'), ('Calvin', 26, '48.85120', '-98.93700'), ('Clyde', 26, '48.77000', '-98.89860'), ('Dresden', 2101, '48.82750', '-98.48080'), ('Hannah', 20, '48.97310', '-98.69020'), ('Langdon', 2101, '48.76260', '-98.37290'), ('Loma', 21, '48.63790', '-98.52500'), ('Maida', 2101, '48.99860', '-98.36440'), ('Milton', 85, '48.62720', '-98.04370'), ('Mount Carmel', 2101, '48.93500', '-98.38640'), ('Munich', 268, '48.66910', '-98.83220'), ('Nekoma', 51, '48.57610', '-98.37610'), ('Olga', 174, '48.79830', '-98.03750'), ('Osnabrock', 174, '48.67020', '-98.14890'), ('Sarles', 25, '48.94520', '-98.99650'), ('Union', 252, '48.55780', '-97.94860'), ('Vang', 1057, '48.90580', '-98.12440'), ('Wales', 30, '48.89410', '-98.60140')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC021': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Ellendale', 0, '46.00270', '-98.52700'), ('Forbes', 0, '45.94350', '-98.78200'), ('Fullerton', 0, '46.16520', '-98.42700'), ('Glover', 0, '46.24050', '-98.13970'), ('Guelph', 0, '46.02270', '-98.23590'), ('Ludden', 0, '46.00850', '-98.12530'), ('Merricourt', 0, '46.20940', '-98.76260'), ('Monango', 0, '46.17270', '-98.59450'), ('Oakes', 0, '46.13850', '-98.09030')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDC023': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alkabo', 0, '48.86430', '-103.88760'), ('Ambrose', 0, '48.95390', '-103.48280'), ('Crosby', 0, '48.91420', '-103.29470'), ('Fortuna', 0, '48.91000', '-103.77890'), ('Noonan', 0, '48.88890', '-103.00890'), ('Writing Rock State Historical Site', 0, '48.78030', '-103.85870')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDC025': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Dodge', 0, '47.30610', '-102.20400'), ('Dunn Center', 0, '47.35360', '-102.62080'), ('Halliday', 0, '47.35440', '-102.33650'), ('Hirschville', 0, '47.06810', '-102.56330'), ('Killdeer', 0, '47.37190', '-102.75470'), ('Little Missouri State Park', 0, '47.55480', '-102.74720'), ('Manning', 0, '47.23000', '-102.77070'), ('Marshall', 0, '47.13800', '-102.33230'), ('McKenzie Bay Recreation Area', 0, '47.59920', '-102.36460'), ('New Hradec', 0, '46.99940', '-102.88430'), ('Oakdale', 0, '47.47380', '-102.86720'), ('Skunk Creek Bay Recreation Area', 0, '47.74320', '-102.42800'), ('Twin Buttes', 0, '47.51650', '-102.24620')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC027': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Brantford', 71, '47.59780', '-98.92250'), ('Hamar', 75, '47.84360', '-98.57310'), ('New Rockford', 1463, '47.68060', '-99.13580'), ('Sheyenne', 318, '47.82680', '-99.11660')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC029': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Braddock', 0, '46.56440', '-100.09010'), ('Hague', 0, '46.02860', '-99.99560'), ('Hazelton', 0, '46.48470', '-100.27940'), ('Hull', 0, '46.02920', '-100.12540'), ('Kintyre', 0, '46.54970', '-99.94950'), ('Linton', 0, '46.26660', '-100.23220'), ('Strasburg', 0, '46.13360', '-100.16140'), ('Temvik', 0, '46.36970', '-100.25840'), ('Westfield', 0, '46.02940', '-100.20200')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC031': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Barlow', 0, '47.56970', '-99.13780'), ('Bordulac', 0, '47.38770', '-98.96470'), ('Carrington', 0, '47.44970', '-99.12620'), ('Glenfield', 0, '47.45330', '-98.56730'), ('Grace City', 0, '47.55130', '-98.80530'), ('Juanita', 0, '47.50220', '-98.68390'), ('McHenry', 0, '47.57610', '-98.59140'), ('Melville', 0, '47.33470', '-99.03560')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDC033': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alpha', 0, '46.65850', '-103.81860'), ('Beach', 0, '46.91800', '-104.00470'), ('Golva', 0, '46.73410', '-103.98660'), ('Sentinel Butte', 0, '46.91830', '-103.83800'), ('Trotters', 0, '47.32300', '-103.91870')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC035': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Arvilla', 4832, '47.91920', '-97.49440'), ('Emerado', 510, '47.92150', '-97.36390'), ('Gilby', 243, '48.08380', '-97.46820'), ('Grand Forks', 49321, '47.91690', '-97.07200'), ('Grand Forks AFB', 4832, '47.96220', '-97.38390'), ('Holmes', 707, '47.71580', '-97.29640'), ('Honeyford', 243, '48.03330', '-97.47030'), ('Inkster', 102, '48.15200', '-97.64430'), ('Johnstown', 243, '48.14420', '-97.46970'), ('Kempton', 1433, '47.81890', '-97.61390'), ('Larimore', 1433, '47.90840', '-97.62730'), ('Logan Center', 57, '47.80280', '-97.81810'), ('Manvel', 370, '48.07320', '-97.17570'), ('McCanna', 1433, '48.00580', '-97.70970'), ('Mekinock', 4832, '48.01280', '-97.36310'), ('Niagara', 57, '47.99740', '-97.87050'), ('Northwood', 959, '47.73580', '-97.56870'), ('Orr', 102, '48.09330', '-97.67500'), ('Thompson', 1006, '47.77500', '-97.10580')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC037': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Carson', 0, '46.41770', '-101.56480'), ('Elgin', 0, '46.40390', '-101.84560'), ('Heart Butte Dam', 0, '46.59680', '-101.81030'), ('Heil', 0, '46.38990', '-101.70120'), ('Lark', 0, '46.45300', '-101.39600'), ('Leith', 0, '46.35830', '-101.63630'), ('New Leipzig', 0, '46.37350', '-101.94840'), ('Raleigh', 0, '46.35770', '-101.30600'), ('Shields', 0, '46.23360', '-101.12530'), ('St. Gertrude', 0, '46.28450', '-101.33050')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC039': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Binford', 201, '47.55980', '-98.34530'), ('Cooperstown', 1053, '47.44410', '-98.12410'), ('Hannaford', 181, '47.31390', '-98.18790'), ('Jessie', 201, '47.54220', '-98.23780'), ('Mose', 201, '47.57860', '-98.45440'), ('Red Willow Lake', 201, '47.64750', '-98.37280'), ('Revere', 181, '47.35560', '-98.32830'), ('Sutton', 134, '47.40190', '-98.43890'), ('Walum', 181, '47.26970', '-98.19420')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC041': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bentley', 0, '46.32910', '-102.06370'), ('Burt', 0, '46.36520', '-102.15500'), ('Havelock', 0, '46.47470', '-102.74380'), ('Mott', 0, '46.37250', '-102.32710'), ('New England', 0, '46.53910', '-102.86870'), ('Regent', 0, '46.42160', '-102.55560')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC043': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Crystal Springs', 0, '46.87830', '-99.47560'), ('Dawson', 0, '46.86850', '-99.75140'), ('Horsehead Lake', 0, '47.06320', '-99.78450'), ('Lake Isabel', 0, '46.81840', '-99.74980'), ('Lake Williams', 0, '47.13470', '-99.61450'), ('Pettibone', 0, '47.11910', '-99.51950'), ('Robinson', 0, '47.14270', '-99.78120'), ('Steele', 0, '46.85470', '-99.91590'), ('Tappen', 0, '46.87490', '-99.63650'), ('Tuttle', 0, '47.14360', '-99.99450')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC045': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Adrian', 0, '46.59990', '-98.55340'), ('Alfred', 0, '46.60300', '-98.99920'), ('Berlin', 0, '46.37850', '-98.48980'), ('Dickey', 0, '46.53690', '-98.46780'), ('Edgeley', 0, '46.35910', '-98.71560'), ('Grand Rapids', 0, '46.44440', '-98.37060'), ('Jud', 0, '46.52600', '-98.89560'), ('Kulm', 0, '46.30100', '-98.95450'), ('La Moure', 0, '46.35720', '-98.29420'), ('Marion', 0, '46.60720', '-98.33230'), ('Nortonville', 0, '46.55830', '-98.73870'), ('Verona', 0, '46.36380', '-98.07230')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDC047': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Burnstad', 0, '46.38550', '-99.63260'), ('Fredonia', 0, '46.32600', '-99.09490'), ('Gackle', 0, '46.62580', '-99.14200'), ('Napoleon', 0, '46.50830', '-99.77120')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDC049': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Anamoose', 0, '47.88250', '-100.24150'), ('Balfour', 0, '47.95160', '-100.53470'), ('Bantry', 0, '48.49830', '-100.61020'), ('Bergen', 0, '48.00160', '-100.71430'), ('Berwick', 0, '48.36110', '-100.24600'), ('Deering', 0, '48.39550', '-101.05140'), ('Denbigh', 0, '48.31520', '-100.58730'), ('Drake', 0, '47.92410', '-100.37290'), ('George Lake', 0, '48.10090', '-100.38210'), ('Granville', 0, '48.26770', '-100.84290'), ('Karlsruhe', 0, '48.09080', '-100.62010'), ('Kief', 0, '47.85750', '-100.51160'), ('Norwich', 0, '48.24640', '-100.98930'), ('Simcoe', 0, '48.15610', '-100.86660'), ('Towner', 0, '48.34580', '-100.40520'), ('Upham', 0, '48.58160', '-100.72810'), ('Velva', 0, '48.05610', '-100.92920'), ('Voltaire', 0, '48.02050', '-100.84190')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDC051': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Ashley', 0, '46.03450', '-99.37320'), ('Danzig', 0, '46.14150', '-99.47680'), ('Green Lake', 0, '46.20160', '-99.46730'), ('Lehr', 0, '46.27960', '-99.35230'), ('Venturia', 0, '45.99850', '-99.54620'), ('Wishek', 0, '46.25690', '-99.55700'), ('Zeeland', 0, '45.97000', '-99.83030')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDC053': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('4 Bears Lodge', 0, '47.98040', '-102.57440'), ('Alexander', 0, '47.84300', '-103.64260'), ('Arnegard', 0, '47.80780', '-103.44110'), ('Cartwright', 0, '47.85970', '-103.92630'), ('Charbonneau', 0, '47.85310', '-103.76280'), ('Charlson', 0, '48.06030', '-102.87170'), ('East Fairview', 0, '47.85570', '-104.03990'), ('Grassy Butte', 0, '47.39250', '-103.24700'), ('Johnsons Corner', 0, '47.80410', '-102.94160'), ('Keene', 0, '47.92690', '-102.94100'), ('Mandaree', 0, '47.72910', '-102.67670'), ('Rawson', 0, '47.81940', '-103.54070'), ('Sather Dam', 0, '47.67390', '-103.80920'), ('Skaar', 0, '47.37370', '-104.04170'), ('Tobacco Garden Bay Recreation Area', 0, '48.10700', '-103.11190'), ('Watford City', 0, '47.80220', '-103.28340')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDC055': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Benedict', 0, '47.83020', '-101.08270'), ('Butte', 0, '47.83800', '-100.66590'), ('Coleharbor', 0, '47.54410', '-101.22320'), ('Deep Water Creek Recreation Area', 0, '47.73320', '-102.20790'), ('Emmet', 0, '47.64630', '-101.65300'), ('Falkirk', 0, '47.36210', '-101.09560'), ('Fort Stevenson State Park', 0, '47.59670', '-101.42050'), ('Garrison', 0, '47.65220', '-101.41540'), ('Indian Hills Recreation Area', 0, '47.60290', '-102.09480'), ('Max', 0, '47.82110', '-101.29890'), ('Mercer', 0, '47.49050', '-100.71020'), ('Raub', 0, '47.74640', '-102.04300'), ('Riverdale', 0, '47.49750', '-101.37150'), ('Roseglen', 0, '47.75130', '-101.83630'), ('Ruso', 0, '47.83830', '-100.93350'), ('Strawberry Lake', 0, '47.76480', '-100.87240'), ('Turtle Lake', 0, '47.52150', '-100.89030'), ('Underwood', 0, '47.45630', '-101.13720'), ('Washburn', 0, '47.28910', '-101.02920'), ('White Shield', 0, '47.66130', '-101.84480'), ('Wilton', 0, '47.15860', '-100.78300')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC057': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Beulah', 0, '47.26330', '-101.77740'), ('Beulah Bay Recreation Area', 0, '47.50190', '-101.76090'), ('Dakota Waters Recreation Area', 0, '47.48390', '-101.78580'), ('Golden Valley', 0, '47.29080', '-102.06470'), ('Hazen', 0, '47.29440', '-101.62280'), ('Hazen Bay Recreation Area', 0, '47.50680', '-101.62890'), ('Lake Sakakawea State Park', 0, '47.52840', '-101.45590'), ('Pick City', 0, '47.51130', '-101.45310'), ('Stanton', 0, '47.32110', '-101.38100'), ('Zap', 0, '47.28640', '-101.92290')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC059': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Almont', 0, '46.72520', '-101.50280'), ('Breien', 0, '46.38050', '-100.94030'), ('Crown Butte Lake', 0, '46.86580', '-101.09240'), ('Flasher', 0, '46.45610', '-101.23200'), ('Fort Rice', 0, '46.52610', '-100.58430'), ('Glen Ullin', 0, '46.81540', '-101.82910'), ('Hebron', 0, '46.90050', '-102.04510'), ('Huff', 0, '46.62380', '-100.65100'), ('Judson', 0, '46.82500', '-101.28000'), ('Mandan', 0, '46.82660', '-100.88980'), ('New Salem', 0, '46.84580', '-101.41140'), ('St. Anthony', 0, '46.61750', '-100.91060'), ('Sweet Briar Lake', 0, '46.86460', '-101.25730')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC061': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Belden', 0, '48.15140', '-102.35700'), ('Blaisdell', 0, '48.33610', '-102.07670'), ('Coulee', 0, '48.54580', '-102.01070'), ('Lostwood', 0, '48.47690', '-102.42200'), ('New Town', 0, '47.98100', '-102.49000'), ('Palermo', 0, '48.33970', '-102.22950'), ('Parshall', 0, '47.95330', '-102.13470'), ('Parshall Bay Recreation Area', 0, '47.91990', '-102.29270'), ('Plaza', 0, '48.02580', '-101.96140'), ('Pouch Point Recreation Area', 0, '47.80030', '-102.40340'), ('Ross', 0, '48.31110', '-102.54680'), ('Stanley', 0, '48.31720', '-102.39050'), ('Tagus', 0, '48.34760', '-101.93220'), ('Van Hook Park', 0, '47.94830', '-102.35750'), ('White Earth', 0, '48.38050', '-102.77380'), ('White Earth Bay Recreation Area', 0, '48.12600', '-102.72690')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDC063': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Aneta', 284, '47.67890', '-97.98880'), ('Dahlen', 266, '48.15810', '-97.92920'), ('Kloten', 284, '47.71610', '-98.07500'), ('Lakota', 781, '48.04310', '-98.34710'), ('Mapes', 348, '48.03110', '-98.22690'), ('McVille', 470, '47.76510', '-98.17610'), ('Michigan', 348, '48.02500', '-98.11670'), ('Pekin', 80, '47.79100', '-98.32660'), ('Petersburg', 195, '48.01190', '-97.99970'), ('Stump Lake', 202, '47.91440', '-98.43420'), ('Tolna', 202, '47.82720', '-98.43970'), ('Whitman', 348, '48.15860', '-98.11940')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC065': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Center', 0, '47.11630', '-101.29990'), ('Cross Ranch State Park', 0, '47.21400', '-100.99970'), ('Fort Clark', 0, '47.24000', '-101.25170'), ('Hannover', 0, '47.11130', '-101.42630'), ('Hensler', 0, '47.26020', '-101.08430'), ('Price', 0, '47.08580', '-100.94100'), ('Sanger', 0, '47.17970', '-100.99500')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC067': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Akra', 1537, '48.77530', '-97.72670'), ('Backoo', 1537, '48.83660', '-97.71000'), ('Bathgate', 66, '48.88060', '-97.47290'), ('Bowesmont', 913, '48.69000', '-97.17770'), ('Cavalier', 1537, '48.79530', '-97.62430'), ('Concrete', 133, '48.74550', '-97.93330'), ('Crystal', 167, '48.59850', '-97.66840'), ('Drayton', 913, '48.56460', '-97.17960'), ('Gardar', 252, '48.58910', '-97.86360'), ('Glasston', 447, '48.70580', '-97.44720'), ('Hamilton', 73, '48.80810', '-97.45160'), ('Hensel', 64, '48.68830', '-97.66610'), ('Joliette', 642, '48.81810', '-97.22680'), ('Leroy', 1057, '48.92340', '-97.75220'), ('Mountain', 133, '48.68350', '-97.86340'), ('Neche', 437, '48.98200', '-97.55090'), ('Pembina', 642, '48.96800', '-97.24570'), ('St. Thomas', 447, '48.62020', '-97.44690'), ('Walhalla', 1057, '48.92120', '-97.91670')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC069': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Balta', 0, '48.16660', '-100.03720'), ('Barton', 0, '48.50690', '-100.17610'), ('Orrin', 0, '48.09130', '-100.16370'), ('Rugby', 0, '48.36880', '-99.99620'), ('Selz', 0, '47.85740', '-99.89160'), ('Silva', 0, '48.16890', '-99.91840'), ('Wolford', 0, '48.49860', '-99.70430')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDC071': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Brocket', 65, '48.21120', '-98.35620'), ('Camp Grafton', 7222, '48.05690', '-98.92060'), ('Churchs Ferry', 77, '48.26860', '-99.19420'), ('Crary', 149, '48.07150', '-98.64000'), ('Derrick', 60, '48.47690', '-98.55720'), ('Devils Lake', 7222, '48.11280', '-98.87410'), ('Doyon', 149, '48.05280', '-98.53640'), ('Edmore', 256, '48.41270', '-98.45320'), ('Garske', 157, '48.35780', '-98.87690'), ('Hampden', 60, '48.53950', '-98.65450'), ('Lawton', 42, '48.30290', '-98.36740'), ('Penn', 77, '48.22170', '-99.08860'), ('Southam', 149, '48.15830', '-98.55170'), ('Starkweather', 157, '48.45230', '-98.87770'), ('Webster', 7222, '48.28220', '-98.87580')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC073': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Anselm', 135, '46.52860', '-97.49530'), ('Elliott', 44, '46.40240', '-97.81390'), ('Enderlin', 947, '46.62300', '-97.59890'), ('Englevale', 44, '46.39280', '-97.91310'), ('Fort Ransom', 70, '46.52470', '-97.93040'), ('Lisbon', 2292, '46.43830', '-97.68320'), ('McLeod', 711, '46.39360', '-97.29920'), ('Sheldon', 135, '46.58700', '-97.49220'), ('Venlo', 135, '46.48640', '-97.44580')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC075': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Glenburn', 0, '48.51300', '-101.22050'), ('Grano', 0, '48.61500', '-101.58650'), ('Greene', 0, '48.65940', '-101.70480'), ('Loraine', 0, '48.86550', '-101.56730'), ('Mohall', 0, '48.76330', '-101.51360'), ('Norma', 0, '48.72890', '-101.97370'), ('Sherwood', 0, '48.96000', '-101.63210'), ('Tolley', 0, '48.72890', '-101.82750')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDC077': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Abercrombie', 296, '46.44780', '-96.73000'), ('Barney', 69, '46.26650', '-96.99920'), ('Barrie', 614, '46.56890', '-97.12220'), ('Blackmer', 7, '45.97890', '-96.60030'), ('Christine', 153, '46.57530', '-96.80670'), ('Colfax', 91, '46.47020', '-96.87400'), ('Dwight', 75, '46.30290', '-96.73860'), ('Fairmount', 406, '46.05450', '-96.60270'), ('Galchutt', 296, '46.38750', '-96.80920'), ('Great Bend', 118, '46.15450', '-96.80110'), ('Hankinson', 1058, '46.07150', '-96.89380'), ('Lamars', 408, '45.96470', '-96.69000'), ('Lidgerwood', 738, '46.07490', '-97.14630'), ('Mantador', 71, '46.16590', '-96.97780'), ('Mooreton', 204, '46.26910', '-96.87630'), ('Sonora', 118, '46.06670', '-96.74110'), ('Stiles', 738, '46.07530', '-97.05220'), ('Wahpeton', 8586, '46.27100', '-96.61010'), ('Walcott', 189, '46.55040', '-96.93700'), ('Wyndmere', 533, '46.26420', '-97.13100')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC079': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Agate', 0, '48.62250', '-99.49510'), ('Belcourt', 0, '48.83910', '-99.74480'), ('Dunseith', 0, '48.81300', '-100.06030'), ('International Peace Garden', 0, '48.99190', '-100.06260'), ('Mylo', 0, '48.63520', '-99.61870'), ('Nanson', 0, '48.57380', '-99.77980'), ('Rolette', 0, '48.66080', '-99.84150'), ('Rolla', 0, '48.85770', '-99.61790'), ('Shell Valley', 0, '48.79790', '-99.86430'), ('St. John', 0, '48.94450', '-99.71100'), ('Thorne', 0, '48.73910', '-99.93150')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDC081': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Brampton', 165, '45.99470', '-97.77580'), ('Cayuga', 61, '46.07580', '-97.38340'), ('Cogswell', 165, '46.10710', '-97.78400'), ('Crete', 1979, '46.20030', '-97.96250'), ('De Lamere', 711, '46.26720', '-97.33470'), ('Forman', 506, '46.10520', '-97.63690'), ('Geneseo', 61, '46.07390', '-97.27830'), ('Gwinner', 717, '46.22420', '-97.65850'), ('Hamlin', 61, '46.16610', '-97.28470'), ('Havana', 94, '45.95070', '-97.61770'), ('Milnor', 711, '46.26080', '-97.45660'), ('Rutland', 220, '46.05380', '-97.50790'), ('Stirum', 165, '46.21030', '-97.80610'), ('Straubville', 165, '46.04390', '-97.89970')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC083': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Denhoff', 0, '47.47660', '-100.25970'), ('Goodrich', 0, '47.47490', '-100.12670'), ('Krueger Lake', 0, '47.76640', '-100.49930'), ('Martin', 0, '47.82660', '-100.11520'), ('McClusky', 0, '47.48580', '-100.44370'), ('Sheyenne Lake', 0, '47.69600', '-100.19920')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC085': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Cannon Ball', 0, '46.38940', '-100.59410'), ('Fort Yates', 0, '46.09220', '-100.62980'), ('Porcupine', 0, '46.22000', '-101.09680'), ('Prairie Knights Resort', 0, '46.27390', '-100.63700'), ('Selfridge', 0, '46.04130', '-100.92530'), ('Solen', 0, '46.38880', '-100.79840')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC087': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Amidon', 0, '46.48220', '-103.32180'), ('Marmarth', 0, '46.29500', '-103.92090'), ('Pretty Butte', 0, '46.38200', '-103.96440'), ('Three V Crossing', 0, '46.55700', '-103.79190')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC089': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Belfield', 0, '46.88520', '-103.19940'), ('Dickinson', 0, '46.87910', '-102.78970'), ('Dickinson Regional Airport', 0, '46.80140', '-102.79340'), ('Gladstone', 0, '46.86080', '-102.56740'), ('Lefor', 0, '46.68160', '-102.55900'), ('Richardton', 0, '46.88390', '-102.31500'), ('Schefield', 0, '46.67460', '-102.85500'), ('South Heart', 0, '46.86470', '-102.99180'), ('Taylor', 0, '46.90050', '-102.42540')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDC091': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Blabon', 303, '47.40170', '-97.78860'), ('Colgate', 303, '47.24470', '-97.65610'), ('Finley', 515, '47.51140', '-97.83710'), ('Golden Lake', 959, '47.57970', '-97.63610'), ('Hope', 303, '47.32480', '-97.71960'), ('Luverne', 44, '47.25030', '-97.93450'), ('Sharon', 109, '47.59710', '-97.89860'), ('Sherbrooke', 515, '47.46080', '-97.71920')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC093': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Buchanan', 0, '47.06240', '-98.82890'), ('Chase Lake', 0, '47.01260', '-99.44090'), ('Cleveland', 0, '46.89170', '-99.11750'), ('Courtenay', 0, '47.22220', '-98.56640'), ('Edmunds', 0, '47.24720', '-98.96810'), ('Eldridge', 0, '46.90240', '-98.85170'), ('Jamestown', 0, '46.91050', '-98.70840'), ('Kensal', 0, '47.30080', '-98.73340'), ('Medina', 0, '46.89380', '-99.29980'), ('Millarton', 0, '46.66690', '-98.75950'), ('Montpelier', 0, '46.70020', '-98.59010'), ('Pingree', 0, '47.16330', '-98.90700'), ('Spiritwood', 0, '46.93610', '-98.49560'), ('Spiritwood Lake', 0, '47.07630', '-98.57310'), ('Streeter', 0, '46.65520', '-99.35410'), ('Sydney', 0, '46.73080', '-98.76980'), ('Windsor', 0, '46.89630', '-99.04280'), ('Woodworth', 0, '47.14250', '-99.30310'), ('Ypsilanti', 0, '46.78420', '-98.56510')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDC095': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Amourdale', 8, '48.87140', '-99.37250'), ('Arndt', 49, '48.63000', '-99.23500'), ('Bisbee', 167, '48.62660', '-99.37830'), ('Cando', 1342, '48.48760', '-99.20260'), ('Considine', 1342, '48.56190', '-99.28280'), ('Egeland', 49, '48.62800', '-99.09760'), ('Hansboro', 8, '48.95220', '-99.38080'), ('Maza', 5, '48.39490', '-99.19950'), ('Newville', 24, '48.55860', '-98.98690'), ('Perth', 13, '48.71460', '-99.45720'), ('Rocklake', 194, '48.79070', '-99.24500')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC097': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Blanchard', 326, '47.34580', '-97.21920'), ('Buxton', 350, '47.60220', '-97.09920'), ('Caledonia', 225, '47.45750', '-96.88530'), ('Clifford', 51, '47.34830', '-97.40930'), ('Cummings', 350, '47.51470', '-97.07920'), ('Galesburg', 157, '47.27060', '-97.40850'), ('Hatton', 707, '47.63600', '-97.45760'), ('Hillsboro', 1563, '47.40280', '-97.06140'), ('Kelso', 1563, '47.32310', '-97.02920'), ('Mayville', 1953, '47.50010', '-97.32820'), ('Portland', 604, '47.49910', '-97.36890'), ('Reynolds', 350, '47.67110', '-97.10840'), ('Roseville', 602, '47.44030', '-97.38860')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDC099': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Adams', 203, '48.41970', '-98.07380'), ('Ardoch', 61, '48.20590', '-97.34090'), ('Conway', 23, '48.23400', '-97.67440'), ('Edinburg', 252, '48.49560', '-97.86220'), ('Fairdale', 51, '48.48950', '-98.23150'), ('Fordville', 266, '48.21670', '-97.79450'), ('Forest River', 154, '48.21710', '-97.47000'), ('Grafton', 4516, '48.41510', '-97.40310'), ('Herrick', 913, '48.51390', '-97.22810'), ('Hoople', 292, '48.53550', '-97.63750'), ('Lankin', 131, '48.31480', '-97.92080'), ('Minto', 657, '48.29220', '-97.37210'), ('Nash', 4516, '48.47060', '-97.51280'), ('Oakwood', 4516, '48.42690', '-97.29500'), ('Park River', 1535, '48.39340', '-97.74480'), ('Pisek', 96, '48.31110', '-97.71030'), ('Poland', 362, '48.19780', '-97.21810'), ('Veseleyville', 154, '48.32530', '-97.55690'), ('Voss', 154, '48.29640', '-97.45500'), ('Warsaw', 657, '48.29610', '-97.25440')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDC101': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Berthold', 0, '48.31300', '-101.73730'), ('Burlington', 0, '48.27520', '-101.42870'), ('Carpio', 0, '48.44250', '-101.71440'), ('Des Lacs', 0, '48.25770', '-101.56320'), ('Donnybrook', 0, '48.50940', '-101.88560'), ('Douglas', 0, '47.85720', '-101.50280'), ('Foxholm', 0, '48.36940', '-101.57170'), ('Hartland', 0, '48.39940', '-101.82070'), ('Kenmare', 0, '48.67470', '-102.08280'), ('Logan', 0, '48.14810', '-101.15310'), ('Makoti', 0, '47.96110', '-101.80470'), ('Minot', 0, '48.23250', '-101.29610'), ('Minot Air Force Base', 0, '48.41560', '-101.35760'), ('Niobe', 0, '48.68930', '-102.21530'), ('Rice Lake', 0, '48.00740', '-101.53270'), ('Ryder', 0, '47.91750', '-101.67710'), ('Sawyer', 0, '48.08970', '-101.05300'), ('Surrey', 0, '48.23640', '-101.13360'), ('Wolseth', 0, '48.44640', '-101.12470')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDC103': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bowdon', 0, '47.46970', '-99.70780'), ('Bremen', 0, '47.74660', '-99.38670'), ('Cathay', 0, '47.55330', '-99.40900'), ('Chaseley', 0, '47.45020', '-99.82010'), ('Emrick', 0, '47.59470', '-99.51200'), ('Fessenden', 0, '47.64910', '-99.62920'), ('Hamberg', 0, '47.76300', '-99.51450'), ('Harvey', 0, '47.76970', '-99.93540'), ('Heaton', 0, '47.47830', '-99.54790'), ('Heimdal', 0, '47.79270', '-99.64510'), ('Hurdsfield', 0, '47.44830', '-99.92840'), ('Manfred', 0, '47.69450', '-99.74750'), ('Sykeston', 0, '47.46570', '-99.39950'), ('Wellsburg', 0, '47.83160', '-99.76150')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDC105': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alamo', 0, '48.58170', '-103.46900'), ('Appam', 0, '48.57020', '-103.58870'), ('Blacktail Lake', 0, '48.43340', '-103.73380'), ('Bonetrail', 0, '48.41640', '-103.83850'), ('Corinth', 0, '48.61250', '-103.32770'), ('Epping', 0, '48.27910', '-103.35770'), ('Fort Union Trading Post', 0, '47.99930', '-104.04060'), ('Grenora', 0, '48.61830', '-103.93710'), ('Hamlet', 0, '48.62860', '-103.05100'), ('Hanks', 0, '48.60330', '-103.80200'), ('Lewis And Clark State Park', 0, '48.12470', '-103.23320'), ('McGregor', 0, '48.59530', '-102.92830'), ('Ray', 0, '48.34440', '-103.16570'), ('Spring Brook', 0, '48.25250', '-103.45810'), ('Tioga', 0, '48.39720', '-102.93850'), ('Trenton', 0, '48.07050', '-103.83600'), ('Wheelock', 0, '48.29640', '-103.25250'), ('White Tail Bay Recreation Area', 0, '48.15860', '-103.13150'), ('Wildrose', 0, '48.63050', '-103.18410'), ('Williston', 0, '48.15400', '-103.62570'), ('Zahl', 0, '48.57330', '-103.69230')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NEC001': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ayr', 98, '40.43790', '-98.44020'), ('Hansen', 763, '40.69580', '-98.36860'), ('Hastings', 24064, '40.58930', '-98.39010'), ('Holstein', 229, '40.46480', '-98.65110'), ('Juniata', 693, '40.58950', '-98.50540'), ('Kenesaw', 873, '40.61960', '-98.65810'), ('Prosser', 94, '40.68870', '-98.57730'), ('Roseland', 242, '40.47090', '-98.55790')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC003': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brunswick', 179, '42.33820', '-97.97120'), ('Clearwater', 384, '42.17060', '-98.18860'), ('Elgin', 735, '41.98370', '-98.08320'), ('Neligh', 1651, '42.13000', '-98.02880'), ('Oakdale', 345, '42.07000', '-97.96610'), ('Orchard', 391, '42.33600', '-98.24120'), ('Royal', 75, '42.33270', '-98.12500')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC005': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arthur', 145, '41.57230', '-101.69190')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEC007': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Harrisburg', 7751, '41.55000', '-103.74000')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC009': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brewster', 29, '41.93840', '-99.86510'), ('Dunning', 109, '41.82770', '-100.10370'), ('Purdum', 59, '42.07000', '-100.26000')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC011': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Albion', 1797, '41.68930', '-98.00280'), ('Cedar Rapids', 407, '41.55880', '-98.14930'), ('Petersburg', 374, '41.85470', '-98.07990'), ('Primrose', 69, '41.62360', '-98.23720'), ('St. Edward', 796, '41.57130', '-97.86090')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC013': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alliance', 8959, '42.10040', '-102.87390'), ('Berea', 993, '42.20000', '-102.99000'), ('Hemingford', 993, '42.32120', '-103.07570')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC015': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Anoka', 10, '42.94690', '-98.82990'), ('Bristow', 88, '42.83990', '-98.58370'), ('Butte', 366, '42.91260', '-98.84790'), ('Gross', 5, '42.94680', '-98.56890'), ('Lynch', 269, '42.83090', '-98.46680'), ('Monowi', 2, '42.83010', '-98.32880'), ('Naper', 105, '42.96420', '-99.09710'), ('Spencer', 541, '42.87460', '-98.70160')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC017': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ainsworth', 1862, '42.54900', '-99.85720'), ('Johnstown', 53, '42.57250', '-100.05520'), ('Long Pine', 341, '42.53480', '-99.70240')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC019': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Amherst', 277, '40.83880', '-99.26910'), ('Elm Creek', 894, '40.71980', '-99.37500'), ('Gibbon', 1759, '40.74650', '-98.84470'), ('Kearney', 27431, '40.70080', '-99.08460'), ('Miller', 156, '40.92700', '-99.39050'), ('Odessa', 894, '40.70000', '-99.25580'), ('Pleasanton', 360, '40.97010', '-99.08670'), ('Poole', 1341, '40.97920', '-98.95280'), ('Ravenna', 1341, '41.02680', '-98.91300'), ('Riverdale', 213, '40.78360', '-99.16000'), ('Shelton', 1140, '40.77850', '-98.73020')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC021': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Craig', 241, '41.78490', '-96.36160'), ('Decatur', 618, '42.00810', '-96.25070'), ('Lyons', 963, '41.93610', '-96.47190'), ('Oakland', 1367, '41.83510', '-96.46580'), ('Tekamah', 1892, '41.77740', '-96.22270')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEC023': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Abie', 108, '41.33370', '-96.94930'), ('Bellwood', 446, '41.34210', '-97.24020'), ('Brainard', 351, '41.18270', '-97.00220'), ('Bruno', 112, '41.28330', '-96.96050'), ('David City', 2597, '41.25450', '-97.12610'), ('Dwight', 259, '41.08300', '-97.01910'), ('Garrison', 67, '41.17550', '-97.16300'), ('Linwood', 118, '41.41180', '-96.93240'), ('Octavia', 145, '41.34730', '-97.05910'), ('Rising City', 386, '41.19860', '-97.29690'), ('Surprise', 44, '41.10440', '-97.30860'), ('Ulysses', 276, '41.07240', '-97.20240')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEC025': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alvo', 142, '40.87150', '-96.38660'), ('Avoca', 270, '40.79640', '-96.11780'), ('Cedar Creek', 396, '41.04540', '-96.09790'), ('Eagle', 1105, '40.81610', '-96.43210'), ('Elmwood', 668, '40.84220', '-96.29430'), ('Greenwood', 544, '40.96160', '-96.44270'), ('Louisville', 1046, '40.99880', '-96.16030'), ('Manley', 191, '40.91880', '-96.16520'), ('Murdock', 269, '40.92600', '-96.28030'), ('Murray', 481, '40.91660', '-95.92790'), ('Nehawka', 232, '40.82980', '-95.98930'), ('Plattsmouth', 6887, '41.00770', '-95.89140'), ('South Bend', 86, '41.00210', '-96.24620'), ('Union', 260, '40.81470', '-95.92070'), ('Weeping Water', 1103, '40.86780', '-96.13880')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC027': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Belden', 131, '42.41170', '-97.20760'), ('Coleridge', 541, '42.50630', '-97.20230'), ('Fordyce', 182, '42.69810', '-97.36270'), ('Hartington', 1640, '42.62000', '-97.26500'), ('Laurel', 986, '42.42800', '-97.09400'), ('Magnet', 79, '42.45740', '-97.46920'), ('Obert', 49, '42.68900', '-97.02700'), ('Randolph', 955, '42.37730', '-97.35720'), ('St. Helena', 86, '42.80990', '-97.24890'), ('Wynot', 191, '42.73950', '-97.16960')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC029': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Champion', 1982, '40.46500', '-101.71000'), ('Enders', 1982, '40.44250', '-101.52000'), ('Imperial', 1982, '40.51620', '-101.63760'), ('Lamar', 19, '40.57240', '-101.97950'), ('Wauneta', 625, '40.41660', '-101.37160')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEC031': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brownlee', 211, '42.29050', '-100.62500'), ('Cody', 149, '42.93710', '-101.24770'), ('Crookston', 98, '42.92530', '-100.75290'), ('Eli', 149, '42.94000', '-101.44000'), ('Elsmere', 59, '42.16000', '-100.18000'), ('Kilgore', 99, '42.93850', '-100.95670'), ('Merriman', 118, '42.92110', '-101.69980'), ('Merritt Reservoir', 98, '42.64600', '-100.87200'), ('Nenzel', 13, '42.92690', '-101.10130'), ('Sparks', 2820, '42.93100', '-100.26800'), ('Valentine', 2820, '42.87370', '-100.54990'), ('Wood Lake', 72, '42.63910', '-100.23680')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC033': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brownson', 6282, '41.17000', '-103.08000'), ('Dalton', 332, '41.40770', '-102.97040'), ('Gurley', 228, '41.32060', '-102.97390'), ('Lodgepole', 348, '41.14850', '-102.63830'), ('Lorenzo', 179, '41.03000', '-103.05000'), ('Potter', 390, '41.21890', '-103.31430'), ('Sidney', 6282, '41.13370', '-102.97000')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC035': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Clay Center', 861, '40.52330', '-98.05470'), ('Deweese', 80, '40.35430', '-98.13920'), ('Edgar', 539, '40.36840', '-97.97050'), ('Fairfield', 467, '40.43200', '-98.10320'), ('Glenvil', 332, '40.50260', '-98.25480'), ('Harvard', 998, '40.61930', '-98.09620'), ('Inland', 332, '40.59080', '-98.22920'), ('Ong', 67, '40.39820', '-97.83910'), ('Saronville', 61, '40.60290', '-97.93890'), ('Sutton', 1447, '40.60760', '-97.85830'), ('Trumbull', 212, '40.68010', '-98.27280')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC037': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Clarkson', 685, '41.72470', '-97.12130'), ('Howells', 632, '41.72340', '-97.00470'), ('Leigh', 442, '41.70410', '-97.23680'), ('Richland', 89, '41.43730', '-97.21410'), ('Rogers', 95, '41.46460', '-96.91620'), ('Schuyler', 5371, '41.44810', '-97.05990')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC039': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bancroft', 520, '42.01040', '-96.57300'), ('Beemer', 773, '41.93040', '-96.80950'), ('West Point', 3660, '41.83770', '-96.70730'), ('Wisner', 1270, '41.98670', '-96.91350')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC041': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Anselmo', 159, '41.61850', '-99.86440'), ('Ansley', 520, '41.28760', '-99.38220'), ('Arnold', 630, '41.42390', '-100.19380'), ('Berwyn', 134, '41.35130', '-99.50020'), ('Broken Bow', 3491, '41.40540', '-99.63910'), ('Callaway', 637, '41.29130', '-99.92000'), ('Comstock', 110, '41.55790', '-99.24250'), ('Gates', 391, '41.65500', '-99.64500'), ('Mason City', 178, '41.22250', '-99.29800'), ('Merna', 391, '41.48460', '-99.76060'), ('Milburn', 159, '41.73450', '-99.75000'), ('Oconto', 141, '41.14160', '-99.76110'), ('Sargent', 649, '41.64090', '-99.37000'), ('Weissert', 134, '41.46700', '-99.45000'), ('Westerville', 520, '41.39890', '-99.39000')], 'partOfState': 'central', 'wfo': 'LBF'}, +'NEC043': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Dakota City', 1821, '42.41600', '-96.41740'), ('Emerson', 817, '42.27820', '-96.72560'), ('Homer', 590, '42.32200', '-96.49110'), ('Hubbard', 234, '42.38550', '-96.59040'), ('Jackson', 205, '42.44880', '-96.56590'), ('South Sioux City', 11925, '42.46600', '-96.41210')], 'partOfState': 'northeast', 'wfo': 'FSD'}, +'NEC045': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Box Butte Dam', 993, '42.45000', '-103.08000'), ('Chadron', 5634, '42.82710', '-103.00010'), ('Chadron St Park', 5634, '42.68000', '-103.00000'), ('Crawford', 1107, '42.68550', '-103.41420'), ('Fort Robinson', 1107, '42.66000', '-103.48000'), ('Marsland', 10, '42.44460', '-103.30090'), ('Whitney', 87, '42.78410', '-103.25680')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC047': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Cozad', 4163, '40.86290', '-99.98650'), ('Eddyville', 96, '41.01270', '-99.62330'), ('Farnam', 223, '40.70630', '-100.21500'), ('Gothenburg', 3619, '40.92940', '-100.16120'), ('Lexington', 10011, '40.77840', '-99.74210'), ('Overton', 646, '40.74040', '-99.53700'), ('Sumner', 237, '40.94950', '-99.50720'), ('Willow Island', 4163, '40.88000', '-100.06720')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC049': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Big Springs', 418, '41.06340', '-102.07470'), ('Chappell', 983, '41.09410', '-102.46700')], 'partOfState': 'panhandle', 'wfo': 'LBF'}, +'NEC051': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Allen', 411, '42.41460', '-96.84280'), ('Concord', 160, '42.38420', '-96.98870'), ('Dixon', 108, '42.41560', '-96.99450'), ('Martinsburg', 103, '42.50800', '-96.83160'), ('Maskell', 67, '42.69040', '-96.98150'), ('Newcastle', 299, '42.65200', '-96.87490'), ('Ponca', 1062, '42.56540', '-96.70910'), ('Ponca State Park', 0, '42.60553', '-96.71737'), ('Wakefield', 1411, '42.26760', '-96.86710'), ('Waterbury', 89, '42.45720', '-96.73520')], 'partOfState': 'northeast', 'wfo': 'FSD'}, +'NEC053': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Dodge', 700, '41.72160', '-96.87940'), ('Fremont', 25174, '41.44080', '-96.49210'), ('Hooper', 827, '41.61220', '-96.54800'), ('Inglewood', 382, '41.41670', '-96.50160'), ('Nickerson', 431, '41.53500', '-96.47050'), ('North Bend', 1213, '41.46520', '-96.78310'), ('Scribner', 971, '41.66450', '-96.66490'), ('Snyder', 318, '41.70450', '-96.78620'), ('Uehling', 275, '41.73430', '-96.50540'), ('Winslow', 104, '41.60880', '-96.50470')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEC055': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bennington', 937, '41.36760', '-96.15690'), ('Boys Town', 818, '41.25950', '-96.13120'), ('Elkhorn', 6062, '41.28270', '-96.23620'), ('Millard', 10736, '41.20530', '-96.15770'), ('Omaha', 390007, '41.26390', '-96.01170'), ('Ralston', 6314, '41.20130', '-96.03670'), ('Valley', 1788, '41.31300', '-96.34600'), ('Waterloo', 459, '41.28780', '-96.28570')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEC057': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Benkelman', 1006, '40.05160', '-101.53460'), ('Haigler', 211, '40.01240', '-101.93850'), ('Max', 0, '40.11000', '-101.40000'), ('Parks', 0, '40.04000', '-101.73000')], 'partOfState': 'southwest', 'wfo': 'GLD'}, +'NEC059': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Exeter', 712, '40.64470', '-97.44920'), ('Fairmont', 691, '40.63550', '-97.58420'), ('Geneva', 2226, '40.52760', '-97.60160'), ('Grafton', 152, '40.62960', '-97.71510'), ('Milligan', 315, '40.49990', '-97.38800'), ('Ohiowa', 142, '40.41410', '-97.45190'), ('Shickley', 376, '40.41610', '-97.72350'), ('Strang', 32, '40.41510', '-97.58710')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC061': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bloomington', 124, '40.09360', '-99.03780'), ('Campbell', 387, '40.29680', '-98.73090'), ('Franklin', 1026, '40.09660', '-98.95100'), ('Hildreth', 370, '40.33750', '-99.04600'), ('Naponee', 132, '40.07400', '-99.13810'), ('Riverton', 145, '40.08890', '-98.75920'), ('Upland', 179, '40.31900', '-98.90160')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC063': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Curtis', 832, '40.63450', '-100.51420'), ('Eustis', 464, '40.66430', '-100.02860'), ('Maywood', 331, '40.65810', '-100.62230'), ('Moorefield', 52, '40.68970', '-100.39990'), ('Stockville', 36, '40.53320', '-100.38410')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEC065': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arapahoe', 1028, '40.30500', '-99.89810'), ('Beaver City', 641, '40.13770', '-99.82730'), ('Cambridge', 1041, '40.28340', '-100.17050'), ('Edison', 154, '40.27760', '-99.77570'), ('Hendley', 38, '40.13090', '-99.97040'), ('Holbrook', 225, '40.30390', '-100.01040'), ('Hollinger', 641, '40.15600', '-99.73890'), ('Oxford', 876, '40.25310', '-99.63250'), ('Wilsonville', 118, '40.11150', '-100.10590')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC067': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Adams', 489, '40.45620', '-96.51120'), ('Barneston', 122, '40.04870', '-96.57670'), ('Beatrice', 12496, '40.26980', '-96.74560'), ('Blue Springs', 383, '40.13700', '-96.66260'), ('Clatonia', 275, '40.46490', '-96.85120'), ('Cortland', 488, '40.50610', '-96.70560'), ('Filley', 174, '40.28540', '-96.53380'), ('Liberty', 86, '40.08500', '-96.48300'), ('Odell', 345, '40.05030', '-96.80070'), ('Pickrell', 182, '40.37780', '-96.72850'), ('Virginia', 67, '40.24520', '-96.49890'), ('Wymore', 1656, '40.12280', '-96.66660')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC069': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Crescent Lake Nwr', 887, '41.73500', '-102.41000'), ('Lewellen', 282, '41.33070', '-102.14310'), ('Lisco', 140, '41.50000', '-102.62000'), ('Oshkosh', 887, '41.40860', '-102.34440')], 'partOfState': 'panhandle', 'wfo': 'LBF'}, +'NEC071': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burwell', 1130, '41.78000', '-99.13390')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC073': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Elwood', 761, '40.58960', '-99.86160'), ('Johnson Lake', 761, '40.68000', '-99.85000'), ('Smithfield', 68, '40.57320', '-99.74090')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC075': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ashby', 287, '42.02650', '-101.93500'), ('Hyannis', 287, '42.00040', '-101.76060'), ('Whitman', 287, '42.04400', '-101.53700')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEC077': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Greeley', 549, '41.54820', '-98.53000'), ('Scotia', 308, '41.46830', '-98.70250'), ('Spalding', 537, '41.68840', '-98.36200'), ('Wolbach', 287, '41.40080', '-98.39170')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEC079': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alda', 652, '40.86470', '-98.46880'), ('Cairo', 790, '41.00160', '-98.60770'), ('Doniphan', 763, '40.77350', '-98.37120'), ('Grand Island', 42940, '40.92180', '-98.36590'), ('Wood River', 1204, '40.82180', '-98.59790')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC081': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Aurora', 4225, '40.86570', '-98.00310'), ('Giltner', 389, '40.77430', '-98.15390'), ('Hampton', 439, '40.88100', '-97.88790'), ('Hordville', 150, '41.07980', '-97.89030'), ('Marquette', 282, '41.00600', '-98.00950'), ('Phillips', 336, '40.89800', '-98.21490'), ('Stockham', 60, '40.71680', '-97.94340')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC083': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alma', 1214, '40.10170', '-99.36220'), ('Harlan County Dam', 209, '40.07000', '-99.21000'), ('Huntley', 67, '40.21080', '-99.29100'), ('Orleans', 425, '40.13160', '-99.45410'), ('Ragan', 46, '40.31060', '-99.29010'), ('Republican City', 209, '40.10030', '-99.22240'), ('Stamford', 202, '40.13070', '-99.59470')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC085': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Hamlet', 54, '40.38440', '-101.23490'), ('Hayes Center', 240, '40.51120', '-101.02000')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEC087': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Culbertson', 594, '40.22850', '-100.83560'), ('Palisade', 381, '40.34840', '-101.10670'), ('Stratton Ne', 396, '40.15170', '-101.22770'), ('Trenton', 507, '40.17430', '-101.01330')], 'partOfState': 'southwest', 'wfo': 'GLD'}, +'NEC089': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Amelia', 333, '42.23000', '-98.96000'), ('Atkinson', 1244, '42.53170', '-98.97640'), ('Chambers', 333, '42.20510', '-98.74780'), ('Emmet', 77, '42.47640', '-98.80990'), ('Ewing', 433, '42.25850', '-98.34260'), ('Inman', 148, '42.38130', '-98.52890'), ('Oneill', 3733, '42.46070', '-98.64670'), ('Page', 157, '42.39900', '-98.41740'), ('Stuart', 625, '42.60000', '-99.14020')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC091': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Mullen', 491, '42.04200', '-101.04330')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEC093': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Boelus', 208, '41.07500', '-98.71670'), ('Cotesfield', 66, '41.35770', '-98.63300'), ('Cushing', 31, '41.29460', '-98.36900'), ('Dannebrog', 352, '41.11860', '-98.54520'), ('Elba', 243, '41.28440', '-98.56910'), ('Farwell', 148, '41.21580', '-98.62740'), ('St. Libory', 42940, '41.08000', '-98.35300'), ('St. Paul', 2218, '41.21370', '-98.45950')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEC095': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Daykin', 177, '40.32180', '-97.29740'), ('Diller', 287, '40.10870', '-96.93750'), ('Endicott', 139, '40.08090', '-97.09530'), ('Fairbury', 4262, '40.14090', '-97.17720'), ('Harbine', 56, '40.19150', '-96.97350'), ('Jansen', 143, '40.18570', '-97.08240'), ('Plymouth', 477, '40.30340', '-96.98810'), ('Reynolds', 88, '40.06040', '-97.33590'), ('Steele City', 84, '40.03650', '-97.02250')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC097': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Cook', 322, '40.51030', '-96.16120'), ('Crab Orchard', 49, '40.33440', '-96.42170'), ('Elk Creek', 112, '40.28750', '-96.12800'), ('Sterling', 507, '40.46190', '-96.37810'), ('Tecumseh', 1716, '40.37030', '-96.18880')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC099': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Axtell', 696, '40.47900', '-99.12820'), ('Heartwell', 80, '40.56970', '-98.78850'), ('Minden', 2964, '40.50080', '-98.95080'), ('Norman', 49, '40.47930', '-98.79100'), ('Wilcox', 360, '40.36450', '-99.16880')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC101': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brule', 372, '41.09590', '-101.88840'), ('Keystone', 4930, '41.22000', '-101.59000'), ('Kingsley Dam', 4930, '41.21450', '-101.65800'), ('Lemoyne', 4930, '41.28550', '-101.80050'), ('Ogallala', 4930, '41.13050', '-101.72050'), ('Paxton', 614, '41.12480', '-101.35540'), ('Roscoe', 4930, '41.13500', '-101.60000'), ('Sarben', 614, '41.16300', '-101.30000')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEC103': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burton', 11, '42.91140', '-99.59060'), ('Mills', 11, '42.94000', '-99.40000'), ('Springview', 244, '42.82530', '-99.74900')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC105': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bushnell', 162, '41.23200', '-103.89040'), ('Dix', 267, '41.23470', '-103.48630'), ('Kimball', 2559, '41.23250', '-103.65900')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC107': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bazile Mills', 26, '42.51380', '-97.91000'), ('Bloomfield', 1126, '42.59880', '-97.64880'), ('Center', 90, '42.60890', '-97.87590'), ('Creighton', 1270, '42.46510', '-97.90680'), ('Crofton', 754, '42.73180', '-97.49770'), ('Niobrara', 379, '42.75030', '-98.03030'), ('Santee', 302, '42.83850', '-97.84920'), ('Verdel', 58, '42.81150', '-98.19290'), ('Verdigre', 519, '42.59750', '-98.03520'), ('Wausa', 636, '42.49780', '-97.53820'), ('Winnetoon', 70, '42.51430', '-97.96140')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC109': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bennet', 570, '40.68120', '-96.50590'), ('Davey', 153, '40.98260', '-96.66860'), ('Denton', 189, '40.73950', '-96.84460'), ('Firth', 564, '40.53430', '-96.60400'), ('Hallam', 276, '40.53670', '-96.78590'), ('Hickman', 1084, '40.62150', '-96.63150'), ('Lincoln', 225581, '40.81640', '-96.68820'), ('Malcolm', 413, '40.90850', '-96.86600'), ('Panama', 253, '40.59960', '-96.51120'), ('Raymond', 186, '40.95660', '-96.78150'), ('Roca', 220, '40.65810', '-96.66170'), ('Sprague', 146, '40.62660', '-96.74520'), ('Waverly', 2448, '40.91490', '-96.53000')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC111': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brady', 366, '41.02280', '-100.36740'), ('Dickens', 16, '40.82580', '-100.99340'), ('Hershey', 572, '41.15810', '-101.00130'), ('Maxwell', 315, '41.07860', '-100.52580'), ('North Platte', 23878, '41.13300', '-100.77180'), ('Sutherland', 1129, '41.15750', '-101.12650'), ('Wallace', 329, '40.83710', '-101.16350'), ('Wellfleet', 76, '40.75270', '-100.73040')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEC113': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Gandy', 30, '41.47010', '-100.45740'), ('Stapleton', 301, '41.47990', '-100.51220')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEC115': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Almeria', 207, '41.83430', '-99.54000'), ('Taylor', 207, '41.76970', '-99.38130')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC117': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ringgold', 301, '41.51100', '-100.77050'), ('Tryon', 572, '41.55800', '-100.94500')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEC119': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Battle Creek', 1158, '41.99900', '-97.59870'), ('Madison', 2367, '41.82840', '-97.45660'), ('Meadow Grove', 311, '42.02920', '-97.73620'), ('Newman Grove', 797, '41.74740', '-97.77710'), ('Norfolk', 23516, '42.03430', '-97.41840'), ('Tilden', 1078, '42.04400', '-97.83200')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC121': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Archer', 472, '41.16640', '-98.13000'), ('Central City', 2998, '41.11440', '-98.00280'), ('Chapman', 341, '41.02290', '-98.15970'), ('Clarks', 361, '41.21630', '-97.83940'), ('Palmer', 472, '41.22750', '-98.21890'), ('Silver Creek', 441, '41.33280', '-97.66570')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEC123': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Angora', 1594, '41.87000', '-103.10000'), ('Bayard', 1247, '41.75710', '-103.32300'), ('Bridgeport', 1594, '41.66670', '-103.09830'), ('Broadwater', 140, '41.59760', '-102.85150'), ('Redington', 1247, '41.59000', '-103.30000')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC125': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Belgrade', 134, '41.47130', '-98.06710'), ('Fullerton', 1378, '41.36410', '-97.97250'), ('Genoa', 981, '41.44590', '-97.73280')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEC127': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Auburn', 3350, '40.38830', '-95.84200'), ('Brock', 162, '40.48110', '-95.95970'), ('Brownville', 146, '40.39710', '-95.66140'), ('Johnson', 280, '40.41130', '-95.99840'), ('Julian', 63, '40.52030', '-95.86710'), ('Nemaha', 178, '40.33780', '-95.67590'), ('Peru', 569, '40.47870', '-95.73100')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC129': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bostwick', 2055, '40.04000', '-98.18500'), ('Hardy', 179, '40.01160', '-97.92330'), ('Lawrence', 312, '40.29020', '-98.25900'), ('Nelson', 587, '40.20090', '-98.06900'), ('Nora', 20, '40.16380', '-97.97360'), ('Oak', 60, '40.23730', '-97.90400'), ('Ruskin', 195, '40.14430', '-97.86650'), ('Superior', 2055, '40.02240', '-98.06770')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC131': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burr', 66, '40.53590', '-96.29890'), ('Douglas', 231, '40.59230', '-96.38850'), ('Dunbar', 237, '40.66870', '-96.03030'), ('Lorton Village', 39, '40.59750', '-96.02350'), ('Nebraska City', 7228, '40.67620', '-95.86070'), ('Otoe', 217, '40.72450', '-96.12030'), ('Palmyra', 546, '40.70570', '-96.39160'), ('Syracuse', 1762, '40.66180', '-96.18290'), ('Talmage', 268, '40.53180', '-96.02340'), ('Unadilla', 342, '40.68280', '-96.27010')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC133': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burchard', 103, '40.14980', '-96.34780'), ('Du Bois', 166, '40.03400', '-96.04590'), ('Lewiston', 86, '40.24340', '-96.40740'), ('Pawnee City', 1033, '40.11060', '-96.15200'), ('Steinauer', 74, '40.20700', '-96.23360'), ('Table Rock', 264, '40.17870', '-96.08920')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC135': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brandon', 175, '40.80150', '-101.93100'), ('Elsie', 139, '40.84680', '-101.38890'), ('Grainton', 16, '40.82240', '-101.28650'), ('Grant', 1225, '40.84440', '-101.72570'), ('Madrid', 265, '40.84960', '-101.54270'), ('Venango', 175, '40.76170', '-102.04080')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEC137': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Atlanta', 130, '40.36830', '-99.47240'), ('Bertrand', 786, '40.52670', '-99.63270'), ('Funk', 204, '40.46290', '-99.24950'), ('Holdrege', 5636, '40.44060', '-99.37550'), ('Loomis', 397, '40.47810', '-99.50740')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC139': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Foster', 63, '42.27370', '-97.66500'), ('Hadar', 312, '42.10580', '-97.45150'), ('McLean', 38, '42.38620', '-97.46770'), ('Osmond', 796, '42.35820', '-97.59890'), ('Pierce', 1774, '42.19950', '-97.52770'), ('Plainview', 1353, '42.35390', '-97.78690')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC141': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Columbus', 20971, '41.43470', '-97.35560'), ('Cornlea', 41, '41.68070', '-97.56710'), ('Creston', 215, '41.70710', '-97.36150'), ('Duncan', 359, '41.39000', '-97.49350'), ('Humphrey', 786, '41.68820', '-97.48740'), ('Lindsay', 276, '41.70060', '-97.69430'), ('Monroe', 307, '41.47370', '-97.60010'), ('Platte Center', 359, '41.53800', '-97.48720'), ('Tarnov', 63, '41.61490', '-97.50280')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC143': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Osceola', 921, '41.17790', '-97.54840'), ('Polk', 322, '41.07520', '-97.78280'), ('Shelby', 690, '41.19420', '-97.42640'), ('Stromsburg', 1232, '41.11630', '-97.59050')], 'partOfState': 'east central', 'wfo': 'GID'}, +'NEC145': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bartley', 355, '40.25250', '-100.30930'), ('Danbury', 127, '40.03780', '-100.40440'), ('Indianola', 642, '40.23490', '-100.41890'), ('Lebanon', 70, '40.04920', '-100.27590'), ('McCook', 7994, '40.20410', '-100.62030')], 'partOfState': 'southwest', 'wfo': 'GLD'}, +'NEC147': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Barada', 28, '40.21830', '-95.57860'), ('Dawson', 209, '40.13090', '-95.82980'), ('Falls City', 4671, '40.06530', '-95.59960'), ('Humboldt', 941, '40.16620', '-95.94420'), ('Preston', 50, '40.03410', '-95.51730'), ('Rulo', 226, '40.05200', '-95.43000'), ('Salem', 138, '40.07710', '-95.72680'), ('Shubert', 252, '40.23580', '-95.68330'), ('Stella', 220, '40.23160', '-95.77260'), ('Verdon', 223, '40.14890', '-95.71080')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC149': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bassett', 743, '42.58260', '-99.53570'), ('Newport', 98, '42.60080', '-99.32760'), ('Rose', 341, '42.17000', '-99.52850')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC151': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Crete', 6028, '40.62560', '-96.95830'), ('De Witt', 572, '40.39500', '-96.92180'), ('Dorchester', 615, '40.64760', '-97.11480'), ('Friend', 1174, '40.65110', '-97.28400'), ('Swanton', 106, '40.37930', '-97.07970'), ('Tobias', 158, '40.41840', '-97.33630'), ('Western', 287, '40.39310', '-97.19930'), ('Wilber', 1761, '40.48090', '-96.96330')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC153': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bellevue', 44382, '41.15640', '-95.92260'), ('Chalco', 10736, '41.18340', '-96.13390'), ('Gretna', 2355, '41.14070', '-96.24360'), ('La Vista', 11699, '41.18430', '-96.03910'), ('Offutt AFB', 10883, '41.11160', '-95.91880'), ('Papillion', 16363, '41.15720', '-96.04050'), ('Springfield', 1450, '41.08310', '-96.13220')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEC155': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ashland', 2262, '41.04050', '-96.37090'), ('Cedar Bluffs', 615, '41.39780', '-96.60920'), ('Ceresco', 920, '41.05770', '-96.64530'), ('Colon', 138, '41.29780', '-96.60650'), ('Ithaca', 168, '41.16040', '-96.53960'), ('Leshara', 111, '41.33010', '-96.42870'), ('Malmo', 109, '41.26630', '-96.72100'), ('Mead', 564, '41.22910', '-96.48940'), ('Memphis', 106, '41.09460', '-96.43280'), ('Morse Bluff', 134, '41.43110', '-96.76570'), ('Prague', 346, '41.30970', '-96.80860'), ('Valparaiso', 563, '41.07940', '-96.83200'), ('Wahoo', 3942, '41.21520', '-96.62000'), ('Weston', 310, '41.19200', '-96.74120'), ('Yutan', 1216, '41.24320', '-96.39730')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEC157': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Gering', 7751, '41.82850', '-103.66520'), ('Henry', 162, '41.99830', '-104.04630'), ('Lyman', 421, '41.91810', '-104.03650'), ('McGrew', 103, '41.74720', '-103.41720'), ('Melbeta', 138, '41.78200', '-103.51680'), ('Minatare', 810, '41.81100', '-103.50220'), ('Mitchell', 1831, '41.94210', '-103.80900'), ('Morrill', 957, '41.96410', '-103.92380'), ('Scottsbluff', 14732, '41.86720', '-103.66160'), ('Terrytown', 646, '41.85000', '-103.66850')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC159': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Beaver Crossing', 457, '40.77780', '-97.28190'), ('Bee', 223, '41.00690', '-97.05770'), ('Cordova', 127, '40.71640', '-97.35090'), ('Garland', 247, '40.94420', '-96.98510'), ('Goehner', 186, '40.83270', '-97.21990'), ('Milford', 2070, '40.77280', '-97.05200'), ('Pleasant Dale', 245, '40.79180', '-96.93270'), ('Seward', 6319, '40.91210', '-97.09670'), ('Staplehurst', 270, '40.97480', '-97.17200'), ('Tamora', 51, '40.89580', '-97.22410'), ('Utica', 844, '40.89560', '-97.34500')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEC161': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Antioch', 8959, '42.06800', '-102.62000'), ('Bingham', 287, '42.01700', '-102.06000'), ('Clinton', 30, '42.75940', '-102.34820'), ('Ellsworth', 287, '42.06000', '-102.28600'), ('Gordon', 1756, '42.80630', '-102.20360'), ('Hay Springs', 652, '42.68310', '-102.68900'), ('Lakeside', 8959, '42.06050', '-102.46000'), ('Rushville', 999, '42.71290', '-102.46580')], 'partOfState': 'panhandle', 'wfo': 'LBF'}, +'NEC163': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ashton', 237, '41.24760', '-98.79450'), ('Hazard', 66, '41.09120', '-99.07810'), ('Litchfield', 280, '41.15610', '-99.15190'), ('Loup City', 996, '41.27630', '-98.96770'), ('Rockville', 111, '41.11930', '-98.83110'), ('Sherman Reservoir', 996, '41.30000', '-98.88000')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEC165': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Agate', 279, '42.41000', '-103.78000'), ('Harrison', 279, '42.68800', '-103.88160')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEC167': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Pilger', 378, '42.00770', '-97.05400'), ('Stanton', 1627, '41.94890', '-97.22400')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC169': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alexandria', 216, '40.24740', '-97.38680'), ('Belvidere', 98, '40.25440', '-97.55690'), ('Bruning', 300, '40.33570', '-97.56460'), ('Byron', 144, '40.00520', '-97.76810'), ('Carleton', 136, '40.30170', '-97.67350'), ('Chester', 294, '40.00960', '-97.61770'), ('Davenport', 339, '40.31160', '-97.81010'), ('Deshler', 879, '40.13900', '-97.72320'), ('Gilead', 40, '40.14650', '-97.41500'), ('Hebron', 1565, '40.16840', '-97.58770'), ('Hubbell', 73, '40.00760', '-97.49670')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC171': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Halsey', 59, '41.90280', '-100.26910'), ('Seneca', 51, '42.04270', '-100.83130'), ('Thedford', 211, '41.97880', '-100.57450')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC173': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Macy', 956, '42.11260', '-96.36300'), ('Pender', 1148, '42.11000', '-96.71060'), ('Rosalie', 194, '42.05690', '-96.51270'), ('Thurston', 125, '42.17650', '-96.69990'), ('Walthill', 909, '42.14870', '-96.49280'), ('Winnebago', 768, '42.23720', '-96.47290')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC175': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arcadia', 359, '41.42470', '-99.12560'), ('Elyria', 54, '41.67970', '-99.00530'), ('Fort Hartsuff State Park', 54, '41.73000', '-99.01000'), ('North Loup', 339, '41.49490', '-98.77190'), ('Ord', 2269, '41.60250', '-98.92960')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEC177': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arlington', 1197, '41.45420', '-96.35550'), ('Blair', 7512, '41.54420', '-96.13670'), ('Fort Calhoun', 856, '41.45510', '-96.02560'), ('Herman', 310, '41.67310', '-96.21660'), ('Kennard', 371, '41.47430', '-96.20340'), ('Washington', 126, '41.39830', '-96.20870')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEC179': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Carroll', 238, '42.27630', '-97.19110'), ('Hoskins', 283, '42.11370', '-97.30460'), ('Sholes', 24, '42.33500', '-97.29400'), ('Wayne', 5583, '42.23710', '-97.01670'), ('Winside', 468, '42.17800', '-97.17410')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEC181': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bladen', 291, '40.32360', '-98.59510'), ('Blue Hill', 867, '40.33300', '-98.44760'), ('Cowles', 48, '40.17100', '-98.44800'), ('Guide Rock', 245, '40.07300', '-98.32920'), ('Inavale', 1131, '40.09580', '-98.63860'), ('Red Cloud', 1131, '40.08610', '-98.52230'), ('Rosemont', 867, '40.28690', '-98.36390')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEC183': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bartlett', 128, '41.88410', '-98.55140'), ('Ericson', 104, '41.78050', '-98.67760')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEC185': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Benedict', 278, '41.00660', '-97.60680'), ('Bradshaw', 336, '40.88370', '-97.74620'), ('Gresham', 270, '41.02770', '-97.40110'), ('Henderson', 986, '40.77900', '-97.81160'), ('Lushton', 33, '40.72380', '-97.72410'), ('McCool Junction', 385, '40.74430', '-97.59520'), ('Thayer', 71, '40.96970', '-97.49450'), ('Waco', 256, '40.89660', '-97.46120'), ('York', 8081, '40.87120', '-97.59560')], 'partOfState': 'east central', 'wfo': 'GID'}, +'NHC001': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Alton', 2979, '43.45220', '-71.21810'), ('Barnstead', 1669, '43.33390', '-71.29330'), ('Belmont', 3231, '43.44530', '-71.47830'), ('Gilford', 15743, '43.54750', '-71.40720'), ('Gilmanton', 1669, '43.42420', '-71.41500'), ('Laconia', 40687, '43.52770', '-71.47080'), ('Meredith', 1739, '43.65750', '-71.50080'), ('New Hampton', 1670, '43.60560', '-71.65470'), ('Sanbornton', 3231, '43.48920', '-71.58280'), ('Tilton', 3231, '43.44220', '-71.58940'), ('Tilton-Northfield', 3231, '43.44340', '-71.59310')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NHC003': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Albany', 1692, '43.95780', '-71.16810'), ('Bridgewater', 2979, '43.63830', '-71.23690'), ('Brookfield', 2979, '43.55890', '-71.06580'), ('Chatham', 1580, '44.16440', '-71.01170'), ('Conway', 1692, '43.97920', '-71.12080'), ('Crawford Notch', 1089, '44.16860', '-71.40500'), ('Eaton', 1692, '43.90920', '-71.08420'), ('Effingham', 1692, '43.76110', '-70.99690'), ('Freedom', 1692, '43.81220', '-71.03610'), ('Jackson', 2069, '44.14420', '-71.18140'), ('Madison', 1692, '43.89920', '-71.14890'), ('Moultonborough', 1739, '43.75470', '-71.39720'), ('North Conway', 2069, '44.05380', '-71.12680'), ('Ossipee', 2979, '43.68530', '-71.11720'), ('Sandwich', 1739, '43.79030', '-71.41170'), ('Tamworth', 1692, '43.85970', '-71.26360'), ('Tuftonboro', 2979, '43.69640', '-71.22250'), ('Wakefield', 3468, '43.56810', '-71.03060'), ('Wolfeboro', 2979, '43.58390', '-71.20780')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHC005': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Alstead', 3313, '43.15000', '-72.36667'), ('Chesterfield', 1713, '42.88333', '-72.46667'), ('Dublin', 2944, '42.91667', '-72.06667'), ('Fitzwilliam', 2802, '42.78333', '-72.15000'), ('Gilsum', 22563, '43.05000', '-72.26667'), ('Harrisville', 1089, '42.95000', '-72.10000'), ('Hinsdale', 1713, '42.78820', '-72.48830'), ('Jaffrey', 2802, '42.81300', '-72.02480'), ('Keene', 22563, '42.95000', '-72.29740'), ('Marlborough', 1089, '42.90390', '-72.21020'), ('Marlow', 22563, '43.11667', '-72.20000'), ('Nelson', 1089, '42.98333', '-72.13333'), ('Richmond', 1832, '42.75000', '-72.28333'), ('Rindge', 2802, '42.75000', '-72.01667'), ('Roxbury', 1089, '42.93333', '-72.20000'), ('Stoddard', 1389, '43.08333', '-72.10000'), ('Sullivan', 22563, '43.01667', '-72.21667'), ('Surry', 22563, '43.05000', '-72.33333'), ('Swanzey', 1055, '42.86667', '-72.28333'), ('Troy', 1089, '42.83333', '-72.18333'), ('Walpole', 399, '43.08333', '-72.43333'), ('Westmoreland', 399, '42.96667', '-72.45000'), ('Winchester', 1832, '42.77620', '-72.38470')], 'partOfState': 'southern', 'wfo': 'BOX'}, +'NHC007': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Berlin', 10331, '44.46860', '-71.18560'), ('Carroll', 1089, '44.29830', '-71.54110'), ('Clarksville', 1197, '45.02080', '-71.31250'), ('Colebrook', 1197, '44.89440', '-71.49640'), ('Dixville Notch', 1197, '44.87080', '-71.30640'), ('Dummer', 10331, '44.67140', '-71.25310'), ('Errol', 10331, '44.78140', '-71.13830'), ('Gorham', 1773, '44.38780', '-71.17360'), ('Groveton', 1197, '44.59920', '-71.51820'), ('Jefferson', 1695, '44.41890', '-71.47500'), ('Lancaster', 1695, '44.48890', '-71.56970'), ('Milan', 10331, '44.57330', '-71.18560'), ('Millsfield', 10331, '44.80190', '-71.27610'), ('Mount Washington', 1773, '44.27060', '-71.30470'), ('North Stratford', 1197, '44.76020', '-71.58840'), ('Northumberland', 1197, '44.56330', '-71.55920'), ('Pinkham Notch', 1773, '44.25750', '-71.25420'), ('Pittsburg', 1197, '45.05110', '-71.39190'), ('Randolph', 1773, '44.37530', '-71.28030'), ('Shelburne', 1773, '44.40110', '-71.17530'), ('Stark', 1197, '44.60060', '-71.40670'), ('Stewartstown', 1197, '45.00610', '-71.50830'), ('Stratford', 1197, '44.65500', '-71.55610'), ('Wentworths Location', 10331, '44.85810', '-71.05580'), ('Whitefield', 1089, '44.37580', '-71.61060'), ('York Pond', 10331, '44.50330', '-71.33920')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHC009': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Ashland', 3528, '43.69530', '-71.63110'), ('Bath', 1081, '44.16690', '-71.96670'), ('Benton', 1070, '44.10310', '-71.90220'), ('Bethlehem', 4431, '44.28030', '-71.68860'), ('Bristol', 1670, '43.59110', '-71.73720'), ('Canaan', 1698, '43.64750', '-72.01220'), ('Dorchester', 1698, '43.75670', '-71.94920'), ('Easton', 1070, '44.14610', '-71.79060'), ('Ellsworth', 3528, '43.87390', '-71.73690'), ('Enfield', 1698, '43.64060', '-72.14440'), ('Hebron', 1670, '43.69390', '-71.80610'), ('Holderness', 3528, '43.73190', '-71.58890'), ('Landaff Center', 1070, '44.17500', '-71.88750'), ('Lebanon', 12568, '43.64220', '-72.25220'), ('Lincoln', 4431, '44.04560', '-71.67060'), ('Lisbon', 1070, '44.21270', '-71.90900'), ('Littleton', 4431, '44.30610', '-71.77060'), ('Livermore', 2069, '44.01830', '-71.45310'), ('Lyme', 8162, '43.80940', '-72.15920'), ('Orange', 1698, '43.65440', '-71.97190'), ('Piermont', 672, '43.96970', '-72.08110'), ('Plymouth', 3528, '43.75690', '-71.68860'), ('Rumney', 3528, '43.80530', '-71.81310'), ('Sugar Hill', 4431, '44.22170', '-71.80140'), ('Thornton', 3528, '43.89280', '-71.67640'), ('Warren', 412, '43.92310', '-71.89250'), ('Waterville Valley', 3528, '43.95000', '-71.50000'), ('Wentworth', 672, '43.87170', '-71.91470'), ('Woodstock', 3528, '43.97750', '-71.68560'), ('Woodsville', 1081, '44.15220', '-72.03780')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHC011': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Amherst', 8293, '42.86667', '-71.61667'), ('Antrim', 1389, '43.03170', '-71.94580'), ('Bedford', 5779, '42.95000', '-71.50000'), ('Bennington', 0, '43.00000', '-71.93330'), ('Brookline', 1164, '42.73333', '-71.66667'), ('Deering', 1842, '43.06667', '-71.86667'), ('Francestown', 0, '42.98333', '-71.80000'), ('Goffstown', 5779, '43.01667', '-71.60000'), ('Greenfield', 0, '42.95000', '-71.85000'), ('Greenville', 1131, '42.76960', '-71.79980'), ('Hancock', 0, '42.96667', '-71.98333'), ('Hillsborough', 1842, '43.11430', '-71.89980'), ('Hollis', 2350, '42.73333', '-71.58333'), ('Hudson', 7814, '42.76380', '-71.43210'), ('Litchfield', 3784, '42.83333', '-71.46667'), ('Lyndeborough', 1236, '42.90000', '-71.75000'), ('Manchester', 107006, '42.98360', '-71.44490'), ('Mason', 1131, '42.75000', '-71.75000'), ('Merrimack', 3784, '42.86667', '-71.48333'), ('Milford', 8293, '42.83400', '-71.66180'), ('Mont Vernon', 8293, '42.90000', '-71.66667'), ('Nashua', 86605, '42.74860', '-71.49180'), ('New Boston', 1236, '42.96667', '-71.68333'), ('New Ipswich', 1131, '42.75000', '-71.85000'), ('Pelham', 103439, '42.73333', '-71.31667'), ('Peterborough', 2944, '42.87660', '-71.96230'), ('Sharon', 2944, '42.81667', '-71.90000'), ('Temple', 1131, '42.81667', '-71.83333'), ('Weare', 1627, '43.10000', '-71.73333'), ('Wilton', 1236, '42.84690', '-71.73680'), ('Windsor', 1389, '43.06667', '-71.96667')], 'partOfState': 'southern', 'wfo': 'BOX'}, +'NHC013': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Allenstown', 5362, '43.15780', '-71.40610'), ('Andover', 8405, '43.43690', '-71.82390'), ('Boscawen', 40687, '43.31500', '-71.62140'), ('Bow', 5362, '43.13190', '-71.54970'), ('Bradford', 1842, '43.27000', '-71.96060'), ('Canterbury', 40687, '43.33690', '-71.56580'), ('Chichester', 1669, '43.24920', '-71.40030'), ('Concord', 40687, '43.20810', '-71.53810'), ('Contoocook', 1444, '43.22350', '-71.71510'), ('Danbury', 1670, '43.52560', '-71.86220'), ('Dunbarton', 40687, '43.10250', '-71.61690'), ('Epsom', 1669, '43.22280', '-71.33250'), ('Franklin', 8405, '43.44420', '-71.64780'), ('Henniker', 1627, '43.17970', '-71.82280'), ('Hill', 8405, '43.52420', '-71.70140'), ('Hooksett', 3609, '43.09670', '-71.46560'), ('Hopkinton', 1444, '43.19140', '-71.67580'), ('Loudon', 40687, '43.28560', '-71.46780'), ('Newbury', 4008, '43.32140', '-72.03640'), ('New London', 4008, '43.41390', '-71.98560'), ('Northfield', 3231, '43.43310', '-71.59280'), ('Pembroke', 5362, '43.14670', '-71.45810'), ('Pittsfield', 1669, '43.30580', '-71.32470'), ('Salisbury', 8405, '43.38000', '-71.71750'), ('South Hooksett', 5282, '43.03490', '-71.42260'), ('Suncook', 5362, '43.13870', '-71.45210'), ('Sutton', 1627, '43.33420', '-71.95190'), ('Warner', 1627, '43.28060', '-71.81720'), ('Webster', 1444, '43.32890', '-71.71830'), ('Wilmot', 1670, '43.45170', '-71.91420')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NHC015': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Atkinson', 51418, '42.83830', '-71.14750'), ('Auburn', 5282, '43.00440', '-71.34890'), ('Brentwood', 1673, '42.97860', '-71.07330'), ('Candia', 2839, '43.07780', '-71.27720'), ('Chester', 22661, '42.95670', '-71.25780'), ('Danville', 1673, '42.91250', '-71.12500'), ('Deerfield', 2839, '43.14610', '-71.21690'), ('Derry', 22661, '42.88060', '-71.32780'), ('East Kingston', 9759, '42.92560', '-71.01720'), ('Epping', 1673, '43.03330', '-71.07470'), ('Exeter', 9759, '42.98140', '-70.94830'), ('Fremont', 2839, '42.99080', '-71.14310'), ('Greenland', 20784, '43.03610', '-70.83330'), ('Hampstead', 22661, '42.87440', '-71.18170'), ('Hampton', 9126, '42.93750', '-70.83940'), ('Hampton Falls', 9126, '42.91610', '-70.86420'), ('Kensington', 9759, '42.92690', '-70.94440'), ('Kingston', 1673, '42.93640', '-71.05390'), ('Londonderry', 11417, '42.86500', '-71.37440'), ('Newfields', 5124, '43.03690', '-70.93890'), ('Newington', 3112, '43.10000', '-70.83420'), ('Newmarket', 5124, '43.08280', '-70.93560'), ('Newton', 51418, '42.86940', '-71.03500'), ('North Hampton', 9126, '42.97250', '-70.83030'), ('Northwood', 2839, '43.19420', '-71.15140'), ('Nottingham', 1673, '43.11440', '-71.10030'), ('Plaistow', 51418, '42.83640', '-71.09530'), ('Portsmouth', 20784, '43.07170', '-70.76310'), ('Raymond', 2839, '43.03610', '-71.18390'), ('Rye', 20784, '43.01330', '-70.77140'), ('Salem', 70207, '42.78830', '-71.20140'), ('Sandown', 2839, '42.92860', '-71.18750'), ('Seabrook', 9126, '42.89470', '-70.87170'), ('South Hampton', 12109, '42.88080', '-70.96310'), ('Stratham', 5124, '43.02390', '-70.91420'), ('Windham', 11417, '42.80060', '-71.30470')], 'partOfState': 'southern', 'wfo': 'GYX'}, +'NHC017': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Barrington', 28461, '43.22280', '-71.04750'), ('Dover', 26884, '43.19780', '-70.87420'), ('Durham', 9024, '43.13390', '-70.92690'), ('Farmington', 3468, '43.38970', '-71.06560'), ('Lee', 5124, '43.12310', '-71.01190'), ('Madbury', 9024, '43.16920', '-70.92440'), ('Middleton', 3468, '43.47610', '-71.07000'), ('Milton', 3468, '43.40970', '-70.98890'), ('New Durham', 3468, '43.43670', '-71.17280'), ('Rochester', 28461, '43.30440', '-70.97610'), ('Rollinsford', 11477, '43.23610', '-70.82080'), ('Somersworth', 11477, '43.26170', '-70.86580'), ('Strafford', 3468, '43.32690', '-71.18470')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NHC019': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Acworth', 1145, '43.21780', '-72.29250'), ('Charlestown', 1145, '43.23860', '-72.42500'), ('Claremont', 13151, '43.37670', '-72.34720'), ('Cornish', 13151, '43.48280', '-72.32000'), ('Croydon', 4008, '43.45060', '-72.16360'), ('Goshen', 4008, '43.30110', '-72.14830'), ('Grantham', 4008, '43.48940', '-72.13810'), ('Langdon', 3313, '43.16690', '-72.38000'), ('Lempster', 4008, '43.23830', '-72.21110'), ('Newport', 4008, '43.36530', '-72.17390'), ('Plainfield', 2521, '43.53420', '-72.35670'), ('Springfield', 4008, '43.49500', '-72.03390'), ('Sunapee', 4008, '43.38750', '-72.08830'), ('Unity', 13151, '43.29390', '-72.26080'), ('Washington', 1842, '43.17580', '-72.09720')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NJC001': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Absecon', 0, '39.43040', '-74.50390'), ('Atlantic City', 0, '39.36000', '-74.44000'), ('Brigantine', 0, '39.40210', '-74.37900'), ('Buena', 0, '39.52800', '-74.94490'), ('Collings Lakes', 0, '39.59470', '-74.88320'), ('Corbin City', 0, '39.30160', '-74.75400'), ('Dorothy', 0, '39.40060', '-74.82390'), ('Egg Harbor City', 0, '39.54980', '-74.61750'), ('Elwood-Magnolia', 0, '39.57750', '-74.71630'), ('English Creek', 0, '39.34920', '-74.67110'), ('Estell Manor', 0, '39.37480', '-74.77130'), ('Folsom', 0, '39.59190', '-74.84720'), ('Hammonton', 0, '39.64120', '-74.78620'), ('Linwood', 0, '39.34220', '-74.57030'), ('Longport', 0, '39.31170', '-74.52550'), ('Margate City', 0, '39.32940', '-74.50660'), ('Mays Landing', 0, '39.45600', '-74.72710'), ('Mizpah', 0, '39.48670', '-74.83610'), ('Northfield', 0, '39.37010', '-74.55410'), ('Pleasantville', 0, '39.39560', '-74.52290'), ('Pomona', 0, '39.46720', '-74.54770'), ('Port Republic', 0, '39.52790', '-74.49170'), ('Somers Point', 0, '39.31920', '-74.60030'), ('Ventnor City', 0, '39.34190', '-74.48320'), ('Weymouth', 0, '39.51930', '-74.77780')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC003': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Allendale', 6699, '41.03320', '-74.13280'), ('Alpine', 2183, '40.95800', '-73.92050'), ('Bergenfield', 26247, '40.92390', '-73.99860'), ('Bogota', 8249, '40.87530', '-74.02920'), ('Carlstadt', 5917, '40.82450', '-74.06390'), ('Cliffside Park', 23007, '40.82160', '-73.98850'), ('Closter', 8383, '40.97270', '-73.96050'), ('Cresskill', 7746, '40.93990', '-73.95890'), ('Demarest', 4845, '40.95620', '-73.95770'), ('Dumont', 17503, '40.94550', '-73.99260'), ('East Rutherford', 8716, '40.81750', '-74.08440'), ('Edgewater', 7677, '40.82140', '-73.97840'), ('Elmwood Park', 18925, '40.90440', '-74.11970'), ('Emerson', 7197, '40.97500', '-74.02370'), ('Englewood', 26203, '40.89240', '-73.97430'), ('Englewood Cliffs', 5322, '40.88370', '-73.94760'), ('Fair Lawn', 31637, '40.93600', '-74.11800'), ('Fairview', 13255, '40.81750', '-74.00160'), ('Fort Lee', 0, '40.85040', '-73.97130'), ('Franklin Lakes', 10422, '41.00690', '-74.20800'), ('Garfield', 29786, '40.87980', '-74.10850'), ('Glen Rock', 11546, '40.95920', '-74.12540'), ('Hackensack', 42677, '40.88930', '-74.04610'), ('Harrington Park', 4740, '40.98930', '-73.98000'), ('Hasbrouck Heights', 11662, '40.86080', '-74.07420'), ('Haworth', 3390, '40.96170', '-73.99890'), ('Hillsdale', 10087, '41.00820', '-74.04370'), ('Ho-Ho-kus', 4060, '40.99960', '-74.09720'), ('Leonia', 8914, '40.86310', '-73.99160'), ('Little Ferry', 10800, '40.84570', '-74.03950'), ('Lodi', 23971, '40.87900', '-74.08120'), ('Lyndhurst', 19383, '40.79680', '-74.11340'), ('Maywood', 9523, '40.90280', '-74.06380'), ('Midland Park', 0, '40.99480', '-74.14220'), ('Montvale', 7034, '41.05220', '-74.04910'), ('Moonachie', 2754, '40.84240', '-74.05920'), ('New Milford', 16400, '40.93410', '-74.01980'), ('North Arlington', 15181, '40.79000', '-74.12700'), ('Northvale', 4460, '41.00980', '-73.95010'), ('Norwood', 5751, '40.99410', '-73.95170'), ('Oakland', 12466, '41.03140', '-74.24040'), ('Old Tappan', 5482, '41.01620', '-73.98300'), ('Oradell', 8047, '40.95500', '-74.03100'), ('Palisades Park', 17073, '40.84690', '-73.99730'), ('Paramus', 25737, '40.94510', '-74.07150'), ('Park Ridge', 8708, '41.03580', '-74.04150'), ('Ramsey', 14351, '41.05920', '-74.14650'), ('Ridgefield', 10830, '40.83140', '-74.01570'), ('Ridgefield Park', 12873, '40.85460', '-74.02050'), ('Ridgewood', 24936, '40.98110', '-74.11390'), ('River Edge', 10946, '40.92720', '-74.04000'), ('River Vale', 9449, '41.01360', '-74.00700'), ('Rochelle Park', 5528, '40.90640', '-74.07840'), ('Rockleigh', 391, '41.00200', '-73.93550'), ('Rutherford', 18110, '40.81990', '-74.10710'), ('Saddle Brook', 13155, '40.90420', '-74.09550'), ('Saddle River', 3201, '41.02630', '-74.09890'), ('Teaneck', 39260, '40.88970', '-74.01210'), ('Tenafly', 13806, '40.91710', '-73.95520'), ('Teterboro', 18, '40.85350', '-74.06080'), ('Upper Saddle River', 7741, '41.06340', '-74.10050'), ('Waldwick', 9622, '41.01290', '-74.12510'), ('Wallington', 11583, '40.85310', '-74.10680'), ('Washington Township', 9245, '40.98900', '-74.06500'), ('Westwood', 10999, '40.98840', '-74.03110'), ('Woodcliff Lake', 5745, '41.02560', '-74.06120'), ('Wood-Ridge', 7644, '40.85040', '-74.08770'), ('Wyckoff', 16508, '40.99780', '-74.16640')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC003': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Allendale', 6699, '41.03320', '-74.13280'), ('Alpine', 2183, '40.95800', '-73.92050'), ('Bergenfield', 26247, '40.92390', '-73.99860'), ('Bogota', 8249, '40.87530', '-74.02920'), ('Carlstadt', 5917, '40.82450', '-74.06390'), ('Cliffside Park', 23007, '40.82160', '-73.98850'), ('Closter', 8383, '40.97270', '-73.96050'), ('Cresskill', 7746, '40.93990', '-73.95890'), ('Demarest', 4845, '40.95620', '-73.95770'), ('Dumont', 17503, '40.94550', '-73.99260'), ('East Rutherford', 8716, '40.81750', '-74.08440'), ('Edgewater', 7677, '40.82140', '-73.97840'), ('Elmwood Park', 18925, '40.90440', '-74.11970'), ('Emerson', 7197, '40.97500', '-74.02370'), ('Englewood', 26203, '40.89240', '-73.97430'), ('Englewood Cliffs', 5322, '40.88370', '-73.94760'), ('Fair Lawn', 31637, '40.93600', '-74.11800'), ('Fairview', 13255, '40.81750', '-74.00160'), ('Fort Lee', 0, '40.85040', '-73.97130'), ('Franklin Lakes', 10422, '41.00690', '-74.20800'), ('Garfield', 29786, '40.87980', '-74.10850'), ('Glen Rock', 11546, '40.95920', '-74.12540'), ('Hackensack', 42677, '40.88930', '-74.04610'), ('Harrington Park', 4740, '40.98930', '-73.98000'), ('Hasbrouck Heights', 11662, '40.86080', '-74.07420'), ('Haworth', 3390, '40.96170', '-73.99890'), ('Hillsdale', 10087, '41.00820', '-74.04370'), ('Ho-Ho-kus', 4060, '40.99960', '-74.09720'), ('Leonia', 8914, '40.86310', '-73.99160'), ('Little Ferry', 10800, '40.84570', '-74.03950'), ('Lodi', 23971, '40.87900', '-74.08120'), ('Lyndhurst', 19383, '40.79680', '-74.11340'), ('Maywood', 9523, '40.90280', '-74.06380'), ('Midland Park', 0, '40.99480', '-74.14220'), ('Montvale', 7034, '41.05220', '-74.04910'), ('Moonachie', 2754, '40.84240', '-74.05920'), ('New Milford', 16400, '40.93410', '-74.01980'), ('North Arlington', 15181, '40.79000', '-74.12700'), ('Northvale', 4460, '41.00980', '-73.95010'), ('Norwood', 5751, '40.99410', '-73.95170'), ('Oakland', 12466, '41.03140', '-74.24040'), ('Old Tappan', 5482, '41.01620', '-73.98300'), ('Oradell', 8047, '40.95500', '-74.03100'), ('Palisades Park', 17073, '40.84690', '-73.99730'), ('Paramus', 25737, '40.94510', '-74.07150'), ('Park Ridge', 8708, '41.03580', '-74.04150'), ('Ramsey', 14351, '41.05920', '-74.14650'), ('Ridgefield', 10830, '40.83140', '-74.01570'), ('Ridgefield Park', 12873, '40.85460', '-74.02050'), ('Ridgewood', 24936, '40.98110', '-74.11390'), ('River Edge', 10946, '40.92720', '-74.04000'), ('River Vale', 9449, '41.01360', '-74.00700'), ('Rochelle Park', 5528, '40.90640', '-74.07840'), ('Rockleigh', 391, '41.00200', '-73.93550'), ('Rutherford', 18110, '40.81990', '-74.10710'), ('Saddle Brook', 13155, '40.90420', '-74.09550'), ('Saddle River', 3201, '41.02630', '-74.09890'), ('Teaneck', 39260, '40.88970', '-74.01210'), ('Tenafly', 13806, '40.91710', '-73.95520'), ('Teterboro', 18, '40.85350', '-74.06080'), ('Upper Saddle River', 7741, '41.06340', '-74.10050'), ('Waldwick', 9622, '41.01290', '-74.12510'), ('Wallington', 11583, '40.85310', '-74.10680'), ('Washington Township', 9245, '40.98900', '-74.06500'), ('Westwood', 10999, '40.98840', '-74.03110'), ('Woodcliff Lake', 5745, '41.02560', '-74.06120'), ('Wood-Ridge', 7644, '40.85040', '-74.08770'), ('Wyckoff', 16508, '40.99780', '-74.16640')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC005': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Atsion', 0, '39.74250', '-74.72640'), ('Bass River State Forest', 0, '39.63390', '-74.40750'), ('Batsto', 0, '39.64000', '-74.64000'), ('Beverly', 0, '40.06470', '-74.92180'), ('Bordentown', 0, '40.14860', '-74.70950'), ('Browns Mills', 0, '39.97330', '-74.56800'), ('Burlington', 0, '40.07830', '-74.85250'), ('Chatsworth', 0, '39.82000', '-74.52000'), ('Cinnaminson', 0, '39.99990', '-74.99150'), ('Columbus', 0, '40.07250', '-74.72080'), ('Country Lake Estates', 0, '39.94870', '-74.54110'), ('Crosswicks', 0, '40.15150', '-74.64810'), ('Delanco', 0, '40.04920', '-74.94910'), ('Edgewater Park', 0, '40.05460', '-74.91250'), ('Evesham', 0, '39.87850', '-74.90360'), ('Fieldsboro', 0, '40.13620', '-74.72990'), ('Florence', 0, '40.11000', '-74.79450'), ('Fort Dix', 0, '40.00490', '-74.61310'), ('Georgetown', 0, '40.07940', '-74.65360'), ('Jacksonville', 0, '40.05030', '-74.76390'), ('Jobstown', 0, '40.03690', '-74.69330'), ('Leisuretowne', 0, '39.90100', '-74.70450'), ('Lumberton', 0, '39.97000', '-74.80330'), ('Maple Shade', 0, '39.95130', '-74.99570'), ('Marlton', 0, '39.90140', '-74.92930'), ('Marlton Lakes', 0, '39.80900', '-74.89820'), ('McGuire AFB', 0, '40.04130', '-74.58440'), ('Medford', 0, '39.90000', '-74.80000'), ('Medford Lakes', 0, '39.85940', '-74.80580'), ('Moorestown-Lenola', 0, '39.96430', '-74.96600'), ('Mount Holly', 0, '39.99500', '-74.78680'), ('Mount Laurel', 0, '39.93380', '-74.92820'), ('New Gretna', 0, '39.59220', '-74.45140'), ('Palmyra', 0, '40.00200', '-75.03490'), ('Pemberton', 0, '39.97140', '-74.68620'), ('Pemberton Heights', 0, '39.95770', '-74.67820'), ('Penn State Forest', 0, '39.74390', '-74.46030'), ('Presidential Lakes', 0, '39.91370', '-74.56490'), ('Riverside', 0, '40.03550', '-74.95590'), ('Riverton', 0, '40.01170', '-75.01490'), ('Shamong', 0, '39.77500', '-74.70800'), ('Tabernacle', 0, '39.84300', '-74.71000'), ('Wading River', 0, '39.61530', '-74.50440'), ('Westampton', 0, '40.01360', '-74.81790'), ('Wharton State Forest', 0, '39.73000', '-74.63000'), ('Willingboro', 0, '40.02710', '-74.88740'), ('Wrightstown', 0, '40.02750', '-74.63100')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC007': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Atco', 0, '39.76980', '-74.88740'), ('Audubon', 0, '39.88970', '-75.07280'), ('Barrington', 0, '39.87040', '-75.05300'), ('Bellmawr', 0, '39.86590', '-75.09490'), ('Berlin', 0, '39.79400', '-74.93790'), ('Blackwood', 0, '39.79840', '-75.06290'), ('Camden', 0, '39.93590', '-75.10840'), ('Cherry Hill', 0, '39.90230', '-74.99610'), ('Chesilhurst', 0, '39.73220', '-74.87970'), ('Clementon', 0, '39.80420', '-74.98580'), ('Collingswood', 0, '39.91620', '-75.07500'), ('Gibbsboro', 0, '39.83350', '-74.96640'), ('Glendora', 0, '39.84040', '-75.06910'), ('Gloucester City', 0, '39.89240', '-75.11780'), ('Greentree', 0, '39.90000', '-74.96000'), ('Haddonfield', 0, '39.89500', '-75.03470'), ('Haddon Heights', 0, '39.87870', '-75.06600'), ('Hi-Nella', 0, '39.83520', '-75.02200'), ('Laurel Springs', 0, '39.82010', '-75.00590'), ('Lawnside', 0, '39.86560', '-75.03060'), ('Lindenwold', 0, '39.81580', '-74.99020'), ('Magnolia', 0, '39.85490', '-75.03550'), ('Merchantville', 0, '39.94990', '-75.05060'), ('Mount Ephraim', 0, '39.88100', '-75.09170'), ('Oaklyn', 0, '39.90190', '-75.08080'), ('Pennsauken', 0, '39.96370', '-75.05620'), ('Pine Hill', 0, '39.78660', '-74.98580'), ('Pine Valley', 0, '39.78840', '-74.97240'), ('Runnemede', 0, '39.85140', '-75.07510'), ('Sicklerville', 0, '39.71730', '-74.96930'), ('Somerdale', 0, '39.84530', '-75.02300'), ('Springdale', 0, '39.88000', '-74.97000'), ('Stratford', 0, '39.82820', '-75.01510'), ('Tavistock', 0, '39.87510', '-75.02840'), ('Voorhees', 0, '39.85010', '-74.95790'), ('Woodlynne', 0, '39.91630', '-75.09580')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC009': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Avalon', 0, '39.09170', '-74.73700'), ('Beesleys Point', 0, '39.27840', '-74.63700'), ('Belleplain Forest', 0, '39.26860', '-74.86690'), ('Cape May', 0, '38.94000', '-74.90000'), ('Cape May Court House', 0, '39.07990', '-74.82390'), ('Dennisville', 0, '39.19310', '-74.82560'), ('Eldora', 0, '39.21530', '-74.90640'), ('Erma', 0, '38.99840', '-74.89480'), ('Goshen', 0, '39.14140', '-74.85330'), ('Green Creek', 0, '39.04610', '-74.90170'), ('Marmora', 0, '39.26670', '-74.64530'), ('North Cape May', 0, '38.97630', '-74.95170'), ('North Wildwood', 0, '39.00430', '-74.79980'), ('Ocean City', 0, '39.26960', '-74.60340'), ('Rio Grande', 0, '39.02200', '-74.87770'), ('Sea Isle City', 0, '39.15240', '-74.69780'), ('Seaville', 0, '39.20830', '-74.70440'), ('Stone Harbor', 0, '39.05080', '-74.75830'), ('Strathmere', 0, '39.19610', '-74.65730'), ('Villas', 0, '39.01560', '-74.93670'), ('West Cape May', 0, '38.94140', '-74.93790'), ('West Wildwood', 0, '39.00010', '-74.82430'), ('Whitesboro-Burleigh', 0, '39.04580', '-74.86580'), ('Wildwood', 0, '38.98890', '-74.82030'), ('Wildwood Crest', 0, '38.97240', '-74.83880'), ('Woodbine', 0, '39.22790', '-74.80850')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC011': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bivalve', 0, '39.23420', '-75.03420'), ('Bricksboro', 0, '39.30170', '-74.97900'), ('Bridgeton', 0, '39.42750', '-75.22810'), ('Cedarville', 0, '39.33250', '-75.20000'), ('Cumberland', 0, '39.37040', '-74.94080'), ('Dividing Creek', 0, '39.27030', '-75.10130'), ('Fairton', 0, '39.37790', '-75.21490'), ('Fortesque', 0, '39.23940', '-75.17160'), ('Greenwich', 0, '39.38970', '-75.33890'), ('Laurel Lake', 0, '39.33000', '-75.03000'), ('Leesburg', 0, '39.25790', '-74.98790'), ('Mauricetown', 0, '39.28490', '-74.99390'), ('Millville', 0, '39.39000', '-75.06000'), ('Newport', 0, '39.29660', '-75.17690'), ('Port Elizabeth', 0, '39.31330', '-74.98110'), ('Port Norris', 0, '39.24800', '-75.04110'), ('Rosenhayn', 0, '39.47890', '-75.13650'), ('Seabrook Farms', 0, '39.50100', '-75.21830'), ('Shiloh', 0, '39.45800', '-75.29800'), ('South Vineland', 0, '39.44580', '-75.02920'), ('Vineland', 0, '39.46480', '-74.99740')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC013': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Belleville', 35928, '40.79490', '-74.16270'), ('Bloomfield', 47683, '40.81060', '-74.18690'), ('Caldwell', 7549, '40.83840', '-74.27790'), ('Cedar Grove', 12300, '40.85610', '-74.22950'), ('East Orange', 69824, '40.76590', '-74.21210'), ('Fairfield', 7063, '40.88360', '-74.30630'), ('Glen Ridge', 7271, '40.80310', '-74.20500'), ('Irvington', 60695, '40.72450', '-74.23250'), ('Livingston', 27391, '40.78560', '-74.32950'), ('Maplewood', 23868, '40.73310', '-74.27190'), ('Millburn', 19765, '40.74030', '-74.32450'), ('Montclair', 38977, '40.82450', '-74.21160'), ('Newark', 273546, '40.72410', '-74.17320'), ('North Caldwell', 7375, '40.86340', '-74.25910'), ('Nutley', 27362, '40.81880', '-74.15720'), ('Orange', 32868, '40.76820', '-74.23640'), ('Roseland', 5298, '40.82200', '-74.30840'), ('South Orange', 16964, '40.74900', '-74.26160'), ('Verona', 13533, '40.83230', '-74.24270'), ('West Caldwell', 11233, '40.84990', '-74.29830'), ('West Orange', 44943, '40.79290', '-74.26360')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC013': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Belleville', 35928, '40.79490', '-74.16270'), ('Bloomfield', 47683, '40.81060', '-74.18690'), ('Caldwell', 7549, '40.83840', '-74.27790'), ('Cedar Grove', 12300, '40.85610', '-74.22950'), ('East Orange', 69824, '40.76590', '-74.21210'), ('Fairfield', 7063, '40.88360', '-74.30630'), ('Glen Ridge', 7271, '40.80310', '-74.20500'), ('Irvington', 60695, '40.72450', '-74.23250'), ('Livingston', 27391, '40.78560', '-74.32950'), ('Maplewood', 23868, '40.73310', '-74.27190'), ('Millburn', 19765, '40.74030', '-74.32450'), ('Montclair', 38977, '40.82450', '-74.21160'), ('Newark', 273546, '40.72410', '-74.17320'), ('North Caldwell', 7375, '40.86340', '-74.25910'), ('Nutley', 27362, '40.81880', '-74.15720'), ('Orange', 32868, '40.76820', '-74.23640'), ('Roseland', 5298, '40.82200', '-74.30840'), ('South Orange', 16964, '40.74900', '-74.26160'), ('Verona', 13533, '40.83230', '-74.24270'), ('West Caldwell', 11233, '40.84990', '-74.29830'), ('West Orange', 44943, '40.79290', '-74.26360')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC015': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Beckett', 0, '39.75390', '-75.35790'), ('Clayton', 0, '39.65790', '-75.08790'), ('Deptford', 0, '39.82700', '-75.15500'), ('Franklinville', 0, '39.61730', '-75.07680'), ('Gibbstown', 0, '39.82430', '-75.27980'), ('Glassboro', 0, '39.70150', '-75.11290'), ('Malaga', 0, '39.57290', '-75.05260'), ('Monroe Township', 0, '39.66940', '-74.98360'), ('Mullica Hill', 0, '39.73620', '-75.22460'), ('National Park', 0, '39.86710', '-75.18020'), ('Newfield', 0, '39.54890', '-75.02200'), ('Oak Valley', 0, '39.80590', '-75.15910'), ('Paulsboro', 0, '39.83550', '-75.24180'), ('Pitman', 0, '39.73130', '-75.12950'), ('Swedesboro', 0, '39.74810', '-75.31140'), ('Turnersville', 0, '39.76540', '-75.06210'), ('Victory Lakes', 0, '39.63290', '-74.96650'), ('Wenonah', 0, '39.79170', '-75.14850'), ('West Deptford', 0, '39.83340', '-75.19960'), ('Westville', 0, '39.86800', '-75.12750'), ('Williamstown', 0, '39.68570', '-74.98390'), ('Woodbury', 0, '39.83730', '-75.15290'), ('Woodbury Heights', 0, '39.81700', '-75.15520')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC017': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bayonne', 61842, '40.66500', '-74.11050'), ('East Newark', 2377, '40.75030', '-74.16330'), ('Guttenberg', 10807, '40.79270', '-74.00490'), ('Harrison', 14424, '40.74350', '-74.15340'), ('Hoboken', 38577, '40.74260', '-74.02880'), ('Jersey City', 240055, '40.71130', '-74.06500'), ('Kearny', 40513, '40.75130', '-74.11970'), ('North Bergen', 48414, '40.79260', '-74.02580'), ('Secaucus', 15931, '40.78110', '-74.06480'), ('Union City', 67088, '40.76710', '-74.03250'), ('Weehawken', 12385, '40.76870', '-74.01890'), ('West New York', 45768, '40.78590', '-74.00980')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC017': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bayonne', 61842, '40.66500', '-74.11050'), ('East Newark', 2377, '40.75030', '-74.16330'), ('Guttenberg', 10807, '40.79270', '-74.00490'), ('Harrison', 14424, '40.74350', '-74.15340'), ('Hoboken', 38577, '40.74260', '-74.02880'), ('Jersey City', 240055, '40.71130', '-74.06500'), ('Kearny', 40513, '40.75130', '-74.11970'), ('North Bergen', 48414, '40.79260', '-74.02580'), ('Secaucus', 15931, '40.78110', '-74.06480'), ('Union City', 67088, '40.76710', '-74.03250'), ('Weehawken', 12385, '40.76870', '-74.01890'), ('West New York', 45768, '40.78590', '-74.00980')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC019': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Annandale', 0, '40.64500', '-74.89110'), ('Bloomsbury', 0, '40.65300', '-75.08560'), ('Califon', 0, '40.71920', '-74.83680'), ('Clinton', 0, '40.63530', '-74.91230'), ('Flemington', 0, '40.50910', '-74.86030'), ('Frenchtown', 0, '40.52580', '-75.05630'), ('Glen Gardner', 0, '40.69900', '-74.94120'), ('Hampton', 0, '40.70870', '-74.96780'), ('High Bridge', 0, '40.66840', '-74.89570'), ('Lambertville', 0, '40.36800', '-74.94330'), ('Lebanon', 0, '40.64390', '-74.83510'), ('Milford', 0, '40.56820', '-75.09010'), ('Sand Brook', 0, '40.46920', '-74.91720'), ('Sergeantsville', 0, '40.44580', '-74.94390'), ('Stockton', 0, '40.40540', '-74.97750'), ('White House Station', 0, '40.61620', '-74.77240')], 'partOfState': 'northwest', 'wfo': 'PHI'}, +'NJC021': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Edinburg', 0, '40.25810', '-74.61640'), ('Ewing', 0, '40.26540', '-74.80120'), ('Hightstown', 0, '40.26970', '-74.52410'), ('Hopewell', 0, '40.38900', '-74.76400'), ('Lawrenceville', 0, '40.30140', '-74.73020'), ('Mercerville-Hamilton Square', 0, '40.23070', '-74.67170'), ('Pennington', 0, '40.32500', '-74.79210'), ('Princeton', 0, '40.35220', '-74.65700'), ('Princeton Junction', 0, '40.32030', '-74.62370'), ('Princeton North', 0, '40.36140', '-74.64810'), ('Trenton', 0, '40.22170', '-74.75610'), ('White Horse', 0, '40.19080', '-74.70450'), ('Windsor', 0, '40.24220', '-74.58170'), ('Yardville-Groveville', 0, '40.18120', '-74.66770')], 'partOfState': 'central', 'wfo': 'PHI'}, +'NJC023': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Avenel', 0, '40.58250', '-74.27370'), ('Carteret', 0, '40.58360', '-74.22880'), ('Clearbrook Park', 0, '40.30960', '-74.46500'), ('Colonia', 0, '40.59260', '-74.31580'), ('Concordia', 0, '40.31090', '-74.44860'), ('Dayton', 0, '40.38260', '-74.51030'), ('Dunellen', 0, '40.58940', '-74.46540'), ('East Brunswick', 0, '40.42770', '-74.41650'), ('Edison', 0, '40.52880', '-74.36930'), ('Fords', 0, '40.54210', '-74.31220'), ('Heathcote', 0, '40.38860', '-74.57620'), ('Helmetta', 0, '40.37660', '-74.42440'), ('Highland Park', 0, '40.50030', '-74.42840'), ('Iselin', 0, '40.57020', '-74.31670'), ('Jamesburg', 0, '40.34900', '-74.44020'), ('Kendall Park', 0, '40.41340', '-74.56260'), ('Laurence Harbor', 0, '40.44790', '-74.24950'), ('Madison Park', 0, '40.44620', '-74.29530'), ('Metuchen', 0, '40.54190', '-74.36340'), ('Middlesex', 0, '40.57370', '-74.50210'), ('Milltown', 0, '40.45010', '-74.43470'), ('Monmouth Junction', 0, '40.38000', '-74.54520'), ('New Brunswick', 0, '40.48000', '-74.44000'), ('North Brunswick', 0, '40.44850', '-74.47760'), ('Old Bridge', 0, '40.39290', '-74.33000'), ('Perth Amboy', 0, '40.52020', '-74.27210'), ('Port Reading', 0, '40.56460', '-74.24700'), ('Rossmoor', 0, '40.33650', '-74.47390'), ('Sayreville', 0, '40.46560', '-74.32210'), ('Sewaren', 0, '40.55080', '-74.26090'), ('Society Hill', 0, '40.53400', '-74.45830'), ('South Amboy', 0, '40.48550', '-74.27720'), ('South Brunswick', 0, '40.40000', '-74.54170'), ('South Plainfield', 0, '40.57540', '-74.41530'), ('South River', 0, '40.44530', '-74.37840'), ('Spotswood', 0, '40.39390', '-74.39050'), ('Woodbridge', 0, '40.55470', '-74.28580')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'NJC025': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Adelphia', 0, '40.21810', '-74.25670'), ('Allenhurst', 0, '40.23600', '-74.00250'), ('Allentown', 0, '40.17560', '-74.58690'), ('Asbury Park', 0, '40.22310', '-74.01140'), ('Avon-By-the-sea', 0, '40.19100', '-74.01520'), ('Belmar', 0, '40.18040', '-74.02550'), ('Bradley Beach', 0, '40.20170', '-74.01210'), ('Brielle', 0, '40.10460', '-74.06290'), ('Clarksburg', 0, '40.18860', '-74.44110'), ('Cliffwood Beach', 0, '40.44260', '-74.21800'), ('Collingwood Park', 0, '40.22220', '-74.13420'), ('Cream Ridge', 0, '40.13500', '-74.52440'), ('Deal', 0, '40.24980', '-73.99730'), ('East Freehold', 0, '40.26870', '-74.24040'), ('Eatontown', 0, '40.29150', '-74.05510'), ('Elberon', 0, '40.26920', '-73.99220'), ('Englishtown', 0, '40.29650', '-74.36060'), ('Fair Haven', 0, '40.36050', '-74.03780'), ('Farmingdale', 0, '40.19850', '-74.17140'), ('Freehold', 0, '40.25880', '-74.27560'), ('Freewood Acres', 0, '40.16890', '-74.23830'), ('Highlands', 0, '40.40440', '-73.99080'), ('Holmdel', 0, '40.34500', '-74.18440'), ('Howell', 0, '40.19170', '-74.20000'), ('Imlaystown', 0, '40.16750', '-74.51560'), ('Interlaken', 0, '40.23430', '-74.01590'), ('Keansburg', 0, '40.45000', '-74.13000'), ('Keyport', 0, '40.43200', '-74.20150'), ('Leonardo', 0, '40.41920', '-74.06060'), ('Lincroft', 0, '40.34140', '-74.12520'), ('Little Silver', 0, '40.33500', '-74.03500'), ('Loch Arbour', 0, '40.23180', '-74.00140'), ('Long Branch', 0, '40.29670', '-73.98920'), ('Manalapan', 0, '40.25720', '-74.39610'), ('Manasquan', 0, '40.11280', '-74.03700'), ('Marlboro', 0, '40.31530', '-74.24670'), ('Matawan', 0, '40.41220', '-74.23790'), ('Middletown', 0, '40.39420', '-74.11750'), ('Monmouth Beach', 0, '40.33590', '-73.98640'), ('Morganville', 0, '40.37630', '-74.24470'), ('Neptune City', 0, '40.20060', '-74.03310'), ('North Middletown', 0, '40.43960', '-74.11930'), ('Oakhurst', 0, '40.26170', '-74.02720'), ('Ocean Grove', 0, '40.21180', '-74.00960'), ('Oceanport', 0, '40.31500', '-74.02040'), ('Port Monmouth', 0, '40.43220', '-74.10140'), ('Red Bank', 0, '40.34730', '-74.06750'), ('Robertsville', 0, '40.34030', '-74.29740'), ('Roosevelt', 0, '40.22130', '-74.47420'), ('Rumson', 0, '40.36270', '-74.00390'), ('Sandy Hook', 0, '40.45495', '-73.99701'), ('Sea Girt', 0, '40.12920', '-74.03450'), ('Shark River Hills', 0, '40.19360', '-74.04820'), ('Shrewsbury', 0, '40.32660', '-74.05970'), ('South Belmar', 0, '40.17010', '-74.02620'), ('Spring Lake', 0, '40.15270', '-74.02740'), ('Spring Lake Heights', 0, '40.15220', '-74.04230'), ('Strathmore', 0, '40.40280', '-74.21890'), ('Tinton Falls', 0, '40.27240', '-74.08920'), ('Union Beach', 0, '40.44720', '-74.16910'), ('Wanamassa', 0, '40.23670', '-74.02920'), ('West Belmar', 0, '40.17020', '-74.03720'), ('West Freehold', 0, '40.23300', '-74.29550'), ('West Long Branch', 0, '40.29000', '-74.01830'), ('Yorketown', 0, '40.30780', '-74.33800')], 'partOfState': 'central', 'wfo': 'PHI'}, +'NJC027': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Boonton', 0, '40.90510', '-74.40950'), ('Budd Lake', 0, '40.87330', '-74.73710'), ('Butler', 0, '40.99950', '-74.34630'), ('Chatham', 0, '40.74040', '-74.38540'), ('Chester', 0, '40.78600', '-74.69290'), ('Dover', 0, '40.88590', '-74.55820'), ('East Hanover', 0, '40.81990', '-74.36520'), ('Florham Park', 0, '40.77720', '-74.39030'), ('Green Pond', 0, '41.01720', '-74.47810'), ('Hanover Township', 0, '40.81890', '-74.43050'), ('Kinnelon', 0, '40.99110', '-74.37200'), ('Lake Telemark', 0, '40.96130', '-74.49680'), ('Lincoln Park', 0, '40.92320', '-74.29380'), ('Long Valley', 0, '40.78540', '-74.76840'), ('Madison', 0, '40.75870', '-74.41610'), ('Mendham', 0, '40.77450', '-74.60170'), ('Millington', 0, '40.67720', '-74.51810'), ('Morris Plains', 0, '40.83610', '-74.48140'), ('Morristown', 0, '40.79000', '-74.48000'), ('Mountain Lakes', 0, '40.88730', '-74.44080'), ('Mount Arlington', 0, '40.91440', '-74.63990'), ('Netcong', 0, '40.89750', '-74.70430'), ('Parsippany', 0, '40.85940', '-74.42390'), ('Pequannock Township', 0, '40.96330', '-74.30370'), ('Riverdale', 2498, '40.99520', '-74.31380'), ('Rockaway', 0, '40.90040', '-74.51360'), ('Succasunna', 0, '40.85540', '-74.65290'), ('Victory Lakes', 0, '40.87620', '-74.54430'), ('Wharton', 0, '40.89810', '-74.58010'), ('White Meadow Lake', 0, '40.92350', '-74.51110')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'NJC029': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bamber Lake', 0, '39.89500', '-74.31750'), ('Barnegat', 0, '39.75400', '-74.22170'), ('Barnegat Light', 0, '39.75180', '-74.11120'), ('Bay Head', 0, '40.07020', '-74.04870'), ('Beach Haven', 0, '39.56410', '-74.24530'), ('Beach Haven West', 0, '39.67020', '-74.23340'), ('Beachwood', 0, '39.92740', '-74.20270'), ('Brick Township', 0, '40.05750', '-74.11000'), ('Brookville', 0, '39.78170', '-74.30780'), ('Cassville', 0, '40.10440', '-74.38690'), ('Cedar Glen Lakes', 0, '39.95210', '-74.40020'), ('Crestwood Village', 0, '39.95720', '-74.35510'), ('Forked River', 0, '39.84184', '-74.17198'), ('Gilford Park', 0, '39.95410', '-74.13020'), ('Harvey Cedars', 0, '39.69960', '-74.14210'), ('Holiday City', 0, '39.95960', '-74.27770'), ('Holiday Heights', 0, '39.94580', '-74.25430'), ('Island Heights', 0, '39.94230', '-74.14960'), ('Jackson', 0, '40.08330', '-74.30830'), ('Jacksons Mills', 0, '40.14780', '-74.32440'), ('Lakehurst', 0, '40.01290', '-74.32080'), ('Lakewood', 0, '40.09480', '-74.21190'), ('Lavallette', 0, '39.96910', '-74.07240'), ('Leisure Knoll', 0, '40.01890', '-74.29260'), ('Leisure Village', 0, '40.04490', '-74.18250'), ('Manahawkin', 0, '39.69570', '-74.25390'), ('Mantoloking', 0, '40.04530', '-74.04960'), ('Mystic Island', 0, '39.56560', '-74.38330'), ('New Egypt', 0, '40.06390', '-74.53190'), ('North Beach Haven', 0, '39.60020', '-74.21190'), ('Ocean Acres', 0, '39.74330', '-74.28130'), ('Ocean Gate', 0, '39.92610', '-74.13510'), ('Old Halfway', 0, '39.86080', '-74.43780'), ('Pine Beach', 0, '39.93550', '-74.17010'), ('Pleasant Plains', 0, '39.99700', '-74.21900'), ('Point Pleasant', 0, '40.07840', '-74.07090'), ('Point Pleasant Beach', 0, '40.09000', '-74.05000'), ('Seaside Heights', 0, '39.94310', '-74.07650'), ('Ship Bottom', 0, '39.64510', '-74.18330'), ('Silver Ridge', 0, '39.96100', '-74.23620'), ('Silverton', 0, '40.00790', '-74.12180'), ('Six Flags Theme Park', 0, '40.14000', '-74.43000'), ('South Toms River', 0, '39.94080', '-74.20970'), ('Surf City', 0, '39.66230', '-74.16920'), ('Toms River', 0, '39.95000', '-74.18000'), ('Tuckerton', 0, '39.59780', '-74.32940'), ('Waretown', 0, '39.78970', '-74.19380'), ('Warren Grove', 0, '39.74640', '-74.37080'), ('Whiting', 0, '39.95440', '-74.37890'), ('Woodruff', 0, '40.06030', '-74.46250')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC031': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bloomingdale', 7610, '41.02670', '-74.33450'), ('Clifton', 78672, '40.86400', '-74.15760'), ('Haledon', 8252, '40.93680', '-74.18900'), ('Hawthorne', 18218, '40.95670', '-74.15900'), ('Little Falls', 10855, '40.87550', '-74.21850'), ('North Haledon', 7920, '40.96190', '-74.18630'), ('Passaic', 67861, '40.85730', '-74.12940'), ('Paterson', 149222, '40.91450', '-74.16340'), ('Pompton Lakes', 10640, '41.00300', '-74.28590'), ('Prospect Park', 5779, '40.93710', '-74.17260'), ('Ringwood', 12396, '41.11150', '-74.27480'), ('Totowa', 9892, '40.90480', '-74.22210'), ('Wanaque', 10266, '41.04320', '-74.29060'), ('Wayne', 54069, '40.94590', '-74.24550'), ('West Milford', 26410, '41.10610', '-74.39630'), ('West Paterson', 10987, '40.88920', '-74.19560')], 'partOfState': 'northeast', 'wfo': 'OKXPHI'}, +'NJC033': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Alloway', 0, '39.56330', '-75.34670'), ('Carneys Point', 0, '39.70870', '-75.47240'), ('Centerton', 0, '39.52420', '-75.16720'), ('Elmer', 0, '39.59110', '-75.17380'), ('Hancocks Bridge', 0, '39.50530', '-75.46190'), ('Hope Creek', 0, '39.47210', '-75.53340'), ('Olivet', 0, '39.53970', '-75.17500'), ('Penns Grove', 0, '39.72810', '-75.46800'), ('Pennsville', 0, '39.65540', '-75.51070'), ('Quinton', 0, '39.54550', '-75.41300'), ('Salem', 0, '39.56950', '-75.46760'), ('Woodstown', 0, '39.65100', '-75.32700')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJC035': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Basking Ridge', 0, '40.70610', '-74.54970'), ('Belle Mead', 0, '40.46670', '-74.66110'), ('Bernardsville', 0, '40.73060', '-74.59290'), ('Bound Brook', 0, '40.56750', '-74.53770'), ('Cloverhill', 0, '40.48810', '-74.78250'), ('Far Hills', 0, '40.69040', '-74.62210'), ('Flagtown', 0, '40.51690', '-74.68470'), ('Manville', 0, '40.54160', '-74.58930'), ('Martinsville', 0, '40.60110', '-74.55940'), ('Millstone', 0, '40.49930', '-74.59130'), ('North Plainfield', 0, '40.62120', '-74.44010'), ('Peapack And Gladstone', 0, '40.71660', '-74.65700'), ('Raritan', 0, '40.57200', '-74.64180'), ('Skillman', 0, '40.42000', '-74.71500'), ('Somerset', 0, '40.49760', '-74.48900'), ('Somerville', 0, '40.57000', '-74.61000'), ('South Bound Brook', 0, '40.55400', '-74.52810'), ('Watchung', 0, '40.64390', '-74.43770')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'NJC037': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Andover', 0, '40.98000', '-74.74000'), ('Beemerville', 0, '41.21029', '-74.69137'), ('Branchville', 0, '41.14670', '-74.74960'), ('Crandon Lakes', 0, '41.12420', '-74.84030'), ('Five Points', 0, '41.08610', '-74.85810'), ('Flatbrookville', 0, '41.10030', '-74.96390'), ('Franklin', 0, '41.11050', '-74.58980'), ('Greendell', 0, '40.97390', '-74.82140'), ('Hainesville', 0, '41.25190', '-74.80330'), ('Hamburg', 0, '41.14880', '-74.57470'), ('Highland Lake', 0, '41.17660', '-74.45700'), ('High Point', 0, '41.32060', '-74.66190'), ('Hopatcong', 0, '40.95610', '-74.65770'), ('La Fayette', 0, '41.09729', '-74.68663'), ('Lake Mohawk', 0, '41.01840', '-74.66040'), ('Lake Windsor', 0, '41.16600', '-74.64300'), ('Montague', 0, '41.30310', '-74.79390'), ('Newton', 0, '41.05000', '-74.75000'), ('Ogdensburg', 0, '41.07500', '-74.59790'), ('Stanhope', 0, '40.90280', '-74.70940'), ('Sussex', 0, '41.21000', '-74.61000'), ('Vernon Valley', 0, '41.23680', '-74.48750'), ('Wantage', 0, '41.24400', '-74.55000')], 'partOfState': 'northwest', 'wfo': 'PHI'}, +'NJC039': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Berkeley Heights', 13407, '40.67550', '-74.42510'), ('Clark', 14597, '40.62100', '-74.31150'), ('Cranford', 22578, '40.65620', '-74.30410'), ('Elizabeth', 120568, '40.66640', '-74.19420'), ('Fanwood', 7174, '40.64180', '-74.38570'), ('Garwood', 4153, '40.65120', '-74.32410'), ('Hillside', 21747, '40.69620', '-74.23030'), ('Kenilworth', 7675, '40.67890', '-74.28890'), ('Linden', 39394, '40.62510', '-74.23840'), ('Mountainside', 6602, '40.68060', '-74.36100'), ('New Providence', 11907, '40.70040', '-74.40350'), ('Plainfield', 47829, '40.61530', '-74.41650'), ('Rahway', 26500, '40.60700', '-74.28140'), ('Roselle', 21274, '40.65210', '-74.26080'), ('Roselle Park', 13281, '40.66560', '-74.26710'), ('Scotch Plains', 22732, '40.63310', '-74.37350'), ('Springfield', 14429, '40.69950', '-74.32500'), ('Summit', 21131, '40.71490', '-74.36540'), ('Union', 54405, '40.69530', '-74.26970'), ('Westfield', 29644, '40.65160', '-74.34420')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC039': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Berkeley Heights', 13407, '40.67550', '-74.42510'), ('Clark', 14597, '40.62100', '-74.31150'), ('Cranford', 22578, '40.65620', '-74.30410'), ('Elizabeth', 120568, '40.66640', '-74.19420'), ('Fanwood', 7174, '40.64180', '-74.38570'), ('Garwood', 4153, '40.65120', '-74.32410'), ('Hillside', 21747, '40.69620', '-74.23030'), ('Kenilworth', 7675, '40.67890', '-74.28890'), ('Linden', 39394, '40.62510', '-74.23840'), ('Mountainside', 6602, '40.68060', '-74.36100'), ('New Providence', 11907, '40.70040', '-74.40350'), ('Plainfield', 47829, '40.61530', '-74.41650'), ('Rahway', 26500, '40.60700', '-74.28140'), ('Roselle', 21274, '40.65210', '-74.26080'), ('Roselle Park', 13281, '40.66560', '-74.26710'), ('Scotch Plains', 22732, '40.63310', '-74.37350'), ('Springfield', 14429, '40.69950', '-74.32500'), ('Summit', 21131, '40.71490', '-74.36540'), ('Union', 54405, '40.69530', '-74.26970'), ('Westfield', 29644, '40.65160', '-74.34420')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJC041': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Allamuchy-Panther Valley', 0, '40.91210', '-74.83190'), ('Alpha', 0, '40.65980', '-75.15750'), ('Beattyestown', 0, '40.81920', '-74.85550'), ('Belvidere', 0, '40.82810', '-75.07320'), ('Blairstown', 0, '40.98000', '-74.98000'), ('Brass Castle', 0, '40.76080', '-75.01220'), ('Columbia', 0, '40.92610', '-75.09310'), ('Great Meadows-Vienna', 0, '40.87080', '-74.88980'), ('Hackettstown', 0, '40.85380', '-74.82540'), ('Harmony', 0, '40.74670', '-75.13780'), ('Hope', 0, '40.91110', '-74.96780'), ('Millbrook', 0, '41.07330', '-74.96330'), ('Oxford', 0, '40.81210', '-74.99580'), ('Phillipsburg', 0, '40.68890', '-75.18280'), ('Pleasant Valley', 0, '40.75140', '-75.00860'), ('Roxburg', 0, '40.78000', '-75.10000'), ('Washington', 0, '40.75930', '-74.98290')], 'partOfState': 'northwest', 'wfo': 'PHI'}, +'NMC001': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alameda', 11923, '35.18700', '-106.61800'), ('Albuquerque', 448607, '35.11720', '-106.62460'), ('Canoncito', 474, '35.13700', '-106.37300'), ('Carnuel', 872, '35.06400', '-106.45700'), ('Cedar Crest', 1060, '35.10800', '-106.37200'), ('Cedro', 474, '35.02200', '-106.35300'), ('Chilili', 113, '34.88900', '-106.23200'), ('Escabosa', 474, '34.92500', '-106.28900'), ('Los Ranchos De Albuquerque', 5092, '35.16510', '-106.64900'), ('Miera', 474, '34.96500', '-106.29100'), ('North Valley', 11923, '35.17320', '-106.62270'), ('Pajarito', 39060, '34.98600', '-106.69600'), ('Paradise Hills', 5513, '35.19650', '-106.69430'), ('Ponderosa', 310, '34.98100', '-106.30300'), ('San Antonito', 474, '35.16300', '-106.34700'), ('Sandia Heights', 3519, '35.17690', '-106.49070'), ('Sandia Park', 474, '35.16800', '-106.36500'), ('Sedillo', 474, '35.10000', '-106.29500'), ('South Valley', 39060, '35.01000', '-106.67750'), ('Tijeras', 474, '35.08840', '-106.37490')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC003': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alma', 387, '33.37900', '-108.90300'), ('Apache Creek', 387, '33.83300', '-108.62400'), ('Aragon', 387, '33.88100', '-108.53800'), ('Cruzville', 387, '33.80700', '-108.66500'), ('Datil', 913, '34.14500', '-107.84300'), ('Glenwood', 387, '33.31700', '-108.88300'), ('Luna', 387, '33.81900', '-108.95400'), ('Mogollon', 387, '33.39700', '-108.79400'), ('National Radio Astronomy Obs', 913, '33.87700', '-107.72700'), ('Old Horse Springs', 387, '33.92400', '-108.22700'), ('Omega', 387, '34.32300', '-108.37400'), ('Pietown', 387, '34.29800', '-108.13400'), ('Pleasanton', 387, '33.27200', '-108.87200'), ('Quemado Lake', 387, '34.33400', '-108.49500'), ('Red Hill', 1802, '34.21900', '-108.87200'), ('Reserve', 387, '33.70840', '-108.76120'), ('Salt Lake', 1802, '34.45300', '-108.76900'), ('San Francisco Plaza', 387, '33.69300', '-108.76600')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC005': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bitter Lake Wildlife Refuge', 45293, '33.45900', '-104.40400'), ('Dexter', 1235, '33.19470', '-104.36840'), ('Dunken', 107, '32.81300', '-105.20200'), ('Elk', 749, '32.94300', '-105.33400'), ('Elkins', 183, '33.69400', '-104.05400'), ('Greenfield', 1235, '33.16500', '-104.34900'), ('Hagerman', 1168, '33.11350', '-104.32830'), ('Lake Arthur', 432, '32.99970', '-104.36340'), ('Mesa', 45293, '33.98400', '-104.67700'), ('Midway', 45293, '33.29500', '-104.45000'), ('Roswell', 45293, '33.37110', '-104.52940'), ('Roswell Correctionial', 1235, '33.13300', '-104.53300')], 'partOfState': 'southeast', 'wfo': 'ABQ'}, +'NMC006': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Acoma Pueblo', 1035, '34.89600', '-107.58100'), ('Acomita Lake', 312, '35.07020', '-107.61300'), ('Bibo', 474, '35.17400', '-107.38800'), ('Bluewater Lake', 1891, '35.30000', '-108.08300'), ('Cebolleta', 474, '35.17400', '-107.39600'), ('Cubero', 333, '35.08600', '-107.51800'), ('El Morro', 1891, '35.04400', '-108.32000'), ('Encinal', 200, '35.11700', '-107.46400'), ('Fence Lake', 1252, '34.65300', '-108.67700'), ('Grants', 8806, '35.15340', '-107.83830'), ('Laguna Pueblo', 423, '35.04100', '-107.37300'), ('McCartys', 312, '35.06300', '-107.66900'), ('Mesita', 776, '35.01310', '-107.33070'), ('Milan', 1891, '35.18900', '-107.89200'), ('New Laguna', 423, '35.04100', '-107.42100'), ('North Acomita Villiage', 288, '35.06320', '-107.56540'), ('Ojo Caliente', 6367, '34.91700', '-108.96800'), ('Paguate', 474, '35.13460', '-107.36380'), ('Paraje', 669, '35.04610', '-107.46730'), ('Pine Hill', 116, '35.00000', '-108.40000'), ('San Fidel', 312, '35.08200', '-107.59900'), ('San Mateo', 312, '35.33100', '-107.64300'), ('San Rafael', 8806, '35.11300', '-107.88200'), ('Seama', 333, '35.04740', '-107.52750'), ('Skyline-Ganipa', 1035, '35.03460', '-107.61530')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC007': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abbott', 1285, '36.30600', '-104.25800'), ('Angel Fire', 1048, '36.39060', '-105.27870'), ('Black Lake', 1048, '36.29800', '-105.25800'), ('Cimarron', 917, '36.50990', '-104.91260'), ('Eagle Nest', 306, '36.55300', '-105.26080'), ('Elizabethtown', 306, '36.61900', '-105.28400'), ('Farley', 304, '36.35300', '-104.03900'), ('Maxwell', 247, '36.54050', '-104.54210'), ('Miami', 917, '36.35000', '-104.79300'), ('Philmont Scout Ranch', 917, '36.48300', '-104.93300'), ('Raton', 7282, '36.88570', '-104.44150'), ('Raton Crews Airport', 7282, '36.73300', '-104.50000'), ('Rayado', 917, '36.36900', '-104.92600'), ('Springer', 1285, '36.36620', '-104.59310'), ('Sugarite', 7282, '36.94400', '-104.38100'), ('Ute Park', 306, '36.55800', '-105.11400')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMC009': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bellview', 98, '34.82100', '-103.10700'), ('Broadview', 98, '34.81900', '-103.21300'), ('Cannon AFB', 2557, '34.38040', '-103.31410'), ('Clovis', 32667, '34.41020', '-103.20270'), ('Grady', 98, '34.82200', '-103.31540'), ('Melrose', 736, '34.42920', '-103.62880'), ('Pleasant Hill', 1065, '34.52000', '-103.07300'), ('Portair', 2557, '34.40500', '-103.30100'), ('Ranchvale', 2557, '34.49300', '-103.31800'), ('Saint Vrain', 736, '34.41600', '-103.48900'), ('Texico', 1065, '34.38940', '-103.05170')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMC011': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Fort Sumner', 1249, '34.47810', '-104.23720'), ('Sumner Lake', 86, '34.60300', '-104.38100'), ('Taiban', 72, '34.44400', '-104.00900'), ('Yeso', 1249, '34.43900', '-104.60900')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMC013': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Aguirre Springs', 0, '32.37300', '-106.55970'), ('Anthony', 7904, '32.00540', '-106.59560'), ('Anthony Gap', 0, '32.01060', '-106.52160'), ('Berino', 0, '32.07020', '-106.62010'), ('Chamberino', 0, '32.03980', '-106.68590'), ('Chaparral', 6117, '32.02590', '-106.39950'), ('Corralitos', 0, '32.30430', '-107.00310'), ('Dona Ana', 1379, '32.39130', '-106.81530'), ('Dripping Springs', 0, '32.32330', '-106.58380'), ('East Mesa', 0, '32.38185', '-106.72422'), ('Fairacres', 0, '32.30690', '-106.83960'), ('Garfield', 1673, '32.75690', '-107.26390'), ('Hatch', 1673, '32.66685', '-107.15375'), ('Jornada Range', 0, '32.61580', '-106.74040'), ('Kilbourne Hole', 0, '31.97170', '-106.96360'), ('La Mesa', 2732, '32.12190', '-106.70720'), ('Las Cruces', 74267, '32.31600', '-106.78000'), ('La Union', 605, '31.94994', '-106.66248'), ('Leasburg', 1518, '32.44808', '-106.87934'), ('Mesilla', 2180, '32.26917', '-106.80964'), ('Mesquite', 948, '32.16440', '-106.69610'), ('Nmsu Main Campus', 2732, '32.28090', '-106.74890'), ('Northrup Landing', 0, '32.94320', '-106.41950'), ('Organ', 1323, '32.42550', '-106.60120'), ('Picacho', 0, '32.31450', '-106.86370'), ('Placitas', 0, '32.66420', '-107.16980'), ('Radium Springs', 1518, '32.48755', '-106.92119'), ('Rincon', 220, '32.67398', '-107.06624'), ('Salem', 795, '32.71203', '-107.20940'), ('San Miguel', 0, '32.15416', '-106.73212'), ('Santa Teresa', 2607, '31.85025', '-106.64400'), ('Soledad Canyon', 0, '32.30760', '-106.58560'), ('Sunland Park', 13309, '31.79910', '-106.57720'), ('Talavera', 0, '32.29330', '-106.66580'), ('Vado', 3003, '32.11864', '-106.66215'), ('White Sands Main Post', 1323, '32.38270', '-106.49240')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMC015': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Artesia', 10692, '32.84750', '-104.42970'), ('Atoka', 10692, '32.76940', '-104.38830'), ('Avalon', 1245, '32.49750', '-104.23610'), ('Carlsbad', 25625, '32.40420', '-104.23660'), ('Cottonwood', 432, '32.92970', '-104.38720'), ('Dayton', 10692, '32.73140', '-104.38470'), ('Hope', 107, '32.81730', '-104.73670'), ('Lakewood', 1245, '32.61780', '-104.35390'), ('Loco Hills', 432, '32.81890', '-103.97640'), ('Loving', 1326, '32.28650', '-104.09600'), ('Malaga', 1326, '32.22390', '-104.07190'), ('Otis', 25625, '32.35110', '-104.16800'), ('Queen', 569, '32.19080', '-104.74530'), ('Seven Rivers', 1245, '32.59500', '-104.42110'), ('Whites City', 25625, '32.17560', '-104.37610')], 'partOfState': 'southeast', 'wfo': 'MAF'}, +'NMC017': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Aldo Leopold Vista', 0, '33.18530', '-108.82880'), ('Arenas Valley', 0, '32.79400', '-108.18420'), ('Bayard', 2534, '32.75758', '-108.13890'), ('Black Canyon Campgrounds', 0, '33.18490', '-108.03350'), ('Buckhorn', 143, '33.03690', '-108.70800'), ('Camp Thunderbird', 0, '32.96290', '-108.03890'), ('Cherry Creek Campground', 0, '32.90780', '-108.22520'), ('City Of Rocks State Park', 0, '32.59130', '-107.97470'), ('Cliff', 10545, '32.96220', '-108.61010'), ('Cobre', 0, '32.78060', '-108.11200'), ('Copperas Vista', 0, '33.11970', '-108.20030'), ('Faywood', 0, '32.62630', '-107.87010'), ('Fierro', 0, '32.84530', '-108.07750'), ('Fort Bayard', 1944, '32.79600', '-108.14860'), ('Gila', 10545, '32.96580', '-108.57610'), ('Gila Hot Springs', 10545, '33.19580', '-108.20640'), ('Gila Riparian Preserve', 0, '33.02300', '-108.54500'), ('Hachita', 3379, '31.91810', '-108.31970'), ('Hanover', 0, '32.81330', '-108.09060'), ('Hurley', 1464, '32.69800', '-108.12840'), ('Iron Creek Campground', 0, '32.90840', '-107.80140'), ('Lake Roberts', 10545, '33.03480', '-108.16680'), ('Little Walnut Village', 0, '32.83530', '-108.27450'), ('Mangas Springs', 0, '32.84000', '-108.51000'), ('McMillan Campground', 0, '32.92590', '-108.21040'), ('Mimbres', 2534, '32.85610', '-107.97920'), ('Mule Creek', 2840, '33.12190', '-108.95560'), ('North Hurley', 0, '32.72000', '-108.13000'), ('Pinos Altos', 10545, '32.86610', '-108.22140'), ('Redrock', 143, '32.68610', '-108.73750'), ('Riverside', 0, '32.92880', '-108.59220'), ('Rocky Canyon Campground', 0, '33.09680', '-108.01330'), ('San Juan', 0, '32.76180', '-107.90620'), ('San Lorenzo', 2534, '32.81000', '-107.91940'), ('Santa Clara', 1944, '32.77530', '-108.15420'), ('Sapillo Campground', 0, '33.01410', '-108.12090'), ('Separ', 0, '32.20080', '-108.42170'), ('Sherman', 0, '32.74560', '-107.88740'), ('Silver City', 10545, '32.78290', '-108.26680'), ('Tyrone', 10545, '32.70980', '-108.30190'), ('White Signal', 0, '32.55580', '-108.36560')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMC019': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Anton Chico', 14565, '35.20000', '-105.14200'), ('Colonias', 2744, '35.11000', '-104.84700'), ('Cuervo', 2744, '35.03100', '-104.40800'), ('Dilia', 14565, '35.19300', '-105.06300'), ('Milagro', 539, '34.93800', '-105.23900'), ('Newkirk', 2744, '35.06800', '-104.26400'), ('Pastura', 2744, '34.78300', '-104.94400'), ('Pintada', 539, '34.88200', '-105.07200'), ('Puerto De Luna', 2744, '34.83200', '-104.62100'), ('San Ignacio', 2744, '34.91300', '-104.94500'), ('Santa Rosa', 2744, '34.94340', '-104.67670'), ('Santa Rosa Lake State Park', 2744, '35.03300', '-104.68300'), ('Vaughn', 539, '34.60660', '-105.21230')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMC021': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bueyeros', 120, '35.97900', '-103.68700'), ('Chicosa Lake State', 304, '36.05000', '-104.16700'), ('Mills', 304, '36.08500', '-104.25500'), ('Mosquero', 120, '35.77450', '-103.95430'), ('Rosebud', 1094, '35.84100', '-103.44500'), ('Roy', 304, '35.94540', '-104.19630'), ('Solano', 120, '35.84800', '-104.06700'), ('Yates', 304, '36.13000', '-103.90100')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMC023': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alamo Hueco', 0, '31.44000', '-108.42000'), ('Animas', 3379, '31.95065', '-108.80695'), ('Antelope Wells', 12822, '31.35330', '-108.53330'), ('Big Hatchet Refuge', 0, '31.72070', '-108.42480'), ('Cloverdale', 0, '31.41690', '-108.92920'), ('Cotton City', 0, '32.08830', '-108.87860'), ('Geronimo Campground', 0, '31.51720', '-108.99370'), ('Granite Gap', 0, '32.08140', '-108.98410'), ('Lordsburg', 3379, '32.34330', '-108.70200'), ('Playas', 0, '31.91430', '-108.53420'), ('Road Forks', 3379, '32.22320', '-108.95350'), ('Rodeo', 3379, '31.83530', '-109.03060'), ('Shakespeare', 0, '32.32000', '-108.73000'), ('Steins', 0, '32.22850', '-108.99040'), ('Virden', 143, '32.68860', '-109.00200'), ('Windmill', 0, '31.97790', '-108.62510')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMC025': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bennett', 1996, '32.06770', '-103.21060'), ('Buckeye', 9471, '32.80190', '-103.50530'), ('Caprock', 683, '33.39190', '-103.71000'), ('Crossroads', 683, '33.51220', '-103.33920'), ('Eunice', 2562, '32.44250', '-103.19320'), ('Gladiola', 683, '33.25720', '-103.17940'), ('Halfway', 1326, '32.55170', '-103.73500'), ('Hobbs', 28657, '32.73430', '-103.16280'), ('Humble City', 28657, '32.79500', '-103.21860'), ('Jal', 1996, '32.11350', '-103.18940'), ('Knowles', 28657, '32.84020', '-103.12720'), ('Lovington', 9471, '32.94530', '-103.35030'), ('Maljamar', 9471, '32.85610', '-103.76220'), ('McDonald', 683, '33.14060', '-103.31690'), ('Monument', 28657, '32.62390', '-103.26390'), ('Nadine', 28657, '32.62390', '-103.12690'), ('Oil Center', 2562, '32.49690', '-103.26080'), ('Tatum', 683, '33.25530', '-103.31530')], 'partOfState': 'southeast', 'wfo': 'MAF'}, +'NMC027': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alto', 7698, '33.39900', '-105.68000'), ('Ancho', 1036, '33.93800', '-105.73900'), ('Angus', 1443, '33.51700', '-105.63300'), ('Arabela', 1443, '33.58700', '-105.17300'), ('Bonito Lake', 7698, '33.45100', '-105.70800'), ('Capitan', 1443, '33.54040', '-105.59390'), ('Carrizozo', 1036, '33.64380', '-105.88330'), ('Corona', 165, '34.24970', '-105.59670'), ('Encinoso', 1443, '33.68600', '-105.48300'), ('Fort Stanton', 1443, '33.49600', '-105.52300'), ('Glencoe', 1824, '33.40900', '-105.44800'), ('Hollywood', 7698, '33.32300', '-105.63400'), ('Hondo', 1824, '33.38800', '-105.27000'), ('Jicarilla', 1036, '33.86900', '-105.66300'), ('Lincoln', 1443, '33.49200', '-105.38300'), ('Nogal', 1443, '33.55800', '-105.70700'), ('Oscuro', 1036, '33.48400', '-106.05400'), ('Picacho', 1824, '33.35200', '-105.14400'), ('Ruidoso', 7698, '33.36600', '-105.64250'), ('Ruidoso Downs', 1824, '33.33160', '-105.60370'), ('San Patricio', 1824, '33.40900', '-105.32600'), ('Sunset', 1824, '33.33900', '-105.07500'), ('White Oaks', 1036, '33.74800', '-105.73600')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC028': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bandelier National', 6045, '35.78300', '-106.26700'), ('Los Alamos', 11909, '35.89380', '-106.28390'), ('White Rock', 6045, '35.80380', '-106.21040')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC029': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Akela', 0, '32.23860', '-107.40950'), ('Columbus', 1765, '31.82890', '-107.64080'), ('Deming', 14116, '32.26170', '-107.75040'), ('Gage', 14116, '32.22940', '-108.08580'), ('Hermanas', 0, '31.85110', '-107.95260'), ('Nutt', 0, '32.57550', '-107.45140'), ('Rock Hound State Park', 0, '32.18740', '-107.61290'), ('Spring Canyon State Park', 0, '32.14560', '-107.62100'), ('Sunshine', 0, '32.13830', '-107.76770'), ('Uvas Valley', 1673, '32.52550', '-107.37580')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMC031': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Allison', 20209, '35.52400', '-108.78400'), ('Black Rock', 1252, '35.08600', '-108.79000'), ('Chi Chil Tah', 6367, '35.24900', '-108.90700'), ('Church Rock', 1077, '35.53400', '-108.59900'), ('Coolidge', 2630, '35.44700', '-108.36300'), ('Coyote Canyon', 373, '35.77500', '-108.62000'), ('Crownpoint', 2630, '35.68810', '-108.14610'), ('Fort Wingate', 20209, '35.46800', '-108.54100'), ('Gallup', 20209, '35.52040', '-108.73540'), ('Gamerco', 20209, '35.57200', '-108.76500'), ('Manuelito', 261, '35.42200', '-108.99300'), ('Mariano Lake', 2630, '35.57800', '-108.32100'), ('McGaffey', 20209, '35.37500', '-108.51500'), ('Mentmore', 20209, '35.51400', '-108.84500'), ('Mexican Springs', 455, '35.78750', '-108.80730'), ('Navajo', 2097, '35.89630', '-109.03140'), ('Ojo Encino', 590, '35.95600', '-107.34700'), ('Pescado', 1252, '35.10600', '-108.58000'), ('Pinedale', 20209, '35.60400', '-108.44600'), ('Prewitt', 1891, '35.36300', '-108.04300'), ('Pueblo Pintado', 2630, '35.97700', '-107.67300'), ('Ramah', 407, '35.13300', '-108.49100'), ('Red Rock State Park', 20209, '35.45400', '-108.75500'), ('Standing Rock', 2630, '35.80300', '-108.36000'), ('Thoreau', 1863, '35.40300', '-108.22300'), ('Tohatchi', 1037, '35.85020', '-108.75010'), ('Tse Bonito', 261, '35.67500', '-109.04100'), ('Twin Lakes', 1069, '35.70900', '-108.77400'), ('Upper Nutria', 1252, '35.27000', '-108.57000'), ('Whitewater', 1252, '35.26700', '-108.76700'), ('Yah-Ta-hey', 580, '35.62800', '-108.78000'), ('Zuni Pueblo', 6367, '35.07250', '-108.85000')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC033': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Buena Vista', 14565, '35.91400', '-105.24900'), ('Canon', 14565, '35.94300', '-105.36900'), ('Chacon', 1048, '36.14400', '-105.36700'), ('Cleveland', 242, '35.99300', '-105.37000'), ('El Turquillo', 1048, '36.08000', '-105.25100'), ('Gascon', 14565, '35.88700', '-105.44600'), ('Golondrinas', 14565, '35.88900', '-105.18600'), ('Guadalupita', 1048, '36.13800', '-105.23800'), ('Holman', 242, '36.03800', '-105.38300'), ('La Cueva', 14565, '35.94200', '-105.24900'), ('Ledoux', 14565, '35.92400', '-105.36100'), ('Luceros', 1048, '36.01600', '-105.22800'), ('Monte Aplanado', 572, '35.95500', '-105.39400'), ('Mora', 14565, '35.97400', '-105.32900'), ('Ocate', 1048, '36.17600', '-105.04800'), ('Ojo Feliz', 1048, '36.05800', '-105.11800'), ('Rainsville', 14565, '35.97900', '-105.20900'), ('Shoemaker', 369, '35.81600', '-104.87600'), ('South Carmen', 14565, '35.89400', '-105.33600'), ('Valmora', 369, '35.81600', '-104.92300'), ('Wagon Mound', 369, '36.00290', '-104.71430'), ('Watrous', 14565, '35.79100', '-104.98100')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMC035': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alamogordo', 35582, '32.90524', '-105.95400'), ('Apache Summit', 0, '33.22470', '-105.68990'), ('Bent', 0, '33.15330', '-105.88280'), ('Bluff Springs', 0, '32.83120', '-105.73750'), ('Boles Acres', 1172, '32.80890', '-105.98630'), ('Brokeoff Mountains Wsa', 0, '32.12677', '-104.92905'), ('Burro Flats', 0, '33.00320', '-105.86860'), ('Cloudcroft', 749, '32.95300', '-105.73940'), ('Cornudas Mountains', 0, '32.07930', '-105.51980'), ('Crow Flats', 0, '32.31000', '-105.11000'), ('Elk Silver', 0, '33.05350', '-105.55890'), ('High Rolls', 749, '32.94780', '-105.83840'), ('Holloman AFB', 2076, '32.85120', '-106.10620'), ('Lake Mescalero', 0, '33.29400', '-105.68900'), ('La Luz', 1615, '32.97809', '-105.94257'), ('Mayhill', 749, '32.88940', '-105.47750'), ('McGregor Range Base', 0, '32.07810', '-106.17690'), ('Mescalero', 1233, '33.15537', '-105.77905'), ('Mountain Park', 0, '32.95300', '-105.82240'), ('Oliver Lee State Park', 0, '32.74820', '-105.91430'), ('Orogrande', 1323, '32.37110', '-106.08390'), ('Otero Mesa', 0, '32.18000', '-105.80000'), ('Pinon', 749, '32.61810', '-105.39390'), ('Sacramento', 749, '32.79250', '-105.56000'), ('Silver Lake', 0, '33.02040', '-105.63370'), ('Sixteen Springs', 0, '32.99290', '-105.55060'), ('Sunspot', 0, '32.79090', '-105.81830'), ('Three Rivers', 2864, '33.32140', '-106.07500'), ('Timberon', 309, '32.63830', '-105.69030'), ('Tularosa', 2864, '33.07590', '-106.01970'), ('Weed', 749, '32.80250', '-105.51670'), ('White Sands National Monument', 0, '32.81210', '-106.26390')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMC037': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Forrest', 98, '34.79500', '-103.60100'), ('House', 72, '34.64800', '-103.90330'), ('Logan', 1094, '35.36100', '-103.44340'), ('McAlister', 72, '34.69200', '-103.77600'), ('Montoya', 5989, '35.10000', '-104.06300'), ('Nara Visa', 1094, '35.60800', '-103.09900'), ('Quay', 5989, '34.93400', '-103.76000'), ('Ragland', 72, '34.82300', '-103.74200'), ('San Jon', 306, '35.11300', '-103.32750'), ('Tucumcari', 5989, '35.16740', '-103.72750'), ('Wheatland', 98, '34.90900', '-103.35400')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMC039': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abiquiu', 377, '36.20700', '-106.31800'), ('Alcalde', 377, '36.08470', '-106.05840'), ('Brazos', 1199, '36.75100', '-106.56100'), ('Buena Vista', 377, '36.20300', '-106.33800'), ('Canjilon', 1199, '36.47900', '-106.43700'), ('Canoncito', 301, '36.18100', '-105.83200'), ('Canones', 11909, '36.18800', '-106.43900'), ('Canon Plaza', 377, '36.55000', '-106.16700'), ('Cebolla', 1199, '36.53800', '-106.48600'), ('Chama', 1199, '36.89350', '-106.58260'), ('Chili', 377, '36.10500', '-106.14900'), ('Cordova', 2924, '36.00700', '-105.86000'), ('Coyote', 590, '36.16800', '-106.61600'), ('Dixon', 301, '36.19900', '-105.88800'), ('Dulce', 2623, '36.93340', '-106.99600'), ('El Rito', 377, '36.34300', '-106.18800'), ('El Vado', 1199, '36.59400', '-106.72800'), ('Embudo', 377, '36.20800', '-105.96100'), ('Ensenada', 1199, '36.72700', '-106.53300'), ('Espanola', 9688, '36.00340', '-106.06930'), ('Gallina', 590, '36.23300', '-106.85000'), ('Ghost Ranch', 11909, '36.33000', '-106.47500'), ('Hernandez', 592, '36.06300', '-106.11900'), ('La Madera', 377, '36.38700', '-106.04100'), ('La Puente', 1199, '36.70000', '-106.60000'), ('Las Placitas', 377, '36.32300', '-106.16200'), ('Las Tablas', 1864, '36.55600', '-106.02900'), ('La Villita', 377, '36.10300', '-106.04800'), ('Lindrith', 590, '36.30400', '-107.04400'), ('Los Ojos', 1199, '36.72900', '-106.56900'), ('Los Pinos', 0, '36.98800', '-106.06400'), ('Lumberton', 2623, '36.93000', '-106.93600'), ('Lyden', 377, '36.14600', '-106.00500'), ('Medanales', 377, '36.17600', '-106.18300'), ('Monero', 0, '36.90200', '-106.85500'), ('Ojo Sarco', 301, '36.12300', '-105.78300'), ('Petaca', 301, '36.50800', '-106.01000'), ('Rinconada', 301, '36.21800', '-105.87300'), ('Rutheron', 1199, '36.71900', '-106.61100'), ('San Jose', 592, '36.03900', '-106.09800'), ('San Juan Pueblo', 592, '36.05190', '-106.07000'), ('San Miguel', 0, '36.96100', '-106.16000'), ('Santa Clara Pueblo', 980, '35.97180', '-106.09260'), ('Tierra Amarilla', 1199, '36.70000', '-106.54900'), ('Truchas', 2924, '36.04400', '-105.81100'), ('Vallecitos', 377, '36.49500', '-106.11600'), ('Velarde', 377, '36.15900', '-105.97400'), ('Youngsville', 11909, '36.18800', '-106.55600')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC041': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Arch', 11131, '34.11300', '-103.14200'), ('Causey', 52, '33.86520', '-103.11680'), ('Dora', 130, '33.93320', '-103.33530'), ('Elida', 183, '33.94420', '-103.65460'), ('Floyd', 78, '34.21470', '-103.54890'), ('Kenna', 183, '33.84200', '-103.77100'), ('Lingo', 52, '33.78800', '-103.11400'), ('Milnesand', 130, '33.64300', '-103.33900'), ('Pep', 130, '33.83600', '-103.33500'), ('Portales', 11131, '34.18110', '-103.34530'), ('Rogers', 130, '33.98200', '-103.23000'), ('Tolar', 72, '34.45100', '-103.93100')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMC043': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Algodones', 688, '35.38100', '-106.47900'), ('Bernalillo', 6611, '35.31600', '-106.55570'), ('Canon', 1953, '35.65700', '-106.73500'), ('Canones', 1953, '35.67400', '-106.75200'), ('Cochiti Lake', 507, '35.64800', '-106.33700'), ('Cochiti Pueblo', 507, '35.60800', '-106.34700'), ('Corrales', 7334, '35.23500', '-106.62000'), ('Counselors', 590, '36.20900', '-107.45700'), ('Cuba', 590, '36.02250', '-106.95420'), ('Domingo', 2550, '35.51100', '-106.31900'), ('Frijoles', 6045, '35.77900', '-106.27100'), ('Jemez Pueblo', 1953, '35.61630', '-106.72620'), ('Jemez Springs', 375, '35.77370', '-106.68840'), ('La Jara', 209, '36.08800', '-106.97400'), ('Marquez', 474, '35.31400', '-107.30200'), ('Pena Blanca', 661, '35.57140', '-106.33620'), ('Placitas', 3452, '35.30700', '-106.42400'), ('Regina', 99, '36.18400', '-106.95600'), ('Rio Rancho', 32505, '35.27340', '-106.66040'), ('Sandia Pueblo', 344, '35.25600', '-106.57100'), ('San Felipe Pueblo', 2080, '35.43430', '-106.42840'), ('Santa Ana Pueblo', 479, '35.35250', '-106.51850'), ('Santo Domingo Pueblo', 2550, '35.51590', '-106.36580'), ('San Ysidro', 238, '35.55650', '-106.77190'), ('Torreon Navajo Mission', 297, '35.79900', '-107.18100'), ('Vallecitos', 1953, '35.66700', '-106.66700'), ('Zia Pueblo', 646, '35.51390', '-106.72540')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC045': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Archuleta', 6417, '36.79400', '-107.70800'), ('Aztec', 6378, '36.82840', '-108.00460'), ('Blanco Trading Post', 6417, '36.36700', '-107.80000'), ('Bloomfield', 6417, '36.71170', '-107.97740'), ('Burnham', 387, '36.36700', '-108.51700'), ('Cedar Hill', 0, '36.93700', '-107.89000'), ('Chaco Canyon', 2630, '36.06700', '-107.96700'), ('Crystal', 347, '36.04600', '-108.96600'), ('El Huerfano Trading Post', 6417, '36.41700', '-107.83300'), ('Farmington', 37844, '36.75470', '-108.18560'), ('Flora Vista', 1383, '36.80210', '-108.08200'), ('Fruitland', 6190, '36.73900', '-108.39500'), ('Kirtland', 6190, '36.73950', '-108.34310'), ('Lake Valley', 2630, '36.09200', '-108.15700'), ('La Plata', 1383, '36.92900', '-108.19000'), ('Nageezi', 296, '36.26700', '-107.74100'), ('Naschitti', 360, '36.06220', '-108.68100'), ('Navajo Dam', 0, '36.80000', '-107.61200'), ('Newcomb', 387, '36.28330', '-108.70680'), ('Rattlesnake', 8156, '36.75500', '-108.80100'), ('Sanostee', 429, '36.43480', '-108.87270'), ('Sheep Springs', 360, '36.14300', '-108.70700'), ('Shiprock', 8156, '36.79200', '-108.69600'), ('Toadlena', 387, '36.23700', '-108.89200'), ('Tocito', 429, '36.39900', '-108.78100'), ('Turley', 6417, '36.75300', '-107.76400'), ('Washington Pass', 360, '36.07600', '-108.85800')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC047': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bell Ranch', 120, '35.53000', '-104.09400'), ('Chapelle', 14565, '35.38900', '-105.29300'), ('Conchas', 120, '35.40300', '-104.18900'), ('Cowles', 1441, '35.81200', '-105.65900'), ('El Porvenir', 14565, '35.69700', '-105.38200'), ('Gallinas', 14565, '35.67900', '-105.35300'), ('Las Vegas', 14565, '35.59920', '-105.21960'), ('Los Montoyas', 14565, '35.41900', '-105.20700'), ('Lower Colonias', 1441, '35.54200', '-105.58300'), ('Maes', 369, '35.68300', '-104.60000'), ('Manuelitas', 14565, '35.80100', '-105.27800'), ('Mineral Hill', 14565, '35.61000', '-105.40100'), ('Montezuma', 14565, '35.65200', '-105.27600'), ('North San Ysidro', 1441, '35.46900', '-105.55300'), ('Ojitos Frios', 14565, '35.51700', '-105.31700'), ('Pecos', 1441, '35.57500', '-105.67870'), ('Ribera', 1441, '35.37400', '-105.44800'), ('Rociada', 14565, '35.83200', '-105.42000'), ('Romeroville', 14565, '35.52300', '-105.24400'), ('Rowe', 1441, '35.49200', '-105.67500'), ('San Antonio', 14565, '35.62900', '-105.24500'), ('San Augustin', 14565, '35.45800', '-105.14500'), ('San Geronimo', 14565, '35.58000', '-105.39500'), ('San Ignacio', 14565, '35.77100', '-105.35400'), ('San Jose', 1441, '35.39700', '-105.47400'), ('San Juan', 14565, '35.14600', '-105.36500'), ('San Miguel', 1441, '35.36400', '-105.45000'), ('San Pablo', 14565, '35.54700', '-105.39900'), ('Sapello', 14565, '35.77300', '-105.25300'), ('Sena', 14565, '35.29800', '-105.39200'), ('South San Ysidro', 1441, '35.45000', '-105.57700'), ('Tecolote', 14565, '35.46000', '-105.28000'), ('Tecolotito', 14565, '35.23400', '-105.15900'), ('Tererro', 1441, '35.74200', '-105.67400'), ('Tierra Monte', 14565, '35.85900', '-105.34700'), ('Trementina', 2744, '35.47000', '-104.52700'), ('Trujillo', 369, '35.53500', '-104.69100'), ('Upper Colonias', 1441, '35.57600', '-105.58400'), ('Variadero', 2744, '35.38800', '-104.45900'), ('Villanueva', 14565, '35.26700', '-105.36000')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMC049': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Agua Fria', 2051, '35.64770', '-106.02150'), ('Chamita', 113, '35.07000', '-106.09600'), ('Chimayo', 2924, '35.99880', '-105.92850'), ('Chupadero', 318, '35.82300', '-105.91600'), ('Cundiyo', 95, '35.95900', '-105.89600'), ('Cuyamungue', 421, '35.86980', '-106.00850'), ('Edgewood', 113, '35.08390', '-106.17490'), ('El Rancho', 817, '35.88900', '-106.07900'), ('Gallisteo', 5799, '35.39600', '-105.94600'), ('Glorieta', 859, '35.58300', '-105.76900'), ('Golden', 113, '35.26700', '-106.21300'), ('Jaconita', 343, '35.89250', '-106.03480'), ('La Bajada', 661, '35.55600', '-106.24000'), ('La Cienega', 3007, '35.57650', '-106.11040'), ('Lamy', 137, '35.48100', '-105.87900'), ('Los Cerrillos', 229, '35.43900', '-106.12300'), ('Madrid', 149, '35.40700', '-106.15200'), ('Nambe', 1246, '35.89300', '-105.98200'), ('Nambe Pueblo', 1246, '35.88800', '-105.96400'), ('Pojoaque', 343, '35.89360', '-106.02300'), ('Pojoaque Pueblo', 1037, '35.89400', '-106.02100'), ('San Ildefonso Pueb', 458, '35.89810', '-106.12750'), ('Santa Cruz', 423, '35.98550', '-106.01610'), ('Santa Fe', 62203, '35.67850', '-105.95410'), ('Stanley', 1765, '35.14800', '-105.97600'), ('Tesuque', 909, '35.76660', '-105.92330')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC051': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alamosa Canyon', 0, '33.31000', '-107.29150'), ('Arrey', 1673, '32.84860', '-107.31860'), ('Caballo', 527, '32.97560', '-107.30720'), ('Caballo Lake State Park', 0, '32.90780', '-107.31000'), ('Chloride', 0, '33.33860', '-107.67920'), ('Cuchillo', 527, '33.23590', '-107.36040'), ('Derry', 1673, '32.78810', '-107.28170'), ('Elephant Butte', 7289, '33.18730', '-107.22130'), ('Engle', 0, '33.17660', '-107.03110'), ('Hillsboro', 527, '32.92220', '-107.56640'), ('Kingston', 2534, '32.91690', '-107.70500'), ('Lake Valley', 0, '32.71780', '-107.56860'), ('Las Palomas', 0, '33.05930', '-107.30000'), ('Monticello', 527, '33.39690', '-107.45000'), ('North Monticello Point', 0, '33.31541', '-107.20062'), ('Placitas', 0, '33.37650', '-107.43220'), ('Poverty Creek', 0, '33.47410', '-107.79790'), ('Rock House', 0, '33.38280', '-107.16850'), ('Truth Or Consequences', 7289, '33.13560', '-107.24810'), ('Upham', 0, '32.88760', '-107.00070'), ('Williamsburg', 527, '33.11610', '-107.29400'), ('Winston', 527, '33.35300', '-107.64940')], 'partOfState': 'north central', 'wfo': 'EPZ'}, +'NMC053': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abeytas', 6901, '34.46800', '-106.81100'), ('Bernardo', 6901, '34.41900', '-106.83300'), ('Bingham', 1036, '33.88900', '-106.37200'), ('Bosque Del Apache', 8877, '33.80400', '-106.89100'), ('Chamizal', 8877, '34.21800', '-106.91300'), ('Claunch', 165, '34.14200', '-105.99400'), ('Contreras', 6901, '34.38300', '-106.81300'), ('Escondida', 8877, '34.10100', '-106.89600'), ('Laborcita', 8877, '33.94600', '-106.86800'), ('La Joya', 8877, '34.34600', '-106.84500'), ('Las Nutrias', 4213, '34.47700', '-106.77000'), ('Lemitar', 8877, '34.16000', '-106.91000'), ('Luis Lopez', 8877, '33.98900', '-106.88500'), ('Magdalena', 913, '34.11040', '-107.23450'), ('Sabinal', 6901, '34.49400', '-106.80700'), ('San Acacia', 8877, '34.25500', '-106.89900'), ('San Antonio', 8877, '33.91800', '-106.86500'), ('Socorro', 8877, '34.05510', '-106.90420'), ('Veguita', 4213, '34.51600', '-106.76700')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC055': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Amalia', 0, '36.94200', '-105.45400'), ('Arroyo Hondo', 1264, '36.53600', '-105.66900'), ('Arroyo Seco', 1264, '36.51700', '-105.56900'), ('Cerro', 1864, '36.75400', '-105.61200'), ('Chamisal', 301, '36.17670', '-105.74900'), ('Costilla', 0, '36.97600', '-105.53100'), ('El Padro', 1264, '36.43200', '-105.57400'), ('Lama', 1864, '36.65000', '-105.61800'), ('Llano', 572, '36.14000', '-105.68100'), ('Llano Largo', 572, '36.14100', '-105.65900'), ('Los Cordovas', 2390, '36.38700', '-105.63700'), ('Ojo Caliente', 377, '36.30300', '-106.04600'), ('Penasco', 572, '36.17120', '-105.69190'), ('Picuris Pueblo', 86, '36.20100', '-105.70900'), ('Pilar', 301, '36.27000', '-105.78800'), ('Questa', 1864, '36.71090', '-105.59270'), ('Ranchos De Taos', 2390, '36.36290', '-105.60330'), ('Red River', 484, '36.70750', '-105.40670'), ('Rio Lucio', 379, '36.19600', '-105.72500'), ('Rodarte', 572, '36.15200', '-105.67200'), ('San Cristobal', 1864, '36.59600', '-105.63900'), ('Shady Brook', 4700, '36.37000', '-105.46700'), ('Sunshine Valley', 1864, '36.84200', '-105.65800'), ('Talpa', 2390, '36.34100', '-105.59600'), ('Taos', 4700, '36.38620', '-105.57720'), ('Taos Pueblo', 1264, '36.46930', '-105.55950'), ('Tres Piedras', 1864, '36.64700', '-105.96700'), ('Tres Ritos', 242, '36.13100', '-105.51500'), ('Vadito', 242, '36.19110', '-105.67710'), ('Valdez', 1264, '36.53400', '-105.58300')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC057': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abo', 1116, '34.45600', '-106.33300'), ('Cedarvale', 165, '34.37100', '-105.70100'), ('Clines Corners', 1765, '35.00900', '-105.66900'), ('Duran', 94, '34.46700', '-105.39600'), ('Encino', 94, '34.65100', '-105.45800'), ('Estancia', 1584, '34.76030', '-106.06020'), ('Gran Quivira', 1116, '34.26400', '-106.10100'), ('Manzano', 54, '34.64700', '-106.34400'), ('McIntosh', 1584, '34.86500', '-106.05100'), ('Moriarty', 1765, '35.00140', '-106.04370'), ('Mountainair', 1116, '34.52080', '-106.24290'), ('Tajique', 148, '34.75200', '-106.28700'), ('Torreon', 297, '34.72200', '-106.29800'), ('Willard', 240, '34.59440', '-106.03370')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMC059': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Amistad', 425, '35.91900', '-103.15300'), ('Capulin', 75, '36.74100', '-103.99300'), ('Clayton', 2524, '36.45070', '-103.17510'), ('Des Moines', 177, '36.76130', '-103.83330'), ('Folsom', 75, '36.84810', '-103.91770'), ('Gladstone', 304, '36.30500', '-103.97300'), ('Grenville', 25, '36.59290', '-103.61270'), ('Hayden', 425, '35.96800', '-103.27100'), ('Mount Dora', 25, '36.51900', '-103.48900'), ('Sedan', 425, '36.14400', '-103.13000'), ('Seneca', 2524, '36.62800', '-103.12600')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMC061': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Adelino', 2211, '34.71600', '-106.73100'), ('Belen', 6901, '34.65870', '-106.77900'), ('Bosque Farms', 3931, '34.85480', '-106.70090'), ('Isleta Pueblo', 1703, '34.88220', '-106.68340'), ('Jarales', 1434, '34.61300', '-106.76300'), ('Los Chavez', 3872, '34.73000', '-106.76080'), ('Los Lunas', 10034, '34.81330', '-106.73810'), ('Los Trujillos-Gaba', 2166, '34.66130', '-106.75520'), ('Meadow Lake', 4491, '34.80200', '-106.59070'), ('Peralta', 3750, '34.82950', '-106.68740'), ('Rio Communities', 4213, '34.64410', '-106.71800'), ('Tome-Adelino', 2211, '34.73150', '-106.72070'), ('Valencia', 4500, '34.79600', '-106.69100')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NVC001': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Cold Springs', 318, '39.41000', '-117.84000'), ('Dixie Valley', 1265, '39.57000', '-118.08000'), ('Fallon', 7536, '39.47580', '-118.77780'), ('Fallon Station', 1265, '39.41860', '-118.72010'), ('Frenchman', 1265, '39.28000', '-118.27000'), ('Hazen', 8543, '39.57000', '-119.05000'), ('Lahontan Reservoir', 4708, '39.46000', '-119.07000'), ('Middlegate', 318, '39.29000', '-118.03000'), ('Sand Mountain', 1265, '39.31000', '-118.40000'), ('Stillwater', 1265, '39.52000', '-118.55000'), ('Trinity Junction', 2003, '39.94000', '-118.75000')], 'partOfState': 'west central', 'wfo': 'REV'}, +'NVC003': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Big Bend Raws', 7076, '35.11660', '-114.70000'), ('Black Mtn', 175381, '35.93330', '-115.04160'), ('Boulder Beach', 14966, '36.04330', '-114.81000'), ('Boulder City', 14966, '35.98300', '-114.83000'), ('Bunkerville', 1014, '36.78000', '-114.10990'), ('Callville Bay', 14966, '36.13330', '-114.72880'), ('Cal Nev Ari', 278, '35.31660', '-114.88660'), ('Cottonwood Cove', 7076, '35.48330', '-114.69000'), ('Downtown Las Vegas', 26958, '36.17300', '-115.14600'), ('East Las Vegas', 11087, '36.09650', '-115.04350'), ('Echo Bay', 5784, '36.31660', '-114.41110'), ('Frenchman Mtn', 156120, '36.17750', '-114.99600'), ('Gass Pk', 115488, '36.40000', '-115.17830'), ('Goodsprings', 232, '35.83330', '-115.43330'), ('Green Valley', 11087, '36.05700', '-115.08000'), ('Hayford Pk', 115488, '36.65830', '-115.19910'), ('Henderson', 175381, '36.03370', '-115.00240'), ('Henderson Executive', 186070, '35.98950', '-115.13200'), ('Hoover Dam', 14966, '36.01660', '-114.73830'), ('Indian Springs', 1302, '36.57080', '-115.66660'), ('Jean', 14676, '35.77660', '-115.33330'), ('Las Vegas Bay', 14966, '36.11000', '-114.86000'), ('Laughlin', 7076, '35.15730', '-114.57900'), ('Logandale', 5784, '36.61660', '-114.48330'), ('Lone Mtn', 478434, '36.23920', '-115.31250'), ('Mesquite', 9389, '36.79100', '-114.07250'), ('Moapa', 5784, '36.66660', '-114.61660'), ('Mountain Springs', 175381, '36.02330', '-115.00750'), ('Mt. Charleston', 285, '36.28330', '-115.61660'), ('Mt. Potosi', 14676, '35.96670', '-115.50000'), ('Nellis AFB', 8896, '36.24440', '-115.05380'), ('North Las Vegas', 115488, '36.26780', '-115.14420'), ('Nws Las Vegas', 14676, '36.05000', '-115.19160'), ('Overton', 5784, '36.53330', '-114.45000'), ('Overton Beach', 5784, '36.44000', '-114.36440'), ('Primm', 14676, '35.61660', '-115.39330'), ('Railroad Pass', 14966, '35.98330', '-114.91650'), ('Red Rock Canyon', 117390, '36.14000', '-115.45330'), ("Sam's Town", 11087, '36.11250', '-115.05500'), ('Sandy Valley', 1804, '35.80000', '-115.60000'), ('Searchlight', 576, '35.46330', '-114.91660'), ('Sloan', 14676, '35.94080', '-115.20500'), ('Spring Mountain Ranch State Park', 117390, '36.07330', '-115.45000'), ('Spring Valley', 117390, '36.10830', '-115.24160'), ('Stratosphere Tower', 26958, '36.14660', '-115.15830'), ('Summerlin', 478434, '36.20600', '-115.30500'), ('Sunrise Mtn', 8896, '36.22660', '-114.97500'), ('The Lakes', 117390, '36.14200', '-115.29000'), ('The Silver Bowl', 11087, '36.08880', '-115.02250'), ('The Strip', 26958, '36.11660', '-115.17500'), ('Unlv', 186070, '36.10500', '-115.14000'), ('Valley Of Fire State Park', 5784, '36.43330', '-114.51660'), ('Willow Beach', 12567, '35.87100', '-114.66670')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVC005': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Dagget Pass', 2624, '38.98000', '-119.89000'), ('Gardnerville', 3357, '38.93930', '-119.73590'), ('Gardnerville Ranch', 11054, '38.88820', '-119.74020'), ('Genoa', 2624, '39.00000', '-119.85000'), ('Glenbrook', 1649, '39.09000', '-119.94000'), ('Heavenly Valley', 2624, '38.96000', '-119.89000'), ('Holbrook Junction', 1033, '38.73000', '-119.55000'), ('Indian Hills', 4407, '39.08600', '-119.78300'), ('Johnson Lane', 4837, '39.04800', '-119.72120'), ('Kingsbury', 2624, '38.97590', '-119.88210'), ('Minden', 2836, '38.96050', '-119.77220'), ('Spooner Summit', 1649, '39.10000', '-119.90000'), ('Stateline', 1215, '38.96000', '-119.94000'), ('Topaz Lake', 1033, '38.69000', '-119.54900'), ('Zephyr Cove', 1215, '39.00000', '-119.96000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVC007': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Carlin', 2161, '40.71720', '-116.11270'), ('Charleston', 1017, '41.66670', '-115.53330'), ('Clover Valley', 1346, '40.84940', '-115.03170'), ('Contact', 144, '41.77060', '-114.75280'), ('Currie', 0, '40.26670', '-114.75000'), ('Deeth', 1346, '41.06610', '-115.27110'), ('Elko', 16708, '40.83870', '-115.76070'), ('Gibbs Ranch', 1346, '41.56970', '-115.21220'), ('Jackpot', 144, '41.98670', '-114.67440'), ('Jarbidge', 1017, '41.88330', '-115.41670'), ('Jiggs', 10548, '40.41800', '-115.66600'), ('Lamoille', 10548, '40.74470', '-115.48610'), ('Lee', 10548, '40.55050', '-115.57150'), ('Midas', 2871, '41.25000', '-116.81670'), ('Montello', 0, '41.26100', '-114.18550'), ('Mountain City', 1017, '41.83900', '-115.96100'), ('Oasis', 4721, '41.03140', '-114.47280'), ('Owyhee', 1017, '41.94200', '-116.09600'), ('Pequop Summit', 1346, '41.07510', '-114.55800'), ('Ruby Lake', 10548, '40.20280', '-115.49270'), ('Ruby Valley', 1346, '40.78110', '-115.18580'), ('Ryndon', 16708, '40.95280', '-115.60750'), ('South Fork', 10548, '40.67580', '-115.74470'), ('Spring Creek', 10548, '40.73850', '-115.59590'), ('Tuscarora', 1017, '41.31610', '-116.22440'), ('Wells', 1346, '41.11440', '-114.94810'), ('West Wendover', 4721, '40.76770', '-114.11550')], 'partOfState': 'northeast', 'wfo': 'LKN'}, +'NVC009': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Boundary Peak', 2561, '37.85000', '-118.35000'), ('Coaldale', 2627, '38.03330', '-117.87500'), ('Dyer', 3475, '37.61660', '-118.03100'), ('Goldfield', 2627, '37.70000', '-117.23330'), ('Gold Point', 2627, '37.35500', '-117.36330'), ('Lida', 2627, '37.45830', '-117.49660'), ('Lida Junction', 2627, '37.50000', '-117.18750'), ('Silver Peak', 2627, '37.76670', '-117.46660')], 'partOfState': 'south central', 'wfo': 'VEFLKN'}, +'NVC011': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Beowawe', 2161, '40.58330', '-116.46660'), ('Crescent Valley', 2871, '40.41660', '-116.56660'), ('Diamond Valley', 2161, '39.70860', '-116.04940'), ('Dunphy', 2161, '40.70000', '-116.51660'), ('Emigrant Pass', 2161, '40.63330', '-116.30220'), ('Eureka', 4041, '39.50000', '-115.95000'), ('Eureka Airport', 2161, '39.60000', '-116.00000'), ('Garden Pass', 2161, '39.82770', '-116.16300'), ('Grass Valley', 2871, '39.90000', '-116.58330'), ('Palisade', 2161, '40.60000', '-116.20000'), ('Pine Valley', 2161, '40.41660', '-116.11660'), ('Pinto Summit', 4041, '39.44000', '-115.92750')], 'partOfState': 'north central', 'wfo': 'LKN'}, +'NVC013': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Denio', 269, '41.98330', '-118.63340'), ('Dufferena', 2526, '41.86670', '-119.00010'), ('Golconda', 7174, '40.95010', '-117.48330'), ('Kings River Valley', 269, '41.73340', '-118.21660'), ('Leonard Creek Ranch', 269, '41.63340', '-118.71680'), ('McDermitt', 269, '41.98900', '-117.71550'), ('Orovada', 269, '41.56660', '-117.83330'), ('Paradise Valley', 269, '41.50020', '-117.53330'), ('Valmy', 2871, '40.78330', '-117.13330'), ('Winnemucca', 7174, '40.96830', '-117.72570')], 'partOfState': 'northwest', 'wfo': 'LKN'}, +'NVC015': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Argenta', 2871, '40.66670', '-116.75000'), ('Austin', 318, '39.48330', '-117.06670'), ('Battle Mountain', 2871, '40.64150', '-116.93770'), ('Gillman Springs', 318, '39.25020', '-117.01410'), ('Hickison Summit', 2871, '39.43330', '-116.73330'), ('Kingston', 318, '39.20000', '-117.08330'), ('New Pass Summit', 318, '39.53330', '-117.46660')], 'partOfState': 'north central', 'wfo': 'LKN'}, +'NVC017': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Alamo', 1123, '37.35250', '-115.15250'), ('Caliente', 1123, '37.61560', '-114.51450'), ('Carp', 9389, '37.10660', '-114.48330'), ('Eagle Valley', 0, '38.03330', '-114.18330'), ('Elgin', 1123, '37.35000', '-114.53660'), ('Hiko', 1123, '37.60000', '-115.21660'), ('Panaca', 1123, '37.78330', '-114.38330'), ('Pioche', 1123, '37.93330', '-114.45000'), ('Rachel', 1302, '37.63330', '-115.71660'), ('Ursine', 0, '37.98300', '-114.20000')], 'partOfState': 'south central', 'wfo': 'VEF'}, +'NVC019': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Dayton', 5907, '39.24000', '-119.57970'), ('Fernley', 8543, '39.61380', '-119.24000'), ('Fort Churchill Station', 4708, '39.29000', '-119.27000'), ('Mason', 2883, '38.95000', '-119.19000'), ('Silver Springs', 4708, '39.42070', '-119.22000'), ('Smith', 1033, '38.80000', '-119.33000'), ('Smith Valley', 1033, '38.78610', '-119.34080'), ('Stagecoach', 4708, '39.37000', '-119.37000'), ('Sweetwater Summit', 1033, '38.52000', '-119.21000'), ('Wabuska', 2883, '39.14000', '-119.18000'), ('Weed Heights', 2883, '38.99000', '-119.21000'), ('Wellington', 1033, '38.76000', '-119.38000'), ('Yerington', 2883, '38.98810', '-119.16310')], 'partOfState': 'west central', 'wfo': 'REV'}, +'NVC021': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Hawthorne', 3311, '38.52520', '-118.62700'), ('Luning', 318, '38.51000', '-118.18000'), ('Mina', 318, '38.39000', '-118.11000'), ('Mount Montgomery', 2561, '37.98000', '-118.32000'), ('Schurz', 721, '38.99290', '-118.83280'), ('Walker Lake', 3311, '38.69000', '-118.74000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVC023': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Amargosa Valley', 1154, '36.64160', '-116.39660'), ('Beatty', 1154, '36.91020', '-116.76000'), ('Blue Eagle Ranch', 4041, '38.53330', '-115.55000'), ('Duckwater', 4041, '38.90000', '-115.71660'), ('Gabbs', 318, '38.86770', '-117.92150'), ('Lathrop Wells', 1154, '36.66660', '-116.38330'), ('Manhattan', 2627, '38.52080', '-117.06660'), ('Mercury', 1302, '36.67000', '-116.00500'), ('Pahrump', 24631, '36.20830', '-115.99160'), ('Round Mountain', 2627, '38.71660', '-117.06670'), ('Scottys Junction', 1154, '37.30000', '-117.04330'), ('Tonopah', 2627, '38.06660', '-117.23000')], 'partOfState': 'south central', 'wfo': 'VEFLKN'}, +'NVC027': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Imlay', 7174, '40.66000', '-118.15000'), ('Lovelock', 2003, '40.18000', '-118.47690'), ('Mill City', 7174, '40.68000', '-118.07000'), ('Oreana', 2003, '40.33000', '-118.32000'), ('Rye Patch Reservoir', 2003, '40.49000', '-118.32000'), ('Unionville', 2003, '40.44000', '-118.12000')], 'partOfState': 'west central', 'wfo': 'REV'}, +'NVC029': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Gold Hill', 5907, '39.29000', '-119.66000'), ('Six Mile Canyon', 5907, '39.31000', '-119.56000'), ('Virginia City', 5907, '39.31000', '-119.64000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVC031': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Catnip Mountain', 2526, '41.85000', '-119.38000'), ('Crystal Bay', 2796, '39.25000', '-119.99000'), ('Empire', 881, '40.58000', '-119.34000'), ('Gerlach', 2003, '40.65000', '-119.35000'), ('Incline Village', 9952, '39.25080', '-119.96320'), ('Lakeview', 52457, '39.21000', '-119.80000'), ('Lockwood', 66346, '39.51000', '-119.65000'), ('Mount Rose Summit', 9952, '39.31000', '-119.90000'), ('Mustang', 66346, '39.52000', '-119.63000'), ('New Washoe City', 2875, '39.30130', '-119.77180'), ('Nixon', 418, '39.83000', '-119.36000'), ('Patrick', 66346, '39.55000', '-119.58000'), ('Pyramid Lake', 881, '40.06000', '-119.56000'), ('Reno', 180480, '39.53870', '-119.82250'), ('Sand Pass', 19461, '40.26000', '-119.68000'), ('Smoke Creek Desert', 19461, '40.48000', '-119.73000'), ('Spanish Springs', 9018, '39.62000', '-119.72000'), ('Sparks', 66346, '39.54420', '-119.73690'), ('Stead', 19461, '39.64000', '-119.88000'), ('Sun Valley', 19461, '39.59820', '-119.77860'), ('Sutcliffe', 281, '39.95000', '-119.60000'), ('The Needle Rocks', 19461, '40.15000', '-119.68000'), ('Verdi', 180480, '39.52000', '-119.99000'), ('Verdi', 133850, '39.52000', '-120.00000'), ('Vya', 3231, '41.60000', '-119.86000'), ('Wadsworth', 881, '39.63260', '-119.29000'), ('Washoe City', 2875, '39.32000', '-119.81000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVC033': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Baker', 0, '39.01660', '-114.13330'), ('Cherry Creek', 1054, '39.90000', '-114.88330'), ('Ely', 4041, '39.24910', '-114.87790'), ('Ely Airport', 4041, '39.29500', '-114.84520'), ('Great Basin National Park', 0, '39.00920', '-114.22670'), ('Lages Junction', 0, '40.06330', '-114.61520'), ('Lund', 4041, '38.86250', '-115.00940'), ('McGill', 1054, '39.39970', '-114.77890'), ('Preston', 4041, '38.91660', '-115.06670'), ('Ruth', 4041, '39.28000', '-114.98750'), ('Schellbourne', 1054, '39.81660', '-114.66670'), ('Shoshone', 0, '38.91030', '-114.40190')], 'partOfState': 'northeast', 'wfo': 'LKN'}, +'NVC510': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Carson City', 52457, '39.16990', '-119.76490'), ('Stewart', 52457, '39.12000', '-119.76000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NYC001': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Albany', 95658, '42.66060', '-73.77850'), ('Altamont', 1737, '42.70510', '-74.03630'), ('Berne', 1737, '42.62850', '-74.13430'), ('Cohoes', 15521, '42.77260', '-73.70840'), ('Colonie', 7916, '42.72080', '-73.83460'), ('Delmar', 8292, '42.62430', '-73.83350'), ('Feura Bush', 8292, '42.57820', '-73.88000'), ('Green Island', 2278, '42.74780', '-73.69260'), ('Guilderland', 7188, '42.69580', '-73.89220'), ('Knox', 1737, '42.67130', '-74.11600'), ('Latham', 10131, '42.74520', '-73.74690'), ('Loudonville', 10822, '42.70730', '-73.76610'), ('Menands', 3910, '42.69120', '-73.72860'), ('Preston Hollow', 1436, '42.44170', '-74.20730'), ('Ravena', 3369, '42.47660', '-73.81230'), ('Selkirk', 1619, '42.53050', '-73.80270'), ('Voorheesville', 2705, '42.64640', '-73.93320'), ('Watervliet', 10207, '42.72480', '-73.70750'), ('Westerlo', 2705, '42.51630', '-74.04530'), ('Westmere', 7188, '42.68760', '-73.87480')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC003': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alfred', 3954, '42.25410', '-77.78980'), ('Almond', 461, '42.31900', '-77.73950'), ('Andover', 1073, '42.15700', '-77.79650'), ('Angelica', 903, '42.30430', '-78.02110'), ('Belmont', 952, '42.22240', '-78.03360'), ('Bolivar', 1173, '42.07030', '-78.16670'), ('Canaseraga', 594, '42.46400', '-77.77690'), ('Cuba', 1633, '42.21860', '-78.27630'), ('Fillmore', 502, '42.46800', '-78.11310'), ('Friendship', 1176, '42.20540', '-78.14240'), ('Houghton', 1748, '42.42650', '-78.16140'), ('Richburg', 448, '42.08990', '-78.15600'), ('Stannards', 868, '42.07880', '-77.91290'), ('Wellsville', 5171, '42.12100', '-77.94750')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC005': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('City Island', 5466, '40.87000', '-73.79000'), ('Co-Op City', 5466, '40.87000', '-73.82000'), ('East Tremont', 8008278, '40.85000', '-73.87000'), ('Fordham', 8008278, '40.87000', '-73.89000'), ('Laguardia Airport', 8008278, '40.79000', '-73.87100'), ('Mott Haven', 8008278, '40.82000', '-73.91000'), ('Riverdale', 8008278, '40.90000', '-73.91000'), ('Woodlawn', 8008278, '40.90000', '-73.85000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC005': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('City Island', 5466, '40.87000', '-73.79000'), ('Co-Op City', 5466, '40.87000', '-73.82000'), ('East Tremont', 8008278, '40.85000', '-73.87000'), ('Fordham', 8008278, '40.87000', '-73.89000'), ('Laguardia Airport', 8008278, '40.79000', '-73.87100'), ('Mott Haven', 8008278, '40.82000', '-73.91000'), ('Riverdale', 8008278, '40.90000', '-73.91000'), ('Woodlawn', 8008278, '40.90000', '-73.85000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC007': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Belden', 901, '42.20000', '-75.66670'), ('Binghamton', 47380, '42.10160', '-75.90950'), ('Castle Creek', 1697, '42.23330', '-75.91670'), ('Center Lisle', 302, '42.36670', '-76.06670'), ('Chenango Bridge', 1697, '42.16670', '-75.86670'), ('Chenango Forks', 1697, '42.23330', '-75.86670'), ('Conklin', 704, '42.03330', '-75.80000'), ('East Windsor', 901, '42.11670', '-75.61670'), ('Endicott', 13038, '42.09790', '-76.06360'), ('Endwell', 11706, '42.11720', '-76.02330'), ('Hale Eddy', 1699, '42.00000', '-75.36670'), ('Harpursville', 836, '42.18330', '-75.61670'), ('Johnson City', 15535, '42.12360', '-75.96180'), ('Kirkwood', 704, '42.03330', '-75.78330'), ('Lisle', 302, '42.35070', '-76.00370'), ('Maine', 12602, '42.20000', '-76.06670'), ('Nanticoke', 302, '42.28330', '-76.06670'), ('Nws Binghamton', 15535, '42.20700', '-75.98470'), ('Port Crane', 1697, '42.16670', '-75.83330'), ('Port Dickinson', 1697, '42.13660', '-75.89200'), ('Sanford', 1699, '42.10000', '-75.48330'), ('Sanitaria Spgs', 1697, '42.16670', '-75.76670'), ('Union Center', 13038, '42.15000', '-76.06670'), ('Vestal', 13038, '42.08330', '-76.05000'), ('Vestal Center', 13038, '42.03330', '-76.01670'), ('West Corners', 13038, '42.11670', '-76.06670'), ('Whitney Point', 965, '42.33140', '-75.96800'), ('Windsor', 901, '42.07720', '-75.64100')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC009': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Allegany', 1883, '42.09010', '-78.49150'), ('Cattaraugus', 1075, '42.32970', '-78.86790'), ('Delevan', 1089, '42.49100', '-78.47940'), ('East Randolph', 630, '42.17050', '-78.95080'), ('Ellicottville', 472, '42.27480', '-78.67260'), ('Franklinville', 1855, '42.33530', '-78.45650'), ('Gowanda', 2842, '42.46160', '-78.93530'), ('Lime Lake-Machias', 1269, '42.42840', '-78.48230'), ('Limestone', 411, '42.02400', '-78.63100'), ('Little Valley', 1130, '42.24930', '-78.79930'), ('Olean', 15347, '42.08210', '-78.43230'), ('Perrysburg', 408, '42.45950', '-79.00150'), ('Portville', 1024, '42.03560', '-78.33910'), ('Randolph', 1316, '42.16230', '-78.97990'), ('Salamanca', 6097, '42.16430', '-78.72270'), ('South Dayton', 662, '42.36270', '-79.05200'), ('St. Bonaventure', 2127, '42.08020', '-78.47520'), ('Weston Mills', 1608, '42.07590', '-78.37290'), ('Yorkshire', 1403, '42.52190', '-78.47840')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC011': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Auburn', 28574, '42.93320', '-76.56890'), ('Aurora', 720, '42.75220', '-76.69890'), ('Cascade', 1363, '42.75000', '-76.46670'), ('Casowasco', 1363, '42.78330', '-76.48330'), ('Cato', 601, '43.16800', '-76.57240'), ('Cayuga', 509, '42.91940', '-76.72830'), ('Dresserville', 1363, '42.70000', '-76.31670'), ('East Genoa', 1363, '42.65000', '-76.50000'), ('East Venice', 1363, '42.68330', '-76.50000'), ('Edgewater', 1363, '42.76670', '-76.48330'), ('Ensenore', 1363, '42.78330', '-76.50000'), ('Fair Haven', 884, '43.32570', '-76.70240'), ('Fleming', 2359, '42.86670', '-76.55000'), ('Fosterville', 509, '42.95000', '-76.66670'), ('Genoa', 1363, '42.66670', '-76.53330'), ('Kelloggsville', 1363, '42.78330', '-76.35000'), ('King Ferry', 674, '42.66670', '-76.61670'), ('Ledyard', 720, '42.70000', '-76.61670'), ('Levanna', 720, '42.78330', '-76.68330'), ('Locke', 1363, '42.66670', '-76.41670'), ('Mapleton', 2359, '42.85000', '-76.58330'), ('Melrose Park', 2359, '42.90230', '-76.52830'), ('Meridian', 350, '43.16350', '-76.53540'), ('Merrifield', 2359, '42.78330', '-76.56670'), ('Montville', 1363, '42.71670', '-76.40000'), ('Moravia', 1363, '42.71210', '-76.42250'), ('New Hope', 1363, '42.80000', '-76.35000'), ('Niles', 2616, '42.83330', '-76.40000'), ('Port Byron', 1297, '43.03670', '-76.62580'), ('Scipio Center', 2359, '42.78330', '-76.53330'), ('Sempronius', 1363, '42.73330', '-76.31670'), ('Sennett', 2017, '43.00000', '-76.53330'), ('Sheldrake', 674, '42.66670', '-76.68330'), ('Sherwood', 1363, '42.75000', '-76.48330'), ('Throopsville', 28574, '42.96670', '-76.60000'), ('Union Springs', 1074, '42.84500', '-76.69330'), ('Venice Center', 1363, '42.73330', '-76.55000'), ('Weedsport', 2017, '43.04700', '-76.56470'), ('Willets', 720, '42.71670', '-76.68330'), ('Wyckoff', 2359, '42.83330', '-76.51670')], 'partOfState': 'central', 'wfo': 'BUFBGM'}, +'NYC013': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bemus Point', 340, '42.16340', '-79.39120'), ('Brocton', 1547, '42.38920', '-79.44230'), ('Cassadaga', 676, '42.34100', '-79.31710'), ('Celoron', 1295, '42.10480', '-79.27610'), ('Cherry Creek', 551, '42.29510', '-79.10170'), ('Falconer', 2540, '42.11890', '-79.19730'), ('Forestville', 770, '42.46860', '-79.17500'), ('Fredonia', 10706, '42.44040', '-79.33180'), ('Frewsburg', 1965, '42.05720', '-79.16110'), ('Jamestown', 31730, '42.09740', '-79.23630'), ('Jamestown West', 2633, '42.08940', '-79.27880'), ('Lakewood', 3258, '42.10020', '-79.32000'), ('Mayville', 1756, '42.25290', '-79.50230'), ('Panama', 491, '42.07500', '-79.48610'), ('Ripley', 1030, '42.26560', '-79.71140'), ('Sherman', 714, '42.16010', '-79.59490'), ('Silver Creek', 2896, '42.54350', '-79.16890'), ('Sinclairville', 665, '42.26440', '-79.25820'), ('Westfield', 3481, '42.32200', '-79.57590')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC015': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Big Flats', 2482, '42.14230', '-76.93040'), ('Big Flats Airport', 2184, '42.17100', '-76.88980'), ('Breesport', 2852, '42.16670', '-76.73330'), ('Chambers', 2184, '42.25000', '-76.95000'), ('Elmira', 30940, '42.09320', '-76.81010'), ('Elmira Arpt', 2184, '42.16670', '-76.90000'), ('Elmira Heights', 4170, '42.12640', '-76.82660'), ('Erin', 581, '42.18330', '-76.66670'), ('Fisherville', 2184, '42.16670', '-76.86670'), ('Horseheads', 6452, '42.16970', '-76.82990'), ('Horseheads North', 2852, '42.19200', '-76.80910'), ('Lowman', 631, '42.03330', '-76.71670'), ('Millport', 297, '42.26760', '-76.83640'), ('Owens Mill', 4607, '42.06670', '-76.60000'), ('Pine City', 5136, '42.03330', '-76.86670'), ('Sagetown', 2482, '42.03330', '-76.95000'), ('Seely Creek', 5136, '42.01447', '-76.89200'), ('Southport', 7396, '42.06380', '-76.81160'), ('Swartwood', 581, '42.23330', '-76.61670'), ('Tompkins Corners', 2184, '42.20000', '-76.88330'), ('Van Etten', 581, '42.19820', '-76.55470'), ('Webb Mills', 5136, '42.01670', '-76.88330'), ('Wellsburg', 631, '42.01280', '-76.72960'), ('West Elmira', 5136, '42.08950', '-76.85070')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC017': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Afton', 836, '42.22910', '-75.52520'), ('Bainbridge', 1365, '42.29600', '-75.48040'), ('Brisben', 1701, '42.36670', '-75.68330'), ('Columbus', 1129, '42.68330', '-75.36670'), ('Coventry', 1584, '42.31670', '-75.63330'), ('German', 1701, '42.48330', '-75.85000'), ('Greene', 1701, '42.33000', '-75.77050'), ('Guilford', 1365, '42.40000', '-75.48330'), ('Holmesville', 375, '42.51670', '-75.40000'), ('Lincklaen', 531, '42.66670', '-75.85000'), ('Mc Donough', 1701, '42.50000', '-75.76670'), ('Mt Upton', 375, '42.41670', '-75.38330'), ('New Berlin', 1129, '42.62410', '-75.33570'), ('Nineveh', 836, '42.20000', '-75.60000'), ('North Norwich', 1455, '42.61670', '-75.53330'), ('Norwich', 7355, '42.53500', '-75.52370'), ('Otselic', 241, '42.71670', '-75.71670'), ('Oxford', 1584, '42.44060', '-75.59620'), ('Pharsalia', 531, '42.58330', '-75.76670'), ('Pitcher', 531, '42.58330', '-75.85000'), ('Plymouth', 241, '42.61670', '-75.60000'), ('Polkville', 7355, '42.51670', '-75.51670'), ('Preston', 7355, '42.53330', '-75.60000'), ('Rockdale', 4068, '42.38330', '-75.41670'), ('Sherburne', 1455, '42.68030', '-75.49750'), ('Smithville Center', 1701, '42.40000', '-75.71670'), ('Smithville Flats', 1701, '42.40000', '-75.80000'), ('Smyrna', 241, '42.68580', '-75.56750'), ('South Otselic', 531, '42.65000', '-75.78330'), ('South Oxford', 1584, '42.38330', '-75.61670'), ('South Plymouth', 7355, '42.58330', '-75.56670'), ('Tyner', 1584, '42.43330', '-75.66670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC019': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Altona', 1056, '44.89220', '-73.65930'), ('Ausable Chasm', 0, '44.52250', '-73.46560'), ('Beekmantown', 18816, '44.77000', '-73.48000'), ('Black Brook', 1514, '44.47000', '-73.73000'), ('Cadyville', 0, '44.69810', '-73.63190'), ('Cannon Corners', 0, '44.96000', '-73.74000'), ('Champlain', 1173, '44.98730', '-73.44460'), ('Chazy', 1173, '44.88000', '-73.43000'), ('Chazy Lake', 0, '44.72000', '-73.83000'), ('Chazy Landing', 0, '44.88720', '-73.37860'), ('Churubusco', 798, '44.95000', '-73.92000'), ('Clayburg', 512, '44.60000', '-73.83000'), ('Clintonville', 0, '44.46560', '-73.58310'), ('Cumberland Head', 1532, '44.71630', '-73.40300'), ('Dannemora', 4129, '44.72080', '-73.71930'), ('Ellenburg', 0, '44.89390', '-73.83690'), ('Ellenburg Center', 0, '44.86470', '-73.89750'), ('Ellenburg Depot', 1056, '44.90000', '-73.80000'), ('Ellenburg Mountain', 0, '44.79000', '-73.85000'), ('Harkness', 0, '44.52360', '-73.57000'), ('Harrigan', 0, '44.85250', '-73.96690'), ('Hawkeye', 2638, '44.51000', '-73.87000'), ('Irona', 0, '44.90470', '-73.70610'), ('Jericho', 4129, '44.78000', '-73.65000'), ('Keeseville', 1850, '44.50370', '-73.48270'), ('Lyon Mountain', 458, '44.72000', '-73.92000'), ('Merrill', 798, '44.77000', '-73.95000'), ('Moffittsville', 0, '44.63860', '-73.75640'), ('Mooers', 440, '44.96530', '-73.58590'), ('Mooers Forks', 0, '44.95810', '-73.64110'), ('Morrisonville', 1702, '44.69070', '-73.55120'), ('Peasleeville', 0, '44.60080', '-73.67360'), ('Perry Mills', 0, '45.00030', '-73.50670'), ('Peru', 1514, '44.58000', '-73.53450'), ('Plattsburgh', 18816, '44.69550', '-73.45680'), ('Point Au Roche', 0, '44.78330', '-73.39170'), ('Redford', 0, '44.60830', '-73.80470'), ('Riverview', 4129, '44.58000', '-73.90000'), ('Rouses Point', 2277, '44.99200', '-73.36600'), ('Saranac', 0, '44.65140', '-73.74390'), ('Schuyler Falls', 0, '44.62860', '-73.55830'), ('Sciota', 440, '44.90000', '-73.55000'), ('Standish', 0, '44.68920', '-73.94940'), ('Union Falls', 0, '44.50720', '-73.91690'), ('Valcour', 0, '44.60500', '-73.44030'), ('West Beekmantown', 0, '44.77110', '-73.55500'), ('West Chazy', 0, '44.82060', '-73.50750'), ('West Plattsburgh', 0, '44.71360', '-73.56860')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYC021': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ancram', 1412, '42.05130', '-73.63530'), ('Austerlitz', 1184, '42.32000', '-73.47000'), ('Chatham', 1758, '42.36130', '-73.59790'), ('Claverack', 1061, '42.22320', '-73.72490'), ('Clermont', 1163, '42.08980', '-73.82930'), ('Copake', 925, '42.10000', '-73.55000'), ('Elizaville', 1805, '42.04920', '-73.79470'), ('Hudson', 7524, '42.25130', '-73.78650'), ('Kinderhook', 1275, '42.39460', '-73.70410'), ('Livingston', 1061, '42.13930', '-73.76320'), ('New Lebanon', 48622, '42.46880', '-73.39250'), ('Niverville', 1737, '42.44550', '-73.64880'), ('Philmont', 1480, '42.24830', '-73.64670'), ('Stottville', 1355, '42.28920', '-73.75230'), ('Valatie', 1712, '42.41480', '-73.67670')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC023': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Baltimore', 924, '42.73330', '-76.11670'), ('Cincinnatus', 1063, '42.53330', '-75.88330'), ('Como', 3368, '42.68330', '-76.26670'), ('Cortland', 18740, '42.60090', '-76.17940'), ('Cortland West', 1345, '42.58900', '-76.22790'), ('Cuyler', 531, '42.73330', '-75.93330'), ('East Freetown', 1063, '42.55000', '-75.96670'), ('East Homer', 1000, '42.66670', '-76.10000'), ('Freetown Corners', 1063, '42.51670', '-76.03330'), ('Glen Haven', 3368, '42.76670', '-76.26670'), ('Gracie', 1345, '42.56670', '-76.25000'), ('Harford', 1832, '42.43330', '-76.23330'), ('Homer', 3368, '42.63780', '-76.18360'), ('Hunts Corners', 1063, '42.41670', '-76.11670'), ('Keeney', 355, '42.78330', '-75.95000'), ('Lapeer', 1063, '42.43330', '-76.10000'), ('Marathon', 1063, '42.44280', '-76.03510'), ('McGraw', 1000, '42.59200', '-76.09820'), ('Munsons Corners', 2426, '42.58010', '-76.20530'), ('Preble', 924, '42.73330', '-76.13330'), ('Scott', 3368, '42.73330', '-76.23330'), ('Solon', 1000, '42.60000', '-76.01670'), ('South Cortland', 2426, '42.56670', '-76.21670'), ('Taylor', 531, '42.61670', '-75.88330'), ('Texas Valley', 1063, '42.48330', '-75.96670'), ('Tripoli', 531, '42.73330', '-75.95000'), ('Truxton', 924, '42.71670', '-76.03330'), ('Union Valley', 531, '42.63330', '-75.88330'), ('Virgil', 2426, '42.51670', '-76.18330'), ('Willet', 1063, '42.46670', '-75.90000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC025': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Andes', 289, '42.19000', '-74.78420'), ('Arkville', 643, '42.15000', '-74.61670'), ('Beerston', 3070, '42.13330', '-75.16670'), ('Bovina Center', 289, '42.26670', '-74.78330'), ('Butts Corner', 573, '42.46670', '-74.81670'), ('Cannonsville', 1699, '42.10000', '-75.31670'), ('Colchester', 3070, '42.16670', '-75.08330'), ('Cooks Falls', 1355, '41.93330', '-74.96670'), ('Corbett', 3070, '42.05000', '-75.01670'), ('Davenport', 573, '42.46670', '-74.85000'), ('Davenport Center', 573, '42.45000', '-74.91670'), ('Delhi', 2583, '42.28000', '-74.91450'), ('Deposit', 1699, '42.06400', '-75.42190'), ('Downsville', 3070, '42.08330', '-75.00000'), ('Dunraven', 643, '42.11670', '-74.70000'), ('East Branch', 1189, '41.98330', '-75.11670'), ('East Delhi', 2583, '42.30000', '-74.88330'), ('East Meredith', 2583, '42.41670', '-74.88330'), ('East Sidney', 402, '42.33330', '-75.23330'), ('Fergusonville', 573, '42.50000', '-74.83330'), ('Fishs Eddy', 1189, '41.96670', '-75.16670'), ('Fleischmanns', 351, '42.15560', '-74.53350'), ('Franklin', 402, '42.34260', '-75.16640'), ('Halcottsville', 643, '42.20000', '-74.60000'), ('Hamden', 2583, '42.20000', '-75.00000'), ('Hancock', 1189, '41.95340', '-75.28330'), ('Harvard', 3070, '42.03330', '-75.11670'), ('Hobart', 390, '42.37120', '-74.66890'), ('Kortright', 390, '42.40000', '-74.80000'), ('Loomis', 3070, '42.20000', '-75.21670'), ('Margaretville', 643, '42.14440', '-74.65210'), ('Masonville', 4068, '42.25000', '-75.36670'), ('Meredith', 2583, '42.35000', '-74.95000'), ('Meridale', 2583, '42.36670', '-74.95000'), ('New Kingston', 643, '42.21670', '-74.68330'), ('North Franklin', 13292, '42.40000', '-75.08330'), ('Peabrook', 1189, '41.90000', '-75.13330'), ('Rock Rift', 3070, '42.10000', '-75.20000'), ('Roxbury', 351, '42.28330', '-74.56670'), ('Shinhopple', 3070, '42.05000', '-75.06670'), ('Sidney', 4068, '42.30590', '-75.39770'), ('Sidney Center', 1127, '42.28330', '-75.25000'), ('Stamford', 1265, '42.40890', '-74.61760'), ('Stilesville', 1699, '42.08330', '-75.40000'), ('Trout Creek', 1127, '42.20000', '-75.26670'), ('Walton', 3070, '42.16970', '-75.13070'), ('Wolf Hollow', 289, '42.15000', '-74.80000'), ('Youngs', 1265, '42.30000', '-75.31670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC027': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Amenia', 1115, '41.84620', '-73.55240'), ('Arlington', 12481, '41.69570', '-73.88490'), ('Beacon', 13808, '41.50420', '-73.96600'), ('Dover Plains', 1996, '41.74520', '-73.58030'), ('Fairview', 5421, '41.73190', '-73.91340'), ('Fishkill', 1735, '41.53450', '-73.89420'), ('Hopewell Junction', 2610, '41.58570', '-73.80130'), ('Hyde Park', 3605, '41.78430', '-73.93430'), ('Millbrook', 1429, '41.78430', '-73.69470'), ('Millerton', 925, '41.95360', '-73.51120'), ('Myers Corner', 5546, '41.59710', '-73.86580'), ('Pawling', 2233, '41.56330', '-73.59990'), ('Pine Plains', 1412, '41.97770', '-73.65840'), ('Pleasant Valley', 1839, '41.74870', '-73.82050'), ('Poughkeepsie', 29871, '41.69580', '-73.92250'), ('Red Hook', 1805, '41.99560', '-73.87660'), ('Red Oaks Mill', 4930, '41.65570', '-73.87360'), ('Rhinebeck', 3077, '41.92870', '-73.90750'), ('Staatsburg', 911, '41.84950', '-73.92480'), ('Stanfordville', 1429, '41.86580', '-73.71580'), ('Tivoli', 1163, '42.05930', '-73.91110'), ('Wappingers Falls', 4929, '41.59900', '-73.91850'), ('Wingdale', 2233, '41.64630', '-73.56420')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC029': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Akron', 3085, '43.01930', '-78.49560'), ('Alden', 2666, '42.89840', '-78.49450'), ('Angola', 2266, '42.63770', '-79.02980'), ('Angola On The Lake', 1771, '42.65470', '-79.04910'), ('Blasdell', 2718, '42.79620', '-78.83340'), ('Buffalo', 292648, '42.88980', '-78.85970'), ('Cheektowaga', 79988, '42.90890', '-78.75020'), ('Clarence Center', 1747, '43.00870', '-78.63180'), ('Depew', 16629, '42.91200', '-78.70470'), ('East Aurora', 6673, '42.76680', '-78.61740'), ('Eden', 3579, '42.65200', '-78.90070'), ('Elma Center', 2491, '42.82620', '-78.63270'), ('Farnham', 322, '42.59690', '-79.07890'), ('Hamburg', 10116, '42.72400', '-78.83490'), ('Harris Hill', 4881, '42.97660', '-78.68270'), ('Holland', 1261, '42.63640', '-78.54790'), ('Kenmore', 16426, '42.96480', '-78.87190'), ('Lackawanna', 19064, '42.81680', '-78.82930'), ('Lake Erie Beach', 4499, '42.62360', '-79.07770'), ('Lancaster', 11188, '42.90160', '-78.66980'), ('North Boston', 2680, '42.67220', '-78.78400'), ('North Collins', 1079, '42.59460', '-78.93670'), ('Orchard Park', 3294, '42.76340', '-78.74580'), ('Sloan', 3775, '42.89220', '-78.79170'), ('Springville', 4252, '42.50940', '-78.67010'), ('Tonawanda', 61729, '42.98410', '-78.87570'), ('West Seneca', 45943, '42.83770', '-78.75140'), ('Williamsville', 5573, '42.96290', '-78.74090')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC031': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ausable Forks', 1514, '44.43000', '-73.68000'), ('Boquet', 0, '44.30360', '-73.40280'), ('Chilson', 0, '43.87720', '-73.52920'), ('Crown Point', 0, '43.95030', '-73.43750'), ('Crown Point Center', 2726, '43.95000', '-73.42000'), ('Deerhead', 0, '44.35220', '-73.54360'), ('Elizabethtown', 1747, '44.22000', '-73.60000'), ('Essex', 0, '44.31000', '-73.35310'), ('Ironville', 0, '43.92250', '-73.53610'), ('Keene', 2638, '44.25000', '-73.78000'), ('Keene Valley', 2638, '44.20000', '-73.78000'), ('Lake Placid', 2638, '44.28340', '-73.98500'), ('Lewis', 524, '44.27000', '-73.57000'), ('Minerva', 3208, '43.78000', '-73.97000'), ('Mineville', 1747, '44.08910', '-73.52750'), ('Moriah', 1152, '44.05000', '-73.50000'), ('Moriah Center', 0, '44.06110', '-73.51030'), ('Mount Marcy', 0, '44.10000', '-73.90000'), ('Mount Van Hoevenberg', 0, '44.21000', '-73.92970'), ('Newcomb', 5041, '43.97000', '-74.17000'), ('New Russia', 0, '44.16330', '-73.61190'), ('North Elba', 0, '44.24330', '-73.95470'), ('North Hudson', 0, '43.95250', '-73.72890'), ('North Jay', 0, '44.39830', '-73.67390'), ('Olmstedville', 0, '43.77140', '-73.93170'), ('Paradox', 2726, '43.90000', '-73.63000'), ('Pharoah Mountain', 0, '43.81830', '-73.65860'), ('Port Douglass', 0, '44.48580', '-73.41830'), ('Port Henry', 1152, '44.04700', '-73.46070'), ('Port Kent', 1850, '44.53000', '-73.42000'), ('Ray Brook', 5041, '44.30000', '-74.08000'), ('Reber', 0, '44.32360', '-73.48000'), ('Schroon Falls', 0, '43.89920', '-73.74920'), ('Schroon Lake', 2726, '43.83000', '-73.73000'), ('Severance', 0, '43.87580', '-73.73080'), ('South Schroon', 0, '43.79500', '-73.79250'), ('St. Huberts', 0, '44.15720', '-73.77360'), ('Tahawus', 0, '44.05060', '-74.05140'), ('Ticonderoga', 2726, '43.84700', '-73.42560'), ('Underwood', 1747, '44.08000', '-73.68000'), ('Upper Jay', 2638, '44.33000', '-73.78000'), ('Vanderwhacker Mountain', 0, '43.87000', '-74.12000'), ('Wadhams', 524, '44.23000', '-73.47000'), ('Westport', 524, '44.17880', '-73.43610'), ('Whallonsburg', 0, '44.26420', '-73.40330'), ('Willsboro', 1850, '44.37000', '-73.40000'), ('Willsboro Point', 0, '44.40860', '-73.37860'), ('Wilmington', 2638, '44.38000', '-73.82000'), ('Witherbee', 0, '44.08750', '-73.53330')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYC033': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alder Brook', 0, '44.51330', '-73.94390'), ('Axton Landing', 0, '44.20280', '-74.32920'), ('Azure Mountain', 0, '44.57000', '-74.48000'), ('Bangor', 0, '44.81220', '-74.39780'), ('Bloomingdale', 5041, '44.42000', '-74.10000'), ('Bombay', 0, '44.93890', '-74.56810'), ('Brainardsville', 0, '44.85780', '-74.03390'), ('Brushton', 479, '44.83090', '-74.51290'), ('Bryants Mill', 0, '44.68640', '-74.11780'), ('Burke', 213, '44.90340', '-74.17090'), ('Burke Center', 0, '44.91890', '-74.18000'), ('Chasm Falls', 6075, '44.75000', '-74.22000'), ('Chateaugay', 798, '44.92730', '-74.08080'), ('Constable', 6075, '44.93000', '-74.28000'), ('Debar Mountain', 0, '44.60000', '-74.21000'), ('Dickinson', 479, '44.75000', '-74.55000'), ('Duane Center', 6075, '44.65000', '-74.27000'), ('Earlville', 0, '44.97030', '-74.05030'), ('Fort Covington', 479, '44.98000', '-74.47000'), ('Fort Covington Center', 0, '44.94830', '-74.46440'), ('Franklin Falls', 2638, '44.43000', '-73.98000'), ('Gabriels', 0, '44.43190', '-74.18140'), ('Harrietstown', 0, '44.39690', '-74.15890'), ('Hogansburg', 479, '44.97000', '-74.63000'), ('Lake Clear', 0, '44.36750', '-74.23310'), ('Lake Colby', 0, '44.35280', '-74.14390'), ('Loon Lake', 5041, '44.55000', '-74.07000'), ('Madawaska', 0, '44.51670', '-74.39750'), ('Malone', 6075, '44.84820', '-74.29140'), ('Moira', 0, '44.81810', '-74.55610'), ('North Bangor', 0, '44.84190', '-74.40140'), ('North Burke', 0, '44.98670', '-74.17470'), ('Onchiota', 0, '44.49420', '-74.12390'), ('Owls Head', 0, '44.73440', '-74.16920'), ('Paul Smiths', 5041, '44.43000', '-74.25000'), ('Rainbow Lake', 5041, '44.47000', '-74.17000'), ('Santa Clara', 479, '44.63000', '-74.45000'), ('Saranac Inn', 5041, '44.33000', '-74.28000'), ('Saranac Lake', 5041, '44.32500', '-74.13310'), ('South Bombay', 0, '44.89000', '-74.55470'), ('St. Regis', 0, '44.99720', '-74.65140'), ('St. Regis Falls', 479, '44.67000', '-74.53000'), ('St. Regis Mountain', 0, '44.40830', '-74.33000'), ('Tupper Lake', 3935, '44.23430', '-74.46890'), ('Upper St. Regis', 0, '44.39780', '-74.27000'), ('Vermontville', 0, '44.45170', '-74.06610'), ('Wawbeek', 0, '44.25440', '-74.33690'), ('West Bangor', 479, '44.80000', '-74.42000'), ('Westville Center', 0, '44.94470', '-74.39640'), ('Whippleville', 0, '44.80970', '-74.26220'), ('Wolf Pond', 0, '44.64920', '-74.06690')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYC035': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Broadalbin', 1411, '43.05950', '-74.19770'), ('Caroga Lake', 15413, '43.13750', '-74.48400'), ('Cranberry Creek', 800, '43.15150', '-74.22230'), ('Ephratah', 622, '43.00030', '-74.54470'), ('Gloversville', 15413, '43.05020', '-74.34700'), ('Johnstown', 8511, '43.00850', '-74.37440'), ('Mayfield', 800, '43.10200', '-74.26650'), ('Northville', 1139, '43.22200', '-74.17100'), ('Stratford', 2166, '43.18180', '-74.68550')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYC037': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alexander', 481, '42.90170', '-78.26070'), ('Batavia', 16256, '42.99860', '-78.18120'), ('Bergen', 1240, '43.08330', '-77.94200'), ('Corfu', 795, '42.96040', '-78.40030'), ('Elba', 696, '43.07520', '-78.18890'), ('Le Roy', 4462, '42.97790', '-77.99100'), ('Oakfield', 1805, '43.06440', '-78.27070')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC039': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Athens', 1695, '42.26710', '-73.81290'), ('Cairo', 1390, '42.30540', '-74.00990'), ('Catskill', 4392, '42.21480', '-73.86550'), ('Coxsackie', 2895, '42.35820', '-73.80930'), ('Hunter', 490, '42.21120', '-74.21570'), ('Jefferson Heights', 1104, '42.23640', '-73.87280'), ('Prattsville', 351, '42.31620', '-74.43330'), ('Tannersville', 448, '42.19360', '-74.13490'), ('Windham', 359, '42.30520', '-74.25250')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC041': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Blue Mountain Lake', 348, '43.87530', '-74.44420'), ('Hoffmeister', 2166, '43.40000', '-74.72000'), ('Indian Lake', 348, '43.78330', '-74.26920'), ('Long Lake', 3935, '43.97000', '-74.42000'), ('Piseco', 348, '43.42400', '-74.53600'), ('Raquette Lake', 348, '43.81300', '-74.65720'), ('Sabael', 348, '43.72830', '-74.30700'), ('Sabattis', 3935, '44.08120', '-74.70120'), ('Speculator', 348, '43.58060', '-74.38060'), ('Wells', 1139, '43.39030', '-74.29120')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYC043': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Atwell', 336, '43.52470', '-74.94330'), ('Big Moose', 860, '43.81750', '-74.91350'), ('Cold Brook', 336, '43.24090', '-75.03760'), ('Dolgeville', 2166, '43.10120', '-74.77450'), ('Eagle Bay', 860, '43.76670', '-74.82170'), ('Frankfort', 2537, '43.03810', '-75.07190'), ('Herkimer', 7498, '43.02870', '-74.99280'), ('Ilion', 8610, '43.01120', '-75.04070'), ('Jordanville', 1255, '42.91570', '-74.95120'), ('Little Falls', 5188, '43.04540', '-74.85590'), ('McKeever', 665, '43.61220', '-75.10000'), ('Middleville', 550, '43.13830', '-74.97110'), ('Mohawk', 2660, '43.00940', '-75.00720'), ('Newport', 640, '43.18730', '-75.01500'), ('Nobleboro', 336, '43.39530', '-74.86080'), ('Northwood', 330, '43.34900', '-75.07120'), ('Ohio', 336, '43.32220', '-74.97870'), ('Old Forge', 665, '43.71100', '-74.97170'), ('Poland', 451, '43.22610', '-75.06150'), ('West Winfield', 862, '42.88360', '-75.19170')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYC045': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Adams', 1624, '43.80980', '-76.02250'), ('Adams Center', 1500, '43.85960', '-75.99760'), ('Alexandria Bay', 1088, '44.33740', '-75.91770'), ('Antwerp', 716, '44.19970', '-75.60900'), ('Black River', 1285, '44.00960', '-75.79680'), ('Calcium', 3346, '44.03470', '-75.84800'), ('Cape Vincent', 760, '44.12630', '-76.33100'), ('Carthage', 3721, '43.98480', '-75.60460'), ('Chaumont', 592, '44.06530', '-76.13340'), ('Clayton', 1821, '44.23570', '-76.08690'), ('Deferiet', 309, '44.03460', '-75.67970'), ('Ellisburg', 269, '43.73600', '-76.13380'), ('Evans Mills', 605, '44.08780', '-75.80830'), ('Fort Drum', 11578, '44.05340', '-75.77380'), ('Mannsville', 400, '43.71520', '-76.06660'), ('Philadelphia', 1519, '44.15480', '-75.70940'), ('Sackets Harbor', 1386, '43.94160', '-76.12220'), ('Theresa', 812, '44.21480', '-75.79720'), ('Watertown', 26705, '43.97360', '-75.91020'), ('West Carthage', 2102, '43.97360', '-75.62170')], 'partOfState': 'central', 'wfo': 'BUF'}, +'NYC047': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bay Ridge', 8008278, '40.62000', '-74.02000'), ('Canarsie', 8008278, '40.65000', '-73.89000'), ('Coney Island', 8008278, '40.58300', '-73.98300'), ('Crown Heights', 8008278, '40.67000', '-73.94000'), ('Flatbush', 8008278, '40.64000', '-73.95000'), ('Greenpoint', 8008278, '40.72000', '-73.95000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC049': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Castorland', 306, '43.88420', '-75.51760'), ('Constableville', 305, '43.56440', '-75.42850'), ('Copenhagen', 865, '43.89380', '-75.67400'), ('Croghan', 665, '43.89530', '-75.39130'), ('Harrisville', 653, '44.15340', '-75.32170'), ('Lowville', 3476, '43.78580', '-75.48970'), ('Lyons Falls', 591, '43.61690', '-75.36210'), ('Port Leyden', 665, '43.58400', '-75.34100'), ('Turin', 263, '43.62890', '-75.40970')], 'partOfState': 'central', 'wfo': 'BUF'}, +'NYC051': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Avon', 2977, '42.91230', '-77.74610'), ('Caledonia', 2327, '42.97560', '-77.85740'), ('Dansville', 4832, '42.56090', '-77.69530'), ('Geneseo', 7579, '42.79830', '-77.81060'), ('Leicester', 469, '42.77140', '-77.89800'), ('Lima', 2459, '42.90640', '-77.61310'), ('Livonia', 1373, '42.82090', '-77.66880'), ('Mount Morris', 3266, '42.72370', '-77.87500'), ('Nunda', 1330, '42.58060', '-77.93870')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC053': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Brookfield', 579, '42.81670', '-75.31670'), ('Canastota', 4425, '43.08430', '-75.75570'), ('Cazenovia', 2614, '42.92940', '-75.85220'), ('Chittenango', 4855, '43.04560', '-75.87330'), ('Deruyter', 531, '42.75890', '-75.88730'), ('Earlville', 791, '42.74030', '-75.54360'), ('Eaton', 3509, '42.84988', '-75.61200'), ('Erieville', 2148, '42.85000', '-75.73330'), ('Georgetown', 2148, '42.76670', '-75.71670'), ('Hamilton', 3509, '42.82450', '-75.54730'), ('Hubbardsville', 3509, '42.81670', '-75.46670'), ('Kenwood', 3147, '43.05000', '-75.61670'), ('Lakeport', 758, '43.15000', '-75.88330'), ('Lebanon', 3509, '42.78330', '-75.63330'), ('Lenox', 561, '43.06670', '-75.71670'), ('Madison', 315, '42.89790', '-75.51100'), ('Morrisville', 2148, '42.89800', '-75.64490'), ('Munnsville', 437, '42.97710', '-75.58760'), ('Nelson', 2614, '42.91670', '-75.75000'), ('North Brookfield', 1721, '42.85000', '-75.36670'), ('Oneida', 10987, '43.07580', '-75.66380'), ('Pecksport', 3509, '42.86670', '-75.55000'), ('Perryville', 4855, '43.00000', '-75.81670'), ('Peterboro', 2148, '42.96670', '-75.66670'), ('Pierceville', 3509, '42.85000', '-75.60000'), ('Poolville', 791, '42.76670', '-75.50000'), ('Sheds', 531, '42.80000', '-75.81670'), ('Solsville', 315, '42.90000', '-75.50000'), ('South Bay', 1071, '43.16670', '-75.76670'), ('South Brookfield', 1129, '42.75000', '-75.30000'), ('South Lebanon', 241, '42.75000', '-75.65000'), ('Stockbridge', 437, '42.98330', '-75.58330'), ('Sullivan', 4855, '43.05000', '-75.86670'), ('Union Corners', 4425, '43.11670', '-75.75000'), ('Wampsville', 561, '43.07770', '-75.70960'), ('West Eaton', 2148, '42.85000', '-75.65000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC055': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Brighton', 35584, '43.11860', '-77.58440'), ('Brockport', 8103, '43.21340', '-77.94100'), ('Churchville', 1887, '43.10150', '-77.88410'), ('East Rochester', 6650, '43.11160', '-77.48740'), ('Fairport', 5740, '43.10020', '-77.44330'), ('Gates-North Gates', 14995, '43.16400', '-77.70070'), ('Greece', 14614, '43.21190', '-77.70230'), ('Hilton', 5856, '43.28990', '-77.79280'), ('Honeoye Falls', 2595, '42.95440', '-77.59180'), ('Irondequoit', 52354, '43.21030', '-77.57210'), ('Pittsford', 1418, '43.09040', '-77.51710'), ('Rochester', 219773, '43.16870', '-77.61580'), ('Scottsville', 2128, '43.02180', '-77.75380'), ('Spencerport', 3559, '43.18810', '-77.80860'), ('Webster', 5216, '43.21410', '-77.42240')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC057': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ames', 173, '42.83570', '-74.60300'), ('Amsterdam', 18355, '42.94180', '-74.19090'), ('Canajoharie', 2257, '42.90300', '-74.57150'), ('Charleston Four Corners', 710, '42.80270', '-74.40200'), ('Fonda', 810, '42.95330', '-74.37310'), ('Fort Johnson', 491, '42.95730', '-74.23930'), ('Fort Plain', 2288, '42.93170', '-74.62830'), ('Fultonville', 710, '42.94510', '-74.37050'), ('Hagaman', 1357, '42.97480', '-74.15380'), ('Nelliston', 622, '42.93200', '-74.60820'), ('Palatine Bridge', 706, '42.91080', '-74.57520'), ('St. Johnsville', 1685, '43.00050', '-74.67680'), ('Tribes Hill', 1024, '42.94770', '-74.30180'), ('Wellsville', 1024, '42.88200', '-74.27770')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYC059': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Baldwin', 23455, '40.66300', '-73.61120'), ('Baldwin Harbor', 8147, '40.63600', '-73.60230'), ('Bayville', 7135, '40.90700', '-73.56310'), ('Bellerose', 1173, '40.72430', '-73.71670'), ('Bellmore', 16441, '40.65710', '-73.52920'), ('Bethpage', 16543, '40.74950', '-73.48580'), ('Brookville', 2126, '40.80750', '-73.57030'), ('Carle Place', 5247, '40.75100', '-73.61150'), ('Cedarhurst', 6164, '40.62550', '-73.72790'), ('Centre Island', 444, '40.90020', '-73.52210'), ('Cove Neck', 300, '40.88440', '-73.49660'), ('East Hills', 6842, '40.79650', '-73.62920'), ('East Massapequa', 19565, '40.67340', '-73.43690'), ('East Meadow', 37461, '40.71990', '-73.55930'), ('East Norwich', 2675, '40.84700', '-73.52920'), ('East Rockaway', 10414, '40.64370', '-73.66730'), ('East Williston', 2503, '40.76060', '-73.63390'), ('Elmont', 32657, '40.70390', '-73.70750'), ('Farmingdale', 8399, '40.73310', '-73.44760'), ('Floral Park', 15967, '40.72230', '-73.70360'), ('Franklin Square', 29342, '40.70000', '-73.67700'), ('Freeport', 43783, '40.65080', '-73.58500'), ('Garden City', 21672, '40.72590', '-73.64450'), ('Glen Cove', 26622, '40.87150', '-73.63880'), ('Glen Head', 4625, '40.84330', '-73.61930'), ('Glenwood Landing', 3541, '40.82980', '-73.63770'), ('Great Neck', 9538, '40.80230', '-73.73340'), ('Hempstead', 4030, '40.70340', '-73.61900'), ('Herricks', 4076, '40.75690', '-73.66430'), ('Hewlett', 7060, '40.64170', '-73.69470'), ('Hicksville', 41260, '40.76380', '-73.52520'), ('Inwood', 9325, '40.62280', '-73.75000'), ('Jericho', 13045, '40.78850', '-73.54190'), ('Lake Success', 2797, '40.76870', '-73.71020'), ('Lawrence', 6522, '40.60440', '-73.71280'), ('Levittown', 53067, '40.72380', '-73.51310'), ('Lido Beach', 2825, '40.59210', '-73.60780'), ('Locust Valley', 3521, '40.88070', '-73.58760'), ('Long Beach', 35462, '40.59000', '-73.67000'), ('Lynbrook', 19911, '40.65870', '-73.67440'), ('Malverne', 8934, '40.67450', '-73.67260'), ('Manhasset', 8362, '40.79150', '-73.69280'), ('Manorhaven', 6138, '40.84800', '-73.71400'), ('Massapequa', 22652, '40.66830', '-73.47180'), ('Matinecock', 836, '40.86440', '-73.58400'), ('Merrick', 22764, '40.65060', '-73.55460'), ('Mill Neck', 825, '40.88010', '-73.55620'), ('Mineola', 19234, '40.74700', '-73.63860'), ('Munsey Park', 2632, '40.79940', '-73.68010'), ('Muttontown', 3412, '40.82060', '-73.54110'), ('New Hyde Park', 9523, '40.73200', '-73.68590'), ('North Wantagh', 12156, '40.69910', '-73.50870'), ('Oceanside', 32733, '40.63240', '-73.63580'), ('Old Brookville', 2167, '40.82750', '-73.60490'), ('Old Westbury', 4228, '40.78630', '-73.59620'), ('Oyster Bay', 6826, '40.86860', '-73.53310'), ('Oyster Bay Cove', 2262, '40.85920', '-73.50440'), ('Plainedge', 9195, '40.72440', '-73.47780'), ('Plainview', 25637, '40.78330', '-73.47260'), ('Plandome', 1272, '40.80750', '-73.70040'), ('Port Washington', 15215, '40.82720', '-73.68030'), ('Rockville Centre', 24568, '40.66380', '-73.63830'), ('Roosevelt', 15854, '40.67960', '-73.58390'), ('Roslyn', 2570, '40.79960', '-73.64880'), ('Roslyn Heights', 6295, '40.77880', '-73.64060'), ('Russell Gardens', 1074, '40.78130', '-73.72540'), ('Sands Point', 2786, '40.86000', '-73.71000'), ('Sea Cliff', 5066, '40.85000', '-73.64000'), ('Seaford', 15791, '40.66780', '-73.49300'), ('Searingtown', 5034, '40.77010', '-73.66010'), ('Syosset', 18544, '40.81540', '-73.50280'), ('Thomaston', 2607, '40.78800', '-73.71450'), ('Uniondale', 23011, '40.70220', '-73.59150'), ('Upper Brookville', 1801, '40.84410', '-73.56490'), ('Valley Stream', 36368, '40.66450', '-73.70520'), ('Wantagh', 18971, '40.66770', '-73.51080'), ('Westbury', 14263, '40.75970', '-73.58890'), ('West Hempstead', 18713, '40.69530', '-73.65110'), ('Woodbury', 9010, '40.81490', '-73.47030'), ('Woodmere', 16447, '40.63790', '-73.72180')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC061': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Battery Park', 33397, '40.70900', '-74.00600'), ('Greenwich Village', 12385, '40.75090', '-73.99750'), ('Harlem', 8008278, '40.82400', '-73.93750'), ('Midtown Manhattan', 8268, '40.77000', '-73.96750'), ('Morningside Height', 35461, '40.83300', '-73.96050'), ('New York', 0, '40.78232', '-73.96542'), ('Washington Heights', 8008278, '40.85000', '-73.93000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC061': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Battery Park', 33397, '40.70900', '-74.00600'), ('Greenwich Village', 12385, '40.75090', '-73.99750'), ('Harlem', 8008278, '40.82400', '-73.93750'), ('Midtown Manhattan', 8268, '40.77000', '-73.96750'), ('Morningside Height', 35461, '40.83300', '-73.96050'), ('New York', 0, '40.78232', '-73.96542'), ('Washington Heights', 8008278, '40.85000', '-73.93000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC063': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Barker', 577, '43.32740', '-78.55380'), ('Gasport', 1248, '43.19540', '-78.57720'), ('Lewiston', 2781, '43.17160', '-79.04080'), ('Lockport', 22279, '43.16970', '-78.69630'), ('Middleport', 1917, '43.21170', '-78.47600'), ('Newfane', 3129, '43.28800', '-78.69930'), ('Niagara Falls', 55593, '43.09110', '-79.01620'), ('North Tonawanda', 33262, '43.04380', '-78.86590'), ('Olcott', 1156, '43.33530', '-78.71230'), ('Ransomville', 1488, '43.23780', '-78.90910'), ('Rapids', 1356, '43.10130', '-78.64140'), ('Wilson', 1213, '43.31070', '-78.82690'), ('Youngstown', 1957, '43.24870', '-79.04280')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC065': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alder Creek', 531, '43.41670', '-75.21670'), ('Augusta', 698, '42.96670', '-75.51670'), ('Ava', 305, '43.41670', '-75.48330'), ('Barneveld', 332, '43.27400', '-75.18910'), ('Barnveld', 332, '43.26670', '-75.18330'), ('Blossvale', 1071, '43.28330', '-75.65000'), ('Boonville', 2138, '43.48080', '-75.33010'), ('Bridgewater', 579, '42.87770', '-75.25020'), ('Camden', 2330, '43.33630', '-75.74760'), ('Chadwicks', 1886, '43.03330', '-75.28330'), ('Clark Mills', 1424, '43.08420', '-75.37660'), ('Clayville', 445, '42.97420', '-75.24980'), ('Clinton', 1952, '43.04890', '-75.37870'), ('Colemans', 1459, '43.13330', '-75.35000'), ('Deerfield', 60651, '43.11670', '-75.21670'), ('Delta Lake', 34950, '43.28330', '-75.45000'), ('Florence', 2330, '43.43330', '-75.75000'), ('Floyd', 1459, '43.21670', '-75.35000'), ('Forestport', 2138, '43.45000', '-75.21670'), ('Frenchville', 461, '43.33330', '-75.36670'), ('Glenmore', 2330, '43.36670', '-75.61670'), ('Griffiss AFB', 34950, '43.23330', '-75.41670'), ('Hawkinsville', 2138, '43.50000', '-75.26670'), ('Hinckley', 330, '43.31670', '-75.11670'), ('Holland Patent', 461, '43.24180', '-75.25740'), ('Hubbard Corners', 1721, '42.96670', '-75.33330'), ('Jewell', 758, '43.23330', '-75.81670'), ('Kirkland', 1424, '43.08330', '-75.38330'), ('Lee', 34950, '43.28330', '-75.58330'), ('Maynard', 2675, '43.13330', '-75.26670'), ('New Hartford', 1886, '43.07110', '-75.28960'), ('New London', 34950, '43.20000', '-75.60000'), ('New York Mills', 3191, '43.10030', '-75.29320'), ('North Western', 2138, '43.35000', '-75.36670'), ('Oneida Castle', 627, '43.08390', '-75.63230'), ('Oriskany', 1459, '43.15590', '-75.33280'), ('Oriskany Falls', 698, '42.93800', '-75.46330'), ('Paris', 445, '43.00000', '-75.31670'), ('Point Rock', 34950, '43.38330', '-75.55000'), ('Prospect', 330, '43.30420', '-75.15280'), ('Remsen', 531, '43.32750', '-75.18710'), ('Rome', 34950, '43.22550', '-75.48930'), ('Sauquoit', 445, '43.00000', '-75.25000'), ('Sherrill', 3147, '43.07000', '-75.60000'), ('Steuben', 461, '43.31670', '-75.28330'), ('Stittville', 461, '43.21670', '-75.28330'), ('Stockwell', 1721, '42.88330', '-75.40000'), ('Stokes Corner', 34950, '43.30000', '-75.46670'), ('Sylvan Beach', 1071, '43.20660', '-75.72550'), ('Taberg', 2330, '43.30000', '-75.61670'), ('Trenton', 332, '43.28330', '-75.18330'), ('Trenton Falls', 332, '43.26670', '-75.16670'), ('Utica', 60651, '43.09690', '-75.22840'), ('Vernon', 1155, '43.08030', '-75.53840'), ('Vernon Center', 1155, '43.05000', '-75.51670'), ('Verona', 3147, '43.13330', '-75.58330'), ('Verona Beach', 1071, '43.20000', '-75.73330'), ('Verona Mills', 34950, '43.20000', '-75.56670'), ('Vienna', 1071, '43.23330', '-75.71670'), ('Waterville', 1721, '42.93100', '-75.38130'), ('Westernville', 34950, '43.31670', '-75.38330'), ('Westmoreland', 1424, '43.11670', '-75.41670'), ('Whitesboro', 3943, '43.12380', '-75.29700'), ('Woodgate', 2138, '43.51670', '-75.15000'), ('Yorkville', 2675, '43.11170', '-75.27390')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC067': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Amboy', 1249, '43.06670', '-76.28330'), ('Apulia', 924, '42.81670', '-76.05000'), ('Baldwinsville', 7053, '43.15640', '-76.33380'), ('Bayberry', 2505, '43.15000', '-76.21670'), ('Bennetts Corners', 1826, '43.03330', '-76.36670'), ('Brewerton', 3453, '43.23550', '-76.14180'), ('Bridgeport', 1665, '43.15440', '-75.97520'), ('Camillus', 1249, '43.03930', '-76.30820'), ('Cedarvale', 10795, '42.96670', '-76.23330'), ('Cicero', 6862, '43.18330', '-76.11670'), ('Clay', 3453, '43.18330', '-76.18330'), ('De Witt', 8244, '43.03850', '-76.07340'), ('East Syracuse', 3178, '43.06370', '-76.06980'), ('Elbridge', 1103, '43.03420', '-76.44360'), ('Euclid', 906, '43.18330', '-76.21670'), ('Fabius', 355, '42.83550', '-75.98550'), ('Fairmount', 10795, '43.04060', '-76.24720'), ('Fayetteville', 4190, '43.03010', '-75.99780'), ('Ionia', 7053, '43.10000', '-76.38330'), ('Jacks Reef', 1314, '43.10000', '-76.43330'), ('Jamesville', 4593, '42.98330', '-76.06670'), ('Jordan', 1314, '43.06570', '-76.47330'), ('Kirkville', 3348, '43.06670', '-75.96670'), ('La Fayette', 924, '42.88330', '-76.10000'), ('Lakeland', 10795, '43.08330', '-76.25000'), ('Liverpool', 2505, '43.10590', '-76.20990'), ('Lower South Bay', 3453, '43.20000', '-76.06670'), ('Lyncourt', 4268, '43.08140', '-76.12620'), ('Lyndon', 4593, '43.02780', '-76.04060'), ('Lysander', 350, '43.21670', '-76.46670'), ('Manlius', 4819, '43.00090', '-75.98250'), ('Marcellus', 1826, '42.98410', '-76.34000'), ('Marietta', 1826, '42.91670', '-76.31670'), ('Marysville', 2616, '42.98330', '-76.43330'), ('Mattydale', 6367, '43.09940', '-76.14590'), ('Memphis', 1103, '43.08330', '-76.38330'), ('Minoa', 3348, '43.07540', '-76.01040'), ('Nedrow', 2265, '42.98330', '-76.13330'), ('North Syracuse', 6862, '43.13230', '-76.13020'), ('Onondaga', 5166, '43.00000', '-76.18330'), ('Oran', 4819, '42.98330', '-75.91670'), ('Otisco', 924, '42.86670', '-76.20000'), ('Owasco', 2359, '42.85000', '-76.45000'), ('Plainville', 350, '43.16670', '-76.45000'), ('Pompey', 355, '42.90000', '-76.01670'), ('Seneca Knolls', 2138, '43.13330', '-76.30000'), ('Skaneateles', 2616, '42.94500', '-76.42550'), ('Solvay', 6845, '43.05830', '-76.21200'), ('Syracuse', 147306, '43.04110', '-76.14410'), ('Taunton', 5166, '43.03330', '-76.21670'), ('Tully', 924, '42.79790', '-76.10800'), ('Van Buren', 3945, '43.11670', '-76.31670'), ('Vesper', 924, '42.81670', '-76.16670'), ('Village Green', 3945, '43.13330', '-76.31340'), ('Warners', 1249, '43.08330', '-76.33330'), ('Watervale', 4819, '42.95000', '-75.96670'), ('Westvale', 5166, '43.04180', '-76.21230'), ('Woodard', 2505, '43.15000', '-76.20000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC069': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Canandaigua', 11264, '42.88900', '-77.28070'), ('Clifton Springs', 2223, '42.95970', '-77.13340'), ('East Bloomfield', 541, '42.89710', '-77.43380'), ('Geneva', 13617, '42.86530', '-76.98350'), ('Holcomb', 1267, '42.90020', '-77.41830'), ('Manchester', 1475, '42.96860', '-77.23160'), ('Naples', 1072, '42.61690', '-77.40190'), ('Phelps', 1969, '42.95830', '-77.06260'), ('Shortsville', 1320, '42.95610', '-77.22230'), ('Victor', 2433, '42.98260', '-77.41170')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC071': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Balmville', 3339, '41.52680', '-74.02350'), ('Central Valley', 1857, '41.32890', '-74.12730'), ('Chester', 3445, '41.35720', '-74.27620'), ('Cornwall On Hudson', 3058, '41.43870', '-74.01730'), ('Firthcliffe', 4970, '41.44000', '-74.03420'), ('Florida', 2571, '41.33030', '-74.35430'), ('Fort Montgomery', 1418, '41.33760', '-73.98770'), ('Gardnertown', 4533, '41.53410', '-74.05990'), ('Goshen', 5676, '41.40110', '-74.32750'), ('Greenwood Lake', 3411, '41.22200', '-74.28900'), ('Harriman', 2252, '41.30890', '-74.14500'), ('Highland Falls', 3678, '41.36270', '-73.96920'), ('Highland Mills', 3468, '41.35190', '-74.12680'), ('Kiryas Joel', 13138, '41.33990', '-74.16760'), ('Maybrook', 3084, '41.48570', '-74.21430'), ('Middletown', 25388, '41.44570', '-74.42250'), ('Monroe', 7780, '41.32060', '-74.18630'), ('Montgomery', 3636, '41.52200', '-74.23820'), ('Newburgh', 28259, '41.50310', '-74.02010'), ('New Windsor', 9077, '41.47010', '-74.02720'), ('Orange Lake', 6085, '41.53180', '-74.09420'), ('Otisville', 989, '41.47060', '-74.53990'), ('Pine Bush', 1539, '41.60890', '-74.29740'), ('Port Jervis', 8860, '41.37780', '-74.69130'), ('Scotchtown', 8954, '41.47620', '-74.36860'), ('Tuxedo Park', 731, '41.20410', '-74.20720'), ('Unionville', 536, '41.30200', '-74.56260'), ('Vails Gate', 3319, '41.45790', '-74.05390'), ('Walden', 6164, '41.55970', '-74.18860'), ('Warwick', 6412, '41.25620', '-74.35550'), ('Washingtonville', 5851, '41.42970', '-74.15760'), ('West Point', 8024, '41.36230', '-74.02730')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC073': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Albion', 7438, '43.24590', '-78.18930'), ('Holley', 1802, '43.22420', '-78.02810'), ('Lyndonville', 862, '43.32190', '-78.38700'), ('Medina', 6415, '43.21980', '-78.38800')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC075': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Altmar', 351, '43.51060', '-76.00500'), ('Central Square', 1646, '43.28670', '-76.14080'), ('Cleveland', 758, '43.23920', '-75.88500'), ('Constantia', 1107, '43.25390', '-76.00190'), ('Fulton', 11855, '43.31680', '-76.41560'), ('Hannibal', 542, '43.31780', '-76.57760'), ('Lacona', 590, '43.64370', '-76.06890'), ('Mexico', 1572, '43.46410', '-76.23500'), ('Minetto', 1086, '43.39900', '-76.48150'), ('Oswego', 17954, '43.45840', '-76.50290'), ('Parish', 512, '43.40430', '-76.12890'), ('Phoenix', 2251, '43.23180', '-76.29730'), ('Pulaski', 2398, '43.56530', '-76.12820'), ('Sand Ridge', 906, '43.25590', '-76.23040'), ('Sandy Creek', 789, '43.64290', '-76.08610')], 'partOfState': 'central', 'wfo': 'BUF'}, +'NYC077': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bowerstown', 2032, '42.68330', '-74.90000'), ('Burlington', 862, '42.71670', '-75.13330'), ('Cherry Valley', 592, '42.80000', '-74.75000'), ('Colliersville', 13292, '42.48330', '-74.98330'), ('Cooperstown', 2032, '42.69970', '-74.93070'), ('Cooperstown Jct', 511, '42.50000', '-74.95000'), ('East Springfield', 592, '42.83330', '-74.80000'), ('Edmeston', 1129, '42.70000', '-75.23330'), ('Elk Creek', 573, '42.60000', '-74.83330'), ('Emmons', 13292, '42.46670', '-75.01670'), ('Exeter Center', 1255, '42.78330', '-75.06670'), ('Gilbertsville', 375, '42.46940', '-75.32140'), ('Hartwick', 511, '42.65000', '-75.05000'), ('Hyde Park', 2032, '42.66670', '-74.95000'), ('Index', 2032, '42.66535', '-74.95900'), ('Lambs Corners', 1129, '42.68330', '-75.31670'), ('Lathams Corners', 375, '42.46670', '-75.40000'), ('Laurens', 277, '42.53140', '-75.08860'), ('Leonardsville', 579, '42.80000', '-75.23330'), ('Maryland', 573, '42.53330', '-74.88330'), ('Middlefield', 2032, '42.68330', '-74.83330'), ('Milford', 511, '42.59000', '-74.94730'), ('Morris', 591, '42.54800', '-75.24550'), ('Mt Vision', 277, '42.56670', '-75.05000'), ('New Lisbon', 591, '42.58330', '-75.18330'), ('Oaksville', 2032, '42.73330', '-75.00000'), ('Oneonta', 13292, '42.45470', '-75.06730'), ('Otego', 1052, '42.39160', '-75.17840'), ('Pittsfield', 1129, '42.63330', '-75.26670'), ('Portlandville', 511, '42.53330', '-74.96670'), ('Richfield Springs', 1255, '42.85440', '-74.98620'), ('Schenevus', 573, '42.54730', '-74.82460'), ('South Edmeston', 1129, '42.68330', '-75.30000'), ('South New Berlin', 375, '42.53330', '-75.35000'), ('Springfield', 592, '42.83330', '-74.85000'), ('Toddsville', 2032, '42.68330', '-74.95000'), ('Unadilla', 1127, '42.32700', '-75.31670'), ('Unadilla Forks', 579, '42.83330', '-75.23330'), ('Wells Bridge', 1052, '42.36670', '-75.25000'), ('West End', 1813, '42.46860', '-75.09410'), ('Westford', 573, '42.65000', '-74.78330'), ('Westville', 511, '42.63330', '-74.90000'), ('Worcester', 573, '42.58330', '-74.75000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC079': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Brewster', 2162, '41.39680', '-73.61510'), ('Brewster Hill', 2226, '41.42380', '-73.60480'), ('Carmel', 4800, '41.41450', '-73.68380'), ('Cold Spring', 1983, '41.41880', '-73.95490'), ('Fahnestock State Park', 1735, '41.45000', '-73.83000'), ('Lake Carmel', 8663, '41.46120', '-73.67030'), ('Mahopac', 8478, '41.36950', '-73.74160'), ('Peach Lake', 1671, '41.36740', '-73.57840'), ('Putnam Lake', 3855, '41.47770', '-73.55000'), ('Putnam Valley', 14891, '41.34000', '-73.87000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC081': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Astoria', 8008278, '40.78000', '-73.91000'), ('Flushing', 8008278, '40.77000', '-73.84000'), ('Howard Beach', 8008278, '40.66000', '-73.84000'), ('Jackson Heights', 8008278, '40.77000', '-73.88000'), ('Jamaica', 8008278, '40.71000', '-73.79000'), ('Kennedy Airport', 8008278, '40.65750', '-73.77800'), ('Ozone Park', 8008278, '40.69000', '-73.85000'), ('Triborough Bridge', 8008278, '40.79400', '-73.90750'), ('Whitestone', 8008278, '40.79000', '-73.81000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC081': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Astoria', 8008278, '40.78000', '-73.91000'), ('Flushing', 8008278, '40.77000', '-73.84000'), ('Howard Beach', 8008278, '40.66000', '-73.84000'), ('Jackson Heights', 8008278, '40.77000', '-73.88000'), ('Jamaica', 8008278, '40.71000', '-73.79000'), ('Kennedy Airport', 8008278, '40.65750', '-73.77800'), ('Ozone Park', 8008278, '40.69000', '-73.85000'), ('Triborough Bridge', 8008278, '40.79400', '-73.90750'), ('Whitestone', 8008278, '40.79000', '-73.81000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC083': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Averill Park', 1517, '42.63500', '-73.55340'), ('Berlin', 4791, '42.70000', '-73.38000'), ('Castleton-On-hudson', 1619, '42.53230', '-73.75080'), ('Eagle Bridge', 3436, '42.94330', '-73.39990'), ('East Greenbush', 4085, '42.59440', '-73.70320'), ('Grafton', 1024, '42.76720', '-73.43670'), ('Hampton Manor', 2525, '42.62080', '-73.72890'), ('Hoosick Falls', 3436, '42.90050', '-73.35040'), ('Nassau', 1161, '42.51370', '-73.61160'), ('Poestenkill', 1024, '42.69360', '-73.56450'), ('Rensselaer', 7761, '42.64440', '-73.73530'), ('Schaghticoke', 676, '42.89950', '-73.58660'), ('Stephentown', 1517, '42.54950', '-73.44330'), ('Troy', 49170, '42.73430', '-73.67550'), ('Valley Falls', 491, '42.90080', '-73.56290'), ('West Sand Lake', 2439, '42.63870', '-73.60660'), ('Wyantskill', 3329, '42.68910', '-73.64930')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC085': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Annadale', 8008278, '40.55000', '-74.16000'), ('Grasmere', 8008278, '40.61000', '-74.07000'), ('Heartland Village', 8008278, '40.58500', '-74.17000'), ('Huguenot', 8008278, '40.54000', '-74.17250'), ('Hylan Blvd', 8008278, '40.59000', '-74.08000'), ('New Dorp', 8008278, '40.59000', '-74.11000'), ('Todt Hill', 8008278, '40.61000', '-74.13000'), ('Tompkinsville', 8008278, '40.63000', '-74.07000'), ('Tottenville', 41967, '40.52000', '-74.23000'), ('West Shore Express', 8008278, '40.60000', '-74.17000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC085': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Annadale', 8008278, '40.55000', '-74.16000'), ('Grasmere', 8008278, '40.61000', '-74.07000'), ('Heartland Village', 8008278, '40.58500', '-74.17000'), ('Huguenot', 8008278, '40.54000', '-74.17250'), ('Hylan Blvd', 8008278, '40.59000', '-74.08000'), ('New Dorp', 8008278, '40.59000', '-74.11000'), ('Todt Hill', 8008278, '40.61000', '-74.13000'), ('Tompkinsville', 8008278, '40.63000', '-74.07000'), ('Tottenville', 41967, '40.52000', '-74.23000'), ('West Shore Express', 8008278, '40.60000', '-74.17000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC087': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Airmont', 7799, '41.09910', '-74.10040'), ('Bardonia', 4367, '41.11120', '-73.98140'), ('Blauvelt', 5207, '41.06800', '-73.95530'), ('Chestnut Ridge', 7829, '41.08190', '-74.05190'), ('Congers', 8303, '41.14790', '-73.94670'), ('Grand View-On-huds', 284, '41.05840', '-73.90740'), ('Haverstraw', 10117, '41.18530', '-73.95500'), ('Hillburn', 881, '41.12720', '-74.17040'), ('Hillcrest', 7106, '41.12960', '-74.03590'), ('Monsey', 14504, '41.11810', '-74.06770'), ('Montebello', 3688, '41.12880', '-74.11810'), ('Mount Ivy', 6536, '41.19290', '-74.02870'), ('Nanuet', 16707, '41.09520', '-74.01600'), ('New City', 34038, '41.15380', '-73.99180'), ('New Hempstead', 4200, '41.14960', '-74.04970'), ('New Square', 4624, '41.13970', '-74.02860'), ('Nyack', 6737, '41.09010', '-73.91500'), ('Orangeburg', 3388, '41.05000', '-73.94560'), ('Pearl River', 15553, '41.06050', '-74.00320'), ('Piermont', 2607, '41.03960', '-73.91550'), ('Pomona', 2726, '41.18980', '-74.05370'), ('Sloatsburg', 3117, '41.16060', '-74.19120'), ('South Nyack', 3473, '41.07770', '-73.91710'), ('Spring Valley', 21802, '41.11440', '-74.04920'), ('Stony Point', 11744, '41.22930', '-73.99750'), ('Suffern', 11006, '41.11340', '-74.14400'), ('Tappan', 6757, '41.02580', '-73.95160'), ('Thiells', 4758, '41.20760', '-74.01050'), ('Upper Nyack', 1863, '41.11450', '-73.91450'), ('Valley Cottage', 9269, '41.11550', '-73.94380'), ('Viola', 5931, '41.12940', '-74.08250'), ('Wesley Hills', 4848, '41.15760', '-74.07930'), ('West Haverstraw', 10295, '41.20640', '-73.98750'), ('West Nyack', 3282, '41.09100', '-73.96920')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC089': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Balmat', 0, '44.24830', '-75.39530'), ('Brasher Center', 0, '44.86720', '-74.78420'), ('Brasher Falls', 1140, '44.80490', '-74.79370'), ('Canton', 5882, '44.59660', '-75.17250'), ('Carry Falls Reservoir', 0, '44.44000', '-74.73000'), ('Childwold', 3935, '44.28000', '-74.67000'), ('Chipman', 0, '44.78110', '-75.19640'), ('Chippewa Bay', 0, '44.44200', '-75.75690'), ('Colton', 0, '44.55310', '-74.94000'), ('Conifer', 0, '44.21670', '-74.61330'), ('Converse', 0, '44.68030', '-74.82500'), ('Cranberry Lake', 860, '44.22000', '-74.83000'), ('Degrasse', 465, '44.35000', '-75.08000'), ('De Kalb', 274, '44.50000', '-75.35000'), ('De Kalb Junction', 0, '44.50506', '-75.27382'), ('De Peyster', 0, '44.55256', '-75.43550'), ('East De Kalb', 0, '44.48250', '-75.30080'), ('Edwards', 465, '44.32360', '-75.25330'), ('Edwardsville', 0, '44.52228', '-75.59301'), ('Eisenhower Lock', 0, '44.97920', '-74.85000'), ('Fine', 860, '44.25000', '-75.13000'), ('Fowler', 0, '44.27860', '-75.38670'), ('Fullerville', 0, '44.26810', '-75.34220'), ('Gale', 0, '44.26750', '-74.63140'), ('Gouverneur', 4263, '44.33660', '-75.46620'), ('Hammond', 302, '44.44720', '-75.69420'), ('Hannawa Falls', 0, '44.61220', '-74.97140'), ('Helena', 1140, '44.92000', '-74.72000'), ('Hermon', 402, '44.46840', '-75.23270'), ('Heuvelton', 804, '44.61710', '-75.40440'), ('Hopkinton', 1140, '44.68000', '-74.72000'), ('Horseshoe Lake', 0, '44.13470', '-74.63220'), ('Ironton', 0, '44.89830', '-74.68580'), ('Lake Ozonia', 0, '44.57860', '-74.59030'), ('Lawrenceville', 1140, '44.77000', '-74.65000'), ('Lisbon', 0, '44.72720', '-75.32140'), ('Louisville', 1334, '44.90000', '-75.03000'), ('Madrid', 923, '44.75000', '-75.15000'), ('Massena', 11209, '44.92850', '-74.89340'), ('Morley', 0, '44.66500', '-75.19920'), ('Morristown', 456, '44.58320', '-75.64510'), ('Newton Falls', 0, '44.21060', '-74.98940'), ('Nicholville', 0, '44.69720', '-74.65970'), ('Norfolk', 1334, '44.80010', '-74.98600'), ('North Gouverneur', 0, '44.42117', '-75.46994'), ('North Hammond', 0, '44.48339', '-75.72940'), ('North Lawrence', 0, '44.80500', '-74.67530'), ('North Russell', 0, '44.50250', '-75.12310'), ('North Stockholm', 0, '44.76940', '-74.93500'), ('Norwood', 1685, '44.74840', '-74.99760'), ('Ogdensburg', 12364, '44.70700', '-75.47040'), ('Oswegatchie', 0, '44.18280', '-75.07060'), ('Parishville', 9425, '44.63000', '-74.82000'), ('Piercefield', 3935, '44.23000', '-74.57000'), ('Pierrepont', 0, '44.54220', '-75.01220'), ('Potsdam', 9425, '44.66810', '-74.98560'), ('Pyrites', 0, '44.51470', '-75.18610'), ('Raymondville', 1334, '44.83000', '-74.97000'), ('Rensselaer Falls', 337, '44.59080', '-75.32020'), ('Richville', 274, '44.41530', '-75.39090'), ('Rooseveltown', 0, '44.97280', '-74.73140'), ('Russell', 0, '44.42940', '-75.15030'), ('Schermerhorn Landing', 0, '44.41283', '-75.79051'), ('Shurtleff', 0, '44.25530', '-74.74500'), ('South Colton', 9425, '44.50000', '-74.88000'), ('South Edwards', 0, '44.26750', '-75.20750'), ('South Hammond', 0, '44.39922', '-75.73301'), ('South Russell', 0, '44.37140', '-75.12780'), ('Stark', 0, '44.45030', '-74.78190'), ('Star Lake', 860, '44.16020', '-75.03750'), ('Stockholm Center', 0, '44.75940', '-74.83190'), ('Talcville', 0, '44.30970', '-75.30640'), ('Wanakena', 860, '44.13000', '-74.92000'), ('West Fowler', 0, '44.26780', '-75.45190'), ('West Pierrepont', 0, '44.49250', '-75.06000'), ('West Potsdam', 0, '44.68690', '-75.09000'), ('West Stockholm', 0, '44.71360', '-74.90110'), ('Winthrop', 0, '44.79470', '-74.78720')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYC091': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ballston Spa', 5556, '43.00600', '-73.85150'), ('Burnt Hills', 6064, '42.91180', '-73.90050'), ('Clifton Park', 2287, '42.85480', '-73.80850'), ('Corinth', 2474, '43.24550', '-73.83070'), ('Day Center', 1139, '43.30500', '-74.01720'), ('Edinburg', 1139, '43.22620', '-74.09250'), ('Galway', 214, '43.01880', '-74.03180'), ('Gansevoort', 3141, '43.19600', '-73.64780'), ('Mechanicville', 5019, '42.90400', '-73.69010'), ('Milton', 2692, '43.03350', '-73.85300'), ('Porter Corners', 2474, '43.14750', '-73.88670'), ('Rock City Falls', 2692, '43.06150', '-73.92130'), ('Round Lake', 604, '42.93720', '-73.79610'), ('Saratoga Lake', 26186, '43.03170', '-73.73830'), ('Saratoga Springs', 26186, '43.06760', '-73.77880'), ('Schuylerville', 1197, '43.10200', '-73.59060'), ('South Glens Falls', 3368, '43.29340', '-73.63530'), ('Stillwater', 1644, '42.95000', '-73.64490'), ('The Saratoga Battllefield', 1644, '43.00250', '-73.64370'), ('Victory', 1197, '43.09360', '-73.59240'), ('Waterford', 2204, '42.79180', '-73.67940')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC093': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alplaus', 6064, '42.85570', '-73.90250'), ('Delanson', 385, '42.74770', '-74.18500'), ('Duanesburg', 339, '42.76220', '-74.13350'), ('East Glenville', 6064, '42.86010', '-73.91590'), ('Mariaville', 710, '42.82930', '-74.13770'), ('Niskayuna', 4892, '42.81710', '-73.89800'), ('Rotterdam', 20536, '42.77840', '-73.95450'), ('Rotterdam Junction', 918, '42.87420', '-74.04600'), ('Schenectady', 61821, '42.80180', '-73.92810'), ('Scotia', 7957, '42.83200', '-73.96080')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC095': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Breakabeen', 1398, '42.52970', '-74.40970'), ('Central Bridge', 1030, '42.70880', '-74.33620'), ('Cobleskill', 4533, '42.67910', '-74.48610'), ('Esperance', 380, '42.76440', '-74.25770'), ('Gilboa', 1398, '42.39780', '-74.39780'), ('Jefferson', 1265, '42.48020', '-74.61250'), ('Livingstonville', 1398, '42.48800', '-74.26930'), ('Middleburgh', 1398, '42.59890', '-74.32990'), ('North Blenheim', 1398, '42.47350', '-74.43750'), ('Richmondville', 786, '42.63320', '-74.56450'), ('Schoharie', 1030, '42.66670', '-74.31290'), ('Sharon Springs', 547, '42.79490', '-74.61750'), ('Summit', 786, '42.58000', '-74.58650')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC097': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alpine', 617, '42.31670', '-76.71670'), ('Altay', 1690, '42.43330', '-77.01670'), ('Beaver Dams', 297, '42.28330', '-76.96670'), ('Bennettsburg', 357, '42.43330', '-76.80000'), ('Bradford', 731, '42.36670', '-77.10000'), ('Burdett', 357, '42.41710', '-76.84730'), ('Catharine', 617, '42.31670', '-76.78330'), ('Cayuta', 617, '42.28330', '-76.70000'), ('East Steamburg', 674, '42.53330', '-76.76670'), ('Hector', 357, '42.50000', '-76.86670'), ('Logan', 357, '42.48330', '-76.83330'), ('Mecklenburg', 1581, '42.46670', '-76.70000'), ('Monterey', 1842, '42.30000', '-77.05000'), ('Montour Falls', 1797, '42.35020', '-76.84940'), ('Moreland', 1797, '42.30000', '-76.90000'), ('Odessa', 617, '42.31110', '-76.81750'), ('Perry City', 1581, '42.50000', '-76.70000'), ('Reading Center', 2149, '42.43330', '-76.93330'), ('Reynoldsville', 357, '42.46670', '-76.76670'), ('Searsburg', 1581, '42.53330', '-76.73330'), ('Smith Valley', 357, '42.41670', '-76.75000'), ('Townsend', 2149, '42.35000', '-76.95000'), ('Watkins Glen', 2149, '42.38030', '-76.86780'), ('Wayne', 1690, '42.46670', '-77.10000'), ('Wedgewood', 1797, '42.35000', '-76.88330'), ('Weston', 1690, '42.41670', '-77.06670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC099': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Border City', 13617, '42.88330', '-76.95000'), ('Canoga', 1074, '42.85000', '-76.73330'), ('Caywood', 338, '42.56670', '-76.85000'), ('Covert', 1581, '42.58330', '-76.66670'), ('Dublin', 2269, '43.00000', '-76.91670'), ('East Varick', 720, '42.76670', '-76.76670'), ('Fayette', 6861, '42.81670', '-76.80000'), ('Hayts Corners', 612, '42.70000', '-76.78330'), ('Interlaken', 674, '42.61870', '-76.72470'), ('Kelly Corners', 674, '42.60000', '-76.75000'), ('Kendaia', 612, '42.75000', '-76.88330'), ('Kidders', 674, '42.65000', '-76.68330'), ('Lehigh Vly Jct', 509, '42.95000', '-76.76670'), ('Lodi', 338, '42.61330', '-76.82250'), ('Lodi Station', 338, '42.61670', '-76.85000'), ('Mac Dougall', 5111, '42.80000', '-76.86670'), ('Magee', 5111, '42.96670', '-76.83330'), ('Montezuma', 1297, '43.01670', '-76.71670'), ('Ovid', 612, '42.67530', '-76.82160'), ('Packwood Corners', 5111, '42.90000', '-76.90000'), ('Romulus', 612, '42.75000', '-76.83330'), ('Rose Hill', 5111, '42.85000', '-76.90000'), ('Seneca Falls', 6861, '42.90940', '-76.79580'), ('Sheldrake Spgs', 674, '42.66670', '-76.75000'), ('Townsendville', 674, '42.56670', '-76.76670'), ('Tyre', 6861, '42.98330', '-76.80000'), ('Waterloo', 5111, '42.90450', '-76.85940'), ('Willard', 612, '42.68330', '-76.86670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC101': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Addison', 1797, '42.10580', '-77.23360'), ('Arkport', 832, '42.39190', '-77.69650'), ('Atlanta', 854, '42.55000', '-77.48330'), ('Avoca', 1008, '42.40830', '-77.42320'), ('Bath', 5641, '42.33700', '-77.31840'), ('Buena Vista', 2336, '42.30000', '-77.51670'), ('Cameron', 5641, '42.20000', '-77.40000'), ('Cameron Mills', 1797, '42.18330', '-77.36670'), ('Campbell', 822, '42.23330', '-77.20000'), ('Canisteo', 2336, '42.27030', '-77.60510'), ('Caton', 1147, '42.05000', '-77.03330'), ('Cohocton', 854, '42.50000', '-77.49930'), ('Coopers Plains', 3304, '42.18330', '-77.15000'), ('Corning', 10842, '42.14720', '-77.05670'), ('East Corning', 2482, '42.13330', '-76.98330'), ('Erwins', 3304, '42.11670', '-77.15000'), ('Fremont', 851, '42.40000', '-77.63330'), ('Gang Mills', 3304, '42.15360', '-77.13460'), ('Gibson', 10842, '42.15000', '-77.03330'), ('Greenwood', 2336, '42.13330', '-77.65000'), ('Hammondsport', 731, '42.40880', '-77.22310'), ('Hartsville', 461, '42.25000', '-77.70000'), ('Haskinville', 854, '42.41670', '-77.56670'), ('Hornby', 1842, '42.25000', '-77.05000'), ('Hornell', 9019, '42.32440', '-77.66050'), ('Howard', 1008, '42.36670', '-77.51670'), ('Jasper', 589, '42.11670', '-77.50000'), ('Kanona', 1008, '42.38330', '-77.36670'), ('Keuka', 731, '42.48330', '-77.13330'), ('Lindley', 481, '42.03330', '-77.13330'), ('Meads Creek', 1842, '42.26670', '-77.10000'), ('North Cameron', 5641, '42.25000', '-77.36670'), ('North Hornell', 851, '42.34570', '-77.66250'), ('Painted Post', 1842, '42.16290', '-77.09190'), ('Perkinsville', 1893, '42.53330', '-77.63330'), ('Prattsburg', 731, '42.51670', '-77.28330'), ('Pulteney', 731, '42.51670', '-77.16670'), ('Rheims', 731, '42.40000', '-77.25000'), ('Risingville', 822, '42.21670', '-77.31670'), ('Savona', 822, '42.28410', '-77.22320'), ('Sonora', 822, '42.33330', '-77.16670'), ('South Corning', 1147, '42.12400', '-77.03690'), ('South Dansville', 832, '42.46670', '-77.65000'), ('Thurston', 822, '42.21670', '-77.26670'), ('Troupsburg', 1119, '42.05000', '-77.55000'), ('Urbana', 731, '42.45000', '-77.18330'), ('Wayland', 1893, '42.56810', '-77.59210'), ('West Cameron', 5641, '42.23330', '-77.43330'), ('West Greenwood', 1073, '42.15000', '-77.71670'), ('Wheeler', 1008, '42.43330', '-77.33330'), ('Willeyville', 653, '42.03330', '-77.70000'), ('Woodhull', 589, '42.08330', '-77.41670'), ('Young Hickory', 1119, '42.05000', '-77.61670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC103': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Amityville', 9441, '40.66980', '-73.41610'), ('Aquebogue', 2254, '40.93830', '-72.61410'), ('Babylon', 12615, '40.69600', '-73.32710'), ('Bayport', 8662, '40.74780', '-73.05470'), ('Bay Shore', 23852, '40.72640', '-73.25050'), ('Baywood', 7351, '40.75120', '-73.29110'), ('Belle Terre', 832, '40.96230', '-73.06720'), ('Bellport', 2363, '40.75690', '-72.94210'), ('Blue Point', 4407, '40.75030', '-73.03500'), ('Bohemia', 9871, '40.77400', '-73.12130'), ('Brentwood', 53917, '40.78140', '-73.24850'), ('Bridgehampton', 1381, '40.94340', '-72.29910'), ('Brightwaters', 3248, '40.71800', '-73.26590'), ('Brookhaven', 3570, '40.78020', '-72.91300'), ('Brookhaven National Laboratory', 13380, '40.87000', '-72.86000'), ('Calverton', 5704, '40.92390', '-72.76190'), ('Carmans River', 25395, '40.78000', '-72.89000'), ('Centereach', 27285, '40.87080', '-73.08330'), ('Center Moriches', 6655, '40.79920', '-72.79680'), ('Centerport', 5446, '40.90080', '-73.37220'), ('Central Islip', 31950, '40.78540', '-73.19690'), ('Cold Spring Harbor', 4975, '40.86310', '-73.44790'), ('Commack', 36367, '40.84490', '-73.28360'), ('Connectquot River', 3964, '40.76000', '-73.15000'), ('Copiague', 21922, '40.67130', '-73.39200'), ('Coram', 34923, '40.87950', '-73.00450'), ('Cutchogue', 2849, '41.01290', '-72.48620'), ('Deer Park', 28316, '40.76230', '-73.32260'), ('Dix Hills', 26024, '40.80480', '-73.33660'), ('East Farmingdale', 5400, '40.72910', '-73.41730'), ('East Hampton', 1334, '40.95070', '-72.19690'), ('East Hampton Airport', 1381, '40.95000', '-72.28000'), ('East Islip', 14078, '40.72520', '-73.18700'), ('East Moriches', 4550, '40.81010', '-72.76050'), ('East Northport', 20845, '40.87920', '-73.32460'), ('East Patchogue', 20824, '40.76990', '-72.98240'), ('East Quogue', 4265, '40.85310', '-72.57670'), ('Eatons Neck', 1388, '40.95000', '-73.39000'), ('Elwood', 10916, '40.84620', '-73.34210'), ('Farmingville', 16458, '40.84250', '-73.04420'), ('Fishers Island', 289, '41.27000', '-71.99000'), ('Flanders', 3646, '40.91000', '-72.60480'), ('Fort Salonga', 9634, '40.91120', '-73.29440'), ("Gardner's Island", 4950, '41.09000', '-72.09000'), ('Greenlawn', 13286, '40.86310', '-73.36660'), ('Greenport', 2048, '41.10270', '-72.36780'), ('Hampton Bays', 12236, '40.88000', '-72.52440'), ('Hauppauge', 20100, '40.82000', '-73.21270'), ('Head Of The Harbor', 1447, '40.89820', '-73.16280'), ('Hither Hills State', 3851, '41.01000', '-72.01000'), ('Holbrook', 27512, '40.79260', '-73.07080'), ('Holtsville', 17006, '40.81330', '-73.04760'), ('Huntington', 18403, '40.87770', '-73.40790'), ('Huntington Bay', 1496, '40.90400', '-73.41640'), ('Huntington Station', 29910, '40.84490', '-73.40520'), ('Islandia', 3057, '40.80670', '-73.17190'), ('Islip', 20575, '40.73280', '-73.21770'), ('Islip Terrace', 5641, '40.74860', '-73.18690'), ('Jamesport', 1526, '40.94540', '-72.57500'), ('Jericho Turnpike', 10916, '40.84000', '-73.36000'), ('Kings Park', 16146, '40.89070', '-73.24550'), ('Lake Grove', 10250, '40.85800', '-73.11690'), ('Lake Ronkonkoma', 19701, '40.83140', '-73.11090'), ('Laurel', 1188, '40.97530', '-72.55360'), ('Lindenhurst', 27819, '40.68570', '-73.37180'), ('Lloyd Harbor', 3675, '40.91750', '-73.46410'), ('Long Island Express', 27512, '40.82000', '-73.09000'), ('Manorville', 11131, '40.85850', '-72.79400'), ('Mastic', 15436, '40.80200', '-72.84440'), ('Mastic Beach', 11543, '40.76150', '-72.84020'), ('Medford', 21985, '40.82240', '-72.98470'), ('Melville', 14533, '40.78200', '-73.41200'), ('Middle Country Road', 21861, '40.87000', '-73.03000'), ('Middle Island', 9702, '40.88500', '-72.94390'), ('Miller Place', 10580, '40.93250', '-72.98740'), ('Montauk', 3851, '41.04750', '-71.94520'), ('Montauk Highway', 1724, '40.90000', '-72.34000'), ('Montauk Point', 3851, '41.07000', '-71.86000'), ('Mount Sinai', 8734, '40.93840', '-73.01910'), ('Nesconset', 11992, '40.84680', '-73.15240'), ('Nesconset Highway', 27285, '40.89000', '-73.08000'), ('Nissequogue', 1543, '40.90570', '-73.18840'), ('North Bay Shore', 14992, '40.75900', '-73.26100'), ('North Bellport', 9007, '40.78840', '-72.94640'), ('North Haven', 743, '41.02360', '-72.31570'), ('North Patchogue', 7825, '40.78440', '-73.02440'), ('Northport', 7606, '40.90370', '-73.34560'), ('North Sea', 4493, '40.95000', '-72.41000'), ('Oakdale', 8075, '40.73770', '-73.13420'), ('Ocean Beach', 138, '40.64550', '-73.15640'), ('Old Field', 947, '40.96230', '-73.13080'), ('Orient', 709, '41.14000', '-72.30000'), ('Patchogue', 11919, '40.76130', '-73.01940'), ('Peconic', 1081, '41.03900', '-72.46490'), ('Peconic River', 1486, '40.91000', '-72.65000'), ('Plum Island', 3048, '41.18000', '-72.19000'), ('Poquott', 975, '40.95220', '-73.08920'), ('Port Jefferson', 7837, '40.94760', '-73.05900'), ('Port Jefferson Station', 7527, '40.92350', '-73.06770'), ('Quogue', 4265, '40.85000', '-72.59750'), ('Remsenburg-Speonk', 1851, '40.81340', '-72.70580'), ('Ridge', 13380, '40.91020', '-72.88210'), ('Riverhead', 3646, '40.91000', '-72.63000'), ('Robert Moses State Park', 43, '40.63000', '-73.24000'), ('Rocky Point', 8596, '40.95000', '-72.93000'), ('Ronkonkoma', 20029, '40.80350', '-73.12490'), ('Sag Harbor', 2313, '41.00000', '-72.31000'), ('Sagtikos Parkway', 53917, '40.81000', '-73.27000'), ('Saltaire', 43, '40.63800', '-73.19510'), ('Sayville', 16735, '40.74680', '-73.08580'), ('Selden', 21861, '40.86940', '-73.04790'), ('Setauket-East Setauket', 13634, '40.92990', '-73.10250'), ('Shelter Island', 1234, '41.07570', '-72.34280'), ('Shinnecock Hills', 1749, '40.89550', '-72.45640'), ('Shirley', 25395, '40.79520', '-72.87410'), ('Shoreham', 417, '40.95580', '-72.90650'), ('Smithtown', 26901, '40.85710', '-73.21490'), ('Sound Avenue', 801, '40.97000', '-72.61000'), ('Sound Beach', 9807, '40.95530', '-72.96690'), ('Southampton', 3965, '40.88030', '-72.39550'), ('South Huntington', 9465, '40.82080', '-73.39220'), ('Southold', 5465, '41.05980', '-72.42780'), ('Springs', 4950, '41.02090', '-72.15710'), ('St. James', 13268, '40.87640', '-73.15260'), ('Stony Brook', 13727, '40.90790', '-73.12830'), ('Sunken Meadow Park', 16146, '40.89000', '-73.26000'), ('Sunrise Highway', 16735, '40.75000', '-73.09000'), ('Wading River', 6668, '40.94710', '-72.81990'), ('Watermill', 1724, '40.92900', '-72.34820'), ('Westhampton', 2869, '40.83870', '-72.66490'), ('West Hills', 5607, '40.81920', '-73.43170'), ('West Islip', 28907, '40.70890', '-73.29660'), ('West Sayville', 5003, '40.72820', '-73.10570'), ('Wyandanch', 10546, '40.74660', '-73.37720'), ('Yaphank', 5025, '40.83160', '-72.92580')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC105': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Aden', 3975, '41.85000', '-74.68330'), ('Anderson', 3975, '41.90000', '-74.71670'), ('Barryville', 1064, '41.48330', '-74.93330'), ('Beaver Brook', 420, '41.56670', '-74.93330'), ('Bethel', 420, '41.68330', '-74.88330'), ('Bloomingburg', 353, '41.55610', '-74.44150'), ('Bradley', 3975, '41.81670', '-74.70000'), ('Bridgeville', 6512, '41.65000', '-74.66670'), ('Briscoe', 420, '41.76670', '-74.88330'), ('Callicoon', 216, '41.76670', '-75.05000'), ('Callicoon Center', 420, '41.83691', '-74.94700'), ('Cochecton', 420, '41.70000', '-75.05000'), ('Cochecton Center', 420, '41.65483', '-74.98300'), ('Debruce', 1355, '41.91670', '-74.73330'), ('Eldred', 1064, '41.53330', '-74.90000'), ('Fallsburg', 2061, '41.73330', '-74.61670'), ('Ferndale', 3975, '41.76670', '-74.73330'), ('Forrestburg', 6512, '41.55000', '-74.76670'), ('Fosterdale', 420, '41.70000', '-74.98330'), ('Fremont', 420, '41.83330', '-75.05000'), ('Glen Spey', 1064, '41.46670', '-74.81670'), ('Glen Wild', 902, '41.65000', '-74.60000'), ('Grahamsville', 902, '41.85000', '-74.56670'), ('Harris', 6512, '41.71670', '-74.73330'), ('Hartwood', 6512, '41.53330', '-74.68330'), ('Hasbrouck', 2061, '41.78330', '-74.61670'), ('Haven', 989, '41.53330', '-74.53330'), ('Hazel', 1355, '41.91670', '-74.86670'), ('Highland Lake', 1064, '41.51670', '-74.86670'), ('Highview', 1234, '41.56670', '-74.46670'), ('Hortonville', 420, '41.76670', '-75.03330'), ('Hurleyville', 2061, '41.73330', '-74.68330'), ('Jeffersonville', 420, '41.77940', '-74.93260'), ('Joscelyn', 1355, '41.95000', '-74.85000'), ('Kenoza Lake', 420, '41.73330', '-74.96670'), ('Kiamesha', 2061, '41.68330', '-74.65000'), ('Lava', 420, '41.61670', '-75.01670'), ('Lewbeach', 1355, '42.00000', '-74.78330'), ('Liberty', 3975, '41.79750', '-74.74640'), ('Livingston Manor', 1355, '41.89510', '-74.82650'), ('Loch Sheldrake', 2061, '41.76670', '-74.66670'), ('Maplewood', 6512, '41.66670', '-74.75000'), ('Mongaup Valley', 6512, '41.66670', '-74.78330'), ('Monticello', 6512, '41.65250', '-74.68800'), ('Mountain Dale', 902, '41.68330', '-74.53330'), ('Mt Prosper', 1234, '41.60000', '-74.53330'), ('Mt Vernon', 1234, '41.65000', '-74.50000'), ('Narrowsburg', 414, '41.60000', '-75.06670'), ('Neversink', 2061, '41.81670', '-74.65000'), ('North Branch', 420, '41.80000', '-75.00000'), ('Parkston', 1355, '41.90000', '-74.78330'), ('Parksville', 3975, '41.85000', '-74.76670'), ('Phillipsport', 1234, '41.63330', '-74.45000'), ('Rock Hill', 1056, '41.63330', '-74.60000'), ('Rockland', 1355, '41.95000', '-74.91670'), ('Roscoe', 597, '41.93330', '-74.91670'), ('Shandelee', 1355, '41.88330', '-74.88330'), ('South Fallsburg', 2061, '41.72060', '-74.63480'), ('Swan Lake', 3975, '41.75000', '-74.78330'), ('Thompsonville', 2061, '41.66670', '-74.63330'), ('Tusten', 414, '41.56670', '-75.01670'), ('Tylertown', 420, '41.63330', '-74.95000'), ('White Lake', 6512, '41.66670', '-74.83330'), ('White Sulphur Springs', 3975, '41.80000', '-74.83330'), ('Willowemoc', 3975, '41.91670', '-74.66670'), ('Woodbourne', 2061, '41.75000', '-74.60000'), ('Woodridge', 902, '41.71120', '-74.57340'), ('Wurtsboro', 1234, '41.57640', '-74.48540')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC107': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Apalachin', 1126, '42.07230', '-76.16590'), ('Barton', 574, '42.05000', '-76.45000'), ('Berkshire', 1071, '42.30000', '-76.18330'), ('Campville', 1126, '42.08330', '-76.15000'), ('Candor', 855, '42.22730', '-76.33760'), ('Catatonk', 3911, '42.15000', '-76.31670'), ('East Berkshire', 1071, '42.30000', '-76.13330'), ('Foster', 1126, '42.13330', '-76.15000'), ('Jenksville', 1071, '42.26670', '-76.25000'), ('Litchfield', 5791, '42.01670', '-76.46670'), ('Lockwood', 4607, '42.10000', '-76.55000'), ('Lounsberry', 574, '42.06670', '-76.33330'), ('Newark Valley', 1071, '42.22300', '-76.18590'), ('Nichols', 574, '42.01990', '-76.36880'), ('North Spencer', 731, '42.25000', '-76.51670'), ('Owego', 3911, '42.10480', '-76.26270'), ('Richford', 1071, '42.35000', '-76.20000'), ('Spencer', 731, '42.21510', '-76.49480'), ('Tioga Center', 574, '42.06670', '-76.35000'), ('Tioga Terrace', 1126, '42.05000', '-76.11670'), ('Waverly', 4607, '42.01220', '-76.54110'), ('Weltonville', 1071, '42.20000', '-76.25000'), ('West Candor', 731, '42.21670', '-76.41670'), ('West Newark', 1071, '42.25000', '-76.23330'), ('Willseyville', 855, '42.28330', '-76.38330')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC109': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Besemer', 2192, '42.40000', '-76.41670'), ('Brooktondale', 2192, '42.38330', '-76.40000'), ('Caroline', 1832, '42.38330', '-76.30000'), ('Cayuga Heights', 3273, '42.46910', '-76.48690'), ('Danby', 6003, '42.35000', '-76.48330'), ('Dryden', 1832, '42.49020', '-76.29890'), ('East Ithaca', 2192, '42.42700', '-76.46580'), ('Enfield', 647, '42.43330', '-76.63330'), ('Etna', 505, '42.48330', '-76.38330'), ('Forest Home', 941, '42.45310', '-76.47180'), ('Freeville', 505, '42.51190', '-76.34600'), ('Groton', 2470, '42.58690', '-76.36530'), ('Ithaca', 29287, '42.44390', '-76.50340'), ('Ithaca Tompkins Arpt', 3417, '42.48330', '-76.46670'), ('Jacksonville', 1581, '42.51670', '-76.61670'), ('Lake Ridge', 1581, '42.61670', '-76.61670'), ('Lansing', 3417, '42.49080', '-76.48640'), ('Lansingville', 1581, '42.60000', '-76.55000'), ('Mc Lean', 1345, '42.56670', '-76.28330'), ('Myers', 1115, '42.53330', '-76.53330'), ('Newfield', 647, '42.36670', '-76.58330'), ('Newfield Hamlet', 647, '42.35790', '-76.59410'), ('Northeast Ithaca', 2655, '42.47120', '-76.46800'), ('Northwest Ithaca', 1115, '42.47080', '-76.54320'), ('Nubia', 1345, '42.58330', '-76.28330'), ('Peruville', 2470, '42.55000', '-76.36670'), ('Slaterville Spgs', 1832, '42.40000', '-76.35000'), ('South Danby', 731, '42.30000', '-76.43330'), ('South Hill', 6003, '42.41150', '-76.49100'), ('Speedville', 855, '42.30000', '-76.26670'), ('Taughannock Falls', 1581, '42.53330', '-76.60000'), ('Trumansburg', 1581, '42.54040', '-76.66050'), ('West Danby', 647, '42.31670', '-76.51670'), ('West Dryden', 2655, '42.51670', '-76.41670'), ('West Groton', 2470, '42.60000', '-76.45000'), ('West Slaterville', 2192, '42.40000', '-76.36670'), ('Willow Creek', 1115, '42.51670', '-76.58330')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYC111': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Clintondale', 1424, '41.69180', '-74.04730'), ('Ellenville', 4130, '41.70290', '-74.36410'), ('Highland', 5060, '41.71730', '-73.96570'), ('Hurley', 3561, '41.91380', '-74.05820'), ('Kerhonkson', 1732, '41.77900', '-74.29590'), ('Kingston', 23456, '41.93010', '-73.99730'), ('Lake Katrine', 2396, '41.98330', '-73.99020'), ('Lincoln Park', 2337, '41.95760', '-74.00270'), ('Marlboro', 2339, '41.60320', '-73.97330'), ('Napanoch', 1168, '41.75080', '-74.37450'), ('New Paltz', 6034, '41.74820', '-74.08190'), ('Phoenicia', 381, '42.08570', '-74.31770'), ('Port Ewen', 3650, '41.90620', '-73.97890'), ('Rosendale Village', 1284, '41.84930', '-74.07620'), ('Saugerties', 4955, '42.07480', '-73.94830'), ('Sundown', 1168, '41.88880', '-74.46220'), ('Tillson', 1709, '41.83160', '-74.06920'), ('Wallkill', 2143, '41.60870', '-74.16470'), ('West Hurley', 2105, '42.00650', '-74.11130'), ('West Shokan', 2105, '41.96870', '-74.28580'), ('Woodstock', 2187, '42.03880', '-74.11050')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC113': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bolton Landing', 3208, '43.55830', '-73.65200'), ('Glens Falls', 14354, '43.31110', '-73.64550'), ('Hague', 2726, '43.74550', '-73.49700'), ('Johnsburg', 3208, '43.51820', '-73.96120'), ('Lake George Villag', 933, '43.42560', '-73.71510'), ('Lake Luzerne-Hadle', 2042, '43.31890', '-73.83800'), ('North Creek', 3208, '43.69730', '-73.98570'), ('North River', 3208, '43.73770', '-74.04950'), ('Warrensburg', 3208, '43.50180', '-73.77540'), ('West Glens Falls', 6721, '43.30260', '-73.68800')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC115': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Argyle', 289, '43.23700', '-73.49040'), ('Cambridge', 1925, '43.02660', '-73.38090'), ('Fort Ann', 471, '43.41500', '-73.49060'), ('Fort Edward', 3141, '43.26890', '-73.58300'), ('Granville', 2644, '43.40830', '-73.26100'), ('Greenwich', 1902, '43.08660', '-73.49670'), ('Hudson Falls', 6927, '43.30470', '-73.58200'), ('Huletts Landing', 2667, '43.64080', '-73.50930'), ('Middle Falls', 1902, '43.10820', '-73.52770'), ('North Easton', 1902, '43.01030', '-73.55000'), ('Salem', 964, '43.17410', '-73.32830'), ('Whitehall', 2667, '43.56020', '-73.41840')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYC117': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Clyde', 2269, '43.08340', '-76.87100'), ('Lyons', 3695, '43.06340', '-76.99360'), ('Macedon', 1496, '43.06870', '-77.30270'), ('Newark', 9682, '43.04190', '-77.09430'), ('Palmyra', 3490, '43.06160', '-77.23070'), ('Red Creek', 521, '43.24800', '-76.72310'), ('Sodus', 1735, '43.23670', '-77.06410'), ('Sodus Point', 1160, '43.26260', '-76.99420'), ('Wolcott', 1712, '43.22250', '-76.81270')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC119': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ardsley', 4269, '41.01460', '-73.84120'), ('Armonk', 3461, '41.13230', '-73.71280'), ('Bedford', 1724, '41.19680', '-73.64720'), ('Briarcliff Manor', 7696, '41.13880', '-73.84220'), ('Bronxville', 6543, '40.93890', '-73.82730'), ('Buchanan', 2189, '41.26320', '-73.94490'), ('Croton-On-hudson', 7606, '41.20320', '-73.89070'), ('Dobbs Ferry', 10622, '41.01450', '-73.86970'), ('Eastchester', 18564, '40.95820', '-73.80780'), ('Elmsford', 4676, '41.05320', '-73.81460'), ("Golden's Bridge", 1578, '41.28590', '-73.67050'), ('Greenville', 493, '41.00090', '-73.81870'), ('Harrison', 24154, '41.02260', '-73.72020'), ('Hartsdale', 9830, '41.02570', '-73.80520'), ('Hastings-On-hudson', 7648, '40.98790', '-73.87960'), ('Hawthorne', 5083, '41.10430', '-73.79380'), ('Irvington', 6631, '41.03860', '-73.86730'), ('Jefferson Valley', 14891, '41.31860', '-73.80190'), ('Larchmont', 6485, '40.92610', '-73.75350'), ('Mamaroneck', 18752, '40.93450', '-73.72740'), ('Mount Kisco', 9983, '41.20180', '-73.73050'), ('Mount Vernon', 68381, '40.91300', '-73.82980'), ('New Rochelle', 72182, '40.92320', '-73.77990'), ('North Tarrytown', 8152, '41.09180', '-73.87140'), ('Ossining', 24010, '41.15850', '-73.87150'), ('Peekskill', 22441, '41.28940', '-73.92390'), ('Pelham', 6400, '40.91100', '-73.80830'), ('Pelham Manor', 5466, '40.89370', '-73.80520'), ('Pleasantville', 7172, '41.13810', '-73.78470'), ('Port Chester', 27867, '41.00450', '-73.66770'), ('Rye Brook', 8602, '41.03040', '-73.68660'), ('Scarsdale', 17823, '40.98840', '-73.77640'), ('Tarrytown', 11090, '41.06480', '-73.86870'), ('Thornwood', 5980, '41.11380', '-73.76490'), ('Tuckahoe', 6211, '40.95270', '-73.82320'), ('White Plains', 53077, '41.02090', '-73.75740'), ('Yonkers', 196086, '40.94700', '-73.86750'), ('Yorktown Heights', 7972, '41.27130', '-73.78260')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC119': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ardsley', 4269, '41.01460', '-73.84120'), ('Armonk', 3461, '41.13230', '-73.71280'), ('Bedford', 1724, '41.19680', '-73.64720'), ('Briarcliff Manor', 7696, '41.13880', '-73.84220'), ('Bronxville', 6543, '40.93890', '-73.82730'), ('Buchanan', 2189, '41.26320', '-73.94490'), ('Croton-On-hudson', 7606, '41.20320', '-73.89070'), ('Dobbs Ferry', 10622, '41.01450', '-73.86970'), ('Eastchester', 18564, '40.95820', '-73.80780'), ('Elmsford', 4676, '41.05320', '-73.81460'), ("Golden's Bridge", 1578, '41.28590', '-73.67050'), ('Greenville', 493, '41.00090', '-73.81870'), ('Harrison', 24154, '41.02260', '-73.72020'), ('Hartsdale', 9830, '41.02570', '-73.80520'), ('Hastings-On-hudson', 7648, '40.98790', '-73.87960'), ('Hawthorne', 5083, '41.10430', '-73.79380'), ('Irvington', 6631, '41.03860', '-73.86730'), ('Jefferson Valley', 14891, '41.31860', '-73.80190'), ('Larchmont', 6485, '40.92610', '-73.75350'), ('Mamaroneck', 18752, '40.93450', '-73.72740'), ('Mount Kisco', 9983, '41.20180', '-73.73050'), ('Mount Vernon', 68381, '40.91300', '-73.82980'), ('New Rochelle', 72182, '40.92320', '-73.77990'), ('North Tarrytown', 8152, '41.09180', '-73.87140'), ('Ossining', 24010, '41.15850', '-73.87150'), ('Peekskill', 22441, '41.28940', '-73.92390'), ('Pelham', 6400, '40.91100', '-73.80830'), ('Pelham Manor', 5466, '40.89370', '-73.80520'), ('Pleasantville', 7172, '41.13810', '-73.78470'), ('Port Chester', 27867, '41.00450', '-73.66770'), ('Rye Brook', 8602, '41.03040', '-73.68660'), ('Scarsdale', 17823, '40.98840', '-73.77640'), ('Tarrytown', 11090, '41.06480', '-73.86870'), ('Thornwood', 5980, '41.11380', '-73.76490'), ('Tuckahoe', 6211, '40.95270', '-73.82320'), ('White Plains', 53077, '41.02090', '-73.75740'), ('Yonkers', 196086, '40.94700', '-73.86750'), ('Yorktown Heights', 7972, '41.27130', '-73.78260')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYC121': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Arcade', 2026, '42.53340', '-78.43320'), ('Attica', 2597, '42.86550', '-78.28010'), ('Castile', 1051, '42.63100', '-78.05260'), ('Gainesville', 304, '42.64080', '-78.13520'), ('Perry', 3945, '42.71730', '-78.00670'), ('Pike', 382, '42.55590', '-78.15420'), ('Silver Springs', 844, '42.66010', '-78.08470'), ('Warsaw', 3814, '42.74140', '-78.14100'), ('Wyoming', 513, '42.82510', '-78.08550')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYC123': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bellona Stn', 5219, '42.75000', '-77.03330'), ('Benton', 5219, '42.73330', '-77.06670'), ('Bluff Point', 5219, '42.61670', '-77.11670'), ('Branchport', 5219, '42.60000', '-77.15000'), ('Crosby', 5219, '42.55000', '-77.10000'), ('Dresden', 307, '42.68310', '-76.95690'), ('Dundee', 1690, '42.52350', '-76.97820'), ('Ferguson Corners', 5219, '42.75000', '-77.10000'), ('Friend', 621, '42.66670', '-77.18330'), ('Glenora', 1690, '42.48330', '-76.91670'), ('Guyanoga', 5219, '42.61670', '-77.16670'), ('Himrod', 1690, '42.58330', '-76.95000'), ('Italy', 1072, '42.61670', '-77.28330'), ('Italy Hill', 1072, '42.60000', '-77.25000'), ('Keuka Park', 5219, '42.61670', '-77.08330'), ('Lakemont', 1690, '42.51670', '-76.91670'), ('Mays Mills', 307, '42.66670', '-76.98330'), ('Middlesex', 621, '42.70000', '-77.26670'), ('Milo Center', 307, '42.66670', '-77.00000'), ('Milo Mills', 5219, '42.66670', '-77.03330'), ('Penn Yan', 5219, '42.66120', '-77.05490'), ('Porter Corner', 1690, '42.55000', '-77.03330'), ('Potter', 621, '42.70000', '-77.20000'), ('Rock Stream', 1690, '42.46670', '-76.91670'), ('Rushville', 621, '42.76060', '-77.22750'), ('Starkey', 1690, '42.53330', '-76.91670'), ('Vine Valley', 621, '42.71670', '-77.31670'), ('Yatesville', 5219, '42.66670', '-77.13330')], 'partOfState': 'central', 'wfo': 'BGM'}, +'OHC001': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Cherry Fork', 127, '38.88840', '-83.61350'), ('Manchester', 2043, '38.69140', '-83.60520'), ('Peebles', 1739, '38.94720', '-83.40830'), ('Rome', 99, '38.66480', '-83.37910'), ('Seaman', 1039, '38.93880', '-83.57310'), ('West Union', 2903, '38.79320', '-83.54370'), ('Winchester', 1025, '38.94260', '-83.65360')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC003': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beaverdam', 356, '40.83290', '-83.97640'), ('Bluffton', 3896, '40.89010', '-83.88590'), ('Cairo', 499, '40.83130', '-84.08460'), ('Conant', 0, '40.71900', '-84.28000'), ('Delphos', 6944, '40.84440', '-84.33940'), ('Elida', 1917, '40.78600', '-84.19980'), ('Fort Shawnee', 3855, '40.68120', '-84.13150'), ('Gomer', 0, '40.84500', '-84.18700'), ('Harrod', 491, '40.70840', '-83.92040'), ('Hume', 0, '40.66300', '-84.20000'), ('Kemp', 0, '40.72400', '-84.22300'), ('Lafayette', 304, '40.75860', '-83.94950'), ('Lima', 40081, '40.74330', '-84.11140'), ('Needmore', 0, '40.77900', '-84.30800'), ('Rockport', 0, '40.87000', '-84.00000'), ('Rousculp', 0, '40.66600', '-84.08500'), ('Slabtown', 0, '40.78900', '-84.05200'), ('Southworth', 0, '40.76400', '-84.34000'), ('Spencerville', 2235, '40.70800', '-84.35320'), ('Westminster', 0, '40.69300', '-83.98000'), ('Yoder', 0, '40.68700', '-84.07100')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHC005': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ashland', 21249, '40.86690', '-82.31760'), ('Bailey Lakes', 397, '40.94740', '-82.35550'), ('Hayesville', 348, '40.77470', '-82.26070'), ('Jeromesville', 478, '40.80390', '-82.19620'), ('Loudonville', 2906, '40.63470', '-82.23400'), ('Mifflin', 144, '40.77440', '-82.36430'), ('Perrysville', 816, '40.65670', '-82.31240'), ('Polk', 357, '40.94520', '-82.21430'), ('Savannah', 372, '40.96740', '-82.36430')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC007': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Andover', 1269, '41.60720', '-80.56960'), ('Ashtabula', 20962, '41.87950', '-80.79820'), ('Conneaut', 12485, '41.92630', '-80.57020'), ('Edgewood', 4762, '41.87870', '-80.74080'), ('Geneva', 6595, '41.79980', '-80.94850'), ('Geneva-On-the-lake', 1545, '41.85660', '-80.94600'), ('Jefferson', 3572, '41.73860', '-80.76870'), ('North Kingsville', 2658, '41.91720', '-80.67020'), ('Orwell', 1519, '41.53610', '-80.85850'), ('Roaming Shores', 1239, '41.63670', '-80.82850'), ('Rock Creek', 584, '41.66070', '-80.85380')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC009': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Albany', 808, '39.22370', '-82.19890'), ('Amesville', 184, '39.40140', '-81.95530'), ('Athens', 21342, '39.32420', '-82.09610'), ('Buchtel', 574, '39.46280', '-82.18250'), ('Chauncey', 1067, '39.39950', '-82.12800'), ('Coolville', 528, '39.22030', '-81.79830'), ('Glouster', 1972, '39.50280', '-82.08480'), ('Jacksonville', 544, '39.47580', '-82.08010'), ('Nelsonville', 5230, '39.45880', '-82.22600'), ('The Plains', 2931, '39.36560', '-82.13400'), ('Trimble', 466, '39.48640', '-82.07990')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC011': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Buckland', 255, '40.62430', '-84.26070'), ('Cridersville', 1817, '40.65260', '-84.14600'), ('Minster', 2794, '40.39430', '-84.37950'), ('New Bremen', 2909, '40.43740', '-84.38060'), ('New Knoxville', 891, '40.49420', '-84.31850'), ('St. Marys', 8342, '40.54390', '-84.39090'), ('Uniopolis', 256, '40.60190', '-84.08660'), ('Wapakoneta', 9474, '40.57020', '-84.19220'), ('Waynesfield', 803, '40.60180', '-83.97380')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC013': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Barnesville', 4225, '39.98900', '-81.17350'), ('Bellaire', 4892, '40.01690', '-80.74650'), ('Belmont', 532, '40.02800', '-81.04120'), ('Bethesda', 1413, '40.01610', '-81.07290'), ('Bridgeport', 2186, '40.06650', '-80.74680'), ('Brookside', 644, '40.07120', '-80.76180'), ('Flushing', 900, '40.14850', '-81.06550'), ('Holloway', 345, '40.16050', '-81.12640'), ('Martins Ferry', 7226, '40.10130', '-80.72390'), ('Morristown', 299, '40.06280', '-81.07150'), ('Neffs', 1138, '40.02920', '-80.81560'), ('Powhatan Point', 1744, '39.86110', '-80.80940'), ('Shadyside', 3675, '39.97130', '-80.75090'), ('St. Clairsville', 5057, '40.07810', '-80.89900'), ('Yorkville', 1230, '40.15250', '-80.70810')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC015': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Aberdeen', 1603, '38.66670', '-83.76990'), ('Fayetteville', 372, '39.18640', '-83.93210'), ('Georgetown', 3691, '38.86690', '-83.90270'), ('Hamersville', 515, '38.91830', '-83.98500'), ('Higginsport', 291, '38.79070', '-83.96840'), ('Mount Orab', 2307, '39.02930', '-83.92370'), ('Ripley', 1745, '38.73960', '-83.84020'), ('Russellville', 453, '38.86740', '-83.78750'), ('Sardinia', 862, '39.00690', '-83.80700'), ('St. Martin', 91, '39.21470', '-83.88790')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC017': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beckett Ridge', 8663, '39.34700', '-84.43540'), ('Fairfield', 42097, '39.33110', '-84.54290'), ('Hamilton', 60690, '39.39946', '-84.56067'), ('Jacksonburg', 67, '39.53790', '-84.50390'), ('Middletown', 51605, '39.50570', '-84.37360'), ('Millville', 817, '39.39180', '-84.65350'), ('Monroe', 7133, '39.44058', '-84.36238'), ('New Miami', 2469, '39.43150', '-84.54100'), ('Oxford', 21943, '39.50570', '-84.74720'), ('Ross', 1971, '39.31180', '-84.65290'), ('Seven Mile', 678, '39.47930', '-84.55250'), ('Somerville', 294, '39.56350', '-84.63860'), ('South Middletown', 264, '39.48110', '-84.40070'), ('Trenton', 8746, '39.47700', '-84.46230')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC019': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Carrollton', 3190, '40.57980', '-81.09130'), ('Dellroy', 294, '40.55570', '-81.19940'), ('Leesville', 184, '40.45090', '-81.20960'), ('Malvern', 1218, '40.68900', '-81.18180'), ('Minerva Jct', 0, '40.72000', '-81.15000'), ('Sherrodsville', 316, '40.49470', '-81.24470')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC021': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Christiansburg', 553, '40.05680', '-84.02520'), ('Mechanicsburg', 1744, '40.07440', '-83.55780'), ('Mutual', 132, '40.07910', '-83.63730'), ('North Lewisburg', 1588, '40.22380', '-83.55780'), ('St. Paris', 1998, '40.12790', '-83.95800'), ('Urbana', 11613, '40.10880', '-83.75170'), ('Woodstock', 317, '40.17350', '-83.52790')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC023': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Catawba', 312, '39.99980', '-83.62230'), ('Crystal Lakes', 1411, '39.88490', '-84.02540'), ('Donnelsville', 293, '39.91830', '-83.94650'), ('Enon', 2638, '39.87903', '-83.93595'), ('Green Meadows', 2318, '39.86870', '-83.94430'), ('Holiday Valley', 1712, '39.85603', '-83.96843'), ('Lawrenceville', 302, '39.98500', '-83.87480'), ('New Carlisle', 5735, '39.93666', '-84.02691'), ('North Hampton', 370, '39.99050', '-83.94170'), ('Park Layne', 4519, '39.88650', '-84.03960'), ('South Charleston', 1850, '39.82693', '-83.63523'), ('South Vienna', 469, '39.92870', '-83.61180'), ('Springfield', 65358, '39.92718', '-83.80726'), ('Tremont City', 349, '40.01470', '-83.83610')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC025': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Amelia', 2752, '39.02580', '-84.21690'), ('Batavia', 1617, '39.07840', '-84.18120'), ('Bethel', 2637, '38.96240', '-84.08470'), ('Chilo', 97, '38.79370', '-84.13820'), ('Day Heights', 2823, '39.17390', '-84.22630'), ('Felicity', 922, '38.83990', '-84.09790'), ('Milford', 6284, '39.17090', '-84.28160'), ('Moscow', 244, '38.86030', '-84.22850'), ('Mount Carmel', 4308, '39.09670', '-84.29840'), ('Mount Repose', 4102, '39.18540', '-84.22460'), ('Mulberry', 3139, '39.19720', '-84.24890'), ('Neville', 127, '38.81320', '-84.21080'), ('New Richmond', 2219, '38.95117', '-84.27942'), ('Newtonsville', 492, '39.18290', '-84.08740'), ('Owensville', 816, '39.12370', '-84.13540'), ('Summerside', 5523, '39.12280', '-84.28640'), ('Williamsburg', 2358, '39.05310', '-84.05070'), ('Withamsville', 3145, '39.05860', '-84.27000')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC027': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Blanchester', 4220, '39.28950', '-83.97960'), ('Clarksville', 497, '39.40250', '-83.98290'), ('Martinsville', 440, '39.32300', '-83.81110'), ('Midland', 265, '39.30590', '-83.91040'), ('New Vienna', 1294, '39.32470', '-83.69240'), ('Port William', 258, '39.55170', '-83.78570'), ('Sabina', 2780, '39.49030', '-83.63380'), ('Wilmington', 11921, '39.44360', '-83.83090')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC029': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Calcutta', 3491, '40.67600', '-80.57830'), ('Columbiana', 5635, '40.88590', '-80.68840'), ('East Liverpool', 13089, '40.63290', '-80.56940'), ('East Palestine', 4917, '40.83740', '-80.54490'), ('Glenmoor', 2192, '40.66510', '-80.61320'), ('Hanoverton', 387, '40.75500', '-80.93560'), ('La Croft', 1307, '40.64720', '-80.60130'), ('Leetonia', 2043, '40.87840', '-80.76100'), ('Lisbon', 2788, '40.77610', '-80.76930'), ('Middleton', 0, '40.78000', '-80.53000'), ('New Waterford', 1391, '40.84850', '-80.62040'), ('Rogers', 266, '40.79020', '-80.62710'), ('Salem', 12197, '40.90260', '-80.85370'), ('Salineville', 1397, '40.62100', '-80.83280'), ('Summitville', 108, '40.67720', '-80.88610'), ('Washingtonville', 789, '40.90020', '-80.76790'), ('Wellsville', 4133, '40.60270', '-80.65630')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC031': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Chili', 0, '40.37000', '-81.77000'), ('Conesville', 364, '40.18500', '-81.89230'), ('Coshocton', 11682, '40.26370', '-81.84960'), ('Nellie', 134, '40.33830', '-82.06840'), ('Plainfield', 158, '40.20630', '-81.71900'), ('Warsaw', 781, '40.33530', '-82.00140'), ('West Lafayette', 2313, '40.27390', '-81.75100')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC033': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bucyrus', 13224, '40.80280', '-82.97350'), ('Chatfield', 218, '40.95250', '-82.94160'), ('Crestline', 5088, '40.78570', '-82.73890'), ('Galion', 11341, '40.73170', '-82.79050'), ('New Washington', 987, '40.96140', '-82.85430'), ('North Robinson', 211, '40.79220', '-82.85640'), ('Tiro', 281, '40.90600', '-82.76830')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC035': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bay Village', 16087, '41.48980', '-81.92930'), ('Beachwood', 12186, '41.47870', '-81.50250'), ('Bedford', 14214, '41.39130', '-81.53730'), ('Bedford Heights', 11375, '41.40520', '-81.50620'), ('Bentleyville', 947, '41.41350', '-81.41320'), ('Berea', 18970, '41.36990', '-81.86270'), ('Bratenahl', 1337, '41.55780', '-81.59700'), ('Brecksville', 13382, '41.30760', '-81.61850'), ('Broadview Heights', 15967, '41.31920', '-81.67990'), ('Brooklyn', 11586, '41.43460', '-81.74950'), ('Brooklyn Heights', 1558, '41.41560', '-81.66540'), ('Brook Park', 21218, '41.40010', '-81.82690'), ('Chagrin Falls', 4024, '41.43120', '-81.38960'), ('Cleveland', 478403, '41.47970', '-81.67850'), ('Cleveland Heights', 49958, '41.50960', '-81.56350'), ('Cuyahoga Heights', 599, '41.43610', '-81.65330'), ('East Cleveland', 27217, '41.53120', '-81.58020'), ('Euclid', 52717, '41.59230', '-81.51940'), ('Fairview Park', 17572, '41.44060', '-81.85410'), ('Garfield Heights', 30734, '41.41970', '-81.60400'), ('Gates Mills', 2493, '41.53250', '-81.41070'), ('Glenwillow', 449, '41.36080', '-81.47240'), ('Highland Heights', 8082, '41.54900', '-81.47160'), ('Hunting Valley', 735, '41.47300', '-81.40910'), ('Independence', 7109, '41.38030', '-81.64150'), ('Lakewood', 56646, '41.48380', '-81.80150'), ('Linndale', 117, '41.44510', '-81.76650'), ('Lyndhurst', 15279, '41.51550', '-81.49260'), ('Maple Heights', 26156, '41.40890', '-81.56280'), ('Mayfield', 3435, '41.55350', '-81.43530'), ('Mayfield Heights', 19386, '41.51740', '-81.45400'), ('Middleburg Heights', 15542, '41.36760', '-81.81490'), ('Moreland Hills', 3298, '41.44450', '-81.43110'), ('Newburgh Heights', 2389, '41.45260', '-81.66230'), ('North Olmsted', 34113, '41.41470', '-81.92050'), ('North Randall', 906, '41.43120', '-81.53070'), ('North Royalton', 28648, '41.31240', '-81.74510'), ('Olmsted Falls', 7962, '41.36750', '-81.90500'), ('Orange', 3236, '41.43850', '-81.47200'), ('Parma', 85655, '41.38350', '-81.72940'), ('Parma Heights', 21659, '41.38600', '-81.76360'), ('Pepper Pike', 6040, '41.47960', '-81.46020'), ('Richmond Heights', 10944, '41.55810', '-81.50380'), ('Rocky River', 20735, '41.47310', '-81.85430'), ('Seven Hills', 12080, '41.37950', '-81.67510'), ('Shaker Heights', 29405, '41.47560', '-81.54780'), ('Solon', 21802, '41.38620', '-81.44090'), ('South Euclid', 23537, '41.52420', '-81.52520'), ('Strongsville', 43858, '41.31270', '-81.83210'), ('University Heights', 14146, '41.49470', '-81.53550'), ('Valley View', 2179, '41.38630', '-81.60690'), ('Walton Hills', 2400, '41.36420', '-81.55450'), ('Warrensville Heigh', 15109, '41.43860', '-81.52340'), ('Westlake', 31719, '41.45440', '-81.92880'), ('Woodmere', 828, '41.45920', '-81.47940')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC037': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ansonia', 1145, '40.21460', '-84.63530'), ('Arcanum', 2076, '39.99160', '-84.55380'), ('Castine', 129, '39.93080', '-84.62470'), ('Gettysburg', 558, '40.11570', '-84.49600'), ('Gordon', 190, '39.92990', '-84.50860'), ('Greenville', 13294, '40.10280', '-84.62480'), ('Hollansburg', 214, '39.99850', '-84.79300'), ('Ithaca', 102, '39.93820', '-84.55340'), ('New Madison', 817, '39.96850', '-84.70830'), ('New Weston', 135, '40.33700', '-84.64400'), ('North Star', 209, '40.32390', '-84.56800'), ('Osgood', 255, '40.34010', '-84.49420'), ('Palestine', 170, '40.05030', '-84.74450'), ('Pitsburg', 392, '39.98670', '-84.48770'), ('Rossburg', 224, '40.27980', '-84.63820'), ('Union City', 1767, '40.19820', '-84.79480'), ('Versailles', 2589, '40.22300', '-84.48400'), ('Wayne Lakes', 684, '40.02110', '-84.66240'), ('Yorkshire', 110, '40.32550', '-84.49600')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC039': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ayersville', 0, '41.23900', '-84.28600'), ('Brunersburg', 0, '41.30700', '-84.38700'), ('Defiance', 16465, '41.28120', '-84.36190'), ('Evansport', 0, '41.42600', '-84.39600'), ('Farmer', 0, '41.38300', '-84.63100'), ('Hicksville', 3649, '41.29450', '-84.76660'), ('Independence', 0, '41.29800', '-84.30000'), ('Jewell', 0, '41.32600', '-84.28600'), ('Mark Center', 0, '41.28900', '-84.63100'), ('Ney', 364, '41.38070', '-84.52100'), ('Sherwood', 0, '41.28700', '-84.55400'), ('The Bend', 0, '41.28400', '-84.51600')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHC041': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ashley', 1216, '40.40910', '-82.95450'), ('Delaware', 25243, '40.29885', '-83.06747'), ('Galena', 305, '40.22050', '-82.88210'), ('Ostrander', 405, '40.26510', '-83.21210'), ('Powell', 6247, '40.16050', '-83.06560'), ('Sunbury', 2630, '40.24510', '-82.86480')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC043': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bay View', 692, '41.46890', '-82.82360'), ('Berlin Heights', 685, '41.32090', '-82.49270'), ('Castalia', 935, '41.40130', '-82.80930'), ('Fairview Lanes', 1015, '41.42710', '-82.65670'), ('Huron', 7958, '41.39650', '-82.56210'), ('Milan', 1445, '41.28880', '-82.60110'), ('Sandusky', 27844, '41.45590', '-82.71440'), ('Sandusky South', 6336, '41.41600', '-82.68700')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC045': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Amanda', 707, '39.65040', '-82.74330'), ('Baltimore', 2881, '39.84630', '-82.60760'), ('Bremen', 1265, '39.70590', '-82.43140'), ('Carroll', 488, '39.79990', '-82.70340'), ('Fairfield Beach', 1163, '39.91780', '-82.48110'), ('Lancaster', 35335, '39.71488', '-82.59920'), ('Lithopolis', 600, '39.80500', '-82.81120'), ('Millersport', 963, '39.89858', '-82.53449'), ('Pickerington', 9792, '39.89050', '-82.76840'), ('Pleasantville', 877, '39.80900', '-82.52280'), ('Rushville', 268, '39.76270', '-82.43130'), ('Stoutsville', 581, '39.60660', '-82.82460'), ('Sugar Grove', 448, '39.62670', '-82.54710'), ('Thurston', 555, '39.84130', '-82.54500'), ('West Rushville', 132, '39.76270', '-82.44860')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC047': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bloomingburg', 874, '39.60790', '-83.39550'), ('Jeffersonville', 1288, '39.65200', '-83.55690'), ('Milledgeville', 122, '39.59360', '-83.58780'), ('Octa', 83, '39.60464', '-83.61383'), ('Washington Court House', 13586, '39.53770', '-83.43110')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC049': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bexley', 13203, '39.96460', '-82.93450'), ('Blacklick Estates', 9518, '39.90490', '-82.86450'), ('Brice', 70, '39.91660', '-82.83200'), ('Canal Winchester', 4478, '39.84690', '-82.82140'), ('Downtown Columbus', 711470, '39.96035', '-83.00019'), ('Dublin', 31392, '40.11840', '-83.13290'), ('Gahanna', 32636, '40.02500', '-82.87500'), ('Grandview Heights', 6695, '39.97950', '-83.03990'), ('Grove City', 27075, '39.87310', '-83.07470'), ('Groveport', 3865, '39.85151', '-82.88455'), ('Harrisburg', 332, '39.81080', '-83.17150'), ('Hilliard', 24230, '40.03800', '-83.14260'), ('Huber Ridge', 4883, '40.09020', '-82.91840'), ('Lake Darby', 3727, '39.95730', '-83.22890'), ('Lincoln Village', 9482, '39.95470', '-83.13090'), ('Lockbourne', 280, '39.80900', '-82.97050'), ('Marble Cliff', 646, '39.98510', '-83.06050'), ('Minerva Park', 1288, '40.07760', '-82.94360'), ('New Albany', 3711, '40.07960', '-82.80870'), ('Obetz', 3977, '39.87670', '-82.94060'), ('Reynoldsburg', 32069, '39.95550', '-82.79920'), ('Riverlea', 499, '40.08040', '-83.02580'), ('Upper Arlington', 33686, '40.02660', '-83.07050'), ('Urbancrest', 868, '39.89940', '-83.08900'), ('Valleyview', 601, '39.96480', '-83.07290'), ('Westerville', 35318, '40.12120', '-82.91760'), ('Whitehall', 19201, '39.96860', '-82.88370'), ('Worthington', 14125, '40.09770', '-83.02090')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC051': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Archbold', 4290, '41.51550', '-84.30440'), ('Assumption', 0, '41.67200', '-83.91200'), ('Brailey', 0, '41.55500', '-83.92200'), ('Burlington', 0, '41.57200', '-84.30800'), ('Delta', 2930, '41.57410', '-84.00250'), ('Denson', 0, '41.70600', '-84.14800'), ('Elmira', 0, '41.57900', '-84.30800'), ('Fayette', 1340, '41.67270', '-84.32910'), ('Lyons', 559, '41.69960', '-84.07300'), ('Metamora', 563, '41.71110', '-83.90800'), ('Oakshade', 0, '41.66900', '-84.15200'), ('Ottokee', 0, '41.60200', '-84.13400'), ('Pettisville', 0, '41.53100', '-84.23000'), ('Seward', 0, '41.70000', '-84.03600'), ('Swanton', 3307, '41.58380', '-83.89170'), ('Tedrow', 0, '41.60300', '-84.20600'), ('Wauseon', 7091, '41.55350', '-84.14190'), ('Winameg', 0, '41.62400', '-84.06500'), ('Zone', 0, '41.62300', '-84.32800')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHC053': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Cheshire', 221, '38.94400', '-82.11220'), ('Crown City', 411, '38.58830', '-82.28970'), ('Gallipolis', 4180, '38.82000', '-82.19150'), ('Rio Grande', 915, '38.88170', '-82.37860'), ('Vinton', 324, '38.97740', '-82.34030')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC055': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Aquilla', 372, '41.54600', '-81.17120'), ('Bainbridge', 3417, '41.39340', '-81.33720'), ('Burton', 1450, '41.47050', '-81.14640'), ('Chardon', 5156, '41.57910', '-81.20850'), ('Chesterland', 2646, '41.52420', '-81.34300'), ('Middlefield', 2233, '41.45910', '-81.07510'), ('South Russell', 4022, '41.43460', '-81.33280')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC057': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beavercreek', 37984, '39.72930', '-84.06240'), ('Bellbrook', 7009, '39.64000', '-84.08560'), ('Bowersville', 290, '39.58010', '-83.72370'), ('Cedarville', 3828, '39.74490', '-83.81050'), ('Clifton', 179, '39.79730', '-83.82570'), ('Fairborn', 32052, '39.80450', '-84.01750'), ('Jamestown', 1917, '39.65860', '-83.74000'), ('Shawnee Hills', 419, '39.65250', '-83.78260'), ('Spring Valley', 510, '39.61020', '-84.00610'), ('Wilberforce', 1579, '39.71650', '-83.88360'), ('Wright-Patterson AFB', 8579, '39.80160', '-84.07080'), ('Xenia', 24164, '39.68500', '-83.94080'), ('Yellow Springs', 3761, '39.80550', '-83.88718')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC059': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Antrim', 0, '40.12000', '-81.35000'), ('Byesville', 2574, '39.96800', '-81.54260'), ('Cambridge', 11520, '40.02500', '-81.58690'), ('Cumberland', 402, '39.85230', '-81.65860'), ('Fairview', 81, '40.05890', '-81.23410'), ('Kimbolton', 190, '40.15400', '-81.57430'), ('Lore City', 305, '39.98400', '-81.45960'), ('Old Washington', 265, '40.03740', '-81.44440'), ('Pleasant City', 439, '39.90340', '-81.54470'), ('Quaker City', 563, '39.96910', '-81.29640'), ('Salesville', 154, '39.97340', '-81.33700'), ('Senecaville', 453, '39.93450', '-81.45990')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC061': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Addyston', 1010, '39.13810', '-84.71060'), ('Amberley', 3425, '39.20240', '-84.43320'), ('Anderson Township', 10978, '39.07010', '-84.33880'), ('Arlington Heights', 899, '39.21510', '-84.45580'), ('Blue Ash', 12513, '39.24670', '-84.38080'), ('Bridgetown', 11748, '39.15720', '-84.63394'), ('Cherry Grove', 4555, '39.07970', '-84.32280'), ('Cheviot', 9015, '39.15755', '-84.60973'), ('Cleves', 2790, '39.16230', '-84.74930'), ('Covedale', 6360, '39.12380', '-84.64060'), ('Deer Park', 5982, '39.20340', '-84.39700'), ('Dent', 7612, '39.19380', '-84.66090'), ('Dillonvale', 3716, '39.21800', '-84.40210'), ('Downtown Cincinnati', 331285, '39.10113', '-84.51195'), ('Dry Run', 6553, '39.10430', '-84.33070'), ('Elmwood Place', 2681, '39.18490', '-84.48850'), ('Evendale', 3090, '39.25380', '-84.42570'), ('Fairfax', 1938, '39.14270', '-84.39620'), ('Finneytown', 13492, '39.21670', '-84.51420'), ('Forest Park', 19463, '39.28720', '-84.52690'), ('Fruit Hill', 3945, '39.06810', '-84.36620'), ('Glendale', 2188, '39.27070', '-84.45840'), ('Golf Manor', 3999, '39.18710', '-84.44640'), ('Grandview', 1391, '39.19430', '-84.72440'), ('Greenhills', 4103, '39.26470', '-84.51760'), ('Groesbeck', 7202, '39.22880', '-84.59430'), ('Harrison', 7487, '39.24990', '-84.79300'), ('Indian Hill', 5907, '39.18950', '-84.33480'), ('Kenwood', 7423, '39.20560', '-84.37410'), ('Lincoln Heights', 4113, '39.24390', '-84.45810'), ('Lockland', 3707, '39.22760', '-84.45740'), ('Loveland', 11677, '39.26730', '-84.27410'), ('Mack', 5767, '39.15401', '-84.66822'), ('Madeira', 8923, '39.18420', '-84.37480'), ('Mariemont', 3408, '39.14210', '-84.37900'), ('Monfort Heights', 3661, '39.19034', '-84.59898'), ('Montgomery', 10163, '39.24730', '-84.34760'), ('Mount Healthy', 7149, '39.23280', '-84.54720'), ('Mount Healthy Heights', 3450, '39.27030', '-84.56810'), ('Newtown', 2420, '39.12220', '-84.35050'), ('North Bend', 603, '39.14850', '-84.74150'), ('Northbrook', 11076, '39.24750', '-84.57900'), ('North College Hill', 10082, '39.21720', '-84.55160'), ('Northgate', 8016, '39.25270', '-84.59240'), ('Norwood', 21675, '39.15960', '-84.45370'), ('Pleasant Run', 5267, '39.29090', '-84.57240'), ('Pleasant Run Farm', 4731, '39.30300', '-84.54800'), ('Reading', 11292, '39.22440', '-84.43140'), ('Sharonville', 13804, '39.28120', '-84.40650'), ('Sherwood', 3907, '39.08470', '-84.36070'), ('Silverton', 5178, '39.18930', '-84.40130'), ('Springdale', 10563, '39.29160', '-84.47550'), ('St. Bernard', 4924, '39.17100', '-84.49530'), ('Terrace Park', 2273, '39.15800', '-84.31210'), ('Turpin Hills', 4960, '39.10710', '-84.37320'), ('White Oak', 13277, '39.21025', '-84.60254'), ('Woodlawn', 2816, '39.25670', '-84.46750'), ('Wyoming', 8261, '39.22950', '-84.48160')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC063': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Arcadia', 537, '41.11130', '-83.51130'), ('Arlington', 1351, '40.89270', '-83.65370'), ('Benton Ridge', 315, '41.00480', '-83.79200'), ('Findlay', 38967, '41.04300', '-83.64220'), ('Jenera', 235, '40.89980', '-83.72740'), ('McComb', 1676, '41.10670', '-83.78960'), ('Mount Blanchard', 484, '40.89850', '-83.55720'), ('Mount Cory', 203, '40.93480', '-83.82430'), ('Rawson', 465, '40.95670', '-83.78570'), ('Van Buren', 313, '41.13900', '-83.64920'), ('Vanlue', 371, '40.97640', '-83.48180')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHC065': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ada', 5582, '40.76880', '-83.82390'), ('Alger', 888, '40.70950', '-83.84460'), ('Dunkirk', 952, '40.78760', '-83.64250'), ('Forest', 1488, '40.80310', '-83.51190'), ('Kenton', 8336, '40.64450', '-83.61040'), ('McGuffey', 522, '40.69330', '-83.78590'), ('Mount Victory', 600, '40.53410', '-83.52020'), ('Patterson', 138, '40.78180', '-83.52610'), ('Ridgeway', 354, '40.51404', '-83.57116')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC067': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bowerston', 414, '40.42670', '-81.18770'), ('Cadiz', 3308, '40.26670', '-80.99230'), ('Deersville', 82, '40.30810', '-81.18770'), ('Freeport', 398, '40.21080', '-81.26830'), ('Harrisville', 259, '40.18180', '-80.88710'), ('Hopedale', 984, '40.32330', '-80.89900'), ('Jewett', 784, '40.36810', '-81.00270'), ('New Athens', 342, '40.18430', '-80.99540'), ('Scio', 799, '40.39870', '-81.08760')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC069': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Colton', 0, '41.46500', '-83.95200'), ('Deshler', 1831, '41.20800', '-83.90570'), ('Elery', 0, '41.29800', '-84.06900'), ('Florida', 246, '41.32300', '-84.20060'), ('Gallup', 0, '41.18800', '-84.02900'), ('Gerald', 0, '41.45700', '-84.14400'), ('Grelton', 0, '41.34000', '-84.00000'), ('Hamler', 650, '41.23020', '-84.03330'), ('Holgate', 1194, '41.24880', '-84.12860'), ('Liberty Center', 1109, '41.44340', '-84.00810'), ('Malinta', 285, '41.31960', '-84.03710'), ('McClure', 761, '41.37050', '-83.94200'), ('Napoleon', 9318, '41.39480', '-84.12660'), ('New Bavaria', 78, '41.20360', '-84.16700'), ('Okolona', 0, '41.35500', '-84.21700'), ('Pleasant Bend', 0, '41.18000', '-84.19000'), ('Ridgeville Corners', 0, '41.43800', '-84.25700'), ('Standley', 0, '41.26700', '-84.22700'), ('Texas', 0, '41.42400', '-83.95200')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHC071': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belfast', 1039, '39.06266', '-83.53211'), ('Greenfield', 4906, '39.35420', '-83.38910'), ('Highland', 283, '39.34360', '-83.59960'), ('Hillsboro', 6368, '39.20121', '-83.61060'), ('Leesburg', 1253, '39.34580', '-83.55460'), ('Lynchburg', 1350, '39.24430', '-83.78880'), ('Marshall', 158, '39.15209', '-83.48485'), ('Mowrystown', 373, '39.03880', '-83.75250'), ('Sinking Spring', 158, '39.07510', '-83.38720')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC073': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Laurelville', 533, '39.47150', '-82.73750'), ('Logan', 6704, '39.53690', '-82.40170'), ('Murray City', 452, '39.51080', '-82.16710')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC075': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Glenmont', 283, '40.51700', '-82.09270'), ('Holmesville', 386, '40.62840', '-81.92340'), ('Killbuck', 839, '40.49720', '-81.98360'), ('Millersburg', 3326, '40.55340', '-81.91560'), ('Nashville', 172, '40.59600', '-82.11330')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC077': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Greenwich', 1525, '41.03110', '-82.51790'), ('Monroeville', 1433, '41.24400', '-82.70120'), ('New London', 2696, '41.07940', '-82.40620'), ('North Fairfield', 573, '41.10480', '-82.61300'), ('Norwalk', 16238, '41.24210', '-82.61050'), ('Wakeman', 951, '41.25590', '-82.40400'), ('Willard', 6806, '41.05080', '-82.72260')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC079': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Coalton', 545, '39.11250', '-82.61120'), ('Jackson', 6184, '39.04570', '-82.62920'), ('Oak Hill', 1685, '38.89600', '-82.56940'), ('Wellston', 6078, '39.11710', '-82.53830')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC081': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Adena', 815, '40.21640', '-80.87630'), ('Amsterdam', 568, '40.47140', '-80.92140'), ('Bergholz', 769, '40.52110', '-80.88470'), ('Bloomingdale', 221, '40.34180', '-80.81750'), ('Brentwood', 3568, '40.35310', '-80.73070'), ('Brilliant', 1568, '40.26850', '-80.62490'), ('Empire', 300, '40.51100', '-80.62500'), ('Irondale', 418, '40.57270', '-80.72600'), ('Mingo Junction', 3631, '40.32060', '-80.61360'), ('Mount Pleasant', 535, '40.17590', '-80.80000'), ('New Alexandria', 222, '40.29120', '-80.67530'), ('Rayland', 434, '40.18340', '-80.69140'), ('Richmond', 471, '40.43280', '-80.77210'), ('Smithfield', 867, '40.27260', '-80.77680'), ('Steubenville', 19015, '40.36700', '-80.64660'), ('Stratton', 277, '40.52490', '-80.63040'), ('Tiltonsville', 1329, '40.17250', '-80.69770'), ('Toronto', 5676, '40.45890', '-80.60630'), ('Wintersville', 4067, '40.37900', '-80.70660')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC083': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Centerburg', 1432, '40.30370', '-82.69660'), ('Danville', 1104, '40.44790', '-82.26010'), ('Fredericktown', 2428, '40.47890', '-82.54530'), ('Gambier', 1871, '40.37630', '-82.39490'), ('Gann', 179, '40.46910', '-82.19030'), ('Martinsburg', 185, '40.26930', '-82.35490'), ('Mount Vernon', 14375, '40.39050', '-82.47520')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC085': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Eastlake', 20255, '41.65960', '-81.43060'), ('Fairport Harbor', 3180, '41.74750', '-81.27330'), ('Grand River', 345, '41.74220', '-81.28600'), ('Kirtland', 6670, '41.59840', '-81.33800'), ('Kirtland Hills', 597, '41.64250', '-81.31810'), ('Madison', 2921, '41.77170', '-81.05320'), ('Mentor', 50278, '41.69150', '-81.33450'), ('Mentor-On-the-lake', 8127, '41.71370', '-81.36490'), ('North Madison', 8451, '41.82970', '-81.05480'), ('North Perry', 838, '41.80680', '-81.12550'), ('Painesville', 17503, '41.72710', '-81.24830'), ('Perry', 1195, '41.76730', '-81.14300'), ('Waite Hill', 446, '41.60980', '-81.38800'), ('Wickliffe', 13484, '41.60810', '-81.46750'), ('Willoughby', 22621, '41.64630', '-81.40940'), ('Willoughby Hills', 8595, '41.58480', '-81.43520'), ('Willowick', 14361, '41.63500', '-81.46850')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC087': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Athalia', 328, '38.51220', '-82.30760'), ('Burlington', 2794, '38.40930', '-82.52900'), ('Chesapeake', 842, '38.43050', '-82.45050'), ('Coal Grove', 2027, '38.49800', '-82.64270'), ('Hanging Rock', 279, '38.55890', '-82.72620'), ('Ironton', 11211, '38.53250', '-82.67850'), ('Lake Vesuvius', 11211, '38.61550', '-82.63070'), ('Proctorville', 620, '38.43760', '-82.38090'), ('South Point', 3742, '38.41920', '-82.57420')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC089': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Alexandria', 85, '40.08970', '-82.61310'), ('Beechwood Trails', 2258, '40.02370', '-82.65090'), ('Buckeye Lake', 3049, '39.93058', '-82.47373'), ('Granville', 3167, '40.07100', '-82.50160'), ('Granville South', 1124, '40.05290', '-82.54020'), ('Gratiot', 187, '39.95140', '-82.21730'), ('Hanover', 885, '40.07920', '-82.27050'), ('Harbor Hills', 1303, '39.93670', '-82.43520'), ('Hartford', 418, '40.23940', '-82.68770'), ('Heath', 8527, '40.02690', '-82.43740'), ('Hebron', 2034, '39.96260', '-82.49160'), ('Johnstown', 3440, '40.15110', '-82.68770'), ('Kirkersville', 520, '39.96001', '-82.59705'), ('Newark', 46279, '40.05794', '-82.40080'), ('Pataskala', 10249, '40.00070', '-82.67350'), ('St. Louisville', 346, '40.17150', '-82.41900'), ('Summit Station', 1380, '40.00480', '-82.75080'), ('Utica', 2130, '40.23340', '-82.44360')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC091': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belle Center', 807, '40.50910', '-83.74490'), ('Bellefontaine', 13069, '40.36000', '-83.75700'), ('De Graff', 1212, '40.31030', '-83.91470'), ('Huntsville', 454, '40.44240', '-83.80390'), ('Lakeview', 1074, '40.48780', '-83.92570'), ('Quincy', 734, '40.29590', '-83.96950'), ('Rushsylvania', 543, '40.46120', '-83.67110'), ('Russells Point', 1619, '40.46800', '-83.89330'), ('Valley Hi', 244, '40.31610', '-83.67300'), ('West Liberty', 1813, '40.25380', '-83.75800'), ('West Mansfield', 700, '40.39960', '-83.54500'), ('Zanesfield', 220, '40.33820', '-83.67810')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC093': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Amherst', 11797, '41.40010', '-82.23070'), ('Avon', 11446, '41.45130', '-82.02350'), ('Avon Lake', 18145, '41.49370', '-82.01590'), ('Eaton Estates', 1409, '41.30550', '-82.00960'), ('Elyria', 55953, '41.37990', '-82.10560'), ('Grafton', 2302, '41.28050', '-82.03320'), ('Kipton', 265, '41.26700', '-82.30480'), ('Lagrange', 1815, '41.23880', '-82.12050'), ('Lorain', 68652, '41.44150', '-82.18340'), ('North Ridgeville', 22338, '41.38800', '-82.01520'), ('Oberlin', 8195, '41.29040', '-82.21670'), ('Rochester', 190, '41.12480', '-82.30630'), ('Sheffield', 2949, '41.45690', '-82.09460'), ('Sheffield Lake', 9371, '41.48880', '-82.09790'), ('South Amherst', 1863, '41.35390', '-82.23820'), ('Vermilion', 10927, '41.41200', '-82.31820'), ('Wellington', 4511, '41.16460', '-82.22360')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC095': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Berkey', 265, '41.71440', '-83.83350'), ('Harbor View', 99, '41.69260', '-83.44460'), ('Holland', 1306, '41.62030', '-83.70950'), ('Maumee', 15237, '41.57420', '-83.65340'), ('Oregon', 19355, '41.66690', '-83.41940'), ('Ottawa Hills', 4564, '41.66750', '-83.64500'), ('Sylvania', 18670, '41.71460', '-83.70600'), ('Toledo', 313619, '41.66390', '-83.58160'), ('Waterville', 4828, '41.49800', '-83.73330'), ('Whitehouse', 2733, '41.51890', '-83.80260')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHC097': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Choctaw Lake', 1562, '39.96010', '-83.48510'), ('London', 8771, '39.88920', '-83.44090'), ('Midway', 274, '39.73270', '-83.47630'), ('Mount Sterling', 1865, '39.71950', '-83.26810'), ('Plain City', 2832, '40.10680', '-83.27000'), ('South Solon', 405, '39.73710', '-83.61350'), ('West Jefferson', 3572, '39.94539', '-83.27651')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC099': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Austintown', 31627, '41.09160', '-80.73830'), ('Beloit', 1024, '40.92050', '-81.00050'), ('Boardman', 37215, '41.03220', '-80.66850'), ('Campbell', 9460, '41.07740', '-80.59060'), ('Canfield', 7374, '41.02970', '-80.76740'), ('Craig Beach', 1254, '41.11850', '-80.98240'), ('Lowellville', 1281, '41.04010', '-80.54810'), ('Maple Ridge', 910, '40.91630', '-81.05000'), ('New Middletown', 1682, '40.96370', '-80.56000'), ('Poland', 2866, '41.02410', '-80.61410'), ('Sebring', 4912, '40.92350', '-81.02230'), ('Struthers', 11756, '41.05120', '-80.59310'), ('Villa Maria', 0, '41.08000', '-80.52000'), ('Youngstown', 82026, '41.09910', '-80.64640')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC101': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Caledonia', 578, '40.63600', '-82.96940'), ('Green Camp', 342, '40.53280', '-83.20800'), ('La Rue', 775, '40.57790', '-83.38250'), ('Marion', 35318, '40.58490', '-83.12790'), ('Morral', 388, '40.68990', '-83.21310'), ('New Bloomington', 548, '40.58550', '-83.31530'), ('Prospect', 1191, '40.45240', '-83.18570'), ('Waldo', 332, '40.46160', '-83.08560')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC103': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Briarwood Beach', 682, '41.07490', '-81.90490'), ('Brunswick', 33388, '41.24570', '-81.82120'), ('Chippewa-On-the-lake', 293, '41.07010', '-81.90370'), ('Gloria Glens Park', 538, '41.05830', '-81.90090'), ('Lodi', 3061, '41.03370', '-82.01310'), ('Medina', 25139, '41.13620', '-81.86740'), ('Seville', 2160, '41.02240', '-81.86770'), ('Spencer', 747, '41.09750', '-82.12280'), ('Wadsworth', 18437, '41.02380', '-81.73190'), ('Westfield Center', 1054, '41.02660', '-81.93340')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC105': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Forked Run State Park', 528, '39.10140', '-81.78840'), ('Middleport', 2525, '38.99980', '-82.05690'), ('Pomeroy', 1966, '39.02760', '-82.03320'), ('Racine', 746, '38.96820', '-81.91250'), ('Rutland', 401, '39.04220', '-82.12910'), ('Syracuse', 879, '38.99970', '-81.97300')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC107': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Burkettsville', 254, '40.35290', '-84.64250'), ('Celina', 10303, '40.55330', '-84.57010'), ('Chickasaw', 364, '40.43620', '-84.49400'), ('Coldwater', 4482, '40.48270', '-84.63150'), ('Fort Recovery', 1273, '40.41090', '-84.77510'), ('Mendon', 697, '40.67130', '-84.51800'), ('Montezuma', 191, '40.48930', '-84.54890'), ('Rockford', 1126, '40.69200', '-84.64870'), ('St. Henry', 2271, '40.42090', '-84.63360')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC109': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bradford', 1859, '40.13090', '-84.42930'), ('Casstown', 322, '40.05260', '-84.12880'), ('Covington', 2559, '40.11910', '-84.35090'), ('Fletcher', 510, '40.14440', '-84.11180'), ('Laura', 487, '39.99360', '-84.40910'), ('Ludlow Falls', 210, '39.99840', '-84.33910'), ('Piqua', 20738, '40.14660', '-84.25100'), ('Pleasant Hill', 1134, '40.05130', '-84.34490'), ('Potsdam', 203, '39.96315', '-84.41620'), ('Tipp City', 9221, '39.95880', '-84.17630'), ('Troy', 21999, '40.04049', '-84.20497'), ('West Milton', 4645, '39.96104', '-84.32751')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC111': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Antioch', 89, '39.66160', '-81.06770'), ('Beallsville', 423, '39.84830', '-81.03540'), ('Clarington', 444, '39.77680', '-80.86510'), ('Graysville', 113, '39.66110', '-81.17110'), ('Jerusalem', 152, '39.85220', '-81.09530'), ('Lewisville', 233, '39.76590', '-81.21880'), ('Miltonsburg', 29, '39.83180', '-81.16430'), ('Stafford', 86, '39.71320', '-81.27760'), ('Wilson', 118, '39.85820', '-81.06780'), ('Woodsfield', 2598, '39.76300', '-81.11670')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC113': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Brookville', 5289, '39.83570', '-84.41500'), ('Centerville', 23024, '39.64110', '-84.14000'), ('Clayton', 13347, '39.86070', '-84.35510'), ('Downtown Dayton', 166179, '39.76140', '-84.19454'), ('Drexel', 2057, '39.74410', '-84.29170'), ('Englewood', 12235, '39.86080', '-84.30690'), ('Farmersville', 980, '39.67870', '-84.42710'), ('Fort Mckinley', 3989, '39.80600', '-84.25670'), ('Germantown', 4884, '39.62548', '-84.36992'), ('Huber Heights', 38212, '39.85580', '-84.11230'), ('Kettering', 57502, '39.69590', '-84.15010'), ('Miamisburg', 19489, '39.63560', '-84.27450'), ('Moraine', 6897, '39.70390', '-84.22840'), ('New Lebanon', 4231, '39.74557', '-84.38488'), ('Northridge', 6853, '39.81030', '-84.19170'), ('Northview', 10337, '39.84310', '-84.27960'), ('Oakwood', 607, '39.71990', '-84.17360'), ('Overlook-Page Manor', 13242, '39.75410', '-84.11540'), ('Phillipsburg', 628, '39.90440', '-84.40070'), ('Riverside', 23545, '39.78060', '-84.12390'), ('Shiloh', 721, '39.81350', '-84.23180'), ('Trotwood', 27420, '39.80280', '-84.30450'), ('Union', 5574, '39.90270', '-84.30990'), ('Vandalia', 14603, '39.87810', '-84.19400'), ('West Carrollton', 13818, '39.66950', '-84.25250'), ('Woodbourne-Hyde Park', 7837, '39.66070', '-84.17360')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC115': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Chesterhill', 305, '39.48990', '-81.86590'), ('Malta', 696, '39.65040', '-81.86460'), ('McConnelsville', 1676, '39.65410', '-81.84440'), ('Stockport', 540, '39.54930', '-81.79500')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC117': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Cardington', 1849, '40.49910', '-82.89380'), ('Chesterville', 193, '40.48010', '-82.68280'), ('Edison', 437, '40.55810', '-82.86360'), ('Fulton', 264, '40.46240', '-82.82840'), ('Marengo', 297, '40.40130', '-82.81010'), ('Mount Gilead', 3290, '40.55080', '-82.83600'), ('Sparta', 191, '40.39470', '-82.69960')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC119': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Adamsville', 127, '40.06880', '-81.88310'), ('Dresden', 1423, '40.12180', '-82.01110'), ('Duncan Falls', 0, '39.87000', '-81.92000'), ('Frazeysburg', 1201, '40.11630', '-82.11870'), ('Fultonham', 151, '39.85610', '-82.14290'), ('New Concord', 2651, '39.99740', '-81.73580'), ('North Zanesville', 3013, '39.98220', '-82.00010'), ('Norwich', 113, '39.98470', '-81.79260'), ('Philo', 769, '39.86120', '-81.90930'), ('Pleasant Grove', 2016, '39.94960', '-81.95960'), ('Roseville', 1936, '39.80710', '-82.07360'), ('South Zanesville', 1936, '39.90340', '-82.01970'), ('Zanesville', 25586, '39.95240', '-82.01200')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC121': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Batesville', 100, '39.91420', '-81.28120'), ('Belle Valley', 263, '39.78870', '-81.55520'), ('Caldwell', 1956, '39.74580', '-81.51310'), ('Dexter City', 166, '39.65920', '-81.47490'), ('Sarahsville', 198, '39.80770', '-81.46950'), ('Summerfield', 296, '39.79770', '-81.33590')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC123': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Clay Center', 294, '41.56880', '-83.36100'), ('Elmore', 1426, '41.47300', '-83.29190'), ('Genoa', 2230, '41.51840', '-83.36100'), ('Marblehead', 762, '41.53180', '-82.72150'), ('Oak Harbor', 2841, '41.51160', '-83.14670'), ('Port Clinton', 6391, '41.50970', '-82.93840'), ('Rocky Ridge', 389, '41.53050', '-83.21350')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHC125': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Antwerp', 1740, '41.18070', '-84.73910'), ('Arthur', 0, '41.19500', '-84.36100'), ('Briceton', 0, '41.08400', '-84.63100'), ('Broughton', 166, '41.08790', '-84.53590'), ('Cecil', 216, '41.21910', '-84.60150'), ('Charloe', 0, '41.13100', '-84.43400'), ('Grover Hill', 412, '41.01870', '-84.47710'), ('Haviland', 180, '41.01840', '-84.58110'), ('Latty', 200, '41.08810', '-84.58340'), ('Mandale', 0, '41.01800', '-84.36000'), ('McGill', 0, '41.01900', '-84.77400'), ('Melrose', 322, '41.08960', '-84.41950'), ('Oakwood', 0, '41.09000', '-84.38000'), ('Paulding', 3595, '41.13680', '-84.58270'), ('Payne', 1166, '41.07940', '-84.72720'), ('Roselms', 0, '41.01900', '-84.41900'), ('Tipton', 0, '41.01900', '-84.66900'), ('Worstville', 0, '41.08200', '-84.67100')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHC127': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Corning', 593, '39.60230', '-82.08870'), ('Crooksville', 2483, '39.76810', '-82.09490'), ('Glenford', 198, '39.88620', '-82.31980'), ('Hemlock', 142, '39.58890', '-82.15530'), ('Junction City', 818, '39.72150', '-82.30020'), ('New Lexington', 4689, '39.71330', '-82.20810'), ('New Straitsville', 774, '39.57780', '-82.23600'), ('Perry State Forest', 4689, '39.76950', '-82.20850'), ('Rendville', 46, '39.61930', '-82.09020'), ('Shawnee', 608, '39.61050', '-82.20720'), ('Somerset', 1549, '39.80580', '-82.30000'), ('Thornville', 731, '39.89580', '-82.41920')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC129': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ashville', 3174, '39.71760', '-82.95520'), ('Circleville', 13485, '39.60180', '-82.93900'), ('Commercial Point', 776, '39.76940', '-83.05790'), ('Darbyville', 293, '39.69570', '-83.11420'), ('Logan Elm Village', 1062, '39.57170', '-82.94740'), ('New Holland', 785, '39.55320', '-83.25740'), ('Orient', 269, '39.80560', '-83.15150'), ('South Bloomfield', 1179, '39.71590', '-82.99000'), ('Tarlton', 298, '39.55430', '-82.77740'), ('Williamsport', 1002, '39.58340', '-83.11670')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC131': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beaver', 464, '39.03240', '-82.82520'), ('Cynthiana', 158, '39.17305', '-83.34838'), ('Kincaid Springs', 158, '39.10000', '-83.27000'), ('Pike Lake', 1907, '39.16284', '-83.21872'), ('Piketon', 1907, '39.06820', '-82.99990'), ('Waverly', 4582, '39.12530', '-82.98250')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC133': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Aurora', 13556, '41.31220', '-81.34460'), ('Brady Lake', 513, '41.16270', '-81.31390'), ('Brimfield', 3248, '41.09020', '-81.35010'), ('Garrettsville', 2262, '41.28390', '-81.09540'), ('Hiram', 1242, '41.31020', '-81.14450'), ('Kent', 27906, '41.14710', '-81.36250'), ('Mantua', 1046, '41.28140', '-81.22270'), ('Ravenna', 11771, '41.15980', '-81.24260'), ('Streetsboro', 12311, '41.23880', '-81.34580'), ('Sugar Bush Knolls', 227, '41.20490', '-81.34670'), ('Windham', 2806, '41.23620', '-81.03640')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC135': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Camden', 2302, '39.63710', '-84.64650'), ('College Corner', 424, '39.56780', '-84.81260'), ('Eaton', 8133, '39.74850', '-84.63390'), ('Eldorado', 543, '39.90380', '-84.67580'), ('Gratis', 934, '39.64840', '-84.52880'), ('Lewisburg', 1798, '39.84900', '-84.54060'), ('New Paris', 1623, '39.85700', '-84.79350'), ('Verona', 430, '39.90290', '-84.48650'), ('West Alexandria', 1395, '39.74290', '-84.53360'), ('West Elkton', 194, '39.58880', '-84.55430'), ('West Manchester', 433, '39.90230', '-84.62620')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC137': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belmore', 171, '41.15440', '-83.94140'), ('Cloverdale', 201, '41.01960', '-84.30420'), ('Columbus Grove', 2200, '40.91940', '-84.05820'), ('Continental', 1188, '41.09890', '-84.26680'), ('Dupont', 268, '41.05490', '-84.30210'), ('Fort Jennings', 432, '40.90610', '-84.29930'), ('Gilboa', 170, '41.01890', '-83.92140'), ('Glandorf', 919, '41.03030', '-84.07920'), ('Kalida', 1031, '40.98590', '-84.19550'), ('Kieferville', 0, '41.10000', '-84.20700'), ('Leipsic', 2236, '41.09930', '-83.98450'), ('Miller City', 136, '41.10190', '-84.13200'), ('North Creek', 0, '41.14600', '-84.21900'), ('Ottawa', 4367, '41.02080', '-84.04140'), ('Ottoville', 873, '40.93160', '-84.33880'), ('Pandora', 1188, '40.94770', '-83.96120'), ('Prentiss', 0, '41.15300', '-84.01800'), ('Rimer', 0, '40.88400', '-84.21100'), ('Rushmore', 0, '40.87500', '-84.25000'), ('Vaughnsville', 0, '40.88200', '-84.15000'), ('West Leipsic', 271, '41.10540', '-84.00180'), ('Wisterman', 0, '41.12400', '-84.23800')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHC139': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bellville', 1773, '40.62080', '-82.51100'), ('Butler', 921, '40.58640', '-82.42010'), ('Lexington', 4165, '40.67820', '-82.58690'), ('Lucas', 620, '40.70290', '-82.42120'), ('Mansfield', 49346, '40.76280', '-82.52690'), ('Ontario', 5303, '40.76600', '-82.60760'), ('Plymouth', 1852, '40.99500', '-82.66800'), ('Shelby', 9821, '40.88210', '-82.66150')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHC141': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Adelphi', 371, '39.46460', '-82.74630'), ('Bainbridge', 213, '39.22676', '-83.26996'), ('Chillicothe', 21796, '39.33560', '-82.98810'), ('Clarksburg', 516, '39.50630', '-83.15460'), ('Frankfort', 1011, '39.40800', '-83.18280'), ('Kingston', 1032, '39.47220', '-82.91180'), ('North Fork Village', 1247, '39.33640', '-83.02780'), ('South Salem', 213, '39.33640', '-83.30750')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC143': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ballville', 3255, '41.32770', '-83.13730'), ('Bellevue', 8193, '41.27580', '-82.84220'), ('Burgoon', 199, '41.26730', '-83.25070'), ('Clyde', 6064, '41.30510', '-82.97750'), ('Fremont', 17375, '41.35030', '-83.11310'), ('Gibsonburg', 2506, '41.38650', '-83.32280'), ('Green Springs', 1247, '41.25710', '-83.05370'), ('Helena', 236, '41.33980', '-83.29180'), ('Lindsey', 504, '41.42060', '-83.22070'), ('Stony Prairie', 836, '41.35130', '-83.15520'), ('Woodville', 1977, '41.45130', '-83.36300')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHC145': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Franklin Furnace', 1537, '38.60800', '-82.84650'), ('Lucasville', 1588, '38.87900', '-82.99530'), ('New Boston', 2340, '38.75200', '-82.93500'), ('Otway', 86, '38.86500', '-83.18830'), ('Portsmouth', 20909, '38.73850', '-82.99110'), ('Rarden', 176, '38.92270', '-83.24280'), ('Rosemount', 2043, '38.78780', '-82.97170'), ('Sciotodale', 982, '38.75530', '-82.86110'), ('South Webster', 764, '38.81560', '-82.72790'), ('West Portsmouth', 3458, '38.76280', '-83.03830'), ('Wheelersburg', 6471, '38.73410', '-82.84530')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC147': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Attica', 955, '41.06520', '-82.88630'), ('Bettsville', 784, '41.24400', '-83.23360'), ('Bloomville', 1045, '41.05100', '-83.01330'), ('Fostoria', 13931, '41.15920', '-83.41360'), ('New Riegel', 226, '41.05150', '-83.31900'), ('Republic', 614, '41.12480', '-83.01610'), ('Tiffin', 18135, '41.11670', '-83.17750')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHC149': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Anna', 1319, '40.39560', '-84.17290'), ('Botkins', 1205, '40.46720', '-84.18260'), ('Fort Loramie', 1344, '40.34630', '-84.37030'), ('Jackson Center', 1369, '40.43910', '-84.03950'), ('Kettlersville', 175, '40.43880', '-84.26100'), ('Lockington', 208, '40.20780', '-84.23550'), ('Port Jefferson', 321, '40.33000', '-84.09210'), ('Russia', 551, '40.23240', '-84.41090'), ('Sidney', 20211, '40.28880', '-84.16320')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHC151': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Alliance', 23253, '40.91110', '-81.11710'), ('Beach City', 1137, '40.65270', '-81.58010'), ('Brewster', 2324, '40.71270', '-81.60070'), ('Canal Fulton', 5061, '40.89000', '-81.58450'), ('Canton', 80806, '40.81220', '-81.37330'), ('East Canton', 1629, '40.78890', '-81.28340'), ('East Sparta', 806, '40.66980', '-81.35380'), ('Greentown', 3154, '40.92750', '-81.40190'), ('Hartville', 2174, '40.96100', '-81.33400'), ('Hills And Dales', 260, '40.82810', '-81.44490'), ('Limaville', 193, '40.98410', '-81.14810'), ('Louisville', 8904, '40.83720', '-81.26090'), ('Magnolia', 931, '40.65150', '-81.29250'), ('Massillon', 31325, '40.78670', '-81.52010'), ('Meyers Lake', 565, '40.81390', '-81.41820'), ('Minerva', 3934, '40.72980', '-81.10240'), ('Navarre', 1440, '40.72260', '-81.52270'), ('North Canton', 16369, '40.87310', '-81.39840'), ('Perry Heights', 8900, '40.79680', '-81.46910'), ('Uniontown', 2802, '40.97350', '-81.40350'), ('Waynesburg', 1003, '40.66810', '-81.25920'), ('Wilmot', 335, '40.65610', '-81.63500')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC153': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Akron', 217074, '41.08040', '-81.52150'), ('Barberton', 27899, '41.01190', '-81.60570'), ('Boston Heights', 1186, '41.25570', '-81.50460'), ('Clinton', 1337, '40.92910', '-81.63110'), ('Cuyahoga Falls', 49374, '41.16900', '-81.52260'), ('Fairlawn', 7307, '41.12490', '-81.62130'), ('Green', 22817, '40.93630', '-81.43660'), ('Green', 22817, '40.94770', '-81.48650'), ('Hudson', 22439, '41.24470', '-81.45120'), ('Lakemore', 2561, '41.02130', '-81.42770'), ('Macedonia', 9224, '41.31100', '-81.49730'), ('Mogadore', 3893, '41.05040', '-81.40060'), ('Montrose-Ghent', 4906, '41.15730', '-81.64250'), ('Munroe Falls', 5314, '41.13970', '-81.43630'), ('Northfield', 3827, '41.34360', '-81.52970'), ('Norton', 11523, '41.02880', '-81.64570'), ('Peninsula', 602, '41.23680', '-81.55300'), ('Pigeon Creek', 945, '41.11100', '-81.67320'), ('Portage Lakes', 9870, '40.98710', '-81.53660'), ('Reminderville', 2347, '41.32740', '-81.39730'), ('Richfield', 3286, '41.23170', '-81.63730'), ('Silver Lake', 3019, '41.15660', '-81.45950'), ('Stow', 32139, '41.17660', '-81.43640'), ('Tallmadge', 16390, '41.10330', '-81.42320'), ('Twinsburg', 17006, '41.32420', '-81.45290')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC155': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bolindale', 2489, '41.20730', '-80.77780'), ('Brookfield Center', 1288, '41.24050', '-80.55820'), ('Champion Heights', 4665, '41.28810', '-80.84880'), ('Churchill', 2601, '41.17360', '-80.66730'), ('Cortland', 6830, '41.33150', '-80.72340'), ('Girard', 10902, '41.15460', '-80.69750'), ('Howland Center', 6481, '41.25120', '-80.74570'), ('Hubbard', 8284, '41.16000', '-80.56960'), ('Lordstown', 3633, '41.16540', '-80.85440'), ('McDonald', 3481, '41.16420', '-80.72380'), ('Mineral Ridge', 3900, '41.13910', '-80.76730'), ('Newton Falls', 5002, '41.18890', '-80.96980'), ('Niles', 20932, '41.18780', '-80.75310'), ('Orangeville', 189, '41.34330', '-80.52920'), ('South Canal', 1346, '41.17730', '-80.98680'), ('Turnpike Interchange', 1188, '41.21640', '-80.93440'), ('Vienna', 1067, '41.25510', '-80.67710'), ('Warren', 46832, '41.23810', '-80.81690'), ('West Farmington', 519, '41.39100', '-80.97350'), ('West Hill', 2523, '41.23090', '-80.52740'), ('Yankee Lake', 99, '41.27140', '-80.57070')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC157': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Baltic', 743, '40.44130', '-81.70180'), ('Barnhill', 364, '40.44820', '-81.36760'), ('Bolivar', 894, '40.65000', '-81.45480'), ('Dennison', 2992, '40.39710', '-81.32790'), ('Dover', 12210, '40.52980', '-81.47980'), ('Gnadenhutten', 1280, '40.35920', '-81.43130'), ('Midvale', 547, '40.43700', '-81.37210'), ('Mineral City', 841, '40.60240', '-81.36150'), ('Newcomerstown', 4008, '40.27450', '-81.59880'), ('New Philadelphia', 17056, '40.48670', '-81.44130'), ('Parral', 241, '40.56120', '-81.49500'), ('Port Washington', 552, '40.32690', '-81.51960'), ('Roswell', 276, '40.47540', '-81.34640'), ('Stillwater', 0, '40.32000', '-81.32000'), ('Stone Creek', 184, '40.39870', '-81.55870'), ('Strasburg', 2310, '40.60230', '-81.52940'), ('Sugarcreek', 2174, '40.50660', '-81.64190'), ('Tuscarawas', 934, '40.39750', '-81.40420'), ('Uhrichsville', 5662, '40.40010', '-81.35080'), ('Zoar', 193, '40.61400', '-81.42430')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHC159': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Magnetic Springs', 323, '40.35370', '-83.26280'), ('Marysville', 15942, '40.23770', '-83.37470'), ('Milford Center', 626, '40.17910', '-83.43710'), ('Richwood', 2156, '40.42710', '-83.29620'), ('Unionville Center', 299, '40.13630', '-83.34160')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHC161': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Abanaka', 0, '40.76000', '-84.69800'), ('Cavett', 0, '40.94600', '-84.58100'), ('Convoy', 1110, '40.91720', '-84.70620'), ('Dull', 0, '40.76400', '-84.66600'), ('Elgin', 50, '40.74170', '-84.47610'), ('Glenmore', 0, '40.78500', '-84.69800'), ('Jonestown', 0, '40.77100', '-84.51400'), ('Middlebury', 0, '40.84600', '-84.74600'), ('Middle Point', 593, '40.85600', '-84.44680'), ('Monticello', 0, '40.69800', '-84.42600'), ('Ohio City', 784, '40.77010', '-84.61610'), ('Schumm', 0, '40.75600', '-84.72700'), ('Scott', 322, '40.98860', '-84.58410'), ('Van Wert', 10690, '40.86460', '-84.58170'), ('Venedocia', 160, '40.78540', '-84.45550'), ('Wetzel', 0, '40.94500', '-84.43600'), ('Willshire', 463, '40.74660', '-84.79210'), ('Wren', 199, '40.80030', '-84.77410')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHC163': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Hamden', 871, '39.16000', '-82.52540'), ('Lake Hope State Park', 375, '39.33330', '-82.35160'), ('McArthur', 1888, '39.24700', '-82.47840'), ('Wilkesville', 151, '39.07650', '-82.32660'), ('Zaleski', 375, '39.28060', '-82.39630')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC165': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Butlerville', 231, '39.30200', '-84.08900'), ('Carlisle', 5121, '39.57830', '-84.32090'), ('Corwin', 256, '39.52500', '-84.07320'), ('Five Points', 2191, '39.56160', '-84.19710'), ('Franklin', 11396, '39.55390', '-84.30120'), ('Harveysburg', 563, '39.50030', '-84.00230'), ('Landen', 12766, '39.30790', '-84.27970'), ('Lebanon', 16962, '39.43336', '-84.20737'), ('Loveland Park', 1799, '39.29840', '-84.26250'), ('Maineville', 885, '39.31580', '-84.22310'), ('Mason', 22016, '39.36000', '-84.30700'), ('Morrow', 1286, '39.34910', '-84.12660'), ('Pleasant Plain', 156, '39.27970', '-84.10930'), ('South Lebanon', 2538, '39.37120', '-84.21140'), ('Springboro', 12380, '39.56340', '-84.23770'), ('Waynesville', 2558, '39.53410', '-84.08660')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHC167': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belpre', 6660, '39.27830', '-81.58860'), ('Beverly', 1282, '39.54970', '-81.63630'), ('Devola', 2771, '39.47330', '-81.46960'), ('Lowell', 628, '39.52910', '-81.50750'), ('Lower Salem', 109, '39.56350', '-81.39460'), ('Macksburg', 202, '39.63120', '-81.45690'), ('Marietta', 14515, '39.42140', '-81.44690'), ('Matamoras', 1135, '39.51860', '-81.07050')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHC169': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Apple Creek', 999, '40.74830', '-81.83350'), ('Burbank', 279, '40.98760', '-81.99460'), ('Congress', 192, '40.92630', '-82.05530'), ('Creston', 2161, '40.97940', '-81.90040'), ('Dalton', 1605, '40.79920', '-81.69720'), ('Doylestown', 2799, '40.97030', '-81.69670'), ('Fredericksburg', 487, '40.67740', '-81.86970'), ('Marshallville', 826, '40.90040', '-81.73330'), ('Mount Eaton', 246, '40.69500', '-81.70280'), ('Orrville', 8551, '40.84680', '-81.77120'), ('Rittman', 6314, '40.97100', '-81.78330'), ('Shreve', 1582, '40.68220', '-82.02230'), ('Smithville', 1333, '40.86280', '-81.85980'), ('West Salem', 1501, '40.96960', '-82.10780'), ('Wooster', 24811, '40.81850', '-81.93290')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHC171': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Alvordton', 305, '41.66530', '-84.43440'), ('Blakeslee', 130, '41.52390', '-84.73110'), ('Bridgewater Center', 0, '41.65800', '-84.63100'), ('Bryan', 8333, '41.47020', '-84.54800'), ('Columbia', 0, '41.63300', '-84.78900'), ('Edgerton', 2117, '41.44670', '-84.74980'), ('Edon', 898, '41.55660', '-84.76830'), ('Hallock', 0, '41.52700', '-84.55700'), ('Kunkle', 0, '41.63700', '-84.49500'), ('Lake Seneca', 0, '41.68900', '-84.66500'), ('Melbern', 0, '41.46700', '-84.65100'), ('Montpelier', 4320, '41.58160', '-84.60050'), ('Nettle Lake', 0, '41.67900', '-84.72300'), ('Pioneer', 1460, '41.67800', '-84.55210'), ('Pulaski', 0, '41.51100', '-84.50800'), ('Stryker', 1406, '41.50320', '-84.41760'), ('West Jefferson', 0, '41.57200', '-84.55700'), ('West Unity', 1790, '41.58600', '-84.43420'), ('Williams Center', 0, '41.42900', '-84.61000')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHC173': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bairdstown', 130, '41.17100', '-83.60700'), ('Bloomdale', 724, '41.17090', '-83.55360'), ('Bowling Green', 29636, '41.37640', '-83.64950'), ('Bradner', 1171, '41.32360', '-83.43650'), ('Custar', 208, '41.28420', '-83.84350'), ('Cygnet', 564, '41.24010', '-83.64380'), ('Grand Rapids', 1002, '41.41040', '-83.86570'), ('Haskins', 638, '41.46380', '-83.70410'), ('Hoytville', 296, '41.19030', '-83.78370'), ('Jerry City', 453, '41.25310', '-83.60270'), ('Luckey', 998, '41.45230', '-83.48370'), ('Millbury', 1161, '41.56410', '-83.42570'), ('Milton Center', 195, '41.30140', '-83.82950'), ('North Baltimore', 3361, '41.18030', '-83.67560'), ('Northwood', 5471, '41.61030', '-83.48030'), ('Pemberville', 1365, '41.40980', '-83.45790'), ('Perrysburg', 16945, '41.55300', '-83.62380'), ('Portage', 428, '41.32380', '-83.64790'), ('Risingsun', 620, '41.26880', '-83.42640'), ('Rossford', 6406, '41.60370', '-83.56200'), ('Tontogany', 364, '41.42010', '-83.74010'), ('Walbridge', 2546, '41.58560', '-83.48920'), ('Wayne', 842, '41.30120', '-83.47240'), ('West Millgrove', 78, '41.24380', '-83.49210'), ('Weston', 1659, '41.34580', '-83.79460')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHC175': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Carey', 3901, '40.95150', '-83.38190'), ('Harpster', 203, '40.73860', '-83.25060'), ('Kirby', 132, '40.81340', '-83.41870'), ('Marseilles', 124, '40.70120', '-83.39280'), ('Nevada', 814, '40.81860', '-83.13140'), ('Sycamore', 914, '40.95100', '-83.17090'), ('Upper Sandusky', 6533, '40.83100', '-83.28080'), ('Wharton', 409, '40.86200', '-83.46470')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OKC001': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ballard', 0, '36.09440', '-94.58920'), ('Baron', 0, '35.92360', '-94.61610'), ('Bunch', 0, '35.68250', '-94.76080'), ('Christie', 166, '35.95810', '-94.69000'), ('Marietta', 2663, '35.84330', '-94.65780'), ('Proctor', 0, '35.96610', '-94.77720'), ('Stilwell', 3276, '35.81440', '-94.62830'), ('Watts', 316, '36.10920', '-94.57000'), ('Westville', 1596, '35.99250', '-94.56780')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC003': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Aline', 214, '36.50900', '-98.44830'), ('Amorita', 44, '36.92390', '-98.29350'), ('Burlington', 156, '36.90080', '-98.42330'), ('Byron', 45, '36.90120', '-98.29470'), ('Carmen', 411, '36.57840', '-98.45770'), ('Cherokee', 1630, '36.75410', '-98.35490'), ('Driftwood', 0, '36.88030', '-98.35990'), ('Goltry', 268, '36.53200', '-98.15070'), ('Great Salt Plains Lake', 0, '36.73000', '-98.20000'), ('Helena', 443, '36.54640', '-98.27020'), ('Ingersoll', 0, '36.79610', '-98.39400'), ('Jet', 230, '36.66680', '-98.18070'), ('Lambert', 9, '36.68370', '-98.42390')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKC005': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Atoka', 2988, '34.38460', '-96.12870'), ('Atoka Reservoir', 0, '34.50420', '-96.07500'), ('Bentley', 0, '34.21500', '-96.07570'), ('Boggy Depot State Park', 0, '34.32180', '-96.31110'), ('Caney', 199, '34.23290', '-96.21340'), ('Chockie', 0, '34.58030', '-95.99610'), ('Daisy', 0, '34.53590', '-95.74030'), ('Darwin', 0, '34.24780', '-95.77920'), ('Lane', 0, '34.29890', '-95.98800'), ('McGee Creek Lake', 0, '34.33840', '-95.88430'), ('Redden', 0, '34.50630', '-95.84600'), ('Stringtown', 366, '34.46530', '-96.05320'), ('Tushka', 345, '34.31950', '-96.16600'), ('Wardville', 54, '34.65550', '-96.03040')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKC007': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Balko', 0, '36.63000', '-100.68000'), ('Beaver', 1570, '36.81450', '-100.52390'), ('Boyd', 0, '36.70000', '-100.82000'), ('Bryans Corner', 0, '36.62000', '-100.82000'), ('Elmwood', 0, '36.62000', '-100.52000'), ('Floris', 0, '36.87000', '-100.70000'), ('Forgan', 532, '36.90640', '-100.53760'), ('Gate', 112, '36.85190', '-100.05540'), ('Gray', 0, '36.55000', '-100.82000'), ('Knowles', 32, '36.87260', '-100.19250'), ('Mocane', 0, '36.88000', '-100.53000'), ('Slapout', 0, '36.62000', '-100.12000'), ('Turpin', 0, '36.87000', '-100.88000')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'OKC009': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Carter', 254, '35.21720', '-99.50340'), ('Delhi', 0, '35.17500', '-99.68020'), ('Elk City', 10510, '35.41450', '-99.41730'), ('Erick', 1023, '35.21350', '-99.86690'), ('Retrop', 0, '35.16030', '-99.36020'), ('Sayre', 4114, '35.30000', '-99.63990'), ('Sweetwater', 0, '35.42230', '-99.91140'), ('Texola', 47, '35.21860', '-99.98940')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKC011': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Canton', 618, '36.05600', '-98.58860'), ('Canton Lake', 0, '36.12800', '-98.60730'), ('Eagle City', 0, '35.93310', '-98.59040'), ('Geary', 1258, '35.62940', '-98.31780'), ('Greenfield', 123, '35.72870', '-98.37710'), ('Hitchcock', 141, '35.96840', '-98.34890'), ('Homestead', 0, '36.14720', '-98.39190'), ('Longdale', 310, '36.13430', '-98.55020'), ('Okeene', 1240, '36.11650', '-98.31810'), ('Southard', 0, '36.05750', '-98.47850'), ('Watonga', 4658, '35.84920', '-98.41220')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKC013': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Achille', 506, '33.83450', '-96.38990'), ('Albany', 0, '33.88120', '-96.16320'), ('Armstrong', 141, '34.05240', '-96.34390'), ('Bennington', 289, '34.00110', '-96.03840'), ('Blue', 0, '33.99690', '-96.22810'), ('Bokchito', 564, '34.01780', '-96.13930'), ('Caddo', 944, '34.12670', '-96.26340'), ('Calera', 1739, '33.93310', '-96.42760'), ('Cartwright', 0, '33.85290', '-96.56300'), ('Colbert', 1065, '33.85740', '-96.50420'), ('Durant', 13549, '33.99660', '-96.38550'), ('Hendrix', 79, '33.77470', '-96.40800'), ('Kemp', 144, '33.76900', '-96.35460'), ('Kenefic', 192, '34.14860', '-96.36030'), ('Mead', 123, '34.00070', '-96.51130'), ('Silo', 282, '34.03970', '-96.47530'), ('Utica', 0, '33.90180', '-96.22450'), ('Wade', 0, '33.88780', '-96.08130')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKC015': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Albert', 0, '35.23300', '-98.41220'), ('Alfalfa', 0, '35.22200', '-98.60610'), ('Anadarko', 6645, '35.07540', '-98.24310'), ('Apache', 1616, '34.89380', '-98.36310'), ('Binger', 708, '35.30920', '-98.34370'), ('Boone', 0, '34.89860', '-98.46220'), ('Bridgeport', 109, '35.54690', '-98.37830'), ('Carnegie', 1637, '35.10460', '-98.60260'), ('Cement', 530, '34.93510', '-98.13830'), ('Cogar', 0, '35.33410', '-98.13070'), ('Cyril', 1168, '34.89760', '-98.20210'), ('Eakly', 276, '35.30630', '-98.55570'), ('Fort Cobb', 667, '35.09860', '-98.43620'), ('Fort Cobb Reservoir', 0, '35.19030', '-98.47800'), ('Gracemont', 336, '35.18780', '-98.25650'), ('Hinton', 2175, '35.47340', '-98.35530'), ('Hydro', 1060, '35.54880', '-98.57860'), ('Lake Chickasha', 0, '35.14020', '-98.14060'), ('Lookeba', 131, '35.36300', '-98.36400'), ('Stecker', 0, '34.95830', '-98.31500')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC017': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Calumet', 535, '35.60050', '-98.11910'), ('Cedar Lake', 0, '35.42900', '-98.19250'), ('Concho', 16212, '35.61260', '-97.99370'), ('El Reno', 16212, '35.52820', '-97.95580'), ('Mustang', 13156, '35.39170', '-97.72450'), ('Piedmont', 3650, '35.64230', '-97.74600'), ('Richland', 0, '35.57680', '-97.80290'), ('Union City', 1375, '35.39210', '-97.94020'), ('Yukon', 21043, '35.49730', '-97.74280')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC019': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ardmore', 23711, '34.17440', '-97.13580'), ('Dickson', 1139, '34.18720', '-96.98590'), ('Fox', 0, '34.36340', '-97.49260'), ('Gene Autry', 99, '34.28480', '-97.03770'), ('Graham', 0, '34.33950', '-97.43540'), ('Healdton', 2786, '34.23350', '-97.48680'), ('Lone Grove', 4631, '34.17580', '-97.26190'), ('Milo', 0, '34.33260', '-97.33970'), ('Pooleville', 0, '34.42000', '-97.40000'), ('Ratliff City', 131, '34.44860', '-97.51200'), ('Springer', 577, '34.31340', '-97.13930'), ('Tatums', 172, '34.48280', '-97.46190'), ('Wilson', 1584, '34.16180', '-97.42560')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKC021': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cookson', 0, '35.71080', '-94.91970'), ('Eldon', 991, '35.92810', '-94.84000'), ('Hulbert', 543, '35.93250', '-95.14110'), ('Lost City', 809, '35.98780', '-95.13610'), ('Peggs', 0, '36.08080', '-95.09920'), ('Pumpkin Center', 308, '35.71280', '-95.12690'), ('Scraper', 475, '36.08940', '-94.85030'), ('Tahlequah', 14458, '35.91530', '-94.96970')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKC023': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Apple', 0, '34.12750', '-95.41720'), ('Boswell', 703, '34.02720', '-95.86890'), ('Fallon', 0, '33.99780', '-95.41670'), ('Fort Towson', 611, '34.01860', '-95.26610'), ('Frogville', 0, '33.89750', '-95.31250'), ('Gay', 0, '33.95330', '-95.62110'), ('Goodland', 0, '33.98170', '-95.55500'), ('Grant', 0, '33.94310', '-95.51330'), ('Hugo', 5536, '34.01060', '-95.50940'), ('Huskey', 0, '33.94580', '-95.27810'), ('Kent', 0, '34.11310', '-95.62280'), ('Messer', 0, '34.08720', '-95.46920'), ('Ord', 0, '33.91000', '-95.49920'), ('Sawyer', 274, '34.01360', '-95.37140'), ('Soper', 300, '34.03280', '-95.69690'), ('Speer', 0, '34.11330', '-95.55560'), ('Swink', 83, '34.01780', '-95.20190'), ('Unger', 0, '34.02610', '-95.78170')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKC025': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Black Mesa Park', 0, '36.84780', '-102.88190'), ('Boise City', 1483, '36.73010', '-102.51000'), ('Felt', 0, '36.57000', '-102.78000'), ('Griggs', 0, '36.60000', '-102.12000'), ('Kenton', 0, '36.90000', '-102.97000'), ('Keyes', 410, '36.80760', '-102.25150'), ('Sturgis', 0, '36.88000', '-102.05000'), ('Wheeless', 0, '36.72000', '-102.90000')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'OKC027': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Etowah', 122, '35.13120', '-97.16870'), ('Lake Thunderbird', 0, '35.22800', '-97.23000'), ('Lexington', 2086, '35.01490', '-97.33530'), ('Moore', 41138, '35.33930', '-97.48780'), ('Noble', 5260, '35.13930', '-97.39450'), ('Norman', 95694, '35.21910', '-97.44190'), ('Slaughterville', 3609, '35.08720', '-97.33490'), ('Stanley Draper Lake', 0, '35.34590', '-97.35290'), ('Stella', 506132, '35.31900', '-97.21250')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC029': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Centrahoma', 110, '34.60920', '-96.34350'), ('Clarita', 0, '34.48520', '-96.43590'), ('Coalgate', 2005, '34.53800', '-96.21830'), ('Lehigh', 315, '34.46890', '-96.21740'), ('Olney', 0, '34.46980', '-96.35710'), ('Phillips', 150, '34.50590', '-96.21990'), ('Tupelo', 377, '34.60210', '-96.42020')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKC031': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cache', 2371, '34.62980', '-98.62670'), ('Chattanooga', 432, '34.42400', '-98.65470'), ('Elgin', 1210, '34.77860', '-98.29240'), ('Faxon', 134, '34.46040', '-98.57830'), ('Fletcher', 1022, '34.82450', '-98.24030'), ('Fort Sill', 0, '34.65860', '-98.40660'), ('Geronimo', 959, '34.48250', '-98.38330'), ('Indiahoma', 374, '34.62030', '-98.75180'), ('Lake Ellsworth', 0, '34.82610', '-98.35410'), ('Lake Lawtonka', 0, '34.75700', '-98.50520'), ('Lawton', 92757, '34.60670', '-98.39450'), ('Medicine Park', 373, '34.72920', '-98.50240'), ('Meers', 0, '34.78260', '-98.57830'), ('Sterling', 762, '34.75030', '-98.17060')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC033': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cookietown', 0, '34.27390', '-98.45290'), ('Devol', 150, '34.19470', '-98.58770'), ('Hulen', 0, '34.50470', '-98.22280'), ('Randlett', 511, '34.17770', '-98.46270'), ('Taylor', 0, '34.17340', '-98.33110'), ('Temple', 1146, '34.27350', '-98.23470'), ('Walters', 2657, '34.35470', '-98.30900')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC035': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Big Cabin', 293, '36.53780', '-95.22110'), ('Bluejacket', 274, '36.79970', '-95.07080'), ('Centrailia', 0, '36.80000', '-95.33300'), ('Centralia', 0, '36.79670', '-95.35310'), ('Hollow', 0, '36.88750', '-95.26970'), ('Ketchum', 286, '36.52440', '-95.02360'), ('Pyramid Corners', 0, '36.80170', '-95.14310'), ('Vinita', 6472, '36.63860', '-95.15390'), ('Welch', 597, '36.87360', '-95.09560'), ('White Oak', 0, '36.62030', '-95.26390')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC037': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bristow', 4325, '35.83060', '-96.39080'), ('Depew', 564, '35.80280', '-96.50580'), ('Drumright', 2905, '35.98830', '-96.60080'), ('Kellyville', 906, '35.94360', '-96.21330'), ('Kiefer', 1026, '35.94470', '-96.06500'), ('Mannford', 2095, '36.13330', '-96.35420'), ('Milfay', 0, '35.75500', '-96.56560'), ('Mounds', 1153, '35.87640', '-96.06080'), ('Oilton', 1099, '36.08440', '-96.58330'), ('Sapulpa', 19166, '35.99860', '-96.11390'), ('Shamrock', 125, '35.91000', '-96.58360'), ('Silver City', 0, '36.09030', '-96.49420'), ('Slick', 148, '35.77690', '-96.26580')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC039': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arapaho', 748, '35.57810', '-98.95960'), ('Butler', 345, '35.63610', '-99.18540'), ('Clinton', 8833, '35.51270', '-98.97400'), ('Custer City', 393, '35.66450', '-98.88340'), ('Foss Reservoir', 0, '35.57060', '-99.22080'), ('Moorewood', 0, '35.74120', '-99.35270'), ('Stafford', 0, '35.53670', '-99.12240'), ('Thomas', 1238, '35.74730', '-98.74910'), ('Weatherford', 9859, '35.53080', '-98.70310')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKC041': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bernice', 504, '36.61580', '-94.91750'), ('Chloeta', 0, '36.42310', '-94.97060'), ('Cleora', 1113, '36.57890', '-94.97080'), ('Colcord', 819, '36.26420', '-94.69280'), ('Grove', 5131, '36.59360', '-94.76890'), ('Jay', 2482, '36.42110', '-94.79670'), ('Kansas', 685, '36.20500', '-94.79750'), ('Leach', 220, '36.20470', '-94.92220'), ('Oaks', 412, '36.16610', '-94.85440'), ('Tiff City', 855, '36.66820', '-94.61880'), ('Twin Oaks', 186, '36.20530', '-94.85110'), ('West Siloam Spring', 877, '36.17610', '-94.57470'), ('Zena', 123, '36.49610', '-94.85330')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC043': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Camargo', 115, '36.01780', '-99.28830'), ('Cestos', 0, '36.14430', '-99.09430'), ('Fay', 0, '35.81600', '-98.65720'), ('Hucmac', 0, '36.05760', '-98.79180'), ('Leedey', 345, '35.86950', '-99.34500'), ('Oakwood', 72, '35.93080', '-98.70320'), ('Putnam', 46, '35.85560', '-98.96810'), ('Seiling', 875, '36.14960', '-98.92470'), ('Taloga', 372, '36.04020', '-98.96430'), ('Vici', 668, '36.14910', '-99.29890')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKC045': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arnett', 520, '36.13530', '-99.77040'), ('Catesby', 0, '36.49300', '-99.96300'), ('Fargo', 326, '36.37340', '-99.62240'), ('Gage', 429, '36.31810', '-99.75670'), ('Harmon', 0, '36.14470', '-99.56050'), ('Shattuck', 1274, '36.27260', '-99.87710')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKC047': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bison', 0, '36.19570', '-97.88780'), ('Breckenridge', 251, '36.43610', '-97.73260'), ('Carrier', 77, '36.47660', '-98.02310'), ('Covington', 553, '36.30750', '-97.58560'), ('Douglas', 55, '36.26000', '-97.66730'), ('Drummond', 405, '36.30100', '-98.03540'), ('Enid', 47045, '36.40460', '-97.88410'), ('Fairmont', 147, '36.35490', '-97.70330'), ('Garber', 845, '36.43650', '-97.58040'), ('Hayward', 0, '36.27590', '-97.51430'), ('Hillsdale', 101, '36.56400', '-97.99250'), ('Hunter', 173, '36.56400', '-97.66240'), ('Kremlin', 240, '36.54660', '-97.83090'), ('Lahoma', 577, '36.38790', '-98.09030'), ('North Enid', 796, '36.43500', '-97.87020'), ('Vance Air Force Base', 0, '36.34000', '-97.90000'), ('Waukomis', 1261, '36.28000', '-97.89880')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKC049': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Antioch', 0, '34.72470', '-97.40550'), ('Elmore City', 756, '34.62330', '-97.39650'), ('Erin Springs', 114, '34.81070', '-97.60510'), ('Foster', 0, '34.61620', '-97.48750'), ('Hennepin', 0, '34.50990', '-97.34670'), ('Lindsay', 2889, '34.83580', '-97.60560'), ('Maysville', 1313, '34.81670', '-97.41020'), ('Paoli', 649, '34.82650', '-97.25980'), ('Pauls Valley', 6256, '34.74040', '-97.22160'), ('Pernell', 0, '34.56140', '-97.51050'), ('Stratford', 1474, '34.79510', '-96.96000'), ('Whitebead', 0, '34.76100', '-97.30050'), ('Wynnewood', 2367, '34.64430', '-97.16170')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKC051': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Acme', 0, '34.79720', '-98.01930'), ('Agawam', 0, '34.87420', '-97.94740'), ('Alex', 635, '34.91540', '-97.77890'), ('Amber', 490, '35.16140', '-97.88050'), ('Bradley', 182, '34.87730', '-97.70850'), ('Bridge Creek', 0, '35.23230', '-97.71980'), ('Chickasha', 15850, '35.04190', '-97.94380'), ('Cox City', 0, '34.72530', '-97.73170'), ('Laverty', 0, '34.98960', '-98.07550'), ('Middleberg', 0, '35.10600', '-97.73550'), ('Minco', 1672, '35.31340', '-97.94430'), ('Ninnekah', 994, '34.94650', '-97.92360'), ('Norge', 82, '34.98790', '-97.99570'), ('Pocasset', 192, '35.19450', '-97.95380'), ('Rush Springs', 1278, '34.78270', '-97.95620'), ('Tabler', 0, '35.04440', '-97.82130'), ('Tuttle', 4294, '35.29080', '-97.81280'), ('Verden', 659, '35.08370', '-98.08710')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC053': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Deer Creek', 124, '36.80630', '-97.51880'), ('Jefferson', 37, '36.71910', '-97.79020'), ('Lamont', 465, '36.69110', '-97.55610'), ('Manchester', 104, '36.99440', '-98.03500'), ('Medford', 1172, '36.80730', '-97.73370'), ('Nash', 224, '36.66540', '-98.05210'), ('Pond Creek', 896, '36.66750', '-97.80170'), ('Renfrow', 16, '36.92420', '-97.65640'), ('Wakita', 420, '36.88180', '-97.92340')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKC055': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Altus-Lugert Lake', 0, '34.93360', '-99.31410'), ('Brinkman', 0, '35.01060', '-99.51580'), ('Granite', 1844, '34.96290', '-99.37830'), ('Hester', 0, '34.80160', '-99.43170'), ('Mangum', 2924, '34.87880', '-99.50320'), ('Willow', 114, '35.05250', '-99.50920')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC057': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Gould', 206, '34.66910', '-99.77380'), ('Hollis', 2264, '34.68970', '-99.91540'), ('Madge', 0, '34.90050', '-99.95850'), ('McKnight', 0, '34.76620', '-99.91230'), ('McQueen', 0, '34.66670', '-99.70180'), ('Vinson', 0, '34.89940', '-99.85960')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC059': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Buffalo', 1200, '36.83490', '-99.62760'), ('Laverne', 1097, '36.70970', '-99.89580'), ('May', 33, '36.61650', '-99.74900'), ('Rosston', 66, '36.81220', '-99.92990'), ('Selman', 0, '36.80390', '-99.48990')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKC061': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Enterprise', 0, '35.22970', '-95.37970'), ('Kanima', 0, '35.28000', '-95.02000'), ('Keota', 517, '35.25560', '-94.92140'), ('Kinta', 243, '35.11920', '-95.23750'), ('Lequire', 0, '35.10440', '-95.10720'), ('Lewisville', 0, '35.12000', '-95.27670'), ('McCurtain', 466, '35.14970', '-94.97050'), ('Mc Curtain', 466, '35.15000', '-94.97000'), ('Stigler', 2731, '35.25360', '-95.12280'), ('Tamaha', 198, '35.39610', '-94.98330'), ('Whitefield', 231, '35.25250', '-95.23720')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKC063': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Atwood', 113, '34.95720', '-96.33780'), ('Calvin', 279, '34.96740', '-96.25320'), ('Dustin', 452, '35.27120', '-96.03140'), ('Gerty', 101, '34.83600', '-96.28960'), ('Holdenville', 4732, '35.08480', '-96.39900'), ('Horntown', 61, '35.08700', '-96.24780'), ('Lamar', 172, '35.09790', '-96.12680'), ('Spaulding', 62, '35.01400', '-96.44000'), ('Stuart', 220, '34.90070', '-96.09980'), ('Wetumka', 1451, '35.23750', '-96.24120'), ('Yeager', 67, '35.15680', '-96.33960')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKC065': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Altus', 21447, '34.64360', '-99.33300'), ('Altus Air Force Base', 0, '34.65800', '-99.28800'), ('Blair', 894, '34.77900', '-99.33300'), ('Duke', 341, '34.66280', '-99.56930'), ('Eldorado', 527, '34.47250', '-99.65020'), ('Elmer', 96, '34.48140', '-99.35230'), ('Friendship', 0, '34.69600', '-99.22900'), ('Headrick', 130, '34.62670', '-99.13710'), ('Hess', 0, '34.46450', '-99.27230'), ('Humphreys', 0, '34.55670', '-99.23860'), ('Martha', 205, '34.72650', '-99.38600'), ('Olustee', 680, '34.54790', '-99.42390'), ('Warren', 0, '34.78320', '-99.20960')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC067': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Addington', 117, '34.24310', '-97.96630'), ('Cornish', 172, '34.15910', '-97.59670'), ('Grady', 0, '34.02050', '-97.66550'), ('Hastings', 155, '34.22510', '-98.10840'), ('Oscar', 0, '33.98400', '-97.75280'), ('Petersburg', 0, '33.95500', '-97.56970'), ('Ringling', 1135, '34.17670', '-97.59040'), ('Ryan', 894, '34.02160', '-97.95400'), ('Sugden', 59, '34.08120', '-97.97840'), ('Terral', 386, '33.89610', '-97.93870'), ('Waurika', 1988, '34.16690', '-97.99720'), ('Waurika Lake', 0, '34.28740', '-98.08360')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKC069': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bromide', 163, '34.41780', '-96.49430'), ('Coleman', 0, '34.27000', '-96.42000'), ('Connerville', 0, '34.44700', '-96.63400'), ('Fillmore', 0, '34.27410', '-96.49620'), ('Mannsville', 587, '34.18740', '-96.88000'), ('Milburn', 312, '34.24090', '-96.55160'), ('Mill Creek', 336, '34.40260', '-96.82490'), ('Nida', 0, '34.14320', '-96.50120'), ('Pontotoc', 0, '34.48970', '-96.62530'), ('Ravia', 459, '34.24060', '-96.75570'), ('Reagan', 0, '34.35000', '-96.72000'), ('Russett', 0, '34.19010', '-96.80450'), ('Tishomingo', 3162, '34.23420', '-96.67630'), ('Wapanucka', 445, '34.37340', '-96.42440')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKC071': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Blackwell', 7668, '36.80450', '-97.28260'), ('Blackwell Lake', 0, '36.94940', '-97.39800'), ('Braman', 244, '36.92290', '-97.33370'), ('c', 0, '36.77780', '-96.85660'), ('Chilocco', 0, '36.98730', '-97.06920'), ('Hardy', 0, '36.97120', '-96.79660'), ('Kaw City', 372, '36.76490', '-96.86300'), ('Kildare', 92, '36.80900', '-97.04960'), ('Nardin', 75, '36.80630', '-97.44800'), ('Newkirk', 2243, '36.88170', '-97.05540'), ('Peckham', 0, '36.88670', '-97.17560'), ('Ponca City', 25919, '36.70390', '-97.08130'), ('Tonkawa', 3299, '36.68280', '-97.30780')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKC073': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cashion', 635, '35.79920', '-97.67860'), ('Dover', 367, '35.98160', '-97.91070'), ('Hennessey', 2058, '36.10590', '-97.89800'), ('Kingfisher', 4380, '35.85670', '-97.93270'), ('Lacey', 0, '36.11590', '-98.08640'), ('Loyal', 81, '35.97280', '-98.11730'), ('Okarche', 1110, '35.72750', '-97.97710'), ('Omega', 0, '35.87010', '-98.19860')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC075': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cooperton', 20, '34.86650', '-98.86780'), ('Gotebo', 272, '35.07110', '-98.87380'), ('Hobart', 3997, '35.02920', '-99.09610'), ('Lone Wolf', 500, '34.99010', '-99.24570'), ('Mountain Park', 390, '34.69850', '-98.95160'), ('Mountain View', 880, '35.09860', '-98.74780'), ('Roosevelt', 280, '34.84800', '-99.02200'), ('Snyder', 1509, '34.65980', '-98.95190'), ('Tom Steed Reservoir', 0, '34.76190', '-98.99280')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC077': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bengal', 0, '34.83280', '-95.06170'), ('Damon', 0, '34.85500', '-95.30750'), ('Gowen', 0, '34.88140', '-95.47670'), ('Higgins', 0, '34.81140', '-95.43330'), ('Panola', 0, '34.92860', '-95.21310'), ('Red Oak', 581, '34.95080', '-95.08000'), ('Wilburton', 2972, '34.91860', '-95.30890'), ('Yanush', 0, '34.70970', '-95.31360')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKC079': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arkoma', 2180, '35.35440', '-94.44390'), ('Big Cedar', 0, '34.64580', '-94.64860'), ('Bokoshe', 450, '35.18640', '-94.78560'), ('Braden', 0, '35.28420', '-94.50110'), ('Cameron', 312, '35.13390', '-94.53440'), ('Cowlington', 133, '35.27530', '-94.72830'), ('Fanshawe', 384, '34.95080', '-94.90810'), ('Heavener', 3201, '34.88920', '-94.60060'), ('Hodgen', 0, '34.84170', '-94.63110'), ('Honobia', 0, '34.53890', '-94.93720'), ('Howe', 697, '34.95110', '-94.63690'), ('Milton', 0, '35.16170', '-94.86330'), ('Muse', 0, '34.67190', '-94.76250'), ('Octavia', 0, '34.52670', '-94.70280'), ('Panama', 1362, '35.16720', '-94.67220'), ('Pocola', 3994, '35.23110', '-94.47780'), ('Poteau', 7939, '35.05360', '-94.62330'), ('Rock Island', 709, '35.18220', '-94.47360'), ('Scullyville', 0, '35.25000', '-94.57000'), ('Shady Point', 848, '35.13000', '-94.65830'), ('Spiro', 2227, '35.24110', '-94.61970'), ('Summerfield', 0, '34.89860', '-94.86580'), ('Talihina', 1211, '34.75140', '-95.04780'), ('Whitesboro', 0, '34.69250', '-94.88500'), ('Wister', 1002, '34.96720', '-94.72440')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKC081': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Agra', 356, '35.89510', '-96.87010'), ('Avery', 0, '35.88310', '-96.75070'), ('Carney', 649, '35.80580', '-97.01540'), ('Chandler', 2842, '35.70800', '-96.87650'), ('Davenport', 881, '35.70930', '-96.76560'), ('Kendrick', 138, '35.78530', '-96.77490'), ('Meeker', 978, '35.50320', '-96.89450'), ('Parkland', 0, '35.83940', '-96.84370'), ('Prague', 2138, '35.48850', '-96.68570'), ('Sparks', 137, '35.61090', '-96.81830'), ('Stroud', 2758, '35.75010', '-96.66000'), ('Tryon', 448, '35.87130', '-96.96320'), ('Warwick', 235, '35.68620', '-97.00570'), ('Wellston', 825, '35.69130', '-97.06490')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC083': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cedar Valley', 58, '35.86400', '-97.56160'), ('Cimarron City', 110, '35.88930', '-97.59670'), ('Coyle', 337, '35.95400', '-97.23740'), ('Crescent', 1281, '35.95250', '-97.59550'), ('Guthrie', 9925, '35.88020', '-97.42470'), ('Langston', 1670, '35.94200', '-97.25440'), ('Lovell', 0, '36.05670', '-97.63690'), ('Marshall', 258, '36.15540', '-97.62480'), ('Meridian', 54, '35.84190', '-97.24670'), ('Mulhall', 239, '36.06430', '-97.40480'), ('Navina', 0, '35.80100', '-97.56000'), ('Orlando', 201, '36.14830', '-97.37580'), ('Seward', 0, '35.79710', '-97.48820')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC085': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Burneyville', 0, '33.90800', '-97.30060'), ('Courtney', 0, '33.94030', '-97.50870'), ('Lake Murray', 0, '34.06770', '-97.08390'), ('Leon', 96, '33.87700', '-97.42950'), ('Marietta', 1445, '33.93700', '-97.11650'), ('Overbrook', 0, '34.06910', '-97.14330'), ('Rubottom', 0, '33.94030', '-97.45640'), ('Thackerville', 404, '33.79390', '-97.14340')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKC087': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Blanchard', 2816, '35.13800', '-97.65840'), ('Byars', 280, '34.87310', '-97.05180'), ('Cole', 473, '35.10280', '-97.57250'), ('Criner', 0, '34.97150', '-97.56480'), ('Dibble', 289, '35.03400', '-97.62800'), ('Goldsby', 1204, '35.14590', '-97.47700'), ('Newcastle', 5434, '35.24770', '-97.59940'), ('Payne', 0, '34.90620', '-97.53010'), ('Purcell', 5571, '35.01390', '-97.36620'), ('Rosedale', 66, '34.91870', '-97.18460'), ('Washington', 520, '35.05830', '-97.48350'), ('Wayne', 714, '34.91720', '-97.31580')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC089': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('America', 0, '33.82000', '-94.55000'), ('Battiest', 0, '34.40000', '-94.93000'), ('Bethel', 0, '34.35000', '-94.85000'), ('Bokhoma', 0, '33.82000', '-94.58000'), ('Broken Bow', 4230, '34.02570', '-94.73630'), ('Eagletown', 0, '34.03000', '-94.57000'), ('Garvin', 143, '33.95480', '-94.94130'), ('Glover', 0, '34.07000', '-94.90000'), ('Harris', 0, '33.75000', '-94.73000'), ('Haworth', 354, '33.84420', '-94.65480'), ('Hochatown', 0, '34.20000', '-94.67000'), ('Idabel', 6952, '33.90200', '-94.81880'), ('Millerton', 359, '33.98470', '-95.01510'), ('Pickens', 0, '34.40000', '-95.03000'), ('Ringold', 0, '34.21700', '-95.13000'), ('Rufe', 0, '34.12000', '-95.15000'), ('Smithville', 123, '34.46810', '-94.64610'), ('Tom', 0, '33.73000', '-94.57000'), ('Valliant', 771, '34.00490', '-95.08970'), ('Watson', 0, '34.43000', '-94.55000'), ('Wright City', 848, '34.06370', '-95.00740')], 'partOfState': 'southeast', 'wfo': 'SHV'}, +'OKC091': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Checotah', 3481, '35.47000', '-95.52280'), ('Eufaula', 2639, '35.28720', '-95.58220'), ('Hanna', 133, '35.20500', '-95.89000'), ('Hitchita', 113, '35.51970', '-95.75110'), ('Onapa', 2083, '35.40580', '-95.55310'), ('Pierce', 0, '35.43470', '-95.71610'), ('Raiford', 0, '35.26780', '-95.78670'), ('Rentiesville', 102, '35.52140', '-95.49470'), ('Stidham', 23, '35.36860', '-95.69940'), ('Vernon', 0, '35.21560', '-95.92560'), ('Vivian', 0, '35.28970', '-95.71610')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKC093': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ames', 199, '36.24780', '-98.18640'), ('Chester', 0, '36.21650', '-98.92080'), ('Cleo Springs', 326, '36.40690', '-98.43950'), ('Fairview', 2733, '36.26940', '-98.47630'), ('Isabella', 0, '36.23650', '-98.34050'), ('Meno', 195, '36.38780', '-98.17730'), ('Orienta', 0, '36.36220', '-98.47290'), ('Orion', 0, '36.22350', '-98.77850'), ('Ringwood', 424, '36.37940', '-98.24500')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKC095': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Kingston', 1390, '34.00220', '-96.72170'), ('Lake Texoma', 0, '33.87140', '-96.70090'), ('Lebanon', 0, '33.98360', '-96.91020'), ('Little City', 0, '34.08620', '-96.61210'), ('Madill', 3410, '34.09150', '-96.77230'), ('McBride', 84, '33.93590', '-96.63600'), ('Oakland', 674, '34.10000', '-96.79310'), ('Willis', 0, '33.88770', '-96.83060'), ('Woodville', 69, '33.96860', '-96.65490')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKC097': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Adair', 704, '36.43670', '-95.27110'), ('Chouteau', 1931, '36.18580', '-95.34280'), ('Disney', 226, '36.48110', '-95.01470'), ('Langley', 669, '36.46390', '-95.04750'), ('Locust Grove', 1366, '36.20000', '-95.16750'), ('Mazie', 88, '36.10750', '-95.36310'), ('Murphy', 231, '36.14690', '-95.24440'), ('Pensacola', 71, '36.45500', '-95.13030'), ('Pryor', 8708, '36.30830', '-95.31670'), ('Rose', 0, '36.21940', '-95.02940'), ('Salina', 1422, '36.29280', '-95.15310'), ('Spavinaw', 563, '36.39110', '-95.04640'), ('Strang', 100, '36.41060', '-95.13060')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC099': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Davis', 2610, '34.50340', '-97.11880'), ('Dougherty', 224, '34.39980', '-97.05110'), ('Hickory', 87, '34.55540', '-96.86190'), ('Lake Of The Arbuckles', 0, '34.43700', '-97.01970'), ('Scullin', 0, '34.52000', '-96.87000'), ('Sulphur', 4794, '34.50890', '-96.97410'), ('Turner Falls', 0, '34.42550', '-97.14780')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKC101': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Boynton', 274, '35.64860', '-95.65580'), ('Braggs', 301, '35.66330', '-95.19780'), ('Briartown', 0, '35.29720', '-95.23940'), ('Council Hill', 129, '35.55560', '-95.65110'), ('Fort Gibson', 4054, '35.79750', '-95.25030'), ('Haskell', 1765, '35.82030', '-95.67390'), ('Jamesville', 0, '35.75500', '-95.64030'), ('Keefeton', 0, '35.58970', '-95.33910'), ('Muskogee', 38310, '35.74780', '-95.36940'), ('Oktaha', 327, '35.57640', '-95.47470'), ('Porum', 725, '35.35610', '-95.26530'), ('Summit', 226, '35.66580', '-95.42250'), ('Taft', 349, '35.76170', '-95.54610'), ('Wainwright', 197, '35.61250', '-95.56420'), ('Warner', 1430, '35.49420', '-95.30530'), ('Webbers Falls', 726, '35.51080', '-95.12970')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKC103': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Billings', 436, '36.52890', '-97.44410'), ('Ceres', 0, '36.47720', '-97.28250'), ('Lake Mcmurtry', 0, '36.17870', '-97.18080'), ('Lucien', 0, '36.27500', '-97.45490'), ('Marland', 280, '36.56130', '-97.15270'), ('Morrison', 636, '36.29460', '-97.01160'), ('Perry', 5230, '36.29000', '-97.28560'), ('Red Rock', 293, '36.45990', '-97.17890'), ('Sooner Lake', 0, '36.43430', '-97.04160')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKC105': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Delaware', 456, '36.77860', '-95.63920'), ('Lenapah', 298, '36.85060', '-95.63580'), ('New Alluwe', 84, '36.60940', '-95.48890'), ('Nowata', 3971, '36.70060', '-95.63780'), ('Wann', 132, '36.91530', '-95.80420'), ('Watova', 0, '36.61720', '-95.65560')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC107': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bearden', 140, '35.34810', '-96.38830'), ('Boley', 1126, '35.49330', '-96.48330'), ('Castle', 122, '35.47440', '-96.38190'), ('Clearview', 56, '35.39690', '-96.18610'), ('Mason', 0, '35.56610', '-96.35190'), ('Okemah', 3038, '35.43250', '-96.30470'), ('Okfuskee', 0, '35.59530', '-96.22810'), ('Paden', 446, '35.50780', '-96.56720'), ('Pharoah', 0, '35.42030', '-96.12280'), ('Weleetka', 1014, '35.33560', '-96.13610'), ('Welty', 0, '35.62440', '-96.40500')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKC109': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arcadia', 279, '35.66540', '-97.32610'), ('Bethany', 20307, '35.50600', '-97.64340'), ('Choctaw', 9377, '35.49460', '-97.26500'), ('Del City', 22128, '35.44750', '-97.43970'), ('Edmond', 68315, '35.65320', '-97.48150'), ('Forest Park', 1066, '35.50720', '-97.44650'), ('Harrah', 4719, '35.48930', '-97.16350'), ('Jones', 2517, '35.56660', '-97.29060'), ('Lake Aluma', 96, '35.53560', '-97.44830'), ('Luther', 612, '35.66040', '-97.19460'), ('Midwest City', 54088, '35.45640', '-97.38900'), ('Newalla', 0, '35.40460', '-97.16100'), ('Nichols Hills', 4056, '35.54610', '-97.54440'), ('Nicoma Park', 2415, '35.49110', '-97.32400'), ('Oklahoma City', 506132, '35.46710', '-97.51350'), ('Spencer', 3746, '35.50760', '-97.37980'), ('The Village', 10157, '35.56620', '-97.55130'), ('Tinker Air Force Base', 0, '35.41830', '-97.38920'), ('Valley Brook', 817, '35.40250', '-97.48200'), ('Warr Acres', 9735, '35.52230', '-97.61900')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC111': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bald Hill', 0, '35.74030', '-95.83690'), ('Beggs', 1364, '35.74250', '-96.07000'), ('Bryant', 0, '35.39060', '-96.06440'), ('Dewar', 919, '35.45810', '-95.94110'), ('Eram', 0, '35.61690', '-95.75470'), ('Grayson', 134, '35.50310', '-95.87250'), ('Hectorville', 0, '35.84190', '-95.92500'), ('Henryetta', 6096, '35.43970', '-95.98170'), ('Hoffman', 148, '35.48920', '-95.84250'), ('Morris', 1294, '35.60750', '-95.86000'), ('Okmulgee', 13022, '35.62330', '-95.96030'), ('Preston', 0, '35.71140', '-95.99140'), ('Schulter', 600, '35.51440', '-95.95640'), ('Wilson', 5872, '35.50750', '-96.03440')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC113': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Apperson', 0, '36.75110', '-96.76580'), ('Avant', 372, '36.48940', '-96.06190'), ('Barnsdall', 1325, '36.56190', '-96.16140'), ('Bigheart', 0, '36.85170', '-96.22560'), ('Burbank', 155, '36.69500', '-96.73170'), ('Fairfax', 1555, '36.57360', '-96.70390'), ('Foraker', 23, '36.87220', '-96.56530'), ('Grainola', 31, '36.93720', '-96.65030'), ('Hominy', 2584, '36.41420', '-96.39500'), ('Hulah', 0, '36.92860', '-96.03500'), ('Nelagoney', 0, '36.62640', '-96.24190'), ('Okesa', 0, '36.71280', '-96.13440'), ('Osage', 188, '36.29280', '-96.41560'), ('Pawhuska', 3629, '36.66780', '-96.33690'), ('Pearsonia', 0, '36.80170', '-96.45060'), ('Pershing', 0, '36.59330', '-96.27500'), ('Shidler', 520, '36.78190', '-96.66080'), ('Tallant', 0, '36.59750', '-96.19030'), ('Webb City', 95, '36.80690', '-96.70830'), ('Wolco', 0, '36.53830', '-96.07110'), ('Wynona', 531, '36.54610', '-96.32690')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC115': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Afton', 1118, '36.69360', '-94.96280'), ('Cardin', 150, '36.97250', '-94.84860'), ('Commerce', 2645, '36.93330', '-94.87280'), ('Fairland', 1025, '36.75110', '-94.84720'), ('Miami', 13704, '36.87440', '-94.87720'), ('Narcissa', 100, '36.80110', '-94.92670'), ('Ottawa', 0, '36.85670', '-94.78750'), ('Peoria', 141, '36.91530', '-94.66970'), ('Picher', 1640, '36.98690', '-94.83060'), ('Quapaw', 984, '36.95440', '-94.78780'), ('Wyandotte', 363, '36.79330', '-94.72500')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC117': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Blackburn', 102, '36.37310', '-96.59580'), ('Cleveland', 3282, '36.31000', '-96.46390'), ('Hallett', 168, '36.23390', '-96.56720'), ('Jennings', 373, '36.18110', '-96.56940'), ('Maramec', 104, '36.24190', '-96.68000'), ('Pawnee', 2230, '36.33780', '-96.80360'), ('Quay', 47, '36.16010', '-96.70970'), ('Ralston', 355, '36.50390', '-96.73190'), ('Skedee', 102, '36.37940', '-96.70470'), ('Terlton', 85, '36.18810', '-96.49000'), ('Westport', 264, '36.21890', '-96.32440')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC119': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cushing', 8371, '35.98250', '-96.76390'), ('Glencoe', 583, '36.22610', '-96.92740'), ('Ingalls', 0, '36.10180', '-96.88140'), ('Lake Carl Blackwell', 0, '36.13500', '-97.21270'), ('Perkins', 2272, '35.97550', '-97.03260'), ('Ripley', 444, '36.01750', '-96.90490'), ('Stillwater', 39065, '36.11550', '-97.05840'), ('Yale', 1342, '36.11490', '-96.70060')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC121': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Alderson', 261, '34.90000', '-95.69170'), ('Arpelar', 0, '34.94190', '-95.96530'), ('Ashland', 53, '34.76780', '-96.06940'), ('Bache', 0, '34.89420', '-95.64830'), ('Blanco', 0, '34.75110', '-95.77420'), ('Blocker', 0, '35.06140', '-95.56810'), ('Canadian', 239, '35.17720', '-95.65500'), ('Crowder', 436, '35.12390', '-95.66970'), ('Dow', 0, '34.87670', '-95.60000'), ('Featherston', 0, '35.07860', '-95.48970'), ('Haileyville', 891, '34.85440', '-95.58190'), ('Hartshorne', 2102, '34.84500', '-95.55720'), ('Haywood', 0, '34.88720', '-95.94810'), ('Indianola', 191, '35.16280', '-95.77440'), ('Kiowa', 693, '34.72060', '-95.89890'), ('Krebs', 2051, '34.92780', '-95.71560'), ('McAlester', 17783, '34.93330', '-95.76940'), ('Pittsburg', 280, '34.71310', '-95.84970'), ('Quinton', 1071, '35.12280', '-95.37080'), ('Savanna', 730, '34.82890', '-95.84360'), ('Scipio', 0, '35.05470', '-95.95640')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKC123': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ada', 15691, '34.77450', '-96.67900'), ('Allen', 951, '34.87800', '-96.41290'), ('Byng', 1090, '34.86480', '-96.66500'), ('Fittstown', 0, '34.61410', '-96.63440'), ('Fitzhugh', 204, '34.66560', '-96.77460'), ('Francis', 332, '34.87490', '-96.59260'), ('Jesse', 0, '34.58000', '-96.53000'), ('Roff', 734, '34.62890', '-96.84110'), ('Stonewall', 465, '34.65200', '-96.52500'), ('Vanoss', 0, '34.76380', '-96.87110')], 'partOfState': 'east central', 'wfo': 'OUN'}, +'OKC125': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Asher', 419, '34.98820', '-96.92440'), ('Aydelotte', 0, '35.43870', '-96.91050'), ('Bethel Acres', 2735, '35.30420', '-97.05390'), ('Brooksville', 90, '35.19730', '-96.96810'), ('Centerview', 0, '35.43370', '-96.66580'), ('Dale', 0, '35.38880', '-97.04530'), ('Earlsboro', 633, '35.26700', '-96.80350'), ('Harjo', 0, '35.21070', '-96.82530'), ('Johnson', 223, '35.40510', '-96.84260'), ('Macomb', 61, '35.14780', '-97.00810'), ('Maud', 1136, '35.13270', '-96.77850'), ('McLoud', 3548, '35.43550', '-97.09310'), ('Pink', 1165, '35.26060', '-97.11940'), ('Shawnee', 28692, '35.33280', '-96.92470'), ('St. Louis', 206, '35.07250', '-96.86170'), ('Tecumseh', 6098, '35.26050', '-96.93700'), ('Tribbey', 273, '35.11450', '-97.05530'), ('Trousdale', 0, '35.04130', '-97.03790'), ('Wanette', 402, '34.96260', '-97.03090')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKC127': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Albion', 143, '34.66280', '-95.09970'), ('Antlers', 2552, '34.23110', '-95.62000'), ('Clayton', 719, '34.58940', '-95.35250'), ('Cloudy', 0, '34.30190', '-95.28080'), ('Corinne', 0, '34.18580', '-95.29110'), ('Dela', 0, '34.20030', '-95.52190'), ('Dunbar', 0, '34.45860', '-95.56030'), ('Eubanks', 0, '34.42190', '-95.58470'), ('Finley', 0, '34.32830', '-95.49470'), ('Kellond', 0, '34.26360', '-95.64000'), ('Kiamichi', 0, '34.63530', '-95.17860'), ('Kosoma', 0, '34.34830', '-95.61280'), ('Moyers', 0, '34.32610', '-95.65330'), ('Nashoba', 0, '34.48190', '-95.21500'), ('Oleta', 0, '34.19940', '-95.34360'), ('Rattan', 241, '34.20030', '-95.41280'), ('Sardis', 0, '34.66580', '-95.40940'), ('Snow', 0, '34.39580', '-95.41250'), ('Sobol', 0, '34.16110', '-95.23830'), ('Stanley', 0, '34.54000', '-95.46940'), ('Tuskahoma', 0, '34.61780', '-95.27640')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKC129': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Angora', 0, '35.84160', '-99.44420'), ('Berlin', 0, '35.45060', '-99.62700'), ('Cheyenne', 778, '35.61390', '-99.67200'), ('Crawford', 0, '35.82620', '-99.80000'), ('Dempsey', 0, '35.51210', '-99.82320'), ('Durham', 0, '35.84280', '-99.92370'), ('Hammon', 469, '35.63230', '-99.38340'), ('Reydon', 177, '35.65440', '-99.92010'), ('Roll', 0, '35.78440', '-99.71180'), ('Strong City', 42, '35.67010', '-99.60010')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKC131': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bushyhead', 1203, '36.46140', '-95.49390'), ('Catoosa', 5449, '36.18890', '-95.74560'), ('Chelsea', 2136, '36.53560', '-95.43220'), ('Claremore', 15873, '36.31250', '-95.61580'), ('Foyil', 234, '36.43470', '-95.51920'), ('Inola', 1589, '36.15110', '-95.50920'), ('Oologah', 944, '36.44690', '-95.70810'), ('Talala', 270, '36.52970', '-95.70110'), ('Tiawah', 166, '36.26110', '-95.56060'), ('Verdigris', 0, '36.23470', '-95.69080')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC133': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bowlegs', 371, '35.14750', '-96.66930'), ('Cromwell', 265, '35.34170', '-96.45480'), ('Konawa', 1479, '34.95750', '-96.75380'), ('Lima', 74, '35.17330', '-96.59800'), ('Little', 0, '35.34680', '-96.67050'), ('Sasakwa', 150, '34.94660', '-96.52500'), ('Seminole', 6899, '35.22920', '-96.67800'), ('Wewoka', 3562, '35.15220', '-96.49360')], 'partOfState': 'east central', 'wfo': 'OUN'}, +'OKC135': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Box', 0, '35.58110', '-94.97610'), ('Brushy', 787, '35.55690', '-94.72530'), ('Cottonwood', 2481, '35.36830', '-94.54890'), ('Gans', 208, '35.38890', '-94.69190'), ('Gore', 850, '35.52920', '-95.11690'), ('Marble City', 242, '35.58030', '-94.82080'), ('Mc Key', 135, '35.48000', '-94.88000'), ('Moffett', 179, '35.39030', '-94.44670'), ('Muldrow', 3104, '35.40610', '-94.59860'), ('Roland', 2842, '35.42110', '-94.51440'), ('Sallisaw', 7989, '35.46030', '-94.78720'), ('Short', 0, '35.57140', '-94.49110'), ('Vian', 1362, '35.49830', '-94.96940')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKC137': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bray', 1035, '34.63790', '-97.81760'), ('Central High', 954, '34.60810', '-98.09280'), ('Comanche', 1556, '34.36870', '-97.96740'), ('Corum', 0, '34.36230', '-98.10430'), ('Duncan', 22505, '34.50190', '-97.95670'), ('Empire City', 734, '34.42020', '-98.03500'), ('Loco', 150, '34.32950', '-97.68020'), ('Marlow', 4416, '34.64770', '-97.95780'), ('Velma', 664, '34.45610', '-97.66590')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKC139': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Adams', 0, '36.75000', '-101.08000'), ('Baker', 0, '36.87000', '-101.02000'), ('Eva', 0, '36.80000', '-101.90000'), ('Goodwell', 1192, '36.59450', '-101.63210'), ('Guymon', 10472, '36.68630', '-101.48300'), ('Hardesty', 277, '36.61450', '-101.19330'), ('Hooker', 1788, '36.85990', '-101.21200'), ('Hough', 0, '36.87000', '-101.57000'), ('Optima', 266, '36.75830', '-101.35400'), ('Texhoma', 935, '36.50540', '-101.78730'), ('Tyrone', 880, '36.95560', '-101.06640')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'OKC141': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Davidson', 375, '34.24210', '-99.07820'), ('Frederick', 4637, '34.39190', '-99.01700'), ('Grandfield', 1110, '34.23120', '-98.68730'), ('Hollister', 60, '34.34160', '-98.87040'), ('Loveland', 14, '34.30420', '-98.77080'), ('Manitou', 278, '34.50680', '-98.98050'), ('Tipton', 916, '34.50130', '-99.13750')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKC143': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bixby', 13336, '35.94190', '-95.88310'), ('Broken Arrow', 74859, '36.05250', '-95.79060'), ('Collinsville', 4077, '36.36440', '-95.83860'), ('Glenpool', 8123, '35.95530', '-96.00860'), ('Gray', 15346, '36.13030', '-96.08030'), ('Jenks', 9557, '36.02280', '-95.96810'), ('Leonard', 0, '35.92030', '-95.79920'), ('Liberty', 155, '35.85860', '-95.97720'), ('Owasso', 18502, '36.26940', '-95.85440'), ('Sand Springs', 17451, '36.13970', '-96.10860'), ('Skiatook', 5396, '36.36830', '-96.00110'), ('Sperry', 981, '36.29720', '-95.99110'), ('Tulsa', 393049, '36.13390', '-95.92250')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC145': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Choska', 0, '35.83000', '-95.62000'), ('Coweta', 7139, '35.95170', '-95.65060'), ('Okay', 597, '35.85060', '-95.31810'), ('Oneta', 74859, '36.01890', '-95.70780'), ('Porter', 574, '35.87080', '-95.52220'), ('Redbird', 166, '35.88670', '-95.58790'), ('Stonebluff', 0, '35.88580', '-95.73670'), ('Tullahassee', 106, '35.83470', '-95.43750'), ('Wagoner', 7669, '35.95940', '-95.36920')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC147': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bartlesville', 34748, '36.74720', '-95.98060'), ('Copan', 796, '36.89750', '-95.92580'), ('Dewey', 3179, '36.79580', '-95.93530'), ('Ochelata', 494, '36.60000', '-95.97940'), ('Ramona', 564, '36.53030', '-95.92330'), ('Vera', 188, '36.44920', '-95.88060')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKC149': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bessie', 190, '35.38490', '-98.98830'), ('Burns Flat', 1782, '35.35510', '-99.17510'), ('Canute', 524, '35.41890', '-99.28050'), ('Cloud Chief', 0, '35.25290', '-98.84300'), ('Colony', 147, '35.35000', '-98.67600'), ('Cordell', 2892, '35.29430', '-98.98770'), ('Corn', 591, '35.37890', '-98.78130'), ('Cowden', 0, '35.24770', '-98.71180'), ('Dill City', 526, '35.28250', '-99.13380'), ('Foss', 127, '35.45560', '-99.16950'), ('Rocky', 174, '35.15640', '-99.05850'), ('Sentinel', 859, '35.15660', '-99.17350')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKC151': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Alva', 5288, '36.80190', '-98.66720'), ('Avard', 26, '36.69910', '-98.78970'), ('Camp Houston', 0, '36.81220', '-99.11530'), ('Capron', 42, '36.89740', '-98.57670'), ('Dacoma', 148, '36.66000', '-98.56370'), ('Freedom', 271, '36.76650', '-99.11260'), ('Hopeton', 0, '36.68870', '-98.66630'), ('Waynoka', 993, '36.58500', '-98.87940')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKC153': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Fort Supply', 328, '36.57220', '-99.57350'), ('Mooreland', 1226, '36.43850', '-99.20500'), ('Mutual', 76, '36.22980', '-99.16730'), ('Quinlan', 22, '36.45480', '-99.04550'), ('Sharon', 122, '36.27540', '-99.33810'), ('Tangier', 0, '36.42030', '-99.53440'), ('Woodward', 11853, '36.43360', '-99.39070')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'ORC001': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Baker', 9860, '44.77420', '-117.83160'), ('Brownlee Dam', 311, '44.84000', '-116.90000'), ('Durkee', 515, '44.58000', '-117.45000'), ('Greenhorn', 0, '44.70890', '-118.49580'), ('Haines', 426, '44.91190', '-117.93900'), ('Halfway', 337, '44.87680', '-117.10900'), ('Huntington', 515, '44.35030', '-117.26600'), ('Oxbow Dam', 337, '44.97000', '-116.85000'), ('Richland', 147, '44.76770', '-117.16760'), ('Rock Creek', 426, '44.91670', '-118.03330'), ('Sumpter', 171, '44.74380', '-118.19590'), ('Unity', 131, '44.43680', '-118.18730')], 'partOfState': 'northeast', 'wfo': 'BOI'}, +'ORC003': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adair Village', 536, '44.67430', '-123.21770'), ('Alsea', 3838, '44.40000', '-123.56700'), ('Blodgett', 3838, '44.60000', '-123.51670'), ('Corvallis', 49322, '44.57100', '-123.27600'), ('Greenberry', 49322, '44.45000', '-123.27000'), ('Hoskins', 3838, '44.68300', '-123.45000'), ('Kings Valley', 966, '44.70000', '-123.41700'), ('Lewisburg', 536, '44.63330', '-123.23330'), ('Monroe', 607, '44.31680', '-123.29850'), ('North Albany', 4325, '44.66170', '-123.11360'), ('Philomath', 3838, '44.54050', '-123.35710'), ('Summit', 3838, '44.63330', '-123.56670'), ('Wren', 3838, '44.59000', '-123.42000')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORC005': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bagby Hot Springs', 262, '44.92000', '-122.16000'), ('Barlow', 140, '45.25240', '-122.72010'), ('Boring', 90205, '45.43300', '-122.38300'), ('Brightwood', 3306, '45.37000', '-122.01700'), ('Bull Run', 5385, '45.43330', '-122.23330'), ('Canby', 12790, '45.26650', '-122.69170'), ('Cherryville', 5385, '45.36660', '-122.13330'), ('Clackamas', 5177, '45.40860', '-122.55250'), ('Colton', 5647, '45.18330', '-122.45000'), ('Damascus', 4519, '45.41660', '-122.46660'), ('Eagle Creek', 2371, '45.36660', '-122.36660'), ('Estacada', 2371, '45.29220', '-122.33330'), ('Gladstone', 11438, '45.38580', '-122.59150'), ('Government Camp', 3306, '45.30000', '-121.76700'), ('Happy Valley', 4519, '45.44380', '-122.53580'), ('Johnson City', 634, '45.40440', '-122.57790'), ('Lake Oswego', 35278, '45.41220', '-122.69810'), ('Lolo Pass', 3306, '45.42000', '-121.80000'), ('Marquam', 312, '45.06700', '-122.70000'), ('Milwaukie', 20490, '45.44420', '-122.61970'), ('Molalla', 5647, '45.14970', '-122.57800'), ('Mount Hood', 3306, '45.37500', '-121.70000'), ('Mulino', 5647, '45.21700', '-122.58300'), ('Oak Grove', 12576, '45.41350', '-122.63770'), ('Oregon City', 25754, '45.34490', '-122.59680'), ('Rhododendron', 3306, '45.33330', '-121.91660'), ('Round Mountain', 2371, '45.06000', '-122.11000'), ('Sandy', 5385, '45.39960', '-122.26670'), ('Shortys Corner', 5385, '45.38000', '-122.22000'), ('Sunnyside', 6791, '45.43220', '-122.55580'), ('Table Rock', 471, '44.96000', '-122.27000'), ('Three Lynx', 3306, '45.12000', '-122.06000'), ('Timothy Lake', 3306, '45.12000', '-121.79000'), ('Welches', 3306, '45.33330', '-121.96660'), ('West Linn', 22261, '45.36850', '-122.63820'), ('Wilsonville', 13991, '45.30910', '-122.76630'), ('Zigzag', 3306, '45.34000', '-121.93300')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC007': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Arch Cape', 0, '45.81660', '-123.95500'), ('Astoria', 9813, '46.18800', '-123.82050'), ('Camp Rilea', 4096, '46.14000', '-123.95000'), ('Cannon Beach', 0, '45.88850', '-123.95500'), ('Elsie', 203, '45.86700', '-123.60000'), ('Gearhart', 995, '46.02500', '-123.91750'), ('Hamlet', 203, '45.83000', '-123.68000'), ('Hammond', 589, '46.19810', '-123.94680'), ('Jewell', 508, '45.93300', '-123.50000'), ('Klaskanine Summit', 9813, '46.05000', '-123.66000'), ('Knappa', 508, '46.18300', '-123.58300'), ('Necanicum', 5900, '45.90000', '-123.76000'), ('Olney', 9813, '46.10000', '-123.75000'), ('Puget Island', 565, '46.17000', '-123.38000'), ('Saddle Mountain', 5900, '45.97000', '-123.69000'), ('Seaside', 5900, '45.99020', '-123.92010'), ('Sunset Summit', 2228, '45.80000', '-123.46000'), ('Svenson', 9813, '46.16660', '-123.66660'), ('Tillamook Head', 1221, '45.94000', '-123.99000'), ('Warrenton', 4096, '46.17030', '-123.92090'), ('Westport', 508, '46.13300', '-123.36700')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC009': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Alston', 3163, '46.10000', '-123.06000'), ('Apiary', 1687, '46.01660', '-123.03330'), ('Birkenfeld', 1528, '46.00000', '-123.33330'), ('Clatskanie', 1528, '46.10370', '-123.20500'), ('Columbia City', 1571, '45.89740', '-122.81080'), ('Goble', 72, '46.01660', '-122.88330'), ('Mayger', 3163, '46.16660', '-123.10000'), ('Mist', 1528, '46.00000', '-123.25000'), ('Pittsburg', 2228, '45.90000', '-123.16000'), ('Prescott', 72, '46.04730', '-122.88580'), ('Quincy', 1528, '46.15000', '-123.16660'), ('Rainier', 1687, '46.09230', '-122.94640'), ('Scappoose', 4976, '45.75160', '-122.88050'), ('Spitzenberg', 4976, '45.82000', '-122.94000'), ('St. Helens', 10019, '45.86060', '-122.81100'), ('Vernonia', 2228, '45.86050', '-123.18520'), ('Warren', 10019, '45.81660', '-122.85000')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC011': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bandon', 2833, '43.11590', '-124.41460'), ('Charleston', 1402, '43.34030', '-124.32890'), ('Coos Bay', 15374, '43.37840', '-124.23100'), ('Coquille', 4184, '43.18130', '-124.18170'), ('Lakeside', 1371, '43.57900', '-124.17320'), ('Myrtle Point', 2451, '43.06220', '-124.13190'), ('North Bend', 9544, '43.40610', '-124.23620'), ('Powers', 734, '42.88540', '-124.07220'), ('Sitkum', 2451, '43.14830', '-123.86000')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORC013': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Prineville', 7356, '44.30550', '-120.84150')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORC015': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Agness', 734, '42.55670', '-124.06780'), ('Brookings', 5447, '42.05980', '-124.29080'), ('Denmark', 1153, '42.89080', '-124.46140'), ('Gold Beach', 1897, '42.41290', '-124.41850'), ('Harbor', 2622, '42.03910', '-124.25470'), ('Langlois', 1153, '42.92360', '-124.44970'), ('Nesika Beach', 1897, '42.50640', '-124.41220'), ('Ophir', 1897, '42.56330', '-124.38170'), ('Pistol River', 1897, '42.27720', '-124.39360'), ('Port Orford', 1153, '42.74990', '-124.49550'), ('Sixes', 1153, '42.82030', '-124.48190')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORC017': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bend', 52029, '44.06600', '-121.31100'), ('Deschutes River Woods', 4631, '43.99170', '-121.35710'), ('Redmond', 13481, '44.25950', '-121.17120'), ('Sisters', 959, '44.29100', '-121.54820'), ('Terrebonne', 1469, '44.34200', '-121.17740'), ('Three Rivers', 2445, '43.82010', '-121.46800')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORC019': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Azalea', 1293, '42.79560', '-123.25920'), ('Camas Valley', 4613, '43.03440', '-123.67280'), ('Canyonville', 1293, '42.92870', '-123.27830'), ('Curtain', 1021, '43.72250', '-123.21080'), ('Diamond Lake', 3148, '43.17890', '-122.13780'), ('Drain', 1021, '43.66210', '-123.31410'), ('Elkton', 147, '43.63730', '-123.56600'), ('Glendale', 855, '42.73760', '-123.42840'), ('Green', 6174, '43.14920', '-123.38220'), ('Myrtle Creek', 3419, '43.02580', '-123.28260'), ('Oakland', 954, '43.42300', '-123.29580'), ('Reedsport', 4378, '43.69900', '-124.11090'), ('Riddle', 1014, '42.95370', '-123.36610'), ('Roseburg', 20017, '43.21970', '-123.35760'), ('Scottsburg', 147, '43.65420', '-123.81560'), ('Steamboat', 276, '43.34560', '-122.73440'), ('Sutherlin', 6669, '43.38860', '-123.31500'), ('Tiller', 1293, '42.92860', '-122.95000'), ('Toketee Falls', 3148, '43.27580', '-122.44970'), ('Tri-City', 3519, '42.98470', '-123.31050'), ('Umpqua', 6669, '43.36560', '-123.46720'), ('Winchester', 6831, '43.28030', '-123.35250'), ('Winston', 4613, '43.12040', '-123.41140'), ('Yoncalla', 1052, '43.60020', '-123.28540')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORC021': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Arlington', 524, '45.71780', '-120.19260'), ('Condon', 759, '45.23680', '-120.18390'), ('Lonerock', 24, '45.08920', '-119.88310')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORC023': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Canyon City', 669, '44.39220', '-118.94840'), ('Dayville', 138, '44.46680', '-119.53230'), ('Granite', 24, '44.81060', '-118.41940'), ('John Day', 1821, '44.41840', '-118.94940'), ('Long Creek', 228, '44.71380', '-119.10190'), ('Monument', 151, '44.82000', '-119.41880'), ('Mount Vernon', 595, '44.41780', '-119.11220'), ('Prairie City', 1080, '44.46160', '-118.70950'), ('Seneca', 223, '44.13470', '-118.97560')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORC025': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Andrews', 373, '42.46670', '-118.61670'), ('Buchanan', 3064, '43.65000', '-118.63330'), ('Burns', 3064, '43.58770', '-119.06120'), ('Crane', 3064, '43.41670', '-118.58330'), ('Diamond', 1623, '43.01670', '-118.68330'), ('Drewsey', 131, '43.79890', '-118.38000'), ('Dunnean', 3064, '43.43330', '-118.25000'), ('Fields', 373, '42.25970', '-118.66890'), ('Frenchglen', 1623, '42.82890', '-118.90580'), ('Hines', 1623, '43.56720', '-119.07880'), ('Narrows', 1623, '43.27470', '-118.95890'), ('New Princeton', 3064, '43.28280', '-118.59890'), ('Riley', 1623, '43.53330', '-119.48330'), ('Van', 223, '43.98330', '-118.68330'), ('Venator', 3064, '43.35000', '-118.30000'), ('Wagontire', 247, '43.25000', '-119.88330')], 'partOfState': 'southeast', 'wfo': 'BOI'}, +'ORC027': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bennett Pass', 3306, '45.32000', '-121.62000'), ('Cascade Locks', 1115, '45.66980', '-121.88940'), ('Dee', 5831, '45.58330', '-121.61660'), ('Hood River', 5831, '45.70980', '-121.52190'), ('Lost Lake', 1115, '45.49000', '-121.83000'), ('Odell', 1849, '45.63000', '-121.53600'), ('Parkdale', 266, '45.51700', '-121.60000'), ('Viento State Park', 5831, '45.70000', '-121.66000'), ('White River Snow Park', 3306, '45.30000', '-121.67000'), ('Wyeth', 1678, '45.69000', '-121.76660')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC029': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Applegate', 1847, '42.25720', '-123.16720'), ('Ashland', 19522, '42.19020', '-122.69960'), ('Butte Falls', 439, '42.54200', '-122.56780'), ('Central Point', 12493, '42.37370', '-122.91100'), ('Eagle Point', 4797, '42.46610', '-122.79950'), ('Gold Hill', 1073, '42.43460', '-123.05030'), ('Howard Prairie', 19522, '42.20000', '-122.38330'), ('Jacksonville', 2235, '42.31310', '-122.96760'), ('Medford', 63154, '42.33980', '-122.85310'), ('Phoenix', 4060, '42.27450', '-122.81600'), ('Prospect', 439, '42.75110', '-122.48780'), ('Rogue River', 1847, '42.43580', '-123.16710'), ('Ruch', 2235, '42.23670', '-123.04110'), ('Shady Cove', 2307, '42.61180', '-122.81870'), ('Siskiyou Summit', 19522, '42.06000', '-122.57000'), ('Talent', 5589, '42.24010', '-122.78100'), ('Trail', 2307, '42.64860', '-122.80940'), ('Union Creek', 439, '42.90720', '-122.44440'), ('White City', 5466, '42.43200', '-122.83010')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORC031': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Culver', 802, '44.52490', '-121.20930'), ('Madras', 5078, '44.62990', '-121.12900'), ('Metolius', 635, '44.58760', '-121.17660'), ('Mount Jefferson', 232, '44.68000', '-121.79700'), ('Warm Springs', 2431, '44.76920', '-121.28570')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORC033': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Cave Junction', 1363, '42.16730', '-123.64470'), ('Galice', 855, '42.56970', '-123.59610'), ('Grants Pass', 23003, '42.44120', '-123.32430'), ('Kerby', 1363, '42.19440', '-123.65060'), ('Merlin', 5844, '42.51750', '-123.41860'), ('Murphy', 3780, '42.34780', '-123.33220'), ('Obrien', 1363, '42.06750', '-123.70190'), ('Provolt', 3780, '42.28330', '-123.23330'), ('Selma', 1363, '42.27920', '-123.61470'), ('Sunny Valley', 855, '42.63920', '-123.37440'), ('Takilma', 1363, '42.05170', '-123.61830'), ('Wilderville', 5844, '42.38250', '-123.46580'), ('Williams', 3780, '42.21890', '-123.27280'), ('Wolf Creek', 855, '42.69560', '-123.39420')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORC035': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Altamont', 19603, '42.19820', '-121.71970'), ('Beatty', 415, '42.44190', '-121.26970'), ('Bly', 415, '42.39780', '-121.04060'), ('Bonanza', 415, '42.19960', '-121.40590'), ('Chemult', 716, '43.21670', '-121.78170'), ('Chiloquin', 716, '42.57650', '-121.86690'), ('Crater Lake', 716, '42.90000', '-122.13000'), ('Crescent', 2445, '43.46250', '-121.69450'), ('Crescent Lake', 3148, '43.50940', '-121.96830'), ('Dairy', 415, '42.23530', '-121.52000'), ('Gilchrist', 2445, '43.47720', '-121.68420'), ('Keno', 892, '42.12670', '-121.92890'), ('Klamath Falls', 19462, '42.22100', '-121.77240'), ('Lorella', 415, '42.13720', '-121.27140'), ('Malin', 638, '42.01400', '-121.40780'), ('Merrill', 897, '42.02660', '-121.59970'), ('Midland', 19462, '42.13080', '-121.81920'), ('Modoc Point', 716, '42.44500', '-121.86720'), ('Olene', 19603, '42.17190', '-121.62970'), ('Sprague River', 415, '42.45560', '-121.50310'), ('Worden', 892, '42.04560', '-121.86530')], 'partOfState': 'south central', 'wfo': 'MFR'}, +'ORC037': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adel', 2474, '42.17750', '-119.89750'), ('Alkali Lake', 247, '42.97140', '-119.99220'), ('Fort Rock', 2445, '43.35670', '-121.05280'), ('Lakeview', 2474, '42.18920', '-120.34540'), ('New Pine Creek', 2474, '42.00000', '-120.30000'), ('Paisley', 247, '42.69300', '-120.54440'), ('Silver Lake', 247, '43.12810', '-121.04500'), ('Summer Lake', 247, '42.97310', '-120.77640'), ('Valley Falls', 2474, '42.34420', '-120.28080')], 'partOfState': 'south central', 'wfo': 'MFR'}, +'ORC039': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Alma', 2755, '43.88000', '-123.48000'), ('Belknap Springs', 232, '44.20000', '-122.05000'), ('Blachly', 2755, '44.20000', '-123.53300'), ('Blue River', 3148, '44.15000', '-122.33330'), ('Cheshire', 4721, '44.18330', '-123.28330'), ('Coburg', 969, '44.13810', '-123.05980'), ('Cottage Grove', 8445, '43.79770', '-123.05570'), ('Cottage Grove Lake', 8445, '43.69000', '-123.07000'), ('Cougar Reservoir', 3148, '44.08000', '-122.23000'), ('Creswell', 3579, '43.91830', '-123.01930'), ('Crow', 2755, '43.99000', '-123.33000'), ('Cushman', 7263, '43.98330', '-124.05000'), ('Deadwood', 7263, '44.10000', '-123.75000'), ('Dexter', 857, '43.91660', '-122.81660'), ('Disston', 857, '43.70000', '-122.76660'), ('Dorena', 8445, '43.71700', '-122.86700'), ('Dorena Reservoir', 8445, '43.77000', '-122.93000'), ('Dunes City', 1241, '43.90810', '-124.09510'), ('Eugene', 137893, '44.05300', '-123.11220'), ('Eugene Airport', 12834, '44.12000', '-123.22000'), ('Fall Creek Reservoir', 857, '43.94000', '-122.74000'), ('Fern Ridge Reservoir', 2755, '44.08000', '-123.29000'), ('Florence', 7263, '43.98640', '-124.10310'), ('Goshen', 3579, '43.98330', '-123.00000'), ('Greenleaf', 2755, '44.11660', '-123.66660'), ('Hampton', 276, '43.80000', '-122.57000'), ('Heceta Beach', 7263, '44.03000', '-124.13000'), ('Hills Creek Reservoir', 3148, '43.67000', '-122.43000'), ('Horton', 607, '44.21660', '-123.48330'), ('Jasper', 52864, '44.00000', '-122.90000'), ('Junction City', 4721, '44.21790', '-123.20390'), ('Leaburg', 857, '44.11660', '-122.68330'), ('Lookout Point Reservoir', 857, '43.87000', '-122.68000'), ('Lorane', 1021, '43.83330', '-123.24000'), ('Lowell', 857, '43.92070', '-122.77960'), ('Mapleton', 7263, '44.03300', '-123.86700'), ('Marcola', 52864, '44.16700', '-122.85000'), ('McCredie Springs', 3148, '43.71600', '-122.31700'), ('McKenzie Bridge', 232, '44.18300', '-122.16700'), ('Mohawk', 52864, '44.13330', '-122.91660'), ('Nimrod', 276, '44.11660', '-122.41660'), ('Noti', 2755, '44.05000', '-123.45000'), ('Oakridge', 3148, '43.74740', '-122.47200'), ('Pleasant Hill', 52864, '43.96660', '-122.91660'), ('Saginaw', 8445, '43.83330', '-123.05000'), ('Santa Clara', 12834, '44.11450', '-123.13190'), ('Siltcoos', 1241, '43.88330', '-124.06660'), ('Springfield', 52864, '44.05290', '-122.97710'), ('Swisshome', 7263, '44.05000', '-123.80000'), ('Tiernan', 7263, '44.01660', '-123.93330'), ('Triangle Lake', 2755, '44.17000', '-123.58000'), ('Vaughn', 2755, '44.02000', '-123.43330'), ('Veneta', 2755, '44.04830', '-123.35230'), ('Vida', 8016, '44.15000', '-122.56700'), ('Waldo Lake', 3148, '43.73000', '-122.05000'), ('Walker', 8445, '43.85000', '-123.05000'), ('Walterville', 857, '44.06660', '-122.80000'), ('Walton', 2755, '44.03300', '-123.58000'), ('Westfir', 276, '43.75820', '-122.50640'), ('Willamette Pass', 0, '43.60000', '-122.04000')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORC041': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Burnt Woods', 3838, '44.60000', '-123.61660'), ('Cape Foulweather', 1174, '44.78000', '-124.07000'), ('Chitwood', 3472, '44.65000', '-123.81660'), ('Depoe Bay', 1174, '44.81010', '-124.05830'), ('Eddyville', 3472, '44.63330', '-123.76660'), ('Elk City', 3472, '44.61660', '-123.86660'), ('Gleneden Beach', 2078, '44.88330', '-124.03330'), ('Harlan', 3472, '44.53330', '-123.68330'), ('Kernville', 2078, '44.90000', '-124.00000'), ('Lincoln Beach', 2078, '44.85000', '-124.04400'), ('Lincoln City', 7437, '44.97260', '-124.00720'), ('Logsden', 1133, '44.73330', '-123.78330'), ('Newport', 9532, '44.63000', '-124.05390'), ('Ona', 2050, '44.51000', '-124.00000'), ('Otis', 1708, '45.01700', '-123.93300'), ('Rose Lodge', 1708, '45.02210', '-123.87970'), ('Seal Rock', 2050, '44.50000', '-124.07660'), ('Siletz', 1133, '44.72210', '-123.91650'), ('South Beach', 9532, '44.61660', '-124.05000'), ('Tidewater', 2050, '44.41660', '-123.90000'), ('Toledo', 3472, '44.62090', '-123.93250'), ('Waldport', 2050, '44.42140', '-124.06410'), ('Yachats', 617, '44.31270', '-124.10050'), ('Yaquina Head', 9532, '44.67500', '-124.07200')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORC043': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Albany', 40852, '44.61700', '-123.09130'), ('Brownsville', 1449, '44.39300', '-122.98190'), ('Cascadia', 8016, '44.40000', '-122.48300'), ('Crabtree', 695, '44.63330', '-122.88330'), ('Crawfordsville', 290, '44.35000', '-122.85000'), ('Foster Reservoir', 8016, '44.41000', '-122.64000'), ('Green Peter Reservoir', 8016, '44.47000', '-122.51000'), ('Halsey', 724, '44.38310', '-123.10810'), ('Harrisburg', 2795, '44.26850', '-123.16500'), ('Holley', 8016, '44.35000', '-122.78330'), ('Jordan', 1008, '44.73330', '-122.68330'), ('Lacomb', 239, '44.58330', '-122.73330'), ('Lebanon', 12950, '44.53490', '-122.90440'), ('Lyons', 1008, '44.77730', '-122.60690'), ('Marion Forks', 232, '44.60000', '-121.95000'), ('McKenzie Pass', 0, '44.25900', '-121.81000'), ('Mehema', 1008, '44.78330', '-122.61660'), ('Mill City', 1537, '44.75130', '-122.47710'), ('Millersburg', 651, '44.68070', '-123.07060'), ('Peoria', 724, '44.45000', '-123.20000'), ('Santiam Junction', 232, '44.44000', '-121.95000'), ('Santiam Pass', 959, '44.42200', '-121.84600'), ('Scio', 695, '44.70540', '-122.84850'), ('Shedd', 724, '44.46660', '-123.11660'), ('Snow Peak', 1008, '44.63000', '-122.59000'), ('Sodaville', 290, '44.48390', '-122.86740'), ('Sweet Home', 8016, '44.40170', '-122.70210'), ('Tangent', 933, '44.55120', '-123.10790'), ('Tombstone Summit', 232, '44.39700', '-122.16000'), ('Upper Soda', 262, '44.41000', '-122.28330'), ('Waterloo', 239, '44.49530', '-122.82160')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC045': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adrian', 147, '43.74090', '-117.07010'), ('Beulah', 131, '43.90000', '-118.16670'), ('Brogan', 515, '44.25000', '-117.50000'), ('Burns Junction', 239, '42.78190', '-117.83890'), ('Crowley', 239, '43.30000', '-117.90000'), ('Harper', 1976, '43.85470', '-117.60690'), ('Ironside', 131, '44.33330', '-117.93330'), ('Jamieson', 515, '44.18330', '-117.43330'), ('Jordan Valley', 239, '42.97660', '-117.05430'), ('Juntura', 131, '43.74470', '-118.08580'), ('Little Valley', 1976, '43.90000', '-117.50000'), ('Malheur City', 9860, '44.41670', '-117.71670'), ('Nyssa', 3163, '43.87850', '-116.99730'), ('Ontario', 10985, '44.02470', '-116.97430'), ('Owyhee', 147, '43.80000', '-117.05000'), ('Riverside', 131, '43.55000', '-118.15000'), ('Rome', 239, '42.83330', '-117.61670'), ('Vale', 1976, '43.98310', '-117.24050'), ('Westfall', 1976, '43.98330', '-117.71670')], 'partOfState': 'southeast', 'wfo': 'BOI'}, +'ORC047': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Aumsville', 3003, '44.84570', '-122.86810'), ('Aurora', 655, '45.22830', '-122.75560'), ('Breitenbush Springs', 232, '44.78300', '-121.96700'), ('Brooks', 410, '45.05000', '-122.96700'), ('Detroit', 262, '44.73390', '-122.15080'), ('Donald', 608, '45.22300', '-122.83770'), ('Elkhorn', 471, '44.83300', '-122.35000'), ('Gates', 471, '44.75570', '-122.41950'), ('Gervais', 2009, '45.10850', '-122.89480'), ('Hubbard', 2483, '45.18130', '-122.80580'), ('Idanha', 232, '44.70310', '-122.08340'), ('Jefferson', 2487, '44.71800', '-123.00530'), ('Keizer', 32203, '45.00400', '-123.02120'), ('Marion', 274, '44.75000', '-122.93300'), ('Monitor', 3121, '45.10000', '-122.76660'), ('Mount Angel', 3121, '45.06930', '-122.79430'), ('Salem', 136924, '44.92450', '-123.02210'), ('Scotts Mills', 312, '45.04090', '-122.66810'), ('Silver Falls', 1008, '44.88000', '-122.63000'), ('Silverton', 7414, '45.00770', '-122.78070'), ('Stayton', 6816, '44.80180', '-122.79620'), ('St. Paul', 354, '45.21300', '-122.97550'), ('Sublimity', 2148, '44.82920', '-122.79170'), ('Turner', 1199, '44.84610', '-122.95150'), ('Wheatland', 32203, '45.08000', '-123.05000'), ('Woodburn', 20100, '45.14840', '-122.85580')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC049': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Boardman', 2855, '45.83760', '-119.70250'), ('Heppner', 1395, '45.35420', '-119.55300'), ('Ione', 321, '45.50100', '-119.82230'), ('Irrigon', 1702, '45.89690', '-119.48810'), ('Lexington', 263, '45.44570', '-119.68660')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORC051': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bonneville', 411, '45.63300', '-121.95150'), ('Bridal Veil', 4764, '45.55000', '-122.18330'), ('Corbett', 4764, '45.53300', '-122.30000'), ('Delta Park', 46380, '45.61000', '-122.68000'), ('Fairview', 7561, '45.54000', '-122.44000'), ('Government Island', 6996, '45.58500', '-122.53000'), ('Gresham', 90205, '45.50380', '-122.43820'), ('Jantzen Beach', 46380, '45.62000', '-122.68000'), ('Lloyd Center', 529121, '45.53000', '-122.66000'), ('Mt Tabor', 781, '45.51000', '-122.59000'), ('Multnomah Falls', 411, '45.57500', '-122.11700'), ('Parkrose', 781, '45.55500', '-122.54250'), ('Portland Airport', 4423, '45.59000', '-122.60000'), ('Portland Downtown', 529121, '45.52000', '-122.68000'), ('Powellhurst', 28756, '45.49610', '-122.51510'), ('Rockwood', 11480, '45.52000', '-122.49000'), ('Rocky Butte', 781, '45.54000', '-122.57000'), ('Rooster Rock State Park', 4764, '45.55000', '-122.23000'), ('Sauvie Island', 3109, '45.67000', '-122.80000'), ('Sellwood', 20490, '45.46000', '-122.66000'), ('St. Johns', 9697, '45.59000', '-122.75000'), ('Swan Island', 529121, '45.56000', '-122.71000'), ('Sylvan', 5865, '45.51000', '-122.73000'), ('The Oregon Zoo', 5865, '45.51000', '-122.71000'), ('Troutdale', 13777, '45.53690', '-122.39080'), ('University Of Portland', 6009, '45.57000', '-122.73000'), ('Wilshire Park', 529121, '45.55000', '-122.63000'), ('Wood Village', 2860, '45.53350', '-122.42030')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC053': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Buell', 1844, '45.01660', '-123.43330'), ('Buena Vista', 6035, '44.76660', '-123.15000'), ('Dallas', 12459, '44.92130', '-123.31230'), ('Falls City', 966, '44.86560', '-123.43670'), ('Grande Ronde', 1844, '45.06300', '-123.61700'), ('Independence', 6035, '44.85530', '-123.19250'), ('Monmouth', 7741, '44.85040', '-123.22880'), ('Perrydale', 1478, '45.03330', '-123.26660'), ('Rickreall', 57, '44.93330', '-123.23330'), ('Valsetz', 966, '44.83300', '-123.63300'), ('West Salem', 136924, '44.96000', '-123.05000')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC055': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Grass Valley', 171, '45.35990', '-120.78320'), ('Moro', 337, '45.48570', '-120.73170'), ('Rufus', 268, '45.69370', '-120.73970'), ('Wasco', 381, '45.59160', '-120.69570')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORC057': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bay City', 1149, '45.52120', '-123.88500'), ('Beaver', 145, '45.28300', '-123.83300'), ('Blaine', 4352, '45.28330', '-123.71660'), ('Cape Lookout', 4352, '45.34000', '-123.99000'), ('Cape Meares', 110, '45.48500', '-123.97500'), ('Cascade Head', 7437, '45.05000', '-124.00400'), ('Cloverdale', 242, '45.21660', '-123.90000'), ('Foss', 391, '45.70000', '-123.75000'), ('Garibaldi', 899, '45.56050', '-123.91020'), ('Hebo', 231, '45.23330', '-123.85000'), ('Lees Camp', 4352, '45.60000', '-123.51700'), ('Manzanita', 564, '45.71730', '-123.93360'), ('Mohler', 391, '45.70000', '-123.86660'), ('Nehalem', 203, '45.72110', '-123.89150'), ('Neskowin', 169, '45.10000', '-123.98330'), ('Netarts', 744, '45.43300', '-123.93700'), ('Oceanside', 326, '45.46660', '-123.96660'), ('Pacific City', 1027, '45.20000', '-123.96000'), ('Pleasant Valley', 4352, '45.36660', '-123.81000'), ('Rockaway Beach', 1267, '45.61500', '-123.93830'), ('Salmonberry', 391, '45.75000', '-123.65000'), ('Sandlake', 0, '45.30330', '-123.92220'), ('Tillamook', 4352, '45.45670', '-123.83760'), ('Trask', 4352, '45.42000', '-123.64000'), ('Wheeler', 391, '45.68700', '-123.88410'), ('Wilson River Summit', 1286, '45.62000', '-123.38000')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC059': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adams', 297, '45.76730', '-118.56270'), ('Athena', 1221, '45.81280', '-118.49140'), ('Echo', 650, '45.74400', '-119.19200'), ('Helix', 183, '45.85030', '-118.65740'), ('Hermiston', 13154, '45.83280', '-119.28350'), ('Milton-Freewater', 6470, '45.93490', '-118.39040'), ('Mission', 1019, '45.66710', '-118.67180'), ('Pendleton', 16354, '45.67380', '-118.81730'), ('Pilot Rock', 1532, '45.48150', '-118.83220'), ('Stanfield', 1979, '45.78630', '-119.21950'), ('Ukiah', 255, '45.13390', '-118.93170'), ('Umatilla', 4978, '45.91330', '-119.32780'), ('Weston', 717, '45.81580', '-118.42470')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORC061': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Cove', 594, '45.29670', '-117.80950'), ('Elgin', 1654, '45.56450', '-117.92020'), ('Imbler', 284, '45.46240', '-117.96250'), ('Island City', 916, '45.33880', '-118.04610'), ('La Grande', 12327, '45.32530', '-118.08730'), ('North Powder', 489, '45.03060', '-117.91860'), ('Summerville', 117, '45.48980', '-118.00250'), ('Union', 1926, '45.20900', '-117.86710')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORC063': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Enterprise', 1895, '45.42530', '-117.27610'), ('Joseph', 1054, '45.35200', '-117.22790'), ('Lostine', 263, '45.48710', '-117.42900'), ('Wallowa', 869, '45.57070', '-117.52770')], 'partOfState': 'southeast', 'wfo': 'PDT'}, +'ORC065': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Antelope', 59, '44.91090', '-120.72250'), ('Chenoweth', 3412, '45.62730', '-121.23010'), ('City Of The Dalles', 11514, '45.59920', '-121.17500'), ('Dufur', 588, '45.45340', '-121.12710'), ('Maupin', 411, '45.17520', '-121.08290'), ('Mosier', 410, '45.68370', '-121.39490'), ('Shaniko', 26, '45.00420', '-120.75050')], 'partOfState': 'northwest', 'wfo': 'PDT'}, +'ORC067': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Aloha', 41741, '45.49210', '-122.87180'), ('Banks', 1286, '45.61540', '-123.11000'), ('Beaverton', 76129, '45.47550', '-122.81660'), ('Buxton', 1286, '45.68330', '-123.20000'), ('Cedar Hills', 8949, '45.50370', '-122.80560'), ('Cherry Grove', 600, '45.45000', '-123.25000'), ('Cornelius', 9652, '45.51890', '-123.05410'), ('Dilley', 17708, '45.48330', '-123.11660'), ('Durham', 1382, '45.39470', '-122.75750'), ('Farmington', 70186, '45.45000', '-122.95000'), ('Forest Grove', 17708, '45.52230', '-123.10440'), ('Gales Creek', 1286, '45.58330', '-123.21660'), ('Gaston', 600, '45.43560', '-123.14080'), ('Glenwood', 1286, '45.65000', '-123.26700'), ('Hillsboro', 70186, '45.52770', '-122.93910'), ('King City', 1949, '45.40540', '-122.80160'), ('Manning', 1286, '45.66660', '-123.16660'), ('North Plains', 1605, '45.59670', '-122.99880'), ('Raleigh Hills', 5865, '45.48490', '-122.75430'), ('Rockcreek', 9404, '45.55030', '-122.87590'), ('Scholls', 18064, '45.40000', '-122.95000'), ('Sherwood', 11791, '45.35990', '-122.84190'), ('Tigard', 41223, '45.42500', '-122.77390'), ('Timber', 2228, '45.71660', '-123.30000'), ('Tualatin', 22791, '45.37630', '-122.77170')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORC069': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Fossil', 469, '44.99840', '-120.21320'), ('Mitchell', 170, '44.56730', '-120.15250'), ('Spray', 140, '44.83200', '-119.79330')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORC071': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Amity', 1478, '45.11570', '-123.20310'), ('Carlton', 1514, '45.29500', '-123.17500'), ('Dayton', 2119, '45.22050', '-123.07660'), ('Dundee', 2598, '45.27650', '-123.00590'), ('Grande Ronde Indian Reservation', 1844, '45.15000', '-123.63000'), ('Lafayette', 2586, '45.24610', '-123.11040'), ('McMinnville', 26499, '45.21120', '-123.19020'), ('Newberg', 18064, '45.30100', '-122.97000'), ('Pike', 794, '45.38330', '-123.26660'), ('Sheridan', 3570, '45.09540', '-123.39510'), ('Unionvale', 2119, '45.15000', '-123.06660'), ('Whiteson', 1478, '45.15000', '-123.20000'), ('Willamina', 1844, '45.07910', '-123.48350'), ('Yamhill', 794, '45.34130', '-123.18440')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'PAC001': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Abbottstown', 905, '39.88450', '-76.98970'), ('Arendtsville', 848, '39.92500', '-77.30120'), ('Bendersville', 576, '39.98240', '-77.24990'), ('Biglerville', 1101, '39.93010', '-77.24720'), ('Bonneauville', 1378, '39.81140', '-77.13680'), ('Carroll Valley', 3291, '39.75060', '-77.38110'), ('Cashtown', 848, '39.88000', '-77.34000'), ('East Berlin', 1832, '39.93680', '-76.98040'), ('Fairfield', 486, '39.78770', '-77.36920'), ('Germantown', 1378, '39.77000', '-77.16000'), ('Gettysburg', 7490, '39.83010', '-77.23450'), ('Heidlersburg', 1696, '39.93000', '-77.09000'), ('Lake Meade', 1832, '39.97000', '-77.02000'), ('Littlestown', 3947, '39.74410', '-77.08870'), ('McSherrystown', 2691, '39.80410', '-77.01960'), ('New Oxford', 1696, '39.86220', '-77.05570'), ('Seven Stars', 7490, '39.85000', '-77.27000'), ('York Springs', 574, '40.00890', '-77.11660')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC003': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aspinwall', 2960, '40.49230', '-79.90370'), ('Avalon', 5294, '40.50100', '-80.06870'), ('Baldwin', 19999, '40.36320', '-79.96610'), ('Bell Acres', 1382, '40.59210', '-80.17630'), ('Bellevue', 8770, '40.49390', '-80.05590'), ('Ben Avon', 1917, '40.50650', '-80.08240'), ('Ben Avon Heights', 392, '40.51150', '-80.07290'), ('Bethel Park', 33556, '40.32360', '-80.03610'), ('Blawnox', 1550, '40.49110', '-79.86220'), ('Brackenridge', 3543, '40.60740', '-79.74210'), ('Braddock', 2912, '40.40200', '-79.86930'), ('Braddock Hills', 1998, '40.41680', '-79.86340'), ('Bradfordwoods', 1149, '40.63580', '-80.08030'), ('Brentwood', 10466, '40.37330', '-79.97600'), ('Bridgeville', 5341, '40.35660', '-80.10610'), ('Carnegie', 8389, '40.40760', '-80.08660'), ('Carnot-Moon', 10187, '40.51860', '-80.21420'), ('Castle Shannon', 8556, '40.36630', '-80.02020'), ('Chalfant', 870, '40.40990', '-79.83850'), ('Cheswick', 1899, '40.54290', '-79.80130'), ('Churchill', 3566, '40.43830', '-79.84070'), ('Clairton', 8491, '40.29650', '-79.88550'), ('Coraopolis', 6131, '40.51410', '-80.16210'), ('Crafton', 6706, '40.43330', '-80.07090'), ('Curtisville', 1173, '40.64870', '-79.84960'), ('Dormont', 9305, '40.39300', '-80.03750'), ('Dravosburg', 2015, '40.35210', '-79.88870'), ('Duquesne', 7332, '40.37320', '-79.85080'), ('East Mckeesport', 2343, '40.38430', '-79.80680'), ('East Pittsburgh', 2017, '40.39720', '-79.83690'), ('Edgewood', 2619, '40.43140', '-79.88370'), ('Edgeworth', 1730, '40.55430', '-80.19220'), ('Elizabeth', 1609, '40.27150', '-79.88650'), ('Emsworth', 2598, '40.51060', '-80.09640'), ('Etna', 3924, '40.49860', '-79.94730'), ('Forest Hills', 6831, '40.42480', '-79.85250'), ('Fox Chapel', 5436, '40.52540', '-79.88960'), ('Franklin Park', 11364, '40.59170', '-80.09870'), ('Glassport', 4993, '40.32540', '-79.88660'), ('Glenfield', 236, '40.52170', '-80.13210'), ('Green Tree', 4719, '40.41850', '-80.05530'), ('Hampton Township', 15568, '40.58580', '-79.95500'), ('Harrison Township', 11763, '40.63660', '-79.71670'), ('Haysville', 78, '40.52610', '-80.15440'), ('Heidelberg', 1225, '40.39140', '-80.09200'), ('Homestead', 3569, '40.40680', '-79.90980'), ('Imperial-Enlow', 3449, '40.45340', '-80.24850'), ('Ingram', 3712, '40.44570', '-80.06840'), ('Jefferson', 337, '40.29370', '-79.93220'), ('Kennedy Township', 7152, '40.47620', '-80.10190'), ('Leetsdale', 1232, '40.56830', '-80.21480'), ('Liberty', 2670, '40.32380', '-79.85800'), ('Lincoln', 1218, '40.29320', '-79.85250'), ('McCandless Township', 28781, '40.58350', '-80.03000'), ('McKeesport', 24040, '40.34150', '-79.84430'), ('McKees Rocks', 6622, '40.46930', '-80.06210'), ('Millvale', 4028, '40.48210', '-79.97440'), ('Mount Lebanon', 33017, '40.37400', '-80.04890'), ('Mount Oliver', 3970, '40.41090', '-79.98640'), ('Munhall', 12264, '40.39330', '-79.90110'), ('Municipality Of Monroeville', 29169, '40.42600', '-79.76090'), ('North Braddock', 6410, '40.40100', '-79.85210'), ('North Versailles', 11125, '40.37980', '-79.80970'), ('Oakdale', 1551, '40.39970', '-80.18770'), ('Oakmont', 6911, '40.51940', '-79.83650'), ("O'hara Township", 9096, '40.49930', '-79.90170'), ('Osborne', 566, '40.53080', '-80.16950'), ('Penn Hills', 46809, '40.47590', '-79.82700'), ('Pennsbury Village', 738, '40.42770', '-80.10090'), ('Pitcairn', 3689, '40.40760', '-79.77600'), ('Pittsburgh', 334563, '40.43920', '-79.97670'), ('Pleasant Hills', 8397, '40.32870', '-79.96110'), ('Plum', 26940, '40.50240', '-79.75400'), ('Port Vue', 4228, '40.33690', '-79.87050'), ('Rankin', 2315, '40.41140', '-79.88210'), ('Reserve Township', 3866, '40.48270', '-79.98710'), ('Robinson Township', 10830, '40.46210', '-80.12680'), ('Rosslyn Farms', 464, '40.42160', '-80.08980'), ('Ross Township', 33482, '40.52660', '-80.02490'), ('Russellton', 1530, '40.61070', '-79.83770'), ('Scott Township', 17118, '40.38620', '-80.07720'), ('Sewickley', 3902, '40.53970', '-80.18050'), ('Sewickley Heights', 981, '40.56100', '-80.15580'), ('Sewickley Hills', 652, '40.56030', '-80.12020'), ('Shaler Township', 30533, '40.52090', '-79.96400'), ('Sharpsburg', 3594, '40.49320', '-79.92660'), ('South Park Township', 14292, '40.29700', '-79.99390'), ('Springdale', 3828, '40.53960', '-79.78200'), ('Stowe Township', 7681, '40.48310', '-80.07330'), ('Sturgeon-Noblestown', 1350, '40.38880', '-80.20310'), ('Swissvale', 9653, '40.42050', '-79.88650'), ('Tarentum', 4993, '40.60520', '-79.76020'), ('Thornburg', 468, '40.43350', '-80.08340'), ('Turtle Creek', 6076, '40.40810', '-79.82090'), ('Upper St. Clair', 20053, '40.33570', '-80.08370'), ('Verona', 3124, '40.50500', '-79.84110'), ('Versailles', 1724, '40.31720', '-79.83050'), ('Wall', 727, '40.39320', '-79.78510'), ('West Elizabeth', 565, '40.27310', '-79.89390'), ('West Homestead', 2197, '40.39900', '-79.92040'), ('West Mifflin', 22464, '40.35710', '-79.90780'), ('West View', 7277, '40.51830', '-80.03390'), ('Wexford', 0, '40.63000', '-80.05000'), ('Whitaker', 1338, '40.39970', '-79.88740'), ('Whitehall', 14444, '40.35910', '-79.99180'), ('White Oak', 8437, '40.33920', '-79.80430'), ('Wilkinsburg', 19196, '40.44480', '-79.87330'), ('Wilkins Township', 7487, '40.42630', '-79.82430'), ('Wilmerding', 2145, '40.39360', '-79.81090')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAC005': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Apollo', 1765, '40.58460', '-79.56460'), ('Applewold', 356, '40.80750', '-79.52230'), ('Atwood', 112, '40.74800', '-79.26190'), ('Bradys Bend', 0, '41.00000', '-79.63000'), ('Dayton', 543, '40.88100', '-79.24180'), ('Elderton', 358, '40.69410', '-79.34190'), ('Ford City', 3451, '40.76820', '-79.53450'), ('Ford Cliff', 412, '40.75990', '-79.53660'), ('Freeport', 1962, '40.68260', '-79.68280'), ('Kittanning', 4787, '40.82710', '-79.52340'), ('Leechburg', 2386, '40.63040', '-79.60280'), ('Lenape Heights', 1212, '40.76430', '-79.52080'), ('Manorville', 401, '40.78770', '-79.52110'), ('North Apollo', 1426, '40.59320', '-79.55710'), ('North Vandergrift', 1431, '40.60850', '-79.56440'), ('Orchard Hills', 2152, '40.59300', '-79.54140'), ('Parker', 799, '41.09200', '-79.68430'), ('Rural Valley', 922, '40.79910', '-79.31470'), ('South Bethlehem', 444, '40.99960', '-79.33950'), ('West Hills', 1229, '40.82790', '-79.54700'), ('West Kittanning', 1199, '40.81190', '-79.53170'), ('Worthington', 778, '40.83790', '-79.63440')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAC007': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aliquippa', 11734, '40.61740', '-80.25500'), ('Ambridge', 7769, '40.59310', '-80.22540'), ('Baden', 4377, '40.63860', '-80.22190'), ('Beaver', 4775, '40.69290', '-80.30750'), ('Beaver Falls', 9920, '40.76090', '-80.32240'), ('Big Beaver', 2186, '40.81830', '-80.36360'), ('Bridgewater', 739, '40.70900', '-80.30050'), ('Conway', 2290, '40.66450', '-80.24090'), ('Darlington', 299, '40.81000', '-80.42390'), ('East Rochester', 623, '40.69810', '-80.26820'), ('Eastvale', 293, '40.76770', '-80.31550'), ('Economy', 9363, '40.63840', '-80.18510'), ('Fallston', 307, '40.72150', '-80.31450'), ('Frankfort Springs', 130, '40.48130', '-80.44560'), ('Freedom', 1763, '40.68460', '-80.25340'), ('Georgetown', 182, '40.64170', '-80.49980'), ('Glasgow', 63, '40.64460', '-80.50860'), ('Harmony Township', 3694, '40.60710', '-80.22050'), ('Harshaville', 0, '40.55000', '-80.42000'), ('Homewood', 147, '40.81340', '-80.32920'), ('Hookstown', 152, '40.59880', '-80.47440'), ('Industry', 1921, '40.65600', '-80.40980'), ('Koppel', 856, '40.83480', '-80.32250'), ('Midland', 3137, '40.63990', '-80.45790'), ('Monaca', 6286, '40.68330', '-80.27320'), ('New Brighton', 6641, '40.73560', '-80.30890'), ('New Galilee', 424, '40.83310', '-80.40090'), ('Ohioville', 3759, '40.68290', '-80.47730'), ('Patterson Heights', 670, '40.73900', '-80.32700'), ('Patterson Township', 3074, '40.74240', '-80.33240'), ('Rochester', 4014, '40.70200', '-80.28330'), ('Shippingport', 237, '40.62540', '-80.42420'), ('South Heights', 542, '40.57460', '-80.23630'), ('West Mayfield', 1187, '40.77900', '-80.33810')], 'partOfState': 'western', 'wfo': 'PBZ'}, +'PAC009': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Barnes Gap', 0, '39.77000', '-78.34000'), ('Bedford', 3141, '40.01490', '-78.50440'), ('Blue Knob State Park', 1230, '40.26000', '-78.59000'), ('Breezewood', 20, '39.99000', '-78.24000'), ('Buffalo Mills', 291, '39.92000', '-78.63000'), ('Cessna', 3141, '40.06000', '-78.51000'), ('Clearville', 1905, '39.91000', '-78.37000'), ('Everett', 1905, '40.01270', '-78.36630'), ('Hopewell', 222, '40.13460', '-78.26670'), ('Hyndman', 1005, '39.82100', '-78.72110'), ('Inglesmith', 146, '39.75000', '-78.42000'), ('Lake Gordon', 1005, '39.77000', '-78.67000'), ('Manns Choice', 291, '40.00280', '-78.59170'), ('New Enterprise', 269, '40.16000', '-78.37000'), ('New Paris', 214, '40.10770', '-78.64320'), ('Osterburg', 88, '40.18000', '-78.53000'), ('Queen', 1503, '40.25000', '-78.51000'), ('Rainsburg', 146, '39.89520', '-78.51620'), ('Saxton', 803, '40.21300', '-78.24720'), ('Schellsburg', 316, '40.04860', '-78.64300'), ('Woodbury', 269, '40.22570', '-78.36670')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC011': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Amity Gardens', 0, '40.27410', '-75.73560'), ('Bally', 0, '40.40100', '-75.58830'), ('Bechtelsville', 0, '40.37000', '-75.62860'), ('Bernville', 0, '40.43370', '-76.11100'), ('Birdsboro', 0, '40.26310', '-75.80780'), ('Boyertown', 0, '40.33140', '-75.63610'), ('Centerport', 0, '40.48660', '-76.00630'), ('Fairview Hgts', 1023, '40.43090', '-76.00700'), ('Fleetwood', 0, '40.45480', '-75.81880'), ('Flying Hills', 0, '40.27670', '-75.91450'), ('Hamburg', 0, '40.55620', '-75.98260'), ('Kenhorst', 0, '40.30670', '-75.94410'), ('Kutztown', 0, '40.51980', '-75.77530'), ('Laureldale', 0, '40.38930', '-75.91410'), ('Leesport', 0, '40.44490', '-75.96990'), ('Lenhartsville', 0, '40.57340', '-75.88670'), ('Lorane', 0, '40.29360', '-75.84630'), ('Lyons', 0, '40.48020', '-75.75700'), ('Mohnton', 0, '40.28650', '-75.98770'), ('Mount Penn', 0, '40.32850', '-75.88920'), ('New Morgan', 0, '40.18070', '-75.87070'), ('Reading', 0, '40.33000', '-75.93000'), ('Reiffton', 0, '40.31600', '-75.86760'), ('Robesonia', 0, '40.35000', '-76.13000'), ('Shillington', 0, '40.30250', '-75.96720'), ('Shoemakersville', 0, '40.50000', '-75.96900'), ('Sinking Spring', 0, '40.32470', '-76.02240'), ('St. Lawrence', 0, '40.32600', '-75.86500'), ('Strausstown', 0, '40.49200', '-76.18410'), ('Topton', 0, '40.50300', '-75.70180'), ('Wernersville', 0, '40.32990', '-76.08070'), ('West Lawn', 0, '40.32850', '-75.99330'), ('West Reading', 0, '40.33340', '-75.94690'), ('West Wyomissing', 0, '40.32270', '-75.99490'), ('Whitfield', 0, '40.33590', '-76.00630'), ('Womelsdorf', 0, '40.36520', '-76.18780'), ('Wyomissing', 0, '40.33270', '-75.96460'), ('Wyomissing Hills', 0, '40.33470', '-75.98200')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'PAC013': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Altoona', 49523, '40.50780', '-78.40130'), ('Bald Eagle', 91, '40.73000', '-78.17000'), ('Bellwood', 2016, '40.60110', '-78.33420'), ('Canoe Creek State Park', 49523, '40.50000', '-78.32000'), ('Claysburg', 1503, '40.29210', '-78.44960'), ('Duncansville', 1238, '40.42630', '-78.42960'), ('Hollidaysburg', 5368, '40.43010', '-78.39310'), ('Horseshoe Curve', 49523, '40.50000', '-78.47000'), ('Lakemont', 5368, '40.47000', '-78.38000'), ('Martinsburg', 2236, '40.31030', '-78.32450'), ('Newry', 245, '40.39310', '-78.43530'), ('Roaring Spring', 2418, '40.33370', '-78.39670'), ('Royer', 1345, '40.42000', '-78.27000'), ('Sinking Valley', 2016, '40.57000', '-78.27000'), ('Ski Gap', 1503, '40.32000', '-78.52000'), ('Tipton', 1225, '40.63630', '-78.29860'), ('Tyrone', 5528, '40.67680', '-78.24620'), ('Williamsburg', 1345, '40.46390', '-78.20570')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC015': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alba', 186, '41.70430', '-76.82780'), ('Athens', 3415, '41.95040', '-76.51710'), ('Bentley Creek', 617, '41.95000', '-76.68330'), ('Browntown', 564, '41.65281', '-76.24000'), ('Brushville', 318, '41.81670', '-76.18330'), ('Burlington', 182, '41.78280', '-76.60890'), ('Camptown', 564, '41.73330', '-76.23330'), ('Canton', 1807, '41.65700', '-76.85300'), ('Chemung', 987, '42.00000', '-76.61670'), ('Cherrytown', 564, '41.68330', '-76.28330'), ('Cowley', 23677, '41.88330', '-76.76670'), ('Dunning', 617, '41.93330', '-76.78330'), ('Durell', 3024, '41.71670', '-76.36670'), ('East Smithfield', 182, '41.86670', '-76.61670'), ('Evergreen', 306, '41.61670', '-76.41670'), ('Franklindale', 565, '41.70000', '-76.55000'), ('Gillett', 617, '41.95000', '-76.78330'), ('Grover', 1807, '41.61670', '-76.86670'), ('Herrick', 318, '41.78330', '-76.25000'), ('Herrickville', 318, '41.80000', '-76.25000'), ('Hollenback', 564, '41.60000', '-76.23330'), ('Leona', 23677, '41.81670', '-76.73330'), ('Le Raysville', 318, '41.83760', '-76.18070'), ('Le Roy', 186, '41.66670', '-76.70000'), ('Liberty Corners', 565, '41.70000', '-76.41670'), ('Litchfield', 573, '41.96670', '-76.43330'), ('Macedonia', 3024, '41.76670', '-76.38330'), ('Milan', 3415, '41.91670', '-76.50000'), ('Minnequa', 186, '41.68330', '-76.83330'), ('Monroe', 565, '41.71360', '-76.47560'), ('Monroeton', 565, '41.71670', '-76.46670'), ('Mosherville', 7753, '41.98330', '-76.88330'), ('New Albany', 306, '41.60080', '-76.44330'), ('North Towanda', 3024, '41.78330', '-76.45000'), ('Orwell', 382, '41.88330', '-76.26670'), ('Overton', 306, '41.56670', '-76.50000'), ('Ridgebury', 617, '41.96670', '-76.71670'), ('Riggs', 182, '41.83330', '-76.56670'), ('Rome', 382, '41.85790', '-76.34160'), ('Rushville', 318, '41.78330', '-76.13330'), ('Sayre', 5813, '41.98590', '-76.52100'), ('Sheshequin', 3024, '41.85000', '-76.48330'), ('Silvara', 396, '41.70000', '-76.13330'), ('South Branch', 306, '41.65000', '-76.43330'), ('South Waverly', 987, '41.99560', '-76.54430'), ('Springfield', 23677, '41.85000', '-76.73330'), ('Spring Hill', 396, '41.70000', '-76.18330'), ('Stevensville', 318, '41.76670', '-76.18330'), ('Sugar Run', 564, '41.65000', '-76.23330'), ('Sylvania', 200, '41.80500', '-76.85750'), ('Terrytown', 564, '41.66670', '-76.28330'), ('Towanda', 3024, '41.77090', '-76.44690'), ('Troy', 23677, '41.78470', '-76.78960'), ('Ulster', 3024, '41.85000', '-76.50000'), ('Warren Center', 290, '41.93330', '-76.16670'), ('West Burlington', 182, '41.76670', '-76.66670'), ('West Franklin', 182, '41.70000', '-76.61670'), ('West Le Roy', 186, '41.66670', '-76.75000'), ('West Warren', 318, '41.93330', '-76.23330'), ('Wetona', 182, '41.83330', '-76.68330'), ('Wilawana', 987, '41.98330', '-76.60000'), ('Wilmot', 564, '41.60000', '-76.31670'), ('Windham', 573, '41.96670', '-76.28330'), ('Wyalusing', 564, '41.66910', '-76.26270'), ('Wysox', 3024, '41.76670', '-76.40000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAC017': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Andalusia', 0, '40.06940', '-74.97170'), ('Bedminster', 0, '40.42580', '-75.17940'), ('Bensalem', 0, '40.10440', '-74.95170'), ('Bristol', 0, '40.10330', '-74.85140'), ('Chalfont', 0, '40.28970', '-75.21020'), ('Churchville', 0, '40.20070', '-74.99740'), ('Cornwells Heights-Eddington', 0, '40.08170', '-74.94710'), ('Croydon', 0, '40.09020', '-74.89550'), ('Doylestown', 0, '40.31270', '-75.12880'), ('Dublin', 0, '40.37060', '-75.20470'), ('Erwinna', 0, '40.50060', '-75.07310'), ('Fairless Hills', 0, '40.17880', '-74.85340'), ('Feasterville', 0, '40.15270', '-74.98660'), ('Ferndale', 0, '40.53360', '-75.17910'), ('Fricks', 0, '40.30890', '-75.24540'), ('Furlong', 0, '40.29580', '-75.08170'), ('Gardenville', 0, '40.37250', '-75.10810'), ('Geryville', 0, '40.41530', '-75.47560'), ('Hilltown', 0, '40.34250', '-75.25630'), ('Hulmeville', 0, '40.14310', '-74.90750'), ('Ivyland', 0, '40.20810', '-75.07290'), ('Jamison', 0, '40.25490', '-75.08920'), ('Langhorne', 0, '40.17740', '-74.91880'), ('Levittown', 0, '40.15350', '-74.85310'), ('Lumberville', 0, '40.40670', '-75.03830'), ('Morrisville', 0, '40.20730', '-74.78030'), ('New Britain', 0, '40.29910', '-75.17860'), ('New Hope', 0, '40.36140', '-74.95930'), ('Newtown', 0, '40.22820', '-74.93230'), ('Newtown Grant', 0, '40.26000', '-74.95530'), ('Ottsville', 0, '40.47310', '-75.16140'), ('Peddlers Village', 0, '40.34780', '-75.03160'), ('Penndel', 0, '40.15490', '-74.91390'), ('Penns Park', 0, '40.26570', '-74.99810'), ('Perkasie', 0, '40.37160', '-75.29300'), ('Pipersville', 0, '40.42530', '-75.13970'), ('Pleasant Valley', 0, '40.52110', '-75.29310'), ('Quakertown', 0, '40.44040', '-75.34040'), ('Revere', 0, '40.51530', '-75.16140'), ('Richboro', 0, '40.22160', '-75.00600'), ('Richlandtown', 0, '40.47230', '-75.32130'), ('Riegelsville', 0, '40.59540', '-75.19560'), ('Robesonia', 0, '40.35150', '-75.13650'), ('Sellersville', 0, '40.36030', '-75.30830'), ('Silverdale', 0, '40.34640', '-75.27130'), ('Springtown', 0, '40.55640', '-75.28970'), ('Telford', 0, '40.32550', '-75.32730'), ('Tinicum', 0, '40.44830', '-75.10810'), ('Trumbauersville', 0, '40.41410', '-75.37940'), ('Tullytown', 0, '40.14500', '-74.81780'), ('Village Shires', 0, '40.20300', '-74.97080'), ('Warminster', 0, '40.20610', '-75.09980'), ('Warminster Heights', 0, '40.18670', '-75.08480'), ('Warrington', 0, '40.24910', '-75.13370'), ('Washington Crossing', 0, '40.29330', '-74.87080'), ('Woodbourne', 0, '40.20210', '-74.88640'), ('Woodside', 0, '40.23030', '-74.85870'), ('Yardley', 0, '40.24150', '-74.83630')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAC019': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bruin', 534, '41.05510', '-79.72730'), ('Butler', 15121, '40.86190', '-79.89670'), ('Callery', 444, '40.73950', '-80.03760'), ('Cherry Valley', 72, '41.16190', '-79.79910'), ('Chicora', 1021, '40.94890', '-79.74190'), ('Connoquenessing', 564, '40.81800', '-80.01390'), ('East Butler', 679, '40.87860', '-79.84760'), ('Eau Claire', 355, '41.13690', '-79.79820'), ('Evans City', 2009, '40.76850', '-80.05870'), ('Fernway', 12188, '40.69470', '-80.13100'), ('Fox Run', 3044, '40.70230', '-80.08300'), ('Harmony', 937, '40.80130', '-80.12520'), ('Harrisville', 883, '41.13600', '-80.01100'), ('Homeacre-Lyndora', 7511, '40.87100', '-79.92300'), ('Karns City', 244, '40.99710', '-79.72600'), ('Mars', 1746, '40.69660', '-80.01410'), ('Meadowood', 2912, '40.84200', '-79.89400'), ('Meridian', 3794, '40.85440', '-79.95660'), ('Nixon', 1404, '40.78320', '-79.92970'), ('Oak Hills', 2335, '40.82470', '-79.91340'), ('Petrolia', 218, '41.02180', '-79.71720'), ('Portersville', 268, '40.92520', '-80.14440'), ('Prospect', 1234, '40.90070', '-80.04960'), ('Sarver', 0, '40.73000', '-79.73000'), ('Saxonburg', 1629, '40.75200', '-79.81550'), ('Seven Fields', 1986, '40.68840', '-80.06200'), ('Shanor-Northvue', 3517, '40.90930', '-79.91720'), ('Slippery Rock', 3068, '41.07000', '-80.06030'), ('Valencia', 384, '40.67570', '-79.98820'), ('West Liberty', 325, '41.00730', '-80.05500'), ('West Sunbury', 104, '41.00610', '-79.89630'), ('Zelienople', 4123, '40.78940', '-80.14350')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAC021': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Ashville', 279, '40.55910', '-78.54740'), ('Beaverdale', 1230, '40.32290', '-78.69880'), ('Belmont', 2846, '40.28240', '-78.89170'), ('Belsano', 1035, '40.55000', '-78.86000'), ('Blandburg', 490, '40.69000', '-78.44000'), ('Brownstown', 883, '40.33290', '-78.93700'), ('Carrolltown', 1049, '40.60420', '-78.70710'), ('Cassandra', 136, '40.40810', '-78.64160'), ('Chest Springs', 110, '40.57870', '-78.61010'), ('Colver', 1035, '40.54290', '-78.78760'), ('Cresson', 1631, '40.46260', '-78.58660'), ('Dale', 1503, '40.31180', '-78.90410'), ('Dunlo', 1257, '40.28000', '-78.73000'), ('East Conemaugh', 1291, '40.34750', '-78.88610'), ('Ebensburg', 3091, '40.48860', '-78.72700'), ('Elim', 4175, '40.29780', '-78.94290'), ('Ferndale', 1834, '40.28840', '-78.91720'), ('Gallitzin', 1756, '40.48220', '-78.55600'), ('Geistown', 2555, '40.29380', '-78.87170'), ('Hastings', 1398, '40.66490', '-78.70900'), ('Johnstown', 23906, '40.32540', '-78.91950'), ('Lilly', 948, '40.42390', '-78.62000'), ('Lorain', 747, '40.29580', '-78.89530'), ('Loretto', 1190, '40.50870', '-78.63630'), ('Nanty-Glo', 3117, '40.47030', '-78.83490'), ('Northern Cambria', 2534, '40.66630', '-78.78080'), ('Patton', 2023, '40.63270', '-78.64930'), ('Portage', 2837, '40.38680', '-78.67550'), ('Prince Gallitzin State Park', 2023, '40.65000', '-78.57000'), ('Scalp Level', 851, '40.24930', '-78.84390'), ('Sidman', 1189, '40.32330', '-78.76550'), ('South Fork', 1138, '40.36380', '-78.79160'), ('Spring Hill', 970, '40.37110', '-78.66650'), ('Summerhill', 521, '40.37570', '-78.76130'), ('Tunnelhill', 409, '40.47390', '-78.54340'), ('Vinco', 1429, '40.40960', '-78.84220'), ('Vintondale', 528, '40.47860', '-78.91250'), ('Westmont', 5523, '40.31910', '-78.95230'), ('Wilmore', 252, '40.38610', '-78.71690')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC023': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Cameron', 103, '41.43000', '-78.16000'), ('Driftwood', 103, '41.34320', '-78.13540'), ('Elk River', 2526, '41.58000', '-78.38000'), ('Emporium', 2526, '41.51090', '-78.23710'), ('Hicks Run', 103, '41.36000', '-78.24000'), ('Sizerville', 2526, '41.59000', '-78.21000'), ('Stevenson Dam', 103, '41.43000', '-78.06000'), ('Truman', 2526, '41.45000', '-78.37000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC025': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Albrightsville', 0, '41.01440', '-75.60140'), ('Beaver Meadows', 0, '40.92960', '-75.91270'), ('Beltzville State Park', 0, '40.86830', '-75.60830'), ('Bowmanstown', 0, '40.80150', '-75.66150'), ('Christmans', 0, '40.96810', '-75.64440'), ('Jim Thorpe', 0, '40.87140', '-75.73980'), ('Lake Harmony', 0, '41.06060', '-75.59140'), ('Lansford', 0, '40.83210', '-75.88600'), ('Lehighton', 0, '40.83000', '-75.72000'), ('Meckesville', 0, '40.99970', '-75.55250'), ('Nesquehoning', 0, '40.86200', '-75.82950'), ('New Mahoning', 0, '40.79750', '-75.81060'), ('Palmerton', 0, '40.80120', '-75.61700'), ('Parryville', 0, '40.82430', '-75.66960'), ('Penn Forest Reservoir', 0, '40.92940', '-75.56280'), ('Summit Hill', 0, '40.82490', '-75.84670'), ('Trachsville', 0, '40.88080', '-75.52910'), ('Tresckow', 0, '40.91540', '-75.96520'), ('Weatherly', 0, '40.94300', '-75.82170'), ('Weissport', 0, '40.82900', '-75.70120'), ('Weissport East', 0, '40.83550', '-75.69110')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'PAC027': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bald Eagle State Park', 699, '41.05000', '-77.68500'), ('Bellefonte', 6395, '40.91380', '-77.76860'), ('Black Moshannon State Park', 638, '40.91300', '-78.05200'), ('Boalsburg', 3578, '40.77350', '-77.79160'), ('Centre Hall', 1079, '40.84440', '-77.68460'), ('Howard', 699, '41.01200', '-77.65700'), ('McCall Dam State Park', 435, '41.01000', '-77.20000'), ('Milesburg', 1187, '40.94260', '-77.79190'), ('Millheim', 749, '40.89250', '-77.47620'), ('Moshannon', 771, '41.02720', '-78.04800'), ('Park Forest', 8830, '40.80100', '-77.90970'), ('Philipsburg', 3056, '40.89260', '-78.21170'), ('Pine Glen', 771, '41.10100', '-78.05950'), ('Pine Grove Mills', 1141, '40.73880', '-77.87390'), ('Pleasant Gap', 1611, '40.86460', '-77.73800'), ('Poe Valley State Park', 749, '40.84440', '-77.49500'), ('Port Matilda', 638, '40.79900', '-78.05260'), ('Potters Mills', 1386, '40.77000', '-77.64000'), ('Rebersburg', 492, '40.94250', '-77.49000'), ('Rock Springs', 1104, '40.71950', '-77.95660'), ('Sandy Ridge', 340, '40.79900', '-78.21170'), ('Snow Shoe', 771, '41.02720', '-77.95030'), ('State College', 38420, '40.79060', '-77.85790'), ('Unionville', 313, '40.90590', '-77.87660'), ('Zion', 2054, '40.92140', '-77.66790')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC029': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Atglen', 0, '39.94710', '-75.97530'), ('Avondale', 0, '39.82390', '-75.78240'), ('Cedarville', 0, '40.22690', '-75.67190'), ('Chesterbrook', 0, '40.07570', '-75.45930'), ('Chester Springs', 0, '40.09500', '-75.61720'), ('Coatesville', 0, '39.98480', '-75.81930'), ('Cochranville', 0, '39.89170', '-75.92190'), ('Devon-Berwyn', 0, '40.04340', '-75.43870'), ('Downingtown', 0, '40.00720', '-75.70240'), ('Elverson', 0, '40.15780', '-75.83150'), ('Exton', 0, '40.03160', '-75.63000'), ('Glenmoore', 0, '40.08890', '-75.77220'), ('Glen Roy', 0, '39.76670', '-76.04970'), ('Homeville', 0, '39.86080', '-75.98690'), ('Honey Brook', 0, '40.09340', '-75.91100'), ('Kemblesville', 0, '39.74890', '-75.82440'), ('Kenilworth', 0, '40.22540', '-75.64260'), ('Kennett Square', 0, '39.84370', '-75.71170'), ('Ladenberg', 0, '39.77720', '-75.77170'), ('Lionville', 0, '40.05270', '-75.64560'), ('Malvern', 0, '40.03350', '-75.51400'), ('Marshallton', 0, '39.94970', '-75.68060'), ('Modena', 0, '39.96220', '-75.80250'), ('Mount Vernon', 0, '39.80940', '-76.02610'), ('Oxford', 0, '39.78570', '-75.98040'), ('Paoli', 0, '40.04230', '-75.49280'), ('Parkesburg', 0, '39.95870', '-75.91670'), ('Phoenixville', 0, '40.13590', '-75.51920'), ('Pughtown', 0, '40.16670', '-75.66580'), ('South Coatesville', 0, '39.96810', '-75.81530'), ('South Pottstown', 0, '40.23700', '-75.66460'), ('Spring City', 0, '40.17670', '-75.54690'), ('Thorndale', 0, '39.99850', '-75.75220'), ('Toughkenamon', 0, '39.83090', '-75.75560'), ('Valley Forge', 0, '40.09690', '-75.47000'), ('West Chester', 0, '39.96060', '-75.60550'), ('West Goshen', 0, '39.96820', '-75.57300'), ('West Grove', 0, '39.82140', '-75.82890'), ('Westtown', 0, '39.93080', '-75.55220')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAC031': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Callensburg', 224, '41.12560', '-79.55850'), ('Clarion', 6185, '41.21010', '-79.38040'), ('East Brady', 1038, '40.98480', '-79.61410'), ('Foxburg', 275, '41.14500', '-79.68060'), ('Fryburg', 0, '41.35000', '-79.45000'), ('Hawthorn', 587, '41.02080', '-79.27620'), ('Knox', 1176, '41.23480', '-79.53570'), ('New Bethlehem', 1057, '41.00300', '-79.32880'), ('Rimersburg', 1051, '41.04120', '-79.50210'), ('Shippenville', 505, '41.25090', '-79.46300'), ('Sligo', 728, '41.10880', '-79.49590'), ('St. Petersburg', 405, '41.16090', '-79.65440'), ('Strattanville', 542, '41.20290', '-79.32760')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAC033': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Brisbin', 413, '40.83920', '-78.35220'), ('Burnside', 283, '40.81280', '-78.78980'), ('Clearfield', 6631, '41.02140', '-78.43920'), ('Coalport', 490, '40.74850', '-78.53210'), ('Curwensville', 2650, '40.97270', '-78.51800'), ('Dubois', 8123, '41.12230', '-78.75580'), ('Glen Hope', 149, '40.79900', '-78.49810'), ('Grampian', 441, '40.96400', '-78.61100'), ('Houtzdale', 941, '40.82500', '-78.35100'), ('Hyde', 1491, '41.00740', '-78.46830'), ('Irvona', 680, '40.77350', '-78.55280'), ('Jeffries', 413, '40.91000', '-78.39000'), ('Karthaus', 771, '41.11000', '-78.12000'), ('Lecontes Mills', 350, '41.07000', '-78.26000'), ('Lumber City', 86, '40.92890', '-78.57210'), ('Mahaffey', 402, '40.87520', '-78.72810'), ('New Washington', 89, '40.82270', '-78.70140'), ('Osceola Mills', 1249, '40.85250', '-78.26990'), ('Parker Dam State Park', 1040, '41.18000', '-78.49000'), ('Penfield', 4507, '41.21000', '-78.60000'), ('Ramey', 525, '40.80070', '-78.39880'), ('Rockton', 8123, '41.08000', '-78.66000'), ('S.b. Elliot State Park', 1040, '41.12000', '-78.53000'), ('Treasure Lake', 4507, '41.17340', '-78.71610'), ('Troutville', 224, '41.02490', '-78.78550'), ('Wallaceton', 350, '40.96550', '-78.29240'), ('Westover', 458, '40.74960', '-78.68180'), ('Woodland', 6631, '40.99000', '-78.38000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC035': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Avis', 1492, '41.18620', '-77.31640'), ('Beech Creek', 717, '41.07470', '-77.58600'), ('Carroll', 435, '41.06000', '-77.23000'), ('Dunnstown', 1365, '41.14690', '-77.42110'), ('Glen Union', 1321, '41.23000', '-77.57000'), ('Hyner', 557, '41.30000', '-77.67000'), ('Keating', 1318, '41.26000', '-77.92000'), ('Kettle Creek State Park', 103, '41.36000', '-77.95000'), ('Lamar', 1568, '41.01000', '-77.51000'), ('Lock Haven', 9149, '41.13590', '-77.45320'), ('Loganton', 435, '41.03370', '-77.30240'), ('Mackeyville', 1123, '41.05000', '-77.43000'), ('McElhattan', 1492, '41.17000', '-77.37000'), ('Mill Hall', 1568, '41.10440', '-77.49040'), ('Renovo', 1318, '41.32910', '-77.74780'), ('Tamarack', 1318, '41.42000', '-77.85000'), ('Westport', 1318, '41.30000', '-77.84000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC037': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Almedia', 1056, '41.01440', '-76.38800'), ('Benton', 955, '41.19490', '-76.38530'), ('Berwick', 10774, '41.05560', '-76.24890'), ('Bloomsburg', 12375, '41.00230', '-76.45690'), ('Briar Creek', 0, '41.04700', '-76.28680'), ('Cambra', 215, '41.20000', '-76.31670'), ('Catawissa', 1589, '40.95300', '-76.46040'), ('Central', 955, '41.29000', '-76.37000'), ('Centralia', 21, '40.80420', '-76.34420'), ('Espy', 0, '41.00500', '-76.41770'), ('Fairmount Spgs', 215, '41.25000', '-76.31670'), ('Fairmount Springs', 0, '41.25000', '-76.31670'), ('Jerseytown', 991, '41.09000', '-76.60000'), ('Lime Ridge', 0, '41.02360', '-76.35530'), ('Mainville', 83, '40.96000', '-76.38000'), ('Mifflinville', 1213, '41.02920', '-76.30060'), ('Millville', 991, '41.12120', '-76.52740'), ('Numidia', 254, '40.89000', '-76.41000'), ('Orangeville', 500, '41.07660', '-76.41310'), ('Red Rock', 955, '41.28330', '-76.31670'), ('Scotch Valley', 1528, '40.96000', '-76.23000'), ('Shumans', 1213, '40.98000', '-76.28000'), ('Stillwater', 194, '41.15020', '-76.36710')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC039': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blooming Valley', 378, '41.68030', '-80.04160'), ('Cambridge Springs', 2363, '41.80170', '-80.06010'), ('Cochranton', 1148, '41.51850', '-80.04690'), ('Conneaut Lake', 708, '41.60230', '-80.30920'), ('Conneaut Lakeshore', 708, '41.62410', '-80.30720'), ('Conneautville', 848, '41.75770', '-80.36810'), ('Hydetown', 605, '41.65160', '-79.72430'), ('Linesville', 1155, '41.65680', '-80.42180'), ('Meadville', 13685, '41.64620', '-80.14650'), ('Saegertown', 1071, '41.71330', '-80.13830'), ('Spartansburg', 333, '41.82380', '-79.68250'), ('Springboro', 491, '41.80000', '-80.37120'), ('Titusville', 6146, '41.62670', '-79.67090'), ('Townville', 306, '41.67960', '-79.88200'), ('Venango', 288, '41.77280', '-80.11200'), ('Woodcock', 146, '41.75360', '-80.08430')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'PAC041': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bloserville', 195, '40.24000', '-77.32000'), ('Boiling Springs', 2769, '40.15780', '-77.13730'), ('Camp Hill', 7636, '40.24250', '-76.92680'), ('Carlisle', 17970, '40.20090', '-77.20420'), ('Carlisle Springs', 4728, '40.24160', '-77.17730'), ('Colonel Denning State Park', 252, '40.29000', '-77.42000'), ('Enola', 5627, '40.28850', '-76.93600'), ('Hogestown', 9042, '40.23000', '-77.04000'), ('Lemoyne', 3995, '40.24450', '-76.89940'), ('Lower Allen', 6619, '40.22630', '-76.90070'), ('Mechanicsburg', 9042, '40.21010', '-77.00550'), ('Mount Holly Spring', 1925, '40.11270', '-77.18480'), ('Newburg', 372, '40.13770', '-77.55450'), ('New Cumberland', 7349, '40.23050', '-76.87520'), ('Newville', 1367, '40.17090', '-77.40190'), ('Pine Grove Furnace', 576, '40.05000', '-77.27000'), ('Shippensburg', 5586, '40.04810', '-77.52300'), ('Shiremanstown', 1521, '40.22230', '-76.95630'), ('Walnut Bottom', 1367, '40.09000', '-77.37000'), ('Wertzville', 9042, '40.27000', '-77.03000'), ('West Fairview', 1364, '40.27740', '-76.91860'), ('Wormleysburg', 2607, '40.26180', '-76.90830')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC043': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Berrysburg', 354, '40.60280', '-76.80910'), ('Clifton', 4360, '40.24000', '-76.72000'), ('Colonial Park', 13259, '40.29990', '-76.80640'), ('Dauphin', 773, '40.36880', '-76.93040'), ('Dehart Dam', 2307, '40.45000', '-76.75000'), ('Elizabethville', 1344, '40.54750', '-76.81600'), ('Ellendale Forge', 6414, '40.40000', '-76.85000'), ('Gratz', 676, '40.60560', '-76.71730'), ('Halifax', 875, '40.46500', '-76.93340'), ('Harrisburg', 48950, '40.27600', '-76.88450'), ('Hershey', 12771, '40.28010', '-76.64770'), ('Highspire', 2720, '40.20850', '-76.78590'), ('Hummelstown', 4360, '40.26640', '-76.71290'), ('Linglestown', 6414, '40.34320', '-76.79400'), ('Lykens', 1937, '40.56330', '-76.69790'), ('Middletown', 9242, '40.20090', '-76.72930'), ('Millersburg', 2562, '40.54240', '-76.95600'), ('Penn National Race', 2307, '40.40000', '-76.67000'), ('Pillow', 304, '40.64120', '-76.80240'), ('Progress', 9647, '40.29050', '-76.83660'), ('Rockville', 2306, '40.32000', '-76.90000'), ('Rutherford Heights', 3481, '40.26890', '-76.76820'), ('Skyline View', 2307, '40.33830', '-76.72630'), ('Steelton', 5858, '40.22610', '-76.82590'), ('Williamstown', 1433, '40.58070', '-76.61790')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC045': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aldan', 0, '39.92290', '-75.28880'), ('Boothwyn', 0, '39.83550', '-75.44520'), ('Brookhaven', 0, '39.87060', '-75.39130'), ('Broomall', 0, '39.96990', '-75.35300'), ('Chelsea', 0, '39.86690', '-75.46830'), ('Chester', 0, '39.84540', '-75.37220'), ('Chester Heights', 0, '39.89440', '-75.46770'), ('Cheyney', 0, '39.92830', '-75.52310'), ('Clifton Heights', 0, '39.92900', '-75.29610'), ('Collingdale', 0, '39.91450', '-75.27740'), ('Colwyn', 0, '39.91150', '-75.25330'), ('Concordville', 0, '39.88500', '-75.52060'), ('Darby', 0, '39.92050', '-75.26100'), ('Drexel Hill', 0, '39.94920', '-75.30380'), ('East Lansdowne', 0, '39.94380', '-75.26170'), ('Eddystone', 0, '39.85610', '-75.33280'), ('Elam', 0, '39.85500', '-75.54140'), ('Folcroft', 0, '39.88860', '-75.27660'), ('Folsom', 0, '39.89140', '-75.32910'), ('Glenolden', 0, '39.89870', '-75.29280'), ('Gradyville', 0, '39.94310', '-75.46970'), ('Lansdowne', 0, '39.94050', '-75.27530'), ('Lima', 0, '39.91670', '-75.44230'), ('Linwood', 0, '39.82340', '-75.42450'), ('Marcus Hook', 0, '39.81280', '-75.41640'), ('Media', 0, '39.91950', '-75.38880'), ('Millbourne', 0, '39.96310', '-75.25280'), ('Morton', 0, '39.91090', '-75.32700'), ('Nether Providence Township', 0, '39.89790', '-75.36820'), ('Newtown Square', 0, '39.98670', '-75.40140'), ('Norwood', 0, '39.88590', '-75.29600'), ('Parkside', 0, '39.86650', '-75.37870'), ('Prospect Park', 0, '39.88560', '-75.30750'), ('Radnor Township', 0, '40.02830', '-75.36830'), ('Ridley Park', 0, '39.87770', '-75.32560'), ('Rose Valley', 0, '39.89480', '-75.38610'), ('Rutledge', 0, '39.90070', '-75.32780'), ('Sharon Hill', 0, '39.90780', '-75.26920'), ('Springfield', 0, '39.92770', '-75.33760'), ('Swarthmore', 0, '39.90210', '-75.34830'), ('Trainer', 0, '39.82360', '-75.40500'), ('Trout Lake', 0, '40.00170', '-75.34670'), ('Upland', 0, '39.85670', '-75.37980'), ('Upper Providence Township', 0, '39.93770', '-75.39650'), ('Village Green-Green Ridge', 0, '39.86390', '-75.42490'), ('Woodlyn', 0, '39.87740', '-75.34410'), ('Yeadon', 0, '39.93270', '-75.25190')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAC047': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Benezette', 103, '41.31000', '-78.35000'), ('Brandy Camp', 4591, '41.34000', '-78.70000'), ('Brockport', 2182, '41.27000', '-78.73000'), ('East Branch Dam', 14502, '41.53000', '-78.58000'), ('Force', 2170, '41.26000', '-78.49000'), ('James City', 4126, '41.62000', '-78.83000'), ('Johnsonburg', 3003, '41.49190', '-78.67890'), ('Medix Run', 2170, '41.29000', '-78.39000'), ('Portland Mills', 4591, '41.38000', '-78.84000'), ('Ridgway', 4591, '41.42560', '-78.72880'), ('St. Marys', 14502, '41.42860', '-78.55770'), ('Wilcox', 3003, '41.58000', '-78.68000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC049': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Albion', 1607, '41.88960', '-80.36380'), ('Avonia', 1331, '42.04410', '-80.27350'), ('Corry', 6834, '41.92590', '-79.63730'), ('Cranesville', 600, '41.90380', '-80.34470'), ('Edinboro', 6950, '41.87470', '-80.12470'), ('Elgin', 236, '41.91080', '-79.74340'), ('Erie', 103717, '42.12580', '-80.08660'), ('Fairview', 2042, '42.02930', '-80.25540'), ('Girard', 3164, '42.00400', '-80.31940'), ('Lake City', 2811, '42.01730', '-80.34690'), ('Lawrence Park', 4048, '42.15190', '-80.02170'), ('McKean', 418, '41.99910', '-80.13830'), ('Mill Village', 412, '41.87770', '-79.97260'), ('North East', 4601, '42.21330', '-79.83390'), ('Northwest Harborcr', 6662, '42.14620', '-79.99410'), ('Platea', 474, '41.95140', '-80.33030'), ('Union City', 3463, '41.89610', '-79.84470'), ('Waterford', 1449, '41.94530', '-79.98540'), ('Wattsburg', 378, '42.00280', '-79.80710'), ('Wesleyville', 3617, '42.13700', '-80.01260')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'PAC051': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Belle Vernon', 1211, '40.12460', '-79.86580'), ('Brownsville', 2804, '40.01900', '-79.89140'), ('Champion', 0, '40.08000', '-79.37000'), ('Connellsville', 9146, '40.01630', '-79.58910'), ('Dawson', 451, '40.04780', '-79.65890'), ('Dunbar', 1219, '39.97960', '-79.61410'), ('East Uniontown', 2760, '39.89970', '-79.69810'), ('Everson', 842, '40.09050', '-79.58730'), ('Fairchance', 2174, '39.82590', '-79.75460'), ('Fayette City', 714, '40.10020', '-79.83910'), ('Grindstone-Rowes Run', 1041, '40.01520', '-79.81520'), ('Hiller', 1234, '40.00720', '-79.90390'), ('Hopwood', 2006, '39.87750', '-79.70180'), ('Isabella', 0, '39.95000', '-79.93000'), ('Juniata', 0, '39.98000', '-79.72000'), ('Leith-Hatfield', 2437, '39.87980', '-79.73470'), ('Markleysburg', 282, '39.73710', '-79.45290'), ('Masontown', 3611, '39.84830', '-79.90860'), ('Newell', 551, '40.07350', '-79.88860'), ('New Salem-Buffington', 1169, '39.93190', '-79.82060'), ('Ohiopyle', 77, '39.86750', '-79.49420'), ('Oliver', 2925, '39.91520', '-79.72210'), ('Perryopolis', 1764, '40.08650', '-79.75320'), ('Point Marion', 1333, '39.73450', '-79.90070'), ('Republic', 1396, '39.96480', '-79.87660'), ('Smithfield', 854, '39.80200', '-79.80950'), ('South Connellsvill', 2281, '39.99260', '-79.58250'), ('Uniontown', 12422, '39.89920', '-79.72470'), ('Vanderbilt', 553, '40.03310', '-79.66300')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAC053': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Lynch', 0, '41.60000', '-79.05000'), ('Marienville', 0, '41.45000', '-79.08000'), ('Tionesta', 615, '41.49600', '-79.44680')], 'partOfState': 'northwest', 'wfo': 'PBZ'}, +'PAC055': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Amberson Valley', 231, '40.14000', '-77.69000'), ('Chambersburg', 17862, '39.93220', '-77.65640'), ('Claylick', 1540, '39.77000', '-77.91000'), ('Doylesburg', 372, '40.22000', '-77.70000'), ('Fannettsburg', 97, '40.05000', '-77.83000'), ('Fayetteville', 2774, '39.91240', '-77.56570'), ('Fort Loudon', 1540, '39.94000', '-77.87000'), ('Greencastle', 3722, '39.79050', '-77.72690'), ('Marion', 17862, '39.86000', '-77.67000'), ('Mercersburg', 1540, '39.83140', '-77.90180'), ('Mont Alto', 1357, '39.83960', '-77.55470'), ('Orrstown', 231, '40.05830', '-77.60950'), ('Rouzerville', 862, '39.73400', '-77.52480'), ('Roxbury', 231, '40.09000', '-77.67000'), ('Scotland', 1618, '39.96000', '-77.59000'), ('St. Thomas', 17862, '39.94000', '-77.74000'), ('Upper Strasburg', 17862, '40.02000', '-77.70000'), ('Waynesboro', 9614, '39.75200', '-77.58240'), ('Willow Hill', 97, '40.11000', '-77.77000')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC057': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Big Cove Tannery', 1073, '39.84000', '-78.05000'), ('Cove Mills', 1926, '39.78000', '-78.18000'), ('Crystal Springs', 20, '39.92000', '-78.24000'), ('Fort Littleton', 97, '40.06000', '-77.93000'), ('Harrissonville', 1073, '39.97000', '-78.06000'), ('Locust Grove', 1926, '39.83000', '-78.25000'), ('McConnellsburg', 1073, '39.93150', '-77.99530'), ('Needmore', 1926, '39.86000', '-78.15000'), ('Saluvia', 20, '40.00000', '-78.10000'), ('Sideling Hill Rest Area', 1073, '40.03000', '-78.06000'), ('Valley-Hi', 20, '40.02700', '-78.19080'), ('Waterfall', 343, '40.12000', '-78.06000'), ('Wells Tannery', 20, '40.09000', '-78.18000')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC059': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aleppo', 0, '39.82000', '-80.45000'), ('Carmichaels', 556, '39.89770', '-79.97520'), ('Clarksville', 234, '39.97440', '-80.04430'), ('Fairdale', 1955, '39.88840', '-79.96910'), ('Greensboro', 295, '39.79210', '-79.91300'), ('Nemacolin', 1034, '39.87760', '-79.92420'), ('Rices Landing', 443, '39.94610', '-79.99480'), ('Spraggs', 0, '39.78000', '-80.22000'), ('Waynesburg', 4184, '39.89860', '-80.18580')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAC061': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alexandria', 401, '40.55890', '-78.10010'), ('Broad Top City', 384, '40.20150', '-78.14070'), ('Cassville', 152, '40.29370', '-78.02780'), ('Coalmont', 128, '40.21100', '-78.20070'), ('Entriken', 216, '40.34000', '-78.18000'), ('Franklinville', 455, '40.64000', '-78.06000'), ('Huntingdon', 6918, '40.49650', '-78.01030'), ('Mapleton', 473, '40.39290', '-77.93950'), ('Marklesburg', 216, '40.38400', '-78.16930'), ('McAlevys Fort', 1386, '40.64000', '-77.82000'), ('Mill Creek', 351, '40.43740', '-77.92940'), ('Mount Union', 2504, '40.38490', '-77.88200'), ('Orbisonia', 425, '40.24330', '-77.89360'), ('Petersburg', 455, '40.57360', '-78.04960'), ('Raystown Dam', 6918, '40.45000', '-78.01000'), ('Saltillo', 343, '40.21180', '-78.00780'), ('Shade Gap', 97, '40.18000', '-77.86570'), ('Shirleysburg', 140, '40.29690', '-77.87740'), ('Shy Beaver', 128, '40.29000', '-78.21000'), ('Spruce Creek', 91, '40.62000', '-78.14000'), ('Three Springs', 445, '40.19520', '-77.98390'), ('Trough Creek State Park', 216, '40.34000', '-78.12000'), ('Warriors Mark', 91, '40.70000', '-78.11000'), ('Whipple Dam State Park', 1141, '40.69000', '-77.84000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC063': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Armagh', 131, '40.45320', '-79.03310'), ('Black Lick', 1438, '40.46500', '-79.18800'), ('Blairsville', 3607, '40.43150', '-79.26010'), ('Brush Vly', 0, '40.53000', '-79.07000'), ('Chevy Chase Height', 1511, '40.63900', '-79.14370'), ('Clymer', 1547, '40.66830', '-79.01400'), ('Creekside', 323, '40.68000', '-79.19350'), ('Ernest', 501, '40.67850', '-79.16500'), ('Glen Campbell', 306, '40.81830', '-78.83050'), ('Homer City', 1844, '40.53960', '-79.15950'), ('Indiana', 14895, '40.62190', '-79.15580'), ('Jacksonville', 675, '40.54150', '-79.28340'), ('Lucerne Mines', 951, '40.55440', '-79.15580'), ('Marion Center', 451, '40.77020', '-79.04800'), ('Plumville', 342, '40.79380', '-79.18050'), ('Saltsburg', 955, '40.48520', '-79.44650'), ('Shelocta', 127, '40.65650', '-79.30240'), ('Smicksburg', 49, '40.87000', '-79.17180'), ('West Lebanon', 0, '40.60000', '-79.35000')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAC065': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Big Run', 686, '40.96990', '-78.87810'), ('Brockway', 2182, '41.24710', '-78.79330'), ('Brookville', 4230, '41.16160', '-79.08280'), ('Corsica', 354, '41.18170', '-79.20290'), ('Falls Creek', 983, '41.14210', '-78.80720'), ('Punxsutawney', 6271, '40.94410', '-78.97760'), ('Reynoldsville', 2710, '41.09430', '-78.88800'), ('Sigel', 0, '41.28000', '-79.12000'), ('Summerville', 525, '41.11640', '-79.18860'), ('Sykesville', 1246, '41.04930', '-78.81890'), ('Timblin', 151, '40.96610', '-79.19930'), ('Worthville', 85, '41.02440', '-79.14110')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAC067': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blacklog', 405, '40.42000', '-77.68000'), ('Honey Grove', 252, '40.42000', '-77.55000'), ('McAlisterville', 765, '40.63000', '-77.28000'), ('Mifflin', 627, '40.56780', '-77.40480'), ('Mifflintown', 861, '40.57110', '-77.39510'), ('Perulack', 252, '40.34000', '-77.66000'), ('Port Royal', 977, '40.53390', '-77.39090'), ('Spruce Hill', 977, '40.47000', '-77.46000'), ('Thompsontown', 765, '40.56620', '-77.23530'), ('Walnut', 627, '40.53000', '-77.48000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC069': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Archbald', 6220, '41.50720', '-75.54220'), ('Blakely', 7027, '41.48780', '-75.59780'), ('Carbondale', 9804, '41.57110', '-75.50550'), ('Clarks Green', 1630, '41.49970', '-75.69560'), ('Clarks Summit', 5126, '41.49020', '-75.70750'), ('Cortez', 2140, '41.46670', '-75.46670'), ('Craig', 1630, '41.55000', '-75.68330'), ('Daleville', 1883, '41.30000', '-75.51670'), ('Dalton', 1294, '41.53790', '-75.73860'), ('Dickson City', 6205, '41.46880', '-75.63480'), ('Drinker', 2140, '41.39514', '-75.47100'), ('Dunmore', 14018, '41.41560', '-75.60710'), ('East Benton', 1294, '41.58330', '-75.66670'), ('Elmhurst', 1883, '41.38330', '-75.55000'), ('Fells Corners', 1883, '41.30000', '-75.53330'), ('Fleetville', 1294, '41.60000', '-75.71670'), ('Glenburn', 1212, '41.50920', '-75.73520'), ('Gouldsboro', 1883, '41.25000', '-75.46670'), ('Jermyn', 2287, '41.52670', '-75.54660'), ('Jessup', 4718, '41.45820', '-75.54770'), ('La Plume', 1144, '41.55000', '-75.76670'), ('Lehigh', 1883, '41.26670', '-75.46670'), ('Marshbrook', 713, '41.63330', '-75.68330'), ('Mayfield', 1756, '41.53700', '-75.53370'), ('Moosic', 5575, '41.35700', '-75.70230'), ('Moscow', 1883, '41.34030', '-75.52910'), ('Mount Cobb', 2140, '41.42860', '-75.49720'), ('Oakhill', 5575, '41.36670', '-75.71670'), ('Old Forge', 8798, '41.36890', '-75.74230'), ('Olyphant', 4978, '41.44920', '-75.58020'), ('Peckville', 7027, '41.48330', '-75.61670'), ('Quicktown', 1883, '41.36670', '-75.46670'), ('Richmondale', 738, '41.63330', '-75.50000'), ('Scranton', 76415, '41.40400', '-75.66610'), ('Simpson', 9804, '41.58330', '-75.48330'), ('Springbrook Corner', 1883, '41.30000', '-75.60000'), ('Taylor', 6475, '41.39870', '-75.71370'), ('Throop', 4010, '41.43850', '-75.59600'), ('Tompkinsville', 2287, '41.58330', '-75.61670'), ('Vandling', 738, '41.63110', '-75.47060'), ('Wallsville', 1294, '41.58330', '-75.73330'), ('Waverly', 1212, '41.51670', '-75.71670'), ('West Scranton', 76415, '41.41670', '-75.68330'), ('Wimmers', 2140, '41.40420', '-75.48100'), ('Winton', 6220, '41.48330', '-75.55000'), ('Yostville', 1883, '41.30000', '-75.56670')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAC071': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Adamstown', 1203, '40.24090', '-76.06260'), ('Akron', 4046, '40.15760', '-76.20370'), ('Bainbridge', 1365, '40.09000', '-76.67000'), ('Brickerville', 1287, '40.22680', '-76.28650'), ('Christiana', 1124, '39.95410', '-75.99770'), ('Churchtown', 1287, '40.14000', '-75.95000'), ('Columbia', 10311, '40.03340', '-76.49500'), ('Denver', 3332, '40.23250', '-76.13870'), ('East Petersburg', 4450, '40.10070', '-76.35350'), ('Elizabethtown', 11887, '40.15360', '-76.59860'), ('Ephrata', 13213, '40.18060', '-76.18280'), ('Gap', 0, '39.98890', '-76.02420'), ('Holtwood', 2134, '39.82000', '-76.33000'), ('Lancaster', 56348, '40.04180', '-76.30120'), ('Landisville', 4239, '40.09150', '-76.41860'), ('Leacock-Leola-bareville', 0, '40.09140', '-76.18910'), ('Leola', 5685, '40.09140', '-76.18910'), ('Lititz', 9029, '40.15370', '-76.30530'), ('Manheim', 4784, '40.16330', '-76.39650'), ('Marietta', 2689, '40.05700', '-76.55290'), ('Maytown', 2604, '40.07700', '-76.58040'), ('Millersville', 7774, '40.00360', '-76.35390'), ('Mount Joy', 6765, '40.11050', '-76.50790'), ('Mountville', 2444, '40.04060', '-76.43440'), ('New Holland', 5092, '40.10100', '-76.09040'), ('Paradise', 1028, '40.00680', '-76.12230'), ('Quarryville', 1994, '39.89570', '-76.16120'), ('Reamstown', 3498, '40.21200', '-76.11790'), ('Rheems', 1557, '40.12900', '-76.57070'), ('Rothsville', 3017, '40.15270', '-76.24570'), ('Safe Harbor', 7774, '39.92500', '-76.40000'), ('Salunga-Landisville', 0, '40.09150', '-76.41860'), ('Smithville', 7258, '39.93000', '-76.25000'), ('Strasburg', 2800, '39.98360', '-76.18560'), ('Terre Hill', 1237, '40.15750', '-76.05070'), ('Wakefield', 1263, '39.76000', '-76.17000'), ('Willow Street', 7258, '39.98470', '-76.27040')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC073': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bessemer', 1172, '40.97680', '-80.48750'), ('Ellport', 1148, '40.86140', '-80.26230'), ('Ellwood City', 8688, '40.86090', '-80.28350'), ('Enon Valley', 387, '40.85580', '-80.45740'), ('New Beaver', 1677, '40.88240', '-80.36460'), ('New Castle', 26309, '40.99570', '-80.34630'), ('New Castle Northwest', 1515, '41.02190', '-80.35620'), ('New Wilmington', 2452, '41.11760', '-80.33220'), ('Oakland', 1516, '40.99220', '-80.36600'), ('Oakwood', 2249, '41.01060', '-80.37960'), ('S.n.p.j.', 12, '40.92890', '-80.49900'), ('South New Castle', 808, '40.97420', '-80.34600'), ('Volant', 113, '41.11360', '-80.25910'), ('Wampum', 678, '40.88650', '-80.33880')], 'partOfState': 'western', 'wfo': 'PBZ'}, +'PAC075': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Annville', 4518, '40.33250', '-76.50660'), ('Avon Heights', 0, '40.34580', '-76.38710'), ('Campbelltown', 2415, '40.27640', '-76.58450'), ('Cleona', 2148, '40.33880', '-76.47730'), ('Cornwall', 3486, '40.26950', '-76.40810'), ('Fort Indiantown Gap', 85, '40.44400', '-76.57000'), ('Fredericksburg', 987, '40.45630', '-76.42560'), ('Harper Tavern', 34, '40.41000', '-76.57000'), ('Jonestown', 34, '40.41320', '-76.48070'), ('Kleinfeltersville', 1508, '40.31000', '-76.27000'), ('Lawn', 1609, '40.22000', '-76.55000'), ('Lebanon', 24461, '40.34130', '-76.42330'), ('Lickdale', 34, '40.46000', '-76.49000'), ('Mount Gretna', 242, '40.24540', '-76.47160'), ('Myerstown', 3171, '40.37170', '-76.30540'), ('Newmanstown', 1536, '40.35080', '-76.21290'), ('Palmyra', 7096, '40.30950', '-76.59500'), ('Pleasant Hill', 0, '40.33670', '-76.44720'), ('Richland', 1508, '40.35700', '-76.25750'), ('Sand Hill', 2345, '40.36090', '-76.42150')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC077': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alburtis', 0, '40.50950', '-75.60070'), ('Allentown', 0, '40.59000', '-75.48000'), ('Ancient Oaks', 0, '40.53250', '-75.58570'), ('Catasauqua', 0, '40.65210', '-75.46470'), ('Claussville', 0, '40.61420', '-75.65420'), ('Coffeetown', 0, '40.64870', '-75.57760'), ('Coopersburg', 0, '40.51040', '-75.39140'), ('Coplay', 0, '40.67110', '-75.49650'), ('Emerald', 0, '40.74500', '-75.63500'), ('Emmaus', 0, '40.53610', '-75.49800'), ('Fountain Hill', 0, '40.60260', '-75.39670'), ('Fullerton', 0, '40.63200', '-75.48590'), ('Hokendauqua', 0, '40.65870', '-75.49580'), ('Jordan Valley', 0, '40.71280', '-75.71350'), ('Macungie', 0, '40.51580', '-75.55430'), ('Neffs', 0, '40.69440', '-75.61000'), ('New Tripoli', 0, '40.68080', '-75.75220'), ('Schnecksville', 0, '40.67820', '-75.61960'), ('Slatington', 0, '40.74840', '-75.62050'), ('Wanamakers', 0, '40.66080', '-75.84610'), ('Zionsville', 0, '40.47970', '-75.50560')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'PAC079': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Albert', 671, '41.11670', '-75.95000'), ('Alden', 10955, '41.18330', '-76.01670'), ('Ashley', 2866, '41.21370', '-75.89900'), ('Ashmore', 144, '40.96670', '-75.90000'), ('Avoca', 2851, '41.33770', '-75.74310'), ('Beach Haven', 1528, '41.06670', '-76.18330'), ('Bear Creek', 269, '41.18330', '-75.76670'), ('Briggsville', 1528, '41.03330', '-76.13330'), ('Carverton', 2833, '41.35000', '-75.85000'), ('Conyngham', 1958, '40.99150', '-76.06020'), ('Courtdale', 791, '41.28550', '-75.91520'), ('Dallas', 2557, '41.33180', '-75.97230'), ('Deringer', 1958, '40.95000', '-76.15000'), ('Dorrance', 671, '41.10000', '-76.00000'), ('Drifton', 144, '41.00000', '-75.91670'), ('Drums', 3542, '41.01670', '-76.00000'), ('Dupont', 2719, '41.32400', '-75.74240'), ('Duryea', 4634, '41.35180', '-75.77630'), ('East Berwick', 1998, '41.06470', '-76.22070'), ('Edwardsville', 4984, '41.26040', '-75.90700'), ('Exeter', 5955, '41.33020', '-75.82250'), ('Fern Brook', 2557, '41.33330', '-75.96670'), ('Fern Glen', 1528, '40.95000', '-76.16670'), ('Forest Park', 0, '41.19220', '-75.78490'), ('Forty Fort', 4579, '41.28900', '-75.87050'), ('Freeland', 3643, '41.02070', '-75.89630'), ('Glendale', 2851, '41.33330', '-75.71670'), ('Glen Lyon', 1881, '41.18400', '-76.07140'), ('Glen Summit', 2866, '41.15000', '-75.86670'), ('Harding', 5955, '41.36670', '-75.81670'), ('Harveys Lake', 2888, '41.36210', '-76.03220'), ('Hazleton', 23329, '40.95010', '-75.97230'), ('Hudson', 43123, '41.27482', '-75.83600'), ('Hughestown', 1541, '41.33010', '-75.77190'), ('Huntington Mills', 215, '41.18330', '-76.23330'), ('Inkerman', 1502, '41.30000', '-75.81670'), ('Jeanesville', 23329, '40.93330', '-75.96670'), ('Jeddo', 144, '40.99240', '-75.89760'), ('Kingston', 13855, '41.26410', '-75.88740'), ('Koonsville', 959, '41.16670', '-76.16670'), ('Laflin', 1502, '41.28950', '-75.79620'), ('Larksville', 4694, '41.25940', '-75.93230'), ('Laurel Run', 723, '41.21930', '-75.84760'), ('Lee', 1881, '41.16670', '-76.10000'), ('Lehman', 2888, '41.31670', '-76.03330'), ('Luzerne', 2952, '41.28600', '-75.89720'), ('Lynwood', 6507, '41.23330', '-75.96670'), ('Miners Mills', 43123, '41.26703', '-75.83200'), ('Mountain Mills', 0, '41.16960', '-75.87730'), ('Mountain Top', 15269, '41.16960', '-75.87700'), ('Muhlenberg', 959, '41.23330', '-76.15000'), ('Nanticoke', 10955, '41.20030', '-76.00000'), ('Nescopeck', 1528, '41.05270', '-76.21250'), ('New Columbus', 215, '41.16890', '-76.28660'), ('Nuangola', 671, '41.15830', '-75.97800'), ('Orange', 2557, '41.40000', '-75.91670'), ('Parsons', 43123, '41.26670', '-75.85000'), ('Penn Lake Park', 269, '41.11490', '-75.77460'), ('Penobscot', 2866, '41.16670', '-75.88330'), ('Pikes Creek', 2888, '41.30000', '-76.10000'), ('Pittston', 8104, '41.32610', '-75.78790'), ('Plains', 43123, '41.27350', '-75.85390'), ('Plymouth', 6507, '41.24110', '-75.95020'), ('Pond Hill', 959, '41.13330', '-76.11670'), ('Preston', 1023, '41.20000', '-75.91670'), ('Pringle', 991, '41.27660', '-75.90310'), ('Ransom', 5955, '41.40000', '-75.83330'), ('Rock Glen', 1528, '40.96670', '-76.18330'), ('Shavertown', 2557, '41.31670', '-75.95000'), ('Shickshinny', 959, '41.15320', '-76.15160'), ('Slocum', 1881, '41.13330', '-76.05000'), ('Stockton', 144, '40.96670', '-75.91670'), ('Stoddartsville', 269, '41.13330', '-75.63330'), ('Sugar Notch', 1023, '41.19220', '-75.93220'), ('Sweet Valley', 1881, '41.28330', '-76.15000'), ('Swoyersville', 5157, '41.29850', '-75.87900'), ('Warrior Run', 624, '41.18740', '-75.95290'), ('West Hazleton', 3542, '40.97070', '-76.01320'), ('Westminister', 1502, '41.28330', '-75.78330'), ('Weston', 1958, '40.93330', '-76.13330'), ('West Pittston', 5072, '41.32940', '-75.80000'), ('West Wyoming', 2833, '41.31940', '-75.85240'), ('White Haven', 0, '41.05530', '-75.77720'), ('Wilkes-Barre', 43123, '41.24640', '-75.87580'), ('Wilkes-Barre Township', 3572, '41.23750', '-75.86310'), ('Woodside-Drifton', 1360, '41.01190', '-75.89810'), ('Wyoming', 3221, '41.30580', '-75.84180'), ('Yatesville', 649, '41.30290', '-75.78200')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAC081': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Barbours', 693, '41.40000', '-76.78000'), ('Biggertown', 955, '41.26000', '-76.50000'), ('Buttonwood', 1480, '41.49000', '-77.16000'), ('Cammal', 260, '41.39000', '-77.39000'), ('Cedar Run', 3328, '41.52000', '-77.45000'), ('Cogan Station', 2679, '41.31000', '-77.03000'), ('Collomsville', 4482, '41.15000', '-77.15000'), ('Duboistown', 1280, '41.22310', '-77.03830'), ('Elimsport', 1280, '41.13000', '-77.01000'), ('English Center', 260, '41.44000', '-77.25000'), ('Garden View', 2679, '41.25650', '-77.04870'), ('Hughesville', 2220, '41.23850', '-76.72640'), ('Jersey Shore', 4482, '41.20070', '-77.26700'), ('Lairdsville', 693, '41.23000', '-76.61000'), ('Little Pine State Park', 260, '41.36000', '-77.33000'), ('Loyalsockville', 4777, '41.32000', '-76.92000'), ('Montgomery', 1695, '41.17090', '-76.87520'), ('Montoursville', 4777, '41.24710', '-76.92000'), ('Muncy', 2663, '41.20190', '-76.78590'), ('Picture Rocks', 693, '41.28000', '-76.70920'), ('Ralston', 1807, '41.50000', '-76.94000'), ('Salladasburg', 260, '41.27650', '-77.22760'), ('Slate Run', 557, '41.47000', '-77.49000'), ('South Williamsport', 6412, '41.22990', '-77.00130'), ('Trout Run', 2679, '41.39000', '-77.08000'), ('Waterville', 260, '41.32000', '-77.35000'), ('Williamsport', 30706, '41.24000', '-77.02000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC083': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bradford', 9175, '41.96050', '-78.64020'), ('Coryville', 858, '41.88000', '-78.39000'), ('Crosby', 1684, '41.75000', '-78.37000'), ('Cyclone', 577, '41.82000', '-78.58000'), ('Eldred', 858, '41.95670', '-78.38100'), ('Kane', 4126, '41.66300', '-78.80930'), ('Kinzua Bridge State Park', 1070, '41.75000', '-78.57000'), ('Lewis Run', 577, '41.87080', '-78.66070'), ('Ludlow', 1268, '41.73000', '-78.95000'), ('Marshburg', 577, '41.85000', '-78.77000'), ('Mount Jewett', 1070, '41.72470', '-78.64400'), ('Norwich', 2355, '41.67000', '-78.35000'), ('Port Allegany', 2355, '41.81360', '-78.27770'), ('Rew', 1684, '41.90000', '-78.50000'), ('Smethport', 1684, '41.80740', '-78.44430'), ('Westline', 1070, '41.77000', '-78.75000'), ('Wetmore', 4126, '41.69000', '-78.86000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC085': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Clark', 633, '41.28530', '-80.40420'), ('Farrell', 6050, '41.20960', '-80.49740'), ('Fredonia', 652, '41.32220', '-80.25880'), ('Greenville', 6380, '41.40600', '-80.38430'), ('Greenville East', 1419, '41.40270', '-80.35900'), ('Grove City', 8024, '41.15690', '-80.08880'), ('Hermitage', 16157, '41.22980', '-80.44290'), ('Jackson Center', 221, '41.27320', '-80.13880'), ('Jamestown', 636, '41.48490', '-80.43700'), ('Mercer', 2391, '41.22630', '-80.23660'), ('New Lebanon', 205, '41.41670', '-80.07590'), ('Sandy Lake', 743, '41.34760', '-80.08460'), ('Sharon', 16328, '41.23420', '-80.49980'), ('Sharpsville', 4500, '41.25890', '-80.48200'), ('Sheakleyville', 164, '41.44470', '-80.20710'), ('Stoneboro', 1104, '41.33660', '-80.10970'), ('West Middlesex', 929, '41.17410', '-80.45610'), ('Wheatland', 748, '41.19690', '-80.49600')], 'partOfState': 'northwest', 'wfo': 'PBZ'}, +'PAC087': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alfarata', 2144, '40.66000', '-77.48000'), ('Allensville', 405, '40.53000', '-77.81000'), ('Belleville', 1386, '40.60280', '-77.72570'), ('Belltown', 975, '40.70000', '-77.40000'), ('Burnham', 2144, '40.63660', '-77.56320'), ('Lewistown', 8998, '40.59730', '-77.57350'), ('McVeytown', 405, '40.49810', '-77.74130'), ('Milroy', 1386, '40.71480', '-77.58690'), ('Newton Hamilton', 272, '40.39280', '-77.83540'), ('Reeds Gap State Park', 1386, '40.73000', '-77.47000'), ('Reedsville', 858, '40.65930', '-77.60200'), ('Seven Mountains', 1386, '40.74000', '-77.62000'), ('Strodes Mills', 1386, '40.55000', '-77.66000'), ('Yeagertown', 1035, '40.64090', '-77.58040')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC089': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alpine Mountain', 0, '41.11080', '-75.23000'), ('Analomink', 0, '41.05110', '-75.22080'), ('Arlington Heights', 0, '41.00440', '-75.21310'), ('Arrowhead Lake', 0, '41.15460', '-75.57110'), ('Bartonsville', 0, '41.00530', '-75.28040'), ('Blakeslee', 0, '41.09250', '-75.59300'), ('Brodheadsville', 0, '40.92410', '-75.40330'), ('Canadensis', 0, '41.19190', '-75.25170'), ('Cresco', 0, '41.15450', '-75.28150'), ('Delaware Water Gap', 0, '40.97860', '-75.13760'), ('East Stroudsburg', 0, '41.00150', '-75.17840'), ('Echo Lake', 0, '41.06500', '-75.05690'), ('Effort', 0, '40.93960', '-75.43540'), ('Fiddletown', 0, '40.86700', '-75.44310'), ('Gilbert', 0, '40.91580', '-75.43970'), ('Goulsboro State Park', 0, '41.21060', '-75.45580'), ('Hernyville', 0, '41.09360', '-75.24170'), ('Hidden Lake', 0, '41.05240', '-75.04780'), ('Jonas', 0, '40.96750', '-75.51220'), ('Kresgeville', 0, '40.90110', '-75.49710'), ('Kunkletown', 0, '40.84760', '-75.44660'), ('Lake In The Clouds', 0, '41.24410', '-75.27240'), ('Long Pond', 0, '41.05330', '-75.46330'), ('Marshalls Creek', 0, '41.04320', '-75.12760'), ('McMichael', 0, '40.99530', '-75.39910'), ('Merwinsburg', 0, '40.96540', '-75.46690'), ('Mountainhome', 0, '41.17660', '-75.26320'), ('Mount Pocono', 0, '41.12000', '-75.36000'), ('Paradise Valley', 0, '41.12190', '-75.28110'), ('Pocono Pines', 0, '41.11680', '-75.45790'), ('Pocono Raceway', 0, '41.05000', '-75.49000'), ('Reeders', 0, '41.01890', '-75.33640'), ('Rossland', 0, '40.87110', '-75.39720'), ('Saylorsburg', 0, '40.89560', '-75.32390'), ('Scotrun', 0, '41.06580', '-75.32030'), ('Shawnee', 0, '41.01210', '-75.11060'), ('Skytop', 0, '41.22610', '-75.23860'), ('Stormville', 0, '40.95170', '-75.24390'), ('Stroudsburg', 0, '40.98360', '-75.19760'), ('Sun Valley', 0, '40.98710', '-75.46440'), ('Tannersville', 0, '41.03890', '-75.31280'), ('Tobyhanna', 0, '41.17690', '-75.41830'), ('Werry Lake', 0, '41.07430', '-75.04510')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'PAC091': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Abington', 0, '40.12060', '-75.11800'), ('Ambler', 0, '40.15500', '-75.22010'), ('Ardmore', 0, '40.00290', '-75.29480'), ('Audubon', 0, '40.12980', '-75.42840'), ('Blue Bell', 0, '40.14570', '-75.26770'), ('Bridgeport', 0, '40.10390', '-75.34340'), ('Bryn Athyn', 0, '40.13950', '-75.06710'), ('Bryn Mawr', 0, '40.02180', '-75.31590'), ('Collegeville', 0, '40.18550', '-75.45820'), ('Conshohocken', 0, '40.07710', '-75.30200'), ('Eagleville', 0, '40.15790', '-75.40780'), ('East Greenville', 0, '40.40600', '-75.50650'), ('Evansburg', 0, '40.19020', '-75.43600'), ('Flourtown', 0, '40.10280', '-75.20860'), ('Fort Washington', 0, '40.13840', '-75.19180'), ('Gilbertsville', 0, '40.32280', '-75.60900'), ('Glenside', 0, '40.10280', '-75.15260'), ('Green Lane', 0, '40.33720', '-75.46930'), ('Halfway House', 0, '40.28190', '-75.64360'), ('Harleysville', 0, '40.27840', '-75.38800'), ('Hatboro', 0, '40.17760', '-75.10440'), ('Hatfield', 0, '40.27800', '-75.29870'), ('Horsham', 0, '40.18250', '-75.13920'), ('Jenkintown', 0, '40.09600', '-75.12940'), ('King Of Prussia', 0, '40.09550', '-75.38340'), ('Kulpsville', 0, '40.24370', '-75.34090'), ('Lansdale', 0, '40.24190', '-75.28400'), ('Maple Glen', 0, '40.17520', '-75.18050'), ('Montgomeryville', 0, '40.24810', '-75.24170'), ('Narberth', 0, '40.00740', '-75.26210'), ('Norristown', 0, '40.11980', '-75.34170'), ('North Wales', 0, '40.21060', '-75.27540'), ('Oreland', 0, '40.11440', '-75.18030'), ('Pennsburg', 0, '40.39360', '-75.49590'), ('Penn Wynne', 0, '39.98620', '-75.27270'), ('Plymouth Meeting', 0, '40.10870', '-75.28080'), ('Pottsgrove', 0, '40.26460', '-75.61220'), ('Pottstown', 0, '40.24970', '-75.64030'), ('Red Hill', 0, '40.37620', '-75.48430'), ('Rockledge', 0, '40.08220', '-75.09000'), ('Royersford', 0, '40.18520', '-75.53760'), ('Sanatoga', 0, '40.24950', '-75.58920'), ('Schwenksville', 0, '40.25640', '-75.46500'), ('Skippack', 0, '40.22100', '-75.40160'), ('Souderton', 0, '40.31020', '-75.32160'), ('Spring House', 0, '40.18360', '-75.22640'), ('Stowe', 0, '40.25660', '-75.68160'), ('Trappe', 0, '40.19710', '-75.47520'), ('Trooper', 0, '40.14960', '-75.39940'), ('West Conshohocken', 0, '40.06990', '-75.31900'), ('Willow Grove', 0, '40.14900', '-75.11850'), ('Wyncote', 0, '40.09220', '-75.14790'), ('Wyndmoor', 0, '40.08320', '-75.19300')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAC093': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Danville', 4897, '40.96150', '-76.61230'), ('Exchange', 201, '41.11000', '-76.69000'), ('Mechanicsville', 3099, '40.96640', '-76.58550'), ('Mooresburg', 1861, '40.98000', '-76.72000'), ('Washingtonville', 201, '41.05190', '-76.67510')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC095': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bangor', 0, '40.86670', '-75.21070'), ('Bath', 0, '40.72650', '-75.39030'), ('Beersville', 0, '40.74640', '-75.47110'), ('Belfast', 0, '40.78250', '-75.27310'), ('Berlinsville', 0, '40.76860', '-75.57420'), ('Bethlehem', 0, '40.62610', '-75.37550'), ('Chapman', 0, '40.75920', '-75.40150'), ('Danielsville', 0, '40.79440', '-75.52750'), ('East Bangor', 0, '40.88060', '-75.18660'), ('Eastlawn Gardens', 0, '40.75070', '-75.29610'), ('Easton', 0, '40.68820', '-75.21640'), ('Forks', 0, '40.70000', '-75.23000'), ('Freemansburg', 0, '40.62720', '-75.34020'), ('Glendon', 0, '40.66210', '-75.23570'), ('Hellertown', 0, '40.58410', '-75.33810'), ('Nazareth', 0, '40.74000', '-75.31110'), ('Northampton', 0, '40.68380', '-75.49130'), ('North Catasauqua', 0, '40.66430', '-75.47430'), ('Old Orchard', 0, '40.65780', '-75.26260'), ('Palmer Heights', 0, '40.68960', '-75.26850'), ('Pen Argyl', 0, '40.86880', '-75.25540'), ('Portland', 0, '40.92060', '-75.11000'), ('Roseto', 0, '40.87820', '-75.22080'), ('Steuben', 0, '40.68690', '-75.36690'), ('Stockertown', 0, '40.75530', '-75.26380'), ('Tatamy', 0, '40.74070', '-75.25330'), ('Walnutport', 0, '40.75150', '-75.59550'), ('Wilson', 0, '40.68390', '-75.24220'), ('Wind Gap', 0, '40.84640', '-75.29160')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'PAC097': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Delaware Run', 1695, '41.14000', '-76.85000'), ('Elysburg', 2067, '40.86820', '-76.54930'), ('Farnsworth', 357, '40.83000', '-76.66000'), ('Ferndale', 2411, '40.78000', '-76.57560'), ('Herndon', 383, '40.71060', '-76.85460'), ('Knoebels Grove', 2067, '40.88000', '-76.51000'), ('Kulpmont', 2985, '40.79540', '-76.47220'), ('Leck Kill', 2411, '40.72000', '-76.60000'), ('Marion Heights', 0, '40.80320', '-76.46520'), ('McEwensville', 314, '41.07210', '-76.81900'), ('Milton', 6650, '41.00800', '-76.85060'), ('Montandon', 5620, '40.96000', '-76.86000'), ('Mount Carmel', 6390, '40.79530', '-76.41230'), ('Northumberland', 3714, '40.89710', '-76.79370'), ('Rebuck', 304, '40.72000', '-76.75000'), ('Resler', 641, '40.78000', '-76.80000'), ('Riverside', 1861, '40.94260', '-76.64570'), ('Shamokin', 8009, '40.78810', '-76.55490'), ('Snydertown', 357, '40.87240', '-76.67450'), ('Stonington', 357, '40.84000', '-76.66000'), ('Sunbury', 10610, '40.86210', '-76.78810'), ('Trevorton', 2010, '40.78290', '-76.67350'), ('Turbotville', 691, '41.10100', '-76.76940'), ('Urban', 676, '40.67000', '-76.74000'), ('Watsontown', 2255, '41.08470', '-76.86460')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC099': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Amity Hall', 123, '40.45000', '-77.00000'), ('Big Spring State Park', 252, '40.27000', '-77.65000'), ('Blain', 252, '40.33720', '-77.51220'), ('Duncannon', 1508, '40.40000', '-77.03000'), ('Ickesburg', 765, '40.49000', '-77.29000'), ('Kistler', 195, '40.42000', '-77.39000'), ('Landisburg', 195, '40.34320', '-77.30590'), ('Liverpool', 876, '40.57240', '-76.99280'), ('Loysville', 195, '40.38000', '-77.33000'), ('Marysville', 2306, '40.33760', '-76.93260'), ('Millerstown', 679, '40.55280', '-77.15280'), ('Montgomery Ferry', 123, '40.50000', '-76.98000'), ('New Bloomfield', 1080, '40.41970', '-77.18880'), ('Newport', 1506, '40.47830', '-77.13410'), ('Shermansdale', 1080, '40.35000', '-77.18000')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC101': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Ben Franklin Bridge', 0, '39.95290', '-75.13410'), ('Center City', 0, '39.98000', '-75.14000'), ('Chestnut Hill', 0, '40.07000', '-75.22000'), ('Germantown', 0, '40.04000', '-75.19000'), ('Holmesburg', 0, '40.04140', '-75.02830'), ('Kensington', 0, '39.98580', '-75.13220'), ('Morris Park', 0, '39.97970', '-75.25810'), ('Northeast Philadelphia', 0, '40.09000', '-75.02000'), ('Philadelphia', 0, '40.00680', '-75.13470'), ('Philadelphia International Airport', 0, '39.88000', '-75.26000'), ('Roxborough', 0, '40.00000', '-75.22000'), ('South Philadelphia', 0, '39.91000', '-75.21000'), ('Tacony', 0, '40.03110', '-75.04470'), ('Wissinoming', 0, '40.02220', '-75.06360')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAC103': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blooming Grove', 1303, '41.36670', '-75.16670'), ('Bushkill', 1177, '41.10000', '-75.00000'), ('Dingmans Ferry', 1177, '41.21670', '-74.88330'), ('Greeley', 1303, '41.41670', '-75.00000'), ('Kimbles', 1303, '41.46670', '-75.13330'), ('Lackawaxen', 1303, '41.48330', '-75.00000'), ('Ledgerdale', 1303, '41.36670', '-75.31670'), ('Lords Valley', 1303, '41.36670', '-75.06670'), ('Milford', 1104, '41.32400', '-74.80190'), ('Millrift', 9060, '41.41670', '-74.75000'), ('Panther', 1169, '41.28330', '-75.30000'), ('Paupack', 1303, '41.40000', '-75.20000'), ('Pecks Pond', 1303, '41.30000', '-75.10000'), ('Rowland', 1303, '41.46670', '-75.05000'), ('Shohola', 1104, '41.46670', '-74.91670'), ('Tamiment', 1177, '41.13998', '-75.02100'), ('Twin Lakes', 1104, '41.40000', '-74.91670'), ('Westcolang Park', 1303, '41.51670', '-75.05000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAC105': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Austin', 623, '41.63600', '-78.08900'), ('Cherry Springs State Park', 1325, '41.65000', '-77.84000'), ('Coudersport', 2650, '41.77420', '-78.01430'), ('Cross Fork', 1318, '41.48000', '-77.83000'), ('Denton Hill State Park', 684, '41.76000', '-77.82000'), ('Galeton', 1325, '41.73320', '-77.64400'), ('Genesee', 1028, '41.98000', '-77.90000'), ('Harrison Valley', 684, '41.92000', '-77.67000'), ('Keating Summit', 623, '41.71000', '-78.17000'), ('Lyman Run State Park', 1325, '41.72000', '-77.79000'), ('Ole Bull State Park', 1325, '41.55000', '-77.71000'), ('Oswayo', 159, '41.92010', '-78.02050'), ('Roulette', 2355, '41.77000', '-78.16000'), ('Shinglehouse', 1250, '41.96530', '-78.19150'), ('Ulysses', 684, '41.90410', '-77.75520'), ('Wharton', 623, '41.55000', '-78.00000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC107': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Ashland', 3283, '40.78100', '-76.34570'), ('Auburn', 839, '40.59630', '-76.09620'), ('Coaldale', 2295, '40.82080', '-75.91620'), ('Cressona', 0, '40.63050', '-76.19480'), ('Deer Lake', 528, '40.62060', '-76.05660'), ('Frackville', 4361, '40.78370', '-76.23330'), ('Gilberton', 867, '40.79660', '-76.22330'), ('Girardville', 1742, '40.79230', '-76.28420'), ('Gordon', 781, '40.75040', '-76.34060'), ('Hometown', 1399, '40.82200', '-75.98600'), ('Joe Zerbey Airport', 781, '40.72000', '-76.36000'), ('Lake Wynonah', 0, '40.58710', '-76.18020'), ('Landingville', 175, '40.62550', '-76.12310'), ('Locust Lake State Park', 4647, '40.78000', '-76.12000'), ('Mahanoy City', 4647, '40.81270', '-76.13850'), ('McAdoo', 2274, '40.90080', '-75.99240'), ('Middleport', 458, '40.72730', '-76.08720'), ('Minersville', 4552, '40.69080', '-76.25930'), ('Mount Carbon', 0, '40.67420', '-76.18800'), ('Muir', 1255, '40.59000', '-76.51000'), ('New Philadelphia', 1149, '40.71780', '-76.11800'), ('New Ringgold', 291, '40.68850', '-75.99380'), ('Nuremburg', 231, '40.93300', '-76.17000'), ('Orwigsburg', 3106, '40.65370', '-76.10370'), ('Palo Alto', 0, '40.68280', '-76.17680'), ('Pine Grove', 2154, '40.55330', '-76.38700'), ('Port Carbon', 2019, '40.69710', '-76.16710'), ('Port Clinton', 0, '40.58240', '-76.02670'), ('Pottsville', 15549, '40.67930', '-76.20980'), ('Ringtown', 826, '40.85690', '-76.23540'), ('Rough And Ready', 2411, '40.69000', '-76.58000'), ('Schuylkill Haven', 5548, '40.62810', '-76.17290'), ('Shenandoah', 5624, '40.81660', '-76.20080'), ('Shenandoah Heights', 0, '40.83340', '-76.20800'), ('Sheppton', 239, '40.90000', '-76.11000'), ('Snyders', 2974, '40.73000', '-75.82000'), ('St. Clair', 3254, '40.72040', '-76.19080'), ('Summit Station', 208, '40.58000', '-76.22050'), ('Tamaqua', 7174, '40.80520', '-75.93490'), ('Tower City', 1396, '40.58950', '-76.55380'), ('Tremont', 1784, '40.62970', '-76.39190'), ('Tuscarora', 939, '40.76020', '-76.05790'), ('Valley View', 1396, '40.66000', '-76.53000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC109': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Beaver Springs', 634, '40.74000', '-77.22000'), ('Beavertown', 870, '40.75260', '-77.16970'), ('Freeburg', 584, '40.76280', '-76.94120'), ('Fremont', 1382, '40.72000', '-77.01000'), ('Hummels Wharf', 641, '40.83360', '-76.83960'), ('Kratzerville', 5383, '40.85000', '-76.91000'), ('McClure', 975, '40.70760', '-77.31130'), ('Meiserville', 584, '40.67000', '-76.95000'), ('Middleburg', 1382, '40.78900', '-77.04590'), ('Penns Creek', 668, '40.86000', '-77.07000'), ('Port Treverton', 383, '40.71000', '-76.88000'), ('Richfield', 459, '40.69000', '-77.12000'), ('Selinsgrove', 5383, '40.80110', '-76.86550'), ('Shamokin Dam', 1502, '40.85310', '-76.82250'), ('Snyder-Middleswart', 975, '40.79000', '-77.32000'), ('Troxelville', 192, '40.81000', '-77.20000'), ('Tyrone', 1690, '40.80230', '-77.05900')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC111': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Acosta', 1364, '40.10000', '-79.04000'), ('Addison', 214, '39.74350', '-79.33530'), ('Benson', 194, '40.20260', '-78.92940'), ('Berlin', 2192, '39.92240', '-78.95250'), ('Boswell', 1364, '40.16080', '-79.02710'), ('Callimont', 51, '39.79660', '-78.92050'), ('Casselman', 99, '39.88540', '-79.21100'), ('Central City', 1258, '40.10970', '-78.80530'), ('Confluence', 834, '39.80950', '-79.35430'), ('Davidsville', 1119, '40.23190', '-78.93690'), ('Friedens', 1673, '40.04260', '-79.00530'), ('Garrett', 449, '39.86420', '-79.06170'), ('Hooversville', 779, '40.15040', '-78.91460'), ('Indian Lake', 450, '40.04750', '-78.85950'), ('Jennerstown', 714, '40.16440', '-79.06210'), ('Jerome', 1068, '40.21340', '-78.98390'), ('Meyersdale', 2473, '39.81310', '-79.02680'), ('Mount Davis', 878, '39.79000', '-79.16000'), ('New Baltimore', 168, '39.98580', '-78.77200'), ('Ogletown', 214, '40.19000', '-78.70000'), ('Rockwood', 954, '39.91670', '-79.15710'), ('Salisbury', 878, '39.75420', '-79.08460'), ('Seven Springs', 127, '40.02510', '-79.29150'), ('Shanksville', 245, '40.01740', '-78.90690'), ('Somerset', 6762, '40.00500', '-79.07830'), ('Stoystown', 428, '40.10340', '-78.95530'), ('Tire Hill', 1834, '40.27000', '-78.92000'), ('Wellersburg', 176, '39.72780', '-78.84980'), ('Windber', 4395, '40.23380', '-78.82590')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAC113': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Dushore', 663, '41.52530', '-76.39910'), ('Eagles Mere', 153, '41.40970', '-76.58330'), ('Forksville', 147, '41.49090', '-76.60390'), ('Kettle Creek Gorge', 153, '41.42000', '-76.69000'), ('Laporte', 290, '41.41860', '-76.49170'), ('Lincoln Falls', 147, '41.51000', '-76.68000'), ('Muncy Valley', 153, '41.35000', '-76.60000'), ('Ricketts Glen State Park', 955, '41.35000', '-76.31000'), ('Shunk', 1807, '41.56000', '-76.76000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC115': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alford', 878, '41.80000', '-75.78330'), ('Ararat', 299, '41.83330', '-75.51670'), ('Auburn Center', 459, '41.68330', '-76.03330'), ('Birchardville', 91, '41.85000', '-76.01670'), ('Brackney', 53008, '41.98330', '-75.91670'), ('Burnwood', 368, '41.78330', '-75.51670'), ('Clifford', 9804, '41.65000', '-75.60000'), ('Dimock', 1664, '41.75000', '-75.90000'), ('Elkdale', 368, '41.68330', '-75.56670'), ('Elk Lake', 1664, '41.75000', '-75.95000'), ('Forest City', 1855, '41.65160', '-75.46970'), ('Friendsville', 91, '41.91790', '-76.04730'), ('Gibson', 878, '41.80000', '-75.65000'), ('Glenwood', 713, '41.65000', '-75.73330'), ('Great Bend', 700, '41.97270', '-75.74560'), ('Hallstead', 1216, '41.96190', '-75.74730'), ('Harford', 878, '41.78330', '-75.70000'), ('Hickory Grove', 700, '41.96670', '-75.68330'), ('Hop Bottom', 333, '41.70640', '-75.76720'), ('Jackson', 299, '41.83330', '-75.60000'), ('Lakeside', 878, '41.88330', '-75.66670'), ('Lakeview', 1809, '41.86670', '-75.61670'), ('Lanesboro', 588, '41.96230', '-75.58240'), ('Lawton', 318, '41.78330', '-76.06670'), ('Lenoxville', 333, '41.66670', '-75.65000'), ('Little Meadows', 290, '41.99310', '-76.13090'), ('Middletown Center', 91, '41.86670', '-76.10000'), ('Montrose', 1664, '41.83400', '-75.87690'), ('New Milford', 878, '41.87590', '-75.72690'), ('Royal', 333, '41.66670', '-75.63330'), ('Rush', 91, '41.78330', '-76.05000'), ('South Montrose', 1664, '41.80000', '-75.88330'), ('Springville', 459, '41.70000', '-75.93330'), ('Susquehanna', 1809, '41.93330', '-75.60000'), ('Thompson', 299, '41.86230', '-75.51390'), ('Uniondale', 368, '41.71430', '-75.48390'), ('West Auburn', 396, '41.73330', '-76.10000'), ('West Lenox', 333, '41.71670', '-75.70000'), ('Wyoanna', 1664, '41.93330', '-75.91670')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAC117': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blossburg', 1480, '41.68290', '-77.06660'), ('Covington', 1480, '41.74000', '-77.07000'), ('Elkland', 1786, '41.98920', '-77.31480'), ('Gaines', 1325, '41.78000', '-77.54000'), ('Keeneyville', 3328, '41.86000', '-77.26000'), ('Knoxville', 617, '41.95680', '-77.43580'), ('Leetonia', 1325, '41.62000', '-77.52000'), ('Leonard Harrison State Park', 3328, '41.69000', '-77.41000'), ('Mansfield', 3411, '41.80570', '-77.07870'), ('Millerton', 207, '41.98000', '-76.95000'), ('Morris', 3328, '41.65000', '-77.27000'), ('Ogdensburg', 1807, '41.59000', '-76.96000'), ('Roseville', 207, '41.86540', '-76.95890'), ('Tioga', 622, '41.90490', '-77.13540'), ('Tioga Junction', 622, '41.95000', '-77.12000'), ('Wellsboro', 3328, '41.74610', '-77.30290'), ('Westfield', 1190, '41.91780', '-77.54060')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC119': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Allenwood', 2255, '41.09000', '-76.90000'), ('Forest Hill', 3594, '40.97000', '-77.01000'), ('Hartleton', 260, '40.89940', '-77.15680'), ('Laurelton Center', 260, '40.93000', '-77.20000'), ('Lewisburg', 5620, '40.96410', '-76.89050'), ('Linntown', 1542, '40.95690', '-76.90090'), ('Mifflinburg', 3594, '40.92010', '-77.04710'), ('New Berlin', 838, '40.88040', '-76.98530'), ('New Columbia', 6650, '41.04000', '-76.88000'), ('R.b. Winter State Park', 260, '40.99000', '-77.19000'), ('Sand Bridge State Park', 3594, '40.98000', '-77.10000'), ('Spruce Run Reservoir', 3594, '41.02000', '-77.00000'), ('Vicksburg', 838, '40.94000', '-76.98000'), ('Weikert', 260, '40.86000', '-77.28000'), ('West Milton', 6650, '41.01100', '-76.87600'), ('Winfield', 1542, '40.90000', '-76.87000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAC121': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Barkeyville', 237, '41.20020', '-79.98310'), ('Clintonville', 528, '41.20180', '-79.87610'), ('Cooperstown', 460, '41.49960', '-79.87400'), ('Cranberry', 0, '41.35000', '-79.72000'), ('Emlenton', 784, '41.18070', '-79.70830'), ('Franklin', 7212, '41.39200', '-79.83880'), ('Hasson Heights', 1495, '41.44880', '-79.67710'), ('Kennerdell', 0, '41.27000', '-79.85000'), ('Oil City', 11504, '41.42660', '-79.70430'), ('Pleasantville', 850, '41.59360', '-79.57930'), ('Polk', 1031, '41.36920', '-79.93010'), ('Rouseville', 472, '41.47100', '-79.68610'), ('Seneca', 966, '41.37570', '-79.70550'), ('Sugarcreek', 5331, '41.43950', '-79.81150'), ('Utica', 211, '41.43700', '-79.95760'), ('Wesley', 0, '41.23000', '-79.97000'), ('Woodland Heights', 1402, '41.40930', '-79.70180')], 'partOfState': 'northwest', 'wfo': 'PBZ'}, +'PAC123': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bear Lake', 193, '41.99310', '-79.50100'), ('Chapman State Park', 1780, '41.77000', '-79.18000'), ('Clarendon', 564, '41.78070', '-79.09640'), ('Columbus', 6834, '41.95000', '-79.58000'), ('Enterprise', 850, '41.63000', '-79.59000'), ('Garland', 792, '41.80000', '-79.43000'), ('Grand Valley', 850, '41.72000', '-79.54000'), ('Kinzua Dam', 564, '41.84000', '-79.00000'), ('Lottsville', 193, '41.93000', '-79.44000'), ('Russell', 10259, '41.92000', '-79.14000'), ('Scandia', 10259, '41.91088', '-79.03625'), ('Sheffield', 1268, '41.69630', '-79.02830'), ('Spring Creek', 193, '41.88000', '-79.51000'), ('Sugar Grove', 613, '41.98340', '-79.34000'), ('Tidioute', 792, '41.68360', '-79.40210'), ('Warren', 10259, '41.84370', '-79.14400'), ('Youngsville', 1834, '41.85190', '-79.31570')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAC125': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Allenport', 549, '40.09090', '-79.85690'), ('Amity', 0, '40.05000', '-80.20000'), ('Avella', 0, '40.28000', '-80.47000'), ('Baidland', 1576, '40.18910', '-79.95510'), ('Beallsville', 511, '40.05860', '-80.03310'), ('Bentleyville', 2502, '40.11780', '-80.00360'), ('Burgettstown', 1576, '40.38120', '-80.39220'), ('California', 5274, '40.06620', '-79.91080'), ('Canonsburg', 8607, '40.26380', '-80.18680'), ('Cecil-Bishop', 2701, '40.31640', '-80.19100'), ('Centerville', 247, '40.03070', '-79.95930'), ('Charleroi', 4871, '40.13920', '-79.90050'), ('Claysville', 724, '40.12060', '-80.41320'), ('Coal Center', 134, '40.06990', '-79.90120'), ('Cokeburg', 705, '40.09840', '-80.06630'), ('Deemston', 809, '40.03210', '-80.02670'), ('Donora', 5653, '40.17830', '-79.86340'), ('Dunlevy', 397, '40.11240', '-79.85870'), ('East Washington', 1930, '40.17370', '-80.23290'), ('Eighty Four', 0, '40.18000', '-80.13000'), ('Elco', 362, '40.08500', '-79.88310'), ('Ellsworth', 1083, '40.10800', '-80.02210'), ('Finleyville', 459, '40.25290', '-80.00220'), ('Fredericktown-Mill', 1237, '39.99740', '-80.00510'), ('Gastonville', 3002, '40.26440', '-80.00730'), ('Green Hills', 18, '40.11560', '-80.30880'), ('Hickory', 0, '40.30000', '-80.32000'), ('Houston', 1314, '40.25000', '-80.21180'), ('Long Branch', 539, '40.10270', '-79.87890'), ('Marianna', 626, '40.01120', '-80.11440'), ('McDonald', 2281, '40.37020', '-80.23250'), ('McGovern', 2538, '40.24030', '-80.22910'), ('McMurray', 4726, '40.28080', '-80.08830'), ('Monongahela', 4761, '40.19830', '-79.92260'), ('New Eagle', 2262, '40.20620', '-79.95450'), ('North Charleroi', 1409, '40.15040', '-79.90840'), ('Roscoe', 848, '40.07760', '-79.86490'), ('Scenery Hill', 0, '40.08000', '-80.07000'), ('Speers', 1241, '40.12260', '-79.88010'), ('Stockdale', 555, '40.08330', '-79.85070'), ('Taylorstown', 0, '40.17000', '-80.38000'), ('Thompsonville', 3592, '40.28130', '-80.11990'), ('Twilight', 241, '40.11430', '-79.89050'), ('Washington', 15268, '40.17430', '-80.24740'), ('West Alexander', 320, '40.10410', '-80.50800'), ('West Brownsville', 1075, '40.03130', '-79.89200'), ('West Finley', 0, '40.00000', '-80.47000'), ('West Middletown', 144, '40.24510', '-80.42550'), ('Wickerham Manor-Fisher', 1931, '40.17540', '-79.90450'), ('Wolfdale', 2873, '40.19870', '-80.29970')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAC127': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Abrahamsville', 484, '41.76670', '-75.11670'), ('Aldenville', 243, '41.65000', '-75.36670'), ('Angels', 1169, '41.28330', '-75.36670'), ('Arlington', 2140, '41.41670', '-75.33330'), ('Beach Lake', 4874, '41.60000', '-75.15000'), ('Beech Grove', 292, '41.60000', '-75.30000'), ('Bethany', 292, '41.61420', '-75.28890'), ('Browndale', 1855, '41.66670', '-75.45000'), ('Calkins', 4874, '41.65000', '-75.15000'), ('Damascus', 484, '41.70000', '-75.06670'), ('Equinunk', 1330, '41.85000', '-75.21670'), ('Gouldsboro', 0, '41.24420', '-75.45530'), ('Greentown', 1169, '41.31670', '-75.31670'), ('Hankins', 420, '41.81670', '-75.10000'), ('Hawley', 1303, '41.47660', '-75.17800'), ('Headley', 4874, '41.51670', '-75.28330'), ('Hiawatha', 216, '41.91670', '-75.36670'), ('Honesdale', 4874, '41.57720', '-75.25360'), ('La Anna', 1169, '41.25000', '-75.35000'), ('Lake Ariel', 2140, '41.45000', '-75.38330'), ('Lake Como', 1330, '41.85000', '-75.33330'), ('Lakeville', 1303, '41.43330', '-75.28330'), ('Lakewood', 216, '41.85000', '-75.36670'), ('Laurella', 4874, '41.58330', '-75.21670'), ('Lookout', 1330, '41.78330', '-75.16670'), ('Milanville', 484, '41.66670', '-75.06670'), ('Newfoundland', 1169, '41.30000', '-75.33330'), ('Orson', 299, '41.81670', '-75.45000'), ('Pleasant Mount', 368, '41.73330', '-75.41670'), ('Preston Park', 1330, '41.88330', '-75.35000'), ('Prompton', 243, '41.58980', '-75.32950'), ('Rileyville', 292, '41.71670', '-75.21670'), ('Rutledgedale', 292, '41.71670', '-75.18330'), ('Scott Center', 216, '41.93330', '-75.40000'), ('Seelyville', 4874, '41.56670', '-75.26670'), ('Shehawken', 216, '41.88330', '-75.38330'), ('Sherman', 1936, '41.98330', '-75.43330'), ('South Canaan', 1429, '41.50000', '-75.41670'), ('Stalker', 484, '41.83330', '-75.11670'), ('Starlight', 1330, '41.90000', '-75.33330'), ('Starruca', 216, '41.90280', '-75.45440'), ('Sterling', 1883, '41.33330', '-75.40000'), ('Tresslarville', 2140, '41.45000', '-75.40000'), ('Waymart', 1429, '41.58720', '-75.40930'), ('Winterdale', 1330, '41.95000', '-75.35000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAC129': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Adamsburg', 221, '40.31040', '-79.65470'), ('Arnold', 5667, '40.57890', '-79.76490'), ('Arona', 407, '40.26820', '-79.65750'), ('Avonmore', 820, '40.52680', '-79.47000'), ('Bolivar', 501, '40.39480', '-79.15210'), ('Calumet-Norvelt', 1790, '40.20730', '-79.49310'), ('Delmont', 2497, '40.41390', '-79.57340'), ('Derry', 2991, '40.33330', '-79.30170'), ('Donegal', 165, '40.11280', '-79.38250'), ('East Vandergrift', 742, '40.59740', '-79.56300'), ('Export', 895, '40.41870', '-79.62500'), ('Greensburg', 15889, '40.31090', '-79.54440'), ('Hunker', 329, '40.20400', '-79.61530'), ('Hyde Park', 513, '40.63220', '-79.58900'), ('Irwin', 4366, '40.32590', '-79.69960'), ('Jeannette', 10654, '40.32720', '-79.61410'), ('Latrobe', 8994, '40.31210', '-79.38270'), ('Laurel Mountain', 185, '40.21130', '-79.18480'), ('Lawson Heights', 2339, '40.29200', '-79.38830'), ('Ligonier', 1695, '40.24440', '-79.23730'), ('Lower Burrell', 12608, '40.58240', '-79.71300'), ('Lynnwood-Pricedale', 2664, '40.12980', '-79.85230'), ('Madison', 510, '40.24660', '-79.67290'), ('Manor', 2796, '40.34650', '-79.67080'), ('McChesneytown-Loya', 3708, '40.31280', '-79.35600'), ('Monessen', 8669, '40.15220', '-79.88220'), ('Mount Pleasant', 4728, '40.15040', '-79.54410'), ('Municipality Of Murrsyville', 17240, '40.44150', '-79.65590'), ('New Alexandria', 595, '40.39350', '-79.41840'), ('New Florence', 784, '40.37910', '-79.07500'), ('New Kensington', 14701, '40.56990', '-79.75080'), ('New Stanton', 1906, '40.22170', '-79.60900'), ('North Belle Vernon', 2107, '40.13200', '-79.86510'), ('North Irwin', 879, '40.33890', '-79.71120'), ('North Washington', 0, '40.53000', '-79.60000'), ('Oklahoma', 915, '40.58090', '-79.57470'), ('Penn', 460, '40.32880', '-79.64170'), ('Scottdale', 4772, '40.10280', '-79.58990'), ('Seward', 484, '40.41250', '-79.02170'), ('Smithton', 444, '40.15330', '-79.74170'), ('South Greensburg', 2280, '40.27690', '-79.54790'), ('Southwest Greensburg', 2398, '40.29200', '-79.54780'), ('Sutersville', 636, '40.23570', '-79.80260'), ('Trafford', 3236, '40.38420', '-79.75710'), ('Vandergrift', 5455, '40.59950', '-79.57440'), ('West Leechburg', 1290, '40.63210', '-79.61740'), ('West Newton', 3083, '40.20840', '-79.76960'), ('Youngstown', 400, '40.28090', '-79.36580'), ('Youngwood', 4138, '40.24370', '-79.58110')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAC131': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aldovin', 1911, '41.61670', '-75.93330'), ('Avery', 1911, '41.63330', '-75.93330'), ('Beaumont', 2888, '41.41670', '-76.00000'), ('Center Moreland', 2557, '41.41670', '-75.93330'), ('Eatonville', 1911, '41.51670', '-75.96670'), ('Evans Falls', 1911, '41.46670', '-76.01670'), ('Factoryville', 1144, '41.56000', '-75.78350'), ('Falls', 1911, '41.46670', '-75.88330'), ('Forkston', 396, '41.53330', '-76.13330'), ('Jenningsville', 396, '41.58330', '-76.15000'), ('Kasson Brook', 2888, '41.46670', '-76.15000'), ('Laceyville', 396, '41.64500', '-76.15950'), ('Lake Carey', 1911, '41.60000', '-75.95000'), ('Lake Sheridan', 713, '41.60000', '-75.76670'), ('Lake Winola', 1911, '41.50000', '-75.86670'), ('Lovelton', 396, '41.53330', '-76.18330'), ('Mehoopany', 459, '41.56670', '-76.06670'), ('Meshoppen', 459, '41.61360', '-76.04590'), ('Mill City', 1144, '41.50000', '-75.85000'), ('Nicholson', 713, '41.62740', '-75.78570'), ('Noxen', 2888, '41.43330', '-76.06670'), ('Osterhout', 1911, '41.51670', '-75.91670'), ('Ruggles', 2888, '41.40000', '-76.05000'), ('Russell Hill', 459, '41.58330', '-76.00000'), ('Stowell', 396, '41.58330', '-76.20000'), ('Stull', 2888, '41.41670', '-76.10000'), ('Tunkhannock', 1911, '41.54100', '-75.94930'), ('Vernon', 1911, '41.45000', '-75.96670'), ('Vosburg', 1911, '41.56670', '-76.00000'), ('Walls Corners', 1144, '41.53330', '-75.80000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAC133': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Brogue', 449, '39.86000', '-76.45000'), ('Codorus', 492, '39.80000', '-76.82000'), ('Dallastown', 4087, '39.89970', '-76.64110'), ('Delta', 741, '39.72610', '-76.32770'), ('Dillsburg', 2063, '40.11010', '-77.03480'), ('Dover', 1815, '40.00370', '-76.84970'), ('East Prospect', 678, '39.97140', '-76.52090'), ('Emigsville', 2467, '40.00780', '-76.73020'), ('Fawn Grove', 463, '39.72990', '-76.45110'), ('Felton', 449, '39.85630', '-76.56150'), ('Franklintown', 532, '40.07520', '-77.02910'), ('Glen Rock', 1809, '39.79340', '-76.73050'), ('Goldsboro', 939, '40.15450', '-76.75050'), ('Hallam', 1532, '40.00250', '-76.60440'), ('Hanover', 14535, '39.81210', '-76.98370'), ('Jacobus', 1203, '39.88240', '-76.71240'), ('Lewisberry', 385, '40.13520', '-76.86080'), ('Loganville', 908, '39.85510', '-76.70880'), ('Manchester', 2350, '40.06130', '-76.72030'), ('New Freedom', 3512, '39.73630', '-76.69680'), ('New Salem', 648, '39.90240', '-76.79350'), ('Parkville', 6593, '39.78290', '-76.96750'), ('Pennville', 1964, '39.78560', '-76.99040'), ('Red Lion', 6149, '39.89870', '-76.60770'), ('Seven Valleys', 492, '39.85260', '-76.76650'), ('Shenks Ferry', 7774, '39.90000', '-76.39000'), ('Shrewsbury', 3378, '39.77100', '-76.68030'), ('Siddonsburg', 1521, '40.15000', '-76.96000'), ('Spring Grove', 2050, '39.88140', '-76.86440'), ('Spry', 4903, '39.91250', '-76.68750'), ('Stewartstown', 1752, '39.75240', '-76.59300'), ('Stonybrook', 4887, '39.97480', '-76.64300'), ('Sunnyburn', 2134, '39.79000', '-76.37000'), ('Susquehanna Trails', 0, '39.75850', '-76.36840'), ('Thomasville', 2050, '39.92000', '-76.87000'), ('Valley Green', 3550, '40.15720', '-76.79300'), ('Weigelstown', 10117, '39.98740', '-76.82940'), ('Wellsville', 279, '40.05020', '-76.94080'), ('Windsor', 1331, '39.91550', '-76.58330'), ('Winterstown', 546, '39.84090', '-76.61320'), ('Wrightsville', 2223, '40.02440', '-76.53150'), ('York', 40862, '39.96450', '-76.73180'), ('York Haven', 809, '40.11010', '-76.71580')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PRC001': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Adjuntas', 4980, '18.16570', '-66.72410')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC003': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguada', 3871, '18.38220', '-67.18780'), ('Luyando', 3553, '18.35840', '-67.15630')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC005': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguadilla', 16776, '18.43970', '-67.15490'), ('Caban', 3959, '18.44540', '-67.13630'), ('Rafael Hernandez', 1516, '18.47330', '-67.07950')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC007': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguas Buenas', 4368, '18.25940', '-66.10540'), ('Sumidero', 1145, '18.21280', '-66.13430')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC009': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aibonito', 9269, '18.14180', '-66.26610'), ('Pastos', 1528, '18.11970', '-66.25910')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC011': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Anasco', 5880, '18.28850', '-67.14130'), ('Espino', 1422, '18.27830', '-67.11980'), ('La Playa', 2139, '18.28940', '-67.18740'), ('Las Marias', 988, '18.29430', '-67.14480')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC013': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Animas', 1450, '18.44760', '-66.63520'), ('Arecibo', 49318, '18.45670', '-66.73590'), ('Bajadero', 3877, '18.42530', '-66.67650'), ('La Alianza', 2139, '18.40240', '-66.60180'), ('Sabana Hoyos', 1823, '18.42900', '-66.61210')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC015': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Arroyo', 7244, '17.97080', '-66.06210'), ('Buena Vista', 2026, '17.99840', '-66.05230'), ('Palmas', 2829, '17.98900', '-66.02570'), ('Yaurel', 1468, '18.02890', '-66.05750')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC017': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Barceloneta', 4253, '18.45480', '-66.53900'), ('Bufalo', 1108, '18.42040', '-66.57370'), ('Garrochales', 1208, '18.46440', '-66.57010'), ('Imbery', 3021, '18.43920', '-66.55730'), ('Tiburones', 709, '18.43870', '-66.58000')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC019': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Barranquitas', 2910, '18.18770', '-66.30930')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC021': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Bayamon', 1699, '18.38130', '-66.16390')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC023': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Betances', 835, '18.03150', '-67.13340'), ('Cabo Rojo', 10610, '18.08830', '-67.14860'), ('Pole Ojea', 1829, '17.97890', '-67.18470')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC025': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Bairoa', 2365, '18.25670', '-66.06530'), ('Caguas', 88680, '18.23430', '-66.03940')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC027': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Camuy', 4013, '18.48570', '-66.84910'), ('Piedra Gorda', 1927, '18.43600', '-66.88800'), ('Quebrada', 1130, '18.36210', '-66.83630')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC029': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Benitez', 1334, '18.27540', '-65.87930'), ('Campo Rico', 3218, '18.33910', '-65.89820'), ('Canovanas', 8069, '18.37970', '-65.90680'), ('Lomas', 953, '18.27050', '-65.90920'), ('San Isidro', 8071, '18.39410', '-65.88570'), ('Santa Barbara', 5168, '18.39560', '-65.91900')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC031': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Carolina', 168164, '18.40840', '-65.98110')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC033': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Catano', 30071, '18.44540', '-66.13940')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC035': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Cayey', 19940, '18.11640', '-66.16270'), ('G. L. Garcia', 1798, '18.12950', '-66.10430')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC037': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguas Claras', 3499, '18.24950', '-65.66630'), ('Ceiba', 6277, '18.26660', '-65.64900'), ('Roosevelt Roads', 3975, '18.23820', '-65.62780')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC039': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Ciales', 3082, '18.33600', '-66.47100')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC041': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Cidra', 4881, '18.17920', '-66.15920'), ('Parcelas La Milagr', 1344, '18.17270', '-66.18850'), ('Parcelas Nuevas', 1628, '18.14220', '-66.17270')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC043': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Coamo', 12356, '18.08110', '-66.36060'), ('Los Llanos', 2301, '18.05820', '-66.40960'), ('Mariano Colon', 2387, '18.02540', '-66.33280')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC045': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Comerio', 4478, '18.22170', '-66.22500')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC047': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Corozal', 11444, '18.34370', '-66.31270')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC049': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Culebra', 1418, '18.31320', '-65.30570')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC051': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Dorado', 12747, '18.47020', '-66.27150'), ('Rio Lajas', 2349, '18.40040', '-66.26280'), ('San Antonio', 2300, '18.44950', '-66.29860')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC053': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Fajardo', 33286, '18.33500', '-65.65970'), ('Luis M. Cintron', 2634, '18.30160', '-65.63890')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC054': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Florida', 5652, '18.36440', '-66.56150')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC055': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Fuig', 1204, '17.98830', '-66.91770'), ('Guanica', 9247, '17.97040', '-66.93070'), ('Maria Antonia', 1479, '17.98030', '-66.88970')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC057': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Corazon', 2925, '17.99550', '-66.08360'), ('Guayama', 21624, '17.97820', '-66.11100'), ('Jobos', 3475, '17.96250', '-66.16570'), ('Olimpo', 2493, '18.00470', '-66.10950')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC059': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Guayanilla', 5110, '18.02490', '-66.79000'), ('Indios', 1739, '17.99610', '-66.81980'), ('Magas Arriba', 1063, '18.02490', '-66.76580')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC061': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Guaynabo', 78806, '18.38640', '-66.11430')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC063': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Celada', 4435, '18.27200', '-65.96260'), ('Gurabo', 9046, '18.25610', '-65.97800')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC065': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Carrizales', 2556, '18.48340', '-66.78810'), ('Corcovado', 1527, '18.46320', '-66.77720'), ('Hatillo', 5321, '18.48720', '-66.82350'), ('Rafael Capo', 1863, '18.40560', '-66.78360'), ('Rafael Gonzalez', 2325, '18.42950', '-66.78730')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC067': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Hormigueros', 12444, '18.14440', '-67.12080')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC069': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Anton Ruiz', 1764, '18.19010', '-65.80760'), ('Bajandas', 1418, '18.16230', '-65.78280'), ('Candelero Arriba', 1346, '18.10400', '-65.83710'), ('Humacao', 20682, '18.15450', '-65.81970'), ('Punta Santiago', 5803, '18.16470', '-65.75840')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC071': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Isabela', 12818, '18.50530', '-67.02100'), ('Mora', 1857, '18.46500', '-67.03300')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC073': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Jayuya', 3516, '18.22050', '-66.59700')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC075': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguilita', 4922, '18.03000', '-66.53360'), ('Guayabal', 2377, '18.07820', '-66.50210'), ('Juana Diaz', 9505, '18.05480', '-66.50530'), ('Luis Llorens Torre', 3328, '18.05880', '-66.52730'), ('Potala Pastillo', 3819, '17.99350', '-66.49690'), ('Rio Canas Abajo', 1185, '18.04110', '-66.46870')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC077': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('El Mango', 1979, '18.23690', '-65.87560'), ('Juncos', 8978, '18.22850', '-65.91680')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC079': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Lajas', 5036, '18.04640', '-67.06030'), ('La Parguera', 1141, '17.97680', '-67.04690'), ('Palmarejo', 1169, '18.04350', '-67.07750')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC081': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Lares', 7042, '18.29630', '-66.88220')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC083': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [], 'partOfState': '', 'wfo': 'SJU'}, +'PRC085': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Boqueron', 1218, '18.20950', '-65.84890'), ('La Fermina', 3177, '18.17740', '-65.85380'), ('Las Piedras', 6352, '18.18130', '-65.86980'), ('Pueblito Del Rio', 1481, '18.23000', '-65.86330')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC087': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [], 'partOfState': '', 'wfo': 'SJU'}, +'PRC089': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Luquillo', 7947, '18.37750', '-65.72100'), ('Ramos', 2004, '18.34160', '-65.71300')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC091': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Coto Norte', 1381, '18.43520', '-66.44110'), ('La Luisa', 2887, '18.45080', '-66.51020'), ('Manati', 16173, '18.43100', '-66.48420'), ('Tierras Nuevas Pon', 2366, '18.46390', '-66.48900')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC093': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Maricao', 1123, '18.18610', '-66.98040')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC095': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Emajagua', 3099, '18.00250', '-65.88300'), ('Maunabo', 2075, '18.00980', '-65.90140'), ('Palo Seco', 1152, '18.00960', '-65.93730')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC097': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Mayaguez', 78647, '18.20360', '-67.14340')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC099': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aceitunas', 1688, '18.44800', '-67.06780'), ('Moca', 4757, '18.39660', '-67.11420')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC101': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Barahona', 2632, '18.35340', '-66.44590'), ('Franquez', 2021, '18.34210', '-66.42800'), ('Morovis', 2285, '18.32680', '-66.40520')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC103': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Daguao', 1488, '18.22350', '-65.68070'), ('Duque', 1529, '18.24010', '-65.74460'), ('Naguabo', 4432, '18.21350', '-65.73760'), ('Pena Pobre', 1024, '18.21870', '-65.82290'), ('Rio Blanco', 1406, '18.21440', '-65.79320')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC105': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Naranjito', 1931, '18.30510', '-66.24500')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC107': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Orocovis', 909, '18.22690', '-66.39180')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC109': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Lamboglia', 1121, '17.98630', '-65.98490'), ('Patillas', 4091, '18.00900', '-66.01390')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC111': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Penuelas', 6712, '18.06150', '-66.72140'), ('Santo Domingo', 3633, '18.07170', '-66.75370'), ('Tallaboa', 1150, '17.99870', '-66.71090'), ('Tallaboa Alta', 2243, '18.05210', '-66.70290')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC113': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Capitanejo', 3209, '18.01530', '-66.53610'), ('Coto Laurel', 3606, '18.04990', '-66.55190'), ('Marueno', 913, '18.05860', '-66.65630'), ('Ponce', 155038, '17.98710', '-66.60910')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC115': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Cacao', 2068, '18.43850', '-66.93750'), ('Quebradillas', 5319, '18.47580', '-66.93630')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC117': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Rincon', 1436, '18.34100', '-67.25260'), ('Stella', 1293, '18.32400', '-67.24720')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC119': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Bartolo', 1260, '18.36350', '-65.84140'), ('Hato Candal', 2453, '18.37660', '-65.78990'), ('La Dolores', 3534, '18.37730', '-65.85520'), ('Loiza', 4123, '18.43280', '-65.88060'), ('Palmer', 1205, '18.37240', '-65.77450'), ('Rio Grande', 13467, '18.38070', '-65.83930'), ('Suarez', 2276, '18.43290', '-65.85100'), ('Vieques', 2136, '18.42840', '-65.83540')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC121': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Liborio Negron Torres', 1303, '18.04510', '-66.94280'), ('Lluveras', 2005, '18.04040', '-66.90510'), ('Sabana Grande', 8784, '18.08400', '-66.96710')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC123': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Central Aguirre', 1588, '17.95700', '-66.22660'), ('Coco', 5803, '18.00450', '-66.26000'), ('Coqui', 3590, '17.98060', '-66.22640'), ('La Plena', 1036, '18.04430', '-66.20660'), ('Las Ochenta', 1199, '17.98580', '-66.31810'), ('Salinas', 6141, '17.97940', '-66.29660'), ('Vazquez', 2297, '18.06770', '-66.23910')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC125': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Sabana Eneas', 1847, '18.08410', '-67.08540'), ('San German', 12033, '18.08470', '-67.04550')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC127': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('San Juan', 421958, '18.40840', '-66.06440')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC129': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Jagual', 1402, '18.16280', '-65.99770'), ('San Lorenzo', 8947, '18.19080', '-65.96640')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC131': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Juncal', 1155, '18.31570', '-66.91940'), ('San Sebastian', 11598, '18.33800', '-66.99590')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC133': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('El Ojo', 1713, '18.00590', '-66.39210'), ('Jauca', 1838, '17.96580', '-66.36600'), ('Las Ollas', 1949, '18.01640', '-66.42170'), ('Parcelas Penuelas', 1132, '18.00400', '-66.34010'), ('Santa Isabel', 6993, '17.97090', '-66.40510')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC135': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Galateo', 2705, '18.36440', '-66.25930'), ('H. Rivera Colon', 2379, '18.34970', '-66.27410'), ('Mucarabones', 1690, '18.39270', '-66.21650'), ('Pajaros', 9466, '18.36210', '-66.21910'), ('Toa Alta', 4368, '18.39010', '-66.25010')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC137': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Campanilla', 7757, '18.42460', '-66.23870'), ('Candelaria', 17300, '18.40670', '-66.21830'), ('Candelaria Arenas', 5854, '18.41920', '-66.21780'), ('Ingenio', 5664, '18.44730', '-66.22580'), ('Levittown', 30140, '18.44760', '-66.17630'), ('Sabana Seca', 6247, '18.42560', '-66.18540'), ('San Jose', 3278, '18.40600', '-66.24850'), ('Toa Baja', 1841, '18.44430', '-66.25480')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC139': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Trujillo Alto', 50841, '18.36300', '-66.01760')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC141': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Cayuco', 1284, '18.29530', '-66.73540'), ('Utuado', 9887, '18.27140', '-66.70560')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC143': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Brenas', 2104, '18.47390', '-66.33410'), ('Vega Alta', 11755, '18.41660', '-66.32200')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC145': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Miranda', 2057, '18.38870', '-66.38020'), ('Monserrate', 2756, '18.43920', '-66.35680'), ('Sabana', 1946, '18.46400', '-66.35280'), ('Vega Baja', 28811, '18.44280', '-66.39970')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC147': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Esperanza', 1092, '18.10320', '-65.48000')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC149': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Villalba', 4388, '18.13000', '-66.48220')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC151': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Comunas', 2027, '18.08950', '-65.84040'), ('El Negro', 1656, '18.03930', '-65.85170'), ('Martorell', 2884, '18.07540', '-65.89820'), ('Playita', 673, '18.04170', '-65.90830'), ('Rosa Sanchez', 1221, '18.06350', '-65.91380'), ('Yabucoa', 6636, '18.04960', '-65.87960')], 'partOfState': '', 'wfo': 'SJU'}, +'PRC153': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Palomas', 1742, '18.01540', '-66.86870'), ('Yauco', 19609, '18.03660', '-66.86200')], 'partOfState': '', 'wfo': 'SJU'}, +'RIC001': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Barrington', 16819, '41.73520', '-71.31860'), ('Bristol', 22469, '41.67780', '-71.27430'), ('Warren', 22469, '41.71667', '-71.26667')], 'partOfState': '', 'wfo': 'BOX'}, +'RIC003': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Coventry', 29581, '41.68333', '-71.65000'), ('East Greenwich', 85808, '41.65000', '-71.46667'), ('Warwick', 85808, '41.70220', '-71.42190'), ('West Greenwich', 5085, '41.63333', '-71.65000'), ('West Warwick', 29581, '41.69750', '-71.51830')], 'partOfState': '', 'wfo': 'BOX'}, +'RIC005': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Jamestown', 26475, '41.48333', '-71.36667'), ('Little Compton', 3593, '41.50000', '-71.16667'), ('Newport', 26475, '41.49010', '-71.32030'), ('Portsmouth', 2325, '41.60000', '-71.25000'), ('Prudence Island', 2325, '41.60000', '-71.31667'), ('Tiverton', 7282, '41.65420', '-71.20090')], 'partOfState': '', 'wfo': 'BOX'}, +'RIC007': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Blackstone', 43877, '42.01667', '-71.50000'), ('Burrillville', 4742, '41.95370', '-71.71670'), ('Central Falls', 18928, '41.88940', '-71.39390'), ('Cranston', 79269, '41.76660', '-71.48110'), ('Cumberland', 7738, '41.97200', '-71.46010'), ('East Providence', 48688, '41.80020', '-71.35950'), ('Foster', 4742, '41.85000', '-71.76667'), ('Glocester', 9948, '41.91667', '-71.66667'), ('Johnston', 32411, '41.81667', '-71.46667'), ('Lincoln', 7738, '41.91667', '-71.46667'), ('Millbury', 4742, '42.00000', '-71.75000'), ('North Providence', 32411, '41.86120', '-71.45750'), ('North Smithfield', 43224, '41.95000', '-71.55000'), ('Pawtucket', 72958, '41.87330', '-71.37430'), ('Providence', 173618, '41.82200', '-71.41970'), ('Scituate', 8626, '41.80000', '-71.61667'), ('Smithfield', 8626, '41.88333', '-71.55000'), ('Woonsocket', 43224, '41.99990', '-71.50040')], 'partOfState': '', 'wfo': 'BOX'}, +'RIC009': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Block Island', 1497, '41.16667', '-71.58333'), ('Charlestown', 1497, '41.38333', '-71.65000'), ('Exeter', 6045, '41.56667', '-71.68333'), ('Hopkinton', 7838, '41.45000', '-71.78333'), ('Kingston', 5446, '41.47220', '-71.52340'), ('Narragansett', 16361, '41.42710', '-71.46690'), ('North Kingstown', 26326, '41.51000', '-71.45000'), ('Richmond', 7222, '41.50000', '-71.63333'), ('South Kingstown', 5446, '41.43333', '-71.55000'), ('Westerly', 17682, '41.37060', '-71.81030')], 'partOfState': '', 'wfo': 'BOX'}, +'SCC001': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Abbeville', 5840, '34.17960', '-82.37820'), ('Antreville', 118, '34.30390', '-82.54250'), ('Calhoun Falls', 2303, '34.09170', '-82.59650'), ('Donalds', 354, '34.37760', '-82.34700'), ('Due West', 1209, '34.33230', '-82.38860'), ('Lowndesville', 166, '34.21030', '-82.64950')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC003': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Aiken', 25337, '33.54080', '-81.72840'), ('Belvedere', 5631, '33.53560', '-81.94190'), ('Burnettown', 2720, '33.51050', '-81.85420'), ('Clearwater', 4199, '33.50550', '-81.90770'), ('Gloverville', 2805, '33.52810', '-81.81400'), ('Jackson', 1625, '33.32840', '-81.79220'), ('New Ellenton', 2250, '33.41880', '-81.68660'), ('North Augusta', 17574, '33.51770', '-81.95620'), ('Perry', 237, '33.62700', '-81.30920'), ('Salley', 410, '33.56660', '-81.30430'), ('Wagener', 863, '33.65090', '-81.36300'), ('Windsor', 127, '33.48080', '-81.51510')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC005': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Allendale', 4052, '33.00780', '-81.30860'), ('Appleton', 4052, '33.04330', '-81.36310'), ('Averill', 246, '33.07420', '-81.51360'), ('Baldock', 238, '33.07920', '-81.42360'), ('Barton', 3206, '32.92220', '-81.28670'), ('Fairfax', 3206, '32.95890', '-81.23670'), ('Jennys', 185, '33.02610', '-81.11390'), ('Martin', 238, '33.06890', '-81.47670'), ('Milbury', 4052, '32.92420', '-81.43030'), ('Millett', 246, '33.08110', '-81.53580'), ('Rouse', 370, '32.88530', '-81.27560'), ('Seigling', 4052, '33.04420', '-81.31530'), ('Sycamore', 185, '33.03560', '-81.22220'), ('Ulmer', 102, '33.09720', '-81.20830')], 'partOfState': 'west central', 'wfo': 'CHS'}, +'SCC007': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Anderson', 25514, '34.51860', '-82.64580'), ('Belton', 4461, '34.52390', '-82.49510'), ('Honea Path', 3504, '34.44700', '-82.39460'), ('Iva', 1156, '34.30680', '-82.66350'), ('Pelzer', 97, '34.64380', '-82.46190'), ('Pendleton', 2966, '34.65080', '-82.78280'), ('Piedmont', 4684, '34.71010', '-82.46430'), ('Powdersville', 5362, '34.79170', '-82.49310'), ('Sadlers Creek State Park', 1854, '34.42500', '-82.82780'), ('Sandy Springs', 2966, '34.59530', '-82.75000'), ('Starr', 173, '34.37710', '-82.69580'), ('Townville', 1478, '34.56360', '-82.89860'), ('Williamston', 3791, '34.61760', '-82.47940')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC009': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bamberg', 3733, '33.29830', '-81.03210'), ('Denmark', 3328, '33.31870', '-81.13850'), ('Ehrhardt', 614, '33.09840', '-81.01340'), ('Govan', 67, '33.22320', '-81.17510'), ('Olar', 237, '33.18030', '-81.18520')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC011': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Barnwell', 5035, '33.24140', '-81.36510'), ('Blackville', 2973, '33.36020', '-81.28100'), ('Elko', 212, '33.37910', '-81.37950'), ('Hilda', 436, '33.27380', '-81.24660'), ('Kline', 238, '33.12420', '-81.34320'), ('Savannah River Site', 0, '33.26001', '-81.62300'), ('Snelling', 246, '33.24030', '-81.45590'), ('Williston', 3307, '33.40170', '-81.42270')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC013': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ashdale', 504, '32.44810', '-80.61940'), ('Bluffton', 1275, '32.23690', '-80.86060'), ('Burton', 7180, '32.43560', '-80.72420'), ('Calibogue Cay', 33862, '32.14830', '-80.79890'), ('Chesterfield', 7180, '32.40140', '-80.76420'), ('Dale', 504, '32.55640', '-80.69000'), ('Daniels', 504, '32.47860', '-80.62750'), ('Daufuskie Island', 1275, '32.12500', '-80.86670'), ('Folly Field', 33862, '32.20190', '-80.69060'), ('Forest Beach', 33862, '32.14640', '-80.74390'), ('Frogmore', 504, '32.39670', '-80.57640'), ('Gardens Corner', 807, '32.60060', '-80.76140'), ('Harbortown', 33862, '32.13330', '-80.81250'), ('Hilton Head Island', 33862, '32.21610', '-80.75280'), ('Hunting Island', 641, '32.37500', '-80.44170'), ('Lands End', 4841, '32.29170', '-80.64170'), ('Laurel Bay', 6625, '32.45000', '-80.78500'), ('Lawton', 33862, '32.14330', '-80.78860'), ('Lobeco', 6625, '32.55250', '-80.74360'), ('Myrtle Island', 1275, '32.21170', '-80.86500'), ('Parris Island', 4841, '32.35000', '-80.68330'), ('Port Royal', 3950, '32.37890', '-80.69280'), ('Pritchardville', 1275, '32.23780', '-80.96440'), ('Scott', 4841, '32.34640', '-80.62330'), ('Sea Pines', 33862, '32.13330', '-80.79500'), ('Sheldon', 807, '32.60140', '-80.79330'), ('Springfield', 504, '32.47920', '-80.63060'), ('Walling Grove', 504, '32.49220', '-80.65780')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCC013': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ashdale', 504, '32.44810', '-80.61940'), ('Bluffton', 1275, '32.23690', '-80.86060'), ('Burton', 7180, '32.43560', '-80.72420'), ('Calibogue Cay', 33862, '32.14830', '-80.79890'), ('Chesterfield', 7180, '32.40140', '-80.76420'), ('Dale', 504, '32.55640', '-80.69000'), ('Daniels', 504, '32.47860', '-80.62750'), ('Daufuskie Island', 1275, '32.12500', '-80.86670'), ('Folly Field', 33862, '32.20190', '-80.69060'), ('Forest Beach', 33862, '32.14640', '-80.74390'), ('Frogmore', 504, '32.39670', '-80.57640'), ('Gardens Corner', 807, '32.60060', '-80.76140'), ('Harbortown', 33862, '32.13330', '-80.81250'), ('Hilton Head Island', 33862, '32.21610', '-80.75280'), ('Hunting Island', 641, '32.37500', '-80.44170'), ('Lands End', 4841, '32.29170', '-80.64170'), ('Laurel Bay', 6625, '32.45000', '-80.78500'), ('Lawton', 33862, '32.14330', '-80.78860'), ('Lobeco', 6625, '32.55250', '-80.74360'), ('Myrtle Island', 1275, '32.21170', '-80.86500'), ('Parris Island', 4841, '32.35000', '-80.68330'), ('Port Royal', 3950, '32.37890', '-80.69280'), ('Pritchardville', 1275, '32.23780', '-80.96440'), ('Scott', 4841, '32.34640', '-80.62330'), ('Sea Pines', 33862, '32.13330', '-80.79500'), ('Sheldon', 807, '32.60140', '-80.79330'), ('Springfield', 504, '32.47920', '-80.63060'), ('Walling Grove', 504, '32.49220', '-80.65780')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCC015': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Alvin', 1776, '33.34890', '-79.81640'), ('Ararat', 29208, '32.97830', '-80.00360'), ('Bethera', 97, '33.20140', '-79.78830'), ('Beufordtown', 97, '33.28390', '-79.74360'), ('Black Creek', 344, '33.28470', '-80.25780'), ('Bonneau', 354, '33.30530', '-79.95810'), ('Bonneau Beach', 354, '33.31970', '-80.00060'), ('Cainhoy', 96650, '32.92920', '-79.83140'), ('Calestown', 97, '33.29030', '-79.78690'), ('Carnes Crossroad', 13264, '33.06330', '-80.09330'), ('Charity', 29208, '33.00580', '-79.85000'), ('Chicora', 5952, '33.26690', '-80.10970'), ('College Park', 13264, '33.01720', '-80.09830'), ('Comingtee', 29208, '33.07940', '-79.91720'), ('Cordesville', 5952, '33.13190', '-79.88360'), ('Cote Bas Landing', 29208, '33.01470', '-79.92420'), ('Cross', 354, '33.32720', '-80.14860'), ('Cross Cross Roads', 354, '33.34440', '-80.14280'), ('Daniel Island', 96650, '32.87500', '-79.90000'), ('Driggerstown', 13264, '33.03030', '-80.09140'), ('Eadytown', 344, '33.41220', '-80.14720'), ('Ebenezer', 1281, '33.25580', '-80.32500'), ('Ellwood', 5952, '33.11080', '-79.93640'), ('Farewell Corner', 97, '33.22280', '-79.74750'), ('Goose Creek', 29208, '32.98080', '-80.03280'), ('Groomville', 13264, '33.08560', '-80.05690'), ('Grove Hall', 13264, '33.04530', '-80.07780'), ('Hagan', 29208, '33.05720', '-79.90920'), ('Halfway Creek', 97, '33.11360', '-79.64750'), ('Huger', 97, '33.09640', '-79.80360'), ('Hussertown', 344, '33.25560', '-80.25830'), ('Jamestown', 97, '33.28580', '-79.69280'), ('Judge Town', 1776, '33.43190', '-80.01940'), ('Limerick', 97, '33.13580', '-79.81530'), ('Macbeth', 354, '33.26750', '-79.97500'), ('Mepkin', 5952, '33.11470', '-79.95250'), ('Moncks Corner', 5952, '33.19580', '-80.01330'), ('Moorefield', 5952, '33.28860', '-80.16890'), ('Moreland', 29208, '33.00920', '-79.89530'), ('Mount Holly', 29208, '33.03420', '-80.03470'), ('Murraysville', 5952, '33.18110', '-80.10170'), ('New Hope', 27752, '33.10640', '-80.18830'), ('New Hope', 29208, '33.08940', '-79.81670'), ('Newland', 97, '33.20420', '-79.61640'), ('Oakatee', 13264, '33.04170', '-80.07920'), ('Oakley', 5952, '33.12390', '-80.01920'), ('Old Cordesville', 5952, '33.17750', '-79.91690'), ('Palmerville', 97, '33.25390', '-79.64780'), ('Pimlico', 5952, '33.09720', '-79.96060'), ('Pineville', 1776, '33.42810', '-80.02940'), ('Pinopolis', 5952, '33.22640', '-80.03780'), ('Poppenheim Crossing', 29208, '32.96830', '-80.00190'), ('Pringletown', 1690, '33.14360', '-80.30610'), ('Prioleau', 344, '33.36420', '-80.19580'), ('Red Bank Landing', 29208, '32.95170', '-79.93190'), ('Richmond', 29208, '33.07530', '-79.87890'), ('Russellville', 1776, '33.39690', '-79.97190'), ('Saint Johns', 5952, '33.12060', '-80.06920'), ('Saint Stephen', 1776, '33.40420', '-79.92190'), ('Sandridge', 1281, '33.25500', '-80.31610'), ('Sangaree', 13264, '33.03530', '-80.12810'), ('Shulerville', 97, '33.18720', '-79.63220'), ('Simmonsville', 97, '33.24830', '-79.64060'), ('Simpson Crossing', 5952, '33.24940', '-79.97530'), ('Smith', 29208, '33.05780', '-79.77000'), ('Spring Hill', 594, '33.23110', '-80.32470'), ('Stony Landing', 5952, '33.19310', '-79.96940'), ('Strawberry', 29208, '33.09140', '-80.03080'), ('Sugar Hill', 5952, '33.20780', '-80.04580'), ('Tarry Town', 29208, '33.08110', '-79.99310'), ('Thomas Corner', 97, '33.16060', '-79.71500'), ('Wadboo', 5952, '33.19080', '-79.93780'), ('Wampee', 5952, '33.24310', '-80.03170'), ('Wando', 47609, '32.93330', '-79.83190'), ('Wappoola', 5952, '33.09780', '-79.99030'), ('Whitesville', 5952, '33.14720', '-80.06170'), ('Wilder', 354, '33.34690', '-79.94330'), ('Wilsons Landing', 344, '33.44830', '-80.16190'), ('Woodland', 29208, '33.03780', '-79.90670'), ('Woodland Landing', 29208, '33.04560', '-79.91580')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCC017': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cameron', 449, '33.55840', '-80.71490'), ('St. Matthews', 2107, '33.66370', '-80.77790')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC019': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Adams Run', 1230, '32.72060', '-80.34830'), ('Awendaw', 1195, '33.03750', '-79.61330'), ('Battery Point', 96650, '32.74280', '-79.94920'), ('Buck Hall', 459, '33.05310', '-79.56000'), ('Canady Landing', 707, '32.81530', '-80.40500'), ('Capwells Crossroads', 2214, '32.77920', '-80.26860'), ('Charleston', 96650, '32.78330', '-79.93750'), ('Charleston Airport', 79641, '32.89870', '-80.04050'), ('Citadel Mall', 96650, '32.79670', '-80.04000'), ('Delemar Crossroads', 2214, '32.84610', '-80.28440'), ('Dewees Island', 4583, '32.85000', '-79.71670'), ('Edisto Island', 641, '32.56000', '-80.28000'), ('Folly Beach', 2116, '32.65500', '-79.94060'), ('Fort Moultrie', 1911, '32.75890', '-79.85810'), ('Germantown', 459, '33.19530', '-79.44750'), ('Hanahan', 12937, '32.91830', '-80.02220'), ('Hobcaw Point', 47609, '32.82000', '-79.89420'), ('Hollywood', 3946, '32.73420', '-80.24190'), ('Huskum Corner Crosroads', 1163, '32.67500', '-80.05060'), ('James Island', 2116, '32.73330', '-79.93330'), ('Johns Island', 96650, '32.72500', '-80.07500'), ('Kiawah Island', 1163, '32.60810', '-80.08500'), ('Ladson', 13264, '32.98560', '-80.11000'), ('Lambs', 79641, '32.88640', '-80.06810'), ('Legareville', 1163, '32.65470', '-80.05310'), ('Lincolnville', 904, '33.00670', '-80.15560'), ('Maryville', 96650, '32.79220', '-79.99530'), ('McClellanville', 459, '33.08810', '-79.46140'), ('Meggett', 1230, '32.71780', '-80.23920'), ('Midland Park', 79641, '32.92060', '-80.04080'), ('Mount Pleasant', 47609, '32.79390', '-79.86280'), ('North Charleston', 79641, '32.85440', '-79.97500'), ('Northwoods Mall', 79641, '32.94080', '-80.04580'), ('Oakland', 96650, '32.78530', '-80.03530'), ('Otranto', 12937, '32.96500', '-80.04440'), ('Parkers Ferry', 1230, '32.76000', '-80.39640'), ('Rantowles', 2214, '32.78280', '-80.14890'), ('Ravenel', 2214, '32.76310', '-80.25030'), ('Red Top', 3946, '32.80250', '-80.12280'), ('Remleys Point', 47609, '32.80970', '-79.89390'), ('Rockville', 137, '32.60060', '-80.19500'), ('Saint Andrews', 96650, '32.78330', '-79.98330'), ('Seabrook Island', 1250, '32.57690', '-80.17080'), ('Secessionville', 2116, '32.70560', '-79.93940'), ('Shadowmoss', 79641, '32.85000', '-80.07500'), ('Snowden', 47609, '32.84140', '-79.84670'), ('South Santee', 459, '33.17330', '-79.41780'), ('South Windermere', 96650, '32.77580', '-79.98030'), ('Stiles Point', 2116, '32.73920', '-79.92360'), ('Stono', 96650, '32.73000', '-79.98250'), ('Sullivans Island', 1911, '32.76310', '-79.83690'), ('Wadmalaw Island', 3946, '32.68330', '-80.16670'), ('West Ashley', 96650, '32.80000', '-80.01000'), ('Whitehall Terrace', 4583, '32.87330', '-79.74860'), ('Yonges Island', 1230, '32.69330', '-80.23080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCC019': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Adams Run', 1230, '32.72060', '-80.34830'), ('Awendaw', 1195, '33.03750', '-79.61330'), ('Battery Point', 96650, '32.74280', '-79.94920'), ('Buck Hall', 459, '33.05310', '-79.56000'), ('Canady Landing', 707, '32.81530', '-80.40500'), ('Capwells Crossroads', 2214, '32.77920', '-80.26860'), ('Charleston', 96650, '32.78330', '-79.93750'), ('Charleston Airport', 79641, '32.89870', '-80.04050'), ('Citadel Mall', 96650, '32.79670', '-80.04000'), ('Delemar Crossroads', 2214, '32.84610', '-80.28440'), ('Dewees Island', 4583, '32.85000', '-79.71670'), ('Edisto Island', 641, '32.56000', '-80.28000'), ('Folly Beach', 2116, '32.65500', '-79.94060'), ('Fort Moultrie', 1911, '32.75890', '-79.85810'), ('Germantown', 459, '33.19530', '-79.44750'), ('Hanahan', 12937, '32.91830', '-80.02220'), ('Hobcaw Point', 47609, '32.82000', '-79.89420'), ('Hollywood', 3946, '32.73420', '-80.24190'), ('Huskum Corner Crosroads', 1163, '32.67500', '-80.05060'), ('James Island', 2116, '32.73330', '-79.93330'), ('Johns Island', 96650, '32.72500', '-80.07500'), ('Kiawah Island', 1163, '32.60810', '-80.08500'), ('Ladson', 13264, '32.98560', '-80.11000'), ('Lambs', 79641, '32.88640', '-80.06810'), ('Legareville', 1163, '32.65470', '-80.05310'), ('Lincolnville', 904, '33.00670', '-80.15560'), ('Maryville', 96650, '32.79220', '-79.99530'), ('McClellanville', 459, '33.08810', '-79.46140'), ('Meggett', 1230, '32.71780', '-80.23920'), ('Midland Park', 79641, '32.92060', '-80.04080'), ('Mount Pleasant', 47609, '32.79390', '-79.86280'), ('North Charleston', 79641, '32.85440', '-79.97500'), ('Northwoods Mall', 79641, '32.94080', '-80.04580'), ('Oakland', 96650, '32.78530', '-80.03530'), ('Otranto', 12937, '32.96500', '-80.04440'), ('Parkers Ferry', 1230, '32.76000', '-80.39640'), ('Rantowles', 2214, '32.78280', '-80.14890'), ('Ravenel', 2214, '32.76310', '-80.25030'), ('Red Top', 3946, '32.80250', '-80.12280'), ('Remleys Point', 47609, '32.80970', '-79.89390'), ('Rockville', 137, '32.60060', '-80.19500'), ('Saint Andrews', 96650, '32.78330', '-79.98330'), ('Seabrook Island', 1250, '32.57690', '-80.17080'), ('Secessionville', 2116, '32.70560', '-79.93940'), ('Shadowmoss', 79641, '32.85000', '-80.07500'), ('Snowden', 47609, '32.84140', '-79.84670'), ('South Santee', 459, '33.17330', '-79.41780'), ('South Windermere', 96650, '32.77580', '-79.98030'), ('Stiles Point', 2116, '32.73920', '-79.92360'), ('Stono', 96650, '32.73000', '-79.98250'), ('Sullivans Island', 1911, '32.76310', '-79.83690'), ('Wadmalaw Island', 3946, '32.68330', '-80.16670'), ('West Ashley', 96650, '32.80000', '-80.01000'), ('Whitehall Terrace', 4583, '32.87330', '-79.74860'), ('Yonges Island', 1230, '32.69330', '-80.23080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCC021': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Blacksburg', 1880, '35.12110', '-81.51870'), ('Gaffney', 12968, '35.07230', '-81.65610'), ('Saratt', 39, '34.89580', '-81.54030'), ('Thicketty', 2279, '35.01640', '-81.72500')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC023': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Blackstock', 6476, '34.55830', '-81.15250'), ('Chester', 6476, '34.70570', '-81.21420'), ('Cornwell', 6476, '34.60720', '-81.17940'), ('Edgemoor', 332, '34.80560', '-81.01170'), ('Fort Lawn', 864, '34.70110', '-80.89850'), ('Great Falls', 2194, '34.57460', '-80.90320'), ('Leeds', 496, '34.62940', '-81.39640'), ('Lowrys', 207, '34.80490', '-81.23820'), ('Richburg', 332, '34.71550', '-81.02030')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC025': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cheraw', 5524, '34.69640', '-79.89530'), ('Chesterfield', 1318, '34.73470', '-80.08470'), ('Jefferson', 704, '34.65140', '-80.38810'), ('McBee', 714, '34.46770', '-80.25830'), ('Mount Croghan', 155, '34.76930', '-80.22510'), ('Pageland', 2521, '34.77300', '-80.38970'), ('Patrick', 354, '34.57570', '-80.04470'), ('Ruby', 348, '34.74410', '-80.17970')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC027': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Central Crossroads', 613, '33.88780', '-79.91310'), ('Manning', 4025, '33.69380', '-80.21560'), ('Paxville', 248, '33.73980', '-80.36040'), ('Summerton', 1061, '33.60220', '-80.35180'), ('Turbeville', 602, '33.89030', '-80.01540')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC029': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ashepoo', 5153, '32.74000', '-80.55060'), ('Ashton', 114, '33.01580', '-80.97080'), ('Beck Landing', 707, '32.80440', '-80.41890'), ('Bells Crossroads', 116, '32.97890', '-80.85170'), ('Bennetts Point', 641, '32.56080', '-80.45470'), ('Blake', 807, '32.69170', '-80.76940'), ('Caldwell', 114, '33.04170', '-80.90390'), ('Canadys', 2092, '33.05560', '-80.62060'), ('Colleton', 116, '33.03970', '-80.88250'), ('Cottageville', 707, '32.93670', '-80.48110'), ('Drawdy', 5153, '32.84780', '-80.62500'), ('Fenwick', 1230, '32.65140', '-80.45170'), ('Gloverville', 707, '32.90000', '-80.49360'), ('Green Pond', 5153, '32.73170', '-80.61440'), ('Hendersonville', 5153, '32.79060', '-80.72560'), ('Hiotts', 707, '32.97860', '-80.54470'), ('Islandton', 116, '32.90890', '-80.93560'), ('Jacksonboro', 707, '32.77000', '-80.45470'), ('Lodge', 114, '33.06780', '-80.95390'), ('Moselle', 114, '32.96580', '-81.01280'), ('Neyles', 5153, '32.82500', '-80.55860'), ('Padgetts', 116, '33.07170', '-80.88640'), ('Parkers Ferry Land', 707, '32.85920', '-80.40390'), ('Rhodes Crossroads', 5153, '32.95860', '-80.71000'), ('Ritter', 5153, '32.78940', '-80.63060'), ('Round O', 707, '32.93690', '-80.54110'), ('Ruffin', 116, '33.00440', '-80.81580'), ('Salkehatchie', 807, '32.70610', '-80.81330'), ('Sidney', 707, '32.99940', '-80.56860'), ('Smoaks', 140, '33.08940', '-80.81420'), ('Smyly', 116, '33.02580', '-80.79580'), ('Springtown', 207, '33.09890', '-80.67640'), ('Stokes', 5153, '32.95920', '-80.72580'), ('Thayer', 5153, '32.87440', '-80.62890'), ('Walterboro', 5153, '32.90500', '-80.66690'), ('White Hall', 807, '32.72170', '-80.69060'), ('Wiggins', 504, '32.60440', '-80.54390'), ('Williams', 116, '33.03440', '-80.84280')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCC031': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Clyde', 0, '34.38000', '-80.18000'), ('Darlington', 6720, '34.30180', '-79.86610'), ('Dovesville', 0, '34.40000', '-79.90000'), ('Floyd', 0, '34.37000', '-79.90000'), ('Hartsville', 7556, '34.36950', '-80.08380'), ('Lamar', 1015, '34.16920', '-80.06570'), ('Lydia', 0, '34.28000', '-80.12000'), ('Mont Clare', 0, '34.40000', '-79.82000'), ('North Hartsville', 3136, '34.39950', '-80.07120'), ('Oats', 0, '34.25000', '-80.08000'), ('Society Hill', 700, '34.50920', '-79.85230')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC033': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bingham', 0, '34.43000', '-79.55000'), ('Dillon', 6316, '34.42200', '-79.36980'), ('Floydale', 0, '34.32000', '-79.33000'), ('Fork', 0, '34.28000', '-79.27000'), ('Lake View', 789, '34.34020', '-79.16690'), ('Latta', 1410, '34.33890', '-79.43400'), ('Little Rock', 0, '34.48000', '-79.40000'), ('Minturn', 0, '34.52000', '-79.47000'), ('Oak Grove', 0, '34.35000', '-79.55000'), ('Smithboro', 0, '34.28000', '-79.30000'), ('South Of The Border', 0, '34.50000', '-79.32000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC035': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Brownsville', 27752, '33.02860', '-80.19830'), ('Byrd', 2092, '33.16890', '-80.51720'), ('Canaan', 27752, '32.96560', '-80.29440'), ('Cat Hole', 207, '33.14440', '-80.69420'), ('Centerville', 27752, '32.99560', '-80.17060'), ('Clubhouse Crossroad', 2214, '32.89780', '-80.32280'), ('Cooke Crossroads', 27752, '32.94810', '-80.20580'), ('Dorchester', 594, '33.13970', '-80.39440'), ('Dorchester Estates', 27752, '32.96780', '-80.19690'), ('Duncan Chapel', 2092, '33.29580', '-80.56060'), ('Gettysville', 707, '32.90170', '-80.36420'), ('Giant', 594, '33.23690', '-80.44500'), ('Givhans', 1690, '33.01140', '-80.33780'), ('Greggs Landing', 904, '32.92830', '-80.15420'), ('Grover', 2092, '33.10500', '-80.59500'), ('Harleyville', 594, '33.21440', '-80.44810'), ('Hudsontown', 2092, '33.20580', '-80.59110'), ('Jedburg', 1690, '33.05560', '-80.23860'), ('Knightsville', 27752, '33.01140', '-80.23810'), ('Lotts Crossroads', 1690, '33.04080', '-80.24940'), ('Mount Zion', 2092, '33.22560', '-80.58750'), ('Norman Landing', 707, '32.98440', '-80.40860'), ('Oakbrook', 27752, '32.95830', '-80.17220'), ('Old Saint George', 2092, '33.17110', '-80.61250'), ('Orchard Hill', 27752, '33.02530', '-80.22280'), ('Pregnall', 594, '33.15610', '-80.46470'), ('Reevesville', 207, '33.20560', '-80.64810'), ('Ridgeville', 1690, '33.09560', '-80.31560'), ('Rosinville', 2092, '33.25440', '-80.52780'), ('Saint George', 2092, '33.18580', '-80.57580'), ('Slandsville', 27752, '32.98030', '-80.24170'), ('Stallsville', 27752, '32.99640', '-80.18220'), ('Summerville', 27752, '33.01830', '-80.17580'), ('Texas', 2092, '33.13190', '-80.55390'), ('Westoe', 27752, '32.94580', '-80.23360')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCC037': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Edgefield', 4449, '33.78940', '-81.93040'), ('Johnston', 2336, '33.83440', '-81.80510'), ('Murphys Estates', 1518, '33.60200', '-81.94000'), ('Trenton', 226, '33.74090', '-81.84020')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC039': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ridgeway', 328, '34.30660', '-80.96070'), ('Winnsboro', 3599, '34.37660', '-81.08970'), ('Winnsboro Mills', 2263, '34.35600', '-81.08300')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC041': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Coward', 650, '33.97210', '-79.74830'), ('Effingham', 0, '34.07000', '-79.75000'), ('Evergreen', 0, '34.07000', '-79.68000'), ('Florence', 30248, '34.18100', '-79.78040'), ('Johnsonville', 1418, '33.81680', '-79.44900'), ('Lake City', 6478, '33.86780', '-79.75320'), ('Olanta', 613, '33.93540', '-79.93280'), ('Pamplico', 1139, '33.99550', '-79.56900'), ('Quinby', 842, '34.23230', '-79.73260'), ('Scranton', 942, '33.91730', '-79.74360'), ('Timmonsville', 2315, '34.13420', '-79.94240')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC043': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Andrews', 3068, '33.44860', '-79.56620'), ('Georgetown', 8950, '33.36300', '-79.29610'), ('Jackson', 0, '33.50000', '-79.20000'), ('Lambert', 0, '33.33000', '-79.57000'), ('Litchfield Beach', 0, '33.47000', '-79.10000'), ('Murrells Inlet', 5519, '33.55490', '-79.05000'), ('Oatland', 0, '33.50000', '-79.35000'), ("Pawley's Island", 138, '33.42200', '-79.12610'), ('Plantersville', 0, '33.55000', '-79.22000'), ('Sampit', 0, '33.37000', '-79.45000'), ('Yauhannah', 0, '33.63000', '-79.18000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC043': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Andrews', 3068, '33.44860', '-79.56620'), ('Georgetown', 8950, '33.36300', '-79.29610'), ('Jackson', 0, '33.50000', '-79.20000'), ('Lambert', 0, '33.33000', '-79.57000'), ('Litchfield Beach', 0, '33.47000', '-79.10000'), ('Murrells Inlet', 5519, '33.55490', '-79.05000'), ('Oatland', 0, '33.50000', '-79.35000'), ("Pawley's Island", 138, '33.42200', '-79.12610'), ('Plantersville', 0, '33.55000', '-79.22000'), ('Sampit', 0, '33.37000', '-79.45000'), ('Yauhannah', 0, '33.63000', '-79.18000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC045': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Berea', 14158, '34.88150', '-82.46510'), ('Caesars Head', 2228, '35.10330', '-82.61420'), ('Cleveland', 2228, '35.07220', '-82.52750'), ('Downtown Greenville', 56002, '34.83870', '-82.37160'), ('Fork Shoals', 14352, '34.62250', '-82.30690'), ('Fountain Inn', 6017, '34.69350', '-82.20060'), ('Gowensville', 2472, '35.11470', '-82.22530'), ('Greer', 16843, '34.93900', '-82.23180'), ('Marietta', 2228, '35.03350', '-82.49420'), ('Mauldin', 15224, '34.78710', '-82.30150'), ('Paris Mountain State Park', 4099, '34.94500', '-82.39560'), ('Princeton', 65, '34.50080', '-82.28940'), ('Simpsonville', 14352, '34.73140', '-82.25900'), ('Taylors', 20125, '34.91520', '-82.31350'), ('Tigerville', 4099, '35.07100', '-82.37120'), ('Travelers Rest', 4099, '34.96720', '-82.43780'), ('Welcome', 5362, '34.82090', '-82.45800')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC047': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Callison', 105, '34.01440', '-82.12580'), ('Cokesbury', 279, '34.28920', '-82.20810'), ('Coronaca', 170, '34.25970', '-82.09440'), ('Dyson', 49, '34.16170', '-81.93250'), ('Greenwood', 170, '34.19020', '-82.15280'), ('Hodges', 158, '34.28760', '-82.24800'), ('Ninety Six', 1936, '34.17200', '-82.02350'), ('Troy', 105, '33.98740', '-82.29680'), ('Verdery', 170, '34.10920', '-82.24940'), ('Ware Shoals', 2363, '34.39010', '-82.24420')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC049': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Almeda', 2074, '32.82970', '-81.04940'), ('Barkerville', 807, '32.70560', '-80.93690'), ('Blountville', 807, '32.69640', '-80.85170'), ('Brighton', 227, '32.61250', '-81.27390'), ('Brunson', 589, '32.92530', '-81.18750'), ('Camp Branch', 2074, '32.81030', '-81.02330'), ('Crocketville', 2837, '32.91640', '-81.07750'), ('Cummings', 2074, '32.78690', '-80.99060'), ('Davidson', 807, '32.72470', '-80.90080'), ('De Loach', 286, '32.65970', '-81.17920'), ('Dukes', 370, '32.89750', '-81.23810'), ('Early Branch', 807, '32.74560', '-80.92810'), ('Estill', 2425, '32.75470', '-81.24220'), ('Fechtig', 807, '32.76890', '-80.96420'), ('Furman', 286, '32.68140', '-81.18830'), ('Garnett', 227, '32.60610', '-81.24560'), ('Gifford', 370, '32.85940', '-81.23920'), ('Hampton', 2837, '32.87780', '-81.12780'), ('Kress', 807, '32.64330', '-80.88440'), ('Lena', 2425, '32.75330', '-81.21530'), ('Luray', 115, '32.81360', '-81.24000'), ('McPhersonville', 807, '32.69170', '-80.91940'), ('Miley', 2074, '32.94780', '-81.03190'), ('Nixville', 286, '32.74280', '-81.15220'), ('Scotia', 227, '32.68080', '-81.24360'), ('Shirley', 227, '32.66000', '-81.31640'), ('Stafford', 286, '32.67000', '-81.16500'), ('Valentine', 115, '32.82330', '-81.25780'), ('Varnville', 2074, '32.85030', '-81.07940'), ('Yemassee', 807, '32.69000', '-80.85080')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCC051': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Allsbrook', 0, '34.02000', '-78.95000'), ('Atlantic Beach', 351, '33.80300', '-78.71750'), ('Aynor', 587, '33.99840', '-79.20110'), ('Bayboro', 0, '34.02000', '-79.02000'), ('Briarcliffe Acres', 470, '33.78910', '-78.74760'), ('Bucksport', 1117, '33.67200', '-79.11270'), ('Conway', 11788, '33.83860', '-79.06090'), ('Forestbrook', 3391, '33.72300', '-78.96610'), ('Galivants Ferry', 0, '34.05000', '-79.25000'), ('Garden City', 9357, '33.59260', '-79.00900'), ('Green Sea', 0, '34.13000', '-78.98000'), ('Little River', 7027, '33.87300', '-78.63150'), ('Longs', 0, '33.93000', '-78.73000'), ('Loris', 2079, '34.05660', '-78.89030'), ('Myrtle Beach', 22759, '33.69880', '-78.89220'), ('North Myrtle Beach', 10974, '33.82760', '-78.67110'), ('Red Hill', 10509, '33.78710', '-79.00970'), ('Socastee', 14295, '33.68710', '-79.00890'), ('Surfside Beach', 4425, '33.60960', '-78.97770')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC053': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bashan', 2518, '32.55140', '-80.94640'), ('Boyd', 2518, '32.44530', '-80.89640'), ('Chelsea', 1275, '32.35420', '-80.88830'), ('Coosawhatchie', 2518, '32.58860', '-80.92750'), ('Cosby', 227, '32.58170', '-81.24830'), ('Deerfield', 1793, '32.38220', '-81.09670'), ('Gillisonville', 2518, '32.61080', '-81.00390'), ('Gilmania', 807, '32.61170', '-80.91080'), ('Grahamville', 2518, '32.47390', '-80.96360'), ('Grays', 286, '32.67360', '-81.02060'), ('Hardeeville', 1793, '32.28690', '-81.08080'), ('Jasper', 1275, '32.34280', '-80.94940'), ('Knowles', 6625, '32.50940', '-80.85830'), ('Levy', 1793, '32.20280', '-81.02920'), ('Limehouse', 1793, '32.21250', '-81.07080'), ('Mitchellville', 2518, '32.46170', '-80.99220'), ('Morgan', 1793, '32.30360', '-81.08250'), ('Murad', 6625, '32.49580', '-80.87030'), ('Nevadum', 2518, '32.45860', '-80.88940'), ('Okatie', 1793, '32.35190', '-80.97830'), ('Old House', 2518, '32.45940', '-80.89670'), ('Pineland', 286, '32.60000', '-81.15970'), ('Pocotaligo', 807, '32.63690', '-80.86360'), ('Possum Corner', 807, '32.68420', '-80.97610'), ('Purysburgh', 1793, '32.29720', '-81.11940'), ('Ricetown', 2518, '32.51690', '-80.96690'), ('Ridgeland', 2518, '32.48060', '-80.98060'), ('Robertville', 286, '32.58640', '-81.19860'), ('Switzerland', 2518, '32.42750', '-81.00890'), ('Tarboro', 286, '32.53170', '-81.15440'), ('Tillman', 2518, '32.46330', '-81.10750')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCC053': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bashan', 2518, '32.55140', '-80.94640'), ('Boyd', 2518, '32.44530', '-80.89640'), ('Chelsea', 1275, '32.35420', '-80.88830'), ('Coosawhatchie', 2518, '32.58860', '-80.92750'), ('Cosby', 227, '32.58170', '-81.24830'), ('Deerfield', 1793, '32.38220', '-81.09670'), ('Gillisonville', 2518, '32.61080', '-81.00390'), ('Gilmania', 807, '32.61170', '-80.91080'), ('Grahamville', 2518, '32.47390', '-80.96360'), ('Grays', 286, '32.67360', '-81.02060'), ('Hardeeville', 1793, '32.28690', '-81.08080'), ('Jasper', 1275, '32.34280', '-80.94940'), ('Knowles', 6625, '32.50940', '-80.85830'), ('Levy', 1793, '32.20280', '-81.02920'), ('Limehouse', 1793, '32.21250', '-81.07080'), ('Mitchellville', 2518, '32.46170', '-80.99220'), ('Morgan', 1793, '32.30360', '-81.08250'), ('Murad', 6625, '32.49580', '-80.87030'), ('Nevadum', 2518, '32.45860', '-80.88940'), ('Okatie', 1793, '32.35190', '-80.97830'), ('Old House', 2518, '32.45940', '-80.89670'), ('Pineland', 286, '32.60000', '-81.15970'), ('Pocotaligo', 807, '32.63690', '-80.86360'), ('Possum Corner', 807, '32.68420', '-80.97610'), ('Purysburgh', 1793, '32.29720', '-81.11940'), ('Ricetown', 2518, '32.51690', '-80.96690'), ('Ridgeland', 2518, '32.48060', '-80.98060'), ('Robertville', 286, '32.58640', '-81.19860'), ('Switzerland', 2518, '32.42750', '-81.00890'), ('Tarboro', 286, '32.53170', '-81.15440'), ('Tillman', 2518, '32.46330', '-81.10750')], 'partOfState': '', 'wfo': 'CHS'}, +'SCC055': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bethune', 352, '34.41390', '-80.34910'), ('Camden', 6682, '34.26160', '-80.61170'), ('Elgin', 2426, '34.16900', '-80.78900'), ('Lugoff', 6278, '34.22570', '-80.68060')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC057': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Elgin', 2426, '34.67370', '-80.72170'), ('Heath Springs', 864, '34.59020', '-80.67450'), ('Irwin', 1343, '34.69370', '-80.82260'), ('Kershaw', 1645, '34.54510', '-80.58770'), ('Lancaster', 8177, '34.72390', '-80.77960'), ('Lancaster Mill', 2109, '34.71100', '-80.78300'), ('Springdale', 2864, '34.69700', '-80.78300')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC059': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Clinton', 8091, '34.47780', '-81.86610'), ('Cross Hill', 601, '34.30400', '-81.98320'), ('Gray Court', 1021, '34.60730', '-82.11290'), ('Hickory Tavern', 1021, '34.52110', '-82.18890'), ('Joanna', 1609, '34.41570', '-81.81080'), ('Laurens', 9916, '34.50160', '-82.02510'), ('Ora', 1535, '34.58170', '-81.99580'), ('Waterloo', 203, '34.35280', '-82.05820')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC061': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bishopville', 3670, '34.21990', '-80.24790'), ('Lynchburg', 588, '34.05920', '-80.07700')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC063': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Batesburg', 4380, '33.90740', '-81.54690'), ('Cayce', 12150, '33.95580', '-81.06090'), ('Chapin', 628, '34.16520', '-81.34800'), ('Gaston', 1304, '33.81580', '-81.10110'), ('Gilbert', 500, '33.92360', '-81.39420'), ('Leesville', 2235, '33.91810', '-81.51230'), ('Lexington', 9793, '33.98630', '-81.22900'), ('Oak Grove', 8183, '33.98060', '-81.14340'), ('Pelion', 553, '33.78020', '-81.24790'), ('Pine Ridge', 1593, '33.91090', '-81.09500'), ('Red Bank', 8811, '33.92890', '-81.23330'), ('Seven Oaks', 15755, '34.05100', '-81.14300'), ('South Congaree', 2266, '33.90950', '-81.13710'), ('Springdale', 2877, '33.95980', '-81.11240'), ('Summit', 219, '33.92430', '-81.42330'), ('Swansea', 533, '33.73610', '-81.10640'), ('West Columbia', 13064, '33.99150', '-81.08140')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC065': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Clarks Hill', 376, '33.66000', '-82.16000'), ('McCormick', 1489, '33.91000', '-82.29290'), ('Modoc', 256, '33.71500', '-82.21800'), ('Mount Carmel', 237, '34.00610', '-82.50790'), ('Parksville', 120, '33.78620', '-82.21790'), ('Plum Branch', 98, '33.84940', '-82.25920'), ('Willington', 177, '33.96900', '-82.45400')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC067': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Gresham', 0, '33.93000', '-79.42000'), ('Marion', 7042, '34.17590', '-79.40000'), ('Mullins', 5029, '34.20460', '-79.25360'), ('Nichols', 408, '34.23470', '-79.14930'), ('Rains', 0, '34.10000', '-79.32000'), ('Sellers', 277, '34.28250', '-79.47220')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC069': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bennettsville', 9425, '34.63160', '-79.68610'), ('Blenheim', 137, '34.51010', '-79.65260'), ('Brownsville', 0, '34.40000', '-79.60000'), ('Clio', 774, '34.57850', '-79.54640'), ('McColl', 2498, '34.66760', '-79.54530'), ('Tatum', 69, '34.64380', '-79.58670'), ('Wallace', 0, '34.72000', '-79.83000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC071': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Chappells', 49, '34.18250', '-81.87000'), ('Little Mountain', 255, '34.19500', '-81.41410'), ('Newberry', 10580, '34.27890', '-81.61190'), ('Peak', 61, '34.23810', '-81.32910'), ('Pomaria', 177, '34.26640', '-81.41980'), ('Prosperity', 1047, '34.21030', '-81.53430'), ('Silverstreet', 216, '34.21810', '-81.71480'), ('Whitmire', 1512, '34.50340', '-81.61560')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC073': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Fair Play', 1854, '34.51110', '-82.98560'), ('Long Creek', 147, '34.77330', '-83.25920'), ('Mountain Rest', 3801, '34.86920', '-83.15330'), ('Oakway', 2743, '34.60110', '-83.02580'), ('Salem', 126, '34.89150', '-82.97790'), ('Seneca', 7652, '34.68610', '-82.95780'), ('Walhalla', 3801, '34.77200', '-83.06180'), ('Westminster', 2743, '34.66620', '-83.09160')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC075': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bowman', 1198, '33.34890', '-80.68380'), ('Branchville', 1083, '33.25110', '-80.81580'), ('Brookdale', 4724, '33.51540', '-80.83500'), ('Cope', 107, '33.37820', '-81.00680'), ('Cordova', 157, '33.43560', '-80.92000'), ('Edisto', 2632, '33.47800', '-80.89800'), ('Elloree', 742, '33.52980', '-80.57240'), ('Eutawville', 344, '33.39790', '-80.34360'), ('Holly Hill', 1281, '33.32500', '-80.41370'), ('Livingston', 148, '33.55340', '-81.12010'), ('Neeses', 413, '33.53620', '-81.12610'), ('North', 813, '33.61710', '-81.10310'), ('Norway', 389, '33.44960', '-81.12680'), ('Orangeburg', 12765, '33.49390', '-80.86540'), ('Rowesville', 378, '33.37220', '-80.83630'), ('Santee', 740, '33.48010', '-80.48710'), ('Springfield', 504, '33.49570', '-81.27950'), ('Vance', 208, '33.43580', '-80.42150'), ('Wilkinson Heights', 3068, '33.49200', '-80.83300'), ('Woodford', 196, '33.66780', '-81.11170')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC077': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Central', 3522, '34.72330', '-82.78300'), ('Clemson', 11939, '34.68400', '-82.81290'), ('Dacusville', 14158, '34.93530', '-82.55890'), ('Easley', 17754, '34.82200', '-82.58800'), ('Liberty', 3009, '34.79250', '-82.69540'), ('Nine Times', 553, '34.91500', '-82.84420'), ('Norris', 847, '34.76480', '-82.75230'), ('Pickens', 3012, '34.88280', '-82.70810'), ('Pumpkintown', 3012, '35.00280', '-82.65310'), ('Rocky Bottom', 385, '35.04580', '-82.80250'), ('Six Mile', 553, '34.80780', '-82.81910')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC079': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Arcadia Lakes', 882, '34.05350', '-80.96210'), ('Blythewood', 170, '34.21700', '-80.97580'), ('Columbia', 116278, '34.00100', '-81.03500'), ('Dentsville', 13009, '34.07650', '-80.95610'), ('Eastover', 830, '33.87840', '-80.69570'), ('Forest Acres', 10558, '34.02630', '-80.97680'), ('Fort Jackson', 0, '34.03920', '-80.88630'), ('Irmo', 11039, '34.09360', '-81.18800'), ('Lake Murray Of Richland', 3526, '34.12000', '-81.26300'), ('St. Andrews', 21814, '34.04850', '-81.10340'), ('Woodfields', 9238, '34.05910', '-80.93100')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC081': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Monetta', 220, '33.84980', '-81.61050'), ('Ridge Spring', 823, '33.84520', '-81.66270'), ('Saluda', 3066, '34.00070', '-81.77150'), ('Ward', 110, '33.85720', '-81.73230')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC083': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Boiling Springs SC', 4544, '35.04500', '-81.97670'), ('Campobello', 449, '35.11660', '-82.14940'), ('Chesnee', 1003, '35.14790', '-81.86280'), ('Cowpens', 2279, '35.01880', '-81.80360'), ('Cross Anchor', 8091, '34.64280', '-81.85810'), ('Duncan', 2870, '34.93560', '-82.13700'), ('Enoree', 4229, '34.65640', '-81.96530'), ('Fingerville', 4544, '35.13390', '-82.00670'), ('Inman', 1884, '35.05200', '-82.09330'), ('Landrum', 2472, '35.17420', '-82.18700'), ('Lyman', 2659, '34.95140', '-82.12330'), ('Mayo', 1842, '35.08450', '-81.85440'), ('Moore', 1725, '34.83330', '-81.99220'), ('Pacolet', 2690, '34.89920', '-81.76670'), ('Pacolet Mills', 956, '34.91860', '-81.74720'), ('Pauline', 1725, '34.83310', '-81.87250'), ('Reidville', 478, '34.86280', '-82.11440'), ('Roebuck', 1725, '34.87610', '-81.96420'), ('Spartanburg', 39673, '34.94490', '-81.92830'), ('Wellford', 2030, '34.95680', '-82.09720'), ('Woodruff', 4229, '34.74040', '-82.03280')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC085': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cane Savannah', 1542, '33.89200', '-80.44000'), ('Cherryvale', 2461, '33.95400', '-80.46100'), ('Dalzell', 2260, '34.01900', '-80.43100'), ('East Sumter', 1220, '33.92600', '-80.29700'), ('Lakewood', 2603, '33.85200', '-80.35300'), ('Mayesville', 1001, '33.98710', '-80.20740'), ('Millwood', 885, '33.90970', '-80.39420'), ('Mulberry', 841, '33.95190', '-80.33310'), ('Oakland', 1272, '33.98790', '-80.49950'), ('Oswego', 95, '34.01000', '-80.28800'), ('Pinewood', 459, '33.73930', '-80.46270'), ('Privateer', 2118, '33.82200', '-80.39400'), ('Rembert', 406, '34.10000', '-80.53100'), ('Shiloh', 259, '33.93800', '-80.02700'), ('South Sumter', 3365, '33.88840', '-80.34040'), ('Stateburg', 1264, '33.97900', '-80.52600'), ('Sumter', 39643, '33.94440', '-80.39250'), ('Wedgewood', 1544, '33.89200', '-80.50500')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCC087': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Adamsburg', 39, '34.79110', '-81.52860'), ('Buffalo', 1462, '34.72430', '-81.68350'), ('Carlisle', 496, '34.59150', '-81.46470'), ('Cross Keys', 1462, '34.63190', '-81.77690'), ('Jonesville', 982, '34.83560', '-81.67990'), ('Lockhart', 39, '34.79470', '-81.46100'), ('Monarch Mills', 2214, '34.71900', '-81.58100'), ('Sedalia', 1462, '34.60390', '-81.72470'), ('Union', 8793, '34.72280', '-81.62380')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCC089': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cades', 0, '33.78000', '-79.78000'), ('Greeleyville', 452, '33.57790', '-79.98950'), ('Hebron', 0, '33.82000', '-79.88000'), ('Hemingway', 573, '33.75400', '-79.44400'), ('Kingstree', 3496, '33.66510', '-79.82920'), ('Lane', 585, '33.52480', '-79.88050'), ('Nesmith', 0, '33.67000', '-79.52000'), ('Stuckey', 263, '33.73090', '-79.51290'), ('Trio', 0, '33.48000', '-79.72000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCC091': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bullock Creek', 39, '34.85420', '-81.41190'), ('Catawba', 49765, '34.85280', '-80.91140'), ('Clover', 4014, '35.11210', '-81.22710'), ('Fort Mill', 7587, '35.00610', '-80.94350'), ('Hickory Grove', 337, '34.98200', '-81.41550'), ('Kings Mountain State Park', 516, '35.13560', '-81.36940'), ('Lake Wylie', 3061, '35.11080', '-81.05390'), ('McConnells', 287, '34.86870', '-81.22760'), ('Rock Hill', 49765, '34.93930', '-81.02840'), ('Sharon', 421, '34.95400', '-81.34430'), ('Smyrna', 59, '35.04200', '-81.41130'), ('Tega Cay', 4044, '35.03470', '-81.01880'), ('York', 6985, '34.99520', '-81.23610')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SDC003': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Plankinton', 601, '43.71570', '-98.48410'), ('Stickney', 334, '43.58960', '-98.43750'), ('White Lake', 405, '43.72840', '-98.71290')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDC005': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Broadland', 38, '44.49340', '-98.34810'), ('Cavour', 141, '44.37280', '-98.04100'), ('Hitchcock', 108, '44.62930', '-98.40780'), ('Huron', 11893, '44.36390', '-98.21780'), ('Virgil', 25, '44.29030', '-98.42670'), ('Wessington', 248, '44.45490', '-98.69620'), ('Wolsey', 418, '44.41090', '-98.47380'), ('Yale', 118, '44.43340', '-97.98910')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDC007': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Allen', 419, '43.28193', '-101.92648'), ('Harrington', 136, '43.16673', '-101.24998'), ('Lacreek Wildlife Refuge', 1106, '43.11573', '-101.52708'), ('Martin', 1106, '43.17233', '-101.73108'), ('Swett', 88, '43.17173', '-101.95408'), ('Tuthill', 1106, '43.15513', '-101.49458'), ('Vetal', 177, '43.21673', '-101.36668')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDC009': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Avon', 561, '43.00510', '-98.05910'), ('Scotland', 891, '43.14810', '-97.71950'), ('Springfield', 792, '42.85470', '-97.89300'), ('Tabor', 417, '42.94770', '-97.65970'), ('Tyndall', 1239, '42.98970', '-97.86460')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC011': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Aurora', 500, '44.28270', '-96.68660'), ('Brookings', 18504, '44.30630', '-96.78620'), ('Bruce', 272, '44.43810', '-96.88940'), ('Bushnell', 75, '44.32840', '-96.64320'), ('Elkton', 677, '44.23450', '-96.47980'), ('Oakwood State Park', 0, '44.44981', '-96.98564'), ('Sinai', 133, '44.24510', '-97.04300'), ('Volga', 1435, '44.32330', '-96.92260'), ('White', 530, '44.43340', '-96.64540')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDC013': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Aberdeen', 24658, '45.46750', '-98.48240'), ('Barnard', 125, '45.73210', '-98.49570'), ('Bath', 140, '45.46900', '-98.32380'), ('Claremont', 130, '45.67200', '-98.01450'), ('Columbia', 140, '45.61490', '-98.31160'), ('Ferney', 6, '45.33020', '-98.09720'), ('Frederick', 255, '45.83280', '-98.50660'), ('Groton', 1356, '45.45210', '-98.10010'), ('Hecla', 314, '45.88210', '-98.15140'), ('Houghton', 314, '45.76290', '-98.21050'), ('Putney', 1356, '45.56030', '-98.17530'), ('Richmond Lake Rec Area', 24658, '45.54190', '-98.61080'), ('Stratford', 96, '45.31710', '-98.30380'), ('Verdon', 6, '45.24470', '-98.09810'), ('Warner', 419, '45.32430', '-98.49520'), ('Westport', 125, '45.64790', '-98.49730')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC015': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Chamberlain', 2338, '43.80760', '-99.32020'), ('Kimball', 745, '43.74620', '-98.95710'), ('Pukwana', 287, '43.77890', '-99.18240')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDC017': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Fort Thompson', 1375, '44.04980', '-99.41200'), ('Gann Valley', 745, '44.03320', '-98.98780'), ('Lees Corner', 1375, '44.06980', '-99.32150'), ('Shelby', 287, '43.94800', '-99.18730')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC019': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Belle Fourche Reservoir', 62, '44.73333', '-103.69998'), ('Castle Rock', 646, '44.96743', '-103.42378'), ('Downtown Belle Fourche', 4565, '44.67003', '-103.84898'), ('Fruitdale', 62, '44.66803', '-103.69698'), ('Hoover', 646, '45.11003', '-103.26898'), ('Newell', 646, '44.71673', '-103.41668'), ('Nisland', 204, '44.67113', '-103.55448'), ('Vale', 646, '44.61673', '-103.39998')], 'partOfState': 'northwest', 'wfo': 'UNR'}, +'SDC021': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Artas', 13, '45.88770', '-99.80600'), ('Herreid', 482, '45.83690', '-100.07520'), ('Mound City', 84, '45.72680', '-100.06770'), ('Pollock', 339, '45.90150', '-100.29020')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC023': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Dante', 82, '43.03990', '-98.18640'), ('Geddes', 252, '43.25400', '-98.69730'), ('Lake Andes', 819, '43.15570', '-98.53500'), ('Marty', 421, '42.99290', '-98.42930'), ('Pickstown', 168, '43.06690', '-98.53050'), ('Platte', 1367, '43.38740', '-98.84390'), ('Ravinia', 79, '43.13600', '-98.42710'), ('Wagner', 1675, '43.07810', '-98.30160')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDC025': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bradley', 112, '45.09010', '-97.64140'), ('Carpenter', 118, '44.63850', '-97.91450'), ('Clark', 1285, '44.88070', '-97.73380'), ('Crocker', 21, '45.10530', '-97.78540'), ('Fordham Colony', 86, '44.76860', '-97.90920'), ('Garden City', 72, '44.95790', '-97.58070'), ('Hillcrest Colony', 1285, '44.95000', '-97.67750'), ('Mayfield Colony', 0, '44.68650', '-97.55550'), ('Naples', 25, '44.77130', '-97.51260'), ('Raymond', 86, '44.91110', '-97.93660'), ('Vienna', 78, '44.70310', '-97.49910'), ('Willow Lake', 294, '44.62790', '-97.63780')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC027': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Meckling', 418, '42.84070', '-97.07160'), ('Vermillion', 9765, '42.78200', '-96.92660'), ('Wakonda', 374, '43.00810', '-97.10540')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC029': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Florence', 299, '45.05560', '-97.32590'), ('Henry', 268, '44.88100', '-97.46260'), ('Kranzburg', 185, '44.88650', '-96.90980'), ('Rauville', 20237, '44.97520', '-97.07630'), ('Sandy Shore State Park', 20237, '44.89410', '-97.24220'), ('South Shore', 270, '45.10170', '-96.93000'), ('Wallace', 86, '45.08510', '-97.47730'), ('Watertown', 20237, '44.91260', '-97.16660'), ('Waverly', 270, '44.99920', '-96.97140')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC031': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Black Horse', 217, '45.71540', '-101.38060'), ('Bullhead', 308, '45.76790', '-101.08010'), ('Indian Memorial Rec Area', 3574, '45.57440', '-100.48370'), ('Keldron', 82, '45.93380', '-101.80650'), ('Kenel', 339, '45.85580', '-100.45850'), ('Klein Ranch', 217, '45.66580', '-101.34780'), ('Little Eagle', 370, '45.68160', '-100.79630'), ('Mahto', 370, '45.75630', '-100.67530'), ('McIntosh', 217, '45.92060', '-101.34960'), ('McLaughlin', 775, '45.81300', '-100.81100'), ('Morristown', 82, '45.93900', '-101.71830'), ('Shambo Ranch', 82, '45.53320', '-101.83420'), ('Thunder Hawk', 1398, '45.93750', '-101.98330'), ('Trail City', 370, '45.47330', '-100.73120'), ('Wakpala', 3574, '45.65700', '-100.53550'), ('Walker', 308, '45.91020', '-101.09030'), ('Watauga', 82, '45.92250', '-101.54030')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC033': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Argyle', 125, '43.53333', '-103.64998'), ('Blue Bell', 1860, '43.71633', '-103.48188'), ('Buffalo Gap', 164, '43.49043', '-103.31278'), ('Center Lake', 311, '43.80343', '-103.43038'), ('Crazy Horse Memorial', 1860, '43.82803', '-103.63198'), ('Custer Park Game Lodge', 25, '43.76603', '-103.38298'), ('Dewey', 867, '43.52923', '-104.03278'), ('Downtown Custer', 1860, '43.76653', '-103.60068'), ('Fairburn', 80, '43.68783', '-103.20878'), ('Folsom', 616, '43.83203', '-102.86578'), ('Hermosa', 315, '43.84003', '-103.19148'), ('Jewel Cave', 1860, '43.73333', '-103.83328'), ('Pringle', 125, '43.60903', '-103.58908'), ('Sanator', 1860, '43.69493', '-103.60318'), ('Stockade Lake', 1860, '43.76673', '-103.51668'), ('Sylvan Lake', 780, '43.85003', '-103.56668'), ('Wind Cave Visitors Center', 4129, '43.55643', '-103.47408')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDC035': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ethan', 330, '43.54590', '-97.98290'), ('Loomis', 47, '43.79440', '-98.10600'), ('Mitchell', 14558, '43.73260', '-98.03380'), ('Mount Vernon', 477, '43.71220', '-98.26090')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC037': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Andover', 99, '45.41060', '-97.90330'), ('Bristol', 377, '45.34660', '-97.74900'), ('Butler', 17, '45.25820', '-97.71120'), ('Crandall', 187, '45.15530', '-97.95560'), ('Grenville', 62, '45.46640', '-97.38970'), ('Lily', 21, '45.18140', '-97.68120'), ('Pickerel Lake Station', 62, '45.50170', '-97.28290'), ('Pierpont', 122, '45.49690', '-97.83110'), ('Roslyn', 225, '45.49660', '-97.49340'), ('Waubay', 662, '45.33320', '-97.30670'), ('Waubay Wildlife Rec Area', 62, '45.42520', '-97.34160'), ('Webster', 1952, '45.33570', '-97.52190')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC039': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Altamont', 34, '44.84040', '-96.69010'), ('Astoria', 150, '44.55770', '-96.54600'), ('Brandt', 113, '44.66550', '-96.62500'), ('Clear Lake', 1335, '44.76600', '-96.68130'), ('Gary', 231, '44.79520', '-96.45800'), ('Goodwin', 160, '44.87720', '-96.84850'), ('Lake Cochrane Rec Area', 231, '44.71130', '-96.46210'), ('Moritz', 231, '44.83400', '-96.56100'), ('Toronto', 202, '44.57240', '-96.64160'), ('Tunerville', 0, '44.89024', '-96.68090')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC041': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Eagle Butte', 0, '45.00090', '-101.23970'), ('Firesteel', 239, '45.42520', '-101.28460'), ('Green Grass', 58, '45.16770', '-101.25050'), ('Isabel', 239, '45.39580', '-101.42850'), ('Lantry', 0, '45.01660', '-101.41860'), ('Laplant', 3574, '45.14430', '-100.65100'), ('Little Moreau Rec Area', 443, '45.35450', '-101.09960'), ('Parade', 2163, '45.02350', '-101.10420'), ('Promise', 3574, '45.32910', '-100.60380'), ('Ridgeview', 2163, '45.08470', '-100.79990'), ('Timber Lake', 443, '45.42760', '-101.07420'), ('White Horse', 180, '45.27040', '-100.88780')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC043': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Armour', 782, '43.31940', '-98.34390'), ('Corsica', 644, '43.42430', '-98.40570'), ('Delmont', 263, '43.26600', '-98.15990'), ('Harrison', 51, '43.44000', '-98.52970')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDC045': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bowdle', 571, '45.45170', '-99.65590'), ('Cravens Corner', 943, '45.44820', '-98.92700'), ('Deerfield Colony', 462, '45.58820', '-98.90290'), ('Hosmer', 287, '45.57890', '-99.47370'), ('Ipswich', 943, '45.44410', '-99.02990'), ('Loyalton', 324, '45.28810', '-99.27870'), ('Mina', 12, '45.43810', '-98.75530'), ('Pembrook Colony', 943, '45.37650', '-99.00080'), ('Plainview Colony', 943, '45.58160', '-99.00660'), ('Roscoe', 324, '45.45030', '-99.33490')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC047': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Angostura Reservoir', 4129, '43.31673', '-103.43328'), ('Ardmore', 867, '43.02453', '-103.65798'), ('Cold Brook Reservoir', 4129, '43.46133', '-103.49158'), ('Cottonwood Springs Dam', 4129, '43.43473', '-103.56238'), ('Downtown Hot Springs', 4129, '43.43303', '-103.48028'), ('Edgemont', 867, '43.29853', '-103.82708'), ('Maverick Junction', 4129, '43.40063', '-103.39588'), ('Oelrichs', 145, '43.17853', '-103.23088'), ('Oral', 164, '43.40003', '-103.26668'), ('Provo', 867, '43.19133', '-103.83098'), ('Rumford', 867, '43.12803', '-103.69798'), ('Smithwick', 145, '43.30343', '-103.22288')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDC049': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Brentwood Colony', 0, '45.11520', '-99.30860'), ('Burkmere', 785, '45.04860', '-99.31180'), ('Chelsea', 33, '45.16720', '-98.74220'), ('Cresbard', 143, '45.16960', '-98.94760'), ('Devoe', 143, '45.09160', '-98.87870'), ('Faulkton', 785, '45.03430', '-99.12770'), ('Miranda', 57, '44.97220', '-98.96490'), ('Norbeck', 785, '45.18750', '-99.20610'), ('Onaka', 30, '45.19120', '-99.46460'), ('Orient', 57, '44.90290', '-99.08830'), ('Rockham', 53, '44.90500', '-98.82290'), ('Seneca', 58, '45.06100', '-99.50810')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC051': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Albee', 10, '45.05130', '-96.55430'), ('Big Stone City', 605, '45.29520', '-96.46440'), ('La Bolt', 95, '45.05000', '-96.67420'), ('Marvin', 66, '45.26090', '-96.91250'), ('Milbank', 3640, '45.21960', '-96.63480'), ('Revillo', 147, '45.01460', '-96.57030'), ('Stockholm', 105, '45.10250', '-96.79840'), ('Strandburg', 69, '45.04330', '-96.76100'), ('Troy', 270, '45.03490', '-96.86720'), ('Twin Brooks', 55, '45.20770', '-96.78690')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC053': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bonesteel', 297, '43.07810', '-98.94680'), ('Burke', 676, '43.18300', '-99.29250'), ('Dallas', 144, '43.23790', '-99.51770'), ('Dixon', 144, '43.38320', '-99.47390'), ('Fairfax', 123, '43.02810', '-98.88900'), ('Gregory', 1342, '43.23180', '-99.42510'), ('Herrick', 105, '43.11540', '-99.18720')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDC055': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Billsburg', 885, '44.40003', '-101.68328'), ('Grindstone', 6, '44.14173', '-101.96588'), ('Kirley', 619, '44.52423', '-101.31158'), ('Midland', 179, '44.07243', '-101.15228'), ('Milesville', 885, '44.45913', '-101.67858'), ('Ottumwa', 179, '44.23383', '-101.34098'), ('Philip', 885, '44.04583', '-101.66548')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDC057': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bryant', 396, '44.58990', '-97.46740'), ('Castlewood', 666, '44.72430', '-97.03070'), ('Estelline', 675, '44.57620', '-96.90010'), ('Hayti', 367, '44.65660', '-97.20400'), ('Hazel', 105, '44.75800', '-97.38010'), ('Lake Norden', 432, '44.57910', '-97.20800'), ('Stone Bridge', 666, '44.60280', '-97.05570'), ('Thomas', 367, '44.76080', '-97.20950')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC059': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ames', 1530, '44.26910', '-99.08470'), ('Burdette', 53, '44.70730', '-98.81000'), ('Danforth', 210, '44.25420', '-98.88330'), ('Miller', 1530, '44.52000', '-98.98770'), ('Miller Dale Colony', 85, '44.39990', '-99.11280'), ('Polo', 57, '44.77960', '-99.10960'), ('Ree Heights', 85, '44.51610', '-99.20040'), ('Saint Lawrence', 210, '44.51700', '-98.94000'), ('Vayland', 248, '44.49250', '-98.79880'), ('Zell', 53, '44.89270', '-98.72630')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC061': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Alexandria', 563, '43.65390', '-97.77900'), ('Emery', 439, '43.60270', '-97.62020'), ('Farmer', 18, '43.72480', '-97.68810'), ('Fulton', 86, '43.72820', '-97.82230')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC063': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Buffalo', 380, '45.58433', '-103.54758'), ('Camp Crook', 56, '45.55003', '-103.98328'), ('Gustave', 56, '45.28333', '-103.98328'), ('Harding', 56, '45.39503', '-103.83228'), ('Ladner', 380, '45.83333', '-103.73328'), ('Ludlow', 380, '45.83333', '-103.38328'), ('Ralph', 22, '45.77353', '-103.06518'), ('Redig', 380, '45.27123', '-103.54748'), ('Reva', 380, '45.54653', '-103.08298')], 'partOfState': 'northwest', 'wfo': 'UNR'}, +'SDC065': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Blunt', 370, '44.51550', '-99.98800'), ('Canning', 370, '44.39650', '-100.03200'), ('Grey Goose', 13876, '44.50460', '-100.35060'), ('Harrold', 209, '44.52330', '-99.73840'), ('Joe Creek Rec Area', 599, '44.14610', '-99.79680'), ('Oahe Mission Rec Area', 1991, '44.48280', '-100.52850'), ('Overlook Rec Area', 1991, '44.45860', '-100.38410'), ('Pierre', 13876, '44.37300', '-100.32250'), ('Rosseau', 370, '44.31640', '-100.07150'), ('Spring Creek Rec Area', 1991, '44.54680', '-100.47570'), ('West Bend Rec Area', 599, '44.17110', '-99.71920')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC067': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Clayton', 439, '43.44310', '-97.65730'), ('Dimock', 151, '43.47600', '-97.98770'), ('Freeman', 1317, '43.35090', '-97.43240'), ('Menno', 729, '43.23790', '-97.57710'), ('Olivet', 70, '43.24170', '-97.67350'), ('Parkston', 1674, '43.39330', '-97.98560'), ('Tripp', 711, '43.22500', '-97.96640')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC069': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Highmore', 851, '44.52070', '-99.43900'), ('Holabird', 209, '44.52380', '-99.59770'), ('Stephan', 1375, '44.24770', '-99.45260')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC071': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Belvidere', 57, '43.83423', '-101.27048'), ('Cactus Flat', 6, '43.84163', '-101.89888'), ('Cedar Pass', 77, '43.75003', '-101.94998'), ('Cottonwood', 6, '43.96383', '-101.89998'), ('Hisle', 641, '43.40763', '-101.74948'), ('Interior', 77, '43.72633', '-101.98078'), ('Kadoka', 706, '43.83203', '-101.50878'), ('Long Valley', 641, '43.46203', '-101.49358'), ('Minuteman Missile Site', 2, '43.87803', '-101.96098'), ('Potato Creek', 77, '43.53473', '-101.98588'), ('Wanblee', 641, '43.56853', '-101.65908')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDC073': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Alpena', 265, '44.18340', '-98.36790'), ('Lane', 59, '44.06920', '-98.42410'), ('Wessington Springs', 1011, '44.08080', '-98.57130')], 'partOfState': 'central', 'wfo': 'FSD'}, +'SDC075': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Capa', 179, '44.10970', '-100.97760'), ('Draper', 92, '43.92590', '-100.53770'), ('Murdo', 612, '43.88920', '-100.71360'), ('Okaton', 29, '43.88600', '-100.89190'), ('Van Metre', 612, '44.15910', '-100.79350'), ('Westover', 612, '43.74820', '-100.66570')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC077': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Arlington', 992, '44.36250', '-97.13390'), ('Badger', 144, '44.48570', '-97.20940'), ('Bancroft', 37, '44.48870', '-97.75040'), ('De Smet', 1164, '44.38660', '-97.54780'), ('Erwin', 58, '44.48820', '-97.44100'), ('Hetland', 43, '44.37650', '-97.23450'), ('Iroquois', 278, '44.36650', '-97.84970'), ('Lake Preston', 737, '44.36180', '-97.37620'), ('Lake Thompson State Recreation Area', 0, '44.32363', '-97.44010'), ('Oldham', 206, '44.22820', '-97.30860')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDC079': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Chester', 662, '43.89450', '-96.92510'), ('Lake Herman State Park', 0, '43.98831', '-97.16399'), ('Madison', 6540, '44.00840', '-97.10740'), ('Nunda', 47, '44.16100', '-97.01790'), ('Orland', 6540, '43.89270', '-97.18950'), ('Ramona', 190, '44.12010', '-97.21500'), ('Wentworth', 188, '43.99680', '-96.96430'), ('Winfred', 53, '43.99760', '-97.36260')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDC081': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Brownsville', 3027, '44.27433', '-103.69408'), ('Central City', 149, '44.36923', '-103.76918'), ('Cheyenne Crossing', 3027, '44.29843', '-103.86488'), ('Deadwood', 1380, '44.37603', '-103.73008'), ('Downtown Spearfish', 8606, '44.49703', '-103.85698'), ('Galena', 1380, '44.33333', '-103.64998'), ('Lead', 3027, '44.35213', '-103.76688'), ('Nemo', 2432, '44.19193', '-103.50428'), ("O'neil Pass", 3027, '44.20373', '-104.00358'), ('Roubaix Lake', 3027, '44.20003', '-103.66668'), ('Saint Onge', 844, '44.54843', '-103.72138'), ('Terry Peak', 3027, '44.33233', '-103.83408'), ('Whitewood', 844, '44.45933', '-103.63738')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDC083': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Canton', 3110, '43.30320', '-96.58090'), ('Fairview', 94, '43.22210', '-96.48900'), ('Harrisburg', 958, '43.43030', '-96.69580'), ('Hudson', 402, '43.12980', '-96.45550'), ('Inwood', 875, '43.21900', '-96.57190'), ('Lake Alvin State Recreation Area', 0, '43.44128', '-96.61351'), ('Lennox', 2037, '43.35280', '-96.89640'), ('Tea', 1742, '43.44810', '-96.83730'), ('Worthing', 585, '43.32890', '-96.76490')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC085': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Cedar Creek Rec Area', 286, '44.14910', '-99.93290'), ('Counselor Creek Recreation Area', 599, '44.03160', '-99.51070'), ('Iona', 390, '43.54270', '-99.42580'), ('Kennebec', 286, '43.90430', '-99.86240'), ('Lower Brule', 599, '44.07400', '-99.58250'), ('Lyman', 206, '43.87630', '-99.72630'), ('Oacoma', 390, '43.79920', '-99.38440'), ('Presho', 588, '43.90710', '-100.05770'), ('Reliance', 206, '43.88040', '-99.60230'), ('Tailwaters Rec Area', 1375, '44.03430', '-99.44070'), ('Vivian', 131, '43.92770', '-100.29150')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC087': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bridgewater', 607, '43.55020', '-97.49860'), ('Canistota', 700, '43.59750', '-97.29160'), ('Lake Vermillion State Recreation Area', 0, '43.58767', '-97.17157'), ('Montrose', 460, '43.70150', '-97.18300'), ('Salem', 1371, '43.72430', '-97.38860'), ('Spencer', 157, '43.72790', '-97.59170')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC089': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Eureka', 1101, '45.76870', '-99.62300'), ('Greenway', 13, '45.91240', '-99.71340'), ('Hillsview', 3, '45.66520', '-99.55950'), ('Leola', 462, '45.72130', '-98.93810'), ('Long Lake', 58, '45.85630', '-99.20620'), ('Long Lake Colony', 12, '45.60760', '-98.81930'), ('Spring Creek Colony', 56, '45.90910', '-98.88000'), ('Wetonka', 12, '45.62460', '-98.77000')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC091': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Amherst', 130, '45.73790', '-97.92170'), ('Britton', 1328, '45.78950', '-97.74950'), ('Eden', 97, '45.61620', '-97.42010'), ('Fort Sisseton Station', 97, '45.65730', '-97.52970'), ('Hillhead', 281, '45.83500', '-97.39210'), ('Kidder', 1328, '45.88320', '-97.71420'), ('Lake City', 47, '45.72380', '-97.41360'), ('Langford', 290, '45.60230', '-97.82950'), ('Roy Lake State Park', 47, '45.71030', '-97.43030'), ('Veblen', 281, '45.86190', '-97.28680')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC093': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bear Butte State Park', 6442, '44.48173', '-103.41868'), ('Black Hawk', 2432, '44.15173', '-103.31528'), ('Downtown Sturgis', 6442, '44.41163', '-103.51458'), ('Ellsworth AFB', 4165, '44.15003', '-103.09998'), ('Elm Springs', 75, '44.31303', '-102.52698'), ('Enning', 75, '44.57713', '-102.56128'), ('Fairpoint', 646, '44.74833', '-102.79638'), ('Faith', 489, '45.01673', '-102.03328'), ('Hereford', 616, '44.38333', '-102.88328'), ('Howes', 489, '44.62093', '-102.04898'), ('Marcus', 489, '44.66673', '-102.26668'), ('Maurine', 373, '45.01673', '-102.59998'), ('Mud Butte', 646, '45.00543', '-102.87578'), ('Opal', 489, '44.89413', '-102.61428'), ('Piedmont', 2432, '44.23333', '-103.39998'), ('Plainview', 489, '44.60473', '-102.16468'), ('Red Owl', 489, '44.69773', '-102.55168'), ('Stoneville', 616, '44.73903', '-102.65158'), ('Tilford', 6442, '44.30003', '-103.43328'), ('Union Center', 616, '44.56323', '-102.66898'), ('White Owl', 75, '44.59273', '-102.42738')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDC095': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Cedar Butte', 650, '43.57953', '-101.02168'), ('Mosher', 66, '43.46673', '-100.29998'), ('Norris', 650, '43.46673', '-101.19998'), ('White River', 598, '43.56733', '-100.74428'), ('Wood', 66, '43.49683', '-100.47978')], 'partOfState': 'south central', 'wfo': 'UNR'}, +'SDC097': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Canova', 140, '43.88080', '-97.50300'), ('Carthage', 187, '44.16890', '-97.71400'), ('Fedora', 21, '44.00820', '-97.78750'), ('Howard', 1071, '44.01190', '-97.52330'), ('Roswell', 21, '43.99910', '-97.70100'), ('Vilas', 19, '44.00850', '-97.59570')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDC099': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Baltic', 811, '43.75960', '-96.73840'), ('Brandon', 5693, '43.59130', '-96.57800'), ('Colton', 662, '43.78640', '-96.92700'), ('Crooks', 859, '43.66020', '-96.80730'), ('Current Lake', 637, '43.68870', '-96.51300'), ('Dell Rapids', 2980, '43.82490', '-96.71250'), ('Garretson', 1165, '43.71680', '-96.50030'), ('Hartford', 1844, '43.62350', '-96.94480'), ('Humboldt', 521, '43.64500', '-97.07400'), ('Rowena', 3543, '43.51990', '-96.55710'), ('Sherman', 87, '43.75770', '-96.47540'), ('Sioux Falls', 123975, '43.54420', '-96.73010'), ('Valley Springs', 792, '43.58320', '-96.46470'), ('Wall Lake', 1844, '43.52890', '-96.96000')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC101': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Colman', 572, '43.98470', '-96.81590'), ('Egan', 265, '43.99970', '-96.65050'), ('Flandreau', 2376, '44.04690', '-96.59770'), ('Trent', 254, '43.90690', '-96.65730'), ('Ward', 41, '44.15540', '-96.46080')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDC103': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Box Elder', 2841, '44.11963', '-103.07208'), ('Caputa', 2841, '43.99533', '-102.98418'), ('Creighton', 818, '44.25303', '-102.20778'), ('Deerfield', 780, '44.02373', '-103.83708'), ('Deerfield Reservoir', 780, '44.01673', '-103.79998'), ('Downtown Rapid City', 59607, '44.08103', '-103.22598'), ('Farmingdale', 616, '43.96763', '-102.89498'), ('Harney Peak', 780, '43.86773', '-103.54158'), ('Hayward', 311, '43.86973', '-103.33208'), ('Hill City', 780, '43.93213', '-103.57138'), ('Hisega', 2561, '44.05373', '-103.40228'), ('Johnson Siding', 200, '44.08403', '-103.43998'), ('Keystone', 311, '43.88853', '-103.42528'), ('Moon', 3003, '43.94783', '-104.00638'), ('Mount Rushmore', 311, '43.88123', '-103.45318'), ('Mystic', 780, '44.06673', '-103.64998'), ('New Underwood', 616, '44.10003', '-102.83328'), ('Owanka', 75, '44.01973', '-102.58468'), ('Pactola Reservoir', 780, '44.06673', '-103.49998'), ('Pinnacles Ranger Station', 818, '43.86673', '-102.23328'), ('Quinn', 44, '43.98733', '-102.13018'), ('Rapid City Airport', 10, '44.03803', '-103.05898'), ('Rapid Valley', 7043, '44.07253', '-103.12958'), ('Rochford', 3027, '44.12403', '-103.71998'), ('Rockerville', 2561, '43.95903', '-103.35928'), ('Scenic', 75, '43.78333', '-102.54998'), ('Sheridan Lake', 311, '43.97033', '-103.46568'), ('Silver City', 780, '44.08773', '-103.56548'), ('Wall', 818, '43.99163', '-102.23908'), ('Wasta', 75, '44.06933', '-102.44588'), ('Wicksville', 75, '44.10003', '-102.56668')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDC105': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bison', 373, '45.52433', '-102.46508'), ('Chance', 373, '45.40963', '-102.27928'), ('Date', 373, '45.36673', '-102.64998'), ('Lemmon', 1398, '45.93843', '-102.15818'), ('Lodgepole', 1574, '45.80883', '-102.66198'), ('Meadow', 373, '45.53333', '-102.21668'), ('Prairie City', 373, '45.53333', '-102.79998'), ('Shadehill', 1398, '45.76673', '-102.18328'), ('Shadehill Reservoir', 1398, '45.75003', '-102.24998'), ('Sorum', 373, '45.45263', '-102.93718'), ('Usta', 489, '45.21833', '-102.16158'), ('White Butte', 158, '45.93903', '-102.35938'), ('Zeona', 373, '45.19173', '-102.92058')], 'partOfState': 'northwest', 'wfo': 'UNR'}, +'SDC107': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Gettysburg', 1352, '45.00650', '-99.95350'), ('Gorman', 82, '44.92700', '-100.07500'), ('Hoven', 511, '45.24180', '-99.77640'), ('Lebanon', 86, '45.06890', '-99.76590'), ('Tolstoy', 64, '45.20680', '-99.61470'), ('Whitlocks Bay Rec Area', 82, '45.04330', '-100.26410')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC109': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Claire City', 85, '45.85640', '-97.10240'), ('Corona', 112, '45.33480', '-96.76520'), ('New Effington', 233, '45.85520', '-96.91810'), ('Ortley', 54, '45.33520', '-97.20400'), ('Peever', 209, '45.54250', '-96.95570'), ('Rosholt', 419, '45.86610', '-96.73170'), ('Rudebusch Corner', 54, '45.42820', '-97.15450'), ('Sisseton', 2572, '45.66240', '-97.04610'), ('Summit', 281, '45.30380', '-97.03680'), ('Victor', 233, '45.86870', '-96.83570'), ('White Rock', 18, '45.92530', '-96.57250'), ('Wilmot', 543, '45.40930', '-96.85690')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC111': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Artesian', 157, '44.00850', '-97.92300'), ('Forestburg', 177, '44.02170', '-98.10890'), ('Letcher', 177, '43.89780', '-98.14350'), ('Woonsocket', 720, '44.05470', '-98.27370')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDC113': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Batesland', 88, '43.12820', '-102.10130'), ('Kyle', 970, '43.42323', '-102.18808'), ('Manderson', 626, '43.23953', '-102.47068'), ('Oglala', 1229, '43.18333', '-102.73328'), ('Pine Ridge', 3171, '43.02753', '-102.55478'), ('Porcupine', 407, '43.23333', '-102.33328'), ('Red Shirt', 80, '43.65483', '-102.89238'), ('Rockyford', 626, '43.50003', '-102.49998'), ('Sharps Corner', 407, '43.38333', '-102.39998'), ('Slim Butte', 1229, '43.05953', '-102.82208'), ('Wounded Knee', 328, '43.14203', '-102.36348')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDC115': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ashton', 152, '44.99350', '-98.49820'), ('Athol', 152, '45.00950', '-98.59680'), ('Brentford', 65, '45.15920', '-98.32150'), ('Clark Colony', 86, '44.78960', '-97.98020'), ('Conde', 187, '45.15780', '-98.09670'), ('Doland', 297, '44.89440', '-98.09920'), ('Frankfort', 166, '44.87740', '-98.30860'), ('Glendale Colony', 166, '44.79930', '-98.28760'), ('Hillside Colony', 297, '44.73880', '-98.04590'), ('Mansfield', 124, '45.24210', '-98.56120'), ('Mellette', 248, '45.15400', '-98.49800'), ('Northville', 124, '45.15490', '-98.57850'), ('Redfield', 2897, '44.87300', '-98.52040'), ('Spink Colony', 166, '44.74660', '-98.29200'), ('Spottswood', 221, '44.65210', '-98.50560'), ('Tulare', 221, '44.73880', '-98.50870'), ('Turton', 61, '45.04900', '-98.09650')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDC117': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bunker', 179, '44.23850', '-101.10180'), ('Chantler Creek Recreation Area', 1991, '44.48070', '-100.61730'), ('Fort Pierre', 1991, '44.36270', '-100.37930'), ('Hayes', 179, '44.37120', '-101.02370'), ('Mission Ridge', 1991, '44.68880', '-100.79130'), ('Sansarc', 179, '44.50660', '-101.03490'), ('Wendte', 1991, '44.24380', '-100.66480'), ('West Shore Rec Area', 1991, '44.45070', '-100.45140')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC119': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Agar', 82, '44.83870', '-100.07250'), ('Cow Creek Rec Area', 1991, '44.56160', '-100.49750'), ('Okobojo Creek Rec Area', 1991, '44.60740', '-100.46530'), ('Onida', 740, '44.70470', '-100.06650'), ('Sutton Bay Rec Area', 82, '44.88080', '-100.35680')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDC121': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Hidden Timber', 180, '43.23103', '-100.42598'), ('Lakeview', 1557, '43.11293', '-100.74818'), ('Littleburg', 2826, '43.04643', '-100.44978'), ('Mission', 904, '43.30653', '-100.66048'), ('Okreek', 66, '43.36673', '-100.38328'), ('Parmelee', 650, '43.32303', '-101.02128'), ('Rosebud', 1557, '43.23243', '-100.85198'), ('Saint Francis', 675, '43.14233', '-100.90198'), ('Spring Creek', 136, '43.11673', '-101.01668')], 'partOfState': 'south central', 'wfo': 'UNR'}, +'SDC123': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Carter', 51, '43.38703', '-100.20668'), ('Clearfield', 3137, '43.16673', '-100.03328'), ('Colome', 340, '43.26003', '-99.71568'), ('Hamill', 11, '43.59643', '-99.67868'), ('Ideal', 3137, '43.54423', '-99.90068'), ('Keyapaha', 51, '43.10003', '-100.13328'), ('Millboro', 340, '43.06673', '-99.96668'), ('Wewela', 304, '43.01153', '-99.77758'), ('Winner', 3137, '43.37393', '-99.85868'), ('Witten', 87, '43.43843', '-100.08598')], 'partOfState': 'south central', 'wfo': 'UNR'}, +'SDC125': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Centerville', 910, '43.11770', '-96.95890'), ('Chancellor', 328, '43.37240', '-96.98740'), ('Davis', 104, '43.25830', '-96.99580'), ('Dolton', 41, '43.49150', '-97.38480'), ('Hurley', 426, '43.27980', '-97.09030'), ('Irene', 432, '43.08370', '-97.15810'), ('Marion', 892, '43.42400', '-97.26060'), ('Monroe', 163, '43.48710', '-97.21600'), ('Parker', 1031, '43.39620', '-97.13840'), ('Viborg', 832, '43.17120', '-97.08050')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC127': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Alcester', 880, '43.02310', '-96.62870'), ('Beresford', 2006, '43.07970', '-96.78010'), ('Elk Point', 1714, '42.68270', '-96.68080'), ('Jefferson', 586, '42.60350', '-96.56140'), ('North Sioux City', 2288, '42.53660', '-96.50210'), ('Union Grove State Park', 0, '42.92169', '-96.77378')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC129': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Akaska', 31, '45.33190', '-100.12070'), ('Glenham', 139, '45.53330', '-100.27030'), ('Indian Creek Rec Area', 3574, '45.51860', '-100.38630'), ('Java', 197, '45.50360', '-99.88420'), ('Lowry', 10, '45.31540', '-99.98200'), ('Mobridge', 3574, '45.54070', '-100.43580'), ('Selby', 736, '45.50470', '-100.03240'), ('Swan Creek Rec Area', 31, '45.31580', '-100.26390')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDC135': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Gayville', 418, '42.88820', '-97.17280'), ('Lesterville', 158, '43.03870', '-97.59050'), ('Mayfield', 432, '43.08190', '-97.31760'), ('Mission Hill', 183, '42.92120', '-97.27910'), ('Utica', 86, '42.98130', '-97.49620'), ('Volin', 207, '42.95900', '-97.18070'), ('Yankton', 13528, '42.88980', '-97.39210')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDC137': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bridger', 489, '44.55133', '-101.91008'), ('Cherry Creek', 434, '44.60003', '-101.49998'), ('Dupree', 434, '45.05063', '-101.59098'), ('Glad Valley', 239, '45.40003', '-101.78328'), ('Iron Lightning', 489, '45.18003', '-101.84038'), ('Red Elm', 434, '45.05623', '-101.79068'), ('Red Scaffold', 489, '44.76943', '-101.84948'), ('South Eagle Butte', 619, '44.99003', '-101.23298'), ('Thunder Butte', 434, '45.21323', '-101.68048')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'TNC001': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clinton', 9409, '36.09080', '-84.13050'), ('Lake City', 1888, '36.22420', '-84.15600'), ('Norris', 1446, '36.21310', '-84.06100'), ('Oak Ridge', 27387, '35.96270', '-84.29620'), ('Rosedale', 3303, '36.17030', '-84.35170')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC003': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bell Buckle', 391, '35.59070', '-86.35410'), ('Normandy', 141, '35.45140', '-86.25810'), ('Shelbyville', 16105, '35.49040', '-86.44670'), ('Wartrace', 494, '35.52780', '-86.33290')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC005': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Big Sandy', 518, '36.23270', '-88.08570'), ('Camden', 3828, '36.06440', '-88.10490')], 'partOfState': 'middle', 'wfo': 'MEG'}, +'TNC007': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Brayton', 1411, '35.46920', '-85.18500'), ('Melvine', 1781, '35.73220', '-85.05970'), ('Mount Crest', 1781, '35.66860', '-85.24170'), ('Old Cumberland', 4173, '35.54750', '-85.37440'), ('Palio', 4173, '35.46920', '-85.32190'), ('Pikeville', 1781, '35.60670', '-85.19580')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC009': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alcoa', 7734, '35.79300', '-83.97920'), ('Cades Cove', 244, '35.59670', '-83.81060'), ('Clover Hill', 890, '35.70810', '-84.06720'), ('Eagleton Village', 4883, '35.79400', '-83.93670'), ('Friendsville', 890, '35.75720', '-84.13040'), ('Happy Valley', 23120, '35.60810', '-83.95810'), ('Maryville', 23120, '35.74750', '-83.97300'), ('Talassee', 954, '35.54810', '-84.06080'), ('Townsend', 244, '35.67610', '-83.75190'), ('Walland', 244, '35.72530', '-83.81530'), ('Wildwood', 4883, '35.80250', '-83.87360')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC011': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Charleston', 630, '35.28720', '-84.76040'), ('Cleveland', 37192, '35.17760', '-84.86750'), ('Flint Springs', 3050, '35.03330', '-84.90720'), ('Gap Springs', 3050, '35.00440', '-84.78610'), ('Hopewell', 1815, '35.23490', '-84.90530'), ('McDonald', 5372, '35.11170', '-84.98420'), ('Tasso', 37192, '35.20440', '-84.81030'), ('Waterville', 3050, '35.10640', '-84.86470')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC013': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Caryville', 2243, '36.32440', '-84.21930'), ('Disney', 1888, '36.24810', '-84.17220'), ('Elk Valley', 2448, '36.48170', '-84.24940'), ('Fincastle', 7926, '36.40860', '-84.04970'), ('Jacksboro', 1887, '36.33180', '-84.19100'), ('Jellico', 2448, '36.57710', '-84.12870'), ('La Follette', 7926, '36.37300', '-84.12710'), ('Royal Blue', 2243, '36.38170', '-84.27890'), ('White Oak', 2448, '36.53360', '-84.03500')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC015': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Auburntown', 252, '35.94890', '-86.09430'), ('Woodbury', 2287, '35.82480', '-86.07050')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC017': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Atwood', 1000, '35.97700', '-88.67100'), ('Bruceton', 1554, '36.03440', '-88.24710'), ('Buena Vista', 963, '35.98330', '-88.28330'), ('Cedar Grove', 259, '35.81670', '-88.60000'), ('Clarksburg', 285, '35.87160', '-88.38980'), ('Hollow Rock', 963, '36.03520', '-88.27260'), ('Huntingdon', 4349, '36.00850', '-88.41200'), ('McKenzie', 5295, '36.13960', '-88.51130'), ('McLemoresville', 259, '35.98600', '-88.57940'), ('Middle Fork', 285, '35.86670', '-88.50000'), ('Trezevant', 901, '36.01350', '-88.62000'), ('Vale', 963, '36.11670', '-88.26670')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC019': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Elizabethton', 13372, '36.33880', '-82.23200'), ('Elk Mills', 486, '36.26940', '-81.99190'), ('Hampton', 13372, '36.28190', '-82.17470'), ('Hunter', 1566, '36.37880', '-82.16330'), ('Milligan College', 2872, '36.26940', '-82.29920'), ('Roan Mountain', 1160, '36.18370', '-82.07390'), ('Sadie', 1566, '36.43190', '-82.05670'), ('Watauga', 389, '36.36800', '-82.29230')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC021': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ashland City', 3641, '36.27690', '-87.05980'), ('Kingston Springs', 2773, '36.09650', '-87.10040'), ('Pegram', 2146, '36.10430', '-87.05670')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC023': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Enville', 230, '35.38790', '-88.42470'), ('Henderson', 5670, '35.44490', '-88.64770'), ('Jacks Creek', 5670, '35.46670', '-88.53330'), ('Masseyville', 60, '35.30000', '-88.71670'), ('Mifflin', 5670, '35.55000', '-88.58330')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC025': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Arthur', 2865, '36.54640', '-83.67310'), ('Clairfield', 2448, '36.54830', '-83.95170'), ('Harrogate-Shawanee', 2865, '36.58140', '-83.64370'), ('Howard Quarter', 2165, '36.47250', '-83.41280'), ('Lone Mountain', 2871, '36.38780', '-83.58640'), ('Sandlick', 2871, '36.39690', '-83.68310'), ('Springdale', 2871, '36.42390', '-83.69110'), ('Tazewell', 2165, '36.45820', '-83.57600')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC027': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Celina', 1379, '36.54830', '-85.50200')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC029': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bybee', 7242, '36.04420', '-83.18140'), ('Cosby', 477, '35.81470', '-83.25080'), ('Del Rio', 207, '35.91780', '-83.02830'), ('Hartford', 7242, '35.81470', '-83.14560'), ('Newport', 7242, '35.96020', '-83.19120'), ('Parrottsville', 207, '36.00930', '-83.09130'), ('Round Mountain', 478, '35.83670', '-82.96220')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC031': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Manchester', 8294, '35.46860', '-86.08080'), ('Tullahoma', 16761, '35.37120', '-86.21550')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC033': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alamo', 2392, '35.78260', '-89.11570'), ('Bells', 2171, '35.71840', '-89.08530'), ('Chestnut Bluff', 901, '35.86670', '-89.33300'), ('Friendship', 608, '35.91030', '-89.24180'), ('Gadsden', 553, '35.77840', '-88.98360'), ('Maury City', 704, '35.81550', '-89.22380')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC035': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Crab Orchard', 838, '35.90960', '-84.88210'), ('Crossville', 8981, '35.95190', '-85.03680'), ('Fairfield Glade', 4885, '36.00010', '-84.89940'), ('Pleasant Hill', 544, '35.97500', '-85.19720')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC037': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Belle Meade', 2943, '36.09880', '-86.85500'), ('Berry Hill', 674, '36.11930', '-86.76780'), ('Forest Hills', 4710, '36.06340', '-86.83680'), ('Nashville', 504505, '36.17160', '-86.78480'), ('Oak Hill', 4493, '36.07690', '-86.78690')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC039': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Decaturville', 859, '35.58230', '-88.11920'), ('Parsons', 2452, '35.65330', '-88.12500')], 'partOfState': 'middle', 'wfo': 'MEG'}, +'TNC041': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alexandria', 814, '36.07670', '-86.03460'), ('Dowelltown', 302, '36.01310', '-85.94310'), ('Liberty', 367, '36.00400', '-85.97780'), ('Smithville', 3994, '35.95710', '-85.82080')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC043': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Burns', 1366, '36.05320', '-87.31200'), ('Charlotte', 1153, '36.18470', '-87.34750'), ('Dickson', 12244, '36.07670', '-87.37710'), ('Slayden', 185, '36.29320', '-87.46780'), ('Vanleer', 369, '36.23740', '-87.44480'), ('White Bluff', 1988, '36.10590', '-87.21350')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC045': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bradleytown', 17452, '36.03330', '-89.41670'), ('Dyersburg', 17452, '36.03920', '-89.38020'), ('Heloise', 7389, '36.05000', '-89.66670'), ('Millsfield', 17452, '36.15000', '-89.38330'), ('Miston', 1667, '36.16670', '-89.48330'), ('Newbern', 2988, '36.11640', '-89.26800'), ('Roellen', 2988, '36.01670', '-89.25000'), ('Trimble', 728, '36.20220', '-89.18890'), ('Unionville', 17452, '35.96000', '-89.45000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC047': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Braden', 271, '35.36970', '-89.57590'), ('Gallaway', 666, '35.33830', '-89.60350'), ('Lagrange', 136, '35.05000', '-89.21670'), ('La Grange', 136, '35.04930', '-89.23470'), ('Moscow', 422, '35.06130', '-89.39680'), ('Oakland', 1279, '35.22420', '-89.51340'), ('Piperton', 589, '35.02650', '-89.63020'), ('Rossville', 380, '35.04380', '-89.54290'), ('Somerville', 2519, '35.23750', '-89.35070'), ('Williston', 427, '35.15940', '-89.37600')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC049': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Allardt', 642, '36.38100', '-84.88140'), ('Jamestown', 1839, '36.43210', '-84.93530')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC051': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cowan', 1770, '35.16520', '-86.01610'), ('Decherd', 2246, '35.20930', '-86.08790'), ('Estill Springs', 2152, '35.26450', '-86.13100'), ('Huntland', 916, '35.05580', '-86.26860'), ('Sewanee', 2361, '35.20150', '-85.92050'), ('Winchester', 6305, '35.18840', '-86.10850')], 'partOfState': 'middle', 'wfo': 'HUN'}, +'TNC053': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bradford', 1113, '36.07390', '-88.81770'), ('Dyer', 2406, '36.07090', '-88.99200'), ('Eaton', 608, '35.96670', '-89.13330'), ('Gibson', 305, '35.87400', '-88.84590'), ('Humboldt', 9467, '35.82180', '-88.90650'), ('Kenton', 1306, '36.19970', '-89.01420'), ('Medina', 969, '35.80340', '-88.77430'), ('Milan', 7664, '35.91890', '-88.75460'), ('Rutherford', 1272, '36.12540', '-88.99280'), ('Trenton', 4683, '35.97210', '-88.93960'), ('Yorkville', 347, '36.09870', '-89.11900')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC055': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ardmore', 1082, '34.99990', '-86.85660'), ('Elkton', 510, '35.06020', '-86.89640'), ('Lynnville', 345, '35.37790', '-87.00560'), ('Minor Hill', 437, '35.03840', '-87.17110'), ('Pulaski', 7871, '35.19570', '-87.03430')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC057': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bean Station', 24965, '36.34190', '-83.28470'), ('Blaine', 1585, '36.14440', '-83.69490'), ('Buffalo Springs', 1187, '36.21640', '-83.56500'), ('Joppa', 1187, '36.23610', '-83.61640'), ('Rutledge', 1187, '36.27420', '-83.52480'), ('Thorn Hill', 1187, '36.35720', '-83.41860')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC059': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Baileyton', 504, '36.32800', '-82.83060'), ('Camp Creek', 2004, '36.08610', '-82.76560'), ('Caney Branch', 207, '36.04610', '-82.98580'), ('Cedar Creek', 478, '36.02310', '-82.90360'), ('Chucky', 2004, '36.21390', '-82.69080'), ('Greeneville', 15198, '36.16530', '-82.81900'), ('Jearoldstown', 504, '36.36030', '-82.82190'), ('Mohawk', 714, '36.19940', '-83.05530'), ('Mosheim', 1749, '36.19220', '-82.95680'), ('Romeo', 1749, '36.29000', '-82.93860'), ('Tusculum', 2004, '36.17560', '-82.75090')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC061': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Altamont', 1136, '35.42970', '-85.72840'), ('Beersheba Springs', 553, '35.45740', '-85.67130'), ('Coalmont', 948, '35.33900', '-85.71340'), ('Gruetli-Laager', 1867, '35.37100', '-85.63710'), ('Palmer', 726, '35.35790', '-85.56520'), ('Tracy City', 1679, '35.25900', '-85.75190')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC063': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alpha', 24965, '36.17580', '-83.38420'), ('Lowland', 1997, '36.15250', '-83.20860'), ('Morristown', 24965, '36.21460', '-83.29600'), ('Russellville', 24965, '36.25780', '-83.19610')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC065': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Birchwood', 1411, '35.36140', '-84.99330'), ('Chattanooga', 155554, '35.06620', '-85.25700'), ('Collegedale', 6514, '35.04470', '-85.05030'), ('East Brainerd', 14132, '35.01380', '-85.10890'), ('Harrison', 7630, '35.12790', '-85.14600'), ('Middle Valley', 11854, '35.18770', '-85.18940'), ('Ooltewah', 5681, '35.06250', '-85.09110'), ('Red Bank', 12418, '35.11140', '-85.29500'), ('Sale Creek', 1411, '35.38110', '-85.10970'), ('Shady Grove', 732, '35.25220', '-85.12110'), ('Signal Mountain', 7429, '35.13040', '-85.34210'), ('Soddy-Daisy', 11530, '35.26260', '-85.17220')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC067': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Evanston', 1257, '36.50640', '-83.28830'), ('Kyles Ford', 927, '36.57030', '-83.04420'), ('Sneedville', 1257, '36.53760', '-83.21110'), ('Treadway', 1257, '36.41560', '-83.22690')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC069': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bolivar', 5802, '35.26400', '-88.99910'), ('Cloverport', 330, '35.40000', '-89.01670'), ('Grand Junction', 301, '35.04920', '-89.18860'), ('Hickory Valley', 136, '35.15480', '-89.12650'), ('Hornsby', 306, '35.22970', '-88.83040'), ('Middleton', 602, '35.06030', '-88.89140'), ('Pocahontas', 602, '35.05000', '-88.81670'), ('Saulsbury', 99, '35.04920', '-89.08880'), ('Silerton', 60, '35.35000', '-88.81670'), ('Toone', 330, '35.35300', '-88.95350'), ('Whiteville', 3148, '35.32760', '-89.14770')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC071': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Crump', 1521, '35.23980', '-88.32180'), ('Morris Chapel', 287, '35.31670', '-88.35000'), ('Olive Hill', 2699, '35.26670', '-88.03330'), ('Pickwick Dam', 6917, '35.05000', '-88.25000'), ('Saltillo', 342, '35.37780', '-88.21050'), ('Savannah', 6917, '35.22290', '-88.23720'), ('Shiloh', 312, '35.11670', '-88.36670'), ('Walnut Grove', 250, '35.05000', '-88.05000')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC073': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bulls Gap', 714, '36.26420', '-83.07900'), ('Church Hill', 5916, '36.52530', '-82.71200'), ('Kepler', 1484, '36.39970', '-82.88720'), ('Klondike', 1257, '36.43860', '-83.13220'), ('McCloud', 4240, '36.36530', '-82.97110'), ('Mooresburg', 24965, '36.34610', '-83.22970'), ('Mount Carmel', 4795, '36.56090', '-82.65870'), ('Okolona', 5916, '36.58140', '-82.77470'), ('Rogersville', 4240, '36.40670', '-83.00520'), ('St. Clair', 714, '36.32920', '-83.08560'), ('Surgoinsville', 1484, '36.47330', '-82.85790')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC075': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Belle Eagle', 10748, '35.68330', '-89.25000'), ('Brownsville', 10748, '35.59450', '-89.25500'), ('Dancyville', 615, '35.41670', '-89.30000'), ('Forked Deer', 901, '35.76670', '-89.40000'), ('Hillville', 3148, '35.45000', '-89.16670'), ('Holly Grove', 2171, '35.65000', '-89.13330'), ('Nutbush', 7844, '35.70000', '-89.41670'), ('Stanton', 615, '35.46200', '-89.40080')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC077': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bargerton', 241, '35.73330', '-88.50000'), ('Blue Goose', 7393, '35.70000', '-88.58320'), ('Darden', 2452, '35.63330', '-88.23330'), ('Lexington', 7393, '35.65390', '-88.39300'), ("Parker's Cross Roads", 241, '35.78880', '-88.39270'), ('Reagan', 445, '35.51670', '-88.35000'), ('Sardis', 445, '35.44310', '-88.29430'), ('Scotts Hill', 894, '35.51540', '-88.25060'), ('Wildersville', 241, '35.78330', '-88.36670')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC079': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cottage Grove', 97, '36.37980', '-88.47790'), ('Cronanville', 2855, '36.43500', '-88.47700'), ('Henry', 520, '36.20050', '-88.41060'), ('Paris', 9763, '36.30020', '-88.30730'), ('Puryear', 667, '36.44250', '-88.33480'), ('Routon', 520, '36.23330', '-88.38330'), ('Springville', 518, '36.25000', '-88.15000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC081': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Centerville', 3793, '35.79410', '-87.44980')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC083': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Erin', 1490, '36.31590', '-87.70260'), ('Tennessee Ridge', 1334, '36.31980', '-87.76380')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC085': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('McEwen', 1702, '36.10680', '-87.63570'), ('New Johnsonville', 1905, '36.01690', '-87.95740'), ('Waverly', 3925, '36.09240', '-87.78780')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC087': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Gainesboro', 879, '36.36050', '-85.65380')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC089': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Chestnut Hill', 2078, '35.93000', '-83.34030'), ('Dandridge', 2078, '36.02310', '-83.41870'), ('Jefferson City', 7760, '36.11900', '-83.48760'), ('New Market', 1234, '36.09890', '-83.55240'), ('Piedmont', 1234, '36.02530', '-83.52810'), ('Strawberry Plains', 2119, '36.06250', '-83.68720'), ('White Pine', 1997, '36.09930', '-83.29770')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC091': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Doeville', 2383, '36.38690', '-81.97190'), ('Laurel Bloomery', 918, '36.55830', '-81.76110'), ('Mountain City', 2383, '36.47180', '-81.80530'), ('Neva', 2383, '36.39030', '-81.86530'), ('Shady Valley', 2383, '36.51720', '-81.92780'), ('Trade', 2383, '36.34610', '-81.74750')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC093': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bearden', 173890, '35.93310', '-84.00360'), ('Farragut', 17720, '35.87440', '-84.18220'), ('Halls', 6450, '36.08180', '-83.93290'), ('Karns', 1458, '35.97600', '-84.11820'), ('Kimberlin Heights', 8850, '35.92970', '-83.75190'), ('Knoxville', 173890, '35.97460', '-83.94630'), ('Lake Forest', 173890, '35.92610', '-83.86830'), ('Maloneyville', 2119, '36.08530', '-83.83610'), ('Mascot', 2119, '36.06820', '-83.76610'), ('Powell', 7534, '36.03370', '-84.02830')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC095': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cottonwood Grove', 1667, '36.23330', '-89.53330'), ('Ridgely', 1667, '36.26450', '-89.48260'), ('Tiptonville', 2439, '36.37730', '-89.47230')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC097': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ashport', 1338, '35.76670', '-89.80000'), ('Edith', 7844, '35.85000', '-89.55000'), ('Ft Pillow', 309, '35.66670', '-89.75000'), ('Fulton', 489, '35.61670', '-89.88330'), ('Gates', 901, '35.83940', '-89.40780'), ('Halls', 2311, '35.86670', '-89.40000'), ('Henning', 970, '35.67330', '-89.57540'), ('Ripley', 7844, '35.74590', '-89.53410')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC099': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ethridge', 536, '35.32120', '-87.30230'), ('Iron City', 368, '35.02560', '-87.58370'), ('Lawrenceburg', 10796, '35.24570', '-87.33800'), ('Loretto', 1665, '35.08030', '-87.43610'), ('St. Joseph', 829, '35.02950', '-87.50610')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC101': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Hohenwald', 3754, '35.55090', '-87.55970')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC103': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Fayetteville', 6994, '35.14990', '-86.56440'), ('Petersburg', 580, '35.31710', '-86.64010')], 'partOfState': 'middle', 'wfo': 'HUN'}, +'TNC105': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Greenback', 954, '35.65180', '-84.17520'), ('Lenoir City', 6819, '35.80090', '-84.27100'), ('Loudon', 4476, '35.73530', '-84.35780'), ('Philadelphia', 533, '35.67910', '-84.40040')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC107': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Athens', 13220, '35.45150', '-84.60200'), ('Calhoun', 496, '35.29700', '-84.74730'), ('Clear Water', 13220, '35.50390', '-84.65280'), ('Dentville', 3663, '35.27970', '-84.60830'), ('Englewood', 1590, '35.42260', '-84.48970'), ('Etowah', 3663, '35.33500', '-84.52890'), ('Hillsview', 496, '35.38670', '-84.80330'), ('Murray Store', 781, '35.61470', '-84.62640'), ('Niota', 781, '35.51460', '-84.54930'), ('Riceville', 496, '35.38250', '-84.69530')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC109': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Acton', 647, '35.01670', '-88.46670'), ('Adamsville', 1983, '35.23470', '-88.38760'), ('Bethel Springs', 763, '35.23550', '-88.60990'), ('Eastview', 618, '35.08900', '-88.55380'), ('Finger', 350, '35.35470', '-88.61550'), ('Guys', 483, '35.01590', '-88.54420'), ('McNairy', 350, '35.31670', '-88.63330'), ('Michie', 647, '35.06290', '-88.42750'), ('Milledgeville', 287, '35.37600', '-88.36660'), ('Ramer', 354, '35.07030', '-88.61770'), ('Selmer', 4541, '35.17180', '-88.59000'), ('Stantonville', 312, '35.15810', '-88.42830')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC111': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Lafayette', 3885, '36.52450', '-86.03090'), ('Red Boiling Spring', 1023, '36.53170', '-85.85070')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC113': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Adair', 553, '35.71670', '-88.96670'), ('Bemis', 59643, '35.58330', '-88.83330'), ('Fairview', 9467, '35.76670', '-88.85000'), ('Jackson', 59643, '35.63370', '-88.82850'), ('Medon', 191, '35.45850', '-88.86570'), ('Mercer', 330, '35.48330', '-89.03330'), ('Spring Creek', 969, '35.76670', '-88.68330')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC115': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Griffith Creek', 726, '35.28890', '-85.55190'), ('Haletown (Guild)', 3214, '35.02720', '-85.53920'), ('Jasper', 3214, '35.05990', '-85.62870'), ('Martin Springs', 1660, '35.16560', '-85.53920'), ('Monteagle', 1238, '35.22820', '-85.83070'), ('Orme', 124, '35.01190', '-85.80640'), ('Powells Crossroads', 1286, '35.18350', '-85.48290'), ('South Pittsburg', 3295, '35.01580', '-85.71140'), ('Whitwell', 1660, '35.20150', '-85.51870')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC117': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Chapel Hill', 943, '35.62810', '-86.69620'), ('Cornersville', 962, '35.35870', '-86.84100'), ('Lewisburg', 10413, '35.44700', '-86.78810')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC119': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Columbia', 33055, '35.62250', '-87.04900'), ('Mount Pleasant', 4491, '35.55130', '-87.19120'), ('Spring Hill', 7715, '35.74200', '-86.92370')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC121': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Big Spring', 6180, '35.39560', '-84.90030'), ('Decatur', 1395, '35.52500', '-84.79120'), ('Peakland', 1395, '35.62670', '-84.76390'), ('Ten Mile', 1395, '35.66560', '-84.66610')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC123': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bullet Creek', 3663, '35.27810', '-84.42810'), ('Citico', 859, '35.39920', '-84.11810'), ('Citico Beach', 954, '35.53470', '-84.10920'), ('Coker Creek', 859, '35.26310', '-84.28750'), ('Madisonville', 3939, '35.52280', '-84.35990'), ('Mount Vernon', 859, '35.41140', '-84.36390'), ('Sweetwater', 5586, '35.60030', '-84.46830'), ('Tariffville', 1162, '35.48580', '-84.18030'), ('Tellico Plains', 859, '35.36650', '-84.29900'), ('Vonore', 1162, '35.59680', '-84.23190')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC125': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clarksville', 103455, '36.56110', '-87.34730')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC127': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Lynchburg', 4721, '35.28420', '-86.35740')], 'partOfState': 'middle', 'wfo': 'HUN'}, +'TNC129': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Deerlodge', 577, '36.19920', '-84.76190'), ('High Point', 4885, '36.14860', '-84.82830'), ('Oakdale', 244, '35.98880', '-84.55790'), ('Petros', 3303, '36.09190', '-84.44670'), ('Pine Orchard', 5774, '35.96610', '-84.65580'), ('Rugby', 642, '36.35860', '-84.70440'), ('Sunbright', 577, '36.24170', '-84.67170'), ('Wartburg', 577, '36.10340', '-84.58820')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC131': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clayton', 2689, '36.46670', '-89.25000'), ('Cloverdale', 435, '36.23330', '-89.33330'), ('Hornbeak', 435, '36.33140', '-89.29690'), ('Obion', 1134, '36.26080', '-89.19200'), ('Rives', 331, '36.35710', '-89.04970'), ('Samburg', 260, '36.38230', '-89.35190'), ('South Fulton', 2517, '36.49200', '-88.88490'), ('Troy', 1273, '36.33950', '-89.16160'), ('Union City', 10513, '36.42250', '-89.05100'), ('Woodland Mills', 398, '36.47630', '-89.11260')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC133': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Livingston', 3498, '36.38870', '-85.32750')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC135': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Linden', 1015, '35.61120', '-87.84390'), ('Lobelville', 915, '35.75100', '-87.79710')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC137': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Byrdstown', 903, '36.57400', '-85.13330')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC139': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Archville', 1138, '35.13140', '-84.52640'), ('Benton', 1138, '35.17530', '-84.65280'), ('Big Frog Mountain', 427, '35.00060', '-84.53060'), ('Conasauga', 3050, '35.00250', '-84.73060'), ('Ducktown', 427, '35.03580', '-84.38980'), ('Parksville', 1138, '35.09810', '-84.65220'), ('Reliance', 1138, '35.18610', '-84.56690'), ('Turtletown', 427, '35.12610', '-84.35500')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC141': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Algood', 2942, '36.19770', '-85.44720'), ('Baxter', 1279, '36.15430', '-85.63830'), ('Cookeville', 23923, '36.15690', '-85.50540'), ('Monterey', 2717, '36.13300', '-85.24430')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC143': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Dayton', 6180, '35.49280', '-85.01300'), ('Evensville', 6180, '35.56280', '-84.95690'), ('Grandview', 2025, '35.74330', '-84.83860'), ('Graysville', 1411, '35.44780', '-85.08250'), ('Old Washington', 6180, '35.53170', '-84.90920'), ('Spring City', 2025, '35.68740', '-84.86410')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC145': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bradbury', 5264, '35.86970', '-84.39030'), ('Dearmond', 244, '35.96640', '-84.48530'), ('Eagle Furnace', 5774, '35.77080', '-84.73670'), ('Fairview', 5264, '35.78970', '-84.57670'), ('Harriman', 6744, '35.93340', '-84.56170'), ('Kingston', 5264, '35.87010', '-84.51010'), ('Oliver Springs', 3303, '36.03640', '-84.33700'), ('Paint Rock', 533, '35.73640', '-84.51670'), ('Rockwood', 5774, '35.87410', '-84.67520')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC147': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Adams', 566, '36.58160', '-87.06510'), ('Black Jack', 0, '36.63365', '-86.56388'), ('Cedar Hill', 298, '36.55060', '-87.00010'), ('Cross Plains', 1381, '36.54010', '-86.68120'), ('Greenbrier', 4940, '36.42300', '-86.80090'), ('Orlinda', 594, '36.60070', '-86.67190'), ('Ridgetop', 1083, '36.39670', '-86.77340'), ('Springfield', 14329, '36.49950', '-86.87870'), ('White House', 2987, '36.46320', '-86.66780')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC149': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Eagleville', 464, '35.74010', '-86.65360'), ('La Vergne', 18687, '35.99930', '-86.57320'), ('Murfreesboro', 68816, '35.85340', '-86.39460'), ('Smyrna', 25569, '35.98260', '-86.51720'), ('Walterhill', 1043, '35.96280', '-86.37920')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC151': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Big South Fork National', 3615, '36.52000', '-84.67310'), ('Elgin', 981, '36.33030', '-84.60940'), ('Huntsville', 981, '36.41360', '-84.48750'), ('Ketchen', 911, '36.56810', '-84.32030'), ('Norma', 981, '36.33470', '-84.38780'), ('Oneida', 3615, '36.50390', '-84.51500'), ('Slick Rock', 981, '36.30080', '-84.50720'), ('Smokey Junction', 2243, '36.28670', '-84.36580'), ('Winfield', 911, '36.56180', '-84.45050')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC153': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cagle', 4173, '35.47420', '-85.46250'), ('Cartwright', 1660, '35.27690', '-85.46030'), ('Dunlap', 4173, '35.37270', '-85.38650'), ('Lone Oak', 1578, '35.19810', '-85.36560')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC155': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bird Crossing', 2078, '35.91170', '-83.36560'), ('Elkmont', 3382, '35.65220', '-83.58220'), ('Gatlinburg', 3382, '35.72340', '-83.49370'), ('Harrisburg', 11757, '35.86250', '-83.48440'), ('Kodak', 11757, '35.97310', '-83.62860'), ('McMahan', 11757, '35.91500', '-83.67310'), ('Pigeon Forge', 5083, '35.79270', '-83.55810'), ('Pittman Center', 477, '35.75880', '-83.38830'), ('Sevierville', 11757, '35.89200', '-83.57820'), ('Seymour', 8850, '35.87470', '-83.77390'), ('Wears Valley', 244, '35.71360', '-83.65580')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC157': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Arlington', 2569, '35.28220', '-89.66420'), ('Bartlett', 40543, '35.21550', '-89.83530'), ('Collierville', 31872, '35.05530', '-89.67850'), ('Downtown Memphis', 650100, '35.13330', '-90.05000'), ('Eads', 6862, '35.20000', '-89.66670'), ('Ellendale', 40543, '35.23330', '-89.83330'), ('Frayser', 650100, '35.21670', '-89.97000'), ('Germantown', 37348, '35.08890', '-89.79170'), ('Lakeland', 6862, '35.24020', '-89.72980'), ('Midtown Memphis', 99, '35.13330', '-89.98330'), ('Millington', 10433, '35.33440', '-89.88830'), ('Southeast Memphis', 37348, '35.06670', '-89.88330'), ('Southwest Memphis', 650100, '35.05000', '-90.06670'), ('Whitehaven', 17949, '35.01670', '-90.03330')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC159': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Carthage', 2251, '36.25680', '-85.94370'), ('Gordonsville', 1066, '36.18310', '-85.93260'), ('South Carthage', 1302, '36.24070', '-85.95800')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC161': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cumberland City', 316, '36.38220', '-87.64400'), ('Dover', 1442, '36.48140', '-87.84370')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC163': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bloomingdale', 10350, '36.57830', '-82.50840'), ('Blountville', 2959, '36.53310', '-82.32730'), ('Bluff City', 1559, '36.46370', '-82.27420'), ('Bristol TN', 24821, '36.56780', '-82.19740'), ('Colonial Heights', 7067, '36.47960', '-82.51180'), ('Harr', 7003, '36.58560', '-81.99470'), ('Kingsport', 44905, '36.52960', '-82.55690'), ('South Holston Dam', 24821, '36.52440', '-82.08940'), ('Sullivan Gardens', 1313, '36.47720', '-82.59670'), ('Tri-City Airport', 3498, '36.48000', '-82.40000')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC165': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Gallatin', 23230, '36.37870', '-86.45310'), ('Goodlettsville', 13780, '36.33370', '-86.70380'), ('Hendersonville', 40620, '36.29400', '-86.60350'), ('Millersville', 5308, '36.38180', '-86.70130'), ('Mitchellville', 207, '36.63270', '-86.53920'), ('Portland', 8458, '36.58590', '-86.51660'), ('Westmoreland', 1726, '36.56380', '-86.24690')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC167': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Atoka', 3235, '35.44520', '-89.77270'), ('Brighton', 1719, '35.47980', '-89.73900'), ('Burlison', 453, '35.55870', '-89.78540'), ('Covington', 8463, '35.56710', '-89.64940'), ('Dixonville', 3235, '35.42314', '-89.94600'), ('Garland', 309, '35.58650', '-89.75200'), ('Gilt Edge', 489, '35.53280', '-89.83070'), ('Mason', 1089, '35.41320', '-89.53660'), ('Munford', 4708, '35.44980', '-89.80420')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNC169': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Hartsville', 2395, '36.39000', '-86.15960')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC171': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Banner Hill', 1053, '36.12760', '-82.40560'), ('Erwin', 5610, '36.14490', '-82.41090'), ('Limestone Cove', 2872, '36.17860', '-82.26330'), ('Rocky Fork', 1053, '36.03390', '-82.55390'), ('Unicoi', 5610, '36.19390', '-82.35170')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC173': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Luttrell', 915, '36.20880', '-83.74460'), ('Maynardville', 1782, '36.24690', '-83.80620'), ('Norris Lake', 1782, '36.29220', '-83.91470'), ('Paulette', 1782, '36.19060', '-83.89140'), ('Rose Hill', 1782, '36.30500', '-83.76190'), ('Sharps Chapel', 1782, '36.34140', '-83.80560')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC175': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Spencer', 1713, '35.74230', '-85.45670')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC177': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Centertown', 257, '35.72480', '-85.91970'), ('McMinnville', 12749, '35.68750', '-85.77630'), ('Morrison', 684, '35.60240', '-85.91850'), ('Viola', 123, '35.53800', '-85.86060')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC179': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Avondale', 4168, '36.30970', '-82.46420'), ('Embreeville', 5610, '36.17970', '-82.46110'), ('Fall Branch', 1313, '36.41720', '-82.62340'), ('Gray', 1273, '36.41120', '-82.47970'), ('Johnson City', 55469, '36.33140', '-82.36870'), ('Jonesborough', 4168, '36.29360', '-82.47770'), ('Leesburg', 4168, '36.29220', '-82.54470'), ('Liberty', 2004, '36.14000', '-82.61920'), ('Limestone', 2004, '36.22720', '-82.63280')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNC181': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clifton', 2699, '35.38140', '-87.99260'), ('Collinwood', 1024, '35.17640', '-87.74430'), ('Waynesboro', 1824, '35.32280', '-87.75780')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC183': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Dresden', 2855, '36.27740', '-88.69040'), ('Gleason', 1463, '36.21560', '-88.61020'), ('Greenfield', 2208, '36.15540', '-88.80140'), ('Latham', 2855, '36.42339', '-88.71400'), ('Martin', 10515, '36.34230', '-88.85850'), ('Palmersville', 97, '36.41670', '-88.58330'), ('Sharon', 988, '36.23320', '-88.82490')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNC185': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Doyle', 525, '35.85210', '-85.51280'), ('Sparta', 4599, '35.93450', '-85.47310')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC187': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Brentwood', 23445, '35.99670', '-86.78770'), ('Fairview', 5800, '35.97970', '-87.12420'), ('Franklin', 41842, '35.92940', '-86.84200'), ('Nolensville', 3099, '35.94790', '-86.64800')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNC189': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Belinda City', 2098, '36.17000', '-86.47790'), ('Green Hill', 7068, '36.23480', '-86.57090'), ('Lebanon', 20235, '36.20980', '-86.32220'), ('Mount Juliet', 12366, '36.20620', '-86.52250'), ('Rural Hill', 2032, '36.11140', '-86.51130'), ('Watertown', 1250, '36.09960', '-86.13950')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TXC001': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Elkhart', 1215, '31.62830', '-95.57840'), ('Frankston', 1209, '32.05510', '-95.50360'), ('Palestine', 18042, '31.75650', '-95.64650')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC003': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Andrews', 9652, '32.32170', '-102.54950'), ('Florey', 9652, '32.45000', '-102.59000'), ('Frankel City', 9652, '32.39000', '-102.78000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC005': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Burke', 315, '31.22830', '-94.76920'), ('Diboll', 5470, '31.18860', '-94.78350'), ('Hudson', 3792, '31.33010', '-94.79720'), ('Huntington', 2068, '31.27980', '-94.57750'), ('Lufkin', 32709, '31.33350', '-94.72610'), ('Zavalla', 701, '31.15690', '-94.41740')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXC007': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fulton', 1553, '28.07130', '-97.03580'), ('Rockport', 4753, '28.04070', '-97.05150')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC009': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Archer City', 1848, '33.59350', '-98.62520'), ('Dundee', 0, '33.74110', '-98.90290'), ('Holliday', 1632, '33.81520', '-98.69450'), ('Lake Diversion', 0, '33.80490', '-98.95170'), ('Lake Kickapoo', 0, '33.64590', '-98.81300'), ('Lakeside City', 984, '33.82880', '-98.54560'), ('Mankins', 0, '33.78240', '-98.79750'), ('Megargel', 248, '33.45330', '-98.92920'), ('Scotland', 490, '33.65920', '-98.46970'), ('Windthorst', 367, '33.57550', '-98.43670')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC011': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Claude', 1313, '35.10730', '-101.36230'), ('Goodnight', 587, '35.03440', '-101.18583'), ('Washburn', 1313, '35.17670', '-101.57278'), ('Wayside', 647, '34.79280', '-101.54667')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC013': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Campbellton', 436, '28.75000', '-98.30000'), ('Charlotte', 1637, '28.85920', '-98.70000'), ('Christine', 436, '28.78520', '-98.49860'), ('Jourdanton', 3732, '28.91270', '-98.54140'), ('Leming', 3305, '29.06660', '-98.48330'), ('Lytle', 2255, '29.23410', '-98.79710'), ('Pleasanton', 7678, '28.96460', '-98.49150'), ('Poteet', 3305, '29.03740', '-98.57510')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC015': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bellville', 3794, '29.94640', '-96.25870'), ('San Felipe', 618, '29.79860', '-96.10560'), ('Sealy', 4541, '29.77370', '-96.15290'), ('Wallis', 1001, '29.63130', '-96.06420')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC017': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bula', 1039, '33.91130', '-102.63750'), ('Enochs', 2249, '33.87300', '-102.75940'), ('Maple', 2249, '33.84860', '-102.89800'), ('Muleshoe', 4530, '34.22860', '-102.72810'), ('Muleshoe Wildlife Refuge', 2249, '33.94690', '-102.75270'), ('Needmore', 4530, '34.03300', '-102.73690'), ('Progress', 4530, '34.28270', '-102.80940'), ('West Camp', 1364, '34.28380', '-102.98190')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC019': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bandera', 957, '29.72480', '-99.07380'), ('Lakehills', 4668, '29.60440', '-98.94290'), ('Lost Maples State Park', 387, '29.84000', '-99.59000'), ('Medina', 2960, '29.80000', '-99.25000'), ('Pipe Creek', 4668, '29.71660', '-98.93330'), ('Tarpley', 957, '29.63330', '-99.28330'), ('Vanderpool', 387, '29.73700', '-99.55280')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC021': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bastrop', 5340, '30.11300', '-97.30540'), ('Camp Swift', 4731, '30.19070', '-97.29210'), ('Cedar Creek', 2310, '30.08330', '-97.50000'), ('Circle D-Kc Estate', 2010, '30.16080', '-97.23140'), ('Elgin', 5700, '30.34920', '-97.37250'), ('Paige', 2010, '30.21670', '-97.11670'), ('Rosanky', 3901, '29.93330', '-97.30000'), ('Smithville', 3901, '30.00770', '-97.15660'), ('Wyldwood', 2310, '30.12920', '-97.47250')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC023': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bomarton', 0, '33.50650', '-99.42790'), ('Lake Kemp', 0, '33.76140', '-99.19570'), ('Mabelle', 0, '33.67320', '-99.13010'), ('Red Springs', 0, '33.61300', '-99.41200'), ('Seymour', 3185, '33.59270', '-99.26040'), ('Westover', 0, '33.49580', '-99.01100')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC025': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Beeville', 13129, '28.40560', '-97.74910'), ('Normanna', 121, '28.53333', '-97.79166'), ('Pawnee', 201, '28.64266', '-98.00500'), ('Pettus', 608, '28.57580', '-97.80000'), ('Skidmore', 1013, '28.23333', '-97.68333')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC027': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Belton', 14623, '31.06810', '-97.46370'), ('Fort Hood', 35580, '31.13380', '-97.77410'), ('Harker Heights', 17308, '31.06120', '-97.65410'), ('Holland', 1102, '30.88380', '-97.40350'), ('Killeen', 86911, '31.09830', '-97.71720'), ('Little River-Academy', 1645, '30.99130', '-97.35190'), ("Morgan's Point Resort", 2989, '31.15560', '-97.45420'), ('Nolanville', 2150, '31.07820', '-97.61010'), ('Rogers', 1131, '30.93220', '-97.22850'), ('Salado', 1216, '30.95080', '-97.52470'), ('Temple', 46109, '31.09770', '-97.36350'), ('Troy', 1395, '31.19560', '-97.30680')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC029': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alamo Heights', 7319, '29.48260', '-98.46700'), ('Balcones Heights', 3016, '29.49000', '-98.55190'), ('Calaveras Lake', 664, '29.28000', '-98.30000'), ('Castle Hills', 4202, '29.52380', '-98.51920'), ('China Grove', 1247, '29.39560', '-98.34810'), ('Converse', 11508, '29.51380', '-98.31190'), ('Cross Mountain', 1524, '29.64520', '-98.65910'), ('Elmendorf', 664, '29.25850', '-98.33460'), ('Fair Oaks Ranch', 4695, '29.73610', '-98.63560'), ('Grey Forest', 418, '29.61410', '-98.68240'), ('Helotes', 4285, '29.56810', '-98.69350'), ('Hill Country Village', 1028, '29.58390', '-98.49180'), ('Hollywood Park', 2983, '29.59890', '-98.48490'), ('Kirby', 8673, '29.46000', '-98.38560'), ('Lackland AFB', 9352, '29.38280', '-98.62650'), ('Leon Springs', 1196, '29.66660', '-98.63330'), ('Leon Valley', 9239, '29.49520', '-98.61340'), ('Live Oak', 9156, '29.55410', '-98.33980'), ('Olmos Park', 2343, '29.47450', '-98.48590'), ('San Antonito', 935933, '29.42570', '-98.48610'), ('Scenic Oaks', 2352, '29.71060', '-98.67570'), ('Sea World', 9239, '29.46000', '-98.70000'), ('Selma', 520, '29.58630', '-98.31680'), ('Shavano Park', 1708, '29.58410', '-98.55500'), ('Somerset', 1144, '29.22760', '-98.65670'), ('St. Hedwig', 1443, '29.42430', '-98.21410'), ('Terrell Hills', 4592, '29.47730', '-98.44660'), ('The Dominion', 1196, '29.65660', '-98.61620'), ('Timberwood Park', 3761, '29.70540', '-98.47810'), ('Universal City', 13057, '29.55160', '-98.30620'), ('Windcrest', 5331, '29.51770', '-98.37890')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC031': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Blanco', 1505, '30.09840', '-98.42230'), ('Cypress Mill', 111, '30.40000', '-98.25000'), ('Johnson City', 1191, '30.27430', '-98.40650'), ('Pedernales Falls State Park', 1191, '30.31000', '-98.25000'), ('Round Mountain', 111, '30.43610', '-98.35380'), ('Twin Sisters', 1505, '30.00000', '-98.40000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC033': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gail', 245, '32.77000', '-101.45000'), ('Mesquite', 124523, '32.87000', '-101.63000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC035': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clifton', 3195, '31.78130', '-97.58010'), ('Cranfills Gap', 335, '31.77620', '-97.82980'), ('Iredell', 360, '31.98620', '-97.87110'), ('Meridian', 1491, '31.92400', '-97.64720'), ('Morgan', 485, '32.01570', '-97.60570'), ('Valley Mills', 1085, '31.65840', '-97.47180'), ('Walnut Springs', 716, '32.05700', '-97.75150')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC037': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('De Kalb', 1769, '33.50720', '-94.61650'), ('Hooks', 2973, '33.46930', '-94.28500'), ('Leary', 555, '33.47050', '-94.21210'), ('Maud', 1028, '33.33040', '-94.34470'), ('Nash', 2169, '33.44350', '-94.12940'), ('New Boston', 4808, '33.46030', '-94.41850'), ('Redwater', 824, '33.35820', '-94.25440'), ('Texarkana', 31656, '33.44100', '-94.07240'), ('Wake Village', 4757, '33.42330', '-94.11240')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC039': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alvin', 21413, '29.43210', '-95.24600'), ('Angleton', 18130, '29.16690', '-95.42760'), ("Bailey's Prairie", 694, '29.15340', '-95.49430'), ('Bonney', 384, '29.30170', '-95.45850'), ('Brazoria', 2787, '29.04710', '-95.56820'), ('Brookside Village', 1960, '29.58940', '-95.31630'), ('Clute', 10424, '29.02460', '-95.39750'), ('Danbury', 1611, '29.22660', '-95.34570'), ('Freeport', 12708, '28.95140', '-95.36430'), ('Hillcrest', 695, '29.39210', '-95.22260'), ('Holiday Lakes', 1095, '29.20880', '-95.51420'), ('Iowa Colony', 804, '29.44270', '-95.41540'), ('Jones Creek', 2130, '28.97460', '-95.46780'), ('Lake Jackson', 26386, '29.04190', '-95.44630'), ('Liverpool', 404, '29.29900', '-95.27730'), ('Manvel', 3046, '29.48380', '-95.35960'), ('Oyster Creek', 1192, '28.99740', '-95.33050'), ('Pearland', 37640, '29.55560', '-95.27550'), ('Quintana', 51, '28.93050', '-95.31580'), ('Richwood', 2732, '29.05800', '-95.40750'), ('Surfside Beach', 611, '28.95380', '-95.28220'), ('Sweeny', 3297, '29.04530', '-95.69930'), ('West Columbia', 4372, '29.14150', '-95.64810'), ('Wild Peach Village', 2440, '29.08340', '-95.63370')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC041': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bryan', 55002, '30.66850', '-96.36520'), ('College Station', 67890, '30.60050', '-96.31240'), ('Wixon Valley', 186, '30.76260', '-96.31720')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC043': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alpine', 5786, '30.36320', '-103.66500'), ('Altuda', 5786, '30.30000', '-103.46000'), ('Boquillas Canyon', 861, '29.22000', '-102.88000'), ('Castolon', 4167, '29.14000', '-103.51000'), ('Chisos Basin', 4167, '29.27000', '-103.30670'), ('Lajitas', 4167, '29.26000', '-103.77000'), ('Marathon', 455, '30.20900', '-103.24000'), ('Panther Junction', 5786, '29.32990', '-103.20000'), ('Study Butte', 4167, '29.33500', '-103.53000'), ('Terlingua', 4167, '29.32000', '-103.62000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXC045': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caprock Canyon St.', 432, '34.44580', '-101.06770'), ('Mackenzie Reservoir', 771, '34.54690', '-101.44880'), ('Quitaque', 432, '34.36740', '-101.05490'), ('Silverton', 771, '34.47120', '-101.30430'), ('Valley Schools', 432, '34.37700', '-100.98690')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXC047': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Encino', 177, '26.93330', '-98.13330')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC049': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bangs', 1620, '31.71450', '-99.13050'), ('Blanket', 402, '31.82390', '-98.78670'), ('Brookesmith', 1620, '31.55030', '-99.11830'), ('Brownwood', 18813, '31.70920', '-98.99080'), ('Cross Cut', 1068, '32.03360', '-99.13220'), ('Early', 2588, '31.74190', '-98.94530'), ('Indian Creek', 18813, '31.52310', '-98.97970'), ('Lake Brownwood', 1694, '31.81600', '-99.10290'), ('May', 835, '31.97940', '-98.91970'), ('Owens', 2588, '31.84780', '-98.92560'), ('Thrifty', 1694, '31.81080', '-99.13170'), ('Winchell', 1620, '31.47190', '-99.16060'), ('Zephyr', 402, '31.67580', '-98.79440')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC051': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caldwell', 3181, '30.52910', '-96.70300'), ('Snook', 489, '30.49060', '-96.46570'), ('Somerville', 1542, '30.34520', '-96.53050')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC053': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bertram', 1122, '30.74420', '-98.05740'), ('Briggs', 1054, '30.86660', '-97.91660'), ('Burnet', 4735, '30.76110', '-98.22980'), ('Cottonwood Shores', 877, '30.55580', '-98.32550'), ('Granite Shoals', 2040, '30.58870', '-98.38380'), ('Inks Lake State Park', 4584, '30.72000', '-98.38000'), ('Marble Falls', 4959, '30.57970', '-98.27210'), ('Meadowlakes', 1293, '30.56320', '-98.29520'), ('Spicewood', 4959, '30.48330', '-98.16660')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC055': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fentress', 953, '29.75000', '-97.76660'), ('Lockhart', 11615, '29.87420', '-97.67760'), ('Luling', 5080, '29.68290', '-97.64900'), ('Martindale', 953, '29.84230', '-97.84330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC057': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Kamay', 12035, '28.61690', '-96.73880'), ('Long Mott', 1352, '28.46666', '-96.78333'), ('Magnolia Beach', 12035, '28.51380', '-96.51690'), ('Point Comfort', 956, '28.65580', '-96.55690'), ('Port Lavaca', 12035, '28.61470', '-96.62120'), ('Seadrift', 1352, '28.38000', '-96.69000')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC059': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Admiral', 88, '32.29640', '-99.29750'), ('Atwell', 88, '32.26110', '-99.13390'), ('Baird', 1623, '32.39580', '-99.39550'), ('Clyde', 3345, '32.40240', '-99.49820'), ('Cross Plains', 1068, '32.12660', '-99.16530'), ('Dudley', 1664, '32.25810', '-99.60470'), ('Eula', 3345, '32.34220', '-99.56140'), ('Oplin', 142, '32.13780', '-99.56190'), ('Putnam', 88, '32.37080', '-99.19220')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC061': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bayview', 323, '26.12430', '-97.39900'), ('Brownsville', 139722, '25.92510', '-97.48200'), ('Combes', 2553, '26.24240', '-97.72420'), ('Harlingen', 57564, '26.19530', '-97.68630'), ('La Feria', 6115, '26.15700', '-97.82260'), ('Laguna Heights', 1990, '26.08010', '-97.25690'), ('Laguna Vista', 1166, '26.10050', '-97.29330'), ('Los Fresnos', 4512, '26.07390', '-97.47990'), ('Port Isabel', 4467, '26.07480', '-97.22010'), ('Rancho Viejo', 885, '26.03470', '-97.55760'), ('Rio Hondo', 1793, '26.23430', '-97.58260'), ('San Benito', 20125, '26.13710', '-97.63530'), ('Santa Rosa', 2223, '26.25420', '-97.82540')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC063': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Pittsburg', 4007, '32.99690', '-94.96560'), ('Rocky Mound', 53, '33.02850', '-95.03170')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC065': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Groom', 587, '35.20410', '-101.10600'), ('Panhandle', 2589, '35.34620', '-101.38010'), ('Pantex', 2589, '35.32390', '-101.58080'), ('Skellytown', 664, '35.57310', '-101.17300'), ('White Deer', 1125, '35.43240', '-101.17480')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC067': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Atlanta', 5745, '33.11640', '-94.16430'), ('Avinger', 464, '32.89820', '-94.55430'), ('Bloomburg', 375, '33.13750', '-94.05870'), ('Domino', 52, '33.25140', '-94.11470'), ('Douglassville', 175, '33.19180', '-94.35140'), ('Hughes Springs', 1856, '32.99880', '-94.63020'), ('Linden', 2256, '33.01100', '-94.36210'), ('Marietta', 112, '33.17380', '-94.54180'), ('Queen City', 1748, '33.14970', '-94.15130')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC069': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dimmitt', 4375, '34.54790', '-102.31520'), ('Easter', 4375, '34.64550', '-102.39630'), ('Hart', 1198, '34.38560', '-102.11460'), ('Nazareth', 356, '34.54140', '-102.10370'), ('Summerfield', 14597, '34.74080', '-102.51470')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXC071': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anahuac', 2210, '29.76480', '-94.67830'), ('Cove', 323, '29.81320', '-94.82490'), ('Mont Belvieu', 2324, '29.85160', '-94.88110'), ('Old River-Winfree', 1364, '29.87830', '-94.82430'), ('Stowell', 1419, '29.78550', '-94.37990'), ('Winnie', 2914, '29.81670', '-94.38020')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC073': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alto', 1190, '31.65040', '-95.07090'), ('Cuney', 145, '32.03820', '-95.41540'), ('Gallatin', 378, '31.89510', '-95.15250'), ('Jacksonville', 13868, '31.96530', '-95.26000'), ('New Summerfield', 998, '31.98520', '-95.10480'), ('Rusk', 4366, '31.79760', '-95.14850'), ('Wells', 761, '31.49180', '-94.94670')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC075': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Childress', 6778, '34.42450', '-100.24830'), ('Kirkland', 0, '34.39190', '-100.06890'), ('Tell', 6778, '34.38000', '-100.39190')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXC077': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bellevue', 386, '33.63420', '-98.01590'), ('Bluegrove', 0, '33.67420', '-98.22970'), ('Buffalo Springs', 0, '33.55640', '-98.13950'), ('Byers', 517, '34.06860', '-98.19070'), ('Charlie', 0, '34.09690', '-98.31710'), ('Dean', 341, '33.94620', '-98.35160'), ('Henrietta', 3264, '33.81680', '-98.19450'), ('Jolly', 188, '33.86750', '-98.34870'), ('Joy', 0, '33.57590', '-98.21590'), ('Lake Arrowhead', 0, '33.70900', '-98.37030'), ('Newport', 0, '33.47200', '-98.01540'), ('Petrolia', 782, '34.01300', '-98.23130'), ('Shannon', 0, '33.47000', '-98.27000'), ('Shannon', 0, '33.47390', '-98.25900'), ('Vashti', 0, '33.55580', '-98.04130')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC079': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bledsoe', 57, '33.61910', '-103.02080'), ('Lehman', 2249, '33.62700', '-102.79190'), ('Morton', 2249, '33.72460', '-102.75820'), ('Whiteface', 465, '33.59920', '-102.61250')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC081': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bronte', 1076, '31.88550', '-100.29480'), ('Robert Lee', 1171, '31.89220', '-100.48440'), ('Sanco', 1171, '32.00830', '-100.52360'), ('Silver', 1171, '32.07080', '-100.68220'), ('Tennyson', 1076, '31.74170', '-100.28580')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC083': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Burkett', 1068, '31.99580', '-99.22530'), ('Coleman', 5127, '31.82720', '-99.42610'), ('Echo', 5127, '31.92810', '-99.31750'), ('Fisk', 5127, '31.67080', '-99.48890'), ('Glen Cove', 142, '31.86580', '-99.63720'), ('Goldsboro', 142, '32.06000', '-99.68080'), ('Gouldbusk', 1081, '31.55470', '-99.47640'), ('Leaday', 320, '31.56780', '-99.67280'), ('Mozelle', 1081, '31.59890', '-99.49250'), ('Novice', 142, '31.98940', '-99.62330'), ('Rockwood', 1081, '31.50080', '-99.37310'), ('Santa Anna', 1081, '31.74190', '-99.32140'), ('Shields', 1081, '31.59310', '-99.42390'), ('Silver Valley', 142, '31.95640', '-99.54580'), ('Talpa', 142, '31.77640', '-99.70920'), ('Trickham', 1620, '31.58750', '-99.23030'), ('Valera', 5127, '31.75280', '-99.54690'), ('Voss', 5127, '31.62080', '-99.56140'), ('Whon', 1081, '31.49030', '-99.30580')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC085': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Allen', 43554, '33.10970', '-96.66950'), ('Anna', 1225, '33.35280', '-96.54980'), ('Blue Ridge', 672, '33.29840', '-96.39990'), ('Celina', 1861, '33.32000', '-96.78380'), ('Fairview', 1554, '33.14220', '-96.62490'), ('Farmersville', 3118, '33.16160', '-96.35760'), ('Frisco', 33714, '33.14450', '-96.81300'), ('Josephine', 594, '33.06160', '-96.31630'), ('Lavon', 387, '33.02670', '-96.43820'), ('Lowry Crossing', 1229, '33.16790', '-96.54450'), ('Lucas', 2890, '33.10140', '-96.57770'), ('McKinney', 54369, '33.20090', '-96.65490'), ('Melissa', 1350, '33.28260', '-96.57720'), ('Murphy', 3099, '33.01280', '-96.60740'), ('Nevada', 563, '33.03910', '-96.37170'), ('New Hope', 523, '33.21240', '-96.56460'), ('Parker', 1379, '33.05400', '-96.63640'), ('Plano', 128713, '33.04620', '-96.74670'), ('Princeton', 2321, '33.18510', '-96.50410'), ('Prosper', 1018, '33.24020', '-96.78590'), ('St. Paul', 415, '33.04620', '-96.54860'), ('Westminster', 388, '33.35890', '-96.45790'), ('Weston', 362, '33.32820', '-96.64410'), ('Wylie', 8716, '33.04260', '-96.51390')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC087': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dodson', 115, '34.76500', '-100.01950'), ('Dozier', 2029, '35.08140', '-100.34440'), ('Lutie', 2275, '35.02310', '-100.22222'), ('Quail', 33, '34.90900', '-100.40500'), ('Samnorwood', 2029, '35.05530', '-100.28430'), ('Wellington', 2275, '34.85350', '-100.21320')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC089': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Columbus', 3916, '29.70440', '-96.55150'), ('Eagle Lake', 3664, '29.58710', '-96.32830'), ('Weimar', 2052, '29.70080', '-96.77830')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC091': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bulverde', 3761, '29.73620', '-98.45170'), ('Canyon Lake Dam', 16870, '29.87500', '-98.26230'), ('Fischer', 16870, '29.96660', '-98.26660'), ('Garden Ridge', 1882, '29.63470', '-98.29360'), ('New Braunfels', 36494, '29.70430', '-98.11740'), ('Smithson Valley', 16870, '29.80480', '-98.35600'), ('Spring Branch', 16870, '29.86660', '-98.40000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC093': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Comanche', 4482, '31.89970', '-98.60420'), ('De Leon', 2433, '32.11170', '-98.53670'), ('Gustine', 457, '31.84530', '-98.40210')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC095': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Eden', 2561, '31.21570', '-99.84360'), ('Eola', 320, '31.39860', '-100.08890'), ('Live Oak', 2561, '31.13890', '-99.92920'), ('Lowake', 850, '31.56610', '-100.07560'), ('Millersview', 320, '31.40860', '-99.75530'), ('Paint Rock', 320, '31.50950', '-99.92530'), ('Vick', 320, '31.34080', '-100.09170')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC097': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Callisburg', 365, '33.69980', '-97.01640'), ('Gainesville', 15538, '33.63730', '-97.15060'), ('Lindsay', 394, '33.63620', '-97.21980'), ('Muenster', 1556, '33.65190', '-97.37670'), ('Valley View', 640, '33.48540', '-97.16080')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC099': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Copperas Cove', 29592, '31.11870', '-97.90180'), ('Evant', 393, '31.47580', '-98.14960'), ('Fort Gates', 818, '31.40330', '-97.70960'), ('Gatesville', 15591, '31.44030', '-97.73400'), ('Oglesby', 458, '31.41890', '-97.50990'), ('South Mountain', 301, '31.43830', '-97.67630')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC101': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cee Vee', 1498, '34.22940', '-100.44080'), ('Chalk', 1498, '33.87690', '-100.23280'), ('Delwin', 1498, '33.87690', '-100.39970'), ('Hackberry', 0, '33.92780', '-100.15080'), ('Lazare', 0, '34.29190', '-100.00000'), ('Paducah', 1498, '34.01480', '-100.30340'), ('Swearingen', 1498, '34.14780', '-100.14580')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC103': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Crane', 3191, '31.39180', '-102.35000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC105': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ozona', 3436, '30.71000', '-101.20030')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC107': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caprock', 2252, '33.47970', '-101.40990'), ('Cone', 2252, '33.79720', '-101.38720'), ('Crosbyton', 1874, '33.64190', '-101.23740'), ('Kalgary', 1874, '33.40880', '-101.14800'), ('Lorenzo', 1372, '33.67010', '-101.53450'), ('Ralls', 2252, '33.67830', '-101.38440'), ('White River Lake', 1874, '33.48080', '-101.09880')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC109': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Boracho', 2435, '31.08000', '-104.39000'), ('Kent', 527, '31.07000', '-104.22000'), ('Lobo', 2435, '30.81000', '-104.75000'), ('Pine Springs', 413, '31.89000', '-104.81000'), ('Van Horn', 2435, '31.04000', '-104.83460')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXC111': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Conlen', 1991, '36.23530', '-102.23690'), ('Dalhart', 7237, '36.06180', '-102.51460'), ('Texline', 425, '36.37670', '-103.01870'), ('Ware', 7237, '36.18470', '-102.70970')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC113': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Addison', 14166, '32.96120', '-96.83720'), ('Balch Springs', 19375, '32.71880', '-96.61620'), ('Buckingham', 66, '32.93410', '-96.72500'), ('Cedar Hill', 32093, '32.58030', '-96.95760'), ('Cockrell Hill', 4443, '32.73860', '-96.88890'), ('Coppell', 35958, '32.96290', '-96.99050'), ('Dallas', 1188580, '32.79420', '-96.76520'), ('Desoto', 37646, '32.59920', '-96.86250'), ('Duncanville', 36081, '32.64590', '-96.91350'), ('Farmers Branch', 27508, '32.92680', '-96.87890'), ('Garland', 180650, '32.91080', '-96.62930'), ('Glenn Heights', 7224, '32.55100', '-96.85390'), ('Grand Prairie', 127427, '32.69220', '-97.01670'), ('Highland Park', 8842, '32.83150', '-96.80080'), ('Hutchins', 2805, '32.64370', '-96.70730'), ('Irving', 191615, '32.85770', '-96.96930'), ('Lancaster', 25894, '32.59560', '-96.78100'), ('Mesquite', 124523, '32.76900', '-96.59980'), ('Richardson', 74840, '32.97280', '-96.70980'), ('Rowlett', 23260, '32.90810', '-96.55000'), ('Sachse', 5346, '32.97460', '-96.58080'), ('Seagoville', 8969, '32.65670', '-96.54650'), ('Sunnyvale', 2228, '32.79930', '-96.55830'), ('University Park', 22259, '32.85010', '-96.79310'), ('Wilmer', 2479, '32.59880', '-96.68420')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC115': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arvana', 9952, '32.81000', '-101.92000'), ('Friendship', 9952, '32.63000', '-102.03000'), ('Grandview', 1011, '32.91000', '-102.00000'), ('Hancock', 288, '32.82000', '-101.86000'), ('Key', 288, '32.73000', '-101.80000'), ('Klondike', 288, '32.56000', '-101.96000'), ('Lamesa', 9952, '32.73260', '-101.95580'), ('Midway', 288, '32.68610', '-101.78610'), ('Patricia', 9952, '32.56000', '-102.02000'), ('Pride', 9952, '32.94000', '-102.08000'), ('Punkin Center', 9952, '32.85000', '-102.05000'), ('Sand', 9952, '32.70000', '-102.18000'), ('Sparenberg', 245, '32.58000', '-101.84000'), ('Tenmile', 288, '32.60000', '-101.92000'), ('Union', 9952, '32.67360', '-102.06360'), ('Welch', 9952, '32.93000', '-102.13000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC117': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bootleg', 3854, '34.82890', '-102.81361'), ('Dawn', 14597, '34.91030', '-102.19940'), ('Glenrio', 277, '35.17860', '-103.02190'), ('Glenrio', 306, '35.17900', '-103.04200'), ('Hereford', 14597, '34.82340', '-102.39840'), ('Simms', 159, '35.03340', '-102.65770')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC119': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cooper', 2153, '33.37180', '-95.69050'), ('Pecan Gap', 214, '33.43660', '-95.85160')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC121': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Argyle', 2365, '33.11050', '-97.17990'), ('Aubrey', 1500, '33.30390', '-96.98310'), ('Bartonville', 1093, '33.08870', '-97.15640'), ('Carrollton', 109576, '32.98810', '-96.89670'), ('Copper Canyon', 1216, '33.09710', '-97.09670'), ('Corinth', 3944, '33.14380', '-97.06470'), ('Corral City', 89, '33.09930', '-97.22620'), ('Cross Roads', 361, '33.23060', '-96.99410'), ('Denton', 80537, '33.21420', '-97.13090'), ('Double Oak', 2179, '33.06410', '-97.11260'), ('Flower Mound', 50702, '33.02830', '-97.09270'), ('Hackberry', 544, '33.15000', '-96.91840'), ('Hebron', 874, '33.04230', '-96.89930'), ('Hickory Creek', 2078, '33.10930', '-97.02820'), ('Highland Village', 12173, '33.08810', '-97.05560'), ('Justin', 1891, '33.08660', '-97.29990'), ('Krugerville', 903, '33.28070', '-96.99060'), ('Krum', 1979, '33.26560', '-97.22960'), ('Lake Dallas', 6166, '33.12650', '-97.02470'), ('Lakewood Village', 342, '33.14040', '-96.97650'), ('Lewisville', 77737, '33.04170', '-96.98290'), ('Lincoln Park', 287, '33.22260', '-96.97240'), ('Little Elm', 3646, '33.16380', '-96.93000'), ('Marshall Creek', 431, '33.01760', '-97.20830'), ('Northlake', 921, '33.07400', '-97.25730'), ('Oak Point', 1747, '33.18220', '-96.99490'), ('Pilot Point', 2538, '33.39850', '-96.95510'), ('Ponder', 432, '33.17910', '-97.28760'), ('Roanoke', 1616, '33.00210', '-97.23230'), ('Sanger', 3508, '33.36070', '-97.17680'), ('Shady Shores', 1045, '33.16270', '-97.04430'), ('The Colony', 22113, '33.09090', '-96.88710'), ('Trophy Club', 3922, '33.00040', '-97.19290')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC123': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cuero', 6571, '29.09410', '-97.28740'), ('Hochheim', 5731, '29.31670', '-97.30000'), ('Nordheim', 323, '28.92330', '-97.61360'), ('Thomaston', 6571, '29.00000', '-97.15000'), ('Westhoff', 453, '29.20000', '-97.46670'), ('Yorktown', 2207, '28.98290', '-97.50410')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC125': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Afton', 265, '33.76270', '-100.81630'), ('Dickens', 332, '33.62130', '-100.83580'), ('McAdoo', 332, '33.73380', '-101.00580'), ('Spur', 1300, '33.47810', '-100.85490')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC127': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Asherton', 1342, '28.44600', '-99.76050'), ('Big Wells', 704, '28.56950', '-99.57000'), ('Carrizo Springs', 5655, '28.52550', '-99.85900'), ('Catarina', 135, '28.35000', '-99.61670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC129': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clarendon', 1974, '34.93670', '-100.89180'), ('Greenbelt Lake', 437, '35.01190', '-100.91080'), ('Hedley', 379, '34.86700', '-100.65940'), ('Howardwick', 437, '35.03520', '-100.90870'), ('Lelia Lake', 379, '34.90110', '-100.77030')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC131': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Benavides', 1686, '27.59770', '-98.40920'), ('Concepcion', 2772, '27.38333', '-98.27000'), ('Freer', 3241, '27.88140', '-98.61820'), ('Realitos', 4465, '27.42500', '-98.55000'), ('Rios', 2772, '27.42666', '-98.27000'), ('Rosita', 1686, '27.78333', '-98.42500'), ('San Diego', 4983, '27.75920', '-98.23830'), ('Seven Sisters', 3241, '28.03000', '-98.52000')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC133': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carbon', 224, '32.26860', '-98.82670'), ('Cisco', 3851, '32.38500', '-98.98000'), ('Eastland', 3769, '32.40120', '-98.81910'), ('Gorman', 1236, '32.21400', '-98.67180'), ('Ranger', 2803, '32.47010', '-98.67430'), ('Rising Star', 835, '32.09730', '-98.96570')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC135': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gardendale', 1103, '32.02040', '-102.37130'), ('Goldsmith', 253, '31.98310', '-102.61650'), ('North Cowden', 253, '32.01000', '-102.51000'), ('Notrees', 253, '31.92000', '-102.76000'), ('Odessa', 90943, '31.85440', '-102.36830'), ('Penwell', 17799, '31.73000', '-102.59000'), ('Pleasant Farms', 90943, '31.68000', '-102.34000'), ('West Odessa', 17799, '31.84220', '-102.49830')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC137': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carta Valley', 2225, '29.80000', '-100.68330'), ('Rocksprings', 1339, '30.01680', '-100.21180')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC139': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alma', 302, '32.28540', '-96.54470'), ('Bardwell', 583, '32.26720', '-96.69520'), ('Ennis', 16045, '32.33800', '-96.62910'), ('Ferris', 2175, '32.53510', '-96.66390'), ('Garrett', 448, '32.36080', '-96.65180'), ('Italy', 1993, '32.18140', '-96.88390'), ('Maypearl', 746, '32.31560', '-97.00660'), ('Midlothian', 7480, '32.49400', '-96.99770'), ('Milford', 685, '32.12220', '-96.94940'), ('Oak Leaf', 1209, '32.52090', '-96.84990'), ('Ovilla', 3405, '32.53970', '-96.89270'), ('Palmer', 1774, '32.42730', '-96.67240'), ('Pecan Hill', 672, '32.49690', '-96.77510'), ('Red Oak', 3124, '32.51790', '-96.80880'), ('Waxahachie', 18168, '32.40720', '-96.85200')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC141': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anthony', 3850, '31.99415', '-106.60574'), ('Canutillo', 5129, '31.91870', '-106.59940'), ('Central El Paso', 563662, '31.78326', '-106.48214'), ('Clint', 980, '31.59010', '-106.22840'), ('East El Paso', 0, '31.77988', '-106.30361'), ('Fabens', 8043, '31.50384', '-106.15817'), ('Fort Bliss', 13915, '31.81172', '-106.41796'), ('Franklin Mountains State Park', 0, '31.93010', '-106.51330'), ('Horizon City', 5233, '31.67760', '-106.19059'), ('Hueco Tanks', 0, '31.91770', '-106.04710'), ('Mission Valley', 0, '31.67855', '-106.33449'), ('Montana Vista', 4978, '31.81998', '-106.17575'), ('Northeast El Paso', 0, '31.89857', '-106.41941'), ('San Elizario', 4385, '31.57840', '-106.26210'), ('Socorro', 22995, '31.63934', '-106.26658'), ('Sparks', 1276, '31.67260', '-106.23930'), ('Tornillo', 8043, '31.44530', '-106.08780'), ('Vinton', 605, '31.96170', '-106.59570'), ('West El Paso', 0, '31.86721', '-106.56513'), ('Westway', 2381, '31.95870', '-106.57760')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXC143': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dublin', 3754, '32.08660', '-98.33890'), ('Stephenville', 13502, '32.21910', '-98.21530')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC145': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Golinda', 423, '31.37040', '-97.08110'), ('Lott', 724, '31.20600', '-97.03340'), ('Marlin', 6628, '31.30900', '-96.89300'), ('Rosebud', 1638, '31.07500', '-96.97530')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC147': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bailey', 213, '33.43260', '-96.16450'), ('Bonham', 9990, '33.58930', '-96.18000'), ('Dodd City', 419, '33.57580', '-96.07470'), ('Ector', 600, '33.57900', '-96.27290'), ('Honey Grove', 1746, '33.58340', '-95.90990'), ('Ladonia', 667, '33.42780', '-95.94530'), ('Leonard', 1846, '33.38110', '-96.24650'), ('Savoy', 877, '33.59950', '-96.36920'), ('Trenton', 655, '33.42950', '-96.33990'), ('Windom', 269, '33.56440', '-95.99850')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC149': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carmine', 228, '30.14960', '-96.68880'), ('Cistern', 974, '29.81670', '-97.21670'), ('Ellinger', 261, '29.83350', '-96.70300'), ('Fayetteville', 261, '29.90640', '-96.67440'), ('Flatonia', 1377, '29.68730', '-97.10750'), ('La Grange', 4478, '29.90870', '-96.87810'), ('Muldoon', 1377, '29.81670', '-97.06670'), ('Round Top', 81, '30.06440', '-96.69570'), ('Schulenburg', 2455, '29.68120', '-96.90690')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC151': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Busby', 673, '32.62280', '-100.42060'), ('Capitola', 673, '32.62220', '-100.49220'), ('Gannon', 11415, '32.55670', '-100.48310'), ('Hitson', 2248, '32.89440', '-100.21140'), ('Hobbs', 1611, '32.78140', '-100.59140'), ('Longworth', 673, '32.65030', '-100.34530'), ('McCaulley', 2248, '32.78190', '-100.20360'), ('Roby', 673, '32.74630', '-100.37850'), ('Rotan', 1611, '32.85360', '-100.46540'), ('Sylvester', 673, '32.72080', '-100.25390')], 'partOfState': 'northwest', 'wfo': 'SJT'}, +'TXC153': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aiken', 2056, '34.14220', '-101.52520'), ('Cedar Hill', 3676, '34.14330', '-101.20380'), ('Dougherty', 265, '33.94160', '-101.08610'), ('Floydada', 3676, '33.98370', '-101.33680'), ('Lockney', 2056, '34.12290', '-101.44180'), ('South Plains', 2056, '34.22440', '-101.30910')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC155': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Crowell', 1141, '33.98360', '-99.72410'), ('Margaret', 0, '34.04920', '-99.65120'), ('Rayland', 0, '34.06450', '-99.47990'), ('Thalia', 0, '33.98420', '-99.53920')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC157': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arcola', 1048, '29.50110', '-95.46350'), ('Beasley', 590, '29.49740', '-95.91790'), ('First Colony', 18327, '29.57450', '-95.60830'), ('Fresno', 3182, '29.53740', '-95.45690'), ('Fulshear', 716, '29.69110', '-95.88420'), ('Kendleton', 466, '29.44590', '-96.00010'), ('Meadows', 4871, '29.65150', '-95.58630'), ('Mission Bend', 24945, '29.69370', '-95.66460'), ('Missouri City', 52913, '29.57230', '-95.53670'), ('Needville', 2609, '29.39570', '-95.83920'), ('Orchard', 408, '29.60300', '-95.96870'), ('Pecan Grove', 13551, '29.62580', '-95.73140'), ('Pleak', 746, '29.48390', '-95.80990'), ('Richmond', 9801, '29.58140', '-95.76500'), ('Rosenberg', 20183, '29.54860', '-95.79460'), ('Simonton', 717, '29.68140', '-95.99520'), ('Stafford', 8397, '29.62400', '-95.56310'), ('Sugar Land', 24529, '29.61880', '-95.61620'), ('Thompsons', 167, '29.49100', '-95.61960'), ('Town West', 6166, '29.66350', '-95.63090')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC159': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Mount Vernon', 2286, '33.17270', '-95.22180')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC161': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fairfield', 3094, '31.71880', '-96.16550'), ('Kirvin', 122, '31.76680', '-96.32980'), ('Streetman', 260, '31.87590', '-96.32390'), ('Teague', 3268, '31.63040', '-96.28160'), ('Wortham', 1020, '31.79000', '-96.46080')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC163': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Big Foot', 4140, '29.05000', '-98.88330'), ('Dilley', 3674, '28.66880', '-99.17100'), ('Frio Town', 7157, '29.01670', '-99.31670'), ('Moore', 4140, '29.05000', '-99.01670'), ('Pearsall', 7157, '28.88770', '-99.09210')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC165': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ashmore', 203, '32.92000', '-102.28000'), ('Fairview', 5910, '32.69670', '-102.53610'), ('Higginbotham', 3985, '32.90000', '-102.99000'), ('Loop', 203, '32.92000', '-102.42000'), ('Paynes Corner', 5910, '32.73000', '-102.80000'), ('Seagraves', 2398, '32.94150', '-102.56490'), ('Seminole', 5910, '32.71830', '-102.65260')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC167': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bacliff', 6962, '29.50820', '-94.99190'), ('Bayou Vista', 1644, '29.32530', '-94.93780'), ('Clear Lake Shores', 1205, '29.54820', '-95.03390'), ('Dickinson', 17093, '29.45370', '-95.06630'), ('Friendswood', 29037, '29.51230', '-95.19770'), ('Galveston', 57247, '29.22930', '-94.89210'), ('Hitchcock', 6386, '29.31570', '-95.01730'), ('Jamaica Beach', 1075, '29.19120', '-94.97980'), ('Kemah', 2330, '29.52880', '-95.02050'), ('La Marque', 13682, '29.36700', '-94.99330'), ('League City', 45444, '29.48560', '-95.10750'), ('San Leon', 3328, '29.48860', '-94.93830'), ('Santa Fe', 8429, '29.38200', '-95.09830'), ('Texas City', 40822, '29.40940', '-94.95800')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC169': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Graham', 8716, '33.15050', '-101.46910'), ('Justiceburg', 8716, '33.04270', '-101.20240'), ('Lake Alan Henry', 8716, '33.06440', '-101.04830'), ('Post', 8716, '33.19090', '-101.38130'), ('Southland', 6109, '33.36190', '-101.54970')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC171': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fredericksburg', 8911, '30.27050', '-98.87220'), ('Harper', 1006, '30.30000', '-99.25000'), ('Lbj State Park', 1191, '30.24000', '-98.63000'), ('Luckenbach', 8911, '30.18330', '-98.75000'), ('Willow City', 8911, '30.40000', '-98.70000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC173': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bigby Corner', 2556, '31.71000', '-101.65000'), ('Garden City', 226, '31.87000', '-101.48000'), ('Lees', 226, '32.08000', '-101.49000'), ('Saint Lawrence', 226, '31.70000', '-101.54000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC175': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Berclair', 1975, '28.50000', '-97.53333'), ('Charco', 1080, '28.73270', '-97.62880'), ('Fannin', 1975, '28.69270', '-97.21690'), ('Goliad', 1975, '28.66970', '-97.39160'), ('Schroeder', 1975, '28.80470', '-97.21690'), ('Weesatche', 1975, '28.83333', '-97.41666')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC177': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cheapside', 6571, '29.28330', '-97.40000'), ('Gonzales', 7202, '29.50860', '-97.44750'), ('Nixon', 2186, '29.26930', '-97.76190'), ('Palmeto', 5080, '29.59000', '-97.60000'), ('Smiley', 453, '29.27150', '-97.63750'), ('Waelder', 974, '29.69380', '-97.29630')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC179': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alanreed', 830, '35.21250', '-100.73390'), ('Kingsmill', 17887, '35.48830', '-101.05920'), ('Lake Mcclellan', 437, '35.21690', '-100.87190'), ('Lefors', 559, '35.43970', '-100.80330'), ('McLean', 830, '35.23290', '-100.60000'), ('Pampa', 17887, '35.54700', '-100.96430')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC181': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bells', 1190, '33.62000', '-96.41290'), ('Collinsville', 1235, '33.55970', '-96.91000'), ('Denison', 22773, '33.75590', '-96.56410'), ('Dorchester', 109, '33.53010', '-96.69190'), ('Gunter', 1230, '33.45080', '-96.74190'), ('Howe', 2478, '33.51280', '-96.61310'), ('Knollwood', 375, '33.68900', '-96.61850'), ('Luella', 581, '33.56930', '-96.54250'), ('Pottsboro', 1177, '33.77220', '-96.67160'), ('Sadler', 316, '33.68310', '-96.84570'), ('Sherman', 31601, '33.61830', '-96.60950'), ('Southmayd', 643, '33.62140', '-96.72010'), ('Tioga', 625, '33.47220', '-96.91720'), ('Tom Bean', 827, '33.52070', '-96.48370'), ('Van Alstyne', 2090, '33.41980', '-96.57350'), ('Whitesboro', 3209, '33.65950', '-96.90340'), ('Whitewright', 1713, '33.51110', '-96.39470')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC183': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clarksville City', 806, '32.53510', '-94.89550'), ('Easton', 524, '32.38290', '-94.59340'), ('Gladewater', 6027, '32.54300', '-94.94510'), ('Kilgore', 11066, '32.38720', '-94.86830'), ('Lakeport', 861, '32.40200', '-94.71150'), ('Liberty City', 1935, '32.45010', '-94.94460'), ('Longview', 73344, '32.51770', '-94.76230'), ('Rolling Meadows', 291, '32.41260', '-94.80760'), ('Warren City', 250, '32.55340', '-94.90220'), ('White Oak', 5136, '32.53210', '-94.85500')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC185': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Navasota', 6789, '30.38910', '-96.08800'), ('Todd Mission', 54, '30.26040', '-95.82920')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC187': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cibolo', 3035, '29.57390', '-98.23280'), ('Geronimo', 619, '29.66670', '-97.96670'), ('Kingsbury', 652, '29.65000', '-97.81670'), ('Marion', 1099, '29.57360', '-98.14300'), ('McQueeney', 2527, '29.59790', '-98.04320'), ('New Berlin', 467, '29.46370', '-98.10100'), ('Schertz', 10555, '29.55480', '-98.26200'), ('Seguin', 22011, '29.57950', '-97.96880'), ('Staples', 953, '29.78330', '-97.83330'), ('Zorn', 34733, '29.75000', '-97.96670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC189': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Abernathy', 2839, '33.84000', '-101.84660'), ('Abernathy', 2839, '33.83180', '-101.84460'), ('Cotton Center', 2263, '33.99300', '-101.99240'), ('Edmonson', 123, '34.28110', '-101.89480'), ('Hale Center', 2263, '34.06470', '-101.84450'), ('Halfway', 123, '34.18800', '-101.95190'), ('Petersburg', 1262, '33.87090', '-101.59680'), ('Plainview', 21700, '34.19090', '-101.72460'), ('Seth Ward', 1402, '34.21370', '-101.69040')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC191': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brice', 152, '34.71000', '-100.88970'), ('Estelline', 168, '34.54710', '-100.43940'), ('Lakeview', 152, '34.67280', '-100.69720'), ('Memphis', 2479, '34.72670', '-100.54120'), ('Turkey', 507, '34.39420', '-100.89550')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXC193': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Hamilton', 2977, '31.70500', '-98.12120'), ('Hico', 1341, '31.98340', '-98.02850')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC195': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gruver', 1162, '36.25650', '-101.41110'), ('Morse', 172, '36.06250', '-101.47500'), ('Spearman', 3021, '36.19750', '-101.19360')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC197': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Chillicothe', 798, '34.25560', '-99.51390'), ('Coppers Breaks State Park', 0, '34.11190', '-99.74320'), ('Goodlett', 0, '34.33530', '-99.88480'), ('Lazare', 0, '34.28320', '-99.99760'), ('Medicine Mound', 798, '34.18780', '-99.59420'), ('Quanah', 3413, '34.29560', '-99.74250')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC199': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Batson', 1034, '30.24920', '-94.60690'), ('Honey Island', 2115, '30.39530', '-94.44060'), ('Kountze', 2115, '30.37240', '-94.31550'), ('Lumberton', 8731, '30.26450', '-94.20180'), ('Saratoga', 1667, '30.28390', '-94.52920'), ('Silsbee', 6393, '30.34470', '-94.18040'), ('Sour Lake', 1667, '30.13600', '-94.40390'), ('Thicket', 755, '30.39560', '-94.63000'), ('Village Mills', 2115, '30.49400', '-94.39800'), ('Wildwood', 2115, '30.51830', '-94.44390')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXC201': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aldine', 13979, '29.91360', '-95.37600'), ('Barrett', 2872, '29.87300', '-95.06200'), ('Baytown', 66430, '29.74850', '-94.96900'), ('Bellaire', 15642, '29.70380', '-95.46080'), ('Bunker Hill Village', 3654, '29.76470', '-95.53160'), ('Channelview', 29685, '29.78860', '-95.11510'), ('Cloverleaf', 23508, '29.78730', '-95.17280'), ('Crosby', 1714, '29.91410', '-95.05820'), ('Deer Park', 28520, '29.69040', '-95.11530'), ('El Lago', 3075, '29.57280', '-95.04450'), ('Galena Park', 10592, '29.74490', '-95.23420'), ('Hedwig Village', 2334, '29.77980', '-95.51920'), ('Highlands', 7089, '29.81270', '-95.05750'), ('Hilshire Village', 720, '29.79020', '-95.48800'), ('Houston', 1953631, '29.76870', '-95.38670'), ('Humble', 14579, '29.99470', '-95.26470'), ('Hunters Creek Village', 4374, '29.77380', '-95.49770'), ('Jacinto City', 10302, '29.76600', '-95.24090'), ('Jersey Village', 6880, '29.88830', '-95.56840'), ('Katy', 11775, '29.79830', '-95.82310'), ('Kingwood', 37397, '30.05790', '-95.18620'), ('La Porte', 31880, '29.66660', '-95.04470'), ("Morgan's Point", 336, '29.67610', '-95.00520'), ('Nassau Bay', 4170, '29.54530', '-95.08770'), ('Pasadena', 141674, '29.66060', '-95.15200'), ('Piney Point Village', 3197, '29.75990', '-95.51550'), ('Sheldon', 1653, '29.86030', '-95.13360'), ('Shoreacres', 1316, '29.61790', '-95.00160'), ('South Houston', 14207, '29.66080', '-95.22800'), ('Southside Place', 1392, '29.70840', '-95.43520'), ('Spring', 33111, '30.06190', '-95.38380'), ('Spring Valley', 3392, '29.78810', '-95.50390'), ('Taylor Lake Village', 3394, '29.57370', '-95.05480'), ('Tomball', 6370, '30.09690', '-95.61640'), ('Webster', 4678, '29.53280', '-95.11640'), ('West University Place', 12920, '29.71520', '-95.43130')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC201': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aldine', 13979, '29.91360', '-95.37600'), ('Barrett', 2872, '29.87300', '-95.06200'), ('Baytown', 66430, '29.74850', '-94.96900'), ('Bellaire', 15642, '29.70380', '-95.46080'), ('Bunker Hill Village', 3654, '29.76470', '-95.53160'), ('Channelview', 29685, '29.78860', '-95.11510'), ('Cloverleaf', 23508, '29.78730', '-95.17280'), ('Crosby', 1714, '29.91410', '-95.05820'), ('Deer Park', 28520, '29.69040', '-95.11530'), ('El Lago', 3075, '29.57280', '-95.04450'), ('Galena Park', 10592, '29.74490', '-95.23420'), ('Hedwig Village', 2334, '29.77980', '-95.51920'), ('Highlands', 7089, '29.81270', '-95.05750'), ('Hilshire Village', 720, '29.79020', '-95.48800'), ('Houston', 1953631, '29.76870', '-95.38670'), ('Humble', 14579, '29.99470', '-95.26470'), ('Hunters Creek Village', 4374, '29.77380', '-95.49770'), ('Jacinto City', 10302, '29.76600', '-95.24090'), ('Jersey Village', 6880, '29.88830', '-95.56840'), ('Katy', 11775, '29.79830', '-95.82310'), ('Kingwood', 37397, '30.05790', '-95.18620'), ('La Porte', 31880, '29.66660', '-95.04470'), ("Morgan's Point", 336, '29.67610', '-95.00520'), ('Nassau Bay', 4170, '29.54530', '-95.08770'), ('Pasadena', 141674, '29.66060', '-95.15200'), ('Piney Point Village', 3197, '29.75990', '-95.51550'), ('Sheldon', 1653, '29.86030', '-95.13360'), ('Shoreacres', 1316, '29.61790', '-95.00160'), ('South Houston', 14207, '29.66080', '-95.22800'), ('Southside Place', 1392, '29.70840', '-95.43520'), ('Spring', 33111, '30.06190', '-95.38380'), ('Spring Valley', 3392, '29.78810', '-95.50390'), ('Taylor Lake Village', 3394, '29.57370', '-95.05480'), ('Tomball', 6370, '30.09690', '-95.61640'), ('Webster', 4678, '29.53280', '-95.11640'), ('West University Place', 12920, '29.71520', '-95.43130')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC203': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Hallsville', 2772, '32.50340', '-94.57610'), ('Marshall', 23935, '32.53600', '-94.35080'), ('Nesbitt', 327, '32.58930', '-94.44530'), ('Scottsville', 283, '32.53590', '-94.24140'), ('Uncertain', 194, '32.70860', '-94.12250'), ('Waskom', 1812, '32.47790', '-94.06480')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC205': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Channing', 356, '35.68210', '-102.33170'), ('Hartley', 441, '35.88560', '-102.39640'), ('Romero', 159, '35.72750', '-102.93080')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC207': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Haskell', 3106, '33.15900', '-99.73180'), ('Irby', 3636, '33.17970', '-99.52220'), ("O'brien", 132, '33.38000', '-99.84330'), ('Rochester', 458, '33.31580', '-99.85560'), ('Rule', 698, '33.18440', '-99.89330'), ('Sagerton', 698, '33.07690', '-99.95530'), ('Weinert', 235, '33.32430', '-99.67290')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC209': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buda', 2404, '30.08580', '-97.83970'), ('Driftwood', 1548, '30.11670', '-98.03330'), ('Dripping Springs', 1548, '30.18850', '-98.08830'), ('Hays', 233, '30.12280', '-97.87100'), ('Henly', 1548, '30.20000', '-98.21670'), ('Kyle', 5314, '29.99400', '-97.87060'), ('Mountain City', 671, '30.03850', '-97.89300'), ('Niederwald', 584, '30.01330', '-97.73690'), ('San Marcos', 34733, '29.88020', '-97.92900'), ('Uhland', 368, '29.96370', '-97.79460'), ('Wimberley', 2403, '29.99290', '-98.10150'), ('Woodcreek', 889, '30.03110', '-98.11220')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC211': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Canadian', 2233, '35.91070', '-100.38330'), ('Glazier', 2233, '36.01140', '-100.26330'), ('Lake Marvin', 2233, '35.89390', '-100.16580')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC213': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Athens', 11297, '32.20480', '-95.85540'), ('Berryville', 891, '32.08740', '-95.46500'), ('Brownsboro', 796, '32.29730', '-95.61470'), ('Caney City', 236, '32.20870', '-96.03940'), ('Chandler', 2099, '32.30580', '-95.47890'), ('Coffee City', 193, '32.12990', '-95.47820'), ('Enchanted Oaks', 357, '32.26630', '-96.10770'), ('Eustace', 798, '32.30590', '-96.01210'), ('Gun Barrel City', 5145, '32.32740', '-96.13640'), ('Log Cabin', 733, '32.22330', '-96.02220'), ('Malakoff', 2257, '32.17310', '-96.01240'), ('Moore Station', 184, '32.19080', '-95.57240'), ('Murchison', 592, '32.27490', '-95.75810'), ('Payne Springs', 683, '32.28090', '-96.08950'), ('Poynor', 237, '32.07600', '-95.59490'), ('Seven Points', 723, '32.32560', '-96.21480'), ('Star Harbor', 368, '32.19380', '-96.05570'), ('Tool', 1712, '32.28030', '-96.17240'), ('Trinidad', 1056, '32.14850', '-96.09970')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC215': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alamo', 14760, '26.18860', '-98.11850'), ('Donna', 14768, '26.16890', '-98.05000'), ('Edcouch', 3342, '26.29400', '-97.96430'), ('Edinburg', 48465, '26.29580', '-98.16490'), ('Elsa', 5549, '26.29830', '-97.99340'), ('Hidalgo', 7322, '26.10180', '-98.25840'), ('La Joya', 3303, '26.24830', '-98.47820'), ('McAllen', 106414, '26.21550', '-98.23930'), ('McCook', 3069, '26.48000', '-98.38300'), ('Mercedes', 13649, '26.14800', '-97.92080'), ('Mission', 45408, '26.21140', '-98.31690'), ('Palmview', 4107, '26.22990', '-98.37250'), ('Penitas', 1167, '26.23340', '-98.44850'), ('Pharr', 46660, '26.18200', '-98.18850'), ('Progreso', 1951, '26.09750', '-97.96050'), ('San Juan', 10815, '26.19130', '-98.15410'), ('San Manuel', 48465, '26.57000', '-98.11700'), ('Sullivan City', 2371, '26.28170', '-98.56080'), ('Weslaco', 21877, '26.16160', '-97.98440')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC217': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Abbott', 300, '31.88370', '-97.07740'), ('Aquilla', 136, '31.85520', '-97.22160'), ('Blum', 399, '32.14180', '-97.39680'), ('Bynum', 225, '31.96890', '-97.00300'), ("Carl's Corner", 134, '32.08530', '-97.04490'), ('Covington', 282, '32.17740', '-97.25890'), ('Hillsboro', 8232, '32.00740', '-97.11560'), ('Hubbard', 1586, '31.84590', '-96.80050'), ('Itasca', 1503, '32.15840', '-97.14760'), ('Malone', 278, '31.91660', '-96.89490'), ('Mertens', 146, '32.05890', '-96.89340'), ('Mount Calm', 310, '31.75690', '-96.88080'), ('Penelope', 211, '31.85840', '-96.92910'), ('Whitney', 1626, '31.94980', '-97.32040')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC219': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anton', 1200, '33.81130', '-102.16200'), ('Levelland', 12866, '33.57990', '-102.36390'), ('Opdyke West', 188, '33.59120', '-102.29950'), ('Pep', 2249, '33.81580', '-102.55970'), ('Ropesville', 494, '33.41370', '-102.15430'), ('Smyer', 442, '33.58680', '-102.16320'), ('Sundown', 1759, '33.45680', '-102.49070'), ('Whitharral', 188, '33.73750', '-102.32660')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC221': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Granbury', 5718, '32.44020', '-97.78770'), ('Lipan', 425, '32.51890', '-98.04670'), ('Oak Trail Shores', 2475, '32.48860', '-97.83390'), ('Tolar', 523, '32.39000', '-97.91680')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC223': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Como', 621, '33.06050', '-95.47510'), ('Cumby', 616, '33.13300', '-95.83880'), ('Sulphur Springs', 14062, '33.14390', '-95.61010'), ('Tira', 237, '33.32620', '-95.56230')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC225': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Crockett', 7141, '31.31790', '-95.45630'), ('Grapeland', 1451, '31.49130', '-95.48180'), ('Kennard', 317, '31.35820', '-95.18490'), ('Latexo', 272, '31.38910', '-95.47450'), ('Lovelady', 608, '31.12600', '-95.44530')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC227': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Big Spring', 25233, '32.25000', '-101.47890'), ('Coahoma', 932, '32.29500', '-101.30630'), ('Elbow', 25233, '32.16000', '-101.51000'), ('Fairview', 25233, '32.36000', '-101.52000'), ('Forsan', 226, '32.11020', '-101.36610'), ('Knott', 245, '32.40000', '-101.64000'), ('Lomax', 2556, '32.12000', '-101.64000'), ('Luther', 25233, '32.45000', '-101.46000'), ('Midway', 288, '32.28000', '-101.37000'), ('Sand Springs', 1133, '32.28000', '-101.35000'), ('South Haven', 25233, '32.19000', '-101.48000'), ('Vealmoor', 245, '32.51000', '-101.57000'), ('Vincent', 1133, '32.48000', '-101.23000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC229': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Acala', 0, '31.33510', '-105.91520'), ('Allamoore', 0, '31.07700', '-105.00280'), ('Cornudas', 413, '31.78330', '-105.46670'), ('Dell City', 413, '31.93520', '-105.19980'), ('Esperanza', 0, '31.16000', '-105.71060'), ('Fort Hancock', 8043, '31.29830', '-105.84470'), ('Fort Quitman', 0, '31.06310', '-105.58380'), ('Loma Linda', 0, '31.83090', '-105.96300'), ('McNary', 8043, '31.24800', '-105.79600'), ('Quitman Canyon', 0, '31.08240', '-105.45930'), ('Salt Flat', 413, '31.74470', '-105.08140'), ('Sierra Blanca', 2435, '31.17450', '-105.35670')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXC231': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caddo Mills', 1149, '33.06570', '-96.22690'), ('Campbell', 734, '33.14790', '-95.95500'), ('Celeste', 817, '33.29420', '-96.19410'), ('Commerce', 7669, '33.23820', '-95.90080'), ('Greenville', 23960, '33.11690', '-96.10120'), ('Lone Oak', 521, '32.99630', '-95.94150'), ('Neylandville', 56, '33.19960', '-96.00400'), ('Quinlan', 1360, '32.90870', '-96.13250'), ('West Tawakoni', 932, '32.90180', '-96.02090'), ('Wolfe City', 1505, '33.36980', '-96.06770')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC233': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Borger', 14302, '35.65930', '-101.40020'), ('Fritch', 2235, '35.64060', '-101.59680'), ('Pringle', 1936, '35.94920', '-101.45580'), ('Sanford', 218, '35.70260', '-101.53130'), ('Stinnett', 1936, '35.82220', '-101.44320')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC235': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arden', 839, '31.44360', '-100.76670'), ('Barnhart', 2885, '31.12780', '-101.17030'), ('Mertzon', 839, '31.26170', '-100.81690'), ('Sherwood', 839, '31.28110', '-100.79500')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC237': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bryson', 528, '33.15970', '-98.38660'), ('Jacksboro', 4533, '33.22310', '-98.15410')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC239': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Edna', 5899, '28.97400', '-96.64730'), ('Ganado', 1915, '29.04210', '-96.51140'), ('La Ward', 200, '28.84760', '-96.46540')], 'partOfState': 'south central', 'wfo': 'HGX'}, +'TXC241': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brookeland', 219, '31.12920', '-93.98970'), ('Buna', 2269, '30.44430', '-93.96170'), ('Evadale', 1430, '30.33860', '-94.06120'), ('Gist', 2743, '30.27420', '-93.90560'), ('Holly Springs', 8247, '30.89690', '-93.88390'), ('Jasper', 8247, '30.92040', '-93.99510'), ('Kirbyville', 2085, '30.65790', '-93.89990'), ('Magnolia Springs', 2085, '30.73530', '-94.02640'), ('Mt. Union', 2085, '30.69900', '-94.02300'), ('Roganville', 2085, '30.80000', '-93.90330'), ('Sam Rayburn Dam', 219, '31.06140', '-94.10640')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXC243': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fort Davis', 1050, '30.59000', '-103.90000'), ('Valentine', 187, '30.58910', '-104.49500')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXC245': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Beaumont', 113866, '30.08780', '-94.14450'), ('Bevil Oaks', 1346, '30.15540', '-94.27160'), ('Central Gardens', 4106, '29.99180', '-94.02070'), ('China', 1112, '30.05220', '-94.33560'), ('Fannett', 1112, '29.92580', '-94.25060'), ('Groves', 15733, '29.94590', '-93.91670'), ('Hamshire', 2914, '29.86140', '-94.31220'), ('Nederland', 17422, '29.97070', '-93.99590'), ('Nome', 515, '30.03440', '-94.41810'), ('Port Arthur', 15733, '29.89860', '-93.92860'), ('Port Neches', 12974, '29.97420', '-93.94120'), ('Sabine Pass', 57755, '29.73330', '-93.89420'), ('Sea Rim State Park', 57755, '29.68750', '-94.05000')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXC247': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Guerra', 8, '26.88300', '-98.88500'), ('Hebbronville', 4498, '27.31740', '-98.68600'), ('Randado', 4498, '27.08330', '-98.87000')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC249': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alice', 19010, '27.75520', '-98.06550'), ('Ben Bolt', 19010, '27.63333', '-98.08333'), ('Lake Alice', 19010, '27.80770', '-98.06380'), ('Orange Grove', 1288, '27.95580', '-97.93890'), ('Premont', 2772, '27.35780', '-98.12410'), ('Sandia', 269, '28.01190', '-97.88190')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC251': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alvarado', 3288, '32.41000', '-97.21140'), ('Briaroaks', 493, '32.49230', '-97.30190'), ('Burleson', 20976, '32.53310', '-97.32900'), ('Cleburne', 26005, '32.34930', '-97.40630'), ('Godley', 879, '32.44950', '-97.52660'), ('Grandview', 1358, '32.26800', '-97.17720'), ('Joshua', 4528, '32.46220', '-97.38040'), ('Keene', 5003, '32.39330', '-97.33020'), ('Rio Vista', 541, '32.23570', '-97.37550'), ('Venus', 977, '32.42750', '-97.10460')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC253': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anson', 2556, '32.75640', '-99.89580'), ('Avoca', 300, '32.86560', '-99.71560'), ('Funston', 2556, '32.75140', '-99.79970'), ('Hamlin', 2248, '32.88470', '-100.12610'), ('Hawley', 646, '32.61190', '-99.81390'), ('Hodges', 646, '32.58920', '-99.86860'), ('Lueders', 300, '32.79950', '-99.62330'), ('Neinda', 2248, '32.79670', '-100.09250'), ('Noodle', 318, '32.60220', '-100.05170'), ('Nugent', 300, '32.69390', '-99.66720'), ('Stamford', 3636, '32.94280', '-99.80390'), ('Stith', 2637, '32.54640', '-99.94390'), ('Truby', 2556, '32.64530', '-99.92500'), ('Tuxedo', 2556, '32.93280', '-99.95140')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC255': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cestohowa', 591, '29.01670', '-97.95000'), ('Falls City', 591, '28.98130', '-98.02130'), ('Gillett', 2186, '29.13330', '-97.80000'), ('Karnes City', 3457, '28.88700', '-97.90110'), ('Kenedy', 3487, '28.81520', '-97.85050'), ('Runge', 1080, '28.88590', '-97.71280')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC257': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Combine', 1788, '32.58820', '-96.51490'), ('Cottonwood', 156, '32.45690', '-96.39150'), ('Crandall', 2774, '32.63070', '-96.45370'), ('Forney', 5588, '32.75270', '-96.46610'), ('Grays Prairie', 296, '32.47250', '-96.35000'), ('Kaufman', 6490, '32.58180', '-96.30820'), ('Kemp', 1133, '32.43660', '-96.22370'), ('Lawrence', 231, '32.74120', '-96.34690'), ('Mabank', 2151, '32.36550', '-96.10400'), ('Oak Grove', 557, '32.52880', '-96.31560'), ('Oak Ridge', 224, '32.65760', '-96.26400'), ('Post Oak Bend City', 264, '32.63210', '-96.31330'), ('Rosser', 366, '32.46270', '-96.44220'), ('Terrell', 12490, '32.73280', '-96.29190')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC259': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bankersmith', 8911, '30.13330', '-98.81670'), ('Bergheim', 4695, '29.81670', '-98.58330'), ('Boerne', 6178, '29.80150', '-98.73850'), ('Comfort', 2358, '29.97230', '-98.90280'), ('Guadalupe River State Park', 3761, '29.87000', '-98.51000'), ('Kendalia', 1505, '29.96670', '-98.51670'), ('Sisterdale', 6178, '29.96670', '-98.73330'), ('Waring', 2358, '29.95000', '-98.80000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC261': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Border Patrol', 177, '27.00250', '-97.78330'), ('Sarita', 25575, '27.21670', '-97.80000')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC263': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clairemont', 513, '33.16630', '-100.75220'), ('Girard', 62, '33.36220', '-100.66250'), ('Jayton', 513, '33.25010', '-100.57440')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC265': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Camp Verde', 957, '29.88330', '-99.10000'), ('Center Point', 2358, '29.93330', '-99.03330'), ('Hunt', 1740, '30.06670', '-99.33330'), ('Ingram', 1740, '30.07850', '-99.23670'), ('Kerrville', 20425, '30.04190', '-99.13610'), ('Kerrville State Park', 20425, '30.04000', '-99.13600'), ('Kerr Wildlife Management Area', 1740, '30.09000', '-99.50000'), ('Mountain Home', 1740, '30.16670', '-99.36670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC267': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cleo', 2618, '30.60360', '-99.87470'), ('Junction', 2618, '30.48960', '-99.77100'), ('London', 2618, '30.67670', '-99.57610'), ('Roosevelt', 2618, '30.49080', '-100.05470'), ('Segovia', 2618, '30.41920', '-99.67000'), ('Telegraph', 2618, '30.32720', '-99.90580')], 'partOfState': 'south central', 'wfo': 'SJT'}, +'TXC269': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dumont', 1498, '33.80390', '-100.51780'), ('Finney', 1498, '33.77780', '-100.38280'), ('Grow', 1498, '33.80970', '-100.29830'), ('Guthrie', 1498, '33.62890', '-100.32280')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC271': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alamo Village', 1876, '29.41000', '-100.40000'), ('Brackettville', 1876, '29.31780', '-100.41040'), ('Spofford', 68, '29.17240', '-100.41100')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC273': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Kingsville', 25575, '27.50890', '-97.86070'), ('Loyola Beach', 25575, '27.33000', '-97.70080'), ('Ricardo', 25575, '27.41666', '-97.85000'), ('Riviera', 25575, '27.28333', '-97.81666')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC275': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Benjamin', 264, '33.58330', '-99.79300'), ('Gilliland', 0, '33.73140', '-99.68360'), ('Goree', 321, '33.46760', '-99.52350'), ('Knox City', 1219, '33.41750', '-99.81580'), ('Munday', 1527, '33.44890', '-99.62690'), ('Rhineland', 0, '33.53000', '-99.65000'), ('Truscott', 0, '33.75420', '-99.81160'), ('Vera', 0, '33.63270', '-99.56440')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC277': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Blossom', 1439, '33.66200', '-95.38220'), ('Deport', 718, '33.52910', '-95.31750'), ('Paris', 25898, '33.66660', '-95.54760'), ('Roxton', 639, '33.54550', '-95.72470'), ('Sun Valley', 60, '33.67250', '-95.42880'), ('Toco', 127, '33.65340', '-95.64910')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC279': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Amherst', 791, '34.01240', '-102.41400'), ('Earth', 1109, '34.23350', '-102.40840'), ('Fieldton', 6507, '34.03910', '-102.22270'), ('Littlefield', 6507, '33.91990', '-102.33460'), ('Olton', 2288, '34.17950', '-102.13650'), ('Spade', 1200, '33.92610', '-102.15300'), ('Springlake', 132, '34.23220', '-102.30510'), ('Sudan', 1039, '34.06750', '-102.52490')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC281': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Lampasas', 6786, '31.06340', '-98.18090'), ('Lometa', 782, '31.21610', '-98.39280')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC283': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Artesia Wells', 629, '28.22080', '-99.29380'), ('Cotulla', 3614, '28.43610', '-99.23640'), ('Encinal', 629, '28.04130', '-99.35470'), ('Fowlerton', 62, '28.45277', '-98.81666'), ('Los Angeles', 3614, '28.45000', '-99.00194'), ('Millet', 2632, '28.57222', '-99.21250'), ('Woodward', 3614, '28.53333', '-99.29333')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC285': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ezzell', 2345, '29.28330', '-96.90000'), ('Hallettsville', 2345, '29.44490', '-96.94180'), ('Moulton', 944, '29.57160', '-97.14600'), ('Shiner', 2074, '29.43200', '-97.17180'), ('Speaks', 5899, '29.25000', '-96.71670'), ('Sublime', 2345, '29.48300', '-96.80000'), ('Yoakum', 5731, '29.29280', '-97.14650')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC287': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dime Box', 5105, '30.35000', '-96.81670'), ('Fedor', 1178, '30.31670', '-97.05000'), ('Giddings', 5105, '30.18330', '-96.92790'), ('Lexington', 1178, '30.41470', '-97.00940'), ('Tanglewood', 1178, '30.50000', '-96.98330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC289': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buffalo', 1804, '31.46120', '-96.06280'), ('Centerville', 903, '31.25830', '-95.97680'), ('Jewett', 861, '31.36160', '-96.14580'), ('Leona', 181, '31.15460', '-95.97550'), ('Marquez', 220, '31.23690', '-96.25680'), ('Normangee', 719, '31.03000', '-96.11550'), ('Oakwood', 471, '31.58440', '-95.84890')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC291': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ames', 989, '30.04690', '-94.73770'), ('Cleveland', 7124, '30.34420', '-95.07870'), ('Daisetta', 1034, '30.11410', '-94.64270'), ('Dayton', 5709, '30.05040', '-94.89530'), ('Dayton Lakes', 101, '30.14520', '-94.82150'), ('Devers', 416, '30.02760', '-94.58510'), ('Hardin', 755, '30.15000', '-94.73640'), ('Kenefick', 667, '30.10880', '-94.85410'), ('Liberty', 7733, '30.04600', '-94.79770'), ('North Cleveland', 263, '30.36270', '-95.10160'), ('Plum Grove', 480, '30.19850', '-95.08740')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC293': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Coolidge', 848, '31.75120', '-96.65200'), ('Groesbeck', 4291, '31.52450', '-96.53110'), ('Kosse', 497, '31.30690', '-96.62870'), ('Mexia', 6563, '31.67970', '-96.48070'), ('Tehuacana', 322, '31.74420', '-96.54400'), ('Thornton', 540, '31.41170', '-96.57460')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC295': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Booker', 1315, '36.45590', '-100.53960'), ('Darrouzett', 303, '36.44510', '-100.32540'), ('Follett', 412, '36.43420', '-100.14070'), ('Higgins', 464, '36.12030', '-100.02690'), ('Lipscomb', 44, '36.23330', '-100.27060')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC297': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Annarose', 2524, '28.08770', '-98.16690'), ('Choke Canyon', 1878, '28.50880', '-98.31580'), ('Clegg', 2524, '28.12500', '-98.29000'), ('Dinero', 526, '28.20500', '-97.93333'), ('Esseville', 1878, '28.67270', '-98.22000'), ('George West', 2524, '28.33030', '-98.11770'), ('Lagarto', 269, '28.08833', '-97.93333'), ('Nell', 1878, '28.69583', '-98.07500'), ('Oakville', 2524, '28.41380', '-98.06190'), ('Pernitas Point', 269, '28.05830', '-97.90610'), ('Ray Point', 1878, '28.47500', '-98.08333'), ('Simmons', 1878, '28.39166', '-98.30416'), ('Three Rivers', 1878, '28.46560', '-98.17790'), ('Whitsett', 1878, '28.62383', '-98.27777')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC299': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buchanan Dam', 1688, '30.79910', '-98.43830'), ('Castell', 4584, '30.70000', '-98.50000'), ('Enchanted Rock Station', 8911, '30.51000', '-98.85000'), ('Horseshoe Bay', 3337, '30.53710', '-98.35480'), ('Kingsland', 4584, '30.66470', '-98.45350'), ('Llano', 3325, '30.75130', '-98.67390'), ('Sunrise Beach Village', 497, '30.58830', '-98.41880'), ('Tow', 1688, '30.88330', '-98.46670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC301': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Mentone', 9501, '31.71000', '-103.60000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC303': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Downtown Lubbock', 199564, '33.58770', '-101.84580'), ('Idalou', 2157, '33.66290', '-101.68190'), ('Lubbock', 199564, '33.57590', '-101.87540'), ('Lubbock Int. Airport', 708, '33.65380', '-101.81380'), ('Lubbock South Plai', 199564, '33.53500', '-101.92270'), ('New Deal', 708, '33.73130', '-101.83810'), ('Ransom Canyon', 750, '33.52960', '-101.68250'), ('Reese Center', 1263, '33.59250', '-102.02690'), ('Shallowater', 1708, '33.69010', '-101.99230'), ('Slaton', 6109, '33.43910', '-101.64230'), ('Slide', 320, '33.41380', '-101.92940'), ('Texas Tech Univ.', 199564, '33.58380', '-101.85770'), ('Wolfforth', 1941, '33.50800', '-102.01030'), ('Woodrow', 199564, '33.44660', '-101.84360')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC305': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Grassland', 2910, '33.13880', '-101.58970'), ('New Home', 320, '33.32730', '-101.91080'), ('New Moore', 1011, '33.02190', '-102.03220'), ("O'donnell", 1011, '32.96520', '-101.83010'), ('Tahoka', 2910, '33.16450', '-101.79440'), ('Wilson', 568, '33.31980', '-101.72670')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC307': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brady', 5523, '31.13500', '-99.33470'), ('Doole', 155, '31.39560', '-99.59860'), ('Fife', 5523, '31.39030', '-99.38420'), ('Lohn', 5523, '31.32360', '-99.40970'), ('Melvin', 155, '31.19830', '-99.58090'), ('Mercury', 350, '31.41220', '-99.15720'), ('Milburn', 350, '31.43750', '-99.10940'), ('Pear Valley', 155, '31.31000', '-99.49360'), ('Placid', 350, '31.32530', '-99.18420'), ('Rochelle', 5523, '31.22440', '-99.21080'), ('Salt Gap', 155, '31.30360', '-99.59890'), ('Stacy', 155, '31.47690', '-99.59750'), ('Voca', 5523, '31.01080', '-99.18420'), ('Waldrip', 155, '31.44250', '-99.42280')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC309': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bellmead', 9214, '31.60050', '-97.09140'), ('Beverly Hills', 2113, '31.52180', '-97.15600'), ('Bruceville-Eddy', 1490, '31.30580', '-97.24850'), ('Crawford', 705, '31.53380', '-97.44010'), ('Gholson', 922, '31.71170', '-97.23680'), ('Hallsburg', 518, '31.54580', '-96.94680'), ('Hewitt', 11085, '31.45110', '-97.19360'), ('Lacy-Lakeview', 5764, '31.61990', '-97.10760'), ('Leroy', 335, '31.73160', '-97.02000'), ('Lorena', 1433, '31.38230', '-97.21270'), ('Mart', 2273, '31.54140', '-96.83000'), ('McGregor', 4727, '31.45400', '-97.37730'), ('Moody', 1400, '31.30840', '-97.36020'), ('Northcrest', 1785, '31.63940', '-97.09740'), ('Riesel', 839, '31.47390', '-96.93080'), ('Robinson', 7111, '31.44960', '-97.12440'), ('Ross', 188, '31.72840', '-97.11120'), ('Waco', 103590, '31.56900', '-97.18320'), ('West', 2515, '31.80320', '-97.09280'), ('Woodway', 8695, '31.49660', '-97.23210')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC311': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Calliham', 1878, '28.46580', '-98.35580'), ('Cross', 436, '28.59690', '-98.54880'), ('Loma Alta', 3241, '28.08770', '-98.51580'), ('Tilden', 436, '28.45000', '-98.54444')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC313': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Madisonville', 4159, '30.95200', '-95.90840'), ('Midway', 288, '31.02650', '-95.75280')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC315': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Jefferson', 2024, '32.76090', '-94.34910')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC317': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ackerly', 245, '32.52460', '-101.71580'), ('Brown', 245, '32.43000', '-101.74000'), ('Buford', 288, '32.48000', '-101.96000'), ('Courtney', 2556, '32.15000', '-101.91000'), ('Flower Grove', 245, '32.50000', '-101.89000'), ('Grady', 2556, '32.31000', '-101.93000'), ('Lenorah', 2556, '32.31000', '-101.88000'), ('Stanton', 2556, '32.12930', '-101.78990'), ('Tarzan', 2556, '32.31000', '-101.98000'), ('Three Leagues', 288, '32.50000', '-101.97000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC319': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fredonia', 2134, '30.93190', '-99.11310'), ('Katemcy', 2134, '30.91250', '-99.25360'), ('Koockville', 2134, '30.75690', '-99.24970'), ('Loyal Valley', 2134, '30.57560', '-99.00750'), ('Mason', 2134, '30.74860', '-99.23030'), ('Pontotoc', 2134, '30.90920', '-98.97970'), ('Streeter', 2134, '30.76470', '-99.37610')], 'partOfState': 'south central', 'wfo': 'SJT'}, +'TXC321': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bay City', 18667, '28.97860', '-95.96340'), ('Markham', 1138, '28.96380', '-96.06340'), ('Palacios', 5153, '28.71360', '-96.23580'), ('Van Vleck', 1534, '29.03610', '-95.88180')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC323': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Eagle Pass', 22413, '28.70980', '-100.49140'), ('El Indio', 263, '28.51670', '-100.31670'), ('Quemado', 243, '28.95000', '-100.63330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC325': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Castroville', 2664, '29.34800', '-98.87320'), ('Devine', 4140, '29.14540', '-98.90470'), ("D'Hanis", 7897, '29.32860', '-99.27770'), ('Hondo', 7897, '29.35630', '-99.15830'), ('Lacoste', 1021, '29.30930', '-98.81090'), ('Mico', 4668, '29.53330', '-98.93330'), ('Natalia', 1663, '29.19050', '-98.85570'), ('Rio Medina', 2664, '29.43330', '-98.88330'), ('Yancey', 7897, '29.15000', '-99.13000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC327': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Erna', 2134, '30.75060', '-99.48560'), ('Fort Mckavett', 1653, '30.82690', '-100.10640'), ('Hext', 1653, '30.86890', '-99.52830'), ('Menard', 1653, '30.91750', '-99.78610')], 'partOfState': 'south central', 'wfo': 'SJT'}, +'TXC329': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cotton Flat', 94996, '31.93000', '-102.06000'), ('Greenwood', 2556, '32.03000', '-101.90000'), ('Midland', 94996, '32.00000', '-102.08020'), ('Spraberry', 2556, '31.93000', '-101.83000'), ('Valley View', 94996, '31.94470', '-101.99420'), ('Warfield', 90943, '31.92000', '-102.22000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC331': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buckholts', 387, '30.87260', '-97.12750'), ('Cameron', 5634, '30.85810', '-96.97700'), ('Milano', 400, '30.70680', '-96.85990'), ('Rockdale', 5235, '30.65530', '-97.00770'), ('Thorndale', 1092, '30.61430', '-97.20500')], 'partOfState': 'south central', 'wfo': 'FWD'}, +'TXC333': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Goldthwaite', 1802, '31.45390', '-98.57100'), ('Mullin', 175, '31.55470', '-98.66500')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC335': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Colorado City', 4281, '32.39970', '-100.85760'), ('Cuthbert', 203, '32.48000', '-101.03000'), ('Loraine', 656, '32.40830', '-100.71220'), ('Westbrook', 203, '32.35690', '-101.01220')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC337': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bowie', 5219, '33.55910', '-97.84480'), ('Nocona', 3198, '33.78350', '-97.73000'), ('St. Jo', 1048, '33.69520', '-97.52240')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC339': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Chateau Woods', 641, '30.16540', '-95.42740'), ('Conroe', 36811, '30.32330', '-95.47140'), ('Cut And Shoot', 1158, '30.33860', '-95.35290'), ('Magnolia', 1111, '30.21100', '-95.74870'), ('Montgomery', 489, '30.39120', '-95.69580'), ('Oak Ridge North', 2991, '30.15900', '-95.44500'), ('Panorama Village', 1965, '30.38210', '-95.49270'), ('Patton Village', 1391, '30.19470', '-95.16690'), ('Pinehurst', 3284, '30.18890', '-95.70510'), ('Porter Heights', 1448, '30.15170', '-95.32160'), ('Roman Forest', 1033, '30.17770', '-95.15930'), ('Shenandoah', 1718, '30.18100', '-95.45480'), ('Splendora', 745, '30.23010', '-95.16400'), ('Stagecoach', 340, '30.14120', '-95.71010'), ('The Woodlands', 29205, '30.15770', '-95.48930'), ('Willis', 2764, '30.42480', '-95.47810'), ('Woodbranch', 1312, '30.18400', '-95.18430'), ('Woodloch', 291, '30.21770', '-95.41400')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC341': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cactus', 2538, '36.04470', '-102.01110'), ('Dumas', 13747, '35.86320', '-101.96450'), ('Four Way', 13747, '35.69190', '-101.96190'), ('Lake Meredith', 2235, '35.65080', '-101.66190'), ('Masterson', 13747, '35.63580', '-101.95970'), ('Sunray', 1729, '36.01820', '-101.82340')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC343': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Daingerfield', 2517, '33.03060', '-94.72420'), ('Lone Star', 1615, '32.93740', '-94.70850'), ('Naples', 1410, '33.20360', '-94.67770'), ('Omaha', 999, '33.17960', '-94.74220')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC345': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Flomot', 432, '34.22690', '-100.98860'), ('Matador', 740, '34.01510', '-100.82120'), ('Northfield', 168, '34.28720', '-100.59830'), ('Roaring Springs', 265, '33.89940', '-100.85580')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC347': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Appleby', 444, '31.71780', '-94.60750'), ('Chireno', 405, '31.49880', '-94.34540'), ('Cushing', 637, '31.81330', '-94.84010'), ('Garrison', 844, '31.82420', '-94.49250'), ('Nacogdoches', 29914, '31.61500', '-94.65190')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXC349': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Angus', 334, '31.99770', '-96.42570'), ('Barry', 209, '32.09870', '-96.63790'), ('Blooming Grove', 833, '32.09190', '-96.71680'), ('Corsicana', 24485, '32.08420', '-96.46500'), ('Dawson', 852, '31.89380', '-96.71400'), ('Emhouse', 159, '32.16060', '-96.57760'), ('Eureka', 242, '32.00970', '-96.28590'), ('Frost', 648, '32.07810', '-96.80800'), ('Goodlow', 264, '32.11260', '-96.21640'), ('Kerens', 1681, '32.13100', '-96.22520'), ('Mildred', 405, '32.03690', '-96.34480'), ('Mustang', 35, '32.01250', '-96.43090'), ('Navarro', 191, '32.00030', '-96.38190'), ('Oak Valley', 401, '32.03040', '-96.51100'), ('Powell', 101, '32.11650', '-96.32870'), ('Retreat', 334, '32.05130', '-96.47710'), ('Rice', 564, '32.24470', '-96.50130'), ('Richland', 244, '31.92500', '-96.42580')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC351': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bleakwood', 2085, '30.69220', '-93.82500'), ('Bon Weir', 1235, '30.73970', '-93.66330'), ('Burkeville', 2459, '30.99970', '-93.66780'), ('Call', 2085, '30.61250', '-93.87390'), ('Deweyville', 1190, '30.30690', '-93.75790'), ('Farrsville', 2459, '30.98390', '-93.80750'), ('Jamestown', 2459, '30.92280', '-93.82640'), ('Newton', 2459, '30.85050', '-93.75280'), ('Toledo Bend Dam', 427, '31.17420', '-93.56670'), ('Wiergate', 2459, '30.99940', '-93.70750')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXC353': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Blackwell', 360, '32.08670', '-100.31720'), ('Champion', 656, '32.35860', '-100.62000'), ('Hylton', 360, '32.12810', '-100.20250'), ('Maryneal', 360, '32.23530', '-100.45000'), ('Nolan', 360, '32.27360', '-100.24220'), ('Roscoe', 1446, '32.44580', '-100.53830'), ('Sweetwater', 11415, '32.46900', '-100.40460'), ('Wastella', 656, '32.51030', '-100.64920')], 'partOfState': 'northwest', 'wfo': 'SJT'}, +'TXC355': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Agua Dulce', 737, '27.78280', '-97.90980'), ('Bishop', 3305, '27.58480', '-97.79760'), ('Cc NAS', 277454, '27.69000', '-97.28500'), ('Chapman Ranch', 83, '27.58000', '-97.45270'), ('Corpus Christi', 277454, '27.70570', '-97.29280'), ('Driscoll', 825, '27.67220', '-97.75080'), ('Flour Bluff', 277454, '27.65380', '-97.30270'), ('North San Pedro', 953, '27.80240', '-97.68270'), ('Petronila', 83, '27.66940', '-97.63360'), ('Robstown', 12727, '27.79920', '-97.66070'), ('Tuloso', 12727, '27.80880', '-97.54880')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC357': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Farnsworth', 7774, '36.32110', '-100.96580'), ('Perryton', 7774, '36.39170', '-100.80300'), ('Waka', 3021, '36.28170', '-101.04720'), ('Wolf Creek Park', 7774, '36.21470', '-100.64580')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC359': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Adrian', 159, '35.27590', '-102.66390'), ('Boys Ranch', 356, '35.51110', '-102.25080'), ('Vega', 936, '35.24660', '-102.42590'), ('Wildorado', 936, '35.21640', '-102.24440')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC361': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bridge City', 8651, '30.02990', '-93.85090'), ('Mauriceville', 2743, '30.21830', '-93.87290'), ('Orange', 18643, '30.10390', '-93.75820'), ('Pine Forest', 709, '30.17990', '-94.02980'), ('Rose City', 572, '30.10410', '-94.05000'), ('Vidor', 10935, '30.12930', '-94.00160'), ('West Orange', 4187, '30.07820', '-93.75990')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXC363': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gordon', 465, '32.54580', '-98.36580'), ('Graford', 578, '32.93670', '-98.24750'), ('Mineral Wells', 16946, '32.82030', '-98.07830'), ('Mingus', 246, '32.53680', '-98.42390'), ('Strawn', 709, '32.55080', '-98.49780')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC365': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Beckville', 752, '32.24280', '-94.45590'), ('Carthage', 6664, '32.15180', '-94.33690'), ('Gary City', 300, '32.02790', '-94.36830')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC367': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aledo', 1726, '32.69600', '-97.60380'), ('Annetta', 1108, '32.69550', '-97.65770'), ('Annetta North', 467, '32.71990', '-97.67360'), ('Annetta South', 555, '32.66930', '-97.64700'), ('Briar', 5350, '32.99210', '-97.55460'), ('Cool', 162, '32.79830', '-98.01250'), ('Hudson Oaks', 1637, '32.74730', '-97.70110'), ('Millsap', 353, '32.75000', '-98.00860'), ('Reno', 2322, '32.94090', '-97.58300'), ('Sanctuary', 234, '32.90870', '-97.58390'), ('Springtown', 1740, '32.96930', '-97.68100'), ('Weatherford', 14804, '32.75570', '-97.77130'), ('Willow Park', 2328, '32.75580', '-97.65130')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC369': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Black', 3854, '34.68250', '-102.60880'), ('Bovina', 1874, '34.51620', '-102.88830'), ('Farwell', 1364, '34.38540', '-103.03650'), ('Friona', 3854, '34.63890', '-102.72230'), ('Lariat', 1364, '34.33020', '-102.90740'), ('Lazbuddie', 4530, '34.39300', '-102.61080'), ('Oklahoma Lane', 1874, '34.37880', '-102.87690'), ('Rhea', 1874, '34.67110', '-102.94860')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXC371': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bakersfield', 1805, '30.89000', '-102.30000'), ('Belding', 7846, '30.79000', '-103.03000'), ('Coyanosa', 138, '31.24000', '-103.07000'), ('Fort Stockton', 7846, '30.89120', '-102.88570'), ('Girvin', 1805, '31.07000', '-102.39000'), ('Hovey', 5786, '30.60470', '-103.34690'), ('Imperial', 428, '31.27000', '-102.69000'), ('Iraan', 1238, '30.91230', '-101.89940'), ('Longfellow', 861, '30.16000', '-102.64000'), ('Sheffield', 1238, '30.69000', '-101.82000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXC373': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Corrigan', 1721, '30.99950', '-94.82440'), ('Goodrich', 243, '30.60960', '-94.94510'), ('Livingston', 5433, '30.70940', '-94.93610'), ('Onalaska', 1174, '30.80880', '-95.10590'), ('Seven Oaks', 171, '30.85340', '-94.85620')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC375': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Amarillo', 173627, '35.20260', '-101.81870'), ('Bushland', 173627, '35.19000', '-102.06270'), ('Valley De Oro', 356, '35.45170', '-102.10600')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC377': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Adobes', 4167, '29.77000', '-104.56000'), ('Candelaria', 187, '30.14000', '-104.68000'), ('Casa Piedra', 4167, '29.74000', '-104.06000'), ('Marfa', 2121, '30.31040', '-104.02490'), ('Ochoa', 4167, '29.67000', '-104.50000'), ('Presidio', 4167, '29.56110', '-104.36370'), ('Redford', 4167, '29.45000', '-104.19000'), ('Ruidosa', 4167, '29.98000', '-104.68000'), ('Ryan', 187, '30.43000', '-104.30000'), ('Shafter', 4167, '29.82000', '-104.30000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXC379': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('East Tawakoni', 775, '32.89770', '-95.93360'), ('Emory', 1021, '32.87570', '-95.76880'), ('Point', 645, '32.93010', '-95.87010')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC381': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buffalo Lake', 12875, '34.88890', '-102.13390'), ('Canyon', 12875, '34.98130', '-101.92160'), ('Lake Tanglewood', 825, '35.05900', '-101.78290'), ('Palo Duro Canyon', 825, '34.94890', '-101.67190'), ('Timbercreek Canyon', 277, '35.05480', '-101.81600'), ('Umbarger', 12875, '34.95440', '-102.10500')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC383': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Best', 2885, '31.23000', '-101.62000'), ('Big Lake', 2885, '31.19380', '-101.45840'), ('Stiles', 2885, '31.40670', '-101.56580'), ('Texon', 2885, '31.23000', '-101.69000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC385': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Barksdale', 822, '29.70000', '-100.03330'), ('Camp Wood', 822, '29.66890', '-100.01130'), ('Leakey', 387, '29.72440', '-99.76220'), ('Rio Frio', 387, '29.63330', '-99.73330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC387': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Annona', 282, '33.58100', '-94.91310'), ('Avery', 462, '33.55100', '-94.77980'), ('Bogata', 1396, '33.46920', '-95.21340'), ('Clarksville', 3883, '33.61050', '-95.05550'), ('Detroit', 776, '33.66080', '-95.26600')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC389': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Balmorhea', 527, '30.98410', '-103.74350'), ('Orla', 1243, '31.83000', '-103.91000'), ('Pecos', 9501, '31.41250', '-103.49560'), ('Red Bluff', 1243, '31.90000', '-103.92000'), ('Saragosa', 527, '31.03000', '-103.66000'), ('Toyah', 115, '31.31950', '-103.79350'), ('Toyahvale', 527, '30.94000', '-103.79000'), ('Verhalen', 527, '31.13000', '-103.59000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXC391': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Austwell', 192, '28.39010', '-96.84330'), ('Bayside', 360, '28.07580', '-97.24080'), ('McFaddin', 2562, '28.51666', '-97.01666'), ('Refugio', 3158, '28.30710', '-97.27500'), ('Tivoli', 192, '28.43333', '-96.88333'), ('Woodsboro', 1731, '28.23750', '-97.32480')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC393': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Codman', 588, '35.64000', '-100.75310'), ('Lora', 588, '35.74080', '-100.55720'), ('Miami', 588, '35.69180', '-100.64040')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC395': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bremond', 876, '31.16510', '-96.67630'), ('Calvert', 1426, '30.97960', '-96.67170'), ('Franklin', 1470, '31.02490', '-96.48570'), ('Hearne', 4690, '30.87700', '-96.59480')], 'partOfState': 'south central', 'wfo': 'FWD'}, +'TXC397': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fate', 497, '32.94080', '-96.38630'), ('Heath', 4149, '32.84780', '-96.47800'), ('McLendon-Chisholm', 914, '32.84590', '-96.38990'), ('Rockwall', 10486, '32.92200', '-96.45750'), ('Royse City', 2206, '32.97530', '-96.33290')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC399': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ballinger', 4243, '31.74070', '-99.95550'), ('Benoit', 4243, '31.78280', '-99.82860'), ('Crews', 2880, '31.93190', '-99.77780'), ('Drasco', 2880, '32.07640', '-99.98720'), ('Hatchel', 4243, '31.85000', '-99.94890'), ('Maverick', 1076, '31.83330', '-100.19470'), ('Miles', 850, '31.59720', '-100.18190'), ('Norton', 1076, '31.87080', '-100.12580'), ('Pumphrey', 2880, '32.03860', '-100.03810'), ('Rowena', 4243, '31.64690', '-100.04580'), ('Wilmeth', 2880, '31.97810', '-100.12000'), ('Wingate', 2880, '32.04390', '-100.10970'), ('Winters', 2880, '31.96550', '-99.93430')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC401': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Henderson', 11273, '32.15700', '-94.79720'), ('Mount Enterprise', 501, '31.91010', '-94.68190'), ('New London', 987, '32.26920', '-94.93130'), ('Overton', 2350, '32.27560', '-94.97230'), ('Reklaw', 266, '31.86460', '-94.98410'), ('Tatum', 1289, '32.31470', '-94.51870')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC403': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bronson', 287, '31.34550', '-94.00890'), ('Hemphill', 1106, '31.34180', '-93.85130'), ('Pineland', 882, '31.24640', '-93.97170')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXC405': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Broaddus', 189, '31.30540', '-94.26930'), ('San Augustine', 2337, '31.52990', '-94.11100')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXC407': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Coldspring', 691, '30.59090', '-95.12920'), ('Oakhurst', 230, '30.74470', '-95.30950'), ('Point Blank', 443, '30.74590', '-95.21680'), ('Shepherd', 1812, '30.49050', '-95.00300')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC409': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Edroy', 420, '27.93333', '-97.66666'), ('Gregory', 2318, '27.92210', '-97.29080'), ('Ingleside', 9388, '27.87000', '-97.20010'), ('Lake City', 526, '28.08300', '-97.88240'), ('Lake Corpus Christi', 465, '28.12880', '-97.87500'), ('Lakeside', 1040, '28.10450', '-97.86110'), ('Mathis', 5034, '28.09340', '-97.82450'), ('Odem', 2499, '27.94550', '-97.58680'), ('Portland', 12224, '27.87890', '-97.32690'), ('San Patricio', 369, '27.97850', '-97.77260'), ('Sinton', 5676, '28.03350', '-97.50960'), ('St. Paul', 5676, '28.10690', '-97.56690'), ('Taft', 3222, '27.98110', '-97.39080'), ('Taft Southwest', 2012, '27.97230', '-97.40530'), ('Tynan', 5034, '28.15530', '-97.73333')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC411': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Algerita', 350, '31.22780', '-98.85280'), ('Chappel', 2637, '31.05560', '-98.57060'), ('Cherokee', 2637, '30.98220', '-98.70720'), ('Elm Grove', 350, '31.42750', '-99.05560'), ('Hall', 350, '31.28500', '-99.05140'), ('Harkeyville', 2637, '31.21060', '-98.78530'), ('Locker', 350, '31.37720', '-98.89670'), ('Richland Springs', 350, '31.26940', '-98.94470'), ('San Saba', 2637, '31.19560', '-98.71780'), ('Skeeterville', 350, '31.35390', '-98.96250'), ('Spring Creek', 350, '31.35310', '-98.82170')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC413': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Eldorado', 1951, '30.86000', '-100.60060')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC415': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arah', 288, '32.76000', '-101.14000'), ('China Grove', 4281, '32.53000', '-100.82000'), ('Dermott', 288, '32.86000', '-101.02000'), ('Dunn', 288, '32.57000', '-100.89000'), ('Fluvanna', 288, '32.89000', '-101.15000'), ('Hermleigh', 393, '32.64000', '-100.76000'), ('Hudd', 1611, '32.93000', '-100.68000'), ('Inadale', 656, '32.54000', '-100.68000'), ('Ira', 288, '32.58000', '-101.00000'), ('Knapp', 288, '32.63190', '-101.13000'), ('Midway', 288, '32.73000', '-100.68000'), ('Snyder', 288, '32.71350', '-100.91510'), ('Union', 288, '32.73000', '-101.00000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC417': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Albany', 1921, '32.72670', '-99.29560'), ('Fort Griffin', 296, '32.92890', '-99.23280'), ('Ibex', 233, '32.67890', '-99.11890'), ('Moran', 233, '32.54680', '-99.16560')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC419': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Center', 5678, '31.79350', '-94.17830'), ('Huxley', 298, '31.76220', '-93.88740'), ('Joaquin', 925, '31.96680', '-94.05050'), ('Tenaha', 1072, '31.94370', '-94.24460'), ('Timpson', 1029, '31.90620', '-94.39640')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXC421': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Stratford', 1991, '36.33720', '-102.07360'), ('Texhoma', 291, '36.48770', '-101.81000')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC423': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arp', 901, '32.22770', '-95.05630'), ('Bullard', 1150, '32.14110', '-95.31910'), ('Lindale', 2954, '32.50540', '-95.40600'), ('New Chapel Hill', 553, '32.30340', '-95.16900'), ('Noonday', 515, '32.24390', '-95.39760'), ('Troup', 1659, '32.14460', '-95.12310'), ('Tyler', 75450, '32.32840', '-95.30360'), ('Whitehouse', 4032, '32.22600', '-95.21960'), ('Winona', 457, '32.49070', '-95.17090')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC425': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Glen Rose', 2122, '32.23630', '-97.75460')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC427': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('El Sauz', 1705, '26.56700', '-98.86700'), ('Falcon Dam', 9617, '26.55000', '-99.13330'), ('Garciasville', 2177, '26.33230', '-98.71710'), ('La Gloria', 2177, '26.71670', '-98.54000'), ('Rio Grande City', 9891, '26.37850', '-98.82630'), ('Roma', 8059, '26.41340', '-99.00240')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC429': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Breckenridge', 5868, '32.75670', '-98.91250')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC431': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Broome', 1081, '31.75940', '-100.83690'), ('Sterling City', 1081, '31.83900', '-100.98550')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC433': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aspermont', 1021, '33.13990', '-100.22490'), ('Old Glory', 1021, '33.12970', '-100.05550'), ('Peacock', 1021, '33.18220', '-100.39880'), ('Swenson', 1021, '33.20690', '-100.31160')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC435': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Sonora', 2751, '30.56670', '-100.64310')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC437': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Claytonville', 826, '34.37520', '-101.57440'), ('Happy', 647, '34.74130', '-101.85590'), ('Kress', 826, '34.36620', '-101.74750'), ('Tulia', 4699, '34.53760', '-101.77150')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXC439': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arlington', 332969, '32.69450', '-97.12750'), ('Azle', 9600, '32.89520', '-97.53110'), ('Bedford', 47152, '32.84610', '-97.13440'), ('Benbrook', 20208, '32.67840', '-97.46120'), ('Blue Mound', 2388, '32.85380', '-97.33720'), ('Colleyville', 19636, '32.89250', '-97.14710'), ('Crowley', 7467, '32.57730', '-97.35810'), ('Dalworthington Gar', 2186, '32.69370', '-97.15870'), ('Eagle Mountain', 5847, '32.89340', '-97.44430'), ('Edgecliff', 2550, '32.65520', '-97.34130'), ('Euless', 46005, '32.84910', '-97.07730'), ('Everman', 5836, '32.63020', '-97.28260'), ('Forest Hill', 11482, '32.66150', '-97.26530'), ('Fort Worth', 534694, '32.75390', '-97.33620'), ('Grapevine', 42059, '32.93350', '-97.07170'), ('Haltom City', 39018, '32.81760', '-97.27070'), ('Haslet', 1134, '32.95820', '-97.33970'), ('Hurst', 36273, '32.83550', '-97.17990'), ('Keller', 27345, '32.93010', '-97.22610'), ('Kennedale', 5850, '32.64750', '-97.21910'), ('Lakeside', 1040, '32.82160', '-97.48930'), ('Lake Worth', 4618, '32.81370', '-97.43290'), ('Mansfield', 28031, '32.56710', '-97.11740'), ('North Richland Hills', 55635, '32.86010', '-97.21910'), ('Pantego', 2318, '32.71510', '-97.15460'), ('Pecan Acres', 1587, '32.97000', '-97.47440'), ('Pelican Bay', 1505, '32.92330', '-97.51920'), ('Rendon', 7658, '32.58000', '-97.23650'), ('Richland Hills', 7978, '32.81000', '-97.22610'), ('River Oaks', 6580, '32.77570', '-97.39790'), ('Saginaw', 8551, '32.86520', '-97.36530'), ('Sansom Park', 3928, '32.80260', '-97.40170'), ('Southlake', 7065, '32.95320', '-97.14830'), ('Watauga', 20009, '32.87150', '-97.25090'), ('Westlake', 185, '32.98500', '-97.19800'), ('Westover Hills', 672, '32.74530', '-97.41150'), ('Westworth', 2350, '32.76000', '-97.42220'), ('White Settlement', 15472, '32.75480', '-97.46020')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC441': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Abilene', 115930, '32.44860', '-99.73280'), ('Bradshaw', 2880, '32.09830', '-99.89750'), ('Buffalo Gap', 463, '32.28220', '-99.83130'), ('Dyess AFB', 1158, '32.42250', '-99.86170'), ('Hamby', 39, '32.51860', '-99.63080'), ('Happy Valley', 360, '32.13250', '-100.10890'), ('Impact', 39, '32.49880', '-99.74630'), ('Lawn', 353, '32.13470', '-99.74940'), ('Merkel', 2637, '32.46830', '-100.01280'), ('Ovalo', 714, '32.17280', '-99.80750'), ('Potosi', 1664, '32.33560', '-99.68420'), ('Trent', 318, '32.48580', '-100.12500'), ('Tuscola', 714, '32.21070', '-99.79890'), ('Tye', 1158, '32.45320', '-99.86940'), ('View', 463, '32.34280', '-99.88440')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC443': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dryden', 861, '30.05000', '-102.12000'), ('Sanderson', 861, '30.14260', '-102.39770')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXC445': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brownfield', 9488, '33.17970', '-102.27050'), ('Locketville', 658, '33.38770', '-102.31380'), ('Meadow', 658, '33.33820', '-102.20620'), ('Tokio', 203, '33.18130', '-102.57190'), ('Union', 9488, '33.03630', '-102.22130'), ('Wellman', 203, '33.04700', '-102.42760')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC447': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Elbert', 56, '33.26610', '-98.99360'), ('Throckmorton', 1036, '33.17860', '-99.17720'), ('Woodson', 296, '33.01440', '-99.05340')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXC449': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [("Miller's Cove", 120, '33.15570', '-95.11560'), ('Mount Pleasant', 12291, '33.16550', '-94.97580'), ('Talco', 592, '33.36200', '-95.10390'), ('Winfield', 345, '33.16650', '-95.10930')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC451': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carlsbad', 88439, '31.59810', '-100.63250'), ('Christoval', 422, '31.19330', '-100.49830'), ('Grape Creek', 3138, '31.58080', '-100.54690'), ('Harriet', 850, '31.54690', '-100.31830'), ('Knickerbocker', 839, '31.26640', '-100.62280'), ('Mereta', 850, '31.45690', '-100.14060'), ('Orient', 850, '31.65670', '-100.33140'), ('San Angelo', 88439, '31.44600', '-100.45240'), ('Tankersley', 839, '31.34940', '-100.64310'), ('Vancourt', 850, '31.34280', '-100.17670'), ('Veribest', 850, '31.47640', '-100.25920'), ('Wall', 88439, '31.37390', '-100.30720'), ('Water Valley', 1081, '31.66750', '-100.71670')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXC453': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Austin', 656562, '30.27460', '-97.74040'), ('Bee Cave', 656, '30.30800', '-97.95520'), ('Briarcliff', 895, '30.40590', '-98.04600'), ('Creedmoor', 211, '30.09190', '-97.74170'), ('Garfield', 1660, '30.18970', '-97.56060'), ('Jonestown', 1681, '30.48920', '-97.92810'), ('Lago Vista', 4507, '30.45190', '-97.99670'), ('Lakeway', 8002, '30.36660', '-97.97940'), ('Lost Creek', 4729, '30.29540', '-97.84400'), ('Manor', 1204, '30.34600', '-97.55570'), ('Mansfield Dam', 656, '30.33330', '-97.90000'), ('Mustang Ridge', 785, '30.05660', '-97.69090'), ('Onion Creek', 1544, '30.13630', '-97.78390'), ('Pflugerville', 16335, '30.44070', '-97.62020'), ('Rollingwood', 1388, '30.27380', '-97.78680'), ('San Leanna', 325, '30.14490', '-97.81870'), ('Sunset Valley', 327, '30.22610', '-97.81640'), ('Tanglewood Forest', 2941, '30.17430', '-97.83890'), ('Wells Branch', 7094, '30.44580', '-97.67910'), ('West Lake Hills', 2542, '30.29210', '-97.80960'), ('Windemere', 3207, '30.45890', '-97.64880')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC455': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Groveton', 1107, '31.05730', '-95.12710'), ('Trinity', 2648, '30.94420', '-95.37330')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC457': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Chester', 265, '30.92260', '-94.60260'), ('Colmesneil', 638, '30.90900', '-94.42310'), ('Fred', 6393, '30.57640', '-94.17610'), ('Hillister', 2415, '30.66750', '-94.38110'), ('Ivanhoe', 2415, '30.68440', '-94.41310'), ('Rockland', 638, '31.00000', '-94.38200'), ('Spurger', 2415, '30.69300', '-94.17800'), ('Town Bluff', 8247, '30.79080', '-94.18030'), ('Warren', 2415, '30.61440', '-94.40830'), ('Woodville', 2415, '30.77410', '-94.42240')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXC459': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Big Sandy', 1288, '32.58570', '-95.11260'), ('East Mountain', 580, '32.59390', '-94.85520'), ('Gilmer', 4799, '32.73020', '-94.94570'), ('Ore City', 1106, '32.80150', '-94.71690'), ('Union Grove', 271, '32.58310', '-94.90850')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC461': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('McCamey', 1805, '31.13260', '-102.21950'), ('Midkiff', 800, '31.63270', '-101.83940'), ('Rankin', 800, '31.22520', '-101.93940')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC463': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Concan', 387, '29.51670', '-99.73330'), ('Garner State Park', 387, '29.57000', '-99.74000'), ('Knippa', 739, '29.30000', '-99.63330'), ('Montell', 822, '29.53330', '-100.01670'), ('Reagan Wells', 387, '29.55000', '-99.80000'), ('Sabinal', 739, '29.32140', '-99.46870'), ('Utopia', 387, '29.61670', '-99.53330'), ('Uvalde', 14729, '29.21550', '-99.78490')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC465': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Comstock', 33867, '29.68330', '-101.16670'), ('Del Rio', 33867, '29.37630', '-100.89570'), ('Juno', 3436, '30.15000', '-101.11670'), ('Langtry', 33867, '29.81670', '-101.56670'), ('Laughlin AFB', 2225, '29.35570', '-100.78380'), ('Loma Alta', 33867, '29.91670', '-100.76670'), ('Pandale', 3436, '30.18330', '-101.55000'), ('Seminole Canyon State Park', 33867, '29.70000', '-101.34000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC467': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Canton', 3292, '32.54750', '-95.86390'), ('Edgewood', 1348, '32.69480', '-95.88210'), ('Edom', 322, '32.37300', '-95.61110'), ('Fruitvale', 418, '32.68390', '-95.80360'), ('Grand Saline', 3028, '32.67750', '-95.71120'), ('Van', 1854, '32.52370', '-95.63730'), ('Wills Point', 2986, '32.70940', '-96.00620')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXC469': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bloomington', 2562, '28.63333', '-96.88333'), ('Dacosta', 2562, '28.71666', '-96.88333'), ('Inez', 1787, '28.88333', '-96.78333'), ('Mission Valley', 60603, '28.85050', '-97.15670'), ('Nursery', 60603, '28.91666', '-97.10300'), ('Placedo', 2562, '28.66666', '-96.83333'), ('Telferner', 1787, '28.83333', '-96.83333'), ('Victoria', 60603, '28.82420', '-96.98290')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC471': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Huntsville', 35078, '30.71190', '-95.54980'), ('New Waverly', 950, '30.53650', '-95.48120'), ('Riverside', 451, '30.84750', '-95.39880')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC473': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brookshire', 3450, '29.78240', '-95.95350'), ('Hempstead', 4691, '30.09310', '-96.08040'), ('Pattison', 447, '29.81400', '-95.97750'), ('Pine Island', 571, '30.05340', '-96.02860'), ('Prairie View', 4004, '30.08320', '-95.98910'), ('Waller', 1493, '30.05780', '-95.92330')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC475': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Barstow', 406, '31.46140', '-103.39500'), ('Grandfalls', 391, '31.34060', '-102.85440'), ('Monahans', 6821, '31.60000', '-102.89000'), ('Pyote', 348, '31.53720', '-103.12250'), ('Royalty', 391, '31.37000', '-102.87000'), ('Thorntonville', 6821, '31.57800', '-102.92160'), ('Wickett', 560, '31.57010', '-103.00940')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC477': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brenham', 13507, '30.15970', '-96.39730'), ('Burton', 311, '30.17930', '-96.59730')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC479': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aguilares', 176576, '27.45416', '-99.10000'), ('Bruni', 412, '27.42770', '-98.84380'), ('Columbia Bridge', 176576, '27.71190', '-99.73180'), ('El Cenizo', 3545, '27.34580', '-99.49690'), ('Laredo', 176576, '27.53430', '-99.48660'), ('Las Tiendas', 629, '27.89580', '-99.62580'), ('Mirando City', 493, '27.43080', '-98.93190'), ('Oilton', 310, '27.45000', '-98.91388'), ('Orvil', 176576, '27.62580', '-99.49690'), ('Rio Bravo', 3545, '27.36166', '-99.47666')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXC481': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Boling-Iago', 1119, '29.26050', '-95.94860'), ('East Bernard', 1729, '29.52800', '-96.06300'), ('El Campo', 10945, '29.19650', '-96.27630'), ('Wharton', 9011, '29.31640', '-96.09900')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXC483': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Allison', 0, '35.60580', '-100.10030'), ('Briscoe', 3985, '35.58360', '-100.28940'), ('Kellerville', 830, '35.37170', '-100.50250'), ('Lela', 2029, '35.22750', '-100.34250'), ('Mobeetie', 107, '35.53050', '-100.44210'), ('New Mobeetie', 107, '35.53190', '-100.44110'), ('Shamrock', 2029, '35.21600', '-100.24550'), ('Twitty', 2029, '35.31390', '-100.23580'), ('Wheeler', 3985, '35.44030', '-100.27500')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXC485': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Burkburnett', 10927, '34.08710', '-98.56490'), ('Cashion', 0, '34.03210', '-98.49940'), ('Electra', 3168, '34.03030', '-98.91850'), ('Haynesville', 0, '34.09170', '-98.91610'), ('Iowa Park', 6431, '33.95380', '-98.66900'), ('Kamay', 0, '33.85760', '-98.80830'), ('Pleasant Valley', 378, '33.93750', '-98.60100'), ('Sheppard AFB', 104197, '33.97350', '-98.50870'), ('Wichita Falls', 104197, '33.91120', '-98.49200')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC487': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fargo', 0, '34.29430', '-99.27750'), ('Grayback', 0, '33.99040', '-99.17220'), ('Harrold', 0, '34.08110', '-99.03190'), ('Lockett', 0, '34.08410', '-99.36840'), ('Odell', 0, '34.34560', '-99.41770'), ('Oklaunion', 0, '34.13050', '-99.14180'), ('Vernon', 12001, '34.15220', '-99.28760')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXC489': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Lyford', 1973, '26.41090', '-97.78960'), ('Port Mansfield', 680, '26.55000', '-97.43330'), ('Raymondville', 8880, '26.47910', '-97.78080'), ('San Perlita', 680, '26.50040', '-97.63980'), ('Sebastian', 1598, '26.34390', '-97.79730')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC491': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anderson Mill', 8953, '30.45480', '-97.80550'), ('Andice', 1054, '30.78330', '-97.85000'), ('Bartlett', 1675, '30.79470', '-97.43190'), ('Brushy Creek', 15371, '30.51330', '-97.73940'), ('Cedar Park', 26049, '30.51460', '-97.83080'), ('Coupland', 13575, '30.46670', '-97.38330'), ('Florence', 1054, '30.83970', '-97.79260'), ('Georgetown', 28339, '30.64760', '-97.68630'), ('Georgetown Dam', 28339, '30.66000', '-97.71000'), ('Granger', 1299, '30.71790', '-97.44070'), ('Granger Dam', 1299, '30.70000', '-97.33000'), ('Hutto', 1250, '30.54580', '-97.54210'), ('Jarrell', 591, '30.81670', '-97.60000'), ('Jollyville', 15813, '30.44950', '-97.75100'), ('Leander', 7596, '30.56240', '-97.86050'), ('Liberty Hill', 1409, '30.66670', '-97.91670'), ('Round Rock', 30923, '30.51750', '-97.67210'), ('Serenada', 3242, '30.69910', '-97.69150'), ('Taylor', 13575, '30.57180', '-97.41000'), ('Thrall', 550, '30.58840', '-97.29840'), ('Weir', 591, '30.67330', '-97.59120')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC493': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Floresville', 5868, '29.13680', '-98.15650'), ('Kosciusko', 1398, '29.10000', '-97.93330'), ('La Vernia', 931, '29.35000', '-98.11670'), ('Pandora', 2186, '29.25000', '-97.83330'), ('Poth', 1642, '29.07240', '-98.08090'), ('Stockdale', 1398, '29.23380', '-97.96220'), ('Sutherland Springs', 931, '29.26670', '-98.06670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXC495': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Kermit', 5714, '31.85390', '-103.09200'), ('Wink', 1189, '31.75520', '-103.15440')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXC497': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alvord', 1007, '33.35890', '-97.69500'), ('Aurora', 853, '33.05820', '-97.51590'), ('Boyd', 1099, '33.08050', '-97.56160'), ('Bridgeport', 4309, '33.20760', '-97.75720'), ('Chico', 947, '33.29420', '-97.79920'), ('Decatur', 5201, '33.23330', '-97.59140'), ('Lake Bridgeport', 372, '33.20710', '-97.83060'), ('Newark', 887, '32.99490', '-97.47080'), ('Rhome', 605, '33.05100', '-97.46730'), ('Runaway Bay', 700, '33.17490', '-97.86650')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC499': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alba', 430, '32.79140', '-95.63520'), ('Hawkins', 1331, '32.59080', '-95.20250'), ('Mineola', 4550, '32.66590', '-95.48890'), ('Quitman', 1684, '32.79590', '-95.44430'), ('Winnsboro', 2904, '32.95620', '-95.28980'), ('Yantis', 210, '32.93190', '-95.57500')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXC501': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bronco', 1422, '33.25690', '-103.05860'), ('Bronco', 1450, '33.25380', '-103.03880'), ('Denver City', 3985, '32.96960', '-102.83070'), ('Plains', 1450, '33.19010', '-102.82710')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXC503': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Graham', 8716, '33.10070', '-98.57740'), ('Newcastle', 575, '33.19400', '-98.74400'), ('Olney', 3396, '33.36440', '-98.75810')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXC505': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Escoba', 7119, '27.06700', '-99.01000'), ('Zapata', 7119, '26.89430', '-99.26210')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXC507': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Batesville', 1298, '28.94730', '-99.61430'), ('Cometa', 7190, '28.66670', '-100.01670'), ('Crystal City', 7190, '28.68990', '-99.82550'), ('La Pryor', 1491, '28.94860', '-99.84880'), ('Loma Vista', 1298, '28.76670', '-99.60000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'UTC001': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Adamsville', 0, '38.25000', '-112.80000'), ('Beaver', 2454, '38.27900', '-112.63980'), ('Indian Peak Management Range', 0, '38.25885', '-113.83858'), ('Manderfield', 0, '38.35000', '-112.63000'), ('Milford', 1451, '38.40000', '-113.02010'), ('Minersville', 817, '38.21330', '-112.92410'), ('Woods Reservoir', 0, '38.35302', '-113.67469')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC003': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Bear River', 750, '41.61440', '-112.12310'), ('Bothwell', 0, '41.72000', '-112.27000'), ('Brigham City', 17411, '41.50910', '-112.00960'), ('Collinston', 0, '41.77000', '-112.08000'), ('Corinne', 621, '41.54770', '-112.11660'), ('Curlew Junction', 0, '41.97000', '-113.05000'), ('Deweyville', 278, '41.71000', '-112.08980'), ('Elwood', 678, '41.68200', '-112.09500'), ('Etna', 0, '41.67000', '-113.97000'), ('Fielding', 448, '41.81200', '-112.11640'), ('Garland', 1943, '41.73680', '-112.14900'), ('Grouse Creek', 0, '41.72000', '-113.88000'), ('Gunnison Island', 0, '41.32012', '-112.85032'), ('Hat Island', 0, '41.07049', '-112.58552'), ('Honeyville', 1214, '41.63480', '-112.08280'), ('Howell', 221, '41.77120', '-112.44490'), ('Lakeside', 0, '41.21000', '-112.88000'), ('Locomotive Springs', 0, '41.70992', '-112.92276'), ('Lucin', 0, '41.35000', '-113.92000'), ('Lynn', 0, '41.88000', '-113.73000'), ('Mantua Reservoir', 665, '41.50280', '-111.93240'), ('Park Valley', 0, '41.82000', '-113.33000'), ('Penrose', 0, '41.65000', '-112.30000'), ('Perry', 2383, '41.46490', '-112.03430'), ('Plymouth', 328, '41.87640', '-112.13480'), ('Portage', 257, '41.97660', '-112.23780'), ('Promontory', 0, '41.62000', '-112.57000'), ('Rosette', 0, '41.82000', '-113.42000'), ('Snowville', 177, '41.96980', '-112.71470'), ('Standrod', 0, '41.98000', '-113.42000'), ('Thatcher', 0, '41.70000', '-112.30000'), ('Tremonton', 5592, '41.68500', '-112.13000'), ('Washakie', 0, '41.95000', '-112.22000'), ('Willard', 1630, '41.41170', '-112.04400'), ('Yost', 0, '41.97000', '-113.55000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC005': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Amalga', 427, '41.85750', '-111.89680'), ('Avon', 0, '41.53000', '-111.82000'), ('Beaver Mtn', 0, '41.96000', '-111.55000'), ('Clarkston', 688, '41.92100', '-112.04840'), ('College Ward', 0, '41.68000', '-111.88000'), ('Cornish', 259, '41.97310', '-111.95100'), ('Hyde Park', 2955, '41.79800', '-111.81470'), ('Hyrum', 6316, '41.63290', '-111.84470'), ('Lewiston', 1877, '41.96090', '-111.87490'), ('Logan', 42670, '41.73000', '-111.83000'), ('Mendon', 898, '41.71100', '-111.97970'), ('Millville', 1507, '41.68060', '-111.81890'), ('Newton', 699, '41.86120', '-111.98920'), ('Nibley', 2045, '41.67250', '-111.84190'), ('North Logan', 6163, '41.77150', '-111.81410'), ('Paradise', 759, '41.56760', '-111.83320'), ('Powder Mountain', 0, '41.39000', '-111.75000'), ('Providence', 4377, '41.70520', '-111.81340'), ('Richmond', 2051, '41.91940', '-111.80940'), ('River Heights', 1496, '41.72250', '-111.82040'), ('Smithfield', 7261, '41.83540', '-111.82970'), ('Trenton', 449, '41.91390', '-111.93520'), ('Wellsville', 2728, '41.63230', '-111.93180')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC007': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Castle Gate', 0, '39.73000', '-110.88000'), ('Clear Creek', 0, '39.65000', '-111.15000'), ('Coal City', 0, '39.67000', '-111.02000'), ('East Carbon', 1270, '39.55000', '-110.38330'), ('Helper', 2025, '39.68970', '-110.85910'), ('Hiawatha', 45, '39.49620', '-111.02900'), ('Kenilworth', 0, '39.68000', '-110.80000'), ('Price', 8402, '39.60170', '-110.82000'), ('Scofield Reservoir', 43, '39.72500', '-111.16120'), ('Sunnyside', 404, '39.55220', '-110.40010'), ('Wattis', 0, '39.53000', '-111.02000'), ('Wellington', 1666, '39.53790', '-110.73740')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC009': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Manila', 308, '40.99280', '-109.72040')], 'partOfState': '', 'wfo': 'GJT'}, +'UTC011': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Antelope Island State Park', 0, '41.04000', '-112.23000'), ('Bountiful', 41301, '40.87610', '-111.86520'), ('Centerville', 14585, '40.92660', '-111.87000'), ('Clearfield', 25974, '41.10450', '-112.02260'), ('Clinton', 7945, '41.14100', '-112.06260'), ('East Layton', 0, '41.08000', '-111.92000'), ('Farmington', 12081, '40.98870', '-111.88000'), ('Fruit Heights', 4701, '41.02830', '-111.90570'), ('Hill Air Force Base', 0, '41.11670', '-111.96670'), ('Kaysville', 20351, '41.03070', '-111.92430'), ('Layton', 58474, '41.07800', '-111.95460'), ('North Salt Lake', 8749, '40.83000', '-111.91960'), ('South Weber', 4260, '41.13390', '-111.93490'), ('Sunset', 5204, '41.13870', '-112.02720'), ('Syracuse', 9398, '41.09620', '-112.05740'), ('West Point', 6033, '41.12150', '-112.09710'), ('Woods Cross', 6419, '40.87360', '-111.90900')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC013': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Altamont', 178, '40.35860', '-110.28630'), ('Altonah', 0, '40.40000', '-110.30000'), ('Arcadia', 0, '40.23000', '-110.23000'), ('Bridgeland', 0, '40.17000', '-110.23000'), ('Cedarview', 0, '40.37000', '-110.05000'), ('Duchesne', 1408, '40.17540', '-110.39250'), ('Fruitland', 0, '40.22000', '-110.83000'), ('Hanna', 0, '40.40000', '-110.77000'), ('Kings Peak', 0, '40.78000', '-110.38000'), ('Moon Lake', 0, '40.57600', '-110.50603'), ('Mountain Home', 0, '40.40000', '-110.38000'), ('Myton', 539, '40.19350', '-110.06180'), ('Neola', 533, '40.44030', '-110.03670'), ('Roosevelt', 4299, '40.29550', '-110.00000'), ('Tabiona', 149, '40.35390', '-110.70860'), ('Talmage', 0, '40.33000', '-110.43000'), ('Upalco', 0, '40.28000', '-110.22000'), ('Utahn', 0, '40.27000', '-110.43000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC015': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Castle Dale', 1657, '39.22140', '-111.01980'), ('Clawson', 153, '39.13290', '-111.09720'), ('Cleveland', 508, '39.34900', '-110.85650'), ('Elgin', 0, '38.98803', '-110.14541'), ('Elmo', 368, '39.38880', '-110.81550'), ('Emery', 308, '38.92530', '-111.25060'), ('Ferron', 1623, '39.09070', '-111.13230'), ('Goblin Valley', 0, '38.54000', '-110.70000'), ('Green River', 973, '38.99525', '-110.16102'), ('Huntington', 2131, '39.33110', '-110.96290'), ('Molen', 0, '39.08000', '-111.08000'), ('Moore', 0, '38.97000', '-111.15000'), ('Orangeville', 1398, '39.23130', '-111.05890'), ('Woodside', 0, '39.26621', '-110.34900')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC017': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Antimony', 122, '38.10090', '-111.98360'), ('Boulder', 126, '37.92900', '-111.42780'), ('Bryce Canyon National Park', 0, '37.67000', '-112.17000'), ('Cannonville', 148, '37.56610', '-112.05410'), ('Escalante', 818, '37.76490', '-111.60080'), ('Hatch', 127, '37.65240', '-112.43260'), ('Henrieville', 159, '37.56460', '-111.99460'), ('Hillsdale', 0, '37.72000', '-112.38000'), ('Hite Marina', 0, '37.90000', '-110.39000'), ('Panguitch', 1623, '37.82370', '-112.43770'), ('Rubys Inn', 0, '37.70000', '-112.16000'), ('Ticaboo', 0, '37.60000', '-110.68000'), ('Tropic', 508, '37.62460', '-112.08770')], 'partOfState': '', 'wfo': 'SLCGJT'}, +'UTC019': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Arches National Park', 0, '38.70831', '-109.56317'), ('Castle Valley', 349, '38.63260', '-109.39940'), ('Cisco', 20, '38.96560', '-109.32101'), ('Moab', 4779, '38.57250', '-109.54710')], 'partOfState': 'east central', 'wfo': 'GJT'}, +'UTC021': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Brian Head', 118, '37.69840', '-112.84170'), ('Cedar City', 20527, '37.67500', '-113.07000'), ('Enoch', 3467, '37.76220', '-113.04200'), ('Hamilton Fort', 0, '37.63000', '-113.13000'), ('Hamlin Valley', 0, '37.99830', '-113.96900'), ('Kanarraville', 311, '37.53750', '-113.17940'), ('Lund', 0, '38.00000', '-113.43000'), ('Modena', 0, '37.80000', '-113.92000'), ('Newcastle', 0, '37.67000', '-113.55000'), ('Paragonah', 470, '37.88690', '-112.77160'), ('Parowan', 2565, '37.83220', '-112.82010'), ('Summit', 0, '37.82000', '-112.97000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC023': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Callao', 0, '39.90000', '-113.72000'), ('Eureka', 766, '39.95500', '-112.11560'), ('Fish Springs Wildlife Refuge', 0, '39.85800', '-113.36776'), ('Jericho', 0, '39.75000', '-112.17000'), ('Levan', 688, '39.55680', '-111.86020'), ('Little Sahara State Park', 0, '39.72000', '-112.23000'), ('Mills', 0, '39.48000', '-112.05000'), ('Mona', 850, '39.81540', '-111.85750'), ('Nephi', 4733, '39.71080', '-111.82880'), ('Partoun', 0, '39.65000', '-113.90000'), ('Tintic Junction', 0, '39.92000', '-112.17000'), ('Trout Creek', 0, '39.70000', '-113.83330'), ('Yuba Lake State Park', 0, '39.36000', '-112.02000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC025': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Alton', 134, '37.43880', '-112.48320'), ('Big Water', 417, '37.06850', '-111.66160'), ('Bullfrog', 0, '37.50000', '-110.72000'), ('Coral Pink Sand Dunes', 0, '37.03802', '-112.72010'), ('Dangling Rope Marina', 0, '37.12121', '-111.07982'), ('Glendale', 355, '37.33210', '-112.60070'), ('Kanab', 3564, '37.03500', '-112.52000'), ('Kodachrome Basin State Park', 0, '37.50014', '-112.00340'), ('Long Valley Junction', 0, '37.48900', '-112.51300'), ('Mt Carmel', 0, '37.23000', '-112.67000'), ('Orderville', 596, '37.27620', '-112.63260')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC027': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Abraham', 0, '39.40000', '-112.72000'), ('Black Rock', 0, '38.72000', '-112.97000'), ('Cove Fort', 0, '38.60000', '-112.58000'), ('Delta', 3209, '39.35330', '-112.56570'), ('Desert Range Exp Station', 0, '38.59496', '-113.74859'), ('Fillmore', 2253, '38.96770', '-112.33680'), ('Flowell', 0, '38.98000', '-112.43000'), ('Gandy', 0, '39.45000', '-113.98000'), ('Garrison', 0, '38.93000', '-114.03000'), ('Greenwood', 0, '39.12000', '-112.35000'), ('Hatton', 0, '38.83000', '-112.47000'), ('Hinckley', 698, '39.33240', '-112.67280'), ('Holden', 400, '39.09990', '-112.26890'), ('Kanosh', 485, '38.80460', '-112.43830'), ('Kings Canyon', 0, '39.08000', '-113.64000'), ('Leamington', 217, '39.53100', '-112.28930'), ('Lynndyl', 134, '39.50810', '-112.38900'), ('Mc Cornick', 0, '39.22000', '-112.42000'), ('Meadow', 254, '38.88680', '-112.40590'), ('Oak City', 650, '39.37610', '-112.33600'), ('Scipio', 290, '39.24760', '-112.10200'), ('Sugarville', 0, '39.47000', '-112.65000'), ('Sutherland', 0, '39.38000', '-112.63000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC029': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Croydon', 0, '41.07000', '-111.52000'), ('Morgan', 2635, '41.04960', '-111.68270'), ('Mountain Green', 0, '41.15500', '-111.80000'), ('Peterson', 0, '41.12000', '-111.74500'), ('Portersville', 0, '40.98000', '-111.68000'), ('Richville', 0, '41.01500', '-111.69500'), ('Stoddard', 0, '41.07000', '-111.69400')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC031': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Angle', 0, '38.25000', '-111.97000'), ('Circleville', 505, '38.16340', '-112.26180'), ('Greenwich', 0, '38.43000', '-111.92000'), ('Junction', 177, '38.23840', '-112.22410'), ('Kingston', 142, '38.20500', '-112.17920'), ('Marysvale', 381, '38.43770', '-112.25810')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC033': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Garden City', 357, '41.93410', '-111.40970'), ('Laketown', 188, '41.82230', '-111.31770'), ('Lakota', 0, '41.98000', '-111.40000'), ('Meadowville', 0, '41.85000', '-111.40000'), ('Pickelville', 0, '41.92000', '-111.38000'), ('Randolph', 483, '41.66450', '-111.18270'), ('Woodruff', 194, '41.52290', '-111.16360')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC035': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Alta', 370, '40.57910', '-111.61910'), ('Bluffdale', 4700, '40.47600', '-111.95550'), ('Brighton', 0, '40.60000', '-111.56000'), ('Copperton', 0, '40.57000', '-112.10000'), ('Cottonwood Heights', 27569, '40.61010', '-111.80960'), ('Draper', 25220, '40.49940', '-111.86370'), ('Herriman', 1523, '40.52000', '-112.03000'), ('Holladay', 14561, '40.67000', '-111.82000'), ('Kearns', 33659, '40.65250', '-112.00830'), ('Magna', 22770, '40.70400', '-112.08620'), ('Midvale', 27029, '40.61180', '-111.90230'), ('Murray', 34024, '40.65250', '-111.89250'), ('Parleys Summit', 0, '40.74567', '-111.62000'), ('Riverton', 25011, '40.51970', '-111.94520'), ('Salt Lake City', 181743, '40.77730', '-111.87000'), ('Sandy', 85406, '40.56970', '-111.85430'), ('Snowbird', 0, '40.57000', '-111.65000'), ('South Jordan', 29437, '40.55880', '-111.97320'), ('South Salt Lake', 22038, '40.71020', '-111.88680'), ('Sugarhouse', 0, '40.72578', '-111.86522'), ('Taylorsville', 57439, '40.67000', '-111.93000'), ('University Of Utah', 0, '40.78000', '-111.83000'), ('West Jordan', 68336, '40.59990', '-111.99460'), ('West Valley City', 108896, '40.69090', '-112.00860')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC037': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Aneth', 598, '37.22000', '-109.18000'), ('Blanding', 3162, '37.62470', '-109.48010'), ('Bluff', 320, '37.28000', '-109.57000'), ('Canyonlands National Park', 0, '38.40000', '-109.88000'), ('Dead Horse Point State Park', 0, '38.47100', '-109.73900'), ('Eastland', 0, '37.80000', '-109.15000'), ('Fry Canyon', 0, '37.63000', '-110.15000'), ('Goulding', 0, '37.00000', '-110.18000'), ('Hovenweep National Monument', 0, '37.38722', '-109.07956'), ('La Sal', 339, '38.33000', '-109.18000'), ('La Sal Junction', 0, '38.32000', '-109.38000'), ('Mexican Hat', 88, '37.12860', '-109.91550'), ('Montezuma Creek', 507, '37.26010', '-109.31330'), ('Monticello', 1958, '37.87150', '-109.33550'), ('Navajo Mountain Trading Post', 379, '37.01670', '-110.81670'), ('Oljeto', 0, '37.03000', '-110.33000'), ('Red Mesa', 0, '37.00000', '-109.36670'), ('Summit Point', 0, '38.05000', '-109.12000'), ('Ucolo', 0, '37.86132', '-109.06500')], 'partOfState': 'southeast', 'wfo': 'GJTSLC'}, +'UTC039': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Axtell', 0, '39.05000', '-111.82000'), ('Centerfield', 766, '39.12760', '-111.81720'), ('Ephraim', 4505, '39.35970', '-111.58440'), ('Fairview', 1160, '39.63050', '-111.43540'), ('Fountain Green', 945, '39.62770', '-111.63860'), ('Gunnison', 1298, '39.15830', '-111.81260'), ('Indianola', 0, '39.80000', '-111.48000'), ('Manti', 3040, '39.26690', '-111.63640'), ('Mayfield', 420, '39.11620', '-111.70730'), ('Milburn', 0, '39.70420', '-111.42500'), ('Moroni', 1280, '39.52810', '-111.58230'), ('Mount Pleasant', 2707, '39.54170', '-111.45560'), ('Spring City', 956, '39.48020', '-111.49050'), ('Sterling', 235, '39.19430', '-111.69090')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC041': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Annabella', 603, '38.70620', '-112.05750'), ('Aurora', 947, '38.92040', '-111.93240'), ('Burrville', 0, '38.57000', '-111.87000'), ('Elsinore', 733, '38.68390', '-112.14890'), ('Fish Lake', 0, '38.54950', '-111.71030'), ('Fremont Junction', 0, '38.75000', '-111.40000'), ('Glenwood', 437, '38.76240', '-111.98860'), ('Joseph', 269, '38.62510', '-112.22000'), ('Koosharem', 276, '38.51150', '-111.88030'), ('Monroe', 1845, '38.62430', '-112.11950'), ('Redmond', 788, '39.00530', '-111.86450'), ('Richfield', 6847, '38.76600', '-112.08500'), ('Salina', 2393, '38.94910', '-111.85920'), ('Sevier', 0, '38.58000', '-112.25000'), ('Sigurd', 430, '38.85040', '-111.96540')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC043': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Castle Rock', 0, '41.13000', '-111.17000'), ('Coalville', 1382, '40.91760', '-111.39440'), ('Echo', 0, '40.97000', '-111.45000'), ('Echo Reservoir', 0, '40.95467', '-111.43454'), ('Emory', 0, '41.08000', '-111.32000'), ('Francis', 698, '40.61220', '-111.27530'), ('Henefer', 684, '41.01920', '-111.49280'), ('Hoytsville', 0, '40.87000', '-111.38000'), ('Kamas', 1274, '40.64330', '-111.27370'), ('Kimball Junction', 0, '40.73000', '-111.55000'), ('Marion', 0, '40.67000', '-111.28000'), ('Oakley', 948, '40.72210', '-111.28760'), ('Park City', 7371, '40.65640', '-111.49300'), ('Peoa', 0, '40.72000', '-111.33000'), ('Rockport Reservoir', 0, '40.76000', '-111.39000'), ('Snyderville', 0, '40.68000', '-111.53000'), ('Trial Lk', 0, '40.68000', '-111.02000'), ('Wahsatch', 0, '41.20000', '-111.10000'), ('Wanship', 0, '40.80000', '-111.40000'), ('Woodland', 335, '40.58134', '-111.22712')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC045': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Bonneville Salt Flats', 0, '40.83021', '-113.81043'), ('Clive', 0, '40.68000', '-113.08000'), ('Delle', 0, '40.77000', '-112.78000'), ('Dugway', 1761, '40.25000', '-112.75050'), ('Erda', 2473, '40.61000', '-112.32180'), ('Faust', 0, '40.18000', '-112.38000'), ('Grantsville', 6015, '40.59000', '-112.46750'), ('Ibapah', 0, '40.03000', '-113.98000'), ('Knolls', 0, '40.72000', '-113.28000'), ('Lake Point', 0, '40.67000', '-112.27000'), ('Lofgreen', 0, '40.02000', '-112.32000'), ('Rush Valley', 112, '40.33000', '-112.47000'), ('Stansbury Park', 2385, '40.63800', '-112.30340'), ('Stockton', 443, '40.45270', '-112.36200'), ('Tooele', 22502, '40.53650', '-112.30140'), ('Vernon', 236, '40.09130', '-112.44980'), ('Wendover', 1537, '40.74000', '-114.02300')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC047': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Ballard', 566, '40.28430', '-109.94700'), ('Fort Duchesne', 621, '40.27820', '-109.87100'), ('Maeser', 2855, '40.47360', '-109.58090'), ('Naples', 1300, '40.42980', '-109.49100'), ('Randlett', 224, '40.23060', '-109.82770'), ('Vernal', 7714, '40.45200', '-109.53550'), ('Whiterocks', 341, '40.47290', '-109.94300')], 'partOfState': 'northwest', 'wfo': 'GJT'}, +'UTC049': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Alpine', 7146, '40.46030', '-111.77450'), ('American Fork', 21941, '40.38430', '-111.79390'), ('Birdseye', 0, '39.92000', '-111.55000'), ('Cedar Hills', 2500, '40.41412', '-111.75854'), ('Colton', 0, '39.85000', '-111.02000'), ('Elberta', 278, '39.95000', '-111.95000'), ('Fairfield', 0, '40.26000', '-112.02000'), ('Genola', 965, '39.99000', '-111.85000'), ('Goshen', 874, '39.95180', '-111.90090'), ('Highland', 8172, '40.42160', '-111.78880'), ('Lehi', 19028, '40.40230', '-111.85430'), ('Lindon', 8363, '40.34130', '-111.71660'), ('Mapleton', 5809, '40.12170', '-111.57300'), ('Mt Timpanogos', 0, '40.38000', '-111.69500'), ('Orem', 84324, '40.29820', '-111.69810'), ('Payson', 12716, '40.03390', '-111.72810'), ('Pleasant Grove', 23468, '40.37040', '-111.73330'), ('Provo', 105166, '40.24710', '-111.65970'), ('Salem', 4372, '40.05230', '-111.67160'), ('Santaquin', 4834, '39.97480', '-111.78360'), ('Saratoga Springs', 3119, '40.34912', '-111.90466'), ('Spanish Fork', 20246, '40.11430', '-111.63420'), ('Springville', 20424, '40.16490', '-111.61450'), ('Sundance', 0, '40.37000', '-111.57000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC051': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Charleston', 336, '40.46550', '-111.46790'), ('Deer Creek State Park', 0, '40.41945', '-111.50769'), ('Hailstone', 0, '40.60000', '-111.40000'), ('Heber City', 4782, '40.50180', '-111.40150'), ('Jordanelle Reservoir', 0, '40.61956', '-111.40930'), ('Midway', 2121, '40.51450', '-111.47450'), ('Soldier Summit', 0, '39.93000', '-111.08000'), ('Strawberry Reservoir', 0, '40.14000', '-111.13000'), ('Wallsburg', 274, '40.38690', '-111.42090')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC053': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Beaver Dam', 0, '37.50500', '-114.05000'), ('Bloomington', 0, '37.05000', '-113.60000'), ('Enterprise', 936, '37.57040', '-113.71460'), ('Goldstrike', 0, '37.38000', '-113.90000'), ('Gunlock', 0, '37.28000', '-113.77000'), ('Hildale', 1895, '37.00820', '-112.96810'), ('Hurricane', 8250, '37.15990', '-113.31920'), ('Ivins', 4450, '37.17490', '-113.68450'), ('Kolob Canyon', 0, '37.45359', '-113.22551'), ('La Verkin', 3392, '37.20640', '-113.27250'), ('Leeds', 547, '37.23700', '-113.35800'), ('Motoqua', 0, '37.32000', '-114.00000'), ('New Harmony', 190, '37.47840', '-113.30810'), ('Pine Valley', 0, '37.42000', '-113.50000'), ('Pinto', 0, '37.53330', '-113.51670'), ('Pintura', 0, '37.35000', '-113.27000'), ('Rockville', 247, '37.15360', '-113.05940'), ('Santa Clara', 4630, '37.13390', '-113.65130'), ('Snow Canyon State Park', 0, '37.24120', '-113.65890'), ('Springdale', 457, '37.18400', '-112.99910'), ('St George', 49663, '37.08000', '-113.59000'), ('Toquerville', 910, '37.23670', '-113.28550'), ('Veyo', 130, '37.33785', '-113.69321'), ('Virgin', 394, '37.20080', '-113.19850'), ('Washington', 8186, '37.13470', '-113.49350'), ('Zion National Park', 0, '37.25330', '-112.95000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC055': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Bicknell', 353, '38.34140', '-111.54470'), ('Caineville', 0, '38.33000', '-111.02000'), ('Capitol Reef National Park', 0, '38.28000', '-111.20000'), ('Fremont', 0, '38.45000', '-111.62000'), ('Fruita', 0, '38.28000', '-111.25000'), ('Hanksville', 0, '38.36670', '-110.71670'), ('Loa', 525, '38.40290', '-111.64320'), ('Lyman', 234, '38.39620', '-111.58820'), ('Teasdale', 0, '38.28000', '-111.47000'), ('Torrey', 171, '38.30160', '-111.41920')], 'partOfState': '', 'wfo': 'SLC'}, +'UTC057': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Causey Reservoir', 0, '41.29800', '-111.58702'), ('Eden', 0, '41.30000', '-111.82000'), ('Farr West', 3094, '41.29800', '-112.03030'), ('Harrisville', 3645, '41.28090', '-111.98430'), ('Hooper', 3926, '41.17300', '-112.12450'), ('Huntsville', 649, '41.25990', '-111.77270'), ('Liberty', 0, '41.33000', '-111.87000'), ('Nordic Valley', 0, '41.36000', '-111.79000'), ('North Ogden', 15026, '41.31140', '-111.95890'), ('Ogden', 77226, '41.22790', '-111.96580'), ('Pineview Reservoir', 0, '41.24984', '-111.83765'), ('Plain City', 3489, '41.29890', '-112.07510'), ('Pleasant View', 3603, '41.32370', '-111.99870'), ('Riverdale', 7656, '41.17110', '-111.99500'), ('Roy', 32885, '41.16167', '-112.02556'), ('Slaterville', 0, '41.27000', '-112.03000'), ('Snowbasin', 0, '41.22000', '-111.83000'), ('South Ogden', 14377, '41.18000', '-111.95800'), ('Uintah', 1127, '41.14280', '-111.93380'), ('Warren', 0, '41.28000', '-112.12000'), ('West Haven', 3976, '41.20300', '-112.02627'), ('West Warren', 0, '41.25000', '-112.15000'), ('West Weber', 0, '41.25000', '-112.08000'), ('Wilson', 0, '41.23000', '-112.02000')], 'partOfState': '', 'wfo': 'SLC'}, +'VAC001': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Accomac', 547, '37.71850', '-75.66770'), ('Assawoman', 290, '37.87400', '-75.52290'), ('Atlantic', 290, '37.90330', '-75.50620'), ('Bloxom', 395, '37.83080', '-75.62020'), ('Chincoteague', 4317, '37.94930', '-75.35530'), ('Clam', 837, '37.81300', '-75.67150'), ('Greenbackville', 4317, '38.00140', '-75.41530'), ('Guilford', 395, '37.82450', '-75.65230'), ('Hallwood', 290, '37.87780', '-75.58950'), ('Harborton', 173, '37.66000', '-75.84000'), ('Horntown', 4317, '37.97020', '-75.46310'), ('Keller', 173, '37.62040', '-75.76450'), ('Locustville', 236, '37.65340', '-75.67870'), ('Mappsville', 290, '37.84480', '-75.56780'), ('Melfa', 450, '37.64920', '-75.74080'), ('Modest Town', 395, '37.81190', '-75.57320'), ('Nelsonia', 395, '37.81960', '-75.58780'), ('New Church', 3922, '37.97910', '-75.53150'), ('Oak Hall', 290, '37.93650', '-75.54610'), ('Onancock', 1525, '37.70990', '-75.74430'), ('Onley', 496, '37.69060', '-75.71930'), ('Painter', 246, '37.58550', '-75.78380'), ('Parksley', 837, '37.78580', '-75.65400'), ('Pungoteague', 173, '37.62990', '-75.81350'), ('Quinby', 246, '37.55630', '-75.73170'), ('Sanford', 337, '37.92200', '-75.66870'), ('Saxis', 337, '37.92540', '-75.72360'), ('Tangier', 604, '37.82500', '-75.99340'), ('Tasley', 496, '37.70870', '-75.70520'), ('Temperanceville', 290, '37.89340', '-75.54890'), ('Wachapreague', 236, '37.60620', '-75.68980'), ('Wallops Island', 290, '37.84390', '-75.47940')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC003': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alberene', 555, '37.88640', '-78.61670'), ('Barracks', 4710, '38.05740', '-78.51350'), ('Carrsbrook', 5133, '38.09310', '-78.45810'), ('Cobham', 1498, '38.06280', '-78.26830'), ('Covesville', 2820, '37.89000', '-78.70500'), ('Crozet', 2820, '38.06930', '-78.69900'), ('Damon', 555, '37.82280', '-78.65940'), ('Earlysville', 2628, '38.15750', '-78.48310'), ('Esmont', 555, '37.83110', '-78.60750'), ('Flordon', 6900, '38.05580', '-78.55670'), ('Free Union', 4710, '38.15470', '-78.56470'), ('Glendower', 555, '37.83720', '-78.54390'), ('Greenwood', 2820, '38.05560', '-78.77080'), ('Hollymead', 2628, '38.12190', '-78.43960'), ('Ivy', 6900, '38.05640', '-78.59690'), ('Keene', 555, '37.86500', '-78.55560'), ('Keswick', 6852, '38.02250', '-78.35940'), ('North Garden', 6900, '37.94060', '-78.63690'), ('Overton', 45049, '37.95720', '-78.46780'), ('Scottsville', 555, '37.79890', '-78.49340'), ('Shadwell', 5133, '38.01280', '-78.39580'), ('Stony Point', 2628, '38.11280', '-78.37170'), ('Westmoreland', 5133, '38.08640', '-78.45470'), ('White Hall', 2820, '38.11780', '-78.66170'), ('Woodridge', 6852, '37.89690', '-78.43640')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC005': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alleghany', 2779, '37.75000', '-80.25000'), ('Callaghan', 6303, '37.80000', '-80.08330'), ('Clifton Forge City', 4289, '37.82350', '-79.82550'), ('Earlehurst', 2779, '37.66670', '-80.25000'), ('Hollins', 4289, '37.83330', '-79.91670'), ('Iron Gate', 404, '37.79880', '-79.79060'), ('Jordan Mines', 6303, '37.68330', '-80.11670'), ('Longdale Furnace', 404, '37.83330', '-79.71670'), ('Natural Well', 6303, '37.91670', '-79.96670'), ('Potts Creek', 179, '37.61670', '-80.20000')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC007': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amelia Courthouse', 2378, '37.34130', '-77.98010'), ('Ammon', 441, '37.21120', '-77.76760'), ('Chula', 2378, '37.38830', '-77.90310'), ('Deatonville', 489, '37.32800', '-78.16750'), ('Denaro', 2378, '37.24490', '-77.98410'), ('Earls', 3675, '37.22860', '-77.89250'), ('Giles Mill', 49, '37.48190', '-77.96780'), ('Jetersville', 2378, '37.29380', '-78.09630'), ('Lodore', 2378, '37.43920', '-78.02230'), ('Mannboro', 3675, '37.25160', '-77.82350'), ('Maplewood', 2378, '37.31610', '-78.04890'), ('Morven', 2378, '37.41830', '-78.07580'), ('Paineville', 2378, '37.38960', '-78.12100'), ('Rodophil', 489, '37.36830', '-78.15680'), ('Scotts Fork', 3675, '37.31790', '-77.89060'), ('Truxillo', 2378, '37.37060', '-78.04190'), ('Winterham', 2378, '37.36630', '-77.93330')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC009': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alto', 6349, '37.76670', '-79.23330'), ('Amherst', 2251, '37.58330', '-79.05000'), ('Clifford', 2251, '37.65000', '-79.03330'), ('Elon', 65269, '37.51670', '-79.20000'), ('Falconerville', 2251, '37.53330', '-79.10000'), ('Forks Of Buffalo', 2251, '37.68330', '-79.18330'), ('Lowesville', 2251, '37.71670', '-79.06670'), ('Madison Heights', 11584, '37.41670', '-79.13330'), ('Naola', 8006, '37.53330', '-79.28330'), ('New Glasgow', 2251, '37.63330', '-78.98330'), ('Oronoco', 6349, '37.73330', '-79.26670'), ('Pleasant View', 6349, '37.61670', '-79.25000'), ('Riverville', 2251, '37.51670', '-78.91670')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAC011': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Appomattox', 1761, '37.35880', '-78.82670'), ('Bent Creek', 1761, '37.53330', '-78.83330'), ('Evergreen', 1761, '37.30000', '-78.78330'), ('Hixburg', 201, '37.33330', '-78.66670'), ('Oakville', 1761, '37.43330', '-78.86670'), ('Pamplin City', 201, '37.26670', '-78.68330'), ('Spout Spring', 1761, '37.35000', '-78.91670'), ('Stonewall', 11584, '37.41670', '-78.96670'), ('Tower Hill', 1761, '37.50000', '-78.78330')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAC013': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arlington', 189453, '38.87870', '-77.10190'), ('Ballston', 189453, '38.88000', '-77.11420'), ('Barcroft', 189453, '38.85580', '-77.10420'), ('Cherrydale', 189453, '38.89690', '-77.10860'), ('Reagan National Aiirport', 606900, '38.85220', '-77.03750'), ('Rivercrest', 189453, '38.92190', '-77.11940'), ('Rosslyn', 189453, '38.89670', '-77.07280'), ('Westover', 7280, '38.88690', '-77.13970')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC015': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Christian', 23853, '38.18220', '-79.22780'), ('Churchville', 23853, '38.22610', '-79.16250'), ('Craigsville', 979, '38.08100', '-79.38440'), ('Crimora', 1796, '38.16070', '-78.83930'), ('Deerfield', 979, '38.19640', '-79.40690'), ('Greenville', 886, '38.00330', '-79.15610'), ('Hermitage', 3230, '38.14140', '-78.91440'), ('Mint Spring', 1037, '38.07440', '-79.10110'), ('Moscow', 5203, '38.31690', '-79.08920'), ('Sangerville', 5203, '38.38860', '-79.08360'), ('Sherando', 665, '37.98110', '-78.95420'), ('Spottswood', 8367, '37.95500', '-79.21390'), ('Staunton Arpt', 0, '38.27000', '-78.90000'), ('Stuarts Draft', 8367, '38.02560', '-79.02490'), ('Summerdean', 979, '38.07500', '-79.25640'), ('Trimbles Mill', 1037, '38.13530', '-79.21890'), ('Verona', 3638, '38.19980', '-79.00620'), ('West Augusta', 979, '38.27000', '-79.30810')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAC017': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bacova Junction', 4289, '38.01670', '-79.86670'), ('Burnsville', 158, '38.18330', '-79.65000'), ('Callison', 4289, '37.98330', '-79.90000'), ('Carloover', 4289, '37.91670', '-79.90000'), ('Hot Springs', 4289, '38.00000', '-79.83330'), ('Ingalls Field', 4289, '37.95000', '-79.83330'), ('Millboro', 406, '37.96670', '-79.60000'), ('Mountain Grove', 1148, '38.10000', '-79.88330'), ('Nimrod Hall', 406, '37.95000', '-79.63330'), ('Warm Springs', 4289, '38.05000', '-79.78330'), ('Yost', 406, '38.05000', '-79.53330')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC019': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bedford City', 6299, '37.33780', '-79.52110'), ('Big Island', 1046, '37.53330', '-79.36670'), ('Boonsboro', 8006, '37.45000', '-79.26670'), ('Chamblissburg', 3188, '37.25000', '-79.71670'), ('Coleman Falls', 8006, '37.50000', '-79.33330'), ('Forest', 8006, '37.36670', '-79.28330'), ('Goode', 8006, '37.36670', '-79.38330'), ('Goodview', 7782, '37.21670', '-79.71670'), ('Huddleston', 6299, '37.16670', '-79.48330'), ('Moneta', 6299, '37.18330', '-79.63330'), ('Montvale', 3188, '37.38330', '-79.73330'), ('Sedalia', 1046, '37.48330', '-79.45000'), ('Snowden', 1046, '37.60000', '-79.40000'), ('Stewartsville', 7782, '37.26670', '-79.80000'), ('Thaxton', 6299, '37.35000', '-79.63330')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAC021': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bastian', 12756, '37.15000', '-81.15000'), ('Bland', 7804, '37.10000', '-81.11670'), ('Ceres', 1350, '37.01670', '-81.35000'), ('Clear Fork', 12756, '37.21670', '-81.20000'), ('Hicksville', 12756, '37.18330', '-81.13330'), ('Kimberling', 165, '37.16670', '-81.03330'), ('Long Spur', 9473, '37.10000', '-80.95000'), ('Mechanicsburg', 165, '37.15000', '-80.95000'), ('Rocky Gap', 12756, '37.23330', '-81.10000'), ('Suiter', 5078, '37.11670', '-81.21670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC023': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arcadia', 1233, '37.55000', '-79.63330'), ('Blue Ridge', 3188, '37.38330', '-79.81670'), ('Buchanan', 1233, '37.51670', '-79.68330'), ('Cloverdale', 2986, '37.36670', '-79.91670'), ('Daleville', 1454, '37.41670', '-79.91670'), ('Eagle Rock', 359, '37.63330', '-79.80000'), ('Fincastle', 359, '37.49860', '-79.87550'), ('Gala', 404, '37.68330', '-79.81670'), ('Glen Wilton', 404, '37.75000', '-79.81670'), ('Laymantown', 2034, '37.36570', '-79.85790'), ('Lithia', 1233, '37.48330', '-79.75000'), ('Nace', 432, '37.43330', '-79.85000'), ('Oriskany', 359, '37.61670', '-79.98330'), ('Springwood', 1233, '37.55000', '-79.75000'), ('Troutville', 432, '37.41360', '-79.87800')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC025': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alberta', 306, '36.86460', '-77.88300'), ('Ante', 1275, '36.66500', '-77.71910'), ('Barrows Store', 306, '36.93470', '-77.97920'), ('Bowens Corner', 317, '36.63590', '-77.96080'), ('Brodnax', 317, '36.70350', '-78.03290'), ('Brunswick', 1275, '36.64760', '-77.86990'), ('Callaville', 441, '36.82830', '-77.66780'), ('Cochran', 306, '36.84310', '-77.90530'), ('Danieltown', 306, '36.90470', '-77.96000'), ('Dolphin', 306, '36.83790', '-77.79480'), ('Ebony', 317, '36.57870', '-77.99100'), ('Edgerton', 1275, '36.77840', '-77.77090'), ('Gasburg', 691, '36.56700', '-77.89590'), ('Lawrenceville', 1275, '36.75760', '-77.85200'), ('Meredithville', 306, '36.79850', '-77.95990'), ('Ordsburg', 306, '36.96260', '-77.86000'), ('Prices Mill', 306, '36.81260', '-77.92340'), ('Rawlings', 441, '36.94830', '-77.77880'), ('Triplet', 1003, '36.61030', '-77.76610'), ('Valentines', 1275, '36.58870', '-77.83020'), ('Warfield', 441, '36.89550', '-77.74440'), ('White Plains', 1275, '36.63360', '-77.91320')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC027': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Davenport', 989, '37.10060', '-82.13710'), ('Grundy', 1105, '37.27680', '-82.10000'), ('Hurley', 1105, '37.42030', '-82.02020'), ('Vansant', 989, '37.23060', '-82.08960')], 'partOfState': '', 'wfo': 'RLX'}, +'VAC029': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Andersonville', 447, '37.46670', '-78.56670'), ('Buckingham', 447, '37.55000', '-78.55000'), ('Centenary', 555, '37.70000', '-78.51670'), ('Dillwyn', 447, '37.54020', '-78.46160'), ('Gold Hill', 447, '37.61670', '-78.36670'), ('New Canton', 49, '37.70000', '-78.30000'), ('Sheppards', 6845, '37.38330', '-78.48330'), ('Toga', 447, '37.50000', '-78.61670'), ('Wingina', 0, '37.63330', '-78.71670')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAC031': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Altavista', 3425, '37.12350', '-79.28450'), ('Bocock', 11584, '37.36670', '-79.11670'), ('Brookneal', 1259, '37.05000', '-78.96670'), ('Concord', 11584, '37.35000', '-78.98330'), ('Evington', 10683, '37.23330', '-79.28330'), ('Gladys', 1259, '37.16670', '-79.08330'), ('Hat Creek', 1259, '37.11670', '-78.91670'), ('Hodges', 3425, '37.11670', '-79.18330'), ('Leesville', 1276, '37.11670', '-79.38330'), ('Long Island', 1259, '37.08330', '-79.10000'), ('Lynchburg Airport', 10683, '37.33330', '-79.20000'), ('Mike', 1259, '37.21670', '-78.91670'), ('Rustburg', 1271, '37.28330', '-79.10000'), ('Spring Mills', 1761, '37.23330', '-78.93330'), ('Timberlake', 10683, '37.32320', '-79.24990')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAC033': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowling Green', 936, '38.04980', '-77.35100'), ('Burruss Corner', 6619, '37.89330', '-77.41650'), ('Cedar Fork', 6619, '37.96170', '-77.54830'), ('Cedon', 3833, '38.06110', '-77.51890'), ('Central Point', 170, '37.98890', '-77.13150'), ('Chilesburg', 3833, '37.99950', '-77.59330'), ('Corbin', 19279, '38.19940', '-77.38880'), ('Dawn', 6619, '37.83330', '-77.36580'), ('Fort A.p. Hill', 170, '38.10970', '-77.26620'), ('Gether', 936, '37.91640', '-77.20790'), ('Golansville', 936, '37.98090', '-77.50130'), ('Guinea', 936, '38.14280', '-77.43770'), ('Ladysmith', 936, '38.01750', '-77.51500'), ('Milford', 936, '38.02690', '-77.36980'), ('Nancy Wrights Corner', 3833, '38.09050', '-77.51620'), ('Penola', 936, '37.95770', '-77.37090'), ('Port Royal', 170, '38.16970', '-77.19110'), ('Rappahannock Academy', 170, '38.15580', '-77.30300'), ('Ruther Glen', 936, '38.00450', '-77.54350'), ('Sparta', 936, '37.99150', '-77.22970'), ('Villboro', 936, '38.13500', '-77.38970'), ('Woodford', 936, '38.11310', '-77.40940')], 'partOfState': 'north central', 'wfo': 'AKQ'}, +'VAC035': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Byllesby', 614, '36.78330', '-80.93330'), ('Cana', 1228, '36.58330', '-80.66670'), ('Dugspur', 2607, '36.81670', '-80.61670'), ('Fancy Gap', 260, '36.66670', '-80.70000'), ('Galax Hillsville Airport', 2249, '36.76670', '-80.81670'), ('Gladesboro', 2607, '36.71670', '-80.65000'), ('Hillsville', 2607, '36.76670', '-80.73330'), ('Lambsburg', 1228, '36.58330', '-80.76670'), ('Laurel Fork', 1812, '36.71670', '-80.51670'), ('Pipers Gap', 6837, '36.65000', '-80.83330'), ('Sylvatus', 2607, '36.86670', '-80.76670'), ('Woodlawn', 2249, '36.71670', '-80.81670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC036': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adkins Store', 343, '37.39370', '-77.09620'), ('Barnetts', 22354, '37.36710', '-77.15810'), ('Charles City', 343, '37.34370', '-77.07130'), ('Holdcroft', 343, '37.36560', '-76.93530'), ('Mount Airy', 343, '37.35110', '-76.91830'), ('New Hope', 343, '37.34110', '-77.06170'), ('Roaches Corner', 343, '37.39080', '-77.05310'), ('Roxbury', 15137, '37.46460', '-77.14110'), ('Rustic', 343, '37.29250', '-76.93410'), ('Ruthville', 343, '37.36750', '-77.04110'), ('Sandybottom', 343, '37.41310', '-77.04470'), ('Wayside', 22354, '37.37220', '-77.19500')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC036': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adkins Store', 343, '37.39370', '-77.09620'), ('Barnetts', 22354, '37.36710', '-77.15810'), ('Charles City', 343, '37.34370', '-77.07130'), ('Holdcroft', 343, '37.36560', '-76.93530'), ('Mount Airy', 343, '37.35110', '-76.91830'), ('New Hope', 343, '37.34110', '-77.06170'), ('Roaches Corner', 343, '37.39080', '-77.05310'), ('Roxbury', 15137, '37.46460', '-77.14110'), ('Rustic', 343, '37.29250', '-76.93410'), ('Ruthville', 343, '37.36750', '-77.04110'), ('Sandybottom', 343, '37.41310', '-77.04470'), ('Wayside', 22354, '37.37220', '-77.19500')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC037': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Abilene', 817, '37.13330', '-78.55000'), ('Aspen', 200, '37.03330', '-78.83330'), ('Charlotte Court House', 404, '37.05000', '-78.63330'), ('Cullen', 404, '37.11670', '-78.65000'), ('Drakes Branch', 504, '36.99280', '-78.60100'), ('Keysville', 817, '37.03890', '-78.48150'), ('Madisonville', 201, '37.18330', '-78.68330'), ('Phenix', 200, '37.08330', '-78.75000'), ('Red House', 200, '37.18330', '-78.80000'), ('Redoak', 198, '36.78330', '-78.61670'), ('Saxe', 504, '36.93330', '-78.66670'), ('Wren', 200, '37.11670', '-78.85000'), ('Wylliesburg', 2457, '36.85000', '-78.58330')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAC041': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Beach', 17890, '37.35610', '-77.59390'), ('Bellwood', 5974, '37.40720', '-77.43680'), ('Bensley', 5435, '37.44660', '-77.44370'), ('Bon Air', 16213, '37.51980', '-77.56910'), ('Centralia', 5974, '37.38080', '-77.46030'), ('Chester', 17890, '37.35330', '-77.43610'), ('Chesterfield', 17890, '37.37580', '-77.50920'), ('Drewrys Bluff', 5435, '37.42640', '-77.45810'), ('Ettrick', 5627, '37.24090', '-77.42830'), ('Matoaca', 2273, '37.23060', '-77.47930'), ('Meadowville', 22354, '37.37060', '-77.32280'), ('Midlothian', 16213, '37.50250', '-77.63980'), ('Moseley', 16213, '37.41650', '-77.77020'), ('Pocahontas State Park', 5974, '37.37880', '-77.55990'), ('Skinquarter', 16213, '37.39500', '-77.77920'), ('Winterpock', 16213, '37.34600', '-77.72000')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC043': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Berryville', 2963, '39.14960', '-77.98110'), ('Bethel', 426, '39.03080', '-78.04360'), ('Boyce', 426, '39.09300', '-78.05950'), ('Briggs', 426, '39.10780', '-78.01420'), ('Gaylord', 0, '39.18750', '-77.93080'), ('Millwood', 426, '39.06940', '-78.03810'), ('Stringtown', 2963, '39.18810', '-77.97830'), ('Wadesville', 0, '39.24250', '-78.03920'), ('White Post', 426, '39.05690', '-78.10390'), ('Wickliffe', 0, '39.16610', '-77.89250')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAC045': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Abbott', 179, '37.41670', '-80.15000'), ('Craig Springs', 179, '37.48330', '-80.28330'), ('Huffman', 39573, '37.35000', '-80.41670'), ('Maggie', 39573, '37.43330', '-80.40000'), ('New Castle', 179, '37.50000', '-80.11670'), ('Paint Bank', 179, '37.56670', '-80.28330'), ('Simmonsville', 39573, '37.38330', '-80.36670'), ('Sinking Creek', 179, '37.41670', '-80.28330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC047': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alanthus', 0, '38.54190', '-77.93310'), ('Cardova', 9664, '38.53220', '-78.03830'), ('Catalpa', 9664, '38.51060', '-77.98810'), ('Culpeper', 9664, '38.47100', '-78.00110'), ('Elkwood', 624, '38.51170', '-77.85610'), ('Jeffersonton', 0, '38.63690', '-77.91530'), ('Lignum', 624, '38.41580', '-77.82690'), ('Rapidan', 4123, '38.31250', '-78.06610'), ('Reva', 9664, '38.49390', '-78.13360'), ('Richardsville', 0, '38.40000', '-77.72920'), ('Rixeyville', 0, '38.58000', '-77.97000'), ('Stevensburg', 9664, '38.44310', '-77.90000'), ('Winston', 9664, '38.41000', '-78.00970')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC049': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Angola', 6845, '37.40130', '-78.24030'), ('Ashby', 49, '37.57770', '-78.17520'), ('Bear Creek Lake State Park', 447, '37.52860', '-78.27020'), ('Cartersville', 49, '37.66000', '-78.10000'), ('Clinton', 49, '37.54290', '-78.12590'), ('Cumberland', 447, '37.49610', '-78.24470'), ('Duncan', 49, '37.71280', '-78.15130'), ('Grays Siding', 49, '37.51110', '-78.21270'), ('Guinea Mills', 6845, '37.43690', '-78.33190'), ('Hawk', 6845, '37.40990', '-78.35580'), ('Lakeside Village', 49, '37.66330', '-78.17860'), ('McRae', 447, '37.46150', '-78.28250'), ('Oak Forest', 49, '37.53640', '-78.19420'), ('Raines Tavern', 6845, '37.36930', '-78.36960'), ('Reeds', 6845, '37.33780', '-78.40420'), ('Stoddert', 6845, '37.35030', '-78.29530'), ('Sunnyside', 49, '37.47710', '-78.15210'), ('Tamworth', 49, '37.64810', '-78.08110'), ('Trenton Mills', 49, '37.62920', '-78.22860'), ('Trents Mill', 447, '37.55470', '-78.28970'), ('Whiteville', 49, '37.60230', '-78.16810')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC051': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Breaks Interstate', 813, '37.29030', '-82.29520'), ('Clintwood', 1549, '37.15060', '-82.45620'), ('Haysi', 186, '37.20510', '-82.29310'), ('John Flannagan Lake', 186, '37.23320', '-82.34520')], 'partOfState': '', 'wfo': 'RLX'}, +'VAC053': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Addison', 5627, '37.19750', '-77.50280'), ('Burgess', 5627, '37.14050', '-77.50880'), ('Butterworth', 441, '37.05110', '-77.62720'), ('Carson', 202, '37.03470', '-77.40530'), ('Center Star', 441, '37.11100', '-77.64000'), ('Cherry Hill', 441, '36.93810', '-77.62220'), ('Church Road', 441, '37.15600', '-77.63180'), ('Darvills', 441, '37.06320', '-77.83390'), ('Dewitt', 441, '37.03860', '-77.64320'), ('Dinwiddie', 441, '37.07710', '-77.58620'), ('Five Forks', 441, '37.13920', '-77.62310'), ('Ford', 441, '37.14850', '-77.73150'), ('Hebron', 441, '37.14420', '-77.80560'), ('McKenney', 441, '36.98560', '-77.72170'), ('Petersburg Airport', 5627, '37.15920', '-77.52290'), ('Reams', 33740, '37.10080', '-77.40610'), ('Rocky Run', 441, '37.07540', '-77.68410'), ('Sutherland', 5627, '37.19600', '-77.56330'), ('Walkers', 441, '37.15810', '-77.70640'), ('Wharfs Store', 441, '36.98180', '-77.57690'), ('Wilsons', 3675, '37.14370', '-77.85950')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC057': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowlers Wharf', 1375, '37.82320', '-76.75220'), ('Brays Fork', 2068, '37.89610', '-76.87190'), ('Caret', 2068, '37.98280', '-76.96200'), ('Center Cross', 2068, '37.80460', '-76.77940'), ('Champlain', 2068, '38.01380', '-76.99290'), ('Chance', 315, '38.06340', '-77.00920'), ('Dunbrooke', 2068, '37.89420', '-76.96410'), ('Dunnsville', 2068, '37.85890', '-76.82270'), ('Elevon', 170, '37.99410', '-77.07310'), ('Howertons', 2068, '37.83120', '-76.89070'), ('Hustle', 170, '38.04250', '-77.06690'), ('Laneview', 1375, '37.77000', '-76.73500'), ('Loretto', 170, '38.07620', '-77.05150'), ('Millers Tavern', 2068, '37.83090', '-76.93680'), ('Montague', 1375, '37.76800', '-76.73740'), ('Mount Landing', 2068, '37.94000', '-76.92170'), ('Rexburg', 2068, '37.93640', '-76.98720'), ('Supply', 170, '38.09420', '-77.13620'), ('Tappahannock', 2068, '37.92000', '-76.86780'), ('Upright', 2068, '37.80940', '-76.83770')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC057': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowlers Wharf', 1375, '37.82320', '-76.75220'), ('Brays Fork', 2068, '37.89610', '-76.87190'), ('Caret', 2068, '37.98280', '-76.96200'), ('Center Cross', 2068, '37.80460', '-76.77940'), ('Champlain', 2068, '38.01380', '-76.99290'), ('Chance', 315, '38.06340', '-77.00920'), ('Dunbrooke', 2068, '37.89420', '-76.96410'), ('Dunnsville', 2068, '37.85890', '-76.82270'), ('Elevon', 170, '37.99410', '-77.07310'), ('Howertons', 2068, '37.83120', '-76.89070'), ('Hustle', 170, '38.04250', '-77.06690'), ('Laneview', 1375, '37.77000', '-76.73500'), ('Loretto', 170, '38.07620', '-77.05150'), ('Millers Tavern', 2068, '37.83090', '-76.93680'), ('Montague', 1375, '37.76800', '-76.73740'), ('Mount Landing', 2068, '37.94000', '-76.92170'), ('Rexburg', 2068, '37.93640', '-76.98720'), ('Supply', 170, '38.09420', '-77.13620'), ('Tappahannock', 2068, '37.92000', '-76.86780'), ('Upright', 2068, '37.80940', '-76.83770')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC059': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Annandale', 54994, '38.83320', '-77.21210'), ("Bailey's Crossroads", 19507, '38.84800', '-77.12920'), ('Baileys Xrds', 0, '38.86670', '-77.15000'), ('Belle Haven', 480, '38.77730', '-77.05740'), ('Burke', 57737, '38.78020', '-77.27210'), ('Centreville', 26585, '38.84690', '-77.44380'), ('Chantilly', 41041, '38.87560', '-77.40870'), ('Clifton', 185, '38.77990', '-77.38770'), ('Fairfax Station', 57737, '38.80080', '-77.32580'), ('Fort Belvoir', 8590, '38.70970', '-77.14700'), ('Franconia', 31907, '38.76310', '-77.14910'), ('Great Falls', 8549, '39.01020', '-77.28850'), ('Herndon', 21655, '38.96920', '-77.38730'), ('Hybla Valley', 16721, '38.74880', '-77.07660'), ('Lake Barcroft', 8906, '38.85130', '-77.15820'), ('Langley', 38929, '38.94640', '-77.15920'), ('Lincolnia', 15788, '38.82440', '-77.15420'), ('Lorton', 17786, '38.70070', '-77.24080'), ('McLean', 38929, '38.93850', '-77.17700'), ('Merrifield', 11170, '38.87300', '-77.24330'), ('Mount Vernon', 28582, '38.71860', '-77.10920'), ('Newington', 19784, '38.73600', '-77.20420'), ('Oakton', 29348, '38.89220', '-77.30120'), ('Ravensworth', 8996, '38.80390', '-77.22080'), ('Reston', 56407, '38.95210', '-77.34520'), ('Rose Hill', 15058, '38.78860', '-77.11300'), ('Springfield', 23706, '38.78600', '-77.17960'), ('The American Legion Mem Br', 38168, '38.96580', '-77.18890'), ('The I395 And I495', 23706, '38.78890', '-77.17390'), ('The I66 And I495', 6509, '38.88000', '-77.22280'), ('Tysons Corner', 18540, '38.91860', '-77.23170'), ('Vienna', 14453, '38.90040', '-77.26020'), ('Wolf Trap', 13133, '38.93980', '-77.28630')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC059': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Annandale', 54994, '38.83320', '-77.21210'), ("Bailey's Crossroads", 19507, '38.84800', '-77.12920'), ('Baileys Xrds', 0, '38.86670', '-77.15000'), ('Belle Haven', 480, '38.77730', '-77.05740'), ('Burke', 57737, '38.78020', '-77.27210'), ('Centreville', 26585, '38.84690', '-77.44380'), ('Chantilly', 41041, '38.87560', '-77.40870'), ('Clifton', 185, '38.77990', '-77.38770'), ('Fairfax Station', 57737, '38.80080', '-77.32580'), ('Fort Belvoir', 8590, '38.70970', '-77.14700'), ('Franconia', 31907, '38.76310', '-77.14910'), ('Great Falls', 8549, '39.01020', '-77.28850'), ('Herndon', 21655, '38.96920', '-77.38730'), ('Hybla Valley', 16721, '38.74880', '-77.07660'), ('Lake Barcroft', 8906, '38.85130', '-77.15820'), ('Langley', 38929, '38.94640', '-77.15920'), ('Lincolnia', 15788, '38.82440', '-77.15420'), ('Lorton', 17786, '38.70070', '-77.24080'), ('McLean', 38929, '38.93850', '-77.17700'), ('Merrifield', 11170, '38.87300', '-77.24330'), ('Mount Vernon', 28582, '38.71860', '-77.10920'), ('Newington', 19784, '38.73600', '-77.20420'), ('Oakton', 29348, '38.89220', '-77.30120'), ('Ravensworth', 8996, '38.80390', '-77.22080'), ('Reston', 56407, '38.95210', '-77.34520'), ('Rose Hill', 15058, '38.78860', '-77.11300'), ('Springfield', 23706, '38.78600', '-77.17960'), ('The American Legion Mem Br', 38168, '38.96580', '-77.18890'), ('The I395 And I495', 23706, '38.78890', '-77.17390'), ('The I66 And I495', 6509, '38.88000', '-77.22280'), ('Tysons Corner', 18540, '38.91860', '-77.23170'), ('Vienna', 14453, '38.90040', '-77.26020'), ('Wolf Trap', 13133, '38.93980', '-77.28630')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC061': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ada', 0, '38.83690', '-77.91860'), ('Airlie', 6670, '38.75690', '-77.79190'), ('Ashville', 0, '38.86420', '-77.92250'), ('Auburn', 1332, '38.70280', '-77.70110'), ('Bealeton', 624, '38.57170', '-77.76420'), ('Bethel', 6670, '38.76610', '-77.81610'), ('Bristersburg', 1332, '38.58330', '-77.61420'), ('Broken Hill', 1332, '38.75110', '-77.70830'), ('Calverton', 1332, '38.63190', '-77.67080'), ('Cresthill', 183, '38.76750', '-78.00860'), ('Delaplane', 0, '38.92000', '-77.92000'), ('Goldvein', 0, '38.44890', '-77.65560'), ('Halfway', 632, '38.91610', '-77.74500'), ('Hume', 0, '38.83190', '-77.99970'), ('Markham', 0, '38.90390', '-78.00220'), ('Marshall', 0, '38.87000', '-77.85000'), ('Meadowville', 266, '38.79810', '-77.81560'), ('Midland', 624, '38.59940', '-77.72470'), ('Morrisville', 624, '38.50170', '-77.70030'), ('Opal', 624, '38.62080', '-77.80030'), ('Orlean', 0, '38.74970', '-77.96220'), ('Paris', 0, '39.00440', '-77.95170'), ('Remington', 624, '38.53410', '-77.80900'), ('Somerville', 624, '38.52170', '-77.60970'), ('Sumerduck', 624, '38.46000', '-77.72830'), ('The Plains', 266, '38.86280', '-77.77360'), ('Turnbull', 6670, '38.66750', '-77.86060'), ('Upperville', 0, '38.99390', '-77.88500'), ('Warrenton', 6670, '38.71820', '-77.79710')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC063': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alum Ridge', 432, '36.93330', '-80.46670'), ('Check', 1029, '37.05000', '-80.18330'), ('Copper Hill', 1029, '37.08330', '-80.13330'), ('Copper Valley', 15859, '36.98330', '-80.53330'), ('Floyd', 432, '36.91670', '-80.31670'), ('Indian Valley', 15859, '36.91670', '-80.55000'), ('Terrys Fork', 1029, '37.05000', '-80.26670'), ('Willis', 432, '36.85000', '-80.48330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC065': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Antioch', 555, '37.84650', '-78.42050'), ('Bremo Bluff', 49, '37.71240', '-78.29730'), ('Bybee', 6852, '37.92560', '-78.20580'), ('Carysbrook', 49, '37.81210', '-78.24210'), ('Central Plains', 6852, '37.80380', '-78.33690'), ('Cohasset', 49, '37.76920', '-78.30340'), ('Columbia', 49, '37.75300', '-78.16510'), ('Cunningham', 6852, '37.87400', '-78.32020'), ('Dixie', 49, '37.78150', '-78.23580'), ('Fork Union', 49, '37.76310', '-78.26250'), ('Hardware', 555, '37.74260', '-78.40590'), ('Kents Store', 49, '37.87730', '-78.12860'), ('Lake Monticello', 6852, '37.92310', '-78.33510'), ('Nahor', 6852, '37.90880', '-78.34780'), ('Palmyra', 6852, '37.86060', '-78.26360'), ('Shores', 555, '37.74190', '-78.35870'), ('Stage Junction', 49, '37.79130', '-78.15330'), ('Troy', 6852, '37.94720', '-78.24740'), ('Union Mills', 6852, '37.93920', '-78.30080'), ('Wildwood', 6852, '37.90310', '-78.25720'), ('Wilmington', 49, '37.84910', '-78.20160')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC067': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Boones Mill', 285, '37.11520', '-79.95070'), ('Burnt Chimney', 4066, '37.10000', '-79.83330'), ('Callaway', 1313, '37.01670', '-80.05000'), ('Endicott', 1313, '36.88330', '-80.15000'), ('Ferrum', 1313, '36.91670', '-80.01670'), ('Oak Level', 1515, '36.81670', '-79.91670'), ('Penhook', 726, '36.98330', '-79.63330'), ('Rocky Mount', 4066, '37.00000', '-79.88330'), ('Snow Creek', 1742, '36.83330', '-79.75000'), ('Sontag', 4066, '36.93330', '-79.80000'), ('Sydnorsville', 4066, '36.86670', '-79.83330'), ('Wirtz', 285, '37.08330', '-79.90000')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC069': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Albin', 23585, '39.22170', '-78.19890'), ('Armel', 1146, '39.07920', '-78.14390'), ('Cedar Grove', 23585, '39.26810', '-78.18940'), ('Cedar Hill', 0, '39.27640', '-78.11420'), ('Cross Junction', 192, '39.32030', '-78.29360'), ('Gainesboro', 23585, '39.27830', '-78.25940'), ('Gore', 192, '39.26390', '-78.33220'), ('Gravel Springs', 4017, '39.07500', '-78.44060'), ('High View Manor', 1146, '39.16190', '-78.32140'), ('Middletown', 1015, '39.02870', '-78.27790'), ('Rock Enon Springs', 192, '39.21190', '-78.38670'), ('Stephens City', 1146, '39.09690', '-78.22140'), ('Wilde Acres', 192, '39.14690', '-78.40000')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAC071': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bane', 2729, '37.26670', '-80.71670'), ('Chapel', 165, '37.28330', '-80.93330'), ('Eggleston', 1134, '37.28330', '-80.63330'), ('Glen Lyn', 151, '37.37160', '-80.85920'), ('Interior', 1134, '37.41670', '-80.60000'), ('Kimballton', 2729, '37.36670', '-80.68330'), ('Kire', 1134, '37.43330', '-80.53330'), ('Mountain Lake', 1134, '37.35000', '-80.55000'), ('Narrows', 2111, '37.33330', '-80.81670'), ('Newport', 39573, '37.28330', '-80.50000'), ('Pearisburg', 2729, '37.31670', '-80.73330'), ('Pembroke', 1134, '37.32180', '-80.63660'), ('Poplar Hill', 2729, '37.21670', '-80.73330'), ('Rich Creek', 665, '37.38330', '-80.83330'), ('Thessalia', 2111, '37.25000', '-80.80000'), ('White Gate', 2111, '37.20000', '-80.85000')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC073': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Achilles', 9429, '37.28000', '-76.44070'), ('Adner', 2269, '37.49870', '-76.63340'), ('Allmondsville', 2269, '37.39720', '-76.64840'), ('Ark', 2269, '37.43820', '-76.57730'), ('Belroi', 2269, '37.38770', '-76.58790'), ('Beulah', 2269, '37.39000', '-76.44230'), ('Cash', 543, '37.53510', '-76.54550'), ('Clay Bank', 2269, '37.36000', '-76.59000'), ('Dutton', 2269, '37.49450', '-76.46870'), ('Glass', 9429, '37.31680', '-76.44990'), ('Glenns', 543, '37.56550', '-76.61260'), ('Gloucester Courthouse', 2269, '37.40980', '-76.52700'), ('Gloucester Point', 9429, '37.26770', '-76.49550'), ('Harcum', 2269, '37.51840', '-76.50500'), ('Hayes', 2269, '37.37610', '-76.50310'), ('Maryus', 9429, '37.27960', '-76.40310'), ('Naxera', 9429, '37.34200', '-76.44770'), ('Ordinary', 9429, '37.31640', '-76.51360'), ('Pampa', 543, '37.52540', '-76.59310'), ('Pinero', 2269, '37.49250', '-76.54060'), ('Selden', 2269, '37.35740', '-76.46820'), ('Severn', 9429, '37.29420', '-76.41580'), ('Ware Neck', 2269, '37.40250', '-76.45890'), ('White Marsh', 2269, '37.34210', '-76.52070'), ('Wicomico', 9429, '37.29190', '-76.51910')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC073': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Achilles', 9429, '37.28000', '-76.44070'), ('Adner', 2269, '37.49870', '-76.63340'), ('Allmondsville', 2269, '37.39720', '-76.64840'), ('Ark', 2269, '37.43820', '-76.57730'), ('Belroi', 2269, '37.38770', '-76.58790'), ('Beulah', 2269, '37.39000', '-76.44230'), ('Cash', 543, '37.53510', '-76.54550'), ('Clay Bank', 2269, '37.36000', '-76.59000'), ('Dutton', 2269, '37.49450', '-76.46870'), ('Glass', 9429, '37.31680', '-76.44990'), ('Glenns', 543, '37.56550', '-76.61260'), ('Gloucester Courthouse', 2269, '37.40980', '-76.52700'), ('Gloucester Point', 9429, '37.26770', '-76.49550'), ('Harcum', 2269, '37.51840', '-76.50500'), ('Hayes', 2269, '37.37610', '-76.50310'), ('Maryus', 9429, '37.27960', '-76.40310'), ('Naxera', 9429, '37.34200', '-76.44770'), ('Ordinary', 9429, '37.31640', '-76.51360'), ('Pampa', 543, '37.52540', '-76.59310'), ('Pinero', 2269, '37.49250', '-76.54060'), ('Selden', 2269, '37.35740', '-76.46820'), ('Severn', 9429, '37.29420', '-76.41580'), ('Ware Neck', 2269, '37.40250', '-76.45890'), ('White Marsh', 2269, '37.34210', '-76.52070'), ('Wicomico', 9429, '37.29190', '-76.51910')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC075': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Caledonia', 49, '37.82110', '-78.10600'), ('Centerville', 43242, '37.67090', '-77.68740'), ('Crozier', 43242, '37.63720', '-77.79690'), ('Elk Hill', 49, '37.71730', '-78.08750'), ('Fife', 49, '37.74220', '-78.05880'), ('Georges Tavern', 49, '37.73550', '-78.05430'), ('Goochland', 49, '37.68390', '-77.88540'), ('Hadensville', 49, '37.82550', '-77.99970'), ('Irwin', 49, '37.69390', '-77.92350'), ('Johnsons Springs', 43242, '37.69810', '-77.71140'), ('Maidens', 49, '37.66900', '-77.88180'), ('Manakin', 43242, '37.60170', '-77.70200'), ('Oilville', 43242, '37.70500', '-77.78790'), ('Othma', 49, '37.77250', '-77.98000'), ('Pemberton', 49, '37.67440', '-78.08500'), ('Rock Castle', 49, '37.62660', '-77.97830'), ('Sabot', 43242, '37.61410', '-77.74800'), ('Sandy Hook', 49, '37.75280', '-77.91270'), ('Tabscott', 49, '37.86120', '-78.06440'), ('Three Square', 49, '37.66500', '-77.99460'), ('West View', 49, '37.64600', '-78.00820')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC077': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Baywood', 614, '36.61670', '-81.01670'), ('Bridle Creek', 971, '36.61670', '-81.25000'), ('Comers Rock', 1350, '36.75000', '-81.25000'), ('Elk Creek', 971, '36.71670', '-81.18330'), ('Flatridge', 174, '36.73330', '-81.31670'), ('Fries', 614, '36.71610', '-80.97900'), ('Independence', 971, '36.61670', '-81.15000'), ('Mouth Of Wilson', 174, '36.58330', '-81.33330'), ('Rugby', 174, '36.61670', '-81.45000'), ('Spring Valley', 614, '36.73330', '-81.06670'), ('Troutdale', 174, '36.70000', '-81.43330'), ('Volney', 174, '36.61670', '-81.38330'), ('Whitetop', 171, '36.60000', '-81.61670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC079': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amicus', 476, '38.25560', '-78.48030'), ('Dawsonville', 0, '38.26530', '-78.31530'), ('Fletcher', 476, '38.39280', '-78.43360'), ('Haneytown', 476, '38.29030', '-78.53560'), ('Lydia', 476, '38.33030', '-78.49110'), ('McMullen', 476, '38.34830', '-78.45810'), ('Newtown', 0, '38.23750', '-78.33750'), ('Ruckersville', 0, '38.23000', '-78.37000'), ('Shady Grove', 2042, '38.26030', '-78.59280'), ('Stanardsville', 476, '38.30040', '-78.43830')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC081': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barley', 1003, '36.56410', '-77.72410'), ('Brink', 1003, '36.61780', '-77.63470'), ('Bryants Corner', 791, '36.58850', '-77.41570'), ('Bufford Crossroads', 5665, '36.73770', '-77.61950'), ('Claresville', 5665, '36.62250', '-77.45110'), ('Cowie Corner', 5665, '36.77420', '-77.57190'), ('Dahlia', 791, '36.56970', '-77.53660'), ('Durand', 5665, '36.72000', '-77.58830'), ('Emporia Airport', 5665, '36.68720', '-77.48360'), ('Emporia Reservoir', 5665, '36.69800', '-77.56760'), ('Fields Crossroads', 589, '36.83170', '-77.54940'), ('Green Plain', 5665, '36.69670', '-77.45220'), ('Jarratt', 589, '36.81580', '-77.47010'), ('Lanes Corner', 5665, '36.66280', '-77.52920'), ('Pleasant Shade', 5665, '36.75110', '-77.64720'), ('Purdy', 589, '36.82270', '-77.58820'), ('Radium', 5665, '36.73170', '-77.62860'), ('Slagles Lake', 5665, '36.75650', '-77.52860'), ('Slates Corner', 1003, '36.56310', '-77.65890'), ('Turners Crossroads', 1003, '36.55030', '-77.58670')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC083': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alton', 7332, '36.56670', '-79.00000'), ('Clover', 198, '36.83390', '-78.73390'), ('Cluster Springs', 8491, '36.61670', '-78.91670'), ('Cody', 1259, '36.98330', '-79.08330'), ('Crystal Hill', 1389, '36.85000', '-78.90000'), ('Dryburg', 145, '36.73330', '-78.71670'), ('Elmo', 185, '36.66670', '-79.13330'), ('Halifax', 1389, '36.76540', '-78.93240'), ('Hitesburg', 159, '36.61670', '-78.71670'), ('Ingram', 1389, '36.75000', '-79.15000'), ('Leda', 1389, '36.90000', '-79.08330'), ('Mt Laurel', 198, '36.86670', '-78.76670'), ('Nathalie', 1259, '36.93330', '-78.95000'), ('Ridgeway', 1389, '36.80000', '-79.13330'), ('Scottsburg', 145, '36.75980', '-78.79080'), ('South Boston', 8491, '36.70000', '-78.90000'), ('Turbeville', 8491, '36.61670', '-79.03330'), ('Virgilina', 159, '36.55000', '-78.78330')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAC085': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ashcake', 4380, '37.69170', '-77.40280'), ('Ashland', 6619, '37.76160', '-77.47640'), ('Atlee', 4380, '37.65750', '-77.40740'), ('Beaverdam', 6619, '37.94170', '-77.65440'), ('Coatesville', 6619, '37.87830', '-77.60930'), ('Doswell', 6619, '37.86030', '-77.46460'), ('Elmont', 12562, '37.71110', '-77.49280'), ('Gilman', 6619, '37.77830', '-77.58080'), ('Goodall', 6619, '37.78250', '-77.63720'), ('Gum Tree', 6619, '37.81920', '-77.47440'), ('Hanover', 6619, '37.76320', '-77.37100'), ('Hanover Airport', 12562, '37.70870', '-77.43590'), ('Hewlett', 6619, '37.92220', '-77.57670'), ('Kings Dominion', 6619, '37.83300', '-77.43100'), ('Mabelton', 424, '37.84080', '-77.74250'), ('Mechanicsville', 30464, '37.62730', '-77.35600'), ('Montpelier', 6619, '37.81440', '-77.67770'), ('Noel', 6619, '37.90440', '-77.54440'), ('Oliver', 6619, '37.85810', '-77.53310'), ('Rockville', 43242, '37.72580', '-77.67890'), ('Studley', 30464, '37.67560', '-77.29080'), ('Vontay', 43242, '37.75750', '-77.75060'), ('Westwood', 15137, '37.60170', '-77.17780')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC087': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Chamberlayne', 4380, '37.62640', '-77.42880'), ('Dumbarton', 6674, '37.60870', '-77.50050'), ('East Highland Park', 12488, '37.57480', '-77.38450'), ('Elko', 15137, '37.47280', '-77.21170'), ('Fair Oaks', 15137, '37.53060', '-77.31640'), ('Glen Allen', 12562, '37.66400', '-77.48450'), ('Glendale', 15137, '37.44560', '-77.23330'), ('Greendale', 6674, '37.61390', '-77.49690'), ('Highland Springs', 15137, '37.55080', '-77.32720'), ('Lakeside', 11157, '37.61750', '-77.46790'), ('Laurel', 14875, '37.63390', '-77.50700'), ('Longdale', 12562, '37.65810', '-77.47000'), ('Montrose', 7018, '37.52050', '-77.37850'), ('Richmond Heights', 5435, '37.46360', '-77.39830'), ('Richmond International', 15137, '37.50630', '-77.31700'), ('Roslyn Hills', 43242, '37.57610', '-77.56610'), ('Sandston', 15137, '37.51585', '-77.27853'), ('Short Pump', 182, '37.65050', '-77.60950'), ('Solomons Store', 11157, '37.63940', '-77.45970'), ('Tuckahoe', 43242, '37.58700', '-77.58700'), ('Varina', 7018, '37.44310', '-77.34890')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC089': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Axton', 1742, '36.66670', '-79.71670'), ('Bassett', 1338, '36.76670', '-79.98330'), ('Chatmoss', 1742, '36.67950', '-79.80590'), ('Collinsville', 7777, '36.72480', '-79.91200'), ('Fieldale', 929, '36.70310', '-79.94320'), ('Figsboro', 7777, '36.78330', '-79.85000'), ('Horse Pasture', 2255, '36.62960', '-79.94870'), ('Leatherwood', 1742, '36.73330', '-79.75000'), ('Martinsville Airport', 15416, '36.63330', '-79.86670'), ('Mountain Valley', 1742, '36.78330', '-79.70000'), ('Ridgeway', 775, '36.58330', '-79.86670'), ('Sanville', 1338, '36.71670', '-80.06670'), ('Spencer', 2255, '36.61670', '-80.01670'), ('Stanleytown', 1515, '36.75170', '-79.95130'), ('Villa Heights', 1021, '36.69730', '-79.90400')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAC091': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Clover Creek', 158, '38.27000', '-79.54920'), ('Doe Hill', 0, '38.43190', '-79.44470'), ('Hightown', 158, '38.43110', '-79.63190'), ('Liberty', 158, '38.28890', '-79.45970'), ('McDowell', 158, '38.33560', '-79.49080'), ('Mill Gap', 158, '38.32170', '-79.70420'), ('Monterey', 158, '38.41180', '-79.58070'), ('Mustoe', 158, '38.32360', '-79.64060'), ('New Hampden', 158, '38.49280', '-79.56360'), ('Palo Alto', 0, '38.42330', '-79.37060'), ('Possum Trot', 158, '38.47000', '-79.53250'), ('Sirons Mill', 158, '38.39750', '-79.47330'), ('Vanderpool', 158, '38.36940', '-79.62560'), ('Williamsville', 158, '38.20000', '-79.56670')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAC093': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Benns Church', 6324, '36.93760', '-76.58640'), ('Bethel Church', 6324, '36.95420', '-76.71390'), ('Boaz', 916, '36.74670', '-76.76190'), ('Carrollton', 6324, '36.94670', '-76.56080'), ('Carrsville', 8346, '36.71110', '-76.82990'), ('Central Hill', 916, '36.91060', '-76.74080'), ('Collosse', 916, '36.76110', '-76.82190'), ('Comet', 1083, '36.98470', '-76.74420'), ('Indika', 916, '36.82030', '-76.68390'), ('Isle Of Wight', 916, '36.90770', '-76.70800'), ('Lawson', 6324, '37.01110', '-76.63080'), ('Lees Mill', 8346, '36.68250', '-76.89580'), ('Longview', 6324, '36.88890', '-76.60690'), ('Mogarts Beach', 6324, '37.03190', '-76.60110'), ('Moonlight', 1083, '37.03400', '-76.72250'), ('Pons', 297, '37.00030', '-76.79190'), ('Raynor', 320, '36.94920', '-76.78260'), ('Rescue', 6324, '36.99650', '-76.55410'), ('Rushmere', 1083, '37.08300', '-76.67460'), ('Smithfield', 6324, '36.98270', '-76.61780'), ('Walters', 916, '36.77220', '-76.84970'), ('Whitley', 916, '36.88530', '-76.75970'), ('Wills Corner', 6324, '36.88060', '-76.58220'), ('Windsor', 916, '36.80820', '-76.73950'), ('Zuni', 324, '36.86660', '-76.82000')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC095': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Busch Gardens', 11998, '37.22910', '-76.63640'), ('Centerville', 11998, '37.31640', '-76.78950'), ('Christensons Corner', 11998, '37.38780', '-76.70890'), ('Croaker', 11998, '37.39670', '-76.75310'), ('Diascund', 2866, '37.39420', '-76.87080'), ('Ewell', 11998, '37.32890', '-76.74250'), ('Five Forks', 11998, '37.25200', '-76.76550'), ('Governors Land', 262, '37.24920', '-76.83020'), ('Grove', 11998, '37.22972', '-76.62722'), ('Jamestown', 11998, '37.22000', '-76.76000'), ('Kings Corner', 2866, '37.40090', '-76.87380'), ('Kings Point', 11998, '37.24382', '-76.70546'), ('Lightfoot', 11998, '37.34000', '-76.75440'), ('Norge', 11998, '37.36800', '-76.77080'), ('Toano', 11998, '37.37920', '-76.80300'), ('Warren Mill', 11998, '37.37280', '-76.84110'), ('Williamsburg Airport', 11998, '37.24040', '-76.71820'), ('York River State Park', 11998, '37.41410', '-76.71420')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC095': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Busch Gardens', 11998, '37.22910', '-76.63640'), ('Centerville', 11998, '37.31640', '-76.78950'), ('Christensons Corner', 11998, '37.38780', '-76.70890'), ('Croaker', 11998, '37.39670', '-76.75310'), ('Diascund', 2866, '37.39420', '-76.87080'), ('Ewell', 11998, '37.32890', '-76.74250'), ('Five Forks', 11998, '37.25200', '-76.76550'), ('Governors Land', 262, '37.24920', '-76.83020'), ('Grove', 11998, '37.22972', '-76.62722'), ('Jamestown', 11998, '37.22000', '-76.76000'), ('Kings Corner', 2866, '37.40090', '-76.87380'), ('Kings Point', 11998, '37.24382', '-76.70546'), ('Lightfoot', 11998, '37.34000', '-76.75440'), ('Norge', 11998, '37.36800', '-76.77080'), ('Toano', 11998, '37.37920', '-76.80300'), ('Warren Mill', 11998, '37.37280', '-76.84110'), ('Williamsburg Airport', 11998, '37.24040', '-76.71820'), ('York River State Park', 11998, '37.41410', '-76.71420')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC097': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Beazley', 2068, '37.96470', '-77.07030'), ('Biscoe', 2068, '37.81820', '-77.05760'), ('Bruington', 2068, '37.77780', '-76.93620'), ('Clancie', 2866, '37.58030', '-76.69330'), ('Crouch', 2068, '37.76220', '-76.89750'), ('Dragonville', 2866, '37.70060', '-76.78060'), ('Gressit', 2866, '37.48730', '-76.70840'), ('Henley Fork', 2068, '37.75590', '-76.99060'), ('Indian Neck', 2068, '37.90220', '-77.03310'), ('Ino', 2068, '37.76220', '-76.79810'), ('King And Queen Court House', 2866, '37.66960', '-76.87760'), ('Little Plymouth', 2866, '37.62800', '-76.79380'), ('Mascot', 2866, '37.62710', '-76.70690'), ('Mattaponi', 2866, '37.53420', '-76.77740'), ('Newtown', 2068, '37.91340', '-77.12810'), ('Owenton', 2068, '37.88380', '-77.10050'), ('Saint Stephens Church', 2068, '37.80340', '-77.05580'), ('Salvia', 170, '37.94920', '-77.13310'), ('Shacklefords', 2866, '37.54990', '-76.73420'), ('Stevensville', 2068, '37.72760', '-76.92030'), ('Velma', 2866, '37.64690', '-76.71610'), ('Walkerton', 2068, '37.72680', '-77.02240')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC099': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Berthaville', 0, '38.33330', '-77.12610'), ('Dahlgren', 997, '38.33000', '-77.05000'), ('Dogue', 170, '38.23190', '-77.21610'), ('Fairview Beach', 230, '38.33000', '-77.24750'), ('Jersey', 170, '38.21140', '-77.13970'), ('King George', 170, '38.26810', '-77.18470'), ('Lambs Creek', 170, '38.26360', '-77.26940'), ('Ninde', 0, '38.27110', '-77.05640'), ('Passapatanzy', 0, '38.29720', '-77.31440'), ('Rollins Fork', 3228, '38.18470', '-77.06250'), ('Shiloh', 170, '38.22140', '-77.11140'), ('Weedonville', 0, '38.29830', '-77.15890')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC099': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Berthaville', 0, '38.33330', '-77.12610'), ('Dahlgren', 997, '38.33000', '-77.05000'), ('Dogue', 170, '38.23190', '-77.21610'), ('Fairview Beach', 230, '38.33000', '-77.24750'), ('Jersey', 170, '38.21140', '-77.13970'), ('King George', 170, '38.26810', '-77.18470'), ('Lambs Creek', 170, '38.26360', '-77.26940'), ('Ninde', 0, '38.27110', '-77.05640'), ('Passapatanzy', 0, '38.29720', '-77.31440'), ('Rollins Fork', 3228, '38.18470', '-77.06250'), ('Shiloh', 170, '38.22140', '-77.11140'), ('Weedonville', 0, '38.29830', '-77.15890')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC101': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aylett', 30464, '37.77000', '-77.12000'), ('Beulahville', 936, '37.85510', '-77.17900'), ('Calno', 6619, '37.81310', '-77.30170'), ('Central Garage', 30464, '37.74420', '-77.13150'), ('Cohoke', 2866, '37.57940', '-76.94670'), ('Cooke', 2866, '37.57920', '-76.94640'), ('Duane Fork', 936, '37.87440', '-77.23070'), ('Enfield', 30464, '37.74530', '-77.21860'), ('Epworth', 30464, '37.79080', '-77.21220'), ('Etna Mills', 30464, '37.76560', '-77.26610'), ('Globe', 30464, '37.81220', '-77.20000'), ('King William', 2866, '37.68720', '-77.01360'), ('Lanesville', 2866, '37.61440', '-76.97890'), ('Mangohick', 30464, '37.81000', '-77.27350'), ('Manquin', 30464, '37.70890', '-77.15420'), ('Palls', 2866, '37.64430', '-77.05470'), ('Pollards Corner', 30464, '37.79010', '-77.18500'), ('Romancoke', 2866, '37.57780', '-76.84520'), ('Rose Garden', 2866, '37.63250', '-76.93450'), ('Rumford', 30464, '37.72450', '-77.08980'), ('Turpin', 30464, '37.76110', '-77.14720'), ('Upshaw', 30464, '37.79390', '-77.14720'), ('West Point', 2866, '37.55230', '-76.80030')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC103': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alfonso', 1244, '37.80910', '-76.50830'), ('Beanes Corner', 1244, '37.82000', '-76.46390'), ('Belle Isle State Park', 543, '37.77920', '-76.59310'), ('Bertrand', 543, '37.66890', '-76.51780'), ('Brook Vale', 1244, '37.75930', '-76.42080'), ('Christ Church', 673, '37.68190', '-76.42340'), ('Foxwells', 358, '37.62920', '-76.31140'), ('Kilmarnock', 1244, '37.71450', '-76.38270'), ('Lancaster', 1244, '37.76990', '-76.46730'), ('Lively', 1244, '37.77770', '-76.51390'), ('Millenbeck', 673, '37.66970', '-76.48890'), ('Mollusk', 543, '37.72680', '-76.53690'), ('Morattico', 543, '37.80000', '-76.61000'), ('Nuttsville', 543, '37.79340', '-76.55120'), ('Regina', 1244, '37.80390', '-76.41780'), ('Senora', 543, '37.67640', '-76.52140'), ('Slabtown', 673, '37.67580', '-76.49710'), ('Somers', 543, '37.78810', '-76.56670'), ('Weems', 673, '37.65410', '-76.44990'), ('White Stone', 358, '37.64500', '-76.39160'), ('Windmill Point', 358, '37.61440', '-76.27960')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC103': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alfonso', 1244, '37.80910', '-76.50830'), ('Beanes Corner', 1244, '37.82000', '-76.46390'), ('Belle Isle State Park', 543, '37.77920', '-76.59310'), ('Bertrand', 543, '37.66890', '-76.51780'), ('Brook Vale', 1244, '37.75930', '-76.42080'), ('Christ Church', 673, '37.68190', '-76.42340'), ('Foxwells', 358, '37.62920', '-76.31140'), ('Kilmarnock', 1244, '37.71450', '-76.38270'), ('Lancaster', 1244, '37.76990', '-76.46730'), ('Lively', 1244, '37.77770', '-76.51390'), ('Millenbeck', 673, '37.66970', '-76.48890'), ('Mollusk', 543, '37.72680', '-76.53690'), ('Morattico', 543, '37.80000', '-76.61000'), ('Nuttsville', 543, '37.79340', '-76.55120'), ('Regina', 1244, '37.80390', '-76.41780'), ('Senora', 543, '37.67640', '-76.52140'), ('Slabtown', 673, '37.67580', '-76.49710'), ('Somers', 543, '37.78810', '-76.56670'), ('Weems', 673, '37.65410', '-76.44990'), ('White Stone', 358, '37.64500', '-76.39160'), ('Windmill Point', 358, '37.61440', '-76.27960')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC105': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Cumberland Gap', 210, '36.60280', '-83.66530'), ('Dryden', 1253, '36.77560', '-82.94310'), ('Ewing', 436, '36.63470', '-83.43220'), ('Jasper', 62, '36.76640', '-82.82420'), ('Jonesville', 995, '36.68820', '-83.11550'), ('Pattonsville', 1781, '36.69560', '-82.94310'), ('Pennington Gap', 1781, '36.75960', '-83.02890'), ('Rose Hill', 15058, '36.69060', '-83.28920'), ('St. Charles', 159, '36.80390', '-83.05790')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC107': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aldie', 632, '38.97560', '-77.64170'), ('Arcola', 3393, '38.95170', '-77.53440'), ('Ashburn', 3393, '39.04140', '-77.48100'), ('Belmont', 3393, '39.06470', '-77.51030'), ('Bluemont', 500, '39.11110', '-77.83420'), ('Countryside', 8349, '39.05240', '-77.41760'), ('Dulles International Airport', 21655, '38.94440', '-77.45560'), ('Gleedsville', 28311, '39.04920', '-77.60500'), ('Hillsboro', 96, '39.19790', '-77.72450'), ('Hughesville', 562, '39.09970', '-77.66000'), ('Leesburg', 28311, '39.10470', '-77.55610'), ('Lovettsville', 853, '39.27410', '-77.63900'), ('Lucketts', 28311, '39.21560', '-77.53470'), ('Middleburg', 632, '38.97100', '-77.73980'), ('Oak Grove', 20512, '38.98390', '-77.40420'), ('Philomont', 500, '39.05610', '-77.74060'), ('Purcellville', 3584, '39.13800', '-77.71150'), ('Round Hill', 500, '39.13350', '-77.77050'), ('Sterling Park', 20512, '39.00130', '-77.40830'), ('Taylorstown', 853, '39.25420', '-77.57500'), ('Waterford', 562, '39.18670', '-77.61030')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC109': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Apple Grove', 424, '37.89010', '-77.89810'), ('Boswells Tavern', 1498, '38.07070', '-78.18600'), ('Bumpass', 424, '37.96380', '-77.73730'), ('Byrd Mill', 1401, '37.99200', '-78.08220'), ('Cuckoo', 424, '37.95230', '-77.90050'), ('Dabneys', 424, '37.76580', '-77.80020'), ('Ferncliff', 1401, '37.93330', '-78.10960'), ('Fredericks Hall', 424, '37.98580', '-77.82300'), ('Green Springs', 1498, '38.08610', '-78.11260'), ('Gum Spring', 424, '37.77540', '-77.89700'), ('Locust Creek', 424, '37.86730', '-77.78790'), ('Louisa', 1401, '38.01920', '-77.99950'), ('Louisa Airport', 1401, '38.01380', '-77.98090'), ('Mineral', 424, '38.00730', '-77.90660'), ('Orchid', 424, '37.82900', '-77.89540'), ('Pendleton', 424, '37.99470', '-77.89830'), ('Trevilians', 1401, '38.05040', '-78.07370'), ('Vawter Corner', 1401, '38.12900', '-78.01380'), ('Waldrop', 1498, '38.07360', '-78.20190'), ('Wares Crossroads', 424, '38.07960', '-77.87980'), ('Yanceyville', 1401, '37.91650', '-77.98640'), ('Zion Crossroads', 6852, '37.97060', '-78.21940')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC111': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arvins Store', 1821, '37.01970', '-78.34310'), ('Bacons Fork', 1253, '36.85270', '-78.06030'), ('Blevins Corner', 817, '36.98060', '-78.43690'), ('Dundas', 1253, '36.91320', '-78.02180'), ('Fort Mitchell', 2457, '36.91790', '-78.48190'), ('Gary', 1253, '36.86500', '-78.20070'), ('Gills Corner', 1253, '36.86060', '-78.03530'), ('Kells Corner', 2457, '36.87870', '-78.40770'), ('Kenbridge', 1253, '36.96410', '-78.13060'), ('Lafoon Corner', 1253, '36.92370', '-78.08910'), ('Loves Mill', 1821, '36.90580', '-78.28420'), ('Lunenburg', 1821, '36.96140', '-78.26570'), ('Meherrin', 817, '37.09000', '-78.36670'), ('Nutbush', 1821, '37.04500', '-78.27630'), ('Oral Oaks', 1253, '36.91570', '-78.19590'), ('Plantersville', 817, '36.92580', '-78.44190'), ('Pleasant Grove', 817, '37.00060', '-78.37200'), ('Rehoboth', 1821, '36.92050', '-78.35510'), ('Rubermount', 1821, '37.06250', '-78.20640'), ('Scholfield', 1821, '37.10180', '-78.32400'), ('Simplicity', 817, '37.07970', '-78.42440'), ('Victoria', 1821, '36.99460', '-78.22450'), ('Wilburn', 1821, '36.85570', '-78.27090')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC113': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aylor', 210, '38.43470', '-78.30220'), ('Big Meadows', 1326, '38.52640', '-78.44000'), ('Criglersville', 210, '38.45780', '-78.30140'), ('Etlan', 0, '38.52530', '-78.26280'), ('Five Forks', 4123, '38.29890', '-78.13560'), ('Fordsville', 9664, '38.40140', '-78.11640'), ('Graves Mill', 210, '38.42250', '-78.36780'), ('Madison', 210, '38.37750', '-78.25930'), ('Madison Mills', 4123, '38.28080', '-78.14110'), ('Nethers', 0, '38.57030', '-78.27810'), ('Oakpark', 210, '38.36670', '-78.16030'), ('Rochelle', 210, '38.29030', '-78.27280'), ('Syria', 210, '38.48780', '-78.32640'), ('Twymans Mill', 4123, '38.31780', '-78.17170'), ('Wolftown', 210, '38.35560', '-78.34780')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAC115': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bavon', 11566, '37.33250', '-76.28800'), ('Blakes', 358, '37.50630', '-76.37620'), ('Cardinal', 2269, '37.42050', '-76.37840'), ('Cobbs Creek', 358, '37.50530', '-76.39680'), ('Diggs', 358, '37.43600', '-76.28130'), ('Dixie', 2269, '37.50060', '-76.41470'), ('Fort Nonsense', 2269, '37.46500', '-76.44490'), ('Gwynn', 358, '37.50440', '-76.28860'), ('Hudgins', 358, '37.47100', '-76.32640'), ('Laban', 2269, '37.40030', '-76.28360'), ('Mathews', 2269, '37.43340', '-76.32180'), ('Mobjack', 2269, '37.37620', '-76.34830'), ('Moon', 358, '37.44960', '-76.30350'), ('New Point', 11566, '37.34880', '-76.28150'), ('New Point Comfort', 11566, '37.30630', '-76.27760'), ('North', 2269, '37.46750', '-76.38050'), ('Peary', 11566, '37.37190', '-76.27970'), ('Port Haywood', 2269, '37.38610', '-76.31740'), ('Redart', 358, '37.47000', '-76.30190'), ('Ruff', 2269, '37.41000', '-76.31280'), ('Soles', 2269, '37.49280', '-76.43720')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC115': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bavon', 11566, '37.33250', '-76.28800'), ('Blakes', 358, '37.50630', '-76.37620'), ('Cardinal', 2269, '37.42050', '-76.37840'), ('Cobbs Creek', 358, '37.50530', '-76.39680'), ('Diggs', 358, '37.43600', '-76.28130'), ('Dixie', 2269, '37.50060', '-76.41470'), ('Fort Nonsense', 2269, '37.46500', '-76.44490'), ('Gwynn', 358, '37.50440', '-76.28860'), ('Hudgins', 358, '37.47100', '-76.32640'), ('Laban', 2269, '37.40030', '-76.28360'), ('Mathews', 2269, '37.43340', '-76.32180'), ('Mobjack', 2269, '37.37620', '-76.34830'), ('Moon', 358, '37.44960', '-76.30350'), ('New Point', 11566, '37.34880', '-76.28150'), ('New Point Comfort', 11566, '37.30630', '-76.27760'), ('North', 2269, '37.46750', '-76.38050'), ('Peary', 11566, '37.37190', '-76.27970'), ('Port Haywood', 2269, '37.38610', '-76.31740'), ('Redart', 358, '37.47000', '-76.30190'), ('Ruff', 2269, '37.41000', '-76.31280'), ('Soles', 2269, '37.49280', '-76.43720')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC117': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Baskerville', 454, '36.68890', '-78.27490'), ('Beechwood', 4403, '36.61720', '-78.21390'), ('Boydton', 454, '36.66600', '-78.38980'), ('Bracey', 618, '36.59710', '-78.14330'), ('Buffalo Junction', 1329, '36.60470', '-78.63060'), ('Buffalo Springs', 1329, '36.64620', '-78.66260'), ('Chase City', 2457, '36.79920', '-78.46130'), ('Clarksville', 1329, '36.62050', '-78.56560'), ('Eppes Fork', 454, '36.55280', '-78.36190'), ('Fairview', 2457, '36.81530', '-78.46690'), ('Finchley', 1329, '36.65090', '-78.49230'), ('Finneywood', 2457, '36.87530', '-78.48060'), ('Forksville', 317, '36.75220', '-78.04640'), ('John H Kerr Dam', 454, '36.59830', '-78.29870'), ('Keats', 454, '36.55560', '-78.29760'), ('La Crosse', 618, '36.69680', '-78.09370'), ('Nelson', 159, '36.55650', '-78.67250'), ('North View', 4403, '36.78060', '-78.24440'), ('Palmer Springs', 996, '36.56050', '-78.23890'), ('Richardson', 454, '36.56110', '-78.44640'), ('Rogers Corner', 454, '36.72000', '-78.41810'), ('Skipwith', 1329, '36.69190', '-78.49070'), ('South Hill', 4403, '36.72900', '-78.12830'), ('Spanish Grove', 2457, '36.79560', '-78.53560'), ('Wightman', 454, '36.79010', '-78.30320')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC119': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amburg', 358, '37.55360', '-76.35860'), ('Church View', 543, '37.67790', '-76.68020'), ('Cooper', 543, '37.61090', '-76.52060'), ('Deltaville', 358, '37.55600', '-76.32770'), ('Grafton', 673, '37.55890', '-76.47060'), ('Hardyville', 358, '37.55590', '-76.38230'), ('Harmony Village', 673, '37.58180', '-76.48730'), ('Hartfield', 358, '37.55080', '-76.44400'), ('Healys', 543, '37.57280', '-76.51190'), ('Jamaica', 543, '37.71490', '-76.69440'), ('Nesting', 543, '37.73390', '-76.64890'), ('Remlik', 543, '37.66160', '-76.62020'), ('Saluda', 543, '37.60610', '-76.59550'), ('Samos', 543, '37.70120', '-76.63520'), ('Stampers', 358, '37.53970', '-76.43280'), ('Stingray Point', 358, '37.55870', '-76.30510'), ('Urbanna', 543, '37.63970', '-76.57540'), ('Wake', 358, '37.56630', '-76.42950'), ('Warner', 543, '37.63780', '-76.64480'), ('Water View', 543, '37.72200', '-76.61390'), ('Wilton', 358, '37.54950', '-76.40690')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC119': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amburg', 358, '37.55360', '-76.35860'), ('Church View', 543, '37.67790', '-76.68020'), ('Cooper', 543, '37.61090', '-76.52060'), ('Deltaville', 358, '37.55600', '-76.32770'), ('Grafton', 673, '37.55890', '-76.47060'), ('Hardyville', 358, '37.55590', '-76.38230'), ('Harmony Village', 673, '37.58180', '-76.48730'), ('Hartfield', 358, '37.55080', '-76.44400'), ('Healys', 543, '37.57280', '-76.51190'), ('Jamaica', 543, '37.71490', '-76.69440'), ('Nesting', 543, '37.73390', '-76.64890'), ('Remlik', 543, '37.66160', '-76.62020'), ('Saluda', 543, '37.60610', '-76.59550'), ('Samos', 543, '37.70120', '-76.63520'), ('Stampers', 358, '37.53970', '-76.43280'), ('Stingray Point', 358, '37.55870', '-76.30510'), ('Urbanna', 543, '37.63970', '-76.57540'), ('Wake', 358, '37.56630', '-76.42950'), ('Warner', 543, '37.63780', '-76.64480'), ('Water View', 543, '37.72200', '-76.61390'), ('Wilton', 358, '37.54950', '-76.40690')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC121': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Blacksburg', 39573, '37.23330', '-80.41670'), ('Childress', 15859, '37.06670', '-80.51670'), ('Christiansburg', 16947, '37.14170', '-80.40270'), ('Crockett Springs', 1029, '37.10000', '-80.26670'), ('Elliston', 1241, '37.21670', '-80.23330'), ('Elliston-Lafayette', 1241, '37.22300', '-80.21570'), ('Mc Donalds Mill', 1241, '37.30000', '-80.28330'), ('Merrimac', 1751, '37.19060', '-80.42580'), ('Pilot', 16947, '37.05000', '-80.36670'), ('Prices Fork', 39573, '37.21670', '-80.50000'), ('Shawsville', 1029, '37.16670', '-80.26670'), ('Walton', 2211, '37.16670', '-80.53330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC125': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Afton', 1307, '38.03220', '-78.83940'), ('Allens Creek', 2251, '37.54670', '-78.86890'), ('Arrington', 0, '37.68390', '-78.90140'), ('Buffalo Springs', 0, '37.60940', '-78.86220'), ('Elma', 0, '37.75360', '-78.79530'), ('Five Forks', 2251, '37.57920', '-78.85890'), ('Greenfield', 19520, '37.92750', '-78.83830'), ('Jonesboro', 0, '37.78330', '-78.97860'), ('Lovingston', 0, '37.77000', '-78.88000'), ('Montebello', 8367, '37.86360', '-79.13810'), ('Norwood', 0, '37.64310', '-78.80920'), ('Piedmont', 2251, '37.61080', '-78.92190'), ('Rockfish', 0, '37.80110', '-78.75580'), ('Roseland', 0, '37.74750', '-78.97610'), ('Schuyler', 0, '37.79220', '-78.69860'), ('Shipman', 0, '37.72360', '-78.83940'), ('Tyro', 0, '37.82140', '-79.00500'), ('Wintergreen', 0, '37.88470', '-78.89970')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC127': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barhamsville', 2866, '37.45610', '-76.84100'), ('Bottoms Bridge', 15137, '37.51080', '-77.19210'), ('Browns Corner', 15137, '37.51780', '-77.08970'), ('Chickahominy Shore', 343, '37.39360', '-76.94140'), ('Colonial Downs', 2866, '37.49280', '-77.02090'), ('Eltham', 2866, '37.52380', '-76.82660'), ('Holly Forks', 2866, '37.46820', '-76.78430'), ('Lanexa', 2866, '37.42300', '-76.90620'), ('Mountcastle', 15137, '37.45330', '-77.09420'), ('New Kent', 2866, '37.51770', '-76.97830'), ('New Kent Airport', 15137, '37.50260', '-77.11860'), ('Orapax Farms', 15137, '37.53360', '-77.20580'), ('Plum Point', 2866, '37.51640', '-76.81390'), ('Providence Forge', 343, '37.44260', '-77.04760'), ('Quinton', 15137, '37.53270', '-77.11540'), ('Slaterville', 2866, '37.49950', '-76.94440'), ('Talleysville', 15137, '37.52450', '-77.07540'), ('Tunstall', 15137, '37.61150', '-77.12480'), ('Walkers', 343, '37.41530', '-76.94030'), ('Wrights Corner', 15137, '37.49930', '-77.13840')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC131': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bay View', 499, '37.27667', '-75.96778'), ('Birdsnest', 572, '37.43850', '-75.88240'), ('Cape Charles', 1134, '37.27040', '-76.01460'), ('Cape Charles Light', 499, '37.12160', '-75.90280'), ('Capeville', 499, '37.20500', '-75.95720'), ('Cheapside', 1134, '37.20070', '-75.98320'), ('Cheriton', 499, '37.28800', '-75.96760'), ('Dalbys', 499, '37.23000', '-75.97060'), ('Eastville', 203, '37.35080', '-75.94040'), ('Exmore', 1136, '37.53370', '-75.82410'), ('Fishermans Island', 1134, '37.10000', '-75.97000'), ('Franktown', 572, '37.47800', '-75.87830'), ('Jamesville', 572, '37.51470', '-75.93250'), ('Kiptopeke', 1134, '37.13950', '-75.96380'), ('Kiptopeke State Park', 1134, '37.17000', '-75.97920'), ('Machipongo', 203, '37.40340', '-75.90180'), ('Nassawadox', 572, '37.47650', '-75.86280'), ('Oyster', 499, '37.28640', '-75.92260'), ('Plantation', 1134, '37.24030', '-75.98380'), ('Silver Beach', 572, '37.48460', '-75.96110'), ('Simpkins', 203, '37.32420', '-75.94390'), ('Smith Beach', 203, '37.38280', '-75.98380'), ('Townsend', 1134, '37.18540', '-75.95820'), ('Wardtown', 572, '37.50830', '-75.87040')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC133': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Avalon', 1244, '37.90670', '-76.42420'), ('Browns Store', 1244, '37.82890', '-76.42960'), ('Burgess', 1244, '37.88370', '-76.34780'), ('Byrdton', 1244, '37.70110', '-76.33690'), ('Callao', 1375, '37.96830', '-76.55780'), ('Dodlyt', 1244, '37.89690', '-76.51060'), ('Edwardsville', 1244, '37.90660', '-76.36460'), ('Fair Port', 1244, '37.83333', '-76.29056'), ('Fleeton', 1244, '37.81750', '-76.28160'), ('Gibeon', 1375, '37.97030', '-76.61870'), ('Heathsville', 1244, '37.91760', '-76.47250'), ('Howland', 1244, '37.87080', '-76.45560'), ('Hull Neck', 1244, '37.95370', '-76.37620'), ('Lara', 1244, '37.85440', '-76.51710'), ('Lewisetta', 9943, '38.00500', '-76.46380'), ('Lilian', 1244, '37.86360', '-76.30140'), ('Lottsburg', 1375, '37.96130', '-76.51930'), ('Middletons Corner', 1244, '37.94550', '-76.44600'), ('Opheila', 1244, '37.91030', '-76.28330'), ('Reedville', 1244, '37.86520', '-76.29060'), ('Rehoboth Church', 1244, '37.76770', '-76.36600'), ('Smith Point', 1244, '37.88860', '-76.23690'), ('Wicomico Church', 1244, '37.81510', '-76.37830')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC133': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Avalon', 1244, '37.90670', '-76.42420'), ('Browns Store', 1244, '37.82890', '-76.42960'), ('Burgess', 1244, '37.88370', '-76.34780'), ('Byrdton', 1244, '37.70110', '-76.33690'), ('Callao', 1375, '37.96830', '-76.55780'), ('Dodlyt', 1244, '37.89690', '-76.51060'), ('Edwardsville', 1244, '37.90660', '-76.36460'), ('Fair Port', 1244, '37.83333', '-76.29056'), ('Fleeton', 1244, '37.81750', '-76.28160'), ('Gibeon', 1375, '37.97030', '-76.61870'), ('Heathsville', 1244, '37.91760', '-76.47250'), ('Howland', 1244, '37.87080', '-76.45560'), ('Hull Neck', 1244, '37.95370', '-76.37620'), ('Lara', 1244, '37.85440', '-76.51710'), ('Lewisetta', 9943, '38.00500', '-76.46380'), ('Lilian', 1244, '37.86360', '-76.30140'), ('Lottsburg', 1375, '37.96130', '-76.51930'), ('Middletons Corner', 1244, '37.94550', '-76.44600'), ('Opheila', 1244, '37.91030', '-76.28330'), ('Reedville', 1244, '37.86520', '-76.29060'), ('Rehoboth Church', 1244, '37.76770', '-76.36600'), ('Smith Point', 1244, '37.88860', '-76.23690'), ('Wicomico Church', 1244, '37.81510', '-76.37830')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAC135': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Blackstone', 3675, '37.07870', '-78.00170'), ('Blackstone Airport', 3675, '37.07650', '-77.95510'), ('Burkeville', 489, '37.18700', '-78.20200'), ('Clay Store', 3675, '37.19610', '-77.96260'), ('Crewe', 2378, '37.18070', '-78.13090'), ('Dominy Corner', 3675, '37.08160', '-77.96990'), ('Fergusonville', 2378, '37.22950', '-78.06800'), ('Forkland', 3675, '37.01750', '-77.96550'), ('Fort Pickett', 3675, '37.04590', '-77.94360'), ('Irby', 3675, '37.03160', '-78.04270'), ('Jennings Ordinary', 2378, '37.22550', '-78.14580'), ('Murdocks', 3675, '37.02700', '-78.05980'), ('North Wellville', 3675, '37.15050', '-77.91720'), ('Nottoway', 2378, '37.13030', '-78.07960'), ('Oliveville', 489, '37.14710', '-78.23280'), ('Pattersons Store', 3675, '37.14580', '-77.96230'), ('Spainville', 3675, '37.18900', '-77.91610'), ('The Falls', 1253, '37.04600', '-78.14900'), ('Wellville', 3675, '37.12600', '-77.92220')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC137': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barboursville', 1498, '38.17080', '-78.28190'), ('Burr Hill', 9664, '38.34390', '-77.86000'), ('Eheart', 0, '38.20360', '-78.32330'), ('Everona', 4123, '38.30470', '-77.96750'), ('Flat Run', 0, '38.36470', '-77.76670'), ('Gold Dale', 0, '38.26690', '-77.80610'), ('Gordonsville', 1498, '38.13660', '-78.18810'), ('Lahore', 4123, '38.19860', '-77.96970'), ('Madison Run', 4123, '38.19670', '-78.13060'), ('Nasons', 4123, '38.25500', '-78.02690'), ('Old Somerset', 1498, '38.22360', '-78.22030'), ('Orange', 4123, '38.24700', '-78.11140'), ('Thornhill', 1401, '38.15420', '-77.96830'), ('Unionville', 4123, '38.25970', '-77.96860'), ('Verdiersville', 4123, '38.27170', '-77.90280')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC139': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alma', 1326, '38.59110', '-78.55780'), ('Compton', 4871, '38.78250', '-78.36920'), ('Fairview', 4871, '38.65420', '-78.42940'), ('Hamburg', 4871, '38.65810', '-78.51470'), ('Honeyville', 1326, '38.57860', '-78.56250'), ('Ida', 1326, '38.58890', '-78.42420'), ('Ingham', 1878, '38.52890', '-78.57830'), ('Jollett', 1878, '38.46390', '-78.52420'), ('Kimball', 4871, '38.68690', '-78.40280'), ('Leaksville', 1326, '38.62640', '-78.52640'), ('Luray', 4871, '38.66470', '-78.45530'), ('Newport', 1326, '38.57860', '-78.59670'), ('Panorama', 0, '38.65920', '-78.32170'), ('Pine Grove', 1326, '38.53580', '-78.48030'), ('Rileyville', 4871, '38.76500', '-78.38830'), ('Shenandoah', 1878, '38.48740', '-78.62250'), ('Skyland', 4871, '38.59360', '-78.38220'), ('Stanley', 1326, '38.57910', '-78.50470')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAC141': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ararat', 1812, '36.60000', '-80.51670'), ('Buffalo Ridge', 961, '36.75000', '-80.26670'), ('Charity', 432, '36.81670', '-80.21670'), ('Critz', 961, '36.63330', '-80.15000'), ('Meadows Of Dan', 961, '36.73330', '-80.41670'), ('Penns Store', 2255, '36.60000', '-80.06670'), ('Stuart', 961, '36.63330', '-80.28330'), ('Woolwine', 432, '36.78330', '-80.28330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC143': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aiken Summit', 15238, '36.60000', '-79.70000'), ('Ajax', 1257, '36.96670', '-79.56670'), ('Blairs', 48411, '36.68330', '-79.38330'), ('Callands', 1338, '36.81670', '-79.58330'), ('Cascade', 15238, '36.56670', '-79.66670'), ('Chalk Level', 1257, '36.91670', '-79.28330'), ('Chatham', 1338, '36.81670', '-79.40000'), ('Climax', 1338, '36.88330', '-79.48330'), ('Dry Fork', 1338, '36.75000', '-79.41670'), ('Gretna', 1257, '36.95000', '-79.36670'), ('Hurt', 1276, '37.08330', '-79.28330'), ('Java', 1338, '36.83330', '-79.23330'), ('Keeling', 1338, '36.71670', '-79.30000'), ('Mt Airy', 1257, '36.93330', '-79.20000'), ('Pittsville', 1257, '36.98330', '-79.46670'), ('Ringgold', 48411, '36.60000', '-79.30000'), ('Sago', 1338, '36.88330', '-79.63330'), ('Sandy River', 1742, '36.71670', '-79.65000'), ('Straightstone', 1276, '37.01670', '-79.13330'), ('Swansonville', 1338, '36.73330', '-79.58330')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAC145': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ballsville', 49, '37.49830', '-78.06780'), ('Belona', 49, '37.52210', '-78.01200'), ('Clayville', 16213, '37.45970', '-77.81720'), ('Fine Creek Mills', 43242, '37.59780', '-77.81930'), ('Flat Rock', 43242, '37.52200', '-77.82200'), ('Genito', 16213, '37.46190', '-77.85940'), ('Goodwins Store', 43242, '37.53750', '-77.88370'), ('Hatchers', 49, '37.58040', '-78.05120'), ('Holly Hills', 16213, '37.50420', '-77.75840'), ('Jefferson', 49, '37.61320', '-77.90500'), ('Lake Powhatan', 49, '37.57620', '-77.99310'), ('Macon', 49, '37.52170', '-77.96220'), ('Michaux', 49, '37.64860', '-77.90190'), ('Pilkinton', 16213, '37.43000', '-77.84170'), ('Powhatan', 49, '37.54450', '-77.92020'), ('Provost', 49, '37.60550', '-77.98280'), ('Subletts', 43242, '37.58560', '-77.74940'), ('Tobaccoville', 49, '37.48250', '-78.09610'), ('Trenholm', 49, '37.59500', '-78.06200'), ('Worshams', 43242, '37.53530', '-77.89420')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC147': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Allens Mill', 201, '37.26420', '-78.57040'), ('Briery', 817, '37.09140', '-78.45810'), ('Briery Creek Lake', 1264, '37.19900', '-78.44550'), ('Burkes Tavern', 489, '37.19500', '-78.25000'), ('Darlington Heights', 201, '37.20000', '-78.60440'), ('Elam', 201, '37.28450', '-78.61750'), ('Farmville', 6845, '37.29750', '-78.39600'), ('Five Forks', 201, '37.23760', '-78.57680'), ('Green Bay', 489, '37.13190', '-78.30530'), ('Hampden Sydney', 1264, '37.24080', '-78.45790'), ('Kingsville', 1264, '37.24580', '-78.44420'), ('Moran', 489, '37.23140', '-78.26000'), ('Prince Edward Lake', 489, '37.17230', '-78.27400'), ('Prince Edward Station', 489, '37.17460', '-78.29500'), ('Prospect', 1264, '37.30450', '-78.55950'), ('Rice', 6845, '37.27170', '-78.29060'), ('Tuggle', 1264, '37.30580', '-78.48890'), ('Twin Lakes State Park', 489, '37.17190', '-78.27350'), ('Virso', 817, '37.09360', '-78.40610'), ('Warsham', 1264, '37.23000', '-78.44330')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC149': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Birchett Estate', 22354, '37.26030', '-77.27720'), ('Brandon', 343, '37.25580', '-76.99890'), ('Burrowsville', 343, '37.21670', '-77.08310'), ('Disputanta', 7269, '37.12430', '-77.22610'), ('Fort Lee', 7269, '37.23340', '-77.33030'), ('Garysville', 22354, '37.24950', '-77.15730'), ('Jordan Point Country Club', 22354, '37.28420', '-77.25480'), ('Jordans Point', 22354, '37.30560', '-77.22110'), ('New Bohemia', 7269, '37.18430', '-77.31940'), ('Prince George', 7269, '37.22310', '-77.28780'), ('Prince George Golf', 7269, '37.14620', '-77.26640'), ('Richard Bland College', 33740, '37.17320', '-77.37160'), ('Taylors Corner', 343, '37.22920', '-77.04060'), ('Templeton', 33740, '37.07540', '-77.33010')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC153': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aden', 35135, '38.65500', '-77.53750'), ('Bull Run', 1236, '38.78360', '-77.52070'), ('Cherry Hill', 670, '38.56970', '-77.26720'), ('Dale City', 55971, '38.65050', '-77.34430'), ('Dumfries', 4937, '38.56770', '-77.32510'), ('Gainesville', 4382, '38.79560', '-77.61420'), ('Greenwich', 1332, '38.74920', '-77.64830'), ('Haymarket', 879, '38.81210', '-77.63750'), ('Independent Hill', 55971, '38.63580', '-77.43810'), ('Lake Ridge', 30404, '38.68760', '-77.29800'), ('Montclair', 15728, '38.61090', '-77.33990'), ('Nokesville', 1236, '38.69860', '-77.58000'), ('Occoquan', 759, '38.68240', '-77.26050'), ('Triangle', 5500, '38.54570', '-77.31460'), ('Woodbridge', 26401, '38.63560', '-77.26210'), ('Woolsey', 879, '38.86970', '-77.63580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC153': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aden', 35135, '38.65500', '-77.53750'), ('Bull Run', 1236, '38.78360', '-77.52070'), ('Cherry Hill', 670, '38.56970', '-77.26720'), ('Dale City', 55971, '38.65050', '-77.34430'), ('Dumfries', 4937, '38.56770', '-77.32510'), ('Gainesville', 4382, '38.79560', '-77.61420'), ('Greenwich', 1332, '38.74920', '-77.64830'), ('Haymarket', 879, '38.81210', '-77.63750'), ('Independent Hill', 55971, '38.63580', '-77.43810'), ('Lake Ridge', 30404, '38.68760', '-77.29800'), ('Montclair', 15728, '38.61090', '-77.33990'), ('Nokesville', 1236, '38.69860', '-77.58000'), ('Occoquan', 759, '38.68240', '-77.26050'), ('Triangle', 5500, '38.54570', '-77.31460'), ('Woodbridge', 26401, '38.63560', '-77.26210'), ('Woolsey', 879, '38.86970', '-77.63580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC155': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Allisonia', 9473, '36.93330', '-80.73330'), ('Draper', 9473, '37.00000', '-80.76670'), ('Dublin', 2288, '37.11670', '-80.70000'), ('Fairlawn', 2211, '37.15130', '-80.55950'), ('Graysontown', 15859, '37.05000', '-80.56670'), ('Mc Coy', 1134, '37.23330', '-80.61670'), ('Parrott', 2211, '37.21670', '-80.63330'), ('Pulaski', 9473, '37.05000', '-80.80000')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC157': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amissville', 0, '38.67140', '-77.99580'), ('Castleton', 183, '38.60580', '-78.10690'), ('Chester Gap', 13589, '38.85330', '-78.13530'), ('Five Forks', 183, '38.65000', '-78.16860'), ('Flint Hill', 183, '38.76280', '-78.10030'), ('Fourway', 0, '38.74970', '-78.26830'), ('Hackleys Crossroads', 183, '38.72750', '-78.03140'), ('Rock Mills', 183, '38.65500', '-78.12970'), ('Slate Mills', 0, '38.53140', '-78.18310'), ('Sperryville', 0, '38.67000', '-78.25000'), ('Viewtown', 0, '38.63920', '-78.03970'), ('Washington', 183, '38.71270', '-78.15980'), ('Woodville', 0, '38.60670', '-78.17560')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAC159': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downing', 1375, '37.84440', '-76.62330'), ('Emmerton', 1375, '37.89910', '-76.67990'), ('Ethel', 1375, '37.99650', '-76.78090'), ('Farnham', 1375, '37.88600', '-76.62570'), ('Foneswood', 315, '38.10480', '-76.90100'), ('Haynesville', 1375, '37.95030', '-76.66280'), ('Kennard', 1375, '37.91560', '-76.74810'), ('Lyells', 1375, '37.99690', '-76.72920'), ('Moon Corner', 1244, '37.86910', '-76.55020'), ('Mulch', 1375, '37.90380', '-76.57110'), ('Naylors Beach', 2068, '37.97750', '-76.86330'), ('Newland', 315, '38.05070', '-76.87370'), ('Piney Grove', 1375, '38.02700', '-76.78640'), ('Robley', 543, '37.84670', '-76.58150'), ('Sharps', 1375, '37.84000', '-76.70110'), ('Singerly', 315, '38.08030', '-76.89670'), ('Tidewater', 1375, '37.85490', '-76.69860'), ('Village', 1375, '37.94760', '-76.60560'), ('Warsaw', 1375, '37.96110', '-76.76130'), ('Wellford', 1375, '37.90000', '-76.75000')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC159': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downing', 1375, '37.84440', '-76.62330'), ('Emmerton', 1375, '37.89910', '-76.67990'), ('Ethel', 1375, '37.99650', '-76.78090'), ('Farnham', 1375, '37.88600', '-76.62570'), ('Foneswood', 315, '38.10480', '-76.90100'), ('Haynesville', 1375, '37.95030', '-76.66280'), ('Kennard', 1375, '37.91560', '-76.74810'), ('Lyells', 1375, '37.99690', '-76.72920'), ('Moon Corner', 1244, '37.86910', '-76.55020'), ('Mulch', 1375, '37.90380', '-76.57110'), ('Naylors Beach', 2068, '37.97750', '-76.86330'), ('Newland', 315, '38.05070', '-76.87370'), ('Piney Grove', 1375, '38.02700', '-76.78640'), ('Robley', 543, '37.84670', '-76.58150'), ('Sharps', 1375, '37.84000', '-76.70110'), ('Singerly', 315, '38.08030', '-76.89670'), ('Tidewater', 1375, '37.85490', '-76.69860'), ('Village', 1375, '37.94760', '-76.60560'), ('Warsaw', 1375, '37.96110', '-76.76130'), ('Wellford', 1375, '37.90000', '-76.75000')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC161': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bent Mountain', 1241, '37.15000', '-80.11670'), ('Bradshaw', 1241, '37.30000', '-80.23330'), ('Catawba', 24747, '37.38330', '-80.11670'), ('Cave Spring', 24941, '37.22380', '-80.00760'), ('Glenvar', 1241, '37.26670', '-80.15000'), ('Hollins', 14309, '37.34290', '-79.95350'), ('Poages Mill', 24941, '37.20000', '-80.05000'), ('Roanoke Airport', 14309, '37.33330', '-79.98330'), ('Vinton', 7782, '37.27310', '-79.88840')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC163': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bells Valley', 406, '38.03330', '-79.45000'), ('Brownsburg', 979, '37.93330', '-79.31670'), ('Collierstown', 6867, '37.76670', '-79.58330'), ('Cornwall', 6349, '37.80000', '-79.30000'), ('Fairfield', 6349, '37.88330', '-79.30000'), ('Glasgow', 1046, '37.63330', '-79.45000'), ('Goshen', 406, '37.98330', '-79.50000'), ('Natural Bridge', 1046, '37.63330', '-79.55000'), ('Rockbridge Baths', 6867, '37.90000', '-79.41670'), ('Vesuvius', 8367, '37.90000', '-79.20000')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC165': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bridgewater', 5203, '38.38490', '-78.96900'), ('Broadway', 2192, '38.60820', '-78.79590'), ('Cherry Grove', 2192, '38.58670', '-78.87170'), ('Clover Hill', 5203, '38.45190', '-79.03030'), ('Criders', 0, '38.75140', '-79.00440'), ('Dale Enterprise', 921, '38.45440', '-78.93970'), ('Elkton', 2042, '38.41310', '-78.61710'), ('Grottoes', 2114, '38.26810', '-78.82460'), ('Linville', 40468, '38.52030', '-78.83780'), ('Massanutten', 1945, '38.40960', '-78.73800'), ('Montevideo', 1945, '38.36440', '-78.76970'), ('Mount Crawford', 254, '38.35690', '-78.94100'), ('Rawley Springs', 921, '38.50530', '-79.05670'), ('Rocky Bar', 1945, '38.34360', '-78.70190'), ('Sparkling Springs', 921, '38.55140', '-78.95190'), ('Swift Run', 2042, '38.36830', '-78.58110'), ('Timberville', 1739, '38.63600', '-78.77240'), ('Tunis', 1739, '38.70280', '-78.86750'), ('Yankeetown', 1209, '38.68470', '-78.94810')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAC167': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Castlewood', 2036, '36.87830', '-82.28720'), ('Cleveland', 148, '36.94360', '-82.15250'), ('Collingwood', 448, '36.73580', '-82.32670'), ('Dye', 2593, '37.06670', '-81.92670'), ('Hansonville', 3273, '36.82110', '-82.14860'), ('Honaker', 945, '37.01620', '-81.97720'), ('Lebanon', 3273, '36.89940', '-82.07850'), ('Rosedale', 945, '36.95610', '-81.93310')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC169': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Clinchport', 77, '36.67930', '-82.74500'), ('Duffield', 62, '36.71990', '-82.79780'), ('Dungannon', 317, '36.82840', '-82.46760'), ('Fort Blackmore', 2159, '36.77000', '-82.58780'), ('Gate City', 2159, '36.63860', '-82.58120'), ('Hiltons', 10953, '36.65280', '-82.46780'), ('Nickelsville', 448, '36.75130', '-82.41630'), ('Weber City', 1377, '36.62240', '-82.56030')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC171': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alonzaville', 3952, '38.92860', '-78.54670'), ('Basye', 0, '38.80000', '-78.78000'), ('Clary', 4017, '39.02530', '-78.36500'), ('Dilbeck', 255, '38.89580', '-78.36940'), ('Edinburg', 813, '38.82340', '-78.56490'), ('Harmony', 813, '38.87330', '-78.59750'), ('Hawkinstown', 1664, '38.77250', '-78.61330'), ('Jerome', 0, '38.86250', '-78.72890'), ('Kings Crossing', 813, '38.76920', '-78.49890'), ('Mount Clifton', 1664, '38.76140', '-78.71170'), ('Mount Jackson', 1664, '38.74980', '-78.63790'), ('New Market', 1435, '38.64760', '-78.67490'), ('Seven Fountains', 255, '38.86110', '-78.39970'), ('Strasburg', 4017, '38.98850', '-78.35770'), ('Toms Brook', 255, '38.94710', '-78.43990'), ('Woodstock', 3952, '38.87630', '-78.51900')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAC173': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adwolf', 1457, '36.78910', '-81.58850'), ('Allison Gap', 2204, '36.90000', '-81.76670'), ('Atkins', 1138, '36.86670', '-81.41670'), ('Broadford', 2204, '36.91670', '-81.66670'), ('Chilhowie', 1827, '36.80010', '-81.68400'), ('Marion', 6349, '36.83330', '-81.50000'), ('Marion Wytheville', 1138, '36.90000', '-81.35000'), ('Nebo', 1138, '36.93330', '-81.43330'), ('Quarry', 2204, '36.85000', '-81.75000'), ('Saltville', 2204, '36.87500', '-81.76280'), ('Sugar Grove', 741, '36.76670', '-81.40000'), ('Thomas Bridge', 1457, '36.76670', '-81.56670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC175': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adams Grove', 589, '36.69310', '-77.38600'), ('Berlin', 320, '36.85750', '-76.97750'), ('Boykins', 620, '36.57720', '-77.19890'), ('Branchville', 123, '36.56970', '-77.25010'), ('Burdette', 8346, '36.76780', '-76.89460'), ('Capron', 167, '36.70940', '-77.20130'), ('Courtland', 1270, '36.71160', '-77.06290'), ('Dory', 1038, '36.86100', '-77.04640'), ('Drewryville', 167, '36.71600', '-77.30660'), ('Handsom', 1270, '36.64210', '-77.03050'), ('Ivor', 320, '36.90490', '-76.89940'), ('Joyner', 167, '36.77900', '-77.25210'), ('Little Texas', 123, '36.60190', '-77.33970'), ('Manry', 1038, '36.89190', '-77.03520'), ('Newsoms', 282, '36.62760', '-77.12490'), ('Riverdale', 71, '36.56110', '-76.96000'), ('Sebrell', 1270, '36.78460', '-77.12660'), ('Sedley', 1270, '36.77400', '-76.98420'), ('Shiloh', 620, '36.60940', '-77.20000'), ('Story', 1270, '36.70490', '-77.01130'), ('Sunbeam', 71, '36.58770', '-77.02800'), ('Vicksville', 1270, '36.81310', '-77.02230'), ('Worrell', 167, '36.72510', '-77.21650')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC177': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alsop', 3833, '38.20690', '-77.64970'), ('Belmont', 424, '38.15360', '-77.86640'), ('Brokenburg', 3833, '38.14560', '-77.71920'), ('Chancellorsville', 0, '38.30000', '-77.63000'), ('Cookstown', 0, '38.29500', '-77.70190'), ('Dunavant', 0, '38.36220', '-77.66500'), ('Gatewood', 3833, '38.08190', '-77.66920'), ('Glenora', 424, '38.08860', '-77.79440'), ('Logan', 0, '38.21750', '-77.76140'), ('Massaponax', 3833, '38.19330', '-77.50920'), ('Parker', 0, '38.27500', '-77.75750'), ('Partlow', 3833, '38.03860', '-77.63920'), ('Post Oak', 3833, '38.16610', '-77.66360'), ('Spotsylvania Court', 3833, '38.19770', '-77.58820'), ('Thornburg', 3833, '38.13330', '-77.52190')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC179': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arkendale', 7856, '38.43830', '-77.34280'), ('Brookfield', 3624, '38.31110', '-77.43310'), ('Falmouth', 3624, '38.33530', '-77.46550'), ('Garrisonville', 7856, '38.48250', '-77.42690'), ('Glendie', 3624, '38.39970', '-77.53530'), ('Heflin', 3624, '38.48830', '-77.57830'), ('Holly Corner', 0, '38.36330', '-77.56640'), ('Leeland', 3624, '38.34970', '-77.43390'), ('Ramoth', 0, '38.42190', '-77.46970'), ('Roseville', 0, '38.46500', '-77.50420'), ('Shiloh', 7856, '38.50360', '-77.50670'), ('Spring Valley', 3624, '38.33110', '-77.46080'), ('Stafford', 0, '38.42000', '-77.40000'), ('Stones Corner', 3624, '38.32810', '-77.39080'), ('Storck', 0, '38.41920', '-77.61390'), ('White Oak', 3624, '38.30060', '-77.37560'), ('Widewater', 7856, '38.46470', '-77.32560')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC179': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arkendale', 7856, '38.43830', '-77.34280'), ('Brookfield', 3624, '38.31110', '-77.43310'), ('Falmouth', 3624, '38.33530', '-77.46550'), ('Garrisonville', 7856, '38.48250', '-77.42690'), ('Glendie', 3624, '38.39970', '-77.53530'), ('Heflin', 3624, '38.48830', '-77.57830'), ('Holly Corner', 0, '38.36330', '-77.56640'), ('Leeland', 3624, '38.34970', '-77.43390'), ('Ramoth', 0, '38.42190', '-77.46970'), ('Roseville', 0, '38.46500', '-77.50420'), ('Shiloh', 7856, '38.50360', '-77.50670'), ('Spring Valley', 3624, '38.33110', '-77.46080'), ('Stafford', 0, '38.42000', '-77.40000'), ('Stones Corner', 3624, '38.32810', '-77.39080'), ('Storck', 0, '38.41920', '-77.61390'), ('White Oak', 3624, '38.30060', '-77.37560'), ('Widewater', 7856, '38.46470', '-77.32560')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC181': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alliance', 262, '37.13810', '-76.78390'), ('Bacons Castle', 1083, '37.10530', '-76.73010'), ('Barham', 2309, '37.14110', '-77.11310'), ('Beachland', 262, '37.08530', '-76.81610'), ('Booth Fork', 1038, '36.97920', '-76.94720'), ('Cabin Point', 343, '37.18480', '-77.03150'), ('Carsley', 297, '37.09560', '-77.00610'), ('Chippokes State Park', 1083, '37.13790', '-76.72670'), ('Claremont', 343, '37.22710', '-76.96580'), ('Delk Crossroads', 262, '37.04420', '-76.79220'), ('Dendron', 297, '37.03460', '-76.92420'), ('Elberon', 297, '37.07420', '-76.88430'), ('Ellis Fork', 297, '37.00310', '-76.90080'), ('Gwaltney Corner', 2309, '37.11130', '-77.02400'), ('Hog Island Game Reserve', 1083, '37.17390', '-76.68130'), ('Oak Hill Corner', 343, '37.15920', '-77.06970'), ('Poolesville', 1083, '37.09250', '-76.72440'), ('Runnymede', 297, '37.03440', '-76.85170'), ('Savedge', 343, '37.13360', '-77.01940'), ('Scotland', 262, '37.18230', '-76.78700'), ('Spring Grove', 343, '37.16560', '-76.97340'), ('Surry', 262, '37.13740', '-76.83500')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC181': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alliance', 262, '37.13810', '-76.78390'), ('Bacons Castle', 1083, '37.10530', '-76.73010'), ('Barham', 2309, '37.14110', '-77.11310'), ('Beachland', 262, '37.08530', '-76.81610'), ('Booth Fork', 1038, '36.97920', '-76.94720'), ('Cabin Point', 343, '37.18480', '-77.03150'), ('Carsley', 297, '37.09560', '-77.00610'), ('Chippokes State Park', 1083, '37.13790', '-76.72670'), ('Claremont', 343, '37.22710', '-76.96580'), ('Delk Crossroads', 262, '37.04420', '-76.79220'), ('Dendron', 297, '37.03460', '-76.92420'), ('Elberon', 297, '37.07420', '-76.88430'), ('Ellis Fork', 297, '37.00310', '-76.90080'), ('Gwaltney Corner', 2309, '37.11130', '-77.02400'), ('Hog Island Game Reserve', 1083, '37.17390', '-76.68130'), ('Oak Hill Corner', 343, '37.15920', '-77.06970'), ('Poolesville', 1083, '37.09250', '-76.72440'), ('Runnymede', 297, '37.03440', '-76.85170'), ('Savedge', 343, '37.13360', '-77.01940'), ('Scotland', 262, '37.18230', '-76.78700'), ('Spring Grove', 343, '37.16560', '-76.97340'), ('Surry', 262, '37.13740', '-76.83500')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC183': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Booker', 202, '36.93940', '-77.28500'), ('Gray', 589, '36.79670', '-77.34390'), ('Grizzard', 589, '36.72640', '-77.43780'), ('Hilda', 589, '36.82030', '-77.32940'), ('Homeville', 2309, '36.94920', '-77.17190'), ('Huske', 202, '36.89750', '-77.41890'), ('Littleton', 2309, '36.90270', '-77.14920'), ('Lumberton', 167, '36.88140', '-77.21080'), ('Mason', 589, '36.75940', '-77.38560'), ('Newville', 2309, '37.01280', '-77.17670'), ('Owens', 589, '36.85360', '-77.42470'), ('Stony Creek', 202, '36.94740', '-77.40020'), ('Sussex', 202, '36.91530', '-77.27940'), ('Wakefield', 1038, '36.96860', '-76.98820'), ('Waverly', 2309, '37.03380', '-77.09570'), ('Yale', 202, '36.84540', '-77.28760')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC185': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amonate', 1081, '37.18330', '-81.65000'), ('Asberrys', 4206, '37.01670', '-81.55000'), ('Bandy', 1085, '37.15000', '-81.71670'), ('Bluefield', 5078, '37.23690', '-81.26610'), ('Boissevain', 441, '37.28330', '-81.38330'), ('Burkes Garden', 5078, '37.10000', '-81.35000'), ('Cedar Bluff', 1085, '37.08680', '-81.76390'), ('Claypool Hill', 1719, '37.06510', '-81.75600'), ('Cliffield', 1719, '37.10000', '-81.66670'), ('Glen Burke', 2593, '37.15000', '-81.85000'), ('Gratton', 4206, '37.13330', '-81.41670'), ('Jewell Ridge', 4144, '37.18330', '-81.80000'), ('Pocahontas', 441, '37.30580', '-81.34320'), ('Raven', 2593, '37.09420', '-81.86200'), ('Richlands', 4144, '37.09520', '-81.80230'), ('Tazewell', 4206, '37.11670', '-81.51670'), ('Tiptop', 4206, '37.20000', '-81.43330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC187': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arco', 13589, '38.86000', '-78.17500'), ('Bentonville', 13589, '38.83170', '-78.31670'), ('Blue Mountain', 0, '38.96250', '-78.03940'), ('Browntown', 183, '38.81080', '-78.23390'), ('Buckton', 13589, '38.95530', '-78.25420'), ('Cedarville', 13589, '38.97690', '-78.18440'), ('Front Royal', 13589, '38.92480', '-78.18470'), ('Glen Echo', 13589, '38.85000', '-78.22470'), ('Howellsville', 13589, '38.97470', '-78.07940'), ('Karo', 13589, '38.87190', '-78.25220'), ('Linden', 13589, '38.90890', '-78.07580'), ('Nineveh', 13589, '39.01580', '-78.16530'), ('Reliance', 1015, '39.00640', '-78.25060'), ('Riverside', 13589, '38.90140', '-78.21390')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAC191': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Abingdon', 7780, '36.70890', '-81.96930'), ('Benhams', 17367, '36.67690', '-82.21940'), ('Damascus', 981, '36.63280', '-81.78930'), ('Emory-Meadow View', 2266, '36.77320', '-81.84640'), ('Glade Spring', 1374, '36.79040', '-81.77210'), ('Hilander Park', 3273, '36.65511', '-82.08200'), ('Holston', 3273, '36.77733', '-82.08300'), ('Konnarock', 1457, '36.66420', '-81.63940'), ('Lindell', 2266, '36.80280', '-81.90170')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC191': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Abingdon', 7780, '36.70890', '-81.96930'), ('Benhams', 17367, '36.67690', '-82.21940'), ('Damascus', 981, '36.63280', '-81.78930'), ('Emory-Meadow View', 2266, '36.77320', '-81.84640'), ('Glade Spring', 1374, '36.79040', '-81.77210'), ('Hilander Park', 3273, '36.65511', '-82.08200'), ('Holston', 3273, '36.77733', '-82.08300'), ('Konnarock', 1457, '36.66420', '-81.63940'), ('Lindell', 2266, '36.80280', '-81.90170')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC193': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Coles Point', 1475, '38.14850', '-76.63750'), ('Colonial Beach', 3228, '38.25480', '-76.97070'), ('Currioman Landing', 315, '38.15400', '-76.76500'), ('Erica', 315, '38.11830', '-76.67920'), ('Hague', 1375, '38.07230', '-76.65180'), ('Kinsale', 1375, '38.02990', '-76.57890'), ('Kremlin', 1375, '38.02940', '-76.69170'), ('Leedstown', 3228, '38.11160', '-76.99890'), ('Lerty', 315, '38.14200', '-76.86710'), ('Montross', 315, '38.09310', '-76.82280'), ('Mount Holly', 315, '38.09110', '-76.71850'), ('Oak Grove', 3228, '38.18170', '-76.99740'), ('Oldhams', 1375, '38.00250', '-76.66920'), ('Peeds', 315, '38.10060', '-76.92280'), ('Potomac Beach', 3228, '38.27280', '-77.00010'), ('Potomac Mills', 3228, '38.16330', '-76.94130'), ('Sandy Point', 9943, '38.06060', '-76.53360'), ('Stratford Hall', 315, '38.14380', '-76.83560'), ('Templeman', 315, '38.07060', '-76.77530'), ('Threeway', 1375, '37.99280', '-76.69900'), ('Westmoreland', 9943, '38.06410', '-76.55910'), ('Westmoreland State', 315, '38.16210', '-76.86530')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC193': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Coles Point', 1475, '38.14850', '-76.63750'), ('Colonial Beach', 3228, '38.25480', '-76.97070'), ('Currioman Landing', 315, '38.15400', '-76.76500'), ('Erica', 315, '38.11830', '-76.67920'), ('Hague', 1375, '38.07230', '-76.65180'), ('Kinsale', 1375, '38.02990', '-76.57890'), ('Kremlin', 1375, '38.02940', '-76.69170'), ('Leedstown', 3228, '38.11160', '-76.99890'), ('Lerty', 315, '38.14200', '-76.86710'), ('Montross', 315, '38.09310', '-76.82280'), ('Mount Holly', 315, '38.09110', '-76.71850'), ('Oak Grove', 3228, '38.18170', '-76.99740'), ('Oldhams', 1375, '38.00250', '-76.66920'), ('Peeds', 315, '38.10060', '-76.92280'), ('Potomac Beach', 3228, '38.27280', '-77.00010'), ('Potomac Mills', 3228, '38.16330', '-76.94130'), ('Sandy Point', 9943, '38.06060', '-76.53360'), ('Stratford Hall', 315, '38.14380', '-76.83560'), ('Templeman', 315, '38.07060', '-76.77530'), ('Threeway', 1375, '37.99280', '-76.69900'), ('Westmoreland', 9943, '38.06410', '-76.55910'), ('Westmoreland State', 315, '38.16210', '-76.86530')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAC195': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Appalachia', 1839, '36.90880', '-82.78700'), ('Big Stone Gap', 4856, '36.86000', '-82.77790'), ('Coeburn', 1996, '36.94570', '-82.46930'), ('Pardee', 1839, '37.00530', '-82.75250'), ('Pound', 1089, '37.12470', '-82.60750'), ('St. Paul', 1000, '36.90550', '-82.31030'), ('Wise', 3255, '36.97730', '-82.58040')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC197': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Coleman Store', 7804, '36.88330', '-80.98330'), ('Cripple Creek', 7804, '36.81670', '-81.10000'), ('Crockett', 1350, '36.88330', '-81.18330'), ('Favonia', 7804, '36.96670', '-81.18330'), ('Grahams Forge', 9473, '36.93330', '-80.86670'), ('Gunton Park', 9473, '37.00000', '-80.88330'), ('Ivanhoe', 614, '36.83330', '-80.95000'), ('Max Meadows', 512, '36.96670', '-80.93330'), ('Patterson', 2607, '36.88330', '-80.78330'), ('Rural Retreat', 1350, '36.90000', '-81.26670'), ('Speedwell', 1350, '36.81670', '-81.16670'), ('Wytheville', 7804, '36.95000', '-81.08330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC199': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barlows Corner', 11998, '37.35900', '-76.71670'), ('Camp Peary', 11998, '37.32150', '-76.66370'), ('Carver Gardens', 11998, '37.25080', '-76.65890'), ('Dare', 9429, '37.16900', '-76.43830'), ('Grafton', 180150, '37.16570', '-76.46680'), ('Harris Grove', 9429, '37.19417', '-76.48222'), ('Hornsbyville', 9429, '37.19640', '-76.46860'), ('Lackey', 9429, '37.23210', '-76.54790'), ('Oaktree', 11998, '37.33330', '-76.70500'), ('Queens Lake', 11998, '37.29028', '-76.65806'), ('Seaford', 9429, '37.19790', '-76.43240'), ('Skimino', 11998, '37.34690', '-76.70500'), ('Tabb', 180150, '37.13010', '-76.45730'), ('U.s. Naval Weapons', 9429, '37.26770', '-76.57510'), ('Water Country U.S.A.', 11998, '37.26200', '-76.63850'), ('York Terrace', 11998, '37.26280', '-76.66170'), ('Yorktown', 203, '37.23450', '-76.50720')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC199': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barlows Corner', 11998, '37.35900', '-76.71670'), ('Camp Peary', 11998, '37.32150', '-76.66370'), ('Carver Gardens', 11998, '37.25080', '-76.65890'), ('Dare', 9429, '37.16900', '-76.43830'), ('Grafton', 180150, '37.16570', '-76.46680'), ('Harris Grove', 9429, '37.19417', '-76.48222'), ('Hornsbyville', 9429, '37.19640', '-76.46860'), ('Lackey', 9429, '37.23210', '-76.54790'), ('Oaktree', 11998, '37.33330', '-76.70500'), ('Queens Lake', 11998, '37.29028', '-76.65806'), ('Seaford', 9429, '37.19790', '-76.43240'), ('Skimino', 11998, '37.34690', '-76.70500'), ('Tabb', 180150, '37.13010', '-76.45730'), ('U.s. Naval Weapons', 9429, '37.26770', '-76.57510'), ('Water Country U.S.A.', 11998, '37.26200', '-76.63850'), ('York Terrace', 11998, '37.26280', '-76.66170'), ('Yorktown', 203, '37.23450', '-76.50720')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC510': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alexandria', 128283, '38.82100', '-77.08620'), ('The Woodrow Wilson', 6427, '38.78890', '-77.04690')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC520': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bristol VA', 17367, '36.61320', '-82.16810')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC530': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Buena Vista City', 6349, '37.73330', '-79.36670')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC540': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Charlottesville', 45049, '38.03740', '-78.48570')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC550': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowers Hill', 199184, '36.78410', '-76.42340'), ('Chesapeake Airport', 199184, '36.66310', '-76.32230'), ('Deep Creek', 199184, '36.74070', '-76.34440'), ('Fentress', 199184, '36.69800', '-76.18420'), ('Great Bridge', 199184, '36.71280', '-76.23820'), ('Greenbrier', 199184, '36.78150', '-76.20990'), ('Herberts Corner', 199184, '36.72750', '-76.30250'), ('Hickory', 199184, '36.66400', '-76.22590'), ('Mount Pleasant', 425257, '36.71150', '-76.13420'), ('Northwest', 199184, '36.56370', '-76.19940'), ('Portlock', 199184, '36.78500', '-76.27780'), ('South Norfolk', 199184, '36.80000', '-76.28330'), ('Western Branch', 199184, '36.82520', '-76.40650')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC570': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Colonial Heights', 16897, '37.26400', '-77.39880')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC580': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Covington City', 6303, '37.78330', '-79.98330')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC590': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Danville Airport', 48411, '36.58330', '-79.33330'), ('Danville City', 48411, '36.58330', '-79.41670'), ('Westover Hills', 48411, '36.60000', '-79.45000')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAC595': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Emporia', 5665, '36.69480', '-77.53670')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC600': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Fairfax', 21498, '38.85370', '-77.29820')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC610': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Falls Church', 10377, '38.88500', '-77.17460')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC620': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Franklin', 8346, '36.68080', '-76.93600'), ('Hunterdale', 8346, '36.70140', '-76.96140')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC630': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Fredericksburg', 19279, '38.29930', '-77.48710')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAC640': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Galax City', 6837, '36.66670', '-80.91670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC650': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Buckroe Beach', 146437, '37.04280', '-76.29360'), ('Fort Monroe', 146437, '37.00580', '-76.30720'), ('Fox Hill', 146437, '37.08080', '-76.29000'), ('Grand View', 146437, '37.07840', '-76.27730'), ('Hallwood', 146437, '37.06600', '-76.29640'), ('Hampton', 146437, '37.04980', '-76.29500'), ('Langley AFB', 146437, '37.08770', '-76.36700'), ('Langley View', 146437, '37.07000', '-76.36460'), ('Northampton', 146437, '37.04500', '-76.42420'), ('Phoebus', 146437, '37.02140', '-76.31830'), ('Raleigh Terrace', 146437, '37.00420', '-76.36810')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC650': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Buckroe Beach', 146437, '37.04280', '-76.29360'), ('Fort Monroe', 146437, '37.00580', '-76.30720'), ('Fox Hill', 146437, '37.08080', '-76.29000'), ('Grand View', 146437, '37.07840', '-76.27730'), ('Hallwood', 146437, '37.06600', '-76.29640'), ('Hampton', 146437, '37.04980', '-76.29500'), ('Langley AFB', 146437, '37.08770', '-76.36700'), ('Langley View', 146437, '37.07000', '-76.36460'), ('Northampton', 146437, '37.04500', '-76.42420'), ('Phoebus', 146437, '37.02140', '-76.31830'), ('Raleigh Terrace', 146437, '37.00420', '-76.36810')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC660': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Harrisonburg', 40468, '38.43670', '-78.87400')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAC670': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Hopewell', 22354, '37.29060', '-77.29840')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC678': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC680': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Lynchburg City', 65269, '37.41670', '-79.15000')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAC683': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Manassas', 35135, '38.74740', '-77.48540')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC685': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Manassas Park', 10290, '38.77330', '-77.45210')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAC690': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Martinsville City', 15416, '36.68330', '-79.86670')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAC700': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Beaconsdale', 180150, '37.06420', '-76.47310'), ('Denbigh', 180150, '37.12440', '-76.53200'), ('Fort Eustis', 180150, '37.12630', '-76.59570'), ('Hilton Village', 180150, '37.03010', '-76.46190'), ('Lee Hall', 180150, '37.19310', '-76.57300'), ('Menchville', 180150, '37.09240', '-76.52760'), ('Newport News', 180150, '37.07590', '-76.51420'), ('Newport News Golf Course', 180150, '37.17660', '-76.54920'), ('Oriana', 180150, '37.13360', '-76.52530'), ('Oyster Point', 180150, '37.10530', '-76.50780'), ('Patrick Henry Field', 180150, '37.12950', '-76.49640')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC710': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downtown Norfolk', 234403, '36.85500', '-76.28350'), ('Ghent', 234403, '36.86770', '-76.29810'), ('Norfolk International Arpt', 234403, '36.89670', '-76.19790'), ('Norfolk NAS', 234403, '36.93560', '-76.29970'), ('Norview', 234403, '36.88830', '-76.24580'), ('Ocean View', 234403, '36.95040', '-76.24800'), ('Wards Corner', 234403, '36.91870', '-76.27100'), ('Willoughby Spit', 234403, '36.96670', '-76.28600')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC710': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downtown Norfolk', 234403, '36.85500', '-76.28350'), ('Ghent', 234403, '36.86770', '-76.29810'), ('Norfolk International Arpt', 234403, '36.89670', '-76.19790'), ('Norfolk NAS', 234403, '36.93560', '-76.29970'), ('Norview', 234403, '36.88830', '-76.24580'), ('Ocean View', 234403, '36.95040', '-76.24800'), ('Wards Corner', 234403, '36.91870', '-76.27100'), ('Willoughby Spit', 234403, '36.96670', '-76.28600')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC710': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downtown Norfolk', 234403, '36.85500', '-76.28350'), ('Ghent', 234403, '36.86770', '-76.29810'), ('Norfolk International Arpt', 234403, '36.89670', '-76.19790'), ('Norfolk NAS', 234403, '36.93560', '-76.29970'), ('Norview', 234403, '36.88830', '-76.24580'), ('Ocean View', 234403, '36.95040', '-76.24800'), ('Wards Corner', 234403, '36.91870', '-76.27100'), ('Willoughby Spit', 234403, '36.96670', '-76.28600')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC720': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Norton', 3904, '36.93130', '-82.62610')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAC730': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Petersburg', 33740, '37.20430', '-77.39260'), ('Petersburg National Battlefield', 33740, '37.22920', '-77.36130')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAC735': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Messick', 11566, '37.12070', '-76.34550'), ('Plum Tree Island Refuge', 11566, '37.13280', '-76.32910'), ('Poquoson', 11566, '37.13170', '-76.38340')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC735': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Messick', 11566, '37.12070', '-76.34550'), ('Plum Tree Island Refuge', 11566, '37.13280', '-76.32910'), ('Poquoson', 11566, '37.13170', '-76.38340')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC740': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Churchland', 100565, '36.86170', '-76.39600'), ('Cradock', 100565, '36.79560', '-76.32140'), ('Downtown Portsmouth', 100565, '36.83820', '-76.30260')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC740': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Churchland', 100565, '36.86170', '-76.39600'), ('Cradock', 100565, '36.79560', '-76.32140'), ('Downtown Portsmouth', 100565, '36.83820', '-76.30260')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC750': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Radford', 15859, '37.13330', '-80.56670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAC760': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downtown Richmond', 197790, '37.53110', '-77.47460'), ('Richmond', 0, '37.47876', '-77.46832')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAC770': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Roanoke', 94911, '37.27840', '-79.95840')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC775': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Salem City', 24747, '37.28670', '-80.05640')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAC790': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Staunton', 23853, '38.15880', '-79.06230')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAC800': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Chuckatuck', 63677, '36.86140', '-76.58010'), ('Cleopus', 63677, '36.59280', '-76.83030'), ('Crittenden', 63677, '36.91010', '-76.49590'), ('Deanes', 63677, '36.83940', '-76.46280'), ('Downtown Suffolk', 63677, '36.72440', '-76.58660'), ('Driver', 63677, '36.82310', '-76.50280'), ('Elwood', 63677, '36.67610', '-76.82420'), ('Hobson', 63677, '36.89470', '-76.51220'), ('Holland', 63677, '36.68110', '-76.78060'), ('Huntersville', 63677, '36.87420', '-76.43170'), ('Kilby', 63677, '36.72480', '-76.63330'), ('Kings Fork', 63677, '36.78180', '-76.62700'), ('Lummis', 63677, '36.69500', '-76.70140'), ('Magnolia', 63677, '36.74580', '-76.54080'), ('Nurney', 63677, '36.64220', '-76.61420'), ('Saunders', 63677, '36.64000', '-76.57580'), ('Somerton', 308, '36.56810', '-76.75170'), ('Suffolk Airport', 63677, '36.68330', '-76.60190'), ('Whaleyville', 63677, '36.58820', '-76.68480'), ('Wilroy', 63677, '36.78640', '-76.53390')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC800': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Chuckatuck', 63677, '36.86140', '-76.58010'), ('Cleopus', 63677, '36.59280', '-76.83030'), ('Crittenden', 63677, '36.91010', '-76.49590'), ('Deanes', 63677, '36.83940', '-76.46280'), ('Downtown Suffolk', 63677, '36.72440', '-76.58660'), ('Driver', 63677, '36.82310', '-76.50280'), ('Elwood', 63677, '36.67610', '-76.82420'), ('Hobson', 63677, '36.89470', '-76.51220'), ('Holland', 63677, '36.68110', '-76.78060'), ('Huntersville', 63677, '36.87420', '-76.43170'), ('Kilby', 63677, '36.72480', '-76.63330'), ('Kings Fork', 63677, '36.78180', '-76.62700'), ('Lummis', 63677, '36.69500', '-76.70140'), ('Magnolia', 63677, '36.74580', '-76.54080'), ('Nurney', 63677, '36.64220', '-76.61420'), ('Saunders', 63677, '36.64000', '-76.57580'), ('Somerton', 308, '36.56810', '-76.75170'), ('Suffolk Airport', 63677, '36.68330', '-76.60190'), ('Whaleyville', 63677, '36.58820', '-76.68480'), ('Wilroy', 63677, '36.78640', '-76.53390')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC810': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Back Bay', 425257, '36.65360', '-76.03170'), ('Bayside', 425257, '36.88880', '-76.13340'), ('Cape Henry', 425257, '36.92960', '-76.01310'), ('Dam Neck', 425257, '36.78280', '-75.96550'), ('Gallups Corner', 425257, '36.79970', '-76.12970'), ('Kempsville', 425257, '36.82730', '-76.16000'), ('London Bridge', 425257, '36.84170', '-76.05000'), ('Lynnhaven', 425257, '36.83600', '-76.05950'), ('Macons Corner', 425257, '36.80000', '-76.00440'), ('Munden', 425257, '36.57770', '-76.02720'), ('North Virginia Beach', 425257, '36.89070', '-75.98800'), ('Oceana', 425257, '36.84190', '-76.01330'), ('Oceana NAS', 425257, '36.81520', '-76.02780'), ('Princess Anne', 425257, '36.75180', '-76.05390'), ('Princess Anne Plaza', 425257, '36.83680', '-76.09150'), ('Pungo', 425257, '36.72400', '-76.01780'), ('Rudee Heights', 425257, '36.82690', '-75.97690'), ('Sandbridge Beach', 425257, '36.72280', '-75.93540'), ('Sigma', 425257, '36.73170', '-75.98640'), ('Virginia Beach', 425257, '36.84950', '-75.97730')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC820': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Waynesboro', 19520, '38.06950', '-78.90260')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAC830': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Williamsburg', 11998, '37.27000', '-76.70690')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAC840': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Winchester', 23585, '39.17450', '-78.17500')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VIC010': {'fullStateName': 'Virgin Islands', 'state': 'VI', 'cities': [('Christiansted', 2637, '17.74630', '-64.70730'), ('Frederiksted', 732, '17.71370', '-64.88170'), ('Frederiksted South', 3035, '17.70740', '-64.88010'), ('Grove Place', 2797, '17.72630', '-64.82750')], 'partOfState': '', 'wfo': 'SJU'}, +'VIC020': {'fullStateName': 'Virgin Islands', 'state': 'VI', 'cities': [('Cruz Bay', 2743, '18.32250', '-64.78240')], 'partOfState': '', 'wfo': 'SJU'}, +'VIC030': {'fullStateName': 'Virgin Islands', 'state': 'VI', 'cities': [("Anna's Retreat", 8197, '18.34210', '-64.88790'), ('Charlotte Amalie', 11004, '18.34400', '-64.93350'), ('Charlotte Amalie E', 2722, '18.33700', '-64.91270'), ('Charlotte Amalie W', 5146, '18.33920', '-64.96050')], 'partOfState': '', 'wfo': 'SJU'}, +'VTC001': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Addison', 2741, '44.08000', '-73.30000'), ('Basin Harbor', 0, '44.19490', '-73.36380'), ('Branbury State Park', 0, '43.90580', '-73.07190'), ('Bread Loaf', 0, '43.95330', '-72.99310'), ('Bridport', 1263, '43.98000', '-73.32000'), ('Bristol', 1786, '44.13650', '-73.08090'), ('Brooksville', 0, '44.06560', '-73.17330'), ('Button Bay State Park', 0, '44.18060', '-73.35940'), ('Chimney Point', 0, '44.03610', '-73.41860'), ('Chipmans Point', 0, '43.80000', '-73.37610'), ('Cornwall', 6252, '43.97000', '-73.22000'), ('D A R State Park', 0, '44.05490', '-73.41230'), ('East Middlebury', 0, '43.97330', '-73.10670'), ('Ferrisburg', 2741, '44.20000', '-73.25000'), ('Goshen', 0, '43.85000', '-73.02000'), ('Granville', 3208, '43.98000', '-72.85000'), ('Hancock', 3208, '43.93000', '-72.83000'), ('Hanksville', 1786, '44.25000', '-72.97000'), ('Kingsland Bay State Park', 0, '44.23280', '-73.30140'), ('Leicester', 1684, '43.87000', '-73.10000'), ('Middlebury', 6252, '44.00770', '-73.15720'), ('Monkton', 1786, '44.23000', '-73.15000'), ('New Haven', 1786, '44.12000', '-73.15000'), ('New Haven Mills', 0, '44.09170', '-73.10920'), ('Orwell', 2770, '43.80000', '-73.30000'), ('Panton', 0, '44.14860', '-73.34080'), ('Ripton', 6252, '43.98000', '-73.03000'), ('Salisbury', 1684, '43.90000', '-73.10000'), ('Shoreham', 2770, '43.90000', '-73.32000'), ('South Lincoln', 1786, '44.07000', '-72.98000'), ('Starksboro', 0, '44.23000', '-73.05000'), ('Vergennes', 2741, '44.16740', '-73.25570'), ('Waltham', 0, '44.12360', '-73.22860'), ('West Addison', 0, '44.08000', '-73.40000'), ('Weybridge', 0, '44.06640', '-73.21610'), ('Whiting', 0, '43.87000', '-73.20000')], 'partOfState': 'central', 'wfo': 'BTV'}, +'VTC003': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Arlington', 1199, '43.06730', '-73.15190'), ('Bennington', 9168, '42.87280', '-73.18510'), ('Dorset', 2065, '43.25500', '-73.09850'), ('Manchester', 602, '43.16200', '-73.07200'), ('Manchester Center', 2065, '43.17780', '-73.04350'), ('North Bennington', 1428, '42.92530', '-73.24430'), ('Old Bennington', 232, '42.88330', '-73.21380'), ('Peru', 2065, '43.23050', '-72.89870'), ('Pownal', 4791, '42.76450', '-73.23780'), ('Readsboro', 237, '42.77100', '-72.94790'), ('Stamford', 16797, '42.75470', '-73.06880'), ('Woodford State Park', 9168, '42.88980', '-73.03450')], 'partOfState': 'southern', 'wfo': 'ALY'}, +'VTC005': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Barnet', 6319, '44.30000', '-72.05000'), ('Burke Hollow', 0, '44.62250', '-71.95000'), ('Danville', 6319, '44.42000', '-72.13000'), ('East Barnet', 0, '44.32670', '-72.03810'), ('East Burke', 0, '44.58920', '-71.94080'), ('East Hardwick', 0, '44.52170', '-72.30920'), ('East Haven', 364, '44.67000', '-71.90000'), ('East Lyndon', 0, '44.51970', '-71.95830'), ('East Ryegate', 0, '44.20500', '-72.06170'), ('East St. Johnsbury', 0, '44.43860', '-71.94610'), ('Groton', 325, '44.22000', '-72.20000'), ('Hardwick', 239, '44.50000', '-72.37000'), ('Lower Waterford', 6319, '44.35000', '-71.92000'), ('Lyndonville', 1227, '44.53490', '-72.00300'), ('Newark', 0, '44.68000', '-71.95000'), ('North Danville', 0, '44.47000', '-72.10000'), ('Passumpsic', 6319, '44.38000', '-72.03000'), ('Peacham', 239, '44.33000', '-72.17000'), ('Ricker State Park', 0, '44.24710', '-72.24840'), ('Ryegate', 0, '44.22000', '-72.10000'), ('Sheffield', 1227, '44.60000', '-72.12000'), ('South Kirby', 0, '44.46000', '-71.91000'), ('South Ryegate', 0, '44.18830', '-72.14140'), ('South Wheelock', 0, '44.55000', '-72.12000'), ('Stannard', 239, '44.53000', '-72.22000'), ('Stillwater State Park', 0, '44.27970', '-72.27140'), ('St. Johnsbury', 6319, '44.43040', '-72.01320'), ('Sutton', 0, '44.63310', '-72.02610'), ('Walden', 239, '44.43000', '-72.23000'), ('West Burke', 364, '44.64380', '-71.98030'), ('West Danville', 0, '44.40940', '-72.19560')], 'partOfState': 'northeast', 'wfo': 'BTV'}, +'VTC007': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Bolton', 1706, '44.37000', '-72.88000'), ('Burlington', 38889, '44.48810', '-73.22620'), ('Camels Hump State Park', 0, '44.22670', '-72.93390'), ('Charlotte', 2741, '44.30000', '-73.25000'), ('Chimney Corner', 0, '44.58810', '-73.16670'), ('Colchester', 6561, '44.53000', '-73.15000'), ('Colchester Point', 0, '44.55280', '-73.31140'), ('East Charlotte', 0, '44.31970', '-73.18920'), ('Essex Center', 0, '44.51190', '-73.05930'), ('Essex Junction', 8591, '44.49030', '-73.11240'), ('Exit 15 I89', 0, '44.49230', '-73.17310'), ('Hinesburg', 15814, '44.33000', '-73.12000'), ('Huntington', 1457, '44.33000', '-72.98000'), ('Jericho', 1457, '44.50180', '-72.98700'), ('Jonesville', 0, '44.38390', '-72.93810'), ('Malletts Bay', 0, '44.54440', '-73.21580'), ('Milton', 1537, '44.63840', '-73.11250'), ('Mt. Philo State Park', 0, '44.27860', '-73.21530'), ('North Underhill', 0, '44.58530', '-72.93280'), ('Richmond', 1457, '44.40000', '-73.00000'), ('Sand Bar State Park', 0, '44.62670', '-73.24060'), ('Shelburne', 15814, '44.38000', '-73.23000'), ('Shelburne Point', 0, '44.44190', '-73.25110'), ('South Burlington', 15814, '44.44560', '-73.21610'), ('St. George', 0, '44.37750', '-73.12580'), ('Underhill Center', 0, '44.50750', '-72.90000'), ('Underhill State Park', 0, '44.53030', '-72.83330'), ('West Bolton', 0, '44.44560', '-72.89830'), ('Westford', 1537, '44.62000', '-73.02000'), ('West Milton', 0, '44.63010', '-73.17220'), ('Williston', 8591, '44.43000', '-73.07000'), ('Winooski', 6561, '44.49540', '-73.18510')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTC009': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Averill', 849, '45.00000', '-71.72000'), ('Brighton State Park', 0, '44.79860', '-71.85000'), ('Brunswick Springs', 0, '44.73640', '-71.63280'), ('Canaan', 1255, '45.00000', '-71.53000'), ('Concord', 6319, '44.43000', '-71.88000'), ('Concord Corner', 0, '44.40140', '-71.86190'), ('East Brighton', 0, '44.78580', '-71.80750'), ('East Concord', 0, '44.42470', '-71.75420'), ('Ferdinand', 0, '44.71690', '-71.77670'), ('Gallup Mills', 0, '44.57500', '-71.78470'), ('Gilman', 0, '44.41220', '-71.72280'), ('Granby', 1859, '44.57000', '-71.77000'), ('Island Pond', 849, '44.81290', '-71.88550'), ('Lunenburg', 1859, '44.47000', '-71.68000'), ('Maidstone', 1255, '44.67000', '-71.61000'), ('Maidstone State Park', 0, '44.65410', '-71.63910'), ('Norton', 849, '45.00000', '-71.80000'), ('Victory', 1227, '44.52000', '-71.85000')], 'partOfState': 'northeast', 'wfo': 'BTV'}, +'VTC011': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Bakersfield', 1473, '44.78000', '-72.80000'), ('Berkshire', 0, '44.97170', '-72.77580'), ('Burton Island State Park', 0, '44.77250', '-73.20530'), ('East Berkshire', 0, '44.93530', '-72.70970'), ('East Enosburg', 0, '44.86310', '-72.73670'), ('East Fairfield', 0, '44.78440', '-72.85890'), ('East Fletcher', 0, '44.71310', '-72.83830'), ('East Franklin', 0, '44.99610', '-72.83250'), ('East Georgia', 0, '44.68000', '-73.08360'), ('East Richford', 0, '45.01110', '-72.58640'), ('Enosburg Falls', 1473, '44.90830', '-72.80440'), ('Exit 22 I89', 0, '45.00820', '-73.08600'), ('Fairfax', 1537, '44.67000', '-73.02000'), ('Fairfield', 7650, '44.80000', '-72.95000'), ('Fletcher', 235, '44.68000', '-72.92000'), ('Franklin', 1473, '44.98000', '-72.92000'), ('Georgia Center', 0, '44.72750', '-73.11810'), ('Georgia Plains', 0, '44.72110', '-73.16440'), ('Highgate Falls', 2548, '44.93000', '-73.03000'), ('Highgate Springs', 2548, '44.97000', '-73.10000'), ('Kill Kare State Park', 0, '44.77920', '-73.18310'), ('Lake Carmi State Park', 0, '44.95410', '-72.87400'), ('Montgomery', 1474, '44.90000', '-72.63000'), ('Montgomery Center', 0, '44.87810', '-72.60280'), ('North Fairfax', 0, '44.76060', '-73.06250'), ('Richford', 1474, '44.99570', '-72.67340'), ('Sheldon', 1473, '44.88000', '-72.95000'), ('St. Albans', 7650, '44.81130', '-73.08490'), ('St. Albans Bay State Park', 0, '44.81080', '-73.14500'), ('Swanton', 2548, '44.92150', '-73.12100'), ('Swanton Junction', 0, '44.87780', '-73.09920'), ('West Enosburg', 0, '44.87190', '-72.79580'), ('West Swanton', 0, '44.96890', '-73.21280'), ('Woods Island State Park', 0, '44.80250', '-73.20970')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTC013': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Alburgh', 0, '44.97500', '-73.30060'), ('Alburgh Center', 0, '44.95360', '-73.27030'), ('Alburgh Dunes State Park', 0, '44.87280', '-73.28470'), ('Alburgh Springs', 0, '44.99190', '-73.22330'), ('East Alburgh', 0, '44.97310', '-73.23000'), ('Gordon Landing', 0, '44.68860', '-73.34720'), ('Grand Isle', 1698, '44.72000', '-73.30000'), ('Grand Isle State Park', 0, '44.68810', '-73.29750'), ('Isle La Motte', 488, '44.87000', '-73.33000'), ('Knight Island State Park', 0, '44.81310', '-73.24720'), ('Knight Point State Park', 0, '44.76970', '-73.29360'), ('North Hero', 488, '44.82200', '-73.28000'), ('North Hero State Park', 0, '44.91360', '-73.24360'), ('South Alburgh', 0, '44.88750', '-73.27890'), ('South Hero', 1698, '44.64000', '-73.31000')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTC015': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Belvidere Center', 0, '44.75000', '-72.69170'), ('Belvidere Junction', 0, '44.73690', '-72.74310'), ('Cadys Falls', 0, '44.57810', '-72.61220'), ('Cambridge', 235, '44.63540', '-72.88250'), ('Cambridge Junction', 0, '44.64920', '-72.81380'), ('Eden', 415, '44.70000', '-72.55000'), ('Elmore', 0, '44.45830', '-72.49170'), ('Elmore State Park', 0, '44.53560', '-72.54080'), ('Garfield', 0, '44.60250', '-72.53670'), ('Green River Reservoir', 0, '44.62020', '-72.52730'), ('Hyde Park', 415, '44.59430', '-72.61290'), ('Jeffersonville', 568, '44.64440', '-72.82810'), ('Johnson', 1420, '44.63720', '-72.67790'), ('Morrisville', 2009, '44.55860', '-72.59640'), ('Moscow', 0, '44.44140', '-72.71580'), ('North Wolcott', 0, '44.62000', '-72.45000'), ('Pleasant Valley', 0, '44.59250', '-72.86310'), ('Smugglers Notch', 0, '44.55000', '-72.80000'), ('Stowe', 473, '44.46590', '-72.68570'), ('Waterville', 0, '44.68000', '-72.76000'), ('Wolcott', 2009, '44.55000', '-72.47000')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTC017': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Ainsworth State Park', 0, '44.07470', '-72.56360'), ('Allis State Park', 0, '44.04810', '-72.63670'), ('Boltonville', 0, '44.17080', '-72.10030'), ('Bradford', 815, '43.99410', '-72.12820'), ('Bradford Center', 0, '44.01310', '-72.17110'), ('Brookfield', 3208, '44.05000', '-72.60000'), ('Chelsea', 2189, '43.98000', '-72.47000'), ('Corinth', 815, '44.02000', '-72.23000'), ('Corinth Corners', 0, '44.01000', '-72.34940'), ('East Braintree', 0, '43.99580', '-72.65190'), ('East Brookfield', 0, '44.02750', '-72.57190'), ('East Corinth', 0, '44.06390', '-72.22280'), ('East Orange', 0, '44.09470', '-72.34190'), ('East Randolph', 1242, '43.93000', '-72.55000'), ('Ely', 0, '43.87640', '-72.17690'), ('Fairlee', 0, '43.90750', '-72.14390'), ('Newbury', 396, '44.08040', '-72.06060'), ('Orange', 2189, '44.15000', '-72.40000'), ('Post Mills', 0, '43.88560', '-72.26110'), ('Randolph', 3208, '43.92000', '-72.67000'), ('South Newbury', 0, '44.05000', '-72.08000'), ('South Washington', 0, '44.02810', '-72.41330'), ('Strafford', 6538, '43.87000', '-72.38000'), ('Thetford Center', 6538, '43.82000', '-72.23000'), ('Thetford Hill State Park', 0, '43.81340', '-72.23650'), ('Topsham', 0, '44.09890', '-72.22500'), ('Tunbridge', 977, '43.88000', '-72.50000'), ('Vershire', 815, '43.97000', '-72.32000'), ('Waits River', 815, '44.08000', '-72.28000'), ('Washington', 2189, '44.10000', '-72.43000'), ('Wells River', 325, '44.15140', '-72.06590'), ('West Braintree', 0, '43.96940', '-72.68890'), ('West Brookfield', 0, '44.02080', '-72.67250'), ('West Fairlee', 815, '43.90000', '-72.27000'), ('Williamstown', 1242, '44.12000', '-72.53000')], 'partOfState': 'central', 'wfo': 'BTV'}, +'VTC019': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Albany', 165, '44.73050', '-72.38200'), ('Albany Center', 0, '44.73670', '-72.35000'), ('Barton', 742, '44.74960', '-72.17740'), ('Beebe Plains', 0, '45.00530', '-72.14110'), ('Brownington', 0, '44.83080', '-72.17220'), ('Brownington Center', 0, '44.82280', '-72.14860'), ('Coventry', 826, '44.87000', '-72.27000'), ('Craftsbury', 165, '44.63000', '-72.37000'), ('Craftsbury Common', 0, '44.65420', '-72.38250'), ('Crystal Lake State Park', 0, '44.74890', '-72.16330'), ('Derby Center', 670, '44.95580', '-72.13230'), ('Derby Line', 776, '45.00240', '-72.10400'), ('East Albany', 0, '44.73110', '-72.31670'), ('East Brownington', 0, '44.80080', '-72.08610'), ('East Charleston', 849, '44.83000', '-72.00000'), ('East Craftsbury', 0, '44.64250', '-72.34360'), ('Evansville', 0, '44.80310', '-72.13080'), ('Glover', 742, '44.70000', '-72.18000'), ('Greensboro', 239, '44.58000', '-72.28000'), ('Holland', 0, '44.96690', '-72.00280'), ('Irasburg', 0, '44.80000', '-72.28000'), ('Jay', 593, '44.97000', '-72.47000'), ('Lowell', 165, '44.80000', '-72.45000'), ('Morgan Center', 849, '44.92000', '-71.98000'), ('Newport', 5005, '44.93700', '-72.20890'), ('Newport Center', 5005, '44.95000', '-72.30000'), ('North Troy', 593, '44.99540', '-72.40490'), ('Orleans', 826, '44.81060', '-72.20180'), ('South Albany', 0, '44.69140', '-72.31250'), ('Troy', 0, '44.90140', '-72.40190'), ('West Charleston', 0, '44.89890', '-72.06000'), ('Westfield', 593, '44.88000', '-72.42000'), ('West Glover', 0, '44.72830', '-72.22440'), ('Westmore', 742, '44.77000', '-72.05000')], 'partOfState': 'northeast', 'wfo': 'BTV'}, +'VTC021': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Belmont', 0, '43.41560', '-72.82280'), ('Benson', 2435, '43.72000', '-73.32000'), ('Bomoseen', 0, '43.64360', '-73.19920'), ('Bomoseen State Park', 0, '43.68860', '-73.23060'), ('Brandon', 1684, '43.80120', '-73.08650'), ('Castleton', 2435, '43.62000', '-73.18000'), ('Center Rutland', 0, '43.60440', '-73.01190'), ('Chippenhook', 0, '43.51830', '-73.01440'), ('Chittenden', 17292, '43.72000', '-72.95000'), ('Clarendon', 0, '43.51610', '-72.97030'), ('Clarendon Springs', 0, '43.54780', '-73.02280'), ('Cuttingsville', 0, '43.48830', '-72.88280'), ('Danby', 948, '43.35000', '-73.00000'), ('Danby Four Corners', 0, '43.35470', '-73.04720'), ('East Hubbardton', 0, '43.69310', '-73.13860'), ('East Pittsford', 0, '43.67110', '-72.94330'), ('East Wallingford', 0, '43.44940', '-72.87640'), ('Fair Haven', 2435, '43.59580', '-73.27110'), ('Florence', 0, '43.71640', '-73.06190'), ('Forest Dale', 0, '43.82780', '-73.05420'), ('Gifford Woods State Park', 0, '43.67410', '-72.81270'), ('Half Moon State Park', 0, '43.68900', '-73.21790'), ('Hortonia', 0, '43.74530', '-73.22360'), ('Hubbardton', 1684, '43.72000', '-73.18000'), ('Ira', 0, '43.53000', '-73.07000'), ('Killington', 17292, '43.67000', '-72.77000'), ('Lake St. Catherine', 0, '43.48030', '-73.20530'), ('Mendon', 17292, '43.65000', '-72.93000'), ('Middletown Springs', 1575, '43.48000', '-73.12000'), ('Mt. Holly', 958, '43.45000', '-72.82000'), ('Mt. Tabor', 0, '43.35060', '-72.98310'), ('North Clarendon', 0, '43.56670', '-72.96580'), ('Pawlet', 2646, '43.35000', '-73.18000'), ('Pittsfield', 17292, '43.78000', '-72.82000'), ('Pittsford', 17292, '43.70000', '-73.03000'), ('Poultney', 1575, '43.51780', '-73.23610'), ('Proctor', 0, '43.66060', '-73.03610'), ('Rutland', 17292, '43.60890', '-72.97960'), ('Shrewsbury', 948, '43.52000', '-72.87000'), ('South Poultney', 0, '43.47560', '-73.23640'), ('South Wallingford', 948, '43.42000', '-72.98000'), ('Sudbury', 1684, '43.80000', '-73.20000'), ('Tinmouth', 0, '43.45000', '-73.05000'), ('Wallingford', 948, '43.48050', '-72.97570'), ('Wells', 2646, '43.42000', '-73.20000'), ('West Castleton', 0, '43.65890', '-73.23220'), ('West Haven', 2435, '43.65000', '-73.35000'), ('West Rutland', 2263, '43.59490', '-73.04550')], 'partOfState': 'southern', 'wfo': 'BTV'}, +'VTC023': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Adamant', 0, '44.32920', '-72.50330'), ('Alpine Village', 0, '44.06860', '-72.83470'), ('Barre', 9291, '44.20010', '-72.50790'), ('Berlin', 0, '44.21000', '-72.57640'), ('Cabot', 239, '44.40860', '-72.31100'), ('Calais', 262, '44.38000', '-72.43000'), ('Duxbury', 0, '44.32690', '-72.75310'), ('East Barre', 0, '44.15810', '-72.45080'), ('East Cabot', 0, '44.38970', '-72.25170'), ('East Calais', 0, '44.36640', '-72.43030'), ('East Montpelier', 0, '44.27110', '-72.48750'), ('East Montpelier Center', 0, '44.28360', '-72.52580'), ('East Roxbury', 0, '44.07970', '-72.65220'), ('Exit 10 I89', 0, '44.34270', '-72.75130'), ('Exit 6 I89', 0, '44.16760', '-72.57770'), ('Exit 7 I89', 0, '44.21560', '-72.58370'), ('Exit 8 I89', 0, '44.25070', '-72.59630'), ('Exit 9 I89', 0, '44.29820', '-72.68510'), ('Fayston', 0, '44.22920', '-72.88440'), ('Little River State Park', 0, '44.40970', '-72.79690'), ('Marshfield', 262, '44.35080', '-72.35210'), ('Middlesex', 1706, '44.30000', '-72.68000'), ('Montpelier', 8035, '44.26650', '-72.57190'), ('Moretown', 1706, '44.25000', '-72.75000'), ('Mount Worcester', 0, '44.44310', '-72.59190'), ('Northfield', 3208, '44.15230', '-72.65650'), ('Plainfield', 262, '44.28000', '-72.43000'), ('Putnamville', 0, '44.34170', '-72.56640'), ('Riverton', 0, '44.20250', '-72.63670'), ('Roxbury', 3208, '44.10000', '-72.73000'), ('South Barre', 1242, '44.16330', '-72.50660'), ('Waitsfield', 3208, '44.18000', '-72.82000'), ('Warren', 3208, '44.12000', '-72.85000'), ('Waterbury', 1706, '44.33940', '-72.75270'), ('Waterbury Center', 0, '44.37810', '-72.71640'), ('Woodbury', 0, '44.43000', '-72.42000'), ('Worcester', 8035, '44.37000', '-72.55000')], 'partOfState': 'central', 'wfo': 'BTV'}, +'VTC025': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Bellows Falls', 3165, '43.13610', '-72.45320'), ('Brattleboro', 8289, '42.86130', '-72.57420'), ('Guilford Center', 3222, '42.79200', '-72.62400'), ('Jacksonville', 237, '42.79730', '-72.82080'), ('Londonderry', 958, '43.22650', '-72.80550'), ('Newfane', 116, '42.98760', '-72.65640'), ('Putney', 276, '42.97400', '-72.52030'), ('Saxtons River', 519, '43.13890', '-72.51130'), ('Stratton', 2065, '43.04280', '-72.91070'), ('Townshend', 116, '43.04300', '-72.66600'), ('Vernon', 1718, '42.78180', '-72.52820'), ('West Brattleboro', 3222, '42.85150', '-72.61100'), ('Westminster', 276, '43.07630', '-72.45600'), ('West Wardsboro', 116, '43.02970', '-72.85250'), ('Wilmington', 237, '42.86820', '-72.87230')], 'partOfState': 'southern', 'wfo': 'ALY'}, +'VTC027': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Amsden', 0, '43.40580', '-72.50640'), ('Andover', 0, '43.27720', '-72.69720'), ('Ascutney', 0, '43.40690', '-72.40750'), ('Ascutney State Park', 0, '43.44190', '-72.43970'), ('Baltimore', 0, '43.36030', '-72.57360'), ('Barnard', 977, '43.73000', '-72.62000'), ('Bethel', 977, '43.83000', '-72.63000'), ('Bridgewater', 977, '43.58000', '-72.63000'), ('Bridgewater Center', 0, '43.61640', '-72.65970'), ('Bridgewater Corners', 0, '43.58830', '-72.65640'), ('Brownsville', 0, '43.46860', '-72.47140'), ('Camp Plymouth', 0, '43.47640', '-72.69530'), ('Cavendish', 958, '43.38000', '-72.62000'), ('Chester', 999, '43.26280', '-72.59390'), ('Coolidge State Park', 0, '43.54720', '-72.68610'), ('Downers', 0, '43.40030', '-72.51470'), ('East Barnard', 0, '43.74580', '-72.54330'), ('East Bethel', 0, '43.87330', '-72.58470'), ('Gassetts', 0, '43.32440', '-72.60720'), ('Hartland', 2569, '43.55000', '-72.40000'), ('Ludlow', 958, '43.39630', '-72.69750'), ('North Hartland', 0, '43.59280', '-72.35220'), ('Norwich', 6538, '43.72000', '-72.30000'), ('Perkinsville', 142, '43.36970', '-72.51620'), ('Plymouth', 958, '43.53000', '-72.73000'), ('Pomfret', 977, '43.70000', '-72.52000'), ('Quechee', 2569, '43.65000', '-72.42000'), ('Queechee State Park', 0, '43.63540', '-72.40670'), ('Reading', 142, '43.47000', '-72.55000'), ('Rochester', 1684, '43.88000', '-72.82000'), ('Sharon', 977, '43.78000', '-72.45000'), ('Silver Lake State Park', 0, '43.73280', '-72.61420'), ('South Pomfret', 0, '43.66500', '-72.54000'), ('South Royalton', 977, '43.82000', '-72.52000'), ('South Woodstock', 977, '43.57000', '-72.53000'), ('Springfield', 3938, '43.28840', '-72.47620'), ('Stockbridge', 17292, '43.78000', '-72.77000'), ('Tyson', 958, '43.47000', '-72.70000'), ('Union Village', 0, '43.78000', '-72.25000'), ('West Bridgewater', 958, '43.60000', '-72.75000'), ('West Hartford', 1636, '43.72000', '-72.42000'), ('Weston', 958, '43.28000', '-72.80000'), ('West Windsor', 0, '43.48610', '-72.49310'), ('White River Junction', 2569, '43.65010', '-72.32340'), ('Wilder', 1636, '43.67230', '-72.31130'), ('Wilgus State Park', 0, '43.39080', '-72.40830'), ('Windsor', 13902, '43.48000', '-72.42000'), ('Woodstock', 977, '43.62620', '-72.51710')], 'partOfState': 'southern', 'wfo': 'BTV'}, +'WAC001': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Benge', 380, '46.90570', '-118.10080'), ('Cunningham', 98, '46.82000', '-118.80320'), ('Hatton', 98, '46.77230', '-118.82180'), ('Lind', 582, '46.97160', '-118.61360'), ('Othello', 5847, '46.82040', '-119.16710'), ('Ralston', 1736, '46.98370', '-118.33830'), ('Ritzville', 1736, '47.12660', '-118.37600'), ('Washtucna', 260, '46.75350', '-118.31160')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAC003': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Anatone', 1095, '46.13430', '-117.12550'), ('Asotin', 1095, '46.33880', '-117.04390'), ('Clarkston', 7337, '46.41550', '-117.04900'), ('Clarkston Heights', 6117, '46.38630', '-117.07660')], 'partOfState': 'southeast', 'wfo': 'OTX'}, +'WAC005': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Benton City', 2624, '46.26800', '-119.48710'), ('Finley', 5770, '46.16900', '-119.04220'), ('Highland', 3388, '46.13160', '-119.11300'), ('Kennewick', 54693, '46.20310', '-119.17040'), ('Prosser', 4838, '46.20620', '-119.76630'), ('Richland', 38708, '46.29400', '-119.29070'), ('West Richland', 8385, '46.32450', '-119.39730')], 'partOfState': 'south central', 'wfo': 'PDT'}, +'WAC007': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Ardenvoir', 957, '47.73580', '-120.36730'), ('Cashmere', 2965, '47.51840', '-120.46760'), ('Chelan', 3522, '47.84630', '-120.02770'), ('Dryden', 2965, '47.53820', '-120.55580'), ('Entiat', 957, '47.67540', '-120.21160'), ('Leavenworth', 2074, '47.59130', '-120.66420'), ('Lucerne', 349, '48.20150', '-120.58730'), ('Malaga', 863, '47.37020', '-120.20000'), ('Manson', 3522, '47.88430', '-120.15430'), ('Monitor', 2965, '47.48550', '-120.41680'), ('Peshastin', 2074, '47.56920', '-120.60170'), ('Plain', 2074, '47.75670', '-120.65370'), ('Sunnyslope', 2521, '47.49180', '-120.34130'), ('Telma', 2074, '47.83930', '-120.80870'), ('Wenatchee', 27856, '47.42570', '-120.32490'), ('Winton', 2074, '47.73470', '-120.73730')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAC009': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Agnew', 0, '48.10560', '-123.24850'), ('Beaver', 0, '48.05730', '-124.34740'), ('Blyn', 0, '48.02230', '-123.00600'), ('Clallam Bay', 0, '48.25000', '-124.25000'), ('Dungeness', 0, '48.14680', '-123.12320'), ('Forks', 0, '47.95040', '-124.38550'), ('Hurricane Ridge', 0, '47.99750', '-123.47670'), ('Joyce', 0, '48.13650', '-123.73410'), ('La Push', 0, '47.91000', '-124.63000'), ('Montesano', 0, '47.98120', '-123.60270'), ('Neah Bay', 0, '48.36000', '-124.63000'), ('Ozette', 0, '48.15480', '-124.66720'), ('Port Angeles', 0, '48.11810', '-123.43070'), ('Quillayute', 0, '47.94310', '-124.54240'), ('Sappho', 0, '48.07010', '-124.27940'), ('Sekiu', 0, '48.26000', '-124.31000'), ('Sequim', 0, '48.07950', '-123.10180'), ('Sequim', 4334, '48.07750', '-123.10530')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC011': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Alpine', 1055, '45.79000', '-122.43000'), ('Amboy', 2085, '45.90000', '-122.45000'), ('Battle Ground', 9296, '45.78200', '-122.54110'), ('Brush Prairie', 2384, '45.73140', '-122.55140'), ('Camas', 12534, '45.58790', '-122.42350'), ('Camp Bonneville', 5136, '45.70000', '-122.41660'), ('Cascade Park', 6656, '45.61000', '-122.54000'), ('Chelatchie', 1055, '45.92000', '-122.38330'), ('Clark County Fairgrounds', 16767, '45.75000', '-122.67000'), ('Elkhorn Mountain', 1055, '45.73000', '-122.37000'), ('Ellsworth', 4423, '45.61000', '-122.57000'), ('Evergreen', 11249, '45.62730', '-122.52730'), ('Fargher Lake', 9296, '45.88330', '-122.51660'), ('Felida', 5683, '45.71680', '-122.70820'), ('Hazel Dell', 5796, '45.67800', '-122.65400'), ('Heisson', 9296, '45.81660', '-122.50000'), ('Hockinson', 5136, '45.73300', '-122.48300'), ('Lacamas Lake', 12534, '45.61000', '-122.43000'), ('La Center', 1654, '45.86420', '-122.66650'), ('Lake Merwin', 1055, '45.98000', '-122.50000'), ('Larch Mountain', 8595, '45.71000', '-122.29000'), ('McLoughlin Heights', 5796, '45.62000', '-122.60000'), ('Minnehaha', 7689, '45.65700', '-122.62630'), ('Moulton', 1055, '45.82000', '-122.38000'), ('Orchards', 17852, '45.66660', '-122.55000'), ('Proebstel', 5136, '45.67000', '-122.45000'), ('Ridgefield', 2147, '45.81730', '-122.74020'), ('Salmon Creek', 16767, '45.71340', '-122.66110'), ('Salmon Falls', 1055, '45.76000', '-122.42000'), ('Sifton', 5136, '45.68000', '-122.51660'), ('Vancouver Downtown', 143560, '45.63420', '-122.66500'), ('Vancouver Lake', 6670, '45.68000', '-122.73000'), ('Vancouver Mall', 6938, '45.65900', '-122.58370'), ('Washougal', 8595, '45.57900', '-122.34390'), ('Yacolt', 1055, '45.86570', '-122.40590'), ('Yale Lake', 1055, '46.02000', '-122.31000')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAC013': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Dayton', 2655, '46.31770', '-117.97680'), ('Starbuck', 130, '46.51910', '-118.12500')], 'partOfState': 'southeast', 'wfo': 'PDT'}, +'WAC015': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Ariel', 1654, '45.96700', '-122.56700'), ('Carrolls', 63, '46.06700', '-122.85000'), ('Castle Rock', 2130, '46.27290', '-122.90150'), ('Coldwater Lake', 1045, '46.29000', '-122.27000'), ('Coldwater Ridge Visitors Center', 0, '46.29000', '-122.28200'), ('Cougar', 1055, '46.05000', '-122.30000'), ('Kalama', 1783, '46.01030', '-122.84090'), ('Kelso', 11895, '46.12640', '-122.89140'), ('Lexington', 4565, '46.18300', '-122.90000'), ('Longview', 34660, '46.13330', '-122.93330'), ('Oak Point', 1629, '46.18330', '-123.18330'), ('Ostrander', 4565, '46.18330', '-122.88330'), ('Pigeon Springs', 3780, '46.06000', '-122.62000'), ('Rose Valley', 11895, '46.10500', '-122.84000'), ('Ryderwood', 590, '46.37000', '-123.05000'), ('Silver Lake', 2130, '46.29500', '-122.80000'), ('Stella', 2882, '46.19000', '-123.10500'), ('Toutle', 653, '46.33330', '-122.71000'), ('Woodland', 3780, '45.91500', '-122.74300'), ('Yale', 1055, '46.00000', '-122.38300')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAC017': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bridgeport', 2059, '48.00570', '-119.67120'), ('Douglas', 1163, '47.61950', '-120.00220'), ('East Wenatchee', 5757, '47.41710', '-120.28830'), ('Mansfield', 319, '47.81150', '-119.63700'), ('Mold', 600, '47.73920', '-119.33780'), ('Palisades', 5044, '47.41820', '-119.90800'), ('Rock Island', 863, '47.37180', '-120.13710'), ('Waterville', 1163, '47.64800', '-120.06950'), ('Withrow', 319, '47.70300', '-119.80450')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAC019': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Boyds', 117, '48.70830', '-118.12570'), ('Curlew', 954, '48.88470', '-118.59230'), ('Danville', 954, '48.98880', '-118.50420'), ('Inchelium', 389, '48.34120', '-118.24740'), ('Keller', 267, '48.07400', '-118.68370'), ('Lauier', 117, '48.99270', '-118.22050'), ('Malo', 954, '48.80100', '-118.60350'), ('Republic', 954, '48.64910', '-118.73180')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAC021': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Connell', 2956, '46.66000', '-118.86100'), ('Kahlotus', 214, '46.64360', '-118.55240'), ('Mesa', 425, '46.57320', '-118.99960'), ('Pasco', 32066, '46.25210', '-119.12780'), ('West Pasco', 4629, '46.24560', '-119.18170')], 'partOfState': 'north central', 'wfo': 'PDT'}, +'WAC023': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Dodge', 1517, '46.52170', '-117.81920'), ('Mayview', 1517, '46.62530', '-117.45880'), ('Peola', 1517, '46.30550', '-117.47580'), ('Pomeroy', 1517, '46.47400', '-117.59550')], 'partOfState': 'southeast', 'wfo': 'OTX'}, +'WAC025': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Beverly', 2609, '46.83550', '-119.92580'), ('Coulee City', 600, '47.61190', '-119.28980'), ('Desert Aire', 1124, '46.67430', '-119.90970'), ('Electric City', 922, '47.93020', '-119.03620'), ('Ephrata', 6808, '47.31230', '-119.53690'), ('George', 528, '47.07860', '-119.85600'), ('Grand Coulee', 897, '47.93960', '-119.00390'), ('Hartline', 134, '47.68940', '-119.10590'), ('Krupp', 60, '47.40990', '-118.98780'), ('Laveview Park', 1733, '47.37270', '-119.50400'), ('Marlin', 55, '47.40450', '-118.98370'), ('Mattawa', 2609, '46.73650', '-119.90080'), ('Moses Lake', 14953, '47.11570', '-119.28620'), ('Quincy', 5044, '47.23380', '-119.85110'), ('Royal City', 1823, '46.89890', '-119.61410'), ('Soap Lake', 1733, '47.38830', '-119.48970'), ('Stratford', 1733, '47.42300', '-119.41900'), ('Warden', 2544, '46.96790', '-119.04700'), ('Wilson Creek', 227, '47.42260', '-119.11570'), ('Winchester', 5044, '47.24280', '-119.71780')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAC027': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Aberdeen', 0, '46.97540', '-123.81570'), ('Aberdeen', 16461, '46.97700', '-123.80840'), ('Amanda Park', 0, '47.46310', '-123.88600'), ('Carlisle', 0, '47.15480', '-124.09850'), ('Central Park', 0, '46.97340', '-123.69240'), ('Cosmopolis', 1595, '46.95550', '-123.76980'), ('Elma', 3049, '47.00510', '-123.40090'), ('Grayland', 0, '46.81010', '-124.09320'), ('Grisdale', 0, '47.35700', '-123.61240'), ('Hoquiam', 9097, '46.97540', '-123.88660'), ('Humptulips', 0, '47.23310', '-123.95810'), ('Malone', 0, '46.96040', '-123.32680'), ('Markham', 0, '46.91000', '-123.98000'), ('McCleary', 1454, '47.05530', '-123.26760'), ('Melbourne', 0, '46.94540', '-123.62600'), ('Montesano', 3312, '47.01460', '-123.58390'), ('Oakville', 675, '46.84040', '-123.23360'), ('Ocean City', 0, '47.07090', '-124.16600'), ('Ocean Shores', 3836, '46.97110', '-124.15230'), ('Pacific Beach', 0, '47.20900', '-124.20320'), ('Porter', 0, '46.93900', '-123.31070'), ('Quinault', 0, '47.46700', '-123.84540'), ('Satsop', 0, '47.00330', '-123.48220'), ('Westport', 2137, '46.89200', '-124.11100')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC029': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Coupeville', 0, '48.21980', '-122.68630'), ('Freeland', 1313, '48.01310', '-122.53770'), ('Langley', 959, '48.03710', '-122.40720'), ('Oak Harbor', 0, '48.29320', '-122.64320')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC031': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Brinnon', 0, '47.67930', '-122.89820'), ('Chimacum', 0, '48.01110', '-122.76750'), ('Clearwater', 0, '47.57760', '-124.29460'), ('Gardiner', 0, '48.04980', '-122.91570'), ('Leland', 0, '47.89180', '-122.88660'), ('Mount Olympus', 0, '47.79980', '-123.70660'), ('Port Hadlock', 0, '48.03180', '-122.75820'), ('Port Ludlow', 0, '47.92540', '-122.68350'), ('Port Townsend', 8334, '48.12200', '-122.77920'), ('Queets', 0, '47.53950', '-124.33240'), ('Quilcene', 0, '47.82230', '-122.87570')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC033': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Algona', 2460, '47.28370', '-122.25010'), ('Auburn', 0, '47.30730', '-122.22850'), ('Baring', 0, '47.77320', '-121.48540'), ('Bellevue', 0, '47.61040', '-122.20070'), ('Black Diamond', 3970, '47.31170', '-122.00990'), ('Bothell', 0, '47.76230', '-122.20540'), ('Bothell', 30150, '47.76000', '-122.19690'), ('Bryn Mawr', 0, '47.50360', '-122.23170'), ('Burien', 31881, '47.46490', '-122.34640'), ('Carnation', 1893, '47.64610', '-121.90930'), ('Carnation', 0, '47.64790', '-121.91400'), ('Cedar Falls', 0, '47.42540', '-121.77680'), ('Clyde Hill', 2890, '47.62920', '-122.21780'), ('Covington', 0, '47.34830', '-122.11360'), ('Covington-Sawyer-w', 24321, '47.35280', '-122.07310'), ('Des Moines', 29267, '47.39550', '-122.30950'), ('Duvall', 4616, '47.73370', '-121.96920'), ('Eastgate', 4558, '47.57230', '-122.13490'), ('Enumclaw', 0, '47.20430', '-121.99150'), ('Enumclaw', 11116, '47.20090', '-121.98910'), ('Fairwood', 0, '47.44860', '-122.15610'), ('Fall City', 1638, '47.56630', '-121.90210'), ('Fall City', 0, '47.56730', '-121.88870'), ('Federal Way', 83259, '47.31190', '-122.34080'), ('Greenwater', 0, '47.15590', '-121.65040'), ('Hunts Point', 443, '47.63880', '-122.22750'), ('Issaquah', 11212, '47.53230', '-122.03850'), ('Kenmore', 18678, '47.76460', '-122.24260'), ('Kent', 79524, '47.39430', '-122.23850'), ('Kingsgate', 12222, '47.73060', '-122.16710'), ('Kirkland', 45054, '47.68460', '-122.19390'), ('Lake Forest Park', 13142, '47.76270', '-122.28620'), ('Lea Hill', 10871, '47.32630', '-122.18030'), ('Maple Valley', 14209, '47.40130', '-122.02570'), ('Medina', 3011, '47.61630', '-122.23650'), ('Mercer Island', 0, '47.57070', '-122.22210'), ('Mercer Island', 22036, '47.56930', '-122.23090'), ('Mirrormont', 3804, '47.46260', '-121.99430'), ('Newcastle', 0, '47.53920', '-122.15440'), ('Newport Hills', 14736, '47.54750', '-122.17400'), ('Normandy Park', 6392, '47.44470', '-122.35580'), ('North Bend', 4746, '47.49570', '-121.78870'), ('North Hill', 5706, '47.41940', '-122.32230'), ('Palmer', 0, '47.31430', '-121.89230'), ('Pine Lake', 13940, '47.57890', '-122.04490'), ('Ravensdale', 0, '47.35250', '-121.98250'), ('Redmond', 45256, '47.67420', '-122.11480'), ('Renton', 50052, '47.48190', '-122.19660'), ('Richmond Highlands', 26037, '47.75910', '-122.34300'), ('Sahalee', 13951, '47.63490', '-122.05410'), ('Sammamish', 0, '47.64190', '-122.07920'), ('Seatac', 0, '47.45370', '-122.32180'), ('Seattle', 563374, '47.62180', '-122.35030'), ('Selleck', 0, '47.37580', '-121.86720'), ('Sheridan Beach', 6518, '47.74490', '-122.28680'), ('Shoreline', 0, '47.75580', '-122.34030'), ('Skykomish', 214, '47.71120', '-121.35740'), ('Skyway', 0, '47.49170', '-122.25310'), ('Snoqualmie', 0, '47.52870', '-121.82540'), ('Snoqualmie', 1631, '47.52430', '-121.81760'), ('Snoqualmie Pass', 0, '47.42530', '-121.41250'), ('Stevens Pass', 0, '47.74190', '-121.09170'), ('Tukwila', 17181, '47.47770', '-122.26830'), ('Vashon Island', 0, '47.43000', '-122.48000'), ('White Center', 0, '47.51750', '-122.35360'), ('Woodinville', 9194, '47.74620', '-122.11190'), ('Woodmont Beach', 7493, '47.36180', '-122.31630'), ('Yarrow Point', 1008, '47.64570', '-122.21530')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAC035': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bainbridge Island', 0, '47.65000', '-122.55000'), ('Bremerton', 37259, '47.54890', '-122.70200'), ('Holly', 0, '47.56000', '-122.97000'), ('Indianola', 3026, '47.75450', '-122.51330'), ('Kingston', 0, '47.80000', '-122.50000'), ('Navy Yard City', 2638, '47.55160', '-122.66700'), ('Parkwood', 7213, '47.52600', '-122.59670'), ('Port Orchard', 7693, '47.52900', '-122.64120'), ('Poulsbo', 6813, '47.73710', '-122.64000'), ('Poulsbo', 0, '47.73590', '-122.64650'), ('Seabeck', 0, '47.63000', '-122.83000'), ('Silverdale', 15816, '47.65210', '-122.68310'), ('Suquamish', 3510, '47.72910', '-122.58430'), ('Tracyton', 3267, '47.60960', '-122.65450'), ('Winslow', 3081, '47.62970', '-122.51780')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC037': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Cle Elum', 1755, '47.19400', '-120.93310'), ('Ellensburg', 15414, '46.99710', '-120.54800'), ('Kittitas', 1105, '46.98500', '-120.41700'), ('Roslyn', 1017, '47.24480', '-121.10260'), ('South Cle Elum', 457, '47.18680', '-120.95180')], 'partOfState': 'south central', 'wfo': 'PDT'}, +'WAC039': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bingen', 672, '45.71420', '-121.46810'), ('Goldendale', 3760, '45.82200', '-120.81830'), ('White Salmon', 2193, '45.72770', '-121.48370')], 'partOfState': 'south central', 'wfo': 'PDT'}, +'WAC041': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Centralia', 0, '46.71620', '-122.95430'), ('Chehalis', 7057, '46.66490', '-122.96500'), ('Cinebar', 0, '46.60430', '-122.53180'), ('Curtis', 0, '46.58700', '-123.11010'), ('Doty', 0, '46.63450', '-123.27760'), ('Fords Prairie', 1961, '46.74010', '-123.00150'), ('Glenoma', 0, '46.51460', '-122.16010'), ('Mineral', 0, '46.71710', '-122.18090'), ('Morton', 1045, '46.55800', '-122.28010'), ('Mossyrock', 486, '46.53010', '-122.48130'), ('Napavine', 1361, '46.57710', '-122.90850'), ('Onalaska', 0, '46.57510', '-122.71820'), ('Packwood', 0, '46.60650', '-121.67060'), ('Pe Ell', 657, '46.57150', '-123.29690'), ('Randle', 0, '46.53510', '-121.95700'), ('Toledo', 653, '46.44050', '-122.84770'), ('Vader', 590, '46.40280', '-122.95560'), ('Winlock', 0, '46.49120', '-122.93790'), ('Winlock', 1166, '46.49150', '-122.93590')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAC043': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Almira', 302, '47.71060', '-118.93930'), ('Creston', 232, '47.76000', '-118.51940'), ('Davenport', 1730, '47.65130', '-118.15320'), ('Edwall', 608, '47.51780', '-117.95000'), ('Harrington', 426, '47.48040', '-118.25440'), ('Irby', 60, '47.35530', '-118.85000'), ('Lamona', 957, '47.35570', '-118.47550'), ('Lincoln', 232, '47.82420', '-118.40830'), ('Miles', 232, '47.90650', '-118.28820'), ('Mohler', 426, '47.40300', '-118.32350'), ('Odessa', 957, '47.33330', '-118.68710'), ('Reardan', 608, '47.66920', '-117.87740'), ('Sprague', 490, '47.30000', '-117.97410'), ('Wilbur', 914, '47.75810', '-118.70450')], 'partOfState': 'eastern', 'wfo': 'OTX'}, +'WAC045': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Belfair', 0, '47.45060', '-122.82740'), ('Hoodsport', 0, '47.40590', '-123.13930'), ('Lilliwaup', 0, '47.46340', '-123.11430'), ('Matlock', 0, '47.23790', '-123.40790'), ('Shelton', 8442, '47.21480', '-123.10530'), ('Skokomish', 616, '47.33360', '-123.15620'), ('Tahuya', 0, '47.37120', '-123.05580')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC047': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Brewster', 2189, '48.10280', '-119.77960'), ('Carlton', 938, '48.24230', '-120.10900'), ('Chesaw', 1653, '48.94100', '-119.05020'), ('Conconully', 185, '48.55880', '-119.75100'), ('Coulee Dam', 1044, '47.96870', '-118.97440'), ('Disautel', 688, '48.35630', '-119.23500'), ('Ellisforde', 994, '48.78730', '-119.40000'), ('Elmer City', 267, '47.99900', '-118.95240'), ('Loomis', 994, '48.81930', '-119.62600'), ('Malott', 2484, '48.26900', '-119.70580'), ('Mazama', 349, '48.57550', '-120.38470'), ('Methow', 643, '48.12480', '-120.00150'), ('Molson', 1653, '48.97530', '-119.19300'), ('Monse', 2189, '48.13820', '-119.67270'), ('Nespelem', 212, '48.16770', '-118.97140'), ('Nighthawk', 1653, '48.96670', '-119.63780'), ('Okanogan', 2484, '48.36880', '-119.57610'), ('Omak', 4721, '48.40960', '-119.52550'), ('Oroville', 1653, '48.94240', '-119.43160'), ('Pateros', 643, '48.05480', '-119.89990'), ('Riverside', 348, '48.50270', '-119.50750'), ('Tonasket', 994, '48.70480', '-119.43780'), ('Twisp', 938, '48.36330', '-120.11950'), ('Wauconda', 954, '48.72220', '-119.00750'), ('Winthrop', 349, '48.47290', '-120.17830')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAC049': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bay Center', 174, '46.62000', '-123.95000'), ('Brooklyn', 3049, '46.78300', '-123.50000'), ('Cape Disappointment', 950, '46.27000', '-124.08000'), ('Chinook', 457, '46.27700', '-123.95000'), ('Frances', 657, '46.53300', '-123.50000'), ('Ilwaco', 950, '46.31090', '-124.03310'), ('Klipsan Beach', 1459, '46.46660', '-124.05000'), ('Knappton', 377, '46.27500', '-123.81660'), ('Leadbetter Point', 1459, '46.64000', '-124.06000'), ('Lebam', 176, '46.56700', '-123.55000'), ('Long Beach', 1283, '46.35550', '-124.05320'), ('Megler', 377, '46.25000', '-123.86660'), ('Menlo', 2975, '46.63330', '-123.65000'), ('Naselle', 377, '46.36700', '-123.81700'), ('Nemah', 1459, '46.51600', '-123.88330'), ('Ocean Park', 1459, '46.49570', '-124.04320'), ('Oceanside', 1283, '46.40000', '-124.04500'), ('Oysterville', 1459, '46.55000', '-124.03330'), ('Raymond', 2975, '46.68350', '-123.73690'), ('Seaview', 1283, '46.33330', '-124.05100'), ('South Bend', 1807, '46.66000', '-123.80300'), ('Sutico', 657, '46.63000', '-123.51000'), ('Tokeland', 194, '46.71000', '-123.98330'), ('Willapa', 2975, '46.66660', '-123.66660')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAC051': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Cusick', 212, '48.33450', '-117.29410'), ('Diamond Lake', 1921, '48.11980', '-117.19220'), ('Ione', 479, '48.74060', '-117.42090'), ('Metaline', 162, '48.85460', '-117.38810'), ('Metaline Falls', 223, '48.86240', '-117.36940'), ('Newport', 1921, '48.18080', '-117.05080'), ('Ruby', 212, '48.52000', '-117.29220'), ('Tiger', 479, '48.68830', '-117.40400'), ('Usk', 212, '48.30830', '-117.27380')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAC053': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Alder', 0, '46.80040', '-122.29010'), ('Artondale', 8630, '47.31380', '-122.63450'), ('Ashford', 0, '46.75840', '-122.03090'), ('Bonney Lake', 9687, '47.18730', '-122.16880'), ('Buckley', 4145, '47.16260', '-122.01870'), ('Buckley', 0, '47.16320', '-122.02680'), ('Carbonado', 621, '47.08090', '-122.05340'), ('Crystal Mountain', 0, '46.92820', '-121.50450'), ('Dupont', 2452, '47.10680', '-122.65310'), ('Eatonville', 2012, '46.86840', '-122.26880'), ('Edgewood', 0, '47.25030', '-122.29250'), ('Elbe', 0, '46.76500', '-122.19250'), ('Elk Plain', 15697, '47.05330', '-122.37800'), ('Fife', 4784, '47.24000', '-122.36140'), ('Fircrest', 5868, '47.23110', '-122.51300'), ('Fox Island', 2803, '47.25180', '-122.62780'), ('Frederickson', 5758, '47.08650', '-122.36190'), ('Gig Harbor', 0, '47.32890', '-122.58790'), ('Graham', 0, '47.05290', '-122.29430'), ('Kapowsin', 0, '46.98570', '-122.22570'), ('Lakewood', 0, '47.17180', '-122.51850'), ('Longmire', 0, '46.74980', '-121.81260'), ('Midland', 7414, '47.17230', '-122.40890'), ('Milton', 5795, '47.25190', '-122.31590'), ('Mount Rainier', 0, '46.85290', '-121.76040'), ('Orting', 3760, '47.08880', '-122.20540'), ('Orting', 0, '47.09790', '-122.20430'), ('Paradise', 0, '46.78670', '-121.74500'), ('Parkland', 24053, '47.13790', '-122.42930'), ('Prairie Ridge', 11688, '47.13790', '-122.14740'), ('Puyallup', 0, '47.18540', '-122.29290'), ('Puyallup', 33011, '47.18190', '-122.28420'), ('Roy', 260, '47.00120', '-122.54430'), ('Ruston', 738, '47.29780', '-122.50930'), ('South Hill', 31623, '47.14120', '-122.26900'), ('South Prairie', 382, '47.13850', '-122.09180'), ('Spanaway', 21588, '47.10620', '-122.42650'), ('Steilacoom', 6049, '47.16960', '-122.59240'), ('Summit', 8041, '47.17210', '-122.35800'), ('Sumner', 8504, '47.21050', '-122.23600'), ('Sumner', 0, '47.20320', '-122.24040'), ('Tacoma', 193556, '47.25200', '-122.45980'), ('University Place', 29933, '47.21910', '-122.54240'), ('Vaughn', 0, '47.34440', '-122.76190'), ('Waller', 9200, '47.20090', '-122.36820'), ('Wilkeson', 395, '47.10710', '-122.04700')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAC055': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Eastsound', 0, '48.69680', '-122.90550'), ('Friday Harbor', 1989, '48.53690', '-123.03130'), ('Friday Harbor', 0, '48.53430', '-123.01710'), ('Roche Harbor', 0, '48.60980', '-123.14880'), ('Waldron', 0, '48.68760', '-123.03690')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC057': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Allen', 0, '48.51650', '-122.37710'), ('Anacortes', 0, '48.51260', '-122.61270'), ('Anacortes', 14557, '48.49240', '-122.62940'), ('Big Lake', 0, '48.40290', '-122.24130'), ('Blanchard', 0, '48.59340', '-122.41660'), ('Burlington', 6757, '48.46920', '-122.33180'), ('Clear Lake', 0, '48.46430', '-122.23400'), ('Concrete', 790, '48.53710', '-121.74890'), ('Edison', 0, '48.56230', '-122.44380'), ('Hamilton', 0, '48.52150', '-121.98930'), ('Hamilton', 309, '48.52330', '-121.98820'), ('La Conner', 761, '48.39270', '-122.49320'), ('Lyman', 409, '48.52350', '-122.06360'), ('Lyman', 0, '48.52710', '-122.06180'), ('Marblemount', 0, '48.52760', '-121.44960'), ('Mount Vernon', 26232, '48.42170', '-122.31450'), ('Rockport', 0, '48.48570', '-121.59760'), ('Sedro-Woolley', 8658, '48.50820', '-122.23500'), ('Shelter Bay', 0, '48.38260', '-122.51400'), ('Snee Oosh', 302, '48.42250', '-122.55310'), ('Swinomish Village', 563, '48.40840', '-122.50990')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC059': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Adams Fork Campground', 2116, '46.32000', '-121.66000'), ('Beacon Rock', 593, '45.62760', '-122.02060'), ('Cape Horn', 0, '45.57260', '-122.19510'), ('Carson', 2116, '45.72540', '-121.81920'), ('Cook', 4632, '45.71660', '-121.65000'), ('Home Valley', 2116, '45.71660', '-121.76660'), ('Indian Heaven Wilderness', 2116, '45.95000', '-121.77000'), ('Johnston Ridge Visitors Center', 0, '46.27200', '-122.23200'), ('Mount St. Helens', 1045, '46.19000', '-122.19000'), ('North Bonneville', 593, '45.63850', '-121.97300'), ('Northwoods', 2116, '46.06000', '-122.01000'), ('Prindle', 8595, '45.58500', '-122.16660'), ('Skamania', 593, '45.61700', '-122.05000'), ('Spirit Lake', 1045, '46.27000', '-122.14000'), ('Stabler', 2116, '45.81000', '-121.89000'), ('Stevenson', 1200, '45.69560', '-121.88450'), ('Swift Reservoir', 1055, '46.06000', '-122.12000'), ('Trapper Creek Wilderness', 1200, '45.89000', '-122.03000'), ('Underwood', 4632, '45.72500', '-121.54000'), ('Upper Lewis River Falls', 2116, '46.16000', '-121.88000'), ('Willard', 4632, '45.78300', '-121.63300')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAC061': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Alderwood Manor', 0, '47.82220', '-122.28080'), ('Arlington', 0, '48.19870', '-122.12760'), ('Brier', 6383, '47.79250', '-122.27170'), ('Bryant', 0, '48.23900', '-122.15790'), ('Cathan', 526, '48.11430', '-122.27620'), ('Cathcart', 0, '47.84810', '-122.09810'), ('Clearview', 0, '47.83390', '-122.12470'), ('Darrington', 1136, '48.25240', '-121.60390'), ('Edmonds', 39515, '47.82590', '-122.36790'), ('Esperance', 0, '47.78910', '-122.35430'), ('Everett', 91488, '47.96330', '-122.19860'), ('Gold Bar', 2014, '47.85770', '-121.69570'), ('Granite Falls', 2347, '48.08290', '-121.96710'), ('Harbour Pointe', 9107, '47.88600', '-122.30400'), ('Index', 157, '47.82070', '-121.55240'), ('John Sam Lake', 753, '48.10940', '-122.24460'), ('Lake Goodwin', 3354, '48.13910', '-122.27840'), ('Lake Serene-North', 14290, '47.85500', '-122.28410'), ('Lake Stevens', 6361, '48.01710', '-122.06530'), ('Lynnwood', 33847, '47.82720', '-122.30430'), ('Maltby', 0, '47.80530', '-122.11190'), ('Martha Lake', 12633, '47.85100', '-122.23810'), ('Marysville', 25315, '48.05950', '-122.15470'), ('Mill Creek', 0, '47.85770', '-122.20580'), ('Monroe', 13795, '47.85810', '-121.98180'), ('Mountlake Terrace', 20362, '47.79120', '-122.30660'), ('Mukilteo', 18019, '47.92680', '-122.30870'), ('Robe', 0, '48.09730', '-121.81350'), ('Shaker Church', 0, '48.05280', '-122.22710'), ('Silverton', 0, '48.07840', '-121.56710'), ('Smokey Point', 1556, '48.15040', '-122.19330'), ('Snohomish', 8494, '47.91950', '-122.09340'), ('Stanwood', 3923, '48.24320', '-122.34820'), ('Stanwood', 0, '48.24120', '-122.37070'), ('Stimson Crossing', 773, '48.10790', '-122.20700'), ('Sultan', 3344, '47.86460', '-121.80430'), ('Tulalip', 0, '48.06860', '-122.29060'), ('Verlot', 0, '48.09040', '-121.77730'), ('Weallup Lake', 882, '48.11040', '-122.30490')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAC063': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Airway Heights', 4500, '47.64440', '-117.58290'), ('Chattaroy', 3017, '47.88720', '-117.35400'), ('Cheney', 8832, '47.49060', '-117.57950'), ('Colbert', 6764, '47.82270', '-117.33780'), ('Deep Creek', 4357, '47.63920', '-117.70670'), ('Deer Park', 3017, '47.96330', '-117.43400'), ('Dishman', 10031, '47.65890', '-117.27550'), ('Elk', 3017, '48.00980', '-117.27200'), ('Fairchild AFB', 4357, '47.61310', '-117.64370'), ('Fairfield', 494, '47.38520', '-117.17400'), ('Four Lakes', 8832, '47.55680', '-117.58920'), ('Green Acres', 5158, '47.66360', '-117.16090'), ('Latah', 151, '47.28180', '-117.15430'), ('Liberty Lake', 4660, '47.65440', '-117.08250'), ('Marshall', 8832, '47.55900', '-117.49230'), ('Mead', 6764, '47.76720', '-117.35230'), ('Medical Lake', 3758, '47.57000', '-117.69210'), ('Mica', 9387, '47.55370', '-117.20670'), ('Milan', 3017, '47.96700', '-117.32570'), ('Millwood', 1649, '47.68570', '-117.27930'), ('Newman Lake', 6318, '47.77280', '-117.08970'), ('Opportunity', 25065, '47.64950', '-117.24050'), ('Otis Orchards', 6318, '47.70020', '-117.09010'), ('Plaza', 648, '47.31880', '-117.37630'), ('Rockford', 413, '47.45100', '-117.12920'), ('Spangle', 240, '47.43050', '-117.37880'), ('Spokane', 195629, '47.67230', '-117.41400'), ('Trentwood', 4388, '47.69790', '-117.21340'), ('Tum Tum', 283, '47.88830', '-117.67580'), ('Tyler', 3758, '47.43500', '-117.77620'), ('Valleyford', 25065, '47.52580', '-117.23620'), ('Veradale', 9387, '47.64950', '-117.20750'), ('Waverly', 121, '47.33950', '-117.22870')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAC065': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Addy', 2186, '48.35370', '-117.83520'), ('Arden', 4988, '48.45620', '-117.87180'), ('Cedonia', 389, '48.15230', '-118.16750'), ('Chewelah', 2186, '48.28600', '-117.72970'), ('Clayton', 3017, '47.99080', '-117.55500'), ('Colville', 4988, '48.54330', '-117.89510'), ('Evans', 117, '48.70820', '-118.02120'), ('Ford', 283, '47.90500', '-117.80280'), ('Fruitland', 389, '48.06930', '-118.19200'), ('Gifford', 389, '48.30380', '-118.14050'), ('Hunters', 389, '48.11680', '-118.20050'), ('Kettle Falls', 1527, '48.60600', '-118.05890'), ('Loon Lake', 283, '48.05700', '-117.62570'), ('Marcus', 117, '48.66320', '-118.05790'), ('Northport', 336, '48.91670', '-117.77830'), ('Orient', 117, '48.85970', '-118.20100'), ('Orin', 4988, '48.48800', '-117.90530'), ('Rice', 389, '48.42400', '-118.16820'), ('Springdale', 283, '48.05690', '-117.74630'), ('Valley', 2186, '48.17180', '-117.72080'), ('Wellpinit', 608, '47.88620', '-117.98550')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAC067': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bucoda', 628, '46.79820', '-122.86790'), ('Grand Mound', 1948, '46.81000', '-123.01270'), ('Lacey', 31226, '47.03310', '-122.80580'), ('Littlerock', 0, '46.90180', '-123.01790'), ('Maytown', 0, '46.89760', '-122.94350'), ('Nisqually', 0, '47.05670', '-122.70000'), ('Nisqually Indian', 588, '47.00590', '-122.66980'), ('Olympia', 0, '47.03790', '-122.90070'), ('Olympia', 42514, '47.04190', '-122.89380'), ('Rainier', 1492, '46.89050', '-122.68460'), ('Rochester', 1829, '46.82910', '-123.07070'), ('Tanglewilde-Thompson', 5670, '47.05250', '-122.77810'), ('Tenino', 1447, '46.85740', '-122.84740'), ('Tumwater', 12698, '46.99810', '-122.91790'), ('Yelm', 3289, '46.94570', '-122.60350')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAC069': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Altoona', 377, '46.26700', '-123.65000'), ('Cathlamet', 565, '46.20020', '-123.37960'), ('Deep River', 377, '46.34800', '-123.68500'), ('Grays River', 565, '46.35000', '-123.60000'), ('Pillar Rock', 565, '46.26660', '-123.58330'), ('Rosburg', 377, '46.33330', '-123.63330'), ('Skamokawa', 565, '46.26700', '-123.45000')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAC071': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Burbank', 3303, '46.19160', '-118.98160'), ('College Place', 7818, '46.04420', '-118.38360'), ('Garrett', 1022, '46.06140', '-118.38330'), ('Prescott', 314, '46.29910', '-118.31150'), ('Waitsburg', 1212, '46.26910', '-118.15040'), ('Walla Walla', 29686, '46.06690', '-118.34120'), ('Walla Walla East', 2479, '46.05450', '-118.30260')], 'partOfState': 'southeast', 'wfo': 'PDT'}, +'WAC073': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Acme', 0, '48.71710', '-122.20520'), ('Bellingham', 67171, '48.74400', '-122.46690'), ('Birch Bay', 0, '48.91790', '-122.74460'), ('Deming', 0, '48.82570', '-122.21600'), ('Diablo', 0, '48.71350', '-121.14120'), ('Everson', 2035, '48.91480', '-122.35090'), ('Ferndale', 8758, '48.85090', '-122.58720'), ('Glacier', 0, '48.89010', '-121.94570'), ('Lawrence', 0, '48.85760', '-122.29350'), ('Lynden', 9020, '48.94840', '-122.45610'), ('Maple Falls', 0, '48.92430', '-122.07700'), ('Marietta', 0, '48.78710', '-122.58050'), ('Mount Baker', 0, '48.86360', '-121.67720'), ('Newhalem', 0, '48.67370', '-121.24730'), ('Nooksack', 851, '48.92840', '-122.32120'), ('Point Roberts', 0, '48.98560', '-123.07670'), ('Sudden Valley', 4165, '48.72080', '-122.34470'), ('Van Zandt', 0, '48.78900', '-122.19180'), ('Wickersham', 0, '48.65510', '-122.21290')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAC075': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Albion', 616, '46.79250', '-117.24950'), ('Belmont', 641, '47.08620', '-117.15680'), ('Colfax', 2844, '46.88410', '-117.36270'), ('Colton', 386, '46.56840', '-117.12700'), ('Diamond', 2844, '46.91750', '-117.48580'), ('Dusty', 621, '46.80620', '-117.65050'), ('Endicott', 621, '46.92890', '-117.68500'), ('Ewen', 548, '47.11680', '-117.73370'), ('Farmington', 153, '47.08890', '-117.04510'), ('Garfield', 641, '47.00840', '-117.14070'), ('Hay', 380, '46.67400', '-117.90880'), ('La Crosse', 380, '46.81440', '-117.87900'), ('Lamont', 106, '47.20060', '-117.90350'), ('Malden', 215, '47.23130', '-117.47190'), ('Oakesdale', 420, '47.13090', '-117.24550'), ('Palouse', 1011, '46.91110', '-117.07380'), ('Pine City', 215, '47.20150', '-117.52070'), ('Pullman', 24675, '46.73330', '-117.16200'), ('Rosalia', 648, '47.23700', '-117.36790'), ('Steptoe', 2844, '47.00370', '-117.35300'), ('St. John', 548, '47.08880', '-117.58110'), ('Tekoa', 826, '47.22560', '-117.07330'), ('Thornton', 648, '47.11920', '-117.38650'), ('Uniontown', 345, '46.53740', '-117.08460'), ('Winona', 621, '46.94080', '-117.79300')], 'partOfState': 'eastern', 'wfo': 'OTX'}, +'WAC077': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Fairview-Sumach', 2749, '46.58780', '-120.47460'), ('Fruitvale', 4125, '46.61720', '-120.54170'), ('Grandview', 8377, '46.24440', '-119.91080'), ('Granger', 2530, '46.34280', '-120.18960'), ('Harrah', 542, '46.40430', '-120.54130'), ('Mabton', 1891, '46.21290', '-119.99560'), ('Moxee', 821, '46.56340', '-120.39880'), ('Naches', 643, '46.72950', '-120.69730'), ('Satus', 746, '46.23200', '-120.11840'), ('Selah', 6310, '46.65620', '-120.53390'), ('South Broadway', 2735, '46.56640', '-120.51560'), ('Sunnyside', 13905, '46.32100', '-120.01250'), ('Terrace Heights', 6447, '46.60600', '-120.43770'), ('Tieton', 1154, '46.70180', '-120.75290'), ('Toppenish', 8946, '46.38110', '-120.31150'), ('Union Gap', 5621, '46.55510', '-120.48740'), ('Wapato', 4582, '46.44570', '-120.42070'), ('West Valley', 10433, '46.59230', '-120.60400'), ('White Swan', 3033, '46.38820', '-120.72080'), ('Yakima', 71845, '46.59260', '-120.52890'), ('Zillah', 2198, '46.40370', '-120.25950')], 'partOfState': 'south central', 'wfo': 'PDT'}, +'WIC001': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Adams', 1914, '43.95530', '-89.81690'), ('Arkdale', 698, '44.03288', '-89.88271'), ('Big Flats', 698, '44.11878', '-89.80230'), ('Big Spring', 536, '43.66737', '-89.63416'), ('Brooks', 536, '43.81906', '-89.63416'), ('Dellwood', 888, '43.96892', '-89.95581'), ('Friendship', 698, '43.97180', '-89.82000'), ('Grand Marsh', 1914, '43.89947', '-89.71275'), ('Monroe Center', 888, '44.11878', '-89.94850'), ('New Rome', 2590, '44.23574', '-89.88454'), ('Plainville', 458, '43.71671', '-89.81509'), ('Strongs Prairie', 888, '44.07126', '-89.98323'), ('White Creek', 1914, '43.83551', '-89.86444')], 'partOfState': 'central', 'wfo': 'ARX'}, +'WIC003': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Ashland', 8620, '46.58020', '-90.87410'), ('Butternut', 407, '46.01370', '-90.49770'), ('Clam Lake', 845, '46.15580', '-90.91690'), ('Glidden', 407, '46.13500', '-90.57860'), ('High Bridge', 845, '46.38890', '-90.73630'), ('Marengo', 8620, '46.42250', '-90.81690'), ('Mellen', 845, '46.32330', '-90.66110'), ('Morse', 845, '46.22230', '-90.62770'), ('Odanah', 254, '46.60450', '-90.68350'), ('Sanborn', 8620, '46.43340', '-90.90950')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIC005': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Almena', 720, '45.41450', '-92.03650'), ('Arland', 744, '45.33800', '-92.02200'), ('Barron', 3248, '45.40060', '-91.84650'), ('Cameron', 1546, '45.40330', '-91.74340'), ('Chetek', 2180, '45.31600', '-91.65310'), ('Cumberland', 2280, '45.53590', '-92.02320'), ('Dallas', 356, '45.25810', '-91.81470'), ('Haugen', 287, '45.60780', '-91.77840'), ('Prairie Farm', 508, '45.23760', '-91.98080'), ('Reeve', 795, '45.23800', '-92.12300'), ('Rice Lake', 8320, '45.49690', '-91.73920'), ('Turtle Lake', 1065, '45.39240', '-92.14130')], 'partOfState': 'northwest', 'wfo': 'MPX'}, +'WIC007': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Barksdale', 2280, '46.62150', '-90.93220'), ('Bayfield', 611, '46.81160', '-90.82140'), ('Benoit', 72, '46.50190', '-91.07690'), ('Cable', 948, '46.19890', '-91.30470'), ('Drummond', 72, '46.33080', '-91.25780'), ('Grand View', 72, '46.36760', '-91.10830'), ('Herbster', 2280, '46.83250', '-91.26110'), ('Ino', 72, '46.53090', '-91.17890'), ('Iron River', 1015, '46.56450', '-91.40830'), ('Mason', 72, '46.43550', '-91.06230'), ('Moquah', 72, '46.57050', '-91.08330'), ('Namekagon', 72, '46.21280', '-91.04550'), ('Oulu', 1015, '46.63300', '-91.53200'), ('Port Wing', 3651, '46.77480', '-91.38660'), ('Red Cliff', 611, '46.85560', '-90.78800'), ('Sand Bay', 611, '46.93480', '-90.89120'), ('Washburn', 2280, '46.67390', '-90.89330')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIC009': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Allouez', 15443, '44.46000', '-87.98000'), ('Anston', 13546, '44.61000', '-88.15000'), ('Ashwaubenon', 17634, '44.46000', '-88.08000'), ('Askeaton', 1934, '44.26000', '-88.11000'), ('Bellevue', 11828, '44.43000', '-87.91000'), ('Champion', 1935, '44.58000', '-87.80000'), ('Denmark', 1958, '44.34000', '-87.83000'), ('De Pere', 20559, '44.45000', '-88.05000'), ('Flintville', 13546, '44.65000', '-88.11000'), ('Green Bay', 102313, '44.51000', '-88.00000'), ('Greenleaf', 1934, '44.31000', '-88.09000'), ('Holland', 1934, '44.25000', '-88.16000'), ('Howard', 13546, '44.56000', '-88.06000'), ('Humboldt', 1935, '44.50000', '-87.83000'), ('Kunesh', 3060, '44.61000', '-88.18000'), ('Langes Corners', 1958, '44.38000', '-87.86000'), ('Lark', 1958, '44.31000', '-87.94000'), ('Morrison', 1187, '44.29000', '-87.98000'), ('New Franken', 1935, '44.53000', '-87.83000'), ('Oneida', 1070, '44.50000', '-88.19000'), ('Poland', 1958, '44.43000', '-87.83000'), ('Pulaski', 3060, '44.66000', '-88.23000'), ('Shirley', 1958, '44.34000', '-87.94000'), ('Suamico', 13546, '44.63000', '-88.05000'), ('Wayside', 1187, '44.25000', '-87.94000'), ('Wrightstown', 1934, '44.33000', '-88.16000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC011': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alma', 942, '44.33100', '-91.92220'), ('Buffalo', 1040, '44.22350', '-91.86940'), ('Cochrane', 435, '44.22880', '-91.83660'), ('Cream', 435, '44.31615', '-91.76509'), ('Dodge', 25399, '44.13340', '-91.56223'), ('Fountain City', 983, '44.11980', '-91.69780'), ('Gilmanton', 2634, '44.46418', '-91.68285'), ('Marshland', 25399, '44.08223', '-91.56041'), ('Maxville', 1968, '44.56470', '-92.00267'), ('Misha Mokwa', 395, '44.51536', '-92.00267'), ('Modena', 942, '44.45139', '-91.79982'), ('Mondovi', 2634, '44.56890', '-91.66950'), ('Montana', 2402, '44.34905', '-91.66640'), ('Nelson', 395, '44.42360', '-92.00490'), ('Praag', 435, '44.38194', '-91.75047'), ('Tell', 942, '44.38194', '-91.86744'), ('Urne', 395, '44.50074', '-91.90033'), ('Waumandee', 435, '44.29788', '-91.69930')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIC013': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alpha', 1369, '45.77350', '-92.58030'), ('Branstad', 1369, '45.73810', '-92.68290'), ('Danbury', 653, '46.00670', '-92.37130'), ('Falun', 1262, '45.77220', '-92.52810'), ('Four Corners', 1262, '45.67200', '-92.59110'), ('Grantsburg', 1369, '45.78060', '-92.68450'), ('Hertel', 653, '45.80860', '-92.17530'), ('Randall', 1040, '45.69620', '-92.83570'), ('Riverside', 653, '46.07640', '-92.24780'), ('Siren', 988, '45.78370', '-92.38000'), ('Trade Lake', 1369, '45.68980', '-92.59300'), ('Trade River', 1369, '45.64830', '-92.67320'), ('Webb Lake', 653, '46.00950', '-92.13280'), ('Webster', 653, '45.87860', '-92.36200'), ('Yellowlake', 653, '45.93580', '-92.37810')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIC015': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Brillion', 2937, '44.18000', '-88.06000'), ('Brothertown', 649, '43.96000', '-88.30000'), ('Central Lake Winnebago', 649, '44.08000', '-88.40000'), ('Charlesburg', 3301, '43.96000', '-88.16000'), ('Chilton', 3708, '44.03000', '-88.16000'), ('Darboy', 70087, '44.23000', '-88.38000'), ('Dundas', 12983, '44.23000', '-88.19000'), ('Forest Junction', 1089, '44.21000', '-88.15000'), ('Hayton', 3708, '44.01000', '-88.11000'), ('High Cliff State Park', 837, '44.16000', '-88.28000'), ('Hilbert', 1089, '44.13000', '-88.16000'), ('Jericho', 3708, '43.96000', '-88.26000'), ('New Holstein', 3301, '43.95000', '-88.08000'), ('Northern Lake Winnebago', 16331, '44.17000', '-88.40000'), ('Potter', 223, '44.11000', '-88.09000'), ('Quinney', 649, '44.01000', '-88.30000'), ('St Anna', 3301, '43.90000', '-88.13000'), ('St John', 1089, '44.16000', '-88.19000'), ('Stockbridge', 649, '44.06000', '-88.30000')], 'partOfState': 'east central', 'wfo': 'GRB'}, +'WIC017': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bloomer', 3347, '45.10250', '-91.49080'), ('Boyd', 680, '44.95350', '-91.04010'), ('Cadott', 1345, '44.95120', '-91.15120'), ('Chippewa Falls', 12925, '44.93250', '-91.39120'), ('Cornell', 1466, '45.16250', '-91.15230'), ('Lake Wissota', 2458, '44.92020', '-91.30250'), ('New Auburn', 562, '45.19810', '-91.56500'), ('Stanley', 1898, '44.96250', '-90.94280'), ('Tilden', 1294, '45.00700', '-91.43700')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIC019': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Abbotsford', 1956, '44.94830', '-90.31870'), ('Atwood', 198, '44.88269', '-90.48398'), ('Chili', 1550, '44.63049', '-90.35057'), ('Christie', 2731, '44.64877', '-90.59729'), ('Colby', 1616, '44.90890', '-90.31690'), ('Curtiss', 198, '44.95390', '-90.43520'), ('Dorchester', 827, '45.00230', '-90.33330'), ('Eidsvold', 1536, '44.95031', '-90.86594'), ('Globe', 2731, '44.65060', '-90.66490'), ('Granton', 1550, '44.58850', '-90.46200'), ('Greenwood', 1079, '44.76540', '-90.59880'), ('Humbird', 564, '44.53180', '-90.90066'), ('Junction', 1898, '45.01428', '-90.90066'), ('Lake Arbutus', 585, '44.42946', '-90.69963'), ('Longwood', 508, '44.88269', '-90.60094'), ('Loyal', 1308, '44.73610', '-90.49640'), ('Lynn', 1550, '44.58298', '-90.41636'), ('Neillsville', 2731, '44.56040', '-90.59090'), ('Nevins', 1550, '44.49891', '-90.36701'), ('Owen', 936, '44.94940', '-90.56780'), ('Reseburg', 1536, '44.91559', '-90.76725'), ('Riplinger', 368, '44.82970', '-90.39991'), ('Sherwood', 1550, '44.43129', '-90.35239'), ('Shortville', 2731, '44.49708', '-90.51687'), ('Sidney', 2731, '44.54825', '-90.65211'), ('Thorp', 1536, '44.95980', '-90.80090'), ('Tioga', 564, '44.68166', '-90.78187'), ('Veefkind', 1932, '44.69811', '-90.38712'), ('Willard', 1079, '44.72918', '-90.73435'), ('Withee', 508, '44.95280', '-90.59700')], 'partOfState': 'central', 'wfo': 'ARX'}, +'WIC021': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arlington', 484, '43.33850', '-89.37660'), ('Cambria', 792, '43.54090', '-89.11380'), ('Columbus', 4479, '43.33570', '-89.02840'), ('Doylestown', 328, '43.42760', '-89.14620'), ('Fall River', 1097, '43.38510', '-89.04770'), ('Friesland', 298, '43.58900', '-89.06780'), ('Lake Wisconsin', 3493, '43.37350', '-89.57560'), ('Lodi', 2882, '43.31640', '-89.53210'), ('Pardeeville', 1982, '43.53410', '-89.30030'), ('Portage', 9728, '43.54790', '-89.46590'), ('Poynette', 2266, '43.39080', '-89.40820'), ('Rio', 938, '43.45030', '-89.23770'), ('Wisconsin Dells', 2418, '43.62640', '-89.77790'), ('Wyocena', 668, '43.49310', '-89.31000')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC023': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Barnum', 177, '43.21231', '-90.83487'), ('Bell Center', 116, '43.29200', '-90.82540'), ('Bridgeport', 6018, '43.00214', '-91.05417'), ('Clayton', 507, '43.38227', '-90.71608'), ('Eastman', 437, '43.16230', '-91.02030'), ('Fairview', 215, '43.36217', '-90.95000'), ('Ferryville', 174, '43.34320', '-91.08350'), ('Gays Mills', 625, '43.32010', '-90.85040'), ('Lynxville', 176, '43.24800', '-91.04790'), ('Mount Sterling', 215, '43.31430', '-90.93060'), ('Plugtown', 3047, '43.21414', '-90.74897'), ('Prairie Du Chien', 6018, '43.04320', '-91.14000'), ('Rising Sun', 215, '43.41517', '-90.96645'), ('Rolling Ground', 653, '43.33110', '-90.73252'), ('Seneca', 215, '43.26531', '-90.96645'), ('Soldiers Grove', 653, '43.39240', '-90.77360'), ('Steuben', 177, '43.18120', '-90.85730'), ('Wauzeka', 768, '43.08440', '-90.89550')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIC025': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Belleville', 1908, '42.86170', '-89.53650'), ('Black Earth', 1320, '43.13660', '-89.74610'), ('Blue Mounds', 708, '43.02070', '-89.82620'), ('Cambridge', 1101, '43.00720', '-89.01870'), ('Cottage Grove', 4059, '43.08500', '-89.20230'), ('Cross Plains', 3084, '43.11390', '-89.64620'), ('Dane', 799, '43.25040', '-89.50040'), ('Deerfield', 1971, '43.05140', '-89.07430'), ('De Forest', 7368, '43.24580', '-89.34580'), ('Fitchburg', 20501, '42.98600', '-89.42510'), ('Madison', 208054, '43.08333', '-89.38333'), ('Maple Bluff', 1358, '43.10980', '-89.36940'), ('Marshall', 3432, '43.17250', '-89.06410'), ('Mazomanie', 1485, '43.17440', '-89.79480'), ('McFarland', 6416, '43.01890', '-89.29390'), ('Middleton', 15770, '43.10290', '-89.50630'), ('Monona', 8018, '43.05440', '-89.33320'), ('Mount Horeb', 5860, '43.00910', '-89.73360'), ('Oregon', 7514, '42.92630', '-89.38210'), ('Rockdale', 214, '42.97250', '-89.03260'), ('Shorewood Hills', 1732, '43.07770', '-89.44650'), ('Stoughton', 12354, '42.92110', '-89.22280'), ('Sun Prairie', 20369, '43.18370', '-89.23230'), ('Verona', 7052, '42.98880', '-89.53540'), ('Waunakee', 8995, '43.18660', '-89.45200'), ('Windsor', 2533, '43.21670', '-89.34210')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC027': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Beaver Dam', 15169, '43.46400', '-88.83720'), ('Brownsville', 570, '43.61570', '-88.49130'), ('Clyman', 388, '43.31210', '-88.71930'), ('Fox Lake', 1454, '43.56340', '-88.91260'), ('Horicon', 3775, '43.44490', '-88.63710'), ('Hustisford', 1135, '43.34550', '-88.60360'), ('Iron Ridge', 998, '43.39760', '-88.53210'), ('Juneau', 2485, '43.40630', '-88.70330'), ('Kekoskee', 169, '43.52760', '-88.56170'), ('Lomira', 2233, '43.58890', '-88.44470'), ('Lowell', 366, '43.33780', '-88.82090'), ('Mayville', 4902, '43.49820', '-88.54620'), ('Neosho', 593, '43.30970', '-88.51780'), ('Randolph', 1869, '43.53780', '-89.00220'), ('Reeseville', 703, '43.30590', '-88.84510'), ('Theresa', 1252, '43.51780', '-88.45270'), ('Waupun', 10718, '43.63160', '-88.73570')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC029': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Baileys Harbor', 353, '45.06000', '-87.13000'), ('Brussels', 429, '44.73000', '-87.63000'), ('Carlsville', 250, '44.95000', '-87.34000'), ('Chambers Island', 250, '45.18000', '-87.35000'), ('Clay Banks', 9176, '44.71000', '-87.36000'), ('Egg Harbor', 250, '45.04000', '-87.28000'), ('Ellison Bay', 886, '45.25000', '-87.06000'), ('Ephraim', 353, '45.15000', '-87.16000'), ('Fish Creek', 353, '45.13000', '-87.23000'), ('Forestville', 429, '44.68000', '-87.50000'), ('Gills Rock', 886, '45.28000', '-87.01000'), ('Institute', 9176, '44.90000', '-87.30000'), ('Kolberg', 429, '44.71000', '-87.56000'), ('Little Sturgeon', 429, '44.84000', '-87.57000'), ('Maplewood', 429, '44.75000', '-87.48000'), ('Peninsula State Park', 353, '45.16000', '-87.21000'), ('Sister Bay', 886, '45.18000', '-87.11000'), ('Valmy', 9176, '44.90000', '-87.26000'), ('Washington Island', 0, '45.37721', '-86.90095'), ('Whitefish Dunes State Park', 250, '44.92000', '-87.21000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC031': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bennett', 576, '46.44930', '-91.85050'), ('Blueberry', 1015, '46.58030', '-91.66880'), ('Brule', 1015, '46.55310', '-91.57670'), ('Chaffey', 358, '46.39830', '-92.16360'), ('Cloverland', 552, '46.67710', '-91.67960'), ('Cozy Corner', 653, '46.16490', '-92.23830'), ('Dairyland', 531, '46.21620', '-92.15550'), ('Foxboro', 296, '46.48190', '-92.28280'), ('Gordon', 576, '46.24700', '-91.79860'), ('Hawthorne', 552, '46.50310', '-91.86080'), ('Lake Nebagamon', 1015, '46.50780', '-91.69450'), ('Maple', 552, '46.58980', '-91.72080'), ('Moose Junction', 576, '46.28760', '-92.15550'), ('Oliver', 358, '46.64990', '-92.18990'), ('Patzau', 358, '46.49150', '-92.22080'), ('Poplar', 552, '46.58190', '-91.78780'), ('Solon Springs', 576, '46.34940', '-91.82000'), ('Superior', 27368, '46.69690', '-92.05960'), ('Waino', 1015, '46.63980', '-91.57370'), ('Wascott', 531, '46.17250', '-91.79830'), ('Wentworth', 552, '46.60010', '-91.83610')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIC033': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Boyceville', 1043, '45.04260', '-92.03990'), ('Cedar Falls', 1667, '44.93500', '-91.88000'), ('Colfax', 1136, '44.99690', '-91.72590'), ('Downing', 257, '45.04850', '-92.12410'), ('Downsville', 1610, '44.77400', '-91.93100'), ('Elk Mound', 785, '44.87510', '-91.68770'), ('Knapp', 421, '44.95410', '-92.07690'), ('Menomonie', 14937, '44.88790', '-91.91400'), ('Ridgeland', 265, '45.20220', '-91.89740'), ('Tainter Lake', 2089, '44.98930', '-91.84760'), ('Weston', 661, '44.81200', '-92.07100'), ('Wheeler', 317, '45.04370', '-91.90550')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIC035': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Altoona', 6698, '44.80510', '-91.44200'), ('Augusta', 1460, '44.67870', '-91.12120'), ('Eau Claire', 61704, '44.82120', '-91.49230'), ('Fairchild', 564, '44.60550', '-90.95640'), ('Fall Creek', 1236, '44.76210', '-91.27400')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIC037': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Aurora', 5480, '45.78000', '-88.09000'), ('Commonwealth', 5480, '45.91000', '-88.23000'), ('Fence', 219, '45.75000', '-88.43000'), ('Florence', 219, '45.93000', '-88.25000'), ('Long Lake', 376, '45.83000', '-88.66000'), ('Spread Eagle', 5480, '45.88000', '-88.13000'), ('Tipler', 376, '45.91000', '-88.63000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC039': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Brandon', 912, '43.73740', '-88.78380'), ('Campbellsport', 1913, '43.59940', '-88.28130'), ('Eden', 687, '43.69240', '-88.36280'), ('Fairwater', 350, '43.74110', '-88.86880'), ('Fond Du Lac', 42203, '43.78333', '-88.45000'), ('Mount Calvary', 956, '43.82650', '-88.24680'), ('North Fond Du Lac', 4557, '43.80900', '-88.48330'), ('Oakfield', 1012, '43.68460', '-88.54690'), ('Ripon', 6828, '43.84580', '-88.84160'), ('Rosendale', 923, '43.80830', '-88.67580'), ('St. Cloud', 497, '43.82260', '-88.16730')], 'partOfState': 'east central', 'wfo': 'MKX'}, +'WIC041': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alvin', 1281, '46.01000', '-88.81000'), ('Argonne', 1961, '45.66000', '-88.88000'), ('Armstrong Creek', 5480, '45.65000', '-88.44000'), ('Blackwell', 1961, '45.51000', '-88.61000'), ('Carter', 329, '45.39000', '-88.63000'), ('Cavour', 1961, '45.65000', '-88.63000'), ('Crandon', 1961, '45.56000', '-88.90000'), ('Hiles', 1961, '45.71000', '-88.98000'), ('Laona', 1961, '45.56000', '-88.68000'), ('Mole Lake', 1961, '45.48000', '-89.00000'), ('Nashville', 1961, '45.51000', '-89.03000'), ('Newald', 1961, '45.73000', '-88.69000'), ('Wabeno', 1961, '45.43000', '-88.66000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC043': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bagley', 339, '42.90360', '-91.09820'), ('Beetown', 701, '42.79746', '-90.88421'), ('Bloomington', 701, '42.89210', '-90.92730'), ('Blue River', 429, '43.18620', '-90.57240'), ('Boscobel', 3047, '43.13960', '-90.70460'), ('Burton', 64, '42.71522', '-90.81842'), ('Cassville', 1085, '42.71560', '-90.99040'), ('Castle Rock', 663, '43.04600', '-90.53332'), ('Cuba City', 2156, '42.60310', '-90.43130'), ('Dickeyville', 1043, '42.62580', '-90.59210'), ('Ellenboro', 4070, '42.78101', '-90.61922'), ('Fennimore', 2387, '42.98060', '-90.65060'), ('Georgetown', 2156, '42.61653', '-90.48398'), ('Glen Haven', 2257, '42.83035', '-91.06879'), ('Hazel Green', 1183, '42.53430', '-90.43560'), ('Hurricane', 4070, '42.78101', '-90.76725'), ('Kieler', 1043, '42.58363', '-90.59911'), ('Lancaster', 4070, '42.84850', '-90.70800'), ('Livingston', 597, '42.90070', '-90.43370'), ('Millville', 768, '43.03138', '-90.93356'), ('Montfort', 663, '42.97020', '-90.43290'), ('Mount Hope', 186, '42.96970', '-90.85860'), ('Muscoda', 1453, '43.18730', '-90.43420'), ('North Andover', 701, '42.81573', '-90.96828'), ('Patch Grove', 166, '42.93930', '-90.97270'), ('Platteville', 9989, '42.73520', '-90.47690'), ('Port Andrew', 429, '43.20500', '-90.56804'), ('Potosi', 711, '42.68940', '-90.71100'), ('Preston', 2387, '42.96559', '-90.54794'), ('Sinsinawa', 187, '42.51601', '-90.53332'), ('Stitzer', 2387, '42.91442', '-90.63384'), ('Tennyson', 370, '42.68970', '-90.68660'), ('Union', 9989, '42.83218', '-90.51687'), ('Werley', 96, '43.01493', '-90.76725'), ('Woodman', 96, '43.09080', '-90.79790')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIC045': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Albany', 1191, '42.70700', '-89.43680'), ('Brodhead', 3180, '42.61670', '-89.37620'), ('Brooklyn', 916, '42.85290', '-89.37220'), ('Browntown', 252, '42.57790', '-89.79140'), ('Monroe', 10843, '42.59980', '-89.64380'), ('Monticello', 1146, '42.74580', '-89.58970'), ('New Glarus', 2111, '42.81320', '-89.63460')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC047': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Berlin', 5305, '43.97000', '-88.95020'), ('Green Lake', 1100, '43.84270', '-88.95570'), ('Kingston', 288, '43.69360', '-89.13130'), ('Markesan', 1396, '43.70920', '-88.98970'), ('Marquette', 169, '43.74220', '-89.13880'), ('Princeton', 1504, '43.85220', '-89.12950')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC049': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arena', 685, '43.16330', '-89.91320'), ('Avoca', 608, '43.18820', '-90.32520'), ('Barneveld', 1088, '43.01450', '-89.89590'), ('Cobb', 442, '42.96530', '-90.32930'), ('Dodgeville', 4220, '42.96380', '-90.13000'), ('Highland', 855, '43.04640', '-90.37900'), ('Hollandale', 283, '42.87610', '-89.93330'), ('Linden', 615, '42.91920', '-90.27400'), ('Mineral Point', 2617, '42.86190', '-90.18310'), ('Rewey', 311, '42.84190', '-90.39630'), ('Ridgeway', 689, '42.99920', '-89.99220')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC051': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Cedar', 254, '46.50780', '-90.49860'), ('Gile', 838, '46.42840', '-90.22520'), ('Gurney', 845, '46.47320', '-90.50850'), ('Hurley', 1818, '46.44430', '-90.19650'), ('Iron Belt', 838, '46.40070', '-90.32440'), ('Kimball', 838, '46.48180', '-90.30640'), ('Manitowish', 1646, '46.13310', '-90.01360'), ('Mercer', 1646, '46.16570', '-90.06280'), ('Montreal', 838, '46.43050', '-90.23880'), ('Pence', 838, '46.41520', '-90.27160'), ('Saxon', 838, '46.49350', '-90.41500'), ('Upson', 838, '46.36930', '-90.40690'), ('Van Buskirk', 6849, '46.38720', '-90.14360')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIC053': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alma Center', 446, '44.43660', '-90.91300'), ('Black River Falls', 3618, '44.29870', '-90.84700'), ('Disco', 446, '44.26864', '-90.99935'), ('Fall Hall Glen', 3618, '44.21564', '-90.83487'), ('Franklin', 513, '44.21564', '-91.11631'), ('Hatfield', 585, '44.41667', '-90.73070'), ('Hixton', 446, '44.38400', '-91.01110'), ('Irving', 529, '44.18640', '-90.89883'), ('Levis', 1669, '44.53729', '-91.09986'), ('Melrose', 529, '44.13200', '-90.99680'), ('Merrillan', 585, '44.45100', '-90.83660'), ('Millston', 286, '44.19919', '-90.64846'), ('North Bend', 529, '44.09867', '-91.11814'), ('North Branch', 446, '44.45139', '-91.00117'), ('Northfield', 388, '44.46601', '-91.09986'), ('Pray', 2731, '44.36915', '-90.49860'), ('Price', 564, '44.57932', '-91.05052'), ('Requa', 1669, '44.58115', '-91.13367'), ('Shamrock', 3618, '44.18091', '-90.79832'), ('Taylor', 513, '44.32210', '-91.12120'), ('Vaudreuil', 3618, '44.31067', '-90.81111'), ('York', 388, '44.43494', '-91.13459')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIC055': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Fort Atkinson', 11621, '42.92670', '-88.84150'), ('Jefferson', 7338, '43.00640', '-88.80810'), ('Johnson Creek', 1581, '43.07980', '-88.77390'), ('Lake Mills', 4843, '43.07400', '-88.90800'), ('Lake Ripley', 1603, '43.00570', '-88.98610'), ('Palmyra', 1766, '42.87900', '-88.58810'), ('Sullivan', 688, '43.01250', '-88.58950'), ('Waterloo', 3259, '43.18300', '-88.98990'), ('Watertown', 21598, '43.19160', '-88.72490')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC057': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Buckhorn State Park', 888, '43.91775', '-89.97774'), ('Camp Douglas', 592, '43.91890', '-90.26890'), ('Cloverdale', 888, '44.01643', '-90.18243'), ('Cutler', 592, '44.01826', '-90.23543'), ('Elroy', 1578, '43.74270', '-90.27240'), ('Finley', 888, '44.21746', '-90.13309'), ('Hustler', 113, '43.87930', '-90.26820'), ('Lemonweir', 3740, '43.78251', '-90.01247'), ('Lyndon Station', 458, '43.71010', '-89.89440'), ('Mather', 146, '44.14985', '-90.29574'), ('Mauston', 3740, '43.80060', '-90.08110'), ('Meadow Valley', 866, '44.22112', '-90.21533'), ('Necedah', 888, '44.02460', '-90.07170'), ('New Lisbon', 1436, '43.87860', '-90.16470'), ('New Miner', 888, '44.16629', '-90.03257'), ('Sprague', 888, '44.14985', '-90.13309'), ('Union Center', 214, '43.68410', '-90.26320'), ('Wonewoc', 834, '43.65310', '-90.22400')], 'partOfState': 'central', 'wfo': 'ARX'}, +'WIC059': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Camp Lake', 3255, '42.53070', '-88.14590'), ('Kenosha', 90352, '42.58333', '-87.81667'), ('Paddock Lake', 3012, '42.57150', '-88.10240'), ('Pleasant Prairie', 16136, '42.55000', '-87.93333'), ('Powers Lake', 1500, '42.54260', '-88.30140'), ('Silver Lake', 2341, '42.55170', '-88.16760'), ('Twin Lakes', 5124, '42.51880', '-88.25880')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC061': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alaska', 2806, '44.53000', '-87.50000'), ('Casco', 572, '44.56000', '-87.61000'), ('Duvall', 1935, '44.66000', '-87.69000'), ('Dyckesville', 1935, '44.65000', '-87.75000'), ('Ellisville', 1935, '44.46000', '-87.68000'), ('Euren', 572, '44.61000', '-87.59000'), ('Lincoln', 572, '44.61000', '-87.63000'), ('Luxemburg', 1935, '44.54000', '-87.69000'), ('Neuern', 1935, '44.50000', '-87.71000'), ('Norman', 2806, '44.36000', '-87.59000'), ('Pilsen', 1935, '44.45000', '-87.71000'), ('Rankin', 3357, '44.59000', '-87.50000'), ('Rio Creek', 3357, '44.58000', '-87.53000'), ('Rosiere', 572, '44.66000', '-87.59000'), ('Rostok', 2806, '44.50000', '-87.50000'), ('Slovan', 572, '44.53000', '-87.58000'), ('Stangelville', 1935, '44.40000', '-87.68000'), ('Tisch Mills', 1422, '44.33000', '-87.61000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC063': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bangor', 1400, '43.89200', '-90.99110'), ('Barre Mills', 4540, '43.83551', '-91.11631'), ('Brice Prairie', 1804, '43.93870', '-91.29970'), ('Burns', 1400, '43.95247', '-90.98107'), ('Burr Oak', 529, '44.05116', '-91.04686'), ('Council Bay', 1427, '44.05116', '-91.28262'), ('French Island', 4410, '43.85830', '-91.26030'), ('Holmen', 6200, '43.95690', '-91.25900'), ('La Crosse', 51818, '43.82690', '-91.23390'), ('Medary', 14839, '43.86840', '-91.20038'), ('Middle Ridge', 1400, '43.80078', '-90.94818'), ('Mindoro', 4540, '44.01826', '-91.09986'), ('New Amsterdam', 1804, '43.98537', '-91.31734'), ('Newburg Corners', 714, '43.78251', '-90.98290'), ('Onalaska', 14839, '43.88710', '-91.21880'), ('Rockland', 628, '43.90610', '-90.91820'), ('Stevenstown', 6200, '44.03654', '-91.16748'), ('St Joseph', 714, '43.78616', '-91.03224'), ('West Salem', 4540, '43.89860', '-91.08170')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIC065': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Argyle', 823, '42.70060', '-89.86620'), ('Belmont', 871, '42.73800', '-90.33260'), ('Benton', 976, '42.57090', '-90.38220'), ('Blanchardville', 806, '42.80930', '-89.86060'), ('Darlington', 2418, '42.68050', '-90.11700'), ('Gratiot', 252, '42.57950', '-90.02290'), ('Shullsburg', 1246, '42.57310', '-90.23150'), ('South Wayne', 484, '42.56670', '-89.88040')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC067': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Antigo', 8560, '45.15000', '-89.15000'), ('Bryant', 8560, '45.20000', '-89.01000'), ('Deerbrook', 8560, '45.23000', '-89.16000'), ('Elcho', 8560, '45.43000', '-89.18000'), ('Elmhurst', 272, '45.06000', '-89.18000'), ('Elton', 329, '45.15000', '-88.84000'), ('Hollister', 329, '45.25000', '-88.80000'), ('Kempster', 8560, '45.28000', '-89.16000'), ('Langlade', 329, '45.18000', '-88.73000'), ('Lily', 329, '45.29000', '-88.84000'), ('Neva', 8560, '45.23000', '-89.11000'), ('Parrish', 7735, '45.41000', '-89.40000'), ('Pearson', 1961, '45.36000', '-89.01000'), ('Phlox', 466, '45.04000', '-89.01000'), ('Pickerel', 1961, '45.36000', '-88.91000'), ('Polar', 8560, '45.16000', '-89.00000'), ('Post Lake', 1961, '45.43000', '-89.08000'), ('Summit Lake', 8560, '45.38000', '-89.19000'), ('White Lake', 329, '45.16000', '-88.76000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIC069': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bloomville', 10146, '45.29000', '-89.53000'), ('Bradley', 3770, '45.53000', '-89.75000'), ('Doering', 10146, '45.23000', '-89.46000'), ('Gleason', 10146, '45.30000', '-89.50000'), ('Harrison', 7735, '45.48000', '-89.50000'), ('Heafford Junction', 3770, '45.54000', '-89.71000'), ('Irma', 3770, '45.34000', '-89.66000'), ('Jeffris', 7735, '45.50000', '-89.43000'), ('Merrill', 10146, '45.18000', '-89.68000'), ('Pine River', 10146, '45.13000', '-89.64000'), ('Spirit Falls', 3770, '45.45000', '-89.98000'), ('Tomahawk', 3770, '45.46000', '-89.73000'), ('Tripoli', 3770, '45.55000', '-90.00000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIC071': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Branch', 681, '44.15000', '-87.76000'), ('Cato', 730, '44.15000', '-87.86000'), ('Clarks Mills', 948, '44.08000', '-87.86000'), ('Cleveland', 1361, '43.91000', '-87.75000'), ('Collins', 1187, '44.08000', '-87.98000'), ('Cooperstown', 264, '44.31000', '-87.76000'), ('Francis Creek', 681, '44.20000', '-87.71000'), ('Grimms', 1187, '44.15000', '-87.90000'), ('Kellnersville', 374, '44.23000', '-87.80000'), ('Kiel', 3450, '43.91000', '-88.03000'), ('Larrabee', 681, '44.26000', '-87.71000'), ('Manitowoc', 34053, '44.08000', '-87.66000'), ('Maribel', 264, '44.26000', '-87.80000'), ('Menchalville', 374, '44.21000', '-87.88000'), ('Millhome', 3450, '43.90000', '-87.96000'), ('Mishicot', 1422, '44.23000', '-87.63000'), ('Osman', 1361, '43.96000', '-87.81000'), ('Point Beach State Park', 12639, '44.21000', '-87.51000'), ('Reedsville', 1187, '44.16000', '-87.96000'), ('Rosecrans', 264, '44.26000', '-87.83000'), ('School Hill', 749, '43.95000', '-87.90000'), ('Shoto', 34053, '44.16000', '-87.65000'), ('Spring Valley', 1361, '43.93000', '-87.83000'), ('St Nazianz', 749, '44.00000', '-87.91000'), ('Taus', 730, '44.18000', '-87.86000'), ('Two Creeks', 1422, '44.29000', '-87.56000'), ('Two Rivers', 12639, '44.15000', '-87.56000'), ('Valders', 948, '44.06000', '-87.88000'), ('Whitelaw', 730, '44.15000', '-87.83000')], 'partOfState': 'east central', 'wfo': 'GRB'}, +'WIC073': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Athens', 1095, '45.03000', '-90.08000'), ('Bevent', 189, '44.76000', '-89.38000'), ('Brokaw', 107, '45.03000', '-89.65000'), ('Colby', 1616, '44.91000', '-90.30000'), ('Edgar', 1386, '44.91000', '-89.96000'), ('Elderon', 189, '44.78000', '-89.25000'), ('Evergreen', 3611, '44.84000', '-89.64000'), ('Fenwood', 174, '44.86000', '-90.01000'), ('Galloway', 189, '44.71000', '-89.26000'), ('Halder', 1640, '44.79000', '-89.86000'), ('Hamburg', 1640, '45.08000', '-89.88000'), ('Hatley', 476, '44.88000', '-89.33000'), ('Hogarty', 272, '45.03000', '-89.31000'), ('Knowlton', 4063, '44.71000', '-89.68000'), ('Little Chicago', 1640, '45.04000', '-89.84000'), ('Marathon City', 1640, '44.95000', '-89.84000'), ('Milan', 1095, '44.97000', '-90.19000'), ('Moon', 4063, '44.76000', '-89.78000'), ('Mosinee', 4063, '44.78000', '-89.69000'), ('Norrie', 251, '44.88000', '-89.25000'), ('Nutterville', 2117, '45.00000', '-89.50000'), ('Pike Lake', 476, '44.81000', '-89.34000'), ('Poniatowski', 1386, '44.98000', '-89.98000'), ('Rib Falls', 1640, '44.96000', '-89.90000'), ('Rib Mountain', 6059, '44.91290', '-89.67540'), ('Rib Mountain State Park', 6059, '44.92000', '-89.67000'), ('Ringle', 476, '44.90000', '-89.41000'), ('Rothschild', 4970, '44.88000', '-89.61000'), ('Rozellville', 1523, '44.75000', '-90.01000'), ('Schofield', 2117, '44.90000', '-89.59000'), ('Spencer', 1932, '44.76000', '-90.28000'), ('Stratford', 1523, '44.79000', '-90.08000'), ('Sunset', 2117, '44.98000', '-89.48000'), ('Unity', 368, '44.84000', '-90.31000'), ('Wausau', 38426, '44.96000', '-89.63000'), ('Weston', 2117, '44.89910', '-89.56950')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WIC075': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Amberg', 572, '45.50000', '-88.00000'), ('Athelstane', 572, '45.43000', '-88.09000'), ('Beaver', 355, '45.13000', '-88.01000'), ('Beecher', 572, '45.57000', '-87.98000'), ('Caldron Falls Rese', 998, '45.38000', '-88.26000'), ('Coleman', 716, '45.06000', '-88.03000'), ('Crivitz', 998, '45.23000', '-88.01000'), ('Dunbar', 5480, '45.65000', '-88.18000'), ('Goodman', 5480, '45.63000', '-88.34000'), ('Harmony', 3357, '45.09000', '-87.81000'), ('High Falls Reservoir', 998, '45.29000', '-88.20000'), ('Loomis', 998, '45.20000', '-87.90000'), ('McAllister', 904, '45.33000', '-87.71000'), ('Middle Inlet', 998, '45.29000', '-88.00000'), ('Niagara', 1880, '45.76000', '-88.00000'), ('Pembine', 1880, '45.63000', '-88.00000'), ('Peshtigo', 3357, '45.04000', '-87.75000'), ('Porterfield', 3357, '45.15000', '-87.80000'), ('Pound', 355, '45.09000', '-88.03000'), ('Wausaukee', 572, '45.36000', '-87.94000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC077': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Endeavor', 440, '43.71470', '-89.46890'), ('Montello', 1397, '43.79430', '-89.33440'), ('Neshkoro', 453, '43.96520', '-89.21390'), ('Oxford', 536, '43.78020', '-89.56270'), ('Westfield', 1217, '43.88460', '-89.49410')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC078': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Keshena', 1394, '44.88000', '-88.63000'), ('Neopit', 839, '44.98000', '-88.81000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC079': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bayside', 4518, '43.18290', '-87.90180'), ('Brown Deer', 12170, '43.17500', '-87.97480'), ('Cudahy', 18429, '42.94660', '-87.86480'), ('Fox Point', 7012, '43.15850', '-87.90170'), ('Franklin', 29494, '42.88630', '-88.00980'), ('Glendale', 13367, '43.13000', '-87.92760'), ('Greendale', 14405, '42.93570', '-88.00150'), ('Greenfield', 35476, '42.96280', '-88.00560'), ('Hales Corners', 7765, '42.94050', '-88.04930'), ('Milwaukee', 0, '43.03890', '-87.90647'), ('Oak Creek', 28456, '42.88230', '-87.89730'), ('River Hills', 1631, '43.17360', '-87.93510'), ('Shorewood', 13763, '43.09130', '-87.88620'), ('South Milwaukee', 21256, '42.91290', '-87.86220'), ('St. Francis', 8662, '42.97070', '-87.87170'), ('Wauwatosa', 47271, '43.06210', '-88.03360'), ('West Allis', 61254, '43.00720', '-88.03000'), ('West Milwaukee', 4201, '43.01290', '-87.97010'), ('Whitefish Bay', 14163, '43.11260', '-87.90090')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC081': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Cashton', 1005, '43.74310', '-90.78140'), ('Cataract', 8648, '44.08588', '-90.83121'), ('Clifton', 113, '43.88119', '-90.35057'), ('Fort Mc Coy', 8648, '44.01643', '-90.68135'), ('Four Corners', 529, '44.07857', '-90.91162'), ('Glendale', 469, '43.78251', '-90.34874'), ('Kendall', 469, '43.79320', '-90.36760'), ('Kirby', 286, '44.10233', '-90.53332'), ('Melvina', 93, '43.80430', '-90.78030'), ('Norwalk', 653, '43.83330', '-90.62540'), ('Oakdale', 297, '43.96270', '-90.37860'), ('Portland', 1005, '43.76606', '-90.84949'), ('Ridgeville', 653, '43.88485', '-90.56622'), ('Shennington', 146, '44.03105', '-90.31401'), ('Sparta', 8648, '43.94280', '-90.80980'), ('St Marys', 653, '43.80078', '-90.68501'), ('Tomah', 8419, '43.98960', '-90.50330'), ('Tunnel City', 8419, '44.00181', '-90.56804'), ('Valley Junction', 146, '44.05116', '-90.41453'), ('Warrens', 286, '44.13040', '-90.50060'), ('Wilton', 519, '43.81450', '-90.52740'), ('Wyeville', 146, '44.02770', '-90.38580')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIC083': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Abrams', 2843, '44.78000', '-88.06000'), ('Breed', 605, '45.06000', '-88.43000'), ('Brookside', 4708, '44.79000', '-88.00000'), ('Gillett', 1256, '44.90000', '-88.31000'), ('Hayes', 605, '45.00000', '-88.43000'), ('Hickory Corners', 605, '45.00000', '-88.26000'), ('Klondike', 716, '45.06000', '-88.16000'), ('Lakewood', 329, '45.29000', '-88.51000'), ('Lena', 510, '44.95000', '-88.05000'), ('Little Suamico', 13546, '44.71000', '-87.99000'), ('Mountain', 605, '45.18000', '-88.48000'), ('Oconto', 4708, '44.88000', '-87.88000'), ('Oconto Falls', 2843, '44.88000', '-88.20000'), ('Pensaukee', 4708, '44.81000', '-87.91000'), ('Sampson', 3060, '44.76000', '-88.18000'), ('Sobieski', 13546, '44.71000', '-88.06000'), ('Spruce', 2843, '44.95000', '-88.16000'), ('Stiles', 510, '44.86000', '-88.05000'), ('Suring', 605, '45.00000', '-88.38000'), ('Townsend', 329, '45.33000', '-88.58000'), ('Underhill', 1256, '44.88000', '-88.38000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC085': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Clearwater Lake', 1443, '45.84000', '-89.18000'), ('Enterprise', 7735, '45.50000', '-89.25000'), ('Gagen', 1961, '45.66000', '-89.09000'), ('Goodnow', 7735, '45.70000', '-89.63000'), ('Harshaw', 3770, '45.66000', '-89.65000'), ('Hazelhurst', 1646, '45.79000', '-89.71000'), ('Lake Tomahawk', 7735, '45.81000', '-89.59000'), ('Lennox', 1961, '45.51000', '-89.06000'), ('Mc Naughton', 7735, '45.73000', '-89.55000'), ('Minocqua', 1646, '45.86000', '-89.69000'), ('Monico', 1961, '45.58000', '-89.11000'), ('Pelican Lake', 1961, '45.50000', '-89.11000'), ('Rhinelander', 7735, '45.63000', '-89.41000'), ('Starks', 7735, '45.66000', '-89.19000'), ('Sugar Camp', 1443, '45.78000', '-89.30000'), ('Three Lakes', 1443, '45.79000', '-89.16000'), ('Willow Reservoir', 1646, '45.71000', '-89.85000'), ('Woodboro', 7735, '45.59000', '-89.55000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIC087': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Appleton', 70087, '44.26000', '-88.40000'), ('Bear Creek', 415, '44.53000', '-88.71000'), ('Binghamton', 1192, '44.43000', '-88.46000'), ('Black Creek', 1192, '44.46000', '-88.44000'), ('Combined Locks', 2422, '44.25000', '-88.31000'), ('Dale', 2357, '44.26000', '-88.68000'), ('Freedom', 6146, '44.38000', '-88.28000'), ('Greenville', 2357, '44.29000', '-88.53000'), ('Hortonville', 2357, '44.33000', '-88.63000'), ('Kaukauna', 12983, '44.26000', '-88.26000'), ('Kimberly', 6146, '44.28000', '-88.31000'), ('Leeman', 307, '44.56000', '-88.55000'), ('Little Chute', 10476, '44.28000', '-88.26000'), ('Mackville', 70087, '44.34000', '-88.41000'), ('Medina', 2357, '44.26000', '-88.63000'), ('Nichols', 307, '44.56000', '-88.46000'), ('Seymour', 1474, '44.51000', '-88.33000'), ('Shiocton', 954, '44.43000', '-88.58000'), ('Stephensville', 2357, '44.36000', '-88.58000'), ('Sugar Bush', 415, '44.48000', '-88.73000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC089': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Belgium', 1678, '43.50060', '-87.85030'), ('Cedarburg', 10908, '43.29660', '-87.98820'), ('Fredonia', 1934, '43.46850', '-87.95170'), ('Grafton', 10312, '43.31860', '-87.95460'), ('Mequon', 21823, '43.23333', '-87.98333'), ('Saukville', 4068, '43.38380', '-87.94140'), ('Thiensville', 3254, '43.23680', '-87.97990')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC091': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Durand', 1968, '44.62910', '-91.96060'), ('Pepin', 878, '44.44240', '-92.14630'), ('Stockholm', 97, '44.48360', '-92.26030')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIC093': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bay City', 465, '44.58530', '-92.45260'), ('Ellsworth', 2909, '44.73740', '-92.47980'), ('Elmwood', 841, '44.78010', '-92.14930'), ('El Paso', 779, '44.76900', '-92.34400'), ('Maiden Rock', 121, '44.56780', '-92.30840'), ('Plum City', 574, '44.63300', '-92.19180'), ('Prescott', 3764, '44.75070', '-92.79010'), ('River Falls', 12560, '44.85570', '-92.62160'), ('Spring Valley', 1189, '44.85000', '-92.23980')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIC095': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Amery', 2845, '45.30460', '-92.36310'), ('Balsam Lake', 792, '45.45810', '-92.45470'), ('Centuria', 865, '45.44960', '-92.55580'), ('Clayton', 507, '45.32370', '-92.17000'), ('Clear Lake', 1051, '45.25010', '-92.26860'), ('Dresser', 732, '45.36150', '-92.63380'), ('Frederic', 1262, '45.65640', '-92.46400'), ('Luck', 1210, '45.57520', '-92.46730'), ('Milltown', 888, '45.52690', '-92.49970'), ('Nye', 2171, '45.31400', '-92.58000'), ('Osceola', 2421, '45.31920', '-92.69590'), ('St Croix Falls', 2033, '45.40940', '-92.63380')], 'partOfState': 'northwest', 'wfo': 'MPX'}, +'WIC097': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Almond', 459, '44.26000', '-89.40000'), ('Amherst', 964, '44.45000', '-89.28000'), ('Amherst Junction', 305, '44.46000', '-89.30000'), ('Arnott', 10520, '44.45000', '-89.43000'), ('Bancroft', 899, '44.31000', '-89.51000'), ('Blaine', 459, '44.31000', '-89.30000'), ('Custer', 269, '44.50000', '-89.41000'), ('Dancy', 4063, '44.68000', '-89.69000'), ('Ellis', 488, '44.58000', '-89.43000'), ('Jordan', 488, '44.56000', '-89.48000'), ('Junction City', 440, '44.58000', '-89.75000'), ('Keene', 459, '44.36000', '-89.46000'), ('Kellner', 2278, '44.34000', '-89.71000'), ('Nelsonville', 191, '44.50000', '-89.30000'), ('Park Ridge', 488, '44.51000', '-89.54000'), ('Peru', 518, '44.56000', '-89.23000'), ('Plover', 10520, '44.45000', '-89.53000'), ('Polonia', 191, '44.56000', '-89.41000'), ('Rosholt', 518, '44.63000', '-89.30000'), ('Shantytown', 518, '44.68000', '-89.41000'), ('Stevens Point', 24551, '44.51000', '-89.56000'), ('Stockton', 488, '44.51000', '-89.46000'), ('Whiting', 1760, '44.48900', '-89.56190')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WIC099': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Brantwood', 626, '45.56290', '-90.11520'), ('Catawba', 149, '45.53580', '-90.53290'), ('Fifield', 2793, '45.87980', '-90.42220'), ('Kennan', 171, '45.53090', '-90.58610'), ('Ogema', 626, '45.44360', '-90.29820'), ('Park Falls', 2793, '45.93340', '-90.44590'), ('Phillips', 1675, '45.69560', '-90.39770'), ('Prentice', 626, '45.54170', '-90.28810'), ('Spirit', 878, '45.45420', '-90.11440')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'WIC101': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bohners Lake', 1952, '42.62300', '-88.28030'), ('Browns Lake', 1933, '42.69240', '-88.23110'), ('Burlington', 9936, '42.67790', '-88.27820'), ('Eagle Lake', 1320, '42.70710', '-88.12810'), ('Elmwood Park', 474, '42.69290', '-87.82220'), ('North Bay', 260, '42.76490', '-87.78080'), ('Racine', 81855, '42.73333', '-87.78333'), ('Rochester', 1149, '42.74060', '-88.22400'), ('Sturtevant', 5287, '42.70030', '-87.89910'), ('Union Grove', 4322, '42.68420', '-88.05100'), ('Waterford', 4048, '42.76280', '-88.21550'), ('Waterford North', 1604, '42.79320', '-88.22200'), ('Wind Lake', 5202, '42.82240', '-88.15680'), ('Wind Point', 1853, '42.78170', '-87.77290')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC103': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bloom City', 92, '43.49741', '-90.46753'), ('Boaz', 137, '43.33080', '-90.52720'), ('Bosstown', 137, '43.38227', '-90.61739'), ('Cazenovia', 326, '43.52530', '-90.19880'), ('Eagle Corners', 1453, '43.21414', '-90.50042'), ('Five Points', 137, '43.31465', '-90.59911'), ('Gillingham', 92, '43.43162', '-90.44925'), ('Gotham', 608, '43.21414', '-90.29939'), ('Ithaca', 5114, '43.34755', '-90.28295'), ('Lone Rock', 929, '43.18450', '-90.20170'), ('Loyd', 169, '43.41517', '-90.24822'), ('Neptune', 5114, '43.36582', '-90.26650'), ('Richland Center', 5114, '43.33780', '-90.38320'), ('Rockbridge', 92, '43.44806', '-90.36701'), ('Sabin', 137, '43.43162', '-90.56439'), ('Sextonville', 608, '43.28176', '-90.29757'), ('Tavera', 429, '43.28358', '-90.65028'), ('West Lima', 92, '43.54858', '-90.53149'), ('Westport', 429, '43.19952', '-90.63384'), ('Yuba', 92, '43.53630', '-90.42790')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIC105': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Beloit', 35775, '42.52370', '-89.02010'), ('Clinton', 2162, '42.55650', '-88.86610'), ('Edgerton', 4933, '42.83780', '-89.07260'), ('Evansville', 4039, '42.77990', '-89.29870'), ('Footville', 788, '42.67150', '-89.20890'), ('Janesville', 59498, '42.68460', '-89.01560'), ('Milton', 5132, '42.77890', '-88.94940'), ('Orfordville', 1272, '42.62920', '-89.25730')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC107': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bruce', 787, '45.45860', '-91.27280'), ('Conrath', 98, '45.38470', '-91.03580'), ('Glen Flora', 93, '45.49680', '-90.89310'), ('Hawkins', 317, '45.51180', '-90.71330'), ('Ingram', 76, '45.50550', '-90.81320'), ('Ladysmith', 3932, '45.46280', '-91.09590'), ('Sheldon', 256, '45.31110', '-90.95740'), ('Tony', 105, '45.48110', '-90.99580'), ('Weyerhaeuser', 353, '45.42380', '-91.41440')], 'partOfState': 'northwest', 'wfo': 'MPX'}, +'WIC109': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Baldwin', 2667, '44.96290', '-92.37110'), ('Deer Park', 227, '45.18860', '-92.38660'), ('Glenwood City', 1183, '45.05730', '-92.17160'), ('Hammond', 1153, '44.97300', '-92.43710'), ('Hudson', 8775, '44.96690', '-92.74210'), ('New Richmond', 6310, '45.12210', '-92.53670'), ('Roberts', 969, '44.98500', '-92.55200'), ('Somerset', 1556, '45.12730', '-92.67600'), ('Star Prairie', 574, '45.19830', '-92.53180'), ('Wilson', 176, '44.95560', '-92.17240'), ('Woodville', 1104, '44.95250', '-92.28640')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIC111': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Baraboo', 10711, '43.46850', '-89.74150'), ('Ironton', 250, '43.54470', '-90.14170'), ('Lake Delton', 1982, '43.59330', '-89.78040'), ('La Valle', 326, '43.58270', '-90.13060'), ('Lime Ridge', 169, '43.46820', '-90.15640'), ('Loganville', 276, '43.43980', '-90.03700'), ('Merrimac', 416, '43.37370', '-89.62540'), ('North Freedom', 649, '43.45870', '-89.86310'), ('Plain', 792, '43.27830', '-90.04220'), ('Prairie Du Sac', 3231, '43.29110', '-89.72850'), ('Reedsburg', 7827, '43.53490', '-89.99900'), ('Rock Springs', 425, '43.47990', '-89.91800'), ('Sauk City', 3109, '43.27220', '-89.72850'), ('Spring Green', 1444, '43.17560', '-90.06710'), ('West Baraboo', 1248, '43.47590', '-89.76790')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIC113': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Chief Lake', 625, '45.92660', '-91.33280'), ('Couderay', 96, '45.79620', '-91.29920'), ('Edgewater', 518, '45.74230', '-91.47520'), ('Exeland', 212, '45.66800', '-91.24020'), ('Hayward', 2129, '46.01000', '-91.48030'), ('Little Round Lake', 948, '45.96500', '-91.36780'), ('Loretta', 344, '45.88560', '-90.85310'), ('New Post', 367, '45.89720', '-91.19200'), ('Northwoods Beach', 948, '45.91420', '-91.40360'), ('Ojibwa', 222, '45.79810', '-91.11700'), ('Radisson', 222, '45.76850', '-91.21870'), ('Reserve', 436, '45.82830', '-91.36010'), ('Stone Lake', 2129, '45.84560', '-91.54050'), ('Winter', 344, '45.82110', '-91.01200')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIC115': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Adams Beach', 399, '44.68000', '-88.68000'), ('Advance', 1256, '44.78000', '-88.33000'), ('Angelica', 3060, '44.66000', '-88.30000'), ('Aniwa', 272, '45.00000', '-89.21000'), ('Belle Plaine', 399, '44.71000', '-88.66000'), ('Birnamwood', 795, '44.93000', '-89.19000'), ('Bonduel', 1416, '44.73000', '-88.44000'), ('Bowler', 343, '44.86000', '-88.96000'), ('Briarton', 307, '44.59000', '-88.41000'), ('Caroline', 1297, '44.71000', '-88.88000'), ('Cecil', 466, '44.79000', '-88.44000'), ('Eland', 251, '44.88000', '-89.19000'), ('Green Valley', 1256, '44.79000', '-88.26000'), ('Gresham', 575, '44.84000', '-88.78000'), ('Hofa Park', 3060, '44.63000', '-88.33000'), ('Krakow', 3060, '44.75000', '-88.25000'), ('Leopolis', 575, '44.76000', '-88.83000'), ('Lyndhurst', 575, '44.83000', '-88.80000'), ('Mattoon', 466, '45.00000', '-89.03000'), ('Morgan', 575, '44.88000', '-88.81000'), ('Navarino', 307, '44.61000', '-88.48000'), ('Pella', 1297, '44.73000', '-88.80000'), ('Pulcifer', 1256, '44.84000', '-88.34000'), ('Red River', 1394, '44.81000', '-88.69000'), ('Rose Lawn', 1474, '44.59000', '-88.31000'), ('Shawano', 8298, '44.78000', '-88.59000'), ('Shawano Lake', 466, '44.80000', '-88.51000'), ('Shepley', 1177, '44.86000', '-89.08000'), ('Split Rock', 764, '44.70000', '-89.01000'), ('Thornton', 8298, '44.79000', '-88.68000'), ('Tigerton', 764, '44.73000', '-89.05000'), ('Tilleda', 343, '44.81000', '-88.90000'), ('Whitcomb', 764, '44.78000', '-89.09000'), ('Wittenberg', 1177, '44.81000', '-89.15000'), ('Zachow', 1416, '44.73000', '-88.34000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC117': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Adell', 517, '43.62080', '-87.94620'), ('Cascade', 666, '43.65940', '-88.00850'), ('Cedar Grove', 1887, '43.56710', '-87.82360'), ('Elkhart Lake', 1021, '43.83280', '-88.01460'), ('Glenbeulah', 378, '43.79860', '-88.04660'), ('Howards Grove', 2792, '43.82960', '-87.82590'), ('Kohler', 1926, '43.73550', '-87.77900'), ('Oostburg', 2660, '43.62430', '-87.79760'), ('Plymouth', 7781, '43.74720', '-87.97200'), ('Random Lake', 1551, '43.55500', '-87.95600'), ('Sheboygan Falls', 6772, '43.72980', '-87.82260'), ('Waldo', 450, '43.67560', '-87.94650')], 'partOfState': 'east central', 'wfo': 'MKX'}, +'WIC119': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Chelsea', 878, '45.28030', '-90.31915'), ('Donald', 256, '45.24832', '-90.89940'), ('Gilman', 474, '45.16690', '-90.80690'), ('Goodrich', 1095, '45.16151', '-90.06330'), ('Hannibal', 474, '45.24832', '-90.78290'), ('Jump River', 76, '45.35569', '-90.80117'), ('Lublin', 110, '45.07520', '-90.72400'), ('Medford', 4350, '45.13860', '-90.34790'), ('Perkinstown', 110, '45.20035', '-90.63441'), ('Polley', 474, '45.13638', '-90.80117'), ('Rib Lake', 878, '45.31890', '-90.20360'), ('Stetsonville', 563, '45.07640', '-90.31250'), ('Westboro', 878, '45.34884', '-90.30088')], 'partOfState': 'north central', 'wfo': 'ARX'}, +'WIC121': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arcadia', 2402, '44.25240', '-91.49340'), ('Beach Corners', 521, '44.20102', '-91.23327'), ('Blair', 1273, '44.29590', '-91.22990'), ('Centerville', 1319, '44.07126', '-91.45075'), ('Chimney Rock', 1001, '44.46601', '-91.41603'), ('Eleva', 635, '44.57640', '-91.47030'), ('Elk Creek', 1244, '44.43129', '-91.39958'), ('Ettrick', 521, '44.16980', '-91.26610'), ('Frenchville', 521, '44.14985', '-91.31734'), ('Galesville', 1427, '44.08420', '-91.35620'), ('Hegg', 521, '44.21746', '-91.20038'), ('Iduna', 521, '44.19736', '-91.31734'), ('Independence', 1244, '44.36220', '-91.41930'), ('Osseo', 1669, '44.57830', '-91.21810'), ('Pigeon Falls', 388, '44.42470', '-91.20820'), ('Pleasantville', 1651, '44.44591', '-91.30272'), ('Strum', 1001, '44.55290', '-91.38620'), ('Tamarack', 2402, '44.18274', '-91.46720'), ('Trempealeau', 1319, '44.00700', '-91.43600'), ('Whitehall', 1651, '44.36580', '-91.31370')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIC123': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Benders Corners', 1302, '43.58148', '-90.35057'), ('Bloomingdale', 2045, '43.64727', '-90.78370'), ('Chaseburg', 306, '43.65480', '-91.09990'), ('Coon Valley', 714, '43.70180', '-91.01020'), ('De Soto', 366, '43.42690', '-91.19670'), ('Dilly', 1302, '43.65092', '-90.43281'), ('Esofea', 714, '43.63082', '-90.96645'), ('Genoa', 263, '43.57340', '-91.22580'), ('Greenwood', 92, '43.56503', '-90.41636'), ('Hillsboro', 1302, '43.65410', '-90.33770'), ('La Farge', 775, '43.57750', '-90.63810'), ('Liberty Pole', 4335, '43.48279', '-90.90066'), ('Newton', 306, '43.58148', '-91.06697'), ('Ontario', 476, '43.72210', '-90.59290'), ('Potts Corners', 775, '43.63082', '-90.65028'), ('Readstown', 395, '43.44880', '-90.75890'), ('Red Mound', 366, '43.46451', '-91.14921'), ('Retreat', 174, '43.44806', '-91.08341'), ('Rockton', 476, '43.64544', '-90.60094'), ('Stoddard', 815, '43.66120', '-91.21840'), ('Trippville', 469, '43.71489', '-90.40174'), ('Valley', 476, '43.64727', '-90.53149'), ('Victory', 366, '43.47913', '-91.21683'), ('Viola', 667, '43.50760', '-90.67310'), ('Viroqua', 4335, '43.55830', '-90.88630'), ('Westby', 2045, '43.65300', '-90.85710'), ('West Prairie', 174, '43.46451', '-91.01580')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIC125': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arbor Vitae', 1646, '45.91000', '-89.65000'), ('Boulder Junction', 1646, '46.11000', '-89.63000'), ('Conover', 1443, '46.04000', '-89.25000'), ('Eagle River', 1443, '45.91000', '-89.25000'), ('Lac Du Flambeau', 1646, '45.96000', '-89.88000'), ('Land O Lakes', 1443, '46.16000', '-89.23000'), ('Manitowish Waters', 1646, '46.13000', '-89.88000'), ('Phelps', 1443, '46.06000', '-89.08000'), ('Presque Isle', 2318, '46.25000', '-89.73000'), ('Sayner', 1443, '46.00000', '-89.53000'), ('Star Lake', 1443, '46.03000', '-89.46000'), ('St Germain', 1443, '45.91000', '-89.48000'), ('Winchester', 1646, '46.21000', '-89.90000'), ('Woodruff', 1646, '45.90000', '-89.69000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIC127': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Como', 1870, '42.60940', '-88.49520'), ('Darien', 1572, '42.60090', '-88.71010'), ('Delavan', 7956, '42.62670', '-88.63260'), ('Delavan Lake', 2352, '42.60260', '-88.61900'), ('East Troy', 3564, '42.78910', '-88.39940'), ('Elkhorn', 7305, '42.67100', '-88.54030'), ('Fontana-On-geneva', 1754, '42.54530', '-88.56640'), ('Genoa City', 1949, '42.50150', '-88.32340'), ('Lake Geneva', 7148, '42.58860', '-88.42960'), ('Pell Lake', 2988, '42.54090', '-88.35800'), ('Potter Lake', 1099, '42.82160', '-88.34880'), ('Sharon', 1549, '42.50160', '-88.73010'), ('Walworth', 2304, '42.53050', '-88.59740'), ('Whitewater', 13437, '42.83490', '-88.73600'), ('Williams Bay', 2415, '42.57640', '-88.54280')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC129': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Angus', 518, '45.64780', '-91.60180'), ('Birchwood', 518, '45.65710', '-91.55220'), ('Earl', 2653, '45.91070', '-91.76050'), ('Lampson', 531, '45.98310', '-91.81640'), ('Minong', 531, '46.09840', '-91.82390'), ('Sarona', 1309, '45.71120', '-91.80670'), ('Shell Lake', 1309, '45.73860', '-91.89910'), ('Spooner', 2653, '45.82450', '-91.89350'), ('Springbrook', 531, '45.94860', '-91.68840'), ('Stanberry', 2129, '46.00740', '-91.62630'), ('Trego', 2653, '45.89980', '-91.82110')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIC131': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Germantown', 18260, '43.23610', '-88.12030'), ('Hartford', 10905, '43.32370', '-88.38880'), ('Jackson', 4938, '43.32090', '-88.16390'), ('Kewaskum', 3274, '43.52190', '-88.23040'), ('Newburg', 1119, '43.43140', '-88.04750'), ('Slinger', 3901, '43.33210', '-88.28570'), ('West Bend', 28152, '43.42280', '-88.18420')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC133': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Big Bend', 1278, '42.88230', '-88.20410'), ('Brookfield', 38649, '43.06280', '-88.11980'), ('Butler', 1881, '43.10840', '-88.07220'), ('Chenequa', 583, '43.12340', '-88.38110'), ('Delafield', 6472, '43.06960', '-88.39190'), ('Dousman', 1584, '43.01480', '-88.47140'), ('Eagle', 1707, '42.87960', '-88.47130'), ('Elm Grove', 6249, '43.04760', '-88.08670'), ('Hartland', 7905, '43.09820', '-88.34460'), ('Lac La Belle', 329, '43.14550', '-88.52570'), ('Lannon', 1009, '43.15140', '-88.16240'), ('Menomonee Falls', 32647, '43.14720', '-88.12590'), ('Merton', 1926, '43.14100', '-88.31350'), ('Mukwonago', 6162, '42.86630', '-88.33120'), ('Muskego', 21397, '42.89110', '-88.12290'), ('Nashotah', 1266, '43.09300', '-88.40130'), ('New Berlin', 38220, '42.97280', '-88.12920'), ('North Prairie', 1571, '42.93720', '-88.39560'), ('Oconomowoc', 12382, '43.10280', '-88.49680'), ('Oconomowoc Lake', 564, '43.09870', '-88.45500'), ('Okauchee Lake', 3916, '43.12340', '-88.44060'), ('Pewaukee', 8170, '43.08570', '-88.25200'), ('Sussex', 8828, '43.13590', '-88.21790'), ('Wales', 2523, '43.00490', '-88.37770'), ('Waukesha', 64825, '43.01250', '-88.23820')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIC135': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Big Falls', 85, '44.61000', '-89.00000'), ('Clintonville', 4736, '44.61000', '-88.75000'), ('Embarrass', 399, '44.66000', '-88.69000'), ('Fremont', 666, '44.26000', '-88.86000'), ('Iola', 1298, '44.50000', '-89.11000'), ('King', 2215, '44.33000', '-89.13000'), ('Lind Center', 5676, '44.28000', '-89.03000'), ('Manawa', 1330, '44.46000', '-88.91000'), ('Marion', 1297, '44.66000', '-88.88000'), ('New London', 7085, '44.38000', '-88.75000'), ('Northland', 1298, '44.59000', '-89.19000'), ('Northport', 7085, '44.40000', '-88.80000'), ('Ogdensburg', 224, '44.45000', '-89.03000'), ('Readfield', 666, '44.26000', '-88.76000'), ('Royalton', 1330, '44.41000', '-88.86000'), ('Rural', 2215, '44.31000', '-89.15000'), ('Scandinavia', 349, '44.46000', '-89.13000'), ('Sheridan', 2215, '44.38000', '-89.21000'), ('Symco', 1330, '44.51000', '-88.90000'), ('Waupaca', 5676, '44.34000', '-89.06000'), ('Weyauwega', 1806, '44.31000', '-88.93000'), ('White Lake', 1806, '44.36000', '-88.94000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIC137': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Auroraville', 5305, '44.04000', '-89.00000'), ('Borth', 5305, '44.09000', '-88.90000'), ('Coloma', 461, '44.03000', '-89.51000'), ('Hancock', 463, '44.13000', '-89.51000'), ('Lohrville', 408, '44.02000', '-89.11000'), ('Mount Morris', 765, '44.11000', '-89.19000'), ('Pine River', 1040, '44.15000', '-89.08000'), ('Plainfield', 899, '44.21000', '-89.48000'), ('Poy Sippi', 1040, '44.13000', '-89.00000'), ('Redgranite', 1040, '44.03000', '-89.09000'), ('Richford', 461, '44.01000', '-89.43000'), ('Saxeville', 1040, '44.18000', '-89.11000'), ('Silver Lake', 1998, '44.04000', '-89.23000'), ('Spring Lake', 408, '44.01000', '-89.16000'), ('Tustin', 666, '44.16000', '-88.89000'), ('Wautoma', 1998, '44.06000', '-89.28000'), ('West Bloomfield', 666, '44.21000', '-88.96000'), ('Wild Rose', 765, '44.18000', '-89.25000')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WIC139': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Allenville', 2401, '44.13000', '-88.61000'), ('Butte Des Morts', 2401, '44.09000', '-88.65000'), ('Eureka', 3177, '44.00000', '-88.84000'), ('Fisk', 3177, '43.95000', '-88.68000'), ('Lake Butte Des Mor', 2401, '44.08000', '-88.63000'), ('Lake Poygan', 666, '44.16000', '-88.86000'), ('Larsen', 2401, '44.18000', '-88.61000'), ('Menasha', 16331, '44.20000', '-88.44000'), ('Neenah', 24507, '44.18000', '-88.44000'), ('Omro', 3177, '44.03000', '-88.75000'), ('Oshkosh', 62916, '44.01000', '-88.55000'), ('Pickett', 923, '43.91000', '-88.73000'), ('Rush Lake', 6828, '43.91000', '-88.83000'), ('Waukau', 3177, '44.00000', '-88.76000'), ('Winchester', 2401, '44.20000', '-88.66000'), ('Winnebago', 62916, '44.06000', '-88.51000'), ('Winneconne', 2401, '44.11000', '-88.71000'), ('Wittman Field', 62916, '43.98000', '-88.55000'), ('Zittau', 666, '44.21000', '-88.78000')], 'partOfState': 'east central', 'wfo': 'GRB'}, +'WIC141': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arpin', 337, '44.54000', '-90.03000'), ('Auburndale', 738, '44.63000', '-90.00000'), ('Babcock', 866, '44.29000', '-90.13000'), ('Bakerville', 18800, '44.63000', '-90.21000'), ('Bethel', 337, '44.53000', '-90.08000'), ('Biron', 915, '44.43000', '-89.78000'), ('Blenker', 268, '44.61000', '-89.91000'), ('Dexterville', 866, '44.38000', '-90.11000'), ('Hewitt', 670, '44.63000', '-90.13000'), ('Lindsey', 1550, '44.54000', '-90.30000'), ('Marshfield', 18800, '44.66000', '-90.16000'), ('Milladore', 268, '44.59000', '-89.86000'), ('Nekoosa', 2590, '44.31000', '-89.88000'), ('Pittsville', 866, '44.45000', '-90.13000'), ('Port Edwards', 1944, '44.33000', '-89.84000'), ('Rudolph', 423, '44.50000', '-89.80000'), ('Sherry', 268, '44.58000', '-89.91000'), ('Vesper', 541, '44.48000', '-89.96000'), ('Wisconsin Rapids', 18435, '44.40000', '-89.84000')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WVC001': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Audra State Park', 2870, '39.04040', '-80.06570'), ('Belington', 1788, '39.02230', '-79.93870'), ('Junior', 450, '38.97730', '-79.95050'), ('Philippi', 2870, '39.15220', '-80.04420')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC003': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Arden', 2084, '39.41560', '-78.04360'), ('Berkeley', 0, '39.50000', '-77.93000'), ('Falling Waters', 0, '39.55920', '-77.89110'), ('Glengary', 2084, '39.38390', '-78.15580'), ('Hedgesville', 240, '39.55470', '-77.99440'), ('Inwood', 2084, '39.35260', '-78.05120'), ('Johnsontown', 240, '39.57830', '-78.03970'), ('Jones Springs', 240, '39.49140', '-78.09560'), ('Martinsburg', 14972, '39.46030', '-77.96930'), ('Martinsburg Arpt', 0, '39.40000', '-77.98000'), ('Ridgeway', 0, '39.30000', '-78.07000'), ('Shanghai', 2084, '39.44140', '-78.13250'), ('Tomahawk', 240, '39.53030', '-78.04720'), ('Vanville', 0, '39.37970', '-77.98000'), ('Winebrenners Cross', 0, '39.42810', '-77.89580')], 'partOfState': 'panhandle', 'wfo': 'LWX'}, +'WVC005': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Danville', 550, '38.08130', '-81.83480'), ('Madison', 2677, '38.05930', '-81.80080'), ('Sylvester', 195, '38.00810', '-81.56100'), ('Whitesville', 520, '37.97950', '-81.53600')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC007': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Burnsville', 481, '38.85560', '-80.65600'), ('Flatwoods', 348, '38.72130', '-80.65310'), ('Gassaway', 901, '38.67060', '-80.77060'), ('Sutton', 1011, '38.66670', '-80.71070')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC009': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beech Bottom', 606, '40.22630', '-80.65200'), ('Bethany', 985, '40.20550', '-80.56360'), ('Follansbee', 3115, '40.33720', '-80.59720'), ('Hooverson Heights', 2909, '40.31840', '-80.57980'), ('Wellsburg', 2891, '40.28170', '-80.60980')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC011': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Barboursville', 3183, '38.40480', '-82.29450'), ('Culloden', 2940, '38.41710', '-82.06780'), ('Huntington', 51475, '38.41300', '-82.43380'), ('Milton', 2206, '38.43390', '-82.13770'), ('Pea Ridge', 6363, '38.41400', '-82.32000')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC013': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Arnoldsburg', 565, '38.78900', '-81.12790'), ('Grantsville', 565, '38.92050', '-81.09340')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC015': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Clay', 593, '38.46280', '-81.08020')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC017': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('West Union', 806, '39.29630', '-80.77560')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC019': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Ansted', 1576, '38.13590', '-81.10210'), ('Babcock State Park', 7, '37.99350', '-80.97210'), ('Fayetteville', 2754, '38.05210', '-81.10550'), ('Gauley Bridge', 738, '38.16830', '-81.20170'), ('Hawks Nest State Park', 1576, '38.12380', '-81.11920'), ('Meadow Bridge', 321, '37.86230', '-80.85540'), ('Montgomery', 1942, '38.17380', '-81.31850'), ('Mount Hope', 1487, '37.89530', '-81.17100'), ('Oak Hill', 7589, '37.98200', '-81.14770'), ('Pax', 174, '37.90960', '-81.26390'), ('Powellton', 1796, '38.09050', '-81.31620'), ('Smithers', 904, '38.17850', '-81.30650'), ('Thurmond', 7, '37.96380', '-81.08030')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC021': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Cedar Creek State Park', 1544, '38.88090', '-80.86240'), ('Glenville', 1544, '38.93840', '-80.83340'), ('Sand Fork', 176, '38.91520', '-80.74880')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC023': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bayard', 299, '39.27180', '-79.36690'), ('Beechwood', 452, '39.20000', '-79.46830'), ('Bismarck', 0, '39.21780', '-79.23330'), ('Cabins', 2423, '38.99890', '-79.20560'), ('Kline Gap', 2423, '39.07220', '-79.19280'), ('Lahmansville', 0, '39.12810', '-79.08170'), ('Landes', 2423, '38.89670', '-79.19810'), ('Martin', 0, '39.22420', '-79.08920'), ('Masonville', 2423, '38.91860', '-79.08390'), ('Maysville', 0, '39.11500', '-79.16500'), ('Medley', 0, '39.17610', '-79.05810'), ('Mount Pisgah', 0, '39.28970', '-79.17170'), ('Mount Storm', 0, '39.27720', '-79.24110'), ('Petersburg', 2423, '38.99630', '-79.12820'), ('Scherr', 0, '39.20000', '-79.17000'), ('Seymourville', 2423, '39.05690', '-79.10920'), ('Streby', 0, '39.08030', '-79.23970'), ('Welton', 2423, '39.00170', '-79.08530'), ('Wilsonia', 452, '39.20610', '-79.44970')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVC025': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Alderson', 1091, '37.73330', '-80.65000'), ('Alvon', 2315, '37.90000', '-80.21670'), ('Anjean', 940, '38.01670', '-80.63330'), ('Asbury', 1706, '37.81670', '-80.56670'), ('Bingham', 1545, '38.05000', '-80.80000'), ('Duo', 435, '38.06670', '-80.60000'), ('Fairlea', 1706, '37.77510', '-80.45980'), ('Falling Spring', 209, '37.99200', '-80.35730'), ('Frankford', 209, '37.91670', '-80.38330'), ('Leonard', 209, '38.08330', '-80.40000'), ('Lewisburg', 3624, '37.80000', '-80.45000'), ('Lewisburg Airport', 3624, '37.86670', '-80.40000'), ('Maxwelton', 3624, '37.86670', '-80.41670'), ('Meadow Bluff', 940, '37.90000', '-80.65000'), ('Neola', 243, '37.96670', '-80.13330'), ('Organ Cave', 1557, '37.71670', '-80.45000'), ('Quinwood', 435, '38.05780', '-80.70360'), ('Rainelle', 1545, '37.96670', '-80.78330'), ('Renick', 209, '37.98330', '-80.36670'), ('Ronceverte', 1557, '37.74890', '-80.47260'), ('Rorer', 209, '38.03330', '-80.28330'), ('Rupert', 940, '37.95000', '-80.68330'), ('Trout', 209, '38.01670', '-80.46670'), ('White Sulphur Springs', 2315, '37.79880', '-80.29730'), ('Williamsburg', 209, '37.96670', '-80.50000')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVC027': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bloomery', 200, '39.38690', '-78.37330'), ('Capon Bridge', 200, '39.29780', '-78.43550'), ('Capon Springs', 246, '39.13610', '-78.48470'), ('Delray', 0, '39.19440', '-78.60440'), ('Frenchburg', 1940, '39.31530', '-78.66080'), ('Higginsville', 0, '39.41810', '-78.58000'), ('High View', 200, '39.23060', '-78.40860'), ('Lehew', 200, '39.19920', '-78.43830'), ('Levels', 0, '39.48440', '-78.55390'), ('Points', 1354, '39.44000', '-78.61060'), ('Purgitsville', 2375, '39.23920', '-78.92140'), ('Romney', 1940, '39.34610', '-78.75550'), ('Slanesville', 200, '39.37310', '-78.52310'), ('Springfield', 1354, '39.45060', '-78.69390'), ('Three Churches', 1940, '39.40080', '-78.65440'), ('Wapocomo', 1940, '39.39500', '-78.73500')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVC029': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Chester', 2592, '40.61220', '-80.56380'), ('New Cumberland', 1099, '40.49600', '-80.60710'), ('Newell', 1602, '40.61750', '-80.60110'), ('Weirton', 20411, '40.40090', '-80.56410')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC031': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Baker', 0, '39.04170', '-78.74500'), ('Bean Settlement', 2375, '39.11500', '-78.82610'), ('Brake', 2423, '38.88940', '-79.03640'), ('Fisher', 2375, '39.05140', '-79.00360'), ('Inkerman', 0, '39.13810', '-78.76890'), ('Lost City', 0, '38.92970', '-78.83440'), ('Lost River', 0, '38.95000', '-78.80000'), ('Mathias', 0, '38.87780', '-78.86640'), ('McCauley', 0, '39.04220', '-78.71220'), ('McNeill', 2375, '39.14000', '-78.91360'), ('Milam', 0, '38.81390', '-79.09940'), ('Moorefield', 2375, '39.06290', '-78.96620'), ('Perry', 0, '38.97140', '-78.67530'), ('Rio', 0, '39.13000', '-78.67000'), ('Wardensville', 246, '39.07650', '-78.59370')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVC033': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Anmoore', 685, '39.25890', '-80.29120'), ('Bridgeport', 7306, '39.29150', '-80.25690'), ('Clarksburg', 16743, '39.28040', '-80.33180'), ('Despard', 1039, '39.29220', '-80.31760'), ('Enterprise', 939, '39.41870', '-80.27770'), ('Lost Creek', 467, '39.15910', '-80.35050'), ('Lumberport', 937, '39.37300', '-80.34850'), ('Nutter Fort', 1686, '39.25950', '-80.32460'), ('Salem', 2006, '39.28290', '-80.56510'), ('Shinnston', 2295, '39.39320', '-80.29950'), ('Stonewood', 1815, '39.24890', '-80.30520'), ('West Milford', 651, '39.20570', '-80.40490')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC035': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Kenna', 3263, '38.67640', '-81.66040'), ('Ravenswood', 4031, '38.95720', '-81.76310'), ('Ripley', 3263, '38.82010', '-81.70910')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC037': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bakerton', 1045, '39.36280', '-77.76330'), ('Bloomery', 2907, '39.25470', '-77.81940'), ('Charles Town', 2907, '39.28510', '-77.85750'), ('Harpers Ferry', 307, '39.32510', '-77.74220'), ('Kearneysville', 803, '39.38810', '-77.88580'), ('Middleway', 2084, '39.30330', '-77.98310'), ('Millville', 1045, '39.29390', '-77.78610'), ('Moler Crossroads', 803, '39.39580', '-77.76530'), ('Ranson', 2951, '39.29500', '-77.86080'), ('Rippon', 0, '39.22000', '-77.90000'), ('Shenandoah Junction', 2951, '39.35860', '-77.84330'), ('Shepherdstown', 803, '39.43110', '-77.80510'), ('Summit Point', 0, '39.24940', '-77.95890')], 'partOfState': 'panhandle', 'wfo': 'LWX'}, +'WVC039': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Belle', 1259, '38.23250', '-81.53990'), ('Cedar Grove', 862, '38.22070', '-81.42880'), ('Charleston', 53421, '38.35050', '-81.63040'), ('Chesapeake', 1643, '38.22240', '-81.53620'), ('Clendenin', 1116, '38.48740', '-81.34930'), ('Coal Fork', 1350, '38.31650', '-81.52090'), ('Cross Lanes', 10353, '38.43510', '-81.76990'), ('Dunbar', 8154, '38.36820', '-81.73670'), ('East Bank', 933, '38.21570', '-81.44520'), ('Elkview', 1182, '38.43490', '-81.47490'), ('Glasgow', 783, '38.20980', '-81.42260'), ('Handley', 362, '38.18660', '-81.36640'), ('Institute', 8154, '38.38360', '-81.76580'), ('Marmet', 1693, '38.24630', '-81.56980'), ('Nitro', 6824, '38.41760', '-81.83110'), ('Pinch', 2811, '38.40740', '-81.47980'), ('Pratt', 551, '38.20700', '-81.38750'), ('Sissonville', 4399, '38.50190', '-81.64470'), ('South Charleston', 13390, '38.35640', '-81.70720'), ('St. Albans', 11567, '38.37860', '-81.81700'), ('Tornado', 1111, '38.33280', '-81.85570')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC041': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Jackson Mill', 4317, '39.09610', '-80.47620'), ('Jane Lew', 406, '39.10960', '-80.40900'), ('Stonewall Jackson', 4317, '39.00770', '-80.47140'), ('Weston', 4317, '39.04160', '-80.46880')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC043': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Alum Creek', 1839, '38.28190', '-81.84170'), ('Hamlin', 1119, '38.27910', '-82.10380'), ('Harts', 2361, '38.03060', '-82.13080'), ('West Hamlin', 696, '38.28340', '-82.19530')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC045': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Amherstdale-Robine', 2435, '37.77980', '-81.77390'), ('Chapmanville', 1211, '37.97340', '-82.01820'), ('Chief Logan State', 301, '37.89340', '-82.00900'), ('Holden', 1105, '37.81440', '-82.06670'), ('Logan', 1630, '37.84910', '-81.98690'), ('Mallory', 1143, '37.73480', '-81.81890'), ('Man', 770, '37.74260', '-81.87430'), ('Mitchell Heights', 301, '37.90920', '-81.98870'), ('Mount Gay', 3377, '37.85420', '-82.04270'), ('Switzer', 1138, '37.78630', '-81.97390'), ('West Logan', 418, '37.86790', '-81.99300')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC047': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Anawalt', 272, '37.33350', '-81.44150'), ('Bradshaw', 289, '37.35290', '-81.80090'), ('Davy', 373, '37.47410', '-81.65000'), ('Gary', 917, '37.36190', '-81.53810'), ('Iaeger', 358, '37.46380', '-81.81340'), ('Keystone', 453, '37.41500', '-81.44630'), ('Kimball', 411, '37.42740', '-81.50690'), ('Northfork', 519, '37.41910', '-81.42620'), ('War', 788, '37.30280', '-81.68010'), ('Welch', 2683, '37.43280', '-81.58150')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC049': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Barrackville', 1288, '39.50150', '-80.17020'), ('Fairmont', 19097, '39.48080', '-80.14610'), ('Fairview', 435, '39.59260', '-80.24730'), ('Farmington', 387, '39.51150', '-80.25250'), ('Glover Gap', 0, '39.62000', '-80.40000'), ('Grant Town', 657, '39.55730', '-80.17870'), ('Mannington', 2124, '39.52650', '-80.34120'), ('Monongah', 939, '39.45960', '-80.21770'), ('Rivesville', 913, '39.53160', '-80.12070'), ('Worthington', 170, '39.45800', '-80.26190')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC051': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Benwood', 1585, '40.01000', '-80.73390'), ('Cameron', 1212, '39.82640', '-80.57050'), ('Glen Dale', 1552, '39.94900', '-80.75620'), ('Lynn Camp', 0, '39.77000', '-80.70000'), ('McMechen', 1937, '39.98650', '-80.73320'), ('Moundsville', 9998, '39.92280', '-80.74180')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC053': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Hartford City', 519, '38.99860', '-81.98870'), ('Henderson', 325, '38.83150', '-82.13570'), ('Leon', 132, '38.74730', '-81.95610'), ('Mason', 1064, '39.01890', '-82.03240'), ('New Haven', 1559, '38.98800', '-81.96750'), ('Point Pleasant', 4637, '38.85390', '-82.13070')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC055': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Athens', 1102, '37.42280', '-81.01610'), ('Bluefield', 11451, '37.26670', '-81.21670'), ('Bramwell', 426, '37.32670', '-81.31270'), ('Camp Creek', 1102, '37.48330', '-81.10000'), ('Ceres', 11451, '37.30000', '-81.15000'), ('Coaldale', 426, '37.35000', '-81.35000'), ('Dunns', 1102, '37.53330', '-81.05000'), ('Elgood', 142, '37.40000', '-80.93330'), ('Flat Top', 2078, '37.58330', '-81.11670'), ('Kegley', 6347, '37.40000', '-81.13330'), ('Lerona', 1102, '37.50000', '-80.98330'), ('Matoaka', 317, '37.41670', '-81.25000'), ('Mercer County Airport', 11451, '37.30000', '-81.21670'), ('Montcalm', 885, '37.35030', '-81.25180'), ('Oakvale', 142, '37.33290', '-80.96600'), ('Princeton', 6347, '37.36670', '-81.10000'), ('Sandlick', 885, '37.33330', '-81.21670'), ('Spanishburg', 6347, '37.45000', '-81.11670'), ('Wenonah', 317, '37.46670', '-81.25000'), ('Willowton', 170, '37.35000', '-80.88330')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVC057': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Antioch', 5303, '39.32360', '-79.01780'), ('Emoryville', 0, '39.35330', '-79.17060'), ('Fort Ashby', 1354, '39.49820', '-78.76540'), ('Hartmansville', 0, '39.32190', '-79.15530'), ('Headsville', 1940, '39.39250', '-78.85610'), ('Keyser', 5303, '39.43950', '-78.98400'), ('Kitzmiller', 0, '39.38000', '-79.18000'), ('New Creek', 5303, '39.37500', '-79.02690'), ('Patterson Creek', 1354, '39.56670', '-78.73330'), ('Piedmont', 1014, '39.47930', '-79.04780'), ('Reeses Mill', 1354, '39.43060', '-78.85500'), ('Ridgeley', 762, '39.64270', '-78.77030'), ('Ridgeville', 5303, '39.34830', '-78.99080'), ('Russelldale', 5303, '39.29250', '-78.93030'), ('Short Gap', 1354, '39.54360', '-78.81140'), ('Sulphur City', 261, '39.35310', '-79.13780'), ('Wagoner', 1354, '39.53810', '-78.67250'), ('Warnocks', 184, '39.46190', '-79.09780')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVC059': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Chattaroy', 1136, '37.70500', '-82.26840'), ('Delbarton', 474, '37.70490', '-82.18580'), ('Gilbert', 417, '37.61440', '-81.86740'), ('Gilbert Creek', 1582, '37.57570', '-81.89500'), ('Kermit', 209, '37.83920', '-82.40780'), ('Matewan', 498, '37.62370', '-82.16770'), ('R.d. Bailey Lake', 417, '37.60010', '-81.82060'), ('Red Jacket', 728, '37.64910', '-82.13230'), ('Williamson', 3414, '37.67370', '-82.27270')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC061': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Blacksville', 175, '39.71870', '-80.21560'), ('Brookhaven', 4734, '39.61040', '-79.88440'), ('Cassville', 1586, '39.66390', '-80.05890'), ('Cheat Lake', 6396, '39.67200', '-79.85360'), ('Core', 0, '39.68000', '-80.10000'), ('Granville', 778, '39.64670', '-79.99060'), ('Morgantown', 26809, '39.63560', '-79.94980'), ('Osage', 163, '39.65830', '-80.00940'), ('Star City', 1366, '39.65940', '-79.98660'), ('Wadestown', 0, '39.68000', '-80.33000'), ('Westover', 3941, '39.63510', '-79.97640')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC063': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bozoo', 499, '37.46670', '-80.83330'), ('Gap Mills', 548, '37.56670', '-80.41670'), ('Glace', 2315, '37.68330', '-80.35000'), ('Hollywood', 548, '37.61670', '-80.45000'), ('Laurel Branch', 548, '37.53330', '-80.51670'), ('Lindside', 1064, '37.45000', '-80.66670'), ('Peterstown', 670, '37.39898', '-80.79500'), ('Pickaway', 548, '37.63330', '-80.51670'), ('Raines Corner', 548, '37.51670', '-80.61670'), ('Red Sulphur Spring', 499, '37.50000', '-80.76670'), ('Sweet Springs', 2315, '37.63330', '-80.25000'), ('Union', 548, '37.58330', '-80.53330'), ('Waiteville', 548, '37.48330', '-80.43330'), ('Wayside', 1091, '37.58330', '-80.70000'), ('Wolfcreek', 1091, '37.66670', '-80.63330'), ('Zenith', 548, '37.50000', '-80.53330')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVC065': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Berkeley Spgs', 766, '39.63000', '-78.23000'), ('Berryville', 663, '39.61560', '-78.23000'), ('Cherry Run', 240, '39.62750', '-78.03420'), ('Great Cacapon', 0, '39.62000', '-78.29280'), ('Hancock', 1926, '39.69280', '-78.17780'), ('Lineburg', 0, '39.63810', '-78.34690'), ('Magnolia', 524, '39.56170', '-78.42720'), ('Oakland', 0, '39.48110', '-78.25190'), ('Omps', 0, '39.50000', '-78.28000'), ('Paw Paw', 524, '39.53090', '-78.45610'), ('Shady Grove', 1926, '39.63750', '-78.15140'), ('Smith Crossroads', 663, '39.56780', '-78.22750'), ('Stotlers Crossroads', 0, '39.51330', '-78.22420'), ('Unger', 0, '39.43670', '-78.25420')], 'partOfState': 'panhandle', 'wfo': 'LWX'}, +'WVC067': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Birch River', 901, '38.49860', '-80.75540'), ('Craigsville', 2204, '38.32050', '-80.64580'), ('Richwood', 2477, '38.22150', '-80.53720'), ('Summersville', 3294, '38.28440', '-80.84410')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC069': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bethlehem', 2651, '40.04470', '-80.69200'), ('Clearview', 590, '40.14240', '-80.69130'), ('Triadelphia', 817, '40.05060', '-80.62720'), ('Valley Grove', 405, '40.09120', '-80.57070'), ('West Liberty', 1220, '40.16730', '-80.59480'), ('Wheeling', 31419, '40.07510', '-80.69700')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC071': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Brandywine', 797, '38.62470', '-79.24500'), ('Brushy Run', 0, '38.83750', '-79.24780'), ('Cherry Grove', 0, '38.64060', '-79.52310'), ('Circleville', 0, '38.67080', '-79.49140'), ('Deer Run', 0, '38.72000', '-79.23080'), ('Franklin', 797, '38.64600', '-79.33310'), ('Harper', 0, '38.52000', '-79.47000'), ('Oak Flat', 797, '38.65940', '-79.21310'), ('Riverton', 797, '38.74390', '-79.43610'), ('Ruddle', 797, '38.71250', '-79.30860'), ('Seneca Rocks', 0, '38.83470', '-79.37640'), ('Sugar Grove', 797, '38.51110', '-79.32190'), ('Upper Track', 0, '38.78000', '-79.28000')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVC073': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Belmont', 1036, '39.37740', '-81.26230'), ('St. Marys', 2017, '39.40250', '-81.19550')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC075': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Cass Scenic Railroad', 262, '38.44970', '-79.92790'), ('Durbin', 262, '38.54710', '-79.82810'), ('Greenbank', 262, '38.42000', '-79.83180'), ('Hillsboro', 243, '38.13500', '-80.21250'), ('Marlinton', 1204, '38.22010', '-80.08710'), ('Snowshoe', 1204, '38.40910', '-79.99570')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC077': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Albright', 247, '39.49340', '-79.63850'), ('Brandonville', 102, '39.66540', '-79.62520'), ('Bruceton Mills', 74, '39.65950', '-79.64100'), ('Kingwood', 2944, '39.47110', '-79.68310'), ('Masontown', 647, '39.55170', '-79.80040'), ('Newburg', 360, '39.38840', '-79.85430'), ('Reedsville', 517, '39.51040', '-79.80010'), ('Rowlesburg', 613, '39.34850', '-79.67740'), ('Terra Alta', 1456, '39.44420', '-79.54420'), ('Tunnelton', 336, '39.39340', '-79.74650')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC079': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bancroft', 367, '38.51080', '-81.84180'), ('Buffalo', 1171, '38.61320', '-81.98130'), ('Eleanor', 1345, '38.53890', '-81.93120'), ('Hurricane', 5222, '38.43680', '-82.01690'), ('Poca', 1013, '38.47440', '-81.81280'), ('Teays Valley', 12704, '38.44800', '-81.92750'), ('Winfield', 1858, '38.52580', '-81.88310')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC081': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beaver', 1378, '37.74050', '-81.15090'), ('Beckley', 17254, '37.78750', '-81.18580'), ('Bradley', 2371, '37.86140', '-81.19630'), ('Coal City', 1905, '37.67620', '-81.21450'), ('Crab Orchard', 2761, '37.74060', '-81.23140'), ('Daniels', 1846, '37.72260', '-81.12600'), ('Glen Daniel', 322, '37.77900', '-81.33740'), ('Lester', 322, '37.73510', '-81.30090'), ('Mabscott', 1403, '37.76830', '-81.21230'), ('Macarthur', 1693, '37.75700', '-81.20950'), ('Piney View', 1046, '37.84710', '-81.13890'), ('Prosperity', 1310, '37.83530', '-81.20320'), ('Rhodell', 234, '37.60980', '-81.30500'), ('Shady Spring', 2078, '37.70300', '-81.09520'), ('Sophia', 1301, '37.70780', '-81.25600'), ('Stanaford', 1443, '37.81500', '-81.15200')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC083': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beverly', 651, '38.84240', '-79.87480'), ('Dailey', 651, '38.79870', '-79.89650'), ('Elkins', 7032, '38.92510', '-79.85360'), ('Harman', 126, '38.92140', '-79.52480'), ('Huttonsville', 217, '38.71470', '-79.97630'), ('Mill Creek', 662, '38.73160', '-79.97250'), ('Montrose', 156, '39.06960', '-79.81070'), ('Womelsdorf (Coalton)', 315, '38.89770', '-79.96450')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC085': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Auburn', 103, '39.09530', '-80.85670'), ('Cairo', 263, '39.20810', '-81.15570'), ('Ellenboro', 373, '39.26550', '-81.05500'), ('Harrisville', 1842, '39.21070', '-81.04970'), ('North Bend State Park', 263, '39.22310', '-81.11070'), ('Pennsboro', 1199, '39.28160', '-80.97500'), ('Pullman', 169, '39.18740', '-80.94960')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC087': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Reedy', 198, '38.89880', '-81.42720'), ('Spencer', 2352, '38.80420', '-81.35630')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC089': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Ballengee', 2880, '37.61670', '-80.75000'), ('Buck', 2880, '37.60000', '-80.83330'), ('Ellison', 2880, '37.58330', '-81.00000'), ('Elton', 321, '37.81670', '-80.81670'), ('Glenray', 1091, '37.71670', '-80.66670'), ('Hinton', 2880, '37.66670', '-80.90000'), ('Hix', 2880, '37.71670', '-80.81670'), ('Indian Mills', 499, '37.53330', '-80.81670'), ('Jumping Branch', 2880, '37.65000', '-80.98330'), ('Lawn', 321, '37.83330', '-80.75000'), ('Lick Creek', 1102, '37.48330', '-80.91670'), ('Pipestem', 1102, '37.53330', '-80.96670'), ('Sandstone', 321, '37.76670', '-80.88330'), ('Talcott', 1091, '37.65000', '-80.75000')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVC091': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Flemington', 287, '39.26730', '-80.12820'), ('Grafton', 5489, '39.34060', '-80.01720'), ('Tygart Lake State Park', 5489, '39.29810', '-80.03460')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC093': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Canaan Hgts', 0, '39.10000', '-79.43000'), ('Davis', 624, '39.13100', '-79.46650'), ('Hambleton', 246, '39.08120', '-79.64610'), ('Hendricks', 319, '39.07520', '-79.63030'), ('Parsons', 1463, '39.09330', '-79.67930'), ('Red Creek', 0, '39.00000', '-79.50000'), ('Thomas', 452, '39.14740', '-79.49910')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC095': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Friendly', 159, '39.51290', '-81.06210'), ('Middlebourne', 870, '39.49360', '-80.90940'), ('Sistersville', 1588, '39.55950', '-80.99850')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC097': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Buckhannon', 5725, '38.98950', '-80.22540'), ('Rock Cave', 5725, '38.83670', '-80.34290')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC099': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beech Fork State Park', 1105, '38.30130', '-82.40990'), ('Ceredo', 1675, '38.39660', '-82.55410'), ('East Lynn Lake', 1105, '38.15440', '-82.38430'), ('Fort Gay', 819, '38.11850', '-82.59450'), ('Kenova', 3485, '38.40320', '-82.58010'), ('Wayne', 1105, '38.22090', '-82.44270')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC101': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Camden On Gauley', 226, '38.36890', '-80.59780'), ('Cowen', 513, '38.41020', '-80.55510'), ('Holly River State', 1009, '38.66440', '-80.33520'), ('Webster Springs', 1009, '38.47840', '-80.41040')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC103': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Hundred', 344, '39.68410', '-80.45750'), ('Jacksonburg', 0, '39.53000', '-80.65000'), ('Knob Fork', 0, '39.65000', '-80.55000'), ('Littleton', 207, '39.69960', '-80.51480'), ('New Martinsville', 5984, '39.66410', '-80.85970'), ('Paden City', 2860, '39.60290', '-80.93540'), ('Pine Grove', 571, '39.56470', '-80.68260'), ('Smithfield', 177, '39.49890', '-80.56060')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVC105': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Elizabeth', 994, '39.06240', '-81.39740')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC107': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Blennerhassett', 3225, '39.25850', '-81.63360'), ('Boaz', 1345, '39.37100', '-81.48620'), ('Lubeck', 1303, '39.23640', '-81.62950'), ('Mineralwells', 1860, '39.17910', '-81.51160'), ('North Hills', 880, '39.31470', '-81.51050'), ('Parkersburg', 33099, '39.26400', '-81.54300'), ('Vienna', 10861, '39.32270', '-81.53820'), ('Washington', 1170, '39.24090', '-81.67340'), ('Williamstown', 2996, '39.40120', '-81.45090')], 'partOfState': '', 'wfo': 'RLX'}, +'WVC109': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Mullens', 1769, '37.57970', '-81.38520'), ('Oceana', 1550, '37.69180', '-81.63270'), ('Pineville', 715, '37.58560', '-81.53500'), ('Twin Falls State Park', 1769, '37.63300', '-81.43730')], 'partOfState': '', 'wfo': 'RLX'}, +'WYC001': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Albany', 80, '41.17000', '-106.12000'), ('Bosler', 27204, '41.58000', '-105.69000'), ('Buford', 0, '41.11000', '-105.30000'), ('Centennial', 191, '41.30000', '-106.11000'), ('Garrett', 235, '42.11000', '-105.60000'), ('Laramie', 27204, '41.31090', '-105.58300'), ('Pumpkin Vine', 0, '41.05000', '-105.46000'), ('Rock River', 235, '41.73120', '-105.97270'), ('Vedauwoo', 0, '41.15000', '-105.40000'), ('Woods Landing', 0, '41.11000', '-106.02000')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYC003': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Basin', 1238, '44.37960', '-108.04250'), ('Burlington', 250, '44.44740', '-108.43170'), ('Byron', 557, '44.79540', '-108.50760'), ('Cowley', 560, '44.88580', '-108.46980'), ('Deaver', 177, '44.88920', '-108.59480'), ('Emblem', 250, '44.51000', '-108.39000'), ('Frannie', 209, '44.97090', '-108.61970'), ('Greybull', 1815, '44.49100', '-108.05720'), ('Hyattville', 73, '44.25000', '-107.60000'), ('Lovell', 2281, '44.83680', '-108.39150'), ('Manderson', 104, '44.26990', '-107.96340'), ('Otto', 250, '44.40000', '-108.27000'), ('Shell', 1815, '44.53000', '-107.78000')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYC005': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Downtown Gillette', 19646, '44.29103', '-105.50198'), ('Echeta', 19646, '44.45113', '-105.85498'), ('Pine Tree Junction', 1347, '43.61673', '-105.78328'), ('Pumpkin Buttes', 1347, '43.73593', '-105.88388'), ('Recluse', 19646, '44.74003', '-105.70798'), ('Reno Junction', 1347, '43.76663', '-105.47688'), ('Rockypoint', 408, '44.90003', '-105.09998'), ('Rozet', 1177, '44.28333', '-105.19998'), ('Savageton', 1347, '43.86453', '-105.78738'), ('Spotted Horse', 19646, '44.71043', '-105.84508'), ('Weston', 19646, '44.63423', '-105.33338'), ('Wright', 1347, '43.74923', '-105.50188'), ('Wyodak', 1177, '44.29013', '-105.36858')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYC007': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Arlington', 192, '41.59000', '-106.21000'), ('Baggs', 348, '41.03560', '-107.65590'), ('Dixon', 79, '41.03410', '-107.53430'), ('Elk Mountain', 192, '41.68780', '-106.41290'), ('Encampment', 534, '41.20880', '-106.79460'), ('Hanna', 873, '41.86990', '-106.55870'), ('Medicine Bow', 274, '41.89980', '-106.20100'), ('Muddy Gap', 97, '42.38000', '-107.44000'), ('Rawlins', 8538, '41.78450', '-107.22790'), ('Riverside', 59, '41.21440', '-106.78070'), ('Saratoga', 1726, '41.45150', '-106.81220'), ('Seminoe Dam', 423, '42.15000', '-106.90000'), ('Shirley Basin', 274, '42.35000', '-106.21000'), ('Sinclair', 423, '41.77750', '-107.11670'), ('Skyline', 0, '41.13300', '-106.58000')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYC009': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Bill', 5288, '43.21000', '-105.26000'), ('Deer Creek', 2231, '42.83000', '-105.78000'), ('Douglas', 5288, '42.75580', '-105.39270'), ('Glenrock', 2231, '42.85710', '-105.85710'), ('Lost Springs', 1, '42.76530', '-104.92380'), ('Rolling Hills Estates', 449, '42.90240', '-105.84600')], 'partOfState': 'east central', 'wfo': 'CYS'}, +'WYC011': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Aladdin', 1161, '44.63333', '-104.18328'), ('Alva', 408, '44.70003', '-104.44998'), ('Beulah', 2274, '44.53333', '-104.08328'), ('Carlile', 222, '44.48333', '-104.79998'), ('Colony', 4335, '44.86903', '-104.15698'), ('Devils Tower', 408, '44.59003', '-104.71498'), ('Devils Tower Junction', 222, '44.50423', '-104.68738'), ('Hulett', 408, '44.68043', '-104.60378'), ('Inyan Kara Mountain', 1161, '44.21383', '-104.34868'), ('Keyhole Reservoir', 222, '44.36673', '-104.84998'), ('Lightning Flat', 408, '44.98333', '-105.03328'), ('Moorcroft', 807, '44.26673', '-104.94998'), ('Moskee', 1161, '44.28333', '-104.18328'), ('New Haven', 408, '44.75003', '-104.84998'), ('Oshoto', 222, '44.60003', '-104.94998'), ('Pine Haven', 222, '44.34883', '-104.81008'), ('Sundance', 1161, '44.40473', '-104.37418'), ('Warren Peak', 1161, '44.48183', '-104.44208')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYC013': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Arapahoe', 1766, '42.97050', '-108.47510'), ('Atlantic City', 6867, '42.50000', '-108.73000'), ('Burris', 0, '43.36407', '-109.27485'), ('Crowheart', 163, '43.31000', '-109.19000'), ('Dubois', 962, '43.53630', '-109.64210'), ('Ethete', 1455, '43.02170', '-108.75700'), ('Fort Washakie', 1477, '43.00790', '-108.92590'), ('Hudson', 407, '42.90200', '-108.58160'), ('Jeffrey City', 106, '42.48000', '-107.84000'), ('Kinnear', 165, '43.15000', '-108.68000'), ('Lander', 6867, '42.83000', '-108.72860'), ('Lost Cabin', 0, '43.28635', '-107.63260'), ('Lysite', 635, '43.25000', '-107.71000'), ('Milford', 0, '42.87633', '-108.78428'), ('Moneta', 635, '43.16000', '-107.73000'), ('Morton', 165, '43.19000', '-108.77000'), ('Pavillion', 165, '43.24400', '-108.69080'), ('Riverton', 9310, '43.03560', '-108.41480'), ('Shoshoni', 635, '43.23790', '-108.10290'), ('South Pass City', 0, '42.46830', '-108.79983'), ('St. Stephens', 9310, '42.98000', '-108.42000'), ('Sweetwater Station', 0, '42.54224', '-108.18370')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYC015': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Fort Laramie', 243, '42.21240', '-104.51660'), ('Hawk Springs', 69, '41.79000', '-104.27000'), ('Jay Em', 243, '42.47000', '-104.36000'), ('La Grange', 332, '41.63940', '-104.16380'), ('Lingle', 510, '42.13880', '-104.34600'), ('Torrington', 5776, '42.06750', '-104.18200'), ('Veteran', 28, '41.96000', '-104.35000'), ('Yoder', 169, '41.91760', '-104.29460')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYC017': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Grass Creek', 351, '43.93000', '-108.65000'), ('Hamilton Dome', 3172, '43.77000', '-108.58000'), ('Kirby', 57, '43.80410', '-108.18020'), ('Lucerne', 525, '43.73000', '-108.17000'), ('Thermopolis', 3172, '43.64800', '-108.21390')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYC019': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Barnum', 249, '43.66000', '-106.91000'), ('Buffalo', 3900, '44.34230', '-106.71740'), ('Kaycee', 249, '43.70980', '-106.63770'), ('Linch', 169, '43.61000', '-106.20000'), ('Mayoworth', 249, '43.83000', '-106.79000'), ('Sussex', 169, '43.70000', '-106.29000')], 'partOfState': 'north central', 'wfo': 'RIW'}, +'WYC021': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Albin', 120, '41.41710', '-104.09970'), ('Burns', 285, '41.19010', '-104.35870'), ('Carpenter', 0, '41.03000', '-104.34000'), ('Cheyenne', 53011, '41.14540', '-104.79230'), ('Federal', 4440, '41.27000', '-105.10000'), ('Fox Farm-College', 3272, '41.11010', '-104.78740'), ('Gun Barrel', 285, '41.44000', '-104.35000'), ('Horse Creek', 4440, '41.41000', '-105.18000'), ('North Cheyenne', 4869, '41.21850', '-104.78970'), ('Pine Bluffs', 1153, '41.18040', '-104.06820'), ('South Greeley High', 4201, '41.09710', '-104.80580'), ('Warren Af Base', 4440, '41.15310', '-104.86060'), ('Whitaker', 4869, '41.41000', '-104.87000')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYC023': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Afton', 1818, '42.72630', '-110.92840'), ('Alpine', 550, '43.16080', '-111.01360'), ('Auburn', 276, '42.79000', '-111.00000'), ('Bedford', 169, '42.90000', '-110.93000'), ('Cokeville', 506, '42.08320', '-110.95500'), ('Diamondville', 716, '41.77770', '-110.53640'), ('Elkol', 0, '41.72384', '-110.61233'), ('Etna', 123, '43.03000', '-111.01000'), ('Fairview', 1818, '42.69000', '-110.98000'), ('Fossil Butte National Monument', 2651, '41.86000', '-110.76000'), ('Freedom', 0, '42.98161', '-111.04325'), ('Grover', 137, '42.69000', '-110.93000'), ('Kemmerer', 2651, '41.78220', '-110.55140'), ('La Barge', 431, '42.26120', '-110.19630'), ('Opal', 102, '41.77000', '-110.32080'), ('Sage Junction', 488, '41.82000', '-110.98000'), ('Smoot', 182, '42.62000', '-110.92000'), ('Thayne', 341, '42.91980', '-111.00110'), ('Turnerville', 0, '42.84822', '-110.89601'), ('Viola', 0, '42.26604', '-110.37855')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYC025': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Alcova', 20, '42.55000', '-106.72000'), ('Arminto', 249, '43.18000', '-107.26000'), ('Bar Nunn', 936, '42.92620', '-106.34630'), ('Casper', 49644, '42.83260', '-106.32930'), ('Edgerton', 169, '43.41450', '-106.24720'), ('Ervay', 0, '42.85844', '-107.36166'), ('Evansville', 2255, '42.87250', '-106.25870'), ('Hiland', 635, '43.12000', '-107.35000'), ('Midwest', 408, '43.41130', '-106.27750'), ('Mills', 2591, '42.84580', '-106.37590'), ('Natrona', 103, '43.03000', '-106.81000'), ('Powder River', 51, '43.03000', '-106.98000'), ('Waltman', 103, '43.06000', '-107.19000')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYC027': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Keeline', 101, '42.75000', '-104.75000'), ('Lance Creek', 51, '43.02000', '-104.64000'), ('Lusk', 1447, '42.76070', '-104.45360'), ('Manville', 101, '42.77950', '-104.61690'), ('Redbird', 906, '43.24000', '-104.27000'), ('Van Tassell', 18, '42.66360', '-104.09070')], 'partOfState': 'east central', 'wfo': 'CYS'}, +'WYC029': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Canyon', 913, '44.73000', '-110.49000'), ('Clark', 0, '44.89941', '-109.15097'), ('Cody', 8835, '44.51950', '-109.05410'), ('East Entrance', 0, '44.48978', '-110.00234'), ('Garland', 0, '44.77963', '-108.66052'), ('Mammoth', 913, '44.98000', '-110.70000'), ('Meeteetse', 351, '44.15550', '-108.87130'), ('Northeast Entrance', 0, '44.98296', '-110.05974'), ('Pahaska', 8835, '44.50000', '-109.97000'), ('Pitchfork', 0, '44.09303', '-109.08846'), ('Powell', 5373, '44.75000', '-108.76000'), ('Ralston', 0, '44.71603', '-108.86463'), ('Sunlight Basin', 0, '44.73856', '-109.54259'), ('Tower Junction', 913, '44.92000', '-110.42000'), ('Valley', 0, '44.16276', '-109.59993'), ('Wapiti', 8835, '44.47000', '-109.43000')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYC031': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Bordeaux', 3548, '41.95000', '-104.95000'), ('Chugwater', 244, '41.75570', '-104.82110'), ('Glendo', 229, '42.50400', '-105.02490'), ('Guernsey', 1147, '42.26630', '-104.74430'), ('Hartville', 76, '42.32740', '-104.72420'), ('Sibley Peak', 229, '42.44000', '-105.03000'), ('Wheatland', 3548, '42.05120', '-104.95890')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYC033': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Arvada', 0, '44.65381', '-106.13040'), ('Banner', 0, '44.60101', '-106.86586'), ('Beckton', 0, '44.74913', '-107.12922'), ('Big Horn', 0, '44.67537', '-106.97268'), ('Burgess Junction', 0, '44.76989', '-107.51907'), ('Clearmont', 115, '44.64017', '-106.38063'), ('Dayton', 678, '44.87274', '-107.26265'), ('Leiter', 0, '44.71770', '-106.26852'), ('Parkman', 0, '44.95782', '-107.33337'), ('Ranchester', 701, '44.90883', '-107.16548'), ('Sheridan', 15804, '44.79724', '-106.95590'), ('Story', 0, '44.57318', '-106.88707'), ('Ucross', 0, '44.56072', '-106.54120'), ('Wyarno', 0, '44.80927', '-106.77125')], 'partOfState': 'north central', 'wfo': 'BYZ'}, +'WYC035': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Big Piney', 408, '42.54100', '-110.11710'), ('Big Sandy', 1412, '42.63000', '-109.47000'), ('Bondurant', 155, '43.20000', '-110.41000'), ('Boulder', 30, '42.72000', '-109.63000'), ('Calpet', 0, '42.28384', '-110.25905'), ('Cora', 76, '42.94000', '-109.98000'), ('Daniel', 89, '42.87000', '-110.07000'), ('Marbleton', 720, '42.55750', '-110.09940'), ('Pinedale', 1412, '42.86640', '-109.86470')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYC037': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Bairoil', 97, '42.23800', '-107.55890'), ('Burntfork', 0, '41.03000', '-110.00000'), ('Eden', 388, '42.05000', '-109.43000'), ('Farson', 242, '42.11000', '-109.44000'), ('Granger', 146, '41.59410', '-109.96590'), ('Green River', 11808, '41.51590', '-109.46790'), ('Little America', 56, '41.55000', '-109.86000'), ('McKinnon', 49, '41.03000', '-109.93000'), ('Point Of Rocks', 3, '41.68000', '-108.78000'), ('Red Desert', 261, '41.65000', '-108.12000'), ('Reliance', 665, '41.67000', '-109.19000'), ('Rock Springs', 18708, '41.59810', '-109.22150'), ('Superior', 244, '41.76060', '-108.96360'), ('Wamsutter', 261, '41.66890', '-107.97590')], 'partOfState': 'south central', 'wfo': 'RIW'}, +'WYC039': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Alta', 0, '43.75380', '-111.03690'), ('Grant Village', 0, '44.39438', '-110.56432'), ('Hoback Junction', 1138, '43.32000', '-110.73000'), ('Jackson', 8647, '43.47400', '-110.76390'), ('Kelly', 0, '43.62298', '-110.62353'), ('Lake', 913, '44.55000', '-110.40000'), ('Madison', 913, '44.64000', '-110.86000'), ('Moose', 8647, '43.65000', '-110.72000'), ('Moran Junction', 8647, '43.84000', '-110.51000'), ('Old Faithful', 913, '44.46000', '-110.83000'), ('Rafter J Ranch', 1138, '43.42620', '-110.79840'), ('South Entrance', 0, '44.13410', '-110.66646'), ('Teton Village', 175, '43.57000', '-110.81000'), ('Wilson', 1294, '43.50000', '-110.87000')], 'partOfState': 'northwest', 'wfo': 'RIW'}, +'WYC041': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Almy', 0, '41.33200', '-111.00500'), ('Altamont', 0, '41.19200', '-110.79000'), ('Carter', 0, '41.43800', '-110.42800'), ('Church Buttes', 0, '41.41662', '-110.07432'), ('Evanston', 11507, '41.26800', '-110.96300'), ('Fort Bridger', 400, '41.31700', '-110.38400'), ('Leroy', 0, '41.32000', '-110.62000'), ('Lonetree', 0, '41.05400', '-110.15400'), ('Lyman', 1938, '41.32700', '-110.29300'), ('Millburne', 0, '41.25800', '-110.41300'), ('Piedmont', 0, '41.21600', '-110.62700'), ('Ragen', 0, '41.27000', '-110.68000'), ('Robertson', 0, '41.18500', '-110.41300')], 'partOfState': 'southwest', 'wfo': 'SLC'}, +'WYC043': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Big Trails', 304, '43.77000', '-107.32000'), ('Ten Sleep', 304, '44.03470', '-107.44740'), ('Winchester', 60, '43.86000', '-108.16000'), ('Worland', 5250, '44.00540', '-107.95800')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYC045': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Buckhorn', 3065, '44.15003', '-104.09998'), ('Clareton', 872, '43.70003', '-104.68328'), ('Downtown Newcastle', 3065, '43.85503', '-104.20198'), ('Four Corners', 3065, '44.08333', '-104.13328'), ('Morrisey', 3065, '43.53333', '-104.39998'), ('Osage', 215, '43.98003', '-104.42018'), ('Rochelle', 1347, '43.59203', '-104.95898'), ('Upton', 872, '44.10213', '-104.62808')], 'partOfState': 'northeast', 'wfo': 'UNR'}, } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/IrtAccess.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/IrtAccess.py index 89fc8f5e28..31f6af9c6b 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/IrtAccess.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/IrtAccess.py @@ -491,7 +491,7 @@ class IrtAccess(): self.logEvent("Transmit: ", cmd) import siteConfig from subprocess import Popen,PIPE - output,err = Popen(cmd.split(" "), stdout=PIPE,stderr=PIPE).communicate() + output,err = Popen(cmd, shell=True, stdout=PIPE,stderr=PIPE).communicate() if output.find(siteConfig.GFESUITE_MHSID+"-") == -1: alertMsg = "ISC Send failed transmission to : "+",".join(addresses)+" --> "+output+" "+err self.logProblem(alertMsg) diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py index 05a65635e6..d7103ad820 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/ifpnetCDF.py @@ -31,6 +31,7 @@ except: import NetCDF import JUtil import iscUtil +import logging from java.util import ArrayList from java.io import File @@ -72,6 +73,7 @@ from com.raytheon.uf.common.localization import LocalizationContext_Localization # 09/20/13 2405 dgilling Clip grids before inserting into cache. # 10/22/13 2405 rjpeter Remove WECache and store directly to cube. # 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() +# 08/14/2014 3526 randerso Fixed to get sampling definition from appropriate site # # Original A1 BATCH WRITE COUNT was 10, we found doubling that @@ -83,7 +85,7 @@ ifpNetcdfLogger=None ## Logging methods ## def initLogger(logFile=None): global ifpNetcdfLogger - ifpNetcdfLogger = iscUtil.getLogger("ifpnetCDF",logFile) + ifpNetcdfLogger = iscUtil.getLogger("ifpnetCDF",logFile, logLevel=logging.INFO) def logEvent(*msg): ifpNetcdfLogger.info(iscUtil.tupleToString(*msg)) @@ -249,7 +251,7 @@ def timeFromComponents(timeTuple): epochDays = epochDays + daysInMonth(pmonth, timeTuple[0]) pmonth = pmonth + 1 - epochDays = epochDays + timeTuple[2] - 1; # but not this day + epochDays = epochDays + timeTuple[2] - 1 # but not this day epochTime = epochDays * 86400 + \ timeTuple[3] * 3600 + timeTuple[4] * 60 + timeTuple[5] @@ -409,7 +411,7 @@ def storeLatLonGrids(client, file, databaseID, invMask, krunch, clipArea): gridLoc = IFPServerConfigManager.getServerConfig(DatabaseID(databaseID).getSiteId()).dbDomain() pDict = gridLoc.getProjection() - latLonGrid = gridLoc.getLatLonGrid().__numpy__[0]; + latLonGrid = gridLoc.getLatLonGrid().__numpy__[0] latLonGrid = numpy.reshape(latLonGrid, (2,gridLoc.getNy().intValue(),gridLoc.getNx().intValue()), order='F') @@ -1188,11 +1190,20 @@ def compressFile(filename, factor): ###------------ # getSamplingDefinition - accesses server to retrieve definition, # returns None or the sampling definition as Python. -def getSamplingDefinition(client, configName): +def getSamplingDefinition(client, configName, siteId): if configName is None: return None - file = PathManagerFactory.getPathManager().getStaticFile("isc/utilities/" + configName + ".py") - if file is None: + pathManager = PathManagerFactory.getPathManager() + fileName = "isc/utilities/" + configName + ".py" + siteContext = pathManager.getContextForSite(LocalizationType.COMMON_STATIC, siteId) + file = pathManager.getFile(siteContext, fileName) + + # if site file not found, try base level + if file is None or not file.exists(): + baseContext = pathManager.getContext(LocalizationType.COMMON_STATIC, LocalizationLevel.BASE) + file = pathManager.getFile(baseContext, fileName) + + if file is None or not file.exists(): s = "Sampling Definition " + configName + " not found, using all grids." logProblem(s) return None @@ -1341,7 +1352,8 @@ def main(outputFilename, parmList, databaseID, startTime, #del maskGrid # Determine sampling definition - samplingDef = getSamplingDefinition(client, argDict['configFileName']) + siteId = DatabaseID(argDict['databaseID']).getSiteId() + samplingDef = getSamplingDefinition(client, argDict['configFileName'], siteId) logVerbose("Sampling Definition:", samplingDef) # Open the netCDF file @@ -1385,7 +1397,7 @@ def main(outputFilename, parmList, databaseID, startTime, argDict['krunch'], clipArea) totalGrids = totalGrids + 3 - storeGlobalAtts(file, argDict); + storeGlobalAtts(file, argDict) file.close() diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py index 5fdd6066ac..ac5a013e4e 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/isc/iscMosaic.py @@ -30,6 +30,7 @@ except: import numpy import JUtil +from java.lang import System from java.util import ArrayList from java.util import LinkedHashMap from com.raytheon.uf.common.dataplugin.gfe.grid import Grid2DFloat @@ -86,7 +87,11 @@ from com.raytheon.uf.edex.database.cluster import ClusterTask # Changed WECache to limit the number of cached grids kept in memory # 01/09/14 16952 randerso Fix regression made in #2517 which caused errors with overlapping grids # 02/04/14 17042 ryu Check in changes for randerso. +# 04/03/2014 2737 randerso Allow iscMosaic to blankOtherPeriods even when no grids received # 04/11/2014 17242 David Gillingham (code checked in by zhao) +# 07/22/2014 17484 randerso Update cluster lock time to prevent time out +# 08/07/2014 3517 randerso Improved memory utilization and error handling when unzipping input file. +# 08/14/2014 3526 randerso Fix bug in WECache that could incorrectly delete grids in the destination database # BATCH_DELAY = 0.0 @@ -241,7 +246,7 @@ class WECache(object): If the cache does not have room for a batch of grids to be loaded without exceeding the max cache size the earliest dirty grids (or clean if not enough dirty grids are found) are flushed to disk before reading - the next dash. + the next batch. Args: tr: the missing time range @@ -271,7 +276,7 @@ class WECache(object): def __flushGrids(self, trList): """ - Flush a list time ranges from the cache. + Flush a list of time ranges from the cache. Dirty time ranges will be written to disk. Writes will be done in _batchSize groups @@ -284,10 +289,22 @@ class WECache(object): saveList = [] # python time ranges covered by this saveRequest saveSize = 0 # number of grids in saveRequest + # get full time range for flush + if (len(trList)): + sortedList = sorted(trList, key=lambda t: t[0]) + flushTR = (sortedList[0][0], sortedList[-1][1]) + else: + flushTR = (0, 2**31-1) # all times + timeSpan = None # time span if this contiguous batch gridsToSave = ArrayList(self._batchSize) # grids in this contiguous batch saveBatch = False - for tr in sorted(trList, key=lambda t: t[0]): + for tr in self.keys(): + if tr[1] <= flushTR[0]: + continue + if tr[0] >= flushTR[1]: + break + dirty = tr in self._dirty if dirty: logger.debug("WECache storing: %s", printTR(tr)) @@ -312,6 +329,9 @@ class WECache(object): logger.debug("WECache purging: %s", printTR(tr)) self._inv[tr] = None self._populated.remove(tr) + else: + # skip any clean unpopulated grids + logger.debug("WECache skipping: %s", printTR(tr)) if saveBatch: # add this contiguous batch to saveRequest @@ -402,7 +422,7 @@ class WECache(object): self._populated.add(tr) def flush(self): - """Writes the entire contents of the WECache to HDF5/DB""" + """Writes all dirty time ranges in the WECache to HDF5/DB""" # flush entire inventory self.__flushGrids(self.keys()) @@ -536,25 +556,39 @@ class IscMosaic: gzipFile = None unzippedFile = None + gzipped = True try: import gzip gzipFile = gzip.open(filename, 'rb') unzippedFile = open(filename + ".unzipped", 'w') - unzippedFile.write(gzipFile.read()) + while True: + buffer = gzipFile.read(65536) + if len(buffer) == 0: + break + unzippedFile.write(buffer) + except IOError as e: + if e.message == "Not a gzipped file": + gzipped = False + else: + raise + else: + # no errors, close and rename the file unzippedFile.close() gzipFile.close() os.rename(unzippedFile.name, gzipFile.filename) - except: - # Not gzipped + gzipFile = unzippedFile = None + finally: + # close the files in case of error if gzipFile is not None: gzipFile.close() if unzippedFile is not None: unzippedFile.close() - os.remove(unzippedFile.name) + if not gzipped: + os.remove(unzippedFile.name) a = os.times() - cpu = a[0] + a[1] - stop1 = a[4] + cpugz = a[0] + a[1] + stopgz = a[4] file = NetCDF.NetCDFFile(filename, "r") @@ -654,15 +688,15 @@ class IscMosaic: SendNotifications.send(notification) a = os.times() - cpugz = a[0] + a[1] + cpu = a[0] + a[1] stop = a[4] logger.info("Elapsed/CPU time: " "%-.2f / %-.2f decompress, " "%-.2f / %-.2f processing, " "%-.2f / %-.2f total", - stop1 - start, cpu - cpu0, - stop - stop1, cpugz - cpu, - stop - start, cpugz - cpu0) + stopgz - start, cpugz - cpu0, + stop - stopgz, cpu - cpugz, + stop - start, cpu - cpu0) def __processParm(self, parmName, vars, history, filename): @@ -678,7 +712,7 @@ class IscMosaic: inTimes = self.__getIncomingValidTimes(vars[0]) logger.info("Processing %s #Grids=%d Site=%s", parmName, len(inTimes), self.__siteID) - if self.__eraseFirst or len(inTimes) > 0: + if self.__blankOtherPeriods or self.__eraseFirst or len(inTimes) > 0: while retryAttempt != retries: logger.debug("iscMosaic: Attempting to acquire cluster lock for: %s", parmName) startTime = time.time() @@ -726,6 +760,9 @@ class IscMosaic: # process incoming grids for i in xrange(len(inTimes)): + # update cluster lock time to avoid time out + ClusterLockUtils.updateLockTime("ISC Write Lock", parmName ,System.currentTimeMillis()) + # Put in a delay so we don't hammer the server so hard. if self.__gridDelay > 0.0: time.sleep(self.__gridDelay) @@ -1096,9 +1133,9 @@ class IscMosaic: #areaMask.setGloc(domain) - areaMask = ReferenceData(domain, ReferenceID("full"), None, CoordinateType.GRID); - areaMask.getGrid(); - areaMask.invert(); + areaMask = ReferenceData(domain, ReferenceID("full"), None, CoordinateType.GRID) + areaMask.getGrid() + areaMask.invert() elif self.__altMask is not None: try: @@ -1272,7 +1309,7 @@ class IscMosaic: else: #FIXME for i in range(0, len(history)): - hist.add(history[i]); + hist.add(history[i]) if gridType == 'SCALAR': data = Grid2DFloat.createGrid(value.shape[1], value.shape[0], value) @@ -1290,7 +1327,7 @@ class IscMosaic: keyList = ArrayList() for key in value[1]: keyList.add(WeatherKey()) - slice = WeatherGridSlice(); + slice = WeatherGridSlice() slice.setValidTime(tr) slice.setGridParmInfo(gpi) slice.setGridDataHistory(hist) @@ -1301,7 +1338,7 @@ class IscMosaic: keyList = ArrayList() for key in value[1]: keyList.add(DiscreteKey()) - slice = DiscreteGridSlice(); + slice = DiscreteGridSlice() slice.setValidTime(tr) slice.setGridParmInfo(gpi) slice.setGridDataHistory(hist) diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/zones2cities.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/zones2cities.py index ff9f2b3a62..f8e7e8f905 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/zones2cities.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/gfe/zones2cities.py @@ -1,3400 +1,3731 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## +# +# SOFTWARE HISTORY +# +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 16, 2014 #3685 randerso Original A1 file sorted by key +# Oct 16, 2014 #3685 randerso Regenerated from GIS database for mixed case WA +# +## zonedata = { -'UTZ010': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CASTLE GATE', None, '39.73000', '-110.88000'), ('CLEAR CREEK', None, '39.65000', '-111.15000'), ('COAL CITY', None, '39.67000', '-111.02000'), ('EAST CARBON', 1393, '39.55000', '-110.38330'), ('FRUITLAND', None, '40.22000', '-110.83000'), ('HELPER', 2025, '39.68970', '-110.85910'), ('HIAWATHA', None, '39.49620', '-111.02900'), ('KENILWORTH', None, '39.68000', '-110.80000'), ('SCOFIELD RES', None, '39.72500', '-111.16120'), ('STRAWBERRY RES', None, '40.14000', '-111.13000'), ('SUNNYSIDE', 404, '39.55220', '-110.40010'), ('WATTIS', None, '39.53000', '-111.02000')], 'partOfState': '', 'wfo': 'SLC'}, -'MNZ069': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELLE PLAINE', 3789, '44.62360', '-93.76420'), ('ELKO', 472, '44.56530', '-93.32450'), ('JORDAN', 3833, '44.66850', '-93.63220'), ('NEW MARKET', 332, '44.57210', '-93.34970'), ('NEW PRAGUE', 4559, '44.54660', '-93.57400'), ('PRIOR LAKE', 15917, '44.72850', '-93.43400'), ('SAVAGE', 21115, '44.75540', '-93.35720'), ('SHAKOPEE', 20568, '44.77060', '-93.47560')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ068': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARVER', 1266, '44.76040', '-93.62750'), ('CHANHASSEN', 20321, '44.85720', '-93.55780'), ('CHASKA', 17449, '44.82110', '-93.60510'), ('COLOGNE', 1012, '44.77160', '-93.78800'), ('HAMBURG', 538, '44.73160', '-93.96320'), ('MAYER', 554, '44.88420', '-93.88830'), ('NEW GERMANY', 346, '44.88370', '-93.97090'), ('NORWOOD/YOUNG AMERICA', None, '44.78070', '-93.91530'), ('VICTORIA', 4025, '44.86610', '-93.65840'), ('WACONIA', 6814, '44.84790', '-93.79410'), ('WATERTOWN', 3029, '44.96310', '-93.84570')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ063': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AFTON', 2839, '44.90320', '-92.81880'), ('BAYPORT', 3162, '45.01780', '-92.78020'), ('COTTAGE GROVE', 30582, '44.81750', '-92.92700'), ('FOREST LAKE', 6798, '45.27580', '-92.98580'), ('HUGO', 6363, '45.15910', '-92.96300'), ('LAKE ELMO', 6863, '44.99540', '-92.90770'), ('LAKELAND', 1917, '44.95050', '-92.77060'), ('MAHTOMEDI', 7563, '45.05610', '-92.96080'), ('MARINE ON ST CROIX', None, '45.19800', '-92.77320'), ('NEWPORT', 3715, '44.87450', '-92.99860'), ('OAKDALE', 26653, '44.98870', '-92.96630'), ('ST PAUL PARK', None, '44.83940', '-92.99500'), ('STILLWATER', 15143, '45.05650', '-92.82220'), ('WOODBURY', 46463, '44.90550', '-92.92090')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ062': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARDEN HILLS', 9652, '45.07140', '-93.16540'), ('FALCON HEIGHTS', 5572, '44.98790', '-93.17940'), ('LITTLE CANADA', 9771, '45.02370', '-93.08390'), ('MAPLEWOOD', 34947, '44.99290', '-93.02370'), ('MOUNDS VIEW', 12738, '45.10600', '-93.20610'), ('NEW BRIGHTON', 22206, '45.06560', '-93.20430'), ('NORTH OAKS', 3883, '45.10680', '-93.08720'), ('NORTH ST PAUL', None, '45.01410', '-92.99830'), ('ROSEVILLE', 33690, '45.01520', '-93.15250'), ('SHOREVIEW', 25924, '45.08390', '-93.13590'), ('ST PAUL', None, '44.94770', '-93.10370'), ('VADNAIS HEIGHTS', 13069, '45.05640', '-93.07300'), ('WHITE BEAR LAKE', 24325, '45.06770', '-93.01270')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ061': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ANDOVER', 26588, '45.25750', '-93.33110'), ('ANOKA', 18076, '45.21040', '-93.39010'), ('BETHEL', 443, '45.40060', '-93.26940'), ('BLAINE', 44942, '45.16610', '-93.20840'), ('CENTERVILLE', 3202, '45.16500', '-93.05300'), ('CIRCLE PINES', 4663, '45.13850', '-93.15240'), ('COLUMBIA HEIGHTS', 18520, '45.04910', '-93.24660'), ('COON RAPIDS', 61607, '45.17410', '-93.31110'), ('EAST BETHEL', 10941, '45.34420', '-93.20140'), ('FRIDLEY', 27449, '45.08480', '-93.25890'), ('HAM LAKE', 12710, '45.26000', '-93.20080'), ('LINO LAKES', 16791, '45.16190', '-93.08250'), ('RAMSEY', 18510, '45.26340', '-93.44770'), ('ST FRANCIS', None, '45.39980', '-93.38960')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ060': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLOOMINGTON', 85172, '44.82950', '-93.31510'), ('BROOKLYN CENTER', 29172, '45.06880', '-93.31780'), ('BROOKLYN PARK', 67388, '45.10960', '-93.35210'), ('CHAMPLIN', 22193, '45.16550', '-93.38920'), ('CORCORAN', 5630, '45.11700', '-93.58630'), ('CRYSTAL', 22698, '45.03730', '-93.35930'), ('DAYTON', 4699, '45.18990', '-93.47170'), ('EDEN PRAIRIE', 54901, '44.84920', '-93.45810'), ('EDINA', 47425, '44.89100', '-93.35960'), ('GOLDEN VALLEY', 20281, '44.98990', '-93.35860'), ('GREENFIELD', 2544, '45.10490', '-93.69640'), ('HANOVER', 1355, '45.15610', '-93.65860'), ('HOPKINS', 17145, '44.92670', '-93.40530'), ('INDEPENDENCE', 3236, '45.02210', '-93.70520'), ('LONG LAKE', 1842, '44.98530', '-93.56880'), ('LORETTO', 570, '45.05540', '-93.63520'), ('MAPLE GROVE', 50365, '45.10600', '-93.46000'), ('MAPLE PLAIN', 2088, '45.00890', '-93.66150'), ('MEDINA', 4005, '45.03120', '-93.59530'), ('MINNEAPOLIS', 382618, '44.96180', '-93.26680'), ('NEW HOPE', 20873, '45.03700', '-93.38700'), ('OSSEO', 2434, '45.11790', '-93.39910'), ('PLYMOUTH', 65894, '45.02430', '-93.46020'), ('RICHFIELD', 34439, '44.87720', '-93.28210'), ('ROBBINSDALE', 14123, '45.02670', '-93.33320'), ('ROCKFORD', 3484, '45.08910', '-93.73560'), ('ROGERS', 3588, '45.19390', '-93.55170'), ('ST BONIFACIUS', None, '44.90490', '-93.74700'), ('ST LOUIS PARK', None, '44.94860', '-93.36490'), ('THE LAKE MINNETONKA AREA', None, '44.93210', '-93.46140')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ067': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARLINGTON', 2048, '44.60710', '-94.07790'), ('GAYLORD', 2279, '44.55450', '-94.21820'), ('GIBBON', 808, '44.53510', '-94.52300'), ('GREEN ISLE', 334, '44.67810', '-94.00620'), ('HENDERSON', 910, '44.53030', '-93.90790'), ('NEW AUBURN', 488, '44.67280', '-94.22890'), ('WINTHROP', 1367, '44.54370', '-94.36460')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ066': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BISCAY', 114, '44.82650', '-94.27410'), ('BROWNTON', 807, '44.73260', '-94.35120'), ('GLENCOE', 5453, '44.76950', '-94.14950'), ('HUTCHINSON', 13080, '44.88880', '-94.37470'), ('LESTER PRAIRIE', 1377, '44.88370', '-94.03970'), ('PLATO', 336, '44.77240', '-94.03900'), ('SILVER LAKE', 761, '44.90380', '-94.19750'), ('STEWART', 564, '44.72510', '-94.48790'), ('WINSTED', 2094, '44.96580', '-94.04880')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ065': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BIRD ISLAND', 1195, '44.76480', '-94.89400'), ('BUFFALO LAKE', 768, '44.73670', '-94.61770'), ('DANUBE', 529, '44.79130', '-95.10250'), ('FAIRFAX', 1295, '44.52820', '-94.72290'), ('FRANKLIN', 498, '44.53090', '-94.88610'), ('HECTOR', 1166, '44.74140', '-94.71270'), ('MORTON', 442, '44.55300', '-94.98490'), ('OLIVIA', 2570, '44.77580', '-94.99710'), ('RENVILLE', 1323, '44.79420', '-95.21110'), ('SACRED HEART', 549, '44.78310', '-95.35030')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ064': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CANBY', 1903, '44.71460', '-96.26900'), ('CLARKFIELD', 944, '44.79120', '-95.80730'), ('ECHO', 278, '44.62270', '-95.41130'), ('GRANITE FALLS', 3070, '44.81110', '-95.53870'), ('HANLEY FALLS', 323, '44.69190', '-95.61910'), ('HAZEL RUN', 64, '44.74980', '-95.71610'), ('PORTER', 190, '44.64070', '-96.16960'), ('ST LEO', None, '44.71610', '-96.05470'), ('WOOD LAKE', 436, '44.65080', '-95.53490')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MOZ079': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALDRICH', 75, '37.54740', '-93.55440'), ('BOLIVAR', 9143, '37.61440', '-93.41020'), ('BRIGHTON', None, '37.45770', '-93.34770'), ('DUNNEGAN', None, '37.70800', '-93.57660'), ('EUDORA', None, '37.48240', '-93.53740'), ('FAIR PLAY', 418, '37.62990', '-93.57290'), ('FLEMINGTON', 124, '37.80470', '-93.50110'), ('GOODSON', None, '37.70190', '-93.25130'), ('HALF WAY', None, '37.61630', '-93.24440'), ('HUMANSVILLE', 946, '37.79440', '-93.57770'), ('MORRISVILLE', 344, '37.48100', '-93.42710'), ('PLEASANT HOPE', 548, '37.46300', '-93.27240'), ('POLK', None, '37.72910', '-93.29910')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ078': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARNICA', None, '37.75160', '-93.70830'), ('BEARCREEK', None, '37.65720', '-93.65800'), ('CANE HILL', None, '37.57880', '-93.73130'), ('CAPLINGER MILLS', None, '37.79410', '-93.80410'), ('CEDAR SPRINGS', None, '37.87350', '-93.89330'), ('EL DORADO SPRINGS', 3775, '37.87680', '-94.02100'), ('FILLEY', None, '37.75880', '-93.94880'), ('JERICO SPRINGS', 259, '37.62210', '-94.00830'), ('MASTERS', None, '37.60550', '-93.66130'), ('OLYMPIA', None, '37.72600', '-94.02820'), ('STOCKTON', 1960, '37.69880', '-93.79580'), ('UMBER VIEW HEIGHTS', 52, '37.62420', '-93.80380'), ('WAGONER', None, '37.67040', '-93.92520')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ071': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BEULAH', None, '37.62410', '-91.91680'), ('DOOLITTLE', 644, '37.94020', '-91.88070'), ('EDGAR SPRINGS', 190, '37.70440', '-91.86630'), ('I-44 NEAR MILE MARKER 170', None, '37.85000', '-92.03000'), ('I-44 NEAR MILE MARKER 180', None, '37.95000', '-91.86800'), ('I-44 NEAR MILE MARKER 190', None, '37.99000', '-91.68000'), ('JEROME', None, '37.92600', '-91.97740'), ('NEWBURG', 484, '37.91410', '-91.90250'), ('NORTHWYE', None, '37.97490', '-91.75550'), ('ROLLA', 16367, '37.95130', '-91.77100'), ('ST. JAMES', 3704, '37.99710', '-91.61410')], 'partOfState': 'EAST CENTRAL', 'wfo': 'SGF'}, -'MOZ070': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CROCKER', 1033, '37.94880', '-92.26360'), ("DEVIL'S ELBOW", None, '37.84580', '-92.06360'), ('DIXON', 1570, '37.99160', '-92.09350'), ('FORT LEONARD WOOD', 13666, '37.70520', '-92.15800'), ('I-44 NEAR MILE MARKER 150', None, '37.77800', '-92.32000'), ('I-44 NEAR MILE MARKER 160', None, '37.82000', '-92.18500'), ('LAQUEY', None, '37.77020', '-92.30330'), ('OZARK SPRINGS', None, '37.83960', '-92.33770'), ('RICHLAND', 1805, '37.86110', '-92.39950'), ('ST. ROBERT', 2760, '37.82790', '-92.17740'), ('SWEDEBORG', None, '37.91380', '-92.33160'), ('WAYNESVILLE', 3507, '37.82860', '-92.20050')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOZ073': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANTHONIES MILL', None, '38.08300', '-91.08300'), ('BELGRADE', None, '37.78680', '-90.84940'), ('CADET', None, '37.98750', '-90.68840'), ('CALEDONIA', 158, '37.76360', '-90.77100'), ('COURTOIS', None, '37.76700', '-91.08300'), ('IRONDALE', 437, '37.83420', '-90.67090'), ('LATTY', None, '37.98230', '-90.89320'), ('MINERAL POINT', 363, '37.94510', '-90.72440'), ('OLD MINES', None, '38.01700', '-90.76700'), ('POTOSI', 2662, '37.93600', '-90.78210'), ('RICHWOODS', None, '38.16700', '-90.83300'), ('SHIRLEY', None, '37.91510', '-90.91930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ072': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BOURBON', 1348, '38.15160', '-91.24720'), ('CHERRYVILLE', None, '37.85000', '-91.28300'), ('COOK STATION', None, '37.81280', '-91.43790'), ('CUBA', 3230, '38.06300', '-91.39990'), ('DAVISVILLE', None, '37.80790', '-91.18510'), ('DILLARD', None, '37.73680', '-91.20430'), ('LEASBURG', 323, '38.09420', '-91.29500'), ('OAK HILL', None, '38.20590', '-91.42070'), ('ROSATI', None, '38.02690', '-91.53090'), ('ST. CLOUD', 56, '38.17250', '-91.21260'), ('STEELVILLE', 1429, '37.96940', '-91.35540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ075': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLOOMSDALE', 419, '38.01140', '-90.21930'), ('COFFMAN', None, '37.78300', '-90.20000'), ('MINNITH', None, '37.79820', '-90.05010'), ('RIVER AUX VASES', None, '37.87220', '-90.11290'), ('ROCKY RIDGE', None, '37.93340', '-90.24270'), ('ST. MARY', 377, '37.87610', '-89.94870'), ('STE. GENEVIEVE', 4476, '37.97490', '-90.04950'), ('WEINGARTEN', None, '37.88300', '-90.21700'), ('WOMAC', None, '37.68120', '-90.19650')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'MOZ074': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BISMARCK', 1470, '37.76740', '-90.62270'), ('BLACKWELL', None, '38.04370', '-90.62400'), ('BONNE TERRE', 4039, '37.92270', '-90.54980'), ('DESLOGE', 4802, '37.87380', '-90.52070'), ('DOE RUN', None, '37.74290', '-90.50370'), ('FARMINGTON', 13924, '37.78000', '-90.42590'), ('FRANKCLAY', None, '37.86180', '-90.61510'), ('FRENCH VILLAGE', None, '37.97260', '-90.38980'), ('IRON MOUNTAIN', None, '37.69540', '-90.64040'), ('KNOB LICK', None, '37.68300', '-90.38300'), ('LEADINGTON', 206, '37.83430', '-90.48160'), ('LEADWOOD', 1160, '37.86220', '-90.58940'), ('LIBERTYVILLE', None, '37.70370', '-90.28820'), ('PARK HILLS', 7861, '37.84930', '-90.52660')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'MOZ077': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BOSTON', None, '37.41270', '-94.28160'), ('BURGESS', 70, '37.55610', '-94.61470'), ('GOLDEN CITY', 884, '37.39300', '-94.09350'), ('HANNON', None, '37.62240', '-94.49380'), ('IANTHA', None, '37.51680', '-94.39740'), ('IRWIN', None, '37.58850', '-94.28520'), ('KENOMA', None, '37.43940', '-94.19710'), ('LAMAR', 4425, '37.49490', '-94.27630'), ('LAMAR HEIGHTS', 216, '37.49350', '-94.29740'), ('LIBERAL', 779, '37.55800', '-94.51960'), ('MILFORD', 52, '37.58460', '-94.15690'), ('MINDENMINES', 409, '37.47130', '-94.58960'), ('NASHVILLE', None, '37.37430', '-94.49050'), ('OAKTON', None, '37.45800', '-94.35380'), ('OSKALOOSA', None, '37.63910', '-94.59210'), ('VERDELLA', None, '37.60630', '-94.43830')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ076': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALTENBURG', 309, '37.63130', '-89.58140'), ('FROHNA', 192, '37.63650', '-89.62050'), ('LITHIUM', 0, '37.83220', '-89.88380'), ('LONGTOWN', 76, '37.66980', '-89.77350'), ('PERRYVILLE', 7667, '37.72610', '-89.87220'), ('SILVER LAKE', None, '37.68360', '-89.99000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'VAZ010': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BASTIAN', None, '37.15000', '-81.15000'), ('BLAND', None, '37.10000', '-81.11670'), ('CERES', None, '37.01670', '-81.35000'), ('CLEAR FORK', None, '37.21670', '-81.20000'), ('HICKSVILLE', None, '37.18330', '-81.13330'), ('KIMBERLING', None, '37.16670', '-81.03330'), ('LONG SPUR', None, '37.10000', '-80.95000'), ('MECHANICSBURG', None, '37.15000', '-80.95000'), ('ROCKY GAP', None, '37.23330', '-81.10000'), ('SUITER', None, '37.11670', '-81.21670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'ALZ012': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BEAVERTON', 226, '33.93430', '-88.02140'), ('DETROIT', 247, '34.02620', '-88.16880'), ('KENNEDY', 541, '33.58140', '-87.98550'), ('MILLPORT', 1160, '33.55950', '-88.08120'), ('SULLIGENT', 2151, '33.89470', '-88.13190'), ('VERNON', 2143, '33.75830', '-88.11380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'FLZ009': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARDS CROSSROADS', None, '30.95920', '-85.69300'), ('ARRANT SETTLEMENT', None, '30.85840', '-85.97430'), ('BAKER SETTLEMENT', None, '30.86620', '-85.90560'), ('BARKER STORE', None, '30.91360', '-85.91590'), ('BONIFAY', 4078, '30.78840', '-85.67980'), ('CERRO GORDO', None, '30.83120', '-85.88760'), ('COBB CROSSROADS', None, '30.97970', '-85.54760'), ('COLLINS MILL', None, '30.96590', '-85.53120'), ('ELEANOR', None, '30.96400', '-85.55360'), ('ESTO', 356, '30.98680', '-85.64590'), ('GRITNEY', None, '30.83820', '-85.82840'), ('HICKORY HILL', None, '30.82140', '-85.92510'), ('HOBBS CROSSROADS', None, '30.91400', '-85.96020'), ('HOLLAND CROSSROADS', None, '30.96480', '-85.64640'), ('HOLMES CO A/P', None, '30.84430', '-85.60150'), ('HUDSON', 12765, '30.86150', '-85.94350'), ('IZAGORA', None, '30.90940', '-85.84180'), ('LEONIA', None, '30.90870', '-86.01540'), ('MILLER CROSSROADS', None, '30.94870', '-85.74180'), ('NEW HOPE', None, '30.94900', '-85.87960'), ('NOMA', 213, '30.98240', '-85.61870'), ('NOMA JUNCTION', None, '30.97130', '-85.61820'), ('PITTMAN', 192, '30.94190', '-85.81970'), ('PONCE DE LEON', 457, '30.72280', '-85.93750'), ('PROSPERITY', None, '30.85100', '-85.94700'), ('TENDIL CROSSING', None, '30.96390', '-85.57980'), ('UNDERWOOD CROSSING', None, '30.97300', '-85.58380'), ('WESTVILLE', 221, '30.77450', '-85.85180')], 'partOfState': '', 'wfo': 'TAE'}, -'OKZ036': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALTUS', 21447, '34.64920', '-99.31300'), ('BLAIR', 894, '34.77900', '-99.33300'), ('DUKE', None, '34.67000', '-99.58000'), ('ELDORADO', 527, '34.47250', '-99.65020'), ('ELMER', 96, '34.48140', '-99.35230'), ('FRIENDSHIP', None, '34.70000', '-99.23000'), ('HEADRICK', 130, '34.62670', '-99.13710'), ('HUMPHREYS', None, '34.55000', '-99.23000'), ('MARTHA', 205, '34.72650', '-99.38600'), ('OLUSTEE', 680, '34.54790', '-99.42390'), ('WARREN', None, '34.78000', '-99.22000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'UTZ012': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CASTLE DALE', 1657, '39.22140', '-111.01980'), ('CLAWSON', 153, '39.13290', '-111.09720'), ('CLEVELAND', 508, '39.34900', '-110.85650'), ('ELMO', 368, '39.38880', '-110.81550'), ('EMERY', 308, '38.92530', '-111.25060'), ('FERRON', 1623, '39.09070', '-111.13230'), ('HUNTINGTON', 2131, '39.33110', '-110.96290'), ('MOLEN', None, '39.08000', '-111.08000'), ('MOORE', None, '38.97000', '-111.15000'), ('ORANGEVILLE', 1398, '39.23130', '-111.05890'), ('PRICE', 8402, '39.60170', '-110.82000'), ('WELLINGTON', 1666, '39.53790', '-110.73740')], 'partOfState': '', 'wfo': 'SLC'}, -'VAZ067': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BLACKSTONE', 3675, '37.07870', '-78.00170'), ('BLACKSTONE AIRPORT', None, '37.07650', '-77.95510'), ('BURKEVILLE', 489, '37.18700', '-78.20200'), ('CLAY STORE', None, '37.19610', '-77.96260'), ('CREWE', 2378, '37.18070', '-78.13090'), ('DOMINY CORNER', None, '37.08160', '-77.96990'), ('FERGUSONVILLE', None, '37.22950', '-78.06800'), ('FORKLAND', None, '37.01750', '-77.96550'), ('FORT PICKETT', None, '37.04590', '-77.94360'), ('IRBY', None, '37.03160', '-78.04270'), ('JENNINGS ORDINARY', None, '37.22550', '-78.14580'), ('MURDOCKS', None, '37.02700', '-78.05980'), ('NORTH WELLVILLE', None, '37.15050', '-77.91720'), ('NOTTOWAY', None, '37.13030', '-78.07960'), ('OLIVEVILLE', None, '37.14710', '-78.23280'), ('PATTERSONS STORE', None, '37.14580', '-77.96230'), ('SPAINVILLE', None, '37.18900', '-77.91610'), ('THE FALLS', None, '37.04600', '-78.14900'), ('WELLVILLE', None, '37.12600', '-77.92220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'UTZ013': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CAINEVILLE', None, '38.33000', '-111.02000'), ('CAPITOL REEF NP', None, '38.28000', '-111.20000'), ('ELGIN', None, '38.98000', '-110.15000'), ('GOBLIN VALLEY', None, '38.54000', '-110.70000'), ('GREEN RIVER', 973, '38.98160', '-110.16670'), ('HANKSVILLE', None, '38.36670', '-110.71670')], 'partOfState': '', 'wfo': 'SLC'}, -'TXZ075': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAKERSFIELD', None, '30.89000', '-102.30000'), ('BELDING', None, '30.79000', '-103.03000'), ('COYANOSA', 138, '31.24000', '-103.07000'), ('FORT STOCKTON', 7846, '30.89120', '-102.88570'), ('GIRVIN', None, '31.07000', '-102.39000'), ('HOVEY', None, '30.60470', '-103.34690'), ('IMPERIAL', 428, '31.27000', '-102.69000'), ('IRAAN', 1238, '30.91230', '-101.89940'), ('LONGFELLOW', None, '30.16000', '-102.64000'), ('SHEFFIELD', None, '30.69000', '-101.82000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXZ074': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALPINE', 5786, '30.36320', '-103.66500'), ('ALTUDA', None, '30.30000', '-103.46000'), ('BORACHO', None, '31.08000', '-104.39000'), ('FORT DAVIS', 1050, '30.59000', '-103.90000'), ('KENT', None, '31.07000', '-104.22000'), ('MCDONALD OBSERVATORY', None, '30.67000', '-104.02000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXZ077': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ELDORADO', 1951, '30.86000', '-100.60060')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'TXZ076': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('OZONA', 3436, '30.71000', '-101.20030')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'NEZ018': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CARROLL', 238, '42.27630', '-97.19110'), ('HOSKINS', 283, '42.11370', '-97.30460'), ('SHOLES', 24, '42.33500', '-97.29400'), ('WAYNE', 5583, '42.23710', '-97.01670'), ('WINSIDE', 468, '42.17800', '-97.17410')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ019': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('GERING', 7751, '41.82850', '-103.66520'), ('LYMAN', 421, '41.91810', '-104.03650'), ('MCGREW', 103, '41.74720', '-103.41720'), ('MELBETA', 138, '41.78200', '-103.51680'), ('MINATARE', 810, '41.81100', '-103.50220'), ('MITCHELL', 1831, '41.94210', '-103.80900'), ('MORRILL', 957, '41.96410', '-103.92380'), ('SCOTTSBLUFF', 14732, '41.86720', '-103.66160'), ('TERRYTOWN', 646, '41.85000', '-103.66850')], 'partOfState': '', 'wfo': 'CYS'}, -'TXZ073': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EDEN', 2561, '31.21570', '-99.84360'), ('EOLA', None, '31.39860', '-100.08890'), ('LIVE OAK', 9156, '31.13890', '-99.92920'), ('LOWAKE', None, '31.56610', '-100.07560'), ('MILLERSVIEW', None, '31.40860', '-99.75530'), ('PAINT ROCK', 320, '31.50950', '-99.92530'), ('VICK', None, '31.34080', '-100.09170')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'TXZ072': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARLSBAD', None, '31.59810', '-100.63250'), ('CHRISTOVAL', 422, '31.19330', '-100.49830'), ('GRAPE CREEK', 3138, '31.58080', '-100.54690'), ('HARRIET', None, '31.54690', '-100.31830'), ('KNICKERBOCKER', None, '31.26640', '-100.62280'), ('MERETA', None, '31.45690', '-100.14060'), ('ORIENT', None, '31.65670', '-100.33140'), ('SAN ANGELO', 88439, '31.44600', '-100.45240'), ('TANKERSLEY', None, '31.34940', '-100.64310'), ('VANCOURT', None, '31.34280', '-100.17670'), ('VERIBEST', None, '31.47640', '-100.25920'), ('WALL', None, '31.37390', '-100.30720'), ('WATER VALLEY', None, '31.66750', '-100.71670')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'NEZ014': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('DAKOTA CITY', 1821, '42.41600', '-96.41740'), ('EMERSON', 817, '42.27820', '-96.72560'), ('HOMER', 590, '42.32200', '-96.49110'), ('HUBBARD', 234, '42.38550', '-96.59040'), ('JACKSON', 205, '42.44880', '-96.56590'), ('SOUTH SIOUX CITY', 11925, '42.46600', '-96.41210')], 'partOfState': 'NORTHEAST', 'wfo': 'FSD'}, -'NEZ015': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('MACY', 956, '42.11260', '-96.36300'), ('PENDER', 1148, '42.11000', '-96.71060'), ('ROSALIE', 194, '42.05690', '-96.51270'), ('THURSTON', 125, '42.17650', '-96.69990'), ('WALTHILL', 909, '42.14870', '-96.49280'), ('WINNEBAGO', 768, '42.23720', '-96.47290')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ016': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRUNSWICK', 179, '42.33820', '-97.97120'), ('CLEARWATER', 384, '42.17060', '-98.18860'), ('ELGIN', 735, '41.98370', '-98.08320'), ('NELIGH', 1651, '42.13000', '-98.02880'), ('OAKDALE', 345, '42.07000', '-97.96610'), ('ORCHARD', 391, '42.33600', '-98.24120'), ('ROYAL', 75, '42.33270', '-98.12500')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ017': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('FOSTER', 63, '42.27370', '-97.66500'), ('HADAR', 312, '42.10580', '-97.45150'), ('MCLEAN', 38, '42.38620', '-97.46770'), ('OSMOND', 796, '42.35820', '-97.59890'), ('PIERCE', 1774, '42.19950', '-97.52770'), ('PLAINVIEW', 1353, '42.35390', '-97.78690')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ010': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AMELIA', None, '42.23000', '-98.96000'), ('ATKINSON', 1244, '42.53170', '-98.97640'), ('CHAMBERS', 333, '42.20510', '-98.74780'), ('EMMET', 77, '42.47640', '-98.80990'), ('EWING', 433, '42.25850', '-98.34260'), ('INMAN', 148, '42.38130', '-98.52890'), ("O'NEILL", 3733, '42.46070', '-98.64670'), ('PAGE', 157, '42.39900', '-98.41740'), ('STUART', 625, '42.60000', '-99.14020')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ011': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BAZILE MILLS', 26, '42.51380', '-97.91000'), ('BLOOMFIELD', 1126, '42.59880', '-97.64880'), ('CENTER', 90, '42.60890', '-97.87590'), ('CREIGHTON', 1270, '42.46510', '-97.90680'), ('CROFTON', 754, '42.73180', '-97.49770'), ('NIOBRARA', 379, '42.75030', '-98.03030'), ('SANTEE', 302, '42.83850', '-97.84920'), ('VERDEL', 58, '42.81150', '-98.19290'), ('VERDIGRE', 519, '42.59750', '-98.03520'), ('WAUSA', 636, '42.49780', '-97.53820'), ('WINNETOON', 70, '42.51430', '-97.96140')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ012': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BELDEN', 131, '42.41170', '-97.20760'), ('COLERIDGE', 541, '42.50630', '-97.20230'), ('FORDYCE', 182, '42.69810', '-97.36270'), ('HARTINGTON', 1640, '42.62000', '-97.26500'), ('LAUREL', 986, '42.42800', '-97.09400'), ('MAGNET', 79, '42.45740', '-97.46920'), ('OBERT', 49, '42.68900', '-97.02700'), ('RANDOLPH', 955, '42.37730', '-97.35720'), ('ST. HELENA', 86, '42.80990', '-97.24890'), ('WYNOT', 191, '42.73950', '-97.16960')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ013': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALLEN', 411, '42.41460', '-96.84280'), ('CONCORD', 160, '42.38420', '-96.98870'), ('DIXON', 108, '42.41560', '-96.99450'), ('MARTINSBURG', 103, '42.50800', '-96.83160'), ('MASKELL', 67, '42.69040', '-96.98150'), ('NEWCASTLE', 299, '42.65200', '-96.87490'), ('PONCA', 1062, '42.56540', '-96.70910'), ('WAKEFIELD', 1411, '42.26760', '-96.86710'), ('WATERBURY', 89, '42.45720', '-96.73520')], 'partOfState': 'NORTHEAST', 'wfo': 'FSD'}, -'UTZ014': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ANNABELLA', 603, '38.70620', '-112.05750'), ('AURORA', 947, '38.92040', '-111.93240'), ('AXTELL', None, '39.05000', '-111.82000'), ('CENTERFIELD', 1048, '39.12760', '-111.81720'), ('ELSINORE', 733, '38.68390', '-112.14890'), ('EPHRAIM', 4505, '39.35970', '-111.58440'), ('FAIRVIEW', 1160, '39.63050', '-111.43540'), ('FOUNTAIN GREEN', 945, '39.62770', '-111.63860'), ('GLENWOOD', 437, '38.76240', '-111.98860'), ('GUNNISON', 2394, '39.15830', '-111.81260'), ('INDIANOLA', None, '39.80000', '-111.48000'), ('JOSEPH', 269, '38.62510', '-112.22000'), ('MANTI', 3040, '39.26690', '-111.63640'), ('MAYFIELD', 420, '39.11620', '-111.70730'), ('MONROE', 1845, '38.62430', '-112.11950'), ('MORONI', 1280, '39.52810', '-111.58230'), ('MOUNT PLEASANT', 2707, '39.54170', '-111.45560'), ('REDMOND', 788, '39.00530', '-111.86450'), ('RICHFIELD', 6847, '38.76600', '-112.08500'), ('SALINA', 2393, '38.94910', '-111.85920'), ('SIGURD', 430, '38.85040', '-111.96540'), ('SPRING CITY', 956, '39.48020', '-111.49050'), ('STERLING', 235, '39.19430', '-111.69090')], 'partOfState': '', 'wfo': 'SLC'}, -'LAZ012': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ARCADIA', 3041, '32.55100', '-92.92460'), ('BIENVILLE', 262, '32.36130', '-92.97630'), ('BRYCELAND', 114, '32.44380', '-92.98960'), ('CASTOR', 209, '32.25410', '-93.16700'), ('GIBSLAND', 1119, '32.53900', '-93.05330'), ('JAMESTOWN', 149, '32.33760', '-93.20530'), ('LUCKY', 355, '32.24350', '-93.01280'), ('MOUNT LEBANON', 73, '32.50290', '-93.04930'), ('RINGGOLD', 1660, '32.32600', '-93.28440'), ('SALINE', 296, '32.16400', '-92.97700')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'WAZ011': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ABERDEEN', 16461, '46.97700', '-123.80840'), ('BUCODA', 628, '46.79820', '-122.86790'), ('CENTRAL PARK', 2558, '46.97060', '-123.70150'), ('CENTRALIA', 14742, '46.72120', '-122.96200'), ('CHEHALIS', 7057, '46.66490', '-122.96500'), ('CHEHALIS VILLAGE', 346, '46.80360', '-123.16790'), ('COSMOPOLIS', 1595, '46.95550', '-123.76980'), ('ELMA', 3049, '47.00510', '-123.40090'), ('FORDS PRAIRIE', 1961, '46.74010', '-123.00150'), ('GRAND MOUND', 1948, '46.81000', '-123.01270'), ('LACEY', 31226, '47.03310', '-122.80580'), ('MCCLEARY', 1454, '47.05530', '-123.26760'), ('MONTESANO', 3312, '47.01460', '-123.58390'), ('NAPAVINE', 1361, '46.57710', '-122.90850'), ('NISQUALLY INDIAN COMMUNIT', None, '47.00590', '-122.66980'), ('NORTH YELM', 2793, '46.96320', '-122.60170'), ('OAKVILLE', 675, '46.84040', '-123.23360'), ('OLYMPIA', 42514, '47.04190', '-122.89380'), ('PE ELL', 657, '46.57150', '-123.29690'), ('RAINIER', 1492, '46.89050', '-122.68460'), ('ROCHESTER', 1829, '46.82910', '-123.07070'), ('TANGLEWILDE-THOMPSON PLAC', None, '47.05250', '-122.77810'), ('TENINO', 1447, '46.85740', '-122.84740'), ('TOLEDO', 653, '46.44050', '-122.84770'), ('TUMWATER', 12698, '46.99810', '-122.91790'), ('VADER', 590, '46.40280', '-122.95560'), ('WINLOCK', 1166, '46.49150', '-122.93590'), ('YELM', 3289, '46.94570', '-122.60350')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'WAZ010': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BANGOR TRIDENT BASE', 7253, '47.69200', '-122.71610'), ('BREMERTON', 37259, '47.54890', '-122.70200'), ('EAST PORT ORCHARD', 5116, '47.52120', '-122.62380'), ('ERLANDS POINT-KITSAP LAKE', 2723, '47.59630', '-122.70300'), ('INDIANOLA', 3026, '47.75450', '-122.51330'), ('NAVY YARD CITY', 2638, '47.55160', '-122.66700'), ('PARKWOOD', 7213, '47.52600', '-122.59670'), ('PORT ORCHARD', 7693, '47.52900', '-122.64120'), ('POULSBO', 6813, '47.73710', '-122.64000'), ('SHELTON', 8442, '47.21480', '-123.10530'), ('SILVERDALE', 15816, '47.65210', '-122.68310'), ('SKOKOMISH', 616, '47.33360', '-123.15620'), ('SUQUAMISH', 3510, '47.72910', '-122.58430'), ('TRACYTON', 3267, '47.60960', '-122.65450'), ('WINSLOW', None, '47.62970', '-122.51780')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'WAZ017': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CONCRETE', 790, '48.53710', '-121.74890'), ('DARRINGTON', 1136, '48.25240', '-121.60390'), ('INDEX', 157, '47.82070', '-121.55240')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'WAZ016': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('HOQUIAM', 9097, '46.97540', '-123.88660'), ('OCEAN SHORES', 3836, '46.97110', '-124.15230'), ('WESTPORT', 2137, '46.89200', '-124.11100')], 'partOfState': '', 'wfo': 'SEW'}, -'WAZ015': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FORKS', 3120, '47.94710', '-124.38990')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'LAZ013': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CHATHAM', 623, '32.30890', '-92.45120'), ('EAST HODGE', 366, '32.27690', '-92.71400'), ('EROS', 202, '32.39220', '-92.42430'), ('HODGE', 492, '32.27170', '-92.72910'), ('JONESBORO', 3914, '32.23680', '-92.71000'), ('NORTH HODGE', 436, '32.28410', '-92.71620'), ('QUITMAN', 168, '32.34990', '-92.72150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'WAZ019': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ADAMS FORK CAMPGROUND', None, '46.32000', '-121.66000'), ('COLDWATER LAKE', None, '46.29000', '-122.27000'), ('INDIAN HEAVEN WILDERNESS', None, '45.95000', '-121.77000'), ('MOUNT ST. HELENS', None, '46.19000', '-122.19000'), ('NORTHWOODS', None, '46.06000', '-122.01000'), ('SPIRIT LAKE', None, '46.27000', '-122.14000'), ('STABLER', None, '45.81000', '-121.89000'), ('SWIFT RESERVOIR', None, '46.06000', '-122.12000'), ('TRAPPER CREEK WILDERNESS', None, '45.89000', '-122.03000'), ('UPPER LEWIS RIVER FALLS', None, '46.16000', '-121.88000'), ('WILLARD', None, '45.78300', '-121.63300')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'WAZ018': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('MORTON', 1045, '46.55800', '-122.28010'), ('SKYKOMISH', 214, '47.71120', '-121.35740')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'LAZ010': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('GRAND CANE', 191, '32.08450', '-93.80940'), ('KEACHI', 323, '32.17570', '-93.91620'), ('LOGANSPORT', 1630, '31.97400', '-93.99410'), ('LONGSTREET', 163, '32.09680', '-93.95010'), ('MANSFIELD', 5582, '32.03380', '-93.70240'), ('SOUTH MANSFIELD', 352, '32.01850', '-93.72290'), ('STANLEY', 145, '31.96350', '-93.90350'), ('STONEWALL', 1668, '32.26400', '-93.81640')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'FLZ059': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CARLTON', None, '27.34320', '-80.42290'), ('COLLINS PARK ESTATES', None, '27.36980', '-80.32090'), ('FORT PIERCE', 37516, '27.44130', '-80.32200'), ('FORT PIERCE NORTH', 7386, '27.47480', '-80.35620'), ('FORT PIERCE SOUTH', 5672, '27.41080', '-80.35510'), ('FREDERICK DOUGLASS PARK', None, '27.40920', '-80.26770'), ('INDIAN RIVER ESTATES', 5793, '27.36400', '-80.31010'), ('INDRIO', None, '27.52040', '-80.35320'), ('LAKEWOOD PARK', 10458, '27.53800', '-80.39030'), ('PORT SAINT LUCIE', None, '27.27980', '-80.35450'), ('PORT SAINT LUCIE RIVER PA', None, '27.32130', '-80.33180'), ('QUEENS COVE', None, '27.51480', '-80.31790'), ('SAINT LUCIE AIRPORT', None, '27.47240', '-80.40490'), ('SAINT LUCIE NUCLEAR PLANT', None, '27.29550', '-80.22050'), ('SAINT LUCIE WEST', None, '27.31490', '-80.39560'), ('WAVELAND', None, '27.26760', '-80.20690'), ('WHITE CITY', 4221, '27.37900', '-80.34230')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ058': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BASINGER', None, '27.40000', '-81.01670'), ('BASSWOOD ESTATES', None, '27.27890', '-80.85770'), ('COUNTRY HILLS ESTATES', None, '27.35850', '-80.81540'), ('FORT DRUM', None, '27.52660', '-80.80700'), ('FOUR SEASONS ESTATES', None, '27.25010', '-80.77510'), ('OKEE TANTIE RECREATION AR', None, '27.14900', '-80.87000'), ('OKEECHOBEE', 5376, '27.24130', '-80.82990'), ('TAYLOR CREEK', 4289, '27.21630', '-80.78980'), ('WHISPERING PINES', None, '27.27720', '-80.83980')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'MSZ043': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CANTON', 12911, '32.61070', '-90.03110'), ('FLORA', 1546, '32.54740', '-90.31200'), ('MADISON', 14692, '32.45340', '-90.10850'), ('RIDGELAND', 20173, '32.42180', '-90.13120')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'FLZ051': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('APOLLO BEACH', 7444, '27.77290', '-82.40790'), ('BLOOMINGDALE', 19839, '27.87720', '-82.25990'), ('BOYETTE', 5895, '27.82000', '-82.24000'), ('BRANDON', 77895, '27.92940', '-82.29150'), ('CARROLLWOOD', None, '28.04970', '-82.49310'), ('DOVER', 2798, '27.99290', '-82.22050'), ('EAST LAKE-ORIENT PARK', 5703, '27.98250', '-82.37850'), ('FORT LONESOME', None, '27.70000', '-82.14000'), ('GIBSONTON', 8752, '27.84100', '-82.37040'), ('HILLSBOROUGH RIVER STATE', None, '28.10350', '-82.27830'), ('LITHIA', None, '27.85000', '-82.17000'), ('LUTZ', 17081, '28.13870', '-82.46310'), ('MACDILL AIR FORCE BASE', None, '27.85000', '-82.50000'), ('MANGO', 8842, '27.99090', '-82.30750'), ('PALM RIVER-CLAIR MEL', 17589, '27.93160', '-82.38320'), ('PLANT CITY', 29915, '28.00580', '-82.12850'), ('RIVERVIEW', 12035, '27.87050', '-82.31670'), ('RUSKIN', 8321, '27.71440', '-82.42910'), ('SEFFNER', 5467, '27.99760', '-82.27490'), ('SUN CITY CENTER', None, '27.72140', '-82.35200'), ('TAMPA', 303447, '27.95900', '-82.48210'), ('TAMPA INTERNATIONAL AIRPO', None, '27.98000', '-82.51200'), ('TEMPLE TERRACE', 20918, '28.04240', '-82.38220'), ('THONOTOSASSA', 6091, '28.07220', '-82.30290'), ("TOWN 'N' COUNTRY", 72523, '28.01020', '-82.57740'), ('VALRICO', 6582, '27.94800', '-82.25600'), ('WEST PARK', None, '28.01150', '-82.51630'), ('WIMAUMA', 4246, '27.71310', '-82.30660')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'FLZ050': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BASKIN', None, '27.89310', '-82.80930'), ('BELLEAIR', 4067, '27.93670', '-82.81220'), ('BELLEAIR BLUFFS', 2243, '27.91930', '-82.81930'), ('BELLEAIR SHORE', 0, '27.91740', '-82.84950'), ('CLEARWATER', 108787, '27.96000', '-82.76550'), ('DUNEDIN', 35691, '28.04000', '-82.79000'), ('FEATHER SOUND', 3597, '27.90930', '-82.65710'), ('GULFPORT', 12527, '27.74630', '-82.71020'), ('HARBOR BLUFFS', 2807, '27.90910', '-82.82780'), ('HIGHPOINT', None, '27.91670', '-82.71310'), ('INDIAN ROCKS BEACH', 5072, '27.89770', '-82.84430'), ('KENNETH CITY', 4400, '27.81570', '-82.71550'), ('LARGO', 69371, '27.90860', '-82.78100'), ('LEALMAN', None, '27.82250', '-82.68890'), ('MADEIRA BEACH', 4511, '27.79540', '-82.79170'), ('NORTH REDINGTON BEACH', 1474, '27.81730', '-82.82190'), ('OLDSMAR', 11910, '28.04850', '-82.67070'), ('PALM HARBOR', 59248, '28.08760', '-82.76320'), ('PINELLAS PARK', 45658, '27.85720', '-82.70600'), ('REDINGTON BEACH', 1539, '27.80970', '-82.81190'), ('REDINGTON SHORES', 2338, '27.82940', '-82.83210'), ('SAFETY HARBOR', 17203, '28.00930', '-82.69630'), ('SEMINOLE', 10890, '27.84170', '-82.78620'), ('ST. PETERSBURG', 248232, '27.75800', '-82.67210'), ('ST. PETERSBURG BEACH', None, '27.72500', '-82.74140'), ('TARPON SPRINGS', 21003, '28.14580', '-82.75700'), ('TREASURE ISLAND', 7450, '27.76750', '-82.76850')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'FLZ053': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLIGATOR LAKE', None, '28.21790', '-81.20460'), ('BUENA VENTURA LAKES', None, '28.33570', '-81.35320'), ('CAMPBELL', 2677, '28.25710', '-81.45270'), ('DEER PARK', None, '28.09110', '-80.89810'), ('EAST LAKE TOHO', None, '28.29880', '-81.28720'), ('HOLOPAW', None, '28.12600', '-81.07640'), ('INTERCESSION CITY', None, '28.26220', '-81.50820'), ('KENANSVILLE', None, '27.88470', '-80.99520'), ('KISSIMMEE', 47814, '28.30350', '-81.41050'), ('LAKE KISSIMMEE', None, '27.91610', '-81.27640'), ('LAKE MARIAN', None, '27.87150', '-81.06630'), ('NARCOOSSEE', None, '28.29820', '-81.23940'), ('OSCEOLA ASTROS COMPLEX', None, '28.29560', '-81.33590'), ('PINE GROVE', None, '28.25940', '-81.18480'), ('POINCIANA PLACE', None, '28.15730', '-81.48490'), ('REPTILE WORLD', None, '28.24290', '-81.22510'), ('SAINT CLOUD', None, '28.24180', '-81.28980'), ('WEST LAKE TOHO', None, '28.21420', '-81.39860'), ('YEEHAW JUNCTION', 21778, '27.69990', '-80.90450')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ052': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AUBURNDALE', 11032, '28.07020', '-81.79780'), ('BABSON PARK', 1182, '27.83360', '-81.52810'), ('BARTOW', 15340, '27.89520', '-81.84720'), ('BRADLEY JUNCTION', None, '27.79500', '-81.98060'), ('CROOKED LAKE PARK', 1682, '27.82990', '-81.58970'), ('CRYSTAL LAKE', 5341, '28.03530', '-81.90850'), ('CYPRESS GARDENS', 8844, '28.00120', '-81.68700'), ('DAVENPORT', 1924, '28.16050', '-81.60490'), ('DUNDEE', 2912, '28.02050', '-81.62100'), ('EAGLE LAKE', 2496, '27.97820', '-81.75770'), ('FORT MEADE', 5691, '27.75230', '-81.79560'), ('FROSTPROOF', 2975, '27.74610', '-81.53130'), ('GIBSONIA', 4507, '28.11790', '-81.96840'), ('HAINES CITY', 13174, '28.10900', '-81.62890'), ('HIGHLAND CITY', 2051, '27.96060', '-81.87930'), ('HIGHLAND PARK', 244, '27.86510', '-81.56310'), ('HILLCREST HEIGHTS', 266, '27.82380', '-81.53330'), ('INWOOD', 6925, '28.03820', '-81.76750'), ('KATHLEEN', 3280, '28.11790', '-82.02810'), ('LAKE ALFRED', 3890, '28.09070', '-81.72580'), ('LAKE HAMILTON', 1304, '28.04780', '-81.62590'), ('LAKE WALES', 10194, '27.90110', '-81.58780'), ('LAKELAND', 78452, '28.04120', '-81.96000'), ('LAKELAND HIGHLANDS', 12557, '27.95950', '-81.95020'), ('LOUGHMAN', 1385, '28.23670', '-81.57170'), ('MULBERRY', 3230, '27.90160', '-81.97310'), ('POLK CITY', 1516, '28.18210', '-81.82470'), ('WAHNETA', 4731, '27.95590', '-81.72930'), ('WAVERLY', 1927, '27.96760', '-81.61890'), ('WILLOW OAK', 4917, '27.91810', '-82.02150'), ('WINSTON', 9024, '28.04250', '-82.01130'), ('WINTER HAVEN', 26487, '28.02000', '-81.72180'), ('WITHLA', None, '28.33970', '-81.87400')], 'partOfState': 'CENTRAL', 'wfo': 'TBW'}, -'FLZ055': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANNA MARIA ISLAND', None, '27.52890', '-82.73300'), ('BAYSHORE GARDENS', 17350, '27.43350', '-82.58000'), ('BRADENTON', 49504, '27.48790', '-82.57900'), ('BRADENTON BEACH', 1482, '27.46400', '-82.69760'), ('CORTEZ', 4491, '27.46850', '-82.67060'), ('DUETTE', None, '27.59000', '-82.12300'), ('ELLENTON', 3142, '27.52360', '-82.52800'), ('HOLMES BEACH', 4966, '27.51000', '-82.71570'), ('LAKE MANATEE STATE PARK', None, '27.47900', '-82.33600'), ('LONGBOAT KEY', 7603, '27.42000', '-82.65000'), ('MYAKKA CITY', None, '27.35010', '-82.16270'), ('MYAKKA HEAD', None, '27.47000', '-82.08000'), ('ONECO', None, '27.44800', '-82.54600'), ('PALMETTO', 12571, '27.52190', '-82.57760'), ('PARRISH', None, '27.58780', '-82.42690'), ('SAMOSET', 3440, '27.47700', '-82.54150'), ('SARASOTA BRADENTON AIRPOR', None, '27.39500', '-82.55000'), ('WEST BRADENTON', 4444, '27.50220', '-82.61420'), ('WEST SAMOSET', 5507, '27.46920', '-82.55690'), ('WHITFIELD', 2984, '27.41140', '-82.56620')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'FLZ054': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BLUE CYPRESS LAKE', None, '27.72910', '-80.75450'), ('DIXIE HEIGHTS', None, '27.58130', '-80.38830'), ('FELLSMERE', 3813, '27.76650', '-80.59690'), ('FLORALTON BEACH', None, '27.59290', '-80.33280'), ('GIFFORD', 7599, '27.67530', '-80.40960'), ('GROVENOR ESTATES', None, '27.57780', '-80.42550'), ('INDIAN RIVER SHORES', 3448, '27.70570', '-80.38250'), ('JAYCEE PARK', None, '27.66580', '-80.35950'), ('MOORINGS OF VERO BEACH', None, '27.57840', '-80.32990'), ('PARADISE PARK', None, '27.64310', '-80.49580'), ('PINE TREE PARK', None, '27.61890', '-80.45750'), ('ROSELAND', 1775, '27.83990', '-80.48950'), ('SEBASTIAN INLET', None, '27.78730', '-80.48070'), ('SEBASTIAN INLET RECREATIO', None, '27.84980', '-80.44310'), ('STEVENS PARK', None, '27.60730', '-80.44150'), ('VERO BEACH', 17705, '27.64590', '-80.39420'), ('VERO BEACH HIGHLANDS', None, '27.57670', '-80.39830'), ('VERO BEACH SOUTH', 20362, '27.61580', '-80.41340'), ('VERO LAKE ESTATES', None, '27.74620', '-80.52860'), ('WABASSO', 918, '27.75050', '-80.43770'), ('WABASSO BEACH', 1075, '27.76450', '-80.39920'), ('WABASSO BEACH PARK', None, '27.76320', '-80.39720'), ('WINTER BEACH', 965, '27.71890', '-80.42090')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ057': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARCHBOLD', None, '27.19000', '-81.35000'), ('AVON PARK', 8542, '27.59320', '-81.50370'), ('BRIGHTON', None, '27.22000', '-81.09000'), ('CORNWELL', None, '27.37500', '-81.09000'), ('LAKE JOSEPHINE', None, '27.40000', '-81.44000'), ('LAKE PLACID', 1668, '27.29690', '-81.36970'), ('LORIDA', None, '27.45000', '-81.26000'), ('PLACID LAKES', 3054, '27.24120', '-81.40710'), ('SEBRING', 9667, '27.49070', '-81.45350'), ('SEBRING AIR TERMINAL', None, '27.46200', '-81.34300'), ('SEBRING SHORES', None, '27.53000', '-81.48000'), ('SPRING LAKE', 327, '27.43500', '-81.34500'), ('VENUS', None, '27.06500', '-81.35000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TBW'}, -'FLZ056': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BOWLING GREEN', 2892, '27.63730', '-81.82380'), ('FORT GREEN', None, '27.62000', '-81.95000'), ('GARNDER', None, '27.35000', '-81.80500'), ('LILY', None, '27.36800', '-81.97000'), ('ONA', None, '27.49000', '-81.92000'), ('WAUCHULA', 4368, '27.54580', '-81.80990'), ('ZOLFO SPRINGS', 1641, '27.49420', '-81.79450')], 'partOfState': 'CENTRAL', 'wfo': 'TBW'}, -'NDZ015': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BROCKET', 65, '48.21120', '-98.35620'), ('CAMP GRAFTON', None, '48.05690', '-98.92060'), ('CHURCHS FERRY', 77, '48.26860', '-99.19420'), ('CRARY', 149, '48.07150', '-98.64000'), ('DERRICK', None, '48.47690', '-98.55720'), ('DEVILS LAKE', 7222, '48.11280', '-98.87410'), ('DOYON', None, '48.05280', '-98.53640'), ('EDMORE', 256, '48.41270', '-98.45320'), ('GARSKE', None, '48.35780', '-98.87690'), ('HAMPDEN', 60, '48.53950', '-98.65450'), ('LAWTON', 42, '48.30290', '-98.36740'), ('PENN', None, '48.22170', '-99.08860'), ('SOUTHAM', None, '48.15830', '-98.55170'), ('STARKWEATHER', 157, '48.45230', '-98.87770'), ('WEBSTER', None, '48.28220', '-98.87580')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDZ014': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BAKER', None, '48.16060', '-99.64720'), ('BRINSMADE', 29, '48.18330', '-99.32440'), ('ESMOND', 159, '48.03290', '-99.76480'), ('FILLMORE', None, '48.18030', '-99.80030'), ('FLORA', None, '47.95030', '-99.41750'), ('FORT TOTTEN', 952, '47.97610', '-98.99480'), ('HARLOW', None, '48.16360', '-99.51860'), ('KNOX', 59, '48.34270', '-99.68930'), ('LEEDS', 464, '48.28940', '-99.43850'), ('MADDOCK', 498, '47.96220', '-99.52910'), ('MINNEWAUKAN', 318, '48.06980', '-99.25010'), ('OBERON', 81, '47.92390', '-99.20520'), ('PLEASANT LAKE', None, '48.36140', '-99.80170'), ('ST MICHAEL', None, '47.98500', '-98.87220'), ('TOKIO', None, '47.92470', '-98.81580'), ('WARWICK', 75, '47.85570', '-98.70710'), ('YORK', 26, '48.31350', '-99.57340')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDZ017': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALEXANDER', 217, '47.84100', '-103.64260'), ('ARNEGARD', 105, '47.80810', '-103.43810'), ('CARTWRIGHT', None, '47.86670', '-103.93330'), ('CHARLSON', None, '48.06670', '-102.86670'), ('GRASSY BUTTE', None, '47.40000', '-103.25000'), ('KEENE', None, '47.93330', '-102.95000'), ('MANDAREE', 558, '47.73840', '-102.67670'), ('RAWSON', 6, '47.82000', '-103.54070'), ('TRNP NORTH UNIT', None, '47.59720', '-103.26080'), ('WATFORD CITY', 1435, '47.80230', '-103.27140')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'NDZ016': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ARDOCH', 61, '48.20590', '-97.34090'), ('CONWAY', 23, '48.23400', '-97.67440'), ('FORDVILLE', 266, '48.21670', '-97.79450'), ('FOREST RIVER', 154, '48.21710', '-97.47000'), ('GRAFTON', 4516, '48.41510', '-97.40310'), ('HERRICK', None, '48.51390', '-97.22810'), ('HOOPLE', 292, '48.53550', '-97.63750'), ('MINTO', 657, '48.29220', '-97.37210'), ('NASH', None, '48.47060', '-97.51280'), ('OAKWOOD', None, '48.42690', '-97.29500'), ('PARK RIVER', 1535, '48.39340', '-97.74480'), ('PISEK', 96, '48.31110', '-97.71030'), ('POLAND', None, '48.19780', '-97.21810'), ('VESELEYVILLE', None, '48.32530', '-97.55690'), ('VOSS', None, '48.29640', '-97.45500'), ('WARSAW', None, '48.29610', '-97.25440')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDZ011': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BERTHOLD', 466, '48.31500', '-101.73530'), ('BURLINGTON', 1096, '48.27560', '-101.42570'), ('CARPIO', 148, '48.44240', '-101.71540'), ('DES LACS', 209, '48.25690', '-101.56320'), ('DONNYBROOK', 90, '48.50790', '-101.88560'), ('DOUGLAS', 64, '47.85860', '-101.50080'), ('FOXHOLM', None, '48.36670', '-101.56670'), ('HARTLAND', None, '48.40000', '-101.81670'), ('KENMARE', 1081, '48.67400', '-102.07980'), ('MAKOTI', 145, '47.96050', '-101.80470'), ('MINOT', 36567, '48.23370', '-101.29610'), ('MINOT AFB', 7599, '48.41990', '-101.33630'), ('RYDER', 92, '47.91730', '-101.67310'), ('SAWYER', 377, '48.08930', '-101.05400'), ('SURREY', 917, '48.23600', '-101.13260'), ('WOLSETH', None, '48.45000', '-101.11670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDZ010': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BELDEN', None, '48.15000', '-102.35000'), ('BLAISDELL', None, '48.33330', '-102.06670'), ('LOSTWOOD', None, '48.48330', '-102.41670'), ('NEW TOWN', 1367, '47.98080', '-102.48970'), ('PALERMO', 77, '48.33830', '-102.22850'), ('PARSHALL', 981, '47.95480', '-102.13370'), ('PLAZA', 167, '48.02560', '-101.95940'), ('ROSS', 48, '48.31310', '-102.54280'), ('STANLEY', 1279, '48.31680', '-102.38650'), ('TAGUS', None, '48.35000', '-101.93330'), ('WHITE EARTH', 63, '48.38010', '-102.77180')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'NDZ013': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BALTA', 73, '48.16620', '-100.03720'), ('BARTON', None, '48.50590', '-100.17810'), ('ORRIN', None, '48.08330', '-100.16670'), ('RUGBY', 2939, '48.36710', '-99.99100'), ('SILVA', None, '48.16670', '-99.91670'), ('WOLFORD', 50, '48.49780', '-99.70450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDZ012': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANAMOOSE', 282, '47.88320', '-100.24150'), ('BALFOUR', 20, '47.95230', '-100.53470'), ('BANTRY', 19, '48.49780', '-100.60920'), ('BERGEN', 11, '48.00470', '-100.71830'), ('BERWICK', None, '48.36670', '-100.25000'), ('DEERING', 118, '48.39530', '-101.04940'), ('DENBIGH', None, '48.31670', '-100.58330'), ('DRAKE', 322, '47.92190', '-100.37590'), ('GRANVILLE', 286, '48.26750', '-100.84290'), ('KARLSRUHE', 119, '48.09080', '-100.61710'), ('KIEF', 13, '47.86050', '-100.51260'), ('NORWICH', None, '48.25000', '-100.98330'), ('TOWNER', 574, '48.34760', '-100.40720'), ('UPHAM', 155, '48.58040', '-100.72810'), ('VELVA', 1049, '48.05830', '-100.93120'), ('VOLTAIRE', 51, '48.01930', '-100.84390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'LAZ015': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DELHI', 3066, '32.45640', '-91.48920'), ('MANGHAM', 595, '32.30600', '-91.78090'), ('RAYVILLE', 4234, '32.47160', '-91.75720')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'NDZ019': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BEULAH', 3152, '47.26690', '-101.77340'), ('GOLDEN VALLEY', 183, '47.29040', '-102.06470'), ('HAZEN', 2457, '47.29950', '-101.62480'), ('PICK CITY', 166, '47.51190', '-101.45610'), ('STANTON', 345, '47.31850', '-101.38200'), ('ZAP', 231, '47.28480', '-101.92190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDZ018': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('DODGE', 125, '47.30530', '-102.20200'), ('DUNN CENTER', 122, '47.35330', '-102.62380'), ('HALLIDAY', 227, '47.35270', '-102.33750'), ('KILLDEER', 713, '47.36540', '-102.75270'), ('MANNING', None, '47.23330', '-102.76670'), ('MARSHALL', None, '47.13330', '-102.33330'), ('NEW HRADEC', None, '47.00000', '-102.88330')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'MNZ085': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLOOMING PRAIRIE', 1933, '43.86850', '-93.05450'), ('ELLENDALE', 590, '43.87360', '-93.30120'), ('MEDFORD', 984, '44.17170', '-93.24450'), ('OWATONNA', 22434, '44.08520', '-93.22430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ084': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ELYSIAN', 486, '44.20000', '-93.67710'), ('JANESVILLE', 2109, '44.11670', '-93.70780'), ('NEW RICHLAND', 1197, '43.89340', '-93.49300'), ('WALDORF', 242, '43.93260', '-93.69670'), ('WASECA', 8493, '44.08110', '-93.50190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ087': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BYRON', 3500, '44.03340', '-92.64610'), ('CHESTER', None, '43.99816', '-92.35174'), ('CUMMINGSVILLE', None, '43.88302', '-92.26584'), ('DOUGLAS', None, '44.11695', '-92.56739'), ('DOVER', 438, '43.96990', '-92.13370'), ('EYOTA', 1644, '43.98760', '-92.22820'), ('GENOA', None, '44.11512', '-92.61673'), ('HIGH FOREST', None, '43.84647', '-92.55094'), ('LITTLE VALLEY', None, '44.08223', '-92.13426'), ('MARION', None, '43.94881', '-92.35174'), ('ORONOCO', 883, '44.16350', '-92.54090'), ('PLEASANT GROVE', None, '43.86292', '-92.38463'), ('POTSDAM', None, '44.16447', '-92.34991'), ('PREDMORE', None, '43.93419', '-92.33529'), ('RINGE', None, '44.11512', '-92.39925'), ('ROCHESTER', 85806, '44.01360', '-92.47570'), ('ROCK DELL', None, '43.91226', '-92.65146'), ('SALEM CORNERS', None, '43.98354', '-92.60028'), ('SIMPSON', None, '43.93237', '-92.40108'), ('STEWARTVILLE', 5411, '43.85730', '-92.48700'), ('VIOLA', None, '44.06578', '-92.26584')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'MNZ086': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BERNE', None, '44.16447', '-92.76659'), ('CLAREMONT', 620, '44.04470', '-92.99620'), ('CONCORD', None, '44.14985', '-92.83421'), ('DODGE CENTER', 2226, '44.02860', '-92.84900'), ('EDEN', None, '44.09867', '-92.88356'), ('HAYFIELD', 1325, '43.89010', '-92.84700'), ('KASSON', 4398, '44.02920', '-92.75290'), ('MANTORVILLE', 1054, '44.06590', '-92.75340'), ('OSLO', 347, '43.88119', '-92.74832'), ('WASIO JA', None, '44.08040', '-92.81411'), ('WEST CONCORD', 836, '44.15300', '-92.89970')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'MNZ081': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BINGHAM LAKE', 167, '43.90940', '-95.04540'), ('DELFT', None, '43.98570', '-95.08820'), ('JEFFERS', 396, '44.05550', '-95.19550'), ('MOUNTAIN LAKE', 2082, '43.94030', '-94.92620'), ('STORDEN', 274, '44.03960', '-95.31990'), ('WESTBROOK', 755, '44.04260', '-95.43490'), ('WINDOM', 4490, '43.86950', '-95.11830')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNZ080': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AVOCA', 146, '43.94950', '-95.64530'), ('CHANDLER', 276, '43.92940', '-95.94910'), ('CURRENT LAKE', None, '44.13800', '-95.94140'), ('CURRIE', 225, '44.07100', '-95.66660'), ('DOVRAY', 67, '44.05480', '-95.54610'), ('FULDA', 1283, '43.87000', '-95.60230'), ('HADLEY', 81, '43.99740', '-95.85810'), ('IONA', 173, '43.91490', '-95.78500'), ('LAKE WILSON', 270, '43.99480', '-95.95300'), ('SLAYTON', 2072, '43.99050', '-95.75490')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNZ083': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AMBOY', 575, '43.88850', '-94.15730'), ('EAGLE LAKE', 1787, '44.15940', '-93.88250'), ('GOOD THUNDER', 592, '44.00670', '-94.07010'), ('LAKE CRYSTAL', 2420, '44.10340', '-94.21790'), ('MADISON LAKE', 837, '44.20220', '-93.81440'), ('MANKATO', 32427, '44.16670', '-93.99110'), ('MAPLETON', 1678, '43.92590', '-93.95390'), ('PEMBERTON', 246, '44.00890', '-93.78390'), ('SKYLINE', 330, '44.14020', '-94.03520'), ('ST CLAIR', None, '44.08110', '-93.85750'), ('VERNON CENTER', 359, '43.96340', '-94.16670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ082': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BUTTERFIELD', 564, '43.95820', '-94.79300'), ('DARFUR', 137, '44.05360', '-94.83730'), ('LA SALLE', 90, '44.07210', '-94.57000'), ('LEWISVILLE', 274, '43.92400', '-94.43510'), ('MADELIA', 2340, '44.04930', '-94.41710'), ('ODIN', 125, '43.86760', '-94.74170'), ('ORMSBY', 154, '43.85100', '-94.69860'), ('ST JAMES', None, '43.98480', '-94.62530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ089': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADRIAN', 1234, '43.63460', '-95.93240'), ('BIGELOW', 231, '43.50540', '-95.68910'), ('BREWSTER', 502, '43.69620', '-95.46480'), ('DUNDEE', 102, '43.84430', '-95.46610'), ('ELLSWORTH', 540, '43.52110', '-96.01850'), ('KINBRAE', 21, '43.82630', '-95.48020'), ('LISMORE', 238, '43.74940', '-95.94820'), ('ROUND LAKE', 424, '43.53880', '-95.46930'), ('RUSHMORE', 376, '43.62010', '-95.79880'), ('WILMONT', 332, '43.76400', '-95.82830'), ('WORTHINGTON', 11283, '43.62720', '-95.59840')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNZ088': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALTURA', 417, '44.06980', '-91.93890'), ('BEAVER', None, '44.14802', '-92.03374'), ('BETHANY', None, '44.02923', '-91.91861'), ('DAKOTA', 329, '43.91180', '-91.35860'), ('ELBA', 214, '44.08710', '-92.01730'), ('FREMONT', None, '43.91409', '-91.90033'), ('GOODVIEW', 3373, '44.06720', '-91.71070'), ('HART', None, '43.88119', '-91.73585'), ('LEWISTON', 1484, '43.98490', '-91.86790'), ('MINNESOTA CITY', 235, '44.09200', '-91.75010'), ('NEW HARTFORD', None, '43.88119', '-91.48365'), ('NODINE', None, '43.89764', '-91.45075'), ('PICKWICK', None, '43.98171', '-91.60061'), ('RIDGEWAY', None, '43.91409', '-91.56772'), ('ROLLINGSTONE', 697, '44.09990', '-91.81910'), ('SARATOGA', None, '43.88119', '-92.06847'), ('ST. CHARLES', 3295, '43.96960', '-92.06410'), ('STOCKTON', 682, '44.02800', '-91.77230'), ('TROY', None, '43.86109', '-92.06664'), ('UTICA', 230, '43.97640', '-91.95070'), ('WHITMAN', None, '44.14802', '-91.79982'), ('WILSON', None, '43.94881', '-91.69930'), ('WINONA', 27069, '44.04780', '-91.65710'), ('WITOKA', None, '43.93237', '-91.61706'), ('WYATTVILLE', None, '43.93237', '-91.79982')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'ORZ047': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('CANYON CITY', 669, '44.39220', '-118.94840'), ('DAYVILLE', 138, '44.46680', '-119.53230'), ('FOSSIL', 469, '44.99840', '-120.21320'), ('JOHN DAY', 1821, '44.41840', '-118.94940'), ('MONUMENT', 151, '44.82000', '-119.41880'), ('MOUNT VERNON', 595, '44.41780', '-119.11220'), ('PRAIRIE CITY', 1080, '44.46160', '-118.70950'), ('SPRAY', 140, '44.83200', '-119.79330')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'ORZ046': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('UKIAH', 255, '45.13390', '-118.93170')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'ORZ045': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADAMS', 297, '45.76730', '-118.56270'), ('ATHENA', 1221, '45.81280', '-118.49140'), ('CONDON', 759, '45.23680', '-120.18390'), ('HELIX', 183, '45.85030', '-118.65740'), ('HEPPNER', 1395, '45.35420', '-119.55300'), ('LONEROCK', 24, '45.08920', '-119.88310'), ('MILTON-FREEWATER', 6470, '45.93490', '-118.39040'), ('MISSION', 1019, '45.66710', '-118.67180'), ('PENDLETON', 16354, '45.67380', '-118.81730'), ('PILOT ROCK', 1532, '45.48150', '-118.83220'), ('WESTON', 717, '45.81580', '-118.42470')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'ORZ044': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ARLINGTON', 524, '45.71780', '-120.19260'), ('BOARDMAN', 2855, '45.83760', '-119.70250'), ('ECHO', 650, '45.74400', '-119.19200'), ('HERMISTON', 13154, '45.83280', '-119.28350'), ('IONE', 321, '45.50100', '-119.82230'), ('IRRIGON', 1702, '45.89690', '-119.48810'), ('LEXINGTON', 263, '45.44570', '-119.68660'), ('STANFIELD', 1979, '45.78630', '-119.21950'), ('UMATILLA', 4978, '45.91330', '-119.32780')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'ORZ043': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BEND', 52029, '44.06600', '-121.31100'), ('DESCHUTES RIVER WOODS', 4631, '43.99170', '-121.35710'), ('PRINEVILLE', 7356, '44.30550', '-120.84150'), ('REDMOND', 13481, '44.25950', '-121.17120'), ('SISTERS', 959, '44.29100', '-121.54820'), ('TERREBONNE', 1469, '44.34200', '-121.17740'), ('THREE RIVERS', 2445, '43.82010', '-121.46800')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'ORZ042': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ANTELOPE', 59, '44.91090', '-120.72250'), ('CULVER', 802, '44.52490', '-121.20930'), ('DUFUR', 588, '45.45340', '-121.12710'), ('GRASS VALLEY', 171, '45.35990', '-120.78320'), ('MADRAS', 5078, '44.62990', '-121.12900'), ('MAUPIN', 411, '45.17520', '-121.08290'), ('METOLIUS', 635, '44.58760', '-121.17660'), ('MORO', 337, '45.48570', '-120.73170'), ('SHANIKO', 26, '45.00420', '-120.75050'), ('WARM SPRINGS', 2431, '44.76920', '-121.28570'), ('WASCO', 381, '45.59160', '-120.69570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'PDT'}, -'ORZ041': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('CHENOWETH', 3412, '45.62730', '-121.23010'), ('CITY OF THE DALLES', 12156, '45.59920', '-121.17500'), ('MOSIER', 410, '45.68370', '-121.39490'), ('RUFUS', 268, '45.69370', '-120.73970')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'PDT'}, -'WIZ058': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BEAVER DAM', 15169, '43.46400', '-88.83720'), ('BROWNSVILLE', 570, '43.61570', '-88.49130'), ('CLYMAN', 388, '43.31210', '-88.71930'), ('FOX LAKE', 1454, '43.56340', '-88.91260'), ('HORICON', 3775, '43.44490', '-88.63710'), ('HUSTISFORD', 1135, '43.34550', '-88.60360'), ('IRON RIDGE', 998, '43.39760', '-88.53210'), ('JUNEAU', 2485, '43.40630', '-88.70330'), ('KEKOSKEE', 169, '43.52760', '-88.56170'), ('LOMIRA', 2233, '43.58890', '-88.44470'), ('LOWELL', 366, '43.33780', '-88.82090'), ('MAYVILLE', 4902, '43.49820', '-88.54620'), ('NEOSHO', 593, '43.30970', '-88.51780'), ('RANDOLPH', 1869, '43.53780', '-89.00220'), ('REESEVILLE', 703, '43.30590', '-88.84510'), ('THERESA', 1252, '43.51780', '-88.45270'), ('WAUPUN', 10718, '43.63160', '-88.73570')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'ORZ049': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('COVE', 594, '45.29670', '-117.80950'), ('ELGIN', 1654, '45.56450', '-117.92020'), ('IMBLER', 284, '45.46240', '-117.96250'), ('ISLAND CITY', 916, '45.33880', '-118.04610'), ('LA GRANDE', 12327, '45.32530', '-118.08730'), ('NORTH POWDER', 489, '45.03060', '-117.91860'), ('SUMMERVILLE', 117, '45.48980', '-118.00250'), ('UNION', 1926, '45.20900', '-117.86710')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'ORZ048': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('GRANITE', 24, '44.81060', '-118.41940'), ('GREENHORN', 0, '44.70890', '-118.49580'), ('LONG CREEK', 228, '44.71380', '-119.10190'), ('MITCHELL', 170, '44.56730', '-120.15250'), ('SENECA', 223, '44.13470', '-118.97560')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'UTZ017': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ADAMSVILLE', None, '38.25000', '-112.80000'), ('ALTON', 134, '37.43880', '-112.48320'), ('ANGLE', None, '38.25000', '-111.97000'), ('ANTIMONY', 122, '38.10090', '-111.98360'), ('BEAVER', 2454, '38.27900', '-112.63980'), ('BICKNELL', 353, '38.34140', '-111.54470'), ('BOULDER', 180, '37.92900', '-111.42780'), ('BRIAN HEAD', 118, '37.69840', '-112.84170'), ('BRYCE CYN NP', None, '37.67000', '-112.17000'), ('BURRVILLE', None, '38.57000', '-111.87000'), ('CIRCLEVILLE', 505, '38.16340', '-112.26180'), ('COVE FT', None, '38.60000', '-112.58000'), ('ENTERPRISE', 1285, '37.57040', '-113.71460'), ('FREMONT', None, '38.45000', '-111.62000'), ('FREMONT JCT', None, '38.75000', '-111.40000'), ('FRUITA', None, '38.28000', '-111.25000'), ('GOLDSTRIKE', None, '37.38000', '-113.90000'), ('GREENWICH', None, '38.43000', '-111.92000'), ('GUNLOCK', None, '37.28000', '-113.77000'), ('HATCH', 127, '37.65240', '-112.43260'), ('HILLSDALE', None, '37.72000', '-112.38000'), ('JUNCTION', 177, '38.23840', '-112.22410'), ('KANARRAVILLE', 311, '37.53750', '-113.17940'), ('KINGSTON', 142, '38.20500', '-112.17920'), ('KOOSHAREM', 276, '38.51150', '-111.88030'), ('LOA', 525, '38.40290', '-111.64320'), ('LYMAN', 234, '38.39620', '-111.58820'), ('MANDERFIELD', None, '38.35000', '-112.63000'), ('MARYSVALE', 381, '38.43770', '-112.25810'), ('MINERSVILLE', 817, '38.21330', '-112.92410'), ('MOTOQUA', None, '37.32000', '-114.00000'), ('NEW HARMONY', 190, '37.47840', '-113.30810'), ('NEWCASTLE', None, '37.67000', '-113.55000'), ('PANGUITCH', 1623, '37.82370', '-112.43770'), ('PAROWAN', 2565, '37.83220', '-112.82010'), ('PINE VLY', None, '37.42000', '-113.50000'), ('PINTO', None, '37.53330', '-113.51670'), ('PINTURA', None, '37.35000', '-113.27000'), ('RUBYS INN', None, '37.70000', '-112.16000'), ('SCIPIO', 290, '39.24760', '-112.10200'), ('SEVIER', None, '38.58000', '-112.25000'), ('TEASDALE', None, '38.28000', '-111.47000'), ('TORREY', 171, '38.30160', '-111.41920'), ('TROPIC', 508, '37.62460', '-112.08770')], 'partOfState': '', 'wfo': 'SLC'}, -'KYZ088': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AGES', None, '36.85750', '-83.24670'), ('ALVA', None, '36.73600', '-83.42490'), ('ARTHUR', None, '36.99890', '-83.17280'), ('BAILEY CREEK', None, '36.88060', '-83.19080'), ('BARDO', None, '36.75880', '-83.34340'), ('BAXTER', None, '36.86170', '-83.33180'), ('BENHAM', 599, '36.96460', '-82.95190'), ('BENITO', None, '36.90090', '-83.12720'), ('BIG BLACK MOUNTAIN', None, '36.91450', '-82.89090'), ('BIG LAUREL', None, '36.97940', '-83.21900'), ('BLACK BOTTOM', None, '36.90790', '-83.07830'), ('BLACK MOUNTAIN', None, '36.84860', '-83.14560'), ('BLACKJOE', None, '36.85940', '-83.28300'), ('BLAIR', None, '36.99010', '-82.95350'), ('BLEDSOE', None, '36.92400', '-83.36620'), ('BOBS CREEK', None, '36.78960', '-83.24690'), ('BROOKSIDE', None, '36.85920', '-83.25270'), ('CHAD', None, '36.97050', '-83.01910'), ('CHEVROLET', None, '36.81590', '-83.27490'), ('CLOSPLINT', None, '36.90250', '-83.06780'), ('CLOVER', None, '36.92830', '-82.96720'), ('CLOVER FORK', None, '36.87720', '-82.93160'), ('CLOVER-DARBY', None, '36.89230', '-83.06210'), ('CLOVERTOWN', None, '36.85270', '-83.30530'), ('CLUTTS', None, '36.97230', '-82.97130'), ('COBURN', None, '36.81590', '-83.31980'), ('COLDIRON', None, '36.82680', '-83.45340'), ('COLTS', None, '36.88040', '-83.14760'), ('COXTON', None, '36.85760', '-83.26670'), ('CRANKS', None, '36.76470', '-83.17210'), ('CREECH', None, '36.96730', '-83.04170'), ('CREECH', None, '36.76720', '-83.39500'), ('CRUMMIES', None, '36.77430', '-83.20520'), ('CUMBERLAND', 2611, '36.98420', '-82.98600'), ('DARKMONT', None, '36.87300', '-83.18000'), ('DIANE', None, '36.95120', '-83.08100'), ('DILLON', None, '36.91540', '-83.19410'), ('DIVIDE', None, '36.93650', '-83.21230'), ('DIZNEY', None, '36.85090', '-83.11690'), ('DRAPER', None, '36.87290', '-83.21080'), ('DRESSEN', None, '36.83270', '-83.32330'), ('ELCOMB', None, '36.82220', '-83.33520'), ('EVARTS', 1101, '36.86370', '-83.19770'), ('FARMERS MILL', None, '36.81530', '-83.28530'), ('FLAGLER', None, '36.76380', '-83.23820'), ('FRESH MEADOWS', None, '36.84030', '-83.37540'), ('GANO', None, '36.90150', '-83.13420'), ('GATUN', None, '36.87210', '-83.31070'), ('GEORGETOWN', 18080, '36.88870', '-83.05380'), ('GOLDEN ASH', None, '36.86100', '-83.29290'), ('GRAYS KNOB', None, '36.80660', '-83.30410'), ('HARLAN', 2081, '36.84140', '-83.32020'), ('HARLAN GAS', None, '36.85070', '-83.30580'), ('HENSLEY STORE', None, '36.72000', '-83.35000'), ('HIGHSPLINT', None, '36.89850', '-83.11770'), ('HIRAM', None, '36.96680', '-83.04760'), ('HOLMES MILL', None, '36.86840', '-83.00060'), ('INCLINE', None, '36.91650', '-83.28130'), ('INSULL', None, '36.76360', '-83.48580'), ('JONESBURG', None, '36.92880', '-83.24000'), ('KEITH', None, '36.85320', '-83.36920'), ('KELLIOKA', None, '36.90250', '-83.24380'), ('KENTENIA', None, '36.79800', '-83.40130'), ('KENTENIA STATE FOREST', None, '36.92490', '-83.22430'), ('KENVIR', None, '36.85390', '-83.15960'), ('KERR', None, '36.83800', '-83.41290'), ('KILDAV', None, '36.85720', '-83.21100'), ('KINGDOM COME STATE PARK', None, '36.99030', '-82.98520'), ('KITTS', None, '36.85510', '-83.29790'), ('LADEN', None, '36.91640', '-83.19290'), ('LAYMAN', None, '36.82970', '-83.46420'), ('LEJUNIOR', None, '36.90590', '-83.07170'), ('LENARVE', None, '36.80580', '-83.26830'), ('LEONARD', None, '36.91010', '-83.11020'), ('LIGGETT', None, '36.75190', '-83.34720'), ('LONGTON', None, '36.83550', '-83.41010'), ('LOUELLEN', None, '36.91140', '-83.08580'), ('LOW', None, '36.78290', '-83.39820'), ('LOYALL', 766, '36.85180', '-83.35080'), ('LYNCH', 900, '36.96450', '-82.91360'), ('MARTINS FORK', None, '36.73000', '-83.33000'), ('MARTINS FORK LAKE', None, '36.75000', '-83.26000'), ('MARY ALICE', None, '36.78580', '-83.33040'), ('MARY HELEN', None, '36.81270', '-83.25200'), ('MERNA', None, '36.79340', '-83.25200'), ('MOLUS', None, '36.81360', '-83.49110'), ('NOLANSBURG', None, '36.92620', '-83.16550'), ('PANSY', None, '36.77510', '-83.32940'), ('PATHFORK', None, '36.75580', '-83.46310'), ('PEEPACE STORE', None, '36.73000', '-83.32000'), ('PINE MOUNTAIN', None, '36.94970', '-83.18570'), ('POPEVILLE', None, '36.79390', '-83.20900'), ('PUTNEY', None, '36.90670', '-83.22680'), ('REDBUD', None, '36.85950', '-83.16880'), ('REX', None, '36.85280', '-83.30030'), ('RHEA', None, '36.89890', '-83.25650'), ('RIDGEWAY', None, '36.89640', '-83.12320'), ('RILEYVILLE', None, '36.89710', '-83.06450'), ('RIO VISTA', None, '36.84560', '-83.35890'), ('RIVER RIDGE', None, '36.87660', '-83.17190'), ('ROCK HOUSE', None, '36.90070', '-82.93930'), ('ROSSPOINT', None, '36.88400', '-83.29100'), ('RUTHERFORD', None, '36.88460', '-83.03420'), ('SAND HILL', None, '36.97500', '-83.00540'), ('SHIELDS', None, '36.89560', '-83.14080'), ('SHORT TOWN', None, '36.87750', '-83.16040'), ('SMITH', None, '36.74000', '-83.26000'), ('SOUTH WALLINS', 996, '36.80740', '-83.40630'), ('STANFILL', None, '36.76500', '-83.34290'), ('SUNSHINE', None, '36.83790', '-83.32920'), ('TACKY TOWN', None, '36.85280', '-83.47460'), ('TEETERSVILLE', None, '36.81230', '-83.33750'), ('TEN SPOT', None, '36.84300', '-83.21720'), ('THREE POINT', None, '36.76430', '-83.25880'), ('TOTZ', None, '36.94420', '-83.11890'), ('TREMONT', None, '36.84220', '-83.39310'), ('TWAY', None, '36.82760', '-83.31810'), ('TWILA', None, '36.77270', '-83.39360'), ('VERDA', None, '36.85100', '-83.22110'), ('WALLINS CREEK', 257, '36.82790', '-83.41450'), ('WHITE STAR', None, '36.82750', '-83.36650'), ('WOODS', None, '36.86100', '-83.18160'), ('YANCEY', None, '36.76560', '-83.31920')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ089': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('VEVAY', 1735, '38.74440', '-85.07120'), ('CARROLLTON', 3846, '38.67860', '-85.16460'), ('GHENT', 371, '38.73570', '-85.06100'), ('PRESTONVILLE', 164, '38.67950', '-85.19520'), ('WORTHVILLE', 215, '38.60940', '-85.06850')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYZ080': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ATLANTA', None, '37.23250', '-84.04940'), ('BALDROCK', None, '36.99030', '-84.28360'), ('BERNSTADT', None, '37.15610', '-84.19470'), ('BLACKWATER', None, '37.05310', '-83.89500'), ('BROCK', None, '37.10970', '-84.00000'), ('BUNCH', None, '37.09860', '-84.23640'), ('CAMP WILDCAT', None, '37.26490', '-84.20080'), ('CANE CREEK', None, '37.05580', '-83.92280'), ('CARMICHAEL', None, '37.18690', '-84.13870'), ('CRUISE', None, '37.31830', '-84.12310'), ('DILLON', None, '37.26030', '-84.22710'), ('DORTHAE', None, '36.99330', '-84.10470'), ('EAST BERNSTADT', 774, '37.18940', '-84.11830'), ('FARISTON', None, '37.07000', '-84.05670'), ('GREENMOUNT', None, '37.24750', '-84.03080'), ('HARE', None, '37.20430', '-84.15990'), ('HAZEL PATCH', None, '37.24440', '-84.19310'), ('HIGHTOP', None, '37.03280', '-84.18780'), ('HOLLY BAY RECREATIONAL AR', None, '36.98460', '-84.25040'), ('HUXLEY', None, '36.95470', '-84.34310'), ('KEAVY', None, '37.00120', '-84.16560'), ('LAKE', None, '37.08940', '-83.88560'), ('LAMERO', None, '37.29010', '-84.14070'), ('LESBAS', None, '37.07890', '-83.99560'), ('LEVI JACKSON WILDERNESS R', None, '37.08150', '-84.04130'), ('LIDA', None, '37.08220', '-83.93470'), ('LILY', None, '37.02380', '-84.07550'), ('LONDON', 5692, '37.12800', '-84.08220'), ('LONDON-CORBIN AIRPORT', None, '37.08680', '-84.07710'), ('LYNN CAMP', None, '36.99380', '-84.00900'), ('MAPLESVILLE', None, '37.15000', '-84.02780'), ('MARYDELL', None, '37.10920', '-83.90890'), ('MCHARGUE', None, '37.00530', '-84.01750'), ('MCWHORTER', None, '37.23420', '-84.00000'), ('MERSHONS', None, '37.28310', '-84.12580'), ('OAKLEY', None, '37.23830', '-84.09780'), ('PITTSBURG', None, '37.16070', '-84.10770'), ('ROCKCASTLE SPRINGS', None, '37.01640', '-84.30450'), ('SASSER', None, '37.07140', '-83.89110'), ('SUBLIMITY CITY', None, '37.10020', '-84.08630'), ('TEMPLER', None, '37.30230', '-84.12390'), ('TUTTLE', None, '37.02000', '-83.95000'), ('VICTORY', None, '37.25640', '-84.09700'), ('VOX', None, '36.98640', '-84.19920'), ('WOOD CREEK LAKE', None, '37.20330', '-84.18970')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'KYZ081': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AMANDAVILLE', None, '36.90000', '-85.30000'), ('BECKS STORE', None, '36.91670', '-85.40000'), ('BURKESVILLE', 1756, '36.79070', '-85.36880'), ('DUBRE', None, '36.83330', '-85.55000'), ('MARROWBONE', None, '36.81670', '-85.50000'), ('PEYTONSBURG', None, '36.63330', '-85.38330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ082': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALBANY', 2220, '36.69050', '-85.13540'), ('CUMBERLAND CITY', None, '36.80000', '-85.06670'), ('STATIC', None, '36.63000', '-85.08330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ083': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BARRIER', None, '36.76890', '-84.76720'), ('BETSEY', None, '36.90360', '-84.74310'), ('BURFIELD', None, '36.72640', '-84.79090'), ('CABELL', None, '36.83110', '-85.00690'), ('COOPER', None, '36.77110', '-84.86140'), ('COOPERSVILLE', None, '36.76040', '-84.73800'), ('DELTA', None, '36.86490', '-84.65840'), ('DENNEY', None, '36.81330', '-84.65690'), ('FRAZER', None, '36.95640', '-84.70500'), ('GREGORY', None, '36.82940', '-84.70190'), ('GRIFFIN', None, '36.70430', '-84.72930'), ('HIDALGO', None, '36.73560', '-84.94750'), ('KIDDER', None, '36.91500', '-84.65170'), ('KIDDS CROSSING', None, '36.75640', '-84.68000'), ('MILL SPRINGS', None, '36.93190', '-84.77920'), ('MONTICELLO', 5981, '36.84050', '-84.84760'), ('MOUNT PISGAH', None, '36.65890', '-84.81470'), ('OIL VALLEY', None, '36.77440', '-84.79830'), ('PARMLEYSVILLE', None, '36.68420', '-84.75390'), ('PARNELL', None, '36.86780', '-84.94530'), ('POWERSBURG', None, '36.70420', '-84.96530'), ('RITNER', None, '36.79250', '-84.64000'), ('ROCKEYBRANCH', None, '36.73240', '-84.73300'), ('SLICKFORD', None, '36.69750', '-84.89010'), ('STEUBENVILLE', None, '36.88750', '-84.80280'), ('SUNNYBROOK', None, '36.65700', '-84.97580'), ('SUSIE', None, '36.77640', '-84.95640'), ('ZULA', None, '36.76720', '-84.97940')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'KYZ084': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEULAH HEIGHTS', None, '36.80340', '-84.43640'), ('BLUE HERON', None, '36.66840', '-84.54600'), ('CO OPERATIVE', None, '36.69280', '-84.60780'), ('GREAT MEADOWS CAMPSITES', None, '36.62880', '-84.72490'), ('GREENWOOD', None, '36.87470', '-84.49400'), ('HOLLYHILL', None, '36.66310', '-84.33030'), ('HONEYBEE', None, '36.84220', '-84.37320'), ('MARSHES SIDING', None, '36.74330', '-84.48120'), ('PARKERS LAKE', None, '36.84060', '-84.48050'), ('PINE KNOT', 1680, '36.66390', '-84.43890'), ('SLAVANS', None, '36.75360', '-84.66560'), ('STEARNS', 1586, '36.69500', '-84.47800'), ('STRUNK', None, '36.62740', '-84.43490'), ('WHITLEY CITY', 1111, '36.72470', '-84.47540'), ('WIBORG', None, '36.80910', '-84.48950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'KYZ085': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AYERS', None, '36.63040', '-84.22900'), ('BARK CAMP', None, '36.91340', '-84.25530'), ('BARTON', None, '36.93500', '-84.12990'), ('BON', None, '36.72270', '-84.19100'), ('BOUNTY', None, '36.72670', '-84.26760'), ('CARPENTER', None, '36.71510', '-83.97140'), ('CLIO', None, '36.81690', '-84.19930'), ('CORBIN', 7742, '36.93740', '-84.10740'), ('CUMBERLAND FALLS STATE RE', None, '36.84070', '-84.33840'), ('DEERING', None, '36.88100', '-84.19920'), ('DIXIE', None, '36.69610', '-84.05450'), ('DUCKRUN', None, '36.73590', '-84.31570'), ('EMLYN', None, '36.70470', '-84.14250'), ('FABER', None, '36.87630', '-84.13220'), ('FAIRVIEW', 156, '36.59960', '-84.11250'), ('GATLIFF', None, '36.67880', '-84.02140'), ('GAUSDALE', None, '36.75750', '-83.97570'), ('GOINS', None, '36.69970', '-83.94020'), ('GOLDBUG', None, '36.79450', '-84.17360'), ('GROVE', None, '36.93050', '-84.22330'), ('JELLICO CREEK', None, '36.68690', '-84.23260'), ('JULIP', None, '36.74210', '-84.06630'), ('KRUPP', None, '36.78700', '-84.25030'), ('LIBERTY', 1850, '36.76460', '-84.20340'), ('LOT', None, '36.60040', '-84.08870'), ('LOUDEN', None, '36.75170', '-84.02840'), ('LUCKY', None, '36.73110', '-84.06740'), ('MOUNTAIN ASH', None, '36.65720', '-84.12910'), ('NEVISDALE', None, '36.68490', '-84.04410'), ('PACKARD', None, '36.66680', '-84.05570'), ('PEARL', None, '36.63030', '-83.94550'), ('PERKINS', None, '36.78430', '-84.06190'), ('PLEASANT VIEW', None, '36.67860', '-84.12950'), ('POLLY CAMP', None, '36.66460', '-84.04440'), ('RED ASH', None, '36.61610', '-84.12250'), ('REDBIRD', None, '36.76150', '-84.21960'), ('ROCKHOLDS', None, '36.82920', '-84.11660'), ('RYE', None, '36.92440', '-84.18730'), ('SAXTON', None, '36.63320', '-84.10950'), ('SILER', None, '36.69830', '-83.96250'), ('SUTTONS MILL', None, '36.74300', '-84.10180'), ('VERNE', None, '36.71790', '-84.07010'), ('WALDEN', None, '36.84590', '-84.16820'), ('WILKERSON', None, '36.59850', '-83.97150'), ('WILLIAMSBURG', 5143, '36.73830', '-84.16750'), ('WOFFORD', None, '36.78120', '-84.13490'), ('WOODBINE', None, '36.90450', '-84.08830'), ('YADEN', None, '36.73690', '-84.09800'), ('YOUNGS CREEK', None, '36.86560', '-84.24090'), ('ZION HILL', None, '36.60950', '-84.23710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'KYZ086': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARKLE', None, '36.91990', '-83.97670'), ('ARTEMUS', None, '36.83360', '-83.84150'), ('AVIS', None, '36.81530', '-83.82840'), ('BAILEYS SWITCH', None, '36.91240', '-83.90010'), ('BARBOURVILLE', 3589, '36.86640', '-83.88400'), ('BARNYARD', None, '36.90900', '-83.74130'), ('BAUGHMAN', None, '36.86550', '-83.80050'), ('BENTLEY STATION', None, '36.91780', '-83.93190'), ('BERTHA STATION', None, '36.92990', '-83.99070'), ('BIMBLE', None, '36.87690', '-83.82000'), ('BIRDSEYE', None, '36.74290', '-83.93210'), ('BOONE HEIGHTS', None, '36.85070', '-83.85450'), ('BRUSH CREEK', None, '36.82240', '-83.84010'), ('BRYANTS STORE', None, '36.77440', '-83.92120'), ('CANNON', None, '36.91720', '-83.85910'), ('CLATE', None, '36.79890', '-83.96050'), ('CRANES NEST', None, '36.98950', '-83.87950'), ('DEWITT', None, '36.87700', '-83.73750'), ('DISHMAN SPRINGS', None, '36.86890', '-83.95970'), ('EMMANUEL', None, '36.90630', '-83.93270'), ('EROSE', None, '36.92780', '-83.61680'), ('FLAT LICK', None, '36.82420', '-83.76900'), ('FLETCHER', None, '37.00440', '-83.86960'), ('FOUNT', None, '36.98770', '-83.82870'), ('GARRICH', None, '36.93250', '-83.93650'), ('GIBBS', None, '37.02040', '-83.89910'), ('GIRDLER', None, '36.93730', '-83.84110'), ('GRAY', None, '36.94340', '-84.00570'), ('GREEN ROAD', None, '36.95960', '-83.83590'), ('HAMMOND', None, '36.95730', '-83.72710'), ('HAVEN', None, '37.01150', '-83.82050'), ('HEIDRICK', None, '36.88260', '-83.87840'), ('HIMYAR', None, '36.83300', '-83.79850'), ('HINKLE', None, '36.91350', '-83.81830'), ('HUBBS', None, '36.77730', '-83.88990'), ('INDIAN CREEK', None, '36.87000', '-83.98230'), ('JARVIS', None, '36.95520', '-83.89150'), ('KAYJAY', None, '36.74420', '-83.84820'), ('KING', None, '36.79570', '-83.94110'), ('KNOXFORK', None, '36.99260', '-83.92420'), ('LOWELL', None, '36.90960', '-83.92920'), ('MILLS', None, '36.92260', '-83.64240'), ('MOORE HILL', None, '36.93490', '-84.08070'), ('MYRICK', None, '36.80620', '-83.84110'), ('NORTH CORBIN', 1662, '36.96650', '-84.09470'), ('OLD FLAT LICK', None, '36.83840', '-83.77100'), ('PERMON', None, '36.81010', '-83.98280'), ('PROVIDENCE', 3611, '36.86700', '-83.90930'), ('ROSSLAND', None, '36.92680', '-83.98760'), ('SALT GUM', None, '36.94800', '-83.70380'), ('SCALF', None, '36.91850', '-83.70010'), ('SILER', None, '36.94120', '-84.04000'), ('SPRULE', None, '37.01500', '-83.84890'), ('SWAN LAKE', None, '36.82430', '-83.92880'), ('SWANPOND', None, '36.83260', '-83.90170'), ('TEDDERS', None, '37.02000', '-83.87870'), ('TROSPER', None, '36.78750', '-83.81590'), ('WALKER', None, '36.88280', '-83.71580'), ('WARREN', None, '36.75260', '-83.84440'), ('WHEELER', None, '36.72520', '-83.84320'), ('WILTON', None, '36.88840', '-84.04390'), ('WOOLLUM', None, '37.02090', '-83.81780'), ('YEAGER', None, '36.87400', '-83.83130')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ087': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARJAY', None, '36.80500', '-83.64690'), ('BALKAN', None, '36.75970', '-83.54500'), ('BEVERLY', None, '36.93000', '-83.53300'), ('BINGHAMTOWN', None, '36.63190', '-83.71940'), ('BLACK SNAKE', None, '36.76910', '-83.50390'), ('BLACKMONT', None, '36.79200', '-83.52500'), ('BLANCHE', None, '36.81910', '-83.65610'), ('CALLAWAY', None, '36.78420', '-83.56310'), ('CALVIN', None, '36.72280', '-83.62220'), ('CARY', None, '36.79360', '-83.66530'), ('CHENOA', None, '36.66940', '-83.86190'), ('CLEAR CREEK SPRINGS', None, '36.72690', '-83.72830'), ('CUBAGE', None, '36.70250', '-83.52170'), ('DAVISBURG', None, '36.68000', '-83.82360'), ('EAST PINEVILLE', None, '36.73470', '-83.67170'), ('ELYS', None, '36.80590', '-83.75090'), ('FERNDALE', None, '36.69610', '-83.68610'), ('FIELD', None, '36.89310', '-83.60280'), ('FONDE', None, '36.60000', '-83.87780'), ('FOURMILE', None, '36.79360', '-83.74190'), ('FRAKES', None, '36.64310', '-83.92780'), ('HUTCH', None, '36.65030', '-83.62220'), ('INGRAM', None, '36.73110', '-83.79920'), ('KETTLE ISLAND', None, '36.79140', '-83.60470'), ('MELDRUM', None, '36.66750', '-83.69390'), ('MIDDLESBORO', None, '36.61320', '-83.72240'), ('MIRACLE', None, '36.76110', '-83.58390'), ('NOETOWN', None, '36.61750', '-83.75560'), ('OAKS', None, '36.72330', '-83.55670'), ('PINEVILLE', 2093, '36.76280', '-83.70130'), ('PONZA', None, '36.72000', '-83.64300'), ('PRUDEN', None, '36.59500', '-83.89140'), ('RELLA', None, '36.83580', '-83.63280'), ('STONY FORK', None, '36.83250', '-83.53470'), ('STRAIGHT CREEK', None, '36.77280', '-83.66720'), ('VARILLA', None, '36.73940', '-83.60030'), ('WALLSEND', None, '36.76580', '-83.71000'), ('WASIOTO', None, '36.75250', '-83.68920')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'CAZ044': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('FILLMORE', 13643, '34.40020', '-118.91850'), ('OJAI', 7862, '34.44910', '-119.24570'), ('PIRU', 1196, '34.40730', '-118.79870'), ('SANTA PAULA', 28598, '34.35230', '-119.06930'), ('LAKE CASITAS', None, '34.39000', '-119.34000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ045': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('MOORPARK', 31415, '34.28510', '-118.87760'), ('SIMI VALLEY', 111351, '34.26300', '-118.75130'), ('THOUSAND OAKS', 117005, '34.19270', '-118.86760'), ('LAKE PIRU', None, '34.38000', '-118.75000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ047': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AGOURA HILLS', 20537, '34.15100', '-118.75980'), ('ALHAMBRA', 85804, '34.08400', '-118.13470'), ('ALTADENA', 42610, '34.19230', '-118.13470'), ('AZUSA', 44712, '34.13810', '-117.91230'), ('BURBANK', 5239, '34.19130', '-118.32570'), ('CLAREMONT', 33998, '34.12190', '-117.71570'), ('DIAMOND BAR', 56287, '33.99940', '-117.81430'), ('EAST LOS ANGELES', 124283, '34.03260', '-118.16860'), ('EL MONTE', 115965, '34.07480', '-118.02780'), ('GLENDALE', 194973, '34.17670', '-118.25330'), ('WOODLAND HILLS', None, '34.17000', '-118.59000'), ('CHATSWORTH', None, '34.27000', '-118.59000'), ('LA PUENTE', 41063, '34.03250', '-117.95230'), ('MONROVIA', 36929, '34.16340', '-117.99040'), ('MONTEBELLO', 62150, '34.01550', '-118.11000'), ('MONTEREY PARK', 60051, '34.04680', '-118.13060'), ('PASADENA', 133936, '34.16070', '-118.13870'), ('POMONA', 149473, '34.05900', '-117.76140'), ('ROWLAND HEIGHTS', 48553, '33.97980', '-117.89140'), ('SAN FERNANDO', 23564, '34.28950', '-118.43500'), ('SOUTH SAN JOSE HILLS', 20218, '34.01280', '-117.90380'), ('WALNUT', 30004, '34.02900', '-117.85740'), ('WEST COVINA', 105080, '34.05430', '-117.90980'), ('WESTLAKE VILLAGE', 8368, '34.13610', '-118.82130'), ('WHITTIER', 83680, '33.96660', '-118.02170'), ('VAN NUYS', None, '34.18000', '-118.45000'), ('RESEDA', None, '34.20000', '-118.52000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ040': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CAMARILLO', 57077, '34.22250', '-119.02940'), ('OXNARD', 170358, '34.19740', '-119.21370'), ('PORT HUENEME', 21845, '34.16210', '-119.20340'), ('POINT MUGU', None, '34.09000', '-119.06000'), ('VENTURA', None, '34.26590', '-119.25840'), ('LA CONCHITA', None, '34.35000', '-119.43000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ041': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BEVERLY HILLS', 33784, '34.07930', '-118.40140'), ('COMPTON', 93493, '33.89250', '-118.22650'), ('CULVER CITY', 38816, '34.00580', '-118.39610'), ('DOWNEY', 107323, '33.93820', '-118.12990'), ('HAWTHORNE', 84112, '33.91470', '-118.34700'), ('HERMOSA BEACH', 18566, '33.86000', '-118.40000'), ('HUNTINGTON PARK', 61348, '33.98030', '-118.21510'), ('INGLEWOOD', 112580, '33.95580', '-118.34360'), ('LAKEWOOD', 79345, '33.84880', '-118.12200'), ('LONG BEACH', 461522, '33.78890', '-118.15980'), ('DOWNTOWN LOS ANGELES', None, '34.04000', '-118.30000'), ('LYNWOOD', 69845, '33.92370', '-118.20140'), ('MANHATTAN BEACH', 33852, '33.89510', '-118.41000'), ('MARINA DEL REY', 8176, '33.98030', '-118.45110'), ('NORWALK', 103298, '33.90690', '-118.08250'), ('PALOS VERDES ESTATES', 13340, '33.78780', '-118.39620'), ('POINT DUME', None, '34.01230', '-118.80160'), ('REDONDO BEACH', 63261, '33.83000', '-118.39000'), ('SANTA MONICA', 84084, '34.01340', '-118.49320'), ('MALIBU', 12575, '34.03000', '-118.68000'), ('TORRANCE', 137946, '33.83480', '-118.34040'), ('HOLLYWOOD', None, '34.10000', '-118.33000'), ('SAN PEDRO', None, '33.75000', '-118.33000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'VAZ066': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARVINS STORE', None, '37.01970', '-78.34310'), ('BACONS FORK', None, '36.85270', '-78.06030'), ('BLEVINS CORNER', None, '36.98060', '-78.43690'), ('DUNDAS', None, '36.91320', '-78.02180'), ('FORT MITCHELL', None, '36.91790', '-78.48190'), ('GARY', None, '36.86500', '-78.20070'), ('GILLS CORNER', None, '36.86060', '-78.03530'), ('KELLS CORNER', None, '36.87870', '-78.40770'), ('KENBRIDGE', 1253, '36.96410', '-78.13060'), ('LAFOON CORNER', None, '36.92370', '-78.08910'), ('LOVES MILL', None, '36.90580', '-78.28420'), ('LUNENBURG', None, '36.96140', '-78.26570'), ('MEHERRIN', None, '37.09000', '-78.36670'), ('NUTBUSH', None, '37.04500', '-78.27630'), ('ORAL OAKS', None, '36.91570', '-78.19590'), ('PLANTERSVILLE', None, '36.92580', '-78.44190'), ('PLEASANT GROVE', None, '37.00060', '-78.37200'), ('REHOBOTH', None, '36.92050', '-78.35510'), ('RUBERMOUNT', None, '37.06250', '-78.20640'), ('SCHOLFIELD', None, '37.10180', '-78.32400'), ('SIMPLICITY', None, '37.07970', '-78.42440'), ('VICTORIA', 1821, '36.99460', '-78.22450'), ('WILBURN', None, '36.85570', '-78.27090')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'CAZ043': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BONITA', 12401, '32.66750', '-117.02990'), ('CAMP PENDLETON SOUTH', 8854, '33.23330', '-117.37350'), ('CARLSBAD', 78247, '33.12380', '-117.28590'), ('CHULA VISTA', 173556, '32.64000', '-117.08330'), ('CORONADO', 24100, '32.68580', '-117.18220'), ('DEL MAR', 4389, '32.96490', '-117.26240'), ('ENCINITAS', 58014, '33.04770', '-117.26260'), ('IMPERIAL BEACH', 26992, '32.57020', '-117.11860'), ('LAKE SAN MARCOS', 4138, '33.11910', '-117.20910'), ('NATIONAL CITY', 54260, '32.66600', '-117.09850'), ('OCEANSIDE', 161029, '33.19580', '-117.37860'), ('SAN DIEGO', 1223400, '32.71530', '-117.15640'), ('SOLANA BEACH', 12979, '32.99580', '-117.25590'), ('VISTA', 89857, '33.18880', '-117.23820')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'TNZ028': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELINDA CITY', None, '36.17000', '-86.47790'), ('GREEN HILL', 7068, '36.23480', '-86.57090'), ('LEBANON', 20235, '36.20980', '-86.32220'), ('MOUNT JULIET', 12366, '36.20620', '-86.52250'), ('RURAL HILL', 2032, '36.11140', '-86.51130'), ('WATERTOWN', 1358, '36.09960', '-86.13950')], 'partOfState': '', 'wfo': 'OHX'}, -'CAZ048': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BANNING', 23562, '33.93730', '-116.89210'), ('BEAUMONT', 11384, '33.93180', '-116.97850'), ('BLOOMINGTON', 19318, '34.05940', '-117.39780'), ('CALIMESA', 7139, '33.99590', '-117.04510'), ('CANYON LAKE', 9952, '33.68350', '-117.25340'), ('CHERRY VALLEY', 5891, '33.97250', '-116.96530'), ('CHINO', 67168, '34.00690', '-117.68600'), ('CHINO HILLS', 66787, '33.97480', '-117.74870'), ('COLTON', 47662, '34.05790', '-117.32200'), ('CORONA', 124966, '33.86790', '-117.56970'), ('EAST HEMET', 14823, '33.74000', '-116.93800'), ('FONTANA', 128929, '34.09770', '-117.45730'), ('GLEN AVON', 14853, '34.01740', '-117.48760'), ('GRAND TERRACE', 11626, '34.03060', '-117.31450'), ('HEMET', 58812, '33.73160', '-116.99780'), ('HIGHGROVE', 3445, '34.01450', '-117.32800'), ('HIGHLAND', 44605, '34.11730', '-117.18910'), ('HOME GARDENS', 9461, '33.88090', '-117.51320'), ('HOMELAND', 3710, '33.74850', '-117.10860'), ('LAKE ELSINORE', 28928, '33.66900', '-117.32150'), ('LAKELAND VILLAGE', 5626, '33.63830', '-117.34480'), ('LAKEVIEW', 1619, '33.82810', '-117.12380'), ('LOMA LINDA', 18681, '34.04420', '-117.24900'), ('LOS SERRANOS', None, '33.97380', '-117.70310'), ('MARCH AFB', 370, '33.89130', '-117.26390'), ('MENTONE', 7803, '34.06300', '-117.12280'), ('MIRA LOMA', 17617, '33.98460', '-117.51270'), ('MONTCLAIR', 33049, '34.07280', '-117.69660'), ('MORENO VALLEY', 142381, '33.92620', '-117.21030'), ('MURRIETA', 44282, '33.55970', '-117.20960'), ('MURRIETA HOT SPRINGS', 2948, '33.56510', '-117.15080'), ('MUSCOY', 8919, '34.15230', '-117.34570'), ('NORCO', 24157, '33.92550', '-117.55120'), ('NUEVO', 4135, '33.80690', '-117.13700'), ('ONTARIO', 158007, '34.05440', '-117.60580'), ('PEDLEY', 11207, '33.97670', '-117.47060'), ('PERRIS', 36189, '33.79300', '-117.22310'), ('QUAIL VALLEY', 1639, '33.70540', '-117.25210'), ('RANCHO CUCAMONGA', 127743, '34.12380', '-117.57020'), ('REDLANDS', 63591, '34.05790', '-117.17090'), ('RIALTO', 91873, '34.11360', '-117.38700'), ('RIVERSIDE', 255166, '33.94040', '-117.39740'), ('ROMOLAND', 2764, '33.74460', '-117.17170'), ('RUBIDOUX', 29180, '33.99550', '-117.42120'), ('SAN ANTONIO HEIGHTS', 3122, '34.15430', '-117.65840'), ('SAN BERNARDINO', 185401, '34.13970', '-117.29230'), ('SAN JACINTO', 23779, '33.79270', '-116.96420'), ('SEDCO HILLS', 3078, '33.64000', '-117.28250'), ('SUN CITY', 17773, '33.71290', '-117.20250'), ('SUNNYSLOPE', 4437, '34.01890', '-117.42270'), ('TEMECULA', 57716, '33.50270', '-117.12880'), ('UPLAND', 68393, '34.11880', '-117.65770'), ('VALLE VISTA', 10488, '33.75060', '-116.89610'), ('WILDOMAR', 14064, '33.60960', '-117.25150'), ('WINCHESTER', 2155, '33.70890', '-117.08060'), ('WOODCREST', 8342, '33.88580', '-117.36200'), ('YUCAIPA', 41207, '34.03310', '-117.04440')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'TNZ029': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('HARTSVILLE', 2395, '36.39000', '-86.15960')], 'partOfState': '', 'wfo': 'OHX'}, -'WYZ056': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CARLILE', None, '44.48330', '-104.80000'), ('DEVILS TOWER', None, '44.60000', '-104.73330'), ('DEVILS TOWER JUNCTION', None, '44.50420', '-104.68740'), ('HULETT', 408, '44.68040', '-104.60380'), ('KEYHOLE RESERVOIR', None, '44.36670', '-104.85000'), ('LIGHTNING FLAT', None, '44.98330', '-105.03330'), ('LINDEN', None, '44.31670', '-104.60000'), ('MOORCROFT', 807, '44.26670', '-104.95000'), ('NEW HAVEN', None, '44.75000', '-104.85000'), ('OSHOTO', None, '44.60000', '-104.95000'), ('PINE HAVEN', 222, '44.34880', '-104.81010'), ('STRONER', None, '44.77000', '-105.05000'), ('WONDER VIEW', None, '44.45000', '-104.63330')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'ARZ050': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BEN LOMOND', 126, '33.83440', '-94.11500'), ('DE QUEEN', 5765, '34.04270', '-94.34180'), ('GILLHAM', 188, '34.16790', '-94.31350'), ('HORATIO', 997, '33.93980', '-94.35510'), ('LOCKESBURG', 711, '33.97090', '-94.17310')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'NCZ052': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CANTON', 4029, '35.54610', '-82.84300'), ('CLYDE', 1324, '35.53320', '-82.91180'), ('COVE CREEK', None, '35.60640', '-83.01140'), ('CRUSO', None, '35.41750', '-82.81080'), ('LAKE JUNALUSKA', 2675, '35.52770', '-82.97660'), ('MAGGIE VALLEY', 607, '35.51720', '-83.09150'), ('SUNBURST', None, '35.41060', '-82.93220'), ('WATERVILLE', None, '35.76260', '-83.10050'), ('WAYNESVILLE', 9232, '35.48450', '-82.99750')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ053': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASHEVILLE', 68889, '35.57410', '-82.54880'), ('AVERY CREEK', 1405, '35.46280', '-82.57450'), ('BARNARDSVILLE', None, '35.77650', '-82.45300'), ('BENT CREEK', 1389, '35.51090', '-82.61430'), ('BILTMORE FOREST', 1440, '35.53350', '-82.54100'), ('BLACK MOUNTAIN', 7511, '35.61430', '-82.33030'), ('CANDLER', None, '35.53640', '-82.69310'), ('FAIRVIEW', 2495, '35.52280', '-82.40450'), ('LEICESTER', None, '35.65300', '-82.68780'), ('MONTREAT', 630, '35.64650', '-82.30060'), ('SKYLAND', None, '35.48350', '-82.52460'), ('SWANNANOA', 4132, '35.60160', '-82.39210'), ('WEAVERVILLE', 2416, '35.69700', '-82.55790'), ('WOODFIN', 3162, '35.63650', '-82.58550')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ050': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAKERSVILLE', 357, '36.01480', '-82.15840'), ('BANDANA', None, '35.97310', '-82.17610'), ('BULADEAN', None, '36.10830', '-82.19500'), ('LEDGER', None, '35.96420', '-82.16530'), ('POPLAR', None, '36.07250', '-82.34330'), ('SPRUCE PINE', 2030, '35.91620', '-82.06990')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ051': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALARKA', None, '35.35180', '-83.43730'), ('ALMOND', None, '35.36970', '-83.56530'), ('BRYSON CITY', 1411, '35.42650', '-83.44730'), ('CHEROKEE', None, '35.47420', '-83.31500'), ('LUADA', None, '35.37280', '-83.50420'), ('NEWFOUND GAP', None, '35.60650', '-83.42500'), ('SMOKEMONT', None, '35.55200', '-83.30520'), ('WESSER', None, '35.33310', '-83.59140')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ056': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CATAWBA', 698, '35.70620', '-81.07580'), ('CLAREMONT', 1038, '35.71360', '-81.15090'), ('CONOVER', 6604, '35.70950', '-81.21750'), ('COOKSVILLE', None, '35.59310', '-81.47610'), ('HICKORY', 37222, '35.73920', '-81.32620'), ('LONGVIEW', None, '35.72600', '-81.38400'), ('MAIDEN', 3282, '35.57580', '-81.20610'), ('NEWTON', 12560, '35.66540', '-81.21870'), ('ST. STEPHENS', 9439, '35.76450', '-81.27340'), ('TERRELL', None, '35.58920', '-80.97830')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ057': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CHINA GROVE', 3616, '35.57120', '-80.58030'), ('CLEVELAND', 808, '35.73090', '-80.67920'), ('CRAVEN', None, '35.62830', '-80.33190'), ('ENOCHVILLE', 2851, '35.52000', '-80.66600'), ('FAITH', 695, '35.58810', '-80.46120'), ('GOLD HILL', None, '35.52110', '-80.33830'), ('GRANITE QUARRY', 2175, '35.61320', '-80.44570'), ('LANDIS', 2996, '35.54630', '-80.61190'), ('MOUNT ULLA', None, '35.65830', '-80.72690'), ('ROCKWELL', 1971, '35.55180', '-80.40690'), ('SALISBURY', 26462, '35.66650', '-80.48290'), ('SPENCER', 3355, '35.69440', '-80.43310'), ('WOODLEAF', None, '35.76890', '-80.59110')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ054': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASHFORD', None, '35.87280', '-81.93880'), ('DYSARTSVILLE', None, '35.60020', '-81.87150'), ('FERO', None, '35.58200', '-81.97670'), ('GLENWOOD', None, '35.60870', '-81.97930'), ('MARION', 4943, '35.68250', '-82.00860'), ('NEBO', None, '35.71500', '-81.93110'), ('OLD FORT', 963, '35.63210', '-82.17580'), ('SUGAR HILL', None, '35.58440', '-82.04250'), ('WOODLAWN', 1051, '35.78530', '-82.04060')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ055': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CONNELLY SPRINGS', 1814, '35.74870', '-81.50000'), ('DREXEL', 1938, '35.75730', '-81.60820'), ('GLEN ALPINE', 1090, '35.72930', '-81.77860'), ('HILDEBRAN', 1472, '35.71520', '-81.42150'), ('ICARD', 2734, '35.72570', '-81.45860'), ('JONAS RIDGE', None, '35.97250', '-81.89500'), ('MORGANTON', 17310, '35.74160', '-81.69840'), ('PLEASANT GROVE', None, '35.63360', '-81.58390'), ('TABLE ROCK', None, '35.83810', '-81.80470'), ('VALDESE', 4485, '35.74650', '-81.55770')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ058': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('FONTANA VILLAGE', None, '35.43560', '-83.81920'), ('ROBBINSVILLE', 747, '35.32280', '-83.80690'), ('SANTEETLAH', None, '35.36380', '-83.86650'), ('STECOAH', None, '35.36970', '-83.69060'), ('TAPOCO', None, '35.44330', '-83.93690')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ059': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BALSAM', None, '35.42670', '-83.08530'), ('CULLOWHEE', 3579, '35.31160', '-83.17840'), ('DILLSBORO', 205, '35.36900', '-83.25210'), ('GAY', None, '35.29140', '-83.27330'), ('SYLVA', 2435, '35.37440', '-83.22280'), ('TUCKASEGEE', None, '35.27030', '-83.12280'), ('WEBSTER', 486, '35.35290', '-83.21500')], 'partOfState': '', 'wfo': 'GSP'}, -'COZ049': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AKRON', 1711, '40.16260', '-103.21170'), ('ANTON', None, '39.75000', '-103.22000'), ('ARICKAREE SCHOOL', None, '39.74600', '-103.03100'), ('BURDETT', None, '40.36300', '-102.94700'), ('COPE', None, '39.67000', '-102.85000'), ('ELBA', None, '39.92000', '-103.18000'), ('FREMONT BUTTE', None, '40.25000', '-103.30700'), ('HYDE', None, '40.13000', '-102.83000'), ('LAST CHANCE', None, '39.73000', '-103.58000'), ('LINDON', None, '39.73000', '-103.40000'), ('LONE STAR', None, '40.35300', '-102.84200'), ('MESSEX', None, '40.38000', '-103.38000'), ('MIDWAY', None, '40.22800', '-103.39600'), ('OTIS', 534, '40.14970', '-102.96160'), ('PLATNER', None, '40.16000', '-103.07000'), ('PREWITT RESERVOIR', None, '40.42900', '-103.35800'), ('THURMAN', None, '39.59600', '-103.21800'), ('WOODLIN SCHOOL', None, '39.78800', '-103.51900'), ('WOODROW', None, '39.98000', '-103.58000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'GAZ059': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MONTICELLO', 2428, '33.30560', '-83.68790'), ('SHADY DALE', 242, '33.40040', '-83.58910')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ058': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('FLOVILLA', 652, '33.25300', '-83.89970'), ('JACKSON', 3934, '33.29210', '-83.96220'), ('JENKINSBURG', 203, '33.32490', '-84.03430')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ057': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLACKSVILLE', 4, '33.42950', '-84.15630'), ('HAMPTON', 3857, '33.38440', '-84.28520'), ('LOCUST GROVE', 2322, '33.34530', '-84.10500'), ('MCDONOUGH', 8493, '33.45060', '-84.14400'), ('STOCKBRIDGE', 9853, '33.54580', '-84.24290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ056': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EAST GRIFFIN', 1635, '33.24300', '-84.23230'), ('EXPERIMENT', 3233, '33.27820', '-84.27730'), ('GRIFFIN', 23451, '33.24110', '-84.27290'), ('ORCHARD HILL', 230, '33.18670', '-84.21150'), ('SUNNY SIDE', 142, '33.34160', '-84.29030')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ055': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BONANZA', 2904, '33.45580', '-84.33660'), ('CONLEY', 6188, '33.63790', '-84.33660'), ('FOREST PARK', 21447, '33.61900', '-84.35540'), ('IRONDALE', 7727, '33.48040', '-84.35890'), ('JONESBORO', 3829, '33.52210', '-84.35290'), ('LAKE CITY', 2886, '33.60800', '-84.34060'), ('LOVEJOY', 2495, '33.43950', '-84.31620'), ('MORROW', 4882, '33.57840', '-84.34020'), ('RIVERDALE', 12478, '33.56610', '-84.40820')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ054': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BROOKS', 553, '33.29500', '-84.45920'), ('FAYETTEVILLE', 11148, '33.44550', '-84.46130'), ('PEACHTREE CITY', 31580, '33.39260', '-84.56890'), ('TYRONE', 3916, '33.46800', '-84.59700'), ('WOOLSEY', 175, '33.36130', '-84.41200')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ053': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EAST NEWNAN', 1305, '33.34630', '-84.77750'), ('GRANTVILLE', 1309, '33.23800', '-84.82790'), ('HARALSON', 144, '33.22890', '-84.57030'), ('MORELAND', 393, '33.28620', '-84.77040'), ('NEWNAN', 16242, '33.37910', '-84.78840'), ('SENOIA', 1738, '33.31160', '-84.55250'), ('SHARPSBURG', 316, '33.34130', '-84.64740'), ('TURIN', 165, '33.32700', '-84.63630')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ052': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CENTRALHATCHEE', 383, '33.36840', '-85.10420'), ('CORINTH', 213, '33.23030', '-84.94400'), ('EPHESUS', 388, '33.40810', '-85.26180'), ('FRANKLIN', 902, '33.28140', '-85.09770')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ051': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CRAWFORDVILLE', 572, '33.55440', '-82.89690'), ('SHARON', 105, '33.55910', '-82.79530')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAZ050': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GREENSBORO', 3238, '33.57410', '-83.18370'), ('SILOAM', 331, '33.53650', '-83.08240'), ('UNION POINT', 1669, '33.61720', '-83.07590'), ('WHITE PLAINS', 283, '33.47260', '-83.03760'), ('WOODVILLE', 400, '33.67410', '-83.10670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'WIZ066': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAYSIDE', 4518, '43.18290', '-87.90180'), ('BROWN DEER', 12170, '43.17500', '-87.97480'), ('CUDAHY', 18429, '42.94660', '-87.86480'), ('FOX POINT', 7012, '43.15850', '-87.90170'), ('FRANKLIN', 29494, '42.88630', '-88.00980'), ('GLENDALE', 13367, '43.13000', '-87.92760'), ('GREENDALE', 14405, '42.93570', '-88.00150'), ('GREENFIELD', 35476, '42.96280', '-88.00560'), ('HALES CORNERS', 7765, '42.94050', '-88.04930'), ('MILWAUKEE', 596974, '43.06330', '-87.96660'), ('OAK CREEK', 28456, '42.88230', '-87.89730'), ('RIVER HILLS', 1631, '43.17360', '-87.93510'), ('SHOREWOOD', 13763, '43.09130', '-87.88620'), ('SOUTH MILWAUKEE', 21256, '42.91290', '-87.86220'), ('ST. FRANCIS', 8662, '42.97070', '-87.87170'), ('WAUWATOSA', 47271, '43.06210', '-88.03360'), ('WEST ALLIS', 61254, '43.00720', '-88.03000'), ('WEST MILWAUKEE', 4201, '43.01290', '-87.97010'), ('WHITEFISH BAY', 14163, '43.11260', '-87.90090')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'TXZ036': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAPROCK', None, '33.47970', '-101.40990'), ('CONE', None, '33.79720', '-101.38720'), ('CROSBYTON', 1874, '33.64190', '-101.23740'), ('KALGARY', None, '33.40880', '-101.14800'), ('LORENZO', 1372, '33.67010', '-101.53450'), ('RALLS', 2252, '33.67830', '-101.38440'), ('WHITE RIVER LAKE', None, '33.48080', '-101.09880')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'WYZ004': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BASIN', 1238, '44.37960', '-108.04250'), ('BURLINGTON', 250, '44.44740', '-108.43170'), ('BYRON', 557, '44.79540', '-108.50760'), ('COWLEY', 560, '44.88580', '-108.46980'), ('DEAVER', 177, '44.88920', '-108.59480'), ('EMBLEM', None, '44.51000', '-108.39000'), ('FRANNIE', 209, '44.97090', '-108.61970'), ('GREYBULL', 1815, '44.49100', '-108.05720'), ('HYATTVILLE', 73, '44.25000', '-107.60000'), ('LOVELL', 2281, '44.83680', '-108.39150'), ('MANDERSON', 104, '44.26990', '-107.96340'), ('OTTO', None, '44.40000', '-108.27000'), ('POWELL', 5373, '44.79180', '-108.73590'), ('SHELL', None, '44.53000', '-107.78000')], 'partOfState': 'NORTHWEST', 'wfo': 'RIW'}, -'IAZ060': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALLEMAN', 439, '41.81710', '-93.61030'), ('ALTOONA', 10345, '41.65090', '-93.47630'), ('ANKENY', 27117, '41.72480', '-93.60530'), ('BONDURANT', 1846, '41.68840', '-93.46220'), ('CLIVE', 12855, '41.60770', '-93.76950'), ('DES MOINES', 198682, '41.57670', '-93.61740'), ('ELKHART', 362, '41.79410', '-93.51450'), ('GRIMES', 5098, '41.66080', '-93.78930'), ('JOHNSTON', 8649, '41.68590', '-93.70230'), ('MITCHELLVILLE', 1715, '41.66150', '-93.36090'), ('PLEASANT HILL', 5070, '41.58570', '-93.51440'), ('POLK CITY', 2344, '41.77310', '-93.71650'), ('RUNNELLS', 352, '41.51230', '-93.35810'), ('SAYLORVILLE', 3238, '41.68450', '-93.62580'), ('URBANDALE', 29072, '41.63650', '-93.74090'), ('WEST DES MOINES', 46403, '41.57070', '-93.75290'), ('WINDSOR HEIGHTS', 4805, '41.60480', '-93.71190')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ061': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BAXTER', 1052, '41.82580', '-93.15070'), ('COLFAX', 2223, '41.67620', '-93.24020'), ('KELLOGG', 606, '41.71660', '-92.90740'), ('LAMBS GROVE', 225, '41.70030', '-93.07830'), ('LYNNVILLE', 366, '41.57680', '-92.78620'), ('MINGO', 269, '41.76740', '-93.28430'), ('MONROE', 1808, '41.52020', '-93.10450'), ('NEWTON', 15579, '41.69510', '-93.04510'), ('OAKLAND ACRES', 166, '41.71930', '-92.82000'), ('PRAIRIE CITY', 1365, '41.59810', '-93.23540'), ('REASNOR', 194, '41.57850', '-93.02260'), ('SULLY', 904, '41.57860', '-92.84650'), ('VALERIA', 62, '41.72950', '-93.32450')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ062': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BROOKLYN', 1367, '41.73120', '-92.44460'), ('DEEP RIVER', 288, '41.58150', '-92.37240'), ('GRINNELL', 9105, '41.74080', '-92.72270'), ('GUERNSEY', 70, '41.64930', '-92.34310'), ('HARTWICK', 83, '41.78400', '-92.34600'), ('MALCOM', 352, '41.70750', '-92.55780'), ('MONTEZUMA', 1440, '41.58290', '-92.52750'), ('SEARSBORO', 155, '41.57990', '-92.70480')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ063': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMANA', None, '41.80000', '-91.86670'), ('AMANA AIRPORT', None, '41.79500', '-91.86000'), ('CONROY', None, '41.73330', '-92.00000'), ('EAST AMANA', None, '41.81670', '-91.85000'), ('GENOA BLUFF', None, '41.71670', '-92.15000'), ('HIGH AMANA', None, '41.80000', '-91.93330'), ('HOLBROOK', None, '41.58330', '-91.91670'), ('HOMESTEAD', None, '41.76670', '-91.86670'), ('KOSZTA', None, '41.83330', '-92.20000'), ('LADORA', 287, '41.75580', '-92.18540'), ('LAKE IOWA', None, '41.63330', '-92.18330'), ('MARENGO', 2535, '41.79720', '-92.06940'), ('MIDDLE AMANA', None, '41.80000', '-91.90000'), ('MILLERSBURG', 184, '41.57270', '-92.15920'), ('NORTH ENGLISH', 991, '41.51590', '-92.07810'), ('PARNELL', 220, '41.58350', '-92.00480'), ('SOUTH AMANA', None, '41.78330', '-91.96670'), ('UPPER SOUTH AMANA', None, '41.76670', '-91.96670'), ('VICTOR', 952, '41.73090', '-92.29440'), ('WEST AMANA', None, '41.80000', '-91.97000'), ('WILLIAMSBURG', 2622, '41.66800', '-92.00840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ064': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMISH', None, '41.53330', '-91.78330'), ('CORALVILLE', 15123, '41.69100', '-91.60070'), ('COSGROVE', None, '41.65000', '-91.73330'), ('COU FALLS', None, '41.81660', '-91.66670'), ('ELMIRA', None, '41.71660', '-91.41670'), ('HILLS', 679, '41.57470', '-91.53710'), ('IOWA CITY', 62220, '41.65830', '-91.53510'), ('IOWA CITY MUNICIPAL AIRPO', None, '41.63330', '-91.55000'), ('KENT COUNTY PARK', None, '41.73330', '-91.73330'), ('LAKE MACBRIDE STATE PARK', None, '41.80000', '-91.55000'), ('LONE TREE', 1151, '41.48580', '-91.42480'), ('MORSE', None, '41.75000', '-91.43330'), ('NEWPORT', None, '41.73330', '-91.46670'), ('NORTH LIBERTY', 5367, '41.74150', '-91.60930'), ('OAKDALE', None, '41.70000', '-91.60000'), ('OASIS', None, '41.70000', '-91.38330'), ('OXFORD', 705, '41.72470', '-91.78970'), ('RIVER JCT.', None, '41.48330', '-91.50000'), ('SHARON CENTER', None, '41.56670', '-91.66660'), ('SHUEYVILLE', 250, '41.84810', '-91.64850'), ('SOLON', 1177, '41.80500', '-91.49460'), ('SUTIFF', None, '41.83330', '-91.38330'), ('SWISHER', 813, '41.84340', '-91.69580'), ('TIFFIN', 975, '41.70640', '-91.67730'), ('TWIN VIEW HEIGHTS', None, '41.81660', '-91.56660'), ('UNIVERSITY HEIGHTS', 987, '41.65450', '-91.55800'), ('WILLIAMSTOWN', None, '41.56670', '-91.73330'), ('WINDHAM', None, '41.61670', '-91.76660')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ065': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BENNETT', 395, '41.73970', '-90.97430'), ('BUCHANAN', None, '41.76670', '-91.25000'), ('CEDAR BLUFF', None, '41.78330', '-91.31670'), ('CEDAR VALLEY', None, '41.73340', '-91.25000'), ('CENTERDALE', None, '41.65000', '-91.30000'), ('CLARENCE', 1008, '41.88590', '-91.05810'), ('DOWNEY', None, '41.61670', '-91.35000'), ('DURANT', 1677, '41.60090', '-90.90900'), ('LIME CITY', None, '41.65000', '-91.08340'), ('LOWDEN', 794, '41.85860', '-90.92310'), ('MASSILLON', None, '41.91670', '-90.91670'), ('MECHANICSVILLE', 1173, '41.90490', '-91.25330'), ('ROCHESTER', None, '41.66670', '-91.16670'), ('SPRINGDALE', None, '41.66670', '-91.26670'), ('STANWOOD', 680, '41.89360', '-91.15000'), ('SUNBURY', None, '41.66670', '-90.93330'), ('TIPTON', 3155, '41.77050', '-91.12890'), ('TIPTON MATTHEWS AIRPORT', None, '41.77000', '-91.15000'), ('WALD', None, '41.83330', '-91.13330'), ('WEST BRANCH', 2188, '41.67010', '-91.34920')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ066': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALMONT', None, '41.98330', '-90.20000'), ('ANDOVER', 87, '41.97880', '-90.25160'), ('BRYANT', None, '41.96670', '-90.33330'), ('BULGERS HOLLOW CAMP GROUN', None, '41.93330', '-90.18330'), ('CALAMUS', 394, '41.82670', '-90.75970'), ('CAMANCHE', 4215, '41.79390', '-90.27500'), ('CHARLOTTE', 421, '41.96190', '-90.46750'), ('CLINTON', 27772, '41.84320', '-90.23300'), ('CLINTON MUNICIPAL AIRPORT', None, '41.83330', '-90.33330'), ('DELMAR', 514, '41.99950', '-90.60500'), ('DEWITT', None, '41.82160', '-90.54680'), ('ELVIRA', None, '41.86660', '-90.35000'), ('ELWOOD', None, '42.00000', '-90.73330'), ('FOLLETTS', None, '41.75000', '-90.35000'), ('GOOSE LAKE', 232, '41.96820', '-90.38220'), ('GRAND MOUND', 676, '41.82350', '-90.64890'), ('HAUNTOWN', None, '42.00000', '-90.20000'), ('LOST NATION', 497, '41.96610', '-90.81750'), ('LOW MOOR', 240, '41.80240', '-90.35430'), ('MALONE', None, '41.81670', '-90.45000'), ('TEEDS GROVE', None, '42.01670', '-90.25000'), ('TORONTO', 134, '41.90330', '-90.86290'), ('WELTON', 159, '41.91190', '-90.59780'), ('WHEATLAND', 772, '41.83290', '-90.83720')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ067': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ADAMS', None, '41.48330', '-91.25000'), ('ARDON', None, '41.40000', '-91.18330'), ('ATALISSA', 283, '41.57150', '-91.16660'), ('CONESVILLE', 424, '41.38040', '-91.34810'), ('CRANSTON', None, '41.38330', '-91.26670'), ('FAIRPORT', None, '41.43330', '-90.90000'), ('FRUITLAND', 703, '41.34680', '-91.12570'), ('MIDWAY BEACH', None, '41.46670', '-90.83330'), ('MONTPELIER', None, '41.46670', '-90.80000'), ('MOSCOW', None, '41.58330', '-91.08330'), ('MUSCATINE', 22697, '41.41770', '-91.07170'), ('MUSCATINE MUNICIPAL AIRPO', None, '41.36670', '-91.15000'), ('NEW ERA', None, '41.46670', '-90.90000'), ('NICHOLS', 374, '41.47910', '-91.30810'), ('PLEASANT PRARIE', None, '41.51670', '-90.86670'), ('STOCKTON', 182, '41.58330', '-90.86670'), ('SWEETLAND CENTER', None, '41.50000', '-90.96670'), ('WEST LIBERTY', 3332, '41.57270', '-91.26380'), ('WILDCAT DEN STATE PARK', None, '41.46670', '-90.88330'), ('WILTON', 2829, '41.58910', '-91.02470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ069': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AVOCA', 1610, '41.48080', '-95.33550'), ('CARSON', 668, '41.23660', '-95.41630'), ('CARTER LAKE', 3248, '41.28870', '-95.91610'), ('COUNCIL BLUFFS', 58268, '41.24000', '-95.85950'), ('CRESCENT', 537, '41.36630', '-95.85880'), ('HANCOCK', 207, '41.39330', '-95.36500'), ('MACEDONIA', 325, '41.19210', '-95.42480'), ('MCCLELLAND', 129, '41.32760', '-95.68380'), ('MINDEN', 564, '41.46710', '-95.54190'), ('NEOLA', 845, '41.45090', '-95.61720'), ('OAKLAND', 1487, '41.30850', '-95.39670'), ('TREYNOR', 950, '41.23110', '-95.60640'), ('UNDERWOOD', 688, '41.38570', '-95.67930'), ('WALNUT', 778, '41.47910', '-95.22270')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'LAZ067': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CUT OFF', 5635, '29.52940', '-90.33460'), ('GALLIANO', 7356, '29.43100', '-90.30270'), ('GOLDEN MEADOW', 2193, '29.38770', '-90.27340'), ('LEEVILLE', None, '29.23890', '-90.20750')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'WIZ063': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BELLEVILLE', 1908, '42.86170', '-89.53650'), ('BLACK EARTH', 1320, '43.13660', '-89.74610'), ('BLUE MOUNDS', 708, '43.02070', '-89.82620'), ('BROOKLYN', 916, '42.85290', '-89.37220'), ('CAMBRIDGE', 1101, '43.00720', '-89.01870'), ('COTTAGE GROVE', 4059, '43.08500', '-89.20230'), ('CROSS PLAINS', 3084, '43.11390', '-89.64620'), ('DANE', 799, '43.25040', '-89.50040'), ('DE FOREST', None, '43.24580', '-89.34580'), ('DEERFIELD', 1971, '43.05140', '-89.07430'), ('FITCHBURG', 20501, '42.98600', '-89.42510'), ('MADISON', 208054, '43.07980', '-89.38750'), ('MAPLE BLUFF', 1358, '43.10980', '-89.36940'), ('MARSHALL', 3432, '43.17250', '-89.06410'), ('MAZOMANIE', 1485, '43.17440', '-89.79480'), ('MCFARLAND', 6416, '43.01890', '-89.29390'), ('MIDDLETON', 15770, '43.10290', '-89.50630'), ('MONONA', 8018, '43.05440', '-89.33320'), ('MOUNT HOREB', 5860, '43.00910', '-89.73360'), ('OREGON', 7514, '42.92630', '-89.38210'), ('ROCKDALE', 214, '42.97250', '-89.03260'), ('SHOREWOOD HILLS', 1732, '43.07770', '-89.44650'), ('STOUGHTON', 12354, '42.92110', '-89.22280'), ('SUN PRAIRIE', 20369, '43.18370', '-89.23230'), ('VERONA', 7052, '42.98880', '-89.53540'), ('WAUNAKEE', 8995, '43.18660', '-89.45200'), ('WINDSOR', 2533, '43.21670', '-89.34210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WYZ005': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('GRASS CREEK', None, '43.93000', '-108.65000'), ('HAMILTON DOME', None, '43.77000', '-108.58000'), ('KIRBY', 57, '43.80410', '-108.18020'), ('LUCERNE', 525, '43.73000', '-108.17000'), ('THERMOPOLIS', 3172, '43.64800', '-108.21390')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'ARZ057': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALMYRA', 319, '34.40570', '-91.41060'), ('DE WITT', 3552, '34.28950', '-91.33810'), ('GILLETT', 819, '34.11910', '-91.37900'), ('ST. CHARLES', 261, '34.37580', '-91.13290'), ('STUTTGART', 9745, '34.49350', '-91.55090')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'INZ012': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('HAMLET', 820, '41.37850', '-86.58320'), ('KNOX', 3721, '41.29190', '-86.62130'), ('KOONTZ LAKE', 1554, '41.41820', '-86.48410'), ('NORTH JUDSON', 1675, '41.21700', '-86.77590')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ013': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FRANCESVILLE', 905, '40.98580', '-86.88390'), ('MEDARYVILLE', 565, '41.08030', '-86.89000'), ('MONTEREY', 231, '41.15620', '-86.48170'), ('WINAMAC', 2418, '41.05290', '-86.60330')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ010': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROOK', 1062, '40.86600', '-87.36580'), ('GOODLAND', 1096, '40.76430', '-87.29490'), ('KENTLAND', 1822, '40.77280', '-87.44600'), ('MOROCCO', 1127, '40.94560', '-87.45270'), ('MOUNT AYR', 147, '40.95150', '-87.29830')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'INZ011': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('COLLEGEVILLE', 865, '40.90810', '-87.16390'), ('DE MOTTE', 3234, '41.19970', '-87.19920'), ('REMINGTON', 1323, '40.76270', '-87.15170'), ('RENSSELAER', 5294, '40.93550', '-87.14920'), ('WHEATFIELD', 772, '41.19130', '-87.05250')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'INZ016': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BURKET', 195, '41.15440', '-85.96920'), ('CLAYPOOL', 311, '41.12780', '-85.87970'), ('ETNA GREEN', 663, '41.27810', '-86.04630'), ('LEESBURG', 625, '41.32950', '-85.84860'), ('MENTONE', 898, '41.17380', '-86.03690'), ('MILFORD', 1550, '41.41040', '-85.84830'), ('NORTH WEBSTER', 1067, '41.32530', '-85.69720'), ('PIERCETON', 695, '41.19960', '-85.70760'), ('SIDNEY', 168, '41.10500', '-85.74290'), ('SILVER LAKE', 546, '41.07240', '-85.89170'), ('SYRACUSE', 3038, '41.42320', '-85.74900'), ('WARSAW', 12415, '41.23960', '-85.84760'), ('WINONA LAKE', 3987, '41.21860', '-85.81530')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ017': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CHURUBUSCO', 1666, '41.23240', '-85.32140'), ('COLUMBIA CITY', 7077, '41.15860', '-85.48480'), ('LARWILL', 282, '41.17890', '-85.62440'), ('SOUTH WHITLEY', 1782, '41.08570', '-85.62860'), ('TRI-LAKES', 3925, '41.22100', '-85.48420')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ014': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ARGOS', 1613, '41.23770', '-86.24770'), ('BOURBON', 1691, '41.29780', '-86.11690'), ('BREMEN', 4486, '41.44700', '-86.15440'), ('CULVER', 1539, '41.21790', '-86.42250'), ('LA PAZ', 489, '41.45940', '-86.31000'), ('PLYMOUTH', 9840, '41.34700', '-86.31450')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ015': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AKRON', 1076, '41.03880', '-86.02480'), ('FULTON', 326, '40.94650', '-86.26400'), ('KEWANNA', 614, '41.01910', '-86.41270'), ('ROCHESTER', 6414, '41.06150', '-86.19550')], 'partOfState': '', 'wfo': 'IWX'}, -'WYZ006': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BIG TRAILS', None, '43.77000', '-107.32000'), ('TEN SLEEP', 304, '44.03470', '-107.44740'), ('WINCHESTER', 60, '43.86000', '-108.16000'), ('WORLAND', 5250, '44.00540', '-107.95800')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RIW'}, -'INZ018': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FORT WAYNE', 205727, '41.07370', '-85.13900'), ('GRABILL', 1113, '41.21070', '-84.96790'), ('HUNTERTOWN', 1771, '41.23130', '-85.16980'), ('MONROEVILLE', 1236, '40.97220', '-84.86760'), ('NEW HAVEN', 12406, '41.06900', '-85.02510'), ('WOODBURN', 1579, '41.12600', '-84.85280')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ019': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AMBIA', 197, '40.48880', '-87.51620'), ('BOSWELL', 827, '40.51900', '-87.38260'), ('EARL PARK', 485, '40.68580', '-87.42040'), ('FOWLER', 2415, '40.61720', '-87.31700'), ('OXFORD', 1271, '40.52140', '-87.24850')], 'partOfState': '', 'wfo': 'LOT'}, -'OHZ005': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('DESHLER', 1831, '41.20800', '-83.90570'), ('FLORIDA', 246, '41.32300', '-84.20060'), ('HAMLER', 650, '41.23020', '-84.03330'), ('HOLGATE', 1194, '41.24880', '-84.12860'), ('LIBERTY CENTER', 1109, '41.44340', '-84.00810'), ('MALINTA', 285, '41.31960', '-84.03710'), ('MCCLURE', 761, '41.37050', '-83.94200'), ('NAPOLEON', 9318, '41.39480', '-84.12660'), ('NEW BAVARIA', 78, '41.20360', '-84.16700')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'OHZ001': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALVORDTON', 305, '41.66530', '-84.43440'), ('BLAKESLEE', 130, '41.52390', '-84.73110'), ('BRYAN', 8333, '41.47020', '-84.54800'), ('EDGERTON', 2117, '41.44670', '-84.74980'), ('EDON', 898, '41.55660', '-84.76830'), ('MONTPELIER', 4320, '41.58160', '-84.60050'), ('PIONEER', 1460, '41.67800', '-84.55210'), ('STRYKER', 1406, '41.50320', '-84.41760'), ('WEST UNITY', 1790, '41.58600', '-84.43420')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'ARZ054': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FRIENDSHIP', 206, '34.22380', '-93.00300'), ('MALVERN', 9021, '34.37110', '-92.81560'), ('PERLA', 115, '34.36440', '-92.77860'), ('ROCKPORT', 792, '34.39190', '-92.81630')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'UTZ011': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ALTAMONT', 178, '40.35860', '-110.28630'), ('ALTONAH', None, '40.40000', '-110.30000'), ('ARCADIA', None, '40.23000', '-110.23000'), ('BRIDGELAND', None, '40.17000', '-110.23000'), ('CEDARVIEW', None, '40.37000', '-110.05000'), ('DUCHESNE', 1408, '40.17540', '-110.39250'), ('HANNA', None, '40.40000', '-110.77000'), ('MOUNTAIN HOME', None, '40.40000', '-110.38000'), ('MYTON', 539, '40.19350', '-110.06180'), ('NEOLA', 533, '40.44030', '-110.03670'), ('ROOSEVELT', 4299, '40.29550', '-110.00000'), ('TABIONA', 149, '40.35390', '-110.70860'), ('TALMAGE', None, '40.33000', '-110.43000'), ('UPALCO', None, '40.28000', '-110.22000'), ('UTAHN', None, '40.27000', '-110.43000')], 'partOfState': '', 'wfo': 'SLC'}, -'OHZ003': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BERKEY', 265, '41.71440', '-83.83350'), ('HARBOR VIEW', 99, '41.69260', '-83.44460'), ('HOLLAND', 1306, '41.62030', '-83.70950'), ('MAUMEE', 15237, '41.57420', '-83.65340'), ('OREGON', 19355, '41.66690', '-83.41940'), ('OTTAWA HILLS', 4564, '41.66750', '-83.64500'), ('SYLVANIA', 18670, '41.71460', '-83.70600'), ('TOLEDO', 313619, '41.66390', '-83.58160'), ('WATERVILLE', 4828, '41.49800', '-83.73330'), ('WHITEHOUSE', 2733, '41.51890', '-83.80260')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'WVZ006': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BARBOURSVILLE', 3183, '38.40480', '-82.29450'), ('CULLODEN', 2940, '38.41710', '-82.06780'), ('HUNTINGTON', 51475, '38.41300', '-82.43380'), ('MILTON', 2206, '38.43390', '-82.13770'), ('PEA RIDGE', 6363, '38.41400', '-82.32000')], 'partOfState': '', 'wfo': 'RLX'}, -'COZ079': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BEULAH', None, '38.08000', '-104.98000'), ('ROSITA', None, '38.10000', '-105.33000'), ('RYE', 202, '37.92180', '-104.93100'), ('SAN ISABEL', None, '37.98000', '-105.05000'), ('WOODLAND ACRES', None, '37.90000', '-104.93000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'OHZ002': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ARCHBOLD', 4290, '41.51550', '-84.30440'), ('DELTA', 2930, '41.57410', '-84.00250'), ('FAYETTE', 1340, '41.67270', '-84.32910'), ('LYONS', 559, '41.69960', '-84.07300'), ('METAMORA', 563, '41.71110', '-83.90800'), ('SWANTON', 3307, '41.58380', '-83.89170'), ('WAUSEON', 7091, '41.55350', '-84.14190')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'COZ073': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BLANCA PEAK', None, '37.58000', '-105.49000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COZ072': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('LA VETA PASS', None, '37.59000', '-105.18000'), ('PONCHA PASS', None, '38.43000', '-106.09000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COZ071': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ANTONITO', 873, '37.07650', '-106.01020'), ('BLANCA', 391, '37.43890', '-105.51190'), ('BOUNTIFUL', None, '37.25000', '-105.98300'), ('CAPULIN', None, '37.28000', '-106.12000'), ('CHAMA', None, '37.17000', '-105.38000'), ('CONEJOS', None, '37.08000', '-106.02000'), ('FORT GARLAND', 432, '37.43000', '-105.43000'), ('GARCIA', None, '37.00000', '-105.55000'), ('JAROSO', None, '37.00000', '-105.63000'), ('LA JARA', 877, '37.27440', '-105.95950'), ('MANASSA', 1042, '37.17290', '-105.93600'), ('MESITA', None, '37.08000', '-105.58000'), ('ORTIZ', None, '37.03000', '-106.03000'), ('ROMEO', 375, '37.17160', '-105.98590'), ('SAN ACACIO', None, '37.22000', '-105.57000'), ('SAN LUIS', 739, '37.20090', '-105.42360'), ('SAN PABLO', None, '37.15000', '-105.40000'), ('SANFORD', 817, '37.25740', '-105.90000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COZ070': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALAMOSA', 7960, '37.46880', '-105.87310'), ('HOOPER', 123, '37.73000', '-105.87760'), ('MONTE VISTA', 4529, '37.57860', '-106.14420'), ('MOSCA', None, '37.65000', '-105.88000'), ('SAN LUIS LAKE', None, '37.67000', '-105.72000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COZ077': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('COALDALE', None, '38.37000', '-105.75000'), ('COTOPAXI', None, '38.37000', '-105.68000'), ('HILLSIDE', None, '38.27000', '-105.60000'), ('HOWARD', None, '38.45000', '-105.84000'), ('SWISSVALE', None, '38.48000', '-105.91000'), ('TEXAS CREEK', None, '38.40000', '-105.58000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COZ075': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('SPANISH PEAKS', None, '37.38000', '-104.95000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COZ074': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CUCHARA', None, '37.38000', '-105.10000'), ('STONEWALL', None, '37.15000', '-105.02000'), ('WESTON', None, '37.13300', '-105.01700')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'OHZ007': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CLAY CENTER', 294, '41.56880', '-83.36100'), ('ELMORE', 1426, '41.47300', '-83.29190'), ('GENOA', 2230, '41.51840', '-83.36100'), ('MARBLEHEAD', 762, '41.53180', '-82.72150'), ('OAK HARBOR', 2841, '41.51160', '-83.14670'), ('PORT CLINTON', 6391, '41.50970', '-82.93840'), ('ROCKY RIDGE', 389, '41.53050', '-83.21350')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHZ006': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAIRDSTOWN', 130, '41.17100', '-83.60700'), ('BLOOMDALE', 724, '41.17090', '-83.55360'), ('BOWLING GREEN', 29636, '41.37640', '-83.64950'), ('BRADNER', 1171, '41.32360', '-83.43650'), ('CUSTAR', 208, '41.28420', '-83.84350'), ('CYGNET', 564, '41.24010', '-83.64380'), ('GRAND RAPIDS', 1002, '41.41040', '-83.86570'), ('HASKINS', 638, '41.46380', '-83.70410'), ('HOYTVILLE', 296, '41.19030', '-83.78370'), ('JERRY CITY', 453, '41.25310', '-83.60270'), ('LUCKEY', 998, '41.45230', '-83.48370'), ('MILLBURY', 1161, '41.56410', '-83.42570'), ('MILTON CENTER', 195, '41.30140', '-83.82950'), ('NORTH BALTIMORE', 3361, '41.18030', '-83.67560'), ('NORTHWOOD', 5471, '41.61030', '-83.48030'), ('PEMBERVILLE', 1365, '41.40980', '-83.45790'), ('PERRYSBURG', 16945, '41.55300', '-83.62380'), ('PORTAGE', 428, '41.32380', '-83.64790'), ('RISINGSUN', 620, '41.26880', '-83.42640'), ('ROSSFORD', 6406, '41.60370', '-83.56200'), ('TONTOGANY', 364, '41.42010', '-83.74010'), ('WALBRIDGE', 2546, '41.58560', '-83.48920'), ('WAYNE', 842, '41.30120', '-83.47240'), ('WEST MILLGROVE', 78, '41.24380', '-83.49210'), ('WESTON', 1659, '41.34580', '-83.79460')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'UTZ018': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('HITE MARINA', None, '37.90000', '-110.39000')], 'partOfState': '', 'wfo': 'SLC'}, -'UTZ019': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BLOOMINGTON', None, '37.05000', '-113.60000'), ('HURRICANE', 8250, '37.15990', '-113.31920'), ('IVINS', 4450, '37.17490', '-113.68450'), ('LA VERKIN', 3392, '37.20640', '-113.27250'), ('LEEDS', 547, '37.23700', '-113.35800'), ('ROCKVILLE', 247, '37.15360', '-113.05940'), ('SANTA CLARA', 4630, '37.13390', '-113.65130'), ('SPRINGDALE', 457, '37.18400', '-112.99910'), ('ST GEORGE', None, '37.08000', '-113.59000'), ('TOQUERVILLE', 910, '37.23670', '-113.28550'), ('VIRGIN', 394, '37.20080', '-113.19850'), ('WASHINGTON', 8186, '37.13470', '-113.49350'), ('ZION NP', None, '37.25330', '-112.95000')], 'partOfState': '', 'wfo': 'SLC'}, -'TNZ061': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CHAPEL HILL', 943, '35.62810', '-86.69620'), ('CORNERSVILLE', 962, '35.35870', '-86.84100'), ('LEWISBURG', 10413, '35.44700', '-86.78810')], 'partOfState': '', 'wfo': 'OHX'}, -'WYZ001': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CANYON', None, '44.73000', '-110.49000'), ('LAKE', None, '44.55000', '-110.40000'), ('MADISON', None, '44.64000', '-110.86000'), ('MAMMOTH', None, '44.98000', '-110.70000'), ('OLD FAITHFUL', None, '44.46000', '-110.83000'), ('TOWER JUNCTION', None, '44.92000', '-110.42000')], 'partOfState': 'NORTHWEST', 'wfo': 'RIW'}, -'LAZ058': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('EDGARD', 2637, '30.02510', '-90.55670'), ('GARYVILLE', 2775, '30.07730', '-90.62450'), ('LAPLACE', 27684, '30.07230', '-90.47280'), ('RESERVE', 9111, '30.07540', '-90.56060')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ059': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('LAROSE', 7306, '29.57080', '-90.37450'), ('LOCKPORT', 2624, '29.64040', '-90.53800'), ('MATHEWS', 2003, '29.68720', '-90.56140'), ('RACELAND', 10224, '29.71810', '-90.59680'), ('THIBODAUX', 14431, '29.79000', '-90.82090')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ056': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('LABADIEVILLE', 1811, '29.82360', '-90.95640'), ('NAPOLEONVILLE', 686, '29.93760', '-91.02670'), ('PAINCOURTVILLE', 884, '29.99140', '-91.05390'), ('PIERRE PART', 3239, '29.95760', '-91.20890')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ057': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CONVENT', None, '30.02060', '-90.82970'), ('GRAMERCY', 3066, '30.05940', '-90.69550'), ('LUTCHER', 3735, '30.06300', '-90.71170')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ054': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AMELIA', 2423, '29.66370', '-91.10680'), ('BALDWIN', 2497, '29.83340', '-91.55370'), ('BAYOU VISTA', 4351, '29.69230', '-91.26710'), ('BERWICK', 4418, '29.70030', '-91.23580'), ('BURNS POINT', None, '29.57330', '-91.52850'), ('CENTERVILLE', None, '29.76000', '-91.42800'), ('CHARENTON', 1944, '29.86850', '-91.53640'), ('CYPREMORT POINT', None, '29.77470', '-91.77440'), ('FRANKLIN', 8354, '29.80080', '-91.51450'), ('MORGAN CITY', 12703, '29.70170', '-91.19190'), ('PATTERSON', 5130, '29.69170', '-91.30870')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'LAZ055': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('STEPHENSVILLE', None, '29.77810', '-91.16580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'LAZ052': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ABBEVILLE', 11887, '29.97420', '-92.12360'), ('DELCAMBRE', 2168, '29.95010', '-91.98960'), ('ERATH', 2187, '29.95820', '-92.03750'), ('FORKED ISLAND', None, '29.83140', '-92.30000'), ('GUEYDAN', 1598, '30.02890', '-92.50850'), ('HENRY', None, '29.88310', '-92.07830'), ('INTRACOASTAL CITY', None, '29.78420', '-92.15610'), ('KAPLAN', 5177, '30.00340', '-92.28430'), ('MAURICE', 642, '30.10620', '-92.12390'), ('MEAUX', None, '30.02060', '-92.18250'), ('PECAN ISLAND', None, '29.64640', '-92.45310')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'LAZ053': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AVERY ISLAND', None, '29.90330', '-91.91030'), ('JEANERETTE', 5997, '29.91630', '-91.67530'), ('JEFFERSON ISLAND', None, '29.97690', '-91.97720'), ('LAKE FAUSSE POINTE', None, '30.01560', '-91.65140'), ('LOREAUVILLE', 938, '30.05910', '-91.73860'), ('LYDIA', 1079, '29.92450', '-91.78240'), ('NEW IBERIA', 32623, '30.00510', '-91.81720'), ('WEEKS ISLAND', None, '29.80750', '-91.80690')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'LAZ050': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DENHAM SPRINGS', 8757, '30.47970', '-90.95930'), ('KILLIAN', 1053, '30.35020', '-90.57830'), ('LIVINGSTON', 1342, '30.50220', '-90.74520'), ('SPRINGFIELD', 395, '30.42650', '-90.54260'), ('WALKER', 4801, '30.48440', '-90.86600'), ('WATSON', None, '30.57560', '-90.95310'), ('WHITEHALL', None, '30.28330', '-90.70030')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ051': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CAMERON', 1965, '29.79760', '-93.29960'), ('CONSTANCE BEACH', None, '29.77500', '-93.57940'), ('CREOLE', None, '29.79580', '-93.11110'), ('GRAND CHENIER', None, '29.76670', '-92.97500'), ('GRAND LAKE', None, '30.03060', '-93.27190'), ('HACKBERRY', 1699, '29.96830', '-93.43380'), ('HOLLY BEACH', None, '29.78500', '-93.45920'), ('JOHNSON BAYOU', None, '29.77110', '-93.65830'), ('KLONDIKE', None, '30.03060', '-92.63280'), ('RUTHERFORD BEACH', None, '29.77500', '-93.12500')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'AKZ181': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CHIGNIK LAKE', 145, '56.25610', '-158.77220'), ('COLD BAY', 88, '55.22500', '-162.73890'), ('FALSE PASS', 64, '54.84100', '-163.43680'), ('IVANOF BAY', 22, '55.96080', '-159.48950'), ('KING COVE', 792, '55.05860', '-162.29980'), ('NELSON LAGOON', 83, '55.92070', '-161.18900'), ('PERRYVILLE', 107, '55.95860', '-159.22610'), ('SAND POINT', 952, '55.31950', '-160.49120')], 'partOfState': '', 'wfo': 'AFC'}, -'MIZ058': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BELDING', 5877, '43.09650', '-85.23300'), ('CLARKSVILLE', 317, '42.84150', '-85.24200'), ('HUBBARDSTON', 394, '43.09420', '-84.84140'), ('IONIA', 10569, '42.98510', '-85.05800'), ('LAKE ODESSA', 2272, '42.78280', '-85.13740'), ('LYONS', 726, '42.98320', '-84.94540'), ('MUIR', 634, '42.99740', '-84.93550'), ('ORLEANS', None, '43.06870', '-85.13500'), ('PALO', None, '43.11250', '-84.98550'), ('PEWAMO', 560, '43.00130', '-84.84650'), ('PORTLAND', 3789, '42.87120', '-84.90110'), ('SARANAC', 1326, '42.92980', '-85.20940'), ('SEBEWA', None, '42.79950', '-84.95580'), ('SMYRNA', None, '43.05930', '-85.26280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'AKZ185': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AKUTAN', 713, '54.13630', '-165.78600'), ('NIKOLSKI', 39, '52.96130', '-168.82210')], 'partOfState': '', 'wfo': 'AFC'}, -'KSZ058': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURLINGTON', 2790, '38.19440', '-95.74250'), ('GRIDLEY', 372, '38.09780', '-95.88330'), ('JOHN REDMOND RESERVOIR', None, '38.25000', '-95.81000'), ('LE ROY', 593, '38.08390', '-95.63420'), ('LEBO', 961, '38.41670', '-95.85280'), ('WAVERLY', 589, '38.39390', '-95.60280')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'AKZ187': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ADAK STATION', None, '51.84290', '-176.64030'), ('ATKA', 92, '52.24220', '-174.20520')], 'partOfState': '', 'wfo': 'AFC'}, -'MIZ051': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AMBLE', None, '43.43130', '-85.38850'), ('BUTTERNUT', None, '43.18330', '-84.91550'), ('CARSON CITY', 1190, '43.17840', '-84.84690'), ('CEDAR LAKE', None, '43.40620', '-84.97500'), ('CORAL', None, '43.36280', '-85.40280'), ('CRYSTAL', None, '43.26300', '-84.91470'), ('EDMORE', 1244, '43.40760', '-85.03770'), ('ENTRICAN', None, '43.35030', '-85.15370'), ('FENWICK', None, '43.14920', '-85.08020'), ('GOWEN', None, '43.25170', '-85.30200'), ('GREENVILLE', 7935, '43.17800', '-85.25390'), ('HOWARD CITY', 1585, '43.39520', '-85.46620'), ('KINGS CORNER', None, '43.24920', '-85.07330'), ('LAKEVIEW', 1112, '43.44650', '-85.27550'), ('LANGSTON', None, '43.31380', '-85.24380'), ('MCBRIDE', 232, '43.35280', '-85.04310'), ('PIERSON', 185, '43.31900', '-85.49750'), ('SHERIDAN', 705, '43.21040', '-85.07260'), ('SIDNEY', None, '43.25000', '-85.13300'), ('SIX LAKES', None, '43.42500', '-85.15000'), ('STANTON', 1504, '43.29310', '-85.07930'), ('TRUFANT', None, '43.31380', '-85.35450'), ('TURK LAKE', None, '43.27080', '-85.25630'), ('VESTABURG', None, '43.39920', '-84.90550'), ('WESTVILLE', None, '43.35780', '-85.08370'), ('WYMAN', None, '43.45500', '-85.04300')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'KSZ054': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ADMIRE', 177, '38.64110', '-96.10280'), ('ALLEN', 211, '38.65610', '-96.16940'), ('AMERICUS', 938, '38.50690', '-96.26170'), ('BUSHONG', 55, '38.64310', '-96.25690'), ('EMPORIA', 26760, '38.40390', '-96.18140'), ('HARTFORD', 500, '38.30830', '-95.95560'), ('NEOSHO RAPIDS', 274, '38.36950', '-95.99170'), ('OLPE', 504, '38.26250', '-96.16670'), ('READING', 247, '38.52000', '-95.95000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'TNZ062': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('EAGLEVILLE', 464, '35.74010', '-86.65360'), ('LA VERGNE', 18687, '35.99930', '-86.57320'), ('MURFREESBORO', 68816, '35.85340', '-86.39460'), ('SMYRNA', 25569, '35.98260', '-86.51720'), ('WALTERHILL', 1523, '35.96280', '-86.37920')], 'partOfState': '', 'wfo': 'OHX'}, -'MIZ052': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALMA', 9275, '43.37940', '-84.65480'), ('ASHLEY', 526, '43.18770', '-84.47630'), ('BANNISTER', None, '43.13250', '-84.42170'), ('BRECKENRIDGE', 1339, '43.40770', '-84.47840'), ('ELM HALL', None, '43.36500', '-84.83530'), ('FOREST HILL', None, '43.43670', '-84.68550'), ('ITHACA', 3098, '43.29230', '-84.60480'), ('PERRINTON', 439, '43.18170', '-84.67860'), ('RIVERDALE', None, '43.38550', '-84.83550'), ('ST. LOUIS', 4494, '43.40930', '-84.61570'), ('SUMNER', None, '43.30700', '-84.81580'), ('WHEELER', None, '43.41280', '-84.43780')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'TNZ064': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALEXANDRIA', 814, '36.07670', '-86.03460'), ('DOWELLTOWN', 302, '36.01310', '-85.94310'), ('LIBERTY', 367, '36.00400', '-85.97780'), ('SMITHVILLE', 3994, '35.95710', '-85.82080')], 'partOfState': '', 'wfo': 'OHX'}, -'MIZ054': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AKRON', 461, '43.56700', '-83.51430'), ('BAY PARK', None, '43.65470', '-83.58920'), ('CARO', 4145, '43.48800', '-83.40210'), ('CASS CITY', 2643, '43.60250', '-83.17520'), ('DEFORD', None, '43.51240', '-83.18960'), ('EAST DAYTON', None, '43.41080', '-83.28530'), ('ELLINGTON', None, '43.55390', '-83.32140'), ('FAIRGROVE', 627, '43.52400', '-83.54170'), ('FOSTORIA', None, '43.25540', '-83.37250'), ('GAGETOWN', 389, '43.65680', '-83.24520'), ('KINGSTON', 450, '43.41360', '-83.18670'), ('MAYVILLE', 1055, '43.33600', '-83.35330'), ('MILLINGTON', 1137, '43.28030', '-83.52880'), ('QUANICASSEE', None, '43.58400', '-83.67350'), ('REESE', 1375, '43.45180', '-83.68860'), ('UNIONVILLE', 605, '43.65410', '-83.46690'), ('VASSAR', 2823, '43.37150', '-83.57870'), ('WATROUSVILLE', None, '43.45220', '-83.52310')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'KSZ053': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR POINT', 53, '38.25990', '-96.82170'), ('COTTONWOOD FALLS', 966, '38.36910', '-96.54260'), ('ELMDALE', 50, '38.37300', '-96.64570'), ('HYMER', None, '38.48000', '-96.68000'), ('MATFIELD', None, '38.17000', '-96.57000'), ('MATFIELD GREEN', 60, '38.15870', '-96.56340'), ('SAFFORDVILLE', None, '38.38330', '-96.40000'), ('STRONG CITY', 584, '38.39560', '-96.53650'), ('WONSEVU', None, '38.15000', '-96.77000')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'TNZ067': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADBURY', None, '35.86970', '-84.39030'), ('DEARMOND', None, '35.96640', '-84.48530'), ('EAGLE FURNACE', None, '35.77080', '-84.73670'), ('FAIRVIEW', 5800, '35.78970', '-84.57670'), ('HARRIMAN', 6744, '35.93340', '-84.56170'), ('KINGSTON', 5264, '35.87010', '-84.51010'), ('OAK RIDGE', 27387, '35.96270', '-84.29620'), ('OLIVER SPRINGS', 3303, '36.03640', '-84.33700'), ('PAINT ROCK', None, '35.73640', '-84.51670'), ('ROCKWOOD', 5774, '35.87410', '-84.67520')], 'partOfState': '', 'wfo': 'MRX'}, -'AKZ211': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('GOLOVIN', 144, '64.57900', '-162.99090'), ('NOME', 3505, '64.50920', '-165.41520'), ('WHITE MOUNTAIN', 203, '64.68360', '-163.41950')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ210': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BUCKLAND', 406, '65.98110', '-161.13170'), ('DEERING', 136, '66.07360', '-162.73170')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ213': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BREVIG MISSION', 276, '65.33510', '-166.48090'), ('GAMBELL', 649, '63.77660', '-171.70170'), ('SAVOONGA', 643, '63.67970', '-170.47090'), ('TELLER', 268, '65.25600', '-166.36300'), ('WALES', 152, '65.60930', '-168.07990')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ212': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ELIM', 313, '64.62170', '-162.26040'), ('SHAKTOOLIK', 230, '64.36400', '-161.20420'), ('ST. MICHAEL', 368, '63.47760', '-162.10910'), ('STEBBINS', 547, '63.47850', '-162.22740'), ('UNALAKLEET', 747, '63.88470', '-160.78980')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ215': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANVIK', 104, '62.65550', '-160.20830'), ('GRAYLING', 194, '62.89950', '-160.10740'), ('HOLY CROSS', 227, '62.18140', '-159.79940'), ('MARSHALL', 349, '61.87530', '-162.06010'), ('RUSSIAN MISSION', 296, '61.79450', '-161.35380'), ('SHAGELUK', 129, '62.66840', '-159.56510')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ214': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALAKANUK', 652, '62.67560', '-164.64360'), ('KOTLIK', 591, '63.03410', '-163.55470'), ('MOUNTAIN VILLAGE', 755, '62.08780', '-163.71670'), ('PILOT STATION', 550, '61.94140', '-162.87590'), ('PITKAS POINT', 125, '62.03130', '-163.27000'), ('SCAMMON BAY', 465, '61.84500', '-165.58190'), ('SHELDON POINT', None, '62.51690', '-164.89280'), ("ST. MARY'S", 500, '62.04610', '-163.24630')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ217': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AMBLER', 309, '67.07690', '-157.91820'), ('KOBUK', 109, '66.90460', '-156.89640'), ('SHUNGNAK', 256, '66.87590', '-157.15570')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ216': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('GALENA', 675, '64.74080', '-156.81990'), ('HUSLIA', 293, '65.68990', '-156.29200'), ('KALTAG', 230, '64.33860', '-158.68620'), ('KOYUKUK', 101, '64.91350', '-157.65070'), ('NULATO', 336, '64.70760', '-158.22360'), ('RUBY', 188, '64.71760', '-155.52070')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ219': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALLAKAKET', 97, '66.54520', '-152.73310'), ('BETTLES', 43, '66.88660', '-151.59440'), ('EVANSVILLE', 28, '66.87860', '-151.45970'), ('HUGHES', 78, '66.03710', '-154.26770')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ218': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ARCTIC VILLAGE', 152, '68.12520', '-145.52690')], 'partOfState': '', 'wfo': 'AFG'}, -'TNZ097': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COWAN', 1770, '35.16520', '-86.01610'), ('DECHERD', 2246, '35.20930', '-86.08790'), ('ESTILL SPRINGS', 2152, '35.26450', '-86.13100'), ('HUNTLAND', 916, '35.05580', '-86.26860'), ('SEWANEE', 2361, '35.20150', '-85.92050'), ('WINCHESTER', 7329, '35.18840', '-86.10850')], 'partOfState': '', 'wfo': 'HUN'}, -'SDZ045': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CAPA', None, '44.10970', '-100.97760'), ('CAPA', None, '44.10970', '-100.97760'), ('DRAPER', 92, '43.92590', '-100.53770'), ('DRAPER', 92, '43.92590', '-100.53770'), ('MURDO', 612, '43.88920', '-100.71360'), ('MURDO', 612, '43.88920', '-100.71360'), ('OKATON', 29, '43.88600', '-100.89190'), ('OKATON', 29, '43.88600', '-100.89190'), ('VAN METRE', None, '44.15910', '-100.79350'), ('VAN METRE', None, '44.15910', '-100.79350'), ('WESTOVER', None, '43.74820', '-100.66570'), ('WESTOVER', None, '43.74820', '-100.66570')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDZ044': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALLEN', 419, '43.28190', '-101.92650'), ('BLACKPIPE', None, '43.34990', '-101.26760'), ('HARRINGTON', None, '43.16670', '-101.25000'), ('LACREEK WILDLIFE REFUGE', None, '43.11570', '-101.52710'), ('MARTIN', 1106, '43.17230', '-101.73110'), ('PATRICIA', None, '43.28710', '-101.51380'), ('SWETT', None, '43.17170', '-101.95410'), ('TUTHILL', None, '43.15510', '-101.49460'), ('VETAL', None, '43.21670', '-101.36670')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDZ047': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ANTELOPE', 867, '43.29830', '-100.61610'), ('HIDDEN TIMBER', None, '43.23100', '-100.42600'), ('LAKEVIEW', None, '43.11290', '-100.74820'), ('LITTLEBURG', None, '43.04640', '-100.44980'), ('MISSION', 904, '43.30650', '-100.66050'), ('OKREEK', None, '43.36670', '-100.38330'), ('OLSONVILLE', None, '43.09040', '-100.59760'), ('PARMELEE', 650, '43.32300', '-101.02130'), ('ROSEBUD', 1557, '43.23240', '-100.85200'), ('SOLDIER CREEK', None, '43.32370', '-100.88760'), ('SPRING CREEK', 136, '43.11670', '-101.01670'), ('ST. FRANCIS', 675, '43.14230', '-100.90200')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'UNR'}, -'SDZ046': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BAD NATION', None, '43.65370', '-100.36960'), ('CEDAR BUTTE', None, '43.57950', '-101.02170'), ('CORN CREEK', None, '43.56340', '-101.20020'), ('MOSHER', None, '43.46670', '-100.30000'), ('NORRIS', None, '43.46670', '-101.20000'), ('WHITE RIVER', 598, '43.56730', '-100.74430'), ('WOOD', 66, '43.49680', '-100.47980')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'UNR'}, -'SDZ041': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARDMORE', None, '43.02450', '-103.65800'), ('OELRICHS', 145, '43.17850', '-103.23090'), ('ORAL', None, '43.40000', '-103.26670'), ('PROVO', None, '43.19130', '-103.83100'), ('RUMFORD', None, '43.12800', '-103.69800'), ('SMITHWICK', None, '43.30340', '-103.22290')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDZ040': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AURORA', 500, '44.28270', '-96.68660'), ('BROOKINGS', 18504, '44.30630', '-96.78620'), ('BRUCE', 272, '44.43810', '-96.88940'), ('BUSHNELL', 75, '44.32840', '-96.64320'), ('ELKTON', 677, '44.23450', '-96.47980'), ('SINAI', 133, '44.24510', '-97.04300'), ('VOLGA', 1435, '44.32330', '-96.92260'), ('WHITE', 530, '44.43340', '-96.64540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDZ043': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BELVIDERE', 57, '43.83420', '-101.27050'), ('CACTUS FLAT', None, '43.84160', '-101.89890'), ('CEDAR PASS', None, '43.75000', '-101.95000'), ('COTTONWOOD', 6, '43.96980', '-101.91140'), ('HISLE', None, '43.40760', '-101.74950'), ('INTERIOR', 77, '43.72630', '-101.98080'), ('KADOKA', 706, '43.83200', '-101.50880'), ('LONG VALLEY', None, '43.46200', '-101.49360'), ('POTATO CREEK', None, '43.53470', '-101.98590'), ('STAMFORD', None, '43.89340', '-101.09520'), ('WANBLEE', 641, '43.56850', '-101.65910'), ('WETA', None, '43.80000', '-101.70000')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDZ042': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BATESLAND', 88, '43.13350', '-102.10020'), ('DENBY', None, '43.06240', '-102.33210'), ('KYLE', 970, '43.42320', '-102.18810'), ('MANDERSON', None, '43.23950', '-102.47070'), ('OGLALA', 1229, '43.18330', '-102.73330'), ('PINE RIDGE', 3171, '43.02750', '-102.55480'), ('PORCUPINE', 407, '43.23330', '-102.33330'), ('RED SHIRT', None, '43.65480', '-102.89240'), ('ROCKYFORD', None, '43.50000', '-102.50000'), ('SHARPS CORNER', None, '43.38330', '-102.40000'), ('SLIM BUTTE', None, '43.05950', '-102.82210'), ('WOUNDED KNEE', 328, '43.14200', '-102.36350')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'ILZ013': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADDISON', 35914, '41.93060', '-88.00860'), ('BARTLETT', 36706, '41.97900', '-88.20540'), ('BENSENVILLE', 20703, '41.95730', '-87.94450'), ('BLOOMINGDALE', 21675, '41.94890', '-88.08650'), ('CAROL STREAM', 40438, '41.91680', '-88.13100'), ('CLARENDON HILLS', 7610, '41.79850', '-87.95760'), ('DARIEN', 22860, '41.74930', '-87.97630'), ('DOWNERS GROVE', 48724, '41.79720', '-88.01740'), ('DUPAGE AIRPORT', None, '41.91660', '-88.25000'), ('ELMHURST', 42762, '41.89800', '-87.94360'), ('GLEN ELLYN', 26999, '41.86650', '-88.06260'), ('GLENBARD SOUTH', None, '41.82970', '-88.06640'), ('GLENDALE HEIGHTS', 31765, '41.92020', '-88.07880'), ('HANOVER PARK', 38278, '41.98460', '-88.14480'), ('HINSDALE', 17349, '41.80060', '-87.92830'), ('ITASCA', 8302, '41.97670', '-88.01850'), ('LISLE', 21182, '41.79180', '-88.08780'), ('LOMBARD', 42322, '41.87490', '-88.01500'), ('MEDINAH', None, '41.97550', '-88.05570'), ('NAPERVILLE', 128358, '41.76260', '-88.15430'), ('OAK BROOK', 8702, '41.83690', '-87.95270'), ('OAKBROOK TERRACE', 2300, '41.85330', '-87.96870'), ('ROSELLE', 23115, '41.98040', '-88.08310'), ('VILLA PARK', 22075, '41.88550', '-87.97820'), ('WARRENVILLE', 13363, '41.82010', '-88.18620'), ('WAYNE', 2137, '41.95210', '-88.26130'), ('WEST CHICAGO', 23469, '41.88990', '-88.22280'), ('WESTMONT', 24554, '41.79700', '-87.97500'), ('WHEATON', 55416, '41.85600', '-88.10760'), ('WILLOWBROOK', 2130, '41.76190', '-87.94630'), ('WINFIELD', 8718, '41.87140', '-88.15360'), ('WOOD DALE', 13535, '41.96590', '-87.98110'), ('WOODRIDGE', 30934, '41.73910', '-88.04250'), ('YORK CENTER', None, '41.85500', '-87.99470')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'SDZ049': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CARTER', None, '43.38700', '-100.20670'), ('CLEARFIELD', None, '43.16670', '-100.03330'), ('COLOME', 340, '43.26000', '-99.71570'), ('HAMILL', 11, '43.59640', '-99.67870'), ('IDEAL', None, '43.54420', '-99.90070'), ('JORDAN JUNCTION', None, '43.38750', '-100.02780'), ('KEYAPAHA', None, '43.10000', '-100.13330'), ('MILLBORO', None, '43.06670', '-99.96670'), ('PAXTON', None, '43.08300', '-99.54110'), ('WEWELA', None, '43.01150', '-99.77760'), ('WINNER', 3137, '43.37390', '-99.85870'), ('WITTEN', None, '43.43840', '-100.08600')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'UNR'}, -'SDZ048': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CEDAR CREEK REC AREA', None, '44.14910', '-99.93290'), ('CEDAR CREEK REC AREA', None, '44.14910', '-99.93290'), ('COUNSELOR CREEK REC AREA', None, '44.03160', '-99.51070'), ('COUNSELOR CREEK REC AREA', None, '44.03160', '-99.51070'), ('IONA', None, '43.54270', '-99.42580'), ('IONA', None, '43.54270', '-99.42580'), ('KENNEBEC', 286, '43.90430', '-99.86240'), ('KENNEBEC', 286, '43.90430', '-99.86240'), ('LOWER BRULE', 599, '44.07400', '-99.58250'), ('LOWER BRULE', 599, '44.07400', '-99.58250'), ('LYMAN', None, '43.87630', '-99.72630'), ('LYMAN', None, '43.87630', '-99.72630'), ('OACOMA', 390, '43.79920', '-99.38440'), ('OACOMA', 390, '43.79920', '-99.38440'), ('PRESHO', 588, '43.90710', '-100.05770'), ('PRESHO', 588, '43.90710', '-100.05770'), ('RELIANCE', 206, '43.88040', '-99.60230'), ('RELIANCE', 206, '43.88040', '-99.60230'), ('TAILWATERS REC AREA', None, '44.03430', '-99.44070'), ('TAILWATERS REC AREA', None, '44.03430', '-99.44070'), ('VIVIAN', 131, '43.92770', '-100.29150'), ('VIVIAN', 131, '43.92770', '-100.29150')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'WYZ003': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CODY', 8835, '44.51950', '-109.05410'), ('MEETEETSE', 351, '44.15550', '-108.87130'), ('WAPITI', None, '44.47000', '-109.43000')], 'partOfState': 'NORTHWEST', 'wfo': 'RIW'}, -'WIZ025': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BOYCEVILLE', 1043, '45.04260', '-92.03990'), ('COLFAX', 1136, '44.99690', '-91.72590'), ('DOWNING', 257, '45.04850', '-92.12410'), ('ELK MOUND', 785, '44.87510', '-91.68770'), ('KNAPP', 421, '44.95410', '-92.07690'), ('MENOMONIE', 14937, '44.88790', '-91.91400'), ('RIDGELAND', 265, '45.20220', '-91.89740'), ('TAINTER LAKE', 2089, '44.98930', '-91.84760'), ('WHEELER', 317, '45.04370', '-91.90550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'AZZ038': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('SEDONA', 10192, '34.85930', '-111.79510')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGZ'}, -'AZZ039': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('JADITO', None, '35.77379', '-110.13624'), ('KAYENTA', 4922, '36.71800', '-110.25260'), ('NAVAJO NATIONAL MONUMENT', None, '36.76079', '-110.49675'), ('SALINA', None, '36.02546', '-109.87030'), ('SHONTO', 568, '36.58800', '-110.65420'), ('STEAMBOAT CANYON', None, '35.74938', '-109.85915'), ('TSEGI', None, '36.65082', '-110.42613')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'WYZ018': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('LANDER', 6867, '42.83000', '-108.72860')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'AZZ030': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BYLAS', None, '33.13060', '-110.11010'), ('CLIFTON', 2596, '33.02350', '-109.29050'), ('DUNCAN', 812, '32.73630', '-109.09180'), ('MORENCI', 1879, '33.05300', '-109.32950'), ('PIMA', 1989, '32.88810', '-109.83330'), ('SAFFORD', 9232, '32.83120', '-109.69810'), ('THATCHER', 4022, '32.83840', '-109.75900')], 'partOfState': 'SOUTHEAST', 'wfo': 'TWC'}, -'AZZ031': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AJO', 3705, '32.38720', '-112.86840')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TWC'}, -'AZZ032': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('PISINEMO', 237, '32.03780', '-112.32030'), ('SANTA ROSA', 438, '32.33480', '-112.04540'), ('SELLS', 2799, '31.91850', '-111.87640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TWC'}, -'AZZ033': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AVRA VALLEY', 5038, '32.43790', '-111.31470'), ('CATALINA', 7025, '32.47680', '-110.90020'), ('GREEN VALLEY', 17283, '31.84850', '-111.00980'), ('MARANA', 13556, '32.41440', '-111.17280'), ('ORO VALLEY', 29700, '32.42500', '-110.96470'), ('PICTURE ROCKS', 8139, '32.34580', '-111.24570'), ('THREE POINTS', 5273, '32.06750', '-111.27840'), ('TUCSON', 486699, '32.19580', '-110.89170')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TWC'}, -'AZZ034': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('NOGALES', 20878, '31.36370', '-110.93260'), ('PATAGONIA', 881, '31.54330', '-110.74890'), ('RIO RICO', None, '31.47980', '-110.97560')], 'partOfState': 'SOUTHEAST', 'wfo': 'TWC'}, -'AZZ035': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BENSON', 4711, '31.96220', '-110.30310'), ('BISBEE', 6090, '31.40460', '-109.91750'), ('DOUGLAS', 14312, '31.34270', '-109.52820'), ('HUACHUCA CITY', 1751, '31.63210', '-110.34080'), ('PIRTLEVILLE', 1550, '31.36170', '-109.56690'), ('SIERRA VISTA', 37775, '31.56510', '-110.32250'), ('ST. DAVID', 1744, '31.90010', '-110.22940'), ('TOMBSTONE', 1504, '31.71730', '-110.06220'), ('WILLCOX', 3733, '32.25070', '-109.83520')], 'partOfState': 'SOUTHEAST', 'wfo': 'TWC'}, -'AZZ036': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BULLHEAD CITY', 33769, '35.15000', '-114.56000'), ('MEADVIEW', None, '36.00000', '-114.07080'), ('MOHAVE VALLEY', 13694, '34.93320', '-114.58800'), ('OATMAN', None, '35.03330', '-114.38330'), ('SOUTH COVE', None, '36.12080', '-114.08330'), ('TEMPLE BAR', None, '36.03220', '-114.32000'), ('WILLOW BEACH', None, '35.87100', '-114.66670')], 'partOfState': 'NORTHWEST', 'wfo': 'VEF'}, -'AZZ037': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BAGDAD', 1578, '34.57790', '-113.17370'), ('BAGDAD', 1578, '34.57343', '-113.17705'), ('BIG PARK', 5245, '34.78020', '-111.76180'), ('BLACK CANYON CITY', 2697, '34.06250', '-112.10940'), ('BRIDGEPORT', None, '34.72060', '-111.99109'), ('BUMBLE BEE', None, '34.20514', '-112.15151'), ('CAMP VERDE', 9451, '34.56970', '-111.85620'), ('CHINO VALLEY', 7835, '34.76320', '-112.45470'), ('CLARKDALE', 3422, '34.75970', '-112.05650'), ('CONGRESS', 1717, '34.16129', '-112.85109'), ('CORDES', None, '34.30462', '-112.16628'), ('CORDES JUCNTION', None, '34.33220', '-112.12100'), ('CORNVILLE', 3335, '34.72180', '-111.90780'), ('COTTONWOOD', 9179, '34.73450', '-112.02440'), ('COTTONWOOD-VERDE VILLAGE', 10610, '34.71110', '-111.99440'), ('DEWEY-HUMBOLDT', 6295, '34.53260', '-112.25180'), ('JEROME', 329, '34.74670', '-112.10610'), ('KIRKLAND', None, '34.41928', '-112.71018'), ('LAKE MONTEZUMA', 3344, '34.63469', '-111.76997'), ('LAKE MONTEZUMA', 3344, '34.63930', '-111.79550'), ('MAYER', 1408, '34.39791', '-112.23695'), ('MCGUIREVILLE', None, '34.63717', '-111.81362'), ('MIDDLE VERDE', None, '34.62044', '-111.88849'), ('PAGE SPRINGS', None, '34.76921', '-111.89141'), ('PAULDEN', 3420, '34.88628', '-112.46819'), ('PEEPLES VALLEY', 374, '34.27056', '-112.72735'), ('RIMROCK', None, '34.65140', '-111.74464'), ('ROCK SPRINGS', None, '34.05143', '-112.14650'), ('SKULL VALLEY', None, '34.49983', '-112.68355'), ('VILLAGE AT OAK CREEK', None, '34.77960', '-111.76293'), ('WAGONER', None, '34.21671', '-112.53356'), ('WALNUT GROVE', None, '34.28516', '-112.54748'), ('WILHOIT', 664, '34.42548', '-112.59458'), ('YAVA', None, '34.47288', '-112.89179')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGZ'}, -'COZ095': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARLINGTON', None, '38.33000', '-103.33000'), ('EADS', 747, '38.48150', '-102.77940'), ('HASWELL', 84, '38.45280', '-103.16390'), ('NEE GRANDE RESERVOIR', None, '38.30000', '-102.75000'), ('SWEETWATER RESERVOIR', None, '38.35000', '-102.76000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'ARZ062': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CARTHAGE', 442, '34.07230', '-92.55550'), ('FORDYCE', 4799, '33.81770', '-92.41380'), ('SPARKMAN', 586, '33.91710', '-92.84860')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'COZ097': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CADDOA', None, '38.07000', '-102.93000'), ('FORT LYON', None, '38.10000', '-103.15000'), ('HASTY', None, '38.12000', '-102.97000'), ('JOHN MARTIN RESERVOIR', None, '38.01700', '-103.03300'), ('LAS ANIMAS', 2758, '38.06680', '-103.22540'), ('MCCLAVE', None, '38.13000', '-102.85000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COZ096': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BRANDON', None, '38.45000', '-102.43000'), ('CHIVINGTON', None, '38.44000', '-102.53000'), ('NEE NOSHE RESERVOIR', None, '38.34000', '-102.69000'), ('QUEENS RESERVOIR', None, '38.29000', '-102.64000'), ('SHERIDAN LAKE', 66, '38.46600', '-102.29350'), ('TOWNER', None, '38.47000', '-102.08000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COZ091': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BETHUNE', 225, '39.30350', '-102.42290'), ('BURLINGTON', 3678, '39.30540', '-102.27220'), ('FLAGLER', 612, '39.29400', '-103.06530'), ('SEIBERT', 180, '39.29810', '-102.86840'), ('STRATTON', 669, '39.30300', '-102.60380'), ('VONA', 95, '39.30270', '-102.74360')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GLD'}, -'COZ090': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ABARR', None, '39.85000', '-102.72000'), ('ALVIN', None, '40.30800', '-102.07800'), ('BEECHER ISLAND', None, '39.88000', '-102.13000'), ('BONNY RESERVOIR', None, '39.61300', '-102.16700'), ('CLARKVILLE', None, '40.38000', '-102.62000'), ('ECKLEY', 278, '40.11200', '-102.48820'), ('HALE', None, '39.62800', '-102.13000'), ('HEARTSTRONG', None, '39.94800', '-102.57900'), ('IDALIA', None, '39.70000', '-102.30000'), ('JOES', None, '39.65000', '-102.68000'), ('KIRK', None, '39.62000', '-102.60000'), ('LAIRD', None, '40.08000', '-102.10000'), ('VERNON', None, '39.93310', '-102.31930'), ('WAUNETA', None, '40.29300', '-102.25100'), ('WRAY', 2187, '40.07940', '-102.22600'), ('YUMA', 3285, '40.12390', '-102.72410')], 'partOfState': 'NORTHEAST', 'wfo': 'GLD'}, -'COZ093': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CHERAW', 211, '38.10780', '-103.51070'), ('FOWLER', 1206, '38.12830', '-104.02450'), ('HIGBEE', None, '37.77000', '-103.45000'), ('LA JUNTA', 7568, '37.98030', '-103.54440'), ('MANZANOLA', 525, '38.10880', '-103.86620'), ('ROCKY FORD', 4286, '38.04990', '-103.72190'), ('SWINK', 696, '38.01380', '-103.62730'), ('TIMPAS', None, '37.82000', '-103.77000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'ARZ064': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('GOULD', 1305, '33.98540', '-91.56270'), ('GRADY', 523, '34.07870', '-91.69830'), ('STAR CITY', 2471, '33.94100', '-91.84440')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'VAZ069': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BALLSVILLE', None, '37.49830', '-78.06780'), ('BELONA', None, '37.52210', '-78.01200'), ('CLAYVILLE', None, '37.45970', '-77.81720'), ('FINE CREEK MILLS', None, '37.59780', '-77.81930'), ('FLAT ROCK', None, '37.52200', '-77.82200'), ('GENITO', None, '37.46190', '-77.85940'), ('GILES MILL', None, '37.48190', '-77.96780'), ('GOODWINS STORE', None, '37.53750', '-77.88370'), ('HATCHERS', None, '37.58040', '-78.05120'), ('HOLLY HILLS', None, '37.50420', '-77.75840'), ('JEFFERSON', 27422, '37.61320', '-77.90500'), ('LAKE POWHATAN', None, '37.57620', '-77.99310'), ('MACON', None, '37.52170', '-77.96220'), ('MICHAUX', None, '37.64860', '-77.90190'), ('PILKINTON', None, '37.43000', '-77.84170'), ('POWHATAN', None, '37.54450', '-77.92020'), ('PROVOST', None, '37.60550', '-77.98280'), ('SUBLETTS', None, '37.58560', '-77.74940'), ('TAMWORTH', None, '37.64810', '-78.08110'), ('TOBACCOVILLE', None, '37.48250', '-78.09610'), ('TRENHOLM', None, '37.59500', '-78.06200'), ('WORSHAMS', None, '37.53530', '-77.89420')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'VAZ068': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMELIA COURTHOUSE', None, '37.34130', '-77.98010'), ('AMMON', None, '37.21120', '-77.76760'), ('CHULA', None, '37.38830', '-77.90310'), ('DEATONVILLE', None, '37.32800', '-78.16750'), ('DENARO', None, '37.24490', '-77.98410'), ('EARLS', None, '37.22860', '-77.89250'), ('JETERSVILLE', None, '37.29380', '-78.09630'), ('LODORE', None, '37.43920', '-78.02230'), ('MANNBORO', None, '37.25160', '-77.82350'), ('MAPLEWOOD', None, '37.31610', '-78.04890'), ('MORVEN', None, '37.41830', '-78.07580'), ('PAINEVILLE', None, '37.38960', '-78.12100'), ('RODOPHIL', None, '37.36830', '-78.15680'), ('SCOTTS FORK', None, '37.31790', '-77.89060'), ('TRUXILLO', None, '37.37060', '-78.04190'), ('WINTERHAM', None, '37.36630', '-77.93330')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'ARZ069': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('JEROME', 46, '33.39880', '-91.47080'), ('MONTICELLO', 9146, '33.62480', '-91.79380'), ('REED', 275, '33.70180', '-91.44370'), ('TILLAR', 240, '33.71020', '-91.45170'), ('WILMAR', 571, '33.62590', '-91.92900'), ('WINCHESTER', 191, '33.77480', '-91.47500')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'ARZ068': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BANKS', 120, '33.57590', '-92.26820'), ('HERMITAGE', 769, '33.44720', '-92.17020'), ('WARREN', 6442, '33.61010', '-92.06970')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'COZ099': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BARTLETT', None, '37.43000', '-102.13000'), ('CAMPO', 150, '37.10470', '-102.57790'), ('PRITCHETT', 137, '37.37020', '-102.85860'), ('SPRINGFIELD', 1562, '37.40660', '-102.61680'), ('STONINGTON', None, '37.30000', '-102.18000'), ('TWO BUTTES', 67, '37.56050', '-102.39590'), ('VILAS', 110, '37.37410', '-102.44650'), ('WALSH', 723, '37.38550', '-102.27960')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'COZ098': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BRISTOL', None, '38.12000', '-102.32000'), ('GRANADA', 640, '38.06370', '-102.31060'), ('HARTMAN', 111, '38.12090', '-102.21810'), ('HOLLY', 1048, '38.05560', '-102.12400'), ('LAMAR', 8869, '38.08030', '-102.61750'), ('WILEY', 483, '38.15610', '-102.71870')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'ARZ051': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('DIERKS', 1230, '34.12060', '-94.01880'), ('MINERAL SPRINGS', 1264, '33.87760', '-93.92000'), ('NASHVILLE', 4878, '33.94090', '-93.85160'), ('TOLLETTE', 324, '33.81800', '-93.89610')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'ILZ098': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BATCHTOWN', 218, '39.03290', '-90.65400'), ('BEECHVILLE', None, '38.97150', '-90.64760'), ('BELLEVIEW', None, '39.35090', '-90.78120'), ('BRUSSELS', 141, '38.95100', '-90.58880'), ('DEER PLAIN', None, '38.92980', '-90.53280'), ('GOLDEN EAGLE', None, '38.89230', '-90.57940'), ('HAMBURG', 126, '39.23280', '-90.71560'), ('HARDIN', 959, '39.15740', '-90.62310'), ('KAMPSVILLE', 302, '39.30970', '-90.62520'), ('MEPPEN', None, '38.99570', '-90.60680'), ('MICHAEL', None, '39.23520', '-90.62210'), ('MOZIER', None, '39.29250', '-90.75150')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'ILZ099': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('DELHI', None, '39.04530', '-90.25500'), ('ELSAH', 635, '38.95370', '-90.35460'), ('FIDELITY', 105, '39.15460', '-90.16350'), ('FIELDON', 271, '39.10810', '-90.49990'), ('GRAFTON', 609, '38.97250', '-90.42700'), ('JERSEYVILLE', 7984, '39.11950', '-90.32800'), ('KEMPER', None, '39.21700', '-90.16700'), ('MCCLUSKY', None, '39.04340', '-90.32040'), ('NUTWOOD', None, '39.08480', '-90.55590'), ('OTTERVILLE', 120, '39.05100', '-90.39750')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'ILZ094': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BROOKPORT', 1054, '37.12500', '-88.62720'), ('JOPPA', 409, '37.20580', '-88.84430'), ('METROPOLIS', 6482, '37.15220', '-88.71200')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ095': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADAMS', None, '39.86540', '-91.19830'), ('BEVERLY', None, '39.79340', '-90.99100'), ('BURTON', None, '39.90460', '-91.25120'), ('CAMP POINT', 1244, '40.03800', '-91.06660'), ('CHATTON', None, '40.15090', '-91.03290'), ('CLAYTON', 904, '40.03030', '-90.95800'), ('COATSBURG', 226, '40.03230', '-91.15940'), ('COLUMBUS', 112, '39.98810', '-91.14650'), ('FALL CREEK', None, '39.77900', '-91.30220'), ('FOWLER', None, '40.00780', '-91.25840'), ('GOLDEN', 629, '40.10970', '-91.01840'), ('KELLERVILLE', None, '39.93120', '-90.93450'), ('KINGSTON', 980, '39.81670', '-91.02880'), ('LA PRAIRIE', 60, '40.14710', '-91.00270'), ('LIBERTY', 519, '39.88080', '-91.10800'), ('LIMA', 159, '40.17670', '-91.37500'), ('LORAINE', 363, '40.15320', '-91.22220'), ('MARBLEHEAD', None, '39.83980', '-91.36850'), ('MENDON', 883, '40.08910', '-91.28430'), ('MEYER', None, '40.14810', '-91.49650'), ('PALOMA', None, '40.02290', '-91.19520'), ('PAYSON', 1066, '39.81680', '-91.24410'), ('PLAINVILLE', 248, '39.78400', '-91.18160'), ('QUINCY', 40366, '39.93350', '-91.38860'), ('RICHFIELD', None, '39.81540', '-91.11650'), ('URSA', 595, '40.07460', '-91.37060'), ('WOODVILLE', None, '40.18840', '-91.18290')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LSX'}, -'ILZ096': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BUCKHORN', None, '39.93300', '-90.83300'), ('COOPERTOWN', None, '39.96400', '-90.60650'), ('LA GRANGE', 15608, '39.94180', '-90.53810'), ('MOUND STATION', 127, '40.00670', '-90.87310'), ('MOUNT STERLING', 2070, '39.98470', '-90.76370'), ('RIPLEY', 103, '40.02500', '-90.63770'), ('VERSAILLES', 567, '39.88380', '-90.65890')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LSX'}, -'ILZ097': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATLAS', None, '39.51700', '-90.96700'), ('BARRY', 1368, '39.69560', '-91.03970'), ('BAYLIS', 265, '39.72900', '-90.90920'), ('BEDFORD', None, '39.52920', '-90.59600'), ('BEECREEK', None, '39.40030', '-90.63590'), ('CHAMBERSBURG', None, '39.81730', '-90.65730'), ('DETROIT', 93, '39.61980', '-90.67630'), ('EL DARA', 89, '39.62210', '-90.99110'), ('FISHHOOK', None, '39.80570', '-90.88540'), ('FLORENCE', 71, '39.62820', '-90.61020'), ('GRIGGSVILLE', 1258, '39.70790', '-90.72700'), ('HULL', 474, '39.70910', '-91.20500'), ('INDEPENDENCE', None, '39.53150', '-90.79150'), ('KINDERHOOK', 249, '39.70490', '-91.15470'), ('MARTINSBURG', None, '39.51590', '-90.84260'), ('MILTON', 274, '39.56420', '-90.64980'), ('MONTEZUMA', None, '39.55120', '-90.58320'), ('NEBO', 408, '39.44140', '-90.79030'), ('NEW CANTON', 417, '39.63820', '-91.09780'), ('NEW HARTFORD', None, '39.57570', '-90.91010'), ('NEW SALEM', 136, '39.70800', '-90.84740'), ('PEARL', 187, '39.45860', '-90.62430'), ('PERRY', 437, '39.78240', '-90.74720'), ('PIKE', None, '39.45970', '-91.03500'), ('PITTSFIELD', 4211, '39.61070', '-90.80930'), ('PLEASANT HILL', 1047, '39.44460', '-90.87290'), ('ROCKPORT', None, '39.53900', '-91.00870'), ('SEEHORN', None, '39.75530', '-91.26120'), ('SUMMER HILL', None, '39.54640', '-90.91930'), ('TIME', 29, '39.56110', '-90.72280'), ('VALLEY CITY', 14, '39.70890', '-90.64910')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LSX'}, -'ILZ090': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('EDDYVILLE', 153, '37.50030', '-88.58520'), ('HAMLETSBURG', None, '37.14080', '-88.44600')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ091': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAVE-IN-ROCK', 346, '37.47020', '-88.16550'), ('ELIZABETHTOWN', 348, '37.45080', '-88.30430'), ('GROSS', None, '37.53300', '-88.29050'), ('KARBERS RIDGE', None, '37.57970', '-88.33330'), ('ROSICLARE', 1213, '37.42240', '-88.35070')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ092': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAIRO', 3632, '36.99760', '-89.17760'), ('EAST CAPE GIRARDEAU', 437, '37.29020', '-89.48300'), ('TAMMS', 724, '37.23920', '-89.26760'), ('THEBES', 478, '37.21080', '-89.45320')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ093': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('KARNAK', 619, '37.29400', '-88.97600'), ('MOUND CITY', 692, '37.08560', '-89.16300'), ('MOUNDS', 1117, '37.11480', '-89.20120'), ('NEW GRAND CHAIN', 233, '37.25320', '-89.01710'), ('OLMSTED', 299, '37.18150', '-89.08380'), ('PULASKI', 274, '37.21600', '-89.20700'), ('ULLIN', 779, '37.28160', '-89.18380')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'MOZ044': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CENTERVIEW', 249, '38.74560', '-93.84560'), ('CHILHOWEE', 329, '38.58890', '-93.85630'), ('FAYETTEVILLE', None, '38.88330', '-93.76670'), ('HOLDEN', 2510, '38.71340', '-93.98910'), ('KINGSVILLE', 257, '38.74290', '-94.06870'), ('KNOB NOSTER', 2462, '38.76800', '-93.56580'), ('LA TOUR', 65, '38.63400', '-94.10240'), ('LEETON', 619, '38.58360', '-93.69510'), ('PITTSVILLE', None, '38.83330', '-94.00000'), ('WARRENSBURG', 16340, '38.75980', '-93.72860'), ('WHITEMAN AFB', 3814, '38.73270', '-93.55460')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOZ045': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DMO', None, '38.70000', '-93.16670'), ('GREEN RIDGE', 445, '38.62020', '-93.40980'), ('HOUSTONIA', 275, '38.89940', '-93.35980'), ('HUGHESVILLE', 174, '38.83790', '-93.29590'), ('LA MONTE', 1064, '38.77110', '-93.42250'), ('SEDALIA', 20339, '38.70300', '-93.23330'), ('SMITHTON', 510, '38.68160', '-93.09220')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'MOZ046': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLACKWATER', 199, '38.97940', '-92.99070'), ('BOONVILLE', 8202, '38.96420', '-92.74780'), ('BUNCETON', 348, '38.78970', '-92.79850'), ('OTTERVILLE', 476, '38.70230', '-93.00280'), ('PILOT GROVE', 723, '38.87380', '-92.91200'), ('PRAIRIE HOME', 220, '38.81490', '-92.58960'), ('WOOLDRIDGE', 47, '38.90650', '-92.52180')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'MOZ047': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CALIFORNIA', 4005, '38.63160', '-92.56680'), ('CLARKSBURG', 375, '38.66140', '-92.66610'), ('ENON', None, '38.45700', '-92.48950'), ('HIGH POINT', None, '38.48300', '-92.58300'), ('JAMESTOWN', 382, '38.76570', '-92.47780'), ('KLIEVER', None, '38.69730', '-92.50340'), ('LATHAM', None, '38.56090', '-92.68230'), ('LUPUS', 29, '38.84570', '-92.45420'), ('MCGIRK', None, '38.61120', '-92.47620'), ('SANDY HOOK', None, '38.74830', '-92.40840'), ('TIPTON', 3261, '38.65310', '-92.78000')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'MOZ040': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARMSTRONG', 287, '39.26930', '-92.70500'), ('FAYETTE', 2793, '39.14750', '-92.68560'), ('FRANKLIN', 112, '39.01130', '-92.75470'), ('GLASGOW', 1263, '39.22700', '-92.83790'), ('NEW FRANKLIN', 1145, '39.01860', '-92.74060')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'AKZ161': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALEKNAGIK', 221, '59.28550', '-158.62900'), ('CLARKS POINT', None, '58.84570', '-158.51570'), ('DILLINGHAM', 2466, '59.06220', '-158.52800'), ('EKWOK', 130, '59.36020', '-157.47940'), ('IGIUGIG', 53, '59.33510', '-155.90720'), ('ILIAMNA', 102, '59.77510', '-154.86760'), ('KING SALMON', 442, '58.74290', '-156.54460'), ('KOKHANOK', 174, '59.40750', '-154.74420'), ('KOLIGANEK', 182, '59.73610', '-157.26630'), ('LEVELOCK', 122, '59.10860', '-156.88500'), ('MANOKOTAK', 399, '59.00960', '-158.98970'), ('NAKNEK', 678, '58.76070', '-156.90180'), ('NEW STUYAHOK', 471, '59.47320', '-157.26200'), ('NEWHALEN', 160, '59.73440', '-154.88010'), ('NONDALTON', 221, '59.99040', '-154.85310'), ('PEDRO BAY', 50, '59.79050', '-154.13660'), ('PILOT POINT', 100, '57.61930', '-157.45900'), ('PLATINUM', 41, '58.97390', '-161.72520'), ('PORT ALSWORTH', 104, '60.20950', '-154.30400'), ('PORT HEIDEN', 119, '56.95510', '-158.58780'), ('SOUTH NAKNEK', 137, '58.68520', '-156.98050'), ('TWIN HILLS', 69, '59.07950', '-160.21020')], 'partOfState': '', 'wfo': 'AFC'}, -'MOZ042': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BENTON CITY', 122, '39.13480', '-91.76430'), ('FARBER', 411, '39.27410', '-91.57640'), ('LADDONIA', 620, '39.24150', '-91.64290'), ('MARTINSBURG', 326, '39.10110', '-91.64720'), ('MEXICO', 11320, '39.16650', '-91.87060'), ('RUSH HILL', 130, '39.20990', '-91.72510'), ('THOMPSON', None, '39.18860', '-91.98280'), ('VANDALIA', 2529, '39.30930', '-91.49030'), ('VANDIVER', 83, '39.16130', '-91.84880')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'MOZ043': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARCHIE', 890, '38.48290', '-94.34900'), ('BALDWIN PARK', 115, '38.79530', '-94.24540'), ('BELTON', 21730, '38.81950', '-94.53120'), ('CLEVELAND', 592, '38.67780', '-94.59700'), ('DREXEL', 1090, '38.48280', '-94.60740'), ('EAST LYNNE', 300, '38.66820', '-94.22940'), ('FREEMAN', 521, '38.61860', '-94.50580'), ('GARDEN CITY', 1500, '38.56080', '-94.18840'), ('GUNN CITY', 85, '38.66620', '-94.16390'), ('HARRISONVILLE', 8946, '38.65540', '-94.34920'), ('LAKE ANNETTE', 163, '38.65530', '-94.50780'), ('LAKE WINNEBAGO', 902, '38.82140', '-94.35720'), ('PECULIAR', 2604, '38.72310', '-94.45790'), ('PLEASANT HILL', 5582, '38.79660', '-94.26570'), ('RAYMORE', 11146, '38.81120', '-94.45730'), ('STRASBURG', 136, '38.75920', '-94.16470'), ('WEST LINE', 95, '38.63260', '-94.58510')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'ARZ055': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('LEOLA', 515, '34.16930', '-92.59070'), ('POYEN', 272, '34.32240', '-92.64230'), ('PRATTSVILLE', 282, '34.31810', '-92.54300'), ('SHERIDAN', 3872, '34.30930', '-92.40550'), ('TULL', 358, '34.44230', '-92.57350')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'MOZ048': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRAZITO', None, '38.45000', '-92.28300'), ('CENTERTOWN', 257, '38.61900', '-92.40930'), ('ELSTON', None, '38.61290', '-92.32370'), ('EUGENE', None, '38.35370', '-92.40340'), ('HICKORY HILL', None, '38.40060', '-92.35940'), ('JEFFERSON CITY', 39636, '38.57190', '-92.19050'), ('LOHMAN', 168, '38.54250', '-92.36350'), ('MARION', None, '38.69090', '-92.36620'), ('OSAGE BEND', None, '38.40610', '-92.14310'), ('OSAGE CITY', None, '38.55230', '-92.03230'), ('RUSSELLVILLE', 758, '38.51270', '-92.43790'), ('SCHUBERT', None, '38.51760', '-92.04940'), ('ST. MARTINS', 1023, '38.59570', '-92.33330'), ('ST. THOMAS', 287, '38.36880', '-92.21560'), ('TAOS', 870, '38.49780', '-92.08080'), ('WARDSVILLE', 976, '38.48800', '-92.17340')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'MOZ049': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARGYLE', 164, '38.29500', '-92.02550'), ('BONNOTS MILL', None, '38.57250', '-91.96100'), ('CHAMOIS', 456, '38.67720', '-91.77000'), ('FRANKENSTEIN', None, '38.57420', '-91.88220'), ('FREEBURG', 423, '38.31550', '-91.92250'), ('KOELTZTOWN', None, '38.32480', '-92.04210'), ('LINN', 1354, '38.48080', '-91.84440'), ('LOOSE CREEK', None, '38.50810', '-91.95730'), ('META', 249, '38.31240', '-92.16660'), ('RICH FOUNTAIN', None, '38.39580', '-91.87980'), ('WESTPHALIA', 320, '38.44120', '-92.00050')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'WIZ010': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CLEARWATER LAKE', None, '45.84000', '-89.18000'), ('ENTERPRISE', None, '45.50000', '-89.25000'), ('GAGEN', None, '45.66000', '-89.09000'), ('GOODNOW', None, '45.70000', '-89.63000'), ('HARSHAW', None, '45.66000', '-89.65000'), ('HAZELHURST', None, '45.79000', '-89.71000'), ('LAKE TOMAHAWK', None, '45.81000', '-89.59000'), ('LENNOX', None, '45.51000', '-89.06000'), ('MC NAUGHTON', None, '45.73000', '-89.55000'), ('MINOCQUA', None, '45.86000', '-89.69000'), ('MONICO', None, '45.58000', '-89.11000'), ('PELICAN LAKE', None, '45.50000', '-89.11000'), ('RHINELANDER', 7735, '45.63000', '-89.41000'), ('STARKS', None, '45.66000', '-89.19000'), ('SUGAR CAMP', None, '45.78000', '-89.30000'), ('THREE LAKES', None, '45.79000', '-89.16000'), ('WILLOW RESERVOIR', None, '45.71000', '-89.85000'), ('WOODBORO', None, '45.59000', '-89.55000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'WVZ019': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('AUBURN', 103, '39.09530', '-80.85670'), ('CAIRO', 263, '39.20810', '-81.15570'), ('ELLENBORO', 373, '39.26550', '-81.05500'), ('HARRISVILLE', 1842, '39.21070', '-81.04970'), ('NORTH BEND STATE PARK', None, '39.22310', '-81.11070'), ('PENNSBORO', 1199, '39.28160', '-80.97500'), ('PULLMAN', 169, '39.18740', '-80.94960')], 'partOfState': '', 'wfo': 'RLX'}, -'WIZ017': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CHELSEA', None, '45.28030', '-90.31915'), ('DONALD', None, '45.24832', '-90.89940'), ('GILMAN', 474, '45.16690', '-90.80690'), ('GOODRICH', None, '45.16151', '-90.06330'), ('HANNIBAL', None, '45.24832', '-90.78290'), ('JUMP RIVER', None, '45.35569', '-90.80117'), ('LUBLIN', 110, '45.07520', '-90.72400'), ('MEDFORD', 4350, '45.13860', '-90.34790'), ('POLLEY', None, '45.13638', '-90.80117'), ('PREKINSTOWN', None, '45.20035', '-90.63441'), ('RIB LAKE', 878, '45.31890', '-90.20360'), ('STETSONVILLE', 563, '45.07640', '-90.31250'), ('WESTBORO', None, '45.34884', '-90.30088')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ARX'}, -'WIZ016': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRUCE', 787, '45.45860', '-91.27280'), ('CONRATH', 98, '45.38470', '-91.03580'), ('GLEN FLORA', 93, '45.49680', '-90.89310'), ('HAWKINS', 317, '45.51180', '-90.71330'), ('INGRAM', 76, '45.50550', '-90.81320'), ('LADYSMITH', 3932, '45.46280', '-91.09590'), ('SHELDON', 256, '45.31110', '-90.95740'), ('TONY', 105, '45.48110', '-90.99580'), ('WEYERHAEUSER', 353, '45.42380', '-91.41440')], 'partOfState': 'NORTHWEST', 'wfo': 'MPX'}, -'MPZ003': {'fullStateName': 'NORTHERN MARIANA ISLANDS', 'state': 'MP', 'cities': [('SAN JOSE (TINIAN)', None, '14.96870', '145.61970')], 'partOfState': '', 'wfo': 'GUM'}, -'MPZ002': {'fullStateName': 'NORTHERN MARIANA ISLANDS', 'state': 'MP', 'cities': [('SINAPALU', None, '14.16670', '145.23330')], 'partOfState': '', 'wfo': 'GUM'}, -'WIZ015': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMENA', 720, '45.41450', '-92.03650'), ('BARRON', 3248, '45.40060', '-91.84650'), ('CAMERON', 1546, '45.40330', '-91.74340'), ('CHETEK', 2180, '45.31600', '-91.65310'), ('CUMBERLAND', 2280, '45.53590', '-92.02320'), ('DALLAS', 356, '45.25810', '-91.81470'), ('HAUGEN', 287, '45.60780', '-91.77840'), ('PRAIRIE FARM', 508, '45.23760', '-91.98080'), ('RICE LAKE', 8320, '45.49690', '-91.73920'), ('TURTLE LAKE', 1065, '45.39240', '-92.14130')], 'partOfState': 'NORTHWEST', 'wfo': 'MPX'}, -'MPZ004': {'fullStateName': 'NORTHERN MARIANA ISLANDS', 'state': 'MP', 'cities': [('CAPITAL HILL', None, '15.20010', '145.75180'), ('CHALAN KANOA', None, '15.14620', '145.70410'), ('DANDAN', None, '15.13450', '145.73710'), ('GARAPAN', None, '15.20610', '145.71790'), ('GUALO RAI', None, '15.19090', '145.72260'), ('KAGMAN', None, '15.16670', '145.77860'), ('KOBLERVILLE', None, '15.12050', '145.70640'), ('NAVY HILL', None, '15.20940', '145.73370'), ('SAN ANTONIO', None, '15.13330', '145.69910'), ('SAN JOSE (SAIPAN)', None, '15.16690', '145.70860'), ('SAN ROQUE', None, '15.24740', '145.77200'), ('SAN VICENTE', None, '15.15160', '145.73780'), ('SUSUPE', None, '15.15640', '145.70570'), ('TANAPAG', None, '15.23890', '145.75380')], 'partOfState': '', 'wfo': 'GUM'}, -'WIZ014': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AMERY', 2845, '45.30460', '-92.36310'), ('BALSAM LAKE', 950, '45.45810', '-92.45470'), ('CENTURIA', 865, '45.44960', '-92.55580'), ('CLAYTON', 507, '45.32370', '-92.17000'), ('CLEAR LAKE', 1051, '45.25010', '-92.26860'), ('DRESSER', 732, '45.36150', '-92.63380'), ('FREDERIC', 1262, '45.65640', '-92.46400'), ('LUCK', 1210, '45.57520', '-92.46730'), ('MILLTOWN', 888, '45.52690', '-92.49970'), ('OSCEOLA', 2421, '45.31920', '-92.69590'), ('ST CROIX FALLS', None, '45.40940', '-92.63380')], 'partOfState': 'NORTHWEST', 'wfo': 'MPX'}, -'PAZ016': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BIG RUN', 686, '40.96990', '-78.87810'), ('BROCKWAY', 2182, '41.24710', '-78.79330'), ('BROOKVILLE', 4230, '41.16160', '-79.08280'), ('CORSICA', 354, '41.18170', '-79.20290'), ('FALLS CREEK', 983, '41.14210', '-78.80720'), ('PUNXSUTAWNEY', 6271, '40.94410', '-78.97760'), ('REYNOLDSVILLE', 2710, '41.09430', '-78.88800'), ('SIGEL', None, '41.28000', '-79.12000'), ('SUMMERVILLE', 525, '41.11640', '-79.18860'), ('SYKESVILLE', 1246, '41.04930', '-78.81890'), ('TIMBLIN', 151, '40.96610', '-79.19930'), ('WORTHVILLE', 85, '41.02440', '-79.14110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'PAZ017': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRISBIN', 413, '40.83920', '-78.35220'), ('BURNSIDE', 283, '40.81280', '-78.78980'), ('CLEARFIELD', 6631, '41.02140', '-78.43920'), ('COALPORT', 490, '40.74850', '-78.53210'), ('CURWENSVILLE', 2650, '40.97270', '-78.51800'), ('DUBOIS', 8123, '41.12230', '-78.75580'), ('GLEN HOPE', 149, '40.79900', '-78.49810'), ('GRAMPIAN', 441, '40.96400', '-78.61100'), ('HOUTZDALE', 941, '40.82500', '-78.35100'), ('HYDE', 1491, '41.00740', '-78.46830'), ('IRVONA', 680, '40.77350', '-78.55280'), ('JEFFRIES', None, '40.91000', '-78.39000'), ('KARTHAUS', None, '41.11000', '-78.12000'), ('LECONTES MILLS', None, '41.07000', '-78.26000'), ('LUMBER CITY', 86, '40.92890', '-78.57210'), ('MAHAFFEY', 402, '40.87520', '-78.72810'), ('NEW WASHINGTON', 89, '40.82270', '-78.70140'), ('OSCEOLA MILLS', 1249, '40.85250', '-78.26990'), ('PARKER DAM SP', None, '41.18000', '-78.49000'), ('PENFIELD', None, '41.21000', '-78.60000'), ('RAMEY', 525, '40.80070', '-78.39880'), ('ROCKTON', None, '41.08000', '-78.66000'), ('S.B. ELLIOT SP', None, '41.12000', '-78.53000'), ('TREASURE LAKE', 4507, '41.17340', '-78.71610'), ('TROUTVILLE', 224, '41.02490', '-78.78550'), ('WALLACETON', 350, '40.96550', '-78.29240'), ('WESTOVER', 458, '40.74960', '-78.68180'), ('WOODLAND', None, '40.99000', '-78.38000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ014': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRUIN', 534, '41.05510', '-79.72730'), ('BUTLER', 15121, '40.86190', '-79.89670'), ('CALLERY', 444, '40.73950', '-80.03760'), ('CHERRY VALLEY', 72, '41.16190', '-79.79910'), ('CHICORA', 1021, '40.94890', '-79.74190'), ('CONNOQUENESSING', 564, '40.81800', '-80.01390'), ('EAST BUTLER', 679, '40.87860', '-79.84760'), ('EAU CLAIRE', 355, '41.13690', '-79.79820'), ('EVANS CITY', 2009, '40.76850', '-80.05870'), ('FERNWAY', 12188, '40.69470', '-80.13100'), ('FOX RUN', 3044, '40.70230', '-80.08300'), ('HARMONY', 937, '40.80130', '-80.12520'), ('HARRISVILLE', 883, '41.13600', '-80.01100'), ('HOMEACRE-LYNDORA', 6685, '40.87100', '-79.92300'), ('KARNS CITY', 244, '40.99710', '-79.72600'), ('MARS', 1746, '40.69660', '-80.01410'), ('MEADOWOOD', 2912, '40.84200', '-79.89400'), ('MERIDIAN', 3794, '40.85440', '-79.95660'), ('NIXON', 1404, '40.78320', '-79.92970'), ('OAK HILLS', 2335, '40.82470', '-79.91340'), ('PETROLIA', 218, '41.02180', '-79.71720'), ('PORTERSVILLE', 268, '40.92520', '-80.14440'), ('PROSPECT', 1234, '40.90070', '-80.04960'), ('SARVER', None, '40.73000', '-79.73000'), ('SAXONBURG', 1629, '40.75200', '-79.81550'), ('SEVEN FIELDS', 1986, '40.68840', '-80.06200'), ('SHANOR-NORTHVUE', 4825, '40.90930', '-79.91720'), ('SLIPPERY ROCK', 3068, '41.07000', '-80.06030'), ('VALENCIA', 384, '40.67570', '-79.98820'), ('WEST LIBERTY', 325, '41.00730', '-80.05500'), ('WEST SUNBURY', 104, '41.00610', '-79.89630'), ('ZELIENOPLE', 4123, '40.78940', '-80.14350')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'PAZ015': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CALLENSBURG', 224, '41.12560', '-79.55850'), ('CLARION', 6185, '41.21010', '-79.38040'), ('EAST BRADY', 1038, '40.98480', '-79.61410'), ('FOXBURG', 275, '41.14500', '-79.68060'), ('FRYBURG', None, '41.35000', '-79.45000'), ('KNOX', 1176, '41.23480', '-79.53570'), ('NEW BETHLEHEM', 1057, '41.00300', '-79.32880'), ('RIMERSBURG', 1051, '41.04120', '-79.50210'), ('SHIPPENVILLE', 505, '41.25090', '-79.46300'), ('SLIGO', 728, '41.10880', '-79.49590'), ('ST. PETERSBURG', 405, '41.16090', '-79.65440'), ('STRATTANVILLE', 542, '41.20290', '-79.32760')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'PAZ012': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('GLEN UNION', None, '41.23000', '-77.57000'), ('HYNER', None, '41.30000', '-77.67000'), ('KEATING', None, '41.26000', '-77.92000'), ('KETTLE CREEK SP', None, '41.36000', '-77.95000'), ('RENOVO', 1318, '41.32910', '-77.74780'), ('TAMARACK', None, '41.42000', '-77.85000'), ('WESTPORT', None, '41.30000', '-77.84000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ013': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BESSEMER', 1172, '40.97680', '-80.48750'), ('ELLPORT', 1148, '40.86140', '-80.26230'), ('ELLWOOD CITY', 8688, '40.86090', '-80.28350'), ('ENON VALLEY', 387, '40.85580', '-80.45740'), ('NEW BEAVER', 1677, '40.88240', '-80.36460'), ('NEW CASTLE', 26309, '40.99570', '-80.34630'), ('NEW CASTLE NORTHWEST', 1535, '41.02190', '-80.35620'), ('NEW WILMINGTON', 2452, '41.11760', '-80.33220'), ('OAKLAND', 622, '40.99220', '-80.36600'), ('OAKWOOD', 2249, '41.01060', '-80.37960'), ('S.N.P.J.', 0, '40.92890', '-80.49900'), ('SOUTH NEW CASTLE', 808, '40.97420', '-80.34600'), ('VILLA MARIA', None, '41.08000', '-80.52000'), ('VOLANT', 113, '41.11360', '-80.25910'), ('WAMPUM', 678, '40.88650', '-80.33880')], 'partOfState': '', 'wfo': 'PBZ'}, -'PAZ010': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BENEZETTE', None, '41.31000', '-78.35000'), ('BRANDY CAMP', None, '41.34000', '-78.70000'), ('BROCKPORT', None, '41.27000', '-78.73000'), ('EAST BRANCH DAM', None, '41.53000', '-78.58000'), ('FORCE', None, '41.26000', '-78.49000'), ('JAMES CITY', None, '41.62000', '-78.83000'), ('JOHNSONBURG', 3003, '41.49190', '-78.67890'), ('MEDIX RUN', None, '41.29000', '-78.39000'), ('PORTLAND MILLS', None, '41.38000', '-78.84000'), ('RIDGWAY', 4591, '41.42560', '-78.72880'), ('ST. MARYS', 14502, '41.42860', '-78.55770'), ('WILCOX', None, '41.58000', '-78.68000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ011': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CAMERON', None, '41.43000', '-78.16000'), ('DRIFTWOOD', 103, '41.34320', '-78.13540'), ('ELK RIVER', None, '41.58000', '-78.38000'), ('EMPORIUM', 2526, '41.51090', '-78.23710'), ('HICKS RUN', None, '41.36000', '-78.24000'), ('SIZERVILLE', None, '41.59000', '-78.21000'), ('STEVENSON DAM', None, '41.43000', '-78.06000'), ('TRUMAN', None, '41.45000', '-78.37000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ018': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLACK MOSHANNON SP', None, '40.91300', '-78.05200'), ('MOSHANNON', None, '41.02720', '-78.04800'), ('PHILIPSBURG', 3056, '40.89260', '-78.21170'), ('PINE GLEN', 210, '41.10100', '-78.05950'), ('SANDY RIDGE', 340, '40.79900', '-78.21170'), ('SNOW SHOE', 771, '41.02720', '-77.95030')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ019': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BALD EAGLE SP', None, '41.05000', '-77.68500'), ('BELLEFONTE', 6395, '40.91380', '-77.76860'), ('BOALSBURG', 3578, '40.77350', '-77.79160'), ('CENTRE HALL', 1079, '40.84440', '-77.68460'), ('HOWARD', 699, '41.01200', '-77.65700'), ('MCCALL DAM SP', None, '41.01000', '-77.20000'), ('MILESBURG', 1187, '40.94260', '-77.79190'), ('MILLHEIM', 749, '40.89250', '-77.47620'), ('PARK FOREST', None, '40.80100', '-77.90970'), ('PINE GROVE MILLS', 1141, '40.73880', '-77.87390'), ('PLEASANT GAP', 1611, '40.86460', '-77.73800'), ('POE VALLEY SP', None, '40.84440', '-77.49500'), ('PORT MATILDA', 638, '40.79900', '-78.05260'), ('POTTERS MILLS', None, '40.77000', '-77.64000'), ('REBERSBURG', 492, '40.94250', '-77.49000'), ('ROCK SPRINGS', None, '40.71950', '-77.95660'), ('STATE COLLEGE', 38420, '40.79060', '-77.85790'), ('UNIONVILLE', 313, '40.90590', '-77.87660'), ('ZION', 2054, '40.92140', '-77.66790')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'TXZ040': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROWNFIELD', 9488, '33.17970', '-102.27050'), ('MEADOW', 658, '33.33820', '-102.20620'), ('TOKIO', None, '33.18130', '-102.57190'), ('UNION', None, '33.03630', '-102.22130'), ('WELLMAN', 203, '33.04700', '-102.42760')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ041': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRASSLAND', None, '33.13880', '-101.58970'), ('NEW HOME', 320, '33.32730', '-101.91080'), ('NEW MOORE', None, '33.02190', '-102.03220'), ("O'DONNELL", 1011, '32.96520', '-101.83010'), ('TAHOKA', 2910, '33.16450', '-101.79440'), ('WILSON', 532, '33.31980', '-101.72670')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ042': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRAHAM', 8716, '33.15050', '-101.46910'), ('JUSTICEBURG', None, '33.04270', '-101.20240'), ('LAKE ALAN HENRY', None, '33.06440', '-101.04830'), ('POST', 3708, '33.19090', '-101.38130'), ('SOUTHLAND', None, '33.36190', '-101.54970')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'NEZ008': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AINSWORTH', 1862, '42.54900', '-99.85720'), ('JOHNSTOWN', 53, '42.57250', '-100.05520'), ('LONG PINE', 341, '42.53480', '-99.70240')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'TXZ044': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ASPERMONT', 1021, '33.13990', '-100.22490'), ('OLD GLORY', None, '33.12970', '-100.05550'), ('PEACOCK', None, '33.18220', '-100.39880'), ('SWENSON', None, '33.20690', '-100.31160')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ045': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ASHMORE', None, '32.92000', '-102.28000'), ('CEDAR LAKE', None, '32.81780', '-102.29580'), ('FAIRVIEW', 2644, '32.70000', '-102.54000'), ('FAIRVIEW', 2644, '32.69670', '-102.53610'), ('HIGGINBOTHAM', None, '32.90000', '-102.99000'), ('LOOP', None, '32.92000', '-102.42000'), ('PAYNES CORNER', None, '32.73000', '-102.80000'), ('SEAGRAVES', 2334, '32.94150', '-102.56490'), ('SEMINOLE', 5910, '32.71830', '-102.65260')], 'partOfState': '', 'wfo': 'MAF'}, -'TXZ046': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ACKERLY', 245, '32.52460', '-101.71580'), ('ARVANA', None, '32.81000', '-101.92000'), ('FRIENDSHIP', None, '32.63000', '-102.03000'), ('GRANDVIEW', 1358, '32.91000', '-102.00000'), ('HANCOCK', None, '32.82000', '-101.86000'), ('KEY', None, '32.73000', '-101.80000'), ('KLONDIKE', None, '32.56000', '-101.96000'), ('LAMESA', 9952, '32.73260', '-101.95580'), ('MIDWAY', 288, '32.69000', '-101.79000'), ('MIDWAY', 288, '32.68610', '-101.78610'), ('PATRICIA', None, '32.56000', '-102.02000'), ('PRIDE', None, '32.94000', '-102.08000'), ('PUNKIN CENTER', None, '32.85000', '-102.05000'), ('SAND', None, '32.70000', '-102.18000'), ('SPARENBERG', None, '32.58000', '-101.84000'), ('TENMILE', None, '32.60000', '-101.92000'), ('UNION', None, '32.68000', '-102.07000'), ('UNION', None, '32.67360', '-102.06360'), ('WELCH', None, '32.93000', '-102.13000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXZ047': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GAIL', None, '32.77000', '-101.45000'), ('LAKE J.B. THOMAS', None, '32.58580', '-101.25190'), ('MESQUITE', 124523, '32.87000', '-101.63000')], 'partOfState': '', 'wfo': 'MAF'}, -'NEZ003': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALLIANCE', 8959, '42.10040', '-102.87390'), ('BEREA', None, '42.20000', '-102.99000'), ('HEMINGFORD', 993, '42.32120', '-103.07570')], 'partOfState': '', 'wfo': 'CYS'}, -'NEZ002': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BOX BUTTE DAM', None, '42.45000', '-103.08000'), ('CHADRON', 5634, '42.82710', '-103.00010'), ('CHADRON ST PARK', None, '42.68000', '-103.00000'), ('CRAWFORD', 1107, '42.68550', '-103.41420'), ('MARSLAND', None, '42.44460', '-103.30090'), ('WHITNEY', 87, '42.78410', '-103.25680')], 'partOfState': '', 'wfo': 'CYS'}, -'NEZ001': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AGATE', None, '42.41000', '-103.78000'), ('FORT ROBINSON', None, '42.66000', '-103.48000'), ('HARRISON', 279, '42.68800', '-103.88160'), ('HENRY', 162, '41.99830', '-104.04630')], 'partOfState': '', 'wfo': 'CYS'}, -'NEZ007': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANOKA', 10, '42.94690', '-98.82990'), ('BRISTOW', 88, '42.83990', '-98.58370'), ('BUTTE', 366, '42.91260', '-98.84790'), ('GROSS', 5, '42.94680', '-98.56890'), ('LYNCH', 269, '42.83090', '-98.46680'), ('MONOWI', 2, '42.83010', '-98.32880'), ('NAPER', 105, '42.96420', '-99.09710'), ('SPENCER', 541, '42.87460', '-98.70160')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ006': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BURTON', 11, '42.91140', '-99.59060'), ('MILLS', None, '42.94000', '-99.40000'), ('SPRINGVIEW', 244, '42.82530', '-99.74900')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ005': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BROWNLEE', None, '42.29050', '-100.62500'), ('CROOKSTON', 98, '42.92530', '-100.75290'), ('ELSMERE', None, '42.16000', '-100.18000'), ('MERRITT RESERVOIR DAM', None, '42.64600', '-100.87200'), ('SPARKS', None, '42.93100', '-100.26800'), ('VALENTINE', 2820, '42.87370', '-100.54990'), ('WOOD LAKE', 72, '42.63910', '-100.23680')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ004': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANTIOCH', None, '42.06800', '-102.62000'), ('BINGHAM', None, '42.01700', '-102.06000'), ('CLINTON', 30, '42.75940', '-102.34820'), ('ELLSWORTH', None, '42.06000', '-102.28600'), ('GORDON', 1756, '42.80630', '-102.20360'), ('HAY SPRINGS', 652, '42.68310', '-102.68900'), ('LAKESIDE', None, '42.06050', '-102.46000'), ('RUSHVILLE', 999, '42.71290', '-102.46580')], 'partOfState': '', 'wfo': 'LBF'}, -'FLZ064': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('HOBE SOUND', 11376, '27.07240', '-80.13960'), ('HOBE SOUND BEACH', None, '27.10200', '-80.13430'), ('INDIANTOWN', 5588, '27.03610', '-80.46900'), ('JENSEN BEACH', 11100, '27.23610', '-80.23090'), ('JOHNATHAN DICKINSON STATE', None, '27.01220', '-80.12480'), ('JUPITER ISLAND', 620, '27.04270', '-80.10970'), ('NORTH RIVER SHORES', 3101, '27.22270', '-80.27570'), ('PALM CITY', 20097, '27.16130', '-80.26890'), ('PORT MAYACA', None, '26.98200', '-80.61190'), ('PORT SALERNO', 10141, '27.14650', '-80.18980'), ('PORT SEWALL', None, '27.16790', '-80.21690'), ('SNUG HARBOR', None, '27.20230', '-80.22140'), ('STUART', 14633, '27.19430', '-80.24320')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ065': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALVA', 2182, '26.71510', '-81.61110'), ('BOCA GRANDE', None, '26.75000', '-82.26500'), ('BONITA SPRINGS', 32797, '26.34090', '-81.78510'), ('CAPE CORAL', 102286, '26.57500', '-81.98500'), ('CAPTIVA', 379, '26.52000', '-82.19000'), ('ESTERO', 9503, '26.47600', '-81.81520'), ('FORT MYERS', 48208, '26.63060', '-81.85060'), ('FORT MYERS SHORES', 5793, '26.71350', '-81.73870'), ('FORT MYERS VILLAS', None, '26.55000', '-81.86900'), ('LEHIGH ACRES', 33430, '26.60290', '-81.63310'), ('MORSE SHORES', None, '26.68070', '-81.79770'), ('NORTH FORT MYERS', 40214, '26.70560', '-81.89280'), ('PAGE PARK-PINE MANOR', None, '26.57380', '-81.87000'), ('PINE ISLAND', 64, '26.61000', '-82.12000'), ('PUNTA RASSA', 1731, '26.48750', '-82.01250'), ('SANIBEL', 6064, '26.44390', '-82.10090'), ('SOUTHWEST INTERNATIONAL A', None, '26.54000', '-81.76000'), ('ST. JAMES CITY', 4105, '26.49970', '-82.08090'), ('SUNCOAST ESTATES', 4867, '26.71120', '-81.86930'), ('TICE', 4538, '26.67450', '-81.81780'), ('WHISKEY CREEK', 4806, '26.57220', '-81.89040')], 'partOfState': 'SOUTHWEST', 'wfo': 'TBW'}, -'FLZ066': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BIG CYPRESS SEMINOLE INDI', None, '26.30000', '-80.97000'), ('CLEWISTON', 6460, '26.75000', '-80.93700'), ('DEVILS GARDEN', None, '26.61000', '-81.13000'), ('FELDA', None, '26.54000', '-81.43000'), ('HENDRY CORRECTIONAL INSTI', None, '26.31000', '-81.21000'), ('KERI', None, '26.60000', '-81.39000'), ('LA BELLE', None, '26.76000', '-81.44000')], 'partOfState': 'SOUTHERN', 'wfo': 'MFL'}, -'FLZ067': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELLE GLADE', 14906, '26.69000', '-80.67000'), ('CANAL POINT', 525, '26.86000', '-80.63000'), ('HOLEY LAND WILDLIFE MANAG', None, '26.43000', '-80.73000'), ('LAKE HARBOR', 195, '26.70000', '-80.83000'), ('LION COUNTRY SAFARI', None, '26.71000', '-80.36000'), ('OKEELANTA', None, '26.60000', '-80.71000'), ('PAHOKEE', 5985, '26.82000', '-80.66000'), ('ROTENBERGER WILDLIFE MANA', None, '26.40000', '-80.83000'), ('SOUTH BAY', 3859, '26.66000', '-80.72000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'FLZ060': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BEE RIDGE', 8744, '27.28730', '-82.47560'), ('DESOTO LAKES', 3198, '27.37120', '-82.49000'), ('ENGLEWOOD', 16196, '26.95950', '-82.35430'), ('FRUITVILLE', 12741, '27.33250', '-82.46350'), ('GATOR CREEK ESTATES', None, '27.26000', '-82.38000'), ('HIDDEN RIVER', None, '27.28000', '-82.27000'), ('LAUREL', 8393, '27.14250', '-82.46240'), ('MYAKKA RIVER STATE PARK', None, '27.24300', '-82.31600'), ('NOKOMIS', 3334, '27.12190', '-82.43670'), ('NORTH PORT', 22797, '27.04960', '-82.19490'), ('RIDGE WOOD HEIGHTS', 5028, '27.28700', '-82.51350'), ('SARASOTA', 52715, '27.33610', '-82.54660'), ('SIESTA KEY', 7150, '27.27710', '-82.56650'), ('SOUTH GATE RIDGE', 5655, '27.28600', '-82.49680'), ('SOUTH SARASOTA', 5314, '27.28590', '-82.53320'), ('SOUTH VENICE', 13539, '27.04260', '-82.41430'), ('VAMO', 5285, '27.22860', '-82.49650'), ('VENICE', 17764, '27.09790', '-82.45580'), ('VENICE GARDENS', 7466, '27.06900', '-82.40500'), ('WARM MINERAL SPRINGS', 4811, '27.04850', '-82.27030')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'FLZ061': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARCADIA', 6604, '27.21960', '-81.85970'), ('BROWNVILLE', None, '27.29700', '-81.81000'), ('FORT OGDEN', None, '27.09000', '-81.95500'), ('NOCATEE', None, '27.16000', '-81.89000'), ('PINE LEVEL', None, '27.26500', '-81.99000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TBW'}, -'FLZ062': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BABCOCK RANCH', None, '26.94660', '-81.76160'), ('CHARLOTTE BEACH', None, '26.93500', '-82.21000'), ('CHARLOTTE HARBOR', 3647, '26.96470', '-82.06250'), ('CHARLOTTE PARK', 2182, '26.90400', '-82.04920'), ('CLEVELAND', 3268, '26.95210', '-81.99120'), ('GROVE CITY', 2092, '26.91390', '-82.32720'), ('HARBOUR HEIGHTS', 2873, '26.99250', '-82.00790'), ('MANASOTA KEY', 1345, '26.92490', '-82.36420'), ('PORT CHARLOTTE', 46451, '26.97580', '-82.09800'), ('PUNTA GORDA', 14344, '26.93000', '-82.05700'), ('SOLANA', 1011, '26.93910', '-82.02840'), ('TUCKERS CORNER', None, '26.86000', '-81.75000')], 'partOfState': 'SOUTHWEST', 'wfo': 'TBW'}, -'FLZ063': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRIGHTON SEMINOLE INDIAN', None, '27.08000', '-81.06000'), ('BUCKHEAD RIDGE', 1390, '27.14000', '-80.89000'), ('LAKEPORT', None, '26.98000', '-81.13000'), ('MOORE HAVEN', 1635, '26.83500', '-81.10000'), ('MUSE', None, '26.83000', '-81.50000'), ('ORTONA', None, '26.81000', '-81.30000'), ('PALMDALE', None, '26.94000', '-81.31000')], 'partOfState': 'SOUTHERN', 'wfo': 'MFL'}, -'FLZ068': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ABERDEEN GOLF COURSE', None, '26.56000', '-80.17000'), ('BOCA RATON', 74764, '26.36000', '-80.10000'), ('BOCA RATON EQUESTRIAN CEN', None, '26.44000', '-80.19000'), ('BOCA WEST', None, '26.38000', '-80.16000'), ('BOYNTON BEACH', 60389, '26.53000', '-80.09000'), ('CALOOSA', None, '26.89000', '-80.26000'), ('DELRAY BEACH', 60020, '26.46000', '-80.09000'), ('FLORIDA GARDENS', None, '26.62000', '-80.17000'), ('GREENACRES CITY', None, '26.63000', '-80.13500'), ('HAVERHILL', 1454, '26.69000', '-80.12400'), ('JUNO BEACH', 3262, '26.88000', '-80.05500'), ('JUPITER', 39328, '26.93000', '-80.10000'), ('LAKE WORTH', 35133, '26.62000', '-80.07000'), ('OCEAN RIDGE', 1636, '26.53000', '-80.05000'), ('PALM BEACH', 10468, '26.70000', '-80.04000'), ('PALM BEACH GARDENS', 35058, '26.83000', '-80.10000'), ('PALM SPRINGS', 11699, '26.63500', '-80.09500'), ('PHILO FARMS', None, '26.95000', '-80.18000'), ('RIVIERA BEACH', 29884, '26.78000', '-80.08000'), ('ROYAL PALM BEACH', 21523, '26.71000', '-80.23000'), ('SANDALFOOT COVE', 16582, '26.34000', '-80.20000'), ('TEQUESTA', 5273, '26.96000', '-80.09000'), ('THE ACREAGE', None, '26.77000', '-80.25000'), ('WELLINGTON', 38216, '26.67000', '-80.25000'), ('WEST PALM BEACH', 82103, '26.71000', '-80.06000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'FLZ069': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BONITA SHORES', None, '26.32000', '-81.84000'), ('EAST NAPLES', None, '26.14000', '-81.74000'), ('FIDDLERS CREEK', None, '26.04000', '-81.69000'), ('GOLDEN GATE', 20951, '26.18000', '-81.70000'), ('GOODLAND', 320, '25.92000', '-81.66000'), ('KEY MARCO', None, '25.91000', '-81.68000'), ('LELY', 3857, '26.10000', '-81.71000'), ('MARCO ISLAND', 14879, '25.94000', '-81.73000'), ('MARCO ISLAND AIRPORT', None, '26.00000', '-81.66000'), ('NAPLES', 20976, '26.14000', '-81.80000'), ('NORTH NAPLES', None, '26.22000', '-81.76000'), ('ORANGE TREE', None, '26.28000', '-81.59000'), ('PELICAN BAY', 5686, '26.23000', '-81.81000'), ('QUAIL CREEK ESTATES', None, '26.30000', '-81.74000'), ('ROYAL PALM HAMMOCK', None, '25.99000', '-81.59000'), ('VANDERBILT BEACH', None, '26.27000', '-81.82000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFL'}, -'WYZ030': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('POINT OF ROCKS', 3, '41.68000', '-108.78000'), ('RED DESERT', None, '41.65000', '-108.12000'), ('SUPERIOR', 244, '41.76060', '-108.96360'), ('WAMSUTTER', 261, '41.66890', '-107.97590')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RIW'}, -'ILZ076': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CISNE', 673, '38.51400', '-88.43710'), ('FAIRFIELD', 5421, '38.38040', '-88.36900'), ('GOLDEN GATE', 100, '38.35860', '-88.20550'), ('JEFFERSONVILLE', 366, '38.44300', '-88.40470'), ('JOHNSONVILLE', 69, '38.52060', '-88.53720'), ('KEENES', 99, '38.33790', '-88.64120'), ('MOUNT ERIE', 105, '38.51460', '-88.23270'), ('SIMS', 273, '38.36120', '-88.53500'), ('WAYNE CITY', 1089, '38.34870', '-88.58740')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'ILZ077': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALBION', 1933, '38.37620', '-88.05720'), ('BONE GAP', 272, '38.44480', '-87.99790'), ('BROWNS', 175, '38.37770', '-87.98340'), ('WEST SALEM', 1001, '38.52000', '-88.00880')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'NDZ022': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('DENHOFF', None, '47.48330', '-100.26670'), ('GOODRICH', 163, '47.47610', '-100.12470'), ('MARTIN', 96, '47.82670', '-100.11420'), ('MCCLUSKY', 415, '47.48430', '-100.44170')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDZ023': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BOWDON', 139, '47.46890', '-99.70810'), ('BREMEN', None, '47.75000', '-99.36670'), ('CATHAY', 56, '47.55390', '-99.41100'), ('CHASELEY', None, '47.45000', '-99.80000'), ('EMRICK', None, '47.53330', '-99.40000'), ('FESSENDEN', 625, '47.64970', '-99.62570'), ('HAMBERG', 28, '47.76260', '-99.51480'), ('HARVEY', 1989, '47.77000', '-99.93070'), ('HEATON', None, '47.48330', '-99.53330'), ('HEIMDAL', None, '47.80000', '-99.61670'), ('HURDSFIELD', 91, '47.44780', '-99.93000'), ('SYKESTON', 153, '47.46570', '-99.39850'), ('WELLSBURG', None, '47.83330', '-99.73330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'ILZ072': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BERRYVILLE', None, '38.60000', '-87.95000'), ('CALHOUN', 222, '38.65140', '-88.04280'), ('CLAREMONT', 212, '38.71910', '-87.97450'), ('DUNDAS', None, '38.83330', '-88.08000'), ('NOBLE', 746, '38.69720', '-88.22460'), ('OLNEY', 8631, '38.73140', '-88.08530'), ('PARKERSBURG', 234, '38.58870', '-88.05570'), ('SCHNELL', None, '38.63330', '-88.25000'), ('WAKEFIELD', None, '38.83500', '-88.23330')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILX'}, -'ILZ073': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BILLETT', None, '38.66670', '-87.65000'), ('BIRDS', 51, '38.83750', '-87.67080'), ('BRIDGEPORT', 2168, '38.71000', '-87.75850'), ('CHAUNCEY', None, '38.83330', '-87.86670'), ('HELENA', None, '38.61800', '-87.86670'), ('LAWRENCEVILLE', 4745, '38.72640', '-87.68790'), ('PETROLIA', None, '38.76670', '-87.77500'), ('PINKSTAFF', None, '38.80000', '-87.66670'), ('RUSSELLVILLE', 119, '38.82000', '-87.52930'), ('ST. FRANCISVILLE', 759, '38.59190', '-87.64760'), ('SUMNER', 1022, '38.71710', '-87.86230')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILX'}, -'NDZ026': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANETA', 284, '47.67890', '-97.98880'), ('DAHLEN', None, '48.15810', '-97.92920'), ('KLOTEN', None, '47.71610', '-98.07500'), ('LAKOTA', 781, '48.04310', '-98.34710'), ('MAPES', None, '48.03110', '-98.22690'), ('MCVILLE', 470, '47.76510', '-98.17610'), ('MICHIGAN', None, '48.02500', '-98.11670'), ('PEKIN', 80, '47.79100', '-98.32660'), ('PETERSBURG', 195, '48.01190', '-97.99970'), ('STUMP LAKE', None, '47.91440', '-98.43420'), ('TOLNA', 202, '47.82720', '-98.43970'), ('WHITMAN', None, '48.15860', '-98.11940')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDZ027': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ARVILLA', None, '47.91920', '-97.49440'), ('EMERADO', 510, '47.92150', '-97.36390'), ('GILBY', 243, '48.08380', '-97.46820'), ('GRAND FORKS', 49321, '47.91690', '-97.07200'), ('GRAND FORKS AFB', 4832, '47.96220', '-97.38390'), ('HOLMES', None, '47.71580', '-97.29640'), ('HONEYFORD', None, '48.03330', '-97.47030'), ('INKSTER', 102, '48.15200', '-97.64430'), ('JOHNSTOWN', None, '48.14420', '-97.46970'), ('KEMPTON', None, '47.81890', '-97.61390'), ('LARIMORE', 1433, '47.90840', '-97.62730'), ('LOGAN CENTER', None, '47.80280', '-97.81810'), ('MANVEL', 370, '48.07320', '-97.17570'), ('MCCANNA', None, '48.00580', '-97.70970'), ('MEKINOCK', None, '48.01280', '-97.36310'), ('NIAGARA', 57, '47.99740', '-97.87050'), ('NORTHWOOD', 959, '47.73580', '-97.56870'), ('ORR', None, '48.09330', '-97.67500'), ('THOMPSON', 1006, '47.77500', '-97.10580')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'NDZ028': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BINFORD', 201, '47.55980', '-98.34530'), ('COOPERSTOWN', 1053, '47.44410', '-98.12410'), ('HANNAFORD', 181, '47.31390', '-98.18790'), ('JESSIE', None, '47.54220', '-98.23780'), ('MOSE', None, '47.57860', '-98.45440'), ('RED WILLOW LAKE', None, '47.64750', '-98.37280'), ('REVERE', None, '47.35560', '-98.32830'), ('SUTTON', None, '47.40190', '-98.43890'), ('WALUM', None, '47.26970', '-98.19420')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'TXZ079': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADOBES', None, '29.77000', '-104.56000'), ('CANDELARIA', None, '30.14000', '-104.68000'), ('OCHOA', None, '29.67000', '-104.50000'), ('PRESIDIO', 4167, '29.56110', '-104.36370'), ('REDFORD', 132, '29.45000', '-104.19000'), ('RUIDOSA', None, '29.98000', '-104.68000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'ILZ078': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALLENDALE', 528, '38.52760', '-87.71030'), ('BELLMONT', 297, '38.38260', '-87.90950'), ('KEENSBURG', 252, '38.35200', '-87.86700'), ('MOUNT CARMEL', 7982, '38.41720', '-87.77010')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'ILZ079': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BALDWIN', 3627, '38.18370', '-89.84460'), ('BLAIR', None, '38.04480', '-89.74200'), ('BREMEN', None, '37.97120', '-89.74730'), ('CHESTER', 5185, '37.91970', '-89.82510'), ('COULTERVILLE', 1230, '38.18490', '-89.60430'), ('EDEN', None, '38.12060', '-89.66760'), ('ELLIS GROVE', 381, '38.00930', '-89.90870'), ('EVANSVILLE', 724, '38.08880', '-89.93290'), ('HOUSTON', None, '38.15930', '-89.78120'), ('KASKASKIA', 9, '37.92130', '-89.91640'), ('KELLOGG', None, '38.01370', '-90.05540'), ('MODOC', None, '38.05260', '-90.03730'), ('NEW PALESTINE', None, '37.99650', '-89.82070'), ('PERCY', 942, '38.01600', '-89.61680'), ('PRAIRIE', None, '38.17320', '-89.94320'), ('PRAIRIE DU ROCHER', 613, '38.08130', '-90.09760'), ('PRESTON', None, '38.10610', '-89.86010'), ('RED BUD', 3422, '38.21020', '-89.99640'), ('ROCKWOOD', 41, '37.83790', '-89.69740'), ('ROOTS', None, '38.01790', '-89.97230'), ('RUMA', 260, '38.13440', '-89.99840'), ('SPARTA', 4486, '38.15280', '-89.71550'), ('STEELEVILLE', 2077, '38.00750', '-89.66070'), ('TILDEN', 922, '38.21190', '-89.68330'), ('WALSH', None, '38.08950', '-89.85080'), ('WELGE', None, '37.95650', '-89.71260')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'VAZ026': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BRIDGEWATER', 5203, '38.38490', '-78.96900'), ('BROADWAY', 2192, '38.60820', '-78.79590'), ('CHERRY GROVE', None, '38.58670', '-78.87170'), ('CLOVER HILL', None, '38.45190', '-79.03030'), ('CRIDERS', None, '38.75140', '-79.00440'), ('DALE ENTERPRISE', None, '38.45440', '-78.93970'), ('ELKTON', 2042, '38.41310', '-78.61710'), ('GROTTOES', 2114, '38.26810', '-78.82460'), ('HARRISONBURG', 40468, '38.43670', '-78.87400'), ('LINVILLE', None, '38.52030', '-78.83780'), ('MASSANUTTEN', 1945, '38.40960', '-78.73800'), ('MONTEVIDEO', None, '38.36440', '-78.76970'), ('MOUNT CRAWFORD', 254, '38.35690', '-78.94100'), ('RAWLEY SPRINGS', None, '38.50530', '-79.05670'), ('ROCKY BAR', None, '38.34360', '-78.70190'), ('SPARKLING SPRINGS', None, '38.55140', '-78.95190'), ('SWIFT RUN', None, '38.36830', '-78.58110'), ('TIMBERVILLE', 1739, '38.63600', '-78.77240'), ('TUNIS', None, '38.70280', '-78.86750'), ('YANKEETOWN', None, '38.68470', '-78.94810')], 'partOfState': '', 'wfo': 'LWX'}, -'WAZ013': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('PORT ANGELES EAST', 3053, '48.10590', '-123.37610'), ('SEQUIM', 4334, '48.07750', '-123.10530')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'ORZ030': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BEATTY', None, '42.44190', '-121.26970'), ('BLY', None, '42.39780', '-121.04060'), ('CHEMULT', None, '43.21670', '-121.78170'), ('CRESCENT', None, '43.46250', '-121.69450'), ('GILCHRIST', None, '43.47720', '-121.68420'), ('SPRAGUE RIVER', None, '42.45560', '-121.50310')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MFR'}, -'ORZ031': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADEL', None, '42.17750', '-119.89750'), ('ALKALI LAKE', None, '42.97140', '-119.99220'), ('FORT ROCK', None, '43.35670', '-121.05280'), ('LAKEVIEW', 2474, '42.18920', '-120.34540'), ('NEW PINE CREEK', None, '42.00000', '-120.30000'), ('PAISLEY', 247, '42.69300', '-120.54440'), ('SILVER LAKE', None, '43.12810', '-121.04500'), ('SUMMER LAKE', None, '42.97310', '-120.77640'), ('VALLEY FALLS', None, '42.34420', '-120.28080')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MFR'}, -'UTZ020': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BIG WATER', 417, '37.06850', '-111.66160'), ('CANNONVILLE', 148, '37.56610', '-112.05410'), ('ESCALANTE', 818, '37.76490', '-111.60080'), ('GLENDALE', 355, '37.33210', '-112.60070'), ('HENRIEVILLE', 159, '37.56460', '-111.99460'), ('HILDALE', 1895, '37.00820', '-112.96810'), ('KANAB', 3564, '37.03500', '-112.52000'), ('MT CARMEL', None, '37.23000', '-112.67000'), ('ORDERVILLE', 596, '37.27620', '-112.63260')], 'partOfState': '', 'wfo': 'SLC'}, -'KYZ097': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AUGUSTA', 1204, '38.77250', '-84.00160'), ('BROOKSVILLE', 589, '38.68250', '-84.06670'), ('FOSTER', None, '38.79980', '-84.21390')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYZ096': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BUTLER', 613, '38.78790', '-84.37070'), ('FALMOUTH', 2058, '38.67380', '-84.33430')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYZ095': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CORINTH', 181, '38.49590', '-84.56410'), ('CRITTENDEN', 2401, '38.78110', '-84.60550'), ('DRY RIDGE', 1995, '38.68220', '-84.59640'), ('WILLIAMSTOWN', 3227, '38.63750', '-84.56090')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYZ094': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('GLENCOE', 251, '38.71110', '-84.82180'), ('GRATZ', 89, '38.47300', '-84.94640'), ('MONTEREY', 167, '38.42500', '-84.87130'), ('OWENTON', 1387, '38.53860', '-84.83970'), ('SANDERS', 246, '38.65460', '-84.94680'), ('SPARTA', 230, '38.67630', '-84.90380')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYZ093': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALEXANDRIA', 8286, '38.96050', '-84.38420'), ('BELLEVUE', 6480, '39.10120', '-84.47750'), ('CALIFORNIA', 86, '38.91970', '-84.26260'), ('CLARYVILLE', 2588, '38.92460', '-84.40930'), ('COLD SPRING', 3806, '39.02400', '-84.43740'), ('CRESTVIEW', 471, '39.02240', '-84.41610'), ('FORT THOMAS', 16495, '39.08240', '-84.45030'), ('HIGHLAND HEIGHTS', 6554, '39.03690', '-84.45420'), ('MELBOURNE', 457, '39.03170', '-84.37100'), ('MENTOR', 181, '38.89060', '-84.24370'), ('NEWPORT', 17048, '39.08500', '-84.48660'), ('SILVER GROVE', 1215, '39.03670', '-84.39690'), ('SOUTHGATE', 3472, '39.06130', '-84.47080'), ('WILDER', 2624, '39.03560', '-84.47860'), ('WOODLAWN', 268, '39.09080', '-84.47200')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYZ092': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('COVINGTON', 43370, '39.03680', '-84.51430'), ('CRESCENT PARK', None, '39.04320', '-84.57630'), ('CRESCENT SPRINGS', 3931, '39.05250', '-84.58020'), ('CRESTVIEW HILLS', 2889, '39.02630', '-84.57140'), ('EDGEWOOD', 9400, '39.00610', '-84.56230'), ('ELSMERE', 8139, '38.99430', '-84.60040'), ('ERLANGER', 16676, '39.00990', '-84.58810'), ('FAIRVIEW', 156, '38.99860', '-84.48280'), ('FORT MITCHELL', 8089, '39.04520', '-84.55550'), ('FORT WRIGHT', 5681, '39.04710', '-84.53690'), ('INDEPENDENCE', 14982, '38.95440', '-84.54740'), ('KENTON VALE', 156, '39.05140', '-84.51990'), ('LAKESIDE PARK', 2869, '39.03430', '-84.56650'), ('LATONIA LAKES', 325, '38.96750', '-84.49570'), ('PARK HILLS', 2977, '39.07020', '-84.53090'), ('RYLAND HEIGHTS', 799, '38.95800', '-84.46930'), ('TAYLOR MILL', 6913, '39.01180', '-84.49720'), ('VILLA HILLS', 7948, '39.06390', '-84.59630'), ('VISALIA', 111, '38.91500', '-84.45130')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'KYZ091': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BURLINGTON', 10779, '39.02440', '-84.72300'), ('FLORENCE', 23551, '38.99150', '-84.64290'), ('OAKBROOK', 7726, '38.99960', '-84.68530'), ('UNION', 2893, '38.95290', '-84.66920'), ('WALTON', 2450, '38.86620', '-84.61560')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'GAZ119': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BETHESDA', None, '31.96310', '-81.09420'), ('BONA BELLA', None, '32.01390', '-81.06610'), ('BURNSIDE', None, '31.94390', '-81.11080'), ('CRESTHILL', None, '31.98970', '-81.08750'), ('EDGEMERE', None, '32.03920', '-81.08780'), ('FAIRFIELD', None, '32.03250', '-81.09080'), ('FERNWOOD', None, '32.03190', '-81.06440'), ('FLEETWOOD', None, '32.03110', '-81.07330'), ('GOLDEN ISLES', None, '32.02500', '-80.96860'), ('GORDONSTON', None, '32.05500', '-81.06640'), ('ISLE OF ARMSTRONG', None, '32.03750', '-81.03970'), ('ISLE OF HOPE', 2605, '31.98170', '-81.06110'), ('LEPAGEVILLE', None, '32.07170', '-81.05920'), ('LYNHURST', None, '31.99220', '-81.11170'), ('MOUNT HERMAN', None, '31.95330', '-81.14560'), ('OSSABAW ISLAND', None, '31.79360', '-81.12970'), ('PARKERSBURG', None, '31.98440', '-81.05220'), ('PIN POINT', None, '31.95310', '-81.09250'), ('RIDGEWOOD', None, '32.03330', '-81.09860'), ('RIO VISTA', None, '31.92920', '-81.08810'), ('RIVERSIDE', 57, '32.04500', '-81.00000'), ('SANDFLY', None, '31.98940', '-81.07640'), ('SAVANNAH', 131510, '32.05000', '-81.08330'), ('SAVANNAH BEACH', None, '31.99360', '-80.84860'), ('SKIDAWAY ISLAND', 6914, '31.93330', '-81.05000'), ('TATUMSVILLE', None, '32.03720', '-81.11500'), ('THUNDERBOLT', 2340, '32.03330', '-81.05000'), ('TURNERS ROCK', None, '32.01310', '-81.00560'), ('TYBEE ISLAND', 3392, '32.00000', '-80.84980'), ('VERNONBURG', 138, '31.96560', '-81.12030'), ('WHITE BLUFF', None, '31.98750', '-81.12890'), ('WILMINGTON', None, '31.98170', '-80.99720'), ('WILMINGTON ISLAND', 14213, '32.00830', '-80.98330'), ('WINDSOR FOREST', None, '31.97640', '-81.13250'), ('WORMSLOE', None, '31.97640', '-81.06280'), ('WYMBERLY', None, '31.97580', '-81.06110')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ116': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BELFAST', None, '31.82420', '-81.29190'), ('BLITCHTON', None, '32.19690', '-81.43810'), ('BRISBON', None, '31.91690', '-81.30640'), ('DANIEL', None, '31.91360', '-81.36440'), ('ELLABELL', None, '32.12330', '-81.48580'), ('GROVELAND', None, '32.14420', '-81.74580'), ('KELLER', None, '31.84310', '-81.25390'), ('LANIER', None, '32.12970', '-81.53690'), ('LETFORD', None, '32.03860', '-81.60140'), ('PEMBROKE', 2379, '32.13580', '-81.62220'), ('PORT ROYAL', None, '31.90360', '-81.29580'), ('RABBIT HILL', None, '31.90610', '-81.26940'), ('REKA', None, '32.13920', '-81.67750'), ('RICHMOND HILL', 6959, '31.93810', '-81.30360'), ('SWEET HILL', None, '31.84830', '-81.24250')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ117': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('FORT MCALLISTER', None, '31.89060', '-81.19610'), ('OAK LEVEL', None, '31.85560', '-81.22530')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ114': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALTAMAHA', None, '31.96140', '-82.20750'), ('COBBTOWN', 311, '32.28030', '-82.13890'), ('COLLINS', 528, '32.18110', '-82.10920'), ('DANIELS', None, '32.08110', '-81.98030'), ('FIVE POINTS', None, '31.92190', '-82.03420'), ('GLENNVILLE', 3641, '31.93640', '-81.92860'), ('HUGHLAND', None, '32.04500', '-82.05500'), ('LYNN', None, '31.97250', '-81.96190'), ('MANASSAS', 100, '32.16030', '-82.01970'), ('MENDES', None, '31.99860', '-81.97420'), ('MIDWAY', 1100, '32.03140', '-81.89360'), ('REIDSVILLE', 2235, '32.08670', '-82.11810'), ('TISON', None, '31.93830', '-82.02080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ115': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BAY BRANCH', None, '32.08640', '-81.97580'), ('BELLVILLE', 130, '32.15220', '-81.97440'), ('CLAXTON', 2276, '32.16140', '-81.90420'), ('DAISY', 126, '32.15170', '-81.83470'), ('EDNA', None, '32.23110', '-81.83080'), ('HAGAN', 898, '32.15580', '-81.93390'), ('JENNIE', None, '32.05060', '-81.88920'), ('UNDINE', None, '32.22720', '-81.97970')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ112': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AILEY', 394, '32.18740', '-82.57040'), ('ALSTON', 159, '32.08050', '-82.47960'), ('HIGGSTON', 316, '32.21680', '-82.46720'), ('MOUNT VERNON', 2082, '32.18120', '-82.59390'), ('TARRYTOWN', 100, '32.31890', '-82.55970'), ('UVALDA', 530, '32.03650', '-82.50860')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ113': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LYONS', 4169, '32.20390', '-82.32110'), ('SANTA CLAUS', 237, '32.17170', '-82.32990'), ('VIDALIA', 10491, '32.21230', '-82.40340')], 'partOfState': 'SOUTHEAST', 'wfo': 'FFC'}, -'GAZ110': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HELENA', 2307, '32.07940', '-82.91080'), ('JACKSONVILLE', 118, '31.81560', '-82.97870'), ('LUMBER CITY', 1247, '31.93260', '-82.68270'), ('MCRAE', 2682, '32.06160', '-82.90100'), ('SCOTLAND', 300, '32.04740', '-82.81870')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ111': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALAMO', 1943, '32.14600', '-82.77990'), ('GLENWOOD', 884, '32.18060', '-82.67170')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'UTZ023': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('MANILA', 308, '40.99280', '-109.72040')], 'partOfState': 'NORTHEAST', 'wfo': 'GJT'}, -'CAZ053': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('LOCKWOOD VALLEY', None, '34.75000', '-119.08000'), ('REYES PEAK', None, '34.63000', '-119.28000'), ('TOPATOPA PEAK', None, '34.54000', '-118.99000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ052': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIG PINE MOUNTAIN', None, '34.69700', '-119.65420'), ('FIGUEROA MOUNTAIN', None, '34.74330', '-119.98510'), ('MIRANDA PINE MOUNTAIN', None, '35.03780', '-120.03700')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ051': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BLACK MOUNTAIN', None, '35.39000', '-120.35000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ050': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALPINE', 13143, '32.84300', '-116.76110'), ('BONSALL', 3401, '33.28250', '-117.22020'), ('BOSTONIA', 15169, '32.81980', '-116.94570'), ('CAMP PENDLETON NORTH', 8197, '33.31400', '-117.31460'), ('CASA DE ORO-MOUNT HELIX', 18874, '32.76540', '-116.93810'), ('EL CAJON', 94869, '32.80250', '-116.96080'), ('ESCONDIDO', 133559, '33.13640', '-117.07130'), ('FALLBROOK', 29100, '33.36860', '-117.23780'), ('GRANITE HILLS', 3246, '32.80300', '-116.90380'), ('HARBISON CANYON', 3645, '32.81940', '-116.82950'), ('HIDDEN MEADOWS', 3463, '33.22520', '-117.11170'), ('JAMUL', 5920, '32.72020', '-116.88880'), ('LA MESA', 54749, '32.76960', '-117.01890'), ('LAKESIDE', 19560, '32.84900', '-116.90990'), ('LEMON GROVE', 24918, '32.73340', '-117.03280'), ('POWAY', 48044, '32.98550', '-117.01790'), ('RAINBOW', 2026, '33.40520', '-117.14750'), ('RAMONA', 15691, '33.03610', '-116.87010'), ('RANCHO SAN DIEGO', 20155, '32.74730', '-116.93450'), ('SAN DIEGO COUNTRY ESTATES', 9262, '33.00660', '-116.78280'), ('SAN MARCOS', 54977, '33.13660', '-117.17310'), ('SANTEE', 52975, '32.85510', '-116.98270'), ('SPRING VALLEY', 26663, '32.72080', '-116.98890'), ('VALLEY CENTER', 7323, '33.21740', '-117.01100')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'CAZ056': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('IDYLLWILD-PINE COVE', 3504, '33.74730', '-116.72320')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'CAZ055': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIG BEAR CITY', 5779, '34.26630', '-116.84550'), ('BIG BEAR LAKE', 5438, '34.24370', '-116.89450'), ('CRESTLINE', 10218, '34.24670', '-117.29580'), ('LAKE ARROWHEAD', 8934, '34.26230', '-117.18850'), ('RUNNING SPRINGS', 5125, '34.20970', '-117.11350'), ('WRIGHTWOOD', 3837, '34.35940', '-117.63030')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'CAZ054': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ACTON', 2390, '34.48280', '-118.18250'), ('GORMAN', None, '34.80000', '-118.85000'), ('PYRAMID LAKE', None, '34.69000', '-118.80000'), ('CASTAIC LAKE', None, '34.65000', '-118.70000'), ('MOUNT WILSON', None, '34.22310', '-118.05870'), ('BIG PINES', None, '34.37890', '-117.69010'), ('FALLING SPRINGS', None, '34.30170', '-117.83920')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ059': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('LAKE LOS ANGELES', 11523, '34.61190', '-117.82690'), ('LANCASTER', 118718, '34.69310', '-118.17640'), ('LITTLEROCK', 1402, '34.52510', '-117.98480'), ('PALMDALE', 116670, '34.60540', '-118.08630'), ('SADDLEBACK BUTTE STATE PA', None, '34.71000', '-117.82000'), ('PEARBLOSSOM', None, '34.50000', '-117.90000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ058': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('JULIAN', 1621, '33.07310', '-116.58740'), ('PINE VALLEY', 1501, '32.85540', '-116.50120')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'UTZ022': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ANETH', 598, '37.22000', '-109.18000'), ('BLANDING', 3162, '37.62470', '-109.48010'), ('BLANDING MUNI ARPT', None, '37.58330', '-109.48330'), ('BLUFF', 320, '37.28000', '-109.57000'), ('BLUFF ARPT', None, '37.25000', '-109.63000'), ('GOULDING', None, '37.00000', '-110.18000'), ('MEXICAN HAT', 88, '37.12860', '-109.91550'), ('MONTEZUMA CREEK', 507, '37.26010', '-109.31330'), ('MONUMENT VLY ARPT', None, '37.02000', '-110.20000'), ('NAVAJO MTN TRDNG POST', None, '37.01670', '-110.81670'), ('OLJATO', None, '37.03000', '-110.33000'), ('OLJATO ARPT', None, '37.03330', '-110.31670'), ('RED MESA', None, '37.00000', '-109.36670')], 'partOfState': 'SOUTHEAST', 'wfo': 'GJT'}, -'NCZ041': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('APEX', 20212, '35.72580', '-78.84500'), ('CARPENTER', None, '35.82000', '-78.88000'), ('CARY', 94536, '35.78340', '-78.79890'), ('FALLS LAKE', None, '35.93000', '-78.58000'), ('FUQUAY-VARINA', 7898, '35.59070', '-78.79400'), ('GARNER', 17757, '35.69450', '-78.62690'), ('HOLLY SPRINGS', 9192, '35.65520', '-78.83570'), ('KNIGHTDALE', 5958, '35.79250', '-78.48640'), ('LAKE WHEELER', None, '35.69950', '-78.72000'), ('MORRISVILLE', 5208, '35.83310', '-78.83310'), ('NEW HILL', None, '35.68000', '-78.90000'), ('NEW HOPE', None, '35.80710', '-78.55520'), ('PURNELL', None, '36.02000', '-78.57000'), ('RALEIGH', 276093, '35.82200', '-78.65880'), ('RDU INTERNATIONAL AIRPORT', None, '35.87000', '-78.78000'), ('ROLESVILLE', 907, '35.92760', '-78.45710'), ('WAKE FOREST', 12588, '35.97060', '-78.52090'), ('WENDELL', 4247, '35.78200', '-78.36850')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ040': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BYNUM', None, '35.77000', '-79.15000'), ('FEARRINGTON', 903, '35.80630', '-79.07350'), ('GOLDSTON', 319, '35.59340', '-79.32850'), ('HARPERS CROSSROADS', None, '35.56000', '-79.48000'), ('HASTY', None, '35.68000', '-79.47000'), ('JORDAN LAKE', None, '35.74000', '-79.04000'), ('MONCURE', None, '35.62000', '-79.08000'), ('PITTSBORO', 2226, '35.71940', '-79.17450'), ('SILER CITY', 6966, '35.72490', '-79.46260')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ043': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BLACK CREEK', 714, '35.63580', '-77.93350'), ('ELM CITY', 1165, '35.80890', '-77.86290'), ('LUCAMA', 847, '35.64350', '-78.00860'), ('NEW HOPE', None, '35.80000', '-77.95000'), ('SARATOGA', 379, '35.65350', '-77.77680'), ('SIMS', 128, '35.76040', '-78.05890'), ('STANTONSBURG', 726, '35.60450', '-77.82020'), ('WILLBANKS', None, '35.75000', '-77.77000'), ('WILSON', 44405, '35.73180', '-77.92450')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ042': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BENSON', 2923, '35.37990', '-78.54700'), ('CLAYTON', 6973, '35.64700', '-78.45830'), ('COATS CROSSROADS', None, '35.52000', '-78.55000'), ('EMIT', None, '35.73000', '-78.27000'), ('FLOWERS', None, '35.65000', '-78.35000'), ('FOUR OAKS', 1424, '35.44770', '-78.42500'), ('KENLY', 1569, '35.59340', '-78.12530'), ('LINWOOD', None, '35.75000', '-78.31660'), ('MICRO', 454, '35.56260', '-78.20420'), ('PINE LEVEL', 1313, '35.51000', '-78.24620'), ('PRINCETON', 1066, '35.46550', '-78.16040'), ('SELMA', 5914, '35.53680', '-78.28870'), ('SMITHFIELD', 11510, '35.50730', '-78.34410')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ045': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CRESWELL', 278, '35.87090', '-76.39320'), ('PLYMOUTH', 4107, '35.86090', '-76.74840'), ('ROPER', 613, '35.87740', '-76.61710')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ044': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AYDEN', 4622, '35.47080', '-77.42110'), ('BETHEL', 1681, '35.80760', '-77.37610'), ('FALKLAND', 112, '35.69860', '-77.51480'), ('FARMVILLE', 4302, '35.59490', '-77.59100'), ('FOUNTAIN', 533, '35.67410', '-77.63710'), ('GREENVILLE', 60476, '35.59980', '-77.37440'), ('GRIFTON', 2073, '35.37380', '-77.43460'), ('GRIMESLAND', 440, '35.56230', '-77.19170'), ('SIMPSON', 464, '35.57500', '-77.27880'), ('WINTERVILLE', 4791, '35.52870', '-77.39770')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ046': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('COLUMBIA', 819, '35.91970', '-76.25120')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ049': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BURNSVILLE', 1623, '35.91650', '-82.29790'), ('BUSICK', None, '35.76970', '-82.18310'), ('CELO', None, '35.85500', '-82.19810'), ('MICAVILLE', None, '35.90940', '-82.21330'), ('MOUNT MITCHELL STATE PARK', None, '35.77080', '-82.26330'), ('RAMSEYTOWN', None, '36.00060', '-82.35750'), ('SWISS', None, '35.91420', '-82.45000')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ048': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALLENSTAND', None, '35.97280', '-82.75310'), ('CANTO', None, '35.70140', '-82.75920'), ('FAUST', None, '35.91110', '-82.53030'), ('HOT SPRINGS', 645, '35.89160', '-82.82830'), ('LUCK', None, '35.73580', '-82.86640'), ('MARS HILL', 1764, '35.82820', '-82.55060'), ('MARSHALL', 840, '35.79670', '-82.68400'), ('SPRING CREEK', None, '35.79860', '-82.85440'), ('WALNUT', None, '35.84940', '-82.73890'), ('WHITEROCK', None, '35.95250', '-82.70170')], 'partOfState': '', 'wfo': 'GSP'}, -'WIZ011': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALVIN', None, '46.01000', '-88.81000'), ('ARGONNE', None, '45.66000', '-88.88000'), ('ARMSTRONG CREEK', None, '45.65000', '-88.44000'), ('BLACKWELL', None, '45.51000', '-88.61000'), ('CARTER', None, '45.39000', '-88.63000'), ('CAVOUR', None, '45.65000', '-88.63000'), ('CRANDON', 1961, '45.56000', '-88.90000'), ('HILES', None, '45.71000', '-88.98000'), ('LAONA', None, '45.56000', '-88.68000'), ('MOLE LAKE', None, '45.48000', '-89.00000'), ('NASHVILLE', None, '45.51000', '-89.03000'), ('NEWALD', None, '45.73000', '-88.69000'), ('WABENO', None, '45.43000', '-88.66000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'GAZ028': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOWERSVILLE', 334, '34.37220', '-83.08330'), ('BOWERSVILLE', 334, '34.37220', '-83.08330'), ('HARTWELL', 4188, '34.35370', '-82.93200'), ('HARTWELL', 4188, '34.35370', '-82.93200'), ('NUBERG', None, '34.26440', '-82.89500'), ('REED CREEK', 2148, '34.43660', '-82.91510'), ('REED CREEK', 2148, '34.43660', '-82.91510'), ('VANNA', None, '34.24140', '-83.07170')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'GAZ029': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOWMAN', 898, '34.20340', '-83.02890'), ('BOWMAN', 898, '34.20340', '-83.02890'), ('DEWY ROSE', None, '34.16970', '-82.95310'), ('ELBERTON', 4743, '34.10550', '-82.86400'), ('ELBERTON', 4743, '34.10550', '-82.86400'), ('FORTSONIA', None, '34.01500', '-82.77920'), ('MIDDLETON', None, '34.09920', '-82.76750'), ('RUCKERSVILLE', None, '34.16470', '-82.78830')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'GAZ022': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CUMMING', 4220, '34.20880', '-84.13510')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ023': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CLERMONT', 419, '34.47710', '-83.77410'), ('FLOWERY BRANCH', 1806, '34.18560', '-83.92320'), ('GAINESVILLE', 25578, '34.29410', '-83.83500'), ('GAINESVILLE MILLS', None, '34.27740', '-83.81790'), ('GILLSVILLE', 195, '34.31150', '-83.63750'), ('LULA', 1438, '34.39300', '-83.66310'), ('OAKWOOD', 2689, '34.23210', '-83.88060'), ('WESTSIDE', None, '34.27150', '-83.84570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ020': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADAIRSVILLE', 2542, '34.36630', '-84.91220'), ('CARTERSVILLE', 15925, '34.16740', '-84.80140'), ('EMERSON', 1092, '34.13180', '-84.73940'), ('EUHARLEE', 3208, '34.14340', '-84.93280'), ('KINGSTON', 659, '34.23570', '-84.94610'), ('WHITE', 693, '34.28240', '-84.74770')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ021': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BALL GROUND', 730, '34.33720', '-84.37690'), ('CANTON', 7709, '34.24900', '-84.49020'), ('HOLLY SPRINGS', 3195, '34.17220', '-84.49790'), ('NELSON', 626, '34.38150', '-84.37140'), ('WALESKA', 616, '34.31580', '-84.55010'), ('WOODSTOCK', 10050, '34.10150', '-84.51440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ026': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CANON', 755, '34.34620', '-83.11070'), ('CANON', 755, '34.34620', '-83.11070'), ('CARNESVILLE', 541, '34.36720', '-83.23330'), ('CARNESVILLE', 541, '34.36720', '-83.23330'), ('FRANKLIN SPRINGS', 762, '34.28350', '-83.14630'), ('FRANKLIN SPRINGS', 762, '34.28350', '-83.14630'), ('LAVONIA', 1827, '34.43600', '-83.10640'), ('ROYSTON', 2493, '34.28550', '-83.10940'), ('ROYSTON', 2493, '34.28550', '-83.10940'), ('WHITWORTH', None, '34.48390', '-83.09500')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'GAZ027': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CARLTON', 233, '34.04270', '-83.03860'), ('COLBERT', 488, '34.03700', '-83.21300'), ('COMER', 1052, '34.06190', '-83.12540'), ('DANIELSVILLE', 457, '34.12390', '-83.22060'), ('HULL', 160, '34.01470', '-83.29350'), ('ILA', 328, '34.17230', '-83.29350')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAZ024': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALTO', 876, '34.46740', '-83.57450'), ('HOMER', 950, '34.33380', '-83.49970')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAZ025': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARCADE', 1643, '34.07690', '-83.56100'), ('COMMERCE', 5292, '34.20590', '-83.46120'), ('HOSCHTON', 1070, '34.09250', '-83.76120'), ('JEFFERSON', 3825, '34.13340', '-83.59970'), ('MAYSVILLE', 1247, '34.25340', '-83.55570'), ('NICHOLSON', 1247, '34.11380', '-83.43270'), ('PENDERGRASS', 431, '34.16260', '-83.67920'), ('TALMO', 477, '34.18390', '-83.71800')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'IAZ079': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('EMERSON', 480, '41.01850', '-95.40280'), ('GLENWOOD', 5358, '41.04780', '-95.74220'), ('HASTINGS', 214, '41.02390', '-95.49560'), ('HENDERSON', 171, '41.13910', '-95.43100'), ('MALVERN', 1256, '41.00750', '-95.58540'), ('PACIFIC JUNCTION', 507, '41.01830', '-95.79960'), ('SILVER CITY', 259, '41.11100', '-95.63780')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'IAZ078': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMBER', None, '41.13330', '-91.18330'), ('CAIRO', None, '41.18330', '-91.33330'), ('COLUMBUS CITY', 376, '41.25930', '-91.37500'), ('COLUMBUS JUNCTION', 1900, '41.27940', '-91.36460'), ('COTTER', 48, '41.29260', '-91.47050'), ('ELRICK JUNCTION', None, '41.10000', '-91.11670'), ('FREDONIA', 251, '41.28470', '-91.33900'), ('GLADWIN', None, '41.36670', '-91.45000'), ('GRANDVIEW', 600, '41.27720', '-91.18740'), ('LETTS', 392, '41.33000', '-91.23480'), ('MARSH', None, '41.10000', '-91.35000'), ('MORNING SUN', 872, '41.09400', '-91.25150'), ('NEWPORT', None, '41.08330', '-91.18330'), ('OAKVILLE', 439, '41.09780', '-91.04350'), ('SAND SPRINGS', None, '41.31770', '-91.19330'), ('TOOLESBORO', None, '41.15000', '-91.06670'), ('WAPELLO', 2124, '41.17840', '-91.18880'), ('WYMAN', None, '41.20000', '-91.46670')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'IAZ077': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AINSWORTH', 524, '41.29020', '-91.55410'), ('BRIGHTON', 687, '41.17430', '-91.82060'), ('COPPOCK', 57, '41.16700', '-91.72000'), ('CRAWFORDSVILLE', 295, '41.21440', '-91.53590'), ('HASKINS', None, '41.33330', '-91.53330'), ('KALONA', 2293, '41.48760', '-91.70050'), ('KALONA AIRPORT', None, '41.50500', '-91.73330'), ('LAKE DARLING STATE PARK', None, '41.18330', '-91.90000'), ('NOBLE', None, '41.16670', '-91.61670'), ('RICHMOND', None, '41.45000', '-91.70000'), ('RIVERSIDE', 928, '41.48230', '-91.57310'), ('RUBIO', None, '41.21670', '-91.93330'), ('WASHINGTON', 7047, '41.29880', '-91.69090'), ('WASHINGTON AIRPORT', None, '41.28330', '-91.66670'), ('WELLMAN', 1393, '41.46790', '-91.83700'), ('WEST CHESTER', 159, '41.34000', '-91.81620')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'IAZ076': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('COAL CREEK', None, '41.43330', '-92.40000'), ('DELTA', 410, '41.32310', '-92.32940'), ('GIBSON', 92, '41.48060', '-92.39150'), ('HARPER', 134, '41.36330', '-92.05120'), ('HAYESVILLE', 64, '41.26450', '-92.24700'), ('HEDRICK', 837, '41.17060', '-92.30770'), ('KEOTA', 1025, '41.36600', '-91.95550'), ('KESWICK', 295, '41.45500', '-92.23730'), ('KINROSS', 80, '41.45940', '-91.98720'), ('LANCASTER', None, '41.28330', '-92.16660'), ('MARTINSBURG', 126, '41.17840', '-92.25230'), ('OLLIE', 224, '41.19880', '-92.09280'), ('PEKIN', None, '41.16670', '-92.16670'), ('RICHLAND', 587, '41.18590', '-91.99500'), ('SIG-NOR FIELD AIRPORT', None, '41.31220', '-92.18530'), ('SIGOURNEY', 2209, '41.33400', '-92.20650'), ('SIGOURNEY IOWA AIRPORT', None, '41.38330', '-92.18830'), ('SOUTH ENGLISH', 213, '41.45230', '-92.09080'), ('TALLEYRAND', None, '41.30000', '-91.96670'), ('THORNBURG', 84, '41.45630', '-92.33260'), ('WEBSTER', 110, '41.43790', '-92.17080'), ('WHAT CHEER', 678, '41.40010', '-92.35390')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'IAZ075': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BARNES CITY', 201, '41.50740', '-92.46880'), ('BEACON', 518, '41.27460', '-92.68120'), ('FREMONT', 704, '41.21210', '-92.43490'), ('KEOMAH VILLAGE', 97, '41.28820', '-92.53630'), ('LEIGHTON', 153, '41.33850', '-92.78660'), ('NEW SHARON', 1301, '41.47020', '-92.65060'), ('OSKALOOSA', 10938, '41.29300', '-92.63960'), ('ROSE HILL', 205, '41.32040', '-92.46280'), ('UNIVERSITY PARK', 536, '41.28670', '-92.61580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAZ074': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BUSSEY', 450, '41.20590', '-92.88420'), ('HAMILTON', 144, '41.17000', '-92.90410'), ('HARVEY', 277, '41.31660', '-92.92340'), ('KNOXVILLE', 7731, '41.31910', '-93.10130'), ('MARYSVILLE', 54, '41.18270', '-92.95340'), ('MELCHER-DALLAS', 1298, '41.22780', '-93.24080'), ('PELLA', 9832, '41.40870', '-92.91900'), ('PLEASANTVILLE', 1539, '41.38900', '-93.26740'), ('SWAN', 121, '41.46560', '-93.30940')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAZ073': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ACKWORTH', 85, '41.36510', '-93.47300'), ('BEVINGTON', 58, '41.35960', '-93.79020'), ('CARLISLE', 3497, '41.50000', '-93.48520'), ('CUMMING', 162, '41.48470', '-93.76180'), ('HARTFORD', 759, '41.45780', '-93.40390'), ('INDIANOLA', 12998, '41.36070', '-93.56550'), ('LACONA', 360, '41.18990', '-93.38420'), ('MARTENSDALE', 467, '41.37410', '-93.73820'), ('MILO', 839, '41.28930', '-93.43850'), ('NEW VIRGINIA', 469, '41.18090', '-93.73050'), ('NORWALK', 6884, '41.49810', '-93.68090'), ('SANDYVILLE', 61, '41.37020', '-93.38550'), ('SPRING HILL', 92, '41.41200', '-93.64900'), ('ST. MARYS', 134, '41.30860', '-93.73320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAZ072': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('EARLHAM', 1298, '41.49220', '-94.12200'), ('EAST PERU', 153, '41.22750', '-93.92760'), ('MACKSBURG', 142, '41.21430', '-94.18540'), ('PATTERSON', 126, '41.34900', '-93.87920'), ('ST. CHARLES', 619, '41.28790', '-93.80630'), ('TRURO', 427, '41.21040', '-93.84570'), ('WINTERSET', 4768, '41.33800', '-94.01850')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAZ071': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ADAIR', 839, '41.50010', '-94.64360'), ('BRIDGEWATER', 178, '41.24690', '-94.66740'), ('FONTANELLE', 692, '41.29000', '-94.56070'), ('GREENFIELD', 2129, '41.30550', '-94.45850'), ('ORIENT', 402, '41.20280', '-94.41790'), ('STUART', 1712, '41.50240', '-94.31830')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'IAZ070': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANITA', 1049, '41.44360', '-94.76530'), ('ATLANTIC', 7257, '41.39820', '-95.01480'), ('CUMBERLAND', 281, '41.27370', '-94.86970'), ('GRISWOLD', 1039, '41.23390', '-95.13890'), ('LEWIS', 438, '41.30630', '-95.08420'), ('MARNE', 149, '41.44850', '-95.11030'), ('MASSENA', 414, '41.25130', '-94.76930'), ('WIOTA', 149, '41.40060', '-94.88750')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'ARZ024': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CONCORD', 255, '35.66340', '-91.84870'), ('GREERS FERRY', 930, '35.56780', '-92.16920'), ('HEBER SPRINGS', 6432, '35.50020', '-92.03860'), ('HIGDEN', 101, '35.56640', '-92.20520'), ('QUITMAN', 714, '35.38230', '-92.21430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'INZ001': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CEDAR LAKE', 9279, '41.37330', '-87.43620'), ('CROWN POINT', 19806, '41.42420', '-87.35770'), ('DYER', 13895, '41.50340', '-87.50520'), ('EAST CHICAGO', 32414, '41.64870', '-87.45190'), ('GARY', 102746, '41.59580', '-87.34410'), ('GRIFFITH', 17334, '41.52240', '-87.42370'), ('HAMMOND', 83048, '41.62100', '-87.49040'), ('HIGHLAND', 4107, '41.54910', '-87.45770'), ('HOBART', 25363, '41.53160', '-87.26730'), ('LAKE DALECARLIA', 1285, '41.33910', '-87.40330'), ('LAKE STATION', 13948, '41.57280', '-87.26140'), ('LOWELL', 7505, '41.29470', '-87.41320'), ('MERRILLVILLE', 30560, '41.47160', '-87.32580'), ('MUNSTER', 21511, '41.54670', '-87.50390'), ('NEW CHICAGO', 2063, '41.55870', '-87.27220'), ('SCHERERVILLE', 24851, '41.48920', '-87.44820'), ('SCHNEIDER', 317, '41.19190', '-87.44770'), ('ST. JOHN', 8382, '41.44700', '-87.47580'), ('WHITING', 5137, '41.67820', '-87.48670')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'INZ003': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('KINGSBURY', 229, '41.53120', '-86.69560'), ('KINGSFORD HEIGHTS', 1453, '41.48000', '-86.69130'), ('LA CROSSE', 561, '41.31790', '-86.88980'), ('LA PORTE', 21621, '41.60750', '-86.71480'), ('LONG BEACH', 1559, '41.74660', '-86.85210'), ('MICHIANA SHORES', 330, '41.75630', '-86.81840'), ('MICHIGAN CITY', 32900, '41.71260', '-86.87600'), ('POTTAWATTOMIE PARK', None, '41.72250', '-86.86700'), ('TRAIL CREEK', 2296, '41.69640', '-86.85620'), ('WANATAH', 1013, '41.43080', '-86.88860'), ('WESTVILLE', 2116, '41.53960', '-86.90610')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'INZ002': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BEVERLY SHORES', 708, '41.68550', '-86.97880'), ('BURNS HARBOR', 766, '41.61400', '-87.12550'), ('CHESTERTON', 10488, '41.60090', '-87.05700'), ('DUNE ACRES', 213, '41.64370', '-87.10330'), ('HEBRON', 3596, '41.32240', '-87.20280'), ('KOUTS', 1698, '41.31690', '-87.02640'), ('KVPZ', None, '41.45000', '-87.00000'), ('LAKES OF THE FOUR SEASONS', 7291, '41.40860', '-87.22300'), ('OGDEN DUNES', 1313, '41.62280', '-87.19350'), ('PORTAGE', 33496, '41.58670', '-87.18150'), ('PORTER', 4972, '41.62730', '-87.08190'), ('SOUTH HAVEN', 5619, '41.54360', '-87.13390'), ('TOWN OF PINES', 798, '41.68860', '-86.95170'), ('VALPARAISO', 27428, '41.47730', '-87.05100')], 'partOfState': 'NORTHWEST', 'wfo': 'LOT'}, -'INZ005': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRISTOL', 1382, '41.72100', '-85.81940'), ('DUNLAP', 5887, '41.63550', '-85.91940'), ('ELKHART', 51874, '41.68680', '-85.96880'), ('GOSHEN', 29383, '41.57850', '-85.83510'), ('MIDDLEBURY', 2956, '41.67310', '-85.70960'), ('MILLERSBURG', 868, '41.52630', '-85.69560'), ('NAPPANEE', 6710, '41.44600', '-85.98460'), ('NEW PARIS', 1006, '41.50480', '-85.82650'), ('SIMONTON LAKE', 4053, '41.74770', '-85.96850'), ('WAKARUSA', 1618, '41.53450', '-86.01270')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ004': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('GEORGETOWN', 4497, '41.72940', '-86.22830'), ('GRANGER', 28284, '41.73550', '-86.13950'), ('GULIVOIRE PARK', 2974, '41.61320', '-86.24520'), ('INDIAN VILLAGE', 144, '41.71450', '-86.23190'), ('LAKEVILLE', 567, '41.52580', '-86.27450'), ('MISHAWAKA', 46557, '41.66920', '-86.16850'), ('NEW CARLISLE', 1505, '41.70440', '-86.51090'), ('NORTH LIBERTY', 1402, '41.53300', '-86.43040'), ('OSCEOLA', 1859, '41.66510', '-86.07850'), ('ROSELAND', 1809, '41.71670', '-86.25160'), ('SOUTH BEND', 107789, '41.67530', '-86.26570'), ('WALKERTON', 2274, '41.46400', '-86.48230')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ007': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ANGOLA', 7344, '41.64290', '-85.00010'), ('CLEAR LAKE', 244, '41.73580', '-84.83830'), ('FREMONT', 1696, '41.73110', '-84.93370'), ('ORLAND', 341, '41.73100', '-85.17110')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ006': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LAGRANGE', 2919, '41.64340', '-85.41720'), ('SHIPSHEWANA', 536, '41.67490', '-85.57930'), ('TOPEKA', 1159, '41.53860', '-85.54220')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ009': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALTONA', 198, '41.35090', '-85.15280'), ('ASHLEY', 1010, '41.52560', '-85.06610'), ('AUBURN', 12074, '41.36330', '-85.05760'), ('BUTLER', 2725, '41.42920', '-84.87060'), ('CORUNNA', 254, '41.43570', '-85.14420'), ('GARRETT', 5803, '41.34990', '-85.12770'), ('HAMILTON', 1233, '41.53230', '-84.91750'), ('HUDSON', 596, '41.53360', '-85.08160'), ('ST. JOE', 478, '41.31480', '-84.90350'), ('WATERLOO', 2200, '41.43340', '-85.02660')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ008': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALBION', 2284, '41.39520', '-85.41970'), ('AVILLA', 2049, '41.36500', '-85.23810'), ('CROMWELL', 452, '41.40350', '-85.61440'), ('KENDALLVILLE', 9616, '41.44340', '-85.25810'), ('LIGONIER', 4357, '41.46410', '-85.59470'), ('ROME CITY', 1615, '41.48830', '-85.35580'), ('WOLCOTTVILLE', 933, '41.52550', '-85.36600')], 'partOfState': '', 'wfo': 'IWX'}, -'NYZ061': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ANCRAM', None, '42.05130', '-73.63530'), ('AUSTERLITZ', None, '42.32000', '-73.47000'), ('CHATHAM', 1758, '42.36130', '-73.59790'), ('COPAKE', None, '42.10000', '-73.55000'), ('NEW LEBANON', None, '42.46880', '-73.39250')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ063': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ELLENVILLE', 4130, '41.70290', '-74.36410'), ('KERHONKSON', 1732, '41.77900', '-74.29590'), ('NAPANOCH', 1168, '41.75080', '-74.37450'), ('PHOENICIA', 381, '42.08570', '-74.31770'), ('SUNDOWN', None, '41.88880', '-74.46220'), ('WEST HURLEY', 2105, '42.00650', '-74.11130'), ('WEST SHOKAN', None, '41.96870', '-74.28580'), ('WOODSTOCK', 2187, '42.03880', '-74.11050')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NVZ021': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BIG BEND RAWS', None, '35.11660', '-114.70000'), ('BOULDER BEACH', None, '36.04330', '-114.81000'), ('BOULDER CITY', 14966, '35.98300', '-114.83000'), ('CALLVILLE BAY', None, '36.13330', '-114.72880'), ('COTTONWOOD COVE', None, '35.48330', '-114.69000'), ('ECHO BAY', None, '36.31660', '-114.41110'), ('HOOVER DAM', None, '36.01660', '-114.73830'), ('LAS VEGAS BAY', None, '36.11000', '-114.86000'), ('LAUGHLIN', 7076, '35.15730', '-114.57900'), ('OVERTON', None, '36.53330', '-114.45000'), ('OVERTON BEACH', None, '36.44000', '-114.36440'), ('RAILROAD PASS', None, '35.98330', '-114.91650')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, 'CAZadera': {'fullStateName': '37.23524', 'state': 'CA', 'cities': [('AUBERRY', 2053, '37.07780', '-119.49360'), ('COARSEGOLD', None, '37.26180', '-119.69950'), ('MARIPOSA', 1373, '37.48850', '-119.96650'), ('NORTH FORK', None, '37.22860', '-119.50820'), ('OAKHURST', 2868, '37.33330', '-119.64700'), ('SQUAW VALLEY', 2691, '36.69640', '-119.19420')], 'partOfState': 'Mariposa', 'wfo': 'HNX'}, -'TNZ102': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIG FROG MOUNTAIN', None, '35.00060', '-84.53060'), ('DUCKTOWN', 427, '35.03580', '-84.38980'), ('TURTLETOWN', None, '35.12610', '-84.35500')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ101': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARCHVILLE', None, '35.13140', '-84.52640'), ('BENTON', 1138, '35.17530', '-84.65280'), ('CONASAUGA', None, '35.00250', '-84.73060'), ('PARKSVILLE', None, '35.09810', '-84.65220'), ('RELIANCE', None, '35.18610', '-84.56690')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ100': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CALHOUN', 496, '35.29700', '-84.74730'), ('CHARLESTON', 630, '35.28720', '-84.76040'), ('CLEVELAND', 37192, '35.17760', '-84.86750'), ('FLINT SPRINGS', None, '35.03330', '-84.90720'), ('GAP SPRINGS', None, '35.00440', '-84.78610'), ('HOPEWELL', 1815, '35.23490', '-84.90530'), ('MCDONALD', None, '35.11170', '-84.98420'), ('TASSO', None, '35.20440', '-84.81030'), ('WATERVILLE', None, '35.10640', '-84.86470')], 'partOfState': '', 'wfo': 'MRX'}, -'MTZ061': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BAYLOR', None, '48.66330', '-106.47880'), ('GLENTANA', None, '48.84800', '-106.24880'), ('LARSLAN', None, '48.57830', '-106.19330'), ('OPHEIM', 111, '48.85660', '-106.40660'), ('PORT OF OPHEIM', None, '48.99940', '-106.37720'), ('RICHLAND', None, '48.82080', '-106.05050'), ('THOENY', None, '48.87690', '-106.91690')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ060': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('LANDUSKY', None, '47.89770', '-108.62160'), ('ZORTMAN', None, '47.91770', '-108.52550')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ062': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BAINVILLE', 153, '48.14000', '-104.22220'), ('BROCKTON', 245, '48.15130', '-104.91630'), ('CULBERTSON', 716, '48.14440', '-104.51630'), ('FORT KIPP', None, '48.14660', '-104.71520'), ('FORT UNION', None, '48.00970', '-104.04830'), ('FROID', 195, '48.33440', '-104.49550'), ('MCCABE', None, '48.24360', '-104.37720'), ('SNOWDEN', None, '48.02690', '-104.08360')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'WYZ068': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('FORT LARAMIE', 243, '42.21240', '-104.51660'), ('HAWK SPRINGS', 69, '41.79000', '-104.27000'), ('JAY EM', None, '42.47000', '-104.36000'), ('LA GRANGE', 332, '41.63940', '-104.16380'), ('LINGLE', 510, '42.13880', '-104.34600'), ('TORRINGTON', 5776, '42.06750', '-104.18200'), ('VETERAN', 28, '41.96000', '-104.35000'), ('YODER', 169, '41.91760', '-104.29460')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'WVZ054': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BRANDYWINE', None, '38.62470', '-79.24500'), ('BRUSHY RUN', None, '38.83750', '-79.24780'), ('CHERRY GROVE', None, '38.64060', '-79.52310'), ('CIRCLEVILLE', None, '38.67080', '-79.49140'), ('DEER RUN', None, '38.72000', '-79.23080'), ('FRANKLIN', 797, '38.64600', '-79.33310'), ('HARPER', None, '38.52000', '-79.47000'), ('OAK FLAT', None, '38.65940', '-79.21310'), ('RIVERTON', None, '38.74390', '-79.43610'), ('RUDDLE', None, '38.71250', '-79.30860'), ('SENECA ROCKS', None, '38.83470', '-79.37640'), ('SUGAR GROVE', None, '38.51110', '-79.32190'), ('UPPER TRACK', None, '38.78000', '-79.28000')], 'partOfState': '', 'wfo': 'LWX'}, -'WVZ055': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BAKER', None, '39.04170', '-78.74500'), ('BEAN SETTLEMENT', None, '39.11500', '-78.82610'), ('BRAKE', None, '38.88940', '-79.03640'), ('FISHER', None, '39.05140', '-79.00360'), ('INKERMAN', None, '39.13810', '-78.76890'), ('LOST CITY', None, '38.92970', '-78.83440'), ('LOST RIVER', None, '38.95000', '-78.80000'), ('MATHIAS', None, '38.87780', '-78.86640'), ('MCCAULEY', None, '39.04220', '-78.71220'), ('MCNEILL', None, '39.14000', '-78.91360'), ('MILAM', None, '38.81390', '-79.09940'), ('MOOREFIELD', 2375, '39.06290', '-78.96620'), ('PERRY', None, '38.97140', '-78.67530'), ('RIO', None, '39.13000', '-78.67000'), ('WARDENSVILLE', 246, '39.07650', '-78.59370')], 'partOfState': '', 'wfo': 'LWX'}, -'WYZ069': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CHEYENNE', 53011, '41.14540', '-104.79230'), ('FOX FARM-COLLEGE', 3272, '41.11010', '-104.78740'), ('NORTH CHEYENNE', None, '41.21850', '-104.78970'), ('SOUTH GREELEY HIGHWAY', None, '41.09710', '-104.80580'), ('WARREN AF BASE', None, '41.15310', '-104.86060'), ('WHITAKER', None, '41.41000', '-104.87000')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'WVZ050': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BLOOMERY', None, '39.38690', '-78.37330'), ('CAPON BRIDGE', 200, '39.29780', '-78.43550'), ('CAPON SPRINGS', None, '39.13610', '-78.48470'), ('DELRAY', None, '39.19440', '-78.60440'), ('FRENCHBURG', None, '39.31530', '-78.66080'), ('HIGGINSVILLE', None, '39.41810', '-78.58000'), ('HIGH VIEW', None, '39.23060', '-78.40860'), ('LEHEW', None, '39.19920', '-78.43830'), ('LEVELS', None, '39.48440', '-78.55390'), ('POINTS', None, '39.44000', '-78.61060'), ('PURGITSVILLE', None, '39.23920', '-78.92140'), ('ROMNEY', 1940, '39.34610', '-78.75550'), ('SLANESVILLE', None, '39.37310', '-78.52310'), ('SPRINGFIELD', None, '39.45060', '-78.69390'), ('THREE CHURCHES', None, '39.40080', '-78.65440'), ('WAPOCOMO', None, '39.39500', '-78.73500')], 'partOfState': '', 'wfo': 'LWX'}, -'WVZ051': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BERKELEY SPGS', None, '39.63000', '-78.23000'), ('BERRYVILLE', None, '39.61560', '-78.23000'), ('CHERRY RUN', None, '39.62750', '-78.03420'), ('GREAT CACAPON', None, '39.62000', '-78.29280'), ('HANCOCK', None, '39.69280', '-78.17780'), ('LINEBURG', None, '39.63810', '-78.34690'), ('MAGNOLIA', None, '39.56170', '-78.42720'), ('OAKLAND', None, '39.48110', '-78.25190'), ('OMPS', None, '39.50000', '-78.28000'), ('PAW PAW', 524, '39.53090', '-78.45610'), ('SHADY GROVE', None, '39.63750', '-78.15140'), ('SMITH CROSSROADS', None, '39.56780', '-78.22750'), ('STOTLERS CROSSROADS', None, '39.51330', '-78.22420'), ('UNGER', None, '39.43670', '-78.25420')], 'partOfState': '', 'wfo': 'LWX'}, -'WVZ052': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ARDEN', None, '39.41560', '-78.04360'), ('BERKELEY', None, '39.50000', '-77.93000'), ('FALLING WATERS', None, '39.55920', '-77.89110'), ('GLENGARY', None, '39.38390', '-78.15580'), ('HEDGESVILLE', 240, '39.55470', '-77.99440'), ('INWOOD', 2084, '39.35260', '-78.05120'), ('JOHNSONTOWN', None, '39.57830', '-78.03970'), ('JONES SPRINGS', None, '39.49140', '-78.09560'), ('MARTINSBURG', 14972, '39.46030', '-77.96930'), ('MARTINSBURG ARPT', None, '39.40000', '-77.98000'), ('RIDGEWAY', None, '39.30000', '-78.07000'), ('SHANGHAI', None, '39.44140', '-78.13250'), ('TOMAHAWK', None, '39.53030', '-78.04720'), ('VANVILLE', None, '39.37970', '-77.98000'), ('WINEBRENNERS CROSSROAD', None, '39.42810', '-77.89580')], 'partOfState': '', 'wfo': 'LWX'}, -'WVZ053': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BAKERTON', None, '39.36280', '-77.76330'), ('BLOOMERY', None, '39.25470', '-77.81940'), ('CHARLES TOWN', 2907, '39.28510', '-77.85750'), ('KEARNEYSVILLE', None, '39.38810', '-77.88580'), ('MIDDLEWAY', None, '39.30330', '-77.98310'), ('MILLVILLE', None, '39.29390', '-77.78610'), ('MOLER CROSSROADS', None, '39.39580', '-77.76530'), ('RANSON', None, '39.29500', '-77.86080'), ('RIPPON', None, '39.22000', '-77.90000'), ('SHENANDOAH JUNCTION', None, '39.35860', '-77.84330'), ('SHEPHERDSTOWN', 803, '39.43110', '-77.80510'), ('SUMMIT POINT', None, '39.24940', '-77.95890')], 'partOfState': '', 'wfo': 'LWX'}, -'MIZ064': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLEGAN', 4838, '42.52830', '-85.84550'), ('BRADLEY', None, '42.63030', '-85.64300'), ('BURNIPS', None, '42.73190', '-85.83940'), ('CASTLE PARK', None, '42.74800', '-86.20690'), ('DORR', None, '42.72530', '-85.72250'), ('DOUGLAS', 1214, '42.64180', '-86.21040'), ('FENNVILLE', 1459, '42.59480', '-86.10520'), ('GANGES', None, '42.57690', '-86.21030'), ('GLENN', None, '42.52030', '-86.22750'), ('HAMILTON', None, '42.67770', '-86.00620'), ('HOLLAND', 35048, '42.77170', '-86.10220'), ('HOPKINS', 592, '42.62530', '-85.76380'), ('MACATAWA', None, '42.76970', '-86.20620'), ('MARTIN', 435, '42.53710', '-85.63750'), ('NORTH DORR', None, '42.76870', '-85.76200'), ('OTSEGO', 3933, '42.45770', '-85.69710'), ('PLAINWELL', 3933, '42.44510', '-85.64410'), ('PULLMAN', None, '42.48370', '-86.09130'), ('SAUGATUCK', 1065, '42.65610', '-86.20580'), ('SHELBYVILLE', None, '42.59420', '-85.63720'), ('WAYLAND', 3939, '42.67190', '-85.64140')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'MIZ065': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ASSYRIA', None, '42.46450', '-85.13130'), ('BANFIELD', None, '42.46350', '-85.28850'), ('DELTON', None, '42.49970', '-85.40800'), ('DOWLING', None, '42.52250', '-85.25300'), ('FREEPORT', 444, '42.76350', '-85.31450'), ('HASTINGS', 7095, '42.65020', '-85.28850'), ('HICKORY CORNERS', None, '42.44130', '-85.37550'), ('IRVING', None, '42.68830', '-85.41800'), ('LACEY', None, '42.49300', '-85.19120'), ('MIDDLEVILLE', 2721, '42.71340', '-85.46550'), ('NASHVILLE', 1684, '42.60290', '-85.09390'), ('ORANGEVILLE', None, '42.55280', '-85.51920'), ('WOODLAND', 495, '42.72650', '-85.13490')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'MIZ066': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BELLEVUE', 1365, '42.44420', '-85.01860'), ('BROOKFIELD', None, '42.45100', '-84.79670'), ('CHARLOTTE', 8389, '42.56440', '-84.83250'), ('DIMONDALE', 1342, '42.64880', '-84.64910'), ('EATON RAPIDS', 5330, '42.51000', '-84.65390'), ('GRAND LEDGE', 7813, '42.75260', '-84.74860'), ('GRESHAM', None, '42.64130', '-84.89530'), ('KALAMO', None, '42.54270', '-85.01280'), ('MULLIKEN', 557, '42.76300', '-84.89510'), ('OLIVET', 1758, '42.44610', '-84.92360'), ('POTTERVILLE', 2168, '42.62800', '-84.74580'), ('SUNFIELD', 591, '42.76170', '-84.99170'), ('VERMONTVILLE', 789, '42.62600', '-85.02610'), ('WAVERLY', 16194, '42.73920', '-84.62080'), ('WOODBURY', None, '42.76120', '-85.07450')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'MIZ067': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AURELIUS', None, '42.52420', '-84.52220'), ('BELL OAK', None, '42.72870', '-84.17370'), ('BUNKER HILL', None, '42.47550', '-84.31750'), ('DANSVILLE', 429, '42.55530', '-84.30250'), ('EAST LANSING', 46525, '42.73600', '-84.48430'), ('EDEN', None, '42.52380', '-84.42830'), ('EDGEMONT PARK', 2442, '42.74670', '-84.59370'), ('FITCHBURG', None, '42.43920', '-84.27780'), ('HASLETT', 11283, '42.75270', '-84.40580'), ('HOLT', 11315, '42.63730', '-84.52560'), ('LANSING', 119128, '42.70910', '-84.55400'), ('LESLIE', 2044, '42.45000', '-84.43080'), ('MASON', 6714, '42.58170', '-84.44390'), ('OKEMOS', 22805, '42.70820', '-84.41440'), ('ONONDAGA', None, '42.44420', '-84.56220'), ('STOCKBRIDGE', 1260, '42.45070', '-84.17830'), ('WEBBERVILLE', 1503, '42.66740', '-84.18020'), ('WILLIAMSTON', 3441, '42.68980', '-84.28220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'LAZ049': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DONALDSONVILLE', 7605, '30.09810', '-90.99670'), ('GEISMER', None, '30.20420', '-91.02250'), ('GONZALES', 8156, '30.21680', '-90.92360'), ('PRAIRIEVILLE', None, '30.30280', '-90.97190'), ('SORRENTO', 1227, '30.18830', '-90.86580')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ048': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BAKER', 13793, '30.58550', '-91.15700'), ('BATON ROUGE', 227818, '30.44900', '-91.12600'), ('GARDERE', 8992, '30.35720', '-91.13460'), ('GREENWELL SPRING', None, '30.57940', '-90.99420'), ('OAK HILLS PLACE', 7996, '30.36670', '-91.08690'), ('PRIDE', None, '30.69360', '-90.97810'), ('WESTMINSTER', 2515, '30.40710', '-91.08980'), ('ZACHARY', 11275, '30.66110', '-91.15210')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'MIZ062': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALMONT', 2803, '42.92140', '-83.04450'), ('ATTICA', None, '43.03230', '-83.16230'), ('BURNSIDE', None, '43.21060', '-83.07720'), ('CLIFFORD', 324, '43.31430', '-83.17880'), ('COLUMBIAVILLE', 815, '43.15800', '-83.40780'), ('DRYDEN', 815, '42.94540', '-83.12450'), ('GOODLAND TOWNSHIP', None, '43.11200', '-83.04750'), ('HADLEY', None, '42.95440', '-83.40330'), ('IMLAY CITY', 3869, '43.01640', '-83.07800'), ('KINGS MILL', None, '43.14220', '-83.17280'), ('LAPEER', 9072, '43.04700', '-83.32490'), ('METAMORA', 507, '42.94120', '-83.29060'), ('NORTH BRANCH', 1027, '43.22980', '-83.19170'), ('OTTER LAKE', 437, '43.21330', '-83.45840')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIZ063': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ADAIR', None, '42.79810', '-82.63390'), ('ALGONAC', 4613, '42.62210', '-82.53460'), ('BERVILLE', None, '42.90830', '-82.88310'), ('BROCKWAY', None, '43.07440', '-82.76560'), ('CAPAC', 1775, '43.01330', '-82.92930'), ('EMMETT', 251, '42.99110', '-82.76590'), ('FAIR HAVEN', None, '42.67740', '-82.64810'), ('HARSENS ISLAND', None, '42.59550', '-82.57850'), ('JEDDO', None, '43.15150', '-82.58380'), ('LAKEPORT', None, '43.11500', '-82.49730'), ('LYNN TOWNSHIP', None, '43.11750', '-82.92930'), ('MARINE CITY', 4652, '42.71420', '-82.50110'), ('MARYSVILLE', 9684, '42.91020', '-82.47980'), ('PORT HURON', 32338, '42.99370', '-82.43360'), ('RUBY', None, '43.04220', '-82.60750'), ('SMITHS CREEK', None, '42.91440', '-82.60100'), ('ST. CLAIR', 5802, '42.82470', '-82.49290'), ('WADHAMS', None, '42.98720', '-82.53860'), ('YALE', 2063, '43.12800', '-82.79640')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'LAZ045': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BREAUX BRIDGE', 7281, '30.27820', '-91.90100'), ('BUTTE LA ROSE', None, '30.27750', '-91.68670'), ('CADE', None, '30.08700', '-91.90500'), ('CATAHOULA', None, '30.21400', '-91.70900'), ('CECILIA', 1505, '30.33610', '-91.84780'), ('HENDERSON', 1531, '30.31430', '-91.79930'), ('PARKS', 533, '30.21530', '-91.82940'), ('ST. MARTINVILLE', 6989, '30.12500', '-91.83050')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'LAZ044': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BROUSSARD', 5874, '30.15010', '-91.97010'), ('CARENCRO', 6120, '30.31050', '-92.03660'), ('DUSON', 1672, '30.23220', '-92.19190'), ('LAFAYETTE', 110257, '30.21530', '-92.02950'), ('MILTON', None, '30.10360', '-92.07000'), ('SCOTT', 7870, '30.23770', '-92.09050'), ('YOUNGSVILLE', 3992, '30.09990', '-91.99250')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LCH'}, -'LAZ047': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ADDIS', 2238, '30.35450', '-91.26940'), ('BRUSLY', 2020, '30.39470', '-91.25170'), ('ERWINVILLE', None, '30.53080', '-91.40780'), ('PORT ALLEN', 5278, '30.45070', '-91.20880')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ046': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BAYOU SORREL', None, '30.16170', '-91.33560'), ('CARVILLE', None, '30.22390', '-91.10450'), ('GROSSE TETE', 670, '30.41440', '-91.43520'), ('MARINGOUIN', 1262, '30.49110', '-91.51830'), ('PLAQUEMINE', 7064, '30.28320', '-91.24050'), ('RAMAH', None, '30.40220', '-91.50720'), ('WHITE CASTLE', 1946, '30.16070', '-91.14930')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ041': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BELL CITY', None, '30.11310', '-92.96250'), ('CARLYSS', 4049, '30.17580', '-93.36960'), ('DE QUINCY', None, '30.44830', '-93.44350'), ('GILLIS', None, '30.37360', '-93.20080'), ('HAYES', None, '30.10860', '-92.92000'), ('IOWA', 2663, '30.23720', '-93.01270'), ('LAKE CHARLES', 71757, '30.21090', '-93.20290'), ('LEBLEU SETTLEMENT', None, '30.27670', '-93.08110'), ('MOSS BLUFF', 10535, '30.30410', '-93.20380'), ('STARKS', None, '30.31530', '-93.66170'), ('SULPHUR', 20512, '30.22950', '-93.35640'), ('VINTON', 3338, '30.19720', '-93.58050'), ('WESTLAKE', 4668, '30.25110', '-93.25890')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'LAZ040': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ABITA SPRINGS', 1957, '30.47760', '-90.03130'), ('BUSH', None, '30.60860', '-89.90000'), ('COVINGTON', 8483, '30.47860', '-90.11210'), ('FOLSOM', 525, '30.63190', '-90.19800'), ('LACOMBE', 7518, '30.30770', '-89.92800'), ('MADISONVILLE', 677, '30.39520', '-90.16420'), ('MANDEVILLE', 10489, '30.37010', '-90.08220'), ('PEARL RIVER', 1839, '30.37220', '-89.74800'), ('SLIDELL', 25695, '30.28100', '-89.77770'), ('SUN', 471, '30.64960', '-89.90450')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ043': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BRANCH', None, '30.34860', '-92.26750'), ('CHURCH POINT', 4756, '30.40390', '-92.21450'), ('CROWLEY', 14225, '30.21260', '-92.37590'), ('EGAN', None, '30.23670', '-92.50580'), ('ESTHERWOOD', 807, '30.18110', '-92.46320'), ('EVANGELINE', None, '30.26220', '-92.57060'), ('IOTA', 1376, '30.32650', '-92.49480'), ('MERMENTAU', 721, '30.18500', '-92.58500'), ('MIDLAND', None, '30.18110', '-92.50310'), ('MIRE', None, '30.30000', '-92.19390'), ('MORSE', 759, '30.12090', '-92.49800'), ('RAYNE', 8552, '30.23820', '-92.26710'), ('RICHARD', None, '30.42200', '-92.31300')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'TNZ078': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CENTERTOWN', 257, '35.72480', '-85.91970'), ('MCMINNVILLE', 12749, '35.68750', '-85.77630'), ('MORRISON', 684, '35.60240', '-85.91850'), ('VIOLA', 129, '35.53800', '-85.86060')], 'partOfState': '', 'wfo': 'OHX'}, -'KSZ068': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURRTON', 932, '38.02260', '-97.67200'), ('HALSTEAD', 1873, '38.00100', '-97.50930'), ('HESSTON', 3509, '38.13990', '-97.42760'), ('NEWTON', 17190, '38.04440', '-97.34190'), ('NORTH NEWTON', 1522, '38.07390', '-97.34600'), ('SEDGWICK', 1537, '37.91780', '-97.42610'), ('WALTON', 284, '38.11830', '-97.25610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'KSZ069': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANDOVER', 6698, '37.69120', '-97.13930'), ('AUGUSTA', 8423, '37.69230', '-96.97530'), ('BENTON', 827, '37.78880', '-97.10810'), ('CASSODAY', 130, '38.03870', '-96.63690'), ('DOUGLASS', 1813, '37.51780', '-97.01140'), ('EL DORADO', 12057, '37.82110', '-96.85800'), ('ELBING', 218, '38.05410', '-97.12680'), ('LATHAM', 164, '37.53520', '-96.64150'), ('LEON', 645, '37.68820', '-96.78350'), ('POTWIN', 457, '37.93890', '-97.01870'), ('ROSE HILL', 3432, '37.56620', '-97.13210'), ('TOWANDA', 1338, '37.79690', '-96.99700'), ('WHITEWATER', 653, '37.96320', '-97.14680')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'VAZ084': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ACHILLES', None, '37.28000', '-76.44070'), ('ADNER', None, '37.49870', '-76.63340'), ('ALLMONDSVILLE', None, '37.39720', '-76.64840'), ('ARK', None, '37.43820', '-76.57730'), ('BELROI', None, '37.38770', '-76.58790'), ('BEULAH', None, '37.39000', '-76.44230'), ('CASH', None, '37.53510', '-76.54550'), ('CLAY BANK', None, '37.36000', '-76.59000'), ('DUTTON', None, '37.49450', '-76.46870'), ('GLASS', None, '37.31680', '-76.44990'), ('GLENNS', None, '37.56550', '-76.61260'), ('GLOUCESTER COURTHOUSE', 2269, '37.40980', '-76.52700'), ('GLOUCESTER POINT', 9429, '37.26770', '-76.49550'), ('HARCUM', None, '37.51840', '-76.50500'), ('HAYES', None, '37.37610', '-76.50310'), ('MARYUS', None, '37.27960', '-76.40310'), ('NAXERA', None, '37.34200', '-76.44770'), ('ORDINARY', None, '37.31640', '-76.51360'), ('PAMPA', None, '37.52540', '-76.59310'), ('PINERO', None, '37.49250', '-76.54060'), ('SELDEN', None, '37.35740', '-76.46820'), ('SEVERN', None, '37.29420', '-76.41580'), ('WARE NECK', None, '37.40250', '-76.45890'), ('WHITE MARSH', None, '37.34210', '-76.52070'), ('WICOMICO', None, '37.29190', '-76.51910')], 'partOfState': '', 'wfo': 'AKQ'}, -'KSZ060': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BLUE MOUND', 277, '38.08920', '-95.00940'), ('LA CYGNE', 1115, '38.34680', '-94.76130'), ('MOUND CITY', 821, '38.14380', '-94.82240'), ('PARKER', 281, '38.32890', '-94.99050'), ('PLEASANTON', 1387, '38.17520', '-94.71300'), ('PRESCOTT', 280, '38.06300', '-94.69610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'EAX'}, -'KSZ061': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('COOLIDGE', 86, '38.04090', '-102.00740'), ('KENDALL', None, '37.94000', '-101.54000'), ('SYRACUSE', 1824, '37.98110', '-101.75140')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSZ062': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('DEERFIELD', 884, '37.98140', '-101.13260'), ('LAKIN', 2316, '37.94020', '-101.25830')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSZ063': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('FRIEND', None, '38.25000', '-100.91000'), ('GARDEN CITY', 28451, '37.97710', '-100.86280'), ('HOLCOMB', 2026, '37.99020', '-100.98810'), ('KALVESTA', None, '38.05000', '-100.28000'), ('PIERCEVILLE', None, '37.88000', '-100.67000'), ('PLYMELL', None, '37.81000', '-100.87000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSZ064': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GRAY', None, '38.15000', '-99.63000'), ('HANSTON', 259, '38.12290', '-99.71210'), ('JETMORE', 903, '38.08310', '-99.89300')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSZ065': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ASH VALLEY', None, '38.29000', '-99.21000'), ('BURDETT', 256, '38.19340', '-99.52610'), ('FRIZELL', None, '38.17000', '-99.20000'), ('GARFIELD', 198, '38.07760', '-99.24460'), ('LARNED', 4236, '38.18320', '-99.10130'), ('ROZEL', 182, '38.19590', '-99.40210'), ('SANFORD', None, '38.17000', '-99.31000'), ('ZOOK', None, '38.04000', '-99.09000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'KSZ066': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('DILLWYN', None, '37.97000', '-98.87000'), ('HUDSON', 133, '38.10390', '-98.66010'), ('MACKSVILLE', 514, '37.95720', '-98.96830'), ('NEOLA', None, '37.86000', '-98.51000'), ('RADIUM', 40, '38.17370', '-98.89390'), ('SEWARD', 63, '38.17760', '-98.79380'), ('ST. JOHN', 1318, '38.00100', '-98.76070'), ('STAFFORD', 1161, '37.96280', '-98.59930'), ('ZENITH', None, '37.95000', '-98.48000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'KSZ067': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(HUT)HUTCHINSON MUNI ARPT', None, '38.06670', '-97.86670'), ('ABBYVILLE', 128, '37.97060', '-98.20340'), ('ARLINGTON', 459, '37.89600', '-98.17760'), ('BUHLER', 1358, '38.13810', '-97.77130'), ('HAVEN', 1175, '37.90230', '-97.78060'), ('HUTCHINSON', 40787, '38.06550', '-97.91420'), ('LANGDON', 72, '37.85330', '-98.32410'), ('NICKERSON', 1194, '38.14770', '-98.08670'), ('PARTRIDGE', 259, '37.96740', '-98.09390'), ('PLEVNA', 99, '37.97110', '-98.30910'), ('PRETTY PRAIRIE', 615, '37.78020', '-98.01970'), ('SOUTH HUTCHINSON', 2539, '38.02840', '-97.94100'), ('SYLVIA', 297, '37.95990', '-98.40780'), ('TURON', 436, '37.80740', '-98.42800'), ('WILLOWBROOK', 36, '38.10160', '-97.99110')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'VAZ081': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BIRCHETT ESTATE', None, '37.26030', '-77.27720'), ('BRANDON', None, '37.25580', '-76.99890'), ('BURROWSVILLE', None, '37.21670', '-77.08310'), ('DISPUTANTA', None, '37.12430', '-77.22610'), ('FORT LEE', 7269, '37.23340', '-77.33030'), ('GARYSVILLE', None, '37.24950', '-77.15730'), ('HOPEWELL', 22354, '37.29060', '-77.29840'), ('JORDAN POINT COUNTRY CLUB', None, '37.28420', '-77.25480'), ('JORDANS POINT', None, '37.30560', '-77.22110'), ('NEW BOHEMIA', None, '37.18430', '-77.31940'), ('PETERSBURG', 33740, '37.20430', '-77.39260'), ('PETERSBURG NATIONAL BATTL', None, '37.22920', '-77.36130'), ('PRINCE GEORGE', None, '37.22310', '-77.28780'), ('PRINCE GEORGE GOLF COURSE', None, '37.14620', '-77.26640'), ('RICHARD BLAND COLLEGE', None, '37.17320', '-77.37160'), ('TAYLORS CORNER', None, '37.22920', '-77.04060'), ('TEMPLETON', None, '37.07540', '-77.33010')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'AKZ224': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ALCAN', None, '62.72300', '-141.18820'), ('EAGLE', 129, '64.77810', '-141.20060'), ('EAGLE VILLAGE', 68, '64.79040', '-141.10910'), ('NORTHWAY', 95, '62.93290', '-141.87490'), ('NORTHWAY JUNCTION', 72, '63.00210', '-141.77730'), ('NORTHWAY VILLAGE', 107, '62.97740', '-141.90360'), ('TANACROSS', 140, '63.33910', '-143.43270'), ('TETLIN', 117, '63.06460', '-142.43890'), ('TOK', 1393, '63.30030', '-143.03880')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ225': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('FERRY', 29, '63.92790', '-149.13020'), ('HEALY', 1000, '63.81150', '-149.00200'), ('LIGNITE', None, '63.89050', '-149.04640'), ('MCKINLEY PARK', 142, '63.69670', '-148.95480')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ226': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('DOT LAKE', 19, '63.62910', '-144.09510'), ('DRY CREEK', 128, '63.65340', '-144.66530')], 'partOfState': '', 'wfo': 'AFG'}, -'VAZ080': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADDISON', None, '37.19750', '-77.50280'), ('BURGESS', None, '37.14050', '-77.50880'), ('BUTTERWORTH', None, '37.05110', '-77.62720'), ('CARSON', None, '37.03470', '-77.40530'), ('CENTER STAR', None, '37.11100', '-77.64000'), ('CHERRY HILL', None, '36.93810', '-77.62220'), ('CHURCH ROAD', None, '37.15600', '-77.63180'), ('DARVILLS', None, '37.06320', '-77.83390'), ('DEWITT', None, '37.03860', '-77.64320'), ('DINWIDDIE', None, '37.07710', '-77.58620'), ('FIVE FORKS', None, '37.13920', '-77.62310'), ('FORD', None, '37.14850', '-77.73150'), ('HEBRON', None, '37.14420', '-77.80560'), ('MCKENNEY', 441, '36.98560', '-77.72170'), ('PETERSBURG AIRPORT', None, '37.15920', '-77.52290'), ('REAMS', None, '37.10080', '-77.40610'), ('ROCKY RUN', None, '37.07540', '-77.68410'), ('SUTHERLAND', None, '37.19600', '-77.56330'), ('WALKERS', None, '37.15810', '-77.70640'), ('WHARFS STORE', None, '36.98180', '-77.57690'), ('WILSONS', None, '37.14370', '-77.85950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'AKZ220': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BEAVER', 84, '66.33420', '-147.31470'), ('BIRCH CREEK', 28, '66.24540', '-145.83030'), ('CENTRAL', 134, '65.55580', '-144.85780'), ('CHALKYITSIK', 83, '66.63800', '-143.75500'), ('CIRCLE', 100, '65.82450', '-144.08260'), ('CIRCLE HOT SPRINGS STATIO', None, '65.47030', '-144.68910'), ('FORT YUKON', 595, '66.56500', '-145.26180'), ('STEVENS VILLAGE', 87, '65.99900', '-149.05470'), ('VENETIE', 202, '67.01460', '-146.39790')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ221': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANDERSON', 367, '64.30650', '-149.15970'), ('LAKE MINCHUMINA', 32, '63.87440', '-152.41280'), ('MANLEY HOT SPRINGS', 72, '64.98580', '-150.63660'), ('MINTO', 258, '65.02620', '-149.52960'), ('NENANA', 402, '64.54400', '-149.08670'), ('RAMPART', 45, '65.38360', '-150.01120'), ('TANANA', 308, '65.15600', '-152.10190')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ222': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('COLLEGE', 11402, '64.86950', '-147.82340'), ('EIELSON AFB', 5400, '64.67570', '-147.09130'), ('ESTER', 1680, '64.86130', '-148.02450'), ('FAIRBANKS', 30224, '64.83710', '-147.64900'), ('FOX', 300, '64.96070', '-147.62130'), ('MOOSE CREEK', 542, '64.71370', '-147.16520'), ('NORTH POLE', 1570, '64.75320', '-147.35600'), ('PLEASANT VALLEY', 623, '64.88130', '-146.86850'), ('TWO RIVERS', 482, '64.87100', '-147.09000')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ223': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BIG DELTA', 749, '64.13990', '-145.76210'), ('DELTA JUNCTION', 840, '64.06370', '-145.70820'), ('FORT GREELY', 461, '63.95870', '-145.75610'), ('HARDING LAKE', None, '64.42180', '-146.85070'), ('HEALY LAKE', 37, '63.97700', '-144.72410'), ('SALCHA', 854, '64.46930', '-146.94150')], 'partOfState': '', 'wfo': 'AFG'}, -'AZZ027': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('GILA BEND', 1980, '32.95150', '-112.68480'), ('SENTINEL', None, '32.88000', '-113.22000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PSR'}, -'SDZ071': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALCESTER', 880, '43.02310', '-96.62870'), ('BERESFORD', 2006, '43.07970', '-96.78010'), ('ELK POINT', 1714, '42.68270', '-96.68080'), ('JEFFERSON', 586, '42.60350', '-96.56140'), ('NORTH SIOUX CITY', 2288, '42.53660', '-96.50210')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'AZZ025': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('FORTUNA FOOTHILLS', 20478, '32.65770', '-114.41100'), ('GADSDEN', 953, '32.55000', '-114.78000'), ('MARTINEZ LAKE', None, '32.97000', '-114.47000'), ('SAN LUIS', 15322, '32.49250', '-114.77790'), ('SOMERTON', 7266, '32.59710', '-114.70950'), ('YUMA', 77515, '32.67750', '-114.62020')], 'partOfState': 'SOUTHWEST', 'wfo': 'PSR'}, -'AKZ155': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AKIACHAK', 585, '60.87170', '-161.40360'), ('AKIAK', 309, '60.88570', '-161.19230'), ('ATMAUTLUAK', 294, '60.85430', '-162.26900'), ('BETHEL', 5471, '60.76820', '-161.77220'), ('CHEFORNAK', 394, '60.15370', '-164.21030'), ('CHEVAK', 765, '61.53350', '-165.59160'), ('EEK', 280, '60.21890', '-162.02640'), ('HOOPER BAY', 1014, '61.53980', '-166.10310'), ('KASIGLUK', 543, '60.88900', '-162.54570'), ('KIPNUK', 644, '59.92320', '-164.10100'), ('KWETHLUK', 713, '60.77180', '-161.38850'), ('LOWER KALSKAG', 267, '61.51880', '-160.34990'), ('MEKORYUK', 210, '60.36570', '-166.28360'), ('NAPAKIAK', 353, '60.67690', '-161.97870'), ('NAPASKIAK', 390, '60.66380', '-161.73810'), ('NEWTOK', 321, '60.94940', '-164.64410'), ('NIGHTMUTE', 208, '60.44830', '-164.80410'), ('NUNAPITCHUK', 466, '60.87910', '-162.45250'), ('OSCARVILLE', 61, '60.69660', '-161.75920'), ('QUINHAGAK', 555, '59.73940', '-161.87240'), ('TULUKSAK', 428, '61.11580', '-160.93920'), ('TUNTUTULIAK', 370, '60.32630', '-162.74070'), ('TUNUNAK', 325, '60.57890', '-165.24480'), ('UPPER KALSKAG', 230, '61.53910', '-160.32890')], 'partOfState': '', 'wfo': 'AFC'}, -'SDZ074': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BUFFALO GAP', 164, '43.48330', '-103.28330'), ('FAIRBURN', 80, '43.68780', '-103.20880'), ('HERMOSA', 315, '43.84000', '-103.19150')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'AZZ022': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AGUILA', None, '33.95000', '-113.17000'), ('ARLINGTON', None, '33.33000', '-112.70000'), ('BUCKEYE', 6537, '33.38000', '-112.60000'), ('CIRCLE CITY', None, '33.81600', '-112.58300'), ('GLADDEN', None, '33.90000', '-113.30000'), ('HASSAYAMPA', None, '33.35000', '-112.72000'), ('MORRISTOWN', None, '33.85000', '-112.62000'), ('NEW RIVER', 10740, '33.92000', '-112.13000'), ('PALO VERDE', None, '33.35000', '-112.64000'), ('TONOPAH', None, '33.50000', '-112.93000'), ('WICKENBURG', 5082, '33.96660', '-112.75440'), ('WINTERSBURG', None, '33.42000', '-112.87000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PSR'}, -'AZZ021': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BOUSE', 615, '33.92500', '-114.00000'), ('BRENDA', None, '33.69000', '-113.94000'), ('HARCUVAR', None, '33.77000', '-113.65900'), ('QUARTZSITE', 3354, '33.66700', '-114.21500'), ('SALOME', 1690, '33.78000', '-113.62000'), ('VICKSBURG', None, '33.75000', '-113.73000'), ('VICKSBURG JUNCTION', None, '33.73000', '-113.73000'), ('WENDEN', 556, '33.82000', '-113.55000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PSR'}, -'AZZ020': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CIBOLA', 172, '33.35000', '-114.68000'), ('EHRENBERG', 1357, '33.62290', '-114.49390'), ('PARKER', 3140, '34.13000', '-114.28000'), ('POSTON', 389, '33.95910', '-114.41520')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PSR'}, -'AZZ029': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CHUICHU', 339, '32.74480', '-111.79720'), ('DUDLEYVILLE', 1323, '32.91430', '-110.73380'), ('ELOY', 10375, '32.74500', '-111.60650'), ('KEARNY', 2249, '33.05620', '-110.90600'), ('MAMMOTH', 1762, '32.72150', '-110.64350'), ('ORACLE', 3563, '32.61880', '-110.78420'), ('SAN MANUEL', 4375, '32.61400', '-110.63620')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TWC'}, -'AZZ028': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AK-CHIN VILLAGE', 669, '33.02830', '-112.08700'), ('APACHE JUNCTION', 31814, '33.40500', '-111.54700'), ('ARIZONA CITY', 4385, '32.75080', '-111.66980'), ('CACTUS FOREST', None, '32.99000', '-111.32000'), ('CASA GRANDE', 25224, '32.89230', '-111.73590'), ('COOLIDGE', 7786, '32.98240', '-111.52760'), ('FLORENCE', 17054, '33.03760', '-111.37390'), ('FLORENCE JUNCTION', None, '33.27000', '-111.33000'), ('SACATON', 1584, '33.08210', '-111.74610'), ('SANTAN', 651, '33.14550', '-111.80150')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PSR'}, -'ARZ070': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FOUKE', 814, '33.26080', '-93.88640'), ('GARLAND', 352, '33.35980', '-93.71280'), ('TEXARKANA', 26448, '33.45020', '-94.01580')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'OKZ051': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ANTIOCH', None, '34.10000', '-96.85000'), ('KINGSTON', 1390, '34.00220', '-96.72170'), ('LEBANON', None, '33.98600', '-96.91300'), ('LITTLE CITY', None, '34.08000', '-96.62000'), ('MADILL', 3410, '34.09150', '-96.77230'), ('MCBRIDE', None, '33.93590', '-96.63600'), ('OAKLAND', 674, '34.10000', '-96.79310'), ('RUSSETT', None, '34.18000', '-96.80000'), ('WILLIS', None, '33.87000', '-96.83000'), ('WOODVILLE', 69, '33.96860', '-96.65490')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'OKZ050': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BOMAR', None, '33.85000', '-97.13000'), ('BURNEYVILLE', None, '33.90000', '-97.28000'), ('COURTNEY', None, '33.93000', '-97.50000'), ('LEON', 96, '33.87700', '-97.42950'), ('MARIETTA', 2445, '33.93390', '-97.12330'), ('OVERBROOK', None, '34.07000', '-97.15000'), ('RUBOTTOM', None, '33.93000', '-97.43000'), ('THACKERVILLE', 404, '33.79390', '-97.14340')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'OKZ053': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('HUGO', 5536, '34.01060', '-95.50940'), ('ORD', None, '33.91000', '-95.49920'), ('FROGVILLE', None, '33.89750', '-95.31250'), ('GRANT', None, '33.94310', '-95.51330'), ('GAY', None, '33.95330', '-95.62110'), ('GOODLAND', None, '33.98170', '-95.55500'), ('SAWYER', 274, '34.01360', '-95.37140'), ('FORT TOWSON', 611, '34.01860', '-95.26610'), ('SWINK', 83, '34.01780', '-95.20190'), ('BOSWELL', 703, '34.02720', '-95.86890'), ('UNGER', None, '34.02610', '-95.78170'), ('SOPER', 300, '34.03280', '-95.69690'), ('MESSER', None, '34.08720', '-95.46920'), ('KENT', None, '34.11310', '-95.62280'), ('HUSKEY', None, '33.94580', '-95.27810'), ('FALLON', None, '33.99780', '-95.41670'), ('SPEER', None, '34.11330', '-95.55560'), ('APPLE', None, '34.12750', '-95.41720')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKZ052': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ACHILLE', 506, '33.83450', '-96.38990'), ('ALBANY', None, '33.88000', '-96.17000'), ('ARMSTRONG', 141, '34.05240', '-96.34390'), ('BENNINGTON', 289, '34.00390', '-96.03730'), ('BLUE', None, '34.00000', '-96.23000'), ('BOKCHITO', 564, '34.01830', '-96.14140'), ('BROWN', None, '34.08000', '-96.48000'), ('CADDO', 944, '34.13130', '-96.26910'), ('CALERA', 1739, '33.93460', '-96.43070'), ('CARTWRIGHT', None, '33.85000', '-96.57000'), ('COBB', None, '34.08000', '-96.40000'), ('COLBERT', 1065, '33.85740', '-96.50420'), ('DURANT', 13549, '33.98410', '-96.39230'), ('KEMP', 144, '33.76900', '-96.35460'), ('KENEFIC', 192, '34.14860', '-96.36030'), ('MATOY', None, '34.13000', '-96.07000'), ('MEAD', 123, '34.00070', '-96.51130'), ('ROBERTA', None, '33.93000', '-96.30000'), ('SILO', 282, '34.03510', '-96.47540'), ('UTICA', None, '33.90000', '-96.22000'), ('WADE', None, '33.88000', '-96.08000'), ('YUBA', None, '33.80000', '-96.20000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'VAZ058': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALTON', None, '36.56670', '-79.00000'), ('CLOVER', None, '36.83390', '-78.73390'), ('CLUSTER SPRINGS', None, '36.61670', '-78.91670'), ('CODY', None, '36.98330', '-79.08330'), ('CRYSTAL HILL', None, '36.85000', '-78.90000'), ('DRYBURG', None, '36.73330', '-78.71670'), ('ELMO', None, '36.66670', '-79.13330'), ('HALIFAX', 1389, '36.76540', '-78.93240'), ('HITESBURG', None, '36.61670', '-78.71670'), ('INGRAM', None, '36.75000', '-79.15000'), ('LEDA', None, '36.90000', '-79.08330'), ('MT LAUREL', None, '36.86670', '-78.76670'), ('NATHALIE', None, '36.93330', '-78.95000'), ('RIDGEWAY', 775, '36.80000', '-79.13330'), ('SCOTTSBURG', 145, '36.75980', '-78.79080'), ('SCOTTSBURG', 145, '36.75000', '-78.78330'), ('SOUTH BOSTON', 8491, '36.70000', '-78.90000'), ('TURBEVILLE', None, '36.61670', '-79.03330'), ('VIRGILINA', 159, '36.55000', '-78.78330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'VAZ059': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ABILENE', None, '37.13330', '-78.55000'), ('ASPEN', None, '37.03330', '-78.83330'), ('CHARLOTTE COURT HOUSE', 404, '37.05000', '-78.63330'), ('CULLEN', None, '37.11670', '-78.65000'), ('DRAKES BRANCH', 504, '37.00000', '-78.60000'), ('DRAKES BRANCH', 504, '36.99280', '-78.60100'), ('KEYSVILLE', 817, '37.03890', '-78.48150'), ('MADISONVILLE', None, '37.18330', '-78.68330'), ('PHENIX', 200, '37.08330', '-78.75000'), ('RED HOUSE', None, '37.18330', '-78.80000'), ('REDOAK', None, '36.78330', '-78.61670'), ('SAXE', None, '36.93330', '-78.66670'), ('WREN', None, '37.11670', '-78.85000'), ('WYLLIESBURG', None, '36.85000', '-78.58330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'OKZ057': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('VINITA', 6472, '36.63860', '-95.15390'), ('KETCHUM', 286, '36.52440', '-95.02360'), ('BIG CABIN', 293, '36.53780', '-95.22110'), ('WHITE OAK', None, '36.62030', '-95.26390'), ('CENTRALIA', None, '36.79670', '-95.35310'), ('HOLLOW', None, '36.88750', '-95.26970'), ('PYRAMID CORNERS', None, '36.80170', '-95.14310'), ('BLUEJACKET', 274, '36.79970', '-95.07080'), ('CENTRAILIA', None, '36.80000', '-95.33300'), ('WELCH', 597, '36.87360', '-95.09560')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'OKZ056': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('NEW ALLUWE', 95, '36.60940', '-95.48890'), ('NOWATA', 3971, '36.70060', '-95.63780'), ('DELAWARE', 456, '36.77860', '-95.63920'), ('LENAPAH', 298, '36.85060', '-95.63580'), ('WANN', 132, '36.91530', '-95.80420'), ('WATOVA', None, '36.61720', '-95.65560'), ('NEW ALLUWE', 95, '36.60940', '-95.48890')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'VAZ054': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('THE WOODROW WILSON BRIDGE', None, '38.78890', '-77.04690'), ('ALEXANDRIA', 128283, '38.82100', '-77.08620'), ('ARLINGTON', 189453, '38.87870', '-77.10190'), ('BALLSTON', None, '38.88000', '-77.11420'), ('BARCROFT', None, '38.85580', '-77.10420'), ('CHERRYDALE', None, '38.89690', '-77.10860'), ('FALLS CHURCH', 10377, '38.88500', '-77.17460'), ('REAGAN NATIONAL AIRPORT', None, '38.85220', '-77.03750'), ('RIVERCREST', None, '38.92190', '-77.11940'), ('ROSSLYN', None, '38.89670', '-77.07280'), ('WESTOVER', None, '38.88690', '-77.13970')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAZ055': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARKENDALE', None, '38.43830', '-77.34280'), ('BROOKFIELD', None, '38.31110', '-77.43310'), ('FALMOUTH', 3624, '38.33530', '-77.46550'), ('GARRISONVILLE', None, '38.48250', '-77.42690'), ('GLENDIE', None, '38.39970', '-77.53530'), ('HEFLIN', None, '38.48830', '-77.57830'), ('HOLLY CORNER', None, '38.36330', '-77.56640'), ('LEELAND', None, '38.34970', '-77.43390'), ('RAMOTH', None, '38.42190', '-77.46970'), ('ROSEVILLE', None, '38.46500', '-77.50420'), ('SHILOH', None, '38.50360', '-77.50670'), ('SPRING VALLEY', None, '38.33110', '-77.46080'), ('STAFFORD', None, '38.42000', '-77.40000'), ('STONES CORNER', None, '38.32810', '-77.39080'), ('STORCK', None, '38.41920', '-77.61390'), ('WHITE OAK', None, '38.30060', '-77.37560'), ('WIDEWATER', None, '38.46470', '-77.32560')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAZ056': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALSOP', None, '38.20690', '-77.64970'), ('BELMONT', None, '38.15360', '-77.86640'), ('BROKENBURG', None, '38.14560', '-77.71920'), ('CHANCELLORSVILLE', None, '38.30000', '-77.63000'), ('COOKSTOWN', None, '38.29500', '-77.70190'), ('DUNAVANT', None, '38.36220', '-77.66500'), ('FREDERICKSBURG', 19279, '38.29930', '-77.48710'), ('GATEWOOD', None, '38.08190', '-77.66920'), ('GLENORA', None, '38.08860', '-77.79440'), ('LOGAN', None, '38.21750', '-77.76140'), ('MASSAPONAX', None, '38.19330', '-77.50920'), ('PARKER', None, '38.27500', '-77.75750'), ('PARTLOW', None, '38.03860', '-77.63920'), ('POST OAK', None, '38.16610', '-77.66360'), ('SPOTSYLVANIA COURTHOUSE', 3833, '38.19770', '-77.58820'), ('THORNBURG', None, '38.13330', '-77.52190')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'VAZ057': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BERTHAVILLE', None, '38.33330', '-77.12610'), ('DAHLGREN', 997, '38.33000', '-77.05000'), ('DOGUE', None, '38.23190', '-77.21610'), ('FAIRVIEW BEACH', 230, '38.33000', '-77.24750'), ('JERSEY', None, '38.21140', '-77.13970'), ('KING GEORGE', None, '38.26810', '-77.18470'), ('LAMBS CREEK', None, '38.26360', '-77.26940'), ('NINDE', None, '38.27110', '-77.05640'), ('PASSAPATANZY', None, '38.29720', '-77.31440'), ('ROLLINS FORK', None, '38.18470', '-77.06250'), ('SHILOH', None, '38.22140', '-77.11140'), ('WEEDONVILLE', None, '38.29830', '-77.15890')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'VAZ050': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARBOURSVILLE', None, '38.17080', '-78.28190'), ('BURR HILL', None, '38.34390', '-77.86000'), ('EHEART', None, '38.20360', '-78.32330'), ('EVERONA', None, '38.30470', '-77.96750'), ('FLAT RUN', None, '38.36470', '-77.76670'), ('GOLD DALE', None, '38.26690', '-77.80610'), ('GORDONSVILLE', 1498, '38.13660', '-78.18810'), ('LAHORE', None, '38.19860', '-77.96970'), ('MADISON MILLS', None, '38.28080', '-78.14110'), ('MADISON RUN', None, '38.19670', '-78.13060'), ('NASONS', None, '38.25500', '-78.02690'), ('OLD SOMERSET', None, '38.22360', '-78.22030'), ('ORANGE', 4123, '38.24700', '-78.11140'), ('RAPIDAN', None, '38.31250', '-78.06610'), ('THORNHILL', None, '38.15420', '-77.96830'), ('UNIONVILLE', None, '38.25970', '-77.96860'), ('VERDIERSVILLE', None, '38.27170', '-77.90280')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'TXZ132': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GLEN ROSE', 2122, '32.23630', '-97.75460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'VAZ052': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADEN', None, '38.65500', '-77.53750'), ('BULL RUN', 11337, '38.78360', '-77.52070'), ('CHERRY HILL', None, '38.56970', '-77.26720'), ('DALE CITY', 55971, '38.65050', '-77.34430'), ('DUMFRIES', 4937, '38.56770', '-77.32510'), ('GAINESVILLE', 4382, '38.79560', '-77.61420'), ('GREENWICH', None, '38.74920', '-77.64830'), ('HAYMARKET', 879, '38.81210', '-77.63750'), ('INDEPENDENT HILL', None, '38.63580', '-77.43810'), ('LAKE RIDGE', 30404, '38.68760', '-77.29800'), ('MANASSAS', 35135, '38.74740', '-77.48540'), ('MANASSAS PARK', 10290, '38.77330', '-77.45210'), ('MONTCLAIR', 15728, '38.61090', '-77.33990'), ('NOKESVILLE', 1236, '38.69860', '-77.58000'), ('TRIANGLE', 5500, '38.54570', '-77.31460'), ('WOODBRIDGE', 31941, '38.63560', '-77.26210'), ('WOOLSEY', None, '38.86970', '-77.63580')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAZ053': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('THE AMERICAN LEGION BRIDG', None, '38.96580', '-77.18890'), ('ANNANDALE', 54994, '38.83320', '-77.21210'), ("BAILEY'S CROSSROADS", 23166, '38.84800', '-77.12920'), ('BAILEYS XRDS', None, '38.86670', '-77.15000'), ('BELLE HAVEN', 6269, '38.77730', '-77.05740'), ('BURKE', 57737, '38.78020', '-77.27210'), ('CENTREVILLE', 48661, '38.84690', '-77.44380'), ('CHANTILLY', 41041, '38.87560', '-77.40870'), ('CLIFTON', 185, '38.77990', '-77.38770'), ('FAIRFAX', 21498, '38.85370', '-77.29820'), ('FAIRFAX STATION', None, '38.80080', '-77.32580'), ('FORT BELVOIR', 7176, '38.70970', '-77.14700'), ('FRANCONIA', 31907, '38.76310', '-77.14910'), ('GREAT FALLS', 8549, '39.01020', '-77.28850'), ('HERNDON', 21655, '38.96920', '-77.38730'), ('HYBLA VALLEY', 16721, '38.74880', '-77.07660'), ('LAKE BARCROFT', 8906, '38.85130', '-77.15820'), ('LANGLEY', None, '38.94640', '-77.15920'), ('LINCOLNIA', 15788, '38.82440', '-77.15420'), ('LORTON', 17786, '38.70070', '-77.24080'), ('MCLEAN', 38929, '38.93850', '-77.17700'), ('MERRIFIELD', 11170, '38.87300', '-77.24330'), ('MOUNT VERNON', 28582, '38.71860', '-77.10920'), ('NEWINGTON', 19784, '38.73600', '-77.20420'), ('OAK GROVE', None, '38.98390', '-77.40420'), ('OAKTON', 29348, '38.89220', '-77.30120'), ('OCCOQUAN', 759, '38.68240', '-77.26050'), ('RAVENSWORTH', None, '38.80390', '-77.22080'), ('RESTON', 56407, '38.95210', '-77.34520'), ('ROSE HILL', 714, '38.78860', '-77.11300'), ('SPRINGFIELD', 30417, '38.78600', '-77.17960'), ('THE I395 AND I495 INTERCH', None, '38.78890', '-77.17390'), ('THE I66 AND I495 INTERCHA', None, '38.88000', '-77.22280'), ('TYSONS CORNER', 18540, '38.91860', '-77.23170'), ('VIENNA', 14453, '38.90040', '-77.26020'), ('WOLF TRAP', 14001, '38.93980', '-77.28630')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'ILZ089': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELKNAP', 133, '37.32230', '-88.94010'), ('BUNCOMBE', 186, '37.47090', '-88.97490'), ('CYPRESS', 271, '37.36550', '-89.01900'), ('GOREVILLE', 938, '37.55510', '-88.97360'), ('NEW BURNSIDE', 242, '37.57840', '-88.77310'), ('SIMPSON', 54, '37.46760', '-88.75500'), ('VIENNA', 1234, '37.41420', '-88.89270')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ088': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALTO PASS', 388, '37.57290', '-89.31930'), ('ANNA', 5136, '37.46000', '-89.24110'), ('COBDEN', 1116, '37.53340', '-89.25420'), ('DONGOLA', 806, '37.36000', '-89.16390'), ('JONESBORO', 1853, '37.45430', '-89.26960'), ('MILL CREEK', 76, '37.34150', '-89.25420')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ083': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BURNT PRAIRIE', 58, '38.25050', '-88.25770'), ('CARMI', 5422, '38.08640', '-88.17120'), ('CROSSVILLE', 782, '38.16260', '-88.06450'), ('ENFIELD', 625, '38.10170', '-88.33730'), ('GRAYVILLE', 1725, '38.25980', '-87.99690'), ('MAUNIE', 177, '38.03510', '-88.04530'), ('MILL SHOALS', 235, '38.25140', '-88.34510'), ('NORRIS CITY', 1057, '37.97950', '-88.32820'), ('PHILLIPSTOWN', 28, '38.14070', '-88.01920'), ('SPRINGERTON', 134, '38.17890', '-88.35490')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'ILZ082': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELLE PRAIRIE CITY', 60, '38.22310', '-88.55150'), ('BROUGHTON', 193, '37.93410', '-88.46140'), ('DAHLGREN', 514, '38.19860', '-88.68410'), ('MACEDONIA', 51, '38.05380', '-88.70310'), ('MCLEANSBORO', 2945, '38.09230', '-88.53280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'ILZ081': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BENTON', 6880, '38.00710', '-88.91850'), ('BUCKNER', 479, '37.98110', '-89.01560'), ('CHRISTOPHER', 2836, '37.97260', '-89.05190'), ('EWING', 310, '38.08930', '-88.85220'), ('HANAFORD', 55, '37.95850', '-88.83530'), ('NORTH CITY', 630, '37.99130', '-89.06160'), ('ORIENT', 296, '37.91640', '-88.97540'), ('ROYALTON', 1130, '37.87770', '-89.11350'), ('SESSER', 2128, '38.09030', '-89.05050'), ('THOMPSONVILLE', 571, '37.91410', '-88.76170'), ('VALIER', 662, '38.01780', '-89.04350'), ('WEST CITY', 716, '37.99600', '-88.94870'), ('WEST FRANKFORT', 8196, '37.90060', '-88.92940'), ('ZEIGLER', 1669, '37.89990', '-89.05250')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'ILZ080': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CUTLER', 543, '38.03270', '-89.56660'), ('DU QUOIN', 6448, '38.00420', '-89.23540'), ('PINCKNEYVILLE', 5464, '38.07810', '-89.38420'), ('ST. JOHNS', 218, '38.03120', '-89.24040'), ('TAMAROA', 740, '38.13540', '-89.22890'), ('WILLISVILLE', 694, '37.98290', '-89.59060')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'ILZ087': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('EQUALITY', 721, '37.73590', '-88.34310'), ('JUNCTION', 139, '37.72300', '-88.23780'), ('NEW HAVEN', 477, '37.90010', '-88.12780'), ('OLD SHAWNEETOWN', 278, '37.69690', '-88.13780'), ('OMAHA', 263, '37.88990', '-88.30440'), ('RIDGWAY', 928, '37.79800', '-88.26050'), ('SHAWNEETOWN', 1410, '37.71280', '-88.16550')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ086': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CARRIERS MILLS', None, '37.68860', '-88.62890'), ('ELDORADO', 4534, '37.81180', '-88.44170'), ('GALATIA', 1013, '37.84110', '-88.61390'), ('HARRISBURG', 9860, '37.73650', '-88.54930'), ('MUDDY', 78, '37.76500', '-88.51680'), ('RALEIGH', 330, '37.82530', '-88.53160'), ('STONEFORT', 292, '37.61750', '-88.70720')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ085': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BUSH', 257, '37.84190', '-89.12980'), ('CAMBRIA', 1330, '37.77860', '-89.11430'), ('CARTERVILLE', 4616, '37.76170', '-89.08270'), ('COLP', 224, '37.80750', '-89.07790'), ('CRAINVILLE', 992, '37.75030', '-89.06010'), ('CREAL SPRINGS', 702, '37.61860', '-88.83760'), ('ENERGY', 1175, '37.77540', '-89.02580'), ('FREEMAN SPUR', 273, '37.85990', '-88.99980'), ('HERRIN', 11298, '37.80160', '-89.03160'), ('HURST', 805, '37.83560', '-89.14340'), ('JOHNSTON CITY', 3557, '37.82160', '-88.92550'), ('MARION', 16035, '37.73280', '-88.94130'), ('PITTSBURG', 575, '37.77670', '-88.85030'), ('SPILLERTOWN', 220, '37.76590', '-88.92110'), ('WHITEASH', 268, '37.78520', '-88.93050')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'ILZ084': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AVA', 662, '37.88840', '-89.49630'), ('CAMPBELL HILL', 333, '37.93020', '-89.55100'), ('CARBONDALE', 20681, '37.72460', '-89.21740'), ('DE SOTO', 1653, '37.81590', '-89.22720'), ('DOWELL', 441, '37.93950', '-89.23950'), ('ELKVILLE', 1001, '37.90950', '-89.23650'), ('GORHAM', 256, '37.71780', '-89.48260'), ('GRAND TOWER', 624, '37.63960', '-89.50330'), ('MAKANDA', 419, '37.61910', '-89.23720'), ('MURPHYSBORO', 13295, '37.76810', '-89.33720'), ('VERGENNES', 491, '37.90200', '-89.33970')], 'partOfState': 'SOUTHERN', 'wfo': 'PAH'}, -'MOZ053': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ADRIAN', 1780, '38.39790', '-94.35090'), ('AMORET', 211, '38.25570', '-94.58710'), ('AMSTERDAM', 281, '38.34930', '-94.58890'), ('BALLARD', None, '38.36670', '-94.15000'), ('BUTLER', 4209, '38.25930', '-94.33940'), ('FOSTER', 130, '38.16670', '-94.50800'), ('HUME', 337, '38.08950', '-94.58160'), ('MERWIN', 83, '38.40420', '-94.58980'), ('PASSAIC', 40, '38.32160', '-94.34790'), ('RICH HILL', 1461, '38.09580', '-94.36300'), ('ROCKVILLE', 162, '38.07040', '-94.08020')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOZ052': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CAVE', 7, '39.02380', '-91.04520'), ('DAVIS', None, '39.05810', '-91.01950'), ('ELSBERRY', 2047, '39.17000', '-90.78990'), ('FOLEY', 178, '39.04570', '-90.74130'), ('HAWK POINT', 459, '38.97120', '-91.13370'), ('MOSCOW MILLS', 1742, '38.94590', '-90.91920'), ('NEW HOPE', None, '39.13540', '-90.86460'), ('OLD MONROE', 250, '38.93130', '-90.74700'), ('OLNEY', None, '39.08400', '-91.24320'), ('SILEX', 206, '39.12630', '-91.05750'), ('TROY', 6737, '38.97690', '-90.97540'), ('TRUXTON', 96, '39.00220', '-91.24060'), ('WHITESIDE', 67, '39.18340', '-91.01650'), ('WINFIELD', 723, '38.99540', '-90.73980')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ051': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AMERICUS', None, '38.78030', '-91.56400'), ('BELLFLOWER', 427, '39.00380', '-91.35270'), ('BIG SPRING', None, '38.80000', '-91.48300'), ('BUELL', None, '39.03430', '-91.43890'), ('DANVILLE', None, '38.91070', '-91.53480'), ('HIGH HILL', 231, '38.87540', '-91.37560'), ('JONESBURG', 695, '38.85360', '-91.30650'), ('MCKITTRICK', 72, '38.73520', '-91.44270'), ('MIDDLETOWN', 199, '39.12850', '-91.41450'), ('MINEOLA', None, '38.88820', '-91.57160'), ('MONTGOMERY CITY', 2442, '38.97560', '-91.50510'), ('NEW FLORENCE', 764, '38.90820', '-91.44990'), ('RHINELAND', 176, '38.71860', '-91.51730'), ('WELLSVILLE', 1423, '39.07370', '-91.56790')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ050': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AUXVASSE', 901, '39.01740', '-91.89450'), ('CARRINGTON', None, '38.80820', '-92.05940'), ('FULTON', 12128, '38.85310', '-91.94880'), ('GUTHRIE', None, '38.75700', '-92.09650'), ('HATTON', None, '39.02420', '-92.02610'), ('HOLTS SUMMIT', 2935, '38.64470', '-92.11600'), ('KINGDOM CITY', 121, '38.94630', '-91.93720'), ('LAKE MYKEE', None, '38.67650', '-92.10080'), ('MOKANE', 188, '38.67440', '-91.87270'), ('NEW BLOOMFIELD', 599, '38.71940', '-92.08970'), ('PORTLAND', None, '38.71090', '-91.71780'), ('REFORM', None, '38.76530', '-91.77900'), ('SHAMROCK', None, '39.00440', '-91.69370'), ('STEEDMAN', None, '38.70470', '-91.81790'), ('TEBBETTS', None, '38.62060', '-91.96250'), ('WAINWRIGHT', None, '38.58370', '-92.06820'), ('WILLIAMSBURG', None, '38.91700', '-91.70000')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'MOZ057': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AURORA SPRINGS', None, '38.32460', '-92.58490'), ('BAGNELL', 86, '38.22660', '-92.60130'), ('BRUMLEY', 102, '38.08630', '-92.48660'), ('ELDON', 4895, '38.34830', '-92.58130'), ('ETTERVILLE', None, '38.36740', '-92.46990'), ('IBERIA', 605, '38.09020', '-92.29240'), ('KAISER', None, '38.13350', '-92.58960'), ('LAKE OZARK', 1489, '38.19850', '-92.63850'), ('LAKELAND', None, '38.21950', '-92.63090'), ('LAKEVIEW', None, '38.21380', '-92.62710'), ('MARYS HOME', None, '38.30550', '-92.35500'), ('OLEAN', 157, '38.41040', '-92.53010'), ('SAINT ELIZABETH', None, '38.25580', '-92.26770'), ('ST. ELIZABETH', 297, '38.25620', '-92.26600'), ('TUSCUMBIA', 218, '38.23290', '-92.45830'), ('ULMAN', None, '38.15300', '-92.44380')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOZ056': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BARNETT', 207, '38.37820', '-92.67430'), ('FLORENCE', None, '38.58880', '-92.97880'), ('GRAVOIS MILLS', 208, '38.30830', '-92.82520'), ('LAURIE', 663, '38.20360', '-92.82910'), ('ROCKY MOUNT', None, '38.27210', '-92.71930'), ('STOVER', 968, '38.44080', '-92.99160'), ('SYRACUSE', 172, '38.66990', '-92.87290'), ('VERSAILLES', 2565, '38.43130', '-92.84080')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOZ055': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRANDON', None, '38.50800', '-93.42270'), ('COLE CAMP', 1028, '38.46000', '-93.20250'), ('CROCKERVILLE', None, '38.44270', '-93.10410'), ('EDMONSON', None, '38.30940', '-93.22380'), ('EDWARDS', None, '38.13660', '-93.16930'), ('FRISTOE', None, '38.11660', '-93.27540'), ('HASTAIN', None, '38.21190', '-93.17600'), ('IONIA', 108, '38.50410', '-93.32380'), ('KNOBBY', None, '38.15250', '-93.09520'), ('LAKEVIEW HEIGHTS', None, '38.25880', '-93.15610'), ('LINCOLN', 1026, '38.39080', '-93.33440'), ('MORA', None, '38.52350', '-93.21550'), ('PALO PINTO', None, '38.38160', '-93.45520'), ('RACKET', None, '38.29330', '-93.49190'), ('WARSAW', 2070, '38.24300', '-93.38160'), ('WHITAKERVILLE', None, '38.21380', '-93.37070'), ('ZORA', None, '38.28630', '-93.09630')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOZ054': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLAIRSTOWN', 141, '38.55740', '-93.95740'), ('BROWNINGTON', 119, '38.24570', '-93.72250'), ('CALHOUN', 491, '38.46790', '-93.62450'), ('CLINTON', 9311, '38.37130', '-93.76810'), ('CREIGHTON', 322, '38.49670', '-94.07180'), ('DEEPWATER', 507, '38.25920', '-93.77380'), ('HARTWELL', 16, '38.43490', '-93.93390'), ('LA DUE', 39, '38.31280', '-93.87780'), ('MONTROSE', 417, '38.25940', '-93.98200'), ('TIGHTWAD', 63, '38.31110', '-93.54170'), ('URICH', 499, '38.45990', '-93.99900'), ('WINDSOR', 3087, '38.53340', '-93.52240')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOZ059': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BAY', None, '38.56290', '-91.47120'), ('BLAND', 565, '38.30060', '-91.63250'), ('CANAAN', None, '38.31220', '-91.55900'), ('DRAKE', None, '38.46700', '-91.46700'), ('GASCONADE', 267, '38.66940', '-91.56030'), ('HERMANN', 2674, '38.69910', '-91.43500'), ('MORRISON', 123, '38.67070', '-91.63280'), ('MOUNT STERLING', None, '38.46700', '-91.61700'), ('OWENSVILLE', 2500, '38.34760', '-91.49770'), ('ROSEBUD', 364, '38.38660', '-91.40300'), ('SWISS', None, '38.56290', '-91.47120')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ058': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BELLE', 1344, '38.28580', '-91.72020'), ('BRINKTOWN', None, '38.12660', '-92.07440'), ('VICHY', None, '38.11130', '-91.76020'), ('VIENNA', 628, '38.18660', '-91.94690')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'TXZ223': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHEAPSIDE', None, '29.28330', '-97.40000'), ('GONZALES', 7202, '29.50860', '-97.44750'), ('NIXON', 2186, '29.26930', '-97.76190'), ('PALMETO', None, '29.59000', '-97.60000'), ('SMILEY', 453, '29.27150', '-97.63750'), ('WAELDER', 947, '29.69380', '-97.29630')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'PAZ005': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRADFORD', 9175, '41.96050', '-78.64020'), ('CORYVILLE', None, '41.88000', '-78.39000'), ('CROSBY', None, '41.75000', '-78.37000'), ('CYCLONE', None, '41.82000', '-78.58000'), ('ELDRED', 858, '41.95670', '-78.38100'), ('KANE', 4126, '41.66300', '-78.80930'), ('KINZUA BRIDGE SP', None, '41.75000', '-78.57000'), ('LEWIS RUN', 577, '41.87080', '-78.66070'), ('LUDLOW', None, '41.73000', '-78.95000'), ('MARSHBURG', None, '41.85000', '-78.77000'), ('MOUNT JEWETT', 1070, '41.72470', '-78.64400'), ('NORWICH', None, '41.67000', '-78.35000'), ('PORT ALLEGANY', 2355, '41.81360', '-78.27770'), ('REW', None, '41.90000', '-78.50000'), ('SMETHPORT', 1684, '41.80740', '-78.44430'), ('WESTLINE', None, '41.77000', '-78.75000'), ('WETMORE', None, '41.69000', '-78.86000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ004': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEAR LAKE', 193, '41.99310', '-79.50100'), ('CHAPMAN SP', None, '41.77000', '-79.18000'), ('CLARENDON', 564, '41.78070', '-79.09640'), ('COLUMBUS', None, '41.95000', '-79.58000'), ('ENTERPRISE', None, '41.63000', '-79.59000'), ('GARLAND', None, '41.80000', '-79.43000'), ('GERMANY', None, '41.94000', '-79.01000'), ('GRAND VALLEY', None, '41.72000', '-79.54000'), ('KINZUA DAM', None, '41.84000', '-79.00000'), ('LOTTSVILLE', None, '41.93000', '-79.44000'), ('RUSSELL', None, '41.92000', '-79.14000'), ('SHEFFIELD', 1268, '41.69630', '-79.02830'), ('SPRING CREEK', None, '41.88000', '-79.51000'), ('SUGAR GROVE', 613, '41.98340', '-79.34000'), ('TIDIOUTE', 792, '41.68360', '-79.40210'), ('WARREN', 10259, '41.84370', '-79.14400'), ('YOUNGSVILLE', 1834, '41.85190', '-79.31570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ007': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CLARK', 633, '41.28530', '-80.40420'), ('FARRELL', 6050, '41.20960', '-80.49740'), ('FREDONIA', 652, '41.32220', '-80.25880'), ('GREENVILLE', 6380, '41.40600', '-80.38430'), ('GREENVILLE EAST', None, '41.40270', '-80.35900'), ('GROVE CITY', 8024, '41.15690', '-80.08880'), ('HERMITAGE', 16157, '41.22980', '-80.44290'), ('JACKSON CENTER', 221, '41.27320', '-80.13880'), ('JAMESTOWN', 636, '41.48490', '-80.43700'), ('MERCER', 2391, '41.22630', '-80.23660'), ('NEW LEBANON', 205, '41.41670', '-80.07590'), ('SANDY LAKE', 743, '41.34760', '-80.08460'), ('SHARON', 16328, '41.23420', '-80.49980'), ('SHARPSVILLE', 4500, '41.25890', '-80.48200'), ('SHEAKLEYVILLE', 164, '41.44470', '-80.20710'), ('STONEBORO', 1104, '41.33660', '-80.10970'), ('WEST MIDDLESEX', 929, '41.17410', '-80.45610'), ('WHEATLAND', 748, '41.19690', '-80.49600')], 'partOfState': 'NORTHWEST', 'wfo': 'PBZ'}, -'PAZ006': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AUSTIN', 623, '41.63600', '-78.08900'), ('CHERRY SPRINGS SP', None, '41.65000', '-77.84000'), ('COUDERSPORT', 2650, '41.77420', '-78.01430'), ('CROSS FORK', None, '41.48000', '-77.83000'), ('DENTON HILL SP', None, '41.76000', '-77.82000'), ('GALETON', 1325, '41.73320', '-77.64400'), ('GENESEE', None, '41.98000', '-77.90000'), ('HARRISON VALLEY', None, '41.92000', '-77.67000'), ('KEATING SUMMIT', None, '41.71000', '-78.17000'), ('LYMAN RUN SP', None, '41.72000', '-77.79000'), ('OLE BULL SP', None, '41.55000', '-77.71000'), ('OSWAYO', 159, '41.92010', '-78.02050'), ('ROULETTE', None, '41.77000', '-78.16000'), ('SHINGLEHOUSE', 1250, '41.96530', '-78.19150'), ('ULYSSES', 684, '41.90410', '-77.75520'), ('WHARTON', None, '41.55000', '-78.00000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ001': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AVONIA', 1331, '42.04410', '-80.27350'), ('ERIE', 103717, '42.12580', '-80.08660'), ('FAIRVIEW', 220, '42.02930', '-80.25540'), ('GIRARD', 3164, '42.00400', '-80.31940'), ('LAKE CITY', 2811, '42.01730', '-80.34690'), ('LAWRENCE PARK', 4048, '42.15190', '-80.02170'), ('NORTH EAST', 4601, '42.21330', '-79.83390'), ('NORTHWEST HARBORCREEK', 8658, '42.14620', '-79.99410'), ('WESLEYVILLE', 3617, '42.13700', '-80.01260')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'PAZ003': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLOOMING VALLEY', 378, '41.68030', '-80.04160'), ('CAMBRIDGE SPRINGS', 2363, '41.80170', '-80.06010'), ('COCHRANTON', 1148, '41.51850', '-80.04690'), ('CONNEAUT LAKE', 708, '41.60230', '-80.30920'), ('CONNEAUT LAKESHORE', 2502, '41.62410', '-80.30720'), ('CONNEAUTVILLE', 848, '41.75770', '-80.36810'), ('HYDETOWN', 605, '41.65160', '-79.72430'), ('LINESVILLE', 1155, '41.65680', '-80.42180'), ('MEADVILLE', 13685, '41.64620', '-80.14650'), ('SAEGERTOWN', 1071, '41.71330', '-80.13830'), ('SPARTANSBURG', 333, '41.82380', '-79.68250'), ('SPRINGBORO', 491, '41.80000', '-80.37120'), ('TITUSVILLE', 6146, '41.62670', '-79.67090'), ('TOWNVILLE', 306, '41.67960', '-79.88200'), ('VENANGO', 288, '41.77280', '-80.11200'), ('WOODCOCK', 146, '41.75360', '-80.08430')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'PAZ002': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALBION', 1607, '41.88960', '-80.36380'), ('CORRY', 6834, '41.92590', '-79.63730'), ('CRANESVILLE', 600, '41.90380', '-80.34470'), ('EDINBORO', 6950, '41.87470', '-80.12470'), ('ELGIN', 236, '41.91080', '-79.74340'), ('MCKEAN', 389, '41.99910', '-80.13830'), ('MILL VILLAGE', 412, '41.87770', '-79.97260'), ('PLATEA', 474, '41.95140', '-80.33030'), ('UNION CITY', 3463, '41.89610', '-79.84470'), ('WATERFORD', 1449, '41.94530', '-79.98540'), ('WATTSBURG', 378, '42.00280', '-79.80710')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'PAZ009': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('LYNCH', None, '41.60000', '-79.05000'), ('MARIENVILLE', None, '41.45000', '-79.08000'), ('TIONESTA', 615, '41.49600', '-79.44680')], 'partOfState': 'NORTHWEST', 'wfo': 'PBZ'}, -'PAZ008': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BARKEYVILLE', 237, '41.20020', '-79.98310'), ('CLINTONVILLE', 528, '41.20180', '-79.87610'), ('COOPERSTOWN', 460, '41.49960', '-79.87400'), ('CRANBERRY', None, '41.35000', '-79.72000'), ('EMLENTON', 784, '41.18070', '-79.70830'), ('FRANKLIN', 7212, '41.39200', '-79.83880'), ('HASSON HEIGHTS', 1495, '41.44880', '-79.67710'), ('KENNERDELL', None, '41.27000', '-79.85000'), ('OIL CITY', 11504, '41.42660', '-79.70430'), ('PLEASANTVILLE', 850, '41.59360', '-79.57930'), ('POLK', 1031, '41.36920', '-79.93010'), ('ROUSEVILLE', 472, '41.47100', '-79.68610'), ('SENECA', 966, '41.37570', '-79.70550'), ('SUGARCREEK', 5331, '41.43950', '-79.81150'), ('UTICA', 211, '41.43700', '-79.95760'), ('WESLEY', None, '41.23000', '-79.97000'), ('WOODLAND HEIGHTS', 1402, '41.40930', '-79.70180')], 'partOfState': 'NORTHWEST', 'wfo': 'PBZ'}, -'TXZ059': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('MENTONE', None, '31.71000', '-103.60000'), ('RED BLUFF LAKE', None, '31.94970', '-103.88190'), ('SLASH RANCH', None, '31.82880', '-103.60020')], 'partOfState': '', 'wfo': 'MAF'}, -'TXZ058': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BALMORHEA', 527, '30.98410', '-103.74350'), ('ORLA', None, '31.83000', '-103.91000'), ('PECOS', 9501, '31.41250', '-103.49560'), ('RED BLUFF', None, '31.90000', '-103.92000'), ('SARAGOSA', None, '31.03000', '-103.66000'), ('THE INTERSECTION OF U.S.', None, '31.64780', '-103.63080'), ('TOYAH', 100, '31.31950', '-103.79350'), ('TOYAH LAKE', None, '31.32280', '-103.41080'), ('TOYAVALE', None, '30.94000', '-103.79000'), ('VERHALEN', None, '31.13000', '-103.59000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXZ057': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('LOBO', None, '30.81000', '-104.75000'), ('PLATEAU', None, '31.06000', '-104.56000'), ('VAN HORN', 2435, '31.04000', '-104.83460')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'TXZ056': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CORNUDAS', None, '31.78330', '-105.46670'), ('DELL CITY', 413, '31.93520', '-105.19980'), ('FT HANCOCK', None, '31.29830', '-105.84470'), ('MCNARY', None, '31.24800', '-105.79600'), ('SALT FLAT', None, '31.74780', '-105.08580'), ('SIERRA BLANCA', 533, '31.17450', '-105.35670')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'TXZ055': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANTHONY', 3850, '31.99350', '-106.59160'), ('CANUTILLO', 5129, '31.91870', '-106.59940'), ('CLINT', 980, '31.59010', '-106.22840'), ('EL PASO', 563662, '31.84930', '-106.43750'), ('FABENS', 8043, '31.50800', '-106.15380'), ('FORT BLISS', 8264, '31.80750', '-106.42170'), ('HORIZON CITY', 5233, '31.67010', '-106.19130'), ('MONTANA VISTA', None, '31.84160', '-106.17530'), ('SAN ELIZARIO', 11046, '31.57840', '-106.26210'), ('SOCORRO', 27152, '31.63870', '-106.26970'), ('SPARKS', 2974, '31.67260', '-106.23930'), ('TORNILLO', 1609, '31.44530', '-106.08780'), ('VINTON', 1892, '31.96170', '-106.59570'), ('WESTWAY', 3829, '31.95870', '-106.57760')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'TXZ054': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLACKWELL', 360, '32.08670', '-100.31720'), ('CHAMPION', None, '32.35860', '-100.62000'), ('HYLTON', None, '32.12810', '-100.20250'), ('MARYNEAL', None, '32.23530', '-100.45000'), ('NOLAN', None, '32.27360', '-100.24220'), ('ROSCOE', 1378, '32.44580', '-100.53830'), ('SWEETWATER', 11415, '32.46900', '-100.40460'), ('WASTELLA', None, '32.51030', '-100.64920')], 'partOfState': 'NORTHWEST', 'wfo': 'SJT'}, -'TXZ053': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COLORADO CITY', 4281, '32.39970', '-100.85760'), ('CUTHBERT', None, '32.48000', '-101.03000'), ('LORAINE', 656, '32.40830', '-100.71220'), ('WESTBROOK', 203, '32.35690', '-101.01220')], 'partOfState': '', 'wfo': 'MAF'}, -'TXZ052': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIG SPRING', 25233, '32.25000', '-101.47890'), ('COAHOMA', 932, '32.29500', '-101.30630'), ('ELBOW', None, '32.16000', '-101.51000'), ('FAIRVIEW', 2644, '32.36000', '-101.52000'), ('FORSAN', 226, '32.11020', '-101.36610'), ('KNOTT', None, '32.40000', '-101.64000'), ('LOMAX', None, '32.12000', '-101.64000'), ('LUTHER', None, '32.45000', '-101.46000'), ('MIDWAY', 288, '32.28000', '-101.37000'), ('SAND SPRINGS', None, '32.28000', '-101.35000'), ('SOUTH HAVEN', None, '32.19000', '-101.48000'), ('VEALMOOR', None, '32.51000', '-101.57000'), ('VINCENT', None, '32.48000', '-101.23000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXZ051': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROWN', None, '32.43000', '-101.74000'), ('BUFORD', None, '32.48000', '-101.96000'), ('COURTNEY', None, '32.15000', '-101.91000'), ('FLOWER GROVE', None, '32.50000', '-101.89000'), ('GRADY', None, '32.31000', '-101.93000'), ('LENORAH', None, '32.31000', '-101.88000'), ('STANTON', 2556, '32.12930', '-101.78990'), ('TARZAN', None, '32.31000', '-101.98000'), ('THE INTERSECTION OF HWY 3', None, '32.31780', '-102.16190'), ('THREE LEAGUES', None, '32.50000', '-101.97000')], 'partOfState': '', 'wfo': 'MAF'}, -'TXZ050': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANDREWS', 9652, '32.32170', '-102.54950'), ('FLOREY', None, '32.45000', '-102.59000'), ('FRANKEL CITY', None, '32.39000', '-102.78000'), ('THE INTERSECTION OF SH 11', None, '32.18170', '-102.74890')], 'partOfState': '', 'wfo': 'MAF'}, -'FLZ073': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('FORTYMILE BEND', None, '25.76000', '-80.83000'), ('MAHOGANY HAMMOCK', None, '25.34000', '-80.84000'), ('PA-HAY OKEE OVERLOOK', None, '25.43000', '-80.79000'), ('ROYAL PALM RANGER STATION', None, '25.39000', '-80.61000'), ('SHARK VALLEY OBS TOWER', None, '25.66000', '-80.77000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'FLZ072': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('COCONUT CREEK', 43566, '26.27000', '-80.19000'), ('COOPER CITY', 27939, '26.06000', '-80.27000'), ('CORAL SPRINGS', 117549, '26.27000', '-80.27000'), ('DANIA BEACH', 20061, '26.06000', '-80.14000'), ('DAVIE', 75720, '26.08000', '-80.31000'), ('DEERFIELD BEACH', 64583, '26.31000', '-80.10000'), ('FORT LAUDERDALE', 152397, '26.12000', '-80.15000'), ('HALLANDALE', 34282, '25.99000', '-80.14000'), ('HOLLYWOOD', 139357, '26.03000', '-80.17000'), ('LAUDERDALE LAKES', 31705, '26.16000', '-80.20000'), ('LAUDERHILL', 57585, '26.15000', '-80.21000'), ('LIGHTHOUSE POINT', 10767, '26.28000', '-80.08500'), ('MARGATE', 53909, '26.25000', '-80.22000'), ('MIRAMAR', 72739, '25.98000', '-80.35000'), ('NORTH LAUDERDALE', 32264, '26.22000', '-80.23000'), ('NORTH PERRY AIRPORT', None, '26.00000', '-80.24000'), ('OAKLAND PARK', 30966, '26.17000', '-80.14000'), ('PARKLAND', 13835, '26.31000', '-80.24000'), ('PEMBROKE PINES', 137427, '26.01000', '-80.34000'), ('PLANTATION', 4168, '26.12000', '-80.25000'), ('POMPANO BEACH', 78191, '26.23000', '-80.12000'), ('SAWGRASS MILLS MALL', None, '26.15000', '-80.32000'), ('SUNRISE', 85779, '26.17000', '-80.28000'), ('SUNSHINE RANCHES', 1704, '26.04000', '-80.33000'), ('TAMARAC', 55588, '26.21000', '-80.27000'), ('WESTON', 49286, '26.11000', '-80.39000'), ('WILTON MANORS', 12697, '26.16000', '-80.13000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'FLZ071': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('MICCOSUKEE INDIAN RESERVA', None, '26.17000', '-80.86000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'FLZ070': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BUNKER HILL', None, '26.39000', '-81.38000'), ('CARNESTOWN', None, '25.91000', '-81.36000'), ('COPELAND', None, '25.96000', '-81.35000'), ('DADE-COLLIER TRAINING AIR', None, '25.86000', '-80.90000'), ('DEEP LAKE', None, '26.04000', '-81.34000'), ('EVERGLADES CITY', None, '25.86000', '-81.38500'), ('IMMOKALEE', 19763, '26.42000', '-81.44000'), ('JEROME', None, '26.00000', '-81.34000'), ('MILES CITY', None, '26.15000', '-81.34000'), ('MONROE STATION', None, '25.86000', '-81.10000'), ('NORTH BLOCKS GOLDEN GATE', None, '26.23000', '-81.54000'), ('OASIS RANGER STATION', None, '25.86000', '-81.03000'), ('OCHOPEE', None, '25.90000', '-81.30000'), ('PORT OF THE ISLANDS', None, '25.96000', '-81.51000'), ('ROCK ISLAND', 3076, '26.13000', '-81.34000'), ('SOUTH BLOCKS GOLDEN GATE', None, '26.06000', '-81.54000'), ('SUNNILAND', None, '26.27000', '-81.34000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFL'}, -'FLZ077': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('DUCK KEY', 443, '24.77000', '-80.90000'), ('KEY COLONY BEACH', 788, '24.72260', '-81.02330'), ('LAYTON', 186, '24.82220', '-80.81170'), ('MARATHON', 10255, '24.71190', '-81.08080')], 'partOfState': '', 'wfo': 'KEY'}, -'FLZ076': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CRAIG KEY', None, '24.84000', '-80.76000'), ('ISLAMORADA', None, '24.91830', '-80.63570'), ('KEY LARGO', 11886, '25.10610', '-80.44130'), ('LOWER MATECUMBE KEY', None, '24.86000', '-80.72000'), ('NORTH KEY LARGO', 1049, '25.26680', '-80.32360'), ('OCEAN REEF', None, '25.32000', '-80.28000'), ('ROCK HARBOR', None, '25.08000', '-80.46000'), ('ROUTE 1/CARD SOUND ROAD S', None, '25.17000', '-80.37000'), ('WINDLEY KEY', None, '24.95000', '-80.60000')], 'partOfState': '', 'wfo': 'KEY'}, -'FLZ075': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CHOKOLOSKEE', 404, '25.80000', '-81.36000'), ('FLAMINGO', None, '25.15000', '-80.94000'), ('LOOP ROAD EE CENTER', None, '25.75000', '-80.97000'), ('MIDDLE CAPE SABLE', None, '25.17000', '-81.14000'), ('NORTHWEST CAPE SABLE', None, '25.24000', '-81.17000'), ('PINECREST', 19055, '25.75000', '-80.94000'), ('WILDERNESS WATERWAY NORTH', None, '25.65000', '-81.16000'), ('WILDERNESS WATERWAY SOUTH', None, '25.44000', '-81.06000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFL'}, -'FLZ074': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AVENTURA', 25267, '25.96000', '-80.14000'), ('CAROL CITY', 59443, '25.94000', '-80.26000'), ('CORAL GABLES', 42249, '25.73000', '-80.27000'), ('CORAL WAY VILLAGE', None, '25.73000', '-80.32000'), ('COUNTRY WALK', 10653, '25.63000', '-80.43000'), ('CUTLER RIDGE', 24781, '25.60000', '-80.36000'), ('DORAL', 20438, '25.84000', '-80.36000'), ('FLORIDA CITY', 7843, '25.45500', '-80.48000'), ('GOULDS', 7453, '25.56000', '-80.40000'), ('HIALEAH', 226419, '25.86000', '-80.29000'), ('HIALEAH GARDENS', 19297, '25.87000', '-80.34000'), ('HOMESTEAD', 31909, '25.47500', '-80.47000'), ('HOWARD', None, '25.64000', '-80.35000'), ('INLIKITA', None, '25.60000', '-80.47000'), ('KENDALL', 75226, '25.68000', '-80.32000'), ('KENDALL LAKES', None, '25.71000', '-80.42000'), ('KEY BISCAYNE', 10507, '25.69000', '-80.16000'), ('LIBERTY CITY', None, '25.83000', '-80.22000'), ('MEDLEY', 1098, '25.87000', '-80.36000'), ('MIAMI', 362470, '25.77000', '-80.20000'), ('MIAMI BEACH', 87933, '25.81000', '-80.13000'), ('MIAMI INTERNATIONAL AIRPO', None, '25.80000', '-80.29000'), ('MIAMI LAKES', 22676, '25.91000', '-80.31000'), ('MIAMI SHORES', 10380, '25.86500', '-80.19000'), ('MIAMI SPRINGS', 13712, '25.82000', '-80.29000'), ('NARANJA', 4034, '25.52000', '-80.43000'), ('NORTH MIAMI', 59880, '25.89400', '-80.18000'), ('NORTH MIAMI BEACH', 40786, '25.93000', '-80.16000'), ('OPA-LOCKA', 14951, '25.90000', '-80.26000'), ('PENNSUCO', None, '25.90000', '-80.38000'), ('PERRINE', None, '25.62000', '-80.31000'), ('PRINCETON', 10090, '25.52000', '-80.38000'), ('REDLAND', None, '25.52000', '-80.51000'), ('SOUTH MIAMI', 10741, '25.71000', '-80.30000'), ('SWEETWATER', 14226, '25.76500', '-80.37000'), ('WESTWOOD LAKES', 12005, '25.72000', '-80.37000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MFL'}, -'TXZ095': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLOSSOM', 1439, '33.66200', '-95.38220'), ('DEPORT', 718, '33.52910', '-95.31750'), ('PARIS', 25898, '33.66660', '-95.54760'), ('ROXTON', 694, '33.54550', '-95.72470'), ('SUN VALLEY', 51, '33.67250', '-95.42880'), ('TOCO', 89, '33.65340', '-95.64910')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'MSZ080': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BAY ST. LOUIS', 8209, '30.31020', '-89.33000'), ('DIAMONDHEAD', 5912, '30.38360', '-89.36860'), ('KILN', 2040, '30.41650', '-89.43420'), ('PEARLINGTON', 1684, '30.24840', '-89.60120'), ('WAVELAND', 6674, '30.28630', '-89.38450')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'FLZ078': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAHIA HONDA KEY', None, '24.66000', '-81.26000'), ('BIG COPPITT KEY', 2595, '24.59620', '-81.66030'), ('BIG PINE KEY', 5032, '24.68690', '-81.36610'), ('BIG TORCH KEY', None, '24.73000', '-81.44000'), ('BOCA CHICA', None, '24.59000', '-81.70000'), ('CUDJOE KEY', 1695, '24.67100', '-81.49850'), ('KEY WEST', 25478, '24.56280', '-81.77520'), ('LITTLE TORCH KEY', None, '24.67000', '-81.39000'), ('NO NAME KEY', None, '24.70000', '-81.32000'), ('RAMROD KEY', None, '24.66000', '-81.41000'), ('SUGARLOAF KEY', None, '24.63000', '-81.55000'), ('SUMMERLAND KEY', None, '24.66000', '-81.45000'), ('UPPER SUGARLOAF KEY', None, '24.68000', '-81.54000')], 'partOfState': '', 'wfo': 'KEY'}, -'MSZ081': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BILOXI', 50644, '30.41580', '-88.93190'), ('GULFPORT', 71127, '30.38610', '-89.06770'), ('LONG BEACH', 17320, '30.36200', '-89.16730'), ('LYMAN', 1081, '30.50120', '-89.13080'), ('PASS CHRISTIAN', 6579, '30.31880', '-89.24170'), ('SAUCIER', 1303, '30.63570', '-89.13500')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'MTZ052': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BASIN', 255, '46.27140', '-112.26280'), ('BOULDER', 1300, '46.23610', '-112.11950'), ('CARDWELL', 40, '45.86000', '-111.95170'), ('CLANCY', 1406, '46.46530', '-111.98560'), ('CORBIN', None, '46.38060', '-112.06110'), ('MONTANA CITY', 2094, '46.53780', '-111.93190'), ('WHITEHALL', 1044, '45.87140', '-112.09590'), ('WICKES', None, '46.34970', '-112.10250')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'OHZ058': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANTRIM', None, '40.12000', '-81.35000'), ('BYESVILLE', 2574, '39.96800', '-81.54260'), ('CAMBRIDGE', 11520, '40.02500', '-81.58690'), ('CUMBERLAND', 402, '39.85230', '-81.65860'), ('FAIRVIEW', 81, '40.05890', '-81.23410'), ('KIMBOLTON', 190, '40.15400', '-81.57430'), ('LORE CITY', 305, '39.98400', '-81.45960'), ('OLD WASHINGTON', 265, '40.03740', '-81.44440'), ('PLEASANT CITY', 439, '39.90340', '-81.54470'), ('QUAKER CITY', 563, '39.96910', '-81.29640'), ('SALESVILLE', 154, '39.97340', '-81.33700'), ('SENECAVILLE', 453, '39.93450', '-81.45990')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ059': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BARNESVILLE', 4225, '39.98900', '-81.17350'), ('BELLAIRE', 4892, '40.01690', '-80.74650'), ('BELMONT', 532, '40.02800', '-81.04120'), ('BETHESDA', 1413, '40.01610', '-81.07290'), ('BRIDGEPORT', 2186, '40.06650', '-80.74680'), ('BROOKSIDE', 644, '40.07120', '-80.76180'), ('FLUSHING', 900, '40.14850', '-81.06550'), ('HOLLOWAY', 345, '40.16050', '-81.12640'), ('MARTINS FERRY', 7226, '40.10130', '-80.72390'), ('MORRISTOWN', 299, '40.06280', '-81.07150'), ('NEFFS', 1138, '40.02920', '-80.81560'), ('POWHATAN POINT', 1744, '39.86110', '-80.80940'), ('SHADYSIDE', 3675, '39.97130', '-80.75090'), ('ST. CLAIRSVILLE', 5057, '40.07810', '-80.89900'), ('WILSON', 118, '39.85820', '-81.06780'), ('YORKVILLE', 1230, '40.15250', '-80.70810')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ056': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALEXANDRIA', 85, '40.08970', '-82.61310'), ('BEECHWOOD TRAILS', 2258, '40.02370', '-82.65090'), ('BUCKEYE LAKE', 3049, '39.93700', '-82.47920'), ('GRANVILLE', 3167, '40.07100', '-82.50160'), ('GRANVILLE SOUTH', 1194, '40.05290', '-82.54020'), ('GRATIOT', 187, '39.95140', '-82.21730'), ('HANOVER', 885, '40.07920', '-82.27050'), ('HARBOR HILLS', 1303, '39.93670', '-82.43520'), ('HARTFORD', 412, '40.23940', '-82.68770'), ('HEATH', 8527, '40.02690', '-82.43740'), ('HEBRON', 2034, '39.96260', '-82.49160'), ('JOHNSTOWN', 3440, '40.15110', '-82.68770'), ('KIRKERSVILLE', 520, '39.95030', '-82.59800'), ('NEWARK', 46279, '40.06770', '-82.42340'), ('PATASKALA', 10249, '40.00070', '-82.67350'), ('ST. LOUISVILLE', 346, '40.17150', '-82.41900'), ('SUMMIT STATION', None, '40.00480', '-82.75080'), ('UTICA', 2130, '40.23340', '-82.44360')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ057': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADAMSVILLE', 127, '40.06880', '-81.88310'), ('DRESDEN', 1423, '40.12180', '-82.01110'), ('DUNCAN FALLS', None, '39.87000', '-81.92000'), ('FRAZEYSBURG', 1201, '40.11630', '-82.11870'), ('FULTONHAM', 151, '39.85610', '-82.14290'), ('NEW CONCORD', 2651, '39.99740', '-81.73580'), ('NORTH ZANESVILLE', 3013, '39.98220', '-82.00010'), ('NORWICH', 113, '39.98470', '-81.79260'), ('PHILO', 769, '39.86120', '-81.90930'), ('PLEASANT GROVE', 2016, '39.94960', '-81.95960'), ('ROSEVILLE', 1936, '39.80710', '-82.07360'), ('SOUTH ZANESVILLE', 1936, '39.90340', '-82.01970'), ('ZANESVILLE', 25586, '39.95240', '-82.01200')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ054': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHOCTAW LAKE', 1562, '39.96010', '-83.48510'), ('JEFFERSON', 3572, '39.94120', '-83.29440'), ('LONDON', 8771, '39.88920', '-83.44090'), ('MIDWAY', 274, '39.73270', '-83.47630'), ('MOUNT STERLING', 1865, '39.71950', '-83.26810'), ('PLAIN CITY', 2832, '40.10680', '-83.27000'), ('SOUTH SOLON', 405, '39.73710', '-83.61350')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ055': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEXLEY', 13203, '39.96460', '-82.93450'), ('BLACKLICK ESTATES', 9518, '39.90490', '-82.86450'), ('BRICE', 70, '39.91660', '-82.83200'), ('CANAL WINCHESTER', 4478, '39.84690', '-82.82140'), ('COLUMBUS', 711470, '39.98890', '-82.98740'), ('DUBLIN', 31392, '40.11840', '-83.13290'), ('GAHANNA', 32636, '40.02500', '-82.87500'), ('GRANDVIEW HEIGHTS', 6695, '39.97950', '-83.03990'), ('GROVE CITY', 27075, '39.87310', '-83.07470'), ('GROVEPORT', 3865, '39.86160', '-82.89730'), ('HARRISBURG', 332, '39.81080', '-83.17150'), ('HILLIARD', 24230, '40.03800', '-83.14260'), ('HUBER RIDGE', 4883, '40.09020', '-82.91840'), ('LAKE DARBY', 3727, '39.95730', '-83.22890'), ('LINCOLN VILLAGE', 9482, '39.95470', '-83.13090'), ('LOCKBOURNE', 280, '39.80900', '-82.97050'), ('MARBLE CLIFF', 646, '39.98510', '-83.06050'), ('MINERVA PARK', 1288, '40.07760', '-82.94360'), ('NEW ALBANY', 3711, '40.07960', '-82.80870'), ('NEW ROME', 60, '39.95160', '-83.14130'), ('OBETZ', 3977, '39.87670', '-82.94060'), ('ORIENT', 269, '39.80560', '-83.15150'), ('REYNOLDSBURG', 32069, '39.95550', '-82.79920'), ('RIVERLEA', 499, '40.08040', '-83.02580'), ('UPPER ARLINGTON', 33686, '40.02660', '-83.07050'), ('URBANCREST', 868, '39.89940', '-83.08900'), ('VALLEYVIEW', 601, '39.96480', '-83.07290'), ('WESTERVILLE', 35318, '40.12120', '-82.91760'), ('WHITEHALL', 19201, '39.96860', '-82.88370'), ('WORTHINGTON', 14125, '40.09770', '-83.02090')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ052': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHRISTIANSBURG', 553, '40.05680', '-84.02520'), ('MECHANICSBURG', 1744, '40.07440', '-83.55780'), ('MUTUAL', 132, '40.07910', '-83.63730'), ('NORTH LEWISBURG', 1588, '40.22380', '-83.55780'), ('ST. PARIS', 1998, '40.12790', '-83.95800'), ('URBANA', 11613, '40.10880', '-83.75170'), ('WOODSTOCK', 317, '40.17350', '-83.52790')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ053': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CATAWBA', 312, '39.99980', '-83.62230'), ('CRYSTAL LAKES', 1411, '39.88490', '-84.02540'), ('DONNELSVILLE', 293, '39.91830', '-83.94650'), ('ENON', 2638, '39.86550', '-83.93550'), ('GREEN MEADOWS', 2318, '39.86870', '-83.94430'), ('HOLIDAY VALLEY', 1712, '39.84770', '-83.96650'), ('LAWRENCEVILLE', 302, '39.98500', '-83.87480'), ('NEW CARLISLE', 5735, '39.94350', '-84.02810'), ('NORTH HAMPTON', 370, '39.99050', '-83.94170'), ('PARK LAYNE', 4519, '39.88650', '-84.03960'), ('SOUTH CHARLESTON', 1850, '39.82470', '-83.64460'), ('SOUTH VIENNA', 469, '39.92870', '-83.61180'), ('SPRINGFIELD', 65358, '39.92680', '-83.79660'), ('TREMONT CITY', 349, '40.01470', '-83.83610')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ050': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMSTERDAM', 568, '40.47140', '-80.92140'), ('BERGHOLZ', 769, '40.52110', '-80.88470'), ('BLOOMINGDALE', 221, '40.34180', '-80.81750'), ('BRENTWOOD', None, '40.35310', '-80.73070'), ('BRILLIANT', None, '40.26850', '-80.62490'), ('IRONDALE', 418, '40.57270', '-80.72600'), ('MINGO JUNCTION', 3631, '40.32060', '-80.61360'), ('MOUNT PLEASANT', 535, '40.17590', '-80.80000'), ('NEW ALEXANDRIA', 222, '40.29120', '-80.67530'), ('RAYLAND', 434, '40.18340', '-80.69140'), ('RICHMOND', 471, '40.43280', '-80.77210'), ('SMITHFIELD', 867, '40.27260', '-80.77680'), ('STEUBENVILLE', 19015, '40.36700', '-80.64660'), ('TILTONSVILLE', 1329, '40.17250', '-80.69770'), ('WINTERSVILLE', 4067, '40.37900', '-80.70660')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ051': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CASSTOWN', 322, '40.05260', '-84.12880'), ('COVINGTON', 2559, '40.11910', '-84.35090'), ('FLETCHER', 510, '40.14440', '-84.11180'), ('LAURA', 487, '39.99360', '-84.40910'), ('LUDLOW FALLS', 210, '39.99840', '-84.33910'), ('PIQUA', 20738, '40.14660', '-84.25100'), ('PLEASANT HILL', 1134, '40.05130', '-84.34490'), ('POTSDAM', 203, '39.96550', '-84.41210'), ('TIPP CITY', 9221, '39.96380', '-84.18380'), ('TROY', 21999, '40.04440', '-84.21920'), ('WEST MILTON', 4645, '39.95280', '-84.32510')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'ILZ065': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AVENA', None, '39.00750', '-88.92800'), ('BAYLE CITY', None, '39.11400', '-89.16630'), ('BINGHAM', 117, '39.11290', '-89.21170'), ('BROWNSTOWN', 705, '38.99630', '-88.95360'), ('FARINA', 558, '38.83170', '-88.77780'), ('HAGERSTOWN', None, '38.94340', '-89.16850'), ('LA CLEDE', None, '38.87970', '-88.71540'), ('LOOGOOTEE', None, '38.90470', '-88.85370'), ('PITTSBURG', 575, '38.87150', '-89.21180'), ('RAMSEY', 1056, '39.14380', '-89.10990'), ('SHAFTER', None, '39.01360', '-89.18510'), ('SHOBONIER', None, '38.86940', '-89.08870'), ('ST. ELMO', 1456, '39.02470', '-88.85320'), ('ST. JAMES', None, '38.95440', '-88.85120'), ('ST. PAUL', None, '38.85280', '-88.95340'), ('ST. PETER', 386, '38.86740', '-88.85180'), ('VANDALIA', 6975, '38.98100', '-89.10140'), ('WRIGHTS CORNER', None, '39.13300', '-88.86700')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ILZ064': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BEAVER CREEK', None, '38.76760', '-89.39370'), ('DUDLEYVILLE', None, '38.82390', '-89.41820'), ('GREENVILLE', 6955, '38.88930', '-89.40160'), ('MULBERRY GROVE', 671, '38.92440', '-89.26730'), ('OLD RIPLEY', 127, '38.89230', '-89.57300'), ('PIERRON', 653, '38.77890', '-89.56630'), ('PLEASANT MOUND', None, '38.86310', '-89.29040'), ('POCAHONTAS', 727, '38.82450', '-89.53900'), ('RENO', None, '38.96700', '-89.51700'), ('SHILOH HILL', None, '38.92530', '-89.62110'), ('SMITHBORO', 200, '38.89490', '-89.34110'), ('SORENTO', 601, '39.00000', '-89.57270'), ('TAMALCO', None, '38.77090', '-89.29160'), ('WOBURN', None, '38.95870', '-89.34660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ILZ067': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BOGOTA', None, '38.91670', '-88.23330'), ('GILA', None, '39.11670', '-88.26670'), ('HIDALGO', 123, '39.15660', '-88.15070'), ('LATONA', None, '38.95000', '-88.31670'), ('NEWTON', 3069, '38.98810', '-88.16330'), ('ROSE HILL', 79, '39.10410', '-88.15120'), ('STE. MARIE', 261, '38.93200', '-88.02660'), ('WEST LIBERTY', None, '38.86670', '-88.08530'), ('WHEELER', 119, '39.04280', '-88.31860'), ('WILLOW HILL', 250, '38.99630', '-88.02130'), ('YALE', 97, '39.12010', '-88.02430')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILX'}, -'ILZ066': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALTAMONT', 2283, '39.05800', '-88.74850'), ('BEECHER CITY', 493, '39.18650', '-88.78750'), ('DIETERICH', 591, '39.05960', '-88.38210'), ('EDGEWOOD', 527, '38.92180', '-88.66410'), ('EFFINGHAM', 12384, '39.11960', '-88.55090'), ('ELLIOTSTOWN', None, '39.00000', '-88.45000'), ('HEARTVILLE', None, '39.06670', '-88.55000'), ('MASON', 396, '38.95310', '-88.62540'), ('MOCCASIN', None, '39.13330', '-88.75000'), ('MONTROSE', 257, '39.16570', '-88.37830'), ('SHUMWAY', 217, '39.18320', '-88.65300'), ('TEUTOPOLIS', 1559, '39.13210', '-88.47840'), ('WATSON', 729, '39.02560', '-88.56950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ILX'}, -'ILZ061': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CLARKSBURG', None, '39.34000', '-88.75000'), ('COWDEN', 612, '39.24890', '-88.85880'), ('FINDLAY', 723, '39.52110', '-88.75430'), ('HERRICK', 524, '39.21920', '-88.98530'), ('LAKEWOOD', 2337, '39.32500', '-88.90000'), ('MOWEAQUA', 1923, '39.62540', '-89.01770'), ('OCONEE', 202, '39.28650', '-89.10620'), ('SHELBYVILLE', 4971, '39.40710', '-88.80400'), ('SIGEL', 386, '39.22620', '-88.49510'), ('STEWARDSON', 747, '39.26420', '-88.62990'), ('STRASBURG', 603, '39.35060', '-88.62320'), ('TOWER HILL', 609, '39.38680', '-88.95960'), ('TROWBRIDGE', None, '39.32100', '-88.53330'), ('WESTERVELT', None, '39.46670', '-88.86670'), ('WINDSOR', 1125, '39.43810', '-88.59580')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ060': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BUTLER', 197, '39.19790', '-89.53400'), ('CHAPMAN', None, '39.10570', '-89.31700'), ('COALTON', 307, '39.28460', '-89.30450'), ('COFFEEN', 709, '39.08890', '-89.39050'), ('DONNELLSON', 243, '39.03020', '-89.47460'), ('FARMERSVILLE', 768, '39.44420', '-89.65300'), ('FILLMORE', 362, '39.11570', '-89.27930'), ('HARVEL', 235, '39.35700', '-89.54550'), ('HILLSBORO', 4359, '39.16310', '-89.48440'), ('HONEY BEND', None, '39.25540', '-89.62570'), ('IRVING', 2484, '39.20490', '-89.40600'), ('LITCHFIELD', 6815, '39.17590', '-89.65600'), ('NOKOMIS', 2389, '39.30040', '-89.28530'), ('OHLMAN', 0, '39.34550', '-89.21830'), ('PANAMA', 323, '39.02870', '-89.52520'), ('RAYMOND', 927, '39.32020', '-89.57370'), ('TAYLOR SPRINGS', 583, '39.13070', '-89.49520'), ('VAN BURENSBURG', None, '39.03610', '-89.27950'), ('WAGGONER', 245, '39.37820', '-89.65230'), ('WALSHVILLE', 89, '39.06940', '-89.61950'), ('WENONAH', 44, '39.32010', '-89.28930'), ('WHITE OAK', None, '39.50980', '-89.57120'), ('WITT', 991, '39.25580', '-89.34900')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ILZ063': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CASEY', 2942, '39.30260', '-87.98930'), ('CLARKSVILLE', None, '39.45000', '-87.80000'), ('DENNISON', None, '39.46670', '-87.58330'), ('MARSHALL', 3771, '39.39620', '-87.69020'), ('MARTINSVILLE', 1225, '39.33620', '-87.88020'), ('ORANGE', None, '39.20000', '-87.84000'), ('WEST UNION', None, '39.21670', '-87.66670'), ('WESTFIELD', 678, '39.45550', '-87.99690')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILZ062': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('GREENUP', 1532, '39.24780', '-88.15990'), ('HAZEL DELL', None, '39.20000', '-88.05000'), ('JANESVILLE', None, '39.36670', '-88.25000'), ('JEWETT', 232, '39.20770', '-88.24280'), ('NEOGA', 1854, '39.32160', '-88.45150'), ('TOLEDO', 1166, '39.27430', '-88.24270'), ('UNION CENTER', None, '39.33620', '-88.06670'), ('WOODBURY', None, '39.20000', '-88.31670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'NDZ037': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BUCHANAN', 77, '47.06300', '-98.82920'), ('CLEVELAND', 112, '46.89090', '-99.12000'), ('COURTENAY', 53, '47.22450', '-98.56870'), ('EDMUNDS', None, '47.25000', '-98.96670'), ('ELDRIDGE', None, '46.90000', '-98.83330'), ('JAMESTOWN', 15527, '46.91010', '-98.69820'), ('KENSAL', 161, '47.30030', '-98.73250'), ('MEDINA', 335, '46.89510', '-99.30000'), ('MILLARTON', None, '46.66670', '-98.75000'), ('MONTPELIER', 103, '46.69880', '-98.58700'), ('PINGREE', 66, '47.16330', '-98.90900'), ('SPIRITWOOD', None, '46.93330', '-98.50000'), ('SPIRITWOOD LAKE', 72, '47.07470', '-98.58720'), ('STREETER', 172, '46.65690', '-99.35710'), ('SYDNEY', None, '46.73330', '-98.76670'), ('WINDSOR', None, '46.90000', '-99.03330'), ('WOODWORTH', 80, '47.14220', '-99.30390'), ('YPSILANTI', None, '46.78330', '-98.55000')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'NDZ036': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('CRYSTAL SPRINGS', None, '46.88330', '-99.46670'), ('DAWSON', 75, '46.86810', '-99.75210'), ('LAKE WILLIAMS', None, '47.13330', '-99.60000'), ('PETTIBONE', 88, '47.11780', '-99.52010'), ('ROBINSON', 71, '47.14310', '-99.78020'), ('STEELE', 761, '46.85610', '-99.91620'), ('TAPPEN', 210, '46.87290', '-99.62340'), ('TUTTLE', 106, '47.14410', '-99.99360')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDZ035': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ARENA', None, '47.13330', '-100.16670'), ('BISMARCK', 55532, '46.80550', '-100.76730'), ('DRISCOLL', None, '46.85000', '-100.13330'), ('LINCOLN', 1730, '46.76510', '-100.70090'), ('MCKENZIE', None, '46.81670', '-100.40000'), ('MENOKEN', None, '46.81670', '-100.51670'), ('MOFFIT', None, '46.68330', '-100.28330'), ('REGAN', 43, '47.15730', '-100.52750'), ('STERLING', None, '46.81670', '-100.28330'), ('WING', 124, '47.14260', '-100.28220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDZ034': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALMONT', 89, '46.72780', '-101.50280'), ('FLASHER', 285, '46.45210', '-101.23200'), ('FORT RICE', None, '46.51670', '-100.58330'), ('GLEN ULLIN', 865, '46.81240', '-101.83210'), ('HEBRON', 803, '46.90280', '-102.04410'), ('HUFF', None, '46.61670', '-100.65000'), ('MANDAN', 16718, '46.82930', '-100.88780'), ('NEW SALEM', 938, '46.84280', '-101.41740'), ('ST. ANTHONY', None, '46.61670', '-100.91670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'ILZ069': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALBERS', 878, '38.54480', '-89.61510'), ('AVISTON', 1231, '38.60780', '-89.60620'), ('BARTELSO', 593, '38.53650', '-89.46840'), ('BECKEMEYER', 1043, '38.60510', '-89.43400'), ('BOULDER', None, '38.70000', '-89.21700'), ('BREESE', 4048, '38.61100', '-89.52220'), ('CARLYLE', 3406, '38.61900', '-89.37220'), ('DAMIANSVILLE', 368, '38.50950', '-89.62420'), ('FERRIN', None, '38.60950', '-89.23340'), ('GERMANTOWN', 1118, '38.55230', '-89.53760'), ('HOFFMAN', 460, '38.53840', '-89.26290'), ('HUEY', 196, '38.60540', '-89.29140'), ('JAMESTOWN', None, '38.73400', '-89.51450'), ('KEYESPORT', 481, '38.74070', '-89.27700'), ('NEW BADEN', 3001, '38.53640', '-89.69770'), ('NEW MEMPHIS', None, '38.47930', '-89.67840'), ('POSEY', None, '38.53700', '-89.35260'), ('SHATTUC', None, '38.61070', '-89.19290'), ('ST. ROSE', None, '38.68300', '-89.55000'), ('STOLLETOWN', None, '38.69340', '-89.44680'), ('TRENTON', 2610, '38.60670', '-89.68160')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'ILZ068': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ANNAPOLIS', None, '39.15000', '-87.81670'), ('BELLAIR', None, '39.15000', '-87.95000'), ('EATON', None, '39.08330', '-87.80000'), ('FLAT ROCK', 415, '38.90440', '-87.67250'), ('HARDINVILLE', None, '38.91670', '-87.83330'), ('HUTSONVILLE', 568, '39.10870', '-87.66060'), ('NEW HEBRON', None, '38.95000', '-87.74000'), ('OBLONG', 1580, '39.00220', '-87.90840'), ('PALESTINE', 1366, '39.00220', '-87.61210'), ('ROBINSON', 6822, '39.00790', '-87.74050'), ('STOY', 119, '38.99680', '-87.83340'), ('WEST YORK', None, '39.17000', '-87.67250')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'NDZ031': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BEACH', 1116, '46.91390', '-104.00770'), ('GOLVA', 106, '46.73460', '-103.98260'), ('SENTINEL BUTTE', 62, '46.91940', '-103.84000'), ('TROTTERS', None, '47.31670', '-103.91670')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDZ030': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BLANCHARD', None, '47.34580', '-97.21920'), ('BUXTON', 350, '47.60220', '-97.09920'), ('CALEDONIA', None, '47.45750', '-96.88530'), ('CLIFFORD', 51, '47.34830', '-97.40930'), ('CUMMINGS', None, '47.51470', '-97.07920'), ('GALESBURG', 157, '47.27060', '-97.40850'), ('HATTON', 707, '47.63600', '-97.45760'), ('HILLSBORO', 1563, '47.40280', '-97.06140'), ('KELSO', None, '47.32310', '-97.02920'), ('MAYVILLE', 1953, '47.50010', '-97.32820'), ('PORTLAND', 604, '47.49910', '-97.36890'), ('REYNOLDS', 350, '47.67110', '-97.10840'), ('ROSEVILLE', None, '47.44030', '-97.38860')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'ORZ021': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BANDON', 2833, '43.11590', '-124.41460'), ('CHARLESTON', None, '43.34030', '-124.32890'), ('COOS BAY', 15374, '43.37840', '-124.23100'), ('COQUILLE', 4184, '43.18130', '-124.18170'), ('DENMARK', None, '42.89080', '-124.46140'), ('LAKESIDE', 1371, '43.57900', '-124.17320'), ('LANGLOIS', None, '42.92360', '-124.44970'), ('MYRTLE POINT', 2451, '43.06220', '-124.13190'), ('NORTH BEND', 9544, '43.40610', '-124.23620'), ('PORT ORFORD', 1153, '42.74990', '-124.49550'), ('POWERS', 734, '42.88540', '-124.07220'), ('REEDSPORT', 4378, '43.69900', '-124.11090'), ('SIXES', None, '42.82030', '-124.48190')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ORZ023': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('AZALEA', None, '42.79560', '-123.25920'), ('CAMAS VALLEY', None, '43.03440', '-123.67280'), ('CANYONVILLE', 1293, '42.92870', '-123.27830'), ('CURTAIN', None, '43.72250', '-123.21080'), ('DRAIN', 1021, '43.66210', '-123.31410'), ('ELKTON', 147, '43.63730', '-123.56600'), ('GLENDALE', 855, '42.73760', '-123.42840'), ('GREEN', 6174, '43.14920', '-123.38220'), ('MYRTLE CREEK', 3419, '43.02580', '-123.28260'), ('OAKLAND', 954, '43.42300', '-123.29580'), ('RIDDLE', 1014, '42.95370', '-123.36610'), ('ROSEBURG', 20017, '43.21970', '-123.35760'), ('SCOTTSBURG', None, '43.65420', '-123.81560'), ('SITKUM', None, '43.14830', '-123.86000'), ('SUTHERLIN', 6669, '43.38860', '-123.31500'), ('TILLER', None, '42.92860', '-122.95000'), ('TRI-CITY', 3519, '42.98470', '-123.31050'), ('UMPQUA', None, '43.36560', '-123.46720'), ('WINCHESTER', None, '43.28030', '-123.35250'), ('WINSTON', 4613, '43.12040', '-123.41140'), ('YONCALLA', 1052, '43.60020', '-123.28540')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ORZ022': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BROOKINGS', 5447, '42.05980', '-124.29080'), ('GOLD BEACH', 1897, '42.41290', '-124.41850'), ('HARBOR', 2622, '42.03910', '-124.25470'), ('NESIKA BEACH', None, '42.50640', '-124.41220'), ('OPHIR', None, '42.56330', '-124.38170'), ('PISTOL RIVER', None, '42.27720', '-124.39360')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ORZ025': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('STEAMBOAT', None, '43.34560', '-122.73440'), ('TOKETEE FALLS', None, '43.27580', '-122.44970')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ORZ024': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('AGNESS', None, '42.55670', '-124.06780'), ('CAVE JUNCTION', 1363, '42.16730', '-123.64470'), ('GALICE', None, '42.56970', '-123.59610'), ('GRANTS PASS', 23003, '42.44120', '-123.32430'), ('KERBY', None, '42.19440', '-123.65060'), ('MERLIN', None, '42.51750', '-123.41860'), ('MURPHY', None, '42.34780', '-123.33220'), ('OBRIEN', None, '42.06750', '-123.70190'), ('PROVOLT', None, '42.28330', '-123.23330'), ('SELMA', None, '42.27920', '-123.61470'), ('SUNNY VALLEY', None, '42.63920', '-123.37440'), ('TAKILMA', None, '42.05170', '-123.61830'), ('WILDERVILLE', None, '42.38250', '-123.46580'), ('WILLIAMS', None, '42.21890', '-123.27280'), ('WOLF CREEK', None, '42.69560', '-123.39420')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'WYZ023': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('AFTON', 1818, '42.72630', '-110.92840'), ('ALPINE', 550, '43.16080', '-111.01360'), ('AUBURN', 276, '42.79000', '-111.00000'), ('BEDFORD', 169, '42.90000', '-110.93000'), ('ETNA', 123, '43.03000', '-111.01000'), ('FAIRVIEW', 277, '42.69000', '-110.98000'), ('GROVER', 137, '42.69000', '-110.93000'), ('SMOOT', 182, '42.62000', '-110.92000'), ('THAYNE', 341, '42.91980', '-111.00110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RIW'}, -'ORZ026': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('APPLEGATE', None, '42.25720', '-123.16720'), ('ASHLAND', 19522, '42.19020', '-122.69960'), ('BUTTE FALLS', 439, '42.54200', '-122.56780'), ('CENTRAL POINT', 12493, '42.37370', '-122.91100'), ('EAGLE POINT', 4797, '42.46610', '-122.79950'), ('GOLD HILL', 1073, '42.43460', '-123.05030'), ('JACKSONVILLE', 2235, '42.31310', '-122.96760'), ('MEDFORD', 63154, '42.33980', '-122.85310'), ('PHOENIX', 4060, '42.27450', '-122.81600'), ('PROSPECT', None, '42.75110', '-122.48780'), ('ROGUE RIVER', 1847, '42.43580', '-123.16710'), ('RUCH', None, '42.23670', '-123.04110'), ('SHADY COVE', 2307, '42.61180', '-122.81870'), ('TALENT', 5589, '42.24010', '-122.78100'), ('TRAIL', None, '42.64860', '-122.80940'), ('WHITE CITY', 5466, '42.43200', '-122.83010')], 'partOfState': 'SOUTHWEST', 'wfo': 'MFR'}, -'ORZ029': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALTAMONT', 19603, '42.19820', '-121.71970'), ('BONANZA', 415, '42.19960', '-121.40590'), ('CHILOQUIN', 716, '42.57650', '-121.86690'), ('DAIRY', None, '42.23530', '-121.52000'), ('KENO', None, '42.12670', '-121.92890'), ('KLAMATH FALLS', 19462, '42.22100', '-121.77240'), ('LORELLA', None, '42.13720', '-121.27140'), ('MALIN', 638, '42.01400', '-121.40780'), ('MERRILL', 897, '42.02660', '-121.59970'), ('MIDLAND', None, '42.13080', '-121.81920'), ('MODOC POINT', None, '42.44500', '-121.86720'), ('OLENE', None, '42.17190', '-121.62970'), ('WORDEN', None, '42.04560', '-121.86530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MFR'}, -'ORZ028': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('HOWARD PRAIRIE', None, '42.20000', '-122.38330'), ('SISKIYOU SUMMIT', None, '42.06000', '-122.57000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MFR'}, -'GAZ109': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CHAUNCEY', 295, '32.10650', '-83.06520'), ('CHESTER', 305, '32.39440', '-83.15450'), ('EASTMAN', 5440, '32.19620', '-83.17930'), ('MILAN', 1012, '32.01950', '-83.06360'), ('RHINE', 422, '31.98900', '-83.20080')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ108': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ABBEVILLE', 2298, '31.99240', '-83.30650'), ('PINEVIEW', 532, '32.10830', '-83.50220'), ('PITTS', 308, '31.94610', '-83.54170'), ('ROCHELLE', 1415, '31.94880', '-83.45720')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ105': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BYROMVILLE', 415, '32.20130', '-83.90810'), ('DOOLING', 163, '32.22940', '-83.92910'), ('LILLY', 221, '32.14590', '-83.87780'), ('PINEHURST', 307, '32.19500', '-83.76020'), ('UNADILLA', 2772, '32.25740', '-83.73610'), ('VIENNA', 2973, '32.08980', '-83.79160')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ104': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMERICUS', 17013, '32.07210', '-84.22690'), ('ANDERSONVILLE', 331, '32.19780', '-84.14600'), ('DE SOTO', 214, '31.95430', '-84.06370'), ('LESLIE', 455, '31.95470', '-84.08700'), ('PLAINS', 637, '32.03310', '-84.39470')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ107': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HAWKINSVILLE', 3280, '32.28260', '-83.47410')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ106': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARABI', 456, '31.83330', '-83.73500'), ('CORDELE', 11608, '31.96520', '-83.77000')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ101': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARDMORE', None, '32.49500', '-81.42890'), ('BERRYVILLE', None, '32.42830', '-81.25890'), ('BIRDS', None, '32.34060', '-81.24420'), ('BLANDFORD', None, '32.27830', '-81.26330'), ('CLYO', None, '32.48390', '-81.26720'), ('COLDBROOK', None, '32.23750', '-81.24190'), ('DOSWELL', None, '32.20970', '-81.39390'), ('EBENEZER', None, '32.37780', '-81.18250'), ('EDEN', None, '32.17360', '-81.39080'), ('EGYPT', None, '32.46170', '-81.47420'), ('EXLEY', None, '32.24560', '-81.22920'), ('GUYTON', 917, '32.33610', '-81.39170'), ('HADDONVILLE', None, '32.43440', '-81.23030'), ('KILDARE', None, '32.53420', '-81.45560'), ('LORENZO', None, '32.43750', '-81.37690'), ('MARLOW', None, '32.26890', '-81.39080'), ('MELDRIM', None, '32.14310', '-81.37810'), ('OAKY', None, '32.52470', '-81.39110'), ('PINEORA', None, '32.28670', '-81.39170'), ('RAHNS', None, '32.31420', '-81.28140'), ('RINCON', 4376, '32.29580', '-81.23560'), ('SHAWNEE', None, '32.47560', '-81.40830'), ('SPRINGFIELD', 1821, '32.37000', '-81.37500'), ('STILLWELL', None, '32.37780', '-81.25060'), ('TUSCULUM', None, '32.39280', '-81.43080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ100': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADABELLE', None, '32.29140', '-81.92720'), ('AKINS', None, '32.30610', '-81.62060'), ('ARCOLA', None, '32.34330', '-81.60220'), ('BLITCH', None, '32.58940', '-81.78250'), ('BROOKLET', 1113, '32.37940', '-81.66330'), ('CLITO', None, '32.51220', '-81.75390'), ('DEERFIELD', None, '32.48830', '-81.78140'), ('DENMARK', None, '32.28440', '-81.72420'), ('DONEGAL', None, '32.56330', '-81.72420'), ('EMIT', None, '32.34360', '-81.74000'), ('EUREKA', None, '32.51750', '-81.71560'), ('GEORGIA SOUTHERN', None, '32.41330', '-81.78330'), ('GRIMSHAW', None, '32.39890', '-81.69890'), ('HOPEULIKIT', None, '32.52140', '-81.85060'), ('HUBERT', None, '32.30640', '-81.49190'), ('HUNTINGTON', None, '32.48750', '-81.77640'), ('IRONGATE', None, '32.41810', '-81.83750'), ('IVANHOE', None, '32.28390', '-81.47750'), ('JIMPS', None, '32.38560', '-81.83560'), ('LEEFIELD', None, '32.41810', '-81.61360'), ('NEVILS', None, '32.26360', '-81.76110'), ('NEW HOPE', None, '32.33810', '-81.89690'), ('OLNEY', None, '32.25530', '-81.46080'), ('OVERBROOK', None, '32.23750', '-81.81220'), ('PORTAL', 597, '32.53810', '-81.93250'), ('PRETORIA', None, '32.40970', '-81.73060'), ('REGISTER', 164, '32.36690', '-81.88420'), ('SOMERSET', None, '32.41190', '-81.76530'), ('STATESBORO', 22698, '32.44860', '-81.78330'), ('STILSON', None, '32.32580', '-81.55330'), ('WESTBROOKE', None, '32.42780', '-81.80720'), ('WESTCHESTER', None, '32.47640', '-81.79470'), ('WINDFIELD', None, '32.45000', '-81.74500')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ103': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('PRESTON', 453, '32.06010', '-84.54020'), ('WESTON', 75, '31.97700', '-84.61230')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ102': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LUMPKIN', 1369, '32.04970', '-84.79960'), ('OMAHA', None, '32.14780', '-85.01280'), ('RICHLAND', 1794, '32.08450', '-84.67580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'WYZ020': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALCOVA', 20, '42.55000', '-106.72000'), ('ARMINTO', None, '43.18000', '-107.26000'), ('BAR NUNN', 936, '42.92620', '-106.34630'), ('CASPER', 49644, '42.83260', '-106.32930'), ('EDGERTON', 169, '43.41450', '-106.24720'), ('EVANSVILLE', 2255, '42.87250', '-106.25870'), ('HILAND', None, '43.12000', '-107.35000'), ('MIDWEST', 408, '43.41130', '-106.27750'), ('MILLS', 2591, '42.84580', '-106.37590'), ('NATRONA', None, '43.03000', '-106.81000'), ('POWDER RIVER', 51, '43.03000', '-106.98000'), ('WALTMAN', None, '43.06000', '-107.19000')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'WAZ043': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BREWSTER', 2189, '48.10280', '-119.77960'), ('BRIDGEPORT', 2059, '48.00570', '-119.67120'), ('DISAUTEL', None, '48.35630', '-119.23500'), ('ELLISFORDE', None, '48.78730', '-119.40000'), ('MALOTT', None, '48.26900', '-119.70580'), ('MONSE', None, '48.13820', '-119.67270'), ('NESPELEM', 212, '48.16770', '-118.97140'), ('NIGHTHAWK', None, '48.96670', '-119.63780'), ('OKANOGAN', 2484, '48.36880', '-119.57610'), ('OMAK', 4721, '48.40960', '-119.52550'), ('OROVILLE', 1653, '48.94240', '-119.43160'), ('PATEROS', 643, '48.05480', '-119.89990'), ('RIVERSIDE', 348, '48.50270', '-119.50750'), ('TONASKET', 994, '48.70480', '-119.43780')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'NYZ038': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('COLD BROOK', 336, '43.24090', '-75.03760'), ('DOLGEVILLE', 2166, '43.10120', '-74.77450'), ('FRANKFORT', 2537, '43.03810', '-75.07190'), ('HERKIMER', 7498, '43.02870', '-74.99280'), ('ILION', 8610, '43.01120', '-75.04070'), ('JORDANVILLE', None, '42.91570', '-74.95120'), ('LITTLE FALLS', 5188, '43.04540', '-74.85590'), ('MIDDLEVILLE', 550, '43.13830', '-74.97110'), ('MOHAWK', 2660, '43.00940', '-75.00720'), ('NEWPORT', 640, '43.18730', '-75.01500'), ('OHIO', None, '43.32220', '-74.97870'), ('POLAND', 451, '43.22610', '-75.06150'), ('WEST WINFIELD', 862, '42.88360', '-75.19170')], 'partOfState': '', 'wfo': 'ALY'}, -'NYZ039': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BROADALBIN', 1411, '43.05950', '-74.19770'), ('EPHRATAH', None, '43.00030', '-74.54470'), ('GLOVERSVILLE', 15413, '43.05020', '-74.34700'), ('JOHNSTOWN', 8511, '43.00850', '-74.37440')], 'partOfState': '', 'wfo': 'ALY'}, -'NYZ036': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BROOKFIELD', None, '42.81670', '-75.31670'), ('CANASTOTA', 4425, '43.08430', '-75.75570'), ('CAZENOVIA', 2614, '42.92940', '-75.85220'), ('CHITTENANGO', 4855, '43.04560', '-75.87330'), ('DE RUYTER', None, '42.75000', '-75.86670'), ('DERUYTER', 531, '42.75890', '-75.88730'), ('EATON', None, '42.85000', '-75.60000'), ('ERIEVILLE', None, '42.85000', '-75.73330'), ('GEORGETOWN', None, '42.76670', '-75.71670'), ('HAMILTON', 3509, '42.82450', '-75.54730'), ('HUBBARDSVILLE', None, '42.81670', '-75.46670'), ('KENWOOD', None, '43.05000', '-75.61670'), ('LAKEPORT', None, '43.15000', '-75.88330'), ('LEBANON', None, '42.78330', '-75.63330'), ('LENOX', None, '43.06670', '-75.71670'), ('MADISON', 315, '42.89790', '-75.51100'), ('MORRISVILLE', 2148, '42.89800', '-75.64490'), ('MUNNSVILLE', 437, '42.97710', '-75.58760'), ('NELSON', None, '42.91670', '-75.75000'), ('NORTH BROOKFIELD', None, '42.85000', '-75.36670'), ('ONEIDA', 10987, '43.07580', '-75.66380'), ('ORISKANY FALLS', 698, '42.93800', '-75.46330'), ('PECKSPORT', None, '42.86670', '-75.55000'), ('PERRYVILLE', None, '43.00000', '-75.81670'), ('PETERBORO', None, '42.96670', '-75.66670'), ('PIERCEVILLE', None, '42.85000', '-75.60000'), ('POOLVILLE', None, '42.76670', '-75.50000'), ('SHEDS', None, '42.80000', '-75.81670'), ('SOLSVILLE', None, '42.90000', '-75.50000'), ('SOUTH BAY', None, '43.16670', '-75.76670'), ('SOUTH BROOKFIELD', None, '42.75000', '-75.30000'), ('SOUTH LEBANON', None, '42.75000', '-75.65000'), ('STOCKBRIDGE', None, '42.98330', '-75.58330'), ('SULLIVAN', None, '43.05000', '-75.86670'), ('UNION CORNERS', None, '43.11670', '-75.75000'), ('WAMPSVILLE', 561, '43.07770', '-75.70960'), ('WEST EATON', None, '42.85000', '-75.65000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ037': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AUGUSTA', None, '42.96670', '-75.51670'), ('BARNEVELD', 332, '43.27400', '-75.18910'), ('BARNVELD', None, '43.26670', '-75.18330'), ('BLOSSVALE', None, '43.28330', '-75.65000'), ('BRIDGEWATER', 579, '42.87770', '-75.25020'), ('CHADWICKS', None, '43.03330', '-75.28330'), ('CLARK MILLS', 1424, '43.08420', '-75.37660'), ('CLAYVILLE', 445, '42.97420', '-75.24980'), ('CLINTON', 1952, '43.04890', '-75.37870'), ('COLEMANS', None, '43.13330', '-75.35000'), ('DEERFIELD', None, '43.11670', '-75.21670'), ('DELTA LAKE', None, '43.28330', '-75.45000'), ('FLOYD', None, '43.21670', '-75.35000'), ('GRIFFISS AFB', None, '43.23330', '-75.41670'), ('HOLLAND PATENT', 461, '43.24180', '-75.25740'), ('HUBBARD CORNERS', None, '42.96670', '-75.33330'), ('KIRKLAND', None, '43.08330', '-75.38330'), ('LEE', None, '43.28330', '-75.58330'), ('MAYNARD', None, '43.13330', '-75.26670'), ('NEW HARTFORD', 1886, '43.07110', '-75.28960'), ('NEW LONDON', None, '43.20000', '-75.60000'), ('NEW YORK MILLS', 3191, '43.10030', '-75.29320'), ('ONEIDA CASTLE', 627, '43.08390', '-75.63230'), ('ORISKANY', 1459, '43.15590', '-75.33280'), ('PARIS', None, '43.00000', '-75.31670'), ('ROME', 34950, '43.22550', '-75.48930'), ('SAUQUOIT', None, '43.00000', '-75.25000'), ('SHERRILL', 3147, '43.07000', '-75.60000'), ('STITTVILLE', None, '43.21670', '-75.28330'), ('STOCKWELL', None, '42.88330', '-75.40000'), ('SYLVAN BEACH', 1071, '43.20660', '-75.72550'), ('TRENTON', None, '43.28330', '-75.18330'), ('TRENTON FALLS', None, '43.26670', '-75.16670'), ('UTICA', 60651, '43.09690', '-75.22840'), ('VERNON', 1155, '43.08030', '-75.53840'), ('VERNON CENTER', None, '43.05000', '-75.51670'), ('VERONA', None, '43.13330', '-75.58330'), ('VERONA BEACH', None, '43.20000', '-75.73330'), ('VERONA MILLS', None, '43.20000', '-75.56670'), ('VIENNA', None, '43.23330', '-75.71670'), ('WATERVILLE', 1721, '42.93100', '-75.38130'), ('WESTMORELAND', None, '43.11670', '-75.41670'), ('WHITESBORO', 3943, '43.12380', '-75.29700'), ('YORKVILLE', 2675, '43.11170', '-75.27390')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ034': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AUSABLE FORKS', None, '44.43000', '-73.68000'), ('ELIZABETHTOWN', None, '44.22000', '-73.60000'), ('KEENE', None, '44.25000', '-73.78000'), ('KEENE VALLEY', None, '44.20000', '-73.78000'), ('LAKE PLACID', 2638, '44.28340', '-73.98500'), ('LEWIS', None, '44.27000', '-73.57000'), ('MINERVA', None, '43.78000', '-73.97000'), ('MINEVILLE', None, '44.08910', '-73.52750'), ('NEWCOMB', None, '43.97000', '-74.17000'), ('NORTH HUDSON', None, '43.98000', '-73.70000'), ('PARADOX', None, '43.90000', '-73.63000'), ('RAY BROOK', None, '44.30000', '-74.08000'), ('SCHROON LAKE', None, '43.83000', '-73.73000'), ('UNDERWOOD', None, '44.08000', '-73.68000'), ('UPPER JAY', None, '44.33000', '-73.78000'), ('WILMINGTON', None, '44.38000', '-73.82000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYZ035': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CROWN POINT CENTER', None, '43.95000', '-73.42000'), ('MORIAH', None, '44.05000', '-73.50000'), ('PORT HENRY', 1152, '44.04700', '-73.46070'), ('PORT KENT', None, '44.53000', '-73.42000'), ('TICONDEROGA', None, '43.84700', '-73.42560'), ('WADHAMS', None, '44.23000', '-73.47000'), ('WESTPORT', None, '44.17880', '-73.43610'), ('WILLSBORO', None, '44.37000', '-73.40000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYZ032': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ATWELL', None, '43.52470', '-74.94330'), ('BIG MOOSE', None, '43.81750', '-74.91350'), ('EAGLE BAY', None, '43.76670', '-74.82170'), ('MCKEEVER', None, '43.61220', '-75.10000'), ('NOBLEBORO', None, '43.39530', '-74.86080'), ('NORTHWOOD', None, '43.34900', '-75.07120'), ('OLD FORGE', None, '43.71100', '-74.97170')], 'partOfState': '', 'wfo': 'ALY'}, -'NYZ033': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BLUE MOUNTAIN LAKE', None, '43.87530', '-74.44420'), ('HOFFMEISTER', None, '43.40000', '-74.72000'), ('INDIAN LAKE', None, '43.78330', '-74.26920'), ('LONG LAKE', None, '43.97000', '-74.42000'), ('PISECO', None, '43.42400', '-74.53600'), ('RAQUETTE LAKE', None, '43.81300', '-74.65720'), ('SABAEL', None, '43.72830', '-74.30700'), ('SABATTIS', None, '44.08120', '-74.70120'), ('SPECULATOR', 348, '43.58060', '-74.38060'), ('WELLS', None, '43.39030', '-74.29120')], 'partOfState': '', 'wfo': 'ALY'}, -'NYZ030': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BLOOMINGDALE', None, '44.42000', '-74.10000'), ('BURKE', 213, '44.90340', '-74.17090'), ('CHASM FALLS', None, '44.75000', '-74.22000'), ('CHATEAUGAY', 798, '44.92730', '-74.08080'), ('COREYS', None, '44.23000', '-74.32000'), ('DUANE CENTER', None, '44.65000', '-74.27000'), ('FRANKLIN FALLS', None, '44.43000', '-73.98000'), ('LOON LAKE', None, '44.55000', '-74.07000'), ('PAUL SMITHS', None, '44.43000', '-74.25000'), ('RAINBOW LAKE', None, '44.47000', '-74.17000'), ('SANTA CLARA', None, '44.63000', '-74.45000'), ('SARANAC INN', None, '44.33000', '-74.28000'), ('SARANAC LAKE', 5041, '44.32500', '-74.13310'), ('ST. REGIS FALLS', None, '44.67000', '-74.53000'), ('TUPPER LAKE', 3935, '44.23430', '-74.46890')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYZ031': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BLACK BROOK', None, '44.47000', '-73.73000'), ('CHURUBUSCO', None, '44.95000', '-73.92000'), ('CLAYBURG', None, '44.60000', '-73.83000'), ('DANNEMORA', 4129, '44.72080', '-73.71930'), ('ELLENBURG DEPOT', None, '44.90000', '-73.80000'), ('HAWKEYE', None, '44.51000', '-73.87000'), ('JERICHO', 13045, '44.78000', '-73.65000'), ('LYON MOUNTAIN', 458, '44.72000', '-73.92000'), ('MERRILL', None, '44.77000', '-73.95000'), ('RIVERVIEW', None, '44.58000', '-73.90000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'WYZ021': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALMY', None, '41.33000', '-111.00000'), ('ALTAMONT', None, '41.20000', '-110.80000'), ('CARTER', 8, '41.43000', '-110.43000'), ('CHURCH BUTTES', None, '41.42000', '-110.08000'), ('EVANSTON', 11507, '41.26500', '-110.97500'), ('FT BRIDGER', None, '41.32000', '-110.38000'), ('LEROY', None, '41.32000', '-110.62000'), ('LONETREE', 61, '41.05000', '-110.15000'), ('LYMAN', 1938, '41.32780', '-110.30030'), ('MILLBURNE', None, '41.25000', '-110.42000'), ('MILLIS', None, '41.22000', '-110.92000'), ('PIEDMONT', None, '41.23000', '-110.65000'), ('RAGEN', None, '41.27000', '-110.68000'), ('ROBERTSON', 59, '41.18000', '-110.42000')], 'partOfState': 'SOUTHWEST', 'wfo': 'SLC'}, -'WIZ068': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALBANY', 1191, '42.70700', '-89.43680'), ('BRODHEAD', 3180, '42.61670', '-89.37620'), ('BROWNTOWN', 252, '42.57790', '-89.79140'), ('MONROE', 10843, '42.59980', '-89.64380'), ('MONTICELLO', 1146, '42.74580', '-89.58970'), ('NEW GLARUS', 2111, '42.81320', '-89.63460')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WIZ069': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BELOIT', 35775, '42.52370', '-89.02010'), ('CLINTON', 2162, '42.55650', '-88.86610'), ('EDGERTON', 4933, '42.83780', '-89.07260'), ('EVANSVILLE', 4039, '42.77990', '-89.29870'), ('FOOTVILLE', 788, '42.67150', '-89.20890'), ('JANESVILLE', 59498, '42.68460', '-89.01560'), ('MILTON', 5132, '42.77890', '-88.94940'), ('ORFORDVILLE', 1272, '42.62920', '-89.25730')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WAZ044': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('DOUGLAS', None, '47.61950', '-120.00220'), ('MANSFIELD', 319, '47.81150', '-119.63700'), ('MOLD', None, '47.73920', '-119.33780'), ('PALISADES', None, '47.41820', '-119.90800'), ('WATERVILLE', 1163, '47.64800', '-120.06950'), ('WITHROW', None, '47.70300', '-119.80450')], 'partOfState': 'CENTRAL', 'wfo': 'OTX'}, -'WIZ067': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARGYLE', 823, '42.70060', '-89.86620'), ('BELMONT', 871, '42.73800', '-90.33260'), ('BENTON', 976, '42.57090', '-90.38220'), ('BLANCHARDVILLE', 806, '42.80930', '-89.86060'), ('DARLINGTON', 2418, '42.68050', '-90.11700'), ('GRATIOT', 252, '42.57950', '-90.02290'), ('SHULLSBURG', 1246, '42.57310', '-90.23150'), ('SOUTH WAYNE', 484, '42.56670', '-89.88040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WIZ064': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('FORT ATKINSON', 11621, '42.92670', '-88.84150'), ('JEFFERSON', 7338, '43.00640', '-88.80810'), ('JOHNSON CREEK', 1581, '43.07980', '-88.77390'), ('LAKE MILLS', 4843, '43.07400', '-88.90800'), ('LAKE RIPLEY', 1603, '43.00570', '-88.98610'), ('PALMYRA', 1766, '42.87900', '-88.58810'), ('SULLIVAN', 688, '43.01250', '-88.58950'), ('WATERLOO', 3259, '43.18300', '-88.98990'), ('WATERTOWN', 21598, '43.19160', '-88.72490')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIZ065': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BIG BEND', 1278, '42.88230', '-88.20410'), ('BROOKFIELD', 38649, '43.06280', '-88.11980'), ('BUTLER', 1881, '43.10840', '-88.07220'), ('CHENEQUA', 583, '43.12340', '-88.38110'), ('DELAFIELD', 6472, '43.06960', '-88.39190'), ('DOUSMAN', 1584, '43.01480', '-88.47140'), ('EAGLE', 1707, '42.87960', '-88.47130'), ('ELM GROVE', 6249, '43.04760', '-88.08670'), ('HARTLAND', 7905, '43.09820', '-88.34460'), ('LAC LA BELLE', 329, '43.14550', '-88.52570'), ('LANNON', 1009, '43.15140', '-88.16240'), ('MENOMONEE FALLS', 32647, '43.14720', '-88.12590'), ('MERTON', 1926, '43.14100', '-88.31350'), ('MUKWONAGO', 6162, '42.86630', '-88.33120'), ('MUSKEGO', 21397, '42.89110', '-88.12290'), ('NASHOTAH', 1266, '43.09300', '-88.40130'), ('NEW BERLIN', 38220, '42.97280', '-88.12920'), ('NORTH PRAIRIE', 1571, '42.93720', '-88.39560'), ('OCONOMOWOC', 12382, '43.10280', '-88.49680'), ('OCONOMOWOC LAKE', 564, '43.09870', '-88.45500'), ('OKAUCHEE LAKE', 3916, '43.12340', '-88.44060'), ('PEWAUKEE', 8170, '43.08570', '-88.25200'), ('SUSSEX', 8828, '43.13590', '-88.21790'), ('WALES', 2523, '43.00490', '-88.37770'), ('WAUKESHA', 64825, '43.01250', '-88.23820')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIZ062': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARENA', 685, '43.16330', '-89.91320'), ('AVOCA', 608, '43.18820', '-90.32520'), ('BARNEVELD', 1088, '43.01450', '-89.89590'), ('COBB', 442, '42.96530', '-90.32930'), ('DODGEVILLE', 4220, '42.96380', '-90.13000'), ('HIGHLAND', 855, '43.04640', '-90.37900'), ('HOLLANDALE', 283, '42.87610', '-89.93330'), ('LINDEN', 615, '42.91920', '-90.27400'), ('MINERAL POINT', 2617, '42.86190', '-90.18310'), ('REWEY', 311, '42.84190', '-90.39630'), ('RIDGEWAY', 689, '42.99920', '-89.99220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'MSZ064': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BASSFIELD', 315, '31.49730', '-89.74250'), ('PRENTISS', 1158, '31.59630', '-89.87200')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'WIZ060': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BELGIUM', 1678, '43.50060', '-87.85030'), ('CEDARBURG', 10908, '43.29660', '-87.98820'), ('FREDONIA', 1934, '43.46850', '-87.95170'), ('GRAFTON', 10312, '43.31860', '-87.95460'), ('MEQUON', 21823, '43.23590', '-87.98930'), ('PORT WASHINGTON', 10467, '43.39370', '-87.87990'), ('SAUKVILLE', 4068, '43.38380', '-87.94140'), ('THIENSVILLE', 3254, '43.23680', '-87.97990')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIZ061': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAGLEY', 339, '42.90360', '-91.09820'), ('BEETOWN', None, '42.79746', '-90.88421'), ('BLOOMINGTON', 701, '42.89210', '-90.92730'), ('BLUE RIVER', 429, '43.18620', '-90.57240'), ('BOSCOBEL', 3047, '43.13960', '-90.70460'), ('BURTON', None, '42.71522', '-90.81842'), ('CASSVILLE', 1085, '42.71560', '-90.99040'), ('CASTLE ROCK', None, '43.04600', '-90.53332'), ('CUBA CITY', 2156, '42.60310', '-90.43130'), ('DICKEYVILLE', 1043, '42.62580', '-90.59210'), ('ELLENBORO', None, '42.78101', '-90.61922'), ('FENNIMORE', 2387, '42.98060', '-90.65060'), ('GEORGETOWN', None, '42.61653', '-90.48398'), ('GLEN HAVEN', None, '42.83035', '-91.06879'), ('HAZEL GREEN', 1183, '42.53430', '-90.43560'), ('HOMER', None, '43.07890', '-90.61739'), ('HURRICANE', None, '42.78101', '-90.76725'), ('KIELER', None, '42.58363', '-90.59911'), ('LANCASTER', 4070, '42.84850', '-90.70800'), ('LIVINGSTON', 597, '42.90070', '-90.43370'), ('MILLVILLE', None, '43.03138', '-90.93356'), ('MONTFORT', 663, '42.97020', '-90.43290'), ('MOUNT HOPE', 186, '42.96970', '-90.85860'), ('MUSCODA', 1453, '43.18730', '-90.43420'), ('NORTH ANDOVER', None, '42.81573', '-90.96828'), ('PATCH GROVE', 166, '42.93930', '-90.97270'), ('PLATTEVILLE', 9989, '42.73520', '-90.47690'), ('POTOSI', 711, '42.68940', '-90.71100'), ('PRESTON', None, '42.96559', '-90.54794'), ('SINSINAWA', None, '42.51601', '-90.53332'), ('STITZER', None, '42.91442', '-90.63384'), ('TENNYSON', 370, '42.68970', '-90.68660'), ('UNION', None, '42.83218', '-90.51687'), ('WERLEY', None, '43.01493', '-90.76725'), ('WOODMAN', 96, '43.09080', '-90.79790')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'WVZ048': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BAYARD', 299, '39.27180', '-79.36690'), ('BEECHWOOD', None, '39.20000', '-79.46830'), ('BISMARCK', None, '39.21780', '-79.23330'), ('CABINS', None, '38.99890', '-79.20560'), ('KLINE GAP', None, '39.07220', '-79.19280'), ('LAHMANSVILLE', None, '39.12810', '-79.08170'), ('LANDES', None, '38.89670', '-79.19810'), ('MARTIN', None, '39.22420', '-79.08920'), ('MASONVILLE', None, '38.91860', '-79.08390'), ('MAYSVILLE', None, '39.11500', '-79.16500'), ('MEDLEY', None, '39.17610', '-79.05810'), ('MOUNT PISGAH', None, '39.28970', '-79.17170'), ('MOUNT STORM', None, '39.27720', '-79.24110'), ('PETERSBURG', 2423, '38.99630', '-79.12820'), ('SCHERR', None, '39.20000', '-79.17000'), ('SEYMOURVILLE', None, '39.05690', '-79.10920'), ('STREBY', None, '39.08030', '-79.23970'), ('WELTON', None, '39.00170', '-79.08530'), ('WILSONIA', None, '39.20610', '-79.44970')], 'partOfState': '', 'wfo': 'LWX'}, -'NCZ078': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BROGDEN', 2907, '35.29660', '-78.02530'), ('ELROY', 3896, '35.33400', '-77.92060'), ('EUREKA', 244, '35.54090', '-77.87750'), ('FREMONT', 1463, '35.54330', '-77.97600'), ('GOLDSBORO', 39043, '35.37380', '-77.97610'), ('GRANTHAM', None, '35.30000', '-78.17000'), ('MAR-MAC', 3004, '35.33490', '-78.05600'), ('MOUNT OLIVE', 4567, '35.19640', '-78.06770'), ('NAHUNTA', None, '35.50000', '-78.06000'), ('PIKEVILLE', 719, '35.49750', '-77.98430'), ('SEVEN SPRINGS', 86, '35.22540', '-77.84600'), ('WALNUT CREEK', 859, '35.30860', '-77.86890')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ079': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('HOOKERTON', 467, '35.42290', '-77.58920'), ('SNOW HILL', 1514, '35.45140', '-77.67450'), ('WALSTONBURG', 224, '35.59470', '-77.69920')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ074': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BADIN LAKE', None, '35.46000', '-80.08000'), ('BISCOE', 1700, '35.36030', '-79.78050'), ('CANDOR', 825, '35.29120', '-79.74360'), ('ELDORADO', None, '35.47000', '-80.03000'), ('MOUNT GILEAD', 1389, '35.21510', '-80.00300'), ('PEKIN', None, '35.22000', '-79.88000'), ('STAR', 807, '35.40050', '-79.78420'), ('STEEDS', None, '35.47000', '-79.80000'), ('TROY', 3430, '35.36410', '-79.89320')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ075': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ABERDEEN', 3400, '35.13950', '-79.42140'), ('CAMERON', 151, '35.32700', '-79.25160'), ('CARTHAGE', 1871, '35.34740', '-79.41830'), ('EAGLE SPRINGS', None, '35.30000', '-79.65000'), ('FOXFIRE', 474, '35.17360', '-79.56830'), ('GLENDON', None, '35.48000', '-79.53000'), ('HIGHFALLS', None, '35.48000', '-79.53000'), ('PINEBLUFF', 1109, '35.10710', '-79.47230'), ('PINEHURST', 9706, '35.18030', '-79.46140'), ('ROBBINS', 1195, '35.43240', '-79.58420'), ('SEVEN LAKES', 3214, '35.26420', '-79.58500'), ('SOUTHERN PINES', 10918, '35.18350', '-79.40220'), ('TAYLORTOWN', 845, '35.21590', '-79.49200'), ('VASS', 750, '35.25580', '-79.28220'), ('WHISPERING PINES', 2090, '35.25490', '-79.37950')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ076': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BROADWAY', 1015, '35.45710', '-79.05360'), ('CUMNOCK', None, '35.54000', '-79.23000'), ('GUM SPRINGS', None, '35.46000', '-79.22000'), ('LEMON SPRINGS', None, '35.38000', '-79.20000'), ('SANFORD', 23220, '35.47700', '-79.18130'), ('TRAMWAY', None, '35.43000', '-79.23000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ077': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANDERSON CREEK', None, '35.28000', '-78.93000'), ('ANGIER', 3419, '35.51070', '-78.73880'), ('BUIES CREEK', 2215, '35.40750', '-78.74020'), ('COATS', 1845, '35.40620', '-78.66880'), ('DUNCAN', None, '35.56000', '-78.88000'), ('DUNN', 9196, '35.31130', '-78.61530'), ('ERWIN', 4537, '35.32520', '-78.67230'), ('LILLINGTON', 2915, '35.39790', '-78.81610'), ('OLIVIA', None, '35.37000', '-79.11000'), ('PINEVIEW', None, '35.31000', '-79.08000'), ('SEMINOLE', None, '35.46000', '-79.00000'), ('TIMBERLAKE', None, '35.28800', '-78.95000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ070': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BELMONT', 8705, '35.24990', '-81.04020'), ('BESSEMER CITY', 5119, '35.28400', '-81.28520'), ('CHERRYVILLE', 5361, '35.38160', '-81.37560'), ('CRAMERTON', 2976, '35.23460', '-81.07420'), ('CROWDERS', None, '35.18610', '-81.20670'), ('DALLAS', 3402, '35.31470', '-81.17680'), ('GASTONIA', 66277, '35.25270', '-81.17150'), ('HIGH SHOALS', 729, '35.39820', '-81.20150'), ('LOWELL', 2662, '35.26860', '-81.10140'), ('LUCIA', None, '35.38470', '-81.01080'), ('MCADENVILLE', 619, '35.26470', '-81.08000'), ('MOUNT HOLLY', 9618, '35.30520', '-81.03140'), ('RANLO', 2198, '35.28700', '-81.13130'), ('STANLEY', 3053, '35.35650', '-81.09750')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ071': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CHARLOTTE', 540828, '35.19750', '-80.83450'), ('CORNELIUS', 11969, '35.48080', '-80.86860'), ('CROFT', None, '35.34470', '-80.82440'), ('DAVIDSON', 7139, '35.49850', '-80.84650'), ('HUNTERSVILLE', 24960, '35.41580', '-80.84510'), ('MATTHEWS', 22127, '35.12200', '-80.71320'), ('MINT HILL', 14922, '35.17690', '-80.66170'), ('NEWELL', None, '35.27940', '-80.73330'), ('PAW CREEK', None, '35.27420', '-80.93860'), ('PINEVILLE', 3449, '35.08460', '-80.88570')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ072': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CONCORD', 55977, '35.40730', '-80.59430'), ('HARRISBURG', 4493, '35.32140', '-80.66510'), ('KANNAPOLIS', 36910, '35.49110', '-80.62040'), ('MIDLAND', None, '35.22720', '-80.50080'), ('MOUNT PLEASANT', 1259, '35.40250', '-80.43610')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ073': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALBEMARLE', 15680, '35.36340', '-80.19220'), ('BADIN', 1154, '35.40710', '-80.11130'), ('FINGER', None, '35.38000', '-80.37000'), ('LOCUST', 2416, '35.25810', '-80.43060'), ('NEW LONDON', 326, '35.44260', '-80.21980'), ('NORWOOD', 2216, '35.22470', '-80.12030'), ('OAKBORO', 1198, '35.22310', '-80.32580'), ('PLYLER', None, '35.37000', '-80.28000'), ('RICHFIELD', 515, '35.47150', '-80.25670'), ('STANFIELD', 1113, '35.23530', '-80.42780')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'GAZ039': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('RAYLE', 139, '33.79080', '-82.90880'), ('TIGNALL', 653, '33.86690', '-82.74240'), ('WASHINGTON', 4295, '33.73550', '-82.74400')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAZ038': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARNOLDSVILLE', 312, '33.91070', '-83.21810'), ('CRAWFORD', 807, '33.88290', '-83.15630'), ('LEXINGTON', 239, '33.87020', '-83.11100'), ('MAXEYS', 210, '33.75480', '-83.17390')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAZ031': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BRASWELL', 80, '33.98310', '-84.96650'), ('DALLAS', 5056, '33.91930', '-84.83190'), ('HIRAM', 1361, '33.86550', '-84.77470')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ030': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARAGON', 1039, '34.04620', '-85.05770'), ('CEDARTOWN', 9470, '34.01730', '-85.25720'), ('ROCKMART', 3870, '34.00990', '-85.04970'), ('TAYLORSVILLE', 229, '34.08580', '-84.98820')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ033': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALPHARETTA', 34854, '34.06890', '-84.27200'), ('ATLANTA', 416474, '33.76290', '-84.42260'), ('ROSWELL', 79334, '34.03740', '-84.35600'), ('SANDY SPRINGS', 85781, '33.93730', '-84.36870')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ032': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ACWORTH', 13422, '34.05990', '-84.67550'), ('AUSTELL', 5359, '33.82200', '-84.64290'), ('FAIR OAKS', 8443, '33.91970', '-84.54460'), ('KENNESAW', 21675, '34.02370', '-84.61630'), ('MABLETON', 29733, '33.81290', '-84.56220'), ('MARIETTA', 58748, '33.95090', '-84.54110'), ('POWDER SPRINGS', 12481, '33.86530', '-84.68260'), ('SMYRNA', 40999, '33.86750', '-84.51690'), ('VININGS', 9677, '33.86160', '-84.46740')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ035': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AUBURN', 6904, '34.01330', '-83.83320'), ('BETHLEHEM', 716, '33.93760', '-83.70840'), ('BRASELTON', 1206, '34.10230', '-83.78820'), ('CARL', 205, '34.00500', '-83.81130'), ('RUSSELL', None, '33.97530', '-83.69580'), ('STATHAM', 2040, '33.96540', '-83.59680'), ('WINDER', 10201, '33.99200', '-83.72220')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ034': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BERKELEY LAKE', 1695, '33.98200', '-84.18580'), ('BUFORD', 10668, '34.11700', '-83.99860'), ('DACULA', 3848, '33.98490', '-83.88780'), ('DULUTH', 22122, '34.00470', '-84.15320'), ('GRAYSON', 765, '33.89320', '-83.95550'), ('LAWRENCEVILLE', 22397, '33.94950', '-83.99220'), ('LILBURN', 11307, '33.88820', '-84.13690'), ('MOUNTAIN PARK', 11753, '33.84410', '-84.12950'), ('NORCROSS', 8410, '33.94090', '-84.20760'), ('REST HAVEN', 151, '34.13310', '-83.97790'), ('SNELLVILLE', 15351, '33.85830', '-84.00860'), ('SUGAR HILL', 11399, '34.09930', '-84.04000'), ('SUWANEE', 8725, '34.05120', '-84.07070')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ037': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BISHOP', 146, '33.81620', '-83.43640'), ('BOGART', 1049, '33.94730', '-83.53230'), ('NORTH HIGH SHOALS', 439, '33.82840', '-83.50150'), ('WATKINSVILLE', 2097, '33.86190', '-83.40760')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAZ036': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ATHENS', None, '33.95530', '-83.39370'), ('GAINES SCHOOL', None, '33.92660', '-83.33940'), ('WINTERVILLE', 1068, '33.96660', '-83.28180')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'IAZ008': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BAILEY', None, '43.46634', '-92.61673'), ('BROWNVILLE', None, '43.33110', '-92.68252'), ('CARPENTER', 130, '43.41490', '-93.01740'), ('LITTLE CEDAR', None, '43.38410', '-92.73552'), ('MCINTIRE', 173, '43.43720', '-92.59310'), ('MEYER', None, '43.44806', '-92.71908'), ('MITCHELL', 155, '43.32120', '-92.87020'), ('MONA', None, '43.48096', '-92.95118'), ('NEW HAVEN', None, '43.28176', '-92.65146'), ('ORCHARD', 88, '43.22700', '-92.77440'), ('OSAGE', 3451, '43.28360', '-92.81190'), ('OTRANTO', None, '43.49375', '-93.00966'), ('ROCK CREEK', None, '43.23241', '-92.93473'), ('ST. ANSGAR', 1031, '43.37810', '-92.91960'), ('STACYVILLE', 469, '43.43840', '-92.78280'), ('TOETERVILLE', None, '43.44806', '-92.91462')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ARX'}, -'IAZ009': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BONAIR', None, '43.41334', '-92.20005'), ('CHESTER', 151, '43.49010', '-92.36340'), ('CRESCO', 3905, '43.37180', '-92.11570'), ('DAVIS CORNERS', None, '43.36400', '-92.29874'), ('ELMA', 598, '43.24570', '-92.44000'), ('LIME SPRINGS', 496, '43.45020', '-92.28110'), ('LOURDES', None, '43.26714', '-92.30239'), ('MAPLE LEAF', None, '43.31283', '-92.38463'), ('PROTIVIN', 317, '43.21750', '-92.08810'), ('RICEVILLE', 840, '43.36250', '-92.55490'), ('SARATOGA', None, '43.36400', '-92.41936'), ('SCHLEY', None, '43.29820', '-92.23295'), ('VERNON SPRINGS', None, '43.34755', '-92.15253')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'CAZ042': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALISO VIEJO', 40166, '33.56750', '-117.72530'), ('ANAHEIM', 328014, '33.83890', '-117.87230'), ('BREA', 35410, '33.92360', '-117.86720'), ('BUENA PARK', 78282, '33.85770', '-118.00330'), ('COSTA MESA', 108724, '33.66680', '-117.91260'), ('COTO DE CAZA', 13057, '33.60410', '-117.58600'), ('CYPRESS', 46229, '33.81630', '-118.03790'), ('EL TORO', None, '33.64710', '-117.68270'), ('EL TORO STATION', None, '33.67920', '-117.71840'), ('FOUNTAIN VALLEY', 54978, '33.71090', '-117.95030'), ('FULLERTON', 126003, '33.88480', '-117.92810'), ('GARDEN GROVE', 165196, '33.77880', '-117.95940'), ('HUNTINGTON BEACH', 189594, '33.69180', '-118.00810'), ('IRVINE', 143072, '33.66210', '-117.79580'), ('LA HABRA', 58974, '33.92740', '-117.95060'), ('LA PALMA', 15408, '33.85090', '-118.03870'), ('LAGUNA BEACH', 23727, '33.53990', '-117.76070'), ('LAGUNA HILLS', 31178, '33.59980', '-117.71090'), ('LAGUNA NIGUEL', 61891, '33.52650', '-117.70430'), ('LOS ALAMITOS', 11536, '33.79860', '-118.05810'), ('MISSION VIEJO', 93102, '33.61240', '-117.65160'), ('ORANGE', 128821, '33.80530', '-117.82400'), ('PLACENTIA', 46488, '33.88160', '-117.85480'), ('PORTOLA HILLS', 6391, '33.68370', '-117.63200'), ('RANCHO SANTA MARGARITA', 47214, '33.64070', '-117.60220'), ('ROSSMOOR', 10298, '33.78950', '-118.07890'), ('SAN CLEMENTE', 49936, '33.44720', '-117.61110'), ('SAN JUAN CAPISTRANO', 33826, '33.50160', '-117.65260'), ('SANTA ANA', 337977, '33.73640', '-117.88210'), ('SEAL BEACH', 24157, '33.75850', '-118.07580'), ('STANTON', 37403, '33.80040', '-117.99090'), ('TRABUCO HIGHLANDS', None, '33.61490', '-117.56550'), ('TUSTIN', 67504, '33.73000', '-117.81110'), ('TUSTIN FOOTHILLS', 24044, '33.76450', '-117.79300'), ('VILLA PARK', 5999, '33.81850', '-117.81030'), ('WESTMINSTER', 88207, '33.75140', '-117.99310'), ('YORBA LINDA', 58918, '33.88870', '-117.76630')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'IAZ002': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ASHTON', 461, '43.30980', '-95.79220'), ('HARRIS', 200, '43.44760', '-95.43290'), ('MELVIN', 243, '43.28670', '-95.60850'), ('OCHEYEDAN', 536, '43.41820', '-95.53650'), ('SIBLEY', 2796, '43.40170', '-95.74490')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ003': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARNOLDS PARK', 1162, '43.36280', '-95.13180'), ('LAKE PARK', 1023, '43.44840', '-95.32480'), ('MILFORD', 2474, '43.32700', '-95.15180'), ('OKOBOJI', 820, '43.39210', '-95.13620'), ('ORLEANS', 583, '43.44520', '-95.09870'), ('SPIRIT LAKE', 4261, '43.42280', '-95.11140'), ('SUPERIOR', 142, '43.43270', '-94.94710'), ('TERRIL', 404, '43.30850', '-94.96880'), ('WAHPETON', 462, '43.37450', '-95.17450'), ('WEST OKOBOJI', 432, '43.34940', '-95.16530')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ001': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALVORD', 187, '43.34220', '-96.30250'), ('DOON', 533, '43.27870', '-96.23160'), ('GEORGE', 1051, '43.34170', '-96.00270'), ('INWOOD', 875, '43.28700', '-96.44010'), ('LARCHWOOD', 788, '43.45530', '-96.43740'), ('LESTER', 251, '43.43920', '-96.33020'), ('LITTLE ROCK', 489, '43.44460', '-95.88090'), ('ROCK RAPIDS', 2573, '43.42580', '-96.16610')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ006': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BUFFALO CENTER', 963, '43.38980', '-93.94310'), ('FOREST CITY', 4362, '43.25720', '-93.63800'), ('LAKE MILLS', 2140, '43.41620', '-93.53210'), ('LELAND', 258, '43.33370', '-93.63720'), ('RAKE', 227, '43.48130', '-93.92100'), ('SCARVILLE', 97, '43.47060', '-93.61630'), ('THOMPSON', 596, '43.36960', '-93.77430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAZ007': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FERTILE', 360, '43.26490', '-93.42260'), ('GRAFTON', 290, '43.33010', '-93.06990'), ('HANLONTOWN', 229, '43.28090', '-93.37920'), ('JOICE', 231, '43.36430', '-93.45710'), ('KENSETT', 280, '43.35390', '-93.21090'), ('MANLY', 1342, '43.28830', '-93.20170'), ('NORTHWOOD', 2050, '43.44460', '-93.21640')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAZ004': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARMSTRONG', 979, '43.39360', '-94.47900'), ('DOLLIVER', 77, '43.46490', '-94.61460'), ('ESTHERVILLE', 6656, '43.39940', '-94.83320'), ('GRUVER', 106, '43.39320', '-94.70310'), ('RINGSTED', 436, '43.29640', '-94.50660'), ('WALLINGFORD', 210, '43.32020', '-94.79200')], 'partOfState': 'NORTHWEST', 'wfo': 'DMX'}, -'IAZ005': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALGONA', 5741, '43.07390', '-94.23070'), ('BANCROFT', 808, '43.29250', '-94.21680'), ('BURT', 556, '43.19920', '-94.22140'), ('FENTON', 317, '43.21830', '-94.42770'), ('LAKOTA', 255, '43.37800', '-94.09400'), ('LEDYARD', 147, '43.42030', '-94.15870'), ('LONE ROCK', 157, '43.22040', '-94.32490'), ('LU VERNE', 299, '42.91660', '-94.08340'), ('SWEA CITY', 642, '43.38280', '-94.31020'), ('TITONKA', 584, '43.23660', '-94.04160'), ('WESLEY', 467, '43.08890', '-93.99300'), ('WHITTEMORE', 530, '43.06340', '-94.42400')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'TXZ007': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CACTUS', 2538, '36.04470', '-102.01110'), ('DUMAS', 13747, '35.86320', '-101.96450'), ('FOUR WAY', None, '35.69190', '-101.96190'), ('LAKE MEREDITH', None, '35.65080', '-101.66190'), ('MASTERSON', None, '35.63580', '-101.95970'), ('SUNRAY', 1950, '36.01820', '-101.82340')], 'partOfState': '', 'wfo': 'AMA'}, -'WVZ045': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ALDERSON', 1091, '37.73330', '-80.65000'), ('ALVON', None, '37.90000', '-80.21670'), ('ANJEAN', None, '38.01670', '-80.63330'), ('ASBURY', None, '37.81670', '-80.56670'), ('BINGHAM', None, '38.05000', '-80.80000'), ('DUO', None, '38.06670', '-80.60000'), ('FAIRLEA', 1706, '37.77510', '-80.45980'), ('FALLING SPRING', 209, '37.99200', '-80.35730'), ('FRANKFORD', None, '37.91670', '-80.38330'), ('LEONARD', None, '38.08330', '-80.40000'), ('LEWISBURG', 3624, '37.80000', '-80.45000'), ('LEWISBURG AIRPORT', None, '37.86670', '-80.40000'), ('MAXWELTON', None, '37.86670', '-80.41670'), ('MEADOW BLUFF', None, '37.90000', '-80.65000'), ('NEOLA', None, '37.96670', '-80.13330'), ('ORGAN CAVE', None, '37.71670', '-80.45000'), ('QUINWOOD', 435, '38.05780', '-80.70360'), ('RAINELLE', 1545, '37.96860', '-80.77100'), ('RAINELLE', 1545, '37.96670', '-80.78330'), ('RENICK', None, '37.98330', '-80.36670'), ('RONCEVERTE', 1557, '37.74890', '-80.47260'), ('RONCEVERTE', 1557, '37.75000', '-80.46670'), ('RORER', None, '38.03330', '-80.28330'), ('RUPERT', 940, '37.95000', '-80.68330'), ('TROUT', None, '38.01670', '-80.46670'), ('WHITE SULPHUR SPRINGS', 2315, '37.79880', '-80.29730'), ('WILLIAMSBURG', None, '37.96670', '-80.50000')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'WVZ044': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BOZOO', None, '37.46670', '-80.83330'), ('GAP MILLS', None, '37.56670', '-80.41670'), ('GLACE', None, '37.68330', '-80.35000'), ('HOLLYWOOD', None, '37.61670', '-80.45000'), ('LAUREL BRANCH', None, '37.53330', '-80.51670'), ('LINDSIDE', None, '37.45000', '-80.66670'), ('PICKAWAY', None, '37.63330', '-80.51670'), ('RAINES CORNER', None, '37.51670', '-80.61670'), ('RED SULPHUR SPRINGS', None, '37.50000', '-80.76670'), ('SWEET SPRINGS', None, '37.63330', '-80.25000'), ('UNION', 548, '37.58330', '-80.53330'), ('WAITEVILLE', None, '37.48330', '-80.43330'), ('WAYSIDE', None, '37.58330', '-80.70000'), ('WOLFCREEK', None, '37.66670', '-80.63330'), ('ZENITH', None, '37.50000', '-80.53330')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'WYZ024': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('FOSSIL BUTTE NATIONAL MON', None, '41.86000', '-110.76000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RIW'}, -'KSZ077': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CHARLESTON', None, '37.87000', '-100.57000'), ('CIMARRON', 1934, '37.80820', '-100.34570'), ('COPELAND', 339, '37.54020', '-100.62850'), ('ENSIGN', 203, '37.65360', '-100.23220'), ('INGALLS', 328, '37.82790', '-100.45240'), ('MONTEZUMA', 966, '37.59650', '-100.44170'), ('THE HAGGARD ELEV', None, '37.62000', '-100.30000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'OHZ004': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('DEFIANCE', 16465, '41.28120', '-84.36190'), ('HICKSVILLE', 3649, '41.29450', '-84.76660'), ('NEY', 364, '41.38070', '-84.52100')], 'partOfState': 'NORTHWEST', 'wfo': 'IWX'}, -'TXZ002': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('STRATFORD', 1991, '36.33720', '-102.07360'), ('TEXHOMA', 371, '36.48770', '-101.81000')], 'partOfState': '', 'wfo': 'AMA'}, -'KSZ076': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('SATANTA', 1239, '37.43590', '-100.98790'), ('SUBLETTE', 1592, '37.47960', '-100.84650'), ('TICE', None, '37.51000', '-100.71000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'MOZ018': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BARING', 159, '40.24470', '-92.20570'), ('COLONY', None, '40.25000', '-91.98300'), ('EDINA', 1233, '40.16800', '-92.17310'), ('GREENSBURG', None, '40.30000', '-92.21700'), ('HURDLAND', 239, '40.15070', '-92.30220'), ('KNOX CITY', 223, '40.14360', '-92.01030'), ('NEWARK', 100, '39.99440', '-91.97310'), ('NOVELTY', 119, '40.01260', '-92.20740'), ('PLEVNA', None, '39.97370', '-92.08620')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'KSZ075': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('HICKOK', None, '37.56000', '-101.23000'), ('RYUS', None, '37.50000', '-101.11000'), ('ULYSSES', 5960, '37.57900', '-101.35580')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'TNZ001': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COTTONWOOD GROVE', None, '36.23330', '-89.53330'), ('RIDGELY', 1667, '36.26450', '-89.48260'), ('TIPTONVILLE', 2439, '36.37730', '-89.47230')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'INZ038': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('KEMPTON', 380, '40.28750', '-86.23000'), ('SHARPSVILLE', 618, '40.37990', '-86.08730'), ('TIPTON', 5251, '40.28280', '-86.04030'), ('WINDFALL', None, '40.36290', '-85.95750')], 'partOfState': '', 'wfo': 'IND'}, -'INZ039': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ARCADIA', 1747, '40.17410', '-86.02130'), ('ATLANTA', 761, '40.21480', '-86.02710'), ('CARMEL', 37733, '39.96930', '-86.10950'), ('CICERO', 4303, '40.12470', '-86.02260'), ('FISHERS', 37835, '39.95410', '-86.02360'), ('NOBLESVILLE', 28590, '40.05660', '-86.03170'), ('SHERIDAN', 2520, '40.13470', '-86.21890'), ('WESTFIELD', 9293, '40.04700', '-86.13090')], 'partOfState': '', 'wfo': 'IND'}, -'INZ034': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRYANT', 272, '40.53420', '-84.96300'), ('DUNKIRK', 2646, '40.37350', '-85.20790'), ('PENNVILLE', 706, '40.49330', '-85.14740'), ('PORTLAND', 6437, '40.43320', '-84.98110'), ('REDKEY', 1427, '40.34800', '-85.15270'), ('SALAMONIA', 158, '40.38200', '-84.86610')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ035': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ATTICA', 3491, '40.28760', '-87.24640'), ('COVINGTON', 2565, '40.13990', '-87.39120'), ('HILLSBORO', 489, '40.10950', '-87.15710'), ('KINGMAN', 538, '39.96580', '-87.27830'), ('MELLOTT', 207, '40.16390', '-87.14920'), ('NEWTOWN', 162, '40.20440', '-87.14790'), ('VEEDERSBURG', 2299, '40.11270', '-87.25920'), ('WALLACE', 100, '39.98780', '-87.14770')], 'partOfState': '', 'wfo': 'IND'}, -'INZ036': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALAMO', 137, '39.98370', '-87.05510'), ('CRAWFORDSVILLE', 15243, '40.04420', '-86.89660'), ('DARLINGTON', 854, '40.10820', '-86.77650'), ('LADOGA', 1047, '39.91680', '-86.79870'), ('LINDEN', 700, '40.19070', '-86.90200'), ('NEW MARKET', 659, '39.95190', '-86.92210'), ('NEW RICHMOND', 349, '40.19390', '-86.97860'), ('NEW ROSS', 334, '39.96390', '-86.71370'), ('WAVELAND', 416, '39.87700', '-87.04630'), ('WAYNETOWN', 909, '40.08750', '-87.06560'), ('WINGATE', 299, '40.17050', '-87.07350')], 'partOfState': '', 'wfo': 'IND'}, -'INZ037': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ADVANCE', 562, '39.99520', '-86.62040'), ('LEBANON', 14222, '40.05160', '-86.47350'), ('THORNTOWN', 1562, '40.12870', '-86.61010'), ('ULEN', 123, '40.06420', '-86.46340'), ('WHITESTOWN', 471, '39.99560', '-86.34640'), ('ZIONSVILLE', 8775, '39.95240', '-86.27270')], 'partOfState': '', 'wfo': 'IND'}, -'INZ030': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('COLFAX', 768, '40.19430', '-86.66720'), ('FRANKFORT', 16662, '40.28110', '-86.51030'), ('KIRKLIN', 766, '40.19300', '-86.35970'), ('MICHIGANTOWN', 406, '40.32780', '-86.39100'), ('MULBERRY', 1387, '40.34560', '-86.66810'), ('ROSSVILLE', 1513, '40.42110', '-86.59560')], 'partOfState': '', 'wfo': 'IND'}, -'INZ031': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CONVERSE', 1137, '40.57990', '-85.87790'), ('GALVESTON', 1532, '40.57640', '-86.19170'), ('GREENTOWN', 2546, '40.47850', '-85.96470'), ('INDIAN HEIGHTS', 3274, '40.42500', '-86.11650'), ('KOKOMO', 46113, '40.47550', '-86.13310'), ('RUSSIAVILLE', 1092, '40.41880', '-86.27030')], 'partOfState': '', 'wfo': 'IND'}, -'INZ032': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FAIRMOUNT', 2992, '40.41690', '-85.64790'), ('FOWLERTON', 298, '40.40960', '-85.57300'), ('GAS CITY', 5940, '40.48920', '-85.60770'), ('JONESBORO', 1887, '40.47930', '-85.62990'), ('MARION', 31320, '40.54910', '-85.66700'), ('SWAYZEE', 1011, '40.50680', '-85.82410'), ('SWEETSER', 906, '40.56970', '-85.76700'), ('UPLAND', 3803, '40.46280', '-85.51330'), ('VAN BUREN', 935, '40.61640', '-85.50550')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ033': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('HARTFORD CITY', 6928, '40.45250', '-85.37180'), ('MONTPELIER', 1929, '40.55290', '-85.28170'), ('SHAMROCK LAKES', 168, '40.41100', '-85.42620')], 'partOfState': '', 'wfo': 'IWX'}, -'KSZ071': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BATESVILLE', None, '37.83330', '-95.88330'), ('NEOSHO FALLS', 179, '38.00580', '-95.55520'), ('ROSE', None, '37.80000', '-95.68000'), ('TORONTO', 312, '37.79860', '-95.94930'), ('YATES CENTER', 1599, '37.87240', '-95.74280')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'PAZ056': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMITY HALL', None, '40.45000', '-77.00000'), ('BIG SPRING SP', None, '40.27000', '-77.65000'), ('BLAIN', 252, '40.33720', '-77.51220'), ('DUNCANNON', 1508, '40.40000', '-77.03000'), ('ICKESBURG', None, '40.49000', '-77.29000'), ('KISTLER', 344, '40.42000', '-77.39000'), ('LANDISBURG', 195, '40.34320', '-77.30590'), ('LIVERPOOL', 876, '40.57240', '-76.99280'), ('LOYSVILLE', None, '40.38000', '-77.33000'), ('MARYSVILLE', 2306, '40.33760', '-76.93260'), ('MILLERSTOWN', 679, '40.55280', '-77.15280'), ('MONTGOMERY FERRY', None, '40.50000', '-76.98000'), ('NEW BLOOMFIELD', None, '40.41970', '-77.18880'), ('NEWPORT', 1506, '40.47830', '-77.13410'), ('SHERMANSDALE', None, '40.35000', '-77.18000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'MIZ074': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BROOKLYN', 1176, '42.10550', '-84.24870'), ('CLARK LAKE', None, '42.12130', '-84.34500'), ('CONCORD', 1101, '42.17520', '-84.64390'), ('GRASS LAKE', 1082, '42.25090', '-84.20600'), ('HANOVER', 424, '42.10060', '-84.55270'), ('HORTON', None, '42.15030', '-84.51720'), ('JACKSON', 36316, '42.24320', '-84.40480'), ('LEONI', None, '42.24380', '-84.26920'), ('MICHIGAN CENTER', 4641, '42.22690', '-84.32250'), ('MUNITH', None, '42.39050', '-84.25050'), ('NAPOLEON', 1254, '42.16830', '-84.24630'), ('NORVELL', None, '42.15750', '-84.18420'), ('OAK POINT', None, '42.19270', '-84.25580'), ('PARMA', 907, '42.25720', '-84.59830'), ('PULASKI', None, '42.11500', '-84.64250'), ('RIVES JUNCTION', None, '42.38580', '-84.46170'), ('SANDSTONE', None, '42.25200', '-84.51770'), ('SPRING ARBOR', 2188, '42.20660', '-84.55590'), ('SPRINGPORT', 704, '42.37780', '-84.69730'), ('SUNSET BEACH', None, '42.08720', '-84.20370'), ('TOPKINS', None, '42.37300', '-84.54170'), ('VANDERCOOK LAKE', 4809, '42.19160', '-84.38540')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'TXZ009': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CODMAN', None, '35.64000', '-100.75310'), ('LORA', None, '35.74080', '-100.55720'), ('MIAMI', 588, '35.69180', '-100.64040')], 'partOfState': '', 'wfo': 'AMA'}, -'KSZ103': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BASEHOR', 2238, '39.12720', '-94.92910'), ('EASTON', 362, '39.34540', '-95.11630'), ('FT LEAVENWORTH AAF', None, '39.36670', '-94.91670'), ('JARBALO', None, '39.20000', '-95.06670'), ('LANSING', 9199, '39.24820', '-94.88750'), ('LEAVENWORTH', 35420, '39.32460', '-94.92320'), ('LINWOOD', 374, '39.00000', '-95.03470'), ('TONGANOXIE', 2728, '39.11070', '-95.08420')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'KSZ102': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('DENTON', 186, '39.73160', '-95.26980'), ('HIGHLAND', 976, '39.86000', '-95.26540'), ('LEONA', 88, '39.78580', '-95.32190'), ('SEVERANCE', 108, '39.76690', '-95.24880'), ('TROY', 1054, '39.78630', '-95.08860'), ('WATHENA', 1348, '39.76430', '-94.94910'), ('WHITE CLOUD', 239, '39.97420', '-95.29720')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'KSZ101': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BAXTER SPRINGS', 4602, '37.02350', '-94.73520'), ('CARONA', None, '37.28020', '-94.86820'), ('COLUMBUS', 3396, '37.16910', '-94.84380'), ('CRESTLINE', None, '37.17070', '-94.70410'), ('FAULKNER', None, '37.10130', '-95.01130'), ('GALENA', 3287, '37.07570', '-94.63940'), ('HALLOWELL', None, '37.17460', '-94.99520'), ('LAWTON', None, '37.22180', '-94.63580'), ('LOWELL', None, '37.04850', '-94.70130'), ('MELROSE', None, '37.03070', '-94.95800'), ('NEUTRAL', None, '37.09770', '-94.79460'), ('RIVERTON', None, '37.07490', '-94.70440'), ('ROSELAND', 101, '37.28100', '-94.85020'), ('SCAMMON', 496, '37.27740', '-94.82460'), ('SHERMAN', None, '37.25720', '-95.05690'), ('SHERWIN', None, '37.17990', '-94.94740'), ('SKIDMORE', None, '37.24020', '-94.83160'), ('STIPPVILLE', None, '37.22210', '-94.83740'), ('TREECE', 149, '37.00080', '-94.84300'), ('WEIR', 780, '37.31000', '-94.77160'), ('WEST MINERAL', 243, '37.28410', '-94.92270')], 'partOfState': 'SOUTHEAST', 'wfo': 'SGF'}, -'KSZ100': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALTAMONT', 1092, '37.19150', '-95.29470'), ('ANGOLA', None, '37.10000', '-95.47000'), ('BARTLETT', 124, '37.05490', '-95.21130'), ('CHETOPA', 1281, '37.03630', '-95.09330'), ('DENNIS', None, '37.35000', '-95.42000'), ('EDNA', 423, '37.05850', '-95.35830'), ('LABETTE', 68, '37.23030', '-95.18350'), ('MOUND VALLEY', 418, '37.20720', '-95.40400'), ('OSWEGO', 2046, '37.16760', '-95.11180'), ('PARSONS', 11514, '37.33900', '-95.26790'), ('PARSONS TRI CITY ARPT', None, '37.33330', '-95.51670')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'MIZ079': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BURR OAK', 797, '41.84820', '-85.32090'), ('CENTREVILLE', 1579, '41.92180', '-85.52740'), ('COLON', 1227, '41.95900', '-85.32350'), ('CONSTANTINE', 2095, '41.83800', '-85.66530'), ('MENDON', 917, '42.00840', '-85.45410'), ('STURGIS', 11285, '41.80170', '-85.42120'), ('THREE RIVERS', 7328, '41.94410', '-85.63210'), ('WHITE PIGEON', 1627, '41.79840', '-85.64280')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'KSZ105': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('COUNTRYSIDE', 295, '39.01600', '-94.65510'), ('DE SOTO', 4561, '38.97360', '-94.95200'), ('EDGERTON', 1440, '38.76310', '-95.01280'), ('FAIRWAY', 3952, '39.02520', '-94.62870'), ('GARDNER', 9396, '38.81230', '-94.92590'), ('JOHNSON CO ARPT', None, '38.85000', '-94.73330'), ('LAKE QUIVIRA', 932, '39.04040', '-94.76800'), ('LEAWOOD', 27656, '38.90710', '-94.62520'), ('LENEXA', 40238, '38.96350', '-94.78850'), ('MERRIAM', 11008, '39.01920', '-94.69180'), ('MISSION', 9727, '39.02670', '-94.65670'), ('MISSION HILLS', 3593, '39.01360', '-94.61640'), ('MISSION WOODS', 165, '39.03320', '-94.61280'), ('OLATHE', 92962, '38.88690', '-94.81450'), ('OVERLAND PARK', 149080, '38.91460', '-94.68490'), ('PRAIRIE VILLAGE', 22072, '38.98670', '-94.63590'), ('ROELAND PARK', 6817, '39.03590', '-94.63750'), ('SHAWNEE', 47996, '39.01520', '-94.80450'), ('SPRING HILL', 2727, '38.75170', '-94.82740'), ('STANLEY', None, '38.85000', '-94.65000'), ('WESTWOOD', 1533, '39.03990', '-94.61500'), ('WESTWOOD HILLS', 378, '39.03910', '-94.61060')], 'partOfState': 'EAST CENTRAL', 'wfo': 'EAX'}, -'KSZ104': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(MKC)KS CITY DNTN ARPT', None, '39.11670', '-94.60000'), ('BONNER SPRINGS', 6768, '39.07930', '-94.88150'), ('EDWARDSVILLE', 4146, '39.07830', '-94.81860'), ('KANSAS CITY', 146866, '39.11840', '-94.72700')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'MIZ078': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CASSOPOLIS', 1740, '41.91250', '-86.00790'), ('DOWAGIAC', 6147, '41.98380', '-86.11060'), ('EDWARDSBURG', 1147, '41.79670', '-86.08350'), ('MARCELLUS', 1162, '42.02600', '-85.81320'), ('VANDALIA', 429, '41.91840', '-85.91500')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'MTZ058': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ASHLAND', 464, '45.62350', '-106.31430'), ('LAME DEER', 2018, '45.61760', '-106.60980')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTZ059': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CHAPMAN', None, '48.86860', '-108.13250'), ('FRENCHMAN RESERVOIR', None, '48.70550', '-107.22500'), ('LORING', None, '48.79220', '-107.86110'), ('PORT OF MORGAN', None, '48.99940', '-107.83160'), ('WHITEWATER', None, '48.75940', '-107.62690')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ054': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CHECKERBOARD', None, '46.57250', '-110.54610'), ('MARTINSDALE', None, '46.45830', '-110.31250'), ('RINGLING', None, '46.27170', '-110.80640'), ('WHITE SULPHUR SPRINGS', 984, '46.54720', '-110.90390')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, -'MTZ055': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('AMSTERDAM', None, '45.75810', '-111.31920'), ('BELGRADE', 5728, '45.77790', '-111.17740'), ('BIG SKY', 1221, '45.26390', '-111.33060'), ('BOZEMAN', 27509, '45.67690', '-111.04250'), ('BOZEMAN HOT SPRINGS', None, '45.65000', '-111.18330'), ('CHURCHILL', None, '45.75080', '-111.30360'), ('GALLATIN GATEWAY', None, '45.59170', '-111.19690'), ('LOGAN', None, '45.88440', '-111.42670'), ('MANHATTAN', 1396, '45.85740', '-111.33020'), ('MAUDLOW', None, '46.10780', '-111.17220'), ('THREE FORKS', 1728, '45.88940', '-111.55370'), ('TRIDENT', None, '45.94750', '-111.47580'), ('WEST YELLOWSTONE', 1177, '44.66460', '-111.10670'), ('WILLOW CREEK', 209, '45.82530', '-111.64390')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'MTZ056': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BEARCREEK', 83, '45.16060', '-109.15700'), ('BRIDGER', 745, '45.29340', '-108.91480'), ('FROMBERG', 486, '45.39110', '-108.90570'), ('JOLIET', 575, '45.48460', '-108.97060'), ('RED LODGE', 2177, '45.19150', '-109.24710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ057': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BUSBY', 695, '45.53120', '-106.95570'), ('CROW AGENCY', 1552, '45.60030', '-107.46070'), ('HARDIN', 3384, '45.73190', '-107.61340')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ050': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BENCHLAND', None, '47.07940', '-110.01750'), ('GEYSER', None, '47.27380', '-110.49250'), ('HOBSON', 244, '46.99890', '-109.87320'), ('MOCCASIN', None, '47.05330', '-109.90970'), ('RAYNESFORD', None, '47.27000', '-110.72920'), ('STANFORD', 454, '47.15200', '-110.21840'), ('UTICA', None, '46.96830', '-110.09170'), ('WINDHAM', None, '47.07860', '-110.13970')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, -'MTZ051': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BUFFALO', None, '46.82110', '-109.82780'), ('CHRISTINA', None, '47.38190', '-109.32330'), ('COFFEE CREEK', None, '47.34780', '-110.08080'), ('DANVERS', None, '47.22520', '-109.71640'), ('DENTON', 301, '47.32310', '-109.94890'), ('FERGUS', None, '47.33080', '-109.06640'), ('FORESTGROVE', None, '46.99140', '-109.07940'), ('GARNEILL', None, '46.75250', '-109.75190'), ('GRASS RANGE', 149, '47.02680', '-108.80280'), ('HILGER', None, '47.25390', '-109.35920'), ('LEWISTOWN', 5813, '47.06360', '-109.42770'), ('MOORE', 186, '46.97490', '-109.69490'), ('ROY', None, '47.33140', '-108.95920'), ('SUFFOLK', None, '47.46690', '-109.35500'), ('WINIFRED', 156, '47.56150', '-109.37530')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, -'MSZ082': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ESCATAWPA', 3566, '30.48900', '-88.55120'), ('GAUTIER', 11681, '30.38890', '-88.63990'), ('GULF PARK ESTATES', 4272, '30.37920', '-88.75850'), ('MOSS POINT', 15851, '30.42550', '-88.52900'), ('OCEAN SPRINGS', 17225, '30.40610', '-88.80190'), ('PASCAGOULA', 26200, '30.36610', '-88.54730'), ('ST. MARTIN', 6676, '30.43770', '-88.86820'), ('VANCLEAVE', 4910, '30.54170', '-88.66710'), ('WADE', 491, '30.64220', '-88.56970')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'MTZ053': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('RADERSBURG', 70, '46.19580', '-111.63110'), ('TOSTON', 105, '46.19280', '-111.44030'), ('TOWNSEND', 1867, '46.31890', '-111.51920'), ('WINSTON', 73, '46.47670', '-111.65810')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'NCZ096': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AMMON', None, '34.80000', '-78.58060'), ('BAY TREE LAKE', None, '34.66670', '-78.40830'), ('BLADENBORO', 1718, '34.53860', '-78.78780'), ('CLARKTON', 705, '34.48720', '-78.65640'), ('COUNCIL', None, '34.42080', '-78.46780'), ('DUART', None, '34.79330', '-78.81810'), ('DUBLIN', 250, '34.65670', '-78.72670'), ('EAST ARCADIA', 524, '34.38190', '-78.32360'), ('ELIZABETHTOWN', 3698, '34.62920', '-78.60560'), ('KELLY', 454, '34.46610', '-78.32470'), ('LAGOON', None, '34.56110', '-78.43500'), ('TAR HEEL', 70, '34.73310', '-78.79030'), ('WHITE LAKE', 529, '34.64030', '-78.48420'), ('WHITE OAK', 304, '34.74940', '-78.70830')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCZ097': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ATKINSON', 236, '34.52830', '-78.17140'), ('BURGAW', 3337, '34.55190', '-77.92640'), ('CURRIE', None, '34.46250', '-78.10140'), ('EDGECOME', None, '34.46280', '-77.59530'), ('HAMPSTEAD', None, '34.36750', '-77.71080'), ('LONG CREEK', None, '34.44190', '-78.01000'), ('MAPLE HILL', None, '34.66110', '-77.69670'), ('PENDERLEA', None, '34.65940', '-78.05000'), ('ROCKY POINT', None, '34.43500', '-77.88810'), ('SCOTTS HILL', None, '34.32110', '-77.76610'), ('ST. HELENA', 395, '34.51380', '-77.91540'), ('SURF CITY', 1393, '34.42690', '-77.54640'), ('TOPSAIL BEACH', 471, '34.36500', '-77.63080'), ('WARDS CORNER', None, '34.53440', '-78.07220'), ('WATHA', 151, '34.64030', '-77.96110'), ('WILLARD', None, '34.69000', '-77.98000'), ('WOODSIDE', None, '34.41920', '-77.64750')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCZ094': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALLIANCE', 781, '35.14450', '-76.80790'), ('ARAPAHOE', 436, '35.01910', '-76.82730'), ('BAYBORO', 741, '35.14390', '-76.76870'), ('MESIC', 257, '35.20450', '-76.64830'), ('MINNESOTT BEACH', 311, '34.98030', '-76.81870'), ('ORIENTAL', 875, '35.03470', '-76.68460'), ('STONEWALL', 285, '35.13750', '-76.74150'), ('VANDEMERE', 289, '35.18910', '-76.66490')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ095': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ATLANTIC BEACH', 1781, '34.70020', '-76.73950'), ('BEAUFORT', 3771, '34.72150', '-76.65250'), ('CAPE CARTERET', 1214, '34.69430', '-77.05950'), ('CEDAR POINT', 929, '34.68140', '-77.08150'), ('EMERALD ISLE', 3488, '34.66640', '-77.02920'), ('INDIAN BEACH', 95, '34.68590', '-76.89440'), ('MOREHEAD CITY', 7691, '34.72470', '-76.73200'), ('NEWPORT', 3349, '34.78790', '-76.86100'), ('PINE KNOLL SHORES', 1524, '34.69570', '-76.81820')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ092': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('MAYSVILLE', 1002, '34.90370', '-77.23090'), ('POLLOCKSVILLE', 269, '35.00700', '-77.22130'), ('TRENTON', 206, '35.06300', '-77.35500')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ093': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BRIDGETON', 328, '35.12240', '-77.02170'), ('COVE CITY', 433, '35.18840', '-77.32190'), ('DOVER', 443, '35.21610', '-77.43350'), ('HAVELOCK', 22442, '34.90740', '-76.89490'), ('JAMES CITY', 5420, '35.06550', '-77.01810'), ('NEUSE FOREST', 1426, '34.96360', '-76.94510'), ('NEW BERN', 23128, '35.11990', '-77.07880'), ('RIVER BEND', 2923, '35.07310', '-77.15220'), ('TRENT WOODS', 4192, '35.07790', '-77.09630'), ('VANCEBORO', 898, '35.30440', '-77.15760')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ090': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEULAVILLE', 1067, '34.92230', '-77.77250'), ('CALYPSO', 410, '35.15460', '-78.10500'), ('FAISON', 744, '35.11660', '-78.13660'), ('GREENEVERS', 560, '34.82700', '-77.92440'), ('KENANSVILLE', 1149, '34.96200', '-77.96600'), ('MAGNOLIA', 932, '34.89550', '-78.05520'), ('ROSE HILL', 1330, '34.82500', '-78.02820'), ('TEACHEY', 245, '34.76740', '-78.00880'), ('WALLACE', 3344, '34.73500', '-77.99790'), ('WARSAW', 3051, '34.99890', '-78.08800')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ091': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('KINSTON', 23688, '35.27540', '-77.59030'), ('LA GRANGE', 2844, '35.30590', '-77.78840'), ('PINK HILL', 521, '35.05640', '-77.74480')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ098': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CAMP LEJEUNE CENTRAL', None, '34.69580', '-77.36650'), ('HALF MOON', 6645, '34.82700', '-77.46650'), ('HOLLY RIDGE', 831, '34.49260', '-77.55580'), ('JACKSONVILLE', 66715, '34.76440', '-77.40410'), ('NEW RIVER STATION', None, '34.70970', '-77.44250'), ('PINEY GREEN', 11658, '34.75440', '-77.32160'), ('PUMPKIN CENTER', 2228, '34.78040', '-77.36660'), ('RICHLANDS', 928, '34.89980', '-77.54780'), ('SNEADS FERRY', 2248, '34.55370', '-77.37870'), ('SWANSBORO', 1426, '34.69050', '-77.12890')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ099': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BOLTON', 494, '34.32060', '-78.40220'), ('BRUNSWICK', 360, '34.29270', '-78.70720'), ('CERRO GORDO', 244, '34.32190', '-78.92670'), ('CHADBOURN', 2129, '34.32190', '-78.82720'), ('CHERRY GROVE', None, '34.23830', '-78.96580'), ('EVERGREEN', None, '34.40810', '-78.90190'), ('FAIR BLUFF', 1181, '34.31330', '-79.03750'), ('IRON HILL', None, '34.13830', '-78.78330'), ('LAKE WACCAMAW', 1411, '34.31890', '-78.50030'), ('NAKINA', None, '34.13440', '-78.66830'), ('OLD DOCK', None, '34.16780', '-78.59750'), ('PIREWAY', None, '34.02030', '-78.63810'), ('RIEGLEWOOD', None, '34.33330', '-78.21670'), ('SIDNEY', None, '34.18690', '-78.78940'), ('TABOR CITY', 2509, '34.14860', '-78.87690'), ('WHITEVILLE', 5148, '34.33860', '-78.70330')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'MSZ066': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ELLISVILLE', 3465, '31.59870', '-89.20710'), ('LAUREL', 18393, '31.69370', '-89.14470'), ('SANDERSVILLE', 789, '31.78760', '-89.03610'), ('SOSO', 379, '31.75460', '-89.27640')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MSZ067': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BATTLES', None, '31.50160', '-88.51020'), ('BOICE', None, '31.74700', '-88.65370'), ('BUCKATUNNA', None, '31.53860', '-88.52920'), ('CHICORA', None, '31.56390', '-88.57620'), ('CLARA', None, '31.57970', '-88.69640'), ('DENHAM', None, '31.65530', '-88.53140'), ('EUCUTTA', None, '31.80550', '-88.87310'), ('GRETNA', None, '31.75970', '-88.50210'), ('HIWANNEE', None, '31.80920', '-88.69110'), ('MATHERVILLE', None, '31.86530', '-88.56540'), ('MULBERRY', None, '31.47740', '-88.84870'), ('ROBINSON JUNCTION', None, '31.57470', '-88.55980'), ('SMITHTOWN', None, '31.43720', '-88.71580'), ('STATE LINE', 555, '31.43750', '-88.47260'), ('STATE LINE', 555, '31.43570', '-88.47180'), ('STRENGTHFORD', None, '31.61370', '-88.88480'), ('WAYNESBORO', 5197, '31.67470', '-88.64690'), ('WHISTLER', None, '31.69640', '-88.80500'), ('WINCHESTER', None, '31.61890', '-88.59090'), ('WOODWARDS', None, '31.69330', '-88.66310')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'WVZ049': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('LUKE', 80, '39.47560', '-79.06040'), ('ANTIOCH', None, '39.32360', '-79.01780'), ('EMORYVILLE', None, '39.35330', '-79.17060'), ('FORT ASHBY', 1354, '39.49820', '-78.76540'), ('HARTMANSVILLE', None, '39.32190', '-79.15530'), ('HEADSVILLE', None, '39.39250', '-78.85610'), ('KEYSER', 5303, '39.43950', '-78.98400'), ('KITZMILLER', None, '39.38000', '-79.18000'), ('NEW CREEK', None, '39.37500', '-79.02690'), ('PATTERSON CREEK', None, '39.56670', '-78.73330'), ('PIEDMONT', 1014, '39.47930', '-79.04780'), ('REESES MILL', None, '39.43060', '-78.85500'), ('RIDGEVILLE', None, '39.34830', '-78.99080'), ('RUSSELLDALE', None, '39.29250', '-78.93030'), ('SHORT GAP', None, '39.54360', '-78.81140'), ('SULPHUR CITY', None, '39.35310', '-79.13780'), ('WAGONER', None, '39.53810', '-78.67250'), ('WARNOCKS', None, '39.46190', '-79.09780')], 'partOfState': '', 'wfo': 'LWX'}, -'MSZ065': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COLLINS', 2683, '31.63780', '-89.55780'), ('MOUNT OLIVE', 893, '31.75940', '-89.65620'), ('SEMINARY', 335, '31.55920', '-89.49530')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MSZ062': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOGUE CHITTO', 533, '31.43270', '-90.45080'), ('BROOKHAVEN', 9861, '31.58340', '-90.44530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'MSZ063': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MONTICELLO', 1726, '31.55030', '-90.11270'), ('NEW HEBRON', 447, '31.73290', '-89.98320'), ('SILVER CREEK', 209, '31.60330', '-90.00460')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'MSZ060': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('NATCHEZ', 18464, '31.54790', '-91.38860')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'MSZ061': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BUDE', 1037, '31.46260', '-90.85120'), ('MEADVILLE', 519, '31.47180', '-90.89300'), ('ROXIE', 569, '31.50510', '-91.06720')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'WVZ043': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BALLENGEE', None, '37.61670', '-80.75000'), ('BUCK', None, '37.60000', '-80.83330'), ('ELLISON', None, '37.58330', '-81.00000'), ('ELTON', None, '37.81670', '-80.81670'), ('GLENRAY', None, '37.71670', '-80.66670'), ('HINTON', 2880, '37.66670', '-80.90000'), ('HIX', None, '37.71670', '-80.81670'), ('INDIAN MILLS', None, '37.53330', '-80.81670'), ('JUMPING BRANCH', None, '37.65000', '-80.98330'), ('LAWN', None, '37.83330', '-80.75000'), ('LICK CREEK', None, '37.48330', '-80.91670'), ('PIPESTEM', None, '37.53330', '-80.96670'), ('SANDSTONE', None, '37.76670', '-80.88330'), ('TALCOTT', None, '37.65000', '-80.75000')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'WVZ042': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('GLEN LYN', 151, '37.36670', '-80.88330'), ('ATHENS', 1102, '37.41670', '-81.01670'), ('ATHENS', 1102, '37.42280', '-81.01610'), ('BLUEFIELD', 11451, '37.26670', '-81.21670'), ('BRAMWELL', 426, '37.32670', '-81.31270'), ('BRAMWELL', 426, '37.31670', '-81.31670'), ('CAMP CREEK', None, '37.48330', '-81.10000'), ('CERES', None, '37.30000', '-81.15000'), ('COALDALE', None, '37.35000', '-81.35000'), ('DUNNS', None, '37.53330', '-81.05000'), ('ELGOOD', None, '37.40000', '-80.93330'), ('FLAT TOP', None, '37.58330', '-81.11670'), ('KEGLEY', None, '37.40000', '-81.13330'), ('LERONA', None, '37.50000', '-80.98330'), ('MATOAKA', 317, '37.41670', '-81.25000'), ('MERCER CO AIRPORT', None, '37.30000', '-81.21670'), ('MONTCALM', 885, '37.35030', '-81.25180'), ('MONTCALM', 885, '37.35000', '-81.25000'), ('OAKVALE', 142, '37.33290', '-80.96600'), ('PRINCETON', 6347, '37.36670', '-81.10000'), ('SANDLICK', None, '37.33330', '-81.21670'), ('SPANISHBURG', None, '37.45000', '-81.11670'), ('WENONAH', None, '37.46670', '-81.25000'), ('WILLOWTON', None, '37.35000', '-80.88330')], 'partOfState': 'SOUTHEAST', 'wfo': 'RNK'}, -'WVZ041': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CANAAN HGTS', None, '39.10000', '-79.43000'), ('DAVIS', 624, '39.13100', '-79.46650'), ('HAMBLETON', 246, '39.08120', '-79.64610'), ('HENDRICKS', 319, '39.07520', '-79.63030'), ('PARSONS', 1463, '39.09330', '-79.67930'), ('RED CREEK', None, '39.00000', '-79.50000'), ('THOMAS', 452, '39.14740', '-79.49910')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVZ040': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('AUDRA STATE PARK', None, '39.04040', '-80.06570'), ('BELINGTON', 1788, '39.02230', '-79.93870'), ('JUNIOR', 450, '38.97730', '-79.95050'), ('PHILIPPI', 2870, '39.15220', '-80.04420')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ047': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEVERLY', 651, '38.84240', '-79.87480'), ('DAILEY', None, '38.79870', '-79.89650'), ('ELKINS', 7032, '38.92510', '-79.85360'), ('HARMAN', 126, '38.92140', '-79.52480'), ('HUTTONSVILLE', 217, '38.71470', '-79.97630'), ('MILL CREEK', 662, '38.73160', '-79.97250'), ('MONTROSE', 156, '39.06960', '-79.81070'), ('WOMELSDORF (COALTON)', 247, '38.89770', '-79.96450')], 'partOfState': '', 'wfo': 'RLX'}, -'ARZ066': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BEARDEN', 1125, '33.72750', '-92.61630'), ('CAMDEN', 13154, '33.56670', '-92.84570'), ('CHIDESTER', 335, '33.69990', '-93.01870'), ('EAST CAMDEN', 902, '33.60850', '-92.74240'), ('LOUANN', 195, '33.39160', '-92.79270'), ('READER', 82, '33.75180', '-93.10120'), ('STEPHENS', 1152, '33.42010', '-93.06740')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'MSZ068': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CENTREVILLE', 1680, '31.08640', '-91.06580'), ('DOLOROSA', None, '31.30500', '-91.35940'), ('FORT ADAMS', None, '31.08640', '-91.54810'), ('WOODVILLE', 1192, '31.10330', '-91.29880')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'MSZ069': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CROSBY', 360, '31.27860', '-91.06140'), ('GILLSBERG', None, '31.02500', '-90.65580'), ('GLOSTER', 1073, '31.19460', '-91.01800'), ('LIBERTY', 633, '31.16020', '-90.80120'), ('SMITHDALE', None, '31.33940', '-90.68280')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'TNZ002': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CLAYTON', None, '36.46670', '-89.25000'), ('CLOVERDALE', None, '36.23330', '-89.33330'), ('HORNBEAK', 435, '36.33140', '-89.29690'), ('OBION', 1134, '36.26080', '-89.19200'), ('RIVES', 331, '36.35710', '-89.04970'), ('SAMBURG', 260, '36.38230', '-89.35190'), ('SOUTH FULTON', 2517, '36.49200', '-88.88490'), ('TROY', 1273, '36.33950', '-89.16160'), ('UNION CITY', 10876, '36.42250', '-89.05100'), ('WOODLAND MILLS', 296, '36.47630', '-89.11260')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MIZ072': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALAMO', None, '42.37530', '-85.70780'), ('AUGUSTA', 899, '42.33760', '-85.35140'), ('CLIMAX', 791, '42.23940', '-85.33700'), ('COMSTOCK', None, '42.28870', '-85.51330'), ('COOPER', None, '42.37630', '-85.61030'), ('EASTWOOD', 6265, '42.30200', '-85.54410'), ('FULTON', None, '42.11500', '-85.35250'), ('GALESBURG', 1988, '42.29060', '-85.41760'), ('KALAMAZOO', 77145, '42.27470', '-85.58830'), ('MIDLAND PARK', None, '42.39080', '-85.38550'), ('OSHTEMO', None, '42.25880', '-85.67750'), ('PARCHMENT', 1936, '42.32690', '-85.56550'), ('PORTAGE', 44897, '42.20140', '-85.59060'), ('RICHLAND', 593, '42.37560', '-85.45610'), ('SCHOOLCRAFT', 1587, '42.11520', '-85.63350'), ('SCOTTS', None, '42.19580', '-85.41300'), ('SOUTH GULL LAKE', 1526, '42.38750', '-85.39670'), ('VICKSBURG', 2320, '42.12040', '-85.53420'), ('WESTWOOD', 9122, '42.30340', '-85.63010')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'MIZ071': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BANGOR', 1933, '42.31150', '-86.11450'), ('BLOOMINGDALE', 528, '42.38340', '-85.95780'), ('BREEDSVILLE', 235, '42.34710', '-86.07090'), ('COVERT', None, '42.29370', '-86.26220'), ('DECATUR', 1838, '42.10970', '-85.97340'), ('GLENDALE', None, '42.30280', '-85.95630'), ('GOBLES', 815, '42.36190', '-85.87670'), ('GRAND JUNCTION', None, '42.40420', '-86.07300'), ('HARTFORD', 2476, '42.20750', '-86.16620'), ('KEELER', None, '42.11280', '-86.16670'), ('KENDALL', None, '42.36170', '-85.81330'), ('LACOTA', None, '42.41350', '-86.12970'), ('LAWRENCE', 1059, '42.21870', '-86.05280'), ('LAWTON', 1859, '42.16720', '-85.84640'), ('MATTAWAN', 2536, '42.21400', '-85.78760'), ('MCDONALD', None, '42.26530', '-86.15700'), ('MENTHA', None, '42.35720', '-85.77470'), ('PAW PAW', 3363, '42.21800', '-85.89000'), ('PINE GROVE', None, '42.35380', '-85.86280'), ('SOUTH HAVEN', 5021, '42.40040', '-86.27250')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'KSZ074': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BIG BOW', None, '37.56000', '-101.56000'), ('JOHNSON CITY', 1528, '37.56960', '-101.75250'), ('MANTER', 178, '37.52420', '-101.88270'), ('THE SAUNDERS ELEVATOR', None, '37.47000', '-102.03000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'MIZ077': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARODA', 858, '41.95460', '-86.48760'), ('BENTON HARBOR', 11182, '42.11640', '-86.44620'), ('BENTON HEIGHTS', 5458, '42.12110', '-86.41500'), ('BERRIEN SPRINGS', 1862, '41.94730', '-86.34000'), ('BRIDGMAN', 2428, '41.94070', '-86.56360'), ('BUCHANAN', 4681, '41.82790', '-86.36680'), ('COLOMA', 1595, '42.18660', '-86.30770'), ('EAU CLAIRE', 656, '41.98390', '-86.30380'), ('FAIR PLAIN', 7828, '42.08170', '-86.45350'), ('GALIEN', 593, '41.80160', '-86.49970'), ('GRAND BEACH', 221, '41.77470', '-86.78830'), ('LAKE MICHIGAN BEACH', 1509, '42.21430', '-86.38240'), ('MICHIANA', 200, '41.76340', '-86.81120'), ('NEW BUFFALO', 2200, '41.79040', '-86.74530'), ('NILES', 12204, '41.83450', '-86.24800'), ('PAW PAW LAKE', 3944, '42.21120', '-86.27560'), ('SHOREHAM', 860, '42.05770', '-86.51160'), ('SHOREWOOD-TOWER HILLS-HAR', None, '41.88450', '-86.62040'), ('ST. JOSEPH', 8789, '42.09690', '-86.49130'), ('STEVENSVILLE', 1191, '42.01380', '-86.52520'), ('THREE OAKS', 1829, '41.79930', '-86.61270'), ('WATERVLIET', 1843, '42.18660', '-86.25720')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'MIZ076': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BELLEVILLE', 3997, '42.20340', '-83.48230'), ('CANTON', 76366, '42.30850', '-83.48220'), ('DEARBORN', 97775, '42.31130', '-83.21350'), ('DOWNTOWN DETROIT', None, '42.33220', '-83.04810'), ('FLAT ROCK', 8488, '42.10180', '-83.27290'), ('GROSSE ILE', 10894, '42.12840', '-83.14940'), ('GROSSE POINTE', 5670, '42.38650', '-82.90610'), ('GROSSE POINTE SHORES', 2823, '42.44520', '-82.87410'), ('HAMTRAMCK', 22976, '42.40000', '-83.07000'), ('HIGHLAND PARK', 16746, '42.40490', '-83.09880'), ('LINCOLN PARK', 40008, '42.24350', '-83.18100'), ('LIVONIA', 100545, '42.39820', '-83.37250'), ('NORTHVILLE', 6459, '42.43650', '-83.48840'), ('NORTHEAST DETROIT', None, '42.43000', '-83.03000'), ('NORTHWEST DETROIT', None, '42.40000', '-83.22000'), ('PLYMOUTH', 9022, '42.37120', '-83.46740'), ('REDFORD', 51622, '42.39480', '-83.29420'), ('RIVERVIEW', 13272, '42.17140', '-83.19210'), ('ROMULUS', 22979, '42.22380', '-83.36620'), ('SOUTHWEST DETROIT', None, '42.33000', '-83.11000'), ('SUMPTER TOWNSHIP', None, '42.13150', '-83.48170'), ('TAYLOR', 65868, '42.22530', '-83.26840'), ('WESTLAND', 86602, '42.31900', '-83.38090')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIZ075': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ANN ARBOR', 114024, '42.27540', '-83.73080'), ('BRIDGEWATER', None, '42.16020', '-83.89820'), ('CHELSEA', 4398, '42.31440', '-84.02200'), ('DEXTER', 2338, '42.33150', '-83.87980'), ('HUDSON MILLS', None, '42.38720', '-83.91690'), ('LYNDON TOWNSHIP', None, '42.38150', '-84.06750'), ('MANCHESTER', 2160, '42.14890', '-84.03550'), ('MILAN', 4775, '42.08740', '-83.68190'), ('PLEASANT LAKE', None, '42.20670', '-83.95110'), ('SALEM', None, '42.40610', '-83.58000'), ('SALINE', 8034, '42.17580', '-83.78000'), ('WHITMORE LAKE', 6574, '42.42910', '-83.74540'), ('WHITTAKER', None, '42.12810', '-83.59970'), ('YPSILANTI', 22362, '42.24420', '-83.62110')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TNZ005': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CUMBERLAND CITY', 316, '36.38220', '-87.64400'), ('DOVER', 1442, '36.48140', '-87.84370')], 'partOfState': '', 'wfo': 'OHX'}, -'LAZ070': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('YSCLOSKEY', None, '29.84170', '-89.68830')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'TNZ008': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GALLATIN', 23230, '36.37870', '-86.45310'), ('HENDERSONVILLE', 40620, '36.29400', '-86.60350'), ('MILLERSVILLE', 5308, '36.38180', '-86.70130'), ('MITCHELLVILLE', 207, '36.63270', '-86.53920'), ('PORTLAND', 8458, '36.58590', '-86.51660'), ('WESTMORELAND', 2093, '36.56380', '-86.24690')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ009': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LAFAYETTE', 3885, '36.52450', '-86.03090'), ('RED BOILING SPRINGS', 1023, '36.53170', '-85.85070')], 'partOfState': '', 'wfo': 'OHX'}, -'KSZ079': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELPRE', 104, '37.95100', '-99.09920'), ('CENTERVIEW', None, '37.80000', '-99.27000'), ('FELLSBURG', None, '37.80000', '-99.18000'), ('KINSLEY', 1658, '37.92240', '-99.41110'), ('LEWIS', 486, '37.93700', '-99.25430'), ('OFFERLE', 220, '37.89090', '-99.56050'), ('TROUSDALE', None, '37.80000', '-99.08000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'KSZ078': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELLEFONT', None, '37.88000', '-99.65000'), ('BLOOM', None, '37.48000', '-99.88000'), ('BUCKLIN', 725, '37.54900', '-99.63460'), ('DODGE CITY', 25176, '37.75870', '-100.01540'), ('FORD', 314, '37.63700', '-99.75400'), ('FT. DODGE', None, '37.74000', '-99.93000'), ('HOWELL', None, '37.78000', '-100.18000'), ('KINGSDOWN', None, '37.51000', '-99.76000'), ('SPEARVILLE', 813, '37.84800', '-99.75430'), ('WINDTHORST', None, '37.78000', '-99.63000'), ('WRIGHT', None, '37.78000', '-99.89000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'VAZ015': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BAYWOOD', None, '36.61670', '-81.01670'), ('BRIDLE CREEK', None, '36.61670', '-81.25000'), ('COMERS ROCK', None, '36.75000', '-81.25000'), ('ELK CREEK', None, '36.71670', '-81.18330'), ('FLATRIDGE', None, '36.73330', '-81.31670'), ('FRIES', 614, '36.71670', '-80.96670'), ('INDEPENDENCE', 971, '36.61670', '-81.15000'), ('MOUTH OF WILSON', None, '36.58330', '-81.33330'), ('RUGBY', None, '36.61670', '-81.45000'), ('SPRING VALLEY', None, '36.73330', '-81.06670'), ('TROUT DALE', None, '36.70000', '-81.43330'), ('VOLNEY', None, '36.61670', '-81.38330'), ('WHITETOP', None, '36.60000', '-81.61670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'WYZ002': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('PAHASKA', None, '44.50000', '-109.97000')], 'partOfState': 'NORTHWEST', 'wfo': 'RIW'}, -'AKZ145': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CANTWELL', 222, '63.37160', '-148.92020'), ('CHASE', 41, '62.44910', '-150.10180'), ('SKWENTNA', 111, '61.99020', '-151.39780'), ('TALKEETNA', 772, '62.33690', '-150.09260'), ('TRAPPER CREEK', 423, '62.24140', '-150.41570'), ('TYONEK', 193, '61.06700', '-151.21520'), ('WILLOW', 1658, '61.74080', '-150.05630')], 'partOfState': '', 'wfo': 'AFC'}, -'VAZ016': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BYLLESBY', None, '36.78330', '-80.93330'), ('CANA', 1228, '36.58330', '-80.66670'), ('DUGSPUR', None, '36.81670', '-80.61670'), ('FANCY GAP', 260, '36.66670', '-80.70000'), ('GALAX CITY', None, '36.66670', '-80.91670'), ('GALAX HILLSVILLE AIRPORT', None, '36.76670', '-80.81670'), ('GLADESBORO', None, '36.71670', '-80.65000'), ('HILLSVILLE', 2607, '36.76670', '-80.73330'), ('LAMBSBURG', None, '36.58330', '-80.76670'), ('LAUREL FORK', None, '36.71670', '-80.51670'), ('PIPERS GAP', None, '36.65000', '-80.83330'), ('SYLVATUS', None, '36.86670', '-80.76670'), ('WOODLAWN', 2249, '36.71670', '-80.81670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'AKZ141': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CHICKALOON', 213, '61.79510', '-148.48050'), ('CHISTOCHINA', 93, '62.56440', '-144.68720'), ('CHITINA', 123, '61.52480', '-144.48910'), ('COPPER CENTER', 362, '61.98080', '-145.35110'), ('COPPERVILLE', 179, '62.04390', '-145.42070'), ('GAKONA', 215, '62.29270', '-145.30950'), ('GLENNALLEN', 554, '62.08490', '-145.60350'), ('GULKANA', 88, '62.25270', '-145.39900'), ('KENNY LAKE', 410, '61.71930', '-144.94830'), ('MCCARTHY', 42, '61.42320', '-142.89800'), ('MENDELTNA', 63, '62.06620', '-146.44990'), ('MENTASTA LAKE', 142, '62.85180', '-143.76090'), ('PAXSON', 43, '63.08990', '-145.61300'), ('SLANA', 124, '62.70150', '-143.99400'), ('TONSINA', 92, '61.63580', '-145.15750')], 'partOfState': '', 'wfo': 'AFC'}, -'SDZ069': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('GAYVILLE', 418, '42.88820', '-97.17280'), ('LESTERVILLE', 158, '43.03870', '-97.59050'), ('MAYFIELD', None, '43.08190', '-97.31760'), ('MISSION HILL', 183, '42.92120', '-97.27910'), ('UTICA', 86, '42.98130', '-97.49620'), ('VOLIN', 207, '42.95900', '-97.18070'), ('YANKTON', 13528, '42.88980', '-97.39210')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ068': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AVON', 561, '43.00510', '-98.05910'), ('SCOTLAND', 891, '43.14810', '-97.71950'), ('SPRINGFIELD', 792, '42.85470', '-97.89300'), ('TABOR', 417, '42.94770', '-97.65970'), ('TYNDALL', 1239, '42.98970', '-97.86460')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ067': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CANTON', 3110, '43.30320', '-96.58090'), ('HARRISBURG', 958, '43.43030', '-96.69580'), ('HUDSON', 402, '43.12980', '-96.45550'), ('LENNOX', 2037, '43.35280', '-96.89640'), ('TEA', 1742, '43.44810', '-96.83730'), ('WORTHING', 585, '43.32890', '-96.76490')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ066': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CENTERVILLE', 910, '43.11770', '-96.95890'), ('CHANCELLOR', 328, '43.37240', '-96.98740'), ('DAVIS', 104, '43.25830', '-96.99580'), ('DOLTON', 41, '43.49150', '-97.38480'), ('HURLEY', 426, '43.27980', '-97.09030'), ('MARION', 892, '43.42400', '-97.26060'), ('MONROE', 163, '43.48710', '-97.21600'), ('PARKER', 1031, '43.39620', '-97.13840'), ('VIBORG', 832, '43.17120', '-97.08050')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ065': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CLAYTON', None, '43.44310', '-97.65730'), ('DIMOCK', 151, '43.47600', '-97.98770'), ('FREEMAN', 1317, '43.35090', '-97.43240'), ('MENNO', 729, '43.23790', '-97.57710'), ('OLIVET', 70, '43.24170', '-97.67350'), ('PARKSTON', 1674, '43.39330', '-97.98560'), ('TRIPP', 711, '43.22500', '-97.96640')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ064': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARMOUR', 782, '43.31940', '-98.34390'), ('CORSICA', 644, '43.42430', '-98.40570'), ('DELMONT', 263, '43.26600', '-98.15990'), ('HARRISON', 51, '43.44000', '-98.52970')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ063': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('DANTE', 82, '43.03990', '-98.18640'), ('GEDDES', 252, '43.25400', '-98.69730'), ('LAKE ANDES', 819, '43.15570', '-98.53500'), ('MARTY', 421, '42.99290', '-98.42930'), ('PICKSTOWN', 168, '43.06690', '-98.53050'), ('PLATTE', 1367, '43.38740', '-98.84390'), ('RAVINIA', 79, '43.13600', '-98.42710'), ('WAGNER', 1675, '43.07810', '-98.30160')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FSD'}, -'SDZ062': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BALTIC', 811, '43.75960', '-96.73840'), ('BRANDON', 5693, '43.59130', '-96.57800'), ('COLTON', 662, '43.78640', '-96.92700'), ('CROOKS', 859, '43.66020', '-96.80730'), ('DELL RAPIDS', 2980, '43.82490', '-96.71250'), ('GARRETSON', 1165, '43.71680', '-96.50030'), ('HARTFORD', 1844, '43.62350', '-96.94480'), ('HUMBOLDT', 521, '43.64500', '-97.07400'), ('ROWENA', None, '43.51990', '-96.55710'), ('SHERMAN', 87, '43.75770', '-96.47540'), ('SIOUX FALLS', 123975, '43.54420', '-96.73010'), ('VALLEY SPRINGS', 792, '43.58320', '-96.46470'), ('WALL LAKE', None, '43.52890', '-96.96000')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ061': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRIDGEWATER', 607, '43.55020', '-97.49860'), ('CANISTOTA', 700, '43.59750', '-97.29160'), ('MONTROSE', 460, '43.70150', '-97.18300'), ('SALEM', 1371, '43.72430', '-97.38860'), ('SPENCER', 157, '43.72790', '-97.59170')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ060': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALEXANDRIA', 563, '43.65390', '-97.77900'), ('EMERY', 439, '43.60270', '-97.62020'), ('FARMER', 18, '43.72480', '-97.68810'), ('FULTON', 86, '43.72820', '-97.82230')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'VAZ017': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALUM RIDGE', None, '36.93330', '-80.46670'), ('CHECK', None, '37.05000', '-80.18330'), ('COPPER HILL', None, '37.08330', '-80.13330'), ('FLOYD', 432, '36.91670', '-80.31670'), ('INDIAN VALLEY', None, '36.91670', '-80.55000'), ('TERRYS FORK', None, '37.05000', '-80.26670'), ('WILLIS', None, '36.85000', '-80.48330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAZ049': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('APPLE GROVE', None, '37.89010', '-77.89810'), ('BOSWELLS TAVERN', None, '38.07070', '-78.18600'), ('BUMPASS', None, '37.96380', '-77.73730'), ('BYRD MILL', None, '37.99200', '-78.08220'), ('CUCKOO', None, '37.95230', '-77.90050'), ('DABNEYS', None, '37.76580', '-77.80020'), ('FERNCLIFF', None, '37.93330', '-78.10960'), ('FREDERICKS HALL', None, '37.98580', '-77.82300'), ('GREEN SPRINGS', None, '38.08610', '-78.11260'), ('GUM SPRING', None, '37.77540', '-77.89700'), ('LOCUST CREEK', None, '37.86730', '-77.78790'), ('LOUISA', 1401, '38.01920', '-77.99950'), ('LOUISA AIRPORT', None, '38.01380', '-77.98090'), ('MINERAL', 424, '38.00730', '-77.90660'), ('ORCHID', None, '37.82900', '-77.89540'), ('PENDLETON', None, '37.99470', '-77.89830'), ('TREVILIANS', None, '38.05040', '-78.07370'), ('VAWTER CORNER', None, '38.12900', '-78.01380'), ('WALDROP', None, '38.07360', '-78.20190'), ('WARES CROSSROADS', None, '38.07960', '-77.87980'), ('YANCEYVILLE', None, '37.91650', '-77.98640'), ('ZION CROSSROADS', None, '37.97060', '-78.21940')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'VAZ048': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ANTIOCH', None, '37.84650', '-78.42050'), ('BREMO BLUFF', None, '37.71240', '-78.29730'), ('BYBEE', None, '37.92560', '-78.20580'), ('CARYSBROOK', None, '37.81210', '-78.24210'), ('CENTRAL PLAINS', None, '37.80380', '-78.33690'), ('COHASSET', None, '37.76920', '-78.30340'), ('COLUMBIA', 49, '37.75300', '-78.16510'), ('CUNNINGHAM', None, '37.87400', '-78.32020'), ('DIXIE', None, '37.78150', '-78.23580'), ('FORK UNION', None, '37.76310', '-78.26250'), ('HARDWARE', None, '37.74260', '-78.40590'), ('KENTS STORE', None, '37.87730', '-78.12860'), ('LAKE MONTICELLO', 6852, '37.91670', '-78.31480'), ('LAKE MONTICELLO', 6852, '37.92310', '-78.33510'), ('NAHOR', None, '37.90880', '-78.34780'), ('PALMYRA', None, '37.86060', '-78.26360'), ('SCOTTSVILLE', 555, '37.79890', '-78.49000'), ('SHORES', None, '37.74190', '-78.35870'), ('STAGE JUNCTION', None, '37.79130', '-78.15330'), ('TROY', None, '37.94720', '-78.24740'), ('UNION MILLS', None, '37.93920', '-78.30080'), ('WILDWOOD', None, '37.90310', '-78.25720'), ('WILMINGTON', None, '37.84910', '-78.20160')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'OKZ068': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PUMPKIN CENTER', None, '35.71280', '-95.12690'), ('OAKS', 412, '36.16610', '-94.85440'), ('TAHLEQUAH', 14458, '35.91530', '-94.96970'), ('COOKSON', None, '35.71080', '-94.91970'), ('HULBERT', 543, '35.93250', '-95.14110'), ('ELDON', 991, '35.92810', '-94.84000'), ('LOST CITY', 809, '35.98780', '-95.13610'), ('PEGGS', None, '36.08080', '-95.09920'), ('SCRAPER', 475, '36.08940', '-94.85030')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'OKZ069': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MARIETTA', 2445, '35.84330', '-94.65780'), ('STILWELL', 3276, '35.81440', '-94.62830'), ('BUNCH', None, '35.68250', '-94.76080'), ('BARON', None, '35.92360', '-94.61610'), ('CHRISTIE', 166, '35.95810', '-94.69000'), ('PROCTOR', None, '35.96610', '-94.77720'), ('WESTVILLE', 1596, '35.99250', '-94.56780'), ('BALLARD', None, '36.09440', '-94.58920'), ('WATTS', 316, '36.10920', '-94.57000')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'VAZ043': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AXTON', None, '36.66670', '-79.71670'), ('BASSETT', 1338, '36.76670', '-79.98330'), ('CHATMOSS', 1742, '36.67950', '-79.80590'), ('COLLINSVILLE', 7777, '36.72480', '-79.91200'), ('FIELDALE', 929, '36.70000', '-79.95000'), ('FIELDALE', 929, '36.70310', '-79.94320'), ('FIGSBORO', None, '36.78330', '-79.85000'), ('HORSE PASTURE', 2255, '36.63330', '-79.95000'), ('HORSE PASTURE', 2255, '36.62960', '-79.94870'), ('LEATHERWOOD', None, '36.73330', '-79.75000'), ('MARTINSVILLE AIRPORT', None, '36.63330', '-79.86670'), ('MARTINSVILLE CITY', None, '36.68330', '-79.86670'), ('MOUNTAIN VALLEY', None, '36.78330', '-79.70000'), ('RIDGEWAY', 775, '36.58330', '-79.86670'), ('SANVILLE', None, '36.71670', '-80.06670'), ('SPENCER', None, '36.61670', '-80.01670'), ('STANLEYTOWN', 1515, '36.75170', '-79.95130'), ('VILLA HEIGHTS', 845, '36.69730', '-79.90400')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'VAZ042': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALDIE', None, '38.97560', '-77.64170'), ('ARCOLA', None, '38.95170', '-77.53440'), ('ASHBURN', None, '39.04140', '-77.48100'), ('BELMONT', None, '39.06470', '-77.51030'), ('BLUEMONT', None, '39.11110', '-77.83420'), ('COUNTRYSIDE', None, '39.05240', '-77.41760'), ('DULLES INTERNATIONAL AIRP', None, '38.94440', '-77.45560'), ('GLEEDSVILLE', None, '39.04920', '-77.60500'), ('HILLSBORO', 96, '39.19790', '-77.72450'), ('HUGHESVILLE', None, '39.09970', '-77.66000'), ('LEESBURG', 28311, '39.10470', '-77.55610'), ('LOVETTSVILLE', 853, '39.27410', '-77.63900'), ('LUCKETTS', None, '39.21560', '-77.53470'), ('MIDDLEBURG', 632, '38.97100', '-77.73980'), ('PHILOMONT', None, '39.05610', '-77.74060'), ('PURCELLVILLE', 3584, '39.13800', '-77.71150'), ('ROUND HILL', 500, '39.13350', '-77.77050'), ('STERLING PARK', None, '39.00130', '-77.40830'), ('TAYLORSTOWN', None, '39.25420', '-77.57500'), ('UPPERVILLE', None, '38.99390', '-77.88500'), ('WATERFORD', None, '39.18670', '-77.61030')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAZ041': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADA', None, '38.83690', '-77.91860'), ('AIRLIE', None, '38.75690', '-77.79190'), ('ASHVILLE', None, '38.86420', '-77.92250'), ('AUBURN', None, '38.70280', '-77.70110'), ('BEALETON', None, '38.57170', '-77.76420'), ('BETHEL', None, '38.76610', '-77.81610'), ('BRISTERSBURG', None, '38.58330', '-77.61420'), ('BROKEN HILL', None, '38.75110', '-77.70830'), ('CALVERTON', None, '38.63190', '-77.67080'), ('CRESTHILL', None, '38.76750', '-78.00860'), ('DELAPLANE', None, '38.92000', '-77.92000'), ('GOLDVEIN', None, '38.44890', '-77.65560'), ('HALFWAY', None, '38.91610', '-77.74500'), ('HUME', None, '38.83190', '-77.99970'), ('MARKHAM', None, '38.90390', '-78.00220'), ('MARSHALL', None, '38.87000', '-77.85000'), ('MEADOWVILLE', None, '38.79810', '-77.81560'), ('MIDLAND', None, '38.59940', '-77.72470'), ('MORRISVILLE', None, '38.50170', '-77.70030'), ('OPAL', None, '38.62080', '-77.80030'), ('ORLEAN', None, '38.74970', '-77.96220'), ('PARIS', None, '39.00440', '-77.95170'), ('REMINGTON', 624, '38.53410', '-77.80900'), ('SOMERVILLE', None, '38.52170', '-77.60970'), ('SUMERDUCK', None, '38.46000', '-77.72830'), ('THE PLAINS', 266, '38.86280', '-77.77360'), ('TURNBULL', None, '38.66750', '-77.86060'), ('WARRENTON', 6670, '38.71820', '-77.79710')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'VAZ040': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMISSVILLE', None, '38.67140', '-77.99580'), ('CASTLETON', None, '38.60580', '-78.10690'), ('CHESTER GAP', None, '38.85330', '-78.13530'), ('FIVE FORKS', None, '38.65000', '-78.16860'), ('FLINT HILL', None, '38.76280', '-78.10030'), ('FOURWAY', None, '38.74970', '-78.26830'), ('HACKLEYS CROSSROAD', None, '38.72750', '-78.03140'), ('PANORAMA', None, '38.65920', '-78.32170'), ('ROCK MILLS', None, '38.65500', '-78.12970'), ('SLATE MILLS', None, '38.53140', '-78.18310'), ('SPERRYVILLE', None, '38.67000', '-78.25000'), ('VIEWTOWN', None, '38.63920', '-78.03970'), ('WASHINGTON', 183, '38.71270', '-78.15980'), ('WOODVILLE', None, '38.60670', '-78.17560')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'VAZ047': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ANDERSONVILLE', None, '37.46670', '-78.56670'), ('BUCKINGHAM', None, '37.55000', '-78.55000'), ('CENTENARY', None, '37.70000', '-78.51670'), ('DILLWYN', 447, '37.54020', '-78.46160'), ('DILLWYN', 447, '37.53330', '-78.45000'), ('GOLD HILL', None, '37.61670', '-78.36670'), ('NEW CANTON', None, '37.70000', '-78.30000'), ('SHEPPARDS', None, '37.38330', '-78.48330'), ('TOGA', None, '37.50000', '-78.61670'), ('WINGINA', None, '37.63330', '-78.71670')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'VAZ046': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('APPOMATTOX', 1761, '37.35880', '-78.82670'), ('BENT CREEK', None, '37.53330', '-78.83330'), ('EVERGREEN', None, '37.30000', '-78.78330'), ('HIXBURG', None, '37.33330', '-78.66670'), ('OAKVILLE', None, '37.43330', '-78.86670'), ('PAMPLIN CITY', 199, '37.26670', '-78.68330'), ('SPOUT SPRING', None, '37.35000', '-78.91670'), ('STONEWALL', None, '37.41670', '-78.96670'), ('TOWER HILL', None, '37.50000', '-78.78330')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'VAZ045': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALTAVISTA', 3425, '37.11670', '-79.30000'), ('ALTAVISTA', 3425, '37.12350', '-79.28450'), ('BOCOCK', None, '37.36670', '-79.11670'), ('BROOKNEAL', 1259, '37.05000', '-78.96670'), ('CONCORD', None, '37.35000', '-78.98330'), ('EVINGTON', None, '37.23330', '-79.28330'), ('GLADYS', None, '37.16670', '-79.08330'), ('HAT CREEK', None, '37.11670', '-78.91670'), ('HODGES', None, '37.11670', '-79.18330'), ('LEESVILLE', None, '37.11670', '-79.38330'), ('LONG ISLAND', None, '37.08330', '-79.10000'), ('LYNCHBURG AIRPORT', None, '37.33330', '-79.20000'), ('LYNCHBURG CITY', None, '37.41670', '-79.15000'), ('MADISON HEIGHTS', 11584, '37.41670', '-79.13330'), ('MIKE', None, '37.21670', '-78.91670'), ('RUSTBURG', 1271, '37.28330', '-79.10000'), ('SPRING MILLS', None, '37.23330', '-78.93330'), ('TIMBERLAKE', 10683, '37.33330', '-79.25000'), ('TIMBERLAKE', 10683, '37.32320', '-79.24990')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'VAZ044': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AIKEN SUMMIT', None, '36.60000', '-79.70000'), ('AJAX', None, '36.96670', '-79.56670'), ('BLAIRS', None, '36.68330', '-79.38330'), ('CALLANDS', None, '36.81670', '-79.58330'), ('CASCADE', None, '36.56670', '-79.66670'), ('CHALK LEVEL', None, '36.91670', '-79.28330'), ('CHATHAM', 1338, '36.81670', '-79.40000'), ('CLIMAX', None, '36.88330', '-79.48330'), ('DANVILLE AIRPORT', None, '36.58330', '-79.33330'), ('DANVILLE CITY', None, '36.58330', '-79.41670'), ('DRY FORK', None, '36.75000', '-79.41670'), ('GRETNA', 1257, '36.95000', '-79.36670'), ('HURT', 1276, '37.08330', '-79.28330'), ('JAVA', None, '36.83330', '-79.23330'), ('KEELING', None, '36.71670', '-79.30000'), ('MT AIRY', None, '36.93330', '-79.20000'), ('PITTSVILLE', None, '36.98330', '-79.46670'), ('RINGGOLD', None, '36.60000', '-79.30000'), ('SANDY RIVER', None, '36.71670', '-79.65000'), ('STRAIGHTSTONE', None, '37.01670', '-79.13330'), ('SWANSONVILLE', None, '36.73330', '-79.58330'), ('WESTOVER HILLS', None, '36.60000', '-79.45000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'WIZ056': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BARABOO', 10711, '43.46850', '-89.74150'), ('IRONTON', 250, '43.54470', '-90.14170'), ('LA VALLE', 326, '43.58270', '-90.13060'), ('LAKE DELTON', 1982, '43.59330', '-89.78040'), ('LIME RIDGE', 169, '43.46820', '-90.15640'), ('LOGANVILLE', 276, '43.43980', '-90.03700'), ('MERRIMAC', 416, '43.37370', '-89.62540'), ('NORTH FREEDOM', 649, '43.45870', '-89.86310'), ('PLAIN', 792, '43.27830', '-90.04220'), ('PRAIRIE DU SAC', 3231, '43.29110', '-89.72850'), ('REEDSBURG', 7827, '43.53490', '-89.99900'), ('ROCK SPRINGS', 425, '43.47990', '-89.91800'), ('SAUK CITY', 3109, '43.27220', '-89.72850'), ('SPRING GREEN', 1444, '43.17560', '-90.06710'), ('WEST BARABOO', 1248, '43.47590', '-89.76790'), ('WISCONSIN DELLS', 2418, '43.62640', '-89.77790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'TXZ118': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARLINGTON', 332969, '32.69450', '-97.12750'), ('AZLE', 9600, '32.89520', '-97.53110'), ('BEDFORD', 47152, '32.84610', '-97.13440'), ('BENBROOK', 20208, '32.67840', '-97.46120'), ('BLUE MOUND', 2388, '32.85380', '-97.33720'), ('COLLEYVILLE', 19636, '32.89250', '-97.14710'), ('CROWLEY', 7467, '32.57730', '-97.35810'), ('DALWORTHINGTON GARDENS', 2186, '32.69370', '-97.15870'), ('EAGLE MOUNTAIN', 6599, '32.89340', '-97.44430'), ('EDGECLIFF', None, '32.65520', '-97.34130'), ('EULESS', 46005, '32.84910', '-97.07730'), ('EVERMAN', 5836, '32.63020', '-97.28260'), ('FOREST HILL', 12949, '32.66150', '-97.26530'), ('FORT WORTH', 534694, '32.75390', '-97.33620'), ('GRAPEVINE', 42059, '32.93350', '-97.07170'), ('HALTOM CITY', 39018, '32.81760', '-97.27070'), ('HASLET', 1134, '32.95820', '-97.33970'), ('HURST', 36273, '32.83550', '-97.17990'), ('KELLER', 27345, '32.93010', '-97.22610'), ('KENNEDALE', 5850, '32.64750', '-97.21910'), ('LAKE WORTH', 4618, '32.81370', '-97.43290'), ('LAKESIDE', 1040, '32.82160', '-97.48930'), ('MANSFIELD', 28031, '32.56710', '-97.11740'), ('NEWARK', 887, '32.99490', '-97.47080'), ('NORTH RICHLAND HILLS', 55635, '32.86010', '-97.21910'), ('PANTEGO', 2318, '32.71510', '-97.15460'), ('PECAN ACRES', 2289, '32.97000', '-97.47440'), ('PELICAN BAY', 1505, '32.92330', '-97.51920'), ('RENDON', 9022, '32.58000', '-97.23650'), ('RICHLAND HILLS', 8132, '32.81000', '-97.22610'), ('RIVER OAKS', 6985, '32.77570', '-97.39790'), ('SAGINAW', 12374, '32.86520', '-97.36530'), ('SANSOM PARK', 4181, '32.80260', '-97.40170'), ('SOUTHLAKE', 21519, '32.95320', '-97.14830'), ('WATAUGA', 21908, '32.87150', '-97.25090'), ('WESTLAKE', 207, '32.98500', '-97.19800'), ('WESTOVER HILLS', 658, '32.74530', '-97.41150'), ('WESTWORTH', None, '32.76000', '-97.42220'), ('WHITE SETTLEMENT', 14831, '32.75480', '-97.46020')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ119': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADDISON', 14166, '32.96120', '-96.83720'), ('BALCH SPRINGS', 19375, '32.71880', '-96.61620'), ('BUCKINGHAM', None, '32.93410', '-96.72500'), ('CARROLLTON', 109576, '32.98810', '-96.89670'), ('CEDAR HILL', 32093, '32.58030', '-96.95760'), ('COCKRELL HILL', 4443, '32.73860', '-96.88890'), ('COPPELL', 35958, '32.96290', '-96.99050'), ('DALLAS', 1188580, '32.79420', '-96.76520'), ('DESOTO', 37646, '32.59920', '-96.86250'), ('DUNCANVILLE', 36081, '32.64590', '-96.91350'), ('FARMERS BRANCH', 27508, '32.92680', '-96.87890'), ('GARLAND', 215768, '32.91080', '-96.62930'), ('GRAND PRAIRIE', 127427, '32.69220', '-97.01670'), ('HIGHLAND PARK', 8842, '32.83150', '-96.80080'), ('HUTCHINS', 2805, '32.64370', '-96.70730'), ('IRVING', 191615, '32.85770', '-96.96930'), ('LANCASTER', 25894, '32.59560', '-96.78100'), ('MESQUITE', 124523, '32.76900', '-96.59980'), ('RICHARDSON', 91802, '32.97280', '-96.70980'), ('ROWLETT', 44503, '32.90810', '-96.55000'), ('SACHSE', 9751, '32.97460', '-96.58080'), ('SEAGOVILLE', 10823, '32.65670', '-96.54650'), ('SUNNYVALE', 2693, '32.79930', '-96.55830'), ('UNIVERSITY PARK', 23324, '32.85010', '-96.79310'), ('WILMER', 3393, '32.59880', '-96.68420')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ116': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GORDON', 451, '32.54580', '-98.36580'), ('GRAFORD', 578, '32.93670', '-98.24750'), ('MINERAL WELLS', 16946, '32.82030', '-98.07830'), ('MINGUS', 246, '32.53680', '-98.42390'), ('STRAWN', 739, '32.55080', '-98.49780')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ117': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALEDO', 1726, '32.69600', '-97.60380'), ('ANNETTA', 1108, '32.69550', '-97.65770'), ('ANNETTA NORTH', 467, '32.71990', '-97.67360'), ('ANNETTA SOUTH', 555, '32.66930', '-97.64700'), ('BRIAR', 5350, '32.99210', '-97.55460'), ('COOL', 162, '32.79830', '-98.01250'), ('HUDSON OAKS', 1637, '32.74730', '-97.70110'), ('MILLSAP', 353, '32.75000', '-98.00860'), ('RENO', 2441, '32.94090', '-97.58300'), ('SANCTUARY', 256, '32.90870', '-97.58390'), ('SPRINGTOWN', 2062, '32.96930', '-97.68100'), ('WEATHERFORD', 19000, '32.75570', '-97.77130'), ('WILLOW PARK', 2849, '32.75580', '-97.65130')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ114': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALBANY', 1921, '32.72670', '-99.29560'), ('FORT GRIFFIN', None, '32.92890', '-99.23280'), ('IBEX', None, '32.67890', '-99.11890'), ('MORAN', 233, '32.54680', '-99.16560')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXZ115': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRECKENRIDGE', 5868, '32.75670', '-98.91250')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ112': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ATLANTA', 5745, '33.11640', '-94.16430'), ('AVINGER', 464, '32.89820', '-94.55430'), ('BLOOMBURG', 375, '33.13750', '-94.05870'), ('DOMINO', 52, '33.25140', '-94.11470'), ('DOUGLASSVILLE', 175, '33.19180', '-94.35140'), ('HUGHES SPRINGS', 1856, '32.99880', '-94.63020'), ('LINDEN', 2256, '33.01100', '-94.36210'), ('MARIETTA', 112, '33.17380', '-94.54180'), ('QUEEN CITY', 1613, '33.14970', '-94.15130')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ113': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANSON', 2556, '32.75640', '-99.89580'), ('AVOCA', None, '32.86560', '-99.71560'), ('FUNSTON', None, '32.75140', '-99.79970'), ('HAMLIN', 2248, '32.88470', '-100.12610'), ('HAWLEY', 646, '32.61190', '-99.81390'), ('HODGES', None, '32.58920', '-99.86860'), ('LUEDERS', 300, '32.79950', '-99.62330'), ('NEINDA', None, '32.79670', '-100.09250'), ('NOODLE', None, '32.60220', '-100.05170'), ('NUGENT', None, '32.69390', '-99.66720'), ('STAMFORD', 3636, '32.94280', '-99.80390'), ('STITH', None, '32.54640', '-99.94390'), ('TRUBY', None, '32.64530', '-99.92500'), ('TUXEDO', None, '32.93280', '-99.95140')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXZ110': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('PITTSBURG', 4347, '32.99690', '-94.96560'), ('ROCKY MOUND', 93, '33.02850', '-95.03170')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ111': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DAINGERFIELD', 2517, '33.03060', '-94.72420'), ('LONE STAR', 1631, '32.93740', '-94.70850'), ('NAPLES', 1410, '33.20360', '-94.67770'), ('OMAHA', 999, '33.17960', '-94.74220')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'IDZ014': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BOISE', None, '43.60670', '-116.22610'), ('BRUNEAU', None, '42.86580', '-115.78080'), ('EAGLE', 11085, '43.69350', '-116.35480'), ('GARDEN CITY', 10624, '43.64850', '-116.26700'), ('GLENNS FERRY', 1611, '42.95400', '-115.29990'), ('GRAND VIEW', 470, '42.98350', '-116.09000'), ('HAMMETT', None, '42.94000', '-115.47000'), ('HOT SPG', None, '42.78330', '-115.70000'), ('KUNA', 5382, '43.49010', '-116.41750'), ('MERIDIAN', 34919, '43.61110', '-116.39970'), ('MOUNTAIN HOME', 11143, '43.13830', '-115.68870'), ('MOUNTAIN HOME AFB', 8894, '43.04960', '-115.86550'), ('OREANA', None, '43.05000', '-116.35000'), ('STAR', 1795, '43.70000', '-116.48300'), ('SWAN FALLS', None, '43.25000', '-116.36700')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'IDZ015': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ALMO', None, '42.10000', '-116.63300'), ('GRASMERE', None, '42.38330', '-115.88330'), ('MURPHY HOT SPGS', None, '42.03330', '-115.36670'), ('RIDDLE', None, '42.19000', '-116.11000'), ('THREE CREEK', None, '42.06670', '-115.15000')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'IDZ017': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ACEQUIA', 144, '42.66850', '-113.59560'), ('BURLEY', 9316, '42.53890', '-113.78790'), ('CAREY', 513, '43.30000', '-113.95000'), ('DECLO', 338, '42.51930', '-113.62810'), ('DIETRICH', 150, '42.91370', '-114.26400'), ('HEYBURN', 2899, '42.55580', '-113.76090'), ('KIMAMA', None, '42.83000', '-113.78000'), ('MINIDOKA', 129, '42.75400', '-113.48900'), ('OWINZA', None, '42.90000', '-114.05000'), ('PAUL', 998, '42.60640', '-113.78240'), ('PICABO', None, '43.30000', '-114.07000'), ('RICHFIELD', 412, '43.05230', '-114.15510'), ('RUPERT', 5645, '42.61810', '-113.67370'), ('SHOSHONE', 1398, '42.93620', '-114.40460')], 'partOfState': 'CENTRAL', 'wfo': 'PIH'}, -'NHZ003': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('BATH', None, '44.16690', '-71.96670'), ('BENTON', None, '44.10310', '-71.90220'), ('BETHLEHEM', None, '44.28030', '-71.68860'), ('EASTON', None, '44.14610', '-71.79060'), ('FRANCONIA', None, '44.22690', '-71.74830'), ('HAVERHILL', None, '44.03440', '-72.06440'), ('LANDAFF CENTER', None, '44.17500', '-71.88750'), ('LINCOLN', None, '44.04560', '-71.67060'), ('LISBON', 1070, '44.21270', '-71.90900'), ('LITTLETON', 4431, '44.30610', '-71.77060'), ('LIVERMORE', None, '44.01830', '-71.45310'), ('PIERMONT', None, '43.96970', '-72.08110'), ('SUGAR HILL', None, '44.22170', '-71.80140'), ('THORNTON', None, '43.89280', '-71.67640'), ('WARREN', None, '43.92310', '-71.89250'), ('WATERVILLE VALLEY', None, '43.95000', '-71.50000'), ('WOODSTOCK', None, '43.97750', '-71.68560'), ('WOODSVILLE', 1081, '44.15220', '-72.03780')], 'partOfState': 'NORTHERN', 'wfo': 'GYX'}, -'SCZ006': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BEREA', 14158, '34.88150', '-82.46510'), ('FORK SHOALS', None, '34.62250', '-82.30690'), ('FOUNTAIN INN', 6017, '34.69350', '-82.20060'), ('GREENVILLE', 56002, '34.83870', '-82.37160'), ('GREER', 16843, '34.93900', '-82.23180'), ('MAULDIN', 15224, '34.78710', '-82.30150'), ('PARIS MOUNTAIN STATE PARK', None, '34.94500', '-82.39560'), ('PRINCETON', 65, '34.50080', '-82.28940'), ('SIMPSONVILLE', 14352, '34.73140', '-82.25900'), ('TAYLORS', 20125, '34.91520', '-82.31350'), ('TRAVELERS REST', 4099, '34.96720', '-82.43780'), ('WELCOME', 6390, '34.82090', '-82.45800')], 'partOfState': '', 'wfo': 'GSP'}, -'IDZ011': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BEAR', None, '45.01700', '-116.68300'), ('BIG CREEK', None, '45.13330', '-115.31670'), ('BROWNLEE DAM', None, '44.84000', '-116.90000'), ('CAMBRIDGE', 360, '44.57260', '-116.67590'), ('CASCADE', 997, '44.51300', '-116.04070'), ('COUNCIL', 816, '44.72890', '-116.43520'), ('CUPRUM', None, '45.08300', '-116.70000'), ('DEADWOOD RES', None, '44.30000', '-115.66670'), ('DONNELLY', 138, '44.73030', '-116.07590'), ('FRUITVALE', None, '44.81700', '-116.41700'), ('GLENDALE', None, '44.83300', '-116.40000'), ('GOODRICH', None, '44.65000', '-116.55000'), ('INDIAN VALLEY', None, '44.55000', '-116.43300'), ('MCCALL', 2084, '44.91340', '-116.10750'), ('MEADOWS', None, '44.96700', '-116.22200'), ('MESA', None, '44.63300', '-116.45000'), ('MIDVALE', 176, '44.47060', '-116.73310'), ('NEW MEADOWS', 533, '44.97070', '-116.28430'), ('OLA', None, '44.17970', '-116.28080'), ('SMITHS FERRY', None, '44.29890', '-116.08000'), ('TAMARACK', None, '44.95000', '-116.36700'), ('WARM LAKE', None, '44.64780', '-115.66890'), ('YELLOW PINE', None, '44.90000', '-115.48330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BOI'}, -'IDZ012': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CALDWELL', 25967, '43.65830', '-116.67490'), ('EMMETT', 5490, '43.87390', '-116.49390'), ('FRUITLAND', 3805, '44.01800', '-116.92010'), ('GREENLEAF', 862, '43.67230', '-116.82030'), ('HOMEDALE', 2528, '43.61810', '-116.93590'), ('HUSTON', None, '43.61700', '-116.78300'), ('MARSING', 890, '43.54560', '-116.80680'), ('MELBA', 439, '43.37390', '-116.52950'), ('MIDDLETON', 2978, '43.70770', '-116.62400'), ('MURPHY', None, '43.21690', '-116.54470'), ('NAMPA', 51867, '43.58000', '-116.56400'), ('NEW PLYMOUTH', 1400, '43.97080', '-116.81800'), ('NOTUS', 458, '43.72570', '-116.79980'), ('PARMA', 1771, '43.78560', '-116.94050'), ('PAYETTE', 7054, '44.07700', '-116.92900'), ('SWEET', None, '43.96470', '-116.31500'), ('WEISER', 5343, '44.25080', '-116.96670'), ('WILDER', 1462, '43.67660', '-116.90780')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'NHZ006': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('BRIDGEWATER', None, '43.63830', '-71.23690'), ('BROOKFIELD', None, '43.55890', '-71.06580'), ('CENTER HARBOR', None, '43.70360', '-71.22640'), ('EATON', None, '43.90920', '-71.08420'), ('EFFINGHAM', None, '43.76110', '-70.99690'), ('FREEDOM', None, '43.81220', '-71.03610'), ('MADISON', None, '43.89920', '-71.14890'), ('MOULTONBOROUGH', None, '43.75470', '-71.39720'), ('OSSIPEE', None, '43.68530', '-71.11720'), ('SANDWICH', None, '43.79030', '-71.41170'), ('TAMWORTH', None, '43.85970', '-71.26360'), ('TUFTONBORO', None, '43.69640', '-71.22250'), ('WAKEFIELD', None, '43.56810', '-71.03060'), ('WOLFEBORO', 2979, '43.58390', '-71.20780')], 'partOfState': 'NORTHERN', 'wfo': 'GYX'}, -'IDZ013': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ANDERSON DAM', None, '43.35000', '-115.45000'), ('ATLANTA', None, '43.79470', '-115.11780'), ('BANKS', None, '44.08390', '-116.11500'), ('CENTERVILLE', None, '43.91700', '-115.88300'), ('CROUCH', 154, '44.11530', '-115.97160'), ('FEATHERVILLE', None, '43.61500', '-115.26690'), ('GARDEN VALLEY', None, '44.09750', '-115.95780'), ('GARDENA', None, '43.98300', '-116.20000'), ('HORSESHOE BEND', 770, '43.91300', '-116.19460'), ('IDAHO CITY', 458, '43.84250', '-115.85110'), ('LOWMAN', None, '44.06890', '-115.61500'), ('PIONEERVILLE', None, '43.95000', '-115.86700'), ('PLACERVILLE', 60, '43.94300', '-115.94480'), ('PRAIRIE', None, '43.50000', '-115.58330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BOI'}, -'TXZ087': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BENJAMIN', 264, '33.58330', '-99.79300'), ('GILLILAND', None, '33.73000', '-99.68000'), ('GOREE', 321, '33.46760', '-99.52350'), ('KNOX CITY', 1219, '33.41750', '-99.81580'), ('MUNDAY', 1527, '33.44690', '-99.62330'), ('RHINELAND', None, '33.53000', '-99.65000'), ('TRUSCOTT', None, '33.75000', '-99.80000'), ('VERA', None, '33.63000', '-99.57000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'NHZ007': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ACWORTH', None, '43.21780', '-72.29250'), ('CHARLESTOWN', 1145, '43.23860', '-72.42500'), ('CLAREMONT', 13151, '43.37670', '-72.34720'), ('CORNISH', None, '43.48280', '-72.32000'), ('CROYDON', None, '43.45060', '-72.16360'), ('GOSHEN', None, '43.30110', '-72.14830'), ('GRANTHAM', None, '43.48940', '-72.13810'), ('LANGDON', None, '43.16690', '-72.38000'), ('LEMPSTER', None, '43.23830', '-72.21110'), ('NEWPORT', 4008, '43.36530', '-72.17390'), ('PLAINFIELD', None, '43.53420', '-72.35670'), ('SPRINGFIELD', None, '43.49500', '-72.03390'), ('SUNAPEE', None, '43.38750', '-72.08830'), ('UNITY', None, '43.29390', '-72.26080'), ('WASHINGTON', None, '43.17580', '-72.09720')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'PAZ030': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ADAMSBURG', 221, '40.31040', '-79.65470'), ('ARNOLD', 5667, '40.57890', '-79.76490'), ('ARONA', 407, '40.26820', '-79.65750'), ('AVONMORE', 820, '40.52680', '-79.47000'), ('CALUMET-NORVELT', 1682, '40.20730', '-79.49310'), ('CHAMPION', None, '40.08000', '-79.37000'), ('DELMONT', 2497, '40.41390', '-79.57340'), ('DERRY', 2991, '40.33330', '-79.30170'), ('DONEGAL', 165, '40.11280', '-79.38250'), ('EXPORT', 895, '40.41870', '-79.62500'), ('GREENSBURG', 15889, '40.31090', '-79.54440'), ('HUNKER', 329, '40.20400', '-79.61530'), ('IRWIN', 4366, '40.32590', '-79.69960'), ('JEANNETTE', 10654, '40.32720', '-79.61410'), ('LATROBE', 8994, '40.31210', '-79.38270'), ('LAUREL MOUNTAIN', 185, '40.21130', '-79.18480'), ('LAWSON HEIGHTS', 2339, '40.29200', '-79.38830'), ('LIGONIER', 1695, '40.24440', '-79.23730'), ('LOWER BURRELL', 12608, '40.58240', '-79.71300'), ('MADISON', 510, '40.24660', '-79.67290'), ('MANOR', 2796, '40.34650', '-79.67080'), ('MCCHESNEYTOWN-LOYALHANNA', 3415, '40.31280', '-79.35600'), ('MONESSEN', 8669, '40.15220', '-79.88220'), ('MOUNT PLEASANT', 4728, '40.15040', '-79.54410'), ('MUNICIPALITY OF MURRYSVIL', None, '40.44150', '-79.65590'), ('NEW ALEXANDRIA', 595, '40.39350', '-79.41840'), ('NEW FLORENCE', 784, '40.37910', '-79.07500'), ('NEW KENSINGTON', 14701, '40.56990', '-79.75080'), ('NEW STANTON', 1906, '40.22170', '-79.60900'), ('NORTH BELLE VERNON', 2107, '40.13200', '-79.86510'), ('NORTH IRWIN', 879, '40.33890', '-79.71120'), ('NORTH WASHINGTON', None, '40.53000', '-79.60000'), ('OKLAHOMA', 915, '40.58090', '-79.57470'), ('PENN', 460, '40.32880', '-79.64170'), ('SCOTTDALE', 4772, '40.10280', '-79.58990'), ('SEWARD', 484, '40.41250', '-79.02170'), ('SMITHTON', 444, '40.15330', '-79.74170'), ('SOUTH GREENSBURG', 2280, '40.27690', '-79.54790'), ('SOUTHWEST GREENSBURG', 2398, '40.29200', '-79.54780'), ('SUTERSVILLE', 636, '40.23570', '-79.80260'), ('TRAFFORD', 3236, '40.38420', '-79.75710'), ('VANDERGRIFT', 5455, '40.59950', '-79.57440'), ('WEST LEECHBURG', 1290, '40.63210', '-79.61740'), ('WEST NEWTON', 3083, '40.20840', '-79.76960'), ('YOUNGSTOWN', 400, '40.28090', '-79.36580'), ('YOUNGWOOD', 4138, '40.24370', '-79.58110')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'PAZ031': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALEPPO', None, '39.82000', '-80.45000'), ('CARMICHAELS', 556, '39.89770', '-79.97520'), ('CLARKSVILLE', 234, '39.97440', '-80.04430'), ('FAIRDALE', 1955, '39.88840', '-79.96910'), ('NEMACOLIN', 1034, '39.87760', '-79.92420'), ('RICES LANDING', 443, '39.94610', '-79.99480'), ('SPRAGGS', None, '39.78000', '-80.22000'), ('WAYNESBURG', 4184, '39.89860', '-80.18580')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'PAZ032': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BELLE VERNON', 1211, '40.12460', '-79.86580'), ('BROWNSVILLE', 2804, '40.01900', '-79.89140'), ('COAL CENTER', 134, '40.06990', '-79.90120'), ('CONNELLSVILLE', 9146, '40.01630', '-79.58910'), ('DAWSON', 451, '40.04780', '-79.65890'), ('DUNBAR', 1219, '39.97960', '-79.61410'), ('DUNLEVY', 397, '40.11240', '-79.85870'), ('EAST UNIONTOWN', 2760, '39.89970', '-79.69810'), ('EVERSON', 842, '40.09050', '-79.58730'), ('FAIRCHANCE', 2174, '39.82590', '-79.75460'), ('FAYETTE CITY', 714, '40.10020', '-79.83910'), ('GREENSBORO', 295, '39.79210', '-79.91300'), ('GRINDSTONE-ROWES RUN', 1141, '40.01520', '-79.81520'), ('HILLER', 1234, '40.00720', '-79.90390'), ('HOPWOOD', 2006, '39.87750', '-79.70180'), ('ISABELLA', None, '39.95000', '-79.93000'), ('JUNIATA', None, '39.98000', '-79.72000'), ('LEITH-HATFIELD', 2820, '39.87980', '-79.73470'), ('LYNNWOOD-PRICEDALE', 2168, '40.12980', '-79.85230'), ('MARKLEYSBURG', 282, '39.73710', '-79.45290'), ('MASONTOWN', 3611, '39.84830', '-79.90860'), ('NEW SALEM-BUFFINGTON', 808, '39.93190', '-79.82060'), ('NEWELL', 551, '40.07350', '-79.88860'), ('OHIOPYLE', 77, '39.86750', '-79.49420'), ('OLIVER', 2925, '39.91520', '-79.72210'), ('PERRYOPOLIS', 1764, '40.08650', '-79.75320'), ('POINT MARION', 1333, '39.73450', '-79.90070'), ('REPUBLIC', 1396, '39.96480', '-79.87660'), ('SMITHFIELD', 854, '39.80200', '-79.80950'), ('SOUTH CONNELLSVILLE', 2281, '39.99260', '-79.58250'), ('SPEERS', 1241, '40.12260', '-79.88010'), ('STOCKDALE', 555, '40.08330', '-79.85070'), ('UNIONTOWN', 12422, '39.89920', '-79.72470'), ('VANDERBILT', 553, '40.03310', '-79.66300')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'PAZ033': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ACOSTA', None, '40.10000', '-79.04000'), ('ADDISON', 214, '39.74350', '-79.33530'), ('BENSON', 194, '40.20260', '-78.92940'), ('BERLIN', 2192, '39.92240', '-78.95250'), ('BOSWELL', 1364, '40.16080', '-79.02710'), ('CALLIMONT', 51, '39.79660', '-78.92050'), ('CASSELMAN', 99, '39.88540', '-79.21100'), ('CENTRAL CITY', 1258, '40.10970', '-78.80530'), ('CONFLUENCE', 834, '39.80950', '-79.35430'), ('DAVIDSVILLE', 1119, '40.23190', '-78.93690'), ('FRIEDENS', 1673, '40.04260', '-79.00530'), ('GARRETT', 449, '39.86420', '-79.06170'), ('HOOVERSVILLE', 779, '40.15040', '-78.91460'), ('INDIAN LAKE', 450, '40.04750', '-78.85950'), ('JENNERSTOWN', 714, '40.16440', '-79.06210'), ('JEROME', 1068, '40.21340', '-78.98390'), ('MEYERSDALE', 2473, '39.81310', '-79.02680'), ('MOUNT DAVIS', None, '39.79000', '-79.16000'), ('NEW BALTIMORE', 168, '39.98580', '-78.77200'), ('OGLETOWN', None, '40.19000', '-78.70000'), ('ROCKWOOD', 954, '39.91670', '-79.15710'), ('SALISBURY', 878, '39.75420', '-79.08460'), ('SEVEN SPRINGS', 127, '40.02510', '-79.29150'), ('SHANKSVILLE', 245, '40.01740', '-78.90690'), ('SOMERSET', 6762, '40.00500', '-79.07830'), ('STOYSTOWN', 428, '40.10340', '-78.95530'), ('TIRE HILL', None, '40.27000', '-78.92000'), ('WELLERSBURG', 176, '39.72780', '-78.84980'), ('WINDBER', 4395, '40.23380', '-78.82590')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ034': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEDFORD', 3141, '40.01490', '-78.50440'), ('BLUE KNOB SP', None, '40.26000', '-78.59000'), ('BREEZEWOOD', None, '39.99000', '-78.24000'), ('BUFFALO MILLS', None, '39.92000', '-78.63000'), ('CESSNA', None, '40.06000', '-78.51000'), ('CLEARVILLE', None, '39.91000', '-78.37000'), ('EVERETT', 1905, '40.01270', '-78.36630'), ('HOPEWELL', 222, '40.13460', '-78.26670'), ('HYNDMAN', 1005, '39.82100', '-78.72110'), ('INGLESMITH', None, '39.75000', '-78.42000'), ('LAKE GORDON', None, '39.77000', '-78.67000'), ('MANNS CHOICE', 291, '40.00280', '-78.59170'), ('NEW ENTERPRISE', None, '40.16000', '-78.37000'), ('NEW PARIS', 214, '40.10770', '-78.64320'), ('OSTERBURG', None, '40.18000', '-78.53000'), ('QUEEN', None, '40.25000', '-78.51000'), ('RAINSBURG', 146, '39.89520', '-78.51620'), ('SAXTON', 803, '40.21300', '-78.24720'), ('SCHELLSBURG', 316, '40.04860', '-78.64300'), ('WOODBURY', 269, '40.22570', '-78.36670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ035': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BARNES GAP', None, '39.77000', '-78.34000'), ('BIG COVE TANNERY', None, '39.84000', '-78.05000'), ('COVE MILLS', None, '39.78000', '-78.18000'), ('CRYSTAL SPRINGS', None, '39.92000', '-78.24000'), ('FORT LITTLETON', None, '40.06000', '-77.93000'), ('HARRISSONVILLE', None, '39.97000', '-78.06000'), ('LOCUST GROVE', None, '39.83000', '-78.25000'), ('MCCONNELLSBURG', 1073, '39.93150', '-77.99530'), ('NEEDMORE', None, '39.86000', '-78.15000'), ('SALUVIA', None, '40.00000', '-78.10000'), ('SIDELING HILL REST AREA', None, '40.03000', '-78.06000'), ('VALLEY-HI', 20, '40.02700', '-78.19080'), ('WATERFALL', None, '40.12000', '-78.06000'), ('WELLS TANNERY', None, '40.09000', '-78.18000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ036': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMBERSON VALLEY', None, '40.14000', '-77.69000'), ('CHAMBERSBURG', 17862, '39.93220', '-77.65640'), ('CLAYLICK', None, '39.77000', '-77.91000'), ('DOYLESBURG', None, '40.22000', '-77.70000'), ('FANNETTSBURG', None, '40.05000', '-77.83000'), ('FAYETTEVILLE', 2774, '39.91240', '-77.56570'), ('FORT LOUDON', None, '39.94000', '-77.87000'), ('GREENCASTLE', 3722, '39.79050', '-77.72690'), ('MARION', None, '39.86000', '-77.67000'), ('MERCERSBURG', 1540, '39.83140', '-77.90180'), ('MONT ALTO', 1357, '39.83960', '-77.55470'), ('ORRSTOWN', 231, '40.05830', '-77.60950'), ('ROUZERVILLE', 862, '39.73400', '-77.52480'), ('ROXBURY', None, '40.09000', '-77.67000'), ('SCOTLAND', None, '39.96000', '-77.59000'), ('ST. THOMAS', None, '39.94000', '-77.74000'), ('UPPER STRASBURG', None, '40.02000', '-77.70000'), ('WAYNESBORO', 9614, '39.75200', '-77.58240'), ('WILLOW HILL', None, '40.11000', '-77.77000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ037': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLOSSBURG', 1480, '41.68290', '-77.06660'), ('COVINGTON', None, '41.74000', '-77.07000'), ('ELKLAND', 1786, '41.98920', '-77.31480'), ('GAINES', None, '41.78000', '-77.54000'), ('KEENEYVILLE', None, '41.86000', '-77.26000'), ('KNOXVILLE', 617, '41.95680', '-77.43580'), ('LAWRENCEVILLE', 627, '41.99910', '-77.12950'), ('LEETONIA', None, '41.62000', '-77.52000'), ('LEONARD HARRISON SP', None, '41.69000', '-77.41000'), ('MANSFIELD', 3411, '41.80570', '-77.07870'), ('MILLERTON', None, '41.98000', '-76.95000'), ('MORRIS', None, '41.65000', '-77.27000'), ('OGDENSBURG', None, '41.59000', '-76.96000'), ('ROSEVILLE', 207, '41.86540', '-76.95890'), ('TIOGA', 622, '41.90490', '-77.13540'), ('TIOGA JUNCTION', None, '41.95000', '-77.12000'), ('WELLSBORO', 3328, '41.74610', '-77.30290'), ('WESTFIELD', 1190, '41.91780', '-77.54060')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ038': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('CHEMUNG', None, '42.00000', '-76.61670'), ('ALBA', 186, '41.70430', '-76.82780'), ('ATHENS', 3415, '41.95040', '-76.51710'), ('BENTLEY CREEK', None, '41.95000', '-76.68330'), ('BROWNTOWN', None, '41.65000', '-76.23330'), ('BRUSHVILLE', None, '41.81670', '-76.18330'), ('BURLINGTON', 182, '41.78280', '-76.60890'), ('CAMPTOWN', None, '41.73330', '-76.23330'), ('CANTON', 1807, '41.65700', '-76.85300'), ('CHERRYTOWN', None, '41.68330', '-76.28330'), ('COWLEY', None, '41.88330', '-76.76670'), ('DUNNING', None, '41.93330', '-76.78330'), ('DURELL', None, '41.71670', '-76.36670'), ('EAST SMITHFIELD', None, '41.86670', '-76.61670'), ('EVERGREEN', None, '41.61670', '-76.41670'), ('FRANKLINDALE', None, '41.70000', '-76.55000'), ('GILLETT', None, '41.95000', '-76.78330'), ('GROVER', None, '41.61670', '-76.86670'), ('HERRICK', None, '41.78330', '-76.25000'), ('HERRICKVILLE', None, '41.80000', '-76.25000'), ('HOLLENBACK', None, '41.60000', '-76.23330'), ('LE RAYSVILLE', 318, '41.83760', '-76.18070'), ('LE ROY', None, '41.66670', '-76.70000'), ('LEONA', None, '41.81670', '-76.73330'), ('LIBERTY CORNERS', None, '41.70000', '-76.41670'), ('LITCHFIELD', None, '41.96670', '-76.43330'), ('MACEDONIA', None, '41.76670', '-76.38330'), ('MILAN', None, '41.91670', '-76.50000'), ('MINNEQUA', None, '41.68330', '-76.83330'), ('MONROE', 514, '41.71360', '-76.47560'), ('MONROETON', None, '41.71670', '-76.46670'), ('MOSHERVILLE', None, '41.98330', '-76.88330'), ('NEW ALBANY', 306, '41.60080', '-76.44330'), ('NORTH TOWANDA', None, '41.78330', '-76.45000'), ('ORWELL', None, '41.88330', '-76.26670'), ('OVERTON', None, '41.56670', '-76.50000'), ('RIDGEBURY', None, '41.96670', '-76.71670'), ('RIGGS', None, '41.83330', '-76.56670'), ('ROME', 382, '41.85790', '-76.34160'), ('RUSHVILLE', None, '41.78330', '-76.13330'), ('SAYRE', 5813, '41.98590', '-76.52100'), ('SHESHEQUIN', None, '41.85000', '-76.48330'), ('SILVARA', None, '41.70000', '-76.13330'), ('SOUTH BRANCH', None, '41.65000', '-76.43330'), ('SOUTH WAVERLY', 987, '41.99560', '-76.54430'), ('SPRING HILL', 970, '41.70000', '-76.18330'), ('SPRINGFIELD', 23677, '41.85000', '-76.73330'), ('STEVENSVILLE', None, '41.76670', '-76.18330'), ('SUGAR RUN', None, '41.65000', '-76.23330'), ('SYLVANIA', 200, '41.80500', '-76.85750'), ('TERRYTOWN', None, '41.66670', '-76.28330'), ('TOWANDA', 3024, '41.77090', '-76.44690'), ('TROY', 1508, '41.78470', '-76.78960'), ('ULSTER', None, '41.85000', '-76.50000'), ('WARREN CENTER', None, '41.93330', '-76.16670'), ('WEST BURLINGTON', None, '41.76670', '-76.66670'), ('WEST FRANKLIN', None, '41.70000', '-76.61670'), ('WEST LE ROY', None, '41.66670', '-76.75000'), ('WEST WARREN', None, '41.93330', '-76.23330'), ('WETONA', None, '41.83330', '-76.68330'), ('WILAWANA', None, '41.98330', '-76.60000'), ('WILMOT', None, '41.60000', '-76.31670'), ('WINDHAM', None, '41.96670', '-76.28330'), ('WYALUSING', 564, '41.66910', '-76.26270'), ('WYSOX', None, '41.76670', '-76.40000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'PAZ039': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALFORD', None, '41.80000', '-75.78330'), ('ARARAT', None, '41.83330', '-75.51670'), ('AUBURN CENTER', None, '41.68330', '-76.03330'), ('BIRCHARDVILLE', None, '41.85000', '-76.01670'), ('BRACKNEY', None, '41.98330', '-75.91670'), ('BURNWOOD', None, '41.78330', '-75.51670'), ('CLIFFORD', None, '41.65000', '-75.60000'), ('DIMOCK', None, '41.75000', '-75.90000'), ('ELK LAKE', None, '41.75000', '-75.95000'), ('ELKDALE', None, '41.68330', '-75.56670'), ('FOREST CITY', 1855, '41.65160', '-75.46970'), ('FRIENDSVILLE', 91, '41.91790', '-76.04730'), ('GIBSON', None, '41.80000', '-75.65000'), ('GLENWOOD', None, '41.65000', '-75.73330'), ('GREAT BEND', 700, '41.97270', '-75.74560'), ('HALLSTEAD', 1216, '41.96190', '-75.74730'), ('HARFORD', None, '41.78330', '-75.70000'), ('HICKORY GROVE', None, '41.96670', '-75.68330'), ('HOP BOTTOM', 333, '41.70640', '-75.76720'), ('JACKSON', None, '41.83330', '-75.60000'), ('LAKESIDE', None, '41.88330', '-75.66670'), ('LAKEVIEW', None, '41.86670', '-75.61670'), ('LANESBORO', 588, '41.96230', '-75.58240'), ('LAWTON', None, '41.78330', '-76.06670'), ('LENOXVILLE', None, '41.66670', '-75.65000'), ('LITTLE MEADOWS', 290, '41.99310', '-76.13090'), ('MIDDLETOWN CENTER', None, '41.86670', '-76.10000'), ('MONTROSE', 1664, '41.83400', '-75.87690'), ('NEW MILFORD', 878, '41.87590', '-75.72690'), ('ROYAL', None, '41.66670', '-75.63330'), ('RUSH', None, '41.78330', '-76.05000'), ('SOUTH MONTROSE', None, '41.80000', '-75.88330'), ('SPRINGVILLE', None, '41.70000', '-75.93330'), ('SUSQUEHANNA', None, '41.93330', '-75.60000'), ('THOMPSON', 299, '41.86230', '-75.51390'), ('UNIONDALE', None, '41.71430', '-75.48390'), ('WEST AUBURN', None, '41.73330', '-76.10000'), ('WEST LENOX', None, '41.71670', '-75.70000'), ('WYOANNA', None, '41.93330', '-75.91670')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'NHZ005': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ASHLAND', None, '43.69530', '-71.63110'), ('BRISTOL', 1670, '43.59110', '-71.73720'), ('CANAAN', None, '43.64750', '-72.01220'), ('DORCHESTER', None, '43.75670', '-71.94920'), ('ELLSWORTH', None, '43.87390', '-71.73690'), ('ENFIELD', 1698, '43.64060', '-72.14440'), ('GRAFTON', None, '43.55860', '-71.94440'), ('GROTON', None, '43.70170', '-71.83610'), ('HANOVER', 8162, '43.70220', '-72.29000'), ('HEBRON', None, '43.69390', '-71.80610'), ('HOLDERNESS', None, '43.73190', '-71.58890'), ('LEBANON', 12568, '43.64220', '-72.25220'), ('LYME', None, '43.80940', '-72.15920'), ('ORANGE', None, '43.65440', '-71.97190'), ('PLYMOUTH', 3528, '43.75690', '-71.68860'), ('RUMNEY', None, '43.80530', '-71.81310'), ('WENTWORTH', None, '43.87170', '-71.91470')], 'partOfState': 'NORTHERN', 'wfo': 'GYX'}, -'VAZ036': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AFTON', None, '38.03220', '-78.83940'), ('ALLENS CREEK', None, '37.54670', '-78.86890'), ('ARRINGTON', None, '37.68390', '-78.90140'), ('BUFFALO SPRINGS', None, '37.60940', '-78.86220'), ('ELMA', None, '37.75360', '-78.79530'), ('FIVE FORKS', None, '37.57920', '-78.85890'), ('GREENFIELD', None, '37.92750', '-78.83830'), ('JONESBORO', None, '37.78330', '-78.97860'), ('LOVINGSTON', None, '37.77000', '-78.88000'), ('MONTEBELLO', None, '37.86360', '-79.13810'), ('NORWOOD', None, '37.64310', '-78.80920'), ('PIEDMONT', None, '37.61080', '-78.92190'), ('ROCKFISH', None, '37.80110', '-78.75580'), ('ROSELAND', None, '37.74750', '-78.97610'), ('SCHUYLER', None, '37.79220', '-78.69860'), ('SHIPMAN', None, '37.72360', '-78.83940'), ('TYRO', None, '37.82140', '-79.00500'), ('WINTERGREEN', None, '37.88470', '-78.89970')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'TXZ028': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AMHERST', 791, '34.01240', '-102.41400'), ('EARTH', 1109, '34.23350', '-102.40840'), ('FIELDTON', None, '34.03910', '-102.22270'), ('LITTLEFIELD', 6507, '33.91990', '-102.33460'), ('OLTON', 2288, '34.17950', '-102.13650'), ('SPADE', 100, '33.92610', '-102.15300'), ('SPRINGLAKE', 135, '34.23220', '-102.30510'), ('SUDAN', 1039, '34.06750', '-102.52490')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ029': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABERNATHY', 2839, '33.84000', '-101.84660'), ('COTTON CENTER', None, '33.99300', '-101.99240'), ('EDMONSON', 123, '34.28110', '-101.89480'), ('HALE CENTER', 2263, '34.06470', '-101.84450'), ('HALFWAY', None, '34.18800', '-101.95190'), ('PETERSBURG', 1262, '33.87090', '-101.59680'), ('PLAINVIEW', 22336, '34.19090', '-101.72460'), ('SETH WARD', 1926, '34.21370', '-101.69040')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'VAZ037': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALBERENE', None, '37.88640', '-78.61670'), ('BARRACKS', None, '38.05740', '-78.51350'), ('CARRSBROOK', None, '38.09310', '-78.45810'), ('CHARLOTTESVILLE', 45049, '38.03740', '-78.48570'), ('COBHAM', None, '38.06280', '-78.26830'), ('COVESVILLE', None, '37.89000', '-78.70500'), ('CROZET', 2820, '38.06930', '-78.69900'), ('DAMON', None, '37.82280', '-78.65940'), ('EARLYSVILLE', None, '38.15750', '-78.48310'), ('ESMONT', None, '37.83110', '-78.60750'), ('FLORDON', None, '38.05580', '-78.55670'), ('FREE UNION', None, '38.15470', '-78.56470'), ('GLENDOWER', None, '37.83720', '-78.54390'), ('GREENWOOD', None, '38.05560', '-78.77080'), ('HOLLYMEAD', None, '38.12190', '-78.43960'), ('IVY', None, '38.05640', '-78.59690'), ('KEENE', None, '37.86500', '-78.55560'), ('KESWICK', None, '38.02250', '-78.35940'), ('NORTH GARDEN', None, '37.94060', '-78.63690'), ('OVERTON', None, '37.95720', '-78.46780'), ('SCOTTSVILLE', 555, '37.79890', '-78.49340'), ('SHADWELL', None, '38.01280', '-78.39580'), ('STONY POINT', None, '38.11280', '-78.37170'), ('WESTMORELAND', None, '38.08640', '-78.45470'), ('WHITE HALL', None, '38.11780', '-78.66170'), ('WOODRIDGE', None, '37.89690', '-78.43640')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'TXZ022': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DIMMITT', 4375, '34.54790', '-102.31520'), ('EASTER', None, '34.64550', '-102.39630'), ('HART', 1198, '34.38560', '-102.11460'), ('NAZARETH', 356, '34.54140', '-102.10370'), ('SUMMERFIELD', None, '34.74080', '-102.51470')], 'partOfState': '', 'wfo': 'LUB'}, -'TXZ023': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLAYTONVILLE', None, '34.37520', '-101.57440'), ('HAPPY', 647, '34.74130', '-101.85590'), ('KRESS', 826, '34.36620', '-101.74750'), ('TULIA', 5117, '34.53760', '-101.77150')], 'partOfState': '', 'wfo': 'LUB'}, -'TXZ020': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DODSON', 115, '34.76500', '-100.01950'), ('DOZIER', None, '35.08140', '-100.34440'), ('LUTIE', None, '35.02310', '-100.22222'), ('QUAIL', 33, '34.90900', '-100.40500'), ('SAMNORWOOD', 39, '35.05530', '-100.28430'), ('WELLINGTON', 2275, '34.85350', '-100.21320')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ021': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLACK', None, '34.68250', '-102.60880'), ('BOVINA', 1874, '34.51620', '-102.88830'), ('FARWELL', 1364, '34.39270', '-103.02580'), ('FRIONA', 3854, '34.63890', '-102.72230'), ('LARIAT', None, '34.33020', '-102.90740'), ('LAZBUDDIE', None, '34.39300', '-102.61080'), ('OKLAHOMA LANE', None, '34.37880', '-102.87690'), ('RHEA', None, '34.67110', '-102.94860')], 'partOfState': '', 'wfo': 'LUB'}, -'TXZ026': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHILDRESS', 6778, '34.42450', '-100.24830'), ('KIRKLAND', None, '34.39190', '-100.06890'), ('TELL', None, '34.38000', '-100.39190')], 'partOfState': '', 'wfo': 'LUB'}, -'TXZ027': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BULA', None, '33.91130', '-102.63750'), ('ENOCHS', None, '33.87300', '-102.75940'), ('MAPLE', None, '33.84860', '-102.89800'), ('MULESHOE', 4530, '34.22860', '-102.72810'), ('MULESHOE WILDLIFE REF.', None, '33.94690', '-102.75270'), ('NEEDMORE', None, '34.03300', '-102.73690'), ('PROGRESS', None, '34.28270', '-102.80940'), ('WEST CAMP', None, '34.28380', '-102.98190')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ024': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAPROCK CANYON ST. PARK', None, '34.44580', '-101.06770'), ('MACKENZIE RESERVOIR', None, '34.54690', '-101.44880'), ('QUITAQUE', 432, '34.36740', '-101.05490'), ('SILVERTON', 771, '34.47120', '-101.30430'), ('VALLEY SCHOOLS', None, '34.37700', '-100.98690')], 'partOfState': '', 'wfo': 'LUB'}, -'TXZ025': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRICE', None, '34.71000', '-100.88970'), ('ESTELLINE', 168, '34.54710', '-100.43940'), ('LAKEVIEW', 152, '34.67280', '-100.69720'), ('MEMPHIS', 2479, '34.72670', '-100.54120'), ('TURKEY', 494, '34.39420', '-100.89550')], 'partOfState': '', 'wfo': 'LUB'}, -'COZ084': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AIR FORCE ACADEMY', 7526, '38.98000', '-104.87000'), ('BLACK FOREST', 13247, '39.04630', '-104.66810'), ('CALHAN', 896, '39.03440', '-104.29930'), ('MONUMENT', 1971, '39.07010', '-104.85710'), ('PALMER LAKE', 2179, '39.11680', '-104.90590'), ('PEYTON', None, '39.03000', '-104.48000'), ('RAMAH', 117, '39.12190', '-104.16660')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PUB'}, -'VAZ035': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALTO', None, '37.76670', '-79.23330'), ('AMHERST', 2251, '37.58330', '-79.05000'), ('CLIFFORD', None, '37.65000', '-79.03330'), ('ELON', None, '37.51670', '-79.20000'), ('FALCONERVILLE', None, '37.53330', '-79.10000'), ('FORKS OF BUFFALO', None, '37.68330', '-79.18330'), ('LOWESVILLE', None, '37.71670', '-79.06670'), ('NAOLA', None, '37.53330', '-79.28330'), ('NEW GLASGOW', None, '37.63330', '-78.98330'), ('ORONOCO', None, '37.73330', '-79.26670'), ('PLEASANT VIEW', None, '37.61670', '-79.25000'), ('RIVERVILLE', None, '37.51670', '-78.91670')], 'partOfState': 'CENTRAL', 'wfo': 'RNK'}, -'WIZ037': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BIG FALLS', 85, '44.61000', '-89.00000'), ('CLINTONVILLE', 4736, '44.61000', '-88.75000'), ('EMBARRASS', 399, '44.66000', '-88.69000'), ('FREMONT', 666, '44.26000', '-88.86000'), ('IOLA', 1298, '44.50000', '-89.11000'), ('KING', None, '44.33000', '-89.13000'), ('LIND CENTER', None, '44.28000', '-89.03000'), ('MANAWA', 1330, '44.46000', '-88.91000'), ('MARION', 1297, '44.66000', '-88.88000'), ('NEW LONDON', 7085, '44.38000', '-88.75000'), ('NORTHLAND', None, '44.59000', '-89.19000'), ('NORTHPORT', None, '44.40000', '-88.80000'), ('OGDENSBURG', 224, '44.45000', '-89.03000'), ('READFIELD', None, '44.26000', '-88.76000'), ('ROYALTON', None, '44.41000', '-88.86000'), ('RURAL', None, '44.31000', '-89.15000'), ('SCANDINAVIA', 349, '44.46000', '-89.13000'), ('SHERIDAN', None, '44.38000', '-89.21000'), ('SUGAR BUSH', None, '44.48000', '-88.73000'), ('SYMCO', None, '44.51000', '-88.90000'), ('WAUPACA', 5676, '44.34000', '-89.06000'), ('WEYAUWEGA', 1806, '44.31000', '-88.93000'), ('WHITE LAKE IN WAUPACA COU', None, '44.36000', '-88.94000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'ARZ071': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BRADLEY', 563, '33.09990', '-93.65690'), ('BUCKNER', 396, '33.35720', '-93.43540'), ('LEWISVILLE', 1285, '33.36300', '-93.57660'), ('STAMPS', 2131, '33.35870', '-93.49570')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'WIZ036': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMOND', 459, '44.26000', '-89.40000'), ('AMHERST', 964, '44.45000', '-89.28000'), ('AMHERST JUNCTION', 305, '44.46000', '-89.30000'), ('ARNOTT', None, '44.45000', '-89.43000'), ('BANCROFT', None, '44.31000', '-89.51000'), ('BLAINE', None, '44.31000', '-89.30000'), ('CUSTER', None, '44.50000', '-89.41000'), ('DANCY', None, '44.68000', '-89.69000'), ('ELLIS', None, '44.58000', '-89.43000'), ('JORDAN', None, '44.56000', '-89.48000'), ('JUNCTION CITY', 440, '44.58000', '-89.75000'), ('KEENE', None, '44.36000', '-89.46000'), ('KELLNER', None, '44.34000', '-89.71000'), ('NELSONVILLE', 191, '44.50000', '-89.30000'), ('PARK RIDGE', 488, '44.51000', '-89.54000'), ('PERU', None, '44.56000', '-89.23000'), ('PLOVER', 10520, '44.45000', '-89.53000'), ('POLONIA', None, '44.56000', '-89.41000'), ('ROSHOLT', 518, '44.63000', '-89.30000'), ('SHANTYTOWN', None, '44.68000', '-89.41000'), ('STEVENS POINT', 24551, '44.51000', '-89.56000'), ('STOCKTON', None, '44.51000', '-89.46000'), ('WHITING', 1760, '44.48900', '-89.56190')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'WIZ039': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALLOUEZ', 15443, '44.46000', '-87.98000'), ('ANSTON', None, '44.61000', '-88.15000'), ('ASHWAUBENON', 17634, '44.46000', '-88.08000'), ('ASKEATON', None, '44.26000', '-88.11000'), ('BELLEVUE', None, '44.43000', '-87.91000'), ('CHAMPION', None, '44.58000', '-87.80000'), ('DE PERE', 20559, '44.45000', '-88.05000'), ('DENMARK', 1958, '44.34000', '-87.83000'), ('FLINTVILLE', None, '44.65000', '-88.11000'), ('GREEN BAY', 102313, '44.51000', '-88.00000'), ('GREENLEAF', None, '44.31000', '-88.09000'), ('HOLLAND', None, '44.25000', '-88.16000'), ('HOWARD', 13546, '44.56000', '-88.06000'), ('HUMBOLDT', None, '44.50000', '-87.83000'), ('KUNESH', None, '44.61000', '-88.18000'), ('LANGES CORNERS', None, '44.38000', '-87.86000'), ('LARK', None, '44.31000', '-87.94000'), ('MORRISON', None, '44.29000', '-87.98000'), ('NEW FRANKEN', None, '44.53000', '-87.83000'), ('POLAND', None, '44.43000', '-87.83000'), ('PULASKI', 3060, '44.66000', '-88.23000'), ('SHIRLEY', None, '44.34000', '-87.94000'), ('SUAMICO', None, '44.63000', '-88.05000'), ('WAYSIDE', None, '44.25000', '-87.94000'), ('WRIGHTSTOWN', 1934, '44.33000', '-88.16000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'OHZ049': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADENA', 815, '40.21640', '-80.87630'), ('BOWERSTON', 414, '40.42670', '-81.18770'), ('CADIZ', 3308, '40.26670', '-80.99230'), ('DEERSVILLE', 82, '40.30810', '-81.18770'), ('FREEPORT', 398, '40.21080', '-81.26830'), ('HARRISVILLE', 259, '40.18180', '-80.88710'), ('HOPEDALE', 984, '40.32330', '-80.89900'), ('JEWETT', 784, '40.36810', '-81.00270'), ('NEW ATHENS', 342, '40.18430', '-80.99540'), ('SCIO', 799, '40.39870', '-81.08760')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ048': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHILI', None, '40.37000', '-81.77000'), ('CONESVILLE', 364, '40.18500', '-81.89230'), ('COSHOCTON', 11682, '40.26370', '-81.84960'), ('NELLIE', 134, '40.33830', '-82.06840'), ('PLAINFIELD', 158, '40.20630', '-81.71900'), ('WARSAW', 781, '40.33530', '-82.00140'), ('WEST LAFAYETTE', 2313, '40.27390', '-81.75100')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'WIZ038': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('APPLETON', 70087, '44.26000', '-88.40000'), ('BEAR CREEK', 415, '44.53000', '-88.71000'), ('BINGHAMTON', None, '44.43000', '-88.46000'), ('BLACK CREEK', 1192, '44.46000', '-88.44000'), ('BRIARTON', None, '44.59000', '-88.41000'), ('COMBINED LOCKS', 2422, '44.25000', '-88.31000'), ('DALE', None, '44.26000', '-88.68000'), ('FREEDOM', None, '44.38000', '-88.28000'), ('GREENVILLE', None, '44.29000', '-88.53000'), ('HORTONVILLE', 2357, '44.33000', '-88.63000'), ('KAUKAUNA', 12983, '44.26000', '-88.26000'), ('KIMBERLY', 6146, '44.28000', '-88.31000'), ('LEEMAN', None, '44.56000', '-88.55000'), ('LITTLE CHUTE', 10476, '44.28000', '-88.26000'), ('MACKVILLE', None, '44.34000', '-88.41000'), ('MEDINA', None, '44.26000', '-88.63000'), ('NICHOLS', 307, '44.56000', '-88.46000'), ('ONEIDA', 1070, '44.50000', '-88.19000'), ('SEYMOUR', 3335, '44.51000', '-88.33000'), ('SHIOCTON', 954, '44.43000', '-88.58000'), ('STEPHENSVILLE', None, '44.36000', '-88.58000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'OHZ045': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('MAGNETIC SPRINGS', 323, '40.35370', '-83.26280'), ('MARYSVILLE', 15942, '40.23770', '-83.37470'), ('MILFORD CENTER', 626, '40.17910', '-83.43710'), ('RICHWOOD', 2156, '40.42710', '-83.29620'), ('UNIONVILLE CENTER', 299, '40.13630', '-83.34160')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ044': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELLE CENTER', 807, '40.50910', '-83.74490'), ('BELLEFONTAINE', 13069, '40.36000', '-83.75700'), ('DE GRAFF', 1212, '40.31030', '-83.91470'), ('HUNTSVILLE', 454, '40.44240', '-83.80390'), ('LAKEVIEW', 1074, '40.48780', '-83.92570'), ('QUINCY', 734, '40.29590', '-83.96950'), ('RUSHSYLVANIA', 543, '40.46120', '-83.67110'), ('RUSSELLS POINT', 1619, '40.46800', '-83.89330'), ('VALLEY HI', 244, '40.31610', '-83.67300'), ('WEST LIBERTY', 1813, '40.25380', '-83.75800'), ('WEST MANSFIELD', 700, '40.39960', '-83.54500'), ('ZANESFIELD', 220, '40.33820', '-83.67810')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ047': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CENTERBURG', 1432, '40.30370', '-82.69660'), ('DANVILLE', 1104, '40.44790', '-82.26010'), ('FREDERICKTOWN', 2428, '40.47890', '-82.54530'), ('GAMBIER', 1871, '40.37630', '-82.39490'), ('GANN', 143, '40.46910', '-82.19030'), ('MARTINSBURG', 185, '40.26930', '-82.35490'), ('MOUNT VERNON', 14375, '40.39050', '-82.47520')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHZ046': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ASHLEY', 1216, '40.40910', '-82.95450'), ('DELAWARE', 25243, '40.29870', '-83.08130'), ('GALENA', 305, '40.22050', '-82.88210'), ('OSTRANDER', 405, '40.26510', '-83.21210'), ('POWELL', 6247, '40.16050', '-83.06560'), ('SUNBURY', 2630, '40.24510', '-82.86480')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ041': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CALCUTTA', 3491, '40.67600', '-80.57830'), ('COLUMBIANA', 5635, '40.88590', '-80.68840'), ('EAST LIVERPOOL', 13089, '40.63290', '-80.56940'), ('EAST PALESTINE', 4917, '40.83740', '-80.54490'), ('GLENMOOR', 2192, '40.66510', '-80.61320'), ('HANOVERTON', 387, '40.75500', '-80.93560'), ('LA CROFT', 1307, '40.64720', '-80.60130'), ('LEETONIA', 2043, '40.87840', '-80.76100'), ('LISBON', 2788, '40.77610', '-80.76930'), ('MIDDLETON', None, '40.78000', '-80.53000'), ('NEW WATERFORD', 1391, '40.84850', '-80.62040'), ('ROGERS', 266, '40.79020', '-80.62710'), ('SALEM', 12197, '40.90260', '-80.85370'), ('SALINEVILLE', 1397, '40.62100', '-80.83280'), ('SUMMITVILLE', 108, '40.67720', '-80.88610'), ('WELLSVILLE', 4133, '40.60270', '-80.65630')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ040': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CARROLLTON', 3190, '40.57980', '-81.09130'), ('DELLROY', 294, '40.55570', '-81.19940'), ('LEESVILLE', 184, '40.45090', '-81.20960'), ('MALVERN', 1218, '40.68900', '-81.18180'), ('MINERVA JCT', None, '40.72000', '-81.15000'), ('SHERRODSVILLE', 316, '40.49470', '-81.24470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ043': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANNA', 1319, '40.39560', '-84.17290'), ('BOTKINS', 1205, '40.46720', '-84.18260'), ('FORT LORAMIE', 1344, '40.34630', '-84.37030'), ('JACKSON CENTER', 1369, '40.43910', '-84.03950'), ('KETTLERSVILLE', 175, '40.43880', '-84.26100'), ('LOCKINGTON', 208, '40.20780', '-84.23550'), ('PORT JEFFERSON', 321, '40.33000', '-84.09210'), ('RUSSIA', 551, '40.23240', '-84.41090'), ('SIDNEY', 20211, '40.28880', '-84.16320')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ042': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANSONIA', 1145, '40.21460', '-84.63530'), ('ARCANUM', 2076, '39.99160', '-84.55380'), ('BRADFORD', 1859, '40.13090', '-84.42930'), ('BURKETTSVILLE', 254, '40.35290', '-84.64250'), ('CASTINE', 129, '39.93080', '-84.62470'), ('GETTYSBURG', 558, '40.11570', '-84.49600'), ('GORDON', 190, '39.92990', '-84.50860'), ('GREENVILLE', 13294, '40.10280', '-84.62480'), ('HOLLANSBURG', 214, '39.99850', '-84.79300'), ('ITHACA', 102, '39.93820', '-84.55340'), ('NEW MADISON', 817, '39.96850', '-84.70830'), ('NEW WESTON', 135, '40.33700', '-84.64400'), ('NORTH STAR', 209, '40.32390', '-84.56800'), ('OSGOOD', 255, '40.34010', '-84.49420'), ('PALESTINE', 170, '40.05030', '-84.74450'), ('PITSBURG', 392, '39.98670', '-84.48770'), ('ROSSBURG', 224, '40.27980', '-84.63820'), ('UNION CITY', 1767, '40.19820', '-84.79480'), ('VERSAILLES', 2589, '40.22300', '-84.48400'), ('WAYNE LAKES', 684, '40.02110', '-84.66240'), ('YORKSHIRE', 110, '40.32550', '-84.49600')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'ILZ050': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALEXANDER', None, '39.71670', '-90.05000'), ('CHAPIN', 592, '39.76730', '-90.40330'), ('CONCORD', 176, '39.81610', '-90.37170'), ('FRANKLIN', 586, '39.62040', '-90.04720'), ('JACKSONVILLE', 18940, '39.72970', '-90.23430'), ('LITERBERRY', None, '39.85000', '-90.20000'), ('LYNNVILLE', 137, '39.68500', '-90.34630'), ('MEREDOSIA', 1041, '39.83150', '-90.55830'), ('MURRAYVILLE', 644, '39.58230', '-90.25090'), ('NORTONVILLE', None, '39.56670', '-90.15000'), ('PRENTICE', None, '39.85000', '-90.05000'), ('SINCLAIR', None, '39.81670', '-90.11670'), ('WAVERLY', 1346, '39.59270', '-89.95230'), ('WOODSON', 559, '39.62750', '-90.22290')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'ILZ051': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AUBURN', 4317, '39.57720', '-89.74580'), ('BERLIN', 140, '39.75770', '-89.90250'), ('BERRY', None, '39.71670', '-89.48330'), ('BUFFALO', 491, '39.84950', '-89.40900'), ('CANTRALL', 139, '39.93440', '-89.68010'), ('CHATHAM', 8583, '39.67290', '-89.69710'), ('CURRAN', None, '39.74000', '-89.76670'), ('DAWSON', 466, '39.85380', '-89.46270'), ('DIVERNON', 1201, '39.56930', '-89.65400'), ('FARMINGDALE', None, '39.83330', '-89.81670'), ('GLENARM', None, '39.61670', '-89.67000'), ('ILLIOPOLIS', 916, '39.85130', '-89.24700'), ('LOAMI', 804, '39.67440', '-89.84800'), ('LOWDER', None, '39.55000', '-89.85000'), ('MECHANICSBURG', 456, '39.81020', '-89.39820'), ('NEW BERLIN', 1030, '39.72520', '-89.91190'), ('PAWNEE', 2647, '39.59200', '-89.58090'), ('PLEASANT PLAINS', 777, '39.87320', '-89.92000'), ('RIVERTON', 3048, '39.84920', '-89.54010'), ('ROCHESTER', 2893, '39.75060', '-89.54150'), ('SALISBURY', None, '39.90000', '-89.81670'), ('SHERMAN', 2871, '39.88660', '-89.60900'), ('SPRINGFIELD', 111454, '39.78140', '-89.64470'), ('THAYER', 750, '39.53990', '-89.75840'), ('WILLIAMSVILLE', 1439, '39.95280', '-89.55630')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ052': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASSUMPTION', 1261, '39.51800', '-89.04840'), ('EDINBURG', 1135, '39.65780', '-89.38960'), ('KINCAID', 1441, '39.58870', '-89.41430'), ('MORRISONVILLE', 1068, '39.42120', '-89.45780'), ('MOUNT AUBURN', 515, '39.76590', '-89.26100'), ('OWANECO', 256, '39.48140', '-89.19440'), ('PALMER', 248, '39.45840', '-89.40790'), ('PANA', 5614, '39.38660', '-89.07850'), ('ROBY', None, '39.74000', '-89.39820'), ('SHARPSBURG', None, '39.61670', '-89.35000'), ('SICILY', None, '39.60000', '-89.50000'), ('STONINGTON', 960, '39.63910', '-89.19220'), ('TAYLORVILLE', 11427, '39.52150', '-89.26220'), ('VANDERVILLE', None, '39.42120', '-89.26220'), ('WILLEYS', None, '39.60000', '-89.23330')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ053': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARGENTA', 921, '39.98500', '-88.81870'), ('BLUE MOUND', 1129, '39.70070', '-89.11890'), ('BOODY', None, '39.76670', '-89.05500'), ('DECATUR', 81860, '39.85220', '-88.93380'), ('ELWIN', None, '39.78330', '-88.95590'), ('FORSYTH', 2434, '39.92360', '-88.95590'), ('HARRISTOWN', 1338, '39.84160', '-89.05950'), ('LONG CREEK', 1364, '39.80430', '-88.84730'), ('MACON', 1213, '39.70900', '-88.99940'), ('MAROA', 1654, '40.03820', '-88.95490'), ('MOUNT ZION', 4845, '39.77790', '-88.87850'), ('NIANTIC', 738, '39.85390', '-89.16550'), ('OAKLEY', None, '39.85220', '-88.81870'), ('OREANA', 892, '39.93790', '-88.86920'), ('WARRENSBURG', 1289, '39.93230', '-89.06120')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ054': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALLENVILLE', 154, '39.55790', '-88.53830'), ('BETHANY', 1287, '39.64420', '-88.74090'), ('CADWELL', None, '39.68330', '-88.53330'), ('DALTON CITY', 581, '39.71410', '-88.80700'), ('GAYS', 259, '39.45790', '-88.49590'), ('KIRKSVILLE', None, '39.56670', '-88.66670'), ('LAKE CITY', None, '39.75000', '-88.71670'), ('LOVINGTON', 1222, '39.71450', '-88.63090'), ('SULLIVAN', 4326, '39.59740', '-88.60710')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ055': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARCOLA', 2652, '39.68460', '-88.30380'), ('ARTHUR', 2203, '39.71530', '-88.46900'), ('BOURBON', None, '39.75000', '-88.38330'), ('CAMARGO', 469, '39.79950', '-88.16670'), ('CHESTERVILLE', None, '39.68460', '-88.40000'), ('GARRETT', 198, '39.79680', '-88.42530'), ('HINDSBORO', 361, '39.68430', '-88.13420'), ('MURDOCK', None, '39.80000', '-88.08330'), ('NEWMAN', 956, '39.79730', '-87.98750'), ('TUSCOLA', 4448, '39.79770', '-88.28150'), ('VILLA GROVE', 2553, '39.86360', '-88.15950')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILZ056': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASHMORE', 809, '39.53110', '-88.02040'), ('CHARLESTON', 21039, '39.48480', '-88.17610'), ('COLES', None, '39.51670', '-88.46670'), ('COOKS MILL', None, '39.58330', '-88.41670'), ('HUMBOLDT', 481, '39.60510', '-88.31950'), ('HUTTON', None, '39.40000', '-88.06670'), ('LERNA', 322, '39.41790', '-88.28890'), ('MATTOON', 18291, '39.47700', '-88.36880'), ('OAKLAND', 996, '39.65770', '-88.02660'), ('PARADISE', None, '39.41670', '-88.45000'), ('RARDIN', None, '39.60000', '-88.10000'), ('TRILLA', None, '39.38330', '-88.35000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILZ057': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELL RIDGE', None, '39.50000', '-87.73330'), ('BORTON', None, '39.66500', '-87.93310'), ('BROCTON', 322, '39.71610', '-87.93310'), ('CHRISMAN', 1318, '39.80400', '-87.67420'), ('EDGAR', None, '39.75000', '-87.70000'), ('HUME', 382, '39.79760', '-87.86880'), ('KANSAS', 842, '39.55390', '-87.93990'), ('METCALF', 213, '39.80030', '-87.80800'), ('OLIVER', None, '39.48330', '-87.68330'), ('PALERMO', None, '39.86360', '-87.88020'), ('PARIS', 9077, '39.61550', '-87.69150'), ('REDMON', 199, '39.64500', '-87.86180'), ('SCOTTLAND', None, '39.80000', '-87.60000'), ('VERMILION', 239, '39.57970', '-87.58740')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILZ058': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATHENSVILLE', None, '39.45580', '-90.18930'), ('BARROW', None, '39.50620', '-90.40140'), ('BELLTOWN', None, '39.38250', '-90.40790'), ('BERDAN', None, '39.36490', '-90.39760'), ('CARROLLTON', 2605, '39.29780', '-90.40680'), ('ELDRED', 211, '39.28620', '-90.55330'), ('GREENFIELD', 1179, '39.34430', '-90.20760'), ('HAYPRESS', None, '39.36050', '-90.53670'), ('HILLVIEW', 179, '39.44960', '-90.53790'), ('KANE', 459, '39.19030', '-90.35120'), ('OLD KANE', None, '39.18300', '-90.36700'), ('PATTERSON', None, '39.48070', '-90.48310'), ('ROCKBRIDGE', 189, '39.27290', '-90.20890'), ('ROODHOUSE', 2214, '39.48460', '-90.37340'), ('WALKERSVILLE', None, '39.38700', '-90.49540'), ('WHITE HALL', 2629, '39.43740', '-90.40400'), ('WOODY', None, '39.26370', '-90.48520'), ('WRIGHTS', None, '39.37580', '-90.29420')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'ILZ059': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATWATER', None, '39.33300', '-89.72510'), ('BENLD', 1541, '39.09310', '-89.80190'), ('BRIGHTON', 2196, '39.04030', '-90.13900'), ('BUNKER HILL', 1801, '39.04050', '-89.95080'), ('CARLINVILLE', 5685, '39.28040', '-89.88090'), ('CHESTERFIELD', 223, '39.25570', '-90.06770'), ('DORCHESTER', 142, '39.08620', '-89.88820'), ('GILLESPIE', 3412, '39.12540', '-89.81720'), ('GIRARD', 2245, '39.44680', '-89.78240'), ('HETTICK', 182, '39.35520', '-90.03700'), ('HORNSBY', None, '39.17070', '-89.74510'), ('MEDORA', 501, '39.17600', '-90.14170'), ('MILES STATION', None, '39.07710', '-90.10720'), ('MODESTO', 252, '39.47910', '-89.98020'), ('MOUNT OLIVE', 2150, '39.07260', '-89.72800'), ('NILWOOD', 284, '39.39950', '-89.80730'), ('PALMYRA', 733, '39.43490', '-89.99620'), ('PIASA', None, '39.11590', '-90.12570'), ('PLAINVIEW', None, '39.15930', '-89.98980'), ('PRUETT', None, '39.06480', '-89.91090'), ('ROYAL LAKES', 190, '39.11250', '-89.96180'), ('SCOTTVILLE', 140, '39.47750', '-90.10330'), ('SHIPMAN', 655, '39.12080', '-90.04520'), ('STANDARD CITY', 138, '39.35040', '-89.78380'), ('STAUNTON', 5030, '39.01260', '-89.78850'), ('VIRDEN', 3488, '39.50490', '-89.76950'), ('WHITE CITY', 221, '39.07240', '-89.76400'), ('WILSONVILLE', 604, '39.06890', '-89.85530')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'NDZ040': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AMIDON', 26, '46.48210', '-103.31880'), ('MARMARTH', 140, '46.29590', '-103.93390')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDZ041': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BENTLEY', None, '46.33330', '-102.06670'), ('BURT', None, '46.36670', '-102.15000'), ('MOTT', 808, '46.37470', '-102.31810'), ('NEW ENGLAND', 555, '46.54090', '-102.86670'), ('REGENT', 211, '46.42270', '-102.55760')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDZ046': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BRADDOCK', 43, '46.56350', '-100.08910'), ('HAGUE', 91, '46.02940', '-99.99820'), ('HAZELTON', 237, '46.48430', '-100.27840'), ('KINTYRE', None, '46.55000', '-99.95000'), ('LINTON', 1321, '46.26840', '-100.23320'), ('STRASBURG', 549, '46.13320', '-100.16040'), ('WESTFIELD', None, '46.03330', '-100.20000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDZ047': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BURNSTAD', None, '46.38330', '-99.61670'), ('FREDONIA', 51, '46.32860', '-99.09490'), ('GACKLE', 335, '46.62640', '-99.14140'), ('NAPOLEON', 857, '46.50360', '-99.76800')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'NDZ044': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BUCYRUS', 26, '46.06360', '-102.78830'), ('HAYNES', 19, '45.97370', '-102.47160'), ('HETTINGER', 1307, '46.00360', '-102.63440'), ('REEDER', 181, '46.10710', '-102.94220')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'NDZ045': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BREIEN', None, '46.38330', '-100.93330'), ('CANNON BALL', 864, '46.31250', '-100.63210'), ('FORT YATES', 228, '46.08700', '-100.62980'), ('SELFRIDGE', 223, '46.04200', '-100.92430'), ('SOLEN', 86, '46.38870', '-100.79540')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NJZ026': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BARNEGAT LIGHT', 764, '39.75180', '-74.11120'), ('BAY HEAD', 1238, '40.07020', '-74.04870'), ('BEACH HAVEN WEST', 4444, '39.67020', '-74.23340'), ('MANTOLOKING', 423, '40.04530', '-74.04960'), ('POINT PLEASANT', 19306, '40.07840', '-74.07090'), ('SURF CITY', 1442, '39.66230', '-74.16920')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJZ024': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('AVALON', 2143, '39.09170', '-74.73700'), ('CAPE MAY', 4034, '38.94010', '-74.90550'), ('CAPE MAY POINT', 241, '38.93680', '-74.96560'), ('NORTH CAPE MAY', 3618, '38.97630', '-74.95170'), ('NORTH WILDWOOD', 4935, '39.00430', '-74.79980'), ('OCEAN CITY', 15378, '39.26960', '-74.60340'), ('SEA ISLE CITY', 2835, '39.15240', '-74.69780'), ('STONE HARBOR', 1128, '39.04400', '-74.76780'), ('WEST CAPE MAY', 1095, '38.94140', '-74.93790'), ('WEST WILDWOOD', 448, '39.00010', '-74.82430'), ('WILDWOOD', 5436, '38.98890', '-74.82030'), ('WILDWOOD CREST', 3980, '38.97240', '-74.83880')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJZ025': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('LINWOOD', 7172, '39.34220', '-74.57030'), ('LONGPORT', 1054, '39.31170', '-74.52550'), ('MARGATE CITY', 8193, '39.33080', '-74.50740'), ('SOMERS POINT', 11614, '39.31730', '-74.60680'), ('VENTNOR CITY', 12910, '39.34190', '-74.48320')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJZ022': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ABSECON', 7638, '39.42520', '-74.49560'), ('BUENA', 3873, '39.52800', '-74.94490'), ('COLLINGS LAKES', 1726, '39.59470', '-74.88320'), ('CORBIN CITY', 468, '39.30120', '-74.71070'), ('EGG HARBOR CITY', 4545, '39.56430', '-74.59630'), ('ELWOOD-MAGNOLIA', 1392, '39.57280', '-74.71850'), ('ESTELL MANOR', 1585, '39.35420', '-74.77370'), ('FOLSOM', 1972, '39.59210', '-74.84750'), ('HAMMONTON', 12604, '39.65490', '-74.77240'), ('MAYS LANDING', 2321, '39.45280', '-74.72420'), ('NORTHFIELD', 7725, '39.37320', '-74.55490'), ('PLEASANTVILLE', 19012, '39.39050', '-74.51880'), ('POMONA', 4019, '39.46960', '-74.55190'), ('PORT REPUBLIC', 1037, '39.53800', '-74.48720')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'ORZ011': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BAGBY HOT SPRINGS', None, '44.92000', '-122.16000'), ('BENNETT PASS', None, '45.32000', '-121.62000'), ('BREITENBUSH SPRINGS', None, '44.78300', '-121.96700'), ('BRIGHTWOOD', None, '45.37000', '-122.01700'), ('DEE', None, '45.58330', '-121.61660'), ('DETROIT', 262, '44.73390', '-122.15080'), ('GOVERNMENT CAMP', None, '45.30000', '-121.76700'), ('IDANHA', 232, '44.70310', '-122.08340'), ('LOLO PASS', None, '45.42000', '-121.80000'), ('LOST LAKE', None, '45.49000', '-121.83000'), ('MARION FORKS', None, '44.60000', '-121.95000'), ('MOUNT HOOD', None, '45.37500', '-121.70000'), ('MOUNT JEFFERSON', None, '44.68000', '-121.79700'), ('ODELL', 1849, '45.63000', '-121.53600'), ('ODELL LAKE', None, '45.56500', '-122.00000'), ('PARKDALE', 266, '45.51700', '-121.60000'), ('RHODODENDRON', None, '45.33330', '-121.91660'), ('ROUND MOUNTAIN', None, '45.06000', '-122.11000'), ('SANTIAM JUNCTION', None, '44.44000', '-121.95000'), ('SANTIAM PASS', None, '44.42200', '-121.84600'), ('TABLE ROCK', None, '44.96000', '-122.27000'), ('THREE LYNX', None, '45.12000', '-122.06000'), ('TIMOTHY LAKE', None, '45.12000', '-121.79000'), ('TOMBSTONE SUMMIT', None, '44.39700', '-122.16000'), ('UPPER SODA', None, '44.41000', '-122.28330'), ('WELCHES', None, '45.33330', '-121.96660'), ('WHITE RIVER SNOW PARK', None, '45.30000', '-121.67000'), ('ZIGZAG', None, '45.34000', '-121.93300')], 'partOfState': '', 'wfo': 'PQR'}, -'NJZ020': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BARNEGAT', 1690, '39.75400', '-74.22170'), ('BEACHWOOD', 10375, '39.92740', '-74.20270'), ('BRICK TOWNSHIP', None, '40.05750', '-74.11000'), ('CEDAR GLEN LAKES', 1617, '39.95210', '-74.40020'), ('CEDAR GLEN WEST', 1376, '40.04340', '-74.28760'), ('CRESTWOOD VILLAGE', 8392, '39.95720', '-74.35510'), ('GILFORD PARK', None, '39.95410', '-74.13020'), ('HOLIDAY CITY SOUTH', 4047, '39.94870', '-74.23660'), ('HOLIDAY CITY-BERKELEY', 13884, '39.95960', '-74.27770'), ('HOLIDAY CITY-DOVER', None, '40.02120', '-74.16720'), ('HOLIDAY HEIGHTS', 2389, '39.94580', '-74.25430'), ('ISLAND HEIGHTS', 1751, '39.94230', '-74.14960'), ('LAKEHURST', 2522, '40.01290', '-74.32080'), ('LAKEWOOD', 36065, '40.09480', '-74.21190'), ('LEISURE KNOLL', 2467, '40.01890', '-74.29260'), ('LEISURE VILLAGE', 4443, '40.04490', '-74.18250'), ('LEISURE VILLAGE EAST', 4597, '40.04150', '-74.16730'), ('LEISURE VILLAGE WEST-PINE', None, '40.00380', '-74.26650'), ('MANAHAWKIN', 2004, '39.69570', '-74.25390'), ('MYSTIC ISLAND', 8694, '39.56560', '-74.38330'), ('NEW EGYPT', 2519, '40.06390', '-74.53190'), ('OCEAN ACRES', 13155, '39.74330', '-74.28130'), ('PINE BEACH', 1950, '39.93550', '-74.17010'), ('PINE RIDGE AT CRESTWOOD', 2025, '39.95460', '-74.31560'), ('PLEASANT PLAINS', None, '39.99700', '-74.21900'), ('SILVER RIDGE', 1211, '39.96100', '-74.23620'), ('SILVERTON', None, '40.00790', '-74.12180'), ('SOUTH TOMS RIVER', 3634, '39.94080', '-74.20970'), ('TOMS RIVER', 86327, '39.95460', '-74.18440'), ('TUCKERTON', 3517, '39.59780', '-74.32940'), ('WARETOWN', 1582, '39.78970', '-74.19380')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJZ021': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BRIDGETON', 22771, '39.42750', '-75.22810'), ('FAIRTON', 2253, '39.37790', '-75.21490'), ('MILLVILLE', 26847, '39.39000', '-75.05470'), ('PORT NORRIS', 1507, '39.24800', '-75.04110'), ('ROSENHAYN', 1099, '39.47890', '-75.13650'), ('SEABROOK FARMS', 1719, '39.50100', '-75.21830'), ('SHILOH', 534, '39.45800', '-75.29800'), ('VINELAND', 56271, '39.46480', '-74.99740')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'GAZ138': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALLENHURST', 788, '31.78390', '-81.60780'), ('CREEK ISLAND', None, '31.82060', '-81.65690'), ('CROSSROADS', None, '31.74720', '-81.46330'), ('DORCHESTER', None, '31.79530', '-81.40530'), ('FLEMING', None, '31.88060', '-81.42670'), ('FLEMINGTON', 369, '31.85940', '-81.56420'), ('FORT STEWART', 11205, '31.86250', '-81.51780'), ('GUM BRANCH', None, '31.85810', '-81.72690'), ('HALFMOON LANDING', None, '31.69940', '-81.27860'), ('HINESVILLE', 30392, '31.84670', '-81.59610'), ('LECOUNT', None, '31.67970', '-81.45890'), ('LIMERICK', None, '31.83670', '-81.38610'), ('LIVE OAK', None, '31.81250', '-81.62440'), ('MCINTOSH', None, '31.82560', '-81.52390'), ('MIDWAY', 1100, '31.80560', '-81.43080'), ('MILL CREEK', None, '31.82920', '-81.62060'), ('RETREAT', None, '31.70280', '-81.41420'), ('RICEBORO', 736, '31.73530', '-81.43360'), ('SCREVEN FORK', None, '31.77310', '-81.49140'), ('SEABROOK', None, '31.74330', '-81.32890'), ('SUNBURY', None, '31.76810', '-81.28110'), ('TRINITY', None, '31.92970', '-81.55670'), ('WALTHOURVILLE', 4030, '31.77390', '-81.63280'), ('WILDWOOD', None, '31.81940', '-81.61530'), ('WILLIE', None, '32.01390', '-81.66750')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'WVZ036': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ANSTED', 1576, '38.13590', '-81.10210'), ('BABCOCK STATE PARK', None, '37.99350', '-80.97210'), ('FAYETTEVILLE', 2754, '38.05210', '-81.10550'), ('GAULEY BRIDGE', 738, '38.16830', '-81.20170'), ('HAWKS NEST STATE PARK', None, '38.12380', '-81.11920'), ('MEADOW BRIDGE', 321, '37.86230', '-80.85540'), ('MONTGOMERY', 1942, '38.17380', '-81.31850'), ('MOUNT HOPE', 1487, '37.89530', '-81.17100'), ('OAK HILL', 7589, '37.98200', '-81.14770'), ('PAX', 174, '37.90960', '-81.26390'), ('POWELLTON', 1796, '38.09050', '-81.31620'), ('SMITHERS', 904, '38.17850', '-81.30650'), ('THURMOND', 7, '37.96380', '-81.08030')], 'partOfState': '', 'wfo': 'RLX'}, -'WYZ057': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALADDIN', None, '44.63330', '-104.18330'), ('ALVA', None, '44.70000', '-104.45000'), ('BEULAH', None, '44.53330', '-104.08330'), ('BUCKHORN', None, '44.15000', '-104.10000'), ('FARRALL', None, '44.58330', '-104.23330'), ('FOUR CORNERS', None, '44.08330', '-104.13330'), ('INYAN KARA MOUNTAIN', None, '44.21380', '-104.34870'), ('MONA', None, '44.81670', '-104.38330'), ('MOSKEE', None, '44.28330', '-104.18330'), ('SUNDANCE', 1161, '44.40470', '-104.37420'), ('WARREN PEAK', None, '44.48180', '-104.44210')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'WVZ037': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BIRCH RIVER', None, '38.49860', '-80.75540'), ('CRAIGSVILLE', 2204, '38.32050', '-80.64580'), ('RICHWOOD', 2477, '38.22150', '-80.53720'), ('SUMMERSVILLE', 3294, '38.28440', '-80.84410')], 'partOfState': '', 'wfo': 'RLX'}, -'GAZ130': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ASHTON', None, '31.70360', '-83.15610'), ('BOWENS MILL', None, '31.84130', '-83.20940'), ('FITZGERALD', 8758, '31.70620', '-83.25360'), ('FITZGERALD MUNI A/P', None, '31.68330', '-83.27050'), ('QUEENSLAND', None, '31.79830', '-83.23570'), ('RED BLUFF', None, '31.77400', '-82.99940'), ('WESTWOOD', None, '31.73410', '-83.29270')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAZ131': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ABBA', None, '31.75540', '-83.37080'), ('ARP', None, '31.75460', '-83.40710'), ('HOLT', None, '31.59340', '-83.15100'), ('IRWINVILLE', None, '31.64820', '-83.38270'), ('LANDS CROSSROADS', None, '31.71820', '-83.38490'), ('LANDS CROSSROADS', None, '31.71830', '-83.38490'), ('MYSTIC', None, '31.62150', '-83.33400'), ('OCILLA', 3270, '31.59570', '-83.24920'), ('OSIERFIELD', None, '31.66640', '-83.11610'), ('PINETTA', None, '31.59290', '-83.35860'), ('RIVERBEND', None, '31.48930', '-83.26330'), ('WATERLOO', None, '31.59350', '-83.47450'), ('WRAY', None, '31.62190', '-83.05510')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAZ132': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMBROSE', 320, '31.59340', '-83.01370'), ('BROXTON', 1428, '31.62380', '-82.88690'), ('DOUGLAS', 10639, '31.50520', '-82.85150'), ('NICHOLLS', 1008, '31.51820', '-82.63580'), ('PRIDGEN', None, '31.69680', '-82.92310'), ('WEST GREEN', None, '31.60970', '-82.73620')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ133': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DENTON', 269, '31.72250', '-82.69650'), ('HAZLEHURST', 3787, '31.86590', '-82.59970'), ('SNIPESVILLE', None, '31.75950', '-82.75250')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ134': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALMA', 3236, '31.54340', '-82.47620'), ('NEW LACY', None, '31.53620', '-82.37360')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ135': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BAXLEY', 4150, '31.76470', '-82.35190'), ('GRAHAM', 312, '31.82850', '-82.50390'), ('PINE GROVE', None, '31.81320', '-82.44760'), ('PLANT HATCH', None, '31.93000', '-82.34000'), ('SURRENCY', 237, '31.72180', '-82.19830')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ136': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BROADHURST', None, '31.47400', '-81.91760'), ('DOCTORTOWN', None, '31.65060', '-81.83000'), ('GARDI', None, '31.53540', '-81.79960'), ('JESUP', 9279, '31.59860', '-81.88940'), ('MOUNT PLEASANT', None, '31.43460', '-81.67910'), ('ODUM', 414, '31.66530', '-82.02640'), ('SCREVEN', 702, '31.48380', '-82.01710')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ137': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AIMAR', None, '31.75280', '-81.67170'), ('BEARDS CREEK', None, '31.86610', '-81.88560'), ('DONALD', None, '31.82140', '-81.85030'), ('ELIM', None, '31.79470', '-81.67470'), ('LUDOWICI', 1440, '31.70780', '-81.74250'), ('NOBLE', None, '31.84640', '-81.92920'), ('WEFANIE', None, '31.77060', '-81.81640')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'ARZ001': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('WALNUT HILL', None, '36.40830', '-93.99110'), ('ROCKY COMFORT', None, '36.23920', '-94.30810'), ('FAIRMOUNT', None, '36.22670', '-94.44580'), ('BLAND', None, '36.33330', '-93.92360'), ('MILLER', None, '36.41640', '-94.26420'), ('HILL TOP', None, '36.44690', '-93.99940'), ('BENTONVILLE', 19730, '36.37280', '-94.20860'), ('SILOAM SPRINGS', 10843, '36.18810', '-94.54030'), ('ROGERS', 38829, '36.33190', '-94.11830'), ('SULPHUR SPRINGS', 671, '36.48330', '-94.45830'), ('LOWELL', 5013, '36.25530', '-94.13060'), ('GENTRY', 2165, '36.26750', '-94.48440'), ('GRAVETTE', 1810, '36.42190', '-94.45330'), ('PEA RIDGE', 2346, '36.45390', '-94.11500'), ('GATEWAY', 116, '36.49030', '-93.93170'), ('LAKE FRANCIS', None, '36.13330', '-94.53330'), ('GALLITIN', None, '36.20000', '-94.43330'), ('HEALING SPRINGS', None, '36.25470', '-94.27810'), ('SPRINGTOWN', 114, '36.26080', '-94.42310'), ('HIGHFILL', 379, '36.26140', '-94.35750'), ('CAVE SPRINGS', 1103, '36.26330', '-94.23170'), ('WAR EAGLE', None, '36.26780', '-93.94080'), ('MONTE NE', None, '36.28720', '-94.06890'), ('LOOKOUT', None, '36.28330', '-93.90000'), ('CHEROKEE CITY', None, '36.29830', '-94.57750'), ('VAUGHN', None, '36.31530', '-94.30390'), ('LARUE', None, '36.34170', '-93.94580'), ('DECATUR', 1314, '36.33580', '-94.46060'), ('CENTERTON', 2146, '36.35970', '-94.28500'), ('AVOCA', 423, '36.40190', '-94.07060'), ('HIWASSE', None, '36.43170', '-94.33360'), ('BELLA VISTA', 16582, '36.42940', '-94.23140'), ('GARFIELD', 490, '36.44830', '-93.97390'), ('BEAVER LAKE', None, '36.36670', '-93.88330'), ('BEAVER LAKE', None, '36.36670', '-93.88330')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'OKZ064': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MANNFORD', 2095, '36.13330', '-96.35420'), ('BRISTOW', 4325, '35.83060', '-96.39080'), ('MILFAY', None, '35.75500', '-96.56560'), ('SLICK', 148, '35.77690', '-96.26580'), ('DEPEW', 564, '35.80280', '-96.50580'), ('MOUNDS', 1153, '35.87640', '-96.06080'), ('SHAMROCK', 125, '35.91000', '-96.58360'), ('KIEFER', 1026, '35.94470', '-96.06500'), ('DRUMRIGHT', 2905, '35.98830', '-96.60080'), ('OILTON', 1099, '36.08440', '-96.58330'), ('SILVER CITY', None, '36.09030', '-96.49420'), ('MANNFORD', 2095, '36.13330', '-96.35420'), ('KELLYVILLE', 906, '35.94360', '-96.21330'), ('SAPULPA', 19166, '35.99860', '-96.11390')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'TXZ160': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GOLINDA', 423, '31.37040', '-97.08110'), ('LOTT', 724, '31.20600', '-97.03340'), ('MARLIN', 6628, '31.30900', '-96.89300'), ('ROSEBUD', 1493, '31.07500', '-96.97530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ258': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('MCKITTRICK CANYON', None, '31.98000', '-104.77000'), ('PINE SPRINGS', None, '31.89000', '-104.81000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'WVZ032': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('FLEMINGTON', 287, '39.26730', '-80.12820'), ('GRAFTON', 5489, '39.34060', '-80.01720'), ('TYGART LAKE STATE PARK', None, '39.29810', '-80.03460')], 'partOfState': '', 'wfo': 'RLX'}, -'TXZ048': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARAH', None, '32.76000', '-101.14000'), ('CHINA GROVE', 1247, '32.53000', '-100.82000'), ('DERMOTT', None, '32.86000', '-101.02000'), ('DUNN', None, '32.57000', '-100.89000'), ('FLUVANNA', None, '32.89000', '-101.15000'), ('HERMLEIGH', 393, '32.64000', '-100.76000'), ('HUDD', None, '32.93000', '-100.68000'), ('INADALE', None, '32.54000', '-100.68000'), ('IRA', None, '32.58000', '-101.00000'), ('KNAPP', None, '32.63190', '-101.13000'), ('MIDWAY', 288, '32.73000', '-100.68000'), ('RANDALLS CORNER', None, '32.72970', '-101.03110'), ('SNYDER', 10783, '32.71350', '-100.91510'), ('UNION', None, '32.73000', '-101.00000')], 'partOfState': '', 'wfo': 'MAF'}, -'WVZ033': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ANAWALT', 272, '37.33350', '-81.44150'), ('BRADSHAW', 289, '37.35290', '-81.80090'), ('DAVY', 373, '37.47410', '-81.65000'), ('GARY', 917, '37.36190', '-81.53810'), ('IAEGER', 358, '37.46380', '-81.81340'), ('KEYSTONE', 453, '37.41500', '-81.44630'), ('KIMBALL', 411, '37.42740', '-81.50690'), ('NORTHFORK', 519, '37.41910', '-81.42620'), ('WAR', 788, '37.30280', '-81.68010'), ('WELCH', 2683, '37.43280', '-81.58150')], 'partOfState': '', 'wfo': 'RLX'}, -'NYZ029': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CHILDWOLD', None, '44.28000', '-74.67000'), ('CRANBERRY LAKE', None, '44.22000', '-74.83000'), ('DEGRASSE', None, '44.35000', '-75.08000'), ('FINE', None, '44.25000', '-75.13000'), ('PIERCEFIELD', None, '44.23000', '-74.57000'), ('SOUTH COLTON', None, '44.50000', '-74.88000'), ('STAR LAKE', 860, '44.16020', '-75.03750'), ('WANAKENA', None, '44.13000', '-74.92000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYZ028': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALTONA', 1056, '44.89220', '-73.65930'), ('BEEKMANTOWN', None, '44.77000', '-73.48000'), ('CHAMPLAIN', 1173, '44.98730', '-73.44460'), ('CHAZY', None, '44.88000', '-73.43000'), ('CUMBERLAND HEAD', 1532, '44.71630', '-73.40300'), ('HARKNESS', None, '44.52000', '-73.53000'), ('KEESEVILLE', 1850, '44.50370', '-73.48270'), ('MOOERS', 440, '44.96530', '-73.58590'), ('MORRISONVILLE', 1702, '44.69070', '-73.55120'), ('PERU', 1514, '44.58000', '-73.53450'), ('PLATTSBURGH', 18816, '44.69550', '-73.45680'), ('ROUSES POINT', 2277, '44.99200', '-73.36600'), ('SCIOTA', None, '44.90000', '-73.55000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYZ025': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BESEMER', None, '42.40000', '-76.41670'), ('BROOKTONDALE', None, '42.38330', '-76.40000'), ('CAROLINE', None, '42.38330', '-76.30000'), ('CAYUGA HEIGHTS', 3273, '42.46910', '-76.48690'), ('DANBY', None, '42.35000', '-76.48330'), ('DRYDEN', 1832, '42.49020', '-76.29890'), ('EAST ITHACA', 2192, '42.42700', '-76.46580'), ('ENFIELD', None, '42.43330', '-76.63330'), ('ETNA', None, '42.48330', '-76.38330'), ('FOREST HOME', 941, '42.45310', '-76.47180'), ('FREEVILLE', 505, '42.51190', '-76.34600'), ('GROTON', 2470, '42.58690', '-76.36530'), ('ITHACA', 29287, '42.44390', '-76.50340'), ('ITHACA TOMPKINS ARPT', None, '42.48330', '-76.46670'), ('JACKSONVILLE', None, '42.51670', '-76.61670'), ('LAKE RIDGE', None, '42.61670', '-76.61670'), ('LANSING', 3417, '42.49080', '-76.48640'), ('LANSINGVILLE', None, '42.60000', '-76.55000'), ('MC LEAN', None, '42.56670', '-76.28330'), ('MYERS', None, '42.53330', '-76.53330'), ('NEWFIELD', None, '42.36670', '-76.58330'), ('NEWFIELD HAMLET', 647, '42.35790', '-76.59410'), ('NORTHEAST ITHACA', 2655, '42.47120', '-76.46800'), ('NORTHWEST ITHACA', 1115, '42.47080', '-76.54320'), ('NUBIA', None, '42.58330', '-76.28330'), ('PERUVILLE', None, '42.55000', '-76.36670'), ('SLATERVILLE SPGS', None, '42.40000', '-76.35000'), ('SOUTH DANBY', None, '42.30000', '-76.43330'), ('SOUTH HILL', 6003, '42.41150', '-76.49100'), ('SPEEDVILLE', None, '42.30000', '-76.26670'), ('TAUGHANNOCK FALLS', None, '42.53330', '-76.60000'), ('TRUMANSBURG', 1581, '42.54040', '-76.66050'), ('WEST DANBY', None, '42.31670', '-76.51670'), ('WEST DRYDEN', None, '42.51670', '-76.41670'), ('WEST GROTON', None, '42.60000', '-76.45000'), ('WEST SLATERVILLE', None, '42.40000', '-76.36670'), ('WILLOW CREEK', None, '42.51670', '-76.58330')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ024': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BIG FLATS', 2482, '42.14230', '-76.93040'), ('BIG FLATS AIRPORT', 2184, '42.17100', '-76.88980'), ('BREESPORT', None, '42.16670', '-76.73330'), ('CHAMBERS', None, '42.25000', '-76.95000'), ('ELMIRA', 30940, '42.09320', '-76.81010'), ('ELMIRA ARPT', None, '42.16670', '-76.90000'), ('ELMIRA HEIGHTS', 4170, '42.12640', '-76.82660'), ('ERIN', None, '42.18330', '-76.66670'), ('FISHERVILLE', None, '42.16670', '-76.86670'), ('HORSEHEADS', 6452, '42.16970', '-76.82990'), ('HORSEHEADS NORTH', 2852, '42.19200', '-76.80910'), ('LOWMAN', None, '42.03330', '-76.71670'), ('MILLPORT', 297, '42.26760', '-76.83640'), ('MILTOOR', None, '42.26670', '-76.83330'), ('OWENS MILL', None, '42.06670', '-76.60000'), ('PINE CITY', None, '42.03330', '-76.86670'), ('SAGETOWN', None, '42.03330', '-76.95000'), ('SEELY CREEK', None, '42.01670', '-76.88330'), ('SOUTHPORT', 7396, '42.06380', '-76.81160'), ('SWARTWOOD', None, '42.23330', '-76.61670'), ('TOMPKINS CORNERS', None, '42.20000', '-76.88330'), ('VAN ETTEN', 581, '42.19820', '-76.55470'), ('WEBB MILLS', None, '42.01670', '-76.88330'), ('WELLSBURG', 631, '42.01280', '-76.72960'), ('WEST ELMIRA', 5136, '42.08950', '-76.85070')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ027': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BRUSHTON', 479, '44.83090', '-74.51290'), ('CONSTABLE', None, '44.93000', '-74.28000'), ('DICKINSON', None, '44.75000', '-74.55000'), ('FORT COVINGTON', None, '44.98000', '-74.47000'), ('HOGANSBURG', None, '44.97000', '-74.63000'), ('MALONE', 6075, '44.84820', '-74.29140'), ('TROUT RIVER', None, '44.98000', '-74.28000'), ('WEST BANGOR', None, '44.80000', '-74.42000')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYZ026': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BRASHER FALLS', None, '44.80490', '-74.79370'), ('HELENA', None, '44.92000', '-74.72000'), ('LAWRENCEVILLE', None, '44.77000', '-74.65000'), ('LOUISVILLE', None, '44.90000', '-75.03000'), ('MASSENA', 11209, '44.92850', '-74.89340'), ('NORFOLK', 1334, '44.80010', '-74.98600'), ('NORWOOD', 1685, '44.74840', '-74.99760'), ('RAYMONDVILLE', None, '44.83000', '-74.97000'), ('WADDINGTON', 923, '44.85890', '-75.19650')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'NYZ021': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALFRED', 3954, '42.25410', '-77.78980'), ('ALMOND', 461, '42.31900', '-77.73950'), ('ANDOVER', 1073, '42.15700', '-77.79650'), ('ANGELICA', 903, '42.30430', '-78.02110'), ('BELMONT', 952, '42.22240', '-78.03360'), ('BOLIVAR', 1173, '42.07030', '-78.16670'), ('CANASERAGA', 594, '42.46400', '-77.77690'), ('CUBA', 1633, '42.21860', '-78.27630'), ('FILLMORE', None, '42.46800', '-78.11310'), ('FRIENDSHIP', 1176, '42.20540', '-78.14240'), ('HOUGHTON', 1748, '42.42650', '-78.16140'), ('RICHBURG', 448, '42.08990', '-78.15600'), ('STANNARDS', 868, '42.07880', '-77.91290'), ('WELLSVILLE', 5171, '42.12100', '-77.94750')], 'partOfState': '', 'wfo': 'BUF'}, -'NYZ020': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALLEGANY', 1883, '42.09010', '-78.49150'), ('CATTARAUGUS', 1075, '42.32970', '-78.86790'), ('DELEVAN', 1089, '42.49100', '-78.47940'), ('EAST RANDOLPH', 630, '42.17050', '-78.95080'), ('ELLICOTTVILLE', 472, '42.27480', '-78.67260'), ('FRANKLINVILLE', 1855, '42.33530', '-78.45650'), ('GOWANDA', 2842, '42.46160', '-78.93530'), ('LIME LAKE-MACHIAS', 1422, '42.42840', '-78.48230'), ('LIMESTONE', 411, '42.02400', '-78.63100'), ('LITTLE VALLEY', 1130, '42.24930', '-78.79930'), ('OLEAN', 15347, '42.08210', '-78.43230'), ('PERRYSBURG', 408, '42.45950', '-79.00150'), ('PORTVILLE', 1024, '42.03560', '-78.33910'), ('RANDOLPH', 1316, '42.16230', '-78.97990'), ('SALAMANCA', 6097, '42.16430', '-78.72270'), ('SOUTH DAYTON', 662, '42.36270', '-79.05200'), ('ST. BONAVENTURE', 2127, '42.08020', '-78.47520'), ('WESTON MILLS', 1608, '42.07590', '-78.37290'), ('YORKSHIRE', 1403, '42.52190', '-78.47840')], 'partOfState': '', 'wfo': 'BUF'}, -'NYZ023': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALPINE', None, '42.31670', '-76.71670'), ('ALTAY', None, '42.43330', '-77.01670'), ('BEAVER DAMS', None, '42.28330', '-76.96670'), ('BENNETTSBURG', None, '42.43330', '-76.80000'), ('BURDETT', 357, '42.41710', '-76.84730'), ('CATHARINE', None, '42.31670', '-76.78330'), ('CAYUTA', None, '42.28330', '-76.70000'), ('EAST STEAMBURG', None, '42.53330', '-76.76670'), ('HECTOR', None, '42.50000', '-76.86670'), ('LOGAN', None, '42.48330', '-76.83330'), ('MECKLENBURG', None, '42.46670', '-76.70000'), ('MONTEREY', None, '42.30000', '-77.05000'), ('MONTOUR FALLS', 1797, '42.35020', '-76.84940'), ('MORELAND', None, '42.30000', '-76.90000'), ('ODESSA', 617, '42.31110', '-76.81750'), ('PERRY CITY', None, '42.50000', '-76.70000'), ('READING CENTER', None, '42.43330', '-76.93330'), ('REYNOLDSVILLE', None, '42.46670', '-76.76670'), ('SEARSBURG', None, '42.53330', '-76.73330'), ('SMITH VALLEY', None, '42.41670', '-76.75000'), ('TOWNSEND', None, '42.35000', '-76.95000'), ('TYRONE', None, '42.41670', '-77.06670'), ('WATKINS GLEN', 2149, '42.38030', '-76.86780'), ('WAYNE', None, '42.46670', '-77.10000'), ('WEDGEWOOD', None, '42.35000', '-76.88330'), ('WESTON', None, '42.41670', '-77.06670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ022': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ADDISON', 1797, '42.10580', '-77.23360'), ('ARKPORT', 832, '42.39190', '-77.69650'), ('ATLANTA', None, '42.55000', '-77.48330'), ('AVOCA', 1008, '42.40830', '-77.42320'), ('BATH', 5641, '42.33700', '-77.31840'), ('BRADFORD', None, '42.36670', '-77.10000'), ('BUENA VISTA', None, '42.30000', '-77.51670'), ('CAMERON', None, '42.20000', '-77.40000'), ('CAMERON MILLS', None, '42.18330', '-77.36670'), ('CAMPBELL', None, '42.23330', '-77.20000'), ('CANISTEO', 2336, '42.27030', '-77.60510'), ('CATON', None, '42.05000', '-77.03330'), ('COHOCTON', 854, '42.50000', '-77.49930'), ('COOPERS PLAINS', None, '42.18330', '-77.15000'), ('CORNING', 10842, '42.14720', '-77.05670'), ('EAST CORNING', None, '42.13330', '-76.98330'), ('ERWINS', None, '42.11670', '-77.15000'), ('FREMONT', None, '42.40000', '-77.63330'), ('GANG MILLS', 3304, '42.15360', '-77.13460'), ('GIBSON', None, '42.15000', '-77.03330'), ('GREENWOOD', None, '42.13330', '-77.65000'), ('HAMMONDSPORT', 731, '42.40880', '-77.22310'), ('HARTSVILLE', None, '42.25000', '-77.70000'), ('HASKINVILLE', None, '42.41670', '-77.56670'), ('HORNBY', None, '42.25000', '-77.05000'), ('HORNELL', 9019, '42.32440', '-77.66050'), ('HOWARD', None, '42.36670', '-77.51670'), ('JASPER', None, '42.11670', '-77.50000'), ('KANONA', None, '42.38330', '-77.36670'), ('KEUKA', None, '42.48330', '-77.13330'), ('LINDLEY', None, '42.03330', '-77.13330'), ('MEADS CREEK', None, '42.26670', '-77.10000'), ('NORTH CAMERON', None, '42.25000', '-77.36670'), ('NORTH HORNELL', 851, '42.34570', '-77.66250'), ('PAINTED POST', 1842, '42.16290', '-77.09190'), ('PERKINSVILLE', None, '42.53330', '-77.63330'), ('PRATTSBURG', None, '42.51670', '-77.28330'), ('PULTENEY', None, '42.51670', '-77.16670'), ('RHEIMS', None, '42.40000', '-77.25000'), ('RISINGVILLE', None, '42.21670', '-77.31670'), ('SAVONA', 822, '42.28410', '-77.22320'), ('SONORA', None, '42.33330', '-77.16670'), ('SOUTH CORNING', 1147, '42.12400', '-77.03690'), ('SOUTH DANSVILLE', None, '42.46670', '-77.65000'), ('THURSTON', None, '42.21670', '-77.26670'), ('TROUPSBURG', None, '42.05000', '-77.55000'), ('URBANA', None, '42.45000', '-77.18330'), ('WAYLAND', 1893, '42.56810', '-77.59210'), ('WEST CAMERON', None, '42.23330', '-77.43330'), ('WEST GREENWOOD', None, '42.15000', '-77.71670'), ('WHEELER', None, '42.43330', '-77.33330'), ('WILLEYVILLE', None, '42.03330', '-77.70000'), ('WOODHULL', None, '42.08330', '-77.41670'), ('YOUNG HICKORY', None, '42.05000', '-77.61670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'WIZ074': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ABRAMS', None, '44.78000', '-88.06000'), ('BROOKSIDE', None, '44.79000', '-88.00000'), ('GILLETT', 1256, '44.90000', '-88.31000'), ('HAYES', None, '45.00000', '-88.43000'), ('HICKORY CORNERS', None, '45.00000', '-88.26000'), ('LENA', 510, '44.95000', '-88.05000'), ('LITTLE SUAMICO', None, '44.71000', '-87.99000'), ('OCONTO', 4708, '44.88000', '-87.88000'), ('OCONTO FALLS', 2843, '44.88000', '-88.20000'), ('PENSAUKEE', None, '44.81000', '-87.91000'), ('SAMPSON', None, '44.76000', '-88.18000'), ('SOBIESKI', None, '44.71000', '-88.06000'), ('SPRUCE', None, '44.95000', '-88.16000'), ('STILES', None, '44.86000', '-88.05000'), ('SURING', 605, '45.00000', '-88.38000'), ('UNDERHILL', None, '44.88000', '-88.38000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIZ071': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BOHNERS LAKE', 1952, '42.62300', '-88.28030'), ('BROWNS LAKE', 1933, '42.69240', '-88.23110'), ('BURLINGTON', 9936, '42.67790', '-88.27820'), ('EAGLE LAKE', 1320, '42.70710', '-88.12810'), ('ELMWOOD PARK', 474, '42.69290', '-87.82220'), ('NORTH BAY', 260, '42.76490', '-87.78080'), ('RACINE', 81855, '42.72820', '-87.80710'), ('ROCHESTER', 1149, '42.74060', '-88.22400'), ('STURTEVANT', 5287, '42.70030', '-87.89910'), ('UNION GROVE', 4322, '42.68420', '-88.05100'), ('WATERFORD', 4048, '42.76280', '-88.21550'), ('WATERFORD NORTH', 4761, '42.79320', '-88.22200'), ('WIND LAKE', 5202, '42.82240', '-88.15680'), ('WIND POINT', 1853, '42.78170', '-87.77290')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIZ070': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('COMO', 1870, '42.60940', '-88.49520'), ('DARIEN', 1572, '42.60090', '-88.71010'), ('DELAVAN', 7956, '42.62670', '-88.63260'), ('DELAVAN LAKE', 2352, '42.60260', '-88.61900'), ('EAST TROY', 3564, '42.78910', '-88.39940'), ('ELKHORN', 7305, '42.67100', '-88.54030'), ('FONTANA-ON-GENEVA LAKE', 1754, '42.54530', '-88.56640'), ('GENOA CITY', 1949, '42.50150', '-88.32340'), ('LAKE GENEVA', 7148, '42.58860', '-88.42960'), ('PELL LAKE', 2988, '42.54090', '-88.35800'), ('POTTER LAKE', 1099, '42.82160', '-88.34880'), ('POWERS LAKE', 1500, '42.54260', '-88.30140'), ('SHARON', 1549, '42.50160', '-88.73010'), ('WALWORTH', 2304, '42.53050', '-88.59740'), ('WHITEWATER', 13437, '42.83490', '-88.73600'), ('WILLIAMS BAY', 2415, '42.57640', '-88.54280')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'WIZ073': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BEAVER', None, '45.13000', '-88.01000'), ('COLEMAN', 716, '45.06000', '-88.03000'), ('CRIVITZ', 998, '45.23000', '-88.01000'), ('HARMONY', None, '45.09000', '-87.81000'), ('HIGH FALLS RESERVOIR', None, '45.29000', '-88.20000'), ('LOOMIS', None, '45.20000', '-87.90000'), ('MARINETTE', 11749, '45.09000', '-87.61000'), ('MCALLISTER', None, '45.33000', '-87.71000'), ('MIDDLE INLET', None, '45.29000', '-88.00000'), ('PESHTIGO', 3357, '45.04000', '-87.75000'), ('PORTERFIELD', None, '45.15000', '-87.80000'), ('POUND', 355, '45.09000', '-88.03000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIZ072': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('LAKE CATHERINE', 1490, '42.49030', '-88.12560'), ('CAMP LAKE', 3255, '42.53070', '-88.14590'), ('KENOSHA', 90352, '42.58410', '-87.85450'), ('PADDOCK LAKE', 3012, '42.57150', '-88.10240'), ('PLEASANT PRAIRIE', 16136, '42.52410', '-87.88180'), ('SILVER LAKE', 2341, '42.55170', '-88.16760'), ('TWIN LAKES', 5124, '42.51880', '-88.25880')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'GAZ004': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COHUTTA', 582, '34.95490', '-84.95450'), ('DALTON', 27912, '34.76900', '-84.97590'), ('TUNNEL HILL', 1209, '34.84580', '-85.04300'), ('VARNELL', 1491, '34.90200', '-84.97030')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ005': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CHATSWORTH', 3531, '34.77840', '-84.77660'), ('ETON', 319, '34.82300', '-84.76290')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'NCZ069': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BOGER CITY', 554, '35.47940', '-81.20220'), ('CROUSE', None, '35.42080', '-81.30560'), ('DENVER', None, '35.53110', '-81.03000'), ('IRON STATION', None, '35.44140', '-81.15640'), ('LINCOLNTON', 9965, '35.47580', '-81.24550'), ('LOWESVILLE', 1440, '35.42120', '-81.00260'), ('VALE', None, '35.53970', '-81.39750')], 'partOfState': '', 'wfo': 'GSP'}, -'GAZ007': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EAST ELLIJAY', 707, '34.68210', '-84.47420'), ('ELLIJAY', 1584, '34.69230', '-84.48370')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ001': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('TRENTON', 1942, '34.87490', '-85.50950')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ003': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('FORT OGLETHORPE', 6940, '34.92280', '-85.25340'), ('INDIAN SPRINGS', 1982, '34.96080', '-85.16000'), ('LAKEVIEW', 4820, '34.97700', '-85.25370'), ('RINGGOLD', 2422, '34.91780', '-85.10970')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'NCZ063': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CASHIERS', 196, '35.10560', '-83.09670'), ('WOLF MOUNTAIN', None, '35.21580', '-82.98670')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ062': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('FRANKLIN', 3490, '35.18100', '-83.38180'), ('HIGHLANDS', 909, '35.05400', '-83.19810'), ('KYLE', None, '35.22270', '-83.60930'), ('NANTAHALA LAKE', None, '35.18970', '-83.65130'), ('OTTO', None, '35.06000', '-83.38780'), ('RAINBOW SPRINGS', None, '35.08650', '-83.55930'), ('SCALY', None, '35.01170', '-83.31640')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ061': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BRASSTOWN', None, '35.01580', '-83.91030'), ('HAYESVILLE', 297, '35.04630', '-83.81930'), ('SHOOTING CREEK', None, '35.03060', '-83.64970'), ('TUSQUITEE', None, '35.08330', '-83.76670')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'NCZ060': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANDREWS', 1602, '35.19850', '-83.82290'), ('CULBERSON', None, '34.99060', '-84.16890'), ('HIAWASSE DAM', None, '35.14750', '-84.17110'), ('HOT HOUSE', None, '35.01940', '-84.23330'), ('MARBLE', None, '35.17390', '-83.92580'), ('MURPHY', 1568, '35.09330', '-84.02740'), ('TOPTON', None, '35.24560', '-83.70420'), ('UNAKA', None, '35.19390', '-84.14250'), ('VIOLET', None, '35.18830', '-84.21890')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'GAZ008': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLAIRSVILLE', 659, '34.87360', '-83.95160')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ009': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HIAWASSEE', 808, '34.94890', '-83.75430'), ('YOUNG HARRIS', 604, '34.93310', '-83.84810')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'NCZ065': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAT CAVE', None, '35.45080', '-82.28230'), ('DANA', None, '35.32920', '-82.37560'), ('EAST FLAT ROCK', 4151, '35.28450', '-82.41920'), ('ETOWAH', 2766, '35.31530', '-82.59510'), ('FLAT ROCK', 1690, '35.27110', '-82.44170'), ('FLETCHER', 4185, '35.43430', '-82.50290'), ('HENDERSONVILLE', 10420, '35.32150', '-82.46220'), ('MILLS RIVER', None, '35.38830', '-82.56690'), ('MOUNTAIN HOME', 2169, '35.36990', '-82.50440'), ('TUXEDO', None, '35.22530', '-82.42970')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ064': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BALSAM GROVE', None, '35.22940', '-82.87390'), ('BREVARD', 6789, '35.23770', '-82.73020'), ('CEDAR MOUNTAIN', None, '35.14330', '-82.64310'), ('LAKE TOXAWAY', None, '35.13220', '-82.93420'), ('LITTLE RIVER', None, '35.23860', '-82.62920'), ('ROSMAN', 490, '35.14380', '-82.82200'), ('SAPPHIRE', None, '35.10690', '-83.00310')], 'partOfState': '', 'wfo': 'GSP'}, -'TXZ252': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EL SAUZ', None, '26.56700', '-98.86700'), ('FALCON DAM', None, '26.55000', '-99.13330'), ('GARCIASVILLE', None, '26.33230', '-98.71710'), ('LA GLORIA', None, '26.71670', '-98.54000'), ('RIO GRANDE CITY', 11923, '26.37850', '-98.82630'), ('ROMA', 9617, '26.41340', '-99.00240')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'KSZ042': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('LEOTI', 1598, '38.48300', '-101.35720'), ('LYDIA', None, '38.28000', '-101.29000'), ('MARIENTHAL', None, '38.49000', '-101.21000'), ('SELKIRK', None, '38.47000', '-101.54000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'ARZ002': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('OAK HILL', None, '36.47720', '-93.69830'), ('PLEASANT RIDGE', None, '36.48170', '-93.64390'), ('DENVER', None, '36.39250', '-93.31470'), ('BERRYVILLE', 4433, '36.36470', '-93.56780'), ('EUREKA SPRINGS', 2278, '36.40110', '-93.73780'), ('OSAGE', None, '36.18250', '-93.40440'), ('GREEN FOREST', 2717, '36.33530', '-93.43580'), ('OAK GROVE', 376, '36.46120', '-93.44690'), ('DRYFORK', None, '36.15330', '-93.48890'), ('DELMAR', None, '36.16060', '-93.34080'), ('METALTON', None, '36.22310', '-93.52970'), ('RUDD', None, '36.21360', '-93.48580'), ('CONNOR', None, '36.25000', '-93.43330'), ('CARROLLTON', None, '36.26250', '-93.32170'), ('CABANAL', None, '36.27830', '-93.53190'), ('RULE', None, '36.27780', '-93.45970'), ('COIN', None, '36.33030', '-93.34780'), ('URBANETTE', None, '36.41970', '-93.53330'), ('GRANDVIEW', None, '36.43390', '-93.62110'), ('BUSCH', None, '36.46420', '-93.83060'), ('BEAVER', 95, '36.47360', '-93.76720')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'IAZ019': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALTA VISTA', 286, '43.19570', '-92.41710'), ('BASSETT', 74, '43.06240', '-92.51570'), ('BOYD', None, '43.01493', '-92.26584'), ('DEVON', None, '43.13373', '-92.38281'), ('FREDERICKSBURG', 984, '42.96460', '-92.19830'), ('IONIA', 277, '43.03620', '-92.45760'), ('LAWLER', 461, '43.07170', '-92.15380'), ('LITTLE TURKEY', None, '43.13190', '-92.10136'), ('NASHUA', 1618, '42.95060', '-92.53910'), ('NEW HAMPTON', 3692, '43.05970', '-92.31450'), ('NORTH WASHINGTON', 118, '43.11630', '-92.41500'), ('REPUBLIC', None, '42.94731', '-92.40108'), ('SAUDE', None, '43.19769', '-92.18360'), ('WILLIAMSTOWN', None, '42.96559', '-92.33346')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'MEZ011': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BURLINGTON', None, '45.20920', '-68.42720'), ('CARROLL', None, '45.41440', '-68.03860'), ('CHESTER', None, '45.40860', '-68.50030'), ('ENFIELD', None, '45.24890', '-68.56890'), ('HOWLAND', 1210, '45.23860', '-68.66420'), ('KINGMAN', None, '45.54940', '-68.20000'), ('LAGRANGE', None, '45.16670', '-68.84500'), ('LEE', None, '45.36000', '-68.28690'), ('LINCOLN', 2933, '45.36220', '-68.50560'), ('MATTAWAMKEAG', None, '45.51360', '-68.35500'), ('PASSADUMKEAG', None, '45.18530', '-68.61720'), ('SEBOEIS', None, '45.36310', '-68.71170'), ('SPRINGFIELD', None, '45.39610', '-68.13610'), ('WINN', None, '45.48560', '-68.37280')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAR'}, -'AZZ024': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CLAYPOOL', 1794, '33.43300', '-110.83300'), ('GLOBE', 7486, '33.38280', '-110.75430'), ('HAYDEN', 892, '32.99990', '-110.78100'), ('MIAMI', 1936, '33.39430', '-110.87210'), ('PERIDOT', 1266, '33.30270', '-110.45430'), ('PUNKIN CENTER', None, '33.85000', '-111.33000'), ('ROOSEVELT', None, '33.67000', '-111.13000'), ('SAN CARLOS', 3716, '33.34860', '-110.46510'), ('SUNFLOWER', None, '33.87000', '-111.47000'), ('SUPERIOR', 3254, '33.28590', '-111.10950'), ('WINKELMAN', 443, '32.98900', '-110.76960')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PSR'}, -'GAZ153': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EVERETT', None, '31.38730', '-81.63990'), ('THALMANN', None, '31.29060', '-81.68900')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'IAZ011': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHURCHTOWN', None, '43.34832', '-91.34956'), ('DALBY', None, '43.26218', '-91.28540'), ('DORCHESTER', None, '43.46746', '-91.51635'), ('ELON', None, '43.26584', '-91.33306'), ('HANOVER', None, '43.36298', '-91.53468'), ('HARPERS FERRY', 330, '43.20100', '-91.15120'), ('LANSING', 1012, '43.36170', '-91.22580'), ('LUDLOW', None, '43.23102', '-91.58600'), ('MAUD', None, '43.23102', '-91.38438'), ('NEW ALBIN', 527, '43.49700', '-91.28850'), ('POSTVILLE', 2273, '43.08410', '-91.56930'), ('QUANDAHL', None, '43.44913', '-91.60616'), ('ROSSVILLE', None, '43.18153', '-91.38438'), ('VILLAGE CREEK', None, '43.31533', '-91.25241'), ('VOLNEY', None, '43.13387', '-91.38255'), ('WATERVILLE', 145, '43.20810', '-91.29480'), ('WAUKON', 4131, '43.26980', '-91.47630'), ('WAUKON JCT', None, '43.14670', '-91.18276')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'IAZ010': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLUFFTON', None, '43.39781', '-91.93425'), ('BURR OAK', None, '43.44730', '-91.88292'), ('CALMAR', 1058, '43.17940', '-91.86690'), ('CASTALIA', 175, '43.11190', '-91.67640'), ('CONOVER', None, '43.21452', '-91.91775'), ('DECORAH', 8172, '43.30530', '-91.79330'), ('FESTINA', None, '43.11921', '-91.86826'), ('FORT ATKINSON', 389, '43.14410', '-91.93470'), ('FRANKVILLE', None, '43.18153', '-91.63549'), ('HESPER', None, '43.48029', '-91.78578'), ('HIGHLANDVILLE', None, '43.44913', '-91.68497'), ('JACKSON JUNCTION', 60, '43.10330', '-92.04800'), ('KENDALLVILLE', None, '43.43080', '-92.03322'), ('LOCUST', None, '43.41614', '-91.73263'), ('NORDNESS', None, '43.23102', '-91.78395'), ('OSSIAN', 853, '43.14680', '-91.76450'), ('RIDGEWAY', 293, '43.29720', '-91.99110'), ('SATTRE', None, '43.39964', '-91.65015'), ('SPILLVILLE', 386, '43.20400', '-91.95190')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'IAZ013': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARCHER', 126, '43.11450', '-95.74410'), ('CALUMET', 181, '42.94490', '-95.55040'), ('HARTLEY', 1733, '43.17930', '-95.47750'), ('PAULLINA', 1124, '42.97980', '-95.68680'), ('PRIMGHAR', 891, '43.08780', '-95.62620'), ('SANBORN', 1353, '43.18110', '-95.65630'), ('SHELDON', 4914, '43.17930', '-95.84490'), ('SUTHERLAND', 707, '42.97240', '-95.49530')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ015': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AYRSHIRE', 202, '43.04030', '-94.83340'), ('CURLEW', 62, '42.97950', '-94.73720'), ('CYLINDER', 110, '43.09040', '-94.55130'), ('EMMETSBURG', 3958, '43.11350', '-94.68050'), ('GRAETTINGER', 900, '43.23640', '-94.75100'), ('MALLARD', 298, '42.93970', '-94.68410'), ('RODMAN', 56, '43.02600', '-94.52630'), ('RUTHVEN', 711, '43.12960', '-94.89930'), ('WEST BEND', 834, '42.96010', '-94.45900')], 'partOfState': 'NORTHWEST', 'wfo': 'DMX'}, -'IAZ014': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DICKENS', 202, '43.13340', '-95.02210'), ('EVERLY', 647, '43.16050', '-95.32160'), ('FOSTORIA', 230, '43.24160', '-95.15480'), ('GILLETT GROVE', 55, '43.01540', '-95.03520'), ('GREENVILLE', 93, '43.01720', '-95.14520'), ('MONETA', None, '43.13250', '-95.39240'), ('PETERSON', 372, '42.91850', '-95.34120'), ('ROSSIE', 58, '43.01320', '-95.18880'), ('ROYAL', 479, '43.06400', '-95.28320'), ('SPENCER', 11317, '43.14590', '-95.15110'), ('WEBB', 165, '42.94920', '-95.01200')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ017': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CLEAR LAKE', 8161, '43.13510', '-93.37360'), ('DOUGHERTY', 80, '42.92260', '-93.03630'), ('MASON CITY', 29172, '43.15130', '-93.19850'), ('MESERVEY', 252, '42.91510', '-93.47320'), ('PLYMOUTH', 429, '43.24690', '-93.12240'), ('ROCK FALLS', 170, '43.20720', '-93.08700'), ('ROCKWELL', 989, '42.97990', '-93.18690'), ('SWALEDALE', 174, '42.97690', '-93.31530'), ('THORNTON', 422, '42.94400', '-93.38760'), ('VENTURA', 670, '43.12640', '-93.45980')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAZ016': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BRITT', 2052, '43.09730', '-93.80330'), ('CORWITH', 350, '42.98930', '-93.95860'), ('CRYSTAL LAKE', 285, '43.22360', '-93.79270'), ('GARNER', 2922, '43.09820', '-93.60250'), ('GOODELL', 174, '42.92360', '-93.61390'), ('KANAWHA', 739, '42.93400', '-93.79410'), ('KLEMME', 593, '43.00910', '-93.60110'), ('WODEN', 243, '43.23050', '-93.91040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'GAZ098': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('SOPERTON', 2824, '32.37660', '-82.59220')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAZ156': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMSTERDAM', None, '30.72700', '-84.43480'), ('ATTAPULGUS', 492, '30.74930', '-84.48460'), ('AUSMAC', None, '30.99530', '-84.62470'), ('BAINBRIDGE', 11722, '30.90600', '-84.57770'), ('BETHANY', None, '30.85550', '-84.72420'), ('BIG SLOUGH BOAT LANDING', None, '30.93000', '-84.55470'), ('BRINSON', 225, '30.97880', '-84.73730'), ('CLIMAX', 297, '30.87560', '-84.43130'), ('CYRENE', None, '30.96070', '-84.69240'), ('DECATUR CO A/P', None, '30.97090', '-84.63730'), ('ELDORENDO', None, '31.04320', '-84.65200'), ('FACEVILLE', None, '30.75340', '-84.63970'), ('FACEVILLE LANDING', None, '30.76990', '-84.65180'), ('FOWLSTOWN', None, '30.80280', '-84.54790'), ('HALES LANDING', None, '30.84600', '-84.66020'), ('HANNATOWN', None, '30.71060', '-84.67010'), ('HANOVER', None, '30.94200', '-84.64910'), ('HUTCHINSON LANDING', None, '30.76500', '-84.73700'), ('JINKS', None, '30.71480', '-84.82390'), ('LAINGKAT', None, '30.71770', '-84.48870'), ('LYNN', None, '30.97750', '-84.61520'), ('MOUNT PLEASANT', None, '31.02240', '-84.46020'), ('RECOVERY', None, '30.75510', '-84.73760'), ('STEINHAM STORE', None, '31.02270', '-84.54580'), ('SURF', None, '30.98220', '-84.42070'), ('VADA', None, '31.07730', '-84.41340'), ('WEST BAINBRIDGE', None, '30.92020', '-84.58860')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAZ157': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AKRIDGE', None, '30.98160', '-84.16090'), ('BEACHTON', None, '30.72680', '-84.13970'), ('BOYDVILLE', None, '30.87990', '-84.35530'), ('CAIRO', 9239, '30.87930', '-84.20600'), ('CALVARY', None, '30.72490', '-84.34660'), ('CAPEL', None, '30.97310', '-84.19880'), ('ELPINO', None, '30.99540', '-84.23130'), ('GRADY CO A/P', None, '30.88740', '-84.15470'), ('HARRELLS STILL', None, '31.01560', '-84.35550'), ('MONCRIEF', None, '30.71160', '-84.13800'), ('NICKLEVILLE', None, '30.80410', '-84.33550'), ('PEOPLES STILL', None, '30.98950', '-84.31230'), ('PINE PARK', None, '30.85150', '-84.10420'), ('PRINCES STILL', None, '30.79730', '-84.25460'), ('RENO', None, '30.77310', '-84.29330'), ('ROCKY HILL', None, '30.70100', '-84.21050'), ('RODDENBERRY', None, '30.87550', '-84.25980'), ('SPENCE', None, '31.03120', '-84.16420'), ('WHIGHAM', 631, '30.88360', '-84.32460')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'SCZ046': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ANDREWS', 3068, '33.45110', '-79.56110'), ('ANNANDALE PLANTATION', None, '33.21690', '-79.29750'), ('BETHERA', None, '33.20140', '-79.23830'), ('BROOKGREEN GARDENS', None, '33.52030', '-79.08390'), ('CARVERS BAY', None, '33.61780', '-79.33080'), ('GEORGETOWN', 8950, '33.37670', '-79.29470'), ('GRAVES', None, '33.39330', '-79.36920'), ('LAMBERT', None, '33.32580', '-79.57250'), ('MURRELLS INLET', 5519, '33.55080', '-79.04330'), ('NORTH SANTEE', None, '33.24670', '-79.37690'), ('OATLAND', None, '33.49500', '-79.34750'), ("PAWLEY'S ISLAND", None, '33.43310', '-79.12170'), ('PLANTERSVILLE', None, '33.55530', '-79.21560'), ('PLEASANT HILL', None, '33.68110', '-79.36830'), ('SAMPIT', None, '33.36390', '-79.45890'), ('WEDGEFIELD PLANTATION', None, '33.42440', '-79.24580'), ('YAUHANNAH', None, '33.63190', '-79.18860')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCZ047': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BASHAN', None, '32.55140', '-80.94640'), ('BOYD', None, '32.44530', '-80.89640'), ('COOSAWHATCHIE', None, '32.58860', '-80.92750'), ('DEERFIELD', None, '32.38220', '-81.09670'), ('GILLISONVILLE', None, '32.61080', '-81.00390'), ('GILMANIA', None, '32.61170', '-80.91080'), ('GRAHAMVILLE', None, '32.47390', '-80.96360'), ('GRAYS', None, '32.67360', '-81.02060'), ('HARDEEVILLE', 1793, '32.28690', '-81.08080'), ('KNOWLES', None, '32.50940', '-80.85830'), ('LIMEHOUSE', None, '32.21250', '-81.07080'), ('MITCHELLVILLE', None, '32.46170', '-80.99220'), ('MORGAN', None, '32.30360', '-81.08250'), ('MURAD', None, '32.49580', '-80.87030'), ('NEVADUM', None, '32.45860', '-80.88940'), ('OKATIE', None, '32.35190', '-80.97830'), ('OLD HOUSE', None, '32.45940', '-80.89670'), ('PINELAND', None, '32.60000', '-81.15970'), ('POCOTALIGO', None, '32.63690', '-80.86360'), ('POSSUM CORNER', None, '32.68420', '-80.97610'), ('PURYSBURGH', None, '32.29720', '-81.11940'), ('RICETOWN', None, '32.51690', '-80.96690'), ('RIDGELAND', 2518, '32.48060', '-80.98060'), ('ROBERTVILLE', None, '32.58640', '-81.19860'), ('SWITZERLAND', None, '32.42750', '-81.00890'), ('TARBORO', None, '32.53170', '-81.15440'), ('TILLMAN', None, '32.46330', '-81.10750')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ044': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BROWNSVILLE', None, '33.02860', '-80.19830'), ('BYRD', None, '33.16890', '-80.51720'), ('CANAAN', None, '32.96560', '-80.29440'), ('CAT HOLE', None, '33.14440', '-80.69420'), ('CLUBHOUSE CROSSROADS', None, '32.89780', '-80.32280'), ('COOKE CROSSROADS', None, '32.94810', '-80.20580'), ('DELEMAR CROSSROADS', None, '32.84610', '-80.28440'), ('DORCHESTER', None, '33.13970', '-80.39440'), ('DORCHESTER ESTATES', None, '32.96780', '-80.19690'), ('DUNCAN CHAPEL', None, '33.29580', '-80.56060'), ('GETTYSVILLE', None, '32.90170', '-80.36420'), ('GIANT', None, '33.23690', '-80.44500'), ('GIVHANS', None, '33.01140', '-80.33780'), ('GREGGS LANDING', None, '32.92830', '-80.15420'), ('GROVER', None, '33.10500', '-80.59500'), ('HARLEYVILLE', 594, '33.21440', '-80.44810'), ('HUDSONTOWN', None, '33.20580', '-80.59110'), ('JEDBURG', None, '33.05560', '-80.23860'), ('KNIGHTSVILLE', None, '33.01140', '-80.23810'), ('LOTTS CROSSROADS', None, '33.04080', '-80.24940'), ('MOUNT ZION', None, '33.22560', '-80.58750'), ('OAKBROOK', None, '32.95830', '-80.17220'), ('OLD SAINT GEORGE', None, '33.17110', '-80.61250'), ('ORCHARD HILL', None, '33.02530', '-80.22280'), ('PREGNALL', None, '33.15610', '-80.46470'), ('PRINGLETOWN', None, '33.14360', '-80.30610'), ('REEVESVILLE', 207, '33.20560', '-80.64810'), ('RIDGEVILLE', 1690, '33.09560', '-80.31560'), ('ROSINVILLE', None, '33.25440', '-80.52780'), ('SAINT GEORGE', None, '33.18580', '-80.57580'), ('SLANDSVILLE', None, '32.98030', '-80.24170'), ('STALLSVILLE', None, '32.99640', '-80.18220'), ('SUMMERVILLE', 27752, '33.01830', '-80.17580'), ('TEXAS', None, '33.13190', '-80.55390'), ('WESTOE', None, '32.94580', '-80.23360')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ045': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALVIN', None, '33.34890', '-79.81640'), ('ARARAT', None, '32.97830', '-80.00360'), ('BETHERA', None, '33.20140', '-79.78830'), ('BEUFORDTOWN', None, '33.28390', '-79.74360'), ('BLACK CREEK', None, '33.28470', '-80.25780'), ('BONNEAU', 354, '33.30530', '-79.95810'), ('BONNEAU BEACH', None, '33.31970', '-80.00060'), ('CAINHOY', None, '32.92920', '-79.83140'), ('CALESTOWN', None, '33.29030', '-79.78690'), ('CARNES CROSSROAD', None, '33.06330', '-80.09330'), ('CHARITY', None, '33.00580', '-79.85000'), ('CHICORA', None, '33.26690', '-80.10970'), ('COLLEGE PARK', None, '33.01720', '-80.09830'), ('COMINGTEE', None, '33.07940', '-79.91720'), ('CORDESVILLE', None, '33.13190', '-79.88360'), ('COTE BAS LANDING', None, '33.01470', '-79.92420'), ('CROSS', None, '33.32720', '-80.14860'), ('CROSS CROSS ROADS', None, '33.34440', '-80.14280'), ('DANIEL ISLAND', None, '32.87500', '-79.90000'), ('DRIGGERSTOWN', None, '33.03030', '-80.09140'), ('EADYTOWN', None, '33.41220', '-80.14720'), ('EBENEZER', None, '33.25580', '-80.32500'), ('ELLWOOD', None, '33.11080', '-79.93640'), ('FAREWELL CORNER', None, '33.22280', '-79.74750'), ('GOOSE CREEK', 29208, '32.98080', '-80.03280'), ('GROOMVILLE', None, '33.08560', '-80.05690'), ('GROVE HALL', None, '33.04530', '-80.07780'), ('HAGAN', None, '33.05720', '-79.90920'), ('HALFWAY CREEK', None, '33.11360', '-79.64750'), ('HUGER', None, '33.09640', '-79.80360'), ('HUSSERTOWN', None, '33.25560', '-80.25830'), ('JAMESTOWN', 97, '33.28580', '-79.69280'), ('JUDGE TOWN', None, '33.43190', '-80.01940'), ('LIMERICK', None, '33.13580', '-79.81530'), ('MACBETH', None, '33.26750', '-79.97500'), ('MEPKIN', None, '33.11470', '-79.95250'), ('MONCKS CORNER', 5952, '33.19580', '-80.01330'), ('MOOREFIELD', None, '33.28860', '-80.16890'), ('MORELAND', None, '33.00920', '-79.89530'), ('MOUNT HOLLY', None, '33.03420', '-80.03470'), ('MURRAYSVILLE', None, '33.18110', '-80.10170'), ('NEW HOPE', None, '33.10640', '-80.18830'), ('NEW HOPE', None, '33.08940', '-79.81670'), ('NEWLAND', None, '33.20420', '-79.61640'), ('OAKATEE', None, '33.04170', '-80.07920'), ('OAKLEY', None, '33.12390', '-80.01920'), ('OLD CORDESVILLE', None, '33.17750', '-79.91690'), ('PALMERVILLE', None, '33.25390', '-79.64780'), ('PIMLICO', None, '33.09720', '-79.96060'), ('PINEVILLE', None, '33.42810', '-80.02940'), ('PINOPOLIS', None, '33.22640', '-80.03780'), ('POPPENHEIM CROSSING', None, '32.96830', '-80.00190'), ('PRIOLEAU', None, '33.36420', '-80.19580'), ('RED BANK LANDING', None, '32.95170', '-79.93190'), ('RICHMOND', None, '33.07530', '-79.87890'), ('RUSSELLVILLE', None, '33.39690', '-79.97190'), ('SAINT JOHNS', None, '33.12060', '-80.06920'), ('SAINT STEPHEN', None, '33.40420', '-79.92190'), ('SANDRIDGE', None, '33.25500', '-80.31610'), ('SANGAREE', None, '33.03530', '-80.12810'), ('SHULERVILLE', None, '33.18720', '-79.63220'), ('SIMMONSVILLE', None, '33.24830', '-79.64060'), ('SIMPSON CROSSING', None, '33.24940', '-79.97530'), ('SMITH', None, '33.05780', '-79.77000'), ('SPRING HILL', None, '33.23110', '-80.32470'), ('STONY LANDING', None, '33.19310', '-79.96940'), ('STRAWBERRY', None, '33.09140', '-80.03080'), ('SUGAR HILL', None, '33.20780', '-80.04580'), ('TARRY TOWN', None, '33.08110', '-79.99310'), ('THOMAS CORNER', None, '33.16060', '-79.71500'), ('WADBOO', None, '33.19080', '-79.93780'), ('WAMPEE', None, '33.24310', '-80.03170'), ('WANDO', None, '32.93330', '-79.83190'), ('WAPPOOLA', None, '33.09780', '-79.99030'), ('WHITESVILLE', None, '33.14720', '-80.06170'), ('WILDER', None, '33.34690', '-79.94330'), ('WILSONS LANDING', None, '33.44830', '-80.16190'), ('WOODLAND', None, '33.03780', '-79.90670'), ('WOODLAND LANDING', None, '33.04560', '-79.91580')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ042': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALMEDA', None, '32.82970', '-81.04940'), ('BARKERVILLE', None, '32.70560', '-80.93690'), ('BLOUNTVILLE', None, '32.69640', '-80.85170'), ('BRIGHTON', None, '32.61250', '-81.27390'), ('BRUNSON', 589, '32.92530', '-81.18750'), ('CAMP BRANCH', None, '32.81030', '-81.02330'), ('COSBY', None, '32.58170', '-81.24830'), ('CROCKETVILLE', None, '32.91640', '-81.07750'), ('CUMMINGS', None, '32.78690', '-80.99060'), ('DAVIDSON', None, '32.72470', '-80.90080'), ('DE LOACH', None, '32.65970', '-81.17920'), ('DUKES', None, '32.89750', '-81.23810'), ('EARLY BRANCH', None, '32.74560', '-80.92810'), ('ESTILL', 2425, '32.75470', '-81.24220'), ('FECHTIG', None, '32.76890', '-80.96420'), ('FURMAN', 286, '32.68140', '-81.18830'), ('GARNETT', None, '32.60610', '-81.24560'), ('GIFFORD', 370, '32.85940', '-81.23920'), ('HAMPTON', 2837, '32.87780', '-81.12780'), ('KRESS', None, '32.64330', '-80.88440'), ('LENA', None, '32.75330', '-81.21530'), ('LURAY', 115, '32.81360', '-81.24000'), ('MCPHERSONVILLE', None, '32.69170', '-80.91940'), ('MILEY', None, '32.94780', '-81.03190'), ('NIXVILLE', None, '32.74280', '-81.15220'), ('SCOTIA', 227, '32.68080', '-81.24360'), ('SHIRLEY', None, '32.66000', '-81.31640'), ('STAFFORD', None, '32.67000', '-81.16500'), ('VALENTINE', None, '32.82330', '-81.25780'), ('VARNVILLE', 2074, '32.85030', '-81.07940'), ('YEMASSEE', 807, '32.69000', '-80.85080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ043': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ASHEPOO', None, '32.74000', '-80.55060'), ('ASHTON', None, '33.01580', '-80.97080'), ('BECK LANDING', None, '32.80440', '-80.41890'), ('BELLS CROSSROADS', None, '32.97890', '-80.85170'), ('BLAKE', None, '32.69170', '-80.76940'), ('CALDWELL', None, '33.04170', '-80.90390'), ('CANADY LANDING', None, '32.81530', '-80.40500'), ('CANADYS', None, '33.05560', '-80.62060'), ('COLLETON', None, '33.03970', '-80.88250'), ('COTTAGEVILLE', 707, '32.93670', '-80.48110'), ('DRAWDY', None, '32.84780', '-80.62500'), ('GLOVERVILLE', 2805, '32.90000', '-80.49360'), ('GREEN POND', None, '32.73170', '-80.61440'), ('HENDERSONVILLE', None, '32.79060', '-80.72560'), ('HIOTTS', None, '32.97860', '-80.54470'), ('ISLANDTON', None, '32.90890', '-80.93560'), ('JACKSONBORO', None, '32.77000', '-80.45470'), ('LODGE', 114, '33.06780', '-80.95390'), ('MOSELLE', None, '32.96580', '-81.01280'), ('NEYLES', None, '32.82500', '-80.55860'), ('NORMAN LANDING', None, '32.98440', '-80.40860'), ('PADGETTS', None, '33.07170', '-80.88640'), ('PARKERS FERRY LANDING', None, '32.85920', '-80.40390'), ('RHODES CROSSROADS', None, '32.95860', '-80.71000'), ('RITTER', None, '32.78940', '-80.63060'), ('ROUND O', None, '32.93690', '-80.54110'), ('RUFFIN', None, '33.00440', '-80.81580'), ('SALKEHATCHIE', None, '32.70610', '-80.81330'), ('SIDNEY', None, '32.99940', '-80.56860'), ('SMOAKS', 140, '33.08940', '-80.81420'), ('SMYLY', None, '33.02580', '-80.79580'), ('SPRINGTOWN', None, '33.09890', '-80.67640'), ('STOKES', None, '32.95920', '-80.72580'), ('THAYER', None, '32.87440', '-80.62890'), ('WALTERBORO', 5153, '32.90500', '-80.66690'), ('WHITE HALL', None, '32.72170', '-80.69060'), ('WILLIAMS', 116, '33.03440', '-80.84280')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ040': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALLENDALE', 4052, '33.00780', '-81.30860'), ('APPLETON', None, '33.04330', '-81.36310'), ('AVERILL', None, '33.07420', '-81.51360'), ('BALDOCK', None, '33.07920', '-81.42360'), ('BARTON', None, '32.92220', '-81.28670'), ('FAIRFAX', 3206, '32.95890', '-81.23670'), ('JENNYS', None, '33.02610', '-81.11390'), ('MARTIN', None, '33.06890', '-81.47670'), ('MILBURY', None, '32.92420', '-81.43030'), ('MILLETT', None, '33.08110', '-81.53580'), ('ROUSE', None, '32.88530', '-81.27560'), ('SEIGLING', None, '33.04420', '-81.31530'), ('SYCAMORE', 185, '33.03560', '-81.22220'), ('ULMER', 102, '33.09720', '-81.20830')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ041': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BAMBERG', 3733, '33.29830', '-81.03210'), ('DENMARK', 3328, '33.31870', '-81.13850'), ('EHRHARDT', 614, '33.09840', '-81.01340'), ('GOVAN', 67, '33.22320', '-81.17510'), ('OLAR', 237, '33.18030', '-81.18520')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'GAZ155': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAVIS PARK', None, '31.02980', '-84.87640'), ('DESSER', None, '30.88580', '-84.86290'), ('DONALDSONVILLE MUNI A/P', None, '31.00630', '-84.87770'), ('DONALSONVILLE', 2796, '31.04070', '-84.87850'), ('FAIRCHILD', None, '30.82310', '-84.90680'), ('IRON CITY', 321, '31.01300', '-84.81380'), ('LELA', None, '30.98290', '-84.86310'), ('LITTLE HOPE', None, '31.01020', '-84.91000'), ('REYNOLDSVILLE', None, '30.85640', '-84.77820'), ('RIVERTURN', None, '30.98890', '-84.94760'), ('SEMINOLE STATE PARK', None, '30.79180', '-84.87920'), ('SHARPHAGEN', None, '31.01840', '-84.82910')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'SCZ048': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ASHDALE', None, '32.44810', '-80.61940'), ('ATTAWAY', None, '32.46750', '-80.63030'), ('BLUFFTON', 1275, '32.23690', '-80.86060'), ('BON AIRE', None, '32.39440', '-80.74330'), ('BREWTON', None, '32.65080', '-80.80610'), ('BRIARS', None, '32.58110', '-80.69940'), ('BRIGHTON BEACH', None, '32.21530', '-80.84860'), ('BURTON', 7180, '32.43560', '-80.72420'), ('CALIBOGUE CAY', None, '32.14830', '-80.79890'), ('CHESTERFIELD', 1318, '32.40140', '-80.76420'), ('CHISOLM', None, '32.53750', '-80.60280'), ('CHISOLMS', None, '32.57560', '-80.67330'), ('COOSAW', None, '32.54500', '-80.77360'), ('DALE', None, '32.55640', '-80.69000'), ('DANIELS', None, '32.47860', '-80.62750'), ('DAUFUSKIE ISLAND', None, '32.12500', '-80.86670'), ('DOWLINGWOOD', None, '32.38580', '-80.73610'), ('FOLLY FIELD', None, '32.20190', '-80.69060'), ('FOREST BEACH', None, '32.14640', '-80.74390'), ('FRIPP ISLAND', None, '32.31670', '-80.46670'), ('FROGMORE', None, '32.39670', '-80.57640'), ('GARDENS CORNER', None, '32.60060', '-80.76140'), ('GRASSLAWN BEACH', None, '32.21080', '-80.68000'), ('HARBORTOWN', None, '32.13330', '-80.81250'), ('HILTON HEAD ISLAND', 33862, '32.21610', '-80.75280'), ('HUNTING ISLAND', None, '32.37500', '-80.44170'), ('LANDS END', None, '32.29170', '-80.64170'), ('LAUREL BAY', 6625, '32.45000', '-80.78500'), ('LAWTON', None, '32.14330', '-80.78860'), ('LOBECO', None, '32.55250', '-80.74360'), ('LONGWOOD', None, '32.32250', '-80.61000'), ('MYRTLE ISLAND', None, '32.21170', '-80.86500'), ('PARRIS ISLAND', 4841, '32.35000', '-80.68330'), ('PORT ROYAL', 3950, '32.37890', '-80.69280'), ('PRITCHARD', None, '32.24390', '-81.00190'), ('PRITCHARDVILLE', None, '32.23780', '-80.96440'), ('RIVER REACH', None, '32.40440', '-80.76810'), ('RIVERDALE', None, '32.37500', '-80.83970'), ('ROSEIDA', None, '32.45310', '-80.73750'), ('SCOTT', None, '32.34640', '-80.62330'), ('SEA PINES', None, '32.13330', '-80.79500'), ('SHELDON', None, '32.60140', '-80.79330'), ('SPRINGFIELD', 504, '32.47920', '-80.63060'), ('TANGLEWOOD', None, '32.40500', '-80.72360'), ('TOMOTLEY', None, '32.63170', '-80.81530'), ('WALLING GROVE', None, '32.49220', '-80.65780'), ('WALSH', None, '32.44250', '-80.71890'), ('WILKINS', None, '32.48470', '-80.60080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ049': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BENNETTS POINT', None, '32.56080', '-80.45470'), ('FENWICK', None, '32.65140', '-80.45170'), ('WIGGINS', None, '32.60440', '-80.54390')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ093': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('IDEAL', 518, '32.37280', '-84.18890'), ('MARSHALLVILLE', 1335, '32.45720', '-83.94110'), ('MONTEZUMA', 3999, '32.29960', '-84.02680'), ('OGLETHORPE', 1200, '32.29320', '-84.06270')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'INZ029': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BATTLE GROUND', 1323, '40.51000', '-86.83850'), ('CLARKS HILL', 680, '40.24690', '-86.72460'), ('DAYTON', 1120, '40.37760', '-86.77680'), ('LAFAYETTE', 56397, '40.41090', '-86.87070'), ('OTTERBEIN', 1312, '40.48830', '-87.09410'), ('SHADELAND', 1682, '40.34450', '-86.96370'), ('WEST LAFAYETTE', 28778, '40.44470', '-86.91190')], 'partOfState': '', 'wfo': 'IND'}, -'INZ028': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('PINE VILLAGE', 255, '40.44990', '-87.25250'), ('STATE LINE CITY', 141, '40.19720', '-87.52720'), ('WEST LEBANON', 793, '40.27130', '-87.38340'), ('WILLIAMSPORT', 1935, '40.28710', '-87.29350')], 'partOfState': '', 'wfo': 'IND'}, -'GAZ092': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ELLAVILLE', 1609, '32.23760', '-84.30970')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'INZ023': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AMBOY', 360, '40.60160', '-85.92740'), ('BUNKER HILL', 987, '40.66040', '-86.10180'), ('DENVER', 541, '40.86420', '-86.07640'), ('GRISSOM AFB', 1652, '40.65940', '-86.14760'), ('MACY', 248, '40.95770', '-86.12890'), ('MEXICO', 984, '40.81290', '-86.11090'), ('PERU', 12994, '40.75360', '-86.06800')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ022': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LOGANSPORT', 19684, '40.75370', '-86.35740'), ('ONWARD', 81, '40.69400', '-86.19540'), ('ROYAL CENTER', 832, '40.86460', '-86.50050'), ('WALTON', 1069, '40.66230', '-86.24470')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ021': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BURLINGTON', 444, '40.48130', '-86.39450'), ('CAMDEN', 582, '40.61020', '-86.53870'), ('DELPHI', 3015, '40.58460', '-86.67030'), ('FLORA', 2227, '40.54490', '-86.52340'), ('YEOMAN', 96, '40.66710', '-86.72340')], 'partOfState': '', 'wfo': 'IND'}, -'INZ020': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROOKSTON', 1717, '40.60020', '-86.86580'), ('BURNETTSVILLE', 373, '40.76150', '-86.59480'), ('CHALMERS', 513, '40.66250', '-86.86760'), ('MONON', 1733, '40.86360', '-86.87870'), ('MONTICELLO', 5723, '40.74670', '-86.76390'), ('REYNOLDS', 547, '40.74870', '-86.87370'), ('WOLCOTT', 989, '40.75820', '-87.04330')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ027': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BERNE', 4150, '40.65710', '-84.95430'), ('DECATUR', 9528, '40.83000', '-84.92820'), ('GENEVA', 1368, '40.59720', '-84.95710'), ('MONROE', 734, '40.74450', '-84.94050')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ026': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLUFFTON', 9536, '40.74150', '-85.17090'), ('MARKLE', 1102, '40.82640', '-85.33810'), ('OSSIAN', 2943, '40.87860', '-85.16840'), ('PONETO', 240, '40.65610', '-85.22220'), ('UNIONDALE', 277, '40.82840', '-85.24140'), ('VERA CRUZ', 55, '40.70090', '-85.07960')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ025': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ANDREWS', 1290, '40.85950', '-85.60100'), ('HUNTINGTON', 17450, '40.88070', '-85.50560'), ('MOUNT ETNA', 110, '40.74180', '-85.56250'), ('ROANOKE', 1495, '40.96440', '-85.37520'), ('WARREN', 1272, '40.68670', '-85.42340')], 'partOfState': '', 'wfo': 'IWX'}, -'INZ024': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LA FONTAINE', 900, '40.67370', '-85.72170'), ('LAGRO', 454, '40.83830', '-85.72840'), ('NORTH MANCHESTER', 6260, '41.00490', '-85.77410'), ('ROANN', 400, '40.91120', '-85.92390'), ('WABASH', 11743, '40.79920', '-85.82530')], 'partOfState': '', 'wfo': 'IWX'}, -'PRZ009': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ADJUNTAS', 4980, '18.16570', '-66.72410'), ('CAYUCO', 1284, '18.29530', '-66.73540'), ('JUNCAL', 1155, '18.31570', '-66.91940'), ('LARES', 7042, '18.29630', '-66.88220'), ('LIBORIO NEGRON TORRES', None, '18.04510', '-66.94280'), ('LLUVERAS', 2005, '18.04040', '-66.90510'), ('MARICAO', 1123, '18.18610', '-66.98040'), ('SABANA GRANDE', 8784, '18.08400', '-66.96710'), ('SAN SEBASTIAN', None, '18.33800', '-66.99590'), ('UTUADO', 9887, '18.27140', '-66.70560')], 'partOfState': '', 'wfo': 'SJU'}, -'GAZ097': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CADWELL', 329, '32.34020', '-83.04260'), ('DEXTER', 509, '32.43300', '-83.06000'), ('DUBLIN', 15857, '32.53830', '-82.92160'), ('DUDLEY', 447, '32.53280', '-83.08070'), ('EAST DUBLIN', 2484, '32.55070', '-82.86880'), ('MONTROSE', 154, '32.56030', '-83.15430'), ('RENTZ', 304, '32.38390', '-82.99180')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ096': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COCHRAN', 4455, '32.38730', '-83.35490')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TNZ091': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ACTON', None, '35.01670', '-88.46670'), ('ADAMSVILLE', 1983, '35.23470', '-88.38760'), ('BETHEL SPRINGS', 763, '35.23550', '-88.60990'), ('EASTVIEW', 618, '35.08900', '-88.55380'), ('FINGER', 350, '35.35470', '-88.61550'), ('GUYS', 483, '35.01590', '-88.54420'), ('MCNAIRY', None, '35.31670', '-88.63330'), ('MICHIE', 647, '35.06290', '-88.42750'), ('MILLEDGEVILLE', 287, '35.37600', '-88.36660'), ('RAMER', 354, '35.07030', '-88.61770'), ('SELMER', 4541, '35.17180', '-88.59000'), ('STANTONVILLE', 312, '35.15810', '-88.42830')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'GAZ095': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CENTERVILLE', 4278, '32.63200', '-83.67640'), ('PERRY', 9602, '32.46410', '-83.73800'), ('ROBINS AFB', 3949, '32.60780', '-83.58680'), ('WARNER ROBINS', 48804, '32.61270', '-83.63130')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'KSZ083': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(3KM)JABARA ARPT', None, '37.75000', '-97.21670'), ('(IAB)MCCONNELL AFB', None, '37.62000', '-97.27000'), ('(ICT)WICHITA ARPT', None, '37.65000', '-97.43330'), ('ANDALE', 766, '37.79270', '-97.62910'), ('BEL AIRE', 5836, '37.76450', '-97.26820'), ('BENTLEY', 368, '37.88640', '-97.51560'), ('CHENEY', 1783, '37.62790', '-97.78020'), ('CLEARWATER', 2178, '37.50560', '-97.50130'), ('COLWICH', 1229, '37.78170', '-97.53750'), ('DERBY', 17807, '37.54930', '-97.25890'), ('EASTBOROUGH', 826, '37.68470', '-97.25840'), ('GARDEN PLAIN', 797, '37.66110', '-97.68160'), ('GODDARD', 2037, '37.65980', '-97.57660'), ('HAYSVILLE', 8502, '37.56700', '-97.34920'), ('KECHI', 1038, '37.79530', '-97.27830'), ('MAIZE', 1868, '37.77310', '-97.46410'), ('MOUNT HOPE', 830, '37.86840', '-97.66420'), ('MULVANE', 5155, '37.48070', '-97.24070'), ('PARK CITY', 5814, '37.79600', '-97.32190'), ('VALLEY CENTER', 4883, '37.83520', '-97.37350'), ('VIOLA', 211, '37.48250', '-97.64460'), ('WICHITA', 344284, '37.68740', '-97.34270')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'VAZ024': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BELLS VALLEY', None, '38.03330', '-79.45000'), ('BROWNSBURG', None, '37.93330', '-79.31670'), ('BUENA VISTA CITY', None, '37.73330', '-79.36670'), ('COLLIERSTOWN', None, '37.76670', '-79.58330'), ('CORNWALL', None, '37.80000', '-79.30000'), ('FAIRFIELD', None, '37.88330', '-79.30000'), ('GLASGOW', 1046, '37.63330', '-79.45000'), ('GOSHEN', 406, '37.98330', '-79.50000'), ('NATURAL BRIDGE', None, '37.63330', '-79.55000'), ('ROCKBRIDGE BATHS', None, '37.90000', '-79.41670'), ('VESUVIUS', None, '37.90000', '-79.20000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'CAZ065': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AMERICAN CANYON', 9774, '38.17320', '-122.26120'), ('ANGWIN', 3148, '38.57760', '-122.44800'), ('CALISTOGA', 5190, '38.58140', '-122.58170'), ('DEER PARK', 1433, '38.53280', '-122.46860'), ('NAPA', 72585, '38.29790', '-122.29990'), ('ST. HELENA', 5950, '38.50470', '-122.46570'), ('YOUNTVILLE', 2916, '38.39140', '-122.36780')], 'partOfState': '', 'wfo': 'MTR'}, -'TNZ093': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CLIFTON', 2699, '35.38140', '-87.99260'), ('COLLINWOOD', 1024, '35.17640', '-87.74430'), ('WAYNESBORO', 2228, '35.32280', '-87.75780')], 'partOfState': '', 'wfo': 'OHX'}, -'MTZ049': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('DUTTON', 389, '47.84760', '-111.71360'), ('FAIRFIELD', 659, '47.61530', '-111.98000'), ('POWER', 171, '47.71580', '-111.68610')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ048': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('AUGUSTA', 284, '47.49280', '-112.39140'), ('BYNUM', None, '47.97920', '-112.31080'), ('CHOTEAU', 1781, '47.81260', '-112.17960'), ('PENDROY', None, '48.05690', '-112.29810')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ043': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BEARMOUTH', None, '46.71028', '-113.33056'), ('BLOSSBURG', None, '46.63278', '-112.32111'), ('BONNER', None, '46.87333', '-113.86361'), ('BROCK CREEK', None, '46.60361', '-112.85472'), ('CLEARWATER', None, '47.00028', '-113.37694'), ('CLINTON', 549, '46.76917', '-113.71167'), ('CONDON', None, '47.52778', '-113.70972'), ('DRUMMOND', 318, '46.66750', '-113.14639'), ('EAST MISSOULA', 2070, '46.87083', '-113.94361'), ('FINN', None, '46.76611', '-112.70278'), ('GARNET', None, '46.82528', '-113.33806'), ('GOLDCREEK', None, '46.58667', '-112.92778'), ('GREENOUGH', None, '46.91667', '-113.43583'), ('HELMVILLE', None, '46.86667', '-112.96028'), ('JENS', None, '46.60417', '-113.00528'), ('NEW CHICAGO', None, '46.62694', '-113.14139'), ('NIMROD', None, '46.70028', '-113.47639'), ('OVANDO', 71, '47.02028', '-113.13222'), ('POTOMAC', None, '46.88167', '-113.57861'), ('SEELEY LAKE', 1436, '47.17944', '-113.48361'), ('TURAH', None, '46.83611', '-113.82917'), ('TWIN CREEKS', None, '46.91278', '-113.71306'), ('WOODWORTH', None, '47.10639', '-113.30167')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'KSZ086': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('HAYNE', None, '37.10000', '-100.80000'), ('KISMET', 484, '37.20500', '-100.70060'), ('LIBERAL', 19666, '37.04470', '-100.93550')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'MTZ041': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BIG TIMBER', 1650, '45.83410', '-109.95060')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ040': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CLYDE PARK', 310, '45.88370', '-110.60540'), ('LIVINGSTON', 6851, '45.66300', '-110.56370')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ047': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CHINOOK', 1386, '48.59040', '-109.23120'), ('FORT BELKNAP', None, '48.48310', '-108.76630'), ('HARLEM', 848, '48.53180', '-108.78370'), ('HAYS', 702, '47.99050', '-108.64940'), ('HOGELAND', None, '48.85250', '-108.65810'), ('LLOYD', None, '48.29030', '-109.36140'), ('LODGEPOLE', None, '48.03470', '-108.53250'), ('TURNER', None, '48.84360', '-108.40640'), ('ZURICH', None, '48.58440', '-109.02970')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ046': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BRADY', None, '48.03560', '-111.83920'), ('CONRAD', 2753, '48.17280', '-111.94630'), ('LEDGER', None, '48.26030', '-111.82220'), ('VALIER', 498, '48.30190', '-112.25120')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ045': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CHESTER', 871, '48.51110', '-110.96590'), ('JOPLIN', 210, '48.56080', '-110.77170'), ('LOTHAIR', None, '48.47170', '-111.23140'), ('WHITLASH', None, '48.90830', '-111.25220')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'TNZ094': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ETHRIDGE', 536, '35.32120', '-87.30230'), ('IRON CITY', 368, '35.02560', '-87.58370'), ('LAWRENCEBURG', 10796, '35.24570', '-87.33800'), ('LORETTO', 1665, '35.08030', '-87.43610'), ('ST. JOSEPH', 829, '35.02950', '-87.50610')], 'partOfState': '', 'wfo': 'OHX'}, -'NCZ085': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CAMP MACKALL', None, '35.02000', '-79.47000'), ('EAST LAURINBURG', 295, '34.77020', '-79.44530'), ('GIBSON', 584, '34.75870', '-79.60680'), ('LAUREL HILL', None, '34.80000', '-79.54000'), ('LAURINBURG', 15874, '34.76610', '-79.47010'), ('WAGRAM', 801, '34.88990', '-79.36570')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ084': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('COVINGTON', None, '35.15000', '-79.87000'), ('DERBY', None, '35.15000', '-79.65000'), ('DIGGS', None, '34.85000', '-79.87000'), ('DOBBINS HEIGHTS', 936, '34.90660', '-79.69350'), ('EAST ROCKINGHAM', 3885, '34.91130', '-79.76550'), ('ELLERBE', 1021, '35.07070', '-79.76080'), ('HAMLET', 6018, '34.88960', '-79.70930'), ('HOFFMAN', 624, '35.03250', '-79.54970'), ('NORMAN', 72, '35.16390', '-79.72250'), ('ROCKINGHAM', 9672, '34.93930', '-79.76230')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ087': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BARKER TEN MILE', 976, '34.67980', '-78.98880'), ('BARNESVILLE', None, '34.40860', '-79.04690'), ('BOWMORE', 145, '34.54190', '-79.30330'), ('BUIE', None, '34.73640', '-79.14500'), ('FAIRMONT', 2604, '34.49670', '-79.11440'), ('LUMBER BRIDGE', 118, '34.88830', '-79.07250'), ('LUMBERTON', 20795, '34.61810', '-79.00890'), ('MARIETTA', 164, '34.36890', '-79.12740'), ('MAXTON', 2551, '34.73500', '-79.34920'), ('MCDONALD', 119, '34.55310', '-79.17630'), ('ORRUM', 79, '34.46580', '-79.00940'), ('PARKTON', 428, '34.90250', '-79.01190'), ('PEMBROKE', 2399, '34.68000', '-79.19530'), ('PROCTORVILLE', 133, '34.47540', '-79.03790'), ('PURVIS', None, '34.58860', '-79.26360'), ('RAEMON', 212, '34.63750', '-79.34890'), ('RAYNHAM', 67, '34.57420', '-79.19530'), ('RED SPRINGS', 3493, '34.81500', '-79.18330'), ('RENNERT', 283, '34.81420', '-79.08110'), ('ROWLAND', 1146, '34.53640', '-79.29170'), ('ROWLAND', 1146, '34.53660', '-79.29270'), ('SMITHS', None, '34.65280', '-78.86780'), ('ST. PAULS', 2137, '34.80640', '-78.97140'), ('TOLARSVILLE', None, '34.76110', '-78.87250')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCZ086': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANTIOCH', None, '34.88000', '-79.20000'), ('ASHLEY HEIGHTS', 341, '35.10000', '-79.38000'), ('BOWMORE', 145, '34.94000', '-79.31000'), ('RAEFORD', 3386, '34.97900', '-79.22460'), ('ROCKFISH', 2353, '34.98000', '-79.07000'), ('SILVER CITY', 1146, '34.99600', '-79.22780')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ080': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AURORA', 583, '35.30350', '-76.78840'), ('BELHAVEN', 1968, '35.54370', '-76.62470'), ('CHOCOWINITY', 733, '35.51390', '-77.09970'), ('PANTEGO', 170, '35.58740', '-76.65850'), ('RIVER ROAD', 4094, '35.50660', '-76.99100'), ('WASHINGTON', 9583, '35.55630', '-77.05050'), ('WASHINGTON PARK', 440, '35.53250', '-77.03120')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ083': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ANSONVILLE', 636, '35.10450', '-80.10990'), ('LILESVILLE', 459, '34.96780', '-79.98520'), ('MCFARLAN', 89, '34.81330', '-79.97620'), ('MORVEN', 579, '34.86330', '-80.00040'), ('PEACHLAND', 554, '34.99370', '-80.26580'), ('POLKTON', 1195, '35.00820', '-80.20190'), ('WADESBORO', 3552, '34.96660', '-80.06850'), ('WHITE STORE', None, '34.90000', '-80.26000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ082': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('FAIRVIEW', 2495, '35.13830', '-80.53780'), ('FAIRVIEW', 2495, '35.13830', '-80.53780'), ('INDIAN TRAIL', 11905, '35.07240', '-80.67920'), ('MARSHVILLE', 2360, '34.98710', '-80.36820'), ('MONROE', 26228, '34.98710', '-80.54180'), ('NEW SALEM', None, '35.13080', '-80.36940'), ('STALLINGS', 3189, '35.08470', '-80.68950'), ('STURDIVANTS', None, '34.90580', '-80.32830'), ('TRINITY', 6690, '34.84970', '-80.53110'), ('WAXHAW', 2625, '34.92430', '-80.74210'), ('WEDDINGTON', 6696, '35.03160', '-80.73810'), ('WINGATE', 2406, '34.98330', '-80.44850')], 'partOfState': '', 'wfo': 'GSP'}, -'VAZ027': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALONZAVILLE', None, '38.92860', '-78.54670'), ('BASYE', None, '38.80000', '-78.78000'), ('CLARY', None, '39.02530', '-78.36500'), ('DILBECK', None, '38.89580', '-78.36940'), ('EDINBURG', 813, '38.82340', '-78.56490'), ('HARMONY', None, '38.87330', '-78.59750'), ('HAWKINSTOWN', None, '38.77250', '-78.61330'), ('JEROME', None, '38.86250', '-78.72890'), ('KINGS CROSSING', None, '38.76920', '-78.49890'), ('MOUNT CLIFTON', None, '38.76140', '-78.71170'), ('MOUNT JACKSON', 1664, '38.74980', '-78.63790'), ('NEW MARKET', 1637, '38.64760', '-78.67490'), ('SEVEN FOUNTAINS', None, '38.86110', '-78.39970'), ('STRASBURG', 4017, '38.98850', '-78.35770'), ('TOMS BROOK', 255, '38.94710', '-78.43990'), ('WOODSTOCK', 3952, '38.87630', '-78.51900')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'TNZ096': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('FAYETTEVILLE', 6994, '35.14990', '-86.56440'), ('PETERSBURG', 580, '35.31710', '-86.64010')], 'partOfState': '', 'wfo': 'HUN'}, -'NCZ089': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AUTRYVILLE', 196, '34.99650', '-78.64060'), ('CLINTON', 8600, '35.00020', '-78.33180'), ('GARLAND', 808, '34.78600', '-78.39500'), ('HARRELLS', 187, '34.72960', '-78.20100'), ('HOBBTON', None, '35.18000', '-78.32000'), ('IVANHOE', 311, '34.60000', '-78.25000'), ('NEWTON GROVE', 606, '35.25220', '-78.35590'), ('ROSEBORO', 1267, '34.95390', '-78.51210'), ('SALEMBURG', 469, '35.01420', '-78.50310'), ("SPIVEY'S CORNER", None, '35.25000', '-78.53000'), ('TURKEY', 262, '34.99320', '-78.18540')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ088': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BONNIE DOONE', None, '35.09890', '-78.95980'), ('CEDAR CREEK', None, '34.95000', '-78.75000'), ('EASTOVER', 1376, '35.10070', '-78.78250'), ('FALCON', 328, '35.19440', '-78.64860'), ('FAYETTEVILLE', 121015, '35.07160', '-78.89920'), ('FORT BRAGG', 29183, '35.13850', '-79.00100'), ('GODWIN', 112, '35.21740', '-78.68200'), ('HOPE MILLS', 11237, '34.97330', '-78.95340'), ('LINDEN', 127, '35.25440', '-78.74850'), ('POPE AFB', 2583, '35.16870', '-79.01060'), ('SPRING LAKE', 8098, '35.17760', '-78.98240'), ('STEDMAN', 664, '35.01050', '-78.69830'), ('VANDER', 1204, '35.03680', '-78.78700'), ('WADE', 480, '35.16430', '-78.73530')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'MSZ075': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BEAUMONT', 977, '31.16780', '-88.92170'), ('BELLEVILLE', None, '31.20780', '-89.12580'), ('FERGUSON', None, '31.19060', '-88.96780'), ('HINTONVILLE', None, '31.25720', '-88.93250'), ('JANICE', None, '31.02470', '-89.03720'), ('KITTRELL', None, '31.20970', '-88.91860'), ('MAHNED', None, '31.20940', '-89.08940'), ('NEW AUGUSTA', 715, '31.20140', '-89.03500'), ('RHODES', None, '31.42750', '-88.96800'), ('RICHTON', 1038, '31.34940', '-88.94070'), ('RUNNELSTOWN', None, '31.37500', '-89.11250'), ('TALLAHALA', None, '31.38750', '-89.13300'), ('WINGATE', None, '31.20110', '-89.00420')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'MSZ074': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('HATTIESBURG', 44779, '31.31280', '-89.30690'), ('PETAL', 7579, '31.34410', '-89.25140')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MSZ077': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CROSSROADS', None, '30.78250', '-89.77470'), ('MCNEIL', None, '30.66860', '-89.63830'), ('PICAYUNE', 10535, '30.52870', '-89.67830'), ('POPLARVILLE', 2601, '30.83800', '-89.53410')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'LAZ064': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CHALMETTE', 32069, '29.94420', '-89.96730'), ('VIOLET', 8555, '29.89620', '-89.89250')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ063': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BELLE CHASSE', 9848, '29.84590', '-90.00390')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ062': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('EAST NEW ORLEANS', None, '30.06580', '-89.93140'), ('LAKE CATHERINE', None, '30.11420', '-89.70920'), ('NEW ORLEANS', 484674, '29.97000', '-90.08300')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'MSZ073': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('LUMBERTON', 2228, '31.00420', '-89.45170'), ('PURVIS', 2164, '31.14250', '-89.40880'), ('SUMRALL', 1005, '31.41850', '-89.54650'), ('WEST HATTIESBURG', 6305, '31.31880', '-89.37500')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MSZ072': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COLUMBIA', 6603, '31.25660', '-89.82870')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JAN'}, -'VTZ011': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BENSON', None, '43.72000', '-73.32000'), ('BRANDON', 1684, '43.80120', '-73.08650'), ('CASTLETON', None, '43.62000', '-73.18000'), ('DANBY', None, '43.35000', '-73.00000'), ('FAIR HAVEN', 2435, '43.59580', '-73.27110'), ('HUBBARDTON', None, '43.72000', '-73.18000'), ('MIDDLETOWN SPRINGS', None, '43.48000', '-73.12000'), ('PAWLET', None, '43.35000', '-73.18000'), ('PITTSFORD', None, '43.70000', '-73.03000'), ('POULTNEY', 1575, '43.51780', '-73.23610'), ('RUTLAND', 17292, '43.60890', '-72.97960'), ('SUDBURY', None, '43.80000', '-73.20000'), ('WELLS', None, '43.42000', '-73.20000'), ('WEST HAVEN', None, '43.65000', '-73.35000'), ('WEST RUTLAND', 2263, '43.59490', '-73.04550')], 'partOfState': 'SOUTHERN', 'wfo': 'BTV'}, -'MSZ079': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('AGRICOLA', None, '30.80720', '-88.52030'), ('AVENT', None, '30.98390', '-88.75960'), ('BASIN', None, '30.79860', '-88.64600'), ('BENNDALE', None, '30.87060', '-88.80720'), ('BEXLEY', None, '30.96720', '-88.67890'), ('EVANSTON', None, '30.90330', '-88.56580'), ('LUCEDALE', 2458, '30.92440', '-88.59000'), ('MERRILL', None, '30.97830', '-88.72060'), ('MOVELLA', None, '30.76360', '-88.51250'), ('SHIPMAN', None, '30.87870', '-88.47400')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'MSZ078': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BEATRICE', None, '30.73840', '-88.94220'), ('MCHENRY', None, '30.70710', '-89.13780'), ('PERKINSTON', None, '30.78110', '-89.13810'), ('PERRY', None, '30.71970', '-89.14170'), ('RAMSEY SPRINGS', None, '30.76970', '-88.92110'), ('ROGERS LAKE', None, '30.73810', '-89.31180'), ('TEN MILE', None, '30.76390', '-89.14850'), ('WHITES CROSSING', None, '30.84890', '-89.04500'), ('WIGGINS', 3849, '30.85720', '-89.13560'), ('WLOX TV STATION TOWER', None, '30.72390', '-89.09140')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'LAZ069': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BOOTHVILLE', None, '29.32330', '-89.39580'), ('BURAS', None, '29.34210', '-89.49650'), ('EMPIRE', 2211, '29.41190', '-89.61060'), ('MYRTLE GROVE', None, '29.63720', '-89.94920'), ('POINTE A LA HACHE', None, '29.57610', '-89.79170'), ('PORT SULPHUR', 3115, '29.49440', '-89.70850'), ('VENICE', None, '29.27690', '-89.35470')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'KSZ002': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ATWOOD', 1279, '39.81040', '-101.04100'), ('BEARDSLEY', None, '39.81000', '-101.23000'), ('BLAKEMAN', None, '39.82000', '-101.12000'), ('HERNDON', 149, '39.90850', '-100.78570'), ('LUDELL', None, '39.85000', '-100.96000'), ('MCDONALD', 159, '39.78520', '-101.37030')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'KSZ003': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR BLUFFS', None, '39.98000', '-100.56000'), ('DRESDEN', 51, '39.62140', '-100.41970'), ('JENNINGS', 146, '39.68020', '-100.29350'), ('KANONA', None, '39.80000', '-100.39000'), ('LEOVILLE', None, '39.58000', '-100.46000'), ('NORCATUR', 169, '39.83460', '-100.18800'), ('OBERLIN', 1994, '39.82320', '-100.53040'), ('TRAER', None, '39.93000', '-100.65000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'TNZ013': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CARYVILLE', 2243, '36.32440', '-84.21930'), ('DISNEY', None, '36.24810', '-84.17220'), ('ELK VALLEY', None, '36.48170', '-84.24940'), ('FINCASTLE', None, '36.40860', '-84.04970'), ('JACKSBORO', 1887, '36.33180', '-84.19100'), ('JELLICO', 2448, '36.57710', '-84.12870'), ('LA FOLLETTE', 7926, '36.37300', '-84.12710'), ('ROYAL BLUE', None, '36.38170', '-84.27890'), ('WHITE OAK', None, '36.53360', '-84.03500')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ012': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIG SOUTH FORK NATIONAL R', None, '36.52000', '-84.67310'), ('ELGIN', None, '36.33030', '-84.60940'), ('HUNTSVILLE', 981, '36.41360', '-84.48750'), ('KETCHEN', None, '36.56810', '-84.32030'), ('NORMA', None, '36.33470', '-84.38780'), ('ONEIDA', 3615, '36.50390', '-84.51500'), ('SLICK ROCK', None, '36.30080', '-84.50720'), ('SMOKEY JUNCTION', None, '36.28670', '-84.36580'), ('WINFIELD', 911, '36.56180', '-84.45050')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ015': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('EVANSTON', None, '36.50640', '-83.28830'), ('KYLES FORD', None, '36.57030', '-83.04420'), ('SNEEDVILLE', 1257, '36.53760', '-83.21110'), ('TREADWAY', None, '36.41560', '-83.22690')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ014': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARTHUR', None, '36.54640', '-83.67310'), ('CLAIRFIELD', None, '36.54830', '-83.95170'), ('HARROGATE-SHAWANEE', 2865, '36.58140', '-83.64370'), ('HOWARD QUARTER', None, '36.47250', '-83.41280'), ('LONE MOUNTAIN', None, '36.38780', '-83.58640'), ('SANDLICK', None, '36.39690', '-83.68310'), ('SPRINGDALE', None, '36.42390', '-83.69110'), ('TAZEWELL', 2165, '36.45820', '-83.57600')], 'partOfState': '', 'wfo': 'MRX'}, -'KSZ004': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALMENA', 469, '39.89150', '-99.70980'), ('CALVERT', None, '39.83000', '-99.76000'), ('CLAYTON', 66, '39.73720', '-100.17640'), ('DENSMORE', None, '39.64000', '-99.74000'), ('EDMOND', 47, '39.62670', '-99.82030'), ('LENORA', 306, '39.61100', '-100.00100'), ('NEW ALMELO', None, '39.59000', '-100.12000'), ('NORTON', 3012, '39.83550', '-99.89180'), ('REAGER', None, '39.83000', '-100.10000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'TNZ016': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BULLS GAP', 714, '36.26420', '-83.07900'), ('CHURCH HILL', 5916, '36.52530', '-82.71200'), ('KEPLER', None, '36.39970', '-82.88720'), ('KLONDIKE', None, '36.43860', '-83.13220'), ('MCCLOUD', None, '36.36530', '-82.97110'), ('MOORESBURG', None, '36.34610', '-83.22970'), ('MOUNT CARMEL', 4795, '36.56090', '-82.65870'), ('OKOLONA', None, '36.58140', '-82.77470'), ('ROGERSVILLE', 4240, '36.40670', '-83.00520'), ('ST. CLAIR', None, '36.32920', '-83.08560'), ('SURGOINSVILLE', 1484, '36.47330', '-82.85790')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ019': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADLEYTOWN', None, '36.03330', '-89.41670'), ('DYERSBURG', 17452, '36.03920', '-89.38020'), ('HELOISE', None, '36.05000', '-89.66670'), ('MILLSFIELD', None, '36.15000', '-89.38330'), ('MISTON', None, '36.16670', '-89.48330'), ('NEWBERN', 2988, '36.11640', '-89.26800'), ('ROELLEN', None, '36.01670', '-89.25000'), ('TRIMBLE', 728, '36.20220', '-89.18890'), ('UNIONVILLE', None, '35.96000', '-89.45000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TNZ018': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DOEVILLE', None, '36.38690', '-81.97190'), ('LAUREL BLOOMERY', None, '36.55830', '-81.76110'), ('MOUNTAIN CITY', 2383, '36.47180', '-81.80530'), ('NEVA', None, '36.39030', '-81.86530'), ('SHADY VALLEY', None, '36.51720', '-81.92780'), ('TRADE', None, '36.34610', '-81.74750')], 'partOfState': '', 'wfo': 'MRX'}, -'MIZ084': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALSTON', None, '46.77000', '-88.73000'), ('BOB LAKE', None, '46.66600', '-88.90900'), ('ECHO LAKE', None, '46.61300', '-88.84800'), ('KENTON', None, '46.48000', '-88.88000'), ('NISULA', None, '46.76500', '-88.79400'), ('SIDNAW', None, '46.50000', '-88.70000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ085': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CUSINO LAKE', None, '46.45600', '-86.25900'), ('GERMFASK', None, '46.25000', '-85.92000'), ('SENEY', None, '46.35000', '-85.95000'), ('SNYDER LAKE', None, '46.48800', '-85.94800'), ('STEUBEN', None, '46.18800', '-86.45700')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ082': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ADDISON', 627, '41.98590', '-84.34910'), ('ADRIAN', 21574, '41.89830', '-84.04350'), ('BLISSFIELD', 3223, '41.83240', '-83.86440'), ('BRITTON', 699, '41.98630', '-83.83190'), ('CEMENT CITY', 452, '42.06840', '-84.32730'), ('CLAYTON', 326, '41.86440', '-84.23590'), ('CLINTON', 95648, '42.06890', '-83.97240'), ('DEERFIELD', 1005, '41.89010', '-83.77860'), ('FAIRFIELD', None, '41.81280', '-84.04110'), ('HOLLOWAY', None, '41.93500', '-83.91440'), ('HUDSON', 2499, '41.85630', '-84.34560'), ('LIME CREEK', None, '41.76560', '-84.32970'), ('MORENCI', 2398, '41.72160', '-84.21640'), ('OGDEN CENTER', None, '41.77190', '-83.95970'), ('ONSTED', 813, '42.00760', '-84.19020'), ('ROME CENTER', None, '41.94360', '-84.18780'), ('SENECA', None, '41.78750', '-84.17670'), ('TECUMSEH', 8574, '42.00610', '-83.94450'), ('TIPTON', None, '42.01670', '-84.06420')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIZ083': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CARLETON', 2562, '42.05750', '-83.38980'), ('CONE', None, '42.03190', '-83.75310'), ('DUNDEE', 3522, '41.95700', '-83.66040'), ('ESTRAL BEACH', 486, '41.98800', '-83.24100'), ('IDA', None, '41.91040', '-83.57400'), ('LAMBERTVILLE', 9299, '41.74730', '-83.62290'), ('LA SALLE', None, '41.86780', '-83.45220'), ('LUNA PIER', 1483, '41.80510', '-83.44250'), ('MAYBEE', 505, '42.00580', '-83.51610'), ('MONROE', 22076, '41.91670', '-83.38600'), ('OTTAWA LAKE', None, '41.76350', '-83.74830'), ('PETERSBURG', 1157, '41.89960', '-83.71180'), ('SOUTH ROCKWOOD', 1284, '42.06200', '-83.26060'), ('STONY POINT', 1775, '41.94720', '-83.27140'), ('TEMPERANCE', 7757, '41.76760', '-83.57230')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIZ080': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BRONSON', 2421, '41.87370', '-85.19150'), ('COLDWATER', 12697, '41.94060', '-85.00450'), ('QUINCY', 1701, '41.94390', '-84.88300'), ('SHERWOOD', 324, '42.00000', '-85.24000'), ('UNION CITY', 1804, '42.06630', '-85.14050')], 'partOfState': 'SOUTHWEST', 'wfo': 'IWX'}, -'MIZ081': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLEN', 225, '41.95790', '-84.76740'), ('CAMDEN', 550, '41.75640', '-84.75700'), ('HILLSDALE', 8233, '41.92580', '-84.63570'), ('JONESVILLE', 2337, '41.98100', '-84.66650'), ('LITCHFIELD', 1458, '42.04310', '-84.75750'), ('MONTGOMERY', 386, '41.77690', '-84.80600'), ('NORTH ADAMS', 514, '41.97190', '-84.52420'), ('READING', 1134, '41.83920', '-84.74730'), ('WALDRON', 590, '41.72460', '-84.41820')], 'partOfState': 'SOUTHEAST', 'wfo': 'IWX'}, -'WAZ032': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ASOTIN', 1095, '46.33880', '-117.04390'), ('CLARKSTON', 7337, '46.41550', '-117.04900'), ('CLARKSTON HEIGHTS', None, '46.38630', '-117.07660'), ('DODGE', None, '46.52170', '-117.81920'), ('MAYVIEW', None, '46.62530', '-117.45880'), ('POMEROY', 1517, '46.47400', '-117.59550')], 'partOfState': 'SOUTHEAST', 'wfo': 'OTX'}, -'WAZ035': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALMIRA', 302, '47.71060', '-118.93930'), ('BENGE', None, '46.90570', '-118.10080'), ('COULEE CITY', 600, '47.61190', '-119.28980'), ('COULEE DAM', 1044, '47.96870', '-118.97440'), ('CRESTON', 232, '47.76000', '-118.51940'), ('CUNNINGHAM', None, '46.82000', '-118.80320'), ('EDWALL', None, '47.51780', '-117.95000'), ('ELECTRIC CITY', 922, '47.93020', '-119.03620'), ('ELMER CITY', 267, '47.99900', '-118.95240'), ('GRAND COULEE', 897, '47.93960', '-119.00390'), ('HARRINGTON', 426, '47.48040', '-118.25440'), ('HARTLINE', 134, '47.68940', '-119.10590'), ('HATTON', 98, '46.77230', '-118.82180'), ('IRBY', None, '47.35530', '-118.85000'), ('KRUPP', 60, '47.40990', '-118.98780'), ('LAMONA', None, '47.35570', '-118.47550'), ('LINCOLN', None, '47.82420', '-118.40830'), ('LIND', 582, '46.97160', '-118.61360'), ('MARLIN', None, '47.40450', '-118.98370'), ('MOHLER', None, '47.40300', '-118.32350'), ('ODESSA', 957, '47.33330', '-118.68710'), ('RALSTON', None, '46.98370', '-118.33830'), ('RITZVILLE', 1736, '47.12660', '-118.37600'), ('SPRAGUE', 490, '47.30000', '-117.97410'), ('STRATFORD', None, '47.42300', '-119.41900'), ('WASHTUCNA', 260, '46.75350', '-118.31160'), ('WILBUR', 914, '47.75810', '-118.70450'), ('WILSON CREEK', 227, '47.42260', '-119.11570')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OTX'}, -'IAZ094': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DAVIS CITY', 275, '40.64020', '-93.81190'), ('DECATUR CITY', 199, '40.74230', '-93.83250'), ('GARDEN GROVE', 250, '40.82650', '-93.60750'), ('GRAND RIVER', 225, '40.81890', '-93.96250'), ('LAMONI', 2444, '40.62060', '-93.93730'), ('LE ROY', 13, '40.87890', '-93.59220'), ('LEON', 1983, '40.74130', '-93.75330'), ('PLEASANTON', 37, '40.58240', '-93.74290'), ('VAN WERT', 231, '40.87080', '-93.79190'), ('WELDON', 145, '40.89790', '-93.73510')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'VAZ021': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CLOVER CREEK', None, '38.27000', '-79.54920'), ('DOE HILL', None, '38.43190', '-79.44470'), ('HIGHTOWN', None, '38.43110', '-79.63190'), ('LIBERTY', None, '38.28890', '-79.45970'), ('MCDOWELL', None, '38.33560', '-79.49080'), ('MILL GAP', None, '38.32170', '-79.70420'), ('MONTEREY', 158, '38.41180', '-79.58070'), ('MUSTOE', None, '38.32360', '-79.64060'), ('NEW HAMPDEN', None, '38.49280', '-79.56360'), ('PALO ALTO', None, '38.42330', '-79.37060'), ('POSSUM TROT', None, '38.47000', '-79.53250'), ('SIRONS MILL', None, '38.39750', '-79.47330'), ('VANDERPOOL', None, '38.36940', '-79.62560'), ('WILLIAMSVILLE', None, '38.20000', '-79.56670')], 'partOfState': '', 'wfo': 'LWX'}, -'WAZ037': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ADDY', None, '48.35370', '-117.83520'), ('ARDEN', None, '48.45620', '-117.87180'), ('CEDONIA', None, '48.15230', '-118.16750'), ('CHEWELAH', 2186, '48.28600', '-117.72970'), ('CLAYTON', None, '47.99080', '-117.55500'), ('COLVILLE', 4988, '48.54330', '-117.89510'), ('CUSICK', 212, '48.33450', '-117.29410'), ('DEER PARK', 3017, '47.96330', '-117.43400'), ('DIAMOND LAKE', None, '48.11980', '-117.19220'), ('ELK', None, '48.00980', '-117.27200'), ('EVANS', None, '48.70820', '-118.02120'), ('FORD', None, '47.90500', '-117.80280'), ('FRUITLAND', None, '48.06930', '-118.19200'), ('GIFFORD', None, '48.30380', '-118.14050'), ('HUNTERS', None, '48.11680', '-118.20050'), ('IONE', 479, '48.74060', '-117.42090'), ('KETTLE FALLS', 1527, '48.60600', '-118.05890'), ('LOON LAKE', None, '48.05700', '-117.62570'), ('MARCUS', 117, '48.66320', '-118.05790'), ('METALINE', 162, '48.85460', '-117.38810'), ('METALINE FALLS', 223, '48.86240', '-117.36940'), ('MILAN', None, '47.96700', '-117.32570'), ('NEWMAN LAKE', None, '47.77280', '-117.08970'), ('NEWPORT', 1921, '48.18080', '-117.05080'), ('NORTHPORT', 336, '48.91670', '-117.77830'), ('ORIN', None, '48.48800', '-117.90530'), ('RICE', None, '48.42400', '-118.16820'), ('RUBY', None, '48.52000', '-117.29220'), ('SPRINGDALE', 283, '48.05690', '-117.74630'), ('TIGER', None, '48.68830', '-117.40400'), ('TUM TUM', None, '47.88830', '-117.67580'), ('USK', None, '48.30830', '-117.27380'), ('VALLEY', None, '48.17180', '-117.72080'), ('WELLPINIT', None, '47.88620', '-117.98550')], 'partOfState': '', 'wfo': 'OTX'}, -'WVZ016': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('REEDY', 198, '38.89880', '-81.42720'), ('SPENCER', 2352, '38.80420', '-81.35630')], 'partOfState': '', 'wfo': 'RLX'}, -'WAZ036': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FOUR LAKES', None, '47.55680', '-117.58920'), ('AIRWAY HEIGHTS', 4500, '47.64440', '-117.58290'), ('CHATTAROY', None, '47.88720', '-117.35400'), ('CHENEY', 8832, '47.49060', '-117.57950'), ('COLBERT', None, '47.82270', '-117.33780'), ('DAVENPORT', 1730, '47.65130', '-118.15320'), ('DEEP CREEK', None, '47.63920', '-117.70670'), ('DISHMAN', 10031, '47.65890', '-117.27550'), ('FAIRCHILD AFB', 4357, '47.61310', '-117.64370'), ('FAIRFIELD', 494, '47.38520', '-117.17400'), ('GREEN ACRES', 5158, '47.66360', '-117.16090'), ('LIBERTY LAKE', 4660, '47.65440', '-117.08250'), ('MARSHALL', None, '47.55900', '-117.49230'), ('MEAD', None, '47.76720', '-117.35230'), ('MEDICAL LAKE', 3758, '47.57000', '-117.69210'), ('MICA', None, '47.55370', '-117.20670'), ('MILES', None, '47.90650', '-118.28820'), ('MILLWOOD', 1649, '47.68570', '-117.27930'), ('OPPORTUNITY', 25065, '47.64950', '-117.24050'), ('OTIS ORCHARDS', None, '47.70020', '-117.09010'), ('REARDAN', 608, '47.66920', '-117.87740'), ('ROCKFORD', 413, '47.45100', '-117.12920'), ('SPANGLE', 240, '47.43050', '-117.37880'), ('SPOKANE', 195629, '47.67230', '-117.41400'), ('TRENTWOOD', 4388, '47.69790', '-117.21340'), ('TYLER', None, '47.43500', '-117.77620'), ('VALLEYFORD', None, '47.52580', '-117.23620'), ('VERADALE', 9387, '47.64950', '-117.20750')], 'partOfState': '', 'wfo': 'OTX'}, -'AKZ171': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('AKHIOK', 80, '56.97730', '-154.21760'), ('CHIGNIK', 79, '56.30160', '-158.41570'), ('CHIGNIK LAGOON', 103, '56.28410', '-158.51110'), ('KARLUK', 27, '57.58610', '-154.39530'), ('KODIAK', 6334, '57.79850', '-152.40230'), ('KODIAK STATION', 1840, '57.76290', '-152.52690'), ('LARSEN BAY', 115, '57.55870', '-154.01970'), ('OLD HARBOR', 237, '57.24500', '-153.37360'), ('OUZINKIE', 225, '57.93520', '-152.45820'), ('PORT LIONS', 256, '57.89080', '-152.85890'), ('WOMENS BAY', 690, '57.68230', '-152.66870')], 'partOfState': '', 'wfo': 'AFC'}, -'SDZ018': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ASHTON', 152, '44.99350', '-98.49820'), ('ASHTON', 152, '44.99350', '-98.49820'), ('ATHOL', None, '45.00950', '-98.59680'), ('ATHOL', None, '45.00950', '-98.59680'), ('BRENTFORD', 65, '45.15920', '-98.32150'), ('BRENTFORD', 65, '45.15920', '-98.32150'), ('CONDE', 187, '45.15780', '-98.09670'), ('CONDE', 187, '45.15780', '-98.09670'), ('DOLAND', 297, '44.89440', '-98.09920'), ('DOLAND', 297, '44.89440', '-98.09920'), ('FRANKFORT', 166, '44.87740', '-98.30860'), ('FRANKFORT', 166, '44.87740', '-98.30860'), ('GLENDALE COLONY', None, '44.79930', '-98.28760'), ('GLENDALE COLONY', None, '44.79930', '-98.28760'), ('HILLSIDE COLONY', None, '44.73880', '-98.04590'), ('HILLSIDE COLONY', None, '44.73880', '-98.04590'), ('MANSFIELD', None, '45.24210', '-98.56120'), ('MANSFIELD', None, '45.24210', '-98.56120'), ('MELLETTE', 248, '45.15400', '-98.49800'), ('MELLETTE', 248, '45.15400', '-98.49800'), ('NORTHVILLE', 124, '45.15490', '-98.57850'), ('NORTHVILLE', 124, '45.15490', '-98.57850'), ('REDFIELD', 2897, '44.87300', '-98.52040'), ('REDFIELD', 2897, '44.87300', '-98.52040'), ('SPINK COLONY', None, '44.74660', '-98.29200'), ('SPINK COLONY', None, '44.74660', '-98.29200'), ('SPOTTSWOOD', None, '44.65210', '-98.50560'), ('SPOTTSWOOD', None, '44.65210', '-98.50560'), ('TULARE', 221, '44.73880', '-98.50870'), ('TULARE', 221, '44.73880', '-98.50870'), ('TURTON', 61, '45.04900', '-98.09650'), ('TURTON', 61, '45.04900', '-98.09650'), ('VERDON', 6, '45.24470', '-98.09810'), ('VERDON', 6, '45.24470', '-98.09810')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ019': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRADLEY', 112, '45.09010', '-97.64140'), ('BRADLEY', 112, '45.09010', '-97.64140'), ('CARPENTER', None, '44.63850', '-97.91450'), ('CARPENTER', None, '44.63850', '-97.91450'), ('CLARK', 1285, '44.88070', '-97.73380'), ('CLARK', 1285, '44.88070', '-97.73380'), ('CLARK COLONY', None, '44.78960', '-97.98020'), ('CLARK COLONY', None, '44.78960', '-97.98020'), ('CRANDALL', None, '45.15530', '-97.95560'), ('CRANDALL', None, '45.15530', '-97.95560'), ('CROCKER', None, '45.10530', '-97.78540'), ('CROCKER', None, '45.10530', '-97.78540'), ('FORDHAM COLONY', None, '44.76860', '-97.90920'), ('FORDHAM COLONY', None, '44.76860', '-97.90920'), ('GARDEN CITY', 72, '44.95790', '-97.58070'), ('GARDEN CITY', 72, '44.95790', '-97.58070'), ('HILLCREST COLONY', None, '44.95000', '-97.67750'), ('HILLCREST COLONY', None, '44.95000', '-97.67750'), ('NAPLES', 25, '44.77130', '-97.51260'), ('NAPLES', 25, '44.77130', '-97.51260'), ('RAYMOND', 86, '44.91110', '-97.93660'), ('RAYMOND', 86, '44.91110', '-97.93660'), ('VIENNA', 78, '44.70310', '-97.49910'), ('VIENNA', 78, '44.70310', '-97.49910'), ('WILLOW LAKE', 294, '44.62790', '-97.63780'), ('WILLOW LAKE', 294, '44.62790', '-97.63780')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'CAZ096': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BASS LAKE', None, '37.32220', '-119.55820'), ('CEDAR GROVE', None, '36.79160', '-118.67220'), ('DEVILS POSTPILE', None, '37.62940', '-119.08370'), ('EL PORTAL', None, '37.67570', '-119.78030'), ('FISH CAMP', None, '37.47890', '-119.63700'), ('FLORENCE LAKE', None, '37.27600', '-118.97600'), ('GRANT GROVE', None, '36.74020', '-118.96230'), ('HETCH HETCHY', None, '37.94750', '-119.78800'), ('HUME LAKE', None, '36.78650', '-118.91120'), ('HUNTINGTON LAKE', None, '37.23100', '-119.23460'), ('LAKE THOMAS EDISON', None, '37.37890', '-119.00990'), ('LAKE WISHON', None, '37.00720', '-118.97620'), ('SHAVER LAKE', 705, '37.10350', '-119.31770'), ('TUOLUMNE MEADOWS', None, '37.87430', '-119.35640'), ('WAWONA', None, '37.54790', '-119.64420'), ('YOSEMITE VALLEY', 265, '37.74000', '-119.59810')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'SDZ012': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BELLE FOURCHE', 4565, '44.68270', '-103.85320'), ('BELLE FOURCHE RESERVOIR', None, '44.73330', '-103.70000'), ('CASTLE ROCK', None, '44.96740', '-103.42380'), ('FRUITDALE', 62, '44.68330', '-103.66670'), ('HOOVER', None, '45.12710', '-103.26540'), ('NEWELL', 646, '44.71670', '-103.41670'), ('NISLAND', 204, '44.67110', '-103.55450'), ('VALE', None, '44.61670', '-103.40000')], 'partOfState': 'NORTHWEST', 'wfo': 'UNR'}, -'SDZ013': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FAIRPOINT', None, '44.74830', '-102.79640'), ('FAITH', 489, '45.01670', '-102.03330'), ('HOWES', None, '44.62090', '-102.04900'), ('MARCUS', None, '44.66670', '-102.26670'), ('MAURINE', None, '45.01670', '-102.60000'), ('MUD BUTTE', None, '45.00540', '-102.87580'), ('OPAL', None, '44.89410', '-102.61430'), ('PLAINVIEW', None, '44.60470', '-102.16470'), ('RED OWL', None, '44.69770', '-102.55170'), ('STONEVILLE', None, '44.73900', '-102.65160')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDZ010': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BOWDLE', 571, '45.45170', '-99.65590'), ('BOWDLE', 571, '45.45170', '-99.65590'), ('CRAVENS CORNER', None, '45.44820', '-98.92700'), ('CRAVENS CORNER', None, '45.44820', '-98.92700'), ('DEERFIELD COLONY', None, '45.58820', '-98.90290'), ('DEERFIELD COLONY', None, '45.58820', '-98.90290'), ('HOSMER', 287, '45.57890', '-99.47370'), ('HOSMER', 287, '45.57890', '-99.47370'), ('IPSWICH', 943, '45.44410', '-99.02990'), ('IPSWICH', 943, '45.44410', '-99.02990'), ('LOYALTON', None, '45.28810', '-99.27870'), ('LOYALTON', None, '45.28810', '-99.27870'), ('MINA', None, '45.43810', '-98.75530'), ('MINA', None, '45.43810', '-98.75530'), ('PAMBROOK COLONY', None, '45.37650', '-99.00080'), ('PAMBROOK COLONY', None, '45.37650', '-99.00080'), ('PLAINVIEW COLONY', None, '45.58160', '-99.00660'), ('PLAINVIEW COLONY', None, '45.58160', '-99.00660'), ('ROSCOE', 324, '45.45030', '-99.33490'), ('ROSCOE', 324, '45.45030', '-99.33490')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDZ011': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ANDOVER', 99, '45.41060', '-97.90330'), ('ANDOVER', 99, '45.41060', '-97.90330'), ('BRISTOL', 377, '45.34660', '-97.74900'), ('BRISTOL', 377, '45.34660', '-97.74900'), ('BUTLER', 17, '45.25820', '-97.71120'), ('BUTLER', 17, '45.25820', '-97.71120'), ('GRENVILLE', 62, '45.46640', '-97.38970'), ('GRENVILLE', 62, '45.46640', '-97.38970'), ('LILY', 21, '45.18140', '-97.68120'), ('LILY', 21, '45.18140', '-97.68120'), ('PICKEREL LAKE STATE PARK', None, '45.50170', '-97.28290'), ('PICKEREL LAKE STATE PARK', None, '45.50170', '-97.28290'), ('PIERPONT', 122, '45.49690', '-97.83110'), ('PIERPONT', 122, '45.49690', '-97.83110'), ('ROSLYN', 225, '45.49660', '-97.49340'), ('ROSLYN', 225, '45.49660', '-97.49340'), ('WAUBAY', 662, '45.33320', '-97.30670'), ('WAUBAY', 662, '45.33320', '-97.30670'), ('WAUBAY WILDLIFE REFUGE', None, '45.42520', '-97.34160'), ('WAUBAY WILDLIFE REFUGE', None, '45.42520', '-97.34160'), ('WEBSTER', 1952, '45.33570', '-97.52190'), ('WEBSTER', 1952, '45.33570', '-97.52190')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ016': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('GETTYSBURG', 1352, '45.00650', '-99.95350'), ('GETTYSBURG', 1352, '45.00650', '-99.95350'), ('GORMAN', None, '44.92700', '-100.07500'), ('GORMAN', None, '44.92700', '-100.07500'), ('HOVEN', 511, '45.24180', '-99.77640'), ('HOVEN', 511, '45.24180', '-99.77640'), ('LEBANON', 86, '45.06890', '-99.76590'), ('LEBANON', 86, '45.06890', '-99.76590'), ('TOLSTOY', 64, '45.20680', '-99.61470'), ('TOLSTOY', 64, '45.20680', '-99.61470'), ('WHITLOCKS BAY REC AREA', None, '45.04330', '-100.26410'), ('WHITLOCKS BAY REC AREA', None, '45.04330', '-100.26410')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDZ017': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BURKMERE', None, '45.04860', '-99.31180'), ('BURKMERE', None, '45.04860', '-99.31180'), ('CHELSEA', 33, '45.16720', '-98.74220'), ('CHELSEA', 33, '45.16720', '-98.74220'), ('CRESBARD', 143, '45.16960', '-98.94760'), ('CRESBARD', 143, '45.16960', '-98.94760'), ('DEVOE', None, '45.09160', '-98.87870'), ('DEVOE', None, '45.09160', '-98.87870'), ('FAULKTON', 785, '45.03430', '-99.12770'), ('FAULKTON', 785, '45.03430', '-99.12770'), ('MIRANDA', None, '44.97220', '-98.96490'), ('MIRANDA', None, '44.97220', '-98.96490'), ('NORBECK', None, '45.18750', '-99.20610'), ('NORBECK', None, '45.18750', '-99.20610'), ('ONAKA', 30, '45.19120', '-99.46460'), ('ONAKA', 30, '45.19120', '-99.46460'), ('ORIENT', 57, '44.90290', '-99.08830'), ('ORIENT', 57, '44.90290', '-99.08830'), ('ROCKHAM', 53, '44.90500', '-98.82290'), ('ROCKHAM', 53, '44.90500', '-98.82290'), ('SENECA', 58, '45.06100', '-99.50810'), ('SENECA', 58, '45.06100', '-99.50810'), ('ZELL', None, '44.89270', '-98.72630'), ('ZELL', None, '44.89270', '-98.72630')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDZ014': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRIDGER', None, '44.55130', '-101.91010'), ('CHERRY CREEK', None, '44.60000', '-101.50000'), ('DUPREE', 434, '45.05060', '-101.59100'), ('GLAD VALLEY', None, '45.40000', '-101.78330'), ('IRON LIGHTNING', None, '45.18000', '-101.84040'), ('RED ELM', None, '45.05620', '-101.79070'), ('RED SCAFFOLD', None, '44.76940', '-101.84950'), ('THUNDER BUTTE', None, '45.21320', '-101.68050')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDZ015': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FIRESTEEL', None, '45.42520', '-101.28460'), ('FIRESTEEL', None, '45.42520', '-101.28460'), ('GREEN GRASS', 58, '45.16770', '-101.25050'), ('GREEN GRASS', 58, '45.16770', '-101.25050'), ('ISABEL', 239, '45.39580', '-101.42850'), ('ISABEL', 239, '45.39580', '-101.42850'), ('LAPLANT', None, '45.14430', '-100.65100'), ('LAPLANT', None, '45.14430', '-100.65100'), ('LITTLE MOREAU REC AREA', None, '45.35450', '-101.09960'), ('LITTLE MOREAU REC AREA', None, '45.35450', '-101.09960'), ('PARADE', None, '45.02350', '-101.10420'), ('PARADE', None, '45.02350', '-101.10420'), ('PROMISE', None, '45.32910', '-100.60380'), ('PROMISE', None, '45.32910', '-100.60380'), ('RIDGEVIEW', None, '45.08470', '-100.79990'), ('RIDGEVIEW', None, '45.08470', '-100.79990'), ('TIMBER LAKE', 443, '45.42760', '-101.07420'), ('TIMBER LAKE', 443, '45.42760', '-101.07420'), ('TRAIL CITY', None, '45.47330', '-100.73120'), ('TRAIL CITY', None, '45.47330', '-100.73120'), ('WHITE HORSE', 180, '45.27040', '-100.88780'), ('WHITE HORSE', 180, '45.27040', '-100.88780')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'KYZ090': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('WARSAW', 1811, '38.78530', '-84.89480')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'VAZ020': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BACOVA JUNCTION', None, '38.01670', '-79.86670'), ('BURNSVILLE', None, '38.18330', '-79.65000'), ('CALLISON', None, '37.98330', '-79.90000'), ('CARLOOVER', None, '37.91670', '-79.90000'), ('HOT SPRINGS', None, '38.00000', '-79.83330'), ('INGALLS FIELD', None, '37.95000', '-79.83330'), ('MILLBORO', None, '37.96670', '-79.60000'), ('MOUNTAIN GROVE', None, '38.10000', '-79.88330'), ('NIMROD HALL', None, '37.95000', '-79.63330'), ('WARM SPRINGS', None, '38.05000', '-79.78330'), ('YOST', None, '38.05000', '-79.53330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'CAZ094': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('SPRINGVILLE', 1109, '36.13050', '-118.81680'), ('THREE RIVERS', 2248, '36.44320', '-118.90230')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'ARZ072': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('EMERSON', 359, '33.09740', '-93.19610'), ('MAGNOLIA', 10858, '33.27400', '-93.23540'), ('MCNEIL', 662, '33.34790', '-93.20880'), ('TAYLOR', 566, '33.10030', '-93.46210'), ('WALDO', 1594, '33.35250', '-93.29530')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'CAZ092': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALPAUGH', 761, '35.88760', '-119.48370'), ('ARVIN', 12956, '35.20030', '-118.83370'), ('BAKERSFIELD', 247057, '35.35770', '-119.00460'), ('DELANO', 38824, '35.76480', '-119.25040'), ('DINUBA', 16844, '36.54560', '-119.38730'), ('EARLIMART', 6583, '35.88090', '-119.27050'), ('EXETER', 9168, '36.29460', '-119.14300'), ('FARMERSVILLE', 8737, '36.30410', '-119.20690'), ('GOSHEN', 2394, '36.35110', '-119.42060'), ('LAMONT', 13296, '35.26410', '-118.91400'), ('LEMON COVE', 298, '36.38350', '-119.02450'), ('LINDSAY', 10297, '36.20630', '-119.08880'), ('MCFARLAND', 9618, '35.67910', '-119.23560'), ('PIXLEY', 2586, '35.97290', '-119.28720'), ('PORTERVILLE', 39615, '36.06460', '-119.02700'), ('RICHGROVE', 2723, '35.79670', '-119.10570'), ('SHAFTER', 12736, '35.50120', '-119.27270'), ('TIPTON', 1790, '36.05810', '-119.31190'), ('TULARE', 43994, '36.19510', '-119.34310'), ('VISALIA', 91565, '36.32540', '-119.32060'), ('WASCO', 21263, '35.59360', '-119.34100'), ('WOODLAKE', 6651, '36.41280', '-119.09740')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'NYZ001': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BARKER', 577, '43.32740', '-78.55380'), ('GASPORT', 1248, '43.19540', '-78.57720'), ('LEWISTON', 2781, '43.17160', '-79.04080'), ('LOCKPORT', 22279, '43.16970', '-78.69630'), ('MIDDLEPORT', 1917, '43.21170', '-78.47600'), ('NEWFANE', 3129, '43.28800', '-78.69930'), ('NIAGARA FALLS', 55593, '43.09110', '-79.01620'), ('NORTH TONAWANDA', 33262, '43.04380', '-78.86590'), ('OLCOTT', 1156, '43.33530', '-78.71230'), ('RANSOMVILLE', 1488, '43.23780', '-78.90910'), ('RAPIDS', 1356, '43.10130', '-78.64140'), ('WILSON', 1213, '43.31070', '-78.82690'), ('YOUNGSTOWN', 1957, '43.24870', '-79.04280')], 'partOfState': '', 'wfo': 'BUF'}, -'GUZ001': {'fullStateName': 'GUAM', 'state': 'GU', 'cities': [('AGANA HEIGHTS', None, '13.46270', '144.74390'), ('AGAT', None, '13.38240', '144.65780'), ('ANDERSEN AFB', None, '13.56270', '144.92710'), ('APRA HARBOR', None, '13.42660', '144.64720'), ('ASAN', None, '13.46710', '144.71530'), ('BARRIGADA', None, '13.46160', '144.79470'), ('BARRIGADA HEIGHTS', None, '13.48770', '144.82340'), ('CHALAN PAGO', None, '13.43630', '144.77040'), ('DEDEDO', None, '13.51700', '144.83620'), ('FINEGAYAN STATION', None, '13.56880', '144.83530'), ('HAGATNA', None, '13.47510', '144.74840'), ('INARAJAN', None, '13.27610', '144.73760'), ('LATTE HEIGHTS', None, '13.48830', '144.84090'), ('MAINA', None, '13.45530', '144.72950'), ('MAITE', None, '13.47570', '144.76210'), ('MANGILAO', None, '13.44160', '144.80170'), ('MARBO ANNEX', None, '13.50660', '144.86520'), ('MERIZO', None, '13.26780', '144.67030'), ('MONGMONG', None, '13.47060', '144.76520'), ('NIMITZ HILL ANNEX', None, '13.45920', '144.72480'), ('ORDOT', None, '13.44670', '144.77440'), ('PITI', None, '13.46470', '144.69540'), ('SANTA RITA', None, '13.38730', '144.66930'), ('SANTA ROSA', None, '13.39710', '144.67120'), ('SINAJANA', None, '13.45960', '144.75260'), ('TALOFOFO', None, '13.35560', '144.75340'), ('TAMUNING', None, '13.49360', '144.77670'), ('TIYAN', None, '13.47990', '144.79140'), ('TOTO', None, '13.46550', '144.77720'), ('UMATAC', None, '13.29670', '144.66200'), ('YIGO', None, '13.53800', '144.89850'), ('YONA', None, '13.41430', '144.77310')], 'partOfState': '', 'wfo': 'GUM'}, -'ARZ073': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CALION', 516, '33.32880', '-92.53840'), ('EL DORADO', 21530, '33.21900', '-92.66280'), ('FELSENTHAL', 152, '33.05790', '-92.15260'), ('HUTTIG', 731, '33.04130', '-92.18220'), ('JUNCTION CITY', 721, '33.02410', '-92.72360'), ('NORPHLET', 822, '33.31960', '-92.66320'), ('SMACKOVER', 2005, '33.36460', '-92.73080'), ('STRONG', 651, '33.10800', '-92.35940')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SHV'}, -'OKZ073': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MCALESTER', 17783, '34.93330', '-95.76940'), ('KIOWA', 693, '34.72060', '-95.89890'), ('PITTSBURG', 280, '34.71310', '-95.84970'), ('BLANCO', None, '34.75110', '-95.77420'), ('ASHLAND', 53, '34.76780', '-96.06940'), ('SAVANNA', 730, '34.82890', '-95.84360'), ('HARTSHORNE', 2102, '34.84500', '-95.55720'), ('HAILEYVILLE', 891, '34.85440', '-95.58190'), ('DOW', None, '34.87670', '-95.60000'), ('HAYWOOD', None, '34.88720', '-95.94810'), ('BACHE', None, '34.89420', '-95.64830'), ('ALDERSON', 261, '34.90000', '-95.69170'), ('KREBS', 2051, '34.92780', '-95.71560'), ('ARPELAR', None, '34.94190', '-95.96530'), ('SCIPIO', None, '35.05470', '-95.95640'), ('BLOCKER', None, '35.06140', '-95.56810'), ('FEATHERSTON', None, '35.07860', '-95.48970'), ('CROWDER', 436, '35.12390', '-95.66970'), ('QUINTON', 1071, '35.12280', '-95.37080'), ('INDIANOLA', 191, '35.16280', '-95.77440'), ('CANADIAN', 239, '35.17720', '-95.65500')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKZ072': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('COTTONWOOD', None, '35.36830', '-94.54890'), ('SALLISAW', 7989, '35.46030', '-94.78720'), ('GANS', 208, '35.38890', '-94.69190'), ('MULDROW', 3104, '35.40610', '-94.59860'), ('ROLAND', 2842, '35.42110', '-94.51440'), ('MC KEY', None, '35.48000', '-94.88000'), ('VIAN', 1362, '35.49830', '-94.96940'), ('GORE', 850, '35.52920', '-95.11690'), ('BRUSHY', 787, '35.55690', '-94.72530'), ('SHORT', 328, '35.57140', '-94.49110'), ('MARBLE CITY', 242, '35.58030', '-94.82080'), ('BOX', None, '35.58110', '-94.97610'), ('MOFFETT', 179, '35.39030', '-94.44670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'VAZ013': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALLISONIA', None, '36.93330', '-80.73330'), ('COPPER VALLEY', None, '36.98330', '-80.53330'), ('DRAPER', None, '37.00000', '-80.76670'), ('DUBLIN', 2288, '37.11670', '-80.70000'), ('FAIRLAWN', 2211, '37.15130', '-80.55950'), ('FAIRLAWN', 2211, '37.15000', '-80.60000'), ('GRAYSONTOWN', None, '37.05000', '-80.56670'), ('MC COY', None, '37.23330', '-80.61670'), ('PARROTT', None, '37.21670', '-80.63330'), ('PULASKI', 9473, '37.05000', '-80.80000'), ('RADFORD', 15859, '37.13330', '-80.56670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'OKZ070': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('KEEFETON', None, '35.58970', '-95.33910'), ('MUSKOGEE', 38310, '35.74780', '-95.36940'), ('BRIARTOWN', None, '35.29720', '-95.23940'), ('PORUM', 725, '35.35610', '-95.26530'), ('WARNER', 1430, '35.49420', '-95.30530'), ('OKTAHA', 327, '35.57640', '-95.47470'), ('KEEFETON', None, '35.60000', '-95.35000'), ('WAINWRIGHT', 197, '35.61250', '-95.56420'), ('BOYNTON', 274, '35.64860', '-95.65580'), ('SUMMIT', 226, '35.66580', '-95.42250'), ('BRAGGS', 301, '35.66330', '-95.19780'), ('JAMESVILLE', None, '35.75500', '-95.64030'), ('TAFT', 349, '35.76170', '-95.54610'), ('FORT GIBSON', 4054, '35.79750', '-95.25030'), ('HASKELL', 1765, '35.82030', '-95.67390'), ('WEBBERS FALLS', 726, '35.51080', '-95.12970')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'OKZ077': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('AMERICA', None, '33.82000', '-94.55000'), ('BATTIEST', None, '34.40000', '-94.93000'), ('BETHEL', None, '34.35000', '-94.85000'), ('BOKHOMA', None, '33.82000', '-94.58000'), ('BROKEN BOW', 4230, '34.02570', '-94.73630'), ('EAGLETOWN', None, '34.03000', '-94.57000'), ('GARVIN', 143, '33.95480', '-94.94130'), ('GLOVER', None, '34.07000', '-94.90000'), ('HARRIS', None, '33.75000', '-94.73000'), ('HAWORTH', 354, '33.84420', '-94.65480'), ('HOCHATOWN', None, '34.20000', '-94.67000'), ('IDABEL', 6952, '33.90200', '-94.81880'), ('MILLERTON', 359, '33.98470', '-95.01510'), ('PICKENS', None, '34.40000', '-95.03000'), ('RINGOLD', None, '34.21700', '-95.13000'), ('RUFE', None, '34.12000', '-95.15000'), ('SMITHVILLE', 123, '34.46810', '-94.64610'), ('TOM', None, '33.73000', '-94.57000'), ('VALLIANT', 771, '34.00490', '-95.08970'), ('WATSON', None, '34.43000', '-94.55000'), ('WRIGHT CITY', 848, '34.06370', '-95.00740')], 'partOfState': 'SOUTHEAST', 'wfo': 'SHV'}, -'OKZ076': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('POTEAU', 7939, '35.05360', '-94.62330'), ('OCTAVIA', None, '34.52670', '-94.70280'), ('BIG CEDAR', None, '34.64580', '-94.64860'), ('MUSE', None, '34.67190', '-94.76250'), ('WHITESBORO', None, '34.69250', '-94.88500'), ('TALIHINA', 1211, '34.75140', '-95.04780'), ('HODGEN', None, '34.84170', '-94.63110'), ('SUMMERFIELD', None, '34.89860', '-94.86580'), ('HEAVENER', 3201, '34.88920', '-94.60060'), ('FANSHAWE', 384, '34.95080', '-94.90810'), ('HOWE', 697, '34.95110', '-94.63690'), ('WISTER', 1002, '34.96720', '-94.72440'), ('SHADY POINT', 848, '35.13000', '-94.65830'), ('CAMERON', 312, '35.13390', '-94.53440'), ('MILTON', None, '35.16170', '-94.86330'), ('PANAMA', 1362, '35.16720', '-94.67220'), ('BOKOSHE', 450, '35.18640', '-94.78560'), ('ROCK ISLAND', 709, '35.18220', '-94.47360'), ('SPIRO', 2227, '35.24110', '-94.61970'), ('POCOLA', 3994, '35.23110', '-94.47780'), ('SCULLYVILLE', None, '35.25000', '-94.57000'), ('BRADEN', None, '35.28420', '-94.50110'), ('COWLINGTON', 133, '35.27530', '-94.72830'), ('ARKOMA', 2180, '35.35440', '-94.44390'), ('HONOBIA', None, '34.53890', '-94.93720')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKZ075': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('WILBURTON', 2972, '34.91860', '-95.30890'), ('YANUSH', None, '34.70970', '-95.31360'), ('HIGGINS', None, '34.81140', '-95.43330'), ('BENGAL', None, '34.83280', '-95.06170'), ('DAMON', None, '34.85500', '-95.30750'), ('GOWEN', None, '34.88140', '-95.47670'), ('PANOLA', None, '34.92860', '-95.21310'), ('RED OAK', 581, '34.95080', '-95.08000')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'OKZ074': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MCCURTAIN', 466, '35.14970', '-94.97050'), ('STIGLER', 2731, '35.25360', '-95.12280'), ('LEQUIRE', None, '35.10440', '-95.10720'), ('LEWISVILLE', None, '35.12000', '-95.27670'), ('KINTA', 243, '35.11920', '-95.23750'), ('MC CURTAIN', None, '35.15000', '-94.97000'), ('ENTERPRISE', None, '35.22970', '-95.37970'), ('WHITEFIELD', 231, '35.25250', '-95.23720'), ('KEOTA', 517, '35.25560', '-94.92140'), ('KANIMA', None, '35.28000', '-95.02000'), ('TAMAHA', 198, '35.39610', '-94.98330')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'MSZ039': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BROOKSVILLE', 1182, '33.23260', '-88.58260'), ('MACON', 2461, '33.11490', '-88.56120'), ('SHUQUALAK', 562, '32.97940', '-88.56870')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSZ038': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('LOUISVILLE', 7006, '33.12280', '-89.05460'), ('NOXAPATER', 419, '32.99280', '-89.06350')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'HIZ007': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('ANAEHOOMALU', None, '19.91690', '-155.88950'), ('CAPTAIN COOK', 3206, '19.49610', '-155.92100'), ('HOLUALOA', 6107, '19.62750', '-155.95110'), ('HONALO', 1987, '19.54580', '-155.93190'), ('HONAUNAU', None, '19.42580', '-155.91210'), ('HONOKOHAU-BIG ISLAND', None, '19.67470', '-156.02400'), ('HOOKENA', None, '19.38340', '-155.89890'), ('HOOPULA', None, '19.20020', '-155.90630'), ('KAHALUU-BIG ISLAND', None, '19.58800', '-155.97100'), ('KAILUA-KONA', None, '19.64230', '-155.99390'), ('KAINALIU', None, '19.53510', '-155.92790'), ('KALAOA', 6794, '19.72810', '-155.98590'), ('KAPAA BEACH PARK', None, '20.20650', '-155.90470'), ('KAPALAOA', None, '19.91230', '-155.89790'), ('KAUPULEHU', None, '19.83390', '-155.98760'), ('KAWAIHAE', None, '20.04150', '-155.83070'), ('KEALAKEKUA', 1645, '19.52020', '-155.92270'), ('KEAMUKU', None, '19.84120', '-155.72030'), ('KEAUHOU', None, '19.56550', '-155.96460'), ('KEAWAIKI', None, '19.89100', '-155.90590'), ('KEEI', None, '19.46260', '-155.92740'), ('KEKAHA KAI S.P.', None, '19.77880', '-156.02910'), ('KEOKEA-BIG ISLAND', None, '19.42130', '-155.88360'), ('KIHOLO', None, '19.85710', '-155.92570'), ('KUKIO', None, '19.82010', '-156.00110'), ('LAHUIPUAA', None, '19.94450', '-155.87010'), ('MAHAIULA', None, '19.78690', '-156.03870'), ('MAHUKONA', None, '20.18710', '-155.90260'), ('MILOLII', None, '19.18940', '-155.90880'), ('NAPOOPOO', None, '19.47640', '-155.92100'), ('OHIA MILL', None, '19.22690', '-155.86410'), ('PAPA', None, '19.20970', '-155.86980'), ('PUAKO', 429, '19.97380', '-155.84390'), ('PUUANAHULU', None, '19.81770', '-155.84630'), ('PUUOPELU', None, '20.02220', '-155.68510'), ('SADDLE ROAD JUNCTION', None, '19.93850', '-155.68960'), ('WAIKI', None, '19.87760', '-155.66390'), ('WAIKOLOA', None, '19.93930', '-155.79120'), ('WAIKUI', None, '20.02500', '-155.82360'), ('WELIWELI', None, '19.90120', '-155.90520')], 'partOfState': '', 'wfo': 'HFO'}, -'GAZ091': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BUENA VISTA', 1664, '32.31840', '-84.51760')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'VAZ090': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BUSCH GARDENS', None, '37.22910', '-76.63640'), ('CARVER GARDENS', None, '37.25080', '-76.65890'), ('CENTERVILLE', None, '37.31640', '-76.78950'), ('CHRISTENSONS CORNER', None, '37.38780', '-76.70890'), ('CROAKER', None, '37.39670', '-76.75310'), ('DIASCUND', None, '37.39420', '-76.87080'), ('EWELL', None, '37.32890', '-76.74250'), ('FIVE FORKS', None, '37.25200', '-76.76550'), ('FIVE FORKS', None, '37.25200', '-76.76550'), ('GOVERNORS LAND', None, '37.24920', '-76.83020'), ('GROVE', None, '37.22972', '-76.62722'), ('JAMESTOWN', None, '37.22000', '-76.76000'), ('KINGS CORNER', None, '37.40090', '-76.87380'), ('KINGS POINT', None, '37.24382', '-76.70546'), ('LIGHTFOOT', None, '37.34000', '-76.75440'), ('MOUNT AIRY', None, '37.35110', '-76.91830'), ('NORGE', None, '37.36800', '-76.77080'), ('TOANO', None, '37.37920', '-76.80300'), ('WARREN MILL', None, '37.37280', '-76.84110'), ('WILLIAMSBURG', 11998, '37.27000', '-76.70690'), ('WILLIAMSBURG AIRPORT', None, '37.24040', '-76.71820'), ('YORK RIVER STATE PARK', None, '37.41410', '-76.71420')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAZ091': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARLOWS CORNER', None, '37.35900', '-76.71670'), ('CAMP PEARY', None, '37.32150', '-76.66370'), ('DARE', None, '37.16900', '-76.43830'), ('GRAFTON', None, '37.16570', '-76.46680'), ('HARRIS GROVE', None, '37.19417', '-76.48222'), ('HORNSBYVILLE', None, '37.19640', '-76.46860'), ('LACKEY', None, '37.23210', '-76.54790'), ('MESSICK', None, '37.12070', '-76.34550'), ('OAKTREE', None, '37.33330', '-76.70500'), ('PLUM TREE ISLAND REFUGE', None, '37.13280', '-76.32910'), ('POQUOSON', 11566, '37.13170', '-76.38340'), ('QUEENS LAKE', None, '37.29028', '-76.65806'), ('SEAFORD', None, '37.19790', '-76.43240'), ('SKIMINO', None, '37.34690', '-76.70500'), ('TABB', None, '37.13010', '-76.45730'), ('U.S. NAVAL WEAPONS STATIO', None, '37.26770', '-76.57510'), ('WATER COUNTRY U.S.A.', None, '37.26200', '-76.63850'), ('YORK TERRACE', None, '37.26280', '-76.66170'), ('YORKTOWN', 203, '37.23450', '-76.50720')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAZ092': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADAMS GROVE', None, '36.69310', '-77.38600'), ('BERLIN', None, '36.85750', '-76.97750'), ('BOYKINS', 620, '36.57720', '-77.19890'), ('BRANCHVILLE', 123, '36.56970', '-77.25010'), ('BRANCHVILLE', 123, '36.56910', '-77.24930'), ('BURDETTE', None, '36.76780', '-76.89460'), ('CAPRON', 167, '36.71060', '-77.20200'), ('CAPRON', 167, '36.70940', '-77.20130'), ('COURTLAND', 1270, '36.71160', '-77.06290'), ('DORY', None, '36.86100', '-77.04640'), ('DREWRYVILLE', None, '36.71600', '-77.30660'), ('FRANKLIN', 8346, '36.68080', '-76.93600'), ('GREEN PLAIN', None, '36.69670', '-77.45220'), ('HANDSOM', None, '36.64210', '-77.03050'), ('HUNTERDALE', None, '36.70140', '-76.96140'), ('IVOR', 320, '36.90490', '-76.89940'), ('JOYNER', None, '36.77900', '-77.25210'), ('LITTLE TEXAS', None, '36.60190', '-77.33970'), ('MANRY', None, '36.89190', '-77.03520'), ('NEWSOMS', 282, '36.62760', '-77.12490'), ('RIVERDALE', None, '36.56110', '-76.96000'), ('SEBRELL', None, '36.78460', '-77.12660'), ('SEDLEY', None, '36.77400', '-76.98420'), ('SHILOH', None, '36.60940', '-77.20000'), ('STORY', None, '36.70490', '-77.01130'), ('SUNBEAM', None, '36.58770', '-77.02800'), ('VICKSVILLE', None, '36.81310', '-77.02230'), ('WORRELL', None, '36.72510', '-77.21650')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'HIZ006': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('HULOPOE BAY', None, '20.74290', '-156.89580'), ('KAHOKUNUI', None, '20.90540', '-156.88880'), ('KAUMALAPAU', None, '20.79030', '-156.99370'), ('KAUNOLU VILLAGE', None, '20.73650', '-156.96510'), ('KEOMUKU VILLAGE', None, '20.85340', '-156.83040'), ('KOELE', None, '20.83920', '-156.92100'), ('LALAKOA', None, '20.82070', '-156.91860'), ('LANAI AIRPORT', None, '20.79330', '-156.95250'), ('LANAI CITY', 3164, '20.83270', '-156.92650'), ('LOPA', None, '20.80270', '-156.81380'), ('MAKAIWA BEACH', None, '20.92580', '-156.96350'), ('MAUNALEI', None, '20.90150', '-156.88180'), ('NAHA', None, '20.78060', '-156.82910'), ('SHIPWRECK BEACH', None, '20.91980', '-156.91030')], 'partOfState': '', 'wfo': 'HFO'}, -'VAZ094': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEACONSDALE', None, '37.06420', '-76.47310'), ('BUCKROE BEACH', None, '37.04280', '-76.29360'), ('DENBIGH', None, '37.12440', '-76.53200'), ('FORT EUSTIS', None, '37.12630', '-76.59570'), ('FORT MONROE', None, '37.00580', '-76.30720'), ('FOX HILL', None, '37.08080', '-76.29000'), ('GRAND VIEW', None, '37.07840', '-76.27730'), ('HALLWOOD', 290, '37.06600', '-76.29640'), ('HAMPTON', 146437, '37.04980', '-76.29500'), ('HILTON VILLAGE', None, '37.03010', '-76.46190'), ('LANGLEY AFB', None, '37.08770', '-76.36700'), ('LANGLEY VIEW', None, '37.07000', '-76.36460'), ('LEE HALL', None, '37.19310', '-76.57300'), ('MENCHVILLE', None, '37.09240', '-76.52760'), ('NEWPORT NEWS', 180150, '37.07590', '-76.51420'), ('NEWPORT NEWS GOLF COURSE', None, '37.17660', '-76.54920'), ('NORTHAMPTON', None, '37.04500', '-76.42420'), ('ORIANA', None, '37.13360', '-76.52530'), ('OYSTER POINT', None, '37.10530', '-76.50780'), ('PATRICK HENRY FIELD', None, '37.12950', '-76.49640'), ('PHOEBUS', None, '37.02140', '-76.31830'), ('RALEIGH TERRACE', None, '37.00420', '-76.36810')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'CAZ099': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BORON', 2025, '35.00490', '-117.65030'), ('CALIFORNIA CITY', 8385, '35.18930', '-117.81150'), ('EDWARDS AFB', 5909, '34.90960', '-117.93460'), ('MOJAVE', 3836, '35.05210', '-118.17980'), ('NORTH EDWARDS', 1227, '35.01910', '-117.83030'), ('RANDSBURG', 77, '35.36840', '-117.65570'), ('ROSAMOND', 14349, '34.86020', '-118.19950')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'VAZ096': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHUCKATUCK', None, '36.86140', '-76.58010'), ('CLEOPUS', None, '36.59280', '-76.83030'), ('CRITTENDEN', None, '36.91010', '-76.49590'), ('DEANES', None, '36.83940', '-76.46280'), ('DOWNTOWN SUFFOLK', None, '36.72440', '-76.58660'), ('DRIVER', None, '36.82310', '-76.50280'), ('ELWOOD', None, '36.67610', '-76.82420'), ('HOBSON', None, '36.89470', '-76.51220'), ('HOLLAND', None, '36.68110', '-76.78060'), ('HUNTERSVILLE', None, '36.87420', '-76.43170'), ('KILBY', None, '36.72480', '-76.63330'), ('KINGS FORK', None, '36.78180', '-76.62700'), ('LUMMIS', None, '36.69500', '-76.70140'), ('MAGNOLIA', None, '36.74580', '-76.54080'), ('NURNEY', None, '36.64220', '-76.61420'), ('SAUNDERS', None, '36.64000', '-76.57580'), ('SOMERTON', None, '36.56810', '-76.75170'), ('SUFFOLK AIRPORT', None, '36.68330', '-76.60190'), ('WHALEYVILLE', None, '36.58820', '-76.68480'), ('WILLS CORNER', None, '36.88060', '-76.58220'), ('WILROY', None, '36.78640', '-76.53390')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAZ097': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOWERS HILL', None, '36.78410', '-76.42340'), ('CHESAPEAKE AIRPORT', None, '36.66310', '-76.32230'), ('DEEP CREEK', None, '36.74070', '-76.34440'), ('FENTRESS', None, '36.69800', '-76.18420'), ('GREAT BRIDGE', None, '36.71280', '-76.23820'), ('HERBERTS CORNER', None, '36.72750', '-76.30250'), ('HICKORY', None, '36.66400', '-76.22590'), ('MOUNT PLEASANT', None, '36.71150', '-76.13420'), ('NORTHWEST', None, '36.56370', '-76.19940'), ('PORTLOCK', None, '36.78500', '-76.27780'), ('SOUTH NORFOLK', None, '36.80000', '-76.28330'), ('WESTERN BRANCH', None, '36.82520', '-76.40650')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAZ098': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BACK BAY', None, '36.65360', '-76.03170'), ('BAYSIDE', None, '36.88880', '-76.13340'), ('CAPE HENRY', None, '36.92960', '-76.01310'), ('DAM NECK', None, '36.78280', '-75.96550'), ('GALLUPS CORNER', None, '36.79970', '-76.12970'), ('GREENBRIER', None, '36.78150', '-76.20990'), ('KEMPSVILLE', None, '36.82730', '-76.16000'), ('LONDON BRIDGE', None, '36.84170', '-76.05000'), ('LYNNHAVEN', None, '36.83600', '-76.05950'), ('MACONS CORNER', None, '36.80000', '-76.00440'), ('MUNDEN', None, '36.57770', '-76.02720'), ('NORTH VIRGINIA BEACH', None, '36.89070', '-75.98800'), ('OCEANA', None, '36.84190', '-76.01330'), ('OCEANA NAS', None, '36.81520', '-76.02780'), ('PRINCESS ANNE', None, '36.75180', '-76.05390'), ('PRINCESS ANNE PLAZA', None, '36.83680', '-76.09150'), ('PUNGO', None, '36.72400', '-76.01780'), ('RUDEE HEIGHTS', None, '36.82690', '-75.97690'), ('SANDBRIDGE BEACH', None, '36.72280', '-75.93540'), ('SIGMA', None, '36.73170', '-75.98640'), ('VIRGINIA BEACH OCEANFRONT', None, '36.84950', '-75.97730')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAZ099': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ACCOMAC', 547, '37.71850', '-75.66770'), ('ASSAWOMAN', None, '37.87400', '-75.52290'), ('ATLANTIC', None, '37.90330', '-75.50620'), ('BLOXOM', 395, '37.83080', '-75.62020'), ('CHINCOTEAGUE', 4317, '37.94930', '-75.35530'), ('CLAM', None, '37.81300', '-75.67150'), ('GREENBACKVILLE', None, '38.00140', '-75.41530'), ('GUILFORD', None, '37.82450', '-75.65230'), ('HALLWOOD', 290, '37.87780', '-75.58950'), ('HARBORTON', None, '37.66000', '-75.84000'), ('HORNTOWN', None, '37.97020', '-75.46310'), ('KELLER', 173, '37.62040', '-75.76450'), ('LOCUSTVILLE', None, '37.65340', '-75.67870'), ('MAPPSVILLE', None, '37.84480', '-75.56780'), ('MELFA', 450, '37.64920', '-75.74080'), ('MODEST TOWN', None, '37.81190', '-75.57320'), ('NELSONIA', None, '37.81960', '-75.58780'), ('NEW CHURCH', None, '37.97910', '-75.53150'), ('OAK HALL', None, '37.93650', '-75.54610'), ('ONANCOCK', 1525, '37.70990', '-75.74430'), ('ONLEY', 496, '37.69060', '-75.71930'), ('PAINTER', 246, '37.58550', '-75.78380'), ('PARKSLEY', 837, '37.78580', '-75.65400'), ('PUNGOTEAGUE', None, '37.62990', '-75.81350'), ('QUINBY', None, '37.55630', '-75.73170'), ('SANFORD', None, '37.92200', '-75.66870'), ('SAXIS', 337, '37.92540', '-75.72360'), ('TANGIER', 604, '37.82500', '-75.99340'), ('TASLEY', None, '37.70870', '-75.70520'), ('TEMPERANCEVILLE', None, '37.89340', '-75.54890'), ('WACHAPREAGUE', 236, '37.60620', '-75.68980'), ('WALLOPS ISLAND', None, '37.84390', '-75.47940')], 'partOfState': '', 'wfo': 'AKQ'}, -'WYZ099': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CLEARMONT', 115, '44.64030', '-106.38050'), ('DAYTON', 678, '44.87290', '-107.26340'), ('RANCHESTER', 701, '44.90730', '-107.16410'), ('SHERIDAN', 15804, '44.79210', '-106.95710')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BYZ'}, -'CAZ098': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('INYOKERN', 984, '35.64680', '-117.81200'), ('RIDGECREST', 24927, '35.63100', '-117.66110')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'GAZ099': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALINE', None, '32.36080', '-82.16060'), ('CANOE', None, '32.41940', '-82.14140'), ('EXCELSIOR', None, '32.31330', '-81.96610'), ('METTER', 3879, '32.39690', '-82.06030'), ('OLIFFTOWN', None, '32.49440', '-82.09750'), ('PARISH', None, '32.39390', '-81.98890'), ('PULASKI', 261, '32.39000', '-81.95690'), ('SHAMROCK', None, '32.40280', '-82.08420'), ('UNION', None, '32.48250', '-82.05390')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'KSZ040': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BALDWIN CITY', 3400, '38.77500', '-95.18000'), ('CLINTON', None, '38.91170', '-95.39030'), ('CLINTON LAKE', None, '38.92000', '-95.38000'), ('EUDORA', 4307, '38.94330', '-95.09830'), ('LAWRENCE', 80098, '38.97170', '-95.23500'), ('LECOMPTON', 608, '39.04450', '-95.39450')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'TXZ109': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [("MILLER'S COVE", 120, '33.15570', '-95.11560'), ('MOUNT PLEASANT', 13935, '33.16550', '-94.97580'), ('TALCO', 570, '33.36200', '-95.10390'), ('WINFIELD', 499, '33.16650', '-95.10930')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ108': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('MOUNT VERNON', 2286, '33.17270', '-95.22180')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ105': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CADDO MILLS', 1149, '33.06570', '-96.22690'), ('CAMPBELL', 734, '33.14790', '-95.95500'), ('CELESTE', 817, '33.29420', '-96.19410'), ('COMMERCE', 7669, '33.23820', '-95.90080'), ('GREENVILLE', 23960, '33.11690', '-96.10120'), ('LONE OAK', 521, '32.99630', '-95.94150'), ('NEYLANDVILLE', 56, '33.19960', '-96.00400'), ('QUINLAN', 1370, '32.90870', '-96.13250'), ('WEST TAWAKONI', 1462, '32.90180', '-96.02090'), ('WOLFE CITY', 1566, '33.36980', '-96.06770')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ104': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALLEN', 43554, '33.10970', '-96.66950'), ('ANNA', 1225, '33.35280', '-96.54980'), ('BLUE RIDGE', 672, '33.29840', '-96.39990'), ('CELINA', 1861, '33.32000', '-96.78380'), ('FAIRVIEW', 2644, '33.14220', '-96.62490'), ('FARMERSVILLE', 3118, '33.16160', '-96.35760'), ('FRISCO', 33714, '33.14450', '-96.81300'), ('JOSEPHINE', 594, '33.06160', '-96.31630'), ('LAVON', 387, '33.02670', '-96.43820'), ('LOWRY CROSSING', 1229, '33.16790', '-96.54450'), ('LUCAS', 2890, '33.10140', '-96.57770'), ('MCKINNEY', 54369, '33.20090', '-96.65490'), ('MELISSA', 1350, '33.28260', '-96.57720'), ('MURPHY', 3099, '33.01280', '-96.60740'), ('NEVADA', 563, '33.03910', '-96.37170'), ('NEW HOPE', 662, '33.21240', '-96.56460'), ('PARKER', 1379, '33.05400', '-96.63640'), ('PLANO', 222030, '33.04620', '-96.74670'), ('PRINCETON', 3477, '33.18510', '-96.50410'), ('PROSPER', 2097, '33.24020', '-96.78590'), ('ST. PAUL', 542, '33.04620', '-96.54860'), ('WESTMINSTER', 390, '33.35890', '-96.45790'), ('WESTON', 635, '33.32820', '-96.64410'), ('WYLIE', 15132, '33.04260', '-96.51390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TNZ011': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BYRDSTOWN', 903, '36.57400', '-85.13330')], 'partOfState': '', 'wfo': 'OHX'}, -'TXZ106': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COOPER', 2150, '33.37180', '-95.69050'), ('PECAN GAP', 214, '33.43660', '-95.85160')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'TXZ101': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRYSON', 528, '33.15970', '-98.38660'), ('JACKSBORO', 4533, '33.22310', '-98.15410'), ('SHANNON', None, '33.47000', '-98.27000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ100': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRAHAM', 8716, '33.10070', '-98.57740'), ('NEWCASTLE', 575, '33.19400', '-98.74400'), ('OLNEY', 3396, '33.36440', '-98.75810')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ103': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARGYLE', 2365, '33.11050', '-97.17990'), ('AUBREY', 1500, '33.30390', '-96.98310'), ('BARTONVILLE', 1093, '33.08870', '-97.15640'), ('COPPER CANYON', 1216, '33.09710', '-97.09670'), ('CORINTH', 11325, '33.14380', '-97.06470'), ('CORRAL CITY', 89, '33.09930', '-97.22620'), ('CROSS ROADS', 603, '33.23060', '-96.99410'), ('DENTON', 80537, '33.21420', '-97.13090'), ('DOUBLE OAK', 2179, '33.06410', '-97.11260'), ('FLOWER MOUND', 50702, '33.02830', '-97.09270'), ('HACKBERRY', 544, '33.15000', '-96.91840'), ('HEBRON', 874, '33.04230', '-96.89930'), ('HICKORY CREEK', 2078, '33.10930', '-97.02820'), ('HIGHLAND VILLAGE', 12173, '33.08810', '-97.05560'), ('JUSTIN', 1891, '33.08660', '-97.29990'), ('KRUGERVILLE', 903, '33.28070', '-96.99060'), ('KRUM', 1979, '33.26560', '-97.22960'), ('LAKE DALLAS', 6166, '33.12650', '-97.02470'), ('LAKEWOOD VILLAGE', 342, '33.14040', '-96.97650'), ('LEWISVILLE', 77737, '33.04170', '-96.98290'), ('LINCOLN PARK', 517, '33.22260', '-96.97240'), ('LITTLE ELM', 3646, '33.16380', '-96.93000'), ('MARSHALL CREEK', 431, '33.01760', '-97.20830'), ('NORTHLAKE', 921, '33.07400', '-97.25730'), ('OAK POINT', 1747, '33.18220', '-96.99490'), ('PILOT POINT', 3538, '33.39850', '-96.95510'), ('PONDER', 507, '33.17910', '-97.28760'), ('ROANOKE', 2810, '33.00210', '-97.23230'), ('SANGER', 4534, '33.36070', '-97.17680'), ('SHADY SHORES', 1461, '33.16270', '-97.04430'), ('THE COLONY', 26531, '33.09090', '-96.88710'), ('TROPHY CLUB', 6350, '33.00040', '-97.19290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ102': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALVORD', 1007, '33.35890', '-97.69500'), ('AURORA', 853, '33.05820', '-97.51590'), ('BOYD', 1099, '33.08050', '-97.56160'), ('BRIDGEPORT', 4309, '33.20760', '-97.75720'), ('CHICO', 947, '33.29420', '-97.79920'), ('DECATUR', 5201, '33.23330', '-97.59140'), ('LAKE BRIDGEPORT', 372, '33.20710', '-97.83060'), ('RHOME', 551, '33.05100', '-97.46730'), ('RUNAWAY BAY', 1104, '33.17490', '-97.86650')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'MSZ031': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ARTESIA', 498, '33.41700', '-88.64290'), ('CALEDONIA', 1015, '33.68340', '-88.32600'), ('COLUMBUS', 25944, '33.50500', '-88.40420'), ('COLUMBUS AFB', 2060, '33.63450', '-88.44980'), ('CRAWFORD', 655, '33.30270', '-88.62340'), ('NEW HOPE', 1964, '33.44650', '-88.32490')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'MSZ030': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('WEST POINT', 12145, '33.60650', '-88.64460')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'MSZ033': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('STARKVILLE', 21869, '33.45670', '-88.82220'), ('STURGIS', 206, '33.34390', '-89.04660')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'KSZ024': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CIRCLEVILLE', 185, '39.50830', '-95.85830'), ('DELIA', 179, '39.24060', '-95.96670'), ('DENISON', 231, '39.39170', '-95.62780'), ('HOLTON', 3353, '39.46530', '-95.73610'), ('HOYT', 571, '39.24780', '-95.70610'), ('MAYETTA', 312, '39.33890', '-95.72220'), ('NETAWAKA', 170, '39.60280', '-95.71810'), ('POTAWATOMI RESERVATION', None, '39.33000', '-95.85000'), ('SOLDIER', 122, '39.53610', '-95.96390'), ('WHITING', 206, '39.58970', '-95.61250')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'MSZ032': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ACKERMAN', 1696, '33.31070', '-89.17190'), ('FRENCH CAMP', 393, '33.29210', '-89.39850'), ('WEIR', 553, '33.26330', '-89.28940')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSZ035': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BELZONI', 2663, '33.17930', '-90.48550'), ('ISOLA', 768, '33.26250', '-90.59170'), ('LOUISE', 315, '32.98260', '-90.59120'), ('SILVER CITY', 337, '33.09630', '-90.49720')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSZ034': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ARCOLA', 563, '33.27110', '-90.88030'), ('GREENVILLE', 41633, '33.38540', '-91.05190'), ('HOLLANDALE', 3437, '33.17440', '-90.85320'), ('LELAND', 5502, '33.40470', '-90.89990'), ('METCALFE', 1109, '33.45010', '-91.00230')], 'partOfState': 'NORTHWEST', 'wfo': 'JAN'}, -'MSZ037': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ETHEL', 452, '33.12190', '-89.46480'), ('KOSCIUSKO', 7372, '33.05800', '-89.58820'), ('MCCOOL', 182, '33.19830', '-89.34300'), ('SALLIS', 114, '33.02170', '-89.76400')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSZ036': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CRUGER', 449, '33.32380', '-90.23490'), ('DURANT', 2932, '33.08020', '-89.85650'), ('GOODMAN', 1252, '32.96790', '-89.91250'), ('LEXINGTON', 2025, '33.11680', '-90.04920'), ('PICKENS', 1325, '32.89090', '-89.96840'), ('TCHULA', 2332, '33.18310', '-90.22260'), ('WEST', 220, '33.19810', '-89.78140')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'KSZ025': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARRINGTON', None, '39.46670', '-95.53330'), ('ATCHISON', 10232, '39.56150', '-95.13340'), ('CUMMINGS', None, '39.46670', '-95.25000'), ('EFFINGHAM', 588, '39.52230', '-95.39820'), ('LANCASTER', 291, '39.57180', '-95.30340'), ('MUSCOTAH', 200, '39.55330', '-95.52050'), ('NORTONVILLE', 620, '39.41590', '-95.33110')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'GAZ065': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AUGUSTA', None, '33.45730', '-81.99500'), ('EAST BOUNDARY', None, '33.45990', '-81.94170'), ('FORT GORDON', None, '33.41710', '-82.14090'), ('HEPHZIBAH', 3880, '33.28730', '-82.10600'), ('SOUTH AUGUSTA', None, '33.41780', '-82.04830'), ('WEST AUGUSTA', None, '33.48680', '-82.05840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'PAZ029': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALLENPORT', 549, '40.09090', '-79.85690'), ('AMITY', None, '40.05000', '-80.20000'), ('AVELLA', None, '40.28000', '-80.47000'), ('BAIDLAND', 1576, '40.18910', '-79.95510'), ('BEALLSVILLE', 511, '40.05860', '-80.03310'), ('BENTLEYVILLE', 2502, '40.11780', '-80.00360'), ('BURGETTSTOWN', 1576, '40.38120', '-80.39220'), ('CALIFORNIA', 5274, '40.06620', '-79.91080'), ('CANONSBURG', 8607, '40.26380', '-80.18680'), ('CECIL-BISHOP', 2585, '40.31640', '-80.19100'), ('CENTERVILLE', 3390, '40.03070', '-79.95930'), ('CHARLEROI', 4871, '40.13920', '-79.90050'), ('CLAYSVILLE', 724, '40.12060', '-80.41320'), ('COKEBURG', 705, '40.09840', '-80.06630'), ('DEEMSTON', 809, '40.03210', '-80.02670'), ('DONORA', 5653, '40.17830', '-79.86340'), ('EAST WASHINGTON', 1930, '40.17370', '-80.23290'), ('EIGHTY FOUR', None, '40.18000', '-80.13000'), ('ELCO', 362, '40.08500', '-79.88310'), ('ELLSWORTH', 1083, '40.10800', '-80.02210'), ('FINLEYVILLE', 459, '40.25290', '-80.00220'), ('FREDERICKTOWN-MILLSBORO', 1094, '39.99740', '-80.00510'), ('GASTONVILLE', 3002, '40.26440', '-80.00730'), ('GREEN HILLS', 18, '40.11560', '-80.30880'), ('HICKORY', None, '40.30000', '-80.32000'), ('HOUSTON', 1314, '40.25000', '-80.21180'), ('LONG BRANCH', 539, '40.10270', '-79.87890'), ('MARIANNA', 626, '40.01120', '-80.11440'), ('MCDONALD', 2281, '40.37020', '-80.23250'), ('MCGOVERN', 2538, '40.24030', '-80.22910'), ('MCMURRAY', 4726, '40.28080', '-80.08830'), ('MONONGAHELA', 4761, '40.19830', '-79.92260'), ('NEW EAGLE', 2262, '40.20620', '-79.95450'), ('NORTH CHARLEROI', 1409, '40.15040', '-79.90840'), ('ROSCOE', 848, '40.07760', '-79.86490'), ('SCENERY HILL', None, '40.08000', '-80.07000'), ('TAYLORSTOWN', None, '40.17000', '-80.38000'), ('THOMPSONVILLE', 3592, '40.28130', '-80.11990'), ('TWILIGHT', 241, '40.11430', '-79.89050'), ('WASHINGTON', 15268, '40.17430', '-80.24740'), ('WEST ALEXANDER', 320, '40.10410', '-80.50800'), ('WEST BROWNSVILLE', 1075, '40.03130', '-79.89200'), ('WEST FINLEY', None, '40.00000', '-80.47000'), ('WEST MIDDLETOWN', 144, '40.24510', '-80.42550'), ('WICKERHAM MANOR-FISHER', 1783, '40.17540', '-79.90450'), ('WOLFDALE', 2873, '40.19870', '-80.29970')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'PAZ028': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLACKLOG', None, '40.42000', '-77.68000'), ('HONEY GROVE', None, '40.42000', '-77.55000'), ('MCALISTERVILLE', 765, '40.63000', '-77.28000'), ('MIFFLIN', 627, '40.56780', '-77.40480'), ('MIFFLINTOWN', 861, '40.57110', '-77.39510'), ('PERULACK', None, '40.34000', '-77.66000'), ('PORT ROYAL', 977, '40.53390', '-77.39090'), ('RICHFIELD', 459, '40.69000', '-77.12000'), ('SPRUCE HILL', None, '40.47000', '-77.46000'), ('THOMPSONTOWN', 711, '40.56620', '-77.23530'), ('WALNUT', None, '40.53000', '-77.48000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ027': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALFARATA', None, '40.66000', '-77.48000'), ('ALLENSVILLE', None, '40.53000', '-77.81000'), ('BELLEVILLE', 1386, '40.60280', '-77.72570'), ('BELLTOWN', None, '40.70000', '-77.40000'), ('BURNHAM', 2144, '40.63660', '-77.56320'), ('LEWISTOWN', 8998, '40.59730', '-77.57350'), ('MCVEYTOWN', 405, '40.49810', '-77.74130'), ('MILROY', 1386, '40.71480', '-77.58690'), ('NEWTON HAMILTON', 272, '40.39280', '-77.83540'), ('REEDS GAP SP', None, '40.73000', '-77.47000'), ('REEDSVILLE', 858, '40.65930', '-77.60200'), ('SEVEN MOUNTAINS', None, '40.74000', '-77.62000'), ('STRODES MILLS', None, '40.55000', '-77.66000'), ('YEAGERTOWN', 1035, '40.64090', '-77.58040')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ026': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALEXANDRIA', 401, '40.55890', '-78.10010'), ('BROAD TOP CITY', 384, '40.20150', '-78.14070'), ('CASSVILLE', 152, '40.29370', '-78.02780'), ('COALMONT', 128, '40.21100', '-78.20070'), ('ENTRIKEN', None, '40.34000', '-78.18000'), ('FRANKLINVILLE', None, '40.64000', '-78.06000'), ('HUNTINGDON', 6918, '40.49650', '-78.01030'), ('MAPLETON', 473, '40.39290', '-77.93950'), ('MARKLESBURG', 216, '40.38400', '-78.16930'), ('MCALEVYS FORT', None, '40.64000', '-77.82000'), ('MILL CREEK', 351, '40.43740', '-77.92940'), ('MOUNT UNION', 2504, '40.38490', '-77.88200'), ('ORBISONIA', 425, '40.24330', '-77.89360'), ('PETERSBURG', 455, '40.57360', '-78.04960'), ('RAYSTOWN DAM', None, '40.45000', '-78.01000'), ('SALTILLO', 343, '40.21180', '-78.00780'), ('SHADE GAP', 97, '40.18000', '-77.86570'), ('SHIRLEYSBURG', 140, '40.29690', '-77.87740'), ('SHY BEAVER', None, '40.29000', '-78.21000'), ('SPRUCE CREEK', None, '40.62000', '-78.14000'), ('THREE SPRINGS', 445, '40.19520', '-77.98390'), ('TROUGH CREEK SP', None, '40.34000', '-78.12000'), ('WARRIORS MARK', None, '40.70000', '-78.11000'), ('WHIPPLE DAM SP', None, '40.69000', '-77.84000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ025': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALTOONA', 49523, '40.50780', '-78.40130'), ('BALD EAGLE', None, '40.73000', '-78.17000'), ('BELLWOOD', 2016, '40.60110', '-78.33420'), ('CANOE CREEK SP', None, '40.50000', '-78.32000'), ('CLAYSBURG', 1503, '40.29210', '-78.44960'), ('DUNCANSVILLE', 1238, '40.42630', '-78.42960'), ('HOLLIDAYSBURG', 5368, '40.43010', '-78.39310'), ('HORSESHOE CURVE', None, '40.50000', '-78.47000'), ('LAKEMONT', None, '40.47000', '-78.38000'), ('MARTINSBURG', 2236, '40.31030', '-78.32450'), ('NEWRY', 245, '40.39310', '-78.43530'), ('ROARING SPRING', 2418, '40.33370', '-78.39670'), ('ROYER', None, '40.42000', '-78.27000'), ('SINKING VALLEY', None, '40.57000', '-78.27000'), ('SKI GAP', None, '40.32000', '-78.52000'), ('TIPTON', 1225, '40.63630', '-78.29860'), ('TUNNELHILL', 409, '40.47390', '-78.54340'), ('TYRONE', 5528, '40.67680', '-78.24620'), ('WILLIAMSBURG', 1345, '40.46390', '-78.20570')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ024': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ASHVILLE', 279, '40.55910', '-78.54740'), ('BARNESBORO', None, '40.66630', '-78.78500'), ('BEAVERDALE', None, '40.32290', '-78.69880'), ('BELMONT', 2846, '40.28240', '-78.89170'), ('BELSANO', None, '40.55000', '-78.86000'), ('BLANDBURG', None, '40.69000', '-78.44000'), ('BROWNSTOWN', 883, '40.33290', '-78.93700'), ('CARROLLTOWN', 1049, '40.60420', '-78.70710'), ('CASSANDRA', 136, '40.40810', '-78.64160'), ('CHEST SPRINGS', 110, '40.57870', '-78.61010'), ('COLVER', 1035, '40.54290', '-78.78760'), ('CRESSON', 1631, '40.46260', '-78.58660'), ('DALE', 1503, '40.31180', '-78.90410'), ('DUNLO', None, '40.28000', '-78.73000'), ('EAST CONEMAUGH', 1291, '40.34750', '-78.88610'), ('EBENSBURG', 3091, '40.48860', '-78.72700'), ('ELIM', 4175, '40.29780', '-78.94290'), ('FERNDALE', 1834, '40.28840', '-78.91720'), ('GALLITZIN', 1756, '40.48220', '-78.55600'), ('GEISTOWN', 2555, '40.29380', '-78.87170'), ('HASTINGS', 1398, '40.66490', '-78.70900'), ('JOHNSTOWN', 23906, '40.32540', '-78.91950'), ('LILLY', 948, '40.42390', '-78.62000'), ('LORAIN', 747, '40.29580', '-78.89530'), ('LORETTO', 1190, '40.50870', '-78.63630'), ('NANTY-GLO', 3054, '40.47030', '-78.83490'), ('PATTON', 2023, '40.63270', '-78.64930'), ('PORTAGE', 2837, '40.38680', '-78.67550'), ('PRINCE GALLITZEN SP', None, '40.65000', '-78.57000'), ('SCALP LEVEL', 851, '40.24930', '-78.84390'), ('SIDMAN', None, '40.32330', '-78.76550'), ('SOUTH FORK', 1138, '40.36380', '-78.79160'), ('SPANGLER', None, '40.64520', '-78.77330'), ('SPRING HILL', 970, '40.37110', '-78.66650'), ('SUMMERHILL', 521, '40.37570', '-78.76130'), ('VINCO', 1429, '40.40960', '-78.84220'), ('VINTONDALE', 528, '40.47860', '-78.91250'), ('WESTMONT', 5523, '40.31910', '-78.95230'), ('WILMORE', 252, '40.38610', '-78.71690')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ023': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARMAGH', 131, '40.45320', '-79.03310'), ('BLACK LICK', 1438, '40.46500', '-79.18800'), ('BLAIRSVILLE', 3607, '40.43150', '-79.26010'), ('BOLIVAR', 501, '40.39480', '-79.15210'), ('BRUSH VLY', None, '40.53000', '-79.07000'), ('CHEVY CHASE HEIGHTS', 1511, '40.63900', '-79.14370'), ('CLYMER', 1547, '40.66830', '-79.01400'), ('CREEKSIDE', 323, '40.68000', '-79.19350'), ('ERNEST', 501, '40.67850', '-79.16500'), ('GLEN CAMPBELL', 306, '40.81830', '-78.83050'), ('HOMER CITY', 1844, '40.53960', '-79.15950'), ('INDIANA', 14895, '40.62190', '-79.15580'), ('JACKSONVILLE', 675, '40.54150', '-79.28340'), ('LUCERNE MINES', 951, '40.55440', '-79.15580'), ('MARION CENTER', 451, '40.77020', '-79.04800'), ('PLUMVILLE', 342, '40.79380', '-79.18050'), ('SALTSBURG', 955, '40.48520', '-79.44650'), ('SHELOCTA', 127, '40.65650', '-79.30240'), ('SMICKSBURG', 49, '40.87000', '-79.17180'), ('WEST LEBANON', None, '40.60000', '-79.35000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'PAZ022': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('APOLLO', 1765, '40.58460', '-79.56460'), ('APPLEWOLD', 356, '40.80750', '-79.52230'), ('ATWOOD', 112, '40.74800', '-79.26190'), ('BRADYS BEND', None, '41.00000', '-79.63000'), ('DAYTON', 543, '40.88100', '-79.24180'), ('EAST VANDERGRIFT', 742, '40.59740', '-79.56300'), ('ELDERTON', 358, '40.69410', '-79.34190'), ('FORD CITY', 3451, '40.76820', '-79.53450'), ('FORD CLIFF', 412, '40.75990', '-79.53660'), ('FREEPORT', 1962, '40.68260', '-79.68280'), ('HAWTHORN', 587, '41.02080', '-79.27620'), ('HYDE PARK', 513, '40.63220', '-79.58900'), ('KITTANNING', 4787, '40.82710', '-79.52340'), ('LEECHBURG', 2386, '40.63040', '-79.60280'), ('LENAPE HEIGHTS', 1212, '40.76430', '-79.52080'), ('MANORVILLE', 401, '40.78770', '-79.52110'), ('NORTH APOLLO', 1426, '40.59320', '-79.55710'), ('NORTH VANDERGRIFT-PLEASAN', None, '40.60850', '-79.56440'), ('ORCHARD HILLS', 2152, '40.59300', '-79.54140'), ('PARKER', 799, '41.09200', '-79.68430'), ('RURAL VALLEY', 922, '40.79910', '-79.31470'), ('SOUTH BETHLEHEM', 444, '40.99960', '-79.33950'), ('WEST HILLS', 1229, '40.82790', '-79.54700'), ('WEST KITTANNING', 1199, '40.81190', '-79.53170'), ('WORTHINGTON', 778, '40.83790', '-79.63440')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PBZ'}, -'PAZ021': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ASPINWALL', 2960, '40.49230', '-79.90370'), ('AVALON', 5294, '40.50100', '-80.06870'), ('BALDWIN', 19999, '40.36320', '-79.96610'), ('BELL ACRES', 1382, '40.59210', '-80.17630'), ('BELLEVUE', 8770, '40.49390', '-80.05590'), ('BEN AVON', 1917, '40.50650', '-80.08240'), ('BEN AVON HEIGHTS', 392, '40.51150', '-80.07290'), ('BETHEL PARK', 33556, '40.32360', '-80.03610'), ('BLAWNOX', 1550, '40.49110', '-79.86220'), ('BRACKENRIDGE', 3543, '40.60740', '-79.74210'), ('BRADDOCK', 2912, '40.40200', '-79.86930'), ('BRADDOCK HILLS', 1998, '40.41680', '-79.86340'), ('BRADFORDWOODS', 1149, '40.63580', '-80.08030'), ('BRENTWOOD', 10466, '40.37330', '-79.97600'), ('BRIDGEVILLE', 5341, '40.35660', '-80.10610'), ('CARNEGIE', 8389, '40.40760', '-80.08660'), ('CARNOT-MOON', 10637, '40.51860', '-80.21420'), ('CASTLE SHANNON', 8556, '40.36630', '-80.02020'), ('CHALFANT', 870, '40.40990', '-79.83850'), ('CHESWICK', 1899, '40.54290', '-79.80130'), ('CHURCHILL', 3566, '40.43830', '-79.84070'), ('CLAIRTON', 8491, '40.29650', '-79.88550'), ('CORAOPOLIS', 6131, '40.51410', '-80.16210'), ('CRAFTON', 6706, '40.43330', '-80.07090'), ('CURTISVILLE', 1173, '40.64870', '-79.84960'), ('DORMONT', 9305, '40.39300', '-80.03750'), ('DRAVOSBURG', 2015, '40.35210', '-79.88870'), ('DUQUESNE', 7332, '40.37320', '-79.85080'), ('EAST MCKEESPORT', 2343, '40.38430', '-79.80680'), ('EAST PITTSBURGH', 2017, '40.39720', '-79.83690'), ('EDGEWOOD', 2619, '40.43140', '-79.88370'), ('EDGEWORTH', 1730, '40.55430', '-80.19220'), ('ELIZABETH', 1609, '40.27150', '-79.88650'), ('EMSWORTH', 2598, '40.51060', '-80.09640'), ('ETNA', 3924, '40.49860', '-79.94730'), ('FOREST HILLS', 6831, '40.42480', '-79.85250'), ('FOX CHAPEL', 5436, '40.52540', '-79.88960'), ('FRANKLIN PARK', 11364, '40.59170', '-80.09870'), ('GLASSPORT', 4993, '40.32540', '-79.88660'), ('GLENFIELD', 236, '40.52170', '-80.13210'), ('GREEN TREE', 4719, '40.41850', '-80.05530'), ('HAMPTON TOWNSHIP', 17526, '40.58580', '-79.95500'), ('HARRISON TOWNSHIP', 10934, '40.63660', '-79.71670'), ('HAYSVILLE', 78, '40.52610', '-80.15440'), ('HEIDELBERG', 1225, '40.39140', '-80.09200'), ('HOMESTEAD', 3569, '40.40680', '-79.90980'), ('IMPERIAL-ENLOW', 3514, '40.45340', '-80.24850'), ('INGRAM', 3712, '40.44570', '-80.06840'), ('JEFFERSON', 631, '40.29370', '-79.93220'), ('KENNEDY TOWNSHIP', 7504, '40.47620', '-80.10190'), ('LEETSDALE', 1232, '40.56830', '-80.21480'), ('LIBERTY', 230, '40.32380', '-79.85800'), ('LINCOLN', 1218, '40.29320', '-79.85250'), ('MC KEESPORT', None, '40.33000', '-79.83000'), ('MCCANDLESS TOWNSHIP', 29022, '40.58350', '-80.03000'), ('MCKEES ROCKS', 6622, '40.46930', '-80.06210'), ('MCKEESPORT', 24040, '40.34150', '-79.84430'), ('MILLVALE', 4028, '40.48210', '-79.97440'), ('MOUNT LEBANON', 33017, '40.37400', '-80.04890'), ('MOUNT OLIVER', 3970, '40.41090', '-79.98640'), ('MUNHALL', 12264, '40.39330', '-79.90110'), ('MUNICIPALITY OF MONROEVIL', None, '40.42600', '-79.76090'), ('NORTH BRADDOCK', 6410, '40.40100', '-79.85210'), ('NORTH VERSAILLES', 11125, '40.37980', '-79.80970'), ("O'HARA TOWNSHIP", 8856, '40.49930', '-79.90170'), ('OAKDALE', 1551, '40.39970', '-80.18770'), ('OAKMONT', 6911, '40.51940', '-79.83650'), ('OSBORNE', 566, '40.53080', '-80.16950'), ('PENN HILLS', 46809, '40.47590', '-79.82700'), ('PENNSBURY VILLAGE', 738, '40.42770', '-80.10090'), ('PITCAIRN', 3689, '40.40760', '-79.77600'), ('PITTSBURGH', 334563, '40.43920', '-79.97670'), ('PLEASANT HILLS', 8397, '40.32870', '-79.96110'), ('PLUM', 26940, '40.50240', '-79.75400'), ('PORT VUE', 4228, '40.33690', '-79.87050'), ('RANKIN', 2315, '40.41140', '-79.88210'), ('RESERVE TOWNSHIP', 3856, '40.48270', '-79.98710'), ('ROBINSON TOWNSHIP', 12289, '40.46210', '-80.12680'), ('ROSS TOWNSHIP', 32551, '40.52660', '-80.02490'), ('ROSSLYN FARMS', 464, '40.42160', '-80.08980'), ('RUSSELLTON', 1530, '40.61070', '-79.83770'), ('SCOTT TOWNSHIP', 17288, '40.38620', '-80.07720'), ('SEWICKLEY', 3902, '40.53970', '-80.18050'), ('SEWICKLEY HEIGHTS', 981, '40.56100', '-80.15580'), ('SEWICKLEY HILLS', 652, '40.56030', '-80.12020'), ('SHALER TOWNSHIP', 29757, '40.52090', '-79.96400'), ('SHARPSBURG', 3594, '40.49320', '-79.92660'), ('SOUTH PARK TOWNSHIP', 14340, '40.29700', '-79.99390'), ('SPRINGDALE', 3828, '40.53960', '-79.78200'), ('STOWE TOWNSHIP', 6706, '40.48310', '-80.07330'), ('STURGEON-NOBLESTOWN', 1764, '40.38880', '-80.20310'), ('SWISSVALE', 9653, '40.42050', '-79.88650'), ('TARENTUM', 4993, '40.60520', '-79.76020'), ('THORNBURG', 468, '40.43350', '-80.08340'), ('TURTLE CREEK', 6076, '40.40810', '-79.82090'), ('UPPER ST. CLAIR', 20053, '40.33570', '-80.08370'), ('VERONA', 3124, '40.50500', '-79.84110'), ('VERSAILLES', 1724, '40.31720', '-79.83050'), ('WALL', 727, '40.39320', '-79.78510'), ('WEST ELIZABETH', 565, '40.27310', '-79.89390'), ('WEST HOMESTEAD', 2197, '40.39900', '-79.92040'), ('WEST MIFFLIN', 22464, '40.35710', '-79.90780'), ('WEST VIEW', 7277, '40.51830', '-80.03390'), ('WEXFORD', None, '40.63000', '-80.05000'), ('WHITAKER', 1338, '40.39970', '-79.88740'), ('WHITE OAK', 8437, '40.33920', '-79.80430'), ('WHITEHALL', 14444, '40.35910', '-79.99180'), ('WILKINS TOWNSHIP', 6917, '40.42630', '-79.82430'), ('WILKINSBURG', 19196, '40.44480', '-79.87330'), ('WILMERDING', 2145, '40.39360', '-79.81090')], 'partOfState': 'SOUTHWEST', 'wfo': 'PBZ'}, -'PAZ020': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALIQUIPPA', 11734, '40.61740', '-80.25500'), ('AMBRIDGE', 7769, '40.59310', '-80.22540'), ('BADEN', 4377, '40.63860', '-80.22190'), ('BEAVER', 4775, '40.69290', '-80.30750'), ('BEAVER FALLS', 9920, '40.76090', '-80.32240'), ('BIG BEAVER', 2186, '40.81830', '-80.36360'), ('BRIDGEWATER', 739, '40.70900', '-80.30050'), ('CONWAY', 2290, '40.66450', '-80.24090'), ('DARLINGTON', 299, '40.81000', '-80.42390'), ('EAST ROCHESTER', 623, '40.69810', '-80.26820'), ('EASTVALE', 293, '40.76770', '-80.31550'), ('ECONOMY', 9363, '40.63840', '-80.18510'), ('FALLSTON', 307, '40.72150', '-80.31450'), ('FRANKFORT SPRINGS', 130, '40.48130', '-80.44560'), ('FREEDOM', 1763, '40.68460', '-80.25340'), ('GEORGETOWN', 182, '40.64170', '-80.49980'), ('GLASGOW', 63, '40.64460', '-80.50860'), ('HARMONY TOWNSHIP', 3373, '40.60710', '-80.22050'), ('HARSHAVILLE', None, '40.55000', '-80.42000'), ('HOMEWOOD', 147, '40.81340', '-80.32920'), ('HOOKSTOWN', 152, '40.59880', '-80.47440'), ('INDUSTRY', 1921, '40.65600', '-80.40980'), ('KOPPEL', 856, '40.83480', '-80.32250'), ('MIDLAND', 3137, '40.63990', '-80.45790'), ('MONACA', 6286, '40.68330', '-80.27320'), ('NEW BRIGHTON', 6641, '40.73560', '-80.30890'), ('NEW GALILEE', 424, '40.83310', '-80.40090'), ('OHIOVILLE', 3759, '40.68290', '-80.47730'), ('PATTERSON HEIGHTS', 670, '40.73900', '-80.32700'), ('PATTERSON TOWNSHIP', 3197, '40.74240', '-80.33240'), ('ROCHESTER', 4014, '40.70200', '-80.28330'), ('SHIPPINGPORT', 237, '40.62540', '-80.42420'), ('SOUTH HEIGHTS', 542, '40.57460', '-80.23630'), ('WEST MAYFIELD', 1187, '40.77900', '-80.33810')], 'partOfState': '', 'wfo': 'PBZ'}, -'TXZ039': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRONCO', None, '33.25380', '-103.03880'), ('DENVER CITY', 3985, '32.96960', '-102.83070'), ('PLAINS', 1450, '33.19010', '-102.82710')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ038': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DUMONT', None, '33.80390', '-100.51780'), ('FINNEY', None, '33.77780', '-100.38280'), ('GROW', None, '33.80970', '-100.29830'), ('GUTHRIE', None, '33.62890', '-100.32280')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'COZ078': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('SILVER CLIFF', 512, '38.11730', '-105.40450'), ('WESTCLIFFE', 417, '38.13290', '-105.46510')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'TXZ031': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FLOMOT', None, '34.22690', '-100.98860'), ('MATADOR', 740, '34.01510', '-100.82120'), ('NORTHFIELD', None, '34.28720', '-100.59830'), ('ROARING SPRINGS', 265, '33.89940', '-100.85580')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ030': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AIKEN', None, '34.14220', '-101.52520'), ('CEDAR HILL', 32093, '34.14330', '-101.20380'), ('DOUGHERTY', None, '33.94160', '-101.08610'), ('FLOYDADA', 3676, '33.98370', '-101.33680'), ('LOCKNEY', 2056, '34.12290', '-101.44180'), ('SOUTH PLAINS', None, '34.22440', '-101.30910')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'MIZ059': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BATH', None, '42.81870', '-84.44870'), ('DE WITT', 4702, '42.83590', '-84.57560'), ('EAGLE', 130, '42.80980', '-84.79050'), ('ELSIE', 1055, '43.08900', '-84.39060'), ('EUREKA', None, '43.10370', '-84.51380'), ('FOWLER', 1136, '43.00400', '-84.74030'), ('MAPLE RAPIDS', 643, '43.10660', '-84.69010'), ('OVID', 1514, '43.00250', '-84.37450'), ('ST. JOHNS', 7485, '43.00020', '-84.55750'), ('WACOUSTA', None, '42.82780', '-84.70080'), ('WESTPHALIA', 876, '42.92970', '-84.79780')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'TXZ032': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CEE VEE', None, '34.22940', '-100.44080'), ('CHALK', None, '33.87690', '-100.23280'), ('DELWIN', None, '33.87690', '-100.39970'), ('HACKBERRY', 544, '33.92780', '-100.15080'), ('LAZARE', None, '34.29190', '-100.00000'), ('PADUCAH', 1498, '34.01480', '-100.30340'), ('SWEARINGEN', None, '34.14780', '-100.14580')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ035': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABERNATHY', 2839, '33.83180', '-101.84460'), ('DOWNTOWN LUBBOCK', None, '33.58770', '-101.84580'), ('IDALOU', 2157, '33.66290', '-101.68190'), ('LUBBOCK', 199564, '33.57590', '-101.87540'), ('LUBBOCK', 199564, '33.58380', '-101.85770'), ('LUBBOCK INT. AIRPORT', None, '33.65380', '-101.81380'), ('LUBBOCK SOUTH PLAINS MALL', None, '33.53500', '-101.92270'), ('NEW DEAL', 708, '33.73130', '-101.83810'), ('RANSOM CANYON', 1011, '33.52960', '-101.68250'), ('REESE CENTER', 42, '33.59250', '-102.02690'), ('SHALLOWATER', 2086, '33.69010', '-101.99230'), ('SLATON', 6109, '33.43910', '-101.64230'), ('SLIDE', None, '33.41380', '-101.92940'), ('TEXAS TECH UNIV.', None, '33.58380', '-101.85770'), ('WOLFFORTH', 2554, '33.50800', '-102.01030'), ('WOODROW', None, '33.44660', '-101.84360')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ034': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANTON', 1200, '33.81130', '-102.16200'), ('LEVELLAND', 12866, '33.57990', '-102.36390'), ('LOCKETVILLE', None, '33.38770', '-102.31380'), ('OPDYKE WEST', 188, '33.59120', '-102.29950'), ('PEP', None, '33.81580', '-102.55970'), ('ROPESVILLE', 517, '33.41370', '-102.15430'), ('SMYER', 480, '33.58680', '-102.16320'), ('SUNDOWN', 1505, '33.45680', '-102.49070'), ('WHITHARRAL', None, '33.73750', '-102.32660')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'TXZ037': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AFTON', None, '33.76270', '-100.81630'), ('DICKENS', 332, '33.62130', '-100.83580'), ('MCAD00', None, '33.73380', '-101.00580'), ('SPUR', 1088, '33.47810', '-100.85490')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'NMZ003': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('AGUA FRIA', 2051, '35.64770', '-106.02150'), ('ALCALDE', 377, '36.08470', '-106.05840'), ('ALGODONES', 688, '35.38100', '-106.47900'), ('BANDELIER NATIONAL MONUME', None, '35.78300', '-106.26700'), ('BERNALILLO', 6611, '35.31600', '-106.55570'), ('CHILI', None, '36.10500', '-106.14900'), ('CHIMAYO', 2924, '35.99880', '-105.92850'), ('COCHITI LAKE', None, '35.64800', '-106.33700'), ('COCHITI PUEBLO', None, '35.60800', '-106.34700'), ('CUNDIYO', 95, '35.95900', '-105.89600'), ('CUYAMUNGUE', 421, '35.86980', '-106.00850'), ('DIXON', None, '36.19900', '-105.88800'), ('DOMINGO', None, '35.51100', '-106.31900'), ('EL RANCHO', 817, '35.88900', '-106.07900'), ('EMBUDO', None, '36.20800', '-105.96100'), ('ESPANOLA', 9688, '36.00340', '-106.06930'), ('FRIJOLES', None, '35.77900', '-106.27100'), ('HERNANDEZ', None, '36.06300', '-106.11900'), ('JACONITA', 343, '35.89250', '-106.03480'), ('LA BAJADA', None, '35.55600', '-106.24000'), ('LA CIENEGA', 3007, '35.57650', '-106.11040'), ('LA VILLITA', None, '36.10300', '-106.04800'), ('LOS CERRILLOS', 229, '35.43900', '-106.12300'), ('LYDEN', None, '36.14600', '-106.00500'), ('MEDANALES', None, '36.17600', '-106.18300'), ('NAMBE', None, '35.89300', '-105.98200'), ('NAMBE PUEBLO', None, '35.88800', '-105.96400'), ('OJO CALIENTE', None, '36.30300', '-106.04600'), ('PENA BLANCA', 661, '35.57140', '-106.33620'), ('POJOAQUE', 1261, '35.89360', '-106.02300'), ('POJOAQUE PUEBLO', None, '35.89400', '-106.02100'), ('SAN FELIPE PUEBLO', 2080, '35.43430', '-106.42840'), ('SAN ILDEFONSO PUEBLO', 458, '35.89810', '-106.12750'), ('SAN JOSE', None, '36.03900', '-106.09800'), ('SAN JUAN PUEBLO', None, '36.05190', '-106.07000'), ('SANDIA PUEBLO', None, '35.25600', '-106.57100'), ('SANTA ANA PUEBLO', 479, '35.35250', '-106.51850'), ('SANTA CLARA PUEBLO', 980, '35.97180', '-106.09260'), ('SANTA CRUZ', 423, '35.98550', '-106.01610'), ('SANTA FE', 62203, '35.67850', '-105.95410'), ('SANTO DOMINGO PUEBLO', 2550, '35.51590', '-106.36580'), ('TESUQUE', 909, '35.76660', '-105.92330'), ('VELARDE', None, '36.15900', '-105.97400'), ('WHITE ROCK', 6045, '35.80380', '-106.21040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABQ'}, -'OHZ078': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMELIA', 2752, '39.02580', '-84.21690'), ('BATAVIA', 1617, '39.07840', '-84.18120'), ('BETHEL', 2637, '38.96240', '-84.08470'), ('CHILO', 97, '38.79370', '-84.13820'), ('DAY HEIGHTS', 2823, '39.17390', '-84.22630'), ('FELICITY', 922, '38.83990', '-84.09790'), ('MILFORD', 6284, '39.17090', '-84.28160'), ('MOSCOW', 244, '38.86030', '-84.22850'), ('MOUNT CARMEL', 4308, '39.09670', '-84.29840'), ('MOUNT REPOSE', 4102, '39.18540', '-84.22460'), ('MULBERRY', 3139, '39.19720', '-84.24890'), ('NEVILLE', 127, '38.81320', '-84.21080'), ('NEW RICHMOND', 2219, '38.96240', '-84.27980'), ('NEWTONSVILLE', 492, '39.18290', '-84.08740'), ('OWENSVILLE', 816, '39.12370', '-84.13540'), ('SUMMERSIDE', 5523, '39.12280', '-84.28640'), ('WILLIAMSBURG', 2358, '39.05310', '-84.05070'), ('WITHAMSVILLE', 3145, '39.05860', '-84.27000')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHZ079': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ABERDEEN', 1603, '38.66670', '-83.76990'), ('FAYETTEVILLE', 372, '39.18640', '-83.93210'), ('GEORGETOWN', 3691, '38.86690', '-83.90270'), ('HAMERSVILLE', 515, '38.91830', '-83.98500'), ('HIGGINSPORT', 291, '38.79070', '-83.96840'), ('MOUNT ORAB', 2307, '39.02930', '-83.92370'), ('RIPLEY', 1745, '38.73960', '-83.84020'), ('RUSSELLVILLE', 453, '38.86740', '-83.78750'), ('SARDINIA', 862, '39.00690', '-83.80700'), ('ST. MARTIN', 91, '39.21470', '-83.88790')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'AKZ195': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ST. PAUL', 532, '57.21050', '-170.21890')], 'partOfState': '', 'wfo': 'AFC'}, -'TNZ115': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRAGG CITY', 189, '36.26840', '-89.91150'), ('CARUTHERSVILLE', 6760, '36.17910', '-89.66510'), ('COOTER', 440, '36.04700', '-89.80970'), ('DEERING', None, '36.20000', '-89.88330'), ('DENTON', None, '36.10000', '-89.88330'), ('HAYTI', 3207, '36.23250', '-89.74850'), ('HAYTI HEIGHTS', 771, '36.23220', '-89.76850'), ('HAYWARD', 123, '36.39610', '-89.66600'), ('HOLLAND', 246, '36.05730', '-89.87040'), ('HOMESTOWN', 181, '36.33170', '-89.82460'), ('NORTH WARDELL', 170, '36.35780', '-89.81550'), ('PASCOLA', 138, '36.26610', '-89.82650'), ('STEELE', 2263, '36.08500', '-89.84670'), ('WARDELL', 278, '36.35070', '-89.81690'), ('BOLTON', None, '36.31670', '-89.78330')], 'partOfState': '', 'wfo': 'MEG'}, -'OHZ070': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BECKETT RIDGE', 8663, '39.34700', '-84.43540'), ('FAIRFIELD', 42097, '39.33110', '-84.54290'), ('HAMILTON', 60690, '39.39070', '-84.56410'), ('JACKSONBURG', 67, '39.53790', '-84.50390'), ('MIDDLETOWN', 51605, '39.50570', '-84.37360'), ('MILLVILLE', 817, '39.39180', '-84.65350'), ('MONROE', 7133, '39.44610', '-84.34810'), ('NEW MIAMI', 2469, '39.43150', '-84.54100'), ('OXFORD', 21943, '39.50570', '-84.74720'), ('ROSS', 1971, '39.31180', '-84.65290'), ('SEVEN MILE', 678, '39.47930', '-84.55250'), ('SOMERVILLE', 294, '39.56350', '-84.63860'), ('SOUTH MIDDLETOWN', 264, '39.48110', '-84.40070'), ('TRENTON', 8746, '39.47700', '-84.46230')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHZ071': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUTLERVILLE', 231, '39.30200', '-84.08900'), ('CARLISLE', 5121, '39.57830', '-84.32090'), ('CORWIN', 256, '39.52500', '-84.07320'), ('FIVE POINTS', 2191, '39.56160', '-84.19710'), ('FRANKLIN', 11396, '39.55390', '-84.30120'), ('HARVEYSBURG', 563, '39.50030', '-84.00230'), ('LANDEN', 12766, '39.30790', '-84.27970'), ('LEBANON', 16962, '39.42670', '-84.21270'), ('LOVELAND PARK', 1799, '39.29840', '-84.26250'), ('MAINEVILLE', 885, '39.31580', '-84.22310'), ('MASON', 22016, '39.36000', '-84.30700'), ('MORROW', 1286, '39.34910', '-84.12660'), ('PLEASANT PLAIN', 156, '39.27970', '-84.10930'), ('SOUTH LEBANON', 2538, '39.37120', '-84.21140'), ('SPRINGBORO', 12380, '39.56340', '-84.23770'), ('WAYNESVILLE', 2558, '39.53410', '-84.08660')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHZ072': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BLANCHESTER', 4220, '39.28950', '-83.97960'), ('CLARKSVILLE', 497, '39.40250', '-83.98290'), ('MARTINSVILLE', 440, '39.32300', '-83.81110'), ('MIDLAND', 265, '39.30590', '-83.91040'), ('NEW VIENNA', 1294, '39.32470', '-83.69240'), ('PORT WILLIAM', 258, '39.55170', '-83.78570'), ('SABINA', 2780, '39.49030', '-83.63380'), ('WILMINGTON', 11921, '39.44360', '-83.83090')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHZ073': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAINBRIDGE', 1012, '39.23000', '-83.21000'), ('CHILLICOTHE', 21796, '39.33560', '-82.98810'), ('CLARKSBURG', 516, '39.50630', '-83.15460'), ('FRANKFORT', 1011, '39.40800', '-83.18280'), ('NORTH FOLK VILLAGE', None, '39.33640', '-83.02780'), ('SOUTH SALEM', 213, '39.33640', '-83.30750')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHZ074': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUCHTEL', 574, '39.46280', '-82.18250'), ('LOGAN', 6704, '39.53690', '-82.40170'), ('MURRAY CITY', 452, '39.51080', '-82.16710')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'NMZ002': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABIQUIU', None, '36.20700', '-106.31800'), ('BLANCO TRADING POST', None, '36.36700', '-107.80000'), ('BRAZOS', None, '36.75100', '-106.56100'), ('BUENA VISTA', None, '36.20300', '-106.33800'), ('CANJILON', None, '36.47900', '-106.43700'), ('CANON', None, '35.65700', '-106.73500'), ('CANON PLAZA', None, '36.55000', '-106.16700'), ('CANONES', None, '36.18800', '-106.43900'), ('CANONES', None, '35.67400', '-106.75200'), ('CEBOLLA', None, '36.53800', '-106.48600'), ('CHACO CANYON', None, '36.06700', '-107.96700'), ('CHAMA', 1199, '36.89350', '-106.58260'), ('CORRALES', 7334, '35.23500', '-106.62000'), ('COUNSELORS', None, '36.20900', '-107.45700'), ('COYOTE', None, '36.16800', '-106.61600'), ('CROWNPOINT', 2630, '35.68810', '-108.14610'), ('CUBA', 590, '36.02250', '-106.95420'), ('DULCE', 2623, '36.93340', '-106.99600'), ('EL HUERFANO TRADING POST', None, '36.41700', '-107.83300'), ('EL RITO', None, '36.34300', '-106.18800'), ('EL VADO', None, '36.59400', '-106.72800'), ('ENSENADA', None, '36.72700', '-106.53300'), ('GALLINA', None, '36.23300', '-106.85000'), ('GHOST RANCH', None, '36.33000', '-106.47500'), ('JEMEZ PUEBLO', 1953, '35.61630', '-106.72620'), ('JEMEZ SPRINGS', 375, '35.77370', '-106.68840'), ('LA JARA', 209, '36.08800', '-106.97400'), ('LA MADERA', None, '36.38700', '-106.04100'), ('LA PUENTE', None, '36.70000', '-106.60000'), ('LAS PLACITAS', None, '36.32300', '-106.16200'), ('LAS TABLAS', None, '36.55600', '-106.02900'), ('LINDRITH', None, '36.30400', '-107.04400'), ('LOS ALAMOS', 11909, '35.89380', '-106.28390'), ('LOS OJOS', None, '36.72900', '-106.56900'), ('LOS PINOS', None, '36.98800', '-106.06400'), ('LUMBERTON', None, '36.93000', '-106.93600'), ('MONERO', None, '36.90200', '-106.85500'), ('NAGEEZI', 296, '36.26700', '-107.74100'), ('NAVAJO DAM', None, '36.80000', '-107.61200'), ('OJO ENCINO', None, '35.95600', '-107.34700'), ('PETACA', None, '36.50800', '-106.01000'), ('PUEBLO PINTADO', 247, '35.97700', '-107.67300'), ('REGINA', 99, '36.18400', '-106.95600'), ('RIO RANCHO', 51765, '35.27340', '-106.66040'), ('RUTHERON', None, '36.71900', '-106.61100'), ('SAN MIGUEL', None, '36.96100', '-106.16000'), ('SAN YSIDRO', 238, '35.55650', '-106.77190'), ('TIERRA AMARILLA', None, '36.70000', '-106.54900'), ('TORREON NAVAJO MISSION', None, '35.79900', '-107.18100'), ('TRES PIEDRAS', None, '36.64700', '-105.96700'), ('VALLECITOS', None, '35.66700', '-106.66700'), ('VALLECITOS', None, '36.49500', '-106.11600'), ('YOUNGSVILLE', None, '36.18800', '-106.55600'), ('ZIA PUEBLO', 646, '35.51390', '-106.72540')], 'partOfState': 'NORTHWEST', 'wfo': 'ABQ'}, -'OHZ076': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELPRE', 6660, '39.27830', '-81.58860'), ('BEVERLY', 1282, '39.54970', '-81.63630'), ('DEVOLA', 2771, '39.47330', '-81.46960'), ('LOWELL', 628, '39.52910', '-81.50750'), ('LOWER SALEM', 109, '39.56350', '-81.39460'), ('MACKSBURG', 202, '39.63120', '-81.45690'), ('MARIETTA', 14515, '39.42140', '-81.44690'), ('MATAMORAS', 957, '39.51860', '-81.07050')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHZ077': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('WEST HARRISON', 284, '39.26120', '-84.82090'), ('BROMLEY', 838, '39.08060', '-84.56240'), ('DAYTON', 5966, '39.11250', '-84.46240'), ('LUDLOW', 4409, '39.08940', '-84.55050'), ('ADDYSTON', 1010, '39.13810', '-84.71060'), ('AMBERLEY', 3425, '39.20240', '-84.43320'), ('ARLINGTON HEIGHTS', 899, '39.21510', '-84.45580'), ('BLUE ASH', 12513, '39.24670', '-84.38080'), ('BRIDGETOWN NORTH', 12569, '39.15810', '-84.63560'), ('CHERRY GROVE', 4555, '39.07970', '-84.32280'), ('CHEVIOT', 9015, '39.15770', '-84.61380'), ('CINCINNATI', 331285, '39.13980', '-84.50600'), ('CLEVES', 2790, '39.16230', '-84.74930'), ('COVEDALE', 6360, '39.12380', '-84.64060'), ('DEER PARK', 5982, '39.20340', '-84.39700'), ('DENT', 7612, '39.19380', '-84.66090'), ('DILLONVALE', 781, '39.21800', '-84.40210'), ('DRY RUN', 6553, '39.10430', '-84.33070'), ('ELMWOOD PLACE', 2681, '39.18490', '-84.48850'), ('EVENDALE', 3090, '39.25380', '-84.42570'), ('FAIRFAX', 1938, '39.14270', '-84.39620'), ('FINNEYTOWN', 13492, '39.21670', '-84.51420'), ('FOREST PARK', 19463, '39.28720', '-84.52690'), ('FORESTVILLE', 10978, '39.07010', '-84.33880'), ('FRUIT HILL', 3945, '39.06810', '-84.36620'), ('GLENDALE', 2188, '39.27070', '-84.45840'), ('GOLF MANOR', 3999, '39.18710', '-84.44640'), ('GRANDVIEW', 1391, '39.19430', '-84.72440'), ('GREENHILLS', 4103, '39.26470', '-84.51760'), ('GROESBECK', 7202, '39.22880', '-84.59430'), ('HARRISON', 7487, '39.24990', '-84.79300'), ('KENWOOD', 7423, '39.20560', '-84.37410'), ('LINCOLN HEIGHTS', 4113, '39.24390', '-84.45810'), ('LOCKLAND', 3707, '39.22760', '-84.45740'), ('LOVELAND', 11677, '39.26730', '-84.27410'), ('MACK NORTH', 3529, '39.16680', '-84.67320'), ('MACK SOUTH', 5837, '39.14210', '-84.67320'), ('MADEIRA', 8923, '39.18420', '-84.37480'), ('MARIEMONT', 3408, '39.14210', '-84.37900'), ('MONFORT HEIGHTS EAST', 3880, '39.18220', '-84.58390'), ('MONFORT HEIGHTS SOUTH', 4466, '39.17330', '-84.60640'), ('MONTGOMERY', 10163, '39.24730', '-84.34760'), ('MOUNT HEALTHY', 7149, '39.23280', '-84.54720'), ('MOUNT HEALTHY HEIGHTS', 3450, '39.27030', '-84.56810'), ('NEWTOWN', 2420, '39.12220', '-84.35050'), ('NORTH BEND', 603, '39.14850', '-84.74150'), ('NORTH COLLEGE HILL', 10082, '39.21720', '-84.55160'), ('NORTHBROOK', 11076, '39.24750', '-84.57900'), ('NORTHGATE', 8016, '39.25270', '-84.59240'), ('NORWOOD', 21675, '39.15960', '-84.45370'), ('PLEASANT RUN', 5267, '39.29090', '-84.57240'), ('PLEASANT RUN FARM', 4731, '39.30300', '-84.54800'), ('READING', 11292, '39.22440', '-84.43140'), ('SHARONVILLE', 13804, '39.28120', '-84.40650'), ('SHERWOOD', 801, '39.08470', '-84.36070'), ('SILVERTON', 5178, '39.18930', '-84.40130'), ('SPRINGDALE', 10563, '39.29160', '-84.47550'), ('ST. BERNARD', 4924, '39.17100', '-84.49530'), ('TERRACE PARK', 2273, '39.15800', '-84.31210'), ('THE VILLAGE OF INDIAN HIL', None, '39.18950', '-84.33480'), ('TURPIN HILLS', 4960, '39.10710', '-84.37320'), ('WHITE OAK', 13277, '39.22020', '-84.60540'), ('WHITE OAK EAST', 3508, '39.20200', '-84.59020'), ('WHITE OAK WEST', 2932, '39.19930', '-84.61430'), ('WOODLAWN', 2816, '39.25670', '-84.46750'), ('WYOMING', 8261, '39.22950', '-84.48160')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'TXZ071': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARDEN', None, '31.44360', '-100.76670'), ('BARNHART', None, '31.12780', '-101.17030'), ('MERTZON', 839, '31.26170', '-100.81690'), ('SHERWOOD', None, '31.28110', '-100.79500')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'NDZ039': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ABSARAKA', None, '46.97810', '-97.39420'), ('ALICE', 56, '46.76050', '-97.55620'), ('AMENIA', 89, '47.00820', '-97.22390'), ('ARGUSVILLE', 147, '47.05060', '-96.94100'), ('ARTHUR', 402, '47.10350', '-97.21830'), ('AYR', 23, '47.04070', '-97.49120'), ('BUFFALO', 209, '46.92140', '-97.55030'), ('CASSELTON', 1855, '46.90060', '-97.21190'), ('CHAFFEE', None, '46.77440', '-97.35220'), ('COLGATE', None, '47.24470', '-97.65610'), ('DAVENPORT', 261, '46.71380', '-97.06880'), ('DURBIN', None, '46.80860', '-97.14920'), ('EMBDEN', None, '46.80220', '-97.43280'), ('ERIE', 65, '47.11280', '-97.38750'), ('FARGO', 90599, '46.87660', '-96.81710'), ('FRONTIER', 273, '46.80040', '-96.83300'), ('GARDNER', 80, '47.14340', '-96.96880'), ('GRANDIN', 181, '47.23610', '-97.00240'), ('HARWOOD', 607, '46.98030', '-96.87990'), ('HICKSON', None, '46.66940', '-96.81000'), ('HORACE', 915, '46.75740', '-96.90420'), ('HUNTER', 326, '47.19210', '-97.21630'), ('KINDRED', 614, '46.65090', '-97.02110'), ('LEONARD', 255, '46.65130', '-97.24550'), ('MAPLETON', 606, '46.89080', '-97.05340'), ('OXBOW', 248, '46.84720', '-96.80420'), ('PAGE', 225, '47.15800', '-97.57060'), ('PRAIRIE ROSE', 68, '46.81730', '-96.83440'), ('PROSPER', None, '46.96310', '-97.01940'), ("REILE'S ACRES", 254, '46.92250', '-96.86240'), ('TOWER CITY', 252, '46.92530', '-97.67610'), ('WEST FARGO', 14940, '46.87280', '-96.89700'), ('WHEATLAND', 60, '46.90750', '-97.34500'), ('WILD RICE', None, '46.74640', '-96.80920')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'ILZ049': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALSEY', 246, '39.55930', '-90.43350'), ('BLUFFS', 748, '39.75000', '-90.53440'), ('EXETER', 70, '39.71900', '-90.49590'), ('GLASGOW', 170, '39.54970', '-90.47960'), ('MANCHESTER', 354, '39.54220', '-90.33040'), ('MERRITT', None, '39.71670', '-90.41670'), ('NAPLES', 134, '39.75390', '-90.60800'), ('OXVILLE', None, '39.70000', '-90.56670'), ('RIGGSTON', None, '39.68330', '-90.43330'), ('WINCHESTER', 1650, '39.62940', '-90.45660')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'ILZ048': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATHENS', 1726, '39.96090', '-89.72480'), ('ATTERBERRY', None, '40.06670', '-89.91670'), ('FANCY PRAIRIE', None, '39.98330', '-89.60000'), ('GREENVIEW', 862, '40.08480', '-89.74020'), ('OAKFORD', 309, '40.10100', '-89.96540'), ('PETERSBURG', 2299, '40.01240', '-89.85140'), ('SWEETWATER', None, '40.06000', '-89.70000'), ('TALLULA', 638, '39.94580', '-89.93630')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ047': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARENZVILLE', 419, '39.88500', '-90.37200'), ('ASHLAND', 1361, '39.88870', '-90.00870'), ('BEARDSTOWN', 5766, '40.01240', '-90.43000'), ('BLUFF SPRINGS', None, '39.98000', '-90.37100'), ('CHANDLERVILLE', 704, '40.04820', '-90.15070'), ('NEWMANSVILLE', None, '40.00000', '-90.01670'), ('PHILADELPHIA', None, '39.91670', '-90.11670'), ('VIRGINIA', 1728, '39.95080', '-90.21130')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'ILZ046': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALLERTON', 293, '39.91530', '-87.93560'), ('ALVIN', 316, '40.30770', '-87.60680'), ('ARMSTRONG', None, '40.31670', '-87.88330'), ('BISMARCK', 542, '40.26670', '-87.60000'), ('CATLIN', 2087, '40.06840', '-87.70790'), ('COLLISON', None, '40.23330', '-87.80000'), ('DANVILLE', 33904, '40.14390', '-87.61940'), ('FAIRMOUNT', 640, '40.04610', '-87.82860'), ('FITHIAN', 506, '40.11400', '-87.87470'), ('GEORGETOWN', 3628, '39.97650', '-87.63500'), ('HENNING', 241, '40.30620', '-87.70070'), ('HOOPESTON', 5965, '40.46520', '-87.67090'), ('INDIANOLA', 207, '39.92710', '-87.74020'), ('JAMAICA', None, '39.98330', '-87.80000'), ('OAKWOOD', 1502, '40.10900', '-87.77650'), ('POTOMAC', 681, '40.30640', '-87.79720'), ('RANKIN', 617, '40.46470', '-87.89610'), ('RIDGE FARM', 912, '39.89530', '-87.65230'), ('ROSSVILLE', 1217, '40.38180', '-87.66910'), ('SIDELL', 626, '39.91020', '-87.82200'), ('TILTON', 2976, '40.09430', '-87.63850'), ('WESTVILLE', 3175, '40.04480', '-87.63800')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'NDZ053': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ABERCROMBIE', 296, '46.44780', '-96.73000'), ('BARNEY', 69, '46.26650', '-96.99920'), ('BARRIE', None, '46.56890', '-97.12220'), ('BLACKMER', None, '45.97890', '-96.60030'), ('CHRISTINE', 153, '46.57530', '-96.80670'), ('COLFAX', 91, '46.47020', '-96.87400'), ('DWIGHT', 75, '46.30290', '-96.73860'), ('FAIRMOUNT', 406, '46.05450', '-96.60270'), ('GALCHUTT', None, '46.38750', '-96.80920'), ('GREAT BEND', 118, '46.15450', '-96.80110'), ('HANKINSON', 1058, '46.07150', '-96.89380'), ('LAMARS', None, '45.96470', '-96.69000'), ('LIDGERWOOD', 738, '46.07490', '-97.14630'), ('MANTADOR', 71, '46.16590', '-96.97780'), ('MOORETON', 204, '46.26910', '-96.87630'), ('SONORA', None, '46.06670', '-96.74110'), ('STILES', None, '46.07530', '-97.05220'), ('WAHPETON', 8586, '46.27100', '-96.61010'), ('WALCOTT', 189, '46.55040', '-96.93700'), ('WYNDMERE', 533, '46.26420', '-97.13100')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'NDZ052': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BRAMPTON', None, '45.99470', '-97.77580'), ('CAYUGA', 61, '46.07580', '-97.38340'), ('COGSWELL', 165, '46.10710', '-97.78400'), ('CRETE', None, '46.20030', '-97.96250'), ('DE LAMERE', None, '46.26720', '-97.33470'), ('FORMAN', 506, '46.10520', '-97.63690'), ('GENESEO', None, '46.07390', '-97.27830'), ('GWINNER', 717, '46.22420', '-97.65850'), ('HAMLIN', None, '46.16610', '-97.28470'), ('HAVANA', 94, '45.95070', '-97.61770'), ('MILNOR', 711, '46.26080', '-97.45660'), ('RUTLAND', 220, '46.05380', '-97.50790'), ('STIRUM', None, '46.21030', '-97.80610'), ('STRAUBVILLE', None, '46.04390', '-97.89970')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'ILZ043': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CLINTON', 7485, '40.15030', '-88.96160'), ('DE WITT', 188, '40.18440', '-88.78590'), ('FARMER CITY', 2055, '40.24440', '-88.64120'), ('HALLSVILLE', None, '40.15000', '-89.10000'), ('KENNEY', 374, '40.09830', '-89.08610'), ('LANE', None, '40.13500', '-88.85000'), ('ROWELL', None, '40.06670', '-89.03330'), ('WAPELLA', 651, '40.22130', '-88.96170'), ('WAYNESVILLE', 452, '40.24090', '-89.12500'), ('WELDON', 440, '40.12150', '-88.75060')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ042': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATLANTA', 1649, '40.26220', '-89.23220'), ('BEASON', None, '40.15000', '-89.20000'), ('BROADWELL', 169, '40.06730', '-89.44260'), ('CHESTNUT', None, '40.06670', '-89.20000'), ('CORNLAND', None, '39.94000', '-89.40900'), ('ELKHART', 443, '40.01930', '-89.48180'), ('EMDEN', 515, '40.29770', '-89.48520'), ('HARTSBURG', 358, '40.25070', '-89.44070'), ('LATHAM', 371, '39.96690', '-89.16190'), ('LAWNDALE', None, '40.21670', '-89.28330'), ('LINCOLN', 15369, '40.15060', '-89.36690'), ('MIDDLETOWN', 434, '40.10060', '-89.59130'), ('MOUNT PULASKI', 1701, '40.01010', '-89.28310'), ('NEW HOLLAND', 318, '40.18430', '-89.58250'), ('SAN JOSE', 696, '40.30600', '-89.60340')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ041': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BATH', 310, '40.19110', '-90.14240'), ('CHATAUQUA PARK', None, '40.33330', '-90.05000'), ('EASTON', 373, '40.23200', '-89.84210'), ('FOREST CITY', 287, '40.37100', '-89.83190'), ('HAVANA', 3577, '40.29840', '-90.05680'), ('KILBOURNE', 375, '40.15160', '-90.00950'), ('MANITO', 1733, '40.42180', '-89.78070'), ('MASON CITY', 2558, '40.20180', '-89.69620'), ('POPLAR CITY', None, '40.25000', '-89.95000'), ('SNICARTE', None, '40.13500', '-90.24000'), ('TOPEKA', 90, '40.32990', '-89.93090'), ('UNION', 576, '40.40000', '-89.80000')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ040': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BLUFF CITY', None, '40.18330', '-90.23330'), ('BROOKLYN', 676, '40.23330', '-90.76670'), ('BROWNING', 130, '40.12810', '-90.37280'), ('CAMDEN', 97, '40.15300', '-90.77240'), ('FREDERICK', None, '40.06670', '-90.43330'), ('HUNTSVILLE', None, '40.18330', '-90.86670'), ('LITTLETON', 197, '40.23470', '-90.62330'), ('RAY', None, '40.21670', '-90.48330'), ('RUSHVILLE', 3212, '40.11980', '-90.56570')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'WVZ020': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('WEST UNION', 806, '39.29630', '-80.77560')], 'partOfState': '', 'wfo': 'RLX'}, -'TXZ070': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BEST', None, '31.23000', '-101.62000'), ('BIG LAKE', 2885, '31.19380', '-101.45840'), ('NORTH REAGAN FIRE STATION', None, '31.57640', '-101.61110'), ('STILES', None, '31.41000', '-101.57000'), ('STILES', None, '31.40670', '-101.56580'), ('TEXON', None, '31.23000', '-101.69000')], 'partOfState': '', 'wfo': 'MAF'}, -'KYZ098': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('MOUNT OLIVET', 289, '38.53180', '-84.03720')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'GAZ126': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARMENA', None, '31.67960', '-84.28450'), ('BYNE CROSSROADS', None, '31.69770', '-84.21970'), ('CENTURY', None, '31.67620', '-84.16290'), ('CHOKEE', None, '31.89090', '-84.04930'), ('EAGLE POND', None, '31.85640', '-84.23220'), ('FORRESTER', None, '31.64870', '-84.16290'), ('JORDAN PLACE', None, '31.75510', '-84.20850'), ('LEESBURG', 2633, '31.73390', '-84.17020'), ('MOSSY DELL', None, '31.75930', '-84.11290'), ('NEYAMI', None, '31.82320', '-84.21530'), ('OAKLAND', None, '31.67350', '-84.26000'), ('PALMYRA', None, '31.63700', '-84.19450'), ('PHILEMA', None, '31.75250', '-84.01710'), ('SCRUTCHINS', None, '31.86290', '-84.19690'), ('SMITHVILLE', 774, '31.90190', '-84.25540'), ('STARKSVILLE', None, '31.77070', '-84.14570')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAZ125': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ACREE', None, '31.55370', '-83.99440'), ('ALBANY', 76939, '31.57780', '-84.17560'), ('DEWITT', None, '31.48560', '-84.14030'), ('DOSAGA', None, '31.55990', '-84.11420'), ('DUCKER', None, '31.52450', '-84.36640'), ('EAST ALBANY', None, '31.57560', '-84.11920'), ('FOUR POINTS', None, '31.55860', '-84.13980'), ('GILLIONVILLE', None, '31.58580', '-84.43330'), ('LOCKETT CROSSING', None, '31.55620', '-84.25430'), ('MARINE CORPS LB', None, '31.54980', '-84.05970'), ('PECAN CITY', None, '31.51780', '-84.07000'), ('PRETORIA', None, '31.50380', '-84.31730'), ('PUTNEY', 2998, '31.47590', '-84.12410'), ('RADIUM SPRINGS', None, '31.52650', '-84.12900'), ('SOUTHWEST GA REGIONAL A/P', None, '31.53490', '-84.19460'), ('TURNER CITY', None, '31.59710', '-84.10810'), ('WALKER', None, '31.53910', '-84.31520'), ('WILLIAMSBURG', None, '31.49670', '-84.11550')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAZ124': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BRIDGES CROSSROAD', None, '31.76460', '-84.35380'), ('BRONWOOD', 513, '31.83080', '-84.36400'), ('CHICKASAWHATCHEE', None, '31.70000', '-84.37460'), ('CLARKS MILL', None, '31.64280', '-84.46660'), ('DAWSON', 5058, '31.77170', '-84.44400'), ('DAWSON MUNI A/P', None, '31.74580', '-84.42330'), ('DOVEREL', None, '31.70110', '-84.52220'), ('GRAVES', None, '31.76700', '-84.51910'), ('HEROD', None, '31.69860', '-84.44190'), ('OAKVILLE', None, '31.85140', '-84.46430'), ('OLIVERS MILL', None, '31.87080', '-84.33650'), ('PARROTT', 156, '31.89390', '-84.51120'), ('PLEASANT HILL', None, '31.87670', '-84.40390'), ('SASSER', 393, '31.71910', '-84.34790'), ('YEOMANS', None, '31.83420', '-84.46730')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'MEZ006': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BANCROFT', None, '45.67360', '-68.03140'), ('BENEDICTA', None, '45.80170', '-68.41220'), ('CARY', None, '45.99530', '-67.86250'), ('CRYSTAL', None, '45.95920', '-68.36080'), ('DUDLEY', None, '46.17140', '-68.16030'), ('DYER BROOK', None, '46.08140', '-68.18390'), ('HAYNESVILLE', None, '45.82610', '-67.99170'), ('HODGDON', None, '46.05390', '-67.86720'), ('HOULTON', 5270, '46.12610', '-67.84080'), ('ISLAND FALLS', None, '46.00920', '-68.27190'), ('LINNEUS', None, '46.03860', '-67.96060'), ('LITTLETON', None, '46.23080', '-67.84170'), ('LUDLOW', None, '46.14060', '-68.04060'), ('MACWAHOC', None, '45.62830', '-68.26330'), ('MOLUNKUS', None, '45.61530', '-68.30390'), ('MONARDA', None, '45.79690', '-68.32440'), ('MONTICELLO', None, '46.30830', '-67.84310'), ('NEW LIMERICK', None, '46.10110', '-67.96060'), ('NORTH AMITY', None, '45.94170', '-67.83080'), ('OAKFIELD', None, '46.09890', '-68.15060'), ('ORIENT', None, '45.81690', '-67.84060'), ('REED', None, '45.72360', '-68.14280'), ('SHERMAN', None, '45.87110', '-68.41830'), ('SHERMAN STATION', None, '45.89920', '-68.43000'), ('SILVER RIDGE', None, '45.80640', '-68.32530'), ('SMYRNA MILLS', None, '46.12940', '-68.16470'), ('WYTOPITLOCK', None, '45.64060', '-68.07610')], 'partOfState': 'NORTHERN', 'wfo': 'CAR'}, -'MEZ007': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ANDOVER', None, '44.63560', '-70.75170'), ('BYRON', None, '44.72190', '-70.63110'), ('MIDDLE DAM', None, '44.78000', '-70.92280'), ('ROXBURY', None, '44.66970', '-70.59390'), ('SOUTH ARM', None, '44.75530', '-70.84610'), ('UPTON', None, '44.69420', '-71.01110'), ('WILSONS MILLS', None, '44.93810', '-71.03580')], 'partOfState': '', 'wfo': 'GYX'}, -'MEZ004': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BAXTER ST PARK', None, '46.02450', '-68.99500'), ('CAUCOMGOMOC LAKE', None, '46.19470', '-69.55920'), ('CHAMBERLAIN LAKE', None, '46.27500', '-69.35170'), ('CHESUNCOOK', None, '46.06030', '-69.41000'), ('CHURCHILL DAM', None, '46.49250', '-69.28970'), ('MOUNT KATAHDIN', None, '45.90420', '-68.92280'), ('RIPOGENUS', None, '45.88140', '-69.17580'), ('TAMWAY', None, '46.32220', '-69.37700'), ('TELOS LAKE', None, '46.14690', '-69.12720')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CAR'}, -'MEZ005': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('EAST MILLINOCKET', 1701, '45.62750', '-68.57500'), ('GRAND LAKE MATAGAMON', None, '46.16440', '-68.78690'), ('GRINDSTONE', None, '45.73610', '-68.58720'), ('MEDWAY', None, '45.60890', '-68.53140'), ('MILLINOCKET', 5190, '45.65720', '-68.71030'), ('MOOSEHORN CROSSING', None, '46.34830', '-68.76330'), ('NORCROSS', None, '45.62940', '-68.80310'), ('PATTEN', None, '45.99640', '-68.44670'), ('SHIN POND', None, '46.10530', '-68.55720'), ('STACYVILLE', None, '45.86360', '-68.50580'), ('WEST SEBOEIS', None, '45.52920', '-68.87920')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAR'}, -'ORZ003': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('APIARY', None, '46.01660', '-123.03330'), ('BIRKENFELD', None, '46.00000', '-123.33330'), ('BLAINE', None, '45.28330', '-123.71660'), ('BUXTON', None, '45.68330', '-123.20000'), ('ELSIE', None, '45.86700', '-123.60000'), ('FOSS', None, '45.70000', '-123.75000'), ('GLENWOOD', None, '45.65000', '-123.26700'), ('GRANDE RONDE INDIAN RESER', None, '45.15000', '-123.63000'), ('HAMLET', None, '45.83000', '-123.68000'), ('JEWELL', None, '45.93300', '-123.50000'), ('KEASEY', None, '45.86660', '-123.33330'), ('KLASKANINE SUMMIT', None, '46.05000', '-123.66000'), ('LEES CAMP', None, '45.60000', '-123.51700'), ('MANNING', None, '45.66660', '-123.16660'), ('MIST', None, '46.00000', '-123.25000'), ('NECANICUM', None, '45.90000', '-123.76000'), ('PITTSBURG', None, '45.90000', '-123.16000'), ('SADDLE MOUNTAIN', None, '45.97000', '-123.69000'), ('SALMONBERRY', None, '45.75000', '-123.65000'), ('SPITZENBERG', None, '45.82000', '-122.94000'), ('SUNSET SUMMIT', None, '45.80000', '-123.46000'), ('TIMBER', None, '45.71660', '-123.30000'), ('TRASK', None, '45.42000', '-123.64000'), ('VERNONIA', 2228, '45.86050', '-123.18520'), ('WILLAMINA', 1844, '45.07910', '-123.48350'), ('WILSON RIVER SUMMIT', None, '45.62000', '-123.38000')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORZ002': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADA', None, '43.86660', '-124.05000'), ('CANARY', None, '43.93330', '-124.03330'), ('CAPE FOULWEATHER', None, '44.78000', '-124.07000'), ('CAPE PERPETUA', None, '44.29000', '-124.11500'), ('CUSHMAN', None, '43.98330', '-124.05000'), ('DEPOE BAY', 1174, '44.81010', '-124.05830'), ('DUNES CITY', 1241, '43.90810', '-124.09510'), ('FLORENCE', 7263, '43.98640', '-124.10310'), ('GLENEDEN BEACH', None, '44.88330', '-124.03330'), ('HECETA BEACH', None, '44.03000', '-124.13000'), ('HECETA HEAD', None, '44.13500', '-124.13000'), ('KERNVILLE', None, '44.90000', '-124.00000'), ('LINCOLN BEACH', 2078, '44.85000', '-124.04400'), ('LINCOLN CITY', 7437, '44.97260', '-124.00720'), ('NEWPORT', 9532, '44.63000', '-124.05390'), ('ONA', None, '44.51000', '-124.00000'), ('OTIS', None, '45.01700', '-123.93300'), ('OTTER ROCK', None, '44.74000', '-124.06000'), ('SEAL ROCK', None, '44.50000', '-124.07660'), ('SILETZ', 1133, '44.72210', '-123.91650'), ('SILTCOOS', None, '43.88330', '-124.06660'), ('SOUTH BEACH', None, '44.61660', '-124.05000'), ('TOLEDO', 3472, '44.62090', '-123.93250'), ('WALDPORT', 2050, '44.42140', '-124.06410'), ('YACHATS', 617, '44.31270', '-124.10050'), ('YAQUINA HEAD', None, '44.67500', '-124.07200')], 'partOfState': '', 'wfo': 'PQR'}, -'ORZ001': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ASTORIA', 9813, '46.18800', '-123.82050'), ('BAY CITY', 1149, '45.52120', '-123.88500'), ('BEAVER', 145, '45.28300', '-123.83300'), ('CAMP RILEA', None, '46.14000', '-123.95000'), ('CAPE FALCON', None, '45.76000', '-123.98000'), ('CAPE LOOKOUT', None, '45.34000', '-123.99000'), ('CAPE MEARES', 110, '45.48500', '-123.97500'), ('CASCADE HEAD', None, '45.05690', '-124.00360'), ('CLATSOP SPIT', None, '46.22000', '-124.00000'), ('CLOVERDALE', 242, '45.21660', '-123.90000'), ('GARIBALDI', 899, '45.56050', '-123.91020'), ('GEARHART', 995, '46.02500', '-123.91750'), ('HAMMOND', None, '46.19810', '-123.94680'), ('HEBO', 231, '45.23330', '-123.85000'), ('KNAPPA', None, '46.18300', '-123.58300'), ('MANZANITA', 564, '45.71730', '-123.93360'), ('MOHLER', None, '45.70000', '-123.86660'), ('NEHALEM', 203, '45.72110', '-123.89150'), ('NESKOWIN', 169, '45.10000', '-123.98330'), ('NETARTS', 744, '45.43300', '-123.93700'), ('OCEANSIDE', 326, '45.46660', '-123.96660'), ('OLNEY', None, '46.10000', '-123.75000'), ('PACIFIC CITY', 1027, '45.20000', '-123.96000'), ('PLEASANT VALLEY', None, '45.36660', '-123.81000'), ('ROCKAWAY BEACH', 1267, '45.61500', '-123.93830'), ('SEASIDE', 5900, '45.99020', '-123.92010'), ('SVENSON', None, '46.16660', '-123.66660'), ('TILLAMOOK', 4352, '45.45670', '-123.83760'), ('TILLAMOOK HEAD', None, '45.94000', '-123.99000'), ('WARRENTON', 4096, '46.17030', '-123.92090'), ('WAUNA', None, '46.15000', '-123.40000'), ('WESTPORT', None, '46.13300', '-123.36700'), ('WHEELER', 391, '45.68700', '-123.88410')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'MEZ009': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ATTEAN', None, '45.57470', '-70.31860'), ('BINGHAM', 856, '45.05860', '-69.88280'), ('BRASSUA', None, '45.62670', '-69.91280'), ('CARATUNK', None, '45.23390', '-69.99060'), ('FLAGSTAFF LAKE', None, '45.22780', '-70.20390'), ('JACKMAN', None, '45.62390', '-70.25500'), ('LAKE MOXIE', None, '45.35110', '-69.88470'), ('LONG POND', None, '45.62140', '-70.08690'), ('MAYFIELD', None, '45.10360', '-69.69360'), ('MOOSEHEAD', None, '45.58330', '-69.71420'), ('MOSCOW', None, '45.07060', '-69.89170'), ('NEW PORTLAND', None, '44.88420', '-70.09720'), ('PITTSTON FARM', None, '45.89250', '-69.96530'), ('SEBOOMOOK', None, '45.88060', '-69.72560'), ('THE FORKS', None, '45.33610', '-69.96780')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GYX'}, -'ORZ007': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('AMITY', 1478, '45.11570', '-123.20310'), ('AUMSVILLE', 3003, '44.84570', '-122.86810'), ('AURORA', 655, '45.22830', '-122.75560'), ('BARLOW', 140, '45.25240', '-122.72010'), ('BROOKS', 410, '45.05000', '-122.96700'), ('BUELL', None, '45.01660', '-123.43330'), ('BUENA VISTA', None, '44.76660', '-123.15000'), ('CARLTON', 1514, '45.29500', '-123.17500'), ('COLTON', None, '45.18330', '-122.45000'), ('DALLAS', 12459, '44.92130', '-123.31230'), ('DAYTON', 2119, '45.22050', '-123.07660'), ('DONALD', 608, '45.22300', '-122.83770'), ('DUNDEE', 2598, '45.27650', '-123.00590'), ('FALLS CITY', 966, '44.86560', '-123.43670'), ('GERVAIS', 2009, '45.10850', '-122.89480'), ('HUBBARD', 2483, '45.18130', '-122.80580'), ('INDEPENDENCE', 6035, '44.85530', '-123.19250'), ('JEFFERSON', 2487, '44.71800', '-123.00530'), ('KEIZER', 32203, '45.00400', '-123.02120'), ('LAFAYETTE', 2586, '45.24610', '-123.11040'), ('MARION', 274, '44.75000', '-122.93300'), ('MARQUAM', None, '45.06700', '-122.70000'), ('MCMINNVILLE', 26499, '45.21120', '-123.19020'), ('MOLALLA', 5647, '45.14970', '-122.57800'), ('MONITOR', None, '45.10000', '-122.76660'), ('MONMOUTH', 7741, '44.85040', '-123.22880'), ('MOUNT ANGEL', 3121, '45.06930', '-122.79430'), ('MULINO', None, '45.21700', '-122.58300'), ('NEWBERG', 18064, '45.30100', '-122.97000'), ('PERRYDALE', None, '45.03330', '-123.26660'), ('PIKE', None, '45.38330', '-123.26660'), ('RICKREALL', 57, '44.93330', '-123.23330'), ('SALEM', 136924, '44.92450', '-123.02210'), ('SCOTTS MILLS', 312, '45.04090', '-122.66810'), ('SHERIDAN', 3570, '45.09540', '-123.39510'), ('SILVERTON', 7414, '45.00770', '-122.78070'), ('ST. PAUL', 354, '45.21300', '-122.97550'), ('STAYTON', 6816, '44.80180', '-122.79620'), ('SUBLIMITY', 2148, '44.82920', '-122.79170'), ('SUVER', None, '44.75000', '-123.20000'), ('TURNER', 1199, '44.84610', '-122.95150'), ('UNIONVALE', None, '45.15000', '-123.06660'), ('WEST SALEM', None, '44.96000', '-123.05000'), ('WHEATLAND', None, '45.08000', '-123.05000'), ('WHITESON', None, '45.15000', '-123.20000'), ('WOODBURN', 20100, '45.14840', '-122.85580'), ('YAMHILL', 794, '45.34130', '-123.18440')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORZ006': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALOHA', 41741, '45.49210', '-122.87180'), ('BANKS', 1286, '45.61540', '-123.11000'), ('BEAVERTON', 76129, '45.47550', '-122.81660'), ('BORING', None, '45.43300', '-122.38300'), ('CANBY', 12790, '45.26650', '-122.69170'), ('CEDAR HILLS', 8949, '45.50370', '-122.80560'), ('CHERRY GROVE', None, '45.45000', '-123.25000'), ('CLACKAMAS', 5177, '45.40860', '-122.55250'), ('CORBETT', None, '45.53300', '-122.30000'), ('CORNELIUS', 9652, '45.51890', '-123.05410'), ('DAMASCUS', None, '45.41660', '-122.46660'), ('DELTA PARK', None, '45.61000', '-122.68000'), ('DILLEY', None, '45.48330', '-123.11660'), ('DURHAM', 1382, '45.39470', '-122.75750'), ('EAGLE CREEK', None, '45.36660', '-122.36660'), ('FAIRVIEW', 7561, '45.54000', '-122.44000'), ('FARMINGTON', None, '45.45000', '-122.95000'), ('FOREST GROVE', 17708, '45.52230', '-123.10440'), ('GALES CREEK', None, '45.58330', '-123.21660'), ('GASTON', 600, '45.43560', '-123.14080'), ('GLADSTONE', 11438, '45.38580', '-122.59150'), ('GRESHAM', 90205, '45.50380', '-122.43820'), ('HAPPY VALLEY', 4519, '45.44380', '-122.53580'), ('HILLSBORO', 70186, '45.52770', '-122.93910'), ('JANTZEN BEACH', None, '45.62000', '-122.68000'), ('JOHNSON CITY', 634, '45.40440', '-122.57790'), ('KING CITY', 1949, '45.40540', '-122.80160'), ('LAKE OSWEGO', 35278, '45.41220', '-122.69810'), ('LLOYDS CENTER', None, '45.53000', '-122.66000'), ('MILWAUKIE', 20490, '45.44420', '-122.61970'), ('MT TABOR', None, '45.51000', '-122.59000'), ('NORTH PLAINS', 1605, '45.59670', '-122.99880'), ('OAK GROVE', 12808, '45.41350', '-122.63770'), ('OREGON CITY', 25754, '45.34490', '-122.59680'), ('PARKROSE', None, '45.55500', '-122.54250'), ('PORTLAND AIRPORT', None, '45.59000', '-122.60000'), ('PORTLAND DOWNTOWN', None, '45.52000', '-122.68000'), ('POWELLHURST', None, '45.49610', '-122.51510'), ('RALEIGH HILLS', 5865, '45.48490', '-122.75430'), ('ROCKCREEK', 9404, '45.55030', '-122.87590'), ('ROCKWOOD', None, '45.52000', '-122.49000'), ('ROCKY BUTTE', None, '45.54000', '-122.57000'), ('SAUVIE ISLAND', None, '45.67000', '-122.80000'), ('SCAPPOOSE', 4976, '45.75160', '-122.88050'), ('SCHOLLS', None, '45.40000', '-122.95000'), ('SELLWOOD', None, '45.46000', '-122.66000'), ('SHERWOOD', 11791, '45.35990', '-122.84190'), ('ST. JOHNS', None, '45.59000', '-122.75000'), ('SUNNYSIDE', 6791, '45.43220', '-122.55580'), ('SWAN ISLAND', None, '45.56000', '-122.71000'), ('SYLVAN', None, '45.51000', '-122.73000'), ('THE OREGON ZOO', None, '45.51000', '-122.71000'), ('TIGARD', 41223, '45.42500', '-122.77390'), ('TROUTDALE', 13777, '45.53690', '-122.39080'), ('TUALATIN', 22791, '45.37630', '-122.77170'), ('UNIVERSITY OF PORTLAND', None, '45.57000', '-122.73000'), ('WEST LINN', 22261, '45.36850', '-122.63820'), ('WILSHIRE PARK', None, '45.55000', '-122.63000'), ('WILSONVILLE', 13991, '45.30910', '-122.76630'), ('WOOD VILLAGE', 2860, '45.53350', '-122.42030')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORZ005': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALSTON', None, '46.10000', '-123.06000'), ('CLATSKANIE', 1528, '46.10370', '-123.20500'), ('COLUMBIA CITY', 1571, '45.89740', '-122.81080'), ('GOBLE', None, '46.01660', '-122.88330'), ('MAYGER', None, '46.16660', '-123.10000'), ('PRESCOTT', 72, '46.04730', '-122.88580'), ('QUINCY', None, '46.15000', '-123.16660'), ('RAINIER', 1687, '46.09230', '-122.94640'), ('ST. HELENS', 10019, '45.86060', '-122.81100'), ('WARREN', None, '45.81660', '-122.85000')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'ORZ004': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ALMA', None, '43.88000', '-123.48000'), ('ALSEA', None, '44.40000', '-123.56700'), ('BLACHLY', None, '44.20000', '-123.53300'), ('BLODGETT', None, '44.60000', '-123.51670'), ('BURNT WOODS', None, '44.60000', '-123.61660'), ('CANNIBAL MOUNTAIN', None, '44.34000', '-123.88000'), ('CHITWOOD', None, '44.65000', '-123.81660'), ('CROW', None, '43.99000', '-123.33000'), ('DEADWOOD', None, '44.10000', '-123.75000'), ('EDDYVILLE', None, '44.63330', '-123.76660'), ('ELK CITY', None, '44.61660', '-123.86660'), ('GRANDE RONDE', None, '45.06300', '-123.61700'), ('GREENLEAF', None, '44.11660', '-123.66660'), ('HARLAN', None, '44.53330', '-123.68330'), ('HORTON', None, '44.21660', '-123.48330'), ('LAUREL MOUNTAIN', None, '44.91000', '-123.54000'), ('LOGSDEN', None, '44.73330', '-123.78330'), ('LORANE', None, '43.83330', '-123.24000'), ('MAPLETON', None, '44.03300', '-123.86700'), ('NOTI', None, '44.05000', '-123.45000'), ('ROSE LODGE', 1708, '45.02210', '-123.87970'), ('SUMMIT', None, '44.63330', '-123.56670'), ('SWISSHOME', None, '44.05000', '-123.80000'), ('TIDEWATER', None, '44.41660', '-123.90000'), ('TIERNAN', None, '44.01660', '-123.93330'), ('TRIANGLE LAKE', None, '44.17000', '-123.58000'), ('VALSETZ', None, '44.83300', '-123.63300'), ('VAUGHN', None, '44.02000', '-123.43330'), ('VENETA', 2755, '44.04830', '-123.35230'), ('WALTON', None, '44.03300', '-123.58000')], 'partOfState': '', 'wfo': 'PQR'}, -'COZ094': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BRANSON', 77, '37.01460', '-103.87910'), ('DELHI', None, '37.63000', '-104.02000'), ('KIM', 65, '37.24630', '-103.35180'), ('TOBE', None, '37.22000', '-103.62000'), ('TRINCHERA', None, '37.05000', '-104.03000'), ('VILLE GREEN', None, '37.30000', '-103.52000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'DCZ001': {'fullStateName': 'DISTRICT OF COLUMBIA', 'state': 'DC', 'cities': [('ADAMS MORGAN', None, '38.92140', '-77.04250'), ('AMERICAN UNIVERSITY', None, '38.93690', '-77.08720'), ('ANACOSTIA', None, '38.86640', '-76.98420'), ('BOLLING AIR FORCE BASE', None, '38.84080', '-77.01670'), ('CATHOLIC UNIVERSITY', None, '38.93470', '-76.99940'), ('GEORGETOWN', None, '38.92280', '-77.07780'), ('KENILWORTH', None, '38.90580', '-76.94060'), ('LITTLE FALLS', None, '38.93330', '-77.11830'), ('NATIONAL ARBORETUM', None, '38.91030', '-76.96640'), ('NATIONAL ZOO', None, '38.92940', '-77.05000'), ('ROCK CREEK', None, '38.89940', '-77.05750'), ('THE MALL', None, '38.88940', '-77.02330'), ('THE WHITE HOUSE', None, '38.89750', '-77.03670'), ('US CAPITOL', None, '38.88970', '-77.00920'), ('WASHINGTON', 572059, '38.90510', '-77.01620')], 'partOfState': '', 'wfo': 'LWX'}, -'CAZ088': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('SANTA CLARITA', 151088, '34.41340', '-118.51020'), ('VAL VERDE', 1472, '34.44550', '-118.65570')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'NYZ019': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BEMUS POINT', 340, '42.16340', '-79.39120'), ('BROCTON', 1547, '42.38920', '-79.44230'), ('CASSADAGA', 676, '42.34100', '-79.31710'), ('CELORON', 1295, '42.10480', '-79.27610'), ('CHERRY CREEK', 551, '42.29510', '-79.10170'), ('FALCONER', 2540, '42.11890', '-79.19730'), ('FORESTVILLE', 770, '42.46860', '-79.17500'), ('FREDONIA', 10706, '42.44040', '-79.33180'), ('FREWSBURG', 1965, '42.05720', '-79.16110'), ('JAMESTOWN', 31730, '42.09740', '-79.23630'), ('JAMESTOWN WEST', 2535, '42.08940', '-79.27880'), ('LAKEWOOD', 3258, '42.10020', '-79.32000'), ('MAYVILLE', 1756, '42.25290', '-79.50230'), ('PANAMA', 491, '42.07500', '-79.48610'), ('RIPLEY', 1030, '42.26560', '-79.71140'), ('SHERMAN', 714, '42.16010', '-79.59490'), ('SILVER CREEK', 2896, '42.54350', '-79.16890'), ('SINCLAIRVILLE', 665, '42.26440', '-79.25820'), ('WESTFIELD', 3481, '42.32200', '-79.57590')], 'partOfState': '', 'wfo': 'BUF'}, -'MOZ031': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BOGARD', 234, '39.45790', '-93.52410'), ('BOSWORTH', 382, '39.46980', '-93.33560'), ('CARROLLTON', 4122, '39.36310', '-93.49630'), ('DE WITT', 120, '39.38490', '-93.22010'), ('HALE', 473, '39.60520', '-93.34320'), ('NORBORNE', 805, '39.30230', '-93.67580'), ('TINA', 193, '39.53720', '-93.44130'), ('WAKENDA', None, '39.31550', '-93.37790')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'CAZ080': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CALLAHAN', None, '41.30970', '-122.80030'), ('ETNA', 781, '41.45930', '-122.89280'), ('FORT JONES', 660, '41.60710', '-122.83980'), ('GREENVIEW', 200, '41.55080', '-122.90440'), ('HAPPY CAMP', None, '41.79330', '-123.37830'), ('SCOTT BAR', None, '41.74000', '-123.00000'), ('SEIAD VALLEY', None, '41.84060', '-123.19140'), ('SOMES BAR', None, '41.37640', '-123.47500')], 'partOfState': 'NORTHERN', 'wfo': 'MFR'}, -'CAZ081': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('GAZELLE', 136, '41.52080', '-122.51920'), ('GRENADA', 351, '41.64720', '-122.51890'), ('HILT', None, '41.99500', '-122.62220'), ('KLAMATH RIVER', None, '41.86140', '-122.82440'), ('MONTAGUE', 1456, '41.72750', '-122.52960'), ('WEED', 2978, '41.41650', '-122.37840'), ('YREKA', 7290, '41.72910', '-122.63150')], 'partOfState': 'NORTHERN', 'wfo': 'MFR'}, -'CAZ082': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('DUNSMUIR', 1923, '41.23350', '-122.26990'), ('MCCLOUD', 1343, '41.25480', '-122.13520'), ('MOUNT SHASTA', 3621, '41.32250', '-122.31470')], 'partOfState': 'NORTHERN', 'wfo': 'MFR'}, -'CAZ083': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BRAY', None, '41.64420', '-121.96970'), ('PONDOSA', None, '41.19940', '-121.68780'), ('TENNANT', 63, '41.58390', '-121.91220')], 'partOfState': 'NORTHERN', 'wfo': 'MFR'}, -'CAZ084': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('DORRIS', 886, '41.96520', '-121.92000'), ('MACDOEL', 140, '41.82690', '-122.00420'), ('NEWELL', None, '41.88830', '-121.37110'), ('TULELAKE', 1020, '41.95420', '-121.47480')], 'partOfState': 'NORTHERN', 'wfo': 'MFR'}, -'NYZ015': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BELLONA STN', None, '42.75000', '-77.03330'), ('BENTON', None, '42.73330', '-77.06670'), ('BLUFF POINT', None, '42.61670', '-77.11670'), ('BRANCHPORT', None, '42.60000', '-77.15000'), ('CROSBY', None, '42.55000', '-77.10000'), ('DRESDEN', 307, '42.68310', '-76.95690'), ('DUNDEE', 1690, '42.52350', '-76.97820'), ('FERGUSON CORNERS', None, '42.75000', '-77.10000'), ('FRIEND', None, '42.66670', '-77.18330'), ('GLENORA', None, '42.48330', '-76.91670'), ('GUYANOGA', None, '42.61670', '-77.16670'), ('HIMROD', None, '42.58330', '-76.95000'), ('ITALY', None, '42.61670', '-77.28330'), ('ITALY HILL', None, '42.60000', '-77.25000'), ('KEUKA PARK', None, '42.61670', '-77.08330'), ('LAKEMONT', None, '42.51670', '-76.91670'), ('MAYS MILLS', None, '42.66670', '-76.98330'), ('MIDDLESEX', None, '42.70000', '-77.26670'), ('MILO CENTER', None, '42.66670', '-77.00000'), ('MILO MILLS', None, '42.66670', '-77.03330'), ('PENN YAN', 5219, '42.66120', '-77.05490'), ('PORTER CORNER', None, '42.55000', '-77.03330'), ('POTTER', None, '42.70000', '-77.20000'), ('ROCK STREAM', None, '42.46670', '-76.91670'), ('RUSHVILLE', 621, '42.76060', '-77.22750'), ('STARKEY', None, '42.53330', '-76.91670'), ('VINE VALLEY', None, '42.71670', '-77.31670'), ('YATESVILLE', None, '42.66670', '-77.13330')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ016': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BORDER CITY', None, '42.88330', '-76.95000'), ('CANOGA', None, '42.85000', '-76.73330'), ('CAYWOOD', None, '42.56670', '-76.85000'), ('COVERT', None, '42.58330', '-76.66670'), ('DUBLIN', None, '43.00000', '-76.91670'), ('EAST VARICK', None, '42.76670', '-76.76670'), ('FAYETTE', None, '42.81670', '-76.80000'), ('HAYTS CORNERS', None, '42.70000', '-76.78330'), ('INTERLAKEN', 674, '42.61870', '-76.72470'), ('KELLY CORNERS', None, '42.60000', '-76.75000'), ('KENDAIA', None, '42.75000', '-76.88330'), ('KIDDERS', None, '42.65000', '-76.68330'), ('LEHIGH VLY JCT', None, '42.95000', '-76.76670'), ('LODI', 338, '42.61330', '-76.82250'), ('LODI STATION', None, '42.61670', '-76.85000'), ('MAC DOUGALL', None, '42.80000', '-76.86670'), ('MAGEE', None, '42.96670', '-76.83330'), ('OVID', 612, '42.67530', '-76.82160'), ('PACKWOOD CORNERS', None, '42.90000', '-76.90000'), ('ROMULUS', None, '42.75000', '-76.83330'), ('ROSE HILL', None, '42.85000', '-76.90000'), ('SENECA FALLS', 6861, '42.90940', '-76.79580'), ('SHELDRAKE', None, '42.66670', '-76.68330'), ('SHELDRAKE SPGS', None, '42.66670', '-76.75000'), ('TOWNSENDVILLE', None, '42.56670', '-76.76670'), ('TYRE', None, '42.98330', '-76.80000'), ('WATERLOO', 5111, '42.90450', '-76.85940'), ('WILLARD', None, '42.68330', '-76.86670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'CAZ087': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AVALON', 3127, '33.34290', '-118.32740'), ('CATALINA AIRPORT', None, '33.41000', '-118.42000'), ('TWO HARBORS', None, '33.44000', '-118.50000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'WIZ048': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALLENVILLE', None, '44.13000', '-88.61000'), ('BUTTE DES MORTS', None, '44.09000', '-88.65000'), ('EUREKA', None, '44.00000', '-88.84000'), ('FISK', None, '43.95000', '-88.68000'), ('LAKE BUTTE DES MORTS', None, '44.08000', '-88.63000'), ('LAKE POYGAN', None, '44.16000', '-88.86000'), ('LARSEN', None, '44.18000', '-88.61000'), ('MENASHA', 16331, '44.20000', '-88.44000'), ('NEENAH', 24507, '44.18000', '-88.44000'), ('NORTHERN LAKE WINNEBAGO', None, '44.17000', '-88.40000'), ('OMRO', 3177, '44.03000', '-88.75000'), ('OSHKOSH', 62916, '44.01000', '-88.55000'), ('PICKETT', None, '43.91000', '-88.73000'), ('RUSH LAKE', None, '43.91000', '-88.83000'), ('WAUKAU', None, '44.00000', '-88.76000'), ('WINCHESTER IN WINNEBAGO C', None, '44.20000', '-88.66000'), ('WINNEBAGO', None, '44.06000', '-88.51000'), ('WINNECONNE', 2401, '44.11000', '-88.71000'), ('WITTMAN FIELD', None, '43.98000', '-88.55000'), ('ZITTAU', None, '44.21000', '-88.78000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GRB'}, -'WIZ049': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRILLION', 2937, '44.18000', '-88.06000'), ('BROTHERTOWN', None, '43.96000', '-88.30000'), ('CENTRAL LAKE WINNEBAGO', None, '44.08000', '-88.40000'), ('CHARLESBURG', None, '43.96000', '-88.16000'), ('CHILTON', 3708, '44.03000', '-88.16000'), ('DARBOY', None, '44.23000', '-88.38000'), ('DUNDAS', None, '44.23000', '-88.19000'), ('FOREST JUNCTION', None, '44.21000', '-88.15000'), ('HAYTON', None, '44.01000', '-88.11000'), ('HIGH CLIFF STATE PARK', None, '44.16000', '-88.28000'), ('HILBERT', 1089, '44.13000', '-88.16000'), ('JERICHO', None, '43.96000', '-88.26000'), ('NEW HOLSTEIN', 3301, '43.95000', '-88.08000'), ('POTTER', 223, '44.11000', '-88.09000'), ('QUINNEY', None, '44.01000', '-88.30000'), ('ST ANNA', None, '43.90000', '-88.13000'), ('ST JOHN', None, '44.16000', '-88.19000'), ('STOCKBRIDGE', 649, '44.06000', '-88.30000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GRB'}, -'WIZ040': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALASKA', None, '44.53000', '-87.50000'), ('CASCO', 572, '44.56000', '-87.61000'), ('DUVALL', None, '44.66000', '-87.69000'), ('DYCKESVILLE', None, '44.65000', '-87.75000'), ('ELLISVILLE', None, '44.46000', '-87.68000'), ('EUREN', None, '44.61000', '-87.59000'), ('KEWAUNEE', 2806, '44.45000', '-87.50000'), ('LINCOLN', None, '44.61000', '-87.63000'), ('LUXEMBURG', 1935, '44.54000', '-87.69000'), ('NEUERN', None, '44.50000', '-87.71000'), ('NORMAN', None, '44.36000', '-87.59000'), ('PILSEN', None, '44.45000', '-87.71000'), ('RANKIN', None, '44.59000', '-87.50000'), ('RIO CREEK', None, '44.58000', '-87.53000'), ('ROSIERE', None, '44.66000', '-87.59000'), ('ROSTOK', None, '44.50000', '-87.50000'), ('SLOVAN', None, '44.53000', '-87.58000'), ('STANGELVILLE', None, '44.40000', '-87.68000'), ('TISCH MILLS', None, '44.33000', '-87.61000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WIZ041': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BANGOR', 1400, '43.89200', '-90.99110'), ('BARRE MILLS', None, '43.83551', '-91.11631'), ('BRICE PRAIRIE', 1804, '43.93870', '-91.29970'), ('BURNS', None, '43.95247', '-90.98107'), ('BURR OAK', None, '44.05116', '-91.04686'), ('COUNCIL BAY', None, '44.05116', '-91.28262'), ('FRENCH ISLAND', 4410, '43.85830', '-91.26030'), ('HOLMEN', 6200, '43.95690', '-91.25900'), ('LA CROSSE', 51818, '43.82690', '-91.23390'), ('MEDARY', None, '43.86840', '-91.20038'), ('MIDDLE RIDGE', None, '43.80078', '-90.94818'), ('MINDORO', None, '44.01826', '-91.09986'), ('NEW AMSTERDAM', None, '43.98537', '-91.31734'), ('NEWBURG CORNERS', None, '43.78251', '-90.98290'), ('ONALASKA', 14839, '43.88710', '-91.21880'), ('ROCKLAND', 628, '43.90610', '-90.91820'), ('ST JOSEPH', None, '43.78616', '-91.03224'), ('STEVENSTOWN', None, '44.03654', '-91.16748'), ('WEST SALEM', 4540, '43.89860', '-91.08170')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'WIZ042': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CASHTON', 1005, '43.74310', '-90.78140'), ('CATARACT', None, '44.08588', '-90.83121'), ('CLIFTON', None, '43.88119', '-90.35057'), ('FORT MC COY', None, '44.01643', '-90.68135'), ('FOUR CORNERS', None, '44.07857', '-90.91162'), ('GLENDALE', 13367, '43.78251', '-90.34874'), ('KENDALL', 469, '43.79320', '-90.36760'), ('KIRBY', None, '44.10233', '-90.53332'), ('MELVINA', 93, '43.80430', '-90.78030'), ('NORWALK', 653, '43.83330', '-90.62540'), ('OAKDALE', 297, '43.96270', '-90.37860'), ('PORTLAND', None, '43.76606', '-90.84949'), ('RIDGEVILLE', None, '43.88485', '-90.56622'), ('SHENNINGTON', None, '44.03105', '-90.31401'), ('SPARTA', 8648, '43.94280', '-90.80980'), ('ST MARYS', None, '43.80078', '-90.68501'), ('TOMAH', 8419, '43.98960', '-90.50330'), ('TUNNEL CITY', None, '44.00181', '-90.56804'), ('VALLEY JUNCTION', None, '44.05116', '-90.41453'), ('WARRENS', 286, '44.13040', '-90.50060'), ('WILTON', 519, '43.81450', '-90.52740'), ('WYEVILLE', 146, '44.02770', '-90.38580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'WIZ043': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BUCKHORN STATE PARK', None, '43.91775', '-89.97774'), ('CAMP DOUGLAS', 592, '43.91890', '-90.26890'), ('CLOVERDALE', None, '44.01643', '-90.18243'), ('CUTLER', None, '44.01826', '-90.23543'), ('ELROY', 1578, '43.74270', '-90.27240'), ('FINLEY', None, '44.21746', '-90.13309'), ('HUSTLER', 113, '43.87930', '-90.26820'), ('LEMONWEIR', None, '43.78251', '-90.01247'), ('LYNDON STATION', 458, '43.71010', '-89.89440'), ('MATHER', None, '44.14985', '-90.29574'), ('MAUSTON', 3740, '43.80060', '-90.08110'), ('MEADOW VALLEY', None, '44.22112', '-90.21533'), ('NECEDAH', 888, '44.02460', '-90.07170'), ('NEW LISBON', 1436, '43.87860', '-90.16470'), ('NEW MINER', None, '44.16629', '-90.03257'), ('SPRAGUE', None, '44.14985', '-90.13309'), ('UNION CENTER', 214, '43.68410', '-90.26320'), ('WONEWOC', 834, '43.65310', '-90.22400')], 'partOfState': 'CENTRAL', 'wfo': 'ARX'}, -'WIZ044': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ADAMS', 1914, '43.95530', '-89.81690'), ('ARKDALE', None, '44.03288', '-89.88271'), ('BIG FLATS', None, '44.11878', '-89.80230'), ('BIG SPRINGS', None, '43.66737', '-89.63416'), ('BROOKS', None, '43.81906', '-89.63416'), ('DELLWOOD', None, '43.96892', '-89.95581'), ('FRIENDSHIP', 698, '43.97180', '-89.82000'), ('GRAND MARSH', None, '43.89947', '-89.71275'), ('MONROE CENTER', None, '44.11878', '-89.94850'), ('NEW ROME', None, '44.23574', '-89.88454'), ('PLAINVILLE', None, '43.71671', '-89.81509'), ('STRONGS PRAIRIE', None, '44.07126', '-89.98323'), ('WHITE CREEK', None, '43.83551', '-89.86444')], 'partOfState': 'CENTRAL', 'wfo': 'ARX'}, -'WIZ045': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AURORAVILLE', None, '44.04000', '-89.00000'), ('BORTH', None, '44.09000', '-88.90000'), ('COLOMA', 461, '44.03000', '-89.51000'), ('HANCOCK', 463, '44.13000', '-89.51000'), ('LOHRVILLE', 408, '44.02000', '-89.11000'), ('MOUNT MORRIS', None, '44.11000', '-89.19000'), ('PINE RIVER', None, '44.15000', '-89.08000'), ('PLAINFIELD', 899, '44.21000', '-89.48000'), ('POY SIPPI', None, '44.13000', '-89.00000'), ('REDGRANITE', 1040, '44.03000', '-89.09000'), ('RICHFORD', None, '44.01000', '-89.43000'), ('SAXEVILLE', None, '44.18000', '-89.11000'), ('SILVER LAKE', 2341, '44.04000', '-89.23000'), ('SPRING LAKE', None, '44.01000', '-89.16000'), ('TUSTIN', None, '44.16000', '-88.89000'), ('WAUTOMA', 1998, '44.06000', '-89.28000'), ('WEST BLOOMFIELD', None, '44.21000', '-88.96000'), ('WILD ROSE', 765, '44.18000', '-89.25000')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'WIZ046': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ENDEAVOR', 440, '43.71470', '-89.46890'), ('MONTELLO', 1397, '43.79430', '-89.33440'), ('NESHKORO', 453, '43.96520', '-89.21390'), ('OXFORD', 536, '43.78020', '-89.56270'), ('WESTFIELD', 1217, '43.88460', '-89.49410')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'WIZ047': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BERLIN', 5305, '43.97000', '-88.95020'), ('GREEN LAKE', 1100, '43.84270', '-88.95570'), ('KINGSTON', 288, '43.69360', '-89.13130'), ('MARKESAN', 1396, '43.70920', '-88.98970'), ('MARQUETTE', 169, '43.74220', '-89.13880'), ('PRINCETON', 1504, '43.85220', '-89.12950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'GAZ013': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('JASPER', 2167, '34.46980', '-84.42830'), ('TALKING ROCK', 49, '34.50950', '-84.50520')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ012': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CALHOUN', 10667, '34.49450', '-84.94380'), ('FAIRMOUNT', 745, '34.44080', '-84.70130'), ('PLAINVILLE', 257, '34.40410', '-85.03640'), ('RANGER', 85, '34.50010', '-84.71150'), ('RESACA', 815, '34.58190', '-84.94450')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ011': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LYERLY', 488, '34.40330', '-85.40420'), ('MENLO', 485, '34.48330', '-85.47680'), ('SUMMERVILLE', 4556, '34.47850', '-85.34900'), ('TRION', 1993, '34.54910', '-85.31060')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ010': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CLAYTON', 2019, '34.87740', '-83.40090'), ('CLAYTON', 2019, '34.87740', '-83.40090'), ('DILLARD', 198, '34.97250', '-83.38560'), ('DILLARD', 198, '34.97250', '-83.38560'), ('LAKEMONT', None, '34.78190', '-83.41640'), ('MOCCASIN CREEK STATE PARK', None, '34.84580', '-83.58750'), ('MOUNTAIN CITY', 829, '34.91880', '-83.38600'), ('MOUNTAIN CITY', 829, '34.91880', '-83.38600'), ('PINE MOUNTAIN', 1141, '34.94030', '-83.18720'), ('SKY VALLEY', 221, '34.98330', '-83.33220'), ('SKY VALLEY', 221, '34.98330', '-83.33220'), ('TIGER', 316, '34.84550', '-83.43340'), ('TIGER', 316, '34.84550', '-83.43340')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'GAZ017': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BALDWIN', 2425, '34.49210', '-83.55000'), ('BALDWIN', 2425, '34.49210', '-83.55000'), ('BATESVILLE', None, '34.74810', '-83.61140'), ('CLARKESVILLE', 1248, '34.60950', '-83.52280'), ('CLARKESVILLE', 1248, '34.60950', '-83.52280'), ('CORNELIA', 3674, '34.51240', '-83.52940'), ('CORNELIA', 3674, '34.51240', '-83.52940'), ('DEMOREST', 1465, '34.56550', '-83.54540'), ('DEMOREST', 1465, '34.56550', '-83.54540'), ('HOLLYWOOD', None, '34.64940', '-83.44750'), ('MOUNT AIRY', 604, '34.51940', '-83.50330'), ('MOUNT AIRY', 604, '34.51940', '-83.50330'), ('TALLULAH FALLS', 164, '34.72390', '-83.38250'), ('TURNERVILLE', None, '34.68670', '-83.42610')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'GAZ016': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CLEVELAND', 1907, '34.59690', '-83.76420'), ('HELEN', 430, '34.70200', '-83.72220')], 'partOfState': 'NORTHEAST', 'wfo': 'FFC'}, -'GAZ015': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAHLONEGA', 3638, '34.53680', '-83.98460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ014': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAWSONVILLE', 619, '34.42070', '-84.11940')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ019': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CAVE SPRING', 975, '34.10950', '-85.33390'), ('LINDALE', 4088, '34.18760', '-85.18070'), ('ROME', 34980, '34.26270', '-85.18670'), ('SHANNON', 1682, '34.33990', '-85.08630')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ018': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AVALON', 278, '34.50150', '-83.19440'), ('BOYDVILLE', None, '34.54000', '-83.36640'), ('EASTANOLEE', None, '34.52030', '-83.25560'), ('MARTIN', 311, '34.48510', '-83.18640'), ('TOCCOA', 9323, '34.57990', '-83.32470')], 'partOfState': 'NORTHEAST', 'wfo': 'GSP'}, -'ALZ069': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ASHFORD', 1853, '31.18580', '-85.23460'), ('AVON', 466, '31.18860', '-85.28690'), ('CHATTAHOOCHEE SP', None, '31.00550', '-85.03330'), ('COLUMBIA', 804, '31.29230', '-85.11130'), ('COTTONWOOD', 1170, '31.05200', '-85.30190'), ('COTTONWOOD RD/ROSS CLARK', None, '31.19380', '-85.37570'), ('COWARTS', 1546, '31.19880', '-85.30510'), ('CROSBY', None, '31.03830', '-85.08600'), ('DOWNTOWN DOTHAN', None, '31.22280', '-85.39330'), ('EAST MAIN/ROSS CLARK CIRC', None, '31.21470', '-85.36110'), ('FLOWERS CHAPEL RD/BRANNON', None, '31.21800', '-85.48640'), ('GEORGE W. ANDREWS L&D', None, '31.25910', '-85.11260'), ('GORDON', 408, '31.14560', '-85.09440'), ('GRANGEBURG', None, '31.01100', '-85.22420'), ('HARMON SCHOOL', None, '31.08910', '-85.15020'), ('HARTFORD HWY/ROSS CLARK C', None, '31.20660', '-85.42400'), ('HODGESVILLE', None, '31.08160', '-85.37310'), ('JOSEPH M. FARLEY NP', None, '31.22060', '-85.11040'), ('KINSEY', 1796, '31.29750', '-85.34450'), ('LOVETOWN', None, '31.11510', '-85.27510'), ('MADRID', 303, '31.03440', '-85.39360'), ('MEMPHIS', 33, '31.13940', '-85.36750'), ('MONTGOMERY HWY/ROSS CLARK', None, '31.24810', '-85.42460'), ('PANSEY', None, '31.15290', '-85.17630'), ('PEANUT FESTIVAL', None, '31.14430', '-85.40380'), ('PLEASANT PLAINS', None, '31.30280', '-85.22580'), ('REEVES ST/ROSS CLARK CIRC', None, '31.25190', '-85.38910'), ('REHOBETH', 993, '31.12190', '-85.45140'), ('SIGMA', None, '31.28120', '-85.19630'), ('SOUTH OATES/ROSS CLARK CI', None, '31.18950', '-85.40140'), ('SOUTHERN JUNCTION', None, '31.02800', '-85.47020'), ('TAYLOR', 1898, '31.16450', '-85.46760'), ('W. MAIN/BRANNON STAND RD', None, '31.23890', '-85.48100'), ('WEBB', 1298, '31.25930', '-85.27350'), ('WEBB RD/ROSS CLARK CIRCLE', None, '31.23740', '-85.36510'), ('WEST MAIN/ROSS CLARK CIRC', None, '31.22750', '-85.43220'), ('WICKSBURG', None, '31.20900', '-85.62470'), ('WILLIAMS', None, '31.30330', '-85.16090'), ('WILSON MILL', None, '31.15910', '-85.34390')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'ALZ068': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BELLWOOD', None, '31.17160', '-85.79320'), ('BLACK', 202, '31.00940', '-85.74320'), ('CHANCELLOR', None, '31.18010', '-85.87720'), ('COFFEE SPRINGS', 251, '31.16660', '-85.90990'), ('EUNOLA', 182, '31.03860', '-85.84550'), ('FADETTE', None, '31.04250', '-85.53920'), ('GANER', None, '31.08180', '-86.10720'), ('GENEVA', 4388, '31.03660', '-85.87680'), ('GENEVA MUNI A/P', None, '31.05270', '-85.87830'), ('HACODA', None, '31.07360', '-86.16680'), ('HARTFORD', 2369, '31.10070', '-85.69750'), ('LOGAN FIELD MUNI A/P', None, '31.10050', '-86.06300'), ('MALVERN', 1215, '31.13590', '-85.51940'), ('OAK GROVE', 457, '31.08580', '-85.77580'), ('SAMSON', 2071, '31.11220', '-86.04660'), ('SELLERSVILLE', None, '31.12860', '-86.00370'), ('SLOCOMB', 2052, '31.11030', '-85.59430'), ('THURSTON', None, '31.01340', '-85.78190')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'ALZ065': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALBERTON', None, '31.27720', '-86.12590'), ('BATTENS CROSSROADS', None, '31.25950', '-85.88990'), ('CARL FOLSOM A/P', None, '31.40940', '-86.08890'), ('CENTRAL CITY', None, '31.24180', '-85.88510'), ('CLINTONVILLE', None, '31.40580', '-85.89470'), ('CURTIS', None, '31.39680', '-86.15730'), ('DAMASCUS', None, '31.31910', '-86.00460'), ('DANLEYS CROSSROADS', None, '31.41930', '-86.16690'), ('ELBA', 4185, '31.41460', '-86.06850'), ('ENTERPRISE', 21178, '31.31340', '-85.85410'), ('ENTERPRISE MUNI A/P', None, '31.29860', '-85.89980'), ('FAIRVIEW', 522, '31.24790', '-86.03800'), ('GOODMAN', None, '31.27870', '-85.99460'), ('INO', None, '31.27070', '-86.09470'), ('JACK', None, '31.57500', '-85.99920'), ('KEYTON', None, '31.28140', '-85.82580'), ('KINSTON', 602, '31.21620', '-86.16890'), ('MIXONS CROSSROADS', None, '31.48270', '-85.92010'), ('NEW BROCKTON', 1250, '31.38580', '-85.93020'), ('NEW HOPE', 2539, '31.55290', '-85.86790'), ('NEWBY', None, '31.55560', '-86.13130'), ('PERRY STORE', None, '31.27940', '-86.15730'), ('ROETON', None, '31.59730', '-85.83480'), ('SHADY GROVE', None, '31.52350', '-86.03780'), ('TABERNACLE', None, '31.45320', '-85.86920'), ('VICTORIA', None, '31.52950', '-85.93230')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'ALZ064': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BATTLES WHARF', None, '30.49380', '-87.92790'), ('BON SECOUR', None, '30.31550', '-87.72950'), ('BRIDGEHEAD', None, '30.66860', '-87.91120'), ('CLAY CITY', None, '30.48610', '-87.80670'), ('DAPHNE', 16581, '30.60310', '-87.90370'), ('ELBERTA', 552, '30.41440', '-87.59770'), ('ELSANOR', None, '30.54500', '-87.58360'), ('FAIRHOPE', 12480, '30.52250', '-87.90340'), ('FOLEY', 7590, '30.40570', '-87.68360'), ('FORT MORGAN', None, '30.22800', '-88.02000'), ('GASQUE', None, '30.25330', '-87.82030'), ('HOUSTONVILLE', None, '30.50140', '-87.90020'), ('I10 NEAR THE BATTLESHIP', None, '30.67500', '-87.98400'), ('JACKSON OAK', None, '30.62290', '-87.91190'), ('LILLIAN', None, '30.41310', '-87.43710'), ('LOXLEY', 1348, '30.61780', '-87.75330'), ('MAGNOLIA SPRINGS', None, '30.40000', '-87.77620'), ('MALBIS', None, '30.65560', '-87.85220'), ('MARLOW', None, '30.46030', '-87.79910'), ('MIFLIN', None, '30.37000', '-87.61090'), ('MONTROSE', None, '30.56530', '-87.90170'), ('MOUTH OF WEEKS BAY', None, '30.37570', '-87.83670'), ('OAK', None, '30.31800', '-87.70630'), ('PALMETTO BEACH', None, '30.24780', '-87.83940'), ('PARK CITY', None, '30.64310', '-87.91220'), ('POINT CLEAR', 1876, '30.47410', '-87.91930'), ('ROBERTSDALE', 3782, '30.55360', '-87.71190'), ('ROSINTON', None, '30.61890', '-87.69380'), ('SEMINOLE', None, '30.51470', '-87.47390'), ('SILVERHILL', 616, '30.54670', '-87.75170'), ('SPANISH FORT', 5423, '30.67180', '-87.87850'), ('SUMMERDALE', 655, '30.48830', '-87.70040'), ('TURKEY BRANCH', None, '30.42190', '-87.83650')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALZ067': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ABBEVILLE', 2987, '31.56750', '-85.25050'), ('ABBEVILLE MUNI A/P', None, '31.59920', '-85.23890'), ('BLACKWOOD', None, '31.38760', '-85.40250'), ('CAPPS', None, '31.49570', '-85.31210'), ('EDWIN', None, '31.66480', '-85.37520'), ('HALEBURG', 108, '31.40610', '-85.13800'), ('HEADLAND', 3523, '31.35190', '-85.34330'), ('HEADLAND MUNI A/P', None, '31.36460', '-85.30980'), ('LAWRENCEVILLE', None, '31.65660', '-85.26940'), ('NEWVILLE', 553, '31.42170', '-85.33650'), ('SCREAMER', None, '31.66020', '-85.20690'), ('SHORTERVILLE', None, '31.56990', '-85.10090'), ('TUMBLETON', None, '31.40590', '-85.25620'), ('WALTER F. GEORGE L&D', None, '31.61210', '-85.07980')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'ALZ066': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ARGUTA', None, '31.56870', '-85.59540'), ('ARITON', 772, '31.59840', '-85.71540'), ('ASBURY', None, '31.51110', '-85.54530'), ('BARNES', None, '31.54200', '-85.67440'), ('BEAMON', None, '31.51850', '-85.58620'), ('BELLS CROSSROADS', None, '31.52150', '-85.45080'), ('BERTHA', None, '31.54110', '-85.42880'), ('BLACKWELL FIELD A/P', None, '31.42980', '-85.61940'), ('BOWDEN TERRACE', None, '31.34710', '-85.71850'), ('BROWNS CROSSROADS', None, '31.45540', '-85.52770'), ('CAIRNS AAF', None, '31.27540', '-85.71160'), ('CLAYHATCHEE', 501, '31.23480', '-85.72240'), ('CLAYHATCHEE', 501, '31.23480', '-85.72240'), ('CLOPTON', None, '31.60720', '-85.43000'), ('DALEVILLE', 4653, '31.30570', '-85.71440'), ('DILL', None, '31.51020', '-85.65320'), ('DYKES CROSSROADS', None, '31.59940', '-85.56120'), ('ECHO', None, '31.47450', '-85.46360'), ('EWELL', None, '31.42080', '-85.57470'), ('FORT RUCKER', 6052, '31.34340', '-85.71510'), ('GERALD', None, '31.32210', '-85.75750'), ('GRIMES', 459, '31.30340', '-85.44830'), ('HOLIDAY VILLAGE', None, '31.33940', '-85.76560'), ('KELLY', None, '31.31920', '-85.65410'), ('LEVEL PLAINS', 1544, '31.29900', '-85.77700'), ('MABSON', None, '31.46760', '-85.56160'), ('MARLEY HILL', None, '31.49290', '-85.69450'), ('MIDLAND CITY', 1703, '31.31630', '-85.49340'), ('NAPIER FIELD', 404, '31.31510', '-85.45530'), ('NEWTON', 1708, '31.33350', '-85.60380'), ('OZARK', 15119, '31.45700', '-85.64040'), ('PHILLIPS CROSSROADS', None, '31.61650', '-85.60690'), ('PINCKARD', 667, '31.31020', '-85.54780'), ('PLEASANT HILL', None, '31.42770', '-85.67460'), ('ROBERTS CROSSROADS', None, '31.60040', '-85.52900'), ('ROCKY HEAD', None, '31.56750', '-85.76830'), ('SKIPPERVILLE', None, '31.55710', '-85.54630'), ('SNOW HILL', None, '31.45810', '-85.48070'), ('SYLVAN GROVE', None, '31.35250', '-85.46570'), ('WATERFORD', None, '31.35880', '-85.60380')], 'partOfState': 'SOUTHEAST', 'wfo': 'TAE'}, -'ALZ061': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AXIS', None, '30.92970', '-88.02890'), ('BIG CREEK LAKE', None, '30.76640', '-88.34860'), ('BIG CREEK LAKE DAM', None, '30.71000', '-88.33000'), ('BUCKS', None, '31.01080', '-88.02580'), ('CALVERT', None, '31.15520', '-88.01040'), ('CELESTE', None, '30.89430', '-88.12340'), ('CHASTANG', None, '31.03900', '-88.02500'), ('CHICKASAW', 6364, '30.76360', '-88.07640'), ('CHUNCHULA', None, '30.92140', '-88.20060'), ('CITRONELLE', 3659, '31.09030', '-88.23860'), ('COCHRANE BRIDGE', None, '30.73300', '-88.04200'), ('CREOLA', 2002, '30.89690', '-88.03900'), ('CRICHTON', None, '30.70070', '-88.11230'), ('DOWNTOWN MOBILE', None, '30.69060', '-88.03890'), ('EARLVILLE', None, '30.98370', '-88.41000'), ('EIGHT MILE', None, '30.76360', '-88.12720'), ('FOREST HILL', None, '30.71880', '-88.15420'), ('FORT STODDARD', None, '31.09440', '-87.97890'), ('GEORGETOWN', None, '30.90260', '-88.27820'), ('GULFCREST', None, '30.99560', '-88.23940'), ('I65 AND AL 158', None, '30.80250', '-88.10380'), ('I65 AND I165', None, '30.75250', '-88.09540'), ('I65 AND MOFFETT ROAD', None, '30.70710', '-88.12220'), ('I65 AND US 43', None, '30.87790', '-88.04300'), ('I65 AND US 45', None, '30.74080', '-88.10800'), ('KUSHLA', None, '30.81870', '-88.16290'), ('LANGAN PARK', None, '30.70570', '-88.15990'), ('LOTT AND COLEMAN DAIRY RO', None, '30.83700', '-88.27120'), ('MAGNOLIA GROVE GOLF COURS', None, '30.73480', '-88.20950'), ('MOBILE INFIRMARY', None, '30.69700', '-88.08120'), ('MOFFET', None, '30.85390', '-88.39890'), ('MOUNT VERNON', 844, '31.08630', '-88.01820'), ('OAK GROVE', 457, '30.85810', '-88.18360'), ('PINEOLA', None, '31.05710', '-88.11180'), ('PRICHARD', 28633, '30.73850', '-88.08790'), ('SALCO', None, '30.96780', '-88.02760'), ('SARALAND', 12288, '30.82010', '-88.07060'), ('SATSUMA', 5687, '30.85410', '-88.05750'), ('SEMMES', None, '30.77860', '-88.26080'), ('SIDNEY', None, '31.06810', '-88.23580'), ('SNOW AND TANNER WILLIAMS', None, '30.71100', '-88.27600'), ('SPRING HILL COLLEGE', None, '30.69280', '-88.14000'), ('TANNER WILLIAMS', None, '30.72330', '-88.37030'), ('TURNERVILLE', None, '30.97860', '-88.12920'), ('UNIVERSITY OF SOUTH ALABA', None, '30.69480', '-88.18000'), ('WALLACE TUNNEL', None, '30.68930', '-88.03760'), ('WHISTLER', None, '30.75640', '-88.10440'), ('WILMER', None, '30.82250', '-88.36170')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALZ060': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ANDALUSIA', 8794, '31.30760', '-86.48390'), ('BABBIE', 627, '31.27810', '-86.32390'), ('BECK', None, '31.25590', '-86.58490'), ('BROOKS', None, '31.48200', '-86.68600'), ('CAROLINA', 248, '31.23130', '-86.52070'), ('CLEARVIEW', None, '31.45170', '-86.44820'), ('EODA', None, '31.37690', '-86.31690'), ('ESTOTHEL', None, '31.24410', '-86.19830'), ('FALCO', None, '31.04860', '-86.62060'), ('FLORALA', 1964, '31.00440', '-86.32830'), ('GANTT', 241, '31.40650', '-86.48070'), ('GREEN BAY', None, '31.17810', '-86.29080'), ('HEATH', 249, '31.36190', '-86.47020'), ('HOWELLS', None, '31.05180', '-86.20850'), ('LIBERTYVILLE', 106, '31.24170', '-86.46130'), ('LOANGO', None, '31.32910', '-86.64820'), ('LOCKHART', 548, '31.01270', '-86.34980'), ('ONYCHA', 208, '31.21390', '-86.28310'), ('OPP', 6607, '31.28220', '-86.25670'), ('PLEASANT HOME', None, '31.15990', '-86.61620'), ('RED LEVEL', 556, '31.40640', '-86.61310'), ('RED OAK', None, '31.13940', '-86.46080'), ('RIVER FALLS', 616, '31.35420', '-86.53840'), ('ROSE HILL', None, '31.44900', '-86.35580'), ('SANFORD', 269, '31.29760', '-86.38890'), ('SOUTH', None, '31.44540', '-86.61310'), ('STEDMAN', None, '31.07240', '-86.30410'), ('WATKINS BRIDGE', None, '31.09180', '-86.43280'), ('WING', None, '31.02670', '-86.61080')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'ALZ063': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AIRPORT AND GOVERNMENT', None, '30.67610', '-88.08690'), ('AIRPORT AND UNIVERSITY', None, '30.67580', '-88.16970'), ('BAYOU LA BATRE', 2313, '30.40370', '-88.24860'), ('BELLEFONTAINE', None, '30.50120', '-88.11080'), ('BROOKLEY FIELD AIRPORT', None, '30.63500', '-88.07430'), ('COTTAGE HILL PARK', None, '30.65610', '-88.18440'), ('DAUPHIN ISLAND', 1371, '30.25530', '-88.10980'), ('DAWES', None, '30.60810', '-88.25690'), ('DEES', None, '30.56360', '-88.34360'), ('DELCHAMPS', None, '30.40060', '-88.14920'), ('DIXON CORNER', None, '30.45220', '-88.24200'), ('EAST END OF DAUPHIN ISLAN', None, '30.26000', '-88.07420'), ('GRAND BAY', 3918, '30.47580', '-88.34250'), ('HOLLINGERS ISLAND', None, '30.54840', '-88.11040'), ('HUTCHENS ELEMENTARY SCHOO', None, '30.62000', '-88.27600'), ('I10 AND I65 INTERSECTION', None, '30.62830', '-88.11690'), ('I10 AND MCDONALD ROAD', None, '30.53560', '-88.23990'), ('I65 AND AIRPORT BLVD', None, '30.67670', '-88.12780'), ('IRVINGTON', None, '30.50690', '-88.23560'), ('KNOLLWOOD HOSPITAL', None, '30.61950', '-88.17170'), ('LADD STADIUM', None, '30.67350', '-88.07620'), ('LAURENDINE', None, '30.49810', '-88.17170'), ('MOBILE AIRPORT', None, '30.68000', '-88.24000'), ('MOBILE GREYHOUND PARK', None, '30.56540', '-88.20580'), ('MON LOUIS', None, '30.44660', '-88.11600'), ('PINTO ISLAND', None, '30.67550', '-88.02680'), ('SAND ISLAND', None, '30.22280', '-88.10880'), ('SCHILLINGER AND THREE NOT', None, '30.58900', '-88.22470'), ('SEVEN HILLS', None, '30.66030', '-88.30180'), ('SOUTH ORCHARD', None, '30.46470', '-88.15190'), ('ST ELMO', None, '30.50360', '-88.25560'), ('THEODORE', 6811, '30.54550', '-88.17660'), ('TILLMANS CORNER', 15685, '30.59030', '-88.17220'), ('WEST END OF DAUPHIN ISLAN', None, '30.23050', '-88.29850')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'KYZ118': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADAMSON', None, '37.20370', '-82.57830'), ('ARMINTA', None, '37.16270', '-83.02130'), ('BAKER', None, '37.21120', '-82.72070'), ('BANKS', None, '37.08280', '-83.02260'), ('BEEFHIDE', None, '37.23930', '-82.62670'), ('BELLCRAFT', None, '37.13650', '-82.82460'), ('BLACKEY', 153, '37.14020', '-82.97830'), ('BLUEFIELD', None, '37.13650', '-83.03010'), ('BURDINE', None, '37.18980', '-82.60290'), ('CARBON GLOW', None, '37.17500', '-82.95010'), ('CARCASSONNE', None, '37.17200', '-82.98810'), ('CHIP', None, '37.18530', '-82.71700'), ('COLLY', None, '37.12460', '-82.78450'), ('COLSON', None, '37.22870', '-82.86130'), ('CRAFTSVILLE', None, '37.18120', '-82.75350'), ('CROMONA', None, '37.18640', '-82.69650'), ('CROWN', None, '37.14530', '-82.84750'), ('DAVID', None, '37.16120', '-82.95000'), ('DAY', None, '37.07120', '-82.84720'), ('DEANE', None, '37.24050', '-82.77260'), ('DEFEATED CREEK', None, '37.05230', '-82.99180'), ('DEMOCRAT', None, '37.23370', '-82.79220'), ('DONGOLA', None, '37.09190', '-82.84010'), ('DUNHAM', None, '37.19350', '-82.64580'), ('EHKHORN MINE', None, '37.22370', '-82.71200'), ('ELKO', None, '37.13880', '-82.98930'), ('EOLIA', None, '37.05340', '-82.79200'), ('ERMINE', None, '37.11970', '-82.79340'), ('FARRADAY', None, '37.16360', '-82.77140'), ('FISHPOND LAKE', None, '37.16140', '-82.67690'), ('FLEMING-NEON', 840, '37.19180', '-82.70380'), ('FLINT', None, '37.05160', '-82.93170'), ('GANDER', None, '37.17560', '-83.00040'), ('GASKILL', None, '37.18490', '-82.61130'), ('GILLEY', None, '36.99490', '-83.11160'), ('GORDON', None, '37.00000', '-83.02390'), ('HALLIE', None, '37.10210', '-83.02240'), ('HAYMOND', None, '37.18500', '-82.69260'), ('HEMPHILL', None, '37.21550', '-82.70520'), ('HORN', None, '37.20730', '-82.72900'), ('HOT SPOT', None, '37.12760', '-82.91690'), ('ICE', None, '37.10860', '-82.85950'), ('INDIAN BOTTOM', None, '37.14240', '-82.95940'), ('ISOM', None, '37.18730', '-82.89950'), ('JENKINS', 2401, '37.17810', '-82.62660'), ('JEREMIAH', None, '37.16750', '-82.92900'), ('KINGS CREEK', None, '37.05270', '-82.91450'), ('LESTER', None, '37.21210', '-82.80600'), ('LETCHER', None, '37.14580', '-82.95930'), ('LEWIS CREEK', None, '36.99620', '-82.89740'), ('LILLEY CORNETT WOODS', None, '37.08490', '-82.98950'), ('LINEFORK', None, '37.02000', '-82.95990'), ('LOWNDES', None, '37.19870', '-82.68570'), ('LUCASTOWN', None, '37.20620', '-82.79610'), ('MAGGARD', None, '37.01550', '-82.88250'), ('MARLOWE', None, '37.13090', '-82.83110'), ('MAYKING', None, '37.13580', '-82.76450'), ('MCROBERTS', 921, '37.21180', '-82.66800'), ('MILLSTONE', None, '37.16500', '-82.75120'), ('NEON JUNCTION', None, '37.17970', '-82.71450'), ('OSCALOOSA', None, '37.10570', '-82.89400'), ('OVEN FORK', None, '37.05880', '-82.80900'), ('PARTRIDGE', None, '37.00820', '-82.89830'), ('PAYNE GAP', None, '37.15550', '-82.65870'), ('POLLY', None, '37.20240', '-82.82390'), ('POTTERS FORK', None, '37.18310', '-82.67350'), ('PREMIUM', None, '37.12360', '-82.91890'), ('RED STAR', None, '37.13940', '-83.02020'), ('ROXANA', None, '37.10920', '-82.94970'), ('SACKETT', None, '37.20270', '-82.88500'), ('SECO', None, '37.17370', '-82.73240'), ('SERGENT', None, '37.14810', '-82.77010'), ('SKYLINE', None, '37.07580', '-82.98170'), ('SOUTHDOWN', None, '37.16330', '-82.80410'), ('THORNTON', None, '37.15670', '-82.73970'), ('TILLIE', None, '37.18130', '-82.86370'), ('TOLLIVER TOWN', None, '37.18070', '-82.70900'), ('TRAILER', None, '37.11790', '-82.88170'), ('ULVAH', None, '37.12810', '-83.05260'), ('VAN', None, '37.15180', '-82.87220'), ('WHITAKER', None, '37.17230', '-82.72120'), ('WHITCO', None, '37.12010', '-82.85150'), ('WHITESBURG', 1600, '37.11810', '-82.82570'), ('WINTERS', None, '37.15480', '-82.76430'), ('WRIGHT', None, '37.15370', '-82.73090')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ119': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADD', None, '37.91010', '-82.55210'), ('ANDY', None, '37.83150', '-82.47190'), ('BEAUTY', None, '37.83960', '-82.43780'), ('BRADBURY', None, '37.81560', '-82.50450'), ('CALF CREEK', None, '37.92320', '-82.49540'), ('COALPOINT', None, '37.78440', '-82.44460'), ('DAVELLA', None, '37.79580', '-82.57210'), ('DAVISPORT', None, '37.81460', '-82.59990'), ('DEBORD', None, '37.82720', '-82.55200'), ('DELONG', None, '37.81030', '-82.56490'), ('HODE', None, '37.88550', '-82.43000'), ('INEZ', 466, '37.86610', '-82.53750'), ('JOB', None, '37.93320', '-82.53290'), ('LAURA', None, '37.72420', '-82.44170'), ('LOVELY', None, '37.82690', '-82.45000'), ('MCCLURE', None, '37.76560', '-82.48770'), ('MILO', None, '37.91340', '-82.56160'), ('MOREE', None, '37.71880', '-82.50370'), ('OPPY', None, '37.80160', '-82.38700'), ('PEVIER', None, '37.82670', '-82.56340'), ('PILGRIM', None, '37.79800', '-82.42030'), ('PLEASANT', None, '37.73830', '-82.57390'), ('PREECE', None, '37.80180', '-82.51950'), ('PRINCE', None, '37.78370', '-82.52490'), ('STIDHAM', None, '37.88410', '-82.58300'), ('THREEFORKS', None, '37.70640', '-82.46040'), ('TOMAHAWK', None, '37.87030', '-82.59190'), ('WARFIELD', 284, '37.83870', '-82.42320'), ('WELLS', None, '37.89770', '-82.58120')], 'partOfState': 'NORTHEAST', 'wfo': 'JKL'}, -'KYZ112': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALTRO', None, '37.38250', '-83.38220'), ('BARWICK', None, '37.36820', '-83.36530'), ('BAYS', None, '37.64750', '-83.24780'), ('BEECH', None, '37.37030', '-83.42890'), ('BUSH BRANCH', None, '37.37660', '-83.39070'), ('CAMP LEWIS', None, '37.58500', '-83.18770'), ('CANOE', None, '37.44970', '-83.44920'), ('CHENOWEE', None, '37.54340', '-83.48020'), ('CLAYHOLE', None, '37.46670', '-83.29750'), ('COPEBRANCH', None, '37.51750', '-83.52650'), ('COPLAND', None, '37.45510', '-83.37320'), ('CROCKETTSVILLE', None, '37.40320', '-83.46940'), ('CURT', None, '37.49590', '-83.39460'), ('DAISYDELL', None, '37.53810', '-83.12160'), ('DALESBURG', None, '37.36730', '-83.49200'), ('DUMONT', None, '37.53050', '-83.36070'), ('ELKATAWA', None, '37.55810', '-83.42750'), ('EVANSTON', None, '37.54190', '-83.03130'), ('FIVEMILE', None, '37.59380', '-83.40890'), ('FLINTVILLE', None, '37.48540', '-83.30090'), ('FROZEN CREEK', None, '37.59190', '-83.42220'), ('GENTRY', None, '37.56270', '-83.44290'), ('GUAGE', None, '37.59690', '-83.19780'), ('GUERRANT', None, '37.50810', '-83.49780'), ('HADDIX', None, '37.48810', '-83.34890'), ('HAGINSVILLE', None, '37.56600', '-83.29620'), ('HARDSHELL', None, '37.45860', '-83.25220'), ('HOUSTON', None, '37.44560', '-83.51690'), ('HOWARD CREEK', None, '37.46840', '-83.38000'), ('INVERNESS', None, '37.53680', '-83.36690'), ('JACKSON', 2490, '37.55770', '-83.37970'), ('JETTS CREEK', None, '37.49950', '-83.54340'), ('KECK', None, '37.60620', '-83.36240'), ('LAMBRIC', None, '37.56940', '-83.13140'), ('LAWSON', None, '37.60160', '-83.45860'), ('LITTLE', None, '37.44030', '-83.36190'), ('LOST CREEK', None, '37.48310', '-83.32530'), ('LUNAH', None, '37.56330', '-83.17730'), ('MOCT', None, '37.66070', '-83.34620'), ('MORRIS FORK', None, '37.37700', '-83.52180'), ('MOUNTAIN VALLEY', None, '37.66220', '-83.26940'), ('NED', None, '37.40940', '-83.27190'), ('NOBLE', None, '37.45030', '-83.19000'), ('NOCTOR', None, '37.56060', '-83.33750'), ('OAKDALE', None, '37.55450', '-83.51500'), ('PAXTON', None, '37.67560', '-83.41010'), ('PORTSMOUTH', None, '37.53170', '-83.31440'), ('PRESS', None, '37.52780', '-83.26940'), ('QUICKSAND', None, '37.53030', '-83.34470'), ('ROCK LICK', None, '37.65210', '-83.31170'), ('ROUSSEAU', None, '37.59390', '-83.23060'), ('SALDEE', None, '37.45270', '-83.38010'), ("SEBASTIAN'S BRANCH", None, '37.43670', '-83.47280'), ('SEWELL', None, '37.62690', '-83.38890'), ('SIKES', None, '37.54240', '-83.24030'), ('SIMPSON', None, '37.66830', '-83.37100'), ('SMITH BRANCH', None, '37.52680', '-83.31400'), ('STEVENSON', None, '37.57990', '-83.26330'), ('TALBERT', None, '37.42250', '-83.45970'), ('TAULBEE', None, '37.64330', '-83.33030'), ('TURKEY', None, '37.47940', '-83.50780'), ('VAIL', None, '37.50990', '-82.99960'), ('VALJEAN', None, '37.33860', '-83.53810'), ('VANCLEVE', None, '37.62830', '-83.41390'), ('WAR CREEK', None, '37.59410', '-83.48510'), ('WATTS', None, '37.44330', '-83.31010'), ('WHICK', None, '37.42310', '-83.37690'), ('WIDECREEK', None, '37.61100', '-83.53220'), ('WILHURST', None, '37.63390', '-83.41500'), ('WILSTACY', None, '37.52870', '-83.28140'), ('WOLF COAL', None, '37.39860', '-83.37890'), ('YEADON', None, '37.55130', '-83.45810')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ113': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AMBURGEY', None, '37.26930', '-82.98290'), ('AMELIA', None, '37.20710', '-82.92040'), ('ANCO', None, '37.24210', '-83.06030'), ('BATH', None, '37.24230', '-82.91060'), ('BEARVILLE', None, '37.37270', '-83.06540'), ('BETTY', None, '37.45130', '-82.84080'), ('BOLYN', None, '37.44470', '-82.90570'), ('BRINKLEY', None, '37.30060', '-82.94450'), ('BUCK', None, '37.44830', '-83.10930'), ('CARR CREEK', None, '37.23150', '-82.96920'), ('CARRIE', None, '37.33140', '-83.03350'), ('CODY', None, '37.22420', '-82.97590'), ('CORDIA', None, '37.27940', '-83.11570'), ('DECOY', None, '37.50170', '-83.09390'), ('DEMO', None, '37.41010', '-82.78120'), ('DIRK', None, '37.23020', '-82.95860'), ('DREW', None, '37.28340', '-82.86250'), ('DRY CREEK', None, '37.33350', '-82.77770'), ('ELIC', None, '37.26700', '-83.06830'), ('ELMROCK', None, '37.45220', '-83.02580'), ('EMMALENA', None, '37.33630', '-83.07750'), ('FISTY', None, '37.33580', '-83.10140'), ('GARNER', None, '37.35620', '-82.92710'), ('GREENLEAF', None, '37.30080', '-82.75730'), ('HALL', None, '37.30020', '-82.77500'), ('HANDSHOE', None, '37.47000', '-82.90670'), ('HINDMAN', 787, '37.33370', '-82.98320'), ('HOLLYBUSH', None, '37.34790', '-82.85650'), ('IVAN', None, '37.27810', '-82.82800'), ('IVIS', None, '37.30620', '-82.92820'), ('KITE', None, '37.33520', '-82.81190'), ('LARKSLANE', None, '37.38400', '-82.88160'), ('LEBURN', None, '37.34820', '-82.95650'), ('LITTCARR', None, '37.24270', '-82.94770'), ('MALLIE', None, '37.30300', '-82.91700'), ('MAY', None, '37.27270', '-82.86230'), ('MOUSIE', None, '37.41890', '-82.87740'), ('NEALY', None, '37.27420', '-82.86810'), ('OMAHA', None, '37.27450', '-82.84390'), ('PINE TOP', None, '37.27220', '-82.88350'), ('PIPPA PASSES', 297, '37.33410', '-82.87440'), ('PUNCHEON', None, '37.30220', '-82.78900'), ('RAVEN', None, '37.40280', '-82.80640'), ('REDFOX', None, '37.21550', '-82.94390'), ('RITCHIE', None, '37.31110', '-83.08400'), ('SASSAFRAS', None, '37.22080', '-83.05470'), ('SMITHSBORO', None, '37.23100', '-82.99610'), ('SOFT SHELL', None, '37.39370', '-82.94420'), ('SPIDER', None, '37.25910', '-82.91840'), ('TALCUM', None, '37.37210', '-83.10610'), ('TINA', None, '37.36080', '-83.02020'), ('TOPMOST', None, '37.36100', '-82.78860'), ('VEST', None, '37.39600', '-83.00620'), ('WISCOAL', None, '37.23600', '-83.05730'), ('YELLOW MOUNTAIN', None, '37.40480', '-82.96730')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ110': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALLEN', 150, '37.61120', '-82.72840'), ('ALLEN CITY', None, '37.60940', '-82.72330'), ('ALPHORETTA', None, '37.56360', '-82.76500'), ('ALUBA', None, '37.53080', '-82.64390'), ('ALVIN', None, '37.63810', '-82.69580'), ('ARKANSAS', None, '37.58310', '-82.73280'), ('AUXIER', None, '37.73810', '-82.75890'), ('BAMMER', None, '37.60060', '-82.70220'), ('BAYS BRANCH', None, '37.72330', '-82.76810'), ('BEAVER', None, '37.39810', '-82.65500'), ('BEAVER JUNCTION', None, '37.61420', '-82.73250'), ('BETSY LAYNE', None, '37.55190', '-82.63360'), ('BLUE MOON', None, '37.50780', '-82.69750'), ('BLUE RIVER', None, '37.62000', '-82.84420'), ('BONANZA', None, '37.69330', '-82.86440'), ('BOSCO', None, '37.50470', '-82.84080'), ('BRAINARD', None, '37.66420', '-82.89640'), ('BUCKHORN HOLLOW', None, '37.39250', '-82.66970'), ('BUCKINGHAM', None, '37.37060', '-82.74110'), ('BURTON', None, '37.36060', '-82.72470'), ('CLIFF', None, '37.68190', '-82.78110'), ('CORN FORK HOLLOW', None, '37.67780', '-82.70060'), ('CRAYNOR', None, '37.43780', '-82.66890'), ('DANA', None, '37.55500', '-82.69190'), ('DAVID', None, '37.60030', '-82.89190'), ('DICKS CREEK', None, '37.70170', '-82.67890'), ('DOCK', None, '37.62780', '-82.80170'), ('DOTSON', None, '37.64720', '-82.85810'), ('DRIFT', None, '37.48060', '-82.74830'), ('DWALE', None, '37.62390', '-82.72440'), ('EAST MCDOWELL', None, '37.44860', '-82.72610'), ('EAST POINT', None, '37.74640', '-82.79610'), ('EASTERN', None, '37.51750', '-82.80610'), ('EMMA', None, '37.63670', '-82.70060'), ('ENDICOTT', None, '37.66750', '-82.63940'), ('ESTILL', None, '37.45860', '-82.81860'), ('GALVESTON', None, '37.44110', '-82.62860'), ('GARRET', None, '37.47970', '-82.83110'), ('GLO', None, '37.44890', '-82.80940'), ('GRETHEL', None, '37.49170', '-82.64720'), ('HALO', None, '37.31610', '-82.74080'), ('HAROLD', None, '37.53810', '-82.63310'), ('HI HAT', None, '37.39280', '-82.72970'), ('HIPPO', None, '37.53280', '-82.86940'), ('HONAKER', None, '37.52390', '-82.68030'), ('HUEYSVILLE', None, '37.54170', '-82.83190'), ('HUNTER', None, '37.50690', '-82.75670'), ('IVEL', None, '37.59420', '-82.66830'), ('JUSTELL', None, '37.55690', '-82.63830'), ('LANCER', None, '37.66890', '-82.73690'), ('LANGLEY', None, '37.53220', '-82.79170'), ('LIGON', None, '37.37080', '-82.67330'), ('MARTIN', 633, '37.57180', '-82.75600'), ('MCDOWELL', None, '37.45640', '-82.73690'), ('MELVIN', None, '37.35110', '-82.69560'), ('MINNIE', None, '37.47360', '-82.75470'), ('NERO', None, '37.74900', '-82.74570'), ('ORKNEY', None, '37.43030', '-82.73640'), ('OSBORN', None, '37.47780', '-82.61330'), ('PORTER JUNCTION', None, '37.47310', '-82.82940'), ('PRESTONSBURG', 3612, '37.67370', '-82.76660'), ('PRICE', None, '37.40310', '-82.74280'), ('PRINTER', None, '37.53140', '-82.74670'), ('PYRAMID', None, '37.56560', '-82.86970'), ('WAYLAND', 298, '37.44820', '-82.80050'), ('WHEELWRIGHT', 1042, '37.33890', '-82.72030')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ111': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AIREDALE', None, '37.60250', '-83.63940'), ('ARVEL', None, '37.51830', '-83.88530'), ('ATHOL', None, '37.55250', '-83.57280'), ('BANFORD', None, '37.51350', '-83.82060'), ('BEATTYVILLE', 1193, '37.58020', '-83.70720'), ('BELLE POINT', None, '37.56250', '-83.74810'), ('CANYON FALLS', None, '37.57640', '-83.57750'), ('CARYTON', None, '37.54400', '-83.77770'), ('CORGLETON', None, '37.55260', '-83.71240'), ('CRESSMONT', None, '37.53080', '-83.79500'), ('CRYSTAL', None, '37.66300', '-83.82570'), ('CRYSTAL', None, '37.65640', '-83.81370'), ('DELVINTA', None, '37.50080', '-83.79390'), ('EARNESTVILLE', None, '37.49400', '-83.82930'), ('ENOCH', None, '37.54330', '-83.67560'), ('EVELYN', None, '37.61310', '-83.86050'), ('FILLMORE', None, '37.60410', '-83.55000'), ('FINCASTLE', 825, '37.64850', '-83.64540'), ('FIXER', None, '37.67810', '-83.71830'), ('GREELEY', None, '37.67640', '-83.75310'), ('HEIDELBERG', None, '37.55520', '-83.77890'), ('IDA MAY', None, '37.52110', '-83.76630'), ('LEECO', None, '37.71040', '-83.69430'), ('LONE', None, '37.53000', '-83.60390'), ('LOWER BUFFALO', None, '37.52780', '-83.68780'), ('MALONEY', None, '37.58020', '-83.67800'), ('MONICA', None, '37.58240', '-83.60010'), ('MOUNT OLIVE', None, '37.61400', '-83.73040'), ('OLD LANDING', None, '37.63730', '-83.80290'), ('OLD ORCHARD', None, '37.52280', '-83.88980'), ('PINNACLE', None, '37.62110', '-83.81750'), ('PRIMROSE', None, '37.60220', '-83.60860'), ('PROCTOR', None, '37.57000', '-83.71390'), ('ST. HELENS', None, '37.58280', '-83.64720'), ('STANDING ROCK', None, '37.71440', '-83.70390'), ('TALLEGA', None, '37.55950', '-83.59270'), ('UNION', 2893, '37.63010', '-83.59690'), ('VADA', None, '37.62230', '-83.59130'), ('WHITE ASH', None, '37.55910', '-83.73520'), ('WHYNOT', None, '37.64180', '-83.78590'), ('WILLIBA', None, '37.62280', '-83.57010'), ('WILLOW SHOALS', None, '37.59130', '-83.81340'), ('YELLOW ROCK', None, '37.57080', '-83.80500'), ('ZACHARIAH', None, '37.70490', '-83.68370'), ('ZOE', None, '37.68120', '-83.68320')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ116': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADD', None, '37.12640', '-83.76950'), ('ALGER', None, '37.31500', '-83.72870'), ('AMMIE', None, '37.26640', '-83.69220'), ('ASHERS FORK', None, '37.00810', '-83.59470'), ('BARCREEK', None, '37.22780', '-83.64140'), ('BENGE', None, '37.22830', '-83.92310'), ('BERNICE', None, '37.20690', '-83.75360'), ('BIG CREEK', None, '37.16360', '-83.56860'), ('BLUEHOLE', None, '37.10170', '-83.75640'), ('BOHO', None, '37.11870', '-83.70320'), ('BOTTO', None, '37.08720', '-83.67720'), ('BRIGHTSHADE', None, '37.02050', '-83.65790'), ('BRUTUS', None, '37.25580', '-83.57720'), ('BURNING SPRINGS', None, '37.25580', '-83.80230'), ('BUSH', None, '37.09250', '-83.87030'), ('BYRON', None, '37.16770', '-83.88650'), ('CHESTNUTBURG', None, '37.29030', '-83.79610'), ('COTTONGIN', None, '37.06470', '-83.80250'), ('CRAWFORD', None, '37.19440', '-83.95190'), ('CREEKVILLE', None, '37.07890', '-83.54920'), ('DEER LICK', None, '37.14700', '-83.94320'), ('ENLINE', None, '37.18860', '-83.59420'), ('FALL ROCK', None, '37.22140', '-83.78890'), ('FELTY', None, '37.30100', '-83.70780'), ('FOGERTOWN', None, '37.22000', '-83.90140'), ('GARDNER', None, '36.96870', '-83.53590'), ('GARRARD', None, '37.12530', '-83.74580'), ('GOOSE ROCK', None, '37.09140', '-83.69470'), ('GRACE', None, '37.19860', '-83.86670'), ('HECTOR', None, '37.15440', '-83.65440'), ('HENSLEY', None, '37.23730', '-83.67440'), ('HERRON', None, '37.12730', '-83.79410'), ('HIGH KNOB', None, '37.26770', '-83.81840'), ('HIMA', None, '37.12190', '-83.77920'), ('HOOKER', None, '37.13810', '-83.83510'), ('HORSE CREEK JUNCTION', None, '37.13680', '-83.76340'), ('HOUSE', None, '37.08270', '-83.76930'), ('ICE CLIFF', None, '37.00910', '-83.63560'), ('JACKS CREEK', None, '37.20750', '-83.55690'), ('JONSEE', None, '37.07220', '-83.78570'), ('LANGNAU', None, '37.17970', '-83.96690'), ('LARUE', None, '37.20310', '-83.92500'), ('LAUREL CREEK', None, '37.24420', '-83.74850'), ('LINCOLN', None, '37.05780', '-83.73920'), ('LIPPS', None, '37.04860', '-83.65750'), ('LITTLETON', None, '37.16360', '-83.75500'), ('MALCOMB', None, '37.27820', '-83.83750'), ('MANCHESTER', 1738, '37.15250', '-83.76810'), ('MARCUM', None, '37.11170', '-83.55940'), ('MILL POND', None, '37.22920', '-83.73750'), ('NEWFOUND', None, '37.31060', '-83.63150'), ('OGLE', None, '37.03080', '-83.71190'), ('ONEIDA', None, '37.27060', '-83.64970'), ('PANCO', None, '37.23860', '-83.53280'), ('PARK VALLEY', None, '37.07760', '-83.77810'), ('PEABODY', None, '37.15970', '-83.59800'), ('PIGEONROOST', None, '37.11090', '-83.80970'), ('PLANK', None, '37.07780', '-83.64720'), ('PORTERSBURG', None, '37.17060', '-83.92580'), ('QUEENDALE', None, '37.00880', '-83.52580'), ('ROYRADER', None, '37.26100', '-83.94080'), ('SACKER GAP', None, '37.26570', '-83.79750'), ('SETH', None, '37.24770', '-83.65040'), ('SEXTONS CREEK', None, '37.31580', '-83.78440'), ('SHEPHERDTOWN', None, '37.28810', '-83.86560'), ('SIBERT', None, '37.12470', '-83.78690'), ('SIDELL', None, '37.19040', '-83.82240'), ('SKIDMORE', None, '36.99310', '-83.53630'), ('SOURWOOD', None, '37.32880', '-83.79990'), ('SPRING CREEK', None, '37.06280', '-83.54250'), ('SPURLOCK', None, '37.21280', '-83.63470'), ('TANKSLEY', None, '37.21780', '-83.71060'), ('TEGES', None, '37.29560', '-83.66750'), ('TREADWAY', None, '37.23060', '-83.78330'), ('TRIXIE', None, '37.33520', '-83.67300'), ('URBAN', None, '37.15810', '-83.84780'), ('WILD CAT', None, '37.23420', '-83.69060')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ117': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ASHER', None, '37.04400', '-83.40180'), ('BEAR BRANCH', None, '37.16390', '-83.54860'), ('BIG FORK', None, '37.05250', '-83.25670'), ('BIG ROCK', None, '37.04360', '-83.20730'), ('BOBS FORK', None, '37.16410', '-83.51850'), ('CAUSEY', None, '37.05760', '-83.28050'), ('CHAPPELL', None, '37.00960', '-83.34970'), ('CINDA', None, '37.10860', '-83.29460'), ('CONFLUENCE', None, '37.27180', '-83.38280'), ('CUTSHIN', None, '37.09030', '-83.26100'), ('DALEY', None, '37.13590', '-83.23260'), ('DRYHILL', None, '37.22310', '-83.37710'), ('ESSIE', None, '37.06450', '-83.45360'), ('FREW', None, '37.18170', '-83.24690'), ('HOSEA', None, '37.13670', '-83.44270'), ('HOSKINSTON', None, '37.07720', '-83.39170'), ('HYDEN', 204, '37.16170', '-83.37360'), ('KALIOPI', None, '37.23290', '-83.41510'), ('LEWIS CREEK', None, '36.98990', '-83.31190'), ('MOSLEY BEND', None, '37.27500', '-83.36000'), ('MOZELLE', None, '37.00080', '-83.39840'), ('NAPIER', None, '36.98420', '-83.28470'), ('ROARK', None, '37.02380', '-83.51670'), ('SANDY FORK', None, '36.93620', '-83.50540'), ('SAYLOR', None, '36.89920', '-83.46220'), ('SHOAL', None, '37.26840', '-83.43560'), ('SIZEROCK', None, '37.22270', '-83.50460'), ('SMILAX', None, '37.13340', '-83.28260'), ('SPRUCE PINE', None, '36.92330', '-83.44530'), ('STINNETT', None, '37.09190', '-83.39660'), ('THOUSANDSTICKS', None, '37.18500', '-83.42890'), ('TOULOUSE', None, '37.24850', '-83.35350'), ('WARBRANCH', None, '36.97430', '-83.44810'), ('WENDOVER', None, '37.12630', '-83.36290'), ('WOOTON', None, '37.17900', '-83.30330'), ('YEADDISS', None, '37.07020', '-83.21890')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ114': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARNETT', None, '37.41030', '-83.56860'), ('BLAKE', None, '37.38690', '-83.73920'), ('BOONEVILLE', 111, '37.47640', '-83.67920'), ('CHESTNUT GAP', None, '37.45820', '-83.65900'), ('CONKLING', None, '37.38140', '-83.69000'), ('COWCREEK', None, '37.43860', '-83.61060'), ('ENDEE', None, '37.43130', '-83.75300'), ('EVERSOLE', None, '37.44750', '-83.64280'), ('GOBBARD', None, '37.37840', '-83.63110'), ('GRASS', None, '37.52300', '-83.64790'), ('GREEN HALL', None, '37.40670', '-83.82550'), ('ISLAND CITY', None, '37.36720', '-83.76710'), ('LEROSE', None, '37.48320', '-83.61540'), ('LEVI', None, '37.48030', '-83.72080'), ('LUCKY FORK', None, '37.36750', '-83.57000'), ('MAJOR', None, '37.41370', '-83.69790'), ('MISTLETOE', None, '37.31280', '-83.59220'), ('PEBWORTH', None, '37.50410', '-83.73110'), ('RICETOWN', None, '37.39220', '-83.62230'), ('SCOVILLE', None, '37.45390', '-83.72000'), ('SEBASTIAN', None, '37.36080', '-83.62030'), ('SOUTHFORK', None, '37.41630', '-83.66060'), ('STAY', None, '37.51030', '-83.65190'), ('STURGEON', None, '37.41890', '-83.78460'), ('TAFF', None, '37.36160', '-83.68380'), ('TRAVELLERS REST', None, '37.44830', '-83.78720'), ('TURIN', None, '37.45970', '-83.68730'), ('VINCENT', None, '37.46830', '-83.77390'), ('WHOOPFLAREA', None, '37.28250', '-83.56030'), ('WILD DOG', None, '37.48880', '-83.82340')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'KYZ115': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARY', None, '37.37860', '-83.14670'), ('AVAWAM', None, '37.22230', '-83.27860'), ('BUCKHORN', 144, '37.34510', '-83.47160'), ('BUCKHORN LAKE STATE RESOR', None, '37.30490', '-83.44000'), ('BULAN', None, '37.29810', '-83.16670'), ('CHAVIES', None, '37.34570', '-83.35370'), ('CORNETTSVILLE', None, '37.13160', '-83.07930'), ('DAISY', None, '37.11680', '-83.09140'), ('DELPHIA', None, '37.02900', '-83.08670'), ('DIABLOCK', None, '37.22830', '-83.17220'), ('DICE', None, '37.36280', '-83.22750'), ('DWARF', None, '37.33710', '-83.12860'), ('GAYS CREEK', None, '37.33690', '-83.40660'), ('HAZARD', 4806, '37.25300', '-83.19530'), ('JEFF', None, '37.20590', '-83.13520'), ('KRYPTON', None, '37.31090', '-83.33900'), ('LAMONT', None, '37.35080', '-83.31350'), ('LEATHERWOOD', None, '37.04040', '-83.17080'), ('ROWDY', None, '37.41500', '-83.20600'), ('SAUL', None, '37.27800', '-83.49380'), ('SLEMP', None, '37.07890', '-83.11140'), ('VICCO', 318, '37.21610', '-83.06120'), ('VIPER', None, '37.18180', '-83.14870')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'SCZ051': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CHELSEA', None, '32.35420', '-80.88830'), ('JASPER', None, '32.34280', '-80.94940'), ('LEVY', None, '32.20280', '-81.02920')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'SCZ050': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ADAMS RUN', None, '32.72060', '-80.34830'), ('AWENDAW', 1195, '33.03750', '-79.61330'), ('BAPTIST HILL', None, '32.73310', '-80.26890'), ('BATTERY POINT', None, '32.74280', '-79.94920'), ('BENNETT', None, '32.86190', '-80.02580'), ('BERRY HILL', None, '32.77560', '-80.17280'), ('BUCK HALL', None, '33.05310', '-79.56000'), ('CAPWELLS CROSSROADS', None, '32.77920', '-80.26860'), ('CENTERVILLE', 5181, '32.73330', '-79.96660'), ('CENTERVILLE', 5181, '32.99560', '-80.17060'), ('CHANDLER', None, '32.90440', '-79.73580'), ('CHARLESTON', 96650, '32.78330', '-79.93750'), ('CHARLESTON AIRPORT', None, '32.89870', '-80.04050'), ('CITADEL MALL', None, '32.79670', '-80.04000'), ('DEWEES ISLAND', None, '32.85000', '-79.71670'), ('EDISTO ISLAND', None, '32.56000', '-80.28000'), ('FENWICK CROSSROADS', None, '32.72060', '-80.08250'), ('FOLLY BEACH', 2116, '32.65500', '-79.94060'), ('FORT MOULTRIE', None, '32.75890', '-79.85810'), ('FREEDMAN', None, '32.53640', '-80.29500'), ('GERMANTOWN', None, '33.19530', '-79.44750'), ('HANAHAN', 12937, '32.91830', '-80.02220'), ('HOBCAW POINT', None, '32.82000', '-79.89420'), ('HOLLYWOOD', 3946, '32.73420', '-80.24190'), ('HUSKUM CORNER CROSS ROADS', None, '32.67500', '-80.05060'), ('JAMES ISLAND', None, '32.73330', '-79.93330'), ('JERICHO', None, '32.75890', '-80.31670'), ('JOHNS ISLAND', None, '32.72500', '-80.07500'), ('JOSHUA', None, '32.85390', '-80.01440'), ('KIAWAH ISLAND', 1163, '32.60810', '-80.08500'), ('LADSON', 13264, '32.98560', '-80.11000'), ('LAMBS', None, '32.88640', '-80.06810'), ('LEGAREVILLE', None, '32.65470', '-80.05310'), ('LINCOLNVILLE', 904, '33.00670', '-80.15560'), ('MARYVILLE', None, '32.79220', '-79.99530'), ('MCCALLS CORNER', None, '32.73140', '-79.96530'), ('MCCLELLANVILLE', 459, '33.08810', '-79.46140'), ('MEGGETT', 1230, '32.71780', '-80.23920'), ('MIDLAND PARK', None, '32.92060', '-80.04080'), ('MOUNT PLEASANT', 47609, '32.79390', '-79.86280'), ('MYERS', None, '32.81670', '-79.95060'), ('NORTH CHARLESTON', 79641, '32.85440', '-79.97500'), ('NORTHWOODS MALL', None, '32.94080', '-80.04580'), ('OAKLAND', 1272, '32.78530', '-80.03530'), ('OSBORN', None, '32.75560', '-80.34640'), ('OTRANTO', None, '32.96500', '-80.04440'), ('PARKERS FERRY', None, '32.76000', '-80.39640'), ('PHILIP', None, '32.88750', '-79.81420'), ('PINELAND', None, '33.04330', '-79.58750'), ('RANTOWLES', None, '32.78280', '-80.14890'), ('RAVENEL', 2214, '32.76310', '-80.25030'), ('RED TOP', None, '32.80250', '-80.12280'), ('REMLEYS POINT', None, '32.80970', '-79.89390'), ('ROCKVILLE', 137, '32.60060', '-80.19500'), ('SAINT ANDREWS', None, '32.78330', '-79.98330'), ('SCANLONVILLE', None, '32.81170', '-79.89780'), ('SEABROOK ISLAND', 1250, '32.57690', '-80.17080'), ('SEASIDE', None, '32.71140', '-79.94170'), ('SECESSIONVILLE', None, '32.70560', '-79.93940'), ('SHADOWMOSS', None, '32.85000', '-80.07500'), ('SNOWDEN', None, '32.84140', '-79.84670'), ('SOUTH SANTEE', None, '33.17330', '-79.41780'), ('SOUTH WINDERMERE', None, '32.77580', '-79.98030'), ('STILES POINT', None, '32.73920', '-79.92360'), ('STONO', None, '32.73000', '-79.98250'), ('SULLIVANS ISLAND', None, '32.76310', '-79.83690'), ('THOMPSON CORNER', None, '33.12690', '-79.58470'), ('WADMALAW ISLAND', None, '32.68330', '-80.16670'), ('WAMBAW CORNER', None, '33.19530', '-79.46330'), ('WEST ASHLEY', None, '32.80000', '-80.01000'), ('WHITEHALL TERRACE', None, '32.87330', '-79.74860'), ('WILD DUNES', None, '32.80000', '-79.73330'), ('WILDWOOD', None, '32.91140', '-80.03580'), ('WILSONVILLE', None, '32.91390', '-80.04310'), ('YONGES ISLAND', None, '32.69330', '-80.23080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'VAZ038': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMICUS', None, '38.25560', '-78.48030'), ('DAWSONVILLE', None, '38.26530', '-78.31530'), ('FLETCHER', None, '38.39280', '-78.43360'), ('HANEYTOWN', None, '38.29030', '-78.53560'), ('LYDIA', None, '38.33030', '-78.49110'), ('MCMULLEN', None, '38.34830', '-78.45810'), ('NEWTOWN', None, '38.23750', '-78.33750'), ('RUCKERSVILLE', None, '38.23000', '-78.37000'), ('SHADY GROVE', None, '38.26030', '-78.59280'), ('STANARDSVILLE', 476, '38.30040', '-78.43830')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'KYZ026': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAIZETOWN', None, '37.36670', '-86.71670'), ('BEAVER DAM', 3033, '37.40850', '-86.87800'), ('BEDA', None, '37.50000', '-86.95000'), ('CENTERTOWN', 416, '37.41800', '-86.99550'), ('COOL SPRINGS', None, '37.30000', '-86.88330'), ('CROMWELL', None, '37.33330', '-86.80000'), ('DEANEFIELD', None, '37.66670', '-86.81670'), ('DUNDEE', None, '37.55000', '-86.78330'), ('FORDSVILLE', 531, '37.63620', '-86.71600'), ('HARTFORD', 2571, '37.45110', '-86.89380'), ('HEFLIN', None, '37.50000', '-87.00000'), ('MCHENRY', 417, '37.37990', '-86.92130'), ('OLATON', None, '37.53330', '-86.70000'), ('PRENTISS', None, '37.33330', '-86.85000'), ('ROCKPORT', 334, '37.33640', '-86.99280'), ('ROSINE', None, '37.45000', '-86.75000')], 'partOfState': 'NORTHWEST', 'wfo': 'LMK'}, -'KYZ027': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BIG CLIFTY', None, '37.55000', '-86.15000'), ('CANEYVILLE', 627, '37.42370', '-86.48800'), ('CLARKSON', 794, '37.49430', '-86.22050'), ('GRAYSON SPRINGS', None, '37.46670', '-86.23330'), ('IBERIA', None, '37.36670', '-86.16670'), ('LEITCHFIELD', 6139, '37.48070', '-86.29330'), ('MEREDITH', None, '37.40000', '-86.23330'), ('MILLERSTOWN', None, '37.44000', '-86.06000'), ('MILLWOOD', None, '37.45000', '-86.50000'), ('PEONIA', None, '37.41670', '-86.21670'), ('PINE KNOB', None, '37.48330', '-86.51670'), ('READY', None, '37.36670', '-86.46670'), ('SHORT CREEK', None, '37.53330', '-86.48330'), ('SHREWSBURY', None, '37.38330', '-86.38330'), ('SOUTH', None, '37.33330', '-86.36670'), ('WAX', None, '37.35000', '-86.13330'), ('YEAMAN', None, '37.51670', '-86.58330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ024': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BIG SPRING', None, '37.80000', '-86.17000'), ('CLOVERPORT', 1256, '37.83090', '-86.62990'), ('CONSTANTINE', None, '37.66670', '-86.25000'), ('CUSTER', None, '37.73330', '-86.25000'), ('DYER', None, '37.70000', '-86.23000'), ('FALLS OF ROUGH', None, '37.60000', '-86.55000'), ('GARFIELD', None, '37.78330', '-86.35000'), ('GLEN DEAN', None, '37.65000', '-86.55000'), ('HARDINSBURG', 2345, '37.77610', '-86.45500'), ('HARNED', None, '37.75000', '-86.41670'), ('HUDSON', None, '37.65000', '-86.28330'), ('IRVINGTON', 1257, '37.87890', '-86.28470'), ('MADRID', None, '37.61670', '-86.35000'), ('MCDANIELS', None, '37.60000', '-86.43330'), ('MCQUADY', None, '37.70000', '-86.51670'), ('MOOLEYVILLE', None, '38.01670', '-86.46670'), ('ROFF', None, '37.65000', '-86.43330'), ('STEPHENSPORT', None, '37.91670', '-86.53330'), ('UNION STAR', None, '37.93330', '-86.45000'), ('WEBSTER', None, '37.88330', '-86.33330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ025': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ANDYVILLE', None, '38.03330', '-86.36670'), ('BATTLETOWN', None, '38.06670', '-86.30000'), ('BRANDENBURG', 2049, '37.99680', '-86.18040'), ('DOE VALLEY', None, '38.00000', '-86.10000'), ('EKRON', 170, '37.93070', '-86.17730'), ('FLAHERTY', None, '37.83330', '-86.06670'), ('GARRETT', None, '37.90000', '-86.11670'), ('GUSTON', None, '37.88330', '-86.21670'), ('MULDRAUGH', 1298, '37.93330', '-86.00000'), ('PAYNEVILLE', None, '37.98330', '-86.31670'), ('RHODELIA', None, '38.00000', '-86.41670'), ('SIROCCO', None, '37.98330', '-86.28330'), ('WOLF CREEK', None, '38.10000', '-86.38330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ022': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALLEGRE', None, '36.92860', '-87.21720'), ('ALLENSVILLE', 189, '36.71710', '-87.06840'), ('CLIFTY', None, '36.99520', '-87.14770'), ('ELKTON', 1984, '36.81010', '-87.15800'), ('TRENTON', 419, '36.72280', '-87.26320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'KYZ023': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DUKES', None, '37.81670', '-86.70000'), ('HAWESVILLE', 971, '37.89880', '-86.75560'), ('LEWISPORT', 1639, '37.93220', '-86.90240'), ('LYONIA', None, '37.71670', '-86.73330'), ('PATESVILLE', None, '37.78330', '-86.71670'), ('PELLVILLE', None, '37.75000', '-86.81670')], 'partOfState': 'NORTHWEST', 'wfo': 'LMK'}, -'KYZ020': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CALHOUN', 836, '37.54120', '-87.25920'), ('ISLAND', 435, '37.44270', '-87.14760'), ('LIVERMORE', 1482, '37.49160', '-87.13410'), ('SACRAMENTO', 517, '37.41670', '-87.26710')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYZ021': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BREMEN', 365, '37.36110', '-87.21900'), ('CENTRAL CITY', 5893, '37.29550', '-87.12870'), ('DRAKESBORO', 627, '37.21650', '-87.04980'), ('GREENVILLE', 4398, '37.20670', '-87.17850'), ('POWDERLY', 846, '37.23540', '-87.16230'), ('SOUTH CARROLLTON', 184, '37.33640', '-87.14040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'KYZ028': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CECILIA', None, '37.66670', '-85.95000'), ('COLESBURG', None, '37.78330', '-85.78330'), ('EASTVIEW', None, '37.58330', '-86.05000'), ('ELIZABETHTOWN', 22542, '37.70310', '-85.87170'), ('FORT KNOX', 12377, '37.89100', '-85.96320'), ('GLENDALE', None, '37.60000', '-85.91670'), ('HOWE VALLEY', None, '37.68330', '-86.08330'), ('RADCLIFF', 21961, '37.82480', '-85.94010'), ('RINEYVILLE', None, '37.75000', '-85.96670'), ('SONORA', 350, '37.52350', '-85.89150'), ('STEPHENSBURG', None, '37.63330', '-86.01670'), ('SUMMIT', None, '37.56670', '-86.08330'), ('VERTREES', None, '37.70000', '-86.13330'), ('VINE GROVE', 4169, '37.81120', '-85.97620'), ('WEST POINT', 1100, '37.98500', '-85.95410'), ('WHITE MILLS', None, '37.55000', '-86.03330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ029': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BARDSTOWN JUNCTION', None, '37.93330', '-85.70000'), ('BROOKS', 2678, '38.06820', '-85.71690'), ('CLERMONT', None, '37.91670', '-85.65000'), ('HILLVIEW', 7037, '38.06970', '-85.68570'), ('LEBANON JUNCTION', 1801, '37.83380', '-85.72540'), ('MOUNT WASHINGTON', 8485, '38.04760', '-85.55010'), ('SHEPHERDSVILLE', 8334, '37.98740', '-85.71320')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'VAZ039': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AYLOR', None, '38.43470', '-78.30220'), ('BIG MEADOWS', None, '38.52640', '-78.44000'), ('CRIGLERSVILLE', None, '38.45780', '-78.30140'), ('ETLAN', None, '38.52530', '-78.26280'), ('FIVE FORKS', None, '38.29890', '-78.13560'), ('FORDSVILLE', None, '38.40140', '-78.11640'), ('GRAVES MILL', None, '38.42250', '-78.36780'), ('MADISON', 210, '38.37750', '-78.25930'), ('NETHERS', None, '38.57030', '-78.27810'), ('OAKPARK', None, '38.36670', '-78.16030'), ('ROCHELLE', None, '38.29030', '-78.27280'), ('SYRIA', None, '38.48780', '-78.32640'), ('TWYMANS MILL', None, '38.31780', '-78.17170'), ('WOLFTOWN', None, '38.35560', '-78.34780')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'KYZ108': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAPTIST', None, '37.73140', '-83.47930'), ('BELKNAP', None, '37.72040', '-83.29380'), ('BETHANY', None, '37.65030', '-83.47360'), ('BOOTH', None, '37.69560', '-83.63200'), ('BURKHART', None, '37.70670', '-83.27480'), ('CALABOOSE', None, '37.78310', '-83.52970'), ('CAMPTON', 424, '37.73520', '-83.54730'), ('DAYSBORO', None, '37.79340', '-83.37560'), ('FLAT', None, '37.65420', '-83.54610'), ('GILMORE', None, '37.73780', '-83.36970'), ('GLENCAIRN', None, '37.76430', '-83.67000'), ('GOSNEYVILLE', None, '37.80000', '-83.48990'), ('GRANNIE', None, '37.69680', '-83.58570'), ('HAZEL GREEN', None, '37.79800', '-83.41560'), ('HELECHAWA', None, '37.76620', '-83.33990'), ('HIGH FALLS', None, '37.72980', '-83.58370'), ('HOLLONVILLE', None, '37.66850', '-83.46750'), ('JENSON', None, '37.77750', '-83.63000'), ('KOOMER RIDGE CAMPGROUND', None, '37.78320', '-83.63250'), ('LANDSAW', None, '37.72770', '-83.45160'), ('LANE', None, '37.66710', '-83.48490'), ('LEE CITY', None, '37.73920', '-83.33310'), ('LEXIE', None, '37.72890', '-83.40390'), ('LOWER GILMORE', None, '37.76410', '-83.36970'), ('MALAGA', None, '37.71350', '-83.42750'), ('MARY', None, '37.66710', '-83.53650'), ('MAYTOWN', None, '37.84700', '-83.47010'), ('PENCE', None, '37.63490', '-83.47380'), ('PINE RIDGE', None, '37.76310', '-83.61280'), ('RED RIVER GORGE', None, '37.82490', '-83.61770'), ('ROGERS', None, '37.74400', '-83.63580'), ('ROSEFORK', None, '37.69860', '-83.33600'), ('SHOCKEY', None, '37.69100', '-83.33190'), ('STILLWATER', None, '37.75640', '-83.48440'), ('TOLIVER', None, '37.81360', '-83.45780'), ('TORRENT', None, '37.71690', '-83.66230'), ('TRENT', None, '37.77150', '-83.46160'), ('UPPER GILMORE', None, '37.72440', '-83.36500'), ('VALERIA', None, '37.83000', '-83.51670'), ('VORTEX', None, '37.69720', '-83.52720'), ('WHISMAN', None, '37.69550', '-83.65490')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'GAZ094': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BYRON', 2887, '32.65200', '-83.75760'), ('FORT VALLEY', 8005, '32.55480', '-83.88870')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'TXZ078': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('SONORA', 2924, '30.56670', '-100.64310')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'IAZ024': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BODE', 327, '42.86810', '-94.28640'), ('BRADGATE', 101, '42.80260', '-94.41930'), ('DAKOTA CITY', 911, '42.72220', '-94.19690'), ('HARDY', 57, '42.81020', '-94.05150'), ('HUMBOLDT', 4452, '42.72150', '-94.22370'), ('LIVERMORE', 431, '42.86780', '-94.18380'), ('OTTOSEN', 61, '42.89960', '-94.37530'), ('PIONEER', 21, '42.65350', '-94.39110'), ('RENWICK', 306, '42.82740', '-93.98070'), ('RUTLAND', 145, '42.76120', '-94.29260'), ('THOR', 174, '42.68870', '-94.05000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAZ025': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BELMOND', 2560, '42.84920', '-93.60950'), ('CLARION', 2968, '42.73210', '-93.73210'), ('DOWS', 675, '42.65870', '-93.50200'), ('EAGLE GROVE', 3712, '42.66730', '-93.90130'), ('GALT', 30, '42.69390', '-93.60480'), ('GOLDFIELD', 680, '42.73570', '-93.92120'), ('ROWAN', 218, '42.74010', '-93.54960'), ('WOOLSTOCK', 204, '42.56530', '-93.84340')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAZ026': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALEXANDER', 165, '42.80480', '-93.47720'), ('COULTER', 262, '42.73330', '-93.37030'), ('GENEVA', 171, '42.67590', '-93.13000'), ('HAMPTON', 4218, '42.74500', '-93.20090'), ('HANSELL', 96, '42.75720', '-93.10340'), ('LATIMER', 535, '42.76320', '-93.36500'), ('POPEJOY', 78, '42.59410', '-93.42680'), ('SHEFFIELD', 930, '42.89440', '-93.21050')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAZ027': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALLISON', 1006, '42.75250', '-92.79560'), ('APLINGTON', 1054, '42.58160', '-92.88090'), ('AREDALE', 89, '42.83340', '-93.00450'), ('BRISTOW', 202, '42.77350', '-92.90670'), ('CLARKSVILLE', 1441, '42.78020', '-92.66810'), ('DUMONT', 676, '42.75160', '-92.97340'), ('GREENE', 1099, '42.89680', '-92.80390'), ('NEW HARTFORD', 659, '42.56720', '-92.62240'), ('PARKERSBURG', 1889, '42.57360', '-92.78250'), ('SHELL ROCK', 1298, '42.71260', '-92.58150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DMX'}, -'IAZ020': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AKRON', 1489, '42.82730', '-96.55630'), ('BRUNSVILLE', 146, '42.81130', '-96.26640'), ('CRAIG', 102, '42.89550', '-96.31010'), ('HINTON', 808, '42.62470', '-96.29390'), ('KINGSLEY', 1245, '42.58750', '-95.96800'), ('LE MARS', 9237, '42.78760', '-96.16990'), ('MERRILL', 754, '42.72100', '-96.24910'), ('OYENS', 132, '42.81940', '-96.05750'), ('REMSEN', 1762, '42.81310', '-95.97280'), ('STRUBLE', 85, '42.89480', '-96.19410'), ('WESTFIELD', 189, '42.75670', '-96.60540')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ021': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AURELIA', 1062, '42.71300', '-95.43690'), ('CHEROKEE', 5369, '42.75060', '-95.55250'), ('CLEGHORN', 250, '42.81160', '-95.71350'), ('LARRABEE', 149, '42.86130', '-95.54490'), ('MARCUS', 1139, '42.82410', '-95.80720'), ('MERIDEN', 184, '42.79420', '-95.63260'), ('QUIMBY', 368, '42.62920', '-95.64270'), ('WASHTA', 282, '42.57590', '-95.71920')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ022': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBERT CITY', 709, '42.78110', '-94.94890'), ('ALTA', 1865, '42.67200', '-95.30450'), ('LAKESIDE', 484, '42.61970', '-95.17390'), ('LINN GROVE', 211, '42.89260', '-95.24170'), ('MARATHON', 302, '42.86100', '-94.98290'), ('NEWELL', 887, '42.61060', '-95.00380'), ('REMBRANDT', 228, '42.82640', '-95.16570'), ('SIOUX RAPIDS', 720, '42.89190', '-95.14810'), ('STORM LAKE', 10076, '42.64500', '-95.19990'), ('TRUESDALE', 91, '42.72950', '-95.18270')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ023': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FONDA', 648, '42.58180', '-94.84550'), ('GILMORE CITY', 556, '42.72660', '-94.46000'), ('HAVELOCK', 177, '42.83390', '-94.70010'), ('LAURENS', 1476, '42.84780', '-94.84800'), ('PALMER', 214, '42.62880', '-94.59830'), ('PLOVER', 95, '42.87710', '-94.62240'), ('POCAHONTAS', 1970, '42.73620', '-94.66680'), ('ROLFE', 675, '42.81280', '-94.53030'), ('VARINA', 90, '42.65860', '-94.89850')], 'partOfState': 'NORTHWEST', 'wfo': 'DMX'}, -'IAZ028': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DENVER', 1627, '42.67120', '-92.33410'), ('FREDERIKA', 199, '42.88360', '-92.30590'), ('JANESVILLE', 829, '42.64440', '-92.46390'), ('PLAINFIELD', 438, '42.84390', '-92.53550'), ('READLYN', 786, '42.70340', '-92.22480'), ('SUMNER', 2106, '42.84990', '-92.09600'), ('TRIPOLI', 1310, '42.80980', '-92.25760'), ('WAVERLY', 8968, '42.72540', '-92.46980')], 'partOfState': 'NORTHEAST', 'wfo': 'DMX'}, -'IAZ029': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBANY', None, '42.86444', '-91.74912'), ('ALPHA', None, '42.99824', '-92.04972'), ('ARLINGTON', 490, '42.74870', '-91.67040'), ('BRAINARD', None, '42.93226', '-91.69964'), ('CLERMONT', 716, '43.00030', '-91.65330'), ('DONNAN', None, '42.90100', '-91.86930'), ('DOUGLAS', None, '43.01474', '-91.88292'), ('ELDORADO', None, '43.04956', '-91.84993'), ('ELGIN', 676, '42.95600', '-91.63440'), ('FAYETTE', 1300, '42.84040', '-91.80260'), ('HAWKEYE', 489, '42.93800', '-91.95090'), ('MAYNARD', 500, '42.77420', '-91.87690'), ('OELWEIN', 6692, '42.67630', '-91.91390'), ('ORAN', None, '42.69765', '-92.08454'), ('RANDALIA', 84, '42.86330', '-91.88620'), ('RICHFIELD', None, '42.94692', '-92.06438'), ('ST. LUCAS', 178, '43.06660', '-91.93390'), ('WADENA', 243, '42.83950', '-91.65800'), ('WAUCOMA', 299, '43.05530', '-92.03460'), ('WEST UNION', 2549, '42.95870', '-91.81260'), ('WESTGATE', 234, '42.76850', '-91.99510')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'MSZ040': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MAYERSVILLE', 795, '32.89740', '-91.04490')], 'partOfState': 'WEST CENTRAL', 'wfo': 'JAN'}, -'MSZ041': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ANGUILLA', 907, '32.97210', '-90.82820'), ('CARY', 427, '32.80470', '-90.92590'), ('ROLLING FORK', 2486, '32.90690', '-90.87700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'JAN'}, -'MSZ042': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BENTONIA', 500, '32.64730', '-90.37020'), ('EDEN', 126, '32.98570', '-90.32320'), ('SATARTIA', 68, '32.67100', '-90.54390'), ('YAZOO CITY', 14550, '32.86140', '-90.40770')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'LAZ011': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('COUSHATTA', 2299, '32.02480', '-93.34050'), ('EDGEFIELD', 190, '32.04880', '-93.33580'), ('HALL SUMMIT', 264, '32.17690', '-93.30490'), ('MARTIN', 625, '32.09910', '-93.21830')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAZ016': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DELTA', 239, '32.32380', '-90.92320'), ('MOUND', 12, '32.33680', '-91.02150'), ('RICHMOND', 499, '32.38780', '-91.18240'), ('TALLULAH', 9189, '32.40740', '-91.18920')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAZ017': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CONVERSE', 400, '31.78040', '-93.69980'), ('FISHER', 268, '31.49440', '-93.46030'), ('FLORIEN', 692, '31.44940', '-93.45950'), ('MANY', 2889, '31.56540', '-93.47490'), ('NOBLE', 259, '31.69010', '-93.68300'), ('PLEASANT HILL', 786, '31.81610', '-93.51520'), ('ZWOLLE', 1783, '31.63630', '-93.64350')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'MSZ046': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DE KALB', 972, '32.76850', '-88.65550'), ('SCOOBA', 632, '32.83140', '-88.47770')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSZ047': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('VICKSBURG', 26407, '32.32910', '-90.87080')], 'partOfState': 'WEST CENTRAL', 'wfo': 'JAN'}, -'MSZ048': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOLTON', 629, '32.35260', '-90.45740'), ('CLINTON', 23347, '32.33970', '-90.33490'), ('EDWARDS', 1347, '32.33230', '-90.60470'), ('JACKSON', 184256, '32.32050', '-90.20760'), ('LEARNED', 50, '32.19770', '-90.54870'), ('RAYMOND', 1664, '32.26030', '-90.42270'), ('TERRY', 664, '32.10280', '-90.29880'), ('UTICA', 966, '32.10330', '-90.62210')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSZ049': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BRANDON', 16436, '32.28050', '-90.00380'), ('FLORENCE', 2396, '32.15480', '-90.12840'), ('FLOWOOD', 4750, '32.32320', '-90.10570'), ('PEARL', 21961, '32.27180', '-90.10520'), ('PELAHATCHIE', 1461, '32.31540', '-89.80110'), ('PUCKETT', 354, '32.08440', '-89.77840'), ('RICHLAND', 6027, '32.23320', '-90.16500')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'LAZ018': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ASHLAND', 291, '32.11630', '-93.11460'), ('CAMPTI', 1057, '31.89790', '-93.11500'), ('CLARENCE', 516, '31.82000', '-93.02860'), ('GOLDONNA', 457, '32.02040', '-92.91200'), ('NATCHEZ', 583, '31.67400', '-93.04530'), ('NATCHITOCHES', 17865, '31.75550', '-93.09770'), ('POWHATAN', 141, '31.87410', '-93.20330'), ('PROVENCAL', 708, '31.65270', '-93.20030'), ('ROBELINE', 183, '31.69180', '-93.30330')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAZ019': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ATLANTA', 150, '31.80560', '-92.73690'), ('CALVIN', 236, '31.95970', '-92.77830'), ('DODSON', 357, '32.07920', '-92.65820'), ('SIKES', 120, '32.07930', '-92.48590'), ('WINNFIELD', 5749, '31.92210', '-92.64120')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'NMZ001': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARCHULETA', None, '36.79400', '-107.70800'), ('AZTEC', 6378, '36.82840', '-108.00460'), ('BLOOMFIELD', 6417, '36.71170', '-107.97740'), ('BURNHAM', None, '36.36700', '-108.51700'), ('CEDAR HILL', None, '36.93700', '-107.89000'), ('FARMINGTON', 37844, '36.75470', '-108.18560'), ('FLORA VISTA', 1383, '36.80210', '-108.08200'), ('FRUITLAND', None, '36.73900', '-108.39500'), ('KIRTLAND', 6190, '36.73950', '-108.34310'), ('LA PLATA', None, '36.92900', '-108.19000'), ('LAKE VALLEY', None, '36.09200', '-108.15700'), ('NASCHITTI', 360, '36.06220', '-108.68100'), ('NEWCOMB', 387, '36.28330', '-108.70680'), ('RATTLESNAKE', None, '36.75500', '-108.80100'), ('SANOSTEE', 429, '36.43480', '-108.87270'), ('SHEEP SPRINGS', 237, '36.14300', '-108.70700'), ('SHIPROCK', 8156, '36.79200', '-108.69600'), ('STANDING ROCK', None, '35.80300', '-108.36000'), ('TOADLENA', None, '36.23700', '-108.89200'), ('TOCITO', None, '36.39900', '-108.78100'), ('TURLEY', None, '36.75300', '-107.76400')], 'partOfState': 'NORTHWEST', 'wfo': 'ABQ'}, -'KSZ011': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BAILEYVILLE', None, '39.84440', '-96.18470'), ('BERN', 204, '39.96220', '-95.97170'), ('CENTRALIA', 534, '39.72580', '-96.12700'), ('CORNING', 170, '39.65720', '-96.02920'), ('GOFF', 181, '39.66390', '-95.93200'), ('ONEIDA', 70, '39.86390', '-95.93890'), ('SABETHA', 2589, '39.90220', '-95.80060'), ('SENECA', 2122, '39.83420', '-96.06390'), ('WETMORE', 362, '39.63330', '-95.81110')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'KSZ010': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AXTELL', 445, '39.87170', '-96.25860'), ('BEATTIE', 277, '39.86110', '-96.41940'), ('BLUE RAPIDS', 1088, '39.68200', '-96.65950'), ('FRANKFORT', 855, '39.70560', '-96.41670'), ('LILLIS', None, '39.60970', '-96.29580'), ('MARYSVILLE', 3271, '39.84110', '-96.64690'), ('OKETO', 87, '39.96360', '-96.59940'), ('SUMMERFIELD', 211, '39.98720', '-96.35000'), ('VERMILLION', 107, '39.71940', '-96.26560'), ('WATERVILLE', 681, '39.69110', '-96.74720')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'KSZ013': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('EDSON', None, '39.33000', '-101.54000'), ('GOODLAND', 4948, '39.34860', '-101.70930'), ('KANORADO', 248, '39.33710', '-102.03690'), ('RULETON', None, '39.34000', '-101.88000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'KSZ012': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('EVEREST', 314, '39.67720', '-95.42450'), ('FAIRVIEW', 271, '39.84110', '-95.72780'), ('HIAWATHA', 3417, '39.85250', '-95.53560'), ('HORTON', 1967, '39.66060', '-95.52610'), ('IOWA SAC AND FOX RESERVAT', None, '39.98000', '-95.44000'), ('KICKAPOO RESERVATION', None, '39.69000', '-95.66000'), ('MORRILL', 277, '39.92830', '-95.69170'), ('POWHATTAN', 91, '39.76170', '-95.62970'), ('RESERVE', 100, '39.97720', '-95.56170'), ('ROBINSON', 216, '39.81670', '-95.41030'), ('WILLIS', 69, '39.72500', '-95.50560')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'KSZ015': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANGELUS', None, '39.19000', '-100.69000'), ('HOXIE', 1244, '39.35530', '-100.43950'), ('SEGUIN', None, '39.34000', '-100.60000'), ('SELDEN', 201, '39.54120', '-100.56660'), ('TASCO', None, '39.35000', '-100.29000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'KSZ014': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BREWSTER', 285, '39.36290', '-101.37740'), ('BREWSTER', 285, '39.36290', '-101.37740'), ('COLBY', 5450, '39.38770', '-101.04590'), ('GEM', 96, '39.42580', '-100.89680'), ('HALFORD', None, '39.37000', '-100.87000'), ('LEVANT', None, '39.38000', '-101.19000'), ('MENLO', 57, '39.35610', '-100.72390'), ('MINGO', None, '39.28000', '-100.96000'), ('REXFORD', 157, '39.47050', '-100.74350')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'KSZ017': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CODELL', None, '39.19350', '-99.17700'), ('DAMAR', 155, '39.31910', '-99.58380'), ('PALCO', 248, '39.25390', '-99.56420'), ('PLAINVILLE', 2029, '39.23420', '-99.30130'), ('STOCKTON', 1558, '39.43630', '-99.27130'), ('WEBSTER STATE PARK', None, '39.39800', '-99.45000'), ('WOODSTON', 116, '39.45430', '-99.09870'), ('ZURICH', 126, '39.23160', '-99.43440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'KSZ016': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BOGUE', 179, '39.35960', '-99.68790'), ('HILL CITY', 1604, '39.36630', '-99.84650'), ('MORLAND', 164, '39.34880', '-100.07440'), ('NICODEMUS', None, '39.39000', '-99.61000'), ('PENOKEE', None, '39.35000', '-99.97000'), ('SAINT PETER', None, '39.19000', '-100.09000'), ('STUDLEY', None, '39.35000', '-100.16000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'TNZ024': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('MCEWEN', 1702, '36.10680', '-87.63570'), ('NEW JOHNSONVILLE', 1905, '36.01690', '-87.95740'), ('WAVERLY', 4028, '36.09240', '-87.78780')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ025': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BURNS', 1366, '36.05320', '-87.31200'), ('CHARLOTTE', 1153, '36.18470', '-87.34750'), ('DICKSON', 12244, '36.07670', '-87.37710'), ('SLAYDEN', 185, '36.29320', '-87.46780'), ('VANLEER', 310, '36.23740', '-87.44480'), ('WHITE BLUFF', 2142, '36.10590', '-87.21350')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ026': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ASHLAND CITY', 3641, '36.27690', '-87.05980'), ('KINGSTON SPRINGS', 2773, '36.09650', '-87.10040'), ('PEGRAM', 2146, '36.10430', '-87.05670')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ027': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELLE MEADE', 2943, '36.09880', '-86.85500'), ('BERRY HILL', 674, '36.11930', '-86.76780'), ('FOREST HILLS', 4710, '36.06340', '-86.83680'), ('GOODLETTSVILLE', 13780, '36.33370', '-86.70380'), ('LAKEWOOD', 2341, '36.23950', '-86.63430'), ('NASHVILLE', 545524, '36.17160', '-86.78480'), ('OAK HILL', 4493, '36.07690', '-86.78690')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ020': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADFORD', 1113, '36.07390', '-88.81770'), ('DYER', 2406, '36.07090', '-88.99200'), ('EATON', None, '35.96670', '-89.13330'), ('GIBSON', 305, '35.87400', '-88.84590'), ('HUMBOLDT', 9467, '35.82180', '-88.90650'), ('KENTON', 1306, '36.19970', '-89.01420'), ('MEDINA', 969, '35.80340', '-88.77430'), ('MILAN', 7664, '35.91890', '-88.75460'), ('RUTHERFORD', 1272, '36.12540', '-88.99280'), ('TRENTON', 4683, '35.97210', '-88.93960'), ('YORKVILLE', 293, '36.09870', '-89.11900')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TNZ021': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ATWOOD', 1000, '35.97700', '-88.67100'), ('BRUCETON', 1554, '36.03440', '-88.24710'), ('BUENA VISTA', None, '35.98330', '-88.28330'), ('CEDAR GROVE', None, '35.81670', '-88.60000'), ('CLARKSBURG', 285, '35.87160', '-88.38980'), ('HOLLOW ROCK', 963, '36.03520', '-88.27260'), ('HUNTINGDON', 4349, '36.00850', '-88.41200'), ('MCKENZIE', 5295, '36.13960', '-88.51130'), ('MCLEMORESVILLE', 259, '35.98600', '-88.57940'), ('MIDDLE FORK', None, '35.86670', '-88.50000'), ('TREZEVANT', 901, '36.01350', '-88.62000'), ('VALE', None, '36.11670', '-88.26670')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TNZ022': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIG SANDY', 518, '36.23270', '-88.08570'), ('CAMDEN', 3828, '36.06440', '-88.10490')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ023': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ERIN', 1490, '36.31590', '-87.70260'), ('TENNESSEE RIDGE', 1334, '36.31980', '-87.76380')], 'partOfState': '', 'wfo': 'OHX'}, -'MOZ033': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CAIRO', 293, '39.51200', '-92.44070'), ('CLARK', 275, '39.28060', '-92.34190'), ('CLIFTON HILL', 124, '39.43920', '-92.66710'), ('HIGBEE', 623, '39.30640', '-92.51220'), ('HUNTSVILLE', 1553, '39.43740', '-92.54360'), ('JACKSONVILLE', 163, '39.58750', '-92.47280'), ('MOBERLY', 11945, '39.41970', '-92.43620'), ('RENICK', 221, '39.34210', '-92.41070'), ('THOMAS HILL RES', None, '39.60000', '-92.63330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'VAZ034': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEDFORD CITY', None, '37.33780', '-79.52110'), ('BIG ISLAND', None, '37.53330', '-79.36670'), ('BOONSBORO', None, '37.45000', '-79.26670'), ('CHAMBLISSBURG', None, '37.25000', '-79.71670'), ('COLEMAN FALLS', None, '37.50000', '-79.33330'), ('FOREST', 8006, '37.36670', '-79.28330'), ('GOODE', None, '37.36670', '-79.38330'), ('GOODVIEW', None, '37.21670', '-79.71670'), ('HUDDLESTON', None, '37.16670', '-79.48330'), ('MONETA', None, '37.18330', '-79.63330'), ('MONTVALE', None, '37.38330', '-79.73330'), ('SEDALIA', None, '37.48330', '-79.45000'), ('SNOWDEN', None, '37.60000', '-79.40000'), ('STEWARTSVILLE', None, '37.26670', '-79.80000'), ('THAXTON', None, '37.35000', '-79.63330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RNK'}, -'MOZ032': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRUNSWICK', 925, '39.42400', '-93.12600'), ('DALTON', 27, '39.39820', '-92.99200'), ('KEYTESVILLE', 533, '39.43270', '-92.93680'), ('MENDON', 208, '39.59110', '-93.13360'), ('ROTHVILLE', 93, '39.65470', '-93.06090'), ('SALISBURY', 1726, '39.42340', '-92.80230'), ('SUMNER', 142, '39.65570', '-93.24320'), ('TRIPLETT', 64, '39.49770', '-93.19350'), ('WIEN', None, '39.66670', '-92.80000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'VAZ063': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ASHCAKE', None, '37.69170', '-77.40280'), ('ASHLAND', 6619, '37.76160', '-77.47640'), ('ATLEE', None, '37.65750', '-77.40740'), ('BEAVERDAM', None, '37.94170', '-77.65440'), ('COATESVILLE', None, '37.87830', '-77.60930'), ('DOSWELL', None, '37.86030', '-77.46460'), ('ELMONT', None, '37.71110', '-77.49280'), ('GILMAN', None, '37.77830', '-77.58080'), ('GOODALL', None, '37.78250', '-77.63720'), ('GUM TREE', None, '37.81920', '-77.47440'), ('HANOVER', None, '37.76320', '-77.37100'), ('HANOVER AIRPORT', None, '37.70870', '-77.43590'), ('HEWLETT', None, '37.92220', '-77.57670'), ('KINGS DOMINION', None, '37.83300', '-77.43100'), ('MABELTON', None, '37.84080', '-77.74250'), ('MECHANICSVILLE', 30464, '37.62730', '-77.35600'), ('MONTPELIER', None, '37.81440', '-77.67770'), ('NOEL', None, '37.90440', '-77.54440'), ('OLIVER', None, '37.85810', '-77.53310'), ('ROCKVILLE', None, '37.72580', '-77.67890'), ('STUDLEY', None, '37.67560', '-77.29080'), ('VONTAY', None, '37.75750', '-77.75060'), ('WESTWOOD', None, '37.60170', '-77.17780')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'SDZ009': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AKASKA', 31, '45.33190', '-100.12070'), ('AKASKA', 31, '45.33190', '-100.12070'), ('GLENHAM', 139, '45.53330', '-100.27030'), ('GLENHAM', 139, '45.53330', '-100.27030'), ('INDIAN CREEK REC AREA', None, '45.51860', '-100.38630'), ('INDIAN CREEK REC AREA', None, '45.51860', '-100.38630'), ('JAVA', 197, '45.50360', '-99.88420'), ('JAVA', 197, '45.50360', '-99.88420'), ('LOWRY', 10, '45.31540', '-99.98200'), ('LOWRY', 10, '45.31540', '-99.98200'), ('MOBRIDGE', 3574, '45.54070', '-100.43580'), ('MOBRIDGE', 3574, '45.54070', '-100.43580'), ('SELBY', 736, '45.50470', '-100.03240'), ('SELBY', 736, '45.50470', '-100.03240'), ('SWAN CREEK REC AREA', None, '45.31580', '-100.26390'), ('SWAN CREEK REC AREA', None, '45.31580', '-100.26390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDZ008': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CLAIRE CITY', 85, '45.85640', '-97.10240'), ('CLAIRE CITY', 85, '45.85640', '-97.10240'), ('CORONA', 112, '45.33480', '-96.76520'), ('CORONA', 112, '45.33480', '-96.76520'), ('NEW EFFINGTON', 233, '45.85520', '-96.91810'), ('NEW EFFINGTON', 233, '45.85520', '-96.91810'), ('ORTLEY', 54, '45.33520', '-97.20400'), ('ORTLEY', 54, '45.33520', '-97.20400'), ('PEEVER', 209, '45.54250', '-96.95570'), ('PEEVER', 209, '45.54250', '-96.95570'), ('ROSHOLT', 419, '45.86610', '-96.73170'), ('ROSHOLT', 419, '45.86610', '-96.73170'), ('RUDEBUSCH CORNER', None, '45.42820', '-97.15450'), ('RUDEBUSCH CORNER', None, '45.42820', '-97.15450'), ('SISSETON', 2572, '45.66240', '-97.04610'), ('SISSETON', 2572, '45.66240', '-97.04610'), ('SUMMIT', 281, '45.30380', '-97.03680'), ('SUMMIT', 281, '45.30380', '-97.03680'), ('VICTOR', None, '45.86870', '-96.83570'), ('VICTOR', None, '45.86870', '-96.83570'), ('WHITE ROCK', 18, '45.92530', '-96.57250'), ('WHITE ROCK', 18, '45.92530', '-96.57250'), ('WILMOT', 543, '45.40930', '-96.85690'), ('WILMOT', 543, '45.40930', '-96.85690')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ001': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BUFFALO', 380, '45.58430', '-103.54760'), ('CAMP CROOK', 56, '45.55000', '-103.98330'), ('GUSTAVE', None, '45.28330', '-103.98330'), ('HARDING', None, '45.39500', '-103.83230'), ('KARINEN', None, '45.90000', '-103.68330'), ('LADNER', None, '45.83330', '-103.73330'), ('LUDLOW', None, '45.83330', '-103.38330'), ('MURCHISON', None, '45.38330', '-103.23330'), ('RALPH', None, '45.77350', '-103.06520'), ('REDIG', None, '45.27120', '-103.54750'), ('REVA', None, '45.54650', '-103.08300')], 'partOfState': 'NORTHWEST', 'wfo': 'UNR'}, -'SDZ003': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BLACK HORSE', None, '45.71540', '-101.38060'), ('BLACK HORSE', None, '45.71540', '-101.38060'), ('BULLHEAD', 308, '45.76790', '-101.08010'), ('BULLHEAD', 308, '45.76790', '-101.08010'), ('INDIAN MEMORIAL REC AREA', None, '45.57440', '-100.48370'), ('INDIAN MEMORIAL REC AREA', None, '45.57440', '-100.48370'), ('KELDRON', None, '45.93380', '-101.80650'), ('KELDRON', None, '45.93380', '-101.80650'), ('KENEL', None, '45.85580', '-100.45850'), ('KENEL', None, '45.85580', '-100.45850'), ('KLEIN RANCH', None, '45.66580', '-101.34780'), ('KLEIN RANCH', None, '45.66580', '-101.34780'), ('LITTLE EAGLE', 370, '45.68160', '-100.79630'), ('LITTLE EAGLE', 370, '45.68160', '-100.79630'), ('MAHTO', None, '45.75630', '-100.67530'), ('MAHTO', None, '45.75630', '-100.67530'), ('MCINTOSH', 217, '45.92060', '-101.34960'), ('MCINTOSH', 217, '45.92060', '-101.34960'), ('MCLAUGHLIN', 775, '45.81300', '-100.81100'), ('MCLAUGHLIN', 775, '45.81300', '-100.81100'), ('MORRISTOWN', 82, '45.93900', '-101.71830'), ('MORRISTOWN', 82, '45.93900', '-101.71830'), ('SHAMBO RANCH', None, '45.53320', '-101.83420'), ('SHAMBO RANCH', None, '45.53320', '-101.83420'), ('THUNDER HAWK', None, '45.93750', '-101.98330'), ('THUNDER HAWK', None, '45.93750', '-101.98330'), ('WAKPALA', None, '45.65700', '-100.53550'), ('WAKPALA', None, '45.65700', '-100.53550'), ('WALKER', None, '45.91020', '-101.09030'), ('WALKER', None, '45.91020', '-101.09030'), ('WATAUGA', None, '45.92250', '-101.54030'), ('WATAUGA', None, '45.92250', '-101.54030')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDZ002': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BISON', 373, '45.52430', '-102.46510'), ('BIXBY', None, '45.14860', '-102.56130'), ('CHANCE', None, '45.40960', '-102.27930'), ('COAL SPRINGS', None, '45.44430', '-102.09910'), ('DATE', None, '45.36670', '-102.65000'), ('DAVISTON', None, '45.46670', '-102.66670'), ('IMOGENE', None, '45.13330', '-102.71670'), ('LEMMON', 1398, '45.93840', '-102.15820'), ('LODGEPOLE', None, '45.80880', '-102.66200'), ('MEADOW', None, '45.53330', '-102.21670'), ('MEADOW CORNER', None, '45.53330', '-102.16670'), ('PRAIRIE CITY', None, '45.53330', '-102.80000'), ('SHADEHILL', None, '45.76670', '-102.18330'), ('SHADEHILL RESERVOIR', None, '45.75000', '-102.25000'), ('SOMMERVILLE', None, '45.78330', '-102.18330'), ('SORUM', None, '45.45260', '-102.93720'), ('STROOL', None, '45.50000', '-102.80000'), ('USTA', None, '45.21830', '-102.16160'), ('WHITE BUTTE', None, '45.93900', '-102.35940'), ('ZEONA', None, '45.19170', '-102.92060')], 'partOfState': 'NORTHWEST', 'wfo': 'UNR'}, -'SDZ005': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('EUREKA', 1101, '45.76870', '-99.62300'), ('EUREKA', 1101, '45.76870', '-99.62300'), ('GREENWAY', None, '45.91240', '-99.71340'), ('GREENWAY', None, '45.91240', '-99.71340'), ('HILLSVIEW', 3, '45.66520', '-99.55950'), ('HILLSVIEW', 3, '45.66520', '-99.55950'), ('LEOLA', 462, '45.72130', '-98.93810'), ('LEOLA', 462, '45.72130', '-98.93810'), ('LONG LAKE', 58, '45.85630', '-99.20620'), ('LONG LAKE', 58, '45.85630', '-99.20620'), ('LONG LAKE COLONY', None, '45.60760', '-98.81930'), ('LONG LAKE COLONY', None, '45.60760', '-98.81930'), ('SPRING CREEK COLONY', None, '45.90910', '-98.88000'), ('SPRING CREEK COLONY', None, '45.90910', '-98.88000'), ('WETONKA', 12, '45.62460', '-98.77000'), ('WETONKA', 12, '45.62460', '-98.77000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDZ004': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARTAS', 13, '45.88770', '-99.80600'), ('ARTAS', 13, '45.88770', '-99.80600'), ('HERREID', 482, '45.83690', '-100.07520'), ('HERREID', 482, '45.83690', '-100.07520'), ('MOUND CITY', 84, '45.72680', '-100.06770'), ('MOUND CITY', 84, '45.72680', '-100.06770'), ('POLLOCK', 339, '45.90150', '-100.29020'), ('POLLOCK', 339, '45.90150', '-100.29020')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABR'}, -'SDZ007': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AMHERST', None, '45.73790', '-97.92170'), ('AMHERST', None, '45.73790', '-97.92170'), ('BRITTON', 1328, '45.78950', '-97.74950'), ('BRITTON', 1328, '45.78950', '-97.74950'), ('EDEN', 97, '45.61620', '-97.42010'), ('EDEN', 97, '45.61620', '-97.42010'), ('FORT SISSETON STATE PARK', None, '45.65730', '-97.52970'), ('FORT SISSETON STATE PARK', None, '45.65730', '-97.52970'), ('HILLHEAD', None, '45.83500', '-97.39210'), ('HILLHEAD', None, '45.83500', '-97.39210'), ('KIDDER', None, '45.88320', '-97.71420'), ('KIDDER', None, '45.88320', '-97.71420'), ('LAKE CITY', 47, '45.72380', '-97.41360'), ('LAKE CITY', 47, '45.72380', '-97.41360'), ('LANGFORD', 290, '45.60230', '-97.82950'), ('LANGFORD', 290, '45.60230', '-97.82950'), ('ROY LAKE STATE PARK', None, '45.71030', '-97.43030'), ('ROY LAKE STATE PARK', None, '45.71030', '-97.43030'), ('VEBLEN', 281, '45.86190', '-97.28680'), ('VEBLEN', 281, '45.86190', '-97.28680')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ006': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ABERDEEN', 24658, '45.46750', '-98.48240'), ('ABERDEEN', 24658, '45.46750', '-98.48240'), ('BARNARD', None, '45.73210', '-98.49570'), ('BARNARD', None, '45.73210', '-98.49570'), ('BATH', None, '45.46900', '-98.32380'), ('BATH', None, '45.46900', '-98.32380'), ('CLAREMONT', 130, '45.67200', '-98.01450'), ('CLAREMONT', 130, '45.67200', '-98.01450'), ('COLUMBIA', 140, '45.61490', '-98.31160'), ('COLUMBIA', 140, '45.61490', '-98.31160'), ('FERNEY', None, '45.33020', '-98.09720'), ('FERNEY', None, '45.33020', '-98.09720'), ('FREDERICK', 255, '45.83280', '-98.50660'), ('FREDERICK', 255, '45.83280', '-98.50660'), ('GROTON', 1356, '45.45210', '-98.10010'), ('GROTON', 1356, '45.45210', '-98.10010'), ('HECLA', 314, '45.88210', '-98.15140'), ('HECLA', 314, '45.88210', '-98.15140'), ('HOUGHTON', None, '45.76290', '-98.21050'), ('HOUGHTON', None, '45.76290', '-98.21050'), ('PUTNEY', None, '45.56030', '-98.17530'), ('PUTNEY', None, '45.56030', '-98.17530'), ('RICHMOND LAKE REC AREA', None, '45.54190', '-98.61080'), ('RICHMOND LAKE REC AREA', None, '45.54190', '-98.61080'), ('STRATFORD', 96, '45.31710', '-98.30380'), ('STRATFORD', 96, '45.31710', '-98.30380'), ('WARNER', 419, '45.32430', '-98.49520'), ('WARNER', 419, '45.32430', '-98.49520'), ('WESTPORT', 125, '45.64790', '-98.49730'), ('WESTPORT', 125, '45.64790', '-98.49730')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'VAZ062': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CALEDONIA', None, '37.82110', '-78.10600'), ('CENTERVILLE', None, '37.67090', '-77.68740'), ('CROZIER', None, '37.63720', '-77.79690'), ('ELK HILL', None, '37.71730', '-78.08750'), ('FIFE', None, '37.74220', '-78.05880'), ('GEORGES TAVERN', None, '37.73550', '-78.05430'), ('GOOCHLAND', None, '37.68390', '-77.88540'), ('HADENSVILLE', None, '37.82550', '-77.99970'), ('IRWIN', None, '37.69390', '-77.92350'), ('JOHNSONS SPRINGS', None, '37.69810', '-77.71140'), ('MAIDENS', None, '37.66900', '-77.88180'), ('MANAKIN', None, '37.60170', '-77.70200'), ('OILVILLE', None, '37.70500', '-77.78790'), ('OTHMA', None, '37.77250', '-77.98000'), ('PEMBERTON', None, '37.67440', '-78.08500'), ('ROCK CASTLE', None, '37.62660', '-77.97830'), ('SABOT', None, '37.61410', '-77.74800'), ('SANDY HOOK', None, '37.75280', '-77.91270'), ('TABSCOTT', None, '37.86120', '-78.06440'), ('THREE SQUARE', None, '37.66500', '-77.99460'), ('WEST VIEW', None, '37.64600', '-78.00820')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'KSZ047': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALBERT', 181, '38.45450', '-99.01170'), ('CLAFLIN', 705, '38.52390', '-98.53680'), ('ELLINWOOD', 2164, '38.35620', '-98.58200'), ('GALATIA', 61, '38.64140', '-98.95720'), ('GREAT BEND', 15345, '38.36080', '-98.80880'), ('GREAT BEND ARPT', None, '38.35000', '-98.85000'), ('HOISINGTON', 2975, '38.51840', '-98.77810'), ('OLMITZ', 138, '38.51640', '-98.93700'), ('PAWNEE ROCK', 356, '38.26530', '-98.98220'), ('SUSANK', 57, '38.64040', '-98.77460')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'HIZ008': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('HAWAIIAN OCEAN VIEW ESTAT', None, '19.08900', '-155.78060'), ('HILEA', None, '19.13860', '-155.53710'), ('HONUAPO', None, '19.09340', '-155.55160'), ('KAHUKU-BIG ISLAND', None, '19.05770', '-155.69410'), ('KIPUKA NAHUAOPALA', None, '19.04640', '-155.61780'), ('NAALEHU', 919, '19.07720', '-155.57530'), ('PAHALA', 1378, '19.20330', '-155.48240'), ('PUUEO', None, '19.04020', '-155.65500'), ('WAIKAPUNA', None, '19.02550', '-155.58330')], 'partOfState': '', 'wfo': 'HFO'}, -'VAZ065': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BASKERVILLE', None, '36.68890', '-78.27490'), ('BEECHWOOD', None, '36.61720', '-78.21390'), ('BOYDTON', 454, '36.66600', '-78.38980'), ('BRACEY', None, '36.59710', '-78.14330'), ('BUFFALO JUNCTION', None, '36.60470', '-78.63060'), ('BUFFALO SPRINGS', None, '36.64620', '-78.66260'), ('CHASE CITY', 2457, '36.79920', '-78.46130'), ('CLARKSVILLE', 1329, '36.62050', '-78.56560'), ('EPPES FORK', None, '36.55280', '-78.36190'), ('FAIRVIEW', None, '36.81530', '-78.46690'), ('FINCHLEY', None, '36.65090', '-78.49230'), ('FINNEYWOOD', None, '36.87530', '-78.48060'), ('FORKSVILLE', None, '36.75220', '-78.04640'), ('JOHN H KERR DAM', None, '36.59830', '-78.29870'), ('KEATS', None, '36.55560', '-78.29760'), ('LA CROSSE', 618, '36.69680', '-78.09370'), ('NELSON', None, '36.55650', '-78.67250'), ('NORTH VIEW', None, '36.78060', '-78.24440'), ('PALMER SPRINGS', None, '36.56050', '-78.23890'), ('RICHARDSON', None, '36.56110', '-78.44640'), ('ROGERS CORNER', None, '36.72000', '-78.41810'), ('SKIPWITH', None, '36.69190', '-78.49070'), ('SOUTH HILL', 4403, '36.72900', '-78.12830'), ('SPANISH GROVE', None, '36.79560', '-78.53560'), ('WIGHTMAN', None, '36.79010', '-78.30320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'OKZ067': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('WAGONER', 7669, '35.95940', '-95.36920'), ('CHOSKA', None, '35.83000', '-95.62000'), ('TULLAHASSEE', 106, '35.83470', '-95.43750'), ('PORTER', 574, '35.87080', '-95.52220'), ('OKAY', 597, '35.85060', '-95.31810'), ('STONEBLUFF', None, '35.88580', '-95.73670'), ('REDBIRD', 153, '35.88670', '-95.58790'), ('COWETA', 7139, '35.95170', '-95.65060'), ('ONETA', None, '36.01890', '-95.70780')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'TNZ068': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GREENBACK', 954, '35.65180', '-84.17520'), ('LENOIR CITY', 6819, '35.80090', '-84.27100'), ('LOUDON', 4476, '35.73530', '-84.35780'), ('PHILADELPHIA', 533, '35.67910', '-84.40040')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ069': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BEARDEN', None, '35.93310', '-84.00360'), ('FARRAGUT', 17720, '35.87440', '-84.18220'), ('HALLS', 2311, '36.08180', '-83.93290'), ('KARNS', None, '35.97600', '-84.11820'), ('KIMBERLIN HEIGHTS', None, '35.92970', '-83.75190'), ('KNOXVILLE', 173890, '35.97460', '-83.94630'), ('LAKE FOREST', None, '35.92610', '-83.86830'), ('MALONEYVILLE', None, '36.08530', '-83.83610'), ('MASCOT', 2119, '36.06820', '-83.76610'), ('POWELL', None, '36.03370', '-84.02830'), ('STRAWBERRY PLAINS', None, '36.06250', '-83.68720')], 'partOfState': '', 'wfo': 'MRX'}, -'ARZ053': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AMITY', 762, '34.26610', '-93.46390'), ('ARKADELPHIA', 10912, '34.12380', '-93.07060'), ('CADDO VALLEY', 563, '34.18790', '-93.07000'), ('GUM SPRINGS', 194, '34.06450', '-93.09590'), ('GURDON', 2276, '33.91640', '-93.14810'), ('OKOLONA', 160, '34.00050', '-93.33720'), ('WHELEN SPRINGS', 84, '33.83160', '-93.12570')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'VAZ064': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOWLING GREEN', 936, '38.04980', '-77.35100'), ('BURRUSS CORNER', None, '37.89330', '-77.41650'), ('CEDAR FORK', None, '37.96170', '-77.54830'), ('CEDON', None, '38.06110', '-77.51890'), ('CENTRAL POINT', None, '37.98890', '-77.13150'), ('CHILESBURG', None, '37.99950', '-77.59330'), ('CORBIN', None, '38.19940', '-77.38880'), ('DAWN', None, '37.83330', '-77.36580'), ('FORT A.P. HILL', None, '38.10970', '-77.26620'), ('GETHER', None, '37.91640', '-77.20790'), ('GOLANSVILLE', None, '37.98090', '-77.50130'), ('GUINEA', None, '38.14280', '-77.43770'), ('LADYSMITH', None, '38.01750', '-77.51500'), ('MILFORD', None, '38.02690', '-77.36980'), ('NANCY WRIGHTS CORNER', None, '38.09050', '-77.51620'), ('PENOLA', None, '37.95770', '-77.37090'), ('PORT ROYAL', 170, '38.16970', '-77.19110'), ('RAPPAHANNOCK ACADEMY', None, '38.15580', '-77.30300'), ('RUTHER GLEN', None, '38.00450', '-77.54350'), ('SPARTA', None, '37.99150', '-77.22970'), ('VILLBORO', None, '38.13500', '-77.38970'), ('WOODFORD', None, '38.11310', '-77.40940')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'AKQ'}, -'MOZ088': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AIRPORT DRIVE', 622, '37.14240', '-94.51050'), ('ALBA', 588, '37.23830', '-94.41710'), ('ASBURY', 218, '37.27430', '-94.60520'), ('ATLAS', None, '37.09490', '-94.38580'), ('AVILLA', 137, '37.19520', '-94.12930'), ('BROOKLYN HEIGHTS', 125, '37.17040', '-94.38610'), ('CARL JUNCTION', 5294, '37.17660', '-94.56520'), ('CARTERVILLE', 1850, '37.14910', '-94.44270'), ('CARTHAGE', 12668, '37.17630', '-94.31000'), ('CARYTOWN', 217, '37.26610', '-94.30910'), ('DUDENVILLE', None, '37.30550', '-94.09960'), ('DUENWEG', 1034, '37.08350', '-94.41330'), ('DUQUESNE', 1640, '37.07660', '-94.45910'), ('FIDELITY', 252, '37.06790', '-94.31300'), ('I-44 NEAR MILE MARKER 20', None, '37.07600', '-94.28500'), ('I-44 NEAR MILE MARKER 30', None, '37.07590', '-94.10500'), ('IRON GATES', None, '37.06350', '-94.55690'), ('JASPER', 1011, '37.33600', '-94.30110'), ('JOPLIN', 45504, '37.08410', '-94.51300'), ('LAKESIDE', 37, '37.15880', '-94.41470'), ('MAPLE GROVE', None, '37.25360', '-94.12540'), ('NECK CITY', 119, '37.25690', '-94.44410'), ('OAKLAND PARK', None, '37.11000', '-94.47260'), ('ORONOGO', 976, '37.18830', '-94.46990'), ('PURCELL', 357, '37.24210', '-94.43490'), ('REEDS', 103, '37.11610', '-94.16550'), ('SARCOXIE', 1354, '37.06910', '-94.11630'), ('WACO', 86, '37.24690', '-94.59910'), ('WEBB CITY', 9812, '37.14630', '-94.48300')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ089': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARCOLA', 45, '37.54910', '-93.87490'), ('BONA', None, '37.54460', '-93.67130'), ('CEDARVILLE', None, '37.57430', '-93.98410'), ('DADEVILLE', 224, '37.48020', '-93.67350'), ('EVERTON', 322, '37.34240', '-93.70220'), ('GREENFIELD', 1358, '37.41520', '-93.84080'), ('LOCKWOOD', 989, '37.38550', '-93.95300'), ('MEINERT', None, '37.33520', '-93.99050'), ('NEOLA', None, '37.50550', '-93.86930'), ('PENNSBORO', None, '37.32710', '-93.83380'), ('SOUTH GREENFIELD', 136, '37.37600', '-93.84080'), ('SYLVANIA', None, '37.50770', '-94.02240')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'VAZ089': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALLIANCE', None, '37.13810', '-76.78390'), ('BACONS CASTLE', None, '37.10530', '-76.73010'), ('BARHAM', None, '37.14110', '-77.11310'), ('BEACHLAND', None, '37.08530', '-76.81610'), ('BOOTH FORK', None, '36.97920', '-76.94720'), ('CABIN POINT', None, '37.18480', '-77.03150'), ('CARSLEY', None, '37.09560', '-77.00610'), ('CHIPPOKES STATE PARK', None, '37.13790', '-76.72670'), ('CLAREMONT', 343, '37.22710', '-76.96580'), ('DELK CROSSRAODS', None, '37.04420', '-76.79220'), ('DENDRON', 297, '37.03460', '-76.92420'), ('ELBERON', None, '37.07420', '-76.88430'), ('ELLIS FORK', None, '37.00310', '-76.90080'), ('GWALTNEY CORNER', None, '37.11130', '-77.02400'), ('HOG ISLAND GAME REFUGE', None, '37.17390', '-76.68130'), ('OAK HILL CORNER', None, '37.15920', '-77.06970'), ('POOLESVILLE', None, '37.09250', '-76.72440'), ('RUNNYMEDE', None, '37.03440', '-76.85170'), ('SAVEDGE', None, '37.13360', '-77.01940'), ('SCOTLAND', None, '37.18230', '-76.78700'), ('SPRING GROVE', None, '37.16560', '-76.97340'), ('SURRY', 262, '37.13740', '-76.83500')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'VAZ088': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOOKER', None, '36.93940', '-77.28500'), ('GRAY', None, '36.79670', '-77.34390'), ('GRIZZARD', None, '36.72640', '-77.43780'), ('HILDA', None, '36.82030', '-77.32940'), ('HOMEVILLE', None, '36.94920', '-77.17190'), ('HUSKE', None, '36.89750', '-77.41890'), ('JARRATT', 589, '36.81580', '-77.47010'), ('LITTLETON', None, '36.90270', '-77.14920'), ('LUMBERTON', None, '36.88140', '-77.21080'), ('MASON', None, '36.75940', '-77.38560'), ('NEWVILLE', None, '37.01250', '-77.17670'), ('NEWVILLE', None, '37.01280', '-77.17670'), ('OWENS', None, '36.85360', '-77.42470'), ('STONY CREEK', 202, '36.94740', '-77.40020'), ('SUSSEX', None, '36.91530', '-77.27940'), ('WAKEFIELD', 1038, '36.96860', '-76.98820'), ('WAVERLY', 2309, '37.03380', '-77.09570'), ('YALE', None, '36.84540', '-77.28760')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'MOZ080': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BUFFALO', 2781, '37.64380', '-93.09210'), ('CHARITY', None, '37.51520', '-93.01610'), ('FOOSE', None, '37.56130', '-93.14630'), ('LEADMINE', None, '37.83660', '-92.96190'), ('LONG LANE', None, '37.61130', '-92.90910'), ('LOUISBURG', 147, '37.75770', '-93.13910'), ('MARCH', None, '37.52240', '-93.08910'), ('OLIVE', None, '37.45910', '-93.10860'), ('PLAD', None, '37.74850', '-92.97520'), ('PUMPKIN CENTER', None, '37.74490', '-93.07040'), ('TUNAS', None, '37.84960', '-93.02740'), ('URBANA', 407, '37.84210', '-93.16660'), ('WINDYVILLE', None, '37.70660', '-92.92680')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ081': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BENNETT SPRINGS', None, '37.72680', '-92.85550'), ('COMPETITION', None, '37.48350', '-92.42880'), ('CONWAY', 743, '37.50190', '-92.82070'), ('DRY KNOB', None, '37.64160', '-92.45020'), ('ELDRIDGE', None, '37.82960', '-92.74880'), ('FALCON', None, '37.60500', '-92.37850'), ('I-44 NEAR MILE MARKER 110', None, '37.49300', '-92.84500'), ('I-44 NEAR MILE MARKER 120', None, '37.58000', '-92.75000'), ('I-44 NEAR MILE MARKER 130', None, '37.65500', '-92.65500'), ('I-44 NEAR MILE MARKER 140', None, '37.75000', '-92.49000'), ('LEBANON', 12155, '37.68040', '-92.66360'), ('LYNCHBURG', None, '37.49300', '-92.29410'), ('MORGAN', None, '37.51020', '-92.67630'), ('PHILLIPSBURG', 201, '37.55380', '-92.78460'), ('SLEEPER', None, '37.76050', '-92.59270'), ('STOUTLAND', 177, '37.81300', '-92.51430'), ('TWIN BRIDGES', 42, '37.55220', '-92.59710')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ082': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARROLL', None, '37.10750', '-91.72630'), ('BENDAVIS', None, '37.29580', '-92.20720'), ('BUCYRUS', None, '37.34410', '-92.01660'), ('CABOOL', 2168, '37.12380', '-92.10110'), ('CLEAR SPRINGS', None, '37.09600', '-91.85300'), ('ELK CREEK', None, '37.18880', '-91.99690'), ('EUNICE', None, '37.24490', '-91.77930'), ('HARTSHORN', None, '37.26470', '-91.67020'), ('HAZELTON', None, '37.52490', '-92.02460'), ('HOUSTON', 1992, '37.32600', '-91.95580'), ('HUGGINS', None, '37.31990', '-92.19830'), ('LICKING', 1471, '37.49940', '-91.85690'), ('PLATO', None, '37.50360', '-92.22460'), ('PRESCOTT', None, '37.43690', '-91.92130'), ('RAYMONDVILLE', 442, '37.33960', '-91.83380'), ('ROBY', None, '37.51550', '-92.13880'), ('SIMMONS', None, '37.23040', '-92.01520'), ('SOLO', None, '37.23330', '-91.95300'), ('SUCCESS', None, '37.44350', '-92.08740'), ('YUKON', None, '37.27290', '-91.84800')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'MOZ083': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANUTT', None, '37.71580', '-91.71960'), ('BANGERT', None, '37.77100', '-91.51580'), ('BOSS', None, '37.64300', '-91.18910'), ('DARIEN', None, '37.51990', '-91.59210'), ('GLADDEN', None, '37.49850', '-91.45630'), ('HOWES', None, '37.70940', '-91.51550'), ('HOWES MILL', None, '37.61770', '-91.29160'), ('JADWIN', None, '37.48660', '-91.57070'), ('LAKE SPRING', None, '37.78240', '-91.67830'), ('LECOMA', None, '37.77600', '-91.73070'), ('LENOX', None, '37.65300', '-91.76110'), ('MONTAUK', None, '37.44770', '-91.69550'), ('SALEM', 4854, '37.64550', '-91.53580'), ('SLIGO', None, '37.77380', '-91.37740'), ('STONE HILL', None, '37.60160', '-91.34190'), ('TURTLE', None, '37.52320', '-91.41220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'MOZ084': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANNAPOLIS', 310, '37.35990', '-90.69830'), ('ARCADIA', 567, '37.58540', '-90.62850'), ('BELLEVIEW', None, '37.68300', '-90.75000'), ('BIXBY', None, '37.66700', '-91.08300'), ('CHLORIDE', None, '37.46060', '-90.68700'), ('DES ARC', 187, '37.28420', '-90.63490'), ('GLOVER', None, '37.48700', '-90.69120'), ('GRANITE', None, '37.65450', '-90.67160'), ('HOGAN', None, '37.51120', '-90.69590'), ('IRONTON', 1471, '37.59670', '-90.63580'), ('PILOT KNOB', 697, '37.62350', '-90.64360'), ('SABULA', None, '37.40480', '-90.69620'), ('VIBURNUM', 825, '37.71560', '-91.12920'), ('VULCAN', None, '37.30950', '-90.66260')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'MOZ085': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BUCKHORN', None, '37.33300', '-90.30000'), ('CATHERINE PLACE', None, '37.57510', '-90.32440'), ('FREDERICKTOWN', 3928, '37.56460', '-90.29650'), ('JUNCTION CITY', 319, '37.57390', '-90.29390'), ('MARQUAND', 251, '37.42870', '-90.16710'), ('MINE LA MOTTE', None, '37.61570', '-90.28980'), ('ROSELLE', None, '37.60000', '-90.53300'), ('SACO', None, '37.36700', '-90.45000')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'MOZ086': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GLENALLEN', None, '37.31680', '-90.02810'), ('MARBLE HILL', 1502, '37.30230', '-89.98040'), ('SEDGEWICKVILLE', 197, '37.51510', '-89.90590'), ('ZALMA', 93, '37.14340', '-90.08030')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ087': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALLENVILLE', 104, '37.22160', '-89.75490'), ('CAPE GIRARDEAU', 35349, '37.30830', '-89.55030'), ('DELTA', 517, '37.19820', '-89.73700'), ('GORDONVILLE', 425, '37.31040', '-89.67300'), ('JACKSON', 11947, '37.38030', '-89.65450'), ('OAK RIDGE', 202, '37.49980', '-89.72960'), ('OLD APPLETON', 82, '37.59320', '-89.70940'), ('POCAHONTAS', 127, '37.50110', '-89.63970'), ('WHITEWATER', 113, '37.23660', '-89.79770')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'TXZ138': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HALLSVILLE', 2772, '32.50340', '-94.57610'), ('MARSHALL', 23935, '32.53600', '-94.35080'), ('NESBITT', 302, '32.58930', '-94.44530'), ('SCOTTSVILLE', 263, '32.53590', '-94.24140'), ('UNCERTAIN', 150, '32.70860', '-94.12250'), ('WASKOM', 2068, '32.47790', '-94.06480')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ139': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BURKETT', None, '31.99580', '-99.22530'), ('COLEMAN', 5127, '31.82720', '-99.42610'), ('ECHO', None, '31.92810', '-99.31750'), ('FISK', None, '31.67080', '-99.48890'), ('GLEN COVE', None, '31.86580', '-99.63720'), ('GOLDSBORO', None, '32.06000', '-99.68080'), ('GOULDBUSK', None, '31.55470', '-99.47640'), ('LEADAY', None, '31.56780', '-99.67280'), ('MOZELLE', None, '31.59890', '-99.49250'), ('NOVICE', 142, '31.98940', '-99.62330'), ('ROCKWOOD', None, '31.50080', '-99.37310'), ('SANTA ANNA', 1081, '31.74190', '-99.32140'), ('SHIELDS', None, '31.59310', '-99.42390'), ('SILVER VALLEY', None, '31.95640', '-99.54580'), ('TALPA', None, '31.77640', '-99.70920'), ('TRICKHAM', None, '31.58750', '-99.23030'), ('VALERA', None, '31.75280', '-99.54690'), ('VOSS', None, '31.62080', '-99.56140'), ('WHON', None, '31.49030', '-99.30580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXZ130': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DUBLIN', 3754, '32.08660', '-98.33890'), ('STEPHENVILLE', 14921, '32.21910', '-98.21530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ131': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRANBURY', 5718, '32.44020', '-97.78770'), ('LIPAN', 425, '32.51890', '-98.04670'), ('OAK TRAIL SHORES', 2475, '32.48860', '-97.83390'), ('TOLAR', 504, '32.39000', '-97.91680')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'WVZ085': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('FORKED RUN STATE FOREST', None, '39.10140', '-81.78840'), ('MIDDLEPORT', 2525, '38.99980', '-82.05690'), ('POMEROY', 1966, '39.02760', '-82.03320'), ('RACINE', 746, '38.96820', '-81.91250'), ('RUTLAND', 401, '39.04220', '-82.12910'), ('SYRACUSE', 879, '38.99970', '-81.97300'), ('MASON', 1064, '39.01890', '-82.03240')], 'partOfState': '', 'wfo': 'RLX'}, -'TXZ133': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALVARADO', 3288, '32.41000', '-97.21140'), ('BRIAROAKS', 493, '32.49230', '-97.30190'), ('BURLESON', 20976, '32.53310', '-97.32900'), ('CLEBURNE', 26005, '32.34930', '-97.40630'), ('GODLEY', 879, '32.44950', '-97.52660'), ('GRANDVIEW', 1358, '32.26800', '-97.17720'), ('JOSHUA', 4528, '32.46220', '-97.38040'), ('KEENE', 5003, '32.39330', '-97.33020'), ('RIO VISTA', 656, '32.23570', '-97.37550'), ('VENUS', 910, '32.42750', '-97.10460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ134': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALMA', 302, '32.28540', '-96.54470'), ('BARDWELL', 583, '32.26720', '-96.69520'), ('ENNIS', 16045, '32.33800', '-96.62910'), ('FERRIS', 2175, '32.53510', '-96.66390'), ('GARRETT', 448, '32.36080', '-96.65180'), ('GLENN HEIGHTS', 7224, '32.55100', '-96.85390'), ('ITALY', 1993, '32.18140', '-96.88390'), ('MAYPEARL', 746, '32.31560', '-97.00660'), ('MIDLOTHIAN', 7480, '32.49400', '-96.99770'), ('MILFORD', 685, '32.12220', '-96.94940'), ('OAK LEAF', 1209, '32.52090', '-96.84990'), ('OVILLA', 3405, '32.53970', '-96.89270'), ('PALMER', 1774, '32.42730', '-96.67240'), ('PECAN HILL', 672, '32.49690', '-96.77510'), ('RED OAK', 4301, '32.51790', '-96.80880'), ('WAXAHACHIE', 21426, '32.40720', '-96.85200')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ135': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ATHENS', 11297, '32.20480', '-95.85540'), ('BERRYVILLE', 891, '32.08740', '-95.46500'), ('BROWNSBORO', 796, '32.29730', '-95.61470'), ('CANEY CITY', 236, '32.20870', '-96.03940'), ('CHANDLER', 2099, '32.30580', '-95.47890'), ('COFFEE CITY', 193, '32.12990', '-95.47820'), ('ENCHANTED OAKS', 357, '32.26630', '-96.10770'), ('EUSTACE', 798, '32.30590', '-96.01210'), ('GUN BARREL CITY', 5145, '32.32740', '-96.13640'), ('LOG CABIN', 733, '32.22330', '-96.02220'), ('MALAKOFF', 2257, '32.17310', '-96.01240'), ('MOORE STATION', 184, '32.19080', '-95.57240'), ('MURCHISON', 592, '32.27490', '-95.75810'), ('PAYNE SPRINGS', 683, '32.28090', '-96.08950'), ('POYNOR', 314, '32.07600', '-95.59490'), ('SEVEN POINTS', 1145, '32.32560', '-96.21480'), ('STAR HARBOR', 416, '32.19380', '-96.05570'), ('TOOL', 2275, '32.28030', '-96.17240'), ('TRINIDAD', 1091, '32.14850', '-96.09970')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'TXZ136': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARP', 901, '32.22770', '-95.05630'), ('BULLARD', 1150, '32.14110', '-95.31910'), ('LINDALE', 2954, '32.50540', '-95.40600'), ('NEW CHAPEL HILL', 553, '32.30340', '-95.16900'), ('NOONDAY', 515, '32.24390', '-95.39760'), ('TROUP', 1949, '32.14460', '-95.12310'), ('TYLER', 83650, '32.32840', '-95.30360'), ('WHITEHOUSE', 5346, '32.22600', '-95.21960'), ('WINONA', 582, '32.49070', '-95.17090')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ137': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLARKSVILLE CITY', 806, '32.53510', '-94.89550'), ('EASTON', 524, '32.38290', '-94.59340'), ('GLADEWATER', 6078, '32.54300', '-94.94510'), ('KILGORE', 11301, '32.38720', '-94.86830'), ('LAKEPORT', 861, '32.40200', '-94.71150'), ('LIBERTY CITY', 1935, '32.45010', '-94.94460'), ('LONGVIEW', 73344, '32.51770', '-94.76230'), ('ROLLING MEADOWS', None, '32.41260', '-94.80760'), ('WARREN CITY', 343, '32.55340', '-94.90220'), ('WHITE OAK', 5624, '32.53210', '-94.85500')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TNZ060': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COLUMBIA', 33055, '35.62250', '-87.04900'), ('MOUNT PLEASANT', 4491, '35.55130', '-87.19120'), ('SPRING HILL', 7715, '35.74200', '-86.92370')], 'partOfState': '', 'wfo': 'OHX'}, -'MIZ050': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAILEY', None, '43.27780', '-85.81030'), ('BRUNSWICK', None, '43.43300', '-86.04030'), ('CLOVERVILLE', None, '43.19050', '-86.16530'), ('DALTON', None, '43.31870', '-86.26170'), ('FRUITPORT', 1124, '43.12570', '-86.15590'), ('HOLTON', None, '43.41330', '-86.07950'), ('LAKEWOOD CLUB', 1006, '43.37660', '-86.25510'), ('MONTAGUE', 2407, '43.41230', '-86.36290'), ('MUSKEGON', 40105, '43.22760', '-86.25550'), ('NORTON SHORES', 22527, '43.16000', '-86.25250'), ('RAVENNA', 1206, '43.18960', '-85.94030'), ('ROOSEVELT PARK', 3890, '43.19750', '-86.27350'), ('SLOCUM', None, '43.22220', '-85.90970'), ('SULLIVAN', None, '43.18370', '-86.05300'), ('TWIN LAKE', 1613, '43.36900', '-86.17990'), ('VICKERYVILLE', None, '43.19220', '-85.96530'), ('WABANINGO', None, '43.37050', '-86.42170'), ('WHITEHALL', 2884, '43.39830', '-86.34130'), ('WOLF LAKE', 4455, '43.24550', '-86.10590')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'KSZ057': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('FONTANA', 149, '38.42590', '-94.83790'), ('LOUISBURG', 2576, '38.62380', '-94.68290'), ('OSAWATOMIE', 4645, '38.50250', '-94.95110'), ('PAOLA', 5011, '38.57700', '-94.86620')], 'partOfState': 'EAST CENTRAL', 'wfo': 'EAX'}, -'TNZ063': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('AUBURNTOWN', 252, '35.94890', '-86.09430'), ('WOODBURY', 2428, '35.82480', '-86.07050')], 'partOfState': '', 'wfo': 'OHX'}, -'KSZ051': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CANTON', 829, '38.38610', '-97.42990'), ('GALVA', 701, '38.38210', '-97.53800'), ('INMAN', 1142, '38.22910', '-97.77380'), ('LINDSBORG', 3321, '38.57430', '-97.67490'), ('MARQUETTE', 542, '38.55380', '-97.83400'), ('MCPHERSON', 13770, '38.37190', '-97.66190'), ('MOUNDRIDGE', 1593, '38.20180', '-97.51560'), ('ROXBURY', None, '38.55000', '-97.42000'), ('WINDOM', 137, '38.38430', '-97.91020')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'KSZ050': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALDEN', 168, '38.24410', '-98.31110'), ('BUSHTON', 314, '38.51280', '-98.39470'), ('CHASE', 490, '38.35570', '-98.34840'), ('FREDERICK', 11, '38.51310', '-98.26740'), ('LITTLE RIVER', 536, '38.39770', '-98.01240'), ('LYONS', 3732, '38.34600', '-98.20220'), ('RAYMOND', 95, '38.27850', '-98.41450'), ('SILICA', None, '38.35000', '-98.45000'), ('STERLING', 2642, '38.20920', '-98.20580')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'TNZ066': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CRAB ORCHARD', 838, '35.90960', '-84.88210'), ('CROSSVILLE', 8981, '35.95190', '-85.03680'), ('FAIRFIELD GLADE', 4885, '36.00010', '-84.89940'), ('PLEASANT HILL', 544, '35.97500', '-85.19720')], 'partOfState': '', 'wfo': 'OHX'}, -'MIZ073': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALBION', 9144, '42.24640', '-84.75690'), ('ATHENS', 1111, '42.08580', '-85.23620'), ('BATTLE CREEK', 53364, '42.29890', '-85.22900'), ('BEFORD', None, '42.39530', '-85.23220'), ('BROWNLEE PARK', 2588, '42.32420', '-85.13370'), ('BURLINGTON', 405, '42.10480', '-85.07910'), ('CERESCO', None, '42.27180', '-85.06130'), ('HOMER', 1851, '42.14550', '-84.81000'), ('MARENGO', None, '42.27130', '-84.84870'), ('MARSHALL', 7459, '42.26170', '-84.95840'), ('PINE CREEK', None, '42.16550', '-85.25620'), ('SPRINGFIELD', 5189, '42.32400', '-85.23760'), ('TEKONSHA', 712, '42.09470', '-84.98930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GRR'}, -'KSZ052': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURNS', 268, '38.08970', '-96.88770'), ('DURHAM', 114, '38.48510', '-97.22700'), ('FLORENCE', 671, '38.24280', '-96.92910'), ('GOESSEL', 565, '38.24650', '-97.34540'), ('HILLSBORO', 2854, '38.35130', '-97.20220'), ('LEHIGH', 215, '38.37490', '-97.30240'), ('LINCOLNVILLE', 225, '38.49400', '-96.96120'), ('LOST SPRINGS', 71, '38.56650', '-96.96490'), ('MARION', 2110, '38.34890', '-97.01570'), ('PEABODY', 1384, '38.16880', '-97.10690'), ('TAMPA', 144, '38.54700', '-97.15400')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'TXZ004': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FARNSWORTH', None, '36.32110', '-100.96580'), ('PERRYTON', 7774, '36.39170', '-100.80300'), ('WAKA', None, '36.28170', '-101.04720'), ('WOLF CREEK PARK', None, '36.21470', '-100.64580')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ005': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOOKER', 1315, '36.45590', '-100.53960'), ('DARROUZETT', 303, '36.44510', '-100.32540'), ('FOLLETT', 412, '36.43420', '-100.14070'), ('HIGGINS', 425, '36.12030', '-100.02690'), ('LIPSCOMB', 44, '36.23330', '-100.27060')], 'partOfState': '', 'wfo': 'AMA'}, -'PAZ058': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ASHLAND', 3283, '40.78100', '-76.34570'), ('AUBURN', 839, '40.59630', '-76.09620'), ('COALDALE', 2295, '40.82080', '-75.91620'), ('DEER LAKE', 528, '40.62060', '-76.05660'), ('FRACKVILLE', 4361, '40.78370', '-76.23330'), ('GILBERTON', 867, '40.79660', '-76.22330'), ('GIRARDVILLE', 1742, '40.79230', '-76.28420'), ('GORDON', 781, '40.75040', '-76.34060'), ('HOMETOWN', 1399, '40.82200', '-75.98600'), ('JOE ZERBEY AIRPORT', None, '40.72000', '-76.36000'), ('LANDINGVILLE', 175, '40.62550', '-76.12310'), ('LOCUST LAKE SP', None, '40.78000', '-76.12000'), ('MAHANOY CITY', 4647, '40.81270', '-76.13850'), ('MCADOO', 2274, '40.90080', '-75.99240'), ('MIDDLEPORT', 458, '40.72730', '-76.08720'), ('MINERSVILLE', 4552, '40.69080', '-76.25930'), ('MUIR', None, '40.59000', '-76.51000'), ('NEW PHILADELPHIA', 1149, '40.71780', '-76.11800'), ('NEW RINGGOLD', 291, '40.68850', '-75.99380'), ('NUREMBURG', None, '40.93300', '-76.17000'), ('ORWIGSBURG', 3106, '40.65370', '-76.10370'), ('PINE GROVE', 2154, '40.55330', '-76.38700'), ('PORT CARBON', 2019, '40.69710', '-76.16710'), ('POTTSVILLE', 15549, '40.67930', '-76.20980'), ('RINGTOWN', 826, '40.85690', '-76.23540'), ('ROUGH AND READY', None, '40.69000', '-76.58000'), ('SCHUYLKILL HAVEN', 5548, '40.62810', '-76.17290'), ('SHENANDOAH', 5624, '40.81660', '-76.20080'), ('SHEPPTON', 239, '40.90000', '-76.11000'), ('SNYDERS', None, '40.73000', '-75.82000'), ('ST. CLAIR', 3254, '40.72040', '-76.19080'), ('SUMMIT STATION', 208, '40.58000', '-76.22050'), ('TAMAQUA', 7174, '40.80520', '-75.93490'), ('TOWER CITY', 1396, '40.58950', '-76.55380'), ('TREMONT', 1784, '40.62970', '-76.39190'), ('TUSCARORA', 939, '40.76020', '-76.05790'), ('VALLEY VIEW', 2743, '40.66000', '-76.53000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ059': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ANNVILLE', 4518, '40.33250', '-76.50660'), ('CAMPBELLTOWN', 2415, '40.27640', '-76.58450'), ('CLEONA', 2148, '40.33880', '-76.47730'), ('CORNWALL', 3486, '40.26950', '-76.40810'), ('FORT INDIANTOWN GAP', 85, '40.44400', '-76.57000'), ('FREDERICKSBURG', 987, '40.45630', '-76.42560'), ('HARPER TAVERN', None, '40.41000', '-76.57000'), ('JONESTOWN', 1028, '40.41320', '-76.48070'), ('KLEINFELTERSVILLE', None, '40.31000', '-76.27000'), ('LAWN', None, '40.22000', '-76.55000'), ('LEBANON', 24461, '40.34130', '-76.42330'), ('LICKDALE', None, '40.46000', '-76.49000'), ('MOUNT GRETNA', 242, '40.24540', '-76.47160'), ('MYERSTOWN', 3171, '40.37170', '-76.30540'), ('NEWMANSTOWN', 1536, '40.35080', '-76.21290'), ('PALMYRA', 7096, '40.30950', '-76.59500'), ('RICHLAND', 1508, '40.35700', '-76.25750'), ('SAND HILL', 2345, '40.36090', '-76.42150')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'TXZ001': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CONLEN', None, '36.23530', '-102.23690'), ('DALHART', 7237, '36.06180', '-102.51460'), ('TEXLINE', 511, '36.37670', '-103.01870'), ('WARE', None, '36.18470', '-102.70970')], 'partOfState': '', 'wfo': 'AMA'}, -'ALZ019': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ANNISTON', 24276, '33.66260', '-85.81390'), ('BLUE MOUNTAIN', 233, '33.68850', '-85.83760'), ('BYNUM', 1863, '33.60550', '-85.95750'), ('FORT MCCLELLAN', None, '33.71880', '-85.79070'), ('HOBSON CITY', 878, '33.61700', '-85.85170'), ('JACKSONVILLE', 8404, '33.81070', '-85.76080'), ('OHATCHEE', 1215, '33.78450', '-86.01870'), ('OXFORD', 14592, '33.59700', '-85.82580'), ('PIEDMONT', 5120, '33.92740', '-85.61520'), ('SAKS', 10698, '33.71130', '-85.85380'), ('WEAVER', 2619, '33.75560', '-85.80860'), ('WEST END-COBB TOWN', 3924, '33.64820', '-85.87120')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'TXZ003': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GRUVER', 1162, '36.25650', '-101.41110'), ('MORSE', 172, '36.06250', '-101.47500'), ('SPEARMAN', 3021, '36.19750', '-101.19360')], 'partOfState': '', 'wfo': 'AMA'}, -'PAZ052': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('DELAWARE RUN', None, '41.14000', '-76.85000'), ('ELYSBURG', 2067, '40.86820', '-76.54930'), ('FARNSWORTH', None, '40.83000', '-76.66000'), ('FERNDALE', 1834, '40.78000', '-76.57560'), ('HERNDON', 383, '40.71060', '-76.85460'), ('KULPMONT', 2985, '40.79540', '-76.47220'), ('LECK KILL', None, '40.72000', '-76.60000'), ('MCEWENSVILLE', 314, '41.07210', '-76.81900'), ('MILTON', 6650, '41.00800', '-76.85060'), ('MONTANDON', None, '40.96000', '-76.86000'), ('MOUNT CARMEL', 6390, '40.79530', '-76.41230'), ('NORTHUMBERLAND', 3714, '40.89710', '-76.79370'), ('REBUCK', None, '40.72000', '-76.75000'), ('RESLER', None, '40.78000', '-76.80000'), ('RIVERSIDE', 1861, '40.94260', '-76.64570'), ('SHAMOKIN', 8009, '40.78810', '-76.55490'), ('SNYDERTOWN', 357, '40.87240', '-76.67450'), ('STONINGTON', None, '40.84000', '-76.66000'), ('SUNBURY', 10610, '40.86210', '-76.78810'), ('TREVORTON', 2010, '40.78290', '-76.67350'), ('TURBOTVILLE', 691, '41.10100', '-76.76940'), ('URBAN', None, '40.67000', '-76.74000'), ('WATSONTOWN', 2255, '41.08470', '-76.86460'), ('WEST MILTON', None, '41.01000', '-76.80000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ053': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALMEDIA', 1056, '41.01440', '-76.38800'), ('BENTON', 955, '41.19490', '-76.38530'), ('BERWICK', 10774, '41.05560', '-76.24890'), ('BLOOMSBURG', 12375, '41.00230', '-76.45690'), ('CATAWISSA', 1589, '40.95300', '-76.46040'), ('CENTRAL', None, '41.29000', '-76.37000'), ('CENTRALIA', 21, '40.80420', '-76.34420'), ('JERSEYTOWN', 150, '41.09000', '-76.60000'), ('KNOEBELS GROVE', None, '40.88000', '-76.51000'), ('MAINVILLE', 83, '40.96000', '-76.38000'), ('MIFFLINVILLE', 1213, '41.02920', '-76.30060'), ('MILLVILLE', 991, '41.12120', '-76.52740'), ('NUMIDIA', 254, '40.89000', '-76.41000'), ('ORANGEVILLE', 500, '41.07660', '-76.41310'), ('SCOTCH VALLEY', None, '40.96000', '-76.23000'), ('SHUMANS', None, '40.98000', '-76.28000'), ('STILLWATER', 194, '41.15020', '-76.36710')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ050': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEAVER SPRINGS', 634, '40.74000', '-77.22000'), ('BEAVERTOWN', 870, '40.75260', '-77.16970'), ('FREEBURG', 584, '40.76280', '-76.94120'), ('FREMONT', None, '40.72000', '-77.01000'), ('HUMMELS WHARF', 641, '40.83360', '-76.83960'), ('KRATZERVILLE', 391, '40.85000', '-76.91000'), ('MCCLURE', 975, '40.70760', '-77.31130'), ('MEISERVILLE', None, '40.67000', '-76.95000'), ('MIDDLEBURG', 1382, '40.78900', '-77.04590'), ('PENNS CREEK', 668, '40.86000', '-77.07000'), ('PORT TREVERTON', None, '40.71000', '-76.88000'), ('SELINSGROVE', 5383, '40.80110', '-76.86550'), ('SHAMOKIN DAM', 1502, '40.85310', '-76.82250'), ('SNYDER-MIDDLESWARTH SP', None, '40.79000', '-77.32000'), ('TROXELVILLE', 192, '40.81000', '-77.20000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'PAZ051': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('DANVILLE', 4897, '40.96150', '-76.61230'), ('EXCHANGE', None, '41.11000', '-76.69000'), ('MECHANICSVILLE', 515, '40.96640', '-76.58550'), ('MOORESBURG', None, '40.98000', '-76.72000'), ('WASHINGTONVILLE', 201, '41.05190', '-76.67510')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'KSZ019': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ASHERVILLE', None, '39.40600', '-97.97650'), ('BELOIT', 4019, '39.46580', '-98.10780'), ('CAWKER CITY', 521, '39.50970', '-98.43210'), ('GLEN ELDER', 439, '39.49970', '-98.30620'), ('HUNTER', 77, '39.23560', '-98.39560'), ('SCOTTSVILLE', 21, '39.54310', '-97.95200'), ('SIMPSON', 114, '39.38630', '-97.93370'), ('TIPTON', 243, '39.33940', '-98.47110'), ('VICTOR', None, '39.24800', '-98.28350')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'PAZ057': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BERRYSBURG', 354, '40.60280', '-76.80910'), ('CLIFTON', None, '40.24000', '-76.72000'), ('COLONIAL PARK', 13259, '40.29990', '-76.80640'), ('DAUPHIN', 773, '40.36880', '-76.93040'), ('DEHART DAM', None, '40.45000', '-76.75000'), ('ELIZABETHVILLE', 1344, '40.54750', '-76.81600'), ('ELLENDALE FORGE', None, '40.40000', '-76.85000'), ('GRATZ', 676, '40.60560', '-76.71730'), ('HALIFAX', 875, '40.46500', '-76.93340'), ('HARRISBURG', 48950, '40.27600', '-76.88450'), ('HERSHEY', 12771, '40.28010', '-76.64770'), ('HIGHSPIRE', 2720, '40.20850', '-76.78590'), ('HUMMELSTOWN', 4360, '40.26640', '-76.71290'), ('LINGLESTOWN', 6414, '40.34320', '-76.79400'), ('LYKENS', 1937, '40.56330', '-76.69790'), ('MIDDLETOWN', 7378, '40.20090', '-76.72930'), ('MILLERSBURG', 2562, '40.54240', '-76.95600'), ('PENN NATIONAL RACEWAY', None, '40.40000', '-76.67000'), ('PILLOW', 304, '40.64120', '-76.80240'), ('PROGRESS', 9647, '40.29050', '-76.83660'), ('ROCKVILLE', None, '40.32000', '-76.90000'), ('RUTHERFORD HEIGHTS', None, '40.26890', '-76.76820'), ('SKYLINE VIEW', 2307, '40.33830', '-76.72630'), ('STEELTON', 5858, '40.22610', '-76.82590'), ('WILLIAMSTOWN', 1433, '40.58070', '-76.61790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ054': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BEAVER MEADOWS', 968, '40.92960', '-75.91270'), ('BOWMANSTOWN', 895, '40.80150', '-75.66150'), ('EAST SIDE', 290, '41.06270', '-75.76200'), ('JIM THORPE', 4804, '40.87140', '-75.73980'), ('LANSFORD', 4230, '40.83210', '-75.88600'), ('LEHIGHTON', 5537, '40.83120', '-75.71660'), ('NESQUEHONING', 3288, '40.86200', '-75.82950'), ('PALMERTON', 5248, '40.80120', '-75.61700'), ('PARRYVILLE', 478, '40.82430', '-75.66960'), ('SUMMIT HILL', 2974, '40.82490', '-75.84670'), ('TRESCKOW', 964, '40.91540', '-75.96520'), ('WEATHERLY', 2612, '40.94300', '-75.82170'), ('WEISSPORT', 434, '40.82900', '-75.70120'), ('WEISSPORT EAST', 1936, '40.83550', '-75.69110'), ('WHITE HAVEN', 1182, '41.05530', '-75.77720')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'PAZ055': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARLINGTON HEIGHTS', 5132, '41.00440', '-75.21310'), ('BRODHEADSVILLE', 1637, '40.92410', '-75.40330'), ('EAST STROUDSBURG', 9888, '41.00150', '-75.17840'), ('MOUNT POCONO', 2742, '41.12250', '-75.35790'), ('MOUNTAINHOME', 1169, '41.17660', '-75.26320'), ('POCONO PINES', 1013, '41.11680', '-75.45790'), ('STROUDSBURG', 5756, '40.98360', '-75.19760')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'TXZ067': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BARSTOW', 406, '31.46140', '-103.39500'), ('GRANDFALLS', 391, '31.34060', '-102.85440'), ('MONAHANS', 6821, '31.60000', '-102.89000'), ('PYOTE', 131, '31.53720', '-103.12250'), ('ROYALTY', None, '31.37000', '-102.87000'), ('THE MONAHANS SANDHILLS ST', None, '31.61670', '-102.78330'), ('THORNTONVILLE', 442, '31.57800', '-102.92160'), ('WICKETT', 455, '31.57010', '-103.00940')], 'partOfState': '', 'wfo': 'MAF'}, -'TNZ003': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CRONANVILLE', None, '36.43330', '-88.71670'), ('DRESDEN', 2855, '36.27740', '-88.69040'), ('GLEASON', 1463, '36.21560', '-88.61020'), ('GREENFIELD', 2208, '36.15540', '-88.80140'), ('LATHAM', None, '36.43330', '-88.71670'), ('MARTIN', 10515, '36.34230', '-88.85850'), ('PALMERSVILLE', None, '36.41670', '-88.58330'), ('SHARON', 988, '36.23320', '-88.82490')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'OHZ067': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHESTERHILL', 305, '39.48990', '-81.86590'), ('MALTA', 696, '39.65040', '-81.86460'), ('MCCONNELSVILLE', 1676, '39.65410', '-81.84440'), ('STOCKPORT', 540, '39.54930', '-81.79500')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHZ066': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CORNING', 593, '39.60230', '-82.08870'), ('CROOKSVILLE', 2483, '39.76810', '-82.09490'), ('GLENFORD', 198, '39.88620', '-82.31980'), ('HEMLOCK', 142, '39.58890', '-82.15530'), ('JUNCTION CITY', 818, '39.72150', '-82.30020'), ('NEW LEXINGTON', 4689, '39.71330', '-82.20810'), ('NEW STRAITSVILLE', 774, '39.57780', '-82.23600'), ('PERRY STATE FOREST', None, '39.76950', '-82.20850'), ('RENDVILLE', 46, '39.61930', '-82.09020'), ('SHAWNEE', 608, '39.61050', '-82.20720'), ('SOMERSET', 1549, '39.80580', '-82.30000'), ('THORNVILLE', 731, '39.89580', '-82.41920')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHZ065': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMANDA', 707, '39.65040', '-82.74330'), ('BALTIMORE', 2881, '39.84630', '-82.60760'), ('BREMEN', 1265, '39.70590', '-82.43140'), ('CARROLL', 488, '39.79990', '-82.70340'), ('FAIRFIELD BEACH', 1163, '39.91780', '-82.48110'), ('LANCASTER', 35335, '39.72230', '-82.59920'), ('LITHOPOLIS', 600, '39.80500', '-82.81120'), ('MILLERSPORT', 963, '39.89630', '-82.54210'), ('PICKERINGTON', 9792, '39.89050', '-82.76840'), ('PLEASANTVILLE', 877, '39.80900', '-82.52280'), ('RUSHVILLE', 268, '39.76270', '-82.43130'), ('STOUTSVILLE', 581, '39.60660', '-82.82460'), ('SUGAR GROVE', 448, '39.62670', '-82.54710'), ('TARLTON', 298, '39.55430', '-82.77740'), ('THURSTON', 555, '39.84130', '-82.54500'), ('WEST RUSHVILLE', 132, '39.76270', '-82.44860')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ064': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADELPHI', 371, '39.46460', '-82.74630'), ('ASHVILLE', 3174, '39.71760', '-82.95520'), ('CIRCLEVILLE', 13485, '39.60180', '-82.93900'), ('COMMERCIAL POINT', 776, '39.76940', '-83.05790'), ('DARBYVILLE', 293, '39.69570', '-83.11420'), ('KINGSTON', 1032, '39.47220', '-82.91180'), ('LAURELVILLE', 533, '39.47150', '-82.73750'), ('LOGAN ELM VILLAGE', 1062, '39.57170', '-82.94740'), ('NEW HOLLAND', 785, '39.55320', '-83.25740'), ('SOUTH BLOOMFIELD', 1179, '39.71590', '-82.99000'), ('WILLIAMSPORT', 1002, '39.58340', '-83.11670')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ063': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BLOOMINGBURG', 874, '39.60790', '-83.39550'), ('JEFFERSONVILLE', 1288, '39.65200', '-83.55690'), ('MILLEDGEVILLE', 122, '39.59360', '-83.58780'), ('OCTA', 83, '39.61530', '-83.60860'), ('WASHINGTON COURT HOUSE', None, '39.53770', '-83.43110')], 'partOfState': 'CENTRAL', 'wfo': 'ILN'}, -'OHZ062': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEAVERCREEK', 37984, '39.72930', '-84.06240'), ('BELLBROOK', 7009, '39.64000', '-84.08560'), ('BOWERSVILLE', 290, '39.58010', '-83.72370'), ('CEDARVILLE', 3828, '39.74490', '-83.81050'), ('CLIFTON', 179, '39.79730', '-83.82570'), ('FAIRBORN', 32052, '39.80450', '-84.01750'), ('JAMESTOWN', 1917, '39.65860', '-83.74000'), ('SHAWNEE HILLS', 2355, '39.65250', '-83.78260'), ('SPRING VALLEY', 510, '39.61020', '-84.00610'), ('WILBERFORCE', 1579, '39.71650', '-83.88360'), ('WRIGHT-PATTERSON AFB', 6656, '39.80160', '-84.07080'), ('XENIA', 24164, '39.68500', '-83.94080'), ('YELLOW SPRINGS', 3761, '39.79960', '-83.89460')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ061': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BROOKVILLE', 5289, '39.83570', '-84.41500'), ('CENTERVILLE', 23024, '39.64110', '-84.14000'), ('CLAYTON', 13347, '39.86070', '-84.35510'), ('DAYTON', 166179, '39.77910', '-84.19740'), ('DREXEL', 2057, '39.74410', '-84.29170'), ('ENGLEWOOD', 12235, '39.86080', '-84.30690'), ('FARMERSVILLE', 980, '39.67870', '-84.42710'), ('FORT MCKINLEY', 3989, '39.80600', '-84.25670'), ('GERMANTOWN', 4884, '39.63500', '-84.36250'), ('HUBER HEIGHTS', 38212, '39.85580', '-84.11230'), ('KETTERING', 57502, '39.69590', '-84.15010'), ('MIAMISBURG', 19489, '39.63560', '-84.27450'), ('MORAINE', 6897, '39.70390', '-84.22840'), ('NEW LEBANON', 4231, '39.74500', '-84.40030'), ('NORTHRIDGE', 8487, '39.81030', '-84.19170'), ('NORTHVIEW', None, '39.84310', '-84.27960'), ('OAKWOOD', 607, '39.71990', '-84.17360'), ('OVERLOOK-PAGE MANOR', None, '39.75410', '-84.11540'), ('PHILLIPSBURG', 628, '39.90440', '-84.40070'), ('RIVERSIDE', 23545, '39.78060', '-84.12390'), ('SHILOH', 721, '39.81350', '-84.23180'), ('TROTWOOD', 27420, '39.80280', '-84.30450'), ('UNION', 5574, '39.90270', '-84.30990'), ('VANDALIA', 14603, '39.87810', '-84.19400'), ('WEST CARROLLTON', None, '39.66950', '-84.25250'), ('WOODBOURNE-HYDE PARK', 7910, '39.66070', '-84.17360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ060': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('WEST COLLEGE CORNER', 634, '39.56960', '-84.81930'), ('CAMDEN', 2302, '39.63710', '-84.64650'), ('COLLEGE CORNER', 424, '39.56780', '-84.81260'), ('EATON', 8133, '39.74850', '-84.63390'), ('ELDORADO', 543, '39.90380', '-84.67580'), ('GRATIS', 934, '39.64840', '-84.52880'), ('LEWISBURG', 1798, '39.84900', '-84.54060'), ('NEW PARIS', 1623, '39.85700', '-84.79350'), ('VERONA', 430, '39.90290', '-84.48650'), ('WEST ALEXANDRIA', 1395, '39.74290', '-84.53360'), ('WEST ELKTON', 194, '39.58880', '-84.55430'), ('WEST MANCHESTER', 433, '39.90230', '-84.62620')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'KSZ018': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALTON', 117, '39.46820', '-98.94820'), ('DOWNS', 1038, '39.50330', '-98.54680'), ('NATOMA', 367, '39.18900', '-99.02450'), ('OSBORNE', 1607, '39.43940', '-98.69830'), ('PORTIS', 123, '39.55800', '-98.69100')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'OHZ069': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANTIOCH', 89, '39.66160', '-81.06770'), ('BEALLSVILLE', 423, '39.84830', '-81.03540'), ('CLARINGTON', 444, '39.77680', '-80.86510'), ('GRAYSVILLE', 113, '39.66110', '-81.17110'), ('JERUSALEM', 152, '39.85220', '-81.09530'), ('LEWISVILLE', 233, '39.76590', '-81.21880'), ('MILTONSBURG', 29, '39.83180', '-81.16430'), ('STAFFORD', 86, '39.71320', '-81.27760'), ('WOODSFIELD', 2598, '39.76300', '-81.11670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'OHZ068': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BATESVILLE', 100, '39.91420', '-81.28120'), ('BELLE VALLEY', 263, '39.78870', '-81.55520'), ('CALDWELL', 1956, '39.74580', '-81.51310'), ('DEXTER CITY', 166, '39.65920', '-81.47490'), ('SARAHSVILLE', 198, '39.80770', '-81.46950'), ('SUMMERFIELD', 296, '39.79770', '-81.33590')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'COZ047': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BOYERO', None, '38.93000', '-103.27000'), ('FORDER', None, '38.67900', '-103.71700'), ('KARVAL', None, '38.73000', '-103.53000'), ('KUTCH', None, '38.90000', '-103.87000'), ('PUNKIN CENTER', None, '38.85300', '-103.70000'), ('WILD HORSE POINT', None, '38.56300', '-103.50300')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BOU'}, -'TXZ064': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROOME', None, '31.75940', '-100.83690'), ('STERLING CITY', 1081, '31.83900', '-100.98550')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'NDZ024': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BRANTFORD', None, '47.59780', '-98.92250'), ('HAMAR', None, '47.84360', '-98.57310'), ('NEW ROCKFORD', 1463, '47.68060', '-99.13580'), ('SHEYENNE', 318, '47.82680', '-99.11660')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'ILZ038': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ANCHOR', 175, '40.56870', '-88.53870'), ('ARROWSMITH', 298, '40.44890', '-88.63150'), ('BELLFLOWER', 408, '40.34050', '-88.52670'), ('BLOOMINGTON', 64808, '40.47890', '-88.97350'), ('CARLOCK', 456, '40.58210', '-89.13270'), ('CHENOA', 1845, '40.74420', '-88.71810'), ('COLFAX', 989, '40.56670', '-88.61650'), ('COOKSVILLE', 213, '40.54260', '-88.71510'), ('CROPSEY', None, '40.60000', '-88.48330'), ('DANVERS', 1183, '40.52890', '-89.17330'), ('DOWNS', 776, '40.39590', '-88.87170'), ('ELLSWORTH', 271, '40.44950', '-88.71660'), ('GRIDLEY', 1411, '40.74390', '-88.88040'), ('HEYWORTH', 2431, '40.31380', '-88.97880'), ('HOLDER', None, '40.45000', '-88.80000'), ('HUDSON', 1510, '40.60700', '-88.98860'), ('LE ROY', 3332, '40.34160', '-88.76470'), ('LEXINGTON', 1912, '40.64380', '-88.78270'), ('MCLEAN', 808, '40.31560', '-89.17040'), ('NORMAL', 45386, '40.51740', '-88.99940'), ('PLEASANT HILL', 1047, '40.61670', '-88.73330'), ('SAYBROOK', 764, '40.42830', '-88.52650'), ('SHIRLEY', None, '40.41670', '-89.03330'), ('STANFORD', 670, '40.43400', '-89.22010'), ('TOWANDA', 493, '40.56320', '-88.90040')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ039': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CABERY', 263, '40.99470', '-88.20480'), ('ELLIOTT', 341, '40.46420', '-88.27480'), ('GIBSON CITY', None, '40.46570', '-88.37860'), ('KEMPTON', 235, '40.93580', '-88.23580'), ('MELVIN', 465, '40.57140', '-88.24740'), ('PAXTON', 4525, '40.45840', '-88.09950'), ('PIPER CITY', 781, '40.75570', '-88.18770'), ('ROBERTS', 387, '40.61410', '-88.18350'), ('SIBLEY', 329, '40.58760', '-88.37810')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LOT'}, -'WVZ035': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEAVER', 1378, '37.74050', '-81.15090'), ('BECKLEY', 17254, '37.78750', '-81.18580'), ('BRADLEY', 2371, '37.86140', '-81.19630'), ('COAL CITY', 1905, '37.67620', '-81.21450'), ('CRAB ORCHARD', 2761, '37.74060', '-81.23140'), ('DANIELS', 1846, '37.72260', '-81.12600'), ('GLEN DANIEL', None, '37.77900', '-81.33740'), ('LESTER', 322, '37.73510', '-81.30090'), ('MABSCOTT', 1403, '37.76830', '-81.21230'), ('MACARTHUR', 1693, '37.75700', '-81.20950'), ('PINEY VIEW', 1046, '37.84710', '-81.13890'), ('PROSPERITY', 1310, '37.83530', '-81.20320'), ('RHODELL', 234, '37.60980', '-81.30500'), ('SHADY SPRING', 2078, '37.70300', '-81.09520'), ('SOPHIA', 1301, '37.70780', '-81.25600'), ('STANAFORD', 1443, '37.81500', '-81.15200')], 'partOfState': '', 'wfo': 'RLX'}, -'ILZ032': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAMPUS', 145, '41.02480', '-88.30790'), ('CHATSWORTH', 1265, '40.75300', '-88.29380'), ('CORNELL', 511, '40.99230', '-88.72970'), ('CULLOM', 563, '40.87790', '-88.26960'), ('DWIGHT', 4363, '41.09700', '-88.42480'), ('EMINGTON', 120, '40.97010', '-88.35740'), ('FAIRBURY', 3968, '40.74660', '-88.51240'), ('FLANAGAN', 1083, '40.87730', '-88.86060'), ('FORREST', 1225, '40.75000', '-88.40990'), ('LONG POINT', 247, '41.00470', '-88.89360'), ('ODELL', 1014, '41.00280', '-88.52280'), ('PONTIAC', 11864, '40.87660', '-88.64180'), ('SAUNEMIN', 456, '40.89290', '-88.40650'), ('STRAWN', 104, '40.65270', '-88.39890')], 'partOfState': 'CENTRAL', 'wfo': 'LOT'}, -'ILZ033': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASHKUM', 724, '40.87840', '-87.95360'), ('BEAVERVILLE', 391, '40.95350', '-87.65500'), ('BUCKLEY', 593, '40.59720', '-88.03700'), ('CHEBANSE', 1148, '41.00220', '-87.91380'), ('CISSNA PARK', 811, '40.56680', '-87.89250'), ('CLIFTON', 1317, '40.93550', '-87.93340'), ('CRESCENT CITY', 631, '40.77150', '-87.85640'), ('DANFORTH', 587, '40.82120', '-87.97790'), ('DONOVAN', 351, '40.88540', '-87.61470'), ('GILMAN', 1793, '40.76590', '-87.99610'), ('IROQUOIS', 207, '40.82870', '-87.58470'), ('LODA', 419, '40.51670', '-88.07530'), ('MARTINTON', 375, '40.91530', '-87.72630'), ('MILFORD', 1369, '40.62770', '-87.69700'), ('ONARGA', 1438, '40.71310', '-88.01320'), ('PAPINEAU', 196, '40.96770', '-87.71590'), ('SHELDON', 1232, '40.77090', '-87.56640'), ('THAWVILLE', 258, '40.67390', '-88.11330'), ('WATSEKA', 5670, '40.77590', '-87.73210'), ('WELLINGTON', 264, '40.54050', '-87.67830'), ('WOODLAND', 319, '40.71300', '-87.73070')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LOT'}, -'ILZ030': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CAMP GROVE', None, '41.08330', '-89.63330'), ('HENRY', 2540, '41.11230', '-89.36180'), ('HOPEWELL', 396, '40.98330', '-89.45630'), ('LA ROSE', 159, '40.97740', '-89.23450'), ('LACON', 1979, '41.02170', '-89.40680'), ('LAWN RIDGE', None, '40.98330', '-89.61670'), ('SPARLAND', 504, '41.03030', '-89.44090'), ('TOLUCA', 1339, '41.00530', '-89.13320'), ('VARNA', 436, '41.03560', '-89.22450'), ('WENONA', 1065, '41.06670', '-89.07000')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ031': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BENSON', 408, '40.85070', '-89.12050'), ('CAZENOVIA', None, '40.85070', '-89.33310'), ('CONGERVILLE', 466, '40.61670', '-89.20850'), ('EL PASO', 2695, '40.73980', '-89.01480'), ('EUREKA', 4871, '40.71560', '-89.27510'), ('GERMANTOWN HILLS', 2111, '40.76890', '-89.46800'), ('GOODFIELD', 686, '40.62950', '-89.27120'), ('KAPPA', 170, '40.67480', '-89.00820'), ('LOW POINT', None, '40.87840', '-89.32000'), ('METAMORA', 2700, '40.79210', '-89.36360'), ('MINONK', 2168, '40.90360', '-89.03750'), ('PANOLA', 33, '40.78510', '-89.02040'), ('ROANOKE', 1994, '40.79630', '-89.20170'), ('SECOR', 379, '40.74050', '-89.13580'), ('SPRING BAY', 436, '40.82350', '-89.52560'), ('WASHBURN', 1147, '40.92070', '-89.29170')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ036': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ASTORIA', 1193, '40.22830', '-90.35590'), ('AVON', 915, '40.66220', '-90.43540'), ('BANNER', 149, '40.51470', '-89.91040'), ('BERNADOTTE', None, '40.40000', '-90.32320'), ('BRYANT', 255, '40.46550', '-90.09450'), ('CANTON', 15288, '40.56250', '-90.04030'), ('CUBA', 1418, '40.49340', '-90.19320'), ('DUNCAN MILLS', None, '40.33330', '-90.18330'), ('DUNFERMLINE', 262, '40.49090', '-90.03270'), ('ELLISVILLE', 87, '40.62700', '-90.30570'), ('FAIRVIEW', 493, '40.65050', '-90.19110'), ('FARMINGTON', 2601, '40.71670', '-90.00670'), ('FIATT', None, '40.56670', '-90.18330'), ('IPAVA', 506, '40.35210', '-90.32320'), ('LEWISTOWN', 2522, '40.39690', '-90.15530'), ('LITTLE AMERICA', None, '40.43330', '-90.03330'), ('LIVERPOOL', 119, '40.39690', '-90.00950'), ('LONDON MILLS', 447, '40.71070', '-90.26670'), ('MARBLETOWN', None, '40.22830', '-90.24500'), ('MARIETTA', 150, '40.49980', '-90.39230'), ('MIDDLE GROVE', None, '40.71670', '-90.10000'), ('NORRIS', 194, '40.62550', '-90.03170'), ('SMITHFIELD', 214, '40.47440', '-90.29500'), ('ST. DAVID', 587, '40.49200', '-90.05140'), ('TABLE GROVE', 396, '40.36560', '-90.42490'), ('VERMONT', 792, '40.29600', '-90.42810')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'ILZ037': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARMINGTON', 368, '40.33990', '-89.31370'), ('CREVE COEUR', 5448, '40.64130', '-89.59970'), ('DEER CREEK', 605, '40.62930', '-89.33310'), ('DELAVAN', 1825, '40.37140', '-89.54490'), ('DILLON', None, '40.46670', '-89.53330'), ('EAST PEORIA', 22638, '40.67150', '-89.54780'), ('GREEN VALLEY', 728, '40.40640', '-89.64250'), ('GROVELAND', None, '40.61120', '-89.52500'), ('HOPEDALE', 929, '40.42180', '-89.41630'), ('MACKINAW', 1452, '40.53500', '-89.35850'), ('MARQUETTE HEIGHTS', 2794, '40.61720', '-89.60370'), ('MINIER', 1244, '40.43380', '-89.31400'), ('MORTON', 15198, '40.61120', '-89.46780'), ('PEKIN', 33857, '40.56820', '-89.62810'), ('POWERTON', None, '40.53330', '-89.68330'), ('SOUTH PEKIN', 1162, '40.49690', '-89.65180'), ('TREMONT', 2029, '40.52580', '-89.49030'), ('WASHINGTON', 10841, '40.69820', '-89.43510')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ034': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADRIAN', None, '40.51670', '-91.16670'), ('AUGUSTA', 657, '40.23090', '-90.94890'), ('BASCO', 107, '40.32680', '-91.19910'), ('BENTLEY', 43, '40.34470', '-91.11110'), ('BOWEN', 535, '40.23200', '-91.06360'), ('BURNSIDE', None, '40.50000', '-91.10000'), ('CARTHAGE', 2725, '40.41430', '-91.13510'), ('COLUSA', None, '40.56670', '-91.16670'), ('DALLAS CITY', 1055, '40.63500', '-91.16450'), ('DENVER', None, '40.28330', '-91.10000'), ('DISCO', None, '40.61670', '-91.01670'), ('ELVASTON', 152, '40.39430', '-91.24840'), ('FERRIS', 168, '40.46950', '-91.16940'), ('FOUNTAIN GREEN', None, '40.48330', '-90.96670'), ('HAMILTON', 3029, '40.38910', '-91.36320'), ('LA HARPE', 1385, '40.58400', '-90.97000'), ('NAUVOO', 1063, '40.54750', '-91.38480'), ('NIOTA', None, '40.61670', '-91.28330'), ('PLYMOUTH', 562, '40.29120', '-90.92000'), ('PONTOOSUC', 171, '40.62860', '-91.21160'), ('STILLWELL', None, '40.21670', '-91.18330'), ('SUTTER', None, '40.28330', '-91.35000'), ('TIOGA', None, '40.21660', '-91.35000'), ('WARSAW', 1793, '40.35280', '-91.42690'), ('WEBSTER', None, '40.46670', '-91.00000'), ('WEST POINT', 195, '40.25560', '-91.18310'), ('WESTERN ILLINOIS THRESHER', None, '40.43330', '-91.33330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'ILZ035': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADAIR', None, '40.41670', '-90.50000'), ('ARGYLE LAKE STATE PARK', None, '40.45000', '-90.78330'), ('BARDOLPH', 253, '40.49680', '-90.56320'), ('BLANDINSVILLE', 777, '40.55470', '-90.86940'), ('BUSHNELL', 3221, '40.55150', '-90.50450'), ('COLCHESTER', 1493, '40.42680', '-90.79300'), ('COLMAR', None, '40.35000', '-90.88330'), ('DODDSVILLE', None, '40.28330', '-90.65000'), ('FANDON', None, '40.36670', '-90.76670'), ('GOOD HOPE', 415, '40.55760', '-90.67490'), ('INDUSTRY', 540, '40.32720', '-90.60800'), ('MACOMB', 18558, '40.47040', '-90.68140'), ('MACOMB MUNICIPAL AIRPORT', None, '40.51670', '-90.65000'), ('NEW PHILADELPHIA', None, '40.48330', '-90.46670'), ('PENNINGTON POINT', None, '40.40000', '-90.55000'), ('PRAIRIE CITY', 461, '40.62060', '-90.46450'), ('PRAIRIE CITY AIRPORT', None, '40.61670', '-90.46670'), ('SCIOTA', 58, '40.56190', '-90.74900'), ('SCOTTSBURG', None, '40.55000', '-90.60000'), ('TENNESSEE', 144, '40.41170', '-90.83590'), ('WALNUT GROVE', None, '40.61670', '-90.56670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'MIZ070': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARMADA', 1573, '42.84100', '-82.88350'), ('FRASER', 15297, '42.53970', '-82.94860'), ('MACOMB TOWNSHIP', None, '42.67260', '-82.91770'), ('MEMPHIS', 1129, '42.89530', '-82.76950'), ('MOUNT CLEMENS', 17312, '42.59810', '-82.88190'), ('NEW BALTIMORE', 7405, '42.68310', '-82.73810'), ('NEW HAVEN', 3071, '42.73260', '-82.79410'), ('RICHMOND', 4897, '42.80900', '-82.75460'), ('ROMEO', 3721, '42.80420', '-83.00530'), ('ST. CLAIR SHORES', 63096, '42.49310', '-82.89110'), ('STERLING HEIGHTS', 124471, '42.58000', '-83.03050'), ('UTICA', 4577, '42.62840', '-83.02090'), ('WARREN', 138247, '42.49300', '-83.02820'), ('WASHINGTON', None, '42.72440', '-83.03610')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'NDZ025': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BARLOW', None, '47.56670', '-99.15000'), ('BORDULAC', None, '47.38330', '-98.96670'), ('CARRINGTON', 2268, '47.45010', '-99.12350'), ('GLENFIELD', 134, '47.45490', '-98.56630'), ('GRACE CITY', 71, '47.55050', '-98.80400'), ('JUANITA', None, '47.50000', '-98.68330'), ('MCHENRY', 71, '47.57580', '-98.59080'), ('MELVILLE', None, '47.33330', '-99.03330')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'MSZ052': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COLLINSVILLE', 1823, '32.49440', '-88.84250'), ('MARION', 1305, '32.42760', '-88.64830'), ('MERIDIAN', 39968, '32.38090', '-88.71250'), ('MERIDIAN STATION', 1849, '32.54620', '-88.61760'), ('NELLIEBURG', 1354, '32.38720', '-88.78420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'NJZ008': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BOONTON', 8496, '40.90410', '-74.40550'), ('BUDD LAKE', 8100, '40.87330', '-74.73710'), ('BUTLER', 7420, '40.99940', '-74.34670'), ('CHATHAM', 8460, '40.74030', '-74.38350'), ('CHESTER', 1635, '40.78590', '-74.69330'), ('DOVER', 18188, '40.88600', '-74.55970'), ('EAST HANOVER', None, '40.81990', '-74.36520'), ('FLORHAM PARK', 8857, '40.77770', '-74.39680'), ('HANOVER TOWNSHIP', None, '40.81890', '-74.43050'), ('KINNELON', 9365, '40.98490', '-74.38670'), ('LAKE TELEMARK', 1202, '40.96130', '-74.49680'), ('LINCOLN PARK', 10930, '40.92390', '-74.30390'), ('LONG VALLEY', 1818, '40.78540', '-74.76840'), ('MADISON', 16530, '40.75850', '-74.41730'), ('MENDHAM', 5097, '40.76710', '-74.59830'), ('MORRIS PLAINS', 5236, '40.83610', '-74.48160'), ('MORRISTOWN', 18544, '40.79670', '-74.47760'), ('MOUNT ARLINGTON', 4663, '40.91950', '-74.64050'), ('MOUNTAIN LAKES', 4256, '40.89170', '-74.44060'), ('NETCONG', 2580, '40.89910', '-74.70130'), ('PARSIPPANY-TROY HILLS TOW', None, '40.85940', '-74.42390'), ('PEQUANNOCK TOWNSHIP', None, '40.96330', '-74.30370'), ('ROCKAWAY', 6473, '40.89690', '-74.51480'), ('SUCCASUNNA-KENVIL', 12569, '40.85540', '-74.65290'), ('VICTORY GARDENS', 1546, '40.87620', '-74.54430'), ('WHARTON', 6298, '40.89950', '-74.58230'), ('WHITE MEADOW LAKE', 9052, '40.92350', '-74.51110')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'MEZ010': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BLANCHARD', None, '45.26750', '-69.58420'), ('GREENVILLE', 1319, '45.45940', '-69.59110'), ('KATAHDIN IRON WORKS', None, '45.44330', '-69.17750'), ('KOKADJO', None, '45.67110', '-69.44750'), ('LILY BAY', None, '45.59780', '-69.54720'), ('LOBSTER LAKE', None, '45.85310', '-69.52310'), ('MONSON', None, '45.28690', '-69.50170'), ('NORTH EAST CARRY', None, '45.86640', '-69.62690'), ('ONAWA', None, '45.36670', '-69.37220'), ('ROCKWOOD', None, '45.67780', '-69.74140'), ('SHIRLEY', None, '45.36560', '-69.61860'), ('WILLIMANTIC', None, '45.30670', '-69.40890')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CAR'}, -'MEZ013': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('CARTHAGE', None, '44.62420', '-70.47360'), ('CHESTERVILLE', None, '44.55110', '-70.08670'), ('FARMINGTON', 4098, '44.67060', '-70.15170'), ('JAY', None, '44.50390', '-70.21670'), ('NEW SHARON', None, '44.63890', '-70.01610'), ('NEW VINEYARD', None, '44.80420', '-70.12190'), ('TEMPLE', None, '44.68500', '-70.22690'), ('WILTON', 2290, '44.59280', '-70.22860')], 'partOfState': '', 'wfo': 'GYX'}, -'MEZ012': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BETHEL', None, '44.40420', '-70.79110'), ('BROWNFIELD', None, '43.93810', '-70.90920'), ('BRYANT POND', None, '44.37830', '-70.64640'), ('BUCKFIELD', None, '44.28940', '-70.36580'), ('CANTON', None, '44.44060', '-70.31580'), ('DENMARK', None, '43.97030', '-70.80390'), ('DIXFIELD', 1137, '44.53390', '-70.45920'), ('FRYEBURG', 1549, '44.01640', '-70.98110'), ('GILEAD', None, '44.39420', '-70.97330'), ('GREENWOOD', None, '44.31830', '-70.65140'), ('HANOVER', None, '44.49670', '-70.69470'), ('HARTFORD', None, '44.37280', '-70.34720'), ('HEBRON', None, '44.19810', '-70.40690'), ('HIRAM', None, '43.87860', '-70.80390'), ('KEZAR FALLS', None, '43.80780', '-70.88940'), ('LOCKE MILLS', None, '44.40000', '-70.70250'), ('LOVELL', None, '44.12670', '-70.89220'), ('MEXICO', 1946, '44.56080', '-70.54580'), ('MILTON', None, '44.44780', '-70.65360'), ('NEWRY', None, '44.48720', '-70.78750'), ('NORWAY', 2623, '44.21390', '-70.54530'), ('OTISFIELD', None, '44.14830', '-70.56440'), ('OXFORD', 1300, '44.13170', '-70.49360'), ('PERU', None, '44.50670', '-70.40580'), ('PORTER', None, '43.79580', '-70.93310'), ('RUMFORD', 4795, '44.55360', '-70.55140'), ('SOUTH PARIS', 2237, '44.22360', '-70.51390'), ('STONEHAM', None, '44.25030', '-70.81310'), ('STOWE', None, '44.16060', '-70.98560'), ('SUMNER', None, '44.39190', '-70.43890'), ('SWEDEN', None, '44.13330', '-70.82310'), ('WATERFORD', None, '44.18140', '-70.71780'), ('WEST PARIS', None, '44.32420', '-70.57440')], 'partOfState': '', 'wfo': 'GYX'}, -'MEZ015': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALTON', None, '45.03140', '-68.72920'), ('ARGYLE', None, '45.05420', '-68.67280'), ('BANGOR', 31473, '44.80110', '-68.77830'), ('BRADFORD', None, '45.06670', '-68.93830'), ('BRADLEY', None, '44.92080', '-68.62860'), ('BREWER', 8987, '44.79670', '-68.76190'), ('CARMEL', None, '44.79750', '-69.05170'), ('CHARLESTON', None, '45.08500', '-69.04110'), ('CLIFTON', None, '44.81670', '-68.51170'), ('CORINNA', None, '44.92110', '-69.26220'), ('COSTIGAN', None, '45.01280', '-68.64000'), ('DEXTER', 2201, '45.02390', '-69.29030'), ('DIXMONT', None, '44.68030', '-69.16330'), ('EAST CORINTH', None, '45.00250', '-69.02420'), ('EDDINGTON', None, '44.82610', '-68.69390'), ('ETNA', None, '44.82080', '-69.11170'), ('EXETER', None, '44.97000', '-69.14060'), ('GARLAND', None, '45.03830', '-69.16080'), ('GLENBURN', None, '44.91060', '-68.84780'), ('GREENBUSH', None, '45.08030', '-68.65140'), ('GREENFIELD', None, '45.04720', '-68.48190'), ('HAMPDEN', 4126, '44.74440', '-68.83750'), ('HERMON', None, '44.81000', '-68.91390'), ('HOLDEN', None, '44.75280', '-68.67940'), ('HUDSON', None, '45.00110', '-68.88110'), ('KENDUSKEAG', None, '44.91940', '-68.93220'), ('LEVANT', None, '44.86920', '-68.93530'), ('LOWELL', None, '45.18780', '-68.46830'), ('MILFORD', 2197, '44.94610', '-68.64440'), ('NEWBURGH', None, '44.72170', '-69.00280'), ('NEWPORT', 1754, '44.83530', '-69.27440'), ('OLD TOWN', 8130, '44.93420', '-68.64580'), ('ORONO', 8253, '44.88310', '-68.67250'), ('ORRINGTON', None, '44.73110', '-68.82690'), ('PLYMOUTH', None, '44.76720', '-69.21080'), ('SAPONAC', None, '45.17080', '-68.31860'), ('STETSON', None, '44.89170', '-69.14330'), ('VEAZIE', None, '44.83860', '-68.70580')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAR'}, -'MEZ014': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ANSON', 818, '44.79830', '-69.88970'), ('ATHENS', None, '44.92310', '-69.67330'), ('BRIGHTON', None, '45.04530', '-69.69530'), ('CAMBRIDGE', None, '45.02420', '-69.47440'), ('CANAAN', None, '44.76170', '-69.56190'), ('CORNVILLE', None, '44.83670', '-69.67360'), ('DETROIT', None, '44.79250', '-69.29720'), ('EMBDEN', None, '44.91810', '-69.86720'), ('FAIRFIELD', 2569, '44.58830', '-69.59920'), ('HARMONY', None, '44.97390', '-69.54670'), ('HARTLAND', 872, '44.88330', '-69.44810'), ('MADISON', 2733, '44.79750', '-69.88030'), ('MERCER', None, '44.67810', '-69.93690'), ('NORRIDGEWOCK', 1557, '44.71310', '-69.79110'), ('PALMYRA', None, '44.84640', '-69.35920'), ('PITTSFIELD', 3217, '44.78250', '-69.38390'), ('RIPLEY', None, '44.99110', '-69.37220'), ('SAINT ALBANS', None, '44.91000', '-69.41060'), ('SKOWHEGAN', 6696, '44.76500', '-69.71970'), ('SOLON', None, '44.94940', '-69.85890')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GYX'}, -'GAZ154': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOYS ESTATE', None, '31.31650', '-81.47290'), ('BRUNSWICK', 15600, '31.14290', '-81.47100'), ('COUNTRY CLUB ESTATES', 7594, '31.21250', '-81.46440'), ('DOCK JUNCTION', 6951, '31.20220', '-81.51690'), ('GLYNN HAVEN', None, '31.18830', '-81.37690'), ('JEKYLL ISLAND', None, '31.04140', '-81.41730'), ('LITTLE ST. SIMMONS IS.', None, '31.29890', '-81.32860'), ('SEA ISLAND', None, '31.18330', '-81.35000'), ('ST. SIMONS', 13381, '31.17680', '-81.38450')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'MEZ016': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('AMHERST', None, '44.83330', '-68.36470'), ('AURORA', None, '44.85420', '-68.32860'), ('DEDHAM', None, '44.69170', '-68.66250'), ('EASTBROOK', None, '44.67860', '-68.26500'), ('GREAT POND', None, '44.94030', '-68.28250'), ('MARIAVILLE', None, '44.72060', '-68.41610'), ('ORLAND', None, '44.57030', '-68.73640'), ('WALTHAM', None, '44.70860', '-68.33890')], 'partOfState': 'SOUTHEAST', 'wfo': 'CAR'}, -'MEZ019': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BRIDGTON', 2359, '44.05470', '-70.71330'), ('CASCO', None, '44.00670', '-70.52330'), ('GORHAM', 4164, '43.67940', '-70.44470'), ('GRAY', None, '43.88560', '-70.33220'), ('HARRISON', None, '44.11030', '-70.67970'), ('NAPLES', None, '43.97170', '-70.60970'), ('NEW GLOUCESTER', None, '43.96280', '-70.28310'), ('NORTH WINDHAM', 4568, '43.83420', '-70.43890'), ('NORTH YARMOUTH', None, '43.84440', '-70.21780'), ('POWNAL', None, '43.89220', '-70.18580'), ('RAYMOND', None, '43.90140', '-70.47080'), ('SOUTH WINDHAM', None, '43.73610', '-70.42420'), ('STANDISH', None, '43.73580', '-70.55250'), ('WEST BALDWIN', None, '43.83310', '-70.77830')], 'partOfState': 'SOUTHWEST', 'wfo': 'GYX'}, -'NJZ001': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ANDOVER', 658, '40.98590', '-74.74270'), ('BRANCHVILLE', 845, '41.14670', '-74.74960'), ('CRANDON LAKES', 1180, '41.12420', '-74.84030'), ('FRANKLIN', 5160, '41.11050', '-74.58980'), ('HAMBURG', 3105, '41.14880', '-74.57470'), ('HIGHLAND LAKE', 5051, '41.17660', '-74.45700'), ('HOPATCONG', 15888, '40.95610', '-74.65770'), ('LAKE MOHAWK', 9755, '41.01840', '-74.66040'), ('NEWTON', 8244, '41.05480', '-74.75380'), ('OGDENSBURG', 2638, '41.07500', '-74.59790'), ('STANHOPE', 3584, '40.91290', '-74.70290'), ('SUSSEX', 2145, '41.20980', '-74.60850'), ('VERNON VALLEY', 1737, '41.23680', '-74.48750')], 'partOfState': 'NORTHWEST', 'wfo': 'PHI'}, -'NJZ002': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BLOOMINGDALE', 7610, '41.02670', '-74.33450'), ('POMPTON LAKES', 10640, '41.00300', '-74.28590'), ('RINGWOOD', 12396, '41.11150', '-74.27480'), ('RIVERDALE', 2498, '40.99520', '-74.31380'), ('WANAQUE', 10266, '41.04320', '-74.29060'), ('WEST MILFORD', 26410, '41.10610', '-74.39630')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'GAZ159': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BADEN', None, '30.71750', '-83.56650'), ('BARNEY', None, '31.00760', '-83.51570'), ('BLUE SPRINGS', None, '30.78830', '-83.45660'), ('BROOKS CO A/P', None, '30.80550', '-83.58470'), ('DIXIE', None, '30.78230', '-83.66810'), ('DURDEN', None, '30.79020', '-83.47380'), ('EMERSON', 1092, '30.77430', '-83.63220'), ('EMPRESS', None, '30.67140', '-83.56610'), ('FODIE', None, '30.84780', '-83.54100'), ('GROOVERVILLE', None, '30.72080', '-83.72730'), ('MORVEN', 634, '30.94260', '-83.50070'), ('NANKIN', None, '30.66600', '-83.46820'), ('NEW ROCK HILL', None, '31.00090', '-83.57420'), ('PEBBLE HILL', None, '30.91730', '-83.57850'), ('PIDCOCK', None, '30.78280', '-83.70770'), ('PISCOLA', None, '30.68840', '-83.67600'), ('QUITMAN', 4638, '30.78530', '-83.56030'), ('SAND HILL', None, '30.98450', '-83.65060'), ('SHIVER', None, '30.82680', '-83.54230'), ('SPAIN', None, '30.86300', '-83.53800')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'NJZ004': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('CLIFTON', 78672, '40.86400', '-74.15760'), ('HALEDON', 8252, '40.93680', '-74.18900'), ('HAWTHORNE', 18218, '40.95670', '-74.15900'), ('LITTLE FALLS', 10855, '40.87550', '-74.21850'), ('NORTH HALEDON', 7920, '40.96190', '-74.18630'), ('PASSAIC', 67861, '40.85730', '-74.12940'), ('PATERSON', 149222, '40.91450', '-74.16340'), ('PROSPECT PARK', 5779, '40.93710', '-74.17260'), ('TOTOWA', 9892, '40.90480', '-74.22210'), ('WAYNE', 54069, '40.94590', '-74.24550'), ('WEST PATERSON', 10987, '40.88920', '-74.19560')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'NJZ005': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BELLEVILLE', 35928, '40.79490', '-74.16270'), ('BLOOMFIELD', 47683, '40.81060', '-74.18690'), ('CALDWELL', 7584, '40.83840', '-74.27790'), ('CEDAR GROVE', 12300, '40.85610', '-74.22950'), ('EAST NEWARK', 2377, '40.75030', '-74.16330'), ('EAST ORANGE', 69824, '40.76590', '-74.21210'), ('FAIRFIELD', 7063, '40.88360', '-74.30630'), ('GLEN RIDGE', 7271, '40.80310', '-74.20500'), ('IRVINGTON', 60695, '40.72450', '-74.23250'), ('LIVINGSTON', 27391, '40.78560', '-74.32950'), ('MAPLEWOOD', 23868, '40.73310', '-74.27190'), ('MILLBURN', 19765, '40.74030', '-74.32450'), ('MONTCLAIR', 38977, '40.82450', '-74.21160'), ('NEWARK', 273546, '40.72410', '-74.17320'), ('NORTH CALDWELL', 7375, '40.86340', '-74.25910'), ('NUTLEY', 27362, '40.81880', '-74.15720'), ('ORANGE', 32868, '40.76820', '-74.23640'), ('ROSELAND', 5298, '40.82200', '-74.30840'), ('SOUTH ORANGE', 16964, '40.74900', '-74.26160'), ('VERONA', 13533, '40.83230', '-74.24270'), ('WEST CALDWELL', 11233, '40.84990', '-74.29830'), ('WEST ORANGE', 44943, '40.79290', '-74.26360')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'NJZ006': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BAYONNE', 61842, '40.66500', '-74.11050'), ('GUTTENBERG', 10807, '40.79270', '-74.00490'), ('HARRISON', 14424, '40.74350', '-74.15340'), ('HOBOKEN', 38577, '40.74260', '-74.02880'), ('JERSEY CITY', 240055, '40.71130', '-74.06500'), ('KEARNY', 40513, '40.75130', '-74.11970'), ('NORTH BERGEN', None, '40.79260', '-74.02580'), ('SECAUCUS', 15931, '40.78110', '-74.06480'), ('UNION CITY', 67088, '40.76710', '-74.03250'), ('WEEHAWKEN', None, '40.76870', '-74.01890'), ('WEST NEW YORK', 45768, '40.78590', '-74.00980')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'GAZ078': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HAMILTON', 307, '32.75890', '-84.87560'), ('PINE MOUNTAIN', 1141, '32.86430', '-84.85310'), ('SHILOH', 423, '32.81240', '-84.69780'), ('WAVERLY HALL', 709, '32.68400', '-84.73820')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'TNZ006': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GUTHRIE', 1469, '36.64740', '-87.17070'), ('CLARKSVILLE', 103455, '36.56110', '-87.34730')], 'partOfState': '', 'wfo': 'OHX'}, -'WYZ054': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ECHETA', None, '44.45110', '-105.85500'), ('GILLETTE', 19646, '44.28180', '-105.51790'), ('RECLUSE', None, '44.77590', '-105.70100'), ('ROCKYPOINT', None, '44.90000', '-105.10000'), ('ROZET', None, '44.28330', '-105.20000'), ('SPOTTED HORSE', None, '44.71040', '-105.84510'), ('WESTON', None, '44.63420', '-105.33340'), ('WYODAK', None, '44.29010', '-105.36860')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'NYZ007': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ADAMS', 1624, '43.80980', '-76.02250'), ('ADAMS CENTER', 1500, '43.85960', '-75.99760'), ('ALEXANDRIA BAY', 1088, '44.33740', '-75.91770'), ('ANTWERP', 716, '44.19970', '-75.60900'), ('BLACK RIVER', 1285, '44.00960', '-75.79680'), ('CALCIUM', 3346, '44.03470', '-75.84800'), ('CAPE VINCENT', 760, '44.12630', '-76.33100'), ('CARTHAGE', 3721, '43.98480', '-75.60460'), ('CHAUMONT', 592, '44.06530', '-76.13340'), ('CLAYTON', 1821, '44.23570', '-76.08690'), ('DEFERIET', 309, '44.03460', '-75.67970'), ('ELLISBURG', 269, '43.73600', '-76.13380'), ('EVANS MILLS', 605, '44.08780', '-75.80830'), ('FORT DRUM', 12123, '44.05340', '-75.77380'), ('MANNSVILLE', 400, '43.71520', '-76.06660'), ('PHILADELPHIA', 1519, '44.15480', '-75.70940'), ('SACKETS HARBOR', 1386, '43.94160', '-76.12220'), ('THERESA', 812, '44.21480', '-75.79720'), ('WATERTOWN', 26705, '43.97360', '-75.91020'), ('WEST CARTHAGE', 2102, '43.97360', '-75.62170')], 'partOfState': 'CENTRAL', 'wfo': 'BUF'}, -'NYZ006': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALTMAR', 351, '43.51060', '-76.00500'), ('CENTRAL SQUARE', 1646, '43.28670', '-76.14080'), ('CLEVELAND', 758, '43.23920', '-75.88500'), ('CONSTANTIA', 1107, '43.25390', '-76.00190'), ('FULTON', 11855, '43.31680', '-76.41560'), ('HANNIBAL', 542, '43.31780', '-76.57760'), ('LACONA', 590, '43.64370', '-76.06890'), ('MEXICO', 1572, '43.46410', '-76.23500'), ('MINETTO', 1086, '43.39900', '-76.48150'), ('OSWEGO', 17954, '43.45840', '-76.50290'), ('PARISH', 512, '43.40430', '-76.12890'), ('PHOENIX', 2251, '43.23180', '-76.29730'), ('PULASKI', 2398, '43.56530', '-76.12820'), ('SAND RIDGE', 906, '43.25590', '-76.23040'), ('SANDY CREEK', 789, '43.64290', '-76.08610')], 'partOfState': 'CENTRAL', 'wfo': 'BUF'}, -'CAZ095': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('FRAZIER PARK', 2348, '34.82210', '-118.94530'), ('GRAPEVINE', None, '34.94170', '-118.93030'), ('KERNVILLE', 1736, '35.76160', '-118.43010'), ('LAKE ISABELLA', 3315, '35.61520', '-118.46570'), ('LEBEC', 1285, '34.84220', '-118.86610'), ('TEHACHAPI', 10957, '35.13480', '-118.44050')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'NYZ004': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CLYDE', 2269, '43.08340', '-76.87100'), ('LYONS', 3695, '43.06340', '-76.99360'), ('MACEDON', 1496, '43.06870', '-77.30270'), ('NEWARK', 9682, '43.04190', '-77.09430'), ('PALMYRA', 3490, '43.06160', '-77.23070'), ('RED CREEK', 521, '43.24800', '-76.72310'), ('SODUS', 1735, '43.23670', '-77.06410'), ('SODUS POINT', 1160, '43.26260', '-76.99420'), ('WOLCOTT', 1712, '43.22250', '-76.81270')], 'partOfState': '', 'wfo': 'BUF'}, -'NYZ003': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BRIGHTON', 35584, '43.11860', '-77.58440'), ('BROCKPORT', 8103, '43.21340', '-77.94100'), ('CHURCHVILLE', 1887, '43.10150', '-77.88410'), ('EAST ROCHESTER', 6650, '43.11160', '-77.48740'), ('FAIRPORT', 5740, '43.10020', '-77.44330'), ('GATES-NORTH GATES', 15138, '43.16400', '-77.70070'), ('GREECE', 14614, '43.21190', '-77.70230'), ('HILTON', 5856, '43.28990', '-77.79280'), ('HONEOYE FALLS', 2595, '42.95440', '-77.59180'), ('IRONDEQUOIT', 52354, '43.21030', '-77.57210'), ('PITTSFORD', 1418, '43.09040', '-77.51710'), ('ROCHESTER', 219773, '43.16870', '-77.61580'), ('SCOTTSVILLE', 2128, '43.02180', '-77.75380'), ('SPENCERPORT', 3559, '43.18810', '-77.80860'), ('WEBSTER', 5216, '43.21410', '-77.42240')], 'partOfState': '', 'wfo': 'BUF'}, -'NYZ002': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALBION', 7438, '43.24590', '-78.18930'), ('HOLLEY', 1802, '43.22420', '-78.02810'), ('LYNDONVILLE', 862, '43.32190', '-78.38700'), ('MEDINA', 6415, '43.21980', '-78.38800')], 'partOfState': '', 'wfo': 'BUF'}, -'CAZ091': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AVENAL', 14674, '36.02960', '-120.11470'), ('BLACKWELLS CORNER', None, '35.61510', '-119.86690'), ('BUTTONWILLOW', 1266, '35.40180', '-119.46980'), ('CORCORAN', 14458, '36.08180', '-119.56000'), ('HANFORD', 41686, '36.32500', '-119.64690'), ('KETTLEMAN CITY', 1499, '36.00870', '-119.96190'), ('LEMOORE', 19712, '36.29860', '-119.78750'), ('LEMOORE STATION', 5749, '36.26440', '-119.90370'), ('LOST HILLS', 1938, '35.62340', '-119.69350'), ('MCKITTRICK', 160, '35.30550', '-119.62210'), ('STRATFORD', 1264, '36.18950', '-119.82350'), ('TAFT', 6400, '35.14240', '-119.45480')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'CAZ090': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ATWATER', 23113, '37.35330', '-120.60000'), ('CHOWCHILLA', 11127, '37.11540', '-120.25660'), ('CLOVIS', 68468, '36.81960', '-119.69600'), ('FOWLER', 3979, '36.62470', '-119.67230'), ('FRESNO', 427652, '36.78060', '-119.79290'), ('KERMAN', 8551, '36.72420', '-120.06100'), ('KINGSBURG', 9199, '36.51950', '-119.55480'), ('LAKE MCCLURE', None, '37.58400', '-120.27370'), ('LE GRAND', 1760, '37.21910', '-120.26050'), ('LIVINGSTON', 10473, '37.38800', '-120.72150'), ('MADERA', 43207, '36.96760', '-120.07670'), ('MERCED', 63893, '37.29630', '-120.48440'), ('MILLERTON LAKE', None, '37.00050', '-119.70410'), ('ORANGE COVE', 7722, '36.62250', '-119.31740'), ('PARLIER', 11145, '36.60850', '-119.53820'), ('PLANADA', 4369, '37.28810', '-120.32330'), ('REEDLEY', 20756, '36.60040', '-119.44830'), ('SANGER', 18931, '36.70020', '-119.55320'), ('SELMA', 19444, '36.57420', '-119.61540')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'WIZ055': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BLOOM CITY', None, '43.49741', '-90.46753'), ('BOAZ', 137, '43.33080', '-90.52720'), ('BOSSTOWN', None, '43.38227', '-90.61739'), ('CAZENOVIA', 326, '43.52530', '-90.19880'), ('EAGLE CORNERS', None, '43.21414', '-90.50042'), ('FIVE POINTS', None, '43.31465', '-90.59911'), ('GILLINGHAM', None, '43.43162', '-90.44925'), ('GOTHAM', None, '43.21414', '-90.29939'), ('ITHACA', None, '43.34755', '-90.28295'), ('LONE ROCK', 929, '43.18450', '-90.20170'), ('LOYD', None, '43.41517', '-90.24822'), ('NEPTUNE', None, '43.36582', '-90.26650'), ('PORT ANDREW', None, '43.20500', '-90.56804'), ('RICHLAND CENTER', 5114, '43.33780', '-90.38320'), ('ROCKBRIDGE', None, '43.44806', '-90.36701'), ('SABIN', None, '43.43162', '-90.56439'), ('SEXTONVILLE', None, '43.28176', '-90.29757'), ('TRAVERA', None, '43.28358', '-90.65028'), ('WEST LIMA', None, '43.54858', '-90.53149'), ('WESTPORT', None, '43.19952', '-90.63384'), ('YUBA', 92, '43.53630', '-90.42790')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'NYZ009': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALDER CREEK', None, '43.41670', '-75.21670'), ('AVA', None, '43.41670', '-75.48330'), ('BOONVILLE', 2138, '43.48080', '-75.33010'), ('CAMDEN', 2330, '43.33630', '-75.74760'), ('FLORENCE', None, '43.43330', '-75.75000'), ('FORESTPORT', None, '43.45000', '-75.21670'), ('FRENCHVILLE', None, '43.33330', '-75.36670'), ('GLENMORE', None, '43.36670', '-75.61670'), ('HAWKINSVILLE', None, '43.50000', '-75.26670'), ('HINCKLEY', None, '43.31670', '-75.11670'), ('JEWELL', None, '43.23330', '-75.81670'), ('NORTH WESTERN', None, '43.35000', '-75.36670'), ('POINT ROCK', None, '43.38330', '-75.55000'), ('PROSPECT', 330, '43.30420', '-75.15280'), ('REMSEN', 531, '43.32750', '-75.18710'), ('STEUBEN', None, '43.31670', '-75.28330'), ('STOKES CORNER', None, '43.30000', '-75.46670'), ('TABERG', None, '43.30000', '-75.61670'), ('WESTERNVILLE', None, '43.31670', '-75.38330'), ('WOODGATE', None, '43.51670', '-75.15000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ008': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CASTORLAND', 306, '43.88420', '-75.51760'), ('CONSTABLEVILLE', 305, '43.56440', '-75.42850'), ('COPENHAGEN', 865, '43.89380', '-75.67400'), ('CROGHAN', 665, '43.89530', '-75.39130'), ('HARRISVILLE', 653, '44.15340', '-75.32170'), ('LOWVILLE', 3476, '43.78580', '-75.48970'), ('LYONS FALLS', 591, '43.61690', '-75.36210'), ('PORT LEYDEN', 665, '43.58400', '-75.34100'), ('TURIN', 263, '43.62890', '-75.40970')], 'partOfState': 'CENTRAL', 'wfo': 'BUF'}, -'WIZ054': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BARNUM', None, '43.21231', '-90.83487'), ('BELL CENTER', 116, '43.29200', '-90.82540'), ('BRIDGEPORT', None, '43.00214', '-91.05417'), ('CLAYTON', 507, '43.38227', '-90.71608'), ('EASTMAN', 437, '43.16230', '-91.02030'), ('FAIRVIEW', None, '43.36217', '-90.95000'), ('FERRYVILLE', 174, '43.34320', '-91.08350'), ('GAYS MILLS', 625, '43.32010', '-90.85040'), ('LYNXVILLE', 176, '43.24800', '-91.04790'), ('MOUNT STERLING', 215, '43.31430', '-90.93060'), ('PLUGTOWN', None, '43.21414', '-90.74897'), ('PRAIRIE DU CHIEN', 6018, '43.04320', '-91.14000'), ('RISING SUN', None, '43.41517', '-90.96645'), ('ROLLING GROUND', None, '43.33110', '-90.73252'), ('SENECA', None, '43.26531', '-90.96645'), ('SOLDIERS GROVE', 653, '43.39240', '-90.77360'), ('STEUBEN', 177, '43.18120', '-90.85730'), ('WAUZEKA', 768, '43.08440', '-90.89550')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'WIZ053': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BENDERS CORNERS', None, '43.58148', '-90.35057'), ('BLOOMINGDALE', None, '43.64727', '-90.78370'), ('CHASEBURG', 306, '43.65480', '-91.09990'), ('COON VALLEY', 714, '43.70180', '-91.01020'), ('DE SOTO', 366, '43.42690', '-91.19670'), ('DILLY', None, '43.65092', '-90.43281'), ('ESOFEA', None, '43.63082', '-90.96645'), ('GENOA', 263, '43.57340', '-91.22580'), ('GREENWOOD', 1079, '43.56503', '-90.41636'), ('HILLSBORO', 1302, '43.65410', '-90.33770'), ('LA FARGE', 775, '43.57750', '-90.63810'), ('LIBERTY POLE', None, '43.48279', '-90.90066'), ('NEWTON', None, '43.58148', '-91.06697'), ('ONTARIO', 476, '43.72210', '-90.59290'), ('POTTS CORNERS', None, '43.63082', '-90.65028'), ('READSTOWN', 395, '43.44880', '-90.75890'), ('RED MOUND', None, '43.46451', '-91.14921'), ('RETREAT', None, '43.44806', '-91.08341'), ('ROCKTON', None, '43.64544', '-90.60094'), ('STODDARD', 815, '43.66120', '-91.21840'), ('TRIPPVILLE', None, '43.71489', '-90.40174'), ('VALLEY', None, '43.64727', '-90.53149'), ('VICTORY', None, '43.47913', '-91.21683'), ('VIOLA', 667, '43.50760', '-90.67310'), ('VIROQUA', 4335, '43.55830', '-90.88630'), ('WEST PRAIRIE', None, '43.46451', '-91.01580'), ('WESTBY', 2045, '43.65300', '-90.85710')], 'partOfState': 'SOUTHWEST', 'wfo': 'ARX'}, -'WVZ030': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('JACKSON MILL', None, '39.09610', '-80.47620'), ('JANE LEW', 406, '39.10960', '-80.40900'), ('STONEWALL JACKSON LAKE ST', None, '39.00770', '-80.47140'), ('WESTON', 4317, '39.04160', '-80.46880')], 'partOfState': '', 'wfo': 'RLX'}, -'WIZ052': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ADELL', 517, '43.62080', '-87.94620'), ('CASCADE', 666, '43.65940', '-88.00850'), ('CEDAR GROVE', 1887, '43.56710', '-87.82360'), ('ELKHART LAKE', 1021, '43.83280', '-88.01460'), ('GLENBEULAH', 378, '43.79860', '-88.04660'), ('HOWARDS GROVE', 2792, '43.82960', '-87.82590'), ('KOHLER', 1926, '43.73550', '-87.77900'), ('OOSTBURG', 2660, '43.62430', '-87.79760'), ('PLYMOUTH', 7781, '43.74720', '-87.97200'), ('RANDOM LAKE', 1551, '43.55500', '-87.95600'), ('SHEBOYGAN', 50792, '43.74570', '-87.73010'), ('SHEBOYGAN FALLS', 6772, '43.72980', '-87.82260'), ('WALDO', 450, '43.67560', '-87.94650')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MKX'}, -'GAZ084': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALLENTOWN', 287, '32.59390', '-83.22600'), ('GORDON', 2152, '32.88570', '-83.33550'), ('IRWINTON', 587, '32.81140', '-83.17470'), ('IVEY', 1100, '32.90790', '-83.29870'), ('MCINTYRE', 718, '32.84690', '-83.19480'), ('TOOMSBORO', 622, '32.82210', '-83.08110')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'WIZ051': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRANDON', 912, '43.73740', '-88.78380'), ('CAMPBELLSPORT', 1913, '43.59940', '-88.28130'), ('EDEN', 687, '43.69240', '-88.36280'), ('FAIRWATER', 350, '43.74110', '-88.86880'), ('FOND DU LAC', 42203, '43.77330', '-88.44550'), ('MOUNT CALVARY', 956, '43.82650', '-88.24680'), ('NORTH FOND DU LAC', 4557, '43.80900', '-88.48330'), ('OAKFIELD', 1012, '43.68460', '-88.54690'), ('RIPON', 6828, '43.84580', '-88.84160'), ('ROSENDALE', 923, '43.80830', '-88.67580'), ('ST. CLOUD', 497, '43.82260', '-88.16730')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MKX'}, -'TXZ060': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KERMIT', 5714, '31.85390', '-103.09200'), ('THE WINKLER COUNTY SANDHI', None, '31.95360', '-102.97110'), ('WINK', 919, '31.75520', '-103.15440')], 'partOfState': '', 'wfo': 'MAF'}, -'TNZ004': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COTTAGE GROVE', 97, '36.37980', '-88.47790'), ('HENRY', 520, '36.20050', '-88.41060'), ('PARIS', 9763, '36.30020', '-88.30730'), ('PURYEAR', 667, '36.44250', '-88.33480'), ('ROUTON', None, '36.23330', '-88.38330'), ('SPRINGVILLE', None, '36.25000', '-88.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'NDZ048': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ADRIAN', None, '46.60000', '-98.55000'), ('ALFRED', None, '46.60000', '-99.00000'), ('BERLIN', 35, '46.37840', '-98.48750'), ('DICKEY', 57, '46.53650', '-98.46740'), ('EDGELEY', 637, '46.36260', '-98.71180'), ('GRAND RAPIDS', None, '46.45000', '-98.36670'), ('JUD', 76, '46.52500', '-98.89780'), ('KULM', 422, '46.30190', '-98.94780'), ('LA MOURE', None, '46.35780', '-98.29660'), ('MARION', 146, '46.60950', '-98.33480'), ('NORTONVILLE', None, '46.55000', '-98.73330'), ('VERONA', 108, '46.36530', '-98.07100')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'NDZ049': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANSELM', None, '46.52860', '-97.49530'), ('ELLIOTT', 44, '46.40240', '-97.81390'), ('ENDERLIN', 947, '46.62300', '-97.59890'), ('ENGLEVALE', None, '46.39280', '-97.91310'), ('FORT RANSOM', 70, '46.52470', '-97.93040'), ('LISBON', 2292, '46.43830', '-97.68320'), ('MCLEOD', None, '46.39360', '-97.29920'), ('SHELDON', 135, '46.58700', '-97.49220'), ('VENLO', None, '46.48640', '-97.44580')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'WYZ059': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BILL', None, '43.21000', '-105.26000'), ('DEER CREEK', None, '42.83000', '-105.78000'), ('DOUGLAS', 5288, '42.75580', '-105.39270'), ('GLENROCK', 2231, '42.85710', '-105.85710'), ('LOST SPRINGS', 1, '42.76530', '-104.92380'), ('ROLLING HILLS ESTATES', None, '42.90240', '-105.84600')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CYS'}, -'ARZ019': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('PLEASANT HILL', None, '35.52170', '-94.04890'), ('PLEASANT HILL', None, '35.52170', '-94.04890'), ('UNIONTOWN', None, '35.58440', '-94.44390'), ('CONCORD', 255, '35.47060', '-94.25750'), ('BIDVILLE', None, '35.73970', '-93.98170'), ('PLEASANT HILL', None, '35.52170', '-94.04890'), ('MULBERRY', 1627, '35.50060', '-94.05140'), ('MOUNTAINBURG', 682, '35.63560', '-94.16720'), ('VAN BUREN', 18986, '35.43670', '-94.34810'), ('ALMA', 4160, '35.47780', '-94.22170'), ('CEDARVILLE', 1133, '35.56970', '-94.36670'), ('NATURAL DAM', None, '35.64860', '-94.39440'), ('CHESTER', 99, '35.68080', '-94.17500'), ('KIBLER', 969, '35.43030', '-94.23140'), ('SHIBLEY', None, '35.45030', '-94.29360'), ('FURRY', None, '35.48060', '-94.30220'), ('DYER', 585, '35.49220', '-94.13750'), ('FIGURE FIVE', None, '35.51690', '-94.35360'), ('RUDY', 72, '35.52780', '-94.27060'), ('DORA', None, '35.45420', '-94.44060'), ('LEE CREEK', None, '35.68140', '-94.34920'), ('LOCKE', None, '35.67390', '-94.07330'), ('MT GAYLER', None, '35.75000', '-94.08330')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'WVZ031': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ANMOORE', 685, '39.25890', '-80.29120'), ('BRIDGEPORT', 7306, '39.29150', '-80.25690'), ('CLARKSBURG', 16743, '39.28040', '-80.33180'), ('DESPARD', 1039, '39.29220', '-80.31760'), ('ENTERPRISE', 939, '39.41870', '-80.27770'), ('LOST CREEK', 467, '39.15910', '-80.35050'), ('LUMBERPORT', 937, '39.37300', '-80.34850'), ('NUTTER FORT', 1686, '39.25950', '-80.32460'), ('SALEM', 2006, '39.28290', '-80.56510'), ('SHINNSTON', 2295, '39.39320', '-80.29950'), ('STONEWOOD', 1815, '39.24890', '-80.30520'), ('WEST MILFORD', 651, '39.20570', '-80.40490')], 'partOfState': '', 'wfo': 'RLX'}, -'ALZ058': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BRADLEYTON', None, '31.90110', '-86.24250'), ('BRANTLEY', 920, '31.58170', '-86.25720'), ('BULLOCK', None, '31.54110', '-86.18140'), ('DOZIER', 391, '31.49140', '-86.36560'), ('GLENWOOD', 191, '31.66670', '-86.17100'), ('HIGHLAND HOME', None, '31.95310', '-86.31440'), ('HONORAVILLE', None, '31.85030', '-86.40640'), ('LIVE OAK', None, '31.80860', '-86.24770'), ('LUVERNE', 2635, '31.71580', '-86.26440'), ('PATSBURG', None, '31.78690', '-86.22840'), ('PETREY', 63, '31.84910', '-86.20730'), ('RUTLEDGE', 476, '31.73060', '-86.31030'), ('SAVILLE', None, '31.87780', '-86.33130')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'ALZ059': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('APPLETON', None, '31.22110', '-87.12390'), ('ATMORE', 7676, '31.02310', '-87.49420'), ('BARNETT CROSSROADS', None, '31.22120', '-87.30430'), ('BOONEVILLE', None, '31.20080', '-87.60330'), ('BOYKIN', None, '31.18460', '-86.86970'), ('BRADLEY', None, '31.03280', '-86.72610'), ('BREWTON', 5498, '31.10420', '-87.07250'), ('BROOKLYN', None, '31.26170', '-86.77110'), ('CANOE', None, '31.02560', '-87.41230'), ('CARNEY', None, '31.08970', '-87.52780'), ('DIXIE', None, '31.14360', '-86.72000'), ('EAST BREWTON', 2496, '31.09310', '-87.06280'), ('FOSHEE', None, '31.11750', '-87.22780'), ('FREEMANVILLE', None, '31.07170', '-87.52080'), ('HOLMAN PRISON', None, '31.14750', '-87.46130'), ('HUXFORD', None, '31.21970', '-87.46280'), ('I65 AND AL 113', None, '31.20410', '-87.31160'), ('I65 AND AL 21', None, '31.11030', '-87.47380'), ('I65 AND CR 1', None, '31.08420', '-87.53510'), ('JEDDO', None, '31.22080', '-87.51970'), ('KEEGO', None, '31.06060', '-87.12770'), ('KIRKLAND', None, '31.18780', '-87.03050'), ('LITTLE ROCK', None, '31.11470', '-87.38910'), ('MALTA', None, '31.02500', '-87.45360'), ('MCCULLOUGH', None, '31.16670', '-87.52640'), ('NOKOMIS', None, '31.01030', '-87.56500'), ('OSAKA', None, '31.06420', '-87.22390'), ('PARKER SPRINGS', None, '31.05530', '-86.80950'), ('POARCH', None, '31.11690', '-87.52970'), ('POLLARD', 120, '31.02610', '-87.17390'), ('RIVERVIEW', 99, '31.05850', '-87.05670'), ('ROBERTS', None, '31.08190', '-86.88730'), ('ROBINSONVILLE', None, '31.06140', '-87.43970'), ('ROCK HILL', None, '31.11640', '-86.99670'), ('SARDINE', None, '31.13110', '-87.36670'), ('US 29 AND CR 43', None, '31.16480', '-86.80270'), ('VOCATION', None, '31.26390', '-87.43300'), ('WAHL', None, '31.00460', '-87.22160'), ('WALLACE', None, '31.20920', '-87.21920'), ('WAWBEEK', None, '31.02830', '-87.36080')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'OKZ061': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CLAREMORE', 15873, '36.31250', '-95.61580'), ('INOLA', 1589, '36.15110', '-95.50920'), ('CATOOSA', 5449, '36.18890', '-95.74560'), ('VERDIGRIS', None, '36.23470', '-95.69080'), ('TIAWAH', None, '36.26110', '-95.56060'), ('FOYIL', 234, '36.43470', '-95.51920'), ('OOLOGAH', 883, '36.44690', '-95.70810'), ('BUSHYHEAD', 1203, '36.46140', '-95.49390'), ('TALALA', 270, '36.52970', '-95.70110'), ('CHELSEA', 2136, '36.53560', '-95.43220')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'ALZ050': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BLUE SPRINGS', 121, '31.66050', '-85.50310'), ('CLAYTON', 1475, '31.88070', '-85.45120'), ('CLIO', 2206, '31.70930', '-85.61050'), ('EUFAULA', 13908, '31.90930', '-85.15040'), ('LOUISVILLE', 612, '31.78110', '-85.55800')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'ALZ051': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AQUILLA', None, '31.71220', '-88.41440'), ('ARARAT', None, '31.96810', '-88.14700'), ('BARRYTOWN', None, '31.83780', '-88.25270'), ('BLADON SPRINGS', None, '31.73170', '-88.19740'), ('BOLINGER', None, '31.77890', '-88.33100'), ('BUTLER', 1952, '32.08890', '-88.22140'), ('CHAPPELL HILL', None, '31.89220', '-88.25600'), ('CHOCTAW CITY', None, '32.20920', '-88.09440'), ('CROMWELL', None, '32.22870', '-88.27450'), ('CULLOMBURG', None, '31.71410', '-88.29710'), ('CYRIL', None, '32.17820', '-88.42250'), ('DEAS', None, '32.22970', '-88.09720'), ('EDNA', None, '32.28670', '-88.07490'), ('EVANSBORO', None, '31.88360', '-88.46790'), ('GILBERTOWN', 187, '31.87620', '-88.32190'), ('HALSELL', None, '32.28400', '-88.27780'), ('HINTON', None, '32.09220', '-88.44210'), ('HODGEWOOD', None, '31.93680', '-88.30230'), ('INDIAN SPRINGS', None, '32.25220', '-88.10090'), ('ISNEY', None, '31.78310', '-88.45550'), ('JACHIN', None, '32.23030', '-88.16840'), ('LAND', None, '32.02890', '-88.32840'), ('LAVACA', None, '32.14060', '-88.07960'), ('LISMAN', 653, '32.16780', '-88.28330'), ('LOU', None, '31.91860', '-88.21130'), ('MELVIN', None, '31.92970', '-88.45910'), ('MT STERLING', None, '32.09420', '-88.16320'), ('NAHEOLA', None, '32.22830', '-88.02890'), ('NEEDHAM', 97, '31.98940', '-88.33680'), ('OAKCHIA', None, '32.29810', '-88.01070'), ('PARAGON', None, '31.87720', '-88.37470'), ('PENNINGTON', 353, '32.20730', '-88.05600'), ('PUSHMATAHA', None, '32.19310', '-88.35350'), ('RIDERWOOD', None, '32.12890', '-88.32780'), ('ROBJOHN', None, '32.21440', '-88.12740'), ('ROCK SPRINGS', None, '32.07860', '-88.36670'), ('SERVICE', None, '31.74500', '-88.14310'), ('SILAS', 529, '31.76420', '-88.32920'), ('SOUWILPA', None, '31.82000', '-88.32940'), ('TOXEY', 152, '31.91290', '-88.31050'), ('WATER VALLEY', None, '31.89330', '-88.39330'), ('WIMBLY', None, '31.91390', '-88.24850'), ('WOMACK HILL', None, '31.85360', '-88.18890'), ('WOODS BLUFF', None, '31.93500', '-88.06170'), ('YANTLEY', None, '32.24580', '-88.37900')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALZ052': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BIGBEE', None, '31.61430', '-88.16670'), ('CARSON', None, '31.47280', '-87.94160'), ('CHATOM', 1193, '31.46420', '-88.25440'), ('CORTELUOU', None, '31.42530', '-88.00870'), ('DEER PARK', None, '31.21680', '-88.31710'), ('ESCATAWPA', None, '31.28910', '-88.38720'), ('FAIRFORD', None, '31.16900', '-88.06280'), ('FRANKVILLE', None, '31.64610', '-88.14780'), ('FRUITDALE', None, '31.34170', '-88.41180'), ('HAWTHORN', None, '31.33310', '-88.08840'), ('HEALING SPRINGS', None, '31.63280', '-88.33660'), ('JORDON', None, '31.50490', '-88.24740'), ('KOENTON', None, '31.64140', '-88.25960'), ('LEROY', None, '31.50560', '-87.98470'), ('LOPER', None, '31.58170', '-88.30030'), ('MALCOLM', None, '31.19060', '-88.01130'), ('MCINTOSH', 244, '31.26530', '-88.03170'), ('MILLRY', 615, '31.63330', '-88.31390'), ('PRESTWICK', None, '31.45290', '-87.96620'), ('SEABOARD', None, '31.32130', '-88.18870'), ('SILVER CROSS', None, '31.68060', '-88.17420'), ('ST STEPHRNS', None, '31.53940', '-88.05530'), ('SUNFLOWER', None, '31.37770', '-88.03560'), ('TIBBIE', None, '31.36140', '-88.24940'), ('TOINETTE', None, '31.34000', '-88.00830'), ('TOPTON', None, '31.28580', '-88.14990'), ('VINEGAR BEND', None, '31.26440', '-88.34480'), ('WAGARVILLE', None, '31.44330', '-88.03040'), ('YARBO', None, '31.54370', '-88.27800'), ('YELLOW PINE', None, '31.40550', '-88.43180')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALZ053': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALLEN', None, '31.59650', '-87.72790'), ('ALMA', None, '31.49050', '-87.75170'), ('BARLOW BEND', None, '31.45440', '-87.63490'), ('BASHI', None, '31.97060', '-87.86140'), ('CARLTON', None, '31.34300', '-87.84550'), ('CHANCE', None, '31.74890', '-87.53200'), ('CHILTON', None, '31.78190', '-87.84430'), ('CHOCTAW BLUFF', None, '31.38860', '-87.78890'), ('COFFEEVILLE', 360, '31.75750', '-88.09030'), ('DICKINSON', None, '31.76330', '-87.71020'), ('FULTON', 308, '31.78860', '-87.72710'), ('GAINESTOWN', None, '31.44550', '-87.69360'), ('GROVE HILL', 1438, '31.70810', '-87.77740'), ('HOLTAMVILLE', None, '31.99190', '-87.94010'), ('JACKSON', 5419, '31.50830', '-87.89420'), ('MANILLA', None, '31.51000', '-87.72340'), ('MORVIN', None, '31.98580', '-87.99300'), ('NETTLEBORO', None, '31.79900', '-87.62220'), ('OPINE', None, '31.90480', '-87.93380'), ('PEACOCK', None, '31.75740', '-87.77470'), ('ROUNDHILL', None, '31.89270', '-87.71170'), ('RURAL', None, '31.86390', '-87.73860'), ('SCYRENE', None, '31.75570', '-87.64780'), ('SHAWNEE', None, '31.99360', '-87.70710'), ('SUGGSVILLE', None, '31.58940', '-87.69310'), ('TALLAHATTA SPRINGS', None, '31.90960', '-87.87690'), ('THOMASVILLE', 4649, '31.91240', '-87.73690'), ('WALKER SPRINGS', None, '31.54110', '-87.79130'), ('WEST BEND', None, '31.82390', '-88.13230'), ('WHATELY', None, '31.65020', '-87.70530'), ('WINN', None, '31.65310', '-87.91690')], 'partOfState': 'SOUTHWEST', 'wfo': 'MOB'}, -'ALZ054': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ACKERVILLE', None, '32.02920', '-87.06610'), ('ALBERTA', None, '32.23280', '-87.41020'), ('ALLENTON', None, '31.93030', '-87.02390'), ('ANNE MARIE', None, '32.05300', '-87.57030'), ('BELLVIEW', None, '31.84360', '-87.35600'), ('BOYKIN', None, '32.07810', '-87.28150'), ('CALEDONIA', None, '31.88970', '-87.08760'), ('CAMDEN', 2257, '31.99030', '-87.29060'), ('CANTON BEND', None, '32.05340', '-87.34900'), ('CATHERINE', None, '32.18360', '-87.46970'), ('COAL BLUFF', None, '31.94530', '-87.43940'), ('COY', None, '31.89430', '-87.46270'), ('DARLINGTON', None, '31.97700', '-87.13080'), ('ESTELLE', None, '31.96940', '-87.20230'), ('FATAMA', None, '31.89850', '-87.23670'), ('FURMAN', None, '32.00380', '-86.96490'), ('GASTONBURG', None, '32.20680', '-87.43860'), ('KIMBROUGH', None, '32.03420', '-87.56490'), ('LAMISON', None, '32.12220', '-87.56670'), ('LOWER PEACH TREE', None, '31.84000', '-87.54610'), ('MCBRYDES', None, '31.99250', '-87.02150'), ('MILLERS FERRY', None, '32.09950', '-87.36760'), ('OAK HILL', 37, '31.92210', '-87.08810'), ('PINE APPLE', 145, '31.87370', '-86.98770'), ('PINE HILL', 966, '31.98560', '-87.58250'), ('PRAIRIE', None, '32.15390', '-87.44030'), ('REHOBOTH', None, '32.19570', '-87.38150'), ('ROCKWEST', None, '32.00000', '-87.37180'), ('RUTHVEN', None, '31.85560', '-87.02930'), ('SHEPPARD', None, '31.91140', '-87.47970'), ('SNOW HILL', None, '32.00560', '-87.00720'), ('SUNNY SOUTH', None, '31.96480', '-87.63990'), ('WATSONVILLE', None, '31.86770', '-87.16490'), ('YELLOW BLUFF', 181, '31.96730', '-87.46800')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'ALZ055': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AL 47 AND CR 29 ROADS', None, '31.76850', '-86.99820'), ('AWIN', None, '31.83830', '-86.94730'), ('BEATRICE', 412, '31.73250', '-87.20500'), ('BUENA VISTA', None, '31.79280', '-87.25560'), ('BURNT CORN', None, '31.55440', '-87.16610'), ('CHESTNUT', None, '31.80940', '-87.23830'), ('CHRYSLER', None, '31.30420', '-87.70190'), ('CLAIBORNE', None, '31.53970', '-87.51610'), ('CORDUROY STATION', None, '31.76970', '-87.22860'), ('DREWRY', None, '31.48610', '-87.25780'), ('ELISKA', None, '31.35280', '-87.68440'), ('EXCEL', 582, '31.42890', '-87.34780'), ('FINCHBURG', None, '31.64280', '-87.51640'), ('FOUNTAIN', None, '31.59560', '-87.41470'), ('FRANKLIN', 149, '31.71370', '-87.41150'), ('FRISCO CITY', 1460, '31.43250', '-87.40190'), ('GOODWAY', None, '31.33640', '-87.43190'), ('HOMEWOOD', 25043, '31.36970', '-87.59970'), ('HYBART', None, '31.82580', '-87.38250'), ('KEITH', None, '31.67780', '-87.36830'), ('MANISTEE', None, '31.44080', '-87.49430'), ('MCWILLIAMS', None, '31.83030', '-87.09390'), ('MEGARGEL', None, '31.38080', '-87.43750'), ('MEXIA', None, '31.50860', '-87.39390'), ('MIDWAY', 457, '31.71780', '-87.05140'), ('MINEOLA', None, '31.27780', '-87.64060'), ('MONROEVILLE', 6862, '31.52690', '-87.32530'), ('MT PLEASANT', None, '31.33330', '-87.69580'), ('NADAWAH', None, '31.81420', '-87.17210'), ('NATCHEZ', None, '31.72750', '-87.26050'), ('PACKARDS BEND', None, '31.77570', '-87.48970'), ('PERDUE HILL', None, '31.51400', '-87.49350'), ('PETERMAN', None, '31.58420', '-87.25940'), ('PINE ORCHARD', None, '31.64170', '-87.13440'), ('RIVER RIDGE', None, '31.71390', '-87.31300'), ('TINELA', None, '31.80830', '-87.39720'), ('TUNNEL SPRINGS', None, '31.64330', '-87.24640'), ('TURKESTAN', None, '31.77670', '-87.15500'), ('TURNBULL', None, '31.71470', '-87.13200'), ('URIAH', None, '31.30530', '-87.50220'), ('VREDENBURGH', 327, '31.82860', '-87.32170'), ('WEST MONROEVILLE', None, '31.51730', '-87.35370')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'ALZ056': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BELLEVILLE', None, '31.43220', '-87.10860'), ('BERMUDA', None, '31.48470', '-87.18580'), ('BROWNVILLE', None, '31.46820', '-86.90030'), ('CASTLEBERRY', 590, '31.29810', '-87.02250'), ('CHINA', None, '31.52400', '-87.01760'), ('COHASSETT', None, '31.39480', '-86.69360'), ('DEANS', None, '31.66060', '-86.93610'), ('EVERGREEN', 3630, '31.43250', '-86.95720'), ('FAIRNELSON', None, '31.56330', '-87.07670'), ('I65 AND AL 41', None, '31.27640', '-87.20500'), ('I65 AND AL 83', None, '31.45750', '-86.96580'), ('I65 AND CR 29', None, '31.50560', '-86.92320'), ('I65 AND CR 6', None, '31.32970', '-87.12650'), ('I65 AND US 84', None, '31.41920', '-87.00620'), ('JOHNSONVILLE', None, '31.29480', '-86.87260'), ('LENOX', None, '31.33690', '-87.18670'), ('LOREE', None, '31.48790', '-87.08990'), ('LYEFFION', None, '31.54220', '-86.98690'), ('MIXONVILLE', None, '31.70460', '-86.94920'), ('NICHBURG', None, '31.47860', '-87.13560'), ('NYMPH', None, '31.33720', '-86.93920'), ('OWASSA', None, '31.49310', '-86.93000'), ('PAUL', None, '31.31970', '-86.74440'), ('RANGE', None, '31.31330', '-87.23720'), ('REPTON', 280, '31.40880', '-87.23890'), ('SHREVE', None, '31.50920', '-86.70780'), ('WILCOX', None, '31.50910', '-86.87610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'ALZ057': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AVANT', None, '31.62110', '-86.70440'), ('BOLLING', None, '31.72420', '-86.70410'), ('BUTLER SPRINGS', None, '31.80660', '-86.86760'), ('CHAPMAN', None, '31.66750', '-86.72070'), ('FOREST HOME', None, '31.86300', '-86.84100'), ('GARLAND', None, '31.55640', '-86.82670'), ('GEORGIANA', 1737, '31.63640', '-86.74240'), ('GREENVILLE', 7228, '31.82970', '-86.61750'), ('HERBERT', None, '31.83560', '-86.80470'), ('I65 AND AL 10', None, '31.82290', '-86.66520'), ('I65 AND AL 106', None, '31.65070', '-86.77570'), ('I65 AND AL 185', None, '31.85090', '-86.64090'), ('I65 AND CR 7', None, '31.57670', '-86.84660'), ('INDUSTRY', None, '31.60420', '-86.61340'), ('MCKENZIE', 644, '31.54170', '-86.71530'), ('MONTERY', None, '31.90360', '-86.88260'), ('OAKY STREAK', None, '31.57960', '-86.55330'), ('PIGEON CREEK', None, '31.65960', '-86.50630'), ('SAUCER', None, '31.82190', '-86.83610'), ('STARLINGTON', None, '31.67430', '-86.82470'), ('WALD', None, '31.76190', '-86.67430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MOB'}, -'KYZ109': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHANNA', None, '37.77530', '-83.18360'), ('BLOOMINGTON', None, '37.81690', '-83.14420'), ('BRADLEY', None, '37.71030', '-83.00670'), ('BROWNLOW', None, '37.79790', '-83.00920'), ('BURNING FORK', None, '37.73330', '-83.02330'), ('CARVER', None, '37.64480', '-83.04890'), ('CARVER STATION', None, '37.63180', '-83.05580'), ('CISCO', None, '37.83460', '-83.12810'), ('CONLEY', None, '37.75170', '-82.97830'), ('CONLEY STATION', None, '37.66910', '-83.04240'), ('COON', None, '37.83040', '-83.05820'), ('CORNELIA', None, '37.66320', '-83.20450'), ('CUTUNO', None, '37.71810', '-83.24330'), ('CYRUS', None, '37.79400', '-83.03830'), ('DALE', None, '37.69330', '-83.23180'), ('DUCO', None, '37.60790', '-83.03030'), ('ELSIE', None, '37.77830', '-83.13400'), ('EMMA', None, '37.81320', '-83.05670'), ('EPSON', None, '37.74470', '-83.21830'), ('EUGENE', None, '37.68040', '-83.18590'), ('EVER', None, '37.85410', '-83.05460'), ('FALCON', None, '37.78970', '-83.00190'), ('FLAT FORK', None, '37.83550', '-83.03320'), ('FORAKER', None, '37.66000', '-83.13720'), ('FREDVILLE', None, '37.60550', '-82.96500'), ('FRITZ', None, '37.70140', '-83.15170'), ('GALDIA', None, '37.63000', '-82.95920'), ('GAPVILLE', None, '37.63000', '-82.95920'), ('GIFFORD', None, '37.76220', '-83.12210'), ('GRAYFOX', None, '37.86370', '-83.05350'), ('GULLETT', None, '37.73900', '-83.12560'), ('GUNLOCK', None, '37.54820', '-82.92560'), ('GYPSY', None, '37.66250', '-82.96390'), ('HAGER', None, '37.74640', '-83.19940'), ('HALEBURG', None, '37.87310', '-83.10380'), ('HARPER', None, '37.79750', '-83.19700'), ('HENDRICKS', None, '37.68960', '-83.12490'), ('IVYTON', None, '37.70890', '-82.97860'), ('KERNIE', None, '37.75670', '-83.16810'), ('LACEY', None, '37.86080', '-83.03080'), ('LAKESVILLE', None, '37.71970', '-83.07010'), ('LEATHA', None, '37.81580', '-83.01680'), ('LICKSBURG', None, '37.79190', '-83.08470'), ('LOGVILLE', None, '37.87220', '-83.10950'), ('LYKINS', None, '37.77810', '-83.22190'), ('MAGGARD', None, '37.81880', '-83.09940'), ('MARSHALLVILLE', None, '37.67810', '-82.98940'), ('MARY', None, '37.86090', '-83.08110'), ('MASHFORK', None, '37.75920', '-82.99990'), ('MASON', None, '37.72060', '-83.05000'), ('MID', None, '37.52320', '-82.90110'), ('NETTY', None, '37.74690', '-83.23860'), ('ORCHARD', None, '37.56340', '-82.92550'), ('ORDWAY', None, '37.58910', '-82.96230'), ('ORIENT', None, '37.85010', '-83.10950'), ('OVA', None, '37.72530', '-83.17150'), ('PATTON', None, '37.77930', '-83.15470'), ('PERLIE', None, '37.79790', '-83.05500'), ('PLUTARCH', None, '37.84000', '-83.08850'), ('PUNCHEON', None, '37.69180', '-83.19640'), ('QUOD', None, '37.84740', '-83.04300'), ('ROYALTON', None, '37.67580', '-83.02210'), ('SALYERSVILLE', 1604, '37.74680', '-83.06370'), ('SEILTZ', None, '37.69560', '-83.19650'), ('SKAGGS', None, '37.68120', '-83.03330'), ('STELLA', None, '37.73780', '-83.16610'), ('STRINGTOWN', None, '37.76440', '-83.04750'), ('SUBLETT', None, '37.67780', '-83.03570'), ('SWAMPTON', None, '37.65860', '-83.01140'), ('TELLA', None, '37.82060', '-83.08570'), ('TIPTOP', None, '37.61390', '-83.06110'), ('WALDO', None, '37.57660', '-82.97670'), ('WEST ROYALTON STATION', None, '37.68070', '-83.02990'), ('WHEELERSBURG', None, '37.82650', '-83.01080'), ('WONNIE', None, '37.80920', '-83.15420')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'NDZ042': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('CARSON', 319, '46.42190', '-101.56980'), ('ELGIN', 659, '46.40170', '-101.84660'), ('HEIL', None, '46.38330', '-101.70000'), ('LARK', None, '46.45000', '-101.40000'), ('LEITH', 28, '46.35990', '-101.63730'), ('NEW LEIPZIG', 274, '46.37620', '-101.94970'), ('RALEIGH', None, '46.36670', '-101.30000'), ('SHIELDS', None, '46.23330', '-101.13330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDZ043': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BOWMAN', 1600, '46.18380', '-103.39980'), ('GASCOYNE', 23, '46.11750', '-103.07920'), ('RHAME', 189, '46.23400', '-103.65420'), ('SCRANTON', 304, '46.14780', '-103.14240')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'KYZ101': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BELLEFONTE', 837, '38.49840', '-82.68840'), ('FLATWOODS', 7605, '38.51930', '-82.72000'), ('GREENUP', 1198, '38.57300', '-82.82910'), ('RACELAND', 2355, '38.53620', '-82.73370'), ('RUSSELL', 3645, '38.50970', '-82.70120'), ('SOUTH SHORE', 1226, '38.72200', '-82.96430'), ('WORTHINGTON', 1673, '38.55170', '-82.73630'), ('WURTLAND', 1049, '38.55040', '-82.77320')], 'partOfState': '', 'wfo': 'RLX'}, -'KYZ100': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CAMP DIX', None, '38.49000', '-83.27000'), ('HEAD OF GRASSY', None, '38.40000', '-83.26000'), ('TOLLESBORO', None, '38.57000', '-83.57000'), ('VANCEBURG', 1731, '38.59420', '-83.32100')], 'partOfState': 'NORTHEAST', 'wfo': 'ILN'}, -'KYZ103': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ASHLAND', 21981, '38.45920', '-82.64490'), ('CANNONSBURG', None, '38.38860', '-82.70290'), ('CATLETTSBURG', 1960, '38.41760', '-82.60120'), ('WESTWOOD', 612, '38.48120', '-82.67800')], 'partOfState': '', 'wfo': 'RLX'}, -'KYZ102': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CARTER CAVES STATE PARK', None, '38.37180', '-83.11890'), ('GRAYSON', 3877, '38.33360', '-82.93830'), ('GRAYSON LAKE STATE PARK', None, '38.21610', '-83.01760'), ('OLIVE HILL', 1813, '38.30320', '-83.16940')], 'partOfState': '', 'wfo': 'RLX'}, -'KYZ105': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BLAINE', 245, '38.02620', '-82.85410'), ('LOUISA', 2018, '38.10940', '-82.60340'), ('YATESVILLE LAKE STATE PAR', None, '38.14650', '-82.68800')], 'partOfState': '', 'wfo': 'RLX'}, -'KYZ104': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRUIN', None, '38.18810', '-83.01940'), ('CULVER', None, '38.08500', '-82.99110'), ('FANNIN VALLEY', None, '38.13620', '-83.22670'), ('ISONVILLE', None, '38.06640', '-83.05330'), ('LITTLE SANDY', None, '38.06220', '-83.18220'), ('LYTTEN', None, '38.10580', '-83.22190'), ('NEWFOUNDLAND', None, '38.13310', '-83.10080'), ('SANDY HOOK', 678, '38.09280', '-83.12330'), ('STARK', None, '38.17530', '-83.13470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYZ107': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAKER', None, '37.86010', '-82.75820'), ('BALLOT', None, '37.77700', '-82.94290'), ('BARNETTS CREEK', None, '37.82760', '-82.87970'), ('BARNROCK', None, '37.95280', '-82.92120'), ('BLAIR', None, '37.78540', '-82.82870'), ('BOBBS', None, '37.82700', '-82.74340'), ('BOONS CAMP', None, '37.83290', '-82.70130'), ('BUFFALO', None, '37.79470', '-82.75390'), ('CHANDLERVILLE', None, '37.93460', '-82.81380'), ('CHESTNUT', None, '37.89060', '-82.68190'), ('COLLISTA', None, '37.78240', '-82.82410'), ('DENVER', None, '37.77590', '-82.85510'), ('DOBSON', None, '37.74080', '-82.88460'), ('FITZ', None, '37.78410', '-82.84000'), ('FLATGAP', None, '37.93350', '-82.88770'), ('GALEN', None, '37.89050', '-82.80670'), ('GILLEM BRANCH', None, '37.96370', '-82.97240'), ('HAGERHILL', None, '37.78750', '-82.79060'), ('HAMMOND', None, '37.88400', '-82.67080'), ('HARGIS', None, '37.84080', '-82.97720'), ('KEATON', None, '37.98160', '-82.96180'), ('KERZ', None, '37.91510', '-82.84090'), ('LEANDER', None, '37.75380', '-82.87140'), ('MEALLY', None, '37.79850', '-82.73430'), ('MINEFORK', None, '37.86090', '-83.00710'), ('NILES', None, '37.82900', '-82.97460'), ('NIPPA', None, '37.86620', '-82.78820'), ('OAKLAWN ESTATES', None, '37.75650', '-82.77520'), ('ODDS', None, '37.75520', '-82.69300'), ('OFFUTT', None, '37.85070', '-82.72880'), ('OIL SPRINGS', None, '37.80990', '-82.94210'), ('PAINTSVILLE', 4132, '37.81710', '-82.80710'), ('PATRICK', None, '37.75930', '-82.86880'), ('REDBUSH', None, '37.93930', '-82.94940'), ('RICEVILLE', None, '37.73360', '-82.92380'), ('RIVER', None, '37.86040', '-82.72600'), ('SIP', None, '37.92400', '-82.82840'), ('STAFFORDSVILLE', None, '37.83010', '-82.84170'), ('STAMBAUGH', None, '37.88530', '-82.79710'), ('SWAMP BRANCH', None, '37.73740', '-82.89670'), ('THEALKA', None, '37.82180', '-82.78960'), ('THELMA', None, '37.81980', '-82.76580'), ('TUTOR KEY', None, '37.84420', '-82.76490'), ('VAN LEAR', None, '37.76990', '-82.75640'), ('WELLS CHAPEL', None, '37.83150', '-82.69670'), ('WEST VAN LEAR', None, '37.78530', '-82.77900'), ('WHITEHOUSE', None, '37.87170', '-82.69700'), ('WILLIAMSPORT', None, '37.82430', '-82.72890'), ('WIN', None, '37.86740', '-82.98930'), ('WINIFRED', None, '37.94640', '-82.85450'), ('WITTENSVILLE', None, '37.86330', '-82.79900'), ('WOODLAND ESTATES', None, '37.80330', '-82.76650')], 'partOfState': 'NORTHEAST', 'wfo': 'JKL'}, -'KYZ106': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADELE', None, '37.75720', '-83.30120'), ('ARNETT', None, '37.94860', '-83.39530'), ('BLAIRS MILLS', None, '38.08190', '-83.29230'), ('BLAZE', None, '38.02140', '-83.33330'), ('BURG', None, '37.73930', '-83.26000'), ('CANEY', None, '37.80060', '-83.25840'), ('CANNEL CITY', None, '37.78980', '-83.27590'), ('COTTLE', None, '37.88830', '-83.20310'), ('CROCKETT', None, '37.98590', '-83.09210'), ('DEHART', None, '37.96420', '-83.33740'), ('DEMUND', None, '37.83250', '-83.33730'), ('DINGUS', None, '37.90850', '-83.08990'), ('EBON', None, '37.95410', '-83.43600'), ('ELAMTON', None, '37.93940', '-83.15400'), ('ELKFORK', None, '37.96440', '-83.13460'), ('ELNA', None, '37.91800', '-82.96760'), ('EZEL', None, '37.89000', '-83.44440'), ('FLORRESS', None, '37.88480', '-83.17710'), ('GORDON FORD', None, '37.88450', '-83.23570'), ('GRASSY CREEK', None, '37.86690', '-83.34500'), ('GREEAR', None, '37.87770', '-83.29820'), ('HENRY', None, '37.91190', '-83.34390'), ('HOLLIDAY', None, '37.81080', '-83.22970'), ('INDEX', None, '37.89480', '-83.25830'), ('JEPTHA', None, '37.94240', '-83.09990'), ('KELLACEY', None, '37.96030', '-83.39220'), ('LEISURE', None, '38.04450', '-83.33330'), ('LENOX', None, '37.95660', '-83.20210'), ('LEWIS', None, '37.82610', '-83.24920'), ('LIBERTY ROAD', None, '37.90840', '-83.29370'), ('LICK BRANCH', None, '37.95990', '-83.24040'), ('LICKING RIVER', None, '37.93040', '-83.29370'), ('LIZZIELANE', None, '37.82430', '-83.32070'), ('MALONE', None, '37.87160', '-83.25830'), ('MATTHEW', None, '37.85590', '-83.15850'), ('MIMA', None, '37.92230', '-83.03840'), ('MIZE', None, '37.86090', '-83.37250'), ('MOON', None, '37.97440', '-83.04750'), ('MURPHYFORK', None, '37.82820', '-83.42100'), ('NEW COOMER', None, '37.89120', '-83.35410'), ('NICKELL', None, '37.83510', '-83.32640'), ('OMER', None, '37.92370', '-83.39930'), ('OPHIR', None, '37.90730', '-83.01410'), ('PANAMA', None, '37.84730', '-83.30120'), ('PAYTON', None, '37.80400', '-83.29850'), ('PEKIN', None, '37.88090', '-83.38260'), ('POMP', None, '37.95940', '-83.28170'), ('RELIEF', None, '37.94640', '-82.99830'), ('REXVILLE', None, '37.82400', '-83.37090'), ('SALEM', 769, '37.81170', '-83.33340'), ('SELLARS', None, '37.79120', '-83.33700'), ('SILVERHILL', None, '37.90000', '-83.07030'), ('STACY FORK', None, '37.83600', '-83.26740'), ('STEELE', None, '37.97780', '-83.17180'), ('TWENTYSIX', None, '37.94560', '-83.35930'), ('WELL STATION', None, '37.85510', '-83.25010'), ('WEST LIBERTY', 3277, '37.91340', '-83.26570'), ('WHEEL RIM', None, '37.72930', '-83.26370'), ('WHITE OAK', None, '37.85840', '-83.20200'), ('WILLIAMS', None, '37.83890', '-83.19160'), ('WOODSBEND', None, '37.91510', '-83.34390'), ('WRIGLEY', None, '38.01830', '-83.27140'), ('YOCUM', None, '37.98340', '-83.32510'), ('ZOO', None, '37.98620', '-83.36350')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'GAZ086': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GARFIELD', 152, '32.65030', '-82.09650'), ('NUNEZ', 131, '32.49170', '-82.34670'), ('OAK PARK', 366, '32.35790', '-82.31470'), ('STILLMORE', 730, '32.44100', '-82.21480'), ('SUMMERTOWN', 140, '32.74640', '-82.27630'), ('SWAINSBORO', 6943, '32.59010', '-82.33610'), ('TWIN CITY', 1752, '32.58460', '-82.15770')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAZ087': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BIRDSVILLE', None, '32.87140', '-82.07810'), ('BUTTS', None, '32.72580', '-82.02640'), ('EMMALANE', None, '32.75970', '-81.99830'), ('FOUR POINTS', None, '32.67170', '-81.99330'), ('HERNDON', None, '32.82030', '-82.12940'), ('LAWTON', None, '32.87170', '-81.94560'), ('MILLEN', 3492, '32.80390', '-81.94940'), ('PERKINS', None, '32.90940', '-81.95310'), ('ROGERS', None, '32.81920', '-82.07390'), ('SCARBORO', None, '32.71310', '-81.87560'), ('THRIFT', None, '32.69890', '-82.05610')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'UTZ003': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BLUFFDALE', 4700, '40.47600', '-111.95550'), ('CLOVER', None, '40.33000', '-112.47000'), ('COPPERTON', None, '40.57000', '-112.10000'), ('COTTONWOOD HEIGHTS', 27569, '40.61010', '-111.80960'), ('DRAPER', 25220, '40.49940', '-111.86370'), ('ERDA', 2473, '40.61000', '-112.32180'), ('FAUST', None, '40.18000', '-112.38000'), ('GRANTSVILLE', 6015, '40.59000', '-112.46750'), ('HERRIMAN', 1523, '40.52000', '-112.03000'), ('HOLLADAY', 14561, '40.67000', '-111.82000'), ('KEARNS', 33659, '40.65250', '-112.00830'), ('LAKE PT', None, '40.67000', '-112.27000'), ('LOFGREEN', None, '40.02000', '-112.32000'), ('MAGNA', 22770, '40.70400', '-112.08620'), ('MIDVALE', 27029, '40.61180', '-111.90230'), ('MURRAY', 34024, '40.65250', '-111.89250'), ('RIVERTON', 25011, '40.51970', '-111.94520'), ('SALT LAKE CITY', 181743, '40.77730', '-111.87000'), ('SANDY', 88418, '40.56970', '-111.85430'), ('SLC ARPT #2', None, '40.61670', '-112.00000'), ('SLC INTL ARPT', None, '40.78330', '-111.96670'), ('SOUTH JORDAN', 29437, '40.55880', '-111.97320'), ('SOUTH SALT LAKE', 22038, '40.71020', '-111.88680'), ('STANSBURY PARK', 2385, '40.63800', '-112.30340'), ('STOCKTON', 443, '40.45270', '-112.36200'), ('TAYLORSVILLE', 57439, '40.67000', '-111.93000'), ('VERNON', 236, '40.09130', '-112.44980'), ('WEST JORDAN', 68336, '40.59990', '-111.99460'), ('WEST VALLEY CITY', 108896, '40.69090', '-112.00860')], 'partOfState': '', 'wfo': 'SLC'}, -'IDZ032': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ARCO', 1026, '43.63410', '-113.29980'), ('BERENICE', None, '43.83000', '-112.99000'), ('CHALLIS', 909, '44.50770', '-114.22390'), ('CHILLY', None, '44.08000', '-113.87000'), ('DARLINGTON', None, '43.82000', '-113.42000'), ('DICKEY', None, '44.13000', '-113.90000'), ('GOLDBURG', None, '44.38000', '-113.63000'), ('GROUSE', None, '43.68000', '-113.62000'), ('HOWE', None, '43.78000', '-113.00000'), ('LOST RIVER', 26, '43.72190', '-113.54410'), ('MACKAY', 566, '43.91200', '-113.61090'), ('MOORE', 196, '43.73410', '-113.36610')], 'partOfState': 'CENTRAL', 'wfo': 'PIH'}, -'IDZ030': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('HOLLISTER', 237, '42.35380', '-114.58720'), ('ROGERSON', None, '42.21780', '-114.59190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BOI'}, -'IDZ031': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BELLEVUE', 1876, '43.46590', '-114.25740'), ('GALENA', None, '43.87000', '-114.65000'), ('GANNETT', None, '43.35000', '-114.18000'), ('HAILEY', 6200, '43.51170', '-114.29920'), ('KETCHUM', 3003, '43.68880', '-114.37520'), ('MAGIC CITY', None, '43.28000', '-114.37000'), ('SUN VALLEY', 1427, '43.68150', '-114.32840')], 'partOfState': 'CENTRAL', 'wfo': 'PIH'}, -'KYZ035': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FORKS OF ELKHORN', None, '38.21670', '-84.80000'), ('FRANKFORT', 27741, '38.19080', '-84.86520'), ('SWITZER', None, '38.25000', '-84.75000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ034': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BAGDAD', None, '38.26670', '-85.05000'), ('CHESTNUT GROVE', None, '38.30000', '-85.26670'), ('CROPPER', None, '38.31670', '-85.11670'), ('FINCHVILLE', None, '38.15000', '-85.31670'), ('GRAEFENBURG', None, '38.15000', '-85.03000'), ('HARRISONVILLE', None, '38.08330', '-85.06670'), ('PEYTONA', None, '38.18330', '-85.06670'), ('SHELBYVILLE', 10085, '38.21760', '-85.23120'), ('SIMPSONVILLE', 1281, '38.21830', '-85.35310'), ('SOUTHVILLE', None, '38.11670', '-85.18330'), ('TODDS POINT', None, '38.28330', '-85.35000'), ('WADDY', None, '38.13330', '-85.06670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ037': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BERRY', 310, '38.52040', '-84.38420'), ('BRECKINRIDGE', None, '38.43330', '-84.36670'), ('COLVILLE', None, '38.37000', '-84.21000'), ('CONNERSVILLE', None, '38.38330', '-84.41670'), ('CYNTHIANA', 6258, '38.38640', '-84.29530'), ('KELAT', None, '38.51670', '-84.30000'), ('LEESBURG', None, '38.30000', '-84.41670'), ('ODDVILLE', None, '38.45000', '-84.23330'), ('SUNRISE', None, '38.53330', '-84.23330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ036': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DAVIS', None, '38.36670', '-84.47000'), ('GEORGETOWN', 18080, '38.20520', '-84.55220'), ('NEW ZION', None, '38.19000', '-84.48330'), ('NEWTOWN', None, '38.21670', '-84.46670'), ('OXFORD', None, '38.26670', '-84.53330'), ('SADIEVILLE', 263, '38.39130', '-84.53650'), ('SAND LICK', None, '38.25000', '-84.71670'), ('STAMPING GROUND', 566, '38.27000', '-84.68610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ031': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BALLARDSVILLE', None, '38.36670', '-85.35000'), ('BROWNSBORO', None, '38.35000', '-85.50000'), ('BUCKNER', 4000, '38.38330', '-85.43330'), ('CRESTWOOD', 1999, '38.33790', '-85.48070'), ('GOSHEN', 907, '38.40860', '-85.59160'), ('LA GRANGE', 5676, '38.40280', '-85.37860'), ('PEWEE VALLEY', 1436, '38.31200', '-85.48930'), ('SKYLIGHT', None, '38.43330', '-85.53330'), ('WESTPORT', None, '38.48330', '-85.46670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ030': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ANCHORAGE', 2264, '38.27020', '-85.53810'), ('FAIRDALE', 7658, '38.11180', '-85.75750'), ('FERN CREEK', 17870, '38.15830', '-85.59670'), ('HIGHVIEW', 15161, '38.14020', '-85.63500'), ('JEFFERSONTOWN', 26633, '38.20560', '-85.57090'), ('LOUISVILLE', 256231, '38.22480', '-85.74120'), ('LYNDON', 9369, '38.26440', '-85.58930'), ('MIDDLETOWN', 5744, '38.24250', '-85.51960'), ('OKOLONA', 17807, '38.13900', '-85.68600'), ('PLEASURE RIDGE PARK', 25776, '38.15370', '-85.85290'), ('PROSPECT', 4657, '38.34780', '-85.60930'), ('SHIVELY', 15157, '38.19590', '-85.81320'), ('ST. MATTHEWS', 15852, '38.24920', '-85.63780'), ('VALLEY STATION', 22946, '38.10350', '-85.85860')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ033': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHLEHEM', None, '38.40000', '-85.06670'), ('CAMPBELLSBURG', 705, '38.52620', '-85.20680'), ('DEFOE', None, '38.34500', '-85.05000'), ('EMINENCE', 2231, '38.36540', '-85.17430'), ('LOCKPORT', None, '38.43330', '-84.98000'), ('NEW CASTLE', 919, '38.43370', '-85.17110'), ('PLEASUREVILLE', 869, '38.35190', '-85.11160'), ('PORT ROYAL', None, '38.55000', '-85.08330'), ('SLIGO', None, '38.48330', '-85.31670'), ('SMITHFIELD', 102, '38.38790', '-85.25730'), ('SULPHUR', None, '38.48330', '-85.26670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ032': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHLEHEM', None, '38.53330', '-85.41670'), ('BEDFORD', 677, '38.59300', '-85.31690'), ('MILTON', 525, '38.71210', '-85.37430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ039': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALTON', None, '38.08330', '-84.93330'), ('GLENSBORO', None, '38.00000', '-85.06670'), ('JOHNSONVILLE', None, '37.93330', '-85.10000'), ('LAWRENCEBURG', 9014, '38.03480', '-84.89450'), ('TYRONE', None, '38.03330', '-84.85000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ038': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ELK CREEK', None, '38.10000', '-85.36670'), ('LITTLE MOUNT', None, '38.06670', '-85.25000'), ('MT. EDEN', None, '38.05000', '-85.15000'), ('TAYLORSVILLE', 1009, '38.03480', '-85.34380'), ('WAKEFIELD', None, '37.96670', '-85.30000'), ('WATERFORD', None, '38.03330', '-85.43330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'WIZ059': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('GERMANTOWN', 18260, '43.23610', '-88.12030'), ('HARTFORD', 10905, '43.32370', '-88.38880'), ('JACKSON', 4938, '43.32090', '-88.16390'), ('KEWASKUM', 3274, '43.52190', '-88.23040'), ('NEWBURG', 1119, '43.43140', '-88.04750'), ('SLINGER', 3901, '43.33210', '-88.28570'), ('WEST BEND', 28152, '43.42280', '-88.18420')], 'partOfState': 'SOUTHEAST', 'wfo': 'MKX'}, -'NMZ013': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('FORREST', None, '34.79500', '-103.60100'), ('GLENRIO', None, '35.17900', '-103.04200'), ('HOUSE', 72, '34.64800', '-103.90330'), ('LOGAN', 1094, '35.36100', '-103.44340'), ('MCALISTER', None, '34.69200', '-103.77600'), ('MONTOYA', None, '35.10000', '-104.06300'), ('NARA VISA', None, '35.60800', '-103.09900'), ('QUAY', None, '34.93400', '-103.76000'), ('RAGLAND', None, '34.82300', '-103.74200'), ('SAN JON', 306, '35.11300', '-103.32750'), ('TUCUMCARI', 5989, '35.16740', '-103.72750'), ('WHEATLAND', None, '34.90900', '-103.35400')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ABQ'}, -'COZ080': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('GREENHORN MTN', None, '37.89000', '-105.02000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'IAZ049': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBION', 592, '42.11280', '-92.98920'), ('CLEMONS', 148, '42.11320', '-93.15820'), ('FERGUSON', 126, '41.93840', '-92.86340'), ('GILMAN', 600, '41.87860', '-92.78780'), ('HAVERHILL', 170, '41.94410', '-92.96120'), ('LAUREL', 266, '41.88380', '-92.92130'), ('LE GRAND', 883, '42.00720', '-92.77510'), ('LISCOMB', 272, '42.19060', '-93.00550'), ('MARSHALLTOWN', 26009, '42.03550', '-92.91180'), ('MELBOURNE', 794, '41.94180', '-93.10220'), ('RHODES', 294, '41.92740', '-93.18400'), ('ST. ANTHONY', 109, '42.12440', '-93.19780'), ('STATE CENTER', 1349, '42.01530', '-93.16540')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ033': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AUBURN', 296, '42.24990', '-94.87690'), ('EARLY', 605, '42.46090', '-95.15250'), ('LAKE VIEW', 1278, '42.30620', '-95.04660'), ('LYTTON', 305, '42.42340', '-94.87000'), ('NEMAHA', 102, '42.51500', '-95.08770'), ('ODEBOLT', 1153, '42.31150', '-95.25380'), ('SAC CITY', 2368, '42.42210', '-94.99730'), ('SCHALLER', 779, '42.49570', '-95.29540'), ('WALL LAKE', 841, '42.26960', '-95.09300')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'IAZ032': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARTHUR', 245, '42.33520', '-95.34640'), ('BATTLE CREEK', 743, '42.31690', '-95.59930'), ('CUSHING', 246, '42.46510', '-95.67610'), ('GALVA', 368, '42.50620', '-95.41630'), ('HOLSTEIN', 1470, '42.48680', '-95.54230'), ('IDA GROVE', 2350, '42.34440', '-95.47290')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ031': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANTHON', 649, '42.38770', '-95.86610'), ('BRONSON', 269, '42.40950', '-96.21130'), ('CORRECTIONVILLE', 851, '42.47820', '-95.78340'), ('DANBURY', 384, '42.23720', '-95.72150'), ('HORNICK', 253, '42.23100', '-96.09630'), ('LAWTON', 697, '42.47890', '-96.18440'), ('MOVILLE', 1583, '42.48960', '-96.06680'), ('OTO', 145, '42.28150', '-95.89380'), ('PIERSON', 371, '42.54370', '-95.86690'), ('SALIX', 370, '42.30950', '-96.28660'), ('SERGEANT BLUFF', 3321, '42.40070', '-96.35560'), ('SIOUX CITY', 85013, '42.50020', '-96.39400'), ('SLOAN', 1032, '42.23430', '-96.22410'), ('SMITHLAND', 221, '42.22910', '-95.93160')], 'partOfState': 'NORTHWEST', 'wfo': 'FSD'}, -'IAZ030': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEULA', None, '43.01290', '-91.31840'), ('CLAYTON', 55, '42.90230', '-91.15000'), ('CLAYTON CENTER', None, '42.88094', '-91.31656'), ('COMMUNIA', None, '42.78196', '-91.36422'), ('ELKADER', 1465, '42.85600', '-91.40280'), ('ELKPORT', 88, '42.74110', '-91.27540'), ('FARMERSBURG', 300, '42.95850', '-91.36740'), ('FROELICH', None, '42.99824', '-91.33306'), ('GARBER', 103, '42.74390', '-91.26290'), ('GARNAVILLO', 754, '42.86780', '-91.23640'), ('GIARD', None, '42.99824', '-91.29824'), ('GUNDER', None, '42.96158', '-91.51818'), ('GUTTENBERG', 1987, '42.78790', '-91.10410'), ('HARDIN', None, '43.08255', '-91.49985'), ('HIGHLAND', None, '42.89743', '-91.60066'), ('LITTLEPORT', 26, '42.75310', '-91.36900'), ('LUANA', 249, '43.06090', '-91.45500'), ('MARQUETTE', 421, '43.04290', '-91.18400'), ('MCGREGOR', 871, '43.02290', '-91.18070'), ('MEDERVILLE', None, '42.76363', '-91.41921'), ('MILLVILLE', 23, '42.70480', '-91.07720'), ('MONONA', 1550, '43.05130', '-91.39040'), ('NATIONAL', None, '42.94875', '-91.28357'), ('NORTH BUENA VISTA', 124, '42.68250', '-90.95640'), ('OSBORNE', None, '42.80029', '-91.43570'), ('OSTERDOCK', 50, '42.73250', '-91.15860'), ('ST. OLAF', 136, '42.92770', '-91.38710'), ('STRAWBERRY POINT', 1386, '42.68300', '-91.53550'), ('VOLGA', 247, '42.80250', '-91.54290'), ('WATSON', None, '43.08072', '-91.33489')], 'partOfState': 'NORTHEAST', 'wfo': 'ARX'}, -'IAZ037': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ACKLEY', 1809, '42.55150', '-93.05190'), ('ALDEN', 904, '42.51240', '-93.37900'), ('BUCKEYE', 110, '42.41840', '-93.37590'), ('ELDORA', 3035, '42.36020', '-93.10110'), ('HUBBARD', 885, '42.30610', '-93.30050'), ('IOWA FALLS', 5193, '42.52080', '-93.26580'), ('NEW PROVIDENCE', 227, '42.28190', '-93.17230'), ('OWASA', 38, '42.43110', '-93.20510'), ('RADCLIFFE', 607, '42.31810', '-93.43460'), ('STEAMBOAT ROCK', 336, '42.40800', '-93.06610'), ('UNION', 427, '42.24290', '-93.06260'), ('WHITTEN', 160, '42.26480', '-93.01140')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ036': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLAIRSBURG', 235, '42.47950', '-93.64260'), ('ELLSWORTH', 531, '42.31060', '-93.58180'), ('JEWELL', None, '42.31130', '-93.63860'), ('KAMRAR', 229, '42.39170', '-93.72740'), ('RANDALL', 148, '42.23720', '-93.60300'), ('STANHOPE', 488, '42.28860', '-93.79500'), ('STRATFORD', 746, '42.27100', '-93.92760'), ('WEBSTER CITY', 8176, '42.46340', '-93.81650'), ('WILLIAMS', 427, '42.49010', '-93.54160')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ035': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BADGER', 610, '42.61230', '-94.14260'), ('BARNUM', 195, '42.50670', '-94.36430'), ('CALLENDER', 424, '42.36220', '-94.29560'), ('CLARE', 190, '42.58770', '-94.34460'), ('DAYTON', 884, '42.26170', '-94.07150'), ('DUNCOMBE', 474, '42.46990', '-93.99600'), ('FORT DODGE', 25136, '42.50790', '-94.17680'), ('GOWRIE', 1038, '42.27680', '-94.28850'), ('HARCOURT', 340, '42.26100', '-94.17500'), ('LEHIGH', 497, '42.35590', '-94.05310'), ('MOORLAND', 197, '42.44100', '-94.29410'), ('OTHO', 571, '42.42090', '-94.14760'), ('VINCENT', 158, '42.59130', '-94.01790')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ034': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FARNHAMVILLE', 430, '42.27750', '-94.41500'), ('JOLLEY', 54, '42.47930', '-94.71790'), ('KNIERIM', 70, '42.45610', '-94.45630'), ('LAKE CITY', 1787, '42.26770', '-94.73060'), ('LOHRVILLE', 431, '42.26800', '-94.55090'), ('MANSON', 1893, '42.52870', '-94.53930'), ('POMEROY', 710, '42.55350', '-94.67850'), ('RINARD', 72, '42.33950', '-94.48650'), ('ROCKWELL CITY', 2264, '42.39840', '-94.63100'), ('SOMERS', 165, '42.37790', '-94.43080'), ('YETTER', 36, '42.31650', '-94.84360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'GAZ082': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MACON', 97255, '32.83680', '-83.65680'), ('PAYNE', 178, '32.85040', '-83.67880')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'NYZ043': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('FORT ANN', 471, '43.41500', '-73.49060'), ('GRANVILLE', 2644, '43.40830', '-73.26100'), ('HULETTS LANDING', None, '43.64080', '-73.50930'), ('WHITEHALL', 2667, '43.56020', '-73.41840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'IAZ039': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CEDAR FALLS', 36145, '42.52060', '-92.45280'), ('DUNKERTON', 749, '42.56830', '-92.15990'), ('ELK RUN HEIGHTS', 1052, '42.46710', '-92.24930'), ('EVANSDALE', 4526, '42.46180', '-92.27560'), ('GILBERTVILLE', 767, '42.41870', '-92.21370'), ('HUDSON', 2117, '42.42330', '-92.45470'), ('LA PORTE CITY', 2275, '42.31310', '-92.19120'), ('RAYMOND', 537, '42.46690', '-92.22820'), ('WATERLOO', 68747, '42.49160', '-92.35110')], 'partOfState': 'NORTHEAST', 'wfo': 'DMX'}, -'IAZ038': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEAMAN', 210, '42.22000', '-92.82280'), ('CONRAD', 1055, '42.22400', '-92.87360'), ('DIKE', 944, '42.46310', '-92.63010'), ('GRUNDY CENTER', 2596, '42.36300', '-92.77470'), ('HOLLAND', 250, '42.39970', '-92.79930'), ('MORRISON', 97, '42.34340', '-92.67290'), ('REINBECK', 1751, '42.32220', '-92.59850'), ('STOUT', 217, '42.52710', '-92.71120'), ('WELLSBURG', 716, '42.43380', '-92.92440')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'LAZ001': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BELCHER', 272, '32.75330', '-93.83510'), ('BLANCHARD', 2050, '32.59200', '-93.88610'), ('GILLIAM', 178, '32.82730', '-93.84270'), ('GREENWOOD', 2458, '32.44140', '-93.97380'), ('HOSSTON', 387, '32.88370', '-93.88280'), ('IDA', 258, '33.00210', '-93.89500'), ('MOORINGSPORT', 833, '32.68280', '-93.96160'), ('OIL CITY', 1219, '32.74470', '-93.97490'), ('RODESSA', 307, '32.97170', '-93.99200'), ('SHREVEPORT', 200145, '32.47160', '-93.79780'), ('VIVIAN', 4031, '32.87310', '-93.98670')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAZ003': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('COTTON VALLEY', 1189, '32.81270', '-93.42300'), ('CULLEN', 1296, '32.97010', '-93.44630'), ('DIXIE INN', 352, '32.59400', '-93.33500'), ('DOYLINE', 841, '32.51890', '-93.41590'), ('DUBBERLY', 290, '32.53950', '-93.23760'), ('HEFLIN', 245, '32.45790', '-93.26740'), ('MINDEN', 13027, '32.61660', '-93.28080'), ('SAREPTA', 925, '32.89520', '-93.45140'), ('SHONGALOO', 162, '32.94040', '-93.29380'), ('SIBLEY', 1098, '32.54370', '-93.29410'), ('SPRINGHILL', 5439, '33.00210', '-93.46130')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAZ002': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BENTON', 2035, '32.69190', '-93.74010'), ('BOSSIER CITY', 56461, '32.51860', '-93.66380'), ('EASTWOOD', 3374, '32.56170', '-93.56620'), ('HAUGHTON', 2792, '32.53010', '-93.50630'), ('PLAIN DEALING', 1071, '32.90680', '-93.69890'), ('RED CHUTE', 5984, '32.57350', '-93.61160')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAZ005': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CHOUDRANT', 582, '32.53030', '-92.51770'), ('DOWNSVILLE', 118, '32.62700', '-92.41430'), ('DUBACH', 800, '32.69800', '-92.65600'), ('GRAMBLING', 4693, '32.52700', '-92.71160'), ('RUSTON', 20546, '32.53180', '-92.63960'), ('SIMSBORO', 684, '32.53320', '-92.78300'), ('VIENNA', 424, '32.60860', '-92.65180')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAZ004': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ATHENS', 262, '32.65110', '-93.02590'), ('HAYNESVILLE', 2679, '32.96690', '-93.13780'), ('HOMER', 3788, '32.79360', '-93.05870'), ('JUNCTION CITY', 652, '33.00900', '-92.72280'), ('LISBON', 162, '32.78810', '-92.86550')], 'partOfState': 'NORTHWEST', 'wfo': 'SHV'}, -'LAZ007': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BASTROP', 12988, '32.77450', '-91.90930'), ('BONITA', 335, '32.91990', '-91.67490'), ('COLLINSTON', 327, '32.68880', '-91.87150'), ('MER ROUGE', 721, '32.77690', '-91.79430'), ('OAK RIDGE', 142, '32.62470', '-91.77330')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAZ006': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BERNICE', 1809, '32.82730', '-92.65920'), ('FARMERVILLE', 3808, '32.77390', '-92.40050'), ('LILLIE', 139, '32.92020', '-92.66140'), ('MARION', 806, '32.89980', '-92.23950'), ('SPEARSVILLE', 155, '32.93540', '-92.60390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAZ009': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('LAKE PROVIDENCE', 5104, '32.81060', '-91.18440')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'MSZ056': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MIZE', 285, '31.86720', '-89.55430'), ('POLKVILLE', 132, '32.19150', '-89.69250'), ('RALEIGH', 1255, '32.03040', '-89.52360'), ('SYLVARENA', 120, '32.01300', '-89.38040'), ('TAYLORSVILLE', 1341, '31.83100', '-89.43200')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSZ055': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BRAXTON', 181, '32.02470', '-89.97220'), ("D'LO", 394, '31.98650', '-89.90100'), ('MAGEE', 4200, '31.87120', '-89.73120'), ('MENDENHALL', 2555, '31.96070', '-89.86940')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSZ054': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BEAUREGARD', 265, '31.72140', '-90.38800'), ('CRYSTAL SPRINGS', 5873, '31.98970', '-90.35500'), ('GEORGETOWN', 344, '31.86980', '-90.16480'), ('HAZLEHURST', 4400, '31.86480', '-90.39130'), ('WESSON', 1693, '31.70050', '-90.39670')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'MSZ053': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('PORT GIBSON', 1840, '31.95510', '-90.98340')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'ARZ056': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALTHEIMER', 1192, '34.31890', '-91.84620'), ('HUMPHREY', 806, '34.42260', '-91.70230'), ('PINE BLUFF', 55085, '34.21340', '-92.01860'), ('REDFIELD', 1157, '34.44190', '-92.18390'), ('SHERRILL', 126, '34.38470', '-91.95070'), ('WABBASEKA', 323, '34.36030', '-91.79270'), ('WHITE HALL', 4732, '34.27560', '-92.09780')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'MSZ051': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CHUNKY', 344, '32.32710', '-88.92970'), ('CONEHATTA', 997, '32.45740', '-89.27110'), ('DECATUR', 1426, '32.43820', '-89.11090'), ('HICKORY', 499, '32.31650', '-89.02110'), ('NEWTON', 3699, '32.31970', '-89.15890'), ('UNION', 2021, '32.57150', '-89.11630')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'MSZ050': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('FOREST', 5987, '32.35690', '-89.47400'), ('LAKE', 408, '32.34310', '-89.32740'), ('MORTON', 3482, '32.35550', '-89.65640'), ('SEBASTOPOL', 233, '32.56910', '-89.33380')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'TNZ039': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALPHA', None, '36.17580', '-83.38420'), ('LOWLAND', None, '36.15250', '-83.20860'), ('MORRISTOWN', 24965, '36.21460', '-83.29600'), ('RUSSELLVILLE', None, '36.25780', '-83.19610')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ038': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BEAN STATION', None, '36.34190', '-83.28470'), ('BLAINE', 1585, '36.14440', '-83.69490'), ('BUFFALO SPRINGS', None, '36.21640', '-83.56500'), ('JOPPA', None, '36.23610', '-83.61640'), ('RUTLEDGE', 1187, '36.27420', '-83.52480'), ('THORN HILL', None, '36.35720', '-83.41860')], 'partOfState': '', 'wfo': 'MRX'}, -'KSZ028': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('MONUMENT', None, '39.10000', '-101.00000'), ('OAKLEY', 2173, '39.12580', '-100.85410'), ('RUSSELL SPRINGS', 32, '38.91230', '-101.17550'), ('WINONA', 228, '39.06160', '-101.24460')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'KSZ029': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GOVE', None, '38.95970', '-100.48950'), ('GRAINFIELD', 327, '39.11410', '-100.46860'), ('GRINNELL', 329, '39.12490', '-100.63070'), ('PARK', 151, '39.11230', '-100.36170'), ('QUINTER', 961, '39.06660', '-100.23370'), ('THE MONUMENT ROCKS', None, '38.77000', '-100.77000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'GAZ083': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DANVILLE', 373, '32.60550', '-83.24610'), ('JEFFERSONVILLE', 1209, '32.68690', '-83.34420')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'LAZ035': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('SPILLMAN', None, '30.92970', '-91.28360'), ('ST. FRANCISVILLE', 1712, '30.78360', '-91.37910'), ('WAKEFIELD', None, '30.88920', '-91.35000')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'TNZ033': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LIVINGSTON', 3498, '36.38870', '-85.32750')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ032': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALGOOD', 2942, '36.19770', '-85.44720'), ('BAXTER', 1279, '36.15430', '-85.63830'), ('COOKEVILLE', 23923, '36.15690', '-85.50540'), ('MONTEREY', 2717, '36.13300', '-85.24430')], 'partOfState': '', 'wfo': 'OHX'}, -'KSZ026': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GRANTVILLE', None, '39.08330', '-95.56110'), ('MCLOUTH', 868, '39.19580', '-95.20810'), ('MERIDEN', 706, '39.18890', '-95.56940'), ('NORTONVILLE', 620, '39.40670', '-95.33330'), ('OSKALOOSA', 1165, '39.21530', '-95.31250'), ('OZAWKIE', 552, '39.23330', '-95.46670'), ('PERRY', 901, '39.07580', '-95.39310'), ('PERRY LAKE', None, '39.19000', '-95.47000'), ('VALLEY FALLS', 1254, '39.34330', '-95.46000'), ('VALLEY FALLS', 1254, '39.34330', '-95.46000'), ('WILLIAMSTOWN', None, '39.06280', '-95.33250'), ('WINCHESTER', 579, '39.32220', '-95.26670')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'TNZ030': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CARTHAGE', 2251, '36.25680', '-85.94370'), ('GORDONSVILLE', 1066, '36.18310', '-85.93260'), ('SOUTH CARTHAGE', 1302, '36.24070', '-85.95800')], 'partOfState': '', 'wfo': 'OHX'}, -'KSZ020': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AURORA', 79, '39.45200', '-97.52700'), ('CLYDE', 740, '39.59110', '-97.39860'), ('CONCORDIA', 5714, '39.57080', '-97.66220'), ('GLASCO', 536, '39.35670', '-97.84080'), ('JAMESTOWN', 399, '39.59950', '-97.86080'), ('MILTONVALE', 523, '39.34830', '-97.44580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'TNZ036': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CLINTON', 9409, '36.09080', '-84.13050'), ('LAKE CITY', 1888, '36.22420', '-84.15600'), ('NORRIS', 1446, '36.21310', '-84.06100'), ('ROSEDALE', None, '36.17030', '-84.35170')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ035': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DEERLODGE', None, '36.19920', '-84.76190'), ('HIGH POINT', None, '36.14860', '-84.82830'), ('OAKDALE', 244, '35.98880', '-84.55790'), ('PETROS', None, '36.09190', '-84.44670'), ('PINE ORCHARD', None, '35.96610', '-84.65580'), ('RUGBY', None, '36.35860', '-84.70440'), ('SUNBRIGHT', 577, '36.24170', '-84.67170'), ('WARTBURG', 890, '36.10340', '-84.58820')], 'partOfState': '', 'wfo': 'MRX'}, -'KSZ023': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELVUE', 228, '39.21670', '-96.17780'), ('BLAINE', None, '39.49670', '-96.40280'), ('EMMETT', 277, '39.30720', '-96.05580'), ('HAVENSVILLE', 146, '39.51110', '-96.07780'), ('LOUISVILLE', 209, '39.25030', '-96.31450'), ('OLSBURG', 192, '39.43060', '-96.61530'), ('ONAGA', 704, '39.48890', '-96.16970'), ('ST. GEORGE', 434, '39.19110', '-96.42000'), ('ST. MARYS', 2198, '39.19420', '-96.07080'), ('TUTTLE CREEK LAKE', None, '39.31000', '-96.64000'), ('WAMEGO', 4246, '39.20200', '-96.30470'), ('WESTMORELAND', 631, '39.40000', '-96.41670'), ('WHEATON', 92, '39.50220', '-96.32060')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'ARZ063': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('JAY', 2482, '36.42110', '-94.79670'), ('LEACH', 220, '36.20470', '-94.92220'), ('TWIN OAKS', 186, '36.20530', '-94.85110'), ('KANSAS', 685, '36.20500', '-94.79750'), ('COLCORD', 819, '36.26420', '-94.69280'), ('CHLOETA', None, '36.42310', '-94.97060'), ('ZENA', 123, '36.49610', '-94.85330'), ('CLEORA', 1113, '36.57890', '-94.97080'), ('GROVE', 5131, '36.59360', '-94.76890'), ('BERNICE', 504, '36.61580', '-94.91750'), ('WEST SILOAM SPRINGS', 877, '36.17610', '-94.57470'), ('MAYSVILLE', None, '36.40360', '-94.60170')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'VAZ072': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AYLETT', None, '37.77000', '-77.12000'), ('BEULAHVILLE', None, '37.85510', '-77.17900'), ('CALNO', None, '37.81310', '-77.30170'), ('CENTRAL GARAGE', None, '37.74420', '-77.13150'), ('COHOKE', None, '37.57940', '-76.94670'), ('COOKE', None, '37.57920', '-76.94640'), ('DUANE FORK', None, '37.87440', '-77.23070'), ('ENFIELD', None, '37.74530', '-77.21860'), ('EPWORTH', None, '37.79080', '-77.21220'), ('ETNA MILLS', None, '37.76560', '-77.26610'), ('GLOBE', None, '37.81220', '-77.20000'), ('KING WILLIAM', None, '37.68720', '-77.01360'), ('LANESVILLE', None, '37.61440', '-76.97890'), ('MANGOHICK', None, '37.81000', '-77.27350'), ('MANQUIN', None, '37.70890', '-77.15420'), ('PALLS', None, '37.64430', '-77.05470'), ('POLLARDS CORNER', None, '37.79010', '-77.18500'), ('ROMANCOKE', None, '37.57780', '-76.84520'), ('ROSE GARDEN', None, '37.63250', '-76.93450'), ('RUMFORD', None, '37.72450', '-77.08980'), ('TURPIN', None, '37.76110', '-77.14720'), ('UPSHAW', None, '37.79390', '-77.14720'), ('WEST POINT', 2866, '37.55230', '-76.80030')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'OKZ043': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CENTRAHOMA', 110, '34.60920', '-96.34350'), ('CLARITA', None, '34.48000', '-96.43000'), ('COALGATE', 2005, '34.53360', '-96.21850'), ('COTTONWOOD', None, '34.55000', '-96.20000'), ('LEHIGH', 315, '34.46980', '-96.22050'), ('OLNEY', None, '34.47000', '-96.35000'), ('PHILLIPS', 150, '34.50230', '-96.22390'), ('TUPELO', 377, '34.60210', '-96.42020')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'ARZ061': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLUFF CITY', 158, '33.71720', '-93.13310'), ('BODCAW', 154, '33.55660', '-93.40110'), ('CALE', 75, '33.62790', '-93.23310'), ('EMMET', 506, '33.72210', '-93.46620'), ('PRESCOTT', 3686, '33.80070', '-93.38800'), ('ROSSTON', 265, '33.58690', '-93.27600'), ('WILLISVILLE', 188, '33.51850', '-93.29480')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'TXZ159': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELLMEAD', 9214, '31.60050', '-97.09140'), ('BEVERLY HILLS', 2113, '31.52180', '-97.15600'), ('BRUCEVILLE-EDDY', 1490, '31.30580', '-97.24850'), ('CRAWFORD', 705, '31.53380', '-97.44010'), ('GHOLSON', 922, '31.71170', '-97.23680'), ('HALLSBURG', 518, '31.54580', '-96.94680'), ('HEWITT', 11085, '31.45110', '-97.19360'), ('LACY-LAKEVIEW', 5764, '31.61990', '-97.10760'), ('LEROY', 335, '31.73160', '-97.02000'), ('LORENA', 1433, '31.38230', '-97.21270'), ('MART', 2273, '31.54140', '-96.83000'), ('MCGREGOR', 4727, '31.45400', '-97.37730'), ('MOODY', 1400, '31.30840', '-97.36020'), ('NORTHCREST', None, '31.63940', '-97.09740'), ('RIESEL', 973, '31.47390', '-96.93080'), ('ROBINSON', 7845, '31.44960', '-97.12440'), ('ROSS', 228, '31.72840', '-97.11120'), ('WACO', 113726, '31.56900', '-97.18320'), ('WEST', 2692, '31.80320', '-97.09280'), ('WOODWAY', 8733, '31.49660', '-97.23210')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'ARZ060': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLEVINS', 365, '33.87110', '-93.57720'), ('FULTON', 245, '33.61190', '-93.81430'), ('HOPE', 10616, '33.66820', '-93.59120'), ('MCCASKILL', 84, '33.91760', '-93.64110'), ('MCNAB', 37, '33.66070', '-93.83220'), ('OAKHAVEN', 54, '33.72910', '-93.62000'), ('OZAN', 81, '33.84730', '-93.71940'), ('PATMOS', 61, '33.51190', '-93.56670'), ('PERRYTOWN', 255, '33.69650', '-93.53260'), ('WASHINGTON', 148, '33.77310', '-93.68300')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'NYZ017': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AUBURN', 28574, '42.93320', '-76.56890'), ('AURORA', 720, '42.75220', '-76.69890'), ('CASCADE', None, '42.75000', '-76.46670'), ('CASOWASCO', None, '42.78330', '-76.48330'), ('CAYUGA', 509, '42.91940', '-76.72830'), ('COMO', None, '42.68330', '-76.26670'), ('DRESSERVILLE', None, '42.70000', '-76.31670'), ('EAST GENOA', None, '42.65000', '-76.50000'), ('EAST VENICE', None, '42.68330', '-76.50000'), ('EDGEWATER', None, '42.76670', '-76.48330'), ('ENSENORE', None, '42.78330', '-76.50000'), ('FLEMING', None, '42.86670', '-76.55000'), ('FOSTERVILLE', None, '42.95000', '-76.66670'), ('GENOA', None, '42.66670', '-76.53330'), ('KELLOGGSVILLE', None, '42.78330', '-76.35000'), ('KING FERRY', None, '42.66670', '-76.61670'), ('LEDYARD', None, '42.70000', '-76.61670'), ('LEVANNA', None, '42.78330', '-76.68330'), ('LOCKE', None, '42.66670', '-76.41670'), ('MAPLETON', None, '42.85000', '-76.58330'), ('MELROSE PARK', 2359, '42.90230', '-76.52830'), ('MERRIFIELD', None, '42.78330', '-76.56670'), ('MONTEZUMA', None, '43.01670', '-76.71670'), ('MONTVILLE', None, '42.71670', '-76.40000'), ('MORAVIA', 1363, '42.71210', '-76.42250'), ('NEW HOPE', None, '42.80000', '-76.35000'), ('NILES', None, '42.83330', '-76.40000'), ('OWASCO', None, '42.85000', '-76.45000'), ('SCIPIO CENTER', None, '42.78330', '-76.53330'), ('SEMPRONIUS', None, '42.73330', '-76.31670'), ('SENNETT', None, '43.00000', '-76.53330'), ('SHERWOOD', None, '42.75000', '-76.48330'), ('THROOPSVILLE', None, '42.96670', '-76.60000'), ('UNION SPRINGS', 1074, '42.84500', '-76.69330'), ('VENICE CENTER', None, '42.73330', '-76.55000'), ('WILLETS', None, '42.71670', '-76.68330'), ('WYCKOFF', None, '42.83330', '-76.51670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'OKZ046': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALPERS', None, '34.48000', '-97.38000'), ('ARDMORE', 23711, '34.19070', '-97.11970'), ('BAUM', None, '34.25000', '-96.97000'), ('CLEMSCOT', None, '34.35000', '-97.45000'), ('DICKSON', 1139, '34.18870', '-96.99410'), ('DUNDEE', None, '34.23000', '-97.55000'), ('DURWOOD', None, '34.17000', '-96.97000'), ('FOX', None, '34.35000', '-97.48000'), ('GENE AUTRY', 99, '34.28480', '-97.03770'), ('GRAHAM', None, '34.33000', '-97.43000'), ('HEALDTON', 2786, '34.23350', '-97.48680'), ('LONE GROVE', 4631, '34.18980', '-97.27380'), ('MILO', None, '34.33000', '-97.33000'), ('POOLEVILLE', None, '34.42000', '-97.40000'), ('PRUITT', None, '34.41600', '-97.50800'), ('RATLIFF CITY', 131, '34.44860', '-97.51200'), ('SPRINGER', 577, '34.28650', '-97.12040'), ('TATUMS', 172, '34.47940', '-97.46530'), ('TUSSY', None, '34.50000', '-97.54100'), ('WILSON', 1584, '34.15890', '-97.43250'), ('WIRT', None, '34.23000', '-97.53000'), ('WOODFORD', None, '34.33000', '-97.28000')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'OKZ047': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BROMIDE', 163, '34.41780', '-96.49430'), ('COLEMAN', None, '34.27000', '-96.42000'), ('CONNERVILE', None, '34.44700', '-96.63400'), ('EMET', None, '34.20000', '-96.55000'), ('FILLMORE', None, '34.27000', '-96.50000'), ('FOLSOM', None, '34.20000', '-96.42000'), ('MANNSVILLE', 587, '34.18740', '-96.88000'), ('MILBURN', 312, '34.24090', '-96.55160'), ('MILL CREEK', 340, '34.40260', '-96.82490'), ('NIDA', None, '34.15000', '-96.50000'), ('PONTOTOC', None, '34.48000', '-96.62000'), ('RAVIA', 459, '34.24060', '-96.75570'), ('REAGAN', None, '34.35000', '-96.72000'), ('TISHOMINGO', 3162, '34.23910', '-96.67890'), ('TROY', None, '34.32000', '-96.78000'), ('WAPANUCKA', 445, '34.37340', '-96.42440')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'VAZ073': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEAZLEY', None, '37.96470', '-77.07030'), ('BISCOE', None, '37.81820', '-77.05760'), ('BRUINGTON', None, '37.77780', '-76.93620'), ('CLANCIE', None, '37.58030', '-76.69330'), ('CROUCH', None, '37.76220', '-76.89750'), ('DRAGONVILLE', None, '37.70060', '-76.78060'), ('GRESSIT', None, '37.48730', '-76.70840'), ('HENLEY FORK', None, '37.75590', '-76.99060'), ('INDIAN NECK', None, '37.90220', '-77.03310'), ('INO', None, '37.76220', '-76.79810'), ('KING AND QUEEN COURTHOUSE', None, '37.66960', '-76.87760'), ('LITTLE PLYMOUTH', None, '37.62800', '-76.79380'), ('MASCOT', None, '37.62710', '-76.70690'), ('MATTAPONI', None, '37.53420', '-76.77740'), ('NEWTOWN', None, '37.91340', '-77.12810'), ('OWENTON', None, '37.88380', '-77.10050'), ('SAINT STEPHENS CHURCH', None, '37.80340', '-77.05580'), ('SALVIA', None, '37.94920', '-77.13310'), ('SHACKLEFORDS', None, '37.54990', '-76.73420'), ('STEVENSVILLE', None, '37.72760', '-76.92030'), ('VELMA', None, '37.64690', '-76.71610'), ('WALKERTON', None, '37.72680', '-77.02240')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'ARZ065': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ARKANSAS CITY', 589, '33.60880', '-91.20570'), ('DUMAS', 5238, '33.88320', '-91.48590'), ('MCGEHEE', 4570, '33.62540', '-91.39250'), ('MITCHELLVILLE', 497, '33.90590', '-91.49850'), ('WATSON', 288, '33.89360', '-91.25740')], 'partOfState': 'SOUTHEAST', 'wfo': 'LZK'}, -'ORZ010': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BULL RUN', None, '45.43330', '-122.23330'), ('CASCADIA', None, '44.40000', '-122.48300'), ('CHERRYVILLE', None, '45.36660', '-122.13330'), ('CRAWFORDSVILLE', None, '44.35000', '-122.85000'), ('ELKHORN', None, '44.83300', '-122.35000'), ('ESTACADA', 2371, '45.29220', '-122.33330'), ('FOSTER RESERVOIR', None, '44.41000', '-122.64000'), ('GATES', 471, '44.75570', '-122.41950'), ('GREEN PETER RESERVOIR', None, '44.47000', '-122.51000'), ('HOLLEY', None, '44.35000', '-122.78330'), ('JORDAN', None, '44.73330', '-122.68330'), ('LYONS', 1008, '44.77730', '-122.60690'), ('MEHEMA', None, '44.78330', '-122.61660'), ('MILL CITY', 1537, '44.75130', '-122.47710'), ('SANDY', 5385, '45.39960', '-122.26670'), ('SHORTYS CORNER', None, '45.38000', '-122.22000'), ('SILVER FALLS', None, '44.88000', '-122.63000'), ('SNOW PEAK', None, '44.63000', '-122.59000'), ('SWEET HOME', 8016, '44.40170', '-122.70210')], 'partOfState': '', 'wfo': 'PQR'}, -'COZ092': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARAPAHOE', None, '38.85000', '-102.17000'), ('AROYA', None, '38.85000', '-103.13000'), ('CHEYENNE WELLS', 1010, '38.81940', '-102.35080'), ('FIRSTVIEW', None, '38.82000', '-102.53000'), ('KIT CARSON', 253, '38.76310', '-102.79570'), ('WILD HORSE', None, '38.82000', '-103.00000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GLD'}, -'NJZ023': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('CAPE MAY COURT HOUSE', 4704, '39.07990', '-74.82390'), ('ERMA', 2088, '38.99840', '-74.89480'), ('RIO GRANDE', 2444, '39.02200', '-74.87770'), ('VILLAS', 9064, '39.01560', '-74.93670'), ('WHITESBORO-BURLEIGH', 1836, '39.04580', '-74.86580'), ('WOODBINE', 2716, '39.22790', '-74.80850')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'MSZ044': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CARTHAGE', 4637, '32.74400', '-89.53340'), ('LENA', 167, '32.59460', '-89.59350'), ('REDWATER', 409, '32.78260', '-89.55060'), ('STANDING PINE', 509, '32.67350', '-89.45150'), ('WALNUT GROVE', 488, '32.59780', '-89.45830')], 'partOfState': 'CENTRAL', 'wfo': 'JAN'}, -'ORZ012': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('COTTAGE GROVE', 8445, '43.79770', '-123.05570'), ('COTTAGE GROVE LAKE', None, '43.69000', '-123.07000'), ('CRESWELL', 3579, '43.91830', '-123.01930'), ('DEXTER', None, '43.91660', '-122.81660'), ('DISSTON', None, '43.70000', '-122.76660'), ('DORENA', None, '43.71700', '-122.86700'), ('DORENA RESERVOIR', None, '43.77000', '-122.93000'), ('FALL CREEK RESERVOIR', None, '43.94000', '-122.74000'), ('JASPER', None, '44.00000', '-122.90000'), ('LEABURG', None, '44.11660', '-122.68330'), ('LONDON', None, '43.63330', '-123.08330'), ('LOOKOUT POINT RESERVOIR', None, '43.87000', '-122.68000'), ('LOWELL', 857, '43.92070', '-122.77960'), ('MARCOLA', None, '44.16700', '-122.85000'), ('MOHAWK', None, '44.13330', '-122.91660'), ('NIMROD', None, '44.11660', '-122.41660'), ('PLEASANT HILL', None, '43.96660', '-122.91660'), ('SAGINAW', None, '43.83330', '-123.05000'), ('VIDA', None, '44.15000', '-122.56700'), ('WALKER', None, '43.85000', '-123.05000'), ('WALTERVILLE', None, '44.06660', '-122.80000')], 'partOfState': '', 'wfo': 'PQR'}, -'ORZ013': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BELKNAP SPRINGS', None, '44.20000', '-122.05000'), ('BLUE RIVER', None, '44.15000', '-122.33330'), ('COUGAR RESERVOIR', None, '44.08000', '-122.23000'), ('HAMPTON', None, '43.80000', '-122.57000'), ('HILLS CREEK RESERVOIR', None, '43.67000', '-122.43000'), ('MCCREDIE SPRINGS', None, '43.71600', '-122.31700'), ('MCKENZIE BRIDGE', None, '44.18300', '-122.16700'), ('OAKRIDGE', 3148, '43.74740', '-122.47200'), ('WALDO LAKE', None, '43.73000', '-122.05000'), ('WESTFIR', 276, '43.75820', '-122.50640')], 'partOfState': '', 'wfo': 'PQR'}, -'OKZ048': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ATOKA', 2988, '34.38270', '-96.13430'), ('CANEY', 199, '34.23290', '-96.21340'), ('CHOCKIE', None, '34.58000', '-96.00000'), ('DAISY', None, '34.53400', '-95.73800'), ('FARRIS', None, '34.27000', '-95.82000'), ('LANE', None, '34.30000', '-95.98000'), ('REDDEN', None, '34.50000', '-95.85000'), ('STRINGTOWN', 396, '34.46530', '-96.05320'), ('TUSHKA', 345, '34.31950', '-96.16600'), ('WARDVILLE', None, '34.65700', '-96.03250')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'VAZ070': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BEACH', None, '37.35610', '-77.59390'), ('BELLWOOD', 5974, '37.40720', '-77.43680'), ('BENSLEY', 5435, '37.44660', '-77.44370'), ('BON AIR', 16213, '37.51980', '-77.56910'), ('CENTRALIA', None, '37.38080', '-77.46030'), ('CHESTER', 17890, '37.35330', '-77.43610'), ('CHESTERFIELD', None, '37.37580', '-77.50920'), ('COLONIAL HEIGHTS', 16897, '37.26400', '-77.39880'), ('DREWRYS BLUFF', None, '37.42640', '-77.45810'), ('ETTRICK', 5627, '37.24090', '-77.42830'), ('MATOACA', 2273, '37.23060', '-77.47930'), ('MEADOWVILLE', None, '37.37060', '-77.32280'), ('MIDLOTHIAN', None, '37.50250', '-77.63980'), ('MOSELEY', None, '37.41650', '-77.77020'), ('POCAHONTAS STATE PARK', None, '37.37880', '-77.55990'), ('SKINQUARTER', None, '37.39500', '-77.77920'), ('WINTERPOCK', None, '37.34600', '-77.72000')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'OKZ049': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('SOBOL', None, '34.16110', '-95.23830'), ('ANTLERS', 2552, '34.23110', '-95.62000'), ('CLAYTON', 719, '34.58940', '-95.35250'), ('CORINNE', None, '34.18580', '-95.29110'), ('DELA', None, '34.20030', '-95.52190'), ('RATTAN', 241, '34.20030', '-95.41280'), ('CLOUDY', None, '34.30190', '-95.28080'), ('MOYERS', None, '34.32610', '-95.65330'), ('FINLEY', None, '34.32830', '-95.49470'), ('KOSOMA', None, '34.34830', '-95.61280'), ('SNOW', None, '34.39580', '-95.41250'), ('NASHOBA', None, '34.48190', '-95.21500'), ('STANLEY', None, '34.54000', '-95.46940'), ('TUSKAHOMA', None, '34.61780', '-95.27640'), ('KIAMICHI', None, '34.63530', '-95.17860'), ('ALBION', 143, '34.66280', '-95.09970'), ('OLETA', None, '34.19940', '-95.34360'), ('DARWIN', None, '34.24780', '-95.77920'), ('KELLOND', None, '34.26360', '-95.64000'), ('EUBANKS', None, '34.42190', '-95.58470'), ('DUNBAR', None, '34.45860', '-95.56030'), ('SARDIS', None, '34.66580', '-95.40940')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'FLZ017': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAUM', None, '30.51280', '-84.08060'), ('BELLAIR', None, '30.38000', '-84.27000'), ('BELLWOOD ESTATES', None, '30.50390', '-84.32360'), ('BLACK CREEK', None, '30.50690', '-84.08860'), ('BLOCKER', None, '30.58590', '-84.26990'), ('BLOXHAM', None, '30.38710', '-84.63130'), ('BRADFORDVILLE', None, '30.56030', '-84.21590'), ('BRIDGE PATH ACRES', None, '30.50810', '-84.26260'), ('CAPITOLA', None, '30.45010', '-84.08830'), ('CENTERVILLE', None, '30.55570', '-84.17630'), ('CHAIRES', None, '30.43530', '-84.11760'), ('CHAIRES CROSSROADS', None, '30.42220', '-84.11810'), ('CONCORD', None, '30.56250', '-84.04580'), ('COREY', None, '30.36680', '-84.18110'), ('EL DESTINADO', None, '30.50400', '-84.27770'), ('FELKEL', None, '30.59560', '-84.11800'), ('FORT BRADEN', None, '30.42160', '-84.53770'), ('FOUR POINTS', None, '30.39920', '-84.28100'), ('HARBINWOOD ESTATES', None, '30.51590', '-84.33490'), ('HENRIETTA', None, '30.39350', '-84.29970'), ('HIAMONEE', None, '30.64880', '-84.28350'), ('HOLLAND', None, '30.42630', '-84.53270'), ('IAMONIA', None, '30.66680', '-84.16350'), ('KILLEARN ESTATES', None, '30.54390', '-84.23680'), ('KILLEARN LAKES', None, '30.58740', '-84.23130'), ('LAFAYETTE', None, '30.42780', '-84.21610'), ('LAKE JACKSON', None, '30.53070', '-84.36110'), ('LAKE VIEW PT', None, '30.42520', '-84.59850'), ('LAKESIDE', 30927, '30.38230', '-84.29910'), ('LOCHIOCHA', None, '30.36520', '-84.66660'), ('LUTTERLOH', None, '30.32760', '-84.25320'), ('MACLAY STATE GARDENS', None, '30.50880', '-84.25000'), ('MCCAIN', None, '30.44770', '-84.40290'), ('MERIDIAN', None, '30.63950', '-84.28270'), ('MICCOSUKEE', None, '30.59350', '-84.04180'), ('NORFLEET', None, '30.44130', '-84.39210'), ('OAK KNOLL ESTATES', None, '30.52250', '-84.26660'), ('OCHLOCKONEE', None, '30.47100', '-84.40710'), ('PECK', None, '30.53870', '-84.09190'), ('PERKINS', None, '30.45310', '-84.22270'), ('ROSE', None, '30.34850', '-84.13360'), ('SPRING HILL', 69078, '30.33880', '-84.38820'), ('ST PETER', None, '30.48550', '-84.22890'), ('TALLAHASSEE', 150624, '30.43790', '-84.28160'), ('TALLAHASSEE COML A/P', None, '30.54600', '-84.37430'), ('TALLAHASSEE RGNL A/P', None, '30.39620', '-84.35340'), ('WADESBORO', None, '30.50360', '-84.06600'), ('WOODVILLE', 3006, '30.31410', '-84.24740'), ('ZION HILL', None, '30.48020', '-84.32330')], 'partOfState': '', 'wfo': 'TAE'}, -'MSZ045': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('PEARL RIVER', 3156, '32.78760', '-89.24280'), ('PHILADELPHIA', 7303, '32.77400', '-89.10920'), ('TUCKER', 534, '32.70750', '-89.04890')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'FLZ016': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRANCHVILLE', None, '30.65280', '-84.48300'), ('CHATTAHOOCHEE', 3287, '30.70000', '-84.84350'), ('CONCORD', None, '30.65680', '-84.36510'), ('DARSEY', None, '30.68750', '-84.38020'), ('DOGTOWN', None, '30.67750', '-84.50340'), ('DOUGLAS CITY', None, '30.59080', '-84.64400'), ('EBENEZER', None, '30.45610', '-84.59210'), ('FLORENCE', None, '30.59350', '-84.48290'), ('FREEMONT', None, '30.61420', '-84.45250'), ('GIBSON', None, '30.56550', '-84.39940'), ('GREENSBORO', 619, '30.57020', '-84.74440'), ('GRETNA', 1709, '30.61770', '-84.66050'), ('HARDAWAY', None, '30.63460', '-84.73650'), ('HARDIN HEIGHTS', None, '30.67460', '-84.83960'), ('HAVANA', 1713, '30.62340', '-84.41220'), ('HINSON', None, '30.64870', '-84.41680'), ('JAMIESON', None, '30.66140', '-84.45090'), ('JUNIPER', None, '30.54220', '-84.75340'), ('LITTMAN', None, '30.59070', '-84.51460'), ('MIDWAY', 1714, '30.49120', '-84.46210'), ('MT PLEASANT', None, '30.65720', '-84.69310'), ('OAK GROVE', None, '30.69140', '-84.73330'), ('QUINCY', 6982, '30.58430', '-84.58410'), ('QUINCY A/P', None, '30.59750', '-84.55750'), ('RICH BAY', None, '30.60410', '-84.39190'), ('RIVER JUNCTION', None, '30.68530', '-84.84140'), ('ROSEDALE', None, '30.65460', '-84.81410'), ('SANTA CLARA', None, '30.58290', '-84.56220'), ('SAWDUST', None, '30.54640', '-84.67770'), ('SCOTLAND', None, '30.57580', '-84.43040'), ('SHADY REST', None, '30.58790', '-84.48690'), ('SYCAMORE', None, '30.58120', '-84.82070'), ('WETUMPKA', None, '30.48170', '-84.62340')], 'partOfState': '', 'wfo': 'TAE'}, -'VAZ071': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHAMBERLAYNE', 4380, '37.62640', '-77.42880'), ('DOWNTOWN RICHMOND', None, '37.53110', '-77.47460'), ('DUMBARTON', 6674, '37.60870', '-77.50050'), ('EAST HIGHLAND PARK', 12488, '37.57480', '-77.38450'), ('ELKO', None, '37.47280', '-77.21170'), ('FAIR OAKS', None, '37.53060', '-77.31640'), ('GLEN ALLEN', 12562, '37.66400', '-77.48450'), ('GLENDALE', None, '37.44560', '-77.23330'), ('GREENDALE', None, '37.61390', '-77.49690'), ('HIGHLAND SPRINGS', 15137, '37.55080', '-77.32720'), ('LAKESIDE', 11157, '37.61750', '-77.46790'), ('LAUREL', 14875, '37.63390', '-77.50700'), ('LONGDALE', None, '37.65810', '-77.47000'), ('MONTROSE', 7018, '37.52050', '-77.37850'), ('RICHMOND HEIGHTS', None, '37.46360', '-77.39830'), ('RICHMOND INTERNATIONAL AI', None, '37.50630', '-77.31700'), ('ROSLYN HILLS', None, '37.57610', '-77.56610'), ('SANDSTON', None, '37.51585', '-77.27853'), ('SHORT PUMP', 182, '37.65050', '-77.60950'), ('SOLOMONS STORE', None, '37.63940', '-77.45970'), ('TUCKAHOE', 43242, '37.58700', '-77.58700'), ('VARINA', None, '37.44310', '-77.34890')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'MOZ097': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRANDSVILLE', 174, '36.65020', '-91.68990'), ('CAULFIELD', None, '36.61440', '-92.10470'), ('LANTON', None, '36.51710', '-91.80130'), ('MOODY', None, '36.52930', '-91.98910'), ('MOUNTAIN VIEW', 2430, '36.99520', '-91.70360'), ('PEACE VALLEY', None, '36.87430', '-91.73100'), ('POMONA', None, '36.86710', '-91.91410'), ('POTTERSVILLE', None, '36.69580', '-92.03100'), ('SILOAM SPRINGS', None, '36.79550', '-92.07520'), ('SOUTH FORK', None, '36.62770', '-91.96250'), ('WEST PLAINS', 10866, '36.72790', '-91.85220'), ('WHITE CHURCH', None, '36.85020', '-91.78600'), ('WILLOW SPRINGS', 2147, '36.99210', '-91.96960')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'MOZ096': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AVA', 3021, '36.95190', '-92.66020'), ('BRUSHYKNOB', None, '36.96470', '-92.48580'), ('DOGWOOD', None, '37.03770', '-92.83070'), ('DRURY', None, '36.92990', '-92.32240'), ('GENTRYVILLE', None, '36.86380', '-92.36050'), ('GOODHOPE', None, '36.90880', '-92.80750'), ('ROME', None, '36.84130', '-92.77320'), ('SQUIRES', None, '36.85130', '-92.62460'), ('VANZANT', None, '36.96960', '-92.30270')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ095': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BILLINGS', 1091, '37.06740', '-93.55190'), ('BOAZ', None, '37.01850', '-93.40020'), ('BRUNER', None, '37.01470', '-92.98580'), ('CHADWICK', None, '36.92990', '-93.05660'), ('CHESTNUTRIDGE', None, '36.83660', '-93.25160'), ('CHRISTIAN CENTER', None, '36.94080', '-93.16660'), ('CLEVER', 1010, '37.03020', '-93.47270'), ('ELKHEAD', None, '37.01360', '-92.93020'), ('FREMONT HILLS', 597, '37.06580', '-93.25260'), ('GARRISON', None, '36.83880', '-93.01930'), ('HIGHLANDVILLE', 872, '36.93270', '-93.28020'), ('KELTNER', None, '36.96880', '-92.94800'), ('LINDEN', None, '37.04630', '-93.13380'), ('NIXA', 12124, '37.04330', '-93.29410'), ('OLDFIELD', None, '36.97820', '-93.03990'), ('OZARK', 9665, '37.02070', '-93.20580'), ('SELMORE', None, '36.96790', '-93.22990'), ('SPARTA', 1144, '37.00110', '-93.08130'), ('SPOKANE', 133, '36.86790', '-93.29660')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ094': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AURORA', 7014, '36.97070', '-93.71770'), ('CHESAPEAKE', None, '37.11680', '-93.68130'), ('FREISTATT', 184, '37.01820', '-93.89740'), ('HALLTOWN', 189, '37.19330', '-93.62520'), ('HOBERG', 60, '37.06960', '-93.84850'), ('I-44 NEAR MILE MARKER 40', None, '37.07200', '-93.92700'), ('I-44 NEAR MILE MARKER 50', None, '37.15000', '-93.71000'), ('LA RUSSELL', 138, '37.14130', '-94.06130'), ('MARIONVILLE', 2113, '37.00300', '-93.63710'), ('MILLER', 754, '37.21470', '-93.83960'), ('MOUNT VERNON', 4017, '37.10360', '-93.81820'), ('PIERCE CITY', 1385, '36.94580', '-94.00000'), ('RED OAK', None, '37.22850', '-94.01110'), ('STOTTS CITY', 250, '37.10360', '-93.94940'), ('VERONA', 714, '36.96380', '-93.79550')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'AKZ022': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ELFIN COVE', 32, '58.18620', '-136.33680'), ('PELICAN', 163, '57.95320', '-136.20990')], 'partOfState': '', 'wfo': 'AJK'}, -'MOZ092': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DAWSON', None, '37.25690', '-92.30770'), ('DUNCAN', None, '37.28160', '-92.69160'), ('GRAFF', None, '37.31740', '-92.28240'), ('GROVESPRING', None, '37.39960', '-92.60940'), ('HARTVILLE', 607, '37.25080', '-92.51020'), ('MANES', None, '37.37990', '-92.36660'), ('MANSFIELD', 1349, '37.10660', '-92.58040'), ('MOUNTAIN GROVE', 4574, '37.13040', '-92.26330'), ('NORWOOD', 552, '37.10830', '-92.41470'), ('ODIN', None, '37.26820', '-92.61820')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'AKZ020': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('GUSTAVUS', 429, '58.40610', '-135.80110')], 'partOfState': '', 'wfo': 'AJK'}, -'MOZ090': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ASH GROVE', 1430, '37.31520', '-93.58490'), ('BASSVILLE', None, '37.34440', '-93.13210'), ('BATTLEFIELD', 2385, '37.11550', '-93.36990'), ("BOIS D'ARC", None, '37.25630', '-93.50750'), ('BROOKLINE', 326, '37.16330', '-93.41990'), ('CAVE SPRINGS', None, '37.35130', '-93.46330'), ('EBENEZER', None, '37.34020', '-93.30690'), ('FAIR GROVE', 1107, '37.38380', '-93.15110'), ('GALLOWAY', None, '37.13660', '-93.23770'), ('GLIDEWELL', None, '37.30440', '-93.32680'), ('I-44 NEAR MILE MARKER 60', None, '37.18200', '-93.58500'), ('I-44 NEAR MILE MARKER 70', None, '37.20500', '-93.42820'), ('I-44 NEAR MILE MARKER 80', None, '37.24500', '-93.29000'), ('I-44 NEAR MILE MARKER 90', None, '37.27500', '-93.09000'), ('REPUBLIC', 8438, '37.11990', '-93.47990'), ('SACVILLE', None, '37.39380', '-93.42880'), ('SPRINGFIELD', 151580, '37.19620', '-93.28610'), ('STRAFFORD', 1845, '37.26820', '-93.11680'), ('TURNERS', None, '37.18070', '-93.15520'), ('WALNUT GROVE', 630, '37.41110', '-93.54940'), ('WILLARD', 3193, '37.30500', '-93.42820')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'WAZ007': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALGONA', 2460, '47.28370', '-122.25010'), ('AUBURN', 40314, '47.29900', '-122.21180'), ('BEAUX ARTS VILLAGE', 307, '47.58610', '-122.20320'), ('BELLEVUE', 109569, '47.60340', '-122.15500'), ('BLACK DIAMOND', 3970, '47.31170', '-122.00990'), ('BOTHELL', 30150, '47.76000', '-122.19690'), ('BRYN MAWR-SKYWAY', 13977, '47.49520', '-122.23820'), ('BURIEN', 31881, '47.46490', '-122.34640'), ('CARNATION', 1893, '47.64610', '-121.90930'), ('CASCADE-FAIRWOOD', 34580, '47.44920', '-122.16270'), ('CLYDE HILL', 2890, '47.62920', '-122.21780'), ('COVINGTON-SAWYER-WILDERNE', None, '47.35280', '-122.07310'), ('DES MOINES', 29267, '47.39550', '-122.30950'), ('DUVALL', 4616, '47.73370', '-121.96920'), ('EAST HILL-MERIDIAN', 29308, '47.38980', '-122.17200'), ('EAST RENTON HIGHLANDS', 13264, '47.48510', '-122.11120'), ('EASTGATE', 4558, '47.57230', '-122.13490'), ('FEDERAL WAY', 83259, '47.31190', '-122.34080'), ('HUNTS POINT', 443, '47.63880', '-122.22750'), ('INGLEWOOD-FINN HILL', 22661, '47.72600', '-122.23500'), ('ISSAQUAH', 11212, '47.53230', '-122.03850'), ('KENMORE', 18678, '47.76460', '-122.24260'), ('KENT', 79524, '47.39430', '-122.23850'), ('KINGSGATE', 12222, '47.73060', '-122.16710'), ('KIRKLAND', 45054, '47.68460', '-122.19390'), ('LAKE FOREST NORTH', None, '47.76770', '-122.28560'), ('LAKE FOREST PARK', 13142, '47.76270', '-122.28620'), ('LAKELAND NORTH', 15085, '47.32920', '-122.27800'), ('LAKELAND SOUTH', 11436, '47.27740', '-122.28280'), ('LEA HILL', 10871, '47.32630', '-122.18030'), ('MAPLE VALLEY', 14209, '47.40130', '-122.02570'), ('MEDINA', 3011, '47.61630', '-122.23650'), ('MERCER ISLAND', 22036, '47.56930', '-122.23090'), ('MIRRORMONT', 3804, '47.46260', '-121.99430'), ('NEWPORT HILLS', None, '47.54750', '-122.17400'), ('NORMANDY PARK', 6392, '47.44470', '-122.35580'), ('NORTH CITY-RIDGECREST', None, '47.75090', '-122.31310'), ('NORTH HILL', None, '47.41940', '-122.32230'), ('PACIFIC', 5527, '47.26570', '-122.24670'), ('PINE LAKE', None, '47.57890', '-122.04490'), ('REDMOND', 45256, '47.67420', '-122.11480'), ('RENTON', 50052, '47.48190', '-122.19660'), ('RICHMOND BEACH-INNIS ARDE', None, '47.75520', '-122.37340'), ('RICHMOND HIGHLANDS', None, '47.75910', '-122.34300'), ('RIVERTON-BOULEVARD PARK', 11188, '47.49760', '-122.30920'), ('SAHALEE', None, '47.63490', '-122.05410'), ('SEA-TAC', None, '47.44350', '-122.29780'), ('SEATTLE', 563374, '47.62180', '-122.35030'), ('SHERIDAN BEACH', None, '47.74490', '-122.28680'), ('TUKWILA', 17181, '47.47770', '-122.26830'), ('WEST LAKE SAMMAMISH', 5937, '47.57790', '-122.09990'), ('WHITE CENTER-SHOREWOOD', None, '47.50200', '-122.34980'), ('WOODINVILLE', 9194, '47.74620', '-122.11190'), ('WOODMONT BEACH', None, '47.36180', '-122.31630'), ('YARROW POINT', 1008, '47.64570', '-122.21530')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'MIZ042': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALGER', None, '44.11660', '-84.11660'), ('AU GRES', 1028, '44.04420', '-83.69280'), ('MAPLE RIDGE', None, '44.13340', '-83.91670'), ('OMER', 337, '44.04950', '-83.85720'), ('STANDISH', 1581, '43.98060', '-83.96340'), ('STERLING', 533, '44.03210', '-84.02030'), ('TURNER', 139, '44.14180', '-83.78820'), ('TWINING', 192, '44.11260', '-83.80780')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MOZ099': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLACK', None, '37.53140', '-90.93320'), ('BUNKER', 427, '37.45750', '-91.21150'), ('CENTERVILLE', 171, '37.43630', '-90.96030'), ('CORRIDON', None, '37.38200', '-91.07230'), ('ELLINGTON', 1045, '37.23540', '-90.97200'), ('GARWOOD', None, '37.06700', '-90.90000'), ('LESTERVILLE', None, '37.45580', '-90.82530'), ('OATES', None, '37.56700', '-91.05000'), ('REDFORD', None, '37.32010', '-90.89840'), ('REYNOLDS', None, '37.40000', '-91.06700')], 'partOfState': 'SOUTHEAST', 'wfo': 'LSX'}, -'MOZ098': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AKERS', None, '37.37600', '-91.55260'), ('ALLEY SPRING', None, '37.14410', '-91.44380'), ('BIRCH TREE', 634, '36.99100', '-91.49240'), ('EMINENCE', 548, '37.15050', '-91.35750'), ('MIDRIDGE', None, '37.33520', '-91.22160'), ('MONTIER', None, '36.98690', '-91.57520'), ('PINE CREST', None, '37.09190', '-91.65860'), ('ROUND SPRING', None, '37.28040', '-91.41110'), ('SUMMERSVILLE', 544, '37.17910', '-91.65660'), ('TERESITA', None, '36.98460', '-91.62850'), ('WEST EMINENCE', None, '37.14020', '-91.37430'), ('WINONA', 1290, '37.00970', '-91.32320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'TXZ127': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABILENE', 115930, '32.44860', '-99.73280'), ('BRADSHAW', None, '32.09830', '-99.89750'), ('BUFFALO GAP', 463, '32.28220', '-99.83130'), ('DYESS AFB', None, '32.42250', '-99.86170'), ('HAMBY', None, '32.51860', '-99.63080'), ('HAPPY VALLEY', None, '32.13250', '-100.10890'), ('IMPACT', 39, '32.49880', '-99.74630'), ('LAWN', 353, '32.13470', '-99.74940'), ('MERKEL', 2637, '32.46830', '-100.01280'), ('OVALO', None, '32.17280', '-99.80750'), ('POTOSI', 1664, '32.33560', '-99.68420'), ('TRENT', 318, '32.48580', '-100.12500'), ('TUSCOLA', 714, '32.21070', '-99.79890'), ('TYE', 1158, '32.45320', '-99.86940'), ('VIEW', None, '32.34280', '-99.88440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'MOZ028': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('(MCI)KS CITY INTL ARPT', None, '39.30000', '-94.71670'), ('BEAN LAKE', None, '39.51670', '-95.00000'), ('CAMDEN POINT', 484, '39.45280', '-94.74710'), ('DEARBORN', 529, '39.52490', '-94.77290'), ('EDGERTON', 533, '39.50500', '-94.63060'), ('FARLEY', 226, '39.28230', '-94.82840'), ('FERRELVIEW', 593, '39.31370', '-94.66530'), ('HOUSTON LAKE', 284, '39.19170', '-94.62350'), ('IATAN', 54, '39.47520', '-94.98160'), ('LAKE WAUKOMIS', 917, '39.23030', '-94.63650'), ('PARKVILLE', 4059, '39.19510', '-94.67410'), ('PLATTE CITY', 3866, '39.36150', '-94.77780'), ('PLATTE WOODS', 474, '39.22930', '-94.65200'), ('RIDGELY', 64, '39.45220', '-94.63950'), ('RIVERSIDE', 2979, '39.16730', '-94.63370'), ('TRACY', 213, '39.37860', '-94.79300'), ('WEATHERBY LAKE', 1873, '39.23860', '-94.69760'), ('WESTON', 1631, '39.41460', '-94.89650')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'TXZ125': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIG SANDY', 1288, '32.58570', '-95.11260'), ('EAST MOUNTAIN', 580, '32.59390', '-94.85520'), ('GILMER', 4799, '32.73020', '-94.94570'), ('ORE CITY', 1106, '32.80150', '-94.71690'), ('UNION GROVE', 346, '32.58310', '-94.90850')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ124': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALBA', 430, '32.79140', '-95.63520'), ('HAWKINS', 1331, '32.59080', '-95.20250'), ('MINEOLA', 4550, '32.66590', '-95.48890'), ('QUITMAN', 2030, '32.79590', '-95.44430'), ('WINNSBORO', 3584, '32.95620', '-95.28980'), ('YANTIS', 321, '32.93190', '-95.57500')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ123': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EAST TAWAKONI', 775, '32.89770', '-95.93360'), ('EMORY', 1021, '32.87570', '-95.76880'), ('POINT', 792, '32.93010', '-95.87010')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'TXZ122': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CANTON', 3292, '32.54750', '-95.86390'), ('EDGEWOOD', 1348, '32.69480', '-95.88210'), ('EDOM', 322, '32.37300', '-95.61110'), ('FRUITVALE', 418, '32.68390', '-95.80360'), ('GRAND SALINE', 3028, '32.67750', '-95.71120'), ('VAN', 2362, '32.52370', '-95.63730'), ('WILLS POINT', 3496, '32.70940', '-96.00620')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'TXZ121': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMBINE', 1788, '32.58820', '-96.51490'), ('COTTONWOOD', 181, '32.45690', '-96.39150'), ('CRANDALL', 2774, '32.63070', '-96.45370'), ('FORNEY', 5588, '32.75270', '-96.46610'), ('GRAYS PRAIRIE', 296, '32.47250', '-96.35000'), ('KAUFMAN', 6490, '32.58180', '-96.30820'), ('KEMP', 1133, '32.43660', '-96.22370'), ('LAWRENCE', None, '32.74120', '-96.34690'), ('MABANK', 2151, '32.36550', '-96.10400'), ('OAK GROVE', 710, '32.52880', '-96.31560'), ('OAK RIDGE', 400, '32.65760', '-96.26400'), ('POST OAK BEND CITY', 404, '32.63210', '-96.31330'), ('ROSSER', 379, '32.46270', '-96.44220'), ('TERRELL', 13606, '32.73280', '-96.29190')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ120': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FATE', 497, '32.94080', '-96.38630'), ('HEATH', 4149, '32.84780', '-96.47800'), ('MCLENDON-CHISHOLM', 914, '32.84590', '-96.38990'), ('ROCKWALL', 17976, '32.92200', '-96.45750'), ('ROYSE CITY', 2957, '32.97530', '-96.33290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'WYZ071': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('COLONY', None, '44.91450', '-104.17480')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'VAZ076': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('DOWNING', None, '37.84440', '-76.62330'), ('EMMERTON', None, '37.89910', '-76.67990'), ('ETHEL', None, '37.99650', '-76.78090'), ('FARNHAM', None, '37.88600', '-76.62570'), ('FONESWOOD', None, '38.10480', '-76.90100'), ('HAYNESVILLE', None, '37.95030', '-76.66280'), ('KENNARD', None, '37.91560', '-76.74810'), ('LYELLS', None, '37.99690', '-76.72920'), ('MOON CORNER', None, '37.86910', '-76.55020'), ('MULCH', None, '37.90380', '-76.57110'), ('NAYLORS BEACH', None, '37.97750', '-76.86330'), ('NEWLAND', None, '38.05070', '-76.87370'), ('PINEY GROVE', None, '38.02700', '-76.78640'), ('ROBLEY', None, '37.84670', '-76.58150'), ('SHARPS', None, '37.84000', '-76.70110'), ('SINGERLY', None, '38.08030', '-76.89670'), ('TIDEWATER', None, '37.85490', '-76.69860'), ('WARSAW', 1375, '37.96110', '-76.76130'), ('WELLFORD', None, '37.90000', '-76.75000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'TXZ129': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARBON', 224, '32.26860', '-98.82670'), ('CISCO', 3851, '32.38500', '-98.98000'), ('EASTLAND', 3769, '32.40120', '-98.81910'), ('GORMAN', 1236, '32.21400', '-98.67180'), ('RANGER', 2584, '32.47010', '-98.67430'), ('RISING STAR', 835, '32.09730', '-98.96570')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ128': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADMIRAL', None, '32.29640', '-99.29750'), ('ATWELL', None, '32.26110', '-99.13390'), ('BAIRD', 1623, '32.39580', '-99.39550'), ('CLYDE', 3345, '32.40240', '-99.49820'), ('CROSS PLAINS', 1068, '32.12660', '-99.16530'), ('DUDLEY', None, '32.25810', '-99.60470'), ('EULA', None, '32.34220', '-99.56140'), ('OPLIN', None, '32.13780', '-99.56190'), ('PUTNAM', 88, '32.37080', '-99.19220')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'AKZ021': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('GAME CREEK', 35, '58.05670', '-135.50790'), ('HOONAH', 860, '58.11150', '-135.41980'), ('TENAKEE SPRINGS', 104, '57.77840', '-135.13940'), ('WHITESTONE LOGGING CAMP', 116, '58.07120', '-135.42980')], 'partOfState': '', 'wfo': 'AJK'}, -'FLZ019': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CHERRY LAKE', None, '30.58220', '-83.42740'), ('GREENVILLE', 837, '30.46700', '-83.63520'), ('HAMBURG', None, '30.56500', '-83.52700'), ('HANSON', None, '30.55090', '-83.36730'), ('HOPEWELL', None, '30.38130', '-83.44480'), ('LEE', 352, '30.41840', '-83.30060'), ('LOVETT', None, '30.62760', '-83.57340'), ('MADISON', 3061, '30.46860', '-83.41540'), ('MADISON CO A/P', None, '30.44220', '-83.30980'), ('MOSELEY HALL', None, '30.35140', '-83.58170'), ('PINETTA', None, '30.59340', '-83.35260'), ('SIRMANS', None, '30.35040', '-83.65940'), ('SMITH', None, '30.62620', '-83.35310')], 'partOfState': '', 'wfo': 'TAE'}, -'ALZ006': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('GURLEY', 876, '34.70310', '-86.37310'), ('HARVEST', 3054, '34.85560', '-86.74990'), ('HAZEL GREEN', 3805, '34.92360', '-86.56720'), ('HUNTSVILLE', 158216, '34.70700', '-86.62770'), ('MADISON', 29329, '34.70290', '-86.74970'), ('MERIDIANVILLE', 4117, '34.87380', '-86.57090'), ('MOORES MILL', 5178, '34.85190', '-86.52580'), ('NEW HOPE', 2539, '34.53910', '-86.41590'), ('NEW MARKET', 1864, '34.90950', '-86.42510'), ('OWENS CROSSROADS', None, '34.58200', '-86.46020'), ('REDSTONE ARSENAL', 2365, '34.68410', '-86.65400'), ('TRIANA', 458, '34.59460', '-86.74430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'SDZ034': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AGAR', 82, '44.83870', '-100.07250'), ('AGAR', 82, '44.83870', '-100.07250'), ('COW CREEK REC AREA', None, '44.56160', '-100.49750'), ('COW CREEK REC AREA', None, '44.56160', '-100.49750'), ('EAKIN', None, '44.62060', '-100.02590'), ('EAKIN', None, '44.62060', '-100.02590'), ('OKOBOJO CREEK REC AREA', None, '44.60740', '-100.46530'), ('OKOBOJO CREEK REC AREA', None, '44.60740', '-100.46530'), ('ONIDA', 740, '44.70470', '-100.06650'), ('ONIDA', 740, '44.70470', '-100.06650'), ('SUTTON BAY REC AREA', None, '44.88080', '-100.35680'), ('SUTTON BAY REC AREA', None, '44.88080', '-100.35680')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDZ035': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BLUNT', 370, '44.51550', '-99.98800'), ('BLUNT', 370, '44.51550', '-99.98800'), ('CANNING', None, '44.39650', '-100.03200'), ('CANNING', None, '44.39650', '-100.03200'), ('GREY GOOSE', None, '44.50460', '-100.35060'), ('GREY GOOSE', None, '44.50460', '-100.35060'), ('HARROLD', 209, '44.52330', '-99.73840'), ('HARROLD', 209, '44.52330', '-99.73840'), ('JOE CREEK REC AREA', None, '44.14610', '-99.79680'), ('JOE CREEK REC AREA', None, '44.14610', '-99.79680'), ('OAHE MISSION REC AREA', None, '44.48280', '-100.52850'), ('OAHE MISSION REC AREA', None, '44.48280', '-100.52850'), ('OVERLOOK REC AREA', None, '44.45860', '-100.38410'), ('OVERLOOK REC AREA', None, '44.45860', '-100.38410'), ('PIERRE', 13876, '44.37300', '-100.32250'), ('PIERRE', 13876, '44.37300', '-100.32250'), ('ROSSEAU', None, '44.31640', '-100.07150'), ('ROSSEAU', None, '44.31640', '-100.07150'), ('SPRING CREEK REC AREA', None, '44.54680', '-100.47570'), ('SPRING CREEK REC AREA', None, '44.54680', '-100.47570'), ('WEST BEND REC AREA', None, '44.17110', '-99.71920'), ('WEST BEND REC AREA', None, '44.17110', '-99.71920')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDZ036': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('HIGHMORE', 851, '44.52070', '-99.43900'), ('HIGHMORE', 851, '44.52070', '-99.43900'), ('HOLABIRD', None, '44.52380', '-99.59770'), ('HOLABIRD', None, '44.52380', '-99.59770'), ('STEPHAN', None, '44.24770', '-99.45260'), ('STEPHAN', None, '44.24770', '-99.45260')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDZ037': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('AMES', None, '44.26910', '-99.08470'), ('AMES', None, '44.26910', '-99.08470'), ('BURDETTE', None, '44.70730', '-98.81000'), ('BURDETTE', None, '44.70730', '-98.81000'), ('DANFORTH', None, '44.25420', '-98.88330'), ('DANFORTH', None, '44.25420', '-98.88330'), ('MILLER', 1530, '44.52000', '-98.98770'), ('MILLER', 1530, '44.52000', '-98.98770'), ('MILLER DALE COLONY', None, '44.39990', '-99.11280'), ('MILLER DALE COLONY', None, '44.39990', '-99.11280'), ('POLO', None, '44.77960', '-99.10960'), ('POLO', None, '44.77960', '-99.10960'), ('REE HEIGHTS', 85, '44.51610', '-99.20040'), ('REE HEIGHTS', 85, '44.51610', '-99.20040'), ('SAINT LAWRENCE', None, '44.51700', '-98.94000'), ('SAINT LAWRENCE', None, '44.51700', '-98.94000'), ('VAYLAND', None, '44.49250', '-98.79880'), ('VAYLAND', None, '44.49250', '-98.79880')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'SDZ030': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FOLSOM', None, '43.83200', '-102.86580')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDZ031': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BOX ELDER', 2841, '44.11960', '-103.07210'), ('CAPUTA', None, '43.99530', '-102.98420'), ('CONATA', None, '43.73330', '-102.18330'), ('CREIGHTON', None, '44.25300', '-102.20780'), ('CRESTON', None, '43.91300', '-102.70210'), ('FARMINGDALE', None, '43.96760', '-102.89500'), ('NEW UNDERWOOD', 616, '44.10000', '-102.83330'), ('OWANKA', None, '44.01970', '-102.58470'), ('PINNICALES RANGER STATION', None, '43.86670', '-102.23330'), ('QUINN', 44, '43.98730', '-102.13020'), ('SCENIC', None, '43.78330', '-102.55000'), ('WALL', 818, '43.99160', '-102.23910'), ('WASTA', 75, '44.06930', '-102.44590'), ('WICKSVILLE', None, '44.10000', '-102.56670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDZ032': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALLEMAN STATION', None, '44.69260', '-101.21310'), ('BILLSBURG', None, '44.40000', '-101.68330'), ('FOUR CORNER BRIDGE', None, '44.52190', '-101.99120'), ('GRINDSTONE', None, '44.14170', '-101.96590'), ('HILLAND', None, '44.28330', '-101.85000'), ('KIRLEY', None, '44.52420', '-101.31160'), ('MIDLAND', 179, '44.07240', '-101.15230'), ('MILESVILLE', None, '44.46670', '-101.68330'), ('NOWLIN', None, '44.04920', '-101.30250'), ('OTTUMWA', None, '44.23380', '-101.34100'), ('PHILIP', 885, '44.04580', '-101.66550'), ('POWELL', None, '44.05000', '-101.50000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDZ033': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BUNKER', None, '44.23850', '-101.10180'), ('BUNKER', None, '44.23850', '-101.10180'), ('CHANTLER CREEK REC AREA', None, '44.48070', '-100.61730'), ('CHANTLER CREEK REC AREA', None, '44.48070', '-100.61730'), ('FORT PIERRE', 1991, '44.36270', '-100.37930'), ('FORT PIERRE', 1991, '44.36270', '-100.37930'), ('HAYES', None, '44.37120', '-101.02370'), ('HAYES', None, '44.37120', '-101.02370'), ('MISSION RIDGE', None, '44.68880', '-100.79130'), ('MISSION RIDGE', None, '44.68880', '-100.79130'), ('SANSARC', None, '44.50660', '-101.03490'), ('SANSARC', None, '44.50660', '-101.03490'), ('WENDTE', None, '44.24380', '-100.66480'), ('WENDTE', None, '44.24380', '-100.66480'), ('WEST SHORE REC AREA', None, '44.45070', '-100.45140'), ('WEST SHORE REC AREA', None, '44.45070', '-100.45140')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'ALZ004': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('COURTLAND', 769, '34.66890', '-87.31660'), ('HILLSBORO', 608, '34.63670', '-87.18460'), ('MOULTON', 3260, '34.48390', '-87.28110'), ('NORTH COURTLAND', 799, '34.67720', '-87.30840'), ('TOWN CREEK', 1216, '34.67270', '-87.40830')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'SDZ038': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BROADLAND', 38, '44.49340', '-98.34810'), ('CAVOUR', 141, '44.37280', '-98.04100'), ('HITCHCOCK', 108, '44.62930', '-98.40780'), ('HURON', 11893, '44.36390', '-98.21780'), ('VIRGIL', 25, '44.29030', '-98.42670'), ('WESSINGTON', 248, '44.45490', '-98.69620'), ('WOLSEY', 418, '44.41090', '-98.47380'), ('YALE', 118, '44.43340', '-97.98910')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDZ039': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARLINGTON', 992, '44.36250', '-97.13390'), ('BADGER', 144, '44.48570', '-97.20940'), ('BANCROFT', 37, '44.48870', '-97.75040'), ('DE SMET', 1164, '44.38660', '-97.54780'), ('ERWIN', 58, '44.48820', '-97.44100'), ('HETLAND', 43, '44.37650', '-97.23450'), ('IROQUOIS', 278, '44.36650', '-97.84970'), ('LAKE PRESTON', 737, '44.36180', '-97.37620'), ('OLDHAM', 206, '44.22820', '-97.30860')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'KSZ007': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURR OAK', 265, '39.87040', '-98.30400'), ('ESBON', 148, '39.82170', '-98.43340'), ('FORMOSO', 129, '39.77930', '-97.99350'), ('IONIA', None, '39.66400', '-98.34700'), ('JEWELL', 483, '39.67180', '-98.15130'), ('LOVEWELL STATE PARK', None, '39.89000', '-98.03000'), ('MANKATO', 976, '39.78740', '-98.20760'), ('MONTROSE', None, '39.78450', '-98.08750'), ('RANDALL', 90, '39.64160', '-98.04510'), ('WEBBER', 37, '39.93440', '-98.03580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'COZ088': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AGUILAR', 593, '37.40410', '-104.65440'), ('BONCARBO', None, '37.22000', '-104.70000'), ('COKEDALE', 139, '37.14340', '-104.62150'), ('GULNARE', None, '37.33000', '-104.75000'), ('HOEHNE', None, '37.28000', '-104.38000'), ('MODEL', None, '37.34000', '-104.27000'), ('SEGUNDO', None, '37.12000', '-104.77000'), ('THATCHER', None, '37.56000', '-104.08000'), ('TRINIDAD', 9078, '37.16850', '-104.50570'), ('TYRONE', None, '37.45000', '-104.21000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'UTZ001': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('AMALGA', 427, '41.85750', '-111.89680'), ('CLARKSTON', 688, '41.92100', '-112.04840'), ('COLLEGE WARD', None, '41.68000', '-111.88000'), ('CORNISH', 259, '41.97310', '-111.95100'), ('HYDE PARK', 2955, '41.79800', '-111.81470'), ('HYRUM', 6316, '41.63290', '-111.84470'), ('LEWISTON', 1877, '41.96090', '-111.87490'), ('LOGAN', 42670, '41.73000', '-111.83000'), ('MILLVILLE', 1507, '41.68060', '-111.81890'), ('NEWTON', 699, '41.86120', '-111.98920'), ('NIBLEY', 2045, '41.67250', '-111.84190'), ('NORTH LOGAN', 6163, '41.77150', '-111.81410'), ('PARADISE', 759, '41.56760', '-111.83320'), ('PROVIDENCE', 4377, '41.70520', '-111.81340'), ('RICHMOND', 2051, '41.91940', '-111.80940'), ('RIVER HEIGHTS', 1496, '41.72250', '-111.82040'), ('SMITHFIELD', 7261, '41.83540', '-111.82970'), ('TRENTON', 449, '41.91390', '-111.93520'), ('WELLSVILLE', 2728, '41.63230', '-111.93180')], 'partOfState': '', 'wfo': 'SLC'}, -'VAZ074': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOWLERS WHARF', None, '37.82320', '-76.75220'), ('BRAYS FORK', None, '37.89610', '-76.87190'), ('CARET', None, '37.98280', '-76.96200'), ('CENTER CROSS', None, '37.80460', '-76.77940'), ('CHAMPLAIN', None, '38.01380', '-76.99290'), ('CHANCE', None, '38.06340', '-77.00920'), ('DUNBROOKE', None, '37.89420', '-76.96410'), ('DUNNSVILLE', None, '37.85890', '-76.82270'), ('ELEVON', None, '37.99410', '-77.07310'), ('HOWERTONS', None, '37.83120', '-76.89070'), ('HUSTLE', None, '38.04250', '-77.06690'), ('LANEVIEW', None, '37.77000', '-76.73500'), ('LORETTO', None, '38.07620', '-77.05150'), ('MILLERS TAVERN', None, '37.83090', '-76.93680'), ('MONTAGUE', None, '37.76800', '-76.73740'), ('MOUNT LANDING', None, '37.94000', '-76.92170'), ('REXBURG', None, '37.93640', '-76.98720'), ('SUPPLY', None, '38.09420', '-77.13620'), ('TAPPAHANNOCK', 2068, '37.92000', '-76.86780'), ('UPRIGHT', None, '37.80940', '-76.83770')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'PAZ049': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALLENWOOD', None, '41.09000', '-76.90000'), ('FOREST HILL', None, '40.97000', '-77.01000'), ('HARTLETON', 260, '40.89940', '-77.15680'), ('LAURELTON CENTER', None, '40.93000', '-77.20000'), ('LEWISBURG', 5620, '40.96410', '-76.89050'), ('LINNTOWN', 1542, '40.95690', '-76.90090'), ('MIFFLINBURG', 3594, '40.92010', '-77.04710'), ('NEW BERLIN', 838, '40.88040', '-76.98530'), ('NEW COLUMBIA', None, '41.04000', '-76.88000'), ('R.B. WINTER SP', None, '40.99000', '-77.19000'), ('SAND BRIDGE SP', None, '40.98000', '-77.10000'), ('SPRUCE RUN RESERVIOR', None, '41.02000', '-77.00000'), ('VICKSBURG', None, '40.94000', '-76.98000'), ('WEIKERT', None, '40.86000', '-77.28000'), ('WINFIELD', None, '40.90000', '-76.87000')], 'partOfState': 'CENTRAL', 'wfo': 'CTP'}, -'TXZ012': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AMARILLO', 173627, '35.20260', '-101.81870'), ('BUSHLAND', None, '35.19000', '-102.06270'), ('VALLEY DE ORO', None, '35.45170', '-102.10600')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ011': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ADRIAN', 159, '35.27590', '-102.66390'), ('BOYS RANCH', None, '35.51110', '-102.25080'), ('VEGA', 936, '35.24660', '-102.42590'), ('WILDORADO', None, '35.21640', '-102.24440')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ010': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CANADIAN', 2233, '35.91070', '-100.38330'), ('GLAZIER', None, '36.01140', '-100.26330'), ('LAKE MARVIN', None, '35.89390', '-100.16580')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ017': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUFFALO LAKE', None, '34.88890', '-102.13390'), ('CANYON', 12875, '34.98130', '-101.92160'), ('LAKE TANGLEWOOD', 825, '35.05900', '-101.78290'), ('PALO DURO CANYON', None, '34.94890', '-101.67190'), ('TIMBERCREEK CANYON', 406, '35.05480', '-101.81600'), ('UMBARGER', None, '34.95440', '-102.10500')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ016': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOOTLEG', None, '34.82890', '-102.81361'), ('DAWN', None, '34.91030', '-102.19940'), ('GLENRIO', None, '35.17860', '-103.02190'), ('HEREFORD', 14597, '34.82340', '-102.39840'), ('SIMMS', None, '35.03340', '-102.65770')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ015': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALLISON', None, '35.60580', '-100.10030'), ('BRISCOE', None, '35.58360', '-100.28940'), ('KELLERVILLE', None, '35.37170', '-100.50250'), ('LELA', None, '35.22750', '-100.34250'), ('MOBEETIE', 107, '35.53050', '-100.44210'), ('NEW MOBEETIE', None, '35.53190', '-100.44110'), ('SHAMROCK', 2029, '35.21600', '-100.24550'), ('TWITTY', None, '35.31390', '-100.23580'), ('WHEELER', 1378, '35.44030', '-100.27500')], 'partOfState': '', 'wfo': 'AMA'}, -'TXZ014': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALANREED', None, '35.21250', '-100.73390'), ('KINGSMILL', None, '35.48830', '-101.05920'), ('LAKE MCCLELLAN', None, '35.21690', '-100.87190'), ('LEFORS', 559, '35.43970', '-100.80330'), ('MCLEAN', 830, '35.23290', '-100.60000'), ('PAMPA', 17887, '35.54700', '-100.96430')], 'partOfState': '', 'wfo': 'AMA'}, -'NYZ005': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CATO', 601, '43.16800', '-76.57240'), ('FAIR HAVEN', 884, '43.32570', '-76.70240'), ('MERIDIAN', 350, '43.16350', '-76.53540'), ('PORT BYRON', 1297, '43.03670', '-76.62580'), ('WEEDSPORT', 2017, '43.04700', '-76.56470')], 'partOfState': 'CENTRAL', 'wfo': 'BUF'}, -'PAZ040': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('HANKINS', None, '41.81670', '-75.10000'), ('ABRAHAMSVILLE', None, '41.76670', '-75.11670'), ('ALDENVILLE', None, '41.65000', '-75.36670'), ('BROWNDALE', None, '41.66670', '-75.45000'), ('CALKINS', None, '41.65000', '-75.15000'), ('DAMASCUS', None, '41.70000', '-75.06670'), ('EQUINUNK', None, '41.85000', '-75.21670'), ('HIAWATHA', None, '41.91670', '-75.36670'), ('LAKE COMO', None, '41.85000', '-75.33330'), ('LAKEWOOD', None, '41.85000', '-75.36670'), ('LOOKOUT', None, '41.78330', '-75.16670'), ('MILANVILLE', None, '41.66670', '-75.06670'), ('ORSON', None, '41.81670', '-75.45000'), ('PLEASANT MOUNT', None, '41.73330', '-75.41670'), ('PRESTON PARK', None, '41.88330', '-75.35000'), ('RILEYVILLE', None, '41.71670', '-75.21670'), ('RUTLEDGEDALE', None, '41.71670', '-75.18330'), ('SCOTT CENTER', None, '41.93330', '-75.40000'), ('SHEHAWKEN', None, '41.88330', '-75.38330'), ('SHERMAN', None, '41.98330', '-75.43330'), ('STALKER', None, '41.83330', '-75.11670'), ('STARLIGHT', None, '41.90000', '-75.33330'), ('STARRUCA', None, '41.90280', '-75.45440'), ('WINTERDALE', None, '41.95000', '-75.35000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'PAZ043': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALDOVIN', None, '41.61670', '-75.93330'), ('AVERY', None, '41.63330', '-75.93330'), ('BEAUMONT', None, '41.41670', '-76.00000'), ('CENTER MORELAND', None, '41.41670', '-75.93330'), ('EATONVILLE', None, '41.51670', '-75.96670'), ('EVANS FALLS', None, '41.46670', '-76.01670'), ('FACTORYVILLE', 1144, '41.56000', '-75.78350'), ('FALLS', None, '41.46670', '-75.88330'), ('FORKSTON', None, '41.53330', '-76.13330'), ('JENNINGSVILLE', None, '41.58330', '-76.15000'), ('KASSON BROOK', None, '41.46670', '-76.15000'), ('LACEYVILLE', 396, '41.64500', '-76.15950'), ('LAKE CAREY', None, '41.60000', '-75.95000'), ('LAKE SHERIDAN', None, '41.60000', '-75.76670'), ('LAKE WINOLA', None, '41.50000', '-75.86670'), ('LOVELTON', None, '41.53330', '-76.18330'), ('MEHOOPANY', None, '41.56670', '-76.06670'), ('MESHOPPEN', 459, '41.61360', '-76.04590'), ('MILL CITY', None, '41.50000', '-75.85000'), ('NICHOLSON', 713, '41.62740', '-75.78570'), ('NOXEN', None, '41.43330', '-76.06670'), ('OSTERHOUT', None, '41.51670', '-75.91670'), ('RUGGLES', None, '41.40000', '-76.05000'), ('RUSSELL HILL', None, '41.58330', '-76.00000'), ('STOWELL', None, '41.58330', '-76.20000'), ('STULL', None, '41.41670', '-76.10000'), ('TUNKHANNOCK', 1911, '41.54100', '-75.94930'), ('VERNON', None, '41.45000', '-75.96670'), ('VOSBURG', None, '41.56670', '-76.00000'), ('WALLS CORNERS', None, '41.53330', '-75.80000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'PAZ042': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('DUSHORE', 663, '41.52530', '-76.39910'), ('EAGLES MERE', 153, '41.40970', '-76.58330'), ('FORKSVILLE', 147, '41.49090', '-76.60390'), ('KETTLE CREEK GORGE', None, '41.42000', '-76.69000'), ('LAPORTE', 290, '41.41860', '-76.49170'), ('LINCOLN FALLS', None, '41.51000', '-76.68000'), ('MUNCY VALLEY', None, '41.35000', '-76.60000'), ('RICKETTS GLEN SP', None, '41.35000', '-76.31000'), ('SHUNK', None, '41.56000', '-76.76000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ045': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AVIS', 1492, '41.18620', '-77.31640'), ('BEECH CREEK', 717, '41.07470', '-77.58600'), ('CARROLL', None, '41.06000', '-77.23000'), ('DUNNSTOWN', 1365, '41.14690', '-77.42110'), ('LAMAR', None, '41.01000', '-77.51000'), ('LOCK HAVEN', 9149, '41.13590', '-77.45320'), ('LOGANTON', 435, '41.03370', '-77.30240'), ('MACKEYVILLE', None, '41.05000', '-77.43000'), ('MCELHATTAN', None, '41.17000', '-77.37000'), ('MILL HALL', 1568, '41.10440', '-77.49040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'PAZ044': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARCHBALD', 6220, '41.50720', '-75.54220'), ('BLAKELY', 7027, '41.48780', '-75.59780'), ('CARBONDALE', 9804, '41.57110', '-75.50550'), ('CLARKS GREEN', 1630, '41.49970', '-75.69560'), ('CLARKS SUMMIT', 5126, '41.49020', '-75.70750'), ('CORTEZ', None, '41.46670', '-75.46670'), ('CRAIG', None, '41.55000', '-75.68330'), ('DALEVILLE', None, '41.30000', '-75.51670'), ('DALTON', 1294, '41.53790', '-75.73860'), ('DICKSON CITY', 6205, '41.46880', '-75.63480'), ('DRINKER', None, '41.40000', '-75.48330'), ('DUNMORE', 14018, '41.41560', '-75.60710'), ('EAST BENTON', None, '41.58330', '-75.66670'), ('ELMHURST', None, '41.38330', '-75.55000'), ('FELLS CORNERS', None, '41.30000', '-75.53330'), ('FLEETVILLE', None, '41.60000', '-75.71670'), ('GLENBURN', 1212, '41.50920', '-75.73520'), ('JERMYN', 2287, '41.52670', '-75.54660'), ('JESSUP', 4718, '41.45820', '-75.54770'), ('LA PLUME', None, '41.55000', '-75.76670'), ('LEHIGH', None, '41.26670', '-75.46670'), ('MARSHBROOK', None, '41.63330', '-75.68330'), ('MAYFIELD', 1756, '41.53700', '-75.53370'), ('MOOSIC', 5575, '41.35700', '-75.70230'), ('MOSCOW', 1883, '41.34030', '-75.52910'), ('MOUNT COBB', 2140, '41.42860', '-75.49720'), ('OAKHILL', None, '41.36670', '-75.71670'), ('OLD FORGE', 8798, '41.36670', '-75.75000'), ('OLD FORGE', 8798, '41.36890', '-75.74230'), ('OLYPHANT', 4978, '41.44920', '-75.58020'), ('PECKVILLE', None, '41.48330', '-75.61670'), ('QUICKTOWN', None, '41.36670', '-75.46670'), ('RICHMONDALE', None, '41.63330', '-75.50000'), ('SCRANTON', 76415, '41.40400', '-75.66610'), ('SIMPSON', None, '41.58330', '-75.48330'), ('SPRINGBROOK CORNERS', None, '41.30000', '-75.60000'), ('TAYLOR', 6475, '41.39870', '-75.71370'), ('THROOP', 4010, '41.43850', '-75.59600'), ('TOMPKINSVILLE', None, '41.58330', '-75.61670'), ('VANDLING', 738, '41.63110', '-75.47060'), ('WALLSVILLE', None, '41.58330', '-75.73330'), ('WAVERLY', None, '41.51670', '-75.71670'), ('WEST SCRANTON', None, '41.41670', '-75.68330'), ('WIMMERS', None, '41.40000', '-75.48330'), ('WINTON', None, '41.48330', '-75.55000'), ('YOSTVILLE', None, '41.30000', '-75.56670')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'PAZ047': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALBERT', None, '41.11670', '-75.95000'), ('ALDEN', None, '41.18330', '-76.01670'), ('ASHLEY', 2866, '41.21370', '-75.89900'), ('ASHMORE', None, '40.96670', '-75.90000'), ('AVOCA', 2851, '41.33770', '-75.74310'), ('BEACH HAVEN', None, '41.06670', '-76.18330'), ('BEAR CREEK', None, '41.18330', '-75.76670'), ('BRIGGSVILLE', None, '41.03330', '-76.13330'), ('CAMBRA', None, '41.20000', '-76.31670'), ('CARVERTON', None, '41.35000', '-75.85000'), ('CONYNGHAM', 1958, '40.99150', '-76.06020'), ('COURTDALE', 791, '41.28550', '-75.91520'), ('DALLAS', 2557, '41.33180', '-75.97230'), ('DERINGER', None, '40.95000', '-76.15000'), ('DORRANCE', None, '41.10000', '-76.00000'), ('DRIFTON', None, '41.00000', '-75.91670'), ('DRUMS', None, '41.01670', '-76.00000'), ('DUPONT', 2719, '41.32400', '-75.74240'), ('DURYEA', 4634, '41.35180', '-75.77630'), ('EAST BERWICK', 1998, '41.06470', '-76.22070'), ('EDWARDSVILLE', 4984, '41.26040', '-75.90700'), ('EXETER', 5955, '41.33020', '-75.82250'), ('FAIRMOUNT SPGS', None, '41.25000', '-76.31670'), ('FAIRVIEW HGTS', None, '41.16670', '-75.90000'), ('FERN BROOK', None, '41.33330', '-75.96670'), ('FERN GLEN', None, '40.95000', '-76.16670'), ('FORTY FORT', 4579, '41.28900', '-75.87050'), ('FREELAND', 3643, '41.02070', '-75.89630'), ('GLEN LYON', 1881, '41.18400', '-76.07140'), ('GLEN SUMMIT', None, '41.15000', '-75.86670'), ('GLENDALE', None, '41.33330', '-75.71670'), ('HARDING', None, '41.36670', '-75.81670'), ('HARVEYS LAKE', 2888, '41.36210', '-76.03220'), ('HAZLETON', 23329, '40.95010', '-75.97230'), ('HUDSON', None, '41.26670', '-75.83330'), ('HUGHESTOWN', 1541, '41.33010', '-75.77190'), ('HUNTINGTON MILLS', None, '41.18330', '-76.23330'), ('INKERMAN', None, '41.30000', '-75.81670'), ('JEANESVILLE', None, '40.93330', '-75.96670'), ('JEDDO', 144, '40.99240', '-75.89760'), ('KINGSTON', 13855, '41.26410', '-75.88740'), ('KOONSVILLE', None, '41.16670', '-76.16670'), ('LAFLIN', 1502, '41.28950', '-75.79620'), ('LARKSVILLE', 4694, '41.25940', '-75.93230'), ('LAUREL RUN', 723, '41.21930', '-75.84760'), ('LEE', None, '41.16670', '-76.10000'), ('LEHMAN', None, '41.31670', '-76.03330'), ('LUZERNE', 2952, '41.28600', '-75.89720'), ('LYNWOOD', None, '41.23330', '-75.96670'), ('MINERS MILLS', None, '41.26670', '-75.83330'), ('MOUNTAIN TOP', 15269, '41.16670', '-75.90000'), ('MUHLENBERG', None, '41.23330', '-76.15000'), ('NANTICOKE', 10955, '41.20030', '-76.00000'), ('NESCOPECK', 1528, '41.05270', '-76.21250'), ('NEW COLUMBUS', 215, '41.16890', '-76.28660'), ('NUANGOLA', 671, '41.15830', '-75.97800'), ('ORANGE', None, '41.40000', '-75.91670'), ('PARSONS', None, '41.26670', '-75.85000'), ('PENN LAKE PARK', 269, '41.11490', '-75.77460'), ('PENOBSCOT', None, '41.16670', '-75.88330'), ('PIKES CREEK', None, '41.30000', '-76.10000'), ('PITTSTON', 8104, '41.32610', '-75.78790'), ('PLAINS', None, '41.27350', '-75.85390'), ('PLYMOUTH', 6507, '41.24110', '-75.95020'), ('POND HILL', None, '41.13330', '-76.11670'), ('PRESTON', None, '41.20000', '-75.91670'), ('PRINGLE', 991, '41.27660', '-75.90310'), ('RANSOM', None, '41.40000', '-75.83330'), ('RED ROCK', None, '41.28330', '-76.31670'), ('ROCK GLEN', None, '40.96670', '-76.18330'), ('SHAVERTOWN', None, '41.31670', '-75.95000'), ('SHICKSHINNY', 959, '41.15320', '-76.15160'), ('SLOCUM', None, '41.13330', '-76.05000'), ('STOCKTON', None, '40.96670', '-75.91670'), ('STODDARTSVILLE', None, '41.13330', '-75.63330'), ('SUGAR NOTCH', 1023, '41.19220', '-75.93220'), ('SWEET VALLEY', None, '41.28330', '-76.15000'), ('SWOYERSVILLE', 5157, '41.29850', '-75.87900'), ('WARRIOR RUN', 624, '41.18740', '-75.95290'), ('WEST HAZLETON', 3542, '40.97070', '-76.01320'), ('WEST PITTSTON', 5072, '41.32940', '-75.80000'), ('WEST WYOMING', 2833, '41.31940', '-75.85240'), ('WESTMINISTER', None, '41.28330', '-75.78330'), ('WESTON', None, '40.93330', '-76.13330'), ('WILKES-BARRE', 43123, '41.24640', '-75.87580'), ('WILKES-BARRE TOWNSHIP', 3235, '41.23750', '-75.86310'), ('WOODSIDE-DRIFTON', None, '41.01190', '-75.89810'), ('WYOMING', 3221, '41.30580', '-75.84180'), ('YATESVILLE', 649, '41.30290', '-75.78200')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'PAZ046': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BIGGERTOWN', None, '41.26000', '-76.50000'), ('COGAN STATION', None, '41.31000', '-77.03000'), ('COLLOMSVILLE', None, '41.15000', '-77.15000'), ('DUBOISTOWN', 1280, '41.22310', '-77.03830'), ('ELIMSPORT', None, '41.13000', '-77.01000'), ('GARDEN VIEW', 2679, '41.25650', '-77.04870'), ('HUGHESVILLE', 2220, '41.23850', '-76.72640'), ('JERSEY SHORE', 4482, '41.20070', '-77.26700'), ('LAIRDSVILLE', None, '41.23000', '-76.61000'), ('LOYALSOCKVILLE', None, '41.32000', '-76.92000'), ('MONTGOMERY', 1695, '41.17090', '-76.87520'), ('MONTOURSVILLE', 4777, '41.24710', '-76.92000'), ('MUNCY', 2663, '41.20190', '-76.78590'), ('PICTURE ROCKS', 693, '41.28000', '-76.70920'), ('SOUTH WILLIAMSPORT', 6412, '41.22990', '-77.00130'), ('WILLIAMSPORT', 30706, '41.24000', '-77.02000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'VAZ075': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('COLES POINT', None, '38.14850', '-76.63750'), ('COLONIAL BEACH', 3228, '38.25480', '-76.97070'), ('CURRIOMAN LANDING', None, '38.15400', '-76.76500'), ('ERICA', None, '38.11830', '-76.67920'), ('HAGUE', None, '38.07230', '-76.65180'), ('KINSALE', None, '38.02990', '-76.57890'), ('KREMLIN', None, '38.02940', '-76.69170'), ('LEEDSTOWN', None, '38.11160', '-76.99890'), ('LERTY', None, '38.14200', '-76.86710'), ('MONTROSS', 315, '38.09310', '-76.82280'), ('MOUNT HOLLY', None, '38.09110', '-76.71850'), ('OAK GROVE', None, '38.18170', '-76.99740'), ('OLDHAMS', None, '38.00250', '-76.66920'), ('PEEDS', None, '38.10060', '-76.92280'), ('POTOMAC BEACH', None, '38.27280', '-77.00010'), ('POTOMAC MILLS', None, '38.16330', '-76.94130'), ('SANDY POINT', None, '38.06060', '-76.53360'), ('STRATFORD HALL', None, '38.14380', '-76.83560'), ('TEMPLEMAN', None, '38.07060', '-76.77530'), ('THREEWAY', None, '37.99280', '-76.69900'), ('WESTMORELAND', None, '38.06410', '-76.55910'), ('WESTMORELAND STATE PARK', None, '38.16210', '-76.86530')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'MOZ041': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ASHLAND', 1869, '38.77390', '-92.25670'), ('CENTRALIA', 3774, '39.21150', '-92.13160'), ('COLUMBIA', 84531, '38.95410', '-92.32670'), ('EASLEY', None, '38.80000', '-92.38300'), ('HALLSVILLE', 978, '39.11580', '-92.21970'), ('HARRISBURG', 184, '39.14220', '-92.45970'), ('HARTSBURG', 108, '38.69520', '-92.30980'), ('MCBAINE', 17, '38.88700', '-92.44650'), ('MIDWAY', None, '38.98300', '-92.45000'), ('MURRY', None, '39.04290', '-92.17680'), ('ROCHEPORT', 208, '38.97950', '-92.56330'), ('STURGEON', 944, '39.23380', '-92.28130'), ('WILTON', None, '38.73510', '-92.35910')], 'partOfState': 'CENTRAL', 'wfo': 'LSX'}, -'OHZ012': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('EASTLAKE', 20255, '41.65960', '-81.43060'), ('FAIRPORT HARBOR', 3180, '41.74750', '-81.27330'), ('GRAND RIVER', 345, '41.74220', '-81.28600'), ('KIRTLAND', 6670, '41.59840', '-81.33800'), ('KIRTLAND HILLS', 597, '41.64250', '-81.31810'), ('MADISON', 2921, '41.77170', '-81.05320'), ('MENTOR', 50278, '41.69150', '-81.33450'), ('MENTOR-ON-THE-LAKE', 8127, '41.71370', '-81.36490'), ('NORTH MADISON', 8451, '41.82970', '-81.05480'), ('NORTH PERRY', 838, '41.80680', '-81.12550'), ('PAINESVILLE', 17503, '41.72710', '-81.24830'), ('PERRY', 1195, '41.76730', '-81.14300'), ('WAITE HILL', 446, '41.60980', '-81.38800'), ('WICKLIFFE', 13484, '41.60810', '-81.46750'), ('WILLOUGHBY', 22621, '41.64630', '-81.40940'), ('WILLOUGHBY HILLS', 8595, '41.58480', '-81.43520'), ('WILLOWICK', 14361, '41.63500', '-81.46850')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHZ013': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AQUILLA', 372, '41.54600', '-81.17120'), ('BAINBRIDGE', 1012, '41.39340', '-81.33720'), ('BURTON', 1450, '41.47050', '-81.14640'), ('CHARDON', 5156, '41.57910', '-81.20850'), ('CHESTERLAND', 2646, '41.52420', '-81.34300'), ('MIDDLEFIELD', 2233, '41.45910', '-81.07510'), ('SOUTH RUSSELL', 4022, '41.43460', '-81.33280')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHZ010': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AMHERST', 11797, '41.40010', '-82.23070'), ('AVON', 11446, '41.45130', '-82.02350'), ('AVON LAKE', 18145, '41.49370', '-82.01590'), ('EATON ESTATES', 1409, '41.30550', '-82.00960'), ('ELYRIA', 55953, '41.37990', '-82.10560'), ('GRAFTON', 2302, '41.28050', '-82.03320'), ('KIPTON', 265, '41.26700', '-82.30480'), ('LAGRANGE', 1815, '41.23880', '-82.12050'), ('LORAIN', 68652, '41.44150', '-82.18340'), ('NORTH RIDGEVILLE', 22338, '41.38800', '-82.01520'), ('OBERLIN', 8195, '41.29040', '-82.21670'), ('ROCHESTER', 190, '41.12480', '-82.30630'), ('SHEFFIELD', 2949, '41.45690', '-82.09460'), ('SHEFFIELD LAKE', 9371, '41.48880', '-82.09790'), ('SOUTH AMHERST', 1863, '41.35390', '-82.23820'), ('VERMILION', 10927, '41.41200', '-82.31820'), ('WELLINGTON', 4511, '41.16460', '-82.22360')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHZ011': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAY VILLAGE', 16087, '41.48980', '-81.92930'), ('BEACHWOOD', 12186, '41.47870', '-81.50250'), ('BEDFORD', 14214, '41.39130', '-81.53730'), ('BEDFORD HEIGHTS', 11375, '41.40520', '-81.50620'), ('BENTLEYVILLE', 947, '41.41350', '-81.41320'), ('BEREA', 18970, '41.36990', '-81.86270'), ('BRATENAHL', 1337, '41.55780', '-81.59700'), ('BRECKSVILLE', 13382, '41.30760', '-81.61850'), ('BROADVIEW HEIGHTS', 15967, '41.31920', '-81.67990'), ('BROOK PARK', 21218, '41.40010', '-81.82690'), ('BROOKLYN', 11586, '41.43460', '-81.74950'), ('BROOKLYN HEIGHTS', 1558, '41.41560', '-81.66540'), ('CHAGRIN FALLS', 4024, '41.43120', '-81.38960'), ('CLEVELAND', 478403, '41.47970', '-81.67850'), ('CLEVELAND HEIGHTS', 49958, '41.50960', '-81.56350'), ('CUYAHOGA HEIGHTS', 599, '41.43610', '-81.65330'), ('EAST CLEVELAND', 27217, '41.53120', '-81.58020'), ('EUCLID', 52717, '41.59230', '-81.51940'), ('FAIRVIEW PARK', 17572, '41.44060', '-81.85410'), ('GARFIELD HEIGHTS', 30734, '41.41970', '-81.60400'), ('GATES MILLS', 2493, '41.53250', '-81.41070'), ('GLENWILLOW', 449, '41.36080', '-81.47240'), ('HIGHLAND HEIGHTS', 8082, '41.54900', '-81.47160'), ('HUNTING VALLEY', 735, '41.47300', '-81.40910'), ('INDEPENDENCE', 7109, '41.38030', '-81.64150'), ('LAKEWOOD', 56646, '41.48380', '-81.80150'), ('LINNDALE', 117, '41.44510', '-81.76650'), ('LYNDHURST', 15279, '41.51550', '-81.49260'), ('MAPLE HEIGHTS', 26156, '41.40890', '-81.56280'), ('MAYFIELD', 3435, '41.55350', '-81.43530'), ('MAYFIELD HEIGHTS', 19386, '41.51740', '-81.45400'), ('MIDDLEBURG HEIGHTS', 15542, '41.36760', '-81.81490'), ('MORELAND HILLS', 3298, '41.44450', '-81.43110'), ('NEWBURGH HEIGHTS', 2389, '41.45260', '-81.66230'), ('NORTH OLMSTED', 34113, '41.41470', '-81.92050'), ('NORTH RANDALL', 906, '41.43120', '-81.53070'), ('NORTH ROYALTON', 28648, '41.31240', '-81.74510'), ('OLMSTED FALLS', 7962, '41.36750', '-81.90500'), ('ORANGE', 3236, '41.43850', '-81.47200'), ('PARMA', 85655, '41.38350', '-81.72940'), ('PARMA HEIGHTS', 21659, '41.38600', '-81.76360'), ('PEPPER PIKE', 6040, '41.47960', '-81.46020'), ('RICHMOND HEIGHTS', 10944, '41.55810', '-81.50380'), ('ROCKY RIVER', 20735, '41.47310', '-81.85430'), ('SEVEN HILLS', 12080, '41.37950', '-81.67510'), ('SHAKER HEIGHTS', 29405, '41.47560', '-81.54780'), ('SOLON', 21802, '41.38620', '-81.44090'), ('SOUTH EUCLID', 23537, '41.52420', '-81.52520'), ('STRONGSVILLE', 43858, '41.31270', '-81.83210'), ('UNIVERSITY HEIGHTS', 14146, '41.49470', '-81.53550'), ('VALLEY VIEW', 2179, '41.38630', '-81.60690'), ('WALTON HILLS', 2400, '41.36420', '-81.55450'), ('WARRENSVILLE HEIGHTS', 15109, '41.43860', '-81.52340'), ('WESTLAKE', 31719, '41.45440', '-81.92880'), ('WOODMERE', 828, '41.45920', '-81.47940')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHZ016': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELMORE', 171, '41.15440', '-83.94140'), ('CLOVERDALE', 201, '41.01960', '-84.30420'), ('COLUMBUS GROVE', 2200, '40.91940', '-84.05820'), ('CONTINENTAL', 1188, '41.09890', '-84.26680'), ('DUPONT', 268, '41.05490', '-84.30210'), ('FORT JENNINGS', 432, '40.90610', '-84.29930'), ('GILBOA', 170, '41.01890', '-83.92140'), ('GLANDORF', 919, '41.03030', '-84.07920'), ('KALIDA', 1031, '40.98590', '-84.19550'), ('LEIPSIC', 2236, '41.09930', '-83.98450'), ('MILLER CITY', 136, '41.10190', '-84.13200'), ('OTTAWA', 4367, '41.02080', '-84.04140'), ('OTTOVILLE', 873, '40.93160', '-84.33880'), ('PANDORA', 1188, '40.94770', '-83.96120'), ('WEST LEIPSIC', 271, '41.10540', '-84.00180')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'OHZ017': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ARCADIA', 537, '41.11130', '-83.51130'), ('ARLINGTON', 1351, '40.89270', '-83.65370'), ('BENTON RIDGE', 315, '41.00480', '-83.79200'), ('FINDLAY', 38967, '41.04300', '-83.64220'), ('JENERA', 235, '40.89980', '-83.72740'), ('MCCOMB', 1676, '41.10670', '-83.78960'), ('MOUNT BLANCHARD', 484, '40.89850', '-83.55720'), ('MOUNT CORY', 203, '40.93480', '-83.82430'), ('RAWSON', 465, '40.95670', '-83.78570'), ('VAN BUREN', 313, '41.13900', '-83.64920'), ('VANLUE', 371, '40.97640', '-83.48180')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'NEZ092': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('SUMMERFIELD', 211, '39.99640', '-96.34900'), ('BURCHARD', 103, '40.14980', '-96.34780'), ('DU BOIS', 166, '40.03400', '-96.04590'), ('LEWISTON', 86, '40.24340', '-96.40740'), ('PAWNEE CITY', 1033, '40.11060', '-96.15200'), ('STEINAUER', 74, '40.20700', '-96.23360'), ('TABLE ROCK', 264, '40.17870', '-96.08920')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ093': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BARADA', 28, '40.21830', '-95.57860'), ('DAWSON', 209, '40.13090', '-95.82980'), ('FALLS CITY', 4671, '40.06530', '-95.59960'), ('HUMBOLDT', 941, '40.16620', '-95.94420'), ('PRESTON', 50, '40.03410', '-95.51730'), ('RULO', 226, '40.05200', '-95.43000'), ('SALEM', 138, '40.07710', '-95.72680'), ('SHUBERT', 252, '40.23580', '-95.68330'), ('STELLA', 220, '40.23160', '-95.77260'), ('VERDON', 223, '40.14890', '-95.71080')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'OHZ018': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ATTICA', 955, '41.06520', '-82.88630'), ('BETTSVILLE', 784, '41.24400', '-83.23360'), ('BLOOMVILLE', 1045, '41.05100', '-83.01330'), ('FOSTORIA', 13931, '41.15920', '-83.41360'), ('NEW RIEGEL', 226, '41.05150', '-83.31900'), ('REPUBLIC', 614, '41.12480', '-83.01610'), ('TIFFIN', 18135, '41.11670', '-83.17750')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'OHZ019': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('GREENWICH', 1525, '41.03110', '-82.51790'), ('MONROEVILLE', 1433, '41.24400', '-82.70120'), ('NEW LONDON', 2696, '41.07940', '-82.40620'), ('NORTH FAIRFIELD', 573, '41.10480', '-82.61300'), ('NORWALK', 16238, '41.24210', '-82.61050'), ('PLYMOUTH', 1852, '40.99500', '-82.66800'), ('WAKEMAN', 951, '41.25590', '-82.40400'), ('WILLARD', 6806, '41.05080', '-82.72260')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'UTZ029': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CANYONLANDS NP', None, '38.40000', '-109.88000'), ('FRY CYN', None, '37.63000', '-110.15000'), ('GRAND CO ARPT', None, '38.48330', '-109.45000'), ('WHITE CYN', None, '37.63000', '-110.43000')], 'partOfState': 'SOUTHEAST', 'wfo': 'GJT'}, -'UTZ028': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('EASTLAND', None, '37.80000', '-109.15000'), ('LA SAL', 339, '38.33000', '-109.18000'), ('LA SAL JCT', None, '38.32000', '-109.38000'), ('LA SAL JCT ARPT', None, '38.30000', '-109.40000'), ('LOCKERBY', None, '37.80000', '-109.08000'), ('MONTICELLO', 1958, '37.87150', '-109.33550'), ('MONTICELLO ARPT', None, '37.93330', '-109.35000'), ('SAN JUAN CO ARPT', None, '37.93000', '-109.35000'), ('SUMMIT PT', None, '38.05000', '-109.12000'), ('UCOLO', None, '37.80000', '-109.08000'), ('VERDURE', None, '37.78000', '-109.35000')], 'partOfState': 'SOUTHEAST', 'wfo': 'GJT'}, -'ILZ029': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALTA', None, '40.81670', '-89.63330'), ('BARTONVILLE', 6310, '40.63760', '-89.66420'), ('BELLEVUE', 1887, '40.68630', '-89.67390'), ('BRIMFIELD', 933, '40.83820', '-89.88390'), ('CHILLICOTHE', 5996, '40.91830', '-89.49930'), ('DUNLAP', 926, '40.86080', '-89.67660'), ('ELMORE', None, '40.96670', '-89.96670'), ('ELMWOOD', 1945, '40.77910', '-89.96690'), ('GLASFORD', 1076, '40.57230', '-89.81320'), ('HANNA CITY', 1013, '40.69220', '-89.79310'), ('KICKAPOO', None, '40.80000', '-89.75000'), ('KINGSTON MINES', 259, '40.55820', '-89.77060'), ('LAURA', None, '40.91670', '-89.91670'), ('MAPLETON', 227, '40.56970', '-89.72140'), ('MONICA', None, '40.93330', '-89.83330'), ('MOSSVILLE', None, '40.81670', '-89.56670'), ('NORWOOD', 473, '40.70680', '-89.69950'), ('PEORIA', 112936, '40.74500', '-89.60920'), ('PRINCEVILLE', 1621, '40.93150', '-89.75560'), ('ROME', 1776, '40.87840', '-89.51170'), ('SMITHVILLE', None, '40.66670', '-89.80000'), ('TRIVOLI', None, '40.69220', '-89.88330'), ('WEST PEORIA', 4762, '40.69920', '-89.63350')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'ILZ028': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BRADFORD', 787, '41.17690', '-89.65720'), ('CASTLETON', None, '41.11670', '-89.70000'), ('DUNCAN', None, '40.98330', '-89.78330'), ('ELMIRA', None, '41.18330', '-89.83330'), ('LA FAYETTE', 227, '41.10980', '-89.97350'), ('LOMBARDVILLE', None, '41.23330', '-89.65000'), ('OSCEOLA', None, '41.21670', '-89.78330'), ('TOULON', 1400, '41.09450', '-89.86370'), ('WEST JERSEY', None, '41.01670', '-89.93330'), ('WYOMING', 1424, '41.06450', '-89.77230')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ILX'}, -'MSZ059': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('FAYETTE', 2242, '31.71170', '-91.06170')], 'partOfState': 'SOUTHWEST', 'wfo': 'JAN'}, -'MOZ091': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DIGGINS', 298, '37.17240', '-92.85410'), ('ELKLAND', None, '37.44300', '-93.03070'), ('FORDLAND', 684, '37.15750', '-92.94050'), ('I-44 NEAR MILE MARKER 100', None, '37.34800', '-92.92000'), ('MARSHFIELD', 5720, '37.33850', '-92.90690'), ('NIANGUA', 445, '37.38710', '-92.83240'), ('NORTHVIEW', None, '37.28660', '-92.99630'), ('RADER', None, '37.46020', '-92.71880'), ('ROGERSVILLE', 1508, '37.11680', '-93.05550'), ('SEYMOUR', 1834, '37.14630', '-92.76850')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'ILZ021': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BRACEVILLE', 792, '41.22420', '-88.26640'), ('CARBON HILL', 392, '41.29630', '-88.29950'), ('COAL CITY', 4797, '41.28830', '-88.27820'), ('DIAMOND', 1393, '41.28870', '-88.25520'), ('EAST BROOKLYN', 123, '41.17240', '-88.26570'), ('GARDNER', 1406, '41.18770', '-88.31220'), ('KINSMAN', 109, '41.19060', '-88.56970'), ('MAZON', 904, '41.23960', '-88.42490'), ('MORRIS', 11928, '41.36860', '-88.42770'), ('SOUTH WILMINGTON', 621, '41.17420', '-88.27630'), ('VERONA', 257, '41.21570', '-88.50500')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ILZ020': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BOULDER HILL', 8169, '41.71250', '-88.33610'), ('LISBON', 248, '41.48060', '-88.48270'), ('MILLINGTON', 458, '41.56100', '-88.59920'), ('NEWARK', 887, '41.53710', '-88.58070'), ('OSWEGO', 13326, '41.69790', '-88.33260'), ('PLANO', 5633, '41.66330', '-88.53480'), ('YORKVILLE', 6189, '41.64220', '-88.44750')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ILZ023': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AROMA PARK', 821, '41.07980', '-87.80540'), ('BONFIELD', 364, '41.14720', '-88.05670'), ('BOURBONNAIS', 15256, '41.16320', '-87.88040'), ('BRADLEY', 12784, '41.14720', '-87.85570'), ('BUCKINGHAM', 237, '41.04680', '-88.17610'), ('ESSEX', 554, '41.17830', '-88.19470'), ('GRANT PARK', 1358, '41.23920', '-87.64460'), ('HERSCHER', 1523, '41.04910', '-88.10060'), ('HOPKINS PARK', 711, '41.07220', '-87.61470'), ('IRWIN', 92, '41.05250', '-87.98400'), ('KANKAKEE', 27491, '41.11550', '-87.86120'), ('MANTENO', 6414, '41.25120', '-87.83670'), ('MOMENCE', 3171, '41.16350', '-87.66360'), ('REDDICK', 219, '41.09730', '-88.24880'), ('ST. ANNE', 1212, '41.02330', '-87.71700'), ('SUN RIVER TERRACE', 383, '41.12650', '-87.73460'), ('UNION HILL', 66, '41.10930', '-88.14550')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'MSZ058': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ENTERPRISE', 474, '32.17490', '-88.81370'), ('PACHUTA', 245, '32.04280', '-88.88440'), ('QUITMAN', 2463, '32.04130', '-88.72040'), ('SHUBUTA', 651, '31.86080', '-88.70240'), ('STONEWALL', 1149, '32.13750', '-88.79590')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'ILZ025': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BALD BLUFF', None, '41.01670', '-90.85000'), ('BIG RIVER STATE FOREST', None, '41.03330', '-90.91670'), ('BIGGSVILLE', 343, '40.85350', '-90.86130'), ('CARMAN', None, '40.73330', '-91.06670'), ('CARTHAGE LAKE', None, '40.80000', '-91.08330'), ('DECORRA', None, '40.73330', '-90.96670'), ('DELABAR STATE PARK', None, '40.96670', '-90.93330'), ('GLADSTONE', 284, '40.86370', '-90.95750'), ('GULFPORT', None, '40.80900', '-91.08360'), ('HEAPSVILLE', None, '40.76670', '-91.06670'), ('HOPPER', None, '40.78330', '-90.98330'), ('LOMAX', 477, '40.67760', '-91.07640'), ('LONE TREE', None, '40.83330', '-91.01670'), ('MEDIA', 130, '40.77270', '-90.83400'), ('OLENA', None, '40.78330', '-90.93330'), ('OQUAWKA', 1539, '40.93760', '-90.94950'), ('RARITAN', 140, '40.69540', '-90.82500'), ('ROZETTA', None, '40.95000', '-90.86670'), ('SHOKOKON', None, '40.75000', '-91.06670'), ('STRONGHURST', 896, '40.75000', '-90.90000'), ('TERRE HAUTE', None, '40.67000', '-90.98330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'ILZ024': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALEDO', 3613, '41.19830', '-90.74740'), ('ALEDO MERCER CO AIRPORT', None, '41.25000', '-90.73330'), ('BODEN', None, '41.26670', '-90.58330'), ('BUFFALO PRAIRIE', None, '41.33330', '-90.85000'), ('BURGESS', None, '41.13330', '-90.63330'), ('CABLE', None, '41.28330', '-90.50000'), ('ELIZA', None, '41.30000', '-90.96670'), ('GILCHRIST', None, '41.20000', '-90.61670'), ('GINGLE CORNERS', None, '41.26670', '-90.73330'), ('GRIFFIN', None, '41.23330', '-90.48330'), ('HAMLET', None, '41.31670', '-90.73330'), ('JOY', 373, '41.19690', '-90.87960'), ('KEITHSBURG', 714, '41.10090', '-90.93590'), ('MANNON', None, '41.23330', '-90.95000'), ('MARSTON', None, '41.31670', '-90.80000'), ('MATHERVILLE', 772, '41.25910', '-90.60570'), ('MILLERSBURG', None, '41.23330', '-90.81670'), ('NEW BOSTON', 632, '41.16940', '-91.00050'), ('NEW WINDSOR', None, '41.20000', '-90.45000'), ('NORTH HENDERSON', 187, '41.09070', '-90.47500'), ('OGLE', None, '41.10000', '-90.88330'), ('OLD GILCHRIST', None, '41.23330', '-90.63330'), ('PETERSVILLE', None, '41.28330', '-90.93330'), ('PREEMPTION', None, '41.31660', '-90.58330'), ('REYNOLDS', 508, '41.33250', '-90.67280'), ('SEATON', 242, '41.10190', '-90.79920'), ('SHALE CITY', None, '41.21660', '-90.63330'), ('SHERRARD', 694, '41.31840', '-90.50530'), ('SUNBEAM', None, '41.13330', '-90.73330'), ('SWEDONA', None, '41.28330', '-90.45000'), ('VIOLA', 956, '41.20520', '-90.58740'), ('WANLOCK', None, '41.21660', '-90.63000')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ILZ027': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ABINGDON', 3612, '40.80260', '-90.40070'), ('ALTONA', 570, '41.11520', '-90.16470'), ('DAHINDA', None, '40.95000', '-90.10000'), ('DELONG', None, '40.81670', '-90.31670'), ('GALESBURG', 33706, '40.95000', '-90.37790'), ('GILSON', None, '40.86670', '-90.20000'), ('HENDERSON', 319, '41.02450', '-90.35290'), ('KNOXVILLE', 3183, '40.90630', '-90.28540'), ('MAQUON', 318, '40.79830', '-90.16270'), ('ONEIDA', 752, '41.07240', '-90.22540'), ('RIO', 240, '41.10870', '-90.39900'), ('ST. AUGUSTINE', 152, '40.71970', '-90.40890'), ('VICTORIA', 323, '41.03300', '-90.09530'), ('WATAGA', 857, '41.02510', '-90.27510'), ('WILLIAMSFIELD', 620, '40.92610', '-90.01730'), ('YATES CITY', 725, '40.77800', '-90.01360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILX'}, -'ILZ026': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALEXIS', 863, '41.06400', '-90.56500'), ('BERWICK', None, '40.80000', '-90.53330'), ('CAMERON', None, '40.88330', '-90.51670'), ('COLDBROOK', None, '40.95000', '-90.51670'), ('ELEANOR', None, '40.98330', '-90.70000'), ('GERLAW', None, '40.98330', '-90.60000'), ('GREENBUSH', None, '40.71670', '-90.53330'), ('KIRKWOOD', 794, '40.86750', '-90.74830'), ('LARCHLAND', None, '40.81670', '-90.65000'), ('LITTLE YORK', 269, '41.01040', '-90.74670'), ('MONMOUTH', 9841, '40.91340', '-90.64300'), ('MONMOUTH MUNICIPAL AIRPOR', None, '40.93330', '-90.63330'), ('NEMO', None, '40.86670', '-90.60000'), ('ORMONDE', None, '40.85000', '-90.61670'), ('PHELPS', None, '40.85000', '-90.56670'), ('PONEMAH', None, '40.81670', '-90.70000'), ('ROSEVILLE', 1083, '40.73080', '-90.66270'), ('SHANGHAI CITY', None, '41.05000', '-90.50000'), ('SHAW', None, '41.05000', '-90.63330'), ('SMITHSHIRE', None, '40.80000', '-90.78330'), ('SURREY', None, '40.91670', '-90.46670'), ('SWAN CREEK', None, '40.66670', '-90.65000'), ('UTAH', None, '40.98330', '-90.48330'), ('WOODVALE', None, '41.01670', '-90.65000'), ('YOUNSTOWN', None, '40.66670', '-90.61670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DVN'}, -'MSZ057': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BAY SPRINGS', 2097, '31.98020', '-89.28410'), ('HEIDELBERG', 840, '31.89010', '-88.98800'), ('LOUIN', 339, '32.07250', '-89.26170'), ('MONTROSE', 127, '32.12440', '-89.23540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JAN'}, -'LAZ008': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('EPPS', 1153, '32.60500', '-91.47950'), ('FOREST', 275, '32.79240', '-91.41220'), ('KILBOURNE', 436, '32.99780', '-91.31320'), ('OAK GROVE', 2174, '32.86220', '-91.39120'), ('PIONEER', 171, '32.73810', '-91.43590')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'GAZ141': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ASHINTILLY', None, '31.39360', '-81.40920'), ('CARNIGAN', None, '31.43420', '-81.39420'), ('CRESCENT', None, '31.50920', '-81.36970'), ('DARIEN', 1719, '31.37000', '-81.43420'), ('MERIDIAN', None, '31.45170', '-81.37810'), ('RACCOON BLUFF', None, '31.46580', '-81.23530'), ('RIDGEVILLE', None, '31.40610', '-81.40170'), ('SAPELO ISLAND', None, '31.39720', '-81.27890'), ('SHELLMAN BLUFF', None, '31.57250', '-81.32330'), ('VALONA', None, '31.47810', '-81.34420')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ140': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARDICK', None, '31.46110', '-81.43360'), ('BRICKSTON', None, '31.61220', '-81.49030'), ('COX', None, '31.45500', '-81.56360'), ('EULONIA', None, '31.53310', '-81.42720'), ('FAIRHOPE', None, '31.53720', '-81.38890'), ('HUXFORD', None, '31.55920', '-81.51030'), ('JONES', None, '31.63360', '-81.48030'), ('PINE HARBOR', None, '31.54720', '-81.37560'), ('SOUTH NEWPORT', None, '31.63470', '-81.39640'), ('TOWNSEND', None, '31.53920', '-81.52280'), ('WARSAW', None, '31.58970', '-81.49530')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ143': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BABCOCK', None, '31.11080', '-84.64180'), ('BELLVIEW', None, '31.15600', '-84.59990'), ('BOYKIN', None, '31.10430', '-84.68680'), ('COLQUITT', 1939, '31.17140', '-84.73420'), ('COOKTOWN', None, '31.20580', '-84.56050'), ('COREA', None, '31.23260', '-84.72740'), ('ENTERPRISE', None, '31.12120', '-84.82580'), ('JETERVILLE', None, '31.24170', '-84.70630'), ('MACEDONIA', None, '31.24580', '-84.66150'), ('MAYHAW', None, '31.17630', '-84.87550'), ('MIMSVILLE', None, '31.25450', '-84.52830')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAZ142': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLAKELY', 5696, '31.37910', '-84.93530'), ('CEDAR SPRINGS', None, '31.18340', '-85.03800'), ('CENTERVILLE', 4278, '31.27340', '-84.89660'), ('COLOMOKEE', None, '31.45860', '-84.87920'), ('CUBA', None, '31.29110', '-84.86420'), ('DAMASCUS', 277, '31.29840', '-84.71750'), ('DOUGLASS CROSSROADS', None, '31.30190', '-84.67340'), ('DOUGLASVILLE', 20065, '31.35840', '-84.67090'), ('EARLY CO A/P', None, '31.39560', '-84.89250'), ('FERRELL CROSSROADS', None, '31.48290', '-84.91610'), ('FREEMAN', None, '31.35940', '-85.06300'), ('HENTOWN', None, '31.27890', '-84.83700'), ('HILTON', None, '31.28640', '-85.06540'), ('HOWARDS MILL', None, '31.15630', '-84.99470'), ('JAKIN', 157, '31.09040', '-84.98330'), ('JONES CROSSROADS', None, '31.17300', '-84.93770'), ('KILLARNEY', None, '31.13610', '-84.94140'), ('KOLOMOKI MOUNDS SP', None, '31.46720', '-84.92820'), ('LUCILE', None, '31.24360', '-84.91790'), ('NICHOLASVILLE', None, '31.40260', '-84.67000'), ('OLD DAMASCUS', None, '31.30570', '-84.73700'), ('ROCK HILL', None, '31.32660', '-85.03180'), ('ROWENA', None, '31.37900', '-84.71300'), ('SAFFOLD', None, '31.11870', '-85.03310'), ('SAWHATCHEE', None, '31.27560', '-85.02790')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'MEZ028': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BELFAST', 6381, '44.42580', '-69.00690'), ('ISLEBORO', None, '44.30830', '-68.90390'), ('LINCOLNVILLE', None, '44.28110', '-69.00920'), ('NORTHPORT', None, '44.33780', '-68.96190'), ('SEARSMONT', None, '44.36170', '-69.19560'), ('SEARSPORT', 1102, '44.45830', '-68.92470')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'MEZ029': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BAR HARBOR', 2680, '44.38750', '-68.20440'), ('BLUE HILL', None, '44.41390', '-68.58720'), ('BROOKLIN', None, '44.26610', '-68.56970'), ('BROOKSVILLE', None, '44.34670', '-68.68420'), ('CRANBERRY ISLES', None, '44.24830', '-68.26080'), ('DEER ISLE', None, '44.22390', '-68.67810'), ('ELLSWORTH', 6456, '44.54060', '-68.42000'), ('FRANKLIN', None, '44.58690', '-68.23280'), ('FRENCHBORO', None, '44.11810', '-68.36310'), ('GOULDSBORO', None, '44.47830', '-68.03890'), ('HANCOCK', None, '44.52920', '-68.25420'), ('PENOBSCOT', None, '44.46440', '-68.71170'), ('SEDGWICK', None, '44.30360', '-68.61670'), ('SOMESVILLE', None, '44.36220', '-68.33470'), ('SURRY', None, '44.49580', '-68.50220'), ('SWANS ISLAND', None, '44.14500', '-68.45220'), ('TREMONT', None, '44.25360', '-68.35190'), ('TRENTON', None, '44.43890', '-68.37060'), ('WINTER HARBOR', None, '44.39530', '-68.08360')], 'partOfState': 'SOUTHEAST', 'wfo': 'CAR'}, -'GAZ147': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADEL', 5307, '31.13620', '-83.42860'), ('BARNESDALE', None, '31.18550', '-83.37340'), ('BARNEYVILLE', None, '31.21310', '-83.45420'), ('BURNEY HILL', None, '31.16520', '-83.52870'), ('CECIL', 265, '31.04560', '-83.39310'), ('CHASERVILLE', None, '31.21680', '-83.35730'), ('CHASERVILLE', None, '31.21600', '-83.35770'), ('COOK CO A/P', None, '31.13750', '-83.45130'), ('FLAT FORD', None, '31.22020', '-83.50410'), ('GREGGS', None, '31.06900', '-83.48970'), ('LACONTE', None, '31.20940', '-83.44730'), ('LENOX', 889, '31.26990', '-83.46640'), ('MASSEE', None, '31.18900', '-83.35740'), ('PINE VALLEY', None, '31.08640', '-83.47350'), ('SPARKS', 1755, '31.16760', '-83.44000'), ('STAUNTON', None, '31.26690', '-83.46320'), ('WAGON WHEEL', None, '31.23580', '-83.46210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAZ146': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AUTREYVILLE', None, '31.06060', '-83.76520'), ('BAY', None, '31.19040', '-83.92680'), ('BERLIN', 595, '31.06720', '-83.62380'), ('CENTER HILL', None, '31.13770', '-83.89810'), ('CROSLAND', None, '31.30410', '-83.64360'), ('DOERUN', 828, '31.31910', '-83.91800'), ('ELLENTON', 336, '31.17640', '-83.58810'), ('FUNSTON', 426, '31.20020', '-83.87330'), ('HARTSFIELD', None, '31.21650', '-83.97610'), ('MOULTRIE', 14387, '31.17750', '-83.78620'), ('MOULTRIE MUNI A/P', None, '31.08450', '-83.80570'), ('NEW ELM', None, '31.29230', '-83.81940'), ('NORMAN PARK', 849, '31.26890', '-83.68470'), ('REED BINGHAM SP', None, '31.16650', '-83.53930'), ('RICHWOOD', None, '31.04110', '-83.78690'), ('RIVERSIDE', 57, '31.17650', '-83.80610'), ('SIGSBEE', None, '31.26610', '-83.86320'), ('SPENCE A/P', None, '31.13430', '-83.70750'), ('TICKNOR', None, '31.33260', '-83.94320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'MEZ024': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BRUNSWICK', 14816, '43.91440', '-69.96580'), ('BRUNSWICK NAVAL AIR STATI', None, '43.89620', '-69.93140'), ('CAPE ELIZABETH', None, '43.56360', '-70.20060'), ('CUMBERLAND', None, '43.79640', '-70.25940'), ('FALMOUTH', None, '43.72940', '-70.24250'), ('FREEPORT', 1813, '43.85690', '-70.10360'), ('HARPSWELL', None, '43.80170', '-69.98470'), ('PORTLAND', 64249, '43.66140', '-70.25580'), ('SCARBOROUGH', 3867, '43.57810', '-70.32220'), ('SOUTH PORTLAND', 23324, '43.64140', '-70.24140'), ('WESTBROOK', 16142, '43.67690', '-70.37170'), ('YARMOUTH', 3560, '43.80060', '-70.18720')], 'partOfState': 'SOUTHWEST', 'wfo': 'GYX'}, -'GAZ148': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALAPAHA', 682, '31.38320', '-83.22370'), ('ALLENVILLE', None, '31.12790', '-83.21430'), ('BANNOCKBURN', None, '31.28370', '-83.05780'), ('BERRIEN CO A/P', None, '31.21200', '-83.22790'), ('COTTLE', None, '31.20040', '-83.31480'), ('ENIGMA', 869, '31.40910', '-83.33020'), ('GLADYS', None, '31.46890', '-83.23780'), ('GLORY', None, '31.36570', '-83.14100'), ('NASHVILLE', 4697, '31.20440', '-83.24920'), ('RAY CITY', 746, '31.07480', '-83.19670'), ('WEBER', None, '31.23640', '-83.13990')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'MEZ026': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALNA', None, '44.10610', '-69.60420'), ('BOOTHBAY', None, '43.87640', '-69.63420'), ('BOOTHBAY HARBOR', 1237, '43.85220', '-69.62860'), ('BREMEN', None, '44.00140', '-69.42920'), ('BRISTOL', None, '43.95750', '-69.50970'), ('DAMARISCOTTA', None, '44.03280', '-69.51920'), ('DRESDEN', None, '44.10720', '-69.72470'), ('EDGECOMB', None, '43.95830', '-69.63110'), ('JEFFERSON', None, '44.20670', '-69.45310'), ('MONHEGAN', None, '43.76220', '-69.32080'), ('NEWCASTLE', None, '44.03500', '-69.53720'), ('NOBLEBORO', None, '44.07940', '-69.48560'), ('SOMERVILLE', None, '44.30920', '-69.48940'), ('SOUTH BRISTOL', None, '43.86390', '-69.56170'), ('SOUTHPORT', None, '43.84080', '-69.65920'), ('WALDOBORO', 1291, '44.09610', '-69.38150'), ('WESTPORT', None, '43.89920', '-69.70890'), ('WHITEFIELD', None, '44.17000', '-69.62580'), ('WISCASSET', 1203, '44.00280', '-69.66610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'MEZ027': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('APPLETON', None, '44.28920', '-69.25140'), ('CAMDEN', 3934, '44.20970', '-69.06530'), ('CRIEHAVEN', None, '43.83390', '-68.88970'), ('CUSHING', None, '44.01920', '-69.24030'), ('FRIENDSHIP', None, '43.98360', '-69.33440'), ('HOPE', None, '44.26500', '-69.15940'), ('MATINICUS', None, '43.86500', '-68.88750'), ('OWLS HEAD', None, '44.08220', '-69.05780'), ('ROCKLAND', 7609, '44.10360', '-69.10940'), ('ROCKPORT', None, '44.18440', '-69.07670'), ('SAINT GEORGE', None, '44.01640', '-69.19940'), ('SOUTH THOMASTON', None, '44.05140', '-69.12830'), ('THOMASTON', 2714, '44.07890', '-69.18220'), ('UNION', None, '44.21140', '-69.27470'), ('VINALHAVEN', None, '44.04810', '-68.83220'), ('WARREN', None, '44.12030', '-69.24060'), ('WASHINGTON', None, '44.27360', '-69.36780')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'MEZ020': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('AUBURN', 23203, '44.09780', '-70.23170'), ('BOWDOIN', None, '44.04720', '-70.02530'), ('GREENE', None, '44.18970', '-70.14080'), ('LEEDS', None, '44.30330', '-70.12000'), ('LEWISTON', 35690, '44.10030', '-70.21530'), ('LISBON FALLS', 4420, '43.99610', '-70.06110'), ('LIVERMORE', None, '44.33390', '-70.24970'), ('LIVERMORE FALLS', 1626, '44.47530', '-70.18860'), ('MECHANIC FALLS', 2450, '44.11170', '-70.39220'), ('MINOT', None, '44.08560', '-70.32060'), ('POLAND', None, '44.06060', '-70.39420'), ('SABATTUS', None, '44.11970', '-70.10810'), ('TURNER', None, '44.25640', '-70.25670'), ('WALES', None, '44.18360', '-70.06560')], 'partOfState': 'SOUTHWEST', 'wfo': 'GYX'}, -'MEZ021': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALBION', None, '44.53220', '-69.44310'), ('AUGUSTA', 18560, '44.31060', '-69.78000'), ('BELGRADE', None, '44.44720', '-69.83310'), ('BENTON', None, '44.58610', '-69.55140'), ('CHELSEA', None, '44.25030', '-69.71780'), ('CHINA', None, '44.47860', '-69.51780'), ('CLINTON', 1305, '44.63780', '-69.50360'), ('FARMINGDALE', 1935, '44.24440', '-69.77190'), ('FAYETTE', None, '44.40890', '-70.03420'), ('GARDINER', 6198, '44.23000', '-69.77580'), ('HALLOWELL', 2467, '44.28580', '-69.79140'), ('LITCHFIELD', None, '44.13310', '-69.96560'), ('MANCHESTER', None, '44.32440', '-69.86080'), ('MONMOUTH', None, '44.23860', '-70.01940'), ('MOUNT VERNON', None, '44.50110', '-69.98810'), ('OAKLAND', 2758, '44.54030', '-69.72250'), ('PALERMO', None, '44.40780', '-69.47440'), ('PITTSTON', None, '44.22170', '-69.75610'), ('RANDOLPH', 1911, '44.23030', '-69.76720'), ('READFIELD', None, '44.38780', '-69.96720'), ('ROME', None, '44.58500', '-69.86970'), ('SIDNEY', None, '44.41310', '-69.72940'), ('VASSALBORO', None, '44.45920', '-69.67810'), ('VIENNA', None, '44.53330', '-69.98530'), ('WATERVILLE', 15605, '44.55190', '-69.63220'), ('WAYNE', None, '44.34860', '-70.06670'), ('WINDSOR', None, '44.31060', '-69.58110'), ('WINSLOW', 7743, '44.56360', '-69.62170'), ('WINTHROP', 2893, '44.30500', '-69.97750')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'MEZ022': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BROOKS', None, '44.55030', '-69.12140'), ('BURNHAM', None, '44.69280', '-69.42810'), ('FRANKFORT', None, '44.60970', '-68.87720'), ('FREEDOM', None, '44.53030', '-69.29830'), ('JACKSON', None, '44.61470', '-69.12140'), ('KNOX', None, '44.52310', '-69.24310'), ('LIBERTY', None, '44.38920', '-69.30330'), ('MONROE', None, '44.61500', '-69.01860'), ('MONTVILLE', None, '44.44670', '-69.24670'), ('MORRILL', None, '44.44310', '-69.14970'), ('PROSPECT', None, '44.55310', '-68.86530'), ('STOCKTON SPRINGS', None, '44.48940', '-68.85750'), ('SWANVILLE', None, '44.52110', '-68.99830'), ('THORNDIKE', None, '44.57810', '-69.27640'), ('TROY', None, '44.66470', '-69.24140'), ('UNITY', 486, '44.61110', '-69.33500'), ('WALDO', None, '44.51250', '-69.07670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'MEZ023': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ARUNDEL', None, '43.38250', '-70.47830'), ('BIDDEFORD', 20942, '43.49250', '-70.45390'), ('CAPE NEDDICK', 2997, '43.17000', '-70.61930'), ('ELIOT', None, '43.15310', '-70.80060'), ('KENNEBUNK', 4804, '43.38390', '-70.54530'), ('KENNEBUNKPORT', 1376, '43.36170', '-70.47720'), ('KITTERY', 4884, '43.08810', '-70.73670'), ('KITTERY POINT', 1135, '43.08470', '-70.69950'), ('NORTH BERWICK', 1580, '43.30360', '-70.73390'), ('OGUNQUIT', None, '43.24890', '-70.59970'), ('OLD ORCHARD BEACH', 8856, '43.51720', '-70.37810'), ('SACO', 16822, '43.50080', '-70.44330'), ('SOUTH ELIOT', 3445, '43.12740', '-70.79820'), ('WELLS', None, '43.32190', '-70.58140'), ('YORK', None, '43.14360', '-70.65140')], 'partOfState': 'SOUTHWEST', 'wfo': 'GYX'}, -'WIZ050': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRANCH', None, '44.15000', '-87.76000'), ('CATO', None, '44.15000', '-87.86000'), ('CLARKS MILLS', None, '44.08000', '-87.86000'), ('CLEVELAND', 1361, '43.91000', '-87.75000'), ('COLLINS', None, '44.08000', '-87.98000'), ('COOPERSTOWN', None, '44.31000', '-87.76000'), ('FRANCIS CREEK', 681, '44.20000', '-87.71000'), ('GRIMMS', None, '44.15000', '-87.90000'), ('KELLNERSVILLE', 374, '44.23000', '-87.80000'), ('KIEL', 3450, '43.91000', '-88.03000'), ('LARRABEE', None, '44.26000', '-87.71000'), ('MANITOWOC', 34053, '44.08000', '-87.66000'), ('MARIBEL', 264, '44.26000', '-87.80000'), ('MENCHALVILLE', None, '44.21000', '-87.88000'), ('MILLHOME', None, '43.90000', '-87.96000'), ('MISHICOT', 1422, '44.23000', '-87.63000'), ('OSMAN', None, '43.96000', '-87.81000'), ('POINT BEACH STATE FOREST', None, '44.21000', '-87.51000'), ('REEDSVILLE', 1187, '44.16000', '-87.96000'), ('ROSECRANS', None, '44.26000', '-87.83000'), ('SCHOOL HILL', None, '43.95000', '-87.90000'), ('SHOTO', None, '44.16000', '-87.65000'), ('SPRING VALLEY', 1189, '43.93000', '-87.83000'), ('ST NAZIANZ', None, '44.00000', '-87.91000'), ('TAUS', None, '44.18000', '-87.86000'), ('TWO CREEKS', None, '44.29000', '-87.56000'), ('TWO RIVERS', 12639, '44.15000', '-87.56000'), ('VALDERS', 948, '44.06000', '-87.88000'), ('WHITELAW', 730, '44.15000', '-87.83000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GRB'}, -'NYZ072': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BATTERY PARK', None, '40.70900', '-74.00600'), ('GREENWICH VILLAGE', None, '40.75090', '-73.99750'), ('HARLEM', None, '40.82400', '-73.93750'), ('MIDTOWN MANHATTAN', None, '40.77000', '-73.96750'), ('WASHINGTON HEIGHTS', 1318, '40.85000', '-73.93000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ073': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CITY ISLAND', None, '40.87000', '-73.79000'), ('CO-OP CITY', None, '40.87000', '-73.82000'), ('EAST TREMONT', None, '40.85000', '-73.87000'), ('FORDHAM', None, '40.87000', '-73.89000'), ('MOTT HAVEN', None, '40.82000', '-73.91000'), ('RIVERDALE', None, '40.90000', '-73.91000'), ('THROGS NECK BRIDGE', None, '40.82100', '-73.79800'), ('WOODLAWN', None, '40.90000', '-73.85000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ070': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARMONK', 3461, '41.13230', '-73.71280'), ('BEDFORD', 1724, '41.19680', '-73.64720'), ('BRIARCLIFF MANOR', 7696, '41.13880', '-73.84220'), ('BUCHANAN', 2189, '41.26320', '-73.94490'), ('CROTON-ON-HUDSON', 7606, '41.20320', '-73.89070'), ('DOBBS FERRY', 10622, '41.01450', '-73.86970'), ('ELMSFORD', 4676, '41.05320', '-73.81460'), ("GOLDEN'S BRIDGE", 1578, '41.28590', '-73.67050'), ('HAWTHORNE', 5083, '41.10430', '-73.79380'), ('IRVINGTON', 6631, '41.03860', '-73.86730'), ('JEFFERSON VALLEY-YORKTOWN', 14891, '41.31860', '-73.80190'), ('MOUNT KISCO', 9983, '41.20180', '-73.73050'), ('NORTH TARRYTOWN', None, '41.09180', '-73.87140'), ('OSSINING', 24010, '41.15850', '-73.87150'), ('PEEKSKILL', 22441, '41.28940', '-73.92390'), ('PLEASANTVILLE', 7172, '41.13810', '-73.78470'), ('TARRYTOWN', 11090, '41.06480', '-73.86870'), ('THORNWOOD', 5980, '41.11380', '-73.76490'), ('YORKTOWN HEIGHTS', 7972, '41.27130', '-73.78260')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ071': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARDSLEY', 4269, '41.01460', '-73.84120'), ('BRONXVILLE', 6543, '40.93890', '-73.82730'), ('EASTCHESTER', 18564, '40.95820', '-73.80780'), ('GREENVILLE', 8648, '41.00090', '-73.81870'), ('HARRISON', 24154, '41.02260', '-73.72020'), ('HARTSDALE', 9830, '41.02570', '-73.80520'), ('HASTINGS-ON-HUDSON', 7648, '40.98790', '-73.87960'), ('LARCHMONT', 6485, '40.92610', '-73.75350'), ('MAMARONECK', 18752, '40.93450', '-73.72740'), ('MOUNT VERNON', 68381, '40.91300', '-73.82980'), ('NEW ROCHELLE', 72182, '40.92320', '-73.77990'), ('PELHAM', 6400, '40.91100', '-73.80830'), ('PELHAM MANOR', 5466, '40.89370', '-73.80520'), ('PORT CHESTER', 27867, '41.00450', '-73.66770'), ('RYE', 14955, '40.95290', '-73.68370'), ('RYE BROOK', 8602, '41.03040', '-73.68660'), ('SCARSDALE', 17823, '40.98840', '-73.77640'), ('TUCKAHOE', 6211, '40.95270', '-73.82320'), ('WHITE PLAINS', 53077, '41.02090', '-73.75740'), ('YONKERS', 196086, '40.94700', '-73.86750')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ076': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ASTORIA', None, '40.78000', '-73.91000'), ('BAYSIDE', None, '40.79000', '-73.77000'), ('FLUSHING', None, '40.77000', '-73.84000'), ('HOWARD BEACH', None, '40.66000', '-73.84000'), ('JACKSON HEOGHTS', None, '40.77000', '-73.88000'), ('JAMACIA', None, '40.71000', '-73.79000'), ('KENNEDY AIRPORT', None, '40.65750', '-73.77800'), ('LAGUARDIA AIRPORT', None, '40.79000', '-73.87100'), ('OZONE PARK', None, '40.69000', '-73.85000'), ('ROCKAWAY BEACH', None, '40.57000', '-73.90000'), ('TRIBOROUGH BRIDGE', None, '40.79400', '-73.90750'), ('WHITESTONE', None, '40.79000', '-73.81000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ077': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ATLANTIC BEACH', 1986, '40.59000', '-73.71000'), ('BALDWIN', 23455, '40.66300', '-73.61120'), ('BALDWIN HARBOR', 8147, '40.63600', '-73.60230'), ('BAYVILLE', 7135, '40.90700', '-73.56310'), ('BELLEROSE', 1173, '40.72430', '-73.71670'), ('BELLMORE', 16441, '40.65710', '-73.52920'), ('BETHPAGE', 16543, '40.74950', '-73.48580'), ('BROOKVILLE', 2126, '40.80750', '-73.57030'), ('CARLE PLACE', 5247, '40.75100', '-73.61150'), ('CEDARHURST', 6164, '40.62550', '-73.72790'), ('CENTRE ISLAND', 444, '40.90020', '-73.52210'), ('COVE NECK', 300, '40.88440', '-73.49660'), ('EAST HILLS', 6842, '40.79650', '-73.62920'), ('EAST MASSAPEQUA', 19565, '40.67340', '-73.43690'), ('EAST MEADOW', 37461, '40.71990', '-73.55930'), ('EAST NORWICH', 2675, '40.84700', '-73.52920'), ('EAST ROCKAWAY', 10414, '40.64370', '-73.66730'), ('EAST WILLISTON', 2503, '40.76060', '-73.63390'), ('ELMONT', 32657, '40.70390', '-73.70750'), ('FARMINGDALE', 8399, '40.73310', '-73.44760'), ('FLORAL PARK', 15967, '40.72230', '-73.70360'), ('FRANKLIN SQUARE', 29342, '40.70000', '-73.67700'), ('FREEPORT', 43783, '40.65080', '-73.58500'), ('GARDEN CITY', 21672, '40.72590', '-73.64450'), ('GLEN COVE', 26622, '40.87150', '-73.63880'), ('GLEN HEAD', 4625, '40.84330', '-73.61930'), ('GLENWOOD LANDING', 3541, '40.82980', '-73.63770'), ('GREAT NECK', 9538, '40.80230', '-73.73340'), ('HEMPSTEAD', 56554, '40.70340', '-73.61900'), ('HERRICKS', 4076, '40.75690', '-73.66430'), ('HEWLETT', 7060, '40.64170', '-73.69470'), ('HICKSVILLE', 41260, '40.76380', '-73.52520'), ('INWOOD', 9325, '40.62280', '-73.75000'), ('JERICHO', 13045, '40.78850', '-73.54190'), ('KINGS POINT', 5076, '40.83000', '-73.74000'), ('LAKE SUCCESS', 2797, '40.76870', '-73.71020'), ('LAWRENCE', 6522, '40.60440', '-73.71280'), ('LEVITTOWN', 53067, '40.72380', '-73.51310'), ('LIDO BEACH', 2825, '40.59210', '-73.60780'), ('LOCUST VALLEY', 3521, '40.88070', '-73.58760'), ('LONG BEACH', 35462, '40.59000', '-73.67000'), ('LYNBROOK', 19911, '40.65870', '-73.67440'), ('MALVERNE', 8934, '40.67450', '-73.67260'), ('MANHASSET', 8362, '40.79150', '-73.69280'), ('MANORHAVEN', 6138, '40.84800', '-73.71400'), ('MASSAPEQUA', 22652, '40.66830', '-73.47180'), ('MATINECOCK', 836, '40.86440', '-73.58400'), ('MERRICK', 22764, '40.65060', '-73.55460'), ('MILL NECK', 825, '40.88010', '-73.55620'), ('MINEOLA', 19234, '40.74700', '-73.63860'), ('MUNSEY PARK', 2632, '40.79940', '-73.68010'), ('MUTTONTOWN', 3412, '40.82060', '-73.54110'), ('NEW HYDE PARK', 9523, '40.73200', '-73.68590'), ('NORTH WANTAGH', 12156, '40.69910', '-73.50870'), ('OCEANSIDE', 32733, '40.63240', '-73.63580'), ('OLD BROOKVILLE', 2167, '40.82750', '-73.60490'), ('OLD WESTBURY', 4228, '40.78630', '-73.59620'), ('OYSTER BAY', 6826, '40.86860', '-73.53310'), ('OYSTER BAY COVE', 2262, '40.85920', '-73.50440'), ('PLAINEDGE', 9195, '40.72440', '-73.47780'), ('PLAINVIEW', 25637, '40.78330', '-73.47260'), ('PLANDOME', 1272, '40.80750', '-73.70040'), ('PORT WASHINGTON', 15215, '40.82720', '-73.68030'), ('ROCKVILLE CENTRE', 24568, '40.66380', '-73.63830'), ('ROOSEVELT', 15854, '40.67960', '-73.58390'), ('ROSLYN', 2570, '40.79960', '-73.64880'), ('ROSLYN HEIGHTS', 6295, '40.77880', '-73.64060'), ('RUSSELL GARDENS', 1074, '40.78130', '-73.72540'), ('SANDS POINT', 2786, '40.86000', '-73.71000'), ('SEA CLIFF', 5066, '40.85000', '-73.64000'), ('SEAFORD', 15791, '40.66780', '-73.49300'), ('SEARINGTOWN', 5034, '40.77010', '-73.66010'), ('SYOSSET', 18544, '40.81540', '-73.50280'), ('THOMASTON', 2607, '40.78800', '-73.71450'), ('UNIONDALE', 23011, '40.70220', '-73.59150'), ('UPPER BROOKVILLE', 1801, '40.84410', '-73.56490'), ('VALLEY STREAM', 36368, '40.66450', '-73.70520'), ('WANTAGH', 18971, '40.66770', '-73.51080'), ('WEST HEMPSTEAD', 18713, '40.69530', '-73.65110'), ('WESTBURY', 14263, '40.75970', '-73.58890'), ('WOODBURY', 9010, '40.81490', '-73.47030'), ('WOODMERE', 16447, '40.63790', '-73.72180')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ074': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ANNADALE', None, '40.55000', '-74.16000'), ('GRASMERE', None, '40.61000', '-74.07000'), ('HEARTLAND VILLAGE', None, '40.58500', '-74.17000'), ('HUGUENOT', None, '40.54000', '-74.17250'), ('HYLAN BLVD', None, '40.59000', '-74.08000'), ('NEW DORP', None, '40.59000', '-74.11000'), ('TODT HILL', None, '40.61000', '-74.13000'), ('TOMPKINSVILLE', None, '40.63000', '-74.07000'), ('TOTTENVILLE', None, '40.52000', '-74.23000'), ('VERRAZANO-NARROWS BRIDGE', None, '40.61100', '-74.05450'), ('WEST SHORE EXPRESSWAY', None, '40.60000', '-74.17000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ075': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BAY RIDGE', None, '40.62000', '-74.02000'), ('CANARSIE', None, '40.65000', '-73.89000'), ('CONEY ISLAND', None, '40.58300', '-73.98300'), ('CROWN HEIGHTS', 2992, '40.67000', '-73.94000'), ('FLATBUSH', None, '40.64000', '-73.95000'), ('GREENPOINT', None, '40.72000', '-73.95000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ078': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ASHAROKEN', 625, '40.93000', '-73.36000'), ('BELLE TERRE', 832, '40.96230', '-73.06720'), ('CENTEREACH', 27285, '40.87080', '-73.08330'), ('CENTERPORT', 5446, '40.90080', '-73.37220'), ('COLD SPRING HARBOR', 4975, '40.86310', '-73.44790'), ('COMMACK', 36367, '40.84490', '-73.28360'), ('CORAM', 34923, '40.87950', '-73.00450'), ('DIX HILLS', 26024, '40.80480', '-73.33660'), ('EAST NORTHPORT', 20845, '40.87920', '-73.32460'), ('EATONS NECK', 1388, '40.95000', '-73.39000'), ('ELWOOD', 10916, '40.84620', '-73.34210'), ('FARMINGVILLE', 16458, '40.84250', '-73.04420'), ('FORT SALONGA', 9634, '40.91120', '-73.29440'), ('GREENLAWN', 13286, '40.86310', '-73.36660'), ('HAUPPAUGE', 20100, '40.82000', '-73.21270'), ('HEAD OF THE HARBOR', 1447, '40.89820', '-73.16280'), ('HUNTINGTON', 18403, '40.87770', '-73.40790'), ('HUNTINGTON BAY', 1496, '40.90400', '-73.41640'), ('HUNTINGTON STATION', 29910, '40.84490', '-73.40520'), ('JERICHO TURNPIKE', None, '40.84000', '-73.36000'), ('KINGS PARK', 16146, '40.89070', '-73.24550'), ('LAKE GROVE', 10250, '40.85800', '-73.11690'), ('LAKE RONKONKOMA', 19701, '40.83140', '-73.11090'), ('LLOYD HARBOR', 3675, '40.91750', '-73.46410'), ('LONG ISLAND EXPRESSWAY', None, '40.82000', '-73.09000'), ('MELVILLE', 14533, '40.78200', '-73.41200'), ('MIDDLE COUNTRY ROAD', None, '40.87000', '-73.03000'), ('MIDDLE ISLAND', 9702, '40.88500', '-72.94390'), ('MILLER PLACE', 10580, '40.93250', '-72.98740'), ('MOUNT SINAI', 8734, '40.93840', '-73.01910'), ('NESCONSET', 11992, '40.84680', '-73.15240'), ('NESCONSET HIGHWAY', None, '40.89000', '-73.08000'), ('NISSEQUOGUE', 1543, '40.90570', '-73.18840'), ('NORTHPORT', 7606, '40.90370', '-73.34560'), ('OLD FIELD', 947, '40.96230', '-73.13080'), ('POQUOTT', 975, '40.95220', '-73.08920'), ('PORT JEFFERSON', 7837, '40.94760', '-73.05900'), ('PORT JEFFERSON STATION', 7527, '40.92350', '-73.06770'), ('RIDGE', 13380, '40.91020', '-72.88210'), ('ROCKY POINT', 10185, '40.95000', '-72.93000'), ('SAGTIKOS PARKWAY', None, '40.81000', '-73.27000'), ('SELDEN', 21861, '40.86940', '-73.04790'), ('SETAUKET-EAST SETAUKET', 15931, '40.92990', '-73.10250'), ('SHOREHAM', 417, '40.95580', '-72.90650'), ('SMITHTOWN', 26901, '40.85710', '-73.21490'), ('SOUND BEACH', 9807, '40.95530', '-72.96690'), ('SOUTH HUNTINGTON', 9465, '40.82080', '-73.39220'), ('ST. JAMES', 13268, '40.87640', '-73.15260'), ('STONY BROOK', 13727, '40.90790', '-73.12830'), ('SUNKEN MEADOW PARKWAY', None, '40.89000', '-73.26000'), ('WEST HILLS', 5607, '40.81920', '-73.43170'), ('YAPHANK', 5025, '40.83160', '-72.92580')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ079': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AQUEBOGUE', 2254, '40.93830', '-72.61410'), ('BROOKHAVEN NATIONAL LABOR', None, '40.87000', '-72.86000'), ('CALVERTON', 5704, '40.92390', '-72.76190'), ('CUTCHOGUE', 2849, '41.01290', '-72.48620'), ('FISHERS ISLAND', 289, '41.27000', '-71.99000'), ("GARDNER'S ISLAND", None, '41.09000', '-72.09000'), ('GREENPORT', 2048, '41.10270', '-72.36780'), ('JAMESPORT', 1526, '40.94540', '-72.57500'), ('LAUREL', 1188, '40.97530', '-72.55360'), ('MATTITUCK', 4198, '41.00270', '-72.54640'), ('ORIENT', 709, '41.14000', '-72.30000'), ('PECONIC', 1081, '41.03900', '-72.46490'), ('PLUM ISLAND', None, '41.18000', '-72.19000'), ('SHELTER ISLAND', 1234, '41.07570', '-72.34280'), ('SOUND AVENUE', None, '40.97000', '-72.61000'), ('SOUTHOLD', 5465, '41.05980', '-72.42780'), ('WADING RIVER', 6668, '40.94710', '-72.81990')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'MIZ060': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BANCROFT', 616, '42.87680', '-84.06550'), ('BENNINGTON', None, '42.93530', '-84.24190'), ('BYRON', 595, '42.82550', '-83.94890'), ('CARLAND', None, '43.05810', '-84.30470'), ('CORUNNA', 3381, '42.98400', '-84.11670'), ('DURAND', 3933, '42.91300', '-83.98830'), ('HENDERSON', None, '43.08600', '-84.19650'), ('JUDDVILLE', None, '43.05860', '-83.98750'), ('LAINGSBURG', 1223, '42.89000', '-84.34880'), ('LENNON', 517, '42.98530', '-83.93140'), ('MORRICE', 882, '42.83800', '-84.17950'), ('NEW LOTHROP', 603, '43.11610', '-83.96890'), ('OWOSSO', 15713, '42.99520', '-84.17580'), ('PERRY', 2065, '42.82090', '-84.22830'), ('SHAFTSBURG', None, '42.80470', '-84.29310'), ('VERNON', 847, '42.93970', '-84.02990')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'NCZ009': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BULLOCKSVILLE', None, '36.48000', '-78.34500'), ('DABNEY', None, '36.35000', '-78.48000'), ('GILLBURG', None, '36.28000', '-78.37000'), ('HENDERSON', 16095, '36.32480', '-78.41200'), ('KERR LAKE', None, '36.50000', '-78.35000'), ('KITTRELL', 148, '36.22190', '-78.44150'), ('MIDDLEBURG', 162, '36.39840', '-78.32480'), ('SOUTH HENDERSON', 1220, '36.30250', '-78.40560'), ('TUNGSTEN', None, '36.52000', '-78.47000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'ALZ047': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AUBURN', 42987, '32.59290', '-85.48030'), ('LOACHAPOKA', 165, '32.60470', '-85.59690'), ('OPELIKA', 23498, '32.65420', '-85.37880'), ('SMITHS', 21756, '32.53980', '-85.08720')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ046': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('MIDWAY', 457, '32.07430', '-85.52030'), ('UNION SPRINGS', 3670, '32.13880', '-85.71370')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'ALZ045': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('FRANKLIN', 149, '32.45520', '-85.80280'), ('NOTASULGA', 916, '32.55760', '-85.67240'), ('SHORTER', 355, '32.40080', '-85.93660'), ('TUSKEGEE', 11846, '32.43770', '-85.71110')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'ALZ044': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('MONTGOMERY', 201568, '32.35440', '-86.28430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BMX'}, -'ALZ043': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BLUE RIDGE', 1331, '32.49250', '-86.19060'), ('COOSADA', 1382, '32.49580', '-86.33020'), ('ECLECTIC', 1037, '32.63680', '-86.03470'), ('MILLBROOK', 10386, '32.49460', '-86.36770'), ('TALLASSEE', 4934, '32.53520', '-85.89140'), ('WETUMPKA', 5726, '32.54420', '-86.20180')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ042': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BENTON', 47, '32.30740', '-86.81760'), ('FORT DEPOSIT', 1270, '31.98590', '-86.57620'), ('HAYNEVILLE', 1177, '32.18250', '-86.57880'), ('LOWNDESBORO', 140, '32.27670', '-86.61030'), ('MOSSES', 1101, '32.17620', '-86.67460'), ('WHITE HALL', 1014, '32.30080', '-86.71450')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BMX'}, -'ALZ041': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AUTAUGAVILLE', 820, '32.43100', '-86.65580'), ('BILLINGSLEY', 116, '32.66030', '-86.70850'), ('PRATTVILLE', 24303, '32.46170', '-86.44670')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ040': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ORRVILLE', 230, '32.30830', '-87.24540'), ('SELMA', 20512, '32.41610', '-87.03300'), ('SELMONT-WEST SELMONT', 3502, '32.37840', '-87.00670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BMX'}, -'TNZ072': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CADES COVE', None, '35.59670', '-83.81060')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ031': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GAINESBORO', 879, '36.36050', '-85.65380')], 'partOfState': '', 'wfo': 'OHX'}, -'ALZ049': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BANKS', 224, '31.81430', '-85.83830'), ('BRUNDIDGE', 2341, '31.71890', '-85.81530'), ('GOSHEN', 300, '31.71960', '-86.12590'), ('TROY', 13935, '31.80410', '-85.96820')], 'partOfState': 'SOUTHEAST', 'wfo': 'BMX'}, -'KSZ027': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('SHARON SPRINGS', 835, '38.89420', '-101.75210'), ('WALLACE', 67, '38.91370', '-101.59240'), ('WESKAN', None, '38.86000', '-101.96000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'TNZ037': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LUTTRELL', 915, '36.20880', '-83.74460'), ('MAYNARDVILLE', 1782, '36.24690', '-83.80620'), ('NORRIS LAKE', None, '36.29220', '-83.91470'), ('PAULETTE', None, '36.19060', '-83.89140'), ('ROSE HILL', None, '36.30500', '-83.76190'), ('SHARPS CHAPEL', None, '36.34140', '-83.80560')], 'partOfState': '', 'wfo': 'MRX'}, -'GAZ075': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EDGE HILL', 30, '33.15290', '-82.62680'), ('GIBSON', 694, '33.23260', '-82.59540'), ('MITCHELL', 173, '33.21900', '-82.70310')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'KSZ021': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CLAY CENTER', 4564, '39.37700', '-97.12440'), ('GREEN', 147, '39.42780', '-97.00170'), ('IDANA', None, '39.35750', '-97.26390'), ('LONGFORD', 94, '39.17000', '-97.33110'), ('MORGANVILLE', 198, '39.46640', '-97.20170'), ('OAK HILL', 35, '39.24830', '-97.34110'), ('VINING', 58, '39.56000', '-97.29500'), ('WAKEFIELD', 838, '39.21330', '-97.00530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'NJZ017': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BECKETT', 4726, '39.75390', '-75.35790'), ('CLAYTON', 7139, '39.65910', '-75.08300'), ('GIBBSTOWN', 3758, '39.82430', '-75.27980'), ('GLASSBORO', 19068, '39.70130', '-75.11330'), ('MULLICA HILL', 1658, '39.73620', '-75.22460'), ('NATIONAL PARK', 3205, '39.86800', '-75.18610'), ('NEWFIELD', 1616, '39.54940', '-75.01870'), ('OAK VALLEY', 3747, '39.80590', '-75.15910'), ('PAULSBORO', 6160, '39.83980', '-75.24040'), ('PITMAN', 9331, '39.73320', '-75.13100'), ('SWEDESBORO', 2055, '39.74610', '-75.31280'), ('TURNERSVILLE', 3867, '39.76540', '-75.06210'), ('VICTORY LAKES', 2118, '39.63290', '-74.96650'), ('WENONAH', 2317, '39.79170', '-75.14850'), ('WILLIAMSTOWN', 11812, '39.68570', '-74.98390'), ('WOODBURY', 10307, '39.83720', '-75.15340'), ('WOODBURY HEIGHTS', 2988, '39.81630', '-75.15100')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJZ016': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ALLOWAY', 1128, '39.56330', '-75.34670'), ('CARNEYS POINT', 6914, '39.70720', '-75.46760'), ('ELMER', 1384, '39.59110', '-75.17380'), ('OLIVET', 1420, '39.53970', '-75.17500'), ('PENNS GROVE', 4886, '39.72650', '-75.46940'), ('PENNSVILLE', 11657, '39.65540', '-75.51070'), ('SALEM', 5857, '39.56800', '-75.47320'), ('WOODSTOWN', 3136, '39.65090', '-75.32510')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJZ015': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ALLENTOWN', 1882, '40.17560', '-74.58690'), ('EWING', 35707, '40.26540', '-74.80120'), ('HIGHTSTOWN', 5216, '40.26780', '-74.52540'), ('HOPEWELL', 2035, '40.38890', '-74.76440'), ('LAWRENCEVILLE', 4081, '40.30140', '-74.73020'), ('MERCERVILLE-HAMILTON SQUA', None, '40.23070', '-74.67170'), ('PENNINGTON', 2696, '40.32670', '-74.79220'), ('PRINCETON', 14203, '40.35030', '-74.65940'), ('PRINCETON JUNCTION', 2382, '40.32030', '-74.62370'), ('PRINCETON NORTH', 4528, '40.36140', '-74.64810'), ('TRENTON', 85403, '40.22340', '-74.76420'), ('TWIN RIVERS', 7422, '40.26410', '-74.49260'), ('WHITE HORSE', 9373, '40.19080', '-74.70450'), ('YARDVILLE-GROVEVILLE', 9208, '40.18120', '-74.66770')], 'partOfState': 'CENTRAL', 'wfo': 'PHI'}, -'NJZ014': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ALLENHURST', 718, '40.23600', '-74.00250'), ('ASBURY PARK', 16930, '40.22310', '-74.01140'), ('AVON-BY-THE-SEA', 2244, '40.19100', '-74.01520'), ('BRADLEY BEACH', 4793, '40.20170', '-74.01210'), ('BRIELLE', 4893, '40.10460', '-74.06290'), ('DEAL', 1070, '40.24980', '-73.99730'), ('EATONTOWN', 14008, '40.29150', '-74.05510'), ('INTERLAKEN', 900, '40.23430', '-74.01590'), ('LITTLE SILVER', 6170, '40.33500', '-74.03500'), ('LOCH ARBOUR', 280, '40.23180', '-74.00140'), ('LONG BRANCH', 31340, '40.29670', '-73.98920'), ('MANASQUAN', 6310, '40.11280', '-74.03700'), ('NEPTUNE CITY', 5218, '40.20060', '-74.03310'), ('OAKHURST', 4152, '40.26170', '-74.02720'), ('OCEAN GROVE', 4256, '40.21180', '-74.00960'), ('OCEANPORT', 5807, '40.31500', '-74.02040'), ('RUMSON', 7137, '40.36270', '-74.00390'), ('SEA GIRT', 2148, '40.12920', '-74.03450'), ('SHARK RIVER HILLS', 3878, '40.19360', '-74.04820'), ('SOUTH BELMAR', 1806, '40.17010', '-74.02620'), ('SPRING LAKE', 3567, '40.15270', '-74.02740'), ('SPRING LAKE HEIGHTS', 5227, '40.15220', '-74.04230'), ('WANAMASSA', 4551, '40.23670', '-74.02920'), ('WEST BELMAR', 2606, '40.17020', '-74.03720'), ('WEST LONG BRANCH', 8258, '40.29000', '-74.01830')], 'partOfState': 'CENTRAL', 'wfo': 'PHI'}, -'NJZ013': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('EAST FREEHOLD', 4936, '40.26870', '-74.24040'), ('ENGLISHTOWN', 1764, '40.29650', '-74.36060'), ('FARMINGDALE', 1587, '40.19850', '-74.17140'), ('FREEHOLD', 10976, '40.25880', '-74.27560'), ('KEYPORT', 7568, '40.43200', '-74.20150'), ('LEONARDO', 2823, '40.41920', '-74.06060'), ('LINCROFT', 6255, '40.34140', '-74.12520'), ('MATAWAN', 8910, '40.41220', '-74.23790'), ('NORTH MIDDLETOWN', 3165, '40.43960', '-74.11930'), ('PORT MONMOUTH', 3742, '40.43220', '-74.10140'), ('RED BANK', 11844, '40.34730', '-74.06750'), ('ROBERTSVILLE', None, '40.34030', '-74.29740'), ('ROOSEVELT', 933, '40.22130', '-74.47420'), ('SHREWSBURY', 3590, '40.32660', '-74.05970'), ('STRATHMORE', 6740, '40.40280', '-74.21890'), ('TINTON FALLS', 15053, '40.27240', '-74.08920'), ('WEST FREEHOLD', 12498, '40.23300', '-74.29550'), ('YORKETOWN', 6712, '40.30780', '-74.33800')], 'partOfState': 'CENTRAL', 'wfo': 'PHI'}, -'KSZ022': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('KEATS', None, '39.22360', '-96.70830'), ('LEONARDVILLE', 398, '39.36440', '-96.85860'), ('MANHATTAN', 44831, '39.18360', '-96.57140'), ('OGDEN', 1762, '39.11110', '-96.70580'), ('RANDOLPH', 175, '39.43060', '-96.75970'), ('RILEY', 886, '39.29890', '-96.83060')], 'partOfState': 'NORTHEAST', 'wfo': 'TOP'}, -'NJZ011': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BERKELEY HEIGHTS', 13407, '40.67550', '-74.42510'), ('CLARK', 14597, '40.62100', '-74.31150'), ('CRANFORD', 22578, '40.65620', '-74.30410'), ('ELIZABETH', 120568, '40.66640', '-74.19420'), ('FANWOOD', 7174, '40.64180', '-74.38570'), ('GARWOOD', 4153, '40.65120', '-74.32410'), ('HILLSIDE', 21747, '40.69620', '-74.23030'), ('KENILWORTH', 7675, '40.67890', '-74.28890'), ('LINDEN', 39394, '40.62510', '-74.23840'), ('MOUNTAINSIDE', 6602, '40.68060', '-74.36100'), ('NEW PROVIDENCE', 11907, '40.70040', '-74.40350'), ('PLAINFIELD', 47829, '40.61530', '-74.41650'), ('RAHWAY', 26500, '40.60700', '-74.28140'), ('ROSELLE', 21274, '40.65210', '-74.26080'), ('ROSELLE PARK', 13281, '40.66560', '-74.26710'), ('SCOTCH PLAINS', 22732, '40.63310', '-74.37350'), ('SPRINGFIELD', 14429, '40.69950', '-74.32500'), ('SUMMIT', 21131, '40.71490', '-74.36540'), ('UNION', 54405, '40.69530', '-74.26970'), ('WESTFIELD', 29644, '40.65160', '-74.34420')], 'partOfState': 'NORTHEAST', 'wfo': 'OKX'}, -'NJZ010': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BERNARDSVILLE', 7345, '40.73060', '-74.59290'), ('BOUND BROOK', 10155, '40.56750', '-74.53770'), ('FAR HILLS', 859, '40.69040', '-74.62210'), ('KINGSTON', 1292, '40.37530', '-74.60820'), ('MANVILLE', 10343, '40.54160', '-74.58930'), ('MILLSTONE', 410, '40.49930', '-74.59130'), ('NORTH PLAINFIELD', 21103, '40.62120', '-74.44010'), ('PEAPACK AND GLADSTONE', 2433, '40.71540', '-74.65750'), ('RARITAN', 6338, '40.57200', '-74.64180'), ('ROCKY HILL', 662, '40.40030', '-74.63940'), ('SOMERSET', 23040, '40.49760', '-74.48900'), ('SOMERVILLE', 12423, '40.57020', '-74.61040'), ('WATCHUNG', 5613, '40.64390', '-74.43770')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'TNZ034': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALLARDT', 642, '36.38100', '-84.88140'), ('JAMESTOWN', 1839, '36.43210', '-84.93530')], 'partOfState': '', 'wfo': 'OHX'}, -'NCZ003': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARARAT', None, '36.40000', '-80.56670'), ('BOTTOM', None, '36.48330', '-80.76670'), ('BURCH', None, '36.28330', '-80.76670'), ('CRUTCHFIELD', None, '36.28330', '-80.71670'), ('DOBSON', 1457, '36.39160', '-80.72130'), ('ELKIN', 4109, '36.25750', '-80.84920'), ('FAIRVIEW', 2495, '36.33330', '-80.71670'), ('FLAT ROCK', 1690, '36.50700', '-80.58320'), ('LEVEL CROSS', None, '36.35000', '-80.63330'), ('LOW GAP', None, '36.53330', '-80.86670'), ('MOUNT AIRY', 8484, '36.50380', '-80.61310'), ('MOUNTAIN PARK', None, '36.38330', '-80.85000'), ('PILOT MOUNTAIN', 1281, '36.38430', '-80.47190'), ('PINE RIDGE', None, '36.50000', '-80.71670'), ('ROCKFORD', None, '36.26670', '-80.65000'), ('SILOAM', None, '36.28330', '-80.56670'), ('STATE RD', None, '36.31670', '-80.86670'), ('TOAST', 1922, '36.49690', '-80.63290'), ('WESTFIELD', None, '36.48330', '-80.61670'), ('WHITE PLAINS', 1049, '36.45000', '-80.63330'), ('WHITE PLAINS', 1049, '36.44970', '-80.63810'), ('WOODVILLE', None, '36.50000', '-80.48330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'NJZ019': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('BEVERLY', 2661, '40.06470', '-74.92180'), ('BORDENTOWN', 3969, '40.14860', '-74.70950'), ('BROWN MILLS', None, '39.97330', '-74.56800'), ('BURLINGTON', 9736, '40.07840', '-74.85280'), ('CINNAMINSON', None, '39.99990', '-74.99150'), ('COUNTRY LAKE ESTATES', 4012, '39.94870', '-74.54110'), ('DELANCO', None, '40.04920', '-74.94910'), ('EDGEWATER PARK', None, '40.05460', '-74.91250'), ('FIELDSBORO', 522, '40.13620', '-74.72990'), ('FLORENCE-ROEBLING', 8200, '40.11810', '-74.79450'), ('FORT DIX', 7464, '40.00490', '-74.61310'), ('LEISURETOWNE', 2535, '39.90100', '-74.70450'), ('MAPLE SHADE', None, '39.95130', '-74.99570'), ('MARLTON', 10260, '39.90140', '-74.92930'), ('MCGUIRE AFB', 6478, '40.04130', '-74.58440'), ('MEDFORD LAKES', 4173, '39.85940', '-74.80580'), ('MOORESTOWN-LENOLA', 13860, '39.96430', '-74.96600'), ('MOUNT HOLLY', None, '39.99500', '-74.78680'), ('PALMYRA', 7091, '40.00200', '-75.03490'), ('PEMBERTON', 1210, '39.97140', '-74.68620'), ('PEMBERTON HEIGHTS', 2512, '39.95770', '-74.67820'), ('PRESIDENTIAL LAKES ESTATE', None, '39.91370', '-74.56490'), ('RAMBLEWOOD', 6003, '39.93160', '-74.95320'), ('RIVERSIDE', None, '40.03550', '-74.95590'), ('RIVERTON', 2759, '40.01170', '-75.01490'), ('WILLINGBORO', None, '40.02710', '-74.88740'), ('WRIGHTSTOWN', 748, '40.02750', '-74.63100')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NJZ018': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('AUDUBON', 9182, '39.88970', '-75.07280'), ('AUDUBON PARK', 1102, '39.89600', '-75.08870'), ('BARRINGTON', 7084, '39.87040', '-75.05300'), ('BELLMAWR', 11262, '39.86590', '-75.09490'), ('BERLIN', 6149, '39.79400', '-74.93790'), ('BLACKWOOD', 4692, '39.79840', '-75.06290'), ('BROOKLAWN', 2354, '39.87810', '-75.12150'), ('CAMDEN', 79904, '39.93590', '-75.10840'), ('CHERRY HILL', None, '39.90230', '-74.99610'), ('CHESILHURST', 1520, '39.73220', '-74.87970'), ('CLEMENTON', 4986, '39.80420', '-74.98580'), ('COLLINGSWOOD', 14326, '39.91620', '-75.07500'), ('GIBBSBORO', 2435, '39.83350', '-74.96640'), ('GLENDORA', 4907, '39.84040', '-75.06910'), ('GLOUCESTER CITY', 11484, '39.89240', '-75.11780'), ('HADDON HEIGHTS', 7547, '39.87870', '-75.06600'), ('HADDONFIELD', 11659, '39.89500', '-75.03470'), ('HI-NELLA', 1029, '39.83520', '-75.02200'), ('LAUREL SPRINGS', 1970, '39.82010', '-75.00590'), ('LAWNSIDE', 2692, '39.86560', '-75.03060'), ('LINDENWOLD', 17414, '39.81580', '-74.99020'), ('MAGNOLIA', 4409, '39.85560', '-75.03620'), ('MERCHANTVILLE', 3801, '39.94990', '-75.05060'), ('MOUNT EPHRAIM', 4495, '39.88100', '-75.09170'), ('OAKLYN', 4188, '39.90190', '-75.08080'), ('PENNSAUKEN', 35737, '39.96370', '-75.05620'), ('PINE HILL', 10880, '39.78660', '-74.98580'), ('PINE VALLEY', 20, '39.78840', '-74.97240'), ('RUNNEMEDE', 8533, '39.85140', '-75.07510'), ('SOMERDALE', 5192, '39.84530', '-75.02300'), ('STRATFORD', 7271, '39.82820', '-75.01510'), ('TAVISTOCK', 24, '39.87510', '-75.02840'), ('WESTVILLE', 4500, '39.86970', '-75.13000'), ('WOODLYNNE', 2796, '39.91630', '-75.09580')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'WYZ025': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BONDURANT', 155, '43.20000', '-110.41000'), ('BOULDER', 30, '42.72000', '-109.63000'), ('CORA', 76, '42.94000', '-109.98000'), ('DANIEL', 89, '42.87000', '-110.07000'), ('PINEDALE', 1412, '42.86640', '-109.86470')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RIW'}, -'GAZ074': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DAVISBORO', 1544, '32.98320', '-82.60610'), ('DEEPSTEP', 132, '33.01610', '-82.96760'), ('HARRISON', 509, '32.82590', '-82.72590'), ('OCONEE', 280, '32.85220', '-82.95740'), ('RIDDLEVILLE', 124, '32.90780', '-82.66750'), ('SANDERSVILLE', 6144, '32.98330', '-82.81270'), ('TENNILLE', 1505, '32.93620', '-82.81130')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'OHZ014': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANDOVER', 1269, '41.60720', '-80.56960'), ('JEFFERSON', 3572, '41.73860', '-80.76870'), ('ORWELL', 1519, '41.53610', '-80.85850'), ('ROAMING SHORES', 1239, '41.63670', '-80.82850'), ('ROCK CREEK', 584, '41.66070', '-80.85380')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'WVZ007': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('HARTFORD CITY', 519, '38.99860', '-81.98870'), ('HENDERSON', 325, '38.83150', '-82.13570'), ('LEON', 132, '38.74730', '-81.95610'), ('NEW HAVEN', 1559, '38.98800', '-81.96750'), ('POINT PLEASANT', 4637, '38.85390', '-82.13070')], 'partOfState': '', 'wfo': 'RLX'}, -'IDZ021': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ABERDEEN', 1840, '42.94460', '-112.83700'), ('AMERICAN FALLS', 4111, '42.78200', '-112.85380'), ('ARBON VALLEY', 627, '42.88390', '-112.59780'), ('BLACKFOOT', 10419, '43.19400', '-112.34490'), ('CHUBBUCK', 9700, '42.92220', '-112.46470'), ('COLD WATER', None, '42.62000', '-113.12000'), ('FORT HALL', 3193, '43.00650', '-112.44730'), ('GIBSON', None, '43.08000', '-112.42000'), ('MICHAUD', None, '42.93000', '-112.57000'), ('MORELAND', None, '43.22000', '-112.45000'), ('NEELEY', None, '42.73000', '-112.88000'), ('PINGREE', None, '43.12000', '-112.62000'), ('POCATELLO', 51466, '42.87620', '-112.46850'), ('POCATELLO ARPT', None, '42.92000', '-112.60000'), ('ROCKFORD', None, '43.18000', '-112.55000'), ('ROSE', None, '43.25000', '-112.33000'), ('SPRINGFIELD', None, '43.08000', '-112.70000'), ('STERLING', None, '43.03000', '-112.75000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'IDZ020': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('AMMON', 6187, '43.47960', '-111.96830'), ('ARCHER', None, '43.72000', '-111.78000'), ('ATOMIC CITY', 25, '43.44430', '-112.81260'), ('BASALT', 419, '43.31440', '-112.16520'), ('BUTTE CITY', 76, '43.60640', '-113.23850'), ('CAMAS', None, '44.00000', '-112.22000'), ('CRATERS OF MOON', None, '43.42000', '-113.53000'), ('FIRTH', 408, '43.30560', '-112.18310'), ('GOSHEN', None, '43.32000', '-112.08000'), ('HAMER', 12, '43.92570', '-112.20370'), ('HERBERT', None, '43.70000', '-111.67000'), ('IDAHO FALLS', 50730, '43.49290', '-112.03500'), ('IDAHO FALLS ARPT', None, '43.50000', '-112.04000'), ('IONA', 1201, '43.52850', '-111.92770'), ('LEWISVILLE', 467, '43.69490', '-112.01400'), ('LORENZO', None, '43.73000', '-111.88000'), ('MENAN', 707, '43.72200', '-111.99410'), ('MONTEVIEW', None, '43.93000', '-112.53000'), ('MOODY', None, '43.83000', '-111.63000'), ('MUD LAKE', 270, '43.84260', '-112.47910'), ('OSGOOD', None, '43.57000', '-112.10000'), ('OZONE', None, '43.40000', '-111.85000'), ('PLANO', None, '43.88000', '-111.88000'), ('POPLAR', None, '43.62000', '-111.68000'), ('REXBURG', 17257, '43.82520', '-111.78740'), ('RIGBY', 2998, '43.67390', '-111.91550'), ('RIRIE', 545, '43.63130', '-111.77340'), ('ROBERTS', 647, '43.72070', '-112.12680'), ('SHELLEY', 3813, '43.38020', '-112.12310'), ('SUGAR CITY', 1242, '43.87240', '-111.74650'), ('TABER', None, '43.32000', '-112.63000'), ('TERRETON', None, '43.83000', '-112.43000'), ('THORNTON', None, '43.75000', '-111.85000'), ('UCON', 943, '43.59420', '-111.95540')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'IDZ022': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ALBION', 262, '42.41100', '-113.58010'), ('ALMO', None, '42.10000', '-113.63000'), ('BASIN', None, '42.25000', '-113.78000'), ('BLACK PINE', None, '42.02000', '-112.98000'), ('BRIDGE', None, '42.13000', '-113.33000'), ('BUIST', None, '42.33000', '-112.43000'), ('CHERRY CREEK', None, '42.10000', '-112.23000'), ('CHURCHILL', None, '42.35000', '-113.92000'), ('CONANT', None, '42.27000', '-113.45000'), ('CRYSTAL', None, '42.63000', '-112.48000'), ('ELBA', None, '42.25000', '-113.55000'), ('HEGLAR', None, '42.47000', '-113.15000'), ('HOLBROOK', None, '42.17000', '-112.65000'), ('IDAHOME', None, '42.42000', '-113.38000'), ('KEOGH', None, '42.22000', '-113.33000'), ('LOCUST', None, '42.27000', '-113.87000'), ('MALAD CITY', 2158, '42.18950', '-112.24910'), ('MALTA', 177, '42.30760', '-113.36970'), ('MARION', None, '42.28000', '-113.90000'), ('OAKLEY', 668, '42.24240', '-113.88010'), ('PLEASANTVIEW', None, '42.18000', '-112.35000'), ('RIDGEDALE', None, '42.02000', '-112.48000'), ('ROCKLAND', 316, '42.57360', '-112.87420'), ('ROY', None, '42.37000', '-112.82000'), ('SAMARIA', None, '42.12000', '-112.33000'), ('STONE', None, '42.02000', '-112.70000'), ('SUBLETT', None, '42.32000', '-113.13000'), ('VIEW', None, '42.45000', '-113.68000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PIH'}, -'IDZ025': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ALTON', None, '42.23000', '-111.15000'), ('BENNINGTON', None, '42.38000', '-111.32000'), ('BERN', None, '42.33000', '-111.38000'), ('BLOOMINGTON', 251, '42.19090', '-111.40480'), ('FISH HAVEN', None, '42.03000', '-111.38000'), ('GENEVA', None, '42.35000', '-111.07000'), ('GEORGETOWN', 538, '42.47780', '-111.36500'), ('LIBERTY', None, '42.32000', '-111.45000'), ('LINDSAYVILLE', None, '42.42000', '-111.42000'), ('MAPLETON', None, '42.08000', '-111.75000'), ('MINK CREEK', None, '42.23000', '-111.72000'), ('MONTPELIER', 2785, '42.32310', '-111.30090'), ('NOUNAN', None, '42.47000', '-111.45000'), ('OVID', None, '42.28000', '-111.38000'), ('PARIS', 576, '42.23000', '-111.40000'), ('SHARON', None, '42.35000', '-111.47000'), ('ST. CHARLES', 156, '42.11260', '-111.38920'), ('THATCHER', None, '42.42000', '-111.72000'), ('WARDBORO', None, '42.25000', '-111.27000')], 'partOfState': 'SOUTHEAST', 'wfo': 'SLC'}, -'IDZ024': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BANIDA', None, '42.23000', '-111.93000'), ('CLIFTON', 213, '42.18770', '-112.00510'), ('DAYTON', 444, '42.11300', '-111.97640'), ('FRANKLIN', 641, '42.01610', '-111.80230'), ('OXFORD', 53, '42.25980', '-112.01660'), ('PRESTON', 4682, '42.09730', '-111.87450'), ('RIVERDALE', None, '42.17000', '-111.83000'), ('WESTON', 425, '42.03840', '-111.97710'), ('WHITNEY', None, '42.07000', '-111.83000')], 'partOfState': 'SOUTHEAST', 'wfo': 'SLC'}, -'IDZ027': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CRAIGMONT', 556, '46.24280', '-116.47130'), ('KAMIAH', 1160, '46.22690', '-116.02770'), ('MOHLER', None, '46.28720', '-116.34050'), ('NEZPERCE', 523, '46.23360', '-116.23880'), ('WAHA', None, '46.20800', '-116.85070'), ('WINCHESTER', 308, '46.24110', '-116.62240')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'IDZ026': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CULDESAC', 378, '46.37500', '-116.66940'), ('GIFFORD', None, '46.43930', '-116.55330'), ('LAPWAI', 1134, '46.40470', '-116.80340'), ('LENORE', None, '46.50520', '-116.55000'), ('LEWISTON', 30904, '46.39290', '-116.99220'), ('PECK', 186, '46.47390', '-116.42410'), ('REUBENS', 72, '46.32220', '-116.54110'), ('SOUTHWICK', None, '46.60220', '-116.46930'), ('SPALDING', None, '46.60220', '-116.46930')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'IDZ029': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('REYNOLDS', None, '43.20000', '-116.73330'), ('SILVER CITY', None, '43.01700', '-116.73330')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'IDZ028': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BLAINE', None, '43.35000', '-114.61700'), ('CORRAL', None, '43.38300', '-114.96700'), ('FAIRFIELD', 395, '43.34610', '-114.79210'), ('HILL CITY', None, '43.29580', '-115.05280'), ('PINE', None, '43.48080', '-115.31500'), ('SELBY', None, '43.33300', '-114.71700'), ('SOLDIER', None, '43.36700', '-114.80000')], 'partOfState': 'SOUTHWEST', 'wfo': 'BOI'}, -'WIZ022': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAILEYS HARBOR', None, '45.06000', '-87.13000'), ('BRUSSELS', None, '44.73000', '-87.63000'), ('CARLSVILLE', None, '44.95000', '-87.34000'), ('CHAMBERS ISLAND', None, '45.18000', '-87.35000'), ('CLAY BANKS', None, '44.71000', '-87.36000'), ('EGG HARBOR', 250, '45.04000', '-87.28000'), ('ELLISON BAY', None, '45.25000', '-87.06000'), ('EPHRAIM', 353, '45.15000', '-87.16000'), ('FISH CREEK', None, '45.13000', '-87.23000'), ('FORESTVILLE', 429, '44.68000', '-87.50000'), ('GILLS ROCK', None, '45.28000', '-87.01000'), ('GILLS ROCK', None, '45.28000', '-87.01000'), ('INSTITUTE', None, '44.90000', '-87.30000'), ('JACKSONPORT', None, '44.98000', '-87.18000'), ('KOLBERG', None, '44.71000', '-87.56000'), ('LITTLE STURGEON', None, '44.84000', '-87.57000'), ('MAPLEWOOD', None, '44.75000', '-87.48000'), ('PENINSULA STATE PARK', None, '45.16000', '-87.21000'), ('POTAWATOMI STATE PARK', None, '44.88000', '-87.44000'), ('SISTER BAY', 886, '45.18000', '-87.11000'), ('VALMY', None, '44.90000', '-87.26000'), ('WHITEFISH BAY', 14163, '44.90000', '-87.21000'), ('WHITEFISH DUNES STATE PAR', None, '44.92000', '-87.21000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'KYZ001': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BOUNDURANT', None, '36.52330', '-89.31970'), ('FULTON', 2775, '36.51250', '-88.88120'), ('HICKMAN', 2560, '36.56290', '-89.18780')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ002': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CLINTON', 1415, '36.66610', '-88.99400'), ('COLUMBUS', 229, '36.75950', '-89.10180')], 'partOfState': '', 'wfo': 'PAH'}, -'NCZ068': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BELWOOD', 962, '35.47720', '-81.52120'), ('BOILING SPRINGS NC', None, '35.24890', '-81.66720'), ('CASAR', 308, '35.51290', '-81.61770'), ('EARL', 234, '35.19490', '-81.53430'), ('FALLSTON', 603, '35.42920', '-81.50240'), ('GROVER', 698, '35.17090', '-81.45170'), ('KINGS MOUNTAIN', 9693, '35.24150', '-81.34800'), ('KINGSTOWN', 845, '35.36250', '-81.62310'), ('LATTIMORE', 419, '35.31730', '-81.66200'), ('LAWNDALE', 642, '35.41410', '-81.56160'), ('MOORESBORO', 314, '35.29910', '-81.69960'), ('PATTERSON SPRINGS', 620, '35.23240', '-81.51750'), ('POLKVILLE', 535, '35.41690', '-81.64480'), ('SHELBY', 19477, '35.28890', '-81.54200'), ('WACO', 328, '35.36190', '-81.42930')], 'partOfState': '', 'wfo': 'GSP'}, -'KYZ004': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BARLOW', 715, '37.05070', '-89.04510'), ('BLANDVILLE', 99, '36.94350', '-88.96460'), ('KEVIL', 574, '37.08490', '-88.88510'), ('LA CENTER', 1038, '37.07480', '-88.97410'), ('LOVELACEVILLE', None, '36.96860', '-88.83080'), ('WICKLIFFE', 794, '36.96630', '-89.08150')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ005': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('LONE OAK', 454, '37.03610', '-88.66610'), ('PADUCAH', 26307, '37.07260', '-88.63600'), ('REIDLAND', 4353, '37.00760', '-88.52560')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ006': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FANCY FARM', None, '36.75940', '-88.79280'), ('LOWES', None, '36.88550', '-88.77380'), ('MAYFIELD', 10349, '36.73630', '-88.64570'), ('SYMSONIA', None, '36.90460', '-88.51000'), ('WATER VALLEY', 316, '36.56830', '-88.81080'), ('WINGO', 581, '36.64190', '-88.73790')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ007': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('GOLCONDA', 726, '37.36270', '-88.48670'), ('CARRSVILLE', 64, '37.39770', '-88.37320'), ('GRAND RIVERS', 343, '37.00570', '-88.23590'), ('LEDBETTER', 1700, '37.04810', '-88.49720'), ('SALEM', 769, '37.26550', '-88.23950'), ('SMITHLAND', 401, '37.13780', '-88.40330')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ008': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AURORA', None, '36.77660', '-88.14410'), ('BENTON', 4197, '36.85290', '-88.35810'), ('BREWERS', None, '36.77130', '-88.43880'), ('CALVERT CITY', 2701, '37.03330', '-88.35290'), ('HARDIN', 564, '36.76430', '-88.30150')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ009': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('HARRIS GROVE', None, '36.57000', '-88.42770'), ('HAZEL', 440, '36.50540', '-88.32600'), ('KIRKSEY', None, '36.68170', '-88.42670'), ('MURRAY', 14950, '36.61150', '-88.31570'), ('NEW CONCORD', None, '36.59640', '-88.06980')], 'partOfState': '', 'wfo': 'PAH'}, -'WIZ028': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALTOONA', 6698, '44.80510', '-91.44200'), ('AUGUSTA', 1460, '44.67870', '-91.12120'), ('EAU CLAIRE', 61704, '44.82120', '-91.49230'), ('FAIRCHILD', 564, '44.60550', '-90.95640'), ('FALL CREEK', 1236, '44.76210', '-91.27400')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'WIZ029': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ABBOTSFORD', 1956, '44.94830', '-90.31870'), ('ATWOOD', None, '44.88269', '-90.48398'), ('CHILI', None, '44.63049', '-90.35057'), ('CHRISTIE', None, '44.64877', '-90.59729'), ('COLBY', 1616, '44.90890', '-90.31690'), ('CURTISS', 198, '44.95390', '-90.43520'), ('DORCHESTER', 827, '45.00230', '-90.33330'), ('EIDSVOLD', None, '44.95031', '-90.86594'), ('GLOBE', None, '44.65060', '-90.66490'), ('GRANTON', 406, '44.58850', '-90.46200'), ('GREENWOOD', 1079, '44.76540', '-90.59880'), ('HUMBIRD', None, '44.53180', '-90.90066'), ('JUNCTION', None, '45.01428', '-90.90066'), ('LAKE ARBUTUS', None, '44.42946', '-90.69963'), ('LONGWOOD', None, '44.88269', '-90.60094'), ('LOYAL', 1308, '44.73610', '-90.49640'), ('LYNN', None, '44.58298', '-90.41636'), ('NEILLSVILLE', 2731, '44.56040', '-90.59090'), ('NEVINS', None, '44.49891', '-90.36701'), ('OWEN', 936, '44.94940', '-90.56780'), ('RESEBURG', None, '44.91559', '-90.76725'), ('RIPLINGER', None, '44.82970', '-90.39991'), ('SHERWOOD', 1550, '44.43129', '-90.35239'), ('SHORTVILLE', None, '44.49708', '-90.51687'), ('SIDNEY', None, '44.54825', '-90.65211'), ('THORP', 1536, '44.95980', '-90.80090'), ('TIOGA', None, '44.68166', '-90.78187'), ('UNITY', 368, '44.85060', '-90.31390'), ('VEEFKIND', None, '44.69811', '-90.38712'), ('WILLARD', None, '44.72918', '-90.73435'), ('WITHEE', 508, '44.95280', '-90.59700')], 'partOfState': 'CENTRAL', 'wfo': 'ARX'}, -'TNZ007': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ADAMS', 566, '36.58160', '-87.06510'), ('CEDAR HILL', 298, '36.55060', '-87.00010'), ('CROSS PLAINS', 1381, '36.54010', '-86.68120'), ('GREENBRIER', 4940, '36.42300', '-86.80090'), ('ORLINDA', 594, '36.60070', '-86.67190'), ('RIDGETOP', 1083, '36.39670', '-86.77340'), ('SPRINGFIELD', 14329, '36.49950', '-86.87870'), ('WHITE HOUSE', 7220, '36.46320', '-86.66780')], 'partOfState': '', 'wfo': 'OHX'}, -'INZ092': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BENNETTSVILLE', None, '38.43330', '-85.80000'), ('BORDEN', 818, '38.46670', '-85.95000'), ('CARWOOD', None, '38.45000', '-85.86670'), ('CEMENTVILLE', None, '38.35000', '-85.75000'), ('CHARLESTOWN', 5993, '38.45380', '-85.66810'), ('CLARKSVILLE', 21400, '38.31640', '-85.76540'), ('HAMBURG', None, '38.38330', '-85.76670'), ('HENRYVILLE', 1545, '38.53330', '-85.76670'), ('JEFFERSONVILLE', 27362, '38.30090', '-85.72660'), ('MARYSVILLE', None, '38.58330', '-85.65000'), ('MEMPHIS', 400, '38.48330', '-85.76670'), ('NEW MARKET', 659, '38.53330', '-85.61670'), ('NEW PROVIDENCE', None, '38.45790', '-85.92080'), ('NEW WASHINGTON', 547, '38.56670', '-85.55000'), ('OTISCO', None, '38.53330', '-85.66670'), ('OTTO', None, '38.56670', '-85.46670'), ('OWEN', None, '38.47000', '-85.53330'), ('SELLERSBURG', 6071, '38.39090', '-85.75720'), ('SOLON', None, '38.50000', '-85.53330'), ('SPEED', None, '38.41670', '-85.75000'), ('STARLIGHT', None, '38.41670', '-85.90000'), ('UNDERWOOD', None, '38.59000', '-85.78330'), ('UTICA', 591, '38.33330', '-85.66000'), ('WATSON', None, '38.35000', '-85.70000'), ('WILSON', None, '38.45000', '-85.83330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'INZ090': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRADFORD', None, '38.36670', '-86.06670'), ('BRIDGEPORT', None, '38.17000', '-85.92000'), ('BUENA VISTA', None, '38.05000', '-85.98330'), ('BYRNEVILLE', None, '38.33330', '-86.05000'), ('CENTRAL', None, '38.10000', '-86.15000'), ('CENTRAL BARREN', None, '38.36670', '-86.10000'), ('CORYDON', 2715, '38.21270', '-86.12530'), ('CRANDALL', 131, '38.28780', '-86.06580'), ('DEPAUW', None, '38.33330', '-86.21670'), ('DOGWOOD', None, '38.10000', '-86.08330'), ('ELIZABETH', 137, '38.12530', '-85.97480'), ('EVANS LANDING', None, '38.01000', '-86.00000'), ('FRENCHTOWN', None, '38.31670', '-86.21670'), ('HANCOCK CHAPEL', None, '38.38330', '-86.18330'), ('LACONIA', 29, '38.03210', '-86.08530'), ('LANESVILLE', 614, '38.23830', '-85.98480'), ('MAUCKPORT', 83, '38.02430', '-86.20160'), ('NEW AMSTERDAM', 1, '38.10280', '-86.27690'), ('NEW BOSTON', None, '38.01000', '-86.01670'), ('NEW MIDDLETOWN', 77, '38.16340', '-86.05010'), ('NEW SALISBURY', None, '38.31670', '-86.10000'), ('PALMYRA', 633, '38.40820', '-86.11420'), ('RAMSEY', None, '38.31670', '-86.15000'), ('VALLEY CITY', None, '38.10000', '-86.21670'), ('WHITE CLOUD', None, '38.23330', '-86.23330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'INZ091': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('EDWARDSVILLE', None, '38.28330', '-85.90000'), ('FLOYDS KNOBS', None, '38.31670', '-85.86670'), ('GALENA', 1831, '38.35030', '-85.93940'), ('GEORGETOWN', 4497, '38.30000', '-85.96670'), ('GREENVILLE', 591, '38.37110', '-85.98460'), ('NAVILLETON', None, '38.38330', '-85.93330'), ('NEW ALBANY', 37603, '38.30400', '-85.82580'), ('SCOTTSVILLE', None, '38.39000', '-85.91670'), ('ST. JOSEPH', None, '38.39000', '-85.82000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'OHZ039': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BALTIC', 743, '40.44130', '-81.70180'), ('BARNHILL', 364, '40.44820', '-81.36760'), ('BOLIVAR', 894, '40.65000', '-81.45480'), ('DENNISON', 2992, '40.39710', '-81.32790'), ('DOVER', 12210, '40.52980', '-81.47980'), ('GNADENHUTTEN', 1280, '40.35920', '-81.43130'), ('MIDVALE', 547, '40.43700', '-81.37210'), ('MINERAL CITY', 841, '40.60240', '-81.36150'), ('NEW PHILADELPHIA', 17056, '40.48670', '-81.44130'), ('NEWCOMERSTOWN', 4008, '40.27450', '-81.59880'), ('PARRAL', 241, '40.56120', '-81.49500'), ('PORT WASHINGTON', 552, '40.32690', '-81.51960'), ('ROSWELL', 276, '40.47540', '-81.34640'), ('STILLWATER', None, '40.32000', '-81.32000'), ('STONE CREEK', 184, '40.39870', '-81.55870'), ('STRASBURG', 2310, '40.60230', '-81.52940'), ('SUGARCREEK', 2174, '40.50660', '-81.64190'), ('TUSCARAWAS', 934, '40.39750', '-81.40420'), ('UHRICHSVILLE', 5662, '40.40010', '-81.35080'), ('ZOAR', 193, '40.61400', '-81.42430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'PBZ'}, -'MTZ018': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('FLAXVILLE', 87, '48.80380', '-105.17220'), ('FOUR BUTTES', None, '48.80970', '-105.60580'), ('MADOC', None, '48.81080', '-105.28520'), ('NAVAJO', None, '48.79220', '-105.05970'), ('PEERLESS', None, '48.78250', '-105.83050'), ('PORT OF SCOBEY', None, '48.99940', '-105.40660'), ('PORT OF WHITETAIL', None, '48.99910', '-105.16130'), ('SCOBEY', 1082, '48.79250', '-105.42020'), ('WEST FORK', None, '48.68690', '-105.91110'), ('WHITETAIL', None, '48.89500', '-105.16270')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'UTZ009': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('HEWINTA G.S.', None, '40.97000', '-110.48000'), ('KINGS PEAK', None, '40.78000', '-110.38000'), ('TRIAL LK', None, '40.68000', '-111.02000')], 'partOfState': '', 'wfo': 'SLC'}, -'NCZ067': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALEXANDER MILLS', None, '35.30980', '-81.85700'), ('CLIFFSIDE', None, '35.23810', '-81.77000'), ('ELLENBORO', 479, '35.32960', '-81.75910'), ('FOREST CITY', 7549, '35.33600', '-81.86910'), ('HARRIS', None, '35.24280', '-81.87470'), ('LAKE LURE', 1027, '35.44060', '-82.20660'), ('RUTHERFORDTON', 4131, '35.36480', '-81.96090'), ('SPINDALE', 4022, '35.36030', '-81.92470'), ('SUNSHINE', None, '35.44890', '-81.81060'), ('THERMAL CITY', None, '35.51920', '-81.97500')], 'partOfState': '', 'wfo': 'GSP'}, -'UTZ008': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ALTA', 370, '40.57910', '-111.61910'), ('BIRDSEYE', None, '39.92000', '-111.55000'), ('BRIGHTON', None, '40.60000', '-111.56000'), ('CHARLESTON', 378, '40.46550', '-111.46790'), ('GOLTON', None, '39.85000', '-111.02000'), ('HAILSTONE', None, '40.60000', '-111.40000'), ('MT TIMPANOGOS', None, '40.38000', '-111.69500'), ('PARK CITY', 7371, '40.65640', '-111.49300'), ('SNOWBIRD', None, '40.57000', '-111.65000'), ('SNYDERVILLE', None, '40.68000', '-111.53000'), ('SOLDIER SUMMIT', None, '39.93000', '-111.08000'), ('SUNDANCE', None, '40.37000', '-111.57000'), ('WOODLAND', 335, '40.58000', '-111.23000')], 'partOfState': '', 'wfo': 'SLC'}, -'ORZ008': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADAIR VILLAGE', 536, '44.67430', '-123.21770'), ('ALBANY', 40852, '44.61700', '-123.09130'), ('ALPINE', None, '44.33330', '-123.35000'), ('BROWNSVILLE', 1449, '44.39300', '-122.98190'), ('CHESHIRE', None, '44.18330', '-123.28330'), ('COBURG', 969, '44.13810', '-123.05980'), ('CORVALLIS', 49322, '44.57100', '-123.27600'), ('CRABTREE', None, '44.63330', '-122.88330'), ('EUGENE', 137893, '44.05300', '-123.11220'), ('EUGENE AIRPORT', None, '44.12000', '-123.22000'), ('FERN RIDGE RESERVOIR', None, '44.08000', '-123.29000'), ('GOSHEN', None, '43.98330', '-123.00000'), ('GREENBERRY', None, '44.45000', '-123.27000'), ('HALSEY', 724, '44.38310', '-123.10810'), ('HARRISBURG', 2795, '44.26850', '-123.16500'), ('HOSKINS', None, '44.68300', '-123.45000'), ('JUNCTION CITY', 4721, '44.21790', '-123.20390'), ('KINGS VALLEY', None, '44.70000', '-123.41700'), ('LACOMB', None, '44.58330', '-122.73330'), ('LEBANON', 12950, '44.53490', '-122.90440'), ('LEWISBURG', None, '44.63330', '-123.23330'), ('MILLERSBURG', 651, '44.68070', '-123.07060'), ('MONROE', 607, '44.31680', '-123.29850'), ('NORTH ALBANY', None, '44.66170', '-123.11360'), ('PEORIA', None, '44.45000', '-123.20000'), ('PHILOMATH', 3838, '44.54050', '-123.35710'), ('SANTA CLARA', None, '44.11450', '-123.13190'), ('SCIO', 695, '44.70540', '-122.84850'), ('SHEDD', None, '44.46660', '-123.11660'), ('SODAVILLE', 290, '44.48390', '-122.86740'), ('SPRINGFIELD', 52864, '44.05290', '-122.97710'), ('TANGENT', 933, '44.55120', '-123.10790'), ('WATERLOO', 239, '44.49530', '-122.82160'), ('WREN', None, '44.59000', '-123.42000')], 'partOfState': '', 'wfo': 'PQR'}, -'NCZ066': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('COLUMBUS', 992, '35.24680', '-82.20490'), ('LAKE ADGER', None, '35.33500', '-82.18670'), ('MILL SPRING', None, '35.29750', '-82.16140'), ('SALUDA', 575, '35.23790', '-82.34810'), ('TRYON', 1760, '35.20890', '-82.23870')], 'partOfState': '', 'wfo': 'GSP'}, -'OHZ034': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CELINA', 10303, '40.55330', '-84.57010'), ('CHICKASAW', 364, '40.43620', '-84.49400'), ('COLDWATER', 4482, '40.48270', '-84.63150'), ('FORT RECOVERY', 1273, '40.41090', '-84.77510'), ('MENDON', 697, '40.67130', '-84.51800'), ('MONTEZUMA', 191, '40.48930', '-84.54890'), ('ROCKFORD', 1126, '40.69200', '-84.64870'), ('ST. HENRY', 2271, '40.42090', '-84.63360')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ035': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUCKLAND', 255, '40.62430', '-84.26070'), ('CRIDERSVILLE', 1817, '40.65260', '-84.14600'), ('MINSTER', 2794, '40.39430', '-84.37950'), ('NEW BREMEN', 2909, '40.43740', '-84.38060'), ('NEW KNOXVILLE', 891, '40.49420', '-84.31850'), ('ST. MARYS', 8342, '40.54390', '-84.39090'), ('UNIOPOLIS', 256, '40.60190', '-84.08660'), ('WAPAKONETA', 9474, '40.57020', '-84.19220'), ('WAYNESFIELD', 803, '40.60180', '-83.97380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ036': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CALEDONIA', 578, '40.63600', '-82.96940'), ('GREEN CAMP', 342, '40.53280', '-83.20800'), ('LA RUE', 775, '40.57790', '-83.38250'), ('MARION', 35318, '40.58490', '-83.12790'), ('MORRAL', 388, '40.68990', '-83.21310'), ('NEW BLOOMINGTON', 548, '40.58550', '-83.31530'), ('PROSPECT', 1191, '40.45240', '-83.18570'), ('WALDO', 332, '40.46160', '-83.08560')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'MSZ028': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DUCK HILL', 746, '33.63140', '-89.71250'), ('KILMICHAEL', 830, '33.43900', '-89.56700'), ('WINONA', 5482, '33.48940', '-89.72610')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'MSZ029': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('EUPORA', 2326, '33.54390', '-89.27780'), ('MABEN', 803, '33.55400', '-89.08100'), ('MANTEE', 169, '33.73050', '-89.06000'), ('MATHISTON', 720, '33.53970', '-89.12830'), ('WALTHALL', 170, '33.60800', '-89.27600')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'LAZ038': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AMITE', None, '30.73340', '-90.51000'), ('HAMMOND', 17639, '30.50770', '-90.46010'), ('INDEPENDENCE', 1724, '30.63550', '-90.50510'), ('KENTWOOD', 2205, '30.93470', '-90.51530'), ('PONCHATOULA', 5180, '30.43730', '-90.44350'), ('ROBERT', None, '30.50610', '-90.34080'), ('ROSELAND', 1162, '30.76470', '-90.51280'), ('TANGIPAHOA', 747, '30.87530', '-90.51390'), ('TICKFAW', 617, '30.57620', '-90.48570'), ('WILMER', None, '30.81390', '-90.36250')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ039': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ANGIE', 240, '30.96390', '-89.81580'), ('BOGALUSA', 13365, '30.78270', '-89.86410'), ('ENON', None, '30.72670', '-90.08420'), ('FRANKLINTON', 3657, '30.84880', '-90.14360'), ('MOUNT HERMAN', None, '30.96000', '-90.29580'), ('VARNADO', 342, '30.89470', '-89.83160')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'MSZ022': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BANNER', None, '34.10000', '-89.40000'), ('BIG CREEK', 127, '33.84330', '-89.41570'), ('BRUCE', 2097, '33.99180', '-89.34490'), ('CALHOUN CITY', 1872, '33.85930', '-89.31460'), ('DERMA', 1023, '33.85450', '-89.28630'), ('PITTSBORO', 212, '33.94130', '-89.33680'), ('SABOUGLA', None, '33.76670', '-89.48330'), ('SLATE SPRING', None, '33.74260', '-89.37310'), ('VARDAMAN', 1065, '33.88170', '-89.17860')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'NEZ072': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ELWOOD', 761, '40.58960', '-99.86160'), ('JOHNSON LAKE', None, '40.68000', '-99.85000'), ('SMITHFIELD', 68, '40.57320', '-99.74090')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'MSZ020': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BRAZIL', None, '34.03330', '-90.28330'), ('CHARLESTON', 2198, '34.00740', '-90.05510'), ('ENID', None, '34.11670', '-89.95000'), ('GLENDORA', 285, '33.82850', '-90.29210'), ('PAYNES', None, '33.91670', '-90.06670'), ('SUMNER', 407, '33.96980', '-90.36950'), ('TUTWILER', 1364, '34.01180', '-90.42990'), ('WEBB', 587, '33.94800', '-90.34620')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ021': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('COFFEEVILLE', 930, '33.97670', '-89.67750'), ('OAKLAND', 586, '34.05310', '-89.91460'), ('SCOBEY', None, '33.93330', '-89.88330'), ('TILLATOBA', 121, '33.98490', '-89.89570'), ('VELMA', None, '34.06670', '-89.65000'), ('WATER VALLEY', 3677, '34.16160', '-89.63030')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ026': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('GRENADA', 14879, '33.77820', '-89.81040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'MSZ027': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CARROLLTON', 408, '33.50490', '-89.92260'), ('NORTH CARROLLTON', 499, '33.51820', '-89.91990'), ('VAIDEN', 840, '33.33220', '-89.75250')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'MSZ024': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ABERDEEN', 6415, '33.82850', '-88.55160'), ('AMORY', 6956, '33.98790', '-88.48290'), ('GATTMAN', 114, '33.88550', '-88.23610'), ('HATLEY', 476, '33.97720', '-88.41810'), ('NETTLETON', 1932, '34.09130', '-88.61650'), ('NEW WREN', None, '33.96670', '-88.61670'), ('PRAIRIE', None, '33.80000', '-88.66670'), ('SMITHVILLE', 882, '34.06700', '-88.39810')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'OHZ031': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('APPLE CREEK', 999, '40.74830', '-81.83350'), ('BURBANK', 279, '40.98760', '-81.99460'), ('CONGRESS', 192, '40.92630', '-82.05530'), ('CRESTON', 2161, '40.97940', '-81.90040'), ('DALTON', 1605, '40.79920', '-81.69720'), ('DOYLESTOWN', 2799, '40.97030', '-81.69670'), ('FREDERICKSBURG', 487, '40.67740', '-81.86970'), ('MARSHALLVILLE', 826, '40.90040', '-81.73330'), ('MOUNT EATON', 246, '40.69500', '-81.70280'), ('ORRVILLE', 8551, '40.84680', '-81.77120'), ('RITTMAN', 6314, '40.97100', '-81.78330'), ('SHREVE', 1582, '40.68220', '-82.02230'), ('SMITHVILLE', 1333, '40.86280', '-81.85980'), ('WEST SALEM', 1501, '40.96960', '-82.10780'), ('WOOSTER', 24811, '40.81850', '-81.93290')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'KSZ039': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AUBURN', 1121, '38.90610', '-95.81580'), ('DOVER', None, '38.96470', '-95.93720'), ('RICHLAND', None, '38.88360', '-95.53940'), ('ROSSVILLE', 1014, '39.13610', '-95.95140'), ('SILVER LAKE', 1358, '39.10420', '-95.85830'), ('TOPEKA', 122377, '39.04830', '-95.67780'), ('WILLARD', 86, '39.09330', '-95.94170')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'KSZ038': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALMA', 797, '39.01670', '-96.28890'), ('ALTA VISTA', 442, '38.86390', '-96.48890'), ('ESKRIDGE', 589, '38.85890', '-96.10890'), ('HARVEYVILLE', 267, '38.79000', '-95.96140'), ('MAPLE HILL', 469, '39.08470', '-96.02780'), ('MCFARLAND', 271, '39.05280', '-96.23750'), ('PAXICO', 211, '39.06940', '-96.16610'), ('VOLLAND', None, '38.94440', '-96.40420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'NEZ070': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('HAMLET', 54, '40.38440', '-101.23490'), ('HAYES CENTER', 240, '40.51120', '-101.02000'), ('PALISADE', 386, '40.34840', '-101.10670')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'KSZ033': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ASH GROVE', None, '39.17000', '-98.35000'), ('BARNARD', 123, '39.18950', '-98.04400'), ('BEVERLY', 199, '39.01380', '-97.97570'), ('LINCOLN', None, '39.04270', '-98.14820'), ('SYLVAN GROVE', 324, '39.01280', '-98.39350'), ('WESTFALL', None, '38.93000', '-98.00000')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'KSZ032': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BUNKER HILL', 101, '38.87260', '-98.70080'), ('DORRANCE', 205, '38.84630', '-98.59020'), ('GORHAM', 360, '38.88070', '-99.02360'), ('LUCAS', 436, '39.05750', '-98.53850'), ('LURAY', 203, '39.11500', '-98.69240'), ('MILBERGER', None, '38.72000', '-98.92000'), ('PARADISE', 64, '39.11460', '-98.91760'), ('RUSSELL', 4696, '38.88790', '-98.85350'), ('RUSSELL ARPT', None, '38.86670', '-98.81670'), ('WALDO', 48, '39.12020', '-98.79750')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'KSZ031': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANTONINO', None, '38.78000', '-99.38000'), ('CATHERINE', None, '38.93330', '-99.21670'), ('ELLIS', 1873, '38.93620', '-99.55890'), ('EMMERAM', None, '38.97000', '-99.14000'), ('HAYS', 20013, '38.87820', '-99.31880'), ('MUNJOR', None, '38.81000', '-99.27000'), ('PHEIFER', None, '38.70000', '-99.16670'), ('SCHOENCHEN', 214, '38.71320', '-99.33040'), ('TOULON', None, '38.84000', '-99.25000'), ('VICTORIA', 1208, '38.85360', '-99.14710'), ('WALKER', None, '38.86000', '-99.06000'), ('YOCEMENTO', None, '38.90000', '-99.42000')], 'partOfState': 'CENTRAL', 'wfo': 'DDC'}, -'NEZ071': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CURTIS', 832, '40.63450', '-100.51420'), ('EUSTIS', 464, '40.66430', '-100.02860'), ('MAYWOOD', 331, '40.65810', '-100.62230'), ('MOOREFIELD', 52, '40.68970', '-100.39990'), ('STOCKVILLE', 36, '40.53320', '-100.38410')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'KSZ037': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURDICK', None, '38.56360', '-96.84530'), ('COUNCIL GROVE', 2321, '38.66110', '-96.49170'), ('DUNLAP', 81, '38.57640', '-96.36560'), ('DWIGHT', 330, '38.84440', '-96.59310'), ('LATIMER', 21, '38.73890', '-96.84530'), ('PARKERVILLE', 73, '38.76390', '-96.66110'), ('WHITE CITY', 518, '38.79560', '-96.73560'), ('WILSEY', 191, '38.63610', '-96.67500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'KSZ036': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('JUNCTION CITY', 18886, '39.02860', '-96.83110'), ('MILFORD', 502, '39.16830', '-96.91220'), ('MILFORD LAKE', None, '39.16000', '-96.92000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'KSZ035': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('SOLOMON', 1072, '38.91970', '-97.37140'), ('ABILENE', 6543, '38.91720', '-97.21360'), ('CARLTON', 38, '38.68720', '-97.29310'), ('CHAPMAN', 1241, '38.97220', '-97.02220'), ('ENTERPRISE', 836, '38.90280', '-97.11670'), ('HERINGTON', 2563, '38.67110', '-96.94220'), ('HOPE', 372, '38.69030', '-97.07640'), ('MANCHESTER', 102, '39.09470', '-97.32450'), ('MOONLIGHT', None, '39.00280', '-97.10220'), ('SOLOMON', 1072, '38.91950', '-97.36080'), ('TALMAGE', None, '39.02500', '-97.26030'), ('WOODBINE', 207, '38.79610', '-96.95830')], 'partOfState': 'CENTRAL', 'wfo': 'TOP'}, -'KSZ034': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ADA', None, '39.15140', '-97.88890'), ('BENNINGTON', 623, '39.03060', '-97.59390'), ('CULVER', 164, '38.97080', '-97.75860'), ('DELPHOS', 469, '39.27390', '-97.77170'), ('MINNEAPOLIS', 2046, '39.12190', '-97.70640'), ('TESCOTT', 339, '39.00810', '-97.87530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'OKZ028': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BLANCHARD', 2816, '35.14520', '-97.65860'), ('BYARS', 280, '34.87180', '-97.05360'), ('COLE', 473, '35.10280', '-97.57250'), ('CRINER', None, '34.97000', '-97.57000'), ('DIBBLE', 289, '35.03400', '-97.62800'), ('GOLDSBY', 1204, '35.12800', '-97.47140'), ('NEWCASTLE', 5434, '35.24770', '-97.59940'), ('PAYNE', None, '34.90000', '-97.53000'), ('PURCELL', 5571, '35.01450', '-97.37150'), ('ROSEDALE', 66, '34.91870', '-97.18460'), ('WASHINGTON', 520, '35.05830', '-97.48350'), ('WAYNE', 714, '34.91720', '-97.31580')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'ARZ048': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CALDWELL', 465, '35.07930', '-90.81510'), ('COLT', 368, '35.13250', '-90.81230'), ('FORREST CITY', 14774, '35.01440', '-90.78530'), ('HUGHES', 1867, '34.94850', '-90.47130'), ('MADISON', 987, '35.01940', '-90.73050'), ('NEW HOME', None, '35.03330', '-90.56670'), ('PALESTINE', 741, '34.97030', '-90.90500'), ('WHEATLEY', 372, '34.91880', '-91.10730'), ('WIDENER', 335, '35.02200', '-90.68240')], 'partOfState': '', 'wfo': 'MEG'}, -'AKZ101': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANCHORAGE', 260283, '61.17840', '-149.18640')], 'partOfState': '', 'wfo': 'AFC'}, -'ILZ008': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADELINE', 139, '42.14080', '-89.49050'), ('BYRON', 2917, '42.12840', '-89.25830'), ('CRESTON', 543, '41.93080', '-88.96550'), ('DAVIS JUNCTION', 491, '42.10190', '-89.09200'), ('FORRESTON', 1469, '42.12610', '-89.57870'), ('HILLCREST', 1158, '41.95250', '-89.07040'), ('LEAF RIVER', 555, '42.12320', '-89.40290'), ('MOUNT MORRIS', 3013, '42.04890', '-89.43200'), ('OREGON', 4060, '42.01310', '-89.33540'), ('POLO', 2477, '41.98470', '-89.57830'), ('ROCHELLE', 9424, '41.91840', '-89.06270'), ('STILLMAN VALLEY', 1048, '42.10400', '-89.17810')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'MSZ076': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('AVENT STATION', None, '31.00640', '-88.77560'), ('AVERA', None, '31.29770', '-88.74000'), ('BOTHWELL', None, '31.32780', '-88.74830'), ('JONATHAN', None, '31.22400', '-88.63830'), ('LEAF', None, '31.02720', '-88.79410'), ('LEAKESVILLE', 1026, '31.15400', '-88.55830'), ('MCLAIN', 603, '31.10860', '-88.82750'), ('NEELY', None, '31.16530', '-88.75500'), ('PIAVE', None, '31.39390', '-88.74560'), ('PISGAH', None, '31.10530', '-88.48760'), ('ROUNSAVILLE', None, '31.16970', '-88.45830'), ('ROYCE', None, '31.06310', '-88.80620'), ('SAND HILL', None, '31.34560', '-88.76390'), ('VERNAL', None, '31.03920', '-88.61000')], 'partOfState': 'SOUTHEAST', 'wfo': 'MOB'}, -'ARZ041': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLACK SPRINGS', 114, '34.46150', '-93.71350'), ('MOUNT IDA', 981, '34.55180', '-93.63110'), ('NORMAN', 423, '34.45670', '-93.67780'), ('ODEN', 220, '34.62020', '-93.78520')], 'partOfState': '', 'wfo': 'LZK'}, -'OKZ021': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CARTER', 254, '35.21720', '-99.50340'), ('ELK CITY', 10510, '35.40290', '-99.41130'), ('ERICK', 1023, '35.21350', '-99.86690'), ('MAYFIELD', None, '35.33000', '-99.88000'), ('RETROP', None, '35.17000', '-99.37000'), ('SAYRE', 4114, '35.29730', '-99.63480'), ('SWEETWATER', None, '35.42000', '-99.92000'), ('TEXOLA', 47, '35.21860', '-99.98940')], 'partOfState': '', 'wfo': 'OUN'}, -'OKZ022': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BESSIE', 190, '35.38490', '-98.98830'), ('BURNS FLAT', 1782, '35.35510', '-99.17510'), ('CANUTE', 524, '35.42510', '-99.27670'), ('CLOUD CHIEF', None, '35.25000', '-98.85000'), ('COLONY', 147, '35.34770', '-98.67010'), ('CORDELL', None, '35.30000', '-98.98000'), ('CORN', 591, '35.37890', '-98.78130'), ('COWDEN', None, '35.25000', '-98.72000'), ('DILL CITY', 526, '35.28250', '-99.13380'), ('FOSS', 127, '35.45060', '-99.17160'), ('LAKE VALLEY', None, '35.17000', '-98.87000'), ('ROCKY', 174, '35.15640', '-99.05850'), ('SENTINEL', 859, '35.15660', '-99.17350')], 'partOfState': '', 'wfo': 'OUN'}, -'MSZ071': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DEXTER', None, '31.07420', '-89.99280'), ('SALEM', None, '31.22970', '-90.11720'), ('TYLERTOWN', 1910, '31.11690', '-90.14250')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'ARZ042': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('HOT SPRINGS', 35750, '34.49370', '-93.05200'), ('HOT SPRINGS VILLAGE', 8397, '34.66520', '-93.00010'), ('LAKE HAMILTON', 1609, '34.42600', '-93.08930'), ('LONSDALE', 118, '34.54470', '-92.81110'), ('MOUNTAIN PINE', 772, '34.57140', '-93.17400'), ('PINEY', 3988, '34.50340', '-93.14260'), ('ROCKWELL', 3024, '34.46430', '-93.13360')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARZ045': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALLPORT', 127, '34.53950', '-91.78480'), ('AUSTIN', 605, '34.99800', '-91.98180'), ('CABOT', 15261, '34.96820', '-92.02200'), ('CARLISLE', 2304, '34.78610', '-91.74650'), ('COY', 116, '34.54180', '-91.86960'), ('ENGLAND', 2972, '34.54490', '-91.96790'), ('HUMNOKE', 280, '34.54210', '-91.75880'), ('KEO', 235, '34.61310', '-92.01110'), ('LONOKE', 4287, '34.78600', '-91.89960'), ('WARD', 2580, '35.01890', '-91.95500')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARZ044': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CAMMACK VILLAGE', 831, '34.77990', '-92.34680'), ('GIBSON', 4678, '34.89540', '-92.22710'), ('GRAVEL RIDGE', 3232, '34.87140', '-92.18770'), ('JACKSONVILLE', 29916, '34.86980', '-92.12800'), ('LITTLE ROCK', 183133, '34.72240', '-92.35410'), ('MAUMELLE', 10557, '34.85250', '-92.41050'), ('NORTH LITTLE ROCK', 60433, '34.78840', '-92.25540'), ('PARKERS-IRON SPRINGS', 3499, '34.60520', '-92.32220'), ('SHERWOOD', 21511, '34.83200', '-92.20750'), ('WRIGHTSVILLE', 1368, '34.61400', '-92.21990')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'TXZ152': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('APPLEBY', 444, '31.71780', '-94.60750'), ('CHIRENO', 405, '31.49880', '-94.34540'), ('CUSHING', 637, '31.81330', '-94.84010'), ('GARRISON', 844, '31.82420', '-94.49250'), ('NACOGDOCHES', 29914, '31.61500', '-94.65190')], 'partOfState': '', 'wfo': 'SHV'}, -'TXZ153': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CENTER', 5678, '31.79350', '-94.17830'), ('HUXLEY', 298, '31.76220', '-93.88740'), ('JOAQUIN', 925, '31.96680', '-94.05050'), ('TENAHA', 1046, '31.94370', '-94.24460'), ('TIMPSON', 1094, '31.90620', '-94.39640')], 'partOfState': '', 'wfo': 'SHV'}, -'TXZ150': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HENDERSON', 11273, '32.15700', '-94.79720'), ('MOUNT ENTERPRISE', 525, '31.91010', '-94.68190'), ('NEW LONDON', 987, '32.26920', '-94.93130'), ('OVERTON', 2350, '32.27560', '-94.97230'), ('REKLAW', 327, '31.86460', '-94.98410'), ('TATUM', 1175, '32.31470', '-94.51870')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ151': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BECKVILLE', 752, '32.24280', '-94.45590'), ('CARTHAGE', 6664, '32.15180', '-94.33690'), ('GARY CITY', 303, '32.02790', '-94.36830')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ156': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('LAMPASAS', 6786, '31.06340', '-98.18090'), ('LOMETA', 782, '31.21610', '-98.39280')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'ARZ047': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BRINKLEY', 3940, '34.88430', '-91.18900'), ('CLARENDON', 1960, '34.69550', '-91.30580'), ('FARGO', 118, '34.95500', '-91.17710'), ('HOLLY GROVE', 722, '34.59620', '-91.20070'), ('ROE', 124, '34.63090', '-91.38570')], 'partOfState': '', 'wfo': 'LZK'}, -'TXZ154': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRADY', 5523, '31.13500', '-99.33470'), ('DOOLE', None, '31.39560', '-99.59860'), ('FIFE', None, '31.39030', '-99.38420'), ('LOHN', None, '31.32360', '-99.40970'), ('MELVIN', 155, '31.19830', '-99.58090'), ('MERCURY', None, '31.41220', '-99.15720'), ('MILBURN', None, '31.43750', '-99.10940'), ('PEAR VALLEY', None, '31.31000', '-99.49360'), ('PLACID', None, '31.32530', '-99.18420'), ('ROCHELLE', None, '31.22440', '-99.21080'), ('SALT GAP', None, '31.30360', '-99.59890'), ('STACY', None, '31.47690', '-99.59750'), ('VOCA', None, '31.01080', '-99.18420'), ('WALDRIP', None, '31.44250', '-99.42280')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXZ155': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALGERITA', None, '31.22780', '-98.85280'), ('CHAPPEL', None, '31.05560', '-98.57060'), ('CHEROKEE', None, '30.98220', '-98.70720'), ('ELM GROVE', None, '31.42750', '-99.05560'), ('HALL', None, '31.28500', '-99.05140'), ('HARKEYVILLE', None, '31.21060', '-98.78530'), ('LOCKER', None, '31.37720', '-98.89670'), ('RICHLAND SPRINGS', 350, '31.26940', '-98.94470'), ('SAN SABA', 2637, '31.19560', '-98.71780'), ('SKEETERVILLE', None, '31.35390', '-98.96250'), ('SPRING CREEK', None, '31.35310', '-98.82170')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'WYZ070': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALBIN', 120, '41.41710', '-104.09970'), ('BURNS', 285, '41.19010', '-104.35870'), ('CARPENTER', None, '41.03000', '-104.34000'), ('GUN BARREL', None, '41.44000', '-104.35000'), ('PINE BLUFFS', 1153, '41.18040', '-104.06820')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'TXZ158': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELTON', 14623, '31.06810', '-97.46370'), ('FORT HOOD', 33711, '31.13380', '-97.77410'), ('HARKER HEIGHTS', 17308, '31.06120', '-97.65410'), ('HOLLAND', 1102, '30.88380', '-97.40350'), ('KILLEEN', 86911, '31.09830', '-97.71720'), ('LITTLE RIVER-ACADEMY', 1645, '30.99130', '-97.35190'), ("MORGAN'S POINT RESORT", 2989, '31.15560', '-97.45420'), ('NOLANVILLE', 2150, '31.07820', '-97.61010'), ('ROGERS', 1117, '30.93220', '-97.22850'), ('SALADO', 3475, '30.95080', '-97.52470'), ('TEMPLE', 54514, '31.09770', '-97.36350'), ('TROY', 1378, '31.19560', '-97.30680')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'ARZ046': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('DE VALLS BLUFF', 783, '34.78570', '-91.46080'), ('DES ARC', 1933, '34.97570', '-91.50520'), ('FREDONIA (BISCOE)', 476, '34.81860', '-91.40910'), ('HAZEN', 1637, '34.78930', '-91.57370'), ('ULM', 205, '34.57600', '-91.46130')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'GAZ149': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AXSON', None, '31.27440', '-82.73660'), ('PEARSON', 1805, '31.29720', '-82.85320'), ('WILLACOOCHEE', 1434, '31.34020', '-83.04620')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'RIZ005': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('BARRINGTON', 16819, '41.73520', '-71.31860'), ('BRISTOL', 22469, '41.67780', '-71.27430'), ('WARREN', None, '41.71667', '-71.26667')], 'partOfState': '', 'wfo': 'BOX'}, -'SDZ023': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALTAMONT', 34, '44.84040', '-96.69010'), ('ALTAMONT', 34, '44.84040', '-96.69010'), ('ASTORIA', 150, '44.55770', '-96.54600'), ('ASTORIA', 150, '44.55770', '-96.54600'), ('BRANDT', 113, '44.66550', '-96.62500'), ('BRANDT', 113, '44.66550', '-96.62500'), ('CLEAR LAKE', 1335, '44.76600', '-96.68130'), ('CLEAR LAKE', 1335, '44.76600', '-96.68130'), ('GARY', 231, '44.79520', '-96.45800'), ('GARY', 231, '44.79520', '-96.45800'), ('GOODWIN', 160, '44.87720', '-96.84850'), ('GOODWIN', 160, '44.87720', '-96.84850'), ('LAKE COCHRANE REC AREA', None, '44.71130', '-96.46210'), ('LAKE COCHRANE REC AREA', None, '44.71130', '-96.46210'), ('MORITZ', None, '44.83400', '-96.56100'), ('MORITZ', None, '44.83400', '-96.56100'), ('TORONTO', 202, '44.57240', '-96.64160'), ('TORONTO', 202, '44.57240', '-96.64160')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ022': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BRYANT', 396, '44.58990', '-97.46740'), ('BRYANT', 396, '44.58990', '-97.46740'), ('CASTLEWOOD', 666, '44.72430', '-97.03070'), ('CASTLEWOOD', 666, '44.72430', '-97.03070'), ('ESTELLINE', 675, '44.57620', '-96.90010'), ('ESTELLINE', 675, '44.57620', '-96.90010'), ('HAYTI', 367, '44.65660', '-97.20400'), ('HAYTI', 367, '44.65660', '-97.20400'), ('HAZEL', 105, '44.75800', '-97.38010'), ('HAZEL', 105, '44.75800', '-97.38010'), ('LAKE NORDEN', 432, '44.57910', '-97.20800'), ('LAKE NORDEN', 432, '44.57910', '-97.20800'), ('STONE BRIDGE', None, '44.60280', '-97.05570'), ('STONE BRIDGE', None, '44.60280', '-97.05570'), ('THOMAS', None, '44.76080', '-97.20950'), ('THOMAS', None, '44.76080', '-97.20950')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ021': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALBEE', 10, '45.05130', '-96.55430'), ('ALBEE', 10, '45.05130', '-96.55430'), ('BIG STONE CITY', 605, '45.29520', '-96.46440'), ('BIG STONE CITY', 605, '45.29520', '-96.46440'), ('LA BOLT', 86, '45.05000', '-96.67420'), ('LA BOLT', 86, '45.05000', '-96.67420'), ('MARVIN', 66, '45.26090', '-96.91250'), ('MARVIN', 66, '45.26090', '-96.91250'), ('MILBANK', 3640, '45.21960', '-96.63480'), ('MILBANK', 3640, '45.21960', '-96.63480'), ('REVILLO', 147, '45.01460', '-96.57030'), ('REVILLO', 147, '45.01460', '-96.57030'), ('STOCKHOLM', 105, '45.10250', '-96.79840'), ('STOCKHOLM', 105, '45.10250', '-96.79840'), ('STRANDBURG', 69, '45.04330', '-96.76100'), ('STRANDBURG', 69, '45.04330', '-96.76100'), ('TROY', None, '45.03490', '-96.86720'), ('TROY', None, '45.03490', '-96.86720'), ('TWIN BROOKS', 55, '45.20770', '-96.78690'), ('TWIN BROOKS', 55, '45.20770', '-96.78690')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ020': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FLORENCE', 299, '45.05560', '-97.32590'), ('FLORENCE', 299, '45.05560', '-97.32590'), ('HENRY', 268, '44.88100', '-97.46260'), ('HENRY', 268, '44.88100', '-97.46260'), ('KRANZBURG', 185, '44.88650', '-96.90980'), ('KRANZBURG', 185, '44.88650', '-96.90980'), ('RAUVILLE', None, '44.97520', '-97.07630'), ('RAUVILLE', None, '44.97520', '-97.07630'), ('SANDY SHORE STATE PARK', None, '44.89410', '-97.24220'), ('SANDY SHORE STATE PARK', None, '44.89410', '-97.24220'), ('SOUTH SHORE', 270, '45.10170', '-96.93000'), ('SOUTH SHORE', 270, '45.10170', '-96.93000'), ('WALLACE', 86, '45.08510', '-97.47730'), ('WALLACE', 86, '45.08510', '-97.47730'), ('WATERTOWN', 20237, '44.91260', '-97.16660'), ('WATERTOWN', 20237, '44.91260', '-97.16660'), ('WAVERLY', None, '44.99920', '-96.97140'), ('WAVERLY', None, '44.99920', '-96.97140')], 'partOfState': 'NORTHEAST', 'wfo': 'ABR'}, -'SDZ027': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ANGOSTURA RESERVOIR', None, '43.31670', '-103.43330'), ('BURDOCK', None, '43.45610', '-103.99280'), ('COLD BROOK RESERVOIR', None, '43.46130', '-103.49160'), ('COTTONWOOD SPRINGS DAM', None, '43.43470', '-103.56240'), ('EDGEMONT', 867, '43.29850', '-103.82710'), ('HOT SPRINGS', 4129, '43.43300', '-103.48030'), ('MAVERICK JUNCTION', None, '43.40060', '-103.39590'), ('MINNEKAHTA', None, '43.43370', '-103.68470')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDZ026': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('RAPID CITY', 59607, '44.07520', '-103.23280'), ('RAPID VALLEY', 7043, '44.07250', '-103.12960')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDZ025': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CROW PEAK', None, '44.47610', '-103.96750'), ('SPEARFISH', 8606, '44.50000', '-103.85000'), ('ST. ONGE', None, '44.54840', '-103.72140'), ('WHITEWOOD', 844, '44.45930', '-103.63740')], 'partOfState': 'NORTHWEST', 'wfo': 'UNR'}, -'SDZ024': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BROWNSVILLE', None, '44.27430', '-103.69410'), ('CENTRAL CITY', 149, '44.36920', '-103.76920'), ('CHEYENNE CROSSING', None, '44.29840', '-103.86490'), ('DEADWOOD', 1380, '44.38200', '-103.72330'), ('DUMONT', None, '44.23640', '-103.79720'), ('GALENA', None, '44.33330', '-103.65000'), ('LEAD', 3027, '44.35210', '-103.76690'), ('NEMO', None, '44.19190', '-103.50430'), ("O'NEIL PASS", None, '44.20370', '-104.00360'), ('PLUMA', None, '44.35000', '-103.73330'), ('ROUBAIX LAKE', None, '44.20000', '-103.66670'), ('SAVOY', None, '44.35480', '-103.92740'), ('TERRY PEAK', None, '44.33230', '-103.83410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDZ029': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARGYLE', None, '43.53330', '-103.65000'), ('BLUE BELL', None, '43.71630', '-103.48190'), ('CENTER LAKE', None, '43.80340', '-103.43040'), ('CRAZY HORSE', None, '43.81670', '-103.63330'), ('CUSTER', 1860, '43.76650', '-103.60070'), ('CUSTER PARK HEADQUARTERS', None, '43.76830', '-103.38680'), ('DEWEY', None, '43.52920', '-104.03280'), ('JEWEL CAVE', None, '43.73330', '-103.83330'), ('PRINGLE', 125, '43.60900', '-103.58910'), ('SANATOR', None, '43.69490', '-103.60320'), ('STOCKADE LAKE', None, '43.76670', '-103.51670'), ('SYLVAN LAKE', None, '43.85000', '-103.56670'), ('WIND CAVE PARK HEADQUARTE', None, '43.55640', '-103.47410')], 'partOfState': 'SOUTHWEST', 'wfo': 'UNR'}, -'SDZ028': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('DEERFIELD', None, '44.02370', '-103.83710'), ('DEERFIELD RESERVOIR', None, '44.01670', '-103.80000'), ('HARNEY PEAK', None, '43.86770', '-103.54160'), ('HAYWARD', None, '43.86970', '-103.33210'), ('HILL CITY', 780, '43.93210', '-103.57140'), ('HISEGA', None, '44.05370', '-103.40230'), ('KEYSTONE', 311, '43.88850', '-103.42530'), ('MOON', None, '43.94780', '-104.00640'), ('MT. RUSHMORE', None, '43.88120', '-103.45320'), ('MYSTIC', None, '44.06670', '-103.65000'), ('PACTOLA RESERVOIR', None, '44.06670', '-103.50000'), ('ROCHFORD', None, '44.12660', '-103.74960'), ('ROCKERVILLE', None, '43.95900', '-103.35930'), ('SHERIDAN LAKE', None, '43.97030', '-103.46570'), ('SILVER CITY', None, '44.08770', '-103.56550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'IAZ018': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CARRVILLE', None, '43.01493', '-92.60211'), ('CHARLES CITY', 7812, '43.06730', '-92.67500'), ('COLWELL', 76, '43.15810', '-92.59150'), ('FLOYD', 361, '43.12840', '-92.73940'), ('FLOYD CROSSING', None, '43.07890', '-92.75197'), ('MARBLE ROCK', 326, '42.96470', '-92.86760'), ('NORA SPRINGS', 1532, '43.14400', '-93.00870'), ('OAKWOOD', None, '43.01493', '-92.78121'), ('POWERSVILLE', None, '42.93087', '-92.70080'), ('ROCKFORD', 907, '43.05280', '-92.94750'), ('ROSEVILLE', None, '43.01676', '-92.81045'), ('RUDD', 431, '43.12680', '-92.90480')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ARX'}, -'KSZ073': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BRONSON', 346, '37.89590', '-95.07250'), ('DEVON', None, '37.92210', '-94.81880'), ('FORT SCOTT', 8297, '37.83960', '-94.70800'), ('FULTON', 184, '38.01000', '-94.71930'), ('GARLAND', None, '37.73160', '-94.62210'), ('HAMMOND', None, '37.93550', '-94.69490'), ('HARDING', None, '37.99380', '-94.81930'), ('HIATTVILLE', None, '37.72210', '-94.87130'), ('MAPLETON', 98, '38.01500', '-94.88330'), ('MARMATON', None, '37.83180', '-94.82430'), ('PAWNEE STATION', None, '37.70000', '-94.79100'), ('PETERSBURG', None, '37.77570', '-94.97910'), ('PORTERVILLE', None, '37.71790', '-95.06850'), ('REDFIELD', 140, '37.83660', '-94.88070'), ('UNIONTOWN', 288, '37.84710', '-94.97490'), ('XENIA', None, '37.99520', '-94.98600')], 'partOfState': 'SOUTHEAST', 'wfo': 'SGF'}, -'PAZ070': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALDAN', 4313, '39.92290', '-75.28880'), ('BOOTHWYN', 5206, '39.83550', '-75.44520'), ('BROOKHAVEN', 7985, '39.87060', '-75.39130'), ('BROOMALL', 11046, '39.96990', '-75.35300'), ('CHESTER', 36854, '39.84540', '-75.37220'), ('CHESTER HEIGHTS', 2481, '39.89440', '-75.46770'), ('CHESTER TOWNSHIP', 4604, '39.85000', '-75.39740'), ('CLIFTON HEIGHTS', 6779, '39.92900', '-75.29610'), ('COLLINGDALE', 8664, '39.91450', '-75.27740'), ('DARBY', 10299, '39.92050', '-75.26100'), ('DARBY TOWNSHIP', 9622, '39.89970', '-75.27320'), ('DREXEL HILL', 29364, '39.94920', '-75.30380'), ('EAST LANSDOWNE', 2586, '39.94380', '-75.26170'), ('EDDYSTONE', 2442, '39.85610', '-75.33280'), ('FOLCROFT', 6978, '39.88860', '-75.27660'), ('FOLSOM', 8072, '39.89140', '-75.32910'), ('GLENOLDEN', 7476, '39.89870', '-75.29280'), ('LANSDOWNE', 11044, '39.94050', '-75.27530'), ('LIMA', 3225, '39.91670', '-75.44230'), ('LINWOOD', 3374, '39.82340', '-75.42450'), ('MARCUS HOOK', 2314, '39.81280', '-75.41640'), ('MEDIA', 5533, '39.91950', '-75.38880'), ('MORTON', 2715, '39.91090', '-75.32700'), ('NETHER PROVIDENCE TOWNSHI', None, '39.89790', '-75.36820'), ('NORWOOD', 5985, '39.88590', '-75.29600'), ('PARKSIDE', 2267, '39.86650', '-75.37870'), ('PROSPECT PARK', 6594, '39.88560', '-75.30750'), ('RADNOR TOWNSHIP', 30878, '40.02830', '-75.36830'), ('RIDLEY PARK', 7196, '39.87770', '-75.32560'), ('ROSE VALLEY', 944, '39.89480', '-75.38610'), ('RUTLEDGE', 860, '39.90070', '-75.32780'), ('SHARON HILL', 5468, '39.90780', '-75.26920'), ('SPRINGFIELD', 23677, '39.92770', '-75.33760'), ('SWARTHMORE', 6170, '39.90210', '-75.34830'), ('TINICUM TOWNSHIP', 4353, '39.86500', '-75.27520'), ('TRAINER', 1901, '39.82360', '-75.40500'), ('UPLAND', 2977, '39.85670', '-75.37980'), ('UPPER PROVIDENCE TOWNSHIP', 10509, '39.93770', '-75.39650'), ('VILLAGE GREEN-GREEN RIDGE', 8279, '39.86390', '-75.42490'), ('WOODLYN', 10036, '39.87740', '-75.34410'), ('YEADON', 11762, '39.93270', '-75.25190')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'PAZ071': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('COLWYN', 2453, '39.91150', '-75.25330'), ('MILLBOURNE', 943, '39.96310', '-75.25280'), ('PENN WYNNE', 5382, '39.98620', '-75.27270'), ('PHILADELPHIA', 1517550, '40.00680', '-75.13470')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'PAZ072': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ANGELS', None, '41.28330', '-75.36670'), ('ARLINGTON', None, '41.41670', '-75.33330'), ('BEACH LAKE', None, '41.60000', '-75.15000'), ('BEECH GROVE', None, '41.60000', '-75.30000'), ('BETHANY', 292, '41.61420', '-75.28890'), ('GOULDSBORO', None, '41.25000', '-75.46670'), ('HAWLEY', 1303, '41.47660', '-75.17800'), ('HEADLEY', None, '41.51670', '-75.28330'), ('HONESDALE', 4874, '41.57720', '-75.25360'), ('LA ANNA', None, '41.25000', '-75.35000'), ('LAKE ARIEL', None, '41.45000', '-75.38330'), ('LAKEVILLE', None, '41.43330', '-75.28330'), ('LAURELLA', None, '41.58330', '-75.21670'), ('NEWFOUNDLAND', None, '41.30000', '-75.33330'), ('PROMPTON', 243, '41.58980', '-75.32950'), ('SEELYVILLE', None, '41.56670', '-75.26670'), ('SOUTH CANAAN', None, '41.50000', '-75.41670'), ('STERLING', None, '41.33330', '-75.40000'), ('TRESSLARVILLE', None, '41.45000', '-75.40000'), ('WAYMART', 1429, '41.58720', '-75.40930')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'WVZ034': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('MULLENS', 1769, '37.57970', '-81.38520'), ('OCEANA', 1550, '37.69180', '-81.63270'), ('PINEVILLE', 715, '37.58560', '-81.53500'), ('TWIN FALLS STATE PARK', None, '37.63300', '-81.43730')], 'partOfState': '', 'wfo': 'RLX'}, -'NEZ009': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BASSETT', 743, '42.58260', '-99.53570'), ('NEWPORT', 98, '42.60080', '-99.32760'), ('ROSE', None, '42.17000', '-99.52850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'KSZ072': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BASSETT', 22, '37.90670', '-95.40720'), ('ELSMORE', 73, '37.79420', '-95.14920'), ('GAS', 556, '37.92270', '-95.34470'), ('HUMBOLDT', 1999, '37.81160', '-95.43720'), ('IOLA', 6302, '37.92820', '-95.40100'), ('LA HARPE', 706, '37.91650', '-95.30190'), ('MILDRED', 36, '38.02480', '-95.17380'), ('MORAN', 562, '37.91610', '-95.17050'), ('PETROLIA', None, '37.75000', '-95.47000'), ('SAVONBURG', 91, '37.74910', '-95.14170')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'TXZ043': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLAIREMONT', None, '33.16630', '-100.75220'), ('GIRARD', 62, '33.36220', '-100.66250'), ('JAYTON', 513, '33.25010', '-100.57440')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'NEZ083': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALMA', 1214, '40.10170', '-99.36220'), ('HARLAN COUNTY DAM', None, '40.07000', '-99.21000'), ('HUNTLEY', 67, '40.21080', '-99.29100'), ('ORLEANS', 425, '40.13160', '-99.45410'), ('RAGAN', 46, '40.31060', '-99.29010'), ('REPUBLICAN CITY', 209, '40.10030', '-99.22240'), ('STAMFORD', 202, '40.13070', '-99.59470')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ082': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARAPAHOE', 1028, '40.30500', '-99.89810'), ('BEAVER CITY', 641, '40.13770', '-99.82730'), ('CAMBRIDGE', 1041, '40.28340', '-100.17050'), ('EDISON', 154, '40.27760', '-99.77570'), ('HENDLEY', 38, '40.13090', '-99.97040'), ('HOLBROOK', 225, '40.30390', '-100.01040'), ('HOLLINGER', None, '40.15600', '-99.73890'), ('OXFORD', 876, '40.25310', '-99.63250'), ('WILSONVILLE', 118, '40.11150', '-100.10590')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ081': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BARTLEY', 355, '40.25250', '-100.30930'), ('DANBURY', 127, '40.03780', '-100.40440'), ('INDIANOLA', 642, '40.23490', '-100.41890'), ('LEBANON', 70, '40.04920', '-100.27590'), ('MCCOOK', 7994, '40.20410', '-100.62030')], 'partOfState': 'SOUTHWEST', 'wfo': 'GLD'}, -'NEZ080': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CULBERTSON', 594, '40.22850', '-100.83560'), ('STRATTON NE', None, '40.15170', '-101.22770'), ('TRENTON', 507, '40.17430', '-101.01330')], 'partOfState': 'SOUTHWEST', 'wfo': 'GLD'}, -'NEZ087': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALEXANDRIA', 216, '40.24740', '-97.38680'), ('BELVIDERE', 98, '40.25440', '-97.55690'), ('BRUNING', 300, '40.33570', '-97.56460'), ('BYRON', 144, '40.00520', '-97.76810'), ('CARLETON', 136, '40.30170', '-97.67350'), ('CHESTER', 294, '40.00960', '-97.61770'), ('DAVENPORT', 339, '40.31160', '-97.81010'), ('DESHLER', 879, '40.13900', '-97.72320'), ('GILEAD', 40, '40.14650', '-97.41500'), ('HEBRON', 1565, '40.16840', '-97.58770'), ('HUBBELL', 73, '40.00760', '-97.49670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ086': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BOSTWICK', None, '40.04000', '-98.18500'), ('HARDY', 179, '40.01160', '-97.92330'), ('LAWRENCE', 312, '40.29020', '-98.25900'), ('NELSON', 587, '40.20090', '-98.06900'), ('NORA', 20, '40.16380', '-97.97360'), ('OAK', 60, '40.23730', '-97.90400'), ('RUSKIN', 195, '40.14430', '-97.86650'), ('SUPERIOR', 2055, '40.02240', '-98.06770')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ085': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BLADEN', 291, '40.32360', '-98.59510'), ('BLUE HILL', 867, '40.33300', '-98.44760'), ('COWLES', 48, '40.17100', '-98.44800'), ('GUIDE ROCK', 245, '40.07300', '-98.32920'), ('INAVALE', None, '40.09580', '-98.63860'), ('RED CLOUD', 1131, '40.08610', '-98.52230'), ('ROSEMONT', None, '40.28690', '-98.36390')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ084': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BLOOMINGTON', 124, '40.09360', '-99.03780'), ('CAMPBELL', 387, '40.29680', '-98.73090'), ('FRANKLIN', 1026, '40.09660', '-98.95100'), ('HILDRETH', 370, '40.33750', '-99.04600'), ('NAPONEE', 132, '40.07400', '-99.13810'), ('RIVERTON', 145, '40.08890', '-98.75920'), ('UPLAND', 179, '40.31900', '-98.90160')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'OHZ009': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BAY VIEW', 692, '41.46890', '-82.82360'), ('BERLIN HEIGHTS', 685, '41.32090', '-82.49270'), ('CASTALIA', 935, '41.40130', '-82.80930'), ('FAIRVIEW LANES', 1015, '41.42710', '-82.65670'), ('HURON', 7958, '41.39650', '-82.56210'), ('MILAN', 1445, '41.28880', '-82.60110'), ('SANDUSKY', 27844, '41.45590', '-82.71440'), ('SANDUSKY SOUTH', 6599, '41.41600', '-82.68700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHZ008': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BALLVILLE', 3255, '41.32770', '-83.13730'), ('BELLEVUE', 8193, '41.27580', '-82.84220'), ('BURGOON', 199, '41.26730', '-83.25070'), ('CLYDE', 6064, '41.30510', '-82.97750'), ('FREMONT', 17375, '41.35030', '-83.11310'), ('GIBSONBURG', 2506, '41.38650', '-83.32280'), ('GREEN SPRINGS', 1247, '41.25710', '-83.05370'), ('HELENA', 236, '41.33980', '-83.29180'), ('LINDSEY', 504, '41.42060', '-83.22070'), ('STONY PRAIRIE', 836, '41.35130', '-83.15520'), ('WOODVILLE', 1977, '41.45130', '-83.36300')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'NEZ089': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ADAMS', 489, '40.45620', '-96.51120'), ('BARNESTON', 122, '40.04870', '-96.57670'), ('BEATRICE', 12496, '40.26980', '-96.74560'), ('BLUE SPRINGS', 383, '40.13700', '-96.66260'), ('CLATONIA', 275, '40.46490', '-96.85120'), ('CORTLAND', 488, '40.50610', '-96.70560'), ('FILLEY', 174, '40.28540', '-96.53380'), ('LIBERTY', 86, '40.08500', '-96.48300'), ('ODELL', 345, '40.05030', '-96.80070'), ('PICKRELL', 182, '40.37780', '-96.72850'), ('VIRGINIA', 67, '40.24520', '-96.49890'), ('WYMORE', 1656, '40.12280', '-96.66660')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ088': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('DAYKIN', 177, '40.32180', '-97.29740'), ('DILLER', 287, '40.10870', '-96.93750'), ('ENDICOTT', 139, '40.08090', '-97.09530'), ('FAIRBURY', 4262, '40.14090', '-97.17720'), ('HARBINE', 56, '40.19150', '-96.97350'), ('JANSEN', 143, '40.18570', '-97.08240'), ('PLYMOUTH', 477, '40.30340', '-96.98810'), ('REYNOLDS', 88, '40.06040', '-97.33590'), ('STEELE CITY', 84, '40.03650', '-97.02250')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'ILZ014': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALSIP', 19725, '41.67030', '-87.73580'), ('ARLINGTON HEIGHTS', 76031, '42.09490', '-87.98200'), ('BARRINGTON', 10168, '42.15180', '-88.12920'), ('BARRINGTON HILLS', 3915, '42.13370', '-88.21120'), ('BEDFORD PARK', 574, '41.76980', '-87.79800'), ('BELLWOOD', 20535, '41.88290', '-87.87630'), ('BERKELEY', 5245, '41.88840', '-87.91230'), ('BERWYN', 54016, '41.84240', '-87.79100'), ('BLUE ISLAND', 23463, '41.65840', '-87.68140'), ('BRIDGEPORT', 2168, '41.80000', '-87.67000'), ('BRIDGEVIEW', 15335, '41.73880', '-87.80590'), ('BROADVIEW', 8264, '41.85800', '-87.85590'), ('BROOKFIELD', 19085, '41.82430', '-87.84780'), ('BURBANK', 27902, '41.74410', '-87.76900'), ('BURNHAM', 4170, '41.63820', '-87.54120'), ('BURR RIDGE', 10408, '41.75090', '-87.92060'), ('CALUMET CITY', 39071, '41.61180', '-87.54950'), ('CALUMET PARK', 8516, '41.66410', '-87.65640'), ('CHATHAM', 8583, '41.73000', '-87.62000'), ('CHICAGO', 2896016, '41.88000', '-87.63000'), ('CHICAGO HEIGHTS', 32776, '41.50990', '-87.63760'), ('CHICAGO RIDGE', 14127, '41.70240', '-87.77860'), ('CICERO', 85616, '41.84430', '-87.75990'), ('COUNTRY CLUB HILLS', 16169, '41.56320', '-87.72530'), ('COUNTRYSIDE', 5991, '41.77660', '-87.87660'), ('CRESTWOOD', 11251, '41.64520', '-87.74030'), ('DES PLAINES', 58720, '42.03460', '-87.90090'), ('DIXMOOR', 3934, '41.63190', '-87.66800'), ('DOLTON', 25614, '41.62930', '-87.59870'), ('DOUGLAS PARK', None, '41.85000', '-87.68000'), ('EAST HAZEL CREST', 1607, '41.57630', '-87.64970'), ('ELK GROVE VILLAGE', 34727, '42.00570', '-87.99260'), ('ELMWOOD PARK', 25405, '41.92240', '-87.81650'), ('ENGLEWOOD', None, '41.77000', '-87.68000'), ('EVANSTON', 74239, '42.04630', '-87.69450'), ('EVERGREEN PARK', 20821, '41.72110', '-87.70110'), ('FLOSSMOOR', 9301, '41.53930', '-87.68420'), ('FORD HEIGHTS', 3456, '41.50960', '-87.58900'), ('FOREST PARK', 15688, '41.86910', '-87.81480'), ('FOREST VIEW', 778, '41.80660', '-87.78100'), ('FRANKLIN PARK', 19434, '41.93540', '-87.87820'), ('GLENCOE', 8762, '42.13460', '-87.76340'), ('GLENVIEW', 41847, '42.07960', '-87.81520'), ('GLENWOOD', 9000, '41.54610', '-87.61700'), ('GOLF', 451, '42.05880', '-87.78650'), ('HARVEY', 30000, '41.60730', '-87.65190'), ('HARWOOD HEIGHTS', 8297, '41.96610', '-87.80550'), ('HAZEL CREST', 14816, '41.57230', '-87.68940'), ('HICKORY HILLS', 13926, '41.72380', '-87.82820'), ('HILLSIDE', 8155, '41.87100', '-87.89860'), ('HODGKINS', 2134, '41.77080', '-87.85630'), ('HOFFMAN ESTATES', 49495, '42.06450', '-88.13830'), ('HOMETOWN', 4467, '41.73220', '-87.73130'), ('HOMEWOOD', 19543, '41.55840', '-87.66110'), ('HUMBOLDT PARK', None, '41.90000', '-87.70000'), ('HYDE PARK', None, '41.79000', '-87.59000'), ('INDIAN HEAD PARK', 3685, '41.76760', '-87.89750'), ('INVERNESS', 6749, '42.11510', '-88.10080'), ('JUSTICE', 12193, '41.74640', '-87.83550'), ('KENILWORTH', 2494, '42.08890', '-87.71490'), ('LA GRANGE', 15608, '41.80790', '-87.87340'), ('LA GRANGE PARK', 13295, '41.83160', '-87.87160'), ('LAKEVIEW', None, '41.94000', '-87.65000'), ('LANSING', 28332, '41.56750', '-87.54570'), ('LEMONT', 13098, '41.67010', '-87.99150'), ('LINCOLN PARK', None, '41.93000', '-87.63950'), ('LINCOLNWOOD', 12359, '42.00590', '-87.73280'), ('LOGAN SQUARE', None, '41.93000', '-87.71000'), ('LYNWOOD', 7377, '41.52640', '-87.54200'), ('LYONS', 10255, '41.81170', '-87.81860'), ('MARKHAM', 12620, '41.59920', '-87.69120'), ('MATTESON', 12928, '41.51100', '-87.73750'), ('MAYWOOD', 26987, '41.88020', '-87.84450'), ('MCCOOK', 254, '41.79280', '-87.83580'), ('MELROSE PARK', 23171, '41.90310', '-87.86340'), ('MERRIONETTE PARK', 1999, '41.68030', '-87.69970'), ('MIDLOTHIAN', 14315, '41.62630', '-87.72430'), ('MIDWAY AIRPORT', None, '41.78300', '-87.75000'), ('MORTON GROVE', 22451, '42.04230', '-87.78900'), ('MOUNT PROSPECT', 56265, '42.06540', '-87.93750'), ('MONTROSE HARBOR', None, '41.96000', '-87.64000'), ('NAVY PIER', None, '41.89000', '-87.62000'), ('NILES', 30068, '42.02690', '-87.80950'), ('NORRIDGE', 14582, '41.96500', '-87.82250'), ('NORTH RIVERSIDE', 6688, '41.84750', '-87.82490'), ('NORTHBROOK', 33435, '42.12970', '-87.83290'), ('NORTHFIELD', 5389, '42.10060', '-87.77870'), ('NORTHLAKE', 11878, '41.91370', '-87.90390'), ('OAK FOREST', 28051, '41.60650', '-87.75260'), ('OAK LAWN', 55245, '41.71500', '-87.75210'), ('OAK PARK', 52524, '41.88760', '-87.78950'), ('OHARE AIRPORT', None, '41.98330', '-87.90000'), ('OLYMPIA FIELDS', 4732, '41.51740', '-87.69290'), ('ORLAND HILLS', 6779, '41.59260', '-87.84280'), ('ORLAND PARK', 51077, '41.61050', '-87.85070'), ('PALATINE', 65479, '42.11250', '-88.04300'), ('PALOS HEIGHTS', 11260, '41.66530', '-87.79710'), ('PALOS HILLS', 17665, '41.69760', '-87.82610'), ('PALOS PARK', 4689, '41.66450', '-87.84430'), ('PARK FOREST', 23462, '41.48230', '-87.68700'), ('PARK RIDGE', 37775, '42.01170', '-87.84400'), ('PHOENIX', 2157, '41.61230', '-87.63050'), ('POSEN', 4730, '41.62820', '-87.68570'), ('PROSPECT HEIGHTS', 17081, '42.10240', '-87.92470'), ('RICHTON PARK', 12533, '41.48190', '-87.72830'), ('RIVER FOREST', 11635, '41.89480', '-87.81900'), ('RIVER GROVE', 10668, '41.92400', '-87.83760'), ('RIVERDALE', 15055, '41.64460', '-87.63470'), ('RIVERSIDE', 8895, '41.83080', '-87.81590'), ('ROBBINS', 6635, '41.64290', '-87.70810'), ('ROGERS PARK', None, '42.01000', '-87.67000'), ('ROLLING MEADOWS', 24604, '42.07500', '-88.02500'), ('ROSEMONT', 4224, '41.98910', '-87.87150'), ('SAUK VILLAGE', 10411, '41.48850', '-87.56560'), ('SCHAUMBURG', 75386, '42.03300', '-88.08340'), ('SCHILLER PARK', 11850, '41.95980', '-87.87000'), ('SKOKIE', 63348, '42.03710', '-87.73990'), ('SOUTH BARRINGTON', 3760, '42.08720', '-88.15300'), ('SOUTH CHICAGO', None, '41.74000', '-87.55000'), ('SOUTH CHICAGO HEIGHTS', 3970, '41.48330', '-87.63740'), ('SOUTH HOLLAND', 22147, '41.59750', '-87.60120'), ('STICKNEY', 6148, '41.81800', '-87.77280'), ('STONE PARK', 5127, '41.90430', '-87.88040'), ('STREAMWOOD', 36407, '42.02060', '-88.17330'), ('SUMMIT', 10637, '41.78480', '-87.81620'), ('THORNTON', 2582, '41.57400', '-87.61880'), ('TINLEY PARK', 48401, '41.57480', '-87.80040'), ('WESTCHESTER', 16824, '41.85090', '-87.88710'), ('WESTERN SPRINGS', 12493, '41.80340', '-87.90080'), ('WHEELING', 34496, '42.13050', '-87.92360'), ('WILLOW SPRINGS', 5027, '41.73350', '-87.88240'), ('WILMETTE', 27651, '42.07720', '-87.72860'), ('WINNETKA', 12419, '42.10650', '-87.74270'), ('WORTH', 11047, '41.68730', '-87.79260')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ILZ015': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('PLEASANT VALLEY', None, '41.56670', '-90.41670'), ('PRINCETON WILDLIFE AREA', None, '41.70000', '-90.31670'), ('ANDALUSIA', 1050, '41.43800', '-90.72540'), ('BLACKHAWK STATE H.S.', None, '41.46660', '-90.56660'), ('CARBON CLIFF', 1689, '41.49760', '-90.39030'), ('COAL VALLEY', 3606, '41.44900', '-90.44780'), ('CORDOVA', 633, '41.67800', '-90.32200'), ('COYNE CENTER', 906, '41.40000', '-90.56670'), ('EAST MOLINE', 20333, '41.51420', '-90.42740'), ('EDGINGTON', None, '41.38330', '-90.76670'), ('FRUITLAND', None, '41.46670', '-90.51670'), ('HAMPTON', 1626, '41.55330', '-90.40560'), ('HIGHLAND SPRING GOLF COUR', None, '41.41670', '-90.61670'), ('HILLSDALE', 588, '41.61180', '-90.17520'), ('ILLINIWEK PARK', None, '41.56670', '-90.40000'), ('ILLINOIS CITY', None, '41.40000', '-90.90000'), ('INDIAN BLUFF PARK', None, '41.43330', '-90.51660'), ('LOUD THUNDER PARK', None, '41.43330', '-90.83330'), ('MILAN', 5348, '41.44420', '-90.56130'), ('MOLINE', 43768, '41.48510', '-90.48880'), ('MOLINE QUAD-CITY AIRPORT', None, '41.45000', '-90.50000'), ('OAK GROVE', 1318, '41.41400', '-90.57320'), ('PORT BYRON', 1535, '41.62130', '-90.32370'), ('RAPIDS CITY', 953, '41.58190', '-90.34140'), ('ROCK ISLAND', 39684, '41.47550', '-90.58030'), ('SAUKIE GOLF COURSE', None, '41.46670', '-90.55000'), ('SILVIS', 7269, '41.50630', '-90.41270'), ('SILVIS HEIGHTS', None, '41.50000', '-90.41670'), ('TAYLOR RIDGE', None, '41.38330', '-90.66670'), ('WOODS AIRPORT', None, '41.51660', '-90.38330')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ILZ016': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALPHA', 726, '41.19220', '-90.38080'), ('ANDOVER', 594, '41.29500', '-90.29050'), ('ANNAWAN', 868, '41.39870', '-89.90700'), ('ATKINSON', 1001, '41.41870', '-90.01450'), ('BARSTOW', None, '41.51660', '-90.35000'), ('BISHOP HILL', 125, '41.19960', '-90.11720'), ('BRANDENBURG CORNERS', None, '41.28330', '-89.88330'), ('CAMBRIDGE', 2180, '41.30330', '-90.19330'), ('CLEVELAND', 253, '41.50290', '-90.31640'), ('COLONA', 5173, '41.48600', '-90.35050'), ('DAYTON', None, '41.48330', '-90.31670'), ('GALVA', 2758, '41.16660', '-90.03890'), ('GENESEO', 6480, '41.44720', '-90.15450'), ('GERMAN CORNER', None, '41.30000', '-90.03330'), ('GREEN RIVER', None, '41.47000', '-90.33300'), ('GREEN ROCK', None, '41.47500', '-90.36360'), ('HOOPPOLE', 162, '41.52090', '-89.91330'), ('KEWANEE', 12944, '41.24110', '-89.92560'), ('KEWANEE MUNICIPAL AIRPORT', None, '41.20000', '-89.96670'), ('LYNN CENTER', None, '41.30000', '-90.35000'), ('MORRISTOWN', None, '41.40000', '-90.30000'), ('NEKOMA', None, '41.17220', '-90.18700'), ('OPHIEM', None, '41.25000', '-90.38330'), ('ORION', 1713, '41.35120', '-90.37410'), ('OSBORN', None, '41.51660', '-90.26670'), ('OSCO', None, '41.35000', '-90.28330'), ('SHADY BEACH', None, '41.53330', '-90.20000'), ('SUNNY HILL', None, '41.40000', '-90.43330'), ('ULAH', None, '41.26670', '-90.15000'), ('WARNER', None, '41.41670', '-90.38330'), ('WOODHULL', 809, '41.17840', '-90.32170')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ILZ017': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARLINGTON', 211, '41.47120', '-89.24820'), ('BUDA', 592, '41.32770', '-89.67840'), ('BUREAU', None, '41.28780', '-89.36430'), ('CHERRY', 509, '41.42960', '-89.21360'), ('COAL HOLLOW', None, '41.36670', '-89.36670'), ('DALZELL', 717, '41.35810', '-89.17560'), ('DEPUE', None, '41.32970', '-89.29580'), ('DOVER', 172, '41.43420', '-89.39570'), ('HOLLOWAYVILLE', 90, '41.36490', '-89.29450'), ('JOHNSON SAUK TRAIL S. P.', None, '41.31670', '-89.38330'), ('KASBEER', None, '41.50000', '-89.46670'), ('LA MOILLE', 773, '41.53010', '-89.28090'), ('LADD', 1313, '41.38270', '-89.21430'), ('LONE TREE CORNERS', None, '41.18330', '-89.48330'), ('MALDEN', 343, '41.42490', '-89.37020'), ('MANLIUS', 355, '41.45570', '-89.66800'), ('MILO', None, '41.20000', '-89.58330'), ('MINERAL', 272, '41.38190', '-89.83650'), ('NEPONSET', 519, '41.29710', '-89.79020'), ('NEW BEDFORD', 95, '41.51170', '-89.71730'), ('NORMANDY', None, '41.56670', '-89.65000'), ('OHIO', 540, '41.55690', '-89.45950'), ('OTTVILLE', None, '41.35000', '-89.26660'), ('PRINCETON', 7501, '41.37840', '-89.46680'), ('PROVIDENCE', None, '41.28330', '-89.60000'), ('SEATONVILLE', 303, '41.36380', '-89.27290'), ('SHEFFIELD', 946, '41.35700', '-89.73960'), ('SPRING VALLEY', 5398, '41.32610', '-89.19900'), ('SPRING VALLEY AIRPORT', None, '41.33330', '-89.21660'), ('THOMAS', None, '41.51660', '-89.81670'), ('TISKILWA', 787, '41.29270', '-89.50780'), ('VAN ORIN', None, '41.55000', '-89.35000'), ('WALNUT', 1461, '41.55680', '-89.59110'), ('WYANET', 1028, '41.36010', '-89.58380'), ('YORKTOWN', None, '41.56670', '-89.85000'), ('ZEARING', None, '41.45000', '-89.31670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DVN'}, -'ILZ010': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AMBOY', 2561, '41.71660', '-89.33350'), ('ASHTON', 1142, '41.86810', '-89.22150'), ('COMPTON', 347, '41.69420', '-89.08590'), ('DIXON', 15941, '41.84950', '-89.47880'), ('FRANKLIN GROVE', 1052, '41.84100', '-89.30010'), ('HARMON', 149, '41.71970', '-89.55660'), ('NELSON', 163, '41.79550', '-89.60260'), ('PAW PAW', 852, '41.68790', '-88.98060'), ('STEWARD', 271, '41.84850', '-89.02060'), ('SUBLETTE', 456, '41.64350', '-89.23170'), ('WEST BROOKLYN', 174, '41.69310', '-89.14700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'ILZ011': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CORTLAND', 2066, '41.92730', '-88.69440'), ('DE KALB', None, '41.93060', '-88.75190'), ('GENOA', 4169, '42.09760', '-88.68990'), ('HINCKLEY', 1994, '41.76970', '-88.64180'), ('KINGSTON', 980, '42.09920', '-88.75690'), ('KIRKLAND', 1166, '42.09220', '-88.85460'), ('LEE', 313, '41.79400', '-88.94020'), ('MALTA', 969, '41.93020', '-88.86310'), ('SANDWICH', 6509, '41.64660', '-88.62310'), ('SHABBONA', 929, '41.76490', '-88.87640'), ('SYCAMORE', 12020, '41.98170', '-88.69580'), ('WATERMAN', 1224, '41.76940', '-88.77320')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'ILZ012': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AURORA', 142990, '41.76760', '-88.29300'), ('BATAVIA', 23866, '41.85060', '-88.30040'), ('BURLINGTON', 452, '42.05040', '-88.54740'), ('CARPENTERSVILLE', 30586, '42.12130', '-88.27150'), ('EAST DUNDEE', 2955, '42.09580', '-88.25580'), ('ELBURN', 2756, '41.89020', '-88.47170'), ('ELGIN', 94487, '42.03960', '-88.28800'), ('GENEVA', 19515, '41.88230', '-88.31450'), ('GILBERTS', 1279, '42.10160', '-88.36720'), ('HAMPSHIRE', 2900, '42.09580', '-88.52170'), ('MAPLE PARK', 765, '41.90720', '-88.59370'), ('MONTGOMERY', 5471, '41.72990', '-88.34150'), ('NORTH AURORA', 10585, '41.80380', '-88.33040'), ('PINGREE GROVE', 124, '42.06860', '-88.41470'), ('SLEEPY HOLLOW', 3553, '42.09340', '-88.31420'), ('SOUTH ELGIN', 16100, '41.99630', '-88.29800'), ('ST. CHARLES', 27896, '41.92030', '-88.30080'), ('SUGAR GROVE', 3909, '41.76960', '-88.45880'), ('WEST DUNDEE', 5428, '42.09810', '-88.29200')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'TXZ049': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUSBY', None, '32.62280', '-100.42060'), ('CAPITOLA', None, '32.62220', '-100.49220'), ('GANNON', None, '32.55670', '-100.48310'), ('HITSON', None, '32.89440', '-100.21140'), ('HOBBS', None, '32.78140', '-100.59140'), ('LONGWORTH', None, '32.65030', '-100.34530'), ('MCCAULLEY', None, '32.78190', '-100.20360'), ('ROBY', 673, '32.74630', '-100.37850'), ('ROTAN', 1611, '32.85360', '-100.46540'), ('SYLVESTER', None, '32.72080', '-100.25390')], 'partOfState': 'NORTHWEST', 'wfo': 'SJT'}, -'ILZ018': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('FLORID', None, '41.23330', '-89.28330'), ('GRANVILLE', 1414, '41.26430', '-89.22990'), ('HENNEPIN', 707, '41.25600', '-89.31960'), ('LAKE THUNDERBIRD', None, '41.21670', '-89.45000'), ('MAGNOLIA', 279, '41.11400', '-89.19520'), ('MARK', 491, '41.26420', '-89.24840'), ('MC NABB', None, '41.17730', '-89.20980'), ('MORONTS', None, '41.28330', '-89.30000'), ('PUTNAM', None, '41.18330', '-89.40000'), ('STANDARD', 256, '41.25640', '-89.18030')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DVN'}, -'ILZ019': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CEDAR POINT', 262, '41.26470', '-89.12520'), ('DANA', 171, '40.95630', '-88.94980'), ('EARLVILLE', 1778, '41.58850', '-88.92390'), ('GRAND RIDGE', 546, '41.23620', '-88.83150'), ('KANGLEY', 287, '41.14760', '-88.87260'), ('LA SALLE', 9796, '41.34000', '-89.09350'), ('LELAND', 970, '41.61470', '-88.79800'), ('LEONORE', 110, '41.18940', '-88.98260'), ('LOSTANT', 486, '41.14040', '-89.06110'), ('MARSEILLES', 4655, '41.32780', '-88.68780'), ('MENDOTA', 7272, '41.55090', '-89.12010'), ('NAPLATE', 523, '41.33130', '-88.87820'), ('NORTH UTICA', 977, '41.33980', '-89.01130'), ('OGLESBY', 3647, '41.29450', '-89.06450'), ('OTTAWA', 18307, '41.35020', '-88.83940'), ('PERU', 9835, '41.34170', '-89.12830'), ('RANSOM', 409, '41.15810', '-88.65530'), ('RUTLAND', 354, '40.98410', '-89.03930'), ('SENECA', 2053, '41.30340', '-88.61350'), ('SHERIDAN', 2411, '41.52590', '-88.68670'), ('SOMONAUK', 1295, '41.63230', '-88.68350'), ('STREATOR', 14190, '41.12530', '-88.83150'), ('TONICA', 685, '41.21410', '-89.06780'), ('TROY GROVE', 305, '41.46540', '-89.08110'), ('WENONA', 1065, '41.05300', '-89.05330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'MIZ039': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ASHTON', None, '43.97300', '-85.50370'), ('AVONDALE', None, '44.01580', '-85.22670'), ('DIGHTON', None, '44.08780', '-85.34500'), ('EVART', 1738, '43.90240', '-85.27380'), ('GIBOS CORNERS', None, '43.85720', '-85.14720'), ('HERSEY', 374, '43.84970', '-85.44210'), ('HIGHLAND', None, '44.14550', '-85.26630'), ('INA', None, '44.11700', '-85.28670'), ('LE ROY', 267, '44.03850', '-85.45270'), ('MARION', 836, '44.10280', '-85.14700'), ('PARK LAKE', None, '44.14580', '-85.20620'), ('PISGAH HEIGHTS', None, '44.09450', '-85.22600'), ('REED CITY', 2430, '43.87250', '-85.50920'), ('SEARS', None, '43.89830', '-85.18470'), ('STAMBAUGH CORNER', None, '43.94450', '-85.42530'), ('TUSTIN', 237, '44.10200', '-85.45810')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'MNZ018': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALVWOOD', None, '47.73060', '-94.26810'), ('BIGFORK', 469, '47.74840', '-93.65340'), ('BOWSTRING', None, '47.54300', '-93.79680'), ('EFFIE', 91, '47.84070', '-93.63780'), ('INGER', None, '47.55420', '-93.98540'), ('JESSIE LAKE', None, '47.60120', '-93.81730'), ('MARCELL', None, '47.59320', '-93.69090'), ('MAX', None, '47.61470', '-94.06810'), ('ORTH', None, '47.83920', '-94.31530'), ('OSLUND', None, '47.65580', '-94.03410'), ('ROSY', None, '47.65810', '-94.30620'), ('SPRING LAKE', None, '47.64260', '-93.86800'), ('SQUAW LAKE', 99, '47.62690', '-94.14100'), ('STONY BROOK', None, '47.73500', '-93.09860'), ('TALMOON', None, '47.60010', '-93.77400'), ('TOGO', None, '47.82140', '-93.15590'), ('WIRT', None, '47.73060', '-93.96010')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'MNZ019': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ANGORA', None, '47.77510', '-92.63420'), ('AURORA', 1850, '47.53200', '-92.24000'), ('BABBITT', 1670, '47.64510', '-91.94010'), ('BIWABIK', 954, '47.53420', '-92.35000'), ('BRIMSON', None, '47.27670', '-91.86710'), ('BUHL', 983, '47.49850', '-92.76690'), ('CANYON', None, '47.04000', '-92.47080'), ('CHISHOLM', 4960, '47.48750', '-92.87920'), ('COOK', 622, '47.85310', '-92.68810'), ('COTTON', None, '47.16980', '-92.47100'), ('ELMER', None, '47.10360', '-92.77720'), ('EMBARRASS', None, '47.65930', '-92.19810'), ('EVELETH', 3865, '47.46370', '-92.54290'), ('FAIRBANKS', None, '47.37060', '-91.92670'), ('FRANKLIN', 498, '47.53780', '-92.51930'), ('GILBERT', 1847, '47.49190', '-92.46050'), ('HIBBING', 17071, '47.40000', '-92.94810'), ('HOYT LAKES', 2082, '47.51220', '-92.15470'), ('IDINGTON', None, '47.73340', '-92.65200'), ('IRON JUNCTION', 93, '47.41640', '-92.60670'), ('KELLY LAKE', None, '47.41760', '-93.00670'), ('KELSEY', None, '47.15390', '-92.59920'), ('KINNEY', 199, '47.52230', '-92.72530'), ('LEETONIA', None, '47.42920', '-92.98540'), ('LEONIDAS', 60, '47.46730', '-92.56790'), ('LITTLE SWAN', None, '47.29720', '-92.83110'), ('MAKINEN', None, '47.35730', '-92.36780'), ('MARKHAM', None, '47.29930', '-92.21870'), ('MCKINLEY', 80, '47.51450', '-92.40750'), ('MEADOWLANDS', 111, '47.07280', '-92.73140'), ('MELRUDE', None, '47.24560', '-92.41720'), ('MESABA', None, '47.56900', '-92.13200'), ('MOUNTAIN IRON', 2999, '47.52640', '-92.62690'), ('PAYNE', None, '47.09620', '-92.59950'), ('RIDGE', None, '47.62260', '-92.03620'), ('SHAW', None, '47.11370', '-92.35310'), ('SHERMANS CORNER', None, '47.77920', '-92.65640'), ('SIDE LAKE', None, '47.66530', '-93.01600'), ('SILICA', None, '47.26560', '-93.02110'), ('SKIBO', None, '47.48560', '-91.99440'), ('SNAKE TRAIL', None, '47.71360', '-93.04660'), ('SOUDAN', None, '47.81590', '-92.23780'), ('TOIVOLA', None, '47.16700', '-92.81120'), ('TOWER', 479, '47.81010', '-92.29050'), ('VIRGINIA', 9157, '47.51580', '-92.50710'), ('WAHLSTEN', None, '47.73580', '-92.28360'), ('ZIM', None, '47.30700', '-92.60340')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MNZ016': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BAGLEY', 1235, '47.52340', '-95.40360'), ('BERNER', None, '47.80440', '-95.47280'), ('CLEARBROOK', 551, '47.69470', '-95.42830'), ('GONVICK', 294, '47.73830', '-95.51250'), ('LEONARD', 29, '47.65240', '-95.26640'), ('SHEVLIN', 160, '47.53070', '-95.25920'), ('WEME', None, '47.64420', '-95.53780')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ017': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEMIDJI', 11917, '47.48230', '-94.87860'), ('BLACKDUCK', 696, '47.72640', '-94.54820'), ('DEBS', None, '47.73140', '-95.12780'), ('FUNKLEY', 15, '47.78640', '-94.42750'), ('HINES', None, '47.68610', '-94.63250'), ('ISLAND LAKE', None, '47.78890', '-95.01780'), ('LAVINIA', None, '47.51500', '-94.81140'), ('NEBISH', None, '47.77140', '-94.84720'), ('PENNINGTON', None, '47.48360', '-94.47970'), ('PINEWOOD', None, '47.59720', '-95.12750'), ('PUPOSKY', None, '47.67780', '-94.90690'), ('ROSBY', None, '47.42080', '-94.80640'), ('SOLWAY', 69, '47.52070', '-95.12970'), ('TENSTRIKE', 195, '47.66080', '-94.68460'), ('TURTLE RIVER', 75, '47.58850', '-94.76020'), ('WILTON', 186, '47.50520', '-94.99120')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGF'}, -'MNZ014': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BROOKS', 141, '47.81710', '-96.00110'), ('DELORME', None, '47.76470', '-96.28890'), ('DOROTHY', None, '47.92780', '-96.44640'), ('HUOT', None, '47.86530', '-96.42310'), ('OKLEE', 396, '47.83880', '-95.85010'), ('PERAULT', None, '47.81250', '-96.28970'), ('PLUMMER', 270, '47.91570', '-96.03940'), ('RED LAKE FALLS', 1590, '47.88520', '-96.27390'), ('ROLAND', None, '47.94420', '-95.77860'), ('TERREBONNE', None, '47.83250', '-96.13310'), ('WYLIE', None, '47.96190', '-96.35280')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ015': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('DUGDALE', None, '47.70170', '-96.26610'), ('ERSKINE', 437, '47.66360', '-96.01370'), ('FERTILE', 893, '47.53210', '-96.29130'), ('FOSSTON', 1575, '47.58090', '-95.74770'), ('GULLY', 106, '47.76900', '-95.62350'), ('LENGBY', 79, '47.51490', '-95.63350'), ('MAPLE BAY', None, '47.63580', '-96.22470'), ('MCINTOSH', 638, '47.63750', '-95.88520'), ('MENTOR', 150, '47.69660', '-96.14470'), ('OLGA', None, '47.68720', '-95.66330'), ('TRAIL', 62, '47.78370', '-95.69910'), ('WINGER', 205, '47.53700', '-95.98510')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ012': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BASSWOOD LAKE', None, '48.07480', '-91.58220'), ('BUTTERFLY LAKE', None, '47.75840', '-91.47950'), ('EAGLE MOUNTAIN', None, '47.89760', '-90.56030'), ('FOREST CENTER', None, '47.79500', '-91.30780'), ('ISABELLA', None, '47.61730', '-91.35500'), ('MURPHY CITY', None, '47.50980', '-91.32470'), ('SAWBILL LANDING', None, '47.71530', '-91.26810'), ('SEA GULL LAKE', None, '48.13090', '-90.94740'), ('SILVER RAPIDS', None, '47.90400', '-91.75560'), ('SNOW BANK LAKE', None, '47.99160', '-91.42130'), ('WALES', None, '47.23500', '-91.74700'), ('WHYTE', None, '47.45170', '-91.56230')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MNZ013': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARPENTERS CORNER', None, '48.15810', '-96.43720'), ('DAKOTA JUNCTION', None, '48.15890', '-96.19420'), ('GOODRIDGE', 98, '48.14470', '-95.80400'), ('HAZEL', None, '48.02000', '-96.11500'), ('HIGH LANDING', None, '48.04940', '-95.80830'), ('MAVIE', None, '48.14470', '-95.93860'), ('ST. HILAIRE', 272, '48.01320', '-96.21380'), ('THIEF RIVER FALLS', 8410, '48.11350', '-96.17540')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ010': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BIG FALLS', 264, '48.18510', '-93.80820'), ('BIRCHDALE', None, '48.62700', '-94.10210'), ('CRAIGVILLE', None, '47.90310', '-93.61310'), ('ERICKSBURG', None, '48.48780', '-93.33140'), ('GEMMELL', None, '47.97340', '-94.12390'), ('GRAND FALLS', None, '48.19860', '-93.79290'), ('INTERNATIONAL FALLS', 6703, '48.58760', '-93.40620'), ('ISLAND VIEW', None, '48.60600', '-93.19070'), ('LITTLEFORK', 680, '48.39650', '-93.55680'), ('LOMAN', None, '48.51280', '-93.80310'), ('MANITOU', None, '48.62840', '-93.99320'), ('MARGIE', None, '48.09540', '-93.94010'), ('MIZPAH', 78, '47.92250', '-94.21540'), ('NORTHOME', 230, '47.87460', '-94.26580'), ('PELLAND', None, '48.52280', '-93.57540'), ('RANIER', 188, '48.61320', '-93.34660'), ('RAY', None, '48.41090', '-93.21030')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'MNZ011': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ASH LAKE', None, '48.21900', '-92.91610'), ('BUYCK', None, '48.14280', '-92.52060'), ('CELINA', None, '47.86580', '-93.06200'), ('CRANE LAKE', None, '48.26670', '-92.48870'), ('CUSSON', None, '48.10190', '-92.84310'), ('ELY', 3724, '47.90570', '-91.85060'), ('GHEEN', None, '47.96810', '-92.80830'), ('GREANEY', None, '47.96730', '-93.02110'), ('KABETOGAMA', None, '48.43790', '-93.02750'), ('LINDEN GROVE', None, '47.86320', '-92.87060'), ('MEADOW BROOK', None, '47.86280', '-92.95480'), ('NETT LAKE', None, '48.11120', '-93.07990'), ('ORR', 249, '48.06400', '-92.82040'), ('ROBINSON', None, '47.85950', '-92.04200'), ('WINTON', 185, '47.92900', '-91.80140')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MIZ037': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CUSTER', 318, '43.95030', '-86.21940'), ('FOUNTAIN', 175, '44.04780', '-86.17950'), ('FREESOIL', None, '44.10700', '-86.21670'), ('LUDINGTON', 8357, '43.95710', '-86.44300'), ('SCOTTVILLE', 1266, '43.95040', '-86.28000'), ('WALHALLA', None, '43.95370', '-86.11470')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'MIZ036': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AU SABLE', 1533, '44.41080', '-83.33980'), ('EAST TAWAS', 2951, '44.28500', '-83.48410'), ('HALE', None, '44.38330', '-83.80500'), ('INTERSECTION OF M-55 AND', None, '44.28000', '-83.80350'), ('LONG LAKE', None, '44.41660', '-83.86660'), ('NATIONAL CITY', None, '44.23330', '-83.71660'), ('OSCODA', 992, '44.42220', '-83.33480'), ('SID TOWN', None, '44.44000', '-83.61000'), ('SOUTH BRANCH', None, '44.46660', '-83.88330'), ('TAWAS CITY', 2005, '44.27000', '-83.52100'), ('WHITTEMORE', 476, '44.23310', '-83.80280'), ('WILBER', None, '44.39000', '-83.48000'), ('WURTSMITH AIRFIELD', None, '44.46120', '-83.38450')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'NMZ032': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('DONA ANA', 1379, '32.39130', '-106.81530'), ('GARFIELD', None, '32.75690', '-107.26390'), ('HATCH', 1673, '32.66760', '-107.15580'), ('LA MESA', None, '32.12190', '-106.70720'), ('LA UNION', None, '31.95500', '-106.66110'), ('LAS CRUCES', 74267, '32.33610', '-106.75580'), ('LEASBURG', None, '32.45390', '-106.88250'), ('MESILLA', 2180, '32.27020', '-106.80670'), ('MESQUITE', 948, '32.16440', '-106.69610'), ('ORGAN', None, '32.42550', '-106.59440'), ('RADIUM SPRINGS', 1518, '32.50110', '-106.92750'), ('RINCON', 220, '32.67280', '-107.06420'), ('SALEM', 795, '32.70750', '-107.21110'), ('SANTA TERESA', 2607, '31.87330', '-106.64110'), ('SUNLAND PARK', 13309, '31.79910', '-106.57720'), ('UNIVERSITY PARK', 2732, '32.27810', '-106.74730'), ('VADO', 3003, '32.11170', '-106.66190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EPZ'}, -'NMZ033': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BUCKEYE', None, '32.80190', '-103.50530'), ('HALFWAY', None, '32.55170', '-103.73500'), ('HOBBS', 28657, '32.73430', '-103.16280'), ('HUMBLE CITY', None, '32.79500', '-103.21860'), ('KNOWLES', None, '32.84020', '-103.12720'), ('LOVINGTON', 9471, '32.94530', '-103.35030'), ('MALJAMAR', None, '32.85610', '-103.76220'), ('MONUMENT', None, '32.62390', '-103.26390'), ('NADINE', None, '32.62390', '-103.12690')], 'partOfState': 'SOUTHEAST', 'wfo': 'MAF'}, -'NMZ030': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ANIMAS', None, '31.94890', '-108.83530'), ('ANTELOPE WELLS', None, '31.35330', '-108.53330'), ('HACHITA', None, '31.91810', '-108.31970'), ('LORDSBURG', 3379, '32.34330', '-108.70200'), ('ROAD FORKS', None, '32.22100', '-109.00010'), ('RODEO', None, '31.83530', '-109.03060')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'NMZ031': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('COLUMBUS', 1765, '31.82890', '-107.64080'), ('DEMING', 14116, '32.26170', '-107.75040'), ('GAGE', None, '32.22940', '-108.08580'), ('UVAS VALLEY', None, '32.53890', '-107.40000')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'MIZ035': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CLEAR LAKE', None, '44.41660', '-84.25000'), ('LUPTON', None, '44.43330', '-84.01700'), ('PRESCOTT', 286, '44.19140', '-83.93190'), ('RIFLE RIVER STATE PARK', None, '44.40000', '-83.99000'), ('ROSE CITY', 721, '44.42100', '-84.11540'), ('SELKIRK', None, '44.31670', '-84.06670'), ('SKIDWAY LAKE', 3147, '44.19400', '-84.04420'), ('WEST BRANCH', 1926, '44.27570', '-84.23530')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'NMZ034': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BENNETT', None, '32.06770', '-103.21060'), ('EUNICE', 2562, '32.44250', '-103.19320'), ('JAL', 1996, '32.11350', '-103.18940'), ('OIL CENTER', None, '32.49690', '-103.26080')], 'partOfState': 'SOUTHEAST', 'wfo': 'MAF'}, -'MIZ034': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('HIGGINS LAKE', None, '44.46000', '-84.73500'), ('HOUGHTON LAKE', 3749, '44.30000', '-84.76000'), ('LAKE ST. HELEN', None, '44.36000', '-84.50000'), ('NORTH HIGGINS LAKE PARK', None, '44.50000', '-84.73000'), ('PRUDENVILLE', 1737, '44.30000', '-84.67000'), ('ROSCOMMON', 1133, '44.50000', '-84.59500'), ('ROSCOMMON COUNTY AIRPORT', None, '44.35500', '-84.68600'), ('SOUTH HIGGINS LAKE STATE', None, '44.44000', '-84.67000'), ('ST. HELEN', 2993, '44.36280', '-84.41860'), ('TWIN LAKES AREA', None, '44.23330', '-84.45000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MEZ032': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BROOKTON', None, '45.52970', '-67.76610'), ('CODYVILLE', None, '45.43970', '-67.69470'), ('DANFORTH', None, '45.66030', '-67.86890'), ('EATON', None, '45.60530', '-67.80610'), ('FOREST', None, '45.57110', '-67.72830'), ('FOREST CITY', None, '45.65970', '-67.73030'), ('LAMBERT LAKE', None, '45.54580', '-67.52750'), ('TOPSFIELD', None, '45.41890', '-67.73610'), ('VANCEBORO', None, '45.56330', '-67.43030'), ('WAITE', None, '45.32560', '-67.69080')], 'partOfState': 'SOUTHEAST', 'wfo': 'CAR'}, -'MEZ031': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ABBOT', None, '45.18640', '-69.45250'), ('ATKINSON', None, '45.15970', '-69.08280'), ('BARNARD', None, '45.36640', '-69.20750'), ('BOWERBANK', None, '45.27280', '-69.21250'), ('BOYD LAKE', None, '45.27280', '-69.21250'), ('BROWNVILLE', None, '45.30690', '-69.03390'), ('BROWNVILLE JUNCTION', None, '45.35000', '-69.05280'), ('DOVER-FOXCROFT', 2592, '45.18330', '-69.22750'), ('GUILFORD', 945, '45.16890', '-69.38500'), ('KINGSBURY', None, '45.11940', '-69.64970'), ('LAKE VIEW', None, '45.32330', '-68.92640'), ('MEDFORD', None, '45.28530', '-68.85220'), ('MILO', 1898, '45.25360', '-68.98640'), ('PARKMAN', None, '45.13360', '-69.43360'), ('SANGERVILLE', None, '45.16470', '-69.35690'), ('SEBEC', None, '45.27140', '-69.11720'), ('WELLINGTON', None, '45.03970', '-69.59780'), ('WILLIAMSBURG', None, '45.38000', '-69.11640')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CAR'}, -'MEZ030': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('CENTERVILLE', None, '44.70560', '-67.67940'), ('CHERRYFIELD', None, '44.60720', '-67.92640'), ('COLUMBIA', None, '44.65810', '-67.77500'), ('COLUMBIA FALLS', None, '44.65360', '-67.72810'), ('EAST MACHIAS', None, '44.73920', '-67.39060'), ('EASTPORT', 1640, '44.90610', '-66.99060'), ('EDMUNDS', None, '44.87190', '-67.16470'), ('HARRINGTON', None, '44.61920', '-67.81080'), ('JONESBORO', None, '44.66250', '-67.57310'), ('JONESPORT', None, '44.53280', '-67.59890'), ('MACHIAS', 1376, '44.71500', '-67.46190'), ('MACHIASPORT', None, '44.69860', '-67.39530'), ('MARSHFIELD', None, '44.73310', '-67.47810'), ('MILLBRIDGE', None, '44.53530', '-67.88140'), ('ROQUE BLUFFS', None, '44.61280', '-67.48030'), ('STEUBEN', None, '44.51060', '-67.96580'), ('TRESCOTT', None, '44.76920', '-67.07470'), ('WHITING', None, '44.79080', '-67.17610'), ('WHITNEYVILLE', None, '44.72190', '-67.52390')], 'partOfState': 'SOUTHEAST', 'wfo': 'CAR'}, -'MIZ032': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BOON', None, '44.28340', '-85.60000'), ('BUCKLEY', 550, '44.50390', '-85.67170'), ('CADILLAC', 10000, '44.24830', '-85.41610'), ('HARRIETTA', 169, '44.30950', '-85.70050'), ('MANTON', 1221, '44.41140', '-85.40040'), ('MEAUWATAKA', None, '44.35000', '-85.53330'), ('MESICK', 447, '44.40360', '-85.71940'), ('SHERMAN', None, '44.41670', '-85.70000'), ('YUMA', None, '44.35000', '-85.75000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ031': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARCADIA', None, '44.51130', '-86.23330'), ('BRETHREN', None, '44.30000', '-86.01670'), ('COPEMISH', 232, '44.48100', '-85.92390'), ('DUBLIN', None, '44.18330', '-85.93330'), ('EASTLAKE', 441, '44.24550', '-86.29390'), ('KALEVA', 509, '44.37230', '-86.01300'), ('MANISTEE', 6586, '44.24460', '-86.32640'), ('NORWALK', None, '44.33330', '-86.16660'), ('ONEKAMA', 647, '44.36680', '-86.20310'), ('PARKDALE', None, '44.26660', '-86.30000'), ('PIERPORT', None, '44.43340', '-86.23400'), ('WELLSTON', None, '44.21670', '-85.95100'), ('WILDWOOD', None, '44.41660', '-86.16660')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ030': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARTON CITY', None, '44.68330', '-83.60000'), ('BLACK RIVER', None, '44.81660', '-83.31000'), ('CURTISVILLE', None, '44.56660', '-83.86660'), ('CURRAN', None, '44.71660', '-83.80000'), ('GLENNIE', None, '44.56660', '-83.71660'), ('HARRISVILLE', 514, '44.65670', '-83.30000'), ('HUBBARD LAKE', 993, '44.80000', '-83.59000'), ('LINCOLN', 364, '44.68520', '-83.41260'), ('MIKADO', None, '44.56680', '-83.41670'), ('SPRUCE', None, '44.83410', '-83.46670')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'NVZ022': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('CAL NEV ARI', None, '35.31660', '-114.88660'), ('PRIMM', None, '35.61660', '-115.39330'), ('SEARCHLIGHT', 576, '35.46330', '-114.91660')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, -'NYZ060': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CLAVERACK', None, '42.22320', '-73.72490'), ('CLERMONT', None, '42.08980', '-73.82930'), ('ELIZAVILLE', None, '42.04920', '-73.79470'), ('HUDSON', 7524, '42.25130', '-73.78650'), ('KINDERHOOK', 1275, '42.39460', '-73.70410'), ('LIVINGSTON', None, '42.13930', '-73.76320'), ('NIVERVILLE', 1737, '42.44550', '-73.64880'), ('PHILMONT', 1480, '42.24830', '-73.64670'), ('STOTTVILLE', 1355, '42.28920', '-73.75230'), ('VALATIE', 1712, '42.41480', '-73.67670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NVZ020': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BLACK MTN', None, '35.93330', '-115.04160'), ('DOWNTOWN LAS VEGAS', None, '36.17300', '-115.14600'), ('EAST LAS VEGAS', None, '36.09650', '-115.04350'), ('FRENCHMAN MTN', None, '36.17750', '-114.99600'), ('GASS PK', None, '36.40000', '-115.17830'), ('GREEN VALLEY', None, '36.05700', '-115.08000'), ('HENDERSON', 175381, '36.03370', '-115.00240'), ('HENDERSON EXECUTIVE AIRPO', None, '35.98950', '-115.13200'), ('JEAN', None, '35.77660', '-115.33330'), ('LONE MTN', None, '36.23920', '-115.31250'), ('MOUNTAIN SPRINGS', None, '36.02330', '-115.00750'), ('NELLIS AFB', 8896, '36.24440', '-115.05380'), ('NORTH LAS VEGAS', 115488, '36.26780', '-115.14420'), ('NWS LAS VEGAS', None, '36.05000', '-115.19160'), ("SAM'S TOWN", None, '36.11250', '-115.05500'), ('SLOAN', None, '35.94080', '-115.20500'), ('SPRING VALLEY', 117390, '36.10830', '-115.24160'), ('STRATOSPHERE TOWER', None, '36.14660', '-115.15830'), ('SUMMERLIN', None, '36.20600', '-115.30500'), ('SUNRISE MTN', None, '36.22660', '-114.97500'), ('THE LAKES', None, '36.14200', '-115.29000'), ('THE SILVER BOWL', None, '36.08880', '-115.02250'), ('THE STRIP', None, '36.11660', '-115.17500'), ('UNLV', None, '36.10500', '-115.14000')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, -'NYZ062': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ADEN', None, '41.85000', '-74.68330'), ('ANDERSON', None, '41.90000', '-74.71670'), ('BARRYVILLE', None, '41.48330', '-74.93330'), ('BEAVER BROOK', None, '41.56670', '-74.93330'), ('BETHEL', None, '41.68330', '-74.88330'), ('BLOOMINGBURG', 353, '41.55610', '-74.44150'), ('BRADLEY', None, '41.81670', '-74.70000'), ('BRIDGEVILLE', None, '41.65000', '-74.66670'), ('BRISCOE', None, '41.76670', '-74.88330'), ('CALLICOON', 216, '41.76670', '-75.05000'), ('CALLICOON CENTER', None, '41.83330', '-74.96670'), ('COCHECTON', None, '41.70000', '-75.05000'), ('COCHECTON CENTER', None, '41.83330', '-74.96670'), ('COOKS FALLS', None, '41.93330', '-74.96670'), ('DEBRUCE', None, '41.91670', '-74.73330'), ('ELDRED', None, '41.53330', '-74.90000'), ('FALLSBURG', None, '41.73330', '-74.61670'), ('FERNDALE', None, '41.76670', '-74.73330'), ('FORRESTBURG', None, '41.55000', '-74.76670'), ('FOSTERDALE', None, '41.70000', '-74.98330'), ('FREMONT', None, '41.83330', '-75.05000'), ('GLEN SPEY', None, '41.46670', '-74.81670'), ('GLEN WILD', None, '41.65000', '-74.60000'), ('GRAHAMSVILLE', None, '41.85000', '-74.56670'), ('HARRIS', None, '41.71670', '-74.73330'), ('HARTWOOD', None, '41.53330', '-74.68330'), ('HASBROUCK', None, '41.78330', '-74.61670'), ('HAVEN', None, '41.53330', '-74.53330'), ('HAZEL', None, '41.91670', '-74.86670'), ('HIGHLAND LAKE', None, '41.51670', '-74.86670'), ('HIGHVIEW', None, '41.56670', '-74.46670'), ('HORTONVILLE', None, '41.76670', '-75.03330'), ('HURLEYVILLE', None, '41.73330', '-74.68330'), ('JEFFERSONVILLE', 420, '41.77940', '-74.93260'), ('JOSCELYN', None, '41.95000', '-74.85000'), ('KENOZA LAKE', None, '41.73330', '-74.96670'), ('KIAMESHA', None, '41.68330', '-74.65000'), ('LAVA', None, '41.61670', '-75.01670'), ('LEWBEACH', None, '42.00000', '-74.78330'), ('LIBERTY', 3975, '41.79750', '-74.74640'), ('LIVINGSTON MANOR', 1355, '41.89510', '-74.82650'), ('LOCH SHELDRAKE', None, '41.76670', '-74.66670'), ('MAPLEWOOD', None, '41.66670', '-74.75000'), ('MONGAUP VALLEY', None, '41.66670', '-74.78330'), ('MONTICELLO', 6512, '41.65250', '-74.68800'), ('MOUNTAIN DALE', None, '41.68330', '-74.53330'), ('MT PROSPER', None, '41.60000', '-74.53330'), ('MT VERNON', None, '41.65000', '-74.50000'), ('NEVERSINK', None, '41.81670', '-74.65000'), ('NORTH BRANCH', None, '41.80000', '-75.00000'), ('PARKSTON', None, '41.90000', '-74.78330'), ('PARKSVILLE', None, '41.85000', '-74.76670'), ('PHILLIPSPORT', None, '41.63330', '-74.45000'), ('ROCK HILL', 1056, '41.63330', '-74.60000'), ('ROCKLAND', None, '41.95000', '-74.91670'), ('ROSCOE', 597, '41.93330', '-74.91670'), ('SHANDELEE', None, '41.88330', '-74.88330'), ('SOUTH FALLSBURG', 2061, '41.72060', '-74.63480'), ('SWAN LAKE', None, '41.75000', '-74.78330'), ('THOMPSONVILLE', None, '41.66670', '-74.63330'), ('TUSTEN', None, '41.56670', '-75.01670'), ('TYLERTOWN', None, '41.63330', '-74.95000'), ('WHITE LAKE', None, '41.66670', '-74.83330'), ('WHITE SULPHUR SPRINGS', None, '41.80000', '-74.83330'), ('WILLOWEMOC', None, '41.91670', '-74.66670'), ('WOODBOURNE', None, '41.75000', '-74.60000'), ('WOODRIDGE', 902, '41.71120', '-74.57340'), ('WURTSBORO', 1234, '41.57640', '-74.48540')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ065': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARLINGTON', 12481, '41.69570', '-73.88490'), ('BEACON', 13808, '41.50420', '-73.96600'), ('FAIRVIEW', 2887, '41.73190', '-73.91340'), ('FISHKILL', 1735, '41.53450', '-73.89420'), ('HOPEWELL JUNCTION', 2610, '41.58570', '-73.80130'), ('HYDE PARK', None, '41.78430', '-73.93430'), ('MYERS CORNER', 5546, '41.59710', '-73.86580'), ('PLEASANT VALLEY', 1839, '41.74870', '-73.82050'), ('POUGHKEEPSIE', 29871, '41.69580', '-73.92250'), ('RED HOOK', 1805, '41.99560', '-73.87660'), ('RED OAKS MILL', 4930, '41.65570', '-73.87360'), ('RHINEBECK', 3077, '41.92870', '-73.90750'), ('STAATSBURG', 911, '41.84950', '-73.92480'), ('TIVOLI', 1163, '42.05930', '-73.91110'), ('WAPPINGERS FALLS', 4929, '41.59900', '-73.91850')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ064': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CLINTONDALE', 1424, '41.69180', '-74.04730'), ('HIGHLAND', 5060, '41.71730', '-73.96570'), ('HURLEY', 3561, '41.91380', '-74.05820'), ('KINGSTON', 23456, '41.93010', '-73.99730'), ('LAKE KATRINE', 2396, '41.98330', '-73.99020'), ('LINCOLN PARK', 2337, '41.95760', '-74.00270'), ('MARLBORO', 2339, '41.60320', '-73.97330'), ('NEW PALTZ', 6034, '41.74820', '-74.08190'), ('PORT EWEN', 3650, '41.90620', '-73.97890'), ('ROSENDALE VILLAGE', 1374, '41.84930', '-74.07620'), ('SAUGERTIES', 4955, '42.07480', '-73.94830'), ('TILLSON', 1709, '41.83160', '-74.06920'), ('WALLKILL', 2143, '41.60870', '-74.16470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ067': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BALMVILLE', 3339, '41.52680', '-74.02350'), ('CENTRAL VALLEY', 1857, '41.32890', '-74.12730'), ('CHESTER', 3445, '41.35720', '-74.27620'), ('CORNWALL ON HUDSON', 3058, '41.43870', '-74.01730'), ('FIRTHCLIFFE', 4970, '41.44000', '-74.03420'), ('FLORIDA', 2571, '41.33030', '-74.35430'), ('FORT MONTGOMERY', 1418, '41.33760', '-73.98770'), ('GARDNERTOWN', 4533, '41.53410', '-74.05990'), ('GOSHEN', 5676, '41.40110', '-74.32750'), ('GREENWOOD LAKE', 3411, '41.22200', '-74.28900'), ('HARRIMAN', 2252, '41.30890', '-74.14500'), ('HIGHLAND FALLS', 3678, '41.36270', '-73.96920'), ('HIGHLAND MILLS', 3468, '41.35190', '-74.12680'), ('KIRYAS JOEL', 13138, '41.33990', '-74.16760'), ('MAYBROOK', 3084, '41.48570', '-74.21430'), ('MIDDLETOWN', 25388, '41.44570', '-74.42250'), ('MONROE', 7780, '41.32060', '-74.18630'), ('MONTGOMERY', 3636, '41.52200', '-74.23820'), ('NEW WINDSOR', 9077, '41.47010', '-74.02720'), ('NEWBURGH', 28259, '41.50310', '-74.02010'), ('ORANGE LAKE', 6085, '41.53180', '-74.09420'), ('OTISVILLE', 989, '41.47060', '-74.53990'), ('PINE BUSH', 1539, '41.60890', '-74.29740'), ('PORT JERVIS', 8860, '41.37780', '-74.69130'), ('SCOTCHTOWN', 8954, '41.47620', '-74.36860'), ('TUXEDO PARK', 731, '41.20410', '-74.20720'), ('UNIONVILLE', 536, '41.30200', '-74.56260'), ('VAILS GATE', 3319, '41.45790', '-74.05390'), ('WALDEN', 6164, '41.55970', '-74.18860'), ('WARWICK', 6412, '41.25620', '-74.35550'), ('WASHINGTONVILLE', 5851, '41.42970', '-74.15760'), ('WEST POINT', 7138, '41.36230', '-74.02730')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ066': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMENIA', 1115, '41.84620', '-73.55240'), ('DOVER PLAINS', 1996, '41.74520', '-73.58030'), ('MILLBROOK', 1429, '41.78430', '-73.69470'), ('MILLERTON', 925, '41.95360', '-73.51120'), ('PAWLING', 2233, '41.56330', '-73.59990'), ('PINE PLAINS', 1412, '41.97770', '-73.65840'), ('STANFORDVILLE', None, '41.86580', '-73.71580'), ('WINGDALE', None, '41.64630', '-73.56420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ069': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AIRMONT', 7799, '41.09910', '-74.10040'), ('BARDONIA', 4367, '41.11120', '-73.98140'), ('BLAUVELT', 5207, '41.06800', '-73.95530'), ('CHESTNUT RIDGE', 7829, '41.08190', '-74.05190'), ('CONGERS', 8303, '41.14790', '-73.94670'), ('GRAND VIEW-ON-HUDSON', 284, '41.05840', '-73.90740'), ('HAVERSTRAW', 10117, '41.18530', '-73.95500'), ('HILLBURN', 881, '41.12720', '-74.17040'), ('HILLCREST', 7106, '41.12960', '-74.03590'), ('MONSEY', 14504, '41.11810', '-74.06770'), ('MONTEBELLO', 3688, '41.12880', '-74.11810'), ('MOUNT IVY', 6536, '41.19290', '-74.02870'), ('NANUET', 16707, '41.09520', '-74.01600'), ('NEW CITY', 34038, '41.15380', '-73.99180'), ('NEW HEMPSTEAD', 4767, '41.14960', '-74.04970'), ('NEW SQUARE', 4624, '41.13970', '-74.02860'), ('NYACK', 6737, '41.09010', '-73.91500'), ('ORANGEBURG', 3388, '41.05000', '-73.94560'), ('PEARL RIVER', 15553, '41.06050', '-74.00320'), ('PIERMONT', 2607, '41.03960', '-73.91550'), ('POMONA', 2726, '41.18980', '-74.05370'), ('SLOATSBURG', 3117, '41.16060', '-74.19120'), ('SOUTH NYACK', 3473, '41.07770', '-73.91710'), ('SPRING VALLEY', 25464, '41.11440', '-74.04920'), ('STONY POINT', 11744, '41.22930', '-73.99750'), ('SUFFERN', 11006, '41.11340', '-74.14400'), ('TAPPAN', 6757, '41.02580', '-73.95160'), ('THIELLS', 4758, '41.20760', '-74.01050'), ('UPPER NYACK', 1863, '41.11450', '-73.91450'), ('VALLEY COTTAGE', 9269, '41.11550', '-73.94380'), ('VIOLA', 5931, '41.12940', '-74.08250'), ('WESLEY HILLS', 4848, '41.15760', '-74.07930'), ('WEST HAVERSTRAW', 10295, '41.20640', '-73.98750'), ('WEST NYACK', 3282, '41.09100', '-73.96920')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ068': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BREWSTER', 2162, '41.39680', '-73.61510'), ('BREWSTER HILL', 2226, '41.42380', '-73.60480'), ('CARMEL', None, '41.41450', '-73.68380'), ('COLD SPRING', 1983, '41.41880', '-73.95490'), ('FAHNESTOCK STATE PARK', None, '41.45000', '-73.83000'), ('LAKE CARMEL', 8663, '41.46120', '-73.67030'), ('MAHOPAC', 8478, '41.36950', '-73.74160'), ('PEACH LAKE', 1671, '41.36740', '-73.57840'), ('PUTNAM LAKE', 3855, '41.47770', '-73.55000'), ('PUTNAM VALLEY', None, '41.34000', '-73.87000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'TXZ206': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BULVERDE', 3761, '29.73620', '-98.45170'), ('CANYON LAKE DAM', None, '29.87500', '-98.26230'), ('FISCHER', None, '29.96660', '-98.26660'), ('GARDEN RIDGE', 1882, '29.63470', '-98.29360'), ('GUADALUPE RIVER STATE PAR', None, '29.87000', '-98.51000'), ('NEW BRAUNFELS', 36494, '29.70430', '-98.11740'), ('SMITHSON VALLEY', None, '29.80770', '-98.20130'), ('SPRING BRANCH', None, '29.86660', '-98.40000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ207': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CIBOLO', 3035, '29.57390', '-98.23280'), ('GERONIMO', 619, '29.66670', '-97.96670'), ('KINGSBURY', 652, '29.65000', '-97.81670'), ('MARION', 1099, '29.57360', '-98.14300'), ('MCQUEENEY', 2527, '29.59790', '-98.04320'), ('NEW BERLIN', 467, '29.46370', '-98.10100'), ('SEGUIN', 22011, '29.57950', '-97.96880'), ('SELMA', 788, '29.58630', '-98.31680'), ('STAPLES', None, '29.78330', '-97.83330'), ('ZORN', None, '29.75000', '-97.96670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ204': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CASTROVILLE', 2664, '29.34800', '-98.87320'), ("D'HANIS", None, '29.32860', '-99.27770'), ('DEVINE', 4140, '29.14540', '-98.90470'), ('HONDO', 7897, '29.35630', '-99.15830'), ('LACOSTE', 1255, '29.30930', '-98.81090'), ('MICO', None, '29.53330', '-98.93330'), ('NATALIA', 1663, '29.19050', '-98.85570'), ('RIO MEDINA', None, '29.43330', '-98.88330'), ('YANCEY', None, '29.15000', '-99.13000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ205': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALAMO HEIGHTS', 7319, '29.48260', '-98.46700'), ('BALCONES HEIGHTS', 3016, '29.49000', '-98.55190'), ('CALAVERAS LAKE', None, '29.28000', '-98.30000'), ('CASTLE HILLS', 4202, '29.52380', '-98.51920'), ('CHINA GROVE', 1247, '29.39560', '-98.34810'), ('CONVERSE', 11508, '29.51380', '-98.31190'), ('CROSS MOUNTAIN', 1524, '29.64520', '-98.65910'), ('ELMENDORF', 664, '29.25850', '-98.33460'), ('FAIR OAKS RANCH', 4695, '29.73610', '-98.63560'), ('GREY FOREST', 418, '29.61410', '-98.68240'), ('HELOTES', 4285, '29.56810', '-98.69350'), ('HILL COUNTRY VILLAGE', 1028, '29.58390', '-98.49180'), ('HOLLYWOOD PARK', 2983, '29.59890', '-98.48490'), ('KIRBY', 8673, '29.46000', '-98.38560'), ('LACKLAND AFB', 7123, '29.38280', '-98.62650'), ('LEON SPRINGS', None, '29.66660', '-98.63330'), ('LEON VALLEY', 9239, '29.49520', '-98.61340'), ('LIVE OAK', 9156, '29.55410', '-98.33980'), ('OLMOS PARK', 2343, '29.47450', '-98.48590'), ('SAN ANTONIO', 1144646, '29.45770', '-98.50540'), ('SAN GERONIMO', None, '29.63000', '-98.80000'), ('SCENIC OAKS', 3279, '29.71060', '-98.67570'), ('SCHERTZ', 18694, '29.55480', '-98.26200'), ('SEA WORLD', None, '29.46000', '-98.70000'), ('SHAVANO PARK', 1754, '29.58410', '-98.55500'), ('SOMERSET', 1550, '29.22760', '-98.65670'), ('ST. HEDWIG', 1875, '29.42430', '-98.21410'), ('TERRELL HILLS', 5019, '29.47730', '-98.44660'), ('THE DOMINION', None, '29.65660', '-98.61620'), ('TIMBERWOOD PARK', 5889, '29.70540', '-98.47810'), ('UNIVERSAL CITY', 14849, '29.55160', '-98.30620'), ('WINDCREST', 5105, '29.51770', '-98.37890')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ202': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALAMO VILLAGE', None, '29.41000', '-100.40000'), ('BRACKETTVILLE', 1876, '29.31780', '-100.41040'), ('SPOFFORD', 75, '29.17240', '-100.41100')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ203': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CONCAN', None, '29.51670', '-99.73330'), ('GARNER STATE PARK', None, '29.57000', '-99.74000'), ('KNIPPA', 739, '29.30000', '-99.63330'), ('MONTELL', None, '29.53330', '-100.01670'), ('REAGAN WELLS', None, '29.55000', '-99.80000'), ('SABINAL', 1586, '29.32140', '-99.46870'), ('UTOPIA', 241, '29.61670', '-99.53330'), ('UVALDE', 14929, '29.21550', '-99.78490')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ200': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AMES', 1079, '30.04690', '-94.73770'), ('CLEVELAND', 7605, '30.34420', '-95.07870'), ('DAISETTA', 1034, '30.11410', '-94.64270'), ('DAYTON', 5709, '30.05040', '-94.89530'), ('DAYTON LAKES', 101, '30.14520', '-94.82150'), ('DEVERS', 416, '30.02760', '-94.58510'), ('HARDIN', 755, '30.15000', '-94.73640'), ('KENEFICK', 667, '30.10880', '-94.85410'), ('LIBERTY', 8033, '30.04600', '-94.79770'), ('NORTH CLEVELAND', 263, '30.36270', '-95.10160'), ('PLUM GROVE', 930, '30.19850', '-95.08740')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ201': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('VILLAGE MILLS', None, '30.49400', '-94.39800'), ('BATSON', None, '30.24920', '-94.60690'), ('HONEY ISLAND', None, '30.39530', '-94.44060'), ('KOUNTZE', 2115, '30.37240', '-94.31550'), ('LUMBERTON', 8731, '30.26450', '-94.20180'), ('SARATOGA', None, '30.28390', '-94.52920'), ('SILSBEE', 6393, '30.34470', '-94.18040'), ('SOUR LAKE', 1667, '30.13600', '-94.40390'), ('THICKET', None, '30.39560', '-94.63000'), ('WILDWOOD', None, '30.51830', '-94.44390')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'KSZ070': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CLIMAX', 64, '37.71930', '-96.22360'), ('EUREKA', 2914, '37.82270', '-96.28840'), ('FALL RIVER', 156, '37.60840', '-96.02850'), ('HAMILTON', 334, '37.98110', '-96.16380'), ('MADISON', 857, '38.13300', '-96.13700'), ('PIEDMONT', None, '37.62000', '-96.37000'), ('SEVERY', 359, '37.62160', '-96.22730'), ('THRALL', None, '38.02000', '-96.32000'), ('VIRGIL', 113, '37.98060', '-96.01080')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'NYZ083': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('GLENS FALLS', 14354, '43.31110', '-73.64550'), ('LAKE GEORGE VILLAGE', None, '43.42560', '-73.71510'), ('LAKE LUZERNE-HADLEY', 2240, '43.31890', '-73.83800'), ('WEST GLENS FALLS', 6721, '43.30260', '-73.68800')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'TXZ208': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FENTRESS', None, '29.75000', '-97.76660'), ('LOCKHART', 11615, '29.87420', '-97.67760'), ('LULING', 5080, '29.68290', '-97.64900'), ('MARTINDALE', 953, '29.84230', '-97.84330'), ('NIEDERWALD', 584, '30.01330', '-97.73690')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ209': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARMINE', 228, '30.14960', '-96.68880'), ('CISTERN', None, '29.81670', '-97.21670'), ('ELLINGER', None, '29.83350', '-96.70300'), ('FAYETTEVILLE', 261, '29.90640', '-96.67440'), ('FLATONIA', 1377, '29.68730', '-97.10750'), ('LA GRANGE', 4478, '29.90870', '-96.87810'), ('MULDOON', None, '29.81670', '-97.06670'), ('ROUND TOP', 77, '30.06440', '-96.69570'), ('SCHULENBURG', 2699, '29.68120', '-96.90690')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'ALZ032': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('AKRON', 521, '32.87610', '-87.73880'), ('GREENSBORO', 2731, '32.70060', '-87.59410'), ('MOUNDVILLE', 1809, '32.99590', '-87.63070'), ('NEWBERN', 231, '32.59130', '-87.53600')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'ALZ033': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('MARION', 3511, '32.63160', '-87.31760'), ('UNIONTOWN', 1636, '32.44700', '-87.50850')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ030': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CUBA', 363, '32.44060', '-88.37430'), ('EMELLE', 31, '32.72850', '-88.31520'), ('EPES', 206, '32.69170', '-88.12600'), ('GAINESVILLE', 220, '32.81530', '-88.15960'), ('GEIGER', 161, '32.87370', '-88.31340'), ('LIVINGSTON', 3297, '32.59880', '-88.18710'), ('YORK', 2854, '32.49600', '-88.29610')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'ALZ031': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BOLIGEE', 369, '32.75300', '-88.02430'), ('EUTAW', 1878, '32.84060', '-87.89150'), ('FORKLAND', 629, '32.64760', '-87.86720'), ('UNION', 227, '32.99340', '-87.90550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'ALZ036': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('GOODWATER', 1633, '33.06040', '-86.05150'), ('ROCKFORD', 428, '32.88760', '-86.21720')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ037': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALEXANDER CITY', 15008, '32.92700', '-85.93400'), ('CAMP HILL', 1273, '32.80010', '-85.65330'), ('DADEVILLE', 3212, '32.83190', '-85.76520'), ('DAVISTON', 267, '33.05510', '-85.63920'), ('GOLDVILLE', 37, '33.08350', '-85.78440'), ("JACKSONS' GAP", 761, '32.88410', '-85.81700'), ('NEW SITE', 848, '33.03520', '-85.77500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ034': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BRENT', 4024, '32.94230', '-87.17620'), ('CENTREVILLE', 2466, '32.95890', '-87.13270'), ('WEST BLOCTON', 1372, '33.11810', '-87.12580')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ035': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CLANTON', 7800, '32.84000', '-86.62470'), ('JEMISON', 2248, '32.96500', '-86.74410'), ('MAPLESVILLE', 672, '32.78570', '-86.87840'), ('THORSBY', 1820, '32.91500', '-86.71410')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ038': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('FIVE POINTS', 146, '33.01710', '-85.35130'), ('HUGULEY', 2953, '32.84310', '-85.24070'), ('LAFAYETTE', None, '32.89950', '-85.40080'), ('LANETT', 7897, '32.86620', '-85.20510'), ('VALLEY', 9198, '32.80900', '-85.17300'), ('WAVERLY', 184, '32.73610', '-85.57610')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ039': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CONSUL', None, '32.26440', '-87.54040'), ('DAYTON', 60, '32.35140', '-87.64220'), ('DEMOPOLIS', 7540, '32.51560', '-87.83920'), ('DIXONS MILL', None, '32.05750', '-87.78780'), ('FAUNSDALE', 87, '32.45980', '-87.59430'), ('HALF ACRE', None, '32.19420', '-87.91210'), ('JEFFERSON', None, '32.38610', '-87.89790'), ('LINDEN', 2424, '32.30500', '-87.79920'), ('MAGNOLIA', None, '32.13580', '-87.66790'), ('MILLER', None, '32.15680', '-87.78550'), ('MYRTLEWOOD', 139, '32.25010', '-87.94980'), ('NANAFALIA', None, '32.11300', '-87.98810'), ('OCTAGON', None, '32.20430', '-87.75550'), ('OLD SPRING HILL', None, '32.43730', '-87.77380'), ('PROVIDENCE', 311, '32.34130', '-87.78150'), ('PUTNAM', None, '32.02190', '-88.03250'), ('SHILOH', 289, '32.12740', '-87.73580'), ('SURGINER', None, '32.05540', '-87.71030'), ('SWEET WATER', 234, '32.09720', '-87.86750'), ('THOMASTON', 383, '32.26610', '-87.62670'), ('US 80 AND AL 28', None, '32.44250', '-87.98570'), ('VINELAND', None, '32.03500', '-87.65960')], 'partOfState': 'SOUTHWEST', 'wfo': 'BMX'}, -'KYZ003': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARLINGTON', 395, '36.79010', '-89.01230'), ('BARDWELL', 799, '36.87260', '-89.01000')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ120': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARGO', None, '37.48120', '-82.06460'), ('ASHCAMP', None, '37.26600', '-82.43460'), ('BELCHER', None, '37.34180', '-82.37400'), ('BELFRY', None, '37.62350', '-82.26760'), ('BIGGS', None, '37.41960', '-82.26670'), ('BOARD TREE', None, '37.53830', '-82.16210'), ('BOLDMAN', None, '37.52970', '-82.61190'), ('CANADA', None, '37.60770', '-82.32570'), ('CEDARVILLE', 52, '37.31410', '-82.35830'), ('CHLOE', None, '37.45180', '-82.47640'), ('COAL RUN', None, '37.51290', '-82.55870'), ('COLEMAN', None, '37.48660', '-82.18640'), ('CONDER', None, '37.67460', '-82.37720'), ('DORTON', None, '37.27670', '-82.57920'), ('ELKHORN CITY', 1060, '37.30290', '-82.34800'), ('FEDSCREEK', None, '37.40160', '-82.24610'), ('FISHTRAP LAKE', None, '37.42510', '-82.36960'), ('FOREST HILLS', 494, '37.64200', '-82.28040'), ('GARDEN VILLAGE', None, '37.42080', '-82.46430'), ('GULNARE', None, '37.62800', '-82.54970'), ('HARDY', None, '37.61580', '-82.24200'), ('HATFIELD STATION', None, '37.72540', '-82.37970'), ('HEENAN', None, '37.66860', '-82.48760'), ('HEISEY', None, '37.66470', '-82.38720'), ('HUDDY', None, '37.59800', '-82.27520'), ('JAMBOREE', None, '37.50600', '-82.13460'), ('JARAD', None, '37.66380', '-82.48100'), ('JONANCY', None, '37.31510', '-82.58430'), ('KIMPER', None, '37.49750', '-82.34990'), ('LOOKOUT', None, '37.31350', '-82.46750'), ('MAJESTIC', None, '37.53650', '-82.10050'), ('MARROWBONE', None, '37.36770', '-82.41280'), ('MCANDREWS', None, '37.56820', '-82.26780'), ('MCCOMBS', None, '37.65390', '-82.58360'), ('META', None, '37.57100', '-82.43710'), ('MOUTHCARD', None, '37.38230', '-82.25480'), ('MYRA', None, '37.28970', '-82.60000'), ('PAW PAW', None, '37.43920', '-82.11090'), ('PHELPS', 1053, '37.50910', '-82.16010'), ('PHYLLIS', None, '37.44290', '-82.33450'), ('PIKEVILLE', 6295, '37.47720', '-82.51380'), ('PISO', None, '37.63610', '-82.46600'), ('RACCOON', None, '37.49130', '-82.44030'), ('ROCKHOUSE', None, '37.32830', '-82.45340'), ('RURAL', None, '37.70450', '-82.36060'), ('SHELBIANA', None, '37.42890', '-82.49290'), ('SHELBY GAP', None, '37.21340', '-82.55660'), ('SIDNEY', None, '37.62120', '-82.35480'), ('SPEIGHT', None, '37.27540', '-82.68150'), ('TOONERVILLE', None, '37.36810', '-82.23060'), ('TURKEY CREEK', None, '37.67090', '-82.30670'), ('VARNEY', None, '37.63840', '-82.42180'), ('VIRGIE', None, '37.33410', '-82.57920'), ('WHITEPOST', None, '37.72850', '-82.34520'), ('WOODMAN', None, '37.51950', '-82.04920'), ('ZEBULON', None, '37.51590', '-82.47440')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'IAZ084': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHARITON', 4573, '41.01760', '-93.30990'), ('DERBY', 131, '40.92990', '-93.45670'), ('LUCAS', 243, '41.03170', '-93.46030'), ('RUSSELL', 559, '40.98040', '-93.20080'), ('WILLIAMSON', 163, '41.08790', '-93.25670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'OKZ029': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ETOWAH', 122, '35.13120', '-97.16870'), ('HALL PARK', 1088, '35.24010', '-97.40680'), ('LEXINGTON', 2086, '35.01820', '-97.33740'), ('MOORE', 41138, '35.32950', '-97.47470'), ('NOBLE', 5260, '35.14090', '-97.37180'), ('NORMAN', 95694, '35.21910', '-97.44190'), ('SLAUGHTERVILLE', 3609, '35.09700', '-97.28240'), ('STELLA', None, '35.32000', '-97.22000')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'IAZ085': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBIA', 3706, '41.02660', '-92.80280'), ('LOVILIA', 583, '41.13540', '-92.90790'), ('MELROSE', 130, '40.98080', '-93.04930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAZ088': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('GEODE STATE PARK', None, '40.81670', '-91.38330'), ('HILLSBORO', 205, '40.83680', '-91.71350'), ('LOWELL', None, '40.83330', '-91.43330'), ('MOUNT PLEASANT', 8751, '40.96310', '-91.54650'), ('MOUNT PLEASANT MUNICIPAL', None, '40.95000', '-91.51670'), ('MOUNT UNION', 132, '41.05740', '-91.39060'), ('NEW LONDON', 1937, '40.92750', '-91.40730'), ('OAKLAND MILLS', None, '40.93330', '-91.61670'), ('OLDS', 249, '41.13330', '-91.54540'), ('ROME', 113, '40.98330', '-91.68070'), ('SALEM', 464, '40.85200', '-91.62070'), ('SWEDESBURG', None, '41.10000', '-91.55000'), ('TRENTON', None, '41.06670', '-91.63330'), ('WAYLAND', 945, '41.14770', '-91.65790'), ('WINFIELD', 1131, '41.12580', '-91.43720')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'AKZ026': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('KAKE', 710, '56.96850', '-133.92500'), ('PETERSBURG', 3224, '56.77400', '-132.86160'), ('PORT PROTECTION', 63, '56.31710', '-133.59810'), ('ROWAN BAY', None, '56.65390', '-134.25120'), ('WHALE PASS', 58, '56.10320', '-133.17270'), ('WRANGELL', 2308, '56.36160', '-132.27160')], 'partOfState': '', 'wfo': 'AJK'}, -'IAZ089': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEAVERDALE', None, '40.85000', '-91.21670'), ('BURLINGTON', 26839, '40.80870', '-91.12290'), ('BURLINGTON REGIONAL AIRPO', None, '40.78330', '-91.13330'), ('DANVILLE', 914, '40.86120', '-91.31400'), ('DODGEVILLE', None, '40.95000', '-91.18330'), ('GARLAND', None, '41.06670', '-91.21670'), ('KINGSTON', None, '40.98330', '-91.03330'), ('KOSSUTH', None, '41.01670', '-91.13330'), ('MEDIAPOLIS', 1644, '41.00820', '-91.16450'), ('MIDDLETOWN', 535, '40.82920', '-91.26080'), ('NORTHFIELD', None, '41.06670', '-91.11670'), ('PLEASANT GROVE', None, '40.96670', '-91.28330'), ('PRARIE GROVE', None, '40.88330', '-91.25000'), ('SPERRY', None, '40.95000', '-91.15000'), ('SPRING GROVE', None, '40.74330', '-91.16000'), ('WEST BURLINGTON', 3161, '40.82350', '-91.17860'), ('YARMOUTH', None, '41.03330', '-91.31670')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'AKZ027': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CRAIG', 1397, '55.48280', '-133.12320'), ('EDNA BAY', 49, '55.95390', '-133.65070'), ('KLAWOCK', 854, '55.55380', '-133.09100')], 'partOfState': '', 'wfo': 'AJK'}, -'ARZ067': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('HAMPTON', 1579, '33.53670', '-92.46540'), ('HARRELL', 293, '33.51000', '-92.40170'), ('THORNTON', 517, '33.77620', '-92.48920'), ('TINSMAN', 75, '33.62900', '-92.35350')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'AKZ024': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANGOON', 572, '57.47840', '-134.52000')], 'partOfState': '', 'wfo': 'AJK'}, -'AKZ025': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CUBE COVE', 72, '57.93510', '-134.71120'), ('HOBART BAY', 3, '57.46580', '-133.35330'), ('JUNEAU', None, '58.38860', '-134.13340')], 'partOfState': '', 'wfo': 'AJK'}, -'MOZ093': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CLIFF VILLAGE', 33, '37.02530', '-94.51690'), ('DENNIS ACRES', 68, '37.04580', '-94.50410'), ('DIAMOND', 807, '36.99520', '-94.31580'), ('FAIRVIEW', 395, '36.81740', '-94.08800'), ('GRANBY', 2121, '36.91910', '-94.25500'), ('I-44 NEAR MILE MARKER 0', None, '36.99500', '-94.62000'), ('I-44 NEAR MILE MARKER 10', None, '37.04400', '-94.46500'), ('LEAWOOD', 904, '37.03340', '-94.49050'), ('NEOSHO', 10505, '36.86880', '-94.36770'), ('NEWTONIA', 231, '36.87660', '-94.18520'), ('RACINE', None, '36.89600', '-94.52710'), ('REDINGS MILL', 159, '37.01970', '-94.51650'), ('RITCHEY', 76, '36.94410', '-94.18460'), ('SAGINAW', 276, '37.02380', '-94.46790'), ('SENECA', 2135, '36.84130', '-94.61080'), ('SHOAL CREEK DRIVE', 346, '37.03750', '-94.52320'), ('SHOAL CREEK ESTATES', 51, '37.01870', '-94.49410'), ('SILVER CREEK', 608, '37.03880', '-94.47190'), ('STARK CITY', 156, '36.86220', '-94.18550'), ('STELLA', 178, '36.76130', '-94.19100'), ('WENTWORTH', 141, '36.99330', '-94.07410')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'AKZ023': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('SITKA', None, '57.21410', '-135.44680')], 'partOfState': '', 'wfo': 'AJK'}, -'SCZ008': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BLACKSBURG', 1880, '35.12110', '-81.51870'), ('GAFFNEY', 12968, '35.07230', '-81.65610'), ('SARATT', None, '34.89580', '-81.54030'), ('THICKETTY', None, '35.01640', '-81.72500')], 'partOfState': '', 'wfo': 'GSP'}, -'SCZ009': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BULLOCK CREEK', None, '34.85420', '-81.41190'), ('CATAWBA', None, '34.85280', '-80.91140'), ('CLOVER', 4014, '35.11210', '-81.22710'), ('FORT MILL', 7587, '35.00610', '-80.94350'), ('HICKORY GROVE', 337, '34.98200', '-81.41550'), ('KINGS MOUNTAIN STATE PARK', None, '35.13560', '-81.36940'), ('LAKE WYLIE', 3061, '35.11080', '-81.05390'), ('MCCONNELLS', 287, '34.86870', '-81.22760'), ('ROCK HILL', 49765, '34.93930', '-81.02840'), ('SHARON', 421, '34.95400', '-81.34430'), ('SMYRNA', 59, '35.04200', '-81.41130'), ('TEGA CAY', 4044, '35.03470', '-81.01880'), ('YORK', 6985, '34.99520', '-81.23610')], 'partOfState': '', 'wfo': 'GSP'}, -'IDZ018': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CLAYTON', 27, '44.25910', '-114.39850'), ('CUSTER', None, '44.38000', '-114.68000'), ('OBSIDIAN', None, '44.00000', '-114.83000'), ('STANLEY', 100, '44.21580', '-114.93700'), ('SUNBEAM', None, '44.27000', '-114.73000')], 'partOfState': 'CENTRAL', 'wfo': 'PIH'}, -'IDZ019': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ASHTON', 1129, '44.07340', '-111.44860'), ('BIG SPRINGS', None, '44.50000', '-111.25000'), ('CHESTER', None, '44.00000', '-111.57000'), ('CLEMENTSVILLE', None, '43.87000', '-111.37000'), ('DRIGGS', 1100, '43.72530', '-111.10710'), ('DRUMMOND', 15, '43.99890', '-111.34160'), ('DUBOIS', 647, '44.17350', '-112.22940'), ('EGIN', None, '43.93000', '-111.83000'), ('FELT', None, '43.87000', '-111.18000'), ('HUMPHREY', None, '44.48000', '-112.23000'), ('IDMON', None, '44.37000', '-111.90000'), ('ISLAND PARK', 215, '44.55690', '-111.33700'), ('JUDKINS', None, '43.92000', '-111.15000'), ('KILGORE', None, '44.40000', '-111.88000'), ('MACKS INN', None, '44.50000', '-111.33000'), ('MARYSVILLE', None, '44.07000', '-111.42000'), ('NEWDALE', 358, '43.88610', '-111.60410'), ('PARKER', 319, '43.95860', '-111.75840'), ('REA', None, '44.47000', '-111.43000'), ('SMALL', None, '44.22000', '-112.38000'), ('SPENCER', 38, '44.38080', '-112.18640'), ('SQUIRREL', None, '44.03000', '-111.30000'), ('ST. ANTHONY', 3342, '43.96620', '-111.68370'), ('TETON', 569, '43.88780', '-111.66850'), ('TETONIA', 247, '43.81590', '-111.15880'), ('VICTOR', 840, '43.60370', '-111.11330'), ('WARM RIVER', 10, '44.11960', '-111.32270')], 'partOfState': '', 'wfo': 'PIH'}, -'SCZ002': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('NINE TIMES', None, '34.91500', '-82.84420'), ('PUMPKINTOWN', None, '35.00280', '-82.65310'), ('ROCKY BOTTOM', None, '35.04580', '-82.80250')], 'partOfState': '', 'wfo': 'GSP'}, -'SCZ003': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CAESARS HEAD', None, '35.10330', '-82.61420'), ('CLEVELAND', None, '35.07220', '-82.52750'), ('GOWENSVILLE', None, '35.11470', '-82.22530'), ('MARIETTA', None, '35.03350', '-82.49420'), ('TIGERVILLE', None, '35.07100', '-82.37120')], 'partOfState': '', 'wfo': 'GSP'}, -'IDZ016': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BLISS', 275, '42.92620', '-114.94910'), ('BUHL', 3985, '42.59860', '-114.76070'), ('CASTLEFORD', 277, '42.52130', '-114.87110'), ('EDEN', 411, '42.60520', '-114.20870'), ('FILER', 1620, '42.56890', '-114.60890'), ('GOODING', 3384, '42.93810', '-114.71260'), ('HAGERMAN', 656, '42.81700', '-114.89670'), ('HANSEN', 970, '42.53130', '-114.30070'), ('HAZELTON', 687, '42.59480', '-114.13430'), ('JEROME', 7780, '42.72570', '-114.51570'), ('KIMBERLY', 2614, '42.53420', '-114.36450'), ('MURTAUGH', 139, '42.49190', '-114.16020'), ('TWIN FALLS', 34469, '42.56150', '-114.46280'), ('WENDELL', 2338, '42.77610', '-114.70180')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BOI'}, -'SCZ001': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('LONG CREEK', None, '34.77330', '-83.25920'), ('MOUNTAIN REST', None, '34.86920', '-83.15330'), ('SALEM', 126, '34.89150', '-82.97790'), ('WALHALLA', 3801, '34.77200', '-83.06180'), ('WESTMINSTER', 2743, '34.66620', '-83.09160')], 'partOfState': '', 'wfo': 'GSP'}, -'IDZ010': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BAKER', None, '45.09472', '-113.73361'), ('CARMEN', None, '45.24250', '-113.89250'), ('ELLIS', None, '44.69194', '-114.04750'), ('GIBBONSVILLE', None, '45.55556', '-113.92222'), ('GILMORE', None, '44.45889', '-113.26889'), ('LEADORE', 90, '44.68028', '-113.35722'), ('LEMHI', None, '44.85167', '-113.61889'), ('MAY', None, '44.60444', '-113.91111'), ('NICHOLIA', None, '44.36000', '-113.01083'), ('NORTH FORK', None, '45.40611', '-113.99306'), ('PATTERSON', None, '44.52361', '-113.71139'), ('SALMON', 3122, '45.17583', '-113.89500'), ('TENDOY', None, '44.95944', '-113.64389'), ('WILLIAMS LAKE', None, '45.01194', '-113.96500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MSO'}, -'SCZ007': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BOILING SPRINGS SC', None, '35.04500', '-81.97670'), ('CAMPOBELLO', 449, '35.11660', '-82.14940'), ('CHESNEE', 1003, '35.14790', '-81.86280'), ('COWPENS', 2279, '35.01880', '-81.80360'), ('CROSS ANCHOR', None, '34.64280', '-81.85810'), ('DUNCAN', 2870, '34.93560', '-82.13700'), ('ENOREE', None, '34.65640', '-81.96530'), ('FINGERVILLE', None, '35.13390', '-82.00670'), ('INMAN', 1884, '35.05200', '-82.09330'), ('LANDRUM', 2472, '35.17420', '-82.18700'), ('LYMAN', 2659, '34.95140', '-82.12330'), ('MAYO', 1842, '35.08450', '-81.85440'), ('MOORE', None, '34.83330', '-81.99220'), ('PACOLET', 2690, '34.89920', '-81.76670'), ('PACOLET MILLS', None, '34.91860', '-81.74720'), ('PAULINE', None, '34.83310', '-81.87250'), ('REIDVILLE', 478, '34.86280', '-82.11440'), ('ROEBUCK', 1725, '34.87610', '-81.96420'), ('SPARTANBURG', 39673, '34.94490', '-81.92830'), ('WELLFORD', 2030, '34.95680', '-82.09720'), ('WOODRUFF', 4229, '34.74040', '-82.03280')], 'partOfState': '', 'wfo': 'GSP'}, -'SCZ004': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('FAIR PLAY', None, '34.51110', '-82.98560'), ('OAKWAY', None, '34.60110', '-83.02580'), ('SENECA', 7652, '34.68610', '-82.95780'), ('TOWNVILLE', None, '34.56360', '-82.89860')], 'partOfState': '', 'wfo': 'GSP'}, -'SCZ005': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CENTRAL', 3522, '34.72330', '-82.78300'), ('CLEMSON', 11939, '34.68400', '-82.81290'), ('DACUSVILLE', None, '34.93530', '-82.55890'), ('EASLEY', 17754, '34.82200', '-82.58800'), ('LIBERTY', 3009, '34.79250', '-82.69540'), ('NORRIS', 847, '34.76480', '-82.75230'), ('PICKENS', 3012, '34.88280', '-82.70810'), ('SIX MILE', 553, '34.80780', '-82.81910')], 'partOfState': '', 'wfo': 'GSP'}, -'TXZ081': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOQUILLAS CANYON', None, '29.22000', '-102.88000'), ('CASTOLON', None, '29.14000', '-103.51000'), ('CHISOS BASIN', None, '29.27000', '-103.30670'), ('LAJITAS', None, '29.26000', '-103.77000'), ('MARATHON', 455, '30.20900', '-103.24000'), ('PANTHER JUNCTION', None, '29.32990', '-103.20000'), ('PERSIMMON GAP', None, '29.66000', '-103.17900'), ('STUDY BUTTE', None, '29.33500', '-103.53000'), ('TERLINGUA', None, '29.32000', '-103.62000'), ('TERLINGUA RANCH LODGE', None, '29.45000', '-103.40000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'WIZ030': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ATHENS', 1095, '45.03000', '-90.08000'), ('BEVENT', None, '44.76000', '-89.38000'), ('BROKAW', 107, '45.03000', '-89.65000'), ('COLBY', 1616, '44.91000', '-90.30000'), ('EDGAR', 1386, '44.91000', '-89.96000'), ('ELDERON', 189, '44.78000', '-89.25000'), ('EVERGREEN', 3611, '44.84000', '-89.64000'), ('FENWOOD', 174, '44.86000', '-90.01000'), ('GALLOWAY', None, '44.71000', '-89.26000'), ('HALDER', None, '44.79000', '-89.86000'), ('HAMBURG', None, '45.08000', '-89.88000'), ('HATLEY', 476, '44.88000', '-89.33000'), ('HOGARTY', None, '45.03000', '-89.31000'), ('KNOWLTON', None, '44.71000', '-89.68000'), ('LITTLE CHICAGO', None, '45.04000', '-89.84000'), ('MARATHON CITY', 1640, '44.95000', '-89.84000'), ('MILAN', None, '44.97000', '-90.19000'), ('MOON', None, '44.76000', '-89.78000'), ('MOSINEE', 4063, '44.78000', '-89.69000'), ('NORRIE', None, '44.88000', '-89.25000'), ('NUTTERVILLE', None, '45.00000', '-89.50000'), ('PIKE LAKE', None, '44.81000', '-89.34000'), ('PONIATOWSKI', None, '44.98000', '-89.98000'), ('RIB FALLS', None, '44.96000', '-89.90000'), ('RIB MOUNTAIN', 6059, '44.91290', '-89.67540'), ('RIB MOUNTAIN STATE PARK', None, '44.92000', '-89.67000'), ('RINGLE', None, '44.90000', '-89.41000'), ('ROTHSCHILD', 4970, '44.88000', '-89.61000'), ('ROZELLVILLE', None, '44.75000', '-90.01000'), ('SCHOFIELD', 2117, '44.90000', '-89.59000'), ('SPENCER', 1932, '44.76000', '-90.28000'), ('STRATFORD', 1523, '44.79000', '-90.08000'), ('SUNSET', None, '44.98000', '-89.48000'), ('UNITY', 368, '44.84000', '-90.31000'), ('WAUSAU', 38426, '44.96000', '-89.63000'), ('WESTON', 12079, '44.89910', '-89.56950')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'WIZ033': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARCADIA', 2402, '44.25240', '-91.49340'), ('BEACH CORNERS', None, '44.20102', '-91.23327'), ('BLAIR', 1273, '44.29590', '-91.22990'), ('CENTERVILLE', None, '44.07126', '-91.45075'), ('CHIMNEY ROCK', None, '44.46601', '-91.41603'), ('DODGE', None, '44.13340', '-91.56223'), ('ELEVA', 635, '44.57640', '-91.47030'), ('ELK CREEK', None, '44.43129', '-91.39958'), ('ETTRICK', 521, '44.16980', '-91.26610'), ('FRENCHVILLE', None, '44.14985', '-91.31734'), ('GALESVILLE', 1427, '44.08420', '-91.35620'), ('HEGG', None, '44.21746', '-91.20038'), ('IDUNA', None, '44.19736', '-91.31734'), ('INDEPENDENCE', 1244, '44.36220', '-91.41930'), ('OSSEO', 1669, '44.57830', '-91.21810'), ('PIGEON FALLS', 388, '44.42470', '-91.20820'), ('PLEASANTVILLE', None, '44.44591', '-91.30272'), ('STRUM', 1001, '44.55290', '-91.38620'), ('TAMARACK', None, '44.18274', '-91.46720'), ('TREMPEALEAU', 1319, '44.00700', '-91.43600'), ('WHITEHALL', 1651, '44.36580', '-91.31370')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'WIZ032': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMA', 942, '44.33100', '-91.92220'), ('BUFFALO', None, '44.22350', '-91.86940'), ('COCHRANE', 435, '44.22880', '-91.83660'), ('CREAM', None, '44.31615', '-91.76509'), ('FOUNTAIN CITY', 983, '44.11980', '-91.69780'), ('GILMANTON', None, '44.46418', '-91.68285'), ('MARSHLAND', None, '44.08223', '-91.56041'), ('MAXVILLE', None, '44.56470', '-92.00267'), ('MISHA MOKWA', None, '44.51536', '-92.00267'), ('MODENA', None, '44.45139', '-91.79982'), ('MONDOVI', 2634, '44.56890', '-91.66950'), ('MONTANA', None, '44.34905', '-91.66640'), ('NELSON', 395, '44.42360', '-92.00490'), ('PRAAG', None, '44.38194', '-91.75047'), ('TELL', None, '44.38194', '-91.86744'), ('URNE', None, '44.50074', '-91.90033'), ('WAUMANDEE', None, '44.29788', '-91.69930')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'WIZ035': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARPIN', 337, '44.54000', '-90.03000'), ('AUBURNDALE', 738, '44.63000', '-90.00000'), ('BABCOCK', None, '44.29000', '-90.13000'), ('BAKERVILLE', None, '44.63000', '-90.21000'), ('BETHEL', None, '44.53000', '-90.08000'), ('BIRON', 915, '44.43000', '-89.78000'), ('BLENKER', None, '44.61000', '-89.91000'), ('DEXTERVILLE', None, '44.38000', '-90.11000'), ('HEWITT', 670, '44.63000', '-90.13000'), ('LINDSEY', None, '44.54000', '-90.30000'), ('MARSHFIELD', 18800, '44.66000', '-90.16000'), ('MILLADORE', 268, '44.59000', '-89.86000'), ('NEKOOSA', 2590, '44.31000', '-89.88000'), ('PITTSVILLE', 866, '44.45000', '-90.13000'), ('PORT EDWARDS', 1944, '44.33000', '-89.84000'), ('RUDOLPH', 423, '44.50000', '-89.80000'), ('SHERRY', None, '44.58000', '-89.91000'), ('VESPER', 541, '44.48000', '-89.96000'), ('WISCONSIN RAPIDS', 18435, '44.40000', '-89.84000')], 'partOfState': 'CENTRAL', 'wfo': 'GRB'}, -'WIZ034': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALMA CENTER', 446, '44.43660', '-90.91300'), ('BLACK RIVER FALLS', 3618, '44.29870', '-90.84700'), ('BUCKHOLZ CORNERS', None, '44.14985', '-91.11631'), ('DISCO', None, '44.26864', '-90.99935'), ('FALL HALL GLEN', None, '44.21564', '-90.83487'), ('FRANKLIN', 29494, '44.21564', '-91.11631'), ('HATFIELD', None, '44.41667', '-90.73070'), ('HIXTON', 446, '44.38400', '-91.01110'), ('IRVING', None, '44.18640', '-90.89883'), ('LEVIS', None, '44.53729', '-91.09986'), ('MELROSE', 529, '44.13200', '-90.99680'), ('MERRILLAN', 585, '44.45100', '-90.83660'), ('MILLSTON', None, '44.19919', '-90.64846'), ('NORTH BEND', None, '44.09867', '-91.11814'), ('NORTH BRANCH', None, '44.45139', '-91.00117'), ('NORTHFIELD', None, '44.46601', '-91.09986'), ('PRAY', None, '44.36915', '-90.49860'), ('PRICE', None, '44.57932', '-91.05052'), ('REQUA', None, '44.58115', '-91.13367'), ('SHAMROCK', None, '44.18091', '-90.79832'), ('SHEPPARD', None, '44.25036', '-90.75080'), ('SPAULDING', None, '44.36184', '-90.42732'), ('TAYLOR', 513, '44.32210', '-91.12120'), ('VAUDREUIL', None, '44.31067', '-90.81111'), ('WATERBURY', None, '44.38377', '-90.59729'), ('YORK', None, '44.43494', '-91.13459')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ARX'}, -'KYZ019': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('MASONVILLE', 1075, '37.67310', '-87.03450'), ('MOSELEYVILLE', None, '37.66300', '-87.19330'), ('OWENSBORO', 54067, '37.75930', '-87.11930'), ('WHITESVILLE', 632, '37.68390', '-86.86980')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYZ018': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CORYDON', 744, '37.73970', '-87.70650'), ('HEBBARDSVILLE', None, '37.77610', '-87.37520'), ('HENDERSON', 27373, '37.83990', '-87.58200')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYZ017': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CROFTON', 838, '37.04810', '-87.48340'), ('FORT CAMPBELL NORTH', 14338, '36.65360', '-87.45970'), ('HAWKINS', None, '37.02910', '-87.65050'), ('HERNDON', None, '36.71290', '-87.60120'), ('HOPKINSVILLE', 30089, '36.85440', '-87.49090'), ('LAFAYETTE', 193, '36.66010', '-87.65820'), ('OAK GROVE', 7064, '36.66800', '-87.42730'), ('PEMBROKE', 797, '36.77400', '-87.35880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'KYZ016': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DAWSON SPRINGS', 2980, '37.17270', '-87.68860'), ('EARLINGTON', 1649, '37.27340', '-87.51550'), ('HANSON', 625, '37.41740', '-87.47210'), ('MADISONVILLE', 19307, '37.33660', '-87.50540'), ('MORTONS GAP', 952, '37.23710', '-87.47180'), ('NEBO', 220, '37.38440', '-87.64140'), ('NORTONVILLE', 1264, '37.18630', '-87.45740'), ('ST. CHARLES', 309, '37.18800', '-87.55690'), ('WHITE PLAINS', 800, '37.18770', '-87.38640')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYZ015': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CLAY', 1179, '37.47690', '-87.82040'), ('DIXON', 632, '37.51720', '-87.69070'), ('PROVIDENCE', 3611, '37.39920', '-87.75020'), ('SEBREE', 1558, '37.60400', '-87.52860'), ('SLAUGHTERS', 238, '37.49130', '-87.50120'), ('WHEATCROFT', 173, '37.48930', '-87.86120')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYZ014': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRECKINRIDGE CENTER', 1874, '37.68270', '-87.86310'), ('MORGANFIELD', 3494, '37.68420', '-87.90690'), ('STURGIS', 2030, '37.54590', '-87.98730'), ('UNIONTOWN', 1064, '37.77330', '-87.93220'), ('WAVERLY', 297, '37.70970', '-87.81530')], 'partOfState': 'NORTHWEST', 'wfo': 'PAH'}, -'KYZ013': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FREDONIA', 420, '37.20910', '-88.05880'), ('FRYER', None, '37.26220', '-87.81970'), ('PRINCETON', 6536, '37.10700', '-87.88470')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ012': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CADIZ', 2373, '36.86970', '-87.82330'), ('CANTON', None, '36.79880', '-87.96080'), ('LINTON', None, '36.68660', '-87.91860'), ('ROCKCASTLE', None, '36.89970', '-87.98720')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ011': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('EDDYVILLE', 2350, '37.07530', '-88.07930'), ('KUTTAWA', 596, '37.06190', '-88.10960')], 'partOfState': '', 'wfo': 'PAH'}, -'KYZ010': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DYCUSBURG', 39, '37.16000', '-88.18490'), ('MARION', 3196, '37.33150', '-88.07920')], 'partOfState': '', 'wfo': 'PAH'}, -'NDZ020': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('CENTER', 678, '47.11500', '-101.29690'), ('FORT CLARK', None, '47.23330', '-101.25000'), ('HANNOVER', None, '47.11670', '-101.43330'), ('HENSLER', None, '47.25000', '-101.08330'), ('PRICE', None, '47.08330', '-100.95000'), ('SANGER', None, '47.18330', '-101.00000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'NDZ021': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BENEDICT', 53, '47.83050', '-101.08370'), ('BUTTE', 92, '47.83740', '-100.66590'), ('COLEHARBOR', 106, '47.54240', '-101.22120'), ('EMMET', None, '47.65000', '-101.65000'), ('GARRISON', 1318, '47.65370', '-101.42340'), ('MAX', 278, '47.81970', '-101.29090'), ('MERCER', 86, '47.49100', '-100.71020'), ('RAUB', None, '47.75000', '-102.05000'), ('RIVERDALE', 273, '47.49660', '-101.36550'), ('ROSEGLEN', None, '47.75000', '-101.83330'), ('RUSO', 6, '47.83650', '-100.93350'), ('TURTLE LAKE', 580, '47.52150', '-100.89030'), ('UNDERWOOD', 812, '47.45430', '-101.14120'), ('WASHBURN', 1389, '47.29130', '-101.02720'), ('WHITE SHIELD', 348, '47.66130', '-101.84480'), ('WILTON', 807, '47.15870', '-100.78400')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BIS'}, -'GAZ066': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('HOGANSVILLE', 2774, '33.16860', '-84.90250'), ('LA GRANGE', None, '33.04140', '-85.03460'), ('WEST POINT', 3382, '32.87860', '-85.16790')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'ILZ074': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ADDIEVILLE', 267, '38.39170', '-89.48740'), ('ASHLEY', 613, '38.32910', '-89.18940'), ('BEAUCOUP', None, '38.34980', '-89.29210'), ('CORDES', None, '38.29610', '-89.45720'), ('COVINGTON', None, '38.45480', '-89.43590'), ('DU BOIS', 222, '38.22190', '-89.21280'), ('ELKTON', None, '38.29190', '-89.55680'), ('FROGTOWN', None, '38.44230', '-89.49180'), ('HOYLETON', 520, '38.44530', '-89.27160'), ('HUEGELY', None, '38.40570', '-89.31840'), ('IRVINGTON', 736, '38.43710', '-89.16240'), ('JOHANNISBURG', None, '38.38450', '-89.65320'), ('LIVELY GROVE', None, '38.30000', '-89.61700'), ('NASHVILLE', 3147, '38.34810', '-89.37770'), ('NEW MINDEN', 204, '38.43750', '-89.37090'), ('OAKDALE', 213, '38.26380', '-89.50490'), ('OKAWVILLE', 1355, '38.43420', '-89.54830'), ('POSEN', 4730, '38.25830', '-89.33570'), ('RADOM', 395, '38.28060', '-89.19180'), ('RICHVIEW', 308, '38.37560', '-89.18370'), ('STONE CHURCH', None, '38.35040', '-89.62450'), ('VENEDY', 137, '38.39590', '-89.64590'), ('WAMAC', 1378, '38.50020', '-89.14570')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'INZ089': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ADYEVILLE', None, '38.20000', '-86.76670'), ('APALONA', None, '38.15000', '-86.63330'), ('BANDON', None, '38.13330', '-86.60000'), ('BRANCHVILLE', None, '38.16670', '-86.58330'), ('BRISTOW', None, '38.13330', '-86.71670'), ('CANNELTON', 1209, '37.91010', '-86.73680'), ('DERBY', None, '38.03330', '-86.53330'), ('DEXTER', None, '38.06670', '-86.48330'), ('DODD', None, '37.91670', '-86.66670'), ('DOOLITTLE MILLS', None, '38.25000', '-86.60000'), ('GATCHEL', None, '38.05000', '-86.65000'), ('GERALD', None, '38.00000', '-86.56670'), ('LEOPOLD', None, '38.10000', '-86.58330'), ('MAGNET', None, '38.10000', '-86.46670'), ('MT. PLEASANT', None, '38.11670', '-86.51670'), ('ORIOLE', None, '38.16670', '-86.50000'), ('ROME', None, '37.93330', '-86.52500'), ('SASSAFRAS', None, '38.18330', '-86.68330'), ('SIBERIA', None, '38.23330', '-86.73330'), ('ST. CROIX', None, '38.23330', '-86.58330'), ('TELL CITY', 7845, '37.94990', '-86.75740'), ('TERRY', None, '38.08330', '-86.63330'), ('TOBINSPORT', None, '37.85500', '-86.63330'), ('UNIONTOWN', None, '38.23330', '-86.66670')], 'partOfState': '', 'wfo': 'LMK'}, -'INZ088': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CHRISNEY', 544, '38.01230', '-87.03410'), ('DALE', 1568, '38.16720', '-86.98660'), ('GENTRYVILLE', 262, '38.10880', '-87.03040'), ('GRANDVIEW', 696, '37.93800', '-86.98310'), ('ROCKPORT', 2160, '37.88370', '-87.05090'), ('SANTA CLAUS', 2041, '38.11550', '-86.92510')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'ILZ075': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELLE RIVE', 371, '38.23200', '-88.73990'), ('BLUFORD', 785, '38.32630', '-88.73560'), ('BONNIE', 424, '38.20150', '-88.90750'), ('DIX', 494, '38.44060', '-88.94240'), ('INA', 2455, '38.15220', '-88.90370'), ('MOUNT VERNON', 16269, '38.31760', '-88.91100'), ('NASON', 234, '38.17630', '-88.96590'), ('WALTONVILLE', 422, '38.21320', '-89.03910'), ('WOODLAWN', 630, '38.33050', '-89.03530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PAH'}, -'AKZ028': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANNETTE', None, '55.04210', '-131.58580'), ('DORA BAY', None, '55.18900', '-132.29520'), ('HOLLIS', 139, '55.55670', '-132.63630'), ('KASAAN', 39, '55.54670', '-132.40410'), ('KETCHIKAN', 7922, '55.35250', '-131.65960'), ('METLAKATLA', 1375, '55.12460', '-131.58060'), ('MEYERS CHUCK', 21, '55.71490', '-132.22300'), ('NAUKATI BAY', 135, '55.87370', '-133.18480'), ('POLK INLET', None, '55.34970', '-132.54590'), ('SAXMAN', 431, '55.32460', '-131.59220'), ('THORNE BAY', 557, '55.65920', '-132.52470')], 'partOfState': '', 'wfo': 'AJK'}, -'INZ081': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FORT BRANCH', 2320, '38.24680', '-87.57480'), ('FRANCISCO', 543, '38.33400', '-87.44860'), ('HAUBSTADT', 1529, '38.20310', '-87.57480'), ('HAZLETON', 288, '38.48900', '-87.54040'), ('MACKEY', 142, '38.24990', '-87.39070'), ('OAKLAND CITY', 2588, '38.34000', '-87.34800'), ('OWENSVILLE', 1322, '38.27170', '-87.69060'), ('PATOKA', 749, '38.40580', '-87.58750'), ('PRINCETON', 8175, '38.35570', '-87.56920'), ('SOMERVILLE', 312, '38.27770', '-87.37680')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'INZ080': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('PATRIOT', 202, '38.83820', '-84.82780')], 'partOfState': '', 'wfo': 'ILN'}, -'INZ083': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BIRDSEYE', 465, '38.31360', '-86.69590'), ('BRETZVILLE', None, '38.30000', '-86.86670'), ('CELESTINE', None, '38.38330', '-86.78330'), ('CRYSTAL', None, '38.48330', '-86.75000'), ('CUZCO', None, '38.48330', '-86.71670'), ('DUBOIS', None, '38.45000', '-86.80000'), ('DUFF', None, '38.30000', '-87.05000'), ('FERDINAND', 2277, '38.22830', '-86.86210'), ('HAYSVILLE', None, '38.48330', '-86.91670'), ('HILLHAM', None, '38.51670', '-86.70000'), ('HOLLAND', 695, '38.24590', '-87.03840'), ('HUNTINGBURG', 5598, '38.29810', '-86.95870'), ('IRELAND', None, '38.41670', '-87.00000'), ('JASPER', 12100, '38.39320', '-86.93520'), ('JOHNSBURG', None, '38.21670', '-86.95000'), ('KELLERVILLE', None, '38.48330', '-86.83330'), ('KYANA', None, '38.30000', '-86.78330'), ('MALTERSVILLE', None, '38.35000', '-86.88330'), ('MENTOR', None, '38.31670', '-86.71670'), ('NORTON', None, '38.50000', '-86.70000'), ('PORTERSVILLE', None, '38.50000', '-86.98330'), ('SCHNELLVILLE', None, '38.33330', '-86.75000'), ('ST. ANTHONY', None, '38.31670', '-86.83330'), ('ST. HENRY', None, '38.21670', '-86.93330'), ('ST. MARKS', None, '38.30000', '-86.81670'), ('THALES', None, '38.51670', '-86.80000')], 'partOfState': '', 'wfo': 'LMK'}, -'INZ082': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('PETERSBURG', 2570, '38.49170', '-87.28170'), ('SPURGEON', 227, '38.25560', '-87.25940'), ('WINSLOW', 881, '38.38380', '-87.21270')], 'partOfState': '', 'wfo': 'PAH'}, -'INZ085': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CYNTHIANA', 693, '38.18690', '-87.70880'), ('GRIFFIN', 160, '38.20430', '-87.91530'), ('MOUNT VERNON', 7478, '37.93600', '-87.89870'), ('NEW HARMONY', 916, '38.12850', '-87.93250'), ('POSEYVILLE', 1187, '38.17020', '-87.78280')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'INZ084': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALTON', 53, '38.12230', '-86.42120'), ('BEECHWOOD', None, '38.20000', '-86.41670'), ('BROWNSTOWN', 2978, '38.38330', '-86.50000'), ('CAPE SANDY', None, '38.15000', '-86.36670'), ('CAREFREE', None, '38.24330', '-86.35790'), ('CURBY', None, '38.23880', '-86.38330'), ('DEUCHARS', None, '38.16670', '-86.45000'), ('ECKERTY', None, '38.31670', '-86.61670'), ('ENGLISH', 673, '38.33300', '-86.46330'), ('FREDONIA', None, '38.18330', '-86.40000'), ('GRANTSBURG', None, '38.28330', '-86.46670'), ('LEAVENWORTH', 353, '38.20040', '-86.34660'), ('MARENGO', 829, '38.37160', '-86.34370'), ('MIFFLIN', None, '38.30000', '-86.53330'), ('MILLTOWN', 932, '38.34280', '-86.27450'), ('PILOT KNOB', None, '38.28330', '-86.35000'), ('RICEVILLE', None, '38.31670', '-86.66670'), ('RIDDLE', None, '38.25000', '-86.43330'), ('SULPHUR', None, '38.23330', '-86.46670'), ('SULPHUR SPRINGS', 346, '38.21670', '-86.46670'), ('TASWELL', None, '38.33330', '-86.56670'), ('TEMPLE', None, '38.35000', '-86.41670'), ('WEST FORK', None, '38.23330', '-86.53330'), ('WICKLIFFE', None, '38.36670', '-86.63330'), ('WYANDOTTE', None, '38.21670', '-86.30000')], 'partOfState': '', 'wfo': 'LMK'}, -'INZ087': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BOONVILLE', 6834, '38.04510', '-87.27370'), ('CHANDLER', 3094, '38.04200', '-87.36900'), ('ELBERFELD', 636, '38.16120', '-87.44810'), ('LYNNVILLE', 781, '38.19890', '-87.31740'), ('NEWBURGH', 3088, '37.94650', '-87.40370'), ('TENNYSON', 290, '38.08160', '-87.11890')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'INZ086': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('DARMSTADT', 1313, '38.09100', '-87.57620'), ('EVANSVILLE', 121582, '37.98410', '-87.54330'), ('MELODY HILL', 3066, '38.02420', '-87.51320')], 'partOfState': 'SOUTHWEST', 'wfo': 'PAH'}, -'ILZ070': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALMA', 386, '38.72290', '-88.91010'), ('BRUBAKER', None, '38.69310', '-88.87650'), ('CARTTER', None, '38.54110', '-88.91220'), ('CENTRAL CITY', 1371, '38.54800', '-89.12860'), ('CENTRALIA', 14136, '38.52280', '-89.12700'), ('FAIRMAN', None, '38.67780', '-89.10470'), ('HELM', None, '38.51700', '-88.71700'), ('IUKA', 598, '38.61450', '-88.78980'), ('JUNCTION CITY', 559, '38.57730', '-89.12540'), ('KELL', 231, '38.49080', '-88.90420'), ('KINMUNDY', 892, '38.77400', '-88.84960'), ('ODIN', 1122, '38.61640', '-89.05390'), ('OMEGA', None, '38.70450', '-88.78070'), ('PATOKA', 633, '38.75340', '-89.09600'), ('SALEM', 7909, '38.62830', '-88.95180'), ('SANDOVAL', 1434, '38.61130', '-89.11930'), ('SELMAVILLE', None, '38.60700', '-88.99540'), ('STEPHEN FORBES STATE PARK', None, '38.72490', '-88.76380'), ('TONTI', None, '38.66470', '-88.97840'), ('VERNON', 178, '38.80200', '-89.08910'), ('WALNUT HILL', 109, '38.47740', '-89.04420')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LSX'}, -'GAZ152': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ATKINSON', None, '31.22080', '-81.85400'), ('HICKOX', None, '31.14750', '-81.99720'), ('HOBOKEN', 463, '31.18140', '-82.13170'), ('HORTENSE', None, '31.33440', '-81.95750'), ('NAHUNTA', 930, '31.20880', '-81.98120'), ('RAYBON', None, '31.25970', '-81.97270'), ('WAYNESVILLE', None, '31.22700', '-81.79060')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'TXZ126': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('JEFFERSON', 2024, '32.76090', '-94.34910')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'ILZ071': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BIBLE GROVE', None, '38.86670', '-88.43330'), ('CLAY CITY', 1000, '38.68550', '-88.35120'), ('FLORA', 5086, '38.67050', '-88.47880'), ('HORD', None, '38.88330', '-88.51670'), ('INGAHAM', None, '38.83330', '-88.33330'), ('IOLA', 171, '38.83460', '-88.62770'), ('LOUISVILLE', 1242, '38.76950', '-88.50730'), ('OSKALOOSA', None, '38.75000', '-88.65000'), ('SAILOR SPRINGS', 128, '38.76480', '-88.35870'), ('WENDELIN', None, '38.83330', '-88.28330'), ('XENIA', 407, '38.63680', '-88.63710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ILX'}, -'UTZ016': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CEDAR CITY', 20527, '37.67500', '-113.07000'), ('ENOCH', 3467, '37.76220', '-113.04200'), ('HAMILTON FT', None, '37.63000', '-113.13000'), ('LUND', None, '38.00000', '-113.43000'), ('MILFORD', 1451, '38.40000', '-113.02010'), ('MODENA', None, '37.80000', '-113.92000'), ('PARAGONAH', 470, '37.88690', '-112.77160'), ('SUMMIT', None, '37.82000', '-112.97000')], 'partOfState': '', 'wfo': 'SLC'}, -'NVZ034': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('LEE', None, '40.55050', '-115.57150'), ('RUBY LAKE', None, '40.20280', '-115.49270')], 'partOfState': '', 'wfo': 'LKN'}, -'OKZ015': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALEDO', None, '35.83000', '-99.12000'), ('BURMAH', None, '35.83000', '-99.07000'), ('CAMARGO', 115, '36.01780', '-99.28830'), ('CESTOS', None, '36.15000', '-99.10000'), ('FAY', None, '35.82000', '-98.65000'), ('HUCMAC', None, '36.05000', '-98.78000'), ('LEEDEY', 345, '35.86950', '-99.34500'), ('OAKWOOD', 72, '35.93080', '-98.70320'), ('PUTNAM', 46, '35.99960', '-99.23410'), ('RHEA', None, '35.83000', '-99.23000'), ('SEILING', 875, '36.14960', '-98.92470'), ('TALOGA', 372, '36.04020', '-98.96430'), ('VICI', 668, '36.14910', '-99.29890')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'NDZ029': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BLABON', None, '47.40170', '-97.78860'), ('FINLEY', 515, '47.51140', '-97.83710'), ('GOLDEN LAKE', None, '47.57970', '-97.63610'), ('HOPE', 303, '47.32480', '-97.71960'), ('LUVERNE', 44, '47.25030', '-97.93450'), ('SHARON', 109, '47.59710', '-97.89860'), ('SHERBROOKE', None, '47.46080', '-97.71920')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'HIZ005': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('CAPE HALAWA', None, '21.16120', '-156.71270'), ('HALAWA-MOLOKAI', None, '21.16010', '-156.74170'), ('HALENA', None, '21.09280', '-157.23400'), ('HOOLEHUA', None, '21.17040', '-157.07130'), ('HUELO ISLAND', None, '21.17390', '-156.92370'), ('ILIO POINT', None, '21.22060', '-157.26170'), ('KAHIWA FALLS', None, '21.17490', '-156.80920'), ('KALAE', None, '21.16510', '-157.00830'), ('KALAUPAPA', None, '21.19340', '-156.98580'), ('KALAUPAPA AIRPORT', None, '21.20260', '-156.97680'), ('KALAWAO', None, '21.18010', '-156.95120'), ('KALUAAHA', None, '21.06990', '-156.82140'), ('KAMALO', None, '21.05070', '-156.87730'), ('KAMILOLOA', None, '21.08500', '-157.00300'), ('KANAHA ROCK', None, '21.13390', '-156.70790'), ('KAUNAKAKAI', 2726, '21.08860', '-157.01270'), ('KAWELA', None, '21.07220', '-156.96440'), ('KEPUHI', None, '21.19030', '-157.24980'), ('KIPU', None, '21.16550', '-157.02460'), ('KUALAPUU', 1936, '21.16000', '-157.05840'), ('KUKAIWAA POINT', None, '21.17400', '-156.91790'), ('KUKUINUI RIDGE', None, '21.15180', '-156.82930'), ('LEINAOPAPIO POINT', None, '21.17510', '-156.93120'), ('MAALEHU', None, '21.16660', '-157.02310'), ('MAHANA', None, '21.15300', '-157.14850'), ('MAUNALOA', 230, '21.13650', '-157.21390'), ('MOKAPU ISLAND', None, '21.18640', '-156.92620'), ('MOKIO POINT', None, '21.22330', '-157.21450'), ('MOKU', None, '21.07040', '-156.95870'), ('MOKUHOONIKI ISLAND', None, '21.13580', '-156.70570'), ('MOLOKAI AIRPORT', None, '21.15640', '-157.09650'), ('MOOMOMI', None, '21.19990', '-157.15490'), ('OHIAPILI', None, '21.10380', '-157.05050'), ('OKALA ISLAND', None, '21.17770', '-156.93150'), ('PALAAU STATE PARK', None, '21.17900', '-157.00840'), ('PAPALAUA VALLEY', None, '21.16960', '-156.80010'), ('PAPOHAKU BEACH PARK', None, '21.16980', '-157.26490'), ('PAUWALU', None, '21.09140', '-156.77670'), ('PUKOO', None, '21.07640', '-156.79580'), ('UALAPUE', None, '21.06550', '-156.83240'), ('UMIPAA', None, '21.10990', '-157.05560'), ('WAHILAUHUE', None, '21.17040', '-157.25690'), ('WAILAU', None, '21.16860', '-156.83080'), ('WAILUA-MOLOKAI', None, '21.10010', '-156.76150')], 'partOfState': '', 'wfo': 'HFO'}, -'HIZ004': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('AKAKA FALLS S.P.', None, '19.85600', '-155.15450'), ('GLENWOOD', None, '19.49080', '-155.15390'), ('HAENA', None, '19.64550', '-154.98940'), ('HAINA', None, '20.09310', '-155.46980'), ('HAKALAU', None, '19.89950', '-155.12850'), ('HALAULA', 495, '20.23200', '-155.78340'), ('HAWAIIAN BEACHES', 3709, '19.54300', '-154.91570'), ('HAWAIIAN PARADISE PARK', 7051, '19.59330', '-154.97310'), ('HAWI', 938, '20.24280', '-155.83420'), ('HIKAPOLOA', None, '20.24210', '-155.86010'), ('HILO', 40759, '19.69620', '-155.08750'), ('HONOHINA', None, '19.92560', '-155.15550'), ('HONOKAA', 2233, '20.07710', '-155.46740'), ('HONOMAKAU', None, '20.23980', '-155.82080'), ('HONOMU', 541, '19.87270', '-155.11490'), ('KANIAHIKU VILLAGE', None, '19.49040', '-154.92820'), ('KAPAAU', 1159, '20.23070', '-155.81090'), ('KAPOHO', None, '19.50510', '-154.84880'), ('KAPULENA', None, '20.10530', '-155.52980'), ('KEAAU', 2010, '19.61920', '-155.03970'), ('KEAUKAHA', None, '19.73130', '-155.04600'), ('KEOKEA BEACH PARK', None, '20.22940', '-155.74600'), ('KOAE', None, '19.52500', '-154.84510'), ('KUHIO VILLAGE', None, '20.02300', '-155.65940'), ('KUKAIAU', None, '20.03280', '-155.34980'), ('KUKII HEIAU', None, '19.51490', '-154.83440'), ('KUKUIHAELE', 317, '20.12550', '-155.57070'), ('KURTISTOWN', 1157, '19.58910', '-155.07110'), ('LAUPAHOEHOE', 473, '19.97850', '-155.24010'), ('LELEIWI BEACH PARK', None, '19.73440', '-155.01920'), ('MAKAPALA', None, '20.22630', '-155.76290'), ('MOOKINI HEIAU', None, '20.26220', '-155.88020'), ('MOUNTAIN VIEW', 2799, '19.52070', '-155.14920'), ('NINOLE', None, '19.93830', '-155.16740'), ('NIULII', None, '20.22410', '-155.74910'), ('OOKALA', None, '20.01660', '-155.28090'), ('PAAUHAU', None, '20.08550', '-155.43990'), ('PAAUILO', 571, '20.04340', '-155.37170'), ('PAHOA', 962, '19.49870', '-154.94890'), ('PAPAALOA', None, '19.97800', '-155.22210'), ('PAPAIKOU', 1414, '19.79400', '-155.09650'), ('PAUKAA', 495, '19.76440', '-155.09860'), ('PEPEEKEO', 1697, '19.83470', '-155.10880'), ('PUALAA', None, '19.47270', '-154.83520'), ('UPOLU AIRPORT', None, '20.26780', '-155.86110'), ('VOLCANO', 2231, '19.43180', '-155.23790'), ('WAIAKA', None, '20.03040', '-155.70210'), ('WAIMEA', 1787, '20.01660', '-155.63660'), ('WAINAKU', 1227, '19.74730', '-155.10100'), ('WAIPAHOEHOE', None, '19.60370', '-155.01090'), ('WELOKA', None, '19.96010', '-155.20050')], 'partOfState': '', 'wfo': 'HFO'}, -'LAZ029': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BORDELONVILLE', None, '31.10530', '-91.90720'), ('BUNKIE', 4662, '30.95360', '-92.18670'), ('CENTERPOINT', None, '31.24800', '-92.21000'), ('COTTONPORT', 2316, '30.98830', '-92.05290'), ('DUPONT', None, '30.92940', '-91.94810'), ('EFFIE', None, '31.21580', '-92.15560'), ('EVERGREEN', 314, '30.95400', '-92.10600'), ('HAMBURG', None, '31.03060', '-91.93140'), ('HESSMER', 642, '31.05360', '-92.12110'), ('MANSURA', 1573, '31.05800', '-92.05080'), ('MARKSVILLE', 5537, '31.12680', '-92.06310'), ('MOREAUVILLE', 922, '31.03330', '-91.98040'), ('PLAUCHEVILLE', 281, '30.96460', '-91.98290'), ('SIMMESPORT', 2239, '30.98190', '-91.81440')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'LAZ028': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ALEXANDRIA', 46342, '31.29190', '-92.46330'), ('BALL', 3681, '31.41830', '-92.41010'), ('BOYCE', 1190, '31.39000', '-92.66940'), ('CALCASIEU', None, '31.09030', '-92.71280'), ('CHENEYVILLE', 901, '31.01090', '-92.28990'), ('DEVILLE', 1007, '31.34660', '-92.15790'), ('ECHO', None, '31.11100', '-92.24100'), ('FLATWOODS', None, '31.40250', '-92.86810'), ('FOREST HILL', 456, '31.05000', '-92.52460'), ('GARDNER', None, '31.26900', '-92.69300'), ('GLENMORA', 1558, '30.97320', '-92.58280'), ('HINESTON', None, '31.14300', '-92.75900'), ('LECOMPTE', 1366, '31.08890', '-92.39860'), ('MCNARY', 211, '30.98670', '-92.57760'), ('PINEVILLE', 13829, '31.33200', '-92.41500'), ('UNION HILL', None, '30.99400', '-92.73100'), ('WOODWORTH', 1080, '31.15000', '-92.50160')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'HIZ001': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('ALAPII POINT', None, '22.16520', '-159.69940'), ('ANAHOLA', 1932, '22.14720', '-159.31780'), ('ELEELE', 2040, '21.91050', '-159.58430'), ('HANALEI', 478, '22.20900', '-159.50170'), ('HANAMAULU', 3272, '21.99820', '-159.35240'), ('HANAPEPE', 2153, '21.91630', '-159.59040'), ('HANAPEPE HEIGHTS', None, '21.92260', '-159.59110'), ('KAANA', None, '22.10600', '-159.67970'), ('KAAWANUI VILLAGE', None, '21.94610', '-159.63220'), ('KALAHEO', 3913, '21.92080', '-159.52670'), ('KALALAU LOOKOUT', None, '22.15300', '-159.64850'), ('KALIHIWAI', 717, '22.21940', '-159.42150'), ('KAPAA', 9472, '22.09730', '-159.35400'), ('KAPALUA HEIAU', None, '22.09150', '-159.75250'), ('KAUMAKANI', 607, '21.92210', '-159.62810'), ('KAUNALEWA', None, '22.00370', '-159.74050'), ('KEAWANUI', None, '22.15270', '-159.72520'), ('KEKAHA', 3175, '21.97230', '-159.71780'), ('KILAUEA', 2092, '22.21110', '-159.40960'), ('KOHEO POINT', None, '21.89080', '-159.55420'), ('KOKEE SP', None, '22.13320', '-159.65970'), ('KOLOA', 1942, '21.90680', '-159.46430'), ('KUKUIULA', None, '21.88910', '-159.48940'), ('LAWAI', 1984, '21.92490', '-159.50470'), ('LIHUE', 5674, '21.97510', '-159.35440'), ('MAKAHA POINT', None, '22.14290', '-159.73260'), ('MAKAOKAHAI POINT', None, '21.88750', '-159.52960'), ('MAKOLE', None, '22.12070', '-159.73260'), ('MANA', None, '22.03860', '-159.77170'), ('MUKUAIKI POINT', None, '22.16130', '-159.70900'), ('NA PALI COAST S.P.', None, '22.18430', '-159.64210'), ('NUMILA', None, '21.90190', '-159.56010'), ('OMAO', 1221, '21.92510', '-159.48620'), ('PAKALA POINT', None, '21.93520', '-159.65110'), ('PAKALA VILLAGE', 478, '21.94500', '-159.64870'), ('POIPU', 1075, '21.88140', '-159.46240'), ('POKII', None, '21.98370', '-159.71970'), ('POLIHALE HEIAU', None, '22.09950', '-159.74850'), ('POLIHALE STATE PARK', None, '22.08660', '-159.76070'), ('PORT ALLEN', None, '21.90400', '-159.58980'), ('PRINCEVILLE', 1698, '22.22350', '-159.48540'), ('PUANAIEA POINT', None, '22.16650', '-159.69180'), ('PUHI', 1186, '21.96880', '-159.39960'), ('SAKI MANA', None, '22.06020', '-159.76330'), ('SALT POND BEACH PARK', None, '21.90300', '-159.61010'), ('WAILUA', 2083, '22.05790', '-159.34070'), ('WAILUA HOMESTEADS', 4567, '22.06570', '-159.37960'), ('WAIMEA CANYON SP', None, '22.07520', '-159.66670'), ('WAIMEA KAUAI', None, '21.96070', '-159.67520'), ('WELI POINT', None, '21.89650', '-159.57750')], 'partOfState': '', 'wfo': 'HFO'}, -'HIZ003': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('ALAU ISLAND', None, '20.73120', '-155.97680'), ('CRATER RESERVOIR', None, '20.89910', '-156.66810'), ('H.P. BALDWIN B.P.', None, '20.91740', '-156.39640'), ('HAIKU', None, '20.91830', '-156.32360'), ('HALIIMAILE', 895, '20.87630', '-156.34830'), ('HAMOA', None, '20.72360', '-155.98840'), ('HANA', 709, '20.77000', '-155.99420'), ('HAOU', None, '20.69630', '-156.00630'), ('HAPOI VILLAGE', None, '20.88220', '-156.51090'), ('HAPPY VALLEY', None, '20.89500', '-156.51030'), ('HOKUULA', None, '20.72680', '-155.98740'), ('HONOKAHUA', None, '21.00260', '-156.65760'), ('HONOKOHAU', None, '21.02090', '-156.61180'), ('HONOKOWAI', None, '20.95440', '-156.68990'), ('HONOLUA', None, '21.01480', '-156.63930'), ('HONOMAELE', None, '20.80070', '-156.03950'), ('HOOKIPA B.P.', None, '20.93640', '-156.36020'), ('HUELO', None, '20.90770', '-156.22760'), ('HYASHI VILLAGE', None, '20.84050', '-156.50880'), ('KAANAPALI', 1375, '20.93080', '-156.69580'), ('KAELEKU', None, '20.78650', '-156.02580'), ('KAHAKULOA', None, '21.00010', '-156.55400'), ('KAHANA', None, '20.97510', '-156.68140'), ('KAHULUI', 20146, '20.87380', '-156.45930'), ('KAKIO', None, '20.71310', '-155.99660'), ('KALULU', None, '20.58680', '-156.35330'), ('KANAHENA', None, '20.62190', '-156.43930'), ('KAONOULU', None, '20.74060', '-156.33580'), ('KAPALUA', 467, '20.99970', '-156.65810'), ('KAPUNAKEA', None, '20.89060', '-156.68420'), ('KAUPAKULUA', None, '20.89010', '-156.29870'), ('KAUPO', None, '20.63960', '-156.12520'), ('KEANAE', None, '20.86140', '-156.15110'), ('KEAWAKAPU', None, '20.70750', '-156.44780'), ('KEAWALUA', None, '21.02660', '-156.59160'), ('KEOKEA', None, '20.70860', '-156.36010'), ('KEONEOIO', None, '20.60340', '-156.42250'), ('KIHEI', 16749, '20.76380', '-156.45320'), ('KIPAHULU', None, '20.65690', '-156.05790'), ('KOALI', None, '20.68810', '-156.02360'), ('KOKOMO', None, '20.86990', '-156.30930'), ('KUAU', None, '20.93030', '-156.37160'), ('LAHAINA', 9118, '20.89130', '-156.67430'), ('LAHAINALUNA', None, '20.89230', '-156.66260'), ('LAUNIUPOKO', None, '20.85700', '-156.65040'), ('LOWER PAIA', None, '20.91940', '-156.38400'), ('MAALAEA', 454, '20.79670', '-156.51340'), ('MAKAWAO', 6327, '20.85750', '-156.32500'), ('MAKENA', None, '20.65780', '-156.44490'), ('MALA', None, '20.89200', '-156.68700'), ('MOKAE', None, '20.72060', '-155.99570'), ('MOKULAU', None, '20.64550', '-156.11000'), ('MOPUA', None, '20.81460', '-156.61380'), ('MUOLEA', None, '20.68980', '-156.01970'), ('NAHIKU', None, '20.82800', '-156.09510'), ('NAPILI', None, '20.98930', '-156.66730'), ('NUU', None, '20.63190', '-156.18650'), ('OLOWALU', None, '20.81460', '-156.62480'), ('PAIA', 2499, '20.90470', '-156.37490'), ('PAUKUKALO', None, '20.90860', '-156.48760'), ('PAUWELA', None, '20.93380', '-156.32030'), ('PUKAAUHUHU', None, '20.63600', '-156.14910'), ('PUKALANI', 7380, '20.83690', '-156.34100'), ('PULEHU', None, '20.77870', '-156.32880'), ('PUUIKI', None, '20.70460', '-156.00090'), ('PUUKOLII', None, '20.93470', '-156.67690'), ('PUUNENE', None, '20.86410', '-156.45350'), ('PUUNOA', None, '20.88260', '-156.68500'), ('PUUOHALA VILLAGE', None, '20.89930', '-156.51140'), ('SPRECKELSVILLE', None, '20.90820', '-156.41510'), ('UKUMEHAME B.P.', None, '20.79870', '-156.57790'), ('ULAINO', None, '20.80920', '-156.05810'), ('ULUMALU', None, '20.90940', '-156.28730'), ('ULUPALAKUA', None, '20.64910', '-156.40000'), ('WAIAKOA', None, '20.75980', '-156.33150'), ('WAIANAPANAPA S.P.', None, '20.78940', '-156.00460'), ('WAIEHU', None, '20.92140', '-156.49740'), ('WAIEHU VILLAGE', None, '20.91740', '-156.51460'), ('WAIHEE', None, '20.93350', '-156.51380'), ('WAIKAPU', 1115, '20.85400', '-156.50730'), ('WAILEA', None, '20.69100', '-156.44640'), ('WAILUA-MAUI', None, '20.68480', '-156.02750'), ('WAILUKU', 12296, '20.88850', '-156.50680'), ('WAILUKU HEIGHTS', None, '20.87840', '-156.51980'), ('WAINEE', None, '20.87400', '-156.67000'), ('WAIOHULI', None, '20.72140', '-156.34910'), ('WALOPAI', None, '20.62930', '-156.21110')], 'partOfState': '', 'wfo': 'HFO'}, -'HIZ002': {'fullStateName': 'HAWAII', 'state': 'HI', 'cities': [('AHUIMANU', 8506, '21.44120', '-157.83650'), ('AIEA', 9019, '21.38840', '-157.92780'), ('AINA HAINA', None, '21.28870', '-157.75150'), ('ALA MOANA BEACH PARK', None, '21.29230', '-157.85040'), ('ALIAMANU', None, '21.36490', '-157.91440'), ('BARBERS POINT HOUSING', 67, '21.32450', '-158.08320'), ('EWA BEACH', 14650, '21.31620', '-158.01180'), ('EWA GENTRY', 4939, '21.34410', '-158.03080'), ('EWA VILLAGES', 4741, '21.34540', '-158.04090'), ('FORT SHAFTER', None, '21.35360', '-157.87420'), ('HAHAIONE VALLEY', None, '21.30560', '-157.71230'), ('HALAWA', 13891, '21.37940', '-157.92160'), ('HALEIWA', 2225, '21.59550', '-158.10880'), ('HAUULA', 3651, '21.59060', '-157.92330'), ('HAWAII KAI', None, '21.28170', '-157.70250'), ('HEEIA', 4944, '21.42800', '-157.81720'), ('HICKAM HOUSING', 5471, '21.34130', '-157.96140'), ('HONOLULU', 371657, '21.31000', '-157.86090'), ('IROQUOIS POINT', 2462, '21.32530', '-157.98130'), ('IWILEI', None, '21.31980', '-157.87300'), ('KAAAWA', 1324, '21.55740', '-157.85720'), ('KAHALA', None, '21.27280', '-157.78460'), ('KAHALUU', 2935, '21.46200', '-157.83480'), ('KAHUKU', 2097, '21.68220', '-157.94630'), ('KAILUA', 36513, '21.40160', '-157.73850'), ('KAIMUKI', None, '21.28130', '-157.80920'), ('KALANI VALLEY', None, '21.28680', '-157.77300'), ('KALIHI', None, '21.32780', '-157.87880'), ('KALUANUI', None, '21.30750', '-157.70560'), ('KAMEHAMEHA HEIGHTS', None, '21.33760', '-157.86410'), ('KAMILOIKI', None, '21.31330', '-157.68620'), ('KANEOHE', 34970, '21.41110', '-157.79250'), ('KANEOHE STATION', 11827, '21.45010', '-157.75160'), ('KAWELA BAY', 410, '21.70320', '-158.00990'), ('KULIOUOU', None, '21.29420', '-157.72710'), ('LAIE', 4585, '21.64910', '-157.92550'), ('MAILI', 5943, '21.41870', '-158.18040'), ('MAKAHA', 7753, '21.46830', '-158.21510'), ('MAKAHA VALLEY', 1289, '21.48240', '-158.20380'), ('MAKAKILO CITY', 13156, '21.35860', '-158.08840'), ('MAKIKI', None, '21.30980', '-157.83770'), ('MANOA', None, '21.31880', '-157.81010'), ('MAUNALANI HEIGHTS', None, '21.30070', '-157.78920'), ('MAUNAWILI', 4869, '21.37240', '-157.76580'), ('MILILANI TOWN', 28608, '21.44900', '-158.01820'), ('MOILILI', None, '21.29620', '-157.82680'), ('MOKULEIA', 1839, '21.58220', '-158.17880'), ('NANAKULI', 10814, '21.39190', '-158.15650'), ('NIU VALLEY', None, '21.29230', '-157.73930'), ('PEARL CITY', 30976, '21.40470', '-157.96910'), ('PORTLOCK', None, '21.27720', '-157.70960'), ('PUNALUU', 881, '21.59260', '-157.89660'), ('PUPUKEA', 4250, '21.66430', '-158.05350'), ('PUUNUI', None, '21.33860', '-157.85020'), ('SAINT LOUIS HEIGHTS', None, '21.30160', '-157.80670'), ('SCHOFIELD BARRACKS', 14428, '21.49630', '-158.06460'), ('TANTALUS', None, '21.32980', '-157.82300'), ('VILLAGE PARK', 9625, '21.39820', '-158.03020'), ('WAHIAWA', 16151, '21.50290', '-158.02210'), ('WAIALAE', None, '21.27820', '-157.79420'), ('WAIALAE IKI', None, '21.29610', '-157.76170'), ('WAIALUA', 3761, '21.57760', '-158.12850'), ('WAIANAE', 10506, '21.44940', '-158.18400'), ('WAIKANE', 726, '21.50140', '-157.87520'), ('WAIKIKI', None, '21.28230', '-157.83010'), ('WAILUPE', None, '21.27930', '-157.75980'), ('WAIMALU', 29371, '21.40470', '-157.94320'), ('WAIMANALO', 3664, '21.34760', '-157.72500'), ('WAIMANALO BEACH', 4271, '21.33000', '-157.69020'), ('WAIPAHU', 33108, '21.39060', '-158.01270'), ('WAIPIO', 11672, '21.41830', '-158.00060'), ('WAIPIO ACRES', 5298, '21.47420', '-158.02010'), ('WHEELER AFB', 2829, '21.48190', '-158.04140'), ('WHITMORE VILLAGE', 4057, '21.51420', '-158.02920'), ('WILHELMINA RISE', None, '21.29090', '-157.79170'), ('WOODLAWN', None, '21.31980', '-157.79950')], 'partOfState': '', 'wfo': 'HFO'}, -'LAZ023': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BASKIN', 188, '32.25930', '-91.74780'), ('GILBERT', 561, '32.05060', '-91.65540'), ('WINNSBORO', 5344, '32.16010', '-91.72050'), ('WISNER', 1140, '31.98090', '-91.65510')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAZ022': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('JENA', 2971, '31.68760', '-92.12580'), ('MIDWAY', 1505, '31.68510', '-92.15120'), ('OLLA', 1417, '31.89980', '-92.23760'), ('TULLOS', 419, '31.82020', '-92.32910'), ('URANIA', 700, '31.86390', '-92.29050')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAZ021': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CLARKS', 1071, '32.02860', '-92.13970'), ('COLUMBIA', 477, '32.10150', '-92.07720'), ('GRAYSON', 531, '32.04850', '-92.11150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAZ020': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('COLFAX', 1659, '31.51890', '-92.70570'), ('DRY PRONG', 421, '31.57860', '-92.52930'), ('GEORGETOWN', 301, '31.75930', '-92.38100'), ('MONTGOMERY', 787, '31.66450', '-92.88920'), ('POLLOCK', 376, '31.52460', '-92.40760')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'LAZ027': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ANACOCO', 866, '31.25570', '-93.34390'), ('BURR FERRY', None, '31.06600', '-93.49600'), ('EVANS', None, '30.98890', '-93.50190'), ('FORT POLK', None, '31.04640', '-93.20530'), ('HORNBECK', 435, '31.32670', '-93.39620'), ('KURTHWOOD', None, '31.33800', '-93.16500'), ('LACAMP', None, '31.16400', '-92.91500'), ('LEESVILLE', 6753, '31.13740', '-93.27480'), ('NEW LLANO', 2415, '31.11280', '-93.27910'), ('PICKERING', None, '31.03390', '-93.27060'), ('PITKIN', None, '30.93610', '-92.93610'), ('ROSEPINE', 1390, '30.91940', '-93.28430'), ('SIMPSON', 583, '31.25580', '-93.01840'), ('SLAGLE', None, '31.20220', '-93.12720')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LCH'}, -'LAZ026': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CLAYTON', 858, '31.72100', '-91.53970'), ('FERRIDAY', 3723, '31.63450', '-91.55530'), ('RIDGECREST', 801, '31.60190', '-91.52970'), ('VIDALIA', 4543, '31.56830', '-91.44050'), ('WEST FERRIDAY', 1541, '31.64020', '-91.57320')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAZ025': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('NEWELLTON', 1482, '32.07260', '-91.23910'), ('ST. JOSEPH', 1340, '31.92010', '-91.23930'), ('WATERPROOF', 834, '31.80680', '-91.38510')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'LAZ024': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('HARRISONBURG', 746, '31.76700', '-91.82380'), ('JONESVILLE', 2469, '31.62280', '-91.83050'), ('SICILY ISLAND', 453, '31.84970', '-91.65920')], 'partOfState': 'NORTHEAST', 'wfo': 'JAN'}, -'TXZ084': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CROWELL', 1141, '33.98360', '-99.72410'), ('MARGARET', None, '34.05000', '-99.67000'), ('RAYLAND', None, '34.07000', '-99.50000'), ('THALIA', None, '33.98000', '-99.53000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TXZ085': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DOANS', None, '34.35000', '-99.25000'), ('ELLIOTT', None, '34.15000', '-99.05000'), ('FARGO', None, '34.30000', '-99.27000'), ('GRAYBACK', None, '33.98000', '-99.17000'), ('HARROLD', None, '34.08000', '-99.03000'), ('LOCKETT', None, '34.08000', '-99.37000'), ('ODELL', None, '34.35000', '-99.42000'), ('OKLAUNION', None, '34.13000', '-99.13000'), ('TOLBERT', None, '34.22000', '-99.38000'), ('VERNON', 11660, '34.14740', '-99.30010'), ('WHITE CITY', None, '34.28000', '-99.35000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TXZ086': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BURKBURNETT', 10927, '34.07920', '-98.56480'), ('ELECTRA', 3168, '34.03030', '-98.91850'), ('HAYNESVILLE', None, '34.10000', '-98.92000'), ('IOWA PARK', 6431, '33.95970', '-98.68060'), ('KADANE CORNER', None, '33.85000', '-98.83000'), ('KAMAY', None, '33.85000', '-98.82000'), ('LAKE WICHITA', None, '33.84000', '-98.56500'), ('PLEASANT VALLEY', 408, '33.93750', '-98.60100'), ('SHEPPARD AFB', None, '33.98000', '-98.50000'), ('WICHITA FALLS', 104197, '33.91300', '-98.49530')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'GAZ150': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BICKLEY', None, '31.40540', '-82.60310'), ('DEENWOOD', 1836, '31.24720', '-82.36600'), ('DIXIE UNION', None, '31.33680', '-82.46390'), ('MANOR', None, '31.10170', '-82.57400'), ('MILLWOOD', None, '31.26570', '-82.66200'), ('NEEDHAM', None, '31.15590', '-82.42870'), ('SUNNYSIDE', 1385, '31.23920', '-82.34210'), ('WARESBORO', None, '31.24740', '-82.47440'), ('WAYCROSS', 15333, '31.21190', '-82.35770')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'AZZ015': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('COSNINO', None, '35.20149', '-111.47713'), ('DONEY PARK', None, '35.27110', '-111.51195'), ('FLAGSTAFF', 52894, '35.18900', '-111.61980'), ('FORT VALLEY', None, '35.26314', '-111.72799'), ('KACHINA VILLAGE', 2664, '35.09700', '-111.69190'), ('MOUNTAINAIRE', 1014, '35.08323', '-111.66270'), ('MUNDS PARK', 1250, '34.94103', '-111.64153'), ('PARKS', 1137, '35.26318', '-111.94954'), ('WILLIAMS', 2842, '35.26460', '-112.17280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGZ'}, -'TXZ080': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIG BEND RANCH STATE PARK', None, '29.46670', '-103.95000'), ('CASA PIEDRA', None, '29.74000', '-104.06000'), ('MARFA', 2121, '30.31040', '-104.02490'), ('PAISANO PASS', None, '30.28970', '-103.79190'), ('RYAN', None, '30.43000', '-104.30000'), ('SHAFTER', None, '29.82000', '-104.30000'), ('VALENTINE', 187, '30.58910', '-104.49500')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'GAZ063': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DEARING', 441, '33.41520', '-82.38440'), ('THOMSON', 6828, '33.46610', '-82.50000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'WYZ066': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BUFORD', None, '41.11000', '-105.30000'), ('FEDERAL', None, '41.27000', '-105.10000'), ('HORSE CREEK', None, '41.41000', '-105.18000'), ('PUMPKIN VINE', None, '41.05000', '-105.46000'), ('VEDAUWOO', None, '41.15000', '-105.40000')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'TXZ082': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DRYDEN', None, '30.05000', '-102.12000'), ('SANDERSON', 861, '30.14260', '-102.39770'), ('THE TERRELL GAS PLANT', None, '30.37000', '-101.84500')], 'partOfState': 'SOUTHWEST', 'wfo': 'MAF'}, -'AZZ011': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('FORT DEFIANCE', 4061, '35.74370', '-109.06660'), ('GANADO', 1505, '35.70760', '-109.55200'), ('HOUCK', 1087, '35.28383', '-109.20239'), ('KLAGETOH', None, '35.50908', '-109.52475'), ('LUPTON', None, '35.35560', '-109.04829'), ('PINE SPRINGS', None, '35.40633', '-109.28102'), ('RED ROCK', None, '36.60838', '-109.05427'), ('SANDERS', None, '35.21548', '-109.33239'), ('SAWMILL', 612, '35.89170', '-109.15350'), ('ST. MICHAELS', 1295, '35.66170', '-109.09360'), ('TSAILE', 1078, '36.30370', '-109.21470'), ('UPPER WHEATFIELDS', None, '36.22309', '-109.10030'), ('WHEATFIELDS', None, '36.23877', '-109.12788'), ('WIDE RUINS', None, '35.42031', '-109.49295'), ('WINDOW ROCK', 3059, '35.67090', '-109.06440')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'GAZ151': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLACKSHEAR', 3283, '31.29890', '-82.24170'), ('BRISTOL', None, '31.44850', '-82.21490'), ('PATTERSON', 627, '31.38420', '-82.13800')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'VAZ077': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AVALON', None, '37.90670', '-76.42420'), ('BEANES CORNER', None, '37.82000', '-76.46390'), ('BROWNS STORE', None, '37.82890', '-76.42960'), ('BURGESS', None, '37.88370', '-76.34780'), ('BYRDTON', None, '37.70110', '-76.33690'), ('CALLAO', None, '37.96830', '-76.55780'), ('DODLYT', None, '37.89690', '-76.51060'), ('EDWARDSVILLE', None, '37.90660', '-76.36460'), ('FAIR PORT', None, '37.83333', '-76.29056'), ('FLEETON', None, '37.81750', '-76.28160'), ('GIBEON', None, '37.97030', '-76.61870'), ('HEATHSVILLE', None, '37.91760', '-76.47250'), ('HOWLAND', None, '37.87080', '-76.45560'), ('HULL NECK', None, '37.95370', '-76.37620'), ('LARA', None, '37.85440', '-76.51710'), ('LEWISETTA', None, '38.00500', '-76.46380'), ('LILIAN', None, '37.86360', '-76.30140'), ('LOTTSBURG', None, '37.96130', '-76.51930'), ('MIDDLETONS CORNER', None, '37.94550', '-76.44600'), ('OPHEILA', None, '37.91030', '-76.28330'), ('REEDVILLE', None, '37.86520', '-76.29060'), ('REEDVILLE', None, '37.84650', '-76.26500'), ('REGINA', None, '37.80390', '-76.41780'), ('REHOBOTH CHURCH', None, '37.76770', '-76.36600'), ('SMITH POINT', None, '37.88860', '-76.23690'), ('VILLAGE', None, '37.94760', '-76.60560'), ('WICOMICO CHURCH', None, '37.81510', '-76.37830')], 'partOfState': '', 'wfo': 'AKQ'}, -'WYZ067': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BORDEAUX', None, '41.95000', '-104.95000'), ('CHUGWATER', 244, '41.75570', '-104.82110'), ('GLENDO', 229, '42.50400', '-105.02490'), ('GUERNSEY', 1147, '42.26630', '-104.74430'), ('HARTVILLE', 76, '42.32740', '-104.72420'), ('SIBLEY PEAK', None, '42.44000', '-105.03000'), ('WHEATLAND', 3548, '42.05120', '-104.95890')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'VAZ025': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHRISTIAN', None, '38.18220', '-79.22780'), ('CHURCHVILLE', None, '38.22610', '-79.16250'), ('CRAIGSVILLE', 979, '38.08100', '-79.38440'), ('CRIMORA', 1796, '38.16070', '-78.83930'), ('DEERFIELD', None, '38.19640', '-79.40690'), ('GREENVILLE', 886, '38.00330', '-79.15610'), ('HERMITAGE', None, '38.14140', '-78.91440'), ('MINT SPRING', None, '38.07440', '-79.10110'), ('MOSCOW', None, '38.31690', '-79.08920'), ('SANGERVILLE', None, '38.38860', '-79.08360'), ('SHERANDO', 665, '37.98110', '-78.95420'), ('SPOTTSWOOD', None, '37.95500', '-79.21390'), ('STAUNTON', 23853, '38.15880', '-79.06230'), ('STAUNTON ARPT', None, '38.27000', '-78.90000'), ('STUARTS DRAFT', 8367, '38.02560', '-79.02490'), ('SUMMERDEAN', None, '38.07500', '-79.25640'), ('TRIMBLES MILL', None, '38.13530', '-79.21890'), ('VERONA', 3638, '38.19980', '-79.00620'), ('WAYNESBORO', 19520, '38.06950', '-78.90260'), ('WEST AUGUSTA', None, '38.27000', '-79.30810')], 'partOfState': '', 'wfo': 'LWX'}, -'COZ008': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BASALT', 2681, '39.36670', '-107.02700'), ('BOND', None, '39.87000', '-106.70000'), ('BURNS', None, '39.87000', '-106.88000'), ('CARBONDALE', 5196, '39.39730', '-107.21400'), ('CATTLE CREEK', None, '39.45000', '-107.25000'), ('DOTSERO', None, '39.65000', '-107.05000'), ('EAGLE', 3032, '39.65560', '-106.82540'), ('EDWARDS', 8257, '39.65000', '-106.60000'), ('EL JEBEL', 4488, '39.39980', '-107.08910'), ('EMMA', None, '39.39000', '-107.07000'), ('GLENWOOD SPRINGS', 7736, '39.54490', '-107.33010'), ('GYPSUM', 3654, '39.64340', '-106.94770'), ('SHOSHONE', None, '39.58300', '-107.18000'), ('SWEETWATER', None, '39.72000', '-107.02000'), ('WOLCOTT', None, '39.70000', '-106.68000')], 'partOfState': 'CENTRAL', 'wfo': 'GJT'}, -'COZ009': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CEDAREDGE', 1854, '38.89880', '-107.92630'), ('GRAND MESA', None, '39.05000', '-107.87000'), ('PLATEAU CITY', None, '39.18000', '-107.98000'), ('SKYWAY', None, '39.05000', '-108.12000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'COZ006': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CAMEO', None, '39.15000', '-108.32000'), ('CLIFTON', 17345, '39.07520', '-108.46340'), ('FRUITA', 6478, '39.15650', '-108.72730'), ('FRUITVALE', 6936, '39.09320', '-108.47840'), ('GRAND JUNCTION', 41986, '39.08730', '-108.55290'), ('LOMA', None, '39.20000', '-108.82000'), ('MACK', None, '39.22000', '-108.87000'), ('ORCHARD MESA', 6456, '39.03380', '-108.52240'), ('PALISADE', 2579, '39.10740', '-108.35780'), ('REDLANDS', 8043, '39.08500', '-108.65080'), ('WHITEWATER', None, '38.98000', '-108.43000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'COZ007': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BATTLEMENT MESA', 3497, '39.44150', '-108.02450'), ('COLLBRAN', 388, '39.23930', '-107.95860'), ('DE BEQUE', 451, '39.33250', '-108.21370'), ('MESA', None, '39.17000', '-108.13000'), ('MOLINA', None, '39.18000', '-108.07000'), ('NEW CASTLE', 1984, '39.58540', '-107.53060'), ('PARACHUTE', 1006, '39.44580', '-108.05510'), ('RIFLE', 6784, '39.53930', '-107.77780'), ('SILT', 1740, '39.54970', '-107.65380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'COZ004': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('HAHNS PEAK', None, '40.80000', '-106.93000'), ('MC COY', None, '39.92000', '-106.72000'), ('MT ZIRKEL', None, '40.83300', '-106.66300'), ('TOPONAS', None, '40.07000', '-106.80000')], 'partOfState': 'NORTHWEST', 'wfo': 'GJT'}, -'COZ005': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CLARK', None, '40.70000', '-106.92000'), ('MILNER', None, '40.48000', '-107.02000'), ('OAK CREEK', 849, '40.27450', '-106.95700'), ('PHIPPSBURG', None, '40.23000', '-106.93000'), ('STEAMBOAT SPRINGS', 9815, '40.47790', '-106.82100'), ('TOW CREEK', None, '40.47000', '-107.07000'), ('YAMPA', 443, '40.15330', '-106.90750')], 'partOfState': 'NORTHWEST', 'wfo': 'GJT'}, -'COZ002': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AXIAL', None, '40.25000', '-107.78000'), ('CRAIG', 9189, '40.51690', '-107.55340'), ('FORTIFICATION', None, '40.82100', '-107.61700'), ('GREAT DIVIDE', None, '40.78000', '-107.82000'), ('HAMILTON', None, '40.37000', '-107.60000'), ('HAYDEN', 1634, '40.48810', '-107.26030'), ('JUNIPER SPRINGS', None, '40.43000', '-107.95000'), ('LAY', None, '40.52000', '-107.87000'), ('LOYD', None, '40.27000', '-107.72000'), ('MAYBELL', None, '40.52000', '-108.08000'), ('MEEKER', 2242, '40.05450', '-107.88980'), ('SLATER', None, '41.00000', '-107.37000'), ('SUNBEAM', None, '40.55000', '-108.18000')], 'partOfState': 'NORTHWEST', 'wfo': 'GJT'}, -'COZ003': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('RIO BLANCO', None, '39.72000', '-107.97000')], 'partOfState': 'NORTHWEST', 'wfo': 'GJT'}, -'COZ001': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARTESIA', None, '40.22000', '-109.02000'), ('BLUE MOUNTAIN', None, '40.25000', '-108.85000'), ('DINOSAUR', 319, '40.24160', '-109.00800'), ('ELK SPRINGS', None, '40.35000', '-108.45000'), ('GREYSTONE', None, '40.62000', '-108.67000'), ('HIAWATHA', None, '40.98000', '-108.62000'), ('MASSADONA', None, '40.22000', '-108.62000'), ('POWDER WASH', None, '40.95000', '-108.30000'), ('RANGELY', 2096, '40.08760', '-108.77850'), ('SPARKS', None, '40.88000', '-108.55000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'VTZ008': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BARRE', 9291, '44.20010', '-72.50790'), ('CABOT', 239, '44.40860', '-72.31100'), ('CALAIS', None, '44.38000', '-72.43000'), ('MARSHFIELD', 262, '44.35080', '-72.35210'), ('MIDDLESEX', None, '44.30000', '-72.68000'), ('MONTPELIER', 8035, '44.26650', '-72.57190'), ('MORETOWN', None, '44.25000', '-72.75000'), ('NORTHFIELD', 3208, '44.15230', '-72.65650'), ('PLAINFIELD', None, '44.28000', '-72.43000'), ('ROXBURY', None, '44.10000', '-72.73000'), ('SOUTH BARRE', 1242, '44.16330', '-72.50660'), ('WAITSFIELD', None, '44.18000', '-72.82000'), ('WARREN', None, '44.12000', '-72.85000'), ('WATERBURY', 1706, '44.33940', '-72.75270'), ('WORCESTER', None, '44.37000', '-72.55000')], 'partOfState': 'CENTRAL', 'wfo': 'BTV'}, -'VTZ009': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ADDISON', None, '44.08000', '-73.30000'), ('BRIDPORT', None, '43.98000', '-73.32000'), ('CORNWALL', None, '43.97000', '-73.22000'), ('FERRISBURG', None, '44.20000', '-73.25000'), ('LEICESTER', None, '43.87000', '-73.10000'), ('MIDDLEBURY', 6252, '44.00770', '-73.15720'), ('MONKTON', None, '44.23000', '-73.15000'), ('NEW HAVEN', None, '44.12000', '-73.15000'), ('ORWELL', None, '43.80000', '-73.30000'), ('SALISBURY', None, '43.90000', '-73.10000'), ('SHOREHAM', None, '43.90000', '-73.32000'), ('VERGENNES', 2741, '44.16740', '-73.25570')], 'partOfState': 'CENTRAL', 'wfo': 'BTV'}, -'VTZ006': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BELVIDERE', None, '44.75000', '-72.68000'), ('CAMBRIDGE', 235, '44.63540', '-72.88250'), ('EDEN', None, '44.70000', '-72.55000'), ('HYDE PARK', 415, '44.59430', '-72.61290'), ('JEFFERSONVILLE', 568, '44.64440', '-72.82810'), ('JOHNSON', 1420, '44.63720', '-72.67790'), ('MORRISVILLE', 2009, '44.55860', '-72.59640'), ('STOWE', None, '44.46590', '-72.68570'), ('WOLCOTT', None, '44.55000', '-72.47000')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'VTZ007': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BARNET', None, '44.30000', '-72.05000'), ('DANVILLE', None, '44.42000', '-72.13000'), ('EAST HAVEN', None, '44.67000', '-71.90000'), ('GROTON', None, '44.22000', '-72.20000'), ('HARDWICK', None, '44.50000', '-72.37000'), ('LOWER WATERFORD', None, '44.35000', '-71.92000'), ('LYNDONVILLE', 1227, '44.53490', '-72.00300'), ('PASSUMPSIC', None, '44.38000', '-72.03000'), ('PEACHAM', None, '44.33000', '-72.17000'), ('SHEFFIELD', None, '44.60000', '-72.12000'), ('ST. JOHNSBURY', 6319, '44.43040', '-72.01320'), ('STANNARD', None, '44.53000', '-72.22000'), ('WALDEN', None, '44.43000', '-72.23000'), ('WEST BURKE', 364, '44.64380', '-71.98030')], 'partOfState': 'NORTHEAST', 'wfo': 'BTV'}, -'VTZ004': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('AVERILL', None, '45.00000', '-71.72000'), ('BLOOMFIELD', None, '44.75000', '-71.63000'), ('CANAAN', None, '45.00000', '-71.53000'), ('CONCORD', None, '44.43000', '-71.88000'), ('GRANBY', None, '44.57000', '-71.77000'), ('ISLAND POND', 849, '44.81290', '-71.88550'), ('LUNENBURG', None, '44.47000', '-71.68000'), ('MAIDSTONE', None, '44.67000', '-71.61000'), ('NORTON', None, '45.00000', '-71.80000'), ('VICTORY', None, '44.52000', '-71.85000')], 'partOfState': 'NORTHEAST', 'wfo': 'BTV'}, -'VTZ005': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BURLINGTON', 38889, '44.48810', '-73.22620'), ('CHARLOTTE', None, '44.30000', '-73.25000'), ('COLCHESTER', None, '44.53000', '-73.15000'), ('ESSEX JUNCTION', 8591, '44.49030', '-73.11240'), ('HINESBURG', None, '44.33000', '-73.12000'), ('MILTON', 1537, '44.63840', '-73.11250'), ('SHELBURNE', None, '44.38000', '-73.23000'), ('SOUTH BURLINGTON', 15814, '44.44560', '-73.21610'), ('WESTFORD', None, '44.62000', '-73.02000'), ('WILLISTON', None, '44.43000', '-73.07000'), ('WINOOSKI', 6561, '44.49540', '-73.18510')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'VTZ002': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('FAIRFAX', None, '44.67000', '-73.02000'), ('FAIRFIELD', None, '44.80000', '-72.95000'), ('FRANKLIN', None, '44.98000', '-72.92000'), ('GEORGIA', None, '44.72000', '-73.12000'), ('HIGHGATE FALLS', None, '44.93000', '-73.03000'), ('HIGHGATE SPRINGS', None, '44.97000', '-73.10000'), ('SHELDON', None, '44.88000', '-72.95000'), ('ST. ALBANS', 7650, '44.81130', '-73.08490'), ('SWANTON', 2548, '44.92150', '-73.12100')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'VTZ003': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ALBANY', 165, '44.73050', '-72.38200'), ('BARTON', 742, '44.74960', '-72.17740'), ('COVENTRY', None, '44.87000', '-72.27000'), ('CRAFTSBURY', None, '44.63000', '-72.37000'), ('DERBY CENTER', 670, '44.95580', '-72.13230'), ('DERBY LINE', 776, '45.00240', '-72.10400'), ('EAST CHARLESTON', None, '44.83000', '-72.00000'), ('GLOVER', None, '44.70000', '-72.18000'), ('GREENSBORO', None, '44.58000', '-72.28000'), ('JAY', None, '44.97000', '-72.47000'), ('LOWELL', None, '44.80000', '-72.45000'), ('MORGAN CENTER', None, '44.92000', '-71.98000'), ('NEWPORT', 5005, '44.93700', '-72.20890'), ('NEWPORT CENTER', None, '44.95000', '-72.30000'), ('NORTH TROY', 593, '44.99540', '-72.40490'), ('ORLEANS', 826, '44.81060', '-72.20180'), ('WESTFIELD', None, '44.88000', '-72.42000'), ('WESTMORE', None, '44.77000', '-72.05000')], 'partOfState': 'NORTHEAST', 'wfo': 'BTV'}, -'VTZ001': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ALBURG', 488, '44.97740', '-73.30130'), ('GRAND ISLE', None, '44.72000', '-73.30000'), ('ISLE LA MOTTE', None, '44.87000', '-73.33000'), ('NORTH HERO', None, '44.82200', '-73.28000'), ('SOUTH HERO', None, '44.64000', '-73.31000')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'ARZ016': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BATESVILLE', 9445, '35.76820', '-91.62230'), ('CUSHMAN', 461, '35.86360', '-91.77860'), ('MAGNESS', 191, '35.70190', '-91.48230'), ('MOOREFIELD', 160, '35.76810', '-91.57100'), ('NEWARK', 1219, '35.70530', '-91.44290'), ('OIL TROUGH', 218, '35.62950', '-91.46120'), ('PLEASANT PLAINS', 267, '35.55060', '-91.62700'), ('SULPHUR ROCK', 421, '35.75100', '-91.49930')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ017': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALICIA', 145, '35.89440', '-91.08300'), ('ANNIEVILLE', None, '36.15000', '-91.23330'), ('BLACK ROCK', 717, '36.10640', '-91.10860'), ('COLLEGE CITY', 269, '36.12570', '-90.94000'), ('HOXIE', 2817, '36.04370', '-90.97750'), ('IMBODEN', 684, '36.20170', '-91.17980'), ('LYNN', 315, '36.00660', '-91.25200'), ('MINTURN', 114, '35.97500', '-91.02750'), ('PORTIA', 483, '36.08530', '-91.07130'), ('POWHATAN', 50, '36.08190', '-91.11890'), ('RAVENDEN', 511, '36.23620', '-91.25040'), ('SEDGWICK', 112, '35.97850', '-90.86320'), ('SMITHVILLE', 73, '36.08000', '-91.30280'), ('STRAWBERRY', 283, '35.96560', '-91.32140'), ('WALNUT RIDGE', 4925, '36.06980', '-90.95830')], 'partOfState': '', 'wfo': 'MEG'}, -'ARZ014': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FIFTY-SIX', 163, '35.96040', '-92.22990'), ('MOUNTAIN VIEW', 2876, '35.87000', '-92.11110')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ015': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CALICO ROCK', 991, '36.12830', '-92.13110'), ('FRANKLIN', 184, '36.17140', '-91.77230'), ('GUION', 90, '35.92910', '-91.94010'), ('HORSESHOE BEND', 2278, '36.22330', '-91.74100'), ('MELBOURNE', 1673, '36.06230', '-91.89870'), ('MOUNT PLEASANT', 401, '35.98240', '-91.77770'), ('OXFORD', 642, '36.20730', '-91.91940'), ('PINEVILLE', 246, '36.15770', '-92.10390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ012': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('JASPER', 498, '36.00610', '-93.18830'), ('WESTERN GROVE', 407, '36.10110', '-92.95390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ013': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('GILBERT', 33, '35.99020', '-92.71820'), ('LESLIE', 482, '35.82940', '-92.55590'), ('MARSHALL', 1313, '35.90990', '-92.63620'), ('PINDALL', 95, '36.05830', '-92.86530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ010': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('WALNUT GROVE', None, '36.00360', '-94.26690'), ('HICKS', None, '35.93890', '-94.04810'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('SHADY GROVE', None, '36.14560', '-94.14390'), ('OAK GROVE', 376, '36.18970', '-94.18690'), ('SHADY GROVE', None, '36.14560', '-94.14390'), ('WALNUT GROVE', None, '36.00360', '-94.26690'), ('ODELL', None, '35.77250', '-94.41810'), ('WALNUT GROVE', None, '36.00360', '-94.26690'), ('TUTTLE', None, '36.03360', '-93.97220'), ('MAYFIELD', None, '36.13360', '-93.94390'), ('HARMON', None, '36.15360', '-94.27690'), ('FAYETTEVILLE', 58047, '36.06250', '-94.15720'), ('SPRINGDALE', 45798, '36.18670', '-94.12860'), ('WINSLOW', 399, '35.80080', '-94.13470'), ('WEST FORK', 2042, '35.92420', '-94.18830'), ('LINCOLN', 1752, '35.94940', '-94.42330'), ('PRAIRIE GROVE', 2540, '35.97580', '-94.31750'), ('ELKINS', 1251, '36.00140', '-94.00810'), ('FARMINGTON', 3605, '36.04190', '-94.24690'), ('BLACKBURN', None, '35.81640', '-94.21940'), ('HOGEYE', None, '35.92030', '-94.26750'), ('STRICKLER', None, '35.83360', '-94.31310'), ('MORROW', None, '35.85830', '-94.43720'), ('BRENTWOOD', None, '35.86000', '-94.10690'), ('WOOLSEY', None, '35.88530', '-94.16830'), ('WYOLA', None, '35.85860', '-94.05830'), ('CLYDE', None, '35.89140', '-94.40640'), ('ARNETT', None, '35.89500', '-94.03940'), ('CANEHILL', None, '35.90860', '-94.39640'), ('DURHAM', None, '35.94940', '-93.98030'), ('SULPHUR CITY', None, '35.96500', '-94.05030'), ('SUMMERS', None, '35.98110', '-94.49140'), ('BLACK OAK', 286, '35.98330', '-94.07940'), ('GREENLAND', 907, '35.99420', '-94.17500'), ('RHEA', None, '36.01420', '-94.40280'), ('VINEY GROVE', None, '36.00830', '-94.33000'), ('CINCINNATI', None, '36.03720', '-94.51080'), ('WEDINGTON', None, '36.08330', '-94.41670'), ('SAVOY', None, '36.10560', '-94.33250'), ('GOSHEN', 752, '36.10110', '-93.99110'), ('WHEELER', None, '36.11420', '-94.25890'), ('JOHNSON', 2319, '36.13280', '-94.16530'), ('HARMON', None, '36.15360', '-94.27690'), ('SONORA', None, '36.16530', '-94.04470'), ('TONTITOWN', 942, '36.17780', '-94.23330'), ('ELM SPRINGS', 1044, '36.20610', '-94.23420')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'ARZ011': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('HARMONY', None, '36.10810', '-93.71220'), ('GEORGETOWN', 126, '35.99560', '-93.83110'), ('HARMONY', None, '36.10810', '-93.71220'), ('ARBAUGH', None, '35.78330', '-93.51670'), ('RED STAR', None, '35.86670', '-93.53060'), ('WEATHERS', None, '35.95940', '-93.52030'), ('HUNTSVILLE', 1931, '36.08610', '-93.74110'), ('ST PAUL', None, '35.82000', '-93.77000'), ('PETTIGREW', None, '35.81780', '-93.64830'), ('AURORA', None, '35.99720', '-93.70250'), ('WESLEY', None, '36.02720', '-93.92000'), ('KINGSTON', None, '36.05060', '-93.51830'), ('HINDSVILLE', 75, '36.14420', '-93.86190'), ('FORUM', None, '36.18170', '-93.71470'), ('BEST', None, '36.23000', '-93.88000'), ('COMBS', None, '35.82560', '-93.83640'), ('BRASHEARS', None, '35.81170', '-93.79560'), ('DUTTON', None, '35.81670', '-93.69360'), ('PATRICK', None, '35.84310', '-93.88360'), ('BOSTON', None, '35.84060', '-93.60110'), ('DELANEY', None, '35.85220', '-93.90000'), ('CROSSES', None, '35.87420', '-93.91110'), ('WITTER', None, '35.93750', '-93.68330'), ('JAPTON', None, '35.96190', '-93.80420'), ('GEORGETOWN', 126, '35.99560', '-93.83110'), ('HARMONY', None, '36.10810', '-93.71220'), ('MARBLE', None, '36.13970', '-93.58720'), ('ALABAM', None, '36.15250', '-93.68110'), ('CLIFTY', None, '36.23720', '-93.79610'), ('ROCKHOUSE', None, '36.28190', '-93.67280')], 'partOfState': 'NORTHWEST', 'wfo': 'TSA'}, -'WYZ065': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BOSLER', None, '41.58000', '-105.69000'), ('LARAMIE', 27204, '41.31090', '-105.58300'), ('ROCK RIVER', 235, '41.73120', '-105.97270'), ('WOODS LANDING', None, '41.11000', '-106.02000')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'ARZ018': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BEECH GROVE', None, '36.16670', '-90.61670'), ('DELAPLAINE', 127, '36.23130', '-90.72600'), ('EVENING STAR', None, '36.18330', '-90.70000'), ('FONTAINE', None, '36.00000', '-90.81670'), ('LAFE', 385, '36.20710', '-90.50310'), ('MARMADUKE', 1158, '36.18840', '-90.38780'), ('OAK GROVE HEIGHTS', 727, '36.12730', '-90.51520'), ('PARAGOULD', 22017, '36.05610', '-90.51350'), ('WALCOTT', None, '36.03330', '-90.66670')], 'partOfState': '', 'wfo': 'MEG'}, -'WYZ058': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CLARETON', None, '43.70000', '-104.68330'), ('CLIFTON', None, '43.63330', '-104.10000'), ('HAMPSHIRE', None, '43.58330', '-104.71670'), ('MORRISEY', None, '43.53330', '-104.40000'), ('NEWCASTLE', 3065, '43.84490', '-104.18050'), ('OSAGE', 215, '43.98000', '-104.42020'), ('PEDRO', None, '43.90830', '-104.33780'), ('ROCHELLE', None, '43.58680', '-105.00300'), ('THORNTON', None, '44.16670', '-104.73330'), ('UPTON', 872, '44.10210', '-104.62810')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'TXZ141': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMANCHE', 4482, '31.89970', '-98.60420'), ('DE LEON', 2433, '32.11170', '-98.53670'), ('GUSTINE', 457, '31.84530', '-98.40210')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ140': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BANGS', 1620, '31.71450', '-99.13050'), ('BLANKET', 402, '31.82390', '-98.78670'), ('BROOKESMITH', None, '31.55030', '-99.11830'), ('BROWNWOOD', 18813, '31.70920', '-98.99080'), ('CROSS CUT', None, '32.03360', '-99.13220'), ('EARLY', 2588, '31.74190', '-98.94530'), ('INDIAN CREEK', None, '31.52310', '-98.97970'), ('LAKE BROWNWOOD', 1694, '31.81600', '-99.10290'), ('MAY', None, '31.97940', '-98.91970'), ('OWENS', None, '31.84780', '-98.92560'), ('THRIFTY', None, '31.81080', '-99.13170'), ('WINCHELL', None, '31.47190', '-99.16060'), ('ZEPHYR', None, '31.67580', '-98.79440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXZ143': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CRANFILLS GAP', 335, '31.77620', '-97.82980'), ('HAMILTON', 2977, '31.70500', '-98.12120'), ('HICO', 1341, '31.98340', '-98.02850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ142': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GOLDTHWAITE', 1802, '31.45390', '-98.57100'), ('MULLIN', 175, '31.55470', '-98.66500')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ145': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ABBOTT', 300, '31.88370', '-97.07740'), ('AQUILLA', 136, '31.85520', '-97.22160'), ('BLUM', 399, '32.14180', '-97.39680'), ('BYNUM', 225, '31.96890', '-97.00300'), ("CARL'S CORNER", 134, '32.08530', '-97.04490'), ('COVINGTON', 282, '32.17740', '-97.25890'), ('HILLSBORO', 8232, '32.00740', '-97.11560'), ('HUBBARD', 1586, '31.84590', '-96.80050'), ('ITASCA', 1503, '32.15840', '-97.14760'), ('MALONE', 278, '31.91660', '-96.89490'), ('MERTENS', 146, '32.05890', '-96.89340'), ('MOUNT CALM', 310, '31.75690', '-96.88080'), ('PENELOPE', 211, '31.85840', '-96.92910'), ('WHITNEY', 1833, '31.94980', '-97.32040')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ144': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLIFTON', 3542, '31.78130', '-97.58010'), ('IREDELL', 360, '31.98620', '-97.87110'), ('MERIDIAN', 1491, '31.92400', '-97.64720'), ('MORGAN', 485, '32.01570', '-97.60570'), ('VALLEY MILLS', 1123, '31.65840', '-97.47180'), ('WALNUT SPRINGS', 755, '32.05700', '-97.75150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ147': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FAIRFIELD', 3094, '31.71880', '-96.16550'), ('KIRVIN', 122, '31.76680', '-96.32980'), ('STREETMAN', 203, '31.87590', '-96.32390'), ('TEAGUE', 4557, '31.63040', '-96.28160'), ('WORTHAM', 1082, '31.79000', '-96.46080')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ146': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANGUS', 334, '31.99770', '-96.42570'), ('BARRY', 209, '32.09870', '-96.63790'), ('BLOOMING GROVE', 833, '32.09190', '-96.71680'), ('CORSICANA', 24485, '32.08420', '-96.46500'), ('DAWSON', 852, '31.89380', '-96.71400'), ('EMHOUSE', 159, '32.16060', '-96.57760'), ('EUREKA', 340, '32.00970', '-96.28590'), ('FROST', 648, '32.07810', '-96.80800'), ('GOODLOW', 264, '32.11260', '-96.21640'), ('KERENS', 1681, '32.13100', '-96.22520'), ('MILDRED', 405, '32.03690', '-96.34480'), ('MUSTANG', 47, '32.01250', '-96.43090'), ('NAVARRO', 191, '32.00030', '-96.38190'), ('OAK VALLEY', 401, '32.03040', '-96.51100'), ('POWELL', 105, '32.11650', '-96.32870'), ('RETREAT', 339, '32.05130', '-96.47710'), ('RICE', 798, '32.24470', '-96.50130'), ('RICHLAND', 291, '31.92500', '-96.42580')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'TXZ149': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALTO', 1190, '31.65040', '-95.07090'), ('CUNEY', 145, '32.03820', '-95.41540'), ('GALLATIN', 378, '31.89510', '-95.15250'), ('JACKSONVILLE', 13868, '31.96530', '-95.26000'), ('NEW SUMMERFIELD', 998, '31.98520', '-95.10480'), ('RUSK', 5085, '31.79760', '-95.14850'), ('WELLS', 769, '31.49180', '-94.94670')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'TXZ148': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ELKHART', 1215, '31.62830', '-95.57840'), ('FRANKSTON', 1209, '32.05510', '-95.50360'), ('PALESTINE', 17598, '31.75650', '-95.64650')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'WYZ062': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('HANNA', 873, '41.86990', '-106.55870'), ('MEDICINE BOW', 274, '41.89980', '-106.20100'), ('MUDDY GAP', None, '42.38000', '-107.44000'), ('SEMINOE DAM', None, '42.15000', '-106.90000'), ('SHIRLEY BASIN', None, '42.35000', '-106.21000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CYS'}, -'AKZ135': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CHENEGA', 86, '60.10480', '-147.94370'), ('CORDOVA', 2454, '60.54780', '-145.74760'), ('EYAK', None, '60.52850', '-145.59260'), ('TATITLEK', 107, '60.88390', '-146.67770')], 'partOfState': '', 'wfo': 'AFC'}, -'VAZ003': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BREAKS INTERSTATE PARK', None, '37.29030', '-82.29520'), ('CLINTWOOD', 1549, '37.15060', '-82.45620'), ('HAYSI', 186, '37.20510', '-82.29310'), ('JOHN FLANNAGAN LAKE', None, '37.23320', '-82.34520')], 'partOfState': '', 'wfo': 'RLX'}, -'AKZ111': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BIG LAKE', 2635, '61.52140', '-149.95440'), ('BUTTE', 2561, '61.54250', '-149.05170'), ('HOUSTON', 1202, '61.62410', '-149.78110'), ('KNIK', None, '61.45330', '-149.74160'), ('LAZY MOUNTAIN', 1158, '61.62620', '-148.94570'), ('MEADOW LAKES', 4819, '61.62460', '-149.60120'), ('PALMER', 4533, '61.59890', '-149.10990'), ('SUTTON', None, '61.71730', '-148.88120'), ('WASILLA', 5469, '61.58020', '-149.46160')], 'partOfState': '', 'wfo': 'AFC'}, -'WYZ063': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ALBANY', 80, '41.17000', '-106.12000'), ('ARLINGTON', None, '41.59000', '-106.21000'), ('CENTENNIAL', 191, '41.30000', '-106.11000'), ('ELK MOUNTAIN', 192, '41.68780', '-106.41290'), ('ENCAMPMENT', None, '41.20880', '-106.79460'), ('SKYLINE', None, '41.13300', '-106.58000')], 'partOfState': 'SOUTHEAST', 'wfo': 'CYS'}, -'VAZ100': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BAY VIEW', None, '37.27667', '-75.96778'), ('BIRDSNEST', None, '37.43850', '-75.88240'), ('CAPE CHARLES', 1134, '37.27040', '-76.01460'), ('CAPE CHARLES LIGHT', None, '37.12160', '-75.90280'), ('CAPEVILLE', None, '37.20500', '-75.95720'), ('CHEAPSIDE', None, '37.20070', '-75.98320'), ('CHERITON', 499, '37.28800', '-75.96760'), ('DALBYS', None, '37.23000', '-75.97060'), ('EASTVILLE', 203, '37.35080', '-75.94040'), ('EXMORE', 1136, '37.53370', '-75.82410'), ('FISHERMANS ISLAND', None, '37.10000', '-75.97000'), ('FRANKTOWN', None, '37.47800', '-75.87830'), ('JAMESVILLE', None, '37.51470', '-75.93250'), ('KIPTOPEKE', None, '37.13950', '-75.96380'), ('KIPTOPEKE STATE PARK', None, '37.17000', '-75.97920'), ('MACHIPONGO', None, '37.40340', '-75.90180'), ('NASSAWADOX', 572, '37.47650', '-75.86280'), ('OYSTER', None, '37.28640', '-75.92260'), ('PLANTATION', None, '37.24030', '-75.98380'), ('SILVER BEACH', None, '37.48460', '-75.96110'), ('SIMPKINS', None, '37.32420', '-75.94390'), ('SMITH BEACH', None, '37.38280', '-75.98380'), ('TOWNSEND', None, '37.18540', '-75.95820'), ('WARDTOWN', None, '37.50830', '-75.87040'), ('WILLIS WHARF', None, '37.50960', '-75.80720')], 'partOfState': '', 'wfo': 'AKQ'}, -'PAZ063': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BLOSERVILLE', None, '40.24000', '-77.32000'), ('BOILING SPRINGS', 2769, '40.15780', '-77.13730'), ('CAMP HILL', 7636, '40.24250', '-76.92680'), ('CARLISLE', 17970, '40.20090', '-77.20420'), ('CARLISLE SPRINGS', None, '40.24160', '-77.17730'), ('COLONEL DENNING SP', None, '40.29000', '-77.42000'), ('ENOLA', 5627, '40.28850', '-76.93600'), ('HOGESTOWN', None, '40.23000', '-77.04000'), ('LEMOYNE', 3995, '40.24450', '-76.89940'), ('LOWER ALLEN', 6619, '40.22630', '-76.90070'), ('MECHANICSBURG', 9042, '40.21010', '-77.00550'), ('MOUNT HOLLY SPRINGS', 1925, '40.11270', '-77.18480'), ('NEW CUMBERLAND', 7349, '40.23050', '-76.87520'), ('NEWBURG', 372, '40.13770', '-77.55450'), ('NEWVILLE', 1367, '40.17090', '-77.40190'), ('PINE GROVE FURNACE SP', None, '40.05000', '-77.27000'), ('SHIPPENSBURG', 5586, '40.04810', '-77.52300'), ('SHIREMANSTOWN', 1521, '40.22230', '-76.95630'), ('WALNUT BOTTOM', None, '40.09000', '-77.37000'), ('WERTZVILLE', None, '40.27000', '-77.03000'), ('WEST FAIRVIEW', None, '40.27740', '-76.91860'), ('WORMLEYSBURG', 2607, '40.26180', '-76.90830')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ062': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BANGOR', 5319, '40.86850', '-75.20820'), ('BATH', 2678, '40.72760', '-75.39180'), ('BELFAST', 1301, '40.78250', '-75.27310'), ('BETHLEHEM', 71329, '40.62670', '-75.36800'), ('CHAPMAN', 234, '40.75920', '-75.40150'), ('COPLAY', 3387, '40.67110', '-75.49650'), ('EAST BANGOR', 979, '40.88060', '-75.18660'), ('EASTLAWN GARDENS', 2832, '40.75070', '-75.29610'), ('EASTON', 26263, '40.68630', '-75.22060'), ('FREEMANSBURG', 1897, '40.62720', '-75.34020'), ('GLENDON', 367, '40.66130', '-75.23580'), ('HELLERTOWN', 5606, '40.58120', '-75.33830'), ('NAZARETH', 6023, '40.73990', '-75.31300'), ('NORTH CATASAUQUA', 2814, '40.66430', '-75.47430'), ('NORTHAMPTON', 9405, '40.68800', '-75.48870'), ('OLD ORCHARD', 2443, '40.65780', '-75.26260'), ('PALMER HEIGHTS', 3612, '40.68960', '-75.26850'), ('PEN ARGYL', 3615, '40.86790', '-75.25420'), ('ROSETO', 1653, '40.87820', '-75.22080'), ('SLATINGTON', 4434, '40.75430', '-75.61230'), ('STOCKERTOWN', 687, '40.75530', '-75.26380'), ('TATAMY', 930, '40.74120', '-75.25530'), ('WALNUTPORT', 2043, '40.75150', '-75.59560'), ('WEST EASTON', 1152, '40.67820', '-75.23650'), ('WILSON', 7682, '40.68530', '-75.24010'), ('WIND GAP', 2812, '40.84750', '-75.29170')], 'partOfState': '', 'wfo': 'PHI'}, -'PAZ061': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ALBURTIS', 2117, '40.50950', '-75.60070'), ('ALLENTOWN', 106632, '40.59630', '-75.47770'), ('ANCIENT OAKS', 3161, '40.53250', '-75.58570'), ('CATASAUQUA', 6588, '40.65210', '-75.46470'), ('COOPERSBURG', 2582, '40.51040', '-75.39140'), ('EMMAUS', 11313, '40.53610', '-75.49800'), ('FOUNTAIN HILL', 4614, '40.60260', '-75.39670'), ('FULLERTON', 14268, '40.63200', '-75.48590'), ('HOKENDAUQUA', 3411, '40.65870', '-75.49580'), ('MACUNGIE', 3039, '40.51580', '-75.55430'), ('SCHNECKSVILLE', 1989, '40.67820', '-75.61960')], 'partOfState': '', 'wfo': 'PHI'}, -'PAZ060': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMITY GARDENS', 3370, '40.27410', '-75.73560'), ('BALLY', 1062, '40.40090', '-75.58870'), ('BECHTELSVILLE', 931, '40.37090', '-75.63070'), ('BERNVILLE', 865, '40.43420', '-76.11070'), ('BIRDSBORO', 5064, '40.26070', '-75.81050'), ('BOYERTOWN', 3940, '40.33180', '-75.63780'), ('CENTERPORT', 327, '40.48660', '-76.00630'), ('FLEETWOOD', 4018, '40.45560', '-75.82140'), ('FLYING HILLS', 1191, '40.27670', '-75.91450'), ('HAMBURG', 4114, '40.55620', '-75.98300'), ('KENHORST', 2679, '40.30670', '-75.94410'), ('KUTZTOWN', 5067, '40.52090', '-75.77830'), ('LAURELDALE', 3759, '40.38920', '-75.91450'), ('LEESPORT', 1805, '40.44490', '-75.96990'), ('LENHARTSVILLE', 173, '40.57270', '-75.89120'), ('LORANE', 2994, '40.29360', '-75.84630'), ('LYONS', 504, '40.48090', '-75.76020'), ('MOHNTON', 2963, '40.28650', '-75.98770'), ('MOUNT PENN', 3016, '40.32850', '-75.88920'), ('PORT CLINTON', 288, '40.58240', '-76.02670'), ('READING', 81207, '40.33900', '-75.92640'), ('REIFFTON', 2888, '40.31600', '-75.86760'), ('ROBESONIA', 2036, '40.34860', '-76.14110'), ('SHILLINGTON', 5059, '40.30250', '-75.96720'), ('SHOEMAKERSVILLE', 2124, '40.49990', '-75.96940'), ('SINKING SPRING', 2639, '40.32460', '-76.02270'), ('ST. LAWRENCE', 1812, '40.32600', '-75.86500'), ('STRAUSSTOWN', 339, '40.49200', '-76.18440'), ('TEMPLE', None, '40.40830', '-75.92100'), ('TOPTON', 1948, '40.50350', '-75.70260'), ('WERNERSVILLE', 2150, '40.33040', '-76.08310'), ('WEST LAWN', 1597, '40.32850', '-75.99330'), ('WEST READING', 4049, '40.33340', '-75.94690'), ('WEST WYOMISSING', 3016, '40.32270', '-75.99490'), ('WHITFIELD', 2952, '40.33590', '-76.00630'), ('WOMELSDORF', 2599, '40.36560', '-76.18670'), ('WYOMISSING', 8587, '40.33050', '-75.96770'), ('WYOMISSING HILLS', 2568, '40.33470', '-75.98200')], 'partOfState': '', 'wfo': 'PHI'}, -'PAZ067': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ATGLEN', 1217, '39.94710', '-75.97530'), ('AVONDALE', 1108, '39.82390', '-75.78240'), ('CHESTERBROOK', 4625, '40.07570', '-75.45930'), ('COATESVILLE', 10838, '39.98480', '-75.81930'), ('DEVON-BERWYN', 5067, '40.04340', '-75.43870'), ('DOWNINGTOWN', 7589, '40.00720', '-75.70240'), ('ELVERSON', 959, '40.15780', '-75.83150'), ('EXTON', 4267, '40.03160', '-75.63000'), ('HONEY BROOK', 1287, '40.09340', '-75.91100'), ('KENILWORTH', 1576, '40.22540', '-75.64260'), ('KENNETT SQUARE', 5273, '39.84370', '-75.71170'), ('LIONVILLE-MARCHWOOD', 6298, '40.05270', '-75.64560'), ('MALVERN', 3059, '40.03350', '-75.51400'), ('MODENA', 610, '39.96220', '-75.80250'), ('OXFORD', 4315, '39.78570', '-75.98040'), ('PAOLI', 5425, '40.04230', '-75.49280'), ('PARKESBURG', 3373, '39.95870', '-75.91670'), ('PHOENIXVILLE', 14788, '40.13590', '-75.51920'), ('SOUTH COATESVILLE', 997, '39.96810', '-75.81530'), ('SOUTH POTTSTOWN', 2135, '40.23700', '-75.66460'), ('STOWE', 3585, '40.25160', '-75.68160'), ('THORNDALE', 3561, '39.99850', '-75.75220'), ('TOUGHKENAMON', 1375, '39.83090', '-75.75560'), ('WEST CHESTER', 17861, '39.95980', '-75.60610'), ('WEST GOSHEN', 8472, '39.96820', '-75.57300'), ('WEST GROVE', 2652, '39.82140', '-75.82890')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'PAZ066': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ADAMSTOWN', 1203, '40.24090', '-76.06260'), ('AKRON', 4046, '40.15760', '-76.20370'), ('BAINBRIDGE', None, '40.09000', '-76.67000'), ('BETHEL', None, '39.82000', '-76.16000'), ('BRICKERVILLE', 1287, '40.22680', '-76.28650'), ('CHRISTIANA', 1124, '39.95410', '-75.99770'), ('CHURCHTOWN', None, '40.14000', '-75.95000'), ('COLUMBIA', 10311, '40.03340', '-76.49500'), ('DENVER', 3332, '40.23250', '-76.13870'), ('EAST PETERSBURG', 4450, '40.10070', '-76.35350'), ('ELIZABETHTOWN', 11887, '40.15360', '-76.59860'), ('EPHRATA', 13213, '40.18060', '-76.18280'), ('GAP', 1611, '39.98890', '-76.02420'), ('HOLTWOOD', None, '39.82000', '-76.33000'), ('LANCASTER', 56348, '40.04180', '-76.30120'), ('LANDISVILLE', None, '40.09150', '-76.41860'), ('LEOLA', None, '40.09140', '-76.18910'), ('LITITZ', 9029, '40.15370', '-76.30530'), ('MANHEIM', 4784, '40.16330', '-76.39650'), ('MARIETTA', 2689, '40.05700', '-76.55290'), ('MAYTOWN', 2604, '40.07700', '-76.58040'), ('MILLERSVILLE', 7774, '40.00360', '-76.35390'), ('MOUNT JOY', 6765, '40.11050', '-76.50790'), ('MOUNTVILLE', 2444, '40.04060', '-76.43440'), ('NEW HOLLAND', 5092, '40.10100', '-76.09040'), ('PARADISE', 1028, '40.00680', '-76.12230'), ('QUARRYVILLE', 1994, '39.89570', '-76.16120'), ('REAMSTOWN', 3498, '40.21200', '-76.11790'), ('RHEEMS', 1557, '40.12900', '-76.57070'), ('ROTHSVILLE', 3017, '40.15270', '-76.24570'), ('SAFE HARBOR', None, '39.92500', '-76.40000'), ('SMITHVILLE', None, '39.93000', '-76.25000'), ('STRASBURG', 2800, '39.98360', '-76.18560'), ('TERRE HILL', 1237, '40.15750', '-76.05070'), ('WAKEFIELD', None, '39.76000', '-76.17000'), ('WILLOW STREET', 7258, '39.98470', '-76.27040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ065': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ABBOTTSTOWN', 905, '39.88450', '-76.98970'), ('BROGUE', None, '39.86000', '-76.45000'), ('CODORUS', None, '39.80000', '-76.82000'), ('DALLASTOWN', 4087, '39.89970', '-76.64110'), ('DELTA', 741, '39.72610', '-76.32770'), ('DILLSBURG', 2063, '40.11010', '-77.03480'), ('DOVER', 1815, '40.00370', '-76.84970'), ('EAST PROSPECT', 678, '39.97140', '-76.52090'), ('EMIGSVILLE', 2467, '40.00780', '-76.73020'), ('FAWN GROVE', 463, '39.72990', '-76.45110'), ('FELTON', 449, '39.85630', '-76.56150'), ('FRANKLINTOWN', 532, '40.07520', '-77.02910'), ('GLEN ROCK', 1809, '39.79340', '-76.73050'), ('GOLDSBORO', 939, '40.15450', '-76.75050'), ('HALLAM', 1532, '40.00250', '-76.60440'), ('HANOVER', 14535, '39.81210', '-76.98370'), ('JACOBUS', 1203, '39.88240', '-76.71240'), ('LEWISBERRY', 385, '40.13520', '-76.86080'), ('LOGANVILLE', 908, '39.85510', '-76.70880'), ('MANCHESTER', 2350, '40.06130', '-76.72030'), ('NEW FREEDOM', 3512, '39.73630', '-76.69680'), ('NEW SALEM', 648, '39.90240', '-76.79350'), ('PARKVILLE', 6593, '39.78290', '-76.96750'), ('PENNVILLE', 1964, '39.78560', '-76.99040'), ('RED LION', 6149, '39.89870', '-76.60770'), ('SEVEN VALLEYS', 492, '39.85260', '-76.76650'), ('SHENKS FERRY', None, '39.90000', '-76.39000'), ('SHREWSBURY', 3378, '39.77100', '-76.68030'), ('SIDDONSBURG', None, '40.15000', '-76.96000'), ('SPRING GROVE', 2050, '39.88140', '-76.86440'), ('SPRY', 4903, '39.91250', '-76.68750'), ('STEWARTSTOWN', 1752, '39.75240', '-76.59300'), ('STONYBROOK', None, '39.97480', '-76.64300'), ('SUNNYBURN', None, '39.79000', '-76.37000'), ('THOMASVILLE', None, '39.92000', '-76.87000'), ('VALLEY GREEN', 3550, '40.15720', '-76.79300'), ('WEIGELSTOWN', 10117, '39.98740', '-76.82940'), ('WELLSVILLE', 279, '40.05020', '-76.94080'), ('WINDSOR', 1331, '39.91550', '-76.58330'), ('WINTERSTOWN', 546, '39.84090', '-76.61320'), ('WRIGHTSVILLE', 2223, '40.02440', '-76.53150'), ('YORK', 40862, '39.96450', '-76.73180'), ('YORK HAVEN', 809, '40.11010', '-76.71580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ064': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('ARENDTSVILLE', 848, '39.92500', '-77.30120'), ('BENDERSVILLE', 576, '39.98240', '-77.24990'), ('BIGLERVILLE', 1101, '39.93010', '-77.24720'), ('BONNEAUVILLE', 1378, '39.81140', '-77.13680'), ('CARROLL VALLEY', 3291, '39.75060', '-77.38110'), ('CASHTOWN', None, '39.88000', '-77.34000'), ('EAST BERLIN', 1365, '39.93680', '-76.98040'), ('FAIRFIELD', 486, '39.78770', '-77.36920'), ('GERMANTOWN', None, '39.77000', '-77.16000'), ('GETTYSBURG', 7490, '39.83010', '-77.23450'), ('HEIDLERSBURG', None, '39.93000', '-77.09000'), ('LAKE MEADE', 1832, '39.97000', '-77.02000'), ('LITTLESTOWN', 3947, '39.74410', '-77.08870'), ('MCSHERRYSTOWN', 2691, '39.80410', '-77.01960'), ('NEW OXFORD', 1696, '39.86220', '-77.05570'), ('SEVEN STARS', None, '39.85000', '-77.27000'), ('YORK SPRINGS', 574, '40.00890', '-77.11660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CTP'}, -'PAZ069': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BRISTOL', 9923, '40.10160', '-74.85320'), ('BRITTANY FARMS-HIGHLANDS', 3268, '40.26880', '-75.21450'), ('CHALFONT', 3900, '40.28890', '-75.20970'), ('CHURCHVILLE', 4469, '40.20070', '-74.99740'), ('CORNWELLS HEIGHTS-EDDINGT', None, '40.08170', '-74.94710'), ('CROYDON', 9993, '40.09020', '-74.89550'), ('DOYLESTOWN', 8227, '40.31400', '-75.12790'), ('DUBLIN', 2083, '40.37060', '-75.20470'), ('FAIRLESS HILLS', 8365, '40.17880', '-74.85340'), ('FEASTERVILLE-TREVOSE', 6525, '40.15270', '-74.98660'), ('HULMEVILLE', 893, '40.14310', '-74.90750'), ('IVYLAND', 492, '40.20810', '-75.07290'), ('LANGHORNE', 1981, '40.17730', '-74.91930'), ('LANGHORNE MANOR', 927, '40.16580', '-74.91820'), ('LEVITTOWN', 53966, '40.15350', '-74.85310'), ('MORRISVILLE', 1443, '40.20730', '-74.78030'), ('NEW BRITAIN', 3125, '40.29910', '-75.17860'), ('NEW HOPE', 2252, '40.36140', '-74.95930'), ('NEWTOWN', 244, '40.22810', '-74.93270'), ('NEWTOWN GRANT', 3887, '40.26000', '-74.95530'), ('PENNDEL', 2420, '40.15490', '-74.91390'), ('PERKASIE', 8828, '40.37100', '-75.29240'), ('QUAKERTOWN', 8931, '40.43960', '-75.34600'), ('RICHBORO', 6678, '40.22730', '-75.00080'), ('RICHLANDTOWN', 1283, '40.47230', '-75.32130'), ('RIEGELSVILLE', 863, '40.59690', '-75.19780'), ('SELLERSVILLE', 4564, '40.36030', '-75.30830'), ('SILVERDALE', 1001, '40.34640', '-75.27130'), ('TELFORD', 4680, '40.32550', '-75.32730'), ('TRUMBAUERSVILLE', 1059, '40.41410', '-75.37940'), ('TULLYTOWN', 2031, '40.13930', '-74.81280'), ('VILLAGE SHIRES', 4137, '40.20300', '-74.97080'), ('WARMINSTER HEIGHTS', 4191, '40.18670', '-75.08480'), ('WOODBOURNE', 3512, '40.20210', '-74.88640'), ('WOODSIDE', 2575, '40.23030', '-74.85870'), ('YARDLEY', 2498, '40.23980', '-74.83840')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'PAZ068': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('AMBLER', 6426, '40.15610', '-75.22190'), ('ARDMORE', 12616, '40.00290', '-75.29480'), ('AUDUBON', 6549, '40.12980', '-75.42840'), ('BLUE BELL', 6395, '40.14570', '-75.26770'), ('BRIDGEPORT', 4371, '40.10390', '-75.34340'), ('BRYN ATHYN', 1351, '40.13840', '-75.06600'), ('BRYN MAWR', 4382, '40.02180', '-75.31590'), ('COLLEGEVILLE', 8032, '40.18710', '-75.45740'), ('CONSHOHOCKEN', 7589, '40.07750', '-75.30320'), ('EAGLEVILLE', 4458, '40.15790', '-75.40780'), ('EAST GREENVILLE', 3103, '40.40600', '-75.50650'), ('EAST NORRITON', 13211, '40.15180', '-75.33680'), ('EVANSBURG', 1536, '40.19020', '-75.43600'), ('FLOURTOWN', 4669, '40.10280', '-75.20860'), ('FORT WASHINGTON', 3680, '40.13840', '-75.19180'), ('GILBERTSVILLE', 4242, '40.32280', '-75.60900'), ('GLENSIDE', 7914, '40.10280', '-75.15260'), ('GREEN LANE', 584, '40.33580', '-75.47060'), ('HALFWAY HOUSE', 1823, '40.28190', '-75.64360'), ('HARLEYSVILLE', 8795, '40.27840', '-75.38800'), ('HATBORO', 7393, '40.17750', '-75.10480'), ('HATFIELD', 2605, '40.27800', '-75.29920'), ('HORSHAM', 14779, '40.18250', '-75.13920'), ('JENKINTOWN', 4478, '40.09600', '-75.12980'), ('KING OF PRUSSIA', 18511, '40.09550', '-75.38340'), ('KULPSVILLE', 8005, '40.24370', '-75.34090'), ('LANSDALE', 16071, '40.24180', '-75.28210'), ('MAPLE GLEN', 7042, '40.17520', '-75.18050'), ('MONTGOMERYVILLE', 12031, '40.24810', '-75.24170'), ('NARBERTH', 4233, '40.00780', '-75.26380'), ('NORRISTOWN', 31282, '40.12210', '-75.33970'), ('NORTH WALES', 3342, '40.21060', '-75.27540'), ('ORELAND', 5509, '40.11440', '-75.18030'), ('PENNSBURG', 2732, '40.39360', '-75.49590'), ('PLYMOUTH MEETING', 5593, '40.10870', '-75.28080'), ('POTTSGROVE', 3266, '40.26460', '-75.61220'), ('POTTSTOWN', 21859, '40.25030', '-75.64400'), ('RED HILL', 2196, '40.37680', '-75.48370'), ('ROCKLEDGE', 2577, '40.08220', '-75.09000'), ('ROYERSFORD', 4246, '40.18520', '-75.53800'), ('SANATOGA', 7734, '40.24950', '-75.58920'), ('SCHWENKSVILLE', 1693, '40.25790', '-75.46650'), ('SKIPPACK', 2889, '40.22100', '-75.40160'), ('SOUDERTON', 6730, '40.31010', '-75.32210'), ('SPRING CITY', 3305, '40.17670', '-75.54690'), ('SPRING HOUSE', 3290, '40.18360', '-75.22640'), ('SPRING MOUNT', 2205, '40.27360', '-75.46540'), ('TRAPPE', 3210, '40.19410', '-75.47740'), ('TROOPER', 6061, '40.14960', '-75.39940'), ('WEST CONSHOHOCKEN', 1446, '40.06990', '-75.31900'), ('WEST NORRITON', 14901, '40.12940', '-75.37900'), ('WILLOW GROVE', 16234, '40.14900', '-75.11850'), ('WYNCOTE', 3046, '40.09220', '-75.14790'), ('WYNDMOOR', 5601, '40.08320', '-75.19300')], 'partOfState': 'SOUTHEAST', 'wfo': 'PHI'}, -'WYZ060': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('KEELINE', None, '42.75000', '-104.75000'), ('LANCE CREEK', 51, '43.02000', '-104.64000'), ('LUSK', 1447, '42.76070', '-104.45360'), ('MANVILLE', 101, '42.77950', '-104.61690'), ('REDBIRD', None, '43.24000', '-104.27000'), ('VAN TASSELL', 18, '42.66360', '-104.09070')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CYS'}, -'MTZ042': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('LAVINA', 209, '46.29640', '-108.93910'), ('RYEGATE', 268, '46.29880', '-109.25340')], 'partOfState': 'CENTRAL', 'wfo': 'BYZ'}, -'WYZ061': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BAGGS', 348, '41.03560', '-107.65590'), ('DIXON', 79, '41.03410', '-107.53430'), ('RAWLINS', 8538, '41.78450', '-107.22790'), ('RIVERSIDE', 59, '41.21440', '-106.78070'), ('SARATOGA', 1726, '41.45150', '-106.81220'), ('SINCLAIR', 423, '41.77750', '-107.11670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CYS'}, -'OHZ038': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('GLENMONT', 283, '40.51700', '-82.09270'), ('HOLMESVILLE', 386, '40.62840', '-81.92340'), ('KILLBUCK', 839, '40.49720', '-81.98360'), ('MILLERSBURG', 3326, '40.55340', '-81.91560'), ('NASHVILLE', 172, '40.59600', '-82.11330')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'GAZ118': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALABAMA JUNCTION', None, '32.07580', '-81.14030'), ('BLOOMINGDALE', 2665, '32.13220', '-81.29920'), ('BURROUGHS', None, '31.97470', '-81.24780'), ('CENTRAL JUNCTION', None, '32.09000', '-81.16440'), ('CHATHAM CITY', None, '32.10030', '-81.15440'), ('CLEARVIEW', None, '32.09110', '-81.12060'), ('GARDEN CITY', 11289, '32.10000', '-81.17500'), ('GEORGETOWN', 973, '31.98310', '-81.22750'), ('GRUBBS', None, '32.01030', '-81.18110'), ('HAMER', None, '32.09390', '-81.20780'), ('HUNTER ARMY AIRFIELD', None, '32.00970', '-81.14570'), ('LAMARVILLE', None, '32.03360', '-81.14860'), ('LIBERTY CITY', None, '32.04750', '-81.13780'), ('MEINHARD', None, '32.18140', '-81.21110'), ('MONTEITH', None, '32.18030', '-81.19030'), ("O'LEARY", None, '32.21060', '-81.17610'), ('POOLER', 6239, '32.11530', '-81.24720'), ('PORT WENTWORTH', 3276, '32.14990', '-81.18000'), ('RICHFIELD', None, '32.04080', '-81.13280'), ('SILK HOPE', None, '32.04280', '-81.19190'), ('TUTENS', None, '32.10500', '-81.25390'), ('UNION JUNCTION', None, '32.05000', '-81.12670'), ('WHEAT HILL', None, '32.10580', '-81.15640'), ('WILLIAMS', None, '32.10610', '-81.25220'), ('WINDWARD', None, '31.97440', '-81.18640')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'NEZ078': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CRETE', 6028, '40.62560', '-96.95830'), ('DE WITT', 572, '40.39500', '-96.92180'), ('DORCHESTER', 615, '40.64760', '-97.11480'), ('FRIEND', 1174, '40.65110', '-97.28400'), ('SWANTON', 106, '40.37930', '-97.07970'), ('TOBIAS', 158, '40.41840', '-97.33630'), ('WESTERN', 287, '40.39310', '-97.19930'), ('WILBER', 1761, '40.48090', '-96.96330')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ079': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENKELMAN', 1006, '40.05160', '-101.53460'), ('HAIGLER', 211, '40.01240', '-101.93850'), ('MAX', None, '40.11000', '-101.40000'), ('PARKS', None, '40.04000', '-101.73000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GLD'}, -'NEZ076': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CLAY CENTER', 861, '40.52330', '-98.05470'), ('DEWEESE', 80, '40.35430', '-98.13920'), ('EDGAR', 539, '40.36840', '-97.97050'), ('FAIRFIELD', 467, '40.43200', '-98.10320'), ('GLENVIL', 332, '40.50260', '-98.25480'), ('HARVARD', 998, '40.61930', '-98.09620'), ('INLAND', None, '40.59080', '-98.22920'), ('ONG', 67, '40.39820', '-97.83910'), ('SARONVILLE', 61, '40.60290', '-97.93890'), ('SUTTON', 1447, '40.60760', '-97.85830'), ('TRUMBULL', 212, '40.68010', '-98.27280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ077': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('EXETER', 712, '40.64470', '-97.44920'), ('FAIRMONT', 691, '40.63550', '-97.58420'), ('GENEVA', 2226, '40.52760', '-97.60160'), ('GRAFTON', 152, '40.62960', '-97.71510'), ('MILLIGAN', 315, '40.49990', '-97.38800'), ('OHIOWA', 142, '40.41410', '-97.45190'), ('SHICKLEY', 376, '40.41610', '-97.72350'), ('STRANG', 32, '40.41510', '-97.58710')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ074': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AXTELL', 696, '40.47900', '-99.12820'), ('HEARTWELL', 80, '40.56970', '-98.78850'), ('MINDEN', 2964, '40.50080', '-98.95080'), ('NORMAN', 49, '40.47930', '-98.79100'), ('WILCOX', 360, '40.36450', '-99.16880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ075': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AYR', 98, '40.43790', '-98.44020'), ('HANSEN', None, '40.69580', '-98.36860'), ('HASTINGS', 24064, '40.58930', '-98.39010'), ('HOLSTEIN', 229, '40.46480', '-98.65110'), ('JUNIATA', 693, '40.58950', '-98.50540'), ('KENESAW', 873, '40.61960', '-98.65810'), ('PROSSER', 94, '40.68870', '-98.57730'), ('ROSELAND', 242, '40.47090', '-98.55790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'OHZ030': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ASHLAND', 21249, '40.86690', '-82.31760'), ('BAILEY LAKES', 397, '40.94740', '-82.35550'), ('HAYESVILLE', 348, '40.77470', '-82.26070'), ('JEROMESVILLE', 478, '40.80390', '-82.19620'), ('LOUDONVILLE', 2906, '40.63470', '-82.23400'), ('MIFFLIN', 144, '40.77440', '-82.36430'), ('PERRYSVILLE', 816, '40.65670', '-82.31240'), ('POLK', 357, '40.94520', '-82.21430'), ('SAVANNAH', 372, '40.96740', '-82.36430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'NEZ073': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ATLANTA', 130, '40.36830', '-99.47240'), ('BERTRAND', 786, '40.52670', '-99.63270'), ('FUNK', 204, '40.46290', '-99.24950'), ('HOLDREGE', 5636, '40.44060', '-99.37550'), ('LOOMIS', 397, '40.47810', '-99.50740')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'OHZ032': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALLIANCE', 23253, '40.91110', '-81.11710'), ('BEACH CITY', 1137, '40.65270', '-81.58010'), ('BREWSTER', 2324, '40.71270', '-81.60070'), ('CANAL FULTON', 5061, '40.89000', '-81.58450'), ('CANTON', 80806, '40.81220', '-81.37330'), ('EAST CANTON', 1629, '40.78890', '-81.28340'), ('EAST SPARTA', 806, '40.66980', '-81.35380'), ('GREENTOWN', 3154, '40.92750', '-81.40190'), ('HARTVILLE', 2174, '40.96100', '-81.33400'), ('HILLS AND DALES', 260, '40.82810', '-81.44490'), ('LOUISVILLE', 8904, '40.83720', '-81.26090'), ('MAGNOLIA', 931, '40.65150', '-81.29250'), ('MASSILLON', 31325, '40.78670', '-81.52010'), ('MEYERS LAKE', 565, '40.81390', '-81.41820'), ('MINERVA', 3934, '40.72980', '-81.10240'), ('NAVARRE', 1440, '40.72260', '-81.52270'), ('NORTH CANTON', 16369, '40.87310', '-81.39840'), ('PERRY HEIGHTS', 8900, '40.79680', '-81.46910'), ('UNIONTOWN', 2802, '40.97350', '-81.40350'), ('WAYNESBURG', 1003, '40.66810', '-81.25920'), ('WILMOT', 335, '40.65610', '-81.63500')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHZ033': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AUSTINTOWN', 31627, '41.09160', '-80.73830'), ('BELOIT', 1024, '40.92050', '-81.00050'), ('BOARDMAN', 37215, '41.03220', '-80.66850'), ('CAMPBELL', 9460, '41.07740', '-80.59060'), ('CANFIELD', 7374, '41.02970', '-80.76740'), ('CRAIG BEACH', 1254, '41.11850', '-80.98240'), ('LOWELLVILLE', 1281, '41.04010', '-80.54810'), ('MAPLE RIDGE', 910, '40.91630', '-81.05000'), ('NEW MIDDLETOWN', 1682, '40.96370', '-80.56000'), ('POLAND', 2866, '41.02410', '-80.61410'), ('SEBRING', 4912, '40.92350', '-81.02230'), ('STRUTHERS', 11756, '41.05120', '-80.59310'), ('WASHINGTONVILLE', 789, '40.90020', '-80.76790'), ('YOUNGSTOWN', 82026, '41.09910', '-80.64640')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'ILZ003': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('CHERRY VALLEY', 2191, '42.24000', '-88.96180'), ('DURAND', 1081, '42.43560', '-89.32860'), ('LAKE SUMMERSET', 2061, '42.44970', '-89.39750'), ('LOVES PARK', 20044, '42.33580', '-89.01000'), ('MACHESNEY PARK', 20759, '42.36040', '-89.03800'), ('NEW MILLFORD', 541, '42.17460', '-89.06540'), ('PECATONICA', 1997, '42.30990', '-89.35850'), ('ROCKFORD', 150115, '42.27030', '-89.06310'), ('ROCKFORD AIRPORT', None, '42.20000', '-89.10000'), ('ROCKTON', 5296, '42.44930', '-89.06990'), ('ROSCOE', 6244, '42.41680', '-89.00700'), ('SOUTH BELOIT', 5397, '42.48470', '-89.03340'), ('WINNEBAGO', 2958, '42.26800', '-89.24050')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'ILZ002': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AFOLKEY', None, '42.43330', '-89.56670'), ('BOLTON', None, '42.25000', '-89.73330'), ('BUENA VISTA', None, '42.43330', '-89.68330'), ('CEDARVILLE', 719, '42.37510', '-89.63650'), ('DAKOTA', 499, '42.38740', '-89.52710'), ('DAKOTA DORNINK AIRPORT', None, '42.38330', '-89.56670'), ('DAMASCUS', None, '42.36670', '-89.70000'), ('DAVIS', 662, '42.42220', '-89.41570'), ('ELEROY', None, '42.33330', '-89.76670'), ('FREEPORT', 26443, '42.29020', '-89.63470'), ('FREEPORT ALBERTUS AIRPORT', None, '42.25000', '-89.58330'), ('GERMAN VALLEY', 481, '42.21580', '-89.48380'), ('KENT', None, '42.31670', '-89.90000'), ('LAKE LEAQUANA', None, '42.41670', '-89.83330'), ('LENA', 2887, '42.38090', '-89.82580'), ('LORAN', None, '42.23330', '-89.91670'), ('LOST LAKE', None, '42.36670', '-89.48330'), ('MC CONNELL', None, '42.43330', '-89.73330'), ('OAKDALE NATURE PRESERVE', None, '42.23330', '-89.60000'), ('ONECO', None, '42.48330', '-89.66670'), ('ORANGEVILLE', 751, '42.46810', '-89.64470'), ('PEARL CITY', 780, '42.26770', '-89.82550'), ('RED OAK', None, '42.40000', '-89.66670'), ('RIDOTT', 159, '42.29750', '-89.47730'), ('RIDOTT CORNERS', None, '42.28330', '-89.48330'), ('ROCK CITY', 313, '42.41260', '-89.47080'), ('ROCK GROVE', None, '42.46670', '-89.51670'), ('SCIOTO MILLS', None, '42.35000', '-89.66670'), ('WADDAMS GROVE', None, '42.41670', '-89.88330'), ('WINNESHIEK', None, '42.35000', '-89.53330'), ('WINSLOW', 345, '42.49240', '-89.79630')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ILZ001': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AIKEN', None, '42.35000', '-90.41670'), ('APPLE CANYON LAKE', None, '42.42000', '-90.16000'), ('APPLE RIVER', 379, '42.50190', '-90.09470'), ('APPLE RIVER CANYON S. P.', None, '42.45000', '-90.05000'), ('BLANDING', None, '42.26670', '-90.38330'), ('COUNCIL HILL', None, '42.48330', '-90.35000'), ('COUNCIL HILL STATION', None, '42.46670', '-90.33330'), ('DERINDA CENTER', None, '42.25000', '-90.18330'), ('EAST DUBUQUE', 1995, '42.49150', '-90.63880'), ('ELIZABETH', 682, '42.31610', '-90.22470'), ('ELMOVILLE', None, '42.26670', '-90.05000'), ('GALENA', 3460, '42.42070', '-90.42730'), ('GALENA JCT.', None, '42.36670', '-90.45000'), ('GALENA TERRITORY', None, '42.40000', '-90.33330'), ('GUILFORD', None, '42.42670', '-90.30000'), ('HANOVER', 836, '42.25420', '-90.27870'), ('MASSBACH', None, '42.25000', '-90.11670'), ('MENOMINEE', 237, '42.47460', '-90.54200'), ('NORA', 118, '42.45730', '-89.94460'), ('NORTH HANOVER', None, '42.30000', '-90.28330'), ('PLUM RIVER', None, '42.30000', '-89.98330'), ('RICE', None, '42.33330', '-90.40000'), ('RODDEN', None, '42.33330', '-90.31670'), ('SCALES MOUND', 401, '42.47750', '-90.25200'), ('SCHAPVILLE', None, '42.40000', '-90.20000'), ('STOCKTON', 1926, '42.35160', '-90.00600'), ('STOCKTON AIRPORT', None, '42.31670', '-90.00000'), ('WARREN', 1496, '42.49470', '-89.99020'), ('WHITTON', None, '42.23330', '-90.31670'), ('WILLOW', None, '42.28330', '-89.95000'), ('WOODBINE', None, '42.35000', '-90.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ILZ007': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ARGO FAY', None, '42.00000', '-90.01670'), ('CENTER HILL', None, '42.08330', '-90.05000'), ('CHADWICK', 505, '42.01410', '-89.88890'), ('FAIRHAVEN', None, '41.95000', '-89.93330'), ('HITT', None, '42.00000', '-89.73330'), ('IDEAL', None, '41.98330', '-89.98330'), ('LANARK', 1584, '42.10280', '-89.83210'), ('MILLEDGEVILLE', 1016, '41.96380', '-89.77560'), ('MISSISSIPPI PALISADES S.', None, '42.13330', '-90.16670'), ('MOUNT CARROLL', 1832, '42.09540', '-89.97690'), ('RIVERVIEW', None, '42.05000', '-90.11670'), ('SAVANNA', 3542, '42.09000', '-90.13990'), ('SAVANNA STRANSKY AIRPORT', None, '42.05000', '-90.10000'), ('SHANNON', 854, '42.15200', '-89.74010'), ('THOMSON', 559, '41.95750', '-90.10320'), ('WACKER', None, '42.05000', '-90.05000')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'ILZ006': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ANTIOCH', 8788, '42.47470', '-88.07950'), ('BANNOCKBURN', 1429, '42.19280', '-87.86840'), ('BEACH PARK', 10072, '42.42500', '-87.85620'), ('BUFFALO GROVE', 42909, '42.16630', '-87.96330'), ('CHANNEL LAKE', 1785, '42.48430', '-88.15030'), ('DEER PARK', 3102, '42.16810', '-88.08820'), ('DEERFIELD', 18420, '42.16560', '-87.84990'), ('FOREST LAKE', 1530, '42.20560', '-88.05220'), ('FOX LAKE', 9178, '42.41810', '-88.18330'), ('FOX LAKE HILLS', 2561, '42.40710', '-88.12350'), ('FOX RIVER VALLEY GARDENS', 788, '42.24440', '-88.19490'), ('GAGES LAKE', 10415, '42.35160', '-87.98240'), ('GRANDWOOD PARK', 4521, '42.39320', '-87.98670'), ('GRAYSLAKE', 18506, '42.34980', '-88.03850'), ('GREEN OAKS', 3572, '42.30170', '-87.91520'), ('GURNEE', 28834, '42.37710', '-87.93600'), ('HAINESVILLE', 2129, '42.33970', '-88.06470'), ('HAWTHORN WOODS', 6002, '42.22360', '-88.05730'), ('HIGHLAND PARK', 31365, '42.18270', '-87.80970'), ('HIGHWOOD', 4143, '42.21160', '-87.81170'), ('INDIAN CREEK', 194, '42.22590', '-87.97680'), ('KILDEER', 3460, '42.17930', '-88.04910'), ('LAKE BARRINGTON', 4757, '42.21080', '-88.16520'), ('LAKE BLUFF', 6056, '42.28260', '-87.85030'), ('LAKE FOREST', 20059, '42.23630', '-87.85760'), ('LAKE VILLA', 5864, '42.41750', '-88.08230'), ('LAKE ZURICH', 18104, '42.19230', '-88.08800'), ('LIBERTYVILLE', 20742, '42.28410', '-87.96600'), ('LINCOLNSHIRE', 6108, '42.19560', '-87.91610'), ('LINDENHURST', 12539, '42.41740', '-88.02980'), ('LONG GROVE', 6735, '42.19540', '-88.00280'), ('LONG LAKE', 3356, '42.37670', '-88.12620'), ('METTAWA', 367, '42.24370', '-87.91540'), ('MUNDELEIN', 30935, '42.26700', '-88.00310'), ('NORTH BARRINGTON', 2918, '42.20710', '-88.13140'), ('NORTH CHICAGO', 35918, '42.31860', '-87.85920'), ('OLD MILL CREEK', 251, '42.43310', '-87.98210'), ('PARK CITY', 6637, '42.35070', '-87.89100'), ('RIVERWOODS', 3843, '42.17110', '-87.89590'), ('ROUND LAKE', 5842, '42.34990', '-88.11030'), ('ROUND LAKE BEACH', 25859, '42.37760', '-88.08170'), ('ROUND LAKE HEIGHTS', 1347, '42.38400', '-88.10410'), ('ROUND LAKE PARK', 6038, '42.32320', '-88.05860'), ('THIRD LAKE', 1355, '42.36770', '-88.00840'), ('TOWER LAKES', 1310, '42.23020', '-88.15580'), ('VENETIAN VILLAGE', 3082, '42.39980', '-88.04620'), ('VERNON HILLS', 20120, '42.23600', '-87.96270'), ('WADSWORTH', 3083, '42.43690', '-87.92340'), ('WAUCONDA', 9448, '42.26660', '-88.13950'), ('WAUKEGAN', 87901, '42.37090', '-87.86800'), ('WINTHROP HARBOR', 6670, '42.47980', '-87.82820'), ('ZION', 22866, '42.45670', '-87.84310')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ILZ005': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALGONQUIN', 23276, '42.16420', '-88.30050'), ('BULL VALLEY', 726, '42.31140', '-88.34990'), ('CARY', 15531, '42.20900', '-88.24970'), ('CRYSTAL LAKE', 38000, '42.23190', '-88.33050'), ('FOX RIVER GROVE', 4862, '42.19700', '-88.21900'), ('HARVARD', 7996, '42.42120', '-88.61530'), ('HEBRON', 1038, '42.47100', '-88.42990'), ('HOLIDAY HILLS', 831, '42.29130', '-88.22690'), ('HUNTLEY', 5730, '42.16810', '-88.42420'), ('ISLAND LAKE', 8153, '42.27600', '-88.20150'), ('LAKE IN THE HILLS', 23152, '42.19280', '-88.32160'), ('LAKEMOOR', 2788, '42.34150', '-88.20490'), ('LAKEWOOD', 2337, '42.22010', '-88.37810'), ('MARENGO', 6355, '42.24790', '-88.60030'), ('MCCULLOM LAKE', 1038, '42.36880', '-88.29380'), ('MCHENRY', 21501, '42.34070', '-88.29130'), ('OAKWOOD HILLS', 2194, '42.24730', '-88.24440'), ('PISTAKEE HIGHLANDS', 3812, '42.40320', '-88.21220'), ('PRAIRIE GROVE', 960, '42.28030', '-88.26650'), ('RICHMOND', 1091, '42.48120', '-88.30730'), ('SPRING GROVE', 3880, '42.44490', '-88.24380'), ('SUNNYSIDE', None, '42.39560', '-88.23370'), ('UNION', 576, '42.23430', '-88.54350'), ('WONDER LAKE', 1345, '42.38000', '-88.35670'), ('WOODSTOCK', 20151, '42.31070', '-88.43670')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'ILZ004': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BELVIDERE', 20820, '42.25260', '-88.84830'), ('CAPRON', 961, '42.39890', '-88.74260'), ('POPLAR GROVE', 1368, '42.36730', '-88.82290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LOT'}, -'ILZ009': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AGNEW', None, '41.78330', '-89.80000'), ('ALBANY', 895, '41.78560', '-90.21950'), ('BROOK HAVEN', None, '41.66670', '-89.91670'), ('COLETA', 155, '41.90560', '-89.79920'), ('COMO', None, '41.76670', '-89.76670'), ('DEER GROVE', 48, '41.61010', '-89.68460'), ('DENROCK', None, '41.70000', '-89.98330'), ('DOUGLAS PARK', None, '41.80000', '-89.73330'), ('EAST CLINTON', None, '41.83330', '-90.16670'), ('EMERSON', None, '41.80000', '-89.76670'), ('ERIE', 1589, '41.65870', '-90.08120'), ('FENTON', None, '41.73330', '-90.03330'), ('FRANKLIN CORNERS', None, '41.91670', '-89.91670'), ('FULTON', 3881, '41.86500', '-90.15870'), ('GALT', None, '41.78330', '-89.76670'), ('GARDEN PLAIN', None, '41.80000', '-90.13330'), ('GRIMES ADDITION', None, '41.80000', '-89.75000'), ('HAMILTON CORNERS', None, '41.70000', '-89.96670'), ('LEON CORNERS', None, '41.60000', '-89.91670'), ('LYNDON', 566, '41.71730', '-89.92520'), ('MALVERN', None, '41.85000', '-89.88330'), ('MORRISON', 4447, '41.80840', '-89.96540'), ('MORRISON-ROCKWOOD STATE P', None, '41.85000', '-89.96670'), ('NEWTON CORNERS', None, '41.73330', '-90.11670'), ('PENROSE', None, '41.88330', '-89.66670'), ('PORTLAND CORNERS', None, '41.66670', '-89.98330'), ('PROPHETSTOWN', 2023, '41.66970', '-89.93460'), ('ROCK FALLS', 9580, '41.77420', '-89.69110'), ('ROUND GROVE', None, '41.78330', '-89.86670'), ('SPRING HILL', None, '41.61670', '-90.05000'), ('STERLING', 15451, '41.79820', '-89.69150'), ('TAMPICO', 772, '41.63050', '-89.78550'), ('UNION GROVE', None, '41.83330', '-90.03330'), ('UNIONVILLE', None, '41.81670', '-89.98330'), ('USTICK', None, '41.88330', '-90.00000'), ('WHITE PIGEON', None, '41.88330', '-89.88330'), ('WHITESIDE COUNTY AIRPORT', None, '41.75000', '-89.68330'), ('YEOWARD ADDITION', None, '41.75000', '-89.66670')], 'partOfState': 'NORTHWEST', 'wfo': 'DVN'}, -'MTZ044': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('DEVON', None, '48.46670', '-111.47780'), ('ETHRIDGE', None, '48.55780', '-112.11970'), ('FERDIG', None, '48.75420', '-111.77420'), ('GALATA', None, '48.47560', '-111.35140'), ('KEVIN', 178, '48.74580', '-111.96550'), ('OILMONT', None, '48.74000', '-111.84000'), ('SHELBY', 3216, '48.50950', '-111.85670'), ('SUNBURST', 415, '48.87650', '-111.90620')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MNZ009': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARMEL', None, '48.28170', '-95.44420'), ('FOURTOWN', None, '48.28110', '-95.33530'), ('GATES CORNER', None, '48.45280', '-95.31890'), ('JELLE', None, '48.23810', '-95.40000'), ('KELLIHER', 294, '47.94300', '-94.44600'), ('MALCOLM', None, '48.32440', '-95.33530'), ('OTTO', None, '48.08810', '-94.60720'), ('PONEMAH', 874, '48.02060', '-94.91360'), ('RED LAKE', 1430, '47.87640', '-95.01670'), ('REDBY', 957, '47.87860', '-94.91280'), ('SAUM', None, '47.97470', '-94.67670'), ('SHOOKS', None, '47.87420', '-94.43810'), ('SHOTLEY', None, '48.04890', '-94.63860'), ('THORHULT', None, '48.23030', '-95.24780'), ('WASKISH', None, '48.16140', '-94.51220')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGF'}, -'MNZ008': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ESPELIE', None, '48.22360', '-95.68000'), ('GATZKE', None, '48.42440', '-95.78390'), ('GRYGLA', 228, '48.29970', '-95.61970'), ('HOLT', 89, '48.29210', '-96.19390'), ('MIDDLE RIVER', 319, '48.43560', '-96.16190'), ('NEWFOLDEN', 362, '48.35520', '-96.32970'), ('ROSEWOOD', None, '48.18940', '-96.29000')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ005': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BADGER', 470, '48.77610', '-96.02070'), ('CASPERSON', None, '48.57610', '-95.68690'), ('FOX', None, '48.83890', '-95.89860'), ('GREENBUSH', 784, '48.69820', '-96.18390'), ('HAUG', None, '48.81970', '-96.18420'), ('HAYES LAKE STATE PARK', None, '48.62360', '-95.50780'), ('LEO', None, '48.76080', '-96.25030'), ('MALUNG', None, '48.77250', '-95.72390'), ('PENCER', None, '48.69920', '-95.63750'), ('PINECREEK', None, '48.97830', '-95.94250'), ('ROOSEVELT', 166, '48.80360', '-95.09670'), ('ROSEAU', 2756, '48.84580', '-95.76190'), ('ROSS', None, '48.90610', '-95.92000'), ('SALOL', None, '48.86610', '-95.57060'), ('SKIME', None, '48.54690', '-95.60250'), ('STRATHCONA', 29, '48.55220', '-96.16780'), ('SWIFT', None, '48.85330', '-95.22110'), ('TORFIN', None, '48.59780', '-95.73330'), ('WANNASKA', None, '48.65830', '-95.73440'), ('WARROAD', 1722, '48.90850', '-95.32070')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ004': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARIBOU', None, '48.98250', '-96.44920'), ('DONALDSON', 41, '48.57470', '-96.89730'), ('HALLOCK', 1196, '48.76640', '-96.94360'), ('HALMA', 78, '48.66080', '-96.59760'), ('HUMBOLDT', 61, '48.92150', '-97.09430'), ('KARLSTAD', 794, '48.57810', '-96.51560'), ('KENNEDY', 255, '48.64350', '-96.91010'), ('LAKE BRONSON', 246, '48.73260', '-96.66260'), ('LANCASTER', 363, '48.85790', '-96.80280'), ('MATTSON', None, '48.68940', '-97.07330'), ('NORTHCOTE', None, '48.84530', '-97.00080'), ('NOYES', None, '48.99750', '-97.20420'), ('ORLEANS', None, '48.92610', '-96.93640'), ('ROBBIN', None, '48.57280', '-97.14220'), ('ST. VINCENT', 117, '48.96780', '-97.22470')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ007': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALVARADO', 371, '48.19260', '-96.99830'), ('ARGYLE', 656, '48.33740', '-96.81570'), ('BIG WOODS', None, '48.31140', '-97.10780'), ('ENGLUND', None, '48.48580', '-96.62780'), ('FLORIAN', None, '48.44220', '-96.62780'), ('MARCH', None, '48.19500', '-96.89690'), ('OLD MILL STATE PARK', None, '48.36140', '-96.57060'), ('OSLO', 347, '48.19490', '-97.12790'), ('RADIUM', None, '48.22940', '-96.61330'), ('STEPHEN', 708, '48.45150', '-96.87720'), ('STRANDQUIST', 88, '48.49000', '-96.44810'), ('VIKING', 92, '48.21790', '-96.40640'), ('WARREN', 1678, '48.19610', '-96.76980')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ006': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ANGLE INLET', None, '49.34530', '-95.06250'), ('ARNESEN', None, '48.95750', '-95.06720'), ('BAUDETTE', 1104, '48.71120', '-94.58700'), ('CARP', None, '48.50530', '-94.64690'), ('CLEMENTSON', None, '48.69080', '-94.43610'), ('FAUNCE', None, '48.59310', '-94.95220'), ('FLAG ISLAND', None, '49.32470', '-94.88500'), ('GRACETON', None, '48.74110', '-94.83610'), ('LONG POINT', None, '48.97720', '-94.95970'), ('OAK ISLAND', None, '49.31000', '-94.84970'), ('OAKS CORNER', None, '48.42440', '-94.94970'), ('PENASSE', None, '49.35670', '-94.95860'), ('PITT', None, '48.71750', '-94.73580'), ('WILLIAMS', 210, '48.76850', '-94.95270')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGF'}, -'MNZ001': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ANGUS', None, '48.08110', '-96.70280'), ('BELTRAMI', 101, '47.54320', '-96.52800'), ('BYGLAND', None, '47.81170', '-96.93190'), ('CLIMAX', 243, '47.60680', '-96.81230'), ('CROOKSTON', 8192, '47.77420', '-96.60560'), ('DAVIDSON', None, '47.87670', '-96.84690'), ('EAST GRAND FORKS', 7501, '47.93000', '-97.01590'), ('ELDRED', None, '47.68280', '-96.78000'), ('EUCLID', None, '47.97190', '-96.63860'), ('FISHER', 435, '47.79930', '-96.79960'), ('GENTILLY', None, '47.78920', '-96.44890'), ('GREENVIEW', None, '47.62580', '-96.56030'), ('HAROLD', None, '47.70220', '-96.49720'), ('KEY WEST', None, '47.93470', '-96.78310'), ('MALLORY', None, '47.87670', '-96.91140'), ('MELVIN', None, '47.62080', '-96.38890'), ('NIELSVILLE', 91, '47.52880', '-96.81630'), ('SHERACK', None, '48.02080', '-96.78140'), ('TABOR', None, '48.07920', '-96.86250')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ002': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADA', 1657, '47.29950', '-96.51390'), ('BORUP', 91, '47.18080', '-96.50580'), ('FAITH', None, '47.28690', '-96.09860'), ('FLAMING', None, '47.45670', '-96.27030'), ('FLOM', None, '47.16610', '-96.13060'), ('GARY', 215, '47.37280', '-96.26510'), ('HADLER', None, '47.36860', '-96.53500'), ('HALSTAD', 622, '47.35120', '-96.82400'), ('HENDRUM', 315, '47.26380', '-96.81020'), ('LOCKHART', None, '47.44000', '-96.55080'), ('PERLEY', 121, '47.17660', '-96.80050'), ('RANUM', None, '47.45560', '-96.13140'), ('RINDAL', None, '47.49940', '-96.13110'), ('SHELLY', 266, '47.45750', '-96.82000'), ('SYRE', None, '47.18030', '-96.25830'), ('TWIN VALLEY', 865, '47.25780', '-96.25840'), ('WAUKON', None, '47.36890', '-96.13080')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'NMZ029': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BRONCO', None, '33.25690', '-103.05860'), ('CAPROCK', None, '33.39190', '-103.71000'), ('CROSSROADS', None, '33.51220', '-103.33920'), ('GLADIOLA', None, '33.25720', '-103.17940'), ('MCDONALD', None, '33.14060', '-103.31690'), ('TATUM', 683, '33.25530', '-103.31530')], 'partOfState': 'SOUTHEAST', 'wfo': 'MAF'}, -'NMZ028': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARTESIA', 10692, '32.84750', '-104.42970'), ('ATOKA', None, '32.76940', '-104.38830'), ('AVALON', None, '32.49750', '-104.23610'), ('CARLSBAD', 25625, '32.40420', '-104.23660'), ('CARLSBAD NORTH', 1245, '32.44630', '-104.22260'), ('DAYTON', None, '32.73140', '-104.38470'), ('ESPUELA', None, '32.92970', '-104.38720'), ('HOPE', 107, '32.81730', '-104.73670'), ('LAKEWOOD', None, '32.61780', '-104.35390'), ('LOCO HILLS', None, '32.81890', '-103.97640'), ('LOVING', 1326, '32.28650', '-104.09600'), ('MALAGA', None, '32.22390', '-104.07190'), ('OTIS', None, '32.35110', '-104.16800'), ('SEVEN RIVERS', None, '32.59500', '-104.42110'), ('WHITES CITY', None, '32.17560', '-104.37610')], 'partOfState': 'SOUTHEAST', 'wfo': 'MAF'}, -'KYZ099': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DOVER', 316, '38.75580', '-83.88340'), ('GERMANTOWN', 190, '38.65200', '-83.96720'), ('LEWISBURG', 903, '38.55000', '-83.76000'), ('MAYSVILLE', 8993, '38.62950', '-83.78010'), ('SARDIS', 149, '38.53420', '-83.95750'), ('WASHINGTON', None, '38.61590', '-83.80810')], 'partOfState': 'NORTHERN', 'wfo': 'ILN'}, -'NMZ020': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARCH', None, '34.11300', '-103.14200'), ('CAUSEY', 52, '33.86520', '-103.11680'), ('DORA', 130, '33.93320', '-103.33530'), ('ELIDA', 183, '33.94420', '-103.65460'), ('FLOYD', 78, '34.21470', '-103.54890'), ('KENNA', None, '33.84200', '-103.77100'), ('LINGO', None, '33.78800', '-103.11400'), ('MILNESAND', None, '33.64300', '-103.33900'), ('PEP', None, '33.83600', '-103.33500'), ('PORTALES', 11131, '34.18110', '-103.34530'), ('ROGERS', None, '33.98200', '-103.23000'), ('TOLAR', None, '34.45100', '-103.93100')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ABQ'}, -'NMZ023': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARREY', None, '32.84860', '-107.31860'), ('CABALLO', None, '32.97560', '-107.30720'), ('CUCHILLO', None, '33.12830', '-107.36000'), ('DERRY', None, '32.78810', '-107.28170'), ('ELEPHANT BUTTE', 1390, '33.12830', '-107.25220'), ('HILLSBORO', None, '32.92220', '-107.56640'), ('TRUTH OR CONSEQUENCES', 7289, '33.13560', '-107.24810'), ('WILLIAMSBURG', 527, '33.11610', '-107.29400')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EPZ'}, -'NMZ022': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BAYARD', 2534, '32.75950', '-108.13340'), ('BUCKHORN', None, '33.03690', '-108.70800'), ('CENTRAL', None, '32.77530', '-108.15420'), ('CLIFF', None, '32.96220', '-108.61010'), ('FAYWOOD', None, '32.56420', '-108.02360'), ('FORT BAYARD', None, '32.79600', '-108.14860'), ('GILA', None, '32.96580', '-108.57610'), ('GILA HOT SPRINGS', None, '33.19580', '-108.20640'), ('HURLEY', 1464, '32.69760', '-108.13140'), ('KINGSTON', None, '32.91690', '-107.70500'), ('LAKE ROBERTS', None, '33.04190', '-108.19690'), ('MIMBRES', None, '32.85610', '-107.97920'), ('MONTICELLO', None, '33.39690', '-107.45000'), ('MULE CREEK', None, '33.12190', '-108.95560'), ('PINOS ALTOS', None, '32.88750', '-108.24180'), ('REDROCK', None, '32.68610', '-108.73750'), ('SAN LORENZO', None, '32.81000', '-107.91940'), ('SILVER CITY', 10545, '32.78290', '-108.26680'), ('TYRONE', None, '32.65690', '-108.35870'), ('VIRDEN', 143, '32.68860', '-109.00200'), ('WINSTON', None, '33.34670', '-107.51330')], 'partOfState': 'SOUTHWEST', 'wfo': 'EPZ'}, -'NMZ025': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('CLOUDCROFT', 749, '32.95300', '-105.73940'), ('HIGH ROLLS', None, '32.95000', '-105.81670'), ('MAYHILL', None, '32.88940', '-105.47750'), ('MESCALERO', 1233, '33.15080', '-105.79600'), ('PINON', None, '32.61810', '-105.39390'), ('SACRAMENTO', None, '32.79250', '-105.56000'), ('TIMBERON', 309, '32.63830', '-105.69030'), ('WEED', None, '32.80250', '-105.51670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EPZ'}, -'NMZ024': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALAMOGORDO', 35582, '32.88470', '-105.95760'), ('ANTHONY', 7904, '32.00540', '-106.59560'), ('BOLES ACRES', 1172, '32.80880', '-105.98670'), ('CHAPARRAL', 6117, '32.02590', '-106.39950'), ('HOLLOMAN AFB', 2076, '32.85120', '-106.10620'), ('LA LUZ', 1615, '32.97050', '-105.93740'), ('OROGRANDE', None, '32.37110', '-106.08390'), ('THREE RIVERS', None, '33.32140', '-106.07500'), ('TULAROSA', 2864, '33.07590', '-106.01970'), ('WHITE SANDS', 1323, '32.38270', '-106.49240')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EPZ'}, -'NMZ027': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('QUEEN', None, '32.19080', '-104.74530')], 'partOfState': 'SOUTHEAST', 'wfo': 'MAF'}, -'NMZ026': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('DUNKEN', None, '32.81300', '-105.20200'), ('ELK', None, '32.94300', '-105.33400')], 'partOfState': 'SOUTHEAST', 'wfo': 'ABQ'}, -'GAZ163': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARGYLE', 151, '31.07370', '-82.64940'), ('COGDELL', None, '31.16400', '-82.71900'), ('DU PONT', 139, '30.98920', '-82.86990'), ('FARGO', 380, '30.68510', '-82.56230'), ('HOMERVILLE', 2803, '31.03610', '-82.75360')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ162': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MAYDAY', None, '30.82730', '-83.00930'), ('NEEDMORE', None, '30.67890', '-82.67500'), ('STATENVILLE', None, '30.70080', '-83.03000')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ161': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COURTHOUSE', None, '31.08470', '-83.02100'), ('GREENWOOD', None, '30.93750', '-82.97430'), ('LAKELAND', 2730, '31.04070', '-83.07490'), ('STOCKTON', None, '30.93850', '-83.00120'), ('TEETERVILLE', None, '31.11250', '-83.14430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAZ160': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BARRETTS', None, '31.00130', '-83.19940'), ('BEMISS', None, '30.93280', '-83.24150'), ('BRIGGSTON', None, '30.72010', '-83.30640'), ('CLYATTVILLE', None, '30.69270', '-83.31610'), ('DASHER', 834, '30.74700', '-83.21840'), ('DELMAR', None, '30.88390', '-83.13790'), ('GREENS CROSSING', None, '30.91490', '-83.05730'), ('HAHIRA', 1626, '30.99030', '-83.37280'), ('HIGHLAND HEIGHTS', None, '30.87850', '-83.27470'), ('INDIANOLA', None, '30.86320', '-83.18950'), ('KINDERLOU', None, '30.80150', '-83.36590'), ('LAKE PARK', 549, '30.68460', '-83.18780'), ('LANGDALE YARD', None, '30.82900', '-83.26110'), ('LITTLE MIAMI', None, '30.81270', '-83.26090'), ('MELROSE', None, '30.63930', '-83.13620'), ('MINEOLA', None, '30.90620', '-83.34390'), ('MONKS CROSSING', None, '30.89840', '-83.10310'), ('MOODY AFB', 993, '30.97400', '-83.20410'), ('NAYLOR', None, '30.90670', '-83.07900'), ('OUSLEY', None, '30.80550', '-83.43360'), ('RAMERTON', None, '30.84260', '-83.31060'), ('REMERTON', 847, '30.84380', '-83.30940'), ('SHILOH', 423, '30.93880', '-83.40790'), ('TILLMAN', None, '30.92260', '-83.34990'), ('TROUPVILLE', None, '30.84760', '-83.33790'), ('TWIN LAKES', None, '30.69390', '-83.20920'), ('VALDOSTA', 43724, '30.84940', '-83.27840'), ('VALDOSTA REGIONAL A/P', None, '30.78220', '-83.27670'), ('WEST VALDOSTA', None, '30.81800', '-83.31670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'GAZ166': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CUMBERLAND ISLAND', None, '30.83100', '-81.45220'), ('DOVER BLUFF', None, '31.01700', '-81.52730'), ('DUNGENESS', None, '30.74000', '-81.47000'), ('HARRIETTS BLUFF', None, '30.87120', '-81.58590'), ('HIGH POINT', None, '30.94000', '-81.42000'), ('KINGS BAY BASE', 2599, '30.79000', '-81.51000'), ('KINGSLAND', 10506, '30.79130', '-81.66310'), ('ST. MARYS', 13761, '30.71000', '-81.54000')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ165': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('KINGS FERRY', None, '30.78510', '-81.83920'), ('COLESBURG', None, '30.92350', '-81.71650'), ('TARBORO', None, '31.01490', '-81.80710'), ('WAVERLY', None, '31.09360', '-81.72490'), ('WOODBINE', 1218, '30.95910', '-81.72170')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'GAZ164': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('FOLKSTON', 2178, '30.83700', '-82.00910'), ('HOMELAND', 765, '30.85500', '-82.02430'), ('RACE POND', None, '31.00010', '-82.13050'), ('ST. GEORGE', None, '30.51870', '-82.04210'), ('STEVEN FOSTER STATE PARK', None, '30.82000', '-82.34000'), ('WINOKUR', None, '31.03620', '-82.02190')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAX'}, -'NVZ031': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('CHARLESTON', None, '41.66670', '-115.53330'), ('CONTACT', None, '41.77060', '-114.75280'), ('GIBBS RANCH', None, '41.56970', '-115.21220'), ('JACKPOT', None, '41.98670', '-114.67440'), ('JARBIDGE', None, '41.88330', '-115.41670'), ('MIDAS', None, '41.25000', '-116.81670'), ('MONTELLO', None, '41.26100', '-114.18550'), ('MOUNTAIN CITY', None, '41.83900', '-115.96100'), ('OWYHEE', 1017, '41.94200', '-116.09600'), ('TUSCARORA', None, '41.31610', '-116.22440')], 'partOfState': 'NORTHEAST', 'wfo': 'LKN'}, -'NVZ030': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('DENIO', None, '41.98330', '-118.63340'), ('DUFFERENA', None, '41.86670', '-119.00010'), ('GOLCONDA', None, '40.95010', '-117.48330'), ('KINGS RIVER VALLEY', None, '41.73340', '-118.21660'), ('LEONARD CREEK RANCH', None, '41.63340', '-118.71680'), ('MCDERMITT', 269, '41.98900', '-117.71550'), ('OROVADA', None, '41.56660', '-117.83330'), ('PARADISE VALLEY', None, '41.50020', '-117.53330'), ('VALMY', None, '40.78330', '-117.13330'), ('WINNEMUCCA', 7174, '40.96830', '-117.72570')], 'partOfState': 'NORTHWEST', 'wfo': 'LKN'}, -'NVZ033': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('WEST WENDOVER', 4721, '40.76770', '-114.11550')], 'partOfState': 'NORTHEAST', 'wfo': 'LKN'}, -'NVZ032': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('CARLIN', 2161, '40.71720', '-116.11270'), ('CLOVER VALLEY', None, '40.84940', '-115.03170'), ('CURRIE', None, '40.26670', '-114.75000'), ('DEETH', None, '41.06610', '-115.27110'), ('ELKO', 16708, '40.83870', '-115.76070'), ('JIGGS', None, '40.41800', '-115.66600'), ('LAMOILLE', None, '40.74470', '-115.48610'), ('OASIS', None, '41.03140', '-114.47280'), ('PEQUOP SUMMIT', None, '41.07510', '-114.55800'), ('RUBY VALLEY', None, '40.78110', '-115.18580'), ('RYNDON', None, '40.95280', '-115.60750'), ('SOUTH FORK', None, '40.67580', '-115.74470'), ('SPRING CREEK', 10548, '40.73850', '-115.59590'), ('WELLS', 1346, '41.11440', '-114.94810')], 'partOfState': 'NORTHEAST', 'wfo': 'LKN'}, -'NYZ058': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('HUNTER', 490, '42.21120', '-74.21570'), ('PRATTSVILLE', None, '42.31620', '-74.43330'), ('TANNERSVILLE', 448, '42.19360', '-74.13490'), ('WINDHAM', 359, '42.30520', '-74.25250')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ059': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ATHENS', 1695, '42.26710', '-73.81290'), ('CAIRO', 1390, '42.30540', '-74.00990'), ('CATSKILL', 4392, '42.21480', '-73.86550'), ('COXSACKIE', 2895, '42.35820', '-73.80930'), ('JEFFERSON HEIGHTS', 1104, '42.23640', '-73.87280')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NVZ037': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('AUSTIN', None, '39.48330', '-117.06670'), ('DIAMOND VALLEY', None, '39.70860', '-116.04940'), ('EUREKA', None, '39.50000', '-115.95000'), ('EUREKA AIRPORT', None, '39.60000', '-116.00000'), ('GARDEN PASS', None, '39.82770', '-116.16300'), ('GILLMAN SPRINGS', None, '39.25020', '-117.01410'), ('GRASS VALLEY', None, '39.90000', '-116.58330'), ('HICKISON SUMMIT', None, '39.43330', '-116.73330'), ('KINGSTON', None, '39.20000', '-117.08330'), ('NEW PASS SUMMIT', None, '39.53330', '-117.46660'), ('PINTO SUMMIT', None, '39.44000', '-115.92750')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LKN'}, -'NVZ036': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('ARGENTA', None, '40.66670', '-116.75000'), ('BATTLE MOUNTAIN', 2871, '40.64150', '-116.93770'), ('BEOWAWE', None, '40.58330', '-116.46660'), ('CRESCENT VALLEY', None, '40.41660', '-116.56660'), ('DUNPHY', None, '40.70000', '-116.51660'), ('EMIGRANT PASS', None, '40.63330', '-116.30220'), ('PALISADE', None, '40.60000', '-116.20000'), ('PINE VALLEY', None, '40.41660', '-116.11660')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LKN'}, -'NYZ054': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BERLIN', None, '42.70000', '-73.38000'), ('EAGLE BRIDGE', None, '42.94330', '-73.39990'), ('GRAFTON', None, '42.76720', '-73.43670'), ('HOOSICK FALLS', 3436, '42.90050', '-73.35040'), ('STEPHENTOWN', None, '42.54950', '-73.44330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ055': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('APALACHIN', 1126, '42.07230', '-76.16590'), ('BARTON', None, '42.05000', '-76.45000'), ('BERKSHIRE', None, '42.30000', '-76.18330'), ('CAMPVILLE', None, '42.08330', '-76.15000'), ('CANDOR', 855, '42.22730', '-76.33760'), ('CATATONK', None, '42.15000', '-76.31670'), ('EAST BERKSHIRE', None, '42.30000', '-76.13330'), ('FOSTER', None, '42.13330', '-76.15000'), ('JENKSVILLE', None, '42.26670', '-76.25000'), ('LITCHFIELD', None, '42.01670', '-76.46670'), ('LOCKWOOD', None, '42.10000', '-76.55000'), ('LOUNSBERRY', None, '42.06670', '-76.33330'), ('NEWARK VALLEY', 1071, '42.22300', '-76.18590'), ('NICHOLS', 574, '42.01990', '-76.36880'), ('NORTH SPENCER', None, '42.25000', '-76.51670'), ('OWEGO', 3911, '42.10480', '-76.26270'), ('RICHFORD', None, '42.35000', '-76.20000'), ('SPENCER', 731, '42.21510', '-76.49480'), ('TIOGA CENTER', None, '42.06670', '-76.35000'), ('TIOGA TERRACE', None, '42.05000', '-76.11670'), ('WAVERLY', 4607, '42.01220', '-76.54110'), ('WELTONVILLE', None, '42.20000', '-76.25000'), ('WEST CANDOR', None, '42.21670', '-76.41670'), ('WEST NEWARK', None, '42.25000', '-76.23330'), ('WILLSEYVILLE', None, '42.28330', '-76.38330')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ056': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BELDEN', None, '42.20000', '-75.66670'), ('BINGHAMTON', 47380, '42.10160', '-75.90950'), ('CASTLE CREEK', None, '42.23330', '-75.91670'), ('CENTER LISLE', None, '42.36670', '-76.06670'), ('CHENANGO BRIDGE', None, '42.16670', '-75.86670'), ('CHENANGO FORKS', None, '42.23330', '-75.86670'), ('CONKLIN', None, '42.03330', '-75.80000'), ('EAST WINDSOR', None, '42.11670', '-75.61670'), ('ENDICOTT', 13038, '42.09790', '-76.06360'), ('ENDWELL', 11706, '42.11720', '-76.02330'), ('HARPURSVILLE', None, '42.18330', '-75.61670'), ('JOHNSON CITY', 15535, '42.12360', '-75.96180'), ('KIRKWOOD', None, '42.03330', '-75.78330'), ('LISLE', 302, '42.35070', '-76.00370'), ('MAINE', None, '42.20000', '-76.06670'), ('NANTICOKE', None, '42.28330', '-76.06670'), ('NWS BINGHAMTON', None, '42.20700', '-75.98470'), ('PORT CRANE', None, '42.16670', '-75.83330'), ('PORT DICKINSON', 1697, '42.13660', '-75.89200'), ('SANFORD', None, '42.10000', '-75.48330'), ('SANITARIA SPGS', None, '42.16670', '-75.76670'), ('UNION CENTER', None, '42.15000', '-76.06670'), ('VESTAL', None, '42.08330', '-76.05000'), ('VESTAL CENTER', None, '42.03330', '-76.01670'), ('WEST CORNERS', None, '42.11670', '-76.06670'), ('WHITNEY POINT', 965, '42.33140', '-75.96800'), ('WINDSOR', 901, '42.07720', '-75.64100')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ057': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ANDES', 289, '42.19000', '-74.78420'), ('ARKVILLE', None, '42.15000', '-74.61670'), ('BEERSTON', None, '42.13330', '-75.16670'), ('BOVINA CENTER', None, '42.26670', '-74.78330'), ('BUTTS CORNER', None, '42.46670', '-74.81670'), ('CANNONSVILLE', None, '42.10000', '-75.31670'), ('COLCHESTER', None, '42.16670', '-75.08330'), ('CORBETT', None, '42.05000', '-75.01670'), ('DAVENPORT', None, '42.46670', '-74.85000'), ('DAVENPORT CENTER', None, '42.45000', '-74.91670'), ('DELHI', 2583, '42.28000', '-74.91450'), ('DEPOSIT', 1699, '42.06400', '-75.42190'), ('DOWNSVILLE', None, '42.08330', '-75.00000'), ('DUNRAVEN', None, '42.11670', '-74.70000'), ('EAST BRANCH', None, '41.98330', '-75.11670'), ('EAST DELHI', None, '42.30000', '-74.88330'), ('EAST MEREDITH', None, '42.41670', '-74.88330'), ('EAST SIDNEY', None, '42.33330', '-75.23330'), ('FERGUSONVILLE', None, '42.50000', '-74.83330'), ('FISHS EDDY', None, '41.96670', '-75.16670'), ('FLEISCHMANNS', 351, '42.15560', '-74.53350'), ('FRANKLIN', 402, '42.34260', '-75.16640'), ('HALCOTTSVILLE', None, '42.20000', '-74.60000'), ('HALE EDDY', None, '42.00000', '-75.36670'), ('HAMDEN', None, '42.20000', '-75.00000'), ('HANCOCK', 1189, '41.95340', '-75.28330'), ('HARVARD', None, '42.03330', '-75.11670'), ('HOBART', 390, '42.37120', '-74.66890'), ('KORTRIGHT', None, '42.40000', '-74.80000'), ('LOOMIS', None, '42.20000', '-75.21670'), ('MARGARETVILLE', 643, '42.14440', '-74.65210'), ('MASONVILLE', None, '42.25000', '-75.36670'), ('MEREDITH', None, '42.35000', '-74.95000'), ('MERIDALE', None, '42.36670', '-74.95000'), ('NEW KINGSTON', None, '42.21670', '-74.68330'), ('NORTH FRANKLIN', None, '42.40000', '-75.08330'), ('PEABROOK', None, '41.90000', '-75.13330'), ('ROCK RIFT', None, '42.10000', '-75.20000'), ('ROXBURY', None, '42.28330', '-74.56670'), ('SHINHOPPLE', None, '42.05000', '-75.06670'), ('SIDNEY', 4068, '42.30590', '-75.39770'), ('SIDNEY CENTER', None, '42.28330', '-75.25000'), ('STAMFORD', 1265, '42.40890', '-74.61760'), ('STILESVILLE', None, '42.08330', '-75.40000'), ('TROUT CREEK', None, '42.20000', '-75.26670'), ('WALTON', 3070, '42.16970', '-75.13070'), ('WOLF HOLLOW', None, '42.15000', '-74.80000'), ('YOUNGS', None, '42.30000', '-75.31670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NYZ050': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BALLSTON SPA', 5556, '43.00600', '-73.85150'), ('BURNT HILLS', None, '42.91180', '-73.90050'), ('CLIFTON PARK', None, '42.85480', '-73.80850'), ('GALWAY', 214, '43.01880', '-74.03180'), ('MECHANICVILLE', 5019, '42.90400', '-73.69010'), ('ROUND LAKE', 604, '42.93720', '-73.79610'), ('WATERFORD', 2204, '42.79180', '-73.67940')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ051': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALTAMONT', 1737, '42.70510', '-74.03630'), ('BERNE', None, '42.62850', '-74.13430'), ('KNOX', None, '42.67130', '-74.11600'), ('PRESTON HOLLOW', None, '42.44170', '-74.20730'), ('WESTERLO', None, '42.51630', '-74.04530')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ052': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALBANY', 95658, '42.66060', '-73.77850'), ('COHOES', 15521, '42.77260', '-73.70840'), ('COLONIE', 7916, '42.72080', '-73.83460'), ('DELMAR', 8292, '42.62430', '-73.83350'), ('FEURA BUSH', None, '42.57820', '-73.88000'), ('GREEN ISLAND', 2278, '42.74780', '-73.69260'), ('GUILDERLAND', None, '42.69580', '-73.89220'), ('LATHAM', None, '42.74520', '-73.74690'), ('LOUDONVILLE', None, '42.70730', '-73.76610'), ('MENANDS', 3910, '42.69120', '-73.72860'), ('RAVENA', 3369, '42.47660', '-73.81230'), ('SELKIRK', None, '42.53050', '-73.80270'), ('VOORHEESVILLE', 2705, '42.64640', '-73.93320'), ('WATERVLIET', 10207, '42.72480', '-73.70750'), ('WESTMERE', 7188, '42.68760', '-73.87480')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ053': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AVERILL PARK', 1517, '42.63500', '-73.55340'), ('CASTLETON-ON-HUDSON', 1619, '42.53230', '-73.75080'), ('EAST GREENBUSH', 4085, '42.59440', '-73.70320'), ('HAMPTON MANOR', 2525, '42.62080', '-73.72890'), ('NASSAU', 1161, '42.51370', '-73.61160'), ('POESTENKILL', 1024, '42.69360', '-73.56450'), ('RENSSELAER', 7761, '42.64440', '-73.73530'), ('SCHAGHTICOKE', 676, '42.89950', '-73.58660'), ('TROY', 49170, '42.73430', '-73.67550'), ('VALLEY FALLS', 491, '42.90080', '-73.56290'), ('WEST SAND LAKE', 2439, '42.63870', '-73.60660'), ('WYANTSKILL', None, '42.68910', '-73.64930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'TXZ215': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BEAUMONT', 113866, '30.08780', '-94.14450'), ('BEVIL OAKS', 1346, '30.15540', '-94.27160'), ('CENTRAL GARDENS', 4106, '29.99180', '-94.02070'), ('CHINA', 1112, '30.05220', '-94.33560'), ('FANNETT', None, '29.92580', '-94.25060'), ('GROVES', 15733, '29.94590', '-93.91670'), ('HAMSHIRE', None, '29.86140', '-94.31220'), ('NEDERLAND', 17422, '29.97070', '-93.99590'), ('NOME', 515, '30.03440', '-94.41810'), ('PORT ARTHUR', 57755, '29.89860', '-93.92860'), ('PORT NECHES', 13601, '29.97420', '-93.94120'), ('SABINE PASS', None, '29.73330', '-93.89420'), ('SEA RIM STATE PARK', None, '29.68750', '-94.05000')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXZ214': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANAHUAC', 2210, '29.76480', '-94.67830'), ('COVE', 323, '29.81320', '-94.82490'), ('MONT BELVIEU', 2324, '29.85160', '-94.88110'), ('OLD RIVER-WINFREE', 1364, '29.87830', '-94.82430'), ('STOWELL', 1572, '29.78550', '-94.37990'), ('WINNIE', 2914, '29.81670', '-94.38020')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ217': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EAGLE PASS', 22413, '28.70980', '-100.49140'), ('EL INDIO', 263, '28.51670', '-100.31670'), ('QUEMADO', 243, '28.95000', '-100.63330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ216': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRIDGE CITY', 8651, '30.02990', '-93.85090'), ('MAURICEVILLE', 2743, '30.21830', '-93.87290'), ('ORANGE', 18643, '30.10390', '-93.75820'), ('PINE FOREST', 632, '30.17990', '-94.02980'), ('ROSE CITY', 519, '30.10410', '-94.05000'), ('VIDOR', 11440, '30.12930', '-94.00160'), ('WEST ORANGE', 4111, '30.07820', '-93.75990')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXZ211': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELLVILLE', 3794, '29.94640', '-96.25870'), ('SAN FELIPE', 868, '29.79860', '-96.10560'), ('SEALY', 5248, '29.77370', '-96.15290'), ('WALLIS', 1172, '29.63130', '-96.06420')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ210': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COLUMBUS', 3916, '29.70440', '-96.55150'), ('EAGLE LAKE', 3664, '29.58710', '-96.32830'), ('WEIMAR', 1981, '29.70080', '-96.77830')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ213': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALDINE', 13979, '29.91360', '-95.37600'), ('BARRETT', 2872, '29.87300', '-95.06200'), ('BAYTOWN', 66430, '29.74850', '-94.96900'), ('BELLAIRE', 15642, '29.70380', '-95.46080'), ('BUNKER HILL VILLAGE', 3654, '29.76470', '-95.53160'), ('CHANNELVIEW', 29685, '29.78860', '-95.11510'), ('CLOVERLEAF', 23508, '29.78730', '-95.17280'), ('CROSBY', 1714, '29.91410', '-95.05820'), ('DEER PARK', 28520, '29.69040', '-95.11530'), ('EL LAGO', 3075, '29.57280', '-95.04450'), ('GALENA PARK', 10592, '29.74490', '-95.23420'), ('HEDWIG VILLAGE', 2334, '29.77980', '-95.51920'), ('HIGHLANDS', 7089, '29.81270', '-95.05750'), ('HILSHIRE VILLAGE', 720, '29.79020', '-95.48800'), ('HOUSTON', 1953631, '29.76870', '-95.38670'), ('HUMBLE', 14579, '29.99470', '-95.26470'), ('HUNTERS CREEK VILLAGE', 4374, '29.77380', '-95.49770'), ('JACINTO CITY', 10302, '29.76600', '-95.24090'), ('JERSEY VILLAGE', 6880, '29.88830', '-95.56840'), ('KATY', 11775, '29.79830', '-95.82310'), ('KINGWOOD', None, '30.05790', '-95.18620'), ('LA PORTE', 31880, '29.66660', '-95.04470'), ("MORGAN'S POINT", 336, '29.67610', '-95.00520'), ('NASSAU BAY', 4170, '29.54530', '-95.08770'), ('PASADENA', 141674, '29.66060', '-95.15200'), ('PINEY POINT VILLAGE', 3380, '29.75990', '-95.51550'), ('SHELDON', 1831, '29.86030', '-95.13360'), ('SHOREACRES', 1488, '29.61790', '-95.00160'), ('SOUTH HOUSTON', 15833, '29.66080', '-95.22800'), ('SOUTHSIDE PLACE', 1546, '29.70840', '-95.43520'), ('SPRING', 36385, '30.06190', '-95.38380'), ('SPRING VALLEY', 3611, '29.78810', '-95.50390'), ('TAYLOR LAKE VILLAGE', 3694, '29.57370', '-95.05480'), ('TOMBALL', 9089, '30.09690', '-95.61640'), ('WALLER', 2092, '30.05780', '-95.92330'), ('WEBSTER', 9083, '29.53280', '-95.11640'), ('WEST UNIVERSITY PLACE', 14211, '29.71520', '-95.43130')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ212': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROOKSHIRE', 3450, '29.78240', '-95.95350'), ('HEMPSTEAD', 4691, '30.09310', '-96.08040'), ('PATTISON', 447, '29.81400', '-95.97750'), ('PINE ISLAND', 849, '30.05340', '-96.02860'), ('PRAIRIE VIEW', 4410, '30.08320', '-95.98910')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ219': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIG FOOT', None, '29.05000', '-98.88330'), ('DILLEY', 3674, '28.66880', '-99.17100'), ('FRIO TOWN', None, '29.01670', '-99.31670'), ('MOORE', 644, '29.05000', '-99.01670'), ('PEARSALL', 7157, '28.88770', '-99.09210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ218': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BATESVILLE', 1298, '28.94730', '-99.61430'), ('COMETA', None, '28.66670', '-100.01670'), ('CRYSTAL CITY', 7190, '28.68990', '-99.82550'), ('LA PRYOR', 1491, '28.94860', '-99.84880'), ('LOMA VISTA', None, '28.76670', '-99.60000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'CAZ026': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ASPENDELL', None, '37.23330', '-118.58330'), ('BIG PINE', 1350, '37.16540', '-118.29540'), ('BISHOP', 3575, '37.36770', '-118.39680'), ('DIXON LANE-MEADOW CREEK', 2702, '37.38730', '-118.41250'), ('INDEPENDENCE', 574, '36.80000', '-118.20000'), ('KEELER', 66, '36.48160', '-117.86830'), ('LONE PINE', 1655, '36.59400', '-118.06500'), ('OLANCHA', 134, '36.27830', '-118.00000'), ('SOUTH LAKE', None, '37.18330', '-118.56660'), ('WEST BISHOP', 2807, '37.36110', '-118.45410')], 'partOfState': '', 'wfo': 'VEF'}, -'CAZ027': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('DEATH VALLEY JUNCTION', None, '36.30000', '-116.41330'), ('FURNACE CREEK', 31, '36.45000', '-116.85000'), ('PANAMINT SPRINGS', None, '36.33330', '-117.47000'), ('SHOSHONE', 52, '35.96670', '-116.27500'), ('STOVEPIPE WELLS', None, '36.60000', '-117.16660')], 'partOfState': '', 'wfo': 'VEF'}, -'LAZ066': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CHAUVIN', 3229, '29.44550', '-90.59440'), ('COCODRIE', None, '29.24670', '-90.66140'), ('DULAC', 2458, '29.36980', '-90.70040'), ('MONTEGUT', 1803, '29.46980', '-90.55990')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'LAZ065': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BAYOU CANE', 17046, '29.62390', '-90.75110'), ('GRAY', 4958, '29.67690', '-90.78160'), ('HOUMA', 32393, '29.57870', '-90.70690'), ('SCHRIEVER', 5880, '29.73610', '-90.82680')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'CAZ028': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AMBOY', None, '34.56660', '-115.75000'), ('BAKER', None, '35.28100', '-116.07000'), ('BARSTOW', 21119, '34.87760', '-117.06590'), ('DAGGETT', None, '34.85830', '-116.88330'), ('ESSEX', None, '34.73330', '-115.25000'), ('JOSHUA TREE', 4207, '34.12700', '-116.31780'), ('LENWOOD', 3222, '34.88580', '-117.10360'), ('LUDLOW', None, '34.71670', '-116.16660'), ('MOUNTAIN PASS', None, '35.47500', '-115.53900'), ('NEBO CENTER', 1174, '34.87160', '-116.95560'), ('NIPTON', None, '35.46650', '-115.28330'), ('SEARLES VALLEY', 1885, '35.76760', '-117.40290'), ('TRONA', None, '35.76660', '-117.36660'), ('TWENTYNINE PALMS', 14764, '34.13950', '-116.06570'), ('TWENTYNINE PALMS MCAS', None, '34.22810', '-116.05570'), ('WEST WIND AERO', None, '34.13330', '-115.91660')], 'partOfState': 'SOUTHWEST', 'wfo': 'VEF'}, -'CAZ029': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('LAKE HAVASU CITY', 41938, '34.45000', '-114.33330'), ('BIG RIVER', 1266, '34.14010', '-114.36050'), ('EARP', None, '34.15000', '-114.33330'), ('NEEDLES', 4830, '34.81410', '-114.61320'), ('PARKER DAM', None, '34.26650', '-114.15000'), ('VIDAL JUNCTION', None, '34.18330', '-114.57500')], 'partOfState': 'SOUTHEAST', 'wfo': 'VEF'}, -'ALZ021': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('EDWARDSVILLE', 186, '33.70670', '-85.50980'), ('FRUITHURST', 270, '33.73030', '-85.43190'), ('HEFLIN', 3002, '33.64630', '-85.58670'), ('RANBURNE', 459, '33.52490', '-85.34020')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ020': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CEDAR BLUFF', 1467, '34.22050', '-85.59600'), ('CENTRE', 3216, '34.15300', '-85.67170'), ('GAYLESVILLE', 140, '34.26790', '-85.55830'), ('LEESBURG', 799, '34.17900', '-85.76910'), ('SAND ROCK', 509, '34.23210', '-85.77060')], 'partOfState': 'NORTHEAST', 'wfo': 'BMX'}, -'ALZ023': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BROOKWOOD', 1483, '33.24720', '-87.32390'), ('HOLT', 4103, '33.22960', '-87.48090'), ('NORTHPORT', 19435, '33.24410', '-87.59210'), ('TUSCALOOSA', 77906, '33.23770', '-87.54100'), ('VANCE', 500, '33.17090', '-87.22790')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'ALZ022': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALICEVILLE', 2567, '33.12510', '-88.15800'), ('CARROLLTON', 987, '33.26180', '-88.09510'), ('ETHELSVILLE', 81, '33.41420', '-88.21630'), ('GORDO', 1677, '33.32130', '-87.90370'), ('MCMULLEN', 66, '33.14710', '-88.17610'), ('MEMPHIS', 33, '33.13830', '-88.30130'), ('PICKENSVILLE', 662, '33.22660', '-88.26560'), ('REFORM', 1978, '33.37960', '-88.01670')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'ALZ025': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALABASTER', 22619, '33.22650', '-86.82460'), ('CALERA', 3158, '33.10130', '-86.75370'), ('CHELSEA', 2949, '33.32630', '-86.63740'), ('COLUMBIANA', 3316, '33.17700', '-86.60080'), ('HARPERSVILLE', 1620, '33.34180', '-86.43270'), ('HELENA', 10296, '33.28970', '-86.85240'), ('INVERNESS', None, '33.40410', '-86.72290'), ('LAKE PURDY', 5799, '33.42990', '-86.68050'), ('MEADOWBROOK', 4697, '33.40190', '-86.69680'), ('MONTEVALLO', 4825, '33.10930', '-86.85120'), ('PELHAM', 14369, '33.30330', '-86.79410'), ('VINCENT', 1853, '33.38560', '-86.40990'), ('WILSONVILLE', 1551, '33.23600', '-86.47900'), ('WILTON', 580, '33.08220', '-86.88110')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ024': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ADAMSVILLE', 4965, '33.59550', '-86.95800'), ('BESSEMER', 29672, '33.37520', '-86.96060'), ('BIRMINGHAM', 242820, '33.52770', '-86.79920'), ('BRIGHTON', 3640, '33.43890', '-86.94550'), ('BROOKSIDE', 1393, '33.63190', '-86.91470'), ('CAHABA HEIGHTS', 5203, '33.45960', '-86.72820'), ('CARDIFF', 82, '33.64610', '-86.92900'), ('CENTER POINT', 22784, '33.64310', '-86.67880'), ('FAIRFIELD', 12381, '33.47300', '-86.91770'), ('FORESTDALE', 10509, '33.57930', '-86.90290'), ('FULTONDALE', 6595, '33.61730', '-86.80010'), ('GARDENDALE', 11626, '33.66520', '-86.80060'), ('GRAYSVILLE', 2344, '33.62640', '-86.96920'), ('HOMEWOOD', 25043, '33.46480', '-86.80700'), ('HOOVER', 62742, '33.37530', '-86.81900'), ('HUEYTOWN', 15364, '33.43760', '-86.99760'), ('IRONDALE', 9813, '33.53230', '-86.67630'), ('KIMBERLY', 1801, '33.76820', '-86.80480'), ('LEEDS', 10455, '33.54600', '-86.56270'), ('LIPSCOMB', 2458, '33.42610', '-86.92540'), ('MAYTOWN', 435, '33.55110', '-86.99570'), ('MIDFIELD', 5626, '33.45410', '-86.92280'), ('MINOR', 1116, '33.52530', '-86.94760'), ('MORRIS', 1827, '33.74970', '-86.80530'), ('MOUNTAIN BROOK', 20604, '33.48690', '-86.74050'), ('MULGA', 973, '33.54660', '-86.97530'), ('NORTH JOHNS', 142, '33.36810', '-87.10150'), ('PINSON-CLAY-CHALKVILLE', None, '33.67670', '-86.65860'), ('PLEASANT GROVE', 9983, '33.48920', '-86.97590'), ('SYLVAN SPRINGS', 1465, '33.51290', '-87.03060'), ('TARRANT', 7022, '33.59370', '-86.76790'), ('TRAFFORD', 523, '33.82360', '-86.74650'), ('TRUSSVILLE', 12924, '33.63590', '-86.59320'), ('VESTAVIA HILLS', 24476, '33.43360', '-86.78760'), ('WARRIOR', 3169, '33.81390', '-86.80820'), ('WEST JEFFERSON', 344, '33.64870', '-87.06790')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ027': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BON AIR', 96, '33.26130', '-86.33810'), ('CHILDERSBURG', 4927, '33.27940', '-86.35330'), ('GANTTS QUARRY', 0, '33.14820', '-86.29940'), ('LINCOLN', 4577, '33.59800', '-86.13940'), ('MIGNON', 1348, '33.19400', '-86.26400'), ('OAK GROVE', 457, '33.18620', '-86.30290'), ('SYLACAUGA', 12616, '33.17600', '-86.26130'), ('TALLADEGA', 15143, '33.43200', '-86.09800'), ('TALLADEGA SPRINGS', 124, '33.11750', '-86.44450'), ('WALDO', 281, '33.39090', '-86.03540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ026': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ARGO', 1780, '33.68670', '-86.51000'), ('ASHVILLE', 2260, '33.83470', '-86.26400'), ('BRANCHVILLE', 825, '33.66110', '-86.42700'), ('MARGARET', 1169, '33.68770', '-86.47470'), ('MOODY', 8053, '33.59690', '-86.49460'), ('ODENVILLE', 1131, '33.68600', '-86.39840'), ('PELL CITY', 9565, '33.56020', '-86.27240'), ('RAGLAND', 1918, '33.74810', '-86.13630'), ('RIVERSIDE', 1564, '33.61130', '-86.20770'), ('SPRINGVILLE', 2521, '33.77360', '-86.47510'), ('STEELE', 1093, '33.93400', '-86.19730')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ029': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ROANOKE', 6563, '33.14530', '-85.36930'), ('WADLEY', 640, '33.12330', '-85.56860'), ('WEDOWEE', 818, '33.30850', '-85.48650'), ('WOODLAND', 192, '33.37410', '-85.39930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'ALZ028': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ASHLAND', 1965, '33.27100', '-85.83070'), ('LINEVILLE', 2401, '33.31240', '-85.75260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BMX'}, -'MSZ070': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('MAGNOLIA', 2071, '31.15020', '-90.46070'), ('MCCOMB', 13337, '31.24500', '-90.46520'), ('OSYKA', 481, '31.00700', '-90.47110'), ('SUMMIT', 1428, '31.28470', '-90.46620')], 'partOfState': 'SOUTHERN', 'wfo': 'LIX'}, -'LAZ061': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('AVONDALE', 5441, '29.90210', '-90.19160'), ('BARATARIA', 1333, '29.71560', '-90.12410'), ('BRIDGE CITY', 8323, '29.93380', '-90.16140'), ('GRETNA', 17423, '29.91400', '-90.05250'), ('HARAHAN', 9885, '29.93700', '-90.20370'), ('HARVEY', 22226, '29.88600', '-90.06730'), ('JEAN LAFITTE', 2137, '29.74950', '-90.10610'), ('KENNER', 70517, '29.98000', '-90.25000'), ('LAFITTE', 1576, '29.68860', '-90.09710'), ('MARRERO', 36165, '29.88500', '-90.11430'), ('METAIRIE', 146136, '29.99760', '-90.17740'), ('TERRYTOWN', 25430, '29.90000', '-90.02830'), ('TIMBERLANE', 11405, '29.87730', '-90.03200'), ('WAGGAMAN', 9435, '29.93760', '-90.23370'), ('WESTWEGO', 10763, '29.90490', '-90.14280')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'WAZ006': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALDERWOOD MANOR-BOTHELL N', None, '47.79960', '-122.24210'), ('BRIER', 6383, '47.79250', '-122.27170'), ('CATHAN', 526, '48.11430', '-122.27620'), ('EDMONDS', 39515, '47.82590', '-122.36790'), ('ESPERANCE', 3503, '47.78910', '-122.35430'), ('EVERETT', 91488, '47.96330', '-122.19860'), ('HARBOUR POINTE', None, '47.88600', '-122.30400'), ('JOHN SAM LAKE', 753, '48.10940', '-122.24460'), ('LAKE GOODWIN', 3354, '48.13910', '-122.27840'), ('LAKE SERENE-NORTH LYNNWOO', None, '47.85500', '-122.28410'), ('LYNNWOOD', 33847, '47.82720', '-122.30430'), ('MARTHA LAKE', 12633, '47.85100', '-122.23810'), ('MARYSVILLE', 25315, '48.05950', '-122.15470'), ('MILL CREEK', 11525, '47.85770', '-122.20580'), ('MONROE', 13795, '47.85810', '-121.98180'), ('MOUNTLAKE TERRACE', 20362, '47.79120', '-122.30660'), ('MUKILTEO', 18019, '47.92680', '-122.30870'), ('NORTH CREEK-CANYON PARK', None, '47.81060', '-122.18640'), ('NORTH MARYSVILLE', 21161, '48.09940', '-122.14760'), ('PAINE FIELD-LAKE STICKNEY', 24383, '47.88710', '-122.26240'), ('SHAKER CHURCH', 787, '48.05280', '-122.22710'), ('SILVER LAKE-FIRCREST', None, '47.87360', '-122.16980'), ('SMOKEY POINT', 1556, '48.15040', '-122.19330'), ('SNOHOMISH', 8494, '47.91950', '-122.09340'), ('STIMSON CROSSING', 773, '48.10790', '-122.20700'), ('WEALLUP LAKE', 882, '48.11040', '-122.30490'), ('WEST LAKE STEVENS', 18071, '47.99350', '-122.10070')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'LAZ060': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BOUTTE', 2181, '29.89620', '-90.39750'), ('DES ALLEMANDS', 2500, '29.83280', '-90.43000'), ('DESTREHAN', 11260, '29.96180', '-90.36900'), ('HAHNVILLE', 2792, '29.97300', '-90.42100'), ('NEW SARPY', 1568, '29.97740', '-90.38620'), ('NORCO', 3579, '30.00170', '-90.40960')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'WVZ008': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('KENNA', None, '38.67640', '-81.66040'), ('RAVENSWOOD', 4031, '38.95720', '-81.76310'), ('RIPLEY', 3263, '38.82010', '-81.70910')], 'partOfState': '', 'wfo': 'RLX'}, -'TXZ013': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GROOM', 587, '35.20410', '-101.10600'), ('PANHANDLE', 2589, '35.34620', '-101.38010'), ('PANTEX', None, '35.32390', '-101.58080'), ('SKELLYTOWN', 610, '35.57310', '-101.17300'), ('WHITE DEER', 1060, '35.43240', '-101.17480')], 'partOfState': '', 'wfo': 'AMA'}, -'MAZ008': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('CHESTERFIELD', None, '42.40000', '-72.85000'), ('CUMMINGTON', None, '42.46667', '-72.90000'), ('GOSHEN', None, '42.43333', '-72.80000'), ('HUNTINGTON', None, '42.23333', '-72.88333'), ('MIDDLEFIELD', None, '42.35000', '-73.01667'), ('PLAINFIELD', None, '42.51667', '-72.91667'), ('WESTHAMPTON', None, '42.30000', '-72.76667'), ('WILLIAMSBURG', None, '42.40000', '-72.71667'), ('WORTHINGTON', None, '42.41667', '-72.93333')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ009': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('BLANDFORD', None, '42.18333', '-72.93333'), ('CHESTER', None, '42.28333', '-72.98333'), ('GRANVILLE', None, '42.06667', '-72.86667'), ('MONTGOMERY', None, '42.20000', '-72.80000'), ('RUSSELL', None, '42.18333', '-72.85000'), ('TOLLAND', None, '42.08333', '-73.01667')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ006': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AMESBURY', 12327, '42.85640', '-70.92850'), ('ANDOVER', 7900, '42.65530', '-71.14310'), ('BOXFORD', 2340, '42.67350', '-70.98660'), ('DANVERS', 25212, '42.57190', '-70.95110'), ('GEORGETOWN', None, '42.73333', '-70.98333'), ('GROVELAND', None, '42.75000', '-71.03333'), ('HAVERHILL', 58969, '42.78430', '-71.08620'), ('LAWRENCE', 72043, '42.70000', '-71.16200'), ('LYNNFIELD', 11542, '42.53560', '-71.04030'), ('MERRIMAC', None, '42.83333', '-71.00000'), ('METHUEN', 43789, '42.71667', '-71.18333'), ('MIDDLETON', None, '42.60000', '-71.01667'), ('NEWBURY', None, '42.80000', '-71.00000'), ('NORTH ANDOVER', None, '42.70000', '-71.11667'), ('ROWLEY', 1434, '42.71870', '-70.87460'), ('TOPSFIELD', 2826, '42.63920', '-70.95590'), ('WEST NEWBURY', None, '42.80000', '-71.00000')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ007': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('BEVERLY', 39862, '42.55770', '-70.84050'), ('ESSEX', 1426, '42.63080', '-70.77240'), ('GLOUCESTER', 30273, '42.61670', '-70.65000'), ('HAMILTON', None, '42.61667', '-70.86667'), ('IPSWICH', 4161, '42.67810', '-70.83150'), ('LYNN', 89050, '42.47420', '-70.96250'), ('MANCHESTER', None, '42.56667', '-70.76667'), ('MARBLEHEAD', 20377, '42.48333', '-70.86667'), ('NAHANT', 3632, '42.41667', '-70.91667'), ('NEWBURYPORT', 17189, '42.81480', '-70.88950'), ('PEABODY', 48129, '42.53290', '-70.97030'), ('ROCKPORT', 5606, '42.64600', '-70.61940'), ('SALEM', 40407, '42.52650', '-70.86950'), ('SALISBURY', 4484, '42.83260', '-70.84030'), ('SAUGUS', 26078, '42.46740', '-71.01530'), ('SWAMPSCOTT', 14412, '42.46670', '-70.89230'), ('WENHAM', None, '42.60000', '-70.88333')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ004': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ASHBURNHAM', None, '42.63333', '-71.90000'), ('ATHOL', 8370, '42.59180', '-72.23200'), ('BARRE', 1150, '42.42250', '-72.10770'), ('BERLIN', None, '42.38333', '-71.63333'), ('BOLTON', None, '42.43333', '-71.60000'), ('BOYLSTON', None, '42.35000', '-71.73333'), ('BROOKFIELD', None, '42.21667', '-72.10000'), ('CLINTON', 7884, '42.41870', '-71.68530'), ('EAST BROOKFIELD', 1410, '42.22870', '-72.04820'), ('FITCHBURG', 39102, '42.58920', '-71.81560'), ('GARDNER', 20770, '42.58410', '-71.98620'), ('HARDWICK', None, '42.35000', '-72.20000'), ('HARVARD', None, '42.50000', '-71.58333'), ('HOLDEN', None, '42.35000', '-71.85000'), ('HUBBARDSTON', None, '42.48333', '-72.01667'), ('LANCASTER', None, '42.45000', '-71.66667'), ('LEICESTER', None, '42.25000', '-71.90000'), ('LEOMINSTER', 41303, '42.51910', '-71.77220'), ('LUNENBURG', 1695, '42.59500', '-71.72510'), ('NEW BRAINTREE', None, '42.31667', '-72.13333'), ('NORTH BROOKFIELD', 2527, '42.27170', '-72.08500'), ('OAKHAM', None, '42.35000', '-72.05000'), ('PAXTON', None, '42.31667', '-71.93333'), ('PETERSHAM', None, '42.48333', '-72.18333'), ('PHILLIPSTON', None, '42.55000', '-72.13333'), ('PRINCETON', None, '42.45000', '-71.86667'), ('ROYALSTON', None, '42.68333', '-72.18333'), ('RUTLAND', 2205, '42.36280', '-71.95190'), ('SPENCER', 6032, '42.24390', '-71.99200'), ('STERLING', None, '42.43333', '-71.75000'), ('TEMPLETON', None, '42.55000', '-72.06667'), ('WARREN', 1452, '42.21520', '-72.19070'), ('WEST BOYLSTON', None, '42.36667', '-71.78333'), ('WEST BROOKFIELD', 1610, '42.23850', '-72.14810'), ('WESTMINSTER', None, '42.55000', '-71.90000'), ('WINCHENDON', 4246, '42.68200', '-72.04470')], 'partOfState': 'CENTRAL', 'wfo': 'BOX'}, -'MAZ005': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ACTON', None, '42.48333', '-71.46667'), ('ARLINGTON', 42389, '42.41860', '-71.16430'), ('ASHLAND', None, '42.25000', '-71.46667'), ('BEDFORD', None, '42.48333', '-71.26667'), ('BELMONT', 24194, '42.40000', '-71.16667'), ('BILLERICA', None, '42.55000', '-71.26667'), ('BOXBOROUGH', None, '42.50000', '-71.50000'), ('BURLINGTON', 22876, '42.50310', '-71.20210'), ('CARLISLE', None, '42.53333', '-71.35000'), ('CHELMSFORD', None, '42.59990', '-71.36770'), ('CONCORD', None, '42.45000', '-71.35000'), ('DRACUT', None, '42.66667', '-71.30000'), ('DUNSTABLE', None, '42.66667', '-71.48333'), ('FRAMINGHAM', 66910, '42.30590', '-71.43790'), ('HOLLISTON', None, '42.20000', '-71.43333'), ('HOPKINTON', 2628, '42.22280', '-71.52140'), ('HUDSON', 14388, '42.39230', '-71.56400'), ('LEXINGTON', 30355, '42.44570', '-71.23140'), ('LINCOLN', None, '42.41667', '-71.30000'), ('LITTLETON', None, '42.53650', '-71.47250'), ('LOWELL', 105167, '42.63870', '-71.32210'), ('MARLBOROUGH', 36255, '42.34990', '-71.54770'), ('MAYNARD', 10433, '42.42570', '-71.45700'), ('NATICK', None, '42.28333', '-71.35000'), ('NORTH READING', None, '42.56667', '-71.06667'), ('READING', 23708, '42.53580', '-71.10700'), ('SHERBORN', None, '42.23333', '-71.36667'), ('STONEHAM', 22219, '42.47410', '-71.09820'), ('STOW', None, '42.43333', '-71.50000'), ('SUDBURY', None, '42.36667', '-71.40000'), ('TEWKSBURY', None, '42.61667', '-71.23333'), ('TYNGSBORO', None, '42.68333', '-71.41667'), ('WAKEFIELD', 24804, '42.50460', '-71.06660'), ('WALTHAM', 59226, '42.38780', '-71.24220'), ('WAYLAND', None, '42.36667', '-71.36667'), ('WESTFORD', None, '42.58333', '-71.43333'), ('WESTON', None, '42.36667', '-71.26667'), ('WILMINGTON', 21363, '42.55940', '-71.16660'), ('WINCHESTER', 20810, '42.45190', '-71.14690'), ('WOBURN', 37258, '42.48550', '-71.15520')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ002': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ASHFIELD', None, '42.53333', '-72.78333'), ('BUCKLAND', None, '42.60000', '-72.78333'), ('CHARLEMONT', None, '42.63333', '-72.88333'), ('HAWLEY', None, '42.56667', '-72.88333'), ('HEATH', None, '42.66667', '-72.83333'), ('MONROE', None, '42.71667', '-72.95000'), ('ROWE', None, '42.70000', '-72.90000')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ003': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('BERNARDSTON', None, '42.66667', '-72.55000'), ('COLRAIN', None, '42.66667', '-72.68333'), ('CONWAY', None, '42.51667', '-72.68333'), ('DEERFIELD', None, '42.55000', '-72.60000'), ('ERVING', None, '42.60000', '-72.40000'), ('GILL', None, '42.65000', '-72.50000'), ('GREENFIELD', 13716, '42.58930', '-72.59890'), ('LEVERETT', None, '42.45000', '-72.50000'), ('LEYDEN', None, '42.70000', '-72.61667'), ('MONTAGUE', None, '42.53333', '-72.53333'), ('NEW SALEM', None, '42.50000', '-72.33333'), ('NORTHFIELD', 1141, '42.70940', '-72.43730'), ('ORANGE', 3945, '42.59420', '-72.30430'), ('SHELBURNE', None, '42.58333', '-72.68333'), ('SHUTESBURY', None, '42.45000', '-72.40000'), ('SUNDERLAND', None, '42.46667', '-72.58333'), ('WARWICK', None, '42.68333', '-72.33333'), ('WENDELL', None, '42.55000', '-72.40000'), ('WHATELY', None, '42.45000', '-72.61667')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ001': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ADAMS', 5784, '42.62750', '-73.11930'), ('CHESHIRE', None, '42.55700', '-73.15300'), ('DALTON', None, '42.47420', '-73.16170'), ('EAST WINDSOR', None, '42.47720', '-72.98320'), ('FLORIDA', None, '42.66720', '-73.00800'), ('HANCOCK', None, '42.54300', '-73.32380'), ('NEW ASHFORD', None, '42.60420', '-73.23630'), ('NORTH ADAMS', 14681, '42.68680', '-73.11380'), ('PITTSFIELD', 45793, '42.45180', '-73.26090'), ('SAVOY', None, '42.56770', '-73.02420'), ('WILLIAMSTOWN', 4754, '42.70710', '-73.20190')], 'partOfState': '', 'wfo': 'ALY'}, -'TXZ062': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COTTON FLAT', None, '31.93000', '-102.06000'), ('GREENWOOD', None, '32.03000', '-101.90000'), ('MIDLAND', 94996, '32.00000', '-102.08020'), ('MIDLAND INTERNATIONAL AIR', None, '31.94280', '-102.18890'), ('MISSION DORADO', None, '31.91270', '-102.27170'), ('SPRABERRY', None, '31.93000', '-101.83000'), ('VALLEY VIEW', 737, '31.94470', '-101.99420'), ('WARFIELD', None, '31.92000', '-102.22000')], 'partOfState': '', 'wfo': 'MAF'}, -'SCZ019': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CALLISON', None, '34.01440', '-82.12580'), ('COKESBURY', 279, '34.28920', '-82.20810'), ('CORONACA', 170, '34.25970', '-82.09440'), ('DYSON', None, '34.16170', '-81.93250'), ('GREENWOOD', 22071, '34.19020', '-82.15280'), ('HODGES', 158, '34.28760', '-82.24800'), ('NINETY SIX', 1936, '34.17200', '-82.02350'), ('TROY', 105, '33.98740', '-82.29680'), ('VERDERY', None, '34.10920', '-82.24940'), ('WARE SHOALS', 2363, '34.39010', '-82.24420')], 'partOfState': '', 'wfo': 'GSP'}, -'SCZ018': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('MCCORMICK', 1489, '33.91000', '-82.29290'), ('MOUNT CARMEL', 237, '34.00610', '-82.50790'), ('PARKSVILLE', 120, '33.78620', '-82.21790'), ('PLUM BRANCH', 98, '33.84940', '-82.25920')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'IDZ009': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('COBALT', None, '45.09306', '-114.23083'), ('LEESBURG', None, '45.22389', '-114.11306'), ('SHOUP', None, '45.37694', '-114.27611'), ('YELLOWJACKET', None, '44.97972', '-114.53083')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MSO'}, -'IDZ008': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CANFIELD', None, '45.83778', '-116.37083'), ('COPPERVILLE', None, '45.75306', '-116.32333'), ('LUCILE', None, '45.53528', '-116.30944'), ('POLLOCK', None, '45.31250', '-116.35806'), ('RIGGINS', 410, '45.42222', '-116.31444'), ('SLATE CREEK', None, '45.63833', '-116.27944'), ('WHITE BIRD', 106, '45.76167', '-116.29972')], 'partOfState': 'CENTRAL', 'wfo': 'MSO'}, -'TNZ010': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CELINA', 1379, '36.54830', '-85.50200')], 'partOfState': '', 'wfo': 'OHX'}, -'IDZ003': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CHATCOLET', None, '47.35410', '-116.75250'), ('GENESEE', 946, '46.55120', '-116.92800'), ('JOEL', None, '46.70630', '-116.87280'), ('JULIAETTA', 609, '46.57460', '-116.70790'), ('KENDRICK', 369, '46.61390', '-116.65210'), ('MOSCOW', 21291, '46.72980', '-116.99680'), ('ONAWAY', 230, '46.92870', '-116.88810'), ('PLUMMER', 990, '47.32970', '-116.88410'), ('POTLATCH', 791, '46.92320', '-116.89790'), ('PRINCETON', None, '46.90850', '-117.02080'), ('TENSED', 126, '47.15960', '-116.92340'), ('TROY', 798, '46.73870', '-116.76800'), ('VIOLA', None, '46.83650', '-117.02080')], 'partOfState': '', 'wfo': 'OTX'}, -'IDZ002': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CHILCO', None, '47.85830', '-116.74070'), ("COEUR D'ALENE", 34514, '47.69780', '-116.78480'), ('DALTON GARDENS', 2278, '47.73350', '-116.76690'), ('FERNAN LAKE VILLAGE', 186, '47.67330', '-116.74700'), ('HARRISON', 267, '47.45240', '-116.78040'), ('HAYDEN', 9159, '47.76020', '-116.78850'), ('HAYDEN LAKE', 494, '47.76580', '-116.75280'), ('HUETTER', 96, '47.70390', '-116.84780'), ('POST FALLS', 17247, '47.71250', '-116.94460'), ('STATE LINE', 28, '47.70620', '-117.03510'), ('WORLEY', 223, '47.40130', '-116.91840')], 'partOfState': '', 'wfo': 'OTX'}, -'IDZ001': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('ATHOL', 676, '47.94510', '-116.70650'), ('BAYVIEW', None, '47.97480', '-116.55550'), ('BLANCHARD', None, '48.01680', '-116.97630'), ('BONNERS FERRY', 2515, '48.69170', '-116.31510'), ('CABINET', None, '48.08400', '-116.07020'), ('CAREYWOOD', None, '48.03420', '-116.63870'), ('CLARK FORK', 530, '48.14790', '-116.17670'), ('COCOLALLA', None, '48.10480', '-116.60980'), ('COLBURN', None, '48.39170', '-116.53380'), ('COOLIN', None, '48.47450', '-116.84230'), ('DOVER', 342, '48.25360', '-116.60030'), ('EAST HOPE', 200, '48.24180', '-116.29130'), ('EASTPORT', None, '48.99300', '-116.17480'), ('ELMIRA', None, '48.48750', '-116.45680'), ('GRANITE', None, '48.08600', '-116.42150'), ('GRANITE', None, '48.00630', '-116.66830'), ('HAUSER', 668, '47.76970', '-117.01180'), ('HOPE', 79, '48.24790', '-116.30660'), ('KOOTENAI', 441, '48.31070', '-116.51780'), ('LACLEDE', None, '47.96880', '-116.75200'), ('MEADOW CREEK', None, '48.81870', '-116.15350'), ('MOYIE SPRINGS', 656, '48.72480', '-116.19250'), ('NAPLES', None, '48.56930', '-116.38820'), ('OLDTOWN', 190, '48.18240', '-117.03400'), ('PONDERAY', 638, '48.30120', '-116.53950'), ('PORTHILL', None, '48.99230', '-116.49150'), ('PRIEST RIVER', 1754, '48.18510', '-116.91010'), ('RATHDRUM', 4816, '47.81170', '-116.88870'), ('SANDPOINT', 6835, '48.27990', '-116.55810'), ('SPIRIT LAKE', 1376, '47.96800', '-116.86970')], 'partOfState': '', 'wfo': 'OTX'}, -'SCZ012': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CLINTON', 8091, '34.47780', '-81.86610'), ('CROSS HILL', 601, '34.30400', '-81.98320'), ('GRAY COURT', 1021, '34.60730', '-82.11290'), ('HICKORY TAVERN', None, '34.52110', '-82.18890'), ('JOANNA', 1609, '34.41570', '-81.81080'), ('LAURENS', 9916, '34.50160', '-82.02510'), ('ORA', None, '34.58170', '-81.99580'), ('WATERLOO', 203, '34.35280', '-82.05820')], 'partOfState': '', 'wfo': 'GSP'}, -'SCZ015': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ELGIN', 2426, '34.67370', '-80.72170'), ('HEATH SPRINGS', 864, '34.59020', '-80.67450'), ('IRWIN', 1343, '34.69370', '-80.82260'), ('KERSHAW', 1645, '34.54510', '-80.58770'), ('LANCASTER', 8177, '34.72390', '-80.77960'), ('LANCASTER MILL', 2109, '34.70910', '-80.79490')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ014': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BLACKSTOCK', None, '34.55830', '-81.15250'), ('CHESTER', 6476, '34.70570', '-81.21420'), ('CORNWELL', None, '34.60720', '-81.17940'), ('EDGEMOOR', None, '34.80560', '-81.01170'), ('FORT LAWN', 864, '34.70110', '-80.89850'), ('GREAT FALLS', 2194, '34.57460', '-80.90320'), ('LEEDS', None, '34.62940', '-81.39640'), ('LOCKHART', 39, '34.79470', '-81.46100'), ('LOWRYS', 207, '34.80490', '-81.23820'), ('RICHBURG', 332, '34.71550', '-81.02030')], 'partOfState': '', 'wfo': 'GSP'}, -'SCZ017': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BENNETTSVILLE', 9425, '34.61720', '-79.68500'), ('BLENHEIM', 137, '34.51060', '-79.65310'), ('BROWNSVILLE', None, '34.39220', '-79.59250'), ('CLIO', 774, '34.57940', '-79.54670'), ('DUNBAR', None, '34.53360', '-79.56140'), ('FLETCHER', None, '34.70580', '-79.59560'), ('FULTON', None, '34.77810', '-79.79190'), ('MARLBORO', None, '34.53920', '-79.73280'), ('MCCOLL', 2498, '34.66860', '-79.54560'), ('TATUM', 69, '34.64380', '-79.58670'), ('WALLACE', None, '34.72000', '-79.84170')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'IDZ004': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('AVERY', None, '47.25030', '-115.80250'), ('BOVILL', 305, '46.85830', '-116.39330'), ('CALDER', None, '47.27330', '-116.18750'), ('CATALDO', None, '47.54270', '-116.32230'), ('CLARKIA', None, '47.00650', '-116.25120'), ('DEARY', 552, '46.80060', '-116.55650'), ('EMIDA', None, '47.10950', '-116.59150'), ('HARVARD', None, '46.91720', '-116.72380'), ('HELMER', None, '46.80050', '-116.46820'), ('KELLOGG', 2395, '47.53930', '-116.13530'), ('KINGSTON', None, '47.54280', '-116.26850'), ('MEDIMONT', None, '47.47230', '-116.60200'), ('MULLAN', 840, '47.46910', '-115.79400'), ('MURRAY', None, '47.62300', '-115.85450'), ('OSBURN', 1545, '47.50590', '-115.99960'), ('PINEHURST', 1661, '47.53560', '-116.23340'), ('PRICHARD', None, '47.65380', '-115.97180'), ('ROSE LAKE', None, '47.53670', '-116.46920'), ('SANDERS', None, '47.10380', '-116.79050'), ('SANTA', None, '47.15020', '-116.44220'), ('SMELTERVILLE', 651, '47.54240', '-116.17650'), ('ST. JOE', None, '47.30670', '-116.35120'), ('ST. MARIES', 2652, '47.31490', '-116.57060'), ('WALLACE', 960, '47.47290', '-115.92230'), ('WARDNER', 215, '47.52030', '-116.13400')], 'partOfState': '', 'wfo': 'OTX'}, -'PAZ041': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('BARBOURS', None, '41.40000', '-76.78000'), ('BUTTONWOOD', None, '41.49000', '-77.16000'), ('CAMMAL', None, '41.39000', '-77.39000'), ('CEDAR RUN', None, '41.52000', '-77.45000'), ('ENGLISH CENTER', None, '41.44000', '-77.25000'), ('LITTLE PINE SP', None, '41.36000', '-77.33000'), ('RALSTON', None, '41.50000', '-76.94000'), ('SALLADASBURG', 260, '41.27650', '-77.22760'), ('SLATE RUN', None, '41.47000', '-77.49000'), ('TROUT RUN', None, '41.39000', '-77.08000'), ('WATERVILLE', None, '41.32000', '-77.35000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CTP'}, -'KYZ068': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEE LICK', None, '37.32840', '-84.50210'), ('BILLOWS', None, '37.17080', '-84.29670'), ('BLOSS', None, '37.21640', '-84.36000'), ('BOONE', None, '37.51750', '-84.31670'), ('BRODHEAD', 1193, '37.40290', '-84.41690'), ('BROMO', None, '37.31540', '-84.41870'), ('BUMMER', None, '37.42580', '-84.24610'), ('BURR', None, '37.34190', '-84.30500'), ('CEDARVILLE', 52, '37.21340', '-84.32880'), ('CLIMAX', None, '37.46940', '-84.22530'), ('CONWAY', None, '37.47780', '-84.33440'), ('COOKSBURG', None, '37.38720', '-84.18720'), ('DISPUTANTA', None, '37.48840', '-84.25560'), ('DONARO', None, '37.35140', '-84.21680'), ('DUDLEY STATION', None, '37.37090', '-84.25560'), ('FLAT ROCK', None, '37.36120', '-84.26630'), ('GAULEY', None, '37.31400', '-84.19720'), ('GOOCHLAND', None, '37.43410', '-84.18850'), ('GUM SULPHUR', None, '37.42690', '-84.45940'), ('HANSFORD', None, '37.26990', '-84.37050'), ('HIATT', None, '37.41660', '-84.37640'), ('HORSE LICK', None, '37.33130', '-84.15580'), ('HUMMEL', None, '37.39610', '-84.28590'), ('INDIAN LAKES PARK', None, '37.41140', '-84.46160'), ('JEP HILL', None, '37.35380', '-84.18110'), ('JOHNETTA', None, '37.41520', '-84.19940'), ('LAKE LINVILLE', None, '37.38800', '-84.34500'), ('LEVEL GREEN', None, '37.28110', '-84.42610'), ('LIVINGSTON', 228, '37.29850', '-84.21670'), ('LUNER', None, '37.23770', '-84.28080'), ('MARETBURG', None, '37.35540', '-84.38730'), ('MOUNT VERNON', 2592, '37.36310', '-84.34420'), ('MUELLERSVILLE', None, '37.38580', '-84.30710'), ('ORLANDO', None, '37.37160', '-84.26860'), ('OTTOWA', None, '37.36170', '-84.45670'), ('PINE HILL', None, '37.32870', '-84.26330'), ('PONGO', None, '37.22220', '-84.32340'), ('QUAIL', None, '37.32720', '-84.45470'), ('RENFRO VALLEY', None, '37.38780', '-84.33170'), ('ROBINET', None, '37.37590', '-84.17760'), ('ROCKFORD', None, '37.51460', '-84.26880'), ('ROUNDSTONE', None, '37.43860', '-84.31680'), ('SAND HILL', None, '37.28930', '-84.26340'), ('SAND SPRINGS', None, '37.29770', '-84.35840'), ('SINKS', None, '37.33650', '-84.23200'), ('SNIDER', None, '37.49680', '-84.32430'), ('SPIRO', None, '37.34230', '-84.39970'), ('WABO', None, '37.31320', '-84.38970'), ('WELLHOPE', None, '37.31700', '-84.31870'), ('WILDIE', None, '37.42330', '-84.30220'), ('WILLAILLA', None, '37.30510', '-84.46280'), ('WITHERS', None, '37.34590', '-84.22580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'KYZ069': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALCORN', None, '37.56140', '-84.04890'), ('ANNVILLE', 589, '37.31990', '-83.96140'), ('ARDERY', None, '37.34060', '-84.10430'), ('ATKINSTOWN', None, '37.38310', '-83.96280'), ('BLANTON FLATS', None, '37.57000', '-84.00390'), ('BOND', None, '37.31590', '-83.98640'), ('BRADSHAW', None, '37.42500', '-83.96330'), ('BRAZIL', None, '37.52470', '-84.04170'), ('CARICO', None, '37.33200', '-84.09840'), ('CLOVER BOTTOM', None, '37.49890', '-84.15140'), ('COLLINGSWORTH', None, '37.46390', '-84.08710'), ('CORNELIUS', None, '37.31390', '-84.00860'), ('DABOLT', None, '37.34890', '-84.00410'), ('DANGO', None, '37.36940', '-84.11350'), ('DATHA', None, '37.26010', '-83.91500'), ('DEESE', None, '37.33550', '-84.02440'), ('DRIP ROCK', None, '37.57500', '-83.97360'), ('EBERLE', None, '37.29830', '-84.08870'), ('EGLON', None, '37.45660', '-84.12980'), ('EGYPT', None, '37.31310', '-83.89610'), ('ELIAN', None, '37.38940', '-83.83110'), ('FOXTOWN', None, '37.50420', '-83.99360'), ('GRAY HAWK', None, '37.39280', '-83.93680'), ('GREEN HILL', None, '37.29610', '-83.96550'), ('HERD', None, '37.36420', '-83.87530'), ('HIGH KNOB', None, '37.28720', '-83.90590'), ('HISEL', None, '37.55560', '-84.08390'), ('HURLEY', None, '37.41250', '-84.03720'), ('KERBY KNOB', None, '37.52090', '-84.11520'), ('LAKES', None, '37.50450', '-83.93670'), ('LOAM', None, '37.40690', '-84.12910'), ('MACEDONIA', None, '37.45860', '-83.96580'), ('MAULDEN', None, '37.35420', '-83.84900'), ('MCKEE', 878, '37.42990', '-83.99760'), ('MIDDLEFORK', None, '37.34350', '-84.08140'), ('MILDRED', None, '37.35420', '-83.92720'), ('MOORES CREEK', None, '37.28230', '-83.99490'), ('MORRILL', None, '37.51920', '-84.19750'), ('MUMMIE', None, '37.39360', '-83.87110'), ('NATHANTON', None, '37.36790', '-83.82760'), ('NEW ZION', None, '37.47120', '-83.89600'), ('OLIN', None, '37.35190', '-83.96640'), ('PARROT', None, '37.31680', '-84.06030'), ('PEOPLES', None, '37.28870', '-84.04970'), ('PRIVETT', None, '37.40190', '-83.90060'), ('SAND SPRINGS', None, '37.52610', '-84.00000'), ('SANDGAP', None, '37.48490', '-84.09160'), ('SETTLE STORE', None, '37.32940', '-83.94170'), ('SHIRLEY', None, '37.54590', '-84.14330'), ('SHOP BRANCH', None, '37.38540', '-84.03530'), ('THREELINKS', None, '37.46440', '-84.19020'), ('TURKEY FOOT', None, '37.46450', '-83.91790'), ('TYNER', None, '37.34520', '-83.90390'), ('WANETA', None, '37.47080', '-84.03850'), ('WELCHBURG', None, '37.32060', '-83.93000'), ('WIND CAVE', None, '37.51250', '-83.92890'), ('ZEKES POINT', None, '37.35100', '-83.88890')], 'partOfState': 'SOUTHEAST', 'wfo': 'JKL'}, -'WIZ008': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CHIEF LAKE', 625, '45.92660', '-91.33280'), ('COUDERAY', 96, '45.79620', '-91.29920'), ('EDGEWATER', None, '45.74230', '-91.47520'), ('EXELAND', 212, '45.66800', '-91.24020'), ('HAYWARD', 2129, '46.01000', '-91.48030'), ('LITTLE ROUND LAKE', 948, '45.96500', '-91.36780'), ('LORETTA', None, '45.88560', '-90.85310'), ('NEW POST', 367, '45.89720', '-91.19200'), ('NORTHWOODS BEACH', None, '45.91420', '-91.40360'), ('OJIBWA', None, '45.79810', '-91.11700'), ('RADISSON', 222, '45.76850', '-91.21870'), ('RESERVE', 436, '45.82830', '-91.36010'), ('STONE LAKE', None, '45.84560', '-91.54050'), ('WINTER', 344, '45.82110', '-91.01200')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'WIZ009': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BRANTWOOD', None, '45.56290', '-90.11520'), ('CATAWBA', 149, '45.53580', '-90.53290'), ('FIFIELD', None, '45.87980', '-90.42220'), ('KENNAN', 171, '45.53090', '-90.58610'), ('OGEMA', None, '45.44360', '-90.29820'), ('PARK FALLS', 2793, '45.93340', '-90.44590'), ('PHILLIPS', 1675, '45.69560', '-90.39770'), ('PRENTICE', 626, '45.54170', '-90.28810'), ('SPIRIT', None, '45.45420', '-90.11440')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'KYZ062': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEE SPRING', None, '37.28330', '-86.28330'), ('BROWNSVILLE', 921, '37.18820', '-86.25930'), ('MAMMOTH CAVE', None, '37.20000', '-86.10000'), ('RHODA', None, '37.15000', '-86.23330'), ('SUNFISH', None, '37.30000', '-86.36670'), ('SWEEDEN', None, '37.25000', '-86.28330'), ('WINDYVILLE', None, '37.21670', '-86.33330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ063': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BONNIEVILLE', 354, '37.37690', '-85.90150'), ('CANMER', None, '37.28330', '-85.78330'), ('CUB RUN', None, '37.30000', '-86.06670'), ('HAMMONVILLE', None, '37.41670', '-85.80000'), ('HARDYVILLE', None, '37.25000', '-85.80000'), ('HORSE CAVE', 2252, '37.17240', '-85.91130'), ('KESSINGER', None, '37.30000', '-85.96670'), ('LINWOOD', None, '37.33330', '-85.76670'), ('MONROE', None, '37.23330', '-85.70000'), ('MUNFORDVILLE', 1563, '37.28100', '-85.89930'), ('PRICEVILLE', None, '37.36670', '-85.98330'), ('ROWLETTS', None, '37.23330', '-85.90000'), ('THREE SPRINGS', None, '37.17300', '-85.75000'), ('UNO', None, '37.18330', '-85.83330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ060': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARTVILLE', None, '37.93500', '-83.47500'), ('BIG WOODS', None, '37.99500', '-83.47000'), ('CEDAR GROVES', None, '37.96000', '-83.76000'), ('CLAY LICK', None, '37.98000', '-83.77000'), ('CORNWELL', None, '37.95700', '-83.71400'), ('DAN', None, '37.96500', '-83.46500'), ('DENNISTON', None, '37.91550', '-83.53660'), ('FAGAN', None, '37.92000', '-83.70000'), ('FRENCHBURG', 551, '37.95480', '-83.62240'), ('KOREA', None, '37.94190', '-83.47860'), ('MARIBA', None, '37.91410', '-83.57690'), ('MEANS', None, '37.94810', '-83.76340'), ('POMEROYTON', None, '37.87130', '-83.52200'), ('RATLITT', None, '38.00000', '-83.58000'), ('ROTHWELL', None, '37.96000', '-83.69000'), ('SCRANTON', None, '37.98720', '-83.52170'), ('STOLL', None, '37.87000', '-83.51000'), ('SUDITH', None, '38.01830', '-83.63220'), ('TABOR', None, '37.92000', '-83.66000'), ('WELLINGTON', 561, '37.91530', '-83.50420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYZ061': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ABERDEEN', None, '37.25000', '-86.68330'), ('DUNBAR', None, '37.18330', '-86.76670'), ('LOGANSPORT', None, '37.28330', '-86.78330'), ('MORGANTOWN', 2544, '37.21800', '-86.70180'), ('QUALITY', None, '37.06670', '-86.85000'), ('ROCHESTER', 186, '37.20860', '-86.89110'), ('ROUNDHILL', None, '37.23330', '-86.45000'), ('SOUTH HILL', None, '37.18330', '-86.81670'), ('SUGAR GROVE', None, '37.08330', '-86.66660'), ('WELCHS CREEK', None, '37.35000', '-86.56670'), ('WOODBURY', 87, '37.18300', '-86.63500')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ066': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ARGYLE', None, '37.21670', '-84.81670'), ('BETHELRIDGE', None, '37.23330', '-84.76670'), ('CLEMENTSVILLE', None, '37.28330', '-85.10000'), ('DUNNVILLE', None, '37.20000', '-85.00000'), ('ELLISBURG', None, '37.46670', '-84.93330'), ('JACKTOWN', None, '37.45000', '-85.01670'), ('LIBERTY', 1850, '37.31780', '-84.93060'), ('MIDDLEBURG', None, '37.35000', '-84.81670'), ('MINTONVILLE', None, '37.18330', '-84.84000'), ('PHIL', None, '37.21670', '-84.96670'), ('RHEBER', None, '37.25000', '-85.01670'), ('WINDSOR', None, '37.13330', '-84.91670'), ('YOSEMITE', None, '37.35000', '-84.83330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ067': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CRAB ORCHARD', 842, '37.46320', '-84.50610'), ('DOG WALK', None, '37.38330', '-84.50000'), ('HUSTONVILLE', 347, '37.47270', '-84.81770'), ('KINGS MOUNTAIN', None, '37.36670', '-84.70000'), ('MCKINNEY', None, '37.45000', '-84.76670'), ('MORELAND', None, '37.50000', '-84.81670'), ('MT. SALEM', None, '37.40000', '-84.78330'), ('PREACHERSVILLE', None, '37.53330', '-84.55000'), ('ROWLAND', None, '37.51670', '-84.63330'), ('STANFORD', 3430, '37.53190', '-84.66270'), ('WAYNESBURG', None, '37.33330', '-84.68330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ064': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALLENDALE', None, '37.36670', '-85.58330'), ('BLACK GNAT', None, '37.30000', '-85.45000'), ('CREAL', None, '37.43330', '-85.65000'), ('EXIE', None, '37.16670', '-85.53330'), ('GREENSBURG', 2396, '37.25600', '-85.49530'), ('PIERCE', None, '37.18330', '-85.61670'), ('SUMMERSVILLE', None, '37.31670', '-85.61670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ065': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CAMPBELLSVILLE', 10498, '37.34750', '-85.34910'), ('ELK HORN', None, '37.31670', '-85.28330'), ('HOBSON', None, '37.41670', '-85.36670'), ('MANNSVILLE', None, '37.36670', '-85.20000'), ('SALOMA', None, '37.41670', '-85.40000'), ('YUMA', None, '37.28330', '-85.20000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'MIZ053': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARTHUR', None, '43.44290', '-83.75110'), ('BIRCH RUN', 1653, '43.25010', '-83.79010'), ('BRIDGEPORT', 7849, '43.37580', '-83.88320'), ('BURT', 1122, '43.23680', '-83.90630'), ('CHESANING', 2548, '43.18460', '-84.11990'), ('FENMORE', None, '43.17280', '-84.34530'), ('FOSTERS', None, '43.29810', '-83.91640'), ('FRANKENMUTH', 4838, '43.33050', '-83.74020'), ('FREELAND', 5147, '43.52110', '-84.11770'), ('HEMLOCK', 1585, '43.41580', '-84.23160'), ('LAYTON CORNERS', None, '43.17580', '-83.98830'), ('MARION SPRINGS', None, '43.24440', '-84.32720'), ('MERRILL', 782, '43.40930', '-84.33530'), ('NELSON', None, '43.33420', '-84.22970'), ('OAKLEY', 339, '43.14310', '-84.16860'), ('SAGINAW', 61799, '43.41960', '-83.94950'), ('SHIELDS', 6590, '43.41770', '-84.07320'), ('ST. CHARLES', 2215, '43.29940', '-84.14970'), ('ZILWAUKEE', 1799, '43.48000', '-83.92180')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TXZ018': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLAUDE', 1313, '35.10730', '-101.36230'), ('GOODNIGHT', None, '35.03440', '-101.18583'), ('WASHBURN', None, '35.17670', '-101.57278'), ('WAYSIDE', None, '34.79280', '-101.54667')], 'partOfState': '', 'wfo': 'AMA'}, -'TNZ017': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BLOOMINGDALE', 10350, '36.57830', '-82.50840'), ('BLOUNTVILLE', 2959, '36.53310', '-82.32730'), ('BLUFF CITY', 1559, '36.46370', '-82.27420'), ('BRISTOL TN', None, '36.56780', '-82.19740'), ('COLONIAL HEIGHTS', 7067, '36.47960', '-82.51180'), ('HARR', None, '36.58560', '-81.99470'), ('KINGSPORT', 44905, '36.52960', '-82.55690'), ('SOUTH HOLSTON DAM', None, '36.52440', '-82.08940'), ('SULLIVAN GARDENS', None, '36.47720', '-82.59670'), ('TRI-CITY AIRPORT', None, '36.48000', '-82.40000')], 'partOfState': '', 'wfo': 'MRX'}, -'KSZ005': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AGRA', 306, '39.76100', '-99.11970'), ('GLADE', 114, '39.68260', '-99.31060'), ('KIRWIN', 229, '39.66980', '-99.12280'), ('LOGAN', 603, '39.66130', '-99.56650'), ('LONG ISLAND', 155, '39.94630', '-99.53290'), ('PHILLIPSBURG', 2668, '39.75140', '-99.32190'), ('PRAIRIE VIEW', 141, '39.83170', '-99.57290'), ('SPEED', 44, '39.67630', '-99.42030'), ('WOODRUFF', None, '39.99250', '-99.42600')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'KSZ008': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AGENDA', 81, '39.70780', '-97.43140'), ('BELLEVILLE', 2239, '39.82440', '-97.63220'), ('COURTLAND', 334, '39.78140', '-97.89250'), ('CUBA', 231, '39.80280', '-97.45560'), ('MUNDEN', 122, '39.91390', '-97.53780'), ('NARKA', 93, '39.96060', '-97.42560'), ('NORWAY', None, '39.69610', '-97.77360'), ('REPUBLIC', 161, '39.92360', '-97.82140'), ('SCANDIA', 436, '39.79450', '-97.78330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'KSZ009': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BARNES', 152, '39.71190', '-96.87420'), ('CLIFTON', 557, '39.56720', '-97.27830'), ('GREENLEAF', 357, '39.72830', '-96.97580'), ('HADDAM', 169, '39.85700', '-97.30140'), ('HANOVER', 653, '39.89390', '-96.87920'), ('HOLLENBURG', None, '39.98060', '-96.99190'), ('LINN', 425, '39.68000', '-97.08390'), ('MAHASKA', 107, '39.98000', '-97.35000'), ('MORROWVILLE', 168, '39.84440', '-97.17140'), ('PALMER', 108, '39.63190', '-97.14000'), ('WASHINGTON', 1223, '39.81670', '-97.05000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TOP'}, -'MIZ055': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('APPLEGATE', 287, '43.35490', '-82.63650'), ('ARGYLE', None, '43.56420', '-82.93610'), ('BROWN CITY', 1334, '43.21160', '-82.98870'), ('CARSONVILLE', 502, '43.42570', '-82.67260'), ('CROSWELL', 2467, '43.27370', '-82.61870'), ('DECKER', None, '43.45910', '-83.04960'), ('DECKERVILLE', 944, '43.52560', '-82.74210'), ('FORESTVILLE', 127, '43.66070', '-82.61310'), ('JUHL', None, '43.35970', '-82.94640'), ('LEXINGTON', 1104, '43.26850', '-82.53380'), ('MARLETTE', 2104, '43.32650', '-83.08070'), ('MELVIN', 160, '43.18460', '-82.86350'), ('MINDEN', None, '43.67100', '-82.77520'), ('NEW GREENLEAF', None, '43.66170', '-83.07830'), ('PECK', 599, '43.25910', '-82.81650'), ('PORT SANILAC', 658, '43.43010', '-82.54810'), ('RICHMONDVILLE', None, '43.57330', '-82.59760'), ('ROSEBURG', None, '43.19000', '-82.74390'), ('SANDUSKY', 2745, '43.42290', '-82.83180'), ('WATERTOWN', None, '43.34110', '-82.82830')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TXZ008': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BORGER', 14302, '35.65930', '-101.40020'), ('FRITCH', 2235, '35.64060', '-101.59680'), ('PRINGLE', None, '35.94920', '-101.45580'), ('SANFORD', 203, '35.70260', '-101.53130'), ('STINNETT', 1936, '35.82220', '-101.44320')], 'partOfState': '', 'wfo': 'AMA'}, -'TNZ065': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DOYLE', 525, '35.85210', '-85.51280'), ('SPARTA', 4599, '35.93450', '-85.47310')], 'partOfState': '', 'wfo': 'OHX'}, -'CTZ012': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('GROTON', 10010, '41.34000', '-72.08000'), ('MYSTIC', 4001, '41.35180', '-71.97210'), ('NEW LONDON', 25671, '41.35000', '-72.10000'), ('NIANTIC', 3085, '41.32280', '-72.19430'), ('OLD LYME', None, '41.31000', '-72.34000'), ('PAWCATUCK', 5474, '41.37560', '-71.85300'), ('POQUONOCK BRIDGE', 1592, '41.34900', '-72.02810'), ('WATERFORD', None, '41.34270', '-72.14070')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'CTZ013': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('BANTAM', 802, '41.72350', '-73.24380'), ('BETHLEHEM VILLAGE', 2022, '41.64260', '-73.20350'), ('GAYLORDSVILLE', None, '41.64400', '-73.48720'), ('LITCHFIELD', 1328, '41.74470', '-73.19010'), ('NEW MILFORD', 6633, '41.58850', '-73.40680'), ('NEW PRESTON', 1110, '41.68170', '-73.35430'), ('OAKVILLE', 8618, '41.59190', '-73.08590'), ('TERRYVILLE', 5360, '41.67910', '-73.00770'), ('THOMASTON', None, '41.67250', '-73.07320'), ('WOODBURY CENTER', 1298, '41.54660', '-73.20700')], 'partOfState': 'NORTHERN', 'wfo': 'ALY'}, -'CTZ010': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('BRANFORD', None, '41.28000', '-72.81000'), ('EAST HAVEN', 28189, '41.29560', '-72.86310'), ('GUILFORD', None, '41.28030', '-72.67700'), ('MADISON', None, '41.27600', '-72.59500'), ('MILFORD', None, '41.22620', '-73.06260'), ('NEW HAVEN', 123626, '41.31010', '-72.92410'), ('NORTH BRANDFORD', None, '41.33000', '-72.76000'), ('NORTH MADISON', None, '41.35000', '-72.63000'), ('ORANGE', 13233, '41.27940', '-73.02590'), ('WEST HAVEN', 52360, '41.27390', '-72.96830'), ('WOODMONT', 1711, '41.22420', '-72.99260')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'CTZ011': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('CLINTON', 3516, '41.27580', '-72.53010'), ('DEEP RIVER', None, '41.39000', '-72.43010'), ('ESSEX', None, '41.35600', '-72.39850'), ('FENWICK', 52, '41.27110', '-72.35540'), ('OLD SAYBROOK', None, '41.29140', '-72.36880'), ('SAYBROOK MANOR', 1133, '41.28030', '-72.40620'), ('WESTBROOK', None, '41.28410', '-72.45250')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'MIZ057': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ADA', None, '42.95420', '-85.48880'), ('ALASKA', None, '42.84000', '-85.47800'), ('ALTO', None, '42.85670', '-85.38020'), ('BELMONT', None, '43.07550', '-85.60920'), ('BYRON CENTER', 3777, '42.81220', '-85.72280'), ('CALEDONIA', 1102, '42.79390', '-85.51320'), ('CANNONSBURG', None, '43.05380', '-85.46970'), ('CASCADE', None, '42.91220', '-85.49800'), ('CASNOVIA', 315, '43.23480', '-85.79130'), ('CEDAR SPRINGS', 3112, '43.22140', '-85.55320'), ('COMSTOCK PARK', 10674, '43.04500', '-85.67230'), ('CUTLERVILLE', 15114, '42.84150', '-85.66160'), ('DUTTON', None, '42.84120', '-85.58500'), ('EAST GRAND RAPIDS', 10764, '42.94640', '-85.60740'), ('GRAND RAPIDS', 197800, '42.96120', '-85.65570'), ('GRANDVILLE', 16263, '42.90380', '-85.75610'), ('GRATTAN', None, '43.08420', '-85.38120'), ('KENT CITY', 1061, '43.21910', '-85.75210'), ('KENTWOOD', 45255, '42.88240', '-85.59220'), ('LOWELL', 4013, '42.93320', '-85.34570'), ('ROCKFORD', 4626, '43.12620', '-85.55660'), ('SAND LAKE', 492, '43.29090', '-85.51820'), ('SPARTA', 4159, '43.15790', '-85.70940'), ('WALKER', 21842, '42.98470', '-85.74770'), ('WYOMING', 69368, '42.89240', '-85.70250')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'NEZ094': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CODY', 149, '42.93710', '-101.24770'), ('ELI', None, '42.94000', '-101.44000'), ('KILGORE', 99, '42.93850', '-100.95670'), ('MERRIMAN', 118, '42.92110', '-101.69980'), ('NENZEL', 13, '42.92690', '-101.10130')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'UTZ024': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BALLARD', 566, '40.28430', '-109.94700'), ('FORT DUCHESNE', 621, '40.27820', '-109.87100'), ('MAESER', 2855, '40.47360', '-109.58090'), ('NAPLES', 1300, '40.42980', '-109.49100'), ('RANDLETT', 224, '40.23060', '-109.82770'), ('VERNAL', 7714, '40.45200', '-109.53550'), ('WHITEROCKS', 341, '40.47290', '-109.94300')], 'partOfState': 'NORTHEAST', 'wfo': 'GJT'}, -'UTZ027': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CASTLE VALLEY', 349, '38.63260', '-109.39940'), ('GREEN RIVER', 973, '38.98160', '-110.08990'), ('MOAB', 4779, '38.57250', '-109.54710')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GJT'}, -'MIZ056': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLENDALE', 11555, '42.98570', '-85.95180'), ('BAUER', None, '42.92130', '-85.90220'), ('BEECHWOOD', 2963, '42.79700', '-86.12590'), ('COOPERSVILLE', 3910, '43.06540', '-85.93380'), ('DRENTHE', None, '42.78280', '-85.94000'), ('EASTMANVILLE', None, '43.01700', '-85.95630'), ('GRAND HAVEN', 11168, '43.05530', '-86.22420'), ('GRAND VALLEY', None, '42.97450', '-85.86970'), ('HUDSONVILLE', 7160, '42.86500', '-85.86310'), ('JAMESTOWN', None, '42.82550', '-85.84250'), ('JENISON', 17211, '42.90870', '-85.82980'), ('LAMONT', None, '43.00870', '-85.90620'), ('MARNE', None, '43.03620', '-85.82780'), ('NUNICA', None, '43.07970', '-86.06720'), ('OLIVE CENTER', None, '42.91420', '-86.08130'), ('PORT SHELDON', None, '42.89950', '-86.19970'), ('SPRING LAKE', 2514, '43.07480', '-86.19050'), ('WRIGHT', None, '43.11080', '-85.80870'), ('ZEELAND', 5805, '42.81310', '-86.01310')], 'partOfState': 'SOUTHWEST', 'wfo': 'GRR'}, -'NEZ090': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('COOK', 322, '40.51030', '-96.16120'), ('CRAB ORCHARD', 49, '40.33440', '-96.42170'), ('ELK CREEK', 112, '40.28750', '-96.12800'), ('STERLING', 507, '40.46190', '-96.37810'), ('TECUMSEH', 1716, '40.37030', '-96.18880')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ091': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AUBURN', 3350, '40.38830', '-95.84200'), ('BROCK', 162, '40.48110', '-95.95970'), ('BROWNVILLE', 146, '40.39710', '-95.66140'), ('JOHNSON', 280, '40.41130', '-95.99840'), ('JULIAN', 63, '40.52030', '-95.86710'), ('NEMAHA', 178, '40.33780', '-95.67590'), ('PERU', 569, '40.47870', '-95.73100')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'COZ019': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CHIMNEY ROCK', None, '37.20000', '-107.18000'), ('CHROMO', None, '37.03000', '-106.83000'), ('DUNTON', None, '37.77000', '-108.10000'), ('ELK PARK', None, '37.68000', '-107.67000'), ('GLADSTONE', None, '37.88000', '-107.65000'), ('HESPERUS', None, '37.28000', '-108.03000'), ('LA PLATA', None, '37.40000', '-108.07000'), ('MAYDAY', None, '37.35000', '-108.07000'), ('RICO', 205, '37.68800', '-108.03100'), ('ROCKWOOD', None, '37.50000', '-107.80000'), ('SILVERTON', 531, '37.81090', '-107.66400'), ('STONER', None, '37.58000', '-108.32000'), ('TACOMA', None, '37.48000', '-107.77000'), ('VALLECITO', None, '37.38000', '-107.60000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COZ018': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CAMP BIRD', None, '37.97000', '-107.73000'), ('FALL CREEK', None, '38.02000', '-108.03000'), ('LAKE CITY', 375, '38.02910', '-107.31030'), ('OPHIR', 113, '37.85690', '-107.82890'), ('OURAY', 813, '38.02610', '-107.67190'), ('PLACERVILLE', None, '38.02000', '-108.07000'), ('RED MTN', None, '37.90000', '-107.70000'), ('SAWPIT', 25, '37.99480', '-107.99990'), ('TELLURIDE', 2221, '37.93870', '-107.81240'), ('TROUT LAKE', None, '37.80000', '-107.87000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COZ014': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALMONT', None, '38.67000', '-106.83000'), ('CIMMARON', None, '38.45000', '-107.55000'), ('GUNNISON', 5409, '38.54470', '-106.92700'), ('IOLA', None, '38.43000', '-107.08000'), ('OHIO', None, '38.57000', '-106.60000'), ('PARLIN', None, '38.50000', '-106.72000'), ('POWDERHORN', None, '38.28000', '-107.12000'), ('SAPINERO', None, '38.43000', '-107.38000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'COZ017': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('COLONA', None, '38.28000', '-107.75000'), ('ESCALANTE FORKS', None, '38.58000', '-108.40000'), ('GLADE PARK', None, '39.00000', '-108.73000'), ('RIDGWAY', 713, '38.15580', '-107.75220')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'OHZ015': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ANTWERP', 1740, '41.18070', '-84.73910'), ('BROUGHTON', 166, '41.08790', '-84.53590'), ('CECIL', 216, '41.21910', '-84.60150'), ('GROVER HILL', 412, '41.01870', '-84.47710'), ('HAVILAND', 180, '41.01840', '-84.58110'), ('LATTY', 200, '41.08810', '-84.58340'), ('MELROSE', 322, '41.08960', '-84.41950'), ('PAULDING', 3595, '41.13680', '-84.58270'), ('PAYNE', 1166, '41.07940', '-84.72720'), ('SCOTT', 322, '40.98860', '-84.58410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'COZ011': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AUSTIN', None, '38.78000', '-107.93000'), ('BOWIE', None, '38.92000', '-107.53000'), ('CORY', None, '38.77000', '-107.98000'), ('CRAWFORD', 366, '38.70510', '-107.60860'), ('DELTA', 6400, '38.74480', '-108.07370'), ('ECKERT', None, '38.84200', '-107.95000'), ('HOTCHKISS', 968, '38.80100', '-107.71790'), ('LAZEAR', None, '38.78000', '-107.77000'), ('MONTROSE', 12344, '38.47940', '-107.87140'), ('OLATHE', 1573, '38.60570', '-107.98170'), ('ORCHARD CITY', 2880, '38.81480', '-107.96360'), ('PAONIA', 1497, '38.86950', '-107.58950')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'COZ010': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ASPEN', 5914, '39.19460', '-106.82690'), ('AVON', 5561, '39.65250', '-106.53310'), ('DOWD', None, '39.60000', '-106.45000'), ('EAGLE-VAIL', 2887, '39.62200', '-106.48910'), ('GILMAN', None, '39.53000', '-106.40000'), ('MERIDITH', None, '39.35000', '-106.72000'), ('MINTURN', 1068, '39.58430', '-106.42610'), ('RED CLIFF', 289, '39.50840', '-106.36950'), ('REDCLIFF', None, '39.52000', '-106.37000'), ('REDSTONE', None, '39.18000', '-107.23000'), ('SNOWMASS', None, '39.33000', '-106.98000'), ('SNOWMASS VILLAGE', 1822, '39.19550', '-106.93870'), ('STATE BRIDGE', None, '39.83000', '-106.60000'), ('TENNESSEE PASS', None, '39.36400', '-106.31300'), ('VAIL', 4531, '39.63950', '-106.35770'), ('WOODY CREEK', None, '39.28000', '-106.88000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'COZ013': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BUFORD', None, '39.98000', '-107.58000')], 'partOfState': 'CENTRAL', 'wfo': 'GJT'}, -'COZ012': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CRESTED BUTTE', 1529, '38.87010', '-106.98310'), ('MAHER', None, '38.65000', '-107.58000'), ('MARBLE', 105, '39.07140', '-107.18840'), ('MOUNT CRESTED BUTTE', 707, '38.90780', '-106.96620'), ('PITKIN', 124, '38.60810', '-106.51610'), ('RAGGED MTN', None, '39.10000', '-107.40000'), ('SOMERSET', None, '38.92000', '-107.43000'), ('TINCUP', None, '38.75000', '-106.47000'), ('WAUNITA HOT SPGS', None, '38.52000', '-106.50000'), ('WHITE PINE', None, '38.50000', '-106.40000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GJT'}, -'MSZ004': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BLUE MOUNTAIN', 670, '34.67100', '-89.02720'), ('DUMAS', 452, '34.63530', '-88.83700'), ('FALKNER', 212, '34.84750', '-88.93190'), ('RIPLEY', 5478, '34.72960', '-88.94440'), ('WALNUT', 754, '34.94850', '-88.90010')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSZ005': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('CORINTH', 14054, '34.93770', '-88.51680'), ('GLEN', 286, '34.86670', '-88.50000'), ('HINKLE', None, '34.78330', '-88.56670'), ('KOSSUTH', 170, '34.87140', '-88.64410'), ('LEEDY', None, '34.80000', '-88.36670'), ('RIENZI', 330, '34.76350', '-88.53130'), ('THEO', None, '34.93330', '-88.70000'), ('WENASOGA', None, '34.98330', '-88.58330')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSZ006': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BELMONT', 1961, '34.50700', '-88.20800'), ('BURNSVILLE', 1034, '34.84200', '-88.31600'), ('GOLDEN', 201, '34.48520', '-88.18610'), ('IUKA', 3059, '34.80800', '-88.19730'), ('MIDAY', None, '34.73330', '-88.23330'), ('PADEN', 106, '34.66460', '-88.26460'), ('PINEFLAT', None, '34.98330', '-88.26670'), ('TISHOMINGO', 316, '34.63650', '-88.22990')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSZ007': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DUBBS', None, '34.56670', '-90.36670'), ('DUNDEE', None, '34.51670', '-90.45000'), ('LITTLE TEXAS', None, '34.62670', '-90.28330'), ('NORTH TUNICA', 1450, '34.70090', '-90.37810'), ('PRICHARD', None, '34.71670', '-90.23330'), ('ROBINSONVILLE', None, '34.81670', '-90.31670'), ('TUNICA', 1132, '34.68820', '-90.38150')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'VTZ019': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('CHITTENDEN', None, '43.72000', '-72.95000'), ('KILLINGTON', None, '43.67000', '-72.77000'), ('MENDON', None, '43.65000', '-72.93000'), ('MT. HOLLY', None, '43.45000', '-72.82000'), ('PITTSFIELD', None, '43.78000', '-72.82000'), ('SHREWSBURY', None, '43.52000', '-72.87000'), ('SOUTH WALLINGFORD', None, '43.42000', '-72.98000'), ('WALLINGFORD', 948, '43.48050', '-72.97570')], 'partOfState': 'SOUTHERN', 'wfo': 'BTV'}, -'MSZ001': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('LAKE CORMORANT', None, '34.90000', '-90.21670'), ('EUDORA', None, '34.83330', '-90.15000'), ('HERNANDO', 6812, '34.82760', '-89.98690'), ('HOLLYWOOD', None, '34.75000', '-90.20000'), ('HORN LAKE', 14099, '34.95610', '-90.03530'), ('LEWISBURG', None, '34.86670', '-89.81670'), ('LYNCHBURG', 2959, '34.96710', '-90.09450'), ('MEMPHIS', 87, '34.92570', '-90.14090'), ('NEWPORT', None, '34.89320', '-90.22850'), ('OLIVE BRANCH', 21054, '34.95480', '-89.82900'), ('SOUTHAVEN', 28977, '34.97440', '-89.99900'), ('WALLS', None, '34.95000', '-90.13330')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ002': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BETHLEHEM', None, '34.56670', '-89.33330'), ('BYHALIA', 706, '34.86450', '-89.68740'), ('HOLLY SPRINGS', 7957, '34.77270', '-89.44350'), ('LAWS HILL', None, '34.58330', '-89.58330'), ('MARIANNA', None, '34.71670', '-89.60000'), ('MT PLEASANT', None, '34.95000', '-89.51670'), ('POTTS CAMP', 494, '34.64830', '-89.30690'), ('RED BANKS', None, '34.83330', '-89.58330'), ('SLAYDEN', None, '34.95000', '-89.45000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ003': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ASHLAND', 577, '34.83280', '-89.17660'), ('CANAAN', None, '34.93330', '-89.13330'), ('GRAVESTOWN', None, '34.75000', '-89.08330'), ('HICKORY FLAT', 565, '34.61520', '-89.18700'), ('LAMAR', None, '34.91670', '-89.31670'), ('MICHIGAN CITY', None, '34.98330', '-89.25000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'VTZ015': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BELLOWS FALLS', 3165, '43.13610', '-72.45320'), ('BRATTLEBORO', 8289, '42.86130', '-72.57420'), ('GUILFORD CENTER', None, '42.79200', '-72.62400'), ('PUTNEY', None, '42.97400', '-72.52030'), ('SAXTONS RIVER', 519, '43.13890', '-72.51130'), ('VERNON', None, '42.78180', '-72.52820'), ('WEST BRATTLEBORO', 3222, '42.85150', '-72.61100'), ('WESTMINSTER', 276, '43.07630', '-72.45600')], 'partOfState': 'SOUTHERN', 'wfo': 'ALY'}, -'VTZ014': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('JACKSONVILLE', 237, '42.79730', '-72.82080'), ('LONDONDERRY', None, '43.22650', '-72.80550'), ('NEWFANE', 116, '42.98760', '-72.65640'), ('STRATTON', None, '43.04280', '-72.91070'), ('TOWNSHEND', None, '43.04300', '-72.66600'), ('WEST WARDSBORO', None, '43.02970', '-72.85250'), ('WILMINGTON', None, '42.86820', '-72.87230')], 'partOfState': 'SOUTHERN', 'wfo': 'ALY'}, -'VTZ017': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BOLTON', None, '44.37000', '-72.88000'), ('HUNTINGTON', None, '44.33000', '-72.98000'), ('JERICHO', 1457, '44.50180', '-72.98700'), ('RICHMOND', None, '44.40000', '-73.00000'), ('UNDERHILL', None, '44.53000', '-72.97000')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'VTZ016': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BAKERSFIELD', None, '44.78000', '-72.80000'), ('ENOSBURG FALLS', 1473, '44.90830', '-72.80440'), ('FLETCHER', None, '44.68000', '-72.92000'), ('MONTGOMERY', None, '44.90000', '-72.63000'), ('RICHFORD', None, '44.99570', '-72.67340')], 'partOfState': 'NORTHWEST', 'wfo': 'BTV'}, -'MSZ008': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ARKABUTLA', None, '34.70000', '-90.13330'), ('BARR', None, '34.61670', '-89.78330'), ('COLDWATER', 1674, '34.69020', '-89.97540'), ('INDEPENDENCE', None, '34.70000', '-89.80000'), ('PHILLIPP', None, '34.73330', '-90.18330'), ('SENATOBIA', 6682, '34.61750', '-89.97210'), ('STRAYHORN', None, '34.62670', '-90.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ009': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOONEVILLE', 8625, '34.66260', '-88.56770'), ('BURTON', None, '34.63330', '-88.33330'), ('JUMPERTOWN', 404, '34.70640', '-88.66380'), ('MARIETTA', 248, '34.50090', '-88.47110'), ('THRASHERS', None, '34.70000', '-88.48330'), ('WHEELER', None, '34.58330', '-88.60000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'VTZ013': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('ARLINGTON', 1199, '43.06730', '-73.15190'), ('BENNINGTON', 9168, '42.87280', '-73.18510'), ('DORSET', None, '43.25500', '-73.09850'), ('MANCHESTER', 602, '43.16200', '-73.07200'), ('MANCHESTER CENTER', 2065, '43.17780', '-73.04350'), ('NORTH BENNINGTON', 1428, '42.92530', '-73.24430'), ('OLD BENNINGTON', 232, '42.88330', '-73.21380'), ('PERU', None, '43.23050', '-72.89870'), ('POWNAL', None, '42.76450', '-73.23780'), ('READSBORO', None, '42.77100', '-72.94790'), ('STAMFORD', None, '42.75470', '-73.06880'), ('WOODFORD STATE PARK', None, '42.88980', '-73.03450')], 'partOfState': 'SOUTHERN', 'wfo': 'ALY'}, -'VTZ012': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BARNARD', None, '43.73000', '-72.62000'), ('BETHEL', None, '43.83000', '-72.63000'), ('BRIDGEWATER', None, '43.58000', '-72.63000'), ('CAVENDISH', None, '43.38000', '-72.62000'), ('CHESTER', None, '43.26280', '-72.59390'), ('HARTLAND', None, '43.55000', '-72.40000'), ('LUDLOW', 958, '43.39630', '-72.69750'), ('NORWICH', None, '43.72000', '-72.30000'), ('PERKINSVILLE', 142, '43.36970', '-72.51620'), ('PLYMOUTH', None, '43.53000', '-72.73000'), ('POMFRET', None, '43.70000', '-72.52000'), ('QUECHEE', None, '43.65000', '-72.42000'), ('READING', None, '43.47000', '-72.55000'), ('ROCHESTER', None, '43.88000', '-72.82000'), ('SHARON', None, '43.78000', '-72.45000'), ('SOUTH ROYALTON', None, '43.82000', '-72.52000'), ('SOUTH WOODSTOCK', None, '43.57000', '-72.53000'), ('SPRINGFIELD', 3938, '43.28840', '-72.47620'), ('STOCKBRIDGE', None, '43.78000', '-72.77000'), ('TYSON', None, '43.47000', '-72.70000'), ('WEST BRIDGEWATER', None, '43.60000', '-72.75000'), ('WEST HARTFORD', None, '43.72000', '-72.42000'), ('WESTON', None, '43.28000', '-72.80000'), ('WHITE RIVER JUNCTION', 2569, '43.65010', '-72.32340'), ('WILDER', 1636, '43.67230', '-72.31130'), ('WINDSOR', None, '43.48000', '-72.42000'), ('WOODSTOCK', 977, '43.62620', '-72.51710')], 'partOfState': 'SOUTHERN', 'wfo': 'BTV'}, -'ARZ005': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BIG FLAT', 104, '36.00580', '-92.40500'), ('COTTER', 921, '36.28250', '-92.52020'), ('GASSVILLE', 1706, '36.28260', '-92.49470'), ('LAKEVIEW', 763, '36.37520', '-92.53920'), ('MOUNTAIN HOME', 11012, '36.33590', '-92.37920'), ('NORFORK', 484, '36.20830', '-92.28200'), ('SALESVILLE', 437, '36.24490', '-92.27000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ004': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BULL SHOALS', 2000, '36.37600', '-92.58840'), ('FLIPPIN', 1357, '36.27700', '-92.59210'), ('PYATT', 253, '36.25130', '-92.84440'), ('SUMMIT', 586, '36.25010', '-92.68740'), ('YELLVILLE', 1312, '36.22870', '-92.68590')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ007': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ASH FLAT', 977, '36.22580', '-91.60650'), ('CAVE CITY', 1946, '35.94670', '-91.54780'), ('EVENING SHADE', 465, '36.07040', '-91.62130'), ('HARDY', 578, '36.32150', '-91.48040'), ('SIDNEY', 275, '36.00430', '-91.65900'), ('WILLIFORD', 63, '36.25140', '-91.36070')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ006': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CHEROKEE VILLAGE-HIDDEN V', None, '36.30160', '-91.56950'), ('MAMMOTH SPRING', 1147, '36.49410', '-91.54470'), ('VIOLA', 381, '36.39620', '-91.98490')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'WYZ026': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BIG PINEY', 408, '42.54100', '-110.11710'), ('BIG SANDY', None, '42.63000', '-109.47000'), ('EDEN', 388, '42.05000', '-109.43000'), ('FARSON', 242, '42.11000', '-109.44000'), ('LA BARGE', 431, '42.26120', '-110.19630'), ('MARBLETON', 720, '42.55750', '-110.09940')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'WYZ027': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('COKEVILLE', 506, '42.08320', '-110.95500'), ('DIAMONDVILLE', 716, '41.77770', '-110.53640'), ('KEMMERER', 2651, '41.78220', '-110.55140'), ('OPAL', 102, '41.77000', '-110.32080'), ('SAGE JUNCTION', None, '41.82000', '-110.98000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RIW'}, -'ARZ003': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALPENA', 371, '36.29300', '-93.29330'), ('BELLEFONTE', 400, '36.20040', '-93.04640'), ('BERGMAN', 407, '36.31290', '-93.01110'), ('DIAMOND CITY', 730, '36.45580', '-92.91510'), ('EVERTON', 170, '36.15540', '-92.90840'), ('HARRISON', 12152, '36.24190', '-93.11950'), ('LEAD HILL', 287, '36.41470', '-92.90670'), ('OMAHA', 165, '36.46320', '-93.19190'), ('SOUTH LEAD HILL', 88, '36.39500', '-92.90540'), ('VALLEY SPRINGS', 167, '36.15290', '-92.99100'), ('ZINC', 76, '36.28530', '-92.91530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'AKZ018': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('SKAGWAY', 862, '59.52040', '-135.33570')], 'partOfState': '', 'wfo': 'AJK'}, -'WYZ028': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BURNTFORK', None, '41.03000', '-110.00000'), ('GRANGER', 146, '41.59410', '-109.96590'), ('GREEN RIVER', 11808, '41.51590', '-109.46790'), ('LITTLE AMERICA', 56, '41.55000', '-109.86000'), ('MCKINNON', 49, '41.03000', '-109.93000'), ('RELIANCE', 665, '41.67000', '-109.19000'), ('ROCK SPRINGS', 18708, '41.59810', '-109.22150')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RIW'}, -'ARZ009': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CORNING', 3679, '36.41080', '-90.58590'), ('DATTO', 97, '36.39320', '-90.72810'), ('GREENWAY', 244, '36.34110', '-90.22220'), ('HICKORIA', None, '36.38330', '-90.45000'), ('KNOBEL', 358, '36.31930', '-90.60170'), ('MCDOUGAL', 195, '36.43660', '-90.39020'), ('NIMMONS', 100, '36.30700', '-90.09450'), ('PEACH ORCHARD', 195, '36.28090', '-90.66190'), ('PIGGOTT', 3894, '36.38390', '-90.20080'), ('POLLARD', 240, '36.43070', '-90.26620'), ('RECTOR', 2017, '36.26420', '-90.29330'), ('ST. FRANCIS', 250, '36.45350', '-90.14320'), ('SUCCESS', 180, '36.45450', '-90.72290')], 'partOfState': '', 'wfo': 'MEG'}, -'ARZ008': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ATTICA', None, '36.35000', '-91.00000'), ('BIGGERS', 355, '36.33200', '-90.80590'), ('DALTON', None, '36.41670', '-91.15000'), ('MAYNARD', 381, '36.42180', '-90.90190'), ("O'KEAN", 201, '36.16780', '-90.81720'), ('POCAHONTAS', 6518, '36.26350', '-90.96860'), ('RAVENDEN SPRINGS', 137, '36.31460', '-91.22400'), ('REYNO', 484, '36.36080', '-90.75790')], 'partOfState': '', 'wfo': 'MEG'}, -'TXZ178': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COLDSPRING', 691, '30.59090', '-95.12920'), ('OAKHURST', 230, '30.74470', '-95.30950'), ('POINT BLANK', 559, '30.74590', '-95.21680'), ('SHEPHERD', 2029, '30.49050', '-95.00300')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ179': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CORRIGAN', 1721, '30.99950', '-94.82440'), ('GOODRICH', 243, '30.60960', '-94.94510'), ('LIVINGSTON', 5433, '30.70940', '-94.93610'), ('ONALASKA', 1174, '30.80880', '-95.10590'), ('SEVEN OAKS', 131, '30.85340', '-94.85620')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ174': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUCKHOLTS', 387, '30.87260', '-97.12750'), ('CAMERON', 5634, '30.85810', '-96.97700'), ('MILANO', 400, '30.70680', '-96.85990'), ('ROCKDALE', 5439, '30.65530', '-97.00770'), ('THORNDALE', 1278, '30.61430', '-97.20500')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FWD'}, -'TXZ175': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BREMOND', 876, '31.16510', '-96.67630'), ('CALVERT', 1426, '30.97960', '-96.67170'), ('FRANKLIN', 1470, '31.02490', '-96.48570'), ('HEARNE', 4690, '30.87700', '-96.59480')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FWD'}, -'TXZ176': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('MADISONVILLE', 4159, '30.95200', '-95.90840'), ('MIDWAY', 288, '31.02650', '-95.75280'), ('NORMANGEE', 719, '31.03000', '-96.11550')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ177': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HUNTSVILLE', 35078, '30.71190', '-95.54980'), ('NEW WAVERLY', 950, '30.53650', '-95.48120'), ('RIVERSIDE', 425, '30.84750', '-95.39880')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ170': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FREDONIA', None, '30.93190', '-99.11310'), ('KATEMCY', None, '30.91250', '-99.25360'), ('KOOCKVILLE', None, '30.75690', '-99.24970'), ('LOYAL VALLEY', None, '30.57560', '-99.00750'), ('MASON', 2134, '30.74860', '-99.23030'), ('PONTOTOC', None, '30.90920', '-98.97970'), ('STREETER', None, '30.76470', '-99.37610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SJT'}, -'TXZ171': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUCHANAN DAM', 1688, '30.79910', '-98.43830'), ('CASTELL', None, '30.70000', '-98.50000'), ('ENCHANTED ROCK STATE PARK', None, '30.51000', '-98.85000'), ('HORSESHOE BAY', 3337, '30.53710', '-98.35480'), ('KINGSLAND', 4584, '30.66470', '-98.45350'), ('LLANO', 3325, '30.75130', '-98.67390'), ('SUNRISE BEACH VILLAGE', 704, '30.58830', '-98.41880'), ('TOW', None, '30.88330', '-98.46670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ172': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BERTRAM', 1122, '30.74420', '-98.05740'), ('BRIGGS', None, '30.86660', '-97.91660'), ('BURNET', 4735, '30.76110', '-98.22980'), ('COTTONWOOD SHORES', 877, '30.55580', '-98.32550'), ('GRANITE SHOALS', 2040, '30.58870', '-98.38380'), ('INKS LAKE STATE PARK', None, '30.72000', '-98.38000'), ('MARBLE FALLS', 4959, '30.57970', '-98.27210'), ('MEADOWLAKES', 1293, '30.56320', '-98.29520'), ('SPICEWOOD', None, '30.48330', '-98.16660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ173': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANDERSON MILL', 8953, '30.45480', '-97.80550'), ('ANDICE', None, '30.78330', '-97.85000'), ('BARTLETT', 1675, '30.79470', '-97.43190'), ('BRUSHY CREEK', 15371, '30.51330', '-97.73940'), ('CEDAR PARK', 26049, '30.51460', '-97.83080'), ('COUPLAND', None, '30.46670', '-97.38330'), ('FLORENCE', 1054, '30.83970', '-97.79260'), ('GEORGETOWN', 28339, '30.64760', '-97.68630'), ('GEORGETOWN DAM', None, '30.66000', '-97.71000'), ('GRANGER', 1299, '30.71790', '-97.44070'), ('GRANGER DAM', None, '30.70000', '-97.33000'), ('HUTTO', 1250, '30.54580', '-97.54210'), ('JARRELL', None, '30.81670', '-97.60000'), ('LEANDER', 7596, '30.56240', '-97.86050'), ('LIBERTY HILL', 1409, '30.66670', '-97.41670'), ('ROUND ROCK', 61136, '30.51750', '-97.67210'), ('SERENADA', 1847, '30.69910', '-97.69150'), ('TAYLOR', 13575, '30.57180', '-97.41000'), ('THRALL', 710, '30.58840', '-97.29840'), ('WEIR', 591, '30.67330', '-97.59120')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'ORZ027': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('CRATER LAKE', None, '42.90000', '-122.13000'), ('CRESCENT LAKE', None, '43.50940', '-121.96830'), ('DIAMOND LAKE', None, '43.17890', '-122.13780'), ('UNION CREEK', None, '42.90720', '-122.44440')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MFR'}, -'SCZ011': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ABBEVILLE', 5840, '34.17960', '-82.37820'), ('ANTREVILLE', 118, '34.30390', '-82.54250'), ('CALHOUN FALLS', 2303, '34.09170', '-82.59650'), ('DONALDS', 354, '34.37760', '-82.34700'), ('DUE WEST', 1209, '34.33230', '-82.38860'), ('LOWNDESVILLE', 166, '34.21030', '-82.64950')], 'partOfState': '', 'wfo': 'GSP'}, -'AKZ121': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANCHOR POINT', 1845, '59.77070', '-151.81310'), ('CLAM GULCH', 173, '60.22470', '-151.40210'), ('COOPER LANDING', 369, '60.49110', '-149.79230'), ('ENGLISH BAY', None, '59.34690', '-151.90350'), ('FOX RIVER', 616, '59.85830', '-150.95820'), ('FRITZ CREEK', 1603, '59.73610', '-151.29530'), ('HALIBUT COVE', 35, '59.58720', '-151.23770'), ('HAPPY VALLEY', 489, '59.94730', '-151.73220'), ('HOMER', 3946, '59.63550', '-151.52220'), ('HOPE', 137, '60.89720', '-149.63160'), ('JAKOLOF BAY', None, '59.44690', '-151.51040'), ('KACHEMAK', 431, '59.67400', '-151.43100'), ('KALIFONSKY', None, '60.41010', '-151.27980'), ('KASILOF', 471, '60.33290', '-151.22990'), ('KENAI', 6942, '60.55370', '-151.20740'), ('NIKISKI', 4327, '60.72520', '-151.38270'), ('NIKOLAEVSK', 345, '59.83230', '-151.58920'), ('NINILCHIK', 772, '60.07350', '-151.63130'), ('PORT GRAHAM', 171, '59.34850', '-151.83740'), ('RIDGEWAY', 1932, '60.53200', '-151.08520'), ('SALAMATOF', 954, '60.61590', '-151.33740'), ('SELDOVIA', 286, '59.43910', '-151.70910'), ('SOLDOTNA', 3759, '60.48750', '-151.06440'), ('STERLING', 4705, '60.51520', '-150.79710')], 'partOfState': '', 'wfo': 'AFC'}, -'TNZ089': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRADEN', 271, '35.36970', '-89.57590'), ('GALLAWAY', 666, '35.33830', '-89.60350'), ('LA GRANGE', 136, '35.04930', '-89.23470'), ('LAGRANGE', None, '35.05000', '-89.21670'), ('MOSCOW', 422, '35.06130', '-89.39680'), ('OAKLAND', 1279, '35.22420', '-89.51340'), ('PIPERTON', 589, '35.02650', '-89.63020'), ('ROSSVILLE', 380, '35.04380', '-89.54290'), ('SOMERVILLE', 2519, '35.23750', '-89.35070'), ('WILLISTON', 341, '35.15940', '-89.37600')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'AKZ125': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('CROWN POINT', 75, '60.42250', '-149.33750'), ('MOOSE PASS', 206, '60.46730', '-149.38840'), ('PRIMROSE', 93, '60.37830', '-149.32280')], 'partOfState': '', 'wfo': 'AFC'}, -'SCZ010': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ANDERSON', 25514, '34.51860', '-82.64580'), ('BELTON', 4461, '34.52390', '-82.49510'), ('HONEA PATH', 3504, '34.44700', '-82.39460'), ('IVA', 1156, '34.30680', '-82.66350'), ('PELZER', 97, '34.64380', '-82.46190'), ('PENDLETON', 2966, '34.65080', '-82.78280'), ('PIEDMONT', 4684, '34.71010', '-82.46430'), ('POWDERSVILLE', None, '34.79170', '-82.49310'), ('SADLERS CREEK STATE PARK', None, '34.42500', '-82.82780'), ('SANDY SPRINGS', None, '34.59530', '-82.75000'), ('STARR', 173, '34.37710', '-82.69580'), ('WILLIAMSTON', 3791, '34.61760', '-82.47940')], 'partOfState': '', 'wfo': 'GSP'}, -'TNZ082': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRAYTON', None, '35.46920', '-85.18500'), ('MELVINE', None, '35.73220', '-85.05970'), ('MOUNT CREST', None, '35.66860', '-85.24170'), ('OLD CUMBERLAND', None, '35.54750', '-85.37440'), ('PALIO', None, '35.46920', '-85.32190'), ('PIKEVILLE', 1781, '35.60670', '-85.19580')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ083': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DAYTON', 6180, '35.49280', '-85.01300'), ('EVENSVILLE', None, '35.56280', '-84.95690'), ('GRANDVIEW', None, '35.74330', '-84.83860'), ('GRAYSVILLE', 1411, '35.44780', '-85.08250'), ('OLD WASHINGTON', None, '35.53170', '-84.90920'), ('SPRING CITY', 2025, '35.68740', '-84.86410')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ080': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('SPENCER', 1713, '35.74230', '-85.45670')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ081': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CAGLE', None, '35.47420', '-85.46250'), ('CARTWRIGHT', None, '35.27690', '-85.46030'), ('DUNLAP', 4173, '35.37270', '-85.38650'), ('LONE OAK', None, '35.19810', '-85.36560')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ086': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BULLET CREEK', None, '35.27810', '-84.42810'), ('CITICO BEACH', None, '35.53470', '-84.10920'), ('MADISONVILLE', 3939, '35.52280', '-84.35990'), ('MOUNT VERNON', None, '35.41140', '-84.36390'), ('SWEETWATER', 5586, '35.60030', '-84.46830'), ('TARIFFVILLE', None, '35.48580', '-84.18030'), ('TELLICO PLAINS', 859, '35.36650', '-84.29900'), ('VONORE', 1162, '35.59680', '-84.23190')], 'partOfState': '', 'wfo': 'MRX'}, -'SCZ013': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ADAMSBURG', None, '34.79110', '-81.52860'), ('BUFFALO', 1426, '34.72430', '-81.68350'), ('CARLISLE', 496, '34.59150', '-81.46470'), ('CROSS KEYS', None, '34.63190', '-81.77690'), ('JONESVILLE', 982, '34.83560', '-81.67990'), ('MONARCH MILLS', None, '34.71900', '-81.58100'), ('SEDALIA', None, '34.60390', '-81.72470'), ('UNION', 8793, '34.72280', '-81.62380')], 'partOfState': '', 'wfo': 'GSP'}, -'TNZ084': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIG SPRING', None, '35.39560', '-84.90030'), ('DECATUR', 1395, '35.52500', '-84.79120'), ('PEAKLAND', None, '35.62670', '-84.76390'), ('TEN MILE', None, '35.66560', '-84.66610')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ085': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ATHENS', 13220, '35.45150', '-84.60200'), ('CLEAR WATER', None, '35.50390', '-84.65280'), ('DENTVILLE', None, '35.27970', '-84.60830'), ('ENGLEWOOD', 1590, '35.42260', '-84.48970'), ('ETOWAH', 3663, '35.33500', '-84.52890'), ('HILLSVIEW', None, '35.38670', '-84.80330'), ('MURRAY STORE', None, '35.61470', '-84.62640'), ('NIOTA', 781, '35.51460', '-84.54930'), ('RICEVILLE', None, '35.38250', '-84.69530')], 'partOfState': '', 'wfo': 'MRX'}, -'NJZ009': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('ANNANDALE', 1276, '40.64500', '-74.89110'), ('BLOOMSBURY', 886, '40.65300', '-75.08560'), ('CALIFON', 1055, '40.71920', '-74.83680'), ('CLINTON', 2632, '40.63530', '-74.91230'), ('FLEMINGTON', 4200, '40.50910', '-74.86030'), ('FRENCHTOWN', 1488, '40.52580', '-75.05630'), ('GLEN GARDNER', 1902, '40.69900', '-74.94120'), ('HIGH BRIDGE', 3776, '40.66840', '-74.89570'), ('LAMBERTVILLE', 3868, '40.36800', '-74.94330'), ('LEBANON', 1065, '40.64390', '-74.83510'), ('MILFORD', 1195, '40.56820', '-75.09010'), ('STOCKTON', 560, '40.40540', '-74.97750'), ('WHITE HOUSE STATION', 1951, '40.61620', '-74.77240')], 'partOfState': 'NORTHWEST', 'wfo': 'PHI'}, -'AZZ040': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CASTLE BUTTE', None, '35.30670', '-110.34577'), ('CEDAR SPRINGS', None, '35.45502', '-110.36377'), ('CHAMBERS', None, '35.18921', '-109.43312'), ('CORNFIELDS', None, '35.65189', '-109.67858'), ('DILKON', 1265, '35.38498', '-110.32323'), ('GREASEWOOD', 581, '35.52800', '-109.86010'), ('HOLBROOK', 4917, '34.90167', '-110.16093'), ('HOLBROOK', 4917, '34.91280', '-110.15520'), ('INDIAN WELLS', None, '35.40739', '-110.08518'), ('JOSEPH CITY', None, '34.95661', '-110.32790'), ('KYKOTSMOVI VILLAGE', 776, '35.87420', '-110.62270'), ('PETRIFIED FOREST NATIONAL', None, '35.06737', '-109.77985'), ('POLACCA', None, '35.83560', '-110.36560'), ('SEBA DALKAI', None, '35.50157', '-110.44849'), ('SHONGOPOVI', 632, '35.81810', '-110.53400'), ('SUNRISE SPRINGS', None, '35.60280', '-109.74242'), ('WHITE CONE', None, '35.60536', '-110.06657')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'IDZ007': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('AHSAHKA', None, '46.50222', '-116.32306'), ('CLEARWATER', None, '46.02250', '-115.89000'), ('COTTONWOOD', 944, '46.04861', '-116.34861'), ('EAST KAMIAH', None, '46.20278', '-116.00694'), ('FENN', None, '45.96333', '-116.25528'), ('FERDINAND', 145, '46.15250', '-116.38833'), ('GLENWOOD', None, '46.24417', '-115.83194'), ('GRANGEVILLE', 3228, '45.92667', '-116.12139'), ('GREER', None, '46.39000', '-116.17417'), ('HARPSTER', None, '45.98667', '-115.96250'), ('KEUTERVILLE', None, '46.03417', '-116.44056'), ('KOOSKIA', 675, '46.14500', '-115.97694'), ('MUSSELSHELL', None, '46.35722', '-115.74278'), ('OROFINO', 3247, '46.47944', '-116.25417'), ('PARDEE', None, '46.29861', '-116.12444'), ('RIVERSIDE', None, '46.49556', '-116.29639'), ('STITES', 226, '46.09167', '-115.97528'), ('SYRINGA', None, '46.15083', '-115.72611'), ('TEAKEAN', None, '46.55111', '-116.37972'), ('WEIPPE', 416, '46.37611', '-115.93722'), ('WINONA', None, '46.13222', '-116.10694'), ('WOODLAND', None, '46.31111', '-116.06750')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'MSO'}, -'IDZ006': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('BURGDORF', None, '45.27722', '-115.91194'), ('ELK CITY', None, '45.82694', '-115.43583'), ('FALL CREEK', None, '45.81222', '-115.65167'), ('GOLDEN', None, '45.81222', '-115.67889'), ('LOWELL', None, '46.14417', '-115.59472'), ('MACKAY BAR', None, '45.37611', '-115.50528'), ('NEWSOME', None, '45.90750', '-115.62917'), ('OROGRANDE', None, '45.70556', '-115.54250'), ('POWELL', None, '46.57917', '-114.71778'), ('RED RIVER HOT SPRINGS', None, '45.78778', '-115.19917'), ('RIGGINS HOT SPRINGS', None, '45.41694', '-116.17083'), ('WARREN', None, '45.26417', '-115.67556')], 'partOfState': 'CENTRAL', 'wfo': 'MSO'}, -'IDZ005': {'fullStateName': 'IDAHO', 'state': 'ID', 'cities': [('CARDIFF', None, '46.57444', '-115.81139'), ('DENT', None, '46.62389', '-116.20222'), ('ELK RIVER', 156, '46.78361', '-116.17889'), ('HEADQUARTERS', None, '46.63000', '-115.80833'), ('JAYPE', None, '46.53028', '-115.82889'), ('PIERCE', 617, '46.49111', '-115.79806')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'MSO'}, -'VAZ029': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALMA', None, '38.59110', '-78.55780'), ('COMPTON', None, '38.78250', '-78.36920'), ('FAIRVIEW', None, '38.65420', '-78.42940'), ('HAMBURG', None, '38.65810', '-78.51470'), ('HONEYVILLE', None, '38.57860', '-78.56250'), ('IDA', None, '38.58890', '-78.42420'), ('INGHAM', None, '38.52890', '-78.57830'), ('JOLLETT', None, '38.46390', '-78.52420'), ('KIMBALL', None, '38.68690', '-78.40280'), ('LEAKSVILLE', None, '38.62640', '-78.52640'), ('LURAY', 4871, '38.66470', '-78.45530'), ('NEWPORT', None, '38.57860', '-78.59670'), ('PINE GROVE', None, '38.53580', '-78.48030'), ('RILEYVILLE', None, '38.76500', '-78.38830'), ('SHENANDOAH', 1878, '38.48740', '-78.62250'), ('SKYLAND', None, '38.59360', '-78.38220'), ('STANLEY', 1326, '38.57910', '-78.50470')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'SCZ016': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CHERAW', 5524, '34.69640', '-79.89530'), ('CHESTERFIELD', 1318, '34.73470', '-80.08470'), ('JEFFERSON', 704, '34.65140', '-80.38810'), ('MCBEE', 714, '34.46770', '-80.25830'), ('MOUNT CROGHAN', 155, '34.76930', '-80.22510'), ('PAGELAND', 2521, '34.77300', '-80.38970'), ('PATRICK', 354, '34.57570', '-80.04470'), ('RUBY', 348, '34.74410', '-80.17970')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'VAZ028': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALBIN', None, '39.22170', '-78.19890'), ('ARMEL', None, '39.07920', '-78.14390'), ('CEDAR GROVE', None, '39.26810', '-78.18940'), ('CEDAR HILL', None, '39.27640', '-78.11420'), ('CROSS JUNCTION', None, '39.32030', '-78.29360'), ('GAINESBORO', None, '39.27830', '-78.25940'), ('GORE', None, '39.26390', '-78.33220'), ('GRAVEL SPRINGS', None, '39.07500', '-78.44060'), ('HIGH VIEW MANOR', None, '39.16190', '-78.32140'), ('MIDDLETOWN', 1015, '39.02870', '-78.27790'), ('ROCK ENON SPRINGS', None, '39.21190', '-78.38670'), ('STEPHENS CITY', 1146, '39.09690', '-78.22140'), ('WILDE ACRES', None, '39.14690', '-78.40000'), ('WINCHESTER', 23585, '39.17450', '-78.17500')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'ARZ029': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('LIBERTY', None, '35.02750', '-94.23080'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('LIBERTY', None, '35.02750', '-94.23080'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('MILLTOWN', None, '35.15690', '-94.14940'), ('PATTERSON', 467, '34.99190', '-94.36080'), ('MILL CREEK', None, '35.33920', '-94.42280'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('MILLTOWN', None, '35.15690', '-94.14940'), ('CROSSROADS', None, '35.11190', '-94.19810'), ('URSULA', None, '35.32390', '-94.09280'), ('FORT SMITH', 80268, '35.38580', '-94.39830'), ('HARTFORD', 772, '35.02280', '-94.38110'), ('HACKETT', 694, '35.19030', '-94.41080'), ('GREENWOOD', 7112, '35.21560', '-94.25560'), ('BARLING', 4176, '35.32560', '-94.30140'), ('LAVACA', 1825, '35.33610', '-94.17310'), ('ARKOLA', None, '35.08470', '-94.30890'), ('HUNTINGTON', 688, '35.08220', '-94.26310'), ('MIDLAND', 253, '35.09310', '-94.35310'), ('DAYTON', None, '35.11420', '-94.22640'), ('WITCHERVILLE', None, '35.13750', '-94.26420'), ('WASHBURN', None, '35.16830', '-94.09330'), ('BURNVILLE', None, '35.18860', '-94.18890'), ('JENSON', None, '35.19720', '-94.43890'), ('EXCELSIOR', None, '35.20000', '-94.31420'), ('MANSFIELD', 1097, '35.05940', '-94.25250'), ('BONANZA', 514, '35.23920', '-94.42580'), ('FT CHAFFEE', None, '35.21670', '-94.06000'), ('JENNY LIND', None, '35.25030', '-94.31830'), ('RYE HILL', None, '35.26670', '-94.36670'), ('BLOOMER', None, '35.29390', '-94.13860'), ('CENTRAL CITY', 531, '35.31920', '-94.25190')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TSA'}, -'MOZ112': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANNISTON', 285, '36.82450', '-89.32620'), ('BERTRAND', 740, '36.90900', '-89.44970'), ('CHARLESTON', 4732, '36.91890', '-89.33790'), ('EAST PRAIRIE', 3227, '36.77900', '-89.38410'), ('WILSON CITY', 165, '36.92300', '-89.22280'), ('WYATT', 364, '36.91200', '-89.22360')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ113': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARBYRD', 528, '36.05260', '-90.24000'), ('CAMPBELL', 1883, '36.49210', '-90.07430'), ('CARDWELL', 789, '36.04720', '-90.29120'), ('CLARKTON', 1330, '36.45240', '-89.96530'), ('GLENNONVILLE', None, '36.58330', '-90.15000'), ('HOLCOMB', 696, '36.40020', '-90.02310'), ('HORNERSVILLE', 686, '36.04030', '-90.11480'), ('KENNETT', 11260, '36.24000', '-90.04870'), ('MALDEN', 4782, '36.58490', '-89.97560'), ('SENATH', 1650, '36.13350', '-90.16110')], 'partOfState': 'SOUTHEAST', 'wfo': 'MEG'}, -'MOZ110': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ADVANCE', 1244, '37.10360', '-89.91450'), ('BAKER', 5, '36.77360', '-89.76140'), ('BELL CITY', 461, '37.02380', '-89.81940'), ('BERNIE', 1777, '36.67200', '-89.97050'), ('BLOOMFIELD', 1952, '36.88860', '-89.93160'), ('DEXTER', 7356, '36.79040', '-89.96030'), ('DUDLEY', 289, '36.78910', '-90.09140'), ('ESSEX', 524, '36.81200', '-89.86240'), ('FISK', 363, '36.78220', '-90.20740'), ('PENERMON', 75, '36.79330', '-89.82960'), ('PUXICO', 1145, '36.95070', '-90.15900')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ111': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BENTON', 732, '37.09800', '-89.56210'), ('BLODGETT', 265, '37.00430', '-89.52620'), ('CHAFFEE', 3044, '37.18040', '-89.66130'), ('COMMERCE', 110, '37.15810', '-89.44660'), ('DIEHLSTADT', 163, '36.95940', '-89.43240'), ('HAY-WOOD CITY', None, '37.01180', '-89.60010'), ('KELSO', 527, '37.19010', '-89.55040'), ('LAMBERT', 49, '37.09360', '-89.55570'), ('MINER', 1056, '36.89380', '-89.53460'), ('MORLEY', 792, '37.04330', '-89.61260'), ('ORAN', 1264, '37.08500', '-89.65290'), ('SCOTT CITY', 4591, '37.22250', '-89.53210'), ('SIKESTON', 16992, '36.88020', '-89.58070'), ('VANDUSER', 217, '36.99120', '-89.68650')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ114': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CANALOU', 348, '36.75430', '-89.68750'), ('CATRON', 68, '36.61240', '-89.70630'), ('GIDEON', 1113, '36.45080', '-89.91060'), ('HOWARDVILLE', 342, '36.56830', '-89.59730'), ('LILBOURN', 1303, '36.59080', '-89.61370'), ('MARSTON', 610, '36.51760', '-89.60870'), ('MATTHEWS', 605, '36.75930', '-89.58360'), ('MOREHOUSE', 1015, '36.84600', '-89.69090'), ('NEW MADRID', 3334, '36.58930', '-89.54860'), ('NORTH LILBOURN', 95, '36.60170', '-89.62190'), ('PARMA', 852, '36.61090', '-89.81820'), ('PORTAGEVILLE', 3295, '36.42870', '-89.69980'), ('RISCO', 392, '36.55150', '-89.81870'), ('TALLAPOOSA', 204, '36.50750', '-89.81870')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'OKZ006': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALINE', 214, '36.50900', '-98.44830'), ('AMORITA', 44, '36.92390', '-98.29350'), ('BURLINGTON', 156, '36.90080', '-98.42330'), ('BYRON', 45, '36.90120', '-98.29470'), ('CARMEN', 411, '36.57840', '-98.45770'), ('CHEROKEE', 1630, '36.75410', '-98.35490'), ('DRIFTWOOD', None, '36.88000', '-98.35000'), ('GOLTRY', 268, '36.53200', '-98.15070'), ('HELENA', 443, '36.54640', '-98.27020'), ('INGERSOLL', None, '36.80000', '-98.38000'), ('JET', 230, '36.66680', '-98.18070'), ('LAMBERT', 9, '36.68370', '-98.42390'), ('MCWILLIE', None, '36.53000', '-98.35000'), ('YEWED', None, '36.68000', '-98.40000')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'ARZ026': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BAY', 1800, '35.74000', '-90.55920'), ('BLACK OAK', 286, '35.83550', '-90.36710'), ('BONO', 1512, '35.91050', '-90.79670'), ('BROOKLAND', 1332, '35.90140', '-90.58080'), ('CARAWAY', 1349, '35.75800', '-90.33200'), ('CASH', 294, '35.79980', '-90.93220'), ('EGYPT', 101, '35.86660', '-90.95290'), ('JONESBORO', 55515, '35.82180', '-90.68580'), ('LAKE CITY', 1956, '35.81900', '-90.44860'), ('MONETTE', 1179, '35.89370', '-90.34460')], 'partOfState': '', 'wfo': 'MEG'}, -'ARZ025': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AMAGON', 95, '35.56240', '-91.11060'), ('BEEDEVILLE', 105, '35.42860', '-91.10890'), ('CAMPBELL STATION', 228, '35.66950', '-91.25440'), ('DIAZ', 1284, '35.64790', '-91.25990'), ('GRUBBS', 438, '35.65270', '-91.07470'), ('JACKSONPORT', 235, '35.64120', '-91.30780'), ('NEWPORT', 7811, '35.62550', '-91.23520'), ('SWIFTON', 871, '35.82420', '-91.12890'), ('TUCKERMAN', 1757, '35.72790', '-91.20060'), ('TUPELO', 177, '35.39150', '-91.22990'), ('WELDON', 100, '35.44750', '-91.23140')], 'partOfState': '', 'wfo': 'LZK'}, -'OHZ029': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELLVILLE', 1773, '40.62080', '-82.51100'), ('BUTLER', 921, '40.58640', '-82.42010'), ('LEXINGTON', 4165, '40.67820', '-82.58690'), ('LUCAS', 620, '40.70290', '-82.42120'), ('MANSFIELD', 49346, '40.76280', '-82.52690'), ('ONTARIO', 5303, '40.76600', '-82.60760'), ('SHELBY', 9821, '40.88210', '-82.66150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'OHZ028': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BUCYRUS', 13224, '40.80280', '-82.97350'), ('CHATFIELD', 218, '40.95250', '-82.94160'), ('CRESTLINE', 5088, '40.78570', '-82.73890'), ('GALION', 11341, '40.73170', '-82.79050'), ('NEW WASHINGTON', 987, '40.96140', '-82.85430'), ('NORTH ROBINSON', 211, '40.79220', '-82.85640'), ('TIRO', 281, '40.90600', '-82.76830')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'NEZ069': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CHAMPION', None, '40.46500', '-101.71000'), ('ENDERS', None, '40.44250', '-101.52000'), ('IMPERIAL', 1982, '40.51620', '-101.63760'), ('LAMAR', 19, '40.57240', '-101.97950'), ('WAUNETA', 625, '40.41660', '-101.37160')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'NEZ068': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BURR', 66, '40.53590', '-96.29890'), ('DOUGLAS', 231, '40.59230', '-96.38850'), ('DUNBAR', 237, '40.66870', '-96.03030'), ('LORTON VILLAGE', None, '40.59750', '-96.02350'), ('NEBRASKA CITY', 7228, '40.67620', '-95.86070'), ('OTOE', 217, '40.72450', '-96.12030'), ('PALMYRA', 546, '40.70570', '-96.39160'), ('SYRACUSE', 1762, '40.66180', '-96.18290'), ('TALMAGE', 268, '40.53180', '-96.02340'), ('UNADILLA', 342, '40.68280', '-96.27010')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ065': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BEAVER CROSSING', 457, '40.77780', '-97.28190'), ('BEE', 223, '41.00690', '-97.05770'), ('CORDOVA', 127, '40.71640', '-97.35090'), ('GARLAND', 247, '40.94420', '-96.98510'), ('GOEHNER', 186, '40.83270', '-97.21990'), ('MILFORD', 2070, '40.77280', '-97.05200'), ('PLEASANT DALE', 245, '40.79180', '-96.93270'), ('SEWARD', 6319, '40.91210', '-97.09670'), ('STAPLEHURST', 270, '40.97480', '-97.17200'), ('TAMORA', None, '40.89580', '-97.22410'), ('UTICA', 844, '40.89560', '-97.34500')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ064': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENEDICT', 278, '41.00660', '-97.60680'), ('BRADSHAW', 336, '40.88370', '-97.74620'), ('GRESHAM', 270, '41.02770', '-97.40110'), ('HENDERSON', 986, '40.77900', '-97.81160'), ('LUSHTON', 33, '40.72380', '-97.72410'), ('MCCOOL JUNCTION', 385, '40.74430', '-97.59520'), ('THAYER', 71, '40.96970', '-97.49450'), ('WACO', 256, '40.89660', '-97.46120'), ('YORK', 8081, '40.87120', '-97.59560')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GID'}, -'NEZ067': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALVO', 142, '40.87150', '-96.38660'), ('AVOCA', 270, '40.79640', '-96.11780'), ('CEDAR CREEK', 396, '41.04540', '-96.09790'), ('EAGLE', 1105, '40.81610', '-96.43210'), ('ELMWOOD', 668, '40.84220', '-96.29430'), ('GREENWOOD', 544, '40.96160', '-96.44270'), ('LOUISVILLE', 1046, '40.99880', '-96.16030'), ('MANLEY', 191, '40.91880', '-96.16520'), ('MURDOCK', 269, '40.92600', '-96.28030'), ('MURRAY', 481, '40.91660', '-95.92790'), ('NEHAWKA', 232, '40.82980', '-95.98930'), ('PLATTSMOUTH', 6887, '41.00770', '-95.89140'), ('SOUTH BEND', 86, '41.00210', '-96.24620'), ('UNION', 260, '40.81470', '-95.92070'), ('WEEPING WATER', 1103, '40.86780', '-96.13880')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ066': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENNET', 570, '40.68120', '-96.50590'), ('DAVEY', 153, '40.98260', '-96.66860'), ('DENTON', 189, '40.73950', '-96.84460'), ('FIRTH', 564, '40.53430', '-96.60400'), ('HALLAM', 276, '40.53670', '-96.78590'), ('HICKMAN', 1084, '40.62150', '-96.63150'), ('LINCOLN', 225581, '40.81640', '-96.68820'), ('MALCOLM', 413, '40.90850', '-96.86600'), ('PANAMA', 253, '40.59960', '-96.51120'), ('RAYMOND', 186, '40.95660', '-96.78150'), ('ROCA', 220, '40.65810', '-96.66170'), ('SPRAGUE', 146, '40.62660', '-96.74520'), ('WAVERLY', 2448, '40.91490', '-96.53000')], 'partOfState': 'SOUTHEAST', 'wfo': 'OAX'}, -'NEZ061': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AMHERST', 277, '40.83880', '-99.26910'), ('ELM CREEK', 894, '40.71980', '-99.37500'), ('GIBBON', 1759, '40.74650', '-98.84470'), ('KEARNEY', 27431, '40.70080', '-99.08460'), ('MILLER', 156, '40.92700', '-99.39050'), ('ODESSA', None, '40.70000', '-99.25580'), ('PLEASANTON', 360, '40.97010', '-99.08670'), ('POOLE', None, '40.97920', '-98.95280'), ('RAVENNA', 1341, '41.02680', '-98.91300'), ('RIVERDALE', 213, '40.78360', '-99.16000'), ('SHELTON', 1140, '40.77850', '-98.73020')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ060': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('COZAD', 4163, '40.86290', '-99.98650'), ('EDDYVILLE', 96, '41.01270', '-99.62330'), ('GOTHENBURG', 3619, '40.92940', '-100.16120'), ('LEXINGTON', 10011, '40.77840', '-99.74210'), ('OVERTON', 646, '40.74040', '-99.53700'), ('SUMNER', 237, '40.94950', '-99.50720'), ('WILLOW ISLAND', None, '40.88000', '-100.06720')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ063': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('AURORA', 4225, '40.86570', '-98.00310'), ('GILTNER', 389, '40.77430', '-98.15390'), ('HAMPTON', 439, '40.88100', '-97.88790'), ('HORDVILLE', 150, '41.07980', '-97.89030'), ('MARQUETTE', 282, '41.00600', '-98.00950'), ('PHILLIPS', 336, '40.89800', '-98.21490'), ('STOCKHAM', 60, '40.71680', '-97.94340')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'NEZ062': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALDA', 652, '40.86470', '-98.46880'), ('CAIRO', 790, '41.00160', '-98.60770'), ('DONIPHAN', 763, '40.77350', '-98.37120'), ('GRAND ISLAND', 42940, '40.92180', '-98.36590'), ('WOOD RIVER', 1204, '40.82180', '-98.59790')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GID'}, -'WIZ004': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('CEDAR', None, '46.50780', '-90.49860'), ('GILE', None, '46.42840', '-90.22520'), ('GURNEY', None, '46.47320', '-90.50850'), ('HURLEY', 1818, '46.44430', '-90.19650'), ('IRON BELT', None, '46.40070', '-90.32440'), ('KIMBALL', None, '46.48180', '-90.30640'), ('MANITOWISH', None, '46.13310', '-90.01360'), ('MERCER', None, '46.16570', '-90.06280'), ('MONTREAL', 838, '46.43050', '-90.23880'), ('PENCE', None, '46.41520', '-90.27160'), ('SAXON', None, '46.49350', '-90.41500'), ('UPSON', None, '46.36930', '-90.40690'), ('VAN BUSKIRK', None, '46.38720', '-90.14360')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'VAZ023': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARCADIA', None, '37.55000', '-79.63330'), ('BLUE RIDGE', 3188, '37.38350', '-79.82010'), ('BLUE RIDGE', 3188, '37.38330', '-79.81670'), ('BUCHANAN', 1233, '37.51670', '-79.68330'), ('CLOVERDALE', 2986, '37.36670', '-79.91670'), ('CLOVERDALE', 2986, '37.35700', '-79.90690'), ('DALEVILLE', 1454, '37.41670', '-79.91670'), ('DALEVILLE', 1454, '37.41520', '-79.92150'), ('EAGLE ROCK', None, '37.63330', '-79.80000'), ('FINCASTLE', 359, '37.50000', '-79.88330'), ('FINCASTLE', 359, '37.49860', '-79.87550'), ('GALA', None, '37.68330', '-79.81670'), ('GLEN WILTON', None, '37.75000', '-79.81670'), ('LAYMANTOWN', 2034, '37.36570', '-79.85790'), ('LITHIA', None, '37.48330', '-79.75000'), ('NACE', None, '37.43330', '-79.85000'), ('ORISKANY', None, '37.61670', '-79.98330'), ('SPRINGWOOD', None, '37.55000', '-79.75000'), ('TROUTVILLE', 432, '37.41360', '-79.87800')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'WIZ005': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARBOR VITAE', None, '45.91000', '-89.65000'), ('BOULDER JUNCTION', None, '46.11000', '-89.63000'), ('CONOVER', None, '46.04000', '-89.25000'), ('EAGLE RIVER', 1443, '45.91000', '-89.25000'), ('LAC DU FLAMBEAU', 1646, '45.96000', '-89.88000'), ('LAND O LAKES', None, '46.16000', '-89.23000'), ('MANITOWISH WATERS', None, '46.13000', '-89.88000'), ('PHELPS', None, '46.06000', '-89.08000'), ('PRESQUE ISLE', None, '46.25000', '-89.73000'), ('SAYNER', None, '46.00000', '-89.53000'), ('ST GERMAIN', None, '45.91000', '-89.48000'), ('STAR LAKE', None, '46.03000', '-89.46000'), ('WINCHESTER', None, '46.21000', '-89.90000'), ('WOODRUFF', None, '45.90000', '-89.69000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'VAZ022': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BENT MOUNTAIN', None, '37.15000', '-80.11670'), ('BRADSHAW', None, '37.30000', '-80.23330'), ('CATAWBA', None, '37.38330', '-80.11670'), ('CAVE SPRING', 24941, '37.22380', '-80.00760'), ('GLENVAR', None, '37.26670', '-80.15000'), ('HOLLINS', 14309, '37.34290', '-79.95350'), ('POAGES MILL', None, '37.20000', '-80.05000'), ('ROANOKE', 94911, '37.27840', '-79.95840'), ('ROANOKE AIRPORT', None, '37.33330', '-79.98330'), ('SALEM CITY', None, '37.28670', '-80.05640'), ('VINTON', 7782, '37.27310', '-79.88840'), ('VINTON', 7782, '37.28330', '-79.90000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'WIZ006': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ALPHA', None, '45.77350', '-92.58030'), ('BRANSTAD', None, '45.73810', '-92.68290'), ('COOMER', None, '45.74760', '-92.25720'), ('DANBURY', None, '46.00670', '-92.37130'), ('FALUN', None, '45.77220', '-92.52810'), ('FOUR CORNERS', None, '45.67200', '-92.59110'), ('GRANTSBURG', 1369, '45.78060', '-92.68450'), ('HERTEL', None, '45.80860', '-92.17530'), ('RANDALL', None, '45.69620', '-92.83570'), ('RIVERSIDE', None, '46.07640', '-92.24780'), ('SIREN', 988, '45.78370', '-92.38000'), ('TRADE LAKE', None, '45.68980', '-92.59300'), ('TRADE RIVER', None, '45.64830', '-92.67320'), ('WEBB LAKE', None, '46.00950', '-92.13280'), ('WEBSTER', 653, '45.87860', '-92.36200'), ('YELLOWLAKE', None, '45.93580', '-92.37810')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'NMZ014': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALMA', None, '33.37900', '-108.90300'), ('APACHE CREEK', None, '33.83300', '-108.62400'), ('ARAGON', None, '33.88100', '-108.53800'), ('CRUZVILLE', None, '33.80700', '-108.66500'), ('DATIL', None, '34.14500', '-107.84300'), ('GLENWOOD', None, '33.31700', '-108.88300'), ('MOGOLLON', None, '33.39700', '-108.79400'), ('NATIONAL RADIO ASTRONOMY', None, '33.87700', '-107.72700'), ('OLD HORSE SPRINGS', None, '33.92400', '-108.22700'), ('PLEASANTON', None, '33.27200', '-108.87200'), ('RESERVE', 387, '33.70840', '-108.76120'), ('SAN FRANCISCO PLAZA', None, '33.69300', '-108.76600')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABQ'}, -'NMZ015': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABEYTAS', None, '34.46800', '-106.81100'), ('BERNARDO', None, '34.41900', '-106.83300'), ('BOSQUE DEL APACHE REFUGE', None, '33.80400', '-106.89100'), ('CHAMIZAL', None, '34.21800', '-106.91300'), ('CONTRERAS', None, '34.38300', '-106.81300'), ('ESCONDIDA', None, '34.10100', '-106.89600'), ('LA JOYA', None, '34.34600', '-106.84500'), ('LABORCITA', None, '33.94600', '-106.86800'), ('LAS NUTRIAS', None, '34.47700', '-106.77000'), ('LEMITAR', None, '34.16000', '-106.91000'), ('LUIS LOPEZ', None, '33.98900', '-106.88500'), ('MAGDALENA', 913, '34.11040', '-107.23450'), ('SABINAL', None, '34.49400', '-106.80700'), ('SAN ACACIA', None, '34.25500', '-106.89900'), ('SAN ANTONIO', None, '33.91800', '-106.86500'), ('SOCORRO', 8877, '34.05510', '-106.90420'), ('VEGUITA', None, '34.51600', '-106.76700')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'MOZ024': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BROOKFIELD', 4769, '39.78580', '-93.07630'), ('BUCKLIN', 524, '39.78240', '-92.88930'), ('LACLEDE', 415, '39.78820', '-93.16950'), ('LINNEUS', 369, '39.87690', '-93.18750'), ('MARCELINE', 2558, '39.71700', '-92.94740'), ('MEADVILLE', 457, '39.78780', '-93.30270'), ('NEW BOSTON', None, '39.95000', '-92.88330'), ('PURDIN', 223, '39.95020', '-93.16700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'NMZ017': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ALTO', None, '33.39900', '-105.68000'), ('ANCHO', None, '33.93800', '-105.73900'), ('ANGUS', None, '33.51700', '-105.63300'), ('BONITO LAKE', None, '33.45100', '-105.70800'), ('CAPITAN', 1443, '33.54040', '-105.59390'), ('ENCINOSO', None, '33.68600', '-105.48300'), ('FORT STANTON', None, '33.49600', '-105.52300'), ('GLENCOE', None, '33.40900', '-105.44800'), ('HOLLYWOOD', None, '33.32300', '-105.63400'), ('JICARILLA', None, '33.86900', '-105.66300'), ('LINCOLN', None, '33.49200', '-105.38300'), ('NOGAL', None, '33.55800', '-105.70700'), ('RUIDOSO', 7698, '33.36600', '-105.64250'), ('RUIDOSO DOWNS', 1824, '33.33160', '-105.60370'), ('SAN PATRICIO', None, '33.40900', '-105.32600'), ('WHITE OAKS', None, '33.74800', '-105.73600')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'MOZ022': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRAYMER', 910, '39.59020', '-93.79560'), ('BRECKENRIDGE', 454, '39.76150', '-93.80480'), ('COWGILL', 247, '39.56060', '-93.92580'), ('HAMILTON', 1813, '39.74330', '-94.00210'), ('KIDDER', 271, '39.78190', '-94.10240'), ('KINGSTON', 287, '39.64220', '-94.03820'), ('POLO', 582, '39.55220', '-94.04000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ023': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AVALON', None, '39.66670', '-93.45000'), ('CHILLICOTHE', 8968, '39.79160', '-93.55410'), ('CHULA', 198, '39.92160', '-93.47630'), ('DAWN', None, '39.66670', '-93.63330'), ('LUDLOW', 204, '39.65350', '-93.70310'), ('MOORESVILLE', 89, '39.74640', '-93.72020'), ('SPRING HILL', None, '39.86670', '-93.65000'), ('UTICA', 274, '39.74560', '-93.62930'), ('WHEELING', 268, '39.78660', '-93.38640')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ020': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ELWOOD', 1145, '39.75390', '-94.87900'), ('AGENCY', 599, '39.65570', '-94.74850'), ('DE KALB', 257, '39.58720', '-94.92390'), ('EASTON', 258, '39.72170', '-94.63960'), ('FAUCETT', None, '39.60000', '-94.81670'), ('LEWIS AND CLARK VILLAGE', 155, '39.53990', '-95.05080'), ('RUSHVILLE', 280, '39.58730', '-95.02330'), ('ST JOSEPH ARPT', None, '39.76670', '-94.91670'), ('ST. JOSEPH', 73990, '39.75920', '-94.82110')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ021': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GOWER', 1399, '39.61230', '-94.59470'), ('LATHROP', 2092, '39.54920', '-94.32950'), ('PLATTSBURG', 2354, '39.56500', '-94.46230'), ('TRIMBLE', 451, '39.47460', '-94.56100'), ('TURNEY', 155, '39.63690', '-94.32060')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MNZ030': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CARLISLE', None, '46.36830', '-96.18940'), ('DALTON', 258, '46.17340', '-95.91630'), ('DUNVILLA', None, '46.66310', '-96.01580'), ('EDWARDS', None, '46.44890', '-95.98860'), ('ELIZABETH', 172, '46.37930', '-96.13040'), ('ERHARD', 150, '46.48400', '-96.09710'), ('FERGUS FALLS', 13471, '46.28210', '-96.06770'), ('LAKE LIDA', None, '46.58220', '-95.97060'), ('MAPLEWOOD STATE PARK', None, '46.53360', '-95.94920'), ('PELICAN RAPIDS', 2374, '46.57080', '-96.08560'), ('PHELPS', None, '46.38030', '-95.82030'), ('STAR LAKE', None, '46.52920', '-95.80560'), ('UNDERWOOD', 319, '46.28520', '-95.87000'), ('VERGAS', 311, '46.65530', '-95.80380'), ('WESTERN', None, '46.15190', '-96.18280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGF'}, -'MNZ031': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALMORA', None, '46.24640', '-95.36530'), ('AMOR', None, '46.41250', '-95.74500'), ('BATTLE LAKE', 686, '46.28880', '-95.71510'), ('BIG MCDONALD LAKE', None, '46.58000', '-95.76690'), ('BLUFFTON', 210, '46.46930', '-95.23350'), ('BUTLER', None, '46.68810', '-95.35280'), ('CLITHERALL', 118, '46.27430', '-95.62970'), ('DEER CREEK', 328, '46.39130', '-95.32200'), ('DENT', 192, '46.55210', '-95.71720'), ('HENNING', 719, '46.32240', '-95.44290'), ('HILLVIEW', None, '46.68030', '-95.25750'), ('NEW YORK MILLS', 1158, '46.51970', '-95.37420'), ('OTTERTAIL', 451, '46.42850', '-95.55870'), ('OTTERTAIL LAKE', None, '46.39810', '-95.66280'), ('PARKERS PRAIRIE', 991, '46.15380', '-95.32930'), ('PERHAM', 2559, '46.59960', '-95.57340'), ('RICHVILLE', 124, '46.50670', '-95.62610'), ('URBANK', 59, '46.12560', '-95.51060'), ('VINING', 68, '46.26320', '-95.53380'), ('WRIGHTSTOWN', None, '46.27390', '-95.18580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGF'}, -'MNZ032': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALDRICH', 53, '46.37470', '-94.93940'), ('BLUE GRASS', None, '46.54280', '-95.00970'), ('HUNTERSVILLE', None, '46.77580', '-94.89250'), ('MENAHGA', 1220, '46.74880', '-95.10210'), ('NIMROD', 75, '46.63780', '-94.88100'), ('OYLEN', None, '46.57470', '-94.79830'), ('SEBEKA', 710, '46.62910', '-95.08820'), ('STAPLES AIRPORT', None, '46.38080', '-94.80670'), ('VERNDALE', 575, '46.39730', '-95.01150'), ('WADENA', 4294, '46.43990', '-95.13480')], 'partOfState': 'CENTRAL', 'wfo': 'FGF'}, -'MNZ033': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CASINO', None, '46.42700', '-94.54030'), ('CHICKAMAW BEACH', 148, '46.74870', '-94.38980'), ('EAST GULL LAKE', 978, '46.41080', '-94.35220'), ('ESTERDY', None, '46.47670', '-94.73260'), ('LAKE SHORE', 966, '46.49530', '-94.36100'), ('LEADER', None, '46.51580', '-94.64970'), ('PILLAGER', 420, '46.32690', '-94.47640'), ('PINE RIVER', 928, '46.72260', '-94.39830'), ('POPLAR', None, '46.58670', '-94.69670'), ('SYLVAN', None, '46.33510', '-94.40680')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'MNZ034': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BARROWS', None, '46.30120', '-94.25390'), ('BAXTER', 5555, '46.34120', '-94.28240'), ('BRAINERD', 13178, '46.35440', '-94.19410'), ('BREEZY POINT', 979, '46.60140', '-94.21930'), ('CROSBY', 2299, '46.49000', '-93.95660'), ('CROSSLAKE', 1893, '46.68250', '-94.09480'), ('CUYUNA', 231, '46.51180', '-93.92900'), ('DEERWOOD', 590, '46.47320', '-93.89900'), ('EMILY', 847, '46.75690', '-93.96150'), ('FIFTY LAKES', 392, '46.74880', '-94.09600'), ('FORT RIPLEY', 74, '46.16640', '-94.36170'), ('GARRISON', 213, '46.30260', '-93.82350'), ('IRONTON', 498, '46.48090', '-93.99670'), ('JENKINS', 287, '46.65230', '-94.32900'), ('LAKE HUBERT', None, '46.50230', '-94.25760'), ('LEGIONVILLE', None, '46.44720', '-94.19950'), ('LENNOX', None, '46.24370', '-94.34320'), ('LITTLE PINE', None, '46.74560', '-93.86150'), ('MANHATTAN BEACH', 50, '46.73440', '-94.14440'), ('MERRIFIELD', None, '46.46510', '-94.17290'), ('MISSION', None, '46.58810', '-94.05110'), ('NISSWA', 1953, '46.50000', '-94.29730'), ('PEQUOT LAKES', 947, '46.60190', '-94.32060'), ('PINE CENTER', None, '46.21450', '-93.91450'), ('RIVERTON', 115, '46.46100', '-94.04870'), ('SHEPHARD', None, '46.21400', '-94.10430'), ('ST. MATHIAS', None, '46.22280', '-94.25110'), ('SWANBURG', None, '46.74040', '-94.17550'), ('TROMMALD', 125, '46.50450', '-94.01670'), ('WOLFORD', None, '46.54570', '-93.97920'), ('WOODROW', None, '46.38840', '-94.07450')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DLH'}, -'MNZ035': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BAIN', None, '46.79090', '-93.58980'), ('BALL BLUFF', None, '46.95470', '-93.27330'), ('BALSAM', None, '46.78110', '-93.15610'), ('HAYPOINT', None, '46.90030', '-93.61690'), ('HILL CITY', 479, '46.98610', '-93.59640'), ('JACOBSON', None, '47.00080', '-93.26270'), ('LIBBY', None, '46.78420', '-93.32670'), ('PALISADE', 118, '46.71310', '-93.49070'), ('SHESHEBEE', None, '46.70470', '-93.24260'), ('SWATARA', None, '46.89560', '-93.67420'), ('TAMARACK', 59, '46.65190', '-93.11900'), ('WALDECK', None, '46.67440', '-93.60780'), ('WAUKENABO', None, '46.74020', '-93.60080')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DLH'}, -'MNZ036': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AITKIN', 1984, '46.53010', '-93.71040'), ('ARTHYDE', None, '46.35620', '-93.08950'), ('DADS CORNER', None, '46.33280', '-93.25910'), ('GLEN', None, '46.41870', '-93.51540'), ('GLORY', None, '46.41760', '-93.60060'), ('HASSMAN', None, '46.60220', '-93.61370'), ('KIMBERLY', None, '46.56090', '-93.46650'), ('LAWLER', None, '46.53620', '-93.17060'), ('MALMO', None, '46.33420', '-93.51970'), ('MCGRATH', 65, '46.24290', '-93.27440'), ('MCGREGOR', 404, '46.60830', '-93.30600'), ('PINE KNOLL', None, '46.57730', '-93.75780'), ('RONALD', None, '46.44740', '-93.05430'), ('ROSSBURG', None, '46.53530', '-93.58010'), ('WEALTHWOOD', None, '46.36320', '-93.65430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DLH'}, -'MNZ037': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADOLF', None, '46.77870', '-92.28030'), ('ALBORN', None, '46.97310', '-92.57620'), ('ARNOLD', 3032, '46.87510', '-92.10780'), ('AUTOMBA', None, '46.52090', '-93.01870'), ('BARNUM', 525, '46.50480', '-92.68930'), ('BROOKSTON', 98, '46.86600', '-92.60320'), ('BURNETT', None, '46.90090', '-92.52440'), ('CARLTON', 810, '46.66030', '-92.42320'), ('CHERRY', None, '47.00080', '-92.70670'), ('CLOQUET', 11201, '46.72900', '-92.49440'), ('CROMWELL', 143, '46.67950', '-92.87070'), ('CULVER', None, '46.92590', '-92.55860'), ('DULUTH', 86918, '46.78100', '-92.11800'), ('ESKO', None, '46.70600', '-92.36330'), ('FLOODWOOD', 503, '46.92690', '-92.91550'), ('FOND DU LAC', None, '46.67180', '-92.27330'), ('FREDENBERG', None, '46.97370', '-92.21730'), ('FRENCH RIVER', None, '46.89810', '-91.89720'), ('GARY NEW DULUTH', None, '46.67870', '-92.20680'), ('GOWAN', None, '46.86420', '-92.84730'), ('HERMANTOWN', 7448, '46.80620', '-92.24380'), ('HOLYOKE', None, '46.46760', '-92.38860'), ('INDEPENDENCE', 3236, '46.96080', '-92.46170'), ('ISLAND', None, '46.98620', '-93.01370'), ('ISLAND LAKE', None, '47.01490', '-92.19380'), ('KETTLE RIVER', 168, '46.48640', '-92.87800'), ('MAHTOWA', None, '46.57400', '-92.63200'), ('MOOSE LAKE', 2239, '46.44600', '-92.76840'), ('MUNGER', None, '46.80190', '-92.34390'), ('NEMADJI', None, '46.47950', '-92.59480'), ('PALMERS', None, '46.92480', '-91.85080'), ('PLEASANT VALLEY', None, '46.53830', '-92.38500'), ('PROCTOR', 2852, '46.74310', '-92.22740'), ('PROSIT', None, '46.99810', '-92.61780'), ('SAGINAW', None, '46.85930', '-92.44450'), ('SAWYER', None, '46.67140', '-92.63330'), ('SCANLON', 838, '46.70740', '-92.42890'), ('SCOTTS CORNER', None, '46.59830', '-92.42910'), ('TAFT', None, '46.99450', '-92.33280'), ('THOMSON', 153, '46.66410', '-92.38980'), ('TWIG', None, '46.89460', '-92.36480'), ('WEST DULUTH', None, '46.73560', '-92.18640'), ('WRENSHALL', 308, '46.61830', '-92.38360'), ('WRIGHT', 93, '46.67210', '-93.00670')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'TXZ196': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRYAN', 65660, '30.66850', '-96.36520'), ('COLLEGE STATION', 67890, '30.60050', '-96.31240'), ('WIXON VALLEY', 235, '30.76260', '-96.31720')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ197': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRENHAM', 13507, '30.15970', '-96.39730'), ('BURTON', 359, '30.17930', '-96.59730')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ194': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DIME BOX', None, '30.35000', '-96.81670'), ('FEDOR', None, '30.31670', '-97.05000'), ('GIDDINGS', 5105, '30.18330', '-96.92790'), ('LEXINGTON', 1178, '30.41470', '-97.00940'), ('TANGLEWOOD', None, '30.50000', '-96.98330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ195': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CALDWELL', 3449, '30.52910', '-96.70300'), ('SNOOK', 568, '30.49060', '-96.46570'), ('SOMERVILLE', 1704, '30.34520', '-96.53050')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ192': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AUSTIN', 656562, '30.30590', '-97.75050'), ('BEE CAVE', 656, '30.30800', '-97.95520'), ('BERGSTROM', None, '30.20000', '-97.66670'), ('BRIARCLIFF', 895, '30.40590', '-98.04600'), ('CREEDMOOR', 211, '30.09190', '-97.74170'), ('GARFIELD', 1660, '30.18970', '-97.56060'), ('JOLLYVILLE', 15813, '30.44950', '-97.75100'), ('JONESTOWN', 1681, '30.48920', '-97.92810'), ('LAGO VISTA', 4507, '30.45190', '-97.99670'), ('LAKEWAY', 8002, '30.36660', '-97.97940'), ('LOST CREEK', 4729, '30.29540', '-97.84400'), ('MANOR', 1204, '30.34600', '-97.55570'), ('MANSFIELD DAM', None, '30.33330', '-97.90000'), ('MUSTANG RIDGE', 785, '30.05660', '-97.69090'), ('ONION CREEK', 2116, '30.13630', '-97.78390'), ('PFLUGERVILLE', 16335, '30.44070', '-97.62020'), ('ROLLINGWOOD', 1403, '30.27380', '-97.78680'), ('SAN LEANNA', 384, '30.14490', '-97.81870'), ('SUNSET VALLEY', 365, '30.22610', '-97.81640'), ('TANGLEWOOD FOREST', None, '30.17430', '-97.83890'), ('WELLS BRANCH', 11271, '30.44580', '-97.67910'), ('WEST LAKE HILLS', 3116, '30.29210', '-97.80960'), ('WINDEMERE', 6868, '30.45890', '-97.64880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ193': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BASTROP', 5340, '30.11300', '-97.30540'), ('CAMP SWIFT', 4731, '30.19070', '-97.29210'), ('CEDAR CREEK', None, '30.08330', '-97.50000'), ('CIRCLE D-KC ESTATES', 2010, '30.16080', '-97.23140'), ('ELGIN', 5700, '30.34920', '-97.37250'), ('PAIGE', None, '30.21670', '-97.11670'), ('ROSANKY', None, '29.93330', '-97.30000'), ('SMITHVILLE', 3901, '30.00770', '-97.15660'), ('WYLDWOOD', 2310, '30.12920', '-97.47250')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ190': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLANCO', 1505, '30.09840', '-98.42230'), ('CYPRESS MILL', None, '30.40000', '-98.25000'), ('JOHNSON CITY', 1191, '30.27430', '-98.40650'), ('PEDERNALES FALLS STATE PA', None, '30.31000', '-98.25000'), ('ROUND MOUNTAIN', 111, '30.43610', '-98.35380'), ('TWIN SISTERS', None, '30.00000', '-98.40000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ191': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUDA', 2404, '30.08580', '-97.83970'), ('DRIFTWOOD', None, '30.11670', '-98.03330'), ('DRIPPING SPRINGS', 1548, '30.18850', '-98.08830'), ('HAYS', 233, '30.12280', '-97.87100'), ('HENLY', None, '30.20000', '-98.21670'), ('KYLE', 5314, '29.99400', '-97.87060'), ('MOUNTAIN CITY', 671, '30.03850', '-97.89300'), ('SAN MARCOS', 34733, '29.88020', '-97.92900'), ('UHLAND', 386, '29.96370', '-97.79460'), ('WIMBERLEY', 3797, '29.99290', '-98.10150'), ('WOODCREEK', 1274, '30.03110', '-98.11220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'WIZ003': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ASHLAND', 8620, '46.58020', '-90.87410'), ('BUTTERNUT', 407, '46.01370', '-90.49770'), ('CLAM LAKE', None, '46.15580', '-90.91690'), ('GLIDDEN', None, '46.13500', '-90.57860'), ('HIGH BRIDGE', None, '46.38890', '-90.73630'), ('MARENGO', None, '46.42250', '-90.81690'), ('MELLEN', 845, '46.32330', '-90.66110'), ('MORSE', None, '46.22230', '-90.62770'), ('ODANAH', 254, '46.60450', '-90.68350'), ('SANBORN', None, '46.43340', '-90.90950')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'TXZ198': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('NAVASOTA', 6789, '30.38910', '-96.08800'), ('TODD MISSION', 146, '30.26040', '-95.82920')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ199': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHATEAU WOODS', None, '30.16540', '-95.42740'), ('CONROE', 36811, '30.32330', '-95.47140'), ('CUT AND SHOOT', 1158, '30.33860', '-95.35290'), ('MAGNOLIA', 1111, '30.21100', '-95.74870'), ('MONTGOMERY', 489, '30.39120', '-95.69580'), ('OAK RIDGE NORTH', 2991, '30.15900', '-95.44500'), ('PANORAMA VILLAGE', 1965, '30.38210', '-95.49270'), ('PATTON VILLAGE', 1391, '30.19470', '-95.16690'), ('PINEHURST', 2274, '30.18890', '-95.70510'), ('PORTER HEIGHTS', 1490, '30.15170', '-95.32160'), ('ROMAN FOREST', 1279, '30.17770', '-95.15930'), ('SHENANDOAH', 1503, '30.18100', '-95.45480'), ('SPLENDORA', 1275, '30.23010', '-95.16400'), ('STAGECOACH', 455, '30.14120', '-95.71010'), ('THE WOODLANDS', 55649, '30.15770', '-95.48930'), ('WILLIS', 3985, '30.42480', '-95.47810'), ('WOODBRANCH', 1305, '30.18400', '-95.18430'), ('WOODLOCH', 247, '30.21770', '-95.41400')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'ILZ022': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BEECHER', 2033, '41.34770', '-87.61490'), ('BOLINGBROOK', 56321, '41.70040', '-88.07720'), ('BRAIDWOOD', 5203, '41.26810', '-88.22320'), ('CHANNAHON', 7344, '41.43450', '-88.21860'), ('CREST HILL', 13329, '41.56630', '-88.10510'), ('CRETE', 7346, '41.45320', '-87.61510'), ('CRYSTAL LAWNS', 2933, '41.57030', '-88.15790'), ('ELWOOD', 1620, '41.41210', '-88.10900'), ('FAIRMONT', 2563, '41.56180', '-88.05990'), ('FRANKFORT', 10391, '41.49700', '-87.83590'), ('FRANKFORT SQUARE', 7766, '41.51890', '-87.80310'), ('GODLEY', 594, '41.23730', '-88.24460'), ('GOODINGS GROVE', 17084, '41.62160', '-87.94060'), ('INGALLS PARK', 3082, '41.52130', '-88.03390'), ('JOLIET', 106221, '41.52670', '-88.12240'), ('LAKEWOOD SHORES', 1487, '41.27080', '-88.13630'), ('LOCKPORT', 15191, '41.58940', '-88.04790'), ('MANHATTAN', 3330, '41.42600', '-87.98870'), ('MINOOKA', 3971, '41.44910', '-88.25770'), ('MOKENA', 14583, '41.53200', '-87.87570'), ('MONEE', 2924, '41.42200', '-87.75410'), ('NEW LENOX', 17771, '41.51870', '-87.98400'), ('PEOTONE', 3385, '41.33160', '-87.79630'), ('PLAINFIELD', 13038, '41.61590', '-88.20410'), ('PRESTON HEIGHTS', 2527, '41.49280', '-88.07310'), ('ROCKDALE', 1888, '41.50550', '-88.11820'), ('ROMEOVILLE', 21153, '41.64610', '-88.08630'), ('SHOREWOOD', 7686, '41.52320', '-88.20240'), ('STEGER', 9682, '41.46780', '-87.63500'), ('SYMERTON', 106, '41.32810', '-88.05450'), ('UNIVERSITY PARK', 6662, '41.44240', '-87.70960'), ('WILMINGTON', 5134, '41.29770', '-88.15960')], 'partOfState': 'NORTHEAST', 'wfo': 'LOT'}, -'VIZ002': {'fullStateName': 'VIRGIN ISLANDS', 'state': 'VI', 'cities': [('CHRISTIANSTED', None, '17.74630', '-64.70730'), ('FREDERIKSTED', None, '17.71370', '-64.88170'), ('FREDERIKSTED SOUTHEAST', None, '17.70740', '-64.88010'), ('GROVE PLACE', None, '17.72630', '-64.82750')], 'partOfState': '', 'wfo': 'SJU'}, -'VIZ001': {'fullStateName': 'VIRGIN ISLANDS', 'state': 'VI', 'cities': [("ANNA'S RETREAT", None, '18.34210', '-64.88790'), ('CHARLOTTE AMALIE', None, '18.34400', '-64.93350'), ('CHARLOTTE AMALIE EAST', None, '18.33700', '-64.91270'), ('CHARLOTTE AMALIE WEST', None, '18.33920', '-64.96050'), ('CRUZ BAY', None, '18.32250', '-64.78240')], 'partOfState': '', 'wfo': 'SJU'}, -'MEZ017': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ADDISON', None, '45.08860', '-67.46890'), ('ALEXANDER', None, '45.08860', '-67.46890'), ('CHARLOTTE', None, '45.02110', '-67.24580'), ('COOPER', None, '44.95940', '-67.44030'), ('CRAWFORD', None, '45.05280', '-67.55190'), ('DEBLOIS', None, '44.74140', '-68.01530'), ('DENNYSVILLE', None, '44.90360', '-67.22920'), ('GRAND LAKE STREAM', None, '45.17940', '-67.77500'), ('MARION', None, '44.87830', '-67.31750'), ('MEDDYBEMPS', None, '45.03830', '-67.35640'), ('NORTHFIELD', None, '44.82890', '-67.57110'), ('PEMBROKE', None, '44.95360', '-67.16250'), ('PERRY', None, '44.97500', '-67.07640'), ('PRINCETON', None, '45.22330', '-67.57280'), ('WESLEY', None, '44.95220', '-67.66140')], 'partOfState': 'SOUTHEAST', 'wfo': 'CAR'}, -'TXZ066': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BALLINGER', 4243, '31.74070', '-99.95550'), ('BENOIT', None, '31.78280', '-99.82860'), ('CREWS', None, '31.93190', '-99.77780'), ('DRASCO', None, '32.07640', '-99.98720'), ('HATCHEL', None, '31.85000', '-99.94890'), ('MAVERICK', None, '31.83330', '-100.19470'), ('MILES', 850, '31.59720', '-100.18190'), ('NORTON', None, '31.87080', '-100.12580'), ('PUMPHREY', None, '32.03860', '-100.03810'), ('ROWENA', None, '31.64690', '-100.04580'), ('WILMETH', None, '31.97810', '-100.12000'), ('WINGATE', None, '32.04390', '-100.10970'), ('WINTERS', 2880, '31.96550', '-99.93430')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'NYZ049': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALPLAUS', None, '42.85570', '-73.90250'), ('EAST GLENVILLE', 6064, '42.86010', '-73.91590'), ('NISKAYUNA', 4892, '42.81710', '-73.89800'), ('ROTTERDAM', 20536, '42.77840', '-73.95450'), ('ROTTERDAM JUNCTION', None, '42.87420', '-74.04600'), ('SCHENECTADY', 61821, '42.80180', '-73.92810'), ('SCOTIA', 7957, '42.83200', '-73.96080')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ048': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('DELANSON', 385, '42.74770', '-74.18500'), ('DUANESBURG', 339, '42.76220', '-74.13350'), ('ESPERANCE', 380, '42.76440', '-74.25770'), ('MARIAVILLE', None, '42.82930', '-74.13770')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'CAZ097': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CAMP NELSON', None, '36.13970', '-118.61240'), ('GIANT FOREST', None, '36.56440', '-118.77260'), ('JOHNSONDALE', None, '35.97320', '-118.54010'), ('LODGEPOLE', None, '36.60440', '-118.73040')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'NVZ004': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('COLD SPRINGS', 3834, '39.41000', '-117.84000'), ('DIXIE VALLEY', None, '39.57000', '-118.08000'), ('FALLON', 7536, '39.47580', '-118.77780'), ('FALLON STATION', 1265, '39.41860', '-118.72010'), ('FERNLEY', 8543, '39.61380', '-119.24000'), ('FORT CHURCHILL STATE PARK', None, '39.29000', '-119.27000'), ('FRENCHMAN', None, '39.28000', '-118.27000'), ('HAZEN', None, '39.57000', '-119.05000'), ('IMLAY', None, '40.66000', '-118.15000'), ('LAHONTAN RESERVOIR', None, '39.46000', '-119.07000'), ('LOVELOCK', 2003, '40.18000', '-118.47690'), ('MIDDLEGATE', None, '39.29000', '-118.03000'), ('MILL CITY', None, '40.68000', '-118.07000'), ('NIXON', 418, '39.83000', '-119.36000'), ('OREANA', None, '40.33000', '-118.32000'), ('PYRAMID LAKE', None, '40.06000', '-119.56000'), ('RYE PATCH RESERVOIR', None, '40.49000', '-118.32000'), ('SAND MOUNTAIN', None, '39.31000', '-118.40000'), ('SAND PASS', None, '40.26000', '-119.68000'), ('SILVER SPRINGS', 4708, '39.42070', '-119.22000'), ('STAGECOACH', None, '39.37000', '-119.37000'), ('STILLWATER', None, '39.52000', '-118.55000'), ('SUTCLIFFE', 281, '39.95000', '-119.60000'), ('THE NEEDLE ROCKS', None, '40.15000', '-119.68000'), ('TRINITY JUNCTION', None, '39.94000', '-118.75000'), ('UNIONVILLE', None, '40.44000', '-118.12000')], 'partOfState': '', 'wfo': 'REV'}, -'NYZ042': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BOLTON LANDING', None, '43.55830', '-73.65200'), ('HAGUE', None, '43.74550', '-73.49700'), ('JOHNSBURG', None, '43.51820', '-73.96120'), ('NORTH CREEK', None, '43.69730', '-73.98570'), ('NORTH RIVER', None, '43.73770', '-74.04950'), ('WARRENSBURG', 3208, '43.50180', '-73.77540')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NYZ041': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CORINTH', 2474, '43.24550', '-73.83070'), ('DAY CENTER', None, '43.30500', '-74.01720'), ('EDINBURG', None, '43.22620', '-74.09250'), ('GANSEVOORT', None, '43.19600', '-73.64780'), ('MILTON', 1251, '43.03350', '-73.85300'), ('PORTER CORNERS', None, '43.14750', '-73.88670'), ('ROCK CITY FALLS', None, '43.06150', '-73.92130'), ('SARATOGA LAKE', None, '43.03170', '-73.73830'), ('SARATOGA SPRINGS', 26186, '43.06760', '-73.77880'), ('SCHUYLERVILLE', 1197, '43.10200', '-73.59060'), ('SOUTH GLENS FALLS', 3368, '43.29340', '-73.63530'), ('STILLWATER', 1644, '42.95000', '-73.64490'), ('THE SARATOGA BATTLEFIELD', None, '43.00250', '-73.64370'), ('VICTORY', 544, '43.09360', '-73.59240')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'ILZ101': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BARR', None, '38.40470', '-90.10430'), ('BELLEVILLE', 41410, '38.53000', '-90.00320'), ('BROOKLYN', 676, '38.65160', '-90.16740'), ('CAHOKIA', 16391, '38.56480', '-90.17760'), ('CASEYVILLE', 4310, '38.63300', '-90.03270'), ('CENTREVILLE', 5951, '38.57720', '-90.10160'), ('DUPO', 3933, '38.51750', '-90.20960'), ('EAST CARONDELET', 267, '38.53860', '-90.23700'), ('EAST ST. LOUIS', 31542, '38.61460', '-90.13100'), ('FAIRMONT CITY', 2436, '38.65100', '-90.10150'), ('FAIRVIEW HEIGHTS', 15034, '38.59670', '-90.00490'), ('FAYETTEVILLE', 384, '38.37790', '-89.79610'), ('FLORAVILLE', None, '38.37580', '-90.05630'), ('FREEBURG', 3872, '38.42780', '-89.90810'), ('LEBANON', 3523, '38.60310', '-89.81500'), ('LENZBURG', 577, '38.28520', '-89.81870'), ('MARISSA', 2141, '38.25500', '-89.75370'), ('MASCOUTAH', 5659, '38.50910', '-89.80540'), ('MILLSTADT', 2794, '38.45940', '-90.09310'), ('NEW ATHENS', 1981, '38.31900', '-89.87740'), ("O'FALLON", 21910, '38.59200', '-89.91330'), ('PADERBORN', None, '38.35910', '-90.04230'), ('SAUGET', 249, '38.58940', '-90.16970'), ('SCOTT AFB', 2707, '38.54420', '-89.85040'), ('SHILOH', 7643, '38.55350', '-89.90520'), ('SMITHTON', 2248, '38.40820', '-89.99020'), ('ST. LIBORY', 583, '38.36450', '-89.71400'), ('SUMMERFIELD', 472, '38.59570', '-89.74730'), ('SWANSEA', 10579, '38.54210', '-89.98860'), ('WASHINGTON PARK', 5345, '38.62990', '-90.09220')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'NYZ047': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BREAKABEEN', None, '42.52970', '-74.40970'), ('CENTRAL BRIDGE', None, '42.70880', '-74.33620'), ('COBLESKILL', 4533, '42.67910', '-74.48610'), ('GILBOA', None, '42.39780', '-74.39780'), ('JEFFERSON', None, '42.48020', '-74.61250'), ('LIVINGSTONVILLE', None, '42.48800', '-74.26930'), ('MIDDLEBURGH', 1398, '42.59890', '-74.32990'), ('NORTH BLENHEIM', None, '42.47350', '-74.43750'), ('RICHMONDVILLE', 786, '42.63320', '-74.56450'), ('SCHOHARIE', 1030, '42.66670', '-74.31290'), ('SHARON SPRINGS', 547, '42.79490', '-74.61750'), ('SUMMIT', None, '42.58000', '-74.58650')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'NVZ001': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('HAWTHORNE', 3311, '38.52520', '-118.62700'), ('LUNING', None, '38.51000', '-118.18000'), ('MASON', None, '38.95000', '-119.19000'), ('MINA', None, '38.39000', '-118.11000'), ('MOUNT MONTGOMERY', None, '37.98000', '-118.32000'), ('SCHURZ', 721, '38.99290', '-118.83280'), ('SMITH', None, '38.80000', '-119.33000'), ('SMITH VALLEY', 1425, '38.78610', '-119.34080'), ('SWEETWATER SUMMIT', None, '38.52000', '-119.21000'), ('WABUSKA', None, '39.14000', '-119.18000'), ('WALKER LAKE', None, '38.69000', '-118.74000'), ('WEED HEIGHTS', None, '38.99000', '-119.21000'), ('WELLINGTON', None, '38.76000', '-119.38000'), ('YERINGTON', 2883, '38.98810', '-119.16310')], 'partOfState': '', 'wfo': 'REV'}, -'NVZ002': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('HEAVENLY VALLEY', None, '38.96000', '-119.89000'), ('CRYSTAL BAY', None, '39.25000', '-119.99000'), ('DAGGET PASS', None, '38.98000', '-119.89000'), ('GENOA', None, '39.00000', '-119.85000'), ('GLENBROOK', None, '39.09000', '-119.94000'), ('INCLINE VILLAGE', None, '39.25080', '-119.96320'), ('KINGSBURY', 2624, '38.97590', '-119.88210'), ('MOUNT ROSE SUMMIT', None, '39.31000', '-119.90000'), ('SPOONER SUMMIT', None, '39.10000', '-119.90000'), ('STATELINE', 1215, '38.96000', '-119.94000'), ('ZEPHYR COVE', None, '39.00000', '-119.96000')], 'partOfState': '', 'wfo': 'REV'}, -'NVZ003': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('TOPAZ LAKE', None, '38.69000', '-119.54900'), ('CARSON CITY', 52457, '39.16990', '-119.76490'), ('DAYTON', 5907, '39.24000', '-119.57970'), ('GARDNERVILLE', 3357, '38.93930', '-119.73590'), ('GARDNERVILLE RANCHOS', 11054, '38.88820', '-119.74020'), ('GOLD HILL', None, '39.29000', '-119.66000'), ('HOLBROOK JUNCTION', None, '38.73000', '-119.55000'), ('INDIAN HILLS', 4407, '39.08600', '-119.78300'), ('JOHNSON LANE', 4837, '39.04800', '-119.72120'), ('LAKEVIEW', None, '39.21000', '-119.80000'), ('LOCKWOOD', None, '39.51000', '-119.65000'), ('MINDEN', 2836, '38.96050', '-119.77220'), ('MUSTANG', None, '39.52000', '-119.63000'), ('NEW WASHOE CITY', None, '39.30130', '-119.77180'), ('PATRICK', None, '39.55000', '-119.58000'), ('RENO', 180480, '39.53870', '-119.82250'), ('SIX MILE CANYON', None, '39.31000', '-119.56000'), ('SPANISH SPRINGS', 9018, '39.62000', '-119.72000'), ('SPARKS', 66346, '39.54420', '-119.73690'), ('STEAD', None, '39.64000', '-119.88000'), ('STEWART', None, '39.12000', '-119.76000'), ('SUN VALLEY', 19461, '39.59820', '-119.77860'), ('VERDI', None, '39.52000', '-119.99000'), ('VIRGINIA CITY', None, '39.31000', '-119.64000'), ('WADSWORTH', 881, '39.63260', '-119.29000'), ('WASHOE CITY', None, '39.32000', '-119.81000')], 'partOfState': '', 'wfo': 'REV'}, -'TXZ220': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAMPBELLTON', None, '28.75000', '-98.30000'), ('CHARLOTTE', 1637, '28.85920', '-98.70000'), ('CHRISTINE', 436, '28.78520', '-98.49860'), ('JOURDANTON', 3732, '28.91270', '-98.54140'), ('LEMING', None, '29.06660', '-98.48330'), ('LYTLE', 2383, '29.23410', '-98.79710'), ('PLEASANTON', 8266, '28.96460', '-98.49150'), ('POTEET', 3305, '29.03740', '-98.57510')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ221': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FLORESVILLE', 5868, '29.13680', '-98.15650'), ('KOSCIUSKO', None, '29.10000', '-97.93330'), ('LA VERNIA', 931, '29.35000', '-98.11670'), ('LA VERNIA', 931, '29.35410', '-98.11430'), ('PANDORA', None, '29.25000', '-97.83330'), ('POTH', 1850, '29.07240', '-98.08090'), ('STOCKDALE', 1398, '29.23380', '-97.96220'), ('SUTHERLAND SPRINGS', None, '29.26670', '-98.06670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ222': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CESTOHOWA', None, '29.01670', '-97.95000'), ('FALLS CITY', 591, '28.98130', '-98.02130'), ('GILLETT', None, '29.13330', '-97.80000'), ('KARNES CITY', 3457, '28.88700', '-97.90110'), ('KENEDY', 3487, '28.81520', '-97.85050'), ('RUNGE', 1080, '28.88590', '-97.71280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ065': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRONTE', 1076, '31.88550', '-100.29480'), ('ROBERT LEE', 1171, '31.89220', '-100.48440'), ('SANCO', None, '32.00830', '-100.52360'), ('SILVER', None, '32.07080', '-100.68220'), ('TENNYSON', None, '31.74170', '-100.28580')], 'partOfState': 'SOUTHWEST', 'wfo': 'SJT'}, -'TXZ224': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CUERO', 6571, '29.09410', '-97.28740'), ('HOCHHEIM', None, '29.31670', '-97.30000'), ('NORDHEIM', 323, '28.92330', '-97.61360'), ('THOMASTON', None, '29.00000', '-97.15000'), ('WESTHOFF', None, '29.20000', '-97.46670'), ('YORKTOWN', 2271, '28.98290', '-97.50410')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ225': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EZZELL', None, '29.28330', '-96.90000'), ('HALLETTSVILLE', 2345, '29.44490', '-96.94180'), ('MOULTON', 944, '29.57160', '-97.14600'), ('SHINER', 2070, '29.43200', '-97.17180'), ('SPEAKS', None, '29.25000', '-96.71670'), ('SUBLIME', None, '29.48300', '-96.80000'), ('YOAKUM', 5731, '29.29280', '-97.14650')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ226': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOLING-IAGO', 1271, '29.26050', '-95.94860'), ('EAST BERNARD', 1729, '29.52800', '-96.06300'), ('EL CAMPO', 10945, '29.19650', '-96.27630'), ('WHARTON', 9237, '29.31640', '-96.09900')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ227': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARCOLA', 1048, '29.50110', '-95.46350'), ('BEASLEY', 590, '29.49740', '-95.91790'), ('FIRST COLONY', None, '29.57450', '-95.60830'), ('FRESNO', 6603, '29.53740', '-95.45690'), ('FULSHEAR', 716, '29.69110', '-95.88420'), ('KENDLETON', 466, '29.44590', '-96.00010'), ('MEADOWS', None, '29.65150', '-95.58630'), ('MISSION BEND', 30831, '29.69370', '-95.66460'), ('MISSOURI CITY', 52913, '29.57230', '-95.53670'), ('NEEDVILLE', 2609, '29.39570', '-95.83920'), ('ORCHARD', 408, '29.60300', '-95.96870'), ('PECAN GROVE', 13551, '29.62580', '-95.73140'), ('PLEAK', 947, '29.48390', '-95.80990'), ('RICHMOND', 11081, '29.58140', '-95.76500'), ('ROSENBERG', 24043, '29.54860', '-95.79460'), ('SIMONTON', 718, '29.68140', '-95.99520'), ('STAFFORD', 15681, '29.62400', '-95.56310'), ('SUGAR LAND', 63328, '29.61880', '-95.61620'), ('THOMPSONS', 236, '29.49100', '-95.61960'), ('TOWN WEST', None, '29.66350', '-95.63090')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ228': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ASHERTON', 1342, '28.44600', '-99.76050'), ('BIG WELLS', 704, '28.56950', '-99.57000'), ('CARRIZO SPRINGS', 5655, '28.52550', '-99.85900'), ('CATARINA', 135, '28.35000', '-99.61670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ229': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARTESIA WELLS', None, '28.22080', '-99.29380'), ('COTULLA', 3614, '28.43610', '-99.23640'), ('ENCINAL', 629, '28.04130', '-99.35470'), ('FOWLERTON', 62, '28.45277', '-98.81666'), ('LOS ANGELES', None, '28.45000', '-99.00194'), ('MILLET', None, '28.57222', '-99.21250'), ('WOODWARD', None, '28.53333', '-99.29333')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ063': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BIGBY CORNER', None, '31.71000', '-101.65000'), ('GARDEN CITY', None, '31.87000', '-101.48000'), ('LEES', None, '32.08000', '-101.49000'), ('ST. LAWRENCE', None, '31.70000', '-101.54000')], 'partOfState': '', 'wfo': 'MAF'}, -'CAZ035': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BUELLTON', 3828, '34.62590', '-120.20120'), ('GUADALUPE', 5659, '34.96350', '-120.57470'), ('LOMPOC', 41103, '34.66060', '-120.46960'), ('SANTA MARIA', 77423, '34.93700', '-120.43690'), ('VANDENBERG AFB', 6151, '34.74930', '-120.51730'), ('VANDENBERG VILLAGE', 5802, '34.71120', '-120.46260'), ('POINT ARGUELLO', None, '34.57000', '-120.63000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ034': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ARROYO GRANDE', 15851, '35.12530', '-120.58360'), ('CAMBRIA', 6232, '35.54650', '-121.07990'), ('HEARST CASTLE', None, '35.69000', '-121.17000'), ('CAYUCOS', 2943, '35.43800', '-120.88480'), ('MORRO BAY', 10350, '35.36000', '-120.83000'), ('NIPOMO', 12626, '35.03240', '-120.48300'), ('PISMO BEACH', 8551, '35.14000', '-120.63000'), ('SAN LUIS OBISPO', 44174, '35.27290', '-120.66480')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ037': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ATASCADERO', 26411, '35.48550', '-120.68790'), ('PASO ROBLES', None, '35.63230', '-120.66420'), ('LAKE NACIMIENTO', 2176, '35.72850', '-120.87850'), ('SAN MIGUEL', 1427, '35.75170', '-120.69220'), ('TEMPLETON', 4687, '35.55390', '-120.70840'), ('SHANDON', 986, '35.65000', '-120.38000'), ('CALIFORNIA VALLEY', None, '35.32000', '-120.00000'), ('SANTA MARGARITA', None, '35.38000', '-120.62000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ036': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('SANTA YNEZ', 4584, '34.60800', '-120.10290'), ('SOLVANG', 5332, '34.59250', '-120.13930'), ('LAKE CACHUMA', None, '34.58280', '-119.98030')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ031': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BLYTHE', 12155, '33.60940', '-114.59010'), ('EAST BLYTHE', 3, '33.61170', '-114.57730'), ('PALO VERDE', 236, '33.42420', '-114.72920'), ('RIPLEY', None, '33.52500', '-114.66660'), ('WINTERHAVEN', 529, '32.73900', '-114.62000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PSR'}, -'CAZ030': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('COTTONWOOD VISITOR CENTER', None, '33.74830', '-115.78880'), ('LOST HORSE-KEYS VIEW JTNP', None, '33.94080', '-116.21250')], 'partOfState': 'SOUTHEAST', 'wfo': 'PSR'}, -'CAZ033': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALAMORIO', None, '32.97000', '-115.45000'), ('BONDS CORNER', None, '32.69000', '-115.34000'), ('BRAWLEY', 22052, '32.97980', '-115.53340'), ('CALEXICO', 27109, '32.67850', '-115.50080'), ('CALIPATRIA', 7289, '33.12720', '-115.51760'), ('COOLIDGE SPRING', None, '33.40000', '-116.05000'), ('COYOTE WELLS', None, '32.75000', '-115.97000'), ('DESERT SHORES', 792, '33.41500', '-116.04160'), ('DIXIELAND', None, '32.79000', '-115.78000'), ('EL CENTRO', 37835, '32.78710', '-115.55940'), ('GLAMIS', None, '33.00000', '-115.08000'), ("GORDON'S WELL", None, '32.71000', '-114.96000'), ('HEBER', 2988, '32.73410', '-115.52010'), ('HOLTVILLE', 5612, '32.81370', '-115.37730'), ('IMPERIAL', 7560, '32.84000', '-115.56000'), ('IMPERIAL HOT MINERAL SPA', None, '33.42000', '-115.69000'), ('MOUNTAIN SPRING', None, '32.67000', '-116.10000'), ('NILAND', 1143, '33.23850', '-115.51310'), ('OCOTILLO', 296, '32.74000', '-116.00000'), ('PLASTER CITY', None, '32.79000', '-115.85000'), ('SALTON CITY', 978, '33.26250', '-115.95000'), ('SEELEY', 1624, '32.78900', '-115.68020'), ('WESTMORLAND', 2131, '33.03680', '-115.62150'), ('WIEST', None, '33.06000', '-115.44000'), ('WINONA', None, '33.24000', '-115.94000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PSR'}, -'CAZ032': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CHIRIACO SUMMIT', None, '33.66660', '-115.71600'), ('DESERT CENTER', None, '33.71600', '-115.40000'), ('EAGLE MTN', None, '33.85000', '-115.48300'), ('MIDLAND', None, '33.86660', '-114.80000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PSR'}, -'TXZ061': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GARDENDALE', 1197, '32.02040', '-102.37130'), ('GOLDSMITH', 253, '31.98310', '-102.61650'), ('NORTH COWDEN', None, '32.01000', '-102.51000'), ('NOTREES', None, '31.92000', '-102.76000'), ('ODESSA', 90943, '31.85440', '-102.36830'), ('PENWELL', None, '31.73000', '-102.59000'), ('PLEASANT FARMS', None, '31.68000', '-102.34000'), ('WEST ODESSA', 17799, '31.84220', '-102.49830')], 'partOfState': '', 'wfo': 'MAF'}, -'CAZ039': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CARPINTERIA', 14194, '34.38790', '-119.51320'), ('SANTA BARBARA', 92325, '34.42850', '-119.72190'), ('GOLETA', 55204, '34.43580', '-119.82760'), ('REFUGIO STATE BEACH', None, '34.46220', '-120.07230'), ('GAVIOTA', None, '34.47170', '-120.21480')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'CAZ038': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CUYAMA', None, '34.94000', '-119.65000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LOX'}, -'FLZ006': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('DESTIN', 11119, '30.40500', '-86.49650'), ('EGLIN AFB', 8082, '30.46040', '-86.54990'), ('FORT WALTON BEACH', 19973, '30.42550', '-86.58500'), ('MARY ESTHER', 4055, '30.41130', '-86.66300'), ('NICEVILLE', 11684, '30.50200', '-86.46300'), ('OCEAN CITY', 5594, '30.43900', '-86.59100'), ('POSTIL', None, '30.48800', '-86.48000'), ('SEMINOLE', 10890, '30.47650', '-86.41100'), ('VALPARAISO', 6408, '30.51300', '-86.49500'), ('WRIGHT', 21697, '30.44570', '-86.64030')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'FLZ007': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALPINE HEIGHTS', None, '30.74580', '-86.21610'), ('ARGYLE', None, '30.71900', '-86.04430'), ('CANEY CREEK', None, '30.89970', '-86.20870'), ('CENTER RIDGE', None, '30.79840', '-86.09420'), ('CLEAR SPRINGS', None, '30.97980', '-86.34540'), ('CLUSTER SPRINGS', None, '30.83840', '-86.20540'), ('DARLINGTON', None, '30.94240', '-86.05880'), ('DE FUNIAK SPRINGS', 5089, '30.71700', '-86.11820'), ('DEFUNIAK SPRINGS A/P', None, '30.72980', '-86.15180'), ('DIXON', None, '30.74100', '-86.13280'), ('EALUM', None, '30.84030', '-86.24360'), ('FLOWERSVILLE', None, '30.95580', '-86.33850'), ('FOX HILL', None, '30.82120', '-86.29690'), ('GASKIN', None, '30.97080', '-86.13530'), ('GLENDALE', None, '30.86290', '-86.11450'), ('GORDON', None, '30.88980', '-86.27960'), ('KOERBER', None, '30.72720', '-86.07150'), ('LAKEWOOD', None, '30.98720', '-86.28290'), ('LIBERTY', None, '30.82140', '-86.21510'), ('MOSSY HEAD', None, '30.74310', '-86.31500'), ('NARROWS', None, '30.75880', '-86.14730'), ('NATURAL BRIDGE', None, '30.98250', '-86.20550'), ('NEW HARMONY', None, '30.85360', '-86.28000'), ('OAKWOOD HILLS', None, '30.75810', '-86.25620'), ('PAXTON', 656, '30.98170', '-86.30980'), ('PINEY GROVE', None, '30.80290', '-86.13000'), ('PLEASANT GROVE', None, '30.96880', '-86.35480'), ('PLEASANT HILL', None, '30.82400', '-86.06370'), ('SAND HILL', None, '30.83650', '-86.19070'), ('UNION', None, '30.80630', '-86.04180'), ('WALCAN', None, '30.72440', '-86.08600')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ004': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELFOREST', None, '30.60350', '-86.85260'), ('BAGDAD', 1490, '30.59690', '-87.03140'), ('GULF BREEZE', 5665, '30.35900', '-87.19600'), ('HAROLD', None, '30.65860', '-86.88560'), ('MILTON', 7045, '30.63170', '-87.04000'), ('NAVARRE', None, '30.41000', '-86.86390'), ('ORIOLE BEACH', None, '30.37500', '-87.09690'), ('PACE', 7393, '30.59890', '-87.16080')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'FLZ005': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AUBURN', None, '30.82000', '-86.53900'), ('BAKER', None, '30.79700', '-86.68190'), ('BLACKMAN', None, '30.92400', '-86.63700'), ('CAMPTON', None, '30.87300', '-86.52700'), ('CANNON TOWN', None, '30.85200', '-86.68000'), ('CRESTVIEW', 14766, '30.76220', '-86.57480'), ('CRESTVIEW AIRPORT', None, '30.77900', '-86.52300'), ('DEERLAND', None, '30.75700', '-86.44500'), ('DORCAS', None, '30.79800', '-86.41600'), ('ESCAMBIA FARMS', None, '30.95800', '-86.63500'), ('GALLIVER', None, '30.72500', '-86.71100'), ('GOOD HOPE', None, '30.96700', '-86.63700'), ('HOLT', None, '30.72200', '-86.67300'), ('LAUREL HILL', 549, '30.96510', '-86.45680'), ('MILLIGAN', None, '30.75200', '-86.64100'), ('PEADEN', None, '30.90850', '-86.59400'), ('SVEA', None, '30.96500', '-86.40500')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'FLZ002': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELLVIEW', 21201, '30.46250', '-87.31460'), ('BEULAH', None, '30.53600', '-87.40100'), ('BRENT', 22257, '30.46600', '-87.23700'), ('BROWNSVILLE', 14393, '30.42800', '-87.25000'), ('CANTONMENT', None, '30.60800', '-87.34000'), ('COTTAGE HILL', None, '30.63000', '-87.32100'), ('EAST PENSACOLA HEIGHTS', None, '30.42600', '-87.17900'), ('ENSLEY', 18752, '30.52690', '-87.27660'), ('FERRY PASS', 27176, '30.51820', '-87.20920'), ('GONZALEZ', 11365, '30.57320', '-87.29040'), ('GOULDING', 4484, '30.43880', '-87.23040'), ('JOHNSONS BEACH', None, '30.30600', '-87.41300'), ('MYRTLE GROVE', 17211, '30.41590', '-87.30380'), ('PENSACOLA', 56255, '30.42100', '-87.19500'), ('PENSACOLA NAVAL BASE', None, '30.35800', '-87.26700'), ('PENSACOLA REGIONAL AIRPOR', None, '30.47300', '-87.18800'), ('WARRINGTON', 15207, '30.38800', '-87.26950'), ('WEST PENSACOLA', 21939, '30.42640', '-87.26860')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'FLZ003': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('DIXONVILLE', None, '31.00000', '-87.03670'), ('ALLENTOWN', None, '30.76220', '-87.04220'), ('BERRYDALE', None, '30.89600', '-87.01640'), ('CHUMUCKLA', None, '30.77610', '-87.23750'), ('JAY', 579, '30.95250', '-87.15210'), ('MCLELLAN', None, '30.98940', '-86.89310'), ('MILTON NEAR WHITING FIELD', None, '30.73310', '-87.01690'), ('MUNSON', None, '30.85720', '-86.87330')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'FLZ001': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('FLOMATON', 1588, '30.99970', '-87.26140'), ('BARTH', None, '30.76500', '-87.32700'), ('BAY SPRINGS', None, '30.77600', '-87.48700'), ('BOGIA', None, '30.84500', '-87.32000'), ('BRATT', None, '30.96600', '-87.43300'), ('CENTURY', 1714, '30.97750', '-87.26150'), ('MCDAVID', None, '30.86600', '-87.32000'), ('MOLINO', 1312, '30.71940', '-87.32570'), ('OAK GROVE', None, '30.90700', '-87.43400'), ('WALNUT HILL', None, '30.88500', '-87.51000')], 'partOfState': 'NORTHWEST', 'wfo': 'MOB'}, -'ALZ014': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ADDISON', 723, '34.19990', '-87.17790'), ('ARLEY', 290, '34.08500', '-87.21060'), ('DOUBLE SPRINGS', 1003, '34.14840', '-87.40310'), ('HALEYVILLE', 4182, '34.23880', '-87.61820'), ('LYNN', 597, '34.04380', '-87.54670')], 'partOfState': 'NORTHWEST', 'wfo': 'BMX'}, -'ALZ015': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CARBON HILL', 2071, '33.89580', '-87.52500'), ('CORDOVA', 2423, '33.76060', '-87.19280'), ('DORA', 2413, '33.73140', '-87.08320'), ('ELDRIDGE', 184, '33.92200', '-87.61980'), ('JASPER', 14052, '33.85200', '-87.27010'), ('KANSAS', 260, '33.90180', '-87.55330'), ('NAUVOO', 284, '33.98850', '-87.48780'), ('OAKMAN', 944, '33.71300', '-87.38850'), ('PARRISH', 1268, '33.73380', '-87.28070'), ('SIPSEY', 552, '33.82210', '-87.08310'), ('SUMITON', 2665, '33.75310', '-87.04820')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ016': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BAILEYTON', 684, '34.26210', '-86.61350'), ('COLONY', 385, '33.94140', '-86.90120'), ('CULLMAN', 13995, '34.17610', '-86.83890'), ('FAIRVIEW', 522, '34.24680', '-86.68740'), ('GARDEN CITY', 564, '34.01480', '-86.75010'), ('GOOD HOPE', 1966, '34.11010', '-86.86460'), ('HANCEVILLE', 2951, '34.06490', '-86.76350'), ('HOLLY POND', 645, '34.17460', '-86.61700'), ('SOUTH VINEMONT', 425, '34.23610', '-86.86260'), ('WEST POINT', 295, '34.23810', '-86.94820')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'ALZ017': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALLGOOD', 629, '33.90640', '-86.51800'), ('BLOUNTSVILLE', 1768, '34.08090', '-86.58840'), ('CLEVELAND', 1241, '33.99490', '-86.57050'), ('COUNTY LINE', 257, '33.82100', '-86.72280'), ('HAYDEN', 470, '33.89530', '-86.75440'), ('HIGHLAND LAKE', 408, '33.88920', '-86.42380'), ('LOCUST FORK', 1016, '33.90270', '-86.62170'), ('NECTAR', 372, '33.96900', '-86.63630'), ('ONEONTA', 5576, '33.95120', '-86.47060'), ('ROSA', 313, '33.98450', '-86.50870'), ('SMOKE RISE', 1750, '33.87990', '-86.82450'), ('SNEAD', 748, '34.11590', '-86.39150'), ('SUSAN MOORE', 721, '34.07410', '-86.42970')], 'partOfState': '', 'wfo': 'BMX'}, -'ALZ010': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('COLLINSVILLE', 1644, '34.26660', '-85.86300'), ('CROSSVILLE', 1431, '34.28630', '-85.99360'), ('FORT PAYNE', 12938, '34.45380', '-85.69440'), ('FYFFE', 971, '34.45100', '-85.90640'), ('GERALDINE', 786, '34.36080', '-86.00300'), ('HAMMONDVILLE', 486, '34.56930', '-85.63830'), ('HENAGAR', 2400, '34.63390', '-85.73740'), ('IDER', 664, '34.70070', '-85.66690'), ('LAKEVIEW', 163, '34.39220', '-85.97330'), ('MENTONE', 451, '34.56830', '-85.58270'), ('PINE RIDGE', 243, '34.44440', '-85.77970'), ('POWELL', 926, '34.53080', '-85.89510'), ('RAINSVILLE', 4499, '34.49880', '-85.84490'), ('SHILOH', 289, '34.46550', '-85.87730'), ('SYLVANIA', 1186, '34.55980', '-85.80760'), ('VALLEY HEAD', 611, '34.55080', '-85.62580')], 'partOfState': 'NORTHEAST', 'wfo': 'HUN'}, -'ALZ011': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BEAR CREEK', 1053, '34.26050', '-87.71560'), ('BRILLIANT', 762, '34.01670', '-87.77580'), ('GU-WIN', 204, '33.95820', '-87.87170'), ('GUIN', 2389, '33.96610', '-87.91050'), ('HACKLEBURG', 1527, '34.27420', '-87.83370'), ('HAMILTON', 6786, '34.14030', '-87.98280'), ('WESTON', None, '34.16220', '-88.03090'), ('WINFIELD', 4540, '33.92990', '-87.79610')], 'partOfState': 'NORTHWEST', 'wfo': 'BMX'}, -'FLZ008': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLIGATOR', None, '30.41830', '-86.22800'), ('BRUCE', None, '30.47220', '-85.96420'), ('BUNKER', None, '30.38620', '-86.08300'), ('CHOCTAW', None, '30.36630', '-86.10500'), ('CHOCTAW BAY ESTATES', None, '30.37290', '-86.13600'), ('COSSON MILL', None, '30.69850', '-86.18220'), ('DOUGLASS CROSSROADS', None, '30.68860', '-85.97630'), ('EUCHEEANNA', None, '30.64570', '-86.04600'), ('FREEPORT', 1190, '30.50010', '-86.13520'), ('GROSH', None, '30.39490', '-86.28360'), ('INWOOD', 6925, '30.70040', '-85.97410'), ('IONIA', None, '30.70710', '-86.21070'), ('KNOX HILL', None, '30.64150', '-85.95830'), ('MILLER BEND', None, '30.47350', '-85.88510'), ('NEW HOME', None, '30.60940', '-86.21990'), ('OLD BAY VIEW', None, '30.43690', '-86.11010'), ('OWLS HEAD', None, '30.55950', '-86.10390'), ('PLEASANT RIDGE', None, '30.69190', '-86.17400'), ('PORT WASHINGTON', None, '30.36830', '-86.11350'), ('PORTLAND', None, '30.51230', '-86.19580'), ('RED BAY', None, '30.59020', '-85.94350'), ('ROCK HILL', None, '30.60070', '-86.10610'), ('SANDESTIN', None, '30.37990', '-86.33040'), ('SANTA ROSA BEACH', None, '30.37390', '-86.22830'), ('SCONIERS MILL', None, '30.67940', '-86.16390'), ('SHADY GROVE', None, '30.65300', '-85.99580'), ('SINAI', None, '30.66080', '-85.91040'), ('STEELE CHURCH', None, '30.64790', '-86.14750'), ('TURQUOISE BEACH', None, '30.40470', '-86.30820')], 'partOfState': '', 'wfo': 'TAE'}, -'ALZ013': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BELK', 214, '33.64810', '-87.92770'), ('BERRY', 1238, '33.66320', '-87.60770'), ('FAYETTE', 4922, '33.69400', '-87.83140'), ('GLEN ALLEN', 442, '33.88480', '-87.74410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'BMX'}, -'GAZ061': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('SPARTA', 1522, '33.27710', '-82.97160')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'WIZ002': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BARKSDALE', None, '46.62150', '-90.93220'), ('BAYFIELD', 611, '46.81160', '-90.82140'), ('BENOIT', None, '46.50190', '-91.07690'), ('CABLE', None, '46.19890', '-91.30470'), ('DRUMMOND', None, '46.33080', '-91.25780'), ('GRAND VIEW', None, '46.36760', '-91.10830'), ('HERBSTER', None, '46.83250', '-91.26110'), ('INO', None, '46.53090', '-91.17890'), ('IRON RIVER', None, '46.56450', '-91.40830'), ('MASON', 72, '46.43550', '-91.06230'), ('MOQUAH', None, '46.57050', '-91.08330'), ('NAMEKAGON', None, '46.21280', '-91.04550'), ('OULU', None, '46.63300', '-91.53200'), ('PORT WING', None, '46.77480', '-91.38660'), ('RED CLIFF', None, '46.85560', '-90.78800'), ('SAND BAY', None, '46.93480', '-90.89120'), ('WASHBURN', 2280, '46.67390', '-90.89330')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'WAZ004': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CARBONADO', 621, '47.08090', '-122.05340'), ('EATONVILLE', 2012, '46.86840', '-122.26880'), ('ENUMCLAW', 11116, '47.20090', '-121.98910'), ('FALL CITY', 1638, '47.56630', '-121.90210'), ('MOSSYROCK', 486, '46.53010', '-122.48130'), ('NORTH BEND', 4746, '47.49570', '-121.78870'), ('SNOQUALMIE', 1631, '47.52430', '-121.81760'), ('WILKESON', 395, '47.10710', '-122.04700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'MAZ019': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('COHASSET', None, '42.23333', '-70.80000'), ('DUXBURY', 1426, '42.04280', '-70.67340'), ('HINGHAM', 5352, '42.23720', '-70.88770'), ('HULL', 11050, '42.30000', '-70.89800'), ('KINGSTON', 5380, '41.99720', '-70.71450'), ('MARSHFIELD', 4246, '42.09140', '-70.70600'), ('NORWELL', None, '42.16667', '-70.78333'), ('PLYMOUTH', 7658, '41.95810', '-70.67830'), ('SCITUATE', 5069, '42.18910', '-70.73430')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAZ018': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ABINGTON', 14605, '42.11740', '-70.95910'), ('BRIDGEWATER', 6664, '41.98860', '-70.97130'), ('BROCKTON', 94304, '42.08110', '-71.02550'), ('CARVER', None, '41.88333', '-70.76667'), ('EAST BRIDGEWATER', None, '42.03333', '-70.95000'), ('HALIFAX', None, '41.98333', '-70.86667'), ('HANOVER', None, '42.11667', '-70.81667'), ('HANSON', 2044, '42.06440', '-70.85040'), ('LAKEVILLE', None, '41.85000', '-70.95000'), ('MIDDLEBOROUGH', None, '41.89620', '-70.92790'), ('PEMBROKE', None, '42.06667', '-70.80000'), ('PLYMPTON', None, '41.95000', '-70.81667'), ('ROCKLAND', None, '42.13333', '-70.91667'), ('WEST BRIDGEWATER', None, '42.01667', '-71.00000'), ('WHITMAN', None, '42.08333', '-70.93333')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'WAZ005': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ANACORTES', 14557, '48.49240', '-122.62940'), ('BURLINGTON', 6757, '48.46920', '-122.33180'), ('LA CONNER', 761, '48.39270', '-122.49320'), ('MOUNT VERNON', 26232, '48.42170', '-122.31450'), ('SEDRO-WOOLLEY', 8658, '48.50820', '-122.23500'), ('SHELTER BAY', None, '48.38260', '-122.51400'), ('SNEE OOSH', None, '48.42250', '-122.55310'), ('STANWOOD', 3923, '48.24320', '-122.34820'), ('SWINOMISH VILLAGE', None, '48.40840', '-122.50990')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'MAZ015': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ALLSTON', None, '42.35000', '-71.13333'), ('BOSTON', 589141, '42.31667', '-71.06667'), ('BRIGHTON', None, '42.35000', '-71.15000'), ('BROOKLINE', 57107, '42.32310', '-71.14240'), ('CHARLESTOWN', None, '42.38333', '-71.06667'), ('CHELSEA', 35080, '42.39590', '-71.03350'), ('DORCHESTER', None, '42.28333', '-71.08333'), ('EAST BOSTON', None, '42.36667', '-71.03333'), ('FOREST HILLS', None, '42.30000', '-71.11667'), ('HYDE PARK', None, '42.26667', '-71.11667'), ('JAMAICA PLAIN', None, '42.30000', '-71.11667'), ('MATTAPAN', None, '42.26667', '-71.10000'), ('REVERE', 47283, '42.41830', '-70.99250'), ('ROSLINDALE', None, '42.28333', '-71.13333'), ('SOUTH BOSTON', None, '42.33333', '-71.05000'), ('WEST ROXBURY', None, '42.28333', '-71.16667'), ('WINTHROP', 18303, '42.38090', '-70.98000')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ014': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('CAMBRIDGE', 101355, '42.37580', '-71.11870'), ('EVERETT', 38037, '42.40660', '-71.05460'), ('MALDEN', 56340, '42.43040', '-71.05840'), ('MEDFORD', 55765, '42.42240', '-71.10870'), ('MELROSE', 27134, '42.45490', '-71.05910'), ('NEWTON', 83829, '42.33160', '-71.20710'), ('SOMERVILLE', 77478, '42.39030', '-71.10180'), ('WATERTOWN', 32986, '42.36950', '-71.17760')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ017': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ATTLEBOROUGH', None, '41.93070', '-71.29570'), ('BERKLEY', None, '41.85000', '-71.08333'), ('DIGHTON', None, '41.81667', '-71.11667'), ('EASTON', None, '42.03333', '-71.10000'), ('FREETOWN', None, '41.82000', '-71.05000'), ('MANSFIELD', None, '42.02370', '-71.21870'), ('NORTH ATTLEBOROUGH', None, '41.97310', '-71.32520'), ('NORTON', None, '41.96980', '-71.18420'), ('RAYNHAM', None, '41.93180', '-71.04370'), ('REHOBOTH', None, '41.83333', '-71.26667'), ('SEEKONK', None, '41.81667', '-71.33333'), ('TAUNTON', 55976, '41.90300', '-71.09330')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAZ016': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('QUINCY', 88025, '42.26130', '-71.00700')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ011': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AGAWAM', 28144, '42.06667', '-72.61667'), ('BRIMFIELD', None, '42.11667', '-72.20000'), ('CHICOPEE', 54653, '42.17590', '-72.57310'), ('EAST LONGMEADOW', None, '42.06667', '-72.51667'), ('HAMPDEN', None, '42.06667', '-72.41667'), ('HOLLAND', 1444, '42.05280', '-72.15210'), ('HOLYOKE', 39838, '42.21350', '-72.64240'), ('LONGMEADOW', 15633, '42.04780', '-72.57010'), ('LUDLOW', None, '42.16667', '-72.48333'), ('MONSON', None, '42.09710', '-72.31040'), ('PALMER', 3900, '42.16090', '-72.32230'), ('SOUTHWICK', None, '42.05000', '-72.76667'), ('SPRINGFIELD', 152082, '42.11500', '-72.53900'), ('WALES', None, '42.06667', '-72.21667'), ('WEST SPRINGFIELD', 27899, '42.12320', '-72.65310'), ('WESTFIELD', 40072, '42.13890', '-72.75600'), ('WILBRAHAM', 3544, '42.13580', '-72.43630')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ010': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AMHERST', None, '42.37510', '-72.52000'), ('BELCHERTOWN', 2626, '42.27320', '-72.40320'), ('EASTHAMPTON', 15994, '42.26667', '-72.68333'), ('GRANBY', 1344, '42.26270', '-72.52740'), ('HADLEY', None, '42.35000', '-72.58333'), ('HATFIELD', 1298, '42.37190', '-72.60880'), ('NORTHAMPTON', 28978, '42.32710', '-72.67510'), ('PELHAM', None, '42.40000', '-72.40000'), ('SOUTH HADLEY', None, '42.26667', '-72.56666'), ('SOUTHAMPTON', None, '42.23333', '-72.73333'), ('WARE', 6174, '42.25320', '-72.24550')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ013': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AVON', None, '42.11667', '-71.03333'), ('BELLINGHAM', 4497, '42.09410', '-71.47460'), ('BRAINTREE', 33698, '42.20260', '-71.00340'), ('CANTON', None, '42.15000', '-71.13333'), ('DEDHAM', 23464, '42.24660', '-71.17920'), ('DOVER', 2216, '42.24750', '-71.27580'), ('FOXBOROUGH', 5509, '42.06520', '-71.24840'), ('FRANKLIN', 29560, '42.08690', '-71.38730'), ('HOLBROOK', 10785, '42.14780', '-71.00710'), ('MEDFIELD', 6670, '42.18790', '-71.30470'), ('MEDWAY', None, '42.13333', '-71.40000'), ('MILLIS', None, '42.16890', '-71.35570'), ('MILTON', 26062, '42.24330', '-71.08320'), ('NEEDHAM', 28911, '42.28070', '-71.24100'), ('NORFOLK', None, '42.11667', '-71.31667'), ('NORWOOD', 28587, '42.18530', '-71.19530'), ('PLAINVILLE', None, '42.00000', '-71.33333'), ('RANDOLPH', 30963, '42.17520', '-71.05430'), ('SHARON', 5941, '42.11750', '-71.18220'), ('STOUGHTON', None, '42.11667', '-71.10000'), ('WALPOLE', 5867, '42.13780', '-71.24470'), ('WELLESLEY', 26613, '42.30450', '-71.28680'), ('WESTWOOD', None, '42.21667', '-71.21667'), ('WEYMOUTH', 53988, '42.20620', '-70.94510'), ('WRENTHAM', None, '42.06667', '-71.33333')], 'partOfState': '', 'wfo': 'BOX'}, -'MAZ012': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AUBURN', None, '42.20000', '-71.83333'), ('BLACKSTONE', None, '42.01667', '-71.50000'), ('CHARLTON', None, '42.13333', '-71.96667'), ('DOUGLAS', None, '42.05000', '-71.73333'), ('DUDLEY', None, '42.05000', '-71.93333'), ('GRAFTON', None, '42.20000', '-71.68333'), ('HOPEDALE', 4158, '42.12680', '-71.54220'), ('MENDON', None, '42.10000', '-71.55000'), ('MILFORD', 24230, '42.14860', '-71.51550'), ('MILLVILLE', None, '42.03333', '-71.58333'), ('NORTHBOROUGH', 6257, '42.31180', '-71.64890'), ('NORTHBRIDGE', None, '42.15000', '-71.65000'), ('OXFORD', 5899, '42.11570', '-71.87090'), ('SHREWSBURY', None, '42.30000', '-71.71667'), ('SOUTHBOROUGH', None, '42.30000', '-71.51667'), ('SOUTHBRIDGE', 12878, '42.08390', '-72.03480'), ('STURBRIDGE', 2047, '42.09990', '-72.06430'), ('SUTTON', None, '42.15000', '-71.76667'), ('UPTON', None, '42.17370', '-71.61020'), ('UXBRIDGE', None, '42.08333', '-71.60000'), ('WEBSTER', 11600, '42.04610', '-71.87470'), ('WESTBOROUGH', 3983, '42.26590', '-71.61710'), ('WHITINSVILLE', 6340, '42.11240', '-71.67140'), ('WORCESTER', 172648, '42.26960', '-71.80890')], 'partOfState': 'CENTRAL', 'wfo': 'BOX'}, -'SCZ024': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BINGHAM', None, '34.43500', '-79.54330'), ('CARMICHAEL CROSSROADS', None, '34.34030', '-79.27470'), ('DILLON', 6316, '34.41640', '-79.37140'), ('FLOYDALE', None, '34.32360', '-79.33640'), ('FORK', None, '34.28810', '-79.27560'), ('LAKE VIEW', 789, '34.34560', '-79.16580'), ('LATTA', 1410, '34.33690', '-79.43140'), ('LITTLE ROCK', None, '34.47640', '-79.40330'), ('MINTURN', None, '34.51690', '-79.47250'), ('OAK GROVE', 8183, '34.35140', '-79.54280'), ('SMITHBORO', None, '34.27030', '-79.30360'), ('SOUTH OF THE BORDER', None, '34.49720', '-79.30890')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCZ025': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('EDGEFIELD', 4449, '33.78940', '-81.93040'), ('JOHNSTON', 2336, '33.83440', '-81.80510'), ('TRENTON', 226, '33.74090', '-81.84020')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ026': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('MONETTA', 220, '33.84980', '-81.61050'), ('RIDGE SPRING', 823, '33.84520', '-81.66270'), ('SALUDA', 3066, '34.00070', '-81.77150'), ('WARD', 110, '33.85720', '-81.73230')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ027': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BATESBURG', None, '33.90740', '-81.54690'), ('CAYCE', 12150, '33.95580', '-81.06090'), ('CHAPIN', 628, '34.16520', '-81.34800'), ('GASTON', 1304, '33.81580', '-81.10110'), ('GILBERT', 500, '33.92360', '-81.39420'), ('LEESVILLE', None, '33.91810', '-81.51230'), ('LEXINGTON', 9793, '33.98630', '-81.22900'), ('OAK GROVE', 8183, '33.98060', '-81.14340'), ('PELION', 553, '33.78020', '-81.24790'), ('PINERIDGE', None, '33.91090', '-81.09500'), ('RED BANK', 8811, '33.92890', '-81.23330'), ('SEVEN OAKS', 15755, '34.04870', '-81.14650'), ('SOUTH CONGAREE', 2266, '33.90950', '-81.13710'), ('SPRINGDALE', 2877, '33.95980', '-81.11240'), ('SUMMIT', 219, '33.92430', '-81.42330'), ('SWANSEA', 533, '33.73610', '-81.10640'), ('WEST COLUMBIA', 13064, '33.99150', '-81.08140')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ020': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CHAPPELLS', None, '34.18250', '-81.87000'), ('LITTLE MOUNTAIN', 255, '34.19500', '-81.41410'), ('NEWBERRY', 10580, '34.27890', '-81.61190'), ('PEAK', 61, '34.23810', '-81.32910'), ('POMARIA', 177, '34.26640', '-81.41980'), ('PROSPERITY', 1047, '34.21030', '-81.53430'), ('SILVERSTREET', 216, '34.21810', '-81.71480'), ('WHITMIRE', 1512, '34.50340', '-81.61560')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ021': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('RIDGEWAY', 328, '34.30660', '-80.96070'), ('WINNSBORO', 3599, '34.37660', '-81.08970'), ('WINNSBORO MILLS', 2263, '34.35410', '-81.06950')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ022': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BETHUNE', 352, '34.41390', '-80.34910'), ('CAMDEN', 6682, '34.26160', '-80.61170'), ('LUGOFF', 6278, '34.22570', '-80.68060')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ023': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('AUBURN', None, '34.37530', '-79.97610'), ('BIRDSTOWN CROSSROADS', None, '34.46280', '-79.99360'), ('CLYDE', None, '34.38530', '-80.18470'), ('DARLINGTON', 6720, '34.29970', '-79.87640'), ('DOVESVILLE', None, '34.40220', '-79.89530'), ('HARTSVILLE', 7556, '34.37390', '-80.07360'), ('LAMAR', 1015, '34.16860', '-80.06280'), ('MCCOYS CROSSROADS', None, '34.38330', '-80.25000'), ('MECHANICSVILLE', None, '34.34470', '-79.75750'), ('MONT CLARE', None, '34.39670', '-79.82140'), ('NORTH HARTSVILLE', 3136, '34.39950', '-80.07120'), ('OATS', None, '34.25330', '-80.07780'), ('PALMETTO', None, '34.25190', '-79.82750'), ('SOCIETY HILL', 700, '34.51250', '-79.85110')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'GAZ145': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BACONTON', 804, '31.37580', '-84.16160'), ('BRANCHVILLE', None, '31.14980', '-84.31570'), ('CAMILLA', 5669, '31.22970', '-84.21010'), ('COTTON', None, '31.16160', '-84.06660'), ('FLINT', None, '31.31710', '-84.18810'), ('GREENOUGH', None, '31.31520', '-84.10140'), ('GREENWOOD', None, '31.19640', '-84.34020'), ('HINSONTON', None, '31.17830', '-84.02850'), ('HOPEFUL', None, '31.16750', '-84.39270'), ('LESTER', None, '31.36830', '-84.04500'), ('LUKE', None, '31.33580', '-84.00030'), ('MITCHELL CO A/P', None, '31.21290', '-84.23740'), ('PEBBLE CITY', None, '31.24620', '-84.07790'), ('PELHAM', 4126, '31.12650', '-84.15210'), ('SALE CITY', 319, '31.26280', '-84.02230')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'SCZ028': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ARCADIA LAKES', 882, '34.05350', '-80.96210'), ('BLYTHEWOOD', 170, '34.21700', '-80.97580'), ('COLUMBIA', 116278, '34.03920', '-80.88630'), ('DENTSVILLE', 13009, '34.07650', '-80.95610'), ('EASTOVER', 830, '33.87840', '-80.69570'), ('FOREST ACRES', 10558, '34.02630', '-80.97680'), ('IRMO', 11039, '34.09360', '-81.18800'), ('ST. ANDREWS', 21814, '34.04850', '-81.10340'), ('VALENCIA HEIGHTS', None, '33.97640', '-80.98530'), ('WOODFIELD', 9238, '34.05910', '-80.93100')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ029': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BISHOPVILLE', 3670, '34.21990', '-80.24790'), ('LYNCHBURG', 588, '34.05920', '-80.07700')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'GAZ144': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BETHANY', None, '31.30640', '-84.60000'), ('CRESTVIEW', None, '31.33140', '-84.61850'), ('ELMODEL WMA', None, '31.34520', '-84.47690'), ('HAWKINSTOWN', None, '31.26200', '-84.45040'), ('HOGGARD MILL', None, '31.21290', '-84.47460'), ('IVEYS MILL', None, '31.39110', '-84.58620'), ('MILFORD', None, '31.38130', '-84.54390'), ('NEWTON', 851, '31.31640', '-84.33670'), ('PATMOS', None, '31.37470', '-84.56520'), ('RED STORE CROSSROADS', None, '31.40390', '-84.27620')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'WIZ031': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ADAMS BEACH', None, '44.68000', '-88.68000'), ('ADVANCE', None, '44.78000', '-88.33000'), ('ANGELICA', None, '44.66000', '-88.30000'), ('ANIWA', 272, '45.00000', '-89.21000'), ('BELLE PLAINE', None, '44.71000', '-88.66000'), ('BIRNAMWOOD', 795, '44.93000', '-89.19000'), ('BONDUEL', 1416, '44.73000', '-88.44000'), ('BOWLER', 343, '44.86000', '-88.96000'), ('CAROLINE', None, '44.71000', '-88.88000'), ('CECIL', 466, '44.79000', '-88.44000'), ('ELAND', 251, '44.88000', '-89.19000'), ('GREEN VALLEY', None, '44.79000', '-88.26000'), ('GRESHAM', 575, '44.84000', '-88.78000'), ('HOFA PARK', None, '44.63000', '-88.33000'), ('KRAKOW', None, '44.75000', '-88.25000'), ('LEOPOLIS', None, '44.76000', '-88.83000'), ('LYNDHURST', None, '44.83000', '-88.80000'), ('MATTOON', 466, '45.00000', '-89.03000'), ('MORGAN', None, '44.88000', '-88.81000'), ('NAVARINO', None, '44.61000', '-88.48000'), ('PELLA', None, '44.73000', '-88.80000'), ('PULCIFER', None, '44.84000', '-88.34000'), ('RED RIVER', None, '44.81000', '-88.69000'), ('ROSE LAWN', None, '44.59000', '-88.31000'), ('SHAWANO', 8298, '44.78000', '-88.59000'), ('SHAWANO LAKE', None, '44.80000', '-88.51000'), ('SHEPLEY', None, '44.86000', '-89.08000'), ('SPLIT ROCK', None, '44.70000', '-89.01000'), ('THORNTON', None, '44.79000', '-88.68000'), ('TIGERTON', 764, '44.73000', '-89.05000'), ('TILLEDA', None, '44.81000', '-88.90000'), ('WHITCOMB', None, '44.78000', '-89.09000'), ('WITTENBERG', 1177, '44.81000', '-89.15000'), ('ZACHOW', None, '44.73000', '-88.34000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'WAZ003': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ARLINGTON', 11713, '48.17580', '-122.13830'), ('GOLD BAR', 2014, '47.85770', '-121.69570'), ('GRANITE FALLS', 2347, '48.08290', '-121.96710'), ('HAMILTON', 309, '48.52330', '-121.98820'), ('LAKE STEVENS', 6361, '48.01710', '-122.06530'), ('LYMAN', 409, '48.52350', '-122.06360'), ('SULTAN', 3344, '47.86460', '-121.80430')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'KYZ079': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALPINE', None, '36.92220', '-84.51900'), ('BANDY', None, '37.29330', '-84.50360'), ('BENT', None, '37.11190', '-84.44470'), ('BOBTOWN', None, '37.21450', '-84.53820'), ('BRONSTON', None, '36.98590', '-84.61890'), ('BURNSIDE', 637, '36.98730', '-84.60090'), ('CAINS STORE', None, '37.13250', '-84.85060'), ('DABNEY', None, '37.18390', '-84.55000'), ('DYKES', None, '37.06860', '-84.43600'), ('ELIHU', None, '37.04520', '-84.59120'), ('EUBANK', 358, '37.27930', '-84.65490'), ('FAUBUSH', None, '37.06560', '-84.82660'), ('FERGUSON', 881, '37.06670', '-84.59450'), ('GENERAL BURNSIDE STATE PA', None, '36.97450', '-84.60220'), ('GRADE', None, '37.07180', '-84.46150'), ('HOGUE', None, '37.16330', '-84.70970'), ('MAGNUM', None, '37.15220', '-84.83510'), ('MOUNT VICTORY', None, '37.02920', '-84.38640'), ('NANCY', None, '37.07250', '-84.75090'), ('NAOMI', None, '37.00890', '-84.79190'), ('POINTER', None, '37.13280', '-84.76730'), ('PULASKI', None, '37.20890', '-84.63890'), ('PULASKI COUNTY PARK', None, '37.06520', '-84.70750'), ('QUINTON', None, '36.95320', '-84.62670'), ('RUTH', None, '37.07620', '-84.52470'), ('SCIENCE HILL', 634, '37.17600', '-84.63640'), ('SHOPVILLE', None, '37.15860', '-84.48000'), ('SLOANS VALLEY', None, '36.93830', '-84.53630'), ('SOMERSET', 11352, '37.08230', '-84.60980'), ('SOMERSET PULASKI COUNTY A', None, '37.05540', '-84.61360'), ('STAB', None, '37.15140', '-84.75090'), ('TATEVILLE', None, '36.96390', '-84.58180'), ('TRIMBLE', None, '37.01010', '-84.73680'), ('VALLEY OAK', None, '37.18920', '-84.47220'), ('WOODSTOCK', None, '37.26130', '-84.51670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'JKL'}, -'KYZ078': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CREELSBORO', None, '36.88330', '-85.20000'), ('FREEDOM', None, '36.91670', '-85.10000'), ('JABEZ', None, '36.98330', '-84.88330'), ('JAMESTOWN', 1624, '36.99310', '-85.07060'), ('OLGA', None, '36.95000', '-85.15000'), ('RUSSELL SPRINGS', 2399, '37.05040', '-85.07810'), ('SALEM', 769, '37.06670', '-84.98330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'WIZ019': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ANTIGO', 8560, '45.15000', '-89.15000'), ('BRYANT', None, '45.20000', '-89.01000'), ('DEERBROOK', None, '45.23000', '-89.16000'), ('ELCHO', None, '45.43000', '-89.18000'), ('ELMHURST', None, '45.06000', '-89.18000'), ('ELTON', None, '45.15000', '-88.84000'), ('HOLLISTER', None, '45.25000', '-88.80000'), ('KEMPSTER', None, '45.28000', '-89.16000'), ('LANGLADE', None, '45.18000', '-88.73000'), ('LILY', None, '45.29000', '-88.84000'), ('NEVA', None, '45.23000', '-89.11000'), ('PARRISH', None, '45.41000', '-89.40000'), ('PEARSON', None, '45.36000', '-89.01000'), ('PHLOX', None, '45.04000', '-89.01000'), ('PICKEREL', None, '45.36000', '-88.91000'), ('POLAR', None, '45.16000', '-89.00000'), ('POST LAKE', None, '45.43000', '-89.08000'), ('SUMMIT LAKE', None, '45.38000', '-89.19000'), ('WHITE LAKE', 329, '45.16000', '-88.76000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'WIZ018': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BLOOMVILLE', None, '45.29000', '-89.53000'), ('BRADLEY', None, '45.53000', '-89.75000'), ('DOERING', None, '45.23000', '-89.46000'), ('GLEASON', None, '45.30000', '-89.50000'), ('HARRISON', None, '45.48000', '-89.50000'), ('HEAFFORD JUNCTION', None, '45.54000', '-89.71000'), ('IRMA', None, '45.34000', '-89.66000'), ('JEFFRIS', None, '45.50000', '-89.43000'), ('MERRILL', 10146, '45.18000', '-89.68000'), ('PINE RIVER', None, '45.13000', '-89.64000'), ('SPIRIT FALLS', None, '45.45000', '-89.98000'), ('TOMAHAWK', 3770, '45.46000', '-89.73000'), ('TRIPOLI', None, '45.55000', '-90.00000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GRB'}, -'MEZ025': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ARROWSIC', None, '43.84970', '-69.77860'), ('BATH', 9266, '43.91060', '-69.82110'), ('BOWDOINHAM', None, '44.01000', '-69.89890'), ('GEORGETOWN', None, '43.80440', '-69.74720'), ('PHIPPSBURG', None, '43.82060', '-69.81530'), ('RICHMOND', 1864, '44.08720', '-69.79940'), ('TOPSHAM', 6271, '43.92750', '-69.97640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GYX'}, -'KYZ071': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALVATON', None, '36.86670', '-86.35000'), ('BOWLING GREEN', 49296, '36.97370', '-86.44120'), ('BOYCE', None, '36.83330', '-86.36670'), ('CLAYPOOL', None, '36.90000', '-86.25000'), ('HADLEY', None, '37.05000', '-86.61670'), ('HAYS', None, '37.03330', '-86.13330'), ('OAKLAND', 260, '37.04090', '-86.25230'), ('PLANO', None, '36.88330', '-86.41670'), ('PLUM SPRINGS', 447, '37.02140', '-86.38280'), ('RICHARDSVILLE', None, '37.10000', '-86.50000'), ('RICH POND', None, '36.90000', '-86.50000'), ('RIVERSIDE', None, '37.16670', '-86.55000'), ('ROCKFIELD', None, '36.90000', '-86.55000'), ('SMITHS GROVE', 784, '37.05030', '-86.20810'), ('THREE FORKS', None, '36.95000', '-86.20000'), ('WOODBURN', 323, '36.84110', '-86.52930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ070': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ADAIRVILLE', 920, '36.66780', '-86.85400'), ('AUBURN', 1444, '36.86670', '-86.70000'), ('CORINTH', 181, '36.78340', '-86.78330'), ('DOT', None, '36.68330', '-86.95000'), ('EPLEYS STATION', None, '36.93330', '-86.91670'), ('KEYSBURG', None, '36.66000', '-87.01670'), ('LEWISBURG', 903, '36.98660', '-86.95020'), ('OLMSTEAD', None, '36.75000', '-87.01670'), ('RUSSELLVILLE', 7149, '36.83950', '-86.89360'), ('SOUTH UNION', None, '36.89000', '-86.65000'), ('SPA', None, '36.96670', '-87.00000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ073': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FOREST SPRINGS', None, '36.65000', '-86.16670'), ('HALFWAY', None, '36.80000', '-86.30000'), ('HOLLAND', None, '36.70000', '-86.06670'), ('MAYNARD', None, '36.76670', '-86.08330'), ('MT. ARIEAL', None, '36.75000', '-86.38330'), ('SCOTTSVILLE', 4327, '36.74960', '-86.19640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ072': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FRANKLIN', 7996, '36.72800', '-86.57390'), ('GOLD CITY', None, '36.75000', '-86.45000'), ('PRICES MILL', None, '36.68330', '-86.71670'), ('PROVIDENCE', 3611, '36.66670', '-86.66670'), ('RAPIDS', None, '36.66670', '-86.46670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ075': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AKERSVILLE', None, '36.65000', '-85.93330'), ('FLIPPIN', None, '36.71670', '-85.86670'), ('FOUNTAIN RUN', 236, '36.72210', '-85.96050'), ('GAMALIEL', 439, '36.63990', '-85.79340'), ('HESTAND', None, '36.65000', '-85.61670'), ('MT. HERMAN', None, '36.81670', '-85.78330'), ('MUD LICK', None, '36.75000', '-85.76670'), ('ROCKBRIDGE', None, '36.78330', '-85.66670'), ('TOMPKINSVILLE', 2660, '36.70070', '-85.69220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ074': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('AUSTIN', None, '36.81670', '-86.01670'), ('BON AYR', None, '37.05000', '-86.06670'), ('CAVE CITY', 1880, '37.13850', '-85.96430'), ('EIGHTY EIGHT', None, '36.91670', '-85.76670'), ('FINNEY', None, '36.91670', '-86.10000'), ('GLASGOW', 13019, '36.99910', '-85.92150'), ('HAYWOOD', None, '36.95000', '-85.96670'), ('HISEVILLE', 224, '37.10010', '-85.81510'), ('LECTA', None, '37.01670', '-85.85000'), ('LUCAS', None, '36.88330', '-86.03330'), ('PARK CITY', 517, '37.09390', '-86.04950'), ('ROSEVILLE', None, '36.88330', '-85.91670'), ('TEMPLE HILL', None, '36.88330', '-85.83330'), ('TRACY', None, '36.80000', '-85.96670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ077': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BREEDING', None, '36.95000', '-85.41670'), ('CANE VALLEY', None, '37.18330', '-85.31670'), ('COBURG', None, '37.20000', '-85.30000'), ('COLUMBIA', 4014, '37.09800', '-85.30810'), ('CROCUS', None, '36.98330', '-85.23000'), ('ELLA', None, '37.15000', '-85.13330'), ('GLENS FORK', None, '37.01670', '-85.25000'), ('GRADYVILLE', None, '37.08330', '-85.41670'), ('KNIFELY', None, '37.23330', '-85.18330'), ('MONTPELIER', None, '37.01670', '-85.20000'), ('PELLYTON', None, '37.21670', '-85.08330'), ('VESTER', None, '37.13330', '-85.21670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'KYZ076': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEAUMONT', None, '36.86670', '-85.63330'), ('CENTER', None, '37.13340', '-85.68330'), ('EDMONTON', 1586, '36.98290', '-85.62040'), ('GASCON', None, '37.00000', '-85.56670'), ('KNOB LICK', None, '37.08330', '-85.68330'), ('SUBTLE', None, '36.91670', '-85.48330'), ('SULPHUR WELL', None, '37.10000', '-85.61670'), ('SUMMER SHADE', None, '36.88330', '-85.70000'), ('WISDOM', None, '37.00000', '-85.70000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'WAZ008': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ARTONDALE', 8630, '47.31380', '-122.63450'), ('BONNEY LAKE', 9687, '47.18730', '-122.16880'), ('BUCKLEY', 4145, '47.16260', '-122.01870'), ('DUPONT', 2452, '47.10680', '-122.65310'), ('EDGEWOOD-NORTH HILL', None, '47.23210', '-122.28050'), ('ELK PLAIN', 15697, '47.05330', '-122.37800'), ('FIFE', 4784, '47.24000', '-122.36140'), ('FIRCREST', 5868, '47.23110', '-122.51300'), ('FORT LEWIS', 19089, '47.10610', '-122.58190'), ('FOX ISLAND', 2803, '47.25180', '-122.62780'), ('FREDERICKSON', 5758, '47.08650', '-122.36190'), ('GIG HARBOR', 6465, '47.32890', '-122.58790'), ('LAKEWOOD', 58211, '47.16190', '-122.53020'), ('MCCHORD AFB', 4096, '47.13380', '-122.49650'), ('MIDLAND', 7414, '47.17230', '-122.40890'), ('MILTON', 5795, '47.25190', '-122.31590'), ('NORTH PUYALLUP', None, '47.21190', '-122.31150'), ('ORTING', 3760, '47.08880', '-122.20540'), ('PARKLAND', 24053, '47.13790', '-122.42930'), ('PRAIRIE RIDGE', 11688, '47.13790', '-122.14740'), ('PUYALLUP', 33011, '47.18190', '-122.28420'), ('ROY', 260, '47.00120', '-122.54430'), ('RUSTON', 738, '47.29780', '-122.50930'), ('SOUTH HILL', 31623, '47.14120', '-122.26900'), ('SOUTH PRAIRIE', 382, '47.13850', '-122.09180'), ('SPANAWAY', 21588, '47.10620', '-122.42650'), ('STEILACOOM', 6049, '47.16960', '-122.59240'), ('SUMMIT', 8041, '47.17210', '-122.35800'), ('SUMNER', 8504, '47.21050', '-122.23600'), ('TACOMA', 193556, '47.25200', '-122.45980'), ('UNIVERSITY PLACE', 29933, '47.21910', '-122.54240'), ('WALLER', 9200, '47.20090', '-122.36820')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SEW'}, -'WAZ009': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('AULT FIELD', 2064, '48.33710', '-122.67620'), ('COUPEVILLE', 1723, '48.21730', '-122.67580'), ('FREELAND', 1313, '48.01310', '-122.53770'), ('LANGLEY', 959, '48.03710', '-122.40720'), ('PORT TOWNSEND', 8334, '48.12200', '-122.77920')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'OKZ071': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('EUFAULA', 2639, '35.28720', '-95.58220'), ('CHECOTAH', 3481, '35.47000', '-95.52280'), ('HANNA', 133, '35.20500', '-95.89000'), ('VERNON', None, '35.21560', '-95.92560'), ('RAIFORD', None, '35.26780', '-95.78670'), ('VIVIAN', None, '35.28970', '-95.71610'), ('STIDHAM', 23, '35.36860', '-95.69940'), ('ONAPA', None, '35.40580', '-95.55310'), ('PIERCE', None, '35.43470', '-95.71610'), ('HITCHITA', 113, '35.51970', '-95.75110'), ('RENTIESVILLE', 102, '35.52140', '-95.49470'), ('COUNCIL HILL', 129, '35.55560', '-95.65110')], 'partOfState': 'SOUTHEAST', 'wfo': 'TSA'}, -'TNZ092': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CRUMP', 1521, '35.23980', '-88.32180'), ('MORRIS CHAPEL', None, '35.31670', '-88.35000'), ('OLIVE HILL', None, '35.26670', '-88.03330'), ('PICKWICK DAM', None, '35.05000', '-88.25000'), ('SALTILLO', 342, '35.37780', '-88.21050'), ('SAVANNAH', 6917, '35.22290', '-88.23720'), ('SHILOH', None, '35.11670', '-88.36670'), ('WALNUT GROVE', 677, '35.05000', '-88.05000')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'MIZ041': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BEAVERTON', 1106, '43.88170', '-84.48760'), ('GLADWIN', 3001, '43.98390', '-84.49160'), ('HOCKADAY', None, '44.08330', '-84.41660'), ('RHODES', None, '43.90000', '-84.18340'), ('SKEELS', None, '44.08340', '-84.58310'), ('WINEGARS', None, '43.93340', '-84.36670'), ('WOODEN SHOE VILLAGE', None, '43.98330', '-84.35000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'FLZ043': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BUSHNELL', 2050, '28.66440', '-82.11440'), ('CENTER HILL', 910, '28.64740', '-81.99810'), ('COLEMAN', 647, '28.80110', '-82.06930'), ('LAKE PANASOFFKEE', 3413, '28.79020', '-82.13010'), ('NOBLETON', 160, '28.64500', '-82.26000'), ('THE GREEN SWAMP', None, '28.38000', '-82.00000'), ('WEBSTER', 805, '28.61180', '-82.05140'), ('WILDWOOD', 3924, '28.85430', '-82.04080')], 'partOfState': 'CENTRAL', 'wfo': 'TBW'}, -'CTZ009': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('BRIDGEPORT', 139529, '41.18630', '-73.19620'), ('DARIEN', 19607, '41.05110', '-73.47970'), ('FAIRFIELD', None, '41.13000', '-73.28000'), ('NEW CANAAN', None, '41.14000', '-73.49000'), ('NORWALK', 82951, '41.09390', '-73.42020'), ('STAMFORD', 117083, '41.02000', '-73.56000'), ('STRATFORD', 49976, '41.20430', '-73.13020'), ('WESTPORT', 25749, '41.12320', '-73.34760')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'CTZ008': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('COLCHESTER', None, '41.57400', '-72.33200'), ('FRANKLIN', None, '41.60000', '-72.14000'), ('GALES FERRY', None, '41.46000', '-72.09000'), ('JEWETT CITY', 3053, '41.60590', '-71.98170'), ('LEBANON', None, '41.66000', '-72.24000'), ('LEDYARD CENTER', None, '41.47000', '-72.03000'), ('MONTVILLE', None, '41.44360', '-72.12440'), ('NORTH LYME', None, '41.41000', '-72.34000'), ('NORTH STONINGTON', None, '41.44000', '-71.89000'), ('NORWICH', 36117, '41.55020', '-72.08790'), ('PRESTON', None, '41.55000', '-71.99000'), ('SALEM', None, '41.48000', '-72.27000'), ('VOLUNTOWN', None, '41.59000', '-71.85000')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'CTZ001': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('CANAAN', 1288, '42.03160', '-73.33140'), ('CORNWALL BRIDGE', None, '41.81800', '-73.37080'), ('FALLS VILLAGE', None, '41.95450', '-73.36050'), ('KENT', None, '41.72420', '-73.47850'), ('NEW HARTFORD', None, '41.87970', '-72.97390'), ('NORFOLK', None, '41.99270', '-73.19880'), ('SHARON', None, '41.87820', '-73.47430'), ('TORRINGTON', 35202, '41.83500', '-73.12940'), ('WINSTED', 7321, '41.92700', '-73.06690')], 'partOfState': 'NORTHERN', 'wfo': 'ALY'}, -'CTZ003': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('ANDOVER', None, '41.73333', '-72.36667'), ('BOLTON', None, '41.76667', '-72.43333'), ('COLUMBIA', None, '41.70000', '-72.30000'), ('COVENTRY', None, '41.78333', '-72.30000'), ('ELLINGTON', None, '41.90000', '-72.46667'), ('HEBRON', None, '41.65000', '-72.36667'), ('MANSFIELD', None, '41.83333', '-72.25000'), ('ROCKVILLE', 7708, '41.86667', '-72.46667'), ('SOMERS', None, '41.98333', '-72.45000'), ('STAFFORD', None, '41.98333', '-72.28333'), ('STAFFORD SPRINGS', None, '41.95410', '-72.30950'), ('STORRS', 10996, '41.80610', '-72.25670'), ('TOLLAND', None, '41.98333', '-72.15000'), ('UNION', None, '41.98333', '-72.15000'), ('VERNON', None, '41.81667', '-72.48333'), ('WILLINGTON', None, '41.86667', '-72.27000')], 'partOfState': 'NORTHERN', 'wfo': 'BOX'}, -'CTZ002': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('AVON', None, '41.80000', '-72.83333'), ('BERLIN', None, '41.61667', '-72.75000'), ('BLOOMFIELD', None, '41.81667', '-72.73333'), ('BRISTOL', 60062, '41.68120', '-72.94100'), ('BURLINGTON', None, '41.76667', '-72.96667'), ('CANTON', None, '41.81667', '-72.90000'), ('EAST GRANBY', None, '41.93333', '-72.71667'), ('EAST HARTFORD', 49575, '41.76140', '-72.61590'), ('EAST WINDSOR', None, '41.85000', '-72.60000'), ('ENFIELD', None, '41.96667', '-72.56667'), ('FARMINGTON', None, '41.71667', '-72.83333'), ('GLASTONBURY', None, '41.70090', '-72.60000'), ('GRANBY', None, '41.95000', '-72.78333'), ('HARTFORD', 121578, '41.76570', '-72.68390'), ('MANCHESTER', None, '41.78333', '-72.51667'), ('MARLBOROUGH', None, '41.63333', '-72.45000'), ('NEW BRITAIN', 71538, '41.67510', '-72.78780'), ('NEWINGTON', 29306, '41.68730', '-72.73070'), ('PLAINVILLE', None, '41.66667', '-72.90000'), ('ROCKY HILL', None, '41.66667', '-72.63333'), ('SIMSBURY', None, '41.88300', '-72.81140'), ('SOUTH WINDSOR', None, '41.81667', '-72.61667'), ('SOUTHINGTON', None, '41.60000', '-72.88333'), ('SUFFIELD', None, '41.98120', '-72.65030'), ('WEST HARTFORD', 63589, '41.76770', '-72.75440'), ('WETHERSFIELD', 26271, '41.70110', '-72.67010'), ('WINDSOR', None, '41.85000', '-72.65000'), ('WINDSOR LOCKS', 12043, '41.92600', '-72.65800')], 'partOfState': 'NORTHERN', 'wfo': 'BOX'}, -'CTZ005': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('BETHEL', 9137, '41.37150', '-73.41160'), ('DANBURY', 74848, '41.40210', '-73.47150'), ('EASTON', None, '41.24000', '-73.31000'), ('GEORGETOWN', 1650, '41.26000', '-73.43000'), ('MONROE', None, '41.36000', '-73.20000'), ('NEWTOWN', 1843, '41.41320', '-73.31600'), ('RIDGEFIELD', 7212, '41.27380', '-73.49990'), ('SHELTON', 38101, '41.32000', '-73.10000'), ('SHERMAN', None, '41.58000', '-73.50000'), ('TRUMBULL', 34243, '41.25820', '-73.20750'), ('WILTON', None, '41.18000', '-73.42000')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'CTZ004': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('ASHFORD', None, '41.86667', '-72.11667'), ('BROOKLYN', None, '41.78333', '-71.95000'), ('CANTERBURY', None, '41.70000', '-71.96667'), ('CHAPLIN', None, '41.80000', '-72.11667'), ('DANIELSON', 4265, '41.80000', '-71.88333'), ('EASTFORD', None, '41.90000', '-72.08333'), ('HAMPTON', None, '41.78333', '-72.05000'), ('KILLINGLY', None, '41.83333', '-71.86667'), ('PLAINFIELD', None, '41.67650', '-71.92480'), ('POMFRET', None, '41.90000', '-71.96667'), ('PUTNAM', None, '41.91670', '-71.90000'), ('SCOTLAND', None, '41.70000', '-72.08333'), ('STERLING', None, '41.70000', '-71.83333'), ('THOMPSON', None, '41.95000', '-71.86667'), ('WILLIMANTIC', 15823, '41.71560', '-72.21800'), ('WINDHAM', None, '41.70000', '-72.16667'), ('WOODSTOCK', None, '41.95000', '-71.98333')], 'partOfState': 'NORTHERN', 'wfo': 'BOX'}, -'CTZ007': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('CHESTER', None, '41.40050', '-72.45380'), ('CROMWELL', None, '41.60000', '-72.63000'), ('DURHAM', 2773, '41.47390', '-72.68190'), ('EAST HADDAM', None, '41.45500', '-72.46000'), ('EAST HAMPTON', 2254, '41.57290', '-72.49600'), ('HIGGANUM', 1671, '41.49120', '-72.55800'), ('KILLINGWORTH', None, '41.35000', '-72.56000'), ('MIDDLETOWN', 43167, '41.54840', '-72.65430'), ('MILLINGTON', None, '41.48000', '-72.35000'), ('MOODUS', 1263, '41.50400', '-72.45010'), ('PORTLAND', 5534, '41.56000', '-72.63000')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'CTZ006': {'fullStateName': 'CONNECTICUT', 'state': 'CT', 'cities': [('ANSONIA', 18554, '41.34340', '-73.06900'), ('BEACON FALLS', None, '41.44000', '-73.04000'), ('CHESHIRE', None, '41.50420', '-72.90010'), ('DERBY', 12391, '41.32670', '-73.08280'), ('HAMDEN', None, '41.37000', '-72.90000'), ('MERIDEN', 58244, '41.53670', '-72.79520'), ('NAUGATUCK', 30989, '41.48960', '-73.05200'), ('NORTH HAVEN', 23035, '41.38090', '-72.85640'), ('OXFORD', None, '41.42000', '-73.11000'), ('SEYMOUR', None, '41.40000', '-73.06000'), ('SOUTHBURY', None, '41.48560', '-73.22430'), ('WALLINGFORD', None, '41.44980', '-72.81940'), ('WATERBURY', 107271, '41.55840', '-73.03740'), ('WOLCOTT', None, '41.61000', '-72.98000')], 'partOfState': 'SOUTHERN', 'wfo': 'OKX'}, -'FLZ045': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALOMA', None, '28.60070', '-81.30690'), ('ANIMAL KINGDOM', None, '28.38830', '-81.61740'), ('APOPKA', 26642, '28.68670', '-81.51330'), ('AZALEA PARK', 11073, '28.54540', '-81.29520'), ('BAY HILL', 5177, '28.46760', '-81.51630'), ('BELLE ISLE', 5531, '28.47010', '-81.35030'), ('BITHLO', 4626, '28.56970', '-81.10960'), ('CHRISTMAS', 1162, '28.53880', '-81.02270'), ('CHRISTMAS PARK', None, '28.56250', '-81.02870'), ('CLARCONA', None, '28.61260', '-81.49890'), ('CONWAY', 14394, '28.49520', '-81.33230'), ('CROWN POINT', None, '28.58860', '-81.56560'), ('DOCTOR PHILLIPS', 9548, '28.44920', '-81.49250'), ('EATONVILLE', 2432, '28.61690', '-81.39090'), ('EDGEWOOD', 1901, '28.48560', '-81.37210'), ('EPCOT', None, '28.37470', '-81.54910'), ('FAIRVIEW SHORES', 13898, '28.60020', '-81.39090'), ('FAIRVILLA', None, '28.57870', '-81.40900'), ('KILLARNEY', None, '28.54690', '-81.65060'), ('LAKE APOPKA', None, '28.63600', '-81.63690'), ('LAKE BUENA VISTA', 16, '28.38720', '-81.52570'), ('LAKE MARY JANE', None, '28.37590', '-81.18000'), ('LOCKHART', 12944, '28.62610', '-81.43660'), ('LOCKWOOD', None, '28.56190', '-81.14440'), ('MAGIC KINGDOM', None, '28.41050', '-81.57610'), ('MAITLAND', 12019, '28.62790', '-81.36710'), ('MGM STUDIOS', None, '28.37320', '-81.57590'), ('OAK RIDGE', 22349, '28.47090', '-81.42460'), ('OAKLAND', 936, '28.55610', '-81.62890'), ('OCOEE', 24391, '28.57220', '-81.53260'), ('ORLANDO', 185951, '28.50470', '-81.37420'), ('ORLANDO INTERNATIONAL AIR', None, '28.42930', '-81.31590'), ('ORLOVISTA', 6047, '28.54400', '-81.46300'), ('PIEDMONT', None, '28.63790', '-81.45820'), ('PINE CASTLE', 8803, '28.46560', '-81.37300'), ('PINE HILLS', 41764, '28.58000', '-81.46020'), ('PLEASURE ISLAND', None, '28.37460', '-81.51910'), ('PLYMOUTH', None, '28.69190', '-81.54760'), ('ROCK SPRINGS', None, '28.75790', '-81.50080'), ('SEA WORLD', None, '28.41260', '-81.46180'), ('TANGELO PARK', 2430, '28.45570', '-81.44740'), ('TANGERINE', 826, '28.76480', '-81.62070'), ('UNION PARK', 10191, '28.56380', '-81.23600'), ('UNIVERSAL STUDIOS', None, '28.48160', '-81.46800'), ('UNIVERSITY PARK', 26538, '28.57230', '-81.17390'), ('VINELAND', None, '28.39510', '-81.50330'), ('WEKIWA SPRINGS STATE PARK', None, '28.72170', '-81.46480'), ('WET N WILD WATER PARK', None, '28.45830', '-81.46730'), ('WINDERMERE', 1897, '28.49510', '-81.53350'), ('WINTER GARDEN', 14351, '28.56230', '-81.58330'), ('WINTER PARK', 24090, '28.59590', '-81.34370'), ('ZELLWOOD', 2540, '28.73080', '-81.60140')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'NDZ006': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AMOURDALE', None, '48.87140', '-99.37250'), ('ARNDT', None, '48.63000', '-99.23500'), ('BISBEE', 167, '48.62660', '-99.37830'), ('CANDO', 1342, '48.48760', '-99.20260'), ('CONSIDINE', None, '48.56190', '-99.28280'), ('EGELAND', 49, '48.62800', '-99.09760'), ('HANSBORO', 8, '48.95220', '-99.38080'), ('MAZA', 5, '48.39490', '-99.19950'), ('NEWVILLE', None, '48.55860', '-98.98690'), ('PERTH', 13, '48.71460', '-99.45720'), ('ROCKLAKE', 194, '48.79070', '-99.24500'), ('SARLES', 25, '48.94520', '-98.99650')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'WIZ013': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AMBERG', None, '45.50000', '-88.00000'), ('ATHELSTANE', None, '45.43000', '-88.09000'), ('BEECHER', None, '45.57000', '-87.98000'), ('CALDRON FALLS RESERVOIR', None, '45.38000', '-88.26000'), ('DUNBAR', None, '45.65000', '-88.18000'), ('GOODMAN', None, '45.63000', '-88.34000'), ('NIAGARA', 1880, '45.76000', '-88.00000'), ('PEMBINE', None, '45.63000', '-88.00000'), ('WAUSAUKEE', 572, '45.36000', '-87.94000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'NDZ007': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALSEN', 68, '48.62950', '-98.70540'), ('CALIO', 24, '48.62360', '-98.93790'), ('CALVIN', 26, '48.85120', '-98.93700'), ('CLYDE', None, '48.77000', '-98.89860'), ('DRESDEN', None, '48.82750', '-98.48080'), ('HANNAH', 20, '48.97310', '-98.69020'), ('LANGDON', 2101, '48.76260', '-98.37290'), ('LOMA', 21, '48.63790', '-98.52500'), ('MAIDA', None, '48.99860', '-98.36440'), ('MILTON', 85, '48.62720', '-98.04370'), ('MOUNT CARMEL', None, '48.93500', '-98.38640'), ('MUNICH', 268, '48.66910', '-98.83220'), ('NEKOMA', 51, '48.57610', '-98.37610'), ('OLGA', None, '48.79830', '-98.03750'), ('OSNABROCK', 174, '48.67020', '-98.14890'), ('UNION', None, '48.55780', '-97.94860'), ('VANG', None, '48.90580', '-98.12440'), ('WALES', 30, '48.89410', '-98.60140')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'WIZ012': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('AURORA', None, '45.78000', '-88.09000'), ('COMMONWEALTH', None, '45.91000', '-88.23000'), ('FENCE', None, '45.75000', '-88.43000'), ('FLORENCE', None, '45.93000', '-88.25000'), ('LONG LAKE', None, '45.83000', '-88.66000'), ('SPREAD EAGLE', None, '45.88000', '-88.13000'), ('TIPLER', None, '45.91000', '-88.63000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'COZ020': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BEDROCK', None, '38.32000', '-108.88000'), ('NATURITA', 635, '38.21900', '-108.56800'), ('NORWOOD', 438, '38.13030', '-108.29160'), ('NUCLA', 734, '38.26680', '-108.54960'), ('PARADOX', None, '38.37000', '-108.95000'), ('REDVALE', None, '38.18000', '-108.42000'), ('SLICK ROCK', None, '38.08300', '-108.89200'), ('URAVAN', None, '38.37000', '-108.73000'), ('VANCORUM', None, '38.23000', '-108.60000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COZ021': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARRIOLA', None, '37.43000', '-108.65000'), ('CAHONE', None, '37.65000', '-108.82000'), ('CORTEZ', 7977, '37.35150', '-108.57730'), ('DOLORES', 857, '37.47450', '-108.49760'), ('DOVE CREEK', 698, '37.76600', '-108.90520'), ('EGNAR', None, '37.92000', '-108.93000'), ('LEBANON', None, '37.45000', '-108.60000'), ('LEWIS', None, '37.50000', '-108.67000'), ('MANCOS', 1119, '37.34650', '-108.29340'), ('MESA VERDE NATL PARK', None, '37.15000', '-108.48000'), ('TOWAOC', 1097, '37.20990', '-108.72720'), ('YELLOW JACKET', None, '37.53000', '-108.72000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COZ022': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALLISON', None, '37.02000', '-107.50000'), ('BAYFIELD', 1549, '37.23420', '-107.59490'), ('BONDAD', None, '37.08000', '-107.88000'), ('BREEN', None, '37.18000', '-108.08000'), ('DURANGO', 13922, '37.28600', '-107.86940'), ('FALFA', None, '37.20000', '-107.78000'), ('HERMOSA', None, '37.42000', '-107.85000'), ('IGNACIO', 669, '37.11680', '-107.63440'), ('KLINE', None, '37.13000', '-108.12000'), ('MARVEL', None, '37.12000', '-108.13000'), ('OXFORD', None, '37.17000', '-107.72000'), ('REDMESA', None, '37.10000', '-108.17000'), ('TIFFANY', None, '37.03000', '-107.53000'), ('TRIMBLE', None, '37.40000', '-107.85000')], 'partOfState': 'SOUTHWEST', 'wfo': 'GJT'}, -'COZ023': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ARBOLES', 232, '37.02000', '-107.40000'), ('GATO', None, '37.03000', '-107.18000'), ('JUANITA', None, '37.03000', '-107.13000'), ('LONETREE', None, '37.17000', '-107.17000'), ('PAGOSA JUNCTION', None, '37.03000', '-107.18000'), ('PAGOSA SPRINGS', 1591, '37.27010', '-107.01820')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'GJT'}, -'MSZ013': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ABBEVILLE', 423, '34.50270', '-89.50220'), ('BURGESS', None, '34.35000', '-89.66670'), ('CAMBRIDGE', None, '34.45000', '-89.36670'), ('DENMARK', None, '34.31670', '-89.35000'), ('HARMONTOWN', None, '34.53330', '-89.65000'), ('OXFORD', 11756, '34.35980', '-89.52620'), ('PARIS', None, '34.18330', '-89.46770'), ('SPRINGDALE', None, '34.23330', '-89.61670'), ('TAYLOR', 289, '34.27210', '-89.58240'), ('TULA', None, '34.23330', '-89.36670')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ012': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BATESVILLE', 7113, '34.31950', '-89.93680'), ('COMO', 1310, '34.51490', '-89.94000'), ('COURTLAND', 460, '34.24110', '-89.94250'), ('CRENSHAW', 916, '34.50390', '-90.19470'), ('CURTIS STATION', None, '34.33330', '-90.15000'), ('ENDVILLE', None, '34.31670', '-89.88330'), ('GLENVILLE', None, '34.53330', '-89.75000'), ('PLEASANT GROVE', None, '34.43330', '-90.10000'), ('POPE', 241, '34.21370', '-89.94760'), ('SARDIS', 2038, '34.43470', '-89.91270')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ011': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BELEN', None, '34.26670', '-90.35000'), ('CROWDER', 766, '34.17300', '-90.13760'), ('DARLING', None, '34.35000', '-90.26670'), ('DENTON', None, '34.15000', '-90.31670'), ('FALCON', 317, '34.39260', '-90.25550'), ('LAMBERT', 1967, '34.20200', '-90.28300'), ('MARKS', 1551, '34.25380', '-90.27290'), ('SLEDGE', 529, '34.43250', '-90.22130'), ('VANCE', None, '34.08330', '-90.30000')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ010': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BOBO', None, '34.13330', '-90.68330'), ('CLARKSDALE', 20645, '34.20040', '-90.57670'), ('COAHOMA', 325, '34.36590', '-90.52220'), ('DUBLIN', None, '34.08330', '-90.50000'), ('FRIARS POINT', 1480, '34.36730', '-90.63810'), ('JONESTOWN', 1701, '34.32120', '-90.45430'), ('KINGS', None, '34.30000', '-90.60000'), ('LULA', 370, '34.45480', '-90.47760'), ('LYON', 418, '34.21710', '-90.54220'), ('SHERARD', None, '34.21670', '-90.71670')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'MSZ017': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('EVERGREEN', None, '34.16670', '-88.51670'), ('FAIRVIEW', None, '34.36670', '-88.31670'), ('FULTON', 3882, '34.26230', '-88.40170'), ('MANTACHIE', 1107, '34.32400', '-88.49300'), ('MEW SALEM', None, '34.15000', '-88.35000'), ('SANDY SPRINGS', None, '34.43330', '-88.38330'), ('TREMONT', 390, '34.23350', '-88.24900')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSZ016': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BALDWYN', 3321, '34.50300', '-88.63370'), ('BLAIR', None, '34.45000', '-88.73330'), ('GUNTOWN', 1183, '34.44490', '-88.66300'), ('PLANTERSVILLE', 1144, '34.21150', '-88.66580'), ('PRATTS FRIENDSHIP', None, '34.45000', '-88.58330'), ('SALTILLO', 3393, '34.38330', '-88.68910'), ('SHANNON', 1657, '34.11370', '-88.69420'), ('TUPELO', 34211, '34.26350', '-88.73200'), ('VERONA', 3334, '34.19020', '-88.71910')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSZ015': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ALGOMA', 508, '34.17880', '-89.03600'), ('ECRU', 947, '34.35620', '-89.02540'), ('FURRS', None, '34.23330', '-88.86670'), ('PONTOTOC', 5253, '34.24850', '-89.00670'), ('RANDOLPH', None, '34.18330', '-89.16670'), ('SHERMAN', 548, '34.35940', '-88.83870'), ('THAXTON', 513, '34.30820', '-89.17490'), ('TOCCOPOLA', 189, '34.25570', '-89.23440'), ('TROY', None, '34.16670', '-88.90000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSZ014': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('BLUE SPRINGS', 144, '34.40290', '-88.87280'), ('ETTA', None, '34.46670', '-89.20000'), ('KEOWNVILLE', None, '34.55000', '-88.91670'), ('MYRTLE', 407, '34.55930', '-89.11580'), ('NEW ALBANY', 7607, '34.49060', '-89.02070'), ('NEW HARMONY', None, '34.40000', '-88.91670'), ('PINEDALE', None, '34.41670', '-89.20000')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'MSZ019': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('DODDSVILLE', 108, '33.65850', '-90.52440'), ('DREW', 2434, '33.80980', '-90.53040'), ('INDIANOLA', 12066, '33.44860', '-90.64480'), ('INVERNESS', 1153, '33.35400', '-90.59070'), ('MOORHEAD', 2573, '33.44920', '-90.50680'), ('RULEVILLE', 3234, '33.72500', '-90.55010'), ('SUNFLOWER', 696, '33.54660', '-90.53840')], 'partOfState': 'NORTHWEST', 'wfo': 'JAN'}, -'MSZ018': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('ALLIGATOR', 220, '34.08980', '-90.72020'), ('BENOIT', 611, '33.65150', '-91.00850'), ('BEULAH', 473, '33.79040', '-90.98040'), ('BOYLE', 720, '33.70380', '-90.72600'), ('CLEVELAND', 13841, '33.74320', '-90.72810'), ('DUNCAN', 578, '34.04350', '-90.74460'), ('GUNNISON', 633, '33.94420', '-90.94680'), ('MERIGOLD', 664, '33.83910', '-90.72690'), ('MOUND BAYOU', 2102, '33.88050', '-90.72790'), ('PACE', 364, '33.79210', '-90.85910'), ('RENOVA', 623, '33.78090', '-90.72260'), ('ROSEDALE', 2414, '33.85350', '-91.03220'), ('SHAW', 2312, '33.60030', '-90.77150'), ('SHELBY', 2926, '33.95160', '-90.76570'), ('WINSTONVILLE', 319, '33.91140', '-90.75270')], 'partOfState': 'NORTHWEST', 'wfo': 'JAN'}, -'VAZ095': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CHURCHLAND', None, '36.86170', '-76.39600'), ('CRADOCK', None, '36.79560', '-76.32140'), ('DOWNTOWN NORFOLK', None, '36.85500', '-76.28350'), ('DOWNTOWN PORTSMOUTH', None, '36.83820', '-76.30260'), ('GHENT', None, '36.86770', '-76.29810'), ('NORFOLK INTERNATIONAL AIR', None, '36.89670', '-76.19790'), ('NORFOLK NAS', None, '36.93560', '-76.29970'), ('NORVIEW', None, '36.88830', '-76.24580'), ('OCEAN VIEW', None, '36.95040', '-76.24800'), ('WARDS CORNER', None, '36.91870', '-76.27100'), ('WILLOUGHBY SPIT', None, '36.96670', '-76.28600')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'ARZ030': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BLUE MOUNTAIN', 132, '35.13170', '-93.71530'), ('BOONEVILLE', 4117, '35.13940', '-93.91850'), ('CAULKSVILLE', 233, '35.30170', '-93.86850'), ('MAGAZINE', 915, '35.15270', '-93.80630'), ('MORRISON BLUFF', 74, '35.38220', '-93.52740'), ('PARIS', 3707, '35.28890', '-93.72460'), ('RATCLIFF', 191, '35.30800', '-93.88820'), ('SCRANTON', 222, '35.36030', '-93.53850'), ('SUBIACO', 439, '35.29750', '-93.63920')], 'partOfState': '', 'wfo': 'LZK'}, -'ARZ031': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('MENIFEE', 311, '35.14830', '-92.55480'), ('MORRILTON', 6550, '35.15620', '-92.74090'), ('OPPELO', 725, '35.10100', '-92.77510'), ('PLUMERVILLE', 854, '35.16060', '-92.64120')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARZ032': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CONWAY', 43167, '35.08880', '-92.45310'), ('DAMASCUS', 306, '35.36460', '-92.40580'), ('ENOLA', 188, '35.20020', '-92.20110'), ('GREENBRIER', 3042, '35.22980', '-92.38350'), ('GUY', 202, '35.32450', '-92.33480'), ('MAYFLOWER', 1631, '34.97180', '-92.41900'), ('MOUNT VERNON', 144, '35.22400', '-92.13010'), ('VILONIA', 2106, '35.08400', '-92.21120'), ('WOOSTER', 516, '35.19890', '-92.44830')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARZ033': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BALD KNOB', 3210, '35.30820', '-91.57250'), ('BEEBE', 4930, '35.07230', '-91.89390'), ('BRADFORD', 800, '35.42310', '-91.45660'), ('GARNER', 284, '35.13950', '-91.78010'), ('GEORGETOWN', 126, '35.12630', '-91.45320'), ('GRIFFITHVILLE', 262, '35.12480', '-91.64560'), ('HIGGINSON', 378, '35.19580', '-91.71150'), ('JUDSONIA', 1982, '35.27590', '-91.64020'), ('KENSETT', 1791, '35.23550', '-91.67010'), ('LETONA', 201, '35.36310', '-91.83020'), ('MCRAE', 661, '35.11420', '-91.82260'), ('PANGBURN', 654, '35.42620', '-91.83870'), ('ROSE BUD', 429, '35.33090', '-92.07870'), ('RUSSELL', 228, '35.36210', '-91.51040'), ('SEARCY', 18928, '35.24290', '-91.73080'), ('WEST POINT', 164, '35.20430', '-91.61030')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARZ034': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AUGUSTA', 2665, '35.28550', '-91.36050'), ('COTTON PLANT', 960, '35.00690', '-91.25150'), ('HUNTER', 152, '35.05340', '-91.12270'), ('MCCRORY', 1850, '35.25690', '-91.19770'), ('PATTERSON', 467, '35.25760', '-91.23660')], 'partOfState': '', 'wfo': 'LZK'}, -'ARZ035': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CHERRY VALLEY', 704, '35.40300', '-90.75380'), ('FAIR OAKS', None, '35.23330', '-91.03330'), ('HICKORY RIDGE', 384, '35.40350', '-90.99470'), ('PARKIN', 1602, '35.26450', '-90.55250'), ('VANNDALE', None, '35.31670', '-90.78330'), ('WYNNE', 8615, '35.23130', '-90.78840')], 'partOfState': '', 'wfo': 'MEG'}, -'ARZ036': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CRAWFORDSVILLE', 514, '35.22570', '-90.32620'), ('EARLE', 3036, '35.27330', '-90.46500'), ('EDMONDSON', 513, '35.10350', '-90.30980'), ('GILMORE', 292, '35.41110', '-90.27740'), ('HORSESHOE LAKE', 321, '34.91330', '-90.30700'), ('JENNETTE', 124, '35.16560', '-90.40750'), ('JERICHO', 184, '35.28590', '-90.22730'), ('MARION', 8901, '35.20650', '-90.20350'), ('PINCKNEY', None, '34.96670', '-90.30000'), ('SIMSBORO', None, '35.01670', '-90.38330'), ('SUNSET', 348, '35.22470', '-90.20760'), ('TURRELL', 957, '35.37710', '-90.25710'), ('WEST MEMPHIS', 27666, '35.14970', '-90.18220')], 'partOfState': '', 'wfo': 'MEG'}, -'ARZ037': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('WALDRON', 3508, '34.89970', '-94.09360')], 'partOfState': '', 'wfo': 'LZK'}, -'ARZ038': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BELLEVILLE', 371, '35.09070', '-93.44530'), ('CORINTH', 65, '35.06820', '-93.42050'), ('DANVILLE', 2392, '35.05210', '-93.39030'), ('DARDANELLE', 4228, '35.22640', '-93.16560'), ('HAVANA', 392, '35.11020', '-93.52790'), ('OLA', 1204, '35.03100', '-93.22410'), ('PLAINVIEW', 755, '34.98950', '-93.29760')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARZ039': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ADONA', 187, '35.04000', '-92.89850'), ('BIGELOW', 329, '34.99900', '-92.63100'), ('CASA', 209, '35.02580', '-93.04430'), ('FOURCHE', 59, '34.99310', '-92.61880'), ('HOUSTON', 159, '35.03490', '-92.69410'), ('PERRY', 314, '35.04490', '-92.79380'), ('PERRYVILLE', 1458, '35.00840', '-92.80350')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'NHZ008': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALLENSTOWN', None, '43.15780', '-71.40610'), ('ANDOVER', None, '43.43690', '-71.82390'), ('BOSCAWEN', None, '43.31500', '-71.62140'), ('BOW', None, '43.13190', '-71.54970'), ('BRADFORD', None, '43.27000', '-71.96060'), ('CANTERBURY', None, '43.33690', '-71.56580'), ('CHICHESTER', None, '43.24920', '-71.40030'), ('CONCORD', 40687, '43.20810', '-71.53810'), ('CONTOOCOOK', 1444, '43.22350', '-71.71510'), ('DANBURY', None, '43.52560', '-71.86220'), ('DUNBARTON', None, '43.10250', '-71.61690'), ('EPSOM', None, '43.22280', '-71.33250'), ('FRANKLIN', 8405, '43.44420', '-71.64780'), ('HENNIKER', 1627, '43.17970', '-71.82280'), ('HILL', None, '43.52420', '-71.70140'), ('HOOKSETT', 3609, '43.09670', '-71.46560'), ('HOPKINTON', None, '43.19140', '-71.67580'), ('LACONIA', 16411, '43.24440', '-71.47080'), ('LOUDON', None, '43.28560', '-71.46780'), ('NEW LONDON', None, '43.41390', '-71.98560'), ('NEWBURY', None, '43.32140', '-72.03640'), ('NORTHFIELD', None, '43.43310', '-71.59280'), ('PEMBROKE', None, '43.14670', '-71.45810'), ('PITTSFIELD', 1669, '43.30580', '-71.32470'), ('SALISBURY', None, '43.38000', '-71.71750'), ('SOUTH HOOKSETT', 5282, '43.03490', '-71.42260'), ('SUNCOOK', 5362, '43.13870', '-71.45210'), ('SUTTON', None, '43.33420', '-71.95190'), ('WARNER', None, '43.28060', '-71.81720'), ('WEBSTER', None, '43.32890', '-71.71830'), ('WILMOT', None, '43.45170', '-71.91420')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'NHZ009': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALTON', None, '43.45220', '-71.21810'), ('BARNSTEAD', None, '43.33390', '-71.29330'), ('BELMONT', None, '43.44530', '-71.47830'), ('GILFORD', None, '43.54750', '-71.40720'), ('GILMANTON', None, '43.42420', '-71.41500'), ('MEREDITH', 1739, '43.65750', '-71.50080'), ('NEW HAMPTON', None, '43.60560', '-71.65470'), ('SANBORNTON', None, '43.48920', '-71.58280'), ('TILTON', None, '43.44220', '-71.58940'), ('TILTON-NORTHFIELD', 3231, '43.44340', '-71.59310')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'VAZ032': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARARAT', None, '36.60000', '-80.51670'), ('BUFFALO RIDGE', None, '36.75000', '-80.26670'), ('CHARITY', None, '36.81670', '-80.21670'), ('CRITZ', None, '36.63330', '-80.15000'), ('MEADOWS OF DAN', None, '36.73330', '-80.41670'), ('PENNS STORE', None, '36.60000', '-80.06670'), ('STUART', 961, '36.63330', '-80.28330'), ('WOOLWINE', None, '36.78330', '-80.28330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAZ033': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BOONES MILL', 285, '37.11520', '-79.95070'), ('BURNT CHIMNEY', None, '37.10000', '-79.83330'), ('CALLAWAY', None, '37.01670', '-80.05000'), ('ENDICOTT', None, '36.88330', '-80.15000'), ('FERRUM', 1313, '36.91670', '-80.01670'), ('OAK LEVEL', 885, '36.81670', '-79.91670'), ('PENHOOK', 726, '36.98330', '-79.63330'), ('ROCKY MOUNT', 4066, '37.00000', '-79.88330'), ('SAGO', None, '36.88330', '-79.63330'), ('SNOW CREEK', None, '36.83330', '-79.75000'), ('SONTAG', None, '36.93330', '-79.80000'), ('SYDNORSVILLE', None, '36.86670', '-79.83330'), ('WIRTZ', None, '37.08330', '-79.90000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'VAZ030': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ARCO', None, '38.86000', '-78.17500'), ('BENTONVILLE', None, '38.83170', '-78.31670'), ('BLUE MOUNTAIN', None, '38.96250', '-78.03940'), ('BROWNTOWN', None, '38.81080', '-78.23390'), ('BUCKTON', None, '38.95530', '-78.25420'), ('CEDARVILLE', None, '38.97690', '-78.18440'), ('FRONT ROYAL', 13589, '38.92480', '-78.18470'), ('GLEN ECHO', None, '38.85000', '-78.22470'), ('HOWELLSVILLE', None, '38.97470', '-78.07940'), ('KARO', None, '38.87190', '-78.25220'), ('LINDEN', None, '38.90890', '-78.07580'), ('NINEVEH', None, '39.01580', '-78.16530'), ('RELIANCE', None, '39.00640', '-78.25060'), ('RIVERSIDE', None, '38.90140', '-78.21390')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'VAZ031': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BERRYVILLE', 2963, '39.14960', '-77.98110'), ('BETHEL', None, '39.03080', '-78.04360'), ('BOYCE', 426, '39.09300', '-78.05950'), ('BRIGGS', None, '39.10780', '-78.01420'), ('GAYLORD', None, '39.18750', '-77.93080'), ('MILLWOOD', None, '39.06940', '-78.03810'), ('STRINGTOWN', None, '39.18810', '-77.97830'), ('WADESVILLE', None, '39.24250', '-78.03920'), ('WHITE POST', None, '39.05690', '-78.10390'), ('WICKLIFFE', None, '39.16610', '-77.89250')], 'partOfState': 'NORTHWEST', 'wfo': 'LWX'}, -'TXZ169': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLEO', None, '30.60360', '-99.87470'), ('JUNCTION', 2618, '30.48960', '-99.77100'), ('LONDON', None, '30.67670', '-99.57610'), ('ROOSEVELT', None, '30.49080', '-100.05470'), ('SEGOVIA', None, '30.41920', '-99.67000'), ('TELEGRAPH', None, '30.32720', '-99.90580')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SJT'}, -'TXZ168': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ERNA', None, '30.75060', '-99.48560'), ('FORT MCKAVETT', None, '30.82690', '-100.10640'), ('HEXT', None, '30.86890', '-99.52830'), ('MENARD', 1653, '30.91750', '-99.78610')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SJT'}, -'NDZ008': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AKRA', None, '48.77530', '-97.72670'), ('BACKOO', None, '48.83660', '-97.71000'), ('BATHGATE', 66, '48.88060', '-97.47290'), ('BOWESMONT', None, '48.69000', '-97.17770'), ('CAVALIER', 1537, '48.79530', '-97.62430'), ('CONCRETE', None, '48.74550', '-97.93330'), ('CRYSTAL', 167, '48.59850', '-97.66840'), ('DRAYTON', 913, '48.56460', '-97.17960'), ('GARDAR', None, '48.58910', '-97.86360'), ('GLASSTON', None, '48.70580', '-97.44720'), ('HAMILTON', 73, '48.80810', '-97.45160'), ('HENSEL', None, '48.68830', '-97.66610'), ('JOLIETTE', None, '48.81810', '-97.22680'), ('LEROY', None, '48.92340', '-97.75220'), ('MOUNTAIN', 133, '48.68350', '-97.86340'), ('NECHE', 437, '48.98200', '-97.55090'), ('PEMBINA', 642, '48.96800', '-97.24570'), ('ST. THOMAS', 447, '48.62020', '-97.44690'), ('WALHALLA', 1057, '48.92120', '-97.91670')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'WVZ038': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CAMDEN ON GAULEY', None, '38.36890', '-80.59780'), ('COWEN', 513, '38.41020', '-80.55510'), ('HOLLY RIVER STATE PARK', None, '38.66440', '-80.33520'), ('WEBSTER SPRINGS', None, '38.47840', '-80.41040')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ039': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BUCKHANNON', 5725, '38.98950', '-80.22540'), ('ROCK CAVE', None, '38.83670', '-80.34290')], 'partOfState': '', 'wfo': 'RLX'}, -'TXZ163': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CROCKETT', 7141, '31.31790', '-95.45630'), ('GRAPELAND', 1451, '31.49130', '-95.48180'), ('KENNARD', 317, '31.35820', '-95.18490'), ('LATEXO', 272, '31.38910', '-95.47450'), ('LOVELADY', 608, '31.12600', '-95.44530')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ162': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BUFFALO', 1804, '31.46120', '-96.06280'), ('CENTERVILLE', 903, '31.25830', '-95.97680'), ('JEWETT', 861, '31.36160', '-96.14580'), ('LEONA', 181, '31.15460', '-95.97550'), ('MARQUEZ', 220, '31.23690', '-96.25680'), ('OAKWOOD', 471, '31.58440', '-95.84890')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'TXZ161': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COOLIDGE', 848, '31.75120', '-96.65200'), ('GROESBECK', 4291, '31.52450', '-96.53110'), ('KOSSE', 497, '31.30690', '-96.62870'), ('MEXIA', 6563, '31.67970', '-96.48070'), ('TEHUACANA', 307, '31.74420', '-96.54400'), ('THORNTON', 525, '31.41170', '-96.57460')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'NDZ009': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ALAMO', 51, '48.58200', '-103.46700'), ('APPUM', None, '48.56670', '-103.58330'), ('CORINTH', None, '48.61670', '-103.31670'), ('EPPING', 79, '48.28070', '-103.35770'), ('GRENORA', 202, '48.61920', '-103.93610'), ('HAMLET', None, '48.63330', '-103.05000'), ('HANKS', None, '48.60250', '-103.80200'), ('MCGREGOR', None, '48.60000', '-102.93330'), ('RAY', 534, '48.34130', '-103.16270'), ('SPRING BROOK', None, '48.25190', '-103.46210'), ('TIOGA', 1125, '48.39350', '-102.93850'), ('TRENTON', None, '48.06670', '-103.85000'), ('WHEELOCK', None, '48.29500', '-103.25250'), ('WILDROSE', 129, '48.62920', '-103.18310'), ('WILLISTON', 12512, '48.16230', '-103.63090'), ('ZAHL', None, '48.56670', '-103.68330')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'TXZ167': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BRONSON', None, '31.34550', '-94.00890'), ('HEMPHILL', 1106, '31.34180', '-93.85130'), ('PINELAND', 980, '31.24640', '-93.97170')], 'partOfState': '', 'wfo': 'SHV'}, -'TXZ166': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROADDUS', 189, '31.30540', '-94.26930'), ('SAN AUGUSTINE', 2475, '31.52990', '-94.11100')], 'partOfState': '', 'wfo': 'SHV'}, -'TXZ165': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BURKE', 315, '31.22830', '-94.76920'), ('DIBOLL', 5470, '31.18860', '-94.78350'), ('HUDSON', 3792, '31.33010', '-94.79720'), ('HUNTINGTON', 2068, '31.27980', '-94.57750'), ('LUFKIN', 32709, '31.33350', '-94.72610'), ('ZAVALLA', 647, '31.15690', '-94.41740')], 'partOfState': '', 'wfo': 'SHV'}, -'TXZ164': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GROVETON', 1107, '31.05730', '-95.12710'), ('TRINITY', 2721, '30.94420', '-95.37330')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'MIZ006': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AU SABLE POINT', None, '46.67200', '-86.14200'), ('AU TRAIN', None, '46.43000', '-86.83000'), ('BEAVER LAKE', None, '46.56800', '-86.33900'), ('CHATHAM', 231, '46.34430', '-86.93080'), ('CHRISTMAS', None, '46.43000', '-86.68000'), ('DEERTON', None, '46.47400', '-87.04200'), ('EBEN JUNCTION', None, '46.35000', '-86.97000'), ('FISH LAKE', None, '46.22300', '-86.63900'), ('FOREST LAKE', None, '46.33000', '-86.83000'), ('GRAND MARAIS', None, '46.67000', '-85.98000'), ('GRAND PORTAL POINT', None, '46.55000', '-86.46300'), ('KIVA', None, '46.25400', '-87.08400'), ('MELSTRAND', None, '46.47000', '-86.42000'), ('MUNISING', 2539, '46.41700', '-86.64120'), ('NAWAKWA LAKE', None, '46.53600', '-85.97500'), ('SHINGLETON', None, '46.34800', '-86.47000'), ('SUNDELL', None, '46.35000', '-87.08000'), ('TRAUNIK', None, '46.26100', '-86.96900'), ('TRENARY', None, '46.20000', '-86.97000'), ('WETMORE', None, '46.38000', '-86.62000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ007': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BETSY LAKE', None, '46.62400', '-85.27400'), ('CRISP POINT', None, '46.75300', '-85.25700'), ('DEER PARK', None, '46.67000', '-85.60000'), ('DOLLARVILLE', None, '46.35100', '-85.54200'), ('HELMER', None, '46.27000', '-85.72000'), ('MCMILLAN', None, '46.33000', '-85.67000'), ('NEWBERRY', 2686, '46.35330', '-85.50900'), ('PIKE LAKE', None, '46.64200', '-85.40700'), ('PINE STUMP JUNCTION', None, '46.57000', '-85.58000'), ('SOO JUNCTION', None, '46.33600', '-85.25900')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ004': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALBERTA', None, '46.65000', '-88.47000'), ('ARNHEIM', None, '46.92000', '-88.47000'), ('ASSININS', None, '46.81000', '-88.47700'), ('BARAGA', 1285, '46.77730', '-88.49350'), ('HERMAN', None, '46.66700', '-88.36700'), ('ISLAND LAKE', None, '46.69800', '-88.01500'), ('KEWEENAW BAY', None, '46.87000', '-88.47000'), ("L'ANSE", 2107, '46.75360', '-88.44940'), ('MOUNT ARVON', None, '46.75600', '-88.15600'), ('NED LAKE', None, '46.45200', '-88.33400'), ('PELKIE', None, '46.82000', '-88.63000'), ('PEQUAMING', None, '46.85000', '-88.38000'), ('THREE LAKES', None, '46.55400', '-88.20100'), ('WATTON', None, '46.53000', '-88.60000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ005': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARNOLD', None, '46.05000', '-87.48000'), ('BIG BASS LAKE', None, '46.30800', '-87.67800'), ('BIG BAY', 265, '46.82000', '-87.72000'), ('CARLSHEND', None, '46.32000', '-87.22000'), ('CHAMPION', None, '46.52000', '-87.97000'), ('GWINN', 1965, '46.29090', '-87.43930'), ('HARVEY', 1321, '46.49280', '-87.35090'), ('HURON RIVER POINT', None, '46.90900', '-87.90000'), ('ISHPEMING', 6686, '46.48750', '-87.66360'), ('LITTLE LAKE', None, '46.28000', '-87.33000'), ('MARQUETTE', 19661, '46.55080', '-87.39570'), ('MCFARLAND', None, '46.18000', '-87.25000'), ('MICHIGAMME', 287, '46.53500', '-88.11000'), ('MOUNTAIN LAKE', None, '46.86100', '-87.91400'), ('NATIONAL MINE', None, '46.45000', '-87.68000'), ('NEGAUNEE', 4576, '46.49970', '-87.59690'), ('NORTHLAND', None, '46.07000', '-87.58000'), ('PALMER', 449, '46.43000', '-87.58000'), ('REPUBLIC', 614, '46.40000', '-87.98000'), ('SANDS', None, '46.42000', '-87.40000'), ('SILVER LAKE', None, '46.34100', '-87.33500'), ('SKANDIA', None, '46.38000', '-87.23000'), ('TROWBRIDGE PARK', 2012, '46.55570', '-87.44110'), ('WATSON', None, '46.02000', '-87.42000'), ('WITCH LAKE', None, '46.28000', '-88.02000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ002': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BERGLAND', None, '46.60000', '-89.57000'), ('BRUCE CROSSING', None, '46.53000', '-89.18000'), ('CLARK LAKE', None, '46.63400', '-89.77100'), ('EWEN', None, '46.53000', '-89.28000'), ('FOURTEEN MILE POINT', None, '46.99200', '-89.11700'), ('LAKE OF THE CLOUDS', None, '46.80400', '-89.75200'), ('MASS CITY', None, '46.77000', '-89.08000'), ('MERRIWEATHER', None, '46.57000', '-89.63000'), ('MIRROR LAKE', None, '46.76200', '-89.77000'), ('ONTONAGON', 1769, '46.86710', '-89.31430'), ('PAULDING', None, '46.40000', '-89.18000'), ('ROCKLAND', None, '46.73800', '-89.17900'), ('SILVER CITY', None, '46.83000', '-89.57000'), ('TROUT CREEK', None, '46.48000', '-89.02000'), ('WHITE PINE', None, '46.75400', '-89.58400')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ003': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLOUEZ', None, '47.28700', '-88.40900'), ('CALUMET', 879, '47.24740', '-88.45320'), ('CHASSELL', None, '47.03000', '-88.53000'), ('COPPER CITY', 205, '47.28450', '-88.38690'), ('DONKEN', None, '46.95000', '-88.78000'), ('HANCOCK', 4323, '47.13230', '-88.60070'), ('HOUGHTON', 7010, '47.11360', '-88.56180'), ('HUBBELL', 1105, '47.17940', '-88.43650'), ('LAKE LINDEN', 1081, '47.19510', '-88.40350'), ('LAURIUM', 2126, '47.23650', '-88.43760'), ('PAINESDALE', None, '47.03000', '-88.68000'), ('REDRIDGE', None, '47.15000', '-88.77000'), ('RICE LAKE', None, '47.16400', '-88.28500'), ('SOUTH RANGE', 727, '47.07030', '-88.64460'), ('TAPIOLA', None, '46.92000', '-88.62000'), ('TOIVOLA', None, '47.00000', '-88.75000'), ('TWIN LAKES', None, '46.90000', '-88.83000'), ('WINONA', None, '46.88000', '-88.90000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ001': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AHMEEK', 157, '47.29790', '-88.39700'), ('COPPER HARBOR', None, '47.47000', '-87.89000'), ('DELAWARE', None, '47.42000', '-88.10000'), ('EAGLE HARBOR', None, '47.45800', '-88.16200'), ('GAY', None, '47.23000', '-88.17000'), ('KEWEENAW POINT', None, '47.40200', '-87.71200'), ('LAC LA BELLE', None, '47.38000', '-88.02000'), ('MOHAWK', None, '47.30000', '-88.37000'), ('PHOENIX', None, '47.38900', '-88.27800')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ008': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARBEAU', None, '46.28330', '-84.28330'), ('BAY MILLS', None, '46.43500', '-84.58500'), ('BAYVIEW CAMPGROUND', None, '46.44500', '-84.76000'), ('BRIMLEY', None, '46.40500', '-84.56660'), ('DAFTER', None, '46.36700', '-84.43300'), ('DONALDSON', None, '46.31000', '-84.35000'), ('ECKERMAN', None, '46.36700', '-85.03340'), ('FIBRE', None, '46.20000', '-84.88330'), ('GOETZVILLE', None, '46.08000', '-84.09000'), ('HULBERT', None, '46.35000', '-85.15000'), ('INTERSECTION OF M-32 AND', None, '45.99900', '-84.03150'), ('KELDEN', None, '46.21000', '-84.31000'), ('KINCHELOE', None, '46.25000', '-84.50000'), ('KINROSS', None, '46.26660', '-84.48000'), ('LOWER TAHQUAMENON FALLS S', None, '46.62000', '-85.20000'), ('MCCARRON', None, '46.33000', '-84.28000'), ('MUNUSCONG', None, '46.24500', '-84.19000'), ('PARADISE', None, '46.63340', '-85.03340'), ('PICKFORD', None, '46.16400', '-84.36400'), ('RACO', None, '46.37100', '-84.71600'), ('RUDYARD', None, '46.23330', '-84.60000'), ('SAULT STE. MARIE', 16542, '46.48460', '-84.36550'), ('STALWART', None, '46.10000', '-84.24000'), ('STRONGS', None, '46.35000', '-84.96700'), ('THREE LAKES', None, '46.31000', '-84.97000'), ('TROUT LAKE', None, '46.18330', '-85.01710'), ('WHITEFISH POINT', None, '46.75200', '-84.98330')], 'partOfState': '', 'wfo': 'APX'}, -'MIZ009': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BESSEMER', 2148, '46.47760', '-90.04960'), ('CHANEY LAKE', None, '46.31700', '-89.91300'), ('IRONWOOD', 6293, '46.45450', '-90.15260'), ('LITTLE GIRLS POINT', None, '46.60700', '-90.33100'), ('MARENISCO', None, '46.38000', '-89.68000'), ('POMEROY LAKE', None, '46.27900', '-89.57500'), ('PRESQUE ISLE RESERVOIR', None, '46.34500', '-89.71200'), ('TAMARACK LAKE', None, '46.24000', '-88.99200'), ('THOMASTON', None, '46.51600', '-89.92700'), ('THOUSAND ISLAND LAKE', None, '46.22900', '-89.40000'), ('WAKEFIELD', 2085, '46.47680', '-89.93340'), ('WATERSMEET', None, '46.27000', '-89.18000')], 'partOfState': '', 'wfo': 'MQT'}, -'TNZ099': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIRCHWOOD', None, '35.36140', '-84.99330'), ('CHATTANOOGA', 155554, '35.06620', '-85.25700'), ('COLLEGEDALE', 6514, '35.04470', '-85.05030'), ('EAST BRAINERD', 14132, '35.01380', '-85.10890'), ('HARRISON', 7630, '35.12790', '-85.14600'), ('MIDDLE VALLEY', 11854, '35.18770', '-85.18940'), ('OOLTEWAH', 5681, '35.06250', '-85.09110'), ('RED BANK', 12418, '35.11140', '-85.29500'), ('SALE CREEK', None, '35.38110', '-85.10970'), ('SHADY GROVE', None, '35.25220', '-85.12110'), ('SIGNAL MOUNTAIN', 7429, '35.13040', '-85.34210'), ('SODDY-DAISY', 11530, '35.26260', '-85.17220')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ098': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('GRIFFITH CREEK', None, '35.28890', '-85.55190'), ('HALETOWN (GUILD)', None, '35.02720', '-85.53920'), ('JASPER', 3214, '35.05990', '-85.62870'), ('MARTIN SPRINGS', None, '35.16560', '-85.53920'), ('MONTEAGLE', 1238, '35.22820', '-85.83070'), ('ORME', 124, '35.01190', '-85.80640'), ('POWELLS CROSSROADS', 1286, '35.18350', '-85.48290'), ('SOUTH PITTSBURG', 3295, '35.01580', '-85.71140'), ('WHITWELL', 1660, '35.20150', '-85.51870')], 'partOfState': '', 'wfo': 'MRX'}, -'KSZ088': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ACRES', None, '37.10000', '-99.88000'), ('ASHLAND', 975, '37.18680', '-99.76890'), ('CLARK STATE LAKE', None, '37.39000', '-99.78000'), ('ENGLEWOOD', 109, '37.03970', '-99.98540'), ('MINNEOLA', 717, '37.44270', '-100.01260'), ('SITKA', None, '37.17000', '-99.65000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSZ089': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BUTTERMILK', None, '37.11000', '-99.34000'), ('COLDWATER', 792, '37.25790', '-99.33680'), ('LAKE COLDWATER', None, '37.25000', '-99.35000'), ('PROTECTION', 558, '37.20020', '-99.48030'), ('WILMORE', 57, '37.33590', '-99.20930')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'KSZ082': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CLEVELAND', None, '37.55000', '-98.13000'), ('CUNNINGHAM', 514, '37.64490', '-98.43200'), ('KINGMAN', 3387, '37.64700', '-98.11350'), ('MT VERNON', None, '37.72000', '-97.85000'), ('NASHVILLE', 111, '37.43860', '-98.42230'), ('NORWICH', 551, '37.45670', '-97.84550'), ('PENALOSA', 27, '37.71580', '-98.31970'), ('RAGO', None, '37.45000', '-98.08000'), ('SPIVEY', 80, '37.44820', '-98.16500'), ('ZENDA', 123, '37.44500', '-98.28220')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'TNZ090': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BOLIVAR', 5802, '35.26400', '-88.99910'), ('CLOVERPORT', None, '35.40000', '-89.01670'), ('GRAND JUNCTION', 301, '35.04920', '-89.18860'), ('HICKORY VALLEY', 136, '35.15480', '-89.12650'), ('HORNSBY', 306, '35.22970', '-88.83040'), ('MIDDLETON', 602, '35.06030', '-88.89140'), ('MIDTOWN MEMPHIS', None, '35.13330', '-89.00000'), ('POCAHONTAS', None, '35.05000', '-88.81670'), ('SAULSBURY', 99, '35.04920', '-89.08880'), ('SILERTON', 60, '35.35000', '-88.81670'), ('TOONE', 330, '35.35300', '-88.95350'), ('WHITEVILLE', 3148, '35.32760', '-89.14770')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'KSZ080': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BELVIDERE', None, '37.44000', '-99.08000'), ('GREENSBURG', 1574, '37.60540', '-99.29180'), ('HAVILAND', 612, '37.61770', '-99.10510'), ('MULLINVILLE', 279, '37.58800', '-99.47460'), ('WELLSFORD', None, '37.61000', '-99.02000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'KSZ081': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BYERS', 50, '37.78780', '-98.86670'), ('CAIRO', None, '37.64000', '-98.54000'), ('COATS', 112, '37.51090', '-98.82440'), ('CROFT', None, '37.49000', '-98.99000'), ('CULLISON', 98, '37.62970', '-98.90510'), ('HOPEWELL', None, '37.80000', '-98.98000'), ('ISABEL', 108, '37.46770', '-98.55140'), ('IUKA', 185, '37.72900', '-98.73140'), ('PRATT', 6570, '37.64670', '-98.73590'), ('PRESTON', 164, '37.75800', '-98.55550'), ('SAWYER', 124, '37.49770', '-98.68270')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'TNZ095': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARDMORE', 1082, '34.99990', '-86.85660'), ('ELKTON', 510, '35.06020', '-86.89640'), ('LYNNVILLE', 345, '35.37790', '-87.00560'), ('MINOR HILL', 437, '35.03840', '-87.17110'), ('PULASKI', 7871, '35.19570', '-87.03430')], 'partOfState': '', 'wfo': 'OHX'}, -'KSZ087': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('FOWLER', 567, '37.38330', '-100.19570'), ('MEADE', 1672, '37.28500', '-100.33760'), ('MEADE STATE PARK', None, '37.17000', '-100.42000'), ('MISSLER', None, '37.32000', '-100.43000'), ('PLAINS CITY', None, '37.26360', '-100.58990')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSZ084': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ELKHART', 2233, '37.00220', '-101.89450'), ('RICHFIELD', 48, '37.26570', '-101.78320'), ('ROLLA', 482, '37.11930', '-101.63060'), ('WILBURTON', None, '37.07000', '-101.76000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'KSZ085': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CAVE', None, '37.36000', '-101.12000'), ('FETERITA', None, '37.15000', '-101.48000'), ('HUGOTON', 3708, '37.17640', '-101.34680'), ('MOSCOW', 247, '37.32550', '-101.20630'), ('WOODS', None, '37.17000', '-101.10000')], 'partOfState': 'SOUTHWEST', 'wfo': 'DDC'}, -'MNZ091': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CEYLON', 413, '43.53190', '-94.63200'), ('DUNNELL', 197, '43.56050', '-94.77370'), ('FAIRMONT', 10889, '43.64240', '-94.45780'), ('GRANADA', 317, '43.69360', '-94.34930'), ('NORTHROP', 262, '43.73560', '-94.43560'), ('SHERBURN', 1082, '43.65380', '-94.72650'), ('TRIMONT', 754, '43.76140', '-94.71540'), ('TRUMAN', 1259, '43.82800', '-94.43620'), ('WELCOME', 721, '43.66840', '-94.61850')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'KSZ059': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('COLONY', 397, '38.07080', '-95.36530'), ('GARNETT', 3368, '38.28060', '-95.24170'), ('GREELEY', 327, '38.36670', '-95.12670'), ('HARRIS', 53, '38.32000', '-95.43000'), ('KINCAID', 178, '38.08420', '-95.15330'), ('WESTPHALIA', 165, '38.18200', '-95.49000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'MEZ002': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ASHLAND', None, '46.63110', '-68.40670'), ('BLAINE', None, '46.50470', '-67.86920'), ('BRIDGEWATER', None, '46.42780', '-67.84390'), ('CARIBOU', 8312, '46.86060', '-68.01250'), ('CHAPMAN', None, '46.64810', '-68.16140'), ('EASTON', None, '46.64110', '-67.91000'), ('FORT FAIRFIELD', 1600, '46.77220', '-67.83440'), ('LIMESTONE', 1453, '46.90860', '-67.82640'), ('LORING', None, '46.94040', '-67.89480'), ('MAPLETON', None, '46.68190', '-68.16330'), ('MARS HILL', None, '46.51580', '-67.86690'), ('MASARDIS', None, '46.50360', '-68.36170'), ('NEW SWEDEN', None, '46.94170', '-68.12110'), ('OXBOW', None, '46.41860', '-68.49060'), ('PERHAM', None, '46.84420', '-68.19780'), ('PORTAGE', None, '46.76310', '-68.47640'), ('PRESQUE ISLE', 9511, '46.68110', '-68.01640'), ('RUSSEL CROSSING', None, '46.64000', '-68.74000'), ('SQUA PAN', None, '46.56310', '-68.37860'), ('STOCKHOLM', None, '47.04220', '-68.14000'), ('WASHBURN', None, '46.79000', '-68.15810'), ('WESTFIELD', None, '46.57030', '-67.92310'), ('WOODLAND', 1044, '46.88530', '-68.14250')], 'partOfState': 'NORTHERN', 'wfo': 'CAR'}, -'MOZ109': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('HARVIELL', None, '36.68360', '-90.57440'), ('HENDRICKSON', None, '36.90440', '-90.46880'), ('NEELYVILLE', 487, '36.55920', '-90.51100'), ('POPLAR BLUFF', 16651, '36.76390', '-90.40720'), ('QULIN', 467, '36.59790', '-90.24910'), ('ROMBAUER', None, '36.84300', '-90.28000')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ108': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRIAR', None, '36.64350', '-90.96120'), ('DONIPHAN', 1932, '36.62290', '-90.82200'), ('GATEWOOD', None, '36.56290', '-91.07400'), ('NAYLOR', 610, '36.57400', '-90.60530')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ101': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANDERSON', 1856, '36.65050', '-94.44330'), ('GOODMAN', 1183, '36.74160', '-94.39880'), ('LANAGAN', 411, '36.60800', '-94.44740'), ('NOEL', 1480, '36.54550', '-94.48490'), ('PINEVILLE', 768, '36.59440', '-94.38380'), ('POWELL', None, '36.62270', '-94.18040'), ('ROCKY COMFORT', None, '36.74630', '-94.09020'), ('SOUTH WEST CITY', 855, '36.51250', '-94.61110'), ('TIFF CITY', None, '36.66820', '-94.61880')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ100': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GREENVILLE', 451, '37.12690', '-90.44600'), ('MILL SPRING', 219, '37.06470', '-90.68140'), ('PIEDMONT', 1992, '37.14780', '-90.69840'), ('WILLIAMSVILLE', 379, '36.97360', '-90.54810')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ103': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLUE EYE', 36, '36.49600', '-93.39690'), ('BLUE EYE', 129, '36.49910', '-93.39580'), ('CAPE FAIR', None, '36.72990', '-93.51000'), ('CRANE', 1390, '36.90520', '-93.57130'), ('ELSEY', None, '36.85410', '-93.54050'), ('GALENA', 451, '36.80520', '-93.46630'), ('HURLEY', 157, '36.93130', '-93.49880'), ('INDIAN POINT', 588, '36.64070', '-93.34690'), ('KIMBERLING CITY', 2253, '36.63330', '-93.41660'), ('LAMPE', None, '36.56360', '-93.43770'), ('PONCE DE LEON', None, '36.87570', '-93.35130'), ('REEDS SPRING', 465, '36.74960', '-93.37770'), ('SILVER DOLLAR CITY', None, '36.66770', '-93.33940')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ102': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BUTTERFIELD', 397, '36.75000', '-93.90750'), ('CASSVILLE', 2890, '36.67680', '-93.86850'), ('EAGLE ROCK', None, '36.54800', '-93.75410'), ('EXETER', 707, '36.67210', '-93.94080'), ('GOLDEN', None, '36.52410', '-93.65360'), ('JENKINS', None, '36.77850', '-93.68580'), ('MADRY', None, '36.86930', '-93.71990'), ('MCDOWELL', None, '36.82410', '-93.79300'), ('MONETT', 7396, '36.92110', '-93.92740'), ('PIONEER', None, '36.83580', '-94.05740'), ('PLEASANT RIDGE', None, '36.89630', '-93.79130'), ('PURDY', 1103, '36.81710', '-93.92040'), ('RIDGLEY', None, '36.69710', '-94.01990'), ('SELIGMAN', 877, '36.52240', '-93.93940'), ('SHELL KNOB', 1393, '36.63210', '-93.63410'), ('WASHBURN', 448, '36.58690', '-93.96580'), ('WAYNE', None, '36.63740', '-93.96190'), ('WHEATON', 721, '36.76270', '-94.05580'), ('WHEELERVILLE', None, '36.83600', '-93.62910')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ105': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BAKERSFIELD', 285, '36.52240', '-92.14190'), ('BRIXEY', None, '36.75070', '-92.40470'), ('DORA', None, '36.77680', '-92.21710'), ('GAINESVILLE', 632, '36.60300', '-92.42790'), ('HARDENVILLE', None, '36.58910', '-92.37100'), ('ISABELLA', None, '36.58070', '-92.61250'), ('LONG RUN', None, '36.64910', '-92.72290'), ('NOBLE', None, '36.74740', '-92.56960'), ('PONTIAC', None, '36.51550', '-92.60360'), ('ROCKBRIDGE', None, '36.78940', '-92.40880'), ('SUNDOWN', 38, '36.56550', '-92.63730'), ('SYCAMORE', None, '36.70330', '-92.27410'), ('TECUMSEH', None, '36.58660', '-92.28630'), ('THEODOSIA', 240, '36.58270', '-92.67570'), ('THORNFIELD', None, '36.70860', '-92.65910'), ('UDALL', None, '36.54380', '-92.25860'), ('WASOLA', None, '36.79350', '-92.57540'), ('WILLHOIT', None, '36.68330', '-92.50660'), ('ZANONI', None, '36.68600', '-92.33160')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ104': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRADLEYVILLE', None, '36.78350', '-92.90800'), ('BRANSON', 6050, '36.64350', '-93.21820'), ('BROWNBRANCH', None, '36.79440', '-92.83040'), ('EDGEWATER BEACH', None, '36.66130', '-93.14160'), ('FORSYTH', 1686, '36.68490', '-93.11960'), ('HOLLISTER', 3867, '36.62100', '-93.21520'), ('KIRBYVILLE', None, '36.62290', '-93.16380'), ('KISSEE MILLS', None, '36.68350', '-93.04960'), ('MERRIAM WOODS', 1142, '36.71380', '-93.16160'), ('OZARK BEACH', None, '36.65880', '-93.13850'), ('POWERSITE', None, '36.65550', '-93.12100'), ('PROTEM', None, '36.52880', '-92.85860'), ('RIDGEDALE', None, '36.50380', '-93.22350'), ('ROCKAWAY BEACH', 577, '36.69910', '-93.15970'), ('RUETER', None, '36.60830', '-92.86880'), ('TABLE ROCK', 229, '36.60430', '-93.30030'), ('TANEYVILLE', 359, '36.74130', '-93.03410'), ('WALNUT SHADE', None, '36.73240', '-93.19330')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGF'}, -'MOZ107': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ELLSINORE', 363, '36.93360', '-90.74600'), ('FREEMONT', None, '36.85380', '-91.12320'), ('GRANDIN', 236, '36.82990', '-90.82180'), ('VAN BUREN', 845, '37.00730', '-91.01220')], 'partOfState': 'SOUTHEAST', 'wfo': 'PAH'}, -'MOZ106': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALTON', 668, '36.69410', '-91.39910'), ('COUCH', None, '36.60610', '-91.38290'), ('GREER', None, '36.76930', '-91.35330'), ('KOSHKONONG', 205, '36.59580', '-91.64550'), ('MYRTLE', None, '36.50860', '-91.26680'), ('ROVER', None, '36.72160', '-91.62070'), ('THAYER', 2201, '36.52430', '-91.53800'), ('THOMASVILLE', None, '36.78910', '-91.53180'), ('WILDERNESS', None, '36.71940', '-91.19190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'SGF'}, -'OKZ025': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ARCADIA', 279, '35.66540', '-97.32610'), ('BETHANY', 20307, '35.50600', '-97.64340'), ('CHOCTAW', 9377, '35.48240', '-97.26540'), ('DEL CITY', 22128, '35.44750', '-97.43970'), ('EDMOND', 68315, '35.67200', '-97.41320'), ('FOREST PARK', 1066, '35.51480', '-97.44650'), ('HARRAH', 4719, '35.48570', '-97.18410'), ('JONES', 2517, '35.56660', '-97.29060'), ('LAKE ALUMA', 97, '35.53560', '-97.44830'), ('LUTHER', 612, '35.66430', '-97.18040'), ('MIDWEST CITY', 54088, '35.46260', '-97.36940'), ('NEWALLA', None, '35.40000', '-97.17000'), ('NICHOLS HILLS', 4056, '35.54610', '-97.54440'), ('NICOMA PARK', 2415, '35.49110', '-97.32400'), ('OKLAHOMA CITY', 506132, '35.46710', '-97.51350'), ('SMITH VILLAGE', 40, '35.45100', '-97.45690'), ('SPENCER', 3746, '35.50770', '-97.37030'), ('THE VILLAGE', 10157, '35.57010', '-97.55560'), ('VALLEY BROOK', 817, '35.40250', '-97.48200'), ('WARR ACRES', 9735, '35.52680', '-97.61770')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'TXZ107': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMO', 621, '33.06050', '-95.47510'), ('CUMBY', 616, '33.13300', '-95.83880'), ('SULPHUR SPRINGS', 14551, '33.14390', '-95.61010'), ('TIRA', 248, '33.32620', '-95.56230')], 'partOfState': 'NORTHEAST', 'wfo': 'FWD'}, -'NEZ058': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRANDON', None, '40.80150', '-101.93100'), ('ELSIE', 139, '40.84680', '-101.38890'), ('GRAINTON', None, '40.82240', '-101.28650'), ('GRANT', 1225, '40.84440', '-101.72570'), ('MADRID', 265, '40.84960', '-101.54270'), ('VENANGO', 175, '40.76170', '-102.04080')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'NEZ059': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRADY', 366, '41.02280', '-100.36740'), ('DICKENS', None, '40.82580', '-100.99340'), ('FARNAM', 223, '40.70630', '-100.21500'), ('HERSHEY', 572, '41.15810', '-101.00130'), ('MAXWELL', 315, '41.07860', '-100.52580'), ('NORTH PLATTE', 23878, '41.13300', '-100.77180'), ('SUTHERLAND', 1129, '41.15750', '-101.12650'), ('WALLACE', 329, '40.83710', '-101.16350'), ('WELLFLEET', 76, '40.75270', '-100.73040')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'WVZ009': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BLENNERHASSETT', 3225, '39.25850', '-81.63360'), ('BOAZ', 1345, '39.37100', '-81.48620'), ('LUBECK', 1303, '39.23640', '-81.62950'), ('MINERALWELLS', 1860, '39.17910', '-81.51160'), ('NORTH HILLS', 880, '39.31470', '-81.51050'), ('PARKERSBURG', 33099, '39.26400', '-81.54300'), ('VIENNA', 10861, '39.32270', '-81.53820'), ('WASHINGTON', 1170, '39.24090', '-81.67340'), ('WILLIAMSTOWN', 2996, '39.40120', '-81.45090')], 'partOfState': '', 'wfo': 'RLX'}, -'MOZ030': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CAMDEN', 209, '39.20020', '-94.01890'), ('CRYSTAL LAKES', 383, '39.35820', '-94.19000'), ('ELMIRA', 82, '39.50830', '-94.15310'), ('EXCELSIOR ESTATES', 263, '39.39020', '-94.20760'), ('FLEMING', 122, '39.19290', '-94.05120'), ('HARDIN', 614, '39.26760', '-93.83030'), ('HENRIETTA', 457, '39.23740', '-93.93800'), ('HOMESTEAD', 181, '39.35970', '-94.20190'), ('KNOXVILLE', None, '39.45000', '-94.01670'), ('LAWSON', 2336, '39.43630', '-94.21360'), ('ORRICK', 889, '39.21360', '-94.12520'), ('RAYVILLE', 204, '39.34800', '-94.06360'), ('RICHMOND', 6116, '39.27870', '-93.97330'), ('WOODS HEIGHTS', 742, '39.34000', '-94.16220')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'NEZ050': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ABIE', 108, '41.33370', '-96.94930'), ('BELLWOOD', 446, '41.34210', '-97.24020'), ('BRAINARD', 351, '41.18270', '-97.00220'), ('BRUNO', 112, '41.28330', '-96.96050'), ('DAVID CITY', 2597, '41.25450', '-97.12610'), ('DWIGHT', 259, '41.08300', '-97.01910'), ('GARRISON', 67, '41.17550', '-97.16300'), ('LINWOOD', 118, '41.41180', '-96.93240'), ('OCTAVIA', 145, '41.34730', '-97.05910'), ('RISING CITY', 386, '41.19860', '-97.29690'), ('SURPRISE', 44, '41.10440', '-97.30860'), ('ULYSSES', 276, '41.07240', '-97.20240')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEZ051': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ASHLAND', 2262, '41.04050', '-96.37090'), ('CEDAR BLUFFS', 615, '41.39780', '-96.60920'), ('CERESCO', 920, '41.05770', '-96.64530'), ('COLON', 138, '41.29780', '-96.60650'), ('ITHACA', 168, '41.16040', '-96.53960'), ('LESHARA', 111, '41.33010', '-96.42870'), ('MALMO', 109, '41.26630', '-96.72100'), ('MEAD', 564, '41.22910', '-96.48940'), ('MEMPHIS', 106, '41.09460', '-96.43280'), ('MORSE BLUFF', 134, '41.43110', '-96.76570'), ('PRAGUE', 346, '41.30970', '-96.80860'), ('VALPARAISO', 563, '41.07940', '-96.83200'), ('WAHOO', 3942, '41.21520', '-96.62000'), ('WESTON', 310, '41.19200', '-96.74120'), ('YUTAN', 1216, '41.24320', '-96.39730')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEZ052': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BENNINGTON', 937, '41.36760', '-96.15690'), ('BOYS TOWN', 818, '41.25950', '-96.13120'), ('ELKHORN', 6062, '41.28270', '-96.23620'), ('MILLARD', None, '41.20530', '-96.15770'), ('OMAHA', 390007, '41.26390', '-96.01170'), ('RALSTON', 6314, '41.20130', '-96.03670'), ('VALLEY', 1788, '41.31300', '-96.34600'), ('WATERLOO', 459, '41.28780', '-96.28570')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEZ053': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BELLEVUE', 44382, '41.15640', '-95.92260'), ('CHALCO', 10736, '41.18340', '-96.13390'), ('GRETNA', 2355, '41.14070', '-96.24360'), ('LA VISTA', 11699, '41.18430', '-96.03910'), ('OFFUTT AFB', 8901, '41.11160', '-95.91880'), ('PAPILLION', 16363, '41.15720', '-96.04050'), ('SPRINGFIELD', 1450, '41.08310', '-96.13220')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEZ054': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BUSHNELL', 162, '41.23200', '-103.89040'), ('DIX', 267, '41.23470', '-103.48630'), ('KIMBALL', 2559, '41.23250', '-103.65900')], 'partOfState': '', 'wfo': 'CYS'}, -'NEZ055': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BROWNSON', None, '41.17000', '-103.08000'), ('DALTON', 332, '41.40770', '-102.97040'), ('GURLEY', 228, '41.32060', '-102.97390'), ('LODGEPOLE', 348, '41.14850', '-102.63830'), ('LORENZO', None, '41.03000', '-103.05000'), ('POTTER', 390, '41.21890', '-103.31430'), ('SIDNEY', 6282, '41.13370', '-102.97000')], 'partOfState': '', 'wfo': 'CYS'}, -'NEZ056': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BIG SPRINGS', 418, '41.06340', '-102.07470'), ('CHAPPELL', 983, '41.09410', '-102.46700')], 'partOfState': '', 'wfo': 'LBF'}, -'NEZ057': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BRULE', 372, '41.09590', '-101.88840'), ('KEYSTONE', None, '41.22000', '-101.59000'), ('KINGSLEY DAM', None, '41.21450', '-101.65800'), ('LEMOYNE', None, '41.28550', '-101.80050'), ('OGALLALA', 4930, '41.13050', '-101.72050'), ('PAXTON', 614, '41.12480', '-101.35540'), ('ROSCOE', None, '41.13500', '-101.60000'), ('SARBEN', None, '41.16300', '-101.30000')], 'partOfState': 'SOUTHWEST', 'wfo': 'LBF'}, -'MNZ027': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AUDUBON', 445, '46.86420', '-95.98090'), ('CALLAWAY', 200, '46.98300', '-95.91130'), ('CORMORANT', None, '46.73060', '-96.06530'), ('DETROIT LAKES', 7348, '46.81310', '-95.84220'), ('FRAZEE', 1377, '46.72700', '-95.69960'), ('LAKE PARK', 782, '46.88360', '-96.09650'), ('OGEMA', 143, '47.10160', '-95.92250'), ('RICHWOOD', None, '46.97470', '-95.82250'), ('ROCHERT', None, '46.86000', '-95.68750'), ('SHOREHAM', None, '46.75750', '-95.89860'), ('WESTBURY', None, '46.91720', '-95.90940'), ('WHITE EARTH', 424, '47.09670', '-95.84310')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ026': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BALL CLUB', None, '47.32590', '-93.93620'), ('BLACKBERRY', None, '47.18090', '-93.39060'), ('BOVEY', 662, '47.29420', '-93.40230'), ('CALUMET', 383, '47.31920', '-93.26960'), ('COHASSET', 2481, '47.26370', '-93.62040'), ('COLERAINE', 1110, '47.30630', '-93.42310'), ('DEER RIVER', 903, '47.33600', '-93.79400'), ('GOODLAND', None, '47.16200', '-93.13590'), ('GRAND RAPIDS', 7764, '47.22880', '-93.52450'), ('GUNN', None, '47.21620', '-93.47540'), ('KEEWATIN', 1164, '47.40410', '-93.08550'), ('LA PRAIRIE', 605, '47.22730', '-93.49010'), ('MARBLE', 695, '47.32860', '-93.29340'), ('NASHWAUK', 935, '47.38420', '-93.16770'), ('PENGILLY', None, '47.33280', '-93.19730'), ('SWAN RIVER', None, '47.08670', '-93.19510'), ('TACONITE', 315, '47.32320', '-93.36020'), ('WARBA', 183, '47.13580', '-93.27090'), ('WAWINA', None, '47.05320', '-93.11920'), ('ZEMPLE', 75, '47.32340', '-93.78620')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'MNZ025': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BACKUS', 311, '46.82090', '-94.51410'), ('BENA', 110, '47.34110', '-94.20620'), ('BOY RIVER', 38, '47.16690', '-94.12250'), ('BREVIK', None, '47.08300', '-94.28880'), ('CASS LAKE', 860, '47.37880', '-94.60060'), ('DAYS HIGH LANDING', None, '47.25230', '-93.80590'), ('FEDERAL DAM', 101, '47.23850', '-94.21880'), ('HACKENSACK', 285, '46.92790', '-94.51860'), ('INGUADONA', None, '46.98360', '-94.13060'), ('LONGVILLE', 180, '46.98670', '-94.21520'), ('OSHAWA', None, '46.80400', '-94.63890'), ('OUTING', None, '46.82060', '-93.94810'), ('PONTORIA', None, '46.86340', '-94.33670'), ('REMER', 372, '47.05800', '-93.91370'), ('SCHLEY', None, '47.36890', '-94.41620'), ('TOBIQUE', None, '47.11560', '-94.03980'), ('WABEDO', None, '46.92060', '-94.18810'), ('WALKER', 1069, '47.08980', '-94.57890'), ('WHIPHOLT', None, '47.04940', '-94.36610'), ('WILKINSON', None, '47.25090', '-94.62780')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'DLH'}, -'MNZ024': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AKELEY', 412, '47.00040', '-94.72760'), ('BADOURA', None, '46.86220', '-94.76580'), ('BECIDA', None, '47.35420', '-95.08080'), ('BENEDICT', None, '47.15810', '-94.69030'), ('CHAMBERLAIN', None, '46.90530', '-94.72140'), ('DORSET', None, '46.95640', '-94.95220'), ('EMMAVILLE', None, '47.06560', '-94.98030'), ('GUTHRIE', None, '47.30030', '-94.79080'), ('HUBBARD', None, '46.83670', '-95.01000'), ('KABEKONA', None, '47.23470', '-94.87640'), ('LAKE GEORGE', None, '47.20060', '-94.99330'), ('LAPORTE', 145, '47.21430', '-94.75720'), ('NARY', None, '47.36690', '-94.82310'), ('NEVIS', 364, '46.96530', '-94.83920'), ('PARK RAPIDS', 3276, '46.91750', '-95.06010')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGF'}, -'MNZ023': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALIDA', None, '47.38360', '-95.23440'), ('EBRO', None, '47.49560', '-95.52920'), ('LAKE ITASCA', None, '47.25390', '-95.21220'), ('LONG LOST LAKE', None, '47.19360', '-95.41810'), ('LOWER RICE LAKE', None, '47.34910', '-95.47210'), ('ROY LAKE', None, '47.32530', '-95.55140'), ('UPPER RICE LAKE', None, '47.39370', '-95.29690'), ('ZERKEL', None, '47.31080', '-95.38140')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ022': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEAULIEU', None, '47.33560', '-95.80420'), ('BEJOU', 94, '47.44180', '-95.97200'), ('ISLAND_LAKE', None, '47.44860', '-95.65140'), ('MAHKONCE', None, '47.32440', '-95.61530'), ('MAHNOMEN', 1202, '47.31480', '-95.96910'), ('NAYTAHWAUSH', 583, '47.26280', '-95.62580'), ('PINE BEND', None, '47.42640', '-95.59080'), ('TULABY LAKE', None, '47.15250', '-95.60420'), ('WAUBUN', 403, '47.18410', '-95.93950')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MNZ021': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('GRAND MARAIS', 1353, '47.75520', '-90.34480'), ('GRAND PORTAGE', None, '47.96390', '-89.68500'), ('HOVLAND', None, '47.83880', '-89.97230'), ('LUTSEN', None, '47.63690', '-90.71080'), ('TACONITE HARBOR', None, '47.52410', '-90.92170'), ('TOFTE', None, '47.55970', '-90.88080')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MNZ020': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALGER', None, '47.14720', '-91.69270'), ('BEAVER BAY', 175, '47.25690', '-91.29860'), ('CASTLE DANGER', None, '47.12090', '-91.50340'), ('CLEAR LAKE', 266, '47.64010', '-91.11940'), ('FINLAND', None, '47.41480', '-91.24910'), ('KNIFE RIVER', None, '46.95010', '-91.78340'), ('LARSMONT', None, '46.97930', '-91.74580'), ('LITTLE MARAIS', None, '47.41090', '-91.11030'), ('SILVER BAY', 2068, '47.29190', '-91.27860'), ('TWO HARBORS', 3613, '47.03030', '-91.67570')], 'partOfState': 'NORTHEAST', 'wfo': 'DLH'}, -'MNZ029': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BRECKENRIDGE', 3559, '46.26360', '-96.58780'), ('BRUSHVALE', None, '46.36940', '-96.64310'), ('CAMPBELL', 241, '46.09790', '-96.40540'), ('DORAN', 59, '46.18520', '-96.48560'), ('EVERDELL', None, '46.26750', '-96.40780'), ('FOXHOME', 143, '46.27670', '-96.31020'), ('KENT', 120, '46.43960', '-96.68440'), ('LAWNDALE', None, '46.55690', '-96.36000'), ('MCCAULEYVILLE', None, '46.44170', '-96.70750'), ('NASHUA', 69, '46.03600', '-96.30470'), ('ROTHSAY', 497, '46.47470', '-96.28670'), ('TENNEY', 6, '46.04430', '-96.45400'), ('WOLVERTON', 122, '46.56470', '-96.73550')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGF'}, -'MNZ028': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BAD MEDICINE LAKE', None, '47.12690', '-95.40080'), ('EVERGREEN', None, '46.76000', '-95.45060'), ('HEIGHT OF LAND LAKE', None, '46.89110', '-95.60830'), ('MANY POINT LAKE', None, '47.07670', '-95.53470'), ('MIDWAY', None, '46.78190', '-95.26000'), ('OSAGE', None, '46.92030', '-95.25670'), ('PONSFORD', None, '46.97000', '-95.38360'), ('SNELLMAN', None, '46.88940', '-95.41280'), ('TOAD LAKE', None, '46.86440', '-95.48970'), ('TWO INLETS', None, '47.05280', '-95.21720'), ('WOLF LAKE', 31, '46.80290', '-95.35510')], 'partOfState': 'NORTHWEST', 'wfo': 'FGF'}, -'MOZ035': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CENTER', 644, '39.50980', '-91.52850'), ('ILASCO', None, '39.67150', '-91.31070'), ('NEW LONDON', 1001, '39.58420', '-91.39880'), ('PERRY', 666, '39.43000', '-91.66790'), ('RENSSELAER', 145, '39.67070', '-91.54780'), ('SAVERTON', None, '39.64380', '-91.26980'), ('SPAULDING', None, '39.61860', '-91.52660'), ('THE LANDING', None, '39.55940', '-91.65900')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'MOZ034': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DUNCANS BRIDGE', None, '39.57560', '-92.26380'), ('FLORIDA', 9, '39.49330', '-91.79010'), ('GRANVILLE', None, '39.56260', '-92.09770'), ('HOLLIDAY', 129, '39.49360', '-92.13190'), ('INDIAN CREEK', None, '39.59450', '-91.77690'), ('MADISON', 586, '39.47320', '-92.21190'), ('MONROE CITY', 2588, '39.65410', '-91.73220'), ('PARIS', 1529, '39.47710', '-92.00390'), ('SANTA FE', None, '39.36700', '-91.83300'), ('STOUTSVILLE', 44, '39.55170', '-91.85290'), ('WOODLAWN', None, '39.58300', '-92.21700')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'MOZ037': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLUE SPRINGS', 48080, '39.02200', '-94.27360'), ('BUCKNER', 2725, '39.13480', '-94.19800'), ('GRAIN VALLEY', 5160, '39.00720', '-94.20680'), ('GRANDVIEW', 24881, '38.88130', '-94.52250'), ('GREENWOOD', 3952, '38.85110', '-94.34200'), ('INDEPENDENCE', 113288, '39.08930', '-94.35340'), ('KANSAS CITY', 441545, '39.12230', '-94.55200'), ('LAKE LOTAWANA', 1872, '38.92950', '-94.25790'), ('LAKE TAPAWINGO', 843, '39.01820', '-94.31040'), ("LEE'S SUMMIT", 70700, '38.91630', '-94.38350'), ('LEVASY', 108, '39.13310', '-94.13230'), ('LONE JACK', 528, '38.87040', '-94.16640'), ('OAK GROVE', 5535, '39.00350', '-94.12570'), ('RAYTOWN', 30388, '38.99490', '-94.46520'), ('SIBLEY', 347, '39.17920', '-94.19690'), ('SUGAR CREEK', 3839, '39.13810', '-94.41120'), ('UNITY VILLAGE', 140, '38.95050', '-94.40150')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'MOZ036': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANNADA', 48, '39.26220', '-90.82850'), ('ASHBURN', 51, '39.54630', '-91.17100'), ('ASHLEY', None, '39.24940', '-91.22230'), ('BOWLING GREEN', 3260, '39.33900', '-91.19560'), ('CLARKSVILLE', 490, '39.37180', '-90.90560'), ('CURRYVILLE', 251, '39.34590', '-91.34250'), ('CYRENE', None, '39.28650', '-91.10780'), ('EDGEWOOD', None, '39.27130', '-91.07580'), ('EOLIA', 435, '39.23990', '-91.01120'), ('FRANKFORD', 351, '39.49320', '-91.32070'), ('LOUISIANA', 3863, '39.44350', '-91.05920'), ('NEW HARTFORD', None, '39.20000', '-91.28300'), ('PAYNESVILLE', 91, '39.26220', '-90.89960'), ('SPENCERBURG', None, '39.42180', '-91.38760'), ('ST. CLEMENT', None, '39.28300', '-91.20980')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'NMZ007': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('AMISTAD', None, '35.91900', '-103.15300'), ('CLAYTON', 2524, '36.45070', '-103.17510'), ('GLADSTONE', None, '36.30500', '-103.97300'), ('GRENVILLE', 25, '36.59290', '-103.61270'), ('HAYDEN', None, '35.96800', '-103.27100'), ('MOUNT DORA', None, '36.51900', '-103.48900'), ('SEDAN', None, '36.14400', '-103.13000'), ('SENECA', None, '36.62800', '-103.12600')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'NMZ006': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BUEYEROS', None, '35.97900', '-103.68700'), ('CHICOSA LAKE STATE PARK', None, '36.05000', '-104.16700'), ('MILLS', None, '36.08500', '-104.25500'), ('ROSEBUD', None, '35.84100', '-103.44500'), ('ROY', 304, '35.94540', '-104.19630'), ('SOLANO', None, '35.84800', '-104.06700'), ('YATES', None, '36.13000', '-103.90100')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'NMZ005': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABBOTT', None, '36.30600', '-104.25800'), ('BUENA VISTA', None, '35.91400', '-105.24900'), ('CAPULIN', None, '36.74100', '-103.99300'), ('CIMARRON', 917, '36.50990', '-104.91260'), ('DES MOINES', 177, '36.76130', '-103.83330'), ('FARLEY', None, '36.35300', '-104.03900'), ('FOLSOM', 75, '36.84810', '-103.91770'), ('GOLONDRINAS', None, '35.88900', '-105.18600'), ('LA CUEVA', None, '35.94200', '-105.24900'), ('LAS VEGAS', 14565, '35.59920', '-105.21960'), ('LOS MONTOYAS', None, '35.41900', '-105.20700'), ('MAES', None, '35.68300', '-104.60000'), ('MAXWELL', 274, '36.54050', '-104.54210'), ('MIAMI', None, '36.35000', '-104.79300'), ('OCATE', None, '36.17600', '-105.04800'), ('OJO FELIZ', None, '36.05800', '-105.11800'), ('PHILMONT SCOUT RANCH', None, '36.48300', '-104.93300'), ('RAINSVILLE', None, '35.97900', '-105.20900'), ('RATON', 7282, '36.88570', '-104.44150'), ('RATON CREWS AIRPORT', None, '36.73300', '-104.50000'), ('RAYADO', None, '36.36900', '-104.92600'), ('ROMEROVILLE', None, '35.52300', '-105.24400'), ('SAN ANTONIO', None, '35.62900', '-105.24500'), ('SAN AUGUSTIN', None, '35.45800', '-105.14500'), ('SAPELLO', None, '35.77300', '-105.25300'), ('SHOEMAKER', None, '35.81600', '-104.87600'), ('SPRINGER', 1285, '36.36620', '-104.59310'), ('SUGARITE', None, '36.94400', '-104.38100'), ('TECOLOTITO', None, '35.23400', '-105.15900'), ('TREMENTINA', None, '35.47000', '-104.52700'), ('TRUJILLO', None, '35.53500', '-104.69100'), ('VALMORA', None, '35.81600', '-104.92300'), ('VARIADERO', None, '35.38800', '-104.45900'), ('WAGON MOUND', 369, '36.00290', '-104.71430'), ('WATROUS', None, '35.79100', '-104.98100')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'NMZ004': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('AMALIA', None, '36.94200', '-105.45400'), ('ANGEL FIRE', 1048, '36.39060', '-105.27870'), ('ARROYO HONDO', None, '36.53600', '-105.66900'), ('ARROYO SECO', None, '36.51700', '-105.56900'), ('BLACK LAKE', None, '36.29800', '-105.25800'), ('CANON', None, '35.94300', '-105.36900'), ('CANONCITO', None, '36.18100', '-105.83200'), ('CERRO', None, '36.75400', '-105.61200'), ('CHACON', None, '36.14400', '-105.36700'), ('CHAMISAL', 301, '36.17670', '-105.74900'), ('CHUPADERO', 318, '35.82300', '-105.91600'), ('CLEVELAND', None, '35.99300', '-105.37000'), ('CORDOVA', None, '36.00700', '-105.86000'), ('COSTILLA', None, '36.97600', '-105.53100'), ('COWLES', None, '35.81200', '-105.65900'), ('EAGLE NEST', 306, '36.55300', '-105.26080'), ('EL PADRO', None, '36.43200', '-105.57400'), ('EL TURQUILLO', None, '36.08000', '-105.25100'), ('ELIZABETHTOWN', None, '36.61900', '-105.28400'), ('GASCON', None, '35.88700', '-105.44600'), ('GUADALUPITA', None, '36.13800', '-105.23800'), ('HOLMAN', None, '36.03800', '-105.38300'), ('LAMA', None, '36.65000', '-105.61800'), ('LEDOUX', None, '35.92400', '-105.36100'), ('LLANO', None, '36.14000', '-105.68100'), ('LLANO LARGO', None, '36.14100', '-105.65900'), ('LOS CORDOVAS', None, '36.38700', '-105.63700'), ('LUCEROS', None, '36.01600', '-105.22800'), ('MONTE APLANADO', None, '35.95500', '-105.39400'), ('MORA', None, '35.97400', '-105.32900'), ('OJO SARCO', None, '36.12300', '-105.78300'), ('PENASCO', 572, '36.17120', '-105.69190'), ('PICURIS PUEBLO', 86, '36.20100', '-105.70900'), ('PILAR', None, '36.27000', '-105.78800'), ('QUESTA', 1864, '36.71090', '-105.59270'), ('RANCHOS DE TAOS', 2390, '36.36290', '-105.60330'), ('RED RIVER', 484, '36.70750', '-105.40670'), ('RINCONADA', None, '36.21800', '-105.87300'), ('RIO LUCIO', 379, '36.19600', '-105.72500'), ('ROCIADA', None, '35.83200', '-105.42000'), ('RODARTE', None, '36.15200', '-105.67200'), ('SAN CRISTOBAL', None, '36.59600', '-105.63900'), ('SHADY BROOK', None, '36.37000', '-105.46700'), ('SOUTH CARMEN', None, '35.89400', '-105.33600'), ('SUNSHINE VALLEY', None, '36.84200', '-105.65800'), ('TALPA', None, '36.34100', '-105.59600'), ('TAOS', 4700, '36.38620', '-105.57720'), ('TAOS PUEBLO', 1264, '36.46930', '-105.55950'), ('TERERRO', None, '35.74200', '-105.67400'), ('TRES RITOS', None, '36.13100', '-105.51500'), ('TRUCHAS', None, '36.04400', '-105.81100'), ('UPPER COLONIAS', None, '35.57600', '-105.58400'), ('UTE PARK', None, '36.55800', '-105.11400'), ('VADITO', 242, '36.19110', '-105.67710'), ('VALDEZ', None, '36.53400', '-105.58300')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'ABQ'}, -'NMZ009': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ADELINO', None, '34.71600', '-106.73100'), ('ALAMEDA', None, '35.18700', '-106.61800'), ('ALBUQUERQUE', 448607, '35.11720', '-106.62460'), ('BELEN', 6901, '34.65870', '-106.77900'), ('BOSQUE FARMS', 3931, '34.85480', '-106.70090'), ('ISLETA PUEBLO', None, '34.88220', '-106.68340'), ('JARALES', 1434, '34.61300', '-106.76300'), ('LOS CHAVEZ', None, '34.73000', '-106.76080'), ('LOS LUNAS', 10034, '34.81330', '-106.73810'), ('LOS RANCHOS DE ALBUQUERQU', None, '35.16510', '-106.64900'), ('LOS TRUJILLOS-GABALDON', 2166, '34.66130', '-106.75520'), ('MEADOW LAKE', 4491, '34.80200', '-106.59070'), ('NORTH VALLEY', 11923, '35.17320', '-106.62270'), ('PAJARITO', None, '34.98600', '-106.69600'), ('PARADISE HILLS', None, '35.19650', '-106.69430'), ('PERALTA', 3750, '34.82950', '-106.68740'), ('RIO COMMUNITIES', 4213, '34.64410', '-106.71800'), ('SOUTH VALLEY', 39060, '35.01000', '-106.67750'), ('TOME-ADELINO', 2211, '34.73150', '-106.72070'), ('VALENCIA', 4500, '34.79600', '-106.69100')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'NMZ008': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ACOMA PUEBLO', None, '34.89600', '-107.58100'), ('ACOMITA LAKE', 312, '35.07020', '-107.61300'), ('ALLISON', None, '35.52400', '-108.78400'), ('BIBO', None, '35.17400', '-107.38800'), ('BLACK ROCK', 1252, '35.08600', '-108.79000'), ('BLUEWATER LAKE', None, '35.30000', '-108.08300'), ('CEBOLLETA', None, '35.17400', '-107.39600'), ('CHI CHIL TAH', None, '35.24900', '-108.90700'), ('CHURCH ROCK', 1077, '35.53400', '-108.59900'), ('COOLIDGE', None, '35.44700', '-108.36300'), ('COYOTE CANYON', None, '35.77500', '-108.62000'), ('CRYSTAL', 347, '36.04600', '-108.96600'), ('CUBERO', None, '35.08600', '-107.51800'), ('EL MORRO', None, '35.04400', '-108.32000'), ('ENCINAL', 200, '35.11700', '-107.46400'), ('FENCE LAKE', None, '34.65300', '-108.67700'), ('FORT WINGATE', None, '35.46800', '-108.54100'), ('GALLUP', 20209, '35.52040', '-108.73540'), ('GAMERCO', None, '35.57200', '-108.76500'), ('GRANTS', 8806, '35.15340', '-107.83830'), ('LAGUNA PUEBLO', None, '35.04100', '-107.37300'), ('LUNA', None, '33.81900', '-108.95400'), ('MANUELITO', None, '35.42200', '-108.99300'), ('MARIANO LAKE', None, '35.57800', '-108.32100'), ('MARQUEZ', None, '35.31400', '-107.30200'), ('MCCARTYS', None, '35.06300', '-107.66900'), ('MCGAFFEY', None, '35.37500', '-108.51500'), ('MENTMORE', None, '35.51400', '-108.84500'), ('MESITA', 776, '35.01310', '-107.33070'), ('MEXICAN SPRINGS', None, '35.78750', '-108.80730'), ('MILAN', 1891, '35.18900', '-107.89200'), ('NAVAJO', 2097, '35.89630', '-109.03140'), ('NEW LAGUNA', None, '35.04100', '-107.42100'), ('NORTH ACOMITA VILLAGE', 288, '35.06320', '-107.56540'), ('OJO CALIENTE', None, '34.91700', '-108.96800'), ('OMEGA', None, '34.32300', '-108.37400'), ('PAGUATE', 474, '35.13460', '-107.36380'), ('PARAJE', 669, '35.04610', '-107.46730'), ('PESCADO', None, '35.10600', '-108.58000'), ('PIETOWN', None, '34.29800', '-108.13400'), ('PINE HILL', None, '35.00000', '-108.40000'), ('PINEDALE', None, '35.60400', '-108.44600'), ('PREWITT', None, '35.36300', '-108.04300'), ('QUEMADO LAKE', None, '34.33400', '-108.49500'), ('RAMAH', 407, '35.13300', '-108.49100'), ('RED HILL', None, '34.21900', '-108.87200'), ('RED ROCK STATE PARK', None, '35.45400', '-108.75500'), ('SALT LAKE', None, '34.45300', '-108.76900'), ('SAN FIDEL', None, '35.08200', '-107.59900'), ('SAN MATEO', None, '35.33100', '-107.64300'), ('SAN RAFAEL', None, '35.11300', '-107.88200'), ('SEAMA', 333, '35.04740', '-107.52750'), ('SKYLINE-GANIPA', 1035, '35.03460', '-107.61530'), ('THOREAU', 1863, '35.40300', '-108.22300'), ('TOHATCHI', 1037, '35.85020', '-108.75010'), ('TSE BONITO', 261, '35.67500', '-109.04100'), ('TWIN LAKES', 1069, '35.70900', '-108.77400'), ('UPPER NUTRIA', None, '35.27000', '-108.57000'), ('WASHINGTON PASS', None, '36.07600', '-108.85800'), ('WHITEWATER', None, '35.26700', '-108.76700'), ('YAH-TA-HEY', 580, '35.62800', '-108.78000'), ('ZUNI PUEBLO', 6367, '35.07250', '-108.85000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABQ'}, -'MOZ039': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARROW ROCK', 79, '39.07000', '-92.94800'), ('BLACKBURN', 284, '39.10490', '-93.48610'), ('EMMA', 243, '38.97650', '-93.49550'), ('GILLIAM', 229, '39.23280', '-93.00370'), ('GRAND PASS', 53, '39.20520', '-93.44320'), ('MALTA BEND', 249, '39.19430', '-93.36410'), ('MARSHALL', 12433, '39.11500', '-93.20220'), ('MIAMI', 160, '39.32170', '-93.22550'), ('MOUNT LEONARD', 123, '39.12500', '-93.39470'), ('NELSON', 212, '38.99350', '-93.03030'), ('SLATER', 2083, '39.22280', '-93.06470'), ('SWEET SPRINGS', 1628, '38.96420', '-93.41640')], 'partOfState': 'CENTRAL', 'wfo': 'EAX'}, -'MOZ038': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALMA', 399, '39.09580', '-93.54800'), ('AULLVILLE', 86, '39.01820', '-93.67750'), ('BATES CITY', 245, '39.00620', '-94.07020'), ('CONCORDIA', 2360, '38.98760', '-93.56840'), ('CORDER', 427, '39.09950', '-93.63860'), ('DOVER', 108, '39.19450', '-93.68950'), ('HIGGINSVILLE', 4682, '39.06480', '-93.72650'), ('LEXINGTON', 4453, '39.18210', '-93.87490'), ('MAYVIEW', 294, '39.05260', '-93.83390'), ('NAPOLEON', 208, '39.13230', '-94.08840'), ('ODESSA', 4818, '38.99700', '-93.95480'), ('WAVERLY', 806, '39.20660', '-93.51990'), ('WELLINGTON', 784, '39.13620', '-93.98770')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'TXZ185': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BARKSDALE', None, '29.70000', '-100.03330'), ('CAMP WOOD', 822, '29.66890', '-100.01130'), ('LEAKEY', 387, '29.72440', '-99.76220'), ('RIO FRIO', None, '29.63330', '-99.73330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ184': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CARTA VALLEY', None, '29.80000', '-100.68330'), ('ROCKSPRINGS', 1285, '30.01680', '-100.21180')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ187': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BANDERA', 957, '29.72480', '-99.07380'), ('LAKEHILLS', 4668, '29.60440', '-98.94290'), ('LOST MAPLES STATE PARK', None, '29.84000', '-99.59000'), ('MEDINA', 2960, '29.80000', '-99.25000'), ('PIPE CREEK', None, '29.71660', '-98.93330'), ('TARPLEY', None, '29.63330', '-99.28330'), ('VANDERPOOL', None, '29.73700', '-99.55280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ186': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CAMP VERDE', None, '29.88330', '-99.10000'), ('CENTER POINT', None, '29.93330', '-99.03330'), ('HUNT', None, '30.06670', '-99.33330'), ('INGRAM', 1740, '30.07850', '-99.23670'), ('KERR WILDLIFE MGMT AREA', None, '30.09000', '-99.50000'), ('KERRVILLE', 20425, '30.04190', '-99.13610'), ('KERRVILLE STATE PARK', None, '30.04000', '-99.13600'), ('MOUNTAIN HOME', None, '30.16670', '-99.36670')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ181': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BROOKELAND', None, '31.12920', '-93.98970'), ('BUNA', 2269, '30.44430', '-93.96170'), ('EVADALE', 1430, '30.33860', '-94.06120'), ('GIST', None, '30.27420', '-93.90560'), ('HOLLY SPRINGS', None, '30.89690', '-93.88390'), ('JASPER', 8247, '30.92040', '-93.99510'), ('KIRBYVILLE', 2085, '30.65790', '-93.89990'), ('MAGNOLIA SPRINGS', None, '30.73530', '-94.02640'), ('MT. UNION', None, '30.69900', '-94.02300'), ('ROGANVILLE', None, '30.80000', '-93.90330'), ('SAM RAYBURN DAM', None, '31.06140', '-94.10640')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXZ180': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHESTER', 265, '30.92260', '-94.60260'), ('COLMESNEIL', 638, '30.90900', '-94.42310'), ('FRED', None, '30.57640', '-94.17610'), ('HILLISTER', None, '30.66750', '-94.38110'), ('IVANHOE', None, '30.68440', '-94.41310'), ('ROCKLAND', None, '31.00000', '-94.38200'), ('SPURGER', None, '30.69300', '-94.17800'), ('TOWN BLUFF', None, '30.79080', '-94.18030'), ('WARREN', None, '30.61440', '-94.40830'), ('WOODVILLE', 2415, '30.77410', '-94.42240')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXZ183': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COMSTOCK', None, '29.68330', '-101.16670'), ('DEL RIO', 33867, '29.37630', '-100.89570'), ('JUNO', None, '30.15000', '-101.11670'), ('LANGTRY', None, '29.81670', '-101.56670'), ('LAUGHLIN AFB', 2225, '29.35570', '-100.78380'), ('LOMA ALTA', None, '29.91670', '-100.76670'), ('PANDALE', None, '30.18330', '-101.55000'), ('SEMINOLE CANYON STATE PAR', None, '29.70000', '-101.34000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ182': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLEAKWOOD', None, '30.69220', '-93.82500'), ('BON WEIR', None, '30.73970', '-93.66330'), ('BURKEVILLE', None, '30.99970', '-93.66780'), ('CALL', None, '30.61250', '-93.87390'), ('DEWEYVILLE', 1190, '30.30690', '-93.75790'), ('FARRSVILLE', None, '30.98390', '-93.80750'), ('JAMESTOWN', None, '30.92280', '-93.82640'), ('NEWTON', 2459, '30.85050', '-93.75280'), ('TOLEDO BEND DAM', None, '31.17420', '-93.56670'), ('WIERGATE', None, '30.99940', '-93.70750')], 'partOfState': 'SOUTHEAST', 'wfo': 'LCH'}, -'TXZ189': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BANKERSMITH', None, '30.13330', '-98.81670'), ('BERGHEIM', None, '29.81670', '-98.58330'), ('BOERNE', 6178, '29.80150', '-98.73850'), ('COMFORT', 2358, '29.97230', '-98.90280'), ('KENDALIA', None, '29.96670', '-98.51670'), ('SISTERDALE', None, '29.96670', '-98.73330'), ('WARING', None, '29.95000', '-98.80000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'TXZ188': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FREDERICKSBURG', 8911, '30.27050', '-98.87220'), ('HARPER', 1006, '30.30000', '-99.25000'), ('LBJ STATE PARK', None, '30.24000', '-98.63000'), ('LUCKENBACH', None, '30.18330', '-98.75000'), ('WILLOW CITY', None, '30.40000', '-98.70000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'EWX'}, -'KSZ055': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BURLINGAME', 1017, '38.75390', '-95.83470'), ('CARBONDALE', 1478, '38.81860', '-95.68890'), ('LYNDON', 1038, '38.61000', '-95.68420'), ('MELVERN', 429, '38.50690', '-95.63750'), ('MELVERN LAKE', None, '38.50000', '-95.79000'), ('OLIVET', 64, '38.48060', '-95.75140'), ('OSAGE CITY', 3034, '38.63390', '-95.82560'), ('OVERBROOK', 947, '38.78060', '-95.55700'), ('POMONA LAKE', None, '38.67000', '-95.58000'), ('QUENEMO', 468, '38.57970', '-95.52670'), ('SCRANTON', 724, '38.78170', '-95.73830')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'NVZ019': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('GOODSPRINGS', 232, '35.83330', '-115.43330'), ('MT. CHARLESTON', None, '36.28330', '-115.61660'), ('MT. POTOSI', None, '35.96670', '-115.50000'), ('RED ROCK CANYON', None, '36.14000', '-115.45330'), ('SPRING MOUNTAIN RANCH', None, '36.07330', '-115.45000')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, -'NVZ018': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('HAYFORD PK', None, '36.65830', '-115.19910')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, -'NVZ013': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BLUE EAGLE RANCH', None, '38.53330', '-115.55000'), ('DUCKWATER', None, '38.90000', '-115.71660'), ('GABBS', 318, '38.86770', '-117.92150'), ('MANHATTAN', None, '38.52080', '-117.06660'), ('ROUND MOUNTAIN', None, '38.71660', '-117.06670'), ('TONOPAH', 2627, '38.06660', '-117.23000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LKN'}, -'NVZ017': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('AMARGOSA VALLEY', None, '36.64160', '-116.39660'), ('INDIAN SPRINGS', 1302, '36.57080', '-115.66660'), ('LATHROP WELLS', None, '36.66660', '-116.38330'), ('MERCURY', None, '36.67000', '-116.00500'), ('PAHRUMP', 24631, '36.20830', '-115.99160'), ('SANDY VALLEY', 1804, '35.80000', '-115.60000')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, -'NVZ016': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BUNKERVILLE', 1014, '36.78000', '-114.10990'), ('LOGANDALE', None, '36.61660', '-114.48330'), ('MESQUITE', 9389, '36.79100', '-114.07250'), ('MOAPA', None, '36.66660', '-114.61660'), ('VALLEY OF FIRE STATE PARK', None, '36.43330', '-114.51660')], 'partOfState': 'SOUTHERN', 'wfo': 'VEF'}, -'NVZ015': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('ALAMO', None, '37.35250', '-115.15250'), ('BEAVER DAM', None, '37.50500', '-114.05000'), ('CALIENTE', 1123, '37.61560', '-114.51450'), ('CARP', None, '37.10660', '-114.48330'), ('EAGLE VALLEY', None, '38.03330', '-114.18330'), ('ELGIN', None, '37.35000', '-114.53660'), ('HIKO', None, '37.60000', '-115.21660'), ('PANACA', None, '37.78330', '-114.38330'), ('PIOCHE', None, '37.93330', '-114.45000'), ('RACHEL', None, '37.63330', '-115.71660'), ('URSINE', None, '37.98300', '-114.20000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'VEF'}, -'NVZ014': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BEATTY', 1154, '36.91020', '-116.76000'), ('BOUNDARY PEAK', None, '37.85000', '-118.35000'), ('COALDALE', None, '38.03330', '-117.87500'), ('DYER', None, '37.61660', '-118.03100'), ('GOLD POINT', None, '37.35500', '-117.36330'), ('GOLDFIELD', None, '37.70000', '-117.23330'), ('LIDA', None, '37.45830', '-117.49660'), ('LIDA JUNCTION', None, '37.50000', '-117.18750'), ('SCOTTYS JUNCTION', None, '37.30000', '-117.04330'), ('SILVER PEAK', None, '37.76670', '-117.46660')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'VEF'}, -'TXZ239': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AGUILARES', None, '27.45416', '-99.10000'), ('BRUNI', 412, '27.42770', '-98.84380'), ('COLUMBIA BRIDGE', None, '27.71190', '-99.73180'), ('EL CENIZO', 3545, '27.34580', '-99.49690'), ('LAREDO', 176576, '27.53430', '-99.48660'), ('LAS TIENDAS', None, '27.89580', '-99.62580'), ('MIRANDO CITY', 493, '27.43080', '-98.93190'), ('OILTON', 310, '27.45000', '-98.91388'), ('ORVIL', None, '27.62580', '-99.49690'), ('RIO BRAVO', 5553, '27.36166', '-99.47666')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ238': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BACLIFF', 6962, '29.50820', '-94.99190'), ('BAYOU VISTA', 1644, '29.32530', '-94.93780'), ('CLEAR LAKE SHORES', 1205, '29.54820', '-95.03390'), ('DICKINSON', 17093, '29.45370', '-95.06630'), ('FRIENDSWOOD', 29037, '29.51230', '-95.19770'), ('HITCHCOCK', 6386, '29.31570', '-95.01730'), ('JAMAICA BEACH', 1075, '29.19120', '-94.97980'), ('KEMAH', 2330, '29.52880', '-95.02050'), ('LA MARQUE', 13682, '29.36700', '-94.99330'), ('LEAGUE CITY', 45444, '29.48560', '-95.10750'), ('SAN LEON', 4365, '29.48860', '-94.93830'), ('SANTA FE', 9548, '29.38200', '-95.09830'), ('TEXAS CITY', 41521, '29.40940', '-94.95800')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ237': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALVIN', 21413, '29.43210', '-95.24600'), ('ANGLETON', 18130, '29.16690', '-95.42760'), ("BAILEY'S PRAIRIE", 694, '29.15340', '-95.49430'), ('BONNEY', 384, '29.30170', '-95.45850'), ('BRAZORIA', 2787, '29.04710', '-95.56820'), ('BROOKSIDE VILLAGE', 1960, '29.58940', '-95.31630'), ('CLUTE', 10424, '29.02460', '-95.39750'), ('DANBURY', 1611, '29.22660', '-95.34570'), ('FREEPORT', 12708, '28.95140', '-95.36430'), ('HILLCREST', 722, '29.39210', '-95.22260'), ('HOLIDAY LAKES', 1095, '29.20880', '-95.51420'), ('IOWA COLONY', 804, '29.44270', '-95.41540'), ('JONES CREEK', 2130, '28.97460', '-95.46780'), ('LAKE JACKSON', 26386, '29.04190', '-95.44630'), ('LIVERPOOL', 404, '29.29900', '-95.27730'), ('MANVEL', 3046, '29.48380', '-95.35960'), ('OYSTER CREEK', 1192, '28.99740', '-95.33050'), ('PEARLAND', 37640, '29.55560', '-95.27550'), ('QUINTANA', 38, '28.93050', '-95.31580'), ('RICHWOOD', 3012, '29.05800', '-95.40750'), ('SURFSIDE BEACH', 763, '28.95380', '-95.28220'), ('SWEENY', 3624, '29.04530', '-95.69930'), ('WEST COLUMBIA', 4255, '29.14150', '-95.64810'), ('WILD PEACH VILLAGE', 2498, '29.08340', '-95.63370')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ236': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAY CITY', 18667, '28.97860', '-95.96340'), ('MARKHAM', 1138, '28.96380', '-96.06340'), ('PALACIOS', 5153, '28.71360', '-96.23580'), ('VAN VLECK', 1411, '29.03610', '-95.88180')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ235': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('EDNA', 5899, '28.97400', '-96.64730'), ('GANADO', 1915, '29.04210', '-96.51140'), ('LA WARD', 200, '28.84760', '-96.46540')], 'partOfState': 'SOUTHEAST', 'wfo': 'HGX'}, -'TXZ234': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLOOMINGTON', 2562, '28.63333', '-96.88333'), ('DACOSTA', None, '28.71666', '-96.88333'), ('INEZ', 1787, '28.88333', '-96.78333'), ('MCFADDIN', None, '28.51666', '-97.01666'), ('MISSION VALLEY', None, '28.85050', '-97.15670'), ('NURSERY', None, '28.91666', '-97.10300'), ('PLACEDO', None, '28.66666', '-96.83333'), ('TELFERNER', None, '28.83333', '-96.83333'), ('VICTORIA', 60603, '28.82420', '-96.98290')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ233': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BERCLAIR', None, '28.50000', '-97.53333'), ('CHARCO', None, '28.73270', '-97.62880'), ('FANNIN', None, '28.69270', '-97.21690'), ('GOLIAD', 1975, '28.66970', '-97.39160'), ('SCHROEDER', None, '28.80470', '-97.21690'), ('WEESATCHE', None, '28.83333', '-97.41666')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ232': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BEEVILLE', 13129, '28.40560', '-97.74910'), ('NORMANNA', 121, '28.53333', '-97.79166'), ('PAWNEE', 201, '28.64266', '-98.00500'), ('PETTUS', 608, '28.57580', '-97.80000'), ('SKIDMORE', 1013, '28.23333', '-97.68333'), ('TYNAN', 301, '28.15530', '-97.73333')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ231': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANNAROSE', None, '28.08770', '-98.16690'), ('CHOKE CANYON', None, '28.50880', '-98.31580'), ('CLEGG', None, '28.12500', '-98.29000'), ('DINERO', None, '28.20500', '-97.93333'), ('ESSEVILLE', None, '28.67270', '-98.22000'), ('GEORGE WEST', 2524, '28.33030', '-98.11770'), ('LAGARTO', None, '28.08833', '-97.93333'), ('LAKE CORPUS CHRISTI', None, '28.12880', '-97.87500'), ('NELL', None, '28.69583', '-98.07500'), ('OAKVILLE', None, '28.41380', '-98.06190'), ('RAY POINT', None, '28.47500', '-98.08333'), ('SIMMONS', None, '28.39166', '-98.30416'), ('THREE RIVERS', 1878, '28.46560', '-98.17790'), ('WHITSETT', None, '28.62383', '-98.27777')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ230': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CALLIHAM', None, '28.46580', '-98.35580'), ('CROSS', None, '28.59690', '-98.54880'), ('LOMA ALTA', None, '28.08770', '-98.51580'), ('TILDEN', None, '28.45000', '-98.54444')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'CAZ001': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ARCATA', 16651, '40.87000', '-124.08000'), ('ARCATA ARPT', None, '40.98000', '-124.10000'), ('BAYVIEW', 2359, '40.76000', '-124.18000'), ('BLUE LAKE', 1135, '40.88000', '-123.99000'), ('CAPETOWN', None, '40.47000', '-124.37000'), ('CARLOTTA', None, '40.53000', '-124.05000'), ('CRESCENT CITY', 4006, '41.75000', '-124.20000'), ('CUTTEN', 2933, '40.77000', '-124.14000'), ('EUREKA', 26128, '40.80000', '-124.16000'), ('FAIRHAVEN', None, '40.78000', '-124.20000'), ('FERNBRIDGE', None, '40.62000', '-124.20000'), ('FERNDALE', 1382, '40.58000', '-124.26000'), ('FIELDBROOK', None, '40.97000', '-124.03000'), ('FORTUNA', 10497, '40.59000', '-124.14000'), ('FRESHWATER', None, '40.77000', '-124.07000'), ('FT DICK', None, '41.87000', '-124.15000'), ('HUMBOLDT HILL', 3246, '40.73000', '-124.19000'), ('HYDESVILLE', 1209, '40.55000', '-124.09000'), ('KLAMATH', 651, '41.52000', '-124.04170'), ('KLAMATH GLEN', None, '41.52000', '-124.00000'), ('KNEELAND', None, '40.75000', '-123.98000'), ('LOLETA', None, '40.63000', '-124.22000'), ('MYRTLETOWN', 4459, '40.79000', '-124.13000'), ('ORICK', None, '41.28000', '-124.07000'), ('PINE HILLS', 3108, '40.73000', '-124.15000'), ('REQUA', None, '41.55000', '-124.07000'), ('RIO DELL', 3174, '40.50000', '-124.11000'), ('ROHNERVILLE', None, '40.57000', '-124.13000'), ('SAMOA', None, '40.82000', '-124.18000'), ('SCOTIA', None, '40.48000', '-124.10000'), ('SMITH RIVER', None, '41.93000', '-124.15000'), ('WESTHAVEN-MOONSTONE', 1044, '41.04000', '-124.10000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'CAZ002': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BOONVILLE', None, '39.00000', '-123.37000'), ('BRANSCOMB', None, '39.65000', '-123.63000'), ('COMPTCHE', None, '39.27000', '-123.60000'), ('FORT BRAGG', 7026, '39.44000', '-123.80000'), ('GUALALA', None, '38.77000', '-123.53000'), ('MANCHESTER', None, '38.97000', '-123.68000'), ('NAVARRO', None, '39.15000', '-123.53000'), ('PHILO', None, '39.07000', '-123.43000'), ('POINT ARENA', 474, '38.91000', '-123.69000'), ('ROCKPORT', None, '39.75000', '-123.82000'), ('SHELTER COVE', None, '40.03000', '-124.05000'), ('YORKVILLE', None, '38.90000', '-123.22000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'CAZ003': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALDERPOINT', None, '40.18000', '-123.60000'), ('BENBOW', None, '40.07000', '-123.78000'), ('BLOCKSBURG', None, '40.28000', '-123.63000'), ('BRICELAND', None, '40.10000', '-123.90000'), ('BRIDGEVILLE', None, '40.47000', '-123.80000'), ('BULL CREEK', None, '40.35000', '-124.03000'), ('DINSMORE', None, '40.48000', '-123.60000'), ('ETTERSBURG', None, '40.13000', '-124.00000'), ('FT SEWARD', None, '40.22000', '-123.65000'), ('GARBERVILLE', None, '40.10000', '-123.80000'), ('GASQUET', None, '41.85000', '-123.97000'), ('HONEYDEW', None, '40.23000', '-124.12000'), ('MAPLE CREEK', None, '40.77000', '-123.87000'), ('MIRANDA', None, '40.23000', '-123.82000'), ('MYERS FLAT', None, '40.27000', '-123.88000'), ('ORLEANS', None, '41.30000', '-123.53000'), ('PEPPERWOOD', None, '40.45000', '-123.98000'), ('PETROLIA', None, '40.32000', '-124.28000'), ('REDWAY', 1188, '40.12000', '-123.82000'), ('RICHARDSON GROVE', None, '40.02000', '-123.78000'), ('RUTH', None, '40.28000', '-123.40000'), ('SHIVELY', None, '40.43000', '-123.97000'), ('WEOTT', None, '40.33000', '-123.92000'), ('WHITEHORN', None, '40.02000', '-123.92000'), ('WILLOW CREEK', 1743, '40.88000', '-123.67000'), ('ZENIA', None, '40.20000', '-123.48000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'CAZ004': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIG BAR', None, '40.73000', '-123.25000'), ('BURNT RANCH', None, '40.82000', '-123.47000'), ('CARRVILLE', None, '41.07000', '-122.72000'), ('DEL LOMA', None, '40.78000', '-123.33000'), ('DENNY', None, '40.95000', '-123.38000'), ('DOUGLAS CITY', None, '40.65000', '-122.95000'), ('FOREST GLEN', None, '40.38000', '-123.32000'), ('HAYFORK', 2315, '40.57000', '-123.13000'), ('HELENA', None, '40.77000', '-123.13000'), ('HOOPA', None, '41.05000', '-123.67000'), ('HYAMPOM', None, '40.62000', '-123.45000'), ('JUNCTION CITY', None, '40.73000', '-123.05000'), ('LEWISTON', 1305, '40.70000', '-122.80000'), ('PEANUT', None, '40.47000', '-123.17000'), ('SALYER', None, '40.90000', '-123.57000'), ('TRINITY CENTER', None, '41.00000', '-122.70000'), ('WEAVERVILLE', 3554, '40.77000', '-122.95000'), ('WEITCHPEC', None, '41.18000', '-123.70000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'CAZ005': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BODEGA BAY', 1423, '38.32280', '-123.02980'), ('BOLINAS', 1246, '37.90560', '-122.69700'), ('BOYES HOT SPRINGS', 6665, '38.31300', '-122.48500'), ('CLOVERDALE', 6831, '38.79970', '-123.01740'), ('CORTE MADERA', 9100, '37.92360', '-122.50730'), ('COTATI', 6471, '38.32780', '-122.70950'), ('EL VERANO', 3954, '38.29770', '-122.48940'), ('ELDRIDGE', 1534, '38.33520', '-122.50690'), ('FAIRFAX', 7319, '37.98860', '-122.59380'), ('FETTERS HOT SPRINGS-AGUA', None, '38.32230', '-122.47980'), ('FORESTVILLE', 2370, '38.48110', '-122.88860'), ('GLEN ELLEN', 992, '38.35580', '-122.53840'), ('GRATON', 1815, '38.43770', '-122.86530'), ('GUERNEVILLE', 2441, '38.50810', '-122.98490'), ('HEALDSBURG', 10722, '38.61850', '-122.86280'), ('INVERNESS', 1421, '38.08510', '-122.84110'), ('KENTFIELD', 6351, '37.95030', '-122.54740'), ('LAGUNITAS-FOREST KNOLLS', 1835, '38.01520', '-122.68760'), ('LARKFIELD-WIKIUP', 7479, '38.51340', '-122.75250'), ('LARKSPUR', 12014, '37.94120', '-122.52920'), ('LUCAS VALLEY-MARINWOOD', 6357, '38.03520', '-122.56550'), ('MILL VALLEY', 13600, '37.90800', '-122.54100'), ('MONTE RIO', 1104, '38.46530', '-123.01230'), ('NOVATO', 47630, '38.09210', '-122.55670'), ('OCCIDENTAL', 1272, '38.39540', '-122.93790'), ('PETALUMA', 54548, '38.24110', '-122.62550'), ('ROHNERT PARK', 42236, '38.34780', '-122.69770'), ('ROSELAND', 6369, '38.42150', '-122.72490'), ('ROSS', 2329, '37.96180', '-122.56060'), ('SAN ANSELMO', 12378, '37.98260', '-122.56890'), ('SAN RAFAEL', 56063, '37.98110', '-122.50590'), ('SANTA ROSA', 147595, '38.44860', '-122.70080'), ('SANTA VENETIA', 4298, '38.00910', '-122.50370'), ('SAUSALITO', 7330, '37.85770', '-122.49150'), ('SEBASTOPOL', 7774, '38.39930', '-122.82590'), ('SONOMA', 9128, '38.29030', '-122.45930'), ('SOUTH SANTA ROSA', None, '38.40490', '-122.72640'), ('STRAWBERRY', 5302, '37.89700', '-122.50770'), ('TAMALPAIS-HOMESTEAD VALLE', None, '37.88840', '-122.53900'), ('TEMELEC', 1556, '38.25630', '-122.50330'), ('TIBURON', 8666, '37.88680', '-122.45680'), ('WINDSOR', 22744, '38.54570', '-122.79780'), ('WOODACRE', 1393, '38.00570', '-122.63470')], 'partOfState': '', 'wfo': 'MTR'}, -'CAZ007': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALAMO', 15626, '37.85710', '-121.99860'), ('ANTIOCH', 90532, '37.98870', '-121.79890'), ('ASHLAND', 20793, '37.69470', '-122.11540'), ('BAYVIEW-MONTALVIN', 5004, '38.00160', '-122.32270'), ('BERKELEY', 102743, '37.86720', '-122.29730'), ('BETHEL ISLAND', 2312, '38.03220', '-121.64680'), ('BLACKHAWK', None, '37.82090', '-121.90670'), ('BRENTWOOD', 23302, '37.93360', '-121.70860'), ('CASTRO VALLEY', 57292, '37.71090', '-122.06110'), ('CHERRYLAND', 13837, '37.67930', '-122.10230'), ('CLAYTON', 10762, '37.94100', '-121.92890'), ('CONCORD', 121780, '37.97330', '-121.99990'), ('CROCKETT', 3194, '38.05110', '-122.21940'), ('DANVILLE', 41715, '37.81440', '-121.97140'), ('DISCOVERY BAY', 8981, '37.90880', '-121.59520'), ('DUBLIN', 29973, '37.71590', '-121.90990'), ('EAST RICHMOND HEIGHTS', 3357, '37.94510', '-122.31260'), ('EL CERRITO', 4590, '37.92050', '-122.30210'), ('EL SOBRANTE', 12260, '37.97660', '-122.29260'), ('FAIRVIEW', 9470, '37.67860', '-122.04460'), ('FREMONT', 203413, '37.52850', '-121.99710'), ('HAYWARD', 140030, '37.62770', '-122.10460'), ('KENSINGTON', 4936, '37.90820', '-122.27730'), ('LAFAYETTE', 23908, '37.89380', '-122.11790'), ('LIVERMORE', 73345, '37.69190', '-121.76370'), ('MARTINEZ', 35866, '38.00070', '-122.11450'), ('MORAGA TOWN', None, '37.84390', '-122.12340'), ('NEWARK', 42471, '37.51930', '-122.03050'), ('OAKLAND', 399484, '37.77150', '-122.22450'), ('OAKLEY', 25619, '37.98650', '-121.71600'), ('ORINDA', 17599, '37.88090', '-122.17730'), ('PACHECO', 3562, '37.98760', '-122.06230'), ('PIEDMONT', 10952, '37.82290', '-122.22890'), ('PITTSBURG', 56769, '38.01810', '-121.88950'), ('PLEASANT HILL', 32837, '37.95370', '-122.07420'), ('PLEASANTON', 63654, '37.67240', '-121.88910'), ('RICHMOND', 99216, '37.95130', '-122.36090'), ('RODEO', 8717, '38.04550', '-122.23770'), ('SAN LEANDRO', 79452, '37.70470', '-122.16080'), ('SAN LORENZO', 21898, '37.67500', '-122.13010'), ('SAN PABLO', 30215, '37.96210', '-122.34270'), ('SAN RAMON', 44722, '37.75740', '-121.95110'), ('TARA HILLS', 5332, '37.99360', '-122.31750'), ('UNION CITY', 66869, '37.60160', '-122.01610'), ('VINE HILL', 3260, '38.01600', '-122.09150'), ('WALNUT CREEK', 64296, '37.90200', '-122.04080'), ('WEST PITTSBURG', None, '38.03820', '-121.97400')], 'partOfState': '', 'wfo': 'MTR'}, -'CAZ008': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CAMBRIAN PARK', 3258, '37.25570', '-121.92780'), ('CAMPBELL', 38138, '37.27880', '-121.95340'), ('CUPERTINO', 50546, '37.31440', '-122.04730'), ('EAST FOOTHILLS', 8133, '37.38110', '-121.81640'), ('GILROY', 41464, '37.01010', '-121.57810'), ('LEXINGTON HILLS', 2454, '37.16480', '-121.97180'), ('LOS ALTOS', 27693, '37.36920', '-122.09550'), ('LOS ALTOS HILLS', 7902, '37.36800', '-122.13930'), ('LOS GATOS', 28592, '37.23070', '-121.95980'), ('LOYOLA', 3478, '37.35140', '-122.09950'), ('MILPITAS', 62698, '37.43460', '-121.89190'), ('MONTE SERENO', 3483, '37.23830', '-121.98860'), ('MORGAN HILL', 33556, '37.13050', '-121.63960'), ('MOUNTAIN VIEW', 70708, '37.40200', '-122.07760'), ('PALO ALTO', 58598, '37.39920', '-122.13940'), ('RANCHO RINCONADA', None, '37.31500', '-122.00180'), ('SAN JOSE', 894943, '37.30400', '-121.84980'), ('SAN MARTIN', 4230, '37.08490', '-121.60630'), ('SANTA CLARA', 102361, '37.36500', '-121.96670'), ('SARATOGA', 29843, '37.26780', '-122.02300'), ('STANFORD', 13315, '37.42410', '-122.16490'), ('SUNNYVALE', 131760, '37.38580', '-122.02550')], 'partOfState': '', 'wfo': 'MTR'}, -'CAZ009': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CASTROVILLE', 6724, '36.76400', '-121.75180'), ('DEL MONTE FOREST', 4531, '36.58630', '-121.94630'), ('DEL REY OAKS', 1650, '36.59280', '-121.83730'), ('ELKHORN', 1591, '36.81090', '-121.71750'), ('LAS LOMAS', 3078, '36.86880', '-121.73100'), ('MARINA', 25101, '36.68270', '-121.79080'), ('MONTEREY', 29674, '36.60130', '-121.88180'), ('SEASIDE', 31696, '36.62140', '-121.81860')], 'partOfState': '', 'wfo': 'MTR'}, -'FLZ015': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLIGATOR PT', None, '29.89520', '-84.37750'), ('APALACHICLA MUNI A/P', None, '29.72490', '-85.02830'), ('APALACHICOLA', 2334, '29.71970', '-84.99100'), ('BAY CITY', None, '29.75700', '-85.02340'), ('BEVERLY', None, '29.85200', '-84.96860'), ('BUCK SIDING', None, '29.88640', '-84.98050'), ('CARRABELLE', 1303, '29.85240', '-84.66460'), ('CREELS', None, '29.82220', '-84.90920'), ('FORT GADSDEN', None, '29.91630', '-84.97710'), ('FRANKLIN', None, '29.76810', '-85.03830'), ('HAYS PLACE', None, '29.84000', '-84.94590'), ('HIGH BLUFF', None, '29.81860', '-84.82540'), ('LANARK VILLAGE', None, '29.88250', '-84.59580'), ('MCINTYRE', None, '29.98030', '-84.52630'), ('MORGAN PLACE', None, '30.00750', '-84.75660'), ('ST TERESA', None, '29.92980', '-84.45440'), ('TILTON', None, '29.73790', '-85.08190'), ('YENT PLACE', None, '29.86270', '-84.70040')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ014': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BEACON HILL', None, '29.92130', '-85.37900'), ('DALKEITH', None, '30.00600', '-85.15360'), ('GULF CO A/P', None, '29.75750', '-85.28910'), ('HONEYVILLE', None, '30.05690', '-85.19000'), ('HOWARD CREEK', None, '29.89990', '-85.06860'), ('OAK GROVE', None, '29.79010', '-85.29700'), ('ODENA', None, '29.73730', '-85.18700'), ('OVERSTREET', None, '29.99730', '-85.36900'), ('PORT ST. JOE', 3644, '29.80880', '-85.29610'), ('ST JOE BEACH', None, '29.90080', '-85.36210'), ('WETAPPO', None, '30.15010', '-85.30010'), ('WEWAHITCHKA', 1722, '30.10980', '-85.20050'), ('WHITE CITY', 4221, '29.88490', '-85.21970')], 'partOfState': '', 'wfo': 'TAE'}, -'ALZ009': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('BRIDGEPORT', 2728, '34.94440', '-85.71900'), ('DUTTON', 310, '34.60760', '-85.91560'), ('HOLLYWOOD', 950, '34.71690', '-85.96570'), ('LANGSTON', 254, '34.53420', '-86.09240'), ('PAINT ROCK', 185, '34.66060', '-86.32880'), ('PISGAH', 706, '34.68220', '-85.84780'), ('SCOTTSBORO', 14762, '34.64930', '-86.04740'), ('SECTION', 769, '34.58100', '-85.98380'), ('SKYLINE', 843, '34.80290', '-86.12350'), ('STEVENSON', 1770, '34.87060', '-85.83310'), ('WOODVILLE', 761, '34.62520', '-86.28220')], 'partOfState': 'NORTHEAST', 'wfo': 'HUN'}, -'ALZ008': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALBERTVILLE', 17247, '34.26250', '-86.20940'), ('ARAB', 7174, '34.32960', '-86.50010'), ('BOAZ', 7411, '34.20260', '-86.15550'), ('DOUGLAS', 530, '34.17150', '-86.32120'), ('GRANT', 665, '34.51720', '-86.25230'), ('GUNTERSVILLE', 7395, '34.35680', '-86.27040'), ('UNION GROVE', 94, '34.40000', '-86.44610')], 'partOfState': 'NORTHEAST', 'wfo': 'HUN'}, -'FLZ011': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALFORD', 466, '30.69300', '-85.39240'), ('ALLIANCE', None, '30.60910', '-85.11370'), ('BASCOM', 106, '30.92860', '-85.11710'), ('BROWNTOWN', None, '30.98200', '-85.46740'), ('CAMPBELLTON', 212, '30.94900', '-85.40120'), ('CHIPOLA TERRACE', None, '30.82750', '-85.16910'), ('COMPASS LAKE', None, '30.59170', '-85.39280'), ('COTTONDALE', 869, '30.79850', '-85.37610'), ('CYPRESS', None, '30.71740', '-85.07790'), ('DELLWOOD', None, '30.82360', '-85.04980'), ('GLASS', None, '30.86360', '-85.42870'), ('GRACEVILLE', 2402, '30.95800', '-85.51360'), ('GRAND RIDGE', 792, '30.71850', '-85.01950'), ('GREENWOOD', 735, '30.87000', '-85.16200'), ('HAYNES', None, '30.86470', '-84.97370'), ('JACOBS', None, '30.89410', '-85.40990'), ('KYNESVILLE', None, '30.73070', '-85.35470'), ('LOVEDALE', None, '30.87840', '-85.04320'), ('MALONE', 2007, '30.95750', '-85.16200'), ('MARIANNA', 6230, '30.77500', '-85.23970'), ('MARIANNA MUNI A/P', None, '30.83400', '-85.18440'), ('OAKDALE', None, '30.71130', '-85.18560'), ('PARRAMORE', None, '30.87060', '-84.99330'), ('RAMBO', None, '30.99610', '-85.40400'), ('RICHTER CROSSROADS', None, '30.83610', '-85.50220'), ('ROCK CREEK', None, '30.65100', '-85.16030'), ('ROUND LAKE', None, '30.65080', '-85.39430'), ('SIMSVILLE', None, '30.67990', '-85.17420'), ('SIMSVILLE', None, '30.67930', '-85.17480'), ('SINK CREEK', None, '30.62350', '-85.15240'), ('SNEADS', 1919, '30.70880', '-84.92460'), ('STEELE CITY', None, '30.72360', '-85.38790'), ('TWO EGG', None, '30.85120', '-85.07640')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ010': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BUNKER DONATION', None, '30.52850', '-85.86970'), ('CARYVILLE', 218, '30.77010', '-85.81460'), ('CHIPLEY', 3592, '30.77850', '-85.53900'), ('CHIPLEY MUNI A/P', None, '30.75720', '-85.51510'), ('COUNTRY OAKS', None, '30.60600', '-85.45600'), ('CRYSTAL LAKE', 5341, '30.44180', '-85.68860'), ('EBRO', 250, '30.44270', '-85.87410'), ('FIVE POINTS', 1362, '30.71100', '-85.75190'), ('GREENHEAD', None, '30.50160', '-85.66050'), ('HINSONS CROSSROADS', None, '30.66690', '-85.84250'), ('NEW HOPE', None, '30.57650', '-85.80920'), ('ORANGE HILL', None, '30.69490', '-85.50060'), ('POPLAR HEAD', None, '30.71830', '-85.64770'), ('RED HEAD', None, '30.48370', '-85.84230'), ('SUNNY HILLS', None, '30.53500', '-85.62470'), ('VERNON', 743, '30.62330', '-85.71260'), ('WAUSAU', 398, '30.63190', '-85.58890')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ013': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ABE SPRINGS', None, '30.36470', '-85.14770'), ('ALTHA', 506, '30.57140', '-85.12650'), ('BLOUNTSTOWN', 2444, '30.44370', '-85.04550'), ('BROAD BRANCH', None, '30.31000', '-85.29590'), ('CALHOUN CO A/P', None, '30.44610', '-85.02540'), ('CHASON', None, '30.53260', '-85.19220'), ('CHIPOLA', None, '30.50530', '-85.11870'), ('CHIPOLA PARK', None, '30.26300', '-85.20780'), ('CLARKSVILLE', None, '30.43650', '-85.18570'), ('COX', None, '30.60090', '-85.13930'), ('DURHAM', None, '30.46470', '-85.07510'), ('FISHER CORNER', None, '30.38040', '-85.21540'), ('FRINK', None, '30.36730', '-85.21440'), ('GASKINS', None, '30.30140', '-85.12950'), ('HENDERSON MILL', None, '30.56770', '-85.07020'), ('IOLEE', None, '30.26590', '-85.13340'), ('KINARD', None, '30.26550', '-85.24150'), ('LEONARDS', None, '30.48030', '-85.10490'), ('MACEDONIA', None, '30.53380', '-85.05570'), ('MARYSVILLE', None, '30.29370', '-85.09980'), ('MCNEAL', None, '30.42740', '-85.03280'), ('NEW HOPE', None, '30.35640', '-85.05510'), ('OCHEESEE', None, '30.57520', '-85.01690'), ('ROCK HEAD', None, '30.38650', '-85.26470'), ('ROLLINS CORNER', None, '30.43670', '-85.22270'), ('SCOTTS FERRY', None, '30.29460', '-85.13180'), ('SELMAN', None, '30.53290', '-85.02880'), ('SHARPSTOWN', None, '30.36540', '-85.10040'), ('TORREYA SP', None, '30.56470', '-84.96720'), ('WILLIS', None, '30.54990', '-85.18700')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ012': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAY HARBOR', None, '30.14580', '-85.61480'), ('BAYOU GEORGE', None, '30.26120', '-85.54000'), ('BAYVIEW', None, '30.19120', '-85.71320'), ('BENNETT', None, '30.38900', '-85.52870'), ('BETTS', None, '30.53640', '-85.39320'), ('BRANNONVILLE', None, '30.22620', '-85.59280'), ('CAIRO', None, '30.30380', '-85.47730'), ('CALLAWAY', 14233, '30.14090', '-85.57780'), ('CEDAR GROVE', 5367, '30.17580', '-85.62450'), ('CEDAR GROVE', 5367, '30.16970', '-85.62060'), ('COLLEGE STATION', None, '30.23350', '-85.57780'), ('COUCH', None, '30.38220', '-85.43560'), ('CROMANTON', None, '30.11420', '-85.63490'), ('DAVIS BEACH', None, '29.96760', '-85.46790'), ('DELWOOD BEACH', None, '30.14240', '-85.71360'), ('DIREGO PARK', None, '30.19060', '-85.63940'), ('ECONFINA', None, '30.41100', '-85.53580'), ('FARMDALE', None, '30.01660', '-85.46980'), ('FOUNTAIN', None, '30.47120', '-85.42420'), ('GLENWOOD', None, '30.16260', '-85.63740'), ('HILAND PARK', 999, '30.19930', '-85.62990'), ('LAIRD', None, '30.31320', '-85.91870'), ('LOWER GRAND LAGOON', 4082, '30.14390', '-85.75080'), ('LYNN HAVEN', 12451, '30.24290', '-85.65160'), ('LYNN HAVEN', 12451, '30.24290', '-85.65160'), ('MAGNOLIA BEACH', None, '30.15640', '-85.72420'), ('MASHBURN', None, '30.39690', '-85.54390'), ('MCALLASTER LANDING', None, '30.33370', '-85.55660'), ('MILL BAYOU', None, '30.20840', '-85.60350'), ('NIXON', None, '30.32120', '-85.45150'), ('PANAMA CITY', 36417, '30.17380', '-85.67380'), ('PFN-BAY CO A/P', None, '30.21200', '-85.68290'), ('PINE LOG', None, '30.40370', '-85.91160'), ('PRETTY BAYOU', 3519, '30.19640', '-85.69680'), ('SAN BLAS', None, '30.08740', '-85.61000'), ('SAN CARLOS CHACATOS', None, '30.34800', '-85.68350'), ('SAUNDERS', None, '30.42810', '-85.42500'), ('SEMINOLE HILLS', None, '30.36960', '-85.93200'), ('SOUTHPORT', None, '30.28320', '-85.64440'), ('SPRINGFIELD', 8810, '30.15250', '-85.60000'), ('ST ANDREW', None, '30.17230', '-85.69960'), ('TYNDALL AFB', 2757, '30.08370', '-85.60860'), ('UPPER GRAND LAGOON', 10889, '30.16300', '-85.74090'), ('VICKSBURG', None, '30.32210', '-85.66000'), ('WEST BAY', None, '30.29290', '-85.85910'), ('YOUNGSTOWN', None, '30.36640', '-85.43900')], 'partOfState': '', 'wfo': 'TAE'}, -'ALZ003': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('HODGES', 261, '34.32740', '-87.92650'), ('PHIL CAMPBELL', 1091, '34.35200', '-87.70580'), ('RED BAY', 3374, '34.43610', '-88.13630'), ('RUSSELLVILLE', 8971, '34.50590', '-87.72920'), ('VINA', 400, '34.37430', '-88.05650')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'ALZ002': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('CHEROKEE', 1237, '34.75640', '-87.96670'), ('LEIGHTON', 849, '34.69960', '-87.53070'), ('LITTLEVILLE', 978, '34.59500', '-87.67400'), ('MUSCLE SHOALS', 11924, '34.74710', '-87.64200'), ('SHEFFIELD', 9652, '34.75520', '-87.70130'), ('TUSCUMBIA', 7856, '34.72870', '-87.70570')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'ALZ001': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ANDERSON', 354, '34.91350', '-87.27060'), ('FLORENCE', 36264, '34.82780', '-87.66510'), ('KILLEN', 1119, '34.86150', '-87.52930'), ('LEXINGTON', 840, '34.96600', '-87.37290'), ('ROGERSVILLE', 1199, '34.82620', '-87.28450'), ('ST. FLORIAN', 335, '34.86570', '-87.62380'), ('UNDERWOOD-PETERSVILLE', 3137, '34.87700', '-87.69600'), ('WATERLOO', 208, '34.91670', '-88.06420')], 'partOfState': 'NORTHWEST', 'wfo': 'HUN'}, -'ALZ007': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('DECATUR', 53929, '34.57180', '-86.98820'), ('EVA', 491, '34.33040', '-86.75590'), ('FALKVILLE', 1202, '34.37690', '-86.90970'), ('FLINT CITY', None, '34.51550', '-86.97280'), ('HARTSELLE', 12019, '34.43690', '-86.93980'), ('PRICEVILLE', 1631, '34.52420', '-86.88560'), ('SOMERVILLE', 347, '34.47470', '-86.80140'), ('TRINITY', 1841, '34.59860', '-87.08980')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'FLZ018': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALMA', None, '30.61020', '-83.90650'), ('ASHVILLE', None, '30.61520', '-83.64710'), ('AUCILLA', None, '30.47990', '-83.75430'), ('CAPPS', None, '30.41150', '-83.91130'), ('CASA BLANCO', None, '30.51560', '-83.88790'), ('DILLS', None, '30.62190', '-83.77230'), ('DRIFTON', None, '30.49500', '-83.88070'), ('FANLEW', None, '30.27090', '-84.05770'), ('FESTUS', None, '30.60000', '-83.96900'), ('JARROTT', None, '30.62270', '-83.93230'), ('LAMONT', None, '30.37660', '-83.81340'), ('LLOYD', None, '30.47550', '-84.02220'), ('LOIS', None, '30.52570', '-83.91590'), ('MONTICELLO', 2533, '30.54470', '-83.87020'), ('MONTIVILLA', None, '30.54690', '-83.88880'), ('NASH', None, '30.45770', '-83.89330'), ('NUTALL RISE', None, '30.14970', '-83.96420'), ('THOMAS CITY', None, '30.35460', '-83.97320'), ('WACISSA', None, '30.35770', '-83.98880'), ('WAUKEENAH', None, '30.41230', '-83.95150')], 'partOfState': '', 'wfo': 'TAE'}, -'ALZ005': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ARDMORE', 1034, '34.98340', '-86.83660'), ('ATHENS', 18967, '34.78600', '-86.95990'), ('ELKMONT', 470, '34.92840', '-86.97590'), ('LESTER', 107, '34.98420', '-87.14790'), ('MOORESVILLE', 59, '34.62680', '-86.88000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'HUN'}, -'KSZ056': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('LANE', 256, '38.43970', '-95.08200'), ('OTTAWA', 11921, '38.61560', '-95.26750'), ('POMONA', 923, '38.60830', '-95.45140'), ('PRINCETON', 317, '38.48890', '-95.27500'), ('RANTOUL', 241, '38.54860', '-95.10000'), ('RICHMOND', 510, '38.40280', '-95.25360'), ('WELLSVILLE', 1606, '38.71830', '-95.08140'), ('WILLIAMSBURG', 351, '38.48060', '-95.46670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TOP'}, -'UTZ015': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ABRAHAM', None, '39.40000', '-112.72000'), ('BLACK ROCK', None, '38.72000', '-112.97000'), ('CALLAO', None, '39.90000', '-113.72000'), ('DELTA', 3209, '39.35330', '-112.56570'), ('EUREKA', 766, '39.95500', '-112.11560'), ('FILLMORE', 2253, '38.96770', '-112.33680'), ('FLOWELL', None, '38.98000', '-112.43000'), ('GANDY', None, '39.45000', '-113.98000'), ('GARRISON', None, '38.93000', '-114.03000'), ('GREENWOOD', None, '39.12000', '-112.35000'), ('HATTON', None, '38.83000', '-112.47000'), ('HINCKLEY', 698, '39.33240', '-112.67280'), ('HOLDEN', 400, '39.09990', '-112.26890'), ('JERICHO', None, '39.75000', '-112.17000'), ('KANOSH', 485, '38.80460', '-112.43830'), ('LEAMINGTON', 217, '39.53100', '-112.28930'), ('LITTLE SAHARA', None, '39.72000', '-112.23000'), ('LYNNDYL', 134, '39.50810', '-112.38900'), ('MC CORNICK', None, '39.22000', '-112.42000'), ('MEADOW', 254, '38.88680', '-112.40590'), ('OAK CITY', 650, '39.37610', '-112.33600'), ('PARTOUN', None, '39.65000', '-113.90000'), ('SUGARVILLE', None, '39.47000', '-112.65000'), ('SUTHERLAND', None, '39.38000', '-112.63000'), ('TINTIC JCT', None, '39.92000', '-112.17000'), ('TROUT CREEK', None, '39.70000', '-113.83330')], 'partOfState': '', 'wfo': 'SLC'}, -'MAZ020': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ACUSHNET', None, '41.68610', '-70.90610'), ('DARTMOUTH', None, '41.56667', '-71.00000'), ('FALL RIVER', 91938, '41.71460', '-71.10510'), ('NEW BEDFORD', 93768, '41.66130', '-70.93810'), ('SOMERSET', 18234, '41.73940', '-71.15900'), ('SWANSEA', None, '41.75000', '-71.18333'), ('WESTPORT', None, '41.66667', '-71.10000')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAZ021': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('MARION', None, '41.70310', '-70.76240'), ('MATTAPOISETT', None, '41.66260', '-70.80860'), ('ROCHESTER', None, '41.73333', '-70.81667'), ('WAREHAM', None, '41.75230', '-70.72140')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAZ022': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('BARNSTABLE', None, '41.70000', '-70.30000'), ('BOURNE', 1443, '41.73270', '-70.61400'), ('BREWSTER', 2212, '41.75160', '-70.08000'), ('CHATHAM', 1667, '41.67640', '-69.96260'), ('DENNIS', 2798, '41.73160', '-70.20190'), ('EASTHAM', None, '41.83333', '-69.96667'), ('FALMOUTH', 4115, '41.54620', '-70.60780'), ('HARWICH', None, '41.69180', '-70.07280'), ('HYANNIS', None, '41.65290', '-70.29580'), ('MASHPEE', None, '41.65000', '-70.48333'), ('ORLEANS', 1716, '41.79100', '-70.00030'), ('PROVINCETOWN', 3192, '42.05110', '-70.17940'), ('SANDWICH', 3058, '41.75780', '-70.49980'), ('TRURO', None, '42.00000', '-70.06667'), ('WELLFLEET', None, '41.93333', '-70.03333'), ('YARMOUTH', None, '41.70940', '-70.22890')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAZ023': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('AQUINNAH', None, '41.33333', '-70.81667'), ('CHILMARK', None, '41.35000', '-70.75000'), ('EDGARTOWN', None, '41.38333', '-70.53000'), ('OAK BLUFFS', None, '41.45000', '-70.56667'), ('TISBURY', None, '41.46667', '-70.61667'), ('VINEYARD HAVEN', 2048, '41.45000', '-70.61670'), ('WEST TISBURY', None, '41.38333', '-70.68333')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAZ024': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('NANTUCKET', 3830, '41.27000', '-70.10270')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOX'}, -'MAZ025': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ASHLEY FALLS', None, '42.05570', '-73.33430'), ('BECKET', None, '42.33080', '-73.07970'), ('GREAT BARRINGTON', 2459, '42.19440', '-73.35640'), ('HOUSATONIC', 1335, '42.25040', '-73.36270'), ('LEE', 2021, '42.30720', '-73.25150'), ('LENOX', 1667, '42.35810', '-73.28670'), ('MONTEREY', None, '42.18130', '-73.21530'), ('OTIS', None, '42.19830', '-73.07450'), ('SANDISFIELD', None, '42.11320', '-73.13770'), ('SHEFFIELD', None, '42.10930', '-73.34770'), ('SOUTH EGREMONT', None, '42.16120', '-73.41700')], 'partOfState': '', 'wfo': 'ALY'}, -'MAZ026': {'fullStateName': 'MASSACHUSETTS', 'state': 'MA', 'cities': [('ASHBY', None, '42.68333', '-71.81667'), ('AYER', 2960, '42.56220', '-71.58530'), ('GROTON', 1113, '42.60640', '-71.57150'), ('PEPPERELL', 2517, '42.66780', '-71.58820'), ('SHIRLEY', 1427, '42.54200', '-71.65290'), ('TOWNSEND', 1043, '42.66980', '-71.70330')], 'partOfState': '', 'wfo': 'BOX'}, -'SCZ033': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BRITTON NECK', None, '33.90000', '-79.33330'), ('CENTENARY', None, '34.03080', '-79.35580'), ('FRIENDSHIP', None, '34.01670', '-79.43560'), ('GAPWAY', None, '34.15750', '-79.24690'), ('GRESHAM', None, '33.93000', '-79.41140'), ('MARION', 7042, '34.17810', '-79.40060'), ('MULLINS', 5029, '34.20560', '-79.25470'), ('NICHOLS', 408, '34.23360', '-79.14890'), ('PEE DEE', None, '34.20580', '-79.53920'), ('RAINS', None, '34.09750', '-79.31580'), ('SELLERS', 277, '34.28250', '-79.47220')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCZ032': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CARTERSVILLE', None, '34.08610', '-80.02890'), ('CENTRAL CROSSROADS', None, '33.88780', '-79.91310'), ('CLAUSSEN', None, '34.13080', '-79.63110'), ('COWARD', 650, '33.97310', '-79.74720'), ('EFFINGHAM', None, '34.05780', '-79.75330'), ('EVERGREEN', None, '34.06830', '-79.67920'), ('FLORENCE', 30248, '34.19530', '-79.76280'), ('JOHNSONVILLE', 1418, '33.81780', '-79.44940'), ('KINGSBURG', None, '33.88030', '-79.45220'), ('LAKE CITY', 6478, '33.87080', '-79.75560'), ('MARS BLUFF', None, '34.20530', '-79.65560'), ('OLANTA', 613, '33.93530', '-79.93280'), ('PAMPLICO', 1139, '33.99580', '-79.57030'), ('QUINBY', 842, '34.23230', '-79.73260'), ('SARDIS', None, '34.04030', '-79.94420'), ('SCRANTON', 942, '33.91730', '-79.74360'), ('TIMMONSVILLE', 2315, '34.13470', '-79.94000')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCZ031': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CHERRYVALE', 2461, '33.95530', '-80.45950'), ('EAST SUMTER', 1220, '33.92540', '-80.29630'), ('MAYESVILLE', 1001, '33.98710', '-80.20740'), ('MILLWOOD', 885, '33.90970', '-80.39420'), ('MULBERRY', 841, '33.95190', '-80.33310'), ('OAKLAND', 1272, '33.98790', '-80.49950'), ('PINEWOOD', 459, '33.73930', '-80.46270'), ('SOUTH SUMTER', 3365, '33.88840', '-80.34040'), ('SUMTER', 39643, '33.94440', '-80.39250')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ030': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('AIKEN', 25337, '33.54080', '-81.72840'), ('BELVEDERE', 5631, '33.53560', '-81.94190'), ('BURNETTOWN', 2720, '33.51050', '-81.85420'), ('CLEARWATER', 4199, '33.50550', '-81.90770'), ('GLOVERVILLE', 2805, '33.52810', '-81.81400'), ('JACKSON', 1625, '33.32840', '-81.79220'), ('NEW ELLENTON', 2250, '33.41880', '-81.68660'), ('NORTH AUGUSTA', 17574, '33.51770', '-81.95620'), ('PERRY', 237, '33.62700', '-81.30920'), ('SALLEY', 410, '33.56660', '-81.30430'), ('WAGENER', 863, '33.65090', '-81.36300'), ('WINDSOR', 127, '33.48080', '-81.51510')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ037': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CAMERON', 449, '33.55840', '-80.71490'), ('ST. MATTHEWS', 2107, '33.66370', '-80.77790')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ036': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BOWMAN', 1198, '33.34890', '-80.68380'), ('BRANCHVILLE', 1083, '33.25110', '-80.81580'), ('BROOKDALE', 4724, '33.51540', '-80.83500'), ('COPE', 107, '33.37820', '-81.00680'), ('CORDOVA', 157, '33.43560', '-80.92000'), ('EDISTO', 2632, '33.47650', '-80.89890'), ('ELLOREE', 742, '33.52980', '-80.57240'), ('EUTAWVILLE', 344, '33.39790', '-80.34360'), ('HOLLY HILL', 1281, '33.32500', '-80.41370'), ('LIVINGSTON', 148, '33.55340', '-81.12010'), ('NEESES', 413, '33.53620', '-81.12610'), ('NORTH', 813, '33.61710', '-81.10310'), ('NORWAY', 389, '33.44960', '-81.12680'), ('ORANGEBURG', 12765, '33.49390', '-80.86540'), ('ROWESVILLE', 378, '33.37220', '-80.83630'), ('SANTEE', 740, '33.48010', '-80.48710'), ('SPRINGFIELD', 504, '33.49570', '-81.27950'), ('VANCE', 208, '33.43580', '-80.42150'), ('WILKINSON HEIGHTS', 3068, '33.49160', '-80.82990'), ('WOODFORD', 196, '33.66780', '-81.11170')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ035': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('BARNWELL', 5035, '33.24140', '-81.36510'), ('BLACKVILLE', 2973, '33.36020', '-81.28100'), ('ELKO', 212, '33.37910', '-81.37950'), ('HILDA', 436, '33.27380', '-81.24660'), ('KLINE', 238, '33.12420', '-81.34320'), ('SNELLING', 246, '33.24030', '-81.45590'), ('WILLISTON', 3307, '33.40170', '-81.42270')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'SCZ034': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('ALLSBROOK', None, '34.02000', '-78.94670'), ('ATLANTIC BEACH', 351, '33.80300', '-78.71750'), ('AYNOR', 587, '33.99970', '-79.19970'), ('BAYBORO', None, '34.00940', '-79.02250'), ('BRIARCLIFFE ACRES', 470, '33.78910', '-78.74760'), ('BUCKSPORT', 1117, '33.66470', '-79.10280'), ('BURGESS', None, '33.60640', '-79.05580'), ('CONWAY', 11788, '33.83580', '-79.04810'), ('COOL SPRING', None, '33.97500', '-79.13720'), ('DONGOLA', None, '33.75720', '-79.18720'), ('DUFORD', None, '34.19110', '-79.06420'), ('FORESTBROOK', 3391, '33.72300', '-78.96610'), ('GALIVANTS FERRY', None, '34.05610', '-79.24670'), ('GARDEN CITY', 9357, '33.59260', '-79.00900'), ('GORETOWN', None, '34.02670', '-78.82140'), ('GREEN SEA', None, '34.12420', '-78.89310'), ('HOMEWOOD', None, '33.88390', '-79.04860'), ('HORRY', None, '33.93690', '-79.13440'), ('JORDANVILLE', None, '33.89910', '-79.23720'), ('LITTLE RIVER', 7027, '33.87310', '-78.61440'), ('LONGS', None, '33.93830', '-78.73330'), ('LORIS', 2079, '34.05610', '-78.89060'), ('MYRTLE BEACH', 22759, '33.68890', '-78.88690'), ('NIXON CROSSROADS', None, '33.85000', '-78.65000'), ('NIXONVILLE', None, '33.83440', '-78.88560'), ('NORTH MYRTLE BEACH', 10974, '33.81580', '-78.68030'), ('RED BLUFF', None, '33.90110', '-78.83970'), ('RED HILL', 10509, '33.78710', '-79.00970'), ('SHELL', None, '33.90220', '-78.91360'), ('SOCASTEE', 14295, '33.68330', '-78.99860'), ('SURFSIDE BEACH', 4425, '33.60580', '-78.97330'), ('TODDVILLE', None, '33.75860', '-79.07640'), ('WAMPEE', None, '33.86170', '-78.73330')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'RIZ008': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('BLOCK ISLAND', None, '41.16667', '-71.58333')], 'partOfState': '', 'wfo': 'BOX'}, -'SCZ039': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('CADES', None, '33.78640', '-79.78280'), ('CEDAR SWAMP', None, '33.65670', '-79.66750'), ('COOPER', None, '33.56610', '-79.61030'), ('EARLES', None, '33.46670', '-79.63330'), ('FOWLWER', None, '33.70250', '-79.69690'), ('GOURDIN', None, '33.48330', '-79.89610'), ('GREELEYVILLE', 452, '33.58080', '-79.98920'), ('HEBRON CROSSROADS', None, '33.81640', '-79.88720'), ('HEINEMAN', None, '33.55250', '-79.93360'), ('HEMINGWAY', 573, '33.75360', '-79.44780'), ('HENRY', None, '33.68530', '-79.49780'), ('INDIANTOWN', None, '33.72500', '-79.55970'), ('KELLEHAN CROSSROADS', None, '33.59060', '-79.67940'), ('KINGSTREE', 3496, '33.66750', '-79.83080'), ('LANE', 585, '33.52480', '-79.88050'), ('MOUZON', None, '33.73440', '-79.92690'), ('NESMITH', None, '33.65890', '-79.51360'), ('NEW MORRISVILLE', None, '33.60000', '-79.53330'), ('RHEMS', None, '33.59280', '-79.44140'), ('SALTERS', None, '33.59280', '-79.85170'), ('STUCKEY', 263, '33.73090', '-79.51290'), ('TRIO', None, '33.48580', '-79.71780'), ('WARSAW', None, '33.50830', '-79.55060')], 'partOfState': 'NORTHEAST', 'wfo': 'ILM'}, -'SCZ038': {'fullStateName': 'SOUTH CAROLINA', 'state': 'SC', 'cities': [('MANNING', 4025, '33.69380', '-80.21560'), ('PAXVILLE', 248, '33.73980', '-80.36040'), ('SUMMERTON', 1061, '33.60220', '-80.35180'), ('TURBEVILLE', 602, '33.89030', '-80.01540')], 'partOfState': 'CENTRAL', 'wfo': 'CAE'}, -'KYZ044': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('COWAN', None, '38.40860', '-83.89220'), ('CRAINTOWN', None, '38.38910', '-83.78720'), ('DALESBURG', None, '38.46530', '-83.67830'), ('ELIZAVILLE', None, '38.42110', '-83.82580'), ('EWING', 278, '38.42730', '-83.86230'), ('FAIRVIEW', 156, '38.45000', '-83.93000'), ('FLEMINGSBURG', 3010, '38.42350', '-83.73690'), ('FLEMINGSBURG JUNCTION', None, '38.45940', '-83.80780'), ('FOXPORT', None, '38.47560', '-83.59190'), ('GODDARD', None, '38.36310', '-83.61530'), ('GRANGE CITY', None, '38.24560', '-83.66520'), ('HILLSBORO', None, '38.29440', '-83.65970'), ('MOUNT CARMEL', None, '38.48500', '-83.63720'), ('MUSES MILLS', None, '38.35060', '-83.52750'), ('NEPTON', None, '38.43670', '-83.83530'), ('PECKS RIDGE', None, '38.36000', '-83.80000'), ('PLEASUREVILLE', 869, '38.47970', '-83.60330'), ('PLUMMERS LANDING', None, '38.32060', '-83.56080'), ('POPLAR PLAINS', None, '38.36170', '-83.67500'), ('RINGOS MILLS', None, '38.26640', '-83.60940'), ('SHERBURNE', None, '38.29000', '-83.81000'), ('TILTON', None, '38.34750', '-83.75940'), ('WALLINGFORD', None, '38.40580', '-83.61250'), ('WYOMING', None, '38.21970', '-83.69910')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYZ045': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BALLTOWN', None, '37.73330', '-85.50000'), ('BARDSTOWN', 10374, '37.81360', '-85.46320'), ('BLOOMFIELD', 855, '37.91210', '-85.31590'), ('BOSTON', None, '37.78330', '-85.66670'), ('CHAPLIN', None, '37.90000', '-85.21670'), ('COXS CREEK', None, '37.90000', '-85.46670'), ('DEATSVILLE', None, '37.90000', '-85.56670'), ('FAIRFIELD', 72, '37.93320', '-85.38400'), ('HIGHGROVE', None, '37.97000', '-85.48330'), ('HOWARDSTOWN', None, '37.56670', '-85.60000'), ('NAZARETH', None, '37.83330', '-85.46670'), ('NEW HAVEN', 849, '37.65920', '-85.58930'), ('NEW HOPE', None, '37.63330', '-85.51670'), ('SAMUELS', None, '37.88330', '-85.53330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ046': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FENWICK', None, '37.71670', '-85.15000'), ('FREDRICKTOWN', None, '37.75000', '-85.33330'), ('MACKVILLE', 206, '37.73360', '-85.06840'), ('MAUD', None, '37.81670', '-85.30000'), ('SPRINGFIELD', 2634, '37.68770', '-85.22280'), ('ST. CATHERINE', None, '37.70000', '-85.25000'), ('TEXAS', None, '37.65000', '-85.11670'), ('WILLISBURG', 304, '37.81010', '-85.12200')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ047': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BOHON', None, '37.81670', '-84.91670'), ('BURGIN', 874, '37.75400', '-84.76540'), ('DUNCAN', None, '37.85000', '-84.98330'), ('HARRODSBURG', 8014, '37.76660', '-84.84720'), ('MCAFEE', None, '37.85000', '-84.85000'), ('NEVADA', None, '37.70000', '-84.91670'), ('ROSE HILL', None, '37.75000', '-84.91700'), ('SALVISA', None, '37.91670', '-84.86670'), ('SHAKERTOWN', None, '37.81670', '-84.86670'), ('TARRAPIN', None, '37.88330', '-84.93330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ040': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DUCKERS', None, '38.16670', '-84.78330'), ('MIDWAY', 1620, '38.14970', '-84.68350'), ('MILLVILLE', None, '38.13340', '-84.81670'), ('NONESUCH', None, '37.90000', '-84.75000'), ('TROY', None, '37.90000', '-84.72000'), ('VERSAILLES', 7511, '38.05440', '-84.72940')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ041': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('LEXINGTON', 260512, '38.04270', '-84.45950')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ042': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CENTERVILLE', None, '38.21670', '-84.38330'), ('CLINTONVILLE', None, '38.08330', '-84.26670'), ('MILLERSBURG', 842, '38.30340', '-84.14620'), ('NORTH MIDDLETOWN', 562, '38.14100', '-84.11060'), ('PARIS', 9183, '38.20680', '-84.26100'), ('RUDDELS MILLS', None, '38.30000', '-84.23330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ043': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CARLISLE', 1917, '38.31360', '-84.03760'), ('HOOKTOWN', None, '38.35000', '-84.15000'), ('MOOREFIELD', None, '38.26670', '-83.93330'), ('MYERS', None, '38.35000', '-83.95000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ048': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('CAMP NELSON', None, '37.77000', '-84.62000'), ('KEENE', None, '37.93330', '-84.63330'), ('NICHOLASVILLE', 19680, '37.87830', '-84.58000'), ('SPEARS', None, '37.86670', '-84.45500'), ('SULPHUR WELL', None, '37.83330', '-84.55000'), ('WILMORE', 5905, '37.86660', '-84.65900')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ049': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('FORD', None, '37.88330', '-84.25000'), ('RUCKERVILLE', None, '37.93330', '-84.10000'), ('TRAPP', None, '37.88330', '-84.05000'), ('WINCHESTER', 16724, '37.99730', '-84.18830')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KSZ001': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BIRD CITY', 482, '39.74990', '-101.53170'), ('ST. FRANCIS', 1497, '39.77140', '-101.80030'), ('WHEELER', None, '39.76000', '-101.71000')], 'partOfState': 'NORTHWEST', 'wfo': 'GLD'}, -'MIZ038': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BALDWIN', 1107, '43.89760', '-85.85240'), ('BRISTOL', None, '44.10380', '-85.58370'), ('CHASE', None, '43.88920', '-85.63550'), ('IDLEWILD', None, '43.88700', '-85.80250'), ('IRONS', None, '44.14000', '-85.91580'), ('LUTHER', 339, '44.03870', '-85.68290'), ('NIRVANA', None, '43.90250', '-85.71200')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'INZ058': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CONNERSVILLE', 15411, '39.65570', '-85.14070'), ('GLENWOOD', 318, '39.62650', '-85.30130')], 'partOfState': '', 'wfo': 'ILN'}, -'INZ059': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('LIBERTY', 2061, '39.63450', '-84.92700')], 'partOfState': '', 'wfo': 'ILN'}, -'INZ056': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FAIRLAND', 1276, '39.59870', '-85.85810'), ('MORRISTOWN', 1133, '39.67230', '-85.69980'), ('SHELBYVILLE', 17951, '39.52330', '-85.77580')], 'partOfState': '', 'wfo': 'IND'}, -'INZ057': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CARTHAGE', 928, '39.73720', '-85.57160'), ('RUSHVILLE', 5995, '39.61460', '-85.44710')], 'partOfState': '', 'wfo': 'IND'}, -'INZ054': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BETHANY', 94, '39.53370', '-86.37890'), ('BROOKLYN', 1545, '39.54260', '-86.37150'), ('LAKE HART', None, '39.56840', '-86.43010'), ('MARTINSVILLE', 11698, '39.42280', '-86.42170'), ('MOORESVILLE', 9273, '39.61590', '-86.37010'), ('PARAGON', 663, '39.39490', '-86.56310')], 'partOfState': '', 'wfo': 'IND'}, -'INZ055': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BARGERSVILLE', 2120, '39.51990', '-86.16560'), ('EDINBURGH', 4505, '39.35270', '-85.96750'), ('FRANKLIN', 19463, '39.49220', '-86.05650'), ('GREENWOOD', 36037, '39.61550', '-86.11380'), ('MORGANTOWN', 964, '39.37390', '-86.25930'), ('NEW WHITELAND', 4579, '39.56210', '-86.09690'), ('PRINCES LAKES', 1506, '39.35070', '-86.10910'), ('TRAFALGAR', 798, '39.41500', '-86.14970'), ('WHITELAND', 3958, '39.55030', '-86.08860')], 'partOfState': '', 'wfo': 'IND'}, -'INZ052': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BRAZIL', 8188, '39.52360', '-87.12340'), ('CARBON', 334, '39.59890', '-87.10750'), ('CENTER POINT', 292, '39.41480', '-87.07450'), ('CLAY CITY', 1019, '39.27700', '-87.11210'), ('HARMONY', 589, '39.53400', '-87.07340'), ('KNIGHTSVILLE', 624, '39.52610', '-87.08980'), ('STAUNTON', 550, '39.48610', '-87.18940')], 'partOfState': '', 'wfo': 'IND'}, -'INZ053': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('GOSPORT', 715, '39.35050', '-86.66570'), ('SPENCER', 2508, '39.28710', '-86.76920')], 'partOfState': '', 'wfo': 'IND'}, -'INZ050': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BOSTON', 177, '39.74150', '-84.85110'), ('CAMBRIDGE CITY', 2121, '39.81200', '-85.17080'), ('CENTERVILLE', 2427, '39.81720', '-84.99550'), ('DUBLIN', 697, '39.81240', '-85.20510'), ('EAST GERMANTOWN', 243, '39.81280', '-85.13670'), ('ECONOMY', 200, '39.97740', '-85.08710'), ('FOUNTAIN CITY', 735, '39.95590', '-84.91790'), ('GREENS FORK', 371, '39.89140', '-85.04230'), ('HAGERSTOWN', 1768, '39.91170', '-85.15690'), ('MILTON', 611, '39.78650', '-85.15620'), ('MOUNT AUBURN', 75, '39.81290', '-85.19030'), ('RICHMOND', 39124, '39.82950', '-84.88540'), ('SPRING GROVE', 386, '39.84720', '-84.89050'), ('WHITEWATER', 78, '39.94430', '-84.83070')], 'partOfState': '', 'wfo': 'ILN'}, -'INZ051': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('NORTH TERRE HAUTE', 4606, '39.53990', '-87.36020'), ('RILEY', 160, '39.38980', '-87.30040'), ('SEELYVILLE', 1182, '39.49400', '-87.26700'), ('TERRE HAUTE', 59614, '39.47040', '-87.38350'), ('WEST TERRE HAUTE', 2330, '39.46430', '-87.44900')], 'partOfState': '', 'wfo': 'IND'}, -'IAZ082': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AFTON', 917, '41.02790', '-94.19560'), ('ARISPE', 89, '40.94900', '-94.21870'), ('CRESTON', 7597, '41.05900', '-94.36410'), ('CROMWELL', 120, '41.04000', '-94.46190'), ('KENT', 52, '40.95310', '-94.45630'), ('LORIMOR', 427, '41.12760', '-94.05700'), ('SHANNON CITY', 70, '40.90900', '-94.26360'), ('THAYER', 66, '41.02920', '-94.04960')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAZ083': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('MURRAY', 766, '41.04130', '-93.94840'), ('OSCEOLA', 4659, '41.03130', '-93.77380'), ('WOODBURN', 244, '41.01050', '-93.59650')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'IAZ080': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('COBURG', 31, '40.91780', '-95.26560'), ('ELLIOTT', 402, '41.14980', '-95.16300'), ('GRANT', 102, '41.14220', '-94.98510'), ('RED OAK', 6197, '41.01250', '-95.22460'), ('STANTON', 714, '40.98110', '-95.10320'), ('VILLISCA', 1344, '40.93100', '-94.97790')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'IAZ081': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CARBON', 28, '41.04930', '-94.82350'), ('CORNING', 1783, '40.99390', '-94.73930'), ('NODAWAY', 132, '40.93650', '-94.89520'), ('PRESCOTT', 266, '41.02340', '-94.61240')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'IAZ086': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AGENCY', 622, '40.99690', '-92.30730'), ('BLAKESBURG', 374, '40.96180', '-92.63540'), ('CHILLICOTHE', 90, '41.08600', '-92.52950'), ('EDDYVILLE', 1064, '41.15870', '-92.62970'), ('ELDON', 998, '40.91770', '-92.21820'), ('KIRKVILLE', 214, '41.14290', '-92.50230'), ('OTTUMWA', 24998, '41.01990', '-92.41820')], 'partOfState': 'SOUTHEAST', 'wfo': 'DMX'}, -'IAZ087': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ABINGDON', None, '41.08330', '-92.13330'), ('BATAVIA', 500, '40.99480', '-92.16760'), ('BECKWITH', None, '41.01670', '-91.86670'), ('BROOKVILLE', None, '41.05000', '-92.08330'), ('COLLETT', None, '40.90800', '-91.98330'), ('EAST PLEASANT PLAIN', None, '41.13330', '-91.85000'), ('FAIRFIELD', 9509, '41.00710', '-91.96710'), ('FAIRFIELD MUNICIPAL AIRPO', None, '41.05000', '-91.98330'), ('FOUR CORNERS', None, '41.01670', '-91.76660'), ('GERMANVILLE', None, '41.10000', '-91.76660'), ('GLASGOW', None, '40.93330', '-91.78330'), ('LIBERTYVILLE', 325, '40.95860', '-92.04890'), ('LINBY', None, '41.15000', '-92.13330'), ('LOCKRIDGE', 275, '40.99360', '-91.74760'), ('MERRIMAC', None, '41.08330', '-91.71660'), ('PACKWOOD', 223, '41.13250', '-92.08180'), ('PERLEE', None, '41.08330', '-91.90000'), ('PLEASANT PLAIN', 131, '41.14740', '-91.85970'), ('SALINA', None, '41.05000', '-91.83330')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'NCZ018': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AHO', None, '36.16670', '-81.61670'), ('BEECH MOUNTAIN', 310, '36.21080', '-81.88900'), ('BLOWING ROCK', 1418, '36.12910', '-81.67060'), ('BOONE', 13472, '36.20950', '-81.66990'), ('DEEP GAP', None, '36.23330', '-81.51670'), ('FOSCOE', None, '36.16670', '-81.76670'), ('LOVILL', None, '36.23330', '-81.73330'), ('MEAT CAMP', None, '36.30000', '-81.66670'), ('PEORIA', None, '36.28330', '-81.86670'), ('REESE', None, '36.33330', '-81.81670'), ('ROMINGER', None, '36.23330', '-81.83330'), ('RUTHERWOOD', None, '36.23330', '-81.60000'), ('SANDS', None, '36.25000', '-81.63330'), ('SEVEN DEVILS', 129, '36.14970', '-81.81390'), ('SILVERSTONE', None, '36.30000', '-81.75000'), ('SUGAR GROVE', None, '36.26670', '-81.78330'), ('TODD', None, '36.30000', '-81.60000'), ('VALLE CRUCIS', None, '36.21670', '-81.78330')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'NCZ019': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ABSHERS', None, '36.36670', '-81.11670'), ('BENHAM', None, '36.30000', '-80.91670'), ('BOOMER', None, '36.06670', '-81.25000'), ('BUCK', None, '36.16670', '-81.23330'), ('CLINGMAN', None, '36.18330', '-80.93330'), ('CRICKET', 2053, '36.16630', '-81.19140'), ('DARBY', None, '36.11670', '-81.50000'), ('DOCKERY', None, '36.30000', '-81.08330'), ('ELKVILLE', None, '36.06670', '-81.40000'), ('FAIRPLAINS', 2051, '36.21670', '-81.16670'), ('FAIRPLAINS', 2051, '36.19630', '-81.15270'), ('HALLS MILLS', None, '36.30000', '-81.21670'), ('HAYS', 1731, '36.24910', '-81.11610'), ('MAPLE SPGS', None, '36.18330', '-81.38330'), ('MC GRADY', None, '36.33330', '-81.23330'), ('MILLERS CREEK', 2071, '36.18330', '-81.23330'), ('MILLERS CREEK', 2071, '36.18890', '-81.23760'), ('MORAVIAN FALLS', 1440, '36.10720', '-81.18070'), ('MORAVIAN FALLS', 1440, '36.10000', '-81.18330'), ('MULBERRY', 2269, '36.22770', '-81.16610'), ('MULBERRY', 2269, '36.25000', '-81.16670'), ('NORTH WILKESBORO', 4116, '36.16970', '-81.14220'), ('PLEASANT HILL', 1109, '36.25300', '-80.88530'), ('ROARING RIVER', None, '36.21670', '-81.00000'), ('RONDA', 460, '36.22160', '-80.94330'), ('SUMMIT', None, '36.25000', '-81.41670'), ('TRAPHILL', None, '36.35000', '-81.03330'), ('WILBAR', None, '36.26670', '-81.31670'), ('WILKES CO ARPT', None, '36.21670', '-81.10000'), ('WILKESBORO', 3159, '36.14100', '-81.16480'), ('WINDY GAP', None, '36.11670', '-80.98330')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'NCZ016': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BARTLETT', None, '36.28920', '-76.08470'), ('BELCROSS', None, '36.34740', '-76.15510'), ('BURNT MILLS', None, '36.39420', '-76.26530'), ('CAMDEN', None, '36.32730', '-76.16800'), ('GOOSE CREEK', None, '36.22810', '-76.02830'), ('HORSESHOE', None, '36.46000', '-76.39360'), ('INDIANTOWN', None, '36.33350', '-76.07730'), ('JOHNSONS CORNER', None, '36.43440', '-76.29890'), ('LAMBS CORNER', None, '36.37970', '-76.22220'), ('LILLY', None, '36.48570', '-76.30250'), ('OLD TRAP', None, '36.24050', '-76.02710'), ('PIERCEVILLE', None, '36.44830', '-76.29390'), ('RIDDLE', None, '36.28940', '-76.04350'), ('SHARON', None, '36.49560', '-76.31000'), ('SHILOH', None, '36.27140', '-76.08080'), ('SOUTH MILLS', None, '36.44530', '-76.32950'), ('SPENCES CORNER', None, '36.35080', '-76.19610'), ('TAR CORNER', None, '36.47690', '-76.28640'), ('TAYLORS BEACH', None, '36.27940', '-76.11720'), ('TEXAS', None, '36.19780', '-76.01030'), ('WHITEHALL SHORES', None, '36.29130', '-76.14530')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ017': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AYDLETT', None, '36.32530', '-75.91000'), ('BARCO', None, '36.39120', '-75.97970'), ('BERTHA', None, '36.27340', '-75.91120'), ('COINJOCK', None, '36.34460', '-75.95420'), ('CURRITUCK', None, '36.44820', '-76.01500'), ('GRANDY', None, '36.24230', '-75.87800'), ('GREGORY', None, '36.38960', '-76.12630'), ('HARBINGER', None, '36.10190', '-75.81410'), ('JARVISBURG', None, '36.20190', '-75.86550'), ('KNOTTS ISLAND', None, '36.51300', '-75.91960'), ('MAMIE', None, '36.12740', '-75.83690'), ('MAPLE', None, '36.41350', '-76.00330'), ('MOYOCK', None, '36.48540', '-76.13520'), ('POINT HARBOR', None, '36.08000', '-75.80500'), ('POPLAR BRANCH', None, '36.28060', '-75.89320'), ('POWELLS POINT', None, '36.15970', '-75.85940'), ('SHAWBORO', None, '36.40520', '-76.09310'), ('SLIGO', None, '36.45170', '-76.07750'), ('SNOWDEN', None, '36.45670', '-76.10890'), ('SPOT', None, '36.11810', '-75.81940'), ('WATERLILY', None, '36.38500', '-75.92500')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ014': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ACORN HILL', None, '36.44270', '-76.54680'), ('BUCKLAND', None, '36.47420', '-76.76170'), ('CARTER', None, '36.35720', '-76.68430'), ('CHOWAN BEACH', None, '36.41750', '-76.95000'), ('CORAPEAKE', None, '36.53440', '-76.57680'), ('DORT', None, '36.52920', '-76.87010'), ('DRUM HILL', None, '36.54150', '-76.72520'), ('EASONS CROSSROADS', None, '36.44970', '-76.69940'), ('EURE', None, '36.42600', '-76.85630'), ('GATES', None, '36.50350', '-76.76860'), ('GATESVILLE', 281, '36.40720', '-76.75540'), ('HAZELTON', None, '36.51800', '-76.69900'), ('HOBBSVILLE', None, '36.34760', '-76.60410'), ('RAYS BEACH', None, '36.37740', '-76.84020'), ('REYNOLDSON', None, '36.52810', '-76.79210'), ('RODUCO', None, '36.46240', '-76.81230'), ('SANDY CROSS', None, '36.36860', '-76.55330'), ('SAVAGE', None, '36.49180', '-76.60110'), ('SUNBURY', None, '36.44300', '-76.60820'), ('TOPSY', None, '36.50330', '-76.87100'), ('TROTVILLE', None, '36.36870', '-76.59790'), ('WYANOKE', None, '36.54340', '-76.91180')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ015': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BOB WHITE FORK', None, '36.19360', '-76.20830'), ('ELIZABETH CITY', 17188, '36.29600', '-76.22060'), ('FROG ISLAND', None, '36.14030', '-76.10470'), ('GLEN COVE', None, '36.16810', '-76.07220'), ('LISTERS CORNER', None, '36.14140', '-76.17170'), ('LYNCHS CORNER', None, '36.42320', '-76.42030'), ('MORGANS CORNER', None, '36.41740', '-76.34890'), ('NIXONTON', None, '36.19970', '-76.27190'), ('OKISKO', None, '36.25920', '-76.35500'), ('PARKVILLE', None, '36.29140', '-76.39940'), ('PASQUOTANK', None, '36.26720', '-76.33870'), ('RABBIT CORNER', None, '36.24390', '-76.32220'), ('SYMONDS CREEK', None, '36.19250', '-76.23170'), ('WEEKSVILLE', None, '36.20730', '-76.17000')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ013': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AHOSKIE', 4523, '36.28680', '-76.98590'), ('BARRETTS CROSSROADS', None, '36.47030', '-77.05580'), ('BARTONSVILLE', None, '36.47500', '-76.95890'), ('BRANTLEYS GROVE', None, '36.32110', '-76.94920'), ('COFIELD', 347, '36.35560', '-76.90970'), ('COMO', 78, '36.49970', '-77.01480'), ('EARLEYS', None, '36.25720', '-77.02780'), ('HARRELLSVILLE', 102, '36.30130', '-76.79270'), ('MAPLETON', None, '36.42670', '-77.03500'), ('MENOLA', None, '36.33890', '-77.12920'), ('MILLENNIUM', None, '36.24860', '-77.09420'), ('MURFREESBORO', 2045, '36.44060', '-77.09910'), ('NEWSOME STORE', None, '36.26220', '-76.76810'), ('OAK VILLA', None, '36.37330', '-76.94720'), ('POOR TOWN', None, '36.28030', '-77.02560'), ('PROCTORS CORNER', None, '36.25530', '-76.98810'), ('RIDDICKSVILLE', None, '36.52720', '-76.93920'), ('SAINT JOHN', None, '36.30610', '-77.08670'), ('TUNIS', None, '36.37500', '-76.89500'), ('UNION', None, '36.33380', '-77.02420'), ('WINTON', 956, '36.38990', '-76.93610')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ010': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AFTON', None, '36.33000', '-78.22000'), ('ARCOLA', None, '36.28000', '-77.98000'), ('DREWRY', None, '36.45000', '-78.30000'), ('LAKE GASTON', None, '36.52000', '-77.99000'), ('MACON', 115, '36.43900', '-78.08470'), ('NORLINA', 1107, '36.44570', '-78.19550'), ('WARRENTON', 811, '36.40010', '-78.15710'), ('WISE', None, '36.48000', '-78.18000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ011': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AIRLIE', None, '36.33000', '-77.88000'), ('ENFIELD', 2347, '36.17940', '-77.66810'), ('GLENVIEW', None, '36.17000', '-77.82000'), ('HALIFAX', 344, '36.32520', '-77.59000'), ('HOBGOOD', 404, '36.02740', '-77.39520'), ('LITTLETON', 692, '36.43420', '-77.91060'), ('ROANOKE RAPIDS', 16957, '36.45320', '-77.65170'), ('ROSEMARY', None, '36.45130', '-77.69750'), ('SCOTLAND NECK', 2362, '36.13030', '-77.42130'), ('SOUTH WELDON', 1414, '36.40320', '-77.61900'), ('TILLERY', None, '36.25000', '-77.48000'), ('WELDON', 1374, '36.42420', '-77.60560')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NJZ012': {'fullStateName': 'NEW JERSEY', 'state': 'NJ', 'cities': [('AVENEL', 17552, '40.58250', '-74.27370'), ('CARTERET', 20709, '40.58360', '-74.22880'), ('CLEARBROOK PARK', 3053, '40.30960', '-74.46500'), ('COLONIA', 17811, '40.59260', '-74.31580'), ('CONCORDIA', 3658, '40.31090', '-74.44860'), ('DAYTON', 6235, '40.38260', '-74.51030'), ('DUNELLEN', 6823, '40.58940', '-74.46540'), ('EAST BRUNSWICK', 46756, '40.42770', '-74.41650'), ('EDISON', 97687, '40.52880', '-74.36930'), ('FORDS', 15032, '40.54210', '-74.31220'), ('HEATHCOTE', 4755, '40.38860', '-74.57620'), ('HELMETTA', 1825, '40.37660', '-74.42440'), ('HIGHLAND PARK', 13999, '40.50030', '-74.42840'), ('ISELIN', 16698, '40.57020', '-74.31670'), ('JAMESBURG', 6025, '40.34900', '-74.44020'), ('KENDALL PARK', 9006, '40.41340', '-74.56260'), ('LAURENCE HARBOR', 6227, '40.44790', '-74.24950'), ('MADISON PARK', 6929, '40.44620', '-74.29530'), ('METUCHEN', 12840, '40.54190', '-74.36340'), ('MIDDLESEX', 13717, '40.57370', '-74.50210'), ('MILLTOWN', 7000, '40.45010', '-74.43470'), ('MONMOUTH JUNCTION', 2721, '40.38000', '-74.54520'), ('NEW BRUNSWICK', 48573, '40.48640', '-74.44510'), ('NORTH BRUNSWICK TOWNSHIP', 36287, '40.44850', '-74.47760'), ('OLD BRIDGE', 22833, '40.39290', '-74.33000'), ('PERTH AMBOY', 47303, '40.52020', '-74.27210'), ('PORT READING', 3829, '40.56460', '-74.24700'), ('ROSSMOOR', 3129, '40.33650', '-74.47390'), ('SAYREVILLE', 40377, '40.46560', '-74.32210'), ('SEWAREN', 2780, '40.55080', '-74.26090'), ('SOCIETY HILL', 3804, '40.53400', '-74.45830'), ('SOUTH BOUND BROOK', 4492, '40.55400', '-74.52810'), ('SOUTH PLAINFIELD', 21810, '40.57540', '-74.41530'), ('SOUTH RIVER', 15322, '40.44530', '-74.37840'), ('SPOTSWOOD', 7880, '40.39390', '-74.39050'), ('WOODBRIDGE', 18309, '40.55470', '-74.28580')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'TNZ077': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('MANCHESTER', 8294, '35.46860', '-86.08080'), ('TULLAHOMA', 17994, '35.37120', '-86.21550')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ076': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LYNCHBURG', None, '35.28420', '-86.35740')], 'partOfState': '', 'wfo': 'HUN'}, -'TNZ075': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELL BUCKLE', 391, '35.59070', '-86.35410'), ('NORMANDY', 141, '35.45140', '-86.25810'), ('SHELBYVILLE', 16105, '35.49040', '-86.44670'), ('WARTRACE', 548, '35.52780', '-86.33290')], 'partOfState': '', 'wfo': 'OHX'}, -'NHZ004': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALBANY', None, '43.95780', '-71.16810'), ('CHATHAM', None, '44.16440', '-71.01170'), ('CONWAY', 1692, '43.97920', '-71.12080'), ('CRAWFORD NOTCH', None, '44.16860', '-71.40500'), ('JACKSON', None, '44.14420', '-71.18140'), ('NORTH CONWAY', 2069, '44.05380', '-71.12680')], 'partOfState': 'NORTHERN', 'wfo': 'GYX'}, -'TNZ074': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ELKMONT', None, '35.65220', '-83.58220'), ('GATLINBURG', 3382, '35.72340', '-83.49370'), ('PITTMAN CENTER', 477, '35.75880', '-83.38830')], 'partOfState': '', 'wfo': 'MRX'}, -'WYZ055': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('PINE TREE JUNCTION', None, '43.61670', '-105.78330'), ('PUMPKIN BUTTES', None, '43.73590', '-105.88390'), ('RENO JUNCTION', None, '43.76660', '-105.47690'), ('SAVAGETON', None, '43.86450', '-105.78740'), ('TURNERCREST', None, '43.56670', '-105.66670'), ('WRIGHT', 1347, '43.74920', '-105.50190')], 'partOfState': 'NORTHEAST', 'wfo': 'UNR'}, -'TNZ073': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BIRD CROSSING', None, '35.91170', '-83.36560'), ('HARRISBURG', None, '35.86250', '-83.48440'), ('KODAK', None, '35.97310', '-83.62860'), ('MCMAHAN', None, '35.91500', '-83.67310'), ('PIGEON FORGE', 5083, '35.79270', '-83.55810'), ('SEVIERVILLE', 11757, '35.89200', '-83.57820'), ('SEYMOUR', 8850, '35.87470', '-83.77390'), ('WEARS VALLEY', None, '35.71360', '-83.65580')], 'partOfState': '', 'wfo': 'MRX'}, -'MIZ061': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ARGENTINE', 2285, '42.79020', '-83.83200'), ('BURTON', 30308, '42.99670', '-83.61960'), ('CLIO', 2483, '43.17710', '-83.73610'), ('DAVISON', 5536, '43.03210', '-83.51830'), ('FENTON', 10582, '42.80000', '-83.71420'), ('FLINT', 124943, '43.02280', '-83.69280'), ('FLUSHING', 8348, '43.06490', '-83.84160'), ('GAINES', 366, '42.87230', '-83.91180'), ('GENESEE', None, '43.11250', '-83.61780'), ('GOODRICH', 1353, '42.91660', '-83.50830'), ('GRAND BLANC', 8242, '42.92580', '-83.61870'), ('LINDEN', 2861, '42.81920', '-83.78150'), ('MONTROSE', 1619, '43.17560', '-83.89260'), ('MOUNT MORRIS', 3194, '43.11630', '-83.69890'), ('OTISVILLE', 882, '43.16530', '-83.52430'), ('RANKIN', None, '42.91440', '-83.75060'), ('SWARTZ CREEK', 5102, '42.96210', '-83.82650')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TNZ071': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALCOA', 7734, '35.79300', '-83.97920'), ('CLOVER HILL', None, '35.70810', '-84.06720'), ('EAGLETON VILLAGE', 4883, '35.79400', '-83.93670'), ('FRIENDSVILLE', 890, '35.75720', '-84.13040'), ('HAPPY VALLEY', None, '35.60810', '-83.95810'), ('MARYVILLE', 23120, '35.74750', '-83.97300'), ('TALASSEE', None, '35.54810', '-84.06080'), ('TOWNSEND', 244, '35.67610', '-83.75190'), ('WALLAND', None, '35.72530', '-83.81530'), ('WILDWOOD', None, '35.80250', '-83.87360')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ070': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CHESTNUT HILL', None, '35.93000', '-83.34030'), ('DANDRIDGE', 2078, '36.02310', '-83.41870'), ('JEFFERSON CITY', 7760, '36.11900', '-83.48760'), ('NEW MARKET', 1234, '36.09890', '-83.55240'), ('PIEDMONT', None, '36.02530', '-83.52810'), ('WHITE PINE', 1997, '36.09930', '-83.29770')], 'partOfState': '', 'wfo': 'MRX'}, -'KSZ006': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ATHOL', 51, '39.76570', '-98.91990'), ('BELLAIRE', None, '39.79850', '-98.67600'), ('CEDAR', 26, '39.65670', '-98.94000'), ('GAYLORD', 145, '39.64610', '-98.84670'), ('HARLAN', None, '39.60550', '-98.76650'), ('KENSINGTON', 529, '39.76740', '-99.03200'), ('LEBANON', 303, '39.81050', '-98.55700'), ('SMITH CENTER', 1931, '39.77970', '-98.78310')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'GID'}, -'COZ037': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('11-MILE CANYON RESERVOIR', None, '38.90400', '-105.48300'), ('ANTERO JUNCTION', None, '38.92000', '-105.97000'), ('ANTERO RESERVOIR', None, '38.99200', '-105.89200'), ('GARO', None, '39.12000', '-105.90000'), ('GUFFEY', None, '38.75000', '-105.53000'), ('HARTSEL', None, '39.02000', '-105.80000'), ('LAKE GEORGE', None, '38.98000', '-105.37000'), ('TARRYALL', None, '39.10000', '-105.43000'), ('WILKERSON PASS', None, '39.04000', '-105.52500')], 'partOfState': 'CENTRAL', 'wfo': 'BOU'}, -'COZ036': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ASPEN PARK', 874, '39.52000', '-105.27000'), ('BAILEY', None, '39.40000', '-105.47000'), ('BERGEN PARK', None, '39.69200', '-105.35800'), ('BLACK HAWK', 118, '39.80030', '-105.49130'), ('BROOKVALE', None, '39.63300', '-105.42200'), ('BUFFALO CREEK', None, '39.38000', '-105.27000'), ('CENTRAL CITY', 515, '39.79980', '-105.51240'), ('CHEESMAN RESERVOIR', None, '39.20800', '-105.27100'), ('CONIFER', None, '39.52000', '-105.30000'), ('DECKERS', None, '39.25000', '-105.23000'), ("DEVIL'S HEAD", None, '39.26000', '-105.10300'), ('DOWNIEVILLE', None, '39.76800', '-105.61400'), ('EMPIRE', 355, '39.75970', '-105.68260'), ('EVERGREEN', 9216, '39.63370', '-105.34230'), ('FLOYD HILL', None, '39.72100', '-105.40700'), ('FOXTON', None, '39.42000', '-105.23000'), ('GENESEE', 3699, '39.68570', '-105.27220'), ('GEORGETOWN', 1088, '39.71520', '-105.69600'), ('GLENISLE', None, '39.40800', '-105.50000'), ('HARRIS PARK', None, '39.51100', '-105.50400'), ('IDAHO SPRINGS', 1889, '39.74100', '-105.51190'), ('IDLEDALE', None, '39.67000', '-105.23000'), ('INDIAN HILLS', 1197, '39.62000', '-105.23000'), ('KITTREDGE', 954, '39.65000', '-105.30000'), ('LAWSON', None, '39.76700', '-105.63300'), ('PERRY PARK', 1180, '39.26000', '-104.98300'), ('PINE', None, '39.42000', '-105.33000'), ('PLEASANT VIEW', None, '39.72000', '-105.17000'), ('RED ROCKS PARK', None, '39.66400', '-105.20100'), ('ROCKY FLATS', None, '39.89200', '-105.20400'), ('ROLLINSVILLE', None, '39.92000', '-105.50000'), ('ROXBOROUGH PARK', 4446, '39.44200', '-105.07400'), ('SANTA MARIA', None, '39.45000', '-105.63300'), ('SHAFFERS CROSSING', None, '39.45000', '-105.33000'), ('SHAMBALLA', None, '39.37000', '-105.00000'), ('SHAWNEE', None, '39.42000', '-105.55000'), ('SINGLETON', None, '39.44400', '-105.60300'), ('SOUTH PLATTE', None, '39.40000', '-105.17000'), ('SPRUCEWOOD', None, '39.34900', '-105.12400'), ('TINY TOWN', None, '39.60000', '-105.22000'), ('WAH KEENEY PARK', None, '39.65000', '-105.33000'), ('WELLINGTON LAKE', None, '39.31400', '-105.35800'), ('WESTCREEK', 105, '39.15000', '-105.17000'), ('WHITE RANCH OPEN SPACE', None, '39.81700', '-105.28100')], 'partOfState': 'CENTRAL', 'wfo': 'BOU'}, -'COZ035': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALLENSPARK', 496, '40.20000', '-105.52000'), ('BUCKHORN MOUNTAIN', None, '40.61300', '-105.32500'), ('CRESCENT VILLAGE', None, '39.93000', '-105.33000'), ('DEER RIDGE', None, '40.38000', '-105.60000'), ('DRAKE', None, '40.43000', '-105.33000'), ('ELDORA', 170, '39.95000', '-105.57000'), ('ESTES PARK', 5413, '40.37210', '-105.52100'), ('FOUR CORNERS', None, '40.87100', '-105.91300'), ('GLEN HAVEN', None, '40.45000', '-105.43000'), ('GOLD HILL', 210, '40.06300', '-105.40800'), ('HORSETOOTH MOUNTAIN', None, '40.53900', '-105.19200'), ('JAMESTOWN', 205, '40.11610', '-105.38960'), ('MEEKER PARK', None, '40.23000', '-105.53000'), ('MISHOWAKA', None, '40.69000', '-105.36700'), ('NEDERLAND', 1394, '39.96260', '-105.50530'), ('OLYMPUS HGT', None, '40.38000', '-105.47000'), ('PEACEFUL VALLEY', None, '40.13100', '-105.50000'), ('PINECLIFFE', None, '39.93000', '-105.43000'), ('POUDRE PARK', None, '40.68000', '-105.30000'), ('RAYMOND', None, '40.15000', '-105.45000'), ('RED FEATHER LAKES', 525, '40.80000', '-105.58000'), ('RIVERSIDE', None, '40.17000', '-105.42000'), ('RUSTIC', None, '40.70000', '-105.57000'), ('VIRGINIA DALE', None, '40.95000', '-105.35000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ034': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ALMA', 179, '39.28580', '-106.06470'), ('ARAPAHOE PEAK', None, '40.02400', '-105.64600'), ('ASPEN SPRINGS', None, '39.83300', '-105.48300'), ('BAKERVILLE', None, '39.69100', '-105.80400'), ('BERTHOUD FALLS', None, '39.77100', '-105.80800'), ('BERTHOUD PASS', None, '39.79600', '-105.77500'), ('BLUE RIVER', 685, '39.43250', '-106.03660'), ('BLUE VALLEY', None, '39.70000', '-105.49200'), ('BRAINARD LAKE', None, '40.07900', '-105.57500'), ('BRECKENRIDGE', 2408, '39.50750', '-106.04740'), ('CARIBOU', None, '39.98000', '-105.57000'), ('COMO', None, '39.32000', '-105.90000'), ('COPPER MOUNTAIN', None, '39.49200', '-106.15000'), ('DEVILS THUMB PARK', None, '39.96300', '-105.75000'), ('DILLON', 802, '39.62500', '-106.03900'), ('DUMONT', None, '39.78000', '-105.60000'), ('EAST PORTAL', None, '39.90000', '-105.65000'), ('ECHO LAKE', None, '39.65000', '-105.60000'), ('FAIRPLAY', 610, '39.22380', '-105.99910'), ('FRISCO', 2443, '39.57910', '-106.09600'), ('GRANT', None, '39.45000', '-105.67000'), ('GUANELLA PASS', None, '39.59200', '-105.71300'), ('HIGHLAND PARK', None, '39.50100', '-105.52500'), ('JEFFERSON', None, '39.38000', '-105.80000'), ('KENOSHA PASS', None, '39.41300', '-105.75800'), ('KEYSTONE', 825, '39.60800', '-105.96700'), ('KOKOMO', None, '39.38000', '-106.18000'), ('LOVELAND PASS', None, '39.66500', '-105.87900'), ('MONTEZUMA', 42, '39.58130', '-105.86840'), ('MT AUDUBON', None, '40.09900', '-105.61700'), ('MT EVANS', None, '39.58600', '-105.64200'), ('RED HILL PASS', None, '39.26500', '-105.96400'), ('ROLLINS PASS', None, '39.93300', '-105.68200'), ('RUSSELL GULCH', None, '39.77000', '-105.52000'), ('SILVER PLUME', 203, '39.69610', '-105.72670'), ('ST MARYS GLACIER', None, '39.83600', '-105.64600'), ('TARRYALL RESERVOIR', None, '39.22900', '-105.60800'), ('TOLLAND', None, '39.90000', '-105.60000'), ('VAIL PASS', None, '39.53100', '-106.21800'), ('WARD', 169, '40.07250', '-105.51130'), ('WINTER PARK', 662, '39.88690', '-105.77940')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ033': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CAMERON PASS', None, '40.51700', '-105.88300'), ('GLENDEVEY', None, '40.78000', '-105.95000'), ('GOULD', None, '40.52000', '-106.02000'), ("LONG'S PEAK", None, '40.25800', '-105.61300'), ('PINGREE PARK', None, '40.56700', '-105.58300'), ('TRAIL RIDGE', None, '40.43300', '-105.75000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BOU'}, -'COZ032': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ELKDALE', None, '40.03800', '-105.87800'), ('FRASER', 910, '39.93700', '-105.79440'), ('GRANBY', 1525, '40.08840', '-105.93720'), ('GRAND LAKE', 447, '40.25120', '-105.82140'), ('GREEN MTN RESERVOIR', None, '39.87600', '-106.33200'), ('HEENEY', None, '39.87000', '-106.30000'), ('HOT SULPHUR SPRINGS', 521, '40.07370', '-106.09910'), ('KREMMLING', 1578, '40.05640', '-106.37630'), ('PARSHALL', None, '40.05000', '-106.18000'), ('RADIUM', None, '39.95000', '-106.53000'), ('SILVERTHORNE', 3196, '39.65170', '-106.08160'), ('TABERNASH', 165, '39.98000', '-105.85000'), ('WILLIAMS FORK RESERVOIR', None, '40.03500', '-106.20400')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BOU'}, -'COZ031': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('PEARL', None, '40.98000', '-106.53000'), ('RABBIT EARS PASS', None, '40.38300', '-106.61300')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BOU'}, -'COZ030': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BROWNLEE', None, '40.80000', '-106.25000'), ('COALMONT', None, '40.57000', '-106.43000'), ('COWDREY', None, '40.85000', '-106.30000'), ('RAND', None, '40.45000', '-106.17000'), ('SPICER', None, '40.45000', '-106.43000'), ('WALDEN', 734, '40.73060', '-106.28090')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BOU'}, -'MIZ033': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('FALMOUTH', None, '44.25000', '-85.08330'), ('JENNINGS', None, '44.33330', '-85.28330'), ('LAKE CITY', 923, '44.33030', '-85.20850'), ('LUCAS', None, '44.21670', '-85.28330'), ('MCBAIN', 584, '44.19440', '-85.21440'), ('MERRITT', None, '44.31670', '-84.93330'), ('MODDERSVILLE', None, '44.21670', '-84.95100'), ('MOORESTOWN', None, '44.47000', '-84.95000'), ('STITTSVILLE', None, '44.45000', '-85.03000'), ('VOGEL CENTER', None, '44.18330', '-85.05000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'UTZ021': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BULLFROG', None, '37.50000', '-110.72000'), ('TICABOO', None, '37.60000', '-110.68000')], 'partOfState': '', 'wfo': 'SLC'}, -'COZ039': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('APPLEWOOD', 7123, '39.74720', '-105.16230'), ('ARVADA', 102153, '39.82110', '-105.10670'), ('BOULDER', 94673, '40.02690', '-105.25100'), ('BOW MAR', 847, '39.62580', '-105.05210'), ('BROOMFIELD', 38272, '39.94400', '-105.06170'), ('CHATFIELD RESERVOIR', None, '39.55800', '-105.06400'), ('COLUMBINE', 24095, '39.58790', '-105.06880'), ('EDGEWATER', 5445, '39.75030', '-105.06260'), ('ELDORADO SPRINGS', 557, '39.93000', '-105.27000'), ('GOLDEN', 17159, '39.73890', '-105.21550'), ('GUNBARREL', 9435, '40.06550', '-105.17110'), ('HYGIENE', None, '40.18000', '-105.17000'), ('KEN CARYL', 30887, '39.57590', '-105.11170'), ('LAFAYETTE', 23197, '39.99430', '-105.09800'), ('LAKESIDE', 20, '39.77880', '-105.05750'), ('LAKEWOOD', 144126, '39.69520', '-105.11360'), ('LEYDEN', None, '39.82000', '-105.12000'), ('LONGMONT', 71093, '40.17280', '-105.11170'), ('LOUISVILLE', 18937, '39.96840', '-105.13960'), ('LYONS', 1585, '40.22290', '-105.26850'), ('MARSHALL', None, '39.95000', '-105.23000'), ('MORRISON', 430, '39.65450', '-105.18240'), ('MOUNTAIN VIEW', 569, '39.77570', '-105.05570'), ('NIWOT', 4160, '40.09560', '-105.15580'), ('SUPERIOR', 9011, '39.92920', '-105.15490'), ('WHEAT RIDGE', 32913, '39.77340', '-105.09860')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ038': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AULT', 1432, '40.58400', '-104.73310'), ('BELLVUE', None, '40.63000', '-105.17000'), ('BERTHOUD', 4839, '40.30570', '-105.08120'), ('BLACK HOLLOW RESERVOIR', None, '40.60800', '-104.87500'), ('BUCKEYE', None, '40.80000', '-105.12000'), ('CAMPION', 1832, '40.34470', '-105.09500'), ('CARR', None, '40.90000', '-104.87000'), ('FORT COLLINS', 118652, '40.55550', '-105.06850'), ('HARMONY', None, '40.52500', '-105.08300'), ('HEREFORD', None, '40.97000', '-104.30000'), ('KELIM', None, '40.40000', '-104.95000'), ('LAPORTE', 2691, '40.62000', '-105.13000'), ('LIVERMORE', None, '40.75000', '-105.23000'), ('LOVELAND', 50608, '40.41860', '-105.07170'), ('LOVELAND HEIGHTS', None, '40.38000', '-105.19000'), ('MASONVILLE', None, '40.48000', '-105.20000'), ('NATURAL FORT REST AREA', None, '40.95700', '-104.92200'), ('NUNN', 471, '40.70390', '-104.78040'), ('OWL CANYON', None, '40.72000', '-105.13000'), ('PIERCE', 884, '40.63290', '-104.75460'), ('PURCELL', None, '40.63000', '-104.58000'), ('ROCKPORT', None, '40.90000', '-104.78000'), ('TEDS PLACE', None, '40.67000', '-105.18000'), ('TIMNATH', 223, '40.52930', '-104.98320'), ('WELLINGTON', 2672, '40.70280', '-105.00190')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'ARZ074': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CROSSETT', 6097, '33.12740', '-91.96600'), ('FOUNTAIN HILL', 159, '33.35690', '-91.85090'), ('HAMBURG', 3039, '33.22580', '-91.79700'), ('MONTROSE', 526, '33.29860', '-91.49700'), ('NORTH CROSSETT', 3581, '33.16980', '-91.93620'), ('PARKDALE', 377, '33.12080', '-91.54580'), ('PORTLAND', 552, '33.23830', '-91.51120'), ('WEST CROSSETT', 1664, '33.14440', '-92.01990'), ('WILMOT', 786, '33.05830', '-91.57500')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MIZ068': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BRIGHTON', 6701, '42.53010', '-83.78480'), ('CHILSON', None, '42.52690', '-83.86170'), ('COHOCTAH', None, '42.75970', '-83.94860'), ('CONWAY TOWNSHIP', None, '42.73300', '-84.09600'), ('FOWLERVILLE', 2972, '42.66010', '-84.07230'), ('GREGORY', None, '42.45970', '-84.08450'), ('HAMBURG', None, '42.45170', '-83.79970'), ('HARTLAND', None, '42.65570', '-83.75470'), ('HOWELL', 9232, '42.60940', '-83.93570'), ('PARKERS CORNERS', None, '42.56810', '-84.11330'), ('PINCKNEY', 2141, '42.45450', '-83.94550'), ('TYRONE TOWNSHIP', None, '42.73300', '-83.75000')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIZ069': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BIRMINGHAM', 19291, '42.54480', '-83.21650'), ('BLOOMFIELD HILLS', 3940, '42.57890', '-83.24740'), ('CLARKSTON', None, '42.73540', '-83.42110'), ('DAVISBURG', None, '42.75240', '-83.54030'), ('FARMINGTON', 10423, '42.46320', '-83.37730'), ('FERNDALE', 22105, '42.45930', '-83.13100'), ('HIGHLAND', None, '42.63810', '-83.61720'), ('HOLLY', 6135, '42.79900', '-83.62260'), ('LAKE ORION', 2715, '42.78370', '-83.24430'), ('LEONARD', 332, '42.86590', '-83.14320'), ('MILFORD', 6272, '42.58570', '-83.60110'), ('NOVI', 47386, '42.47550', '-83.49050'), ('ORCHARD LAKE', None, '42.58240', '-83.37750'), ('ORTONVILLE', 1535, '42.85140', '-83.44420'), ('OXFORD', 3540, '42.82100', '-83.25400'), ('PONTIAC', 66337, '42.64910', '-83.28720'), ('ROCHESTER', 10467, '42.68670', '-83.12380'), ('ROYAL OAK', 60062, '42.50860', '-83.15460'), ('SOUTH LYON', 10036, '42.46070', '-83.65130'), ('SOUTHFIELD', 78296, '42.47560', '-83.25920'), ('TROY', 80959, '42.58020', '-83.14310'), ('WATERFORD', 73150, '42.66290', '-83.38800'), ('WHITE LAKE', None, '42.65450', '-83.50490')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'VAZ087': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARLEY', None, '36.56410', '-77.72410'), ('BRINK', None, '36.61780', '-77.63470'), ('BRYANTS CORNER', None, '36.58850', '-77.41570'), ('BUFFORD CROSSROADS', None, '36.73770', '-77.61950'), ('CLARESVILLE', None, '36.62250', '-77.45110'), ('COWIE CORNER', None, '36.77420', '-77.57190'), ('DAHLIA', None, '36.56970', '-77.53660'), ('DURAND', None, '36.72000', '-77.58830'), ('EMPORIA', 5665, '36.69480', '-77.53670'), ('EMPORIA AIRPORT', None, '36.68720', '-77.48360'), ('EMPORIA RESERVOIR', None, '36.69800', '-77.56760'), ('FIELDS CROSSROADS', None, '36.83170', '-77.54940'), ('LANES CORNER', None, '36.66280', '-77.52920'), ('PLEASANT SHADE', None, '36.75110', '-77.64720'), ('PURDY', None, '36.82270', '-77.58820'), ('RADIUM', None, '36.73170', '-77.62860'), ('SLAGLES LAKE', None, '36.75650', '-77.52860'), ('SLATES CORNER', None, '36.56310', '-77.65890')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'TNZ079': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALTAMONT', 1136, '35.42970', '-85.72840'), ('BEERSHEBA SPRINGS', 553, '35.45740', '-85.67130'), ('COALMONT', 948, '35.33900', '-85.71340'), ('GRUETLI-LAAGER', 1867, '35.37100', '-85.63710'), ('PALMER', 726, '35.35790', '-85.56520'), ('TRACY CITY', 1679, '35.25900', '-85.75190')], 'partOfState': '', 'wfo': 'OHX'}, -'MTZ038': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('LODGE GRASS', 510, '45.31440', '-107.36660'), ('PRYOR', 628, '45.41910', '-108.53190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ036': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BROADUS', 451, '45.44290', '-105.40700')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTZ037': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('EKALAKA', 410, '45.88920', '-104.54920')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTZ034': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ABSAROKEE', 1234, '45.52490', '-109.44450'), ('COLUMBUS', 1748, '45.63720', '-109.25060')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ035': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BILLINGS', 89847, '45.79140', '-108.53850'), ('BROADVIEW', 150, '46.09780', '-108.87720'), ('LAUREL', 6255, '45.67400', '-108.77170'), ('LOCKWOOD', 4306, '45.81930', '-108.41410')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ032': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ISMAY', 26, '46.50020', '-104.79320'), ('MILES CITY', 8487, '46.40730', '-105.83910')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTZ033': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BAKER', 1695, '46.36310', '-104.27380'), ('PLEVNA', 138, '46.41630', '-104.51730')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTZ030': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('HYSHAM', 330, '46.29050', '-107.22930')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'MTZ031': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('COLSTRIP', 2346, '45.89470', '-106.63410'), ('FORSYTH', 1944, '46.26670', '-106.67710')], 'partOfState': 'SOUTHEAST', 'wfo': 'BYZ'}, -'NHZ011': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ALSTEAD', None, '43.15000', '-72.36667'), ('CHESTERFIELD', None, '42.88333', '-72.46667'), ('DUBLIN', None, '42.91667', '-72.06667'), ('FITZWILLIAM', None, '42.78333', '-72.15000'), ('GILSUM', None, '43.05000', '-72.26667'), ('HARRISVILLE', None, '42.95000', '-72.10000'), ('HINSDALE', 1713, '42.78820', '-72.48830'), ('JAFFREY', 2802, '42.81300', '-72.02480'), ('KEENE', 22563, '42.95000', '-72.29740'), ('MARLBOROUGH', 1089, '42.90390', '-72.21020'), ('MARLOW', None, '43.11667', '-72.20000'), ('NELSON', None, '42.98333', '-72.13333'), ('RICHMOND', None, '42.75000', '-72.28333'), ('RINDGE', None, '42.75000', '-72.01667'), ('ROXBURY', None, '42.93333', '-72.20000'), ('STODDARD', None, '43.08333', '-72.10000'), ('SULLIVAN', None, '43.01667', '-72.21667'), ('SURRY', None, '43.05000', '-72.33333'), ('SWANZEY', None, '42.86667', '-72.28333'), ('TROY', None, '42.83333', '-72.18333'), ('WALPOLE', None, '43.08333', '-72.43333'), ('WESTMORELAND', None, '42.96667', '-72.45000'), ('WINCHESTER', 1832, '42.77620', '-72.38470')], 'partOfState': 'SOUTHERN', 'wfo': 'BOX'}, -'NHZ010': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('BARRINGTON', None, '43.22280', '-71.04750'), ('DOVER', 26884, '43.19780', '-70.87420'), ('DURHAM', 9024, '43.13390', '-70.92690'), ('FARMINGTON', 3468, '43.38970', '-71.06560'), ('LEE', None, '43.12310', '-71.01190'), ('MADBURY', None, '43.16920', '-70.92440'), ('MIDDLETON', None, '43.47610', '-71.07000'), ('MILTON', None, '43.40970', '-70.98890'), ('NEW DURHAM', None, '43.43670', '-71.17280'), ('ROCHESTER', 28461, '43.30440', '-70.97610'), ('ROLLINSFORD', None, '43.23610', '-70.82080'), ('STRAFFORD', None, '43.32690', '-71.18470')], 'partOfState': 'CENTRAL', 'wfo': 'GYX'}, -'NHZ013': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ATKINSON', None, '42.83830', '-71.14750'), ('AUBURN', None, '43.00440', '-71.34890'), ('BRENTWOOD', None, '42.97860', '-71.07330'), ('CANDIA', None, '43.07780', '-71.27720'), ('CHESTER', None, '42.95670', '-71.25780'), ('DANVILLE', None, '42.91250', '-71.12500'), ('DEERFIELD', None, '43.14610', '-71.21690'), ('DERRY', 22661, '42.88060', '-71.32780'), ('EAST KINGSTON', None, '42.92560', '-71.01720'), ('EPPING', 1673, '43.03330', '-71.07470'), ('EXETER', 9759, '42.98140', '-70.94830'), ('FREMONT', None, '42.99080', '-71.14310'), ('HAMPSTEAD', None, '42.87440', '-71.18170'), ('KENSINGTON', None, '42.92690', '-70.94440'), ('KINGSTON', None, '42.93640', '-71.05390'), ('LONDONDERRY', 11417, '42.86500', '-71.37440'), ('NEWFIELDS', None, '43.03690', '-70.93890'), ('NEWMARKET', 5124, '43.08280', '-70.93560'), ('NEWTON', None, '42.86940', '-71.03500'), ('NORTHWOOD', None, '43.19420', '-71.15140'), ('NOTTINGHAM', None, '43.11440', '-71.10030'), ('PLAISTOW', None, '42.83640', '-71.09530'), ('RAYMOND', 2839, '43.03610', '-71.18390'), ('SALEM', None, '42.78830', '-71.20140'), ('SANDOWN', None, '42.92860', '-71.18750'), ('SOUTH HAMPTON', None, '42.88080', '-70.96310'), ('STRATHAM', None, '43.02390', '-70.91420'), ('WINDHAM', None, '42.80060', '-71.30470')], 'partOfState': 'SOUTHERN', 'wfo': 'GYX'}, -'NHZ012': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('BEDFORD', None, '42.95000', '-71.50000'), ('HUDSON', 7814, '42.76380', '-71.43210'), ('LITCHFIELD', None, '42.83333', '-71.46667'), ('MANCHESTER', 107006, '42.98360', '-71.44490'), ('MERRIMACK', None, '42.86667', '-71.48333'), ('NASHUA', 86605, '42.74860', '-71.49180'), ('PELHAM', None, '42.73333', '-71.31667')], 'partOfState': 'SOUTHERN', 'wfo': 'BOX'}, -'NHZ015': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('AMHERST', None, '42.86667', '-71.61667'), ('ANTRIM', 1389, '43.03170', '-71.94580'), ('BENNINGTON', None, '43.00000', '-71.93330'), ('BROOKLINE', None, '42.73333', '-71.66667'), ('DEERING', None, '43.06667', '-71.86667'), ('FRANCESTOWN', None, '42.98333', '-71.80000'), ('GOFFSTOWN', None, '43.01667', '-71.60000'), ('GREENFIELD', None, '42.95000', '-71.85000'), ('GREENVILLE', 1131, '42.76960', '-71.79980'), ('HANCOCK', None, '42.96667', '-71.98333'), ('HILLSBOROUGH', 1842, '43.11430', '-71.89980'), ('HOLLIS', None, '42.73333', '-71.58333'), ('LYNDEBOROUGH', None, '42.90000', '-71.75000'), ('MASON', None, '42.75000', '-71.75000'), ('MILFORD', 8293, '42.83400', '-71.66180'), ('MONT VERNON', None, '42.90000', '-71.66667'), ('NEW BOSTON', None, '42.96667', '-71.68333'), ('NEW IPSWICH', None, '42.75000', '-71.85000'), ('PETERBOROUGH', 2944, '42.87660', '-71.96230'), ('SHARON', None, '42.81667', '-71.90000'), ('TEMPLE', None, '42.81667', '-71.83333'), ('WEARE', None, '43.10000', '-71.73333'), ('WILTON', 1236, '42.84690', '-71.73680'), ('WINDSOR', None, '43.06667', '-71.96667')], 'partOfState': 'SOUTHERN', 'wfo': 'BOX'}, -'NHZ014': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('GREENLAND', None, '43.03610', '-70.83330'), ('HAMPTON', 9126, '42.93750', '-70.83940'), ('HAMPTON FALLS', None, '42.91610', '-70.86420'), ('NEWINGTON', None, '43.10000', '-70.83420'), ('NORTH HAMPTON', None, '42.97250', '-70.83030'), ('PORTSMOUTH', 20784, '43.07170', '-70.76310'), ('RYE', None, '43.01330', '-70.77140'), ('SEABROOK', None, '42.89470', '-70.87170')], 'partOfState': 'SOUTHERN', 'wfo': 'GYX'}, -'OKZ008': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BLACKWELL', 7668, '36.80160', '-97.29850'), ('BRAMAN', 244, '36.92290', '-97.33370'), ('CHILOCCO', None, '36.98000', '-97.07000'), ('EDDY', None, '36.73000', '-97.45000'), ('HARDY', None, '36.98000', '-96.78000'), ('KAW CITY', 372, '36.76490', '-96.86300'), ('KILDARE', 92, '36.80900', '-97.04960'), ('NARDIN', None, '36.80630', '-97.44800'), ('NEWKIRK', 2243, '36.88170', '-97.05540'), ('PONCA CITY', 25919, '36.72360', '-97.06880'), ('THREE SANDS', None, '36.60000', '-97.28000'), ('TONKAWA', 3299, '36.68280', '-97.30780')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'ARZ028': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('BASSETT', 168, '35.53610', '-90.13090'), ('BIRDSONG', 40, '35.45900', '-90.26050'), ('BLYTHEVILLE', 18272, '35.93430', '-89.92480'), ('BURDETTE', 129, '35.81490', '-89.94590'), ('DELL', 251, '35.85520', '-90.03340'), ('DYESS', 515, '35.58940', '-90.21310'), ('GOSNELL', 3968, '35.96110', '-89.97240'), ('JOINER', 540, '35.50830', '-90.14970'), ('KEISER', 808, '35.67450', '-90.09480'), ('LEACHVILLE', 1981, '35.92150', '-90.25620'), ('LUXORA', 1317, '35.75770', '-89.93020'), ('MANILA', 3055, '35.88360', '-90.16150'), ('MARIE', 108, '35.61330', '-90.08170'), ('OSCEOLA', 8875, '35.70130', '-89.99450'), ('THREE WAY', None, '35.70000', '-90.25000'), ('VICTORIA', 59, '35.75810', '-90.06070'), ('WILSON', 939, '35.56620', '-90.04190')], 'partOfState': '', 'wfo': 'MEG'}, -'ARZ027': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('FISHER', 265, '35.49150', '-90.97220'), ('GREENFIELD', None, '35.68330', '-90.71670'), ('HARRISBURG', 2192, '35.56030', '-90.72110'), ('LEPANTO', 2133, '35.60710', '-90.33350'), ('MARKED TREE', 2800, '35.53000', '-90.41750'), ('TRUMANN', 6889, '35.67470', '-90.51950'), ('TYRONZA', 918, '35.49030', '-90.35890'), ('WALDENBURG', 80, '35.56490', '-90.93480'), ('WEINER', 760, '35.61920', '-90.90200')], 'partOfState': '', 'wfo': 'MEG'}, -'NHZ018': {'fullStateName': 'NEW HAMPSHIRE', 'state': 'NH', 'cities': [('ACTON', None, '43.53420', '-70.91030'), ('ALFRED', None, '43.47640', '-70.71890'), ('BERWICK', 1993, '43.26580', '-70.86500'), ('BUXTON', None, '43.63780', '-70.51940'), ('CORNISH', None, '43.80470', '-70.80170'), ('GOODWINS MILLS', None, '43.50860', '-70.58220'), ('HOLLIS', None, '43.60500', '-70.59360'), ('LEBANON', None, '43.39440', '-70.85140'), ('LIMERICK', None, '43.68830', '-70.79420'), ('LIMINGTON', None, '43.73170', '-70.71140'), ('NEWFIELD', None, '43.64810', '-70.84750'), ('PARSONSFIELD', None, '43.72690', '-70.92920'), ('SANFORD', 10133, '43.43920', '-70.77470'), ('SHAPLEIGH', None, '43.54060', '-70.84860'), ('SOUTH BERWICK', None, '43.23440', '-70.81000'), ('SPRINGVALE', 3488, '43.46700', '-70.80320'), ('WATERBORO', None, '43.53560', '-70.71560'), ('SOMERSWORTH', 11477, '43.26170', '-70.86580')], 'partOfState': '', 'wfo': 'GYX'}, -'OKZ004': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BUFFALO', 1200, '36.83490', '-99.62760'), ('LAVERNE', 1097, '36.70610', '-99.89670'), ('MAY', 33, '36.61650', '-99.74900'), ('ROSSTON', 66, '36.81220', '-99.92990'), ('SELMAN', None, '36.80000', '-99.48000')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'OKZ005': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALVA', 5288, '36.80190', '-98.66720'), ('AVARD', 26, '36.69910', '-98.78970'), ('CAMP HOUSTON', None, '36.82000', '-99.12000'), ('CAPRON', 42, '36.89740', '-98.57670'), ('CORA', None, '36.80000', '-98.92000'), ('DACOMA', 148, '36.66000', '-98.56370'), ('FREEDOM', 271, '36.76650', '-99.11260'), ('HOPETON', None, '36.68000', '-98.67000'), ('LOOKOUT', None, '36.95000', '-99.27000'), ('PLAINVIEW', None, '36.83000', '-99.23000'), ('TEGARDEN', None, '36.80000', '-98.97000'), ('WAYNOKA', 993, '36.58500', '-98.87940')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'ARZ023': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CLINTON', 2283, '35.58110', '-92.45240'), ('FAIRFIELD BAY', 2460, '35.60510', '-92.26980'), ('SHIRLEY', 337, '35.64370', '-92.31340')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LZK'}, -'ARZ022': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ATKINS', 2878, '35.24260', '-92.94560'), ('DOVER', 1329, '35.40220', '-93.11240'), ('HECTOR', 506, '35.46570', '-92.97530'), ('LONDON', 925, '35.32820', '-93.24010'), ('POTTSVILLE', 1271, '35.23840', '-93.05840'), ('RUSSELLVILLE', 23682, '35.27180', '-93.14080')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'ARZ021': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CLARKSVILLE', 7719, '35.45760', '-93.47240'), ('COAL HILL', 1001, '35.43700', '-93.66760'), ('HARTMAN', 596, '35.43450', '-93.61850'), ('KNOXVILLE', 511, '35.37780', '-93.36480'), ('LAMAR', 1415, '35.43920', '-93.38780')], 'partOfState': '', 'wfo': 'LZK'}, -'OKZ001': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BLACK MESA PARK', None, '36.84780', '-102.88190'), ('BOISE CITY', 1483, '36.73010', '-102.51000'), ('FELT', None, '36.57000', '-102.78000'), ('GRIGGS', None, '36.60000', '-102.12000'), ('KENTON', None, '36.90000', '-102.97000'), ('KEYES', 410, '36.80760', '-102.25150'), ('STURGIS', None, '36.88000', '-102.05000'), ('WHEELESS', None, '36.72000', '-102.90000')], 'partOfState': '', 'wfo': 'AMA'}, -'ARZ020': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CASS', None, '35.68750', '-93.81920'), ('PARADISE', None, '35.63220', '-93.83390'), ('PINEY', 3988, '35.58580', '-94.05750'), ('ALIX', None, '35.42470', '-93.73030'), ('PINEY', 3988, '35.58580', '-94.05750'), ('TAFT', None, '35.66670', '-93.71670'), ('OZARK', 3525, '35.48690', '-93.82750'), ('CHARLESTON', 2965, '35.29690', '-94.03610'), ('BRANCH', 357, '35.30560', '-93.95330'), ('PETER PENDER', None, '35.36000', '-93.93420'), ('VESTA', None, '35.37920', '-94.04170'), ('MEG', None, '35.40420', '-93.88810'), ('DENNING', 270, '35.42920', '-93.75690'), ('CECIL', None, '35.43860', '-93.94440'), ('ALTUS', 817, '35.44610', '-93.76220'), ('TONEY', None, '35.51810', '-93.96250'), ('LONELM', None, '35.55000', '-93.95000'), ('CRAVENS', None, '35.54830', '-93.91670'), ('WATALULA', None, '35.57330', '-93.82720'), ('JETHRO', None, '35.60750', '-93.88720'), ('MOUNTAIN TOP', None, '35.62420', '-93.72970'), ('FERN', None, '35.63890', '-94.01610'), ('PARADISE', None, '35.63220', '-93.83390'), ('BARNES', None, '35.63530', '-93.82030'), ('TURNERS BEND', None, '35.66670', '-93.83330'), ('CASS', None, '35.68750', '-93.81920'), ('REDDING', None, '35.68000', '-93.77690'), ('WIEDERKEHR VILLAGE', 46, '35.47310', '-93.76440'), ('TURNERS BEND', None, '35.66670', '-93.83330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TSA'}, -'WVZ029': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CEDAR CREEK STATE PARK', None, '38.88090', '-80.86240'), ('GLENVILLE', 1544, '38.93840', '-80.83340'), ('SAND FORK', 176, '38.91520', '-80.74880')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ028': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BURNSVILLE', 481, '38.85560', '-80.65600'), ('FLATWOODS', 348, '38.72130', '-80.65310'), ('GASSAWAY', 901, '38.67060', '-80.77060'), ('SUTTON', 1011, '38.66670', '-80.71070')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ025': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('AMHERSTDALE-ROBINETTE', 1785, '37.77980', '-81.77390'), ('CHAPMANVILLE', 1211, '37.97340', '-82.01820'), ('CHIEF LOGAN STATE PARK', None, '37.89340', '-82.00900'), ('HOLDEN', 1105, '37.81440', '-82.06670'), ('LOGAN', 1630, '37.84910', '-81.98690'), ('MALLORY', 1143, '37.73480', '-81.81890'), ('MAN', 770, '37.74260', '-81.87430'), ('MITCHELL HEIGHTS', 301, '37.90920', '-81.98870'), ('MOUNT GAY', None, '37.85420', '-82.04270'), ('SWITZER', 1138, '37.78630', '-81.97390'), ('WEST LOGAN', 418, '37.86790', '-81.99300')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ024': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CHATTAROY', 1136, '37.70500', '-82.26840'), ('DELBARTON', 474, '37.70490', '-82.18580'), ('GILBERT', 417, '37.61440', '-81.86740'), ('GILBERT CREEK', 1582, '37.57570', '-81.89500'), ('KERMIT', 209, '37.83920', '-82.40780'), ('MATEWAN', 498, '37.62370', '-82.16770'), ('R.D. BAILEY LAKE', None, '37.60010', '-81.82060'), ('RED JACKET', 728, '37.64910', '-82.13230'), ('WILLIAMSON', 3414, '37.67370', '-82.27270')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ027': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CLAY', 593, '38.46280', '-81.08020')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ026': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('DANVILLE', 550, '38.08130', '-81.83480'), ('MADISON', 2677, '38.05930', '-81.80080'), ('SYLVESTER', 195, '38.00810', '-81.56100'), ('WHITESVILLE', 520, '37.97950', '-81.53600')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ021': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BARRACKVILLE', 1288, '39.50150', '-80.17020'), ('FAIRMONT', 19097, '39.48080', '-80.14610'), ('FAIRVIEW', 435, '39.59260', '-80.24730'), ('FARMINGTON', 387, '39.51150', '-80.25250'), ('GLOVER GAP', None, '39.62000', '-80.40000'), ('GRANT TOWN', 657, '39.55730', '-80.17870'), ('MANNINGTON', 2124, '39.52650', '-80.34120'), ('MONONGAH', 939, '39.45960', '-80.21770'), ('RIVESVILLE', 913, '39.53160', '-80.12070'), ('WORTHINGTON', 170, '39.45800', '-80.26190')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'TXZ033': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BLEDSOE', None, '33.61910', '-103.02080'), ('LEHMAN', None, '33.62700', '-102.79190'), ('MORTON', 2249, '33.72460', '-102.75820'), ('WHITEFACE', 465, '33.59920', '-102.61250'), ('WHITEFACE', 465, '33.60000', '-102.61330')], 'partOfState': 'NORTHWEST', 'wfo': 'LUB'}, -'WVZ023': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ALBRIGHT', 247, '39.49340', '-79.63850'), ('BRANDONVILLE', 102, '39.66540', '-79.62520'), ('BRUCETON MILLS', 74, '39.65950', '-79.64100'), ('KINGWOOD', 2944, '39.47110', '-79.68310'), ('MASONTOWN', 647, '39.55170', '-79.80040'), ('NEWBURG', 360, '39.38840', '-79.85430'), ('REEDSVILLE', 517, '39.51040', '-79.80010'), ('ROWLESBURG', 613, '39.34850', '-79.67740'), ('TERRA ALTA', 1456, '39.44420', '-79.54420'), ('TUNNELTON', 336, '39.39340', '-79.74650')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVZ022': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BLACKSVILLE', 175, '39.71870', '-80.21560'), ('BROOKHAVEN', 4734, '39.61040', '-79.88440'), ('CASSVILLE', 1586, '39.66390', '-80.05890'), ('CHEAT LAKE', 6396, '39.67200', '-79.85360'), ('CORE', None, '39.68000', '-80.10000'), ('GRANVILLE', 778, '39.64670', '-79.99060'), ('MORGANTOWN', 26809, '39.63560', '-79.94980'), ('OSAGE', None, '39.65830', '-80.00940'), ('STAR CITY', 1366, '39.65940', '-79.98660'), ('WADESTOWN', None, '39.68000', '-80.33000'), ('WESTOVER', 3941, '39.63510', '-79.97640')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'MIZ015': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALLENVILLE', None, '45.98330', '-84.81670'), ('POINT AUX PINS ON BOIS BL', None, '45.74000', '-84.48000'), ('BREVORT', None, '46.01760', '-85.03400'), ('CEDARVILLE', None, '45.99000', '-84.36150'), ('CORINNE', None, '46.08340', '-85.71660'), ('CURTIS', None, '46.20100', '-85.75000'), ('ENGADINE', None, '46.11670', '-85.56660'), ('EPOUFETTE', None, '46.06000', '-85.17400'), ('EVERGREEN SHORES', None, '45.90000', '-84.73330'), ('GARNET', None, '46.15000', '-85.30000'), ('GILCHRIST', None, '46.13330', '-85.38330'), ('GOULD CITY', None, '46.10000', '-85.70000'), ('HESSEL', None, '46.00600', '-84.42200'), ('MACKINAC ISLAND', 523, '45.85900', '-84.63570'), ('MARQUETTE ISLAND', None, '45.96000', '-84.40000'), ('NAUBINWAY', None, '46.11100', '-85.45000'), ('REXTON', None, '46.15000', '-85.24000'), ('ST. IGNACE', 2678, '45.86840', '-84.72570')], 'partOfState': '', 'wfo': 'APX'}, -'MIZ014': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BLANEY PARK', None, '46.12000', '-85.92000'), ('COOKS', None, '45.91800', '-86.47600'), ('GULLIVER', None, '45.98000', '-86.02000'), ('MANISTIQUE', 3583, '45.95860', '-86.25010'), ('SEUL CHOIX POINT', None, '45.92000', '-85.92000'), ('THOMPSON', None, '45.90000', '-86.33000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ017': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALOHA', None, '45.53330', '-84.46660'), ('ALVERNO', None, '45.56660', '-84.40000'), ('BLACK LAKE', None, '45.49000', '-84.28000'), ('BURT LAKE', None, '45.43330', '-84.71660'), ('CHEBOYGAN', 5295, '45.64190', '-84.46880'), ('INDIAN RIVER', 2008, '45.41600', '-84.61660'), ('MULLET LAKE', None, '45.56660', '-84.53330'), ('RIGGSVILLE', None, '45.57500', '-84.62000'), ('TOPINABEE', None, '45.48330', '-84.60000'), ('TOWER', None, '45.35000', '-84.30000'), ('WOLVERINE', 359, '45.27350', '-84.60550')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ016': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAYSHORE', None, '45.37000', '-85.08330'), ('BAY VIEW', None, '45.39000', '-84.94000'), ('BLISS', None, '45.68330', '-84.85000'), ('BRUTUS', None, '45.50000', '-84.75000'), ('CARP LAKE', None, '45.69000', '-84.79000'), ('CONWAY', None, '45.41720', '-84.87000'), ('CROSS VILLAGE', None, '45.63690', '-85.03880'), ('GOOD HART', None, '45.56660', '-85.11660'), ('HARBOR SPRINGS', 1567, '45.43200', '-84.98960'), ('LEVERING', None, '45.63630', '-84.76740'), ('MACKINAW CITY', 859, '45.77900', '-84.73200'), ('ODEN', None, '45.42000', '-84.84220'), ('PELLSTON', 771, '45.56000', '-84.78330'), ('PLEASANT VIEW', None, '45.52000', '-84.93000'), ('STUTSMANVILLE', None, '45.50000', '-85.03000'), ('WILDERNESS STATE PARK', None, '45.75500', '-84.95000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ011': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CHANNING', None, '46.13000', '-88.08000'), ('FELCH', None, '46.00000', '-87.85000'), ('FOSTER CITY', None, '45.97000', '-87.75000'), ('GRANITE BLUFF', None, '45.93900', '-88.05400'), ('HARDWOOD', None, '45.97000', '-87.70000'), ('IRON MOUNTAIN', 8154, '45.82770', '-88.06150'), ('KINGSFORD', 5549, '45.80800', '-88.09900'), ('NORWAY', 2959, '45.80260', '-87.91460'), ('QUINNESEC', 1187, '45.80140', '-87.99850'), ('RALPH', None, '46.07000', '-87.73000'), ('RANDVILLE', None, '45.98000', '-88.05000'), ('SAGOLA', None, '46.08000', '-88.07000'), ('VULCAN', None, '45.78000', '-87.87000'), ('WAUCEDAH', None, '45.77000', '-87.75000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ010': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALPHA', 198, '46.04390', '-88.37830'), ('AMASA', None, '46.23000', '-88.45000'), ('BEECHWOOD', 2963, '46.17000', '-88.77000'), ('BEWABIC STATE PARK', None, '46.09300', '-88.42700'), ('BONE LAKE', None, '46.37500', '-88.30700'), ('CASPIAN', 997, '46.06520', '-88.62570'), ('CRYSTAL FALLS', 1791, '46.09730', '-88.32770'), ('GAASTRA', 339, '46.05880', '-88.60540'), ('GIBBS CITY', None, '46.22600', '-88.70100'), ('GOLDEN LAKE', None, '46.17600', '-88.88700'), ('HAGERMAN LAKE', None, '46.06000', '-88.78000'), ('IRON RIVER', 1929, '46.09880', '-88.63820'), ('MINERAL HILLS', 214, '46.11230', '-88.64470'), ('PEAVY FALLS DAM', None, '45.99100', '-88.20800'), ('PERCH LAKE', None, '46.36200', '-88.66200'), ('SMOKY LAKE', None, '46.09600', '-88.94200'), ('STAGER', None, '46.00000', '-88.32000'), ('STAMBAUGH', 1243, '46.07920', '-88.63340'), ('TRIANGLE RANCH', None, '46.31400', '-88.41900'), ('WAY DAM', None, '46.16100', '-88.23900')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ013': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARK RIVER', None, '45.72000', '-87.30000'), ('BRAMPTON', None, '45.93000', '-87.07000'), ('CHICAGO LAKE', None, '46.03700', '-86.61100'), ('CORNELL', None, '45.90000', '-87.23000'), ('ENSIGN', None, '45.90000', '-86.87000'), ('ESCANABA', 13140, '45.74620', '-87.08080'), ('FAYETTE', None, '45.72000', '-86.67000'), ('FORD RIVER', None, '45.68000', '-87.15000'), ('GARDEN', 240, '45.77530', '-86.55250'), ('GARDEN CORNERS', None, '45.89000', '-86.53700'), ('GLADSTONE', 5032, '45.85200', '-87.02470'), ('HYDE', None, '45.73000', '-87.20000'), ('ISABELLA', None, '45.90000', '-86.60000'), ('LATHROP', None, '46.15000', '-87.22000'), ('NAHMA JUNCTION', None, '45.89700', '-86.70800'), ('PERKINS', None, '45.97000', '-87.07000'), ('RAPID RIVER', None, '45.92000', '-86.97000'), ('ROCK', None, '46.06900', '-87.16600'), ('ROUND LAKE', None, '46.15000', '-86.74600'), ('SCHAEFFER', None, '45.77000', '-87.30000'), ('STONINGTON', None, '45.73000', '-86.98000')], 'partOfState': '', 'wfo': 'MQT'}, -'MIZ012': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAGLEY', None, '45.55000', '-87.58000'), ('BANAT', None, '45.52000', '-87.70000'), ('BIRCH CREEK', None, '45.20000', '-87.62000'), ('CARBONDALE', None, '45.28000', '-87.62000'), ('CARNEY', 225, '45.58910', '-87.55400'), ('CEDAR RIVER', None, '45.41100', '-87.35400'), ('CUNARD', None, '45.73000', '-87.67000'), ('DAGGETT', 270, '45.46200', '-87.60450'), ('FAITHORN', None, '45.68000', '-87.77000'), ('GOURLEY', None, '45.59500', '-87.42400'), ('HERMANSVILLE', None, '45.71100', '-87.60200'), ('INGALLS', None, '45.38000', '-87.62000'), ('LA BRANCHE', None, '45.88000', '-87.47000'), ('MENOMINEE', 9131, '45.12110', '-87.62350'), ('NATHAN', None, '45.57900', '-87.70700'), ('POWERS', 430, '45.68750', '-87.52640'), ('SPALDING', None, '45.69600', '-87.51100'), ('STEPHENSON', 875, '45.41370', '-87.60890'), ('SWANSON', None, '45.47500', '-87.70900'), ('WALLACE', None, '45.33000', '-87.62000'), ('WHITNEY', None, '45.82000', '-87.38000'), ('WILSON', None, '45.70000', '-87.45000')], 'partOfState': '', 'wfo': 'MQT'}, -'VAZ085': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMBURG', None, '37.55360', '-76.35860'), ('CHURCH VIEW', None, '37.67790', '-76.68020'), ('COOPER', None, '37.61090', '-76.52060'), ('DELTAVILLE', None, '37.55600', '-76.32770'), ('GRAFTON', None, '37.55890', '-76.47060'), ('GREYS POINT', None, '37.60500', '-76.43330'), ('HARDYVILLE', None, '37.55590', '-76.38230'), ('HARMONY VILLAGE', None, '37.58180', '-76.48730'), ('HARTFIELD', None, '37.55080', '-76.44400'), ('HEALYS', None, '37.57280', '-76.51190'), ('JAMAICA', None, '37.71490', '-76.69440'), ('NESTING', None, '37.73390', '-76.64890'), ('REMLIK', None, '37.66160', '-76.62020'), ('SALUDA', None, '37.60610', '-76.59550'), ('SAMOS', None, '37.70120', '-76.63520'), ('STAMPERS', None, '37.53970', '-76.43280'), ('STINGRAY POINT', None, '37.55870', '-76.30510'), ('URBANNA', 543, '37.63970', '-76.57540'), ('WAKE', None, '37.56630', '-76.42950'), ('WARNER', None, '37.63780', '-76.64480'), ('WATER VIEW', None, '37.72200', '-76.61390'), ('WILTON', None, '37.54950', '-76.40690')], 'partOfState': '', 'wfo': 'AKQ'}, -'MIZ018': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('FORTY MILE POINT', None, '45.49000', '-83.92000'), ('HAGENSVILLE', None, '45.33330', '-83.80000'), ('HAWKS', None, '45.30000', '-83.90000'), ('HURON BEACH', None, '45.49000', '-84.11000'), ('METZ', None, '45.28340', '-83.81660'), ('MILLERSBURG', 263, '45.33380', '-84.06060'), ('OCQUEOC', None, '45.41000', '-84.10000'), ('ONAWAY', 993, '45.35850', '-84.22830'), ('P H HOEFT STATE PARK', None, '45.47000', '-83.88500'), ('POSEN', 292, '45.26210', '-83.69940'), ('PRESQUE ISLE', None, '45.30000', '-83.46660'), ('ROGERS CITY', 3322, '45.41850', '-83.80650')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'KSZ099': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('BOLTON', None, '37.18000', '-95.80000'), ('CANEY', 2092, '37.01350', '-95.93150'), ('CHERRYVALE', 2386, '37.26800', '-95.55110'), ('COFFEYVILLE', 11021, '37.04080', '-95.63210'), ('COFFEYVILLE ARPT', None, '37.10000', '-95.56670'), ('DEARING', 415, '37.05910', '-95.71210'), ('ELK CITY', 305, '37.28910', '-95.91000'), ('HAVANA', 86, '37.09220', '-95.94130'), ('INDEPDENCE ARPT', None, '37.15000', '-95.78330'), ('INDEPENDENCE', 9846, '37.23150', '-95.71380'), ('LIBERTY', 95, '37.15610', '-95.59770'), ('SYCAMORE', None, '37.33000', '-95.72000'), ('TYRO', 226, '37.03670', '-95.82140')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'KSZ098': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR VALE', 723, '37.10640', '-96.50060'), ('CHAUTAUQUA', 113, '37.02390', '-96.17680'), ('ELGIN', 82, '37.00160', '-96.28040'), ('HALE', None, '37.23000', '-96.02000'), ('NIOTAZE', 122, '37.06730', '-96.01400'), ('PERU', 183, '37.08120', '-96.09600'), ('SEDAN', 1342, '37.12740', '-96.18470')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'KSZ091': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ANTHONY', 2440, '37.15390', '-98.02910'), ('ATTICA', 636, '37.24250', '-98.22590'), ('BLUFF CITY', 80, '37.07560', '-97.87500'), ('CORWIN', None, '37.08000', '-98.30000'), ('DANVILLE', 59, '37.28570', '-97.89100'), ('FREEPORT', 6, '37.19870', '-97.85420'), ('HARPER', 1567, '37.28520', '-98.02630'), ('METCALF STN', None, '37.06670', '-97.80000'), ('RUNNYMEDE', None, '37.35000', '-97.93000'), ('WALDRON', 17, '37.00080', '-98.18280')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'KSZ090': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('AETNA', None, '37.08000', '-98.97000'), ('HARDTNER', 199, '37.01430', '-98.64840'), ('HAZELTON', 144, '37.08820', '-98.40130'), ('KIOWA', 1055, '37.01750', '-98.48440'), ('LAKE CITY', None, '37.35000', '-98.81000'), ('MEDICINE LODGE', 2193, '37.28600', '-98.58030'), ('SHARON', 210, '37.25000', '-98.41830'), ('SUN CITY', 81, '37.37850', '-98.91640')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DDC'}, -'KSZ093': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARKANSAS CITY', 11963, '37.06880', '-97.04060'), ('ATLANTA', 255, '37.43640', '-96.76710'), ('BURDEN', 564, '37.31310', '-96.75500'), ('CAMBRIDGE', 103, '37.31730', '-96.66680'), ('DEXTER', 364, '37.17930', '-96.71570'), ('MAPLE CITY', None, '37.05000', '-96.78330'), ('UDALL', 794, '37.38700', '-97.11750'), ('WINFIELD', 12206, '37.26860', '-96.96850')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'KSZ092': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARGONIA', 534, '37.26530', '-97.76450'), ('BELLE PLAINE', 1708, '37.39420', '-97.27880'), ('CALDWELL', 1284, '37.03520', '-97.60870'), ('CONWAY SPRINGS', 1322, '37.38950', '-97.64400'), ('GEUDA SPRINGS', 212, '37.11080', '-97.14940'), ('HUNNEWELL', 83, '37.00450', '-97.40690'), ('MAYFIELD', 113, '37.26230', '-97.54550'), ('MILAN', 137, '37.25810', '-97.67300'), ('OXFORD', 1173, '37.27480', '-97.16950'), ('SOUTH HAVEN', 390, '37.04910', '-97.40030'), ('WELLINGTON', 8647, '37.27130', '-97.39720')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'ICT'}, -'KSZ095': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALTOONA', 485, '37.52550', '-95.66160'), ('BENEDICT', 103, '37.62470', '-95.74190'), ('BUFFALO', 284, '37.70860', '-95.69670'), ('BUXTON', None, '37.45000', '-95.92000'), ('COYVILLE', 71, '37.68720', '-95.89530'), ('FREDONIA', 2600, '37.53290', '-95.82400'), ('NEODESHA', 2848, '37.42350', '-95.68090'), ('NEW ALBANY', 73, '37.56770', '-95.93450')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'KSZ094': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ELK FALLS', 112, '37.37400', '-96.19250'), ('GRENOLA', 231, '37.35070', '-96.44820'), ('HOWARD', 808, '37.46950', '-96.26270'), ('LONGTON', 394, '37.37750', '-96.08260'), ('MOLINE', 457, '37.36370', '-96.30180')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'KSZ097': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARCADIA', 391, '37.64190', '-94.62350'), ('ARMA', 1529, '37.54380', '-94.70000'), ('BEULAH', None, '37.44020', '-94.82790'), ('BRAZILTON', None, '37.55970', '-94.95720'), ('CHEROKEE', 722, '37.34580', '-94.80860'), ('CHICOPEE', None, '37.38180', '-94.74160'), ('CROWEBURG', None, '37.55690', '-94.66580'), ('ENGLEVALE', None, '37.59380', '-94.72710'), ('FARLINGTON', None, '37.61770', '-94.82740'), ('FRANKLIN', None, '37.52630', '-94.70550'), ('FRONTENAC', 2996, '37.45550', '-94.68880'), ('GIRARD', 2773, '37.51110', '-94.83770'), ('GREENBUSH', None, '37.51440', '-94.98770'), ('HEPLER', 154, '37.66110', '-94.96790'), ('LONE OAK', None, '37.43690', '-94.74170'), ('MCCUNE', 426, '37.35470', '-95.01630'), ('MULBERRY', 577, '37.55690', '-94.62160'), ('OPOLIS', None, '37.34440', '-94.62070'), ('PITTSBURG', 19243, '37.41080', '-94.70470'), ('POLK', None, '37.54330', '-94.74160'), ('RINGO', None, '37.50940', '-94.76110'), ('WALNUT', 221, '37.60130', '-95.07770'), ('YALE', None, '37.48380', '-94.64160')], 'partOfState': 'SOUTHEAST', 'wfo': 'SGF'}, -'KSZ096': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(CNU)JOHN', None, '37.67000', '-95.48000'), ('CHANUTE', 9411, '37.67100', '-95.46030'), ('EARLTON', 80, '37.58730', '-95.46920'), ('ERIE', 1211, '37.56850', '-95.24370'), ('GALESBURG', 150, '37.47240', '-95.35560'), ('ST. PAUL', 646, '37.51730', '-95.17480'), ('STARK', 106, '37.68950', '-95.14330'), ('THAYER', 500, '37.48790', '-95.47400')], 'partOfState': 'SOUTHEAST', 'wfo': 'ICT'}, -'OKZ017': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CANTON', 618, '36.05600', '-98.58860'), ('CANTON LAKE', None, '36.12000', '-98.62000'), ('CARLETON', None, '36.02000', '-98.52000'), ('EAGLE CITY', None, '35.93000', '-98.58000'), ('GEARY', 1258, '35.62940', '-98.31780'), ('GREENFIELD', 123, '35.72870', '-98.37710'), ('HITCHCOCK', 141, '35.96840', '-98.34890'), ('HOMESTEAD', None, '36.15000', '-98.40000'), ('LONGDALE', 310, '36.13430', '-98.55020'), ('OKEENE', 1240, '36.11650', '-98.31810'), ('SOUTHARD', None, '36.03600', '-98.47500'), ('WATONGA', 4658, '35.84920', '-98.41220')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'WIZ007': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ANGUS', None, '45.64780', '-91.60180'), ('BIRCHWOOD', 518, '45.65710', '-91.55220'), ('EARL', None, '45.91070', '-91.76050'), ('LAMPSON', None, '45.98310', '-91.81640'), ('MINONG', 531, '46.09840', '-91.82390'), ('SARONA', None, '45.71120', '-91.80670'), ('SHELL LAKE', 1309, '45.73860', '-91.89910'), ('SPOONER', 2653, '45.82450', '-91.89350'), ('SPRINGBROOK', None, '45.94860', '-91.68840'), ('STANBERRY', None, '46.00740', '-91.62630'), ('TREGO', None, '45.89980', '-91.82110')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'VAZ083': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BARHAMSVILLE', None, '37.45610', '-76.84100'), ('BOTTOMS BRIDGE', None, '37.51080', '-77.19210'), ('BROWNS CORNER', None, '37.51780', '-77.08970'), ('CHICKAHOMINY SHORES', None, '37.39360', '-76.94140'), ('COLONIAL DOWNS', None, '37.49280', '-77.02090'), ('ELTHAM', None, '37.52380', '-76.82660'), ('HOLLY FORKS', None, '37.46820', '-76.78430'), ('LANEXA', None, '37.42300', '-76.90620'), ('MOUNTCASTLE', None, '37.45330', '-77.09420'), ('NEW KENT', None, '37.51770', '-76.97830'), ('NEW KENT AIRPORT', None, '37.50260', '-77.11860'), ('ORAPAX FARMS', None, '37.53360', '-77.20580'), ('PLUM POINT', None, '37.51640', '-76.81390'), ('PROVIDENCE FORGE', None, '37.44260', '-77.04760'), ('QUINTON', None, '37.53270', '-77.11540'), ('SLATERVILLE', None, '37.49950', '-76.94440'), ('TALLEYSVILLE', None, '37.52450', '-77.07540'), ('TUNSTALL', None, '37.61150', '-77.12480'), ('WALKERS', None, '37.41530', '-76.94030'), ('WRIGHTS CORNER', None, '37.49930', '-77.13840')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'NEZ038': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANSELMO', 159, '41.61850', '-99.86440'), ('ANSLEY', 520, '41.28760', '-99.38220'), ('ARNOLD', 630, '41.42390', '-100.19380'), ('BERWYN', 134, '41.35130', '-99.50020'), ('BROKEN BOW', 3491, '41.40540', '-99.63910'), ('CALLAWAY', 637, '41.29130', '-99.92000'), ('COMSTOCK', 110, '41.55790', '-99.24250'), ('GATES', None, '41.65500', '-99.64500'), ('MASON CITY', 178, '41.22250', '-99.29800'), ('MERNA', 391, '41.48460', '-99.76060'), ('MILBURN', None, '41.73450', '-99.75000'), ('OCONTO', 141, '41.14160', '-99.76110'), ('SARGENT', 649, '41.64090', '-99.37000'), ('WEISSERT', None, '41.46700', '-99.45000'), ('WESTERVILLE', None, '41.39890', '-99.39000')], 'partOfState': 'CENTRAL', 'wfo': 'LBF'}, -'WVZ046': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('CASS SCENIC RAILROAD', None, '38.44970', '-79.92790'), ('DURBIN', 262, '38.54710', '-79.82810'), ('GREENBANK', None, '38.42000', '-79.83180'), ('HILLSBORO', 243, '38.13500', '-80.21250'), ('MARLINTON', 1204, '38.22010', '-80.08710'), ('SNOWSHOE', None, '38.40910', '-79.99570')], 'partOfState': '', 'wfo': 'RLX'}, -'VTZ018': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BRISTOL', None, '44.13650', '-73.08090'), ('GRANVILLE', None, '43.98000', '-72.85000'), ('HANCOCK', None, '43.93000', '-72.83000'), ('HANKSVILLE', None, '44.25000', '-72.97000'), ('RIPTON', None, '43.98000', '-73.03000'), ('SOUTH LINCOLN', None, '44.07000', '-72.98000')], 'partOfState': 'CENTRAL', 'wfo': 'BTV'}, -'VAZ082': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADKINS STORE', None, '37.39370', '-77.09620'), ('BARNETTS', None, '37.36710', '-77.15810'), ('CHARLES CITY', None, '37.34370', '-77.07130'), ('HOLDCROFT', None, '37.36560', '-76.93530'), ('NEW HOPE', None, '37.34110', '-77.06170'), ('ROACHES CORNER', None, '37.39080', '-77.05310'), ('ROXBURY', None, '37.46460', '-77.14110'), ('RUSTIC', None, '37.29250', '-76.93410'), ('RUTHVILLE', None, '37.36750', '-77.04110'), ('SANDYBOTTOM', None, '37.41310', '-77.04470'), ('WAYSIDE', None, '37.37220', '-77.19500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'AKQ'}, -'WIZ001': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BENNETT', None, '46.44930', '-91.85050'), ('BLUEBERRY', None, '46.58030', '-91.66880'), ('BRULE', None, '46.55310', '-91.57670'), ('CHAFFEY', None, '46.39830', '-92.16360'), ('CLOVERLAND', None, '46.67710', '-91.67960'), ('COZY CORNER', None, '46.16490', '-92.23830'), ('DAIRYLAND', None, '46.21620', '-92.15550'), ('FOXBORO', None, '46.48190', '-92.28280'), ('GORDON', None, '46.24700', '-91.79860'), ('HAWTHORNE', None, '46.50310', '-91.86080'), ('LAKE NEBAGAMON', 1015, '46.50780', '-91.69450'), ('MAPLE', None, '46.58980', '-91.72080'), ('MOOSE JUNCTION', None, '46.28760', '-92.15550'), ('OLIVER', 358, '46.64990', '-92.18990'), ('PATZAU', None, '46.49150', '-92.22080'), ('POPLAR', 552, '46.58190', '-91.78780'), ('SOLON SPRINGS', 576, '46.34940', '-91.82000'), ('SUPERIOR', 500, '46.69690', '-92.05960'), ('WAINO', None, '46.63980', '-91.57370'), ('WASCOTT', None, '46.17250', '-91.79830'), ('WENTWORTH', None, '46.60010', '-91.83610')], 'partOfState': 'NORTHWEST', 'wfo': 'DLH'}, -'MNZ052': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BRAHAM', 1276, '45.72370', '-93.17340'), ('CAMBRIDGE', 5520, '45.56430', '-93.22690'), ('ISANTI', 2324, '45.48990', '-93.25260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ053': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BRANCH', None, '45.51460', '-92.95760'), ('CENTER CITY', 582, '45.39090', '-92.81810'), ('CHISAGO CITY', 2622, '45.37040', '-92.88800'), ('HARRIS', 1121, '45.60290', '-92.98910'), ('LINDSTROM', 3015, '45.38590', '-92.84040'), ('NORTH BRANCH', 8023, '45.51430', '-92.97840'), ('RUSH CITY', 2102, '45.68170', '-92.96580'), ('SHAFER', 343, '45.38770', '-92.74580'), ('STACY', 1278, '45.39790', '-92.98780'), ('TAYLORS FALLS', 951, '45.41140', '-92.66180'), ('WYOMING', 3048, '45.33360', '-92.99600')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ050': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('FOLEY', 2154, '45.66320', '-93.90940'), ('GILMAN', 215, '45.73530', '-93.95010'), ('RICE', 711, '45.74860', '-94.22870'), ('RONNEBY', 16, '45.68220', '-93.86570'), ('SAUK RAPIDS', 10213, '45.59440', '-94.16610')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ051': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BECKER', 2673, '45.37130', '-93.87340'), ('BIG LAKE', 6063, '45.33660', '-93.74660'), ('CLEAR LAKE', 266, '45.44610', '-93.99800'), ('ELK RIVER', 16447, '45.33260', '-93.56580'), ('ZIMMERMAN', 2851, '45.44400', '-93.59240')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ056': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CLARA CITY', 1393, '44.95800', '-95.36600'), ('MAYNARD', 388, '44.90490', '-95.46720'), ('MILAN', 326, '45.11410', '-95.91350'), ('MONTEVIDEO', 5346, '44.95110', '-95.71850'), ('WATSON', 209, '45.01030', '-95.79990')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNZ057': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ATWATER', 1079, '45.13550', '-94.77690'), ('BLOMKEST', 186, '44.94320', '-95.02240'), ('KANDIYOHI', 555, '45.13110', '-94.93230'), ('LAKE LILLIAN', 257, '44.94570', '-94.88050'), ('NEW LONDON', 1066, '45.29930', '-94.94560'), ('PENNOCK', 504, '45.14630', '-95.17530'), ('PRINSBURG', 458, '44.93560', '-95.18580'), ('RAYMOND', 803, '45.01600', '-95.23720'), ('REGAL', 40, '45.40500', '-94.84020'), ('SPICER', 1126, '45.23260', '-94.93860'), ('SUNBURG', 110, '45.34790', '-95.23940'), ('WILLMAR', 18351, '45.12460', '-95.04960')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ054': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELLINGHAM', 205, '45.13560', '-96.28280'), ('BOYD', 210, '44.85100', '-95.90080'), ('DAWSON', 1539, '44.92890', '-96.04900'), ('LOUISBURG', 26, '45.16620', '-96.17010'), ('MADISON', 1768, '45.01380', '-96.18910'), ('MARIETTA', 174, '45.01030', '-96.41800'), ('NASSAU', 83, '45.06800', '-96.44110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNZ055': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('APPLETON', 2871, '45.20140', '-96.02290'), ('BENSON', 3376, '45.31710', '-95.60710'), ('CLONTARF', 173, '45.37630', '-95.67720'), ('DANVERS', 108, '45.28260', '-95.75270'), ('DE GRAFF', 133, '45.25920', '-95.46890'), ('HOLLOWAY', 112, '45.24760', '-95.91050'), ('KERKHOVEN', 759, '45.19290', '-95.32000'), ('MURDOCK', 303, '45.22370', '-95.39410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNZ058': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CEDAR MILLS', 53, '44.94720', '-94.51730'), ('COSMOS', 582, '44.93590', '-94.69740'), ('DARWIN', 276, '45.09700', '-94.40410'), ('DASSEL', 1233, '45.08180', '-94.30740'), ('EDEN VALLEY', 866, '45.32570', '-94.54570'), ('GROVE CITY', 608, '45.15190', '-94.68140'), ('KINGSTON', 120, '45.19670', '-94.30970'), ('LITCHFIELD', 6562, '45.11950', '-94.52710'), ('WATKINS', 880, '45.31480', '-94.40790')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ059': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBERTVILLE', 3621, '45.23920', '-93.66000'), ('ANNANDALE', 2684, '45.26220', '-94.11890'), ('BUFFALO', 10097, '45.17700', '-93.86850'), ('CLEARWATER', 858, '45.41020', '-94.04270'), ('COKATO', 2727, '45.07680', '-94.18940'), ('DELANO', 3837, '45.04130', '-93.78550'), ('HOWARD LAKE', 1853, '45.05960', '-94.06580'), ('MAPLE LAKE', 1633, '45.23140', '-94.00300'), ('MONTICELLO', 7868, '45.30470', '-93.80220'), ('MONTROSE', 1143, '45.06720', '-93.91230'), ('SOUTH HAVEN', 204, '45.29150', '-94.21590'), ('ST MICHAEL', None, '45.21090', '-93.66370'), ('WAVERLY', 732, '45.06890', '-93.96900')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MOZ001': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BLANCHARD', 61, '40.58080', '-95.22060'), ('FAIRFAX', 645, '40.33950', '-95.39170'), ('PHELPS CITY', None, '40.40270', '-95.59810'), ('ROCK PORT', 1395, '40.41140', '-95.51640'), ('ROCKPORT', None, '40.41670', '-95.51670'), ('TARKIO', 1935, '40.44310', '-95.38380'), ('WATSON', 121, '40.48010', '-95.62310'), ('WESTBORO', 163, '40.53580', '-95.32190')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ002': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRADDYVILLE', 176, '40.57790', '-95.04440'), ('ARKOE', 58, '40.25880', '-94.82960'), ('BARNARD', 257, '40.17570', '-94.82260'), ('BURLINGTON JUNCTION', 632, '40.44720', '-95.06740'), ('CLEARMONT', 191, '40.50740', '-95.03290'), ('CLYDE', 74, '40.26620', '-94.67020'), ('CONCEPTION JUNCTION', 202, '40.26830', '-94.69070'), ('ELMO', 166, '40.51880', '-95.11720'), ('GRAHAM', 191, '40.20150', '-95.03980'), ('GUILFORD', 87, '40.16890', '-94.73610'), ('HOPKINS', 579, '40.55110', '-94.81620'), ('MARYVILLE', 10581, '40.34330', '-94.87100'), ('PARNELL', 197, '40.44010', '-94.62180'), ('PICKERING', 154, '40.45060', '-94.84170'), ('QUITMAN', 46, '40.37310', '-95.07670'), ('RAVENWOOD', 448, '40.35260', '-94.67120'), ('SKIDMORE', 342, '40.28750', '-95.07870')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ003': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ATHELSTAN', 18, '40.57270', '-94.54220'), ('ALLENDALE', 54, '40.48620', '-94.28870'), ('DENVER', 40, '40.39900', '-94.32370'), ('GRANT CITY', 926, '40.48600', '-94.41390'), ('SHERIDAN', 185, '40.51740', '-94.61460'), ('WORTH', 94, '40.40550', '-94.44680')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ004': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALBANY', 1937, '40.24820', '-94.33390'), ('DARLINGTON', 113, '40.19880', '-94.40020'), ('FORD CITY', None, '40.11220', '-94.46480'), ('GENTRY', 101, '40.33310', '-94.42350'), ('KING CITY', 1012, '40.05060', '-94.52470'), ('STANBERRY', 1243, '40.21670', '-94.53800')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ005': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BETHANY', 3087, '40.26780', '-94.02830'), ('BLYTHEDALE', 233, '40.47520', '-93.92720'), ('CAINSVILLE', 370, '40.44010', '-93.77450'), ('EAGLEVILLE', 321, '40.46870', '-93.98810'), ('GILMAN CITY', 380, '40.13830', '-93.87240'), ('HATFIELD', None, '40.53330', '-94.15000'), ('MOUNT MORIAH', 143, '40.32930', '-93.79730'), ('NEW HAMPTON', 349, '40.26510', '-94.19580'), ('RIDGEWAY', 530, '40.37780', '-93.93770')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ006': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('MERCER', 342, '40.51100', '-93.52930'), ('MODENA', None, '40.30000', '-93.68330'), ('PRINCETON', 1047, '40.39710', '-93.58810'), ('SOUTH LINEVILLE', 37, '40.57790', '-93.52360')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ007': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('GRAYSVILLE', None, '40.45000', '-92.76670'), ('LEMONS', None, '40.40000', '-93.05000'), ('LIVONIA', 114, '40.49160', '-92.69970'), ('LUCERNE', 92, '40.46370', '-93.29160'), ('POWERSVILLE', 86, '40.54990', '-93.30080'), ('UNIONVILLE', 2041, '40.47570', '-93.00370'), ('WORTHINGTON', 89, '40.40810', '-92.68880')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ008': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DOWNING', 396, '40.48640', '-92.36850'), ('GLENWOOD', 203, '40.52360', '-92.57630'), ('GREENTOP', 427, '40.35110', '-92.56590'), ('LANCASTER', 737, '40.52270', '-92.53040'), ('QUEEN CITY', 638, '40.41370', '-92.56660')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'MOZ009': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ARBELA', 40, '40.46300', '-92.01600'), ('AZEN', None, '40.55500', '-92.03140'), ('BIBLE GROVE', None, '40.35020', '-92.30400'), ('BROCK', None, '40.55080', '-92.15060'), ('CRAWFORD', None, '40.46670', '-92.27000'), ('ETNA', None, '40.41730', '-91.97410'), ('GRANGER', 44, '40.46750', '-91.97310'), ('HITT', None, '40.55900', '-92.25140'), ('INDIAN HILLS CA', None, '40.31670', '-92.26670'), ('KILWINNING', None, '40.51220', '-92.33940'), ('MEMPHIS', 2061, '40.46090', '-92.16970'), ('MEMPHIS MEMORIAL AIRPORT', None, '40.45900', '-92.21970'), ('PROSPECT GROVE', None, '40.51880', '-91.98520'), ('RUTLEDGE', 103, '40.31300', '-92.08740'), ('SAND HILL', None, '40.31200', '-92.11800'), ('SOUTH GORIN', 143, '40.36010', '-92.02410'), ('SPILLMAN MOUND', None, '40.31790', '-92.17000')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'VTZ010': {'fullStateName': 'VERMONT', 'state': 'VT', 'cities': [('BRADFORD', 815, '43.99410', '-72.12820'), ('BRAINTREE', None, '43.98000', '-72.75000'), ('BROOKFIELD', None, '44.05000', '-72.60000'), ('CHELSEA', None, '43.98000', '-72.47000'), ('CORINTH', None, '44.02000', '-72.23000'), ('EAST RANDOLPH', None, '43.93000', '-72.55000'), ('NEWBURY', 396, '44.08040', '-72.06060'), ('ORANGE', None, '44.15000', '-72.40000'), ('RANDOLPH', None, '43.92000', '-72.67000'), ('STRAFFORD', None, '43.87000', '-72.38000'), ('THETFORD', None, '43.82000', '-72.23000'), ('TUNBRIDGE', None, '43.88000', '-72.50000'), ('VERSHIRE', None, '43.97000', '-72.32000'), ('WAITS RIVER', None, '44.08000', '-72.28000'), ('WASHINGTON', None, '44.10000', '-72.43000'), ('WELLS RIVER', 325, '44.15140', '-72.06590'), ('WEST FAIRLEE', None, '43.90000', '-72.27000'), ('WILLIAMSTOWN', None, '44.12000', '-72.53000')], 'partOfState': 'CENTRAL', 'wfo': 'BTV'}, -'SDZ070': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('IRENE', 432, '43.08370', '-97.15810'), ('MECKLING', None, '42.84070', '-97.07160'), ('VERMILLION', 9765, '42.78200', '-96.92660'), ('WAKONDA', 374, '43.00810', '-97.10540')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'OHZ082': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEAVER', 464, '39.03240', '-82.82520'), ('CYNTHIANA', None, '39.17000', '-83.34000'), ('KINCAID SPRINGS', None, '39.10000', '-83.27000'), ('PIKE LAKE', None, '39.14000', '-83.17000'), ('PIKETON', 1907, '39.06820', '-82.99990'), ('WAVERLY', None, '39.12530', '-82.98250')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'AZZ026': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('DATELAND', None, '32.82000', '-113.53000'), ('LIGURTA', None, '32.67000', '-114.30000'), ('MOHAWK', None, '32.73000', '-113.73000'), ('PALM CANYON', None, '33.31500', '-113.98250'), ('TACNA', 555, '32.70000', '-113.95000'), ('WELLTON', 1829, '32.67290', '-114.13930')], 'partOfState': 'WEST CENTRAL', 'wfo': 'PSR'}, -'SDZ072': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BEAR BUTTE', None, '44.48170', '-103.41870'), ('BLACKHAWK', 2432, '44.15170', '-103.31530'), ('PIEDMONT', None, '44.23330', '-103.40000'), ('STURGIS', 6442, '44.41160', '-103.51460'), ('TILFORD', None, '44.30000', '-103.43330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'SDZ073': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BONEITA SPRINGS', None, '44.43500', '-102.56180'), ('ELLSWORTH AFB', 4165, '44.15000', '-103.10000'), ('ELM SPRINGS', None, '44.31670', '-102.48330'), ('ENNING', None, '44.57710', '-102.56130'), ('HAYDRAW', None, '44.44640', '-102.72020'), ('HEREFORD', None, '44.38330', '-102.88330'), ('UNION CENTER', None, '44.56320', '-102.66900'), ('VIEWFIELD', None, '44.21810', '-102.82880'), ('VOLUNTEER', None, '44.51670', '-103.13330'), ('WHITE OWL', None, '44.59270', '-102.42740')], 'partOfState': 'WEST CENTRAL', 'wfo': 'UNR'}, -'AZZ023': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('AVONDALE', 35883, '33.42010', '-112.35000'), ('BEARDSLEY', None, '33.68000', '-112.39000'), ('CAREFREE', 2927, '33.82240', '-111.91840'), ('CASHION', None, '33.44000', '-112.32000'), ('CAVE CREEK', 3728, '33.82620', '-111.96520'), ('CHANDLER', 176581, '33.29500', '-111.86690'), ('EL MIRAGE', 7609, '33.59120', '-112.32400'), ('FOUNTAIN HILLS', 20235, '33.60540', '-111.74110'), ('GILBERT', 109697, '33.33200', '-111.76420'), ('GLENDALE', 218812, '33.58410', '-112.20160'), ('GOODYEAR', 18911, '33.42000', '-112.40000'), ('GUADALUPE', 5228, '33.36580', '-111.96170'), ('KOMATKE', None, '33.30620', '-112.17810'), ('LAVEEN', None, '33.42000', '-112.13000'), ('LIBERTY', None, '33.38000', '-112.49000'), ('LITCHFIELD PARK', 3810, '33.50250', '-112.35880'), ('LUKE AFB', None, '33.53310', '-112.37070'), ('MESA', 396375, '33.41770', '-111.74030'), ('PARADISE VALLEY', 13664, '33.53930', '-111.95460'), ('PEORIA', 108364, '33.68850', '-112.24450'), ('PERRYVILLE', None, '33.43000', '-112.50000'), ('PHOENIX', 1321045, '33.54250', '-112.07140'), ('QUEEN CREEK', 4316, '33.24140', '-111.64320'), ('SCOTTSDALE', 202705, '33.68600', '-111.87050'), ('SUN CITY', 38309, '33.61630', '-112.28180'), ('SUN CITY WEST', 26344, '33.66900', '-112.36910'), ('SUN LAKES', 11936, '33.21690', '-111.87010'), ('SURPRISE', 30848, '33.65000', '-112.34000'), ('TEMPE', 158625, '33.38840', '-111.93060'), ('TOLLESON', 4974, '33.44880', '-112.25480'), ('WADDELL', None, '33.59000', '-112.36000'), ('WITTMANN', None, '33.78000', '-112.53000'), ('YOUNGTOWN', 3010, '33.58720', '-112.30300')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PSR'}, -'AKZ019': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('COVENANT LIFE', 102, '59.41720', '-136.02510'), ('HAINES', 1811, '59.24030', '-135.44040'), ('KLUKWAN', 139, '59.40390', '-135.88450'), ('LUTAK', 39, '59.34110', '-135.56550'), ('MOSQUITO LAKE', 221, '59.52920', '-136.09100')], 'partOfState': '', 'wfo': 'AJK'}, -'WIZ023': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BALDWIN', 2667, '44.96290', '-92.37110'), ('DEER PARK', 227, '45.18860', '-92.38660'), ('GLENWOOD CITY', 1183, '45.05730', '-92.17160'), ('HAMMOND', 1153, '44.97300', '-92.43710'), ('HUDSON', 8775, '44.96690', '-92.74210'), ('NEW RICHMOND', 6310, '45.12210', '-92.53670'), ('ROBERTS', 969, '44.98500', '-92.55200'), ('SOMERSET', 1556, '45.12730', '-92.67600'), ('STAR PRAIRIE', 574, '45.19830', '-92.53180'), ('WILSON', 176, '44.95560', '-92.17240'), ('WOODVILLE', 1104, '44.95250', '-92.28640')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'AKZ151': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANIAK', 572, '61.58070', '-159.53910'), ('CHUATHBALUK', 119, '61.57320', '-159.21640'), ('CROOKED CREEK', 137, '61.87690', '-158.07780'), ('LIME VILLAGE', 6, '61.43280', '-155.47250'), ('MCGRATH', 401, '62.95430', '-155.57580'), ('NIKOLAI', 100, '62.99520', '-154.39070'), ('RED DEVIL', 48, '61.79030', '-157.34790'), ('SLEETMUTE', 100, '61.72110', '-157.18360'), ('STONY RIVER', 61, '61.79310', '-156.58080'), ('TAKOTNA', 50, '62.99280', '-156.17180')], 'partOfState': '', 'wfo': 'AFC'}, -'WIZ020': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('KESHENA', 1394, '44.88000', '-88.63000'), ('NEOPIT', 839, '44.98000', '-88.81000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'OHZ075': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ALBANY', 808, '39.22370', '-82.19890'), ('AMESVILLE', 184, '39.40140', '-81.95530'), ('ATHENS', 21342, '39.32420', '-82.09610'), ('CHAUNCEY', 1067, '39.39950', '-82.12800'), ('COOLVILLE', 528, '39.22030', '-81.79830'), ('GLOUSTER', 1972, '39.50280', '-82.08480'), ('JACKSONVILLE', 544, '39.47580', '-82.08010'), ('NELSONVILLE', 5230, '39.45880', '-82.22600'), ('THE PLAINS', 2931, '39.36560', '-82.13400'), ('TRIMBLE', 466, '39.48640', '-82.07990')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'NEZ047': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BOELUS', None, '41.07500', '-98.71670'), ('COTESFIELD', 66, '41.35770', '-98.63300'), ('CUSHING', 31, '41.29460', '-98.36900'), ('DANNEBROG', 352, '41.11860', '-98.54520'), ('ELBA', 243, '41.28440', '-98.56910'), ('FARWELL', 148, '41.21580', '-98.62740'), ('ST. LIBORY', None, '41.08000', '-98.35300'), ('ST. PAUL', 2218, '41.21370', '-98.45950')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'NEZ046': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ASHTON', 237, '41.24760', '-98.79450'), ('HAZARD', 66, '41.09120', '-99.07810'), ('LITCHFIELD', 280, '41.15610', '-99.15190'), ('LOUP CITY', 996, '41.27630', '-98.96770'), ('ROCKVILLE', 111, '41.11930', '-98.83110'), ('SHERMAN RESERVOIR DAM', None, '41.30000', '-98.88000')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'NEZ045': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARLINGTON', 1197, '41.45420', '-96.35550'), ('BLAIR', 7512, '41.54420', '-96.13670'), ('FORT CALHOUN', 856, '41.45510', '-96.02560'), ('HERMAN', 310, '41.67310', '-96.21660'), ('KENNARD', 371, '41.47430', '-96.20340'), ('WASHINGTON', 126, '41.39830', '-96.20870')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEZ044': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('DODGE', 700, '41.72160', '-96.87940'), ('FREMONT', 25174, '41.44080', '-96.49210'), ('HOOPER', 827, '41.61220', '-96.54800'), ('INGLEWOOD', 382, '41.41670', '-96.50160'), ('NICKERSON', 431, '41.53500', '-96.47050'), ('NORTH BEND', 1213, '41.46520', '-96.78310'), ('SCRIBNER', 971, '41.66450', '-96.66490'), ('SNYDER', 318, '41.70450', '-96.78620'), ('UEHLING', 275, '41.73430', '-96.50540'), ('WINSLOW', 104, '41.60880', '-96.50470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEZ043': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CLARKSON', 685, '41.72470', '-97.12130'), ('HOWELLS', 632, '41.72340', '-97.00470'), ('LEIGH', 442, '41.70410', '-97.23680'), ('RICHLAND', 89, '41.43730', '-97.21410'), ('ROGERS', 95, '41.46460', '-96.91620'), ('SCHUYLER', 5371, '41.44810', '-97.05990')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ042': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('COLUMBUS', 20971, '41.43470', '-97.35560'), ('CORNLEA', 41, '41.68070', '-97.56710'), ('CRESTON', 215, '41.70710', '-97.36150'), ('DUNCAN', 359, '41.39000', '-97.49350'), ('HUMPHREY', 786, '41.68820', '-97.48740'), ('LINDSAY', 276, '41.70060', '-97.69430'), ('MONROE', 307, '41.47370', '-97.60010'), ('PLATTE CENTER', 359, '41.53800', '-97.48720'), ('TARNOV', 63, '41.61490', '-97.50280')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ041': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BELGRADE', 134, '41.47130', '-98.06710'), ('FULLERTON', 1378, '41.36410', '-97.97250'), ('GENOA', 981, '41.44590', '-97.73280')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'NEZ040': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('GREELEY', None, '41.54820', '-98.53000'), ('SCOTIA', 308, '41.46830', '-98.70250'), ('SPALDING', 537, '41.68840', '-98.36200'), ('WOLBACH', 287, '41.40080', '-98.39170')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'TXZ242': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KINGSVILLE', 25575, '27.50890', '-97.86070'), ('LOYOLA BEACH', None, '27.33000', '-97.70080'), ('RICARDO', None, '27.41666', '-97.85000'), ('RIVIERA', None, '27.28333', '-97.81666')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ243': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AGUA DULCE', 737, '27.78280', '-97.90980'), ('BISHOP', 3305, '27.58480', '-97.79760'), ('CC NAS', None, '27.69000', '-97.28500'), ('CHAPMAN RANCH', None, '27.58000', '-97.45270'), ('CORPUS CHRISTI', 277454, '27.70570', '-97.29280'), ('DRISCOLL', 825, '27.67220', '-97.75080'), ('FLOUR BLUFF', None, '27.65380', '-97.30270'), ('NORTH SAN PEDRO', 920, '27.80240', '-97.68270'), ('PETRONILA', 83, '27.66940', '-97.63360'), ('ROBSTOWN', 12727, '27.79920', '-97.66070'), ('TULOSO', None, '27.80880', '-97.54880')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ240': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BENAVIDES', 1686, '27.59770', '-98.40920'), ('CONCEPCION', 61, '27.38333', '-98.27000'), ('FREER', 3241, '27.88140', '-98.61820'), ('REALITOS', 209, '27.42500', '-98.55000'), ('RIOS', None, '27.42666', '-98.27000'), ('ROSITA', None, '27.78333', '-98.42500'), ('SEVEN SISTERS', None, '28.03000', '-98.52000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ241': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALICE', 19010, '27.75520', '-98.06550'), ('BEN BOLT', None, '27.63333', '-98.08333'), ('LAKE ALICE', None, '27.80770', '-98.06380'), ('ORANGE GROVE', 1288, '27.95580', '-97.93890'), ('PERNITAS POINT', 269, '28.05830', '-97.90610'), ('PREMONT', 2772, '27.35780', '-98.12410'), ('SAN DIEGO', 4753, '27.75920', '-98.23830'), ('SANDIA', 431, '28.01190', '-97.88190')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ246': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('AUSTWELL', 192, '28.39010', '-96.84330'), ('BAYSIDE', 360, '28.07580', '-97.24080'), ('REFUGIO', 2941, '28.30710', '-97.27500'), ('TIVOLI', None, '28.43333', '-96.88333'), ('WOODSBORO', 1685, '28.23750', '-97.32480')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ247': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KAMAY', None, '28.61690', '-96.73880'), ('LONG MOTT', None, '28.46666', '-96.78333'), ('MAGNOLIA BEACH', None, '28.51380', '-96.51690'), ('POINT COMFORT', 781, '28.65580', '-96.55690'), ('PORT LAVACA', 12035, '28.61470', '-96.62120'), ('SEADRIFT', 1352, '28.38000', '-96.69000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'TXZ244': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ARANSAS PASS', 8138, '27.89090', '-97.14270'), ('EDROY', 420, '27.93333', '-97.66666'), ('GREGORY', 2318, '27.92210', '-97.29080'), ('INGLESIDE', 9388, '27.87000', '-97.20010'), ('LAKE CITY', 526, '28.08300', '-97.88240'), ('LAKESIDE', 1040, '28.10450', '-97.86110'), ('MATHIS', 5034, '28.09340', '-97.82450'), ('ODEM', 2499, '27.94550', '-97.58680'), ('PORTLAND', 14827, '27.87890', '-97.32690'), ('SAN PATRICIO', 318, '27.97850', '-97.77260'), ('SINTON', 5676, '28.03350', '-97.50960'), ('ST. PAUL', 542, '28.10690', '-97.56690'), ('TAFT', 3396, '27.98110', '-97.39080'), ('TAFT SOUTHWEST', 1721, '27.97230', '-97.40530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'NEZ048': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARCHER', None, '41.16640', '-98.13000'), ('CENTRAL CITY', 2998, '41.11440', '-98.00280'), ('CHAPMAN', 341, '41.02290', '-98.15970'), ('CLARKS', 361, '41.21630', '-97.83940'), ('PALMER', 472, '41.22750', '-98.21890'), ('SILVER CREEK', 441, '41.33280', '-97.66570')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'GAZ088': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALTMAN', None, '32.72560', '-81.63060'), ('BASCOM', None, '32.84030', '-81.66830'), ('CAMERON', None, '32.55780', '-81.67390'), ('CAPTOLO', None, '32.62530', '-81.59720'), ('COOPERVILLE', None, '32.59060', '-81.70420'), ('DOVER', None, '32.57690', '-81.71530'), ('FARMDALE', None, '32.69940', '-81.61030'), ('GOLOID', None, '32.69140', '-81.67250'), ('GREEN HILL', None, '32.70940', '-81.59310'), ('HALCYONDALE', None, '32.53890', '-81.59830'), ('HILLTONIA', None, '32.88330', '-81.65830'), ('HUNTERS', None, '32.65440', '-81.55060'), ('LEWIS', None, '32.80170', '-81.68170'), ('MIDDLEGROUND', None, '32.64110', '-81.53280'), ('MILLHAVEN', None, '32.93360', '-81.64970'), ('NEWINGTON', 322, '32.59000', '-81.50420'), ('OGEECHEE', None, '32.61970', '-81.76500'), ('OLIVER', 253, '32.52140', '-81.53330'), ('PARKERS', None, '32.69970', '-81.81000'), ('ROCKY FORD', 186, '32.66330', '-81.82970'), ('SHEPPARDS', None, '32.63720', '-81.53530'), ('STALCO', None, '32.53330', '-81.55890'), ('SYLVANIA', 2675, '32.75030', '-81.63690'), ('THOMASBORO', None, '32.71940', '-81.79030'), ('WATERS', None, '32.75560', '-81.66580'), ('WHITE HILL', None, '32.67970', '-81.57330'), ('WOODCLIFF', None, '32.74060', '-81.76330'), ('ZEIGLER', None, '32.75170', '-81.73030')], 'partOfState': 'SOUTHEAST', 'wfo': 'CHS'}, -'GAZ089': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COLUMBUS', None, '32.51070', '-84.87500')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'CAZ019': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ACAMPO', None, '38.17470', '-121.27750'), ('AUGUST', 7808, '37.97890', '-121.26100'), ('BUENA VISTA', 1704, '38.29440', '-120.91220'), ('CAMANCHE RESERVOIR', None, '38.22500', '-121.02160'), ('CAMANCHE VILLAGE', None, '38.27000', '-120.97220'), ('CERES', 34609, '37.59940', '-120.95620'), ('COPPER COVE VILLAGE', None, '37.95970', '-120.63440'), ('DENAIR', 3446, '37.52960', '-120.80010'), ('ESCALON', 5963, '37.78950', '-120.99620'), ('EUGENE', None, '37.89300', '-120.84580'), ('FRENCH CAMP', 4109, '37.88280', '-121.27870'), ('GARDEN ACRES', 9747, '37.96390', '-121.22830'), ('HODSON', None, '37.99670', '-120.68440'), ('HUGHSON', 3980, '37.60100', '-120.86670'), ('KENNEDY', 3275, '37.93000', '-121.25170'), ('KEYES', 4575, '37.56420', '-120.91740'), ('KEYSTONE', None, '37.83530', '-120.50660'), ('LA GRANGE', None, '37.66360', '-120.46250'), ('LATHROP', 10445, '37.82090', '-121.27660'), ('LINCOLN VILLAGE', 4216, '38.00420', '-121.33350'), ('LINDEN', 1103, '38.01890', '-121.09990'), ('LOCKEFORD', 3179, '38.15160', '-121.15550'), ('LODI', 56999, '38.12320', '-121.29440'), ('MANTECA', 49258, '37.80230', '-121.22350'), ('MILTON', None, '38.03190', '-120.85110'), ('MODESTO', 188856, '37.65980', '-120.99390'), ('MORADA', 3726, '38.03870', '-121.24470'), ('NEWMAN', 7093, '37.31510', '-121.02140'), ('OAKDALE', 15503, '37.76820', '-120.85180'), ('PATTERSON', 11606, '37.47430', '-121.12760'), ('RIPON', 10146, '37.73510', '-121.12650'), ('RIVERBANK', 15826, '37.73280', '-120.94510'), ('SALIDA', 12560, '37.70840', '-121.08480'), ('STOCKTON', 243771, '37.96990', '-121.30670'), ('TELEGRAPH CITY', None, '37.93440', '-120.73880'), ('TRACY', 56929, '37.73700', '-121.43190'), ('TURLOCK', 55810, '37.50490', '-120.85040'), ('VICTOR', None, '38.13810', '-121.20500'), ('WATERFORD', 6924, '37.64560', '-120.76460'), ('WATERLOO', None, '38.03470', '-121.18580'), ('WOODBRIDGE', None, '38.16340', '-121.31730')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAZ018': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BENICIA', 26865, '38.07180', '-122.15410'), ('COLLINSVILLE', None, '38.07690', '-121.84890'), ('CORDELIA', None, '38.21050', '-122.13470'), ('CORDELIA JUNCTION', None, '38.21690', '-122.13860'), ('COUNTRY CLUB', 9462, '37.96900', '-121.33970'), ('DENVERTON', None, '38.22470', '-121.89640'), ('FAIRFIELD', 96178, '38.25250', '-122.04170'), ('ISLETON', 828, '38.16140', '-121.60430'), ('LIBERTY FARMS', None, '38.31300', '-121.69330'), ('MONTEZUMA', None, '38.09050', '-121.87170'), ('RIO VISTA', 4571, '38.16510', '-121.69470'), ('ROCKVILLE', None, '38.24420', '-122.12110'), ('SUISUN CITY', 26118, '38.24570', '-122.00980'), ('VALLEJO', 116760, '38.10750', '-122.23330'), ('WALNUT GROVE', 669, '38.24220', '-121.51060')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'NYZ087': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CANTON', 5882, '44.59660', '-75.17250'), ('DE KALB', None, '44.50000', '-75.35000'), ('EDWARDS', 465, '44.32360', '-75.25330'), ('GOUVERNEUR', 4263, '44.33660', '-75.46620'), ('HAMMOND', 302, '44.44720', '-75.69420'), ('HERMON', 402, '44.46840', '-75.23270'), ('HEUVELTON', 804, '44.61710', '-75.40440'), ('HOPKINTON', None, '44.68000', '-74.72000'), ('MADRID', None, '44.75000', '-75.15000'), ('MORRISTOWN', 456, '44.58320', '-75.64510'), ('OGDENSBURG', 12364, '44.70700', '-75.47040'), ('PARISHVILLE', None, '44.63000', '-74.82000'), ('POTSDAM', 9425, '44.66810', '-74.98560'), ('RENSSELAER FALLS', 337, '44.59080', '-75.32020'), ('RICHVILLE', 274, '44.41530', '-75.39090')], 'partOfState': 'NORTHERN', 'wfo': 'BTV'}, -'CAZ016': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AFTON', None, '39.42000', '-121.96530'), ('ARBOGA', None, '39.05140', '-121.55470'), ('ARBUCKLE', 2332, '39.01630', '-122.06060'), ('ARTOIS', None, '39.61970', '-122.19280'), ('BANGOR', None, '39.38860', '-121.40420'), ('BEALE AFB', 5115, '39.11370', '-121.36130'), ('BIGGS', 1793, '39.41390', '-121.70920'), ('BLUEGUM', None, '39.58360', '-122.19220'), ('BROWNS VALLEY', None, '39.24220', '-121.40800'), ('BUTTE CITY', None, '39.46470', '-121.98890'), ('CHICO', 59954, '39.75380', '-121.80690'), ('CHROME', None, '39.72920', '-122.54830'), ('CODORA', None, '39.45890', '-122.02110'), ('COLLEGE CITY', None, '39.00580', '-122.00830'), ('COLUSA', 5402, '39.20610', '-122.01130'), ('COLUSA NATIONAL WILDLIFE', None, '39.15750', '-122.04220'), ('CORTINA INDIAN RANCHERIA', None, '39.01610', '-122.28670'), ('CRANMORE', None, '38.98800', '-121.80550'), ('DAYTON', None, '39.64860', '-121.87110'), ('DELEVAN', None, '39.35420', '-122.19000'), ('DURHAM', 5220, '39.59950', '-121.82770'), ('EAST PARK RESERVOIR', None, '39.35750', '-122.51470'), ('ELK CREEK', None, '39.60530', '-122.53800'), ('FRUTO', None, '39.59000', '-122.44890'), ('GLENN', None, '39.52190', '-122.01280'), ('GREENWOOD', None, '39.69610', '-122.19330'), ('GRIDLEY', 5382, '39.36440', '-121.69520'), ('GRIMES', None, '39.07440', '-122.42250'), ('HAMILTON CITY', 1903, '39.74230', '-122.01170'), ('HAMMONTON', None, '39.19300', '-121.41970'), ('HURLETON', None, '39.49750', '-121.38640'), ('IOWA CITY', None, '39.28330', '-121.47640'), ('LEESVILLE', None, '39.18940', '-122.42250'), ('LINDA', 13474, '39.12280', '-121.55470'), ('LIVE OAK', 6229, '39.27580', '-121.65880'), ('LODOGA', None, '39.30190', '-122.48810'), ('LOMA RICA', 2075, '39.31870', '-121.40040'), ('MARYSVILLE', 12268, '39.15160', '-121.58230'), ('MAXWELL', None, '39.27640', '-122.19030'), ('MERIDIAN', None, '39.14330', '-121.91330'), ('NEWVILLE', None, '39.79110', '-122.52720'), ('NORD', None, '39.77970', '-121.95610'), ('OLIVEHURST', 11061, '39.08430', '-121.54750'), ('ORDBEND', None, '39.62970', '-122.00440'), ('OREGON HOUSE', None, '39.35640', '-121.27800'), ('ORLAND', 6281, '39.74570', '-122.18720'), ('OROVILLE', 13004, '39.50160', '-121.56590'), ('OROVILLE DAM', None, '39.53880', '-121.48440'), ('PALERMO', 5720, '39.43670', '-121.53050'), ('PENNINGTON', None, '39.29110', '-121.79220'), ('PENNINGTON', None, '39.29110', '-121.79220'), ('RICHARDSON SPRINGS', None, '39.84000', '-121.77580'), ('SMARTVILLE', None, '39.20750', '-121.29750'), ('SOUTH YUBA CITY', 12651, '39.11650', '-121.63800'), ('STANFIELD HILL', None, '39.34250', '-121.33190'), ('STONEY GORGE RESERVOIR', None, '39.58500', '-122.53170'), ('STONEYFORD', None, '39.37500', '-122.54300'), ('SUTTER', 2885, '39.15930', '-121.74620'), ('SYCAMORE', None, '39.13380', '-121.94080'), ('THERMALITO', 6045, '39.49110', '-121.60800'), ('TIERRA BUENA', 4587, '39.15860', '-121.66770'), ('TIMBUCTOO', None, '39.21690', '-121.31750'), ('TISDALE', None, '39.04050', '-121.78500'), ('TUDOR', None, '39.00500', '-121.62250'), ('WHEATLAND', 2275, '39.01300', '-121.42670'), ('WILBUR SPRINGS', None, '39.03940', '-122.41860'), ('WILLIAMS', 3670, '39.15460', '-122.13680'), ('WILLOWS', 6220, '39.51590', '-122.19890'), ('WYANDOTTE', None, '39.45810', '-121.46660'), ('YUBA CITY', 36758, '39.13550', '-121.62270')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'NYZ085': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ANGOLA', 2266, '42.63770', '-79.02980'), ('ANGOLA ON THE LAKE', 1771, '42.65470', '-79.04910'), ('EAST AURORA', 6673, '42.76680', '-78.61740'), ('EDEN', 3579, '42.65200', '-78.90070'), ('FARNHAM', 322, '42.59690', '-79.07890'), ('HAMBURG', 10116, '42.72400', '-78.83490'), ('HOLLAND', 1261, '42.63640', '-78.54790'), ('LAKE ERIE BEACH', 4499, '42.62360', '-79.07770'), ('NORTH BOSTON', 2680, '42.67220', '-78.78400'), ('NORTH COLLINS', 1079, '42.59460', '-78.93670'), ('ORCHARD PARK', 3294, '42.76340', '-78.74580'), ('SPRINGVILLE', 4252, '42.50940', '-78.67010')], 'partOfState': '', 'wfo': 'BUF'}, -'CAZ014': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CASSEL', None, '40.91920', '-121.54670'), ('CLARK CREEK', None, '41.03780', '-121.66860'), ('DANA', None, '41.11170', '-121.56360'), ('FALL RIVER MILLS', 648, '41.00470', '-121.43720'), ('GLENBURN', None, '41.06140', '-121.48920'), ('JOHNSON PARK', None, '40.91770', '-121.62610'), ('MCARTHUR', 365, '41.05030', '-121.39810'), ('OLD STATION', None, '40.67530', '-121.42970')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'CAZ013': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIG BEND', 149, '41.02080', '-121.91000'), ('CASTELLA', None, '41.13860', '-122.31660'), ('CASTLE CRAG', None, '41.09460', '-122.29080'), ('CENTRAL VALLEY', None, '40.67960', '-122.37490'), ('FISHER', None, '41.03640', '-122.39220'), ('FRENCH GULCH', 254, '40.70080', '-122.63720'), ('KESWICK', None, '40.62250', '-122.46470'), ('LAKE MCCLOUD', None, '41.13110', '-122.06940'), ('LAKEHEAD', None, '40.90530', '-122.37810'), ('MOUNTAIN GATE', None, '40.71640', '-122.33050'), ("O'BRIEN", None, '40.81220', '-122.32310'), ('PINE GROVE', None, '40.66500', '-122.35220'), ('POLLARD FLAT', None, '40.99580', '-122.41720'), ('SHASTA DAM', None, '40.71500', '-122.41660'), ('SIMS', None, '41.07190', '-122.35390'), ('SUGARLOAF', None, '40.85830', '-122.39580'), ('VOLLMERS', None, '40.94310', '-122.43890'), ('WHISKEYTOWN', None, '40.63890', '-122.55860')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'GAZ081': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ROBERTA', 808, '32.71970', '-84.01090')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'NYZ081': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BRIDGEHAMPTON', 1381, '40.94340', '-72.29910'), ('CENTER MORICHES', 6655, '40.79920', '-72.79680'), ('EAST HAMPTON', 1334, '40.95070', '-72.19690'), ('EAST HAMPTON AIRPORT', None, '40.95000', '-72.28000'), ('EAST MORICHES', 4550, '40.81010', '-72.76050'), ('EAST QUOGUE', 4265, '40.85310', '-72.57670'), ('FLANDERS', 3646, '40.91000', '-72.60480'), ('HAMPTON BAYS', 12236, '40.88000', '-72.52440'), ('HITHER HILLS STATE PARK', None, '41.01000', '-72.01000'), ('MANORVILLE', 11131, '40.85850', '-72.79400'), ('MASTIC', 15436, '40.80200', '-72.84440'), ('MASTIC BEACH', 11543, '40.76150', '-72.84020'), ('MONTAUK', 3851, '41.04750', '-71.94520'), ('MONTAUK HIGHWAY', None, '40.90000', '-72.34000'), ('MONTAUK POINT', None, '41.07000', '-71.86000'), ('NORTH HAVEN', 743, '41.02360', '-72.31570'), ('NORTH SEA', 4493, '40.95000', '-72.41000'), ('NOYACK', 2696, '41.00000', '-72.34000'), ('PECONIC RIVER', None, '40.91000', '-72.65000'), ('QUOGUE', 1018, '40.85000', '-72.59750'), ('REMSENBURG-SPEONK', 2675, '40.81340', '-72.70580'), ('RIVERHEAD', 10513, '40.91000', '-72.63000'), ('SAG HARBOR', 2313, '41.00000', '-72.31000'), ('SHINNECOCK HILLS', 1749, '40.89550', '-72.45640'), ('SOUTHAMPTON', 3965, '40.88030', '-72.39550'), ('SPRINGS', 4950, '41.02090', '-72.15710'), ('WATERMILL', 1724, '40.92900', '-72.34820'), ('WESTHAMPTON', 2869, '40.83870', '-72.66490')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'NYZ080': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMITYVILLE', 9441, '40.66980', '-73.41610'), ('BABYLON', 12615, '40.69600', '-73.32710'), ('BAY SHORE', 23852, '40.72640', '-73.25050'), ('BAYPORT', 8662, '40.74780', '-73.05470'), ('BAYWOOD', 7571, '40.75120', '-73.29110'), ('BELLPORT', 2363, '40.75690', '-72.94210'), ('BLUE POINT', 4407, '40.75030', '-73.03500'), ('BOHEMIA', 9871, '40.77400', '-73.12130'), ('BRENTWOOD', 53917, '40.78140', '-73.24850'), ('BRIGHTWATERS', 3248, '40.71800', '-73.26590'), ('BROOKHAVEN', 3570, '40.78020', '-72.91300'), ('CAPTREE STATE PARK', None, '40.66000', '-73.24000'), ('CARMANS RIVER', None, '40.78000', '-72.89000'), ('CENTRAL ISLIP', 31950, '40.78540', '-73.19690'), ('CONNECTQUOT RIVER', None, '40.76000', '-73.15000'), ('COPIAGUE', 21922, '40.67130', '-73.39200'), ('DAVIS PARK', None, '40.68000', '-73.02000'), ('DEER PARK', 28316, '40.76230', '-73.32260'), ('EAST FARMINGDALE', 5400, '40.72910', '-73.41730'), ('EAST ISLIP', 14078, '40.72520', '-73.18700'), ('EAST PATCHOGUE', 20824, '40.76990', '-72.98240'), ('GILGO STATE PARK', None, '40.63000', '-73.37000'), ('HOLBROOK', 27512, '40.79260', '-73.07080'), ('HOLTSVILLE', 17006, '40.81330', '-73.04760'), ('ISLANDIA', 3057, '40.80670', '-73.17190'), ('ISLIP', 20575, '40.73280', '-73.21770'), ('ISLIP TERRACE', 5641, '40.74860', '-73.18690'), ('LINDENHURST', 27819, '40.68570', '-73.37180'), ('MEDFORD', 21985, '40.82240', '-72.98470'), ('NORTH BAY SHORE', 14992, '40.75900', '-73.26100'), ('NORTH BELLPORT', 9007, '40.78840', '-72.94640'), ('NORTH PATCHOGUE', 7825, '40.78440', '-73.02440'), ('OAKDALE', 8075, '40.73770', '-73.13420'), ('OCEAN BEACH', 138, '40.64550', '-73.15640'), ('PATCHOGUE', 11919, '40.76130', '-73.01940'), ('ROBERT MOSES STATE PARK', None, '40.63000', '-73.24000'), ('RONKONKOMA', 20029, '40.80350', '-73.12490'), ('SALTAIRE', 43, '40.63800', '-73.19510'), ('SAYVILLE', 16735, '40.74680', '-73.08580'), ('SHIRLEY', 25395, '40.79520', '-72.87410'), ('SUNRISE HIGHWAY', None, '40.75000', '-73.09000'), ('WEST ISLIP', 28907, '40.70890', '-73.29660'), ('WEST SAYVILLE', 5003, '40.72820', '-73.10570'), ('WYANDANCH', 10546, '40.74660', '-73.37720')], 'partOfState': 'SOUTHEAST', 'wfo': 'OKX'}, -'FLZ020': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELMONT', None, '30.48580', '-82.72280'), ('BLUE SPRINGS', None, '30.48540', '-83.22080'), ('JASPER', 1780, '30.51710', '-82.95620'), ('JENNINGS', 833, '30.60110', '-83.10700'), ('WEST LAKE', None, '30.50250', '-83.11520'), ('WHITE SPRINGS', 819, '30.33150', '-82.75800')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLZ021': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRANFORD', 695, '29.96210', '-82.92760'), ('DOWLING PARK', None, '30.24350', '-83.23650'), ('HILDRETH', None, '29.95260', '-82.80560'), ('HOUSTON', None, '30.25680', '-82.90290'), ('ICHETUCKNEE SPRINGS STATE', None, '29.96000', '-82.77000'), ('LIVE OAK', 6480, '30.29430', '-82.98610'), ('LURAVILLE', None, '30.12230', '-83.16950'), ('MCALPIN', None, '30.13900', '-82.95210'), ('NEWBURN', None, '30.27230', '-83.14090'), ('OBRIEN', None, '30.03820', '-82.94040'), ('SUWANNEE RIVER STATE PARK', None, '30.40790', '-83.16470'), ('SUWANNEE SPRINGS', None, '30.39400', '-82.93760'), ('WELLBORN', None, '30.23090', '-82.81990')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLZ022': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('COLUMBIA', None, '30.07340', '-82.69620'), ('FIVE POINTS', 1362, '30.22270', '-82.64400'), ('FORT WHITE', 409, '29.92150', '-82.71450'), ('LAKE CITY', 9980, '30.19280', '-82.64230'), ('LULU', None, '30.10700', '-82.49150'), ('OLENO STATE PARK', None, '29.92490', '-82.56420'), ('SUWANNEE VALLEY', None, '30.29860', '-82.70850'), ('WATERTOWN', 2837, '30.18780', '-82.59910'), ('WINFIELD', None, '30.26260', '-82.68630')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLZ023': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('GLEN ST. MARY', 473, '30.27390', '-82.16110'), ('MACCLENNY', 4459, '30.28020', '-82.12590'), ('OLUSTEE', None, '30.20370', '-82.42920'), ('SANDERSON', None, '30.25160', '-82.27330'), ('TAYLOR', None, '30.44010', '-82.29170')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLZ024': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AMELIA CITY', None, '30.59000', '-81.45750'), ('BRYCEVILLE', None, '30.38450', '-81.93900'), ('CALLAHAN', 962, '30.56140', '-81.83260'), ('FERNANDINA BEACH', 10549, '30.65770', '-81.44920'), ('HILLIARD', 2702, '30.69490', '-81.92270'), ('NASSAU VILLAGE-RATLIFF', 4667, '30.50210', '-81.81470'), ('YULEE', 8392, '30.63270', '-81.57390')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLZ025': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARLINGTON', None, '30.33540', '-81.60320'), ('BALDWIN', 1634, '30.30440', '-81.97520'), ('BAYARD', None, '30.14280', '-81.51310'), ('DOWNTOWN JACKSONVILLE', None, '30.33180', '-81.65610'), ('FORT CAROLINE', None, '30.38640', '-81.50090'), ('JACKSONVILLE BEACH', 20990, '30.27720', '-81.38580'), ('JACKSONVILLE HEIGHTS', None, '30.25190', '-81.78640'), ('JACKSONVILLE INTERNATIONA', None, '30.48390', '-81.70500'), ('LITTLE TALBOT ISLAND', None, '30.45640', '-81.41690'), ('MANDARIN', None, '30.15280', '-81.64150'), ('MAXVILLE', None, '30.19820', '-82.01140'), ('MAYPORT', None, '30.38480', '-81.40940'), ('NEPTUNE BEACH', 7270, '30.31470', '-81.39370'), ('NORMANDY', None, '30.30550', '-81.76110'), ('OCEANWAY', None, '30.46650', '-81.63270'), ('ORTEGA', None, '30.27030', '-81.70860'), ('RIVERSIDE', None, '30.31270', '-81.68400'), ('SAN MARCO', None, '30.31120', '-81.66060'), ('SAN PABLO', None, '30.29500', '-81.43800'), ('TALBOT ISLAND', None, '30.47000', '-81.42000'), ('TALLYRAND', None, '30.35940', '-81.63300'), ('UNF', None, '30.27530', '-81.51200')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLZ026': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BON AMI', None, '30.11310', '-84.98730'), ('BRISTOL', 845, '30.43060', '-84.97590'), ('CENTRAL CITY', None, '30.18780', '-84.92570'), ('CLIO', None, '30.31870', '-84.82610'), ('ESTIFFANULGA', None, '30.30830', '-85.03360'), ('HOSFORD', None, '30.38600', '-84.79830'), ('KERN', None, '30.12830', '-84.98910'), ('LEWIS', None, '30.21400', '-85.05690'), ('LIBERTY', None, '30.28140', '-84.84170'), ('LOWRY', None, '30.42280', '-84.77610'), ('MOSQUITO LANDING', None, '30.27430', '-85.05430'), ('OCHISI', None, '30.48220', '-84.95000'), ('ORANGE', None, '30.22590', '-85.02530'), ('OWL LANDING', None, '30.01670', '-85.01610'), ('ROCK BLUFF', None, '30.54200', '-84.91320'), ('SUMATRA', None, '30.01870', '-84.97930'), ('SWEETWATER', 14226, '30.50640', '-84.97250'), ('TELOGIA', None, '30.35040', '-84.81930'), ('TWIN POLE', None, '30.10240', '-84.84980'), ('VILAS', None, '30.21860', '-84.88590'), ('WHITE OAK LANDING', None, '30.09700', '-85.11330'), ('WHITE SPRINGS', 819, '30.41870', '-84.91550'), ('WILMA', None, '30.15780', '-84.96230'), ('WOODS', None, '30.34590', '-84.98010')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ027': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BETHEL', None, '30.25090', '-84.32420'), ('BROWN HOUSE', None, '30.30350', '-84.50860'), ('BUCKHORN', None, '30.06620', '-84.45190'), ('CRAWFORDVILLE', None, '30.17530', '-84.37350'), ('HILLIARDVILLE', None, '30.28660', '-84.39960'), ('MEDART', None, '30.08190', '-84.38730'), ('NEWPORT', None, '30.19670', '-84.18140'), ('OCHLOCKONEE RIVER SP', None, '30.00420', '-84.47990'), ('OTTER CAMP', None, '30.30610', '-84.61670'), ('PANACEA', None, '30.03660', '-84.38800'), ('PORT LEON', None, '30.13010', '-84.19520'), ('SANBORN', None, '30.06990', '-84.60460'), ('SHADEVILLE', None, '30.19820', '-84.30910'), ('SMITH CREEK', None, '30.18050', '-84.65700'), ('SOPCHOPPY', 426, '30.05940', '-84.48880'), ('SPRING CREEK', None, '30.08000', '-84.32980'), ('ST. MARKS', 272, '30.15680', '-84.20700'), ('WAKULLA', None, '30.23410', '-84.22910'), ('WAKULLA GARDENS', None, '30.17590', '-84.30780'), ('WAKULLA SPRINGS', None, '30.23360', '-84.30030')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ028': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ADAMS BEACH', None, '29.88230', '-83.63200'), ('ATHENA', None, '29.98620', '-83.49450'), ('BLUE SPRINGS', None, '30.14120', '-83.77170'), ('BLUE SPRINGS', None, '29.83480', '-83.57130'), ('BOYD', None, '30.18680', '-83.60720'), ('BUCELL JUNCTION', None, '30.06790', '-83.55580'), ('BUCKHORN', None, '30.13230', '-83.92490'), ('CABBAGE GROVE', None, '30.20580', '-83.87590'), ('CARBUR', None, '29.91590', '-83.42840'), ('CEDAR ISLAND', None, '29.81450', '-83.58270'), ('DEKLE BEACH', None, '29.85130', '-83.61660'), ('ECONFINA', None, '30.13480', '-83.85660'), ('ERIDU', None, '30.29920', '-83.74510'), ('FENHOLLOWAY', None, '30.07540', '-83.49560'), ('FISH CREEK', None, '29.78570', '-83.57230'), ('FOLEY', None, '30.06750', '-83.53110'), ('HAMPTON SPRINGS', None, '30.08330', '-83.65500'), ('HOWELL PLACE', None, '29.76910', '-83.51130'), ('IDDO', None, '30.27560', '-83.72490'), ('LAKE BIRD', None, '30.24830', '-83.61380'), ('MANDALAY', None, '30.12840', '-83.95760'), ('PERRY', 6847, '30.10870', '-83.58170'), ('PERRY-FOLEY A/P', None, '30.07040', '-83.57590'), ('PINLAND', None, '30.01600', '-83.52830'), ('SALEM', None, '29.88470', '-83.41350'), ('SCANLON', None, '30.12840', '-83.89620'), ('SECOTAN', None, '30.17410', '-83.63490'), ('SHADY GROVE', None, '30.28580', '-83.63180'), ('SMITH', None, '30.11770', '-83.41400'), ('STEINHATCHEE', None, '29.67610', '-83.39620'), ('TENNILLE', None, '29.77630', '-83.32630'), ('TENNILLE A/P', None, '29.78120', '-83.33270')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ029': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BUCKVILLE', None, '30.12770', '-83.29300'), ('COOKS HAMMOCK', None, '29.92740', '-83.27710'), ('DAY', None, '30.19240', '-83.29190'), ('HATCH BEND', None, '29.84480', '-82.91800'), ('MAYO', 988, '30.05100', '-83.17670'), ('MIDWAY', 1714, '30.00980', '-83.07890')], 'partOfState': '', 'wfo': 'TAE'}, -'WAZ020': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BROOKLYN', None, '46.78300', '-123.50000'), ('FRANCES', None, '46.53300', '-123.50000'), ('LEBAM', 176, '46.56700', '-123.55000'), ('MENLO', None, '46.63330', '-123.65000'), ('RYDERWOOD', None, '46.37000', '-123.05000'), ('SUTICO', None, '46.63000', '-123.51000'), ('WILLAPA', None, '46.66660', '-123.66660')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'WAZ021': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALTOONA', None, '46.26700', '-123.65000'), ('BAY CENTER', 174, '46.62000', '-123.95000'), ('CAPE DISAPPOINTMENT', None, '46.27000', '-124.08000'), ('CAPE SHOALWATER', None, '46.73000', '-124.08600'), ('CATHLAMET', 565, '46.20020', '-123.37960'), ('CHINOOK', 457, '46.27700', '-123.95000'), ('DEEP RIVER', None, '46.34800', '-123.68500'), ('GRAYS RIVER', None, '46.35000', '-123.60000'), ('ILWACO', 950, '46.31090', '-124.03310'), ('KLIPSAN BEACH', None, '46.46660', '-124.05000'), ('KNAPPTON', None, '46.27500', '-123.81660'), ('LEADBETTER POINT', None, '46.64000', '-124.06000'), ('LONG BEACH', 1283, '46.35550', '-124.05320'), ('MEGLER', None, '46.25000', '-123.86660'), ('NAHCOTTA', None, '46.50100', '-124.03000'), ('NASELLE', 377, '46.36700', '-123.81700'), ('NEMAH', None, '46.51600', '-123.88330'), ('NORTH COVE', None, '46.73000', '-124.06700'), ('OCEAN PARK', 1459, '46.49570', '-124.04320'), ('OCEANSIDE', None, '46.40000', '-124.04500'), ('OYSTERVILLE', None, '46.55000', '-124.03330'), ('PILLAR ROCK', None, '46.26660', '-123.58330'), ('PUGET ISLAND', None, '46.17000', '-123.38000'), ('RAYMOND', 2975, '46.68350', '-123.73690'), ('ROSBURG', None, '46.33330', '-123.63330'), ('SEAVIEW', None, '46.33330', '-124.05100'), ('SKAMOKAWA', None, '46.26700', '-123.45000'), ('SOUTH BEND', 1807, '46.66000', '-123.80300'), ('TOKELAND', 194, '46.71000', '-123.98330')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'WAZ026': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ELLENSBURG', 15414, '46.99710', '-120.54800'), ('KITTITAS', 1105, '46.98500', '-120.41700')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'WAZ027': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FAIRVIEW-SUMACH', None, '46.58780', '-120.47460'), ('FRUITVALE', None, '46.61720', '-120.54170'), ('GRANDVIEW', 8377, '46.24440', '-119.91080'), ('GRANGER', 2530, '46.34280', '-120.18960'), ('HARRAH', 542, '46.40430', '-120.54130'), ('MABTON', 1891, '46.21290', '-119.99560'), ('MOXEE', 821, '46.56340', '-120.39880'), ('SATUS', 746, '46.23200', '-120.11840'), ('SELAH', 6310, '46.65620', '-120.53390'), ('SOUTH BROADWAY', None, '46.56640', '-120.51560'), ('SUNNYSIDE', 13905, '46.32100', '-120.01250'), ('TERRACE HEIGHTS', 6447, '46.60600', '-120.43770'), ('TOPPENISH', 8946, '46.38110', '-120.31150'), ('UNION GAP', 5621, '46.55510', '-120.48740'), ('WAPATO', 4582, '46.44570', '-120.42070'), ('WEST VALLEY', 10433, '46.59230', '-120.60400'), ('WHITE SWAN', 3033, '46.38820', '-120.72080'), ('YAKIMA', 71845, '46.59260', '-120.52890'), ('ZILLAH', 2198, '46.40370', '-120.25950')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PDT'}, -'WAZ024': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BINGEN', 672, '45.71420', '-121.46810'), ('WHITE SALMON', 2193, '45.72770', '-121.48370')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'WAZ025': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CLE ELUM', 1755, '47.19400', '-120.93310'), ('GOLDENDALE', 3760, '45.82200', '-120.81830'), ('NACHES', 643, '46.72950', '-120.69730'), ('ROSLYN', 1017, '47.24480', '-121.10260'), ('SOUTH CLE ELUM', 457, '47.18680', '-120.95180'), ('TIETON', 1154, '46.70180', '-120.75290')], 'partOfState': 'CENTRAL', 'wfo': 'PDT'}, -'TXZ019': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CLARENDON', 1974, '34.93670', '-100.89180'), ('GREENBELT LAKE', None, '35.01190', '-100.91080'), ('HEDLEY', 379, '34.86700', '-100.65940'), ('HOWARDWICK', 437, '35.03520', '-100.90870'), ('LELIA LAKE', None, '34.90110', '-100.77030')], 'partOfState': '', 'wfo': 'AMA'}, -'OKZ065': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('OKEMAH', 3038, '35.43250', '-96.30470'), ('WELEETKA', 1014, '35.33560', '-96.13610'), ('BEARDEN', 140, '35.34810', '-96.38830'), ('CLEARVIEW', 56, '35.39690', '-96.18610'), ('PHAROAH', None, '35.42030', '-96.12280'), ('CASTLE', 122, '35.47440', '-96.38190'), ('PADEN', 446, '35.50780', '-96.56720'), ('BOLEY', 1126, '35.49330', '-96.48330'), ('MASON', None, '35.56610', '-96.35190'), ('OKFUSKEE', None, '35.59530', '-96.22810'), ('WELTY', None, '35.62440', '-96.40500')], 'partOfState': 'EAST CENTRAL', 'wfo': 'TSA'}, -'COZ085': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BROADMOOR', None, '38.78000', '-104.85000'), ('CHEYENNE CANYON', None, '38.79000', '-104.88000'), ('COLORADO SPRINGS', 360890, '38.86320', '-104.75990'), ('ELLICOTT', None, '38.84000', '-104.38000'), ('FALCON', None, '38.93000', '-104.62000'), ('FORT CARSON', 10566, '38.74200', '-104.78220'), ('FOUNTAIN', 15197, '38.66690', '-104.69330'), ('MANITOU SPRINGS', 4980, '38.85710', '-104.91090'), ('PETERSON AFB', None, '38.83000', '-104.70000'), ('RUSH', None, '38.84000', '-104.08000'), ('SCHRIEVER AFB', None, '38.80000', '-104.52000'), ('SECURITY...WIDEFIELD', None, '38.74400', '-104.71150'), ('TRUCKTON', None, '38.73000', '-104.18000'), ('YODER', None, '38.84000', '-104.22000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'KSZ044': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALAMOTA', None, '38.44000', '-100.31000'), ('AMY', None, '38.46000', '-100.60000'), ('DIGHTON', 1261, '38.48150', '-100.46580'), ('HEALY', None, '38.60000', '-100.62000'), ('PENDENNIS', None, '38.65000', '-100.33000'), ('SHIELDS', None, '38.62000', '-100.45000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'NDZ051': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ELLENDALE', 1559, '46.00390', '-98.52480'), ('FORBES', 64, '45.94220', '-98.78270'), ('FULLERTON', 85, '46.16360', '-98.42580'), ('GUELPH', None, '46.01670', '-98.23330'), ('LUDDEN', 29, '46.00790', '-98.12500'), ('MERRICOURT', None, '46.20790', '-98.76120'), ('MONANGO', 28, '46.17280', '-98.59510'), ('OAKES', 1979, '46.13940', '-98.08620')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'NDZ050': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ASHLEY', 882, '46.03490', '-99.37330'), ('LEHR', 114, '46.28280', '-99.35170'), ('VENTURIA', 23, '45.99740', '-99.54930'), ('WISHEK', 1122, '46.25570', '-99.55520'), ('ZEELAND', 141, '45.97310', '-99.83230')], 'partOfState': 'SOUTHEAST', 'wfo': 'BIS'}, -'ILZ045': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('BROADLANDS', 312, '39.90850', '-87.99540'), ('CHAMPAIGN', 67518, '40.11300', '-88.26490'), ('FISHER', 1647, '40.31580', '-88.34850'), ('FOOSLAND', 90, '40.36040', '-88.42870'), ('GIFFORD', 815, '40.30640', '-88.02160'), ('HOMER', 1200, '40.03190', '-87.95890'), ('IVESDALE', 288, '39.94510', '-88.45700'), ('LAKE OF THE WOODS', 3026, '40.20650', '-88.36860'), ('LONGVIEW', 153, '39.88550', '-88.06650'), ('LUDLOW', 324, '40.38620', '-88.12610'), ('MAHOMET', 4877, '40.19380', '-88.40180'), ('OGDEN', 743, '40.11550', '-87.95580'), ('PESOTUM', 521, '39.91290', '-88.27410'), ('PHILO', 1314, '40.00310', '-88.15800'), ('RANTOUL', 12857, '40.30340', '-88.15550'), ('ROYAL', 279, '40.19200', '-87.97130'), ('SADORUS', 426, '39.96700', '-88.34540'), ('SAVOY', 4476, '40.06500', '-88.25270'), ('SEYMOUR', None, '40.10000', '-88.41670'), ('SIDNEY', 1062, '40.02440', '-88.07180'), ('ST. JOSEPH', 2912, '40.11270', '-88.04060'), ('THOMASBORO', 1233, '40.24400', '-88.18690'), ('TOLONO', 2700, '39.98630', '-88.26300'), ('URBANA', 36395, '40.10850', '-88.20520')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ILX'}, -'ILZ044': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ATWOOD', 1290, '39.80000', '-88.47000'), ('BEMENT', 1784, '39.92280', '-88.57160'), ('CERRO GORDO', 1436, '39.89010', '-88.73460'), ('CISCO', 264, '40.01370', '-88.72350'), ('DE LAND', 475, '40.12160', '-88.64380'), ('HAMMOND', 518, '39.79850', '-88.59150'), ('LA PLACE', None, '39.80000', '-88.71670'), ('LODGE', None, '40.10000', '-88.55000'), ('MANSFIELD', 949, '40.21200', '-88.50900'), ('MONTICELLO', 5138, '40.02580', '-88.57470'), ('WHITE HEATH', None, '40.08330', '-88.50000')], 'partOfState': 'CENTRAL', 'wfo': 'ILX'}, -'OKZ066': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('WILSON', 1584, '35.50750', '-96.03440'), ('LIBERTY', 184, '35.85860', '-95.97720'), ('OKMULGEE', 13022, '35.62330', '-95.96030'), ('HENRYETTA', 6096, '35.43970', '-95.98170'), ('BRYANT', None, '35.39060', '-96.06440'), ('DEWAR', 919, '35.45810', '-95.94110'), ('HOFFMAN', 148, '35.48920', '-95.84250'), ('GRAYSON', 134, '35.50310', '-95.87250'), ('SCHULTER', 600, '35.51440', '-95.95640'), ('MORRIS', 1294, '35.60750', '-95.86000'), ('ERAM', None, '35.61690', '-95.75470'), ('PRESTON', None, '35.71140', '-95.99140'), ('BEGGS', 1364, '35.74250', '-96.07000'), ('BALD HILL', None, '35.74030', '-95.83690'), ('HECTORVILLE', None, '35.84190', '-95.92500')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'DEZ004': {'fullStateName': 'DELAWARE', 'state': 'DE', 'cities': [('BETHANY BEACH', 903, '38.53800', '-75.06540'), ('DEWEY BEACH', 301, '38.69530', '-75.07680'), ('FENWICK ISLAND', 342, '38.46070', '-75.05380'), ('HENLOPEN ACRES', 139, '38.72580', '-75.08610'), ('MILLVILLE', 259, '38.54530', '-75.11240'), ('OCEAN VIEW', 1006, '38.54500', '-75.09270'), ('REHOBOTH BEACH', 1495, '38.71730', '-75.08090'), ('SOUTH BETHANY', 492, '38.51610', '-75.05840')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'DEZ001': {'fullStateName': 'DELAWARE', 'state': 'DE', 'cities': [('ARDEN', 474, '39.81050', '-75.48960'), ('ARDENCROFT', 267, '39.80400', '-75.48680'), ('ARDENTOWN', 300, '39.80900', '-75.48190'), ('BELLEFONTE', 1249, '39.76630', '-75.49830'), ('BROOKSIDE', 14806, '39.66780', '-75.71590'), ('CLAYMONT', 9220, '39.80300', '-75.45940'), ('DELAWARE CITY', 1453, '39.57550', '-75.60040'), ('EDGEMOOR', 5992, '39.75570', '-75.50780'), ('ELSMERE', 5800, '39.73790', '-75.59490'), ('MIDDLETOWN', 6161, '39.45110', '-75.71470'), ('NEW CASTLE', 4862, '39.66640', '-75.57040'), ('NEWARK', 28547, '39.67660', '-75.75770'), ('NEWPORT', 1122, '39.71330', '-75.60700'), ('ODESSA', 286, '39.45640', '-75.66010'), ('PIKE CREEK', 19751, '39.73090', '-75.70450'), ('STANTON', None, '39.71810', '-75.65160'), ('TALLEYVILLE', None, '39.81020', '-75.55030'), ('TOWNSEND', 346, '39.39410', '-75.69300'), ('WILMINGTON', 72664, '39.73560', '-75.53000'), ('WILMINGTON MANOR', 8262, '39.68550', '-75.58480')], 'partOfState': 'NORTHERN', 'wfo': 'PHI'}, -'DEZ003': {'fullStateName': 'DELAWARE', 'state': 'DE', 'cities': [('BETHEL', 184, '38.57010', '-75.61980'), ('BLADES', 956, '38.63470', '-75.60920'), ('BRIDGEVILLE', 1436, '38.74330', '-75.60240'), ('DAGSBORO', 519, '38.54750', '-75.24770'), ('ELLENDALE', 327, '38.80710', '-75.42430'), ('FRANKFORD', 714, '38.52230', '-75.23290'), ('GEORGETOWN', 4643, '38.69080', '-75.38590'), ('GREENWOOD', 837, '38.80740', '-75.59210'), ('LAUREL', 3668, '38.55500', '-75.57310'), ('LEWES', 2932, '38.78030', '-75.14980'), ('LONG NECK', 1629, '38.62010', '-75.15100'), ('MILFORD', 6732, '38.91410', '-75.43310'), ('MILLSBORO', 2360, '38.58520', '-75.29180'), ('MILTON', 1657, '38.77890', '-75.31320'), ('SEAFORD', 6699, '38.64890', '-75.61660'), ('SELBYVILLE', 1645, '38.45810', '-75.22400'), ('SLAUGHTER BEACH', 198, '38.91230', '-75.30430')], 'partOfState': 'SOUTHERN', 'wfo': 'PHI'}, -'NDZ054': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ADAMS', 203, '48.41970', '-98.07380'), ('EDINBURG', 252, '48.49560', '-97.86220'), ('FAIRDALE', 51, '48.48950', '-98.23150'), ('LANKIN', 131, '48.31480', '-97.92080')], 'partOfState': 'NORTHEAST', 'wfo': 'FGF'}, -'IAZ056': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DEFIANCE', 346, '41.82540', '-95.33930'), ('EARLING', 471, '41.77610', '-95.41970'), ('ELK HORN', 649, '41.59270', '-95.06040'), ('HARLAN', 5282, '41.64900', '-95.32620'), ('IRWIN', 372, '41.79010', '-95.20670'), ('KIRKMAN', 76, '41.72900', '-95.26630'), ('PANAMA', 212, '41.72670', '-95.47530'), ('PORTSMOUTH', 225, '41.65070', '-95.51940'), ('SHELBY', 696, '41.50850', '-95.45160'), ('TENNANT', 73, '41.59550', '-95.44290'), ('WESTPHALIA', 160, '41.71930', '-95.39310')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'KYZ053': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ATHERTONVILLE', None, '37.63330', '-85.60000'), ('BUFFALO', None, '37.51670', '-85.70000'), ('GLEANINGS', None, '37.55000', '-85.53330'), ('HODGENVILLE', 2874, '37.56810', '-85.73570'), ('LYONS', None, '37.68330', '-85.61670'), ('MAGNOLIA', None, '37.45000', '-85.75000'), ('TONNIEVILLE', None, '37.60000', '-85.80000'), ('UPTON', 654, '37.46460', '-85.89000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LMK'}, -'KYZ052': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BANGOR', None, '38.05000', '-83.44400'), ('BLUESTONE', None, '38.15190', '-83.50900'), ('BRANDY', None, '38.15710', '-83.45600'), ('CHRISTY', None, '38.18920', '-83.37280'), ('CLEARFIELD', None, '38.16490', '-83.43270'), ('COGSWELL', None, '38.09620', '-83.48980'), ('CRANEY', None, '38.07710', '-83.35580'), ('CRANSTON', None, '38.26330', '-83.43570'), ('CRIX', None, '38.15570', '-83.37460'), ('ELLIOTTVILLE', None, '38.18280', '-83.27580'), ('FARLEY', None, '38.16750', '-83.22620'), ('FARMERS', None, '38.14280', '-83.54610'), ('FREESTONE', None, '38.14790', '-83.51660'), ('GATES', None, '38.23480', '-83.36660'), ('HALDEMAN', None, '38.25280', '-83.31860'), ('HAMM', None, '38.12490', '-83.31160'), ('HAYS CROSSING', None, '38.24110', '-83.44860'), ('HILDA', None, '38.23840', '-83.50780'), ('LAKEVIEW HEIGHTS', 251, '38.15210', '-83.50450'), ('LICK FORK', None, '38.09630', '-83.41110'), ('MINOR', None, '38.12980', '-83.26480'), ('MOREHEAD', 5914, '38.19010', '-83.44220'), ('MUNSON', None, '38.23060', '-83.45760'), ('PARAGON', None, '38.04770', '-83.39890'), ('PELFREY', None, '38.11300', '-83.38510'), ('RAMEY', None, '38.18060', '-83.57130'), ('RODBURN', None, '38.19780', '-83.41090'), ('SHARKEY', None, '38.23140', '-83.56030'), ('TRIPLETT', None, '38.29310', '-83.39610'), ('VALE', None, '38.19230', '-83.29560'), ('WAGNER', None, '38.13600', '-83.28410'), ('WAGNER STORE', None, '38.16750', '-83.26840'), ('WALTZ', None, '38.31600', '-83.44320')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYZ051': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BETHEL', None, '38.25060', '-83.86640'), ('BOURBON FURNACE', None, '38.11820', '-83.74530'), ('CRAIGS', None, '38.16280', '-83.72540'), ('CROOKS', None, '38.07430', '-83.76020'), ('FLAT CREEK', None, '38.13590', '-83.86930'), ('KENDALL SPRINGS', None, '38.10120', '-83.77910'), ('MARSHALL', None, '38.13620', '-83.67830'), ('MIDLAND', None, '38.13330', '-83.57830'), ('MOORES FERRY', None, '38.16840', '-83.61820'), ('OAKLEY', None, '38.24770', '-83.72460'), ('ODESSA', None, '38.22010', '-83.75030'), ('OLYMPIA', None, '38.09860', '-83.69610'), ('OLYMPIA SPRINGS', None, '38.06200', '-83.67330'), ('OWINGSVILLE', 1488, '38.13690', '-83.75950'), ('PEASTICKS', None, '38.15560', '-83.69880'), ('PEBBLE', None, '38.26880', '-83.75730'), ('PEELED OAK', None, '38.06080', '-83.80160'), ('POLKSVILLE', None, '38.13800', '-83.65550'), ('PRESTON', None, '38.08610', '-83.75390'), ('REYNOLDSVILLE', None, '38.19110', '-83.82470'), ('SALT LICK', 342, '38.11950', '-83.61610'), ('SHARPSBURG', 295, '38.20210', '-83.92840'), ('SLATE VALLEY', None, '38.17150', '-83.72230'), ('STEPSTONE', None, '38.08800', '-83.83030'), ('YALE', None, '38.06380', '-83.50090'), ('YOUNG SPRINGS', None, '38.06640', '-83.60130'), ('ZILPO', None, '38.07200', '-83.47410')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYZ050': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEAN', None, '37.94540', '-83.83640'), ('CAMARGO', 923, '37.99680', '-83.88960'), ('COONS STATION', None, '38.03080', '-83.87110'), ('EWINGTON', None, '38.08330', '-83.90140'), ('GATEWOODS STATION', None, '38.04130', '-83.89420'), ('GRASSY LICK', None, '38.08160', '-84.02000'), ('HOPE', None, '38.01550', '-83.77300'), ('HOWARDS MILE', None, '38.06430', '-83.84730'), ('JEFFERSONVILLE', 1804, '37.96500', '-83.82810'), ('JUDY', None, '38.12970', '-83.95860'), ('KLONDIKE', None, '38.01960', '-83.99740'), ('LEVEE', None, '37.97110', '-83.93530'), ('LOWER SPENCER', None, '38.02890', '-83.84030'), ('LUCKY STOP', None, '37.96400', '-83.81090'), ('MOUNT STERLING', 5876, '38.06040', '-83.94530'), ('OGGS STATION', None, '38.02310', '-83.82450'), ('PREWITT', None, '38.02800', '-83.98110'), ('SIDEVIEW', None, '38.11310', '-84.03670'), ('STOOPS', None, '38.12810', '-83.91470'), ('UPPER SPENCER', None, '38.02960', '-83.84760'), ('WADES MILL', None, '38.03650', '-84.01090'), ('WALKERS CROSSING', None, '38.02690', '-83.79640')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYZ057': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BEREA', 9851, '37.57670', '-84.29360'), ('BIG HILL', None, '37.55000', '-84.21670'), ('BYBEE', None, '37.73330', '-84.11670'), ('KINGSTON', None, '37.65000', '-84.25000'), ('KIRKSVILLE', None, '37.66670', '-84.41670'), ('REDHOUSE', None, '37.83330', '-84.26670'), ('RICHMOND', 27152, '37.74280', '-84.29360'), ('VALLEY VIEW', None, '37.83330', '-84.43330'), ('WACO', None, '37.73330', '-84.15000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ056': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRYANTSVILLE', None, '37.71670', '-84.65000'), ('BUCKEYE', None, '37.71670', '-84.50000'), ('BUENA VISTA', None, '37.75000', '-84.66670'), ('HIGH BRIDGE', None, '37.81670', '-84.71670'), ('LANCASTER', 3734, '37.61850', '-84.57950'), ('MCCREARY', None, '37.66670', '-84.51670'), ('PAINT LICK', None, '37.61670', '-84.41670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ055': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('DANVILLE', 15477, '37.64210', '-84.77210'), ('JUNCTION CITY', 2184, '37.58550', '-84.78900'), ('MITCHELLSBURG', None, '37.60000', '-84.95000'), ('PARKSVILLE', None, '37.60000', '-84.90000'), ('PERRYVILLE', 763, '37.64990', '-84.95140')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LMK'}, -'KYZ054': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BRADFORDSVILLE', 304, '37.49540', '-85.14820'), ('GRAVEL SWITCH', None, '37.58330', '-85.05000'), ('HOLY CROSS', None, '37.66670', '-85.45000'), ('LEBANON', 5718, '37.56700', '-85.25440'), ('LORETTO', 623, '37.63550', '-85.40210'), ('NERINX', None, '37.66000', '-85.42000'), ('NEW MARKET', None, '37.50000', '-85.31670'), ('RAYWICK', 144, '37.55970', '-85.43120'), ('ST. FRANCIS', None, '37.61670', '-85.43330'), ('ST. MARY', None, '37.58330', '-85.35000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'LMK'}, -'MDZ025': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('CAPE ISLE OF WIGHT', None, '38.35278', '-75.11833'), ('OCEAN CITY', 7173, '38.35720', '-75.07400'), ('OCEAN CITY MUNICIPAL AIRP', None, '38.31170', '-75.12380'), ('WEST OCEAN CITY', 3311, '38.34530', '-75.10970')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'MDZ024': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BEAVER DAM', None, '38.01520', '-75.56080'), ('BERLIN', 3491, '38.32520', '-75.21810'), ('BISHOP', None, '38.42860', '-75.21950'), ('BISHOPVILLE', None, '38.44260', '-75.19380'), ('BOXIRON', None, '38.11530', '-75.34920'), ('CEDARTOWN', None, '38.19560', '-75.30120'), ('GIRDLETREE', 117, '38.09420', '-75.39760'), ('GOODWILL', None, '38.07080', '-75.49140'), ('IRONSHIRE', None, '38.28420', '-75.23140'), ('LONGRIDGE', None, '38.26670', '-75.51340'), ('MOUNT WESLEY', None, '38.17160', '-75.34620'), ('NEWARK', 339, '38.25080', '-75.29090'), ('OCEAN PINES', 10496, '38.38310', '-75.14960'), ('POCOMOKE CITY', 4098, '38.06710', '-75.56190'), ('PUBLIC LANDING', None, '38.14910', '-75.28860'), ('SHOWELL', None, '38.39970', '-75.21160'), ('SNOW HILL', 2409, '38.17320', '-75.39160'), ('STOCKTON', 143, '38.05370', '-75.40990'), ('WHALEYVILLE', 124, '38.40160', '-75.30370'), ('WHITESBURG', None, '38.18570', '-75.53790'), ('WHITON', None, '38.28930', '-75.37710')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'KYZ059': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('BOWEN', None, '37.84110', '-83.77190'), ('CAT CREEK', None, '37.84500', '-83.80560'), ('CLAY CITY', 1303, '37.86310', '-83.92840'), ('FURNACE', None, '37.76210', '-83.83160'), ('HARDWICK', None, '37.77780', '-83.94090'), ('HAYSTACK', None, '37.84760', '-83.67900'), ('KNOWLTON', None, '37.78610', '-83.83750'), ('LOMBARD', None, '37.81780', '-83.74680'), ('NADA', None, '37.81460', '-83.71900'), ('NATURAL BRIDGE STATE RESO', None, '37.77520', '-83.68590'), ('PILOT', None, '37.74080', '-83.76870'), ('POWELL VALLEY', None, '37.86500', '-83.94780'), ('ROGERS CHAPEL', None, '37.77420', '-83.78310'), ('ROSSLYN', None, '37.84060', '-83.81220'), ('SLADE', None, '37.79050', '-83.70600'), ('STANTON', 3029, '37.84690', '-83.85720'), ('VAUGHNS MILL', None, '37.81360', '-83.91670'), ('VIRDEN', None, '37.88190', '-83.95500'), ('WALTERSVILLE', None, '37.86470', '-83.93440'), ('WESTBEND', None, '37.90580', '-83.96920')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'KYZ058': {'fullStateName': 'KENTUCKY', 'state': 'KY', 'cities': [('ALGER', None, '37.67010', '-84.07960'), ('ALUMBAUGH', None, '37.59630', '-83.93190'), ('ARTHURMABEL', None, '37.59350', '-83.94560'), ('BLACKBURN', None, '37.66240', '-84.07600'), ('CALLOWAY CROSSING', None, '37.72460', '-84.00390'), ('COBHILL', None, '37.71640', '-83.82920'), ('COMBS', None, '37.66090', '-84.10920'), ('COW CREEK', None, '37.70130', '-83.92570'), ('CRESSY', None, '37.82480', '-84.04030'), ('DOE CREEK', None, '37.67240', '-83.93260'), ('ENGLE', None, '37.81300', '-84.11570'), ('ESTILCO', None, '37.61130', '-83.96320'), ('FAINVILLE', None, '37.70390', '-84.06500'), ('FITCHBURG', None, '37.73210', '-83.85180'), ('FOX', None, '37.75910', '-84.06700'), ('HARGETT', None, '37.78280', '-84.00970'), ('IRON MOUND', None, '37.81500', '-84.04400'), ('IRVINE', 2843, '37.69640', '-83.96830'), ('JINKS', None, '37.60640', '-84.03220'), ('KIMBRELL', None, '37.80500', '-83.99030'), ('KINGS STATION', None, '37.68660', '-84.06310'), ('LEIGHTON', None, '37.60370', '-83.88580'), ('LOCUST BRANCH', None, '37.58530', '-84.07030'), ('NOLAND', None, '37.64800', '-84.05500'), ('NORTH IRVINE', None, '37.71420', '-83.97970'), ('PALMER', None, '37.81330', '-84.06640'), ('PATSEY', None, '37.71130', '-83.79150'), ('PITTS', None, '37.70980', '-83.88430'), ('PRYSE', None, '37.65950', '-83.87540'), ('RAVENNA', 693, '37.68720', '-83.94780'), ('RICE STATION', None, '37.70270', '-84.04080'), ('SAM', None, '37.78080', '-84.02800'), ('SANDHILL', None, '37.72530', '-84.02460'), ('SEE', None, '37.72760', '-83.76060'), ('SHADE', None, '37.64170', '-83.86450'), ('SOUTH IRVINE', None, '37.68330', '-83.97690'), ('SPOUT SPRINGS', None, '37.82700', '-83.97450'), ('STATION CAMP', None, '37.65040', '-83.99300'), ('TEXOLA', None, '37.65310', '-83.87090'), ('UNION HALL', None, '37.75870', '-83.90500'), ('WAGERSVILLE', None, '37.62540', '-83.95340'), ('WEEDON', None, '37.71130', '-84.01230'), ('WEST IRVINE', None, '37.70140', '-83.99080'), ('WILLOW TREE', None, '37.70820', '-83.91550'), ('WINSTON', None, '37.70260', '-84.07670'), ('WISEMAN CROSSING STATION', None, '37.75530', '-84.01460'), ('WISEMANTOWN', None, '37.67880', '-84.00640'), ('WITT', None, '37.67300', '-84.02440')], 'partOfState': 'EAST CENTRAL', 'wfo': 'JKL'}, -'MDZ021': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ANDREWS', None, '38.35690', '-76.11050'), ('BROOKVIEW', 65, '38.57440', '-75.79510'), ('BUCKTOWN', None, '38.45910', '-76.03140'), ('CAMBRIDGE', 10911, '38.56180', '-76.07780'), ('CHURCH CREEK', 85, '38.50530', '-76.15470'), ('CROCHERON', None, '38.24270', '-76.05290'), ('EAST NEW MARKET', 167, '38.59910', '-75.92390'), ('ELDORADO', 60, '38.58250', '-75.79080'), ('ELLIOTT', None, '38.30900', '-76.00400'), ('GALESTOWN', 101, '38.56200', '-75.71690'), ('HONGA', None, '38.34000', '-76.22500'), ('HOOPERSVILLE', None, '38.26170', '-76.18130'), ('HUDSON', None, '38.59220', '-76.25530'), ('HURLOCK', 1874, '38.62910', '-75.87100'), ('LINKWOOD', None, '38.54060', '-75.94610'), ('LLOYDS', None, '38.59000', '-76.18260'), ('MADISON', None, '38.50730', '-76.22100'), ('SECRETARY', 503, '38.60740', '-75.94750'), ('TAYLORS ISLAND', None, '38.46700', '-76.30290'), ('VIENNA', 280, '38.48500', '-75.82740'), ('WINGATE', None, '38.28130', '-76.08140'), ('WOOLFORD', None, '38.50440', '-76.18110')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'MDZ020': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('DENTON', 2960, '38.88230', '-75.82230'), ('FEDERALSBURG', 2620, '38.69100', '-75.77360'), ('GOLDSBORO', 216, '39.03540', '-75.78740'), ('GREENSBORO', 1632, '38.97610', '-75.80680'), ('HENDERSON', 118, '39.07490', '-75.76710'), ('HILLSBORO', 163, '38.91620', '-75.94170'), ('PRESTON', 566, '38.71080', '-75.90860'), ('RIDGELY', 1352, '38.94750', '-75.88530'), ('TEMPLEVILLE', 80, '39.13480', '-75.76800')], 'partOfState': '', 'wfo': 'PHI'}, -'MDZ023': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BYRDTOWN', None, '37.95950', '-75.83990'), ('CHAMP', None, '38.15390', '-75.80710'), ('COKESBURY', None, '38.12680', '-75.57900'), ('CRISFIELD', 2723, '37.97710', '-75.85930'), ('DAMES QUARTER', 188, '38.18850', '-75.89750'), ('DEAL ISLAND', 578, '38.15920', '-75.94880'), ('EDEN', 793, '38.28120', '-75.65070'), ('FAIRMOUNT', 537, '38.09010', '-75.81740'), ('HOPEWELL', None, '38.00690', '-75.81730'), ('KINGSTON', None, '38.07430', '-75.72850'), ('LAWSONIA', None, '37.95750', '-75.84200'), ('MANOKIN', None, '38.11530', '-75.75600'), ('MARION STATION', None, '38.01631', '-75.73219'), ('MONIE', None, '38.18610', '-75.81320'), ('MOUNT VERNON', 761, '38.24530', '-75.82180'), ('ORIOLE', None, '38.17440', '-75.80760'), ('PRINCESS ANNE', 2313, '38.20430', '-75.69540'), ('REHOBETH', None, '38.03930', '-75.66670'), ('RUMBLEY', None, '38.09190', '-75.84940'), ('SHELLTOWN', None, '37.98240', '-75.64400'), ('UPPER FAIRMOUNT', None, '38.10420', '-75.79140'), ('UPPER HILL', None, '38.11190', '-75.79000'), ('WESTOVER', None, '38.12280', '-75.70690'), ('WIDGEON', None, '38.25110', '-75.76940')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'MDZ022': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ALLEN', None, '38.28950', '-75.68870'), ('BIVALVE', None, '38.30630', '-75.88940'), ('CATCHPENNY', None, '38.35530', '-75.72420'), ('CHESAPEAKE HEIGHTS', None, '38.37667', '-75.54472'), ('DELMAR', 1859, '38.45260', '-75.57480'), ('FRUITLAND', 3774, '38.32190', '-75.62630'), ('GREEN HILL', None, '38.31170', '-75.77850'), ('HEBRON', 807, '38.41760', '-75.68800'), ('LAKEWOOD', None, '38.32990', '-75.59750'), ('MARDELA SPRINGS', 364, '38.45820', '-75.75660'), ('MELSON', None, '38.44180', '-75.47710'), ('NANTICOKE', None, '38.27220', '-75.90580'), ('PARSONSBURG', None, '38.38800', '-75.47050'), ('PITTSVILLE', 1182, '38.39330', '-75.41320'), ('POWELLVILLE', None, '38.32890', '-75.37580'), ('ROYAL OAK', None, '38.34980', '-75.79350'), ('SALISBURY', 23743, '38.37190', '-75.58900'), ('SALISBURY-WICOMICO COUNTY', None, '38.33990', '-75.50940'), ('SHAD POINT', None, '38.33980', '-75.63250'), ('SHARPTOWN', 649, '38.53920', '-75.72030'), ('TRINITY', None, '38.29440', '-75.74960'), ('TYASKIN', None, '38.32680', '-75.87520'), ('WATERVIEW', None, '38.24600', '-75.90230'), ('WETIPQUIN', None, '38.33710', '-75.84750'), ('WHITEHAVEN', None, '38.26920', '-75.79050'), ('WILLARDS', 938, '38.39190', '-75.34990')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'TXZ249': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('GUERRA', 8, '26.88300', '-98.88500'), ('HEBBRONVILLE', 4498, '27.31740', '-98.68600'), ('RANDADO', None, '27.08330', '-98.87000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'OKZ060': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('GRAY', None, '36.13030', '-96.08030'), ('TULSA', 393049, '36.13390', '-95.92250'), ('SAND SPRINGS', 17451, '36.13970', '-96.10860'), ('LEONARD', None, '35.92030', '-95.79920'), ('BIXBY', 13336, '35.94190', '-95.88310'), ('JENKS', 9557, '36.02280', '-95.96810'), ('OWASSO', 18502, '36.26940', '-95.85440'), ('GLENPOOL', 8123, '35.95530', '-96.00860'), ('SPERRY', 981, '36.29720', '-95.99110'), ('SKIATOOK', 5396, '36.36830', '-96.00110'), ('COLLINSVILLE', 4077, '36.36440', '-95.83860'), ('BROKEN ARROW', 74859, '36.05250', '-95.79060')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'INZ049': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOUNTSVILLE', 166, '40.05960', '-85.23890'), ('CADIZ', 161, '39.95050', '-85.48650'), ('DUNREITH', 184, '39.80290', '-85.43690'), ('GREENSBORO', 174, '39.87830', '-85.46300'), ('KENNARD', 455, '39.90430', '-85.51980'), ('KNIGHTSTOWN', 2148, '39.79570', '-85.52830'), ('LEWISVILLE', 395, '39.80590', '-85.35320'), ('MIDDLETOWN', 2488, '40.05950', '-85.54270'), ('MOORELAND', 393, '39.99770', '-85.25170'), ('MOUNT SUMMIT', 313, '40.00320', '-85.38670'), ('NEW CASTLE', 17780, '39.92090', '-85.36490'), ('SHIRLEY', 806, '39.89050', '-85.57980'), ('SPICELAND', 807, '39.83810', '-85.43810'), ('SPRINGPORT', 174, '40.04690', '-85.39290'), ('STRAUGHN', 263, '39.80830', '-85.29040'), ('SULPHUR SPRINGS', 346, '40.00570', '-85.44340')], 'partOfState': '', 'wfo': 'IND'}, -'INZ048': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CUMBERLAND', 5500, '39.78280', '-85.95240'), ('FORTVILLE', 3444, '39.93590', '-85.84700'), ('GREENFIELD', 14600, '39.79280', '-85.77000'), ('MCCORDSVILLE', 1134, '39.90810', '-85.93120'), ('NEW PALESTINE', 1264, '39.72110', '-85.89160'), ('SPRING LAKE', 262, '39.77680', '-85.85440'), ('WILKINSON', 356, '39.88480', '-85.60830')], 'partOfState': '', 'wfo': 'IND'}, -'INZ045': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BAINBRIDGE', 743, '39.76060', '-86.81100'), ('CLOVERDALE', 2243, '39.52130', '-86.79870'), ('FILLMORE', 545, '39.67100', '-86.75360'), ('GREENCASTLE', 9880, '39.64200', '-86.84060'), ('ROACHDALE', 975, '39.84880', '-86.80040'), ('RUSSELLVILLE', 340, '39.85710', '-86.98340')], 'partOfState': '', 'wfo': 'IND'}, -'INZ044': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOOMINGDALE', 319, '39.83150', '-87.24950'), ('CLINTON', 5126, '39.66100', '-87.40450'), ('JUDSON', None, '39.81350', '-87.13520'), ('MARSHALL', 360, '39.84700', '-87.18580'), ('MECCA', 355, '39.72710', '-87.33150'), ('MONTEZUMA', 1179, '39.79100', '-87.36910'), ('ROCKVILLE', 2765, '39.76670', '-87.23090'), ('ROSEDALE', 750, '39.62320', '-87.28210')], 'partOfState': '', 'wfo': 'IND'}, -'INZ047': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BEECH GROVE', 14880, '39.71500', '-86.08740'), ('CASTLETON', None, '39.90480', '-86.05010'), ('CLERMONT', 1477, '39.81740', '-86.32040'), ('CROWS NEST', 96, '39.85220', '-86.17280'), ('HOMECROFT', 751, '39.67010', '-86.13010'), ('INDIANAPOLIS', 156000, '39.77640', '-86.14620'), ('LAWRENCE', 38915, '39.86860', '-85.98720'), ('MERIDIAN HILLS', 1713, '39.88640', '-86.15650'), ('NORTH CROWS NEST', 42, '39.86510', '-86.16200'), ('ROCKY RIPPLE', 712, '39.84890', '-86.17320'), ('SOUTHPORT', 1852, '39.65960', '-86.11660'), ('SPEEDWAY', 12881, '39.79340', '-86.24740'), ('SPRING HILL', 97, '39.83340', '-86.19270'), ('WARREN PARK', 1656, '39.78240', '-86.05240'), ('WILLIAMS CREEK', 413, '39.90040', '-86.14990'), ('WYNNEDALE', 275, '39.83270', '-86.19870')], 'partOfState': '', 'wfo': 'IND'}, -'INZ046': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AMO', 414, '39.68940', '-86.61410'), ('BROWNSBURG', 14520, '39.84160', '-86.39430'), ('CLAYTON', 693, '39.68940', '-86.52360'), ('COATESVILLE', 516, '39.68730', '-86.66920'), ('DANVILLE', 6418, '39.76220', '-86.51980'), ('JAMESTOWN', 886, '39.92740', '-86.62840'), ('LIZTON', 372, '39.88570', '-86.54250'), ('NORTH SALEM', 591, '39.85940', '-86.64450'), ('PITTSBORO', 1588, '39.86730', '-86.46480'), ('PLAINFIELD', 18396, '39.70040', '-86.38790'), ('STILESVILLE', 261, '39.63830', '-86.63230')], 'partOfState': '', 'wfo': 'IND'}, -'INZ041': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALBANY', 2368, '40.30210', '-85.23360'), ('DALEVILLE', 1658, '40.11880', '-85.55630'), ('EATON', 1603, '40.34050', '-85.35490'), ('GASTON', 1010, '40.31350', '-85.50130'), ('MATTHEWS', 595, '40.38730', '-85.49820'), ('MUNCIE', 67430, '40.19750', '-85.39060'), ('SELMA', 880, '40.18840', '-85.27430'), ('YORKTOWN', 4785, '40.17330', '-85.47860')], 'partOfState': '', 'wfo': 'IND'}, -'INZ040': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALEXANDRIA', 6260, '40.25820', '-85.67620'), ('ANDERSON', 59734, '40.09290', '-85.68800'), ('CHESTERFIELD', 2969, '40.11190', '-85.59280'), ('COUNTRY CLUB HEIGHTS', 91, '40.12540', '-85.68760'), ('EDGEWOOD', 1988, '40.10260', '-85.73760'), ('ELWOOD', 9737, '40.27570', '-85.83890'), ('FRANKTON', 1905, '40.22050', '-85.77250'), ('INGALLS', 1168, '39.96030', '-85.79880'), ('LAPEL', 1855, '40.06880', '-85.84750'), ('MARKLEVILLE', 383, '39.97720', '-85.61610'), ('ORESTES', 334, '40.27070', '-85.72520'), ('PENDLETON', 3873, '40.00030', '-85.74220'), ('RIVER FOREST', 28, '40.10950', '-85.72940'), ('SUMMITVILLE', 1090, '40.33730', '-85.64300'), ('WOODLAWN HEIGHTS', 73, '40.11720', '-85.69670')], 'partOfState': '', 'wfo': 'IND'}, -'INZ043': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CAYUGA', 1109, '39.94710', '-87.46480'), ('DANA', 662, '39.80670', '-87.49420'), ('FAIRVIEW PARK', 1496, '39.68180', '-87.41360'), ('NEWPORT', 578, '39.88480', '-87.40630'), ('PERRYSVILLE', 502, '40.05350', '-87.43580'), ('UNIVERSAL', 419, '39.62160', '-87.45300')], 'partOfState': '', 'wfo': 'IND'}, -'INZ042': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('FARMLAND', 1456, '40.18900', '-85.12710'), ('LOSANTVILLE', 280, '40.02310', '-85.18310'), ('LYNN', 1143, '40.04870', '-84.94230'), ('MODOC', 225, '40.04470', '-85.12620'), ('PARKER CITY', 1416, '40.18960', '-85.20340'), ('RIDGEVILLE', 843, '40.28960', '-85.02980'), ('SARATOGA', 288, '40.23690', '-84.91550'), ('UNION CITY', 3622, '40.20160', '-84.81750'), ('WINCHESTER', 5037, '40.17190', '-84.97710')], 'partOfState': '', 'wfo': 'IND'}, -'MIZ026': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BATES', None, '44.76660', '-85.44000'), ('FIFE LAKE', 466, '44.57370', '-85.35330'), ('GRAWN', None, '44.66670', '-85.68330'), ('HANNAH', None, '44.58330', '-85.61670'), ('INTERLOCHEN', None, '44.65000', '-85.75000'), ('KARLIN', None, '44.58330', '-85.76660'), ('KINGSLEY', 1469, '44.58430', '-85.53540'), ('MAPLETON', None, '44.90000', '-85.51660'), ('OLD MISSION', None, '44.97250', '-85.48650'), ('TRAVERSE CITY', 14532, '44.75440', '-85.60290'), ('WILLIAMSBURG', None, '44.76670', '-85.40000')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'IAZ091': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CLARINDA', 5690, '40.73860', '-95.03570'), ('COIN', 252, '40.65590', '-95.23520'), ('COLLEGE SPRINGS', 246, '40.62090', '-95.12170'), ('ESSEX', 884, '40.83300', '-95.30340'), ('HEPBURN', 39, '40.84820', '-95.01650'), ('NORTHBORO', 60, '40.60880', '-95.29310'), ('SHAMBAUGH', 188, '40.65710', '-95.03610'), ('SHENANDOAH', 5546, '40.75940', '-95.36920'), ('YORKTOWN', 82, '40.73650', '-95.15490')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'GAZ067': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GAY', 149, '33.09370', '-84.57400'), ('GREENVILLE', 946, '33.02690', '-84.71540'), ('LONE OAK', 104, '33.17200', '-84.82010'), ('LUTHERSVILLE', 783, '33.20990', '-84.74440'), ('MANCHESTER', 3988, '32.85460', '-84.61650'), ('WARM SPRINGS', 485, '32.88910', '-84.67760'), ('WOODBURY', 1184, '32.98330', '-84.58280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ064': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EVANS', 17727, '33.51380', '-82.14550'), ('GROVETOWN', 6089, '33.44940', '-82.20180'), ('HARLEM', 1814, '33.41400', '-82.31700'), ('MARTINEZ', 27749, '33.51940', '-82.08830')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'IAZ092': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ATHELSTAN', 18, '40.57750', '-94.54220'), ('BEDFORD', 1620, '40.67110', '-94.72410'), ('BLOCKTON', 192, '40.61680', '-94.49000'), ('CLEARFIELD', 371, '40.80210', '-94.48600'), ('CONWAY', 63, '40.74990', '-94.61940'), ('GRAVITY', 218, '40.76010', '-94.74280'), ('LENOX', 1401, '40.88320', '-94.55820'), ('NEW MARKET', 456, '40.73240', '-94.90000'), ('SHARPSBURG', 98, '40.80280', '-94.64100')], 'partOfState': 'SOUTHWEST', 'wfo': 'DMX'}, -'GAZ062': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CAMAK', 165, '33.45130', '-82.64670'), ('NORWOOD', 299, '33.46260', '-82.70650'), ('WARRENTON', 2013, '33.40650', '-82.66550')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'PWZ011': {'fullStateName': 'PALAU', 'state': 'PW', 'cities': [('KOROR', None, '7.34190', '134.47920'), ('MEYUNGS', None, '7.35180', '134.45690')], 'partOfState': '', 'wfo': 'GUM'}, -'GAZ060': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('EATONTON', 6764, '33.32290', '-83.38700')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'IAZ096': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CENTERVILLE', 5924, '40.73080', '-92.87430'), ('CINCINNATI', 428, '40.63180', '-92.92180'), ('EXLINE', 191, '40.64880', '-92.84170'), ('MORAVIA', 713, '40.89210', '-92.81830'), ('MOULTON', 658, '40.68530', '-92.67900'), ('MYSTIC', 588, '40.77910', '-92.94370'), ('NUMA', 109, '40.68540', '-92.98060'), ('PLANO', 58, '40.75530', '-93.04610'), ('RATHBUN', 88, '40.80210', '-92.88790'), ('UDELL', 58, '40.78020', '-92.74250'), ('UNIONVILLE', 127, '40.81900', '-92.69680')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'NCZ005': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BETHANY', None, '36.31670', '-79.85000'), ('DRAPER', None, '36.51670', '-79.68330'), ('EDEN', 15908, '36.50000', '-79.75000'), ('EDEN', 15908, '36.50570', '-79.74220'), ('ELLISBORO', None, '36.33330', '-79.98330'), ('HARRISONS CROSSROADS', None, '36.43330', '-79.68330'), ('INTELLIGENCE', None, '36.36670', '-79.90000'), ('LAWSONVILLE', None, '36.40000', '-79.56670'), ('MADISON', 2262, '36.38620', '-79.97550'), ('MAYFIELD', None, '36.51670', '-79.56670'), ('MAYODAN', 2417, '36.41350', '-79.97290'), ('MAYODAN', 2417, '36.41670', '-79.96670'), ('MONROETON', None, '36.28330', '-79.73330'), ('OREGON HILL', None, '36.45000', '-79.65000'), ('PRICE', None, '36.53330', '-79.91670'), ('REIDSVILLE', 14485, '36.34830', '-79.67240'), ('RUFFIN', None, '36.45000', '-79.55000'), ('STONEVILLE', 1002, '36.46570', '-79.90660'), ('WENTWORTH', 2779, '36.40000', '-79.76670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'IAZ098': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AUSTIN PARK', None, '40.76670', '-91.96670'), ('BENTONSPORT/VERNON', None, '40.73340', '-91.85000'), ('BIRMINGHAM', 423, '40.87840', '-91.94770'), ('BONAPARTE', 458, '40.70090', '-91.80050'), ('CANTRIL', 257, '40.64310', '-92.06880'), ('DOUDS/LEANDO', None, '40.83330', '-92.08330'), ('FARMINGTON', 756, '40.63880', '-91.73880'), ('INDIAN LAKE PARK', None, '40.63330', '-91.75000'), ('KEOSAUQUA', 1066, '40.73460', '-91.96030'), ('KEOSAUQUA AIRPORT', None, '40.74000', '-91.95000'), ('KILBOURN', None, '40.80000', '-91.96670'), ('LACEY KEOSAUQUA STATE PAR', None, '40.71670', '-91.98330'), ('LAKE SUGEMA CAMPGROUNDS', None, '40.68330', '-92.00000'), ('LEBANON', None, '40.73330', '-92.08330'), ('MILTON', 550, '40.67130', '-92.16250'), ('MOUNT STERLING', 40, '40.61900', '-91.93890'), ('MOUNT ZION', None, '40.78330', '-91.93330'), ('SELMA', None, '40.86670', '-92.15000'), ('STOCKPORT', 284, '40.85700', '-91.83320'), ('UTICA', None, '40.81670', '-91.83330')], 'partOfState': 'SOUTHEAST', 'wfo': 'DVN'}, -'NCZ007': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BETHEL HILL', None, '36.50000', '-78.88000'), ('BUSHY FORK', None, '36.31000', '-79.08000'), ('CONCORD', 55977, '36.47000', '-79.06000'), ('MORIAH', None, '36.25000', '-78.83000'), ('ROXBORO', 8696, '36.40160', '-78.98010'), ('SURL', None, '36.32000', '-78.88000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ006': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAYNES', None, '36.26670', '-79.30000'), ('BETHEL', 1681, '36.45000', '-79.45000'), ('BLANCH', None, '36.51670', '-79.28330'), ('CAMP SPRINGS', None, '36.30000', '-79.50000'), ('GATEWOOD', None, '36.53330', '-79.40000'), ('HAMER', None, '36.45000', '-79.28330'), ('HIGHTOWERS', None, '36.33330', '-79.25000'), ('JERICHO', None, '36.28330', '-79.36670'), ('LEASBURG', None, '36.40000', '-79.16670'), ('MILTON', 132, '36.53650', '-79.20840'), ('MILTON', 132, '36.53330', '-79.21670'), ('PELHAM', None, '36.50000', '-79.46670'), ('PROSPECT HILL', None, '36.25000', '-79.20000'), ('PROVIDENCE', None, '36.50000', '-79.36670'), ('QUICK', None, '36.40000', '-79.50000'), ('SEMORA', None, '36.50000', '-79.15000'), ('TOPNOT', None, '36.36670', '-79.26670'), ('YANCEYVILLE', 2091, '36.40760', '-79.34310')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'NCZ001': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASHLAND', None, '36.43330', '-81.65000'), ('BALDWIN', None, '36.35000', '-81.53330'), ('CLIFTON', None, '36.45000', '-81.56670'), ('FLATWOOD', None, '36.55000', '-81.63330'), ('FLEETWOOD', None, '36.30000', '-81.51670'), ('GLENDALE SPRINGS', None, '36.35000', '-81.38330'), ('GRASSY CREEK', None, '36.56670', '-81.40000'), ('IDLEWILD', None, '36.31670', '-81.43330'), ('JEFFERSON', 1422, '36.42020', '-81.46990'), ('LANSING', 151, '36.49980', '-81.50980'), ('LAUREL SPGS', None, '36.41670', '-81.26670'), ('NELLA', None, '36.56670', '-81.55000'), ('OTHELLO', None, '36.36670', '-81.43330'), ('SHATLEY SPRINGS', None, '36.48330', '-81.56670'), ('TROUT', None, '36.40000', '-81.61670'), ('WAGONER', None, '36.40000', '-81.40000'), ('WEST JEFFERSON', 1081, '36.40000', '-81.50000')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'GAZ068': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CONCORD', 336, '33.09150', '-84.43810'), ('MEANSVILLE', 192, '33.04990', '-84.30980'), ('MOLENA', 475, '33.01070', '-84.50100'), ('WILLIAMSON', 297, '33.18210', '-84.36310'), ('ZEBULON', 1181, '33.10040', '-84.34220')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ069': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('THE ROCK', None, '32.96370', '-84.24210'), ('THOMASTON', 9411, '32.89160', '-84.32700'), ('YATESVILLE', 408, '32.91320', '-84.14270')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'NEZ049': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('OSCEOLA', 921, '41.17790', '-97.54840'), ('POLK', 322, '41.07520', '-97.78280'), ('SHELBY', 690, '41.19420', '-97.42640'), ('STROMSBURG', 1232, '41.11630', '-97.59050')], 'partOfState': 'EAST CENTRAL', 'wfo': 'GID'}, -'TXZ245': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('FULTON', 1553, '28.07130', '-97.03580'), ('HOLIDAY BEACH', None, '28.13000', '-96.99000'), ('ROCKPORT', 7385, '28.04070', '-97.05150')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'CRP'}, -'OKZ062': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PRYOR', None, '36.30830', '-95.31670'), ('MAZIE', 88, '36.10750', '-95.36310'), ('MURPHY', 231, '36.14690', '-95.24440'), ('CHOUTEAU', 1931, '36.18580', '-95.34280'), ('LOCUST GROVE', 1366, '36.20000', '-95.16750'), ('ROSE', None, '36.21940', '-95.02940'), ('SALINA', 1422, '36.29280', '-95.15310'), ('SPAVINAW', 563, '36.39110', '-95.04640'), ('STRANG', 100, '36.41060', '-95.13060'), ('ADAIR', 704, '36.43670', '-95.27110'), ('PENSACOLA', 71, '36.45500', '-95.13030'), ('LANGLEY', 669, '36.46390', '-95.04750'), ('DISNEY', 226, '36.48110', '-95.01470')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'GAZ127': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALFORDS', None, '31.46090', '-83.92390'), ('ANDERSON CITY', None, '31.37080', '-83.85470'), ('BRIDGEBORO', None, '31.40090', '-83.97490'), ('CUFFIETOWN', None, '31.73440', '-83.81680'), ('DAVIS MILL', None, '31.75770', '-83.92000'), ('DOLES', None, '31.69840', '-83.88540'), ('EAST DOUGHERTY', None, '31.52270', '-83.98800'), ('GAMMAGE', None, '31.54050', '-83.87650'), ('GORDY', None, '31.47980', '-83.88010'), ('ISABELLA', None, '31.56800', '-83.85390'), ('LIBERTY HILL', None, '31.39970', '-83.93990'), ('LIVINGSTON', None, '31.41480', '-83.94340'), ('MINTON', None, '31.35390', '-83.81890'), ('OAKFIELD', None, '31.77630', '-83.97070'), ('PARKERVILLE', None, '31.43910', '-83.93080'), ('POULAN', 946, '31.51310', '-83.78990'), ('POWELLTOWN', None, '31.40820', '-83.78470'), ('PRITCHETTS', None, '31.36350', '-83.95590'), ('RED ROCK', None, '31.58120', '-83.93640'), ('SCOOTERVILLE', None, '31.38060', '-83.69010'), ('SHINGLER', None, '31.57780', '-83.78450'), ('SUMNER', 309, '31.51220', '-83.74000'), ('SYLVESTER', 5990, '31.52860', '-83.83650'), ('SYLVESTER A/P', None, '31.55620', '-83.89840'), ('TEMPY', None, '31.44730', '-83.81820'), ('TERRELL', None, '31.61660', '-83.74520'), ('WARWICK', 430, '31.82980', '-83.92040')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'KSZ041': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('HORACE', 143, '38.47670', '-101.79040'), ('TRIBUNE', 835, '38.47130', '-101.75400')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GLD'}, -'MEZ003': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('BAKER LAKE', None, '46.26470', '-69.91030'), ('BILLY-JACK DEPOT', None, '46.24500', '-70.03670'), ('COMSTOCK', None, '45.99170', '-70.02890')], 'partOfState': 'WEST CENTRAL', 'wfo': 'CAR'}, -'VAZ093': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BENNS CHURCH', None, '36.93760', '-76.58640'), ('BETHEL CHURCH', None, '36.95420', '-76.71390'), ('BOAZ', None, '36.74670', '-76.76190'), ('CARROLLTON', None, '36.94670', '-76.56080'), ('CARRSVILLE', None, '36.71110', '-76.82990'), ('CENTRAL HILL', None, '36.91060', '-76.74080'), ('COLLOSSE', None, '36.76110', '-76.82190'), ('COMET', None, '36.98470', '-76.74420'), ('INDIKA', None, '36.82030', '-76.68390'), ('ISLE OF WIGHT', None, '36.90770', '-76.70800'), ('LAWSON', None, '37.01110', '-76.63080'), ('LEES MILL', None, '36.68250', '-76.89580'), ('LONGVIEW', None, '36.88890', '-76.60690'), ('MOGARTS BEACH', None, '37.03190', '-76.60110'), ('MOONLIGHT', None, '37.03400', '-76.72250'), ('PONS', None, '37.00030', '-76.79190'), ('RAYNOR', None, '36.94920', '-76.78260'), ('RESCUE', None, '36.99650', '-76.55410'), ('RUSHMERE', 1083, '37.08370', '-76.67320'), ('RUSHMERE', 1083, '37.08300', '-76.67460'), ('SMITHFIELD', 6324, '36.98270', '-76.61780'), ('WALTERS', None, '36.77220', '-76.84970'), ('WHITLEY', None, '36.88530', '-76.75970'), ('WINDSOR', 916, '36.80820', '-76.73950'), ('ZUNI', None, '36.86660', '-76.82000')], 'partOfState': 'SOUTHEAST', 'wfo': 'AKQ'}, -'ORZ009': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('BONNEVILLE', None, '45.63300', '-121.95000'), ('BRIDAL VEIL', None, '45.55000', '-122.18330'), ('CASCADE LOCKS', 1115, '45.67780', '-121.87260'), ('HOOD RIVER', 5831, '45.70980', '-121.52190'), ('ROOSTER ROCK STATE PARK', None, '45.55000', '-122.23000'), ('WYETH', None, '45.69000', '-121.76660')], 'partOfState': 'NORTHWEST', 'wfo': 'PQR'}, -'MEZ001': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('ALLAGASH', None, '47.08330', '-69.04170'), ('CLAYTON LAKE', None, '46.61080', '-69.52280'), ('DAIGLE', None, '47.18940', '-68.46140'), ('DEBOULLIE MOUNTAIN', None, '46.97060', '-68.87640'), ('DICKEY', None, '47.10950', '-69.08720'), ('EAGLE LAKE', None, '47.04000', '-68.59000'), ('FORT KENT', 1978, '47.25860', '-68.59000'), ('FRENCHVILLE', None, '47.28080', '-68.38030'), ('GRAND ISLE', None, '47.30530', '-68.15250'), ('GUERETTE', None, '47.12940', '-68.31780'), ('MADAWASKA', 3326, '47.35530', '-68.32220'), ('NINE-MILE BRIDGE', None, '46.70590', '-69.72360'), ('SAINT AGATHA', None, '47.24310', '-68.31420'), ('SAINT FRANCIS', None, '47.17110', '-68.89030'), ('SAINT PAMPHILE', None, '46.92000', '-69.70940'), ('SOLDIER POND', None, '47.15610', '-68.57640'), ('WALLAGRASS', None, '47.12940', '-68.59780'), ('WINTERVILLE', None, '46.97030', '-68.57170')], 'partOfState': 'NORTHERN', 'wfo': 'CAR'}, -'PAZ048': {'fullStateName': 'PENNSYLVANIA', 'state': 'PA', 'cities': [('NARROWSBURG', 414, '41.60000', '-75.06670'), ('BLOOMING GROVE', None, '41.36670', '-75.16670'), ('BUSHKILL', None, '41.10000', '-75.00000'), ('DINGMANS FERRY', None, '41.21670', '-74.88330'), ('FOREST PARK', None, '41.15000', '-75.01670'), ('GREELEY', None, '41.41670', '-75.00000'), ('GREENTOWN', None, '41.31670', '-75.31670'), ('KIMBLES', None, '41.46670', '-75.13330'), ('LACKAWAXEN', None, '41.48330', '-75.00000'), ('LEDGERDALE', None, '41.36670', '-75.31670'), ('LORDS VALLEY', None, '41.36670', '-75.06670'), ('MILFORD', 1104, '41.32400', '-74.80190'), ('MILLRIFT', None, '41.41670', '-74.75000'), ('PANTHER', None, '41.28330', '-75.30000'), ('PAUPACK', None, '41.40000', '-75.20000'), ('PECKS POND', None, '41.30000', '-75.10000'), ('ROWLAND', None, '41.46670', '-75.05000'), ('SHOHOLA', None, '41.46670', '-74.91670'), ('TAMIMENT', None, '41.15000', '-75.01670'), ('TWIN LAKES', None, '41.40000', '-74.91670'), ('WESTCOLANG PARK', None, '41.51670', '-75.05000')], 'partOfState': 'NORTHEAST', 'wfo': 'BGM'}, -'GAZ123': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ARLINGTON', 1602, '31.43780', '-84.72540'), ('BERMUDA', None, '31.48800', '-84.49200'), ('COMMISSARY HILL', None, '31.44870', '-84.66680'), ('CORDRAYS MILL', None, '31.58760', '-84.56350'), ('DICKEY', None, '31.55650', '-84.66080'), ('EDISON', 1340, '31.56070', '-84.73810'), ('HOLT', None, '31.50240', '-84.45380'), ('LEARY', 666, '31.48490', '-84.51280'), ('MORGAN', 1464, '31.53740', '-84.59940'), ('MOYE', None, '31.61010', '-84.77690'), ('OAK HILL', None, '31.60140', '-84.47730'), ('PARKSVILLE', None, '31.50840', '-84.76360'), ('TURMAN', None, '31.50010', '-84.72890'), ('WILLIAMSBURG', None, '31.46410', '-84.59850')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAZ122': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AYCOCK MILL', None, '31.63650', '-84.61360'), ('BENEVOLENCE', None, '31.88150', '-84.73540'), ('BROOKSVILLE', None, '31.87200', '-84.65680'), ('CARNEGIE', None, '31.64290', '-84.77980'), ('COLEMAN', 149, '31.67260', '-84.89030'), ('COLES', None, '31.75210', '-84.83430'), ('CUTHBERT', 3731, '31.77060', '-84.79360'), ('FOUNTAIN BRIDGE', None, '31.66210', '-84.68530'), ('FOUNTAIN BRIDGE', None, '31.66260', '-84.68540'), ('GOFFS MILL', None, '31.70380', '-84.69630'), ('MARTINS CROSSROADS', None, '31.69560', '-84.63910'), ('PACHITLA', None, '31.76130', '-84.68150'), ('PETERSON HILL', None, '31.78030', '-84.84800'), ('RANDOLPH CO A/P', None, '31.70070', '-84.82520'), ('SHELLMAN', 1166, '31.75630', '-84.61570'), ('SHIVERS MILL', None, '31.67570', '-84.74010'), ('SPRINGVALE', None, '31.82690', '-84.87970'), ('SPRINGVALE STATION', None, '31.79930', '-84.89230'), ('WADES', None, '31.84870', '-84.75730'), ('WHITE HOUSE', None, '31.81270', '-84.78490')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAZ121': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BAGBY SP', None, '31.73890', '-85.07460'), ('BETHEL', None, '31.67810', '-84.95900'), ('BLUFFTON', 118, '31.52000', '-84.86700'), ('COTTON HILL', None, '31.72940', '-84.96660'), ('DAYS CROSSROADS', None, '31.72050', '-85.04380'), ('FORT GAINES', 1110, '31.60370', '-85.05000'), ('GARNERSVILLE', None, '31.75180', '-84.99910'), ('HARRISONS MILL', None, '31.54670', '-84.88590'), ('JEFF', None, '31.55480', '-84.81040'), ('JONES CROSSING', None, '31.64020', '-84.97250'), ('MOORES CROSSROADS', None, '31.74300', '-85.01730'), ('PECAN', None, '31.63920', '-84.99250'), ('RICKS PLACE', None, '31.76170', '-85.09880'), ('RICKS PLACE', None, '31.76130', '-85.09920'), ('STANDLEYS STORE', None, '31.71380', '-85.08820'), ('SUTTONS CORNER', None, '31.59970', '-84.84430'), ('WATSON CROSSROADS', None, '31.72820', '-85.01730'), ('ZETTO', None, '31.59200', '-84.93640')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'GAZ120': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CROSSROADS', None, '31.83330', '-84.99150'), ('GEORGETOWN', 973, '31.88410', '-85.10980'), ('HATCHER', None, '31.81320', '-85.01530'), ('HATCHER', None, '31.80960', '-85.02420'), ('MORRIS', None, '31.79360', '-84.94790'), ('UNION', None, '31.87480', '-84.93760'), ('WIRE BRIDGE', None, '31.84610', '-85.07490')], 'partOfState': 'SOUTHWEST', 'wfo': 'TAE'}, -'TNZ088': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ARLINGTON', 2569, '35.28220', '-89.66420'), ('BARTLETT', 40543, '35.21550', '-89.83530'), ('COLLIERVILLE', 31872, '35.05530', '-89.67850'), ('DOWNTOWN MEMPHIS', None, '35.13330', '-90.05000'), ('EADS', None, '35.20000', '-89.66670'), ('ELLENDALE', None, '35.23330', '-89.83330'), ('FRAYSER', None, '35.21670', '-89.97000'), ('GERMANTOWN', 37348, '35.08890', '-89.79170'), ('LAKELAND', 6862, '35.24020', '-89.72980'), ('MILLINGTON', 10433, '35.33440', '-89.88830'), ('SOUTHEAST MEMPHIS', None, '35.06670', '-89.88330'), ('SOUTHWEST MEMPHIS', None, '35.05000', '-90.06670'), ('WHITEHAVEN', None, '35.01670', '-90.03330')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'CAZ017': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ANTELOPE', None, '38.70830', '-121.32880'), ('ARCO ARENA', None, '38.65160', '-121.52220'), ('ARDEN-ARCADE', 96025, '38.60110', '-121.37670'), ('BROOKS', None, '38.74160', '-122.14690'), ('BRUCEVILLE', None, '38.33580', '-121.41610'), ('CADENASSO', None, '38.71440', '-122.12800'), ('CAL EXPO', None, '38.59110', '-121.43420'), ('CAMERON PARK', 14549, '38.68170', '-120.98720'), ('CAPAY', None, '38.71610', '-122.04690'), ('CAPAY DAM', None, '38.71330', '-122.08330'), ('CARBONDALE', None, '38.40890', '-121.00580'), ('CARMICHAEL', 49742, '38.63390', '-121.31880'), ('CITRUS HEIGHTS', 85071, '38.69170', '-121.28670'), ('CLARKSVILLE', None, '38.65500', '-121.05140'), ('COURTLAND', None, '38.33110', '-121.56750'), ('DAVIS', 60308, '38.55490', '-121.73590'), ('DIXON', 16103, '38.44470', '-121.82370'), ('DUNNIGAN', None, '38.88530', '-121.96860'), ('EL DORADO HILLS', 18016, '38.68590', '-121.08100'), ('EL MACERO', None, '38.54690', '-121.69300'), ('ELK GROVE', 59984, '38.40080', '-121.36750'), ('ELVERTA', None, '38.71380', '-121.46160'), ('ESPARTO', 1858, '38.69220', '-122.01610'), ('FAIR OAKS', 28008, '38.64850', '-121.24720'), ('FLORIN', 27653, '38.49610', '-121.40770'), ('FOLSOM', 51884, '38.67670', '-121.14620'), ('FOREST HOME', None, '38.46500', '-120.96310'), ('FRANKLIN', None, '38.37920', '-121.45330'), ('FREEPORT', None, '38.46190', '-121.50050'), ('GALT', 19472, '38.26860', '-121.30120'), ('GRANITE BAY', 19388, '38.76330', '-121.16270'), ('GUINDA', None, '38.82920', '-122.19280'), ('IONE', 7129, '38.35960', '-120.94140'), ('KARNAK', None, '38.78500', '-121.65440'), ('KIRKVILLE', None, '38.90880', '-121.79170'), ('KNIGHTS LANDING', None, '38.79970', '-121.71720'), ('LAGUNA', 34309, '38.42110', '-121.42270'), ('LATROBE', None, '38.55970', '-120.98270'), ('LINCOLN', 11205, '38.89920', '-121.31650'), ('LOOMIS', 6260, '38.80970', '-121.19430'), ('MADISON', None, '38.67940', '-121.96720'), ('MATHER AFB', None, '38.54840', '-121.27720'), ('NATOMAS', None, '38.65500', '-121.18030'), ('NICOLAUS', None, '38.90330', '-121.57670'), ('NORTH HIGHLANDS', 44187, '38.66770', '-121.38040'), ('ORANGEVALE', 26705, '38.68830', '-121.21730'), ('PAINTERSVILLE', None, '38.32000', '-121.57500'), ('PLEASANT GROVE', None, '38.82380', '-121.48270'), ('RALEY FIELD', None, '38.57930', '-121.51860'), ('RANCHO CORDOVA', 55060, '38.59540', '-121.30020'), ('RANCHO MURIETA', 4193, '38.50190', '-121.09360'), ('RANCHO SECO PARK', None, '38.33890', '-121.09310'), ('RIO LINDA', 10466, '38.68760', '-121.45820'), ('ROBBINS', None, '38.87030', '-121.70530'), ('ROCKLIN', 36330, '38.80240', '-121.24030'), ('ROSEMONT', 22904, '38.54720', '-121.35080'), ('ROSEVILLE', 79921, '38.75980', '-121.29370'), ('RUMSEY', None, '38.88830', '-122.23640'), ('SACRAMENTO', 407018, '38.56690', '-121.46740'), ('SACRAMENTO ZOO', None, '38.53920', '-121.50250'), ('SHELDON', None, '38.43080', '-121.29920'), ('SHERIDAN', None, '38.97970', '-121.37440'), ('SLOUGHHOUSE', None, '38.49580', '-121.19280'), ('TANCRED', None, '38.76530', '-122.16250'), ('THORNTON', None, '38.33610', '-121.42360'), ('VACAVILLE', 88625, '38.36230', '-121.96610'), ('VERONA', None, '38.78610', '-121.61750'), ('WEST POINT', 746, '38.39920', '-121.52640'), ('WEST SACRAMENTO', 31615, '38.55670', '-121.54780'), ('WILTON', 4551, '38.41900', '-121.20760'), ('WINTERS', 6125, '38.53210', '-121.98020'), ('WOODLAND', 49151, '38.67690', '-121.76660'), ('YOLO', None, '38.73190', '-121.80660'), ('YOLO COUNTY AIRPORT', None, '38.57890', '-121.85640'), ('YOLO FLIERS CLUB', None, '38.68000', '-121.86890'), ('ZAMORA', None, '38.79670', '-121.88080')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'GAZ085': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ADRIAN', 579, '32.52970', '-82.59150'), ('KITE', 241, '32.69130', '-82.51550'), ('WRIGHTSVILLE', 2223, '32.72500', '-82.72040')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'OKZ055': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('VERA', 188, '36.44920', '-95.88060'), ('RAMONA', 564, '36.53030', '-95.92330'), ('OCHELATA', 494, '36.60000', '-95.97940'), ('DEWEY', 3179, '36.79580', '-95.93530'), ('COPAN', 796, '36.89750', '-95.92580'), ('BARTLESVILLE', 34748, '36.74720', '-95.98060'), ('VERA', 188, '36.44920', '-95.88060'), ('RAMONA', 564, '36.53030', '-95.92330'), ('OCHELATA', 494, '36.60000', '-95.97940'), ('DEWEY', 3179, '36.79580', '-95.93530'), ('COPAN', 796, '36.89750', '-95.92580')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'MEZ008': {'fullStateName': 'MAINE', 'state': 'ME', 'cities': [('AVON', None, '44.80610', '-70.27170'), ('CARRABASSETT VALLEY', None, '45.07780', '-70.21250'), ('COBURN GORE', None, '45.37920', '-70.80390'), ('DALLAS', None, '44.99690', '-70.55640'), ('DAVIS', None, '45.08720', '-70.78610'), ('EUSTIS', None, '45.21720', '-70.47890'), ('KINGFIELD', None, '44.95920', '-70.15440'), ('MADRID', None, '44.86440', '-70.46250'), ('OQUOSSOC', None, '44.96640', '-70.77420'), ('PHILLIPS', None, '44.82310', '-70.34000'), ('RANGELEY', None, '44.96640', '-70.64330'), ('REDINGTON', None, '44.98440', '-70.43580'), ('SALEM', None, '44.90060', '-70.27860'), ('STRATTON', None, '45.14110', '-70.44110'), ('STRONG', None, '44.80750', '-70.22140'), ('TIM POND', None, '45.17030', '-70.62310'), ('WELD', None, '44.69860', '-70.42190')], 'partOfState': '', 'wfo': 'GYX'}, -'OKZ054': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PAWHUSKA', 3629, '36.66780', '-96.33690'), ('SHIDLER', 520, '36.78190', '-96.66080'), ('OSAGE', 188, '36.29280', '-96.41560'), ('HOMINY', 2584, '36.41420', '-96.39500'), ('AVANT', 372, '36.48940', '-96.06190'), ('WYNONA', 531, '36.54610', '-96.32690'), ('WOLCO', None, '36.53830', '-96.07110'), ('FAIRFAX', 1555, '36.57360', '-96.70390'), ('BARNSDALL', 1325, '36.56190', '-96.16140'), ('PERSHING', None, '36.59330', '-96.27500'), ('TALLANT', None, '36.59750', '-96.19030'), ('NELAGONEY', None, '36.62640', '-96.24190'), ('BURBANK', 155, '36.69500', '-96.73170'), ('OKESA', None, '36.71280', '-96.13440'), ('APPERSON', None, '36.75110', '-96.76580'), ('WEBB CITY', 95, '36.80690', '-96.70830'), ('PEARSONIA', None, '36.80170', '-96.45060'), ('BIGHEART', None, '36.85170', '-96.22560'), ('FORAKER', 23, '36.87220', '-96.56530'), ('HULAH', None, '36.92860', '-96.03500'), ('GRAINOLA', 31, '36.93720', '-96.65030')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'NYZ084': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARGYLE', 289, '43.23700', '-73.49040'), ('CAMBRIDGE', 1925, '43.02660', '-73.38090'), ('FORT EDWARD', 3141, '43.26890', '-73.58300'), ('GREENWICH', 1902, '43.08660', '-73.49670'), ('HUDSON FALLS', 6927, '43.30470', '-73.58200'), ('MIDDLE FALLS', None, '43.10820', '-73.52770'), ('NORTH EASTON', None, '43.01030', '-73.55000'), ('SALEM', 964, '43.17410', '-73.32830')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ALY'}, -'GAZ080': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BUTLER', 1907, '32.55710', '-84.23750'), ('REYNOLDS', 1036, '32.55900', '-84.09700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'NYZ082': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CAROGA LAKE', None, '43.13750', '-74.48400'), ('CRANBERRY CREEK', None, '43.15150', '-74.22230'), ('MAYFIELD', 800, '43.10200', '-74.26650'), ('NORTHVILLE', 801, '43.22200', '-74.17100'), ('STRATFORD', None, '43.18180', '-74.68550')], 'partOfState': '', 'wfo': 'ALY'}, -'COZ042': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BRIGGSDALE', None, '40.63000', '-104.32000'), ('BUCKINGHAM', None, '40.62000', '-103.97000'), ('CORNISH', None, '40.52000', '-104.42000'), ('GALETON', None, '40.52000', '-104.58000'), ('GROVER', 153, '40.86920', '-104.22560'), ('KEOTA', None, '40.70410', '-104.07370'), ('NEW RAYMER', None, '40.62500', '-103.78000'), ('PAWNEE BUTTES', None, '40.81700', '-103.98300'), ('RAYMER', 91, '40.60730', '-103.84390'), ('STONEHAM', None, '40.63500', '-103.65000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ043': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BARNESVILLE', None, '40.48000', '-104.48000'), ('BRACEWELL', None, '40.42000', '-104.78000'), ('DACONO', 3015, '40.07580', '-104.94290'), ('EATON', 2690, '40.52490', '-104.70980'), ('ERIE', 6291, '40.02890', '-105.04600'), ('EVANS', 9514, '40.37790', '-104.69680'), ('FIRESTONE', 1908, '40.12090', '-104.93400'), ('FORT LUPTON', 6787, '40.08520', '-104.80510'), ('FORT ST VRAIN', None, '40.27500', '-104.87500'), ('FREDERICK', 2467, '40.10500', '-104.94240'), ('GARDEN CITY', 357, '40.39390', '-104.68870'), ('GILCREST', 1162, '40.28270', '-104.78190'), ('GILL', None, '40.45000', '-104.53000'), ('GREELEY', 76930, '40.42130', '-104.74390'), ('HARDIN', None, '40.32000', '-104.38000'), ('HUDSON', 1565, '40.07100', '-104.64290'), ('IONE', None, '40.12000', '-104.80000'), ('JOHNSTOWN', 3827, '40.33540', '-104.91150'), ('KEENESBURG', 855, '40.10890', '-104.51860'), ('KERSEY', 1389, '40.38610', '-104.55980'), ('LA SALLE', 1849, '40.34780', '-104.70450'), ('LOCHBUIE', 2049, '40.00770', '-104.72010'), ('LOWER LATHAM RESERVOIR', None, '40.35000', '-104.64200'), ('LUCERNE', None, '40.48000', '-104.68000'), ('MASTERS', None, '40.30000', '-104.25000'), ('MEAD', 2017, '40.23430', '-104.98790'), ('MILLIKEN', 2888, '40.31660', '-104.85270'), ('MILTON RESERVOIR', None, '40.24200', '-104.63300'), ('NEW WINDSOR RESERVOIR', None, '40.53300', '-104.88800'), ('PECKHAM', None, '40.30000', '-104.75000'), ('PLATTEVILLE', 2370, '40.21690', '-104.82200'), ('PROSPECT VALLEY', None, '40.07400', '-104.41300'), ('RIVERSIDE RESERVOIR', None, '40.32500', '-104.25000'), ('ROGGEN', None, '40.17000', '-104.37000'), ('SEELEY LAKE', None, '40.44000', '-104.71000'), ('SEVERANCE', 597, '40.52240', '-104.84960'), ('WATTENBURG', None, '40.02000', '-104.80000'), ('WELTY', None, '40.32000', '-105.02000'), ('WINDSOR', 9896, '40.48520', '-104.90650')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ040': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ACRES GREEN', 3205, '39.55800', '-104.89600'), ('ADAMS CITY', None, '39.81500', '-104.90500'), ('ARAPAHOE PARK', None, '39.63600', '-104.68800'), ('AURORA', 276393, '39.69900', '-104.81300'), ('BARR LAKE', None, '39.95000', '-104.78000'), ('BRIGHTON', 20905, '39.95800', '-104.79480'), ('BROADWAY ESTATES', None, '39.58000', '-104.95000'), ('BUCKLEY ANGB', None, '39.70000', '-104.75000'), ('CASTLEWOOD', 25567, '39.58470', '-104.90050'), ('CHERRY CREEK RESERVOIR', None, '39.63200', '-104.87000'), ('CHERRY HILLS VILLAGE', 5958, '39.63750', '-104.94690'), ('CHERRY KNOLLS', None, '39.60000', '-104.97000'), ('COLUMBINE VALLEY', 1132, '39.59810', '-105.03360'), ('COMMERCE CITY', 20991, '39.81400', '-104.92400'), ('CORONADO', None, '39.87000', '-105.05000'), ('DENVER', 554636, '39.76800', '-104.87270'), ('DENVER INTERNATIONAL AIRP', None, '39.86500', '-104.67300'), ('DERBY', 6423, '39.83940', '-104.91810'), ('ENGLEWOOD', 31727, '39.64740', '-104.99380'), ('FEDERAL HEIGHTS', 12065, '39.86510', '-105.01590'), ('GATEWAY', None, '39.54930', '-104.90550'), ('GLENDALE', 4547, '39.70410', '-104.93460'), ('GRANDVIEW ESTATES', None, '39.54600', '-104.81900'), ('GREENWOOD VILLAGE', 11035, '39.61550', '-104.91500'), ('HENDERSON', None, '39.92000', '-104.87000'), ('HIGHLANDS RANCH', 70931, '39.55400', '-104.96890'), ('KASSLER', None, '39.48000', '-105.08000'), ('LITTLETON', 40340, '39.59460', '-105.01440'), ('LOUVIERS', 237, '39.47000', '-105.00000'), ('MANILA VILLAGE', None, '39.75700', '-104.51700'), ('NORTHGLENN', 31575, '39.90570', '-104.97790'), ('OEA BUILDING', None, '39.63800', '-104.58300'), ('PARKER', 23558, '39.50960', '-104.76380'), ('SEDALIA', 211, '39.43000', '-104.97000'), ('SHAW HGTS', None, '39.87000', '-105.03000'), ('SHERIDAN', 5600, '39.64890', '-105.01710'), ('SHERRELWOOD', 17657, '39.83780', '-105.00090'), ('SMOKY HILL', None, '39.60700', '-104.77000'), ('SOUTHGLENN', 43520, '39.58740', '-104.95220'), ('SOUTHWOOD', None, '39.62000', '-104.98000'), ('THORNTON', 82384, '39.89200', '-104.95520'), ('WATKINS', None, '39.75000', '-104.60000'), ('WELBY', 12973, '39.83830', '-104.96470'), ('WESTERN HILLS', None, '39.83000', '-105.00000'), ('WESTMINSTER', 100940, '39.88150', '-105.05090'), ('WESTMINSTER EAST', None, '39.82270', '-105.00370')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ041': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BEVERLY HILLS', None, '39.47500', '-104.87500'), ('CASTLE ROCK', 20224, '39.37890', '-104.85130'), ('CASTLEWOOD CANYON', None, '39.34500', '-104.76500'), ('ELBERT', None, '39.22000', '-104.53000'), ('ELIZABETH', 1434, '39.36010', '-104.59950'), ('FONDIS', None, '39.22000', '-104.45000'), ('FRANKTOWN', 99, '39.38000', '-104.75000'), ('GREENLAND', None, '39.15000', '-104.83000'), ('KIOWA', 581, '39.34530', '-104.46100'), ('LARKSPUR', 234, '39.18160', '-104.89600'), ('PONDEROSA PARK', 3112, '39.39730', '-104.63550'), ('SILVER HEIGHTS', None, '39.41800', '-104.86700'), ('SIMLA', 663, '39.14080', '-104.08090'), ('SURREY RIDGE', None, '39.50000', '-104.87800'), ('THE PINERY', 7253, '39.45520', '-104.73390')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ046': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AGATE', None, '39.47000', '-103.95000'), ('ARRIBA', 244, '39.28380', '-103.27350'), ('CEDAR POINT', None, '39.35000', '-103.81700'), ('GENOA', 211, '39.27840', '-103.49940'), ('HUGO', 885, '39.13440', '-103.46710'), ('LIMON', 2071, '39.26610', '-103.68950'), ('MATHESON', None, '39.17000', '-103.98000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'BOU'}, -'GAZ129': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BROOKFIELD', None, '31.41780', '-83.39110'), ('CHULA', None, '31.54940', '-83.54750'), ('ELDORADO', None, '31.35800', '-83.48610'), ('EXCELSIOR', None, '31.40310', '-83.60830'), ('HARDING', None, '31.52630', '-83.42930'), ('HILLSDALE', None, '31.46630', '-83.59920'), ('OMEGA', 1340, '31.33830', '-83.59560'), ('OMEGA', 1340, '31.33830', '-83.59560'), ('PHILLIPSBURG', 887, '31.43910', '-83.52050'), ('SUNSWEET', None, '31.56820', '-83.56590'), ('TIFT A/P', None, '31.42770', '-83.49080'), ('TIFTON', 15060, '31.46540', '-83.51060'), ('TY TY', 716, '31.47200', '-83.65040'), ('UNIONVILLE', 2074, '31.43630', '-83.50920'), ('VANCEVILLE', None, '31.43160', '-83.44090')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'COZ044': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ADENA', None, '40.01700', '-103.88600'), ('ADENA SCHOOL', None, '40.11700', '-103.79200'), ('ANTELOPE SPRINGS', None, '40.43800', '-103.71400'), ('BRUSH', 5117, '40.25680', '-103.63230'), ('FORT MORGAN', 11034, '40.26520', '-103.79460'), ('FORT MORGAN AIRPORT', None, '40.33300', '-103.80000'), ('GARY', None, '40.07400', '-103.58300'), ('GOODRICH', None, '40.35000', '-104.07000'), ('HILLROSE', 254, '40.32450', '-103.52220'), ('HOYT', None, '40.02000', '-104.07000'), ('HOYT BEET DUMP', None, '40.07400', '-104.05400'), ('JACKSON RESERVOIR', None, '40.38300', '-104.06700'), ('LOG LANE VILLAGE', 1006, '40.27000', '-103.82840'), ('ORCHARD', None, '40.33000', '-104.12000'), ('SNYDER', None, '40.32000', '-103.58000'), ('TWELVE-MILE CORNER', None, '40.07300', '-103.79200'), ('UNION', None, '40.35000', '-103.50000'), ('WELDONA', None, '40.35000', '-103.97000'), ('WIGGINS', 838, '40.23030', '-104.07330')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ045': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BENNETT', 2021, '39.75510', '-104.42340'), ('BYERS', 1233, '39.71030', '-104.22470'), ('COUNTRY GARDENS', None, '39.69200', '-104.31900'), ('DEER TRAIL', 598, '39.61690', '-104.04180'), ('JOLLY RANCH', None, '39.64100', '-103.77500'), ('LEADER', None, '39.90000', '-104.05800'), ('SHAMROCK', None, '39.88800', '-103.81300'), ('STRASBURG', 1402, '39.73500', '-104.30000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ048': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('ATWOOD', 195, '40.55000', '-103.27000'), ('CROOK', 128, '40.85830', '-102.80110'), ('DAILEY', None, '40.65000', '-102.72000'), ('FLEMING', 426, '40.68120', '-102.83980'), ('ILIFF', 213, '40.75790', '-103.06540'), ('LOGAN CORNERS', None, '40.62500', '-103.35400'), ('MERINO', 246, '40.48430', '-103.35350'), ('NORTH STERLING RESERVOIR', None, '40.78300', '-103.26700'), ('PADRONI', 97, '40.77000', '-103.17000'), ('PAWNEE PASS', None, '40.62500', '-103.47800'), ('PEETZ', 227, '40.96140', '-103.11420'), ('PROCTOR', None, '40.80000', '-102.93000'), ('REIRADON HILL', None, '40.58300', '-103.03800'), ('ST PETERSBURG', None, '40.55700', '-102.81900'), ('STERLING', 11360, '40.65090', '-103.21470'), ('TWIN BUTTES', None, '40.91100', '-102.76900'), ('WESTPLAINS', None, '40.86400', '-103.49900'), ('WILLARD', None, '40.55000', '-103.48000')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'GAZ128': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AMBOY', None, '31.79220', '-83.58840'), ('ASHBURN', 4419, '31.70890', '-83.65270'), ('BETHEL', None, '31.65720', '-83.56690'), ('COVERDALE', None, '31.62790', '-83.71930'), ('DAKOTA', None, '31.77560', '-83.69330'), ('HARMONY', None, '31.66140', '-83.74090'), ('INAHA', None, '31.61880', '-83.60610'), ('OAK GROVE', None, '31.72590', '-83.73770'), ('REBECCA', 246, '31.80710', '-83.48700'), ('SIBLEY', None, '31.79670', '-83.71030'), ('SYCAMORE', 496, '31.67020', '-83.63510'), ('TURNER CO A/P', None, '31.68520', '-83.63430'), ('WORTH', None, '31.74960', '-83.67600')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'WAZ028': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BENTON CITY', 2624, '46.26800', '-119.48710'), ('BURBANK', 3303, '46.19160', '-118.98160'), ('CONNELL', 2956, '46.66000', '-118.86100'), ('FINLEY', 5770, '46.16900', '-119.04220'), ('HIGHLAND', 3388, '46.13160', '-119.11300'), ('KAHLOTUS', 214, '46.64360', '-118.55240'), ('KENNEWICK', 54693, '46.20310', '-119.17040'), ('MESA', 425, '46.57320', '-118.99960'), ('PASCO', 32066, '46.25210', '-119.12780'), ('PRESCOTT', 314, '46.29910', '-118.31150'), ('PROSSER', 4838, '46.20620', '-119.76630'), ('RICHLAND', 38708, '46.29400', '-119.29070'), ('WEST PASCO', 4629, '46.24560', '-119.18170'), ('WEST RICHLAND', 8385, '46.32450', '-119.39730')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PDT'}, -'TNZ087': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CITICO', None, '35.39920', '-84.11810'), ('COKER CREEK', None, '35.26310', '-84.28750')], 'partOfState': '', 'wfo': 'MRX'}, -'WAZ029': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('COLLEGE PLACE', 7818, '46.04420', '-118.38360'), ('DAYTON', 2655, '46.31770', '-117.97680'), ('GARRETT', 1022, '46.06140', '-118.38330'), ('STARBUCK', 130, '46.51910', '-118.12500'), ('WAITSBURG', 1212, '46.26910', '-118.15040'), ('WALLA WALLA', 29686, '46.06690', '-118.34120'), ('WALLA WALLA EAST', 2479, '46.05450', '-118.30260')], 'partOfState': 'SOUTHEAST', 'wfo': 'PDT'}, -'MTZ029': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('MELSTONE', 136, '46.59910', '-107.86780'), ('ROUNDUP', 1931, '46.44850', '-108.53880')], 'partOfState': 'CENTRAL', 'wfo': 'BYZ'}, -'MTZ028': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('HARLOWTON', 1062, '46.43720', '-109.83400'), ('JUDITH GAP', 164, '46.67890', '-109.75400')], 'partOfState': 'CENTRAL', 'wfo': 'BYZ'}, -'MTZ039': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BRIDGER', 745, '45.29340', '-108.91480'), ('JOLIET', 575, '45.48460', '-108.97060')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ063': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('JUDITH GAP', 164, '46.67890', '-109.75400')], 'partOfState': 'CENTRAL', 'wfo': 'BYZ'}, -'MTZ064': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('EMIGRANT', 1062, '46.43720', '-109.83400')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ065': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('LIVINGSTON', 6851, '45.66300', '-110.56370')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ066': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('FISHTAIL', 1062, '46.43720', '-109.83400'),('MCLEOD', 1062, '46.437', '-109.834')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ067': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('COOKE CITY', 1062, '46.43720', '-109.83400')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ068': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BYZ'}, -'MTZ025': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BLOOMFIELD', None, '47.41270', '-104.91660'), ('FOREST PARK', None, '47.10470', '-104.75770'), ('GLENDIVE', 4729, '47.10520', '-104.71190'), ('HODGES', None, '46.98360', '-104.38720'), ('HOYT', None, '46.92970', '-104.85410'), ('INTAKE', None, '47.29380', '-104.52130'), ('LINDSAY', None, '47.21880', '-105.15330'), ('MARSH', None, '46.88970', '-104.93250'), ('RICHEY', 189, '47.64380', '-105.07440'), ('STIPEK', None, '47.21220', '-104.66440')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ024': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BURNS', None, '47.37800', '-104.40470'), ('CRANE', None, '47.57580', '-104.26190'), ('ENID', None, '47.69550', '-104.77910'), ('LAMBERT', None, '47.68360', '-104.62020'), ('MIDWAY', None, '47.51500', '-104.32000'), ('NOHLY', None, '47.99550', '-104.09130'), ('SAVAGE', None, '47.45360', '-104.34220'), ('SIDNEY', 4774, '47.71660', '-104.15580'), ('WOOLEY', None, '47.76500', '-104.10520')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ027': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CARLYLE', None, '46.65500', '-104.07550'), ('SAINT PHILLIP', None, '46.83160', '-104.14500'), ('WIBAUX', 567, '46.98500', '-104.18770'), ('YATES', None, '46.95110', '-104.13000')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ026': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CALYPSO', None, '46.77300', '-105.42220'), ('CROW ROCK', None, '46.91130', '-106.07020'), ('FALLON', 138, '46.83550', '-105.11880'), ('MCCLOUD', None, '46.90080', '-105.59970'), ('MILDRED', None, '46.67580', '-104.95940'), ('TERRY', 611, '46.79300', '-105.31160'), ('ZERO', None, '46.66910', '-105.48800')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ021': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CAT CREEK', None, '47.06520', '-108.00550'), ('CROOKED CREEK CAMPGROUND', None, '47.42300', '-107.94020'), ('FLATWILLOW', None, '46.83190', '-108.39940'), ('PETROLIA LAKE', None, '46.94160', '-108.25130'), ('TIEGEN', None, '47.03660', '-108.59610'), ('WINNETT', 185, '47.00270', '-108.35130')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ020': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BREDETTE', None, '48.50550', '-105.29910'), ('POPLAR', 911, '48.11300', '-105.19770'), ('SPROLE', None, '48.10720', '-105.06270'), ('VOLT', None, '48.38830', '-105.71830'), ('WOLF POINT', 2663, '48.09050', '-105.64000')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ023': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BROCKWAY', None, '47.29770', '-105.76190'), ('CIRCLE', 644, '47.41660', '-105.59800'), ('FLOWING WELLS REST AREA', None, '47.32550', '-106.17050'), ('NELSON CREEK RECREATION A', None, '47.55910', '-106.22510'), ('VIDA', None, '47.83190', '-105.49250'), ('WATKINS', None, '47.24270', '-105.87270'), ('WELDON', None, '47.61250', '-105.89160')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ022': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BRUSETT', None, '47.42520', '-107.26610'), ('COHAGEN', None, '47.05440', '-106.61690'), ('DEVILS CREEK RECREATION A', None, '47.61830', '-107.65000'), ('EDWARDS', None, '47.14020', '-107.33300'), ('HAXBY', None, '47.77000', '-106.42660'), ('HELL CREEK RECREATION ARE', None, '47.61580', '-106.88720'), ('HILLSIDE', None, '46.91110', '-106.39940'), ('JORDAN', 364, '47.32080', '-106.90940'), ('MOSBY', None, '46.99220', '-107.88300'), ('SAND SPRINGS', None, '47.10080', '-107.48500'), ('STEVE FORKS', None, '47.27080', '-107.33330'), ('VAN NORMAN', None, '47.35330', '-106.38660')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'VAZ018': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ABBOTT', None, '37.41670', '-80.15000'), ('CRAIG SPRINGS', None, '37.48330', '-80.28330'), ('HUFFMAN', None, '37.35000', '-80.41670'), ('MAGGIE', None, '37.43330', '-80.40000'), ('NEW CASTLE', 179, '37.50000', '-80.11670'), ('PAINT BANK', None, '37.56670', '-80.28330'), ('SIMMONSVILLE', None, '37.38330', '-80.36670'), ('SINKING CREEK', None, '37.41670', '-80.28330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAZ019': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALLEGHANY', None, '37.75000', '-80.25000'), ('CALLAGHAN', None, '37.80000', '-80.08330'), ('CLIFTON FORGE CITY', None, '37.82350', '-79.82550'), ('COVINGTON CITY', None, '37.78330', '-79.98330'), ('EARLEHURST', None, '37.66670', '-80.25000'), ('HOLLINS', 14309, '37.83330', '-79.91670'), ('IRON GATE', 404, '37.79880', '-79.79060'), ('IRON GATE', 404, '37.80000', '-79.78330'), ('JORDAN MINES', None, '37.68330', '-80.11670'), ('LONGDALE FURNACE', None, '37.83330', '-79.71670'), ('NATURAL WELL', None, '37.91670', '-79.96670'), ('POTTS CREEK', None, '37.61670', '-80.20000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RNK'}, -'ARZ058': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('CRUMROD', None, '34.15000', '-90.98330'), ('ELAINE', 865, '34.30830', '-90.85410'), ('HELENA', 6323, '34.52630', '-90.60470'), ('LAKE VIEW', 531, '34.42310', '-90.81030'), ('LEXA', 331, '34.59820', '-90.75260'), ('MARVELL', 1395, '34.55600', '-90.91450'), ('WATKINS CORNER', None, '34.46670', '-90.95000'), ('WEST HELENA', 8689, '34.54600', '-90.64650')], 'partOfState': '', 'wfo': 'MEG'}, -'ARZ059': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ASHDOWN', 4781, '33.67440', '-94.12600'), ('FOREMAN', 1125, '33.71730', '-94.39750'), ('OGDEN', 214, '33.58480', '-94.04450'), ('WILTON', 439, '33.73880', '-94.14750'), ('WINTHROP', 186, '33.83120', '-94.35340')], 'partOfState': 'SOUTHWEST', 'wfo': 'SHV'}, -'OKZ019': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CEDAR VALLEY', 58, '35.86400', '-97.56160'), ('CIMARRON CITY', 110, '35.88940', '-97.60130'), ('COYLE', 337, '35.95400', '-97.23740'), ('CRESCENT', 1281, '35.94990', '-97.58960'), ('GUTHRIE', 9925, '35.84020', '-97.42810'), ('LANGSTON', 1670, '35.94600', '-97.26360'), ('LOVELL', None, '36.05000', '-97.63000'), ('MARSHALL', 258, '36.15540', '-97.62480'), ('MERIDIAN', 1485, '35.84190', '-97.24670'), ('MULHALL', 239, '36.06430', '-97.40480'), ('NAVINA', None, '35.80000', '-97.57000'), ('ORLANDO', 201, '36.14830', '-97.37580'), ('SEWARD', None, '35.80000', '-97.48000')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'OKZ018': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CASHION', 635, '35.80330', '-97.67630'), ('DOVER', 367, '35.98160', '-97.91070'), ('HENNESSEY', 2058, '36.10590', '-97.89800'), ('KINGFISHER', 4380, '35.84460', '-97.93890'), ('LACEY', None, '36.12000', '-98.08000'), ('LOYAL', 81, '35.97280', '-98.11730'), ('OMEGA', None, '35.86900', '-98.19600')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'ARZ052': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ANTOINE', 156, '34.03400', '-93.42110'), ('DAISY', 118, '34.23310', '-93.74190'), ('DELIGHT', 311, '34.02940', '-93.50580'), ('GLENWOOD', 1751, '34.33110', '-93.54970'), ('MURFREESBORO', 1764, '34.06300', '-93.69110')], 'partOfState': 'SOUTHWEST', 'wfo': 'LZK'}, -'OKZ014': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ANGORA', None, '35.83000', '-99.45000'), ('CHEYENNE', 778, '35.61140', '-99.67700'), ('CRAWFORD', None, '35.83000', '-99.80000'), ('DEMPSEY', None, '35.52000', '-99.82000'), ('DURHAM', None, '35.83000', '-99.92000'), ('HAMMON', 469, '35.63230', '-99.38340'), ('HERRING', None, '35.60000', '-99.52000'), ('RANKIN', None, '35.63000', '-99.93000'), ('REYDON', 177, '35.65010', '-99.92370'), ('ROLL', None, '35.78000', '-99.72000'), ('STRONG CITY', 42, '35.67010', '-99.60010')], 'partOfState': '', 'wfo': 'OUN'}, -'VAZ012': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('COLEMAN STORE', None, '36.88330', '-80.98330'), ('CRIPPLE CREEK', None, '36.81670', '-81.10000'), ('CROCKETT', None, '36.88330', '-81.18330'), ('FAVONIA', None, '36.96670', '-81.18330'), ('GRAHAMS FORGE', None, '36.93330', '-80.86670'), ('GUNTON PARK', None, '37.00000', '-80.88330'), ('IVANHOE', None, '36.83330', '-80.95000'), ('MAX MEADOWS', 512, '36.96670', '-80.93330'), ('PATTERSON', None, '36.88330', '-80.78330'), ('RURAL RETREAT', 1350, '36.90000', '-81.26670'), ('SPEEDWELL', None, '36.81670', '-81.16670'), ('WYTHEVILLE', 7804, '36.95000', '-81.08330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'OKZ016': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ARAPAHO', 748, '35.57810', '-98.95960'), ('BUTLER', 345, '35.63610', '-99.18540'), ('CLINTON', 8833, '35.50640', '-98.97300'), ('CUSTER CITY', 393, '35.66430', '-98.88680'), ('FOSS RESERVOIR', None, '35.57000', '-99.23000'), ('MC CLURE', None, '35.65000', '-99.32000'), ('MOOREWOOD', None, '35.73000', '-99.35000'), ('STAFFORD', None, '35.53000', '-99.12000'), ('THOMAS', 1238, '35.74730', '-98.74910'), ('WEATHERFORD', 9859, '35.53710', '-98.68990')], 'partOfState': '', 'wfo': 'OUN'}, -'OKZ011': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('AMES', 199, '36.24780', '-98.18640'), ('BADO', None, '36.22000', '-98.73000'), ('CEDAR SPRINGS', None, '36.22000', '-98.58000'), ('CHESTER', None, '36.22000', '-98.92000'), ('CLEO SPRINGS', 326, '36.40690', '-98.43950'), ('DANE', None, '36.22000', '-98.62000'), ('FAIRVIEW', 2733, '36.26940', '-98.47630'), ('ISABELLA', None, '36.23000', '-98.33000'), ('MENO', 195, '36.38780', '-98.17730'), ('ORIENTA', None, '36.35000', '-98.48000'), ('ORION', None, '36.22000', '-98.78000'), ('RINGWOOD', 424, '36.38220', '-98.24080')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'OKZ010': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BELVA', None, '36.50000', '-98.98000'), ('CEDARDALE', None, '36.32000', '-99.00000'), ('CURTIS', None, '36.45000', '-99.13000'), ('FORT SUPPLY', 328, '36.57220', '-99.57350'), ('MOORELAND', 1226, '36.43850', '-99.20500'), ('MUTUAL', 76, '36.22980', '-99.16730'), ('QUINLAN', None, '36.45480', '-99.04550'), ('SHARON', 122, '36.27540', '-99.33810'), ('TANGIER', None, '36.42000', '-99.53000'), ('WOODWARD', 11853, '36.42490', '-99.40450')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'OKZ013': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BILLINGS', 436, '36.53140', '-97.44320'), ('LELA', None, '36.32000', '-96.92000'), ('LUCIEN', None, '36.28000', '-97.45000'), ('MARLAND', 280, '36.56130', '-97.15270'), ('MORRISON', 636, '36.29460', '-97.01160'), ('PERRY', 5230, '36.28770', '-97.30420'), ('RED ROCK', 293, '36.45990', '-97.17890'), ('SUMNER', None, '36.32000', '-97.12000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'OKZ012': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BISON', None, '36.20000', '-97.88000'), ('BRECKENRIDGE', 239, '36.46070', '-97.72370'), ('CARRIER', 77, '36.47680', '-98.01440'), ('COVINGTON', 553, '36.30750', '-97.58560'), ('DOUGLAS', 32, '36.26000', '-97.66730'), ('DRUMMOND', 405, '36.30100', '-98.03540'), ('ENID', 47045, '36.40860', '-97.86810'), ('FAIRMONT', 147, '36.35490', '-97.70330'), ('GARBER', 845, '36.43650', '-97.58040'), ('HAYWARD', None, '36.28000', '-97.52000'), ('HILLSDALE', 101, '36.56400', '-97.99250'), ('HUNTER', 173, '36.56400', '-97.66240'), ('KREMLIN', 240, '36.54660', '-97.83090'), ('LAHOMA', 577, '36.38790', '-98.09030'), ('NORTH ENID', 796, '36.44660', '-97.86150'), ('WAUKOMIS', 1261, '36.28160', '-97.90460')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'WVZ018': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ARNOLDSBURG', None, '38.78900', '-81.12790'), ('GRANTSVILLE', 565, '38.92050', '-81.09340')], 'partOfState': '', 'wfo': 'RLX'}, -'WAZ022': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CARROLLS', None, '46.06700', '-122.85000'), ('CASTLE ROCK', 2130, '46.27290', '-122.90150'), ('KALAMA', 1783, '46.01030', '-122.84090'), ('KELSO', 11895, '46.12640', '-122.89140'), ('LEXINGTON', None, '46.18300', '-122.90000'), ('LONGVIEW', 34660, '46.13330', '-122.93330'), ('OAK POINT', None, '46.18330', '-123.18330'), ('OSTRANDER', None, '46.18330', '-122.88330'), ('ROSE VALLEY', None, '46.10500', '-122.84000'), ('SILVER LAKE', None, '46.29500', '-122.80000'), ('STELLA', None, '46.19000', '-123.10500'), ('WOODLAND', 3780, '45.91500', '-122.74300')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'WAZ023': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('MULTNOMAH FALLS', None, '45.58300', '-122.11700'), ('VIENTO STATE PARK', None, '45.70000', '-121.66000'), ('BEACON ROCK', None, '45.63000', '-121.99000'), ('CARSON', None, '45.71600', '-121.81660'), ('COOK', None, '45.71660', '-121.65000'), ('HOME VALLEY', None, '45.71660', '-121.76660'), ('NORTH BONNEVILLE', 593, '45.64290', '-121.96950'), ('PRINDLE', None, '45.58500', '-122.16660'), ('SKAMANIA', None, '45.61700', '-122.05000'), ('STEVENSON', 1200, '45.69360', '-121.89320'), ('UNDERWOOD', None, '45.72500', '-121.54000')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'WVZ010': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BELMONT', 1036, '39.37740', '-81.26230'), ('ST. MARYS', 2017, '39.40250', '-81.19550')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ011': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('FRIENDLY', 159, '39.51290', '-81.06210'), ('MIDDLEBOURNE', 870, '39.49360', '-80.90940'), ('PADEN CITY', 2860, '39.60290', '-80.93540'), ('SISTERSVILLE', 1588, '39.55950', '-80.99850')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ012': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('HUNDRED', 344, '39.68410', '-80.45750'), ('JACKSONBURG', None, '39.53000', '-80.65000'), ('KNOB FORK', None, '39.65000', '-80.55000'), ('LITTLETON', 207, '39.69960', '-80.51480'), ('NEW MARTINSVILLE', 5984, '39.66410', '-80.85970'), ('PINE GROVE', 571, '39.56470', '-80.68260'), ('SMITHFIELD', 177, '39.49890', '-80.56060')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVZ013': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ALUM CREEK', 1839, '38.28190', '-81.84170'), ('HAMLIN', 1119, '38.27910', '-82.10380'), ('HARTS', 2361, '38.03060', '-82.13080'), ('WEST HAMLIN', 696, '38.28340', '-82.19530')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ014': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BANCROFT', 367, '38.51080', '-81.84180'), ('BUFFALO', 1171, '38.61320', '-81.98130'), ('ELEANOR', 1345, '38.53890', '-81.93120'), ('HURRICANE', 5222, '38.43680', '-82.01690'), ('POCA', 1013, '38.47440', '-81.81280'), ('TEAYS VALLEY', 12704, '38.44800', '-81.92750'), ('WINFIELD', 1858, '38.52580', '-81.88310')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ015': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BELLE', 1259, '38.23250', '-81.53990'), ('CEDAR GROVE', 862, '38.22070', '-81.42880'), ('CHARLESTON', 53421, '38.35050', '-81.63040'), ('CHESAPEAKE', 1643, '38.22240', '-81.53620'), ('CLENDENIN', 1116, '38.48740', '-81.34930'), ('COAL FORK', 1350, '38.31650', '-81.52090'), ('CROSS LANES', 10353, '38.43510', '-81.76990'), ('DUNBAR', 8154, '38.36820', '-81.73670'), ('EAST BANK', 933, '38.21570', '-81.44520'), ('ELKVIEW', 1182, '38.43490', '-81.47490'), ('GLASGOW', 783, '38.20980', '-81.42260'), ('HANDLEY', 362, '38.18660', '-81.36640'), ('INSTITUTE', None, '38.38360', '-81.76580'), ('MARMET', 1693, '38.24630', '-81.56980'), ('NITRO', 6824, '38.41760', '-81.83110'), ('PINCH', 2811, '38.40740', '-81.47980'), ('PRATT', 551, '38.20700', '-81.38750'), ('SISSONVILLE', 4399, '38.50190', '-81.64470'), ('SOUTH CHARLESTON', 13390, '38.35640', '-81.70720'), ('ST. ALBANS', 11567, '38.37860', '-81.81700'), ('TORNADO', 1111, '38.33280', '-81.85570')], 'partOfState': '', 'wfo': 'RLX'}, -'OKZ009': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ARNETT', 520, '36.13530', '-99.77040'), ('CATESBY', None, '36.50000', '-99.97000'), ('FARGO', 326, '36.37340', '-99.62240'), ('GAGE', 429, '36.31810', '-99.75670'), ('HARMON', None, '36.14500', '-99.54200'), ('SHATTUCK', 1274, '36.27260', '-99.87710')], 'partOfState': 'NORTHWEST', 'wfo': 'OUN'}, -'WVZ017': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('ELIZABETH', 994, '39.06240', '-81.39740')], 'partOfState': '', 'wfo': 'RLX'}, -'MIZ020': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BINGHAM', None, '44.87500', '-85.69000'), ('BURDICKVILLE', None, '44.85000', '-85.95000'), ('CEDAR', None, '44.85000', '-85.80000'), ('EMPIRE', 378, '44.81320', '-86.05890'), ('FOUCH', None, '44.82580', '-85.72630'), ('GLEN ARBOR', None, '44.90000', '-85.99500'), ('GLEN HAVEN', None, '44.90000', '-86.02030'), ('GREILICKVILLE', 1415, '44.79910', '-85.64580'), ('LELAND', None, '45.01670', '-85.76700'), ('MAPLE CITY', None, '44.84890', '-85.86780'), ('NORTHPORT', 648, '45.13000', '-85.62150'), ('OMENA', None, '45.06000', '-85.59660'), ('PESHAWBESTOWN', None, '45.01750', '-85.61330'), ('SUTTONS BAY', 589, '44.97900', '-85.65150')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ021': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ANTRIM', None, '44.88330', '-85.08000'), ('BELLAIRE', 1164, '44.97590', '-85.20670'), ('CENTRAL LAKE', 990, '45.06980', '-85.26310'), ('CLAM RIVER', None, '44.93330', '-85.28330'), ('ELK RAPIDS', 1700, '44.89490', '-85.40420'), ('ELLSWORTH', 483, '45.16620', '-85.24440'), ('KEWADIN', None, '44.93340', '-85.36700'), ('LAKE BELLAIRE', None, '44.95000', '-85.24000'), ('MANCELONA', 1408, '44.90210', '-85.06100'), ('TORCH LAKE', None, '45.06670', '-85.36720')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ022': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ELMIRA', None, '45.06700', '-84.85000'), ('GAYLORD', 3681, '45.03200', '-84.67410'), ('JOHANNESBURG', None, '44.98400', '-84.46000'), ('OTSEGO LAKE STATE PARK', None, '44.93000', '-84.70000'), ('SPARR', None, '45.05000', '-84.58330'), ('VANDERBILT', 587, '45.14350', '-84.66350'), ('WATERS', None, '44.89660', '-84.70000')], 'partOfState': 'NORTHWEST', 'wfo': 'APX'}, -'MIZ023': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ATLANTA', 757, '45.00100', '-84.15000'), ('CLEAR LAKE STATE PARK', None, '45.15100', '-84.20220'), ('FLETCHER POND', None, '44.98000', '-83.89000'), ('HETHERTON', None, '45.00000', '-84.36670'), ('HILLMAN', 685, '45.06590', '-83.90060'), ('LEWISTON', 990, '44.88330', '-84.31660'), ('LOCKWOOD LAKE', None, '44.91670', '-84.00000'), ('LONG LAKE', None, '45.13340', '-83.98330')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ024': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALPENA', 11304, '45.07280', '-83.43750'), ('CATHRO', None, '45.15000', '-83.56660'), ('DEVILS LAKE', None, '44.99000', '-83.50000'), ('LACHINE', None, '45.08340', '-83.73340'), ('LONG RAPIDS', None, '45.13350', '-83.73340'), ('OSSINEKE', 1059, '44.90720', '-83.43200'), ('SPRATT', None, '45.00000', '-83.76000'), ('THE TOWN OF HUBBARD LAKE', None, '44.88340', '-83.58330')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ025': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BENDON', None, '44.64340', '-85.85110'), ('BENZONIA', 519, '44.61650', '-86.09790'), ('BEULAH', 363, '44.62960', '-86.09550'), ('ELBERTA', 457, '44.62140', '-86.22970'), ('FRANKFORT', 1513, '44.63690', '-86.23400'), ('HONOR', 299, '44.66680', '-86.02020'), ('LAKE ANN', 276, '44.72570', '-85.84450'), ('THOMPSONVILLE', 457, '44.52070', '-85.93870')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'GAZ158': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BARWICK', 444, '30.89210', '-83.73960'), ('BOSTON', 1417, '30.79170', '-83.79080'), ('COOLIDGE', 552, '31.01050', '-83.86670'), ('DILLON', None, '30.89800', '-83.89360'), ('EASON', None, '30.80920', '-83.84960'), ('FIVE POINTS', None, '30.87700', '-83.79870'), ('LAKE RIVERSIDE', None, '30.95590', '-83.97010'), ('MEIGS', 1090, '31.07210', '-84.09190'), ('MERRILLVILLE', None, '30.94710', '-83.87660'), ('METCALF', None, '30.70100', '-83.98890'), ('OCHLOCKNEE', 605, '30.97520', '-84.05080'), ('PASCO', None, '30.90970', '-83.99630'), ('PAVO', 711, '30.96010', '-83.73760'), ('THOMASVILLE', 18162, '30.83910', '-83.97890'), ('THOMASVILLE MUNI A/P', None, '30.90030', '-83.88110')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'TAE'}, -'MIZ027': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BARKER CREEK', None, '44.78330', '-85.31660'), ('BEAR LAKE', 318, '44.71660', '-84.93330'), ('DARRAGH', None, '44.76660', '-85.05000'), ('KALKASKA', 2226, '44.73460', '-85.17990'), ('RAPID CITY', None, '44.83340', '-85.28330'), ('SHARON', None, '44.58330', '-85.08330'), ('SIGMA', None, '44.66660', '-85.05000'), ('SMITHVILLE', None, '44.52000', '-85.15000'), ('SOUTH BOARDMAN', None, '44.63330', '-85.25020')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ028': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('FREDERIC', None, '44.78530', '-84.73340'), ('GRAYLING', 1952, '44.65730', '-84.70950'), ('HARTWICK PINES STATE PARK', None, '44.76000', '-84.69000'), ('INTERSECTION OF I-75 AND', None, '44.58000', '-84.71000'), ('INTERSECTION OF M-72 AND', None, '44.61400', '-84.41400'), ('LOVELLS', None, '44.81000', '-84.46670')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'MIZ029': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('COMINS', None, '44.80000', '-84.05000'), ('FAIRVIEW', None, '44.71660', '-84.05000'), ('LUZERNE', None, '44.61660', '-84.26660'), ('MACK LAKE', None, '44.56000', '-84.10000'), ('MCKINLEY', None, '44.63330', '-83.93330'), ('MIO', 2016, '44.66300', '-84.13000'), ('RED OAK', None, '44.70000', '-84.28340')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'INZ065': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('GREENSBURG', 10260, '39.34140', '-85.48050'), ('HARTSVILLE', 376, '39.26700', '-85.69870'), ('MILLHOUSEN', 136, '39.21070', '-85.43530'), ('NEWPOINT', 290, '39.30890', '-85.33010'), ('ST. PAUL', 1022, '39.42730', '-85.62910'), ('WESTPORT', 1515, '39.17610', '-85.57530')], 'partOfState': '', 'wfo': 'IND'}, -'AKZ029': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('HYDER', 97, '55.98040', '-130.05870')], 'partOfState': '', 'wfo': 'AJK'}, -'VAZ014': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BLACKSBURG', 39573, '37.23330', '-80.41670'), ('CHILDRESS', None, '37.06670', '-80.51670'), ('CHRISTIANSBURG', 16947, '37.14170', '-80.40270'), ('CROCKETT SPRINGS', None, '37.10000', '-80.26670'), ('ELLISTON', None, '37.21670', '-80.23330'), ('ELLISTON-LAFAYETTE', 1241, '37.22300', '-80.21570'), ('MC DONALDS MILL', None, '37.30000', '-80.28330'), ('MERRIMAC', 1751, '37.19060', '-80.42580'), ('PILOT', None, '37.05000', '-80.36670'), ('PRICES FORK', None, '37.21670', '-80.50000'), ('SHAWSVILLE', 1029, '37.16670', '-80.26670'), ('WALTON', None, '37.16670', '-80.53330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'CAZ069': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALLEGHANY', None, '39.46970', '-120.84220'), ('ARNOLD', 4218, '38.23220', '-120.36960'), ('BASSETTS', None, '39.61970', '-120.58640'), ('BAXTER', None, '39.21300', '-120.78000'), ('BEAR VALLEY', 133, '38.46470', '-120.03890'), ('BIG BEND', 149, '39.30550', '-120.51690'), ('BIG BEND SUMMIT', None, '38.85000', '-120.53280'), ('BLACK SPRINGS', None, '38.37660', '-120.19660'), ('BLUE CANYON', None, '39.27470', '-120.70900'), ('BOWMAN LAKE', None, '39.44830', '-120.65000'), ('CALAVERAS BIG TREES SP', None, '38.27190', '-120.28670'), ('CARSON PASS', None, '38.69390', '-119.98750'), ('CEDAR RIDGE', None, '38.06580', '-120.27580'), ('CISCO', None, '39.30160', '-120.54580'), ('DARDANELLE', None, '38.34190', '-119.83220'), ('DONNER PEAK', None, '39.30890', '-120.31110'), ('DOWNIEVILLE', None, '39.55940', '-120.82660'), ('EBBETTS PASS', None, '38.54440', '-119.81080'), ('EMIGRANT GAP', None, '39.29690', '-120.67160'), ('FRESH POND', None, '38.76030', '-120.52890'), ('GIBSONVILLE', None, '39.74030', '-120.90780'), ('GRANITEVILLE', None, '39.44080', '-120.73860'), ('HERMIT VALLEY BASIN', None, '38.54330', '-119.88420'), ('JUPITER', None, '38.12250', '-120.28160'), ('KENNEDY MEADOW', None, '38.31160', '-119.74470'), ('KINGVALE', None, '39.32110', '-120.42780'), ('KIRKWOOD', 96, '38.70280', '-120.07170'), ('KIRKWOOD MEADOWS', None, '38.69220', '-120.07190'), ('KIRKWOOD SKI AREA', None, '38.67830', '-120.04190'), ('KIT CARSON', None, '38.67080', '-120.11250'), ('KYBURZ', None, '38.77470', '-120.29580'), ('LAKE ALPINE', None, '38.47170', '-120.00330'), ('LAKE SPAULDING', None, '39.32720', '-120.64190'), ('LONG BARN', None, '38.09300', '-120.13330'), ('LOOKOUT PEAK', None, '38.51080', '-119.87190'), ('MEADOW LAKE', None, '39.40360', '-120.49720'), ('MI-WUK VILLAGE', 1485, '38.05800', '-120.17630'), ('PACIFIC HOUSE', None, '38.76000', '-120.50600'), ('PIKE', None, '39.43920', '-120.99690'), ('PINECREST', None, '38.18860', '-119.98970'), ('POLLOCK PINES', 4728, '38.75210', '-120.57060'), ('RATTLESNAKE MOUNTAIN', None, '39.31580', '-120.52940'), ('RIVERTON', None, '38.77110', '-120.44830'), ('SCOTTS FLAT', None, '39.28330', '-120.91250'), ('SHRINER LAKE CAMPGROUND', None, '38.53530', '-120.15940'), ('SIERRA CITY', None, '39.56580', '-120.63280'), ('SKILLMAN CAMPGROUND', None, '39.31830', '-120.78920'), ('SODA SPRINGS', None, '39.32300', '-120.37880'), ('STRAWBERRY', 5302, '38.19830', '-120.00830'), ('SUGAR PINE', None, '39.13420', '-120.79110'), ('TAMARACK', None, '38.43880', '-120.07500'), ('TWAIN HARTE', 2586, '38.04050', '-120.23260'), ('TWIN BRIDGES', None, '38.81140', '-120.12300'), ('UPPER BLUE LAKE', None, '38.62830', '-119.93940'), ('WHITE CLOUD CAMPGROUND', None, '39.32010', '-120.84530'), ('WHITE HALL', None, '38.77530', '-120.40420')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'TXZ248': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ESCOBA', None, '27.06700', '-99.01000'), ('SAN YGNACIO', None, '27.03330', '-99.45000'), ('ZAPATA', 4856, '26.89430', '-99.26210')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'OKZ007': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('DEER CREEK', 147, '36.80630', '-97.51880'), ('JEFFERSON', 37, '36.71910', '-97.79020'), ('LAMONT', 465, '36.69110', '-97.55610'), ('MANCHESTER', 104, '36.99440', '-98.03500'), ('MEDFORD', 1172, '36.80430', '-97.73790'), ('NASH', 224, '36.66540', '-98.05210'), ('POND CREEK', 896, '36.66750', '-97.80170'), ('RENFROW', 16, '36.92420', '-97.65640'), ('SALT FORK', None, '36.63000', '-97.58000'), ('WAKITA', 420, '36.88180', '-97.92340')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'RIZ002': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('CRANSTON', 79269, '41.76660', '-71.48110'), ('EAST PROVIDENCE', 48688, '41.80020', '-71.35950'), ('JOHNSTON', None, '41.81667', '-71.46667'), ('NORTH PROVIDENCE', 32411, '41.86120', '-71.45750'), ('PAWTUCKET', 72958, '41.87330', '-71.37430'), ('PROVIDENCE', 173618, '41.82200', '-71.41970')], 'partOfState': '', 'wfo': 'BOX'}, -'TXZ006': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CHANNING', 356, '35.68210', '-102.33170'), ('HARTLEY', 441, '35.88560', '-102.39640'), ('ROMERO', None, '35.72750', '-102.93080')], 'partOfState': '', 'wfo': 'AMA'}, -'ARZ075': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('DERMOTT', 3292, '33.52660', '-91.43770'), ('EUDORA', 2819, '33.11980', '-91.26310'), ('LAKE VILLAGE', 2823, '33.32420', '-91.28350')], 'partOfState': 'SOUTHEAST', 'wfo': 'JAN'}, -'MNZ041': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALEXANDRIA', 8820, '45.87400', '-95.37510'), ('BRANDON', 450, '45.96540', '-95.59690'), ('CARLOS', 329, '45.97390', '-95.29280'), ('EVANSVILLE', 566, '46.00720', '-95.68370'), ('FORADA', 197, '45.78950', '-95.35540'), ('GARFIELD', 281, '45.94040', '-95.49440'), ('KENSINGTON', 286, '45.77790', '-95.69530'), ('MILLERVILLE', 115, '46.07110', '-95.55260'), ('MILTONA', 279, '46.04480', '-95.29200'), ('NELSON', 172, '45.88500', '-95.26570'), ('OSAKIS', 1567, '45.86540', '-95.15280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNZ040': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ASHBY', 472, '46.09320', '-95.81610'), ('BARRETT', 355, '45.91070', '-95.89140'), ('ELBOW LAKE', 1275, '45.99180', '-95.97740'), ('ERDAHL', None, '45.99190', '-95.81750'), ('HERMAN', 452, '45.81060', '-96.13990'), ('HOFFMAN', 672, '45.83190', '-95.78590'), ('NORCROSS', 59, '45.86860', '-96.19590'), ('WENDELL', 177, '46.03540', '-96.10100')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGF'}, -'MNZ043': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BOWLUS', 260, '45.82010', '-94.40750'), ('BUCKMAN', 208, '45.89800', '-94.09230'), ('ELMDALE', 107, '45.83730', '-94.49020'), ('FLENSBURG', 244, '45.94770', '-94.53010'), ('GENOLA', 71, '45.96880', '-94.11100'), ('HARDING', 105, '46.12080', '-94.04380'), ('HILLMAN', 29, '46.00900', '-93.88820'), ('LASTRUP', 99, '46.03980', '-94.06130'), ('LITTLE FALLS', 7719, '45.97790', '-94.36110'), ('MOTLEY', 585, '46.33570', '-94.64320'), ('PIERZ', 1277, '45.97850', '-94.10030'), ('RANDALL', 535, '46.08940', '-94.49970'), ('ROYALTON', 816, '45.83180', '-94.28940'), ('SOBIESKI', 196, '45.92430', '-94.48210'), ('SWANVILLE', 351, '45.91620', '-94.63960'), ('UPSALA', 424, '45.80810', '-94.56900')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ042': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BERTHA', 470, '46.26600', '-95.06310'), ('BROWERVILLE', 735, '46.08570', '-94.86810'), ('BURTRUM', 146, '45.86590', '-94.68720'), ('CLARISSA', 609, '46.12920', '-94.94940'), ('EAGLE BEND', 595, '46.16500', '-95.03400'), ('GREY EAGLE', 335, '45.82500', '-94.74860'), ('HEWITT', 267, '46.32290', '-95.08790'), ('LONG PRAIRIE', 3040, '45.97960', '-94.86300'), ('STAPLES', 3104, '46.36400', '-94.80340'), ('WEST UNION', 87, '45.80140', '-95.08330')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ045': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('GRASSTON', 105, '45.79450', '-93.15390'), ('MORA', 3193, '45.87740', '-93.29330'), ('OGILVIE', 474, '45.83070', '-93.41990'), ('QUAMBA', 98, '45.91550', '-93.17470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ044': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BOCK', 106, '45.78500', '-93.55320'), ('FORESTON', 389, '45.73320', '-93.70940'), ('ISLE', 707, '46.14220', '-93.46040'), ('MILACA', 2580, '45.75790', '-93.65290'), ('ONAMIA', 847, '46.06930', '-93.66520'), ('PEASE', 163, '45.69810', '-93.65060'), ('PRINCETON', 3933, '45.57060', '-93.59080'), ('VINELAND', 607, '46.18270', '-93.77360'), ('WAHKON', 314, '46.11860', '-93.52370')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ047': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBERTA', 142, '45.57480', '-96.05030'), ('CHOKIO', 443, '45.57370', '-96.17410'), ('DONNELLY', 254, '45.69000', '-96.01410'), ('HANCOCK', 717, '45.49830', '-95.79390'), ('MORRIS', 5068, '45.58590', '-95.90530')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MNZ046': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARTICHOKE', None, '45.39920', '-96.15750'), ('ARTICHOKE', None, '45.39920', '-96.15750'), ('BARRY', 25, '45.55850', '-96.55970'), ('BARRY', 25, '45.55850', '-96.55970'), ('BEARDSLEY', 262, '45.55780', '-96.71420'), ('BEARDSLEY', 262, '45.55780', '-96.71420'), ('BONANZA GROVE', None, '45.44560', '-96.70950'), ('BONANZA GROVE', None, '45.44560', '-96.70950'), ('CLINTON', 453, '45.46220', '-96.44330'), ('CLINTON', 453, '45.46220', '-96.44330'), ('CORRELL', 47, '45.23180', '-96.16270'), ('CORRELL', 47, '45.23180', '-96.16270'), ('GRACEVILLE', 605, '45.56850', '-96.43750'), ('GRACEVILLE', 605, '45.56850', '-96.43750'), ('JOHNSON', 32, '45.57190', '-96.29380'), ('JOHNSON', 32, '45.57190', '-96.29380'), ('LAGOONA BEACH', None, '45.36650', '-96.48560'), ('LAGOONA BEACH', None, '45.36650', '-96.48560'), ('ODESSA', 113, '45.26140', '-96.33120'), ('ODESSA', 113, '45.26140', '-96.33120'), ('ORTONVILLE', 2158, '45.30360', '-96.44090'), ('ORTONVILLE', 2158, '45.30360', '-96.44090'), ('YANKEETOWN', None, '45.49110', '-96.74020'), ('YANKEETOWN', None, '45.49110', '-96.74020')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ABR'}, -'MNZ049': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBANY', 1796, '45.63090', '-94.56870'), ('AVON', 1242, '45.60880', '-94.45150'), ('BELGRADE', 750, '45.45000', '-94.99900'), ('BROOTEN', 649, '45.50030', '-95.11900'), ('COLD SPRING', 2975, '45.45750', '-94.43150'), ('ELROSA', 166, '45.56250', '-94.94760'), ('FREEPORT', 454, '45.66300', '-94.68720'), ('GREENWALD', 201, '45.60220', '-94.85900'), ('HOLDINGFORD', 736, '45.73080', '-94.47120'), ('KIMBALL', 635, '45.31330', '-94.30080'), ('LAKE HENRY', 90, '45.45780', '-94.79720'), ('MEIRE GROVE', 149, '45.62710', '-94.86890'), ('MELROSE', 3091, '45.67540', '-94.81210'), ('NEW MUNICH', 352, '45.63060', '-94.75280'), ('PAYNESVILLE', 2267, '45.37850', '-94.71970'), ('PLEASANT LAKE', 504, '45.49900', '-94.28500'), ('RICHMOND', 1213, '45.45260', '-94.51770'), ('ROCKVILLE', 749, '45.47240', '-94.33960'), ('ROSCOE', 116, '45.43240', '-94.63520'), ('SARTELL', 9641, '45.62050', '-94.20630'), ('SAUK CENTRE', 3930, '45.73780', '-94.95730'), ('SPRING HILL', 55, '45.52340', '-94.83440'), ('ST CLOUD', None, '45.55400', '-94.17040'), ('ST JOSEPH', None, '45.56650', '-94.31710'), ('ST MARTIN', None, '45.50410', '-94.66270'), ('ST ROSA', None, '45.73130', '-94.71500'), ('ST STEPHEN', None, '45.70210', '-94.27650'), ('WAITE PARK', 6568, '45.55250', '-94.22360')], 'partOfState': 'CENTRAL', 'wfo': 'MPX'}, -'MNZ048': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CYRUS', 303, '45.61510', '-95.73700'), ('FARWELL', 57, '45.75190', '-95.61810'), ('GLENWOOD', 2594, '45.65330', '-95.38280'), ('LONG BEACH', 271, '45.64810', '-95.42980'), ('LOWRY', 271, '45.70550', '-95.51720'), ('SEDAN', 65, '45.57700', '-95.24550'), ('STARBUCK', 1314, '45.61210', '-95.53300'), ('VILLARD', 244, '45.71350', '-95.26960'), ('WESTPORT', 72, '45.71460', '-95.16730')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'NYZ018': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMBOY', None, '43.06670', '-76.28330'), ('APULIA', None, '42.81670', '-76.05000'), ('BALDWINSVILLE', 7053, '43.15640', '-76.33380'), ('BAYBERRY', None, '43.15000', '-76.21670'), ('BENNETTS CORNERS', None, '43.03330', '-76.36670'), ('BREWERTON', 3453, '43.23550', '-76.14180'), ('BRIDGEPORT', 1665, '43.15440', '-75.97520'), ('CAMILLUS', 1249, '43.03930', '-76.30820'), ('CEDARVALE', None, '42.96670', '-76.23330'), ('CICERO', None, '43.18330', '-76.11670'), ('CLAY', None, '43.18330', '-76.18330'), ('DE WITT', None, '43.03850', '-76.07340'), ('EAST SYRACUSE', 3178, '43.06370', '-76.06980'), ('ELBRIDGE', 1103, '43.03420', '-76.44360'), ('EUCLID', None, '43.18330', '-76.21670'), ('FABIUS', 355, '42.83550', '-75.98550'), ('FAIRMOUNT', 10795, '43.04060', '-76.24720'), ('FAYETTEVILLE', 4190, '43.03010', '-75.99780'), ('IONIA', None, '43.10000', '-76.38330'), ('JACKS REEF', None, '43.10000', '-76.43330'), ('JAMESVILLE', None, '42.98330', '-76.06670'), ('JORDAN', 1314, '43.06570', '-76.47330'), ('KIRKVILLE', None, '43.06670', '-75.96670'), ('LA FAYETTE', None, '42.88330', '-76.10000'), ('LAKELAND', 2852, '43.08330', '-76.25000'), ('LIVERPOOL', 2505, '43.10590', '-76.20990'), ('LOWER SOUTH BAY', None, '43.20000', '-76.06670'), ('LYNCOURT', 4268, '43.08140', '-76.12620'), ('LYNDON', None, '43.02780', '-76.04060'), ('LYSANDER', None, '43.21670', '-76.46670'), ('MANLIUS', 4819, '43.00090', '-75.98250'), ('MARCELLUS', 1826, '42.98410', '-76.34000'), ('MARIETTA', None, '42.91670', '-76.31670'), ('MARYSVILLE', None, '42.98330', '-76.43330'), ('MATTYDALE', 6367, '43.09940', '-76.14590'), ('MEMPHIS', None, '43.08330', '-76.38330'), ('MINOA', 3348, '43.07540', '-76.01040'), ('NEDROW', 2265, '42.98330', '-76.13330'), ('NORTH SYRACUSE', 6862, '43.13230', '-76.13020'), ('ONONDAGA', None, '43.00000', '-76.18330'), ('ORAN', None, '42.98330', '-75.91670'), ('OTISCO', None, '42.86670', '-76.20000'), ('PLAINVILLE', None, '43.16670', '-76.45000'), ('POMPEY', None, '42.90000', '-76.01670'), ('SENECA KNOLLS', 2138, '43.13330', '-76.30000'), ('SKANEATELES', 2616, '42.94500', '-76.42550'), ('SOLVAY', 6845, '43.05830', '-76.21200'), ('SYRACUSE', 147306, '43.04110', '-76.14410'), ('TAUNTON', None, '43.03330', '-76.21670'), ('TULLY', 924, '42.79790', '-76.10800'), ('VAN BUREN', None, '43.11670', '-76.31670'), ('VESPER', None, '42.81670', '-76.16670'), ('VILLAGE GREEN', 3945, '43.13330', '-76.31340'), ('WARNERS', None, '43.08330', '-76.33330'), ('WATERVALE', None, '42.95000', '-75.96670'), ('WESTVALE', 5166, '43.04180', '-76.21230'), ('WOODARD', None, '43.15000', '-76.20000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'MOZ019': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CANTON', 2557, '40.12970', '-91.52380'), ('EWING', 464, '40.00840', '-91.71440'), ('LA BELLE', 669, '40.11640', '-91.91390'), ('LA GRANGE', 1000, '40.04800', '-91.50050'), ('LEWISTOWN', 595, '40.08420', '-91.81270'), ('MAYWOOD', None, '39.95440', '-91.60320'), ('MONTICELLO', 126, '40.11910', '-91.71260'), ('STEFFENVILLE', None, '39.97060', '-91.88200')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'CAZ089': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CARUTHERS', 2103, '36.54180', '-119.84170'), ('COALINGA', 11668, '36.14240', '-120.35460'), ('DOS PALOS', 4581, '36.98650', '-120.63680'), ('FIREBAUGH', 5743, '36.84920', '-120.44890'), ('FIVE POINTS', None, '36.42960', '-120.10230'), ('GUSTINE', 4698, '37.25250', '-120.99320'), ('LATON', 1236, '36.43400', '-119.68890'), ('LOS BANOS', 25869, '37.06420', '-120.83530'), ('MENDOTA', 7890, '36.75760', '-120.37890'), ('RIVERDALE', 2416, '36.43080', '-119.86600'), ('SAN JOAQUIN', 3270, '36.60690', '-120.18690'), ('SAN LUIS RESERVOIR', None, '37.06800', '-121.06860'), ('TRANQUILITY', None, '36.64820', '-120.25140')], 'partOfState': 'CENTRAL', 'wfo': 'HNX'}, -'MOZ017': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRASHEAR', 280, '40.14790', '-92.37840'), ('CANNON MEM ARPT', None, '40.10000', '-92.55000'), ('GIBBS', 100, '40.09800', '-92.41630'), ('KIRKSVILLE', 16988, '40.19510', '-92.57840'), ('MILLARD', 75, '40.10710', '-92.54530'), ('NOVINGER', 534, '40.23410', '-92.70590')], 'partOfState': 'NORTHEAST', 'wfo': 'EAX'}, -'MOZ016': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BROWNING', 317, '40.03490', '-93.16020'), ('GREEN CITY', 688, '40.26570', '-92.95710'), ('GREENCASTLE', 308, '40.26150', '-92.87830'), ('HARRIS', 105, '40.30640', '-93.35010'), ('HUMPHREYS', 164, '40.12510', '-93.31840'), ('MILAN', 1958, '40.20320', '-93.12390'), ('NEWTOWN', 209, '40.37660', '-93.33280'), ('OSGOOD', 51, '40.19810', '-93.35060'), ('POLLOCK', 131, '40.35900', '-93.08410'), ('WINIGAN', None, '40.05000', '-92.90000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ015': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRIMSON', 63, '40.14420', '-93.73780'), ('GALT', 275, '40.12720', '-93.38760'), ('LAREDO', 250, '40.02630', '-93.44730'), ('SPICKARD', 315, '40.24260', '-93.59220'), ('TINDALL', 65, '40.16040', '-93.60940'), ('TRENTON', 6216, '40.08110', '-93.60450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ014': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALTAMONT', 218, '39.88890', '-94.08670'), ('COFFEY', 140, '40.10510', '-94.00620'), ('GALLATIN', 1789, '39.91030', '-93.96380'), ('JAMESON', 120, '40.00530', '-93.98760'), ('JAMESPORT', 505, '39.97470', '-93.80210'), ('LOCK SPRINGS', 69, '39.84910', '-93.77590'), ('MCFALL', 135, '40.11170', '-94.22250'), ('PATTONSBURG', 261, '40.04800', '-94.13760'), ('WINSTON', 247, '39.86990', '-94.14150')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'MOZ013': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AMITY', 70, '39.86860', '-94.43450'), ('CAMERON', 8312, '39.74290', '-94.23630'), ('CLARKSDALE', 351, '39.81350', '-94.55020'), ('FAIRPORT', None, '39.98330', '-94.35000'), ('MAYSVILLE', 1212, '39.88700', '-94.36130'), ('OSBORN', 455, '39.75000', '-94.35710'), ('STEWARTSVILLE', 759, '39.75440', '-94.49870'), ('UNION STAR', 433, '39.97940', '-94.59800'), ('WEATHERBY', 123, '39.90920', '-94.24130')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ012': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AMAZONIA', 277, '39.88830', '-94.89190'), ('BOLCKOW', 234, '40.11560', '-94.82060'), ('COSBY', 143, '39.86350', '-94.67950'), ('COUNTRY CLUB', 1846, '39.82760', '-94.82690'), ('FILLMORE', 211, '40.02550', '-94.97300'), ('REA', 56, '40.06110', '-94.76410'), ('ROSENDALE', 180, '40.04260', '-94.82490'), ('SAVANNAH', 4762, '39.93880', '-94.82780'), ('WHITESVILLE', None, '40.06670', '-94.73330')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ011': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BIG LAKE', 127, '40.07410', '-95.35150'), ('BIGELOW', 38, '40.10940', '-95.28850'), ('CORNING', 21, '40.24880', '-95.45470'), ('CRAIG', 309, '40.19220', '-95.37340'), ('FOREST CITY', 338, '39.98270', '-95.18790'), ('FORTESCUE', 51, '40.05200', '-95.31750'), ('MAITLAND', 342, '40.20310', '-95.07870'), ('MOUND CITY', 1193, '40.13600', '-95.23420'), ('OREGON', 935, '39.98450', '-95.14360')], 'partOfState': 'NORTHWEST', 'wfo': 'EAX'}, -'MOZ010': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ALEXANDRIA', 166, '40.35970', '-91.45920'), ('ANSON', None, '40.56830', '-91.76870'), ('ANTIOCH', None, '40.31880', '-91.68410'), ('ASHTON', None, '40.45030', '-91.80110'), ('ATHENS', None, '40.57300', '-91.69000'), ('CHAMBERSBURG', None, '40.51800', '-91.80060'), ('CHARLIE HEATH MEMORIAL CA', None, '40.57880', '-91.89470'), ('CLARK CITY', None, '40.41800', '-91.68010'), ('FAIRMONT', None, '40.33360', '-91.90140'), ('FROST ISLAND CA', None, '40.44000', '-91.54860'), ('GREGORY LANDING', None, '40.28360', '-91.50500'), ('KAHOKA', 2241, '40.42380', '-91.71840'), ('LURAY', 102, '40.45250', '-91.88430'), ('MEDILL', None, '40.43380', '-91.76770'), ('NEEPER', None, '40.33360', '-91.78440'), ('PEAKSVILLE', None, '40.50190', '-91.68520'), ('REVERE', 121, '40.49420', '-91.67600'), ('ST. PATRICK', None, '40.26880', '-91.62550'), ('WAYLAND', 425, '40.39520', '-91.58170'), ('WINCHESTER', 1651, '40.31740', '-91.60170'), ('WYACONDA', 310, '40.39300', '-91.92630')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'LAZ034': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BATCHELOR', None, '30.84030', '-91.66140'), ('LETTSWORTH', None, '30.93330', '-91.70470'), ('LIVONIA', 1339, '30.56490', '-91.55010'), ('LOTTIE', None, '30.55610', '-91.64170'), ('MORGANZA', 659, '30.73660', '-91.59070'), ('NEW ROADS', 4966, '30.69410', '-91.45410')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'OKZ002': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ADAMS', None, '36.75000', '-101.08000'), ('BAKER', None, '36.87000', '-101.02000'), ('EVA', None, '36.80000', '-101.90000'), ('GOODWELL', 1192, '36.59450', '-101.63210'), ('GUYMON', 10472, '36.68630', '-101.48300'), ('HARDESTY', 277, '36.61450', '-101.19330'), ('HOOKER', 1788, '36.85990', '-101.21200'), ('HOUGH', None, '36.87000', '-101.57000'), ('OPTIMA', 266, '36.75830', '-101.35400'), ('TEXHOMA', 935, '36.50540', '-101.78730'), ('TYRONE', 880, '36.95560', '-101.06640')], 'partOfState': '', 'wfo': 'AMA'}, -'MSZ023': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('HOULKA', None, '34.03330', '-89.01670'), ('HOUSTON', 4079, '33.89620', '-89.00160'), ('NEW HOULKA', 710, '34.03630', '-89.02000'), ('OKOLONA', 3056, '34.00560', '-88.75050'), ('PYLAND', None, '33.88330', '-89.11670'), ('TREBLOC', None, '33.83330', '-88.85000'), ('WOODLAND', 159, '33.78000', '-89.05010')], 'partOfState': 'NORTHEAST', 'wfo': 'MEG'}, -'LAZ036': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('CLINTON', 1998, '30.86110', '-91.01500'), ('FELPS', None, '30.97690', '-90.91860'), ('JACKSON', 4130, '30.83420', '-91.21020'), ('NORWOOD', 337, '30.96450', '-91.10650'), ('SLAUGHTER', 1011, '30.71890', '-91.14160')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'FLZ141': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALLANDALE', None, '29.12150', '-80.97980'), ('APOLLO BEACH', 7444, '28.90890', '-80.81070'), ('BLAKE', None, '29.18110', '-81.00860'), ('DAYTONA BEACH', 64112, '29.21250', '-81.03080'), ('DAYTONA BEACH INTL SPEEDW', None, '29.18520', '-81.07120'), ('DAYTONA BEACH SHORES', 4299, '29.17350', '-80.98240'), ('DAYTONA HIGHRIDGE ESTATES', None, '29.11360', '-81.16120'), ('EDGEWATER', 18668, '28.96760', '-80.90480'), ('FARMTON', None, '28.84670', '-81.06090'), ('HOLLY HILL', 12119, '29.24260', '-81.04410'), ('LAKE ASHBY', None, '28.93080', '-81.09500'), ('MAYTOWN', None, '28.80690', '-80.96040'), ('ORMOND BEACH', 36301, '29.27660', '-81.06140'), ('PONCE INLET', 2513, '29.10000', '-80.93040'), ('PORT ORANGE', 45823, '29.16010', '-81.00330'), ('SHILOH', None, '28.78940', '-80.80450'), ('SOUTH DAYTONA', 13177, '29.16480', '-81.00480'), ('SPRUCE CREEK', None, '29.07930', '-81.05310'), ('TIGER BAY STATE FOREST', None, '29.13300', '-81.13820'), ('TOMOKA ESTATES', None, '29.31480', '-81.09930'), ('TOMOKA STATE PARK', None, '29.34650', '-81.09190'), ('TURTLE MOUND', None, '28.94470', '-80.83520'), ('WILBUR BY THE SEA', None, '29.13070', '-80.95790')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'LAZ037': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('DARLINGTON', None, '30.87780', '-90.78140'), ('EASLEYVILLE', None, '30.92860', '-90.68750'), ('GREENSBURG', 631, '30.82960', '-90.67000'), ('MONTPELIER', 214, '30.67950', '-90.65450')], 'partOfState': 'SOUTHEAST', 'wfo': 'LIX'}, -'FLZ147': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('AURANTIA', None, '28.72810', '-80.88760'), ('CANAVERAL ACRES', None, '28.40730', '-80.84360'), ('COCOA', 16412, '28.37700', '-80.75020'), ('HAULOVER CANAL', None, '28.73620', '-80.75440'), ('KENNEDY SPACE CENTER', None, '28.63960', '-80.70690'), ('LAGRANGE', None, '28.63620', '-80.83060'), ('LONE CABBAGE FISH CAMP', None, '28.39830', '-80.86010'), ('MIMS', 9147, '28.68460', '-80.84630'), ('PLAYALINDA BEACH', None, '28.64160', '-80.62500'), ('PORT SAINT JOHN', None, '28.47680', '-80.78880'), ('SCOTTSMOOR', None, '28.76680', '-80.87190'), ('TITUSVILLE', 40670, '28.58880', '-80.82020'), ('TITUSVILLE AIRPORT', None, '28.51450', '-80.79930'), ('TURNBULL', None, '28.71010', '-80.86260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ144': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ASTATULA', 1298, '28.71060', '-81.73490'), ('CLERMONT', 9333, '28.55120', '-81.75770'), ('FERNDALE', 233, '28.62180', '-81.69930'), ('GROVELAND', 2360, '28.56300', '-81.85210'), ('HAWTHORNE', 1415, '28.76120', '-81.87100'), ('HOWEY IN THE HILLS', None, '28.71590', '-81.77480'), ('LAKE HARRIS', None, '28.77690', '-81.82520'), ('LITTLE LAKE HARRIS', None, '28.72560', '-81.75840'), ('MASCOTTE', 2687, '28.57620', '-81.88860'), ('MINNEOLA', 5435, '28.57510', '-81.74710'), ('MONTVERDE', 882, '28.59680', '-81.67600'), ('OKAHUMPKA', 251, '28.74760', '-81.89490'), ('YALAHA', 1175, '28.74650', '-81.82420')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'LAZ030': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BUNDICK LAKE', None, '30.74640', '-93.10720'), ('DE RIDDER', 9808, '30.84570', '-93.29100'), ('DRY CREEK', None, '30.66890', '-93.04530'), ('FIELDS', None, '30.52610', '-93.57470'), ('JUNCTION', None, '30.83810', '-93.50890'), ('LONGVILLE', None, '30.60500', '-93.23170'), ('MERRYVILLE', 1126, '30.75350', '-93.53260'), ('ORETTA', None, '30.52580', '-93.43720'), ('RAGLEY', None, '30.51250', '-93.23220'), ('SINGER', None, '30.65470', '-93.41220'), ('SUGARTOWN', None, '30.83970', '-93.01470')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'LAZ031': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ELIZABETH', 574, '30.86830', '-92.79280'), ('GRANT', None, '30.78830', '-92.94830'), ('KINDER', 2148, '30.48650', '-92.84870'), ('LEBLANC', None, '30.50890', '-92.94890'), ('MITTIE', None, '30.70670', '-92.90670'), ('OAKDALE', 8137, '30.81840', '-92.65650'), ('OBERLIN', 1853, '30.61830', '-92.76430'), ('REEVES', 209, '30.51990', '-93.04390')], 'partOfState': 'SOUTHWEST', 'wfo': 'LCH'}, -'NYZ010': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AKRON', 3085, '43.01930', '-78.49560'), ('ALDEN', 2666, '42.89840', '-78.49450'), ('BLASDELL', 2718, '42.79620', '-78.83340'), ('BUFFALO', 292648, '42.88980', '-78.85970'), ('CHEEKTOWAGA', 79988, '42.90890', '-78.75020'), ('CLARENCE CENTER', 1747, '43.00870', '-78.63180'), ('DEPEW', 16629, '42.91200', '-78.70470'), ('ELMA CENTER', 2491, '42.82620', '-78.63270'), ('HARRIS HILL', 4881, '42.97660', '-78.68270'), ('KENMORE', 16426, '42.96480', '-78.87190'), ('LACKAWANNA', 19064, '42.81680', '-78.82930'), ('LANCASTER', 11188, '42.90160', '-78.66980'), ('SLOAN', 3775, '42.89220', '-78.79170'), ('TONAWANDA', 61729, '42.98410', '-78.87570'), ('WEST SENECA', 45943, '42.83770', '-78.75140'), ('WILLIAMSVILLE', 5573, '42.96290', '-78.74090')], 'partOfState': '', 'wfo': 'BUF'}, -'OKZ003': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BALKO', None, '36.63000', '-100.68000'), ('BEAVER', 1570, '36.81450', '-100.52390'), ('BOYD', None, '36.70000', '-100.82000'), ('BRYANS CORNER', None, '36.62000', '-100.82000'), ('ELMWOOD', None, '36.62000', '-100.52000'), ('FLORIS', None, '36.87000', '-100.70000'), ('FORGAN', 532, '36.90640', '-100.53760'), ('GATE', 112, '36.85190', '-100.05540'), ('GRAY', None, '36.55000', '-100.82000'), ('KNOWLES', 32, '36.87260', '-100.19250'), ('MOCANE', None, '36.88000', '-100.53000'), ('SLAPOUT', None, '36.62000', '-100.12000'), ('TURPIN', None, '36.87000', '-100.88000')], 'partOfState': '', 'wfo': 'AMA'}, -'LAZ032': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BASILE', 1660, '30.49500', '-92.59580'), ('BEAVER', None, '30.79560', '-92.57190'), ('CHATAIGNIER', 383, '30.56750', '-92.31540'), ('MAMOU', 3566, '30.63480', '-92.41760'), ('PINE PRAIRIE', 1087, '30.78290', '-92.42290'), ('REDDELL', None, '30.67390', '-92.42610'), ('ST. LANDRY', None, '30.84440', '-92.25810'), ('TURKEY CREEK', 356, '30.87400', '-92.41600'), ('VILLE PLATTE', 8145, '30.69000', '-92.28030')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'CAZ062': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BORREGO SPRINGS', 2535, '33.23870', '-116.35450')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'NYZ011': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ALEXANDER', 481, '42.90170', '-78.26070'), ('BATAVIA', 16256, '42.99860', '-78.18120'), ('BERGEN', 1240, '43.08330', '-77.94200'), ('CORFU', 795, '42.96040', '-78.40030'), ('ELBA', 696, '43.07520', '-78.18890'), ('LE ROY', 4462, '42.97790', '-77.99100'), ('OAKFIELD', 1805, '43.06440', '-78.27070')], 'partOfState': '', 'wfo': 'BUF'}, -'MSZ025': {'fullStateName': 'MISSISSIPPI', 'state': 'MS', 'cities': [('GREENWOOD', 18425, '33.51780', '-90.19160'), ('ITTA BENA', 2208, '33.49970', '-90.32500'), ('MORGAN CITY', 305, '33.37890', '-90.34730'), ('SCHLATER', 388, '33.63910', '-90.34940'), ('SIDON', 672, '33.40740', '-90.20820')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'JAN'}, -'NYZ012': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('ARCADE', 2026, '42.53340', '-78.43320'), ('ATTICA', 2597, '42.86550', '-78.28010'), ('CASTILE', 1051, '42.63100', '-78.05260'), ('GAINESVILLE', 304, '42.64080', '-78.13520'), ('PERRY', 3945, '42.71730', '-78.00670'), ('PIKE', 382, '42.55590', '-78.15420'), ('SILVER SPRINGS', 844, '42.66010', '-78.08470'), ('WARSAW', 3814, '42.74140', '-78.14100'), ('WYOMING', 513, '42.82510', '-78.08550')], 'partOfState': '', 'wfo': 'BUF'}, -'NYZ013': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AVON', 2977, '42.91230', '-77.74610'), ('CALEDONIA', 2327, '42.97560', '-77.85740'), ('DANSVILLE', 4832, '42.56090', '-77.69530'), ('GENESEO', 7579, '42.79830', '-77.81060'), ('LEICESTER', 469, '42.77140', '-77.89800'), ('LIMA', 2459, '42.90640', '-77.61310'), ('LIVONIA', 1373, '42.82090', '-77.66880'), ('MOUNT MORRIS', 3266, '42.72370', '-77.87500'), ('NUNDA', 1330, '42.58060', '-77.93870')], 'partOfState': '', 'wfo': 'BUF'}, -'NYZ014': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('CANANDAIGUA', 11264, '42.88900', '-77.28070'), ('CLIFTON SPRINGS', 2223, '42.95970', '-77.13340'), ('EAST BLOOMFIELD', None, '42.89710', '-77.43380'), ('GENEVA', 13617, '42.86530', '-76.98350'), ('HOLCOMB', None, '42.90020', '-77.41830'), ('MANCHESTER', 1475, '42.96860', '-77.23160'), ('NAPLES', 1072, '42.61690', '-77.40190'), ('PHELPS', 1969, '42.95830', '-77.06260'), ('SHORTSVILLE', 1320, '42.95610', '-77.22230'), ('VICTOR', 2433, '42.98260', '-77.41170')], 'partOfState': '', 'wfo': 'BUF'}, -'CAZ085': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ADIN', None, '41.21170', '-120.94420'), ('ALTURAS', 2892, '41.49150', '-120.54540'), ('CANBY', None, '41.44390', '-120.86920'), ('DAVIS CREEK', None, '41.73330', '-120.37080'), ('DAY', None, '41.21170', '-121.37330'), ('LIKELY', None, '41.23060', '-120.50310'), ('LOOKOUT', None, '41.20810', '-121.15420'), ('TIONESTA', None, '41.64610', '-121.32690'), ('WILLOW RANCH', None, '41.90250', '-120.35720')], 'partOfState': 'NORTHERN', 'wfo': 'MFR'}, -'NEZ032': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('PILGER', 378, '42.00770', '-97.05400'), ('STANTON', 1627, '41.94890', '-97.22400')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ033': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BANCROFT', 520, '42.01040', '-96.57300'), ('BEEMER', 773, '41.93040', '-96.80950'), ('WEST POINT', 3660, '41.83770', '-96.70730'), ('WISNER', 1270, '41.98670', '-96.91350')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ030': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALBION', 1797, '41.68930', '-98.00280'), ('CEDAR RAPIDS', 407, '41.55880', '-98.14930'), ('PETERSBURG', 374, '41.85470', '-98.07990'), ('PRIMROSE', 69, '41.62360', '-98.23720'), ('ST. EDWARD', 796, '41.57130', '-97.86090')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ031': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BATTLE CREEK', 1158, '41.99900', '-97.59870'), ('MADISON', 2367, '41.82840', '-97.45660'), ('MEADOW GROVE', 311, '42.02920', '-97.73620'), ('NEWMAN GROVE', 797, '41.74740', '-97.77710'), ('NORFOLK', 23516, '42.03430', '-97.41840'), ('TILDEN', 1078, '42.04400', '-97.83200')], 'partOfState': 'NORTHEAST', 'wfo': 'OAX'}, -'NEZ036': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('RINGGOLD', None, '41.51100', '-100.77050'), ('TRYON', None, '41.55800', '-100.94500')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEZ037': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('GANDY', 30, '41.47010', '-100.45740'), ('STAPLETON', 301, '41.47990', '-100.51220')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEZ034': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CRAIG', 241, '41.78490', '-96.36160'), ('DECATUR', 618, '42.00810', '-96.25070'), ('LYONS', 963, '41.93610', '-96.47190'), ('OAKLAND', 1367, '41.83510', '-96.46580'), ('TEKAMAH', 1892, '41.77740', '-96.22270')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OAX'}, -'NEZ035': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARTHUR', 145, '41.57230', '-101.69190')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'TXZ251': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BORDER PATROL', None, '27.00250', '-97.78330'), ('SARITA', None, '27.21670', '-97.80000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXZ250': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ENCINO', 177, '26.93330', '-98.13330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXZ253': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ALAMO', 14760, '26.18860', '-98.11850'), ('DONNA', 14768, '26.16890', '-98.05000'), ('EDCOUCH', 3342, '26.29400', '-97.96430'), ('EDINBURG', 48465, '26.29580', '-98.16490'), ('ELSA', 5549, '26.29830', '-97.99340'), ('HIDALGO', 7322, '26.10180', '-98.25840'), ('LA JOYA', 3303, '26.24830', '-98.47820'), ('MCALLEN', 106414, '26.21550', '-98.23930'), ('MCCOOK', None, '26.48000', '-98.38300'), ('MERCEDES', 13649, '26.14800', '-97.92080'), ('MISSION', 45408, '26.21140', '-98.31690'), ('PALMVIEW', 4107, '26.22990', '-98.37250'), ('PENITAS', 1167, '26.23340', '-98.44850'), ('PHARR', 46660, '26.18200', '-98.18850'), ('PROGRESO', 4851, '26.09750', '-97.96050'), ('SAN JUAN', 26229, '26.19130', '-98.15410'), ('SAN MANUEL', None, '26.57000', '-98.11700'), ('SULLIVAN CITY', 3998, '26.28170', '-98.56080'), ('WESLACO', 26935, '26.16160', '-97.98440')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'NEZ039': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ARCADIA', 359, '41.42470', '-99.12560'), ('ELYRIA', 54, '41.67970', '-99.00530'), ('FORT HARTSUFF STATE PARK', None, '41.73000', '-99.01000'), ('NORTH LOUP', 339, '41.49490', '-98.77190'), ('ORD', 2269, '41.60250', '-98.92960')], 'partOfState': 'CENTRAL', 'wfo': 'GID'}, -'TXZ255': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAYVIEW', 323, '26.12430', '-97.39900'), ('BROWNSVILLE', 139722, '25.92510', '-97.48200'), ('COMBES', 2553, '26.24240', '-97.72420'), ('HARLINGEN', 57564, '26.19530', '-97.68630'), ('LA FERIA', 6115, '26.15700', '-97.82260'), ('LOS FRESNOS', 4512, '26.07390', '-97.47990'), ('RANCHO VIEJO', 1754, '26.03470', '-97.55760'), ('RIO HONDO', 1942, '26.23430', '-97.58260'), ('SAN BENITO', 23444, '26.13710', '-97.63530'), ('SANTA ROSA', 2833, '26.25420', '-97.82540')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXZ254': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('LYFORD', 1973, '26.41090', '-97.78960'), ('RAYMONDVILLE', 9733, '26.47910', '-97.78080'), ('SAN PERLITA', 680, '26.50040', '-97.63980'), ('SEBASTIAN', 1864, '26.34390', '-97.79730')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXZ257': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('LAGUNA HEIGHTS', 1990, '26.08010', '-97.25690'), ('LAGUNA VISTA', 1658, '26.10050', '-97.29330'), ('PORT ISABEL', 4865, '26.07480', '-97.22010'), ('SOUTH PADRE ISLAND', 2422, '26.07760', '-97.18000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'TXZ256': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('PORT MANSFIELD', 415, '26.55000', '-97.43330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'BRO'}, -'PRZ002': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUAS CLARAS', 3499, '18.24950', '-65.66630'), ('ANTON RUIZ', None, '18.19010', '-65.80760'), ('BAJANDAS', 1418, '18.16230', '-65.78280'), ('BARTOLO', 1260, '18.36350', '-65.84140'), ('BENITEZ', None, '18.27540', '-65.87930'), ('CAMPO RICO', 3218, '18.33910', '-65.89820'), ('CANDELERO ARRIBA', 1346, '18.10400', '-65.83710'), ('CANOVANAS', None, '18.37970', '-65.90680'), ('CEIBA', 3698, '18.26660', '-65.64900'), ('DAGUAO', 1488, '18.22350', '-65.68070'), ('DUQUE', 1529, '18.24010', '-65.74460'), ('FAJARDO', 33286, '18.33500', '-65.65970'), ('HATO CANDAL', 2453, '18.37660', '-65.78990'), ('HUMACAO', 20682, '18.15450', '-65.81970'), ('LA DOLORES', 3534, '18.37730', '-65.85520'), ('LOIZA', None, '18.43280', '-65.88060'), ('LOMAS', 953, '18.27050', '-65.90920'), ('LUIS M. CINTRON', None, '18.30160', '-65.63890'), ('LUQUILLO', 7947, '18.37750', '-65.72100'), ('NAGUABO', 4432, '18.21350', '-65.73760'), ('PALMER', 1205, '18.37240', '-65.77450'), ('PENA POBRE', None, '18.21870', '-65.82290'), ('PUNTA SANTIAGO', 5803, '18.16470', '-65.75840'), ('RAMOS', 2004, '18.34160', '-65.71300'), ('RIO BLANCO', None, '18.21440', '-65.79320'), ('RIO GRANDE', None, '18.38070', '-65.83930'), ('ROOSEVELT ROADS', 3975, '18.23820', '-65.62780'), ('SAN ISIDRO', 8071, '18.39410', '-65.88570'), ('SANTA BARBARA', None, '18.39560', '-65.91900'), ('SUAREZ', None, '18.43290', '-65.85100'), ('VIEQUES', 2136, '18.42840', '-65.83540')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ003': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ARROYO', 7244, '17.97080', '-66.06210'), ('BUENA VISTA', 2026, '17.99840', '-66.05230'), ('CENTRAL AGUIRRE', 1588, '17.95700', '-66.22660'), ('COCO', 5803, '18.00450', '-66.26000'), ('COMUNAS', 2027, '18.08950', '-65.84040'), ('COQUI', None, '17.98060', '-66.22640'), ('CORAZON', None, '17.99550', '-66.08360'), ('EL NEGRO', 1656, '18.03930', '-65.85170'), ('EMAJAGUA', 3099, '18.00250', '-65.88300'), ('GUAYAMA', 21624, '17.97820', '-66.11100'), ('JOBOS', 3475, '17.96250', '-66.16570'), ('LA PLENA', 1036, '18.04430', '-66.20660'), ('LAMBOGLIA', 1121, '17.98630', '-65.98490'), ('LAS OCHENTA', 1199, '17.98580', '-66.31810'), ('MARTORELL', 2884, '18.07540', '-65.89820'), ('MAUNABO', 2075, '18.00980', '-65.90140'), ('OLIMPO', 2493, '18.00470', '-66.10950'), ('PALMAS', 2829, '17.98900', '-66.02570'), ('PALO SECO', 1152, '18.00960', '-65.93730'), ('PATILLAS', 4091, '18.00900', '-66.01390'), ('PLAYITA', 2192, '18.04170', '-65.90830'), ('ROSA SANCHEZ', None, '18.06350', '-65.91380'), ('SALINAS', 6141, '17.97940', '-66.29660'), ('VAZQUEZ', None, '18.06770', '-66.23910'), ('YABUCOA', 6636, '18.04960', '-65.87960'), ('YAUREL', 1468, '18.02890', '-66.05750')], 'partOfState': '', 'wfo': 'SJU'}, -'CAZ068': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BALD EAGLE MOUNTAIN', None, '40.32640', '-121.23470'), ('ALMANOR', 0, '40.21750', '-121.17310'), ('AMERICAN HOUSE', None, '39.65220', '-121.02220'), ('BELDEN', 26, '39.93810', '-121.24810'), ('BRUSH CREEK RS', None, '39.69050', '-121.33810'), ('BUCKS LAKE', 17, '39.88670', '-121.19030'), ('BURNEY', 3217, '40.88430', '-121.66870'), ('BUTTE MEADOWS', None, '40.08140', '-121.55000'), ('CARIBOU', 0, '40.08060', '-121.15670'), ('CHESTER', 2316, '40.30040', '-121.23320'), ('CRESCENT MILLS', 258, '40.09670', '-120.90970'), ('GREENVILLE', 1160, '40.13580', '-120.93790'), ('LAKE ALMANOR', None, '40.25280', '-121.16030'), ('MANZANITA LAKE', None, '40.53560', '-121.55970'), ('MILL CREEK', None, '40.08140', '-121.52160'), ('MINERAL', 143, '40.34780', '-121.59390'), ('MOCCASIN', None, '40.07690', '-120.93530'), ('PAXTON', 21, '40.03810', '-120.99380'), ('PULGA', None, '39.80310', '-121.44750'), ('QUINCY', 1879, '39.92350', '-120.92380'), ('SENECA', None, '40.11050', '-121.08360'), ('STORRIE', 5, '39.91750', '-121.32220'), ('TWAIN', 87, '40.02030', '-121.07080')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'PRZ001': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BAYAMON', None, '18.38130', '-66.16390'), ('CAMPANILLA', 7757, '18.42460', '-66.23870'), ('CANDELARIA', 17300, '18.40670', '-66.21830'), ('CANDELARIA ARENAS', 5854, '18.41920', '-66.21780'), ('CAROLINA', 168164, '18.40840', '-65.98110'), ('CATANO', None, '18.44540', '-66.13940'), ('GALATEO', 2705, '18.36440', '-66.25930'), ('GUAYNABO', 78806, '18.38640', '-66.11430'), ('H. RIVERA COLON', None, '18.34970', '-66.27410'), ('INGENIO', 5664, '18.44730', '-66.22580'), ('LEVITTOWN', 30140, '18.44760', '-66.17630'), ('MUCARABONES', 1690, '18.39270', '-66.21650'), ('PAJAROS', None, '18.36210', '-66.21910'), ('SABANA SECA', 6247, '18.42560', '-66.18540'), ('SAN JOSE', None, '18.40600', '-66.24850'), ('SAN JUAN', 421958, '18.40840', '-66.06440'), ('TOA ALTA', 4368, '18.39010', '-66.25010'), ('TOA BAJA', 1841, '18.44430', '-66.25480'), ('TRUJILLO ALTO', 50841, '18.36300', '-66.01760')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ006': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AIBONITO', 9269, '18.14180', '-66.26610'), ('BARAHONA', 2632, '18.35340', '-66.44590'), ('BARRANQUITAS', 2910, '18.18770', '-66.30930'), ('CIALES', 3082, '18.33600', '-66.47100'), ('COAMO', 12356, '18.08110', '-66.36060'), ('COROZAL', 11444, '18.34370', '-66.31270'), ('FRANQUEZ', None, '18.34210', '-66.42800'), ('JAYUYA', 3516, '18.22050', '-66.59700'), ('LOS LLANOS', 2301, '18.05820', '-66.40960'), ('MARIANO COLON', None, '18.02540', '-66.33280'), ('MOROVIS', 2285, '18.32680', '-66.40520'), ('NARANJITO', 1931, '18.30510', '-66.24500'), ('OROCOVIS', 909, '18.22690', '-66.39180'), ('PASTOS', 1528, '18.11970', '-66.25910'), ('VILLALBA', 4388, '18.13000', '-66.48220')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ007': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUILITA', 4922, '18.03000', '-66.53360'), ('CAPITANEJO', 3209, '18.01530', '-66.53610'), ('COTO LAUREL', 3606, '18.04990', '-66.55190'), ('EL OJO', 1713, '18.00590', '-66.39210'), ('GUAYABAL', 2377, '18.07820', '-66.50210'), ('GUAYANILLA', 5110, '18.02490', '-66.79000'), ('INDIOS', 1739, '17.99610', '-66.81980'), ('JAUCA', 1838, '17.96580', '-66.36600'), ('JUANA DIAZ', None, '18.05480', '-66.50530'), ('LAS OLLAS', 1949, '18.01640', '-66.42170'), ('LUIS LLORENS TORRES', None, '18.05880', '-66.52730'), ('MAGAS ARRIBA', 1063, '18.02490', '-66.76580'), ('MARUENO', None, '18.05860', '-66.65630'), ('PALOMAS', 2321, '18.01540', '-66.86870'), ('PARCELAS PENUELAS', None, '18.00400', '-66.34010'), ('PENUELAS', None, '18.06150', '-66.72140'), ('PONCE', 155038, '17.98710', '-66.60910'), ('POTALA PASTILLO', 3819, '17.99350', '-66.49690'), ('RIO CANAS ABAJO', None, '18.04110', '-66.46870'), ('SANTA ISABEL', 6993, '17.97090', '-66.40510'), ('SANTO DOMINGO', 3633, '18.07170', '-66.75370'), ('TALLABOA', 1150, '17.99870', '-66.71090'), ('TALLABOA ALTA', 2243, '18.05210', '-66.70290'), ('YAUCO', 19609, '18.03660', '-66.86200')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ004': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUAS BUENAS', 4368, '18.25940', '-66.10540'), ('BAIROA', 2365, '18.25670', '-66.06530'), ('BOQUERON', 2017, '18.20950', '-65.84890'), ('CAGUAS', 88680, '18.23430', '-66.03940'), ('CAYEY', 19940, '18.11640', '-66.16270'), ('CELADA', 4435, '18.27200', '-65.96260'), ('CIDRA', 4881, '18.17920', '-66.15920'), ('COMERIO', None, '18.22170', '-66.22500'), ('EL MANGO', None, '18.23690', '-65.87560'), ('G. L. GARCIA', None, '18.12950', '-66.10430'), ('GURABO', 9046, '18.25610', '-65.97800'), ('JAGUAL', 1402, '18.16280', '-65.99770'), ('JUNCOS', 8978, '18.22850', '-65.91680'), ('LA FERMINA', 3177, '18.17740', '-65.85380'), ('LAS PIEDRAS', 6352, '18.18130', '-65.86980'), ('PARCELAS LA MILAGROSA', 1344, '18.17270', '-66.18850'), ('PARCELAS NUEVAS', 1628, '18.14220', '-66.17270'), ('PUEBLITO DEL RIO', None, '18.23000', '-65.86330'), ('SAN LORENZO', 8947, '18.19080', '-65.96640'), ('SUMIDERO', None, '18.21280', '-66.13430')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ005': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ANIMAS', 1450, '18.44760', '-66.63520'), ('ARECIBO', 49318, '18.45670', '-66.73590'), ('BAJADERO', 3877, '18.42530', '-66.67650'), ('BARCELONETA', 4253, '18.45480', '-66.53900'), ('BRENAS', None, '18.47390', '-66.33410'), ('BUFALO', None, '18.42040', '-66.57370'), ('COTO NORTE', 1381, '18.43520', '-66.44110'), ('DORADO', 12747, '18.47020', '-66.27150'), ('FLORIDA', 5652, '18.36440', '-66.56150'), ('GARROCHALES', 1208, '18.46440', '-66.57010'), ('IMBERY', None, '18.43920', '-66.55730'), ('LA ALIANZA', 2139, '18.40240', '-66.60180'), ('LA LUISA', 2887, '18.45080', '-66.51020'), ('MANATI', None, '18.43100', '-66.48420'), ('MIRANDA', 2057, '18.38870', '-66.38020'), ('MONSERRATE', 2756, '18.43920', '-66.35680'), ('RIO LAJAS', None, '18.40040', '-66.26280'), ('SABANA', 1946, '18.46400', '-66.35280'), ('SABANA HOYOS', 1823, '18.42900', '-66.61210'), ('SAN ANTONIO', 1203, '18.44950', '-66.29860'), ('TIBURONES', 709, '18.43870', '-66.58000'), ('TIERRAS NUEVAS PONIENTE', 2366, '18.46390', '-66.48900'), ('VEGA ALTA', 11755, '18.41660', '-66.32200'), ('VEGA BAJA', 28811, '18.44280', '-66.39970')], 'partOfState': '', 'wfo': 'SJU'}, -'RIZ003': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('COVENTRY', None, '41.68333', '-71.65000'), ('WEST GREENWICH', None, '41.63333', '-71.65000')], 'partOfState': '', 'wfo': 'BOX'}, -'CAZ063': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALDER SPRINGS', None, '39.65000', '-122.72500'), ('BEEGUM', None, '40.34500', '-122.85690'), ('FOUTS SPRINGS', None, '39.35330', '-122.66390'), ('GRAVELLY VALLEY AIRPORT', None, '39.44970', '-122.95530'), ('IGO', None, '40.50550', '-122.54060'), ('KNOB', None, '40.38890', '-122.98690'), ('ONO', None, '40.47530', '-122.61690'), ('PLATINA', None, '40.35970', '-122.89360'), ('SADDLE CAMP', None, '40.16660', '-122.80000'), ('YOLLA BOLLY DISTRICT RS', None, '40.36310', '-122.96420')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'PRZ008': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('AGUADILLA', 16776, '18.43970', '-67.15490'), ('CABAN', None, '18.44540', '-67.13630'), ('CACAO', 2068, '18.43850', '-66.93750'), ('CAMUY', 4013, '18.48570', '-66.84910'), ('CARRIZALES', 2556, '18.48340', '-66.78810'), ('CORCOVADO', 1527, '18.46320', '-66.77720'), ('HATILLO', 5321, '18.48720', '-66.82350'), ('ISABELA', 12818, '18.50530', '-67.02100'), ('MORA', 1857, '18.46500', '-67.03300'), ('PIEDRA GORDA', 1927, '18.43600', '-66.88800'), ('QUEBRADA', 1130, '18.36210', '-66.83630'), ('QUEBRADILLAS', 5319, '18.47580', '-66.93630'), ('RAFAEL CAPO', None, '18.40560', '-66.78360'), ('RAFAEL GONZALEZ', None, '18.42950', '-66.78730'), ('RAFAEL HERNANDEZ', None, '18.47330', '-67.07950')], 'partOfState': '', 'wfo': 'SJU'}, -'GAZ090': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CUSSETA', 1196, '32.30400', '-84.77760'), ('FORT BENNING SOUTH', 11737, '32.36230', '-84.94930')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'CAZ066': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BIG BEND', 149, '39.69830', '-121.45970'), ('DE SABLA POWERHOUSE', None, '39.86970', '-121.63110'), ('FEATHER FALLS', None, '39.59330', '-121.25530'), ('FORBESTOWN', None, '39.51720', '-121.26610'), ('FOREST RANCH', None, '39.88220', '-121.67170'), ('LOVELOCK', None, '39.89140', '-121.57670'), ('LYONSVILLE', None, '40.30940', '-121.73690'), ('MAGALIA', 10569, '39.82750', '-121.61080'), ('PARADISE', 26408, '39.75640', '-121.60430'), ('STIRLING CITY', None, '39.90770', '-121.52690'), ('VIOLA', None, '40.51810', '-121.67670')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'CAZ067': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALTA SIERRA', 6522, '39.12290', '-121.05260'), ('AMADOR CITY', 196, '38.41850', '-120.82330'), ('ANGELS CAMP', None, '38.07580', '-120.54790'), ('APPLEGATE', None, '39.00000', '-120.98900'), ('AUBURN', 12462, '38.89200', '-121.07610'), ('BALD MOUNTAIN SUMMIT', None, '39.33440', '-121.01220'), ('BRIDGEPORT', None, '39.29170', '-121.19360'), ('BROWNSVILLE', None, '39.47330', '-121.26800'), ('BUCK MEADOWS FS', None, '37.82220', '-120.09720'), ('CAMINO', None, '38.73800', '-120.67270'), ('CAMPO SECO', None, '38.22720', '-120.85110'), ('CAMPTONVILLE', None, '39.45190', '-121.04750'), ('CARSON HILL', None, '38.02830', '-120.50550'), ('CEDAR RIDGE', None, '39.19880', '-121.02000'), ('CHALLENGE', None, '39.46150', '-121.25890'), ('CHEROKEE', None, '39.37030', '-121.04190'), ('CHIQUITA LAKE', None, '38.93810', '-120.72890'), ('CLINTON', None, '38.37610', '-120.66720'), ('COLFAX', 1496, '39.09530', '-120.95320'), ('COLOMA', None, '38.80000', '-120.88920'), ('COLUMBIA', 2405, '38.02670', '-120.40180'), ('COOKS STATION', None, '38.50140', '-120.45190'), ('COOL', None, '38.88720', '-121.01470'), ('COPPEROPOLIS', 2363, '37.98110', '-120.64080'), ('DELEVAN NATIONAL WILDLIFE', None, '39.31670', '-121.10000'), ('DIAMOND SPRINGS', 4888, '38.68600', '-120.82160'), ('DOBBINS', None, '39.37160', '-121.20500'), ('DRYTOWN', None, '38.44110', '-120.85330'), ('EAST SONORA', 2078, '37.98050', '-120.33930'), ('FIDDLETOWN', None, '38.50390', '-120.75440'), ('FORESTHILL', 1791, '38.99940', '-120.83210'), ('FRENCHTOWN', None, '39.38800', '-121.25390'), ('GARDEN VALLEY', None, '38.85420', '-120.85830'), ('GEORGETOWN', 962, '38.90690', '-120.83500'), ('GLENCOE', None, '38.35420', '-120.58390'), ('GRASS VALLEY', 10922, '39.22150', '-121.05670'), ('GREENWOOD', None, '38.89670', '-120.91170'), ('GRIZZLY FLAT', None, '38.63640', '-120.52640'), ('GROVELAND-BIG OAK FLAT', 3388, '37.84550', '-120.19640'), ('HIGGINS CORNER', None, '39.04280', '-121.09390'), ('IOWA HILL', None, '39.10860', '-120.85830'), ('JACKSON', 3989, '38.35050', '-120.77350'), ('JAMESTOWN', 3017, '37.95730', '-120.41390'), ('LAKE OF THE PINES', 3956, '39.03970', '-121.05550'), ('LAKE WILDWOOD', 4868, '39.23310', '-121.19940'), ('LILY GAP', None, '38.43000', '-120.44920'), ('LOTUS', None, '38.80170', '-120.90750'), ('MEADOW VISTA', 3096, '39.00400', '-121.03070'), ('MOCCASIN', None, '37.81080', '-120.29890'), ('MOKELUMNE HILL', 774, '38.30010', '-120.70530'), ('MONO VISTA', 3072, '38.01150', '-120.26970'), ('MURPHYS', 2061, '38.15200', '-120.46090'), ('NEVADA CITY', 3001, '39.26040', '-121.02120'), ('NEWCASTLE', None, '38.87400', '-121.13200'), ('NORTH AUBURN', 11847, '38.93130', '-121.08070'), ('PALOMA', None, '38.25940', '-120.76220'), ('PENN VALLEY', 1387, '39.19620', '-121.18990'), ('PHOENIX LAKE-CEDAR RIDGE', 5123, '38.02320', '-120.30070'), ('PILOT HILL', None, '38.83500', '-121.01330'), ('PINE GROVE', None, '38.41310', '-120.65780'), ('PIONEER', None, '38.43190', '-120.57080'), ('PLACERVILLE', 9610, '38.73020', '-120.79570'), ('PLYMOUTH', 980, '38.47840', '-120.84480'), ('RESCUE', None, '38.71160', '-120.95030'), ('ROUGH AND READY', None, '39.23030', '-121.13500'), ('SAN ANDREAS', 2615, '38.18930', '-120.67460'), ('SHINGLE SPRINGS', 2643, '38.67080', '-120.93970'), ('SMITH STATION', None, '37.81280', '-120.12030'), ('SMITHFLAT', None, '38.73470', '-120.75420'), ('SOMERSET', None, '38.64770', '-120.68470'), ('SONORA', 4423, '37.98360', '-120.38160'), ('SOULSBYVILLE', 1729, '37.99260', '-120.25990'), ('SPRINGFIELD', None, '38.02080', '-120.41140'), ('SUTTER CREEK', 2303, '38.39080', '-120.80350'), ('SWEETLAND', None, '39.34310', '-121.11920'), ('TUOLUMNE CITY', 1865, '37.96280', '-120.24030'), ('TUTTLETOWN', None, '37.99160', '-120.45860'), ('VALLEY SPRINGS', 2560, '38.19160', '-120.82810'), ('VOLCANO', None, '38.44310', '-120.62970'), ('WEIMAR', None, '39.04330', '-120.88920')], 'partOfState': 'CENTRAL', 'wfo': 'STO'}, -'CAZ064': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ADAMS', None, '38.85640', '-122.71860'), ('ANDERSON SPRINGS', None, '38.77500', '-122.69190'), ('BARKERVILLE', None, '39.15440', '-122.56140'), ('BUCKINGHAM PARK', None, '39.01550', '-122.75690'), ('CLEARLAKE', 13142, '38.95820', '-122.63160'), ('CLEARLAKE OAKS', 2402, '39.02250', '-122.66510'), ('CLEARLAKE PARK', None, '38.96670', '-122.65000'), ('COBB', 1638, '38.83780', '-122.72410'), ('ETTAWA SPRINGS', None, '38.85110', '-122.69500'), ('FINLEY', None, '39.00440', '-122.87440'), ('FOREST LAKE', None, '38.81800', '-122.71670'), ('GLENHAVEN', None, '39.02640', '-122.73190'), ('HIDDEN VALLEY LAKE', 3777, '38.81110', '-122.56330'), ('HOBERGS', None, '38.84360', '-122.72330'), ('HOUGH SPRINGS', None, '39.16250', '-122.61110'), ('INDIAN VALLEY RESERVOIR', None, '39.12530', '-122.54170'), ('KELSEYVILLE', 2928, '38.95810', '-122.82450'), ('KNOBCONE CAMP', None, '39.04360', '-123.03360'), ('KONOCTI BAY', None, '38.97080', '-122.72920'), ('LAKEPORT', 4820, '39.04230', '-122.91990'), ('LOCH LOMOND', None, '38.86330', '-122.71830'), ('LOWER LAKE', 1755, '38.91120', '-122.61030'), ('LUCERNE', 2870, '39.09030', '-122.79530'), ('MIDDLETOWN', 1020, '38.75250', '-122.61390'), ('MOUNT KONOCTI', None, '38.97500', '-122.76530'), ('NICE', 2509, '39.12530', '-122.85050'), ('PINE GROVE', None, '38.82830', '-122.73000'), ('SARATOGA SPRINGS', None, '39.17530', '-122.97970'), ('SEIGLER SPRINGS', None, '38.87500', '-122.68750'), ('SODA BAY', None, '39.00560', '-122.79170'), ('UPPER LAKE', 989, '39.16470', '-122.90940'), ('WHISPERING PINES', None, '38.81360', '-122.71140'), ('WITTER SPRINGS', None, '39.19000', '-122.99030')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'RIZ004': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('EAST GREENWICH', None, '41.65000', '-71.46667'), ('WARWICK', 85808, '41.70220', '-71.42190'), ('WEST WARWICK', 29581, '41.69750', '-71.51830')], 'partOfState': '', 'wfo': 'BOX'}, -'WAZ039': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('GOVERNMENT ISLAND', None, '45.59000', '-122.53000'), ('ALPINE', None, '45.79000', '-122.43000'), ('AMBOY', 2085, '45.90000', '-122.45000'), ('BATTLE GROUND', 9296, '45.78200', '-122.54110'), ('BRUSH PRAIRIE', 2384, '45.73140', '-122.55140'), ('CAMAS', 12534, '45.58790', '-122.42350'), ('CAMP BONNEVILLE', None, '45.70000', '-122.41660'), ('CASCADE PARK', None, '45.61000', '-122.54000'), ('CLARK COUNTY FAIRGROUNDS', None, '45.75000', '-122.67000'), ('ELKHORN MOUNTAIN', None, '45.73000', '-122.37000'), ('ELLSWORTH', None, '45.61000', '-122.57000'), ('EVERGREEN', None, '45.62730', '-122.52730'), ('FARGHER LAKE', None, '45.88330', '-122.51660'), ('FELIDA', 5683, '45.71680', '-122.70820'), ('HAZEL DELL', None, '45.67800', '-122.65400'), ('HEISSON', None, '45.81660', '-122.50000'), ('HOCKINSON', 5136, '45.73300', '-122.48300'), ('LA CENTER', 1654, '45.86420', '-122.66650'), ('LACAMAS LAKE', None, '45.61000', '-122.43000'), ('MCLOUGHLIN HEIGHTS', None, '45.62000', '-122.60000'), ('MINNEHAHA', 7689, '45.65700', '-122.62630'), ('MOULTON', None, '45.82000', '-122.38000'), ('ORCHARDS', 17852, '45.66660', '-122.55000'), ('PROEBSTEL', None, '45.67000', '-122.45000'), ('RIDGEFIELD', 2147, '45.81730', '-122.74020'), ('SALMON CREEK', 16767, '45.71340', '-122.66110'), ('SALMON FALLS', None, '45.76000', '-122.42000'), ('SIFTON', None, '45.68000', '-122.51660'), ('VANCOUVER DOWNTOWN', None, '45.63420', '-122.66500'), ('VANCOUVER LAKE', None, '45.68000', '-122.73000'), ('VANCOUVER MALL', None, '45.65900', '-122.58370'), ('WASHOUGAL', 8595, '45.57900', '-122.34390'), ('YACOLT', 1055, '45.86570', '-122.40590')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'WAZ038': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BOYDS', None, '48.70830', '-118.12570'), ('CHESAW', None, '48.94100', '-119.05020'), ('CURLEW', None, '48.88470', '-118.59230'), ('DANVILLE', None, '48.98880', '-118.50420'), ('INCHELIUM', 389, '48.34120', '-118.24740'), ('KELLER', None, '48.07400', '-118.68370'), ('LAUIER', None, '48.99270', '-118.22050'), ('MALO', None, '48.80100', '-118.60350'), ('MOLSON', None, '48.97530', '-119.19300'), ('ORIENT', None, '48.85970', '-118.20100'), ('REPUBLIC', 954, '48.64910', '-118.73180'), ('WAUCONDA', None, '48.72220', '-119.00750')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'RIZ001': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('MILLBURY', None, '42.00000', '-71.75000'), ('BURRILLVILLE', None, '41.95370', '-71.71670'), ('CENTRAL FALLS', 18928, '41.88940', '-71.39390'), ('CUMBERLAND', None, '41.97200', '-71.46010'), ('FOSTER', None, '41.85000', '-71.76667'), ('GLOCESTER', None, '41.91667', '-71.66667'), ('LINCOLN', None, '41.91667', '-71.46667'), ('NORTH SMITHFIELD', None, '41.95000', '-71.55000'), ('SCITUATE', None, '41.80000', '-71.61667'), ('SMITHFIELD', None, '41.88333', '-71.55000'), ('WOONSOCKET', 43224, '41.99990', '-71.50040')], 'partOfState': '', 'wfo': 'BOX'}, -'FLZ039': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BRONSON', 964, '29.44880', '-82.63870'), ('CEDAR KEY', 790, '29.14630', '-83.03960'), ('CHIEFLAND', 1993, '29.47890', '-82.86140'), ('FANNING SPRINGS', 737, '29.58370', '-82.93050'), ('LEBANON', None, '29.17000', '-82.64000'), ('OTTER CREEK', 121, '29.32400', '-82.77340'), ('WILLISTON', 2297, '29.37040', '-82.45700')], 'partOfState': 'NORTHERN', 'wfo': 'TBW'}, -'FLZ038': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANDALUSIA', None, '29.49390', '-81.47080'), ('BUNNELL', 2122, '29.46680', '-81.25890'), ('ESPANOLA', None, '29.50670', '-81.31000'), ('FLAGLER BEACH', 4954, '29.47030', '-81.13000'), ('MARINELAND', 6, '29.66400', '-81.21330'), ('PALM COAST', 32732, '29.57110', '-81.21410')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLZ037': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BOSTWICK', None, '29.77380', '-81.63750'), ('CARRAWAY', None, '29.70900', '-81.78680'), ('CRESCENT CITY', 1776, '29.43830', '-81.51660'), ('EAST PALATKA', 1707, '29.65110', '-81.59940'), ('FLORAHOME', None, '29.73190', '-81.88400'), ('GEORGETOWN', None, '29.39120', '-81.63900'), ('HOLLISTER', None, '29.62260', '-81.81400'), ('INTERLACHEN', 1475, '29.61690', '-81.89790'), ('JOHNSON', None, '29.58450', '-81.97350'), ('LAKE COMO', None, '29.48370', '-81.57320'), ('MANNVILLE', None, '29.62870', '-81.86840'), ('ORANGE MILLS', None, '29.68480', '-81.57350'), ('PALATKA', 10033, '29.64920', '-81.65660'), ('POMONA PARK', 789, '29.49920', '-81.59430'), ('PUTNAM HALL', None, '29.73650', '-81.95960'), ('SAN MATEO', None, '29.60650', '-81.58480'), ('SATSUMA', None, '29.55480', '-81.65620'), ('WELAKA', 586, '29.48090', '-81.66350')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLZ036': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALACHUA', 6098, '29.77900', '-82.48000'), ('ARCHER', 1289, '29.53410', '-82.51890'), ('CROSS CREEK', None, '29.48600', '-82.16560'), ('GAINESVILLE', 95447, '29.67420', '-82.33630'), ('GAINESVILLE AIRPORT', None, '29.69100', '-82.27540'), ('GROVE PARK', None, '29.59990', '-82.15390'), ('HIGH SPRINGS', 3863, '29.82210', '-82.59190'), ('LA CROSSE', 143, '29.84390', '-82.40450'), ('LOCHLOOSA', None, '29.51120', '-82.10070'), ('MELROSE', None, '29.70930', '-82.05010'), ('MICANOPY', 653, '29.50610', '-82.28080'), ('NEWBERRY', 3316, '29.64480', '-82.61230'), ('NEWNANS LAKE', None, '29.64950', '-82.23990'), ('ORANGE HEIGHTS', None, '29.71930', '-82.13970'), ('ROCHELLE', None, '29.59630', '-82.21790'), ('WALDO', 821, '29.79050', '-82.17170')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLZ035': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BELL', 349, '29.75580', '-82.86190'), ('TRENTON', 1617, '29.61420', '-82.81680')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLZ034': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('CROSS CITY', 1775, '29.63200', '-83.12610'), ('CROSS CITY A/P', None, '29.63380', '-83.10500'), ('FIRST DISTRICT', None, '29.74660', '-82.98460'), ('HINES', None, '29.73730', '-83.23680'), ('HORSESHOE BEACH', 206, '29.44020', '-83.28810'), ('JENA', None, '29.66330', '-83.36520'), ('JONESBORO', None, '29.70700', '-83.29510'), ('OLD TOWN', None, '29.59920', '-82.98240'), ('ROCKY CREEK', None, '29.59100', '-83.37740'), ('SHIRED ISLAND', None, '29.39490', '-83.20100'), ('SUWANNEE', None, '29.32810', '-83.14400'), ('YELLOW JACKET', None, '29.46170', '-83.00170')], 'partOfState': '', 'wfo': 'TAE'}, -'FLZ033': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANASTASIA', None, '29.88760', '-81.28980'), ('BAKERSVILLE', None, '29.90590', '-81.49150'), ('BUTLER BEACH', 4436, '29.79820', '-81.26710'), ('CRESCENT BEACH', 985, '29.73110', '-81.23880'), ('DUPONT CENTER', None, '29.75620', '-81.31340'), ('DURBIN', None, '30.08730', '-81.46150'), ('ELKTON', None, '29.78290', '-81.42620'), ('FRUIT COVE', 16077, '30.10090', '-81.61850'), ('GUANA RIVER STATE PARK', None, '30.09000', '-81.34000'), ('HASTINGS', 521, '29.71490', '-81.50790'), ('PALM VALLEY', 19860, '30.19970', '-81.39110'), ('PICOLATA', None, '29.91480', '-81.59320'), ('PONTE VEDRA BEACH', None, '30.23960', '-81.38590'), ('SAWGRASS', 4942, '30.19240', '-81.37080'), ('SOUTH PONTE VEDRA BEACH', None, '30.02220', '-81.32390'), ('SPUDS', None, '29.73950', '-81.47180'), ('ST. AUGUSTINE', 11592, '29.89190', '-81.31080'), ('ST. AUGUSTINE BEACH', 4683, '29.84210', '-81.27110'), ('ST. AUGUSTINE SHORES', 4922, '29.81050', '-81.31070'), ('ST. AUGUSTINE SOUTH', 5035, '29.84250', '-81.31570'), ('SWITZERLAND', None, '30.07590', '-81.64760'), ('VILANO BEACH', None, '29.93830', '-81.30210')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLZ032': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ASBURY LAKE', 2228, '30.04890', '-81.82160'), ('BELLAIR-MEADOWBROOK TERRA', None, '30.18020', '-81.74360'), ('DOCTORS INLET', None, '30.12190', '-81.76710'), ('GREEN COVE SPRINGS', 5378, '29.98970', '-81.67890'), ('KEYSTONE HEIGHTS', 1349, '29.78000', '-82.03370'), ('KINGSLEY', None, '29.96550', '-81.99970'), ('LAKE GENEVA', None, '29.77190', '-82.01060'), ('LAKESIDE', 30927, '30.12970', '-81.76840'), ('MIDDLEBURG', 10338, '30.05050', '-81.90220'), ('ORANGE PARK', 9081, '30.16860', '-81.70470'), ('PENNEY FARMS', 580, '29.98080', '-81.81170')], 'partOfState': 'NORTHEAST', 'wfo': 'JAX'}, -'FLZ031': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BROOKER', 352, '29.88600', '-82.33400'), ('HAMPTON', 431, '29.86400', '-82.13720'), ('LAWTEY', 656, '30.04560', '-82.07080'), ('NEW RIVER', None, '29.96070', '-82.26590'), ('SAMPSON', None, '29.91620', '-82.20830'), ('STARKE', 5593, '29.94690', '-82.11220')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLZ030': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('DUKES', None, '29.96620', '-82.40760'), ('ELLERBEE', None, '30.10540', '-82.20560'), ('JOHNSTOWN', None, '30.04430', '-82.27230'), ('LAKE BUTLER', 1927, '30.02050', '-82.33960'), ('RAIFORD', 187, '30.06410', '-82.23890'), ('WORTHINGTON SPRINGS', 193, '29.93120', '-82.42430')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'KSZ030': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('CEDAR BLUFF', None, '38.78000', '-99.73000'), ('COLLYER', 133, '39.03780', '-100.11810'), ('OGALLAH', None, '38.98000', '-99.73000'), ('RIGA', None, '38.94000', '-99.63000'), ('TREGO CENTER', None, '38.88000', '-99.90000'), ('VODA', None, '39.04000', '-100.02000'), ('WAKEENEY', 1924, '39.02340', '-99.88130')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'VAZ051': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALANTHUS', None, '38.54190', '-77.93310'), ('CARDOVA', None, '38.53220', '-78.03830'), ('CATALPA', None, '38.51060', '-77.98810'), ('CULPEPER', 9664, '38.47100', '-78.00110'), ('ELKWOOD', None, '38.51170', '-77.85610'), ('JEFFERSONTON', None, '38.63690', '-77.91530'), ('LIGNUM', None, '38.41580', '-77.82690'), ('REVA', None, '38.49390', '-78.13360'), ('RICHARDSVILLE', None, '38.40000', '-77.72920'), ('RIXEYVILLE', None, '38.58000', '-77.97000'), ('STEVENSBURG', None, '38.44310', '-77.90000'), ('WINSTON', None, '38.41000', '-78.00970')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'CAZ061': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BERMUDA DUNES', 6229, '33.74270', '-116.28840'), ('CABAZON', 2229, '33.91140', '-116.77170'), ('CATHEDRAL CITY', 42647, '33.83080', '-116.46340'), ('COACHELLA', 22724, '33.68090', '-116.15230'), ('DESERT HOT SPRINGS', 16582, '33.95910', '-116.50020'), ('INDIAN WELLS', 3816, '33.70540', '-116.34060'), ('INDIO', 49116, '33.71980', '-116.22860'), ('LA QUINTA', 23694, '33.67140', '-116.29220'), ('MECCA', 5402, '33.57590', '-116.07170'), ('PALM DESERT', 41155, '33.73320', '-116.37540'), ('PALM DESERT COUNTRY', None, '33.74060', '-116.31470'), ('PALM SPRINGS', 42807, '33.83020', '-116.54440'), ('RANCHO MIRAGE', 13249, '33.75800', '-116.42560'), ('THOUSAND PALMS', 5120, '33.82180', '-116.38580')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'OKZ059': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('PAWNEE', 2230, '36.33780', '-96.80360'), ('JENNINGS', 373, '36.18110', '-96.56940'), ('TERLTON', 85, '36.18810', '-96.49000'), ('HALLETT', 168, '36.23390', '-96.56720'), ('MARAMEC', 104, '36.24190', '-96.68000'), ('BLACKBURN', 102, '36.37310', '-96.59580'), ('SKEDEE', 102, '36.37940', '-96.70470'), ('CLEVELAND', 3282, '36.31000', '-96.46390'), ('RALSTON', 355, '36.50390', '-96.73190'), ('WESTPORT', 264, '36.21890', '-96.32440')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'RIZ007': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('JAMESTOWN', None, '41.48333', '-71.36667'), ('LITTLE COMPTON', None, '41.50000', '-71.16667'), ('NEWPORT', 26475, '41.49010', '-71.32030'), ('PORTSMOUTH', None, '41.60000', '-71.25000'), ('PRUDENCE ISLAND', None, '41.60000', '-71.31667'), ('TIVERTON', 7282, '41.65420', '-71.20090')], 'partOfState': '', 'wfo': 'BOX'}, -'OKZ058': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('MIAMI', 13704, '36.87440', '-94.87720'), ('COMMERCE', 2645, '36.93330', '-94.87280'), ('AFTON', 1118, '36.69360', '-94.96280'), ('FAIRLAND', 1025, '36.75110', '-94.84720'), ('NARCISSA', 100, '36.80110', '-94.92670'), ('WYANDOTTE', 363, '36.79330', '-94.72500'), ('OTTAWA', None, '36.85670', '-94.78750'), ('PEORIA', 141, '36.91530', '-94.66970'), ('QUAPAW', 984, '36.95440', '-94.78780'), ('CARDIN', 150, '36.97250', '-94.84860'), ('PICHER', 1640, '36.98690', '-94.83060')], 'partOfState': 'NORTHEAST', 'wfo': 'TSA'}, -'ORZ064': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('NYSSA', 3163, '43.87850', '-116.99730'), ('ONTARIO', 10985, '44.02470', '-116.97430'), ('OWYHEE', None, '43.80000', '-117.05000'), ('VALE', 1976, '43.98310', '-117.24050')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOI'}, -'ORZ061': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ANDREWS', None, '42.46670', '-118.61670'), ('BUCHANAN', None, '43.65000', '-118.63330'), ('BURNS', 3064, '43.58770', '-119.06120'), ('CRANE', None, '43.41670', '-118.58330'), ('DIAMOND', None, '43.01670', '-118.68330'), ('DREWSEY', None, '43.79890', '-118.38000'), ('DUNNEAN', None, '43.43330', '-118.25000'), ('FIELDS', None, '42.25970', '-118.66890'), ('FRENCHGLEN', None, '42.82890', '-118.90580'), ('HINES', 1623, '43.56720', '-119.07880'), ('NARROWS', None, '43.27470', '-118.95890'), ('NEW PRINCETON', None, '43.28280', '-118.59890'), ('RILEY', None, '43.53330', '-119.48330'), ('VAN', None, '43.98330', '-118.68330'), ('VENATOR', None, '43.35000', '-118.30000'), ('WAGONTIRE', None, '43.25000', '-119.88330')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOI'}, -'KSZ043': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('GRIGSTON', None, '38.47000', '-100.72000'), ('MANNING', None, '38.54000', '-100.72000'), ('MODOC', None, '38.48000', '-101.07000'), ('SCOTT CITY', 3855, '38.47980', '-100.90840'), ('SCOTT STATE LAKE', None, '38.68000', '-100.92000'), ('SHALLOW WATER', None, '38.36000', '-100.91000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'ORZ063': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ADRIAN', 147, '43.74090', '-117.07010'), ('BEULAH', None, '43.90000', '-118.16670'), ('BROGAN', None, '44.25000', '-117.50000'), ('BURNS JUNCTION', None, '42.78190', '-117.83890'), ('CROWLEY', None, '43.30000', '-117.90000'), ('HARPER', None, '43.85470', '-117.60690'), ('IRONSIDE', None, '44.33330', '-117.93330'), ('JAMIESON', None, '44.18330', '-117.43330'), ('JORDAN VALLEY', 239, '42.97660', '-117.05430'), ('JUNTURA', None, '43.74470', '-118.08580'), ('LITTLE VALLEY', None, '43.90000', '-117.50000'), ('MALHEUR CITY', None, '44.41670', '-117.71670'), ('RIVERSIDE', 189, '43.55000', '-118.15000'), ('ROME', None, '42.83330', '-117.61670'), ('WESTFALL', None, '43.98330', '-117.71670')], 'partOfState': 'SOUTHEAST', 'wfo': 'BOI'}, -'ORZ062': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('OXBOW DAM', None, '44.97000', '-116.85000'), ('BAKER', None, '44.77420', '-117.83160'), ('DURKEE', None, '44.58000', '-117.45000'), ('HAINES', 426, '44.91190', '-117.93900'), ('HALFWAY', 337, '44.87680', '-117.10900'), ('HUNTINGTON', 515, '44.35030', '-117.26600'), ('RICHLAND', 147, '44.76770', '-117.16760'), ('ROCK CREEK', None, '44.91670', '-118.03330'), ('SUMPTER', 171, '44.74380', '-118.19590'), ('UNITY', 131, '44.43680', '-118.18730')], 'partOfState': 'NORTHEAST', 'wfo': 'BOI'}, -'MDZ018': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BROOMES ISLAND', None, '38.41810', '-76.54440'), ('CHESAPEAKE BEACH', 3180, '38.68730', '-76.53590'), ('COVE POINT', None, '38.38110', '-76.38920'), ('DARES BEACH', None, '38.56170', '-76.51580'), ('DRUM POINT', None, '38.32670', '-76.42640'), ('DUNKIRK', 2363, '38.72170', '-76.66080'), ('HUNTINGTOWN', 2436, '38.61580', '-76.61330'), ('LONG BEACH', None, '38.46080', '-76.46920'), ('LOWER MARLBORO', None, '38.65580', '-76.68220'), ('LUSBY', 1666, '38.41060', '-76.45560'), ('MOUNT HARMONY', None, '38.69830', '-76.60440'), ('NORTH BEACH', 1880, '38.70870', '-76.53470'), ('PRINCE FREDERICK', 1432, '38.54860', '-76.58910'), ('SAINT LEONARD', None, '38.47420', '-76.50670')], 'partOfState': 'SOUTHERN', 'wfo': 'LWX'}, -'MDZ019': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('EASTON', 11708, '38.77460', '-76.06980'), ('OXFORD', 771, '38.68930', '-76.17080'), ('QUEEN ANNE', 176, '38.91890', '-75.95400'), ('ST. MICHAELS', 1193, '38.78840', '-76.22220'), ('TRAPPE', 1146, '38.65980', '-76.05840')], 'partOfState': '', 'wfo': 'PHI'}, -'MDZ010': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('CLARKSVILLE', None, '39.20640', '-76.94330'), ('COLUMBIA', 88254, '39.20300', '-76.85800'), ('DAYTON', None, '39.23920', '-76.98690'), ('ELKRIDGE', 22042, '39.20190', '-76.75050'), ('ELLICOTT CITY', 56397, '39.27210', '-76.83460'), ('FULTON', None, '39.15080', '-76.92330'), ('GLENELG', None, '39.26420', '-76.99280'), ('GLENWOOD', None, '39.28750', '-77.02830'), ('HIGHLAND', None, '39.17890', '-76.95780'), ('LISBON', None, '39.33610', '-77.07140'), ('POPLAR SPRINGS', None, '39.34330', '-77.09670'), ('ROXBURY MILLS', None, '39.25810', '-77.05360'), ('SCAGGSVILLE', None, '39.14500', '-76.90060'), ('SIMPSONVILLE', None, '39.18670', '-76.88220'), ('WEST FRIENDSHIP', None, '39.30250', '-76.95310')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'MDZ011': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ARBUTUS', 20116, '39.24260', '-76.69230'), ('BALTIMORE', 651154, '39.30080', '-76.61060'), ('BALTIMORE MARTIN ST', None, '39.33000', '-76.42000'), ('BOWLEYS QUARTERS', 6314, '39.31230', '-76.38230'), ('CARNEY', 28264, '39.40440', '-76.52270'), ('CATONSVILLE', 39820, '39.26450', '-76.74170'), ('CHASE', None, '39.36330', '-76.37140'), ('DUNDALK', 62306, '39.26860', '-76.49740'), ('EDGEMERE', 9248, '39.22290', '-76.45970'), ('ESSEX', 39078, '39.30270', '-76.44600'), ('FELLS POINT', None, '39.26470', '-76.56500'), ('FORT HOWARD', None, '39.20720', '-76.44530'), ('FULLERTON', None, '39.37170', '-76.51140'), ('GUNPOWDER', None, '39.41470', '-76.38810'), ('HAMILTON', None, '39.34080', '-76.55190'), ('HAMPTON', 5004, '39.41830', '-76.57280'), ('HIGHLANDTOWN', None, '39.28690', '-76.54890'), ('LOCHEARN', 25269, '39.34730', '-76.73080'), ('MCDONOGH', None, '39.39110', '-76.76470'), ('MIDDLE RIVER', 23958, '39.33400', '-76.43400'), ('MILFORD MILL', 26527, '39.34770', '-76.77030'), ('OWINGS MILLS', 20193, '39.41130', '-76.79320'), ('PARK HEIGHTS', None, '39.33690', '-76.60780'), ('PARKVILLE', 31118, '39.38400', '-76.55180'), ('PERRY HALL', 28705, '39.40660', '-76.47860'), ('PIKESVILLE', 29123, '39.39140', '-76.70070'), ('RANDALLSTOWN', 30870, '39.37170', '-76.80220'), ('ROSEDALE', 19199, '39.32760', '-76.50840'), ('ROSSVILLE', 11515, '39.35480', '-76.48080'), ('TOWSON', 51793, '39.39500', '-76.62130'), ('WHITE MARSH', 8485, '39.38350', '-76.45860'), ('WOODLAWN', 6251, '39.30670', '-76.74780'), ('WOODSTOCK', None, '39.32860', '-76.87220')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'MDZ012': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BETTERTON', 376, '39.36700', '-76.07250'), ('CHESTERTOWN', 4746, '39.21920', '-76.07050'), ('GALENA', 428, '39.34330', '-75.87920'), ('ROCK HALL', 1396, '39.14050', '-76.24090')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'MDZ013': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ACCOKEEK', 7349, '38.67600', '-77.01630'), ('ADELPHI', 14998, '39.00190', '-76.96550'), ('ANDREWS AFB', 7925, '38.80340', '-76.87180'), ('BADEN', None, '38.65920', '-76.77810'), ('BELTSVILLE', 15690, '39.03680', '-76.92350'), ('BLADENSBURG', 7661, '38.94360', '-76.92620'), ('BOWIE', 50269, '38.95950', '-76.73770'), ('BRANDYWINE', 1410, '38.69850', '-76.85430'), ('BRENTWOOD', 2844, '38.94360', '-76.95710'), ('CAMP SPRINGS', 17968, '38.80360', '-76.92080'), ('CAPITOL HEIGHTS', 4138, '38.87790', '-76.90810'), ('CHELTENHAM', None, '38.73560', '-76.82670'), ('CHEVERLY', 6433, '38.92580', '-76.91390'), ('CLINTON', 26064, '38.76440', '-76.89800'), ('COLLEGE PARK', 24657, '38.99610', '-76.93480'), ('CORAL HILLS', 10720, '38.87170', '-76.92350'), ('EAGLE HARBOR', 55, '38.56640', '-76.68700'), ('FORESTVILLE', 12707, '38.84970', '-76.87480'), ('FRIENDLY', 10938, '38.75640', '-76.96580'), ('GLENARDEN', 6318, '38.93080', '-76.86290'), ('GLENN DALE', 12609, '38.98690', '-76.80090'), ('GREENBELT', 21456, '38.99480', '-76.88570'), ('HYATTSVILLE', 14733, '38.95920', '-76.95340'), ('KETTERING', 11008, '38.89010', '-76.78560'), ('LANDOVER', None, '38.93610', '-76.90150'), ('LANGLEY PARK', 16214, '38.99390', '-76.98210'), ('LARGO', 8408, '38.87950', '-76.83020'), ('LAUREL', 19960, '39.09770', '-76.85860'), ('MARLOW HEIGHTS', 6059, '38.82460', '-76.94960'), ('MARLTON', 7798, '38.75810', '-76.78990'), ('MITCHELLVILLE', 9611, '38.92920', '-76.82330'), ('MONTPELIER', None, '39.06140', '-76.85110'), ('MORNINGSIDE', 1295, '38.82940', '-76.89070'), ('NEW CARROLLTON', 12589, '38.96630', '-76.87690'), ('OXON HILL', None, '38.80330', '-76.99000'), ('OXON HILL', None, '38.79660', '-76.97520'), ('SEAT PLEASANT', 4885, '38.89520', '-76.90250'), ('SUITLAND-SILVER HILL', 33515, '38.84560', '-76.92280'), ('TANTALLON', None, '38.72390', '-77.01000'), ('UPPER MARLBORO', 648, '38.81760', '-76.75540'), ('WOODMORE', 6077, '38.93480', '-76.77500')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'MDZ014': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('(BWI)BALTMOR-WSHNGT', None, '39.17000', '-76.67000'), ('ANNAPOLIS', 35838, '38.97160', '-76.50300'), ('ARNOLD', 23422, '39.04270', '-76.49940'), ('BAY RIDGE', None, '38.93780', '-76.46030'), ('BELVEDERE HEIGHTS', None, '39.05580', '-76.50250'), ('BENFIELD', None, '39.08860', '-76.62250'), ('BROOKLYN PARK', 10938, '39.21700', '-76.61050'), ('CAPE ARTHUR', None, '39.07890', '-76.52500'), ('CAPE ST. CLAIRE', 8022, '39.04430', '-76.44590'), ('CHELSEA BEACH', None, '39.10190', '-76.52030'), ('CROFTON', 20091, '39.01100', '-76.68730'), ('CROWNSVILLE', 1670, '39.01680', '-76.59550'), ('DEALE', 4796, '38.79320', '-76.54660'), ('FERNDALE', 16056, '39.18650', '-76.63440'), ('FORT MEADE', 9882, '39.10810', '-76.74200'), ('GALESVILLE', None, '38.84310', '-76.54390'), ('GIBSON ISLAND', None, '39.07420', '-76.42420'), ('GLEN BURNIE', 38922, '39.16640', '-76.60240'), ('GREEN HAVEN', 17415, '39.13670', '-76.54010'), ('HERALD HARBOR', 2313, '39.05040', '-76.57420'), ('HILLSMERE SHORES', 2977, '38.93190', '-76.49710'), ('JESSUP', 7865, '39.14610', '-76.77300'), ('LAKE SHORE', 13065, '39.09760', '-76.48560'), ('LINTHICUM', 7539, '39.20540', '-76.66600'), ('LONDONTOWNE', 7595, '38.93570', '-76.55800'), ('MAYO', 3153, '38.89170', '-76.50040'), ('MILLERSVILLE', None, '39.05940', '-76.64830'), ('ODENTON', 20534, '39.06120', '-76.69580'), ('PAROLE', 14031, '38.98410', '-76.55310'), ('PASADENA', 12093, '39.11210', '-76.55240'), ('PUMPHREY', 5317, '39.21800', '-76.64290'), ('RIDGEWAY', None, '39.11470', '-76.68390'), ('RIVA', 3966, '38.94600', '-76.58960'), ('SEVERN', 35076, '39.13520', '-76.69160'), ('SEVERNA PARK', 28507, '39.08190', '-76.57250'), ('SHADY SIDE', 5559, '38.83010', '-76.52450'), ('SOUTH GATE', 28672, '39.12890', '-76.62600')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'MDZ015': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BARCLAY', 143, '39.14380', '-75.86420'), ('CENTREVILLE', 1970, '39.04350', '-76.06530'), ('CHURCH HILL', 530, '39.14360', '-75.98070'), ('GRASONVILLE', 2193, '38.95800', '-76.19420'), ('KINGSTOWN', 1644, '39.20620', '-76.04810'), ('MILLINGTON', 416, '39.25820', '-75.84170'), ('QUEENSTOWN', 617, '38.98990', '-76.15590'), ('STEVENSVILLE', 5880, '38.99390', '-76.30890'), ('STEVENSVILLE SOUTH', None, '38.96020', '-76.32930'), ('SUDLERSVILLE', 391, '39.18620', '-75.85850')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'MDZ016': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BEL ALTON', None, '38.46390', '-76.98310'), ('BENEDICT', None, '38.50920', '-76.68000'), ('BRYANTOWN', None, '38.55500', '-76.84220'), ('DENTSVILLE', None, '38.48170', '-76.89280'), ('FAULKNER', None, '38.43890', '-76.97860'), ('HUGHESVILLE', 1537, '38.53870', '-76.78370'), ('INDIAN HEAD', 3422, '38.59850', '-77.15790'), ('IRONSIDES', None, '38.49170', '-77.16000'), ('LA PLATA', 6551, '38.53410', '-76.97050'), ('MARBURY', None, '38.55610', '-77.15850'), ('NANJEMOY', None, '38.45470', '-77.21720'), ('PORT TOBACCO VILLAGE', 15, '38.51140', '-77.02040'), ('POTOMAC HEIGHTS', 1154, '38.60760', '-77.12280'), ('RIPLEY', None, '38.54470', '-77.07860'), ('ST. CHARLES', 33379, '38.60570', '-76.92320'), ('TOMPKINSVILLE', None, '38.32170', '-76.89280'), ('WALDORF', 22312, '38.64190', '-76.90450'), ('WHITE PLAINS', None, '38.59440', '-76.97640'), ('WICOMICO', None, '38.41330', '-76.87690')], 'partOfState': 'SOUTHERN', 'wfo': 'LWX'}, -'MDZ017': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('CALIFORNIA', 9307, '38.29610', '-76.49620'), ('CALLAWAY', None, '38.23830', '-76.51940'), ('CHAPTICO', None, '38.36750', '-76.78330'), ('CHARLOTTE HALL', 1214, '38.47820', '-76.78950'), ('CLEMENTS', None, '38.32610', '-76.72750'), ('DAMERON', None, '38.15220', '-76.36970'), ('GOLDEN BEACH', 2665, '38.48730', '-76.69320'), ('HILLVILLE', None, '38.37250', '-76.60280'), ('HOLLYWOOD', None, '38.34580', '-76.57190'), ('LEONARDTOWN', 1896, '38.29960', '-76.64170'), ('LEXINGTON PARK', 11021, '38.26040', '-76.44590'), ('MECHANICSVILLE', None, '38.43000', '-76.73000'), ('MORGANZA', None, '38.37530', '-76.69580'), ('OAKLEY', None, '38.27280', '-76.74000'), ('PATUXENT RIVER NAS', None, '38.28000', '-76.43000'), ('PINEY POINT', None, '38.14220', '-76.50780'), ('REDGATE', None, '38.25640', '-76.59890'), ('RIDGE', None, '38.11920', '-76.37420'), ('SANDGATES', None, '38.41280', '-76.61560'), ('SOTTERLEY', None, '38.37830', '-76.53330'), ('TINTOP HILL', None, '38.32220', '-76.61890')], 'partOfState': 'SOUTHERN', 'wfo': 'LWX'}, -'INZ078': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AUSTIN', 4724, '38.74340', '-85.81020'), ('LEOTA', None, '38.65000', '-85.85000'), ('LEXINGTON', None, '38.65000', '-85.61670'), ('NABB', None, '38.61000', '-85.63330'), ('NEW FRANKFORT', None, '38.73330', '-85.71670'), ('SCOTTSBURG', 6040, '38.68590', '-85.78090'), ('VIENNA', None, '38.65000', '-85.76670')], 'partOfState': '', 'wfo': 'LMK'}, -'INZ079': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BELLEVIEW', None, '38.85000', '-85.36670'), ('BLOCHER', None, '38.71670', '-85.65000'), ('BROOKSBURG', 74, '38.73500', '-85.24380'), ('BRYANTSBURG', None, '38.88330', '-85.36670'), ('CANAAN', None, '38.86670', '-85.30000'), ('CHELSEA', None, '38.65000', '-85.53330'), ('CHINA', None, '38.81670', '-85.33330'), ('DEPUTY', None, '38.80000', '-85.65000'), ('DUPONT', 392, '38.89110', '-85.51690'), ('HANOVER', 2834, '38.71610', '-85.47200'), ('KENT', None, '38.73330', '-85.53330'), ('LANCASTER', None, '38.83330', '-85.51670'), ('MADISON', 12004, '38.75550', '-85.38330'), ('MANVILLE', None, '38.78330', '-85.28330'), ('NORTH MADISON', None, '38.76670', '-85.40000'), ('PAYNESVILLE', None, '38.61670', '-85.48330'), ('SALUDA', None, '38.65000', '-85.50000'), ('VOLGA', None, '38.78330', '-85.51670'), ('WAKEFIELD', None, '38.78330', '-85.55000'), ('WIRT', None, '38.80000', '-85.45000')], 'partOfState': '', 'wfo': 'LMK'}, -'INZ070': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BEDFORD', 13768, '38.86040', '-86.49080'), ('MITCHELL', 4567, '38.73660', '-86.47550'), ('OOLITIC', 1152, '38.89140', '-86.52640')], 'partOfState': '', 'wfo': 'IND'}, -'INZ071': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROWNSTOWN', 2978, '38.88030', '-86.04610'), ('CROTHERSVILLE', 1570, '38.79640', '-85.84000'), ('MEDORA', 565, '38.82460', '-86.17070'), ('SEYMOUR', 18101, '38.95850', '-85.88640')], 'partOfState': '', 'wfo': 'IND'}, -'INZ072': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('NORTH VERNON', 6515, '39.00780', '-85.63120'), ('VERNON', 330, '38.98510', '-85.61110')], 'partOfState': '', 'wfo': 'IND'}, -'INZ073': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BATESVILLE', 6033, '39.29790', '-85.21830'), ('HOLTON', 407, '39.07560', '-85.38460'), ('MILAN', 1816, '39.12530', '-85.13070'), ('NAPOLEON', 238, '39.20540', '-85.32730'), ('OSGOOD', 1669, '39.12830', '-85.29190'), ('SUNMAN', 805, '39.23390', '-85.09610'), ('VERSAILLES', 1784, '39.06430', '-85.25750')], 'partOfState': '', 'wfo': 'ILN'}, -'INZ074': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('AURORA', 3965, '39.06640', '-84.90330'), ('BRIGHT', 5405, '39.20260', '-84.85760'), ('DILLSBORO', 1436, '39.01860', '-85.06170'), ('GREENDALE', 4296, '39.11770', '-84.86020'), ('HIDDEN VALLEY', 4417, '39.16220', '-84.84310'), ('LAWRENCEBURG', 4685, '39.10040', '-84.86970'), ('MOORES HILL', 635, '39.11340', '-85.08900'), ('ST. LEON', 387, '39.28730', '-84.96720')], 'partOfState': '', 'wfo': 'ILN'}, -'INZ075': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('RISING SUN', 2470, '38.95160', '-84.85710')], 'partOfState': '', 'wfo': 'ILN'}, -'INZ076': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ABYDEL', None, '38.56670', '-86.55000'), ('BACON', None, '38.40000', '-86.43330'), ('BROMER', None, '38.60000', '-86.33330'), ('CHAMBERSBURG', None, '38.51670', '-86.38330'), ('ETHEL', None, '38.40000', '-86.51670'), ('FARGO', None, '38.40000', '-86.48330'), ('FRENCH LICK', 1941, '38.54720', '-86.62020'), ('GREENBRIER', None, '38.46670', '-86.55000'), ('LEIPSIC', None, '38.66670', '-86.36670'), ('MILLERSBURG', 868, '38.55000', '-86.33330'), ('NEWTON STEWART', None, '38.40000', '-86.61670'), ('ORANGEVILLE', None, '38.63330', '-86.55000'), ('ORLEANS', 2273, '38.66200', '-86.45290'), ('PAOLI', 3844, '38.55760', '-86.46920'), ('PROSPECT', None, '38.58330', '-86.61670'), ('PUMPKIN CENTER', None, '38.58330', '-86.36670'), ('ROLAND', None, '38.60000', '-86.68330'), ('SYRIA', None, '38.58330', '-86.40000'), ('VALEENE', None, '38.43330', '-86.40000'), ('WEST BADEN SPRINGS', 618, '38.56770', '-86.61230'), ('YOUNGS CREEK', None, '38.48330', '-86.50000')], 'partOfState': '', 'wfo': 'LMK'}, -'INZ077': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BECKS MILL', None, '38.53330', '-86.15000'), ('BLUE RIVER', None, '38.53330', '-85.93330'), ('BUNKER HILL', 987, '38.56670', '-85.88330'), ('CAMPBELLSBURG', 578, '38.65120', '-86.26080'), ('CANTON', None, '38.63330', '-86.03330'), ('CLAYSVILLE', None, '38.61670', '-86.28330'), ('DAISY HILL', None, '38.50000', '-85.93330'), ('FARABEE', None, '38.55000', '-86.01670'), ('FREDERICKSBURG', 92, '38.43290', '-86.18850'), ('HARDINSBURG', 244, '38.46040', '-86.27270'), ('HITCHCOCK', None, '38.63330', '-86.16670'), ('KOSSUTH', None, '38.70000', '-86.10000'), ('LITTLE YORK', 185, '38.69970', '-85.90390'), ('LIVONIA', 112, '38.55710', '-86.27890'), ('MARTINSBURG', None, '38.45000', '-86.03330'), ('MCKINLEY', None, '38.75000', '-86.20000'), ('MILLPORT', None, '38.76670', '-86.10000'), ('MOUNT CARMEL', 106, '38.71670', '-86.25000'), ('NEW LIBERTY', None, '38.56670', '-85.86670'), ('NEW PEKIN', 1334, '38.50250', '-86.01540'), ('NEW PHILADELPHIA', None, '38.63330', '-85.96670'), ('ORGAN SPRINGS', None, '38.48330', '-86.16670'), ('PLATTSBURG', None, '38.71670', '-86.08330'), ('PUMPKIN CENTER', None, '38.70000', '-85.95000'), ('ROSEBUD', None, '38.53330', '-86.21670'), ('RUSH CREEK VALLEY', None, '38.70000', '-86.16670'), ('SALEM', 6172, '38.60410', '-86.09880'), ('SALTILLO', 107, '38.66570', '-86.29830'), ('SMEDLEY', None, '38.63330', '-86.21670'), ('SOUTH BOSTON', None, '38.58330', '-85.98330')], 'partOfState': '', 'wfo': 'LMK'}, -'NCZ038': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARCADIA', None, '35.95000', '-80.30000'), ('DENTON', 1450, '35.63660', '-80.11190'), ('GORDONTOWN', None, '35.75000', '-80.12000'), ('HIGH ROCK', None, '35.60000', '-80.23000'), ('LEXINGTON', 19953, '35.80900', '-80.25700'), ('MIDWAY', None, '35.98000', '-80.27000'), ('NEWSOM', None, '35.53000', '-80.18000'), ('THOMASVILLE', 19788, '35.88890', '-80.07660'), ('WELCOME', 3538, '35.91080', '-80.25420')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ039': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARCHDALE', 9014, '35.90380', '-79.96630'), ('ASHEBORO', 21672, '35.71980', '-79.81170'), ('COLERIDGE', None, '35.64000', '-79.60000'), ('FRANKLINVILLE', 1258, '35.74500', '-79.69180'), ('LIBERTY', 2661, '35.85420', '-79.57140'), ('MARTHA', None, '35.62000', '-80.01000'), ('NEW HOPE', None, '35.55000', '-80.02000'), ('RAMSEUR', 1588, '35.73340', '-79.65060'), ('RANDLEMAN', 3557, '35.81700', '-79.80240'), ('SEAGROVE', 246, '35.54150', '-79.77690'), ('STALEY', 347, '35.79460', '-79.55140'), ('TRINITY', 6690, '35.88790', '-80.01450'), ('ULAH', None, '35.64000', '-79.84000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'GAZ077': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BLYTHE', 718, '33.29250', '-82.19950'), ('GIRARD', 227, '33.04080', '-81.71130'), ('KEYSVILLE', 180, '33.23620', '-82.22950'), ('MIDVILLE', 457, '32.82110', '-82.23530'), ('SARDIS', 1171, '32.97300', '-81.76040'), ('WAYNESBORO', 5813, '33.09000', '-82.01370')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'GAZ076': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AVERA', 217, '33.19370', '-82.52960'), ('BARTOW', 223, '32.88270', '-82.47250'), ('LOUISVILLE', 2712, '32.99580', '-82.40040'), ('STAPLETON', 318, '33.21620', '-82.46700'), ('WADLEY', 2088, '32.86460', '-82.40270'), ('WRENS', 2314, '33.20650', '-82.38730')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FFC'}, -'GAZ071': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CULLODEN', 223, '32.86300', '-84.09370'), ('FORSYTH', 3776, '33.03430', '-83.94000')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ070': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('ALDORA', 98, '33.05130', '-84.17410'), ('BARNESVILLE', 5972, '33.05080', '-84.15510'), ('MILNER', 522, '33.11410', '-84.19510')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'GAZ073': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('MIDWAY-HARDWICK', 5135, '33.05130', '-83.24470'), ('MILLEDGEVILLE', 18757, '33.08520', '-83.23980')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'GAZ072': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GRAY', 1811, '33.00740', '-83.53570')], 'partOfState': 'CENTRAL', 'wfo': 'FFC'}, -'NCZ030': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ASKEWVILLE', 180, '36.10970', '-76.94120'), ('AULANDER', 888, '36.22890', '-77.11360'), ('BUENA VISTA', None, '36.12060', '-76.96470'), ('BURDEN', None, '36.15990', '-77.06490'), ('COLERAIN', 221, '36.20100', '-76.76840'), ('CONNARITSA', None, '36.18930', '-77.07430'), ('EDENHOUSE', None, '36.03860', '-76.72500'), ('GOOSE POND', None, '36.17780', '-76.77530'), ('KELFORD', 245, '36.18080', '-77.22420'), ('LEWISTON WOODVILLE', 613, '36.11430', '-77.17990'), ('MERRY HILL', None, '36.01210', '-76.77170'), ('MIDWAY', None, '36.03440', '-76.78440'), ('MOUNT GOULD', None, '36.12100', '-76.76090'), ('POWELLSVILLE', 259, '36.22480', '-76.93200'), ('QUITSNA', None, '35.97400', '-77.08590'), ('REPUBLICAN', None, '36.08250', '-77.05950'), ('ROSEMEAD', None, '36.18000', '-76.86640'), ('ROXOBEL', 263, '36.20180', '-77.23820'), ('TRAP', None, '36.20670', '-76.87110'), ('WAKELON', None, '36.15860', '-76.84390'), ('WHITES CROSSROADS', None, '36.13690', '-76.86610'), ('WINDSOR', 2283, '36.00070', '-76.94390'), ('WOODARD', None, '35.91620', '-76.86170')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ031': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARROWHEAD BEACH', None, '36.22310', '-76.70000'), ('CAPE COLONY', None, '36.01940', '-76.58190'), ('CENTER HILL', None, '36.21480', '-76.60930'), ('CISCO', None, '36.18970', '-76.63420'), ('DRUMMOND POINT', None, '36.06000', '-76.43000'), ('EDENTON', 5394, '36.05580', '-76.60190'), ('GLIDEN', None, '36.30500', '-76.61440'), ('HANCOCK', None, '36.09900', '-76.62860'), ('ICARIA', None, '36.25580', '-76.62750'), ('MACEDONIA', None, '36.10170', '-76.66750'), ('MAVATON', None, '36.17390', '-76.64250'), ('MILL CROSSROADS', None, '36.22190', '-76.66830'), ('ROCKYHOCK', None, '36.18110', '-76.69240'), ('RYLAND', None, '36.27400', '-76.63490'), ('SAINT JOHNS', None, '36.03060', '-76.52690'), ('SIGN PINE', None, '36.30890', '-76.62440'), ('SMALLS CROSSROADS', None, '36.22580', '-76.65670'), ('SOMER', None, '36.06020', '-76.46620'), ('TYNER', None, '36.25140', '-76.63230'), ('VALHALLA', None, '36.13700', '-76.65780')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ032': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEACH SPRINGS', None, '36.20920', '-76.51500'), ('BELVIDERE', None, '36.26850', '-76.53590'), ('BURGESS', None, '36.13470', '-76.40750'), ('CHAPANOKE', None, '36.25400', '-76.37740'), ('FORESTBURG', None, '36.19080', '-76.37830'), ('HARVEY POINT', None, '36.09000', '-76.32000'), ('HERTFORD', 2070, '36.18310', '-76.47460'), ('HICKORY CROSSROADS', None, '36.32030', '-76.54450'), ('HOLIDAY ISLAND', None, '36.08750', '-76.38330'), ('JACOCKS', None, '36.14830', '-76.26410'), ('LIGHT NIXON FORK', None, '36.13220', '-76.49390'), ('NICANOR', None, '36.33220', '-76.47980'), ('PEACH', None, '36.34500', '-76.53610'), ('SMITHTOWN', None, '36.24200', '-76.48450'), ('SNUG HARBOR', None, '36.08240', '-76.43000'), ('STEVENSON POINT', None, '36.10000', '-76.21000'), ('WHITESTON', None, '36.32510', '-76.49860'), ('WINFALL', 554, '36.21060', '-76.45520'), ('WOODVILLE', None, '36.23420', '-76.32670'), ('YEOPIM STATION', None, '36.14200', '-76.52290')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ033': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BANNER ELK', 811, '36.16240', '-81.87230'), ('CROSSNORE', 242, '36.02240', '-81.93140'), ('ELK PARK', 459, '36.15800', '-81.98080'), ('GRANDFATHER MOUNTAIN', None, '36.09850', '-81.84750'), ('INGALLS', None, '35.97140', '-82.01190'), ('MINNEAPOLIS', None, '36.09920', '-81.98720'), ('NEWLAND', 704, '36.08660', '-81.92640'), ('SUGAR MOUNTAIN', 226, '36.12420', '-81.86330')], 'partOfState': '', 'wfo': 'GSP'}, -'GAZ079': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('GENEVA', 114, '32.57960', '-84.55220'), ('JUNCTION CITY', 179, '32.60290', '-84.45830'), ('TALBOTTON', 1019, '32.67730', '-84.54090'), ('WOODLAND', 432, '32.78750', '-84.56110')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FFC'}, -'NCZ035': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BETHLEHEM', 3713, '35.81340', '-81.29240'), ('ELLENDALE', None, '35.92560', '-81.27970'), ('HIDDENITE', None, '35.90360', '-81.09080'), ('MILLERSVILLE', None, '35.85560', '-81.18360'), ('STONY POINT', 1380, '35.86670', '-81.04910'), ('TAYLORSVILLE', 1799, '35.92110', '-81.17930')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ036': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('HARMONY', 526, '35.95840', '-80.77280'), ('LOVE VALLEY', 30, '35.99020', '-80.98520'), ('MOORESVILLE', 18823, '35.57940', '-80.81220'), ('SCOTTS', None, '35.84280', '-81.00940'), ('STATESVILLE', 23320, '35.78670', '-80.88630'), ('TROUTMAN', 1592, '35.70470', '-80.89050'), ('TURNERSBURG', None, '35.90830', '-80.80750'), ('UNION GROVE', None, '36.02440', '-80.86360')], 'partOfState': '', 'wfo': 'GSP'}, -'NCZ037': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ADVANCE', None, '35.93460', '-80.40560'), ('COOLEEMEE', 905, '35.81250', '-80.55750'), ('FARMINGTON', None, '36.00930', '-80.52950'), ('FORK CHURCH', None, '35.88060', '-80.44580'), ('MOCKSVILLE', 4178, '35.89750', '-80.55600'), ('SHEFFIELD', None, '35.96610', '-80.68030')], 'partOfState': '', 'wfo': 'GSP'}, -'OHZ023': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BOLINDALE', 2489, '41.20730', '-80.77780'), ('BROOKFIELD CENTER', 1288, '41.24050', '-80.55820'), ('CHAMPION HEIGHTS', 4727, '41.28810', '-80.84880'), ('CHURCHILL', 2601, '41.17360', '-80.66730'), ('CORTLAND', 6830, '41.33150', '-80.72340'), ('GIRARD', 10902, '41.15460', '-80.69750'), ('HOWLAND CENTER', 6481, '41.25120', '-80.74570'), ('HUBBARD', 8284, '41.16000', '-80.56960'), ('LORDSTOWN', 3633, '41.16540', '-80.85440'), ('MCDONALD', 3481, '41.16420', '-80.72380'), ('MINERAL RIDGE', 3900, '41.13910', '-80.76730'), ('NEWTON FALLS', 5002, '41.18890', '-80.96980'), ('NILES', 20932, '41.18780', '-80.75310'), ('ORANGEVILLE', 189, '41.34330', '-80.52920'), ('SOUTH CANAL', 1346, '41.17730', '-80.98680'), ('TURNPIKE INTERCHANGE', None, '41.21640', '-80.93440'), ('VIENNA', None, '41.25510', '-80.67710'), ('WARREN', 46832, '41.23810', '-80.81690'), ('WEST FARMINGTON', 519, '41.39100', '-80.97350'), ('WEST HILL', 2523, '41.23090', '-80.52740'), ('YANKEE LAKE', 99, '41.27140', '-80.57070')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHZ022': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AURORA', 13556, '41.31220', '-81.34460'), ('BRADY LAKE', 513, '41.16270', '-81.31390'), ('BRIMFIELD', 3248, '41.09020', '-81.35010'), ('GARRETTSVILLE', 2262, '41.28390', '-81.09540'), ('HIRAM', 1242, '41.31020', '-81.14450'), ('KENT', 27906, '41.14710', '-81.36250'), ('LIMAVILLE', 193, '40.98410', '-81.14810'), ('MANTUA', 1046, '41.28140', '-81.22270'), ('RAVENNA', 11771, '41.15980', '-81.24260'), ('STREETSBORO', 12311, '41.23880', '-81.34580'), ('SUGAR BUSH KNOLLS', 227, '41.20490', '-81.34670'), ('WINDHAM', 2806, '41.23620', '-81.03640')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHZ021': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('AKRON', 217074, '41.08040', '-81.52150'), ('BARBERTON', 27899, '41.01190', '-81.60570'), ('BOSTON HEIGHTS', 1186, '41.25570', '-81.50460'), ('CLINTON', 1337, '40.92910', '-81.63110'), ('CUYAHOGA FALLS', 49374, '41.16900', '-81.52260'), ('FAIRLAWN', 7307, '41.12490', '-81.62130'), ('GREEN', 22817, '40.94770', '-81.48650'), ('GREEN', 22817, '40.93630', '-81.43660'), ('HUDSON', 22439, '41.24470', '-81.45120'), ('LAKEMORE', 2561, '41.02130', '-81.42770'), ('MACEDONIA', 9224, '41.31100', '-81.49730'), ('MOGADORE', 3893, '41.05040', '-81.40060'), ('MONTROSE-GHENT', 5261, '41.15730', '-81.64250'), ('MUNROE FALLS', 5314, '41.13970', '-81.43630'), ('NORTHFIELD', 3827, '41.34360', '-81.52970'), ('NORTON', 11523, '41.02880', '-81.64570'), ('PENINSULA', 602, '41.23680', '-81.55300'), ('PIGEON CREEK', 945, '41.11100', '-81.67320'), ('PORTAGE LAKES', 9870, '40.98710', '-81.53660'), ('REMINDERVILLE', 2347, '41.32740', '-81.39730'), ('RICHFIELD', 3286, '41.23170', '-81.63730'), ('SILVER LAKE', 3019, '41.15660', '-81.45950'), ('STOW', 32139, '41.17660', '-81.43640'), ('TALLMADGE', 16390, '41.10330', '-81.42320'), ('TWINSBURG', 17006, '41.32420', '-81.45290')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'IAZ046': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHURDAN', 418, '42.15470', '-94.47770'), ('DANA', 84, '42.10670', '-94.24010'), ('GRAND JUNCTION', 964, '42.03220', '-94.23650'), ('JEFFERSON', 4626, '42.01880', '-94.37650'), ('PATON', 265, '42.16390', '-94.25470'), ('RIPPEY', 319, '41.93460', '-94.20000'), ('SCRANTON', 604, '42.02040', '-94.54820')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'IAZ047': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEAVER', 53, '42.03780', '-94.14090'), ('BERKLEY', 24, '41.94610', '-94.11360'), ('BOONE', 12803, '42.05250', '-93.87920'), ('BOXHOLM', 215, '42.17330', '-94.10630'), ('FRASER', 137, '42.12680', '-93.97370'), ('LUTHER', 158, '41.96710', '-93.81970'), ('MADRID', 2264, '41.87550', '-93.81970'), ('OGDEN', 2023, '42.03940', '-94.02850'), ('PILOT MOUND', 214, '42.15910', '-94.01870')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ044': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARION', 136, '41.94860', '-95.46250'), ('ASPINWALL', 58, '41.91140', '-95.13480'), ('BUCK GROVE', 49, '41.91870', '-95.39700'), ('CHARTER OAK', 530, '42.06790', '-95.58910'), ('DELOIT', 288, '42.09720', '-95.31750'), ('DENISON', 7339, '42.01830', '-95.34890'), ('DOW CITY', 503, '41.92820', '-95.49420'), ('KIRON', 273, '42.19380', '-95.32670'), ('MANILLA', 839, '41.88910', '-95.23500'), ('RICKETTS', 144, '42.12750', '-95.57420'), ('SCHLESWIG', 833, '42.16190', '-95.43450'), ('VAIL', 452, '42.05980', '-95.20060'), ('WESTSIDE', 327, '42.07520', '-95.10000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'IAZ045': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ARCADIA', 443, '42.08700', '-95.04350'), ('BREDA', 477, '42.18320', '-94.97770'), ('CARROLL', 10106, '42.06920', '-94.86470'), ('COON RAPIDS', 1305, '41.87250', '-94.67650'), ('DEDHAM', 280, '41.90870', '-94.82260'), ('GLIDDEN', 1253, '42.05730', '-94.72520'), ('HALBUR', 202, '42.00550', '-94.97140'), ('LANESBORO', 152, '42.18360', '-94.69100'), ('LIDDERDALE', 186, '42.12390', '-94.78420'), ('MANNING', 1490, '41.90950', '-95.06430'), ('RALSTON', 98, '42.04350', '-94.64500'), ('TEMPLETON', 334, '41.91810', '-94.94230'), ('WILLEY', 103, '41.97840', '-94.82070')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'IAZ042': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ASBURY', 2450, '42.51470', '-90.75850'), ('BALLTOWN', 73, '42.63750', '-90.86850'), ('BALLYCLOUGH', None, '42.43330', '-90.71670'), ('BANKSTON', 27, '42.50870', '-90.96020'), ('BERNARD', 97, '42.31270', '-90.83100'), ('BUDD', None, '42.53330', '-90.81660'), ('CASCADE', 1958, '42.29910', '-91.00990'), ('CATTESE', None, '42.46670', '-90.63330'), ('CENTER GROVE', None, '42.48330', '-90.71670'), ('CENTRALIA', 101, '42.47230', '-90.83680'), ('COTTAGE HILL', None, '42.58330', '-90.91670'), ('DUBUQUE', 57686, '42.50450', '-90.69000'), ('DUBUQUE REGIONAL AIRPORT', None, '42.40000', '-90.71670'), ('DURANGO', 24, '42.56160', '-90.77350'), ('DYERSVILLE', 4035, '42.48040', '-91.11830'), ('EAST RICKARDSVILLE', None, '42.56670', '-90.85000'), ('EDMORE', None, '42.55000', '-90.68330'), ('EPWORTH', 1428, '42.44680', '-90.93420'), ('FARLEY', 1334, '42.44390', '-91.00670'), ('FILLMORE', None, '42.31670', '-90.91670'), ('FIVE POINTS', None, '42.55000', '-90.86670'), ('GRAF', 73, '42.49470', '-90.86890'), ('HOLY CROSS', 339, '42.60150', '-90.99630'), ('JULIEN', None, '42.48330', '-90.78330'), ('KEY WEST', None, '42.45000', '-90.68330'), ('KIDDER', None, '42.46670', '-90.93330'), ('KING', None, '42.40000', '-90.60000'), ('LATTNERVILLE', None, '42.48330', '-90.88330'), ('LORE', None, '42.51670', '-90.80000'), ('LUXEMBURG', 246, '42.60300', '-91.07300'), ('MASSEY', None, '42.43330', '-90.58330'), ('MEKEE', None, '42.50000', '-91.05000'), ('NEW VIENNA', 400, '42.54780', '-91.11340'), ('OLD BALLTOWN', None, '42.63330', '-90.86670'), ('PEOSTA', 651, '42.44880', '-90.85070'), ('RICKARDSVILLE', 191, '42.58360', '-90.87530'), ('ROCKDALE', None, '42.46670', '-90.68330'), ('ROSE', None, '42.56670', '-90.70000'), ('SAGEVILLE', 203, '42.54880', '-90.70370'), ('SHERRILL', 186, '42.60290', '-90.78200'), ('SPECHTS FERRY', None, '42.65000', '-90.73330'), ('WASHINGTON MILLS', None, '42.30000', '-90.78330'), ('WAUPETON', None, '42.66670', '-90.88330'), ('WHITE PINE HOLLOW STATE P', None, '42.63330', '-91.11670'), ('WORTHINGTON', 381, '42.39650', '-91.12060'), ('ZWINGLE', 100, '42.29780', '-90.68690')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'IAZ043': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLENCOE', 231, '41.92970', '-96.08100'), ('CASTANA', 178, '42.07360', '-95.90940'), ('MAPLETON', 1416, '42.16770', '-95.79080'), ('MOORHEAD', 232, '41.92430', '-95.85040'), ('ONAWA', 3091, '42.02740', '-96.08810'), ('RODNEY', 74, '42.20480', '-95.95120'), ('SOLDIER', 207, '41.98460', '-95.77960'), ('TURIN', 75, '42.02040', '-95.96580'), ('UTE', 378, '42.04970', '-95.70560'), ('WHITING', 707, '42.12640', '-96.15070')], 'partOfState': 'WEST CENTRAL', 'wfo': 'OAX'}, -'IAZ040': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AURORA', 194, '42.61920', '-91.72980'), ('BRANDON', 311, '42.31400', '-92.00240'), ('BUFFALO CREEK COUNTY PARK', None, '42.46670', '-91.71670'), ('CEDAR ROCK STATE PARK', None, '42.40000', '-91.80000'), ('CUTSHAW BRIDGE STATE ACCE', None, '42.53330', '-92.05000'), ('FAIRBANK', 1041, '42.63890', '-92.05010'), ('FONTANA COUNTY PARK/CAMPG', None, '42.60000', '-91.91670'), ('HAZLETON', 950, '42.61830', '-91.90540'), ('INDEPENDENCE', 6014, '42.46810', '-91.89100'), ('INDEPENDENCE AIRPORT', None, '42.45000', '-91.95000'), ('JESUP', 2212, '42.47590', '-92.06690'), ('JESUP GOLF COURSE', None, '42.47590', '-92.08330'), ('LAMONT', 503, '42.59870', '-91.64080'), ('LIME CREEK COUNTY PARK', None, '42.33330', '-91.98330'), ('LITTLETON', None, '42.53330', '-92.01670'), ('MONTI', None, '42.38330', '-91.63330'), ('OTTERVILLE', None, '42.51670', '-91.95000'), ('QUASQUETON', 574, '42.39550', '-91.75640'), ('ROWLEY', 290, '42.36840', '-91.84480'), ('STANLEY', 128, '42.64200', '-91.81170'), ('THREE ELMS COUNTY PARK', None, '42.45000', '-91.86670'), ('TROY MILLS WMA', None, '42.31670', '-91.71670'), ('WAPSIPINICON GOLF COURSE', None, '42.48330', '-91.93330'), ('WINTHROP', 772, '42.47330', '-91.73370'), ('WINTHROP GOLF COURSE', None, '42.50000', '-91.65000')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'IAZ041': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BACKBONE STATE PARK', None, '42.61670', '-91.55000'), ('BAILEYS FORD PARK', None, '42.43330', '-91.40000'), ('BUCK CREEK', None, '42.33330', '-91.35000'), ('COFFINS GROVE PARK', None, '42.50000', '-91.53330'), ('COLESBURG', 412, '42.63850', '-91.20090'), ('DELAWARE', 188, '42.47190', '-91.34010'), ('DELHI', 458, '42.43000', '-91.33150'), ('DUNDEE', 179, '42.57970', '-91.54690'), ('EARLVILLE', 900, '42.48300', '-91.26970'), ('EDGEWOOD', 923, '42.64490', '-91.40170'), ('FOUNTAIN SPRINGS PARK', None, '42.61670', '-91.31670'), ('GREELEY', 276, '42.58510', '-91.34190'), ('HOPKINTON', 681, '42.34360', '-91.24870'), ('MANCHESTER', 5257, '42.48520', '-91.45580'), ('MANCHESTER AIRPORT', None, '42.50000', '-91.50000'), ('MASONVILLE', 104, '42.47980', '-91.59180'), ('ONEIDA', None, '42.54110', '-91.35290'), ('PETERSBURG', None, '42.55000', '-91.21670'), ('ROBINSON', None, '42.35000', '-91.58330'), ('RYAN', 410, '42.35260', '-91.48280'), ('TURTLE CREEK PARK', None, '42.41670', '-91.36670'), ('TWIN BRIDGES PARK', None, '42.63330', '-91.28330')], 'partOfState': 'NORTHEAST', 'wfo': 'DVN'}, -'OHZ027': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CAREY', 3901, '40.95150', '-83.38190'), ('HARPSTER', 203, '40.73860', '-83.25060'), ('KIRBY', 132, '40.81340', '-83.41870'), ('MARSEILLES', 124, '40.70120', '-83.39280'), ('NEVADA', 814, '40.81860', '-83.13140'), ('SYCAMORE', 914, '40.95100', '-83.17090'), ('UPPER SANDUSKY', 6533, '40.83100', '-83.28080'), ('WHARTON', 409, '40.86200', '-83.46470')], 'partOfState': 'NORTHWEST', 'wfo': 'CLE'}, -'IAZ048': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AMES', 50731, '42.02340', '-93.62560'), ('CAMBRIDGE', 819, '41.89950', '-93.53090'), ('COLLINS', 499, '41.90250', '-93.30540'), ('COLO', 868, '42.01590', '-93.31850'), ('GILBERT', 987, '42.10740', '-93.64750'), ('HUXLEY', 2316, '41.89600', '-93.60250'), ('KELLEY', 300, '41.95090', '-93.66470'), ('MAXWELL', 807, '41.89140', '-93.39880'), ('MCCALLSBURG', 318, '42.16550', '-93.39030'), ('NEVADA', 6658, '42.01820', '-93.45020'), ('ROLAND', 1324, '42.16700', '-93.50120'), ('SHELDAHL', 336, '41.86410', '-93.69620'), ('SLATER', 1306, '41.88030', '-93.68410'), ('STORY CITY', 3228, '42.18640', '-93.59160'), ('ZEARING', 617, '42.15890', '-93.29650')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'OHZ026': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ADA', 5582, '40.76880', '-83.82390'), ('ALGER', 888, '40.70950', '-83.84460'), ('DUNKIRK', 952, '40.78760', '-83.64250'), ('FOREST', 1488, '40.80310', '-83.51190'), ('KENTON', 8336, '40.64450', '-83.61040'), ('MCGUFFEY', 522, '40.69330', '-83.78590'), ('MOUNT VICTORY', 600, '40.53410', '-83.52020'), ('PATTERSON', 138, '40.78180', '-83.52610'), ('RIDGEWAY', 354, '40.51250', '-83.56850')], 'partOfState': 'WEST CENTRAL', 'wfo': 'ILN'}, -'OHZ025': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BEAVERDAM', 356, '40.83290', '-83.97640'), ('BLUFFTON', 3896, '40.89010', '-83.88590'), ('CAIRO', 499, '40.83130', '-84.08460'), ('ELIDA', 1917, '40.78600', '-84.19980'), ('FORT SHAWNEE', 3855, '40.68120', '-84.13150'), ('HARROD', 491, '40.70840', '-83.92040'), ('LAFAYETTE', 304, '40.75860', '-83.94950'), ('LIMA', 40081, '40.74330', '-84.11140'), ('SPENCERVILLE', 2235, '40.70800', '-84.35320')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'OHZ024': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CONVOY', 1110, '40.91720', '-84.70620'), ('DELPHOS', 6944, '40.84440', '-84.33940'), ('ELGIN', 50, '40.74170', '-84.47610'), ('MIDDLE POINT', 593, '40.85600', '-84.44680'), ('OHIO CITY', 784, '40.77010', '-84.61610'), ('VAN WERT', 10690, '40.86460', '-84.58170'), ('VENEDOCIA', 160, '40.78540', '-84.45550'), ('WILLSHIRE', 463, '40.74660', '-84.79210'), ('WREN', 199, '40.80030', '-84.77410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'IWX'}, -'VAZ061': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ANGOLA', None, '37.40130', '-78.24030'), ('ASHBY', None, '37.57770', '-78.17520'), ('BEAR CREEK LAKE STATE PAR', None, '37.52860', '-78.27020'), ('CARTERSVILLE', None, '37.66000', '-78.10000'), ('CLINTON', None, '37.54290', '-78.12590'), ('CUMBERLAND', None, '37.49610', '-78.24470'), ('DUNCAN', None, '37.71280', '-78.15130'), ('GRAYS SIDING', None, '37.51110', '-78.21270'), ('GUINEA MILLS', None, '37.43690', '-78.33190'), ('HAWK', None, '37.40990', '-78.35580'), ('LAKESIDE VILLAGE', None, '37.66330', '-78.17860'), ('MCRAE', None, '37.46150', '-78.28250'), ('OAK FOREST', None, '37.53640', '-78.19420'), ('RAINES TAVERN', None, '37.36930', '-78.36960'), ('REEDS', None, '37.33780', '-78.40420'), ('STODDERT', None, '37.35030', '-78.29530'), ('SUNNYSIDE', None, '37.47710', '-78.15210'), ('TRENTON MILLS', None, '37.62920', '-78.22860'), ('TRENTS MILL', None, '37.55470', '-78.28970'), ('WHITEVILLE', None, '37.60230', '-78.16810')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'NCZ100': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BALD HEAD ISLAND', 173, '33.86310', '-77.98830'), ('BELVILLE', 285, '34.23000', '-77.98650'), ('BOILING SPRING LAKES', 2972, '34.03180', '-78.06690'), ('BOLIVIA', 148, '34.06750', '-78.14860'), ('CALABASH', 711, '33.89060', '-78.56860'), ('CASWELL BEACH', 370, '33.90480', '-78.04850'), ('FREELAND', None, '34.10690', '-78.53750'), ('HOLDEN BEACH', 787, '33.91330', '-78.25280'), ('LELAND', 1938, '34.25610', '-78.04500'), ('LONG BEACH', None, '33.91030', '-78.11810'), ('LONGWOOD', None, '34.00330', '-78.54250'), ('MACO', None, '34.28690', '-78.14640'), ('MAKATOKA', None, '34.11830', '-78.40750'), ('NAVASSA', 479, '34.25720', '-78.00270'), ('OCEAN ISLE BEACH', 426, '33.89250', '-78.43220'), ('SANDY CREEK', 246, '34.28500', '-78.15700'), ('SHALLOTTE', 1381, '33.97310', '-78.38610'), ('SOUTHPORT', 2351, '33.92140', '-78.02060'), ('SUNSET BEACH', 1824, '33.87470', '-78.51000'), ('SUPPLY', None, '34.01750', '-78.26780'), ('VARNAMTOWN', 481, '33.94190', '-78.23970'), ('WINNABOW', None, '34.28250', '-78.09390'), ('YAUPON BEACH', None, '33.90750', '-78.07640')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCZ101': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAYSHORE', 2512, '34.28950', '-77.78770'), ('CAROLINA BEACH', 4701, '34.03500', '-77.89390'), ('CASTLE HAYNE', 1116, '34.35560', '-77.90030'), ('FORT FISHER', None, '33.96970', '-77.91830'), ('KURE BEACH', 1507, '33.99670', '-77.90750'), ('MURRAYSVILLE', 7279, '34.29560', '-77.84780'), ('MYRTLE GROVE', 7125, '34.13440', '-77.88190'), ('OGDEN', 5481, '34.27220', '-77.81890'), ('SILVER LAKE', 5788, '34.14860', '-77.91800'), ('SMITH CREEK', None, '34.26270', '-77.86380'), ('WILMINGTON', 75838, '34.23110', '-77.94500'), ('WINDEMERE', None, '34.24370', '-77.84500'), ('WRIGHTSBORO', 4496, '34.28830', '-77.92140'), ('WRIGHTSVILLE BEACH', 2593, '34.20830', '-77.79670')], 'partOfState': 'SOUTHEAST', 'wfo': 'ILM'}, -'NCZ102': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('COROLLA', None, '36.37860', '-75.83120')], 'partOfState': 'NORTHEAST', 'wfo': 'AKQ'}, -'NCZ103': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('KILL DEVIL HILLS', 5897, '36.01600', '-75.66750'), ('KITTY HAWK', 2991, '36.07020', '-75.71950'), ('MANTEO', 1052, '35.89900', '-75.66640'), ('NAGS HEAD', 2700, '35.94460', '-75.62650'), ('SOUTHERN SHORES', 2201, '36.11870', '-75.73320'), ('WANCHESE', 1527, '35.83750', '-75.64020')], 'partOfState': '', 'wfo': 'MHX'}, -'CAZ060': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ADELANTO', 18130, '34.56970', '-117.43690'), ('APPLE VALLEY', 54239, '34.52930', '-117.21420'), ('GEORGE AFB', None, '34.58170', '-117.36650'), ('HESPERIA', 62582, '34.41910', '-117.30240'), ('MORONGO VALLEY', 1929, '34.06390', '-116.59180'), ('MOUNTAIN VIEW ACRES', 2521, '34.49680', '-117.34790'), ('VICTORVILLE', 64029, '34.52300', '-117.33160'), ('YUCCA VALLEY', 16865, '34.11120', '-116.42860')], 'partOfState': 'SOUTHWEST', 'wfo': 'SGX'}, -'WIZ021': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BREED', None, '45.06000', '-88.43000'), ('KLONDIKE', None, '45.06000', '-88.16000'), ('LAKEWOOD', None, '45.29000', '-88.51000'), ('MOUNTAIN', None, '45.18000', '-88.48000'), ('TOWNSEND', None, '45.33000', '-88.58000')], 'partOfState': 'NORTHEAST', 'wfo': 'GRB'}, -'COZ051': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AMHERST', None, '40.68000', '-102.17000'), ('FAIRFIELD', None, '40.73800', '-102.47900'), ('HAXTUN', 982, '40.64270', '-102.62880'), ('HIGHLAND CENTER', None, '40.52600', '-102.58900'), ('HOLYOKE', 2261, '40.58490', '-102.30370'), ('PAOLI', 42, '40.61210', '-102.47240'), ('PLEASANT VALLEY', None, '40.61300', '-102.11700'), ('WAGES', None, '40.58400', '-102.45400')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'COZ050': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('JULESBURG', 1467, '40.98670', '-102.26460'), ('MARKS BUTTE', None, '40.81700', '-102.50700'), ('OVID', 330, '40.95990', '-102.38810'), ('SEDGWICK', 191, '40.93480', '-102.52480'), ('SIXTEEN-MILE CORNER', None, '40.76400', '-102.22900')], 'partOfState': 'NORTHEAST', 'wfo': 'BOU'}, -'WIZ026': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('DURAND', 1968, '44.62910', '-91.96060'), ('PEPIN', 878, '44.44240', '-92.14630'), ('STOCKHOLM', 97, '44.48360', '-92.26030')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'COZ059': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BUCKTOWN', None, '39.22000', '-106.30000'), ('LEADVILLE', 2821, '39.24680', '-106.29380'), ('STRINGTOWN', None, '39.23000', '-106.32000'), ('TURQUOISE LAKE', None, '39.27000', '-106.38000'), ('TWIN LAKES DAM', None, '39.08000', '-106.38000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COZ058': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CLIMAX', None, '39.37000', '-106.18000'), ('MOSQUITO PASS', None, '39.28000', '-106.18000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'VAZ086': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('BAVON', None, '37.33250', '-76.28800'), ('BLAKES', None, '37.50630', '-76.37620'), ('CARDINAL', None, '37.42050', '-76.37840'), ('COBBS CREEK', None, '37.50530', '-76.39680'), ('DIGGS', None, '37.43600', '-76.28130'), ('DIXIE', None, '37.50060', '-76.41470'), ('FORT NONSENSE', None, '37.46500', '-76.44490'), ('GWYNN', None, '37.50440', '-76.28860'), ('HUDGINS', None, '37.47100', '-76.32640'), ('LABAN', None, '37.40030', '-76.28360'), ('MATHEWS', None, '37.43340', '-76.32180'), ('MOBJACK', None, '37.37620', '-76.34830'), ('MOON', None, '37.44960', '-76.30350'), ('NEW POINT', None, '37.34880', '-76.28150'), ('NEW POINT COMFORT', None, '37.30630', '-76.27760'), ('NORTH', None, '37.46750', '-76.38050'), ('PEARY', None, '37.37190', '-76.27970'), ('PORT HAYWOOD', None, '37.38610', '-76.31740'), ('REDART', None, '37.47000', '-76.30190'), ('RUFF', None, '37.41000', '-76.31280'), ('SOLES', None, '37.49280', '-76.43720')], 'partOfState': '', 'wfo': 'AKQ'}, -'IAZ093': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BEACONSFIELD', 11, '40.80700', '-94.05040'), ('BENTON', 40, '40.70190', '-94.35940'), ('DELPHOS', 25, '40.66320', '-94.33930'), ('DIAGONAL', 312, '40.81080', '-94.34120'), ('ELLSTON', 57, '40.84040', '-94.10830'), ('KELLERTON', 372, '40.71020', '-94.04880'), ('MALOY', 28, '40.67420', '-94.41120'), ('MOUNT AYR', 1822, '40.71420', '-94.23790'), ('REDDING', 78, '40.60600', '-94.38680'), ('TINGLEY', 171, '40.85280', '-94.19550')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'MTZ019': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ANTELOPE', 43, '48.68970', '-104.45770'), ('ARCHER', None, '48.79270', '-104.81020'), ('COALRIDGE', None, '48.69830', '-104.18860'), ('COMERTOWN', None, '48.89690', '-104.24830'), ('DAGMAR', None, '48.58330', '-104.19770'), ('DALEVIEW', None, '48.91330', '-104.93330'), ('DOOLEY', None, '48.88110', '-104.38880'), ('HOMESTEAD', None, '48.42110', '-104.53830'), ('MEDICINE LAKE', 269, '48.50130', '-104.50410'), ('OUTLOOK', 82, '48.88750', '-104.77720'), ('PLENTYWOOD', 2061, '48.77470', '-104.56190'), ('RAYMOND', None, '48.87630', '-104.57970'), ('RAYMOND PORT OF ENTRY', None, '48.99660', '-104.57500'), ('REDSTONE', None, '48.82160', '-104.94360'), ('RESERVE', 37, '48.60550', '-104.45910')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'WIZ027': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BLOOMER', 3347, '45.10250', '-91.49080'), ('BOYD', 680, '44.95350', '-91.04010'), ('CADOTT', 1345, '44.95120', '-91.15120'), ('CHIPPEWA FALLS', 12925, '44.93250', '-91.39120'), ('CORNELL', 1466, '45.16250', '-91.15230'), ('LAKE WISSOTA', 2458, '44.92020', '-91.30250'), ('NEW AUBURN', 562, '45.19810', '-91.56500'), ('STANLEY', 1898, '44.96250', '-90.94280')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MTZ010': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CUT BANK', 3105, '48.63480', '-112.33020'), ('SANTA RITA', None, '48.77060', '-112.31920')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ011': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BOX ELDER', 794, '48.31720', '-110.01250'), ('GILDFORD', 185, '48.56940', '-110.29890'), ('HAVRE', 9621, '48.54380', '-109.67910'), ('HINGHAM', 157, '48.55560', '-110.42070'), ('INVERNESS', 103, '48.55670', '-110.68330'), ('KREMLIN', 126, '48.56970', '-110.08580'), ('ROCKY BOY', None, '48.25610', '-109.78750'), ('RUDYARD', 275, '48.56000', '-110.55330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ012': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BELT', 633, '47.38600', '-110.92580'), ('BLACK EAGLE', 914, '47.52470', '-111.27750'), ('CASCADE', 819, '47.27070', '-111.70250'), ('CENTERVILLE', None, '47.38970', '-111.14190'), ('FT SHAW', None, '47.50560', '-111.80940'), ('GREAT FALLS', 56690, '47.50480', '-111.29060'), ('MALMSTROM AFB', 4544, '47.50940', '-111.19070'), ('MONARCH', None, '47.09830', '-110.83780'), ('NEIHART', 91, '46.93350', '-110.73570'), ('SAND COULEE', None, '47.39940', '-111.16690'), ('SIMMS', 373, '47.49170', '-111.92720'), ('STOCKETT', None, '47.35670', '-111.16440'), ('SUN PRAIRIE', 1772, '47.53690', '-111.48060'), ('SUN RIVER', 131, '47.53330', '-111.72060'), ('TRACY', None, '47.41310', '-111.15330'), ('ULM', 750, '47.43150', '-111.50640'), ('VAUGHN', 701, '47.56060', '-111.54500')], 'partOfState': 'CENTRAL', 'wfo': 'TFX'}, -'MTZ013': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BIG SANDY', 703, '48.17890', '-110.11290'), ('CARTER', 62, '47.78110', '-110.95560'), ('FLOWEREE', None, '47.72970', '-111.02670'), ('FORT BENTON', 1594, '47.82860', '-110.65510'), ('GERALDINE', 284, '47.60350', '-110.26590'), ('HIGHWOOD', 189, '47.58360', '-110.78940'), ('ILIAD', None, '47.79860', '-109.78530'), ('LOMA', 92, '47.93690', '-110.50280'), ('SQUARE BUTTE', None, '47.51500', '-110.19750'), ('THE KNEES', None, '48.02000', '-111.28330')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ014': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('CANYON CREEK', None, '46.80560', '-112.26360'), ('CRAIG', None, '47.07440', '-111.96250'), ('EAST HELENA', 1642, '46.58830', '-111.91800'), ('HELENA', 25780, '46.59650', '-112.02040'), ('LINCOLN', 1100, '46.95500', '-112.68080'), ('MARYSVILLE', None, '46.75060', '-112.29940'), ('WOLF CREEK', None, '47.00610', '-112.06830')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TFX'}, -'MTZ015': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ALDER', 116, '45.32390', '-112.10640'), ('CAMERON', None, '45.20330', '-111.67780'), ('ENNIS', 840, '45.34530', '-111.72970'), ('HARRISON', 162, '45.70080', '-111.78560'), ('JEFFERS', None, '45.34890', '-111.70470'), ('LAURIN', None, '45.35280', '-112.11720'), ('MCALLISTER', None, '45.44440', '-111.73140'), ('NORRIS', None, '45.56810', '-111.69000'), ('PONY', None, '45.65860', '-111.89080'), ('SHERIDAN', 659, '45.45710', '-112.19150'), ('SILVER STAR', None, '45.69030', '-112.28220'), ('TWIN BRIDGES', 400, '45.54340', '-112.33260'), ('VIRGINIA CITY', 130, '45.29860', '-111.93550'), ('WATERLOO', None, '45.72190', '-112.19140')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'MTZ016': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BOWDOIN', None, '48.39270', '-107.60550'), ('CONTENT', None, '48.02050', '-107.55970'), ('DODSON', 122, '48.39550', '-108.24360'), ('FOURCHETTE', None, '47.73330', '-107.96940'), ('MALTA', 2120, '48.35970', '-107.87360'), ('PHILLIPS', None, '48.09360', '-108.16330'), ('SACO', 224, '48.45720', '-107.34190'), ('SLEEPING BUFFALO', None, '48.48380', '-107.52800'), ('SUN PRAIRIE', 1772, '47.84550', '-107.74580'), ('U L BEND', None, '47.49160', '-107.88330'), ('WAGNER', None, '48.37050', '-108.07690')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'MTZ017': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('DUCK CREEK FISHING ACCESS', None, '47.98440', '-106.52250'), ('FORT PECK', 240, '48.00910', '-106.44910'), ('FRAZER', 452, '48.05910', '-106.04160'), ('GLASGOW', 3253, '48.19690', '-106.63610'), ('HINSDALE', None, '48.39410', '-107.08410'), ('LUSTRE', None, '48.39330', '-105.88160'), ('NASHUA', 325, '48.13220', '-106.35580'), ('OSWEGO', None, '48.05860', '-105.88050'), ('PARK GROVE', None, '48.03020', '-106.44470'), ('SAINT MARIE', None, '48.40220', '-106.53220'), ('TAMPICO', None, '48.30470', '-106.82630'), ('THE BENTONITE PLANT', None, '48.13880', '-107.01940'), ('THE PINES RECREATION AREA', None, '47.83330', '-106.62500'), ('VANDALIA', None, '48.35470', '-106.90910'), ('WHATLEY', None, '48.14880', '-106.51660')], 'partOfState': 'NORTHEAST', 'wfo': 'GGW'}, -'ARZ049': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('AUBREY', 221, '34.71980', '-90.89780'), ('BRICKEYS', None, '34.85000', '-90.58330'), ('GARRET GROVE', None, '34.80000', '-91.08330'), ('HAYNES', 214, '34.88980', '-90.79240'), ('LAGRANGE', 122, '34.65550', '-90.73370'), ('MARIANNA', 5181, '34.77460', '-90.76640'), ('MORO', 241, '34.79250', '-90.98930'), ('NEW SALEM', None, '34.88330', '-91.00000'), ('RONDO', 237, '34.65740', '-90.82020')], 'partOfState': '', 'wfo': 'MEG'}, -'MNZ038': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ASKOV', 368, '46.18870', '-92.78150'), ('BELDEN', None, '46.32230', '-92.31340'), ('BEROUN', None, '45.91030', '-92.95530'), ('BROOK PARK', 156, '45.94890', '-93.07310'), ('BRUNO', 102, '46.28050', '-92.66750'), ('CLOVERDALE', None, '46.01240', '-92.74040'), ('CLOVERTON', None, '46.16810', '-92.31970'), ('DENHAM', 40, '46.36230', '-92.94360'), ('DUQUETTE', None, '46.37040', '-92.55360'), ('DUXBURY', None, '46.12780', '-92.50890'), ('FINLAYSON', 314, '46.20500', '-92.92760'), ('FRIESLAND', None, '46.08630', '-92.92950'), ('GREELY', None, '45.74540', '-93.06860'), ('HARLIS', None, '46.41220', '-92.31280'), ('HENRIETTE', 101, '45.87130', '-93.12000'), ('HINCKLEY', 1291, '46.01450', '-92.93840'), ('KERRICK', 71, '46.33970', '-92.58560'), ('KINGSDALE', None, '46.23840', '-92.31170'), ('MARKVILLE', None, '46.09200', '-92.33080'), ('NICKERSON', None, '46.41130', '-92.49930'), ('PINE CITY', 3043, '45.83090', '-92.96990'), ('ROCK CREEK', 1119, '45.75930', '-92.96600'), ('RUTLEDGE', 196, '46.26000', '-92.86920'), ('SANDSTONE', 1549, '46.12520', '-92.86460'), ('STURGEON LAKE', 347, '46.38330', '-92.82710'), ('WEST ROCK', None, '45.76720', '-93.02180'), ('WILLOW RIVER', 309, '46.32000', '-92.83670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DLH'}, -'WVZ005': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEECH FORK STATE PARK', None, '38.30130', '-82.40990'), ('CEREDO', 1675, '38.39660', '-82.55410'), ('EAST LYNN LAKE', None, '38.15440', '-82.38430'), ('FORT GAY', 819, '38.11850', '-82.59450'), ('KENOVA', 3485, '38.40320', '-82.58010'), ('WAYNE', 1105, '38.22090', '-82.44270')], 'partOfState': '', 'wfo': 'RLX'}, -'WVZ004': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BENWOOD', 1585, '40.01000', '-80.73390'), ('CAMERON', 1212, '39.82640', '-80.57050'), ('GLEN DALE', 1552, '39.94900', '-80.75620'), ('LYNN CAMP', None, '39.77000', '-80.70000'), ('MCMECHEN', 1937, '39.98650', '-80.73320'), ('MOUNDSVILLE', 9998, '39.92280', '-80.74180')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVZ003': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BETHLEHEM', 2651, '40.04470', '-80.69200'), ('CLEARVIEW', 590, '40.14240', '-80.69130'), ('TRIADELPHIA', 817, '40.05060', '-80.62720'), ('VALLEY GROVE', 405, '40.09120', '-80.57070'), ('WEST LIBERTY', 1220, '40.16730', '-80.59480'), ('WHEELING', 31419, '40.07510', '-80.69700')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVZ002': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('BEECH BOTTOM', 606, '40.22630', '-80.65200'), ('BETHANY', 985, '40.20550', '-80.56360'), ('FOLLANSBEE', 3115, '40.33720', '-80.59720'), ('HOOVERSON HEIGHTS', 2909, '40.31840', '-80.57980'), ('WEIRTON', 20411, '40.40090', '-80.56410'), ('WELLSBURG', 2891, '40.28170', '-80.60980')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'WVZ001': {'fullStateName': 'WEST VIRGINIA', 'state': 'WV', 'cities': [('EMPIRE', 300, '40.51100', '-80.62500'), ('STRATTON', 277, '40.52490', '-80.63040'), ('TORONTO', 5676, '40.45890', '-80.60630'), ('CHESTER', 2592, '40.61220', '-80.56380'), ('NEW CUMBERLAND', 1099, '40.49600', '-80.60710'), ('NEWELL', 1602, '40.61750', '-80.60110')], 'partOfState': 'NORTHERN', 'wfo': 'PBZ'}, -'MOZ027': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('HANNIBAL', 17757, '39.70750', '-91.38360'), ('PALMYRA', 3467, '39.79640', '-91.52470'), ('PHILADELPHIA', None, '39.83880', '-91.73900'), ('TAYLOR', None, '39.93820', '-91.52370'), ('WARREN', None, '39.76700', '-91.76700')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'OKZ020': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CUSHING', 8371, '35.97940', '-96.76150'), ('GLENCOE', 583, '36.22610', '-96.92740'), ('MEHAN', None, '36.05000', '-96.93000'), ('PERKINS', 2272, '35.97660', '-97.02810'), ('QUAY', 47, '36.16010', '-96.70970'), ('RIPLEY', 444, '36.01750', '-96.90490'), ('STILLWATER', 39065, '36.13100', '-97.07170'), ('YALE', 1342, '36.11490', '-96.70060')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'ARZ040': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('COVE', 383, '34.43500', '-94.40920'), ('GRANNIS', 575, '34.24010', '-94.32030'), ('HATFIELD', 402, '34.48710', '-94.37870'), ('MENA', 5637, '34.58040', '-94.23670'), ('VANDERVOORT', 120, '34.37960', '-94.36450'), ('WICKES', 675, '34.29970', '-94.33520')], 'partOfState': '', 'wfo': 'LZK'}, -'ARZ043': {'fullStateName': 'ARKANSAS', 'state': 'AR', 'cities': [('ALEXANDER', 614, '34.63030', '-92.44280'), ('BAUXITE', 432, '34.55690', '-92.52600'), ('BENTON', 21906, '34.56920', '-92.57730'), ('BRYANT', 9764, '34.61240', '-92.49200'), ('HASKELL', 2645, '34.50550', '-92.63660'), ('SALEM', 2789, '34.62970', '-92.55550'), ('SHANNON HILLS', 2005, '34.62060', '-92.40850'), ('TRASKWOOD', 548, '34.45190', '-92.66670')], 'partOfState': 'CENTRAL', 'wfo': 'LZK'}, -'OKZ023': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALBERT', None, '35.23000', '-98.40000'), ('ALFALFA', None, '35.21890', '-98.60690'), ('ANADARKO', 6645, '35.06600', '-98.24410'), ('APACHE', 1616, '34.89390', '-98.35820'), ('BINGER', 708, '35.30920', '-98.34370'), ('BOONE', None, '34.90000', '-98.47000'), ('BRIDGEPORT', 109, '35.54870', '-98.37740'), ('CARNEGIE', 1637, '35.10430', '-98.59930'), ('CEMENT', 530, '34.93630', '-98.13620'), ('COGAR', None, '35.33000', '-98.13000'), ('CYRIL', 1168, '34.89940', '-98.20220'), ('EAKLY', 276, '35.30630', '-98.55570'), ('FORT COBB', 667, '35.10000', '-98.44140'), ('GRACEMONT', 336, '35.18780', '-98.25650'), ('HINTON', 2175, '35.49560', '-98.35960'), ('HYDRO', 1060, '35.54880', '-98.57860'), ('LOOKEBA', 131, '35.36480', '-98.36540'), ('STECKER', None, '34.95000', '-98.32000'), ('WASHITA', None, '35.10000', '-98.33000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OKZ024': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CALUMET', 535, '35.60140', '-98.12370'), ('CONCHO', None, '35.62000', '-98.00000'), ('EL RENO', 16212, '35.54450', '-97.96510'), ('MUSTANG', 13156, '35.39260', '-97.72270'), ('NILES', None, '35.43000', '-98.25000'), ('OKARCHE', 1110, '35.72750', '-97.97710'), ('PIEDMONT', 3650, '35.67450', '-97.75370'), ('UNION CITY', 1375, '35.40140', '-97.89850'), ('YUKON', 21043, '35.51680', '-97.76850')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'NMZ016': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ARABELA', None, '33.58700', '-105.17300'), ('CARRIZOZO', 1036, '33.64380', '-105.88330'), ('CORONA', 165, '34.24970', '-105.59670'), ('HONDO', None, '33.38800', '-105.27000'), ('OSCURO', None, '33.48400', '-106.05400'), ('PICACHO', None, '33.35200', '-105.14400'), ('SUNSET', None, '33.33900', '-105.07500')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'OKZ026': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('AGRA', 356, '35.89510', '-96.87010'), ('AVERY', None, '35.88000', '-96.75000'), ('CARNEY', 649, '35.80580', '-97.01540'), ('CHANDLER', 2842, '35.70800', '-96.87650'), ('DAVENPORT', 881, '35.70930', '-96.76560'), ('FALLIS', 28, '35.74920', '-97.11810'), ('JACKTOWN', None, '35.50000', '-97.00000'), ('KENDRICK', 138, '35.78530', '-96.77490'), ('MEEKER', 978, '35.48500', '-96.89360'), ('PRAGUE', 2138, '35.48820', '-96.69430'), ('SPARKS', 137, '35.61090', '-96.81830'), ('STROUD', 2758, '35.76910', '-96.64950'), ('TRYON', 448, '35.87950', '-96.96410'), ('WARWICK', 235, '35.68750', '-97.00000'), ('WELLSTON', 825, '35.68790', '-97.06180')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'OKZ027': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ACME', None, '34.80000', '-98.02000'), ('AGAWAM', None, '34.87000', '-97.95000'), ('ALEX', 635, '34.92020', '-97.77940'), ('AMBER', 490, '35.16140', '-97.88050'), ('BRADLEY', 182, '34.87730', '-97.70850'), ('CHICKASHA', 15850, '35.04040', '-97.95230'), ('LAVERTY', None, '34.98000', '-98.07000'), ('MIDDLEBERG', None, '35.10400', '-97.74300'), ('MINCO', 1672, '35.31550', '-97.95120'), ('NINNEKAH', 994, '34.95000', '-97.92000'), ('NORGE', 82, '34.98790', '-97.99570'), ('POCASSET', 192, '35.20000', '-97.93000'), ('RUSH SPRINGS', 1278, '34.77840', '-97.95680'), ('TABLER', None, '35.05000', '-97.82000'), ('TUTTLE', 4294, '35.29610', '-97.75190'), ('VERDEN', 659, '35.08370', '-98.08710')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'WIZ024': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('BAY CITY', 465, '44.58530', '-92.45260'), ('ELLSWORTH', 2909, '44.73740', '-92.47980'), ('ELMWOOD', 841, '44.78010', '-92.14930'), ('MAIDEN ROCK', 121, '44.56780', '-92.30840'), ('PLUM CITY', 574, '44.63300', '-92.19180'), ('PRESCOTT', 3764, '44.75070', '-92.79010'), ('RIVER FALLS', 12560, '44.85570', '-92.62160'), ('SPRING VALLEY', 1189, '44.85000', '-92.23980')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MPX'}, -'MOZ025': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ATLANTA', 450, '39.89800', '-92.47980'), ('BEVIER', 723, '39.74910', '-92.56370'), ('CALLAO', 291, '39.76220', '-92.62320'), ('ELMER', 98, '39.95760', '-92.64980'), ('ETHEL', 100, '39.89350', '-92.74040'), ('LA PLATA', 1486, '40.02500', '-92.49090'), ('MACON', 5538, '39.73870', '-92.47050'), ('NEW CAMBRIA', 222, '39.77530', '-92.75130'), ('SOUTH GIFFORD', 72, '40.02590', '-92.68230')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'EAX'}, -'NMZ010': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ABO', None, '34.45600', '-106.33300'), ('CANONCITO', None, '35.13700', '-106.37300'), ('CARNUEL', 872, '35.06400', '-106.45700'), ('CEDAR CREST', 1060, '35.10800', '-106.37200'), ('CEDRO', None, '35.02200', '-106.35300'), ('CHILILI', 113, '34.88900', '-106.23200'), ('EDGEWOOD', 1893, '35.08390', '-106.17490'), ('ESCABOSA', None, '34.92500', '-106.28900'), ('GOLDEN', None, '35.26700', '-106.21300'), ('MADRID', 149, '35.40700', '-106.15200'), ('MANZANO', 54, '34.64700', '-106.34400'), ('MIERA', None, '34.96500', '-106.29100'), ('PLACITAS', 3452, '35.30700', '-106.42400'), ('PONDEROSA', 310, '34.98100', '-106.30300'), ('SAN ANTONITO', None, '35.16300', '-106.34700'), ('SANDIA HEIGHTS', None, '35.17690', '-106.49070'), ('SANDIA PARK', None, '35.16800', '-106.36500'), ('SEDILLO', None, '35.10000', '-106.29500'), ('TAJIQUE', 148, '34.75200', '-106.28700'), ('TIJERAS', 474, '35.08840', '-106.37490'), ('TORREON', 244, '34.72200', '-106.29800')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'NMZ011': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BINGHAM', None, '33.88900', '-106.37200'), ('CEDARVALE', None, '34.37100', '-105.70100'), ('CHAMITA', None, '35.07000', '-106.09600'), ('CHAPELLE', None, '35.38900', '-105.29300'), ('CLAUNCH', None, '34.14200', '-105.99400'), ('CLINES CORNERS', None, '35.00900', '-105.66900'), ('DURAN', None, '34.46700', '-105.39600'), ('EL PORVENIR', None, '35.69700', '-105.38200'), ('ENCINO', 94, '34.65100', '-105.45800'), ('ESTANCIA', 1584, '34.76030', '-106.06020'), ('GALLINAS', None, '35.67900', '-105.35300'), ('GALLISTEO', None, '35.39600', '-105.94600'), ('GLORIETA', 859, '35.58300', '-105.76900'), ('GRAN QUIVIRA', None, '34.26400', '-106.10100'), ('LAMY', 137, '35.48100', '-105.87900'), ('LOWER COLONIAS', None, '35.54200', '-105.58300'), ('MANUELITAS', None, '35.80100', '-105.27800'), ('MCINTOSH', None, '34.86500', '-106.05100'), ('MINERAL HILL', None, '35.61000', '-105.40100'), ('MONTEZUMA', None, '35.65200', '-105.27600'), ('MORIARTY', 1765, '35.00140', '-106.04370'), ('MOUNTAINAIR', 1116, '34.52080', '-106.24290'), ('NORTH SAN YSIDRO', None, '35.46900', '-105.55300'), ('OJITOS FRIOS', None, '35.51700', '-105.31700'), ('PECOS', 1441, '35.57500', '-105.67870'), ('RIBERA', None, '35.37400', '-105.44800'), ('ROWE', None, '35.49200', '-105.67500'), ('SAN GERONIMO', None, '35.58000', '-105.39500'), ('SAN IGNACIO', None, '35.77100', '-105.35400'), ('SAN JOSE', None, '35.39700', '-105.47400'), ('SAN JUAN', 592, '35.14600', '-105.36500'), ('SAN MIGUEL', None, '35.36400', '-105.45000'), ('SAN PABLO', None, '35.54700', '-105.39900'), ('SENA', None, '35.29800', '-105.39200'), ('SOUTH SAN YSIDRO', None, '35.45000', '-105.57700'), ('STANLEY', None, '35.14800', '-105.97600'), ('TECOLOTE', None, '35.46000', '-105.28000'), ('TIERRA MONTE', None, '35.85900', '-105.34700'), ('VILLANUEVA', None, '35.26700', '-105.36000'), ('WILLARD', 240, '34.59440', '-106.03370')], 'partOfState': 'CENTRAL', 'wfo': 'ABQ'}, -'NMZ012': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('ANTON CHICO', None, '35.20000', '-105.14200'), ('BELL RANCH', None, '35.53000', '-104.09400'), ('COLONIAS', None, '35.11000', '-104.84700'), ('CONCHAS', None, '35.40300', '-104.18900'), ('CUERVO', None, '35.03100', '-104.40800'), ('DILIA', None, '35.19300', '-105.06300'), ('MILAGRO', None, '34.93800', '-105.23900'), ('MOSQUERO', 120, '35.77450', '-103.95430'), ('NEWKIRK', None, '35.06800', '-104.26400'), ('PASTURA', None, '34.78300', '-104.94400'), ('PINTADA', None, '34.88200', '-105.07200'), ('PUERTO DE LUNA', None, '34.83200', '-104.62100'), ('SAN IGNACIO', None, '34.91300', '-104.94500'), ('SANTA ROSA', 2744, '34.94340', '-104.67670'), ('SANTA ROSA LAKE STATE PAR', None, '35.03300', '-104.68300'), ('VAUGHN', 539, '34.60660', '-105.21230')], 'partOfState': 'NORTHEAST', 'wfo': 'ABQ'}, -'TNZ048': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ASHPORT', None, '35.76670', '-89.80000'), ('EDITH', None, '35.85000', '-89.55000'), ('FT PILLOW', None, '35.66670', '-89.75000'), ('FULTON', None, '35.61670', '-89.88330'), ('GATES', 901, '35.83940', '-89.40780'), ('HALLS', 2311, '35.86670', '-89.40000'), ('HENNING', 970, '35.67330', '-89.57540'), ('RIPLEY', 7844, '35.74590', '-89.53410')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'TNZ049': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ATOKA', 3235, '35.44520', '-89.77270'), ('BRIGHTON', 1719, '35.47980', '-89.73900'), ('BURLISON', 453, '35.55870', '-89.78540'), ('COVINGTON', 8463, '35.56710', '-89.64940'), ('DIXONVILLE', None, '35.43330', '-89.73330'), ('GARLAND', 309, '35.58650', '-89.75200'), ('GILT EDGE', 489, '35.53280', '-89.83070'), ('MASON', 1089, '35.41320', '-89.53660'), ('MUNFORD', 4708, '35.44980', '-89.80420')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'TNZ046': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ELIZABETHTON', 13372, '36.33880', '-82.23200'), ('HUNTER', 1566, '36.37880', '-82.16330'), ('MILLIGAN COLLEGE', None, '36.26940', '-82.29920'), ('SADIE', None, '36.43190', '-82.05670'), ('WATAUGA', 403, '36.36800', '-82.29230')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ047': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ELK MILLS', None, '36.26940', '-81.99190'), ('HAMPTON', None, '36.28190', '-82.17470'), ('ROAN MOUNTAIN', 1160, '36.18370', '-82.07390')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ044': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('AVONDALE', None, '36.30970', '-82.46420'), ('EMBREEVILLE', None, '36.17970', '-82.46110'), ('FALL BRANCH', 1313, '36.41720', '-82.62340'), ('GRAY', 1273, '36.41120', '-82.47970'), ('JOHNSON CITY', 55469, '36.33140', '-82.36870'), ('JONESBOROUGH', 4168, '36.29360', '-82.47770'), ('LEESBURG', None, '36.29220', '-82.54470'), ('LIBERTY', 367, '36.14000', '-82.61920'), ('LIMESTONE', None, '36.22720', '-82.63280')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ045': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BANNER HILL', 1053, '36.12760', '-82.40560'), ('ERWIN', 5610, '36.14490', '-82.41090'), ('LIMESTONE COVE', None, '36.17860', '-82.26330'), ('ROCKY FORK', None, '36.03390', '-82.55390'), ('UNICOI', 3519, '36.19390', '-82.35170')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ042': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BAILEYTON', 504, '36.32800', '-82.83060'), ('CAMP CREEK', None, '36.08610', '-82.76560'), ('CANEY BRANCH', None, '36.04610', '-82.98580'), ('CHUCKY', None, '36.21390', '-82.69080'), ('GREENEVILLE', 15198, '36.16530', '-82.81900'), ('JEAROLDSTOWN', None, '36.36030', '-82.82190'), ('MOHAWK', None, '36.19940', '-83.05530'), ('MOSHEIM', 1749, '36.19220', '-82.95680'), ('ROMEO', None, '36.29000', '-82.93860'), ('TUSCULUM', 2004, '36.17560', '-82.75090')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ043': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CEDAR CREEK', None, '36.02310', '-82.90360')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ040': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BYBEE', None, '36.04420', '-83.18140'), ('NEWPORT', 7242, '35.96020', '-83.19120'), ('PARROTTSVILLE', 207, '36.00930', '-83.09130')], 'partOfState': '', 'wfo': 'MRX'}, -'TNZ041': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('COSBY', None, '35.81470', '-83.25080'), ('DEL RIO', None, '35.91780', '-83.02830'), ('HARTFORD', None, '35.81470', '-83.14560'), ('ROUND MOUNTAIN', None, '35.83670', '-82.96220')], 'partOfState': '', 'wfo': 'MRX'}, -'VAZ060': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('PRINCE EDWARD STATE FORES', None, '37.17460', '-78.29500'), ('ALLENS MILL', None, '37.26420', '-78.57040'), ('BRIERY', None, '37.09140', '-78.45810'), ('BRIERY CREEK LAKE', None, '37.19900', '-78.44550'), ('BURKES TAVERN', None, '37.19500', '-78.25000'), ('DARLINGTON HEIGHTS', None, '37.20000', '-78.60440'), ('ELAM', None, '37.28450', '-78.61750'), ('FARMVILLE', 6845, '37.29750', '-78.39600'), ('FIVE FORKS', None, '37.23760', '-78.57680'), ('GREEN BAY', None, '37.13190', '-78.30530'), ('HAMPDEN SYDNEY', 1264, '37.24080', '-78.45790'), ('KINGSVILLE', None, '37.24580', '-78.44420'), ('MORAN', None, '37.23140', '-78.26000'), ('PAMPLIN CITY', 199, '37.26360', '-78.68210'), ('PRINCE EDWARD LAKE', None, '37.17230', '-78.27400'), ('PROSPECT', None, '37.30450', '-78.55950'), ('RICE', None, '37.27170', '-78.29060'), ('SCHOLFIELD', None, '37.10540', '-78.32450'), ('TUGGLE', None, '37.30580', '-78.48890'), ('TWIN LAKES STATE PARK', None, '37.17190', '-78.27350'), ('VIRSO', None, '37.09360', '-78.40610'), ('WARSHAM', None, '37.23000', '-78.44330')], 'partOfState': 'CENTRAL', 'wfo': 'AKQ'}, -'MIZ019': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BEAVER ISLAND', None, '45.70000', '-85.55000'), ('BOYNE CITY', 3503, '45.18400', '-84.95670'), ('BOYNE FALLS', 370, '45.16650', '-84.90000'), ('CHARLEVOIX', 2994, '45.32000', '-85.26000'), ('CLARION', None, '45.28360', '-84.90410'), ('EAST JORDAN', 2507, '45.15780', '-85.13030'), ('HORTON BAY', None, '45.28330', '-85.08460'), ('IRONTON', None, '45.26000', '-85.20000'), ('NORWOOD', None, '45.24000', '-85.39000'), ('WALLOON LAKE', None, '45.26710', '-84.91700')], 'partOfState': 'NORTHERN', 'wfo': 'APX'}, -'OHZ020': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BRIARWOOD BEACH', None, '41.07490', '-81.90490'), ('BRUNSWICK', 33388, '41.24570', '-81.82120'), ('CHIPPEWA-ON-THE-LAKE', None, '41.07010', '-81.90370'), ('GLORIA GLENS PARK', 538, '41.05830', '-81.90090'), ('LODI', 3061, '41.03370', '-82.01310'), ('MEDINA', 25139, '41.13620', '-81.86740'), ('SEVILLE', 2160, '41.02240', '-81.86770'), ('SPENCER', 747, '41.09750', '-82.12280'), ('WADSWORTH', 18437, '41.02380', '-81.73190'), ('WESTFIELD CENTER', 1054, '41.02660', '-81.93340')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'NMZ018': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('FORT SUMNER', 1249, '34.47810', '-104.23720'), ('SUMNER LAKE', None, '34.60300', '-104.38100'), ('TAIBAN', None, '34.44400', '-104.00900'), ('YESO', None, '34.43900', '-104.60900')], 'partOfState': 'EAST CENTRAL', 'wfo': 'ABQ'}, -'NMZ019': {'fullStateName': 'NEW MEXICO', 'state': 'NM', 'cities': [('BITTER LAKE WILDLIFE REFU', None, '33.45900', '-104.40400'), ('DEXTER', 1235, '33.19470', '-104.36840'), ('ELKINS', None, '33.69400', '-104.05400'), ('GREENFIELD', None, '33.16500', '-104.34900'), ('HAGERMAN', 1168, '33.11350', '-104.32830'), ('LAKE ARTHUR', 432, '32.99970', '-104.36340'), ('MESA', None, '33.98400', '-104.67700'), ('MIDWAY', None, '33.29500', '-104.45000'), ('ROSWELL', 45293, '33.37110', '-104.52940'), ('ROSWELL CORRECTIONAL FACI', None, '33.13300', '-104.53300')], 'partOfState': 'SOUTHEAST', 'wfo': 'ABQ'}, -'WYZ016': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('CROWHEART', 163, '43.31000', '-109.19000'), ('DUBOIS', 962, '43.53630', '-109.64210')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'TXZ088': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOMARTON', None, '33.50000', '-99.43000'), ('LAKE KEMP', None, '33.75000', '-99.23000'), ('MABELLE', None, '33.67000', '-99.13000'), ('RED SPRINGS', None, '33.62000', '-99.42000'), ('ROUND TIMBER', None, '33.43000', '-99.08000'), ('SEYMOUR', 2908, '33.59690', '-99.25930'), ('WESTOVER', None, '33.50000', '-99.02000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'TXZ089': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANARENE', None, '33.48000', '-98.67000'), ('ARCHER CITY', 1848, '33.59350', '-98.62520'), ('DUNDEE', None, '33.73000', '-98.90000'), ('HOLLIDAY', 1632, '33.81290', '-98.68970'), ('LAKE DIVERSION', None, '33.80000', '-98.95000'), ('LAKE KICKAPOO', None, '33.65000', '-98.78000'), ('LAKESIDE CITY', 984, '33.82820', '-98.54120'), ('MANKINS', None, '33.78000', '-98.80000'), ('MEGARGEL', 248, '33.45330', '-98.92920'), ('SCOTLAND', 438, '33.64870', '-98.45560'), ('WINDTHORST', 440, '33.57550', '-98.43670')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'AZZ018': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CANYON DAY', 1092, '33.78140', '-110.02620'), ('CARRIZO', None, '33.99385', '-110.28519'), ('JAKES CORNER', None, '34.01008', '-111.31897'), ('KOHLS RANCH', None, '34.32365', '-111.10196'), ('PAYSON', 13620, '34.24260', '-111.32700'), ('PINE', 1931, '34.38660', '-111.45822'), ('RYE', None, '34.10890', '-111.35345'), ('STAR VALLEY', None, '34.25473', '-111.25447'), ('STRAWBERRY', 1028, '34.40743', '-111.49093'), ('TONTO VILLAGE', None, '34.31586', '-111.13446'), ('WASHINGTON PARK', None, '34.42242', '-111.27084'), ('YOUNG', 561, '34.10170', '-110.94659')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FGZ'}, -'AZZ016': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ARIPINE', None, '34.40696', '-110.43454'), ('CIBECUE', 1331, '34.02950', '-110.48220'), ('CLAY SPRINGS', None, '34.36114', '-110.29491'), ('CLINTS WELL', None, '34.55486', '-111.31176'), ('FOREST LAKES', None, '34.33720', '-110.80430'), ('HAPPY JACK', None, '34.74263', '-111.40526'), ('HEBER-OVERGAARD', 2722, '34.41400', '-110.56880'), ('LINDEN', None, '34.28522', '-110.16187'), ('PINEDALE', None, '34.30730', '-110.24932'), ('SHOW LOW', 7695, '34.23730', '-110.04430'), ('SHUMWAY', None, '34.40457', '-110.07875')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGZ'}, -'AZZ017': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ALPINE', None, '33.84650', '-109.13844'), ('EAGAR', 4033, '34.10490', '-109.29210'), ('EAST FORK', 880, '33.80640', '-109.93140'), ('FORT APACHE', None, '33.79026', '-109.98163'), ('GREER', None, '34.01467', '-109.45689'), ('MCNARY', 349, '34.09580', '-109.85050'), ('NUTRIOSO', None, '33.95376', '-109.20684'), ('PINETOP-LAKESIDE', 3582, '34.14810', '-109.96640'), ('SPRINGERVILLE', 1972, '34.13220', '-109.28090'), ('THREE FORKS', None, '33.85438', '-109.31159'), ('VERNON', None, '34.25466', '-109.69178'), ('WHITERIVER', 5220, '33.83890', '-109.96160')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'AZZ014': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CONCHO', None, '34.47484', '-109.60690'), ('HUNT', None, '34.60929', '-109.63456'), ('LYMAN LAKE STATE PARK', None, '34.36050', '-109.38039'), ('ST. JOHNS', 3269, '34.50990', '-109.37680')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'MOZ029': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AVONDALE', 529, '39.15350', '-94.54500'), ('BIRMINGHAM', 214, '39.16660', '-94.45040'), ('CLAYCOMO', 1267, '39.19950', '-94.47680'), ('EXCELSIOR SPRINGS', 10847, '39.33790', '-94.23550'), ('GLADSTONE', 26365, '39.21280', '-94.55890'), ('GLENAIRE', 553, '39.22000', '-94.45000'), ('HOLT', 405, '39.45420', '-94.34410'), ('KEARNEY', 5472, '39.36440', '-94.36150'), ('LIBERTY', 26232, '39.24200', '-94.41910'), ('MISSOURI CITY', 295, '39.23810', '-94.30090'), ('MOSBY', 242, '39.31960', '-94.30080'), ('NORTH KANSAS CITY', 4714, '39.13920', '-94.56400'), ('NORTHMOOR', 399, '39.18430', '-94.60660'), ('OAKS', 136, '39.19700', '-94.57190'), ('OAKVIEW', 386, '39.20800', '-94.57080'), ('OAKWOOD', 197, '39.20030', '-94.57210'), ('OAKWOOD PARK', 183, '39.20570', '-94.57280'), ('PLEASANT VALLEY', 3321, '39.21840', '-94.48130'), ('PRATHERSVILLE', 111, '39.31410', '-94.27630'), ('RANDOLPH', 47, '39.15640', '-94.49060'), ('SMITHVILLE', 5514, '39.38150', '-94.57410')], 'partOfState': 'WEST CENTRAL', 'wfo': 'EAX'}, -'AZZ012': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ANGELL', None, '35.19736', '-111.30345'), ('CAMERON', 978, '35.84830', '-111.43190'), ('GRAY MOUNTAIN', None, '35.74646', '-111.47160'), ('LEUPP', 970, '35.28539', '-110.96149'), ('LEUPP', 970, '35.29540', '-111.00060'), ('METEOR CRATER', None, '35.02704', '-111.02222'), ('RIMMY JIMS', None, '35.11064', '-111.02943'), ('SUNRISE', None, '35.30049', '-110.98789'), ('TWIN ARROWS', None, '35.16090', '-111.26971'), ('TWO GUNS', None, '35.11803', '-111.08982'), ('WINONA', None, '35.20190', '-111.40681'), ('WUPATKI NATIONAL MONUMENT', None, '35.52170', '-111.37058')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGZ'}, -'AZZ013': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('SNOWFLAKE', 4460, '34.52200', '-110.08420'), ('TAYLOR', 3176, '34.44990', '-110.11150'), ('WINSLOW', 9520, '35.02780', '-110.70690'), ('WOODRUFF', None, '34.78148', '-110.04171')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'AZZ010': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CHILCHINBITO', 462, '36.52861', '-110.07864'), ('CHINLE', 5366, '36.15190', '-109.58000'), ('DENNEHOTSO', 734, '36.82150', '-109.88380'), ('KEAMS CANYON', 260, '36.81187', '-110.19369'), ('LUKACHUKAI', 1565, '36.40010', '-109.25690'), ('MANY FARMS', 1548, '36.35030', '-109.61850'), ('MEXICAN WATER', None, '36.96808', '-109.63615'), ('NAZLINI', 397, '35.90127', '-109.44868'), ('RED MESA', 237, '36.96002', '-109.35625'), ('ROCK POINT', 724, '36.71961', '-109.62629'), ('ROUGH ROCK', 469, '36.40950', '-109.86750'), ('ROUND ROCK', 601, '36.51090', '-109.47181'), ('TEEC NOS POS', 799, '36.92910', '-109.08210'), ('TOTACON', None, '36.84980', '-109.42666'), ('TWIN FALLS', None, '36.86591', '-109.08827')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'TXZ083': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ACME', None, '34.32000', '-99.83000'), ('CHILLICOTHE', 798, '34.25560', '-99.51390'), ('GOODLETT', None, '34.35000', '-99.88000'), ('MEDICINE MOUND', None, '34.18780', '-99.59420'), ('NORTH GROESBECK', None, '34.42000', '-99.87000'), ('QUANAH', 3022, '34.29560', '-99.74250')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'VAZ007': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('AMONATE', None, '37.18330', '-81.65000'), ('ASBERRYS', None, '37.01670', '-81.55000'), ('BANDY', None, '37.15000', '-81.71670'), ('BLUEFIELD', 5078, '37.23690', '-81.26610'), ('BOISSEVAIN', None, '37.28330', '-81.38330'), ('BURKES GARDEN', None, '37.10000', '-81.35000'), ('CEDAR BLUFF', 1085, '37.08680', '-81.76390'), ('CLAYPOOL HILL', 1719, '37.06510', '-81.75600'), ('CLIFFIELD', None, '37.10000', '-81.66670'), ('GLEN BURKE', None, '37.15000', '-81.85000'), ('GRATTON', None, '37.13330', '-81.41670'), ('JEWELL RIDGE', None, '37.18330', '-81.80000'), ('POCAHONTAS', 441, '37.30580', '-81.34320'), ('RAVEN', 2593, '37.09420', '-81.86200'), ('RICHLANDS', 4144, '37.09520', '-81.80230'), ('TAZEWELL', 4206, '37.11670', '-81.51670'), ('TIPTOP', None, '37.20000', '-81.43330')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAZ006': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CASTLEWOOD', 2036, '36.87830', '-82.28720'), ('CLEVELAND', 148, '36.94360', '-82.15250'), ('COLLINGWOOD', None, '36.73580', '-82.32670'), ('DYE', None, '37.06670', '-81.92670'), ('HANSONVILLE', None, '36.82110', '-82.14860'), ('HONAKER', 945, '37.01620', '-81.97720'), ('LEBANON', 3273, '36.89940', '-82.07850'), ('ROSEDALE', None, '36.95610', '-81.93310'), ('ST. PAUL', 1000, '36.90550', '-82.31030')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'VAZ005': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CLINCHPORT', 77, '36.67930', '-82.74500'), ('DUFFIELD', 62, '36.71990', '-82.79780'), ('DUNGANNON', 317, '36.82840', '-82.46760'), ('FORT BLACKMORE', None, '36.77000', '-82.58780'), ('GATE CITY', 2159, '36.63860', '-82.58120'), ('HILTONS', None, '36.65280', '-82.46780'), ('NICKELSVILLE', 448, '36.75130', '-82.41630'), ('WEBER CITY', 1333, '36.62240', '-82.56030')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'VAZ004': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('DAVENPORT', None, '37.10060', '-82.13710'), ('GRUNDY', 1105, '37.27680', '-82.10000'), ('HURLEY', None, '37.42030', '-82.02020'), ('VANSANT', 989, '37.23060', '-82.08960')], 'partOfState': '', 'wfo': 'RLX'}, -'RIZ006': {'fullStateName': 'RHODE ISLAND', 'state': 'RI', 'cities': [('CHARLESTOWN', None, '41.38333', '-71.65000'), ('EXETER', None, '41.56667', '-71.68333'), ('HOPKINTON', None, '41.45000', '-71.78333'), ('KINGSTON', 5446, '41.47220', '-71.52340'), ('NARRAGANSETT', None, '41.42710', '-71.46690'), ('NORTH KINGSTOWN', None, '41.51000', '-71.45000'), ('RICHMOND', None, '41.50000', '-71.63333'), ('SOUTH KINGSTOWN', None, '41.43333', '-71.55000'), ('WESTERLY', 17682, '41.37060', '-71.81030')], 'partOfState': '', 'wfo': 'BOX'}, -'VAZ002': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('APPALACHIA', 1839, '36.90880', '-82.78700'), ('BIG STONE GAP', 4856, '36.86000', '-82.77790'), ('COEBURN', 1996, '36.94570', '-82.46930'), ('NORTON', 3904, '36.93130', '-82.62610'), ('PARDEE', None, '37.00530', '-82.75250'), ('POUND', 1089, '37.12470', '-82.60750'), ('WISE', 3255, '36.97730', '-82.58040')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'VAZ001': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('CUMBERLAND GAP', None, '36.60280', '-83.66530'), ('DRYDEN', 1253, '36.77560', '-82.94310'), ('EWING', 436, '36.63470', '-83.43220'), ('JASPER', None, '36.76640', '-82.82420'), ('JONESVILLE', 995, '36.68820', '-83.11550'), ('PATTONSVILLE', None, '36.69560', '-82.94310'), ('PENNINGTON GAP', 1781, '36.75960', '-83.02890'), ('ROSE HILL', 714, '36.69060', '-83.28920'), ('ST. CHARLES', 159, '36.80390', '-83.05790')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'OKZ042': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ADA', 15691, '34.77700', '-96.66040'), ('AHLOSO', None, '34.78000', '-96.70000'), ('ALLEN', 951, '34.87830', '-96.41400'), ('BYNG', 1090, '34.86940', '-96.66360'), ('FITTSTOWN', None, '34.62000', '-96.63000'), ('FITZHUGH', 204, '34.66230', '-96.77560'), ('FRANCIS', 332, '34.87490', '-96.59260'), ('JESSE', None, '34.58000', '-96.53000'), ('LAWRENCE', None, '34.68000', '-96.72000'), ('LULA', None, '34.70000', '-96.43000'), ('ROFF', 734, '34.62890', '-96.84110'), ('STEEDMAN', None, '34.82000', '-96.47000'), ('STONEWALL', 465, '34.65200', '-96.52500'), ('VANOSS', None, '34.77000', '-96.87000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OUN'}, -'VAZ009': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ADWOLF', 1457, '36.78910', '-81.58850'), ('ALLISON GAP', None, '36.90000', '-81.76670'), ('ATKINS', 1138, '36.86670', '-81.41670'), ('BROADFORD', None, '36.91670', '-81.66670'), ('CHILHOWIE', 1827, '36.80010', '-81.68400'), ('MARION', 6349, '36.83330', '-81.50000'), ('MARION WYTHEVILLE AIRPORT', None, '36.90000', '-81.35000'), ('NEBO', None, '36.93330', '-81.43330'), ('QUARRY', None, '36.85000', '-81.75000'), ('SALTVILLE', 2204, '36.87500', '-81.76280'), ('SUGAR GROVE', 741, '36.76670', '-81.40000'), ('THOMAS BRIDGE', None, '36.76670', '-81.56670')], 'partOfState': 'SOUTHWEST', 'wfo': 'RNK'}, -'VAZ008': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ABINGDON', 7780, '36.70890', '-81.96930'), ('BENHAMS', None, '36.67690', '-82.21940'), ('BRISTOL VA', None, '36.61320', '-82.16810'), ('DAMASCUS', 981, '36.63280', '-81.78930'), ('EMORY-MEADOW VIEW', 2266, '36.77320', '-81.84640'), ('GLADE SPRING', 1374, '36.79040', '-81.77210'), ('HILANDER PARK', None, '36.77560', '-82.08420'), ('HOLSTON', None, '36.77560', '-82.08420'), ('KONNAROCK', None, '36.66420', '-81.63940'), ('LINDELL', None, '36.80280', '-81.90170')], 'partOfState': 'SOUTHWEST', 'wfo': 'MRX'}, -'MNZ078': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELLECHESTER', 172, '44.37090', '-92.51170'), ('CANNON FALLS', 3795, '44.51650', '-92.90260'), ('DENNISON', 168, '44.40340', '-93.02870'), ('GOODHUE', 778, '44.40060', '-92.62160'), ('KENYON', 1661, '44.27240', '-92.98580'), ('PINE ISLAND', 2337, '44.20490', '-92.64960'), ('RED WING', 16116, '44.58190', '-92.60210'), ('WANAMINGO', 1007, '44.30530', '-92.79150'), ('ZUMBROTA', 2789, '44.29450', '-92.67260')], 'partOfState': 'SOUTHEAST', 'wfo': 'MPX'}, -'MNZ079': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEAR VALLEY', None, '44.31433', '-92.45043'), ('CONCEPTION', None, '44.26498', '-92.10136'), ('DUMFRIES', None, '44.34905', '-92.11781'), ('ELGIN', 826, '44.13090', '-92.25390'), ('HAMMOND', 198, '44.22170', '-92.37370'), ('JARRETT', None, '44.23391', '-92.33529'), ('KELLOGG', 439, '44.30700', '-91.99880'), ('LAKE CITY', 4950, '44.44650', '-92.27810'), ('MAPLE SPRINGS', None, '44.41484', '-92.16715'), ('MAZEPPA', 778, '44.27360', '-92.54080'), ('MILLVILLE', 186, '44.24510', '-92.29620'), ('MINNEISKA', 116, '44.19480', '-91.87150'), ('OAK CENTER', None, '44.34905', '-92.39925'), ('PLAINVIEW', 3190, '44.16560', '-92.16890'), ('THEILMAN', None, '44.29788', '-92.20005'), ('WABASHA', 2599, '44.37150', '-92.04510'), ('WEST ALBANY', None, '44.29788', '-92.28595'), ('ZUMBRO FALLS', 177, '44.28690', '-92.42630')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'MNZ074': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('COBDEN', 61, '44.28390', '-94.84770'), ('COMFREY', 367, '44.11090', '-94.90270'), ('EVAN', 91, '44.35250', '-94.83690'), ('HANSKA', 443, '44.14810', '-94.49460'), ('NEW ULM', 13594, '44.31310', '-94.46370'), ('SLEEPY EYE', 3515, '44.29990', '-94.72480'), ('SPRINGFIELD', 2215, '44.23790', '-94.97680')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ075': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('COURTLAND', 538, '44.26650', '-94.34400'), ('LAFAYETTE', 529, '44.44830', '-94.39330'), ('NICOLLET', 889, '44.27560', '-94.18810'), ('NORTH MANKATO', 11798, '44.17620', '-94.03090'), ('ST PETER', None, '44.32900', '-93.96390')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ076': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('CLEVELAND', 673, '44.32380', '-93.83510'), ('HEIDELBERG', 72, '44.49340', '-93.62360'), ('KASOTA', 680, '44.29020', '-93.96820'), ('KILKENNY', 148, '44.31320', '-93.57430'), ('LE CENTER', 2240, '44.38760', '-93.73290'), ('LE SUEUR', 3922, '44.46320', '-93.90610'), ('MONTGOMERY', 2794, '44.43920', '-93.58050'), ('WATERVILLE', 1833, '44.22270', '-93.57430')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ077': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('DUNDAS', 547, '44.42970', '-93.20490'), ('FARIBAULT', 20818, '44.29740', '-93.27490'), ('LONSDALE', 1491, '44.47760', '-93.42780'), ('MORRISTOWN', 981, '44.22470', '-93.44480'), ('NERSTRAND', 233, '44.34080', '-93.06250'), ('NORTHFIELD', 17147, '44.45440', '-93.16530')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ070': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('APPLE VALLEY', 45527, '44.74920', '-93.19750'), ('BURNSVILLE', 60220, '44.76460', '-93.27990'), ('EAGAN', 63557, '44.81940', '-93.16300'), ('FARMINGTON', 12365, '44.65720', '-93.17830'), ('HAMPTON', 434, '44.60930', '-93.00230'), ('HASTINGS', 18204, '44.73280', '-92.85250'), ('INVER GROVE HEIGHTS', 29751, '44.82520', '-93.05770'), ('LAKEVILLE', 43128, '44.67940', '-93.24480'), ('MENDOTA HEIGHTS', 11434, '44.88220', '-93.14030'), ('MIESVILLE', 135, '44.60020', '-92.81000'), ('NEW TRIER', 116, '44.60390', '-92.93320'), ('ROSEMOUNT', 14619, '44.74760', '-93.07080'), ('SOUTH ST PAUL', None, '44.88790', '-93.04010'), ('VERMILLION', 437, '44.67460', '-92.96410'), ('WEST ST PAUL', None, '44.90260', '-93.08560')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MPX'}, -'MNZ071': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ARCO', 100, '44.38350', '-96.18080'), ('HENDRICKS', 725, '44.50860', '-96.42630'), ('IVANHOE', 679, '44.46410', '-96.25040'), ('LAKE BENTON', 703, '44.26260', '-96.29250'), ('TYLER', 1218, '44.27930', '-96.13510')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNZ072': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BALATON', 637, '44.23330', '-95.87110'), ('COTTONWOOD', 1148, '44.60990', '-95.67080'), ('FLORENCE', 61, '44.23690', '-96.05150'), ('GARVIN', 159, '44.21480', '-95.76090'), ('GHENT', 315, '44.51280', '-95.89240'), ('LYND', 346, '44.38510', '-95.89560'), ('MARSHALL', 12735, '44.45070', '-95.78950'), ('MINNEOTA', 1449, '44.56370', '-95.98200'), ('RUSSELL', 371, '44.31890', '-95.94800'), ('TAUNTON', 207, '44.59310', '-96.06320'), ('TRACY', 2268, '44.23730', '-95.61690')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNZ073': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BELVIEW', 412, '44.60590', '-95.32880'), ('CLEMENTS', 191, '44.37990', '-95.05480'), ('DELHI', 69, '44.59820', '-95.21300'), ('LAMBERTON', 859, '44.22970', '-95.26410'), ('LUCAN', 226, '44.40930', '-95.41270'), ('MILROY', 271, '44.41740', '-95.55400'), ('MORGAN', 903, '44.41570', '-94.92460'), ('NORTH REDWOOD', None, '44.56360', '-95.09350'), ('REDWOOD FALLS', 5459, '44.54160', '-95.11370'), ('REVERE', 100, '44.21890', '-95.36330'), ('SANBORN', 434, '44.21020', '-95.12900'), ('SEAFORTH', 77, '44.47690', '-95.32930'), ('VESTA', 339, '44.50650', '-95.41370'), ('WABASSO', 643, '44.40260', '-95.25500'), ('WALNUT GROVE', 599, '44.22560', '-95.46860'), ('WANDA', 103, '44.31600', '-95.21210')], 'partOfState': 'SOUTHWEST', 'wfo': 'MPX'}, -'MOZ068': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('CROSS TIMBERS', 185, '38.02460', '-93.22660'), ('ELKTON', None, '37.85250', '-93.42570'), ('HERMITAGE', 406, '37.94130', '-93.31610'), ('NEMO', None, '37.87660', '-93.26160'), ('PITTSBURG', None, '37.83380', '-93.30020'), ('PRESTON', 113, '37.94080', '-93.20750'), ('QUINCY', None, '38.00830', '-93.47210'), ('WEAUBLEAU', 518, '37.89050', '-93.54160'), ('WHEATLAND', 388, '37.94600', '-93.40080')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOZ069': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BARNUMTON', None, '38.11000', '-92.93630'), ('BRANCH', None, '37.91080', '-93.00270'), ('CAMDENTON', 2779, '38.00800', '-92.74440'), ('CLIMAX SPRINGS', 80, '38.10140', '-93.05000'), ('DECATURVILLE', None, '37.90750', '-92.69960'), ('FREEDOM', None, '38.03600', '-92.58940'), ('GREEN BAY TERRACE', None, '38.10000', '-92.76160'), ('HURRICANE DECK', None, '38.13160', '-92.79250'), ('LINN CREEK', 280, '38.03800', '-92.71130'), ('MACKS CREEK', 267, '37.96630', '-92.96910'), ('MONTREAL', None, '37.96880', '-92.59190'), ('OLD LINN CREEK', None, '38.07240', '-92.73630'), ('OSAGE BEACH', 3662, '38.15020', '-92.61770'), ('PURVIS', None, '38.16880', '-92.81710'), ('ROACH', None, '37.99380', '-92.83600'), ('SUNRISE BEACH', 368, '38.17570', '-92.78410'), ('VILLAGE OF FOUR SEASONS', 1493, '38.19820', '-92.71550'), ('WET GLAIZE', None, '37.92210', '-92.53350')], 'partOfState': 'CENTRAL', 'wfo': 'SGF'}, -'MOZ062': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BEAUFORT', None, '38.41930', '-91.19090'), ('BERGER', 206, '38.67400', '-91.33520'), ('CATAWISSA', None, '38.42470', '-90.78260'), ('GERALD', 1171, '38.39940', '-91.33110'), ('GRAY SUMMIT', 2640, '38.49480', '-90.81520'), ('JAPAN', None, '38.23930', '-91.30600'), ('LESLIE', 87, '38.41790', '-91.23190'), ('LONEDELL', None, '38.30670', '-90.82880'), ('LYON', None, '38.51180', '-91.17400'), ('MOSELLE', None, '38.38680', '-90.89790'), ('NEW HAVEN', 1867, '38.60750', '-91.21810'), ('NOSER MILL', None, '38.39320', '-91.19230'), ('PACIFIC', 5482, '38.47830', '-90.75290'), ('PARKWAY', 280, '38.33850', '-90.97370'), ('PINEY PARK', None, '38.30020', '-90.94370'), ('ROBERTSVILLE', None, '38.41330', '-90.81540'), ('ST. CLAIR', 4390, '38.35110', '-90.98090'), ('STANTON', None, '38.27350', '-91.10840'), ('SULLIVAN', 6351, '38.21600', '-91.16900'), ('UNION', 7757, '38.44830', '-91.01260'), ('VILLA RIDGE', 2417, '38.47120', '-90.88350'), ('WASHINGTON', 13243, '38.55310', '-91.01260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ063': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AFFTON', 20535, '38.54950', '-90.32890'), ('BALLWIN', 31283, '38.59410', '-90.55240'), ('BEL-RIDGE', 3082, '38.71410', '-90.32790'), ('BELLEFONTAINE NEIGHBORS', 11271, '38.75200', '-90.22690'), ('BERKELEY', 10063, '38.74330', '-90.33560'), ('BEVERLY HILLS', 603, '38.69770', '-90.29040'), ('BLACK JACK', 6792, '38.79810', '-90.26360'), ('BRENTWOOD', 7693, '38.61910', '-90.34860'), ('BRIDGETON', 15550, '38.76630', '-90.42650'), ('CHESTERFIELD', 46802, '38.65430', '-90.58120'), ('CLARKSON VALLEY', 2675, '38.62500', '-90.59410'), ('CLAYTON', 12825, '38.64430', '-90.32860'), ('COOL VALLEY', 1081, '38.72480', '-90.30480'), ('CRESTWOOD', 11863, '38.55560', '-90.38160'), ('CREVE COEUR', 16500, '38.66050', '-90.43550'), ('DELLWOOD', 5255, '38.75520', '-90.27770'), ('DES PERES', 8592, '38.59600', '-90.44720'), ('ELLISVILLE', 9104, '38.58910', '-90.58600'), ('EUREKA', 7676, '38.50290', '-90.64270'), ('FENTON', 4360, '38.53610', '-90.45140'), ('FERGUSON', 22406, '38.74880', '-90.29580'), ('FLORISSANT', 50497, '38.79740', '-90.32430'), ('FRONTENAC', 3483, '38.63080', '-90.41600'), ('GLENDALE', 5767, '38.59300', '-90.38120'), ('GREENDALE', 722, '38.69150', '-90.31220'), ('HAZELWOOD', 26206, '38.77770', '-90.35960'), ('HILLSDALE', 1477, '38.68510', '-90.28850'), ('JENNINGS', 15469, '38.72360', '-90.26450'), ('KINLOCH', 449, '38.73810', '-90.32530'), ('KIRKWOOD', 27324, '38.58040', '-90.42010'), ('LADUE', 8645, '38.63680', '-90.38160'), ('LAKESHIRE', 1375, '38.54130', '-90.33700'), ('LEMAY', 17215, '38.53180', '-90.28390'), ('MANCHESTER', 19161, '38.59260', '-90.51480'), ('MAPLEWOOD', 9228, '38.61210', '-90.32430'), ('MARYLAND HEIGHTS', 25756, '38.72250', '-90.47740'), ('MEHLVILLE', 28822, '38.50110', '-90.31570'), ('NORMANDY', 5153, '38.70770', '-90.30040'), ('NORTHWOODS', 4643, '38.70320', '-90.28220'), ('OAKLAND', 1540, '38.57580', '-90.38440'), ('OAKVILLE', 35309, '38.44410', '-90.31690'), ('OLIVETTE', 7438, '38.67230', '-90.37720'), ('OVERLAND', 16838, '38.69600', '-90.36820'), ('PEERLESS PARK', None, '38.54240', '-90.50110'), ('RICHMOND HEIGHTS', 9602, '38.63020', '-90.33170'), ('RIVERVIEW', 3146, '38.74930', '-90.21430'), ('SHREWSBURY', 6644, '38.58700', '-90.32790'), ('SPANISH LAKE', 21337, '38.78690', '-90.20770'), ('ST. ANN', 13607, '38.72590', '-90.38780'), ('ST. JOHN', 6871, '38.71450', '-90.34610'), ('SUNSET HILLS', 8267, '38.53730', '-90.41630'), ('TOWN AND COUNTRY', 10894, '38.62470', '-90.47630'), ('UNIVERSITY CITY', 37428, '38.66620', '-90.33110'), ('UPLANDS PARK', 460, '38.69270', '-90.28250'), ('VALLEY PARK', 6518, '38.55450', '-90.48240'), ('WARSON WOODS', 1983, '38.60690', '-90.39150'), ('WEBSTER GROVES', 23230, '38.58560', '-90.35460'), ('WILDWOOD', 32884, '38.58280', '-90.66280'), ('WOODSON TERRACE', 4189, '38.72840', '-90.36010')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ060': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('DUTZOW', None, '38.60570', '-90.99460'), ('HOLSTEIN', None, '38.65540', '-91.17120'), ('MARTHASVILLE', 837, '38.62840', '-91.05330'), ('TRELOAR', None, '38.64450', '-91.18790'), ('TRUESDALE', 397, '38.81100', '-91.12510'), ('WARRENTON', 5281, '38.82130', '-91.14010'), ('WRIGHT CITY', 1532, '38.82760', '-91.02430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ061': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('AUGUSTA', 218, '38.57290', '-90.88280'), ('COTTLEVILLE', 1928, '38.75400', '-90.65380'), ('DARDENNE PRAIRIE', 4384, '38.75430', '-90.73210'), ('DEFIANCE', None, '38.63300', '-90.78300'), ('FLINT HILL', 379, '38.85350', '-90.86350'), ('FORISTELL', 331, '38.81850', '-90.95990'), ('HARVESTER', None, '38.74970', '-90.57920'), ('KAMPVILLE', None, '38.85240', '-90.54730'), ('LAKE ST. LOUIS', 10169, '38.78900', '-90.78280'), ('MATSON', None, '38.60820', '-90.79710'), ('NEW MELLE', 124, '38.71020', '-90.88030'), ("O'FALLON", 46169, '38.78430', '-90.70790'), ('ORCHARD FARMS', None, '38.87980', '-90.44600'), ('PORTAGE DES SIOUX', 351, '38.92610', '-90.34190'), ('ST. CHARLES', 60321, '38.79060', '-90.51640'), ('ST. PAUL', 1634, '38.84990', '-90.73660'), ('ST. PETERS', 51381, '38.77850', '-90.60530'), ('WELDON SPRING', 5270, '38.71650', '-90.64900'), ('WENTZVILLE', 6896, '38.81340', '-90.85950'), ('WEST ALTON', 573, '38.86280', '-90.22380')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ066': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BRONAUGH', 245, '37.69410', '-94.46850'), ('DEERFIELD', 75, '37.83850', '-94.50580'), ('HARWOOD', 90, '37.95610', '-94.15410'), ('HORTON', None, '37.97460', '-94.36500'), ('METZ', 67, '37.99740', '-94.44300'), ('MILO', 84, '37.75610', '-94.30580'), ('MONTEVALLO', None, '37.72600', '-94.10800'), ('MOUNDVILLE', 103, '37.76590', '-94.45120'), ('NEVADA', 8607, '37.83910', '-94.35440'), ('RICHARDS', 95, '37.90720', '-94.55690'), ('SCHELL CITY', 286, '38.01990', '-94.11550'), ('SHELDON', 529, '37.65800', '-94.29240'), ('STOTESBURY', 43, '37.97180', '-94.56330'), ('WALKER', 275, '37.89850', '-94.23180')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SGF'}, -'MOZ067': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('APPLETON CITY', 1314, '38.19050', '-94.02910'), ('COLLINS', 176, '37.89100', '-93.62270'), ('GERSTER', 35, '37.95330', '-93.57540'), ('HARPER', None, '38.06250', '-93.51820'), ('ICONIUM', None, '38.10580', '-93.54440'), ('JOHNSON CITY', None, '38.11680', '-93.92770'), ('LOWRY CITY', 728, '38.13990', '-93.72660'), ('MONEGAW SPRINGS', None, '38.02910', '-93.83880'), ('OSCEOLA', 835, '38.04660', '-93.70410'), ('ROSCOE', 112, '37.97270', '-93.81190'), ('TABERVILLE', None, '38.00830', '-93.99440'), ('TIFFIN', None, '37.95500', '-93.93800'), ('VISTA', 55, '37.98830', '-93.66380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'SGF'}, -'MOZ064': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ST. LOUIS', 348189, '38.63600', '-90.24430')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'MOZ065': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('ANTONIA', None, '38.36250', '-90.46560'), ('ARNOLD', 19965, '38.42840', '-90.36930'), ('BARNHART', 6108, '38.33440', '-90.40410'), ('BYRNES MILL', 2376, '38.43930', '-90.57360'), ('CEDAR HILL', 1703, '38.35610', '-90.64160'), ('CRYSTAL CITY', 4247, '38.22590', '-90.38300'), ('DE SOTO', 6375, '38.13900', '-90.56050'), ('DITTMER', None, '38.33300', '-90.68300'), ('FESTUS', 9660, '38.22280', '-90.40540'), ('FLETCHER', None, '38.16590', '-90.73340'), ('GRUBVILLE', None, '38.28840', '-90.75480'), ('HEMATITE', None, '38.20070', '-90.48340'), ('HERCULANEUM', 2805, '38.25920', '-90.38770'), ('HIGH RIDGE', 4236, '38.46290', '-90.53410'), ('HILLSBORO', 1675, '38.23230', '-90.56680'), ('HOUSE SPRINGS', None, '38.41700', '-90.56700'), ('KIMMSWICK', 94, '38.36670', '-90.36510'), ('MAPAVILLE', None, '38.24810', '-90.48560'), ('MORSE MILL', None, '38.27680', '-90.65320'), ('MURPHY', 9048, '38.49290', '-90.48640'), ('OERMANN', None, '38.30750', '-90.72570'), ('OLYMPIAN VILLAGE', 669, '38.13460', '-90.45720'), ('OTTO', None, '38.37200', '-90.50060'), ('PARKDALE', 205, '38.47890', '-90.52660'), ('PEVELY', 3768, '38.28910', '-90.39800'), ('SCOTSDALE', 211, '38.39590', '-90.58970'), ('VALLES MILL', None, '38.04070', '-90.50150'), ('VICTORIA', None, '38.17790', '-90.52590')], 'partOfState': 'EAST CENTRAL', 'wfo': 'LSX'}, -'KSZ046': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ALEXANDER', 75, '38.46940', '-99.55200'), ('BISON', 235, '38.51980', '-99.19720'), ('HARGRAVE', None, '38.55000', '-99.43000'), ('LA CROSSE', 1376, '38.53170', '-99.30980'), ('LIEBENTHAL', 111, '38.65450', '-99.32000'), ('LORETTA', None, '38.65000', '-99.18330'), ('MCCRACKEN', 211, '38.58230', '-99.56890'), ('NEKOMA', None, '38.47000', '-99.44000'), ('OTIS', 325, '38.53490', '-99.05310'), ('RUSH CENTER', 176, '38.46490', '-99.31050'), ('SHAFFER', None, '38.46000', '-99.08000'), ('TIMKEN', 83, '38.47290', '-99.17700')], 'partOfState': 'CENTRAL', 'wfo': 'DDC'}, -'OKZ040': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ELMORE CITY', 756, '34.62330', '-97.39650'), ('ERIN SPRINGS', 114, '34.81070', '-97.60510'), ('FOSTER', None, '34.62000', '-97.48000'), ('LINDSAY', 2889, '34.83960', '-97.60970'), ('MAYSVILLE', 1313, '34.81670', '-97.41020'), ('PAOLI', 649, '34.82690', '-97.26210'), ('PAULS VALLEY', 6256, '34.72530', '-97.22440'), ('PERNELL', None, '34.57000', '-97.50000'), ('PURDY', None, '34.72000', '-97.58000'), ('STRATFORD', 1474, '34.79510', '-96.96000'), ('WHITEBEAD', None, '34.77000', '-97.30000'), ('WYNNEWOOD', 2367, '34.64430', '-97.16170')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'MIZ043': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('COLFAX', None, '43.74330', '-86.07920'), ('CRYSTAL VALLEY', None, '43.77380', '-86.23750'), ('ELBRIDGE', None, '43.68580', '-86.21880'), ('HART', 1950, '43.69710', '-86.36310'), ('HESPERIA', 954, '43.56820', '-86.04020'), ('LITTLE POINT SABLE', None, '43.63470', '-86.53750'), ('MEARS', None, '43.68200', '-86.41970'), ('NEW ERA', 461, '43.55950', '-86.34690'), ('ROTHBURY', 416, '43.50740', '-86.34840'), ('ST. HUBERTS', None, '43.54250', '-86.08500'), ('STONY LAKE', None, '43.55970', '-86.50000'), ('WALKERVILLE', 254, '43.71470', '-86.12570'), ('WEARE', None, '43.74630', '-86.33950')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'MIZ040': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('CLARE', 3173, '43.82420', '-84.76500'), ('FARWELL', 855, '43.83570', '-84.86770'), ('LAKE', None, '43.85200', '-85.00520'), ('LAKE GEORGE', None, '43.96330', '-84.94680'), ('LEOTA', None, '44.13950', '-84.88950'), ('TEMPLE', None, '44.03080', '-85.02830')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'KSZ045': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ARNOLD', None, '38.63000', '-100.04000'), ('BAZINE', 311, '38.44600', '-99.69220'), ('BEELER', None, '38.43000', '-100.20000'), ('BROWNELL', 48, '38.64020', '-99.74370'), ('NESS CITY', 1534, '38.45340', '-99.90560'), ('RANSOM', 338, '38.63630', '-99.93200'), ('UTICA', 223, '38.64290', '-100.16990')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DDC'}, -'MIZ046': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BEAL CITY', 345, '43.66990', '-84.90980'), ('BLANCHARD', None, '43.51970', '-85.08000'), ('BRINTON', None, '43.77030', '-85.01030'), ('DELWIN', None, '43.69720', '-84.67800'), ('LOOMIS', None, '43.79370', '-84.66620'), ('MOUNT PLEASANT', 25946, '43.59660', '-84.77830'), ('ROSEBUSH', 379, '43.69960', '-84.76580'), ('SHEPHERD', 1536, '43.52460', '-84.69380'), ('WEIDMAN', 879, '43.69400', '-84.97290'), ('WINN', None, '43.52330', '-84.90170')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'MIZ047': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BOMBAY', None, '43.74170', '-84.26640'), ('COLEMAN', 1296, '43.75670', '-84.58670'), ('EDENVILLE', None, '43.80000', '-84.38980'), ('GORDONVILLE', None, '43.56780', '-84.36940'), ('MIDLAND', 41685, '43.62360', '-84.22940'), ('NORTH BRADLEY', None, '43.71140', '-84.49000'), ('OIL CITY', None, '43.61080', '-84.58830'), ('PLEASANT VALLEY', None, '43.50970', '-84.58810'), ('PORTER TOWNSHIP', None, '43.51000', '-84.43500'), ('POSEYVILLE', None, '43.53970', '-84.24940'), ('SANFORD', 943, '43.67560', '-84.38060')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'OKZ041': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('DAVIS', 2610, '34.48090', '-97.13050'), ('DOUGHERTY', 224, '34.39980', '-97.05110'), ('DRAKE', None, '34.40000', '-96.95000'), ('HENNEPIN', None, '34.50990', '-97.34670'), ('HICKORY', 87, '34.55600', '-96.85540'), ('NEBO', None, '34.37000', '-96.95000'), ('SCULLIN', None, '34.52000', '-96.87000'), ('SULPHUR', 4794, '34.50670', '-96.97700')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'MIZ044': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BITELY', None, '43.74680', '-85.86170'), ('BRIDGETON', None, '43.34670', '-85.93720'), ('CROTON', None, '43.43880', '-85.66080'), ('CROTON HEIGHTS', None, '43.45630', '-85.63470'), ('FREMONT', 4224, '43.46150', '-85.95220'), ('GRANT', 881, '43.33410', '-85.81010'), ('HAWKINS', None, '43.80050', '-85.60300'), ('NEWAYGO', 1670, '43.42000', '-85.80050'), ('REEMAN', None, '43.44500', '-86.00870'), ('WHITE CLOUD', 1420, '43.55290', '-85.77260'), ('WOODLAND PARK', None, '43.71470', '-85.86130'), ('WOODVILLE', None, '43.66580', '-85.68120'), ('WOOSTER', None, '43.51050', '-85.87380')], 'partOfState': 'WEST CENTRAL', 'wfo': 'GRR'}, -'WYZ019': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BAIROIL', 97, '42.23800', '-107.55890'), ('JEFFREY CITY', 106, '42.48000', '-107.84000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'RIW'}, -'MIZ045': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('ALTONA', None, '43.53970', '-85.31350'), ('BARRYTON', 381, '43.74960', '-85.14270'), ('BIG RAPIDS', 10849, '43.70390', '-85.48630'), ('CHIPPEWA LAKE', None, '43.74380', '-85.29720'), ('MECOSTA', 440, '43.61890', '-85.23050'), ('MORLEY', 495, '43.49120', '-85.44600'), ('PARIS', None, '43.77330', '-85.50250'), ('RODNEY', None, '43.67370', '-85.32830'), ('STANWOOD', 204, '43.58010', '-85.44790'), ('SYLVESTER', None, '43.53970', '-85.25450')], 'partOfState': 'CENTRAL', 'wfo': 'GRR'}, -'NEZ021': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ANGORA', None, '41.87000', '-103.10000'), ('BAYARD', 1247, '41.75710', '-103.32300'), ('BRIDGEPORT', 1594, '41.66670', '-103.09830'), ('BROADWATER', 140, '41.59760', '-102.85150'), ('REDINGTON', None, '41.59000', '-103.30000')], 'partOfState': '', 'wfo': 'CYS'}, -'NEZ020': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('HARRISBURG', 75, '41.55000', '-103.74000')], 'partOfState': '', 'wfo': 'CYS'}, -'NEZ023': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ASHBY', None, '42.02650', '-101.93500'), ('HYANNIS', 287, '42.00040', '-101.76060'), ('WHITMAN', None, '42.04400', '-101.53700')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEZ022': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('CRESCENT LAKE NWR', None, '41.73500', '-102.41000'), ('LEWELLEN', 282, '41.33070', '-102.14310'), ('LISCO', None, '41.50000', '-102.62000'), ('OSHKOSH', 887, '41.40860', '-102.34440')], 'partOfState': '', 'wfo': 'LBF'}, -'NEZ025': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('HALSEY', 59, '41.90280', '-100.26910'), ('SENECA', 51, '42.04270', '-100.83130'), ('THEDFORD', 211, '41.97880', '-100.57450')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ024': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('MULLEN', 491, '42.04200', '-101.04330')], 'partOfState': 'WEST CENTRAL', 'wfo': 'LBF'}, -'NEZ027': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('ALMERIA', None, '41.83430', '-99.54000'), ('TAYLOR', 207, '41.76970', '-99.38130')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ026': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BREWSTER', 29, '41.93840', '-99.86510'), ('DUNNING', 109, '41.82770', '-100.10370'), ('PURDUM', None, '42.07000', '-100.26000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ029': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BARTLETT', 128, '41.88410', '-98.55140'), ('ERICSON', 104, '41.78050', '-98.67760')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'NEZ028': {'fullStateName': 'NEBRASKA', 'state': 'NE', 'cities': [('BURWELL', 1130, '41.78000', '-99.13390')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LBF'}, -'TXZ068': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CORDONA LAKE', None, '31.30390', '-102.50690'), ('CRANE', 3191, '31.39180', '-102.35000'), ('TUBBS CORNER', None, '31.38270', '-102.61500')], 'partOfState': '', 'wfo': 'MAF'}, -'TXZ069': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('KING MOUNTAIN', None, '31.23580', '-102.20690'), ('MCCAMEY', 1805, '31.13260', '-102.21950'), ('MIDKIFF', None, '31.63270', '-101.83940'), ('RANKIN', 800, '31.22520', '-101.93940'), ('THE INTERSECTION OF SH 32', None, '31.43000', '-102.17220')], 'partOfState': '', 'wfo': 'MAF'}, -'PRZ011': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('BETANCES', 835, '18.03150', '-67.13340'), ('CABO ROJO', 10610, '18.08830', '-67.14860'), ('FUIG', 1204, '17.98830', '-66.91770'), ('GUANICA', None, '17.97040', '-66.93070'), ('LA PARGUERA', 1141, '17.97680', '-67.04690'), ('LAJAS', 5036, '18.04640', '-67.06030'), ('MARIA ANTONIA', None, '17.98030', '-66.88970'), ('PALMAREJO', 1169, '18.04350', '-67.07750'), ('POLE OJEA', 1829, '17.97890', '-67.18470')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ010': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ACEITUNAS', 1688, '18.44800', '-67.06780'), ('AGUADA', 3871, '18.38220', '-67.18780'), ('ANASCO', None, '18.28850', '-67.14130'), ('ESPINO', 1422, '18.27830', '-67.11980'), ('HORMIGUEROS', 12444, '18.14440', '-67.12080'), ('LA PLAYA', 2139, '18.28940', '-67.18740'), ('LAS MARIAS', None, '18.29430', '-67.14480'), ('LUYANDO', 3553, '18.35840', '-67.15630'), ('MAYAGUEZ', None, '18.20360', '-67.14340'), ('MOCA', 4757, '18.39660', '-67.11420'), ('RINCON', None, '18.34100', '-67.25260'), ('SABANA ENEAS', 1847, '18.08410', '-67.08540'), ('SAN GERMAN', None, '18.08470', '-67.04550'), ('STELLA', 1293, '18.32400', '-67.24720')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ013': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('ESPERANZA', 1092, '18.10320', '-65.48000')], 'partOfState': '', 'wfo': 'SJU'}, -'PRZ012': {'fullStateName': 'PUERTO RICO', 'state': 'PR', 'cities': [('CULEBRA', 1418, '18.31320', '-65.30570')], 'partOfState': '', 'wfo': 'SJU'}, -'WAZ001': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('FRIDAY HARBOR', 1989, '48.53690', '-123.03130')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'WAZ002': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BELLINGHAM', 67171, '48.74400', '-122.46690'), ('BLAINE', 3770, '48.98910', '-122.75810'), ('EVERSON', 2035, '48.91480', '-122.35090'), ('FERNDALE', 8758, '48.85090', '-122.58720'), ('LYNDEN', 9020, '48.94840', '-122.45610'), ('MARIETTA-ALDERWOOD', 3594, '48.78900', '-122.55480'), ('NOOKSACK', 851, '48.92840', '-122.32120'), ('SUDDEN VALLEY', 4165, '48.72080', '-122.34470')], 'partOfState': 'NORTHWEST', 'wfo': 'SEW'}, -'IAZ090': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('FARRAGUT', 509, '40.71980', '-95.48010'), ('HAMBURG', 1240, '40.60580', '-95.65480'), ('IMOGENE', 66, '40.87870', '-95.42740'), ('RANDOLPH', 209, '40.87290', '-95.56420'), ('RIVERTON', 304, '40.68740', '-95.56880'), ('SIDNEY', 1300, '40.74600', '-95.64440'), ('TABOR', 993, '40.89380', '-95.67210'), ('THURMAN', 236, '40.81940', '-95.74840')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'CAZ071': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ANTELOPE LAKE', None, '40.18000', '-120.61000'), ('BECKWOURTH', 342, '39.82000', '-120.38000'), ('BIEBER', None, '41.12000', '-121.14000'), ('BLAIRSDEN', 50, '39.78000', '-120.62000'), ('CALPINE', None, '39.67000', '-120.44000'), ('CHILCOOT', None, '39.80000', '-120.14000'), ('CROMBERG', 290, '39.86000', '-120.69000'), ('DOG VALLEY', None, '39.55000', '-120.04000'), ('DOYLE', None, '40.02000', '-120.10000'), ('EAGLE LAKE', None, '40.65000', '-120.74000'), ('FREDONYER PASS', None, '40.36000', '-120.87000'), ('FRENCHMAN LAKE', None, '39.92000', '-120.20000'), ('GENESEE', None, '40.04000', '-120.75000'), ('GRAEAGLE', 831, '39.77000', '-120.62000'), ('HALLELUJAH JUNCTION', None, '39.78000', '-120.04000'), ('HERLONG', None, '40.14000', '-120.13000'), ('HONEY LAKE', None, '40.23000', '-120.35000'), ('JOHNSVILLE', 21, '39.78000', '-120.66000'), ('LAKE DAVIS', 23, '39.91000', '-120.51000'), ('LOYALTON', 862, '39.67660', '-120.24340'), ('MADELINE', None, '41.05000', '-120.47000'), ('NUBIEBER', None, '41.09000', '-121.19000'), ('PITTVILLE', None, '41.05000', '-121.32000'), ('PLUMAS EUREKA STATE PARK', None, '39.77000', '-120.69000'), ('PORTOLA', 2227, '39.80490', '-120.46760'), ('PORTOLA', 2227, '39.80490', '-120.46760'), ('RAVENDALE', None, '40.80000', '-120.36000'), ('SATTLEY', None, '39.62000', '-120.43000'), ('SIERRAVILLE', None, '39.59000', '-120.37000'), ('SLOAT', None, '39.87000', '-120.73000'), ('SPAULDING', None, '40.65000', '-120.78000'), ('STAMPEDE RESERVOIR', None, '39.48000', '-120.13000'), ('STANDISH', None, '40.37000', '-120.42000'), ('SUSANVILLE', 13541, '40.41110', '-120.65060'), ('SUSANVILLE', 13541, '40.41110', '-120.65060'), ('TERMO', None, '40.86000', '-120.49000'), ('TERMO', None, '40.86000', '-120.45000'), ('VERDI', None, '39.52000', '-120.00000'), ('VINTON', None, '39.80000', '-120.18000'), ('WENDEL', None, '40.35000', '-120.23000'), ('WESTWOOD', 1998, '40.31000', '-121.00000'), ('WESTWOOD', 1998, '40.30320', '-121.00390')], 'partOfState': 'NORTHERN', 'wfo': 'REV'}, -'CAZ070': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CEDARVILLE', None, '41.53000', '-120.17000'), ('EAGLEVILLE', None, '41.32000', '-120.12000'), ('FORT BIDWELL', None, '41.86000', '-120.15000'), ('FORT BIDWELL', None, '41.86000', '-120.15000'), ('LAKE CITY', None, '41.64000', '-120.22000')], 'partOfState': 'NORTHERN', 'wfo': 'REV'}, -'CAZ073': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('BENTON', None, '37.82000', '-118.48000'), ('BENTON HOT SPRINGS', None, '37.78000', '-118.52800'), ('BODIE', None, '38.21200', '-119.00800'), ('BRIDGEPORT', None, '38.26000', '-119.22000'), ('BRIDGEPORT RESERVOIR', None, '38.31990', '-119.22000'), ('CHALFANT', None, '37.53000', '-118.36000'), ('COLEVILLE', None, '38.57000', '-119.51000'), ('CONWAY SUMMIT', None, '38.09000', '-119.18000'), ('CRESTVIEW', None, '37.75600', '-118.98700'), ('CROWLEY LAKE', None, '37.61000', '-118.74000'), ('JUNE LAKE', None, '37.78000', '-119.08000'), ('LEAVITT MEADOWS', None, '38.32000', '-119.55000'), ('LEE VINING', None, '37.96000', '-119.12000'), ('MAMMOTH LAKES', 7093, '37.64400', '-118.95500'), ('MAMMOUTH MOUNTAIN', None, '37.65500', '-119.03300'), ('MONO LAKE', None, '38.00600', '-119.00600'), ('OASIS', None, '37.49000', '-117.92000'), ('SONORA PASS', None, '38.32800', '-119.62900'), ('TIOGA PASS', None, '37.91500', '-119.25600'), ('TOMS PLACE', None, '37.56300', '-118.69500'), ('TWIN LAKES', 5533, '38.14900', '-119.34400'), ('WALKER', None, '38.52000', '-119.48000')], 'partOfState': 'CENTRAL', 'wfo': 'REV'}, -'CAZ072': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ALPINE MEADOWS', None, '39.17000', '-120.22000'), ('BLISS STATE PARK', None, '38.98000', '-120.10000'), ('BOCA RESERVOIR', None, '39.40000', '-120.09000'), ('CARNELIAN BAY', None, '39.23000', '-120.07000'), ('DOLLAR POINT', 1539, '39.18970', '-120.10840'), ('EMERALD BAY', None, '38.96000', '-120.09000'), ('FLORISTON', None, '39.40000', '-120.01000'), ('GLENSHIRE-DEVONSHIRE', None, '39.35050', '-120.08750'), ('GROVER HOT SPRINGS STATE', None, '38.69600', '-119.83900'), ('HIRSCHDALE', None, '39.37000', '-120.07000'), ('HOBART MILLS', None, '39.40000', '-120.18000'), ('HOMEWOOD', None, '39.08000', '-120.16000'), ('HOPE VALLEY', None, '38.78000', '-119.93000'), ('INDEPENDENCE LAKE', None, '39.44000', '-120.30000'), ('INDIAN CREEK RESERVOIR', None, '38.75000', '-119.77000'), ('KINGS BEACH', 4037, '39.24000', '-120.03000'), ('LUTHER PASS', None, '38.79000', '-119.95000'), ('MARKLEEVILLE', 197, '38.69200', '-119.77990'), ('MARKLEEVILLE', 197, '38.70000', '-119.78000'), ('MEEKS BAY', None, '39.01000', '-120.12000'), ('MEYERS', None, '38.86000', '-120.01000'), ('MONITOR PASS', None, '38.68000', '-119.62000'), ('NORTHSTAR', None, '39.28000', '-120.12000'), ('PAYNESVILLE', None, '38.81100', '-119.79700'), ('PROSSER CREEK RESERVOIR', None, '39.38000', '-120.17000'), ('SOUTH LAKE TAHOE', 23609, '38.93930', '-119.98110'), ('SQUAW VALLEY', 2691, '39.20000', '-120.22000'), ('SUGAR PINE POINT STATE PA', None, '39.06000', '-120.12000'), ('SUNNYSIDE-TAHOE CITY', 1761, '39.14750', '-120.16370'), ('TAHOE CITY', None, '39.17000', '-120.14000'), ('TAHOE VISTA', 1668, '39.24790', '-120.05360'), ('TRUCKEE', 13864, '39.32640', '-120.20230'), ('WOODFORDS', None, '38.78000', '-119.82000')], 'partOfState': 'CENTRAL', 'wfo': 'REV'}, -'CAZ075': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ATHERTON', 7194, '37.45470', '-122.20240'), ('BELMONT', 25123, '37.51530', '-122.29510'), ('BRISBANE', 3597, '37.68930', '-122.39990'), ('BROADMOOR', 4026, '37.69170', '-122.47960'), ('BURLINGAME', 28158, '37.59030', '-122.36260'), ('COLMA', 1191, '37.67380', '-122.45340'), ('DALY CITY', 103621, '37.68700', '-122.46740'), ('EAST PALO ALTO', 29506, '37.46610', '-122.13220'), ('EL GRANADA', 5724, '37.50970', '-122.46660'), ('EMERALD LAKE HILLS', 3899, '37.46460', '-122.26690'), ('FOSTER CITY', 28803, '37.56380', '-122.24470'), ('HIGHLANDS', None, '37.51990', '-122.34280'), ('HILLSBOROUGH', 10825, '37.55750', '-122.35620'), ('MENLO PARK', 30785, '37.48000', '-122.14400'), ('MILLBRAE', 20718, '37.59910', '-122.40100'), ('MONTARA', 2950, '37.54540', '-122.49720'), ('NORTH FAIR OAKS', 15440, '37.47450', '-122.20180'), ('PACIFICA', 38390, '37.61120', '-122.47630'), ('PORTOLA VALLEY', 4462, '37.37170', '-122.21850'), ('REDWOOD CITY', 75402, '37.51640', '-122.20590'), ('SAN BRUNO', 40165, '37.62480', '-122.42800'), ('SAN CARLOS', 27718, '37.49760', '-122.26740'), ('SAN MATEO', 92482, '37.56130', '-122.31200'), ('WEST MENLO PARK', 3629, '37.43370', '-122.20190'), ('WOODSIDE', 5352, '37.42480', '-122.25930')], 'partOfState': '', 'wfo': 'MTR'}, -'CAZ074': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('APTOS', 9396, '36.99190', '-121.89960'), ('APTOS HILLS-LARKIN VALLEY', 2361, '36.96100', '-121.83020'), ('BEN LOMOND', 2364, '37.10340', '-122.08450'), ('BOULDER CREEK', 4081, '37.13750', '-122.12790'), ('CAPITOLA', 10033, '36.97610', '-121.95300'), ('CORRALITOS', 2431, '36.99660', '-121.79860'), ('DAY VALLEY', 3587, '37.03580', '-121.86130'), ('FELTON', 1051, '37.04270', '-122.07220'), ('FREEDOM', 6000, '36.94000', '-121.78930'), ('INTERLAKEN', 7328, '36.95140', '-121.73290'), ('LIVE OAK', 6229, '36.98370', '-121.97950'), ('PAJARO', 3384, '36.90010', '-121.74090'), ('SANTA CRUZ', 54593, '36.97330', '-122.03580'), ('SCOTTS VALLEY', 11385, '37.05630', '-122.00800'), ('SOQUEL', 5081, '36.99380', '-121.94670'), ('WATSONVILLE', 44265, '36.91920', '-121.76850')], 'partOfState': '', 'wfo': 'MTR'}, -'CAZ076': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('CALPELLA', None, '39.23000', '-123.20000'), ('COVELO', 1175, '39.80000', '-123.25000'), ('DOS RIOS', None, '39.72000', '-123.35000'), ('HOPLAND', None, '38.98000', '-123.12000'), ('LAYTONVILLE', 1301, '39.67000', '-123.50000'), ('LEGGETT', None, '39.87000', '-123.72000'), ('PIERCY', None, '39.98000', '-123.80000'), ('POTTER VALLEY', None, '39.32000', '-123.12000'), ('REDWOOD VLY', None, '39.27000', '-123.20000'), ('TALMAGE', 1141, '39.13000', '-123.17000'), ('UKIAH', 15497, '39.15000', '-123.21000'), ('WILLITS', 5073, '39.40000', '-123.35000')], 'partOfState': 'NORTHWEST', 'wfo': 'EKA'}, -'FLZ048': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ARIPEKA', None, '28.43500', '-82.66800'), ('BROOKSVILLE', 7264, '28.55440', '-82.39300'), ('CROOM', None, '28.59000', '-82.24000'), ('HERNANDO BEACH', 2185, '28.46900', '-82.65940'), ('MASARYKTOWN', 920, '28.43440', '-82.46120'), ('NORTH BROOKSVILLE', 1461, '28.57290', '-82.40830'), ('RIDGE MANOR', 4108, '28.50300', '-82.18410'), ('ROYAL HIGHLANDS', None, '28.64000', '-82.53000'), ('SPRING HILL', 69078, '28.44500', '-82.56190'), ('WEEKI WACHEE', 12, '28.51520', '-82.57870'), ('WEEKI WACHEE ACRES', None, '28.48310', '-82.59780')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'FLZ049': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('DADE CITY', 6188, '28.36150', '-82.19550'), ('DADE CITY NORTH', 3319, '28.38330', '-82.19310'), ('DARBY', None, '28.37000', '-82.35000'), ('HOLIDAY', 21904, '28.18590', '-82.74220'), ('HUDSON', 12765, '28.35770', '-82.69950'), ('JASMINE ESTATES', 18213, '28.29260', '-82.69040'), ('LACOOCHEE', 1345, '28.46500', '-82.16920'), ("LAND O' LAKES", 20971, '28.22170', '-82.45380'), ('MOON LAKE ESTATES', None, '28.30000', '-82.60000'), ('NEW PORT RICHEY', 16117, '28.24770', '-82.71780'), ('ODESSA', 3173, '28.20000', '-82.59000'), ('PORT RICHEY', 3021, '28.27540', '-82.72860'), ('SAN ANTONIO', 655, '28.33740', '-82.27900'), ('ST. LEO', 595, '28.33700', '-82.25950'), ('WESLEY CHAPEL', 5691, '28.23940', '-82.32810'), ('ZEPHYRHILLS', 10833, '28.23600', '-82.17650')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'FLZ042': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BEVERLY HILLS', 8317, '28.91230', '-82.46450'), ('CHASSAHOWITZKA', None, '28.70000', '-82.57000'), ('CITRONELLE', None, '28.97800', '-82.56500'), ('CITRUS SPRINGS', 4157, '28.99660', '-82.47470'), ('CRYSTAL RIVER', 3485, '28.90100', '-82.59760'), ('FLORAL CITY', 4989, '28.74140', '-82.29150'), ('HERNANDO', 8253, '28.90730', '-82.37460'), ('HOMOSASSA', 2294, '28.78120', '-82.61840'), ('HOMOSASSA SPRINGS', 12458, '28.79720', '-82.54830'), ('INGLIS', 1491, '29.03260', '-82.65940'), ('INVERNESS', 6789, '28.83910', '-82.34350'), ('LECANTO', 5161, '28.85800', '-82.48580')], 'partOfState': 'WEST CENTRAL', 'wfo': 'TBW'}, -'IAZ095': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALLERTON', 559, '40.70820', '-93.36700'), ('CLIO', 91, '40.63470', '-93.45180'), ('CORYDON', 1591, '40.75910', '-93.31750'), ('HUMESTON', 543, '40.86030', '-93.49680'), ('LINEVILLE', 273, '40.58600', '-93.52360'), ('MILLERTON', 48, '40.84930', '-93.30690'), ('PROMISE CITY', 105, '40.74690', '-93.15090'), ('SEYMOUR', 810, '40.68280', '-93.12180')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'DMX'}, -'FLZ040': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ANTHONY', None, '29.28850', '-82.11250'), ('BELLEVIEW', 3478, '29.05980', '-82.05480'), ('BURBANK', None, '29.28950', '-82.00200'), ('CITRA', None, '29.41130', '-82.11040'), ('DUNNELLON', 1898, '29.04950', '-82.44840'), ('FLEMINGTON', None, '29.40690', '-82.29860'), ('FORT MCCOY', None, '29.36390', '-81.96790'), ('HOG VALLEY', None, '29.49240', '-81.89610'), ('JUNIPER SPRINGS', None, '29.18190', '-81.73500'), ('LAKE WEIR', None, '29.01830', '-81.98860'), ('LOWELL', None, '29.32990', '-82.19210'), ('LYNNE', None, '29.19180', '-81.91800'), ('MCINTOSH', 453, '29.44910', '-82.22080'), ('MOSS BLUFF', None, '29.08260', '-81.88400'), ('OCALA', 45943, '29.18740', '-82.13080'), ('OCALA AIRPORT', None, '29.17090', '-82.22240'), ('OCKLAWAHA', None, '29.04210', '-81.92990'), ('ORANGE SPRINGS', None, '29.50500', '-81.94590'), ('RAINBOW LAKES ESTATES', None, '29.14690', '-82.44780'), ('REDDICK', 571, '29.36760', '-82.19830'), ('ROMEO', None, '29.20540', '-82.43690'), ('SALT SPRINGS', None, '29.34920', '-81.73640'), ('SANTOS', None, '29.10760', '-82.09460'), ('SILVER SPRINGS SHORES', 6690, '29.10360', '-82.00630'), ('SPARR', None, '29.33840', '-82.11290'), ('SUMMERFIELD', None, '29.00850', '-82.03510'), ('WEIRSDALE', None, '28.98180', '-81.92460')], 'partOfState': 'NORTHERN', 'wfo': 'JAX'}, -'FLZ041': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAKERSTOWN', None, '29.34790', '-81.49170'), ('BARBERVILLE', None, '29.18700', '-81.42120'), ('BLUFFTON', None, '29.11180', '-81.44310'), ('CASSADAGA', None, '28.96620', '-81.23630'), ('CENTRAL FLORIDA ZOO', None, '28.83690', '-81.32420'), ('CONRAD', None, '29.15890', '-81.38330'), ('DAYTONA PARK ESTATES', None, '29.05460', '-81.25450'), ('DE BARY', 15559, '28.88340', '-81.31180'), ('DE LAND', 20904, '29.03600', '-81.29750'), ('DE LAND HIGHLANDS', None, '29.06060', '-81.26440'), ('DE LAND SOUTHWEST', 1169, '29.00690', '-81.31100'), ('DE LEON SPRINGS', 2358, '29.11740', '-81.35180'), ('DELTONA', 69543, '28.90990', '-81.20880'), ('ELDRIDGE', None, '29.21130', '-81.45750'), ('ENTERPRISE', None, '28.86910', '-81.26690'), ('FATIO', None, '28.98090', '-81.33220'), ('GLENWOOD', None, '29.08590', '-81.35440'), ('HIGH BANKS', None, '28.88490', '-81.35470'), ('LAKE GEORGE', None, '29.28100', '-81.58920'), ('LAKE HELEN', 2743, '28.98370', '-81.23140'), ('LAKE MONROE', None, '28.84430', '-81.27600'), ('LAKE WOODRUFF', None, '29.10030', '-81.41770'), ('ORANGE CITY', 6604, '28.93650', '-81.29280'), ('OSTEEN', None, '28.84590', '-81.16290'), ('PIERSON', 2596, '29.23770', '-81.46090'), ('PONCE DE LEON SPRINGS', None, '29.11930', '-81.35870'), ('SEVILLE', None, '29.31690', '-81.49290'), ('VALDEZ', None, '28.84500', '-81.33260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ046': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ALTAMONTE SPRINGS', 41200, '28.66210', '-81.39520'), ('CASSELBERRY', 22629, '28.66340', '-81.32350'), ('CHULUOTA', 1921, '28.63950', '-81.12030'), ('FERN PARK', 8318, '28.64820', '-81.34580'), ('FOREST CITY', 12612, '28.66120', '-81.44510'), ('GENEVA', 2601, '28.73940', '-81.11530'), ('GOLDENROD', 12871, '28.61150', '-81.29170'), ('LAKE HARNEY', None, '28.76140', '-81.05850'), ('LAKE JESSUP', None, '28.72660', '-81.22130'), ('LAKE MARY', 11458, '28.75900', '-81.33410'), ('LONGWOOD', 13745, '28.70100', '-81.34840'), ('MIDWAY', 1714, '28.79010', '-81.23120'), ('MULLET LAKE PARK', None, '28.78890', '-81.13870'), ('OVIEDO', 26316, '28.65750', '-81.18140'), ('PALM SHALDOWS', None, '28.78830', '-81.14320'), ('SANFORD', 38291, '28.78920', '-81.27570'), ('WEKIVA SPRINGS', None, '28.69840', '-81.42600'), ('WINTER SPRINGS', 31666, '28.68150', '-81.27470')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ047': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('BAREFOOT BAY', None, '27.88780', '-80.52140'), ('CAMP HOLLY FISH CAMP', None, '28.08440', '-80.75310'), ('COCOA BEACH', 12482, '28.33550', '-80.62690'), ('EAU GALLIE', None, '28.13010', '-80.64620'), ('FLORIDANA BEACH', None, '27.94620', '-80.49580'), ('GEORGIANA', None, '28.28820', '-80.67540'), ('GRANT', None, '27.92860', '-80.52680'), ('INDIALANTIC', 2944, '28.08930', '-80.56590'), ('INDIAN HARBOUR BEACH', 8152, '28.15300', '-80.59780'), ('MALABAR', 2622, '27.98670', '-80.58230'), ('MELBOURNE', 71382, '28.11500', '-80.64010'), ('MELBOURNE BEACH', 3335, '28.06740', '-80.55960'), ('MELBOURNE VILLAGE', 706, '28.08500', '-80.66720'), ('MICCO', 9498, '27.87110', '-80.51550'), ('PALM BAY', 79413, '27.98570', '-80.66020'), ('PALM SHORES', 794, '28.18630', '-80.65750'), ('PATRICK AIRFORCE BASE', None, '28.28220', '-80.59980'), ('PINEDA', None, '28.23690', '-80.67870'), ('ROCKLEDGE', 20170, '28.31980', '-80.72900'), ('SATELLITE BEACH', 9577, '28.17600', '-80.60020'), ('VALKARIA', None, '27.96340', '-80.54390'), ('WEST MELBOURNE', 9824, '28.07980', '-80.67160')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'FLZ044': {'fullStateName': 'FLORIDA', 'state': 'FL', 'cities': [('ASTOR', 1487, '29.14970', '-81.53220'), ('BASSVILLE PARK', None, '28.83850', '-81.76770'), ('BLUE SPRING STATE PARK', None, '28.95140', '-81.34460'), ('CASSIA', None, '28.88910', '-81.46570'), ('EMERALDA', None, '28.94990', '-81.82470'), ('EUSTIS', 15106, '28.85390', '-81.68520'), ('FOREST HILLS', None, '29.00290', '-81.43360'), ('FRUITLAND PARK', 3186, '28.85710', '-81.90950'), ('FULLERVILLE', None, '29.00880', '-81.45450'), ('HONTOON ISLAND STATE PARK', None, '28.97430', '-81.36960'), ('LADY LAKE', 11828, '28.92780', '-81.92890'), ('LAKE DORA', None, '28.78920', '-81.69520'), ('LAKE EUSTIS', None, '28.85090', '-81.72970'), ('LAKE GRIFFIN', None, '28.84660', '-81.85010'), ('LAKE KATHRYN HEIGHTS', None, '29.01530', '-81.48860'), ('LAKE YALE', None, '28.91610', '-81.74000'), ('LEESBURG', 15956, '28.80850', '-81.88260'), ('LISBON', 273, '28.87040', '-81.78320'), ('MID FLORIDA LAKES', None, '28.86280', '-81.75700'), ('MOUNT DORA', 9418, '28.80670', '-81.64170'), ('MOUNT PLYMOUTH', 2814, '28.79970', '-81.53230'), ('PAISLEY', 734, '28.98230', '-81.54290'), ('SILVER LAKE', 1882, '28.84170', '-81.79850'), ('TAVARES', 9700, '28.80480', '-81.73570'), ('THE VILLAGES', 8333, '28.94520', '-81.94470'), ('UMATILLA', 2214, '28.92750', '-81.66690')], 'partOfState': 'EAST CENTRAL', 'wfo': 'MLB'}, -'NCZ008': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEREA', None, '36.32000', '-78.73000'), ('BUTNER', 5792, '36.13520', '-78.77040'), ('CREEDMOOR', 2232, '36.12090', '-78.68720'), ('KERR LAKE', None, '36.53000', '-78.60000'), ('OAK HILL', None, '36.43000', '-78.72000'), ('OXFORD', 8338, '36.31090', '-78.58960'), ('STEM', 229, '36.19980', '-78.72320'), ('STOVALL', 376, '36.44770', '-78.56940')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'OHZ089': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ASHTABULA', 20962, '41.87950', '-80.79820'), ('CONNEAUT', 12485, '41.92630', '-80.57020'), ('EDGEWOOD', 4762, '41.87870', '-80.74080'), ('GENEVA', 6595, '41.79980', '-80.94850'), ('GENEVA-ON-THE-LAKE', 1545, '41.85660', '-80.94600'), ('NORTH KINGSVILLE', 2658, '41.91720', '-80.67020')], 'partOfState': 'NORTHEAST', 'wfo': 'CLE'}, -'OHZ088': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('FRANKLIN FURNACE', 1537, '38.60800', '-82.84650'), ('LUCASVILLE', 1588, '38.87900', '-82.99530'), ('NEW BOSTON', 2340, '38.75200', '-82.93500'), ('OTWAY', 86, '38.86500', '-83.18830'), ('PORTSMOUTH', 20909, '38.75510', '-82.95070'), ('RARDEN', 176, '38.92270', '-83.24280'), ('ROSEMOUNT', 2043, '38.78780', '-82.97170'), ('SCIOTODALE', 982, '38.75530', '-82.86110'), ('SOUTH WEBSTER', 764, '38.81560', '-82.72790'), ('WEST PORTSMOUTH', 3458, '38.76280', '-83.03830'), ('WHEELERSBURG', 6471, '38.73410', '-82.84530')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'NDZ004': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('ANTLER', 47, '48.97130', '-101.28300'), ('BOTTINEAU', 2336, '48.82540', '-100.44330'), ('CARBURY', None, '48.90000', '-100.53330'), ('ECKMAN', None, '48.66670', '-101.05000'), ('GARDENA', 38, '48.70100', '-100.49810'), ('KRAMER', 44, '48.69120', '-100.70710'), ('LANDA', 28, '48.89540', '-100.91100'), ('LANSFORD', 253, '48.62660', '-101.37640'), ('MAXBASS', 91, '48.72220', '-101.14170'), ('NEWBURG', 88, '48.71470', '-100.91230'), ('OVERLY', 19, '48.68120', '-100.15070'), ('ROTH', None, '48.95000', '-100.60000'), ('RUSSELL', None, '48.67350', '-100.90200'), ('SOURIS', 83, '48.91030', '-100.68050'), ('WESTHOPE', 533, '48.91180', '-101.01660'), ('WILLOW CITY', 221, '48.60470', '-100.29270')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDZ005': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BELCOURT', 2440, '48.84160', '-99.74630'), ('DUNSEITH', 739, '48.81260', '-100.06130'), ('EAST DUNSEITH', 219, '48.86550', '-100.01640'), ('MYLO', 19, '48.63590', '-99.61790'), ('NANSON', None, '48.58330', '-99.76670'), ('ROLETTE', 538, '48.66120', '-99.84060'), ('ROLLA', 1417, '48.85870', '-99.61780'), ('SHELL VALLEY', 395, '48.79790', '-99.86430'), ('ST. JOHN', 358, '48.94360', '-99.71070'), ('THORNE', None, '48.73330', '-99.91670')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDZ002': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BATTLEVIEW', None, '48.58330', '-102.78330'), ('BOWBELLS', 406, '48.80300', '-102.24680'), ('COLUMBUS', 151, '48.90450', '-102.78100'), ('FLAXTON', 73, '48.89730', '-102.39270'), ('LARSON', 17, '48.89110', '-102.86560'), ('LIGNITE', 174, '48.87690', '-102.56370'), ('NORTHGATE', None, '48.98330', '-102.26670'), ('PORTAL', 131, '48.99560', '-102.54790'), ('POWERS LAKE', 309, '48.56360', '-102.64350')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'NDZ003': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('GLENBURN', 374, '48.51310', '-101.22050'), ('GRANO', 9, '48.61700', '-101.58650'), ('LORAINE', 19, '48.86710', '-101.56730'), ('MOHALL', 812, '48.76600', '-101.51060'), ('NORMA', None, '48.70000', '-101.76670'), ('SHERWOOD', 255, '48.96150', '-101.63310'), ('TOLLEY', 63, '48.73050', '-101.82650')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'BIS'}, -'NDZ001': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('AMBROSE', 23, '48.95520', '-103.48080'), ('CROSBY', 1089, '48.91140', '-103.29470'), ('FORTUNA', 31, '48.91110', '-103.77690'), ('NOONAN', 154, '48.89030', '-103.00990')], 'partOfState': 'NORTHWEST', 'wfo': 'BIS'}, -'OHZ081': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHERRY FORK', 127, '38.88840', '-83.61350'), ('MANCHESTER', 2043, '38.69140', '-83.60520'), ('PEEBLES', 1739, '38.94720', '-83.40830'), ('ROME', 117, '38.66480', '-83.37910'), ('SEAMAN', 1039, '38.93880', '-83.57310'), ('WEST UNION', 2903, '38.79320', '-83.54370'), ('WINCHESTER', 1025, '38.94260', '-83.65360')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHZ080': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('BELFAST', None, '39.06000', '-83.55000'), ('GREENFIELD', 4906, '39.35420', '-83.38910'), ('HIGHLAND', 283, '39.34360', '-83.59960'), ('HILLSBORO', 6368, '39.20920', '-83.61250'), ('LEESBURG', 1253, '39.34580', '-83.55460'), ('LYNCHBURG', 1350, '39.24430', '-83.78880'), ('MARSHALL', None, '39.15000', '-83.47000'), ('MOWRYSTOWN', 373, '39.03880', '-83.75250'), ('SINKING SPRING', 158, '39.07510', '-83.38720')], 'partOfState': 'SOUTHWEST', 'wfo': 'ILN'}, -'OHZ083': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('COALTON', 545, '39.11250', '-82.61120'), ('JACKSON', 6184, '39.04570', '-82.62920'), ('OAK HILL', 1685, '38.89600', '-82.56940'), ('WELLSTON', 6078, '39.11710', '-82.53830')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OKZ044': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('COOKIETOWN', None, '34.27000', '-98.45000'), ('DEVOL', 150, '34.19470', '-98.58770'), ('HULEN', None, '34.50000', '-98.22000'), ('RANDLETT', 511, '34.17770', '-98.46270'), ('TAYLOR', None, '34.17000', '-98.33000'), ('TEMPLE', 1146, '34.27350', '-98.23470'), ('WALTERS', 2657, '34.35730', '-98.30790')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OHZ084': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('HAMDEN', 871, '39.16000', '-82.52540'), ('LAKE HOPE STATE PARK', None, '39.33330', '-82.35160'), ('MCARTHUR', 1888, '39.24700', '-82.47840'), ('WILKESVILLE', 151, '39.07650', '-82.32660'), ('ZALESKI', 375, '39.28060', '-82.39630')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHZ087': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('ATHALIA', 328, '38.51220', '-82.30760'), ('BURLINGTON', 2794, '38.40930', '-82.52900'), ('CHESAPEAKE', 842, '38.43050', '-82.45050'), ('COAL GROVE', 2027, '38.49800', '-82.64270'), ('HANGING ROCK', 279, '38.55890', '-82.72620'), ('IRONTON', 11211, '38.53250', '-82.67850'), ('LAKE VESUVIUS', None, '38.61550', '-82.63070'), ('PROCTORVILLE', 620, '38.43760', '-82.38090'), ('SOUTH POINT', 3742, '38.41920', '-82.57420')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'OHZ086': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CHESHIRE', 221, '38.94400', '-82.11220'), ('CROWN CITY', 411, '38.58830', '-82.28970'), ('GALLIPOLIS', 4180, '38.82000', '-82.19150'), ('RIO GRANDE', 915, '38.88170', '-82.37860'), ('VINTON', 324, '38.97740', '-82.34030')], 'partOfState': 'SOUTHEAST', 'wfo': 'RLX'}, -'MNZ096': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLACK HAMMER', None, '43.61254', '-91.66640'), ('BROWNSVILLE', 517, '43.69860', '-91.28050'), ('CALEDONIA', 2965, '43.63410', '-91.50030'), ('EITZEN', 229, '43.50830', '-91.46470'), ('FREEBURG', None, '43.61254', '-91.36669'), ('HOKAH', 614, '43.76010', '-91.35000'), ('HOUSTON', 1020, '43.76070', '-91.57230'), ('LA CRESCENT', 4923, '43.82940', '-91.30080'), ('MONEY CREEK', None, '43.81540', '-91.61523'), ('MOUND PRAIRIE', None, '43.78068', '-91.45075'), ('NEWHOUSE', None, '43.51568', '-91.71758'), ('PERKINS', None, '43.78251', '-91.64996'), ('RENO', None, '43.59792', '-91.28079'), ('RICEFORD', None, '43.58330', '-91.72489'), ('SHELDON', None, '43.68199', '-91.60244'), ('SPRING GROVE', 1304, '43.56100', '-91.63950'), ('WILLINGTON', None, '43.54858', '-91.54944'), ('WILLINGTON GROVE', None, '43.57965', '-91.58416')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'MNZ097': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('EDGERTON', 1033, '43.87420', '-96.13060'), ('HATFIELD', 47, '43.95160', '-96.18910'), ('HOLLAND', 215, '44.09090', '-96.19170'), ('IHLEN', 107, '43.91000', '-96.37190'), ('JASPER', 597, '43.84960', '-96.39950'), ('PIPESTONE', 4280, '44.00000', '-96.31410'), ('RUTHTON', 284, '44.17780', '-96.10390'), ('TROSKY', 116, '43.88840', '-96.25570'), ('WOODSTOCK', 132, '44.01040', '-96.09650')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'MNZ094': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ADAMS', 800, '43.56500', '-92.71850'), ('AUSTIN', 23314, '43.67150', '-92.97060'), ('BROWNSDALE', 718, '43.74030', '-92.86740'), ('DEXTER', 333, '43.71810', '-92.70250'), ('ELKTON', 149, '43.65980', '-92.70870'), ('GRAND MEADOW', 945, '43.70520', '-92.57180'), ('JOHNSBURG', None, '43.50837', '-92.77573'), ('LANSING', None, '43.74961', '-92.96762'), ('LE ROY', 925, '43.51360', '-92.50780'), ('LYLE', 566, '43.50540', '-92.94200'), ('MAPLEVIEW', 189, '43.68900', '-92.97490'), ('MAYVILLE', None, '43.76423', '-92.91645'), ('RACINE', 355, '43.77650', '-92.48200'), ('RAMSEY', 18510, '43.71671', '-92.98590'), ('RENOVA', None, '43.73134', '-92.78304'), ('ROSE CREEK', 354, '43.60460', '-92.82960'), ('SARGEANT', 76, '43.80560', '-92.80090'), ('TAOPI', 93, '43.55840', '-92.64040'), ('VARCO', None, '43.61437', '-92.98407'), ('WALTHAM', 196, '43.82070', '-92.87520')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'MNZ095': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('AMHERST', None, '43.61254', '-91.91678'), ('ARENDAHL', None, '43.83185', '-91.91495'), ('BRATSBERG', None, '43.73134', '-91.76692'), ('BRISTOL', None, '43.54858', '-92.18360'), ('CANTON', 343, '43.53010', '-91.92940'), ('CARINONA', None, '43.66554', '-92.16715'), ('CHATFIELD', 2394, '43.84390', '-92.18590'), ('CHERRY GROVE', None, '43.57965', '-92.28412'), ('CHOICE', None, '43.66372', '-91.79982'), ('ETNA', None, '43.59792', '-92.34991'), ('FILLMORE', None, '43.74778', '-92.26767'), ('FOUNTAIN', 343, '43.74070', '-92.13400'), ('GRANGER', None, '43.50106', '-92.09954'), ('GREENLEAFTON', None, '43.58148', '-92.21833'), ('HAMILTON', None, '43.76423', '-92.45043'), ('HARMONY', 1080, '43.55530', '-92.00940'), ('HENRYTOWN', None, '43.59792', '-91.93506'), ('HIGHLAND', None, '43.68382', '-91.88388'), ('HUTTON', None, '43.61437', '-92.05202'), ('ISINOURS', None, '43.71489', '-92.05019'), ('LANESBORO', 788, '43.71950', '-91.97350'), ('LENORA', None, '43.56503', '-91.90033'), ('MABEL', 766, '43.52030', '-91.76830'), ('NEWBURG', None, '43.56503', '-91.83271'), ('OSTRANDER', 212, '43.61400', '-92.42560'), ('PETERSON', 269, '43.78600', '-91.83320'), ('PILOT MOUND', None, '43.81540', '-92.03557'), ('PRESTON', 1426, '43.67160', '-92.08250'), ('RUSHFORD', 1696, '43.81230', '-91.75240'), ('RUSHFORD VILLAGE', 714, '43.80440', '-91.78730'), ('SPRING VALLEY', 2518, '43.68600', '-92.38990'), ('TAWNEY', None, '43.61620', '-91.79982'), ('WASHINGTON', None, '43.76423', '-92.34991'), ('WHALAN', 64, '43.73280', '-91.92770'), ('WYKOFF', 460, '43.70820', '-92.26740'), ('YORK', None, '43.53213', '-92.26584')], 'partOfState': 'SOUTHEAST', 'wfo': 'ARX'}, -'MNZ092': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BLUE EARTH', 3621, '43.63910', '-94.09980'), ('BRICELYN', 379, '43.56070', '-93.81300'), ('DELAVAN', 223, '43.76730', '-94.01850'), ('EASTON', 214, '43.76590', '-93.90030'), ('ELMORE', 735, '43.50590', '-94.08850'), ('FROST', 251, '43.58370', '-93.92540'), ('KIESTER', 540, '43.53660', '-93.71140'), ('MINNESOTA LAKE', 681, '43.84050', '-93.82870'), ('WALTERS', 88, '43.60520', '-93.67350'), ('WELLS', 2494, '43.74370', '-93.72620'), ('WINNEBAGO', 1487, '43.76600', '-94.16830')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ093': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALBERT LEA', 18356, '43.65510', '-93.36660'), ('ALDEN', 652, '43.67010', '-93.57320'), ('CLARKS GROVE', 734, '43.76440', '-93.32780'), ('CONGER', 133, '43.61530', '-93.52860'), ('EMMONS', 432, '43.50740', '-93.48380'), ('FREEBORN', 305, '43.76640', '-93.56320'), ('GENEVA', 449, '43.82390', '-93.26830'), ('GLENVILLE', 720, '43.56900', '-93.27560'), ('HARTLAND', 288, '43.80430', '-93.48560'), ('HAYWARD', 249, '43.64940', '-93.24670'), ('HOLLANDALE', 292, '43.75980', '-93.20540'), ('MANCHESTER', 81, '43.72490', '-93.45060'), ('MYRTLE', 63, '43.56320', '-93.16290'), ('TWIN LAKES', 168, '43.56090', '-93.42330')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MPX'}, -'MNZ090': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('ALPHA', 126, '43.63920', '-94.87140'), ('BERGEN', None, '43.79120', '-94.99470'), ('HERON LAKE', 768, '43.79530', '-95.32360'), ('JACKSON', 3501, '43.62440', '-94.98900'), ('LAKEFIELD', 1721, '43.67790', '-95.17110'), ('OKABENA', 185, '43.73860', '-95.31580'), ('WILDER', 69, '43.82550', '-95.20630')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'NCZ004': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AYERSVILLE', None, '36.48330', '-80.03330'), ('CAPELLA', None, '36.36670', '-80.31670'), ('COLLINSTOWN', None, '36.53330', '-80.35000'), ('DANBURY', 108, '36.40880', '-80.21170'), ('DILLARD', None, '36.40000', '-80.10000'), ('FRANCISCO', None, '36.50000', '-80.36670'), ('GERMANTON', None, '36.26670', '-80.23330'), ('KING', 5952, '36.27800', '-80.35760'), ('LAWSONVILLE', None, '36.48330', '-80.25000'), ('MEADOWS', None, '36.36670', '-80.18330'), ('PINE HALL', None, '36.31670', '-80.06670'), ('PINNACLE', None, '36.33330', '-80.40000'), ('PRESTONVILLE', None, '36.46670', '-80.11670'), ('SANDY RIDGE', None, '36.50000', '-80.11670'), ('VADE MECUM', None, '36.41670', '-80.31670'), ('WALNUT COVE', 1465, '36.29480', '-80.13930')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RNK'}, -'MNZ098': {'fullStateName': 'MINNESOTA', 'state': 'MN', 'cities': [('BEAVER CREEK', 250, '43.61260', '-96.36180'), ('HARDWICK', 222, '43.77520', '-96.19670'), ('HILLS', 565, '43.52650', '-96.36080'), ('KENNETH', 61, '43.75330', '-96.07180'), ('LUVERNE', 4617, '43.65480', '-96.20990'), ('MAGNOLIA', 221, '43.64490', '-96.07450'), ('STEEN', 182, '43.51320', '-96.26220')], 'partOfState': 'SOUTHWEST', 'wfo': 'FSD'}, -'CAZ015': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('ANDERSON', 9022, '40.44990', '-122.29420'), ('BLACK BUTTE DAM', None, '39.81660', '-122.33530'), ('BLACK BUTTE LAKE', None, '39.81750', '-122.33670'), ('BLACK BUTTE SUMMIT', None, '39.81550', '-122.35170'), ('BLOSSOM', None, '40.17750', '-122.42220'), ('CENTERVILLE', None, '40.51830', '-122.48420'), ('CLOVERDALE', 6831, '40.47360', '-122.47470'), ('CORNING', 6741, '39.92630', '-122.18200'), ('COTTONWOOD', 2960, '40.39030', '-122.28000'), ('DAIRYVILLE', None, '40.25530', '-122.20750'), ('FLOURNOY', None, '39.92050', '-122.43500'), ('HENLEYVILLE', None, '39.96190', '-122.32550'), ('HILLCREST', None, '40.86390', '-121.90750'), ('INWOOD', None, '40.52420', '-121.95610'), ('LOS MOLINOS', 1952, '40.02760', '-122.09720'), ('MANTON', 372, '40.43530', '-121.86890'), ('MILLVILLE', 610, '40.54940', '-122.17420'), ('MONTGOMERY CREEK', 96, '40.84170', '-121.92250'), ('OLINDA', None, '40.44390', '-122.40640'), ('PALO CEDRO', 1247, '40.56390', '-122.23780'), ('PASKENTA', None, '39.88470', '-122.54470'), ('PAYNES CREEK', None, '40.33560', '-121.91390'), ('RED BLUFF', 13147, '40.17380', '-122.24040'), ('REDDING', 80865, '40.57240', '-122.36490'), ('RICHFIELD', None, '39.97500', '-122.17550'), ('ROSEWOOD', None, '40.26970', '-122.55530'), ('ROUND MOUNTAIN', 122, '40.79420', '-121.94080'), ('SHINGLETOWN', 2222, '40.49250', '-121.88810'), ('VINA', None, '39.93300', '-122.05270'), ('WHITMORE', None, '40.62940', '-121.91560')], 'partOfState': 'NORTHERN', 'wfo': 'STO'}, -'OKZ045': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ADDINGTON', 117, '34.24310', '-97.96630'), ('CORNISH', 172, '34.16250', '-97.59520'), ('FLEETWOOD', None, '33.90000', '-97.85000'), ('GRADY', None, '34.02000', '-97.67000'), ('HASTINGS', 155, '34.22510', '-98.10840'), ('OSCAR', None, '33.98000', '-97.75000'), ('RINGLING', 1135, '34.17670', '-97.59040'), ('RYAN', 894, '34.02160', '-97.95400'), ('SUGDEN', 59, '34.08120', '-97.97840'), ('TERRAL', 386, '33.89610', '-97.93870'), ('WAURIKA', 1988, '34.18650', '-98.02230')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'UTZ007': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('AVON', 306, '41.53000', '-111.82000'), ('BEAVER MTN', None, '41.96000', '-111.55000'), ('BRIGHAM CITY', 17411, '41.50910', '-112.00960'), ('CASTLE ROCK', None, '41.13000', '-111.17000'), ('COLLINSTON', None, '41.77000', '-112.08000'), ('DEWEYVILLE', 278, '41.71000', '-112.08980'), ('ECHO', None, '40.97000', '-111.45000'), ('ELWOOD', 678, '41.68200', '-112.09500'), ('EMORY', None, '41.08000', '-111.32000'), ('FIELDING', 448, '41.81200', '-112.11640'), ('GARDEN CITY', 357, '41.93410', '-111.40970'), ('GARLAND', 1943, '41.73680', '-112.14900'), ('HONEYVILLE', 1214, '41.63480', '-112.08280'), ('LAKETOWN', 188, '41.82230', '-111.31770'), ('LAKOTA', None, '41.98000', '-111.40000'), ('MANTUA RES', None, '41.50280', '-111.93240'), ('MEADOWVILLE', None, '41.85000', '-111.40000'), ('MENDON', 898, '41.71100', '-111.97970'), ('NORDIC VLY', None, '41.36000', '-111.79000'), ('NORTH OGDEN', 15026, '41.31140', '-111.95890'), ('PERRY', 2383, '41.46490', '-112.03430'), ('PETERSON', None, '41.12000', '-111.74500'), ('PICKELVILLE', None, '41.92000', '-111.38000'), ('PLYMOUTH', 328, '41.87640', '-112.13480'), ('PORTAGE', 257, '41.97660', '-112.23780'), ('POWDER MTN', None, '41.39000', '-111.75000'), ('RANDOLPH', 483, '41.66450', '-111.18270'), ('SNOWBASIN', None, '41.22000', '-111.83000'), ('SUGARHOUSE', None, '40.73000', '-111.81000'), ('TREMONTON', 5592, '41.68500', '-112.13000'), ('UNIV OF UTAH', None, '40.78000', '-111.83000'), ('WAHSATCH', None, '41.20000', '-111.10000'), ('WASHAKIE', None, '41.95000', '-112.22000'), ('WOODRUFF', 194, '41.52290', '-111.16360')], 'partOfState': '', 'wfo': 'SLC'}, -'MDZ007': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ABERDEEN', 13842, '39.51170', '-76.17250'), ('ABERDEEN PROVING GROUND', 3116, '39.47250', '-76.13000'), ('ABINGDON', None, '39.46220', '-76.27940'), ('BEL AIR', 10080, '39.53460', '-76.34690'), ('BYNUM', None, '39.56560', '-76.36500'), ('CARSINS', None, '39.53720', '-76.21280'), ('CHROME HILL', None, '39.62250', '-76.42080'), ('CHURCHVILLE', None, '39.56110', '-76.24580'), ('DARLINGTON', None, '39.63920', '-76.20310'), ('EDGEWOOD', 23378, '39.42050', '-76.29920'), ('FALLSTON', 8427, '39.52100', '-76.42650'), ('HARFORD FURNACE', None, '39.49500', '-76.26170'), ('HAVRE DE GRACE', 11331, '39.54720', '-76.09900'), ('HICKORY', None, '39.57860', '-76.34560'), ('JARRETTSVILLE', 2756, '39.60370', '-76.47270'), ('JOPPA', None, '39.43360', '-76.35810'), ('JOPPATOWNE', 11391, '39.41540', '-76.35420'), ('MAGNOLIA', None, '39.40470', '-76.32500'), ('NORRISVILLE', None, '39.70470', '-76.53500'), ('PERRYMAN', 2461, '39.46990', '-76.20570'), ('PLEASANT HILLS', 2851, '39.48710', '-76.39520'), ('PYLESVILLE', None, '39.68970', '-76.37330'), ('SCARBORO', None, '39.64610', '-76.29560'), ('WHITEFORD', None, '39.70890', '-76.34580')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'MDZ006': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BENTLEY SPRINGS', None, '39.67360', '-76.67110'), ('BROOKLANDVILLE', None, '39.42030', '-76.67030'), ('COCKEYSVILLE', 19388, '39.47780', '-76.63180'), ('GLYNDON', None, '39.47640', '-76.81610'), ('KINGSVILLE', 4214, '39.44900', '-76.41830'), ('LONG GREEN', None, '39.47280', '-76.52330'), ('REISTERSTOWN', 22438, '39.45690', '-76.81490'), ('TIMONIUM', None, '39.43690', '-76.62000')], 'partOfState': 'NORTHERN', 'wfo': 'LWX'}, -'MDZ005': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ELDERSBURG', 27741, '39.40840', '-76.94320'), ('FINKSBURG', None, '39.49280', '-76.88970'), ('GAITHER', None, '39.36140', '-76.99330'), ('GAMBER', None, '39.46470', '-76.93420'), ('HAMPSTEAD', 5060, '39.61840', '-76.85580'), ('HARNEY', None, '39.71390', '-77.20690'), ('HENRYTON', None, '39.35110', '-76.91360'), ('KEYSVILLE', None, '39.63390', '-77.25890'), ('LINEBORO', None, '39.71860', '-76.84420'), ('LINWOOD', None, '39.56330', '-77.14310'), ('LOUISVILLE', None, '39.44860', '-76.92420'), ('MANCHESTER', 3329, '39.65850', '-76.89070'), ('MARRIOTTSVILLE', None, '39.35000', '-76.89970'), ('MARSTON', None, '39.50780', '-77.10060'), ('MIDDLEBURG', None, '39.59390', '-77.21310'), ('MILLERS', None, '39.67110', '-76.85140'), ('MOUNT AIRY', 6425, '39.37420', '-77.15930'), ('OAKLAND', 1930, '39.41240', '-76.90190'), ('REESE', None, '39.54280', '-76.93810'), ('SYKESVILLE', 4197, '39.37000', '-76.97540'), ('TANEYTOWN', 5128, '39.65510', '-77.16870'), ('UNIONTOWN', None, '39.59330', '-77.11640'), ('WAGNERS MILL', None, '39.56140', '-77.05580'), ('WATERSVILLE', None, '39.36750', '-77.10390'), ('WESTMINSTER', 16731, '39.57880', '-77.00770'), ('WINFIELD', None, '39.44720', '-77.05530')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LWX'}, -'MDZ004': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ARNOLDTOWN', None, '39.40940', '-77.60610'), ('BALLENGER CREEK', 13518, '39.37240', '-77.43560'), ('BLOOMFIELD', None, '39.47560', '-77.42170'), ('BOLIVAR', None, '39.46640', '-77.59190'), ('BRADDOCK HEIGHTS', 4627, '39.41430', '-77.50730'), ('BRUNSWICK', 4894, '39.31640', '-77.62320'), ('BUCKEYSTOWN', None, '39.33470', '-77.43190'), ('BURKITTSVILLE', 171, '39.39140', '-77.62740'), ('EMMITSBURG', 2290, '39.70460', '-77.32560'), ('FREDERICK', 52767, '39.42820', '-77.41690'), ('GREEN VALLEY', 12262, '39.34360', '-77.24520'), ('JEFFERSON', None, '39.36190', '-77.53190'), ('LIBERTYTOWN', None, '39.48500', '-77.24060'), ('MIDDLETOWN', 2668, '39.44220', '-77.54420'), ('MOUNT PLEASANT', None, '39.45360', '-77.32610'), ('MYERSVILLE', 1382, '39.50620', '-77.56510'), ('NEW MARKET', 427, '39.38410', '-77.27440'), ('PARK MILLS', None, '39.29780', '-77.40810'), ('PETERSVILLE', None, '39.34640', '-77.61110'), ('PLEASANT WALK', None, '39.53970', '-77.58640'), ('POINT OF ROCKS', None, '39.27580', '-77.53940'), ('ROSEMONT', 273, '39.33480', '-77.62140'), ('SABILLASVILLE', None, '39.70000', '-77.45670'), ('THURMONT', 5588, '39.62380', '-77.40970'), ('UTICA', None, '39.52580', '-77.39420'), ('WALKERSVILLE', 5192, '39.48450', '-77.35330'), ('WOLFSVILLE', None, '39.57420', '-77.55080'), ('WOODSBORO', 846, '39.53210', '-77.31100')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'LWX'}, -'MDZ002': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('BOWERS', 305, '39.06030', '-75.40020'), ('CAMDEN', 2100, '39.11280', '-75.54950'), ('CHESWOLD', 313, '39.21650', '-75.58460'), ('CLAYTON', 1273, '39.29250', '-75.63320'), ('DOVER', 32135, '39.15870', '-75.51740'), ('DOVER BASE HOUSING', 3394, '39.11830', '-75.48260'), ('FARMINGTON', 75, '38.87070', '-75.57960'), ('FELTON', 784, '39.00910', '-75.57790'), ('FREDERICA', 648, '39.00890', '-75.46480'), ('HARRINGTON', 3174, '38.92270', '-75.57230'), ('HARTLY', 78, '39.16840', '-75.71310'), ('HIGHLAND ACRES', 3379, '39.11720', '-75.52310'), ('HOUSTON', 430, '38.91680', '-75.50450'), ('KENT ACRES', 1637, '39.13310', '-75.51880'), ('KENTON', 237, '39.22720', '-75.66580'), ('LEIPSIC', 203, '39.24310', '-75.51710'), ('LITTLE CREEK', 195, '39.16520', '-75.44880'), ('MAGNOLIA', 226, '39.06980', '-75.47670'), ('RISING SUN-LEBANON', 2458, '39.10110', '-75.50660'), ('RIVERVIEW', 1583, '39.02910', '-75.51980'), ('RODNEY VILLAGE', 1602, '39.12640', '-75.53690'), ('SMYRNA', 5679, '39.29540', '-75.60770'), ('VIOLA', 156, '39.04210', '-75.57190'), ('WOODSIDE', 184, '39.07030', '-75.56850'), ('WOODSIDE EAST', 2174, '39.06710', '-75.53820'), ('WYOMING', 1141, '39.11680', '-75.56060'), ('MARYDEL', 147, '39.11390', '-75.74850')], 'partOfState': '', 'wfo': 'PHI'}, -'MDZ001': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ACCIDENT', 353, '39.62690', '-79.32090'), ('DEER PARK', 405, '39.42350', '-79.32670'), ('FRIENDSVILLE', 539, '39.66300', '-79.40520'), ('GRANTSVILLE', 619, '39.69650', '-79.15710'), ('KITZMILLER', 302, '39.38920', '-79.18370'), ('LOCH LYNN HEIGHTS', 469, '39.39130', '-79.37310'), ('MC HENRY', None, '39.55000', '-79.35000'), ('MOUNTAIN LAKE PARK', 2248, '39.40380', '-79.37940')], 'partOfState': '', 'wfo': 'PBZ'}, -'ORZ050': {'fullStateName': 'OREGON', 'state': 'OR', 'cities': [('ENTERPRISE', 1895, '45.42530', '-117.27610'), ('JOSEPH', 1054, '45.35200', '-117.22790'), ('LOSTINE', 263, '45.48710', '-117.42900'), ('WALLOWA', 869, '45.57070', '-117.52770')], 'partOfState': 'NORTHEAST', 'wfo': 'PDT'}, -'NCZ002': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BARRETT', None, '36.51670', '-80.95000'), ('ENNICE', None, '36.55000', '-81.00000'), ('GLADE VALLEY', None, '36.48330', '-81.05000'), ('PINEY CREEK', None, '36.55000', '-81.30000'), ('ROARING GAP', None, '36.40000', '-80.98330'), ('SCOTTVILLE', None, '36.50000', '-81.28330'), ('SPARTA', 1817, '36.50000', '-81.13330'), ('STRATFORD', None, '36.51670', '-81.21670'), ('TWIN OAKS', None, '36.53330', '-81.16670'), ('WHITEHEAD', None, '36.46670', '-81.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'MDZ009': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('ASPEN HILL', 50228, '39.09210', '-77.07900'), ('BARNESVILLE', 161, '39.21990', '-77.38110'), ('BETHESDA', 55277, '38.98980', '-77.12030'), ('BOYDS', None, '39.18360', '-77.31310'), ('BRADLEY FARMS', None, '39.00670', '-77.19110'), ('BROOKEVILLE', 120, '39.17660', '-77.05740'), ('BURTONSVILLE', 7305, '39.11120', '-76.93220'), ('CALVERTON', 12610, '39.05640', '-76.94820'), ('CHEVY CHASE', 9381, '38.99500', '-77.07310'), ('CLARKSBURG', 1834, '39.23860', '-77.27970'), ('CLOVERLY', 7835, '39.10280', '-76.97660'), ('COLESVILLE', 19810, '39.08830', '-77.00710'), ('CONGRESSIONAL MANOR', None, '38.99720', '-77.17310'), ('DAMASCUS', 11430, '39.27770', '-77.20500'), ('DAWSONVILLE', None, '39.12830', '-77.34330'), ('DICKERSON', None, '39.22000', '-77.42440'), ('EDNOR', None, '39.13580', '-76.99530'), ('FAIRLAND', 21738, '39.08220', '-76.95160'), ('FOUR CORNERS', None, '39.02030', '-77.01310'), ('FRIENDSHIP', None, '39.30690', '-77.19750'), ('GAITHERSBURG', 52613, '39.14120', '-77.21660'), ('GARRETT PARK', 917, '39.03610', '-77.09460'), ('GERMANTOWN', 55419, '39.17820', '-77.26070'), ('GLEN ECHO', 242, '38.96740', '-77.14080'), ('GLENMONT', None, '39.05780', '-77.05000'), ('HILLANDALE', 3054, '39.01960', '-76.97470'), ('KENSINGTON', 1873, '39.02590', '-77.07320'), ('LAYTONSVILLE', 277, '39.20960', '-77.14160'), ('MONTGOMERY VILLAGE', 38051, '39.18120', '-77.19360'), ('NORBECK', None, '39.11000', '-77.07610'), ('NORTH POTOMAC', 23044, '39.09640', '-77.24500'), ('OLNEY', 31438, '39.14920', '-77.08220'), ('POOLESVILLE', 5151, '39.14480', '-77.41000'), ('POTOMAC', 44822, '39.02580', '-77.19770'), ('ROCKVILLE', 47388, '39.08120', '-77.15390'), ('SILVER SPRING', 76540, '39.00000', '-77.05000'), ('SOMERSET', 1124, '38.96580', '-77.09540'), ('TAKOMA PARK', 17299, '38.98210', '-77.00280'), ('WHITE OAK', 20973, '39.04200', '-76.98860')], 'partOfState': 'CENTRAL', 'wfo': 'LWX'}, -'MDZ008': {'fullStateName': 'MARYLAND', 'state': 'MD', 'cities': [('CECILTON', 474, '39.40280', '-75.86980'), ('CHARLESTOWN', 1019, '39.57520', '-75.97930'), ('CHESAPEAKE CITY', 787, '39.52970', '-75.81070'), ('ELKTON', 11893, '39.60350', '-75.82080'), ('NORTH EAST', 2733, '39.60020', '-75.94250'), ('PERRYVILLE', 3672, '39.57100', '-76.06880'), ('PORT DEPOSIT', 676, '39.60360', '-76.11580'), ('RISING SUN', 1702, '39.69830', '-76.06060')], 'partOfState': 'NORTHEAST', 'wfo': 'PHI'}, -'UTZ006': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('COALVILLE', 1382, '40.91760', '-111.39440'), ('CROYDON', None, '41.07000', '-111.52000'), ('DEVILS SLIDE', None, '41.07000', '-111.55000'), ('EDEN', None, '41.30000', '-111.82000'), ('FRANCIS', 698, '40.61220', '-111.27530'), ('HEBER CITY', None, '40.50180', '-111.40150'), ('HENEFER', 684, '41.01920', '-111.49280'), ('HOYTSVILLE', None, '40.87000', '-111.38000'), ('HUNTSVILLE', 649, '41.25990', '-111.77270'), ('KAMAS', 1274, '40.64330', '-111.27370'), ('KIMBALL JCT', None, '40.73000', '-111.55000'), ('LIBERTY', None, '41.33000', '-111.87000'), ('MARION', None, '40.67000', '-111.28000'), ('MIDWAY', 2121, '40.51450', '-111.47450'), ('MORGAN', 2635, '41.04960', '-111.68270'), ('MOUNTAIN GREEN', None, '41.15500', '-111.80000'), ('OAKLEY', 948, '40.72210', '-111.28760'), ('PEOA', None, '40.72000', '-111.33000'), ('PORTERSVILLE', None, '40.98000', '-111.68000'), ('RICHVILLE', None, '41.01500', '-111.69500'), ('STODDARD', None, '41.07000', '-111.69400'), ('WALLSBURG', 274, '40.38690', '-111.42090'), ('WANSHIP', None, '40.80000', '-111.40000')], 'partOfState': '', 'wfo': 'SLC'}, -'LAZ033': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('ARNAUDVILLE', 1398, '30.41750', '-91.93140'), ('BIG CANE', None, '30.82060', '-92.00920'), ('CANKTON', 362, '30.34890', '-92.11140'), ('EUNICE', 11499, '30.49110', '-92.41910'), ('GRAND COTEAU', 1040, '30.41970', '-92.04640'), ('KROTZ SPRINGS', 1219, '30.53430', '-91.75350'), ('LAWTELL', None, '30.51830', '-92.18470'), ('LEONVILLE', 1007, '30.46440', '-91.98010'), ('MELVILLE', 1376, '30.69180', '-91.74730'), ('OPELOUSAS', 22860, '30.52470', '-92.08350'), ('PALMETTO', 188, '30.71780', '-91.90800'), ('PORT BARRE', 2287, '30.55680', '-91.95640'), ('SUNSET', 2352, '30.40830', '-92.06600'), ('WASHINGTON', 1082, '30.61540', '-92.05970')], 'partOfState': 'CENTRAL', 'wfo': 'LCH'}, -'WAZ031': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ANATONE', None, '46.13430', '-117.12550'), ('PEOLA', None, '46.30550', '-117.47580')], 'partOfState': 'SOUTHEAST', 'wfo': 'OTX'}, -'UTZ004': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('ALPINE', 7146, '40.46030', '-111.77450'), ('AMERICAN FORK', 21941, '40.38430', '-111.79390'), ('ELBERTA', 278, '39.95000', '-111.95000'), ('FAIRFIELD', None, '40.26000', '-112.02000'), ('GENOLA', 965, '39.99000', '-111.85000'), ('GOSHEN', 874, '39.95180', '-111.90090'), ('HIGHLAND', 8172, '40.42160', '-111.78880'), ('LEHI', 19028, '40.40230', '-111.85430'), ('LEVAN', 688, '39.55680', '-111.86020'), ('LINDON', 8363, '40.34130', '-111.71660'), ('MAPLETON', 5809, '40.12170', '-111.57300'), ('MILLS', None, '39.48000', '-112.05000'), ('MONA', 850, '39.81540', '-111.85750'), ('NEPHI', 4733, '39.71080', '-111.82880'), ('OREM', 84324, '40.29820', '-111.69810'), ('PAYSON', 12716, '40.03390', '-111.72810'), ('PLEASANT GROVE', 23468, '40.37040', '-111.73330'), ('PROVO', 105166, '40.24710', '-111.65970'), ('SALEM', 4372, '40.05230', '-111.67160'), ('SANTAQUIN', 4834, '39.97480', '-111.78360'), ('SPANISH FORK', 20246, '40.11430', '-111.63420'), ('SPRINGVILLE', 20424, '40.16490', '-111.61450')], 'partOfState': '', 'wfo': 'SLC'}, -'UTZ005': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('CLIVE', None, '40.68000', '-113.08000'), ('CURLEW JCT', None, '41.97000', '-113.05000'), ('DELLE', None, '40.77000', '-112.78000'), ('DUGWAY', 2016, '40.25000', '-112.75050'), ('ETNA', None, '41.67000', '-113.97000'), ('GROUSE CR', None, '41.72000', '-113.88000'), ('IBAPAH', None, '40.03000', '-113.98000'), ('KNOLLS', None, '40.72000', '-113.28000'), ('LAKESIDE', None, '41.21000', '-112.88000'), ('LUCIN', None, '41.35000', '-113.92000'), ('LYNN', None, '41.88000', '-113.73000'), ('PARK VLY', None, '41.82000', '-113.33000'), ('PROMONTORY', None, '41.62000', '-112.57000'), ('ROSETTE', None, '41.82000', '-113.42000'), ('SNOWVILLE', 177, '41.96980', '-112.71470'), ('STANDROD', None, '41.98000', '-113.42000'), ('TOOELE', 22502, '40.53650', '-112.30140'), ('WENDOVER', 1537, '40.74000', '-114.02300'), ('YOST', None, '41.97000', '-113.55000')], 'partOfState': '', 'wfo': 'SLC'}, -'WYZ013': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('HOBACK JUNCTION', None, '43.32000', '-110.73000'), ('JACKSON', 8647, '43.47400', '-110.76390'), ('MOOSE', None, '43.65000', '-110.72000'), ('MORAN JUNCTION', None, '43.84000', '-110.51000'), ('RAFTER J RANCH', 1138, '43.42620', '-110.79840'), ('TETON VILLAGE', 175, '43.57000', '-110.81000'), ('WILSON', 1294, '43.50000', '-110.87000')], 'partOfState': 'WEST CENTRAL', 'wfo': 'RIW'}, -'NCZ027': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('AVENTON', None, '36.15000', '-77.95000'), ('BAILEY', 670, '35.78010', '-78.11290'), ('BATTLEBORO', None, '36.04860', '-77.75080'), ('CASTALIA', 340, '36.08230', '-78.05730'), ('DORTCHES', 809, '36.01110', '-77.85840'), ('MIDDLESEX', 838, '35.78770', '-78.20460'), ('NASHVILLE', 4309, '35.96730', '-77.95610'), ('RED OAK', 2723, '36.03850', '-77.90680'), ('SHARPSBURG', 2421, '35.86710', '-77.83240'), ('SPRING HOPE', 1261, '35.94450', '-78.10940')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ026': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BUNN', 357, '35.95870', '-78.25260'), ('CENTERVILLE', 99, '36.18650', '-78.11030'), ('FRANKLINTON', 1745, '36.10360', '-78.45660'), ('INGLESIDE', None, '36.18000', '-78.30000'), ('LOUISBURG', 3111, '36.10030', '-78.29930'), ('PILOT', None, '35.88000', '-78.27000'), ('YOUNGSVILLE', 651, '36.02590', '-78.47710')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ025': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BAHAMA', None, '36.17000', '-78.88000'), ('BETHESDA', None, '35.95000', '-78.85000'), ('DURHAM', 187035, '35.98040', '-78.91500'), ('GORMAN', 1002, '36.03800', '-78.81310'), ('PARKWOOD', None, '35.88850', '-78.90880'), ('RESEARCH TRIANGLE PARK', None, '35.87000', '-78.84000'), ('ROUGEMONT', None, '36.22000', '-78.93000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ024': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CARR', None, '36.22000', '-79.22000'), ('CARRBORO', 16782, '35.91530', '-79.08380'), ('CHAPEL HILL', 48715, '35.92760', '-79.04060'), ('EFLAND', None, '36.06000', '-79.17000'), ('HILLSBOROUGH', 5446, '36.07120', '-79.10270'), ('SCHLEY', None, '36.15000', '-79.07000'), ('TEER', None, '35.95000', '-79.23000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ023': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ALAMANCE', 310, '36.03330', '-79.48520'), ('ALTAMAHAW', None, '36.17930', '-79.50680'), ('BURLINGTON', 44917, '36.08440', '-79.44720'), ('ELON COLLEGE', 6738, '36.09410', '-79.51170'), ('GLEN RAVEN', 2750, '36.12100', '-79.47000'), ('GRAHAM', 12833, '36.06310', '-79.39050'), ('HAW RIVER', 1908, '36.09240', '-79.36010'), ('MEBANE', 7284, '36.09120', '-79.27530'), ('PLEASANT GROVE', None, '36.19330', '-79.32690'), ('SAXAPAHAW', 1418, '35.94790', '-79.32110'), ('SNOW CAMP', None, '35.86660', '-79.41660'), ('SUTPHIN', None, '35.88330', '-79.35000'), ('SWEPSONVILLE', 922, '36.02870', '-79.35980'), ('UNION RIDGE', None, '36.22000', '-79.38330')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ022': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CLIMAX', None, '35.92000', '-79.73000'), ('COLFAX', None, '36.13000', '-80.02000'), ('FOREST OAKS', 3241, '35.98800', '-79.70640'), ('GIBSONVILLE', 4372, '36.10350', '-79.54080'), ('GREENSBORO', 223891, '36.07890', '-79.82690'), ('HIGH POINT', 85839, '35.98130', '-79.99820'), ('JAMESTOWN', 3088, '35.99560', '-79.93450'), ('LAKE TOWNSEND', None, '36.17000', '-79.78000'), ('MCLEANSVILLE', 1080, '36.10360', '-79.66050'), ('MONTICELLO', None, '36.20000', '-79.68000'), ('PLEASANT GARDEN', 4714, '35.96220', '-79.77410'), ('STOKESDALE', 3267, '36.23570', '-79.98420'), ('SUMMERFIELD', 7018, '36.20260', '-79.89420')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ021': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BELEWS CREEK', None, '36.25000', '-80.06000'), ('CLEMMONS', 13827, '36.02120', '-80.38770'), ('DONNAHA', None, '36.23000', '-80.43000'), ('KERNERSVILLE', 17126, '36.11820', '-80.07640'), ('LEWISVILLE', 8826, '36.09310', '-80.40270'), ('PFAFFTOWN', None, '36.15000', '-80.30000'), ('RURAL HALL', 2464, '36.23470', '-80.29390'), ('SEDGE GARDEN', None, '36.08850', '-80.13900'), ('STANLEYVILLE', None, '36.19880', '-80.26690'), ('WALKERTOWN', 4009, '36.17150', '-80.15300'), ('WINSTON-SALEM', 185776, '36.10210', '-80.26290')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'NCZ020': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('ARLINGTON', 795, '36.22970', '-80.83270'), ('ARLINGTON', 795, '36.23330', '-80.83330'), ('BOONVILLE', 1138, '36.23320', '-80.70810'), ('BROOKS CROSSROADS', None, '36.11670', '-80.78330'), ('BUCK SHOALS', None, '36.10000', '-80.83330'), ('COURTNEY', None, '36.06670', '-80.63330'), ('EAST BEND', 659, '36.21730', '-80.50930'), ('ENON', None, '36.15000', '-80.46670'), ('HUNTSVILLE', None, '36.08330', '-80.51670'), ('JONESVILLE', 1464, '36.23480', '-80.84040'), ('LONE HICKORY', None, '36.06670', '-80.71670'), ('NEBO', None, '36.21670', '-80.65000'), ('SHACKTOWN', None, '36.11670', '-80.60000'), ('SWANCREEK', None, '36.18330', '-80.86670'), ('YADKINVILLE', 2818, '36.13140', '-80.65960')], 'partOfState': 'NORTHWEST', 'wfo': 'RNK'}, -'NCZ029': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('BEARGRASS', 53, '35.76580', '-77.12980'), ('EVERETTS', 179, '35.83330', '-77.17180'), ('HAMILTON', 516, '35.94400', '-77.20810'), ('HASSELL', 72, '35.90820', '-77.27780'), ('JAMESVILLE', 502, '35.81160', '-76.89970'), ('OAK CITY', 339, '35.96210', '-77.30490'), ('PARMELE', 290, '35.81970', '-77.31240'), ('ROBERSONVILLE', 1731, '35.82490', '-77.25300'), ('WILLIAMSTON', 5843, '35.85140', '-77.05860')], 'partOfState': '', 'wfo': 'MHX'}, -'NCZ028': {'fullStateName': 'NORTH CAROLINA', 'state': 'NC', 'cities': [('CONETOE', 365, '35.81720', '-77.45740'), ('KINGSBORO', None, '35.91000', '-77.67000'), ('LEGGETT', 77, '35.99110', '-77.57960'), ('MACCLESFIELD', 458, '35.75220', '-77.67060'), ('PINETOPS', 1419, '35.79110', '-77.63730'), ('PRINCEVILLE', 940, '35.88830', '-77.52600'), ('ROCKY MOUNT', 55893, '35.95000', '-77.78800'), ('SPEED', 70, '35.96830', '-77.44430'), ('TARBORO', 11138, '35.90770', '-77.55660'), ('WHITAKERS', 799, '36.10590', '-77.70000')], 'partOfState': 'CENTRAL', 'wfo': 'RAH'}, -'GAZ040': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('LINCOLNTON', 1595, '33.79180', '-82.47930')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CAE'}, -'GAZ041': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BREMEN', 4579, '33.70840', '-85.15230'), ('BUCHANAN', 941, '33.80120', '-85.18060'), ('TALLAPOOSA', 2789, '33.75250', '-85.29490'), ('WACO', 469, '33.70300', '-85.18510')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ042': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOWDON', 1959, '33.53740', '-85.25420'), ('CARROLLTON', 19843, '33.58380', '-85.07590'), ('MOUNT ZION', 1275, '33.63390', '-85.18050'), ('ROOPVILLE', 177, '33.45680', '-85.13230'), ('TEMPLE', 2383, '33.73460', '-85.03150'), ('VILLA RICA', 4134, '33.73290', '-84.92290'), ('WHITESBURG', 596, '33.49330', '-84.91360')], 'partOfState': 'NORTHWEST', 'wfo': 'FFC'}, -'GAZ043': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('DOUGLASVILLE', 20065, '33.74520', '-84.74510'), ('LITHIA SPRINGS', 2072, '33.77900', '-84.64420')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ044': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COLLEGE PARK', 20382, '33.63910', '-84.45860'), ('EAST POINT', 39595, '33.67070', '-84.46930'), ('FAIRBURN', 5464, '33.56540', '-84.58350'), ('HAPEVILLE', 6180, '33.66110', '-84.40930'), ('PALMETTO', 3400, '33.52610', '-84.66170'), ('UNION CITY', 11621, '33.57720', '-84.54420')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ045': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('AVONDALE ESTATES', 2609, '33.76860', '-84.26480'), ('BELVEDERE PARK', 18945, '33.74880', '-84.25970'), ('CANDLER-MCAFEE', 28294, '33.72560', '-84.27030'), ('CHAMBLEE', 9552, '33.88710', '-84.30300'), ('CLARKSTON', 7231, '33.81090', '-84.24070'), ('DECATUR', 18147, '33.77130', '-84.29780'), ('DORAVILLE', 9862, '33.90700', '-84.27430'), ('DRUID HILLS', 12741, '33.78710', '-84.32600'), ('DUNWOODY', 32808, '33.94230', '-84.31400'), ('GRESHAM PARK', 9215, '33.70320', '-84.31440'), ('LITHONIA', 2187, '33.71260', '-84.10600'), ('NORTH ATLANTA', 38579, '33.86250', '-84.33350'), ('NORTH DECATUR', 15270, '33.80720', '-84.28960'), ('NORTH DRUID HILLS', 18852, '33.82110', '-84.32800'), ('PANTHERSVILLE', 11791, '33.70670', '-84.27790'), ('PINE LAKE', 621, '33.79030', '-84.20600'), ('REDAN', 33841, '33.73620', '-84.15960'), ('SCOTTDALE', 9803, '33.79450', '-84.26320'), ('STONE MOUNTAIN', 7145, '33.80280', '-84.17170'), ('TUCKER', 26532, '33.85460', '-84.22310')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ046': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('CONYERS', 10689, '33.66400', '-84.01240'), ('LAKEVIEW ESTATES', 2637, '33.70560', '-84.04000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ047': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BETWEEN', 148, '33.81300', '-83.80890'), ('GOOD HOPE', 210, '33.78390', '-83.60980'), ('JERSEY', 163, '33.71750', '-83.80030'), ('LOGANVILLE', 5435, '33.83590', '-83.89510'), ('MONROE', 11407, '33.79410', '-83.71190'), ('SOCIAL CIRCLE', 3379, '33.65850', '-83.71800'), ('WALNUT GROVE', 1241, '33.74510', '-83.85430')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ048': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('COVINGTON', 11547, '33.60320', '-83.85450'), ('MANSFIELD', 392, '33.51800', '-83.73520'), ('NEWBORN', 520, '33.51600', '-83.69560'), ('OXFORD', 1892, '33.62310', '-83.87020'), ('PORTERDALE', 1281, '33.57190', '-83.89700')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'GAZ049': {'fullStateName': 'GEORGIA', 'state': 'GA', 'cities': [('BOSTWICK', 322, '33.73810', '-83.51530'), ('BUCKHEAD', 205, '33.56820', '-83.36370'), ('MADISON', 3636, '33.57730', '-83.47680'), ('RUTLEDGE', 707, '33.62650', '-83.61160')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FFC'}, -'NDZ038': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BALD HILL DAM', None, '47.03470', '-98.07780'), ('DAZEY', 91, '47.18820', '-98.20050'), ('ECKELSON', None, '46.93800', '-98.33280'), ('FINGAL', 133, '46.76210', '-97.79240'), ('HASTINGS', None, '46.68390', '-98.09420'), ('KATHRYN', 63, '46.67980', '-97.96760'), ('LEAL', 36, '47.10510', '-98.31400'), ('LITCHVILLE', 191, '46.65740', '-98.19130'), ('LITTLE YELLOWSTONE STATE', None, '46.63250', '-97.95060'), ('LUCCA', None, '46.70690', '-97.71940'), ('NOME', 70, '46.67560', '-97.81560'), ('ORISKA', 128, '46.93140', '-97.78870'), ('PILLSBURY', 24, '47.20680', '-97.79610'), ('ROGERS', 61, '47.07310', '-98.20210'), ('SANBORN', 194, '46.94270', '-98.22330'), ('SIBLEY', 46, '47.21730', '-97.96530'), ('URBANA', None, '46.93440', '-98.41140'), ('VALLEY CITY', 6826, '46.92310', '-98.00560'), ('WIMBLEDON', 237, '47.17070', '-98.45960')], 'partOfState': 'SOUTHEAST', 'wfo': 'FGF'}, -'ILZ102': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('AMES', None, '38.14520', '-90.05700'), ('BURKSVILLE', None, '38.26730', '-90.15460'), ('CHALFIN BRIDGE', None, '38.21200', '-90.27060'), ('COLUMBIA', 7922, '38.45520', '-90.22620'), ('FOSTER POND', None, '38.31380', '-90.23370'), ('FOUNTAIN', None, '38.35930', '-90.29090'), ('FULTS', 28, '38.16370', '-90.21260'), ('HARRISONVILLE', None, '38.27640', '-90.35050'), ('HECKER', 475, '38.30450', '-89.99400'), ('KIDD', None, '38.11730', '-90.17290'), ('MADONNAVILLE', None, '38.26390', '-90.24710'), ('MAEYSTOWN', 148, '38.22650', '-90.23160'), ('MONROE CITY', None, '38.25470', '-90.26770'), ('NEW DESIGN', None, '38.26820', '-90.11840'), ('NEW HANDOVER', None, '38.39050', '-90.22510'), ('RENAULT', None, '38.15360', '-90.13400'), ('VALMEYER', 608, '38.30410', '-90.31300'), ('WARTBURG', None, '38.28990', '-90.19610'), ('WATERLOO', 7614, '38.33160', '-90.15560')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'WAZ033': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ALBION', 616, '46.79250', '-117.24950'), ('BELMONT', None, '47.08620', '-117.15680'), ('COLFAX', 2844, '46.88410', '-117.36270'), ('COLTON', 386, '46.56840', '-117.12700'), ('DIAMOND', None, '46.91750', '-117.48580'), ('DUSTY', None, '46.80620', '-117.65050'), ('ENDICOTT', 621, '46.92890', '-117.68500'), ('EWEN', None, '47.11680', '-117.73370'), ('FARMINGTON', 153, '47.08890', '-117.04510'), ('GARFIELD', 641, '47.00840', '-117.14070'), ('HAY', None, '46.67400', '-117.90880'), ('LA CROSSE', 380, '46.81440', '-117.87900'), ('LAMONT', 106, '47.20060', '-117.90350'), ('LATAH', 151, '47.28180', '-117.15430'), ('MALDEN', 215, '47.23130', '-117.47190'), ('OAKESDALE', 420, '47.13090', '-117.24550'), ('PALOUSE', 1011, '46.91110', '-117.07380'), ('PINE CITY', None, '47.20150', '-117.52070'), ('PLAZA', None, '47.31880', '-117.37630'), ('PULLMAN', 24675, '46.73330', '-117.16200'), ('ROSALIA', 648, '47.23700', '-117.36790'), ('ST. JOHN', 548, '47.08880', '-117.58110'), ('STEPTOE', None, '47.00370', '-117.35300'), ('TEKOA', 826, '47.22560', '-117.07330'), ('THORNTON', None, '47.11920', '-117.38650'), ('UNIONTOWN', 345, '46.53740', '-117.08460'), ('WAVERLY', 121, '47.33950', '-117.22870'), ('WINONA', None, '46.94080', '-117.79300')], 'partOfState': '', 'wfo': 'OTX'}, -'NYZ046': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BOWERSTOWN', None, '42.68330', '-74.90000'), ('BURLINGTON', None, '42.71670', '-75.13330'), ('CHERRY VALLEY', 592, '42.80000', '-74.75000'), ('COLLIERSVILLE', None, '42.48330', '-74.98330'), ('COOPERSTOWN', 2032, '42.69970', '-74.93070'), ('COOPERSTOWN JCT', None, '42.50000', '-74.95000'), ('EAST SPRINGFIELD', None, '42.83330', '-74.80000'), ('EDMESTON', None, '42.70000', '-75.23330'), ('ELK CREEK', None, '42.60000', '-74.83330'), ('EMMONS', None, '42.46670', '-75.01670'), ('EXETER CENTER', None, '42.78330', '-75.06670'), ('GILBERTSVILLE', 375, '42.46940', '-75.32140'), ('HARTWICK', None, '42.65000', '-75.05000'), ('HYDE PARK', None, '42.66670', '-74.95000'), ('INDEX', None, '42.66670', '-74.95000'), ('LAURENS', 277, '42.53140', '-75.08860'), ('LEONARDSVILLE', None, '42.80000', '-75.23330'), ('MARYLAND', None, '42.53330', '-74.88330'), ('MIDDLEFIELD', None, '42.68330', '-74.83330'), ('MILFORD', 511, '42.59000', '-74.94730'), ('MORRIS', 591, '42.54800', '-75.24550'), ('MT VISION', None, '42.56670', '-75.05000'), ('NEW LISBON', None, '42.58330', '-75.18330'), ('OAKSVILLE', None, '42.73330', '-75.00000'), ('ONEONTA', 13292, '42.45470', '-75.06730'), ('OTEGO', 1052, '42.39160', '-75.17840'), ('PITTSFIELD', None, '42.63330', '-75.26670'), ('PORTLANDVILLE', None, '42.53330', '-74.96670'), ('RICHFIELD SPRINGS', 1255, '42.85440', '-74.98620'), ('SCHENEVUS', None, '42.54730', '-74.82460'), ('SOUTH EDMESTON', None, '42.68330', '-75.30000'), ('SOUTH NEW BERLIN', None, '42.53330', '-75.35000'), ('SPRINGFIELD', None, '42.83330', '-74.85000'), ('TODDSVILLE', None, '42.68330', '-74.95000'), ('UNADILLA', 1127, '42.32700', '-75.31670'), ('UNADILLA FORKS', None, '42.83330', '-75.23330'), ('WELLS BRIDGE', None, '42.36670', '-75.25000'), ('WEST END', 1813, '42.46860', '-75.09410'), ('WESTFORD', None, '42.65000', '-74.78330'), ('WESTVILLE', None, '42.63330', '-74.90000'), ('WORCESTER', None, '42.58330', '-74.75000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'NVZ005': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('CATNIP MOUNTAIN', None, '41.85000', '-119.38000'), ('EMPIRE', None, '40.58000', '-119.34000'), ('GERLACH', None, '40.65000', '-119.35000'), ('SMOKE CREEK DESERT', None, '40.48000', '-119.73000'), ('VYA', None, '41.60000', '-119.86000')], 'partOfState': '', 'wfo': 'REV'}, -'ILZ100': {'fullStateName': 'ILLINOIS', 'state': 'IL', 'cities': [('ALHAMBRA', 630, '38.88760', '-89.73500'), ('ALTON', 30496, '38.90400', '-90.15400'), ('BETHALTO', 9454, '38.90080', '-90.04690'), ('CARPENTER', None, '38.89210', '-89.89440'), ('COLLINSVILLE', 24707, '38.67840', '-89.99730'), ('DORSEY', None, '38.97380', '-89.99840'), ('EDWARDSVILLE', 21491, '38.79640', '-89.96500'), ('FOSTERBURG', None, '38.97180', '-90.07500'), ('FRUIT', None, '38.83090', '-89.86260'), ('GLEN CARBON', 10425, '38.76050', '-89.97300'), ('GODFREY', 16286, '38.96670', '-90.18830'), ('GRANITE CITY', 31301, '38.71440', '-90.12970'), ('GRANTFORK', 254, '38.83090', '-89.66780'), ('HAMEL', 570, '38.88860', '-89.84270'), ('HARTFORD', 1545, '38.82800', '-90.09180'), ('HIGHLAND', 8438, '38.74100', '-89.67580'), ('KAUFMAN', None, '38.86260', '-89.77730'), ('KUHN', None, '38.78200', '-89.87650'), ('LIVINGSTON', 825, '38.96780', '-89.76390'), ('MADISON', 4545, '38.67670', '-90.15030'), ('MARINE', 910, '38.78580', '-89.77900'), ('MARYVILLE', 4651, '38.72640', '-89.96470'), ('MITCHELL', None, '38.76880', '-90.08130'), ('NEW DOUGLAS', 369, '38.97000', '-89.66590'), ('POAG', None, '38.79400', '-90.03820'), ('PONTOON BEACH', 5620, '38.72650', '-90.05110'), ('PRAIRIETOWN', None, '38.96650', '-89.92200'), ('ROXANA', 1547, '38.83660', '-90.05260'), ('ST. JACOB', 801, '38.71690', '-89.76860'), ('TROY', 8524, '38.73120', '-89.89380'), ('VENICE', 2528, '38.67200', '-90.16870'), ('WILLIAMSON', 251, '38.98740', '-89.76390'), ('WOOD RIVER', 11296, '38.86210', '-90.08480'), ('WORDEN', 905, '38.93220', '-89.83850')], 'partOfState': 'SOUTHWEST', 'wfo': 'LSX'}, -'TXZ157': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('COPPERAS COVE', 29592, '31.11870', '-97.90180'), ('EVANT', 393, '31.47580', '-98.14960'), ('FORT GATES', None, '31.40330', '-97.70960'), ('GATESVILLE', 15591, '31.44030', '-97.73400'), ('OGLESBY', 458, '31.41890', '-97.50990'), ('SOUTH MOUNTAIN', 412, '31.43830', '-97.67630')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'IAZ055': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('DUNLAP', 1139, '41.85280', '-95.59960'), ('LITTLE SIOUX', 217, '41.80830', '-96.02670'), ('LOGAN', 1545, '41.64460', '-95.79100'), ('MAGNOLIA', 200, '41.68740', '-95.87430'), ('MISSOURI VALLEY', 2992, '41.55890', '-95.89510'), ('MODALE', 303, '41.61920', '-96.01220'), ('MONDAMIN', 423, '41.70980', '-96.02080'), ('PERSIA', 363, '41.57900', '-95.57010'), ('PISGAH', 316, '41.83080', '-95.92680'), ('WOODBINE', 1564, '41.73650', '-95.70710')], 'partOfState': 'SOUTHWEST', 'wfo': 'OAX'}, -'IAZ054': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANDREW', 460, '42.15310', '-90.59170'), ('BALDWIN', 127, '42.07360', '-90.83900'), ('BELLEVUE', 2350, '42.25880', '-90.42860'), ('BUCKHORN', None, '42.06670', '-90.75000'), ('COTTONVILLE', None, '42.23330', '-90.60000'), ('CRABTOWN', None, '42.18330', '-90.80000'), ('EMELINE', None, '42.15000', '-90.83330'), ('FULTON', None, '42.15000', '-90.68330'), ('GARRY OWEN', None, '42.28330', '-90.83330'), ('GORDONS FERRY', None, '42.38330', '-90.48330'), ('GREEN ISLAND', None, '42.15460', '-90.32240'), ('HURSTVILLE', None, '42.10000', '-90.68330'), ('IRONHILLS', None, '42.15000', '-90.76660'), ('LA MOTTE', 272, '42.29490', '-90.62130'), ('MAQUOKETA', 6112, '42.06530', '-90.66610'), ('MAQUOKETA CAVES STATE PAR', None, '42.11670', '-90.78330'), ('MAQUOKETA MUNICIPAL AIRPO', None, '42.05000', '-90.73330'), ('MILES', 462, '42.04830', '-90.31750'), ('MONMOUTH', 180, '42.07370', '-90.88180'), ('NASHVILLE', None, '42.06670', '-90.78330'), ('OTTER CREEK', None, '42.23330', '-90.68330'), ('PRESTON', 949, '42.04850', '-90.39930'), ('REECEVILLE', None, '42.13330', '-90.30000'), ('SABULA', 670, '42.06780', '-90.17410'), ('SMITHS FERRY', None, '42.31670', '-90.43330'), ('SOUTH GARY OWEN', None, '42.23330', '-90.80000'), ('SPRAGUEVILLE', 89, '42.07050', '-90.43100'), ('SPRINGBROOK', 182, '42.16750', '-90.48190'), ('ST. DONATUS', 140, '42.36210', '-90.54310'), ('VAN BUREN', None, '42.08330', '-90.36670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ057': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('AUDUBON', 2382, '41.71810', '-94.92980'), ('BRAYTON', 145, '41.54260', '-94.92560'), ('EXIRA', 810, '41.59160', '-94.87930'), ('GRAY', 82, '41.84130', '-94.98420'), ('KIMBALLTON', 342, '41.62830', '-95.07420')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'NYZ040': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AMES', 173, '42.83570', '-74.60300'), ('AMSTERDAM', 18355, '42.94180', '-74.19090'), ('CANAJOHARIE', 2257, '42.90300', '-74.57150'), ('CHARLESTON FOUR CORNERS', None, '42.80270', '-74.40200'), ('FONDA', 810, '42.95330', '-74.37310'), ('FORT JOHNSON', 491, '42.95730', '-74.23930'), ('FORT PLAIN', 2288, '42.93170', '-74.62830'), ('FULTONVILLE', 710, '42.94510', '-74.37050'), ('HAGAMAN', 1357, '42.97480', '-74.15380'), ('NELLISTON', 622, '42.93200', '-74.60820'), ('PALATINE BRIDGE', 706, '42.91080', '-74.57520'), ('ST. JOHNSVILLE', 1685, '43.00050', '-74.67680'), ('TRIBES HILL', 1024, '42.94770', '-74.30180'), ('WELLSVILLE', 5171, '42.88200', '-74.27770')], 'partOfState': '', 'wfo': 'ALY'}, -'IAZ051': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ATKINS', 977, '41.99730', '-91.85930'), ('BELLE PLAINE', 2878, '41.89670', '-92.27410'), ('BLAIRSTOWN', 682, '41.90580', '-92.08180'), ('CHENEY', None, '42.25000', '-91.93330'), ('GARRISON', 413, '42.14360', '-92.14280'), ('IRVING', None, '41.95100', '-92.30000'), ('KEYSTONE', 687, '41.99980', '-92.19860'), ('LUZERNE', 105, '41.90620', '-92.18020'), ('MOUNT AUBURN', 160, '42.25680', '-92.09330'), ('NEWHALL', 886, '41.99300', '-91.96670'), ('NORWAY', 601, '41.90280', '-91.92190'), ('SHELLSBURG', 938, '42.09320', '-91.86940'), ('SPENCERS GROVE', None, '42.28330', '-91.86670'), ('URBANA', 1019, '42.22330', '-91.87500'), ('VAN HORNE', 716, '42.01000', '-92.09010'), ('VINTON', 5102, '42.16420', '-92.02700'), ('VINTON MEMORIAL AIRPORT', None, '42.20000', '-92.03330'), ('WALFORD', 1224, '41.88330', '-91.84000'), ('WATKINS', None, '41.88330', '-91.98330')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ050': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('CHELSEA', 287, '41.92080', '-92.39520'), ('CLUTIER', 229, '42.07880', '-92.40310'), ('DYSART', 1303, '42.17220', '-92.30930'), ('ELBERON', 245, '42.00540', '-92.31580'), ('GARWIN', 565, '42.09400', '-92.67820'), ('GLADBROOK', 1015, '42.18610', '-92.71440'), ('LINCOLN', 182, '42.26320', '-92.69100'), ('MONTOUR', 285, '41.98050', '-92.71540'), ('TAMA', 2731, '41.96360', '-92.57480'), ('TOLEDO', 2539, '41.99050', '-92.58050'), ('TRAER', 1594, '42.19250', '-92.46470'), ('VINING', 70, '41.99020', '-92.38550')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ053': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ANAMOSA', 5494, '42.10900', '-91.28130'), ('CANTON', None, '42.16670', '-90.90000'), ('CENTER JUNCTION', 131, '42.11440', '-91.08930'), ('FAIRVIEW', None, '42.08330', '-91.33330'), ('HALE', None, '42.01670', '-91.06670'), ('JONES COUNTY PARK', None, '42.11670', '-91.13330'), ('LANGWORTHY', None, '42.18330', '-91.21670'), ('MARTELLE', 280, '42.02040', '-91.35760'), ('MONTICELLO', 3607, '42.23770', '-91.19100'), ('MONTICELLO MUNICIPAL AIRP', None, '42.23330', '-91.16660'), ('MORLEY', 88, '42.00650', '-91.24660'), ('OLIN', 716, '41.99760', '-91.14110'), ('ONSLOW', 223, '42.10800', '-91.01370'), ('OXFORD JUNCTION', 573, '41.98460', '-90.95430'), ('OXFORD MILLS', None, '41.96660', '-90.96660'), ('PICTURED ROCKS WMA', None, '42.21660', '-91.11660'), ('SCOTCH GROVE', None, '42.16670', '-91.10000'), ('STONE CITY', None, '42.11670', '-91.35000'), ('TEMPLE HILL', None, '42.23330', '-90.98330'), ('WAPSIPINICON STATE PARK', None, '42.10000', '-91.28330'), ('WYOMING', 626, '42.06010', '-91.00480')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'IAZ052': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ALBURNETT', 559, '42.14950', '-91.61820'), ('BERTRAM', 681, '41.95490', '-91.53660'), ('CEDAR RAPIDS', 120758, '41.97300', '-91.66960'), ('CEDAR RAPIDS MUNICIPAL AI', None, '41.88330', '-91.71660'), ('CENTER POINT', 2007, '42.18500', '-91.77670'), ('CENTRAL CITY', 1157, '42.20350', '-91.52360'), ('COGGON', 745, '42.27940', '-91.53090'), ('ELY', 1149, '41.87510', '-91.58730'), ('FAIRFAX', 889, '41.92160', '-91.78010'), ('HIAWATHA', 6480, '42.04640', '-91.68370'), ('LAFAYETTE', None, '42.15000', '-91.68330'), ('LISBON', 1898, '41.92120', '-91.39110'), ('MARION', 26294, '42.03440', '-91.58950'), ('MARION AIRPORT', None, '42.03330', '-91.53330'), ('MIDWAY', None, '42.10000', '-91.70000'), ('MOUNT VERNON', 3390, '41.92310', '-91.42380'), ('PALISADES-KEPLER SP', None, '41.91660', '-91.51660'), ('PALO', 614, '42.06420', '-91.79600'), ('PARALTA', None, '42.03330', '-91.45000'), ('PARIS', None, '42.23330', '-91.58330'), ('PRAIRIEBURG', 175, '42.23780', '-91.42600'), ('ROBINS', 1806, '42.07840', '-91.66920'), ('SPRINGVILLE', 1091, '42.05580', '-91.44400'), ('TODDVILLE', None, '42.10000', '-91.71670'), ('TROY MILLS', None, '42.28330', '-91.68330'), ('VIOLA', None, '42.08330', '-91.38330'), ('WALKER', 750, '42.28620', '-91.78090'), ('WAUBEEK', None, '42.16670', '-91.46670'), ('WHITTIER', None, '42.10000', '-91.46670')], 'partOfState': 'EAST CENTRAL', 'wfo': 'DVN'}, -'NDZ033': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('BELFIELD', 866, '46.88690', '-103.19540'), ('DICKINSON', 16010, '46.88610', '-102.78270'), ('GLADSTONE', 248, '46.86000', '-102.56740'), ('LEFOR', None, '46.68330', '-102.55000'), ('RICHARDTON', 619, '46.88460', '-102.31500'), ('SOUTH HEART', 307, '46.86390', '-102.99180'), ('TAYLOR', 150, '46.90210', '-102.42240')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'WYZ011': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BARNUM', None, '43.66000', '-106.91000'), ('KAYCEE', 249, '43.70980', '-106.63770'), ('LINCH', None, '43.61000', '-106.20000'), ('MAYOWORTH', None, '43.83000', '-106.79000'), ('SUSSEX', None, '43.70000', '-106.29000')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RIW'}, -'WIZ057': {'fullStateName': 'WISCONSIN', 'state': 'WI', 'cities': [('ARLINGTON', 484, '43.33850', '-89.37660'), ('CAMBRIA', 792, '43.54090', '-89.11380'), ('COLUMBUS', 4479, '43.33570', '-89.02840'), ('DOYLESTOWN', 328, '43.42760', '-89.14620'), ('FALL RIVER', 1097, '43.38510', '-89.04770'), ('FRIESLAND', 298, '43.58900', '-89.06780'), ('LAKE WISCONSIN', 3493, '43.37350', '-89.57560'), ('LODI', 2882, '43.31640', '-89.53210'), ('PARDEEVILLE', 1982, '43.53410', '-89.30030'), ('PORTAGE', 9728, '43.54790', '-89.46590'), ('POYNETTE', 2266, '43.39080', '-89.40820'), ('RIO', 938, '43.45030', '-89.23770'), ('WYOCENA', 668, '43.49310', '-89.31000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'MKX'}, -'IAZ059': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('ADEL', 3435, '41.61260', '-94.02710'), ('BOUTON', 136, '41.85170', '-94.01080'), ('DALLAS CENTER', 1595, '41.68470', '-93.98410'), ('DAWSON', 155, '41.84310', '-94.21990'), ('DE SOTO', 1009, '41.53460', '-94.00850'), ('DEXTER', 689, '41.51560', '-94.22690'), ('GRANGER', 583, '41.76030', '-93.82370'), ('LINDEN', 226, '41.64300', '-94.27010'), ('MINBURN', 391, '41.75790', '-94.02780'), ('PERRY', 7633, '41.84210', '-94.09980'), ('REDFIELD', 833, '41.59010', '-94.19760'), ('VAN METER', 866, '41.53050', '-93.95570'), ('WAUKEE', 5126, '41.60760', '-93.86240'), ('WOODWARD', 1200, '41.85630', '-93.92130')], 'partOfState': 'CENTRAL', 'wfo': 'DMX'}, -'IAZ058': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BAGLEY', 354, '41.84570', '-94.42990'), ('BAYARD', 536, '41.85220', '-94.55830'), ('CASEY', 478, '41.50730', '-94.52150'), ('GUTHRIE CENTER', 1668, '41.67860', '-94.49830'), ('JAMAICA', 237, '41.84550', '-94.30720'), ('MENLO', 365, '41.52200', '-94.40350'), ('PANORA', 1175, '41.69100', '-94.36490'), ('YALE', 287, '41.77530', '-94.35680')], 'partOfState': 'WEST CENTRAL', 'wfo': 'DMX'}, -'NDZ032': {'fullStateName': 'NORTH DAKOTA', 'state': 'ND', 'cities': [('FAIRFIELD', None, '47.18330', '-103.21670'), ('FRYBURG', None, '46.86670', '-103.31670'), ('MEDORA', 100, '46.91370', '-103.52440')], 'partOfState': 'SOUTHWEST', 'wfo': 'BIS'}, -'AZZ005': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BIG FIVE', None, '36.89192', '-111.44362'), ('LE CHEE', None, '36.85869', '-111.44011'), ('LEES FERRY', None, '36.86729', '-111.58661'), ('MARBLE CANYON', None, '36.81655', '-111.63362'), ('PAGE', 6809, '36.90430', '-111.45780'), ('WAHWEEP', None, '36.99362', '-111.49452')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGZ'}, -'NYZ045': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('AFTON', 836, '42.22910', '-75.52520'), ('BAINBRIDGE', 1365, '42.29600', '-75.48040'), ('BRISBEN', None, '42.36670', '-75.68330'), ('COLUMBUS', None, '42.68330', '-75.36670'), ('COVENTRY', None, '42.31670', '-75.63330'), ('EARLVILLE', 791, '42.74030', '-75.54360'), ('GERMAN', None, '42.48330', '-75.85000'), ('GREENE', 1701, '42.33000', '-75.77050'), ('GUILFORD', None, '42.40000', '-75.48330'), ('HOLMESVILLE', None, '42.51670', '-75.40000'), ('LAMBS CORNERS', None, '42.68330', '-75.31670'), ('LATHAMS CORNERS', None, '42.46670', '-75.40000'), ('LINCKLAEN', None, '42.66670', '-75.85000'), ('MC DONOUGH', None, '42.50000', '-75.76670'), ('MT UPTON', None, '42.41670', '-75.38330'), ('NEW BERLIN', 1129, '42.62410', '-75.33570'), ('NINEVEH', None, '42.20000', '-75.60000'), ('NORTH NORWICH', None, '42.61670', '-75.53330'), ('NORWICH', 7355, '42.53500', '-75.52370'), ('OTSELIC', None, '42.71670', '-75.71670'), ('OXFORD', 1584, '42.44060', '-75.59620'), ('PHARSALIA', None, '42.58330', '-75.76670'), ('PITCHER', None, '42.58330', '-75.85000'), ('PLYMOUTH', None, '42.61670', '-75.60000'), ('POLKVILLE', None, '42.51670', '-75.51670'), ('PRESTON', None, '42.53330', '-75.60000'), ('ROCKDALE', None, '42.38330', '-75.41670'), ('SHERBURNE', 1455, '42.68030', '-75.49750'), ('SMITHVILLE CENTER', None, '42.40000', '-75.71670'), ('SMITHVILLE FLATS', None, '42.40000', '-75.80000'), ('SMYRNA', 241, '42.68580', '-75.56750'), ('SOUTH OTSELIC', None, '42.65000', '-75.78330'), ('SOUTH OXFORD', None, '42.38330', '-75.61670'), ('SOUTH PLYMOUTH', None, '42.58330', '-75.56670'), ('TYNER', None, '42.43330', '-75.66670')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'CAZ010': {'fullStateName': 'CALIFORNIA', 'state': 'CA', 'cities': [('AROMAS', 2797, '36.87750', '-121.64030'), ('CARMEL VALLEY VILLAGE', 4700, '36.48620', '-121.72290'), ('GONZALES', 7525, '36.50650', '-121.44260'), ('GREENFIELD', 12583, '36.32170', '-121.24240'), ('HOLLISTER', 34413, '36.85550', '-121.39910'), ('KING CITY', 11094, '36.21300', '-121.12820'), ('PRUNEDALE', 16432, '36.79990', '-121.65640'), ('SALINAS', 151060, '36.68480', '-121.63510'), ('SAN JUAN BAUTISTA', 1549, '36.84600', '-121.53710'), ('SOLEDAD', 11263, '36.43010', '-121.32250')], 'partOfState': '', 'wfo': 'MTR'}, -'TXZ092': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('CALLISBURG', 365, '33.69980', '-97.01640'), ('GAINESVILLE', 15538, '33.63730', '-97.15060'), ('LINDSAY', 394, '33.63620', '-97.21980'), ('MUENSTER', 1556, '33.65190', '-97.37670'), ('VALLEY VIEW', 737, '33.48540', '-97.16080')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'NYZ044': {'fullStateName': 'NEW YORK', 'state': 'NY', 'cities': [('BALTIMORE', None, '42.73330', '-76.11670'), ('CINCINNATUS', None, '42.53330', '-75.88330'), ('CORTLAND', 18740, '42.60090', '-76.17940'), ('CORTLAND WEST', 1345, '42.58900', '-76.22790'), ('CUYLER', None, '42.73330', '-75.93330'), ('EAST FREETOWN', None, '42.55000', '-75.96670'), ('EAST HOMER', None, '42.66670', '-76.10000'), ('FREETOWN CORNERS', None, '42.51670', '-76.03330'), ('GLEN HAVEN', None, '42.76670', '-76.26670'), ('GRACIE', None, '42.56670', '-76.25000'), ('HARFORD', None, '42.43330', '-76.23330'), ('HOMER', 3368, '42.63780', '-76.18360'), ('HUNTS CORNERS', None, '42.41670', '-76.11670'), ('KEENEY', None, '42.78330', '-75.95000'), ('LAPEER', None, '42.43330', '-76.10000'), ('MARATHON', 1063, '42.44280', '-76.03510'), ('MC GRAW', None, '42.60000', '-76.10000'), ('MCGRAW', 1000, '42.59200', '-76.09820'), ('MUNSONS CORNERS', 2426, '42.58010', '-76.20530'), ('PREBLE', None, '42.73330', '-76.13330'), ('SCOTT', None, '42.73330', '-76.23330'), ('SOLON', None, '42.60000', '-76.01670'), ('SOUTH CORTLAND', None, '42.56670', '-76.21670'), ('TAYLOR', None, '42.61670', '-75.88330'), ('TEXAS VALLEY', None, '42.48330', '-75.96670'), ('TRIPOLI', None, '42.73330', '-75.95000'), ('TRUXTON', None, '42.71670', '-76.03330'), ('UNION VALLEY', None, '42.63330', '-75.88330'), ('VIRGIL', None, '42.51670', '-76.18330'), ('WILLET', None, '42.46670', '-75.90000')], 'partOfState': 'CENTRAL', 'wfo': 'BGM'}, -'TXZ091': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BOWIE', 5219, '33.55910', '-97.84480'), ('NOCONA', 3198, '33.78350', '-97.73000'), ('ST. JO', 977, '33.69520', '-97.52240')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'UTZ002': {'fullStateName': 'UTAH', 'state': 'UT', 'cities': [('BEAR RIVER', None, '41.61440', '-112.12310'), ('BOTHWELL', None, '41.72000', '-112.27000'), ('BOUNTIFUL', 41301, '40.87610', '-111.86520'), ('CENTERVILLE', 14585, '40.92660', '-111.87000'), ('CLEARFIELD', 25974, '41.10450', '-112.02260'), ('CLINTON', 12585, '41.14100', '-112.06260'), ('CORINNE', 621, '41.54770', '-112.11660'), ('EAST LAYTON', None, '41.08000', '-111.92000'), ('FARMINGTON', 12081, '40.98870', '-111.88000'), ('FARR WEST', 3094, '41.29800', '-112.03030'), ('FRUIT HEIGHTS', 4701, '41.02830', '-111.90570'), ('HARRISVILLE', 3645, '41.28090', '-111.98430'), ('HILL AFB', None, '41.11670', '-111.96670'), ('HOOPER', 3926, '41.17300', '-112.12450'), ('HOWELL', 221, '41.77120', '-112.44490'), ('KAYSVILLE', 20351, '41.03070', '-111.92430'), ('LAYTON', 58474, '41.07800', '-111.95460'), ('NORTH SALT LAKE', 8749, '40.83000', '-111.91960'), ('OGDEN', 77226, '41.22790', '-111.96580'), ('PENROSE', None, '41.65000', '-112.30000'), ('PLAIN CITY', 3489, '41.29890', '-112.07510'), ('PLEASANT VIEW', 5632, '41.32370', '-111.99870'), ('RIVERDALE', 7656, '41.17110', '-111.99500'), ('ROY', 32885, '41.17260', '-112.03500'), ('SLATERVILLE', None, '41.27000', '-112.03000'), ('SOUTH OGDEN', 14377, '41.18000', '-111.95800'), ('SOUTH WEBER', 4260, '41.13390', '-111.93490'), ('SUNSET', 5204, '41.13870', '-112.02720'), ('SYRACUSE', 9398, '41.09620', '-112.05740'), ('THATCHER', None, '41.70000', '-112.30000'), ('UINTAH', 1127, '41.14280', '-111.93380'), ('WARREN', None, '41.28000', '-112.12000'), ('WEST POINT', 6033, '41.12150', '-112.09710'), ('WEST WARREN', None, '41.25000', '-112.15000'), ('WEST WEBER', None, '41.25000', '-112.08000'), ('WILLARD', 1630, '41.41170', '-112.04400'), ('WILSON', None, '41.23000', '-112.02000'), ('WOODS CROSS', 6419, '40.87360', '-111.90900')], 'partOfState': '', 'wfo': 'SLC'}, -'TXZ090': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BELLEVUE', 386, '33.63420', '-98.01590'), ('BLUEGROVE', None, '33.67000', '-98.25000'), ('BUFFALO SPRINGS', 493, '33.55000', '-98.13000'), ('BYERS', 517, '34.07120', '-98.19020'), ('CHARLIE', None, '34.10000', '-98.32000'), ('DEAN', 341, '33.93330', '-98.36890'), ('DEER CREEK', None, '33.63000', '-98.28000'), ('HENRIETTA', 3264, '33.81680', '-98.19450'), ('HURNVILLE', None, '33.95000', '-98.17000'), ('JOLLY', 188, '33.87680', '-98.34590'), ('JOY', None, '33.57000', '-98.22000'), ('NEWPORT', None, '33.48000', '-98.02000'), ('PETROLIA', 782, '34.01300', '-98.23130'), ('RAYMOND', None, '33.88000', '-98.40000'), ('STANFIELD', None, '33.97000', '-98.00000'), ('THORNBERRY', None, '34.07000', '-98.38000'), ('VASHTI', None, '33.55000', '-98.05000')], 'partOfState': 'NORTHERN', 'wfo': 'OUN'}, -'WYZ010': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('BUFFALO', 3900, '44.34230', '-106.71740')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'RIW'}, -'TXZ097': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('DE KALB', 1769, '33.50720', '-94.61650'), ('HOOKS', 2973, '33.46930', '-94.28500'), ('LEARY', 555, '33.47050', '-94.21210'), ('MAUD', 1028, '33.33040', '-94.34470'), ('NASH', 2169, '33.44350', '-94.12940'), ('NEW BOSTON', 4808, '33.46030', '-94.41850'), ('REDWATER', 872, '33.35820', '-94.25440'), ('TEXARKANA', 34782, '33.44100', '-94.07240'), ('WAKE VILLAGE', 5129, '33.42330', '-94.11240')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'INZ067': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BICKNELL', 3378, '38.77530', '-87.30840'), ('BRUCEVILLE', 469, '38.75810', '-87.41440'), ('DECKER', 283, '38.51830', '-87.52380'), ('EDWARDSPORT', 363, '38.81240', '-87.25160'), ('MONROE CITY', 548, '38.61420', '-87.35350'), ('OAKTOWN', 633, '38.87170', '-87.44130'), ('SANDBORN', 451, '38.89680', '-87.18460'), ('VINCENNES', 18701, '38.67620', '-87.51110'), ('WHEATLAND', 504, '38.66410', '-87.30670')], 'partOfState': '', 'wfo': 'IND'}, -'INZ066': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BROOKVILLE', 2652, '39.42360', '-85.00840'), ('CEDAR GROVE', 185, '39.35570', '-84.93700'), ('LAUREL', 579, '39.50160', '-85.18840'), ('MOUNT CARMEL', 106, '39.40750', '-84.87570'), ('OLDENBURG', 647, '39.33850', '-85.20300')], 'partOfState': '', 'wfo': 'ILN'}, -'MOZ026': {'fullStateName': 'MISSOURI', 'state': 'MO', 'cities': [('BETHEL', 121, '39.87820', '-92.02270'), ('CLARENCE', 915, '39.74300', '-92.26030'), ('EMDEN', None, '39.79640', '-91.86280'), ('HUNNEWELL', 227, '39.66830', '-91.85890'), ('LEONARD', 66, '39.89520', '-92.18070'), ('MAUD', None, '39.63340', '-92.19540'), ('SHELBINA', 1943, '39.69230', '-92.03970'), ('SHELBYVILLE', 682, '39.80710', '-92.03970')], 'partOfState': 'NORTHEAST', 'wfo': 'LSX'}, -'INZ064': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CLIFFORD', 291, '39.28300', '-85.86960'), ('COLUMBUS', 39059, '39.21070', '-85.91340'), ('ELIZABETHTOWN', 391, '39.13530', '-85.81270'), ('HOPE', 2140, '39.29990', '-85.76810'), ('JONESVILLE', 220, '39.06000', '-85.88880'), ('TAYLORSVILLE', 936, '39.29620', '-85.94920')], 'partOfState': '', 'wfo': 'IND'}, -'INZ063': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('NASHVILLE', 825, '39.20380', '-86.23600')], 'partOfState': '', 'wfo': 'IND'}, -'INZ062': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOOMINGTON', 69291, '39.16660', '-86.52150'), ('ELLETTSVILLE', 5078, '39.23140', '-86.62210'), ('STINESVILLE', 194, '39.30040', '-86.64920')], 'partOfState': '', 'wfo': 'IND'}, -'INZ061': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('BLOOMFIELD', 2542, '39.02640', '-86.93700'), ('JASONVILLE', 2490, '39.16250', '-87.19960'), ('LINTON', 5774, '39.03600', '-87.15920'), ('LYONS', 748, '38.98810', '-87.08160'), ('NEWBERRY', 206, '38.92370', '-87.01890'), ('SWITZ CITY', 311, '39.03470', '-87.05360'), ('WORTHINGTON', 1481, '39.11850', '-86.97980')], 'partOfState': '', 'wfo': 'IND'}, -'INZ060': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CARLISLE', 2660, '38.96220', '-87.40070'), ('DUGGER', 955, '39.06840', '-87.26040'), ('FARMERSBURG', 1180, '39.25240', '-87.38040'), ('HYMERA', 833, '39.18570', '-87.29890'), ('MEROM', 294, '39.05690', '-87.56780'), ('SHELBURN', 1268, '39.17950', '-87.39690'), ('SULLIVAN', 4617, '39.09690', '-87.40780')], 'partOfState': '', 'wfo': 'IND'}, -'TXZ094': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('BAILEY', 213, '33.43260', '-96.16450'), ('BONHAM', 9990, '33.58930', '-96.18000'), ('DODD CITY', 419, '33.57580', '-96.07470'), ('ECTOR', 600, '33.57900', '-96.27290'), ('HONEY GROVE', 1746, '33.58340', '-95.90990'), ('LADONIA', 667, '33.42780', '-95.94530'), ('LEONARD', 1846, '33.38110', '-96.24650'), ('SAVOY', 850, '33.59950', '-96.36920'), ('TRENTON', 662, '33.42950', '-96.33990'), ('WINDOM', 245, '33.56440', '-95.99850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'INZ069': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('CRANE', 203, '38.89510', '-86.90040'), ('LOOGOOTEE', 2741, '38.67540', '-86.91430'), ('SHOALS', 807, '38.66700', '-86.79350')], 'partOfState': '', 'wfo': 'IND'}, -'INZ068': {'fullStateName': 'INDIANA', 'state': 'IN', 'cities': [('ALFORDSVILLE', 112, '38.56010', '-86.94870'), ('CANNELBURG', 140, '38.66900', '-86.99790'), ('ELNORA', 721, '38.87720', '-87.08490'), ('MONTGOMERY', 368, '38.66520', '-87.04710'), ('ODON', 1376, '38.84230', '-86.98870'), ('PLAINVILLE', 513, '38.80430', '-87.15190'), ('WASHINGTON', 11380, '38.65820', '-87.17300')], 'partOfState': '', 'wfo': 'IND'}, -'WYZ017': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ARAPAHOE', 1766, '42.97050', '-108.47510'), ('ETHETE', 1455, '43.02170', '-108.75700'), ('FORT WASHAKIE', 1477, '43.00790', '-108.92590'), ('HUDSON', 407, '42.90200', '-108.58160'), ('KINNEAR', None, '43.15000', '-108.68000'), ('LYSITE', None, '43.25000', '-107.71000'), ('MONETA', None, '43.16000', '-107.73000'), ('MORTON', None, '43.19000', '-108.77000'), ('PAVILLION', 165, '43.24400', '-108.69080'), ('RIVERTON', 9310, '43.03560', '-108.41480'), ('SHOSHONI', 635, '43.23790', '-108.10290'), ('ST. STEPHENS', None, '42.98000', '-108.42000')], 'partOfState': 'CENTRAL', 'wfo': 'RIW'}, -'WAZ034': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('BEVERLY', None, '46.83550', '-119.92580'), ('DESERT AIRE', 1124, '46.67430', '-119.90970'), ('EPHRATA', 6808, '47.31230', '-119.53690'), ('GEORGE', 528, '47.07860', '-119.85600'), ('LAVEVIEW PARK', None, '47.37270', '-119.50400'), ('MATTAWA', 2609, '46.73650', '-119.90080'), ('MOSES LAKE', 14953, '47.11570', '-119.28620'), ('OTHELLO', 5847, '46.82040', '-119.16710'), ('QUINCY', 5044, '47.23380', '-119.85110'), ('ROYAL CITY', 1823, '46.89890', '-119.61410'), ('SOAP LAKE', 1733, '47.38830', '-119.48970'), ('WARDEN', 2544, '46.96790', '-119.04700'), ('WINCHESTER', None, '47.24280', '-119.71780')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OTX'}, -'COZ068': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CUMBRES PASS', None, '37.02000', '-106.43000'), ('WOLF CREEK PASS', None, '37.48000', '-106.79000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COZ069': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CENTER', 2392, '37.75180', '-106.10990'), ('CRESTONE', 73, '37.99500', '-105.69730'), ('DEL NORTE', 1705, '37.67830', '-106.35210'), ('GREAT SAND DUNES', None, '37.74000', '-105.51500'), ('LA GARITA', None, '37.83000', '-106.25000'), ('MOFFAT', 114, '38.00170', '-105.90430'), ('SAGUACHE', 578, '38.08610', '-106.14090'), ('VILLA GROVE', None, '38.25000', '-105.95000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COZ064': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('SARGENTS', None, '38.40000', '-106.42000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COZ065': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BONANZA', 14, '38.30000', '-106.14000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COZ066': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('NORTH PASS', None, '38.21000', '-106.57000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COZ067': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CREEDE', 377, '37.85060', '-106.92650'), ('PLATORO', None, '37.35000', '-106.53000'), ('SOUTH FORK', 604, '37.67000', '-106.64000'), ('WAGON WHEEL GAP', None, '37.77000', '-106.82000')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'PUB'}, -'COZ060': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('INDEPENDENCE PASS', None, '39.10800', '-106.56400'), ('MT ELBERT', None, '39.11500', '-106.44600'), ('MT MASSIVE', None, '39.18300', '-106.47500')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COZ061': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('GRANITE', None, '39.05000', '-106.27000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'COZ062': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('BUENA VISTA', 2195, '38.83270', '-106.14130'), ('MAYSVILLE', None, '38.54000', '-106.22000'), ('MT PRINCETON', None, '38.73000', '-106.17000'), ('NATHROP', None, '38.73000', '-106.08000'), ('PONCHA SPRINGS', 466, '38.51410', '-106.07410'), ('SALIDA', 5504, '38.53270', '-105.99980')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'MTZ007': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ANACONDA', None, '46.12861', '-112.94139'), ('AVON', 124, '46.59722', '-112.60111'), ('BUTTE', 33892, '46.00389', '-112.53389'), ('CRACKERVILLE', None, '46.06472', '-112.80417'), ('DEER LODGE', 3421, '46.39583', '-112.72917'), ('DIVIDE', None, '45.75111', '-112.74639'), ('ELLISTON', 225, '46.56222', '-112.43000'), ('FISHTRAP', None, '45.87222', '-113.22861'), ('GALEN', None, '46.23556', '-112.77528'), ('GARRISON', 112, '46.52333', '-112.81083'), ('GEORGETOWN', None, '46.19944', '-113.24556'), ('GREGSON HOT SPRINGS', None, '46.04306', '-112.80917'), ('HALL', None, '46.58528', '-113.19583'), ('JANNEY', None, '45.90944', '-112.49444'), ('LOST CREEK', None, '46.17583', '-112.94833'), ('MAXVILLE', None, '46.46472', '-113.23333'), ('MELROSE', None, '45.63194', '-112.68361'), ('NEWCOMB', None, '45.92000', '-112.51889'), ('NISSLER', None, '46.00472', '-112.64139'), ('OPPORTUNITY', None, '46.10722', '-112.82722'), ('PHILIPSBURG', 914, '46.33222', '-113.29333'), ('PORTERS CORNER', None, '46.25194', '-113.33111'), ('PRINCETON', None, '46.41694', '-113.16472'), ('RACETRACK', None, '46.27889', '-112.74778'), ('RAMSAY', None, '46.00583', '-112.68528'), ('SILVER BOW', None, '46.00361', '-112.66694'), ('WALKERVILLE', 714, '46.03650', '-112.54030'), ('WARM SPRINGS', None, '46.18139', '-112.78389'), ('WEST VALLEY', None, '46.15194', '-113.02167')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'MTZ006': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('LOLO HOT SPRINGS', None, '46.72778', '-114.52972'), ('LOST TRAIL PASS', None, '45.70000', '-113.94500'), ('QUIGLEY', None, '46.61222', '-113.64750'), ('SKALKAHO PASS', None, '46.24500', '-113.77500'), ('SULA', None, '45.83667', '-113.98083')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'MTZ005': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BELL CROSSING', None, '46.44333', '-114.12306'), ('CHARLO HEIGHTS', None, '46.12639', '-114.17694'), ('COMO', None, '46.08972', '-114.17444'), ('CONNER', None, '45.93083', '-114.12361'), ('CORVALLIS', 443, '46.31417', '-114.11194'), ('DARBY', 710, '46.02278', '-114.17722'), ('FLORENCE', 901, '46.63167', '-114.07806'), ('FRENCHTOWN', 883, '47.01500', '-114.22889'), ('GRANTSDALE', None, '46.20361', '-114.14083'), ('HAMILTON', 3705, '46.24694', '-114.15944'), ('LOLO', 3388, '46.75889', '-114.08000'), ('MISSOULA', 57053, '46.87222', '-113.99306'), ('PINESDALE', 742, '46.32944', '-114.21583'), ('STEVENSVILLE', 1553, '46.51000', '-114.09222'), ('VICTOR', 859, '46.41667', '-114.14917'), ('WOODSIDE', None, '46.31333', '-114.15417')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'MTZ004': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ALBERTON', 374, '47.00167', '-114.47250'), ('BELKNAP', None, '47.66222', '-115.40778'), ('CYR', None, '47.01028', '-114.58389'), ('DE BORGIA', 69, '47.37583', '-115.34500'), ('EAST PORTAL', None, '47.39722', '-115.63417'), ('EDDY', None, '47.55833', '-115.13222'), ('EVARO', 329, '47.03222', '-114.09056'), ('HAUGAN', None, '47.38333', '-115.39861'), ('HERON', 149, '48.05889', '-115.95611'), ('HUSON', None, '47.03139', '-114.32639'), ('KEYSTONE', None, '47.26833', '-114.93472'), ('LOZEAU', None, '47.11667', '-114.77917'), ('NINEMILE', None, '47.02000', '-114.40833'), ('NOXON', 230, '47.99611', '-115.78056'), ('PARADISE', 184, '47.38944', '-114.80111'), ('PERMA', None, '47.36389', '-114.58389'), ('PLAINS', 1126, '47.46028', '-114.88194'), ('QUARTZ', None, '47.05194', '-114.76833'), ('SALTESE', None, '47.41028', '-115.50861'), ('SNIDER', None, '47.60389', '-115.21750'), ('ST. REGIS', 315, '47.29944', '-115.10167'), ('STARK', None, '47.12556', '-114.50417'), ('SUPERIOR', 893, '47.19167', '-114.89083'), ('TAFT', None, '47.41917', '-115.59722'), ('TARKIO', None, '47.02139', '-114.73806'), ('THOMPSON FALLS', 1321, '47.59722', '-115.34333'), ('TROUT CREEK', 261, '47.83694', '-115.59722'), ('TUSCOR', None, '47.90333', '-115.69000'), ('WEEKSVILLE', None, '47.52306', '-114.99306'), ('WHITE PINE', None, '47.74361', '-115.48139')], 'partOfState': 'WEST CENTRAL', 'wfo': 'MSO'}, -'MTZ003': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('ALLENTOWN', None, '47.44056', '-114.09556'), ('ARLEE', 602, '47.16194', '-114.08417'), ('BIG ARM', 131, '47.79806', '-114.29389'), ('BIGFORK', 1421, '48.06333', '-114.07167'), ('CAMAS', None, '47.61806', '-114.65694'), ('CAMAS PRAIRIE', None, '47.46278', '-114.60611'), ('CHARLO', 439, '47.43861', '-114.17139'), ('COLUMBIA FALLS', 3645, '48.37250', '-114.18056'), ('CRESTON', None, '48.18944', '-114.13639'), ('DAYTON', 95, '47.86583', '-114.27806'), ('DIXON', 216, '47.31667', '-114.31306'), ('ELMO', 143, '47.83056', '-114.34861'), ('EVERGREEN', 6215, '48.22570', '-114.27500'), ('FINLEY POINT', 493, '47.73820', '-114.06240'), ('FORT CONNAH', None, '47.40556', '-114.08722'), ('HOT SPRINGS', 531, '47.60917', '-114.66778'), ('KALISPELL', 14223, '48.19583', '-114.31194'), ('KICKING HORSE', 80, '47.46060', '-114.07420'), ('LA SALLE', None, '48.31306', '-114.24306'), ('LAKE MARY RONAN', None, '47.94306', '-114.39361'), ('LAKESIDE', 1679, '48.01944', '-114.22361'), ('LONEPINE', 137, '47.70306', '-114.63583'), ('MOIESE', None, '47.37056', '-114.26500'), ('NIARADA', 50, '47.81417', '-114.60361'), ('PABLO', 1814, '47.60028', '-114.11806'), ('POLSON', 4041, '47.69361', '-114.16222'), ('PROCTOR', None, '47.89250', '-114.30444'), ('RAVALLI', 119, '47.27722', '-114.17972'), ('ROLLINS', 183, '47.90611', '-114.19750'), ('RONAN', 1812, '47.52889', '-114.10056'), ('ROUND BUTTE', None, '47.52972', '-114.26267'), ('SOMERS', 556, '48.08028', '-114.22056'), ('ST. IGNATIUS', 788, '47.32000', '-114.09306'), ('WHITEFISH', 5032, '48.41111', '-114.33667')], 'partOfState': 'NORTHWEST', 'wfo': 'MSO'}, -'MTZ002': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('APGAR', None, '48.52778', '-113.99222'), ('BLACKTAIL', None, '48.27694', '-113.44722'), ('CORAM', 337, '48.41806', '-114.04528'), ('ESSEX', None, '48.27806', '-113.61167'), ('HUNGRY HORSE', 934, '48.38583', '-114.06000'), ('LAKE MCDONALD', None, '48.62083', '-113.87083'), ('LOGAN PASS', None, '48.69500', '-113.72000'), ('MARTIN CITY', 331, '48.39167', '-114.03722'), ('NYACK', None, '48.43944', '-113.80472'), ('PINNACLE', None, '48.35611', '-113.65222'), ('POLEBRIDGE', None, '48.76528', '-114.28417'), ('SALMON PRAIRIE', None, '47.63000', '-113.78444'), ('SWAN LAKE', None, '47.92917', '-113.84389'), ('TRAILCREEK', None, '48.91917', '-114.40639'), ('WEST GLACIER', None, '48.50000', '-113.97778'), ('WOODS BAY', 748, '48.00167', '-114.04944')], 'partOfState': 'NORTHWEST', 'wfo': 'MSO'}, -'MTZ001': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BEND', None, '47.90944', '-115.04861'), ('EUREKA', 1017, '48.87590', '-115.05250'), ('FORTINE', 169, '48.76444', '-114.90222'), ('HAPPYS INN', None, '48.08333', '-115.13944'), ('KILA', None, '48.12028', '-114.45583'), ('KOOTENAI FALLS', None, '48.44806', '-115.78167'), ('LIBBY', 2626, '48.38833', '-115.55500'), ('LUPFER', None, '48.48361', '-114.51028'), ('MARION', None, '48.10556', '-114.66222'), ('OLNEY', None, '48.54861', '-114.57722'), ('RADNOR', None, '48.61000', '-114.65972'), ('REXFORD', 151, '48.89944', '-115.17111'), ('STRYKER', None, '48.67417', '-114.76917'), ('TREGO', None, '48.70528', '-114.86833'), ('TROY', 957, '48.46333', '-115.88861'), ('YAAK', None, '48.83306', '-115.70778'), ('YAKT', None, '48.54556', '-115.96778')], 'partOfState': 'NORTHWEST', 'wfo': 'MSO'}, -'MTZ009': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BABB', None, '48.86030', '-113.43580'), ('BROWNING', 1065, '48.55670', '-113.01370'), ('DUPUYER', None, '48.19250', '-112.49860'), ('EAST GLACIER PARK', None, '48.44710', '-113.22230'), ('HEART BUTTE', 698, '48.29050', '-112.83290'), ('KIOWA', None, '48.52000', '-113.31000'), ('ST MARY', None, '48.74390', '-113.42860')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'TFX'}, -'MTZ008': {'fullStateName': 'MONTANA', 'state': 'MT', 'cities': [('BANNACK', None, '45.16110', '-112.99470'), ('DELL', None, '44.71880', '-112.69640'), ('DEWEY', None, '45.77720', '-112.85420'), ('DILLON', 3752, '45.21610', '-112.63450'), ('GLEN', None, '45.47670', '-112.68970'), ('GRANT', None, '45.00860', '-113.06610'), ('JACKSON', None, '45.36810', '-113.40810'), ('LAKEVIEW', None, '44.59940', '-111.80970'), ('LIMA', 242, '44.63840', '-112.59140'), ('MONIDA', None, '44.56190', '-112.31280'), ('POLARIS', None, '45.36970', '-113.11860'), ('WISDOM', 114, '45.61810', '-113.45000'), ('WISE RIVER', None, '45.79140', '-112.94860')], 'partOfState': 'SOUTHWEST', 'wfo': 'TFX'}, -'NVZ035': {'fullStateName': 'NEVADA', 'state': 'NV', 'cities': [('BAKER', None, '39.01660', '-114.13330'), ('CHERRY CREEK', None, '39.90000', '-114.88330'), ('ELY', 4041, '39.24910', '-114.87790'), ('ELY AIRPORT', None, '39.29500', '-114.84520'), ('GREAT BASIN NATIONAL PARK', None, '39.00920', '-114.22670'), ('LAGES JUNCTION', None, '40.06330', '-114.61520'), ('LUND', None, '38.86250', '-115.00940'), ('MCGILL', 1054, '39.39970', '-114.77890'), ('PRESTON', None, '38.91660', '-115.06670'), ('RUTH', None, '39.28000', '-114.98750'), ('SCHELLBOURNE', None, '39.81660', '-114.66670'), ('SHOSHONE', None, '38.91030', '-114.40190')], 'partOfState': '', 'wfo': 'LKN'}, -'WYZ015': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('ATLANTIC CITY', 39, '42.50000', '-108.73000')], 'partOfState': 'NORTHWEST', 'wfo': 'RIW'}, -'WYZ064': {'fullStateName': 'WYOMING', 'state': 'WY', 'cities': [('GARRETT', None, '42.11000', '-105.60000')], 'partOfState': 'EAST CENTRAL', 'wfo': 'CYS'}, -'IAZ097': {'fullStateName': 'IOWA', 'state': 'IA', 'cities': [('BLOOMFIELD', 2601, '40.74810', '-92.41820'), ('DRAKESVILLE', 185, '40.79800', '-92.48090'), ('FLORIS', 153, '40.86410', '-92.33210'), ('PULASKI', 249, '40.69750', '-92.27410')], 'partOfState': 'SOUTHEAST', 'wfo': 'DMX'}, -'LAZ014': {'fullStateName': 'LOUISIANA', 'state': 'LA', 'cities': [('BROWNSVILLE-BAWCOMVILLE', 7616, '32.48380', '-92.16390'), ('CLAIBORNE', 9830, '32.54220', '-92.19670'), ('MONROE', 53107, '32.51170', '-92.08490'), ('RICHWOOD', 2115, '32.44660', '-92.07250'), ('STERLINGTON', 1276, '32.69060', '-92.06480'), ('SWARTZ', 4247, '32.56930', '-91.98610'), ('WEST MONROE', 13250, '32.51480', '-92.14850')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SHV'}, -'COZ086': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('AVONDALE', 754, '38.23000', '-104.35000'), ('BLENDE', None, '38.20000', '-104.57000'), ('BOONE', 323, '38.25010', '-104.25580'), ('CEDARWOOD', None, '37.93000', '-104.62000'), ('COLORADO CITY', 2018, '37.94400', '-104.84630'), ('PINON', None, '38.42000', '-104.61000'), ('PUEBLO', 102121, '38.29800', '-104.61900'), ('PUEBLO DEPOT', None, '38.32000', '-104.33000'), ('PUEBLO RESERVOIR', None, '38.26000', '-104.75000'), ('PUEBLO WEST', 16899, '38.34990', '-104.72210')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'MIZ048': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('AUBURN', 2011, '43.60190', '-84.07710'), ('BAY CITY', 36817, '43.59000', '-83.88860'), ('BENTLEY', None, '43.94810', '-84.13440'), ('CRUMP', None, '43.75390', '-84.08720'), ('ESSEXVILLE', 3766, '43.61120', '-83.84350'), ('KAWKAWLIN', None, '43.65320', '-83.94720'), ('LINWOOD', None, '43.73890', '-83.97670'), ('MOUNT FOREST', None, '43.88720', '-84.11420'), ('MUNGER', None, '43.52300', '-83.77460'), ('PINCONNING', 1386, '43.85790', '-83.96460'), ('WILLARD', None, '43.66830', '-84.10830')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'MIZ049': {'fullStateName': 'MICHIGAN', 'state': 'MI', 'cities': [('BAD AXE', 3462, '43.80280', '-82.99690'), ('BAY PORT', None, '43.84830', '-83.37090'), ('CASEVILLE', 888, '43.94220', '-83.27460'), ('ELKTON', 863, '43.81890', '-83.18070'), ('HARBOR BEACH', 1837, '43.84660', '-82.65490'), ('HELENA', None, '43.77470', '-82.69080'), ('HURON CITY', None, '44.02920', '-82.83280'), ('IVANHOE', None, '43.70520', '-83.09780'), ('KINDE', 534, '43.93990', '-82.99490'), ('OWENDALE', 296, '43.72700', '-83.26770'), ('PARISVILLE', None, '43.71390', '-82.79940'), ('PIGEON', 1207, '43.82950', '-83.27000'), ('PINNEBOG', None, '43.93530', '-83.10390'), ('PORT AUSTIN', 737, '44.04270', '-82.99530'), ('PORT HOPE', 310, '43.93960', '-82.71510'), ('RAPSON', None, '43.85610', '-82.88250'), ('REDMAN', None, '43.92920', '-82.83420'), ('SEBEWAING', 1974, '43.73180', '-83.45100'), ('UBLY', 873, '43.71090', '-82.93460'), ('WHITE ROCK', None, '43.70990', '-82.61500')], 'partOfState': 'SOUTHEAST', 'wfo': 'DTX'}, -'TNZ059': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BRENTWOOD', 23445, '35.99670', '-86.78770'), ('FAIRVIEW', 5800, '35.97970', '-87.12420'), ('FRANKLIN', 41842, '35.92940', '-86.84200'), ('NOLENSVILLE', 3099, '35.94790', '-86.64800')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ058': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('HOHENWALD', 3754, '35.55090', '-87.55970')], 'partOfState': '', 'wfo': 'OHX'}, -'KSZ048': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('ELLSWORTH', 2965, '38.73560', '-98.22810'), ('GENESEO', 272, '38.51680', '-98.15400'), ('HOLYROOD', 464, '38.58730', '-98.41170'), ('KANAPOLIS', None, '38.65000', '-98.03000'), ('KANOPOLIS', 543, '38.70850', '-98.15670'), ('LORRAINE', 136, '38.56960', '-98.31710'), ('WILSON', 799, '38.82560', '-98.47440')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'KSZ049': {'fullStateName': 'KANSAS', 'state': 'KS', 'cities': [('(SLN)SALINA MUNI ARPT', None, '38.80000', '-97.65000'), ('ASSARIA', 438, '38.68040', '-97.60370'), ('BRIDGEPORT', None, '38.63330', '-97.60000'), ('BROOKVILLE', 259, '38.77370', '-97.86420'), ('GLENDALE', None, '38.90000', '-97.87000'), ('GYPSUM', 414, '38.70580', '-97.42650'), ('NEW CAMBRIA', 150, '38.87960', '-97.50540'), ('SALINA', 45679, '38.81580', '-97.61780'), ('SMOLAN', 218, '38.73800', '-97.68360')], 'partOfState': 'CENTRAL', 'wfo': 'ICT'}, -'TNZ055': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('DECATURVILLE', 859, '35.58230', '-88.11920'), ('PARSONS', 2452, '35.65330', '-88.12500')], 'partOfState': '', 'wfo': 'MEG'}, -'TNZ054': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BARGERTON', None, '35.73330', '-88.50000'), ('BLUE GOOSE', None, '35.70000', '-88.58320'), ('DARDEN', None, '35.63330', '-88.23330'), ('LEXINGTON', 7393, '35.65390', '-88.39300'), ("PARKER'S CROSS ROADS", None, '35.78880', '-88.39270'), ('REAGAN', None, '35.51670', '-88.35000'), ('SARDIS', 445, '35.44310', '-88.29430'), ('SCOTTS HILL', 894, '35.51540', '-88.25060'), ('WILDERSVILLE', None, '35.78330', '-88.36670')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'TNZ057': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('CENTERVILLE', 3793, '35.79410', '-87.44980')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ056': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('LINDEN', 1015, '35.61120', '-87.84390'), ('LOBELVILLE', 915, '35.75100', '-87.79710')], 'partOfState': '', 'wfo': 'OHX'}, -'TNZ051': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ALAMO', 2392, '35.78260', '-89.11570'), ('BELLS', 2171, '35.71840', '-89.08530'), ('CHESTNUT BLUFF', None, '35.86670', '-89.33300'), ('FRIENDSHIP', 608, '35.91030', '-89.24180'), ('GADSDEN', 553, '35.77840', '-88.98360'), ('MAURY CITY', 704, '35.81550', '-89.22380')], 'partOfState': 'NORTHWEST', 'wfo': 'MEG'}, -'TNZ050': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('BELLE EAGLE', None, '35.68330', '-89.25000'), ('BROWNSVILLE', 10748, '35.59450', '-89.25500'), ('DANCYVILLE', None, '35.41670', '-89.30000'), ('FORKED DEER', None, '35.76670', '-89.40000'), ('HILLVILLE', None, '35.45000', '-89.16670'), ('HOLLY GROVE', None, '35.65000', '-89.13330'), ('NUTBUSH', None, '35.70000', '-89.41670'), ('STANTON', 615, '35.46200', '-89.40080')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'TNZ053': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ENVILLE', 230, '35.38790', '-88.42470'), ('HENDERSON', 5670, '35.44490', '-88.64770'), ('JACKS CREEK', None, '35.46670', '-88.53330'), ('MASSEYVILLE', None, '35.30000', '-88.71670'), ('MIFFLIN', None, '35.55000', '-88.58330')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'TNZ052': {'fullStateName': 'TENNESSEE', 'state': 'TN', 'cities': [('ADAIR', None, '35.71670', '-88.96670'), ('BEMIS', None, '35.58330', '-88.83330'), ('FAIRVIEW', 5800, '35.76670', '-88.85000'), ('JACKSON', 59643, '35.63370', '-88.82850'), ('MEDON', 191, '35.45850', '-88.86570'), ('MERCER', None, '35.48330', '-89.03330'), ('SPRING CREEK', None, '35.76670', '-88.68330')], 'partOfState': 'SOUTHWEST', 'wfo': 'MEG'}, -'AKZ202': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('BARROW', 4581, '71.26830', '-156.80630')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ203': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('DEADHORSE', None, '70.20560', '-148.51160'), ('NUIQSUT', 433, '70.19150', '-150.99460'), ('PRUDHOE BAY', 5, '70.28400', '-148.37620')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ201': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ATQASUK', 228, '70.46580', '-157.40860')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ206': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('ANAKTUVUK PASS', 282, '68.11590', '-151.67950')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ204': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('KAKTOVIK', 293, '70.04920', '-143.63700')], 'partOfState': '', 'wfo': 'AFG'}, -'COZ082': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('PIKES PEAK', None, '38.82000', '-105.04000')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'AKZ208': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('KIANA', 388, '66.97020', '-160.45820'), ('NOATAK', 428, '67.58280', '-163.00520')], 'partOfState': '', 'wfo': 'AFG'}, -'AKZ209': {'fullStateName': 'ALASKA', 'state': 'AK', 'cities': [('KOTZEBUE', 3082, '66.88800', '-162.53540'), ('NOORVIK', 634, '66.82860', '-161.04260'), ('SELAWIK', 772, '66.60330', '-160.02500')], 'partOfState': '', 'wfo': 'AFG'}, -'COZ083': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CANON CITY', 15431, '38.46400', '-105.24100'), ('COAL CREEK', 303, '38.35950', '-105.14510'), ('FLORENCE', 3653, '38.38520', '-105.11640'), ('LINCOLN PARK', 3904, '38.42580', '-105.21320'), ('PENROSE', 4070, '38.43110', '-105.01250'), ('ROCKVALE', 426, '38.36910', '-105.16330'), ('ROYAL GORGE', None, '38.46000', '-105.31300'), ('WETMORE', None, '38.23000', '-105.08000'), ('WILLIAMSBURG', 714, '38.38130', '-105.17490')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'SDZ056': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('COLMAN', 572, '43.98470', '-96.81590'), ('EGAN', 265, '43.99970', '-96.65050'), ('FLANDREAU', 2376, '44.04690', '-96.59770'), ('TRENT', 254, '43.90690', '-96.65730'), ('WARD', 41, '44.15540', '-96.46080')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDZ057': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CHAMBERLAIN', 2338, '43.80760', '-99.32020'), ('KIMBALL', 745, '43.74620', '-98.95710'), ('PUKWANA', 287, '43.77890', '-99.18240')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FSD'}, -'SDZ054': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CANOVA', 140, '43.88080', '-97.50300'), ('CARTHAGE', 187, '44.16890', '-97.71400'), ('FEDORA', None, '44.00820', '-97.78750'), ('HOWARD', 1071, '44.01190', '-97.52330'), ('ROSWELL', 21, '43.99910', '-97.70100'), ('VILAS', 19, '44.00850', '-97.59570')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDZ055': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('CHESTER', None, '43.89450', '-96.92510'), ('MADISON', 6540, '44.00840', '-97.10740'), ('NUNDA', 47, '44.16100', '-97.01790'), ('ORLAND', None, '43.89270', '-97.18950'), ('RAMONA', 190, '44.12010', '-97.21500'), ('WENTWORTH', 188, '43.99680', '-96.96430'), ('WINFRED', None, '43.99760', '-97.36260')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDZ052': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ALPENA', 265, '44.18340', '-98.36790'), ('LANE', 59, '44.06920', '-98.42410'), ('WESSINGTON SPRINGS', 1011, '44.08080', '-98.57130')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDZ053': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ARTESIAN', 157, '44.00850', '-97.92300'), ('FORESTBURG', None, '44.02170', '-98.10890'), ('LETCHER', 177, '43.89780', '-98.14350'), ('WOONSOCKET', 720, '44.05470', '-98.27370')], 'partOfState': 'EAST CENTRAL', 'wfo': 'FSD'}, -'SDZ050': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('BONESTEEL', 297, '43.07810', '-98.94680'), ('BURKE', 676, '43.18300', '-99.29250'), ('DALLAS', 144, '43.23790', '-99.51770'), ('DIXON', None, '43.38320', '-99.47390'), ('FAIRFAX', 123, '43.02810', '-98.88900'), ('GREGORY', 1342, '43.23180', '-99.42510'), ('HERRICK', 105, '43.11540', '-99.18720')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'FSD'}, -'SDZ051': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('FORT THOMPSON', 1375, '44.04980', '-99.41200'), ('FORT THOMPSON', 1375, '44.04980', '-99.41200'), ('GANN VALLEY', None, '44.03320', '-98.98780'), ('GANN VALLEY', None, '44.03320', '-98.98780'), ('LEES CORNER', None, '44.06980', '-99.32150'), ('LEES CORNER', None, '44.06980', '-99.32150'), ('SHELBY', None, '43.94800', '-99.18730'), ('SHELBY', None, '43.94800', '-99.18730')], 'partOfState': 'CENTRAL', 'wfo': 'ABR'}, -'COZ081': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CASCADE', None, '38.90000', '-104.97000'), ('CHIPITA PARK', None, '38.92000', '-105.00000'), ('CRIPPLE CREEK', 1115, '38.74630', '-105.17870'), ('CRYSTOLA', None, '38.95000', '-105.02000'), ('DIVIDE', None, '38.94000', '-105.16000'), ('FLORISSANT', None, '38.95000', '-105.29000'), ('GREEN MOUNTAIN FALLS', 773, '38.93420', '-105.01970'), ('VICTOR', 445, '38.70840', '-105.14060'), ('WOODLAND PARK', 6515, '38.99500', '-105.05170')], 'partOfState': 'CENTRAL', 'wfo': 'PUB'}, -'SDZ058': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('PLANKINTON', 601, '43.71570', '-98.48410'), ('STICKNEY', 334, '43.58960', '-98.43750'), ('WHITE LAKE', 405, '43.72840', '-98.71290')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'SDZ059': {'fullStateName': 'SOUTH DAKOTA', 'state': 'SD', 'cities': [('ETHAN', 330, '43.54590', '-97.98290'), ('LOOMIS', 47, '43.79440', '-98.10600'), ('MITCHELL', 14558, '43.73260', '-98.03380'), ('MOUNT VERNON', 477, '43.71220', '-98.26090')], 'partOfState': 'SOUTHEAST', 'wfo': 'FSD'}, -'TXZ099': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ELBERT', 56, '33.26610', '-98.99360'), ('THROCKMORTON', 905, '33.17860', '-99.17720'), ('WOODSON', 296, '33.01440', '-99.05340')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'TXZ098': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HASKELL', 3106, '33.15900', '-99.73180'), ('IRBY', None, '33.17970', '-99.52220'), ("O'BRIEN", 132, '33.38000', '-99.84330'), ('ROCHESTER', 378, '33.31580', '-99.85560'), ('RULE', 698, '33.18440', '-99.89330'), ('SAGERTON', None, '33.07690', '-99.95530'), ('WEINERT', 177, '33.32430', '-99.67290')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'SJT'}, -'AZZ009': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BITTER SPRINGS', 547, '36.36522', '-111.65119'), ('CEDAR RIDGE', None, '36.39231', '-111.52428'), ('HOTEVILLA', None, '35.92380', '-110.65760'), ('KAIBITO', 1607, '36.58900', '-111.11030'), ('MOENAVE', None, '36.13791', '-111.34170'), ('MOENKOPI', 901, '36.11090', '-111.22220'), ('PINON', 1190, '36.10070', '-110.22130'), ('SECOND MESA', 814, '35.81760', '-110.50360'), ('THE GAP', None, '36.30314', '-111.46046'), ('TUBA CITY', 8225, '36.12500', '-111.24250')], 'partOfState': 'NORTHEAST', 'wfo': 'FGZ'}, -'AZZ008': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('ASH FORK', 457, '35.22097', '-112.48698'), ('CHERRY', None, '34.59020', '-112.04060'), ('CROWN KING', None, '34.20691', '-112.33638'), ('IRON SPRINGS', None, '34.58307', '-112.57248'), ('POLAND JUNCTION', None, '34.45408', '-112.26749'), ('PONDEROSA PARK', None, '34.47319', '-112.48714'), ('PRESCOTT', 33938, '34.57600', '-112.44910'), ('PRESCOTT VALLEY', 23535, '34.60820', '-112.32140'), ('SELIGMAN', 456, '35.32938', '-112.87536'), ('WALKER', None, '34.45895', '-112.38033'), ('YARNELL', 645, '34.22315', '-112.74566')], 'partOfState': 'WEST CENTRAL', 'wfo': 'FGZ'}, -'TXZ093': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('HENDRIX', 79, '33.77470', '-96.40800'), ('BELLS', 1190, '33.62000', '-96.41290'), ('COLLINSVILLE', 1235, '33.55970', '-96.91000'), ('DENISON', 22773, '33.75590', '-96.56410'), ('DORCHESTER', 109, '33.53010', '-96.69190'), ('GUNTER', 1230, '33.45080', '-96.74190'), ('HOWE', 2478, '33.51280', '-96.61310'), ('KNOLLWOOD', 375, '33.68900', '-96.61850'), ('LUELLA', None, '33.56930', '-96.54250'), ('POTTSBORO', 1579, '33.77220', '-96.67160'), ('SADLER', 404, '33.68310', '-96.84570'), ('SHERMAN', 35082, '33.61830', '-96.60950'), ('SOUTHMAYD', 992, '33.62140', '-96.72010'), ('TIOGA', 754, '33.47220', '-96.91720'), ('TOM BEAN', 941, '33.52070', '-96.48370'), ('VAN ALSTYNE', 2502, '33.41980', '-96.57350'), ('WHITESBORO', 3760, '33.65950', '-96.90340'), ('WHITEWRIGHT', 1740, '33.51110', '-96.39470')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FWD'}, -'AZZ004': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('FREDONIA', 1036, '36.96480', '-112.51880'), ('HOUSE ROCK', None, '36.73151', '-112.04268'), ('JACOB LAKE', None, '36.71349', '-112.21612')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGZ'}, -'AZZ007': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('DESERT VIEW AT GRAND CAYN', None, '36.04295', '-111.82546'), ('FRAZIERS WELL', None, '35.78146', '-113.07097'), ('GRAND CANYON VILLAGE', 1460, '36.04640', '-112.15350'), ('TUSAYAN', 562, '35.97898', '-112.12295'), ('VALLE', None, '35.65176', '-112.13788')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGZ'}, -'AZZ006': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('BRIGHT ANGEL POINT AT GRA', None, '36.19845', '-112.05262'), ('HERMITS REST AT GRAND CAN', None, '36.06220', '-112.21015'), ('SOUTH RIM VISITORS CENTER', None, '36.05700', '-112.12810'), ('SUPAI', 0, '36.22420', '-112.69320')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'FGZ'}, -'AZZ001': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('COLORADO CITY', 3334, '36.99160', '-112.98250'), ('LITTLEFIELD', None, '36.89530', '-113.93450'), ('MT. TRUMBULL', None, '36.40000', '-113.13330'), ('PIPE SPRING NATIONAL MONU', None, '36.86660', '-112.73330'), ('TUWEEP', None, '36.28330', '-113.06660')], 'partOfState': 'NORTHWEST', 'wfo': 'VEF'}, -'TXZ096': {'fullStateName': 'TEXAS', 'state': 'TX', 'cities': [('ANNONA', 282, '33.58100', '-94.91310'), ('AVERY', 462, '33.55100', '-94.77980'), ('BOGATA', 1396, '33.46920', '-95.21340'), ('CLARKSVILLE', 3883, '33.61050', '-95.05550'), ('DETROIT', 776, '33.66080', '-95.26600')], 'partOfState': 'NORTHEAST', 'wfo': 'SHV'}, -'AZZ003': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('CHLORIDE', None, '35.40000', '-114.18330'), ('DOLAN SPRINGS', 1867, '35.60450', '-114.26650'), ('GOLDEN VALLEY', 4515, '35.22320', '-114.22210'), ('HUALAPAI PEAK', None, '35.07160', '-113.90000'), ('KINGMAN', 20069, '35.20700', '-114.03200'), ('NEW KINGMAN-BUTLER', 14810, '35.26010', '-114.02980'), ('PEACH SPRINGS', 600, '35.52740', '-113.42980'), ('VALENTINE', None, '35.38330', '-113.66660'), ('WIKIEUP', None, '34.70000', '-113.61660'), ('YUCCA', None, '34.86660', '-114.15000')], 'partOfState': 'NORTHWEST', 'wfo': 'VEF'}, -'AZZ002': {'fullStateName': 'ARIZONA', 'state': 'AZ', 'cities': [('DESERT HILLS', 2183, '34.55400', '-114.37170'), ('TOPOCK', None, '34.71660', '-114.46660'), ('WILLOW VALLEY', 585, '34.91200', '-114.60580')], 'partOfState': 'NORTHWEST', 'wfo': 'VEF'}, -'WAZ040': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ARIEL', None, '45.96700', '-122.56700'), ('CHELATCHIE', None, '45.92000', '-122.38330'), ('COUGAR', None, '46.05000', '-122.30000'), ('LAKE MERWIN', None, '45.98000', '-122.50000'), ('LARCH MOUNTAIN', None, '45.71000', '-122.29000'), ('PIGEON SPRINGS', None, '46.06000', '-122.62000'), ('TOUTLE', None, '46.33330', '-122.71000'), ('YALE', None, '46.00000', '-122.38300'), ('YALE LAKE', None, '46.02000', '-122.31000')], 'partOfState': 'SOUTHWEST', 'wfo': 'PQR'}, -'VAZ079': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALBERTA', 306, '36.86460', '-77.88300'), ('ANTE', None, '36.66500', '-77.71910'), ('BARROWS STORE', None, '36.93470', '-77.97920'), ('BOWENS CORNER', None, '36.63590', '-77.96080'), ('BRODNAX', 317, '36.70350', '-78.03290'), ('BRUNSWICK', None, '36.64760', '-77.86990'), ('CALLAVILLE', None, '36.82830', '-77.66780'), ('COCHRAN', None, '36.84310', '-77.90530'), ('DANIELTOWN', None, '36.90470', '-77.96000'), ('DOLPHIN', None, '36.83790', '-77.79480'), ('EBONY', None, '36.57870', '-77.99100'), ('EDGERTON', None, '36.77840', '-77.77090'), ('GASBURG', None, '36.56700', '-77.89590'), ('LAWRENCEVILLE', 1275, '36.75760', '-77.85200'), ('MEREDITHVILLE', None, '36.79850', '-77.95990'), ('ORDSBURG', None, '36.96260', '-77.86000'), ('PRICES MILL', None, '36.81260', '-77.92340'), ('RAWLINGS', None, '36.94830', '-77.77880'), ('TRIPLET', None, '36.61030', '-77.76610'), ('VALENTINES', None, '36.58870', '-77.83020'), ('WARFIELD', None, '36.89550', '-77.74440'), ('WHITE PLAINS', None, '36.63360', '-77.91320')], 'partOfState': 'SOUTH CENTRAL', 'wfo': 'AKQ'}, -'OHZ037': {'fullStateName': 'OHIO', 'state': 'OH', 'cities': [('CARDINGTON', 1849, '40.49910', '-82.89380'), ('CHESTERVILLE', 193, '40.48010', '-82.68280'), ('EDISON', 437, '40.55810', '-82.86360'), ('FULTON', 264, '40.46240', '-82.82840'), ('MARENGO', 297, '40.40130', '-82.81010'), ('MOUNT GILEAD', 3290, '40.55080', '-82.83600'), ('SPARTA', 191, '40.39470', '-82.69960')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'CLE'}, -'WAZ041': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('ARDENVOIR', None, '47.73580', '-120.36730'), ('CASHMERE', 2965, '47.51840', '-120.46760'), ('CHELAN', 3522, '47.84630', '-120.02770'), ('EAST WENATCHEE', 5757, '47.41710', '-120.28830'), ('ENTIAT', 957, '47.67540', '-120.21160'), ('MALAGA', None, '47.37020', '-120.20000'), ('MANSON', None, '47.88430', '-120.15430'), ('MONITOR', None, '47.48550', '-120.41680'), ('ROCK ISLAND', 863, '47.37180', '-120.13710'), ('SUNNYSLOPE', 2521, '47.49180', '-120.34130'), ('WENATCHEE', 27856, '47.42570', '-120.32490')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'WAZ042': {'fullStateName': 'WASHINGTON', 'state': 'WA', 'cities': [('CARLTON', None, '48.24230', '-120.10900'), ('CONCONULLY', 185, '48.55880', '-119.75100'), ('DRYDEN', None, '47.53820', '-120.55580'), ('LEAVENWORTH', 2074, '47.59130', '-120.66420'), ('LOOMIS', None, '48.81930', '-119.62600'), ('LUCERNE', None, '48.20150', '-120.58730'), ('MAZAMA', None, '48.57550', '-120.38470'), ('METHOW', None, '48.12480', '-120.00150'), ('PESHASTIN', None, '47.56920', '-120.60170'), ('PLAIN', None, '47.75670', '-120.65370'), ('TELMA', None, '47.83930', '-120.80870'), ('TWISP', 938, '48.36330', '-120.11950'), ('WINTHROP', 349, '48.47290', '-120.17830'), ('WINTON', None, '47.73470', '-120.73730')], 'partOfState': 'NORTH CENTRAL', 'wfo': 'OTX'}, -'OKZ037': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('DAVIDSON', 375, '34.24210', '-99.07820'), ('FREDERICK', 4637, '34.38890', '-99.01210'), ('GRANDFIELD', 1110, '34.23120', '-98.68730'), ('HOLLISTER', 60, '34.34160', '-98.87040'), ('LOVELAND', 14, '34.30420', '-98.77080'), ('MANITOU', 278, '34.50680', '-98.98050'), ('TIPTON', 916, '34.50130', '-99.13750')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'COZ087': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('FARISITA', None, '37.75000', '-105.07000'), ('GARDNER', None, '37.78000', '-105.17000'), ('LA VETA', 924, '37.51000', '-105.00730'), ('RED WING', None, '37.73000', '-105.30000'), ('WALSENBURG', 4182, '37.62670', '-104.77710')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'OKZ035': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BABBS', None, '34.95000', '-99.06100'), ('COLD SPRINGS', None, '34.80000', '-99.00000'), ('COOPERTON', 20, '34.86330', '-98.87780'), ('GOTEBO', 272, '35.07110', '-98.87380'), ('HOBART', 3997, '35.02620', '-99.09190'), ('LONE WOLF', 500, '34.99010', '-99.24570'), ('LUGERT', None, '34.90000', '-99.27000'), ('MOUNTAIN PARK', 390, '34.69850', '-98.95160'), ('MOUNTAIN VIEW', 880, '35.09870', '-98.75040'), ('ROOSEVELT', 280, '34.84800', '-99.02200'), ('SADDLE MOUNTAIN', None, '34.87000', '-98.70000'), ('SNYDER', 1509, '34.65620', '-98.95220'), ('TOM STEED RESERVOIR', None, '34.77000', '-99.00000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OKZ034': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BRINKMAN', None, '35.02000', '-99.52000'), ('GRANITE', 1844, '34.96290', '-99.37830'), ('HESTER', None, '34.80000', '-99.43000'), ('MANGUM', 2924, '34.87880', '-99.50320'), ('REED', None, '34.90000', '-99.68000'), ('WILLOW', 114, '35.05250', '-99.50920')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OKZ033': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('GOULD', 206, '34.66910', '-99.77380'), ('HOLLIS', 2264, '34.68970', '-99.91540'), ('MADGE', None, '34.90000', '-99.95000'), ('MCKNIGHT', None, '34.77000', '-99.92000'), ('MCQUEEN', None, '34.67000', '-99.70000'), ('VINSON', None, '34.90000', '-99.87000')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'}, -'OKZ032': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ATWOOD', 113, '34.95000', '-96.33000'), ('CALVIN', 279, '34.96740', '-96.25320'), ('DUSTIN', 452, '35.27120', '-96.03140'), ('GERTY', 101, '34.83600', '-96.28960'), ('HOLDENVILLE', 4732, '35.08480', '-96.39900'), ('LAMAR', 172, '35.09790', '-96.12680'), ('STUART', 220, '34.90070', '-96.09980'), ('WETUMKA', 1451, '35.24160', '-96.23830'), ('YEAGER', 67, '35.15680', '-96.33960')], 'partOfState': 'SOUTHEAST', 'wfo': 'OUN'}, -'OKZ031': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('BOWLEGS', 371, '35.14750', '-96.66930'), ('CROMWELL', 265, '35.34170', '-96.45480'), ('DEWRIGHT', None, '35.07000', '-96.68000'), ('KONAWA', 1479, '34.95750', '-96.75380'), ('LIMA', 74, '35.17330', '-96.59800'), ('LITTLE', None, '35.35000', '-96.68000'), ('SASAKWA', 150, '34.94660', '-96.52500'), ('SEMINOLE', 6899, '35.23580', '-96.64970'), ('VAMOOSA', None, '34.98000', '-96.67000'), ('WEWOKA', 3562, '35.14420', '-96.49580')], 'partOfState': 'EAST CENTRAL', 'wfo': 'OUN'}, -'OKZ030': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ASHER', 419, '34.98820', '-96.92440'), ('AYDELOTTE', None, '35.45000', '-96.92000'), ('BETHEL ACRES', 2735, '35.31130', '-97.04490'), ('BROOKSVILLE', 90, '35.21410', '-96.95570'), ('CHISNEY', None, '35.14400', '-96.92400'), ('DALE', None, '35.38000', '-97.05000'), ('EARLSBORO', 633, '35.32580', '-96.79800'), ('HARJO', None, '35.22000', '-96.83000'), ('JOHNSON', 223, '35.40510', '-96.84260'), ('MACOMB', 61, '35.14780', '-97.00810'), ('MAUD', 1136, '35.13270', '-96.77850'), ('MCLOUD', 3548, '35.41210', '-97.09810'), ('PEARSON', None, '35.07000', '-96.93000'), ('PINK', 1165, '35.23210', '-97.10680'), ('SHAWNEE', 28692, '35.33650', '-96.91540'), ('ST. LOUIS', 206, '35.07970', '-96.85280'), ('TECUMSEH', 6098, '35.26330', '-96.93320'), ('TRIBBEY', 273, '35.09270', '-97.09150'), ('TROUSDALE', None, '35.03000', '-97.05000'), ('WANETTE', 402, '34.96260', '-97.03090')], 'partOfState': 'CENTRAL', 'wfo': 'OUN'}, -'ALZ018': {'fullStateName': 'ALABAMA', 'state': 'AL', 'cities': [('ALTOONA', 984, '34.03140', '-86.31360'), ('ATTALLA', 6592, '34.01000', '-86.10190'), ('GADSDEN', 38978, '34.01000', '-86.01440'), ('GLENCOE', 5152, '33.94620', '-85.93120'), ('HOKES BLUFF', 4149, '33.98960', '-85.86300'), ('MOUNTAINBORO', 338, '34.14770', '-86.13120'), ('RAINBOW CITY', 8428, '33.92970', '-86.08740'), ('REECE CITY', 634, '34.07240', '-86.03240'), ('RIDGEVILLE', 158, '34.05700', '-86.10330'), ('SARDIS CITY', 1438, '34.17670', '-86.11350'), ('SOUTHSIDE', 7036, '33.90380', '-86.02200'), ('WALNUT GROVE', 710, '34.06460', '-86.28730')], 'partOfState': 'NORTHEAST', 'wfo': 'BMX'}, -'VAZ078': {'fullStateName': 'VIRGINIA', 'state': 'VA', 'cities': [('ALFONSO', None, '37.80910', '-76.50830'), ('BELLE ISLE STATE PARK', None, '37.77920', '-76.59310'), ('BERTRAND', None, '37.66890', '-76.51780'), ('BROOK VALE', None, '37.75930', '-76.42080'), ('CHRIST CHURCH', None, '37.68190', '-76.42340'), ('FOXWELLS', None, '37.62920', '-76.31140'), ('KILMARNOCK', 1244, '37.71450', '-76.38270'), ('LANCASTER', None, '37.76990', '-76.46730'), ('LIVELY', None, '37.77770', '-76.51390'), ('MILLENBECK', None, '37.66970', '-76.48890'), ('MOLLUSK', None, '37.72680', '-76.53690'), ('MORATTICO', None, '37.80000', '-76.61000'), ('NUTTSVILLE', None, '37.79340', '-76.55120'), ('SENORA', None, '37.67640', '-76.52140'), ('SLABTOWN', None, '37.67580', '-76.49710'), ('SOMERS', None, '37.78810', '-76.56670'), ('WEEMS', None, '37.65410', '-76.44990'), ('WHITE STONE', 358, '37.64500', '-76.39160'), ('WINDMILL POINT', None, '37.61440', '-76.27960')], 'partOfState': '', 'wfo': 'AKQ'}, -'COZ089': {'fullStateName': 'COLORADO', 'state': 'CO', 'cities': [('CROWLEY', 187, '38.19360', '-103.85850'), ('OLNEY SPRINGS', 389, '38.16730', '-103.94410'), ('ORDWAY', 1248, '38.22090', '-103.75680'), ('SUGAR CITY', 279, '38.23290', '-103.66310')], 'partOfState': 'SOUTHEAST', 'wfo': 'PUB'}, -'OKZ039': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('ALMA', None, '34.42000', '-97.60000'), ('BRAY', 1035, '34.60880', '-97.81750'), ('COMANCHE', 1556, '34.36870', '-97.96740'), ('CORUM', None, '34.37000', '-98.10000'), ('COUNTYLINE', None, '34.45000', '-97.57000'), ('DUNCAN', 22505, '34.52010', '-97.96820'), ('EMPIRE CITY', 734, '34.46480', '-98.04300'), ('LOCO', 150, '34.32950', '-97.68020'), ('MARLOW', 4592, '34.63980', '-97.96140'), ('SUNRAY', None, '34.42000', '-97.95000'), ('VELMA', 664, '34.45610', '-97.66590')], 'partOfState': 'SOUTHERN', 'wfo': 'OUN'}, -'OKZ038': {'fullStateName': 'OKLAHOMA', 'state': 'OK', 'cities': [('CACHE', 2371, '34.62860', '-98.61570'), ('CHATTANOOGA', 432, '34.42400', '-98.65470'), ('ELGIN', 1210, '34.78260', '-98.29120'), ('FAXON', 134, '34.46040', '-98.57830'), ('FLETCHER', 1022, '34.82450', '-98.24030'), ('FORT SILL', None, '34.65860', '-98.40660'), ('GERONIMO', 959, '34.48250', '-98.38330'), ('INDIAHOMA', 374, '34.62030', '-98.75180'), ('LAWTON', 92757, '34.60040', '-98.42280'), ('MEDICINE PARK', 373, '34.72860', '-98.46400'), ('MEERS', None, '34.78000', '-98.57000'), ('PUMPKIN CENTER', None, '34.59700', '-98.20800'), ('RICHARDS SPUR', None, '34.77000', '-98.38000'), ('STERLING', 762, '34.74950', '-98.17240')], 'partOfState': 'SOUTHWEST', 'wfo': 'OUN'} +'AKZ017': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Yakutat', 680, '59.54250', '-139.73200')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ018': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Skagway', 862, '59.47570', '-135.33300')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ019': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Covenant Life', 102, '59.41720', '-136.02510'), ('Haines', 1811, '59.24030', '-135.44040'), ('Klukwan', 139, '59.40390', '-135.88450'), ('Mosquito Lake', 221, '59.52920', '-136.09100')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ020': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Gustavus', 429, '58.40610', '-135.80110')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ021': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Game Creek', 35, '58.05670', '-135.50790'), ('Hoonah', 860, '58.11050', '-135.44000'), ('Tenakee Springs', 104, '57.77840', '-135.21800'), ('Whitestone Logging', 116, '58.07120', '-135.42980')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ022': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Elfin Cove', 32, '58.18620', '-136.33680'), ('Pelican', 163, '57.95320', '-136.20990')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ023': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ024': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Angoon', 572, '57.49840', '-134.58800')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ025': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Cube Cove', 72, '57.93510', '-134.71120'), ('Hobart Bay', 3, '57.41580', '-133.42200'), ('Juneau', 30711, '58.29820', '-134.41100')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ026': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Coffman Cove', 199, '56.00820', '-132.83200'), ('Kake', 710, '56.96850', '-133.92500'), ('Point Baker', 35, '56.34970', '-133.62400'), ('Port Protection', 63, '56.31710', '-133.59810'), ('Whale Pass', 58, '56.10320', '-133.17270')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ027': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Craig', 1397, '55.47280', '-133.13500'), ('Edna Bay', 49, '55.94850', '-133.66700'), ('Hydaburg', 382, '55.20900', '-132.81740'), ('Klawock', 854, '55.55380', '-133.09100'), ('Port Alice', 30, '55.79540', '-133.59600')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ028': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Annette', 43, '55.04210', '-131.58580'), ('Dora Bay', 57, '55.18900', '-132.29520'), ('Hollis', 139, '55.48300', '-132.67300'), ('Kasaan', 39, '55.54670', '-132.40410'), ('Ketchikan', 7922, '55.33990', '-131.64500'), ('Metlakatla', 1375, '55.12460', '-131.58060'), ('Naukati Bay', 135, '55.87370', '-133.18480'), ('Polk Inlet', 135, '55.34970', '-132.54590'), ('Thorne Bay', 557, '55.67120', '-132.49900')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ029': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Hyder', 97, '55.91120', '-130.02200')], 'partOfState': '', 'wfo': 'AJK'}, +'AKZ101': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anchorage', 260283, '61.21806', '-149.90020')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ111': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Big Lake', 2635, '61.52140', '-149.95440'), ('Butte', 2561, '61.54250', '-149.05170'), ('Houston', 1202, '61.62410', '-149.78110'), ('Knik', 272, '61.45330', '-149.74160'), ('Lazy Mountain', 1158, '61.62620', '-148.94570'), ('Meadow Lakes', 4819, '61.62460', '-149.60120'), ('Palmer', 4533, '61.59890', '-149.10990'), ('Sutton', 308, '61.71730', '-148.88120'), ('Wasilla', 5469, '61.58020', '-149.46160')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ121': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anchor Point', 1845, '59.77070', '-151.81310'), ('Clam Gulch', 173, '60.22470', '-151.40210'), ('Cooper Landing', 369, '60.49110', '-149.79230'), ('English Bay', 158, '59.34690', '-151.90350'), ('Fox River', 616, '59.85830', '-150.95820'), ('Fritz Creek', 1603, '59.73610', '-151.29530'), ('Halibut Cove', 35, '59.58720', '-151.23770'), ('Happy Valley', 489, '59.94730', '-151.73220'), ('Homer', 3946, '59.63550', '-151.52220'), ('Hope', 137, '60.89720', '-149.63160'), ('Jakolof Bay', 28, '59.44690', '-151.51040'), ('Kachemak', 431, '59.67400', '-151.43100'), ('Kalifonsky', 285, '60.41010', '-151.27980'), ('Kasilof', 471, '60.33290', '-151.22990'), ('Kenai', 6942, '60.55370', '-151.20740'), ('Nikolaevsk', 345, '59.83230', '-151.58920'), ('Ninilchik', 772, '60.07350', '-151.63130'), ('Port Graham', 171, '59.34850', '-151.83740'), ('Ridgeway', 1932, '60.53200', '-151.08520'), ('Salamatof', 954, '60.61590', '-151.33740'), ('Seldovia', 286, '59.43910', '-151.70910'), ('Soldotna', 3759, '60.48750', '-151.06440'), ('Sterling', 4705, '60.51520', '-150.79710')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ125': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Chenega', 86, '60.10480', '-147.94370'), ('Crown Point', 75, '60.42250', '-149.33750'), ('Moose Pass', 206, '60.46730', '-149.38840'), ('Primrose', 93, '60.37830', '-149.32280')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ131': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ135': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Cordova', 2454, '60.54780', '-145.74760'), ('Eyak', 172, '60.52850', '-145.59260'), ('Tatitlek', 107, '60.88390', '-146.67770')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ141': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Chickaloon', 213, '61.79510', '-148.48050'), ('Chistochina', 93, '62.56440', '-144.68720'), ('Chitina', 123, '61.52480', '-144.48910'), ('Copper Center', 362, '61.98080', '-145.35110'), ('Copperville', 179, '62.04390', '-145.42070'), ('Gakona', 215, '62.29270', '-145.30950'), ('Glennallen', 554, '62.08490', '-145.60350'), ('Gulkana', 88, '62.25270', '-145.39900'), ('Kenny Lake', 410, '61.71930', '-144.94830'), ('McCarthy', 42, '61.42320', '-142.89800'), ('Mendeltna', 63, '62.06620', '-146.44990'), ('Mentasta Lake', 142, '62.85180', '-143.76090'), ('Paxson', 43, '63.08990', '-145.61300'), ('Slana', 124, '62.70150', '-143.99400'), ('Tonsina', 92, '61.63580', '-145.15750')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ145': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Cantwell', 222, '63.37160', '-148.92020'), ('Chase', 41, '62.44910', '-150.10180'), ('Skwentna', 111, '61.99020', '-151.39780'), ('Talkeetna', 772, '62.33690', '-150.09260'), ('Trapper Creek', 423, '62.24140', '-150.41570'), ('Tyonek', 193, '61.06700', '-151.21520'), ('Willow', 1658, '61.74080', '-150.05630')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ152': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Aniak', 572, '61.58070', '-159.53910'), ('Chuathbaluk', 119, '61.57320', '-159.21640'), ('Crooked Creek', 137, '61.87690', '-158.07780'), ('Lime Village', 6, '61.43280', '-155.47250'), ('Red Devil', 48, '61.79030', '-157.34790'), ('Sleetmute', 100, '61.72110', '-157.18360'), ('Stony River', 61, '61.79310', '-156.58080')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ155': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Akiachak', 585, '60.87170', '-161.40360'), ('Akiak', 309, '60.88570', '-161.19230'), ('Atmautluak', 294, '60.85430', '-162.26900'), ('Bethel', 5471, '60.76820', '-161.77220'), ('Chefornak', 394, '60.15370', '-164.21030'), ('Chevak', 765, '61.53350', '-165.59160'), ('Eek', 280, '60.21890', '-162.02640'), ('Hooper Bay', 1014, '61.53980', '-166.10310'), ('Kasigluk', 543, '60.88900', '-162.54570'), ('Kipnuk', 644, '59.92320', '-164.10100'), ('Kwethluk', 713, '60.77180', '-161.38850'), ('Lower Kalskag', 267, '61.51880', '-160.34990'), ('Mekoryuk', 210, '60.36570', '-166.28360'), ('Napakiak', 353, '60.67690', '-161.97870'), ('Napaskiak', 390, '60.66380', '-161.73810'), ('Newtok', 321, '60.94940', '-164.64410'), ('Nightmute', 208, '60.44830', '-164.80410'), ('Nunapitchuk', 466, '60.87910', '-162.45250'), ('Oscarville', 61, '60.69660', '-161.75920'), ('Quinhagak', 555, '59.73940', '-161.87240'), ('Tuluksak', 428, '61.11580', '-160.93920'), ('Tuntutuliak', 370, '60.32630', '-162.74070'), ('Tununak', 325, '60.57890', '-165.24480'), ('Upper Kalskag', 230, '61.53910', '-160.32890')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ161': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Aleknagik', 221, '59.28550', '-158.62900'), ('Clarks Point', 75, '58.84570', '-158.51570'), ('Dillingham', 2466, '59.06220', '-158.52800'), ('Egegik', 116, '58.22870', '-157.39270'), ('Ekwok', 130, '59.36020', '-157.47940'), ('Igiugig', 53, '59.33510', '-155.90720'), ('Iliamna', 102, '59.77510', '-154.86760'), ('King Salmon', 442, '58.74290', '-156.54460'), ('Kokhanok', 174, '59.40750', '-154.74420'), ('Koliganek', 182, '59.73610', '-157.26630'), ('Levelock', 122, '59.10860', '-156.88500'), ('Manokotak', 399, '59.00960', '-158.98970'), ('Naknek', 678, '58.76070', '-156.90180'), ('Newhalen', 160, '59.73440', '-154.88010'), ('New Stuyahok', 471, '59.47320', '-157.26200'), ('Nondalton', 221, '59.99040', '-154.85310'), ('Pedro Bay', 50, '59.79050', '-154.13660'), ('Pilot Point', 100, '57.61930', '-157.45900'), ('Platinum', 41, '58.97390', '-161.72520'), ('Port Alsworth', 104, '60.20950', '-154.30400'), ('Port Heiden', 119, '56.95510', '-158.58780'), ('South Naknek', 137, '58.68520', '-156.98050'), ('Twin Hills', 69, '59.07950', '-160.21020')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ171': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Akhiok', 80, '56.97730', '-154.21760'), ('Chignik', 79, '56.30160', '-158.41570'), ('Chignik Lagoon', 103, '56.28410', '-158.51110'), ('Karluk', 27, '57.58610', '-154.39530'), ('Kodiak', 6334, '57.79850', '-152.40230'), ('Kodiak Station', 2025, '57.76290', '-152.52690'), ('Larsen Bay', 115, '57.55870', '-154.01970'), ('Old Harbor', 237, '57.24500', '-153.37360'), ('Ouzinkie', 225, '57.93520', '-152.45820'), ('Port Lions', 256, '57.89080', '-152.85890'), ('Womens Bay', 690, '57.68230', '-152.66870')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ181': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Chignik Lake', 145, '56.25610', '-158.77220'), ('Cold Bay', 88, '55.22500', '-162.73890'), ('False Pass', 64, '54.84100', '-163.43680'), ('Ivanof Bay', 22, '55.96080', '-159.48950'), ('King Cove', 792, '55.05860', '-162.29980'), ('Nelson Lagoon', 83, '55.92070', '-161.18900'), ('Perryville', 107, '55.95860', '-159.22610'), ('Sand Point', 952, '55.31950', '-160.49120')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ185': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Akutan', 713, '54.13630', '-165.78600'), ('Nikolski', 39, '52.96130', '-168.82210')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ187': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Atka', 92, '52.24220', '-174.20520')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ191': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ195': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('St. Paul', 532, '57.21050', '-170.21890')], 'partOfState': '', 'wfo': 'AFC'}, +'AKZ201': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Atqasuk', 228, '70.46580', '-157.40860')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ202': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Barrow', 4581, '71.26830', '-156.80630')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ203': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Deadhorse', 26, '70.20560', '-148.51160'), ('Nuiqsut', 433, '70.19150', '-150.99460'), ('Prudhoe Bay', 5, '70.28400', '-148.37620')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ204': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Kaktovik', 293, '70.04920', '-143.63700')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ205': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ206': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anaktuvuk Pass', 282, '68.11590', '-151.67950')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ207': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ208': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Kiana', 388, '66.97020', '-160.45820'), ('Noatak', 428, '67.58280', '-163.00520')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ209': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Kotzebue', 3082, '66.88800', '-162.53540'), ('Noorvik', 634, '66.82860', '-161.04260'), ('Selawik', 772, '66.60330', '-160.02500')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ210': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Buckland', 406, '65.98110', '-161.13170'), ('Deering', 136, '66.07360', '-162.73170')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ211': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Golovin', 144, '64.57900', '-162.99090'), ('Nome', 3505, '64.50920', '-165.41520'), ('White Mountain', 203, '64.68360', '-163.41950')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ212': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Elim', 313, '64.62170', '-162.26040'), ('Koyuk', 297, '64.93290', '-161.14830'), ('Shaktoolik', 230, '64.36400', '-161.20420'), ('Stebbins', 547, '63.47850', '-162.22740'), ('St. Michael', 368, '63.47760', '-162.10910'), ('Unalakleet', 747, '63.88470', '-160.78980')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ213': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Brevig Mission', 276, '65.33510', '-166.48090'), ('Gambell', 649, '63.77660', '-171.70170'), ('Savoonga', 643, '63.67970', '-170.47090'), ('Wales', 152, '65.60930', '-168.07990')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ214': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Alakanuk', 652, '62.67560', '-164.64360'), ('Emmonak', 767, '62.77830', '-164.53720'), ('Marshall', 349, '61.87530', '-162.06010'), ('Mountain Village', 755, '62.08780', '-163.71670'), ('Pilot Station', 550, '61.94140', '-162.87590'), ('Pitkas Point', 125, '62.03130', '-163.27000'), ('Scammon Bay', 465, '61.84500', '-165.58190'), ('Sheldon Point', 164, '62.51690', '-164.89280'), ("St. Mary's", 500, '62.04610', '-163.24630')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ215': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anvik', 104, '62.65550', '-160.20830'), ('Grayling', 194, '62.89950', '-160.10740'), ('Holy Cross', 227, '62.18140', '-159.79940'), ('Russian Mission', 296, '61.79450', '-161.35380'), ('Shageluk', 129, '62.66840', '-159.56510')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ216': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Galena', 675, '64.74080', '-156.81990'), ('Huslia', 293, '65.68990', '-156.29200'), ('Kaltag', 230, '64.33860', '-158.68620'), ('Koyukuk', 101, '64.91350', '-157.65070'), ('Nulato', 336, '64.70760', '-158.22360'), ('Ruby', 188, '64.71760', '-155.52070')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ217': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Ambler', 309, '67.07690', '-157.91820'), ('Kobuk', 109, '66.90460', '-156.89640'), ('Shungnak', 256, '66.87590', '-157.15570')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ218': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Arctic Village', 152, '68.12520', '-145.52690')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ219': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Allakaket', 97, '66.54520', '-152.73310'), ('Bettles', 43, '66.88660', '-151.59440'), ('Evansville', 28, '66.87860', '-151.45970'), ('Hughes', 78, '66.03710', '-154.26770')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ220': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Beaver', 84, '66.33420', '-147.31470'), ('Birch Creek', 28, '66.24540', '-145.83030'), ('Central', 134, '65.55580', '-144.85780'), ('Chalkyitsik', 83, '66.63800', '-143.75500'), ('Circle', 100, '65.82450', '-144.08260'), ('Circle Hot Springs', 29, '65.47030', '-144.68910'), ('Fort Yukon', 595, '66.56500', '-145.26180'), ('Stevens Village', 87, '65.99900', '-149.05470'), ('Venetie', 202, '67.01460', '-146.39790')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ221': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Anderson', 367, '64.30650', '-149.15970'), ('Lake Minchumina', 32, '63.87440', '-152.41280'), ('Manley Hot Springs', 72, '64.98580', '-150.63660'), ('Minto', 258, '65.02620', '-149.52960'), ('Nenana', 402, '64.54400', '-149.08670'), ('Rampart', 45, '65.38360', '-150.01120'), ('Tanana', 308, '65.15600', '-152.10190')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ222': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('College', 11402, '64.86950', '-147.82340'), ('Eielson AFB', 5400, '64.67570', '-147.09130'), ('Ester', 1680, '64.86130', '-148.02450'), ('Fairbanks', 30224, '64.83710', '-147.64900'), ('Fox', 300, '64.96070', '-147.62130'), ('Moose Creek', 542, '64.71370', '-147.16520'), ('North Pole', 1570, '64.75320', '-147.35600'), ('Pleasant Valley', 623, '64.88130', '-146.86850'), ('Two Rivers', 482, '64.87100', '-147.09000')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ223': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Big Delta', 749, '64.13990', '-145.76210'), ('Delta Junction', 840, '64.06370', '-145.70820'), ('Fort Greely', 461, '63.95870', '-145.75610'), ('Harding Lake', 27, '64.42180', '-146.85070'), ('Healy Lake', 37, '63.97700', '-144.72410'), ('Salcha', 854, '64.46930', '-146.94150')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ224': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Alcan', 27, '62.72300', '-141.18820'), ('Eagle', 129, '64.77810', '-141.20060'), ('Eagle Village', 68, '64.79040', '-141.10910'), ('Northway', 107, '62.93290', '-141.87490'), ('Northway Junction', 72, '63.00210', '-141.77730'), ('Northway Village', 107, '62.97740', '-141.90360'), ('Tanacross', 140, '63.33910', '-143.43270'), ('Tetlin', 117, '63.06460', '-142.43890'), ('Tok', 1393, '63.30030', '-143.03880')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ225': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Ferry', 29, '63.92790', '-149.13020'), ('Healy', 1000, '63.81150', '-149.00200'), ('Lignite', 99, '63.89050', '-149.04640'), ('McKinley Park', 142, '63.69670', '-148.95480')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ226': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('Dot Lake', 19, '63.62910', '-144.09510'), ('Dry Creek', 128, '63.65340', '-144.66530')], 'partOfState': '', 'wfo': 'AFG'}, +'AKZ227': {'fullStateName': 'Alaska', 'state': 'AK', 'cities': [('McGrath', 401, '62.95430', '-155.57580'), ('Nikolai', 100, '62.99520', '-154.39070'), ('Takotna', 50, '62.99280', '-156.17180')], 'partOfState': '', 'wfo': 'AFG'}, +'ALZ001': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Anderson', 354, '34.91350', '-87.27060'), ('Florence', 36264, '34.82780', '-87.66510'), ('Killen', 1119, '34.86150', '-87.52930'), ('Lexington', 840, '34.96600', '-87.37290'), ('Rogersville', 1199, '34.82620', '-87.28450'), ('Saint Florian', 335, '34.86570', '-87.62380'), ('Underwood-Petersville', 3137, '34.87700', '-87.69600'), ('Waterloo', 208, '34.91670', '-88.06420')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALZ002': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Cherokee', 1237, '34.75640', '-87.96670'), ('Leighton', 849, '34.69960', '-87.53070'), ('Littleville', 978, '34.59500', '-87.67400'), ('Muscle Shoals', 11924, '34.74710', '-87.64200'), ('Sheffield', 9652, '34.75520', '-87.70130'), ('Tuscumbia', 7856, '34.72870', '-87.70570')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALZ003': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Hodges', 261, '34.32740', '-87.92650'), ('Phil Campbell', 1091, '34.35200', '-87.70580'), ('Red Bay', 3374, '34.43610', '-88.13630'), ('Russellville', 8971, '34.50590', '-87.72920'), ('Vina', 400, '34.37430', '-88.05650')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALZ004': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Courtland', 769, '34.66890', '-87.31660'), ('Hillsboro', 608, '34.63670', '-87.18460'), ('Moulton', 3260, '34.48390', '-87.28110'), ('North Courtland', 799, '34.67720', '-87.30840'), ('Town Creek', 1216, '34.67270', '-87.40830')], 'partOfState': 'northwest', 'wfo': 'HUN'}, +'ALZ005': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ardmore', 1034, '34.98340', '-86.83660'), ('Athens', 18967, '34.78600', '-86.95990'), ('Elkmont', 470, '34.92840', '-86.97590'), ('Lester', 107, '34.98420', '-87.14790'), ('Mooresville', 59, '34.62680', '-86.88000')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALZ006': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Gurley', 876, '34.70310', '-86.37310'), ('Harvest', 3054, '34.85560', '-86.74990'), ('Hazel Green', 3805, '34.92360', '-86.56720'), ('Huntsville', 158216, '34.70700', '-86.62770'), ('Madison', 29329, '34.70290', '-86.74970'), ('Meridianville', 4117, '34.87380', '-86.57090'), ('Moores Mill', 5178, '34.85190', '-86.52580'), ('New Hope', 2539, '34.53910', '-86.41590'), ('New Market', 1864, '34.90950', '-86.42510'), ('Owens Crossroads', 1124, '34.58200', '-86.46020'), ('Redstone Arsenal', 2365, '34.68410', '-86.65400'), ('Triana', 458, '34.59460', '-86.74430')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALZ007': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Decatur', 53929, '34.57180', '-86.98820'), ('Eva', 491, '34.33040', '-86.75590'), ('Falkville', 1202, '34.37690', '-86.90970'), ('Flint City', 1033, '34.51550', '-86.97280'), ('Hartselle', 12019, '34.43690', '-86.93980'), ('Priceville', 1631, '34.52420', '-86.88560'), ('Somerville', 347, '34.47470', '-86.80140'), ('Trinity', 1841, '34.59860', '-87.08980')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALZ008': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Albertville', 17247, '34.26250', '-86.20940'), ('Arab', 7174, '34.32960', '-86.50010'), ('Boaz', 7411, '34.20260', '-86.15550'), ('Douglas', 530, '34.17150', '-86.32120'), ('Grant', 665, '34.51720', '-86.25230'), ('Guntersville', 7395, '34.35680', '-86.27040'), ('Union Grove', 94, '34.40000', '-86.44610')], 'partOfState': 'northeast', 'wfo': 'HUN'}, +'ALZ009': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bridgeport', 2728, '34.94440', '-85.71900'), ('Dutton', 310, '34.60760', '-85.91560'), ('Hollywood', 950, '34.71690', '-85.96570'), ('Langston', 254, '34.53420', '-86.09240'), ('Paint Rock', 185, '34.66060', '-86.32880'), ('Pisgah', 706, '34.68220', '-85.84780'), ('Scottsboro', 14762, '34.64930', '-86.04740'), ('Section', 769, '34.58100', '-85.98380'), ('Skyline', 843, '34.80290', '-86.12350'), ('Stevenson', 1770, '34.87060', '-85.83310'), ('Woodville', 761, '34.62520', '-86.28220')], 'partOfState': 'northeast', 'wfo': 'HUN'}, +'ALZ010': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Collinsville', 1644, '34.26660', '-85.86300'), ('Crossville', 1431, '34.28630', '-85.99360'), ('Fort Payne', 12938, '34.45380', '-85.69440'), ('Fyffe', 971, '34.45100', '-85.90640'), ('Geraldine', 786, '34.36080', '-86.00300'), ('Hammondville', 486, '34.56930', '-85.63830'), ('Henagar', 2400, '34.63390', '-85.73740'), ('Ider', 664, '34.70070', '-85.66690'), ('Lakeview', 163, '34.39220', '-85.97330'), ('Mentone', 451, '34.56830', '-85.58270'), ('Pine Ridge', 243, '34.44440', '-85.77970'), ('Powell', 762, '34.53080', '-85.89510'), ('Rainsville', 4499, '34.49880', '-85.84490'), ('Shiloh', 289, '34.46550', '-85.87730'), ('Sylvania', 1186, '34.55980', '-85.80760'), ('Valley Head', 611, '34.55080', '-85.62580')], 'partOfState': 'northeast', 'wfo': 'HUN'}, +'ALZ011': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bear Creek', 1053, '34.26050', '-87.71560'), ('Brilliant', 762, '34.01670', '-87.77580'), ('Guin', 2389, '33.96610', '-87.91050'), ('Gu-Win', 204, '33.95820', '-87.87170'), ('Hackleburg', 1527, '34.27420', '-87.83370'), ('Hamilton', 6786, '34.14030', '-87.98280'), ('Weston', 384, '34.16220', '-88.03090'), ('Winfield', 4540, '33.92990', '-87.79610')], 'partOfState': 'northwest', 'wfo': 'BMX'}, +'ALZ012': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Beaverton', 226, '33.93430', '-88.02140'), ('Detroit', 247, '34.02620', '-88.16880'), ('Kennedy', 541, '33.58140', '-87.98550'), ('Millport', 1160, '33.55950', '-88.08120'), ('Sulligent', 2151, '33.89470', '-88.13190'), ('Vernon', 2143, '33.75830', '-88.11380')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALZ013': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Belk', 214, '33.64810', '-87.92770'), ('Berry', 1238, '33.66320', '-87.60770'), ('Fayette', 4922, '33.69400', '-87.83140'), ('Glen Allen', 442, '33.88480', '-87.74410')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALZ014': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Addison', 723, '34.19990', '-87.17790'), ('Arley', 290, '34.08500', '-87.21060'), ('Double Springs', 1003, '34.14840', '-87.40310'), ('Haleyville', 4182, '34.23880', '-87.61820'), ('Lynn', 597, '34.04380', '-87.54670')], 'partOfState': 'northwest', 'wfo': 'BMX'}, +'ALZ015': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Carbon Hill', 2071, '33.89580', '-87.52500'), ('Cordova', 2423, '33.76060', '-87.19280'), ('Dora', 2413, '33.73140', '-87.08320'), ('Eldridge', 184, '33.92200', '-87.61980'), ('Jasper', 14052, '33.85200', '-87.27010'), ('Kansas', 260, '33.90180', '-87.55330'), ('Nauvoo', 284, '33.98850', '-87.48780'), ('Oakman', 944, '33.71300', '-87.38850'), ('Parrish', 1268, '33.73380', '-87.28070'), ('Sipsey', 552, '33.82210', '-87.08310'), ('Sumiton', 2665, '33.75310', '-87.04820')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ016': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Baileyton', 684, '34.26210', '-86.61350'), ('Colony', 385, '33.94140', '-86.90120'), ('Cullman', 13995, '34.17610', '-86.83890'), ('Fairview', 522, '34.24680', '-86.68740'), ('Garden City', 564, '34.01480', '-86.75010'), ('Good Hope', 1966, '34.11010', '-86.86460'), ('Hanceville', 2951, '34.06490', '-86.76350'), ('Holly Pond', 645, '34.17460', '-86.61700'), ('South Vinemont', 425, '34.23610', '-86.86260'), ('West Point', 295, '34.23810', '-86.94820')], 'partOfState': 'north central', 'wfo': 'HUN'}, +'ALZ017': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Allgood', 629, '33.90640', '-86.51800'), ('Blountsville', 1768, '34.08090', '-86.58840'), ('Cleveland', 1241, '33.99490', '-86.57050'), ('County Line', 257, '33.82100', '-86.72280'), ('Hayden', 470, '33.89530', '-86.75440'), ('Highland Lake', 408, '33.88920', '-86.42380'), ('Locust Fork', 1016, '33.90270', '-86.62170'), ('Nectar', 372, '33.96900', '-86.63630'), ('Oneonta', 5576, '33.95120', '-86.47060'), ('Rosa', 313, '33.98450', '-86.50870'), ('Smoke Rise', 1750, '33.87990', '-86.82450'), ('Snead', 748, '34.11590', '-86.39150'), ('Susan Moore', 721, '34.07410', '-86.42970')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ018': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Altoona', 984, '34.03140', '-86.31360'), ('Attalla', 6592, '34.01000', '-86.10190'), ('Gadsden', 38978, '34.01000', '-86.01440'), ('Glencoe', 5152, '33.94620', '-85.93120'), ('Hokes Bluff', 4149, '33.98960', '-85.86300'), ('Mountainboro', 338, '34.14770', '-86.13120'), ('Rainbow City', 8428, '33.92970', '-86.08740'), ('Reece City', 634, '34.07240', '-86.03240'), ('Ridgeville', 158, '34.05700', '-86.10330'), ('Sardis City', 1438, '34.17670', '-86.11350'), ('Southside', 7036, '33.90380', '-86.02200'), ('Walnut Grove', 710, '34.06460', '-86.28730')], 'partOfState': 'northeast', 'wfo': 'BMX'}, +'ALZ019': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Anniston', 24276, '33.66260', '-85.81390'), ('Blue Mountain', 233, '33.68850', '-85.83760'), ('Bynum', 1863, '33.60550', '-85.95750'), ('Fort Mcclellan', 4128, '33.71880', '-85.79070'), ('Hobson City', 878, '33.61700', '-85.85170'), ('Jacksonville', 8404, '33.81070', '-85.76080'), ('Ohatchee', 1215, '33.78450', '-86.01870'), ('Oxford', 14592, '33.59700', '-85.82580'), ('Piedmont', 5120, '33.92740', '-85.61520'), ('Saks', 10698, '33.71130', '-85.85380'), ('Weaver', 2619, '33.75560', '-85.80860'), ('West End-Cobb Town', 3924, '33.64820', '-85.87120')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ020': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Cedar Bluff', 1467, '34.22050', '-85.59600'), ('Centre', 3216, '34.15300', '-85.67170'), ('Gaylesville', 140, '34.26790', '-85.55830'), ('Leesburg', 799, '34.17900', '-85.76910'), ('Sand Rock', 509, '34.23210', '-85.77060')], 'partOfState': 'northeast', 'wfo': 'BMX'}, +'ALZ021': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Edwardsville', 186, '33.70670', '-85.50980'), ('Fruithurst', 270, '33.73030', '-85.43190'), ('Heflin', 3002, '33.64630', '-85.58670'), ('Ranburne', 459, '33.52490', '-85.34020')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ022': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Aliceville', 2567, '33.12510', '-88.15800'), ('Carrollton', 987, '33.26180', '-88.09510'), ('Ethelsville', 81, '33.41420', '-88.21630'), ('Gordo', 1677, '33.32130', '-87.90370'), ('McMullen', 66, '33.14710', '-88.17610'), ('Memphis', 33, '33.13830', '-88.30130'), ('Pickensville', 662, '33.22660', '-88.26560'), ('Reform', 1978, '33.37960', '-88.01670')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALZ023': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Brookwood', 1483, '33.24720', '-87.32390'), ('Holt', 4103, '33.22960', '-87.48090'), ('Northport', 19435, '33.24410', '-87.59210'), ('Tuscaloosa', 77906, '33.23770', '-87.54100'), ('Vance', 500, '33.17090', '-87.22790')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALZ024': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Adamsville', 4965, '33.59550', '-86.95800'), ('Bessemer', 29672, '33.37520', '-86.96060'), ('Birmingham', 242820, '33.52770', '-86.79920'), ('Brighton', 3640, '33.43890', '-86.94550'), ('Brookside', 1393, '33.63190', '-86.91470'), ('Cahaba Heights', 5203, '33.45960', '-86.72820'), ('Cardiff', 82, '33.64610', '-86.92900'), ('Center Point', 22784, '33.64310', '-86.67880'), ('Fairfield', 12381, '33.47300', '-86.91770'), ('Forestdale', 10509, '33.57930', '-86.90290'), ('Fultondale', 6595, '33.61730', '-86.80010'), ('Gardendale', 11626, '33.66520', '-86.80060'), ('Graysville', 2344, '33.62640', '-86.96920'), ('Homewood', 25043, '33.46480', '-86.80700'), ('Hoover', 62742, '33.37530', '-86.81900'), ('Hueytown', 15364, '33.43760', '-86.99760'), ('Irondale', 9813, '33.53230', '-86.67630'), ('Kimberly', 1801, '33.76820', '-86.80480'), ('Leeds', 10455, '33.54600', '-86.56270'), ('Lipscomb', 2458, '33.42610', '-86.92540'), ('Maytown', 435, '33.55110', '-86.99570'), ('Midfield', 5626, '33.45410', '-86.92280'), ('Minor', 1116, '33.52530', '-86.94760'), ('Morris', 1827, '33.74970', '-86.80530'), ('Mountain Brook', 20604, '33.48690', '-86.74050'), ('Mulga', 973, '33.54660', '-86.97530'), ('North Johns', 142, '33.36810', '-87.10150'), ('Pinson-Clay-chalkv', 10987, '33.67670', '-86.65860'), ('Pleasant Grove', 9983, '33.48920', '-86.97590'), ('Sylvan Springs', 1465, '33.51290', '-87.03060'), ('Tarrant', 8046, '33.59370', '-86.76790'), ('Trafford', 523, '33.82360', '-86.74650'), ('Trussville', 12924, '33.63590', '-86.59320'), ('Vestavia Hills', 24476, '33.43360', '-86.78760'), ('Warrior', 3169, '33.81390', '-86.80820'), ('West Jefferson', 344, '33.64870', '-87.06790')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ025': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alabaster', 22619, '33.22650', '-86.82460'), ('Calera', 3158, '33.10130', '-86.75370'), ('Chelsea', 2949, '33.32630', '-86.63740'), ('Columbiana', 3316, '33.17700', '-86.60080'), ('Harpersville', 1620, '33.34180', '-86.43270'), ('Helena', 10296, '33.28970', '-86.85240'), ('Inverness', 2528, '33.40410', '-86.72290'), ('Lake Purdy', 5799, '33.42990', '-86.68050'), ('Meadowbrook', 4697, '33.40190', '-86.69680'), ('Montevallo', 4825, '33.10930', '-86.85120'), ('Pelham', 14369, '33.30330', '-86.79410'), ('Vincent', 1853, '33.38560', '-86.40990'), ('Wilsonville', 1551, '33.23600', '-86.47900'), ('Wilton', 580, '33.08220', '-86.88110')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ026': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Argo', 1780, '33.68670', '-86.51000'), ('Ashville', 2260, '33.83470', '-86.26400'), ('Branchville', 825, '33.66110', '-86.42700'), ('Margaret', 1169, '33.68770', '-86.47470'), ('Moody', 8053, '33.59690', '-86.49460'), ('Odenville', 1131, '33.68600', '-86.39840'), ('Pell City', 9565, '33.56020', '-86.27240'), ('Ragland', 1918, '33.74810', '-86.13630'), ('Riverside', 1564, '33.61130', '-86.20770'), ('Springville', 2521, '33.77360', '-86.47510'), ('Steele', 1093, '33.93400', '-86.19730')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ027': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bon Air', 96, '33.26130', '-86.33810'), ('Childersburg', 4927, '33.27940', '-86.35330'), ('Gantts Quarry', 0, '33.14820', '-86.29940'), ('Lincoln', 4577, '33.59800', '-86.13940'), ('Mignon', 1348, '33.19400', '-86.26400'), ('Oak Grove', 457, '33.18620', '-86.30290'), ('Sylacauga', 12616, '33.17600', '-86.26130'), ('Talladega', 15143, '33.43200', '-86.09800'), ('Talladega Springs', 124, '33.11750', '-86.44450'), ('Waldo', 281, '33.39090', '-86.03540')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ028': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ashland', 1965, '33.27100', '-85.83070'), ('Lineville', 2401, '33.31240', '-85.75260')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ029': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Roanoke', 6563, '33.14530', '-85.36930'), ('Wadley', 640, '33.12330', '-85.56860'), ('Wedowee', 818, '33.30850', '-85.48650'), ('Woodland', 192, '33.37410', '-85.39930')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ030': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Cuba', 363, '32.44060', '-88.37430'), ('Emelle', 31, '32.72850', '-88.31520'), ('Epes', 206, '32.69170', '-88.12600'), ('Gainesville', 220, '32.81530', '-88.15960'), ('Geiger', 161, '32.87370', '-88.31340'), ('Livingston', 3297, '32.59880', '-88.18710'), ('York', 2854, '32.49600', '-88.29610')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALZ031': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Boligee', 369, '32.75300', '-88.02430'), ('Eutaw', 1878, '32.84060', '-87.89150'), ('Forkland', 629, '32.64760', '-87.86720'), ('Union', 227, '32.99340', '-87.90550')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALZ032': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Akron', 521, '32.87610', '-87.73880'), ('Greensboro', 2731, '32.70060', '-87.59410'), ('Moundville', 1809, '32.99590', '-87.63070'), ('Newbern', 231, '32.59130', '-87.53600')], 'partOfState': 'west central', 'wfo': 'BMX'}, +'ALZ033': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Marion', 3511, '32.63160', '-87.31760'), ('Uniontown', 1636, '32.44700', '-87.50850')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ034': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Brent', 4024, '32.94230', '-87.17620'), ('Centreville', 2466, '32.95890', '-87.13270'), ('West Blocton', 1372, '33.11810', '-87.12580')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ035': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Clanton', 7800, '32.84000', '-86.62470'), ('Jemison', 2248, '32.96500', '-86.74410'), ('Maplesville', 672, '32.78570', '-86.87840'), ('Thorsby', 1820, '32.91500', '-86.71410')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ036': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Goodwater', 1633, '33.06040', '-86.05150'), ('Rockford', 428, '32.88760', '-86.21720')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ037': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alexander City', 15008, '32.92700', '-85.93400'), ('Camp Hill', 1273, '32.80010', '-85.65330'), ('Dadeville', 3212, '32.83190', '-85.76520'), ('Daviston', 267, '33.05510', '-85.63920'), ('Goldville', 37, '33.08350', '-85.78440'), ("Jacksons' Gap", 761, '32.88410', '-85.81700'), ('New Site', 848, '33.03520', '-85.77500')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ038': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Five Points', 146, '33.01710', '-85.35130'), ('Huguley', 2953, '32.84310', '-85.24070'), ('Lafayette', 3234, '32.89950', '-85.40080'), ('Lanett', 7897, '32.86620', '-85.20510'), ('Valley', 9198, '32.80900', '-85.17300'), ('Waverly', 184, '32.73610', '-85.57610')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ039': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Consul', 383, '32.26440', '-87.54040'), ('Dayton', 60, '32.35140', '-87.64220'), ('Demopolis', 7540, '32.51560', '-87.83920'), ('Dixons Mill', 234, '32.05750', '-87.78780'), ('Faunsdale', 87, '32.45980', '-87.59430'), ('Flatwood', 0, '32.14929', '-87.52301'), ('Half Acre', 139, '32.19420', '-87.91210'), ('Holtamville', 234, '31.99190', '-87.94010'), ('Jefferson', 7540, '32.38610', '-87.89790'), ('Linden', 2424, '32.30500', '-87.79920'), ('Magnolia', 383, '32.13580', '-87.66790'), ('Miller', 234, '32.15680', '-87.78550'), ('Myrtlewood', 139, '32.25010', '-87.94980'), ('Nanafalia', 353, '32.11300', '-87.98810'), ('Octagon', 2424, '32.20430', '-87.75550'), ('Old Spring Hill', 7540, '32.43730', '-87.77380'), ('Providence', 311, '32.34130', '-87.78150'), ('Putnam', 353, '32.02190', '-88.03250'), ('Shawnee', 4649, '31.99360', '-87.70710'), ('Shiloh', 266, '32.12740', '-87.73580'), ('Surginer', 966, '32.05540', '-87.71030'), ('Sweet Water', 234, '32.09720', '-87.86750'), ('Thomaston', 383, '32.26610', '-87.62670'), ('Us 80 And Al 28', 7540, '32.44250', '-87.98570'), ('Vineland', 966, '32.03500', '-87.65960')], 'partOfState': 'southwest', 'wfo': 'BMX'}, +'ALZ040': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Orrville', 230, '32.30830', '-87.24540'), ('Selma', 20512, '32.41610', '-87.03300'), ('Selmont-West Selmont', 3502, '32.37840', '-87.00670')], 'partOfState': 'south central', 'wfo': 'BMX'}, +'ALZ041': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Autaugaville', 820, '32.43100', '-86.65580'), ('Billingsley', 116, '32.66030', '-86.70850'), ('Prattville', 24303, '32.46170', '-86.44670')], 'partOfState': '', 'wfo': 'BMX'}, +'ALZ042': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Benton', 47, '32.30740', '-86.81760'), ('Fort Deposit', 1270, '31.98590', '-86.57620'), ('Hayneville', 1177, '32.18250', '-86.57880'), ('Lowndesboro', 140, '32.27670', '-86.61030'), ('Mosses', 1101, '32.17620', '-86.67460'), ('White Hall', 1014, '32.30080', '-86.71450')], 'partOfState': 'south central', 'wfo': 'BMX'}, +'ALZ043': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Blue Ridge', 1331, '32.49250', '-86.19060'), ('Coosada', 1382, '32.49580', '-86.33020'), ('Eclectic', 1037, '32.63680', '-86.03470'), ('Millbrook', 10386, '32.49460', '-86.36770'), ('Tallassee', 4934, '32.53520', '-85.89140'), ('Wetumpka', 5726, '32.54420', '-86.20180')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ044': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Montgomery', 201568, '32.35440', '-86.28430')], 'partOfState': 'south central', 'wfo': 'BMX'}, +'ALZ045': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Franklin', 149, '32.45520', '-85.80280'), ('Notasulga', 916, '32.55760', '-85.67240'), ('Shorter', 355, '32.40080', '-85.93660'), ('Tuskegee', 11846, '32.43770', '-85.71110')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALZ046': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Midway', 457, '32.07430', '-85.52030'), ('Union Springs', 3670, '32.13880', '-85.71370')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALZ047': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Auburn', 42987, '32.59290', '-85.48030'), ('Loachapoka', 165, '32.60470', '-85.59690'), ('Opelika', 23498, '32.65420', '-85.37880'), ('Smiths', 21756, '32.53980', '-85.08720')], 'partOfState': 'east central', 'wfo': 'BMX'}, +'ALZ048': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Hurtsboro', 592, '32.23990', '-85.41440'), ('Ladonia', 3229, '32.46240', '-85.08680'), ('Phenix City', 28265, '32.46550', '-85.01460')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALZ049': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Banks', 224, '31.81430', '-85.83830'), ('Brundidge', 2341, '31.71890', '-85.81530'), ('Goshen', 300, '31.71960', '-86.12590'), ('Troy', 13935, '31.80410', '-85.96820')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALZ050': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Blue Springs', 121, '31.66050', '-85.50310'), ('Clayton', 1475, '31.88070', '-85.45120'), ('Clio', 2206, '31.70930', '-85.61050'), ('Eufaula', 13908, '31.90930', '-85.15040'), ('Louisville', 612, '31.78110', '-85.55800')], 'partOfState': 'southeast', 'wfo': 'BMX'}, +'ALZ051': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Aquilla', 529, '31.71252', '-88.41388'), ('Ararat', 1952, '31.96832', '-88.14673'), ('Barrytown', 187, '31.83752', '-88.25281'), ('Bladon Springs', 360, '31.73071', '-88.19751'), ('Bogueloosa', 0, '31.98767', '-88.33252'), ('Bolinger', 529, '31.77850', '-88.33112'), ('Brightwater', 0, '31.98029', '-88.35419'), ('Butler', 1952, '32.08911', '-88.20563'), ('Chapel Hill', 0, '32.23993', '-88.18860'), ('Chappell Hill', 0, '31.89191', '-88.25562'), ('Choctaw City', 353, '32.20911', '-88.09418'), ('Collumburg', 529, '31.71307', '-88.29181'), ('Contwell', 0, '31.70831', '-88.42859'), ('Cromwell', 653, '32.22888', '-88.27448'), ('Cyril', 653, '32.17828', '-88.42230'), ('Deas', 353, '32.22931', '-88.09723'), ('Edna', 353, '32.28693', '-88.07422'), ('Eiler', 0, '31.96271', '-88.42358'), ('Emory', 0, '31.81073', '-88.45752'), ('Evansboro', 187, '31.88391', '-88.46808'), ('Flatwood', 0, '31.79688', '-88.23749'), ('Gilbertown', 187, '31.87592', '-88.31952'), ('Halsell', 653, '32.28412', '-88.27722'), ('Hinton', 97, '32.09210', '-88.44232'), ('Hodgewood', 152, '31.93750', '-88.30219'), ('Indian Springs', 353, '32.25250', '-88.10089'), ('Isney', 529, '31.78247', '-88.45563'), ('Jachin', 353, '32.22992', '-88.16840'), ('Jackson Spur', 0, '31.95691', '-88.31500'), ('Land', 97, '32.02869', '-88.32831'), ('Lavaca', 353, '32.14050', '-88.08002'), ('Lisman', 653, '32.22772', '-88.21198'), ('Little Walker', 0, '32.15051', '-88.17780'), ('Lou', 152, '31.91913', '-88.21112'), ('Lusk', 0, '31.96832', '-88.28748'), ('Melvin', 97, '31.93048', '-88.45892'), ('Mollie', 0, '32.24152', '-88.27173'), ('Morgan Chapel', 0, '32.04327', '-88.21051'), ('Mount Sterling', 1952, '32.09369', '-88.16309'), ('Naheola', 353, '32.22772', '-88.02881'), ('Needham', 97, '31.98712', '-88.33661'), ('Oakchia', 139, '32.29852', '-88.01062'), ('Okatuppa', 0, '31.94489', '-88.39612'), ('Old Samuel', 0, '31.87250', '-88.30609'), ('Paragon', 187, '31.87628', '-88.37451'), ('Pelham', 0, '32.27972', '-88.12000'), ('Pennington', 353, '32.20709', '-88.05609'), ('Pleasant Hill', 0, '31.93030', '-88.21448'), ('Pushmataha', 653, '32.19348', '-88.35339'), ('Red Springs', 0, '32.02991', '-88.27112'), ('Rescueville', 0, '31.69928', '-88.26532'), ('Riderwood', 653, '32.12891', '-88.32782'), ('Robjohn', 353, '32.21411', '-88.12720'), ('Rock Springs', 97, '32.07849', '-88.36639'), ('Silas', 529, '31.77869', '-88.32031'), ('Slater', 0, '31.99353', '-88.09998'), ('Souwilpa', 529, '31.82031', '-88.32922'), ('Spring Hill', 0, '31.94708', '-88.13721'), ('Thornton Springs', 0, '31.90210', '-88.21613'), ('Tompkinsville', 0, '32.20331', '-88.02032'), ('Toxey', 152, '31.92712', '-88.32861'), ('Turner', 0, '31.99530', '-88.38110'), ('Water Valley', 187, '31.89410', '-88.39313'), ('West Butler', 0, '32.06891', '-88.33533'), ('Wimbly', 152, '31.91528', '-88.24841'), ('Womack Hill', 187, '31.85327', '-88.18860'), ('Yantley', 653, '32.24609', '-88.37952')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALZ052': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Barlow', 7676, '31.56689', '-88.32361'), ('Bassetts Creek', 248, '31.46472', '-88.03223'), ('Bigbee', 615, '31.61407', '-88.16638'), ('Burbank', 556, '31.21808', '-88.39062'), ('Carpenter', 548, '31.54169', '-88.23639'), ('Carson', 5419, '31.47247', '-87.94141'), ('Chapel Hill', 412, '31.69348', '-88.44031'), ('Chatom', 1193, '31.52112', '-88.20813'), ('Chestang', 360, '31.16193', '-88.11438'), ('Copeland', 0, '31.56030', '-88.41919'), ('Cortelyou', 5419, '31.42352', '-88.00830'), ('Deer Park', 3659, '31.21869', '-88.32532'), ('Dunbar', 0, '31.67828', '-88.34601'), ('Dwight', 0, '31.15192', '-88.25861'), ('Ellisville', 0, '31.54547', '-88.21332'), ('Epworth', 0, '31.26068', '-88.42419'), ('Escatawpa', 395, '31.28967', '-88.38721'), ('Fairford', 844, '31.17810', '-88.07281'), ('Fitee', 0, '31.54413', '-88.34949'), ('Four Point', 0, '31.30133', '-88.36450'), ('Frankville', 360, '31.64648', '-88.14752'), ('Fruitdale', 395, '31.34351', '-88.41180'), ('Happy Hill', 0, '31.18170', '-88.05170'), ('Hawthorn', 244, '31.33331', '-88.08832'), ('Healing Springs', 615, '31.63251', '-88.33661'), ('Hobson', 0, '31.48871', '-88.15088'), ('Jordan', 1193, '31.50488', '-88.24719'), ('Koenton', 615, '31.64008', '-88.25952'), ('Laton Hill', 0, '31.48907', '-88.36810'), ('Leroy', 5419, '31.49487', '-87.97278'), ('Loper', 615, '31.58148', '-88.29999'), ('Malcolm', 244, '31.19873', '-88.00110'), ('McIntosh', 244, '31.25250', '-88.05420'), ('Mehaffey', 0, '31.61768', '-88.39862'), ('Millry', 615, '31.63068', '-88.32141'), ('Mowa Choctaw Reservation', 0, '31.14691', '-88.05292'), ('New Wakefield', 0, '31.34747', '-88.03192'), ('Prestwick', 5419, '31.45288', '-87.96613'), ('Reid Settlement', 0, '31.24609', '-88.09888'), ('Rutan', 0, '31.43970', '-88.18951'), ('Saint Stephens', 5419, '31.55188', '-88.06073'), ('Seaboard', 1193, '31.32129', '-88.18860'), ('Shady Grove', 0, '31.63110', '-88.39142'), ('Silver Cross', 360, '31.68109', '-88.17419'), ('Sims Chapel', 0, '31.22931', '-88.14539'), ('Sunflower', 244, '31.38251', '-88.00830'), ('Tibbie', 1193, '31.36292', '-88.24670'), ('Toinette', 244, '31.33972', '-88.00830'), ('Topton', 244, '31.28632', '-88.15002'), ('Uniform', 0, '31.34949', '-88.23450'), ('Vinegar Bend', 3659, '31.25909', '-88.36731'), ('Wagar', 0, '31.44189', '-87.99359'), ('Wagarville', 5419, '31.43890', '-88.02441'), ('Walley', 0, '31.18469', '-88.42499'), ('Wilson', 0, '31.54608', '-88.06171'), ('Yarbo', 1193, '31.54388', '-88.27771'), ('Yellow Pine', 395, '31.40570', '-88.42969')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALZ053': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alma', 5419, '31.46411', '-87.75391'), ('Asbury', 0, '31.70068', '-87.72388'), ('Atkeison', 0, '31.96552', '-87.68640'), ('Barlow Bend', 1460, '31.45471', '-87.63470'), ('Bashi', 234, '31.97131', '-87.86139'), ('Campbell', 0, '31.92352', '-87.98108'), ('Carlton', 5419, '31.34869', '-87.83569'), ('Center Point', 0, '31.78851', '-88.03003'), ('Chance', 308, '31.74890', '-87.53192'), ('Chilton', 1438, '31.78210', '-87.84418'), ('Choctaw Bluff', 5419, '31.38892', '-87.78888'), ('Choctaw Corner', 0, '31.93488', '-87.75470'), ('Clarksville', 0, '31.72913', '-87.89313'), ('Coffeeville', 360, '31.76929', '-88.06390'), ('Cunningham', 0, '31.90051', '-88.07611'), ('Dickinson', 308, '31.76349', '-87.71051'), ('Failetown', 0, '31.92792', '-88.01642'), ('Finley Crossing', 0, '31.96191', '-87.68579'), ('Fulton', 308, '31.79388', '-87.70172'), ('Gainestown', 5419, '31.44550', '-87.69330'), ('Glover', 0, '31.93707', '-87.84003'), ('Gosport', 0, '31.58270', '-87.58362'), ('Greenwood', 0, '31.77972', '-87.76001'), ('Grove Hill', 1438, '31.67273', '-87.72919'), ('Jackson', 5419, '31.61969', '-87.92291'), ('Manila', 5419, '31.50848', '-87.72308'), ('Mays Crossroads', 0, '31.60388', '-87.98749'), ('McEntyre', 0, '31.80847', '-87.96558'), ('McVay', 0, '31.60687', '-87.89563'), ('McWer', 0, '31.86133', '-87.69562'), ('Midway', 0, '31.88568', '-87.78888'), ('Morvin', 234, '31.98572', '-87.99329'), ('Nettleboro', 308, '31.79907', '-87.62219'), ('Opine', 4649, '31.90491', '-87.93390'), ('Peacock', 308, '31.75751', '-87.77472'), ('Pleasant Hill', 0, '31.84747', '-87.63562'), ('Rock Springs', 0, '31.95007', '-88.08112'), ('Rockville', 0, '31.40649', '-87.84229'), ('Roundhill', 4649, '31.89270', '-87.71161'), ('Rural', 4649, '31.86432', '-87.73859'), ('Salitpa', 0, '31.62970', '-88.02002'), ('Scyrene', 308, '31.75568', '-87.64783'), ('Smyer', 0, '31.89349', '-88.02881'), ('Springfield', 0, '31.83368', '-87.76190'), ('Stave Creek', 0, '31.55573', '-87.93890'), ('Suggsville', 1438, '31.58972', '-87.69312'), ('Tallahatta Springs', 4649, '31.90973', '-87.87671'), ('Tattlersville', 0, '31.71271', '-88.05640'), ('Thomasville', 4649, '31.91248', '-87.78778'), ('Toddtown', 0, '31.61890', '-87.87671'), ('Union', 0, '31.62891', '-87.78528'), ('Vashti', 0, '31.70331', '-87.63812'), ('Walker Springs', 5419, '31.39709', '-87.81891'), ('West Bend', 360, '31.82428', '-88.13220'), ('Whatley', 1438, '31.64648', '-87.71082'), ('Winn', 5419, '31.65192', '-87.91718'), ('Woods Bluff', 360, '31.93573', '-88.06171'), ('Zimco', 0, '31.70288', '-87.87811')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALZ054': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ackerville', 37, '32.02972', '-87.06641'), ('Alberta', 230, '32.23212', '-87.40991'), ('Allenton', 37, '31.93689', '-87.05328'), ('Allenton Station', 0, '31.92987', '-87.02362'), ('Anne Manie', 966, '32.05292', '-87.57080'), ('Arlington', 0, '32.05713', '-87.58862'), ('Asahel', 0, '31.86792', '-87.42078'), ('Awin', 145, '31.83807', '-86.94891'), ('Bellview', 327, '31.84369', '-87.35608'), ('Bethel', 0, '32.14111', '-87.47498'), ('Boiling Springs', 0, '32.13428', '-87.46832'), ('Boykin', 2257, '32.06848', '-87.29462'), ('Caledonia', 37, '31.89050', '-87.08752'), ('Camden', 2257, '32.01190', '-87.29248'), ('Carleys', 0, '32.26709', '-87.49139'), ('Catherine', 383, '32.18628', '-87.46991'), ('Coal Bluff', 181, '31.94513', '-87.43829'), ('Coy', 181, '31.86267', '-87.35358'), ('Culpeper', 5687, '31.88708', '-87.57751'), ('Darlington', 37, '31.97772', '-87.13049'), ('Dry Forks', 0, '31.90149', '-87.36670'), ('Estelle', 2257, '31.96930', '-87.20251'), ('Fatama', 327, '31.89911', '-87.23541'), ('Furman', 145, '32.00690', '-86.96692'), ('Gastonburg', 383, '32.20728', '-87.43750'), ('Hamburg', 0, '31.97607', '-87.03552'), ('Hestle', 0, '31.92969', '-87.62811'), ('Kimbrough', 966, '32.03351', '-87.56531'), ('Lamison', 966, '32.12128', '-87.56671'), ('Lower Peach Tree', 181, '31.84070', '-87.54529'), ('Macmillan', 0, '31.97290', '-87.52252'), ('McBrydes', 37, '31.99249', '-87.02142'), ('McWilliams', 37, '31.83112', '-87.09381'), ('Midway', 0, '32.08429', '-87.40503'), ('Millers Ferry', 2257, '32.09967', '-87.36749'), ('Neenah', 0, '31.91467', '-87.17798'), ('Nellie', 0, '31.90149', '-87.38281'), ('Oak Hill', 37, '31.92151', '-87.08508'), ('Pebble Hill', 0, '31.93909', '-87.34332'), ('Pine Apple', 145, '31.93030', '-87.00922'), ('Pine Hill', 966, '31.97290', '-87.57501'), ('Prairie', 181, '32.15411', '-87.44000'), ('Prairie Bluff', 0, '32.13428', '-87.40363'), ('Rehoboth', 230, '32.19568', '-87.38141'), ('Rock Springs', 0, '31.97168', '-86.99078'), ('Rockwest', 2257, '31.99988', '-87.37170'), ('Rosebud', 0, '31.94128', '-87.13690'), ('Rutthven', 145, '31.85352', '-87.02972'), ('Schuster', 0, '31.86407', '-87.04688'), ('Shawnee', 0, '31.99390', '-87.20691'), ('Sheppard', 181, '31.91132', '-87.47998'), ('Snow Hill', 37, '32.00470', '-87.00720'), ('Sunny South', 966, '31.96490', '-87.64001'), ('Watsonville', 37, '31.86768', '-87.16498'), ('Yellow Bluff', 181, '31.96228', '-87.48053')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALZ055': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Al 47 And CR 29', 0, '31.76947', '-86.99799'), ('Axle', 0, '31.59570', '-87.32971'), ('Beatrice', 412, '31.72351', '-87.15442'), ('Buena Vista', 327, '31.79327', '-87.24860'), ('Burnt Corn', 280, '31.55353', '-87.16028'), ('Chestnut', 327, '31.80768', '-87.23218'), ('Chrysler', 5419, '31.30530', '-87.70111'), ('Claiborne', 1460, '31.54028', '-87.51550'), ('Drewry', 6862, '31.48633', '-87.25299'), ('Eliska', 5419, '31.35272', '-87.68298'), ('Excel', 582, '31.42651', '-87.34332'), ('Finchburg', 6862, '31.64270', '-87.51080'), ('Fountain', 6862, '31.59473', '-87.40887'), ('Franklin', 149, '31.71472', '-87.41138'), ('Frisco City', 1460, '31.41528', '-87.38940'), ('Goodway', 1460, '31.33691', '-87.42578'), ('Halls Crossroads', 0, '31.40253', '-87.33142'), ('Hixon', 0, '31.57288', '-87.42609'), ('Homewood', 1460, '31.36969', '-87.59943'), ('Hybart', 327, '31.82648', '-87.38190'), ('Jeddo', 7676, '31.33252', '-87.51422'), ('Kalem', 0, '31.70508', '-87.21582'), ('Keith', 327, '31.67749', '-87.36139'), ('Manistee', 1460, '31.44110', '-87.49438'), ('Megargel', 1460, '31.37811', '-87.43060'), ('Mexboro', 0, '31.49390', '-87.37439'), ('Mexia', 6862, '31.50708', '-87.38831'), ('Mexia Crossing', 0, '31.48853', '-87.37140'), ('Midway', 412, '31.71912', '-87.04901'), ('Mineola', 1460, '31.27972', '-87.63391'), ('Monroeton', 0, '31.53833', '-87.27802'), ('Monroeville', 6862, '31.51691', '-87.33643'), ('Mount Pleasant', 5419, '31.33350', '-87.69580'), ('Nadawah', 412, '31.81427', '-87.17218'), ('Natchez', 412, '31.72772', '-87.26050'), ('Old Salem', 0, '31.53967', '-87.40613'), ('Old Texas', 0, '31.76971', '-87.00031'), ('Ollie', 0, '31.47168', '-87.34222'), ('Packards Bend', 327, '31.77612', '-87.48938'), ('Palmers Crossroads', 0, '31.29993', '-87.54858'), ('Perdue Hill', 1460, '31.51410', '-87.49329'), ('Peterman', 6862, '31.58368', '-87.26300'), ('Pine Orchard', 0, '31.64069', '-87.13641'), ('Pineville', 0, '31.74268', '-87.17719'), ('Renson', 0, '31.55408', '-87.28387'), ('Riley', 0, '31.72632', '-87.12610'), ('River Ridge', 412, '31.71368', '-87.31299'), ('Scotland', 0, '31.66687', '-87.27301'), ('Scratch Ankle', 0, '31.66272', '-87.43750'), ('Tinela', 327, '31.80847', '-87.39722'), ('Tunnel Springs', 412, '31.64270', '-87.23999'), ('Turnbull', 412, '31.71490', '-87.13190'), ('Uriah', 1460, '31.33771', '-87.67078'), ('Valley Estates', 0, '31.54968', '-87.29828'), ('Vredenburgh', 327, '31.73169', '-87.39502'), ('Wainwright', 0, '31.64911', '-87.48688'), ('West Monroeville', 6862, '31.51569', '-87.35358')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALZ056': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Belleville', 280, '31.42987', '-87.10901'), ('Bermuda', 280, '31.48749', '-87.18829'), ('Bethel', 0, '31.70068', '-86.91412'), ('Bookers Mill', 0, '31.52692', '-87.03223'), ('Bowles', 0, '31.57349', '-86.97693'), ('Brantley Crossing', 0, '31.49652', '-87.11908'), ('Brooklyn', 556, '31.26270', '-86.77112'), ('Brownville', 3630, '31.46851', '-86.90051'), ('Castleberry', 590, '31.34808', '-87.05029'), ('Centerville', 0, '31.40009', '-86.87891'), ('China', 3630, '31.52350', '-87.01782'), ('Cohassett', 556, '31.39490', '-86.69330'), ('Commerce', 0, '31.68188', '-86.96722'), ('Cooks Crossroads', 0, '31.56830', '-86.97638'), ('Deans', 1737, '31.66028', '-86.93890'), ('Evergreen', 3630, '31.41351', '-86.92108'), ('Fairnelson', 3630, '31.56390', '-87.07660'), ('Fairview', 0, '31.41931', '-87.00531'), ('Flat Rock', 0, '31.48352', '-86.83331'), ('Fowler', 0, '31.58948', '-87.09723'), ('Georgiaville', 0, '31.23688', '-86.73053'), ('I65 And Al 41', 280, '31.27631', '-87.20520'), ('I65 And Al 83', 3630, '31.45770', '-86.96539'), ('I65 And Cr 29', 3630, '31.50610', '-86.92310'), ('I65 And Cr 6', 590, '31.32990', '-87.12610'), ('I65 And Us 84', 3630, '31.41913', '-87.00610'), ('Johnsonville', 590, '31.29468', '-86.87219'), ('Lenox', 280, '31.33649', '-87.18549'), ('London', 0, '31.29773', '-87.08783'), ('Loree', 3630, '31.48749', '-87.09003'), ('Lyeffion', 3630, '31.58289', '-87.02002'), ('Melrose', 0, '31.34912', '-86.73688'), ('Mixonville', 145, '31.70490', '-86.94861'), ('Mount Union', 0, '31.38647', '-86.77002'), ('Nichburg', 280, '31.47968', '-87.13660'), ('Nymph', 590, '31.33832', '-86.93970'), ('Old Sparta', 0, '31.36310', '-86.98718'), ('Old Town', 0, '31.42932', '-86.84521'), ('Owassa', 3630, '31.49329', '-86.93158'), ('Paul', 556, '31.32031', '-86.74390'), ('Rabb', 0, '31.43909', '-86.88049'), ('Ramah', 0, '31.61249', '-87.13751'), ('Range', 280, '31.31268', '-87.23541'), ('Repton', 280, '31.37488', '-87.23969'), ('Sand Cut', 0, '31.31830', '-87.12079'), ('Shreve', 644, '31.42712', '-86.73938'), ('Skinnerton', 0, '31.66992', '-87.06500'), ('Spring Hill', 0, '31.36328', '-86.78888'), ('Stokes', 0, '31.49652', '-87.09637'), ('Travis Bridge', 0, '31.45428', '-86.78888'), ('Wilcox', 3630, '31.50848', '-86.87640')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALZ057': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Avant', 1737, '31.62152', '-86.70142'), ('Beacon', 0, '31.71472', '-86.82300'), ('Bolling', 1737, '31.72552', '-86.70581'), ('Brushy Creek', 0, '31.66852', '-86.67041'), ('Butler Springs', 145, '31.80212', '-86.86609'), ('Chapman', 1737, '31.72388', '-86.71411'), ('Daisy', 0, '31.89911', '-86.48468'), ('East Chapman', 0, '31.66571', '-86.69659'), ('Forest Home', 145, '31.87347', '-86.77112'), ('Fort Dale', 0, '31.89148', '-86.65741'), ('Garland', 644, '31.55670', '-86.82330'), ('Georgiana', 1737, '31.61169', '-86.73071'), ('Glasgow', 0, '31.76331', '-86.52771'), ('Grace', 0, '31.61212', '-86.88049'), ('Greenville', 7228, '31.82629', '-86.60779'), ('Halso Mill', 0, '31.71332', '-86.52051'), ('Herbert', 7228, '31.83612', '-86.80530'), ('I65 And Al 10', 7228, '31.82312', '-86.66443'), ('I65 And Al 106', 1737, '31.65088', '-86.77533'), ('I65 And Al 185', 7228, '31.85071', '-86.64081'), ('I65 And Cr 7', 1737, '31.57690', '-86.84631'), ('Industry', 644, '31.60431', '-86.61261'), ('Liberty', 0, '31.82568', '-86.70142'), ('Manningham', 0, '31.88611', '-86.74640'), ('Mashville', 0, '31.80328', '-86.54108'), ('McKenzie', 644, '31.54291', '-86.72461'), ('Midway', 0, '31.81348', '-86.46362'), ('Monterey', 145, '31.90350', '-86.88190'), ('Mount Moriah', 0, '31.91772', '-86.90002'), ('Mount Olive', 0, '31.57849', '-86.84802'), ('Oaky Streak', 644, '31.57831', '-86.55359'), ('Odom Crossroads', 0, '31.53809', '-86.78601'), ('Pigeon Creek', 391, '31.65771', '-86.50720'), ('Providence', 0, '31.72211', '-86.82281'), ('Reddock Springs', 0, '31.82190', '-86.69159'), ('Rhodes', 0, '31.57831', '-86.69159'), ('Ridgeville', 0, '31.92529', '-86.84021'), ('Salter', 0, '31.54669', '-86.78192'), ('Sand Cut', 0, '31.76831', '-86.73688'), ('Sardis', 0, '31.67987', '-86.50659'), ('Saucer', 145, '31.82288', '-86.83551'), ('Searcy', 0, '31.91553', '-86.60529'), ('Shacklesville', 0, '31.77869', '-86.81549'), ('Shell', 0, '31.60132', '-86.65363'), ('Spring Hill', 0, '31.87268', '-86.57410'), ('Starlington', 1737, '31.67493', '-86.82532'), ('Wald', 7228, '31.75787', '-86.66553')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALZ058': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bradleyton', 63, '31.90192', '-86.24219'), ('Brantley', 920, '31.55389', '-86.29272'), ('Bullock', 920, '31.54071', '-86.17859'), ('Carmen', 0, '31.63251', '-86.18909'), ('Centenary', 0, '31.77869', '-86.36749'), ('Center Ridge', 0, '31.81610', '-86.41248'), ('Cherokee Village', 0, '31.72968', '-86.33691'), ('Clearview', 0, '32.04327', '-86.38800'), ('Danielsville', 0, '31.92072', '-86.40631'), ('Dozier', 391, '31.50311', '-86.36938'), ('Fullers Crossroads', 0, '31.81787', '-86.31110'), ('Garnersville', 0, '31.87628', '-86.27271'), ('Glenwood', 191, '31.66748', '-86.17291'), ('Helicon', 0, '31.91351', '-86.21191'), ('Highland Home', 63, '31.95349', '-86.31390'), ('Honoraville', 476, '31.85071', '-86.40613'), ('Ivy Creek', 0, '31.70709', '-86.36511'), ('Joquin', 0, '31.78668', '-86.16412'), ('Leon', 0, '31.55768', '-86.39270'), ('Live Oak', 63, '31.80847', '-86.24750'), ('Luverne', 2635, '31.71771', '-86.28131'), ('Magnolia Shores', 0, '31.93268', '-86.29413'), ('Merrill Mill', 0, '31.59332', '-86.40253'), ('Moodys Crossroads', 0, '31.73492', '-86.39471'), ('Mulberry', 0, '31.59491', '-86.43359'), ('New Hope', 0, '31.54053', '-86.34192'), ('Panola', 0, '31.97168', '-86.38892'), ('Patsburg', 63, '31.78668', '-86.22821'), ('Petrey', 63, '31.90430', '-86.30890'), ('Robinson Crossroads', 0, '31.73572', '-86.37549'), ('Rutledge', 476, '31.73468', '-86.30591'), ('Sardis', 0, '31.90308', '-86.31580'), ('Saville', 63, '31.87750', '-86.33112'), ('Searight', 0, '31.47113', '-86.39331'), ('Shirleys Crossroads', 0, '31.71490', '-86.16498'), ('Social Town', 0, '31.71191', '-86.18188'), ('Theba', 0, '31.55573', '-86.30359'), ('Vernledge', 0, '31.77130', '-86.29272'), ('Vidette', 0, '31.73291', '-86.19501'), ('Weed Crossroad', 0, '31.51892', '-86.22302')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALZ059': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Appleton', 5498, '31.22113', '-87.12140'), ('Atmore', 7676, '31.03851', '-87.47028'), ('Barnett Crossroads', 280, '31.22131', '-87.30438'), ('Booneville', 7676, '31.20111', '-87.60303'), ('Boykin', 590, '31.14612', '-86.87439'), ('Bradley', 543, '31.03351', '-86.72552'), ('Brewton', 5498, '31.12970', '-87.09192'), ('Canoe', 7676, '31.02631', '-87.41193'), ('Damascus', 0, '31.17310', '-86.85681'), ('Dixie', 248, '31.14471', '-86.71942'), ('Dixonville', 99, '31.00049', '-87.03601'), ('East Brewton', 2496, '31.09052', '-87.05560'), ('Ewing Farms', 0, '31.08270', '-87.58752'), ('Flomaton', 1588, '31.05670', '-87.27161'), ('Foshee', 1588, '31.11688', '-87.22638'), ('Freemanville', 7676, '31.07190', '-87.52081'), ('Hammac', 0, '31.12250', '-87.22302'), ('Huxford', 7676, '31.22028', '-87.46191'), ('I65 And Al 113', 1588, '31.20392', '-87.31091'), ('I65 And Al 21', 7676, '31.11072', '-87.47412'), ('I65 And Cr 1', 7676, '31.08392', '-87.53461'), ('Jack Springs', 0, '31.16132', '-87.55249'), ('Keego', 120, '31.06073', '-87.12750'), ('Kirkland', 5498, '31.18848', '-87.03052'), ('Little Rock', 7676, '31.11469', '-87.38892'), ('Malta', 7676, '31.02490', '-87.45471'), ('Marietta', 0, '31.14111', '-86.77722'), ('Martinville', 0, '31.09253', '-87.48053'), ('McCullough', 7676, '31.14288', '-87.50391'), ('Mount Gillis', 0, '31.08911', '-87.52222'), ('Nokomis', 7676, '31.01031', '-87.56470'), ('Osaka', 1588, '31.06390', '-87.22388'), ('Parker Springs', 99, '31.05487', '-86.80969'), ('Pea Ridge', 0, '31.11609', '-87.09772'), ('Pineview', 0, '31.13489', '-87.28943'), ('Pleasant Hill', 0, '31.06329', '-87.49109'), ('Poarch', 7676, '31.11749', '-87.52942'), ('Poarch Creek Reservation', 0, '31.09808', '-87.55688'), ('Pollard', 120, '31.02368', '-87.17358'), ('Raley Forest Hill', 0, '31.01129', '-87.51111'), ('Riverview', 99, '31.05811', '-87.05768'), ('Roberts', 2496, '31.08191', '-86.88892'), ('Robinsonville', 7676, '31.06128', '-87.43829'), ('Rock Creek', 0, '31.00891', '-86.79718'), ('Rock Hill', 2496, '31.11670', '-86.99908'), ('Sardine', 1588, '31.13129', '-87.36658'), ('Spring Hill', 0, '31.10809', '-87.03522'), ('Stanley Crossroads', 0, '31.13470', '-87.34021'), ('Us 29 And Cr 43', 590, '31.16492', '-86.80261'), ('Wahl', 1588, '31.00531', '-87.22137'), ('Wallace', 5498, '31.20972', '-87.21832'), ('Wawbeek', 1588, '31.02808', '-87.36078'), ('Welka', 0, '31.01349', '-87.20081')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALZ060': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Andalusia', 8794, '31.31891', '-86.48218'), ('Antioch', 0, '31.38568', '-86.38300'), ('Babbie', 627, '31.30212', '-86.32300'), ('Beck', 248, '31.25629', '-86.58472'), ('Beda', 0, '31.05109', '-86.58270'), ('Beulah', 0, '31.22913', '-86.23242'), ('Blairs', 0, '31.26410', '-86.22333'), ('Blue Springs', 0, '31.20911', '-86.31299'), ('Boston', 0, '31.46808', '-86.48181'), ('Boykin', 0, '31.51007', '-86.57330'), ('Brooks', 644, '31.48187', '-86.68500'), ('Carolina', 248, '31.23370', '-86.52271'), ('Cedar Grove', 0, '31.35193', '-86.32880'), ('Chapel Hill', 0, '31.02948', '-86.23108'), ('Clearview', 241, '31.45068', '-86.44769'), ('Coldwater', 0, '31.43488', '-86.42328'), ('County Line', 0, '31.28351', '-86.19489'), ('Dunns', 0, '31.43213', '-86.46973'), ('Duvall', 0, '31.27631', '-86.24188'), ('Eoda', 627, '31.37469', '-86.31909'), ('Estothel', 602, '31.24469', '-86.19830'), ('Fairfield', 0, '31.25189', '-86.64551'), ('Falco', 543, '31.15527', '-86.56628'), ('Five Points', 0, '31.44067', '-86.30328'), ('Florala', 1964, '31.02612', '-86.34021'), ('Friendship', 0, '31.40350', '-86.20660'), ('Gantt', 241, '31.40930', '-86.48419'), ('Green Bay', 208, '31.17810', '-86.28943'), ('Harmony', 0, '31.35748', '-86.37500'), ('Heath', 249, '31.35791', '-86.46722'), ('Horn Hill', 0, '31.23828', '-86.32111'), ('Howells', 1964, '31.05249', '-86.20911'), ('Huckaville', 0, '31.07971', '-86.41608'), ('Libertyville', 106, '31.24292', '-86.46002'), ('Loango', 556, '31.32971', '-86.64893'), ('Lockhart', 548, '31.01288', '-86.35052'), ('McRae', 0, '31.05890', '-86.26129'), ('Onycha', 208, '31.22467', '-86.27850'), ('Opine', 0, '31.32770', '-86.28711'), ('Opp', 6607, '31.28168', '-86.25751'), ('Rawls', 0, '31.45331', '-86.48108'), ('Red Level', 556, '31.40552', '-86.60828'), ('Red Oak', 106, '31.13989', '-86.46051'), ('Rhump', 0, '31.39410', '-86.58893'), ('River Falls', 616, '31.35248', '-86.54108'), ('Rome', 0, '31.14191', '-86.66882'), ('Rose Hill', 391, '31.44208', '-86.39990'), ('Sanford', 269, '31.30048', '-86.39661'), ('Shiloh', 0, '31.11548', '-86.48608'), ('Stanley', 0, '31.20111', '-86.44769'), ('Stedman', 1964, '31.07129', '-86.30359'), ('Straughn', 0, '31.38831', '-86.41803'), ('Valley Of Shiloh', 0, '31.41608', '-86.46661'), ('Wiggins', 0, '31.31610', '-86.32861'), ('Wing', 543, '31.02771', '-86.61041')], 'partOfState': 'south central', 'wfo': 'MOB'}, +'ALZ061': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Acropolis Heights', 0, '30.73352', '-88.17780'), ('Akka', 0, '30.77753', '-88.02301'), ('Allenville', 0, '30.70288', '-88.07892'), ('Alpine Hills', 0, '30.71191', '-88.18811'), ('Ashley Oaks', 0, '30.76312', '-88.13470'), ('Axis', 2002, '30.92249', '-88.02191'), ('Barry Village', 0, '30.99890', '-88.02692'), ('Bellwood', 0, '30.71552', '-88.15002'), ('Big Creek Lake Dam', 503, '30.71008', '-88.33002'), ('Boothetown', 0, '30.95129', '-88.33948'), ('Bucks', 844, '31.01050', '-88.02411'), ('Calvert', 844, '31.15448', '-88.01050'), ('Celeste', 5687, '30.89471', '-88.12329'), ('Charmingdale', 0, '30.75049', '-88.19891'), ('Chastang', 844, '31.03772', '-88.02332'), ('Chickasaw', 6364, '30.77148', '-88.07910'), ('Chunchula', 12288, '30.92731', '-88.20819'), ('Churchill Downs', 0, '30.76630', '-88.28198'), ('Citronelle', 3659, '31.06189', '-88.25751'), ('College Woods', 0, '30.79889', '-88.12140'), ('Cox Beach', 0, '30.85211', '-88.03998'), ('Crawford', 0, '30.76410', '-88.22778'), ('Creola', 2002, '30.89032', '-88.01001'), ('Crichton', 198915, '30.70630', '-88.10608'), ('Deerwood', 0, '30.71350', '-88.16058'), ('Earlville', 503, '30.98352', '-88.40698'), ('Eight Mile', 28633, '30.76349', '-88.12689'), ('Fairview', 0, '30.79327', '-88.30139'), ('Forest Highlands', 0, '30.72949', '-88.16669'), ('Forest Hill', 28633, '30.71490', '-88.15332'), ('Fort Stoddard', 844, '31.09991', '-87.97919'), ('Georgetown', 0, '30.88849', '-88.27032'), ('Glen Acres', 0, '30.71191', '-88.24719'), ('Gulfcrest', 3659, '30.99109', '-88.24188'), ('Hatters', 0, '30.90350', '-88.05078'), ('I65 And Al 158', 12288, '30.80231', '-88.10449'), ('I65 And I165', 6364, '30.75372', '-88.09448'), ('I65 And Moffett Rd', 198915, '30.70709', '-88.12238'), ('I65 And Us 43', 5687, '30.87708', '-88.04462'), ('I65 And Us 45', 28633, '30.74072', '-88.10760'), ('Indian Hills', 0, '30.79187', '-88.19720'), ('Indian Springs', 0, '30.78052', '-88.19171'), ('Kali-Oka Springs', 0, '30.85712', '-88.14673'), ('Kushla', 28633, '30.81549', '-88.15808'), ('Lambert', 0, '31.02808', '-88.19330'), ('Lambert Grove', 0, '31.04352', '-88.15723'), ('Le Moyne', 0, '30.95831', '-88.02771'), ('Little Pines', 0, '30.83850', '-88.07080'), ('Lott', 0, '30.81128', '-88.25140'), ('Lott And Coleman Dairy Rd', 503, '30.83710', '-88.27069'), ('Mackies', 0, '30.83289', '-88.06812'), ('Magazine', 0, '30.73450', '-88.05249'), ('Mauvilla', 0, '30.83691', '-88.18439'), ('Millertown', 0, '30.82111', '-88.25830'), ('Mobile', 198915, '30.70288', '-88.11389'), ('Moffet', 503, '30.85449', '-88.39752'), ('Mount Vernon', 844, '31.06689', '-88.04889'), ('Movico', 0, '31.06268', '-88.02661'), ('Neely', 0, '30.73212', '-88.10028'), ('Nenemoosha', 0, '30.80988', '-88.00470'), ('North Mobile', 0, '30.76172', '-88.09131'), ('Norwood', 0, '30.76910', '-88.09021'), ('Oak Grove', 12288, '30.85712', '-88.18188'), ('Orchard', 0, '30.71973', '-88.20721'), ('Park Forest', 0, '30.70752', '-88.17969'), ('Parkwood', 0, '30.75568', '-88.15973'), ('Pennsylvania', 0, '30.87329', '-88.04749'), ('Petaluma', 0, '30.71692', '-88.27448'), ('Pine Grove', 0, '30.71332', '-88.13110'), ('Pineola', 844, '31.05750', '-88.11169'), ('Pine Wood', 0, '30.81970', '-88.07642'), ('Plateau', 0, '30.73633', '-88.06390'), ('Ponderosa', 0, '30.72949', '-88.25830'), ('Prichard', 28633, '30.77368', '-88.12970'), ('Rosehaven', 0, '30.78088', '-88.14722'), ('Russell', 0, '31.05627', '-88.23199'), ('Salco', 2002, '30.96692', '-88.03473'), ('Saraland', 12288, '30.83112', '-88.09808'), ('Satsuma', 5687, '30.85492', '-88.06049'), ('Scoutshire Woods', 0, '31.04688', '-88.18170'), ('Semmes', 503, '30.79907', '-88.29138'), ('Sibert', 0, '30.74469', '-88.06000'), ('Sidney', 3659, '31.06787', '-88.23450'), ('Smithtown', 0, '30.86108', '-88.20862'), ('Snow And Tanner Williams', 503, '30.71088', '-88.27618'), ('Spanish Trace', 0, '30.82971', '-88.12079'), ('Spring Hill', 0, '30.69849', '-88.13892'), ('Spring Hill College', 198915, '30.69373', '-88.13647'), ('Stage Coach Woods', 0, '31.01831', '-88.08063'), ('Summerville', 0, '30.74548', '-88.07672'), ('Tacon', 0, '30.68811', '-88.10468'), ('Tanner Williams', 503, '30.68732', '-88.31689'), ('Toulminville', 0, '30.71887', '-88.09082'), ('Turnerville', 0, '30.97852', '-88.12921'), ('University Of South Alabama', 28633, '30.69647', '-88.18042'), ('Warley', 0, '30.82831', '-88.36560'), ('West Hill', 0, '30.69031', '-88.18079'), ('Wheelerville', 0, '30.69031', '-88.19171'), ('Whistler', 6364, '30.75671', '-88.10309'), ('Williams Heights', 0, '30.84192', '-88.07080'), ('Wilmer', 503, '30.82330', '-88.36139')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALZ062': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bay Minette', 7820, '30.77490', '-87.77533'), ('Blacksher', 0, '31.21088', '-87.83832'), ('Blakeley', 0, '30.74213', '-87.92419'), ('Bromley', 0, '30.73889', '-87.86749'), ('Carney', 7820, '30.92749', '-87.71918'), ('Carpenter', 7820, '30.85712', '-87.86609'), ('Crossroads', 7820, '30.83490', '-87.86108'), ("D'Olive", 0, '30.87048', '-87.79578'), ('Douglasville', 7820, '30.86609', '-87.78552'), ('Dyas', 7820, '30.96252', '-87.67609'), ('Eastwood', 0, '30.89069', '-87.75299'), ('Gateswood', 1348, '30.72113', '-87.58081'), ('Georgetown', 503, '31.29669', '-87.73541'), ('Holly Hills', 0, '30.78308', '-87.77972'), ('Hurricane', 2002, '30.84113', '-87.90192'), ('I65 And Al 225', 7820, '30.94910', '-87.85760'), ('I65 And Al 287', 7820, '30.96448', '-87.75983'), ('I65 And Al 59', 7820, '30.95367', '-87.82251'), ('I65 And Cr 47', 7676, '31.01929', '-87.65570'), ('Latham', 844, '31.08490', '-87.83423'), ('Little River', 7676, '31.25708', '-87.70862'), ('Lottie', 7676, '31.12909', '-87.62219'), ('Montgomery Hill', 0, '31.16412', '-87.78638'), ('Perdido', 7676, '31.00970', '-87.62390'), ('Phillipsville', 7820, '30.89630', '-87.63550'), ('Pinchona', 0, '30.92328', '-87.72418'), ('Pine Grove', 0, '30.83350', '-87.74109'), ('Pine Haven', 0, '30.73212', '-87.79303'), ('Rabun', 7820, '31.02692', '-87.72498'), ('Redtown', 7676, '31.13788', '-87.63251'), ('Serange', 0, '31.21808', '-87.63922'), ('Stapleton', 5423, '30.74487', '-87.78448'), ('Steelwood', 1348, '30.71588', '-87.78473'), ('Stockton', 7820, '31.00110', '-87.85773'), ('Tensaw', 844, '31.15692', '-87.79919'), ('Vangordon', 0, '30.79132', '-87.77081'), ('Vaughn', 844, '31.02991', '-87.86108'), ('Whitehouse Forks', 7820, '30.80811', '-87.81421')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALZ063': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Airport And Government', 0, '30.67792', '-88.08099'), ('Airport And University', 0, '30.67609', '-88.16998'), ('Alabama Port', 0, '30.36310', '-88.11469'), ('Alderbrook', 0, '30.64893', '-88.27771'), ('Bayleys Corner', 0, '30.46490', '-88.11438'), ('Bayou La Batre', 2313, '30.40033', '-88.20331'), ('Belle Chene', 0, '30.63831', '-88.14362'), ('Belle Fontaine', 6811, '30.49451', '-88.11151'), ('Belvedere', 0, '30.65271', '-88.11060'), ('Bridlewood', 0, '30.66492', '-88.11670'), ('Brookley Field Airport', 198915, '30.63348', '-88.07019'), ('Brookwood', 0, '30.66827', '-88.10779'), ('Burma Hills', 0, '30.64191', '-88.15271'), ('Canebrake', 0, '30.65448', '-88.19440'), ('Canterbury Heights', 0, '30.62488', '-88.16101'), ('Carriage Hills', 0, '30.63629', '-88.19580'), ('Clarke Gardens', 0, '30.58228', '-88.10138'), ('Cloverdale', 0, '30.50171', '-88.38892'), ('Coden', 0, '30.38312', '-88.23828'), ('Cottage Hill', 0, '30.65033', '-88.14612'), ('Cox', 0, '30.64270', '-88.08331'), ('Creekwood', 0, '30.65308', '-88.21942'), ('Crestview', 0, '30.62109', '-88.15002'), ('Dawes', 15685, '30.60773', '-88.25531'), ('Dawes Point', 0, '30.63629', '-88.25360'), ('Dees', 3918, '30.56409', '-88.34332'), ('Delchamps', 2313, '30.40088', '-88.14893'), ('Dixon Corner', 2313, '30.45209', '-88.24188'), ('Edgefield', 0, '30.64252', '-88.18890'), ('El Monte', 0, '30.66089', '-88.16388'), ('Farnell', 0, '30.64349', '-88.10321'), ('Faustinas', 0, '30.43390', '-88.10559'), ('Fernland', 0, '30.48328', '-88.29309'), ('Forest Park', 0, '30.62891', '-88.08893'), ('Fowl River', 0, '30.46252', '-88.16888'), ('Grand Bay', 3918, '30.47168', '-88.34491'), ('Gulf Dale', 0, '30.60852', '-88.07922'), ('Heron Bay', 0, '30.35468', '-88.13031'), ('Hollingers Island', 6811, '30.54852', '-88.11041'), ('I10 And I65', 198915, '30.62848', '-88.11829'), ('I10 And Mcdonald Rd', 6811, '30.53729', '-88.23969'), ('I65 And Airport Blvd', 198915, '30.67633', '-88.12732'), ('Irvington', 6811, '30.50690', '-88.23389'), ('Kirewakra', 0, '30.43347', '-88.17639'), ('Ladd Stadium', 198915, '30.67352', '-88.07611'), ('Lansdowne', 0, '30.61407', '-88.16388'), ('Laurendine', 6811, '30.49811', '-88.16998'), ('Lloyds', 0, '30.61768', '-88.12811'), ('Mann', 0, '30.59332', '-88.14392'), ('Meadow Lake', 0, '30.59052', '-88.23328'), ('Mertz', 0, '30.66272', '-88.08832'), ('Mobile Regional Airport', 15685, '30.68127', '-88.24432'), ('Mon Louis', 6811, '30.44049', '-88.10571'), ('Navco', 0, '30.62970', '-88.10529'), ('Nelson', 0, '30.38629', '-88.21667'), ('Neshota', 0, '30.63928', '-88.08911'), ('Pinecrest', 0, '30.47113', '-88.35699'), ('Pine Run', 0, '30.67249', '-88.21112'), ('Pinto Island', 198915, '30.67548', '-88.02679'), ('Regency', 0, '30.66272', '-88.17389'), ('Robinwood', 0, '30.59192', '-88.20502'), ('Saint Elmo', 6811, '30.50348', '-88.25421'), ('San Souci Beach', 0, '30.38892', '-88.25830'), ('Schillinger And Three Notch', 15685, '30.58893', '-88.22522'), ('Seven Hills', 15685, '30.65411', '-88.30310'), ('Sherwood', 0, '30.61969', '-88.08331'), ('Smithfield', 0, '30.66193', '-88.21161'), ('Smithport', 0, '30.45947', '-88.11499'), ('South Orchard', 6811, '30.46490', '-88.15051'), ('Southridge', 0, '30.62708', '-88.18890'), ('Spring Valley', 0, '30.63129', '-88.13812'), ('Suburban Heights', 0, '30.59692', '-88.17499'), ('Sugar Creek', 0, '30.66272', '-88.19672'), ('Sunny Cove', 0, '30.48413', '-88.10071'), ('Sunset Ranch', 0, '30.63208', '-88.14081'), ('Theodore', 6811, '30.55548', '-88.17169'), ('Tillmans Corner', 15685, '30.58447', '-88.20221'), ('Timbers', 0, '30.67047', '-88.18750'), ('Todd Acres', 0, '30.57928', '-88.13470'), ('Union Church', 0, '30.56549', '-88.34381'), ('West End Of Dauphin Island', 1371, '30.22992', '-88.29999'), ('Wildwood Heights', 0, '30.65491', '-88.16571'), ('Windcrest', 0, '30.62250', '-88.21442')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALZ064': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Barnwell', 0, '30.42493', '-87.87939'), ('Battles Wharf', 1876, '30.49451', '-87.92780'), ('Bayside', 0, '30.40851', '-87.82361'), ('Belforest', 0, '30.60388', '-87.85248'), ('Bon Secour', 5044, '30.31348', '-87.73370'), ('Bridgehead', 5423, '30.66809', '-87.91101'), ('Caswell', 0, '30.29388', '-87.53943'), ('Cedar Grove', 0, '30.24469', '-87.83911'), ('Clay City', 12480, '30.48590', '-87.80670'), ('Daphne', 16581, '30.63489', '-87.88440'), ('Elberta', 552, '30.42029', '-87.55908'), ('Ellisville', 0, '30.62811', '-87.79303'), ('Elsanor', 3782, '30.54529', '-87.58362'), ('Fairhope', 12480, '30.50208', '-87.88422'), ('Foley', 7590, '30.36829', '-87.70032'), ('Fort Mcdermott', 0, '30.67090', '-87.91718'), ('Fort Morgan', 1371, '30.22852', '-88.02301'), ('Gasque', 5044, '30.25330', '-87.81970'), ('Gulf Highlands', 0, '30.23132', '-87.87970'), ('Gulf Shores', 0, '30.27032', '-87.69861'), ('Houstonville', 1876, '30.50189', '-87.90033'), ('Jackson Oak', 16581, '30.62268', '-87.91193'), ('Josephine', 0, '30.32672', '-87.53113'), ('Lillian', 19386, '30.41968', '-87.42981'), ('Loxley', 1348, '30.62567', '-87.75629'), ('Magnolia Beach', 0, '30.51569', '-87.91748'), ('Magnolia Springs', 7590, '30.40033', '-87.77490'), ('Malbis', 5423, '30.65588', '-87.85193'), ('Marlow', 616, '30.46112', '-87.79919'), ('Miflin', 552, '30.37048', '-87.61078'), ('Montrose', 12480, '30.56567', '-87.90161'), ('Oak', 5044, '30.31812', '-87.70642'), ('Orange Beach', 0, '30.29327', '-87.58362'), ('Oyster Bay', 0, '30.28552', '-87.74298'), ('Park City', 16581, '30.64331', '-87.91211'), ('Perdido Beach', 0, '30.34229', '-87.50311'), ('Point Clear', 1876, '30.49030', '-87.90948'), ('River Park', 0, '30.45068', '-87.81189'), ('Robertsdale', 3782, '30.56970', '-87.71918'), ('Romar Beach', 0, '30.26068', '-87.62219'), ('Rosinton', 1348, '30.61853', '-87.69360'), ('Seacliff', 0, '30.54529', '-87.90271'), ('Seminole', 552, '30.51532', '-87.47388'), ('Silverhill', 616, '30.54572', '-87.74951'), ('Spanish Fort', 5423, '30.67651', '-87.91779'), ('Summerdale', 655, '30.50250', '-87.70142'), ('Swift', 0, '30.37628', '-87.62640'), ('Turkey Branch', 1876, '30.42188', '-87.83643'), ('Volanta', 0, '30.53387', '-87.90161'), ('Yupon', 0, '30.40887', '-87.81689')], 'partOfState': 'southwest', 'wfo': 'MOB'}, +'ALZ065': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Alberton', 602, '31.27720', '-86.12590'), ('Arcus', 0, '31.51353', '-85.97736'), ('Asbury', 0, '31.25323', '-85.97939'), ('Basin', 0, '31.34175', '-86.13103'), ('Battens Crossroads', 21178, '31.25950', '-85.88990'), ('Bluff Spring', 0, '31.57399', '-86.06899'), ('Brooklyn', 0, '31.31303', '-86.17066'), ('Camp Alaflo Bsa', 0, '31.41213', '-85.85804'), ('Camp Humming Hills', 0, '31.46824', '-85.99867'), ('Carl Folsom A/P', 4185, '31.40940', '-86.08890'), ('Central City', 251, '31.24180', '-85.88510'), ('Chestnut Grove', 0, '31.59694', '-85.91426'), ('Clintonville', 1250, '31.40580', '-85.89470'), ('Clowers Crossroads', 0, '31.60752', '-85.88249'), ('Cool Springs', 0, '31.22971', '-85.82207'), ('Coppinville', 0, '31.30436', '-85.81385'), ('Curtis', 4185, '31.39680', '-86.15730'), ('Damascus', 1250, '31.31910', '-86.00460'), ('Danleys Crossroads', 4185, '31.41930', '-86.16690'), ('Eanon', 0, '31.51852', '-85.86304'), ('Elba', 4185, '31.41633', '-86.07831'), ('Enterprise', 21178, '31.31340', '-85.85410'), ('Enterprise Municipal A/P', 21178, '31.29860', '-85.89980'), ('Fairview', 602, '31.23752', '-86.04550'), ('Frisco', 0, '31.59525', '-85.86586'), ('Goodman', 1250, '31.27870', '-85.99460'), ('Holley Store', 0, '31.22215', '-86.09947'), ('Ino', 602, '31.27070', '-86.09470'), ('Jack', 4185, '31.57500', '-85.99920'), ('Java', 0, '31.55811', '-85.84391'), ('Keyton', 21178, '31.28140', '-85.82580'), ('Kinston', 602, '31.21620', '-86.16890'), ('Lee', 0, '31.48742', '-86.07485'), ('Lowry Mill', 0, '31.53803', '-85.98242'), ('Lucile', 0, '31.24296', '-85.91822'), ('Marvin Chapel', 0, '31.20743', '-85.98983'), ('Mixons Crossroads', 1250, '31.48400', '-85.91951'), ('Mount Pleasant', 0, '31.23051', '-85.92043'), ('New Brockton', 1250, '31.38003', '-85.92270'), ('Newby', 191, '31.55560', '-86.13130'), ('New Haven', 0, '31.35575', '-86.07597'), ('New Hope', 772, '31.55290', '-85.86790'), ('Perry Store', 602, '31.27940', '-86.15730'), ('Pine Level', 0, '31.47570', '-86.18674'), ('Rhoades', 0, '31.26296', '-86.16235'), ('Richburg', 0, '31.39685', '-85.96118'), ('Roeton', 772, '31.59730', '-85.83480'), ('Shell Army Field', 0, '31.36279', '-85.84957'), ('Tabernacle', 1250, '31.45320', '-85.86920'), ('Turner Crossroads', 0, '31.31280', '-85.97393'), ('Victoria', 1250, '31.54227', '-85.91882'), ('Wilkinstown', 0, '31.60862', '-85.99787'), ('Wise Mill', 0, '31.49568', '-86.02717'), ('Woodland Grove Church', 0, '31.45439', '-85.96590'), ('Zoar', 0, '31.54762', '-86.10789')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALZ066': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Arguta', 772, '31.56870', '-85.59540'), ('Ariton', 772, '31.60044', '-85.71262'), ('Asbury', 15119, '31.51110', '-85.54530'), ('Bagwells Crossroads', 0, '31.37869', '-85.56517'), ('Barefield Crossroads', 0, '31.55163', '-85.45299'), ('Barnes', 772, '31.54200', '-85.67440'), ('Beamon', 15119, '31.51850', '-85.58620'), ('Bells Crossroads', 121, '31.52150', '-85.45080'), ('Bertha', 121, '31.54110', '-85.42880'), ('Blackwell Field A/P', 15119, '31.42980', '-85.61940'), ('Browns Crossroads', 15119, '31.41625', '-85.52691'), ('Cairns Aaf', 4653, '31.27718', '-85.70982'), ('Clayhatchee', 501, '31.26422', '-85.71081'), ('Clopton', 121, '31.60720', '-85.43000'), ('Currytown', 0, '31.27806', '-85.52809'), ('Dale County Lake', 0, '31.48008', '-85.63201'), ('Daleville', 4653, '31.28809', '-85.72800'), ('Dean Church Road', 0, '31.40293', '-85.65654'), ('Dill', 15119, '31.51020', '-85.65320'), ('Dillard', 0, '31.51325', '-85.70557'), ('Dykes Crossroads', 121, '31.59940', '-85.56120'), ('Echo', 553, '31.47450', '-85.46360'), ('Ewell', 15119, '31.42080', '-85.57470'), ('Five Points', 0, '31.30170', '-85.62537'), ('Fort Rucker', 6052, '31.34897', '-85.70485'), ('Gerald', 1544, '31.31831', '-85.75861'), ('Goldberg Field', 0, '31.41392', '-85.46005'), ('Greater Salem Church', 0, '31.52964', '-85.76546'), ('Grimes', 459, '31.30340', '-85.44830'), ('Hanchey Field', 0, '31.34566', '-85.65467'), ('Hooper Stage Field', 0, '31.40666', '-85.69037'), ('Hunt Field', 0, '31.38375', '-85.61924'), ('Hwy 231 Pea River Bridge', 0, '31.59480', '-85.78341'), ('Kelly', 4653, '31.31920', '-85.65410'), ('Klondyke Hill', 0, '31.38268', '-85.60246'), ('Knox Field', 0, '31.32035', '-85.67412'), ('Level Plains', 1544, '31.29900', '-85.77700'), ('Lowe Army Heliport', 0, '31.35578', '-85.75164'), ('Mabson', 15119, '31.46760', '-85.56160'), ('Marley Hill', 15119, '31.49438', '-85.69153'), ('Midland City', 1703, '31.31630', '-85.49340'), ('Napier Field', 404, '31.31510', '-85.45530'), ('Newton', 1708, '31.33350', '-85.60380'), ('Ozark', 15119, '31.45344', '-85.64985'), ('Phillips Crossroads', 2206, '31.61650', '-85.60690'), ('Pinckard', 667, '31.31020', '-85.54780'), ('Pleasant Hill', 15119, '31.42770', '-85.67460'), ('Roberts Crossroads', 121, '31.60040', '-85.52900'), ('Rocky Head', 772, '31.56750', '-85.76830'), ('Skipperville', 121, '31.55710', '-85.54630'), ('Snells Crossroads', 0, '31.52580', '-85.43612'), ('Snow Hill', 1703, '31.45810', '-85.48070'), ('Sylvan Grove', 404, '31.35250', '-85.46570'), ('Ward Bridge', 0, '31.50893', '-85.49937'), ('Waterford', 1708, '31.35078', '-85.61182')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALZ067': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Abbeville', 2987, '31.56750', '-85.25050'), ('Abbeville Municipal A/P', 2987, '31.59920', '-85.23890'), ('Balkum', 0, '31.41785', '-85.22759'), ('Blackwood', 3523, '31.38760', '-85.40250'), ('Capps', 553, '31.49570', '-85.31210'), ('Coates', 0, '31.72639', '-85.15007'), ('Dancey', 0, '31.46763', '-85.28462'), ('Double Bridges', 0, '31.70273', '-85.15725'), ('Edwin', 121, '31.66480', '-85.37520'), ('Graball', 0, '31.58818', '-85.27694'), ('Grandberry Crossroads', 0, '31.35425', '-85.22883'), ('Haleburg', 108, '31.40956', '-85.14088'), ('Hardwickburg', 0, '31.49855', '-85.15108'), ('Hayes', 0, '31.50274', '-85.07295'), ('Headland', 3523, '31.35190', '-85.34330'), ('Headland Municipal A/P', 3523, '31.36460', '-85.30980'), ('Kirkland Crossroads', 0, '31.40284', '-85.41461'), ('Lawrenceville', 2987, '31.65660', '-85.26940'), ('Miller', 0, '31.44054', '-85.15405'), ('Murphy Station', 0, '31.54479', '-85.29198'), ('Newville', 553, '31.42170', '-85.33650'), ('Otho', 0, '31.68951', '-85.12983'), ('Scottsboro Crossroads', 0, '31.69930', '-85.21193'), ('Screamer', 2987, '31.66020', '-85.20690'), ('Shorterville', 1248, '31.56990', '-85.10090'), ('Thomas Mill Creek', 0, '31.70420', '-85.15219'), ('Tumbleton', 553, '31.40590', '-85.25620'), ('Walter F. George Lock And Dam', 1248, '31.62248', '-85.06711'), ('Willis Crossroads', 0, '31.55725', '-85.17964')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALZ068': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Bailey Crossroad', 0, '31.19114', '-85.60002'), ('Bald Hill', 0, '31.16355', '-85.63610'), ('Bellwood', 501, '31.17160', '-85.79320'), ('Black', 202, '31.00940', '-85.74320'), ('Chancellor', 251, '31.18010', '-85.87720'), ('Coffee Springs', 251, '31.16660', '-85.90990'), ('Dundee', 0, '31.12040', '-85.67193'), ('Earlytown', 0, '31.12805', '-86.12982'), ('Eunola', 182, '31.04162', '-85.84852'), ('Fadette', 2675, '31.04423', '-85.53689'), ('Ganer', 2071, '31.08180', '-86.10720'), ('Geneva', 4388, '31.03660', '-85.87680'), ('Geneva Municipal A/P', 4388, '31.05139', '-85.86262'), ('Hacoda', 2071, '31.07360', '-86.16680'), ('Hartford', 2369, '31.10624', '-85.69120'), ('Hendrix Crossroad', 0, '31.12371', '-85.71343'), ('High Bluff', 0, '31.15601', '-85.73276'), ('Highfalls', 0, '31.09848', '-85.79972'), ('Kellys Crossroads', 0, '31.06995', '-85.75210'), ('Light', 0, '31.14101', '-85.49428'), ('Logan Field Municipal A/P', 2071, '31.10050', '-86.06300'), ('Lowery', 0, '31.16731', '-86.14321'), ('Lytle', 0, '31.07609', '-85.95255'), ('Malvern', 1215, '31.13936', '-85.51940'), ('Marl', 0, '31.09045', '-85.97997'), ('Oak Grove', 202, '31.08580', '-85.77580'), ('Pera', 0, '31.13541', '-86.09212'), ('Piney Grove', 0, '31.16842', '-86.05018'), ('Samson', 2071, '31.11220', '-86.04660'), ('Sellersville', 2071, '31.12860', '-86.00370'), ('Slocomb', 2052, '31.11030', '-85.59430'), ('Somerset', 0, '31.02103', '-85.89292'), ('Spears', 0, '31.14485', '-85.98562'), ('Thurston', 202, '31.01340', '-85.78190'), ('Vaughanville', 0, '31.00580', '-85.91468'), ('Weeks', 0, '31.15080', '-86.11666')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ALZ069': {'fullStateName': 'Alabama', 'state': 'AL', 'cities': [('Ardilla', 0, '31.17560', '-85.36055'), ('Ashford', 1853, '31.18291', '-85.23653'), ('Avon', 466, '31.18764', '-85.27572'), ('Barber', 0, '31.23410', '-85.23574'), ('Chattahoochee Sp', 137, '31.00550', '-85.03330'), ('Columbia', 804, '31.29230', '-85.11130'), ('Cottonwood', 1170, '31.05443', '-85.30212'), ('Cowarts', 1546, '31.19880', '-85.30510'), ('Crosby', 408, '31.03830', '-85.08600'), ('Dothan', 57737, '31.22280', '-85.39330'), ('Enon', 0, '31.21550', '-85.27702'), ('Farley Nuclear Plant', 804, '31.22060', '-85.11040'), ('Garretts Crossroads', 0, '31.04618', '-85.43877'), ('Gordon', 408, '31.14560', '-85.09440'), ('Grangeburg', 765, '31.01100', '-85.22420'), ('Green Acres', 0, '31.22024', '-85.47582'), ('Harmon', 408, '31.09026', '-85.15444'), ('Hodgesville', 303, '31.08160', '-85.37310'), ('Hollis Dairy Road', 0, '31.23564', '-85.55904'), ('Jones Crossroads', 0, '31.21070', '-85.48492'), ('Kelly Springs', 0, '31.27580', '-85.45530'), ('Keytons', 0, '31.10724', '-85.37077'), ('Kinsey', 1796, '31.29750', '-85.34450'), ('Lovetown', 1170, '31.11510', '-85.27510'), ('Lucy', 0, '31.01984', '-85.04154'), ('Madrid', 303, '31.03506', '-85.39691'), ('Memphis', 33, '31.13212', '-85.37567'), ('Merritts Crossroads', 0, '31.08712', '-85.48434'), ('Olympia Spa Resort', 0, '31.12065', '-85.40593'), ('Pansey', 1853, '31.15290', '-85.17630'), ('Pearce', 0, '31.25860', '-85.22598'), ('Peterman', 0, '31.20052', '-85.47994'), ('Pleasant Plains', 1298, '31.30441', '-85.22941'), ('Power Dam Road', 0, '31.26015', '-85.64615'), ('Rehobeth', 993, '31.13470', '-85.43617'), ('Sealy Springs', 0, '31.03646', '-85.30902'), ('Sigma', 804, '31.28120', '-85.19630'), ('Smyrna', 0, '31.23497', '-85.32588'), ('Southern Junction', 303, '31.02800', '-85.47020'), ('Taylor', 1898, '31.16450', '-85.46760'), ('Webb', 1298, '31.25930', '-85.27350'), ('Wicksburg', 501, '31.20900', '-85.62470'), ('Wilson Mill', 1546, '31.15910', '-85.34390'), ('W. Main/Brannon St', 459, '31.23890', '-85.48100')], 'partOfState': 'southeast', 'wfo': 'TAE'}, +'ARZ001': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Avoca', 423, '36.40190', '-94.07060'), ('Beaver Lake', 0, '36.36670', '-93.88330'), ('Bella Vista', 16582, '36.42940', '-94.23140'), ('Bentonville', 19730, '36.37280', '-94.20860'), ('Bland', 0, '36.33330', '-93.92360'), ('Cave Springs', 1103, '36.26330', '-94.23170'), ('Centerton', 2146, '36.35970', '-94.28500'), ('Cherokee City', 0, '36.29830', '-94.57750'), ('Decatur', 1314, '36.33580', '-94.46060'), ('Fairmount', 0, '36.22670', '-94.44580'), ('Gallitin', 0, '36.20000', '-94.43330'), ('Garfield', 490, '36.44830', '-93.97390'), ('Gateway', 116, '36.49030', '-93.93170'), ('Gentry', 2165, '36.26750', '-94.48440'), ('Gravette', 1810, '36.42190', '-94.45330'), ('Healing Springs', 0, '36.25470', '-94.27810'), ('Highfill', 379, '36.26140', '-94.35750'), ('Hill Top', 490, '36.44690', '-93.99940'), ('Hiwasse', 0, '36.43170', '-94.33360'), ('Lake Francis', 0, '36.13330', '-94.53330'), ('Larue', 0, '36.34170', '-93.94580'), ('Lookout', 0, '36.28330', '-93.90000'), ('Lowell', 5013, '36.25530', '-94.13060'), ('Maysville', 0, '36.40360', '-94.60170'), ('Miller', 2146, '36.41640', '-94.26420'), ('Monte Ne', 0, '36.28720', '-94.06890'), ('Pea Ridge', 2346, '36.45390', '-94.11500'), ('Rocky Comfort', 0, '36.23920', '-94.30810'), ('Rogers', 38829, '36.33190', '-94.11830'), ('Siloam Springs', 10843, '36.18810', '-94.54030'), ('Springtown', 114, '36.26080', '-94.42310'), ('Sulphur Springs', 671, '36.48330', '-94.45830'), ('Vaughn', 0, '36.31530', '-94.30390'), ('Walnut Hill', 490, '36.40830', '-93.99110'), ('War Eagle', 0, '36.26780', '-93.94080')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARZ002': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Beaver', 95, '36.47360', '-93.76720'), ('Berryville', 4433, '36.36470', '-93.56780'), ('Blue Eye', 36, '36.49600', '-93.39690'), ('Busch', 0, '36.46420', '-93.83060'), ('Cabanal', 0, '36.27830', '-93.53190'), ('Carrollton', 0, '36.26250', '-93.32170'), ('Coin', 0, '36.33030', '-93.34780'), ('Connor', 0, '36.25000', '-93.43330'), ('Delmar', 0, '36.16060', '-93.34080'), ('Denver', 0, '36.39250', '-93.31470'), ('Dryfork', 0, '36.15330', '-93.48890'), ('Eureka Springs', 2278, '36.40110', '-93.73780'), ('Grandview', 0, '36.43390', '-93.62110'), ('Green Forest', 2717, '36.33530', '-93.43580'), ('Metalton', 0, '36.22310', '-93.52970'), ('Oak Grove', 376, '36.46120', '-93.44690'), ('Oak Hill', 0, '36.47720', '-93.69830'), ('Osage', 0, '36.18250', '-93.40440'), ('Pleasant Ridge', 0, '36.48170', '-93.64390'), ('Rudd', 0, '36.21360', '-93.48580'), ('Rule', 0, '36.27780', '-93.45970'), ('Urbanette', 0, '36.41970', '-93.53330')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARZ003': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alpena', 371, '36.29300', '-93.29330'), ('Bellefonte', 400, '36.20040', '-93.04640'), ('Bergman', 407, '36.31290', '-93.01110'), ('Diamond City', 730, '36.45580', '-92.91510'), ('Everton', 170, '36.15540', '-92.90840'), ('Harrison', 12152, '36.24190', '-93.11950'), ('Lead Hill', 287, '36.41470', '-92.90670'), ('Omaha', 165, '36.46320', '-93.19190'), ('South Lead Hill', 88, '36.39500', '-92.90540'), ('Valley Springs', 167, '36.15290', '-92.99100'), ('Zinc', 76, '36.28530', '-92.91530')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ004': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bull Shoals', 2000, '36.37600', '-92.58840'), ('Flippin', 1357, '36.27700', '-92.59210'), ('Pyatt', 253, '36.25130', '-92.84440'), ('Summit', 586, '36.25010', '-92.68740'), ('Yellville', 1312, '36.22870', '-92.68590')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ005': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Big Flat', 104, '36.00580', '-92.40500'), ('Cotter', 921, '36.28250', '-92.52020'), ('Gassville', 1706, '36.28260', '-92.49470'), ('Lakeview', 531, '36.37520', '-92.53920'), ('Mountain Home', 11012, '36.33590', '-92.37920'), ('Norfork', 484, '36.20830', '-92.28200'), ('Salesville', 437, '36.24490', '-92.27000')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ006': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Cherokee Village', 4416, '36.30160', '-91.56950'), ('Mammoth Spring', 1147, '36.49410', '-91.54470'), ('Viola', 381, '36.39620', '-91.98490')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ007': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Ash Flat', 977, '36.22580', '-91.60650'), ('Cave City', 1946, '35.94670', '-91.54780'), ('Evening Shade', 465, '36.07040', '-91.62130'), ('Hardy', 578, '36.32150', '-91.48040'), ('Sidney', 275, '36.00430', '-91.65900'), ('Williford', 63, '36.25140', '-91.36070')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ008': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Attica', 6518, '36.35000', '-91.00000'), ('Biggers', 355, '36.33200', '-90.80590'), ('Dalton', 137, '36.41670', '-91.15000'), ('Maynard', 381, '36.42180', '-90.90190'), ("O'kean", 201, '36.16780', '-90.81720'), ('Pocahontas', 6518, '36.26350', '-90.96860'), ('Ravenden Springs', 137, '36.31460', '-91.22400'), ('Reyno', 484, '36.36080', '-90.75790')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ009': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Corning', 3679, '36.41080', '-90.58590'), ('Datto', 97, '36.39320', '-90.72810'), ('Greenway', 244, '36.34110', '-90.22220'), ('Hickoria', 195, '36.38330', '-90.45000'), ('Knobel', 358, '36.31930', '-90.60170'), ('McDougal', 195, '36.43660', '-90.39020'), ('Nimmons', 100, '36.30700', '-90.09450'), ('Peach Orchard', 195, '36.28090', '-90.66190'), ('Piggott', 3894, '36.38390', '-90.20080'), ('Pollard', 240, '36.43070', '-90.26620'), ('Rector', 2017, '36.26420', '-90.29330'), ('Saint Francis', 250, '36.45350', '-90.14320'), ('Success', 180, '36.45450', '-90.72290')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ010': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arnett', 0, '35.89500', '-94.03940'), ('Blackburn', 0, '35.81640', '-94.21940'), ('Black Oak', 286, '35.98330', '-94.07940'), ('Brentwood', 0, '35.86000', '-94.10690'), ('Canehill', 0, '35.90860', '-94.39640'), ('Cincinnati', 0, '36.03720', '-94.51080'), ('Clyde', 0, '35.89140', '-94.40640'), ('Durham', 0, '35.94940', '-93.98030'), ('Elkins', 1251, '36.00140', '-94.00810'), ('Elm Springs', 1044, '36.20610', '-94.23420'), ('Farmington', 3605, '36.04190', '-94.24690'), ('Fayetteville', 58047, '36.06250', '-94.15720'), ('Goshen', 752, '36.10110', '-93.99110'), ('Greenland', 907, '35.99420', '-94.17500'), ('Harmon', 0, '36.15360', '-94.27690'), ('Hicks', 0, '35.93890', '-94.04810'), ('Hogeye', 0, '35.92030', '-94.26750'), ('Johnson', 2319, '36.13280', '-94.16530'), ('Lincoln', 1752, '35.94940', '-94.42330'), ('Mayfield', 0, '36.13360', '-93.94390'), ('Morrow', 0, '35.85830', '-94.43720'), ('Oak Grove', 1044, '36.18970', '-94.18690'), ('Odell', 0, '35.77250', '-94.41810'), ('Prairie Grove', 2540, '35.97580', '-94.31750'), ('Rhea', 0, '36.01420', '-94.40280'), ('Savoy', 0, '36.10560', '-94.33250'), ('Shady Grove', 2319, '36.14560', '-94.14390'), ('Sonora', 0, '36.16530', '-94.04470'), ('Springdale', 45798, '36.18670', '-94.12860'), ('Strickler', 0, '35.83360', '-94.31310'), ('Sulphur City', 0, '35.96500', '-94.05030'), ('Summers', 0, '35.98110', '-94.49140'), ('Tontitown', 942, '36.17780', '-94.23330'), ('Tuttle', 0, '36.03360', '-93.97220'), ('Viney Grove', 0, '36.00830', '-94.33000'), ('Walnut Grove', 3605, '36.00360', '-94.26690'), ('Wedington', 0, '36.08330', '-94.41670'), ('West Fork', 2042, '35.92420', '-94.18830'), ('Wheeler', 0, '36.11420', '-94.25890'), ('Winslow', 399, '35.80080', '-94.13470'), ('Woolsey', 0, '35.88530', '-94.16830'), ('Wyola', 0, '35.85860', '-94.05830')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARZ011': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alabam', 0, '36.15250', '-93.68110'), ('Aurora', 0, '35.99720', '-93.70250'), ('Best', 0, '36.23000', '-93.88000'), ('Boston', 0, '35.84060', '-93.60110'), ('Brashears', 0, '35.81170', '-93.79560'), ('Clifty', 0, '36.23720', '-93.79610'), ('Combs', 0, '35.82560', '-93.83640'), ('Crosses', 0, '35.87420', '-93.91110'), ('Delaney', 0, '35.85220', '-93.90000'), ('Dutton', 0, '35.81670', '-93.69360'), ('Forum', 0, '36.18170', '-93.71470'), ('Georgetown', 126, '35.99560', '-93.83110'), ('Harmony', 0, '36.10810', '-93.71220'), ('Hindsville', 75, '36.14420', '-93.86190'), ('Huntsville', 1931, '36.08610', '-93.74110'), ('Japton', 0, '35.96190', '-93.80420'), ('Kingston', 0, '36.05060', '-93.51830'), ('Marble', 0, '36.13970', '-93.58720'), ('Patrick', 0, '35.84310', '-93.88360'), ('Pettigrew', 0, '35.81780', '-93.64830'), ('Red Star', 0, '35.86670', '-93.53060'), ('Rockhouse', 0, '36.28190', '-93.67280'), ('Saint Paul', 163, '35.82000', '-93.77000'), ('Weathers', 0, '35.95940', '-93.52030'), ('Wesley', 0, '36.02720', '-93.92000'), ('Witter', 0, '35.93750', '-93.68330')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARZ012': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arbaugh', 0, '35.78330', '-93.51670'), ('Jasper', 498, '36.00610', '-93.18830'), ('Western Grove', 407, '36.10110', '-92.95390')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ013': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Gilbert', 33, '35.99020', '-92.71820'), ('Leslie', 482, '35.82940', '-92.55590'), ('Marshall', 1313, '35.90990', '-92.63620'), ('Pindall', 95, '36.05830', '-92.86530')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ014': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Fifty-Six', 163, '35.96040', '-92.22990'), ('Mountain View', 2876, '35.87000', '-92.11110')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ015': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Calico Rock', 991, '36.12830', '-92.13110'), ('Franklin', 184, '36.17140', '-91.77230'), ('Guion', 90, '35.92910', '-91.94010'), ('Horseshoe Bend', 2278, '36.22330', '-91.74100'), ('Melbourne', 1673, '36.06230', '-91.89870'), ('Mount Pleasant', 401, '35.98240', '-91.77770'), ('Oxford', 642, '36.20730', '-91.91940'), ('Pineville', 246, '36.15770', '-92.10390')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ016': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Batesville', 9445, '35.76820', '-91.62230'), ('Cushman', 461, '35.86360', '-91.77860'), ('Magness', 191, '35.70190', '-91.48230'), ('Moorefield', 160, '35.76810', '-91.57100'), ('Newark', 1219, '35.70530', '-91.44290'), ('Oil Trough', 218, '35.62950', '-91.46120'), ('Pleasant Plains', 267, '35.55060', '-91.62700'), ('Sulphur Rock', 421, '35.75100', '-91.49930')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ017': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alicia', 145, '35.89440', '-91.08300'), ('Annieville', 684, '36.15000', '-91.23330'), ('Black Rock', 717, '36.10640', '-91.10860'), ('College City', 269, '36.12570', '-90.94000'), ('Hoxie', 2817, '36.04370', '-90.97750'), ('Imboden', 684, '36.20170', '-91.17980'), ('Lynn', 315, '36.00660', '-91.25200'), ('Minturn', 114, '35.97500', '-91.02750'), ('Portia', 483, '36.08530', '-91.07130'), ('Powhatan', 50, '36.08190', '-91.11890'), ('Ravenden', 511, '36.23620', '-91.25040'), ('Sedgwick', 112, '35.97850', '-90.86320'), ('Smithville', 73, '36.08000', '-91.30280'), ('Strawberry', 283, '35.96560', '-91.32140'), ('Walnut Ridge', 4925, '36.06980', '-90.95830')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ018': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Beech Grove', 727, '36.16670', '-90.61670'), ('Delaplaine', 127, '36.23130', '-90.72600'), ('Evening Star', 127, '36.18330', '-90.70000'), ('Fontaine', 112, '36.00000', '-90.81670'), ('Lafe', 385, '36.20710', '-90.50310'), ('Marmaduke', 1158, '36.18840', '-90.38780'), ('Oak Grove Heights', 727, '36.12730', '-90.51520'), ('Paragould', 22017, '36.05610', '-90.51350'), ('Walcott', 22017, '36.03330', '-90.66670')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ019': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alma', 4160, '35.47780', '-94.22170'), ('Bidville', 0, '35.73970', '-93.98170'), ('Cedarville', 1133, '35.56970', '-94.36670'), ('Chester', 99, '35.68080', '-94.17500'), ('Concord', 255, '35.47060', '-94.25750'), ('Dora', 0, '35.45420', '-94.44060'), ('Dyer', 585, '35.49220', '-94.13750'), ('Figure Five', 0, '35.51690', '-94.35360'), ('Furry', 0, '35.48060', '-94.30220'), ('Kibler', 969, '35.43030', '-94.23140'), ('Lee Creek', 0, '35.68140', '-94.34920'), ('Locke', 0, '35.67390', '-94.07330'), ('Mountainburg', 682, '35.63560', '-94.16720'), ('Mount Gayler', 0, '35.75000', '-94.08330'), ('Mulberry', 1627, '35.50060', '-94.05140'), ('Natural Dam', 0, '35.64860', '-94.39440'), ('Pleasant Hill', 1627, '35.52170', '-94.04890'), ('Rudy', 72, '35.52780', '-94.27060'), ('Shibley', 0, '35.45030', '-94.29360'), ('Uniontown', 0, '35.58440', '-94.44390'), ('Van Buren', 18986, '35.43670', '-94.34810')], 'partOfState': 'northwest', 'wfo': 'TSA'}, +'ARZ020': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alix', 270, '35.42470', '-93.73030'), ('Altus', 817, '35.44610', '-93.76220'), ('Barnes', 3525, '35.63530', '-93.82030'), ('Branch', 357, '35.30560', '-93.95330'), ('Cass', 0, '35.68750', '-93.81920'), ('Cecil', 3525, '35.43860', '-93.94440'), ('Charleston', 2965, '35.29690', '-94.03610'), ('Cravens', 3525, '35.54830', '-93.91670'), ('Denning', 270, '35.42920', '-93.75690'), ('Fern', 0, '35.63890', '-94.01610'), ('Fort Chaffee', 0, '35.21670', '-94.06000'), ('Jethro', 3525, '35.60750', '-93.88720'), ('Lonelm', 3525, '35.55000', '-93.95000'), ('Meg', 191, '35.40420', '-93.88810'), ('Ozark', 3525, '35.48690', '-93.82750'), ('Paradise', 3525, '35.63220', '-93.83390'), ('Peter Pender', 357, '35.36000', '-93.93420'), ('Piney', 1627, '35.58580', '-94.05750'), ('Redding', 0, '35.68000', '-93.77690'), ('Taft', 0, '35.66670', '-93.71670'), ('Toney', 1627, '35.51810', '-93.96250'), ('Turners Bend', 0, '35.66670', '-93.83330'), ('Vesta', 0, '35.37920', '-94.04170'), ('Watalula', 3525, '35.57330', '-93.82720'), ('Wiederkehr Village', 46, '35.47310', '-93.76440')], 'partOfState': 'west central', 'wfo': 'TSA'}, +'ARZ021': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Clarksville', 7719, '35.45760', '-93.47240'), ('Coal Hill', 1001, '35.43700', '-93.66760'), ('Hartman', 596, '35.43450', '-93.61850'), ('Knoxville', 511, '35.37780', '-93.36480'), ('Lamar', 1415, '35.43920', '-93.38780')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARZ022': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Atkins', 2878, '35.24260', '-92.94560'), ('Dover', 1329, '35.40220', '-93.11240'), ('Hector', 506, '35.46570', '-92.97530'), ('London', 925, '35.32820', '-93.24010'), ('Pottsville', 1271, '35.23840', '-93.05840'), ('Russellville', 23682, '35.27180', '-93.14080')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ023': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Clinton', 2283, '35.58110', '-92.45240'), ('Fairfield Bay', 2460, '35.60510', '-92.26980'), ('Shirley', 337, '35.64370', '-92.31340')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ024': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Concord', 255, '35.66340', '-91.84870'), ('Greers Ferry', 930, '35.56780', '-92.16920'), ('Heber Springs', 6432, '35.50020', '-92.03860'), ('Higden', 101, '35.56640', '-92.20520'), ('Quitman', 714, '35.38230', '-92.21430')], 'partOfState': 'north central', 'wfo': 'LZK'}, +'ARZ025': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Amagon', 95, '35.56240', '-91.11060'), ('Beedeville', 105, '35.42860', '-91.10890'), ('Campbell Station', 228, '35.66950', '-91.25440'), ('Diaz', 1284, '35.64790', '-91.25990'), ('Grubbs', 438, '35.65270', '-91.07470'), ('Jacksonport', 235, '35.64120', '-91.30780'), ('Newport', 7811, '35.62550', '-91.23520'), ('Swifton', 871, '35.82420', '-91.12890'), ('Tuckerman', 1757, '35.72790', '-91.20060'), ('Tupelo', 177, '35.39150', '-91.22990'), ('Weldon', 100, '35.44750', '-91.23140')], 'partOfState': 'eastern', 'wfo': 'LZK'}, +'ARZ026': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bay', 1800, '35.74000', '-90.55920'), ('Black Oak', 286, '35.83550', '-90.36710'), ('Bono', 1512, '35.91050', '-90.79670'), ('Brookland', 1332, '35.90140', '-90.58080'), ('Caraway', 1349, '35.75800', '-90.33200'), ('Cash', 294, '35.79980', '-90.93220'), ('Egypt', 101, '35.86660', '-90.95290'), ('Jonesboro', 55515, '35.82180', '-90.68580'), ('Lake City', 1956, '35.81900', '-90.44860'), ('Monette', 1179, '35.89370', '-90.34460')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ027': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Fisher', 265, '35.49150', '-90.97220'), ('Greenfield', 2192, '35.68330', '-90.71670'), ('Harrisburg', 2192, '35.56030', '-90.72110'), ('Lepanto', 2133, '35.60710', '-90.33350'), ('Marked Tree', 2800, '35.53000', '-90.41750'), ('Trumann', 6889, '35.67470', '-90.51950'), ('Tyronza', 918, '35.49030', '-90.35890'), ('Waldenburg', 80, '35.56490', '-90.93480'), ('Weiner', 760, '35.61920', '-90.90200')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ028': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bassett', 168, '35.53610', '-90.13090'), ('Birdsong', 40, '35.45900', '-90.26050'), ('Blytheville', 18272, '35.93430', '-89.92480'), ('Burdette', 129, '35.81490', '-89.94590'), ('Dell', 251, '35.85520', '-90.03340'), ('Dyess', 515, '35.58940', '-90.21310'), ('Gosnell', 3968, '35.96110', '-89.97240'), ('Joiner', 540, '35.50830', '-90.14970'), ('Keiser', 808, '35.67450', '-90.09480'), ('Leachville', 1981, '35.92150', '-90.25620'), ('Luxora', 1317, '35.75770', '-89.93020'), ('Manila', 3055, '35.88360', '-90.16150'), ('Marie', 108, '35.61330', '-90.08170'), ('Osceola', 8875, '35.70130', '-89.99450'), ('Three Way', 1349, '35.70000', '-90.25000'), ('Victoria', 59, '35.75810', '-90.06070'), ('Wilson', 939, '35.56620', '-90.04190')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ029': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arkola', 0, '35.08470', '-94.30890'), ('Barling', 4176, '35.32560', '-94.30140'), ('Bloomer', 0, '35.29390', '-94.13860'), ('Bonanza', 514, '35.23920', '-94.42580'), ('Burnville', 0, '35.18860', '-94.18890'), ('Central City', 531, '35.31920', '-94.25190'), ('Crossroads', 0, '35.11190', '-94.19810'), ('Dayton', 0, '35.11420', '-94.22640'), ('Excelsior', 0, '35.20000', '-94.31420'), ('Fort Smith', 80268, '35.38580', '-94.39830'), ('Greenwood', 7112, '35.21560', '-94.25560'), ('Hackett', 694, '35.19030', '-94.41080'), ('Hartford', 772, '35.02280', '-94.38110'), ('Huntington', 688, '35.08220', '-94.26310'), ('Jenny Lind', 0, '35.25030', '-94.31830'), ('Jenson', 0, '35.19720', '-94.43890'), ('Lavaca', 1825, '35.33610', '-94.17310'), ('Liberty', 1097, '35.02750', '-94.23080'), ('Mansfield', 1097, '35.05940', '-94.25250'), ('Midland', 253, '35.09310', '-94.35310'), ('Mill Creek', 0, '35.33920', '-94.42280'), ('Milltown', 0, '35.15690', '-94.14940'), ('Patterson', 467, '34.99190', '-94.36080'), ('Rye Hill', 0, '35.26670', '-94.36670'), ('Ursula', 2965, '35.32390', '-94.09280'), ('Washburn', 0, '35.16830', '-94.09330'), ('Witcherville', 0, '35.13750', '-94.26420')], 'partOfState': 'west central', 'wfo': 'TSA'}, +'ARZ030': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Blue Mountain', 132, '35.13170', '-93.71530'), ('Booneville', 4117, '35.13940', '-93.91850'), ('Caulksville', 233, '35.30170', '-93.86850'), ('Magazine', 915, '35.15270', '-93.80630'), ('Morrison Bluff', 74, '35.38220', '-93.52740'), ('Paris', 3707, '35.28890', '-93.72460'), ('Ratcliff', 191, '35.30800', '-93.88820'), ('Scranton', 222, '35.36030', '-93.53850'), ('Subiaco', 439, '35.29750', '-93.63920')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARZ031': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Menifee', 311, '35.14830', '-92.55480'), ('Morrilton', 6550, '35.15620', '-92.74090'), ('Oppelo', 725, '35.10100', '-92.77510'), ('Plumerville', 854, '35.16060', '-92.64120')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ032': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Conway', 43167, '35.08880', '-92.45310'), ('Damascus', 306, '35.36460', '-92.40580'), ('Enola', 188, '35.20020', '-92.20110'), ('Greenbrier', 3042, '35.22980', '-92.38350'), ('Guy', 202, '35.32450', '-92.33480'), ('Mayflower', 1631, '34.97180', '-92.41900'), ('Mount Vernon', 144, '35.22400', '-92.13010'), ('Vilonia', 2106, '35.08400', '-92.21120'), ('Wooster', 516, '35.19890', '-92.44830')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ033': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bald Knob', 3210, '35.30820', '-91.57250'), ('Beebe', 4930, '35.07230', '-91.89390'), ('Bradford', 800, '35.42310', '-91.45660'), ('Garner', 284, '35.13950', '-91.78010'), ('Georgetown', 126, '35.12630', '-91.45320'), ('Griffithville', 262, '35.12480', '-91.64560'), ('Higginson', 378, '35.19580', '-91.71150'), ('Judsonia', 1982, '35.27590', '-91.64020'), ('Kensett', 1791, '35.23550', '-91.67010'), ('Letona', 201, '35.36310', '-91.83020'), ('McRae', 661, '35.11420', '-91.82260'), ('Pangburn', 654, '35.42620', '-91.83870'), ('Rose Bud', 429, '35.33090', '-92.07870'), ('Russell', 228, '35.36210', '-91.51040'), ('Searcy', 18928, '35.24290', '-91.73080'), ('West Point', 164, '35.20430', '-91.61030')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ034': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Augusta', 2665, '35.28550', '-91.36050'), ('Cotton Plant', 960, '35.00690', '-91.25150'), ('Hunter', 152, '35.05340', '-91.12270'), ('McCrory', 1850, '35.25690', '-91.19770'), ('Patterson', 467, '35.25760', '-91.23660')], 'partOfState': 'eastern', 'wfo': 'LZK'}, +'ARZ035': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Cherry Valley', 704, '35.40300', '-90.75380'), ('Fair Oaks', 1850, '35.23330', '-91.03330'), ('Hickory Ridge', 384, '35.40350', '-90.99470'), ('Parkin', 1602, '35.26450', '-90.55250'), ('Vanndale', 8615, '35.31670', '-90.78330'), ('Wynne', 8615, '35.23130', '-90.78840')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ036': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Crawfordsville', 514, '35.22570', '-90.32620'), ('Earle', 3036, '35.27330', '-90.46500'), ('Edmondson', 513, '35.10350', '-90.30980'), ('Gilmore', 292, '35.41110', '-90.27740'), ('Horseshoe Lake', 321, '34.91330', '-90.30700'), ('Jennette', 124, '35.16560', '-90.40750'), ('Jericho', 184, '35.28590', '-90.22730'), ('Marion', 8901, '35.20650', '-90.20350'), ('Pinckney', 321, '34.96670', '-90.30000'), ('Simsboro', 1867, '35.01670', '-90.38330'), ('Sunset', 348, '35.22470', '-90.20760'), ('Turrell', 957, '35.37710', '-90.25710'), ('West Memphis', 27666, '35.14970', '-90.18220')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ037': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Waldron', 3508, '34.89970', '-94.09360')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARZ038': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Belleville', 371, '35.09070', '-93.44530'), ('Corinth', 65, '35.06820', '-93.42050'), ('Danville', 2392, '35.05210', '-93.39030'), ('Dardanelle', 4228, '35.22640', '-93.16560'), ('Havana', 392, '35.11020', '-93.52790'), ('Ola', 1204, '35.03100', '-93.22410'), ('Plainview', 755, '34.98950', '-93.29760')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ039': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Adona', 187, '35.04000', '-92.89850'), ('Bigelow', 329, '34.99900', '-92.63100'), ('Casa', 209, '35.02580', '-93.04430'), ('Fourche', 59, '34.99310', '-92.61880'), ('Houston', 159, '35.03490', '-92.69410'), ('Perry', 314, '35.04490', '-92.79380'), ('Perryville', 1458, '35.00840', '-92.80350')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ040': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Cove', 383, '34.43500', '-94.40920'), ('Grannis', 575, '34.24010', '-94.32030'), ('Hatfield', 402, '34.48710', '-94.37870'), ('Mena', 5637, '34.58040', '-94.23670'), ('Vandervoort', 120, '34.37960', '-94.36450'), ('Wickes', 675, '34.29970', '-94.33520')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARZ041': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Black Springs', 114, '34.46150', '-93.71350'), ('Mount Ida', 981, '34.55180', '-93.63110'), ('Norman', 423, '34.45670', '-93.67780'), ('Oden', 220, '34.62020', '-93.78520')], 'partOfState': 'western', 'wfo': 'LZK'}, +'ARZ042': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Hot Springs', 35750, '34.49370', '-93.05200'), ('Hot Springs Village', 8397, '34.66520', '-93.00010'), ('Lake Hamilton', 1609, '34.42600', '-93.08930'), ('Lonsdale', 118, '34.54470', '-92.81110'), ('Mountain Pine', 772, '34.57140', '-93.17400'), ('Piney', 3988, '34.50340', '-93.14260'), ('Rockwell', 3024, '34.46430', '-93.13360')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ043': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bauxite', 432, '34.55690', '-92.52600'), ('Benton', 21906, '34.56920', '-92.57730'), ('Bryant', 9764, '34.61240', '-92.49200'), ('Haskell', 2645, '34.50550', '-92.63660'), ('Salem', 2789, '34.62970', '-92.55550'), ('Shannon Hills', 2005, '34.62060', '-92.40850'), ('Traskwood', 548, '34.45190', '-92.66670')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ044': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Alexander', 614, '34.63030', '-92.44280'), ('Cammack Village', 831, '34.77990', '-92.34680'), ('Gibson', 4678, '34.89540', '-92.22710'), ('Gravel Ridge', 3232, '34.87140', '-92.18770'), ('Jacksonville', 29916, '34.86980', '-92.12800'), ('Little Rock', 183133, '34.72240', '-92.35410'), ('Maumelle', 10557, '34.85250', '-92.41050'), ('North Little Rock', 60433, '34.78840', '-92.25540'), ('Parkers-Iron Spring', 3499, '34.60520', '-92.32220'), ('Sherwood', 21511, '34.83200', '-92.20750'), ('Wrightsville', 1368, '34.61400', '-92.21990')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ045': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Allport', 127, '34.53950', '-91.78480'), ('Austin', 605, '34.99800', '-91.98180'), ('Cabot', 15261, '34.96820', '-92.02200'), ('Carlisle', 2304, '34.78610', '-91.74650'), ('Coy', 116, '34.54180', '-91.86960'), ('England', 2972, '34.54490', '-91.96790'), ('Humnoke', 280, '34.54210', '-91.75880'), ('Keo', 235, '34.61310', '-92.01110'), ('Lonoke', 4287, '34.78600', '-91.89960'), ('Ward', 2580, '35.01890', '-91.95500')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ046': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Des Arc', 1933, '34.97570', '-91.50520'), ('De Valls Bluff', 783, '34.78570', '-91.46080'), ('Fredonia (Biscoe)', 476, '34.81860', '-91.40910'), ('Hazen', 1637, '34.78930', '-91.57370'), ('Ulm', 205, '34.57600', '-91.46130')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ047': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Brinkley', 3940, '34.88430', '-91.18900'), ('Clarendon', 1960, '34.69550', '-91.30580'), ('Fargo', 118, '34.95500', '-91.17710'), ('Holly Grove', 722, '34.59620', '-91.20070'), ('Roe', 124, '34.63090', '-91.38570')], 'partOfState': 'eastern', 'wfo': 'LZK'}, +'ARZ048': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Caldwell', 465, '35.07930', '-90.81510'), ('Colt', 368, '35.13250', '-90.81230'), ('Forrest City', 14774, '35.01440', '-90.78530'), ('Hughes', 1867, '34.94850', '-90.47130'), ('Madison', 987, '35.01940', '-90.73050'), ('New Home', 335, '35.03330', '-90.56670'), ('Palestine', 741, '34.97030', '-90.90500'), ('Wheatley', 372, '34.91880', '-91.10730'), ('Widener', 335, '35.02200', '-90.68240')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ049': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Aubrey', 221, '34.71980', '-90.89780'), ('Brickeys', 1867, '34.85000', '-90.58330'), ('Garret Grove', 241, '34.80000', '-91.08330'), ('Haynes', 214, '34.88980', '-90.79240'), ('Lagrange', 122, '34.65550', '-90.73370'), ('Marianna', 5181, '34.77460', '-90.76640'), ('Moro', 241, '34.79250', '-90.98930'), ('New Salem', 241, '34.88330', '-91.00000'), ('Rondo', 237, '34.65740', '-90.82020')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ050': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Ben Lomond', 126, '33.83440', '-94.11500'), ('De Queen', 5765, '34.04270', '-94.34180'), ('Gillham', 188, '34.16790', '-94.31350'), ('Horatio', 997, '33.93980', '-94.35510'), ('Lockesburg', 711, '33.97090', '-94.17310')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ051': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Dierks', 1230, '34.12060', '-94.01880'), ('Mineral Springs', 1264, '33.87760', '-93.92000'), ('Nashville', 4878, '33.94090', '-93.85160'), ('Tollette', 324, '33.81800', '-93.89610')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ052': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Antoine', 156, '34.03400', '-93.42110'), ('Daisy', 118, '34.23310', '-93.74190'), ('Delight', 311, '34.02940', '-93.50580'), ('Glenwood', 1751, '34.33110', '-93.54970'), ('Murfreesboro', 1764, '34.06300', '-93.69110')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARZ053': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Amity', 762, '34.26610', '-93.46390'), ('Arkadelphia', 10912, '34.12380', '-93.07060'), ('Caddo Valley', 563, '34.18790', '-93.07000'), ('Gum Springs', 194, '34.06450', '-93.09590'), ('Gurdon', 2276, '33.91640', '-93.14810'), ('Okolona', 160, '34.00050', '-93.33720'), ('Whelen Springs', 84, '33.83160', '-93.12570')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARZ054': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Friendship', 206, '34.22380', '-93.00300'), ('Malvern', 9021, '34.37110', '-92.81560'), ('Perla', 115, '34.36440', '-92.77860'), ('Rockport', 792, '34.39190', '-92.81630')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARZ055': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Leola', 515, '34.16930', '-92.59070'), ('Poyen', 272, '34.32240', '-92.64230'), ('Prattsville', 282, '34.31810', '-92.54300'), ('Sheridan', 3872, '34.30930', '-92.40550'), ('Tull', 358, '34.44230', '-92.57350')], 'partOfState': 'central', 'wfo': 'LZK'}, +'ARZ056': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Altheimer', 1192, '34.31890', '-91.84620'), ('Pine Bluff', 55085, '34.21340', '-92.01860'), ('Redfield', 1157, '34.44190', '-92.18390'), ('Sherrill', 126, '34.38470', '-91.95070'), ('Wabbaseka', 323, '34.36030', '-91.79270'), ('White Hall', 4732, '34.27560', '-92.09780')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARZ057': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Almyra', 319, '34.40570', '-91.41060'), ('De Witt', 3552, '34.28950', '-91.33810'), ('Gillett', 819, '34.11910', '-91.37900'), ('Humphrey', 806, '34.42260', '-91.70230'), ('Saint Charles', 261, '34.37580', '-91.13290'), ('Stuttgart', 9745, '34.49350', '-91.55090')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARZ058': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Crumrod', 865, '34.15000', '-90.98330'), ('Elaine', 865, '34.30830', '-90.85410'), ('Helena', 6323, '34.52630', '-90.60470'), ('Lake View', 531, '34.42310', '-90.81030'), ('Lexa', 331, '34.59820', '-90.75260'), ('Marvell', 1395, '34.55600', '-90.91450'), ('Watkins Corner', 1395, '34.46670', '-90.95000'), ('West Helena', 8689, '34.54600', '-90.64650')], 'partOfState': 'eastern', 'wfo': 'MEG'}, +'ARZ059': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Ashdown', 4781, '33.67440', '-94.12600'), ('Foreman', 1125, '33.71730', '-94.39750'), ('Ogden', 214, '33.58480', '-94.04450'), ('Wilton', 439, '33.73880', '-94.14750'), ('Winthrop', 186, '33.83120', '-94.35340')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ060': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Blevins', 365, '33.87110', '-93.57720'), ('Fulton', 245, '33.61190', '-93.81430'), ('Hope', 10616, '33.66820', '-93.59120'), ('McCaskill', 84, '33.91760', '-93.64110'), ('McNab', 37, '33.66070', '-93.83220'), ('Oakhaven', 54, '33.72910', '-93.62000'), ('Ozan', 81, '33.84730', '-93.71940'), ('Patmos', 61, '33.51190', '-93.56670'), ('Perrytown', 255, '33.69650', '-93.53260'), ('Washington', 148, '33.77310', '-93.68300')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ061': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bluff City', 158, '33.71720', '-93.13310'), ('Bodcaw', 154, '33.55660', '-93.40110'), ('Cale', 75, '33.62790', '-93.23310'), ('Emmet', 506, '33.72210', '-93.46620'), ('Prescott', 3686, '33.80070', '-93.38800'), ('Rosston', 265, '33.58690', '-93.27600'), ('Willisville', 188, '33.51850', '-93.29480')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ062': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Carthage', 442, '34.07230', '-92.55550'), ('Fordyce', 4799, '33.81770', '-92.41380'), ('Sparkman', 586, '33.91710', '-92.84860')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARZ063': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Kingsland', 449, '33.86130', '-92.29410'), ('Rison', 1271, '33.95450', '-92.19070')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARZ064': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Gould', 1305, '33.98540', '-91.56270'), ('Grady', 523, '34.07870', '-91.69830'), ('Star City', 2471, '33.94100', '-91.84440')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARZ065': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Arkansas City', 589, '33.60880', '-91.20570'), ('Dumas', 5238, '33.88320', '-91.48590'), ('McGehee', 4570, '33.62540', '-91.39250'), ('Mitchellville', 497, '33.90590', '-91.49850'), ('Reed', 275, '33.70180', '-91.44370'), ('Watson', 288, '33.89360', '-91.25740')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARZ066': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bearden', 1125, '33.72750', '-92.61630'), ('Camden', 13154, '33.56670', '-92.84570'), ('Chidester', 335, '33.69990', '-93.01870'), ('East Camden', 902, '33.60850', '-92.74240'), ('Louann', 195, '33.39160', '-92.79270'), ('Reader', 82, '33.75180', '-93.10120'), ('Stephens', 1152, '33.42010', '-93.06740')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARZ067': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Hampton', 1579, '33.53670', '-92.46540'), ('Harrell', 293, '33.51000', '-92.40170'), ('Thornton', 517, '33.77620', '-92.48920'), ('Tinsman', 75, '33.62900', '-92.35350')], 'partOfState': 'southwest', 'wfo': 'LZK'}, +'ARZ068': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Banks', 120, '33.57590', '-92.26820'), ('Hermitage', 769, '33.44720', '-92.17020'), ('Warren', 6442, '33.61010', '-92.06970')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARZ069': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Jerome', 46, '33.39880', '-91.47080'), ('Monticello', 9146, '33.62480', '-91.79380'), ('Tillar', 240, '33.71020', '-91.45170'), ('Wilmar', 571, '33.62590', '-91.92900'), ('Winchester', 191, '33.77480', '-91.47500')], 'partOfState': 'southeast', 'wfo': 'LZK'}, +'ARZ070': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Fouke', 814, '33.26080', '-93.88640'), ('Garland', 352, '33.35980', '-93.71280'), ('Texarkana', 26448, '33.45020', '-94.01580')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ071': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Bradley', 563, '33.09990', '-93.65690'), ('Buckner', 396, '33.35720', '-93.43540'), ('Lewisville', 1285, '33.36300', '-93.57660'), ('Stamps', 2131, '33.35870', '-93.49570')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ072': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Emerson', 359, '33.09740', '-93.19610'), ('Magnolia', 10858, '33.27400', '-93.23540'), ('McNeil', 662, '33.34790', '-93.20880'), ('Taylor', 566, '33.10030', '-93.46210'), ('Waldo', 1594, '33.35250', '-93.29530')], 'partOfState': 'southwest', 'wfo': 'SHV'}, +'ARZ073': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Calion', 516, '33.32880', '-92.53840'), ('El Dorado', 21530, '33.21900', '-92.66280'), ('Felsenthal', 152, '33.05790', '-92.15260'), ('Huttig', 731, '33.04130', '-92.18220'), ('Junction City', 721, '33.02410', '-92.72360'), ('Norphlet', 822, '33.31960', '-92.66320'), ('Smackover', 2005, '33.36460', '-92.73080'), ('Strong', 651, '33.10800', '-92.35940')], 'partOfState': 'south central', 'wfo': 'SHV'}, +'ARZ074': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Crossett', 6097, '33.12740', '-91.96600'), ('Fountain Hill', 159, '33.35690', '-91.85090'), ('Hamburg', 3039, '33.22580', '-91.79700'), ('Montrose', 526, '33.29860', '-91.49700'), ('North Crossett', 3581, '33.16980', '-91.93620'), ('Parkdale', 377, '33.12080', '-91.54580'), ('Portland', 552, '33.23830', '-91.51120'), ('West Crossett', 1664, '33.14440', '-92.01990'), ('Wilmot', 786, '33.05830', '-91.57500')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'ARZ075': {'fullStateName': 'Arkansas', 'state': 'AR', 'cities': [('Dermott', 3292, '33.52660', '-91.43770'), ('Eudora', 2819, '33.11980', '-91.26310'), ('Lake Village', 2823, '33.32420', '-91.28350')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'ASZ001': {'fullStateName': 'American Samoa', 'state': 'AS', 'cities': [('Aasu', 364, '-14.30940', '-170.75670'), ('Afono', 530, '-14.26220', '-170.64610'), ('Amaua', 102, '-14.27650', '-170.62370'), ('Aoa', 507, '-14.26820', '-170.58520'), ('Aoloau', 778, '-14.29330', '-170.78140'), ('Aua', 2193, '-14.28050', '-170.66390'), ("Faga'alu", 1006, '-14.29430', '-170.68060'), ("Fagali'i", 259, '-14.31010', '-170.82680'), ('Faganeanea', 183, '-14.30560', '-170.69310'), ('Fagatogo', 2096, '-14.28740', '-170.69060'), ('Faleniu', 2056, '-14.33110', '-170.74350'), ('Leone', 3658, '-14.34030', '-170.78370'), ('Malaeimi', 1067, '-14.31470', '-170.73720'), ('Malaeloa/Aitulagi', 597, '-14.33700', '-170.76560'), ('Malaeloa/Ituau', 627, '-14.34670', '-170.76890'), ('Maloata', 17, '-14.31140', '-170.81640'), ('Mapusagafou', 1642, '-14.32460', '-170.75060'), ('Mesepa', 481, '-14.32600', '-170.74100'), ('Pagai', 122, '-14.27400', '-170.60340'), ('Pago Pago', 0, '-14.33300', '-170.71700'), ("Pava'ia'i", 2200, '-14.33880', '-170.75310'), ('Tafuna', 0, '-14.33583', '-170.72000'), ('Taputimu', 640, '-14.35760', '-170.77010'), ('Tula', 0, '-14.25806', '-170.56417'), ('Utulei', 807, '-14.28810', '-170.67850')], 'partOfState': '', 'wfo': 'PPG'}, +'ASZ002': {'fullStateName': 'American Samoa', 'state': 'AS', 'cities': [('Fitiuta', 0, '-14.22222', '-169.42361'), ('Ofu', 0, '-14.17528', '-169.67605'), ('Tau', 0, '-14.23361', '-169.51444'), ('Tay', 0, '-14.23361', '-169.51444')], 'partOfState': '', 'wfo': 'PPG'}, +'ASZ003': {'fullStateName': 'American Samoa', 'state': 'AS', 'cities': [], 'partOfState': '', 'wfo': 'PPG'}, +'AZZ001': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Colorado City', 3334, '36.99160', '-112.98250'), ('Littlefield', 396375, '36.89530', '-113.93450'), ('Mt. Trumbull', 0, '36.40000', '-113.13330'), ('Pipe Spring Nation', 1036, '36.86660', '-112.73330'), ('Tuweep', 0, '36.28330', '-113.06660')], 'partOfState': 'northwest', 'wfo': 'VEF'}, +'AZZ002': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Desert Hills', 2183, '34.55400', '-114.37170'), ('Lake Havasu City', 41938, '34.45000', '-114.33330'), ('Topock', 5191, '34.71660', '-114.46660'), ('Willow Valley', 585, '34.91200', '-114.60580')], 'partOfState': 'northwest', 'wfo': 'VEF'}, +'AZZ003': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Chloride', 4515, '35.40000', '-114.18330'), ('Dolan Springs', 1867, '35.60450', '-114.26650'), ('Golden Valley', 4515, '35.22320', '-114.22210'), ('Hualapai Peak', 20069, '35.07160', '-113.90000'), ('Kingman', 20069, '35.20700', '-114.03200'), ('New Kingman-Butler', 14810, '35.26010', '-114.02980'), ('Peach Springs', 600, '35.52740', '-113.42980'), ('Valentine', 600, '35.38330', '-113.66660'), ('Wikieup', 1578, '34.70000', '-113.61660'), ('Yucca', 20069, '34.86660', '-114.15000')], 'partOfState': 'northwest', 'wfo': 'VEF'}, +'AZZ004': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Fredonia', 1036, '36.96480', '-112.51880'), ('Jacob Lake', 1036, '36.71349', '-112.21612')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ005': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Big Five', 6809, '36.89192', '-111.44362'), ('House Rock', 0, '36.73151', '-112.04268'), ('Lees Ferry', 6809, '36.86729', '-111.58661'), ('Marble Canyon', 6809, '36.81655', '-111.63362'), ('Page', 6809, '36.90430', '-111.45780'), ('Wahweep', 6809, '36.99362', '-111.49452')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ006': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bright Angel Point', 1460, '36.19845', '-112.05262'), ('Desert View At Gra', 1460, '36.04295', '-111.82546'), ('Grand Canyon Village', 1460, '36.04640', '-112.15350'), ('Hermits Rest At Gr', 1460, '36.06220', '-112.21015'), ('South Rim Visitors', 1460, '36.05700', '-112.12810'), ('Supai', 0, '36.22420', '-112.69320'), ('Tusayan', 562, '35.97898', '-112.12295')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ007': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Fraziers Well', 600, '35.78146', '-113.07097'), ('Valle', 2842, '35.65176', '-112.13788')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ008': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Ash Fork', 457, '35.22097', '-112.48698'), ('Cherry', 10610, '34.59020', '-112.04060'), ('Crown King', 2697, '34.20691', '-112.33638'), ('Iron Springs', 33938, '34.58307', '-112.57248'), ('Peeples Valley', 374, '34.27056', '-112.72735'), ('Ponderosa Park', 33938, '34.47319', '-112.48714'), ('Prescott', 33938, '34.57600', '-112.44910'), ('Prescott Valley', 23535, '34.60820', '-112.32140'), ('Seligman', 456, '35.32938', '-112.87536'), ('Walker', 33938, '34.45895', '-112.38033'), ('Yarnell', 645, '34.22315', '-112.74566')], 'partOfState': 'west central', 'wfo': 'FGZ'}, +'AZZ009': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bitter Springs', 547, '36.63718', '-111.65116'), ('Cedar Ridge', 8225, '36.39231', '-111.52428'), ('Hotevilla', 869, '35.92380', '-110.65760'), ('Kaibito', 1607, '36.58900', '-111.11030'), ('Keams Canyon', 260, '35.81144', '-110.19403'), ('Le Chee', 6809, '36.85869', '-111.44011'), ('Pinon', 1190, '36.10070', '-110.22130'), ('Second Mesa', 814, '35.81760', '-110.50360'), ('The Gap', 8225, '36.30314', '-111.46046')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ010': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Chilchinbito', 462, '36.52861', '-110.07864'), ('Chinle', 5366, '36.15190', '-109.58000'), ('Dennehotso', 734, '36.82150', '-109.88380'), ('Kayenta', 4922, '36.71800', '-110.25260'), ('Lukachukai', 1565, '36.40010', '-109.25690'), ('Many Farms', 1548, '36.35030', '-109.61850'), ('Mexican Water', 0, '36.96808', '-109.63615'), ('Red Mesa', 237, '36.96002', '-109.35625'), ('Rock Point', 724, '36.71961', '-109.62629'), ('Rough Rock', 469, '36.40950', '-109.86750'), ('Round Rock', 601, '36.51090', '-109.47181'), ('Salina', 5366, '36.02546', '-109.87030'), ('Teec Nos Pos', 799, '36.92910', '-109.08210'), ('Totacon', 0, '36.84980', '-109.42666'), ('Tsegi', 4922, '36.65082', '-110.42613')], 'partOfState': 'northeast', 'wfo': 'FGZ'}, +'AZZ011': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Fort Defiance', 4061, '35.74370', '-109.06660'), ('Ganado', 1505, '35.70760', '-109.55200'), ('Houck', 1087, '35.28383', '-109.20239'), ('Klagetoh', 1505, '35.50908', '-109.52475'), ('Lupton', 1295, '35.35560', '-109.04829'), ('Nazlini', 397, '35.90127', '-109.44868'), ('Pine Springs', 1295, '35.40633', '-109.28102'), ('Red Rock', 626, '36.60838', '-109.05427'), ('Sanders', 5857, '35.21548', '-109.33239'), ('Sawmill', 612, '35.89170', '-109.15350'), ('St. Michaels', 1295, '35.66170', '-109.09360'), ('Tsaile', 1043, '36.30370', '-109.21470'), ('Twin Falls', 799, '36.86591', '-109.08827'), ('Upper Wheatfields', 1043, '36.22309', '-109.10030'), ('Wheatfields', 1043, '36.23877', '-109.12788'), ('Wide Ruins', 1505, '35.42031', '-109.49295'), ('Window Rock', 3059, '35.67090', '-109.06440')], 'partOfState': 'northeast', 'wfo': 'FGZ'}, +'AZZ012': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Cameron', 978, '35.84830', '-111.43190'), ('Gray Mountain', 978, '35.74646', '-111.47160'), ('Leupp', 970, '35.28539', '-110.96149'), ('Meteor Crater', 970, '35.02704', '-111.02222'), ('Moenave', 8225, '36.13791', '-111.34170'), ('Rimmy Jims', 970, '35.11064', '-111.02943'), ('Sunrise', 970, '35.30049', '-110.98789'), ('Tuba City', 8225, '36.12500', '-111.24250'), ('Twin Arrows', 970, '35.16090', '-111.26971'), ('Two Guns', 970, '35.11803', '-111.08982'), ('Wupatki National Monument', 978, '35.52170', '-111.37058')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ013': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Holbrook', 4917, '34.90167', '-110.16093'), ('Joseph City', 4917, '34.95661', '-110.32790'), ('Shumway', 3176, '34.40457', '-110.07875'), ('Snowflake', 4460, '34.52200', '-110.08420'), ('Taylor', 3176, '34.44990', '-110.11150'), ('Winslow', 9520, '35.02780', '-110.70690'), ('Woodruff', 4917, '34.78148', '-110.04171')], 'partOfState': 'northeast', 'wfo': 'FGZ'}, +'AZZ014': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Concho', 3269, '34.47484', '-109.60690'), ('Eagar', 4033, '34.10490', '-109.29210'), ('Hunt', 3269, '34.60929', '-109.63456'), ('Lyman Lake State Park', 3269, '34.36050', '-109.38039'), ('Springerville', 1972, '34.13220', '-109.28090'), ('St. Johns', 3269, '34.50990', '-109.37680'), ('Vernon', 349, '34.25466', '-109.69178')], 'partOfState': 'northeast', 'wfo': 'FGZ'}, +'AZZ015': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Angell', 52894, '35.19736', '-111.30345'), ('Cosnino', 52894, '35.20149', '-111.47713'), ('Doney Park', 52894, '35.27110', '-111.51195'), ('Flagstaff', 52894, '35.18900', '-111.61980'), ('Fort Valley', 52894, '35.26314', '-111.72799'), ('Kachina Village', 2664, '35.09700', '-111.69190'), ('Mountainaire', 1014, '35.08323', '-111.66270'), ('Munds Park', 1250, '34.94103', '-111.64153'), ('Parks', 1137, '35.26318', '-111.94954'), ('Williams', 2842, '35.26460', '-112.17280'), ('Winona', 52894, '35.20190', '-111.40681')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ016': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Aripine', 1581, '34.40696', '-110.43454'), ('Cibecue', 1331, '34.02950', '-110.48220'), ('Clay Springs', 3176, '34.36114', '-110.29491'), ('Clints Well', 13620, '34.55486', '-111.31176'), ('Forest Lakes', 1581, '34.33720', '-110.80430'), ('Happy Jack', 5245, '34.74263', '-111.40526'), ('Heber-Overgaard', 1581, '34.41400', '-110.56880'), ('Linden', 7695, '34.28522', '-110.16187'), ('Pinedale', 3176, '34.30730', '-110.24932')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ017': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Alpine', 4033, '33.84650', '-109.13844'), ('East Fork', 880, '33.80640', '-109.93140'), ('Fort Apache', 1092, '33.79026', '-109.98163'), ('Greer', 4033, '34.01467', '-109.45689'), ('McNary', 349, '34.09580', '-109.85050'), ('Nutrioso', 4033, '33.95376', '-109.20684'), ('Pinetop-Lakeside', 3582, '34.14810', '-109.96640'), ('Show Low', 7695, '34.23730', '-110.04430'), ('Three Forks', 4033, '33.85438', '-109.31159'), ('Whiteriver', 5220, '33.83890', '-109.96160')], 'partOfState': 'northeast', 'wfo': 'FGZ'}, +'AZZ018': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Canyon Day', 1092, '33.78140', '-110.02620'), ('Carrizo', 1331, '33.99385', '-110.28519'), ('Jakes Corner', 13620, '34.01008', '-111.31897'), ('Kohls Ranch', 13620, '34.32365', '-111.10196'), ('Payson', 13620, '34.24260', '-111.32700'), ('Pine', 1931, '34.38660', '-111.45822'), ('Rye', 13620, '34.10890', '-111.35345'), ('Star Valley', 13620, '34.25473', '-111.25447'), ('Strawberry', 1028, '34.40743', '-111.49093'), ('Tonto Village', 13620, '34.31586', '-111.13446'), ('Washington Park', 13620, '34.42242', '-111.27084'), ('Young', 561, '34.10170', '-110.94659')], 'partOfState': 'east central', 'wfo': 'FGZ'}, +'AZZ020': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Cibola', 172, '33.35000', '-114.68000'), ('Ehrenberg', 1357, '33.62290', '-114.49390'), ('Parker', 3140, '34.13000', '-114.28000'), ('Poston', 389, '33.95910', '-114.41520')], 'partOfState': 'west central', 'wfo': 'PSR'}, +'AZZ021': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bouse', 615, '33.92500', '-114.00000'), ('Brenda', 3354, '33.69000', '-113.94000'), ('Harcuvar', 3354, '33.77000', '-113.65900'), ('Quartzsite', 3354, '33.66700', '-114.21500'), ('Salome', 1690, '33.78000', '-113.62000'), ('Vicksburg', 3354, '33.75000', '-113.73000'), ('Vicksburg Junction', 3354, '33.73000', '-113.73000'), ('Wenden', 556, '33.82000', '-113.55000')], 'partOfState': 'west central', 'wfo': 'PSR'}, +'AZZ022': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Aguila', 5082, '33.95000', '-113.17000'), ('Arlington', 6537, '33.33000', '-112.70000'), ('Buckeye', 6537, '33.38000', '-112.60000'), ('Circle City', 30848, '33.81600', '-112.58300'), ('Gladden', 5082, '33.90000', '-113.30000'), ('Hassayampa', 6537, '33.35000', '-112.72000'), ('Morristown', 5082, '33.85000', '-112.62000'), ('New River', 10740, '33.92000', '-112.13000'), ('Palo Verde', 6537, '33.35000', '-112.64000'), ('Tonopah', 6537, '33.50000', '-112.93000'), ('Wickenburg', 5082, '33.96660', '-112.75440'), ('Wintersburg', 6537, '33.42000', '-112.87000')], 'partOfState': 'south central', 'wfo': 'PSR'}, +'AZZ023': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Avondale', 35883, '33.42010', '-112.35000'), ('Beardsley', 26344, '33.68000', '-112.39000'), ('Carefree', 2927, '33.82240', '-111.91840'), ('Cashion', 35883, '33.44000', '-112.32000'), ('Cave Creek', 3728, '33.82620', '-111.96520'), ('Chandler', 176581, '33.29500', '-111.86690'), ('El Mirage', 7609, '33.59120', '-112.32400'), ('Fountain Hills', 20235, '33.60540', '-111.74110'), ('Gilbert', 109697, '33.33200', '-111.76420'), ('Glendale', 218812, '33.58410', '-112.20160'), ('Goodyear', 18911, '33.42000', '-112.40000'), ('Guadalupe', 5228, '33.36580', '-111.96170'), ('Komatke', 1116, '33.30620', '-112.17810'), ('Laveen', 1116, '33.42000', '-112.13000'), ('Liberty', 18911, '33.38000', '-112.49000'), ('Litchfield Park', 3810, '33.50250', '-112.35880'), ('Luke AFB', 4371, '33.53310', '-112.37070'), ('Mesa', 396375, '33.41770', '-111.74030'), ('Paradise Valley', 13664, '33.53930', '-111.95460'), ('Peoria', 108364, '33.68850', '-112.24450'), ('Perryville', 6537, '33.43000', '-112.50000'), ('Phoenix', 1321045, '33.54250', '-112.07140'), ('Queen Creek', 4316, '33.24140', '-111.64320'), ('Scottsdale', 202705, '33.68600', '-111.87050'), ('Sun City', 38309, '33.61630', '-112.28180'), ('Sun City West', 26344, '33.66900', '-112.36910'), ('Sun Lakes', 11936, '33.21690', '-111.87010'), ('Surprise', 30848, '33.65000', '-112.34000'), ('Tempe', 158625, '33.38840', '-111.93060'), ('Tolleson', 4974, '33.44880', '-112.25480'), ('Waddell', 7609, '33.59000', '-112.36000'), ('Wittmann', 30848, '33.78000', '-112.53000'), ('Youngtown', 3010, '33.58720', '-112.30300')], 'partOfState': 'south central', 'wfo': 'PSR'}, +'AZZ024': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Claypool', 1794, '33.43300', '-110.83300'), ('Globe', 7486, '33.38280', '-110.75430'), ('Hayden', 892, '32.99990', '-110.78100'), ('Miami', 1936, '33.39430', '-110.87210'), ('Peridot', 1266, '33.30270', '-110.45430'), ('Punkin Center', 13620, '33.85000', '-111.33000'), ('Roosevelt', 1936, '33.67000', '-111.13000'), ('San Carlos', 3716, '33.34860', '-110.46510'), ('Sunflower', 20235, '33.87000', '-111.47000'), ('Superior', 3254, '33.28590', '-111.10950'), ('Winkelman', 443, '32.98900', '-110.76960')], 'partOfState': 'east central', 'wfo': 'PSR'}, +'AZZ025': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Fortuna Foothills', 20478, '32.65770', '-114.41100'), ('Gadsden', 953, '32.55000', '-114.78000'), ('San Luis', 15322, '32.49250', '-114.77790'), ('Somerton', 7266, '32.59710', '-114.70950'), ('Yuma', 77515, '32.67750', '-114.62020')], 'partOfState': 'southwest', 'wfo': 'PSR'}, +'AZZ026': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Dateland', 1829, '32.82000', '-113.53000'), ('Ligurta', 20478, '32.67000', '-114.30000'), ('Mohawk', 1829, '32.73000', '-113.73000'), ('Palm Canyon', 3354, '33.31500', '-113.98250'), ('Tacna', 555, '32.70000', '-113.95000'), ('Wellton', 1829, '32.67290', '-114.13930')], 'partOfState': 'west central', 'wfo': 'PSR'}, +'AZZ027': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Gila Bend', 1980, '32.95150', '-112.68480'), ('Sentinel', 1980, '32.88000', '-113.22000')], 'partOfState': 'south central', 'wfo': 'PSR'}, +'AZZ028': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Ak-Chin Village', 669, '33.02830', '-112.08700'), ('Apache Junction', 31814, '33.40500', '-111.54700'), ('Arizona City', 4385, '32.75080', '-111.66980'), ('Cactus Forest', 17054, '32.99000', '-111.32000'), ('Casa Grande', 25224, '32.89230', '-111.73590'), ('Coolidge', 7786, '32.98240', '-111.52760'), ('Florence', 17054, '33.03760', '-111.37390'), ('Florence Junction', 3254, '33.27000', '-111.33000'), ('Sacaton', 1584, '33.08210', '-111.74610'), ('Santan', 651, '33.14550', '-111.80150')], 'partOfState': 'south central', 'wfo': 'PSR'}, +'AZZ036': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bullhead City', 33769, '35.15000', '-114.56000'), ('Meadview', 1867, '36.00000', '-114.07080'), ('Mohave Valley', 13694, '34.93320', '-114.58800'), ('Oatman', 33769, '35.03330', '-114.38330'), ('South Cove', 1867, '36.12080', '-114.08330'), ('Temple Bar', 1867, '36.03220', '-114.32000')], 'partOfState': 'northwest', 'wfo': 'VEF'}, +'AZZ037': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bagdad', 1578, '34.57343', '-113.17705'), ('Black Canyon City', 2697, '34.06250', '-112.10940'), ('Bridgeport', 10610, '34.72060', '-111.99109'), ('Bumble Bee', 2697, '34.20514', '-112.15151'), ('Camp Verde', 9451, '34.56970', '-111.85620'), ('Chino Valley', 7835, '34.76320', '-112.45470'), ('Clarkdale', 3422, '34.75970', '-112.05650'), ('Congress', 1717, '34.16129', '-112.85109'), ('Cordes', 6295, '34.30462', '-112.16628'), ('Cordes Junction', 6295, '34.33220', '-112.12100'), ('Cornville', 3335, '34.72180', '-111.90780'), ('Cottonwood', 9179, '34.73450', '-112.02440'), ('Cottonwood-Verde Village', 10610, '34.71110', '-111.99440'), ('Dewey-Humboldt', 6295, '34.53260', '-112.25180'), ('Jerome', 329, '34.74670', '-112.10610'), ('Kirkland', 33938, '34.41928', '-112.71018'), ('Lake Montezuma', 3344, '34.63469', '-111.76997'), ('Mayer', 1408, '34.39791', '-112.23695'), ('McGuireville', 3344, '34.63717', '-111.81362'), ('Middle Verde', 9451, '34.62044', '-111.88849'), ('Page Springs', 3335, '34.76921', '-111.89141'), ('Paulden', 3420, '34.88628', '-112.46819'), ('Poland Junction', 6295, '34.45408', '-112.26749'), ('Rimrock', 3344, '34.65140', '-111.74464'), ('Rock Springs', 2697, '34.05143', '-112.14650'), ('Skull Valley', 33938, '34.49983', '-112.68355'), ('Wagoner', 5082, '34.21671', '-112.53356'), ('Walnut Grove', 33938, '34.28516', '-112.54748'), ('Wilhoit', 664, '34.42548', '-112.59458'), ('Yava', 1578, '34.47288', '-112.89179')], 'partOfState': 'west central', 'wfo': 'FGZ'}, +'AZZ038': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Big Park', 5245, '34.78020', '-111.76180'), ('Sedona', 10192, '34.85930', '-111.79510'), ('Village At Oak Cre', 5245, '34.77960', '-111.76293')], 'partOfState': 'west central', 'wfo': 'FGZ'}, +'AZZ039': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Jadito', 260, '35.77379', '-110.13624'), ('Navajo National Monument', 568, '36.76079', '-110.49675'), ('Shonto', 568, '36.58800', '-110.65420'), ('Steamboat Canyon', 581, '35.74938', '-109.85915')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ040': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Castle Butte', 4917, '35.30670', '-110.34577'), ('Cedar Springs', 1108, '35.45502', '-110.36377'), ('Chambers', 1505, '35.18921', '-109.43312'), ('Cornfields', 1505, '35.65189', '-109.67858'), ('Dilkon', 1265, '35.38498', '-110.32323'), ('Greasewood', 581, '35.52800', '-109.86010'), ('Indian Wells', 581, '35.40739', '-110.08518'), ('Kykotsmovi Village', 776, '35.87420', '-110.62270'), ('Moenkopi', 901, '36.11090', '-111.22220'), ('Petrified Forest National Park', 4917, '35.06737', '-109.77985'), ('Polacca', 1108, '35.83560', '-110.36560'), ('Seba Dalkai', 814, '35.50157', '-110.44849'), ('Shongopovi', 632, '35.81810', '-110.53400'), ('Sunrise Springs', 581, '35.60280', '-109.74242'), ('White Cone', 581, '35.60536', '-110.06657')], 'partOfState': 'north central', 'wfo': 'FGZ'}, +'AZZ501': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Ajo', 3705, '32.38720', '-112.86840')], 'partOfState': 'south central', 'wfo': 'TWC'}, +'AZZ502': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Chuichu', 339, '32.74480', '-111.79720'), ('Pisinemo', 237, '32.03780', '-112.32030'), ('Santa Rosa', 438, '32.33480', '-112.04540'), ('Sells', 2799, '31.91850', '-111.87640')], 'partOfState': 'south central', 'wfo': 'TWC'}, +'AZZ503': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Nogales', 20878, '31.36370', '-110.93260'), ('Patagonia', 881, '31.54330', '-110.74890'), ('Rio Rico', 1407, '31.47980', '-110.97560')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZZ504': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Avra Valley', 5038, '32.43790', '-111.31470'), ('Catalina', 7025, '32.47680', '-110.90020'), ('Green Valley', 17283, '31.84850', '-111.00980'), ('Marana', 13556, '32.41440', '-111.17280'), ('Oro Valley', 29700, '32.42500', '-110.96470'), ('Picture Rocks', 8139, '32.34580', '-111.24570'), ('Three Points', 5273, '32.06750', '-111.27840'), ('Tucson', 486699, '32.19580', '-110.89170')], 'partOfState': 'south central', 'wfo': 'TWC'}, +'AZZ505': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Eloy', 10375, '32.74500', '-111.60650')], 'partOfState': 'south central', 'wfo': 'TWC'}, +'AZZ506': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Dudleyville', 1323, '32.91430', '-110.73380'), ('Kearny', 2249, '33.05620', '-110.90600'), ('Mammoth', 1762, '32.72150', '-110.64350'), ('Oracle', 3563, '32.61880', '-110.78420'), ('San Manuel', 4375, '32.61400', '-110.63620')], 'partOfState': 'south central', 'wfo': 'TWC'}, +'AZZ507': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Benson', 4711, '31.96220', '-110.30310'), ('Huachuca City', 1751, '31.63210', '-110.34080'), ('Sierra Vista', 37775, '31.56510', '-110.32250'), ('St. David', 1744, '31.90010', '-110.22940'), ('Tombstone', 1504, '31.71730', '-110.06220')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZZ508': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Douglas', 14312, '31.34270', '-109.52820'), ('Pirtleville', 1550, '31.36170', '-109.56690'), ('Willcox', 3733, '32.25070', '-109.83520')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZZ509': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bylas', 1219, '33.13060', '-110.11010'), ('Clifton', 2596, '33.02350', '-109.29050'), ('Duncan', 812, '32.73630', '-109.09180'), ('Morenci', 1879, '33.05300', '-109.32950'), ('Pima', 1989, '32.88810', '-109.83330'), ('Safford', 9232, '32.83120', '-109.69810'), ('Thatcher', 4022, '32.83840', '-109.75900')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZZ510': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZZ511': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [], 'partOfState': 'south central', 'wfo': 'TWC'}, +'AZZ512': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZZ513': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [('Bisbee', 6090, '31.40460', '-109.91750')], 'partOfState': 'southeast', 'wfo': 'TWC'}, +'AZZ514': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [], 'partOfState': 'south central', 'wfo': 'TWC'}, +'AZZ515': {'fullStateName': 'Arizona', 'state': 'AZ', 'cities': [], 'partOfState': 'south central', 'wfo': 'TWC'}, +'CAZ001': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Arcata', 16651, '40.87000', '-124.08000'), ('Arcata Arpt', 13599, '40.98000', '-124.10000'), ('Bayview', 2359, '40.76000', '-124.18000'), ('Blue Lake', 1135, '40.88000', '-123.99000'), ('Capetown', 1382, '40.47000', '-124.37000'), ('Carlotta', 1209, '40.53000', '-124.05000'), ('Crescent City', 4006, '41.75000', '-124.20000'), ('Cutten', 2933, '40.77000', '-124.14000'), ('Eureka', 26128, '40.80000', '-124.16000'), ('Fernbridge', 10497, '40.62000', '-124.20000'), ('Ferndale', 1382, '40.58000', '-124.26000'), ('Fieldbrook', 13599, '40.97000', '-124.03000'), ('Fortuna', 10497, '40.59000', '-124.14000'), ('Freshwater', 4459, '40.77000', '-124.07000'), ('Ft Dick', 4028, '41.87000', '-124.15000'), ('Humboldt Hill', 3246, '40.73000', '-124.19000'), ('Hydesville', 1209, '40.55000', '-124.09000'), ('Klamath Glen', 651, '41.52000', '-124.00000'), ('Kneeland', 1135, '40.75000', '-123.98000'), ('Loleta', 1382, '40.63000', '-124.22000'), ('Myrtletown', 4459, '40.79000', '-124.13000'), ('Orick', 311, '41.28000', '-124.07000'), ('Pine Hills', 3108, '40.73000', '-124.15000'), ('Requa', 651, '41.55000', '-124.07000'), ('Rio Dell', 3174, '40.50000', '-124.11000'), ('Rohnerville', 10497, '40.57000', '-124.13000'), ('Samoa', 26128, '40.82000', '-124.18000'), ('Scotia', 3174, '40.48000', '-124.10000'), ('Shelter Cove', 1188, '40.03000', '-124.05000'), ('Smith River', 2143, '41.93000', '-124.15000'), ('Westhaven-Moonston', 1044, '41.04000', '-124.10000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAZ002': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Boonville', 15497, '39.00000', '-123.37000'), ('Branscomb', 1301, '39.65000', '-123.63000'), ('Comptche', 7026, '39.27000', '-123.60000'), ('Fort Bragg', 7026, '39.44000', '-123.80000'), ('Gualala', 474, '38.77000', '-123.53000'), ('Manchester', 474, '38.97000', '-123.68000'), ('Navarro', 474, '39.15000', '-123.53000'), ('Philo', 15497, '39.07000', '-123.43000'), ('Point Arena', 474, '38.91000', '-123.69000'), ('Rockport', 7026, '39.75000', '-123.82000'), ('Yorkville', 6831, '38.90000', '-123.22000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAZ003': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alderpoint', 1188, '40.18000', '-123.60000'), ('Benbow', 1188, '40.07000', '-123.78000'), ('Blocksburg', 1188, '40.28000', '-123.63000'), ('Briceland', 1188, '40.10000', '-123.90000'), ('Bridgeville', 1209, '40.47000', '-123.80000'), ('Bull Creek', 3174, '40.35000', '-124.03000'), ('Dinsmore', 1743, '40.48000', '-123.60000'), ('Ettersburg', 1188, '40.13000', '-124.00000'), ('Ft Seward', 1188, '40.22000', '-123.65000'), ('Garberville', 1188, '40.10000', '-123.80000'), ('Gasquet', 4006, '41.85000', '-123.97000'), ('Honeydew', 3174, '40.23000', '-124.12000'), ('Maple Creek', 1135, '40.77000', '-123.87000'), ('Miranda', 1188, '40.23000', '-123.82000'), ('Myers Flat', 1188, '40.27000', '-123.88000'), ('Orleans', 1743, '41.30000', '-123.53000'), ('Pepperwood', 3174, '40.45000', '-123.98000'), ('Petrolia', 3174, '40.32000', '-124.28000'), ('Redway', 1188, '40.12000', '-123.82000'), ('Richardson Grove', 1188, '40.02000', '-123.78000'), ('Ruth', 2315, '40.28000', '-123.40000'), ('Shively', 3174, '40.43000', '-123.97000'), ('Weott', 1188, '40.33000', '-123.92000'), ('Whitehorn', 1188, '40.02000', '-123.92000'), ('Willow Creek', 1743, '40.88000', '-123.67000'), ('Zenia', 1188, '40.20000', '-123.48000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAZ004': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Bar', 2315, '40.73000', '-123.25000'), ('Burnt Ranch', 1743, '40.82000', '-123.47000'), ('Carrville', 3370, '41.07000', '-122.72000'), ('Del Loma', 2315, '40.78000', '-123.33000'), ('Denny', 1743, '40.95000', '-123.38000'), ('Douglas City', 3370, '40.65000', '-122.95000'), ('Forest Glen', 2315, '40.38000', '-123.32000'), ('Hayfork', 2315, '40.57000', '-123.13000'), ('Helena', 3370, '40.77000', '-123.13000'), ('Hoopa', 1743, '41.05000', '-123.67000'), ('Hyampom', 2315, '40.62000', '-123.45000'), ('Junction City', 3370, '40.73000', '-123.05000'), ('Lewiston', 1305, '40.70000', '-122.80000'), ('Peanut', 2315, '40.47000', '-123.17000'), ('Salyer', 1743, '40.90000', '-123.57000'), ('Trinity Center', 1305, '41.00000', '-122.70000'), ('Weaverville', 3554, '40.77000', '-122.95000'), ('Weitchpec', 1743, '41.18000', '-123.70000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAZ006': {'fullStateName': 'California', 'state': 'CA', 'cities': [('San Francisco', 0, '37.77493', '-122.41942')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ013': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Bend', 3217, '41.02080', '-121.91000'), ('Castella', 1923, '41.13860', '-122.31660'), ('Castle Crag', 1923, '41.09460', '-122.29080'), ('Fisher', 1923, '41.03640', '-122.39220'), ('French Gulch', 1305, '40.70080', '-122.63720'), ('Lakehead', 4340, '40.90530', '-122.37810'), ('Lake Mccloud', 1343, '41.13110', '-122.06940'), ('Mountain Gate', 4340, '40.71640', '-122.33050'), ("O'brien", 4340, '40.81220', '-122.32310'), ('Pollard Flat', 1923, '40.99580', '-122.41720'), ('Shasta Dam', 4340, '40.71500', '-122.41660'), ('Sims', 1923, '41.07190', '-122.35390'), ('Sugarloaf', 4340, '40.85830', '-122.39580'), ('Vollmers', 4340, '40.94310', '-122.43890'), ('Whiskeytown', 4340, '40.63890', '-122.55860')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAZ014': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Cassel', 3217, '40.91920', '-121.54670'), ('Clark Creek', 3217, '41.03780', '-121.66860'), ('Dana', 3217, '41.11170', '-121.56360'), ('Fall River Mills', 3217, '41.00470', '-121.43720'), ('Glenburn', 3217, '41.06140', '-121.48920'), ('Johnson Park', 3217, '40.91770', '-121.62610'), ('McArthur', 3217, '41.05030', '-121.39810'), ('Old Station', 3217, '40.67530', '-121.42970')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAZ015': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Anderson', 9022, '40.44990', '-122.29420'), ('Black Butte Dam', 6281, '39.81660', '-122.33530'), ('Black Butte Lake', 6281, '39.81750', '-122.33670'), ('Black Butte Summit', 6281, '39.81550', '-122.35170'), ('Blossom', 13147, '40.17750', '-122.42220'), ('Centerville', 80865, '40.51830', '-122.48420'), ('Central Valley', 9008, '40.67960', '-122.37490'), ('Cloverdale', 80865, '40.47360', '-122.47470'), ('Corning', 6741, '39.92630', '-122.18200'), ('Cottonwood', 2960, '40.39030', '-122.28000'), ('Dairyville', 13147, '40.25530', '-122.20750'), ('Flournoy', 6741, '39.92050', '-122.43500'), ('Henleyville', 6741, '39.96190', '-122.32550'), ('Igo', 80865, '40.50550', '-122.54060'), ('Keswick', 4340, '40.62250', '-122.46470'), ('Los Molinos', 1952, '40.02760', '-122.09720'), ('Millville', 9022, '40.54940', '-122.17420'), ('Olinda', 9022, '40.44390', '-122.40640'), ('Palo Cedro', 9022, '40.56390', '-122.23780'), ('Paskenta', 6741, '39.88470', '-122.54470'), ('Pine Grove', 9008, '40.66500', '-122.35220'), ('Red Bluff', 13147, '40.17380', '-122.24040'), ('Redding', 80865, '40.57240', '-122.36490'), ('Richfield', 6741, '39.97500', '-122.17550'), ('Rosewood', 2960, '40.26970', '-122.55530'), ('Vina', 1952, '39.93300', '-122.05270')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAZ016': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Afton', 5402, '39.42000', '-121.96530'), ('Arboga', 11061, '39.05140', '-121.55470'), ('Arbuckle', 2332, '39.01630', '-122.06060'), ('Artois', 6220, '39.61970', '-122.19280'), ('Bangor', 2075, '39.38860', '-121.40420'), ('Beale AFB', 5115, '39.11370', '-121.36130'), ('Biggs', 1793, '39.41390', '-121.70920'), ('Bluegum', 6220, '39.58360', '-122.19220'), ('Browns Valley', 2075, '39.24220', '-121.40800'), ('Butte City', 5220, '39.46470', '-121.98890'), ('Chico', 59954, '39.75380', '-121.80690'), ('Chrome', 6281, '39.72920', '-122.54830'), ('Codora', 6220, '39.45890', '-122.02110'), ('College City', 2332, '39.00580', '-122.00830'), ('Colusa', 5402, '39.20610', '-122.01130'), ('Colusa National Wildlife Refuge', 5402, '39.15750', '-122.04220'), ('Cranmore', 2885, '38.98800', '-121.80550'), ('Dayton', 5220, '39.64860', '-121.87110'), ('Delevan', 6220, '39.35420', '-122.19000'), ('Durham', 5220, '39.59950', '-121.82770'), ('Elk Creek', 6220, '39.60530', '-122.53800'), ('Fruto', 6220, '39.59000', '-122.44890'), ('Glenn', 6220, '39.52190', '-122.01280'), ('Greenwood', 6281, '39.69610', '-122.19330'), ('Gridley', 5382, '39.36440', '-121.69520'), ('Hamilton City', 1903, '39.74230', '-122.01170'), ('Hammonton', 6912, '39.19300', '-121.41970'), ('Iowa City', 2075, '39.28330', '-121.47640'), ('Linda', 13474, '39.12280', '-121.55470'), ('Live Oak', 6229, '39.27580', '-121.65880'), ('Loma Rica', 2075, '39.31870', '-121.40040'), ('Marysville', 12268, '39.15160', '-121.58230'), ('Maxwell', 3670, '39.27640', '-122.19030'), ('Meridian', 5402, '39.14330', '-121.91330'), ('Newville', 6281, '39.79110', '-122.52720'), ('Nord', 1903, '39.77970', '-121.95610'), ('Olivehurst', 11061, '39.08430', '-121.54750'), ('Ordbend', 1903, '39.62970', '-122.00440'), ('Orland', 6281, '39.74570', '-122.18720'), ('Oroville', 13004, '39.50160', '-121.56590'), ('Oroville Dam', 8680, '39.53880', '-121.48440'), ('Palermo', 5720, '39.43670', '-121.53050'), ('Pennington', 5382, '39.29110', '-121.79220'), ('Richardson Springs', 59954, '39.84000', '-121.77580'), ('Smartville', 1387, '39.20750', '-121.29750'), ('South Yuba City', 12651, '39.11650', '-121.63800'), ('Stoney Gorge Reservoir', 6220, '39.58500', '-122.53170'), ('Sutter', 2885, '39.15930', '-121.74620'), ('Sycamore', 5402, '39.13380', '-121.94080'), ('Thermalito', 6045, '39.49110', '-121.60800'), ('Tierra Buena', 4587, '39.15860', '-121.66770'), ('Timbuctoo', 6912, '39.21690', '-121.31750'), ('Tisdale', 2885, '39.04050', '-121.78500'), ('Tudor', 11061, '39.00500', '-121.62250'), ('Wheatland', 2275, '39.01300', '-121.42670'), ('Williams', 3670, '39.15460', '-122.13680'), ('Willows', 6220, '39.51590', '-122.19890'), ('Wyandotte', 5720, '39.45810', '-121.46660'), ('Yuba City', 36758, '39.13550', '-121.62270')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAZ017': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Antelope', 17426, '38.70830', '-121.32880'), ('Arco Arena', 10466, '38.65160', '-121.52220'), ('Arden-Arcade', 96025, '38.60110', '-121.37670'), ('Brooks', 1858, '38.74160', '-122.14690'), ('Bruceville', 59984, '38.33580', '-121.41610'), ('Cadenasso', 1858, '38.71440', '-122.12800'), ('Cal Expo', 407018, '38.59110', '-121.43420'), ('Capay', 1858, '38.71610', '-122.04690'), ('Capay Dam', 1858, '38.71330', '-122.08330'), ('Carbondale', 7129, '38.40890', '-121.00580'), ('Carmichael', 49742, '38.63390', '-121.31880'), ('Citrus Heights', 85071, '38.69170', '-121.28670'), ('Clarksville', 18016, '38.65500', '-121.05140'), ('Courtland', 34309, '38.33110', '-121.56750'), ('Davis', 60308, '38.55490', '-121.73590'), ('Dixon', 16103, '38.44470', '-121.82370'), ('Dunnigan', 2332, '38.88530', '-121.96860'), ('El Dorado Hills', 18016, '38.68590', '-121.08100'), ('Elk Grove', 59984, '38.40080', '-121.36750'), ('El Macero', 60308, '38.54690', '-121.69300'), ('Elverta', 10466, '38.71380', '-121.46160'), ('Esparto', 1858, '38.69220', '-122.01610'), ('Fair Oaks', 28008, '38.64850', '-121.24720'), ('Florin', 27653, '38.49610', '-121.40770'), ('Folsom', 51884, '38.67670', '-121.14620'), ('Forest Home', 7129, '38.46500', '-120.96310'), ('Franklin', 34309, '38.37920', '-121.45330'), ('Freeport', 36468, '38.46190', '-121.50050'), ('Galt', 19472, '38.26860', '-121.30120'), ('Granite Bay', 6260, '38.76330', '-121.16270'), ('Guinda', 1858, '38.82920', '-122.19280'), ('Ione', 7129, '38.35960', '-120.94140'), ('Karnak', 49151, '38.78500', '-121.65440'), ('Kirkville', 49151, '38.90880', '-121.79170'), ('Knights Landing', 49151, '38.79970', '-121.71720'), ('Laguna', 34309, '38.42110', '-121.42270'), ('Latrobe', 4193, '38.55970', '-120.98270'), ('Lincoln', 11205, '38.89920', '-121.31650'), ('Loomis', 6260, '38.80970', '-121.19430'), ('Madison', 1858, '38.67940', '-121.96720'), ('Mather AFB', 55060, '38.54840', '-121.27720'), ('Natomas', 51884, '38.65500', '-121.18030'), ('Newcastle', 12462, '38.87400', '-121.13200'), ('Nicolaus', 11061, '38.90330', '-121.57670'), ('North Highlands', 44187, '38.66770', '-121.38040'), ('Orangevale', 26705, '38.68830', '-121.21730'), ('Pleasant Grove', 10466, '38.82380', '-121.48270'), ('Raley Field', 31615, '38.57930', '-121.51860'), ('Rancho Cordova', 55060, '38.59540', '-121.30020'), ('Rancho Murieta', 4193, '38.50190', '-121.09360'), ('Rancho Seco Park', 4551, '38.33890', '-121.09310'), ('Rio Linda', 10466, '38.68760', '-121.45820'), ('Robbins', 49151, '38.87030', '-121.70530'), ('Rocklin', 36330, '38.80240', '-121.24030'), ('Rosemont', 22904, '38.54720', '-121.35080'), ('Roseville', 79921, '38.75980', '-121.29370'), ('Rumsey', 2332, '38.88830', '-122.23640'), ('Sacramento', 407018, '38.56690', '-121.46740'), ('Sacramento Zoo', 407018, '38.53920', '-121.50250'), ('Sheldon', 59984, '38.43080', '-121.29920'), ('Sheridan', 2275, '38.97970', '-121.37440'), ('Sloughhouse', 4551, '38.49580', '-121.19280'), ('Tancred', 1858, '38.76530', '-122.16250'), ('Thornton', 34309, '38.33610', '-121.42360'), ('Vacaville', 88625, '38.36230', '-121.96610'), ('Verona', 49151, '38.78610', '-121.61750'), ('West Point', 34309, '38.39920', '-121.52640'), ('West Sacramento', 31615, '38.55670', '-121.54780'), ('Wilton', 4551, '38.41900', '-121.20760'), ('Winters', 6125, '38.53210', '-121.98020'), ('Woodland', 49151, '38.67690', '-121.76660'), ('Yolo', 49151, '38.73190', '-121.80660'), ('Yolo County Airport', 60308, '38.57890', '-121.85640'), ('Yolo Fliers Club', 49151, '38.68000', '-121.86890'), ('Zamora', 49151, '38.79670', '-121.88080')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAZ018': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Benicia', 26865, '38.07180', '-122.15410'), ('Collinsville', 56769, '38.07690', '-121.84890'), ('Cordelia', 96178, '38.21050', '-122.13470'), ('Cordelia Junction', 96178, '38.21690', '-122.13860'), ('Country Club', 9462, '37.96900', '-121.33970'), ('Denverton', 26118, '38.22470', '-121.89640'), ('Fairfield', 96178, '38.25250', '-122.04170'), ('Isleton', 828, '38.16140', '-121.60430'), ('Liberty Farms', 4571, '38.31300', '-121.69330'), ('Montezuma', 56769, '38.09050', '-121.87170'), ('Paintersville', 828, '38.32000', '-121.57500'), ('Rio Vista', 4571, '38.16510', '-121.69470'), ('Rockville', 96178, '38.24420', '-122.12110'), ('Suisun City', 26118, '38.24570', '-122.00980'), ('Vallejo', 116760, '38.10750', '-122.23330'), ('Walnut Grove', 828, '38.24220', '-121.51060')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAZ019': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Acampo', 3456, '38.17470', '-121.27750'), ('August', 7808, '37.97890', '-121.26100'), ('Buena Vista', 7129, '38.29440', '-120.91220'), ('Camanche Reservoir', 3179, '38.22500', '-121.02160'), ('Camanche Village', 7129, '38.27000', '-120.97220'), ('Campo Seco', 3989, '38.22720', '-120.85110'), ('Ceres', 34609, '37.59940', '-120.95620'), ('Copper Cove Village', 2363, '37.95970', '-120.63440'), ('Denair', 3446, '37.52960', '-120.80010'), ('Escalon', 5963, '37.78950', '-120.99620'), ('Eugene', 15503, '37.89300', '-120.84580'), ('French Camp', 4109, '37.88280', '-121.27870'), ('Garden Acres', 9747, '37.96390', '-121.22830'), ('Hodson', 2409, '37.99670', '-120.68440'), ('Hughson', 3980, '37.60100', '-120.86670'), ('Kennedy', 9747, '37.93000', '-121.25170'), ('Keyes', 4575, '37.56420', '-120.91740'), ('Keystone', 3017, '37.83530', '-120.50660'), ('La Grange', 3017, '37.66360', '-120.46250'), ('Lathrop', 10445, '37.82090', '-121.27660'), ('Lincoln Village', 4216, '38.00420', '-121.33350'), ('Linden', 1103, '38.01890', '-121.09990'), ('Lockeford', 3179, '38.15160', '-121.15550'), ('Lodi', 56999, '38.12320', '-121.29440'), ('Manteca', 49258, '37.80230', '-121.22350'), ('Milton', 2615, '38.03190', '-120.85110'), ('Modesto', 188856, '37.65980', '-120.99390'), ('Morada', 3726, '38.03870', '-121.24470'), ('Newman', 7093, '37.31510', '-121.02140'), ('Oakdale', 15503, '37.76820', '-120.85180'), ('Patterson', 11606, '37.47430', '-121.12760'), ('Ripon', 10146, '37.73510', '-121.12650'), ('Riverbank', 15826, '37.73280', '-120.94510'), ('Salida', 12560, '37.70840', '-121.08480'), ('Stockton', 243771, '37.96990', '-121.30670'), ('Telegraph City', 15503, '37.93440', '-120.73880'), ('Tracy', 56929, '37.73700', '-121.43190'), ('Turlock', 55810, '37.50490', '-120.85040'), ('Valley Springs', 2615, '38.19160', '-120.82810'), ('Victor', 3179, '38.13810', '-121.20500'), ('Waterford', 6924, '37.64560', '-120.76460'), ('Waterloo', 3726, '38.03470', '-121.18580'), ('Woodbridge', 3456, '38.16340', '-121.31730')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAZ030': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Cottonwood Visitor', 5402, '33.74830', '-115.78880'), ('Lost Horse-Keys Village', 5120, '33.94080', '-116.21250')], 'partOfState': 'southern', 'wfo': 'PSR'}, +'CAZ031': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Blythe', 12155, '33.60940', '-114.59010'), ('East Blythe', 3, '33.61170', '-114.57730'), ('Martinez Lake', 20478, '32.97000', '-114.47000'), ('Palo Verde', 12155, '33.42420', '-114.72920'), ('Ripley', 12155, '33.52500', '-114.66660'), ('Winterhaven', 54923, '32.73900', '-114.62000')], 'partOfState': 'southern', 'wfo': 'PSR'}, +'CAZ032': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Chiriaco Summit', 5402, '33.66660', '-115.71600'), ('Desert Center', 1143, '33.71600', '-115.40000'), ('Eagle Mtn', 1143, '33.85000', '-115.48300'), ('Midland', 12155, '33.86660', '-114.80000')], 'partOfState': 'southern', 'wfo': 'PSR'}, +'CAZ033': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alamorio', 22052, '32.97000', '-115.45000'), ('Bonds Corner', 5612, '32.69000', '-115.34000'), ('Brawley', 22052, '32.97980', '-115.53340'), ('Calexico', 27109, '32.67850', '-115.50080'), ('Calipatria', 7289, '33.12720', '-115.51760'), ('Coolidge Springs', 5402, '33.40000', '-116.05000'), ('Coyote Wells', 1624, '32.75000', '-115.97000'), ('Desert Shores', 5402, '33.41500', '-116.04160'), ('Dixieland', 1624, '32.79000', '-115.78000'), ('El Centro', 37835, '32.78710', '-115.55940'), ('Glamis', 5612, '33.00000', '-115.08000'), ("Gordon's Well", 5282, '32.71000', '-114.96000'), ('Heber', 2988, '32.73410', '-115.52010'), ('Holtville', 5612, '32.81370', '-115.37730'), ('Imperial', 7560, '32.84000', '-115.56000'), ('Imperial Hot Mineral Springs', 1143, '33.42000', '-115.69000'), ('Mountain Spring', 1624, '32.67000', '-116.10000'), ('Niland', 1143, '33.23850', '-115.51310'), ('Ocotillo', 1624, '32.74000', '-116.00000'), ('Plaster City', 1624, '32.79000', '-115.85000'), ('Salton City', 5402, '33.26250', '-115.95000'), ('Seeley', 1624, '32.78900', '-115.68020'), ('Westmorland', 2131, '33.03680', '-115.62150'), ('Wiest', 7289, '33.06000', '-115.44000'), ('Winona', 5402, '33.24000', '-115.94000')], 'partOfState': 'southeast', 'wfo': 'PSR'}, +'CAZ034': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Arroyo Grande', 15851, '35.12530', '-120.58360'), ('Cambria', 6232, '35.54650', '-121.07990'), ('Cayucos', 2943, '35.43800', '-120.88480'), ('Hearst Castle', 6232, '35.69000', '-121.17000'), ('Morro Bay', 10350, '35.36000', '-120.83000'), ('Nipomo', 12626, '35.03240', '-120.48300'), ('Pismo Beach', 11656, '35.14000', '-120.63000'), ('San Luis Obispo', 44174, '35.27290', '-120.66480')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ035': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Buellton', 3828, '34.62590', '-120.20120'), ('Guadalupe', 5659, '34.96350', '-120.57470'), ('Lompoc', 41103, '34.66060', '-120.46960'), ('Point Arguello', 41103, '34.57000', '-120.63000'), ('Santa Maria', 77423, '34.93700', '-120.43690'), ('Vandenberg AFB', 6151, '34.74930', '-120.51730'), ('Vandenberg Village', 5802, '34.71120', '-120.46260')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ036': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Lake Cachuma', 4584, '34.58280', '-119.98030'), ('Santa Ynez', 4584, '34.60800', '-120.10290'), ('Solvang', 5332, '34.59250', '-120.13930')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ037': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Atascadero', 26411, '35.48550', '-120.68790'), ('California Valley', 1938, '35.32000', '-120.00000'), ('Lake Nacimiento', 2176, '35.72850', '-120.87850'), ('Paso Robles', 24297, '35.63230', '-120.66420'), ('San Miguel', 1427, '35.75170', '-120.69220'), ('Santa Margarita', 44174, '35.38000', '-120.62000'), ('Shandon', 24297, '35.65000', '-120.38000'), ('Templeton', 4687, '35.55390', '-120.70840')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ038': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Cuyama', 1865, '34.94000', '-119.65000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ039': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Carpinteria', 14194, '34.38790', '-119.51320'), ('Gaviota', 5332, '34.47170', '-120.21480'), ('Goleta', 18344, '34.43580', '-119.82760'), ('Santa Barbara', 92325, '34.42850', '-119.72190')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ040': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Camarillo', 57077, '34.22250', '-119.02940'), ('Oxnard', 170358, '34.19740', '-119.21370'), ('Point Mugu', 57077, '34.09000', '-119.06000'), ('Port Hueneme', 21845, '34.16210', '-119.20340'), ('Ventura', 100916, '34.26590', '-119.25840')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ041': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Beverly Hills', 33784, '34.07930', '-118.40140'), ('Compton', 93493, '33.89250', '-118.22650'), ('Culver City', 38816, '34.00580', '-118.39610'), ('Downey', 107323, '33.93820', '-118.12990'), ('Hawthorne', 84112, '33.91470', '-118.34700'), ('Hermosa Beach', 63261, '33.86000', '-118.40000'), ('Hollywood', 35716, '34.10000', '-118.33000'), ('Huntington Park', 61348, '33.98030', '-118.21510'), ('Inglewood', 112580, '33.95580', '-118.34360'), ('Lakewood', 79345, '33.84880', '-118.12200'), ('Long Beach', 461522, '33.78890', '-118.15980'), ('Los Angeles', 10958, '34.04000', '-118.30000'), ('Lynwood', 69845, '33.92370', '-118.20140'), ('Manhattan Beach', 33852, '33.89510', '-118.41000'), ('Norwalk', 103298, '33.90690', '-118.08250'), ('Palos Verdes Estates', 13340, '33.78780', '-118.39620'), ('Point Dume', 2809, '34.01230', '-118.80160'), ('Redondo Beach', 63261, '33.83000', '-118.39000'), ('San Pedro', 1871, '33.75000', '-118.33000'), ('Santa Monica', 84084, '34.01340', '-118.49320'), ('Torrance', 137946, '33.83480', '-118.34040')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ042': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aliso Viejo', 40166, '33.56750', '-117.72530'), ('Anaheim', 328014, '33.83890', '-117.87230'), ('Brea', 35410, '33.92360', '-117.86720'), ('Buena Park', 78282, '33.85770', '-118.00330'), ('Costa Mesa', 108724, '33.66680', '-117.91260'), ('Coto De Caza', 13057, '33.60410', '-117.58600'), ('Cypress', 46229, '33.81630', '-118.03790'), ('El Toro', 62685, '33.64710', '-117.68270'), ('El Toro Station', 6869, '33.67920', '-117.71840'), ('Fountain Valley', 54978, '33.71090', '-117.95030'), ('Fullerton', 126003, '33.88480', '-117.92810'), ('Garden Grove', 165196, '33.77880', '-117.95940'), ('Huntington Beach', 189594, '33.69180', '-118.00810'), ('Irvine', 143072, '33.66210', '-117.79580'), ('Laguna Beach', 23727, '33.53990', '-117.76070'), ('Laguna Hills', 31178, '33.59980', '-117.71090'), ('Laguna Niguel', 61891, '33.52650', '-117.70430'), ('La Habra', 58974, '33.92740', '-117.95060'), ('La Palma', 15408, '33.85090', '-118.03870'), ('Los Alamitos', 11536, '33.79860', '-118.05810'), ('Mission Viejo', 93102, '33.61240', '-117.65160'), ('Orange', 128821, '33.80530', '-117.82400'), ('Placentia', 46488, '33.88160', '-117.85480'), ('Portola Hills', 6391, '33.68370', '-117.63200'), ('Rancho Santa Marga', 47214, '33.64070', '-117.60220'), ('Rossmoor', 10298, '33.78950', '-118.07890'), ('San Clemente', 49936, '33.44720', '-117.61110'), ('San Juan Capistrano', 33826, '33.50160', '-117.65260'), ('Santa Ana', 337977, '33.73640', '-117.88210'), ('Seal Beach', 24157, '33.75850', '-118.07580'), ('Stanton', 37403, '33.80040', '-117.99090'), ('Trabuco Highlands', 3191, '33.61490', '-117.56550'), ('Tustin', 67504, '33.73000', '-117.81110'), ('Tustin Foothills', 24044, '33.76450', '-117.79300'), ('Villa Park', 5999, '33.81850', '-117.81030'), ('Westminster', 88207, '33.75140', '-117.99310'), ('Yorba Linda', 58918, '33.88870', '-117.76630')], 'partOfState': 'southwest', 'wfo': 'SGX'}, +'CAZ043': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bonita', 12401, '32.66750', '-117.02990'), ('Camp Pendleton South', 11299, '33.23330', '-117.37350'), ('Carlsbad', 78247, '33.12380', '-117.28590'), ('Chula Vista', 54260, '32.64000', '-117.08330'), ('Coronado', 24100, '32.68580', '-117.18220'), ('Del Mar', 4389, '32.96490', '-117.26240'), ('Encinitas', 58014, '33.04770', '-117.26260'), ('Imperial Beach', 26992, '32.57020', '-117.11860'), ('Lake San Marcos', 4138, '33.11910', '-117.20910'), ('National City', 54260, '32.66600', '-117.09850'), ('Oceanside', 161029, '33.19580', '-117.37860'), ('San Diego', 54260, '32.71530', '-117.15640'), ('Solana Beach', 12979, '32.99580', '-117.25590'), ('Vista', 89857, '33.18880', '-117.23820')], 'partOfState': 'southwest', 'wfo': 'SGX'}, +'CAZ044': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Fillmore', 13643, '34.40020', '-118.91850'), ('Lake Casitas', 4199, '34.39000', '-119.34000'), ('Lake Piru', 1196, '34.47000', '-118.75000'), ('Ojai', 7862, '34.44910', '-119.24570'), ('Piru', 1196, '34.40730', '-118.79870'), ('Santa Paula', 28598, '34.35230', '-119.06930')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ045': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Moorpark', 31415, '34.28510', '-118.87760'), ('Simi Valley', 111351, '34.26300', '-118.75130'), ('Thousand Oaks', 117005, '34.19270', '-118.86760')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ046': {'fullStateName': 'California', 'state': 'CA', 'cities': [], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ048': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Banning', 23562, '33.93730', '-116.89210'), ('Beaumont', 11384, '33.93180', '-116.97850'), ('Bloomington', 19318, '34.05940', '-117.39780'), ('Calimesa', 7139, '33.99590', '-117.04510'), ('Canyon Lake', 9952, '33.68350', '-117.25340'), ('Cherry Valley', 5891, '33.97250', '-116.96530'), ('Chino', 67168, '34.00690', '-117.68600'), ('Chino Hills', 66787, '33.97480', '-117.74870'), ('Colton', 47662, '34.05790', '-117.32200'), ('Corona', 124966, '33.86790', '-117.56970'), ('East Hemet', 14823, '33.74000', '-116.93800'), ('Fontana', 128929, '34.09770', '-117.45730'), ('Glen Avon', 14853, '34.01740', '-117.48760'), ('Grand Terrace', 11626, '34.03060', '-117.31450'), ('Hemet', 58812, '33.73160', '-116.99780'), ('Highgrove', 3445, '34.01450', '-117.32800'), ('Highland', 44605, '34.11730', '-117.18910'), ('Home Gardens', 9461, '33.88090', '-117.51320'), ('Homeland', 3710, '33.74850', '-117.10860'), ('Lake Elsinore', 28928, '33.66900', '-117.32150'), ('Lakeland Village', 5626, '33.63830', '-117.34480'), ('Lakeview', 1619, '33.82810', '-117.12380'), ('Loma Linda', 18681, '34.04420', '-117.24900'), ('Los Serranos', 66787, '33.97380', '-117.70310'), ('March AFB', 370, '33.89130', '-117.26390'), ('Mentone', 7803, '34.06300', '-117.12280'), ('Mira Loma', 17617, '33.98460', '-117.51270'), ('Montclair', 33049, '34.07280', '-117.69660'), ('Moreno Valley', 142381, '33.92620', '-117.21030'), ('Murrieta', 44282, '33.55970', '-117.20960'), ('Murrieta Hot Springs', 2948, '33.56510', '-117.15080'), ('Muscoy', 8919, '34.15230', '-117.34570'), ('Norco', 24157, '33.92550', '-117.55120'), ('Nuevo', 4135, '33.80690', '-117.13700'), ('Ontario', 158007, '34.05440', '-117.60580'), ('Pedley', 11207, '33.97670', '-117.47060'), ('Perris', 36189, '33.79300', '-117.22310'), ('Quail Valley', 1639, '33.70540', '-117.25210'), ('Rancho Cucamonga', 127743, '34.12380', '-117.57020'), ('Redlands', 63591, '34.05790', '-117.17090'), ('Rialto', 91873, '34.11360', '-117.38700'), ('Riverside', 255166, '33.94040', '-117.39740'), ('Romoland', 2764, '33.74460', '-117.17170'), ('Rubidoux', 29180, '33.99550', '-117.42120'), ('San Antonio Height', 3122, '34.15430', '-117.65840'), ('San Bernardino', 185401, '34.13970', '-117.29230'), ('San Jacinto', 23779, '33.79270', '-116.96420'), ('Sedco Hills', 3078, '33.64000', '-117.28250'), ('Sun City', 17773, '33.71290', '-117.20250'), ('Sunnyslope', 4437, '34.01890', '-117.42270'), ('Temecula', 57716, '33.50270', '-117.12880'), ('Upland', 68393, '34.11880', '-117.65770'), ('Valle Vista', 10488, '33.75060', '-116.89610'), ('Wildomar', 14064, '33.60960', '-117.25150'), ('Winchester', 2155, '33.70890', '-117.08060'), ('Woodcrest', 8342, '33.88580', '-117.36200'), ('Yucaipa', 41207, '34.03310', '-117.04440')], 'partOfState': 'southern', 'wfo': 'SGX'}, +'CAZ050': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alpine', 13143, '32.84300', '-116.76110'), ('Bonsall', 3401, '33.28250', '-117.22020'), ('Bostonia', 15169, '32.81980', '-116.94570'), ('Camp Pendleton North', 8197, '33.31400', '-117.31460'), ('Casa De Oro-Mount Helix', 18874, '32.76540', '-116.93810'), ('El Cajon', 94869, '32.80250', '-116.96080'), ('Escondido', 133559, '33.13640', '-117.07130'), ('Fallbrook', 29100, '33.36860', '-117.23780'), ('Granite Hills', 3246, '32.80300', '-116.90380'), ('Harbison Canyon', 3645, '32.81940', '-116.82950'), ('Hidden Meadows', 3463, '33.22520', '-117.11170'), ('Jamul', 5920, '32.72020', '-116.88880'), ('Lakeside', 19560, '32.84900', '-116.90990'), ('La Mesa', 54749, '32.76960', '-117.01890'), ('Lemon Grove', 24918, '32.73340', '-117.03280'), ('Poway', 48044, '32.98550', '-117.01790'), ('Rainbow', 2026, '33.40520', '-117.14750'), ('Ramona', 15691, '33.03610', '-116.87010'), ('Rancho San Diego', 20155, '32.74730', '-116.93450'), ('San Diego Country', 9262, '33.00660', '-116.78280'), ('San Marcos', 54977, '33.13660', '-117.17310'), ('Santee', 52975, '32.85510', '-116.98270'), ('Spring Valley', 26663, '32.72080', '-116.98890'), ('Valley Center', 7323, '33.21740', '-117.01100')], 'partOfState': 'southwest', 'wfo': 'SGX'}, +'CAZ051': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Black Mountain', 44174, '35.39000', '-120.35000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ052': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Pine Mountain', 92325, '34.69700', '-119.65420'), ('Figueroa Mountain', 4584, '34.74330', '-119.98510'), ('Miranda Pine Mountain', 77423, '35.03780', '-120.03700')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ053': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Lockwood Valley', 2348, '34.75000', '-119.08000'), ('Reyes Peak', 3750, '34.63000', '-119.28000'), ('Topatopa Peak', 13643, '34.54000', '-118.99000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ054': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Acton', 2390, '34.48280', '-118.18250'), ('Big Pines', 3837, '34.37890', '-117.69010'), ('Castaic Lake', 1472, '34.65000', '-118.70000'), ('Falling Springs', 49415, '34.30170', '-117.83920'), ('Gorman', 2348, '34.80000', '-118.85000'), ('Mount Wilson', 10578, '34.22310', '-118.05870'), ('Pyramid Lake', 2348, '34.69000', '-118.80000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ055': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Bear City', 5779, '34.26630', '-116.84550'), ('Big Bear Lake', 5438, '34.24370', '-116.89450'), ('Crestline', 10218, '34.24670', '-117.29580'), ('Lake Arrowhead', 8934, '34.26230', '-117.18850'), ('Running Springs', 5125, '34.20970', '-117.11350'), ('Wrightwood', 3837, '34.35940', '-117.63030')], 'partOfState': 'southern', 'wfo': 'SGX'}, +'CAZ056': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Idyllwild-Pine Cove', 3504, '33.74730', '-116.72320')], 'partOfState': 'southern', 'wfo': 'SGX'}, +'CAZ057': {'fullStateName': 'California', 'state': 'CA', 'cities': [], 'partOfState': 'southwest', 'wfo': 'SGX'}, +'CAZ058': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Julian', 1621, '33.07310', '-116.58740'), ('Pine Valley', 1501, '32.85540', '-116.50120')], 'partOfState': 'southwest', 'wfo': 'SGX'}, +'CAZ059': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Lake Los Angeles', 11523, '34.61190', '-117.82690'), ('Lancaster', 118718, '34.69310', '-118.17640'), ('Littlerock', 1402, '34.52510', '-117.98480'), ('Palmdale', 116670, '34.60540', '-118.08630'), ('Pearblossom', 1402, '34.50000', '-117.90000'), ('Saddleback Butte State Park', 11523, '34.71000', '-117.82000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ060': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Adelanto', 18130, '34.56970', '-117.43690'), ('Apple Valley', 54239, '34.52930', '-117.21420'), ('George AFB', 64029, '34.58170', '-117.36650'), ('Hesperia', 62582, '34.41910', '-117.30240'), ('Mountain View Acre', 2521, '34.49680', '-117.34790'), ('Victorville', 64029, '34.52300', '-117.33160')], 'partOfState': 'southern', 'wfo': 'SGX'}, +'CAZ061': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bermuda Dunes', 6229, '33.74270', '-116.28840'), ('Cabazon', 2229, '33.91140', '-116.77170'), ('Cathedral City', 42647, '33.83080', '-116.46340'), ('Coachella', 22724, '33.68090', '-116.15230'), ('Desert Hot Springs', 16582, '33.95910', '-116.50020'), ('Indian Wells', 3816, '33.70540', '-116.34060'), ('Indio', 49116, '33.71980', '-116.22860'), ('La Quinta', 23694, '33.67140', '-116.29220'), ('Mecca', 5402, '33.57590', '-116.07170'), ('Palm Desert', 41155, '33.73320', '-116.37540'), ('Palm Desert Country', 41155, '33.74060', '-116.31470'), ('Palm Springs', 42807, '33.83020', '-116.54440'), ('Rancho Mirage', 13249, '33.75800', '-116.42560'), ('Thousand Palms', 5120, '33.82180', '-116.38580')], 'partOfState': 'southern', 'wfo': 'SGX'}, +'CAZ062': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Borrego Springs', 2535, '33.23870', '-116.35450')], 'partOfState': 'southwest', 'wfo': 'SGX'}, +'CAZ063': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alder Springs', 2509, '39.65000', '-122.72500'), ('Beegum', 2315, '40.34500', '-122.85690'), ('East Park Reservoir', 6220, '39.35750', '-122.51470'), ('Fouts Springs', 2509, '39.35330', '-122.66390'), ('Gravelly Valley Airport', 2509, '39.44970', '-122.95530'), ('Knob', 2315, '40.38890', '-122.98690'), ('Lodoga', 2402, '39.30190', '-122.48810'), ('Ono', 80865, '40.47530', '-122.61690'), ('Platina', 2315, '40.35970', '-122.89360'), ('Saddle Camp', 2315, '40.16660', '-122.80000'), ('Stoneyford', 6220, '39.37500', '-122.54300'), ('Yolla Bolly District', 2315, '40.36310', '-122.96420')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAZ064': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Adams', 1638, '38.85640', '-122.71860'), ('Anderson Springs', 1638, '38.77500', '-122.69190'), ('Barkerville', 2402, '39.15440', '-122.56140'), ('Buckingham Park', 2928, '39.01550', '-122.75690'), ('Clearlake', 13142, '38.95820', '-122.63160'), ('Clearlake Oaks', 2402, '39.02250', '-122.66510'), ('Clearlake Park', 13142, '38.96670', '-122.65000'), ('Cobb', 1638, '38.83780', '-122.72410'), ('Cortina Indian Ran', 3670, '39.01610', '-122.28670'), ('Ettawa Springs', 1638, '38.85110', '-122.69500'), ('Finley', 4820, '39.00440', '-122.87440'), ('Forest Lake', 1638, '38.81800', '-122.71670'), ('Glenhaven', 2402, '39.02640', '-122.73190'), ('Grimes', 13142, '39.07440', '-122.42250'), ('Hidden Valley Lake', 3777, '38.81110', '-122.56330'), ('Hobergs', 1638, '38.84360', '-122.72330'), ('Hough Springs', 2402, '39.16250', '-122.61110'), ('Indian Valley Reservation', 2402, '39.12530', '-122.54170'), ('Kelseyville', 2928, '38.95810', '-122.82450'), ('Knobcone Camp', 4820, '39.04360', '-123.03360'), ('Konocti Bay', 2402, '38.97080', '-122.72920'), ('Lakeport', 4820, '39.04230', '-122.91990'), ('Leesville', 3670, '39.18940', '-122.42250'), ('Loch Lomond', 1638, '38.86330', '-122.71830'), ('Lower Lake', 1755, '38.91120', '-122.61030'), ('Lucerne', 2870, '39.09030', '-122.79530'), ('Middletown', 3777, '38.75250', '-122.61390'), ('Mount Konocti', 2928, '38.97500', '-122.76530'), ('Nice', 2509, '39.12530', '-122.85050'), ('Pine Grove', 1638, '38.82830', '-122.73000'), ('Saratoga Springs', 2509, '39.17530', '-122.97970'), ('Seigler Springs', 1638, '38.87500', '-122.68750'), ('Soda Bay', 2928, '39.00560', '-122.79170'), ('Upper Lake', 2509, '39.16470', '-122.90940'), ('Whispering Pines', 1638, '38.81360', '-122.71140'), ('Wilbur Springs', 13142, '39.03940', '-122.41860'), ('Witter Springs', 2509, '39.19000', '-122.99030')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAZ066': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Bend', 1095, '39.69830', '-121.45970'), ('De Sabla Powerhous', 10569, '39.86970', '-121.63110'), ('Feather Falls', 1069, '39.59330', '-121.25530'), ('Forbestown', 1069, '39.51720', '-121.26610'), ('Forest Ranch', 10569, '39.88220', '-121.67170'), ('Hillcrest', 3217, '40.86390', '-121.90750'), ('Hurleton', 8680, '39.49750', '-121.38640'), ('Inwood', 9022, '40.52420', '-121.95610'), ('Lovelock', 10569, '39.89140', '-121.57670'), ('Magalia', 10569, '39.82750', '-121.61080'), ('Manton', 2960, '40.43530', '-121.86890'), ('Montgomery Creek', 3217, '40.84170', '-121.92250'), ('Paradise', 26408, '39.75640', '-121.60430'), ('Paynes Creek', 1952, '40.33560', '-121.91390'), ('Round Mountain', 3217, '40.79420', '-121.94080'), ('Whitmore', 3217, '40.62940', '-121.91560')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAZ067': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alta Sierra', 6522, '39.12290', '-121.05260'), ('Amador City', 196, '38.41850', '-120.82330'), ('Angels Camp', 2677, '38.07580', '-120.54790'), ('Applegate', 3096, '39.00000', '-120.98900'), ('Auburn', 12462, '38.89200', '-121.07610'), ('Bald Mountain Summit', 3001, '39.33440', '-121.01220'), ('Bridgeport', 1387, '39.29170', '-121.19360'), ('Brownsville', 1069, '39.47330', '-121.26800'), ('Buck Meadows Fss', 3388, '37.82220', '-120.09720'), ('Cameron Park', 14549, '38.68170', '-120.98720'), ('Camino', 4728, '38.73800', '-120.67270'), ('Camptonville', 3001, '39.45190', '-121.04750'), ('Carson Hill', 2409, '38.02830', '-120.50550'), ('Cedar Ridge', 10922, '39.19880', '-121.02000'), ('Challenge', 1069, '39.46150', '-121.25890'), ('Cherokee', 3001, '39.37030', '-121.04190'), ('Chiquita Lake', 1791, '38.93810', '-120.72890'), ('Clinton', 3989, '38.37610', '-120.66720'), ('Colfax', 1496, '39.09530', '-120.95320'), ('Coloma', 9610, '38.80000', '-120.88920'), ('Columbia', 2405, '38.02670', '-120.40180'), ('Cool', 12462, '38.88720', '-121.01470'), ('Copperopolis', 2363, '37.98110', '-120.64080'), ('Delevan National Wildlife Refuge', 3001, '39.31670', '-121.10000'), ('Diamond Springs', 4888, '38.68600', '-120.82160'), ('Dobbins', 1069, '39.37160', '-121.20500'), ('Drytown', 196, '38.44110', '-120.85330'), ('East Sonora', 2078, '37.98050', '-120.33930'), ('Fiddletown', 980, '38.50390', '-120.75440'), ('Foresthill', 1791, '38.99940', '-120.83210'), ('Frenchtown', 1069, '39.38800', '-121.25390'), ('Garden Valley', 9610, '38.85420', '-120.85830'), ('Georgetown', 1791, '38.90690', '-120.83500'), ('Glencoe', 2615, '38.35420', '-120.58390'), ('Grass Valley', 10922, '39.22150', '-121.05670'), ('Greenwood', 1791, '38.89670', '-120.91170'), ('Groveland-Big Oak', 3388, '37.84550', '-120.19640'), ('Higgins Corner', 3956, '39.04280', '-121.09390'), ('Iowa Hill', 1496, '39.10860', '-120.85830'), ('Jackson', 3989, '38.35050', '-120.77350'), ('Jamestown', 3017, '37.95730', '-120.41390'), ('Lake Of The Pines', 3956, '39.03970', '-121.05550'), ('Lake Wildwood', 1387, '39.23310', '-121.19940'), ('Lotus', 9610, '38.80170', '-120.90750'), ('Meadow Vista', 3096, '39.00400', '-121.03070'), ('Moccasin', 3388, '37.81080', '-120.29890'), ('Mokelumne Hill', 3989, '38.30010', '-120.70530'), ('Mono Vista', 3072, '38.01150', '-120.26970'), ('Murphys', 2061, '38.15200', '-120.46090'), ('Nevada City', 3001, '39.26040', '-121.02120'), ('North Auburn', 11847, '38.93130', '-121.08070'), ('Oregon House', 1069, '39.35640', '-121.27800'), ('Paloma', 3989, '38.25940', '-120.76220'), ('Penn Valley', 1387, '39.19620', '-121.18990'), ('Phoenix Lake-Cedar', 5123, '38.02320', '-120.30070'), ('Pilot Hill', 12462, '38.83500', '-121.01330'), ('Pine Grove', 3989, '38.41310', '-120.65780'), ('Pioneer', 3989, '38.43190', '-120.57080'), ('Placerville', 9610, '38.73020', '-120.79570'), ('Plymouth', 980, '38.47840', '-120.84480'), ('Rescue', 2643, '38.71160', '-120.95030'), ('Rough And Ready', 1387, '39.23030', '-121.13500'), ('San Andreas', 2615, '38.18930', '-120.67460'), ('Shingle Springs', 2643, '38.67080', '-120.93970'), ('Smithflat', 9610, '38.73470', '-120.75420'), ('Smith Station', 3388, '37.81280', '-120.12030'), ('Somerset', 9610, '38.64770', '-120.68470'), ('Sonora', 4423, '37.98360', '-120.38160'), ('Soulsbyville', 1729, '37.99260', '-120.25990'), ('Springfield', 2405, '38.02080', '-120.41140'), ('Stanfield Hill', 2075, '39.34250', '-121.33190'), ('Sutter Creek', 2303, '38.39080', '-120.80350'), ('Sweetland', 3001, '39.34310', '-121.11920'), ('Tuolumne City', 1865, '37.96280', '-120.24030'), ('Tuttletown', 3017, '37.99160', '-120.45860'), ('Volcano', 3989, '38.44310', '-120.62970'), ('Weimar', 1791, '39.04330', '-120.88920')], 'partOfState': 'central', 'wfo': 'STO'}, +'CAZ068': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Almanor', 2316, '40.21750', '-121.17310'), ('American House', 4271, '39.65220', '-121.02220'), ('Bald Eagle Mountain', 2316, '39.93810', '-121.23500'), ('Belden', 1095, '39.93810', '-121.24810'), ('Brush Creek Rs', 1095, '39.69050', '-121.33810'), ('Bucks Lake', 4271, '39.88670', '-121.19030'), ('Burney', 3217, '40.88430', '-121.66870'), ('Butte Meadows', 10569, '40.08140', '-121.55000'), ('Caribou', 1160, '40.08060', '-121.15670'), ('Chester', 2316, '40.30040', '-121.23320'), ('Crescent Mills', 1160, '40.09670', '-120.90970'), ('Greenville', 1160, '40.13580', '-120.93790'), ('Lake Almanor', 2316, '40.25280', '-121.16030'), ('Lassen National Park', 0, '40.50000', '-121.53000'), ('Lyonsville', 1952, '40.30940', '-121.73690'), ('Manzanita Lake', 3217, '40.53560', '-121.55970'), ('Mill Creek', 10569, '40.08140', '-121.52160'), ('Mineral', 2316, '40.34780', '-121.59390'), ('Moccasin', 1160, '40.07690', '-120.93530'), ('Paxton', 1160, '40.03810', '-120.99380'), ('Pulga', 1095, '39.80310', '-121.44750'), ('Quincy', 2398, '39.92350', '-120.92380'), ('Seneca', 1160, '40.11050', '-121.08360'), ('Shingletown', 2960, '40.49250', '-121.88810'), ('Stirling City', 10569, '39.90770', '-121.52690'), ('Storrie', 1095, '39.91750', '-121.32220'), ('Twain', 4271, '40.02030', '-121.07080'), ('Viola', 3217, '40.51810', '-121.67670')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAZ069': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alleghany', 3001, '39.46970', '-120.84220'), ('Arnold', 4218, '38.23220', '-120.36960'), ('Bassetts', 2227, '39.61970', '-120.58640'), ('Baxter', 1496, '39.21300', '-120.78000'), ('Bear Valley', 4218, '38.46470', '-120.03890'), ('Big Bend', 13864, '39.30550', '-120.51690'), ('Big Bend Summit', 4728, '38.85000', '-120.53280'), ('Black Springs', 4218, '38.37660', '-120.19660'), ('Blue Canyon', 1791, '39.27470', '-120.70900'), ('Bowman Lake', 2227, '39.44830', '-120.65000'), ('Calaveras Big Tree', 4218, '38.27190', '-120.28670'), ('Carson Pass', 23609, '38.69390', '-119.98750'), ('Cedar Ridge', 5123, '38.06580', '-120.27580'), ('Cisco', 13864, '39.30160', '-120.54580'), ('Cooks Station', 4728, '38.50140', '-120.45190'), ('Dardanelle', 1485, '38.34190', '-119.83220'), ('Donner Peak', 13864, '39.30890', '-120.31110'), ('Downieville', 3001, '39.55940', '-120.82660'), ('Ebbetts Pass', 197, '38.54440', '-119.81080'), ('Emigrant Gap', 1791, '39.29690', '-120.67160'), ('Fresh Pond', 4728, '38.76030', '-120.52890'), ('Gibsonville', 4271, '39.74030', '-120.90780'), ('Graniteville', 3001, '39.44080', '-120.73860'), ('Grizzly Flat', 4728, '38.63640', '-120.52640'), ('Hermit Valley Basin', 197, '38.54330', '-119.88420'), ('Jupiter', 2586, '38.12250', '-120.28160'), ('Kennedy Meadow', 1485, '38.31160', '-119.74470'), ('Kingvale', 13864, '39.32110', '-120.42780'), ('Kirkwood', 23609, '38.70280', '-120.07170'), ('Kirkwood Meadows', 23609, '38.69220', '-120.07190'), ('Kirkwood Ski Area', 23609, '38.67830', '-120.04190'), ('Kit Carson', 23609, '38.67080', '-120.11250'), ('Kyburz', 4728, '38.77470', '-120.29580'), ('Lake Alpine', 4218, '38.47170', '-120.00330'), ('Lake Spaulding', 1791, '39.32720', '-120.64190'), ('Lily Gap', 4218, '38.43000', '-120.44920'), ('Long Barn', 1485, '38.09300', '-120.13330'), ('Lookout Peak', 197, '38.51080', '-119.87190'), ('Meadow Lake', 13864, '39.40360', '-120.49720'), ('Mi-Wuk Village', 1485, '38.05800', '-120.17630'), ('Pacific House', 4728, '38.76000', '-120.50600'), ('Pike', 3001, '39.43920', '-120.99690'), ('Pinecrest', 1485, '38.18860', '-119.98970'), ('Pollock Pines', 4728, '38.75210', '-120.57060'), ('Rattlesnake Mountain', 13864, '39.31580', '-120.52940'), ('Riverton', 4728, '38.77110', '-120.44830'), ('Scotts Flat', 3001, '39.28330', '-120.91250'), ('Shriner Lake Campground', 4218, '38.53530', '-120.15940'), ('Sierra City', 2227, '39.56580', '-120.63280'), ('Skillman Campground', 3001, '39.31830', '-120.78920'), ('Soda Springs', 13864, '39.32300', '-120.37880'), ('Strawberry', 1485, '38.19830', '-120.00830'), ('Sugar Pine', 1791, '39.13420', '-120.79110'), ('Tamarack', 4218, '38.43880', '-120.07500'), ('Twain Harte', 2586, '38.04050', '-120.23260'), ('Twin Bridges', 23609, '38.81140', '-120.12300'), ('Upper Blue Lake', 23609, '38.62830', '-119.93940'), ('White Cloud Campgrond', 3001, '39.32010', '-120.84530'), ('White Hall', 4728, '38.77530', '-120.40420')], 'partOfState': 'northern', 'wfo': 'STO'}, +'CAZ070': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Cedarville', 2892, '41.53000', '-120.17000'), ('Eagleville', 2892, '41.32000', '-120.12000'), ('Fort Bidwell', 2526, '41.86000', '-120.15000'), ('Lake City', 2892, '41.64000', '-120.22000')], 'partOfState': 'northern', 'wfo': 'REV'}, +'CAZ071': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Antelope Lake', 13541, '40.18000', '-120.61000'), ('Beckwourth', 2227, '39.82000', '-120.38000'), ('Bieber', 3217, '41.12000', '-121.14000'), ('Blairsden', 2227, '39.78000', '-120.62000'), ('Calpine', 2227, '39.67000', '-120.44000'), ('Chilcoot', 862, '39.80000', '-120.14000'), ('Cromberg', 2227, '39.86000', '-120.69000'), ('Dog Valley', 2133, '39.55000', '-120.04000'), ('Doyle', 862, '40.02000', '-120.10000'), ('Eagle Lake', 13541, '40.65000', '-120.74000'), ('Fredonyer Pass', 1998, '40.36000', '-120.87000'), ('Frenchman Lake', 862, '39.92000', '-120.20000'), ('Genesee', 4271, '40.04000', '-120.75000'), ('Graeagle', 2227, '39.77000', '-120.62000'), ('Hallelujah Junction', 862, '39.78000', '-120.04000'), ('Herlong', 2227, '40.14000', '-120.13000'), ('Honey Lake', 13541, '40.23000', '-120.35000'), ('Johnsville', 2227, '39.78000', '-120.66000'), ('Lake Davis', 2227, '39.91000', '-120.51000'), ('Loyalton', 862, '39.67660', '-120.24340'), ('Madeline', 2892, '41.05000', '-120.47000'), ('Nubieber', 3217, '41.09000', '-121.19000'), ('Pittville', 3217, '41.05000', '-121.32000'), ('Plumas Eureka State Park', 2227, '39.77000', '-120.69000'), ('Portola', 2227, '39.80490', '-120.46760'), ('Ravendale', 13541, '40.80000', '-120.36000'), ('Sattley', 2227, '39.62000', '-120.43000'), ('Sierraville', 862, '39.59000', '-120.37000'), ('Sloat', 2227, '39.87000', '-120.73000'), ('Spaulding', 13541, '40.65000', '-120.78000'), ('Stampede Reservoir', 2133, '39.48000', '-120.13000'), ('Standish', 13541, '40.37000', '-120.42000'), ('Susanville', 13541, '40.41110', '-120.65060'), ('Termo', 13541, '40.86000', '-120.45000'), ('Vinton', 862, '39.80000', '-120.18000'), ('Wendel', 13541, '40.35000', '-120.23000'), ('Westwood', 1998, '40.31000', '-121.00000')], 'partOfState': 'northern', 'wfo': 'REV'}, +'CAZ072': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alpine Meadows', 1761, '39.17000', '-120.22000'), ('Bliss State Park', 23609, '38.98000', '-120.10000'), ('Boca Reservoir', 2133, '39.40000', '-120.09000'), ('Carnelian Bay', 1668, '39.23000', '-120.07000'), ('Dollar Point', 1539, '39.18970', '-120.10840'), ('Emerald Bay', 23609, '38.96000', '-120.09000'), ('Floriston', 2133, '39.40000', '-120.01000'), ('Glenshire-Devonshire', 13864, '39.35050', '-120.08750'), ('Grover Hot Springs', 197, '38.69600', '-119.83900'), ('Hirschdale', 2133, '39.37000', '-120.07000'), ('Hobart Mills', 13864, '39.40000', '-120.18000'), ('Homewood', 1761, '39.08000', '-120.16000'), ('Hope Valley', 23609, '38.78000', '-119.93000'), ('Independence Lake', 13864, '39.44000', '-120.30000'), ('Indian Creek Reservoir', 197, '38.75000', '-119.77000'), ('Kings Beach', 4037, '39.24000', '-120.03000'), ('Luther Pass', 23609, '38.79000', '-119.95000'), ('Markleeville', 197, '38.69200', '-119.77990'), ('Meeks Bay', 1761, '39.01000', '-120.12000'), ('Meyers', 23609, '38.86000', '-120.01000'), ('Monitor Pass', 197, '38.68000', '-119.62000'), ('Northstar', 1668, '39.28000', '-120.12000'), ('Paynesville', 7455, '38.81100', '-119.79700'), ('Prosser Creek Reservoir', 13864, '39.38000', '-120.17000'), ('South Lake Tahoe', 23609, '38.93930', '-119.98110'), ('Squaw Valley', 1761, '39.20000', '-120.22000'), ('Sugar Pine Point S', 1761, '39.06000', '-120.12000'), ('Sunnyside-Tahoe City', 1761, '39.14750', '-120.16370'), ('Tahoe City', 1761, '39.17000', '-120.14000'), ('Tahoe Vista', 1668, '39.24790', '-120.05360'), ('Truckee', 13864, '39.32640', '-120.20230'), ('Woodfords', 7455, '38.78000', '-119.82000')], 'partOfState': 'central', 'wfo': 'REV'}, +'CAZ073': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Benton', 2702, '37.82000', '-118.48000'), ('Benton Hot Springs', 2702, '37.78000', '-118.52800'), ('Bodie', 4162, '38.21200', '-119.00800'), ('Bridgeport', 894943, '38.26000', '-119.22000'), ('Bridgeport Reservoir', 894943, '38.31990', '-119.22000'), ('Chalfant', 2702, '37.53000', '-118.36000'), ('Coleville', 894943, '38.57000', '-119.51000'), ('Conway Summit', 7093, '38.09000', '-119.18000'), ('Crestview', 7093, '37.75600', '-118.98700'), ('Crowley Lake', 7093, '37.61000', '-118.74000'), ('June Lake', 7093, '37.78000', '-119.08000'), ('Leavitt Meadows', 894943, '38.32000', '-119.55000'), ('Lee Vining', 7093, '37.96000', '-119.12000'), ('Mammoth Lakes', 7093, '37.64400', '-118.95500'), ('Mammouth Mountain', 7093, '37.65500', '-119.03300'), ('Mono Lake', 7093, '38.00600', '-119.00600'), ('Oasis', 3575, '37.49000', '-117.92000'), ('Sonora Pass', 894943, '38.32800', '-119.62900'), ('Tioga Pass', 7093, '37.91500', '-119.25600'), ('Toms Place', 7093, '37.56300', '-118.69500'), ('Twin Lakes', 7093, '38.14900', '-119.34400'), ('Walker', 894943, '38.52000', '-119.48000')], 'partOfState': 'central', 'wfo': 'REV'}, +'CAZ076': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Calpella', 15497, '39.23000', '-123.20000'), ('Covelo', 1175, '39.80000', '-123.25000'), ('Dos Rios', 1175, '39.72000', '-123.35000'), ('Hopland', 15497, '38.98000', '-123.12000'), ('Laytonville', 1301, '39.67000', '-123.50000'), ('Leggett', 1188, '39.87000', '-123.72000'), ('Piercy', 1188, '39.98000', '-123.80000'), ('Potter Valley', 15497, '39.32000', '-123.12000'), ('Redwood Vly', 15497, '39.27000', '-123.20000'), ('Talmage', 15497, '39.13000', '-123.17000'), ('Ukiah', 15497, '39.15000', '-123.21000'), ('Willits', 5073, '39.40000', '-123.35000')], 'partOfState': 'northwest', 'wfo': 'EKA'}, +'CAZ080': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Callahan', 781, '41.30970', '-122.80030'), ('Etna', 781, '41.45930', '-122.89280'), ('Fort Jones', 660, '41.60710', '-122.83980'), ('Greenview', 660, '41.55080', '-122.90440'), ('Happy Camp', 1126, '41.79330', '-123.37830'), ('Scott Bar', 660, '41.74000', '-123.00000'), ('Seiad Valley', 660, '41.84060', '-123.19140'), ('Somes Bar', 1743, '41.37640', '-123.47500')], 'partOfState': 'northern', 'wfo': 'MFR'}, +'CAZ081': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Gazelle', 2978, '41.52080', '-122.51920'), ('Grenada', 1456, '41.64720', '-122.51890'), ('Hilt', 16234, '41.99500', '-122.62220'), ('Klamath River', 7290, '41.86140', '-122.82440'), ('Montague', 1456, '41.72750', '-122.52960'), ('Weed', 2978, '41.41650', '-122.37840'), ('Yreka', 7290, '41.72910', '-122.63150')], 'partOfState': 'northern', 'wfo': 'MFR'}, +'CAZ082': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Dunsmuir', 1923, '41.23350', '-122.26990'), ('McCloud', 1343, '41.25480', '-122.13520'), ('Mount Shasta', 3621, '41.32250', '-122.31470')], 'partOfState': 'northern', 'wfo': 'MFR'}, +'CAZ083': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bray', 886, '41.64420', '-121.96970'), ('Pondosa', 3217, '41.19940', '-121.68780'), ('Tennant', 886, '41.58390', '-121.91220')], 'partOfState': 'northern', 'wfo': 'MFR'}, +'CAZ084': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Dorris', 886, '41.96520', '-121.92000'), ('Macdoel', 886, '41.82690', '-122.00420'), ('Newell', 1020, '41.88830', '-121.37110'), ('Tulelake', 1020, '41.95420', '-121.47480')], 'partOfState': 'northern', 'wfo': 'MFR'}, +'CAZ085': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Adin', 2892, '41.21170', '-120.94420'), ('Alturas', 2892, '41.49150', '-120.54540'), ('Canby', 2892, '41.44390', '-120.86920'), ('Davis Creek', 2892, '41.73330', '-120.37080'), ('Day', 3217, '41.21170', '-121.37330'), ('Likely', 2892, '41.23060', '-120.50310'), ('Lookout', 3217, '41.20810', '-121.15420'), ('Tionesta', 1020, '41.64610', '-121.32690'), ('Willow Ranch', 2526, '41.90250', '-120.35720')], 'partOfState': 'northern', 'wfo': 'MFR'}, +'CAZ087': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Avalon', 3127, '33.34290', '-118.32740'), ('Catalina Airport', 3127, '33.41000', '-118.42000'), ('Two Harbors', 3127, '33.44000', '-118.50000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ088': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Santa Clarita', 151088, '34.41340', '-118.51020'), ('Val Verde', 1472, '34.44550', '-118.65570')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ089': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Caruthers', 2103, '36.54180', '-119.84170'), ('Coalinga', 11668, '36.14240', '-120.35460'), ('Dos Palos', 4581, '36.98650', '-120.63680'), ('Firebaugh', 5743, '36.84920', '-120.44890'), ('Five Points', 3270, '36.42960', '-120.10230'), ('Gustine', 4698, '37.25250', '-120.99320'), ('Laton', 1236, '36.43400', '-119.68890'), ('Los Banos', 25869, '37.06420', '-120.83530'), ('Mendota', 7890, '36.75760', '-120.37890'), ('Riverdale', 2416, '36.43080', '-119.86600'), ('San Joaquin', 3270, '36.60690', '-120.18690'), ('San Luis Reservoir', 4698, '37.06800', '-121.06860'), ('Tranquility', 3270, '36.64820', '-120.25140')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ090': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Atwater', 23113, '37.35330', '-120.60000'), ('Chowchilla', 11127, '37.11540', '-120.25660'), ('Clovis', 68468, '36.81960', '-119.69600'), ('Fowler', 3979, '36.62470', '-119.67230'), ('Fresno', 427652, '36.78060', '-119.79290'), ('Kerman', 8551, '36.72420', '-120.06100'), ('Kingsburg', 9199, '36.51950', '-119.55480'), ('Lake Mcclure', 3388, '37.58400', '-120.27370'), ('Le Grand', 1760, '37.21910', '-120.26050'), ('Livingston', 10473, '37.38800', '-120.72150'), ('Madera', 43207, '36.96760', '-120.07670'), ('Merced', 63893, '37.29630', '-120.48440'), ('Millerton Lake', 68468, '37.00050', '-119.70410'), ('Orange Cove', 7722, '36.62250', '-119.31740'), ('Parlier', 11145, '36.60850', '-119.53820'), ('Planada', 4369, '37.28810', '-120.32330'), ('Reedley', 20756, '36.60040', '-119.44830'), ('Sanger', 18931, '36.70020', '-119.55320'), ('Selma', 19444, '36.57420', '-119.61540')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ091': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Avenal', 14674, '36.02960', '-120.11470'), ('Blackwells Corner', 1938, '35.61510', '-119.86690'), ('Buttonwillow', 1266, '35.40180', '-119.46980'), ('Corcoran', 14458, '36.08180', '-119.56000'), ('Hanford', 41686, '36.32500', '-119.64690'), ('Kettleman City', 1499, '36.00870', '-119.96190'), ('Lemoore', 19712, '36.29860', '-119.78750'), ('Lemoore Station', 5749, '36.26440', '-119.90370'), ('Lost Hills', 1938, '35.62340', '-119.69350'), ('McKittrick', 1266, '35.30550', '-119.62210'), ('Stratford', 5749, '36.18950', '-119.82350'), ('Taft', 6400, '35.14240', '-119.45480')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ092': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alpaugh', 14458, '35.88760', '-119.48370'), ('Arvin', 12956, '35.20030', '-118.83370'), ('Bakersfield', 247057, '35.35770', '-119.00460'), ('Delano', 38824, '35.76480', '-119.25040'), ('Dinuba', 16844, '36.54560', '-119.38730'), ('Earlimart', 6583, '35.88090', '-119.27050'), ('Exeter', 9168, '36.29460', '-119.14300'), ('Farmersville', 8737, '36.30410', '-119.20690'), ('Goshen', 91565, '36.35110', '-119.42060'), ('Lamont', 13296, '35.26410', '-118.91400'), ('Lemon Cove', 6651, '36.38350', '-119.02450'), ('Lindsay', 10297, '36.20630', '-119.08880'), ('McFarland', 9618, '35.67910', '-119.23560'), ('Pixley', 2586, '35.97290', '-119.28720'), ('Porterville', 39615, '36.06460', '-119.02700'), ('Richgrove', 2723, '35.79670', '-119.10570'), ('Shafter', 12736, '35.50120', '-119.27270'), ('Tipton', 1790, '36.05810', '-119.31190'), ('Tulare', 43994, '36.19510', '-119.34310'), ('Visalia', 91565, '36.32540', '-119.32060'), ('Wasco', 21263, '35.59360', '-119.34100'), ('Woodlake', 6651, '36.41280', '-119.09740')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ093': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Auberry', 2053, '37.07780', '-119.49360'), ('Coarsegold', 2868, '37.26180', '-119.69950'), ('Mariposa', 1373, '37.48850', '-119.96650'), ('North Fork', 2053, '37.22860', '-119.50820'), ('Oakhurst', 2868, '37.33330', '-119.64700'), ('Squaw Valley', 2691, '36.69640', '-119.19420')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ094': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Springville', 6730, '36.13050', '-118.81680'), ('Three Rivers', 6651, '36.44320', '-118.90230')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ095': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Frazier Park', 2348, '34.82210', '-118.94530'), ('Grapevine', 2348, '34.94170', '-118.93030'), ('Kernville', 1736, '35.76160', '-118.43010'), ('Lake Isabella', 3315, '35.61520', '-118.46570'), ('Lebec', 2348, '34.84220', '-118.86610'), ('Tehachapi', 10957, '35.13480', '-118.44050')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ096': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bass Lake', 2868, '37.32220', '-119.55820'), ('Cedar Grove', 2691, '36.79160', '-118.67220'), ('Devils Postpile', 7093, '37.62940', '-119.08370'), ('El Portal', 1588, '37.67570', '-119.78030'), ('Fish Camp', 2868, '37.47890', '-119.63700'), ('Florence Lake', 7093, '37.27600', '-118.97600'), ('Hetch Hetchy', 1485, '37.94750', '-119.78800'), ('Hume Lake', 2691, '36.78650', '-118.91120'), ('Huntington Lake', 2053, '37.23100', '-119.23460'), ('Lake Thomas Edison', 7093, '37.37890', '-119.00990'), ('Lake Wishon', 2691, '37.00720', '-118.97620'), ('Shaver Lake', 2053, '37.10350', '-119.31770'), ('Tuolumne Meadows', 7093, '37.87430', '-119.35640'), ('Wawona', 2868, '37.54790', '-119.64420'), ('Yosemite National', 0, '37.71000', '-119.68000'), ('Yosemite Valley', 1588, '37.74000', '-119.59810')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ097': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Camp Nelson', 6730, '36.13970', '-118.61240'), ('Giant Forest', 6651, '36.56440', '-118.77260'), ('Grant Grove', 2691, '36.74020', '-118.96230'), ('Johnsondale', 1736, '35.97320', '-118.54010'), ('Lodgepole', 6651, '36.60440', '-118.73040')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ098': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Inyokern', 24927, '35.64680', '-117.81200'), ('Ridgecrest', 24927, '35.63100', '-117.66110')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ099': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Boron', 2025, '35.00490', '-117.65030'), ('California City', 8385, '35.18930', '-117.81150'), ('Edwards AFB', 5909, '34.90960', '-117.93460'), ('Mojave', 3836, '35.05210', '-118.17980'), ('North Edwards', 1227, '35.01910', '-117.83030'), ('Randsburg', 8385, '35.36840', '-117.65570'), ('Rosamond', 14349, '34.86020', '-118.19950')], 'partOfState': 'central', 'wfo': 'HNX'}, +'CAZ505': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Bodega Bay', 1423, '38.32280', '-123.02980'), ('Bolinas', 1246, '37.90560', '-122.69700'), ('Inverness', 1421, '38.08510', '-122.84110'), ('Sausalito', 7330, '37.85770', '-122.49150'), ('Tamalpais-Homestead', 10691, '37.88840', '-122.53900')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ506': {'fullStateName': 'California', 'state': 'CA', 'cities': [('American Canyon', 9774, '38.17320', '-122.26120'), ('Boyes Hot Springs', 6665, '38.31300', '-122.48500'), ('Calistoga', 5190, '38.58140', '-122.58170'), ('Cloverdale', 6831, '38.79970', '-123.01740'), ('Corte Madera', 9100, '37.92360', '-122.50730'), ('Cotati', 6471, '38.32780', '-122.70950'), ('Deer Park', 1433, '38.53280', '-122.46860'), ('Eldridge', 1534, '38.33520', '-122.50690'), ('El Verano', 3954, '38.29770', '-122.48940'), ('Fairfax', 7319, '37.98860', '-122.59380'), ('Fetters Hot Spring', 2505, '38.32230', '-122.47980'), ('Forestville', 2370, '38.48110', '-122.88860'), ('Glen Ellen', 992, '38.35580', '-122.53840'), ('Graton', 1815, '38.43770', '-122.86530'), ('Guerneville', 2441, '38.50810', '-122.98490'), ('Healdsburg', 10722, '38.61850', '-122.86280'), ('Kentfield', 6351, '37.95030', '-122.54740'), ('Larkfield-Wikiup', 7479, '38.51340', '-122.75250'), ('Larkspur', 12014, '37.94120', '-122.52920'), ('Lucas Valley-Marinwood', 6357, '38.03520', '-122.56550'), ('Mill Valley', 13600, '37.90800', '-122.54100'), ('Monte Rio', 1104, '38.46530', '-123.01230'), ('Napa', 72585, '38.29790', '-122.29990'), ('Novato', 47630, '38.09210', '-122.55670'), ('Occidental', 1272, '38.39540', '-122.93790'), ('Petaluma', 54548, '38.24110', '-122.62550'), ('Rohnert Park', 42236, '38.34780', '-122.69770'), ('Roseland', 6369, '38.42150', '-122.72490'), ('Ross', 2329, '37.96180', '-122.56060'), ('San Anselmo', 12378, '37.98260', '-122.56890'), ('San Rafael', 56063, '37.98110', '-122.50590'), ('Santa Rosa', 147595, '38.44860', '-122.70080'), ('Santa Venetia', 4298, '38.00910', '-122.50370'), ('Sebastopol', 7774, '38.39930', '-122.82590'), ('Sonoma', 9128, '38.29030', '-122.45930'), ('South Santa Rosa', 147595, '38.40490', '-122.72640'), ('St. Helena', 5950, '38.50470', '-122.46570'), ('Strawberry', 5302, '37.89700', '-122.50770'), ('Temelec', 1556, '38.25630', '-122.50330'), ('Tiburon', 8666, '37.88680', '-122.45680'), ('Windsor', 22744, '38.54570', '-122.79780'), ('Yountville', 2916, '38.39140', '-122.36780')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ507': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Angwin', 3148, '38.57760', '-122.44800'), ('Lagunitas-Forest Knolls', 1835, '38.01520', '-122.68760'), ('Woodacre', 1393, '38.00570', '-122.63470')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ508': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Ashland', 20793, '37.69470', '-122.11540'), ('Atherton', 7194, '37.45470', '-122.20240'), ('Belmont', 25123, '37.51530', '-122.29510'), ('Berkeley', 102743, '37.86720', '-122.29730'), ('Brisbane', 3597, '37.68930', '-122.39990'), ('Burlingame', 28158, '37.59030', '-122.36260'), ('Castro Valley', 57292, '37.71090', '-122.06110'), ('Cherryland', 13837, '37.67930', '-122.10230'), ('Colma', 1191, '37.67380', '-122.45340'), ('Daly City', 103621, '37.68700', '-122.46740'), ('East Palo Alto', 29506, '37.46610', '-122.13220'), ('East Richmond Heigts', 3357, '37.94510', '-122.31260'), ('El Cerrito', 23171, '37.92050', '-122.30210'), ('Emerald Lake Hills', 3899, '37.46460', '-122.26690'), ('Fairview', 9470, '37.67860', '-122.04460'), ('Fremont', 203413, '37.52850', '-121.99710'), ('Hayward', 140030, '37.62770', '-122.10460'), ('Highlands', 2644, '37.51990', '-122.34280'), ('Hillsborough', 10825, '37.55750', '-122.35620'), ('Kensington', 4936, '37.90820', '-122.27730'), ('Los Altos', 27693, '37.36920', '-122.09550'), ('Los Altos Hills', 7902, '37.36800', '-122.13930'), ('Loyola', 3478, '37.35140', '-122.09950'), ('Menlo Park', 30785, '37.48000', '-122.14400'), ('Millbrae', 20718, '37.59910', '-122.40100'), ('Milpitas', 62698, '37.43460', '-121.89190'), ('Mountain View', 70708, '37.40200', '-122.07760'), ('Newark', 42471, '37.51930', '-122.03050'), ('North Fair Oaks', 15440, '37.47450', '-122.20180'), ('Oakland', 399484, '37.77150', '-122.22450'), ('Palo Alto', 58598, '37.39920', '-122.13940'), ('Piedmont', 10952, '37.82290', '-122.22890'), ('Portola Valley', 4462, '37.37170', '-122.21850'), ('Richmond', 99216, '37.95130', '-122.36090'), ('San Bruno', 40165, '37.62480', '-122.42800'), ('San Carlos', 27718, '37.49760', '-122.26740'), ('San Leandro', 79452, '37.70470', '-122.16080'), ('San Lorenzo', 21898, '37.67500', '-122.13010'), ('San Mateo', 92482, '37.56130', '-122.31200'), ('Stanford', 13315, '37.42410', '-122.16490'), ('Union City', 66869, '37.60160', '-122.01610'), ('West Menlo Park', 3629, '37.43370', '-122.20190'), ('Woodside', 5352, '37.42480', '-122.25930')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ509': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Broadmoor', 4026, '37.69170', '-122.47960'), ('El Granada', 5724, '37.50970', '-122.46660'), ('Montara', 2950, '37.54540', '-122.49720'), ('Pacifica', 38390, '37.61120', '-122.47630')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ510': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alamo', 15626, '37.85710', '-121.99860'), ('Antioch', 90532, '37.98870', '-121.79890'), ('Bayview-Montalvin', 5004, '38.00160', '-122.32270'), ('Bethel Island', 2312, '38.03220', '-121.64680'), ('Brentwood', 23302, '37.93360', '-121.70860'), ('Clayton', 10762, '37.94100', '-121.92890'), ('Concord', 121780, '37.97330', '-121.99990'), ('Crockett', 3194, '38.05110', '-122.21940'), ('Danville', 41715, '37.81440', '-121.97140'), ('Discovery Bay', 8981, '37.90880', '-121.59520'), ('Dublin', 29973, '37.71590', '-121.90990'), ('El Sobrante', 12260, '37.97660', '-122.29260'), ('Lafayette', 23908, '37.89380', '-122.11790'), ('Livermore', 73345, '37.69190', '-121.76370'), ('Martinez', 35866, '38.00070', '-122.11450'), ('Moraga Town', 16290, '37.84390', '-122.12340'), ('Oakley', 25619, '37.98650', '-121.71600'), ('Orinda', 17599, '37.88090', '-122.17730'), ('Pacheco', 3562, '37.98760', '-122.06230'), ('Pittsburg', 56769, '38.01810', '-121.88950'), ('Pleasant Hill', 32837, '37.95370', '-122.07420'), ('Pleasanton', 63654, '37.67240', '-121.88910'), ('Rodeo', 8717, '38.04550', '-122.23770'), ('San Pablo', 30215, '37.96210', '-122.34270'), ('San Ramon', 44722, '37.75740', '-121.95110'), ('Tara Hills', 5332, '37.99360', '-122.31750'), ('Vine Hill', 3260, '38.01600', '-122.09150'), ('Walnut Creek', 64296, '37.90200', '-122.04080'), ('West Pittsburg', 17453, '38.03820', '-121.97400')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ511': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Blackhawk', 6199, '37.82090', '-121.90670')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ512': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Ben Lomond', 2364, '37.10340', '-122.08450'), ('Boulder Creek', 4081, '37.13750', '-122.12790'), ('Day Valley', 3587, '37.03580', '-121.86130'), ('Felton', 1051, '37.04270', '-122.07220'), ('Lexington Hills', 2454, '37.16480', '-121.97180'), ('Scotts Valley', 11385, '37.05630', '-122.00800')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ513': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Cambrian Park', 3258, '37.25570', '-121.92780'), ('Campbell', 36048, '37.27880', '-121.95340'), ('Cupertino', 50546, '37.31440', '-122.04730'), ('East Foothills', 8133, '37.38110', '-121.81640'), ('Gilroy', 41464, '37.01010', '-121.57810'), ('Los Gatos', 28592, '37.23070', '-121.95980'), ('Monte Sereno', 3483, '37.23830', '-121.98860'), ('Morgan Hill', 33556, '37.13050', '-121.63960'), ('Rancho Rinconada', 50546, '37.31500', '-122.00180'), ('San Jose', 894943, '37.30400', '-121.84980'), ('San Martin', 4230, '37.08490', '-121.60630'), ('Santa Clara', 102361, '37.36500', '-121.96670'), ('Saratoga', 29843, '37.26780', '-122.02300'), ('Sunnyvale', 131760, '37.38580', '-122.02550')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ516': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Greenfield', 12583, '36.32170', '-121.24240'), ('King City', 11094, '36.21300', '-121.12820')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ517': {'fullStateName': 'California', 'state': 'CA', 'cities': [], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ518': {'fullStateName': 'California', 'state': 'CA', 'cities': [], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ519': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aspendell', 2807, '37.23330', '-118.58330'), ('South Lake', 2807, '37.18330', '-118.56660')], 'partOfState': 'eastern', 'wfo': 'VEF'}, +'CAZ520': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big Pine', 1350, '37.16540', '-118.29540'), ('Bishop', 3575, '37.36770', '-118.39680'), ('Dixon Lane-Meadow', 2702, '37.38730', '-118.41250'), ('Independence', 1655, '36.80000', '-118.20000'), ('Keeler', 1655, '36.48160', '-117.86830'), ('Lone Pine', 1655, '36.59400', '-118.06500'), ('Olancha', 1655, '36.27830', '-118.00000'), ('West Bishop', 2807, '37.36110', '-118.45410')], 'partOfState': 'eastern', 'wfo': 'VEF'}, +'CAZ521': {'fullStateName': 'California', 'state': 'CA', 'cities': [], 'partOfState': 'eastern', 'wfo': 'VEF'}, +'CAZ522': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Death Valley Junction', 7424, '36.30000', '-116.41330'), ('Furnace Creek', 31, '36.45000', '-116.85000'), ('Panamint Springs', 1885, '36.33330', '-117.47000'), ('Shoshone', 7424, '35.96670', '-116.27500'), ('Stovepipe Wells', 1623, '36.60000', '-117.16660')], 'partOfState': 'eastern', 'wfo': 'VEF'}, +'CAZ523': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Barstow', 21119, '34.87760', '-117.06590'), ('Daggett', 1174, '34.85830', '-116.88330'), ('Lenwood', 3222, '34.88580', '-117.10360'), ('Nebo Center', 1174, '34.87160', '-116.95560'), ('Searles Valley', 1885, '35.76760', '-117.40290'), ('Trona', 1885, '35.76660', '-117.36660')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'CAZ524': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Amboy', 8413, '34.56660', '-115.75000'), ('Baker', 7424, '35.28100', '-116.07000'), ('Essex', 4830, '34.73330', '-115.25000'), ('Ludlow', 8413, '34.71670', '-116.16660'), ('Mountain Pass', 6412, '35.47500', '-115.53900'), ('Nipton', 6412, '35.46650', '-115.28330')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'CAZ525': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Joshua Tree', 4207, '34.12700', '-116.31780'), ('Morongo Valley', 1929, '34.06390', '-116.59180'), ('Twentynine Palms', 14764, '34.13950', '-116.06570'), ('Twentynine Palms Mountain', 8413, '34.22810', '-116.05570'), ('West Wind Aero', 14764, '34.13330', '-115.91660'), ('Yucca Valley', 16865, '34.11120', '-116.42860')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'CAZ526': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Vidal Junction', 1266, '34.18330', '-114.57500')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'CAZ527': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Big River', 1266, '34.14010', '-114.36050'), ('Earp', 1266, '34.15000', '-114.33330'), ('Needles', 4830, '34.81410', '-114.61320'), ('Parker Dam', 1646, '34.26650', '-114.15000')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'CAZ528': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aromas', 2797, '36.87750', '-121.64030'), ('Carmel Valley Village', 4700, '36.48620', '-121.72290'), ('Gonzales', 7525, '36.50650', '-121.44260'), ('Hollister', 34413, '36.85550', '-121.39910'), ('Prunedale', 16432, '36.79990', '-121.65640'), ('Salinas', 151060, '36.68480', '-121.63510'), ('San Juan Bautista', 1549, '36.84600', '-121.53710'), ('Soledad', 11263, '36.43010', '-121.32250')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ529': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Aptos', 9396, '36.99190', '-121.89960'), ('Aptos Hills-Larkin', 2361, '36.96100', '-121.83020'), ('Capitola', 10033, '36.97610', '-121.95300'), ('Corralitos', 2431, '36.99660', '-121.79860'), ('Freedom', 6000, '36.94000', '-121.78930'), ('Interlaken', 7328, '36.95140', '-121.73290'), ('Live Oak', 16628, '36.98370', '-121.97950'), ('Santa Cruz', 54593, '36.97330', '-122.03580'), ('Soquel', 5081, '36.99380', '-121.94670'), ('Watsonville', 44265, '36.91920', '-121.76850')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ530': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Castroville', 6724, '36.76400', '-121.75180'), ('Del Monte Forest', 4531, '36.58630', '-121.94630'), ('Del Rey Oaks', 1650, '36.59280', '-121.83730'), ('Elkhorn', 1591, '36.81090', '-121.71750'), ('Las Lomas', 3078, '36.86880', '-121.73100'), ('Marina', 25101, '36.68270', '-121.79080'), ('Monterey', 29674, '36.60130', '-121.88180'), ('Pajaro', 3384, '36.90010', '-121.74090'), ('Seaside', 31696, '36.62140', '-121.81860')], 'partOfState': 'western', 'wfo': 'MTR'}, +'CAZ547': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Agoura Hills', 20537, '34.15100', '-118.75980'), ('Burbank', 100316, '34.19130', '-118.32570'), ('Chatsworth', 1875, '34.27000', '-118.59000'), ('Glendale', 194973, '34.17670', '-118.25330'), ('Reseda', 23564, '34.20000', '-118.52000'), ('San Fernando', 23564, '34.28950', '-118.43500'), ('Van Nuys', 3694820, '34.18000', '-118.45000'), ('Westlake Village', 8368, '34.13610', '-118.82130'), ('Woodland Hills', 1875, '34.17000', '-118.59000')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'CAZ548': {'fullStateName': 'California', 'state': 'CA', 'cities': [('Alhambra', 85804, '34.08400', '-118.13470'), ('Altadena', 42610, '34.19230', '-118.13470'), ('Azusa', 44712, '34.13810', '-117.91230'), ('Claremont', 33998, '34.12190', '-117.71570'), ('Diamond Bar', 56287, '33.99940', '-117.81430'), ('East Los Angeles', 124283, '34.03260', '-118.16860'), ('El Monte', 115965, '34.07480', '-118.02780'), ('La Puente', 41063, '34.03250', '-117.95230'), ('Monrovia', 36929, '34.16340', '-117.99040'), ('Montebello', 62150, '34.01550', '-118.11000'), ('Monterey Park', 60051, '34.04680', '-118.13060'), ('Pasadena', 133936, '34.16070', '-118.13870'), ('Pomona', 149473, '34.05900', '-117.76140'), ('Rowland Heights', 48553, '33.97980', '-117.89140'), ('South San Jose Hill', 20218, '34.01280', '-117.90380'), ('Walnut', 30004, '34.02900', '-117.85740'), ('West Covina', 105080, '34.05430', '-117.90980'), ('Whittier', 83680, '33.96660', '-118.02170')], 'partOfState': 'southwest', 'wfo': 'LOX'}, +'COZ001': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Artesia', 0, '40.22000', '-109.02000'), ('Blue Mountain', 0, '40.25000', '-108.85000'), ('Dinosaur', 319, '40.24160', '-109.00800'), ('Elk Springs', 0, '40.35000', '-108.45000'), ('Greystone', 0, '40.62000', '-108.67000'), ('Hiawatha', 0, '40.98000', '-108.62000'), ('Massadona', 0, '40.22000', '-108.62000'), ('Powder Wash', 0, '40.95000', '-108.30000'), ('Rangely', 2096, '40.08760', '-108.77850'), ('Sparks', 0, '40.88000', '-108.55000')], 'partOfState': 'northwest', 'wfo': 'GJT'}, +'COZ002': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Axial', 0, '40.25000', '-107.78000'), ('Craig', 9189, '40.51690', '-107.55340'), ('Fortification', 0, '40.82100', '-107.61700'), ('Great Divide', 0, '40.78000', '-107.82000'), ('Hamilton', 0, '40.37000', '-107.60000'), ('Hayden', 1634, '40.48810', '-107.26030'), ('Juniper Springs', 0, '40.43000', '-107.95000'), ('Lay', 0, '40.52000', '-107.87000'), ('Loyd', 0, '40.27000', '-107.72000'), ('Maybell', 0, '40.52000', '-108.08000'), ('Meeker', 2242, '40.05450', '-107.88980'), ('Slater', 0, '41.00000', '-107.37000'), ('Sunbeam', 0, '40.55000', '-108.18000')], 'partOfState': 'northwest', 'wfo': 'GJT'}, +'COZ003': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Rio Blanco', 0, '39.72000', '-107.97000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ004': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Hahns Peak', 0, '40.80000', '-106.93000'), ('Toponas', 0, '40.07000', '-106.80000')], 'partOfState': 'northwest', 'wfo': 'GJT'}, +'COZ005': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Clark', 0, '40.70000', '-106.92000'), ('Milner', 0, '40.48000', '-107.02000'), ('Oak Creek', 849, '40.27450', '-106.95700'), ('Phippsburg', 0, '40.23000', '-106.93000'), ('Steamboat Springs', 9815, '40.47790', '-106.82100'), ('Tow Creek', 0, '40.47000', '-107.07000'), ('Yampa', 443, '40.15330', '-106.90750')], 'partOfState': 'northwest', 'wfo': 'GJT'}, +'COZ006': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cameo', 0, '39.15000', '-108.32000'), ('Clifton', 17345, '39.07520', '-108.46340'), ('Fruita', 6478, '39.15650', '-108.72730'), ('Fruitvale', 6936, '39.09320', '-108.47840'), ('Grand Junction', 41986, '39.08730', '-108.55290'), ('Loma', 0, '39.20000', '-108.82000'), ('Mack', 0, '39.22000', '-108.87000'), ('Orchard Mesa', 6456, '39.03380', '-108.52240'), ('Palisade', 2579, '39.10740', '-108.35780'), ('Redlands', 8043, '39.08500', '-108.65080'), ('Whitewater', 0, '38.98000', '-108.43000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ007': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Battlement Mesa', 3497, '39.44150', '-108.02450'), ('Collbran', 388, '39.23930', '-107.95860'), ('De Beque', 451, '39.33250', '-108.21370'), ('Mesa', 0, '39.17000', '-108.13000'), ('Molina', 0, '39.18000', '-108.07000'), ('New Castle', 1984, '39.58540', '-107.53060'), ('Parachute', 1006, '39.44580', '-108.05510'), ('Rifle', 6784, '39.53930', '-107.77780'), ('Silt', 1740, '39.54970', '-107.65380')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ008': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Basalt', 2681, '39.36670', '-107.02700'), ('Bond', 0, '39.87000', '-106.70000'), ('Burns', 0, '39.87000', '-106.88000'), ('Carbondale', 5196, '39.39730', '-107.21400'), ('Cattle Creek', 0, '39.45000', '-107.25000'), ('Dotsero', 0, '39.65000', '-107.05000'), ('Eagle', 3032, '39.65560', '-106.82540'), ('Edwards', 8257, '39.65000', '-106.60000'), ('El Jebel', 4488, '39.39980', '-107.08910'), ('Emma', 0, '39.39000', '-107.07000'), ('Glenwood Springs', 7736, '39.54490', '-107.33010'), ('Gypsum', 3654, '39.64340', '-106.94770'), ('Mc Coy', 0, '39.92000', '-106.72000'), ('Shoshone', 0, '39.58300', '-107.18000'), ('Sweetwater', 0, '39.72000', '-107.02000'), ('Wolcott', 0, '39.70000', '-106.68000')], 'partOfState': 'central', 'wfo': 'GJT'}, +'COZ009': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cedaredge', 1854, '38.89880', '-107.92630'), ('Grand Mesa', 0, '39.05000', '-107.87000'), ('Plateau City', 0, '39.18000', '-107.98000'), ('Skyway', 0, '39.05000', '-108.12000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ010': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Aspen', 5914, '39.19460', '-106.82690'), ('Avon', 5561, '39.65250', '-106.53310'), ('Dowd', 0, '39.60000', '-106.45000'), ('Eagle-Vail', 0, '39.62200', '-106.48910'), ('Gilman', 0, '39.53000', '-106.40000'), ('Meridith', 0, '39.35000', '-106.72000'), ('Minturn', 1068, '39.58430', '-106.42610'), ('Redcliff', 0, '39.52000', '-106.37000'), ('Red Cliff', 289, '39.50840', '-106.36950'), ('Redstone', 0, '39.18000', '-107.23000'), ('Snowmass', 0, '39.33000', '-106.98000'), ('Snowmass Village', 1822, '39.19550', '-106.93870'), ('State Bridge', 0, '39.83000', '-106.60000'), ('Tennessee Pass', 0, '39.36400', '-106.31300'), ('Vail', 4531, '39.63950', '-106.35770'), ('Woody Creek', 0, '39.28000', '-106.88000')], 'partOfState': 'central', 'wfo': 'GJT'}, +'COZ011': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Austin', 0, '38.78000', '-107.93000'), ('Bowie', 0, '38.92000', '-107.53000'), ('Cory', 0, '38.77000', '-107.98000'), ('Crawford', 366, '38.70510', '-107.60860'), ('Delta', 6400, '38.74480', '-108.07370'), ('Eckert', 2880, '38.84200', '-107.95000'), ('Hotchkiss', 968, '38.80100', '-107.71790'), ('Lazear', 0, '38.78000', '-107.77000'), ('Montrose', 12344, '38.47940', '-107.87140'), ('Olathe', 1573, '38.60570', '-107.98170'), ('Orchard City', 2880, '38.81480', '-107.96360'), ('Paonia', 1497, '38.86950', '-107.58950')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ012': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Crested Butte', 1529, '38.87010', '-106.98310'), ('Maher', 0, '38.65000', '-107.58000'), ('Marble', 105, '39.07140', '-107.18840'), ('Mount Crested Butt', 707, '38.90780', '-106.96620'), ('Pitkin', 124, '38.60810', '-106.51610'), ('Ragged Mtn', 0, '39.10000', '-107.40000'), ('Somerset', 0, '38.92000', '-107.43000'), ('Tincup', 0, '38.75000', '-106.47000'), ('Waunita Hot Spgs', 0, '38.52000', '-106.50000'), ('White Pine', 0, '38.50000', '-106.40000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ013': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Buford', 0, '39.98000', '-107.58000')], 'partOfState': 'central', 'wfo': 'GJT'}, +'COZ014': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Almont', 0, '38.67000', '-106.83000'), ('Cimmaron', 0, '38.45000', '-107.55000'), ('Gunnison', 5409, '38.54470', '-106.92700'), ('Iola', 0, '38.43000', '-107.08000'), ('Ohio', 0, '38.57000', '-106.60000'), ('Parlin', 0, '38.50000', '-106.72000'), ('Powderhorn', 0, '38.28000', '-107.12000'), ('Sapinero', 0, '38.43000', '-107.38000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ017': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Colona', 0, '38.28000', '-107.75000'), ('Escalante Forks', 0, '38.58000', '-108.40000'), ('Glade Park', 0, '39.00000', '-108.73000'), ('Ridgway', 713, '38.15580', '-107.75220')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ018': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Camp Bird', 0, '37.97000', '-107.73000'), ('Fall Creek', 0, '38.02000', '-108.03000'), ('Lake City', 375, '38.02910', '-107.31030'), ('Ophir', 113, '37.85690', '-107.82890'), ('Ouray', 813, '38.02610', '-107.67190'), ('Placerville', 0, '38.02000', '-108.07000'), ('Red Mtn', 0, '37.90000', '-107.70000'), ('Sawpit', 25, '37.99480', '-107.99990'), ('Telluride', 2221, '37.93870', '-107.81240'), ('Trout Lake', 0, '37.80000', '-107.87000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ019': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Chimney Rock', 0, '37.20000', '-107.18000'), ('Chromo', 0, '37.03000', '-106.83000'), ('Dunton', 0, '37.77000', '-108.10000'), ('Elk Park', 0, '37.68000', '-107.67000'), ('Gladstone', 0, '37.88000', '-107.65000'), ('Hesperus', 0, '37.28000', '-108.03000'), ('La Plata', 0, '37.40000', '-108.07000'), ('Mayday', 0, '37.35000', '-108.07000'), ('Rico', 205, '37.68800', '-108.03100'), ('Rockwood', 0, '37.50000', '-107.80000'), ('Silverton', 531, '37.81090', '-107.66400'), ('Stoner', 0, '37.58000', '-108.32000'), ('Tacoma', 0, '37.48000', '-107.77000'), ('Vallecito', 0, '37.38000', '-107.60000')], 'partOfState': 'southeast', 'wfo': 'GJT'}, +'COZ020': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bedrock', 0, '38.32000', '-108.88000'), ('Gateway', 0, '38.68248', '-108.97511'), ('Naturita', 635, '38.21900', '-108.56800'), ('Norwood', 438, '38.13030', '-108.29160'), ('Nucla', 734, '38.26680', '-108.54960'), ('Paradox', 0, '38.37000', '-108.95000'), ('Redvale', 0, '38.18000', '-108.42000'), ('Slick Rock', 0, '38.08300', '-108.89200'), ('Uravan', 0, '38.37000', '-108.73000'), ('Vancorum', 0, '38.23000', '-108.60000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ021': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arriola', 0, '37.43000', '-108.65000'), ('Cahone', 0, '37.65000', '-108.82000'), ('Cortez', 7977, '37.35150', '-108.57730'), ('Dolores', 857, '37.47450', '-108.49760'), ('Dove Creek', 698, '37.76600', '-108.90520'), ('Egnar', 0, '37.92000', '-108.93000'), ('Lebanon', 0, '37.45000', '-108.60000'), ('Lewis', 0, '37.50000', '-108.67000'), ('Mancos', 1119, '37.34650', '-108.29340'), ('Mesa Verde Natl Park', 0, '37.15000', '-108.48000'), ('Towaoc', 1097, '37.20990', '-108.72720'), ('Yellow Jacket', 0, '37.53000', '-108.72000')], 'partOfState': 'west central', 'wfo': 'GJT'}, +'COZ022': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Allison', 0, '37.02000', '-107.50000'), ('Bayfield', 1549, '37.23420', '-107.59490'), ('Bondad', 0, '37.08000', '-107.88000'), ('Breen', 0, '37.18000', '-108.08000'), ('Durango', 13922, '37.28600', '-107.86940'), ('Falfa', 0, '37.20000', '-107.78000'), ('Hermosa', 0, '37.42000', '-107.85000'), ('Ignacio', 669, '37.11680', '-107.63440'), ('Kline', 0, '37.13000', '-108.12000'), ('Marvel', 0, '37.12000', '-108.13000'), ('Oxford', 0, '37.17000', '-107.72000'), ('Redmesa', 0, '37.10000', '-108.17000'), ('Tiffany', 0, '37.03000', '-107.53000'), ('Trimble', 0, '37.40000', '-107.85000')], 'partOfState': 'southwest', 'wfo': 'GJT'}, +'COZ023': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arboles', 232, '37.02000', '-107.40000'), ('Gato', 0, '37.03000', '-107.18000'), ('Juanita', 0, '37.03000', '-107.13000'), ('Lonetree', 0, '37.17000', '-107.17000'), ('Pagosa Junction', 0, '37.03800', '-107.19900'), ('Pagosa Springs', 1591, '37.27010', '-107.01820')], 'partOfState': 'south central', 'wfo': 'GJT'}, +'COZ030': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Brownlee', 0, '40.80000', '-106.25000'), ('Coalmont', 0, '40.57000', '-106.43000'), ('Cowdrey', 0, '40.85000', '-106.30000'), ('Rand', 0, '40.45000', '-106.17000'), ('Spicer', 0, '40.45000', '-106.43000'), ('Walden', 734, '40.73060', '-106.28090')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COZ031': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Mt Zirkel', 0, '40.83300', '-106.66300'), ('Pearl', 0, '40.98000', '-106.53000'), ('Rabbit Ears Pass', 0, '40.38300', '-106.61300')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COZ032': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Elkdale', 0, '40.03800', '-105.87800'), ('Fraser', 910, '39.93700', '-105.79440'), ('Granby', 1525, '40.08840', '-105.93720'), ('Grand Lake', 447, '40.25120', '-105.82140'), ('Green Mtn Reservoir', 0, '39.87600', '-106.33200'), ('Heeney', 0, '39.87000', '-106.30000'), ('Hot Sulphur Spring', 521, '40.07370', '-106.09910'), ('Kremmling', 1578, '40.05640', '-106.37630'), ('Parshall', 0, '40.05000', '-106.18000'), ('Radium', 0, '39.95000', '-106.53000'), ('Silverthorne', 3196, '39.65170', '-106.08160'), ('Tabernash', 165, '39.98000', '-105.85000'), ('Williams Fork Reservoir', 0, '40.03500', '-106.20400')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COZ033': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cameron Pass', 0, '40.51700', '-105.88300'), ('Glendevey', 0, '40.78000', '-105.95000'), ('Gould', 0, '40.52000', '-106.02000'), ("Long's Peak", 0, '40.25800', '-105.61300'), ('Pingree Park', 0, '40.56700', '-105.58300'), ('Trail Ridge', 0, '40.43300', '-105.75000')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COZ034': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Alma', 179, '39.28580', '-106.06470'), ('Arapahoe Peak', 0, '40.02400', '-105.64600'), ('Aspen Springs', 0, '39.83300', '-105.48300'), ('Bakerville', 0, '39.69100', '-105.80400'), ('Berthoud Falls', 0, '39.77100', '-105.80800'), ('Berthoud Pass', 0, '39.79600', '-105.77500'), ('Blue River', 685, '39.43250', '-106.03660'), ('Blue Valley', 0, '39.70000', '-105.49200'), ('Brainard Lake', 0, '40.07900', '-105.57500'), ('Breckenridge', 2408, '39.50750', '-106.04740'), ('Caribou', 0, '39.98000', '-105.57000'), ('Como', 0, '39.32000', '-105.90000'), ('Copper Mountain', 0, '39.49200', '-106.15000'), ('Devils Thumb Park', 0, '39.96300', '-105.75000'), ('Dillon', 802, '39.62500', '-106.03900'), ('East Portal', 0, '39.90000', '-105.65000'), ('Echo Lake', 0, '39.65000', '-105.60000'), ('Fairplay', 610, '39.22380', '-105.99910'), ('Frisco', 2443, '39.57910', '-106.09600'), ('Grant', 0, '39.45000', '-105.67000'), ('Guanella Pass', 0, '39.59200', '-105.71300'), ('Highland Park', 0, '39.50100', '-105.52500'), ('Jefferson', 9011, '39.38000', '-105.80000'), ('Kenosha Pass', 0, '39.41300', '-105.75800'), ('Keystone', 0, '39.60800', '-105.96700'), ('Kokomo', 0, '39.38000', '-106.18000'), ('Loveland Pass', 0, '39.66500', '-105.87900'), ('Montezuma', 42, '39.58130', '-105.86840'), ('Mt Audubon', 0, '40.09900', '-105.61700'), ('Mt Evans', 0, '39.58600', '-105.64200'), ('Red Hill Pass', 0, '39.26500', '-105.96400'), ('Rollins Pass', 0, '39.93300', '-105.68200'), ('Russell Gulch', 0, '39.77000', '-105.52000'), ('Silver Plume', 203, '39.69610', '-105.72670'), ('St Marys Glacier', 0, '39.83600', '-105.64600'), ('Tarryall Reservoir', 0, '39.22900', '-105.60800'), ('Tolland', 0, '39.90000', '-105.60000'), ('Vail Pass', 0, '39.53100', '-106.21800'), ('Ward', 169, '40.07250', '-105.51130'), ('Winter Park', 662, '39.88690', '-105.77940')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COZ035': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Allenspark', 496, '40.20000', '-105.52000'), ('Buckhorn Mountain', 0, '40.61300', '-105.32500'), ('Crescent Village', 0, '39.93000', '-105.33000'), ('Deer Ridge', 0, '40.38000', '-105.60000'), ('Drake', 0, '40.43000', '-105.33000'), ('Eldora', 170, '39.95000', '-105.57000'), ('Estes Park', 5413, '40.37210', '-105.52100'), ('Four Corners', 0, '40.87100', '-105.91300'), ('Glen Haven', 0, '40.45000', '-105.43000'), ('Gold Hill', 0, '40.06300', '-105.40800'), ('Horsetooth Mountain', 0, '40.53900', '-105.19200'), ('Jamestown', 205, '40.11610', '-105.38960'), ('Meeker Park', 496, '40.23000', '-105.53000'), ('Mishowaka', 0, '40.69000', '-105.36700'), ('Nederland', 1394, '39.96260', '-105.50530'), ('Olympus Hgt', 0, '40.38000', '-105.47000'), ('Peaceful Valley', 0, '40.13100', '-105.50000'), ('Poudre Park', 0, '40.68000', '-105.30000'), ('Raymond', 0, '40.15000', '-105.45000'), ('Red Feather Lakes', 525, '40.80000', '-105.58000'), ('Riverside', 0, '40.17000', '-105.42000'), ('Rustic', 0, '40.70000', '-105.57000'), ('Virginia Dale', 0, '40.95000', '-105.35000')], 'partOfState': 'north central', 'wfo': 'BOU'}, +'COZ036': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Aspen Park', 874, '39.52000', '-105.27000'), ('Bailey', 0, '39.40000', '-105.47000'), ('Bergen Park', 0, '39.69200', '-105.35800'), ('Black Hawk', 118, '39.80030', '-105.49130'), ('Brookvale', 0, '39.63300', '-105.42200'), ('Buffalo Creek', 0, '39.38000', '-105.27000'), ('Central City', 515, '39.79980', '-105.51240'), ('Cheesman Reservoir', 0, '39.20800', '-105.27100'), ('Conifer', 0, '39.52000', '-105.30000'), ('Deckers', 0, '39.25000', '-105.23000'), ("Devil's Head", 0, '39.26000', '-105.10300'), ('Downieville', 0, '39.76800', '-105.61400'), ('Dumont', 0, '39.78000', '-105.60000'), ('Empire', 355, '39.75970', '-105.68260'), ('Evergreen', 9216, '39.63370', '-105.34230'), ('Floyd Hill', 0, '39.72100', '-105.40700'), ('Foxton', 0, '39.42000', '-105.23000'), ('Genesee', 3699, '39.68570', '-105.27220'), ('Georgetown', 1088, '39.71520', '-105.69600'), ('Glenisle', 0, '39.40800', '-105.50000'), ('Harris Park', 0, '39.51100', '-105.50400'), ('Idaho Springs', 1889, '39.74100', '-105.51190'), ('Idledale', 0, '39.67000', '-105.23000'), ('Indian Hills', 1197, '39.62000', '-105.23000'), ('Kittredge', 954, '39.65000', '-105.30000'), ('Lawson', 0, '39.76700', '-105.63300'), ('Perry Park', 1180, '39.26000', '-104.98300'), ('Pine', 0, '39.42000', '-105.33000'), ('Pinecliffe', 0, '39.93000', '-105.43000'), ('Pleasant View', 0, '39.72000', '-105.17000'), ('Red Rocks Park', 0, '39.66400', '-105.20100'), ('Rocky Flats', 0, '39.89200', '-105.20400'), ('Rollinsville', 0, '39.92000', '-105.50000'), ('Roxborough Park', 4446, '39.44200', '-105.07400'), ('Santa Maria', 0, '39.45000', '-105.63300'), ('Shaffers Crossing', 0, '39.45000', '-105.33000'), ('Shamballa', 0, '39.37000', '-105.00000'), ('Shawnee', 0, '39.42000', '-105.55000'), ('Singleton', 0, '39.44400', '-105.60300'), ('South Platte', 0, '39.40000', '-105.17000'), ('Sprucewood', 0, '39.34900', '-105.12400'), ('Tiny Town', 0, '39.60000', '-105.22000'), ('Wah Keeney Park', 9216, '39.65000', '-105.33000'), ('Wellington Lake', 0, '39.31400', '-105.35800'), ('Westcreek', 105, '39.15000', '-105.17000'), ('White Ranch Open Space', 0, '39.81700', '-105.28100')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COZ037': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('11-Mile Canyon Res', 0, '38.90400', '-105.48300'), ('Antero Junction', 0, '38.92000', '-105.97000'), ('Antero Reservoir', 0, '38.99200', '-105.89200'), ('Garo', 0, '39.12000', '-105.90000'), ('Guffey', 0, '38.75000', '-105.53000'), ('Hartsel', 0, '39.02000', '-105.80000'), ('Lake George', 0, '38.98000', '-105.37000'), ('Tarryall', 0, '39.10000', '-105.43000'), ('Wilkerson Pass', 0, '39.04000', '-105.52500')], 'partOfState': 'central', 'wfo': 'BOU'}, +'COZ038': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Ault', 1432, '40.58400', '-104.73310'), ('Bellvue', 0, '40.63000', '-105.17000'), ('Berthoud', 4839, '40.30570', '-105.08120'), ('Black Hollow Reservoir', 0, '40.60800', '-104.87500'), ('Buckeye', 0, '40.80000', '-105.12000'), ('Campion', 1832, '40.34470', '-105.09500'), ('Carr', 0, '40.90000', '-104.87000'), ('Fort Collins', 118652, '40.55550', '-105.06850'), ('Harmony', 118652, '40.52500', '-105.08300'), ('Hereford', 0, '40.97000', '-104.30000'), ('Kelim', 0, '40.40000', '-104.95000'), ('Laporte', 2691, '40.62000', '-105.13000'), ('Livermore', 0, '40.75000', '-105.23000'), ('Loveland', 50608, '40.41860', '-105.07170'), ('Loveland Heights', 0, '40.38000', '-105.19000'), ('Masonville', 0, '40.48000', '-105.20000'), ('Natural Fort Rest Area', 0, '40.95700', '-104.92200'), ('Nunn', 471, '40.70390', '-104.78040'), ('Owl Canyon', 0, '40.72000', '-105.13000'), ('Pierce', 884, '40.63290', '-104.75460'), ('Purcell', 0, '40.63000', '-104.58000'), ('Rockport', 0, '40.90000', '-104.78000'), ('Teds Place', 0, '40.67000', '-105.18000'), ('Timnath', 223, '40.52930', '-104.98320'), ('Wellington', 2672, '40.70280', '-105.00190')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ039': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Applewood', 7123, '39.74720', '-105.16230'), ('Arvada', 102153, '39.82110', '-105.10670'), ('Boulder', 94673, '40.02690', '-105.25100'), ('Broomfield', 38272, '39.94400', '-105.06170'), ('Chatfield Reservoir', 0, '39.55800', '-105.06400'), ('Columbine', 0, '39.58790', '-105.06880'), ('Edgewater', 5445, '39.75030', '-105.06260'), ('Eldorado Springs', 557, '39.93000', '-105.27000'), ('Golden', 17159, '39.73890', '-105.21550'), ('Gunbarrel', 9435, '40.06550', '-105.17110'), ('Hygiene', 0, '40.18000', '-105.17000'), ('Ken Caryl', 30887, '39.57590', '-105.11170'), ('Lafayette', 23197, '39.99430', '-105.09800'), ('Lakeside', 20, '39.77880', '-105.05750'), ('Lakewood', 144126, '39.69520', '-105.11360'), ('Leyden', 102153, '39.82000', '-105.12000'), ('Longmont', 71093, '40.17280', '-105.11170'), ('Louisville', 18937, '39.96840', '-105.13960'), ('Lyons', 1585, '40.22290', '-105.26850'), ('Marshall', 0, '39.95000', '-105.23000'), ('Morrison', 430, '39.65450', '-105.18240'), ('Mountain View', 569, '39.77570', '-105.05570'), ('Niwot', 4160, '40.09560', '-105.15580'), ('Superior', 9011, '39.92920', '-105.15490'), ('Wheat Ridge', 32913, '39.77340', '-105.09860')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ040': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Acres Green', 3205, '39.55800', '-104.89600'), ('Adams City', 20991, '39.81500', '-104.90500'), ('Arapahoe Park', 0, '39.63600', '-104.68800'), ('Aurora', 276393, '39.69900', '-104.72980'), ('Barr Lake', 20905, '39.95000', '-104.78000'), ('Bow Mar', 847, '39.62580', '-105.05210'), ('Brighton', 20905, '39.95800', '-104.79480'), ('Broadway Estates', 43520, '39.58000', '-104.95000'), ('Buckley ANGB', 276393, '39.70000', '-104.75000'), ('Castlewood', 25567, '39.58470', '-104.90050'), ('Cherry Creek Reservoir', 0, '39.63200', '-104.87000'), ('Cherry Hills Village', 5958, '39.63750', '-104.94690'), ('Cherry Knolls', 43520, '39.60000', '-104.97000'), ('Columbine Valley', 1132, '39.59810', '-105.03360'), ('Commerce City', 20991, '39.81400', '-104.86840'), ('Coronado', 100940, '39.87000', '-105.05000'), ('Denver', 554636, '39.76800', '-104.87270'), ('Denver International Arpt', 0, '39.86500', '-104.67300'), ('Derby', 6423, '39.83940', '-104.91810'), ('Englewood', 31727, '39.64740', '-104.99380'), ('Federal Heights', 12065, '39.86510', '-105.01590'), ('Glendale', 4547, '39.70410', '-104.93460'), ('Grandview Estates', 0, '39.54600', '-104.81900'), ('Greenwood Village', 11035, '39.61550', '-104.91500'), ('Henderson', 0, '39.92000', '-104.87000'), ('Highlands Ranch', 70931, '39.55400', '-104.96890'), ('Kassler', 4446, '39.48000', '-105.08000'), ('Littleton', 40340, '39.59460', '-105.01440'), ('Louviers', 237, '39.47000', '-105.00000'), ('Manila Village', 0, '39.75700', '-104.51700'), ('Northglenn', 31575, '39.90570', '-104.97790'), ('Oea Building', 0, '39.63800', '-104.58300'), ('Parker', 23558, '39.50960', '-104.76380'), ('Sedalia', 211, '39.43000', '-104.97000'), ('Shaw Hgts', 100940, '39.87000', '-105.03000'), ('Sheridan', 5600, '39.64890', '-105.01710'), ('Sherrelwood', 17657, '39.83780', '-105.00090'), ('Smoky Hill', 0, '39.60700', '-104.77000'), ('Southglenn', 43520, '39.58740', '-104.95220'), ('Southwood', 0, '39.62000', '-104.98000'), ('Thornton', 82384, '39.89200', '-104.95520'), ('Watkins', 0, '39.75000', '-104.60000'), ('Welby', 12973, '39.83830', '-104.96470'), ('Western Hills', 17657, '39.83000', '-105.00000'), ('Westminster', 100940, '39.88150', '-105.05090'), ('Westminster East', 0, '39.82270', '-105.00370')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ041': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Beverly Hills', 0, '39.47500', '-104.87500'), ('Castle Rock', 20224, '39.37890', '-104.85130'), ('Castlewood Canyon', 0, '39.34500', '-104.76500'), ('Elbert', 0, '39.22000', '-104.53000'), ('Elizabeth', 1434, '39.36010', '-104.59950'), ('Fondis', 0, '39.22000', '-104.45000'), ('Franktown', 99, '39.38000', '-104.75000'), ('Greenland', 0, '39.15000', '-104.83000'), ('Kiowa', 581, '39.34530', '-104.46100'), ('Larkspur', 234, '39.18160', '-104.89600'), ('Ponderosa Park', 3112, '39.39730', '-104.63550'), ('Silver Heights', 0, '39.41800', '-104.86700'), ('Simla', 663, '39.14080', '-104.08090'), ('Surrey Ridge', 0, '39.50000', '-104.87800'), ('The Pinery', 7253, '39.45520', '-104.73390')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ042': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Briggsdale', 0, '40.63000', '-104.32000'), ('Buckingham', 0, '40.62000', '-103.97000'), ('Grover', 153, '40.86920', '-104.22560'), ('Keota', 5, '40.70410', '-104.07370'), ('New Raymer', 109, '40.62500', '-103.78000'), ('Pawnee Buttes', 0, '40.81700', '-103.98300'), ('Raymer', 91, '40.60730', '-103.84390'), ('Stoneham', 0, '40.63500', '-103.65000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ043': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Barnesville', 0, '40.48000', '-104.48000'), ('Bracewell', 0, '40.42000', '-104.78000'), ('Cornish', 0, '40.52000', '-104.42000'), ('Dacono', 3015, '40.07580', '-104.94290'), ('Eaton', 2690, '40.52490', '-104.70980'), ('Erie', 6291, '40.02890', '-105.04600'), ('Evans', 9514, '40.37790', '-104.69680'), ('Firestone', 1908, '40.12090', '-104.93400'), ('Fort Lupton', 6787, '40.08520', '-104.80510'), ('Fort St Vrain', 0, '40.27500', '-104.87500'), ('Frederick', 2467, '40.10500', '-104.94240'), ('Galeton', 0, '40.52000', '-104.58000'), ('Garden City', 357, '40.39390', '-104.68870'), ('Gilcrest', 1162, '40.28270', '-104.78190'), ('Gill', 0, '40.45000', '-104.53000'), ('Greeley', 76930, '40.42130', '-104.74390'), ('Hardin', 0, '40.32000', '-104.38000'), ('Hudson', 1565, '40.07100', '-104.64290'), ('Ione', 0, '40.12000', '-104.80000'), ('Johnstown', 3827, '40.33540', '-104.91150'), ('Keenesburg', 855, '40.10890', '-104.51860'), ('Kersey', 1389, '40.38610', '-104.55980'), ('La Salle', 1849, '40.34780', '-104.70450'), ('Lochbuie', 2049, '40.00770', '-104.72010'), ('Lower Latham Reservoir', 0, '40.35000', '-104.64200'), ('Lucerne', 0, '40.48000', '-104.68000'), ('Masters', 0, '40.30000', '-104.25000'), ('Mead', 2017, '40.23430', '-104.98790'), ('Milliken', 2888, '40.31660', '-104.85270'), ('Milton Reservoir', 0, '40.24200', '-104.63300'), ('New Windsor Reservoir', 0, '40.53300', '-104.88800'), ('Peckham', 0, '40.30000', '-104.75000'), ('Platteville', 2370, '40.21690', '-104.82200'), ('Prospect Valley', 0, '40.07400', '-104.41300'), ('Riverside Reservoir', 0, '40.32500', '-104.25000'), ('Roggen', 0, '40.17000', '-104.37000'), ('Seeley Lake', 0, '40.44000', '-104.71000'), ('Severance', 597, '40.52240', '-104.84960'), ('Wattenburg', 0, '40.02000', '-104.80000'), ('Welty', 0, '40.32000', '-105.02000'), ('Windsor', 9896, '40.48520', '-104.90650')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ044': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Adena', 0, '40.01700', '-103.88600'), ('Adena School', 0, '40.11700', '-103.79200'), ('Antelope Springs', 0, '40.43800', '-103.71400'), ('Brush', 5117, '40.25680', '-103.63230'), ('Fort Morgan', 11034, '40.26520', '-103.79460'), ('Fort Morgan Airport', 11034, '40.33300', '-103.80000'), ('Gary', 0, '40.07400', '-103.58300'), ('Goodrich', 0, '40.35000', '-104.07000'), ('Hillrose', 254, '40.32450', '-103.52220'), ('Hoyt', 0, '40.02000', '-104.07000'), ('Hoyt Beet Dump', 0, '40.07400', '-104.05400'), ('Jackson Reservoir', 0, '40.38300', '-104.06700'), ('Log Lane Village', 1006, '40.27000', '-103.82840'), ('Orchard', 0, '40.33000', '-104.12000'), ('Snyder', 0, '40.32000', '-103.58000'), ('Twelve-Mile Corner', 0, '40.07300', '-103.79200'), ('Union', 0, '40.35000', '-103.50000'), ('Weldona', 0, '40.35000', '-103.97000'), ('Wiggins', 838, '40.23030', '-104.07330')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ045': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bennett', 2021, '39.75510', '-104.42340'), ('Byers', 1233, '39.71030', '-104.22470'), ('Country Gardens', 0, '39.69200', '-104.31900'), ('Deer Trail', 598, '39.61690', '-104.04180'), ('Jolly Ranch', 0, '39.64100', '-103.77500'), ('Leader', 0, '39.90000', '-104.05800'), ('Shamrock', 0, '39.88800', '-103.81300'), ('Strasburg', 1402, '39.73500', '-104.30000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ046': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Agate', 0, '39.47000', '-103.95000'), ('Arriba', 244, '39.28380', '-103.27350'), ('Cedar Point', 0, '39.35000', '-103.81700'), ('Genoa', 211, '39.27840', '-103.49940'), ('Hugo', 885, '39.13440', '-103.46710'), ('Limon', 2071, '39.26610', '-103.68950'), ('Matheson', 0, '39.17000', '-103.98000')], 'partOfState': 'east central', 'wfo': 'BOU'}, +'COZ047': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Boyero', 0, '38.93000', '-103.27000'), ('Forder', 0, '38.67900', '-103.71700'), ('Karval', 0, '38.73000', '-103.53000'), ('Kutch', 0, '38.90000', '-103.87000'), ('Punkin Center', 0, '38.85300', '-103.70000'), ('Wild Horse Point', 0, '38.56300', '-103.50300')], 'partOfState': 'east central', 'wfo': 'BOU'}, +'COZ048': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Atwood', 195, '40.55000', '-103.27000'), ('Crook', 128, '40.85830', '-102.80110'), ('Dailey', 0, '40.65000', '-102.72000'), ('Fleming', 426, '40.68120', '-102.83980'), ('Iliff', 213, '40.75790', '-103.06540'), ('Logan Corners', 0, '40.62500', '-103.35400'), ('Merino', 246, '40.48430', '-103.35350'), ('North Sterling Reservoir', 0, '40.78300', '-103.26700'), ('Padroni', 97, '40.77000', '-103.17000'), ('Pawnee Pass', 0, '40.62500', '-103.47800'), ('Peetz', 227, '40.96140', '-103.11420'), ('Proctor', 0, '40.80000', '-102.93000'), ('Reiradon Hill', 0, '40.58300', '-103.03800'), ('Sterling', 11360, '40.65090', '-103.19910'), ('St Petersburg', 0, '40.55700', '-102.81900'), ('Twin Buttes', 0, '40.91100', '-102.76900'), ('Westplains', 0, '40.86400', '-103.49900'), ('Willard', 0, '40.55000', '-103.48000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ049': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Akron', 1711, '40.16260', '-103.21170'), ('Anton', 0, '39.75000', '-103.22000'), ('Arickaree School', 0, '39.74600', '-103.03100'), ('Burdett', 0, '40.36300', '-102.94700'), ('Cope', 0, '39.67000', '-102.85000'), ('Elba', 0, '39.92000', '-103.18000'), ('Fremont Butte', 0, '40.25000', '-103.30700'), ('Hyde', 0, '40.13000', '-102.83000'), ('Last Chance', 0, '39.73000', '-103.58000'), ('Lindon', 0, '39.73000', '-103.40000'), ('Lone Star', 0, '40.35300', '-102.84200'), ('Messex', 0, '40.38000', '-103.38000'), ('Midway', 0, '40.22800', '-103.39600'), ('Otis', 534, '40.14970', '-102.96160'), ('Platner', 0, '40.16000', '-103.07000'), ('Prewitt Reservoir', 0, '40.42900', '-103.35800'), ('Thurman', 0, '39.59600', '-103.21800'), ('Woodlin School', 0, '39.78800', '-103.51900'), ('Woodrow', 0, '39.98000', '-103.58000')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ050': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Julesburg', 1467, '40.98670', '-102.26460'), ('Marks Butte', 0, '40.81700', '-102.50700'), ('Ovid', 330, '40.95990', '-102.38810'), ('Sedgwick', 191, '40.93480', '-102.52480'), ('Sixteen-Mile Corner', 0, '40.76400', '-102.22900')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ051': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Amherst', 0, '40.68000', '-102.17000'), ('Fairfield', 0, '40.73800', '-102.47900'), ('Haxtun', 982, '40.64270', '-102.62880'), ('Highland Center', 0, '40.52600', '-102.58900'), ('Holyoke', 2261, '40.58490', '-102.30370'), ('Paoli', 42, '40.61210', '-102.47240'), ('Pleasant Valley', 0, '40.61300', '-102.11700'), ('Wages', 0, '40.58400', '-102.45400')], 'partOfState': 'northeast', 'wfo': 'BOU'}, +'COZ058': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Climax', 0, '39.37000', '-106.18000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ059': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Leadville', 2821, '39.24680', '-106.29380'), ('Turquoise Lake', 0, '39.27000', '-106.38000'), ('Twin Lakes', 0, '39.08000', '-106.38000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ060': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bonanza', 14, '38.30000', '-106.12000'), ('Independence Pass', 0, '39.10800', '-106.56400'), ('Mt Elbert', 0, '39.11500', '-106.44600'), ('Mt Massive', 0, '39.18300', '-106.47500')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ061': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Alpine', 0, '38.71332', '-106.27568'), ('Granite', 0, '39.05000', '-106.27000'), ('St Elmo', 0, '38.70250', '-106.34860')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ062': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Buena Vista', 2195, '38.83270', '-106.14130'), ('Maysville', 0, '38.54000', '-106.22000'), ('Nathrop', 0, '38.73000', '-106.08000'), ('Poncha Springs', 466, '38.51410', '-106.07410'), ('Salida', 5504, '38.53270', '-105.99980')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ063': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ064': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Sargents', 0, '38.40000', '-106.42000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ065': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ066': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('North Pass', 0, '38.21000', '-106.57000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COZ067': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Creede', 377, '37.85060', '-106.92650'), ('Platoro', 0, '37.35000', '-106.53000'), ('South Fork', 604, '37.67000', '-106.62000'), ('Wagon Wheel Gap', 0, '37.77000', '-106.82000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COZ068': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cumbres Pass', 0, '37.02000', '-106.43000'), ('Wolf Creek Pass', 0, '37.48000', '-106.80000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COZ069': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Center', 2392, '37.75180', '-106.10990'), ('Crestone', 73, '37.99500', '-105.69730'), ('Del Norte', 1705, '37.67830', '-106.35210'), ('La Garita', 0, '37.83000', '-106.25000'), ('Moffat', 114, '38.00170', '-105.90430'), ('Saguache', 578, '38.08610', '-106.14090'), ('Villa Grove', 0, '38.25000', '-105.95000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ070': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Alamosa', 7960, '37.46880', '-105.87310'), ('Great Sand Dunes', 0, '37.74000', '-105.51500'), ('Hooper', 123, '37.73000', '-105.87760'), ('Monte Vista', 4529, '37.57860', '-106.14420'), ('Mosca', 0, '37.65000', '-105.88000'), ('San Luis Lake', 0, '37.67000', '-105.72000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COZ071': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Antonito', 873, '37.07650', '-106.01020'), ('Blanca', 391, '37.43890', '-105.51190'), ('Bountiful', 0, '37.25000', '-105.98300'), ('Capulin', 0, '37.28000', '-106.12000'), ('Chama', 0, '37.17000', '-105.38000'), ('Conejos', 0, '37.08000', '-106.02000'), ('Fort Garland', 432, '37.43000', '-105.43000'), ('Garcia', 0, '37.00000', '-105.55000'), ('Jaroso', 0, '37.00000', '-105.63000'), ('La Jara', 877, '37.27440', '-105.95950'), ('Manassa', 1042, '37.17290', '-105.93600'), ('Mesita', 0, '37.08000', '-105.58000'), ('Ortiz', 0, '37.03000', '-106.03000'), ('Romeo', 375, '37.17160', '-105.98590'), ('San Acacio', 0, '37.22000', '-105.57000'), ('Sanford', 817, '37.25740', '-105.90000'), ('San Luis', 739, '37.20090', '-105.42360'), ('San Pablo', 0, '37.15000', '-105.40000')], 'partOfState': 'south central', 'wfo': 'PUB'}, +'COZ072': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('La Veta Pass', 0, '37.59000', '-105.18000'), ('Poncha Pass', 0, '38.43000', '-106.09000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ073': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Blanca Peak', 0, '37.58000', '-105.49000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ074': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cuchara', 0, '37.38000', '-105.10000'), ('Stonewall', 0, '37.15000', '-105.02000'), ('Weston', 0, '37.13300', '-105.01700')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ075': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Spanish Peaks', 0, '37.38000', '-104.95000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ076': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ077': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Coaldale', 0, '38.37000', '-105.75000'), ('Cotopaxi', 0, '38.37000', '-105.68000'), ('Hillside', 0, '38.27000', '-105.60000'), ('Howard', 0, '38.45000', '-105.83000'), ('Swissvale', 0, '38.48000', '-105.92000'), ('Texas Creek', 0, '38.40000', '-105.58000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ078': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Silver Cliff', 512, '38.11730', '-105.40450'), ('Westcliffe', 417, '38.13290', '-105.46510')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ079': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Beulah', 0, '38.08000', '-104.98000'), ('Rosita', 0, '38.10000', '-105.33000'), ('Rye', 202, '37.92180', '-104.93100'), ('San Isabel', 0, '37.98000', '-105.03000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ080': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ081': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cascade', 0, '38.90000', '-104.97000'), ('Chipita Park', 0, '38.92000', '-105.00000'), ('Cripple Creek', 1115, '38.74630', '-105.17870'), ('Crystola', 0, '38.95000', '-105.02000'), ('Divide', 0, '38.94000', '-105.15000'), ('Florissant', 0, '38.95000', '-105.30000'), ('Green Mountain Falls', 773, '38.93420', '-105.01970'), ('Victor', 445, '38.70840', '-105.14060'), ('Woodland Park', 6515, '38.99500', '-105.05170')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ082': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Pikes Peak', 0, '38.82000', '-105.04000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ083': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Canon City', 15431, '38.46400', '-105.23440'), ('Florence', 3653, '38.38520', '-105.11640'), ('Penrose', 4070, '38.43110', '-105.01250'), ('Royal Gorge', 0, '38.46000', '-105.31300'), ('Wetmore', 0, '38.23000', '-105.08000')], 'partOfState': 'central', 'wfo': 'PUB'}, +'COZ084': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Air Force Academy', 0, '38.98000', '-104.86010'), ('Black Forest', 13247, '39.04630', '-104.66810'), ('Calhan', 896, '39.03440', '-104.29930'), ('Monument', 1971, '39.07010', '-104.85710'), ('Palmer Lake', 2179, '39.11680', '-104.90590'), ('Peyton', 0, '39.03000', '-104.48000'), ('Ramah', 117, '39.12190', '-104.16660')], 'partOfState': 'east central', 'wfo': 'PUB'}, +'COZ085': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Colorado Springs', 360890, '38.86320', '-104.75990'), ('Ellicott', 0, '38.84000', '-104.38000'), ('Falcon', 0, '38.93000', '-104.62000'), ('Fountain', 15197, '38.66690', '-104.69330'), ('Manitou Springs', 4980, '38.85710', '-104.91090'), ('Peterson AFB', 360890, '38.83000', '-104.70000'), ('Rush', 0, '38.84000', '-104.08000'), ('Schriever AFB', 0, '38.80000', '-104.52000'), ('Security', 0, '38.74400', '-104.71150'), ('Truckton', 0, '38.73000', '-104.18000'), ('Yoder', 0, '38.84000', '-104.22000')], 'partOfState': 'east central', 'wfo': 'PUB'}, +'COZ086': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Avondale', 754, '38.23000', '-104.35000'), ('Blende', 0, '38.20000', '-104.57000'), ('Boone', 323, '38.25010', '-104.25580'), ('Colorado City', 2018, '37.94400', '-104.84630'), ('Pinon', 0, '38.42000', '-104.60000'), ('Pueblo', 102121, '38.29800', '-104.62100'), ('Pueblo Depot', 0, '38.32000', '-104.33000'), ('Pueblo Reservoir', 0, '38.26000', '-104.75000'), ('Pueblo West', 16899, '38.34990', '-104.72210')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ087': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Farisita', 0, '37.75000', '-105.07000'), ('Gardner', 0, '37.78000', '-105.17000'), ('La Veta', 924, '37.51000', '-105.00730'), ('Red Wing', 0, '37.73000', '-105.30000'), ('Walsenburg', 4182, '37.62670', '-104.77710')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ088': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Aguilar', 593, '37.40410', '-104.65440'), ('Boncarbo', 0, '37.22000', '-104.70000'), ('Cokedale', 139, '37.14340', '-104.62150'), ('Gulnare', 0, '37.33000', '-104.75000'), ('Hoehne', 0, '37.28000', '-104.38000'), ('Model', 0, '37.34000', '-104.23000'), ('Segundo', 0, '37.12000', '-104.77000'), ('Trinidad', 9078, '37.16850', '-104.50570'), ('Tyrone', 0, '37.45000', '-104.20000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ089': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Crowley', 187, '38.19360', '-103.85850'), ('Olney Springs', 389, '38.16730', '-103.94410'), ('Ordway', 1248, '38.22090', '-103.75680'), ('Sugar City', 279, '38.23290', '-103.66310')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ090': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Abarr', 0, '39.85000', '-102.72000'), ('Alvin', 0, '40.30800', '-102.07800'), ('Beecher Island', 0, '39.88000', '-102.13000'), ('Bonny Reservoir', 0, '39.61300', '-102.16700'), ('Clarkville', 0, '40.38000', '-102.62000'), ('Eckley', 278, '40.11200', '-102.48820'), ('Hale', 0, '39.62800', '-102.13000'), ('Heartstrong', 0, '39.94800', '-102.57900'), ('Idalia', 0, '39.70000', '-102.30000'), ('Joes', 0, '39.65000', '-102.68000'), ('Kirk', 0, '39.62000', '-102.60000'), ('Laird', 0, '40.08000', '-102.10000'), ('Vernon', 0, '39.93310', '-102.28000'), ('Wauneta', 0, '40.29300', '-102.25100'), ('Wray', 2187, '40.07940', '-102.22600'), ('Yuma', 3285, '40.12390', '-102.72410')], 'partOfState': 'northeast', 'wfo': 'GLD'}, +'COZ091': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bethune', 225, '39.30350', '-102.42290'), ('Burlington', 3678, '39.30540', '-102.27220'), ('Flagler', 612, '39.29400', '-103.06530'), ('Seibert', 180, '39.29810', '-102.86840'), ('Stratton', 669, '39.30300', '-102.60380'), ('Vona', 95, '39.30270', '-102.74360')], 'partOfState': 'east central', 'wfo': 'GLD'}, +'COZ092': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arapahoe', 2021, '38.85000', '-102.17000'), ('Aroya', 0, '38.85000', '-103.13000'), ('Cheyenne Wells', 1010, '38.81940', '-102.35080'), ('Firstview', 0, '38.82000', '-102.53000'), ('Kit Carson', 253, '38.76310', '-102.79570'), ('Wild Horse', 0, '38.82000', '-103.00000')], 'partOfState': 'east central', 'wfo': 'GLD'}, +'COZ093': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Cheraw', 211, '38.10780', '-103.51070'), ('Fowler', 1206, '38.12830', '-104.02450'), ('Higbee', 0, '37.77000', '-103.45000'), ('La Junta', 7568, '37.98030', '-103.54440'), ('Manzanola', 525, '38.10880', '-103.86620'), ('Rocky Ford', 4286, '38.04990', '-103.72190'), ('Swink', 696, '38.01380', '-103.62730'), ('Timpas', 0, '37.82000', '-103.77000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ094': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Branson', 77, '37.01460', '-103.87910'), ('Delhi', 0, '37.63000', '-104.02000'), ('Kim', 65, '37.24630', '-103.35180'), ('Thatcher', 0, '37.56000', '-104.03000'), ('Trinchera', 0, '37.05000', '-104.03000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ095': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Arlington', 0, '38.33000', '-103.33000'), ('Eads', 747, '38.48150', '-102.77940'), ('Haswell', 84, '38.45280', '-103.16390'), ('Neegronda Reservoir', 0, '38.30000', '-102.75000'), ('Sweetwater Reservoir', 0, '38.35000', '-102.76000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ096': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Brandon', 0, '38.45000', '-102.43000'), ('Chivington', 0, '38.44000', '-102.53000'), ('Neenoshe Reservoir', 0, '38.34000', '-102.69000'), ('Queens Reservoir', 0, '38.29000', '-102.64000'), ('Sheridan Lake', 66, '38.46600', '-102.29350'), ('Towner', 0, '38.47000', '-102.08000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ097': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Caddoa', 0, '38.07000', '-102.93000'), ('Fort Lyon', 0, '38.10000', '-103.15000'), ('Hasty', 0, '38.12000', '-102.97000'), ('John Martin Reservoir', 0, '38.01700', '-103.03300'), ('Las Animas', 2758, '38.06680', '-103.22540'), ('McClave', 0, '38.13000', '-102.85000')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ098': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Bristol', 0, '38.12000', '-102.32000'), ('Granada', 640, '38.06370', '-102.31060'), ('Hartman', 111, '38.12090', '-102.21810'), ('Holly', 1048, '38.05560', '-102.12400'), ('Lamar', 8869, '38.08030', '-102.61750'), ('Wiley', 483, '38.15610', '-102.71870')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'COZ099': {'fullStateName': 'Colorado', 'state': 'CO', 'cities': [('Campo', 150, '37.10470', '-102.57790'), ('Pritchett', 137, '37.37020', '-102.85860'), ('Springfield', 1562, '37.40660', '-102.61680'), ('Stonington', 0, '37.30000', '-102.18000'), ('Two Buttes', 67, '37.56050', '-102.39590'), ('Vilas', 110, '37.37410', '-102.44650'), ('Walsh', 723, '37.38550', '-102.27960')], 'partOfState': 'southeast', 'wfo': 'PUB'}, +'CTZ001': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Canaan', 1288, '42.03160', '-73.33140'), ('Cornwall Bridge', 1110, '41.81800', '-73.37080'), ('Falls Village', 1288, '41.95450', '-73.36050'), ('Kent', 1847, '41.72420', '-73.47850'), ('New Hartford', 1049, '41.87970', '-72.97390'), ('Norfolk', 1288, '41.99270', '-73.19880'), ('Sharon', 884, '41.87820', '-73.47430'), ('Torrington', 35202, '41.83500', '-73.12940'), ('Winsted', 7321, '41.92700', '-73.06690')], 'partOfState': 'northern', 'wfo': 'ALY'}, +'CTZ002': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Avon', 2805, '41.80000', '-72.83333'), ('Berlin', 8541, '41.61667', '-72.75000'), ('Bloomfield', 3020, '41.81667', '-72.73333'), ('Bristol', 60062, '41.68120', '-72.94100'), ('Burlington', 2686, '41.76667', '-72.96667'), ('Canton', 1565, '41.81667', '-72.90000'), ('East Granby', 1371, '41.93333', '-72.71667'), ('East Hartford', 49575, '41.76140', '-72.61590'), ('East Windsor', 3469, '41.85000', '-72.60000'), ('Enfield', 8067, '41.96667', '-72.56667'), ('Farmington', 71538, '41.71667', '-72.83333'), ('Glastonbury', 7157, '41.70090', '-72.60000'), ('Granby', 2453, '41.95000', '-72.78333'), ('Hartford', 121578, '41.76570', '-72.68390'), ('Manchester', 30595, '41.78333', '-72.51667'), ('Marlborough', 1048, '41.63333', '-72.45000'), ('New Britain', 71538, '41.67510', '-72.78780'), ('Newington', 29306, '41.68730', '-72.73070'), ('Plainville', 60062, '41.66667', '-72.90000'), ('Rocky Hill', 7157, '41.66667', '-72.63333'), ('Simsbury', 5603, '41.88300', '-72.81140'), ('Southington', 5789, '41.60000', '-72.88333'), ('South Windsor', 49575, '41.81667', '-72.61667'), ('Suffield', 1244, '41.98120', '-72.65030'), ('West Hartford', 63589, '41.76770', '-72.75440'), ('Wethersfield', 26271, '41.70110', '-72.67010'), ('Windsor', 3020, '41.85000', '-72.65000'), ('Windsor Locks', 12043, '41.92600', '-72.65800')], 'partOfState': 'northern', 'wfo': 'BOX'}, +'CTZ003': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Andover', 2914, '41.73333', '-72.36667'), ('Bolton', 0, '41.76667', '-72.43333'), ('Columbia', 1381, '41.70000', '-72.30000'), ('Coventry', 1381, '41.78333', '-72.30000'), ('Ellington', 3469, '41.90000', '-72.46667'), ('Hebron', 3212, '41.65000', '-72.36667'), ('Mansfield', 10996, '41.83333', '-72.25000'), ('Rockville', 7708, '41.86667', '-72.46667'), ('Somers', 1626, '41.98333', '-72.45000'), ('Stafford', 4100, '41.98333', '-72.28333'), ('Stafford Springs', 4100, '41.95410', '-72.30950'), ('Storrs', 10996, '41.80610', '-72.25670'), ('Tolland', 1331, '41.87140', '-72.36900'), ('Union', 1331, '41.98333', '-72.15000'), ('Vernon', 0, '41.81667', '-72.48333'), ('Willington', 10996, '41.86667', '-72.27000')], 'partOfState': 'northern', 'wfo': 'BOX'}, +'CTZ004': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Ashford', 10996, '41.86667', '-72.11667'), ('Brooklyn', 1085, '41.78333', '-71.95000'), ('Canterbury', 2638, '41.70000', '-71.96667'), ('Chaplin', 15823, '41.80000', '-72.11667'), ('Danielson', 4265, '41.80000', '-71.88333'), ('Eastford', 1211, '41.90000', '-72.08333'), ('Hampton', 1085, '41.78333', '-72.05000'), ('Killingly', 4265, '41.83333', '-71.86667'), ('Plainfield', 2638, '41.67650', '-71.92480'), ('Pomfret', 1211, '41.90000', '-71.96667'), ('Putnam', 6746, '41.91670', '-71.90000'), ('Scotland', 1278, '41.70000', '-72.08333'), ('Sterling', 3237, '41.70000', '-71.83333'), ('Thompson', 1424, '41.95000', '-71.86667'), ('Willimantic', 15823, '41.71560', '-72.21800'), ('Windham', 1278, '41.70000', '-72.16667'), ('Woodstock', 1211, '41.95000', '-71.98333')], 'partOfState': 'northern', 'wfo': 'BOX'}, +'CTZ005': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Bethel', 9137, '41.37150', '-73.41160'), ('Danbury', 74848, '41.40210', '-73.47150'), ('Easton', 34243, '41.24000', '-73.31000'), ('Georgetown', 1650, '41.26000', '-73.43000'), ('Monroe', 38101, '41.36000', '-73.20000'), ('Newtown', 1843, '41.41320', '-73.31600'), ('Ridgefield', 7212, '41.27380', '-73.49990'), ('Shelton', 38101, '41.32000', '-73.10000'), ('Sherman', 6633, '41.58000', '-73.50000'), ('Trumbull', 34243, '41.25820', '-73.20750'), ('Wilton', 1650, '41.18000', '-73.42000')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ006': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Ansonia', 18554, '41.34340', '-73.06900'), ('Beacon Falls', 30989, '41.44000', '-73.04000'), ('Cheshire', 5789, '41.50420', '-72.90010'), ('Derby', 12391, '41.32670', '-73.08280'), ('Hamden', 23035, '41.37000', '-72.90000'), ('Meriden', 58244, '41.53670', '-72.79520'), ('Naugatuck', 30989, '41.48960', '-73.05200'), ('North Haven', 23035, '41.38090', '-72.85640'), ('Oxford', 18554, '41.42000', '-73.11000'), ('Seymour', 18554, '41.40000', '-73.06000'), ('Southbury', 3435, '41.48560', '-73.22430'), ('Wallingford', 17509, '41.44980', '-72.81940'), ('Waterbury', 107271, '41.55840', '-73.03740'), ('Wolcott', 5360, '41.61000', '-72.98000')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ007': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Chester', 1546, '41.40050', '-72.45380'), ('Cromwell', 5534, '41.60000', '-72.63000'), ('Durham', 2773, '41.47390', '-72.68190'), ('East Haddam', 1263, '41.45500', '-72.46000'), ('East Hampton', 2254, '41.57290', '-72.49600'), ('Higganum', 1671, '41.49120', '-72.55800'), ('Killingworth', 3516, '41.35000', '-72.56000'), ('Middletown', 43167, '41.54840', '-72.65430'), ('Millington', 3212, '41.48000', '-72.35000'), ('Moodus', 1263, '41.50400', '-72.45010'), ('Portland', 5534, '41.56000', '-72.63000')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ008': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Colchester', 3212, '41.57400', '-72.33200'), ('Franklin', 36117, '41.60000', '-72.14000'), ('Gales Ferry', 2975, '41.46000', '-72.09000'), ('Jewett City', 3053, '41.60590', '-71.98170'), ('Lebanon', 15823, '41.66000', '-72.24000'), ('Ledyard Center', 2975, '41.47000', '-72.03000'), ('Montville', 2975, '41.44360', '-72.12440'), ('North Lyme', 2573, '41.41000', '-72.34000'), ('North Stonington', 5474, '41.44000', '-71.89000'), ('Norwich', 36117, '41.55020', '-72.08790'), ('Preston', 3053, '41.55000', '-71.99000'), ('Salem', 3212, '41.48000', '-72.27000'), ('Voluntown', 2638, '41.59000', '-71.85000')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ009': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Bridgeport', 139529, '41.18630', '-73.19620'), ('Darien', 19607, '41.05110', '-73.47970'), ('Fairfield', 25749, '41.13000', '-73.28000'), ('New Canaan', 117083, '41.14000', '-73.49000'), ('Norwalk', 82951, '41.09390', '-73.42020'), ('Stamford', 117083, '41.02000', '-73.56000'), ('Stratford', 49976, '41.20430', '-73.13020'), ('Westport', 25749, '41.12320', '-73.34760')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ010': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Branford', 5735, '41.28000', '-72.81000'), ('East Haven', 28189, '41.29560', '-72.86310'), ('Guilford', 2603, '41.28030', '-72.67700'), ('Madison', 2222, '41.27600', '-72.59500'), ('Milford', 49092, '41.22620', '-73.06260'), ('New Haven', 123626, '41.31010', '-72.92410'), ('North Brandford', 5735, '41.33000', '-72.76000'), ('North Madison', 2222, '41.35000', '-72.63000'), ('Orange', 13233, '41.27940', '-73.02590'), ('West Haven', 52360, '41.27390', '-72.96830'), ('Woodmont', 1711, '41.22420', '-72.99260')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ011': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Clinton', 3516, '41.27580', '-72.53010'), ('Deep River', 2470, '41.39000', '-72.43010'), ('Essex', 2573, '41.35600', '-72.39850'), ('Fenwick', 52, '41.27110', '-72.35540'), ('Old Saybrook', 1962, '41.29140', '-72.36880'), ('Saybrook Manor', 1133, '41.28030', '-72.40620'), ('Westbrook', 2238, '41.28410', '-72.45250')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ012': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Groton', 10010, '41.34000', '-72.08000'), ('Mystic', 4001, '41.35180', '-71.97210'), ('New London', 25671, '41.35000', '-72.10000'), ('Niantic', 3085, '41.32280', '-72.19430'), ('Old Lyme', 1962, '41.31000', '-72.34000'), ('Pawcatuck', 5474, '41.37560', '-71.85300'), ('Poquonock Bridge', 1592, '41.34900', '-72.02810'), ('Waterford', 2935, '41.34270', '-72.14070')], 'partOfState': 'southern', 'wfo': 'OKX'}, +'CTZ013': {'fullStateName': 'Connecticut', 'state': 'CT', 'cities': [('Bantam', 802, '41.72350', '-73.24380'), ('Bethlehem Village', 2022, '41.64260', '-73.20350'), ('Gaylordsville', 6633, '41.64400', '-73.48720'), ('Litchfield', 1328, '41.74470', '-73.19010'), ('New Milford', 6633, '41.58850', '-73.40680'), ('New Preston', 1110, '41.68170', '-73.35430'), ('Oakville', 8618, '41.59190', '-73.08590'), ('Terryville', 5360, '41.67910', '-73.00770'), ('Thomaston', 5360, '41.67250', '-73.07320'), ('Woodbury Center', 1298, '41.54660', '-73.20700')], 'partOfState': 'northern', 'wfo': 'ALY'}, +'DCZ001': {'fullStateName': 'District of Columbia', 'state': 'DC', 'cities': [('Adams Morgan', 606900, '38.92140', '-77.04250'), ('American University', 0, '38.93690', '-77.08720'), ('Anacostia', 17136, '38.86640', '-76.98420'), ('Bolling Air Force', 0, '38.84080', '-77.01670'), ('Catholic University', 0, '38.93470', '-76.99940'), ('Georgetown', 0, '38.92280', '-77.07780'), ('Kenilworth', 0, '38.90580', '-76.94060'), ('Little Falls', 0, '38.93330', '-77.11830'), ('National Arboretum', 1249, '38.91030', '-76.96640'), ('National Zoo', 0, '38.92940', '-77.05000'), ('The Mall', 0, '38.88940', '-77.02330'), ('The White House', 0, '38.89750', '-77.03670'), ('Us Capitol', 0, '38.88970', '-77.00920'), ('Washington', 572059, '38.90510', '-77.01620')], 'partOfState': '', 'wfo': 'LWX'}, +'DEZ001': {'fullStateName': 'Delaware', 'state': 'DE', 'cities': [('Arden', 0, '39.81050', '-75.48960'), ('Ardencroft', 0, '39.80400', '-75.48680'), ('Ardentown', 0, '39.80900', '-75.48190'), ('Ashland', 0, '39.79970', '-75.65750'), ('Bear', 0, '39.62000', '-75.68000'), ('Bellefonte', 0, '39.76630', '-75.49830'), ('Brookside', 0, '39.66780', '-75.71590'), ('Chambersville', 0, '39.36360', '-75.57920'), ('Claymont', 0, '39.80300', '-75.45940'), ('Delaney Corner', 0, '39.29920', '-75.74750'), ('Delaware City', 0, '39.57550', '-75.60040'), ('Edgemoor', 0, '39.75570', '-75.50780'), ('Elsmere', 0, '39.73790', '-75.59490'), ('Glasgow', 0, '39.60470', '-75.74550'), ('Green Spring', 0, '39.31750', '-75.64920'), ('Hockessin', 0, '39.78000', '-75.69000'), ('Middletown', 0, '39.45000', '-75.72000'), ('Mount Pleasant', 0, '39.51080', '-75.71170'), ('Newark', 0, '39.67660', '-75.75770'), ('New Castle', 0, '39.66640', '-75.57040'), ('Newport', 0, '39.71330', '-75.60700'), ('North Star', 0, '39.76110', '-75.71940'), ('Odessa', 0, '39.45640', '-75.66010'), ('Pike Creek', 0, '39.73080', '-75.70440'), ('Port Penn', 0, '39.51670', '-75.57690'), ('Saint Georges', 0, '39.55500', '-75.65060'), ('Stanton', 0, '39.71570', '-75.64080'), ('Talleyville', 0, '39.81020', '-75.55030'), ('Townsend', 0, '39.39410', '-75.69300'), ('Wilmington', 0, '39.73000', '-75.53000'), ('Wilmington Manor', 0, '39.68550', '-75.58480')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'DEZ002': {'fullStateName': 'Delaware', 'state': 'DE', 'cities': [('Andrewsville', 0, '38.86140', '-75.63530'), ('Big Stone Beach', 0, '39.00140', '-75.32780'), ('Bowers', 0, '39.06030', '-75.40020'), ('Camden', 0, '39.11280', '-75.54950'), ('Cheswold', 0, '39.21650', '-75.58460'), ('Clayton', 0, '39.29060', '-75.63470'), ('Dover', 0, '39.15900', '-75.51700'), ('Dover Speedway', 0, '39.18000', '-75.53000'), ('Farmington', 0, '38.87070', '-75.57960'), ('Felton', 0, '39.00910', '-75.57790'), ('Frederica', 0, '39.00890', '-75.46480'), ('Harrington', 0, '38.92270', '-75.57230'), ('Hartly', 0, '39.16840', '-75.71310'), ('Hazlettville', 0, '39.11640', '-75.64250'), ('Highland Acres', 0, '39.11720', '-75.52310'), ('Houston', 0, '38.91680', '-75.50450'), ('Kent Acres', 0, '39.13310', '-75.51880'), ('Kenton', 0, '39.22720', '-75.66580'), ('Leipsic', 0, '39.24310', '-75.51710'), ('Little Creek', 0, '39.16520', '-75.44880'), ('Magnolia', 0, '39.06980', '-75.47670'), ('Rising Sun', 0, '39.10110', '-75.50660'), ('Riverview', 0, '39.02910', '-75.51980'), ('Rodney Village', 0, '39.12640', '-75.53690'), ('Sandtown', 0, '39.03330', '-75.71920'), ('Smyrna', 0, '39.29540', '-75.60770'), ('Viola', 0, '39.04210', '-75.57190'), ('Woodland Beach', 0, '39.33330', '-75.47500'), ('Woodside', 0, '39.07030', '-75.56850'), ('Woodside East', 0, '39.06710', '-75.53820'), ('Wyoming', 0, '39.11680', '-75.56060')], 'partOfState': 'central', 'wfo': 'PHI'}, +'DEZ003': {'fullStateName': 'Delaware', 'state': 'DE', 'cities': [('Bethel', 0, '38.57010', '-75.61980'), ('Blades', 0, '38.63470', '-75.60920'), ('Bridgeville', 0, '38.74330', '-75.60240'), ('Dagsboro', 0, '38.54920', '-75.24570'), ('Delmar', 0, '38.45880', '-75.57010'), ('Ellendale', 0, '38.80710', '-75.42430'), ('Frankford', 0, '38.52230', '-75.23290'), ('Georgetown', 0, '38.69000', '-75.39000'), ('Greenwood', 0, '38.80740', '-75.59210'), ('Gumboro', 0, '38.47750', '-75.36560'), ('Laurel', 0, '38.55500', '-75.57310'), ('Long Neck', 0, '38.62010', '-75.15100'), ('Milford', 0, '38.91410', '-75.43310'), ('Millsboro', 0, '38.58520', '-75.29180'), ('Millville', 0, '38.54960', '-75.12320'), ('Milton', 0, '38.77890', '-75.31320'), ('Seaford', 0, '38.64890', '-75.61660'), ('Selbyville', 0, '38.45810', '-75.22400'), ('Slaughter Beach', 0, '38.91230', '-75.30430'), ('Sycamore', 0, '38.59580', '-75.49080')], 'partOfState': 'central', 'wfo': 'PHI'}, +'DEZ004': {'fullStateName': 'Delaware', 'state': 'DE', 'cities': [('Bethany Beach', 0, '38.53800', '-75.06540'), ('Dewey Beach', 0, '38.69530', '-75.07680'), ('Fenwick Island', 0, '38.46070', '-75.05380'), ('Ocean View', 0, '38.54080', '-75.09270'), ('Rehoboth Beach', 0, '38.71730', '-75.08090'), ('South Bethany', 0, '38.51610', '-75.05840')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'FLZ001': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Barth', 1312, '30.76172', '-87.33032'), ('Bay Springs', 1312, '30.77350', '-87.47913'), ('Bluff Springs', 0, '30.93628', '-87.29468'), ('Bogia', 1312, '30.84253', '-87.32440'), ('Bratt', 8046, '30.96588', '-87.42749'), ('Brickton', 0, '30.73389', '-87.32141'), ('Byrneville', 0, '30.96631', '-87.32690'), ('Century', 1714, '30.88690', '-87.35608'), ('Enon', 0, '30.79309', '-87.52441'), ('Gandyville', 0, '30.99707', '-87.28821'), ('McDavid', 1714, '30.86627', '-87.31970'), ('McKinnon', 0, '30.78912', '-87.47333'), ('Molino Crossroads', 0, '30.71808', '-87.33893'), ('Oak Grove', 8046, '30.90887', '-87.42749'), ('Oyster Lodge', 0, '30.96808', '-87.23401'), ('Pine Barren', 0, '30.77753', '-87.33441'), ('Pineville', 0, '30.89893', '-87.58252'), ('South Flomaton', 0, '30.99188', '-87.25751'), ('Tenile', 0, '30.73169', '-87.46442'), ('Walnut Hill', 8046, '30.88550', '-87.51001')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLZ002': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Avondale', 0, '30.45190', '-87.30658'), ('Barrineau Park', 1312, '30.69391', '-87.43610'), ('Beach Haven', 0, '30.38489', '-87.30780'), ('Bellview', 21201, '30.46210', '-87.31189'), ('Beulah', 21201, '30.53448', '-87.40161'), ('Bohemia', 0, '30.48352', '-87.15991'), ('Brent', 22257, '30.47290', '-87.24951'), ('Brownsville', 21939, '30.42529', '-87.25189'), ('Cantonment', 11365, '30.57269', '-87.33862'), ('Chanticleer', 0, '30.32111', '-87.39532'), ('Cottage Hill', 11365, '30.63269', '-87.32001'), ('Ensley', 18752, '30.52612', '-87.27350'), ('Farm Hill', 0, '30.61389', '-87.35358'), ('Ferry Pass', 27176, '30.52209', '-87.20740'), ('Fort Pickens', 0, '30.32892', '-87.29901'), ('Gaberonne', 0, '30.46887', '-87.16083'), ('Gonzalez', 11365, '30.58228', '-87.29059'), ('Goulding', 4484, '30.43909', '-87.23029'), ('Millview', 0, '30.41809', '-87.35608'), ('Molino', 1312, '30.71228', '-87.32397'), ('Muscogee', 0, '30.60590', '-87.39661'), ('Myrtle Grove', 17211, '30.41589', '-87.30280'), ('Navy Point', 0, '30.37988', '-87.29321'), ('Olive', 0, '30.50891', '-87.25531'), ('Paradise Beach', 0, '30.40088', '-87.42041'), ('Pensacola Beach', 0, '30.33368', '-87.13751'), ('Pensacola Naval Base', 15207, '30.35809', '-87.26703'), ('Pensacola Regional Airport', 56255, '30.47308', '-87.18799'), ('Perdido Bay', 0, '30.33313', '-87.42041'), ('Perdido Heights', 0, '30.40051', '-87.42291'), ('Perdido Key', 0, '30.30029', '-87.42749'), ('Pine Forest', 0, '30.51971', '-87.31641'), ('Pleasant Grove', 0, '30.35913', '-87.34528'), ('Quinavista', 0, '30.32867', '-87.35638'), ('Quintette', 0, '30.66632', '-87.31281'), ('Ramsey Beach', 0, '30.44672', '-87.35101'), ('Sand Cut', 0, '30.42169', '-87.32800'), ('Sanders Beach', 0, '30.39972', '-87.23798'), ('Seaglades', 0, '30.32489', '-87.38281'), ('Villa Sabine', 0, '30.33191', '-87.15912'), ('Warrington', 15207, '30.38409', '-87.27502'), ('West Pensacola', 21939, '30.42633', '-87.26801'), ('Yniestra', 0, '30.50189', '-87.16022')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLZ003': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Allentown', 7045, '30.76550', '-87.10773'), ('Belandville', 0, '30.98187', '-86.84882'), ('Berrydale', 579, '30.90210', '-87.02808'), ('Brownsdale', 0, '30.89429', '-87.23492'), ('Chumuckla', 1312, '30.76349', '-87.22229'), ('Chumuckla Springs', 0, '30.83392', '-87.29608'), ('Cobbtown', 0, '30.88312', '-87.11969'), ('Dixonville', 0, '30.98669', '-87.04022'), ('Fidelis', 0, '30.93951', '-87.02710'), ('Indian Ford', 0, '30.71350', '-86.92389'), ('Jay', 579, '30.88068', '-87.18939'), ('McLellan', 90, '30.98669', '-86.88641'), ('Mineral Springs', 0, '30.83270', '-87.29578'), ('Mount Carmel', 0, '30.97192', '-87.14062'), ('Munson', 90, '30.84692', '-86.88452'), ('New York', 0, '30.83850', '-87.20081'), ('Pine Level', 412, '30.89447', '-87.14642'), ('Santa Maria', 0, '30.94971', '-86.83521'), ('Sellersville', 0, '30.99188', '-86.92798'), ('Simmons Crossing', 0, '30.91412', '-86.96442'), ('Springhill', 0, '30.74792', '-86.92059'), ('Whitfield', 0, '30.88171', '-87.05670'), ('Whiting Field', 0, '30.71271', '-87.01910')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLZ004': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Avalon', 0, '30.53711', '-87.10089'), ('Bagdad', 1490, '30.50513', '-87.06201'), ('Broxson', 0, '30.56769', '-86.92188'), ('Dickerson City', 0, '30.48389', '-87.06348'), ('East Milton', 0, '30.61609', '-86.96002'), ('Floridale', 0, '30.68170', '-86.83691'), ('Floridatown', 0, '30.58289', '-87.15991'), ('Galt City', 0, '30.58948', '-87.05798'), ('Garcon Point', 0, '30.47308', '-87.08899'), ('Gulf Breeze', 5665, '30.36688', '-87.17419'), ('Harold', 1490, '30.66650', '-86.85071'), ('Harp', 0, '30.56049', '-87.10791'), ('Harper', 0, '30.44550', '-86.87909'), ('Holley', 0, '30.45270', '-86.91071'), ('Midway', 0, '30.40649', '-87.00549'), ('Milton', 7045, '30.62988', '-87.05670'), ('Muddy Ford', 0, '30.45972', '-86.89502'), ('Mulat', 0, '30.55988', '-87.12921'), ('Navarre', 4055, '30.41687', '-86.88068'), ('Navarre Beach', 0, '30.38110', '-86.86798'), ('Oriole Beach', 5665, '30.37988', '-87.09802'), ('Pace', 7393, '30.59949', '-87.16132'), ('Parkerville', 0, '30.62408', '-86.84833'), ('Pea Ridge', 0, '30.60309', '-87.10449'), ('Pine Bluff', 0, '30.55969', '-86.97821'), ('Point Baker', 0, '30.67590', '-87.03998'), ('Roeville', 0, '30.68170', '-86.99573'), ('Skyline', 0, '30.68127', '-87.06458'), ('Tiger Point', 0, '30.38409', '-87.06091'), ('Wallace', 0, '30.68872', '-87.18018'), ('Ward Basin', 0, '30.58533', '-86.99689'), ('Woodlawn Beach', 0, '30.39111', '-86.99292')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLZ005': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Auburn', 14766, '30.82031', '-86.53772'), ('Baker', 14766, '30.84692', '-86.68909'), ('Beaver Creek', 0, '30.88031', '-86.77661'), ('Blackman', 14766, '30.92468', '-86.63660'), ('Campton', 549, '30.87347', '-86.51831'), ('Cannon Town', 14766, '30.85492', '-86.67401'), ('Clear Springs', 0, '30.87390', '-86.57001'), ('Crestview', 14766, '30.78131', '-86.51361'), ('Crestview Airport', 14766, '30.77911', '-86.52301'), ('Deerland', 14766, '30.75189', '-86.43579'), ('Dorcas', 14766, '30.79828', '-86.41571'), ('Escambia Farms', 549, '30.95789', '-86.63300'), ('Galliver', 14766, '30.72449', '-86.70721'), ('Garden City', 0, '30.83252', '-86.53333'), ('Good Hope', 549, '30.96912', '-86.63129'), ('Holt', 14766, '30.71588', '-86.74579'), ('Kellys Mill', 0, '30.73810', '-86.77612'), ('Killingsworth Crossroads', 0, '30.75067', '-86.45862'), ('Laurel Hill', 549, '30.92810', '-86.45862'), ('Milligan', 14766, '30.75250', '-86.64081'), ('Nubbin Ridge', 0, '30.84052', '-86.67468'), ('Oak Grove', 0, '30.92493', '-86.56750'), ('Okaloo', 0, '30.91571', '-86.48608'), ('Peaden', 549, '30.90851', '-86.58301'), ('Rock Creek', 0, '30.96228', '-86.77881'), ('Silver Springs', 0, '30.80670', '-86.55249'), ('Svea', 549, '30.96771', '-86.40332')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLZ006': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cinco Bayou', 0, '30.42230', '-86.60962'), ('Dana Point', 0, '30.48712', '-86.46613'), ('Destin', 11119, '30.39490', '-86.47021'), ('Eglin AFB', 8082, '30.55890', '-86.57660'), ('Eglin Village', 0, '30.46307', '-86.53943'), ('Fort Walton Beach', 0, '30.39392', '-86.58051'), ('Garnier', 0, '30.45813', '-86.60132'), ('Harris', 0, '30.41412', '-86.73633'), ('Lake Lorraine', 0, '30.44031', '-86.56818'), ('Longwood', 0, '30.46088', '-86.58862'), ('Mary Esther', 4055, '30.41290', '-86.65887'), ('Seminole', 11684, '30.47913', '-86.40991'), ('Shalimar', 0, '30.44330', '-86.58313'), ('Valparaiso', 6408, '30.49268', '-86.50781'), ('Wright', 21697, '30.44452', '-86.64130'), ('Wynnehaven Beach', 0, '30.41028', '-86.78223')], 'partOfState': 'northwest', 'wfo': 'MOB'}, +'FLZ007': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alpine Heights', 5089, '30.74580', '-86.20975'), ('Argyle', 5089, '30.71900', '-86.04430'), ('Caney Creek', 656, '30.89970', '-86.20870'), ('Center Ridge', 5089, '30.79840', '-86.09420'), ('Clear Springs', 656, '30.97980', '-86.34540'), ('Cluster Springs', 5089, '30.83840', '-86.20540'), ('Darlington', 2190, '30.94240', '-86.05880'), ('De Funiak Spring Airport', 5089, '30.72980', '-86.15180'), ('De Funiak Springs', 5089, '30.72219', '-86.12051'), ('Flowersville', 656, '30.95580', '-86.33850'), ('Fox Hill', 656, '30.82639', '-86.29055'), ('Gaskin', 2190, '30.97080', '-86.13530'), ('Glendale', 5089, '30.86290', '-86.11450'), ('Gordon', 656, '30.88980', '-86.27960'), ('Lakewood', 656, '30.98720', '-86.28290'), ('Liberty', 5089, '30.82140', '-86.21510'), ('Mossy Head', 5089, '30.74310', '-86.31500'), ('Natural Bridge', 656, '30.98712', '-86.21242'), ('New Harmony', 656, '30.85360', '-86.28000'), ('Oakwood Hills', 5089, '30.75810', '-86.25620'), ('Paxton', 656, '30.97651', '-86.30403'), ('Piney Grove', 5089, '30.80809', '-86.12481'), ('Pleasant Hill', 5089, '30.82400', '-86.06370'), ('Pond Creek', 0, '30.79225', '-86.38744'), ('Sand Hill', 5089, '30.83650', '-86.19070'), ('Union', 5089, '30.80630', '-86.04180')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ008': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bruce', 250, '30.47220', '-85.96420'), ('Douglass Crossroad', 457, '30.68860', '-85.97630'), ('Eucheeanna', 5089, '30.64570', '-86.04600'), ('Knox Hill', 457, '30.64150', '-85.95830'), ('New Home', 1190, '30.60940', '-86.21990'), ('Pleasant Ridge', 5089, '30.69190', '-86.17400'), ('Red Bay', 457, '30.59020', '-85.94350'), ('Rock Hill', 1190, '30.59839', '-86.11072'), ('Shady Grove', 457, '30.65646', '-85.99638')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ008': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bruce', 250, '30.47220', '-85.96420'), ('Douglass Crossroad', 457, '30.68860', '-85.97630'), ('Eucheeanna', 5089, '30.64570', '-86.04600'), ('Knox Hill', 457, '30.64150', '-85.95830'), ('New Home', 1190, '30.60940', '-86.21990'), ('Pleasant Ridge', 5089, '30.69190', '-86.17400'), ('Red Bay', 457, '30.59020', '-85.94350'), ('Rock Hill', 1190, '30.59839', '-86.11072'), ('Shady Grove', 457, '30.65646', '-85.99638')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ009': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Ards Crossroads', 356, '30.95920', '-85.69300'), ('Arrant Settlement', 457, '30.85840', '-85.97430'), ('Baker Settlement', 221, '30.86620', '-85.90560'), ('Barker Store', 4681, '30.91360', '-85.91590'), ('Bethlehem', 0, '30.92547', '-85.73961'), ('Bonifay', 4078, '30.78840', '-85.67980'), ('Cerrogordo', 221, '30.83120', '-85.88760'), ('Cobb Crossroads', 2402, '30.97970', '-85.54760'), ('Esto', 356, '30.98161', '-85.64670'), ('Gritney', 218, '30.83377', '-85.84021'), ('Hickory Hill', 221, '30.82214', '-85.91698'), ('Holland Crossroads', 356, '30.96480', '-85.64640'), ('Holmes County Airport', 3592, '30.84430', '-85.60150'), ('Hudson', 221, '30.86150', '-85.94350'), ('Hulaw', 0, '30.77553', '-85.72527'), ('Izagora', 199, '30.90940', '-85.84180'), ('Leonia', 4681, '30.91202', '-86.01761'), ('Miller Crossroads', 174, '30.94870', '-85.74180'), ('New Hope', 4681, '30.95195', '-85.87849'), ('Noma', 0, '30.89120', '-85.62196'), ('Noma Junction', 213, '30.97270', '-85.61840'), ('Pittman', 199, '30.94190', '-85.81970'), ('Ponce De Leon', 457, '30.72280', '-85.93750'), ('Prosperity', 457, '30.85100', '-85.94700'), ('Royals Crossroads', 0, '30.97602', '-85.99795'), ('Smith Crossroads', 0, '30.98305', '-85.77206'), ('Sweetgum Head', 0, '30.98005', '-85.95899'), ('Tendil Crossing', 213, '30.96390', '-85.57980'), ('Westville', 221, '30.77450', '-85.85180')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ010': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bahoma', 0, '30.81465', '-85.50812'), ('Bradford', 0, '30.65510', '-85.55196'), ('Brock Crossroad', 0, '30.69056', '-85.62971'), ('Caryville', 218, '30.77305', '-85.81460'), ('Chipley', 3592, '30.77850', '-85.53900'), ('Chipley Municipal Airport', 3592, '30.75720', '-85.51510'), ('Crystal Lake', 5341, '30.44180', '-85.68860'), ('Ebro', 250, '30.44270', '-85.87410'), ('Five Points', 1362, '30.71100', '-85.75190'), ('Gilberts Mill', 0, '30.63552', '-85.49272'), ('Greenhead', 743, '30.50160', '-85.66050'), ('Hinsons Crossroads', 221, '30.66690', '-85.84250'), ('Holmes Valley', 0, '30.57685', '-85.74400'), ('Johnson Crossroads', 0, '30.72963', '-85.66334'), ('Live Oak', 0, '30.57977', '-85.86590'), ('Millers Ferry', 0, '30.57262', '-85.84434'), ('New Hope', 743, '30.57650', '-85.80920'), ('Orange Hill', 3592, '30.66951', '-85.51558'), ('Poplar Head', 4078, '30.71830', '-85.64770'), ('Porter Lake', 0, '30.49830', '-85.54342'), ('Red Head', 250, '30.48370', '-85.84230'), ('Riverside', 0, '30.48229', '-85.66447'), ('Singer Road', 0, '30.45644', '-85.48822'), ('Smyrna', 0, '30.59960', '-85.67848'), ('Spring Hollow', 0, '30.59364', '-85.62978'), ('Sunny Hills', 0, '30.69140', '-85.52191'), ('Sylvania', 0, '30.62003', '-85.67559'), ('Vernon', 743, '30.62330', '-85.71260'), ('Wausau', 398, '30.63190', '-85.58890'), ('Whitehead Crossroads', 0, '30.70435', '-85.76797')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ011': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alford', 466, '30.69300', '-85.39240'), ('Alliance', 506, '30.61460', '-85.11431'), ('Bascom', 106, '30.92860', '-85.11710'), ('Blue Spring', 0, '30.78977', '-85.14166'), ('Browntown', 2402, '30.98200', '-85.46740'), ('Buena Vista', 0, '30.87999', '-85.03517'), ('Campbellton', 212, '30.94900', '-85.40120'), ('Chipola Terrace', 735, '30.82750', '-85.16910'), ('Compass Lake', 466, '30.59170', '-85.39280'), ('Cottondale', 869, '30.79850', '-85.37610'), ('Cottondale Airport', 0, '30.78278', '-85.37824'), ('Cypress', 792, '30.71312', '-85.07484'), ('Dellwood', 792, '30.82696', '-85.05237'), ('Ellaville', 0, '30.97170', '-85.37703'), ('Graceville', 2402, '30.95722', '-85.51736'), ('Grand Ridge', 792, '30.71147', '-85.01981'), ('Greenwood', 735, '30.87000', '-85.16200'), ('Haynes', 792, '30.86885', '-84.95810'), ('Hornsville', 0, '30.94093', '-85.00419'), ('Inwood', 0, '30.70003', '-84.97423'), ('Jacobs', 239, '30.89410', '-85.40990'), ('Kynesville', 466, '30.73070', '-85.35470'), ('Lovedale', 106, '30.87840', '-85.04320'), ('Malone', 2007, '30.95750', '-85.16200'), ('Marianna', 6230, '30.77500', '-85.23970'), ('Marianna Municipal A/P', 735, '30.83400', '-85.18440'), ('Richter Crossroads', 3592, '30.83610', '-85.50220'), ('Ridgetop', 0, '30.63252', '-85.40013'), ('Rock Creek', 506, '30.65100', '-85.16030'), ('Round Lake', 466, '30.65080', '-85.39430'), ('Sills', 0, '30.94477', '-85.28400'), ('Simsville', 6230, '30.67990', '-85.17420'), ('Sink Creek', 506, '30.62350', '-85.15240'), ('Sneads', 1919, '30.70880', '-84.92460'), ('Star', 0, '30.71811', '-85.13722'), ('Steele City', 466, '30.72360', '-85.38790'), ('Two Egg', 735, '30.85278', '-85.07739'), ('Union City', 0, '30.63154', '-85.15657')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ011': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alford', 466, '30.69300', '-85.39240'), ('Alliance', 506, '30.61460', '-85.11431'), ('Bascom', 106, '30.92860', '-85.11710'), ('Blue Spring', 0, '30.78977', '-85.14166'), ('Browntown', 2402, '30.98200', '-85.46740'), ('Buena Vista', 0, '30.87999', '-85.03517'), ('Campbellton', 212, '30.94900', '-85.40120'), ('Chipola Terrace', 735, '30.82750', '-85.16910'), ('Compass Lake', 466, '30.59170', '-85.39280'), ('Cottondale', 869, '30.79850', '-85.37610'), ('Cottondale Airport', 0, '30.78278', '-85.37824'), ('Cypress', 792, '30.71312', '-85.07484'), ('Dellwood', 792, '30.82696', '-85.05237'), ('Ellaville', 0, '30.97170', '-85.37703'), ('Graceville', 2402, '30.95722', '-85.51736'), ('Grand Ridge', 792, '30.71147', '-85.01981'), ('Greenwood', 735, '30.87000', '-85.16200'), ('Haynes', 792, '30.86885', '-84.95810'), ('Hornsville', 0, '30.94093', '-85.00419'), ('Inwood', 0, '30.70003', '-84.97423'), ('Jacobs', 239, '30.89410', '-85.40990'), ('Kynesville', 466, '30.73070', '-85.35470'), ('Lovedale', 106, '30.87840', '-85.04320'), ('Malone', 2007, '30.95750', '-85.16200'), ('Marianna', 6230, '30.77500', '-85.23970'), ('Marianna Municipal A/P', 735, '30.83400', '-85.18440'), ('Richter Crossroads', 3592, '30.83610', '-85.50220'), ('Ridgetop', 0, '30.63252', '-85.40013'), ('Rock Creek', 506, '30.65100', '-85.16030'), ('Round Lake', 466, '30.65080', '-85.39430'), ('Sills', 0, '30.94477', '-85.28400'), ('Simsville', 6230, '30.67990', '-85.17420'), ('Sink Creek', 506, '30.62350', '-85.15240'), ('Sneads', 1919, '30.70880', '-84.92460'), ('Star', 0, '30.71811', '-85.13722'), ('Steele City', 466, '30.72360', '-85.38790'), ('Two Egg', 735, '30.85278', '-85.07739'), ('Union City', 0, '30.63154', '-85.15657')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ012': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bennett', 12451, '30.39246', '-85.53216'), ('Betts', 466, '30.53532', '-85.39416'), ('Econfina', 12451, '30.41331', '-85.53926'), ('Fountain', 466, '30.47759', '-85.42084'), ('Gainer Spring', 0, '30.42553', '-85.54893'), ('Nixon', 12451, '30.32120', '-85.45150'), ('Pine Log', 250, '30.40370', '-85.91160'), ('Saunders', 398, '30.42810', '-85.42500'), ('Youngstown', 12451, '30.36640', '-85.43900')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ013': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Abe Springs', 2444, '30.36470', '-85.14770'), ('Altha', 506, '30.57140', '-85.12650'), ('Blountstown', 2444, '30.44370', '-85.04550'), ('Blountstown Airport', 0, '30.48631', '-85.11439'), ('Broad Branch', 1722, '30.31195', '-85.29493'), ('Camps Head', 0, '30.54675', '-85.27410'), ('Center Lake', 0, '30.55026', '-85.33775'), ('Chason', 506, '30.53260', '-85.19220'), ('Chipola', 506, '30.50530', '-85.11870'), ('Chipola Park', 1722, '30.23621', '-85.20845'), ('Clarksville', 2444, '30.43650', '-85.18570'), ('Durham', 2444, '30.46470', '-85.07510'), ('Frink', 2444, '30.36730', '-85.21440'), ('Henderson Mill', 506, '30.56770', '-85.07020'), ('Hugh Creek', 0, '30.35910', '-85.06988'), ('Kennys Mill', 0, '30.41994', '-85.06988'), ('Kinard', 1722, '30.28060', '-85.26407'), ('Macedonia', 506, '30.53380', '-85.05570'), ('Marysville', 2444, '30.29370', '-85.09980'), ('Moose Pond', 0, '30.51223', '-85.31150'), ('Nettle Ridge', 0, '30.47525', '-85.04512'), ('Ocheesee', 506, '30.58631', '-85.02205'), ('Red Oak', 0, '30.46208', '-85.14521'), ('Scotts Ferry', 2444, '30.29460', '-85.13180'), ('Selman', 2444, '30.53290', '-85.02880'), ('Sharpstown', 2444, '30.36540', '-85.10040'), ('Torreya State Park', 2444, '30.56470', '-84.96720'), ('White Pond', 0, '30.55584', '-85.21912'), ('Willis', 506, '30.54990', '-85.18700')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ014': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Chipola Cutoff', 0, '30.12885', '-85.15761'), ('Dalkeith', 1722, '30.00600', '-85.15360'), ('Honeyville', 1722, '30.05690', '-85.19000'), ('Howard Creek', 2334, '29.89990', '-85.06860'), ('Stonemill Creek', 0, '30.14012', '-85.18168'), ('Wewahitchka', 1722, '30.11557', '-85.19968'), ('Willis Landing', 0, '29.97547', '-85.07336')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ014': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Chipola Cutoff', 0, '30.12885', '-85.15761'), ('Dalkeith', 1722, '30.00600', '-85.15360'), ('Honeyville', 1722, '30.05690', '-85.19000'), ('Howard Creek', 2334, '29.89990', '-85.06860'), ('Stonemill Creek', 0, '30.14012', '-85.18168'), ('Wewahitchka', 1722, '30.11557', '-85.19968'), ('Willis Landing', 0, '29.97547', '-85.07336')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ015': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Beverly', 2334, '29.85200', '-84.96860'), ('Buck Siding', 2334, '29.88640', '-84.98050'), ('Fort Gadsden', 2334, '29.91630', '-84.97710'), ('Morgan Place', 1303, '30.00750', '-84.75660')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ015': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Beverly', 2334, '29.85200', '-84.96860'), ('Buck Siding', 2334, '29.88640', '-84.98050'), ('Fort Gadsden', 2334, '29.91630', '-84.97710'), ('Morgan Place', 1303, '30.00750', '-84.75660')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ016': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Branchville', 1713, '30.65280', '-84.48300'), ('Chattahoochee', 3287, '30.70453', '-84.84350'), ('Concord', 1713, '30.65680', '-84.36510'), ('Darsey', 1713, '30.68750', '-84.38020'), ('Dogtown', 380, '30.67750', '-84.50340'), ('Douglas City', 1709, '30.59080', '-84.64400'), ('Florence', 1713, '30.59350', '-84.48290'), ('Freemont', 1713, '30.61420', '-84.45250'), ('Gibson', 1713, '30.56550', '-84.39940'), ('Greensboro', 0, '30.57139', '-84.57192'), ('Gretna', 1709, '30.61770', '-84.66050'), ('Hardaway', 619, '30.63060', '-84.73551'), ('Hardin Heights', 3287, '30.67460', '-84.83960'), ('Havana', 1713, '30.62400', '-84.41545'), ('Hinson', 1713, '30.64870', '-84.41680'), ('Jamieson', 1713, '30.66140', '-84.45090'), ('Juniper', 619, '30.54063', '-84.76003'), ('Lake Talquin', 0, '30.44108', '-84.55399'), ('Littman', 6982, '30.59070', '-84.51460'), ('Midway', 1446, '30.49494', '-84.46264'), ('Mount Pleasant', 1709, '30.65720', '-84.69310'), ('Oak Grove', 3287, '30.69140', '-84.73330'), ('Quincy', 6982, '30.58003', '-84.57695'), ('Quincy Airport', 6982, '30.59750', '-84.55750'), ('River Junction', 3287, '30.68530', '-84.84140'), ('Rosedale', 3287, '30.65528', '-84.80898'), ('Santa Clara', 6982, '30.58302', '-84.56344'), ('Sawdust', 1709, '30.54640', '-84.67770'), ('Scotland', 1713, '30.57580', '-84.43040'), ('Shady Rest', 1713, '30.58790', '-84.48690'), ('Sycamore', 619, '30.58417', '-84.82915'), ('Wetumpka', 6982, '30.48170', '-84.62340')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ017': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Andrew', 0, '30.39997', '-84.40012'), ('Apalachee Regional Park', 0, '30.42098', '-84.15343'), ('Baum', 0, '30.49288', '-84.09153'), ('Belair', 3006, '30.38667', '-84.27280'), ('Bloxham', 1446, '30.38710', '-84.63130'), ('Bradfordville', 150624, '30.57019', '-84.21999'), ('Bragg Stadium', 0, '30.42598', '-84.29223'), ('Brown House', 1446, '30.30350', '-84.50860'), ('Capitola', 150624, '30.45182', '-84.09131'), ('Chaires', 150624, '30.43982', '-84.12319'), ('Chaires Crossroads', 150624, '30.42220', '-84.11810'), ('Concord', 2533, '30.55820', '-84.04537'), ('Doak Campbell Stadium', 0, '30.43798', '-84.30458'), ('Eight Mile Pond', 0, '30.32831', '-84.30543'), ('Fallschase', 0, '30.45975', '-84.21032'), ('Florida A And M', 0, '30.42851', '-84.28574'), ('Florida State University', 0, '30.44155', '-84.29522'), ('Forest Meadows Park', 0, '30.53352', '-84.27935'), ('Fort Braden', 1446, '30.42778', '-84.53323'), ('Gaither Community Center', 0, '30.40447', '-84.29747'), ('Governors Square Mall', 0, '30.43661', '-84.25409'), ('Helen', 0, '30.30293', '-84.40068'), ('Iamonia', 9035, '30.66680', '-84.16350'), ('Indian Head Acres', 0, '30.42567', '-84.25784'), ('Innovation Park', 0, '30.42520', '-84.32190'), ('Killearn Estates', 150624, '30.51321', '-84.22360'), ('Killearn Lakes', 150624, '30.58153', '-84.22429'), ('Kleman Plaza', 0, '30.43995', '-84.28377'), ('Lake Bradford', 0, '30.40499', '-84.33936'), ('Lake Ella', 0, '30.46100', '-84.27973'), ('Lake Iamonia', 0, '30.62994', '-84.25021'), ('Lake Jackson', 0, '30.53008', '-84.33020'), ('Lake Munson', 0, '30.36864', '-84.30941'), ('Leon County Civic Center', 0, '30.43774', '-84.28734'), ('Leon Sinks', 0, '30.30938', '-84.34604'), ('Levy Park', 0, '30.46256', '-84.29129'), ('Lutterloh', 3006, '30.33064', '-84.25145'), ('Maclay State Gardens', 150624, '30.52664', '-84.25571'), ('Macon Community Park', 0, '30.49038', '-84.28004'), ('Miccosukee', 2533, '30.59544', '-84.04115'), ('Mission San Luis', 0, '30.45091', '-84.32009'), ('Moccasin Gap', 150624, '30.59495', '-84.12037'), ('Natural Bridge', 0, '30.28520', '-84.15178'), ('North Florida Fairgrounds', 0, '30.40413', '-84.27722'), ('Orchard Pond', 0, '30.59179', '-84.32650'), ('Pisgah Church', 150624, '30.55392', '-84.15917'), ('Ralford Greenway', 0, '30.44443', '-84.17625'), ('Southwood', 0, '30.39128', '-84.21814'), ('Spring Hill', 69078, '30.33880', '-84.38820'), ('Springsax Park', 0, '30.40776', '-84.30111'), ('State Capital Complex', 0, '30.43798', '-84.28168'), ('Tallahassee', 150624, '30.43790', '-84.28160'), ('Tallahassee Coml Airport', 1713, '30.54600', '-84.37430'), ('Tallahassee Comm College', 0, '30.44488', '-84.34060'), ('Tallahassee Mall', 0, '30.47538', '-84.29129'), ('Tallahassee Memorial Hosp', 0, '30.45662', '-84.26191'), ('Tallahassee Regional A/P', 150624, '30.39620', '-84.35340'), ('Tom Brown Park', 0, '30.44599', '-84.21533'), ('Winthrop Park', 0, '30.46412', '-84.26753'), ('Woodville', 3006, '30.31410', '-84.24740')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ018': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alma', 2533, '30.61020', '-83.90650'), ('Ashville', 837, '30.61520', '-83.64710'), ('Aucilla', 837, '30.47990', '-83.75430'), ('Capps', 2533, '30.41150', '-83.91130'), ('Casa Blanco', 2533, '30.51560', '-83.88790'), ('Cody', 0, '30.36138', '-84.05166'), ('Dills', 2533, '30.62190', '-83.77230'), ('Drifton', 2533, '30.49500', '-83.88070'), ('Fanlew', 272, '30.27090', '-84.05770'), ('Festus', 2533, '30.60000', '-83.96900'), ('Fincher', 0, '30.65287', '-83.97421'), ('Goose Pasture', 0, '30.20250', '-83.93815'), ('Hells Half Acre', 0, '30.19901', '-83.98607'), ('Jarrott', 2533, '30.62270', '-83.93230'), ('Lake Miccosukee', 0, '30.57367', '-83.97766'), ('Lamont', 2533, '30.37660', '-83.81340'), ('Limestone', 0, '30.35836', '-84.02933'), ('Lloyd', 2533, '30.47808', '-84.02263'), ('Lois', 2533, '30.52570', '-83.91590'), ('Monticello', 2533, '30.54470', '-83.87020'), ('Montivilla', 2533, '30.54690', '-83.88880'), ('Nash', 2533, '30.45770', '-83.89330'), ('Thomas City', 2533, '30.35460', '-83.97320'), ('Wacissa', 2533, '30.35770', '-83.98880'), ('Wacissa Springs', 0, '30.33975', '-83.99165'), ('Waukeenah', 2533, '30.41230', '-83.95150')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ019': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cherry Lake', 3061, '30.58220', '-83.42740'), ('Ebb', 0, '30.35359', '-83.65297'), ('Greenville', 837, '30.47063', '-83.63508'), ('Hamburg', 837, '30.57110', '-83.51987'), ('Hanson', 3061, '30.55090', '-83.36730'), ('Hopewell', 3061, '30.38130', '-83.44480'), ('Lee', 352, '30.41840', '-83.30060'), ('Lovett', 5292, '30.62760', '-83.57340'), ('Madison', 3061, '30.46860', '-83.41540'), ('Moseley Hall', 837, '30.35389', '-83.58194'), ('Pinetta', 3061, '30.59340', '-83.35260'), ('Sirmans', 837, '30.35045', '-83.66124')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ020': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Belmont', 819, '30.48580', '-82.72280'), ('Blue Springs', 352, '30.48540', '-83.22080'), ('Jasper', 1780, '30.51710', '-82.95620'), ('Jennings', 833, '30.60110', '-83.10700'), ('Suwannee River Station', 352, '30.40790', '-83.16470'), ('West Lake', 833, '30.50250', '-83.11520'), ('White Springs', 819, '30.33150', '-82.75800')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ021': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Branford', 695, '29.96210', '-82.92760'), ('Dowling Park', 352, '30.24350', '-83.23650'), ('Hildreth', 409, '29.95260', '-82.80560'), ('Houston', 6480, '30.25680', '-82.90290'), ('Live Oak', 6480, '30.29430', '-82.98610'), ('Luraville', 988, '30.12230', '-83.16950'), ('McAlpin', 6480, '30.13900', '-82.95210'), ('Newburn', 6480, '30.27230', '-83.14090'), ('Obrien', 695, '30.03820', '-82.94040'), ('Suwannee Springs', 6480, '30.39400', '-82.93760'), ('Wellborn', 819, '30.23090', '-82.81990')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ022': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Columbia', 9980, '30.07340', '-82.69620'), ('Five Points', 1362, '30.22270', '-82.64400'), ('Fort White', 409, '29.92150', '-82.71450'), ('Ichetucknee Spring', 409, '29.96000', '-82.77000'), ('Lake City', 9980, '30.19280', '-82.64230'), ('Lulu', 2837, '30.10700', '-82.49150'), ('Oleno State Park', 3863, '29.92490', '-82.56420'), ('Suwannee Valley', 819, '30.29860', '-82.70850'), ('Watertown', 2837, '30.18780', '-82.59910'), ('Winfield', 1362, '30.26260', '-82.68630')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ023': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Glen Saint Mary', 473, '30.27390', '-82.16110'), ('Macclenny', 4459, '30.28020', '-82.12590'), ('Olustee', 2837, '30.20370', '-82.42920'), ('Sanderson', 473, '30.25160', '-82.27330'), ('Taylor', 473, '30.44010', '-82.29170')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLZ024': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Amelia City', 10549, '30.59000', '-81.45750'), ('Bryceville', 1634, '30.38450', '-81.93900'), ('Callahan', 962, '30.56140', '-81.83260'), ('Fernandina Beach', 10549, '30.65770', '-81.44920'), ('Hilliard', 2702, '30.69490', '-81.92270'), ('Kings Ferry', 2702, '30.78510', '-81.83920'), ('Ratliff', 4667, '30.50210', '-81.81470'), ('Yulee', 8392, '30.63270', '-81.57390')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLZ025': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arlington', 635230, '30.33540', '-81.60320'), ('Baldwin', 1634, '30.30440', '-81.97520'), ('Bayard', 16077, '30.14280', '-81.51310'), ('Fort Caroline', 13368, '30.38640', '-81.50090'), ('Jacksonville', 635230, '30.33180', '-81.65610'), ('Jacksonville Heights', 16539, '30.25190', '-81.78640'), ('Jacksonville International Arpt', 4667, '30.48390', '-81.70500'), ('Little Talbot Island', 13368, '30.45640', '-81.41690'), ('Mandarin', 16077, '30.15280', '-81.64150'), ('Maxville', 1634, '30.19820', '-82.01140'), ('Mayport', 13368, '30.38480', '-81.40940'), ('Neptune Beach', 7270, '30.31470', '-81.39370'), ('Normandy', 635230, '30.30550', '-81.76110'), ('Oceanway', 635230, '30.46650', '-81.63270'), ('Ortega', 635230, '30.27030', '-81.70860'), ('Riverside', 635230, '30.31270', '-81.68400'), ('San Marco', 635230, '30.31120', '-81.66060'), ('San Pablo', 7270, '30.29500', '-81.43800'), ('Talbot Island', 13368, '30.47000', '-81.42000'), ('Tallyrand', 635230, '30.35940', '-81.63300'), ('Unf', 7270, '30.27530', '-81.51200')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLZ026': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bristol', 845, '30.43174', '-84.98173'), ('Central City', 845, '30.18780', '-84.92570'), ('Clio', 845, '30.31870', '-84.82610'), ('East Camp', 0, '30.14481', '-84.73464'), ('Estiffanulga', 845, '30.30830', '-85.03360'), ('Hosford', 845, '30.39022', '-84.79826'), ('Jensen Place', 0, '30.22992', '-84.92711'), ('Jewel Fire Tower', 0, '30.19678', '-84.72776'), ('Kern', 1722, '30.12830', '-84.98910'), ('Lewis', 1722, '30.21400', '-85.05690'), ('Liberty', 845, '30.28140', '-84.84170'), ('Lowry', 619, '30.42280', '-84.77610'), ('Nixon Garden', 0, '30.21222', '-84.91693'), ('Orange', 845, '30.23108', '-85.02824'), ('Owens Bridge', 0, '30.03874', '-84.84404'), ('Poplar Camp', 0, '30.12607', '-84.69097'), ('Red Hill', 0, '30.22217', '-85.06614'), ('Rock Bluff', 845, '30.54200', '-84.91320'), ('Roy', 0, '30.56484', '-84.90291'), ('Sumatra', 1722, '30.01870', '-84.97930'), ('Sweetwater', 14494, '30.50640', '-84.97250'), ('Telogia', 845, '30.35040', '-84.81930'), ('Twin Pole', 1303, '30.10240', '-84.84980'), ('Vilas', 845, '30.22137', '-84.88908'), ('Wilma', 1722, '30.15780', '-84.96230'), ('Woods', 845, '30.34590', '-84.98010')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ027': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arran', 0, '30.19042', '-84.41626'), ('Bethel', 3006, '30.25090', '-84.32420'), ('Crawfordville', 426, '30.17530', '-84.37350'), ('Hilliardville', 3006, '30.28660', '-84.39960'), ('Newport', 272, '30.19982', '-84.18365'), ('Sanborn', 426, '30.07479', '-84.60444'), ('Shadeville', 272, '30.19820', '-84.30910'), ('Smith Creek', 426, '30.18050', '-84.65700'), ('Vereen', 0, '30.27327', '-84.23935'), ('Wakulla', 272, '30.23410', '-84.22910'), ('Wakulla Springs', 3006, '30.23360', '-84.30030')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ028': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Athena', 6847, '29.98804', '-83.49408'), ('Boyd', 6847, '30.18939', '-83.60335'), ('Bucell Junction', 6847, '30.06790', '-83.55983'), ('Cabbage Grove', 6847, '30.20945', '-83.87399'), ('Carbur', 6847, '29.91337', '-83.43186'), ('Clara', 0, '29.79686', '-83.32049'), ('Econfina', 6847, '30.13150', '-83.86547'), ('Eridu', 837, '30.30190', '-83.74680'), ('Fenholloway', 6847, '30.07762', '-83.49661'), ('Foley', 6847, '30.06932', '-83.53090'), ('Hampton Springs', 6847, '30.08572', '-83.65500'), ('Iddo', 837, '30.27780', '-83.72490'), ('Lake Bird', 6847, '30.24858', '-83.62231'), ('Perry', 6847, '30.11757', '-83.58210'), ('Perry-Foley Airport', 6847, '30.07040', '-83.57590'), ('Pinland', 6847, '30.01800', '-83.52797'), ('Riverside', 0, '30.18172', '-83.80779'), ('Salem', 6847, '29.88741', '-83.41256'), ('Secotan', 6847, '30.17637', '-83.63446'), ('Shady Grove', 837, '30.28804', '-83.63189'), ('Smith', 6847, '30.11972', '-83.40975'), ('Tennille', 1775, '29.77802', '-83.32601')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ029': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alton', 0, '30.05302', '-83.13822'), ('Buckville', 988, '30.12920', '-83.29249'), ('Chancey', 0, '30.24594', '-83.25923'), ('Cooks Hammock', 988, '29.92990', '-83.27656'), ('Day', 988, '30.19240', '-83.29190'), ('Fletcher Springs', 0, '29.84667', '-82.89290'), ('Grady', 0, '29.95435', '-82.93207'), ('Hatch Bend', 349, '29.84738', '-82.91671'), ('Mayo', 988, '30.05100', '-83.17670'), ('Mayo Junction', 0, '30.20545', '-83.26604'), ('Midway', 1446, '30.01205', '-83.07973'), ('San Pedro Junction', 0, '30.01083', '-83.21528'), ('Townsend', 0, '30.12913', '-83.33949')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ030': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Dukes', 193, '29.96620', '-82.40760'), ('Ellerbee', 187, '30.10540', '-82.20560'), ('Johnstown', 187, '30.04430', '-82.27230'), ('Lake Butler', 1927, '30.02050', '-82.33960'), ('Raiford', 187, '30.06410', '-82.23890'), ('Worthington Spring', 193, '29.93120', '-82.42430')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ031': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Brooker', 352, '29.88600', '-82.33400'), ('Hampton', 431, '29.86400', '-82.13720'), ('Lawtey', 656, '30.04560', '-82.07080'), ('New River', 1927, '29.96070', '-82.26590'), ('Sampson', 431, '29.91620', '-82.20830'), ('Starke', 5593, '29.94690', '-82.11220')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ032': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Asbury Lake', 2228, '30.04890', '-81.82160'), ('Bellair', 16539, '30.18020', '-81.74360'), ('Doctors Inlet', 30927, '30.12190', '-81.76710'), ('Green Cove Springs', 5378, '29.98970', '-81.67890'), ('Keystone Heights', 1349, '29.78000', '-82.03370'), ('Kingsley', 656, '29.96550', '-81.99970'), ('Lake Geneva', 1349, '29.77190', '-82.01060'), ('Lakeside', 30927, '30.12970', '-81.76840'), ('Middleburg', 10338, '30.05050', '-81.90220'), ('Orange Park', 9081, '30.16860', '-81.70470'), ('Penney Farms', 580, '29.98080', '-81.81170')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLZ033': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anastasia', 11592, '29.88760', '-81.28980'), ('Bakersville', 11592, '29.90590', '-81.49150'), ('Butler Beach', 4436, '29.79820', '-81.26710'), ('Crescent Beach', 985, '29.73110', '-81.23880'), ('Dupont Center', 4922, '29.75620', '-81.31340'), ('Durbin', 19860, '30.08730', '-81.46150'), ('Elkton', 521, '29.78290', '-81.42620'), ('Fruit Cove', 16077, '30.10090', '-81.61850'), ('Guana River State Park', 4942, '30.09000', '-81.34000'), ('Hastings', 521, '29.71490', '-81.50790'), ('Palm Valley', 19860, '30.19970', '-81.39110'), ('Picolata', 5378, '29.91480', '-81.59320'), ('Ponte Vedra Beach', 20990, '30.23960', '-81.38590'), ('Saint Augustine', 11592, '29.89190', '-81.31080'), ('Saint Augustine Beach', 4683, '29.84210', '-81.27110'), ('Saint Augustine Shore', 4922, '29.81050', '-81.31070'), ('Saint Augustine South', 5035, '29.84250', '-81.31570'), ('Sawgrass', 4942, '30.19240', '-81.37080'), ('South Ponte Vedra', 2533, '30.02220', '-81.32390'), ('Spuds', 521, '29.73950', '-81.47180'), ('Switzerland', 16077, '30.07590', '-81.64760'), ('Vilano Beach', 2533, '29.93830', '-81.30210')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLZ034': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cross City', 1775, '29.63902', '-83.12336'), ('Cross City Airport', 1775, '29.63380', '-83.10500'), ('Eugene', 0, '29.61209', '-83.08816'), ('Fletcher', 0, '29.74640', '-82.98464'), ('Guaranto Springs', 0, '29.77980', '-82.94005'), ('Hines', 1775, '29.73890', '-83.23658'), ('Jonesboro', 1775, '29.70900', '-83.29386'), ('Old Town', 737, '29.60173', '-82.98195'), ('Shamrock', 0, '29.64278', '-83.14538')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ035': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bell', 349, '29.75580', '-82.86190'), ('Trenton', 1617, '29.61420', '-82.81680')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ036': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alachua', 6098, '29.77900', '-82.48000'), ('Archer', 1289, '29.53410', '-82.51890'), ('Cross Creek', 453, '29.48600', '-82.16560'), ('Gainesville', 95447, '29.67420', '-82.33630'), ('Gainesville Airport', 95447, '29.69100', '-82.27540'), ('Grove Park', 653, '29.59990', '-82.15390'), ('High Springs', 3863, '29.82210', '-82.59190'), ('La Crosse', 143, '29.84390', '-82.40450'), ('Lochloosa', 453, '29.51120', '-82.10070'), ('Micanopy', 653, '29.50610', '-82.28080'), ('Newberry', 3316, '29.64480', '-82.61230'), ('Newnans Lake', 95447, '29.64950', '-82.23990'), ('Orange Heights', 821, '29.71930', '-82.13970'), ('Rochelle', 653, '29.59630', '-82.21790'), ('University Of Florida', 0, '29.64300', '-82.35710'), ('Waldo', 821, '29.79050', '-82.17170')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ037': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bostwick', 10033, '29.77380', '-81.63750'), ('Carraway', 10033, '29.70900', '-81.78680'), ('Crescent City', 1776, '29.43830', '-81.51660'), ('East Palatka', 1707, '29.65110', '-81.59940'), ('Florahome', 1475, '29.73190', '-81.88400'), ('Georgetown', 586, '29.39120', '-81.63900'), ('Hollister', 1475, '29.62260', '-81.81400'), ('Interlachen', 1475, '29.61690', '-81.89790'), ('Johnson', 1475, '29.58450', '-81.97350'), ('Lake Como', 789, '29.48370', '-81.57320'), ('Mannville', 1475, '29.62870', '-81.86840'), ('Melrose', 1349, '29.70930', '-82.05010'), ('Orange Mills', 1707, '29.68480', '-81.57350'), ('Palatka', 10033, '29.64920', '-81.65660'), ('Pomona Park', 789, '29.49920', '-81.59430'), ('Putnam Hall', 1349, '29.73650', '-81.95960'), ('San Mateo', 1707, '29.60650', '-81.58480'), ('Satsuma', 586, '29.55480', '-81.65620'), ('Welaka', 586, '29.48090', '-81.66350')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLZ038': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Andalusia', 1776, '29.49390', '-81.47080'), ('Bunnell', 2122, '29.46680', '-81.25890'), ('Espanola', 2122, '29.50670', '-81.31000'), ('Flagler Beach', 4954, '29.47030', '-81.13000'), ('Marineland', 6, '29.66400', '-81.21330'), ('Palm Coast', 32732, '29.57110', '-81.21410')], 'partOfState': 'northeast', 'wfo': 'JAX'}, +'FLZ040': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anthony', 45943, '29.28850', '-82.11250'), ('Belleview', 3478, '29.05980', '-82.05480'), ('Burbank', 45943, '29.28950', '-82.00200'), ('Citra', 571, '29.41130', '-82.11040'), ('Dunnellon', 1898, '29.04950', '-82.44840'), ('Flemington', 453, '29.40690', '-82.29860'), ('Fort Mccoy', 571, '29.36390', '-81.96790'), ('Hog Valley', 1475, '29.49240', '-81.89610'), ('Juniper Springs', 1487, '29.18190', '-81.73500'), ('Lake Weir', 3478, '29.01830', '-81.98860'), ('Lowell', 571, '29.32990', '-82.19210'), ('Lynne', 6690, '29.19180', '-81.91800'), ('McIntosh', 453, '29.44910', '-82.22080'), ('Moss Bluff', 6690, '29.08260', '-81.88400'), ('Ocala', 45943, '29.18740', '-82.13080'), ('Ocala Airport', 45943, '29.17090', '-82.22240'), ('Ocklawaha', 6690, '29.04210', '-81.92990'), ('Orange Springs', 1475, '29.50500', '-81.94590'), ('Rainbow Lakes Estates', 1898, '29.14690', '-82.44780'), ('Reddick', 571, '29.36760', '-82.19830'), ('Romeo', 1898, '29.20540', '-82.43690'), ('Salt Springs', 586, '29.34920', '-81.73640'), ('Santos', 3478, '29.10760', '-82.09460'), ('Silver Springs Shores', 6690, '29.10360', '-82.00630'), ('Sparr', 571, '29.33840', '-82.11290'), ('Summerfield', 3478, '29.00850', '-82.03510'), ('Weirsdale', 11828, '28.98180', '-81.92460')], 'partOfState': 'northern', 'wfo': 'JAX'}, +'FLZ041': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bakerstown', 1776, '29.34790', '-81.49170'), ('Barberville', 2596, '29.18700', '-81.42120'), ('Blue Spring State Park', 6604, '28.94437', '-81.33794'), ('Cassadaga', 2743, '28.96620', '-81.23630'), ('Debary', 15559, '28.88340', '-81.31180'), ('Deland', 20904, '29.03600', '-81.29750'), ('Deland Airport', 0, '29.06654', '-81.28366'), ('Deland Highlands', 1327, '29.06060', '-81.26440'), ('Deleon Springs', 2358, '29.11740', '-81.35180'), ('Deltona', 69543, '28.90990', '-81.20880'), ('Eldridge', 2596, '29.21130', '-81.45750'), ('Enterprise', 15559, '28.86910', '-81.26690'), ('Glenwood', 2358, '29.08590', '-81.35440'), ('High Banks', 15559, '28.88490', '-81.35470'), ('Lake George', 0, '29.28100', '-81.58920'), ('Lake Helen', 2743, '28.98370', '-81.23140'), ('Lake Monroe', 15559, '28.84430', '-81.27600'), ('Lake Woodruff', 0, '29.10030', '-81.41770'), ('Orange City', 6604, '28.93650', '-81.29280'), ('Osteen', 69543, '28.84590', '-81.16290'), ('Pierson', 2596, '29.23770', '-81.46090'), ('Seville', 2596, '29.31690', '-81.49290'), ('Valdez', 15559, '28.84500', '-81.33260')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ043': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Adamsville', 0, '28.79974', '-82.01995'), ('Bushnell', 0, '28.66444', '-82.11435'), ('Center Hill', 0, '28.64744', '-81.99805'), ('Coleman', 0, '28.80114', '-82.06925'), ('Istachatta', 0, '28.65004', '-82.26995'), ('Lake Panasoffkee', 0, '28.79024', '-82.13005'), ('Oxford', 0, '28.92764', '-82.03825'), ('Rutland', 0, '28.85364', '-82.21205'), ('Sumterville', 0, '28.74464', '-82.06435'), ('Tarrytown', 0, '28.55504', '-82.05485'), ('The Green Swamp', 0, '28.38004', '-81.99995'), ('The Villages', 0, '28.92484', '-82.00455'), ('Wahoo', 0, '28.69084', '-82.19585'), ('Webster', 0, '28.61184', '-82.05135'), ('Wildwood', 0, '28.85434', '-82.04075')], 'partOfState': 'central', 'wfo': 'TBW'}, +'FLZ044': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alexander Springs', 0, '29.08120', '-81.57640'), ('Altoona', 88, '28.96570', '-81.64890'), ('Astor', 1487, '29.16390', '-81.53460'), ('Astor Park', 0, '29.15200', '-81.57400'), ('Bassville Park', 2752, '28.83850', '-81.76770'), ('Cassia', 2814, '28.88910', '-81.46570'), ('Emeralda', 11828, '28.94990', '-81.82470'), ('Eustis', 15106, '28.85390', '-81.68520'), ('Forest Hills', 3424, '29.00290', '-81.43360'), ('Fruitland Park', 3186, '28.85710', '-81.90950'), ('Fullerville', 3424, '29.00880', '-81.45450'), ('Hontoon Island State Park', 3424, '28.97430', '-81.36960'), ('Lady Lake', 11828, '28.92780', '-81.92890'), ('Lake Dora', 9700, '28.78920', '-81.69520'), ('Lake Dorr', 0, '29.00030', '-81.62210'), ('Lake Eustis', 2776, '28.85090', '-81.72970'), ('Lake Griffin', 1008, '28.84660', '-81.85010'), ('Lake Kathryn', 1487, '29.01530', '-81.48860'), ('Lake Yale', 2776, '28.91610', '-81.74000'), ('Leesburg', 15956, '28.80850', '-81.88260'), ('Leesburg Airport', 0, '28.82373', '-81.80776'), ('Lisbon', 273, '28.87040', '-81.78320'), ('Mid Florida Lakes', 2776, '28.86280', '-81.75700'), ('Mount Dora', 9418, '28.80670', '-81.64170'), ('Mount Plymouth', 2814, '28.79970', '-81.53230'), ('Paisley', 734, '28.98230', '-81.54290'), ('Pittman', 192, '28.99740', '-81.64380'), ('Sellers Lake', 0, '29.11400', '-81.63430'), ('Silver Lake', 1882, '28.84170', '-81.79850'), ('Tavares', 9700, '28.80480', '-81.73570'), ('Umatilla', 2214, '28.92750', '-81.66690')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ045': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aloma', 0, '28.60070', '-81.30690'), ('Animal Kingdom', 0, '28.35740', '-81.59070'), ('Apopka', 26969, '28.68670', '-81.51330'), ('Avalon Park', 0, '28.50475', '-81.16047'), ('Azalea Park', 0, '28.54540', '-81.29520'), ('Bay Hill', 0, '28.46760', '-81.51630'), ('Bay Lake', 47, '28.39140', '-81.56670'), ('Belle Isle', 5988, '28.47010', '-81.35030'), ('Bithlo', 8268, '28.56970', '-81.10960'), ('Christmas', 1146, '28.53880', '-81.02270'), ('Clarcona', 0, '28.61260', '-81.49890'), ('College Park', 0, '28.57156', '-81.37273'), ('Conway', 13467, '28.49520', '-81.33230'), ('Doctor Phillips', 0, '28.44920', '-81.49250'), ('Eatonville', 0, '28.61690', '-81.39090'), ('Edgewood', 0, '28.48560', '-81.37210'), ('Epcot', 0, '28.37170', '-81.54940'), ('Fairview Shores', 0, '28.60020', '-81.39090'), ('Hollywood Studios', 0, '28.35700', '-81.56030'), ('Horizon West', 14000, '28.46273', '-81.60387'), ('Killarney', 0, '28.54690', '-81.65060'), ('Lake Apopka', 0, '28.63690', '-81.63690'), ('Lake Buena Vista', 0, '28.37736', '-81.52570'), ('Lake Nona', 0, '28.40167', '-81.24527'), ('Lockhart', 0, '28.62610', '-81.43660'), ('Magic Kingdom', 0, '28.41870', '-81.58120'), ('Maitland', 0, '28.62790', '-81.36710'), ('Oakland', 0, '28.55610', '-81.62890'), ('Oak Ridge', 0, '28.47090', '-81.42460'), ('Ocoee', 0, '28.57220', '-81.53260'), ('Orlando', 0, '28.50470', '-81.37420'), ('Orlando Executive Airport', 0, '28.54566', '-81.33576'), ('Orlando International Airport', 0, '28.43115', '-81.30814'), ('Orlovista', 0, '28.54400', '-81.46300'), ('Pine Castle', 0, '28.46560', '-81.37300'), ('Pine Hills', 0, '28.58000', '-81.46020'), ('Plymouth', 0, '28.69190', '-81.54760'), ('Rock Springs', 0, '28.75790', '-81.50080'), ('Sea World', 0, '28.41138', '-81.46126'), ('Tangelo Park', 0, '28.45572', '-81.44621'), ('Tangerine', 0, '28.76480', '-81.62070'), ('Union Park', 0, '28.56380', '-81.23600'), ('Universal Studios', 0, '28.47561', '-81.46836'), ('University Of Central Florida', 0, '28.60190', '-81.20050'), ('Vineland', 0, '28.39510', '-81.50330'), ('Wedgefield', 6705, '28.48030', '-81.07850'), ('Wekiwa Springs State Park', 0, '28.72170', '-81.46480'), ('Wet N Wild Water Park', 0, '28.46124', '-81.46498'), ('Windermere', 0, '28.49510', '-81.53350'), ('Winter Garden', 0, '28.56230', '-81.58330'), ('Winter Park', 0, '28.59590', '-81.34370'), ('Zellwood', 0, '28.73080', '-81.60140')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ046': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Altamonte Springs', 41200, '28.66210', '-81.39520'), ('Casselberry', 22629, '28.66340', '-81.32350'), ('Central Florida Zoo', 15559, '28.82463', '-81.31265'), ('Chuluota', 1921, '28.63950', '-81.12030'), ('Fern Park', 8318, '28.64820', '-81.34580'), ('Forest City', 12612, '28.66120', '-81.44510'), ('Geneva', 2601, '28.73940', '-81.11530'), ('Goldenrod', 12039, '28.61150', '-81.29170'), ('Lake Harney', 1921, '28.76140', '-81.05850'), ('Lake Jessup', 0, '28.72660', '-81.22130'), ('Lake Mary', 11458, '28.75900', '-81.33410'), ('Longwood', 13745, '28.70100', '-81.34840'), ('Midway', 1446, '28.79010', '-81.23120'), ('Mullet Lake Park', 38291, '28.78890', '-81.13870'), ('Oviedo', 26316, '28.65750', '-81.18140'), ('Sanford', 38291, '28.78920', '-81.27570'), ('Sanford Airport', 0, '28.77574', '-81.23857'), ('Wekiva Springs', 23026, '28.69840', '-81.42600'), ('Winter Springs', 31666, '28.68150', '-81.27470')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ047': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Barefoot Bay', 9498, '27.88780', '-80.52140'), ('Camp Holly Fish Camp', 0, '28.08500', '-80.75310'), ('Cocoa Beach', 12482, '28.33176', '-80.61685'), ('Eau Gallie', 71382, '28.13010', '-80.64620'), ('Floridana Beach', 9498, '27.94620', '-80.49580'), ('Georgiana', 36090, '28.28820', '-80.67540'), ('Grant', 9498, '27.92860', '-80.52680'), ('Indialantic', 2944, '28.08930', '-80.56590'), ('Indian Harbour Beach', 8152, '28.15300', '-80.59780'), ('Malabar', 2622, '27.98670', '-80.58230'), ('Melbourne', 71382, '28.11500', '-80.64010'), ('Melbourne Airport', 0, '28.10231', '-80.63978'), ('Melbourne Beach', 3335, '28.06740', '-80.55960'), ('Melbourne Shores', 0, '27.96260', '-80.50980'), ('Melbourne Village', 706, '28.08500', '-80.66720'), ('Micco', 9498, '27.87110', '-80.51550'), ('Palm Bay', 79413, '27.98570', '-80.66020'), ('Palm Shores', 794, '28.18630', '-80.65750'), ('Patrick Air Force Base', 12482, '28.23500', '-80.61000'), ('Pineda', 794, '28.23690', '-80.67870'), ('Rockledge', 20170, '28.31980', '-80.72900'), ('Satellite Beach', 9577, '28.17344', '-80.59667'), ('Space Coast Stadium', 0, '28.25730', '-80.73950'), ('Spessard Holland Park', 0, '28.04550', '-80.54710'), ('Suntree', 0, '28.22113', '-80.69169'), ('Valkaria', 2622, '27.96340', '-80.54390'), ('Viera', 17398, '28.25885', '-80.71650'), ('West Melbourne', 9824, '28.07980', '-80.67160')], 'partOfState': '', 'wfo': 'MLB'}, +'FLZ050': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Albert Whitted Airport', 0, '27.76004', '-82.63995'), ('Belleair', 0, '27.93674', '-82.81215'), ('Belleair Beach', 0, '27.92314', '-82.84325'), ('Belleair Bluffs', 0, '27.91934', '-82.81925'), ('Belleair Shore', 0, '27.91704', '-82.84295'), ('Boyd Hill Nature Preserve', 0, '27.72794', '-82.64995'), ('Caladesi Island', 0, '28.02904', '-82.81995'), ('Clearwater', 0, '27.96004', '-82.76545'), ('Clearwater Beach', 0, '27.97704', '-82.82795'), ('Crescent Lake', 0, '27.78764', '-82.63995'), ('Crystal Beach', 0, '28.09004', '-82.77995'), ('Downtown Saint Petersburg', 0, '27.77004', '-82.63995'), ('Dunedin', 0, '28.01914', '-82.77155'), ('Fort Desoto Park', 0, '27.61994', '-82.72335'), ('Gulfport', 0, '27.74634', '-82.71015'), ('Highpoint', 0, '27.91674', '-82.71355'), ('Honeymoon Island', 0, '28.07004', '-82.82995'), ('Indian Rocks Beach', 0, '27.89774', '-82.84425'), ('Indian Shores', 0, '27.86284', '-82.84815'), ('Kenneth City', 0, '27.81574', '-82.71545'), ('Lake Maggiore', 0, '27.74004', '-82.64995'), ('Largo', 0, '27.90864', '-82.78095'), ('Lealman', 0, '27.82254', '-82.68885'), ('Madeira Beach', 0, '27.79544', '-82.79165'), ('North Redington Beach', 0, '27.81734', '-82.82185'), ('Oldsmar', 0, '28.04854', '-82.67065'), ('Palm Harbor', 0, '28.08764', '-82.76315'), ('Pass-A-grille Beach', 0, '27.68764', '-82.73765'), ('Pinellas Park', 0, '27.85724', '-82.70595'), ('Pinellas Point', 0, '27.70854', '-82.65385'), ('Redington Beach', 0, '27.80974', '-82.81185'), ('Redington Shores', 0, '27.82904', '-82.82995'), ('Safety Harbor', 0, '28.00934', '-82.69625'), ('Saint Pete Beach', 0, '27.72504', '-82.74135'), ('Saint Pete Clearwater Airport', 0, '27.92004', '-82.68995'), ('Saint Petersburg', 0, '27.75804', '-82.67205'), ('Sawgrass Lake Park', 0, '27.84004', '-82.66995'), ('Seminole', 0, '27.84174', '-82.78615'), ('Snell Isle', 0, '27.80004', '-82.60995'), ('South Pasadena', 0, '27.76014', '-82.73345'), ('Tarpon Springs', 0, '28.14584', '-82.75695'), ('Treasure Island', 0, '27.76754', '-82.76845'), ('Tropicana Field', 0, '27.76814', '-82.65315'), ('Venetian Isles', 0, '27.81804', '-82.59995'), ('Vinoy Park', 0, '27.77904', '-82.62995'), ('Walsingham Park', 0, '27.87504', '-82.80995'), ('Weedon Island State Preserve', 0, '27.84264', '-82.59995')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ050': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Albert Whitted Airport', 0, '27.76004', '-82.63995'), ('Belleair', 0, '27.93674', '-82.81215'), ('Belleair Beach', 0, '27.92314', '-82.84325'), ('Belleair Bluffs', 0, '27.91934', '-82.81925'), ('Belleair Shore', 0, '27.91704', '-82.84295'), ('Boyd Hill Nature Preserve', 0, '27.72794', '-82.64995'), ('Caladesi Island', 0, '28.02904', '-82.81995'), ('Clearwater', 0, '27.96004', '-82.76545'), ('Clearwater Beach', 0, '27.97704', '-82.82795'), ('Crescent Lake', 0, '27.78764', '-82.63995'), ('Crystal Beach', 0, '28.09004', '-82.77995'), ('Downtown Saint Petersburg', 0, '27.77004', '-82.63995'), ('Dunedin', 0, '28.01914', '-82.77155'), ('Fort Desoto Park', 0, '27.61994', '-82.72335'), ('Gulfport', 0, '27.74634', '-82.71015'), ('Highpoint', 0, '27.91674', '-82.71355'), ('Honeymoon Island', 0, '28.07004', '-82.82995'), ('Indian Rocks Beach', 0, '27.89774', '-82.84425'), ('Indian Shores', 0, '27.86284', '-82.84815'), ('Kenneth City', 0, '27.81574', '-82.71545'), ('Lake Maggiore', 0, '27.74004', '-82.64995'), ('Largo', 0, '27.90864', '-82.78095'), ('Lealman', 0, '27.82254', '-82.68885'), ('Madeira Beach', 0, '27.79544', '-82.79165'), ('North Redington Beach', 0, '27.81734', '-82.82185'), ('Oldsmar', 0, '28.04854', '-82.67065'), ('Palm Harbor', 0, '28.08764', '-82.76315'), ('Pass-A-grille Beach', 0, '27.68764', '-82.73765'), ('Pinellas Park', 0, '27.85724', '-82.70595'), ('Pinellas Point', 0, '27.70854', '-82.65385'), ('Redington Beach', 0, '27.80974', '-82.81185'), ('Redington Shores', 0, '27.82904', '-82.82995'), ('Safety Harbor', 0, '28.00934', '-82.69625'), ('Saint Pete Beach', 0, '27.72504', '-82.74135'), ('Saint Pete Clearwater Airport', 0, '27.92004', '-82.68995'), ('Saint Petersburg', 0, '27.75804', '-82.67205'), ('Sawgrass Lake Park', 0, '27.84004', '-82.66995'), ('Seminole', 0, '27.84174', '-82.78615'), ('Snell Isle', 0, '27.80004', '-82.60995'), ('South Pasadena', 0, '27.76014', '-82.73345'), ('Tarpon Springs', 0, '28.14584', '-82.75695'), ('Treasure Island', 0, '27.76754', '-82.76845'), ('Tropicana Field', 0, '27.76814', '-82.65315'), ('Venetian Isles', 0, '27.81804', '-82.59995'), ('Vinoy Park', 0, '27.77904', '-82.62995'), ('Walsingham Park', 0, '27.87504', '-82.80995'), ('Weedon Island State Preserve', 0, '27.84264', '-82.59995')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ052': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alturas', 0, '27.85724', '-81.71155'), ('Auburndale', 0, '28.07024', '-81.79775'), ('Babson Park', 0, '27.83364', '-81.52805'), ('Bartow', 0, '27.89524', '-81.84715'), ('Bartow Municipal Airport', 0, '27.94344', '-81.78335'), ('Bradley Junction', 0, '27.79504', '-81.98055'), ('Crooked Lake Park', 0, '27.82994', '-81.58965'), ('Crystal Lake', 0, '28.03534', '-81.90845'), ('Cypress Gardens', 0, '28.00124', '-81.68695'), ('Davenport', 0, '28.16054', '-81.60485'), ('Dundee', 0, '28.02054', '-81.62095'), ('Eagle Lake', 0, '27.97824', '-81.75765'), ('Fort Meade', 0, '27.75234', '-81.79555'), ('Frostproof', 0, '27.74614', '-81.53125'), ('Gibsonia', 0, '28.11794', '-81.96835'), ('Haines City', 0, '28.10904', '-81.62885'), ('Highland City', 0, '27.96064', '-81.87925'), ('Highland Park', 0, '27.86514', '-81.56305'), ('Hillcrest Heights', 0, '27.82384', '-81.53325'), ('Homeland', 0, '27.81784', '-81.82455'), ('Indian Lake Estates', 0, '27.81234', '-81.32655'), ('Inwood', 0, '28.03824', '-81.76745'), ('Kathleen', 0, '28.11794', '-82.02805'), ('Lake Alfred', 0, '28.09074', '-81.72575'), ('Lake Hamilton', 0, '28.04784', '-81.62585'), ('Lakeland', 0, '28.04124', '-81.95995'), ('Lakeland Highlands', 0, '27.95954', '-81.95015'), ('Lakeland Linder Airport', 0, '27.98894', '-82.01855'), ('Lake Wales', 0, '27.90114', '-81.58775'), ('Lake Wales Municipal Airport', 0, '27.89384', '-81.62035'), ('Loughman', 0, '28.23674', '-81.57165'), ('Mulberry', 0, '27.90164', '-81.97305'), ('Poinciana', 0, '28.08514', '-81.48945'), ('Polk City', 0, '28.18214', '-81.82465'), ('River Ranch', 0, '27.77594', '-81.20715'), ('Rockridge', 0, '28.30264', '-81.93705'), ('Wahneta', 0, '27.95594', '-81.72925'), ('Waverly', 0, '27.96764', '-81.61885'), ('Willow Oak', 0, '27.91814', '-82.02145'), ('Winston', 0, '28.04254', '-82.01125'), ('Winter Haven', 0, '28.02004', '-81.72175'), ('Winter Haven Airport', 0, '28.06294', '-81.75325'), ('Withla', 0, '28.33974', '-81.87395')], 'partOfState': 'central', 'wfo': 'TBW'}, +'FLZ053': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alligator Lake', 0, '28.21790', '-81.20460'), ('Austin Tindall Park', 0, '28.33266', '-81.27911'), ('Buena Ventura Lakes', 0, '28.33570', '-81.35320'), ('Campbell', 0, '28.25710', '-81.45270'), ('Celebration', 7427, '28.32000', '-81.54010'), ('Champions Gate', 0, '28.26173', '-81.61843'), ('Deer Park', 4367, '28.09110', '-80.89810'), ('East Lake Toho', 0, '28.29880', '-81.28720'), ('Forever Florida', 0, '28.04170', '-81.04170'), ('Four Corners', 0, '28.32574', '-81.63998'), ('Harmony', 1350, '28.18917', '-81.14528'), ('Holopaw', 0, '28.13296', '-81.06512'), ('Intercession City', 0, '28.26220', '-81.50820'), ('Kenansville', 0, '27.87640', '-80.99220'), ('Kissimmee', 0, '28.30350', '-81.41050'), ('Kissimmee Airport', 0, '28.29041', '-81.43759'), ('Lake Kissimmee', 0, '27.91610', '-81.27640'), ('Lake Marian', 0, '27.87150', '-81.06630'), ('Narcoossee', 0, '28.29820', '-81.23940'), ('Osceola Heritage Park', 0, '28.29840', '-81.36400'), ('Pine Grove', 0, '28.25940', '-81.18480'), ('Poinciana Place', 0, '28.26173', '-81.61843'), ('Saint Cloud', 0, '28.24180', '-81.28980'), ('West Lake Toho', 0, '28.21420', '-81.39860'), ('Yeehaw Junction', 0, '27.69975', '-80.90437')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ054': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Blue Cypress Lake', 3813, '27.72910', '-80.75450'), ('Disneys Vero Beach Resort', 0, '27.76120', '-80.39620'), ('Fellsmere', 3813, '27.76650', '-80.59690'), ('Floralton Beach', 3457, '27.59290', '-80.33280'), ('Gifford', 7599, '27.67530', '-80.40960'), ('Grovenor Estates', 15217, '27.57780', '-80.42550'), ('Indian River Shores', 3448, '27.70570', '-80.38250'), ('Jaycee Beach', 17705, '27.66580', '-80.35950'), ('Moorings Of Vero Beach', 3457, '27.57840', '-80.32990'), ('Orchid', 292, '27.77000', '-80.41000'), ('Pointe West', 0, '27.63000', '-80.48700'), ('Roseland', 1775, '27.83990', '-80.48950'), ('Sebastian', 21921, '27.79203', '-80.48576'), ('Sebastian Highlands', 0, '27.78524', '-80.49638'), ('Sebastian Inlet', 16181, '27.85900', '-80.44740'), ('Sebastian Inlet State Park', 1775, '27.84980', '-80.44310'), ('South Beach', 0, '27.59000', '-80.33330'), ('Vero Beach', 17705, '27.64590', '-80.39420'), ('Vero Beach Airport', 0, '27.65433', '-80.41806'), ('Vero Beach Highland', 15217, '27.57670', '-80.39830'), ('Vero Beach South', 20362, '27.61580', '-80.41340'), ('Vero Lake Estates', 16181, '27.74620', '-80.52860'), ('Wabasso', 918, '27.75050', '-80.43770'), ('Wabasso Beach', 1075, '27.76450', '-80.39920'), ('Winter Beach', 965, '27.71890', '-80.42090')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ056': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bowling Green', 0, '27.63734', '-81.82375'), ('Crewsville', 0, '27.42964', '-81.59055'), ('Fort Green', 0, '27.62004', '-81.94995'), ('Garnder', 0, '27.35004', '-81.80495'), ('Limestone', 0, '27.36654', '-81.91495'), ('Ona', 0, '27.49004', '-81.91995'), ('Sweetwater', 0, '27.40964', '-81.70675'), ('Wauchula', 0, '27.54584', '-81.80985'), ('Zolfo Springs', 0, '27.49424', '-81.79445')], 'partOfState': 'central', 'wfo': 'TBW'}, +'FLZ057': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Archbold', 0, '27.19004', '-81.34995'), ('Avon Park', 0, '27.59324', '-81.50365'), ('Avon Park Air Force Range', 0, '27.58854', '-81.32075'), ('Avon Park Executive Airport', 0, '27.59134', '-81.52885'), ('Brighton', 0, '27.22004', '-81.08995'), ('Cornwell', 0, '27.37504', '-81.08995'), ('Lake Istokpoga', 0, '27.36274', '-81.24775'), ('Lake Josephine', 0, '27.40004', '-81.43995'), ('Lake Placid', 0, '27.29694', '-81.36965'), ('Lorida', 0, '27.45004', '-81.25995'), ('Placid Lakes', 0, '27.24124', '-81.40705'), ('Sebring', 0, '27.49074', '-81.45345'), ('Sebring Regional Airport', 0, '27.45644', '-81.34235'), ('Sebring Shores', 0, '27.53004', '-81.47995'), ('Spring Lake', 0, '27.43504', '-81.34495'), ('Venus', 0, '27.06504', '-81.34995')], 'partOfState': 'south central', 'wfo': 'TBW'}, +'FLZ058': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Basinger', 0, '27.40000', '-81.01670'), ('Basswood Estates', 0, '27.27890', '-80.85770'), ('Country Hills Estates', 0, '27.35850', '-80.81540'), ('Fort Drum', 0, '27.52660', '-80.80700'), ('Four Seasons Estates', 0, '27.25010', '-80.77510'), ('Kissimmee Prarie Preserve', 0, '27.58400', '-81.04530'), ('Okeechobee', 0, '27.24130', '-80.82990'), ('Okeechobee Airport', 0, '27.26603', '-80.85100'), ('Taylor Creek', 0, '27.21630', '-80.78980'), ('Treasure Island', 0, '27.21749', '-80.78606'), ('Whispering Pines', 0, '27.27720', '-80.83980')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ059': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Carlton', 4221, '27.34320', '-80.42290'), ('Collins Park Estates', 5793, '27.36980', '-80.32090'), ('Digital Domain Park', 0, '27.32480', '-80.40470'), ('Fort Pierce', 37516, '27.44130', '-80.32200'), ('Fort Pierce North', 7386, '27.47480', '-80.35620'), ('Fort Pierce Ocean Park', 0, '27.46090', '-80.28740'), ('Fort Pierce South', 5672, '27.41080', '-80.35510'), ('Frederick Douglass Park', 5793, '27.40920', '-80.26770'), ('Indian River Estates', 5793, '27.36400', '-80.31010'), ('Indrio', 604, '27.52040', '-80.35320'), ('Lakewood Park', 10458, '27.53800', '-80.39030'), ('Nettles Island', 0, '27.28557', '-80.22334'), ('Pepper Beach Park', 0, '27.49790', '-80.30100'), ('Port Saint Lucie', 88769, '27.27980', '-80.35450'), ('Port Saint Lucie River Park', 4874, '27.32130', '-80.33180'), ('Queens Cove', 604, '27.51480', '-80.31790'), ('Saint Lucie Airport', 0, '27.49467', '-80.36647'), ('Saint Lucie Nuclear Power Plant', 4846, '27.34748', '-80.24561'), ('Saint Lucie Village', 0, '27.50000', '-80.34100'), ('Saint Lucie West', 5175, '27.31490', '-80.39560'), ('Surfside Park', 0, '27.44940', '-80.28560'), ('Tradition', 0, '27.27521', '-80.44347'), ('Walton', 0, '27.29650', '-80.26000'), ('Waveland', 463, '27.26760', '-80.20690'), ('White City', 4221, '27.37900', '-80.34230')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ061': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arcadia', 0, '27.21964', '-81.85965'), ('Brownville', 0, '27.29704', '-81.80995'), ('Fort Ogden', 0, '27.09004', '-81.95495'), ('Lake Suzy', 0, '27.04314', '-82.04205'), ('Nocatee', 0, '27.16004', '-81.88995'), ('Pine Level', 0, '27.26504', '-81.98995')], 'partOfState': 'south central', 'wfo': 'TBW'}, +'FLZ063': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Brighton Seminole', 1390, '27.08000', '-81.06000'), ('Buckhead Ridge', 1390, '27.14000', '-80.89000'), ('Lakeport', 1635, '26.98000', '-81.13000'), ('Moore Haven', 1635, '26.83500', '-81.10000'), ('Muse', 4210, '26.83000', '-81.50000'), ('Ortona', 3050, '26.81000', '-81.30000'), ('Palmdale', 3050, '26.94000', '-81.31000')], 'partOfState': 'southern', 'wfo': 'MFL'}, +'FLZ064': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Hobe Sound', 11376, '27.07240', '-80.13960'), ('Hobe Sound Beach', 11376, '27.06500', '-80.11550'), ('Hobe Sound Wildlife Refuge', 0, '27.10200', '-80.13430'), ('Indiantown', 5588, '27.02340', '-80.47140'), ('J And S Fish Camp', 0, '27.09027', '-80.65737'), ('Jensen Beach', 11100, '27.23610', '-80.23090'), ('Jonathan Dickinson State Park', 620, '27.01220', '-80.12480'), ('Jupiter Island', 620, '27.01000', '-80.09300'), ('Palm City', 20097, '27.16130', '-80.26890'), ('Port Salerno', 10141, '27.14650', '-80.18980'), ('Rio', 1028, '27.21842', '-80.24004'), ('Sewalls Point', 1946, '27.19731', '-80.19911'), ('Stuart', 14633, '27.19430', '-80.24320'), ('Witham Field', 0, '27.18162', '-80.22154')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ066': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Big Cypress Semino', 2730, '26.30000', '-80.97000'), ('Clewiston', 6460, '26.75000', '-80.93700'), ('Devils Garden', 2730, '26.61000', '-81.13000'), ('Felda', 19763, '26.54000', '-81.43000'), ('Hendry Correctional', 19763, '26.31000', '-81.21000'), ('Keri', 3050, '26.60000', '-81.39000'), ('La Belle', 4210, '26.76000', '-81.44000')], 'partOfState': 'southern', 'wfo': 'MFL'}, +'FLZ067': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Belle Glade', 14906, '26.69000', '-80.67000'), ('Caloosa', 35058, '26.89000', '-80.26000'), ('Canal Point', 525, '26.86000', '-80.63000'), ('Holey Land Wildlife Refuge', 1141, '26.43000', '-80.73000'), ('Lake Harbor', 195, '26.70000', '-80.83000'), ('Lion Country Safari Park', 38216, '26.71000', '-80.36000'), ('Okeelanta', 1141, '26.60000', '-80.71000'), ('Pahokee', 5985, '26.82000', '-80.66000'), ('Rotenberger Wildlife Refuge', 3859, '26.40000', '-80.83000'), ('Royal Palm Beach', 21523, '26.71000', '-80.23000'), ('South Bay', 3859, '26.66000', '-80.72000'), ('The Acreage', 21523, '26.77000', '-80.25000'), ('Wellington', 38216, '26.67000', '-80.25000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ068': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aberdeen Golf Course', 2572, '26.56000', '-80.17000'), ('Boca Raton Equestrian', 4758, '26.44000', '-80.19000'), ('Boca West', 2847, '26.38000', '-80.16000'), ('Boynton Beach', 60389, '26.53000', '-80.09000'), ('Delray Beach', 60020, '26.46000', '-80.09000'), ('Florida Gardens', 22940, '26.62000', '-80.17000'), ('Greenacres City', 22940, '26.63000', '-80.13500'), ('Haverhill', 1454, '26.69000', '-80.12400'), ('Lake Worth', 35133, '26.62000', '-80.07000'), ('Palm Beach Gardens', 35058, '26.83000', '-80.10000'), ('Palm Springs', 11699, '26.63500', '-80.09500'), ('Philo Farms', 5273, '26.95000', '-80.18000'), ('Sandalfoot Cove', 16582, '26.34000', '-80.20000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ069': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bonita Shores', 32797, '26.32000', '-81.84000'), ('East Naples', 22951, '26.14000', '-81.74000'), ('Everglades City', 379, '25.86000', '-81.38500'), ('Fiddlers Creek', 5186, '26.04000', '-81.69000'), ('Goodland', 320, '25.92000', '-81.66000'), ('Lely', 3857, '26.10000', '-81.71000'), ('Marco Island', 14879, '25.94000', '-81.73000'), ('Marco Island Airport', 14879, '26.00000', '-81.66000'), ('Naples', 20976, '26.14000', '-81.80000'), ('North Naples', 13422, '26.22000', '-81.76000'), ('Ochopee', 479, '25.90000', '-81.30000'), ('Pelican Bay', 5686, '26.23000', '-81.81000'), ('Port Of The Island', 479, '25.96000', '-81.51000'), ('Royal Palm Hammock', 14879, '25.99000', '-81.59000'), ('Vanderbilt Beach', 6741, '26.27000', '-81.82000')], 'partOfState': 'southwest', 'wfo': 'MFL'}, +'FLZ070': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bunker Hill', 19763, '26.39000', '-81.38000'), ('Carnestown', 479, '25.91000', '-81.36000'), ('Copeland', 479, '25.96000', '-81.35000'), ('Dade-Collier Train', 479, '25.86000', '-80.90000'), ('Deep Lake', 479, '26.04000', '-81.34000'), ('Golden Gate', 20951, '26.18000', '-81.70000'), ('Immokalee', 19763, '26.42000', '-81.44000'), ('Jerome', 479, '26.00000', '-81.34000'), ('Miles City', 19763, '26.15000', '-81.34000'), ('Monroe Station', 479, '25.86000', '-81.10000'), ('North Blocks Golde', 20951, '26.23000', '-81.54000'), ('Oasis Ranger Station', 479, '25.86000', '-81.03000'), ('Orange Tree', 20951, '26.28000', '-81.59000'), ('Quail Creek Estate', 3507, '26.30000', '-81.74000'), ('Rock Island', 3076, '26.13000', '-81.34000'), ('South Blocks Golde', 5186, '26.06000', '-81.54000'), ('Sunniland', 19763, '26.27000', '-81.34000')], 'partOfState': 'southwest', 'wfo': 'MFL'}, +'FLZ071': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Miccosukee Indian Reservation', 3859, '26.17000', '-80.86000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ072': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Coconut Creek', 43566, '26.27000', '-80.19000'), ('Cooper City', 27939, '26.06000', '-80.27000'), ('Coral Springs', 117549, '26.27000', '-80.27000'), ('Davie', 75720, '26.08000', '-80.31000'), ('Hollywood', 139357, '26.03000', '-80.17000'), ('Lauderdale Lakes', 31705, '26.16000', '-80.20000'), ('Lauderhill', 57585, '26.15000', '-80.21000'), ('Margate', 53909, '26.25000', '-80.22000'), ('Miramar', 72739, '25.98000', '-80.35000'), ('North Lauderdale', 32264, '26.22000', '-80.23000'), ('North Perry Airport', 9132, '26.00000', '-80.24000'), ('Parkland', 13835, '26.31000', '-80.24000'), ('Pembroke Pines', 137427, '26.01000', '-80.34000'), ('Plantation', 4168, '26.12000', '-80.25000'), ('Sawgrass Mills Mal', 85779, '26.15000', '-80.32000'), ('Southwest Ranches', 1704, '26.04000', '-80.33000'), ('Sunrise', 85779, '26.17000', '-80.28000'), ('Tamarac', 55588, '26.21000', '-80.27000'), ('Weston', 49286, '26.11000', '-80.39000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ073': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Country Walk', 10653, '25.63000', '-80.43000'), ('Florida City', 7843, '25.45500', '-80.48000'), ('Fortymile Bend', 10653, '25.76000', '-80.83000'), ('Goulds', 7453, '25.56000', '-80.40000'), ('Homestead', 31909, '25.47500', '-80.47000'), ('Inlikita', 10653, '25.60000', '-80.47000'), ('Kendale Lakes', 56901, '25.71000', '-80.42000'), ('Naranja', 4034, '25.52000', '-80.43000'), ('Pa-Hay Okee Overlook', 7843, '25.43000', '-80.79000'), ('Redland', 7843, '25.52000', '-80.51000'), ('Shark Valley Obs Tower', 10653, '25.66000', '-80.77000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ074': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Carol City', 59443, '25.94000', '-80.26000'), ('Coral Gables', 42249, '25.73000', '-80.27000'), ('Coral Way Village', 16243, '25.73000', '-80.32000'), ('Cutler Ridge', 24781, '25.60000', '-80.36000'), ('Doral', 20438, '25.84000', '-80.36000'), ('Hialeah', 226419, '25.86000', '-80.29000'), ('Hialeah Gardens', 19297, '25.87000', '-80.34000'), ('Howard', 13675, '25.64000', '-80.35000'), ('Kendall', 75226, '25.68000', '-80.32000'), ('Liberty City', 14468, '25.83000', '-80.22000'), ('Medley', 1098, '25.87000', '-80.36000'), ('Miami International Arpt', 2348, '25.80000', '-80.29000'), ('Miami Lakes', 22676, '25.91000', '-80.31000'), ('Miami Springs', 13712, '25.82000', '-80.29000'), ('Opa-Locka', 14951, '25.90000', '-80.26000'), ('Pennsuco', 19297, '25.90000', '-80.38000'), ('South Miami', 10741, '25.71000', '-80.30000'), ('Sweetwater', 14494, '25.76500', '-80.37000'), ('Westwood Lakes', 12005, '25.72000', '-80.37000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ075': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Flamingo', 186, '25.15000', '-80.94000'), ('Loop Road Ee Cente', 479, '25.75000', '-80.97000'), ('Northwest Cape Sable', 10255, '25.24000', '-81.17000'), ('Pinecrest', 19055, '25.75000', '-80.94000'), ('Wilderness Waterway', 479, '25.65000', '-81.16000')], 'partOfState': 'southwest', 'wfo': 'MFL'}, +'FLZ076': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Islamorada', 1220, '24.91830', '-80.63570'), ('Lower Matecumbe Key', 186, '24.86000', '-80.72000'), ('North Key Largo', 1049, '25.26680', '-80.32360'), ('Ocean Reef', 1049, '25.32000', '-80.28000'), ('Rock Harbor', 11886, '25.08000', '-80.46000'), ('Route 1/Card Sound', 11886, '25.17000', '-80.37000')], 'partOfState': 'southeast', 'wfo': 'KEY'}, +'FLZ077': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Key Colony Beach', 788, '24.72260', '-81.02330'), ('Layton', 186, '24.82220', '-80.81170'), ('Marathon', 10255, '24.71190', '-81.08080')], 'partOfState': '', 'wfo': 'KEY'}, +'FLZ078': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Big Coppitt Key', 2595, '24.59620', '-81.66030'), ('Big Pine Key', 5032, '24.68690', '-81.36610'), ('Big Torch Key', 1695, '24.73000', '-81.44000'), ('Boca Chica', 2595, '24.59000', '-81.70000'), ('Cudjoe Key', 1695, '24.67100', '-81.49850'), ('Key West', 25478, '24.56280', '-81.77520'), ('Little Torch Key', 5032, '24.67000', '-81.39000'), ('No Name Key', 5032, '24.70000', '-81.32000'), ('Ramrod Key', 5032, '24.66000', '-81.41000'), ('Sugarloaf Key', 1695, '24.63000', '-81.55000'), ('Summerland Key', 1695, '24.66000', '-81.45000')], 'partOfState': '', 'wfo': 'KEY'}, +'FLZ108': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Blue Mountain Beach', 0, '30.34061', '-86.19845'), ('Bunker', 1190, '30.38620', '-86.08300'), ('Choctaw Beach', 0, '30.46983', '-86.34430'), ('Four Mile Village', 0, '30.37899', '-86.32319'), ('Freeport', 1190, '30.50010', '-86.13520'), ('Grayton Beach', 0, '30.33677', '-86.16455'), ('Gulf Pines', 0, '30.37675', '-86.33727'), ('Inlet Beach', 0, '30.27694', '-86.00830'), ('Miramar Beach', 0, '30.37931', '-86.36093'), ('Portland', 1190, '30.51230', '-86.19580'), ('Port Washington', 1190, '30.36830', '-86.11350'), ('Sandestin', 2435, '30.37990', '-86.33040'), ('Santa Rosa Beach', 2435, '30.38890', '-86.22888'), ('Seagrove Beach', 0, '30.31758', '-86.12968'), ('Seaside', 0, '30.31982', '-86.13800'), ('Turquoise Beach', 2435, '30.40758', '-86.31224'), ('Villa Tasso', 0, '30.46183', '-86.38780')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ112': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Allanton', 0, '30.03157', '-85.45795'), ('Bahama Beach', 0, '30.19690', '-85.84198'), ('Bay Harbor', 8810, '30.14580', '-85.61480'), ('Bayhead', 0, '30.30690', '-85.58069'), ('Bayou George', 999, '30.26120', '-85.54000'), ('Beacon Beach', 0, '30.09871', '-85.64570'), ('Bid-A-wee', 0, '30.20248', '-85.85034'), ('Biltmore Beach', 0, '30.14499', '-85.75765'), ('Brannonville', 999, '30.22620', '-85.59280'), ('Cairo', 12451, '30.30380', '-85.47730'), ('Callaway', 14233, '30.14090', '-85.57780'), ('Camp Flowers', 0, '30.32482', '-85.55778'), ('Cedar Grove', 5367, '30.17580', '-85.62450'), ('College Station', 999, '30.23350', '-85.57780'), ('Davis Beach', 1017, '29.96760', '-85.46790'), ('Dirego Park', 999, '30.19060', '-85.63940'), ('Edgewater Gulf Beach', 0, '30.18677', '-85.82248'), ('Gulf Lagoon Beach', 0, '30.16753', '-85.78880'), ('Gulf Resort Beach', 0, '30.22324', '-85.89035'), ('Hiland Park', 999, '30.19930', '-85.62990'), ('Hollywood Beach', 0, '30.25414', '-85.95663'), ('Laguna Beach', 0, '30.25262', '-85.95314'), ('Laird', 2909, '30.31378', '-85.92389'), ('Lynn Haven', 12451, '30.23229', '-85.64906'), ('Magnolia Beach', 10889, '30.15917', '-85.72420'), ('Majette', 0, '30.28036', '-85.51105'), ('Mexico Beach', 0, '29.94803', '-85.41815'), ('Millville', 0, '30.15317', '-85.63093'), ('Panama City', 36417, '30.17531', '-85.66800'), ('Panama City Beach', 0, '30.21007', '-85.84882'), ('Parker', 0, '30.13079', '-85.60301'), ('Pfn-Bay County Airport', 3519, '30.21200', '-85.68290'), ('Recota Beach', 0, '30.30418', '-85.59452'), ('Seminole Hills', 250, '30.36960', '-85.93200'), ('Southport', 12451, '30.28955', '-85.64094'), ('Springfield', 8810, '30.16754', '-85.60792'), ('St Andrews State Park', 0, '30.13079', '-85.73800'), ('Sunnyside', 0, '30.25004', '-85.94813'), ('Tyndall AFB', 2757, '30.07101', '-85.57745'), ('Vicksburg', 12451, '30.32210', '-85.66000'), ('West Bay', 7671, '30.29290', '-85.85910'), ('West Panama City', 0, '30.17690', '-85.80526'), ('Wetappo', 0, '30.05500', '-85.42126')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ114': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Beacon Hill', 1017, '29.92540', '-85.38783'), ('Cape San Blas', 0, '29.66220', '-85.35067'), ('Highland View', 0, '29.83799', '-85.31623'), ('Indian Pass', 0, '29.68797', '-85.26495'), ('Jones Homestead', 0, '29.77140', '-85.28612'), ('Milltown', 0, '29.83135', '-85.29684'), ('Oak Grove', 3644, '29.79010', '-85.30142'), ('Odena', 3644, '29.73923', '-85.18816'), ('Overstreet', 1017, '29.99730', '-85.36900'), ('Port St. Joe', 3644, '29.80880', '-85.29610'), ('Saint Joe Beach', 1017, '29.90080', '-85.36399'), ('Simmons Bayou', 0, '29.74971', '-85.30347'), ('St Joseph State Park', 0, '29.79411', '-85.40960'), ('Ward Ridge', 0, '29.78900', '-85.28536'), ('White City', 3644, '29.88490', '-85.21970')], 'partOfState': 'panhandle', 'wfo': 'TAE'}, +'FLZ115': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alligator Point', 426, '29.89975', '-84.39955'), ('Apalachicola', 2334, '29.72395', '-84.98907'), ('Apalachicola Airport', 2334, '29.72490', '-85.02830'), ('Bay City', 2334, '29.74988', '-85.02884'), ('Carrabelle', 1303, '29.85240', '-84.66460'), ('Carrabelle Beach', 0, '29.83185', '-84.68415'), ('Creels', 2158, '29.82220', '-84.90920'), ('Eastpoint', 0, '29.75378', '-84.87147'), ('Eleven Mile', 0, '29.71022', '-85.15443'), ('Franklin', 0, '29.78155', '-84.85727'), ('Green Point', 0, '29.75779', '-84.83351'), ('Hays Place', 2158, '29.84000', '-84.94590'), ('High Bluff', 2158, '29.81860', '-84.82540'), ('Lanark Village', 1303, '29.88250', '-84.59580'), ('McIntyre', 426, '29.98030', '-84.52630'), ('Nine Mile', 0, '29.71692', '-85.11993'), ('Royal Bluff', 0, '29.79297', '-84.75050'), ('Saint Teresa', 426, '29.92980', '-84.45440'), ('St George Island', 0, '29.66377', '-84.86328'), ('St George Island St Pk', 0, '29.71889', '-84.74926'), ('Thirteen Mile', 0, '29.70336', '-85.19098'), ('Tilton', 2334, '29.73790', '-85.08190'), ('Yent Place', 1303, '29.86270', '-84.70040')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ115': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alligator Point', 426, '29.89975', '-84.39955'), ('Apalachicola', 2334, '29.72395', '-84.98907'), ('Apalachicola Airport', 2334, '29.72490', '-85.02830'), ('Bay City', 2334, '29.74988', '-85.02884'), ('Carrabelle', 1303, '29.85240', '-84.66460'), ('Carrabelle Beach', 0, '29.83185', '-84.68415'), ('Creels', 2158, '29.82220', '-84.90920'), ('Eastpoint', 0, '29.75378', '-84.87147'), ('Eleven Mile', 0, '29.71022', '-85.15443'), ('Franklin', 0, '29.78155', '-84.85727'), ('Green Point', 0, '29.75779', '-84.83351'), ('Hays Place', 2158, '29.84000', '-84.94590'), ('High Bluff', 2158, '29.81860', '-84.82540'), ('Lanark Village', 1303, '29.88250', '-84.59580'), ('McIntyre', 426, '29.98030', '-84.52630'), ('Nine Mile', 0, '29.71692', '-85.11993'), ('Royal Bluff', 0, '29.79297', '-84.75050'), ('Saint Teresa', 426, '29.92980', '-84.45440'), ('St George Island', 0, '29.66377', '-84.86328'), ('St George Island St Pk', 0, '29.71889', '-84.74926'), ('Thirteen Mile', 0, '29.70336', '-85.19098'), ('Tilton', 2334, '29.73790', '-85.08190'), ('Yent Place', 1303, '29.86270', '-84.70040')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ118': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ127': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Buckhorn', 426, '30.06620', '-84.45190'), ('Curtis Mill', 0, '30.00799', '-84.52679'), ('Hyde Park', 0, '30.16988', '-84.26226'), ('Liveoak Island', 0, '30.06155', '-84.27711'), ('Medart', 426, '30.08190', '-84.38730'), ('Panacea', 426, '30.03660', '-84.38800'), ('Panacea-Wakulla Airport', 0, '29.98915', '-84.39577'), ('Plum Orchard', 0, '30.15131', '-84.14835'), ('Port Leon', 272, '30.13010', '-84.19520'), ('Saint Marks', 272, '30.15680', '-84.20700'), ('Shell Point', 0, '30.05907', '-84.29383'), ('Sopchoppy', 426, '30.05940', '-84.48880'), ('Spring Creek', 272, '30.08000', '-84.32980'), ('Tully', 0, '30.10461', '-84.38076'), ('Wakulla Beach', 0, '30.10519', '-84.26195')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ127': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Buckhorn', 426, '30.06620', '-84.45190'), ('Curtis Mill', 0, '30.00799', '-84.52679'), ('Hyde Park', 0, '30.16988', '-84.26226'), ('Liveoak Island', 0, '30.06155', '-84.27711'), ('Medart', 426, '30.08190', '-84.38730'), ('Panacea', 426, '30.03660', '-84.38800'), ('Panacea-Wakulla Airport', 0, '29.98915', '-84.39577'), ('Plum Orchard', 0, '30.15131', '-84.14835'), ('Port Leon', 272, '30.13010', '-84.19520'), ('Saint Marks', 272, '30.15680', '-84.20700'), ('Shell Point', 0, '30.05907', '-84.29383'), ('Sopchoppy', 426, '30.05940', '-84.48880'), ('Spring Creek', 272, '30.08000', '-84.32980'), ('Tully', 0, '30.10461', '-84.38076'), ('Wakulla Beach', 0, '30.10519', '-84.26195')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ128': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Adams Beach', 6847, '29.88164', '-83.63484'), ('Bird Island', 0, '29.79995', '-83.58018'), ('Blue Springs', 6847, '29.83546', '-83.57414'), ('Buckhorn', 272, '30.13560', '-83.91499'), ('Cedar Island', 6847, '29.81450', '-83.58685'), ('Dekle Beach', 6847, '29.84933', '-83.61922'), ('Fish Creek', 6847, '29.78570', '-83.57230'), ('Howell Place', 6847, '29.77107', '-83.50802'), ('Jack Lee Island', 0, '29.83097', '-83.60038'), ('Jug Island', 0, '29.84366', '-83.61699'), ('Scanlon', 272, '30.13049', '-83.89603'), ('Steinhatchee', 206, '29.67105', '-83.38760')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ134': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Horseshoe Beach', 206, '29.44020', '-83.28810'), ('Jena', 206, '29.66377', '-83.37090'), ('Shired Island', 206, '29.39490', '-83.20100'), ('Suwannee', 206, '29.32810', '-83.14400'), ('Yellow Jacket', 737, '29.46787', '-83.00430')], 'partOfState': 'big bend', 'wfo': 'TAE'}, +'FLZ139': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cedar Key', 0, '29.14634', '-83.03955'), ('Fowlers Bluff', 0, '29.39514', '-83.02635'), ('Inglis', 0, '29.03264', '-82.65935'), ('Yankeetown', 0, '29.02990', '-82.71570')], 'partOfState': 'northern', 'wfo': 'TBW'}, +'FLZ139': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cedar Key', 0, '29.14634', '-83.03955'), ('Fowlers Bluff', 0, '29.39514', '-83.02635'), ('Inglis', 0, '29.03264', '-82.65935'), ('Yankeetown', 0, '29.02990', '-82.71570')], 'partOfState': 'northern', 'wfo': 'TBW'}, +'FLZ139': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Cedar Key', 0, '29.14634', '-83.03955'), ('Fowlers Bluff', 0, '29.39514', '-83.02635'), ('Inglis', 0, '29.03264', '-82.65935'), ('Yankeetown', 0, '29.02990', '-82.71570')], 'partOfState': 'northern', 'wfo': 'TBW'}, +'FLZ141': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Allandale', 45823, '29.12150', '-80.97980'), ('Apollo Beach', 7444, '28.90890', '-80.81070'), ('Bethune Beach', 0, '28.95830', '-80.84580'), ('Daytona Beach', 64112, '29.21250', '-81.03080'), ('Daytona Beach Airport', 0, '29.18080', '-81.05736'), ('Daytona Beach Shores', 4299, '29.17350', '-80.98240'), ('Daytona International Speedway', 0, '29.18530', '-81.06910'), ('Edgewater', 18668, '28.96760', '-80.90480'), ('Eldora', 0, '28.90830', '-80.81670'), ('Farmton', 69543, '28.84670', '-81.06090'), ('Harbor Oaks', 0, '29.10790', '-80.96920'), ('Holly Hill', 12119, '29.24260', '-81.04410'), ('Lake Ashby', 69543, '28.93080', '-81.09500'), ('Maytown', 1378, '28.80690', '-80.96040'), ('New Smyrna Beach', 22464, '29.02500', '-80.93330'), ('New Smyrna Beach Airport', 0, '29.05577', '-80.94742'), ('Oak Hill', 1792, '28.87500', '-80.85000'), ('Ormond Beach', 36301, '29.27660', '-81.06140'), ('Ormond Beach Airport', 0, '29.30193', '-81.11385'), ('Ormond By The Sea', 8430, '29.33921', '-81.06576'), ('Port Orange', 45823, '29.16010', '-81.00330'), ('South Daytona', 13177, '29.16480', '-81.00480'), ('Spruce Creek', 4877, '29.07930', '-81.05310'), ('Turtle Mound', 1378, '28.94470', '-80.83520'), ('Wilbur By The Sea', 2513, '29.13070', '-80.95790')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ142': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Chassahowitzka', 0, '28.70004', '-82.56995'), ('Crystal River', 0, '28.90104', '-82.59755'), ('Homosassa', 0, '28.78124', '-82.61835'), ('Ozello', 0, '28.83404', '-82.67225')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ142': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Chassahowitzka', 0, '28.70004', '-82.56995'), ('Crystal River', 0, '28.90104', '-82.59755'), ('Homosassa', 0, '28.78124', '-82.61835'), ('Ozello', 0, '28.83404', '-82.67225')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ144': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Astatula', 1298, '28.71060', '-81.73490'), ('Clermont', 9333, '28.55120', '-81.75770'), ('Ferndale', 233, '28.62180', '-81.69930'), ('Groveland', 2360, '28.56300', '-81.85210'), ('Hawthorne', 1415, '28.76120', '-81.87100'), ('Howey In The Hills', 956, '28.71590', '-81.77480'), ('Lake Harris', 1008, '28.77690', '-81.82520'), ('Lake Louisa', 0, '28.47950', '-81.73850'), ('Little Lake Harris', 956, '28.72560', '-81.75840'), ('Mascotte', 2687, '28.57620', '-81.88860'), ('Minneola', 5435, '28.57510', '-81.74710'), ('Montverde', 882, '28.59680', '-81.67600'), ('Okahumpka', 251, '28.74760', '-81.89490'), ('Yalaha', 1175, '28.74650', '-81.82420')], 'partOfState': 'east central', 'wfo': 'MLB'}, +'FLZ147': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aurantia', 9147, '28.72810', '-80.88760'), ('Bellwood', 0, '28.50280', '-80.78120'), ('Canaveral Acres', 12112, '28.40730', '-80.84360'), ('Canaveral Groves', 0, '28.41670', '-80.83330'), ('Cape Canaveral', 9912, '28.39250', '-80.60460'), ('Cocoa', 16412, '28.37700', '-80.75020'), ('Haulover Canal', 9147, '28.73620', '-80.75440'), ('Jetty Park', 0, '28.40690', '-80.58960'), ('Kennedy Space Center', 40670, '28.63960', '-80.70690'), ('Lagrange', 40670, '28.63620', '-80.83060'), ('Lone Cabbage Fish Camp', 0, '28.36900', '-80.87220'), ('Merritt Island', 34743, '28.35830', '-80.69160'), ('Merritt Island Wildlife Refuge', 0, '28.63960', '-80.70690'), ('Mims', 9147, '28.68460', '-80.84630'), ('Playalinda Beach', 40670, '28.65523', '-80.63206'), ('Port Canaveral', 0, '28.40770', '-80.58880'), ('Port Saint John', 12112, '28.47680', '-80.78880'), ('Scottsmoor', 9147, '28.76680', '-80.87190'), ('Sharpes', 3411, '28.44128', '-80.76102'), ('Shiloh', 1378, '28.78940', '-80.80450'), ('Titusville', 40670, '28.58880', '-80.82020'), ('Titusville Airport', 0, '28.51380', '-80.79847'), ('Turnbull', 9147, '28.71010', '-80.86260')], 'partOfState': '', 'wfo': 'MLB'}, +'FLZ148': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bayport', 0, '28.54854', '-82.64525'), ('Chassahowitzka Refuge', 0, '28.65084', '-82.59945'), ('Glen Lakes', 0, '28.56764', '-82.56065'), ('Hernando Beach', 0, '28.46904', '-82.65935'), ('Pine Island', 0, '28.57204', '-82.64995'), ('Weeki Wachee', 0, '28.51524', '-82.57865'), ('Weeki Wachee Acres', 0, '28.48314', '-82.59775')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ149': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aripeka', 0, '28.43084', '-82.66375'), ('Bayonet Point', 0, '28.32630', '-82.68320'), ('Elfers', 0, '28.21670', '-82.72200'), ('Holiday', 0, '28.18594', '-82.74215'), ('Hudson', 0, '28.35774', '-82.69945'), ('New Port Richey', 0, '28.24774', '-82.71775'), ('Trinity', 0, '28.17784', '-82.67105')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ151': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Busch Gardens', 0, '28.03504', '-82.42045'), ('Carrollwood', 0, '28.04974', '-82.49305'), ('Channelside', 0, '27.94804', '-82.44695'), ('Davis Islands', 0, '27.92374', '-82.45435'), ('Egmont Key', 0, '27.59504', '-82.76295'), ('Florida State Fairgrounds', 0, '27.99044', '-82.36515'), ('Gibsonton', 0, '27.84104', '-82.37035'), ('Macdill Air Force Base', 0, '27.84924', '-82.52145'), ('Orient Park', 0, '27.98254', '-82.37845'), ('Palm River', 0, '27.93164', '-82.38315'), ('Peter O Knight Airport', 0, '27.91564', '-82.44925'), ('Progress Village', 0, '27.90174', '-82.36465'), ('Raymond James Stadium', 0, '27.97564', '-82.50325'), ('Ruskin', 0, '27.71444', '-82.42905'), ('Soho', 0, '27.92914', '-82.48305'), ('South Tampa', 0, '27.89444', '-82.50605'), ('Tampa', 0, '27.95904', '-82.48205'), ('Tampa International Airport', 0, '27.97554', '-82.53315'), ('Temple Terrace', 0, '28.04244', '-82.38215'), ('Town N Country', 0, '28.01024', '-82.57735'), ('University Of South Florida', 0, '28.05174', '-82.40265'), ('University Of Tampa', 0, '27.94704', '-82.46445'), ('Westchase', 0, '28.05284', '-82.61135'), ('West Park', 0, '28.01154', '-82.51625'), ('Ybor City', 0, '27.96454', '-82.43525')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ151': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Busch Gardens', 0, '28.03504', '-82.42045'), ('Carrollwood', 0, '28.04974', '-82.49305'), ('Channelside', 0, '27.94804', '-82.44695'), ('Davis Islands', 0, '27.92374', '-82.45435'), ('Egmont Key', 0, '27.59504', '-82.76295'), ('Florida State Fairgrounds', 0, '27.99044', '-82.36515'), ('Gibsonton', 0, '27.84104', '-82.37035'), ('Macdill Air Force Base', 0, '27.84924', '-82.52145'), ('Orient Park', 0, '27.98254', '-82.37845'), ('Palm River', 0, '27.93164', '-82.38315'), ('Peter O Knight Airport', 0, '27.91564', '-82.44925'), ('Progress Village', 0, '27.90174', '-82.36465'), ('Raymond James Stadium', 0, '27.97564', '-82.50325'), ('Ruskin', 0, '27.71444', '-82.42905'), ('Soho', 0, '27.92914', '-82.48305'), ('South Tampa', 0, '27.89444', '-82.50605'), ('Tampa', 0, '27.95904', '-82.48205'), ('Tampa International Airport', 0, '27.97554', '-82.53315'), ('Temple Terrace', 0, '28.04244', '-82.38215'), ('Town N Country', 0, '28.01024', '-82.57735'), ('University Of South Florida', 0, '28.05174', '-82.40265'), ('University Of Tampa', 0, '27.94704', '-82.46445'), ('Westchase', 0, '28.05284', '-82.61135'), ('West Park', 0, '28.01154', '-82.51625'), ('Ybor City', 0, '27.96454', '-82.43525')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ155': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anna Maria Island', 0, '27.52894', '-82.73295'), ('Bayshore Gardens', 0, '27.43354', '-82.57995'), ('Bradenton', 0, '27.48794', '-82.57895'), ('Bradenton Beach', 0, '27.46404', '-82.69755'), ('Cortez', 0, '27.46854', '-82.67055'), ('Ellenton', 0, '27.52364', '-82.52795'), ('Holmes Beach', 0, '27.51004', '-82.71565'), ('Oneco', 0, '27.44804', '-82.54595'), ('Palma Sola', 0, '27.51244', '-82.63285'), ('Palmetto', 0, '27.52194', '-82.57755'), ('Samoset', 0, '27.46954', '-82.54145'), ('Sarasota Bradenton Airport', 0, '27.39544', '-82.55435'), ('Whitney Beach', 0, '27.42974', '-82.68045')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ155': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Anna Maria Island', 0, '27.52894', '-82.73295'), ('Bayshore Gardens', 0, '27.43354', '-82.57995'), ('Bradenton', 0, '27.48794', '-82.57895'), ('Bradenton Beach', 0, '27.46404', '-82.69755'), ('Cortez', 0, '27.46854', '-82.67055'), ('Ellenton', 0, '27.52364', '-82.52795'), ('Holmes Beach', 0, '27.51004', '-82.71565'), ('Oneco', 0, '27.44804', '-82.54595'), ('Palma Sola', 0, '27.51244', '-82.63285'), ('Palmetto', 0, '27.52194', '-82.57755'), ('Samoset', 0, '27.46954', '-82.54145'), ('Sarasota Bradenton Airport', 0, '27.39544', '-82.55435'), ('Whitney Beach', 0, '27.42974', '-82.68045')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ160': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bee Ridge', 0, '27.28734', '-82.47555'), ('Desoto Lakes', 0, '27.37124', '-82.48995'), ('Englewood', 0, '26.95954', '-82.35425'), ('Fruitville', 0, '27.33254', '-82.46345'), ('Laurel', 0, '27.14254', '-82.46235'), ('Nokomis', 0, '27.12194', '-82.43665'), ('Oscar Scherer State Park', 0, '27.17764', '-82.45865'), ('Osprey', 0, '27.19604', '-82.47995'), ('Sarasota', 0, '27.33614', '-82.54655'), ('Siesta Key', 0, '27.27714', '-82.56645'), ('South Venice', 0, '27.04264', '-82.41425'), ('Turtle Beach', 0, '27.21944', '-82.51715'), ('Vamo', 0, '27.22864', '-82.49645'), ('Venice', 0, '27.09794', '-82.45575'), ('Venice Gardens', 0, '27.06904', '-82.40495'), ('Warm Mineral Springs', 0, '27.04854', '-82.27025')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ160': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bee Ridge', 0, '27.28734', '-82.47555'), ('Desoto Lakes', 0, '27.37124', '-82.48995'), ('Englewood', 0, '26.95954', '-82.35425'), ('Fruitville', 0, '27.33254', '-82.46345'), ('Laurel', 0, '27.14254', '-82.46235'), ('Nokomis', 0, '27.12194', '-82.43665'), ('Oscar Scherer State Park', 0, '27.17764', '-82.45865'), ('Osprey', 0, '27.19604', '-82.47995'), ('Sarasota', 0, '27.33614', '-82.54655'), ('Siesta Key', 0, '27.27714', '-82.56645'), ('South Venice', 0, '27.04264', '-82.41425'), ('Turtle Beach', 0, '27.21944', '-82.51715'), ('Vamo', 0, '27.22864', '-82.49645'), ('Venice', 0, '27.09794', '-82.45575'), ('Venice Gardens', 0, '27.06904', '-82.40495'), ('Warm Mineral Springs', 0, '27.04854', '-82.27025')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ162': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Charlotte County Airport', 0, '26.91674', '-81.98325'), ('Charlotte Harbor', 0, '26.96474', '-82.06245'), ('Charlotte Park', 0, '26.90404', '-82.04915'), ('Cleveland', 0, '26.95214', '-81.99115'), ('El Jobean', 0, '26.96894', '-82.21005'), ('Grove City', 0, '26.91394', '-82.32715'), ('Gulf Cove', 0, '26.95544', '-82.24135'), ('Harbour Heights', 0, '26.99254', '-82.00785'), ('Murdock', 0, '27.01294', '-82.14625'), ('Palm Island', 0, '26.88894', '-82.33495'), ('Pirate Harbor', 0, '26.80224', '-82.04115'), ('Placida', 0, '26.84744', '-82.23725'), ('Port Charlotte', 0, '26.97584', '-82.09795'), ('Punta Gorda', 0, '26.93004', '-82.05695'), ('Rotonda', 0, '26.89244', '-82.27295'), ('Solana', 0, '26.93914', '-82.02835'), ('Tropical Gulf Acres', 0, '26.84284', '-81.99085')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLZ162': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Charlotte County Airport', 0, '26.91674', '-81.98325'), ('Charlotte Harbor', 0, '26.96474', '-82.06245'), ('Charlotte Park', 0, '26.90404', '-82.04915'), ('Cleveland', 0, '26.95214', '-81.99115'), ('El Jobean', 0, '26.96894', '-82.21005'), ('Grove City', 0, '26.91394', '-82.32715'), ('Gulf Cove', 0, '26.95544', '-82.24135'), ('Harbour Heights', 0, '26.99254', '-82.00785'), ('Murdock', 0, '27.01294', '-82.14625'), ('Palm Island', 0, '26.88894', '-82.33495'), ('Pirate Harbor', 0, '26.80224', '-82.04115'), ('Placida', 0, '26.84744', '-82.23725'), ('Port Charlotte', 0, '26.97584', '-82.09795'), ('Punta Gorda', 0, '26.93004', '-82.05695'), ('Rotonda', 0, '26.89244', '-82.27295'), ('Solana', 0, '26.93914', '-82.02835'), ('Tropical Gulf Acres', 0, '26.84284', '-81.99085')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLZ165': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bokeelia', 0, '26.70404', '-82.16995'), ('Bonita Springs', 0, '26.34094', '-81.78505'), ('Burnt Store Marina', 0, '26.75004', '-82.05095'), ('Cape Coral', 0, '26.57504', '-81.98495'), ('Captiva', 0, '26.52004', '-82.18995'), ('Estero', 0, '26.47604', '-81.81515'), ('Fort Myers Beach', 0, '26.45004', '-81.94595'), ('Pine Island', 0, '26.61004', '-82.11995'), ('Punta Rassa', 0, '26.48754', '-82.01245'), ('Saint James City', 0, '26.49974', '-82.08085'), ('Sanibel', 0, '26.44394', '-82.10085')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLZ165': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bokeelia', 0, '26.70404', '-82.16995'), ('Bonita Springs', 0, '26.34094', '-81.78505'), ('Burnt Store Marina', 0, '26.75004', '-82.05095'), ('Cape Coral', 0, '26.57504', '-81.98495'), ('Captiva', 0, '26.52004', '-82.18995'), ('Estero', 0, '26.47604', '-81.81515'), ('Fort Myers Beach', 0, '26.45004', '-81.94595'), ('Pine Island', 0, '26.61004', '-82.11995'), ('Punta Rassa', 0, '26.48754', '-82.01245'), ('Saint James City', 0, '26.49974', '-82.08085'), ('Sanibel', 0, '26.44394', '-82.10085')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLZ168': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Boca Raton', 74764, '26.36000', '-80.10000'), ('Juno Beach', 3262, '26.88000', '-80.05500'), ('Jupiter', 39328, '26.93000', '-80.10000'), ('Ocean Ridge', 1636, '26.53000', '-80.05000'), ('Palm Beach', 10468, '26.70000', '-80.04000'), ('Riviera Beach', 29884, '26.78000', '-80.08000'), ('Tequesta', 5273, '26.96000', '-80.09000'), ('West Palm Beach', 82103, '26.71000', '-80.06000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ172': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Dania Beach', 13940, '26.06000', '-80.14000'), ('Deerfield Beach', 64583, '26.31000', '-80.10000'), ('Fort Lauderdale', 152397, '26.12000', '-80.15000'), ('Hallandale', 34282, '25.99000', '-80.14000'), ('Lighthouse Point', 2163, '26.28000', '-80.08500'), ('Oakland Park', 30966, '26.17000', '-80.14000'), ('Pompano Beach', 78191, '26.23000', '-80.12000'), ('Wilton Manors', 12697, '26.16000', '-80.13000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ173': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Aventura', 25267, '25.96000', '-80.14000'), ('Key Biscayne', 10507, '25.69000', '-80.16000'), ('Miami', 362470, '25.77000', '-80.20000'), ('Miami Beach', 87933, '25.81000', '-80.13000'), ('Miami Shores', 10380, '25.86500', '-80.19000'), ('North Miami', 59880, '25.89400', '-80.18000'), ('North Miami Beach', 40786, '25.93000', '-80.16000'), ('Perrine', 17390, '25.62000', '-80.31000'), ('Princeton', 10090, '25.52000', '-80.38000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ174': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Mahogany Hammock', 7843, '25.34000', '-80.84000'), ('Royal Palm Ranger', 7843, '25.39000', '-80.61000')], 'partOfState': 'southeast', 'wfo': 'MFL'}, +'FLZ239': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Bronson', 0, '29.44884', '-82.63865'), ('Chiefland', 0, '29.47894', '-82.86135'), ('Fanning Springs', 0, '29.58374', '-82.93045'), ('Lebanon', 0, '29.17004', '-82.63995'), ('Manatee Springs State Park', 0, '29.49924', '-82.96855'), ('Otter Creek', 0, '29.32404', '-82.77335'), ('Williston', 0, '29.37044', '-82.45695'), ('Williston Municipal Airport', 0, '29.35574', '-82.47165')], 'partOfState': 'northern', 'wfo': 'TBW'}, +'FLZ242': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Arbor Lakes', 0, '28.92544', '-82.36775'), ('Beverly Hills', 0, '28.91234', '-82.46445'), ('Brent Wood', 0, '28.90354', '-82.46565'), ('Citronelle', 0, '28.97804', '-82.56495'), ('Citrus Hills', 0, '28.88814', '-82.43275'), ('Citrus Springs', 0, '28.99664', '-82.47465'), ('Crystal Manor', 0, '29.00004', '-82.62135'), ('Crystal Oaks', 0, '28.86514', '-82.52255'), ('Crystal River Airport', 0, '28.86794', '-82.57395'), ('Floral City', 0, '28.74144', '-82.29145'), ('Gospel Island', 0, '28.85144', '-82.31165'), ('Green Acres', 0, '28.79194', '-82.54715'), ('Heatherwood', 0, '28.73184', '-82.36795'), ('Hernando', 0, '28.90734', '-82.37455'), ('Homosassa Springs', 0, '28.79724', '-82.54825'), ('Inverness', 0, '28.83914', '-82.34345'), ('Inverness Airport', 0, '28.80364', '-82.31815'), ('Inverness Highlands', 0, '28.79954', '-82.33045'), ('Lecanto', 0, '28.85804', '-82.48575'), ('Leisure Acres', 0, '28.78874', '-82.50105'), ('Pine Ridge', 0, '28.92514', '-82.53815'), ('River Lakes Manor', 0, '28.95354', '-82.37065'), ('Stokes Ferry', 0, '28.98754', '-82.35025'), ('Suburban Acres', 0, '28.69214', '-82.33095'), ('Sugarmill Woods', 0, '28.73294', '-82.50545'), ('Withlapopka Isle', 0, '28.79124', '-82.25365')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ248': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Brookridge', 0, '28.54874', '-82.49035'), ('Brooksville', 0, '28.55444', '-82.39295'), ('Croom', 0, '28.59004', '-82.23995'), ('Garden Grove', 0, '28.48134', '-82.43285'), ('Hernando County Airport', 0, '28.47364', '-82.45535'), ('High Point', 0, '28.54424', '-82.52645'), ('Lake Lindsey', 0, '28.63364', '-82.36225'), ('Masaryktown', 0, '28.43444', '-82.46115'), ('Nobleton', 0, '28.64504', '-82.25995'), ('Ridge Manor', 0, '28.50304', '-82.18405'), ('Royal Highlands', 0, '28.64004', '-82.52995'), ('Spring Hill', 0, '28.44504', '-82.56185')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ249': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Blanton', 0, '28.41160', '-82.24540'), ('Crystal Springs', 0, '28.18150', '-82.15800'), ('Dade City', 0, '28.36154', '-82.19545'), ('Dade City North', 0, '28.38334', '-82.19305'), ('Darby', 0, '28.37004', '-82.34995'), ('Gowers Corner', 0, '28.32130', '-82.50320'), ('Jay B Starkey Wilderness Park', 0, '28.24604', '-82.58945'), ('Lacoochee', 0, '28.46504', '-82.16915'), ('Land O Lakes', 0, '28.22174', '-82.45375'), ('Meadow Pointe', 0, '28.17950', '-82.31040'), ('Moon Lake', 0, '28.30004', '-82.59995'), ('Odessa', 0, '28.20004', '-82.58995'), ('Richland', 0, '28.28300', '-82.14620'), ('Saint Leo', 0, '28.33704', '-82.25945'), ('San Antonio', 0, '28.33744', '-82.27895'), ('Shady Hills', 0, '28.41000', '-82.54370'), ('Wesley Chapel', 0, '28.23944', '-82.32805'), ('Zephyrhills', 0, '28.23604', '-82.17645'), ('Zephyrhills Municipal Airport', 0, '28.22814', '-82.15585')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ251': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alafia River State Park', 0, '27.77924', '-82.13205'), ('Bloomingdale', 0, '27.87724', '-82.25985'), ('Boyette', 0, '27.82004', '-82.23995'), ('Brandon', 0, '27.92944', '-82.29145'), ('Cheval', 0, '28.14844', '-82.51405'), ('Dover', 0, '27.99294', '-82.22045'), ('Fish Hawk', 0, '27.85054', '-82.21045'), ('Fort Lonesome', 0, '27.70004', '-82.13995'), ('Hillsborough River State Park', 0, '28.14384', '-82.23145'), ('Lake Fern', 0, '28.14944', '-82.57965'), ('Lettuce Lake Park', 0, '28.07164', '-82.37605'), ('Lithia Springs State Park', 0, '27.86514', '-82.22735'), ('Little Manatee River State Park', 0, '27.67394', '-82.37145'), ('Lutz', 0, '28.13874', '-82.46305'), ('Mango', 0, '27.99094', '-82.30745'), ('New Tampa', 0, '28.12004', '-82.36995'), ('Plant City', 0, '28.00584', '-82.12845'), ('Plant City Airport', 0, '28.00014', '-82.16325'), ('Riverview', 0, '27.87054', '-82.31665'), ('Seffner', 0, '27.99764', '-82.27485'), ('Sun City Center', 0, '27.72144', '-82.35195'), ('Tampa Executive Airport', 0, '28.01094', '-82.34355'), ('Thonotosassa', 0, '28.07224', '-82.30285'), ('Valrico', 0, '27.94804', '-82.25595'), ('Wimauma', 0, '27.71314', '-82.30655')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ251': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alafia River State Park', 0, '27.77924', '-82.13205'), ('Bloomingdale', 0, '27.87724', '-82.25985'), ('Boyette', 0, '27.82004', '-82.23995'), ('Brandon', 0, '27.92944', '-82.29145'), ('Cheval', 0, '28.14844', '-82.51405'), ('Dover', 0, '27.99294', '-82.22045'), ('Fish Hawk', 0, '27.85054', '-82.21045'), ('Fort Lonesome', 0, '27.70004', '-82.13995'), ('Hillsborough River State Park', 0, '28.14384', '-82.23145'), ('Lake Fern', 0, '28.14944', '-82.57965'), ('Lettuce Lake Park', 0, '28.07164', '-82.37605'), ('Lithia Springs State Park', 0, '27.86514', '-82.22735'), ('Little Manatee River State Park', 0, '27.67394', '-82.37145'), ('Lutz', 0, '28.13874', '-82.46305'), ('Mango', 0, '27.99094', '-82.30745'), ('New Tampa', 0, '28.12004', '-82.36995'), ('Plant City', 0, '28.00584', '-82.12845'), ('Plant City Airport', 0, '28.00014', '-82.16325'), ('Riverview', 0, '27.87054', '-82.31665'), ('Seffner', 0, '27.99764', '-82.27485'), ('Sun City Center', 0, '27.72144', '-82.35195'), ('Tampa Executive Airport', 0, '28.01094', '-82.34355'), ('Thonotosassa', 0, '28.07224', '-82.30285'), ('Valrico', 0, '27.94804', '-82.25595'), ('Wimauma', 0, '27.71314', '-82.30655')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ255': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Duette', 0, '27.59004', '-82.12295'), ('Lake Manatee State Park', 0, '27.47904', '-82.33595'), ('Lakewood Ranch', 0, '27.39494', '-82.43765'), ('Myakka City', 0, '27.35014', '-82.16265'), ('Myakka Head', 0, '27.47004', '-82.07995'), ('Parrish', 0, '27.58784', '-82.42685')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ255': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Duette', 0, '27.59004', '-82.12295'), ('Lake Manatee State Park', 0, '27.47904', '-82.33595'), ('Lakewood Ranch', 0, '27.39494', '-82.43765'), ('Myakka City', 0, '27.35014', '-82.16265'), ('Myakka Head', 0, '27.47004', '-82.07995'), ('Parrish', 0, '27.58784', '-82.42685')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ260': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Gator Creek Estate', 0, '27.26004', '-82.37995'), ('Hidden River', 0, '27.28004', '-82.26995'), ('Myakka River State Park', 0, '27.24304', '-82.31595'), ('North Port', 0, '27.04964', '-82.19485')], 'partOfState': 'west central', 'wfo': 'TBW'}, +'FLZ262': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Babcock Ranch', 0, '26.94664', '-81.76155'), ('Babcock Webb Wma', 0, '26.88434', '-81.82455')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLZ262': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Babcock Ranch', 0, '26.94664', '-81.76155'), ('Babcock Webb Wma', 0, '26.88434', '-81.82455')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLZ265': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alva', 0, '26.71514', '-81.61105'), ('Fort Myers', 0, '26.63064', '-81.85055'), ('Fort Myers Shores', 0, '26.71354', '-81.73865'), ('Fort Myers Villas', 0, '26.55004', '-81.86895'), ('Gateway', 0, '26.57474', '-81.75425'), ('Lehigh Acres', 0, '26.60294', '-81.63305'), ('North Fort Myers', 0, '26.70564', '-81.89275'), ('Page Field Airport', 0, '26.58664', '-81.86325'), ('Page Park', 0, '26.57384', '-81.86995'), ('Southwest Florida Airport', 0, '26.53624', '-81.75515'), ('Suncoast Estates', 0, '26.71124', '-81.86925'), ('Tice', 0, '26.67454', '-81.81775'), ('Whiskey Creek', 0, '26.57224', '-81.89035')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'FLZ265': {'fullStateName': 'Florida', 'state': 'FL', 'cities': [('Alva', 0, '26.71514', '-81.61105'), ('Fort Myers', 0, '26.63064', '-81.85055'), ('Fort Myers Shores', 0, '26.71354', '-81.73865'), ('Fort Myers Villas', 0, '26.55004', '-81.86895'), ('Gateway', 0, '26.57474', '-81.75425'), ('Lehigh Acres', 0, '26.60294', '-81.63305'), ('North Fort Myers', 0, '26.70564', '-81.89275'), ('Page Field Airport', 0, '26.58664', '-81.86325'), ('Page Park', 0, '26.57384', '-81.86995'), ('Southwest Florida Airport', 0, '26.53624', '-81.75515'), ('Suncoast Estates', 0, '26.71124', '-81.86925'), ('Tice', 0, '26.67454', '-81.81775'), ('Whiskey Creek', 0, '26.57224', '-81.89035')], 'partOfState': 'southwest', 'wfo': 'TBW'}, +'GAZ001': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cloudland Canyon State Park', 0, '34.82679', '-85.47866'), ('Cole City', 0, '34.97674', '-85.56447'), ('Hooker', 0, '34.97897', '-85.43370'), ('Morganville', 0, '34.93851', '-85.45350'), ('New England', 0, '34.90685', '-85.48447'), ('Rising Fawn', 0, '34.76000', '-85.53113'), ('Stephensville', 0, '34.88508', '-85.54880'), ('Trenton', 0, '34.87222', '-85.50938'), ('Wildwood', 0, '34.96577', '-85.41366')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ002': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cedar Grove', 0, '34.71722', '-85.43036'), ('Center Post', 0, '34.60723', '-85.35337'), ('Chattanooga Valley', 0, '34.92467', '-85.34797'), ('Chickamauga', 0, '34.87111', '-85.29084'), ('Cooper Heights', 0, '34.80722', '-85.38930'), ('Fairview', 0, '34.94558', '-85.28445'), ('Lafayette', 0, '34.70524', '-85.28194'), ('Linwood', 0, '34.71278', '-85.28917'), ('Lookout Mountain', 0, '34.97756', '-85.35781'), ('Naomi', 0, '34.69304', '-85.20783'), ('Noble', 0, '34.78381', '-85.25312'), ('Rock Spring', 0, '34.82012', '-85.24090'), ('Rossville', 0, '34.98307', '-85.28612'), ('Suttles Mill', 0, '34.62322', '-85.18119'), ('Villanow', 0, '34.67380', '-85.11462')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ003': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Beaumont', 0, '34.83787', '-85.19202'), ('Blue Spring', 0, '34.87428', '-85.22679'), ('Boynton', 0, '34.92311', '-85.18631'), ('Fort Oglethorpe', 0, '34.94861', '-85.25892'), ('Graysville', 0, '34.97664', '-85.14202'), ('Indian Springs', 0, '34.95979', '-85.16584'), ('Lakeview', 0, '34.98020', '-85.26046'), ('Ringgold', 0, '34.91569', '-85.10938'), ('Salem', 0, '34.96427', '-85.03067'), ('Wood Station', 0, '34.80554', '-85.14870')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ004': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Beaverdale', 0, '34.92033', '-84.84508'), ('Cohutta', 0, '34.95934', '-84.95324'), ('Dalton', 0, '34.76974', '-84.97030'), ('Dawnville', 0, '34.81903', '-84.87920'), ('Mill Creek', 0, '34.73257', '-85.04205'), ('Rocky Face', 0, '34.80478', '-85.02631'), ('Tilton', 0, '34.66546', '-84.94010'), ('Tunnel Hill', 0, '34.84462', '-85.04361'), ('Varnell', 0, '34.90080', '-84.97398')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ005': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Carters', 0, '34.60946', '-84.69224'), ('Chatsworth', 0, '34.76609', '-84.76966'), ('Cisco', 0, '34.95112', '-84.73699'), ('Conasauga Lake', 0, '34.86066', '-84.64998'), ('Crandall', 0, '34.86750', '-84.74371'), ('Eton', 0, '34.82446', '-84.76320'), ('Fort Mountain State Park', 0, '34.75782', '-84.70728'), ('Gregory', 0, '34.95650', '-84.77406'), ('North Georgia Speedway', 0, '34.69201', '-84.82965'), ('Ramhurst', 0, '34.69722', '-84.73549'), ('Sumac', 0, '34.88366', '-84.79924'), ('Tennga', 0, '34.98552', '-84.73834')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ006': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blue Ridge', 0, '34.86432', '-84.32477'), ('Cohutta Wilderness', 0, '34.97800', '-84.59000'), ('Colwell', 0, '34.89786', '-84.46909'), ('Dial', 0, '34.75955', '-84.21681'), ('Epworth', 0, '34.95050', '-84.38504'), ('Hemp', 0, '34.88328', '-84.17155'), ('Higdon', 0, '34.89635', '-84.43832'), ('Hurst', 0, '34.84125', '-84.18987'), ('Jones Mill', 0, '34.90600', '-84.52287'), ('Loving', 0, '34.91678', '-84.21585'), ('Margret', 0, '34.75130', '-84.14679'), ('McCaysville-Copperhill', 0, '34.98723', '-84.37080'), ('Mineral Bluff', 0, '34.91447', '-84.27685'), ('Morganton', 0, '34.87496', '-84.24421'), ('Springer Mountain Shelter', 0, '34.62915', '-84.19306'), ('Stover Creek Shelter', 0, '34.64945', '-84.19985')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ007': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Black Gap Shelter', 0, '34.61755', '-84.19881'), ('Cartecay', 0, '34.62688', '-84.38390'), ('Cherry Log', 0, '34.78580', '-84.38774'), ('East Ellijay', 0, '34.68507', '-84.47332'), ('Ellijay', 0, '34.69503', '-84.48274'), ('Marion', 0, '34.63540', '-84.25905'), ('Mountaintown', 0, '34.75578', '-84.55974'), ('Pisgah', 0, '34.70806', '-84.29483'), ('Roundtop', 0, '34.60459', '-84.56554'), ('Roy', 0, '34.65134', '-84.35106'), ('Tails Creek', 0, '34.68980', '-84.61571'), ('Talona', 0, '34.59803', '-84.51132')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ008': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blairsville', 0, '34.87615', '-83.95844'), ('Blood Mountain Shelter', 0, '34.73996', '-83.93754'), ('Gaddistown', 0, '34.70564', '-84.07784'), ('Gooch Mountain Shelter', 0, '34.65320', '-84.03430'), ('Hawk Mountain Shelter', 0, '34.66583', '-84.13643'), ('Ivy Log', 0, '34.96223', '-84.05894'), ('Jones Creek', 0, '34.84495', '-84.10105'), ('Nottely Dam', 0, '34.95799', '-84.08775'), ('Owltown', 0, '34.81406', '-83.93962'), ('Suches', 0, '34.68891', '-84.02222'), ('Track Rock', 0, '34.85971', '-83.87424'), ('Vogel State Park', 0, '34.76645', '-83.92301'), ('Woods Hole Shelter', 0, '34.73713', '-83.95502')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ009': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alexanders Mill', 0, '34.97398', '-83.88191'), ('Blue Mountain Shelter', 0, '34.81711', '-83.76681'), ('Brasstown Bald', 0, '34.87424', '-83.81090'), ('Gumlog', 0, '34.96704', '-83.93629'), ('Hiawassee', 0, '34.94881', '-83.75643'), ('Macedonia', 0, '34.91152', '-83.72702'), ('Mountain Scene', 0, '34.85730', '-83.72228'), ('Plum Orchard Gap Shelter', 0, '34.94604', '-83.58830'), ('Tate City', 0, '34.97373', '-83.55460'), ('Titus', 0, '34.94773', '-83.63125'), ('Young Harris', 0, '34.93321', '-83.84704')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ010': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Clayton', 2019, '34.87740', '-83.40090'), ('Dillard', 198, '34.97250', '-83.38560'), ('Lakemont', 316, '34.78190', '-83.41640'), ('Moccasin Creek State Park', 316, '34.84580', '-83.58750'), ('Mountain City', 829, '34.91880', '-83.38600'), ('Pine Mountain', 948, '34.94030', '-83.18720'), ('Sky Valley', 221, '34.98330', '-83.33220'), ('Tiger', 316, '34.84550', '-83.43340')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAZ011': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Berryton', 0, '34.45020', '-85.38697'), ('Chattoogaville', 0, '34.34586', '-85.44657'), ('Cloudland', 0, '34.51787', '-85.48969'), ('Holland', 0, '34.35237', '-85.37286'), ('James H. Floyd State Park', 0, '34.43947', '-85.34080'), ('Lyerly', 0, '34.40442', '-85.40599'), ('Menlo', 0, '34.48471', '-85.47624'), ('Subligna', 0, '34.56019', '-85.18803'), ('Summerville', 0, '34.48062', '-85.34781'), ('Tidings', 0, '34.43614', '-85.24860'), ('Trion', 0, '34.54306', '-85.31060')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ012': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Audubon', 0, '34.56645', '-84.81963'), ('Calhoun', 0, '34.50250', '-84.95112'), ('Fairmount', 0, '34.43629', '-84.70003'), ('Nickelsville', 0, '34.60164', '-84.86664'), ('Oakman', 0, '34.56614', '-84.70824'), ('Oostanaula', 0, '34.48139', '-85.01478'), ('Plainville', 0, '34.40491', '-85.03694'), ('Ranger', 0, '34.50112', '-84.70973'), ('Redbud', 0, '34.53311', '-84.81929'), ('Resaca', 0, '34.58020', '-84.94339'), ('Sonoraville', 0, '34.44834', '-84.82818'), ('Sugar Valley', 0, '34.55734', '-85.01176')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ013': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blaine', 0, '34.51085', '-84.55771'), ('Hinton', 0, '34.48079', '-84.58428'), ('Jasper', 0, '34.46867', '-84.42770'), ('Lake Tamarack', 0, '34.49008', '-84.37191'), ('Marblehill', 0, '34.43088', '-84.33797'), ('Nelson', 0, '34.38159', '-84.37174'), ('Sequoyah Lake', 0, '34.54518', '-84.36626'), ('Talking Rock', 0, '34.51008', '-84.50596'), ('Talmadge', 0, '34.42404', '-84.55807'), ('Tate', 0, '34.41843', '-84.38269')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ014': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amicalola Falls State Park', 0, '34.56591', '-84.24213'), ('Dawsonville', 0, '34.42133', '-84.11912'), ('Dougherty', 0, '34.38160', '-84.06572'), ('Fausett Lake', 0, '34.52840', '-84.27889'), ('Juno', 0, '34.47590', '-84.19524'), ('Len Foote Hike Inn', 0, '34.59207', '-84.20828'), ('Lumpkin', 0, '34.36354', '-84.03667'), ('McKee', 0, '34.45966', '-84.14169'), ('Silver City', 0, '34.33449', '-84.11503'), ('War Hill Park', 0, '34.33486', '-83.96547')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ015': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Auraria', 0, '34.46987', '-84.02284'), ('Camp Merrill', 0, '34.62765', '-84.10427'), ('Dahlonega', 0, '34.53369', '-83.98492'), ('Garland', 0, '34.51520', '-83.90150'), ('Nimblewill', 0, '34.56349', '-84.14056'), ('Porter Springs', 0, '34.62916', '-83.94963'), ('Turners Corner', 0, '34.66313', '-83.90106')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ016': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Anna Ruby Falls', 0, '34.75743', '-83.71037'), ('Camp Coleman Lake', 0, '34.66366', '-83.86322'), ('Cleveland', 0, '34.59713', '-83.76326'), ('Helen', 0, '34.70112', '-83.72977'), ('Leaf', 0, '34.57478', '-83.66079'), ('Low Gap Shelter', 0, '34.77617', '-83.82465'), ('Mossy Creek', 0, '34.54344', '-83.68769'), ('Qualatchee Lake', 0, '34.65110', '-83.80157'), ('Robertstown', 0, '34.71252', '-83.74206'), ('Sautee', 0, '34.68450', '-83.67936'), ('Smithgall Woods Conservation Are', 0, '34.68911', '-83.76629'), ('Unicoi State Park', 0, '34.72293', '-83.72311'), ('Whitley Gap Shelter', 0, '34.71239', '-83.83438')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ017': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baldwin', 2425, '34.49210', '-83.55000'), ('Batesville', 430, '34.74810', '-83.61140'), ('Clarkesville', 1248, '34.60950', '-83.52280'), ('Cornelia', 3674, '34.51240', '-83.52940'), ('Demorest', 1465, '34.56550', '-83.54540'), ('Hollywood', 1248, '34.64940', '-83.44750'), ('Mount Airy', 604, '34.51940', '-83.50330'), ('Tallulah Falls', 164, '34.72390', '-83.38250'), ('Turnerville', 164, '34.68670', '-83.42610')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAZ018': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Avalon', 278, '34.50150', '-83.19440'), ('Boydville', 9323, '34.54000', '-83.36640'), ('Eastanolee', 278, '34.52030', '-83.25560'), ('Martin', 311, '34.48510', '-83.18640'), ('Toccoa', 9323, '34.57990', '-83.32470')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAZ019': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Armuchee', 0, '34.38967', '-85.18287'), ('Cave Spring', 0, '34.10788', '-85.33660'), ('Coosa', 0, '34.26157', '-85.33105'), ('Everett Springs', 0, '34.49569', '-85.11379'), ('Lake Marvin', 0, '34.56660', '-85.08221'), ('Lindale', 0, '34.18671', '-85.17473'), ('Pinson', 0, '34.36215', '-85.06032'), ('Rome', 0, '34.25986', '-85.18503'), ('Shannon', 0, '34.33731', '-85.07151')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ020': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adairsville', 0, '34.36826', '-84.93469'), ('Cartersville', 0, '34.16508', '-84.79969'), ('Cassville', 0, '34.24327', '-84.85426'), ('Emerson', 0, '34.12675', '-84.75620'), ('Euharlee', 0, '34.14549', '-84.93311'), ('Folsom', 0, '34.38256', '-84.82788'), ('Funkhouser', 0, '34.38008', '-84.70922'), ('George Washington Carver St Pk', 0, '34.13782', '-84.66287'), ('Kingston', 0, '34.23748', '-84.94519'), ('Pine Log', 0, '34.34209', '-84.73457'), ('Red Top Mountain State Park', 0, '34.15437', '-84.70263'), ('Stilesboro', 0, '34.10468', '-84.91704'), ('Taylorsville', 0, '34.08621', '-84.98767'), ('White', 0, '34.28278', '-84.74528')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ021': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ball Ground', 0, '34.33811', '-84.37676'), ('Bridgemill', 0, '34.18032', '-84.55203'), ('Buffington', 0, '34.24144', '-84.42127'), ('Canton', 0, '34.23709', '-84.49112'), ('Free Home', 0, '34.23848', '-84.28857'), ('Hickory Flat', 0, '34.17653', '-84.42033'), ('Hobgood Park', 0, '34.13037', '-84.58522'), ('Holbrook', 0, '34.21248', '-84.27112'), ('Hollis Lathem Reservoir', 0, '34.37443', '-84.25783'), ('Holly Springs', 0, '34.17375', '-84.50127'), ('Kellogg Creek', 0, '34.12273', '-84.61568'), ('Lake Arrowhead', 0, '34.28843', '-84.59347'), ('Lathemtown', 0, '34.24757', '-84.30603'), ('Lebanon', 0, '34.14232', '-84.50951'), ('Little River Landing', 0, '34.16370', '-84.58040'), ('Oak Grove', 0, '34.09608', '-84.61280'), ('Reavis Mountain', 0, '34.37208', '-84.32740'), ('Salacoa Valley', 0, '34.37887', '-84.58960'), ('Sutallee', 0, '34.21968', '-84.61128'), ('Union Hill', 0, '34.19478', '-84.38190'), ('Waleska', 0, '34.31670', '-84.55306'), ('Woodstock', 0, '34.10130', '-84.51941')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ022': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brookwood', 0, '34.09471', '-84.17654'), ('Chestatee', 0, '34.29415', '-83.99948'), ('Coal Mountain', 0, '34.27159', '-84.10078'), ('Cumming', 0, '34.20690', '-84.14038'), ('Drew', 0, '34.20831', '-84.21577'), ('Ducktown', 0, '34.23834', '-84.23424'), ('Hightower', 0, '34.30617', '-84.21377'), ('Matt', 0, '34.29895', '-84.15331'), ('Oscarville', 0, '34.24933', '-83.97480')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ023': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aqualand Park', 0, '34.20369', '-83.96538'), ('Candler', 0, '34.21139', '-83.78142'), ('Chestnut Mountain', 0, '34.17320', '-83.83820'), ('Clermont', 0, '34.47758', '-83.77364'), ('Flowery Branch', 0, '34.18508', '-83.92651'), ('Gainesville', 0, '34.29930', '-83.82731'), ('Gillsville', 0, '34.30883', '-83.63555'), ('Lake Lanier Islands', 0, '34.17643', '-84.02526'), ('Lula', 0, '34.38879', '-83.66457'), ('Murrayville', 0, '34.41923', '-83.90569'), ('Oakwood', 0, '34.22860', '-83.88310'), ('Road Atlanta-Lanier Speedway', 0, '34.15119', '-83.81277')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ024': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alto', 0, '34.46627', '-83.57308'), ('Banks Crossing', 0, '34.25484', '-83.46298'), ('Five Points', 0, '34.24106', '-83.39050'), ('Hollingsworth', 0, '34.43905', '-83.50688'), ('Homer', 0, '34.33392', '-83.49880'), ('Pinefield Crossroads', 0, '34.42163', '-83.44096')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ025': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Apple Valley', 0, '34.15885', '-83.50941'), ('Arcade', 0, '34.07788', '-83.56224'), ('Bear Creek Reservoir', 0, '33.98311', '-83.51575'), ('Braselton', 0, '34.10918', '-83.76272'), ('Center', 0, '34.05498', '-83.41861'), ('Commerce', 0, '34.20371', '-83.45720'), ('Hoschton', 0, '34.09660', '-83.76141'), ('Jefferson', 0, '34.11738', '-83.57324'), ('Maysville', 0, '34.25289', '-83.56154'), ('Nicholson', 0, '34.11302', '-83.43147'), ('Peach State Speedway', 0, '34.16668', '-83.55230'), ('Pendergrass', 0, '34.16211', '-83.67829'), ('Talmo', 0, '34.18487', '-83.72043')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ026': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Canon', 755, '34.34620', '-83.11070'), ('Carnesville', 541, '34.36720', '-83.23330'), ('Franklin Springs', 762, '34.28350', '-83.14630'), ('Lavonia', 1827, '34.43600', '-83.10640'), ('Royston', 2493, '34.28550', '-83.10940'), ('Whitworth', 2025, '34.48390', '-83.09500')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAZ027': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Carlton', 0, '34.04287', '-83.03387'), ('Colbert', 0, '34.03820', '-83.21261'), ('Comer', 0, '34.06388', '-83.12552'), ('Danielsville', 0, '34.12462', '-83.22129'), ('Diamond Hill', 0, '34.06300', '-83.27776'), ('Harrison', 0, '34.22577', '-83.12070'), ('Hull', 0, '34.01459', '-83.29380'), ('Ila', 0, '34.17263', '-83.29212'), ('Neese', 0, '34.07739', '-83.31584'), ('Paoli', 0, '34.09197', '-83.09159'), ('Pocataligo', 0, '34.20022', '-83.28426'), ('Sanford', 0, '34.07856', '-83.34866'), ('Watson Mill Bridge State Park', 0, '34.02739', '-83.07477')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ028': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bowersville', 334, '34.37220', '-83.08330'), ('Hartwell', 4188, '34.35370', '-82.93200'), ('Nuberg', 4188, '34.26440', '-82.89500'), ('Reed Creek', 2148, '34.43660', '-82.91510'), ('Vanna', 898, '34.24140', '-83.07170')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAZ029': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bowman', 898, '34.20340', '-83.02890'), ('Dewy Rose', 898, '34.16970', '-82.95310'), ('Elberton', 4743, '34.10550', '-82.86400'), ('Fortsonia', 4743, '34.01500', '-82.77920'), ('Middleton', 4743, '34.09920', '-82.76750'), ('Ruckersville', 4743, '34.16470', '-82.78830')], 'partOfState': 'northeast', 'wfo': 'GSP'}, +'GAZ030': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Antioch', 0, '33.95297', '-85.16251'), ('Aragon', 0, '34.04412', '-85.05634'), ('Cedartown', 0, '34.01118', '-85.25493'), ('Esom Hill', 0, '33.94917', '-85.38818'), ('Etna', 0, '34.00513', '-85.40192'), ('Fish Creek', 0, '34.01008', '-85.13214'), ('Rockmart', 0, '34.00298', '-85.04154'), ('Seney', 0, '34.08423', '-85.12108'), ('Van Wert', 0, '33.98774', '-85.04309')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ031': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Braswell', 0, '33.98960', '-84.96193'), ('Brownsville', 0, '33.79965', '-84.75767'), ('Burnt Hickory Ridge', 0, '34.02493', '-84.85054'), ('Cross Roads', 0, '34.01023', '-84.75520'), ('Dallas', 0, '33.92446', '-84.84128'), ('Hiram', 0, '33.87549', '-84.76139'), ('New Georgia', 0, '33.80875', '-84.88984'), ('New Hope', 0, '33.95865', '-84.78910'), ('Union', 0, '33.84322', '-84.98116'), ('Yorkville', 0, '33.92566', '-84.99609')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ032': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Acworth', 0, '34.06594', '-84.67658'), ('Austell', 0, '33.81279', '-84.63462'), ('Dobbins Air Reserve Base', 0, '33.91548', '-84.51628'), ('Due West', 0, '33.96884', '-84.66599'), ('Jim R Miller Park', 0, '33.89822', '-84.59061'), ('Kennesaw', 0, '34.02349', '-84.61525'), ('Kennesaw State University', 0, '34.03822', '-84.58177'), ('Lost Mountain Park', 0, '33.94026', '-84.69264'), ('Mableton', 0, '33.81886', '-84.58245'), ('Marietta', 0, '33.95274', '-84.54960'), ('Mount Bethel', 0, '33.96646', '-84.41189'), ('Powder Springs', 0, '33.85960', '-84.68445'), ('Sandy Plains', 0, '34.01306', '-84.49567'), ('Six Flags Over Georgia', 0, '33.76778', '-84.55124'), ('Smyrna', 0, '33.88399', '-84.51410'), ('Sweat Mountain', 0, '34.06696', '-84.45548'), ('Vinings', 0, '33.86525', '-84.46538'), ('White Water Park', 0, '33.95773', '-84.51984')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ033': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alpharetta', 0, '34.07562', '-84.29455'), ('Atlanta', 0, '33.74884', '-84.39035'), ('Atlantic Station', 0, '33.79259', '-84.39624'), ('Bankhead', 0, '33.77672', '-84.44984'), ('Birmingham', 0, '34.16652', '-84.33357'), ('Bolton', 0, '33.81738', '-84.45490'), ('Buckhead', 0, '33.83941', '-84.37988'), ('Cascade Heights', 0, '33.72246', '-84.46322'), ('Chastain Memorial Park', 0, '33.87628', '-84.39292'), ('Grant Park-Zoo Atlanta', 0, '33.73549', '-84.37122'), ('Johns Creek', 0, '34.04783', '-84.17742'), ('Lakewood Park', 0, '33.70250', '-84.39269'), ('Little Five Points', 0, '33.76497', '-84.34921'), ('Midtown', 0, '33.78154', '-84.39112'), ('Milton', 0, '34.13230', '-84.30073'), ('Mountain Park', 0, '34.08150', '-84.41216'), ('Piedmont Park', 0, '33.78784', '-84.37354'), ('Roswell', 0, '34.02321', '-84.36157'), ('Sandy Springs', 0, '33.93093', '-84.37937'), ('Sweet Auburn', 0, '33.75549', '-84.37429'), ('Turner Field', 0, '33.73520', '-84.38965'), ('Virginia Highland', 0, '33.78237', '-84.35433'), ('West End', 0, '33.74655', '-84.41459')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ034': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Berkeley Lake', 0, '33.98256', '-84.18372'), ('Buford', 0, '34.11918', '-84.00379'), ('Buford Dam-Lake Lanier Parks', 0, '34.15157', '-84.05956'), ('Centerville', 0, '33.80392', '-84.04307'), ('Dacula', 0, '33.98841', '-83.89566'), ('Duluth', 0, '34.00229', '-84.14385'), ('Grayson', 0, '33.89348', '-83.95560'), ('Harbin', 0, '33.94772', '-83.85598'), ('Hog Mountain', 0, '34.05062', '-83.92817'), ('Lawrenceville', 0, '33.95629', '-83.98836'), ('Lilburn', 0, '33.88978', '-84.14380'), ('Mechanicsville', 0, '33.92557', '-84.24817'), ('Mountain Park', 0, '33.84034', '-84.13111'), ('Norcross', 0, '33.93916', '-84.21118'), ('Pleasant Hill', 0, '33.94113', '-84.12238'), ('Rest Haven', 0, '34.13321', '-83.97646'), ('Rosebud', 0, '33.80800', '-83.96726'), ('Snellville', 0, '33.85756', '-84.01982'), ('Sugar Hill', 0, '34.10582', '-84.03031'), ('Suwanee', 0, '34.05493', '-84.06905')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ035': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Auburn', 0, '34.01318', '-83.82808'), ('Bethlehem', 0, '33.93205', '-83.71401'), ('Carl', 0, '34.00545', '-83.81150'), ('Chateau Elan', 0, '34.10024', '-83.81778'), ('County Line', 0, '34.04372', '-83.77668'), ('Fort Yargo State Park', 0, '33.96728', '-83.72750'), ('Russell', 0, '33.97948', '-83.69925'), ('Statham', 0, '33.96481', '-83.59676'), ('Thompsons Mill', 0, '34.11311', '-83.81887'), ('Winder', 0, '33.99243', '-83.72081')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ036': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Athens', 0, '33.95816', '-83.37715'), ('Barretts Mill', 0, '34.01239', '-83.36396'), ('Beechwood Hills', 0, '33.94039', '-83.41442'), ('James Holland Youth Sports Cmpx', 0, '34.00065', '-83.40462'), ('Oconee Heights', 0, '33.98945', '-83.42779'), ('Sandy Creek Recreation Area', 0, '34.02767', '-83.38178'), ('State Botanical Garden Of Ga', 0, '33.90140', '-83.38232'), ('Westgate Park', 0, '33.99980', '-83.45093'), ('Whitehall', 0, '33.90874', '-83.35380'), ('Winterville', 0, '33.96626', '-83.27946')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ037': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barnett Shoals', 0, '33.83902', '-83.31000'), ('Bishop', 0, '33.81969', '-83.43911'), ('Bogart', 0, '33.94860', '-83.53302'), ('Eastville', 0, '33.88117', '-83.50468'), ('Farmington', 0, '33.77586', '-83.42318'), ('North High Shoals', 0, '33.82482', '-83.50374'), ('Rose Hill', 0, '33.77749', '-83.31105'), ('Salem', 0, '33.72424', '-83.38626'), ('Watkinsville', 0, '33.86339', '-83.40932')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ038': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arnoldsville', 0, '33.90487', '-83.21714'), ('Crawford', 0, '33.88248', '-83.15584'), ('Dunlap', 0, '33.95448', '-83.25512'), ('Hutchings', 0, '33.84207', '-83.16753'), ('Lexington', 0, '33.86967', '-83.11167'), ('Maxeys', 0, '33.75520', '-83.17384'), ('Philomath', 0, '33.72701', '-82.99094'), ('Point Peter', 0, '33.99640', '-83.01291'), ('Sandy Cross', 0, '33.94340', '-83.06724'), ('Smithonia', 0, '34.00292', '-83.17618'), ('Stephens', 0, '33.79434', '-83.16108'), ('Vesta', 0, '33.95664', '-82.93960')], 'partOfState': 'northeast', 'wfo': 'FFC'}, +'GAZ039': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aonia', 0, '33.67582', '-82.62287'), ('Celeste', 0, '33.78322', '-82.84500'), ('Centerville', 0, '33.80125', '-82.92288'), ('Danburg', 0, '33.86801', '-82.65203'), ('Delhi', 0, '33.91365', '-82.67437'), ('Ficklin', 0, '33.63809', '-82.77718'), ('Floral Hill', 0, '33.83401', '-82.62497'), ('Holliday Park', 0, '33.67352', '-82.52377'), ('Jacksons Crossroads', 0, '33.89023', '-82.84514'), ('Lundberg', 0, '33.65408', '-82.73010'), ('Mallorysville', 0, '33.89600', '-82.77717'), ('Metasville', 0, '33.76536', '-82.60404'), ('Newtown', 0, '33.81195', '-82.81089'), ('Norman', 0, '33.94164', '-82.76828'), ('Rayle', 0, '33.78965', '-82.89996'), ('Rocky Creek Fire Dept.', 0, '33.64916', '-82.67748'), ('Tignall', 0, '33.86752', '-82.74136'), ('Tyrone', 0, '33.67237', '-82.86133'), ('Washington', 0, '33.73692', '-82.73926')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ040': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Lincolnton', 1595, '33.79180', '-82.47930')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAZ041': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bremen', 0, '33.72107', '-85.14589'), ('Buchanan', 0, '33.80219', '-85.18930'), ('Draketown', 0, '33.82673', '-85.04292'), ('Eubank Lake', 0, '33.89804', '-85.09015'), ('Felton', 0, '33.88774', '-85.22400'), ('Tallapoosa', 0, '33.74424', '-85.28810'), ('Waco', 0, '33.70295', '-85.18331')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ042': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abilene', 0, '33.64924', '-85.04980'), ('Blackjack Mountain', 0, '33.43651', '-85.26592'), ('Bowdon', 0, '33.53819', '-85.25333'), ('Bowdon Junction', 0, '33.66211', '-85.14759'), ('Byers Crossroads', 0, '33.52762', '-84.86264'), ('Carrollton', 0, '33.58005', '-85.07526'), ('Clem', 0, '33.53018', '-85.01121'), ('John Tanner State Park', 0, '33.60082', '-85.16725'), ('Lowell', 0, '33.46779', '-85.04620'), ('Mount Zion', 0, '33.63428', '-85.18668'), ('Roopville', 0, '33.45615', '-85.13119'), ('Seaton Lake', 0, '33.53554', '-84.94426'), ('Temple', 0, '33.73702', '-85.03227'), ('Treasure Lake', 0, '33.64204', '-84.92268'), ('Tyus', 0, '33.46775', '-85.20231'), ('Villa Rica', 0, '33.73156', '-84.91950'), ('Whitesburg', 0, '33.49298', '-84.91329')], 'partOfState': 'northwest', 'wfo': 'FFC'}, +'GAZ043': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bill Arp', 0, '33.67038', '-84.80587'), ('Chapel Hill', 0, '33.68662', '-84.71556'), ('Douglasville', 0, '33.75165', '-84.74743'), ('Fairplay', 0, '33.62407', '-84.86022'), ('Hannah', 0, '33.58649', '-84.86394'), ('Lake Val-Do-mar', 0, '33.74265', '-84.88825'), ('Lithia Springs', 0, '33.79402', '-84.66083'), ('Sweetwater Creek State Park', 0, '33.75067', '-84.62508'), ('Winston', 0, '33.72652', '-84.82739')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ044': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Campbellton', 0, '33.65032', '-84.66982'), ('Chattahoochee Hill Country', 0, '33.56325', '-84.75003'), ('College Park', 0, '33.65334', '-84.44946'), ('East Point', 0, '33.67953', '-84.44014'), ('Fairburn', 0, '33.56685', '-84.58150'), ('Hapeville', 0, '33.66002', '-84.41030'), ('Palmetto', 0, '33.51856', '-84.66891'), ('Sandtown', 0, '33.70394', '-84.55875'), ('Union City', 0, '33.57893', '-84.55259')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ045': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arabia Mountain', 0, '33.66563', '-84.11972'), ('Avondale Estates', 0, '33.76918', '-84.26477'), ('Belmont', 0, '33.72291', '-84.16702'), ('Brookhaven', 0, '33.86069', '-84.33926'), ('Cedar Grove', 0, '33.66062', '-84.30180'), ('Chamblee', 0, '33.89295', '-84.30072'), ('Clarkston', 0, '33.80986', '-84.23966'), ('Decatur', 0, '33.77512', '-84.29643'), ('Doraville', 0, '33.90440', '-84.27670'), ('Druid Hills', 0, '33.79204', '-84.32236'), ('Dunwoody', 0, '33.94608', '-84.33432'), ('East Lake', 0, '33.75292', '-84.30482'), ('Edgewood', 0, '33.76177', '-84.33948'), ('Gresham Park', 0, '33.69805', '-84.31076'), ('Kirkwood', 0, '33.75285', '-84.32500'), ('Klondike', 0, '33.64562', '-84.12682'), ('La Vista', 0, '33.81570', '-84.33478'), ('Lithonia', 0, '33.71221', '-84.10558'), ('Panthersville', 0, '33.71314', '-84.27186'), ('Pine Lake', 0, '33.79067', '-84.20569'), ('Redan', 0, '33.74497', '-84.13183'), ('Scottdale', 0, '33.78951', '-84.26436'), ('Snapfinger', 0, '33.68657', '-84.20196'), ('Stone Mountain', 0, '33.80585', '-84.17056'), ('Tucker', 0, '33.85514', '-84.21702')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ046': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Big Haynes Creek Park', 0, '33.75562', '-83.94781'), ('Conyers', 0, '33.66755', '-84.01735'), ('Georgia International Horse Park', 0, '33.66896', '-83.93509'), ('Lakeview Estates', 0, '33.70609', '-84.03354'), ('Magnet', 0, '33.56577', '-84.01551'), ('Milstead', 0, '33.68532', '-83.99094'), ('Panola Mountain State Park', 0, '33.63380', '-84.17180'), ('Richardson Park', 0, '33.59025', '-84.13806')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ047': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Between', 0, '33.81794', '-83.80750'), ('Bold Springs', 0, '33.90097', '-83.80134'), ('Campton', 0, '33.87084', '-83.71989'), ('Ebenezer', 0, '33.71116', '-83.62225'), ('Good Hope', 0, '33.78500', '-83.60921'), ('Gratis', 0, '33.88155', '-83.66541'), ('Herndonville', 0, '33.71110', '-83.69985'), ('Jersey', 0, '33.71546', '-83.79903'), ('Loganville', 0, '33.83932', '-83.90052'), ('Monroe', 0, '33.79455', '-83.71247'), ('Mount Vernon', 0, '33.83565', '-83.64386'), ('Nicholasville', 0, '33.86620', '-83.75311'), ('Pannell', 0, '33.76836', '-83.67535'), ('Social Circle', 0, '33.65617', '-83.71862'), ('Walnut Grove', 0, '33.74235', '-83.85243'), ('Windsor', 0, '33.88015', '-83.84352'), ('Youth', 0, '33.78530', '-83.85637')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ048': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Almon', 0, '33.62057', '-83.92501'), ('Brick Store', 0, '33.60162', '-83.74517'), ('Covington', 0, '33.59644', '-83.85982'), ('Gum Creek', 0, '33.71485', '-83.89278'), ('Mansfield', 0, '33.51801', '-83.73487'), ('Newborn', 0, '33.51621', '-83.69473'), ('Oak Hill', 0, '33.53893', '-84.00991'), ('Oxford', 0, '33.61984', '-83.87080'), ('Porterdale', 0, '33.57402', '-83.89500'), ('Rocky Plains', 0, '33.49681', '-83.91798'), ('Starrsville', 0, '33.54364', '-83.79671'), ('Stewart', 0, '33.42280', '-83.85137')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ049': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Apalachee', 0, '33.68634', '-83.43112'), ('Bostwick', 0, '33.73725', '-83.51438'), ('Buckhead', 0, '33.56842', '-83.36182'), ('Godfrey', 0, '33.45347', '-83.50481'), ('Hard Labor Creek State Park', 0, '33.65197', '-83.59571'), ('Madison', 0, '33.59571', '-83.46745'), ('Parks Mill', 0, '33.50424', '-83.28987'), ('Reese', 0, '33.54569', '-83.61743'), ('Rutledge', 0, '33.62603', '-83.61222'), ('Swords', 0, '33.54564', '-83.30470')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ050': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Carey', 0, '33.54776', '-83.26858'), ('Daniel Springs', 0, '33.65200', '-82.97451'), ('Greensboro', 0, '33.57590', '-83.18265'), ('Greshamville', 0, '33.62651', '-83.32373'), ('Jacksonville', 0, '33.63166', '-83.02956'), ('Liberty', 0, '33.41355', '-83.14751'), ('Penfield', 0, '33.66756', '-83.17753'), ('Reynolds Plantation', 0, '33.42233', '-83.21568'), ('Siloam', 0, '33.53654', '-83.08119'), ('Union Point', 0, '33.61465', '-83.07424'), ('Veazey', 0, '33.50318', '-83.14457'), ('White Plains', 0, '33.47205', '-83.03549'), ('Woodville', 0, '33.67267', '-83.10656'), ('Wrayswood', 0, '33.69419', '-83.31320')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ051': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alexander Stephens Park', 0, '33.56715', '-82.89640'), ('Carters Grove', 0, '33.69334', '-82.94383'), ('Crawfordville', 0, '33.55415', '-82.89556'), ('Lyneville', 0, '33.63684', '-82.93069'), ('Raytown', 0, '33.56979', '-82.75165'), ('Robinson', 0, '33.58262', '-82.98778'), ('Sandy Cross', 0, '33.61042', '-82.83267'), ('Sharon', 0, '33.55993', '-82.79508')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ052': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Centralhatchee', 0, '33.36896', '-85.10372'), ('Corinth', 0, '33.23023', '-84.94524'), ('Ephesus', 0, '33.40575', '-85.25391'), ('Franklin', 0, '33.27874', '-85.09844'), ('Frolona', 0, '33.32548', '-85.23763'), ('Glenn', 0, '33.15513', '-85.20294'), ('Plant Wansley', 0, '33.41078', '-85.03301'), ('Roosterville', 0, '33.40338', '-85.18412'), ('Texas', 0, '33.24104', '-85.19642'), ('Waresville', 0, '33.22887', '-85.23875')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ053': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arnco-Sargent', 0, '33.42620', '-84.85990'), ('Cannongate', 0, '33.47292', '-84.65620'), ('Dunaway Gardens', 0, '33.47909', '-84.81997'), ('Grantville', 0, '33.23468', '-84.83572'), ('Handy', 0, '33.37670', '-84.96900'), ('Haralson', 0, '33.22635', '-84.57140'), ('Madras', 0, '33.43860', '-84.74564'), ('Moreland', 0, '33.28671', '-84.76783'), ('Newnan', 0, '33.37479', '-84.80008'), ('Plant Yates', 0, '33.46348', '-84.90099'), ('Powers Crossroads', 0, '33.33885', '-84.97978'), ('Roscoe', 0, '33.49528', '-84.82160'), ('Senoia', 0, '33.29972', '-84.55375'), ('Sharpsburg', 0, '33.33993', '-84.64768'), ('Thomas Crossroads', 0, '33.40817', '-84.68250'), ('Turin', 0, '33.32560', '-84.63462')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ054': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brooks', 0, '33.29094', '-84.45882'), ('Fayetteville', 0, '33.44820', '-84.45455'), ('Inman', 0, '33.38378', '-84.41297'), ('Kenwood', 0, '33.51071', '-84.43767'), ('Lake Horton', 0, '33.32679', '-84.41723'), ('Peachtree City', 0, '33.40081', '-84.57946'), ('Sandy Creek', 0, '33.50050', '-84.56008'), ('Starrs Mill', 0, '33.32885', '-84.50876'), ('Tyrone', 0, '33.47438', '-84.59706'), ('Woolsey', 0, '33.36104', '-84.41143')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ055': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bonanza', 0, '33.46304', '-84.33691'), ('Conley', 0, '33.64469', '-84.32592'), ('Ellenwood', 0, '33.61092', '-84.28261'), ('Forest Park', 0, '33.62190', '-84.36912'), ('Fort Gillem', 0, '33.62218', '-84.32624'), ('Hartsfield-Jackson Airport', 0, '33.64037', '-84.42872'), ('Irondale', 0, '33.47542', '-84.36033'), ('Jonesboro', 0, '33.52077', '-84.35355'), ('Jw Smith Reservoir', 0, '33.41389', '-84.37287'), ('Lake City', 0, '33.60431', '-84.34083'), ('Lake Spivey', 0, '33.51541', '-84.28716'), ('Lovejoy', 0, '33.43619', '-84.31412'), ('Morrow', 0, '33.57948', '-84.34024'), ('Rex', 0, '33.59296', '-84.26722'), ('Riverdale', 0, '33.57259', '-84.41253')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ056': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Birdie', 0, '33.31734', '-84.36160'), ('Digbey', 0, '33.25468', '-84.48926'), ('Experiment', 0, '33.26547', '-84.28150'), ('Griffin', 0, '33.24716', '-84.26360'), ('Highland Mills', 0, '33.27445', '-84.29087'), ('Orchard Hill', 0, '33.18654', '-84.21165'), ('Rover', 0, '33.20664', '-84.33484'), ('Sunny Side', 0, '33.34064', '-84.29309'), ('Towalaga', 0, '33.31628', '-84.20930'), ('Vaughn', 0, '33.28355', '-84.38689'), ('Walker Mill', 0, '33.28985', '-84.17550'), ('Zetella', 0, '33.24094', '-84.38251')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ057': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Atlanta Motor Speedway', 0, '33.38332', '-84.31805'), ('Blacksville', 0, '33.43355', '-84.14876'), ('Eagles Landing', 0, '33.50867', '-84.22598'), ('Flippen', 0, '33.48317', '-84.18675'), ('Hampton', 0, '33.38686', '-84.28300'), ('Hidden Valley Park', 0, '33.61074', '-84.21719'), ('Kelleytown', 0, '33.53772', '-84.08907'), ('Locust Grove', 0, '33.34332', '-84.10440'), ('Luella', 0, '33.35180', '-84.17914'), ('McDonough', 0, '33.44737', '-84.14674'), ('Ola', 0, '33.43538', '-84.04224'), ('Stockbridge', 0, '33.54478', '-84.23253')], 'partOfState': 'north central', 'wfo': 'FFC'}, +'GAZ058': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Fincherville', 0, '33.40919', '-83.95335'), ('Flovilla', 0, '33.25596', '-83.89717'), ('Indian Springs State Park', 0, '33.24773', '-83.93130'), ('Jackson', 0, '33.29443', '-83.96553'), ('Jenkinsburg', 0, '33.32424', '-84.03468'), ('McKibben', 0, '33.27674', '-84.05033'), ('Stark', 0, '33.33313', '-83.90733'), ('Worthville', 0, '33.39182', '-83.92232')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ059': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adgateville', 0, '33.22466', '-83.67325'), ('Calvin', 0, '33.38697', '-83.70410'), ('Eudora', 0, '33.41048', '-83.76219'), ('Farrar', 0, '33.47230', '-83.64085'), ('Hillsboro', 0, '33.17989', '-83.64078'), ('McElheneys Crossroads', 0, '33.24355', '-83.76044'), ('Monticello', 0, '33.30430', '-83.68412'), ('North Alcovy', 0, '33.42070', '-83.81776'), ('Piedmont', 0, '33.27569', '-83.59632'), ('Shady Dale', 0, '33.40079', '-83.58922'), ('Turtle Cove', 0, '33.37047', '-83.84232')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ060': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Central Georgia Experiment Stn', 0, '33.40135', '-83.49143'), ('Eatonton', 0, '33.32571', '-83.38876'), ('Flat Rock', 0, '33.23749', '-83.31862'), ('Harmony', 0, '33.45815', '-83.34910'), ('Oconee Springs Park', 0, '33.28825', '-83.19966'), ('Phoenix', 0, '33.41823', '-83.27000'), ('Plant Harlee Branch', 0, '33.19494', '-83.29863'), ('Resseaus Crossroads', 0, '33.20110', '-83.43419'), ('Rock Eagle 4-H Center', 0, '33.41882', '-83.39194'), ('Rockville', 0, '33.33036', '-83.21682'), ('Stanfordville', 0, '33.22306', '-83.50129'), ('Warfield', 0, '33.29722', '-83.38406'), ('Willard', 0, '33.31199', '-83.48998')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ061': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Beulah', 0, '33.14297', '-83.05603'), ('Culverton', 0, '33.30835', '-82.89516'), ('Devereux', 0, '33.21484', '-83.07529'), ('Linton', 0, '33.11541', '-82.99014'), ('Mayfield', 0, '33.35562', '-82.79999'), ('Powelton', 0, '33.42802', '-82.87288'), ('Shoulderbone', 0, '33.33904', '-83.08024'), ('Sparta', 0, '33.27562', '-82.97476'), ('Springfield', 0, '33.41908', '-82.95218')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ062': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barnett', 0, '33.50478', '-82.80788'), ('Beall Springs', 0, '33.31598', '-82.71322'), ('Cadley', 0, '33.53529', '-82.65746'), ('Camak', 0, '33.45303', '-82.64632'), ('Jewell', 0, '33.29634', '-82.77339'), ('Mesena', 0, '33.46047', '-82.59175'), ('Norwood', 0, '33.46223', '-82.70625'), ('Reese', 0, '33.34494', '-82.57969'), ('Shoals', 0, '33.25454', '-82.75531'), ('Warrenton', 0, '33.40698', '-82.66208')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ063': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Dearing', 441, '33.41520', '-82.38440'), ('Thomson', 6828, '33.46610', '-82.50000')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAZ064': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Evans', 17727, '33.51380', '-82.14550'), ('Grovetown', 6089, '33.44940', '-82.20180'), ('Harlem', 1814, '33.41400', '-82.31700'), ('Martinez', 27749, '33.51940', '-82.08830')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAZ065': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Augusta', 43459, '33.45730', '-81.99500'), ('Blythe', 718, '33.29250', '-82.19950'), ('Fort Gordon', 9140, '33.41710', '-82.14090'), ('Hephzibah', 3880, '33.28730', '-82.10600')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAZ066': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abbottsford', 0, '33.04628', '-85.18156'), ('Baughs Crossroads', 0, '32.91627', '-85.02025'), ('Big Springs', 0, '32.99541', '-84.90365'), ('Cannonville', 0, '32.96581', '-85.10606'), ('Harrisonville', 0, '33.17600', '-84.98854'), ('Hillcrest', 0, '33.12956', '-85.04021'), ('Hogansville', 0, '33.17302', '-84.91438'), ('Jones Crossroads', 0, '32.86970', '-85.03523'), ('Lagrange', 0, '33.03908', '-85.03162'), ('Long Cane', 0, '32.94971', '-85.14310'), ('Louise', 0, '33.08124', '-84.93443'), ('Mountville', 0, '33.03867', '-84.88434'), ('Piedmont Heights', 0, '32.99338', '-85.20108'), ('Smiths Crossroad', 0, '32.95506', '-85.01974'), ('State Line Park', 0, '33.02133', '-85.21147'), ('Wares Crossroads', 0, '33.10573', '-85.07518'), ('West Point', 0, '32.87521', '-85.17577')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ067': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alvaton', 0, '33.16956', '-84.58060'), ('Durand', 0, '32.91801', '-84.77074'), ('Gay', 0, '33.09379', '-84.57420'), ('Greenville', 0, '33.02869', '-84.71308'), ('Harris City', 0, '32.96864', '-84.71213'), ('Imlac', 0, '33.03216', '-84.56366'), ('Lone Oak', 0, '33.17186', '-84.81612'), ('Luthersville', 0, '33.21010', '-84.74474'), ('Manchester', 0, '32.85736', '-84.61972'), ('Odessadale', 0, '33.01758', '-84.81662'), ('Raleigh', 0, '32.93580', '-84.63694'), ('Rocky Mount', 0, '33.16536', '-84.67315'), ('Saint Marks', 0, '33.12534', '-84.82126'), ('Stovall', 0, '32.96093', '-84.85163'), ('Warm Springs', 0, '32.89053', '-84.67988'), ('Woodbury', 0, '32.98407', '-84.57960'), ('Wooster', 0, '33.14064', '-84.63500')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ068': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Concord', 0, '33.09113', '-84.43854'), ('Hilltop', 0, '33.10336', '-84.43447'), ('Hollonville', 0, '33.16549', '-84.46073'), ('Lifsey Springs', 0, '33.03638', '-84.37675'), ('Meansville', 0, '33.04930', '-84.30633'), ('Molena', 0, '33.01182', '-84.49991'), ('Williamson', 0, '33.18234', '-84.36167'), ('Zebulon', 0, '33.10257', '-84.34219')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ069': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Atwater', 0, '32.96904', '-84.37063'), ('Crest', 0, '32.93142', '-84.44561'), ('Hannahs Mill', 0, '32.93546', '-84.33989'), ('Logtown', 0, '32.85139', '-84.18727'), ('Redbone Crossroads', 0, '32.86927', '-84.25512'), ('Rowland', 0, '32.85961', '-84.41560'), ('Salem', 0, '32.75151', '-84.19792'), ('Sprewell Bluff State Park', 0, '32.86131', '-84.46632'), ('Sunnyside', 0, '32.89835', '-84.40641'), ('The Rock', 0, '32.96399', '-84.24111'), ('Thomaston', 0, '32.88745', '-84.32658'), ('Yatesville', 0, '32.91400', '-84.14278')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ070': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aldora', 0, '33.05107', '-84.17566'), ('Barnesville', 0, '33.05446', '-84.15548'), ('Chappel Mill', 0, '33.18004', '-84.09701'), ('Goggins', 0, '33.07616', '-84.09260'), ('Johnstonville', 0, '33.08932', '-84.07406'), ('Liberty Hill', 0, '33.15374', '-84.13739'), ('Milner', 0, '33.11651', '-84.19657'), ('Piedmont', 0, '33.01691', '-84.25093'), ('Redbone', 0, '32.98958', '-84.09733')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ071': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Berner', 0, '33.15281', '-83.83361'), ('Blount', 0, '33.17940', '-83.95904'), ('Bolingbroke', 0, '32.94938', '-83.80284'), ('Brent', 0, '32.98512', '-84.00924'), ('Collier', 0, '33.04746', '-84.01058'), ('Culloden', 0, '32.86312', '-84.09392'), ('Dames Ferry', 0, '33.02351', '-83.73719'), ('Forsyth', 0, '33.03461', '-83.93851'), ('High Falls State Park', 0, '33.17863', '-84.01819'), ('Juliette', 0, '33.10712', '-83.79999'), ('Plant Scherer', 0, '33.06021', '-83.80826'), ('Russellville', 0, '32.90277', '-83.99136')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ072': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blountsville', 0, '33.12339', '-83.47688'), ('Bradley', 0, '33.05352', '-83.55843'), ('Clinton', 0, '32.99472', '-83.56120'), ('Ethridge', 0, '33.16353', '-83.44264'), ('Gray', 0, '33.00916', '-83.53429'), ('Greenberry Crossroads', 0, '32.95385', '-83.44971'), ('Griswoldville', 0, '32.87439', '-83.48954'), ('Haddock', 0, '33.03425', '-83.42498'), ('James', 0, '32.96634', '-83.47395'), ('Jarrell Plantation', 0, '33.05222', '-83.72411'), ('Mountain Springs', 0, '32.90137', '-83.44960'), ('Postell', 0, '32.91244', '-83.52125'), ('Round Oak', 0, '33.10949', '-83.61489'), ('Wayside', 0, '33.06154', '-83.60547')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ073': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Allenwood', 0, '33.07021', '-83.26000'), ('Browns Crossing', 0, '33.05214', '-83.36164'), ('Coopers', 0, '32.97609', '-83.29022'), ('Hardwick', 0, '33.06794', '-83.22356'), ('Meriwether', 0, '33.15542', '-83.31449'), ('Milledgeville', 0, '33.08110', '-83.22706'), ('Pancras', 0, '33.00111', '-83.25472'), ('Scottsboro', 0, '33.02274', '-83.23339'), ('Underwood', 0, '33.14186', '-83.12404')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ074': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Davisboro', 0, '32.97908', '-82.60825'), ('Deepstep', 0, '33.01791', '-82.96879'), ('Downs', 0, '33.06715', '-82.67354'), ('Hamburg State Park', 0, '33.20942', '-82.78877'), ('Harrison', 0, '32.82620', '-82.72576'), ('Hebron', 0, '32.96652', '-83.00020'), ('Oconee', 0, '32.85493', '-82.96083'), ('Pringle', 0, '32.79977', '-82.63395'), ('Riddleville', 0, '32.90688', '-82.66611'), ('Sandersville', 0, '32.98144', '-82.81104'), ('Tennille', 0, '32.93732', '-82.81088'), ('Warthen', 0, '33.10241', '-82.80432')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ075': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Agricola', 0, '33.19622', '-82.71952'), ('Bastonville', 0, '33.30610', '-82.52809'), ('Edgehill', 0, '33.15263', '-82.62427'), ('Five Points', 0, '33.28716', '-82.66120'), ('Gibson', 0, '33.23349', '-82.59547'), ('Mitchell', 0, '33.21980', '-82.70322')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ076': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Avera', 0, '33.19387', '-82.52778'), ('Bartow', 0, '32.87867', '-82.47421'), ('Grange', 0, '33.08218', '-82.57887'), ('Louisville', 0, '33.00174', '-82.40945'), ('Matthews', 0, '33.21107', '-82.30860'), ('Moxley', 0, '32.92190', '-82.39750'), ('Stapleton', 0, '33.21570', '-82.46834'), ('Stapletons Crossroads', 0, '33.10015', '-82.50198'), ('Stellaville', 0, '33.18826', '-82.33134'), ('Wadley', 0, '32.86570', '-82.40464'), ('Wrens', 0, '33.20848', '-82.38586')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ077': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Girard', 227, '33.04080', '-81.71130'), ('Keysville', 180, '33.23620', '-82.22950'), ('Midville', 457, '32.82110', '-82.23530'), ('Sardis', 1171, '32.97300', '-81.76040'), ('Vidette', 0, '33.03600', '-82.24800'), ('Waynesboro', 5813, '33.09000', '-82.01370')], 'partOfState': 'east central', 'wfo': 'CAE'}, +'GAZ078': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cataula', 0, '32.65599', '-84.86779'), ('Ellerslie', 0, '32.63212', '-84.80135'), ('F.D. Roosevelt State Park', 0, '32.83972', '-84.81254'), ('Fortson', 0, '32.61060', '-84.93743'), ('Goat Rock Lake', 0, '32.61312', '-85.07856'), ('Hamilton', 0, '32.75862', '-84.87501'), ('Lake Harding', 0, '32.68167', '-85.09458'), ('Mountain Hill', 0, '32.70154', '-85.02459'), ('Mulberry Grove', 0, '32.66040', '-84.95756'), ('Pine Mountain-Callaway Gardens', 0, '32.85658', '-84.84960'), ('Pine Mountain Valley', 0, '32.79909', '-84.82274'), ('Shiloh', 0, '32.80822', '-84.69640'), ('Waverly Hall', 0, '32.68481', '-84.73807'), ('Whitesville-Pine Lake', 0, '32.81701', '-85.04159')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ079': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baldwinville', 0, '32.64854', '-84.44196'), ('Baughville', 0, '32.65474', '-84.66812'), ('Big Lazer Creek Wma', 0, '32.77465', '-84.40706'), ('Box Springs', 0, '32.53279', '-84.66035'), ('Flint Hill', 0, '32.83111', '-84.64206'), ('Geneva', 0, '32.57957', '-84.55083'), ('Junction City', 0, '32.60280', '-84.45984'), ('Olive Branch', 0, '32.67580', '-84.60604'), ('Pleasant Hill', 0, '32.80408', '-84.49845'), ('Po Biddy Crossroads', 0, '32.68998', '-84.47214'), ('Prattsburg', 0, '32.71233', '-84.35746'), ('Talbotton', 0, '32.67757', '-84.54012'), ('Woodland', 0, '32.78752', '-84.56113')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ080': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Butler', 0, '32.55685', '-84.23855'), ('Carsonville', 0, '32.71287', '-84.28933'), ('Charing', 0, '32.46210', '-84.36160'), ('Fickling Mill', 0, '32.65378', '-84.17786'), ('Howard', 0, '32.59595', '-84.38418'), ('Mauk', 0, '32.50098', '-84.42001'), ('Potterville', 0, '32.51562', '-84.11845'), ('Reynolds', 0, '32.55908', '-84.09544'), ('Rupert', 0, '32.44017', '-84.27804'), ('Wesley Church', 0, '32.65903', '-84.33028')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ081': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Friendship', 0, '32.67321', '-83.86290'), ('Horns', 0, '32.67579', '-84.00361'), ('Jack Brown Estates', 0, '32.70044', '-83.77894'), ('Knoxville', 0, '32.72455', '-83.99774'), ('Lee Pope', 0, '32.61147', '-83.94972'), ('Musella', 0, '32.79790', '-84.02903'), ('Nakomis', 0, '32.54742', '-84.00104'), ('Roberta', 0, '32.72067', '-84.01176'), ('Sandy Point', 0, '32.76651', '-83.94298')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ082': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arkwright', 0, '32.92522', '-83.70744'), ('Cross Keys', 0, '32.85237', '-83.59124'), ('Franklinton', 0, '32.80721', '-83.53822'), ('Lake Tobesofkee', 0, '32.83066', '-83.81196'), ('Lizella', 0, '32.80732', '-83.82154'), ('Macon', 0, '32.83290', '-83.64349'), ('Middle Georgia Regional Airport', 0, '32.69582', '-83.64766'), ('Payne City', 0, '32.85284', '-83.68788'), ('Rutland', 0, '32.74102', '-83.65544'), ('Skipperton', 0, '32.74338', '-83.69393'), ('Wesleyan', 0, '32.87553', '-83.71737')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ083': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bullard', 0, '32.63035', '-83.49725'), ('Danville', 0, '32.60531', '-83.24531'), ('District Path', 0, '32.61260', '-83.37464'), ('Dry Branch', 0, '32.79560', '-83.49769'), ('Fitzpatrick', 0, '32.74850', '-83.43502'), ('Huber', 0, '32.71070', '-83.54197'), ('Jeffersonville', 0, '32.68353', '-83.34119'), ('Marion', 0, '32.66200', '-83.43744'), ('Myricks Mill', 0, '32.78422', '-83.37710'), ('Ripley', 0, '32.72600', '-83.41738'), ('Tarversville', 0, '32.54284', '-83.44094')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ084': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Allentown', 0, '32.59288', '-83.22564'), ('Gordon', 0, '32.88212', '-83.33278'), ('Irwinton', 0, '32.81162', '-83.17436'), ('Ivey', 0, '32.90708', '-83.29175'), ('McIntyre', 0, '32.84618', '-83.19220'), ('Nicklesville', 0, '32.68988', '-83.09480'), ('Toomsboro', 0, '32.82667', '-83.07988')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ085': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adrian', 0, '32.53103', '-82.58972'), ('Donovan', 0, '32.77153', '-82.71292'), ('Kite', 0, '32.69234', '-82.51449'), ('Meeks', 0, '32.61889', '-82.55712'), ('New Home', 0, '32.76998', '-82.60154'), ('Scott', 0, '32.55295', '-82.66703'), ('Spann', 0, '32.66582', '-82.74822'), ('Wrightsville', 0, '32.72949', '-82.71971')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ086': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blundale', 0, '32.74812', '-82.39153'), ('Canoochee', 0, '32.67327', '-82.17811'), ('Colemans Lake', 0, '32.82200', '-82.27540'), ('Covena', 0, '32.49550', '-82.44420'), ('Dellwood', 0, '32.66801', '-82.37862'), ('Garfield', 0, '32.64967', '-82.09640'), ('George L Smith State Park', 0, '32.55053', '-82.12578'), ('Lexsy', 0, '32.46861', '-82.29875'), ('Modoc', 0, '32.65674', '-82.30906'), ('Norristown', 0, '32.50633', '-82.49684'), ('Norristown Junction', 0, '32.55754', '-82.48826'), ('Nunez', 0, '32.49361', '-82.34591'), ('Oak Park', 0, '32.35912', '-82.31528'), ('Stillmore', 0, '32.44168', '-82.21546'), ('Summertown', 0, '32.74654', '-82.27575'), ('Swainsboro', 0, '32.59710', '-82.33350'), ('Three Points', 0, '32.78422', '-82.24508'), ('Twin City', 0, '32.58262', '-82.15493')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ087': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Birdsville', 3492, '32.87140', '-82.07810'), ('Butts', 152, '32.72580', '-82.02640'), ('Emmalane', 3492, '32.75970', '-81.99830'), ('Four Points', 152, '32.67170', '-81.99330'), ('Herndon', 457, '32.82030', '-82.12940'), ('Lawton', 3492, '32.87170', '-81.94560'), ('Millen', 3492, '32.80390', '-81.94940'), ('Perkins', 3492, '32.90940', '-81.95310'), ('Rogers', 3492, '32.81920', '-82.07390'), ('Scarboro', 186, '32.71310', '-81.87560'), ('Thrift', 152, '32.69890', '-82.05610')], 'partOfState': 'east central', 'wfo': 'CHS'}, +'GAZ088': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Altman', 2675, '32.72560', '-81.63060'), ('Bascom', 402, '32.84030', '-81.66830'), ('Cameron', 253, '32.55780', '-81.67390'), ('Captolo', 322, '32.62530', '-81.59720'), ('Cooperville', 186, '32.59060', '-81.70420'), ('Dover', 186, '32.57690', '-81.71530'), ('Farmdale', 2675, '32.69940', '-81.61030'), ('Goloid', 2675, '32.69140', '-81.67250'), ('Green Hill', 2675, '32.70940', '-81.59310'), ('Halcyondale', 253, '32.53890', '-81.59830'), ('Hilltonia', 402, '32.88330', '-81.65830'), ('Hunters', 322, '32.65440', '-81.55060'), ('Lewis', 2675, '32.80170', '-81.68170'), ('Middleground', 322, '32.64110', '-81.53280'), ('Millhaven', 402, '32.93360', '-81.64970'), ('Newington', 322, '32.59000', '-81.50420'), ('Ogeechee', 186, '32.61970', '-81.76500'), ('Oliver', 253, '32.52140', '-81.53330'), ('Parkers', 186, '32.69970', '-81.81000'), ('Rocky Ford', 186, '32.66330', '-81.82970'), ('Sheppards', 322, '32.63720', '-81.53530'), ('Stalco', 253, '32.53330', '-81.55890'), ('Sylvania', 2675, '32.75030', '-81.63690'), ('Thomasboro', 186, '32.71940', '-81.79030'), ('Waters', 2675, '32.75560', '-81.66580'), ('White Hill', 2675, '32.67970', '-81.57330'), ('Woodcliff', 186, '32.74060', '-81.76330'), ('Zeigler', 2675, '32.75170', '-81.73030')], 'partOfState': 'east central', 'wfo': 'CHS'}, +'GAZ089': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Avondale', 0, '32.46060', '-84.97455'), ('Battle Park', 0, '32.38426', '-84.95001'), ('Benning Hills', 0, '32.41251', '-84.93450'), ('Benning Park', 0, '32.42751', '-84.94595'), ('Bibb City', 0, '32.49866', '-84.99043'), ('Carter Acres', 0, '32.40985', '-84.96593'), ('Columbus', 0, '32.46450', '-84.98735'), ('Columbus Metropolitan Airport', 0, '32.51539', '-84.94055'), ('Custer Road Terrace', 0, '32.38942', '-84.94258'), ('Edgewood', 0, '32.49001', '-84.93024'), ('Flat Rock', 0, '32.54543', '-84.86644'), ('Green Island Hills', 0, '32.53413', '-85.00253'), ('Highland Park', 0, '32.47887', '-84.94417'), ('Kenwood', 0, '32.50310', '-84.90628'), ('Laurel Hills', 0, '32.51642', '-84.97429'), ('Midland', 0, '32.57038', '-84.82090'), ('North Fort Benning', 0, '32.45455', '-84.79733'), ('Rose Hill', 0, '32.48506', '-84.98486'), ('Saint Marys Hills', 0, '32.45308', '-84.93341'), ('Sand Hill', 0, '32.40833', '-84.89519'), ('Upatoi', 0, '32.55217', '-84.74002'), ('Vista Terrace', 0, '32.46582', '-84.88737')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ090': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Christopher', 0, '32.31190', '-84.72858'), ('Cusseta', 0, '32.30620', '-84.77701'), ('Eelbeck/West Fort Benning', 0, '32.43975', '-84.73313'), ('Fort Benning/Lawson Army Air Fld', 0, '32.34850', '-84.97769'), ('Jamestown/South Fort Benning', 0, '32.27335', '-84.84080'), ('Manta', 0, '32.28752', '-84.71766'), ('Renfroe', 0, '32.23340', '-84.71275')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ091': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brantley', 0, '32.37142', '-84.55901'), ('Buena Vista', 0, '32.31848', '-84.51753'), ('Church Hill', 0, '32.16157', '-84.54480'), ('Doyle', 0, '32.28373', '-84.44368'), ('Draneville', 0, '32.21157', '-84.48917'), ('Five Points', 0, '32.45324', '-84.44477'), ('Juniper', 0, '32.52844', '-84.60253'), ('Marion Estates', 0, '32.49906', '-84.56089'), ('Oakland', 0, '32.46448', '-84.53928'), ('Putnam', 0, '32.25966', '-84.42055'), ('Tazewell', 0, '32.38056', '-84.43988'), ('Zellobee', 0, '32.30010', '-84.61879')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ092': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bumphead', 0, '32.18927', '-84.20380'), ('Cedar Creek', 0, '32.39083', '-84.38860'), ('Concord', 0, '32.33159', '-84.34230'), ('Ellaville', 0, '32.23810', '-84.30885'), ('La Crosse', 0, '32.18696', '-84.24042'), ('Murrays Crossroads', 0, '32.32084', '-84.29391'), ('Walls Crossing', 0, '32.25223', '-84.37044')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ093': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Andersonville National Historic', 0, '32.19697', '-84.12862'), ('Bartlett', 0, '32.33593', '-84.11713'), ('Clearview', 0, '32.24624', '-84.08533'), ('Five Points', 0, '32.29142', '-83.91747'), ('Fountainville', 0, '32.28341', '-84.15712'), ('Garden Valley', 0, '32.43968', '-84.11760'), ('Hicks', 0, '32.48208', '-84.09628'), ('Ideal', 0, '32.37520', '-84.18755'), ('Marshallville', 0, '32.45636', '-83.94191'), ('Montezuma', 0, '32.30060', '-84.02992'), ('Oglethorpe', 0, '32.29387', '-84.06073'), ('Saint Louis', 0, '32.46810', '-83.86716'), ('Whitewater State Park', 0, '32.34953', '-84.06641'), ('Winchester', 0, '32.41827', '-83.95829')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ094': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Byron', 0, '32.65164', '-83.75580'), ('Fort Valley', 0, '32.55373', '-83.88665'), ('Lakewood', 0, '32.57873', '-83.74773'), ('Miami Valley', 0, '32.55377', '-83.80240'), ('Powerville', 0, '32.60326', '-83.79264')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ095': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bonaire', 0, '32.54385', '-83.59657'), ('Centerville', 0, '32.63074', '-83.68866'), ('Clinchfield', 0, '32.41350', '-83.63781'), ('Elberta', 0, '32.65945', '-83.61889'), ('Elko', 0, '32.33107', '-83.70718'), ('Grovania', 0, '32.36622', '-83.66316'), ('Grove Park', 0, '32.37798', '-83.72573'), ('Hayneville', 0, '32.38335', '-83.62087'), ('Henderson', 0, '32.34147', '-83.78934'), ('Houston Lake', 0, '32.50101', '-83.66825'), ('Kathleen', 0, '32.49574', '-83.60824'), ('Klondike', 0, '32.34823', '-83.57606'), ('Meadowdale', 0, '32.44260', '-83.78061'), ('Moss Oak', 0, '32.41930', '-83.77433'), ('Perry', 0, '32.45895', '-83.73394'), ('Robins Air Force Base', 0, '32.62597', '-83.59253'), ('Sand Bed', 0, '32.45704', '-83.61872'), ('Warner Robins', 0, '32.61830', '-83.63181')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ096': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baileys Park', 0, '32.31180', '-83.35413'), ('Cary', 0, '32.51498', '-83.30522'), ('Cochran', 0, '32.38662', '-83.35475'), ('Coley Station', 0, '32.42850', '-83.38912'), ('Goldsboro', 0, '32.47241', '-83.22768'), ('Magnolia', 0, '32.43003', '-83.45386'), ('Paulk', 0, '32.38571', '-83.40522'), ('Porter', 0, '32.41068', '-83.40050'), ('Rebie', 0, '32.46203', '-83.17585'), ('Royal', 0, '32.44608', '-83.37919')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ097': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brewton', 0, '32.59359', '-82.79835'), ('Cadwell', 0, '32.33959', '-83.04219'), ('Cedar Grove', 0, '32.25322', '-82.88974'), ('Chappells Mill', 0, '32.65934', '-83.04681'), ('Dexter', 0, '32.43332', '-83.05884'), ('Dublin', 0, '32.54020', '-82.90360'), ('Dudley', 0, '32.54040', '-83.07203'), ('East Dublin', 0, '32.54866', '-82.87350'), ('Harlow', 0, '32.49424', '-82.98867'), ('Lovett', 0, '32.63843', '-82.76751'), ('Lowery', 0, '32.35626', '-82.80002'), ('Minter', 0, '32.48590', '-82.76084'), ('Montrose', 0, '32.55993', '-83.15342'), ('Rentz', 0, '32.38345', '-82.99154'), ('Rockledge', 0, '32.44447', '-82.69635'), ('Tuckers Crossroad', 0, '32.70108', '-82.86509')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ098': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barnhill', 0, '32.32688', '-82.66919'), ('Blackville', 0, '32.48224', '-82.59890'), ('Five Points', 0, '32.42355', '-82.46550'), ('Gillis Springs', 0, '32.45927', '-82.49024'), ('Lothair', 0, '32.35537', '-82.65535'), ('Orianna', 0, '32.47242', '-82.64469'), ('Orland', 0, '32.43500', '-82.67550'), ('Soperton', 0, '32.37751', '-82.59160'), ('Zaidee', 0, '32.37434', '-82.52893')], 'partOfState': 'east central', 'wfo': 'FFC'}, +'GAZ099': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aline', 311, '32.36080', '-82.16060'), ('Excelsior', 261, '32.31330', '-81.96610'), ('Metter', 3879, '32.39690', '-82.06030'), ('Olifftown', 3879, '32.49440', '-82.09750'), ('Parish', 261, '32.39390', '-81.98890'), ('Pulaski', 261, '32.39000', '-81.95690'), ('Union', 3879, '32.48250', '-82.05390')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ100': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adabelle', 164, '32.29140', '-81.92720'), ('Akins', 1113, '32.30610', '-81.62060'), ('Arcola', 1113, '32.34330', '-81.60220'), ('Blitch', 186, '32.58940', '-81.78250'), ('Brooklet', 1113, '32.37940', '-81.66330'), ('Clito', 22698, '32.51220', '-81.75390'), ('Deerfield', 22698, '32.48830', '-81.78140'), ('Denmark', 1113, '32.28440', '-81.72420'), ('Donegal', 22698, '32.56330', '-81.72420'), ('Emit', 1113, '32.34360', '-81.74000'), ('Eureka', 22698, '32.51750', '-81.71560'), ('Georgia Southern', 22698, '32.41330', '-81.78330'), ('Grimshaw', 1113, '32.39890', '-81.69890'), ('Hopeulikit', 597, '32.52140', '-81.85060'), ('Hubert', 917, '32.30640', '-81.49190'), ('Huntington', 22698, '32.48750', '-81.77640'), ('Irongate', 22698, '32.41810', '-81.83750'), ('Ivanhoe', 917, '32.28390', '-81.47750'), ('Jimps', 164, '32.38560', '-81.83560'), ('Leefield', 1113, '32.41810', '-81.61360'), ('Nevils', 126, '32.26360', '-81.76110'), ('New Hope', 164, '32.33810', '-81.89690'), ('Olney', 917, '32.25530', '-81.46080'), ('Overbrook', 126, '32.23750', '-81.81220'), ('Portal', 597, '32.53810', '-81.93250'), ('Pretoria', 22698, '32.40970', '-81.73060'), ('Register', 164, '32.36690', '-81.88420'), ('Somerset', 22698, '32.41190', '-81.76530'), ('Statesboro', 22698, '32.44860', '-81.78330'), ('Stilson', 1113, '32.32580', '-81.55330'), ('Westbrooke', 22698, '32.42780', '-81.80720'), ('Westchester', 22698, '32.47640', '-81.79470'), ('Windfield', 22698, '32.45000', '-81.74500')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ101': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ardmore', 253, '32.49500', '-81.42890'), ('Berryville', 1821, '32.42830', '-81.25890'), ('Blandford', 4376, '32.27830', '-81.26330'), ('Clyo', 1821, '32.48390', '-81.26720'), ('Coldbrook', 4376, '32.23750', '-81.24190'), ('Ebenezer', 4376, '32.37780', '-81.18250'), ('Eden', 2665, '32.17360', '-81.39080'), ('Egypt', 253, '32.46170', '-81.47420'), ('Guyton', 917, '32.33610', '-81.39170'), ('Kildare', 322, '32.53420', '-81.45560'), ('Marlow', 917, '32.26890', '-81.39080'), ('Meldrim', 2665, '32.14310', '-81.37810'), ('Oaky', 322, '32.52470', '-81.39110'), ('Pineora', 917, '32.28670', '-81.39170'), ('Rincon', 4376, '32.29580', '-81.23560'), ('Shawnee', 253, '32.47560', '-81.40830'), ('Springfield', 917, '32.37000', '-81.37500'), ('Stillwell', 1821, '32.37780', '-81.25060'), ('Tusculum', 917, '32.39280', '-81.43080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ102': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brooklyn', 0, '32.17141', '-84.70778'), ('Charles', 0, '32.12866', '-84.82415'), ('Florence Marina State Park', 0, '32.09055', '-85.04353'), ('Louvale', 0, '32.16928', '-84.82796'), ('Lumpkin', 0, '32.05091', '-84.79490'), ('Omaha', 0, '32.14638', '-85.01326'), ('Providence Canyon State Park', 0, '32.06833', '-84.91012'), ('Richland', 0, '32.08932', '-84.66394'), ('Sanford', 0, '31.97991', '-84.94328'), ('Troutman', 0, '31.93926', '-84.69682'), ('Westville', 0, '32.03687', '-84.78388')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ103': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Centerpoint', 0, '31.98532', '-84.53097'), ('Dumas', 0, '32.04342', '-84.49026'), ('Kimbrough', 0, '32.00466', '-84.64925'), ('Leveretts', 0, '31.94286', '-84.57078'), ('Preston', 0, '32.06586', '-84.53670'), ('Seminole', 0, '32.16929', '-84.60732'), ('Weston', 0, '31.97609', '-84.61503')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ104': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Americus', 0, '32.07278', '-84.23326'), ('Andersonville', 0, '32.19613', '-84.14201'), ('Cobb', 0, '31.95904', '-83.98827'), ('Concord', 0, '32.13969', '-84.38102'), ('Croxton Crossroads', 0, '31.95906', '-84.32552'), ('Desoto', 0, '31.95517', '-84.06264'), ('Friendship', 0, '32.14958', '-84.41949'), ('Huntington', 0, '32.00224', '-84.14084'), ('Lamar', 0, '32.01573', '-84.07231'), ('Leslie', 0, '31.95548', '-84.08633'), ('Maddox', 0, '32.00191', '-84.25050'), ('Methvins', 0, '32.11265', '-84.06976'), ('New Era', 0, '32.11269', '-84.13636'), ('Pennington', 0, '32.15909', '-84.08984'), ('Plains', 0, '32.03392', '-84.39266'), ('Shiloh', 0, '32.15296', '-84.30715'), ('Sumter', 0, '31.94832', '-84.25604')], 'partOfState': 'west central', 'wfo': 'FFC'}, +'GAZ105': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Byromville', 0, '32.20183', '-83.90872'), ('Dooling', 0, '32.23021', '-83.92871'), ('Drayton', 0, '32.07434', '-83.95577'), ('Flint River Wma', 0, '32.14373', '-83.99184'), ('Lilly', 0, '32.14697', '-83.87741'), ('Pinehurst', 0, '32.19498', '-83.76154'), ('Richwood', 0, '32.04121', '-83.79471'), ('Tippettville', 0, '32.09892', '-83.61396'), ('Unadilla', 0, '32.26056', '-83.73701'), ('Vienna', 0, '32.09147', '-83.79636')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ106': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arabi', 0, '31.83149', '-83.73813'), ('Cordele', 0, '31.96361', '-83.77670'), ('East Crisp', 0, '31.95717', '-83.67797'), ('Fort Early', 0, '31.85361', '-83.91828'), ('Georgia Veterans Memorial St Pk', 0, '31.95524', '-83.91386'), ('Hatley', 0, '31.89939', '-83.61330'), ('Raines', 0, '31.90011', '-83.86038'), ('Tremont', 0, '32.01292', '-83.65784'), ('Wenona', 0, '31.90542', '-83.74671')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ107': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Browndale', 0, '32.30486', '-83.58741'), ('Finleyson', 0, '32.12921', '-83.50060'), ('Hartford', 0, '32.28371', '-83.44860'), ('Hawkinsville', 0, '32.28238', '-83.46998'), ('Mobley Crossing', 0, '32.32675', '-83.41439'), ('Mock Springs', 0, '32.21734', '-83.59277'), ('Ocmulgee Banks', 0, '32.16077', '-83.36894'), ('Ocmulgee Public Fishing Area', 0, '32.38480', '-83.48668'), ('Pulaski State Prison', 0, '32.31150', '-83.45691'), ('Wallace', 0, '32.19701', '-83.49736')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ108': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abbeville', 0, '31.99233', '-83.30691'), ('Antioch Church', 0, '31.92058', '-83.35656'), ('Browning', 0, '31.92183', '-83.26244'), ('Cedar Creek', 0, '32.08882', '-83.38962'), ('Double Run', 0, '31.85850', '-83.55848'), ('Owensboro', 0, '31.87756', '-83.42790'), ('Pineview', 0, '32.11016', '-83.50107'), ('Pitts', 0, '31.94476', '-83.54173'), ('Pleasant View', 0, '32.03589', '-83.59748'), ('Pope City', 0, '32.05974', '-83.50366'), ('Rochelle', 0, '31.95020', '-83.45620'), ('Seville', 0, '31.96100', '-83.60140')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ109': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Achord', 0, '32.10515', '-82.97487'), ('Chauncey', 0, '32.10478', '-83.06488'), ('Chester', 0, '32.39438', '-83.15338'), ('Dubois', 0, '32.30360', '-83.27328'), ('Eastman', 0, '32.19780', '-83.17857'), ('Empire', 0, '32.33938', '-83.29878'), ('Five Points', 0, '32.07332', '-83.18155'), ('Godwinsville', 0, '32.13723', '-83.12833'), ('Gresston', 0, '32.28703', '-83.25230'), ('Jay Bird Springs', 0, '32.13135', '-83.00560'), ('Plainfield', 0, '32.28454', '-83.10794'), ('Rhine', 0, '31.98986', '-83.20010'), ('Roddy', 0, '32.35266', '-83.25032'), ('Rowland', 0, '32.43152', '-83.17570'), ('Union', 0, '32.09931', '-83.25022'), ('Yonkers', 0, '32.36630', '-83.21659')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ110': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('China Hill', 0, '31.85267', '-83.08433'), ('Helena', 0, '32.07410', '-82.91431'), ('Horse Creek Wma', 0, '31.81280', '-82.86827'), ('Jacksonville', 0, '31.81256', '-82.97901'), ('Lumber City', 0, '31.93128', '-82.68173'), ('McRae', 0, '32.06794', '-82.90029'), ('Milan', 0, '32.01876', '-83.06130'), ('Scotland', 0, '32.04741', '-82.82199'), ('Temperance', 0, '31.88912', '-83.14588'), ('Towns', 0, '32.00600', '-82.75360'), ('Workmore', 0, '31.93572', '-82.93895')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ111': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alamo', 0, '32.14748', '-82.77836'), ('Glenwood', 0, '32.18000', '-82.67221'), ('Jordan', 0, '32.03484', '-82.66861'), ('Landsburg', 0, '32.23466', '-82.69312'), ('Little Ocmulgee State Park', 0, '32.09451', '-82.89007'), ('Spring Hill', 0, '32.01311', '-82.72559')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ112': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ailey', 0, '32.18692', '-82.56634'), ('Alston', 0, '32.08026', '-82.47741'), ('Charlotteville', 0, '32.01078', '-82.52435'), ('Higgston', 0, '32.21757', '-82.46731'), ('Kibbee', 0, '32.28703', '-82.52490'), ('Mount Vernon', 0, '32.17832', '-82.59464'), ('Tarrytown', 0, '32.31874', '-82.55972'), ('Uvalda', 0, '32.03595', '-82.50828')], 'partOfState': 'central', 'wfo': 'FFC'}, +'GAZ113': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cedar Crossing', 0, '32.02260', '-82.40759'), ('Center', 0, '32.12824', '-82.39696'), ('English Eddy', 0, '31.96949', '-82.35650'), ('Grays Landing', 0, '31.96850', '-82.42960'), ('Johnson Corner', 0, '32.06525', '-82.30112'), ('Lyons', 0, '32.20361', '-82.32164'), ('McNatt Falls', 0, '31.97399', '-82.47709'), ('New Branch', 0, '32.08240', '-82.25156'), ('Normantown', 0, '32.30644', '-82.37094'), ('Ohoopee', 0, '32.18006', '-82.22019'), ('Ponderosa', 0, '32.19255', '-82.25489'), ('Rock Springs', 0, '32.07704', '-82.41081'), ('Santa Claus', 0, '32.17126', '-82.33255'), ('South Thompson', 0, '32.10813', '-82.37136'), ('Toombs Central', 0, '32.04772', '-82.34777'), ('Vidalia', 0, '32.21647', '-82.41064')], 'partOfState': 'southeast', 'wfo': 'FFC'}, +'GAZ114': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Altamaha', 2235, '31.96140', '-82.20750'), ('Cobbtown', 311, '32.28030', '-82.13890'), ('Collins', 528, '32.18110', '-82.10920'), ('Daniels', 130, '32.08110', '-81.98030'), ('Five Points', 3641, '31.92190', '-82.03420'), ('Glennville', 3641, '31.93640', '-81.92860'), ('Hughland', 2235, '32.04500', '-82.05500'), ('Lynn', 3641, '31.97250', '-81.96190'), ('Manassas', 100, '32.16030', '-82.01970'), ('Mendes', 3641, '31.99860', '-81.97420'), ('Midway', 3641, '32.03140', '-81.89360'), ('Reidsville', 2235, '32.08670', '-82.11810'), ('Tison', 3641, '31.93830', '-82.02080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ115': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bay Branch', 130, '32.08640', '-81.97580'), ('Bellville', 130, '32.15220', '-81.97440'), ('Claxton', 2276, '32.16140', '-81.90420'), ('Daisy', 126, '32.15170', '-81.83470'), ('Edna', 126, '32.23110', '-81.83080'), ('Hagan', 898, '32.15580', '-81.93390'), ('Jennie', 898, '32.05060', '-81.88920'), ('Undine', 130, '32.22720', '-81.97970')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ116': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Belfast', 6959, '31.82420', '-81.29190'), ('Blitchton', 917, '32.19690', '-81.43810'), ('Brisbon', 6959, '31.91690', '-81.30640'), ('Daniel', 6959, '31.91360', '-81.36440'), ('Ellabell', 2379, '32.12330', '-81.48580'), ('Groveland', 126, '32.14420', '-81.74580'), ('Keller', 6959, '31.84310', '-81.25390'), ('Lanier', 2379, '32.12970', '-81.53690'), ('Letford', 2379, '32.03860', '-81.60140'), ('Pembroke', 2379, '32.13580', '-81.62220'), ('Port Royal', 6959, '31.90360', '-81.29580'), ('Rabbit Hill', 6959, '31.90610', '-81.26940'), ('Reka', 2379, '32.13920', '-81.67750'), ('Richmond Hill', 6959, '31.93810', '-81.30360'), ('Sweet Hill', 6959, '31.84830', '-81.24250')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ116': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Belfast', 6959, '31.82420', '-81.29190'), ('Blitchton', 917, '32.19690', '-81.43810'), ('Brisbon', 6959, '31.91690', '-81.30640'), ('Daniel', 6959, '31.91360', '-81.36440'), ('Ellabell', 2379, '32.12330', '-81.48580'), ('Groveland', 126, '32.14420', '-81.74580'), ('Keller', 6959, '31.84310', '-81.25390'), ('Lanier', 2379, '32.12970', '-81.53690'), ('Letford', 2379, '32.03860', '-81.60140'), ('Pembroke', 2379, '32.13580', '-81.62220'), ('Port Royal', 6959, '31.90360', '-81.29580'), ('Rabbit Hill', 6959, '31.90610', '-81.26940'), ('Reka', 2379, '32.13920', '-81.67750'), ('Richmond Hill', 6959, '31.93810', '-81.30360'), ('Sweet Hill', 6959, '31.84830', '-81.24250')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ117': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Fort Mcallister', 10599, '31.89060', '-81.19610'), ('Oak Level', 6959, '31.85560', '-81.22530')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ117': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Fort Mcallister', 10599, '31.89060', '-81.19610'), ('Oak Level', 6959, '31.85560', '-81.22530')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ118': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alabama Junction', 11289, '32.07580', '-81.14030'), ('Bloomingdale', 2665, '32.13220', '-81.29920'), ('Burroughs', 10599, '31.97470', '-81.24780'), ('Central Junction', 11289, '32.09000', '-81.16440'), ('Chatham City', 11289, '32.10030', '-81.15440'), ('Clearview', 11289, '32.09110', '-81.12060'), ('Garden City', 11289, '32.10000', '-81.17500'), ('Georgetown', 10599, '31.98310', '-81.22750'), ('Grubbs', 131510, '32.01030', '-81.18110'), ('Hamer', 11289, '32.09390', '-81.20780'), ('Hunter Army Air Field', 131510, '32.00970', '-81.14570'), ('Lamarville', 131510, '32.03360', '-81.14860'), ('Liberty City', 131510, '32.04750', '-81.13780'), ('Meinhard', 3276, '32.18140', '-81.21110'), ('Monteith', 3276, '32.18030', '-81.19030'), ("O'leary", 3276, '32.21060', '-81.17610'), ('Pooler', 6239, '32.11530', '-81.24720'), ('Port Wentworth', 3276, '32.14990', '-81.18000'), ('Richfield', 131510, '32.04080', '-81.13280'), ('Silk Hope', 131510, '32.04280', '-81.19190'), ('Tutens', 6239, '32.10500', '-81.25390'), ('Union Junction', 131510, '32.05000', '-81.12670'), ('Wheat Hill', 11289, '32.10580', '-81.15640'), ('Williams', 6239, '32.10610', '-81.25220'), ('Windward', 10599, '31.97440', '-81.18640')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ118': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alabama Junction', 11289, '32.07580', '-81.14030'), ('Bloomingdale', 2665, '32.13220', '-81.29920'), ('Burroughs', 10599, '31.97470', '-81.24780'), ('Central Junction', 11289, '32.09000', '-81.16440'), ('Chatham City', 11289, '32.10030', '-81.15440'), ('Clearview', 11289, '32.09110', '-81.12060'), ('Garden City', 11289, '32.10000', '-81.17500'), ('Georgetown', 10599, '31.98310', '-81.22750'), ('Grubbs', 131510, '32.01030', '-81.18110'), ('Hamer', 11289, '32.09390', '-81.20780'), ('Hunter Army Air Field', 131510, '32.00970', '-81.14570'), ('Lamarville', 131510, '32.03360', '-81.14860'), ('Liberty City', 131510, '32.04750', '-81.13780'), ('Meinhard', 3276, '32.18140', '-81.21110'), ('Monteith', 3276, '32.18030', '-81.19030'), ("O'leary", 3276, '32.21060', '-81.17610'), ('Pooler', 6239, '32.11530', '-81.24720'), ('Port Wentworth', 3276, '32.14990', '-81.18000'), ('Richfield', 131510, '32.04080', '-81.13280'), ('Silk Hope', 131510, '32.04280', '-81.19190'), ('Tutens', 6239, '32.10500', '-81.25390'), ('Union Junction', 131510, '32.05000', '-81.12670'), ('Wheat Hill', 11289, '32.10580', '-81.15640'), ('Williams', 6239, '32.10610', '-81.25220'), ('Windward', 10599, '31.97440', '-81.18640')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ119': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bethesda', 4134, '31.96310', '-81.09420'), ('Bona Bella', 2340, '32.01390', '-81.06610'), ('Burnside', 4134, '31.94390', '-81.11080'), ('Cresthill', 2605, '31.98970', '-81.08750'), ('Edgemere', 2340, '32.03920', '-81.08780'), ('Fairfield', 2340, '32.03250', '-81.09080'), ('Fernwood', 2340, '32.03190', '-81.06440'), ('Fleetwood', 2340, '32.03110', '-81.07330'), ('Golden Isles', 14213, '32.02500', '-80.96860'), ('Gordonston', 2340, '32.05500', '-81.06640'), ('Isle Of Armstrong', 2340, '32.03750', '-81.03970'), ('Isle Of Hope', 2605, '31.98170', '-81.06110'), ('Lepageville', 2340, '32.07170', '-81.05920'), ('Lynhurst', 138, '31.99220', '-81.11170'), ('Mount Herman', 138, '31.95330', '-81.14560'), ('Ossabaw Island', 4134, '31.79360', '-81.12970'), ('Parkersburg', 2605, '31.98440', '-81.05220'), ('Pin Point', 4134, '31.95310', '-81.09250'), ('Ridgewood', 131510, '32.03330', '-81.09860'), ('Rio Vista', 4134, '31.92920', '-81.08810'), ('Riverside', 5824, '32.04500', '-81.00000'), ('Sandfly', 2605, '31.98940', '-81.07640'), ('Savannah', 131510, '32.05000', '-81.08330'), ('Savannah Beach', 3392, '31.99360', '-80.84860'), ('Skidaway Island', 6914, '31.93330', '-81.05000'), ('Tatumsville', 131510, '32.03720', '-81.11500'), ('Thunderbolt', 2340, '32.03330', '-81.05000'), ('Turners Rock', 5824, '32.01310', '-81.00560'), ('Tybee Island', 3392, '32.00000', '-80.84980'), ('Vernonburg', 138, '31.96560', '-81.12030'), ('White Bluff', 138, '31.98750', '-81.12890'), ('Wilmington', 14213, '31.98170', '-80.99720'), ('Wilmington Island', 14213, '32.00830', '-80.98330'), ('Windsor Forest', 138, '31.97640', '-81.13250'), ('Wormsloe', 2605, '31.97640', '-81.06280'), ('Wymberly', 2605, '31.97580', '-81.06110')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ119': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bethesda', 4134, '31.96310', '-81.09420'), ('Bona Bella', 2340, '32.01390', '-81.06610'), ('Burnside', 4134, '31.94390', '-81.11080'), ('Cresthill', 2605, '31.98970', '-81.08750'), ('Edgemere', 2340, '32.03920', '-81.08780'), ('Fairfield', 2340, '32.03250', '-81.09080'), ('Fernwood', 2340, '32.03190', '-81.06440'), ('Fleetwood', 2340, '32.03110', '-81.07330'), ('Golden Isles', 14213, '32.02500', '-80.96860'), ('Gordonston', 2340, '32.05500', '-81.06640'), ('Isle Of Armstrong', 2340, '32.03750', '-81.03970'), ('Isle Of Hope', 2605, '31.98170', '-81.06110'), ('Lepageville', 2340, '32.07170', '-81.05920'), ('Lynhurst', 138, '31.99220', '-81.11170'), ('Mount Herman', 138, '31.95330', '-81.14560'), ('Ossabaw Island', 4134, '31.79360', '-81.12970'), ('Parkersburg', 2605, '31.98440', '-81.05220'), ('Pin Point', 4134, '31.95310', '-81.09250'), ('Ridgewood', 131510, '32.03330', '-81.09860'), ('Rio Vista', 4134, '31.92920', '-81.08810'), ('Riverside', 5824, '32.04500', '-81.00000'), ('Sandfly', 2605, '31.98940', '-81.07640'), ('Savannah', 131510, '32.05000', '-81.08330'), ('Savannah Beach', 3392, '31.99360', '-80.84860'), ('Skidaway Island', 6914, '31.93330', '-81.05000'), ('Tatumsville', 131510, '32.03720', '-81.11500'), ('Thunderbolt', 2340, '32.03330', '-81.05000'), ('Turners Rock', 5824, '32.01310', '-81.00560'), ('Tybee Island', 3392, '32.00000', '-80.84980'), ('Vernonburg', 138, '31.96560', '-81.12030'), ('White Bluff', 138, '31.98750', '-81.12890'), ('Wilmington', 14213, '31.98170', '-80.99720'), ('Wilmington Island', 14213, '32.00830', '-80.98330'), ('Windsor Forest', 138, '31.97640', '-81.13250'), ('Wormsloe', 2605, '31.97640', '-81.06280'), ('Wymberly', 2605, '31.97580', '-81.06110')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ120': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bonapartes Retreat', 0, '31.79306', '-85.12453'), ('Crossroads', 13220, '31.83330', '-84.99150'), ('Georgetown', 973, '31.88468', '-85.10634'), ('Hatcher', 13220, '31.81551', '-85.00953'), ('Morris', 149, '31.79360', '-84.94790'), ('Union', 3731, '31.87480', '-84.93760'), ('Wire Bridge', 13220, '31.84610', '-85.07490')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ121': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bagby State Park', 1110, '31.73890', '-85.07460'), ('Bellville', 0, '31.59448', '-84.90028'), ('Bethel', 149, '31.67810', '-84.95900'), ('Bluffton', 118, '31.52000', '-84.86700'), ('Cotton Hill', 149, '31.72940', '-84.96660'), ('Days Crossroads', 1110, '31.72050', '-85.04380'), ('Fort Gaines', 1110, '31.62389', '-85.04596'), ('Fort Gaines-Clay Airport', 0, '31.63903', '-85.04148'), ('Garnersville', 149, '31.75180', '-84.99910'), ('Harrisons Mill', 118, '31.54670', '-84.88590'), ('Jones Crossing', 1110, '31.64020', '-84.97250'), ('Moores Crossroads', 1110, '31.74300', '-85.01730'), ('Pecan', 1110, '31.63920', '-84.99250'), ('Ricks Place', 1110, '31.76862', '-85.09188'), ('Standleys Store', 1110, '31.70284', '-85.07493'), ('Suttons Corner', 118, '31.59970', '-84.84430'), ('Walter F George Lake', 0, '31.67225', '-85.08300'), ('Watson Crossroads', 1110, '31.72820', '-85.01730'), ('Zetto', 149, '31.59200', '-84.93640')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ122': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aycock Mill', 1464, '31.63650', '-84.61360'), ('Benevolence', 3731, '31.88150', '-84.73540'), ('Brooksville', 75, '31.87200', '-84.65680'), ('Carnegie', 1340, '31.64290', '-84.77980'), ('Coleman', 149, '31.67260', '-84.89030'), ('Coles', 3731, '31.75210', '-84.83430'), ('Cuthbert', 3731, '31.77118', '-84.79014'), ('Five Points', 0, '31.70170', '-84.55899'), ('Fountain Bridge', 1340, '31.66260', '-84.68540'), ('Goffs Mill', 1166, '31.70149', '-84.70265'), ('Martins Crossroads', 1166, '31.69560', '-84.63910'), ('Pachitla', 1166, '31.76130', '-84.68150'), ('Peterson Hill', 3731, '31.78030', '-84.84800'), ('Randolph Co A/P', 149, '31.70070', '-84.82520'), ('Shellman', 1166, '31.75630', '-84.61570'), ('Shivers Mill', 3731, '31.67570', '-84.74010'), ('Springvale', 3731, '31.82690', '-84.87970'), ('Springvale Station', 3731, '31.79930', '-84.89230'), ('Wades', 3731, '31.85216', '-84.75095'), ('White House', 3731, '31.81270', '-84.78490')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ123': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Arlington', 1602, '31.43780', '-84.72540'), ('Bermuda', 666, '31.48800', '-84.49200'), ('Commissary Hill', 1602, '31.44870', '-84.66680'), ('Cordrays Mill', 1464, '31.58760', '-84.56350'), ('Dickey', 1464, '31.55650', '-84.66080'), ('Edison', 1340, '31.56070', '-84.73810'), ('Holt', 666, '31.50240', '-84.45380'), ('Leary', 666, '31.48490', '-84.51280'), ('Morgan', 1464, '31.53740', '-84.59940'), ('Moye', 1340, '31.61010', '-84.77690'), ('Oak Hill', 666, '31.60140', '-84.47730'), ('Parksville', 1340, '31.50840', '-84.76360'), ('Turman', 1340, '31.50010', '-84.72890'), ('Williamsburg', 1464, '31.46410', '-84.59850')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ124': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bridges Crossroad', 393, '31.76460', '-84.35380'), ('Bronwood', 513, '31.83080', '-84.36400'), ('Chambliss', 0, '31.91918', '-84.54393'), ('Chickasawhatchee', 393, '31.70000', '-84.37460'), ('Clarks Mill', 5058, '31.64280', '-84.46660'), ('Dawson', 5058, '31.77170', '-84.44400'), ('Dawson Municipal A/P', 5058, '31.74349', '-84.42042'), ('Doverel', 5058, '31.70110', '-84.52220'), ('Graves', 5058, '31.76988', '-84.52083'), ('Herod', 5058, '31.69860', '-84.44190'), ('Oakville', 156, '31.85140', '-84.46430'), ('Olivers Mill', 513, '31.87080', '-84.33650'), ('Parrott', 156, '31.89390', '-84.51120'), ('Pleasant Hill', 513, '31.87670', '-84.40390'), ('Sasser', 393, '31.71910', '-84.34790'), ('Yeomans', 5058, '31.83420', '-84.46730')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ125': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Acree', 2998, '31.55370', '-83.99440'), ('Albany', 76939, '31.57780', '-84.17560'), ('Ducker', 666, '31.52450', '-84.36640'), ('East Albany', 76939, '31.57560', '-84.12670'), ('Lockett Crossing', 76939, '31.55851', '-84.25142'), ('Pecan City', 2998, '31.51780', '-84.07000'), ('Pretoria', 76939, '31.50380', '-84.31730'), ('Putney', 2998, '31.47936', '-84.10564'), ('Radium Springs', 2998, '31.52650', '-84.13535'), ('South Albany', 0, '31.56805', '-84.17692'), ('Southwest Ga Regional A/P', 76939, '31.53490', '-84.19460'), ('Turner City', 76939, '31.59710', '-84.10810'), ('Walker', 76939, '31.53910', '-84.31520'), ('Williamsburg', 2998, '31.49670', '-84.11550')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ126': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Armena', 393, '31.67037', '-84.28854'), ('Byne Crossroads', 2633, '31.69770', '-84.21970'), ('Century', 2633, '31.67851', '-84.17213'), ('Chokee', 214, '31.89263', '-84.05045'), ('Forrester', 76939, '31.64697', '-84.17098'), ('Jordan Place', 2633, '31.75510', '-84.20850'), ('Leesburg', 2633, '31.73390', '-84.17020'), ('Mossy Dell', 2633, '31.75930', '-84.11290'), ('Neyami', 774, '31.82320', '-84.21530'), ('Oakland', 393, '31.67350', '-84.26000'), ('Palmyra', 76939, '31.63700', '-84.19450'), ('Philema', 430, '31.75250', '-84.01710'), ('Scrutchins', 774, '31.86290', '-84.19690'), ('Smithville', 774, '31.90190', '-84.25540'), ('Starksville', 2633, '31.77128', '-84.14282'), ('Stocks', 0, '31.65564', '-84.09160')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ127': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alfords', 5990, '31.46090', '-83.92390'), ('Anderson City', 828, '31.37080', '-83.85470'), ('Bridgeboro', 828, '31.40090', '-83.97490'), ('Crestwood', 0, '31.47442', '-83.96852'), ('Doles', 430, '31.70302', '-83.88598'), ('Gammage', 5990, '31.54050', '-83.87650'), ('Gordy', 5990, '31.47980', '-83.88010'), ('Isabella', 5990, '31.56800', '-83.85390'), ('Liberty Hill', 828, '31.39970', '-83.93990'), ('Livingston', 828, '31.41480', '-83.94340'), ('Minton', 828, '31.35390', '-83.81890'), ('Oakfield', 430, '31.77630', '-83.97070'), ('Parkerville', 828, '31.43910', '-83.93080'), ('Poulan', 946, '31.51887', '-83.78528'), ('Powelltown', 946, '31.40820', '-83.78470'), ('Pritchetts', 828, '31.36350', '-83.95590'), ('Red Rock', 5990, '31.58120', '-83.93640'), ('Scooterville', 716, '31.38060', '-83.69010'), ('Shingler', 946, '31.58011', '-83.78681'), ('Sumner', 309, '31.50874', '-83.74173'), ('Sylvester', 5990, '31.52860', '-83.83650'), ('Sylvester Airport', 5990, '31.55620', '-83.89436'), ('Tempy', 946, '31.44730', '-83.81820'), ('Terrell', 309, '31.61660', '-83.74520'), ('Warwick', 430, '31.82980', '-83.92040')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ128': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amboy', 246, '31.79220', '-83.58840'), ('Ashburn', 4419, '31.70890', '-83.65270'), ('c', 496, '31.61880', '-83.60610'), ('Coverdale', 496, '31.62790', '-83.71930'), ('Dakota', 456, '31.77560', '-83.69330'), ('Five Points', 0, '31.64431', '-83.76012'), ('Hobby', 4419, '31.66140', '-83.74090'), ('Rebecca', 246, '31.80710', '-83.48700'), ('Sibley', 456, '31.79670', '-83.71030'), ('Sycamore', 496, '31.67020', '-83.63510'), ('Turner Co Airport', 496, '31.68808', '-83.63545'), ('Worth', 4419, '31.74960', '-83.67600')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ129': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Brookfield', 869, '31.41780', '-83.39110'), ('Chula', 15060, '31.54940', '-83.54750'), ('Eldorado', 2074, '31.35165', '-83.48437'), ('Excelsior', 1340, '31.40310', '-83.60830'), ('Fender', 0, '31.36418', '-83.48754'), ('Harding', 15060, '31.52630', '-83.42930'), ('Hillsdale', 716, '31.46630', '-83.59920'), ('Omega', 1340, '31.34061', '-83.59387'), ('Phillipsburg', 887, '31.43564', '-83.52281'), ('Sunsweet', 15060, '31.56820', '-83.56590'), ('Tift Airport', 2074, '31.42770', '-83.49080'), ('Tifton', 15060, '31.45155', '-83.50829'), ('Ty Ty', 716, '31.47200', '-83.65040'), ('Unionville', 2074, '31.43745', '-83.50458'), ('Vanceville', 2074, '31.43160', '-83.44090')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ130': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ashton', 8758, '31.70360', '-83.15610'), ('Bowens Mill', 8758, '31.83957', '-83.20709'), ('Fitzgerald', 8758, '31.71485', '-83.25302'), ('Fitzgerald Municipal A/P', 8758, '31.68330', '-83.27050'), ('Lulaville', 0, '31.77494', '-83.24366'), ('Queensland', 8758, '31.79830', '-83.24032'), ('Red Bluff', 118, '31.77411', '-83.00860'), ('Westwood', 8758, '31.73410', '-83.29270')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ131': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Abba', 8758, '31.75540', '-83.37080'), ('Arp', 246, '31.75460', '-83.40710'), ('Holt', 330, '31.59513', '-83.15100'), ('Irwinville', 8758, '31.64820', '-83.38270'), ('Irwinville Airport', 0, '31.66551', '-83.44451'), ('Mystic', 3270, '31.62265', '-83.33515'), ('Ocilla', 3270, '31.59570', '-83.24920'), ('Osierfield', 320, '31.66640', '-83.11610'), ('Pinetta', 3270, '31.59290', '-83.35860'), ('Waterloo', 15060, '31.59350', '-83.47450'), ('Wray', 320, '31.62190', '-83.05510')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ132': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ambrose', 320, '31.59340', '-83.01370'), ('Broxton', 1428, '31.62380', '-82.88690'), ('Douglas', 10639, '31.50520', '-82.85150'), ('Nicholls', 1008, '31.51820', '-82.63580'), ('Pridgen', 1428, '31.69680', '-82.92310'), ('West Green', 269, '31.60970', '-82.73620')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ133': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Denton', 269, '31.72250', '-82.69650'), ('Hazlehurst', 3787, '31.86590', '-82.59970'), ('Snipesville', 269, '31.75950', '-82.75250')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ134': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alma', 3236, '31.54340', '-82.47620'), ('New Lacy', 3236, '31.53620', '-82.37360')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ135': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baxley', 4150, '31.76470', '-82.35190'), ('Graham', 312, '31.82850', '-82.50390'), ('Pine Grove', 4150, '31.81320', '-82.44760'), ('Plant Hatch', 4150, '31.93000', '-82.34000'), ('Surrency', 237, '31.72180', '-82.19830')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ136': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Broadhurst', 702, '31.47400', '-81.91760'), ('Doctortown', 9279, '31.65060', '-81.83000'), ('Gardi', 9279, '31.53540', '-81.79960'), ('Jesup', 9279, '31.59860', '-81.88940'), ('Mount Pleasant', 1719, '31.43460', '-81.67910'), ('Odum', 414, '31.66530', '-82.02640'), ('Screven', 702, '31.48380', '-82.01710')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ137': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Aimar', 4030, '31.75280', '-81.67170'), ('Beards Creek', 3641, '31.86610', '-81.88560'), ('Donald', 3641, '31.82140', '-81.85030'), ('Elim', 273, '31.79470', '-81.67470'), ('Ludowici', 1440, '31.70780', '-81.74250'), ('Noble', 3641, '31.84640', '-81.92920'), ('Wefanie', 1440, '31.77060', '-81.81640')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ138': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Allenhurst', 788, '31.78390', '-81.60780'), ('Creek Island', 273, '31.82060', '-81.65690'), ('Crossroads', 736, '31.74720', '-81.46330'), ('Dorchester', 1100, '31.79530', '-81.40530'), ('Fleming', 1100, '31.88060', '-81.42670'), ('Flemington', 369, '31.85940', '-81.56420'), ('Fort Stewart', 369, '31.86250', '-81.51780'), ('Gum Branch', 273, '31.85810', '-81.72690'), ('Halfmoon Landing', 736, '31.69940', '-81.27860'), ('Hinesville', 30392, '31.84670', '-81.59610'), ('Lecount', 736, '31.67970', '-81.45890'), ('Limerick', 1100, '31.83670', '-81.38610'), ('Live Oak', 30392, '31.81250', '-81.62440'), ('McIntosh', 369, '31.82560', '-81.52390'), ('Midway', 1100, '31.80560', '-81.43080'), ('Mill Creek', 30392, '31.82920', '-81.62060'), ('Retreat', 736, '31.70280', '-81.41420'), ('Riceboro', 736, '31.73530', '-81.43360'), ('Screven Fork', 736, '31.77310', '-81.49140'), ('Seabrook', 736, '31.74330', '-81.32890'), ('Sunbury', 1100, '31.76810', '-81.28110'), ('Trinity', 11205, '31.92970', '-81.55670'), ('Walthourville', 4030, '31.77390', '-81.63280'), ('Wildwood', 30392, '31.81940', '-81.61530'), ('Willie', 2379, '32.01390', '-81.66750')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ138': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Allenhurst', 788, '31.78390', '-81.60780'), ('Creek Island', 273, '31.82060', '-81.65690'), ('Crossroads', 736, '31.74720', '-81.46330'), ('Dorchester', 1100, '31.79530', '-81.40530'), ('Fleming', 1100, '31.88060', '-81.42670'), ('Flemington', 369, '31.85940', '-81.56420'), ('Fort Stewart', 369, '31.86250', '-81.51780'), ('Gum Branch', 273, '31.85810', '-81.72690'), ('Halfmoon Landing', 736, '31.69940', '-81.27860'), ('Hinesville', 30392, '31.84670', '-81.59610'), ('Lecount', 736, '31.67970', '-81.45890'), ('Limerick', 1100, '31.83670', '-81.38610'), ('Live Oak', 30392, '31.81250', '-81.62440'), ('McIntosh', 369, '31.82560', '-81.52390'), ('Midway', 1100, '31.80560', '-81.43080'), ('Mill Creek', 30392, '31.82920', '-81.62060'), ('Retreat', 736, '31.70280', '-81.41420'), ('Riceboro', 736, '31.73530', '-81.43360'), ('Screven Fork', 736, '31.77310', '-81.49140'), ('Seabrook', 736, '31.74330', '-81.32890'), ('Sunbury', 1100, '31.76810', '-81.28110'), ('Trinity', 11205, '31.92970', '-81.55670'), ('Walthourville', 4030, '31.77390', '-81.63280'), ('Wildwood', 30392, '31.81940', '-81.61530'), ('Willie', 2379, '32.01390', '-81.66750')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ139': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ139': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ140': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ardick', 1719, '31.46110', '-81.43360'), ('Brickston', 736, '31.61220', '-81.49030'), ('Cox', 1719, '31.45500', '-81.56360'), ('Eulonia', 1719, '31.53310', '-81.42720'), ('Fairhope', 1719, '31.53720', '-81.38890'), ('Huxford', 736, '31.55920', '-81.51030'), ('Jones', 736, '31.63360', '-81.48030'), ('Pine Harbor', 1719, '31.54720', '-81.37560'), ('South Newport', 736, '31.63470', '-81.39640'), ('Townsend', 1719, '31.53920', '-81.52280'), ('Warsaw', 736, '31.58970', '-81.49530')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ141': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ashintilly', 1719, '31.39360', '-81.40920'), ('Carnigan', 1719, '31.43420', '-81.39420'), ('Crescent', 1719, '31.50920', '-81.36970'), ('Darien', 1719, '31.37000', '-81.43420'), ('Meridian', 1719, '31.45170', '-81.37810'), ('Raccoon Bluff', 1719, '31.46580', '-81.23530'), ('Ridgeville', 1719, '31.40610', '-81.40170'), ('Sapelo Island', 1719, '31.39720', '-81.27890'), ('Shellman Bluff', 736, '31.57250', '-81.32330'), ('Valona', 1719, '31.47810', '-81.34420')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ141': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Ashintilly', 1719, '31.39360', '-81.40920'), ('Carnigan', 1719, '31.43420', '-81.39420'), ('Crescent', 1719, '31.50920', '-81.36970'), ('Darien', 1719, '31.37000', '-81.43420'), ('Meridian', 1719, '31.45170', '-81.37810'), ('Raccoon Bluff', 1719, '31.46580', '-81.23530'), ('Ridgeville', 1719, '31.40610', '-81.40170'), ('Sapelo Island', 1719, '31.39720', '-81.27890'), ('Shellman Bluff', 736, '31.57250', '-81.32330'), ('Valona', 1719, '31.47810', '-81.34420')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'GAZ142': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blakely', 5696, '31.37910', '-84.93530'), ('Cedar Springs', 493, '31.18340', '-85.03800'), ('Centerville', 5696, '31.27340', '-84.89660'), ('Colomokee', 118, '31.45860', '-84.87920'), ('Cuba', 5696, '31.29860', '-84.85843'), ('Damascus', 277, '31.29840', '-84.71750'), ('Douglasville', 20065, '31.35840', '-84.67090'), ('Early Co A/P', 5696, '31.39560', '-84.89250'), ('Ferrell Crossroads', 118, '31.48290', '-84.91610'), ('Hentown', 277, '31.27890', '-84.83700'), ('Hilton', 922, '31.28640', '-85.06540'), ('Howards Mill', 157, '31.15630', '-84.99470'), ('Jakin', 157, '31.08636', '-84.98445'), ('Jones Crossroads', 157, '31.17300', '-84.93770'), ('Killarney', 157, '31.13610', '-84.94140'), ('Kolomoki Mounds Sp', 118, '31.46720', '-84.92820'), ('Nicholasville', 1602, '31.40260', '-84.67000'), ('Old Damascus', 277, '31.30570', '-84.73700'), ('Rock Hill', 922, '31.32198', '-85.02949'), ('Rowena', 1602, '31.37900', '-84.71300'), ('Saffold', 157, '31.12216', '-85.03714'), ('Sawhatchee', 922, '31.27560', '-85.02790')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ143': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Babcock', 1939, '31.11080', '-84.64180'), ('Bellview', 1939, '31.15600', '-84.59990'), ('Boykin', 1939, '31.10430', '-84.68680'), ('Colquitt', 1939, '31.17140', '-84.73420'), ('Cooktown', 1939, '31.20580', '-84.56050'), ('Enterprise', 2796, '31.12293', '-84.82638'), ('Harmony Church Rd/Hwy 45', 1939, '31.23430', '-84.73054'), ('Jeterville', 277, '31.24170', '-84.70630'), ('Macedonia', 277, '31.24580', '-84.66150'), ('Mayhaw', 2796, '31.17630', '-84.87550')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ144': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bethany', 277, '31.30640', '-84.60000'), ('Crestview', 277, '31.33140', '-84.61850'), ('Elmodel Wma', 851, '31.34520', '-84.47690'), ('Hawkinstown', 851, '31.26200', '-84.45040'), ('Hoggard Mill', 851, '31.21694', '-84.47172'), ('Iveys Mill', 666, '31.39110', '-84.58620'), ('Milford', 666, '31.38130', '-84.54390'), ('Mimsville', 277, '31.25450', '-84.52830'), ('Newton', 851, '31.31640', '-84.33670'), ('Patmos', 666, '31.37470', '-84.56520'), ('Red Store Crossroads', 851, '31.40390', '-84.27620')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ145': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Baconton', 804, '31.37926', '-84.16275'), ('Branchville', 5669, '31.14980', '-84.31570'), ('Camilla', 5669, '31.22970', '-84.21010'), ('Cotton', 4126, '31.16160', '-84.06660'), ('Flint', 804, '31.31710', '-84.17483'), ('Freeman', 0, '31.35135', '-84.05989'), ('Greenough', 804, '31.31520', '-84.10140'), ('Hinsonton', 319, '31.18061', '-84.03312'), ('Hopeful', 851, '31.16750', '-84.39270'), ('Laney', 0, '31.20789', '-84.03346'), ('Lester', 319, '31.36830', '-84.04500'), ('Mitchell Co A/P', 5669, '31.21290', '-84.23740'), ('Pelham', 4126, '31.12650', '-84.15210'), ('Sale City', 319, '31.26280', '-84.02230')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ146': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Autreyville', 711, '31.06060', '-83.76520'), ('Bay', 426, '31.19040', '-83.92680'), ('Berlin', 595, '31.07239', '-83.61976'), ('Center Hill', 426, '31.13770', '-83.89810'), ('Cool Spring', 0, '31.22903', '-83.60232'), ('Crosland', 849, '31.30410', '-83.64360'), ('Doerun', 828, '31.31910', '-83.91800'), ('Ellenton', 336, '31.17640', '-83.58810'), ('Funston', 426, '31.20020', '-83.87330'), ('Hartsfield', 319, '31.21650', '-83.97610'), ('Minnesota', 0, '31.31284', '-83.90963'), ('Moultrie', 14387, '31.17865', '-83.78851'), ('Moultrie Municipal A/P', 14387, '31.08450', '-83.80570'), ('Murphy', 0, '31.07046', '-83.82506'), ('New Elm', 828, '31.29230', '-83.81940'), ('Norman Park', 849, '31.26890', '-83.68643'), ('Pineboro', 0, '31.17768', '-83.67329'), ('Poplar Arbor Church', 0, '31.26150', '-83.97230'), ('Schley', 0, '31.23809', '-83.82582'), ('Sigsbee', 426, '31.26552', '-83.85974'), ('South Moultrie', 0, '31.15579', '-83.77372'), ('Spence Airport', 14387, '31.13603', '-83.69885'), ('Ticknor', 828, '31.32856', '-83.93166')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ147': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Adel', 5307, '31.13620', '-83.42225'), ('Barneyville', 1755, '31.21310', '-83.45420'), ('Cecil', 265, '31.04560', '-83.39310'), ('Cook Co A/P', 5307, '31.13750', '-83.45130'), ('Flat Ford', 889, '31.22366', '-83.50583'), ('Greggs', 5307, '31.06842', '-83.48451'), ('Laconte', 1755, '31.20940', '-83.44730'), ('Lenox', 889, '31.28028', '-83.46755'), ('Massee', 1755, '31.18900', '-83.35740'), ('Pine Valley', 5307, '31.08640', '-83.47350'), ('Reed Bingham State Park', 336, '31.16650', '-83.53930'), ('Sparks', 1755, '31.16760', '-83.44000'), ('Staunton', 889, '31.27152', '-83.46551'), ('Wagon Wheel', 889, '31.23580', '-83.46210')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ148': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Alapaha', 682, '31.38320', '-83.22370'), ('Allenville', 746, '31.12790', '-83.21430'), ('Bannockburn', 1434, '31.28370', '-83.06415'), ('Berrien Co A/P', 4697, '31.21200', '-83.22790'), ('Cottle', 4697, '31.20040', '-83.31480'), ('Enigma', 869, '31.41314', '-83.32789'), ('Gladys', 682, '31.46890', '-83.23780'), ('Glory', 682, '31.37089', '-83.14446'), ('Nashville', 4697, '31.20440', '-83.24920'), ('New Lois', 0, '31.08481', '-83.26933'), ('Ray City', 746, '31.07480', '-83.19670'), ('Weber', 4697, '31.23640', '-83.13990')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ149': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Axson', 1805, '31.27440', '-82.73660'), ('Pearson', 1805, '31.29720', '-82.85320'), ('Willacoochee', 1434, '31.34020', '-83.04620')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ150': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Bickley', 1008, '31.40540', '-82.60310'), ('Deenwood', 1836, '31.24720', '-82.36600'), ('Dixie Union', 1836, '31.33680', '-82.46390'), ('Manor', 151, '31.10170', '-82.57400'), ('Millwood', 151, '31.26570', '-82.66200'), ('Needham', 15333, '31.15590', '-82.42870'), ('Sunnyside', 1385, '31.23920', '-82.34210'), ('Waresboro', 1836, '31.24740', '-82.47440'), ('Waycross', 15333, '31.21190', '-82.35770')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ151': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Blackshear', 3283, '31.29890', '-82.24170'), ('Bristol', 627, '31.44850', '-82.21490'), ('Patterson', 627, '31.38420', '-82.13800')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ152': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Atkinson', 930, '31.22080', '-81.85400'), ('Hickox', 930, '31.14750', '-81.99720'), ('Hoboken', 463, '31.18140', '-82.13170'), ('Hortense', 930, '31.33440', '-81.95750'), ('Nahunta', 930, '31.20880', '-81.98120'), ('Raybon', 930, '31.25970', '-81.97270'), ('Waynesville', 930, '31.22700', '-81.79060')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ153': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Everett', 1719, '31.38730', '-81.63990'), ('Thalmann', 6951, '31.29060', '-81.68900')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ154': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Boys Estate', 1719, '31.31650', '-81.47290'), ('Country Club Estate', 7594, '31.21250', '-81.46440'), ('Dock Junction', 6951, '31.20220', '-81.51690'), ('Glynn Haven', 13381, '31.18830', '-81.37690'), ('Jekyll Island', 15600, '31.04140', '-81.41730'), ('Sea Island', 13381, '31.18330', '-81.35000'), ('St. Simons', 13381, '31.17680', '-81.38450')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ155': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Davis Park', 2796, '31.02980', '-84.87640'), ('Desser', 321, '30.88580', '-84.86290'), ('Donaldsonville A/P', 2796, '31.00630', '-84.87770'), ('Donalsonville', 2796, '31.04070', '-84.87850'), ('Drakes Still', 0, '30.81072', '-84.90707'), ('Fairchild', 1746, '30.82310', '-84.90680'), ('Iron City', 321, '31.01300', '-84.81380'), ('Lake Seminole', 0, '30.74201', '-84.87536'), ('Lela', 321, '30.98290', '-84.86310'), ('Little Hope', 2796, '31.01020', '-84.91000'), ('Reynoldsville', 225, '30.85640', '-84.77820'), ('Riverturn', 2796, '30.98890', '-84.94760'), ('Seminole State Park', 1746, '30.79180', '-84.87920'), ('Sharphagen', 321, '31.01840', '-84.82910'), ('Steam Mill', 0, '30.97155', '-84.97050')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ155': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Davis Park', 2796, '31.02980', '-84.87640'), ('Desser', 321, '30.88580', '-84.86290'), ('Donaldsonville A/P', 2796, '31.00630', '-84.87770'), ('Donalsonville', 2796, '31.04070', '-84.87850'), ('Drakes Still', 0, '30.81072', '-84.90707'), ('Fairchild', 1746, '30.82310', '-84.90680'), ('Iron City', 321, '31.01300', '-84.81380'), ('Lake Seminole', 0, '30.74201', '-84.87536'), ('Lela', 321, '30.98290', '-84.86310'), ('Little Hope', 2796, '31.01020', '-84.91000'), ('Reynoldsville', 225, '30.85640', '-84.77820'), ('Riverturn', 2796, '30.98890', '-84.94760'), ('Seminole State Park', 1746, '30.79180', '-84.87920'), ('Sharphagen', 321, '31.01840', '-84.82910'), ('Steam Mill', 0, '30.97155', '-84.97050')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ156': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amsterdam', 492, '30.72700', '-84.43480'), ('Attapulgus', 492, '30.74930', '-84.48460'), ('Ausmac', 11722, '30.99530', '-84.62470'), ('Bainbridge', 11722, '30.90600', '-84.57770'), ('Bethany', 225, '30.85723', '-84.73574'), ('Brinson', 225, '30.97880', '-84.73384'), ('Climax', 297, '30.87560', '-84.43130'), ('Cyrene', 225, '30.96070', '-84.69240'), ('Decatur Co A/P', 11722, '30.97090', '-84.63730'), ('Eldorendo', 225, '31.04320', '-84.65200'), ('Faceville', 1981, '30.75340', '-84.63970'), ('Fowlstown', 492, '30.80049', '-84.55021'), ('Hanover', 11722, '30.93450', '-84.64968'), ('Jinks', 4382, '30.71480', '-84.82390'), ('Laingkat', 492, '30.71770', '-84.48870'), ('Lynn', 11722, '30.97750', '-84.61520'), ('Mount Pleasant', 297, '31.02240', '-84.46020'), ('Recovery', 4382, '30.75972', '-84.72779'), ('Steinham Store', 11722, '31.02270', '-84.54580'), ('Vada', 297, '31.07730', '-84.41340'), ('West Bainbridge', 11722, '30.91905', '-84.58456')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ156': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Amsterdam', 492, '30.72700', '-84.43480'), ('Attapulgus', 492, '30.74930', '-84.48460'), ('Ausmac', 11722, '30.99530', '-84.62470'), ('Bainbridge', 11722, '30.90600', '-84.57770'), ('Bethany', 225, '30.85723', '-84.73574'), ('Brinson', 225, '30.97880', '-84.73384'), ('Climax', 297, '30.87560', '-84.43130'), ('Cyrene', 225, '30.96070', '-84.69240'), ('Decatur Co A/P', 11722, '30.97090', '-84.63730'), ('Eldorendo', 225, '31.04320', '-84.65200'), ('Faceville', 1981, '30.75340', '-84.63970'), ('Fowlstown', 492, '30.80049', '-84.55021'), ('Hanover', 11722, '30.93450', '-84.64968'), ('Jinks', 4382, '30.71480', '-84.82390'), ('Laingkat', 492, '30.71770', '-84.48870'), ('Lynn', 11722, '30.97750', '-84.61520'), ('Mount Pleasant', 297, '31.02240', '-84.46020'), ('Recovery', 4382, '30.75972', '-84.72779'), ('Steinham Store', 11722, '31.02270', '-84.54580'), ('Vada', 297, '31.07730', '-84.41340'), ('West Bainbridge', 11722, '30.91905', '-84.58456')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ157': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Akridge', 605, '30.98275', '-84.16552'), ('Beachton', 9239, '30.72680', '-84.13970'), ('Boydville', 631, '30.87990', '-84.35530'), ('Cairo', 9239, '30.87930', '-84.20600'), ('Calvary', 1654, '30.72490', '-84.34660'), ('Capel', 9239, '30.97310', '-84.19880'), ('Elpino', 9239, '30.99540', '-84.23130'), ('Grady Co A/P', 9239, '30.88740', '-84.15470'), ('Harrells Still', 631, '31.01560', '-84.35550'), ('Moncrief', 9239, '30.71160', '-84.13800'), ('Nickleville', 631, '30.80410', '-84.33550'), ('Peoples Still', 631, '30.98950', '-84.31230'), ('Pine Park', 9239, '30.85150', '-84.10420'), ('Princes Still', 9239, '30.79730', '-84.25460'), ('Reno', 631, '30.77310', '-84.29330'), ('Rocky Hill', 9239, '30.70100', '-84.21050'), ('Spence', 1090, '31.03120', '-84.16420'), ('Whigham', 631, '30.88360', '-84.32460')], 'partOfState': 'southwest', 'wfo': 'TAE'}, +'GAZ158': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Boston', 1417, '30.79170', '-83.79080'), ('Chastain', 0, '31.03346', '-83.93153'), ('Coolidge', 552, '31.01050', '-83.86670'), ('Dawesville', 0, '30.92171', '-84.01383'), ('Dillon', 18162, '30.89800', '-83.89360'), ('Eason', 1417, '30.80920', '-83.84960'), ('Enon', 0, '31.01308', '-83.80165'), ('Everett', 0, '30.70425', '-83.80467'), ('Five Points', 444, '30.87700', '-83.79870'), ('Hollis', 0, '30.92290', '-83.73985'), ('Merrillville', 552, '30.94900', '-83.88008'), ('Metcalf', 18162, '30.70100', '-83.98890'), ('Newark', 0, '30.82582', '-83.89377'), ('Ochlocknee', 605, '30.97520', '-84.05080'), ('Pasco', 18162, '30.91432', '-83.98188'), ('Patten', 0, '30.91718', '-83.81600'), ('Quality', 0, '31.04328', '-84.07574'), ('Thomasville', 18162, '30.83910', '-83.97890'), ('Thomasville Municipal A/P', 552, '30.90030', '-83.88110')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ159': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barney', 634, '31.00760', '-83.51570'), ('Barwick', 444, '30.89210', '-83.73960'), ('Blue Springs', 4638, '30.79234', '-83.46006'), ('Brooks Co A/P', 4638, '30.80550', '-83.58470'), ('Dixie', 4638, '30.78518', '-83.66406'), ('Empress', 4638, '30.67140', '-83.56610'), ('Grooverville', 1417, '30.72080', '-83.72730'), ('Morven', 634, '30.94260', '-83.50070'), ('Nankin', 4638, '30.66542', '-83.46993'), ('Oaklawn', 0, '30.84904', '-83.73967'), ('Pavo', 711, '30.96010', '-83.73760'), ('Pidcock', 1417, '30.78280', '-83.70770'), ('Quitman', 4638, '30.78530', '-83.56030'), ('Sand Hill', 595, '30.98450', '-83.65060')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ160': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Barretts', 993, '31.00130', '-83.19940'), ('Clyattville', 549, '30.69270', '-83.31610'), ('Dasher', 834, '30.74700', '-83.21840'), ('Hahira', 1626, '30.99030', '-83.37280'), ('I-75 At Exit 11', 0, '30.75090', '-83.27359'), ('I-75 At Exit 16', 847, '30.81800', '-83.31670'), ('I-75 At Exit 22', 0, '30.89486', '-83.35563'), ('I-75 At Exit 29', 0, '30.99223', '-83.38811'), ('I-75 At Exit 5', 0, '30.68018', '-83.22300'), ('Kinderlou', 847, '30.80150', '-83.36590'), ('Lake Park', 549, '30.68460', '-83.18780'), ('Moody AFB', 993, '30.97862', '-83.18852'), ('Naylor', 110, '30.90670', '-83.07900'), ('Remerton', 847, '30.84380', '-83.30940'), ('Twin Lakes', 549, '30.69390', '-83.20920'), ('Valdosta', 43724, '30.84940', '-83.27840'), ('Valdosta Regional Airport', 43724, '30.78220', '-83.27670')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ161': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Courthouse', 2730, '31.08470', '-83.02100'), ('Greenwood', 110, '30.94788', '-82.97430'), ('Hansell', 0, '31.02756', '-83.06649'), ('Lakeland', 2730, '31.04070', '-83.07490'), ('Meigs', 0, '31.07094', '-83.09062'), ('Stockton', 110, '30.93850', '-83.00120'), ('Teeterville', 746, '31.11250', '-83.14430')], 'partOfState': 'south central', 'wfo': 'TAE'}, +'GAZ162': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Mayday', 110, '30.82730', '-83.00930'), ('Needmore', 2099, '30.67890', '-82.67500'), ('Statenville', 712, '30.70080', '-83.03000')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ163': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Argyle', 151, '31.07370', '-82.64940'), ('Cogdell', 151, '31.16400', '-82.71900'), ('Du Pont', 139, '30.98920', '-82.86990'), ('Fargo', 380, '30.68510', '-82.56230'), ('Homerville', 2803, '31.03610', '-82.75360')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ164': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Folkston', 2178, '30.83700', '-82.00910'), ('Homeland', 765, '30.85500', '-82.02430'), ('Race Pond', 765, '31.00010', '-82.13050'), ('Stephen Foster State Park', 765, '30.82000', '-82.34000'), ('St. George', 1751, '30.51870', '-82.04210'), ('Winokur', 930, '31.03620', '-82.02190')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ165': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Colesburg', 1218, '30.92350', '-81.71650'), ('Tarboro', 1218, '31.01490', '-81.80710'), ('Waverly', 1218, '31.09360', '-81.72490'), ('Woodbine', 1218, '30.95910', '-81.72170')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GAZ166': {'fullStateName': 'Georgia', 'state': 'GA', 'cities': [('Cumberland Island', 2599, '30.83100', '-81.45220'), ('Dover Bluff', 15600, '31.01700', '-81.52730'), ('Dungeness', 8765, '30.74000', '-81.47000'), ('Harrietts Bluff', 2599, '30.87120', '-81.58590'), ('High Point', 2599, '30.94000', '-81.42000'), ('Kings Bay Base', 2599, '30.79000', '-81.51000'), ('Kingsland', 10506, '30.79130', '-81.66310')], 'partOfState': 'southeast', 'wfo': 'JAX'}, +'GUZ001': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('Agana Heights', 3732, '13.46270', '144.74390'), ('Agat', 3988, '13.38240', '144.65780'), ('Andersen AFB', 3506, '13.56270', '144.92710'), ('Apra Harbor', 3347, '13.42660', '144.64720'), ('Asan', 1002, '13.46710', '144.71530'), ('Barrigada', 4417, '13.46160', '144.79470'), ('Barrigada Heights', 1105, '13.48770', '144.82340'), ('Chalan Pago', 2666, '13.43630', '144.77040'), ('Dededo', 3181, '13.51700', '144.83620'), ('Finegayan Station', 1696, '13.56880', '144.83530'), ('Hagatna', 1122, '13.47510', '144.74840'), ('Inarajan', 686, '13.27610', '144.73760'), ('Latte Heights', 1437, '13.48830', '144.84090'), ('Maina', 928, '13.45530', '144.72950'), ('Maite', 949, '13.47570', '144.76210'), ('Mangilao', 7794, '13.44160', '144.80170'), ('Marbo Annex', 1351, '13.50660', '144.86520'), ('Merizo', 1587, '13.26780', '144.67030'), ('Mongmong', 3307, '13.47060', '144.76520'), ('Nimitz Hill Annex', 44, '13.45920', '144.72480'), ('Ordot', 3257, '13.44670', '144.77440'), ('Piti', 706, '13.46470', '144.69540'), ('Santa Rita', 1205, '13.38730', '144.66930'), ('Santa Rosa', 542, '13.39710', '144.67120'), ('Sinajana', 2101, '13.45960', '144.75260'), ('Talofofo', 2340, '13.35560', '144.75340'), ('Tamuning', 10833, '13.49360', '144.77670'), ('Tiyan', 20, '13.47990', '144.79140'), ('Toto', 2044, '13.46550', '144.77720'), ('Umatac', 564, '13.29670', '144.66200'), ('Yigo', 6391, '13.53800', '144.89850'), ('Yona', 2332, '13.41430', '144.77310')], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ002': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('Sinapalu', 0, '14.16670', '145.23330')], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ003': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('San Jose (Tinian)', 1361, '14.96870', '145.61970')], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ004': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [('Capital Hill', 1496, '15.20010', '145.75180'), ('Chalan Kanoa', 3108, '15.14620', '145.70410'), ('Dandan', 2718, '15.13450', '145.73710'), ('Garapan', 3588, '15.20610', '145.71790'), ('Gualo Rai', 2354, '15.19090', '145.72260'), ('Kagman', 3026, '15.16670', '145.77860'), ('Koblerville', 3543, '15.12050', '145.70640'), ('Navy Hill', 1001, '15.20940', '145.73370'), ('San Antonio', 4741, '15.13330', '145.69910'), ('San Jose (Saipan)', 839, '15.16690', '145.70860'), ('San Roque', 911, '15.24740', '145.77200'), ('San Vicente', 3494, '15.15160', '145.73780'), ('Susupe', 2083, '15.15640', '145.70570'), ('Tanapag', 3318, '15.23890', '145.75380')], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ005': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ011': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ013': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ021': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ022': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ023': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ024': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ025': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ026': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ031': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ032': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ033': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ041': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ042': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ043': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ051': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ061': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ062': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ064': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ065': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ067': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'GUZ068': {'fullStateName': 'Guam', 'state': 'GU', 'cities': [], 'partOfState': '', 'wfo': 'GUM'}, +'HIZ001': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ002': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Anahola', 1932, '22.14720', '-159.31780'), ('Haena', 50, '22.22000', '-159.57000'), ('Hanalei', 478, '22.20900', '-159.50170'), ('Hanamaulu', 3272, '21.99820', '-159.35240'), ('Kalaheo', 3913, '21.92080', '-159.52670'), ('Kalihiwai', 717, '22.21940', '-159.42150'), ('Kapaa', 9472, '22.09730', '-159.35400'), ('Kawaihau', 700, '22.10030', '-159.33920'), ('Kilauea', 2092, '22.21110', '-159.40960'), ('Kipu Falls', 20, '21.93890', '-159.40280'), ('Koloa', 1942, '21.90680', '-159.46430'), ('Lawai', 1984, '21.92490', '-159.50470'), ('Lihue', 5674, '21.97510', '-159.35440'), ('Moloaa', 300, '22.20000', '-159.34000'), ('Na Pali State Park', 10, '22.20830', '-159.59860'), ('Omao', 1221, '21.92510', '-159.48620'), ('Poipu', 1075, '21.88140', '-159.46240'), ('Princeville', 1698, '22.22350', '-159.48540'), ('Puhi', 1186, '21.96880', '-159.39960'), ('Wailua', 2083, '22.05790', '-159.34070'), ('Wainiha', 200, '22.21380', '-159.54510')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ003': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Barking Sands', 100, '22.02720', '-159.78480'), ('Hanapepe', 2153, '21.91630', '-159.59040'), ('Kaumakani', 607, '21.92210', '-159.62810'), ('Kekaha', 3175, '21.97230', '-159.71780'), ('Mana', 3175, '22.03860', '-159.77170'), ('Pakala Village', 478, '21.94500', '-159.64870'), ('Polihale', 10, '22.09060', '-159.75470'), ('Waimea', 478, '21.96070', '-159.67520')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ004': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Kalalau Valley', 20, '22.17360', '-159.64720'), ('Kokee State Park', 3175, '22.13320', '-159.65970')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ005': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Aina Haina', 371657, '21.28870', '-157.75150'), ('Ala Moana Beach Park', 371657, '21.29230', '-157.85040'), ('Ewa', 3780, '21.34540', '-158.04090'), ('Ewa Beach', 14650, '21.31620', '-158.01180'), ('Halawa', 13408, '21.37940', '-157.92160'), ('Hawaii Kai', 4271, '21.28170', '-157.70250'), ('Honolulu', 371657, '21.31000', '-157.86090'), ('Iroquois Point', 4188, '21.32530', '-157.98130'), ('Iwilei', 371657, '21.31980', '-157.87300'), ('Kahala', 371657, '21.27280', '-157.78460'), ('Kaimuki', 371657, '21.28130', '-157.80920'), ('Kalihi', 371657, '21.32780', '-157.87880'), ('Kapolei', 20000, '21.33500', '-158.06670'), ('Kuliouou', 4271, '21.29420', '-157.72710'), ('Kunia', 50000, '21.39170', '-158.03290'), ('Moilili', 371657, '21.29620', '-157.82680'), ('Niu Valley', 3664, '21.29230', '-157.73930'), ('Salt Lake', 30000, '21.34950', '-157.91100'), ('Waialae', 371657, '21.27820', '-157.79420'), ('Waikele', 67000, '21.40220', '-158.00670'), ('Waikiki', 371657, '21.28230', '-157.83010'), ('Waipahu', 33108, '21.39060', '-158.01270')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ006': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Maili', 6059, '21.41870', '-158.18040'), ('Makaha', 7990, '21.46830', '-158.21510'), ('Makaha Valley', 1012, '21.48240', '-158.20380'), ('Makua Valley', 10, '21.53010', '-158.22470'), ('Nanakuli', 9575, '21.39190', '-158.15650'), ('Waianae', 8758, '21.44940', '-158.18400')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ007': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Dillingham Field', 10, '21.57960', '-158.20710'), ('Haleiwa', 2442, '21.59550', '-158.10880'), ('Mokuleia', 1839, '21.58220', '-158.17880'), ('Waialua', 3761, '21.57760', '-158.12850')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ008': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Ahuimanu', 8387, '21.44120', '-157.83650'), ('Fort Shafter', 371657, '21.35360', '-157.87420'), ('Hauula', 3479, '21.59060', '-157.92330'), ('Heeia', 5010, '21.42800', '-157.81720'), ('Kaaawa', 1324, '21.55740', '-157.85720'), ('Kahaluu', 3068, '21.46200', '-157.83480'), ('Kahuku', 2097, '21.68220', '-157.94630'), ('Laie', 5577, '21.64910', '-157.92550'), ('Makiki', 371657, '21.30980', '-157.83770'), ('Manoa', 371657, '21.31880', '-157.81010'), ('Palolo', 30000, '21.29630', '-157.79680'), ('Punaluu', 672, '21.59260', '-157.89660'), ('Pupukea', 4111, '21.66430', '-158.05350'), ('Turtle Bay', 300, '21.70350', '-158.00290'), ('Waiahole', 400, '21.48410', '-157.84740'), ('Waikane', 717, '21.49540', '-157.85190')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ009': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Kailua', 9870, '21.40160', '-157.73850'), ('Kaneohe', 35448, '21.41110', '-157.79250'), ('Kaneohe Marine Base', 11662, '21.45010', '-157.75160'), ('Maunawili', 4869, '21.37240', '-157.76580'), ('Waimanalo', 3664, '21.34760', '-157.72500')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ010': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Aiea', 9019, '21.38840', '-157.92780'), ('Mililani Town', 28608, '21.44900', '-158.01820'), ('Pearl City', 30976, '21.40470', '-157.96910'), ('Schofield Barracks', 19597, '21.49630', '-158.06460'), ('Wahiawa', 17386, '21.50290', '-158.02210'), ('Waimalu', 29371, '21.40470', '-157.94320'), ('Waipio', 11812, '21.41830', '-158.00060'), ('Whitmore Village', 4057, '21.51420', '-158.02920')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ011': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Makakilo', 13156, '21.35860', '-158.08840')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ012': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Halawa Valley', 467, '21.16010', '-156.74170'), ('Kalaupapa', 1936, '21.19340', '-156.98580'), ('Pukoo', 467, '21.07640', '-156.79580')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ013': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Hoolehua', 1936, '21.17040', '-157.07130'), ('Kamalo', 2726, '21.05070', '-156.87730'), ('Kaunakakai', 2726, '21.08860', '-157.01270'), ('Kawela', 2726, '21.07220', '-156.96440'), ('Kepuhi', 230, '21.19030', '-157.24980'), ('Kualapuu', 1936, '21.16000', '-157.05840'), ('Maunaloa', 230, '21.13650', '-157.21390'), ('Molokai Airport', 1936, '21.15640', '-157.09650')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ014': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Kaumalapau Harbor', 3164, '20.79030', '-156.99370'), ('Shipwreck Beach', 3164, '20.91980', '-156.91030')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ015': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Koele', 3164, '20.83920', '-156.92100'), ('Lanai Airport', 3164, '20.79330', '-156.95250'), ('Lanai City', 3164, '20.83270', '-156.92650')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ016': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ017': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Honokohau', 467, '21.02090', '-156.61180'), ('Honolua', 467, '21.01480', '-156.63930'), ('Kahakuloa', 7310, '21.00010', '-156.55400'), ('Kapalua', 467, '20.99970', '-156.65810'), ('Waiehu', 7310, '20.92140', '-156.49740'), ('Waihee', 7310, '20.93350', '-156.51380'), ('Waikapu', 1115, '20.85400', '-156.50730'), ('Wailuku', 12296, '20.88850', '-156.50680')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ018': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Honokowai', 1375, '20.95440', '-156.68990'), ('Kaanapali', 1375, '20.93080', '-156.69580'), ('Lahaina', 9118, '20.89130', '-156.67430'), ('Launiupoko', 9118, '20.85700', '-156.65040'), ('Napili', 467, '20.98930', '-156.66730'), ('Olowalu', 9118, '20.81460', '-156.62480'), ('Ukumehame Beach Park', 1115, '20.79870', '-156.57790')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ019': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Kahului', 20146, '20.87380', '-156.45930'), ('Maalaea', 454, '20.79670', '-156.51340'), ('Puunene', 20146, '20.86410', '-156.45350'), ('Spreckelsville', 2499, '20.90820', '-156.41510')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ020': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Haiku', 6578, '20.91830', '-156.32360'), ('Haliimaile', 895, '20.87630', '-156.34830'), ('Hamoa', 709, '20.72360', '-155.98840'), ('Hana', 709, '20.77000', '-155.99420'), ('Hookipa Beach Park', 2499, '20.93640', '-156.36020'), ('Huelo', 6578, '20.90770', '-156.22760'), ('Keanae', 6578, '20.86140', '-156.15110'), ('Kipahulu', 709, '20.65690', '-156.05790'), ('Makawao', 6327, '20.85750', '-156.32500'), ('Nahiku', 709, '20.82800', '-156.09510'), ('Paia', 2499, '20.90470', '-156.37490'), ('Pauwela', 6578, '20.93380', '-156.32030')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ021': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Kaupo', 709, '20.63960', '-156.12520'), ('Keokea', 5671, '20.70860', '-156.36010'), ('Kihei', 11107, '20.76380', '-156.45320'), ('Kula', 7800, '20.75580', '-156.32700'), ('Makena', 5671, '20.65780', '-156.44490'), ('Nuu', 709, '20.63190', '-156.18650'), ('Pukalani', 7380, '20.83690', '-156.34100'), ('Ulupalakua', 5671, '20.64910', '-156.40000'), ('Wailea', 5671, '20.69100', '-156.44640')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ022': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ023': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Captain Cook', 3206, '19.49610', '-155.92100'), ('Holualoa', 6107, '19.62750', '-155.95110'), ('Honaunau', 2400, '19.45490', '-155.87960'), ('Kailua-Kona', 6107, '19.64230', '-155.99390'), ('Keahole Point', 10, '19.72810', '-156.06070'), ('Kealakekua', 1645, '19.52020', '-155.92270'), ('Keauhou', 1990, '19.56550', '-155.96460'), ('Kona Village Resort', 4490, '19.83390', '-155.98760'), ('Milolii', 2178, '19.18940', '-155.90880'), ('Puuanahulu', 4806, '19.81770', '-155.84630')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ024': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Hawaiian Ocean View Estates', 2178, '19.08900', '-155.78060'), ('Kawa Flats', 10, '19.12470', '-155.52580'), ('Naalehu', 1027, '19.07720', '-155.57530'), ('Pahala', 1520, '19.20330', '-155.48240'), ('Wood Valley', 200, '19.26930', '-155.47090')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ025': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Glenwood', 2799, '19.49080', '-155.15390'), ('Hakalau', 541, '19.89950', '-155.12850'), ('Hawaiian Beaches', 3709, '19.54300', '-154.91570'), ('Hawaiian Paradise Park', 3389, '19.59330', '-154.97310'), ('Hawi', 938, '20.24280', '-155.83420'), ('Hilo', 40759, '19.69620', '-155.08750'), ('Honokaa', 2186, '20.07710', '-155.46740'), ('Honomu', 541, '19.87270', '-155.11490'), ('Kamuela', 7028, '20.01660', '-155.63660'), ('Kapoho', 3709, '19.50510', '-154.84880'), ('Keaau', 1584, '19.61920', '-155.03970'), ('Laupahoehoe', 473, '19.97850', '-155.24010'), ('Mountain View', 2799, '19.52070', '-155.14920'), ('Ookala', 473, '20.01660', '-155.28090'), ('Paauilo', 620, '20.04340', '-155.37170'), ('Pahoa', 1027, '19.49870', '-154.94890'), ('Papaikou', 1634, '19.79400', '-155.09650'), ('Pepeekeo', 1697, '19.83470', '-155.10880'), ('Upolu Airport', 938, '20.26780', '-155.86110'), ('Volcano', 2231, '19.43180', '-155.23790'), ('Waipio Valley', 316, '20.12550', '-155.57070')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ026': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Kawaihae', 429, '20.04150', '-155.83070'), ('Mahukona', 938, '20.18710', '-155.90260'), ('Puako', 429, '19.97380', '-155.84390'), ('Saddle Road Junction', 7028, '19.93850', '-155.68960'), ('Waikii', 7028, '19.87760', '-155.66390'), ('Waikoloa Beach Resort', 429, '19.91690', '-155.88950'), ('Waikoloa Village', 4806, '19.93930', '-155.79120')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ027': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Pohakuloa Camp', 100, '19.75760', '-155.53760')], 'partOfState': '', 'wfo': 'HFO'}, +'HIZ028': {'fullStateName': 'Hawaii', 'state': 'HI', 'cities': [('Mauna Kea Summit', 10, '19.82350', '-155.47080')], 'partOfState': '', 'wfo': 'HFO'}, +'IAZ001': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alvord', 187, '43.34220', '-96.30250'), ('Doon', 533, '43.27870', '-96.23160'), ('George', 1051, '43.34170', '-96.00270'), ('Inwood', 875, '43.28700', '-96.44010'), ('Larchwood', 788, '43.45530', '-96.43740'), ('Lester', 251, '43.43920', '-96.33020'), ('Little Rock', 489, '43.44460', '-95.88090'), ('Rock Rapids', 2573, '43.42580', '-96.16610')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ002': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ashton', 461, '43.30980', '-95.79220'), ('Harris', 200, '43.44760', '-95.43290'), ('Melvin', 243, '43.28670', '-95.60850'), ('Ocheyedan', 536, '43.41820', '-95.53650'), ('Sibley', 2796, '43.40170', '-95.74490')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ003': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arnolds Park', 1162, '43.36280', '-95.13180'), ('Lake Park', 1023, '43.44840', '-95.32480'), ('Milford', 2474, '43.32700', '-95.15180'), ('Okoboji', 820, '43.39210', '-95.13620'), ('Orleans', 583, '43.44520', '-95.09870'), ('Spirit Lake', 4261, '43.42280', '-95.11140'), ('Superior', 142, '43.43270', '-94.94710'), ('Terril', 404, '43.30850', '-94.96880'), ('Wahpeton', 462, '43.37450', '-95.17450'), ('West Okoboji', 432, '43.34940', '-95.16530')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ004': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Armstrong', 979, '43.39360', '-94.47900'), ('Dolliver', 77, '43.46490', '-94.61460'), ('Estherville', 6656, '43.39940', '-94.83320'), ('Gruver', 106, '43.39320', '-94.70310'), ('Ringsted', 436, '43.29640', '-94.50660'), ('Wallingford', 210, '43.32020', '-94.79200')], 'partOfState': 'northwest', 'wfo': 'DMX'}, +'IAZ005': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Algona', 5741, '43.07390', '-94.23070'), ('Bancroft', 808, '43.29250', '-94.21680'), ('Burt', 556, '43.19920', '-94.22140'), ('Fenton', 317, '43.21830', '-94.42770'), ('Lakota', 255, '43.37800', '-94.09400'), ('Ledyard', 147, '43.42030', '-94.15870'), ('Lone Rock', 157, '43.22040', '-94.32490'), ('Lu Verne', 299, '42.91660', '-94.08340'), ('Swea City', 642, '43.38280', '-94.31020'), ('Titonka', 584, '43.23660', '-94.04160'), ('Wesley', 467, '43.08890', '-93.99300'), ('Whittemore', 530, '43.06340', '-94.42400')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ006': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Buffalo Center', 963, '43.38980', '-93.94310'), ('Forest City', 4362, '43.25720', '-93.63800'), ('Lake Mills', 2140, '43.41620', '-93.53210'), ('Leland', 258, '43.33370', '-93.63720'), ('Rake', 227, '43.48130', '-93.92100'), ('Scarville', 97, '43.47060', '-93.61630'), ('Thompson', 596, '43.36960', '-93.77430')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ007': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Fertile', 360, '43.26490', '-93.42260'), ('Grafton', 290, '43.33010', '-93.06990'), ('Hanlontown', 229, '43.28090', '-93.37920'), ('Joice', 231, '43.36430', '-93.45710'), ('Kensett', 280, '43.35390', '-93.21090'), ('Manly', 1342, '43.28830', '-93.20170'), ('Northwood', 2050, '43.44460', '-93.21640')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ008': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bailey', 173, '43.46634', '-92.61673'), ('Brownville', 840, '43.33110', '-92.68252'), ('Carpenter', 130, '43.41490', '-93.01740'), ('Little Cedar', 469, '43.38410', '-92.73552'), ('McIntire', 173, '43.43720', '-92.59310'), ('Meyer', 469, '43.44806', '-92.71908'), ('Mitchell', 155, '43.32120', '-92.87020'), ('Mona', 504, '43.48096', '-92.95118'), ('New Haven', 840, '43.28176', '-92.65146'), ('Orchard', 88, '43.22700', '-92.77440'), ('Osage', 3451, '43.28360', '-92.81190'), ('Otranto', 504, '43.49375', '-93.00966'), ('Riceville', 840, '43.36250', '-92.55490'), ('Rock Creek', 155, '43.23241', '-92.93473'), ('Stacyville', 469, '43.43840', '-92.78280'), ('St. Ansgar', 1031, '43.37810', '-92.91960'), ('Toeterville', 504, '43.44806', '-92.91462')], 'partOfState': 'north central', 'wfo': 'ARX'}, +'IAZ009': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bonair', 496, '43.41334', '-92.20005'), ('Chester', 151, '43.49010', '-92.36340'), ('Cresco', 3905, '43.37180', '-92.11570'), ('Davis Corners', 496, '43.36400', '-92.29874'), ('Elma', 598, '43.24570', '-92.44000'), ('Lime Springs', 496, '43.45020', '-92.28110'), ('Lourdes', 286, '43.26714', '-92.30239'), ('Maple Leaf', 598, '43.31283', '-92.38463'), ('Protivin', 317, '43.21750', '-92.08810'), ('Saratoga', 598, '43.36400', '-92.41936'), ('Schley', 3905, '43.29820', '-92.23295'), ('Vernon Springs', 3905, '43.34755', '-92.15253')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAZ010': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bluffton', 293, '43.39781', '-91.93425'), ('Burr Oak', 362, '43.44730', '-91.88292'), ('Calmar', 1058, '43.17940', '-91.86690'), ('Castalia', 175, '43.11190', '-91.67640'), ('Conover', 386, '43.21452', '-91.91775'), ('Decorah', 8172, '43.30530', '-91.79330'), ('Festina', 1058, '43.11921', '-91.86826'), ('Fort Atkinson', 389, '43.14410', '-91.93470'), ('Frankville', 175, '43.18153', '-91.63549'), ('Hesper', 745, '43.48029', '-91.78578'), ('Highlandville', 745, '43.44913', '-91.68497'), ('Jackson Junction', 60, '43.10330', '-92.04800'), ('Kendallville', 3905, '43.43080', '-92.03322'), ('Locust', 745, '43.41614', '-91.73263'), ('Nordness', 8172, '43.23102', '-91.78395'), ('Ossian', 853, '43.14680', '-91.76450'), ('Ridgeway', 293, '43.29720', '-91.99110'), ('Sattre', 1153, '43.39964', '-91.65015'), ('Spillville', 386, '43.20400', '-91.95190')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAZ011': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Churchtown', 1012, '43.34832', '-91.34956'), ('Dalby', 145, '43.26218', '-91.28540'), ('Dorchester', 221, '43.46746', '-91.51635'), ('Elon', 145, '43.26584', '-91.33306'), ('Hanover', 4131, '43.36298', '-91.53468'), ('Hardin', 249, '43.08255', '-91.49985'), ('Harpers Ferry', 330, '43.20100', '-91.15120'), ('Lansing', 1012, '43.36170', '-91.22580'), ('Ludlow', 4131, '43.23102', '-91.58600'), ('Maud', 145, '43.23102', '-91.38438'), ('New Albin', 527, '43.49700', '-91.28850'), ('Postville', 2273, '43.08410', '-91.56930'), ('Quandahl', 1153, '43.44913', '-91.60616'), ('Rossville', 145, '43.18153', '-91.38438'), ('Village Creek', 1012, '43.31533', '-91.25241'), ('Volney', 1550, '43.13387', '-91.38255'), ('Waterville', 145, '43.20810', '-91.29480'), ('Waukon', 4131, '43.26980', '-91.47630'), ('Waukon Jct', 330, '43.14670', '-91.18276')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAZ012': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alton', 1095, '42.98640', '-96.00760'), ('Boyden', 672, '43.19020', '-96.00200'), ('Chatsworth', 89, '42.91640', '-96.51470'), ('Granville', 325, '42.98470', '-95.87480'), ('Hawarden', 2478, '43.00220', '-96.48240'), ('Hospers', 672, '43.07200', '-95.90360'), ('Hull', 1960, '43.19020', '-96.13270'), ('Ireton', 585, '42.97530', '-96.32150'), ('Matlock', 83, '43.24450', '-95.93420'), ('Maurice', 254, '42.96640', '-96.18300'), ('Orange City', 5582, '43.00330', '-96.05850'), ('Rock Valley', 2702, '43.20460', '-96.29720'), ('Sioux Center', 6002, '43.07660', '-96.17150')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ013': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Archer', 126, '43.11450', '-95.74410'), ('Calumet', 181, '42.94490', '-95.55040'), ('Hartley', 1733, '43.17930', '-95.47750'), ('Moneta', 29, '43.13250', '-95.39240'), ('Paullina', 1124, '42.97980', '-95.68680'), ('Primghar', 891, '43.08780', '-95.62620'), ('Sanborn', 1353, '43.18110', '-95.65630'), ('Sheldon', 4914, '43.17930', '-95.84490'), ('Sutherland', 707, '42.97240', '-95.49530')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ014': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Dickens', 202, '43.13340', '-95.02210'), ('Everly', 647, '43.16050', '-95.32160'), ('Fostoria', 230, '43.24160', '-95.15480'), ('Gillett Grove', 55, '43.01540', '-95.03520'), ('Greenville', 93, '43.01720', '-95.14520'), ('Peterson', 372, '42.91850', '-95.34120'), ('Rossie', 58, '43.01320', '-95.18880'), ('Royal', 479, '43.06400', '-95.28320'), ('Spencer', 11317, '43.14590', '-95.15110'), ('Webb', 165, '42.94920', '-95.01200')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ015': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ayrshire', 202, '43.04030', '-94.83340'), ('Curlew', 62, '42.97950', '-94.73720'), ('Cylinder', 110, '43.09040', '-94.55130'), ('Emmetsburg', 3958, '43.11350', '-94.68050'), ('Graettinger', 900, '43.23640', '-94.75100'), ('Mallard', 298, '42.93970', '-94.68410'), ('Rodman', 56, '43.02600', '-94.52630'), ('Ruthven', 711, '43.12960', '-94.89930'), ('West Bend', 834, '42.96010', '-94.45900')], 'partOfState': 'northwest', 'wfo': 'DMX'}, +'IAZ016': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Britt', 2052, '43.09730', '-93.80330'), ('Corwith', 350, '42.98930', '-93.95860'), ('Crystal Lake', 285, '43.22360', '-93.79270'), ('Garner', 2922, '43.09820', '-93.60250'), ('Goodell', 174, '42.92360', '-93.61390'), ('Kanawha', 739, '42.93400', '-93.79410'), ('Klemme', 593, '43.00910', '-93.60110'), ('Woden', 243, '43.23050', '-93.91040')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ017': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Clear Lake', 8161, '43.13510', '-93.37360'), ('Dougherty', 80, '42.92260', '-93.03630'), ('Mason City', 29172, '43.15130', '-93.19850'), ('Meservey', 252, '42.91510', '-93.47320'), ('Plymouth', 429, '43.24690', '-93.12240'), ('Rock Falls', 170, '43.20720', '-93.08700'), ('Rockwell', 989, '42.97990', '-93.18690'), ('Swaledale', 174, '42.97690', '-93.31530'), ('Thornton', 422, '42.94400', '-93.38760'), ('Ventura', 670, '43.12640', '-93.45980')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ018': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Carrville', 7812, '43.01493', '-92.60211'), ('Charles City', 7812, '43.06730', '-92.67500'), ('Colwell', 76, '43.15810', '-92.59150'), ('Floyd', 361, '43.12840', '-92.73940'), ('Floyd Crossing', 361, '43.07890', '-92.75197'), ('Marble Rock', 326, '42.96470', '-92.86760'), ('Nora Springs', 1532, '43.14400', '-93.00870'), ('Oakwood', 326, '43.01493', '-92.78121'), ('Powersville', 1099, '42.93087', '-92.70080'), ('Rockford', 907, '43.05280', '-92.94750'), ('Roseville', 326, '43.01676', '-92.81045'), ('Rudd', 431, '43.12680', '-92.90480')], 'partOfState': 'north central', 'wfo': 'ARX'}, +'IAZ019': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alta Vista', 286, '43.19570', '-92.41710'), ('Bassett', 74, '43.06240', '-92.51570'), ('Boyd', 3692, '43.01493', '-92.26584'), ('Devon', 118, '43.13373', '-92.38281'), ('Fredericksburg', 984, '42.96460', '-92.19830'), ('Ionia', 277, '43.03620', '-92.45760'), ('Lawler', 461, '43.07170', '-92.15380'), ('Little Turkey', 60, '43.13190', '-92.10136'), ('Nashua', 1618, '42.95060', '-92.53910'), ('New Hampton', 3692, '43.05970', '-92.31450'), ('North Washington', 118, '43.11630', '-92.41500'), ('Republic', 277, '42.94731', '-92.40108'), ('Saude', 317, '43.19769', '-92.18360'), ('Williamstown', 199, '42.96559', '-92.33346')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAZ020': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Akron', 1489, '42.82730', '-96.55630'), ('Brunsville', 146, '42.81130', '-96.26640'), ('Craig', 102, '42.89550', '-96.31010'), ('Hinton', 808, '42.62470', '-96.29390'), ('Kingsley', 1245, '42.58750', '-95.96800'), ('Le Mars', 9237, '42.78760', '-96.16990'), ('Merrill', 754, '42.72100', '-96.24910'), ('Oyens', 132, '42.81940', '-96.05750'), ('Remsen', 1762, '42.81310', '-95.97280'), ('Struble', 85, '42.89480', '-96.19410'), ('Westfield', 189, '42.75670', '-96.60540')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ021': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Aurelia', 1062, '42.71300', '-95.43690'), ('Cherokee', 5369, '42.75060', '-95.55250'), ('Cleghorn', 250, '42.81160', '-95.71350'), ('Larrabee', 149, '42.86130', '-95.54490'), ('Marcus', 1139, '42.82410', '-95.80720'), ('Meriden', 184, '42.79420', '-95.63260'), ('Quimby', 368, '42.62920', '-95.64270'), ('Washta', 282, '42.57590', '-95.71920')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ022': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albert City', 709, '42.78110', '-94.94890'), ('Alta', 1865, '42.67200', '-95.30450'), ('Lakeside', 484, '42.61970', '-95.17390'), ('Linn Grove', 211, '42.89260', '-95.24170'), ('Marathon', 302, '42.86100', '-94.98290'), ('Newell', 887, '42.61060', '-95.00380'), ('Rembrandt', 228, '42.82640', '-95.16570'), ('Sioux Rapids', 720, '42.89190', '-95.14810'), ('Storm Lake', 10076, '42.64500', '-95.19990'), ('Truesdale', 91, '42.72950', '-95.18270')], 'partOfState': 'northwest', 'wfo': 'FSD'}, +'IAZ023': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Fonda', 648, '42.58180', '-94.84550'), ('Gilmore City', 556, '42.72660', '-94.46000'), ('Havelock', 177, '42.83390', '-94.70010'), ('Laurens', 1476, '42.84780', '-94.84800'), ('Palmer', 214, '42.62880', '-94.59830'), ('Plover', 95, '42.87710', '-94.62240'), ('Pocahontas', 1970, '42.73620', '-94.66680'), ('Rolfe', 675, '42.81280', '-94.53030'), ('Varina', 90, '42.65860', '-94.89850')], 'partOfState': 'northwest', 'wfo': 'DMX'}, +'IAZ024': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bode', 327, '42.86810', '-94.28640'), ('Bradgate', 101, '42.80260', '-94.41930'), ('Dakota City', 911, '42.72220', '-94.19690'), ('Hardy', 57, '42.81020', '-94.05150'), ('Humboldt', 4452, '42.72150', '-94.22370'), ('Livermore', 431, '42.86780', '-94.18380'), ('Ottosen', 61, '42.89960', '-94.37530'), ('Pioneer', 21, '42.65350', '-94.39110'), ('Renwick', 306, '42.82740', '-93.98070'), ('Rutland', 145, '42.76120', '-94.29260'), ('Thor', 174, '42.68870', '-94.05000')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ025': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Belmond', 2560, '42.84920', '-93.60950'), ('Clarion', 2968, '42.73210', '-93.73210'), ('Dows', 675, '42.65870', '-93.50200'), ('Eagle Grove', 3712, '42.66730', '-93.90130'), ('Galt', 30, '42.69390', '-93.60480'), ('Goldfield', 680, '42.73570', '-93.92120'), ('Lake Cornelia', 0, '42.78730', '-93.68920'), ('Rowan', 218, '42.74010', '-93.54960'), ('Woolstock', 204, '42.56530', '-93.84340')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ026': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alexander', 165, '42.80480', '-93.47720'), ('Coulter', 262, '42.73330', '-93.37030'), ('Geneva', 171, '42.67590', '-93.13000'), ('Hampton', 4218, '42.74500', '-93.20090'), ('Hansell', 96, '42.75720', '-93.10340'), ('Latimer', 535, '42.76320', '-93.36500'), ('Popejoy', 78, '42.59410', '-93.42680'), ('Sheffield', 930, '42.89440', '-93.21050')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ027': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Allison', 1006, '42.75250', '-92.79560'), ('Aplington', 1054, '42.58160', '-92.88090'), ('Aredale', 89, '42.83340', '-93.00450'), ('Bristow', 202, '42.77350', '-92.90670'), ('Clarksville', 1441, '42.78020', '-92.66810'), ('Dumont', 676, '42.75160', '-92.97340'), ('Greene', 1099, '42.89680', '-92.80390'), ('New Hartford', 659, '42.56720', '-92.62240'), ('Parkersburg', 1889, '42.57360', '-92.78250'), ('Shell Rock', 1298, '42.71260', '-92.58150')], 'partOfState': 'north central', 'wfo': 'DMX'}, +'IAZ028': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Denver', 1627, '42.67120', '-92.33410'), ('Frederika', 199, '42.88360', '-92.30590'), ('Janesville', 829, '42.64440', '-92.46390'), ('Oran', 1041, '42.69765', '-92.08454'), ('Plainfield', 438, '42.84390', '-92.53550'), ('Readlyn', 786, '42.70340', '-92.22480'), ('Sumner', 2106, '42.84990', '-92.09600'), ('Tripoli', 1310, '42.80980', '-92.25760'), ('Waverly', 8968, '42.72540', '-92.46980')], 'partOfState': 'northeast', 'wfo': 'DMX'}, +'IAZ029': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albany', 1300, '42.86444', '-91.74912'), ('Alpha', 299, '42.99824', '-92.04972'), ('Arlington', 490, '42.74870', '-91.67040'), ('Brainard', 676, '42.93226', '-91.69964'), ('Clermont', 716, '43.00030', '-91.65330'), ('Donnan', 7, '42.90100', '-91.86930'), ('Eldorado', 178, '43.04956', '-91.84993'), ('Elgin', 676, '42.95600', '-91.63440'), ('Fayette', 1300, '42.84040', '-91.80260'), ('Hawkeye', 489, '42.93800', '-91.95090'), ('Maynard', 500, '42.77420', '-91.87690'), ('Oelwein', 6692, '42.67630', '-91.91390'), ('Randalia', 84, '42.86330', '-91.88620'), ('Richfield', 2106, '42.94692', '-92.06438'), ('St. Lucas', 178, '43.06660', '-91.93390'), ('Wadena', 243, '42.83950', '-91.65800'), ('Waucoma', 299, '43.05530', '-92.03460'), ('Westgate', 234, '42.76850', '-91.99510'), ('West Union', 2549, '42.95870', '-91.81260')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAZ030': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beula', 300, '43.01290', '-91.31840'), ('Clayton', 55, '42.90230', '-91.15000'), ('Clayton Center', 754, '42.88094', '-91.31656'), ('Communia', 26, '42.78196', '-91.36422'), ('Edgewood', 923, '42.64490', '-91.40170'), ('Elkader', 1465, '42.85600', '-91.40280'), ('Elkport', 88, '42.74110', '-91.27540'), ('Farmersburg', 300, '42.95850', '-91.36740'), ('Froelich', 300, '42.99824', '-91.33306'), ('Garber', 103, '42.74390', '-91.26290'), ('Garnavillo', 754, '42.86780', '-91.23640'), ('Giard', 300, '42.99824', '-91.29824'), ('Gunder', 676, '42.96158', '-91.51818'), ('Guttenberg', 1987, '42.78790', '-91.10410'), ('Highland', 676, '42.89743', '-91.60066'), ('Littleport', 26, '42.75310', '-91.36900'), ('Luana', 249, '43.06090', '-91.45500'), ('Marquette', 421, '43.04290', '-91.18400'), ('McGregor', 871, '43.02290', '-91.18070'), ('Mederville', 26, '42.76363', '-91.41921'), ('Millville', 23, '42.70480', '-91.07720'), ('Monona', 1550, '43.05130', '-91.39040'), ('National', 300, '42.94875', '-91.28357'), ('North Buena Vista', 124, '42.68250', '-90.95640'), ('Osborne', 1465, '42.80029', '-91.43570'), ('Osterdock', 50, '42.73250', '-91.15860'), ('St. Olaf', 136, '42.92770', '-91.38710'), ('Strawberry Point', 1386, '42.68300', '-91.53550'), ('Volga', 247, '42.80250', '-91.54290'), ('Watson', 1550, '43.08072', '-91.33489')], 'partOfState': 'northeast', 'wfo': 'ARX'}, +'IAZ031': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Anthon', 649, '42.38770', '-95.86610'), ('Bronson', 269, '42.40950', '-96.21130'), ('Correctionville', 851, '42.47820', '-95.78340'), ('Cushing', 246, '42.46510', '-95.67610'), ('Danbury', 384, '42.23720', '-95.72150'), ('Hornick', 253, '42.23100', '-96.09630'), ('Lawton', 697, '42.47890', '-96.18440'), ('Moville', 1583, '42.48960', '-96.06680'), ('Oto', 145, '42.28150', '-95.89380'), ('Pierson', 371, '42.54370', '-95.86690'), ('Salix', 370, '42.30950', '-96.28660'), ('Sergeant Bluff', 3321, '42.40070', '-96.35560'), ('Sioux City', 85013, '42.50020', '-96.39400'), ('Sloan', 1032, '42.23430', '-96.22410'), ('Smithland', 221, '42.22910', '-95.93160')], 'partOfState': 'west central', 'wfo': 'FSD'}, +'IAZ032': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arthur', 245, '42.33520', '-95.34640'), ('Battle Creek', 743, '42.31690', '-95.59930'), ('Galva', 368, '42.50620', '-95.41630'), ('Holstein', 1470, '42.48680', '-95.54230'), ('Ida Grove', 2350, '42.34440', '-95.47290'), ('Saylorville Lake', 0, '42.26862', '-95.64065')], 'partOfState': 'west central', 'wfo': 'FSD'}, +'IAZ033': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Auburn', 296, '42.24990', '-94.87690'), ('Early', 605, '42.46090', '-95.15250'), ('Lake View', 1278, '42.30620', '-95.04660'), ('Lytton', 305, '42.42340', '-94.87000'), ('Nemaha', 102, '42.51500', '-95.08770'), ('Odebolt', 1153, '42.31150', '-95.25380'), ('Sac City', 2368, '42.42210', '-94.99730'), ('Schaller', 779, '42.49570', '-95.29540'), ('Wall Lake', 841, '42.26960', '-95.09300')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAZ034': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Farnhamville', 430, '42.27750', '-94.41500'), ('Jolley', 54, '42.47930', '-94.71790'), ('Knierim', 70, '42.45610', '-94.45630'), ('Lake City', 1787, '42.26770', '-94.73060'), ('Lohrville', 431, '42.26800', '-94.55090'), ('Manson', 1893, '42.52870', '-94.53930'), ('Pomeroy', 710, '42.55350', '-94.67850'), ('Rinard', 72, '42.33950', '-94.48650'), ('Rockwell City', 2264, '42.39840', '-94.63100'), ('Somers', 165, '42.37790', '-94.43080'), ('Yetter', 36, '42.31650', '-94.84360')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAZ035': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Badger', 610, '42.61230', '-94.14260'), ('Barnum', 195, '42.50670', '-94.36430'), ('Callender', 424, '42.36220', '-94.29560'), ('Clare', 190, '42.58770', '-94.34460'), ('Dayton', 884, '42.26170', '-94.07150'), ('Duncombe', 474, '42.46990', '-93.99600'), ('Fort Dodge', 25136, '42.50790', '-94.17680'), ('Gowrie', 1038, '42.27680', '-94.28850'), ('Harcourt', 340, '42.26100', '-94.17500'), ('Lehigh', 497, '42.35590', '-94.05310'), ('Moorland', 197, '42.44100', '-94.29410'), ('Otho', 571, '42.42090', '-94.14760'), ('Vincent', 158, '42.59130', '-94.01790')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ036': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Blairsburg', 235, '42.47950', '-93.64260'), ('Ellsworth', 531, '42.31060', '-93.58180'), ('Jewell', 1188, '42.31130', '-93.63860'), ('Kamrar', 229, '42.39170', '-93.72740'), ('Randall', 148, '42.23720', '-93.60300'), ('Stanhope', 488, '42.28860', '-93.79500'), ('Stratford', 746, '42.27100', '-93.92760'), ('Webster City', 8176, '42.46340', '-93.81650'), ('Williams', 427, '42.49010', '-93.54160')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ037': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ackley', 1809, '42.55150', '-93.05190'), ('Alden', 904, '42.51240', '-93.37900'), ('Buckeye', 110, '42.41840', '-93.37590'), ('Eldora', 3035, '42.36020', '-93.10110'), ('Hubbard', 885, '42.30610', '-93.30050'), ('Iowa Falls', 5193, '42.52080', '-93.26580'), ('New Providence', 227, '42.28190', '-93.17230'), ('Owasa', 38, '42.43110', '-93.20510'), ('Radcliffe', 607, '42.31810', '-93.43460'), ('Steamboat Rock', 336, '42.40800', '-93.06610'), ('Union', 427, '42.24290', '-93.06260'), ('Whitten', 160, '42.26480', '-93.01140')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ038': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaman', 210, '42.22000', '-92.82280'), ('Conrad', 1055, '42.22400', '-92.87360'), ('Dike', 944, '42.46310', '-92.63010'), ('Grundy Center', 2596, '42.36300', '-92.77470'), ('Holland', 250, '42.39970', '-92.79930'), ('Morrison', 97, '42.34340', '-92.67290'), ('Reinbeck', 1751, '42.32220', '-92.59850'), ('Stout', 217, '42.52710', '-92.71120'), ('Wellsburg', 716, '42.43380', '-92.92440')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ039': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Cedar Falls', 36145, '42.52060', '-92.45280'), ('Dunkerton', 749, '42.56830', '-92.15990'), ('Elk Run Heights', 1052, '42.46710', '-92.24930'), ('Evansdale', 4526, '42.46180', '-92.27560'), ('Gilbertville', 767, '42.41870', '-92.21370'), ('Hudson', 2117, '42.42330', '-92.45470'), ('Jesup Golf Course', 2212, '42.47590', '-92.08330'), ('La Porte City', 2275, '42.31310', '-92.19120'), ('Raymond', 537, '42.46690', '-92.22820'), ('Waterloo', 68747, '42.49160', '-92.35110')], 'partOfState': 'northeast', 'wfo': 'DMX'}, +'IAZ040': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Aurora', 194, '42.61920', '-91.72980'), ('Brandon', 311, '42.31400', '-92.00240'), ('Cedar Rock State Park', 574, '42.40000', '-91.80000'), ('Fairbank', 1041, '42.63890', '-92.05010'), ('Fontana County Park', 950, '42.60000', '-91.91670'), ('Hazleton', 950, '42.61830', '-91.90540'), ('Independence', 6014, '42.46810', '-91.89100'), ('Independence Airport', 6014, '42.45000', '-91.95000'), ('Jesup', 2212, '42.47590', '-92.06690'), ('Lamont', 503, '42.59870', '-91.64080'), ('Lime Creek County', 311, '42.33330', '-91.98330'), ('Littleton', 2212, '42.53330', '-92.01670'), ('Monti', 104, '42.38330', '-91.63330'), ('Otterville', 6014, '42.51670', '-91.95000'), ('Quasqueton', 574, '42.39550', '-91.75640'), ('Rowley', 290, '42.36840', '-91.84480'), ('Stanley', 128, '42.64200', '-91.81170'), ('Three Elms County', 6014, '42.45000', '-91.86670'), ('Troy Mills Park', 750, '42.31670', '-91.71670'), ('Wapsipinicon Golf Course', 6014, '42.48330', '-91.93330'), ('Winthrop', 772, '42.47330', '-91.73370'), ('Winthrop Golf Course', 104, '42.50000', '-91.65000')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'IAZ041': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Backbone State Park', 179, '42.61670', '-91.55000'), ('Baileys Ford Park', 458, '42.43330', '-91.40000'), ('Buck Creek', 458, '42.33330', '-91.35000'), ('Coffins Grove Park', 104, '42.50000', '-91.53330'), ('Colesburg', 412, '42.63850', '-91.20090'), ('Delaware', 188, '42.47190', '-91.34010'), ('Delhi', 458, '42.43000', '-91.33150'), ('Dundee', 179, '42.57970', '-91.54690'), ('Earlville', 900, '42.48300', '-91.26970'), ('Fountain Springs Park', 276, '42.61670', '-91.31670'), ('Greeley', 276, '42.58510', '-91.34190'), ('Hopkinton', 681, '42.34360', '-91.24870'), ('Manchester', 5257, '42.48520', '-91.45580'), ('Manchester Airport', 5257, '42.50000', '-91.50000'), ('Masonville', 104, '42.47980', '-91.59180'), ('Oneida', 49, '42.54110', '-91.35290'), ('Petersburg', 900, '42.55000', '-91.21670'), ('Robinson', 745, '42.35000', '-91.58330'), ('Ryan', 410, '42.35260', '-91.48280'), ('Turtle Creek Park', 458, '42.41670', '-91.36670'), ('Twin Bridges Park', 276, '42.63330', '-91.28330')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'IAZ042': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Asbury', 2450, '42.51470', '-90.75850'), ('Balltown', 73, '42.63750', '-90.86850'), ('Bankston', 27, '42.50870', '-90.96020'), ('Bernard', 97, '42.31270', '-90.83100'), ('Cascade', 1958, '42.29910', '-91.00990'), ('Center Grove', 57686, '42.48330', '-90.71670'), ('Centralia', 101, '42.47230', '-90.83680'), ('Cottage Hill', 191, '42.58330', '-90.91670'), ('Dubuque', 57686, '42.50450', '-90.69000'), ('Dubuque Regional Airport', 100, '42.40000', '-90.71670'), ('Durango', 24, '42.56160', '-90.77350'), ('Dyersville', 4035, '42.48040', '-91.11830'), ('East Rickardsville', 191, '42.56670', '-90.85000'), ('Edmore', 203, '42.55000', '-90.68330'), ('Epworth', 1428, '42.44680', '-90.93420'), ('Farley', 1334, '42.44390', '-91.00670'), ('Fillmore', 97, '42.31670', '-90.91670'), ('Five Points', 191, '42.55000', '-90.86670'), ('Graf', 73, '42.49470', '-90.86890'), ('Holy Cross', 339, '42.60150', '-90.99630'), ('Key West', 57686, '42.45000', '-90.68330'), ('Lattnerville', 73, '42.48330', '-90.88330'), ('Luxemburg', 246, '42.60300', '-91.07300'), ('Massey', 187, '42.43330', '-90.58330'), ('New Vienna', 400, '42.54780', '-91.11340'), ('Old Balltown', 73, '42.63330', '-90.86670'), ('Peosta', 651, '42.44880', '-90.85070'), ('Rickardsville', 191, '42.58360', '-90.87530'), ('Rockdale', 57686, '42.46670', '-90.68330'), ('Sageville', 203, '42.54880', '-90.70370'), ('Sherrill', 186, '42.60290', '-90.78200'), ('Washington Mills', 97, '42.30000', '-90.78330'), ('Waupeton', 73, '42.66670', '-90.88330'), ('Worthington', 381, '42.39650', '-91.12060'), ('Zwingle', 100, '42.29780', '-90.68690')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'IAZ043': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Blencoe', 231, '41.92970', '-96.08100'), ('Castana', 178, '42.07360', '-95.90940'), ('Mapleton', 1416, '42.16770', '-95.79080'), ('Moorhead', 232, '41.92430', '-95.85040'), ('Onawa', 3091, '42.02740', '-96.08810'), ('Rodney', 74, '42.20480', '-95.95120'), ('Soldier', 207, '41.98460', '-95.77960'), ('Turin', 75, '42.02040', '-95.96580'), ('Ute', 378, '42.04970', '-95.70560'), ('Whiting', 707, '42.12640', '-96.15070')], 'partOfState': 'west central', 'wfo': 'OAX'}, +'IAZ044': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arion', 136, '41.94860', '-95.46250'), ('Aspinwall', 58, '41.91140', '-95.13480'), ('Buck Grove', 49, '41.91870', '-95.39700'), ('Charter Oak', 530, '42.06790', '-95.58910'), ('Deloit', 288, '42.09720', '-95.31750'), ('Denison', 7339, '42.01830', '-95.34890'), ('Dow City', 503, '41.92820', '-95.49420'), ('Kiron', 273, '42.19380', '-95.32670'), ('Manilla', 839, '41.88910', '-95.23500'), ('Ricketts', 144, '42.12750', '-95.57420'), ('Schleswig', 833, '42.16190', '-95.43450'), ('Vail', 452, '42.05980', '-95.20060'), ('Westside', 327, '42.07520', '-95.10000')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAZ045': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Arcadia', 443, '42.08700', '-95.04350'), ('Breda', 477, '42.18320', '-94.97770'), ('Carroll', 10106, '42.06920', '-94.86470'), ('Coon Rapids', 1305, '41.87250', '-94.67650'), ('Dedham', 280, '41.90870', '-94.82260'), ('Glidden', 1253, '42.05730', '-94.72520'), ('Halbur', 202, '42.00550', '-94.97140'), ('Lanesboro', 152, '42.18360', '-94.69100'), ('Lidderdale', 186, '42.12390', '-94.78420'), ('Manning', 1490, '41.90950', '-95.06430'), ('Ralston', 98, '42.04350', '-94.64500'), ('Templeton', 334, '41.91810', '-94.94230'), ('Willey', 103, '41.97840', '-94.82070')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAZ046': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Churdan', 418, '42.15470', '-94.47770'), ('Dana', 84, '42.10670', '-94.24010'), ('Grand Junction', 964, '42.03220', '-94.23650'), ('Jefferson', 4626, '42.01880', '-94.37650'), ('Paton', 265, '42.16390', '-94.25470'), ('Rippey', 319, '41.93460', '-94.20000'), ('Scranton', 604, '42.02040', '-94.54820')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAZ047': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaver', 53, '42.03780', '-94.14090'), ('Berkley', 24, '41.94610', '-94.11360'), ('Boone', 12803, '42.05250', '-93.87920'), ('Boxholm', 215, '42.17330', '-94.10630'), ('Fraser', 137, '42.12680', '-93.97370'), ('Luther', 158, '41.96710', '-93.81970'), ('Madrid', 2264, '41.87550', '-93.81970'), ('Ogden', 2023, '42.03940', '-94.02850'), ('Pilot Mound', 214, '42.15910', '-94.01870')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ048': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ames', 50731, '42.02340', '-93.62560'), ('Cambridge', 819, '41.89950', '-93.53090'), ('Collins', 499, '41.90250', '-93.30540'), ('Colo', 868, '42.01590', '-93.31850'), ('Gilbert', 987, '42.10740', '-93.64750'), ('Huxley', 2316, '41.89600', '-93.60250'), ('Kelley', 300, '41.95090', '-93.66470'), ('Maxwell', 807, '41.89140', '-93.39880'), ('McCallsburg', 318, '42.16550', '-93.39030'), ('Nevada', 6658, '42.01820', '-93.45020'), ('Roland', 1324, '42.16700', '-93.50120'), ('Sheldahl', 336, '41.86410', '-93.69620'), ('Slater', 1306, '41.88030', '-93.68410'), ('Story City', 3228, '42.18640', '-93.59160'), ('Zearing', 617, '42.15890', '-93.29650')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ049': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albion', 592, '42.11280', '-92.98920'), ('Clemons', 148, '42.11320', '-93.15820'), ('Ferguson', 126, '41.93840', '-92.86340'), ('Gilman', 600, '41.87860', '-92.78780'), ('Haverhill', 170, '41.94410', '-92.96120'), ('Laurel', 266, '41.88380', '-92.92130'), ('Le Grand', 883, '42.00720', '-92.77510'), ('Liscomb', 272, '42.19060', '-93.00550'), ('Marshalltown', 26009, '42.03550', '-92.91180'), ('Melbourne', 794, '41.94180', '-93.10220'), ('Rhodes', 294, '41.92740', '-93.18400'), ('St. Anthony', 109, '42.12440', '-93.19780'), ('State Center', 1349, '42.01530', '-93.16540')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ050': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Chelsea', 287, '41.92080', '-92.39520'), ('Clutier', 229, '42.07880', '-92.40310'), ('Dysart', 1303, '42.17220', '-92.30930'), ('Elberon', 245, '42.00540', '-92.31580'), ('Garwin', 565, '42.09400', '-92.67820'), ('Gladbrook', 1015, '42.18610', '-92.71440'), ('Irving', 245, '41.95100', '-92.30000'), ('Lincoln', 182, '42.26320', '-92.69100'), ('Montour', 285, '41.98050', '-92.71540'), ('Tama', 2731, '41.96360', '-92.57480'), ('Toledo', 2539, '41.99050', '-92.58050'), ('Traer', 1594, '42.19250', '-92.46470'), ('Vining', 70, '41.99020', '-92.38550')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ051': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Atkins', 977, '41.99730', '-91.85930'), ('Belle Plaine', 2878, '41.89670', '-92.27410'), ('Blairstown', 682, '41.90580', '-92.08180'), ('Cheney', 1019, '42.25000', '-91.93330'), ('Garrison', 413, '42.14360', '-92.14280'), ('Keystone', 687, '41.99980', '-92.19860'), ('Luzerne', 105, '41.90620', '-92.18020'), ('Mount Auburn', 160, '42.25680', '-92.09330'), ('Newhall', 886, '41.99300', '-91.96670'), ('Norway', 601, '41.90280', '-91.92190'), ('Shellsburg', 938, '42.09320', '-91.86940'), ('Spencers Grove', 1019, '42.28330', '-91.86670'), ('Urbana', 1019, '42.22330', '-91.87500'), ('Van Horne', 716, '42.01000', '-92.09010'), ('Vinton', 5102, '42.16420', '-92.02700'), ('Vinton Memorial Airport', 5102, '42.20000', '-92.03330'), ('Walford', 1224, '41.88330', '-91.84000'), ('Watkins', 601, '41.88330', '-91.98330')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ052': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alburnett', 559, '42.14950', '-91.61820'), ('Bertram', 681, '41.95490', '-91.53660'), ('Cedar Rapids', 120758, '41.97300', '-91.66960'), ('Cedar Rapids Municipal Airport', 813, '41.88330', '-91.71660'), ('Center Point', 2007, '42.18500', '-91.77670'), ('Central City', 1157, '42.20350', '-91.52360'), ('Coggon', 745, '42.27940', '-91.53090'), ('Ely', 1149, '41.87510', '-91.58730'), ('Fairfax', 889, '41.92160', '-91.78010'), ('Hiawatha', 6480, '42.04640', '-91.68370'), ('Lafayette', 559, '42.15000', '-91.68330'), ('Lisbon', 1898, '41.92120', '-91.39110'), ('Marion', 26294, '42.03440', '-91.58950'), ('Marion Airport', 26294, '42.03330', '-91.53330'), ('Midway', 1806, '42.10000', '-91.70000'), ('Mount Vernon', 3390, '41.92310', '-91.42380'), ('Palisades-Kepler Sate Park', 681, '41.91660', '-91.51660'), ('Palo', 614, '42.06420', '-91.79600'), ('Paralta', 1091, '42.03330', '-91.45000'), ('Paris', 1157, '42.23330', '-91.58330'), ('Prairieburg', 175, '42.23780', '-91.42600'), ('Robins', 1806, '42.07840', '-91.66920'), ('Springville', 1091, '42.05580', '-91.44400'), ('Toddville', 1806, '42.10000', '-91.71670'), ('Troy Mills', 750, '42.28330', '-91.68330'), ('Viola', 1091, '42.08330', '-91.38330'), ('Walker', 750, '42.28620', '-91.78090'), ('Waubeek', 1157, '42.16670', '-91.46670'), ('Whittier', 1091, '42.10000', '-91.46670')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ053': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Anamosa', 5494, '42.10900', '-91.28130'), ('Camp Courageous', 0, '42.20850', '-91.10840'), ('Canton', 180, '42.16670', '-90.90000'), ('Center Junction', 131, '42.11440', '-91.08930'), ('Central Park', 131, '42.11670', '-91.13330'), ('Fairview', 5494, '42.08330', '-91.33330'), ('Hale', 626, '42.01670', '-91.06670'), ('Langworthy', 3607, '42.18330', '-91.21670'), ('Martelle', 280, '42.02040', '-91.35760'), ('Monticello', 3607, '42.23770', '-91.19100'), ('Monticello Municipal Airport', 3607, '42.23330', '-91.16660'), ('Morley', 88, '42.00650', '-91.24660'), ('Olin', 716, '41.99760', '-91.14110'), ('Onslow', 223, '42.10800', '-91.01370'), ('Oxford Junction', 573, '41.98460', '-90.95430'), ('Oxford Mills', 573, '41.96660', '-90.96660'), ('Pictured Rocks Wildlife Area', 3607, '42.21660', '-91.11660'), ('Scotch Grove', 131, '42.16670', '-91.10000'), ('Stone City', 5494, '42.11670', '-91.35000'), ('Temple Hill', 1958, '42.23330', '-90.98330'), ('Wapsipinicon State Park', 5494, '42.10000', '-91.28330'), ('Wildwood Acres', 0, '42.17410', '-90.90100'), ('Wyoming', 626, '42.06010', '-91.00480')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ054': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Andrew', 460, '42.15310', '-90.59170'), ('Baldwin', 127, '42.07360', '-90.83900'), ('Bellevue', 2350, '42.25880', '-90.42860'), ('Buckhorn', 6112, '42.06670', '-90.75000'), ('Cottonville', 272, '42.23330', '-90.60000'), ('Crab Town', 127, '42.18330', '-90.80000'), ('Emeline', 127, '42.15000', '-90.83330'), ('Fulton', 6112, '42.15000', '-90.68330'), ('Garry Owen', 97, '42.28330', '-90.83330'), ('Green Island', 55, '42.15460', '-90.32240'), ('Hurstville', 6112, '42.10000', '-90.68330'), ('Ironhills', 127, '42.15000', '-90.76660'), ('La Motte', 272, '42.29490', '-90.62130'), ('Maquoketa', 6112, '42.06530', '-90.66610'), ('Maquoketa Caves State Park', 127, '42.11670', '-90.78330'), ('Maquoketa Municipal Airport', 6112, '42.05000', '-90.73330'), ('Miles', 462, '42.04830', '-90.31750'), ('Monmouth', 180, '42.07370', '-90.88180'), ('Nashville', 127, '42.06670', '-90.78330'), ('Otter Creek', 100, '42.23330', '-90.68330'), ('Preston', 949, '42.04850', '-90.39930'), ('Reeceville', 55, '42.13330', '-90.30000'), ('Sabula', 670, '42.06780', '-90.17410'), ('Smiths', 2350, '42.31670', '-90.43330'), ('South Gary Owen', 97, '42.23330', '-90.80000'), ('Spragueville', 89, '42.07050', '-90.43100'), ('Springbrook', 182, '42.16750', '-90.48190'), ('St. Donatus', 140, '42.36210', '-90.54310'), ('Van Buren', 949, '42.08330', '-90.36670')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ055': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Dunlap', 1139, '41.85280', '-95.59960'), ('Little Sioux', 217, '41.80830', '-96.02670'), ('Logan', 1545, '41.64460', '-95.79100'), ('Magnolia', 200, '41.68740', '-95.87430'), ('Missouri Valley', 2992, '41.55890', '-95.89510'), ('Modale', 303, '41.61920', '-96.01220'), ('Mondamin', 423, '41.70980', '-96.02080'), ('Persia', 363, '41.57900', '-95.57010'), ('Pisgah', 316, '41.83080', '-95.92680'), ('Woodbine', 1564, '41.73650', '-95.70710')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAZ056': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Defiance', 346, '41.82540', '-95.33930'), ('Earling', 471, '41.77610', '-95.41970'), ('Elk Horn', 649, '41.59270', '-95.06040'), ('Harlan', 5282, '41.64900', '-95.32620'), ('Irwin', 372, '41.79010', '-95.20670'), ('Kirkman', 76, '41.72900', '-95.26630'), ('Panama', 212, '41.72670', '-95.47530'), ('Portsmouth', 225, '41.65070', '-95.51940'), ('Shelby', 696, '41.50850', '-95.45160'), ('Tennant', 73, '41.59550', '-95.44290'), ('Westphalia', 160, '41.71930', '-95.39310')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAZ057': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Audubon', 2382, '41.71810', '-94.92980'), ('Brayton', 145, '41.54260', '-94.92560'), ('Exira', 810, '41.59160', '-94.87930'), ('Gray', 82, '41.84130', '-94.98420'), ('Kimballton', 342, '41.62830', '-95.07420')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAZ058': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bagley', 354, '41.84570', '-94.42990'), ('Bayard', 536, '41.85220', '-94.55830'), ('Casey', 478, '41.50730', '-94.52150'), ('Guthrie Center', 1668, '41.67860', '-94.49830'), ('Jamaica', 237, '41.84550', '-94.30720'), ('Menlo', 365, '41.52200', '-94.40350'), ('Panora', 1175, '41.69100', '-94.36490'), ('Yale', 287, '41.77530', '-94.35680')], 'partOfState': 'west central', 'wfo': 'DMX'}, +'IAZ059': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Adel', 3435, '41.61260', '-94.02710'), ('Bouton', 136, '41.85170', '-94.01080'), ('Dallas Center', 1595, '41.68470', '-93.98410'), ('Dawson', 155, '41.84310', '-94.21990'), ('De Soto', 1009, '41.53460', '-94.00850'), ('Dexter', 689, '41.51560', '-94.22690'), ('Granger', 583, '41.76030', '-93.82370'), ('Linden', 226, '41.64300', '-94.27010'), ('Minburn', 391, '41.75790', '-94.02780'), ('Perry', 7633, '41.84210', '-94.09980'), ('Redfield', 833, '41.59010', '-94.19760'), ('Van Meter', 866, '41.53050', '-93.95570'), ('Waukee', 5126, '41.60760', '-93.86240'), ('Woodward', 1200, '41.85630', '-93.92130')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ060': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Alleman', 439, '41.81710', '-93.61030'), ('Altoona', 10345, '41.65090', '-93.47630'), ('Ankeny', 27117, '41.72480', '-93.60530'), ('Bondurant', 1846, '41.68840', '-93.46220'), ('Clive', 12855, '41.60770', '-93.76950'), ('Des Moines', 198682, '41.57670', '-93.61740'), ('Elkhart', 362, '41.79410', '-93.51450'), ('Grimes', 5098, '41.66080', '-93.78930'), ('Johnston', 8649, '41.68590', '-93.70230'), ('Mitchellville', 1715, '41.66150', '-93.36090'), ('Pleasant Hill', 5070, '41.58570', '-93.51440'), ('Polk City', 2344, '41.77310', '-93.71650'), ('Runnells', 352, '41.51230', '-93.35810'), ('Saylorville', 3238, '41.68450', '-93.62580'), ('Urbandale', 29072, '41.63650', '-93.74090'), ('West Des Moines', 46403, '41.57070', '-93.75290'), ('Windsor Heights', 4805, '41.60480', '-93.71190')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ061': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Baxter', 1052, '41.82580', '-93.15070'), ('Colfax', 2223, '41.67620', '-93.24020'), ('Kellogg', 606, '41.71660', '-92.90740'), ('Lambs Grove', 225, '41.70030', '-93.07830'), ('Lynnville', 366, '41.57680', '-92.78620'), ('Mingo', 269, '41.76740', '-93.28430'), ('Monroe', 1808, '41.52020', '-93.10450'), ('Newton', 15579, '41.69510', '-93.04510'), ('Oakland Acres', 166, '41.71930', '-92.82000'), ('Prairie City', 1365, '41.59810', '-93.23540'), ('Reasnor', 194, '41.57850', '-93.02260'), ('Sully', 904, '41.57860', '-92.84650'), ('Valeria', 62, '41.72950', '-93.32450')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ062': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Brooklyn', 1367, '41.73120', '-92.44460'), ('Deep River', 288, '41.58150', '-92.37240'), ('Grinnell', 9105, '41.74080', '-92.72270'), ('Guernsey', 70, '41.64930', '-92.34310'), ('Hartwick', 83, '41.78400', '-92.34600'), ('Malcom', 352, '41.70750', '-92.55780'), ('Montezuma', 1440, '41.58290', '-92.52750'), ('Searsboro', 155, '41.57990', '-92.70480')], 'partOfState': 'central', 'wfo': 'DMX'}, +'IAZ063': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Amana', 1224, '41.80000', '-91.86670'), ('Conroy', 2622, '41.73330', '-92.00000'), ('East Amana', 1224, '41.81670', '-91.85000'), ('Genoa Bluff', 287, '41.71670', '-92.15000'), ('High Amana', 601, '41.80000', '-91.93330'), ('Holbrook', 220, '41.58330', '-91.91670'), ('Homestead', 705, '41.76670', '-91.86670'), ('Koszta', 105, '41.83330', '-92.20000'), ('Ladora', 287, '41.75580', '-92.18540'), ('Lake Iowa', 184, '41.63330', '-92.18330'), ('Marengo', 2535, '41.79720', '-92.06940'), ('Middle Amana', 1224, '41.80000', '-91.90000'), ('Millersburg', 184, '41.57270', '-92.15920'), ('North English', 991, '41.51590', '-92.07810'), ('Parnell', 220, '41.58350', '-92.00480'), ('South Amana', 2535, '41.78330', '-91.96670'), ('Upper South Amana', 2535, '41.76670', '-91.96670'), ('Victor', 952, '41.73090', '-92.29440'), ('West Amana', 2535, '41.80000', '-91.97000'), ('Williamsburg', 2622, '41.66800', '-92.00840')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ064': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Amish', 1393, '41.53330', '-91.78330'), ('Coralville', 15123, '41.69100', '-91.60070'), ('Cosgrove', 975, '41.65000', '-91.73330'), ('Cou Falls', 250, '41.81660', '-91.66670'), ('Elmira', 2188, '41.71660', '-91.41670'), ('Frytown', 2293, '41.56670', '-91.73330'), ('Hills', 679, '41.57470', '-91.53710'), ('Iowa City', 62220, '41.65830', '-91.53510'), ('Iowa City Municipal Airport', 987, '41.63330', '-91.55000'), ('Kent County Park', 705, '41.73330', '-91.73330'), ('Lake Macbride State Park', 1177, '41.80000', '-91.55000'), ('Lone Tree', 1151, '41.48580', '-91.42480'), ('Morse', 1177, '41.75000', '-91.43330'), ('Newport', 1177, '41.73330', '-91.46670'), ('North Liberty', 5367, '41.74150', '-91.60930'), ('Oakdale', 15123, '41.70000', '-91.60000'), ('Oasis', 2188, '41.70000', '-91.38330'), ('Oxford', 705, '41.72470', '-91.78970'), ('River Junction', 928, '41.48330', '-91.50000'), ('Sandy Beach Camp Ground', 0, '41.81360', '-91.59520'), ('Sharon Center', 2293, '41.56670', '-91.66660'), ('Shueyville', 250, '41.84810', '-91.64850'), ('Solon', 1177, '41.80500', '-91.49460'), ('Sugar Bottom Camp Ground', 0, '41.75800', '-91.56110'), ('Sutliff', 1898, '41.83330', '-91.38330'), ('Swisher', 813, '41.84340', '-91.69580'), ('Tiffin', 975, '41.70640', '-91.67730'), ('Twin View Heights', 1149, '41.81660', '-91.56660'), ('University Heights', 987, '41.65450', '-91.55800'), ('University Of Iowa', 0, '41.66150', '-91.53610'), ('West Overlook', 0, '41.72480', '-91.52380'), ('Windham', 705, '41.61670', '-91.76660')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ065': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bennett', 395, '41.73970', '-90.97430'), ('Buchanan', 3155, '41.76670', '-91.25000'), ('Cedar Bluff', 2188, '41.78330', '-91.31670'), ('Cedar Valley', 2188, '41.73340', '-91.25000'), ('Clarence', 1008, '41.88590', '-91.05810'), ('Durant', 1677, '41.60090', '-90.90900'), ('Lowden', 794, '41.85860', '-90.92310'), ('Mechanicsville', 1173, '41.90490', '-91.25330'), ('Rochester', 283, '41.66670', '-91.16670'), ('Springdale', 2188, '41.66670', '-91.26670'), ('Stanwood', 680, '41.89360', '-91.15000'), ('Sunbury', 1677, '41.66670', '-90.93330'), ('Tipton', 3155, '41.77050', '-91.12890'), ('Tipton Matthews Airport', 3155, '41.77000', '-91.15000'), ('West Branch', 2188, '41.67010', '-91.34920')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ066': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Andover', 87, '41.97880', '-90.25160'), ('Bryant', 232, '41.96670', '-90.33330'), ('Bulgers Hollow', 3698, '41.93330', '-90.18330'), ('Calamus', 394, '41.82670', '-90.75970'), ('Camanche', 4215, '41.79390', '-90.27500'), ('Charlotte', 421, '41.96190', '-90.46750'), ('Clinton', 27772, '41.84320', '-90.23300'), ('Clinton Municipal Airport', 240, '41.83330', '-90.33330'), ('Delmar', 514, '41.99950', '-90.60500'), ('Dewitt', 5049, '41.82160', '-90.54680'), ('Elvira', 240, '41.86660', '-90.35000'), ('Elwood', 497, '42.00000', '-90.73330'), ('Folletts', 240, '41.75000', '-90.35000'), ('Goose Lake', 232, '41.96820', '-90.38220'), ('Grand Mound', 676, '41.82350', '-90.64890'), ('Lost Nation', 497, '41.96610', '-90.81750'), ('Low Moor', 240, '41.80240', '-90.35430'), ('Lyons', 0, '41.93000', '-90.71100'), ('Malone', 299, '41.81670', '-90.45000'), ('Rock Creek Park', 0, '41.75100', '-90.31960'), ('Sherman Park', 0, '41.77400', '-90.72700'), ('Teeds Grove', 87, '42.01670', '-90.25000'), ('Toronto', 134, '41.90330', '-90.86290'), ('Welton', 159, '41.91190', '-90.59780'), ('Wheatland', 772, '41.83290', '-90.83720')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ067': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ardon', 703, '41.40000', '-91.18330'), ('Atalissa', 283, '41.57150', '-91.16660'), ('Conesville', 424, '41.38040', '-91.34810'), ('Cranston', 392, '41.38330', '-91.26670'), ('Fairport', 1169, '41.43330', '-90.90000'), ('Fruitland', 703, '41.34680', '-91.12570'), ('Midway Beach', 1169, '41.46670', '-90.83330'), ('Montpelier', 1169, '41.46670', '-90.80000'), ('Moscow', 2829, '41.58330', '-91.08330'), ('Muscatine', 22697, '41.41770', '-91.07170'), ('Muscatine Municipal Airport', 703, '41.36670', '-91.15000'), ('New Era', 182, '41.46670', '-90.90000'), ('Nichols', 374, '41.47910', '-91.30810'), ('Pleasant Prairie', 182, '41.51670', '-90.86670'), ('Stockton', 182, '41.58330', '-90.86670'), ('Sweetland Center', 2829, '41.50000', '-90.96670'), ('West Liberty', 3332, '41.57270', '-91.26380'), ('Wildcat Den State Park', 1169, '41.46670', '-90.88330'), ('Wilton', 2829, '41.58910', '-91.02470')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ068': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bettendorf', 31275, '41.56420', '-90.47620'), ('Big Rock', 0, '41.77030', '-90.82620'), ('Blue Grass', 1169, '41.50860', '-90.76360'), ('Buffalo', 1321, '41.46030', '-90.71820'), ('Campbells Island', 127, '41.55000', '-90.43330'), ('Credit Island', 40552, '41.50000', '-90.61670'), ('Davenport', 98359, '41.55680', '-90.60420'), ('Davenport Municipal Airport', 4159, '41.61670', '-90.58330'), ('Dixon', 276, '41.74280', '-90.78140'), ('Donahue', 293, '41.69190', '-90.67500'), ('Eldridge', 4159, '41.63580', '-90.57330'), ('Le Claire', 2847, '41.59880', '-90.36460'), ('Long Grove', 597, '41.69450', '-90.58040'), ('Maysville', 163, '41.64910', '-90.71820'), ('McCausland', 299, '41.74340', '-90.44520'), ('New Liberty', 121, '41.71660', '-90.87860'), ('Panorama Park', 111, '41.55510', '-90.45470'), ('Park View', 2169, '41.68950', '-90.54080'), ('Plainview', 163, '41.66670', '-90.78330'), ('Pleasant Valley', 1601, '41.56670', '-90.41670'), ('Princeton', 946, '41.67110', '-90.35950'), ('Princeton Wildlife Area', 638, '41.70000', '-90.31670'), ('Riverdale', 656, '41.53540', '-90.46710'), ('Scott County Park', 2169, '41.71670', '-90.53330'), ('Walcott', 1528, '41.59460', '-90.77500'), ('West Lake Park', 1321, '41.51670', '-90.68330')], 'partOfState': 'east central', 'wfo': 'DVN'}, +'IAZ069': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Avoca', 1610, '41.48080', '-95.33550'), ('Carson', 668, '41.23660', '-95.41630'), ('Carter Lake', 3248, '41.28870', '-95.91610'), ('Council Bluffs', 58268, '41.24000', '-95.85950'), ('Crescent', 537, '41.36630', '-95.85880'), ('Hancock', 207, '41.39330', '-95.36500'), ('Macedonia', 325, '41.19210', '-95.42480'), ('McClelland', 129, '41.32760', '-95.68380'), ('Minden', 564, '41.46710', '-95.54190'), ('Neola', 845, '41.45090', '-95.61720'), ('Oakland', 1487, '41.30850', '-95.39670'), ('Treynor', 950, '41.23110', '-95.60640'), ('Underwood', 688, '41.38570', '-95.67930'), ('Walnut', 778, '41.47910', '-95.22270')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAZ070': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Anita', 1049, '41.44360', '-94.76530'), ('Atlantic', 7257, '41.39820', '-95.01480'), ('Cumberland', 281, '41.27370', '-94.86970'), ('Griswold', 1039, '41.23390', '-95.13890'), ('Lewis', 438, '41.30630', '-95.08420'), ('Marne', 149, '41.44850', '-95.11030'), ('Massena', 414, '41.25130', '-94.76930'), ('Wiota', 149, '41.40060', '-94.88750')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAZ071': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Adair', 839, '41.50010', '-94.64360'), ('Bridgewater', 178, '41.24690', '-94.66740'), ('Fontanelle', 692, '41.29000', '-94.56070'), ('Greenfield', 2129, '41.30550', '-94.45850'), ('Orient', 402, '41.20280', '-94.41790'), ('Stuart', 1712, '41.50240', '-94.31830')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAZ072': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Earlham', 1298, '41.49220', '-94.12200'), ('East Peru', 153, '41.22750', '-93.92760'), ('Macksburg', 142, '41.21430', '-94.18540'), ('Patterson', 126, '41.34900', '-93.87920'), ('St. Charles', 619, '41.28790', '-93.80630'), ('Truro', 427, '41.21040', '-93.84570'), ('Winterset', 4768, '41.33800', '-94.01850')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ073': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ackworth', 85, '41.36510', '-93.47300'), ('Bevington', 58, '41.35960', '-93.79020'), ('Carlisle', 3497, '41.50000', '-93.48520'), ('Cumming', 162, '41.48470', '-93.76180'), ('Hartford', 759, '41.45780', '-93.40390'), ('Indianola', 12998, '41.36070', '-93.56550'), ('Lacona', 360, '41.18990', '-93.38420'), ('Martensdale', 467, '41.37410', '-93.73820'), ('Milo', 839, '41.28930', '-93.43850'), ('New Virginia', 469, '41.18090', '-93.73050'), ('Norwalk', 6884, '41.49810', '-93.68090'), ('Sandyville', 61, '41.37020', '-93.38550'), ('Spring Hill', 92, '41.41200', '-93.64900'), ('St. Marys', 134, '41.30860', '-93.73320')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ074': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bussey', 450, '41.20590', '-92.88420'), ('Hamilton', 144, '41.17000', '-92.90410'), ('Harvey', 277, '41.31660', '-92.92340'), ('Knoxville', 7731, '41.31910', '-93.10130'), ('Lake Red Rock', 0, '41.41480', '-93.09890'), ('Marysville', 54, '41.18270', '-92.95340'), ('Melcher-Dallas', 1298, '41.22780', '-93.24080'), ('Pella', 9832, '41.40870', '-92.91900'), ('Pleasantville', 1539, '41.38900', '-93.26740'), ('Swan', 121, '41.46560', '-93.30940')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ075': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Barnes City', 201, '41.50740', '-92.46880'), ('Beacon', 518, '41.27460', '-92.68120'), ('Fremont', 704, '41.21210', '-92.43490'), ('Keomah Village', 97, '41.28820', '-92.53630'), ('Leighton', 153, '41.33850', '-92.78660'), ('New Sharon', 1301, '41.47020', '-92.65060'), ('Oskaloosa', 10938, '41.29300', '-92.63960'), ('Rose Hill', 205, '41.32040', '-92.46280'), ('University Park', 536, '41.28670', '-92.61580')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ076': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Coal Creek', 92, '41.43330', '-92.40000'), ('Delta', 410, '41.32310', '-92.32940'), ('Gibson', 92, '41.48060', '-92.39150'), ('Harper', 134, '41.36330', '-92.05120'), ('Hayesville', 64, '41.26450', '-92.24700'), ('Hedrick', 837, '41.17060', '-92.30770'), ('Keota', 1025, '41.36600', '-91.95550'), ('Keswick', 295, '41.45500', '-92.23730'), ('Kinross', 80, '41.45940', '-91.98720'), ('Lancaster', 2209, '41.28330', '-92.16660'), ('Martinsburg', 126, '41.17840', '-92.25230'), ('Ollie', 224, '41.19880', '-92.09280'), ('Pekin', 224, '41.16670', '-92.16670'), ('Richland', 587, '41.18590', '-91.99500'), ('Sig-Nor Field Airport', 2209, '41.31220', '-92.18530'), ('Sigourney', 2209, '41.33400', '-92.20650'), ('Sigourney Iowa Airport', 2209, '41.38330', '-92.18830'), ('South English', 213, '41.45230', '-92.09080'), ('Talleyrand', 1025, '41.30000', '-91.96670'), ('Thornburg', 84, '41.45630', '-92.33260'), ('Webster', 110, '41.43790', '-92.17080'), ('What Cheer', 678, '41.40010', '-92.35390')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAZ077': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Ainsworth', 524, '41.29020', '-91.55410'), ('Brighton', 687, '41.17430', '-91.82060'), ('Coppock', 57, '41.16700', '-91.72000'), ('Crawfordsville', 295, '41.21440', '-91.53590'), ('Haskins', 524, '41.33330', '-91.53330'), ('Kalona', 2293, '41.48760', '-91.70050'), ('Lake Darling State Park', 131, '41.18330', '-91.90000'), ('Noble', 945, '41.16670', '-91.61670'), ('Richmond', 2293, '41.45000', '-91.70000'), ('Riverside', 928, '41.48230', '-91.57310'), ('Rubio', 587, '41.21670', '-91.93330'), ('Washington', 7047, '41.29880', '-91.69090'), ('Washington Airport', 7047, '41.28330', '-91.66670'), ('Wellman', 1393, '41.46790', '-91.83700'), ('West Chester', 159, '41.34000', '-91.81620')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAZ078': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Amber', 2124, '41.13330', '-91.18330'), ('Cairo', 376, '41.18330', '-91.33330'), ('Columbus City', 376, '41.25930', '-91.37500'), ('Columbus Junction', 1900, '41.27940', '-91.36460'), ('Cotter', 48, '41.29260', '-91.47050'), ('Elrick Junction', 439, '41.10000', '-91.11670'), ('Fredonia', 251, '41.28470', '-91.33900'), ('Gladwin', 48, '41.36670', '-91.45000'), ('Grandview', 600, '41.27720', '-91.18740'), ('Letts', 392, '41.33000', '-91.23480'), ('Marsh', 132, '41.10000', '-91.35000'), ('Morning Sun', 872, '41.09400', '-91.25150'), ('Newport', 872, '41.08330', '-91.18330'), ('Oakville', 439, '41.09780', '-91.04350'), ('Sand Springs', 600, '41.31770', '-91.19330'), ('Toolesboro', 439, '41.15000', '-91.06670'), ('Wapello', 2124, '41.17840', '-91.18880'), ('Wyman', 295, '41.20000', '-91.46670')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAZ079': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Emerson', 480, '41.01850', '-95.40280'), ('Glenwood', 5358, '41.04780', '-95.74220'), ('Hastings', 214, '41.02390', '-95.49560'), ('Henderson', 171, '41.13910', '-95.43100'), ('Malvern', 1256, '41.00750', '-95.58540'), ('Pacific Junction', 507, '41.01830', '-95.79960'), ('Silver City', 259, '41.11100', '-95.63780')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAZ080': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Coburg', 31, '40.91780', '-95.26560'), ('Elliott', 402, '41.14980', '-95.16300'), ('Grant', 102, '41.14220', '-94.98510'), ('Red Oak', 6197, '41.01250', '-95.22460'), ('Stanton', 714, '40.98110', '-95.10320'), ('Villisca', 1344, '40.93100', '-94.97790')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAZ081': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Carbon', 28, '41.04930', '-94.82350'), ('Corning', 1783, '40.99390', '-94.73930'), ('Nodaway', 132, '40.93650', '-94.89520'), ('Prescott', 266, '41.02340', '-94.61240')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAZ082': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Afton', 917, '41.02790', '-94.19560'), ('Arispe', 89, '40.94900', '-94.21870'), ('Creston', 7597, '41.05900', '-94.36410'), ('Cromwell', 120, '41.04000', '-94.46190'), ('Kent', 52, '40.95310', '-94.45630'), ('Lorimor', 427, '41.12760', '-94.05700'), ('Shannon City', 70, '40.90900', '-94.26360'), ('Thayer', 66, '41.02920', '-94.04960')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ083': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Murray', 766, '41.04130', '-93.94840'), ('Osceola', 4659, '41.03130', '-93.77380'), ('Woodburn', 244, '41.01050', '-93.59650')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ084': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Chariton', 4573, '41.01760', '-93.30990'), ('Derby', 131, '40.92990', '-93.45670'), ('Lucas', 243, '41.03170', '-93.46030'), ('Russell', 559, '40.98040', '-93.20080'), ('Williamson', 163, '41.08790', '-93.25670')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ085': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Albia', 3706, '41.02660', '-92.80280'), ('Lovilia', 583, '41.13540', '-92.90790'), ('Melrose', 130, '40.98080', '-93.04930')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ086': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Agency', 622, '40.99690', '-92.30730'), ('Blakesburg', 374, '40.96180', '-92.63540'), ('Chillicothe', 90, '41.08600', '-92.52950'), ('Eddyville', 1064, '41.15870', '-92.62970'), ('Eldon', 998, '40.91770', '-92.21820'), ('Kirkville', 214, '41.14290', '-92.50230'), ('Ottumwa', 24998, '41.01990', '-92.41820')], 'partOfState': 'southeast', 'wfo': 'DMX'}, +'IAZ087': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Abingdon', 223, '41.08330', '-92.13330'), ('Batavia', 500, '40.99480', '-92.16760'), ('Beckwith', 9509, '41.01670', '-91.86670'), ('Brookville', 223, '41.05000', '-92.08330'), ('Collett', 423, '40.90800', '-91.98330'), ('East Pleasant Plain', 131, '41.13330', '-91.85000'), ('Fairfield', 9509, '41.00710', '-91.96710'), ('Fairfield Municipal Airport', 9509, '41.05000', '-91.98330'), ('Germanville', 57, '41.10000', '-91.76660'), ('Glasgow', 275, '40.93330', '-91.78330'), ('Libertyville', 325, '40.95860', '-92.04890'), ('Linby', 223, '41.15000', '-92.13330'), ('Lockridge', 275, '40.99360', '-91.74760'), ('Maharishi Vedic City', 0, '41.05250', '-91.99490'), ('Packwood', 223, '41.13250', '-92.08180'), ('Perlee', 131, '41.08330', '-91.90000'), ('Pleasant Plain', 131, '41.14740', '-91.85970'), ('Salina', 131, '41.05000', '-91.83330')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAZ088': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Geode State Park', 914, '40.81670', '-91.38330'), ('Hillsboro', 205, '40.83680', '-91.71350'), ('Lowell', 1937, '40.83330', '-91.43330'), ('Merrimac', 57, '41.08330', '-91.71660'), ('Mount Pleasant', 8751, '40.96310', '-91.54650'), ('Mount Pleasant Municipal Arpt', 8751, '40.95000', '-91.51670'), ('Mount Union', 132, '41.05740', '-91.39060'), ('New London', 1937, '40.92750', '-91.40730'), ('Oakland Mills', 127, '40.93330', '-91.61670'), ('Olds', 249, '41.13330', '-91.54540'), ('Rome', 113, '40.98330', '-91.68070'), ('Salem', 464, '40.85200', '-91.62070'), ('Swedesburg', 249, '41.10000', '-91.55000'), ('Trenton', 945, '41.06670', '-91.63330'), ('Wayland', 945, '41.14770', '-91.65790'), ('Westwood', 0, '40.96480', '-91.62660'), ('Winfield', 1131, '41.12580', '-91.43720')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAZ089': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaverdale', 3161, '40.85000', '-91.21670'), ('Burlington', 26839, '40.80870', '-91.12290'), ('Burlington Regional Airport', 26839, '40.78330', '-91.13330'), ('Danville', 914, '40.86120', '-91.31400'), ('Dodgeville', 1644, '40.95000', '-91.18330'), ('Garland', 872, '41.06670', '-91.21670'), ('Kingston', 1442, '40.98330', '-91.03330'), ('Kossuth', 1644, '41.01670', '-91.13330'), ('Mediapolis', 1644, '41.00820', '-91.16450'), ('Middletown', 535, '40.82920', '-91.26080'), ('Northfield', 1644, '41.06670', '-91.11670'), ('Pleasant Grove', 914, '40.96670', '-91.28330'), ('Prairie Grove', 535, '40.88330', '-91.25000'), ('Sperry', 1644, '40.95000', '-91.15000'), ('Spring Grove', 26839, '40.74330', '-91.16000'), ('West Burlington', 3161, '40.82350', '-91.17860'), ('Yarmouth', 132, '41.03330', '-91.31670')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAZ090': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Farragut', 509, '40.71980', '-95.48010'), ('Hamburg', 1240, '40.60580', '-95.65480'), ('Imogene', 66, '40.87870', '-95.42740'), ('Randolph', 209, '40.87290', '-95.56420'), ('Riverton', 304, '40.68740', '-95.56880'), ('Sidney', 1300, '40.74600', '-95.64440'), ('Tabor', 993, '40.89380', '-95.67210'), ('Thurman', 236, '40.81940', '-95.74840')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAZ091': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Clarinda', 5690, '40.73860', '-95.03570'), ('Coin', 252, '40.65590', '-95.23520'), ('College Springs', 246, '40.62090', '-95.12170'), ('Essex', 884, '40.83300', '-95.30340'), ('Hepburn', 39, '40.84820', '-95.01650'), ('Northboro', 60, '40.60880', '-95.29310'), ('Shambaugh', 188, '40.65710', '-95.03610'), ('Shenandoah', 5546, '40.75940', '-95.36920'), ('Yorktown', 82, '40.73650', '-95.15490')], 'partOfState': 'southwest', 'wfo': 'OAX'}, +'IAZ092': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Athelstan', 18, '40.57750', '-94.54220'), ('Bedford', 1620, '40.67110', '-94.72410'), ('Blockton', 192, '40.61680', '-94.49000'), ('Clearfield', 371, '40.80210', '-94.48600'), ('Conway', 63, '40.74990', '-94.61940'), ('Gravity', 218, '40.76010', '-94.74280'), ('Lenox', 1401, '40.88320', '-94.55820'), ('New Market', 456, '40.73240', '-94.90000'), ('Sharpsburg', 98, '40.80280', '-94.64100')], 'partOfState': 'southwest', 'wfo': 'DMX'}, +'IAZ093': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Beaconsfield', 11, '40.80700', '-94.05040'), ('Benton', 40, '40.70190', '-94.35940'), ('Delphos', 25, '40.66320', '-94.33930'), ('Diagonal', 312, '40.81080', '-94.34120'), ('Ellston', 57, '40.84040', '-94.10830'), ('Kellerton', 372, '40.71020', '-94.04880'), ('Maloy', 28, '40.67420', '-94.41120'), ('Mount Ayr', 1822, '40.71420', '-94.23790'), ('Redding', 78, '40.60600', '-94.38680'), ('Tingley', 171, '40.85280', '-94.19550')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ094': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Davis City', 275, '40.64020', '-93.81190'), ('Decatur City', 199, '40.74230', '-93.83250'), ('Garden Grove', 250, '40.82650', '-93.60750'), ('Grand River', 225, '40.81890', '-93.96250'), ('Lamoni', 2444, '40.62060', '-93.93730'), ('Leon', 1983, '40.74130', '-93.75330'), ('Le Roy', 13, '40.87890', '-93.59220'), ('Pleasanton', 37, '40.58240', '-93.74290'), ('Van Wert', 231, '40.87080', '-93.79190'), ('Weldon', 145, '40.89790', '-93.73510')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ095': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Allerton', 559, '40.70820', '-93.36700'), ('Clio', 91, '40.63470', '-93.45180'), ('Corydon', 1591, '40.75910', '-93.31750'), ('Humeston', 543, '40.86030', '-93.49680'), ('Lineville', 273, '40.58600', '-93.52360'), ('Millerton', 48, '40.84930', '-93.30690'), ('Promise City', 105, '40.74690', '-93.15090'), ('Seymour', 810, '40.68280', '-93.12180')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ096': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Centerville', 5924, '40.73080', '-92.87430'), ('Cincinnati', 428, '40.63180', '-92.92180'), ('Exline', 191, '40.64880', '-92.84170'), ('Moravia', 713, '40.89210', '-92.81830'), ('Moulton', 658, '40.68530', '-92.67900'), ('Mystic', 588, '40.77910', '-92.94370'), ('Numa', 109, '40.68540', '-92.98060'), ('Plano', 58, '40.75530', '-93.04610'), ('Rathbun', 88, '40.80210', '-92.88790'), ('Udell', 58, '40.78020', '-92.74250'), ('Unionville', 127, '40.81900', '-92.69680')], 'partOfState': 'south central', 'wfo': 'DMX'}, +'IAZ097': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Bloomfield', 2601, '40.74810', '-92.41820'), ('Drakesville', 185, '40.79800', '-92.48090'), ('Floris', 153, '40.86410', '-92.33210'), ('Pulaski', 249, '40.69750', '-92.27410')], 'partOfState': 'southeast', 'wfo': 'DMX'}, +'IAZ098': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Austin County Park', 1066, '40.76670', '-91.96670'), ('Bentonsport/Vernon', 458, '40.73340', '-91.85000'), ('Birmingham', 423, '40.87840', '-91.94770'), ('Bonaparte', 458, '40.70090', '-91.80050'), ('Cantril', 257, '40.64310', '-92.06880'), ('Douds/Leando', 325, '40.83330', '-92.08330'), ('Farmington', 756, '40.63880', '-91.73880'), ('Indian Lake Park', 756, '40.63330', '-91.75000'), ('Keosauqua', 1066, '40.73460', '-91.96030'), ('Keosauqua Airport', 1066, '40.74000', '-91.95000'), ('Kilbourn', 1066, '40.80000', '-91.96670'), ('Lacey Keosauqua State Park', 1066, '40.71670', '-91.98330'), ('Lake Sugema Campground', 1066, '40.68330', '-92.00000'), ('Lebanon', 257, '40.73330', '-92.08330'), ('Milton', 550, '40.67130', '-92.16250'), ('Mount Sterling', 40, '40.61900', '-91.93890'), ('Mount Zion', 1066, '40.78330', '-91.93330'), ('Selma', 998, '40.86670', '-92.15000'), ('Stockport', 284, '40.85700', '-91.83320'), ('Utica', 284, '40.81670', '-91.83330')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IAZ099': {'fullStateName': 'Iowa', 'state': 'IA', 'cities': [('Argyle', 963, '40.53330', '-91.56670'), ('Augusta', 535, '40.75000', '-91.28330'), ('Bluff Park', 957, '40.53330', '-91.40000'), ('Charleston', 963, '40.58330', '-91.53330'), ('Croton', 756, '40.58330', '-91.68330'), ('Denmark', 535, '40.75000', '-91.33330'), ('Donnellson', 963, '40.64340', '-91.56490'), ('Fort Madison', 10715, '40.61970', '-91.35220'), ('Fort Madison Municipal Arpt', 10715, '40.66670', '-91.33330'), ('Franklin', 136, '40.66640', '-91.51170'), ('Galland', 957, '40.50000', '-91.38100'), ('Houghton', 130, '40.78300', '-91.61240'), ('Keokuk', 11427, '40.40960', '-91.40350'), ('Keokuk Airport', 957, '40.46670', '-91.43330'), ('Montrose', 957, '40.52540', '-91.41620'), ('Mooar', 11427, '40.45000', '-91.45000'), ('Mt Hamill', 130, '40.75000', '-91.61670'), ('New Boston', 957, '40.56670', '-91.50000'), ('Pilot Grove', 118, '40.76660', '-91.53330'), ('Primrose', 963, '40.68330', '-91.63330'), ('Sandusky', 11427, '40.46670', '-91.38330'), ('Sawyer', 10715, '40.70000', '-91.35000'), ('Shimek State Forest', 756, '40.62000', '-91.68000'), ('St. Francisville', 425, '40.46300', '-91.55300'), ('St. Paul', 118, '40.76690', '-91.51680'), ('Summitville', 957, '40.46670', '-91.45000'), ('Vincennes', 391, '40.50000', '-91.56670'), ('West Point', 980, '40.71580', '-91.45150'), ('Wever', 264, '40.71670', '-91.23330')], 'partOfState': 'southeast', 'wfo': 'DVN'}, +'IDZ001': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Athol', 676, '47.94510', '-116.70650'), ('Bayview', 676, '47.97480', '-116.55550'), ('Blanchard', 1376, '48.01680', '-116.97630'), ('Bonners Ferry', 2515, '48.69170', '-116.31510'), ('Cabinet', 530, '48.08400', '-116.07020'), ('Careywood', 676, '48.03420', '-116.63870'), ('Clark Fork', 530, '48.14790', '-116.17670'), ('Cocolalla', 342, '48.10480', '-116.60980'), ('Colburn', 441, '48.39170', '-116.53380'), ('Coolin', 1754, '48.47450', '-116.84230'), ('Dover', 342, '48.25360', '-116.60030'), ('East Hope', 200, '48.24180', '-116.29130'), ('Eastport', 656, '48.99300', '-116.17480'), ('Elmira', 441, '48.48750', '-116.45680'), ('Granite', 79, '48.08600', '-116.42150'), ('Granite', 676, '48.00630', '-116.66830'), ('Hauser', 668, '47.76970', '-117.01180'), ('Hope', 79, '48.24790', '-116.30660'), ('Kootenai', 441, '48.31070', '-116.51780'), ('Laclede', 676, '47.96880', '-116.75200'), ('Meadow Creek', 656, '48.81870', '-116.15350'), ('Moyie Springs', 656, '48.72480', '-116.19250'), ('Naples', 2515, '48.56930', '-116.38820'), ('Oldtown', 190, '48.18240', '-117.03400'), ('Ponderay', 638, '48.30120', '-116.53950'), ('Porthill', 2515, '48.99230', '-116.49150'), ('Priest River', 1754, '48.18510', '-116.91010'), ('Rathdrum', 4816, '47.81170', '-116.88870'), ('Sandpoint', 6835, '48.27990', '-116.55810'), ('Spirit Lake', 1376, '47.96800', '-116.86970')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDZ002': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Chilco', 494, '47.85830', '-116.74070'), ("Coeur D'alene", 34514, '47.69780', '-116.78480'), ('Dalton Gardens', 2278, '47.73350', '-116.76690'), ('Fernan Lake Village', 186, '47.67330', '-116.74700'), ('Harrison', 267, '47.45240', '-116.78040'), ('Hayden', 9159, '47.76020', '-116.78850'), ('Hayden Lake', 494, '47.76580', '-116.75280'), ('Huetter', 96, '47.70390', '-116.84780'), ('Post Falls', 17247, '47.71250', '-116.94460'), ('State Line', 31, '47.70620', '-117.03510'), ('Worley', 223, '47.40130', '-116.91840')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDZ003': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Chatcolet', 76, '47.35410', '-116.75250'), ('Genesee', 946, '46.55120', '-116.92800'), ('Joel', 798, '46.70630', '-116.87280'), ('Juliaetta', 609, '46.57460', '-116.70790'), ('Kendrick', 369, '46.61390', '-116.65210'), ('Moscow', 21291, '46.72980', '-116.99680'), ('Onaway', 230, '46.92870', '-116.88810'), ('Plummer', 990, '47.32970', '-116.88410'), ('Potlatch', 791, '46.92320', '-116.89790'), ('Princeton', 915, '46.90850', '-117.02080'), ('Tensed', 126, '47.15960', '-116.92340'), ('Troy', 798, '46.73870', '-116.76800'), ('Viola', 915, '46.83650', '-117.02080')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDZ004': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Avery', 840, '47.25030', '-115.80250'), ('Bovill', 305, '46.85830', '-116.39330'), ('Calder', 215, '47.27330', '-116.18750'), ('Cataldo', 1661, '47.54270', '-116.32230'), ('Clarkia', 305, '47.00650', '-116.25120'), ('Deary', 552, '46.80060', '-116.55650'), ('Emida', 2652, '47.10950', '-116.59150'), ('Harvard', 230, '46.91720', '-116.72380'), ('Helmer', 552, '46.80050', '-116.46820'), ('Kellogg', 2395, '47.53930', '-116.13530'), ('Kingston', 1661, '47.54280', '-116.26850'), ('Medimont', 2652, '47.47230', '-116.60200'), ('Mullan', 840, '47.46910', '-115.79400'), ('Murray', 960, '47.62300', '-115.85450'), ('Osburn', 1545, '47.50590', '-115.99960'), ('Pinehurst', 1661, '47.53560', '-116.23340'), ('Prichard', 1545, '47.65380', '-115.97180'), ('Rose Lake', 1661, '47.53670', '-116.46920'), ('Sanders', 126, '47.10380', '-116.79050'), ('Santa', 2652, '47.15020', '-116.44220'), ('Smelterville', 651, '47.54240', '-116.17650'), ('St. Joe', 2652, '47.30670', '-116.35120'), ('St. Maries', 2652, '47.31490', '-116.57060'), ('Wallace', 960, '47.47290', '-115.92230'), ('Wardner', 215, '47.52030', '-116.13400')], 'partOfState': 'panhandle', 'wfo': 'OTX'}, +'IDZ005': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Cardiff', 617, '46.57444', '-115.81139'), ('Dent', 3247, '46.62389', '-116.20222'), ('Elk River', 156, '46.78361', '-116.17889'), ('Headquarters', 617, '46.63000', '-115.80833'), ('Jaype', 617, '46.53028', '-115.82889'), ('Pierce', 617, '46.49111', '-115.79806')], 'partOfState': 'north central', 'wfo': 'MSO'}, +'IDZ006': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Burgdorf', 2084, '45.27722', '-115.91194'), ('Elk City', 226, '45.82694', '-115.43583'), ('Fall Creek', 226, '45.81222', '-115.65167'), ('Golden', 226, '45.81222', '-115.67889'), ('Lowell', 675, '46.14417', '-115.59472'), ('Mackay Bar', 2084, '45.37611', '-115.50528'), ('Newsome', 226, '45.90750', '-115.62917'), ('Orogrande', 226, '45.70556', '-115.54250'), ('Powell', 354, '46.57917', '-114.71778'), ('Red River Hot Spring', 226, '45.78778', '-115.19917'), ('Riggins Hot Spring', 410, '45.41694', '-116.17083'), ('Warren', 2084, '45.26417', '-115.67556')], 'partOfState': 'central', 'wfo': 'MSO'}, +'IDZ007': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Ahsahka', 3247, '46.50222', '-116.32306'), ('Clearwater', 226, '46.02250', '-115.89000'), ('Cottonwood', 944, '46.04861', '-116.34861'), ('East Kamiah', 1160, '46.20278', '-116.00694'), ('Fenn', 944, '45.96333', '-116.25528'), ('Ferdinand', 145, '46.15250', '-116.38833'), ('Glenwood', 416, '46.24417', '-115.83194'), ('Grangeville', 3328, '45.92667', '-116.12139'), ('Greer', 3247, '46.39000', '-116.17417'), ('Harpster', 226, '45.98667', '-115.96250'), ('Keuterville', 944, '46.03417', '-116.44056'), ('Kooskia', 675, '46.14500', '-115.97694'), ('Musselshell', 617, '46.35722', '-115.74278'), ('Orofino', 3247, '46.47944', '-116.25417'), ('Pardee', 1160, '46.29861', '-116.12444'), ('Riverside', 3247, '46.49556', '-116.29639'), ('Stites', 226, '46.09167', '-115.97528'), ('Syringa', 675, '46.15083', '-115.72611'), ('Teakean', 186, '46.55111', '-116.37972'), ('Weippe', 416, '46.37611', '-115.93722'), ('Winona', 1160, '46.13222', '-116.10694'), ('Woodland', 1160, '46.31111', '-116.06750')], 'partOfState': 'central', 'wfo': 'MSO'}, +'IDZ008': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Canfield', 106, '45.83778', '-116.37083'), ('Copperville', 106, '45.75306', '-116.32333'), ('Lucile', 410, '45.53528', '-116.30944'), ('Pollock', 410, '45.31250', '-116.35806'), ('Riggins', 410, '45.42222', '-116.31444'), ('Slate Creek', 106, '45.63833', '-116.27944'), ('White Bird', 106, '45.76167', '-116.29972')], 'partOfState': 'central', 'wfo': 'MSO'}, +'IDZ009': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Cobalt', 3122, '45.09306', '-114.23083'), ('Leesburg', 3122, '45.22389', '-114.11306'), ('Shoup', 3122, '45.37694', '-114.27611'), ('Yellowjacket', 909, '44.97972', '-114.53083')], 'partOfState': 'east central', 'wfo': 'MSO'}, +'IDZ010': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Baker', 3122, '45.09472', '-113.73361'), ('Carmen', 3122, '45.24250', '-113.89250'), ('Ellis', 909, '44.69194', '-114.04750'), ('Gibbonsville', 3122, '45.55556', '-113.92222'), ('Gilmore', 90, '44.45889', '-113.26889'), ('Leadore', 90, '44.68028', '-113.35722'), ('Lemhi', 90, '44.85167', '-113.61889'), ('May', 909, '44.60444', '-113.91111'), ('Nicholia', 90, '44.36000', '-113.01083'), ('North Fork', 3122, '45.40611', '-113.99306'), ('Patterson', 90, '44.52361', '-113.71139'), ('Salmon', 3122, '45.17583', '-113.89500'), ('Tendoy', 3122, '44.95944', '-113.64389'), ('Williams Lake', 3122, '45.01194', '-113.96500')], 'partOfState': 'east central', 'wfo': 'MSO'}, +'IDZ011': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bear', 816, '45.01700', '-116.68300'), ('Big Creek', 2084, '45.13330', '-115.31670'), ('Cascade', 997, '44.51300', '-116.04070'), ('Cuprum', 533, '45.08300', '-116.70000'), ('Deadwood Reservoir', 154, '44.30000', '-115.66670'), ('Donnelly', 138, '44.73030', '-116.07590'), ('McCall', 2084, '44.91340', '-116.10750'), ('Meadows', 533, '44.96700', '-116.22200'), ('New Meadows', 533, '44.97070', '-116.28430'), ('Ola', 770, '44.17970', '-116.28080'), ('Smiths Ferry', 154, '44.29890', '-116.08000'), ('Tamarack', 533, '44.95000', '-116.36700'), ('Warm Lake', 997, '44.64780', '-115.66890'), ('Yellow Pine', 338, '44.90000', '-115.48330')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDZ012': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Caldwell', 25967, '43.65830', '-116.67490'), ('Emmett', 5490, '43.87390', '-116.49390'), ('Fruitland', 3805, '44.01800', '-116.92010'), ('Greenleaf', 862, '43.67230', '-116.82030'), ('Homedale', 2528, '43.61810', '-116.93590'), ('Huston', 862, '43.61700', '-116.78300'), ('Marsing', 890, '43.54560', '-116.80680'), ('Melba', 439, '43.37390', '-116.52950'), ('Middleton', 2978, '43.70770', '-116.62400'), ('Murphy', 439, '43.21690', '-116.54470'), ('Nampa', 51867, '43.58000', '-116.56400'), ('New Plymouth', 1400, '43.97080', '-116.81800'), ('Notus', 458, '43.72570', '-116.79980'), ('Parma', 1771, '43.78560', '-116.94050'), ('Payette', 7054, '44.07700', '-116.92900'), ('Sweet', 770, '43.96470', '-116.31500'), ('Weiser', 5343, '44.25080', '-116.96670'), ('Wilder', 1462, '43.67660', '-116.90780')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDZ013': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Anderson Dam', 11143, '43.35000', '-115.45000'), ('Atlanta', 100, '43.79470', '-115.11780'), ('Banks', 154, '44.08390', '-116.11500'), ('Centerville', 60, '43.91700', '-115.88300'), ('Crouch', 154, '44.11530', '-115.97160'), ('Featherville', 395, '43.61500', '-115.26690'), ('Gardena', 770, '43.98300', '-116.20000'), ('Garden Valley', 154, '44.09750', '-115.95780'), ('Horseshoe Bend', 770, '43.91300', '-116.19460'), ('Idaho City', 458, '43.84250', '-115.85110'), ('Lowman', 458, '44.06890', '-115.61500'), ('Pine', 11143, '43.48080', '-115.31500'), ('Pioneerville', 60, '43.95000', '-115.86700'), ('Placerville', 60, '43.94300', '-115.94480'), ('Prairie', 11143, '43.50000', '-115.58330')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDZ014': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Boise', 145987, '43.60670', '-116.22610'), ('Bruneau', 5936, '42.86580', '-115.78080'), ('Eagle', 11085, '43.69350', '-116.35480'), ('Garden City', 10624, '43.64850', '-116.26700'), ('Glenns Ferry', 1611, '42.95400', '-115.29990'), ('Grand View', 470, '42.98350', '-116.09000'), ('Hammett', 1611, '42.94000', '-115.47000'), ('Hot Spring', 5936, '42.78330', '-115.70000'), ('Kuna', 5382, '43.49010', '-116.41750'), ('Meridian', 34919, '43.61110', '-116.39970'), ('Mountain Home', 11143, '43.13830', '-115.68870'), ('Mountain Home AFB', 5936, '43.04960', '-115.86550'), ('Oreana', 470, '43.05000', '-116.35000'), ('Star', 1795, '43.70000', '-116.48300'), ('Swan Falls', 439, '43.25000', '-116.36700')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDZ015': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Grasmere', 908, '42.38330', '-115.88330'), ('Murphy Hot Springs', 277, '42.03330', '-115.36670'), ('Riddle', 908, '42.19000', '-116.11000'), ('Three Creek', 277, '42.06670', '-115.15000')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDZ016': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bliss', 275, '42.92620', '-114.94910'), ('Buhl', 3985, '42.59860', '-114.76070'), ('Castleford', 277, '42.52130', '-114.87110'), ('Eden', 411, '42.60520', '-114.20870'), ('Filer', 1620, '42.56890', '-114.60890'), ('Gooding', 3384, '42.93810', '-114.71260'), ('Hagerman', 656, '42.81700', '-114.89670'), ('Hansen', 970, '42.53130', '-114.30070'), ('Hazelton', 687, '42.59480', '-114.13430'), ('Jerome', 7780, '42.72570', '-114.51570'), ('Kimberly', 2614, '42.53420', '-114.36450'), ('Murtaugh', 139, '42.49190', '-114.16020'), ('Twin Falls', 34469, '42.56150', '-114.46280'), ('Wendell', 2338, '42.77610', '-114.70180')], 'partOfState': 'south central', 'wfo': 'BOI'}, +'IDZ017': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Acequia', 144, '42.66850', '-113.59560'), ('Burley', 9316, '42.53890', '-113.78790'), ('Carey', 513, '43.30000', '-113.95000'), ('Declo', 338, '42.51930', '-113.62810'), ('Dietrich', 150, '42.91370', '-114.26400'), ('Heyburn', 2899, '42.55580', '-113.76090'), ('Kimama', 998, '42.83000', '-113.78000'), ('Minidoka', 129, '42.75400', '-113.48900'), ('Owinza', 412, '42.90000', '-114.05000'), ('Paul', 998, '42.60640', '-113.78240'), ('Picabo', 1876, '43.30000', '-114.07000'), ('Richfield', 412, '43.05230', '-114.15510'), ('Rupert', 5645, '42.61810', '-113.67370'), ('Shoshone', 1398, '42.93620', '-114.40460')], 'partOfState': 'south central', 'wfo': 'PIH'}, +'IDZ018': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Clayton', 27, '44.25910', '-114.39850'), ('Custer', 100, '44.38000', '-114.68000'), ('Obsidian', 100, '44.00000', '-114.83000'), ('Stanley', 100, '44.21580', '-114.93700'), ('Sunbeam', 100, '44.27000', '-114.73000')], 'partOfState': 'central', 'wfo': 'PIH'}, +'IDZ019': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Ashton', 1129, '44.07340', '-111.44860'), ('Big Springs', 215, '44.50000', '-111.25000'), ('Chester', 3342, '44.00000', '-111.57000'), ('Clementsville', 15, '43.87000', '-111.37000'), ('Driggs', 1100, '43.72530', '-111.10710'), ('Drummond', 15, '43.99890', '-111.34160'), ('Dubois', 647, '44.17350', '-112.22940'), ('Egin', 319, '43.93000', '-111.83000'), ('Felt', 247, '43.87000', '-111.18000'), ('Humphrey', 38, '44.48000', '-112.23000'), ('Idmon', 38, '44.37000', '-111.90000'), ('Island Park', 215, '44.55690', '-111.33700'), ('Judkins', 247, '43.92000', '-111.15000'), ('Kilgore', 38, '44.40000', '-111.88000'), ('Macks Inn', 215, '44.50000', '-111.33000'), ('Marysville', 1129, '44.07000', '-111.42000'), ('Newdale', 358, '43.88610', '-111.60410'), ('Parker', 319, '43.95860', '-111.75840'), ('Rea', 215, '44.47000', '-111.43000'), ('Small', 647, '44.22000', '-112.38000'), ('Spencer', 38, '44.38080', '-112.18640'), ('Squirrel', 15, '44.03000', '-111.30000'), ('St. Anthony', 3342, '43.96620', '-111.68370'), ('Teton', 569, '43.88780', '-111.66850'), ('Tetonia', 247, '43.81590', '-111.15880'), ('Victor', 840, '43.60370', '-111.11330'), ('Warm River', 10, '44.11960', '-111.32270')], 'partOfState': 'eastern', 'wfo': 'PIH'}, +'IDZ020': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Ammon', 6187, '43.47960', '-111.96830'), ('Archer', 545, '43.72000', '-111.78000'), ('Atomic City', 25, '43.44430', '-112.81260'), ('Basalt', 419, '43.31440', '-112.16520'), ('Butte City', 76, '43.60640', '-113.23850'), ('Camas', 12, '44.00000', '-112.22000'), ('Craters Of Moon', 29, '43.42000', '-113.53000'), ('Firth', 408, '43.30560', '-112.18310'), ('Goshen', 3813, '43.32000', '-112.08000'), ('Hamer', 12, '43.92570', '-112.20370'), ('Herbert', 545, '43.70000', '-111.67000'), ('Idaho Falls', 50730, '43.49290', '-112.03500'), ('Idaho Falls Arpt', 50730, '43.50000', '-112.04000'), ('Iona', 1201, '43.52850', '-111.92770'), ('Lewisville', 467, '43.69490', '-112.01400'), ('Lorenzo', 2998, '43.73000', '-111.88000'), ('Menan', 707, '43.72200', '-111.99410'), ('Monteview', 270, '43.93000', '-112.53000'), ('Moody', 358, '43.83000', '-111.63000'), ('Mud Lake', 270, '43.84260', '-112.47910'), ('Osgood', 50730, '43.57000', '-112.10000'), ('Ozone', 6187, '43.40000', '-111.85000'), ('Plano', 17257, '43.88000', '-111.88000'), ('Poplar', 545, '43.62000', '-111.68000'), ('Rexburg', 17257, '43.82520', '-111.78740'), ('Rigby', 2998, '43.67390', '-111.91550'), ('Ririe', 545, '43.63130', '-111.77340'), ('Roberts', 647, '43.72070', '-112.12680'), ('Shelley', 3813, '43.38020', '-112.12310'), ('Sugar City', 1242, '43.87240', '-111.74650'), ('Taber', 25, '43.32000', '-112.63000'), ('Terreton', 270, '43.83000', '-112.43000'), ('Thornton', 17257, '43.75000', '-111.85000'), ('Ucon', 943, '43.59420', '-111.95540')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDZ021': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Aberdeen', 1840, '42.94460', '-112.83700'), ('American Falls', 4111, '42.78200', '-112.85380'), ('Arbon Valley', 627, '42.88390', '-112.59780'), ('Blackfoot', 10419, '43.19400', '-112.34490'), ('Chubbuck', 9700, '42.92220', '-112.46470'), ('Cold Water', 316, '42.62000', '-113.12000'), ('Fort Hall', 3193, '43.00650', '-112.44730'), ('Gibson', 3193, '43.08000', '-112.42000'), ('Michaud', 613, '42.93000', '-112.57000'), ('Moreland', 10419, '43.22000', '-112.45000'), ('Neeley', 4111, '42.73000', '-112.88000'), ('Pingree', 3193, '43.12000', '-112.62000'), ('Pocatello', 51466, '42.87620', '-112.46850'), ('Pocatello Arpt', 613, '42.92000', '-112.60000'), ('Rockford', 3193, '43.18000', '-112.55000'), ('Rose', 10419, '43.25000', '-112.33000'), ('Springfield', 1840, '43.08000', '-112.70000'), ('Sterling', 1840, '43.03000', '-112.75000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDZ022': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Albion', 262, '42.41100', '-113.58010'), ('Almo', 0, '42.10000', '-113.63000'), ('Basin', 668, '42.25000', '-113.78000'), ('Black Pine', 0, '42.02000', '-112.98000'), ('Bridge', 0, '42.13000', '-113.33000'), ('Buist', 2158, '42.33000', '-112.43000'), ('Cherry Creek', 2158, '42.10000', '-112.23000'), ('Churchill', 668, '42.35000', '-113.92000'), ('Conant', 177, '42.27000', '-113.45000'), ('Crystal', 51466, '42.63000', '-112.48000'), ('Elba', 262, '42.25000', '-113.55000'), ('Heglar', 177, '42.47000', '-113.15000'), ('Holbrook', 251, '42.17000', '-112.65000'), ('Idahome', 177, '42.42000', '-113.38000'), ('Keogh', 177, '42.22000', '-113.33000'), ('Locust', 668, '42.27000', '-113.87000'), ('Malad City', 2158, '42.18950', '-112.24910'), ('Malta', 177, '42.30760', '-113.36970'), ('Marion', 668, '42.28000', '-113.90000'), ('Oakley', 668, '42.24240', '-113.88010'), ('Pleasantview', 2158, '42.18000', '-112.35000'), ('Ridgedale', 0, '42.02000', '-112.48000'), ('Rockland', 316, '42.57360', '-112.87420'), ('Roy', 316, '42.37000', '-112.82000'), ('Samaria', 2158, '42.12000', '-112.33000'), ('Stone', 251, '42.02000', '-112.70000'), ('Sublett', 177, '42.32000', '-113.13000'), ('View', 338, '42.45000', '-113.68000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDZ023': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Arimo', 348, '42.55950', '-112.17060'), ('Bancroft', 382, '42.72020', '-111.88230'), ('Bone', 6187, '43.32000', '-111.80000'), ('Chesterfield', 382, '42.87000', '-111.88000'), ('Conda', 3381, '42.73000', '-111.52000'), ('Downey', 613, '42.42940', '-112.12280'), ('Freedom', 341, '42.98000', '-111.05000'), ('Grace', 990, '42.57630', '-111.73000'), ('Gray', 200, '43.05000', '-111.35000'), ('Hatch', 382, '42.82000', '-111.83000'), ('Hawkins', 348, '42.53000', '-112.33000'), ('Henry', 3381, '42.90000', '-111.52000'), ('Herman', 157, '43.13000', '-111.43000'), ('Inkom', 738, '42.79690', '-112.24780'), ('Irwin', 157, '43.39750', '-111.26520'), ('Lago', 0, '42.45000', '-111.68000'), ('Lava Hot Springs', 521, '42.62030', '-112.00960'), ('Lund', 382, '42.65000', '-111.88000'), ('McCammon', 805, '42.64700', '-112.19230'), ('Niter', 990, '42.50000', '-111.72000'), ('Palisades', 157, '43.35000', '-111.22000'), ('Pebble', 521, '42.75000', '-112.02000'), ('Portneuf', 738, '42.80000', '-112.35000'), ('Robin', 348, '42.58000', '-112.25000'), ('Soda Springs', 3381, '42.65860', '-111.58550'), ('Swanlake', 53, '42.32000', '-112.00000'), ('Swan Valley', 213, '43.43980', '-111.31500'), ('Virginia', 348, '42.50000', '-112.17000'), ('Wayan', 267, '42.98000', '-111.37000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDZ024': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Banida', 0, '42.23000', '-111.93000'), ('Clifton', 213, '42.18770', '-112.00510'), ('Dayton', 444, '42.11300', '-111.97640'), ('Franklin', 641, '42.01610', '-111.80230'), ('Oxford', 53, '42.25980', '-112.01660'), ('Preston', 4682, '42.09730', '-111.87450'), ('Riverdale', 0, '42.17000', '-111.83000'), ('Weston', 425, '42.03840', '-111.97710'), ('Whitney', 0, '42.07000', '-111.83000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDZ025': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Alton', 0, '42.23000', '-111.15000'), ('Bennington', 0, '42.38000', '-111.32000'), ('Bern', 0, '42.33000', '-111.38000'), ('Bloomington', 251, '42.19090', '-111.40480'), ('Fish Haven', 0, '42.03000', '-111.38000'), ('Geneva', 0, '42.35000', '-111.07000'), ('Georgetown', 558, '42.47780', '-111.36500'), ('Liberty', 0, '42.32000', '-111.45000'), ('Lindsayville', 0, '42.42000', '-111.42000'), ('Mapleton', 0, '42.08000', '-111.75000'), ('Mink Creek', 0, '42.23000', '-111.72000'), ('Montpelier', 2785, '42.32310', '-111.30090'), ('Nounan', 0, '42.47000', '-111.45000'), ('Ovid', 0, '42.28000', '-111.38000'), ('Paris', 576, '42.23000', '-111.40000'), ('Sharon', 0, '42.35000', '-111.47000'), ('St. Charles', 156, '42.11260', '-111.38920'), ('Thatcher', 0, '42.42000', '-111.72000'), ('Wardboro', 0, '42.25000', '-111.27000')], 'partOfState': 'southeast', 'wfo': 'PIH'}, +'IDZ026': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Culdesac', 378, '46.37500', '-116.66940'), ('Gifford', 72, '46.43930', '-116.55330'), ('Lapwai', 1134, '46.40470', '-116.80340'), ('Lenore', 186, '46.50520', '-116.55000'), ('Lewiston', 30904, '46.39290', '-116.99220'), ('Peck', 186, '46.47390', '-116.42410'), ('Southwick', 186, '46.60350', '-116.47200'), ('Spalding', 186, '46.44683', '-116.81700')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'IDZ027': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Craigmont', 556, '46.24280', '-116.47130'), ('Kamiah', 1160, '46.22690', '-116.02770'), ('Mohler', 523, '46.28720', '-116.34050'), ('Nezperce', 523, '46.23360', '-116.23880'), ('Reubens', 72, '46.32220', '-116.54110'), ('Waha', 1134, '46.20800', '-116.85070'), ('Winchester', 308, '46.24110', '-116.62240')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'IDZ028': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Blaine', 395, '43.35000', '-114.61700'), ('Corral', 395, '43.38300', '-114.96700'), ('Fairfield', 395, '43.34610', '-114.79210'), ('Hill City', 395, '43.29580', '-115.05280'), ('Selby', 395, '43.33300', '-114.71700'), ('Soldier', 395, '43.36700', '-114.80000')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDZ029': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Reynolds', 439, '43.20000', '-116.73330'), ('Silver City', 364, '43.01700', '-116.73330')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'IDZ030': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Hollister', 237, '42.35380', '-114.58720'), ('Rogerson', 237, '42.21780', '-114.59190')], 'partOfState': 'south central', 'wfo': 'BOI'}, +'IDZ031': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Bellevue', 1876, '43.46590', '-114.25740'), ('Galena', 3003, '43.87000', '-114.65000'), ('Gannett', 1876, '43.35000', '-114.18000'), ('Hailey', 6200, '43.51170', '-114.29920'), ('Ketchum', 3003, '43.68880', '-114.37520'), ('Magic City', 1876, '43.28000', '-114.37000'), ('Sun Valley', 1427, '43.68150', '-114.32840')], 'partOfState': 'central', 'wfo': 'PIH'}, +'IDZ032': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Arco', 1026, '43.63410', '-113.29980'), ('Berenice', 76, '43.83000', '-112.99000'), ('Challis', 909, '44.50770', '-114.22390'), ('Chilly', 566, '44.08000', '-113.87000'), ('Darlington', 196, '43.82000', '-113.42000'), ('Dickey', 566, '44.13000', '-113.90000'), ('Goldburg', 90, '44.38000', '-113.63000'), ('Grouse', 29, '43.68000', '-113.62000'), ('Howe', 76, '43.78000', '-113.00000'), ('Lost River', 29, '43.72190', '-113.54410'), ('Mackay', 566, '43.91200', '-113.61090'), ('Moore', 196, '43.73410', '-113.36610')], 'partOfState': 'central', 'wfo': 'PIH'}, +'IDZ033': {'fullStateName': 'Idaho', 'state': 'ID', 'cities': [('Cambridge', 360, '44.57260', '-116.67590'), ('Council', 816, '44.72890', '-116.43520'), ('Fruitvale', 816, '44.81700', '-116.41700'), ('Glendale', 816, '44.83300', '-116.40000'), ('Goodrich', 816, '44.65000', '-116.55000'), ('Indian Valley', 816, '44.55000', '-116.43300'), ('Mesa', 816, '44.63300', '-116.45000'), ('Midvale', 176, '44.47060', '-116.73310')], 'partOfState': 'southwest', 'wfo': 'BOI'}, +'ILZ001': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aiken', 3460, '42.35000', '-90.41670'), ('Apple Canyon Lake', 379, '42.42000', '-90.16000'), ('Apple River', 379, '42.50190', '-90.09470'), ('Apple River Canyon State Park', 379, '42.45000', '-90.05000'), ('Blanding', 2239, '42.26670', '-90.38330'), ('Council Hill', 898, '42.48330', '-90.35000'), ('East Dubuque', 1995, '42.49150', '-90.63880'), ('Elizabeth', 682, '42.31610', '-90.22470'), ('Elmoville', 1926, '42.26670', '-90.05000'), ('Galena', 3460, '42.42070', '-90.42730'), ('Galena Territory', 3460, '42.40000', '-90.33330'), ('Guilford', 401, '42.42670', '-90.30000'), ('Hanover', 836, '42.25420', '-90.27870'), ('Massbach', 682, '42.25000', '-90.11670'), ('Menominee', 237, '42.47460', '-90.54200'), ('Nora', 118, '42.45730', '-89.94460'), ('North Hanover', 836, '42.30000', '-90.28330'), ('Rice', 2239, '42.33330', '-90.40000'), ('Rodden', 836, '42.33330', '-90.31670'), ('Scales Mound', 401, '42.47750', '-90.25200'), ('Schapville', 682, '42.40000', '-90.20000'), ('Stockton', 1926, '42.35160', '-90.00600'), ('Stockton Airport', 1926, '42.31670', '-90.00000'), ('Warren', 1496, '42.49470', '-89.99020'), ('Whitton', 836, '42.23330', '-90.31670'), ('Willow', 1926, '42.28330', '-89.95000'), ('Woodbine', 682, '42.35000', '-90.15000')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILZ002': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Afolkey', 499, '42.43330', '-89.56670'), ('Albertus Airport', 26443, '42.25000', '-89.58330'), ('Bolton', 780, '42.25000', '-89.73330'), ('Buena Vista', 751, '42.43330', '-89.68330'), ('Cedarville', 719, '42.37510', '-89.63650'), ('Dakota', 499, '42.38740', '-89.52710'), ('Dakota Dornink Airport', 499, '42.38330', '-89.56670'), ('Damascus', 719, '42.36670', '-89.70000'), ('Davis', 662, '42.42220', '-89.41570'), ('Eleroy', 2887, '42.33330', '-89.76670'), ('Freeport', 26443, '42.29020', '-89.63470'), ('German Valley', 481, '42.21580', '-89.48380'), ('Kent', 780, '42.31670', '-89.90000'), ('Lake Leaquana State Park', 2887, '42.41670', '-89.83330'), ('Lena', 2887, '42.38090', '-89.82580'), ('Loran', 780, '42.23330', '-89.91670'), ('Mc Connell', 345, '42.43330', '-89.73330'), ('Oakdale Nature Preserve', 26443, '42.23330', '-89.60000'), ('Oneco', 751, '42.48330', '-89.66670'), ('Orangeville', 751, '42.46810', '-89.64470'), ('Pearl City', 780, '42.26770', '-89.82550'), ('Red Oak', 719, '42.40000', '-89.66670'), ('Ridott', 159, '42.29750', '-89.47730'), ('Ridott Corners', 159, '42.28330', '-89.48330'), ('Rock City', 313, '42.41260', '-89.47080'), ('Rock Grove', 313, '42.46670', '-89.51670'), ('Scioto Mills', 719, '42.35000', '-89.66670'), ('Waddams Grove', 2887, '42.41670', '-89.88330'), ('Winneshiek', 499, '42.35000', '-89.53330'), ('Winslow', 345, '42.49240', '-89.79630')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILZ003': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cherry Valley', 2191, '42.24000', '-88.96180'), ('Durand', 1081, '42.43560', '-89.32860'), ('Lake Summerset', 2061, '42.44970', '-89.39750'), ('Loves Park', 20044, '42.33580', '-89.01000'), ('Machesney Park', 20759, '42.36040', '-89.03800'), ('New Millford', 541, '42.17460', '-89.06540'), ('Pecatonica', 1997, '42.30990', '-89.35850'), ('Rockford', 150115, '42.27030', '-89.06310'), ('Rockford Airport', 541, '42.20000', '-89.10000'), ('Rockton', 5296, '42.44930', '-89.06990'), ('Roscoe', 6244, '42.41680', '-89.00700'), ('South Beloit', 5397, '42.48470', '-89.03340'), ('Winnebago', 2958, '42.26800', '-89.24050')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILZ004': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belvidere', 20820, '42.25260', '-88.84830'), ('Capron', 961, '42.39890', '-88.74260'), ('Poplar Grove', 1368, '42.36730', '-88.82290')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILZ005': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Algonquin', 23276, '42.16420', '-88.30050'), ('Bull Valley', 726, '42.31140', '-88.34990'), ('Cary', 15531, '42.20900', '-88.24970'), ('Crystal Lake', 38000, '42.23190', '-88.33050'), ('Fox River Grove', 4862, '42.19700', '-88.21900'), ('Harvard', 7996, '42.42120', '-88.61530'), ('Hebron', 1038, '42.47100', '-88.42990'), ('Holiday Hills', 831, '42.29130', '-88.22690'), ('Huntley', 5730, '42.16810', '-88.42420'), ('Island Lake', 8153, '42.27600', '-88.20150'), ('Lake In The Hills', 23152, '42.19280', '-88.32160'), ('Lakemoor', 2788, '42.34150', '-88.20490'), ('Lakewood', 2337, '42.22010', '-88.37810'), ('Marengo', 6355, '42.24790', '-88.60030'), ('McCullom Lake', 1038, '42.36880', '-88.29380'), ('McHenry', 21501, '42.34070', '-88.29130'), ('Oakwood Hills', 2194, '42.24730', '-88.24440'), ('Pistakee Highlands', 3812, '42.40320', '-88.21220'), ('Prairie Grove', 960, '42.28030', '-88.26650'), ('Richmond', 1091, '42.48120', '-88.30730'), ('Spring Grove', 3880, '42.44490', '-88.24380'), ('Sunnyside', 5391, '42.39560', '-88.23370'), ('Union', 576, '42.23430', '-88.54350'), ('Wonder Lake', 1345, '42.38000', '-88.35670'), ('Woodstock', 20151, '42.31070', '-88.43670')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ006': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Antioch', 8788, '42.47470', '-88.07950'), ('Bannockburn', 1429, '42.19280', '-87.86840'), ('Beach Park', 10072, '42.42500', '-87.85620'), ('Buffalo Grove', 42909, '42.16630', '-87.96330'), ('Channel Lake', 1785, '42.48430', '-88.15030'), ('Deerfield', 18420, '42.16560', '-87.84990'), ('Deer Park', 3102, '42.16810', '-88.08820'), ('Forest Lake', 1530, '42.20560', '-88.05220'), ('Fox Lake', 9178, '42.41810', '-88.18330'), ('Fox Lake Hills', 2561, '42.40710', '-88.12350'), ('Fox River Valley', 788, '42.24440', '-88.19490'), ('Gages Lake', 10415, '42.35160', '-87.98240'), ('Grandwood Park', 4521, '42.39320', '-87.98670'), ('Grayslake', 18506, '42.34980', '-88.03850'), ('Green Oaks', 3572, '42.30170', '-87.91520'), ('Gurnee', 28834, '42.37710', '-87.93600'), ('Hainesville', 2129, '42.33970', '-88.06470'), ('Hawthorn Woods', 6002, '42.22360', '-88.05730'), ('Highland Park', 31365, '42.18270', '-87.80970'), ('Highwood', 4143, '42.21160', '-87.81170'), ('Indian Creek', 194, '42.22590', '-87.97680'), ('Kildeer', 3460, '42.17930', '-88.04910'), ('Lake Barrington', 4757, '42.21080', '-88.16520'), ('Lake Bluff', 6056, '42.28260', '-87.85030'), ('Lake Catherine', 1490, '42.49030', '-88.12560'), ('Lake Forest', 20059, '42.23630', '-87.85760'), ('Lake Villa', 5864, '42.41750', '-88.08230'), ('Lake Zurich', 18104, '42.19230', '-88.08800'), ('Libertyville', 20742, '42.28410', '-87.96600'), ('Lincolnshire', 6108, '42.19560', '-87.91610'), ('Lindenhurst', 12539, '42.41740', '-88.02980'), ('Long Grove', 6735, '42.19540', '-88.00280'), ('Long Lake', 3356, '42.37670', '-88.12620'), ('Mettawa', 367, '42.24370', '-87.91540'), ('Mundelein', 30935, '42.26700', '-88.00310'), ('North Barrington', 2918, '42.20710', '-88.13140'), ('North Chicago', 35918, '42.31860', '-87.85920'), ('Old Mill Creek', 251, '42.43310', '-87.98210'), ('Park City', 6637, '42.35070', '-87.89100'), ('Riverwoods', 3843, '42.17110', '-87.89590'), ('Round Lake', 5842, '42.34990', '-88.11030'), ('Round Lake Beach', 25859, '42.37760', '-88.08170'), ('Round Lake Heights', 1347, '42.38400', '-88.10410'), ('Round Lake Park', 6038, '42.32320', '-88.05860'), ('Third Lake', 1355, '42.36770', '-88.00840'), ('Tower Lakes', 1310, '42.23020', '-88.15580'), ('Venetian Village', 3082, '42.39980', '-88.04620'), ('Vernon Hills', 20120, '42.23600', '-87.96270'), ('Wadsworth', 3083, '42.43690', '-87.92340'), ('Wauconda', 9448, '42.26660', '-88.13950'), ('Waukegan', 87901, '42.37090', '-87.86800'), ('Winthrop Harbor', 6670, '42.47980', '-87.82820'), ('Zion', 22866, '42.45670', '-87.84310')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ007': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Argo Fay', 559, '42.00000', '-90.01670'), ('Center Hill', 1832, '42.08330', '-90.05000'), ('Chadwick', 505, '42.01410', '-89.88890'), ('Fairhaven', 505, '41.95000', '-89.93330'), ('Hitt', 1016, '42.00000', '-89.73330'), ('Ideal', 505, '41.98330', '-89.98330'), ('Lanark', 1584, '42.10280', '-89.83210'), ('Milledgeville', 1016, '41.96380', '-89.77560'), ('Mississippi Palisades', 3542, '42.13330', '-90.16670'), ('Mount Carroll', 1832, '42.09540', '-89.97690'), ('Savanna', 3542, '42.09000', '-90.13990'), ('Shannon', 854, '42.15200', '-89.74010'), ('Thomson', 559, '41.95750', '-90.10320'), ('Wacker', 1832, '42.05000', '-90.05000')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILZ008': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adeline', 139, '42.14080', '-89.49050'), ('Byron', 2917, '42.12840', '-89.25830'), ('Creston', 543, '41.93080', '-88.96550'), ('Davis Junction', 491, '42.10190', '-89.09200'), ('Forreston', 1469, '42.12610', '-89.57870'), ('Hillcrest', 1158, '41.95250', '-89.07040'), ('Leaf River', 555, '42.12320', '-89.40290'), ('Mount Morris', 3013, '42.04890', '-89.43200'), ('Oregon', 4060, '42.01310', '-89.33540'), ('Polo', 2477, '41.98470', '-89.57830'), ('Rochelle', 9424, '41.91840', '-89.06270'), ('Stillman Valley', 1048, '42.10400', '-89.17810')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILZ009': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Agnew', 9580, '41.78330', '-89.80000'), ('Albany', 895, '41.78560', '-90.21950'), ('Coleta', 155, '41.90560', '-89.79920'), ('Como', 9580, '41.76670', '-89.76670'), ('Deer Grove', 48, '41.61010', '-89.68460'), ('Denrock', 2023, '41.70000', '-89.98330'), ('Douglas Park', 15451, '41.80000', '-89.73330'), ('East Clinton', 3881, '41.83330', '-90.16670'), ('Emerson', 15451, '41.80000', '-89.76670'), ('Erie', 1589, '41.65870', '-90.08120'), ('Fenton', 1589, '41.73330', '-90.03330'), ('Franklin Corners', 505, '41.91670', '-89.91670'), ('Fulton', 3881, '41.86500', '-90.15870'), ('Galt', 9580, '41.78330', '-89.76670'), ('Garden Plain', 3881, '41.80000', '-90.13330'), ('Grimes Addition', 15451, '41.80000', '-89.75000'), ('Hamilton Corners', 2023, '41.70000', '-89.96670'), ('Leon Corners', 2023, '41.60000', '-89.91670'), ('Lyndon', 566, '41.71730', '-89.92520'), ('Malvern', 4447, '41.85000', '-89.88330'), ('Morrison', 4447, '41.80840', '-89.96540'), ('Morrison/Rockwood Park', 4447, '41.85000', '-89.96670'), ('Newton Corners', 1589, '41.73330', '-90.11670'), ('Penrose', 15451, '41.88330', '-89.66670'), ('Portland Corners', 2023, '41.66670', '-89.98330'), ('Prophetstown', 2023, '41.66970', '-89.93460'), ('Rock Falls', 9580, '41.77420', '-89.69110'), ('Round Grove', 566, '41.78330', '-89.86670'), ('Spring Hill', 1589, '41.61670', '-90.05000'), ('Sterling', 15451, '41.79820', '-89.69150'), ('Tampico', 772, '41.63050', '-89.78550'), ('Union Grove', 4447, '41.83330', '-90.03330'), ('Unionville', 4447, '41.81670', '-89.98330'), ('Ustick', 4447, '41.88330', '-90.00000'), ('White Pigeon', 155, '41.88330', '-89.88330'), ('Whiteside County Airport', 9580, '41.75000', '-89.68330'), ('Yeoward Addition', 9580, '41.75000', '-89.66670')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILZ010': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Amboy', 2561, '41.71660', '-89.33350'), ('Ashton', 1142, '41.86810', '-89.22150'), ('Compton', 347, '41.69420', '-89.08590'), ('Dixon', 15941, '41.84950', '-89.47880'), ('Franklin Grove', 1052, '41.84100', '-89.30010'), ('Harmon', 149, '41.71970', '-89.55660'), ('Nelson', 163, '41.79550', '-89.60260'), ('Paw Paw', 852, '41.68790', '-88.98060'), ('Steward', 271, '41.84850', '-89.02060'), ('Sublette', 456, '41.64350', '-89.23170'), ('West Brooklyn', 174, '41.69310', '-89.14700')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILZ011': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cortland', 2066, '41.92730', '-88.69440'), ('De Kalb', 39018, '41.93060', '-88.75190'), ('Genoa', 4169, '42.09760', '-88.68990'), ('Hinckley', 1994, '41.76970', '-88.64180'), ('Kingston', 980, '42.09920', '-88.75690'), ('Kirkland', 1166, '42.09220', '-88.85460'), ('Lee', 313, '41.79400', '-88.94020'), ('Malta', 969, '41.93020', '-88.86310'), ('Sandwich', 6509, '41.64660', '-88.62310'), ('Shabbona', 929, '41.76490', '-88.87640'), ('Somonauk', 1295, '41.63230', '-88.68350'), ('Sycamore', 12020, '41.98170', '-88.69580'), ('Waterman', 1224, '41.76940', '-88.77320')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILZ012': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aurora', 142990, '41.76760', '-88.29300'), ('Batavia', 23866, '41.85060', '-88.30040'), ('Burlington', 452, '42.05040', '-88.54740'), ('Carpentersville', 30586, '42.12130', '-88.27150'), ('East Dundee', 2955, '42.09580', '-88.25580'), ('Elburn', 2756, '41.89020', '-88.47170'), ('Elgin', 94487, '42.03960', '-88.28800'), ('Geneva', 19515, '41.88230', '-88.31450'), ('Gilberts', 1279, '42.10160', '-88.36720'), ('Hampshire', 2900, '42.09580', '-88.52170'), ('Maple Park', 765, '41.90720', '-88.59370'), ('Montgomery', 5471, '41.72990', '-88.34150'), ('North Aurora', 10585, '41.80380', '-88.33040'), ('Pingree Grove', 124, '42.06860', '-88.41470'), ('Sleepy Hollow', 3553, '42.09340', '-88.31420'), ('South Elgin', 16100, '41.99630', '-88.29800'), ('St. Charles', 2789, '41.92030', '-88.30080'), ('Sugar Grove', 3909, '41.76960', '-88.45880'), ('West Dundee', 5428, '42.09810', '-88.29200')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ013': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Addison', 35914, '41.93060', '-88.00860'), ('Bartlett', 36706, '41.97900', '-88.20540'), ('Bensenville', 20703, '41.95730', '-87.94450'), ('Bloomingdale', 21675, '41.94890', '-88.08650'), ('Burr Ridge', 10408, '41.75090', '-87.92060'), ('Carol Stream', 40438, '41.91680', '-88.13100'), ('Clarendon Hills', 7610, '41.79850', '-87.95760'), ('Darien', 22860, '41.74930', '-87.97630'), ('Downers Grove', 48724, '41.79720', '-88.01740'), ('Dupage Airport', 2137, '41.91660', '-88.25000'), ('Elmhurst', 42762, '41.89800', '-87.94360'), ('Glenbard South', 3957, '41.82970', '-88.06640'), ('Glendale Heights', 31765, '41.92020', '-88.07880'), ('Glen Ellyn', 26999, '41.86650', '-88.06260'), ('Hanover Park', 38278, '41.98460', '-88.14480'), ('Hinsdale', 17349, '41.80060', '-87.92830'), ('Itasca', 8302, '41.97670', '-88.01850'), ('Lisle', 21182, '41.79180', '-88.08780'), ('Lombard', 42322, '41.87490', '-88.01500'), ('Medinah', 2512, '41.97550', '-88.05570'), ('Naperville', 128358, '41.76260', '-88.15430'), ('Oak Brook', 8702, '41.83690', '-87.95270'), ('Oakbrook Terrace', 2300, '41.85330', '-87.96870'), ('Roselle', 23115, '41.98040', '-88.08310'), ('Villa Park', 22075, '41.88550', '-87.97820'), ('Warrenville', 13363, '41.82010', '-88.18620'), ('Wayne', 2137, '41.95210', '-88.26130'), ('West Chicago', 23469, '41.88990', '-88.22280'), ('Westmont', 24554, '41.79700', '-87.97500'), ('Wheaton', 55416, '41.85600', '-88.10760'), ('Willowbrook', 2130, '41.76190', '-87.94630'), ('Winfield', 8718, '41.87140', '-88.15360'), ('Wood Dale', 13535, '41.96590', '-87.98110'), ('Woodridge', 30934, '41.73910', '-88.04250'), ('York Center', 4818, '41.85500', '-87.99470')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ014': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alsip', 19725, '41.67030', '-87.73580'), ('Arlington Heights', 76031, '42.09490', '-87.98200'), ('Barrington', 10168, '42.15180', '-88.12920'), ('Barrington Hills', 3915, '42.13370', '-88.21120'), ('Bedford Park', 574, '41.76980', '-87.79800'), ('Bellwood', 20535, '41.88290', '-87.87630'), ('Berkeley', 5245, '41.88840', '-87.91230'), ('Berwyn', 54016, '41.84240', '-87.79100'), ('Blue Island', 23463, '41.65840', '-87.68140'), ('Bridgeport', 2168, '41.80000', '-87.67000'), ('Bridgeview', 15335, '41.73880', '-87.80590'), ('Broadview', 8264, '41.85800', '-87.85590'), ('Brookfield', 19085, '41.82430', '-87.84780'), ('Burbank', 27902, '41.74410', '-87.76900'), ('Burnham', 4170, '41.63820', '-87.54120'), ('Calumet City', 39071, '41.61180', '-87.54950'), ('Calumet Park', 8516, '41.66410', '-87.65640'), ('Chatham', 8516, '41.73000', '-87.62000'), ('Chicago', 2896016, '41.88000', '-87.63000'), ('Chicago Heights', 32776, '41.50990', '-87.63760'), ('Chicago Ridge', 14127, '41.70240', '-87.77860'), ('Cicero', 85616, '41.84430', '-87.75990'), ('Country Club Hills', 16169, '41.56320', '-87.72530'), ('Countryside', 5991, '41.77660', '-87.87660'), ('Crestwood', 11251, '41.64520', '-87.74030'), ('Des Plaines', 58720, '42.03460', '-87.90090'), ('Dixmoor', 3934, '41.63190', '-87.66800'), ('Dolton', 25614, '41.62930', '-87.59870'), ('Douglas Park', 2896016, '41.85000', '-87.68000'), ('East Hazel Crest', 1607, '41.57630', '-87.64970'), ('Elk Grove Village', 34727, '42.00570', '-87.99260'), ('Elmwood Park', 25405, '41.92240', '-87.81650'), ('Englewood', 20821, '41.77000', '-87.68000'), ('Evanston', 74239, '42.04630', '-87.69450'), ('Evergreen Park', 20821, '41.72110', '-87.70110'), ('Flossmoor', 9301, '41.53930', '-87.68420'), ('Ford Heights', 3456, '41.50960', '-87.58900'), ('Forest Park', 15688, '41.86910', '-87.81480'), ('Forest View', 778, '41.80660', '-87.78100'), ('Franklin Park', 19434, '41.93540', '-87.87820'), ('Glencoe', 8762, '42.13460', '-87.76340'), ('Glenview', 41847, '42.07960', '-87.81520'), ('Glenwood', 9000, '41.54610', '-87.61700'), ('Golf', 451, '42.05880', '-87.78650'), ('Harvey', 30000, '41.60730', '-87.65190'), ('Harwood Heights', 8297, '41.96610', '-87.80550'), ('Hazel Crest', 14816, '41.57230', '-87.68940'), ('Hickory Hills', 13926, '41.72380', '-87.82820'), ('Hillside', 8155, '41.87100', '-87.89860'), ('Hodgkins', 2134, '41.77080', '-87.85630'), ('Hoffman Estates', 49495, '42.06450', '-88.13830'), ('Hometown', 4467, '41.73220', '-87.73130'), ('Homewood', 19543, '41.55840', '-87.66110'), ('Humboldt Park', 2896016, '41.90000', '-87.70000'), ('Hyde Park', 2896016, '41.79000', '-87.59000'), ('Indian Head Park', 3685, '41.76760', '-87.89750'), ('Inverness', 6749, '42.11510', '-88.10080'), ('Justice', 12193, '41.74640', '-87.83550'), ('Kenilworth', 2494, '42.08890', '-87.71490'), ('La Grange', 15608, '41.80790', '-87.87340'), ('La Grange Park', 13295, '41.83160', '-87.87160'), ('Lakeview', 2896016, '41.94000', '-87.65000'), ('Lansing', 28332, '41.56750', '-87.54570'), ('Lemont', 13098, '41.67010', '-87.99150'), ('Lincoln Park', 2896016, '41.93000', '-87.63950'), ('Lincolnwood', 12359, '42.00590', '-87.73280'), ('Logan Square', 2896016, '41.93000', '-87.71000'), ('Lynwood', 7377, '41.52640', '-87.54200'), ('Lyons', 10255, '41.81170', '-87.81860'), ('Markham', 12620, '41.59920', '-87.69120'), ('Matteson', 12928, '41.51100', '-87.73750'), ('Maywood', 26987, '41.88020', '-87.84450'), ('McCook', 254, '41.79280', '-87.83580'), ('Meigs Field', 2896016, '41.86000', '-87.61490'), ('Melrose Park', 23171, '41.90310', '-87.86340'), ('Merrionette Park', 1999, '41.68030', '-87.69970'), ('Midlothian', 14315, '41.62630', '-87.72430'), ('Midway Airport', 778, '41.78300', '-87.75000'), ('Montrose Harbor', 74239, '41.96000', '-87.64000'), ('Morton Grove', 22451, '42.04230', '-87.78900'), ('Mount Prospect', 56265, '42.06540', '-87.93750'), ('Navy Pier', 2896016, '41.89000', '-87.62000'), ('Niles', 30068, '42.02690', '-87.80950'), ('Norridge', 14582, '41.96500', '-87.82250'), ('Northbrook', 33435, '42.12970', '-87.83290'), ('Northfield', 5389, '42.10060', '-87.77870'), ('Northlake', 11878, '41.91370', '-87.90390'), ('North Riverside', 6688, '41.84750', '-87.82490'), ('Oak Forest', 28051, '41.60650', '-87.75260'), ('Oak Lawn', 55245, '41.71500', '-87.75210'), ('Oak Park', 52524, '41.88760', '-87.78950'), ('Ohare Airport', 4224, '41.98330', '-87.90000'), ('Olympia Fields', 4732, '41.51740', '-87.69290'), ('Orland Hills', 6779, '41.59260', '-87.84280'), ('Orland Park', 51077, '41.61050', '-87.85070'), ('Palatine', 65479, '42.11250', '-88.04300'), ('Palos Heights', 11260, '41.66530', '-87.79710'), ('Palos Hills', 17665, '41.69760', '-87.82610'), ('Palos Park', 4689, '41.66450', '-87.84430'), ('Park Forest', 23462, '41.48230', '-87.68700'), ('Park Ridge', 37775, '42.01170', '-87.84400'), ('Phoenix', 2157, '41.61230', '-87.63050'), ('Posen', 4730, '41.62820', '-87.68570'), ('Prospect Heights', 17081, '42.10240', '-87.92470'), ('Richton Park', 12533, '41.48190', '-87.72830'), ('Riverdale', 15055, '41.64460', '-87.63470'), ('River Forest', 11635, '41.89480', '-87.81900'), ('River Grove', 10668, '41.92400', '-87.83760'), ('Riverside', 8895, '41.83080', '-87.81590'), ('Robbins', 6635, '41.64290', '-87.70810'), ('Rogers Park', 74239, '42.01000', '-87.67000'), ('Rolling Meadows', 24604, '42.07500', '-88.02500'), ('Rosemont', 4224, '41.98910', '-87.87150'), ('Sauk Village', 10411, '41.48850', '-87.56560'), ('Schaumburg', 75386, '42.03300', '-88.08340'), ('Schiller Park', 11850, '41.95980', '-87.87000'), ('Skokie', 63348, '42.03710', '-87.73990'), ('South Barrington', 3760, '42.08720', '-88.15300'), ('South Chicago', 2896016, '41.74000', '-87.55000'), ('South Chicago Heights', 3970, '41.48330', '-87.63740'), ('South Holland', 22147, '41.59750', '-87.60120'), ('Stickney', 6148, '41.81800', '-87.77280'), ('Stone Park', 5127, '41.90430', '-87.88040'), ('Streamwood', 36407, '42.02060', '-88.17330'), ('Summit', 10637, '41.78480', '-87.81620'), ('Thornton', 2582, '41.57400', '-87.61880'), ('Tinley Park', 48401, '41.57480', '-87.80040'), ('Westchester', 16824, '41.85090', '-87.88710'), ('Western Springs', 12493, '41.80340', '-87.90080'), ('Wheeling', 34496, '42.13050', '-87.92360'), ('Willow Springs', 5027, '41.73350', '-87.88240'), ('Wilmette', 27651, '42.07720', '-87.72860'), ('Winnetka', 12419, '42.10650', '-87.74270'), ('Worth', 11047, '41.68730', '-87.79260')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ015': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Andalusia', 1050, '41.43800', '-90.72540'), ('Barstow', 253, '41.51660', '-90.35000'), ('Blackhawk State Park', 39684, '41.46660', '-90.56660'), ('Buffalo Prairie', 373, '41.33330', '-90.85000'), ('Carbon Cliff', 1689, '41.49760', '-90.39030'), ('Coal Valley', 3606, '41.44900', '-90.44780'), ('Cordova', 633, '41.67800', '-90.32200'), ('Coyne Center', 906, '41.40000', '-90.56670'), ('East Moline', 20333, '41.51420', '-90.42740'), ('Edgington', 1050, '41.38330', '-90.76670'), ('Fruitland', 43768, '41.46670', '-90.51670'), ('Hampton', 1626, '41.55330', '-90.40560'), ('Hillsdale', 588, '41.61180', '-90.17520'), ('Illiniwek Park', 1626, '41.56670', '-90.40000'), ('Illinois City', 22881, '41.40000', '-90.90000'), ('Indian Bluff Park', 5831, '41.43330', '-90.51660'), ('Joslin', 0, '41.55730', '-90.22210'), ('Loud Thunder Forest Preserve', 1214, '41.43330', '-90.83330'), ('Milan', 5348, '41.44420', '-90.56130'), ('Moline', 43768, '41.48510', '-90.48880'), ('Moline Quad-City Airport', 43768, '41.45000', '-90.50000'), ('Oak Grove', 906, '41.41400', '-90.57320'), ('Port Byron', 1535, '41.62130', '-90.32370'), ('Rapids City', 953, '41.58190', '-90.34140'), ('Reynolds', 508, '41.33250', '-90.67280'), ('Rock Island', 39684, '41.47550', '-90.58030'), ('Rock Island Arsenal', 0, '41.51780', '-90.53780'), ('Silvis', 7269, '41.50630', '-90.41270'), ('Silvis Heights', 7269, '41.50000', '-90.41670'), ('Taylor Ridge', 508, '41.38330', '-90.66670')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILZ016': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alpha', 726, '41.19220', '-90.38080'), ('Andover', 594, '41.29500', '-90.29050'), ('Annawan', 868, '41.39870', '-89.90700'), ('Atkinson', 1001, '41.41870', '-90.01450'), ('Bishop Hill', 125, '41.19960', '-90.11720'), ('Cambridge', 2180, '41.30330', '-90.19330'), ('Cleveland', 253, '41.50290', '-90.31640'), ('Colona', 5173, '41.48600', '-90.35050'), ('Dayton', 253, '41.48330', '-90.31670'), ('Galva', 2758, '41.16660', '-90.03890'), ('Geneseo', 6480, '41.44720', '-90.15450'), ('German Corner', 1001, '41.30000', '-90.03330'), ('Green River', 5173, '41.47000', '-90.33300'), ('Hooppole', 162, '41.52090', '-89.91330'), ('Johnson Sauk Trail', 360, '41.32500', '-89.89167'), ('Kewanee', 12944, '41.24110', '-89.92560'), ('Kewanee Municipal Airport', 12944, '41.20000', '-89.96670'), ('Lynn Center', 1713, '41.30000', '-90.35000'), ('Morristown', 5173, '41.40000', '-90.30000'), ('Nekoma', 570, '41.17220', '-90.18700'), ('Ophiem', 753, '41.25000', '-90.38330'), ('Orion', 1713, '41.35120', '-90.37410'), ('Osborn', 253, '41.51660', '-90.26670'), ('Osco', 594, '41.35000', '-90.28330'), ('Shady Beach', 588, '41.53330', '-90.20000'), ('Sunny Hill', 0, '41.38600', '-90.40000'), ('Sunny Hill Estates', 0, '41.39640', '-90.42900'), ('Ulah', 2180, '41.26670', '-90.15000'), ('Warner', 2615, '41.41670', '-90.38330'), ('Woodhull', 809, '41.17840', '-90.32170')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILZ017': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Arlington', 211, '41.47120', '-89.24820'), ('Buda', 592, '41.32770', '-89.67840'), ('Bureau', 360, '41.28780', '-89.36430'), ('Cherry', 509, '41.42960', '-89.21360'), ('Coal Hollow', 343, '41.36670', '-89.36670'), ('Dalzell', 717, '41.35810', '-89.17560'), ('Depue', 1842, '41.32970', '-89.29580'), ('Dover', 172, '41.43420', '-89.39570'), ('Hollowayville', 90, '41.36490', '-89.29450'), ('Kasbeer', 540, '41.50000', '-89.46670'), ('Ladd', 1313, '41.38270', '-89.21430'), ('La Moille', 773, '41.53010', '-89.28090'), ('Lone Tree Corners', 787, '41.18330', '-89.48330'), ('Malden', 343, '41.42490', '-89.37020'), ('Manlius', 355, '41.45570', '-89.66800'), ('Milo', 787, '41.20000', '-89.58330'), ('Mineral', 272, '41.38190', '-89.83650'), ('Neponset', 519, '41.29710', '-89.79020'), ('New Bedford', 95, '41.51170', '-89.71730'), ('Normandy', 48, '41.56670', '-89.65000'), ('Ohio', 540, '41.55690', '-89.45950'), ('Ottville', 303, '41.35000', '-89.26660'), ('Princeton', 7501, '41.37840', '-89.46680'), ('Providence', 1028, '41.28330', '-89.60000'), ('Seatonville', 303, '41.36380', '-89.27290'), ('Sheffield', 946, '41.35700', '-89.73960'), ('Spring Valley', 5398, '41.32610', '-89.19900'), ('Spring Valley Airport', 5398, '41.33330', '-89.21660'), ('Thomas', 162, '41.51660', '-89.81670'), ('Tiskilwa', 787, '41.29270', '-89.50780'), ('Van Orin', 773, '41.55000', '-89.35000'), ('Walnut', 1461, '41.55680', '-89.59110'), ('Wyanet', 1028, '41.36010', '-89.58380'), ('Yorktown', 162, '41.56670', '-89.85000'), ('Zearing', 343, '41.45000', '-89.31670')], 'partOfState': 'north central', 'wfo': 'DVN'}, +'ILZ018': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Florid', 75, '41.23330', '-89.28330'), ('Granville', 1414, '41.26430', '-89.22990'), ('Hennepin', 707, '41.25600', '-89.31960'), ('Lake Thunderbird', 787, '41.21670', '-89.45000'), ('Magnolia', 279, '41.11400', '-89.19520'), ('Mark', 491, '41.26420', '-89.24840'), ('Mc Nabb', 310, '41.17730', '-89.20980'), ('Putnam', 100, '41.18330', '-89.40000'), ('Standard', 300, '41.25640', '-89.18030')], 'partOfState': 'north central', 'wfo': 'DVN'}, +'ILZ019': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cedar Point', 262, '41.26470', '-89.12520'), ('Dana', 171, '40.95630', '-88.94980'), ('Earlville', 1778, '41.58850', '-88.92390'), ('Grand Ridge', 546, '41.23620', '-88.83150'), ('Kangley', 287, '41.14760', '-88.87260'), ('La Salle', 9796, '41.34000', '-89.09350'), ('Leland', 970, '41.61470', '-88.79800'), ('Leonore', 110, '41.18940', '-88.98260'), ('Lostant', 486, '41.14040', '-89.06110'), ('Marseilles', 4655, '41.32780', '-88.68780'), ('Mendota', 7272, '41.55090', '-89.12010'), ('Naplate', 523, '41.33130', '-88.87820'), ('Oglesby', 3647, '41.29450', '-89.06450'), ('Ottawa', 18307, '41.35020', '-88.83940'), ('Peru', 9835, '41.34170', '-89.12830'), ('Ransom', 409, '41.15810', '-88.65530'), ('Rutland', 354, '40.98410', '-89.03930'), ('Seneca', 2053, '41.30340', '-88.61350'), ('Sheridan', 2411, '41.52590', '-88.68670'), ('Streator', 14190, '41.12530', '-88.83150'), ('Tonica', 685, '41.21410', '-89.06780'), ('Troy Grove', 305, '41.46540', '-89.08110'), ('Utica', 977, '41.33980', '-89.01130')], 'partOfState': 'north central', 'wfo': 'LOT'}, +'ILZ020': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Boulder Hill', 8169, '41.71250', '-88.33610'), ('Lisbon', 248, '41.48060', '-88.48270'), ('Millington', 458, '41.56100', '-88.59920'), ('Newark', 887, '41.53710', '-88.58070'), ('Oswego', 13326, '41.69790', '-88.33260'), ('Plano', 5633, '41.66330', '-88.53480'), ('Yorkville', 6189, '41.64220', '-88.44750')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ021': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Braceville', 792, '41.22420', '-88.26640'), ('Carbon Hill', 392, '41.29630', '-88.29950'), ('Coal City', 4797, '41.28830', '-88.27820'), ('Diamond', 1393, '41.28870', '-88.25520'), ('East Brooklyn', 123, '41.17240', '-88.26570'), ('Gardner', 1406, '41.18770', '-88.31220'), ('Kinsman', 109, '41.19060', '-88.56970'), ('Mazon', 904, '41.23960', '-88.42490'), ('Minooka', 3971, '41.44910', '-88.26000'), ('Morris', 11928, '41.36860', '-88.42770'), ('South Wilmington', 621, '41.17420', '-88.27630'), ('Verona', 257, '41.21570', '-88.50500')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ022': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Beecher', 2033, '41.34770', '-87.61490'), ('Bolingbrook', 56321, '41.70040', '-88.07720'), ('Braidwood', 5203, '41.26810', '-88.22320'), ('Channahon', 7344, '41.43450', '-88.21860'), ('Crest Hill', 13329, '41.56630', '-88.10510'), ('Crete', 7346, '41.45320', '-87.61510'), ('Crystal Lawns', 2933, '41.57030', '-88.15790'), ('Elwood', 1620, '41.41210', '-88.10900'), ('Fairmont', 2563, '41.56180', '-88.05990'), ('Frankfort', 10391, '41.49700', '-87.83590'), ('Frankfort Square', 7766, '41.51890', '-87.80310'), ('Godley', 594, '41.23730', '-88.24460'), ('Homer Glen', 17084, '41.62160', '-87.94060'), ('Ingalls Park', 3082, '41.52130', '-88.03390'), ('Joliet', 106221, '41.52670', '-88.12240'), ('Lakewood Shores', 1487, '41.27080', '-88.13630'), ('Lockport', 15191, '41.58940', '-88.04790'), ('Manhattan', 3330, '41.42600', '-87.98870'), ('Mokena', 14583, '41.53200', '-87.87570'), ('Monee', 2924, '41.42200', '-87.75410'), ('New Lenox', 17771, '41.51870', '-87.98400'), ('Peotone', 3385, '41.33160', '-87.79630'), ('Plainfield', 13038, '41.61590', '-88.20410'), ('Preston Heights', 2527, '41.49280', '-88.07310'), ('Rockdale', 1888, '41.50550', '-88.11820'), ('Romeoville', 21153, '41.64610', '-88.08630'), ('Shorewood', 7686, '41.52320', '-88.20240'), ('Steger', 968, '41.46780', '-87.63500'), ('Symerton', 106, '41.32810', '-88.05450'), ('University Park', 6662, '41.44240', '-87.70960'), ('Wilmington', 5134, '41.29770', '-88.15960')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ023': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aroma Park', 821, '41.07980', '-87.80540'), ('Bonfield', 364, '41.14720', '-88.05670'), ('Bourbonnais', 15256, '41.16320', '-87.88040'), ('Bradley', 12784, '41.14720', '-87.85570'), ('Buckingham', 237, '41.04680', '-88.17610'), ('c', 92, '41.05250', '-87.98400'), ('Essex', 554, '41.17830', '-88.19470'), ('Grant Park', 1358, '41.23920', '-87.64460'), ('Herscher', 1523, '41.04910', '-88.10060'), ('Hopkins Park', 711, '41.07220', '-87.61470'), ('Kankakee', 27491, '41.11550', '-87.86120'), ('Manteno', 6414, '41.25120', '-87.83670'), ('Momence', 3171, '41.16350', '-87.66360'), ('Reddick', 219, '41.09730', '-88.24880'), ('St. Anne', 1212, '41.02330', '-87.71700'), ('Sun River Terrace', 383, '41.12650', '-87.73460'), ('Union Hill', 37, '41.10930', '-88.14550')], 'partOfState': 'northeast', 'wfo': 'LOT'}, +'ILZ024': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Aledo', 3613, '41.19830', '-90.74740'), ('Aledo Mercer County Airport', 3613, '41.25000', '-90.73330'), ('Boden', 772, '41.26670', '-90.58330'), ('Burgess', 956, '41.13330', '-90.63330'), ('Cable', 694, '41.28330', '-90.50000'), ('Eliza', 632, '41.30000', '-90.96670'), ('Gilchrist', 956, '41.20000', '-90.61670'), ('Gingle Corners', 3613, '41.26670', '-90.73330'), ('Griffin', 694, '41.23330', '-90.48330'), ('Hamlet', 508, '41.31670', '-90.73330'), ('Joy', 373, '41.19690', '-90.87960'), ('Keithsburg', 714, '41.10090', '-90.93590'), ('Mannon', 373, '41.23330', '-90.95000'), ('Marston', 508, '41.31670', '-90.80000'), ('Matherville', 772, '41.25910', '-90.60570'), ('Millersburg', 373, '41.23330', '-90.81670'), ('New Boston', 632, '41.16940', '-91.00050'), ('New Windsor', 782, '41.20000', '-90.45000'), ('North Henderson', 187, '41.09070', '-90.47500'), ('Ogle', 714, '41.10000', '-90.88330'), ('Old Gilchrist', 772, '41.23330', '-90.63330'), ('Petersville', 373, '41.28330', '-90.93330'), ('Preemption', 772, '41.31660', '-90.58330'), ('Seaton', 242, '41.10190', '-90.79920'), ('Shale City', 956, '41.21660', '-90.63330'), ('Sherrard', 694, '41.31840', '-90.50530'), ('Sunbeam', 3613, '41.13330', '-90.73330'), ('Swedona', 694, '41.28330', '-90.45000'), ('Viola', 956, '41.20520', '-90.58740'), ('Wanlock', 956, '41.21660', '-90.63000')], 'partOfState': 'northwest', 'wfo': 'DVN'}, +'ILZ025': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bald Bluff', 242, '41.01670', '-90.85000'), ('Biggsville', 343, '40.85350', '-90.86130'), ('Big River State Forest', 714, '41.03330', '-90.91670'), ('Carman', 477, '40.73330', '-91.06670'), ('Carthage Lake', 207, '40.80000', '-91.08330'), ('Decorra', 896, '40.73330', '-90.96670'), ('Delabar State Park', 1539, '40.96670', '-90.93330'), ('Gladstone', 284, '40.86370', '-90.95750'), ('Gulf Port', 207, '40.80900', '-91.08360'), ('Heapsville', 207, '40.76670', '-91.06670'), ('Hopper', 896, '40.78330', '-90.98330'), ('Lomax', 477, '40.67760', '-91.07640'), ('Lone Tree', 284, '40.83330', '-91.01670'), ('Media', 130, '40.77270', '-90.83400'), ('Olena', 896, '40.78330', '-90.93330'), ('Oquawka', 1539, '40.93760', '-90.94950'), ('Raritan', 140, '40.69540', '-90.82500'), ('Rozetta', 1539, '40.95000', '-90.86670'), ('Shokokon', 207, '40.75000', '-91.06670'), ('Stronghurst', 896, '40.75000', '-90.90000'), ('Terre Haute', 1385, '40.67000', '-90.98330')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILZ026': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alexis', 863, '41.06400', '-90.56500'), ('Berwick', 3612, '40.80000', '-90.53330'), ('Cameron', 9489, '40.88330', '-90.51670'), ('Coldbrook', 863, '40.95000', '-90.51670'), ('Eleanor', 269, '40.98330', '-90.70000'), ('Gerlaw', 9489, '40.98330', '-90.60000'), ('Greenbush', 915, '40.71670', '-90.53330'), ('Kirkwood', 794, '40.86750', '-90.74830'), ('Lake Warren', 0, '40.99760', '-90.64200'), ('Larchland', 1083, '40.81670', '-90.65000'), ('Little Swan Lake', 0, '40.66660', '-90.54500'), ('Little York', 269, '41.01040', '-90.74670'), ('Monmouth', 9841, '40.91340', '-90.64300'), ('Monmouth Municipal Airport', 9489, '40.93330', '-90.63330'), ('Ormonde', 9489, '40.85000', '-90.61670'), ('Ponemah', 794, '40.81670', '-90.70000'), ('Roseville', 1083, '40.73080', '-90.66270'), ('Smithshire', 130, '40.80000', '-90.78330'), ('Swan Creek', 1083, '40.66670', '-90.65000'), ('Youngstown', 1083, '40.66670', '-90.61670')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILZ027': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Abingdon', 3612, '40.80260', '-90.40070'), ('Altona', 570, '41.11520', '-90.16470'), ('Dahinda', 323, '40.95000', '-90.10000'), ('Delong', 3612, '40.81670', '-90.31670'), ('Farmington', 2601, '40.71670', '-90.00670'), ('Galesburg', 33706, '40.95000', '-90.37790'), ('Gilson', 318, '40.86670', '-90.20000'), ('Henderson', 319, '41.02450', '-90.35290'), ('Knoxville', 3183, '40.90630', '-90.28540'), ('Maquon', 318, '40.79830', '-90.16270'), ('Middle Grove', 2601, '40.71670', '-90.10000'), ('Oneida', 752, '41.07240', '-90.22540'), ('Rio', 240, '41.10870', '-90.39900'), ('St. Augustine', 15, '40.71970', '-90.40890'), ('Victoria', 323, '41.03300', '-90.09530'), ('Wataga', 857, '41.02510', '-90.27510'), ('Williamsfield', 620, '40.92610', '-90.01730'), ('Yates City', 725, '40.77800', '-90.01360')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILZ028': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bradford', 787, '41.17690', '-89.65720'), ('Castleton', 787, '41.11670', '-89.70000'), ('Duncan', 1621, '40.98330', '-89.78330'), ('Elmira', 1400, '41.18330', '-89.83330'), ('La Fayette', 227, '41.10980', '-89.97350'), ('Lombardville', 787, '41.23330', '-89.65000'), ('Osceola', 519, '41.21670', '-89.78330'), ('Toulon', 1400, '41.09450', '-89.86370'), ('West Jersey', 227, '41.01670', '-89.93330'), ('Wyoming', 1424, '41.06450', '-89.77230')], 'partOfState': 'north central', 'wfo': 'ILX'}, +'ILZ029': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alta', 112936, '40.81670', '-89.63330'), ('Bartonville', 6310, '40.63760', '-89.66420'), ('Bellevue', 1887, '40.68630', '-89.67390'), ('Brimfield', 933, '40.83820', '-89.88390'), ('Chillicothe', 5996, '40.91830', '-89.49930'), ('Dunlap', 926, '40.86080', '-89.67660'), ('Elmore', 620, '40.96670', '-89.96670'), ('Elmwood', 1945, '40.77910', '-89.96690'), ('Glasford', 1076, '40.57230', '-89.81320'), ('Hanna City', 1013, '40.69220', '-89.79310'), ('Kickapoo', 926, '40.80000', '-89.75000'), ('Kingston Mines', 259, '40.55820', '-89.77060'), ('Laura', 933, '40.91670', '-89.91670'), ('Mapleton', 227, '40.56970', '-89.72140'), ('Monica', 1621, '40.93330', '-89.83330'), ('Mossville', 436, '40.81670', '-89.56670'), ('Norwood', 473, '40.70680', '-89.69950'), ('Peoria', 112936, '40.74500', '-89.60920'), ('Princeville', 1621, '40.93150', '-89.75560'), ('Rome', 1776, '40.87840', '-89.51170'), ('Smithville', 1013, '40.66670', '-89.80000'), ('Trivoli', 1013, '40.69220', '-89.88330'), ('West Peoria', 4762, '40.69920', '-89.63350')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ030': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Camp Grove', 787, '41.08330', '-89.63330'), ('Henry', 2540, '41.11230', '-89.36180'), ('Hopewell', 396, '40.98330', '-89.45630'), ('Lacon', 1979, '41.02170', '-89.40680'), ('La Rose', 159, '40.97740', '-89.23450'), ('Lawn Ridge', 5996, '40.98330', '-89.61670'), ('Sparland', 504, '41.03030', '-89.44090'), ('Toluca', 1339, '41.00530', '-89.13320'), ('Varna', 436, '41.03560', '-89.22450'), ('Wenona', 1065, '41.06670', '-89.07000')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ031': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Benson', 408, '40.85070', '-89.12050'), ('Cazenovia', 2700, '40.85070', '-89.33310'), ('Congerville', 466, '40.61670', '-89.20850'), ('El Paso', 2695, '40.73980', '-89.01480'), ('Eureka', 4871, '40.71560', '-89.27510'), ('Germantown Hills', 2111, '40.76890', '-89.46800'), ('Goodfield', 686, '40.62950', '-89.27120'), ('Kappa', 170, '40.67480', '-89.00820'), ('Low Point', 1147, '40.87840', '-89.32000'), ('Metamora', 2700, '40.79210', '-89.36360'), ('Minonk', 2168, '40.90360', '-89.03750'), ('Panola', 33, '40.78510', '-89.02040'), ('Roanoke', 1994, '40.79630', '-89.20170'), ('Secor', 379, '40.74050', '-89.13580'), ('Spring Bay', 436, '40.82350', '-89.52560'), ('Washburn', 1147, '40.92070', '-89.29170')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ032': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Campus', 145, '41.02480', '-88.30790'), ('Chatsworth', 1265, '40.75300', '-88.29380'), ('Cornell', 511, '40.99230', '-88.72970'), ('Cullom', 563, '40.87790', '-88.26960'), ('Dwight', 4363, '41.09700', '-88.42480'), ('Emington', 120, '40.97010', '-88.35740'), ('Fairbury', 3968, '40.74660', '-88.51240'), ('Flanagan', 1083, '40.87730', '-88.86060'), ('Forrest', 1225, '40.75000', '-88.40990'), ('Long Point', 247, '41.00470', '-88.89360'), ('Odell', 1014, '41.00280', '-88.52280'), ('Pontiac', 11864, '40.87660', '-88.64180'), ('Saunemin', 456, '40.89290', '-88.40650'), ('Strawn', 104, '40.65270', '-88.39890')], 'partOfState': 'central', 'wfo': 'LOT'}, +'ILZ033': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ashkum', 724, '40.87840', '-87.95360'), ('Beaverville', 391, '40.95350', '-87.65500'), ('Buckley', 593, '40.59720', '-88.03700'), ('Chebanse', 1148, '41.00220', '-87.91380'), ('Cissna Park', 811, '40.56680', '-87.89250'), ('Clifton', 1317, '40.93550', '-87.93340'), ('Crescent City', 631, '40.77150', '-87.85640'), ('Danforth', 587, '40.82120', '-87.97790'), ('Donovan', 351, '40.88540', '-87.61470'), ('Gilman', 1793, '40.76590', '-87.99610'), ('Iroquois', 207, '40.82870', '-87.58470'), ('Loda', 419, '40.51670', '-88.07530'), ('Martinton', 375, '40.91530', '-87.72630'), ('Milford', 1369, '40.62770', '-87.69700'), ('Onarga', 1438, '40.71310', '-88.01320'), ('Papineau', 196, '40.96770', '-87.71590'), ('Sheldon', 1232, '40.77090', '-87.56640'), ('Thawville', 258, '40.67390', '-88.11330'), ('Watseka', 5670, '40.77590', '-87.73210'), ('Wellington', 264, '40.54050', '-87.67830'), ('Woodland', 319, '40.71300', '-87.73070')], 'partOfState': 'east central', 'wfo': 'LOT'}, +'ILZ034': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adrian', 168, '40.51670', '-91.16670'), ('Augusta', 657, '40.23090', '-90.94890'), ('Basco', 107, '40.32680', '-91.19910'), ('Bentley', 43, '40.34470', '-91.11110'), ('Bowen', 535, '40.23200', '-91.06360'), ('Burnside', 168, '40.50000', '-91.10000'), ('Carthage', 2725, '40.41430', '-91.13510'), ('Colusa', 1055, '40.56670', '-91.16670'), ('Dallas City', 1055, '40.63500', '-91.16450'), ('Denver', 43, '40.28330', '-91.10000'), ('Disco', 1385, '40.61670', '-91.01670'), ('Elvaston', 152, '40.39430', '-91.24840'), ('Ferris', 168, '40.46950', '-91.16940'), ('Fountain Green', 1385, '40.48330', '-90.96670'), ('Hamilton', 3029, '40.38910', '-91.36320'), ('La Harpe', 1385, '40.58400', '-90.97000'), ('Nauvoo', 1063, '40.54750', '-91.38480'), ('Nauvoo State Park', 0, '40.54630', '-91.38420'), ('Niota', 11618, '40.61670', '-91.28330'), ('Plymouth', 562, '40.29120', '-90.92000'), ('Pontoosuc', 171, '40.62860', '-91.21160'), ('Stillwell', 195, '40.21670', '-91.18330'), ('Sutter', 1793, '40.28330', '-91.35000'), ('Tioga', 159, '40.21660', '-91.35000'), ('Warsaw', 1793, '40.35280', '-91.42690'), ('Webster', 1385, '40.46670', '-91.00000'), ('Western Illinois University', 3029, '40.43330', '-91.33330'), ('West Point', 195, '40.25560', '-91.18310')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILZ035': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adair', 396, '40.41670', '-90.50000'), ('Argyle Lake State Park', 1493, '40.45000', '-90.78330'), ('Bardolph', 253, '40.49680', '-90.56320'), ('Blandinsville', 777, '40.55470', '-90.86940'), ('Bushnell', 3221, '40.55150', '-90.50450'), ('Colchester', 1493, '40.42680', '-90.79300'), ('Colmar', 562, '40.35000', '-90.88330'), ('Doddsville', 197, '40.28330', '-90.65000'), ('Fandon', 1493, '40.36670', '-90.76670'), ('Good Hope', 415, '40.55760', '-90.67490'), ('Industry', 540, '40.32720', '-90.60800'), ('Macomb', 18558, '40.47040', '-90.68140'), ('Macomb Municipal Airport', 415, '40.51670', '-90.65000'), ('New Philadelphia', 150, '40.48330', '-90.46670'), ('Pennington Point', 540, '40.40000', '-90.55000'), ('Prairie City', 461, '40.62060', '-90.46450'), ('Prairie City Airport', 461, '40.61670', '-90.46670'), ('Sciota', 58, '40.56190', '-90.74900'), ('Scottsburg', 253, '40.55000', '-90.60000'), ('Tennessee', 144, '40.41170', '-90.83590'), ('Walnut Grove', 3221, '40.61670', '-90.56670')], 'partOfState': 'west central', 'wfo': 'DVN'}, +'ILZ036': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Astoria', 1193, '40.22830', '-90.35590'), ('Avon', 915, '40.66220', '-90.43540'), ('Banner', 149, '40.51470', '-89.91040'), ('Bernadotte', 506, '40.40000', '-90.32320'), ('Bryant', 255, '40.46550', '-90.09450'), ('Canton', 15288, '40.56250', '-90.04030'), ('Cuba', 1418, '40.49340', '-90.19320'), ('Duncan Mills', 2522, '40.33330', '-90.18330'), ('Dunfermline', 262, '40.49090', '-90.03270'), ('Ellisville', 87, '40.62700', '-90.30570'), ('Fairview', 493, '40.65050', '-90.19110'), ('Fiatt', 1418, '40.56670', '-90.18330'), ('Ipava', 506, '40.35210', '-90.32320'), ('Lewistown', 2522, '40.39690', '-90.15530'), ('Little America', 119, '40.43330', '-90.03330'), ('Liverpool', 119, '40.39690', '-90.00950'), ('London Mills', 447, '40.71070', '-90.26670'), ('Marbletown', 310, '40.22830', '-90.24500'), ('Marietta', 150, '40.49980', '-90.39230'), ('Norris', 194, '40.62550', '-90.03170'), ('Smithfield', 214, '40.47440', '-90.29500'), ('St. David', 58, '40.49200', '-90.05140'), ('Table Grove', 396, '40.36560', '-90.42490'), ('Vermont', 792, '40.29600', '-90.42810')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILZ037': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Armington', 368, '40.33990', '-89.31370'), ('Creve Coeur', 5448, '40.64130', '-89.59970'), ('Deer Creek', 605, '40.62930', '-89.33310'), ('Delavan', 1825, '40.37140', '-89.54490'), ('Dillon', 2029, '40.46670', '-89.53330'), ('East Peoria', 22638, '40.67150', '-89.54780'), ('Green Valley', 728, '40.40640', '-89.64250'), ('Groveland', 15198, '40.61120', '-89.52500'), ('Hopedale', 929, '40.42180', '-89.41630'), ('Mackinaw', 1452, '40.53500', '-89.35850'), ('Marquette Heights', 2794, '40.61720', '-89.60370'), ('Minier', 1244, '40.43380', '-89.31400'), ('Morton', 15198, '40.61120', '-89.46780'), ('Pekin', 33857, '40.56820', '-89.62810'), ('Powerton', 1162, '40.53330', '-89.68330'), ('South Pekin', 1162, '40.49690', '-89.65180'), ('Tremont', 2029, '40.52580', '-89.49030'), ('Washington', 10841, '40.69820', '-89.43510')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ038': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Anchor', 175, '40.56870', '-88.53870'), ('Arrowsmith', 298, '40.44890', '-88.63150'), ('Bellflower', 408, '40.34050', '-88.52670'), ('Bloomington', 64808, '40.47890', '-88.97350'), ('Carlock', 456, '40.58210', '-89.13270'), ('Chenoa', 1845, '40.74420', '-88.71810'), ('Colfax', 989, '40.56670', '-88.61650'), ('Cooksville', 213, '40.54260', '-88.71510'), ('Cropsey', 175, '40.60000', '-88.48330'), ('Danvers', 1183, '40.52890', '-89.17330'), ('Downs', 776, '40.39590', '-88.87170'), ('Ellsworth', 271, '40.44950', '-88.71660'), ('Gridley', 1411, '40.74390', '-88.88040'), ('Heyworth', 2431, '40.31380', '-88.97880'), ('Holder', 271, '40.45000', '-88.80000'), ('Hudson', 1510, '40.60700', '-88.98860'), ('Le Roy', 3332, '40.34160', '-88.76470'), ('Lexington', 1912, '40.64380', '-88.78270'), ('McLean', 808, '40.31560', '-89.17040'), ('Normal', 45386, '40.51740', '-88.99940'), ('Pleasant Hill', 1912, '40.61670', '-88.73330'), ('Saybrook', 764, '40.42830', '-88.52650'), ('Shirley', 64808, '40.41670', '-89.03330'), ('Stanford', 67, '40.43400', '-89.22010'), ('Towanda', 493, '40.56320', '-88.90040')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ039': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cabery', 263, '40.99470', '-88.20480'), ('Elliott', 341, '40.46420', '-88.27480'), ('Gibson City', 3373, '40.46570', '-88.37860'), ('Kempton', 235, '40.93580', '-88.23580'), ('Melvin', 465, '40.57140', '-88.24740'), ('Paxton', 4525, '40.45840', '-88.09950'), ('Piper City', 781, '40.75570', '-88.18770'), ('Roberts', 387, '40.61410', '-88.18350'), ('Sibley', 329, '40.58760', '-88.37810')], 'partOfState': 'east central', 'wfo': 'LOT'}, +'ILZ040': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bluff City', 310, '40.18330', '-90.23330'), ('Brooklyn', 97, '40.23330', '-90.76670'), ('Browning', 130, '40.12810', '-90.37280'), ('Camden', 97, '40.15300', '-90.77240'), ('Frederick', 5766, '40.06670', '-90.43330'), ('Huntsville', 657, '40.18330', '-90.86670'), ('Littleton', 197, '40.23470', '-90.62330'), ('Ray', 792, '40.21670', '-90.48330'), ('Rushville', 3212, '40.11980', '-90.56570')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILZ041': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bath', 310, '40.19110', '-90.14240'), ('Chatauqua Park', 3577, '40.33330', '-90.05000'), ('Easton', 373, '40.23200', '-89.84210'), ('Forest City', 287, '40.37100', '-89.83190'), ('Havana', 3577, '40.29840', '-90.05680'), ('Kilbourne', 375, '40.15160', '-90.00950'), ('Manito', 1733, '40.42180', '-89.78070'), ('Mason City', 2558, '40.20180', '-89.69620'), ('Poplar City', 90, '40.25000', '-89.95000'), ('San Jose', 696, '40.30600', '-89.60340'), ('Snicarte', 310, '40.13500', '-90.24000'), ('Topeka', 90, '40.32990', '-89.93090'), ('Union', 1733, '40.40000', '-89.80000')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ042': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atlanta', 1649, '40.26220', '-89.23220'), ('Beason', 1649, '40.15000', '-89.20000'), ('Broadwell', 169, '40.06730', '-89.44260'), ('Chestnut', 1701, '40.06670', '-89.20000'), ('Cornland', 491, '39.94000', '-89.40900'), ('Elkhart', 443, '40.01930', '-89.48180'), ('Emden', 515, '40.29770', '-89.48520'), ('Hartsburg', 358, '40.25070', '-89.44070'), ('Latham', 371, '39.96690', '-89.16190'), ('Lawndale', 1649, '40.21670', '-89.28330'), ('Lincoln', 15369, '40.15060', '-89.36690'), ('Middletown', 434, '40.10060', '-89.59130'), ('Mount Pulaski', 1701, '40.01010', '-89.28310'), ('New Holland', 318, '40.18430', '-89.58250')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ043': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Clinton', 7485, '40.15030', '-88.96160'), ('De Witt', 188, '40.18440', '-88.78590'), ('Farmer City', 2055, '40.24440', '-88.64120'), ('Hallsville', 374, '40.15000', '-89.10000'), ('Kenney', 374, '40.09830', '-89.08610'), ('Lane', 188, '40.13500', '-88.85000'), ('Rowell', 374, '40.06670', '-89.03330'), ('Wapella', 651, '40.22130', '-88.96170'), ('Waynesville', 452, '40.24090', '-89.12500'), ('Weldon', 440, '40.12150', '-88.75060')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ044': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atwood', 1290, '39.80000', '-88.47000'), ('Bement', 1784, '39.92280', '-88.57160'), ('Cerro Gordo', 1436, '39.89010', '-88.73460'), ('Cisco', 264, '40.01370', '-88.72350'), ('De Land', 475, '40.12160', '-88.64380'), ('Hammond', 518, '39.79850', '-88.59150'), ('La Place', 1436, '39.80000', '-88.71670'), ('Lodge', 5138, '40.10000', '-88.55000'), ('Mansfield', 949, '40.21200', '-88.50900'), ('Monticello', 5138, '40.02580', '-88.57470'), ('White Heath', 5138, '40.08330', '-88.50000')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ045': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Broadlands', 312, '39.90850', '-87.99540'), ('Champaign', 67518, '40.11300', '-88.26490'), ('Fisher', 1647, '40.31580', '-88.34850'), ('Foosland', 90, '40.36040', '-88.42870'), ('Gifford', 815, '40.30640', '-88.02160'), ('Homer', 1200, '40.03190', '-87.95890'), ('Ivesdale', 288, '39.94510', '-88.45700'), ('Lake Of The Woods', 3026, '40.20650', '-88.36860'), ('Longview', 153, '39.88550', '-88.06650'), ('Ludlow', 324, '40.38620', '-88.12610'), ('Mahomet', 4877, '40.19380', '-88.40180'), ('Ogden', 743, '40.11550', '-87.95580'), ('Pesotum', 521, '39.91290', '-88.27410'), ('Philo', 1314, '40.00310', '-88.15800'), ('Rantoul', 12857, '40.30340', '-88.15550'), ('Royal', 279, '40.19200', '-87.97130'), ('Sadorus', 426, '39.96700', '-88.34540'), ('Savoy', 4476, '40.06500', '-88.25270'), ('Seymour', 354, '40.10000', '-88.41670'), ('Sidney', 1062, '40.02440', '-88.07180'), ('St. Joseph', 2912, '40.11270', '-88.04060'), ('Thomasboro', 1233, '40.24400', '-88.18690'), ('Tolono', 2700, '39.98630', '-88.26300'), ('Urbana', 36395, '40.10850', '-88.20520')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ046': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Allerton', 293, '39.91530', '-87.93560'), ('Alvin', 316, '40.30770', '-87.60680'), ('Armstrong', 681, '40.31670', '-87.88330'), ('Bismarck', 316, '40.26670', '-87.60000'), ('Catlin', 2087, '40.06840', '-87.70790'), ('Collison', 681, '40.23330', '-87.80000'), ('Danville', 33904, '40.14390', '-87.61940'), ('Fairmount', 640, '40.04610', '-87.82860'), ('Fithian', 506, '40.11400', '-87.87470'), ('Georgetown', 3628, '39.97650', '-87.63500'), ('Henning', 241, '40.30620', '-87.70070'), ('Hoopeston', 5965, '40.46520', '-87.67090'), ('Indianola', 207, '39.92710', '-87.74020'), ('Jamaica', 640, '39.98330', '-87.80000'), ('Oakwood', 1502, '40.10900', '-87.77650'), ('Potomac', 681, '40.30640', '-87.79720'), ('Rankin', 617, '40.46470', '-87.89610'), ('Ridge Farm', 912, '39.89530', '-87.65230'), ('Rossville', 1217, '40.38180', '-87.66910'), ('Sidell', 626, '39.91020', '-87.82200'), ('Tilton', 2976, '40.09430', '-87.63850'), ('Westville', 3175, '40.04480', '-87.63800')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ047': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Arenzville', 419, '39.88500', '-90.37200'), ('Ashland', 1361, '39.88870', '-90.00870'), ('Beardstown', 5766, '40.01240', '-90.43000'), ('Bluff Springs', 5766, '39.98000', '-90.37100'), ('Chandlerville', 704, '40.04820', '-90.15070'), ('Newmansville', 638, '40.00000', '-90.01670'), ('Philadelphia', 1728, '39.91670', '-90.11670'), ('Virginia', 1728, '39.95080', '-90.21130')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILZ048': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Athens', 1726, '39.96090', '-89.72480'), ('Atterberry', 309, '40.06670', '-89.91670'), ('Fancy Prairie', 1439, '39.98330', '-89.60000'), ('Greenview', 862, '40.08480', '-89.74020'), ('Oakford', 309, '40.10100', '-89.96540'), ('Petersburg', 2299, '40.01240', '-89.85140'), ('Sweetwater', 862, '40.06000', '-89.70000'), ('Tallula', 638, '39.94580', '-89.93630')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ049': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alsey', 246, '39.55930', '-90.43350'), ('Bluffs', 748, '39.75000', '-90.53440'), ('Exeter', 70, '39.71900', '-90.49590'), ('Glasgow', 170, '39.54970', '-90.47960'), ('Manchester', 354, '39.54220', '-90.33040'), ('Merritt', 592, '39.71670', '-90.41670'), ('Naples', 134, '39.75390', '-90.60800'), ('Oxville', 748, '39.70000', '-90.56670'), ('Riggston', 1650, '39.68330', '-90.43330'), ('Winchester', 1650, '39.62940', '-90.45660')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILZ050': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alexander', 586, '39.71670', '-90.05000'), ('Chapin', 592, '39.76730', '-90.40330'), ('Concord', 176, '39.81610', '-90.37170'), ('Franklin', 586, '39.62040', '-90.04720'), ('Jacksonville', 18940, '39.72970', '-90.23430'), ('Literberry', 1728, '39.85000', '-90.20000'), ('Lynnville', 137, '39.68500', '-90.34630'), ('Meredosia', 1041, '39.83150', '-90.55830'), ('Murrayville', 644, '39.58230', '-90.25090'), ('Nortonville', 559, '39.56670', '-90.15000'), ('Prentice', 1361, '39.85000', '-90.05000'), ('Sinclair', 1361, '39.81670', '-90.11670'), ('Waverly', 1346, '39.59270', '-89.95230'), ('Woodson', 559, '39.62750', '-90.22290')], 'partOfState': 'west central', 'wfo': 'ILX'}, +'ILZ051': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Auburn', 4317, '39.57720', '-89.74580'), ('Berlin', 140, '39.75770', '-89.90250'), ('Berry', 2893, '39.71670', '-89.48330'), ('Buffalo', 491, '39.84950', '-89.40900'), ('Cantrall', 139, '39.93440', '-89.68010'), ('Chatham', 8583, '39.67290', '-89.69710'), ('Curran', 1206, '39.74000', '-89.76670'), ('Dawson', 466, '39.85380', '-89.46270'), ('Divernon', 1201, '39.56930', '-89.65400'), ('Farmingdale', 777, '39.83330', '-89.81670'), ('Glenarm', 1201, '39.61670', '-89.67000'), ('Illiopolis', 916, '39.85130', '-89.24700'), ('Loami', 804, '39.67440', '-89.84800'), ('Lowder', 750, '39.55000', '-89.85000'), ('Mechanicsburg', 456, '39.81020', '-89.39820'), ('New Berlin', 1030, '39.72520', '-89.91190'), ('Pawnee', 2647, '39.59200', '-89.58090'), ('Pleasant Plains', 777, '39.87320', '-89.92000'), ('Riverton', 3048, '39.84920', '-89.54010'), ('Rochester', 2893, '39.75060', '-89.54150'), ('Salisbury', 777, '39.90000', '-89.81670'), ('Sherman', 2871, '39.88660', '-89.60900'), ('Springfield', 111454, '39.78140', '-89.64470'), ('Thayer', 750, '39.53990', '-89.75840'), ('Williamsville', 1439, '39.95280', '-89.55630')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ052': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Assumption', 1261, '39.51800', '-89.04840'), ('Edinburg', 1135, '39.65780', '-89.38960'), ('Kincaid', 1441, '39.58870', '-89.41430'), ('Morrisonville', 1068, '39.42120', '-89.45780'), ('Mount Auburn', 515, '39.76590', '-89.26100'), ('Owaneco', 256, '39.48140', '-89.19440'), ('Palmer', 248, '39.45840', '-89.40790'), ('Pana', 5614, '39.38660', '-89.07850'), ('Roby', 456, '39.74000', '-89.39820'), ('Sharpsburg', 1135, '39.61670', '-89.35000'), ('Sicily', 533, '39.60000', '-89.50000'), ('Stonington', 960, '39.63910', '-89.19220'), ('Taylorville', 11427, '39.52150', '-89.26220'), ('Vanderville', 82, '39.42120', '-89.26220'), ('Willeys', 960, '39.60000', '-89.23330')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ053': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Argenta', 921, '39.98500', '-88.81870'), ('Blue Mound', 1129, '39.70070', '-89.11890'), ('Boody', 1338, '39.76670', '-89.05500'), ('Decatur', 81860, '39.85220', '-88.93380'), ('Elwin', 81860, '39.78330', '-88.95590'), ('Forsyth', 2434, '39.92360', '-88.95590'), ('Harristown', 1338, '39.84160', '-89.05950'), ('Long Creek', 1364, '39.80430', '-88.84730'), ('Macon', 1213, '39.70900', '-88.99940'), ('Maroa', 1654, '40.03820', '-88.95490'), ('Mount Zion', 4845, '39.77790', '-88.87850'), ('Niantic', 738, '39.85390', '-89.16550'), ('Oakley', 1364, '39.85220', '-88.81870'), ('Oreana', 892, '39.93790', '-88.86920'), ('Warrensburg', 1289, '39.93230', '-89.06120')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ054': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Allenville', 154, '39.55790', '-88.53830'), ('Bethany', 1287, '39.64420', '-88.74090'), ('Cadwell', 2203, '39.68330', '-88.53330'), ('Dalton City', 581, '39.71410', '-88.80700'), ('Gays', 259, '39.45790', '-88.49590'), ('Kirksville', 4326, '39.56670', '-88.66670'), ('Lake City', 1222, '39.75000', '-88.71670'), ('Lovington', 1222, '39.71450', '-88.63090'), ('Sullivan', 4326, '39.59740', '-88.60710')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ055': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Arcola', 2652, '39.68460', '-88.30380'), ('Arthur', 2203, '39.71530', '-88.46900'), ('Bourbon', 198, '39.75000', '-88.38330'), ('Camargo', 469, '39.79950', '-88.16670'), ('Chesterville', 2203, '39.68460', '-88.40000'), ('Garrett', 198, '39.79680', '-88.42530'), ('Hindsboro', 361, '39.68430', '-88.13420'), ('Murdock', 469, '39.80000', '-88.08330'), ('Newman', 956, '39.79730', '-87.98750'), ('Tuscola', 4448, '39.79770', '-88.28150'), ('Villa Grove', 2553, '39.86360', '-88.15950')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ056': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ashmore', 809, '39.53110', '-88.02040'), ('Charleston', 21039, '39.48480', '-88.17610'), ('Coles', 259, '39.51670', '-88.46670'), ('Cooks Mill', 481, '39.58330', '-88.41670'), ('Humboldt', 481, '39.60510', '-88.31950'), ('Hutton', 678, '39.40000', '-88.06670'), ('Lerna', 322, '39.41790', '-88.28890'), ('Mattoon', 18291, '39.47700', '-88.36880'), ('Oakland', 996, '39.65770', '-88.02660'), ('Paradise', 259, '39.41670', '-88.45000'), ('Rardin', 361, '39.60000', '-88.10000'), ('Trilla', 322, '39.38330', '-88.35000')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ057': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bell Ridge', 3771, '39.50000', '-87.73330'), ('Borton', 322, '39.66500', '-87.93310'), ('Brocton', 322, '39.71610', '-87.93310'), ('Chrisman', 1318, '39.80400', '-87.67420'), ('Edgar', 1318, '39.75000', '-87.70000'), ('Hume', 382, '39.79760', '-87.86880'), ('Kansas', 842, '39.55390', '-87.93990'), ('Metcalf', 213, '39.80030', '-87.80800'), ('Oliver', 3771, '39.48330', '-87.68330'), ('Palermo', 382, '39.86360', '-87.88020'), ('Paris', 9077, '39.61550', '-87.69150'), ('Redmon', 199, '39.64500', '-87.86180'), ('Scottland', 1318, '39.80000', '-87.60000'), ('Vermilion', 239, '39.57970', '-87.58740')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ058': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Athensville', 140, '39.45580', '-90.18930'), ('Barrow', 2214, '39.50620', '-90.40140'), ('Belltown', 2629, '39.38250', '-90.40790'), ('Berdan', 2605, '39.36490', '-90.39760'), ('Carrollton', 2605, '39.29780', '-90.40680'), ('Eldred', 211, '39.28620', '-90.55330'), ('Greenfield', 1179, '39.34430', '-90.20760'), ('Haypress', 211, '39.36050', '-90.53670'), ('Hillview', 179, '39.44960', '-90.53790'), ('Kane', 459, '39.19030', '-90.35120'), ('Old Kane', 459, '39.18300', '-90.36700'), ('Patterson', 130, '39.48070', '-90.48310'), ('Rockbridge', 189, '39.27290', '-90.20890'), ('Roodhouse', 2214, '39.48460', '-90.37340'), ('Walkersville', 271, '39.38700', '-90.49540'), ('White Hall', 2629, '39.43740', '-90.40400'), ('Woody', 211, '39.26370', '-90.48520'), ('Wrights', 1179, '39.37580', '-90.29420')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILZ059': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atwater', 13, '39.33300', '-89.72510'), ('Benld', 1541, '39.09310', '-89.80190'), ('Brighton', 2196, '39.04030', '-90.13900'), ('Bunker Hill', 1801, '39.04050', '-89.95080'), ('Carlinville', 5685, '39.28040', '-89.88090'), ('Chesterfield', 223, '39.25570', '-90.06770'), ('Dorchester', 142, '39.08620', '-89.88820'), ('Gillespie', 3412, '39.12540', '-89.81720'), ('Girard', 2245, '39.44680', '-89.78240'), ('Hettick', 182, '39.35520', '-90.03700'), ('Hornsby', 127, '39.17070', '-89.74510'), ('Medora', 501, '39.17600', '-90.14170'), ('Miles Station', 2196, '39.07710', '-90.10720'), ('Modesto', 252, '39.47910', '-89.98020'), ('Mount Olive', 2150, '39.07260', '-89.72800'), ('Nilwood', 284, '39.39950', '-89.80730'), ('Palmyra', 733, '39.43490', '-89.99620'), ('Piasa', 105, '39.11590', '-90.12570'), ('Plainview', 276, '39.15930', '-89.98980'), ('Pruett', 142, '39.06480', '-89.91090'), ('Royal Lakes', 276, '39.11250', '-89.96180'), ('Scottville', 140, '39.47750', '-90.10330'), ('Shipman', 655, '39.12080', '-90.04520'), ('Standard City', 13, '39.35040', '-89.78380'), ('Staunton', 503, '39.01260', '-89.78850'), ('Virden', 3488, '39.50490', '-89.76950'), ('White City', 221, '39.07240', '-89.76400'), ('Wilsonville', 604, '39.06890', '-89.85530')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILZ060': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Butler', 197, '39.19790', '-89.53400'), ('Chapman', 362, '39.10570', '-89.31700'), ('Coalton', 307, '39.28460', '-89.30450'), ('Coffeen', 709, '39.08890', '-89.39050'), ('Donnellson', 243, '39.03020', '-89.47460'), ('Farmersville', 768, '39.44420', '-89.65300'), ('Fillmore', 362, '39.11570', '-89.27930'), ('Harvel', 235, '39.35700', '-89.54550'), ('Hillsboro', 4359, '39.16310', '-89.48440'), ('Honey Bend', 927, '39.25540', '-89.62570'), ('Irving', 2484, '39.20490', '-89.40600'), ('Litchfield', 6815, '39.17590', '-89.65600'), ('Nokomis', 2389, '39.30040', '-89.28530'), ('Ohlman', 82, '39.34550', '-89.21830'), ('Panama', 323, '39.02870', '-89.52520'), ('Raymond', 927, '39.32020', '-89.57370'), ('Taylor Springs', 583, '39.13070', '-89.49520'), ('Van Burensburg', 362, '39.03610', '-89.27950'), ('Waggoner', 245, '39.37820', '-89.65230'), ('Walshville', 89, '39.06940', '-89.61950'), ('Wenonah', 44, '39.32010', '-89.28930'), ('White Oak', 2647, '39.50980', '-89.57120'), ('Witt', 991, '39.25580', '-89.34900')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILZ061': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Clarksburg', 4971, '39.34000', '-88.75000'), ('Cowden', 612, '39.24890', '-88.85880'), ('Findlay', 723, '39.52110', '-88.75430'), ('Herrick', 524, '39.21920', '-88.98530'), ('Lakewood', 609, '39.32500', '-88.90000'), ('Moweaqua', 1923, '39.62540', '-89.01770'), ('Oconee', 202, '39.28650', '-89.10620'), ('Shelbyville', 4971, '39.40710', '-88.80400'), ('Sigel', 386, '39.22620', '-88.49510'), ('Stewardson', 747, '39.26420', '-88.62990'), ('Strasburg', 603, '39.35060', '-88.62320'), ('Tower Hill', 609, '39.38680', '-88.95960'), ('Trowbridge', 1854, '39.32100', '-88.53330'), ('Westervelt', 4971, '39.46670', '-88.86670'), ('Windsor', 1125, '39.43810', '-88.59580')], 'partOfState': 'central', 'wfo': 'ILX'}, +'ILZ062': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Greenup', 1532, '39.24780', '-88.15990'), ('Hazel Dell', 97, '39.20000', '-88.05000'), ('Janesville', 322, '39.36670', '-88.25000'), ('Jewett', 232, '39.20770', '-88.24280'), ('Neoga', 1854, '39.32160', '-88.45150'), ('Toledo', 1166, '39.27430', '-88.24270'), ('Union Center', 2942, '39.33620', '-88.06670'), ('Woodbury', 257, '39.20000', '-88.31670')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ063': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Casey', 2942, '39.30260', '-87.98930'), ('Clarksville', 3771, '39.45000', '-87.80000'), ('Dennison', 239, '39.46670', '-87.58330'), ('Marshall', 3771, '39.39620', '-87.69020'), ('Martinsville', 1225, '39.33620', '-87.88020'), ('Orange', 1225, '39.20000', '-87.84000'), ('Westfield', 678, '39.45550', '-87.99690'), ('West Union', 568, '39.21670', '-87.66670')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ064': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Beaver Creek', 481, '38.76760', '-89.39370'), ('Dudleyville', 6955, '38.82390', '-89.41820'), ('Greenville', 6955, '38.88930', '-89.40160'), ('Mulberry Grove', 671, '38.92440', '-89.26730'), ('Old Ripley', 127, '38.89230', '-89.57300'), ('Pierron', 653, '38.77890', '-89.56630'), ('Pleasant Mound', 200, '38.86310', '-89.29040'), ('Pocahontas', 727, '38.82450', '-89.53900'), ('Reno', 323, '38.96700', '-89.51700'), ('Shiloh Hill', 127, '38.92530', '-89.62110'), ('Smithboro', 200, '38.89490', '-89.34110'), ('Sorento', 601, '39.00000', '-89.57270'), ('Tamalco', 481, '38.77090', '-89.29160'), ('Woburn', 200, '38.95870', '-89.34660')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILZ065': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Avena', 705, '39.00750', '-88.92800'), ('Bayle City', 117, '39.11400', '-89.16630'), ('Bingham', 117, '39.11290', '-89.21170'), ('Brownstown', 705, '38.99630', '-88.95360'), ('Farina', 558, '38.83170', '-88.77780'), ('Hagerstown', 6975, '38.94340', '-89.16850'), ('La Clede', 527, '38.87970', '-88.71540'), ('Loogootee', 386, '38.90470', '-88.85370'), ('Pittsburg', 671, '38.87150', '-89.21180'), ('Ramsey', 1056, '39.14380', '-89.10990'), ('Shafter', 6975, '39.01360', '-89.18510'), ('Shobonier', 178, '38.86940', '-89.08870'), ('St. Elmo', 1456, '39.02470', '-88.85320'), ('St. James', 1456, '38.95440', '-88.85120'), ('St. Paul', 386, '38.85280', '-88.95340'), ('St. Peter', 386, '38.86740', '-88.85180'), ('Vandalia', 6975, '38.98100', '-89.10140'), ('Wrights Corner', 493, '39.13300', '-88.86700')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILZ066': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Altamont', 2283, '39.05800', '-88.74850'), ('Beecher City', 493, '39.18650', '-88.78750'), ('Dieterich', 591, '39.05960', '-88.38210'), ('Edgewood', 527, '38.92180', '-88.66410'), ('Effingham', 12384, '39.11960', '-88.55090'), ('Elliotstown', 591, '39.00000', '-88.45000'), ('Heartville', 729, '39.06670', '-88.55000'), ('Mason', 396, '38.95310', '-88.62540'), ('Moccasin', 493, '39.13330', '-88.75000'), ('Montrose', 257, '39.16570', '-88.37830'), ('Shumway', 217, '39.18320', '-88.65300'), ('Teutopolis', 1559, '39.13210', '-88.47840'), ('Watson', 729, '39.02560', '-88.56950')], 'partOfState': 'south central', 'wfo': 'ILX'}, +'ILZ067': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bellair', 97, '39.15000', '-87.95000'), ('Bogota', 3069, '38.91670', '-88.23330'), ('Gila', 119, '39.11670', '-88.26670'), ('Hidalgo', 123, '39.15660', '-88.15070'), ('Latona', 119, '38.95000', '-88.31670'), ('Newton', 3069, '38.98810', '-88.16330'), ('Rose Hill', 79, '39.10410', '-88.15120'), ('Ste. Marie', 261, '38.93200', '-88.02660'), ('West Liberty', 261, '38.86670', '-88.08530'), ('Wheeler', 119, '39.04280', '-88.31860'), ('Willow Hill', 250, '38.99630', '-88.02130'), ('Yale', 97, '39.12010', '-88.02430')], 'partOfState': 'southeast', 'wfo': 'ILX'}, +'ILZ068': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Annapolis', 119, '39.15000', '-87.81670'), ('Eaton', 119, '39.08330', '-87.80000'), ('Flat Rock', 415, '38.90440', '-87.67250'), ('Hardinville', 119, '38.91670', '-87.83330'), ('Hutsonville', 568, '39.10870', '-87.66060'), ('New Hebron', 6822, '38.95000', '-87.74000'), ('Oblong', 1580, '39.00220', '-87.90840'), ('Palestine', 1366, '39.00220', '-87.61210'), ('Robinson', 6822, '39.00790', '-87.74050'), ('Stoy', 119, '38.99680', '-87.83340'), ('West York', 568, '39.17000', '-87.67250')], 'partOfState': 'east central', 'wfo': 'ILX'}, +'ILZ069': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Albers', 878, '38.54480', '-89.61510'), ('Aviston', 1231, '38.60780', '-89.60620'), ('Bartelso', 593, '38.53650', '-89.46840'), ('Beckemeyer', 1043, '38.60510', '-89.43400'), ('Boulder', 481, '38.70000', '-89.21700'), ('Breese', 4048, '38.61100', '-89.52220'), ('Carlyle', 3406, '38.61900', '-89.37220'), ('Damiansville', 368, '38.50950', '-89.62420'), ('Ferrin', 196, '38.60950', '-89.23340'), ('Germantown', 1118, '38.55230', '-89.53760'), ('Hoffman', 460, '38.53840', '-89.26290'), ('Huey', 196, '38.60540', '-89.29140'), ('Jamestown', 653, '38.73400', '-89.51450'), ('Keyesport', 481, '38.74070', '-89.27700'), ('New Baden', 3001, '38.53640', '-89.69770'), ('New Memphis', 3001, '38.47930', '-89.67840'), ('Posey', 3406, '38.53700', '-89.35260'), ('Shattuc', 1434, '38.61070', '-89.19290'), ('Stolletown', 1043, '38.69340', '-89.44680'), ('St. Rose', 4048, '38.68300', '-89.55000'), ('Trenton', 2610, '38.60670', '-89.68160')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILZ070': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alma', 386, '38.72290', '-88.91010'), ('Brubaker', 386, '38.69310', '-88.87650'), ('Cartter', 231, '38.54110', '-88.91220'), ('Central City', 1371, '38.54800', '-89.12860'), ('Centralia', 14136, '38.52280', '-89.12700'), ('Fairman', 1434, '38.67780', '-89.10470'), ('Helm', 598, '38.51700', '-88.71700'), ('Iuka', 598, '38.61450', '-88.78980'), ('Junction City', 559, '38.57730', '-89.12540'), ('Kell', 231, '38.49080', '-88.90420'), ('Kinmundy', 892, '38.77400', '-88.84960'), ('Odin', 1122, '38.61640', '-89.05390'), ('Omega', 598, '38.70450', '-88.78070'), ('Patoka', 633, '38.75340', '-89.09600'), ('Salem', 7909, '38.62830', '-88.95180'), ('Sandoval', 1434, '38.61130', '-89.11930'), ('Selmaville', 7909, '38.60700', '-88.99540'), ('Stephen Forbes Station', 892, '38.72490', '-88.76380'), ('Tonti', 7909, '38.66470', '-88.97840'), ('Vernon', 178, '38.80200', '-89.08910'), ('Walnut Hill', 109, '38.47740', '-89.04420')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILZ071': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bible Grove', 1242, '38.86670', '-88.43330'), ('Clay City', 1000, '38.68550', '-88.35120'), ('Flora', 5086, '38.67050', '-88.47880'), ('Hord', 1242, '38.88330', '-88.51670'), ('Ingraham', 128, '38.83330', '-88.33330'), ('Iola', 171, '38.83460', '-88.62770'), ('Louisville', 1242, '38.76950', '-88.50730'), ('Oskaloosa', 171, '38.75000', '-88.65000'), ('Sailor Springs', 128, '38.76480', '-88.35870'), ('Wendelin', 128, '38.83330', '-88.28330'), ('Xenia', 407, '38.63680', '-88.63710')], 'partOfState': 'south central', 'wfo': 'ILX'}, +'ILZ072': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Berryville', 1001, '38.60000', '-87.95000'), ('Calhoun', 222, '38.65140', '-88.04280'), ('Claremont', 212, '38.71910', '-87.97450'), ('Dundas', 8631, '38.83330', '-88.08000'), ('Noble', 746, '38.69720', '-88.22460'), ('Olney', 8631, '38.73140', '-88.08530'), ('Parkersburg', 234, '38.58870', '-88.05570'), ('Schnell', 746, '38.63330', '-88.25000'), ('Wakefield', 746, '38.83500', '-88.23330')], 'partOfState': 'southeast', 'wfo': 'ILX'}, +'ILZ073': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Billett', 4745, '38.66670', '-87.65000'), ('Birds', 51, '38.83750', '-87.67080'), ('Bridgeport', 2168, '38.71000', '-87.75850'), ('Chauncey', 1022, '38.83330', '-87.86670'), ('Helena', 1022, '38.61800', '-87.86670'), ('Lawrenceville', 4745, '38.72640', '-87.68790'), ('Petrolia', 2168, '38.76670', '-87.77500'), ('Pinkstaff', 51, '38.80000', '-87.66670'), ('Russellville', 119, '38.82000', '-87.52930'), ('St. Francisville', 759, '38.59190', '-87.64760'), ('Sumner', 1022, '38.71710', '-87.86230')], 'partOfState': 'southeast', 'wfo': 'ILX'}, +'ILZ074': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Addieville', 267, '38.39170', '-89.48740'), ('Ashley', 613, '38.32910', '-89.18940'), ('Beaucoup', 3147, '38.34980', '-89.29210'), ('Cordes', 213, '38.29610', '-89.45720'), ('Covington', 204, '38.45480', '-89.43590'), ('Du Bois', 222, '38.22190', '-89.21280'), ('Elkton', 213, '38.29190', '-89.55680'), ('Frogtown', 267, '38.44230', '-89.49180'), ('Hoyleton', 520, '38.44530', '-89.27160'), ('Huegely', 520, '38.40570', '-89.31840'), ('Irvington', 736, '38.43710', '-89.16240'), ('Johannisburg', 137, '38.38450', '-89.65320'), ('Lively Grove', 137, '38.30000', '-89.61700'), ('Nashville', 3147, '38.34810', '-89.37770'), ('New Minden', 204, '38.43750', '-89.37090'), ('Oakdale', 213, '38.26380', '-89.50490'), ('Okawville', 1355, '38.43420', '-89.54830'), ('Posen', 3147, '38.25830', '-89.33570'), ('Radom', 395, '38.28060', '-89.19180'), ('Richview', 308, '38.37560', '-89.18370'), ('Stone Church', 137, '38.35040', '-89.62450'), ('Venedy', 137, '38.39590', '-89.64590'), ('Wamac', 1378, '38.50020', '-89.14570')], 'partOfState': 'south central', 'wfo': 'LSX'}, +'ILZ075': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belle Rive', 371, '38.23200', '-88.73990'), ('Bluford', 785, '38.32630', '-88.73560'), ('Bonnie', 424, '38.20150', '-88.90750'), ('Dix', 494, '38.44060', '-88.94240'), ('Ina', 2455, '38.15220', '-88.90370'), ('Mount Vernon', 16269, '38.31760', '-88.91100'), ('Nason', 234, '38.17630', '-88.96590'), ('Waltonville', 422, '38.21320', '-89.03910'), ('Woodlawn', 630, '38.33050', '-89.03530')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILZ076': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cisne', 673, '38.51400', '-88.43710'), ('Fairfield', 5421, '38.38040', '-88.36900'), ('Golden Gate', 100, '38.35860', '-88.20550'), ('Jeffersonville', 366, '38.44300', '-88.40470'), ('Johnsonville', 69, '38.52060', '-88.53720'), ('Keenes', 99, '38.33790', '-88.64120'), ('Mount Erie', 105, '38.51460', '-88.23270'), ('Sims', 273, '38.36120', '-88.53500'), ('Wayne City', 1089, '38.34870', '-88.58740')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILZ077': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Albion', 1933, '38.37620', '-88.05720'), ('Bone Gap', 272, '38.44480', '-87.99790'), ('Browns', 175, '38.37770', '-87.98340'), ('Grayville', 1725, '38.25980', '-87.99690'), ('West Salem', 1001, '38.52000', '-88.00880')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'ILZ078': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Allendale', 528, '38.52760', '-87.71030'), ('Bellmont', 297, '38.38260', '-87.90950'), ('Keensburg', 252, '38.35200', '-87.86700'), ('Mount Carmel', 7982, '38.41720', '-87.77010')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'ILZ079': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Baldwin', 3627, '38.18370', '-89.84460'), ('Blair', 2077, '38.04480', '-89.74200'), ('Bremen', 5185, '37.97120', '-89.74730'), ('Chester', 5185, '37.91970', '-89.82510'), ('Coulterville', 1230, '38.18490', '-89.60430'), ('Eden', 4486, '38.12060', '-89.66760'), ('Ellis Grove', 381, '38.00930', '-89.90870'), ('Evansville', 724, '38.08880', '-89.93290'), ('Houston', 4486, '38.15930', '-89.78120'), ('Kaskaskia', 9, '37.92130', '-89.91640'), ('Kellogg', 4411, '38.01370', '-90.05540'), ('Modoc', 613, '38.05260', '-90.03730'), ('New Palestine', 5185, '37.99650', '-89.82070'), ('Percy', 942, '38.01600', '-89.61680'), ('Prairie', 3422, '38.17320', '-89.94320'), ('Prairie Du Rocher', 613, '38.08130', '-90.09760'), ('Preston', 724, '38.10610', '-89.86010'), ('Red Bud', 3422, '38.21020', '-89.99640'), ('Rockwood', 41, '37.83790', '-89.69740'), ('Roots', 381, '38.01790', '-89.97230'), ('Ruma', 260, '38.13440', '-89.99840'), ('Sparta', 4486, '38.15280', '-89.71550'), ('Steeleville', 2077, '38.00750', '-89.66070'), ('Tilden', 922, '38.21190', '-89.68330'), ('Walsh', 724, '38.08950', '-89.85080'), ('Welge', 2077, '37.95650', '-89.71260')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILZ080': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cutler', 543, '38.03270', '-89.56660'), ('Du Quoin', 6448, '38.00420', '-89.23540'), ('Pinckneyville', 5464, '38.07810', '-89.38420'), ('St. Johns', 218, '38.03120', '-89.24040'), ('Tamaroa', 740, '38.13540', '-89.22890'), ('Willisville', 694, '37.98290', '-89.59060')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILZ081': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Benton', 6880, '38.00710', '-88.91850'), ('Buckner', 479, '37.98110', '-89.01560'), ('Christopher', 2836, '37.97260', '-89.05190'), ('Ewing', 310, '38.08930', '-88.85220'), ('Hanaford', 55, '37.95850', '-88.83530'), ('North City', 630, '37.99130', '-89.06160'), ('Orient', 296, '37.91640', '-88.97540'), ('Royalton', 1130, '37.87770', '-89.11350'), ('Sesser', 2128, '38.09030', '-89.05050'), ('Thompsonville', 571, '37.91410', '-88.76170'), ('Valier', 662, '38.01780', '-89.04350'), ('West City', 716, '37.99600', '-88.94870'), ('West Frankfort', 8196, '37.90060', '-88.92940'), ('Zeigler', 1669, '37.89990', '-89.05250')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILZ082': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belle Prairie City', 60, '38.22310', '-88.55150'), ('Broughton', 193, '37.93410', '-88.46140'), ('Dahlgren', 514, '38.19860', '-88.68410'), ('Macedonia', 51, '38.05380', '-88.70310'), ('McLeansboro', 2945, '38.09230', '-88.53280')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'ILZ083': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Burnt Prairie', 58, '38.25050', '-88.25770'), ('Carmi', 5422, '38.08640', '-88.17120'), ('Crossville', 782, '38.16260', '-88.06450'), ('Enfield', 625, '38.10170', '-88.33730'), ('Maunie', 177, '38.03510', '-88.04530'), ('Mill Shoals', 235, '38.25140', '-88.34510'), ('Norris City', 1057, '37.97950', '-88.32820'), ('Phillipstown', 28, '38.14070', '-88.01920'), ('Springerton', 134, '38.17890', '-88.35490')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'ILZ084': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ava', 662, '37.88840', '-89.49630'), ('Campbell Hill', 333, '37.93020', '-89.55100'), ('Carbondale', 20681, '37.72460', '-89.21740'), ('De Soto', 1653, '37.81590', '-89.22720'), ('Dowell', 441, '37.93950', '-89.23950'), ('Elkville', 1001, '37.90950', '-89.23650'), ('Gorham', 256, '37.71780', '-89.48260'), ('Grand Tower', 624, '37.63960', '-89.50330'), ('Makanda', 419, '37.61910', '-89.23720'), ('Murphysboro', 13295, '37.76810', '-89.33720'), ('Vergennes', 491, '37.90200', '-89.33970')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ085': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Bush', 257, '37.84190', '-89.12980'), ('Cambria', 1330, '37.77860', '-89.11430'), ('Carterville', 4616, '37.76170', '-89.08270'), ('Colp', 224, '37.80750', '-89.07790'), ('Crainville', 992, '37.75030', '-89.06010'), ('Creal Springs', 702, '37.61860', '-88.83760'), ('Energy', 1175, '37.77540', '-89.02580'), ('Freeman Spur', 273, '37.85990', '-88.99980'), ('Herrin', 11298, '37.80160', '-89.03160'), ('Hurst', 805, '37.83560', '-89.14340'), ('Johnston City', 3557, '37.82160', '-88.92550'), ('Marion', 16035, '37.73280', '-88.94130'), ('Pittsburg', 575, '37.77670', '-88.85030'), ('Spillertown', 220, '37.76590', '-88.92110'), ('Whiteash', 268, '37.78520', '-88.93050')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ086': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Carriers Mills', 1886, '37.68860', '-88.62890'), ('Eldorado', 4534, '37.81180', '-88.44170'), ('Galatia', 1013, '37.84110', '-88.61390'), ('Harrisburg', 9860, '37.73650', '-88.54930'), ('Muddy', 78, '37.76500', '-88.51680'), ('Raleigh', 330, '37.82530', '-88.53160'), ('Stonefort', 292, '37.61750', '-88.70720')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ087': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Equality', 721, '37.73590', '-88.34310'), ('Junction', 139, '37.72300', '-88.23780'), ('New Haven', 477, '37.90010', '-88.12780'), ('Old Shawneetown', 278, '37.69690', '-88.13780'), ('Omaha', 263, '37.88990', '-88.30440'), ('Ridgway', 928, '37.79800', '-88.26050'), ('Shawneetown', 1410, '37.71280', '-88.16550')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ088': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alto Pass', 388, '37.57290', '-89.31930'), ('Anna', 5136, '37.46000', '-89.24110'), ('Cobden', 1116, '37.53340', '-89.25420'), ('Dongola', 806, '37.36000', '-89.16390'), ('Jonesboro', 1853, '37.45430', '-89.26960'), ('Mill Creek', 76, '37.34150', '-89.25420')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ089': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Belknap', 133, '37.32230', '-88.94010'), ('Buncombe', 186, '37.47090', '-88.97490'), ('Cypress', 271, '37.36550', '-89.01900'), ('Goreville', 938, '37.55510', '-88.97360'), ('New Burnside', 242, '37.57840', '-88.77310'), ('Simpson', 54, '37.46760', '-88.75500'), ('Vienna', 1234, '37.41420', '-88.89270')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ090': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Eddyville', 153, '37.50030', '-88.58520'), ('Golconda', 726, '37.36270', '-88.48670'), ('Hamletsburg', 90, '37.14080', '-88.44600')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ091': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cave-In-rock', 346, '37.47020', '-88.16550'), ('Elizabethtown', 348, '37.45080', '-88.30430'), ('Gross', 348, '37.53300', '-88.29050'), ('Karbers Ridge', 348, '37.57970', '-88.33330'), ('Rosiclare', 1213, '37.42240', '-88.35070')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ092': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Cairo', 3632, '36.99760', '-89.17760'), ('East Cape Girardea', 437, '37.29020', '-89.48300'), ('Tamms', 724, '37.23920', '-89.26760'), ('Thebes', 478, '37.21080', '-89.45320')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ093': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Karnak', 619, '37.29400', '-88.97600'), ('Mound City', 692, '37.08560', '-89.16300'), ('Mounds', 1117, '37.11480', '-89.20120'), ('New Grand Chain', 233, '37.25320', '-89.01710'), ('Olmsted', 299, '37.18150', '-89.08380'), ('Pulaski', 274, '37.21600', '-89.20700'), ('Ullin', 779, '37.28160', '-89.18380')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ094': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Brookport', 1054, '37.12500', '-88.62720'), ('Joppa', 409, '37.20580', '-88.84430'), ('Metropolis', 6482, '37.15220', '-88.71200')], 'partOfState': 'southern', 'wfo': 'PAH'}, +'ILZ095': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Adams', 1066, '39.86540', '-91.19830'), ('Beverly', 265, '39.79340', '-90.99100'), ('Burton', 1066, '39.90460', '-91.25120'), ('Camp Point', 1244, '40.03800', '-91.06660'), ('Chatton', 60, '40.15090', '-91.03290'), ('Clayton', 904, '40.03030', '-90.95800'), ('Coatsburg', 226, '40.03230', '-91.15940'), ('Columbus', 112, '39.98810', '-91.14650'), ('Fall Creek', 1066, '39.77900', '-91.30220'), ('Fowler', 883, '40.00780', '-91.25840'), ('Golden', 629, '40.10970', '-91.01840'), ('Kellerville', 127, '39.93120', '-90.93450'), ('Kingston', 519, '39.81670', '-91.02880'), ('La Prairie', 60, '40.14710', '-91.00270'), ('Liberty', 519, '39.88080', '-91.10800'), ('Lima', 159, '40.17670', '-91.37500'), ('Loraine', 363, '40.15320', '-91.22220'), ('Marblehead', 40366, '39.83980', '-91.36850'), ('Mendon', 883, '40.08910', '-91.28430'), ('Meyer', 2623, '40.14810', '-91.49650'), ('Paloma', 226, '40.02290', '-91.19520'), ('Payson', 1066, '39.81680', '-91.24410'), ('Plainville', 248, '39.78400', '-91.18160'), ('Quincy', 40366, '39.93350', '-91.38860'), ('Richfield', 519, '39.81540', '-91.11650'), ('Ursa', 595, '40.07460', '-91.37060'), ('Woodville', 363, '40.18840', '-91.18290')], 'partOfState': 'west central', 'wfo': 'LSX'}, +'ILZ096': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Buckhorn', 127, '39.93300', '-90.83300'), ('Coopertown', 103, '39.96400', '-90.60650'), ('La Grange', 1041, '39.94180', '-90.53810'), ('Mound Station', 127, '40.00670', '-90.87310'), ('Mount Sterling', 2070, '39.98470', '-90.76370'), ('Ripley', 103, '40.02500', '-90.63770'), ('Versailles', 567, '39.88380', '-90.65890')], 'partOfState': 'west central', 'wfo': 'LSX'}, +'ILZ097': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Atlas', 89, '39.51700', '-90.96700'), ('Barry', 1368, '39.69560', '-91.03970'), ('Baylis', 265, '39.72900', '-90.90920'), ('Bedford', 274, '39.52920', '-90.59600'), ('Beecreek', 187, '39.40030', '-90.63590'), ('Chambersburg', 567, '39.81730', '-90.65730'), ('Detroit', 93, '39.61980', '-90.67630'), ('El Dara', 89, '39.62210', '-90.99110'), ('Fishhook', 265, '39.80570', '-90.88540'), ('Florence', 71, '39.62820', '-90.61020'), ('Griggsville', 1258, '39.70790', '-90.72700'), ('Hull', 474, '39.70910', '-91.20500'), ('Independence', 29, '39.53150', '-90.79150'), ('Kinderhook', 249, '39.70490', '-91.15470'), ('Martinsburg', 1047, '39.51590', '-90.84260'), ('Milton', 274, '39.56420', '-90.64980'), ('Montezuma', 274, '39.55120', '-90.58320'), ('Nebo', 408, '39.44140', '-90.79030'), ('New Canton', 417, '39.63820', '-91.09780'), ('New Hartford', 89, '39.57570', '-90.91010'), ('New Salem', 136, '39.70800', '-90.84740'), ('Pearl', 187, '39.45860', '-90.62430'), ('Perry', 437, '39.78240', '-90.74720'), ('Pike', 3967, '39.45970', '-91.03500'), ('Pittsfield', 4211, '39.61070', '-90.80930'), ('Pleasant Hill', 1047, '39.44460', '-90.87290'), ('Rockport', 89, '39.53900', '-91.00870'), ('Seehorn', 1066, '39.75530', '-91.26120'), ('Summer Hill', 89, '39.54640', '-90.91930'), ('Time', 29, '39.56110', '-90.72280'), ('Valley City', 14, '39.70890', '-90.64910')], 'partOfState': 'west central', 'wfo': 'LSX'}, +'ILZ098': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Batchtown', 218, '39.03290', '-90.65400'), ('Beechville', 218, '38.97150', '-90.64760'), ('Belleview', 408, '39.35090', '-90.78120'), ('Brussels', 141, '38.95100', '-90.58880'), ('Deer Plain', 141, '38.92980', '-90.53280'), ('Golden Eagle', 141, '38.89230', '-90.57940'), ('Hamburg', 126, '39.23280', '-90.71560'), ('Hardin', 959, '39.15740', '-90.62310'), ('Kampsville', 302, '39.30970', '-90.62520'), ('Meppen', 141, '38.99570', '-90.60680'), ('Michael', 302, '39.23520', '-90.62210'), ('Mozier', 126, '39.29250', '-90.75150')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILZ099': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Delhi', 16286, '39.04530', '-90.25500'), ('Elsah', 635, '38.95370', '-90.35460'), ('Fidelity', 105, '39.15460', '-90.16350'), ('Fieldon', 271, '39.10810', '-90.49990'), ('Grafton', 609, '38.97250', '-90.42700'), ('Jerseyville', 7984, '39.11950', '-90.32800'), ('Kemper', 501, '39.21700', '-90.16700'), ('McClusky', 7984, '39.04340', '-90.32040'), ('Nutwood', 271, '39.08480', '-90.55590'), ('Otterville', 120, '39.05100', '-90.39750')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILZ100': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Alhambra', 630, '38.88760', '-89.73500'), ('Alton', 30496, '38.90400', '-90.15400'), ('Bethalto', 9454, '38.90080', '-90.04690'), ('Carpenter', 570, '38.89210', '-89.89440'), ('Collinsville', 24707, '38.67840', '-89.99730'), ('Dorsey', 1801, '38.97380', '-89.99840'), ('Edwardsville', 21491, '38.79640', '-89.96500'), ('Fosterburg', 9454, '38.97180', '-90.07500'), ('Fruit', 570, '38.83090', '-89.86260'), ('Glen Carbon', 10425, '38.76050', '-89.97300'), ('Godfrey', 16286, '38.96670', '-90.18830'), ('Granite City', 31301, '38.71440', '-90.12970'), ('Grantfork', 254, '38.83090', '-89.66780'), ('Hamel', 570, '38.88860', '-89.84270'), ('Hartford', 1545, '38.82800', '-90.09180'), ('Highland', 8438, '38.74100', '-89.67580'), ('Kaufman', 630, '38.86260', '-89.77730'), ('Kuhn', 8524, '38.78200', '-89.87650'), ('Livingston', 825, '38.96780', '-89.76390'), ('Madison', 4545, '38.67670', '-90.15030'), ('Marine', 910, '38.78580', '-89.77900'), ('Maryville', 4651, '38.72640', '-89.96470'), ('Mitchell', 5620, '38.76880', '-90.08130'), ('New Douglas', 369, '38.97000', '-89.66590'), ('Poag', 1961, '38.79400', '-90.03820'), ('Pontoon Beach', 5620, '38.72650', '-90.05110'), ('Prairietown', 1801, '38.96650', '-89.92200'), ('Roxana', 1547, '38.83660', '-90.05260'), ('St. Jacob', 801, '38.71690', '-89.76860'), ('Troy', 8524, '38.73120', '-89.89380'), ('Venice', 2528, '38.67200', '-90.16870'), ('Williamson', 251, '38.98740', '-89.76390'), ('Wood River', 11296, '38.86210', '-90.08480'), ('Worden', 905, '38.93220', '-89.83850')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILZ101': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Barr', 2794, '38.40470', '-90.10430'), ('Belleville', 41410, '38.53000', '-90.00320'), ('Brooklyn', 676, '38.65160', '-90.16740'), ('Cahokia', 16391, '38.56480', '-90.17760'), ('Caseyville', 4310, '38.63300', '-90.03270'), ('Centreville', 5951, '38.57720', '-90.10160'), ('Dupo', 3933, '38.51750', '-90.20960'), ('East Carondelet', 267, '38.53860', '-90.23700'), ('East St. Louis', 31542, '38.61460', '-90.13100'), ('Fairmont City', 2436, '38.65100', '-90.10150'), ('Fairview Heights', 15034, '38.59670', '-90.00490'), ('Fayetteville', 384, '38.37790', '-89.79610'), ('Floraville', 2248, '38.37580', '-90.05630'), ('Freeburg', 3872, '38.42780', '-89.90810'), ('Lebanon', 3523, '38.60310', '-89.81500'), ('Lenzburg', 577, '38.28520', '-89.81870'), ('Marissa', 2141, '38.25500', '-89.75370'), ('Mascoutah', 5659, '38.50910', '-89.80540'), ('Millstadt', 2794, '38.45940', '-90.09310'), ('New Athens', 1981, '38.31900', '-89.87740'), ("O'fallon", 21910, '38.59200', '-89.91330'), ('Paderborn', 2248, '38.35910', '-90.04230'), ('Sauget', 249, '38.58940', '-90.16970'), ('Scott AFB', 2707, '38.54420', '-89.85040'), ('Shiloh', 7643, '38.55350', '-89.90520'), ('Smithton', 2248, '38.40820', '-89.99020'), ('St. Libory', 58, '38.36450', '-89.71400'), ('Summerfield', 472, '38.59570', '-89.74730'), ('Swansea', 10579, '38.54210', '-89.98860'), ('Washington Park', 5345, '38.62990', '-90.09220')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'ILZ102': {'fullStateName': 'Illinois', 'state': 'IL', 'cities': [('Ames', 260, '38.14520', '-90.05700'), ('Burksville', 7614, '38.26730', '-90.15460'), ('Chalfin Bridge', 148, '38.21200', '-90.27060'), ('Columbia', 7922, '38.45520', '-90.22620'), ('Foster Pond', 608, '38.31380', '-90.23370'), ('Fountain', 608, '38.35930', '-90.29090'), ('Fults', 28, '38.16370', '-90.21260'), ('Harrisonville', 2263, '38.27640', '-90.35050'), ('Hecker', 475, '38.30450', '-89.99400'), ('Kidd', 28, '38.11730', '-90.17290'), ('Madonnaville', 148, '38.26390', '-90.24710'), ('Maeystown', 148, '38.22650', '-90.23160'), ('Monroe City', 148, '38.25470', '-90.26770'), ('New Design', 7614, '38.26820', '-90.11840'), ('New Handover', 7922, '38.39050', '-90.22510'), ('Renault', 28, '38.15360', '-90.13400'), ('Valmeyer', 608, '38.30410', '-90.31300'), ('Wartburg', 7614, '38.28990', '-90.19610'), ('Waterloo', 7614, '38.33160', '-90.15560')], 'partOfState': 'southwest', 'wfo': 'LSX'}, +'INZ001': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Cedar Lake', 9279, '41.37330', '-87.43620'), ('Crown Point', 19806, '41.42420', '-87.35770'), ('Dyer', 13895, '41.50340', '-87.50520'), ('East Chicago', 32414, '41.64870', '-87.45190'), ('Gary', 102746, '41.59580', '-87.34410'), ('Griffith', 17334, '41.52240', '-87.42370'), ('Hammond', 83048, '41.62100', '-87.49040'), ('Highland', 23546, '41.54910', '-87.45770'), ('Hobart', 25363, '41.53160', '-87.26730'), ('Lake Dalecarlia', 1285, '41.33910', '-87.40330'), ('Lakes Of The Four Seasons', 7291, '41.40860', '-87.22300'), ('Lake Station', 13948, '41.57280', '-87.26140'), ('Lowell', 7505, '41.29470', '-87.41320'), ('Merrillville', 30560, '41.47160', '-87.32580'), ('Munster', 21511, '41.54670', '-87.50390'), ('New Chicago', 2063, '41.55870', '-87.27220'), ('Schererville', 24851, '41.48920', '-87.44820'), ('Schneider', 317, '41.19190', '-87.44770'), ('St. John', 8382, '41.44700', '-87.47580'), ('Whiting', 5137, '41.67820', '-87.48670')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INZ002': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Beverly Shores', 708, '41.68550', '-86.97880'), ('Burns Harbor', 766, '41.61400', '-87.12550'), ('Chesterton', 10488, '41.60090', '-87.05700'), ('Dune Acres', 213, '41.64370', '-87.10330'), ('Hebron', 3596, '41.32240', '-87.20280'), ('Kouts', 1698, '41.31690', '-87.02640'), ('Kvpz', 27428, '41.45000', '-87.00000'), ('Ogden Dunes', 1313, '41.62280', '-87.19350'), ('Portage', 33496, '41.58670', '-87.18150'), ('Porter', 4972, '41.62730', '-87.08190'), ('South Haven', 5619, '41.54360', '-87.13390'), ('Town Of Pines', 798, '41.68860', '-86.95170'), ('Valparaiso', 27428, '41.47730', '-87.05100')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INZ003': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Byron', 0, '41.65600', '-86.62500'), ('Fish Lake', 0, '41.56700', '-86.55200'), ('Hanna', 0, '41.41200', '-86.78000'), ('Haskell', 0, '41.48400', '-86.90200'), ('Hesston', 0, '41.75300', '-86.66000'), ('Hudson Lake', 0, '41.71000', '-86.53400'), ('Kingsbury', 229, '41.53120', '-86.69560'), ('Kingsford Heights', 1453, '41.48000', '-86.69130'), ('La Crosse', 561, '41.31790', '-86.88980'), ('La Porte', 21621, '41.60750', '-86.71480'), ('Long Beach', 1559, '41.74660', '-86.85210'), ('Michiana Shores', 330, '41.75630', '-86.81840'), ('Michigan City', 32900, '41.71260', '-86.87600'), ('Otis', 0, '41.59900', '-86.90600'), ('Pinhook', 0, '41.56400', '-86.85600'), ('Pinola', 0, '41.59900', '-86.79800'), ('Pottawattomie Park', 300, '41.72250', '-86.86700'), ('Rolling Prarie', 0, '41.67100', '-86.61600'), ('Salem Heights', 0, '41.47500', '-86.62200'), ('South Center', 0, '41.47600', '-86.64000'), ('South Wanatah', 0, '41.40600', '-86.89900'), ('Springville', 0, '41.68500', '-86.73700'), ('Stillwell', 0, '41.55600', '-86.60300'), ('Thomaston', 0, '41.37800', '-86.81400'), ('Tracy', 0, '41.48500', '-86.68300'), ('Trail Creek', 2296, '41.69640', '-86.85620'), ('Union Mills', 0, '41.49300', '-86.77800'), ('Wanatah', 1013, '41.43080', '-86.88860'), ('Waterford', 0, '41.67100', '-86.84500'), ('Westville', 2116, '41.53960', '-86.90610')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INZ004': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Chain-O-lakes', 0, '41.70800', '-86.38000'), ('Crumstown', 0, '41.62400', '-86.40800'), ('Georgetown', 4497, '41.72940', '-86.22830'), ('Granger', 28284, '41.73550', '-86.13950'), ('Gulivoire Park', 2974, '41.61320', '-86.24520'), ('Indian Village', 144, '41.71450', '-86.23190'), ('Lakeville', 567, '41.52580', '-86.27450'), ('Lydick', 0, '41.69300', '-86.38000'), ('Mishawaka', 46557, '41.66920', '-86.16850'), ('New Carlisle', 1505, '41.70440', '-86.51090'), ('North Liberty', 1402, '41.53300', '-86.43040'), ('Osceola', 1859, '41.66510', '-86.07850'), ('Roseland', 1809, '41.71670', '-86.25160'), ('South Bend', 107789, '41.67530', '-86.26570'), ('Walkerton', 2274, '41.46400', '-86.48230'), ('Woodland', 0, '41.56400', '-86.17700'), ('Wyatt', 0, '41.52600', '-86.16900')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ005': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Benton', 0, '41.50900', '-85.76100'), ('Bristol', 1382, '41.72100', '-85.81940'), ('Dunlap', 5887, '41.63550', '-85.91940'), ('Elkhart', 51874, '41.68680', '-85.96880'), ('Foraker', 0, '41.51600', '-85.92400'), ('Goshen', 29383, '41.57850', '-85.83510'), ('Gravelton', 0, '41.43600', '-85.92400'), ('Jimtown', 0, '41.63600', '-86.02300'), ('Locke', 0, '41.47200', '-86.01200'), ('Middlebury', 2956, '41.67310', '-85.70960'), ('Millersburg', 868, '41.52630', '-85.69560'), ('Nappanee', 6710, '41.44600', '-85.98460'), ('New Paris', 1006, '41.50480', '-85.82650'), ('Simonton Lake', 4053, '41.74770', '-85.96850'), ('Southwest', 0, '41.53700', '-85.94400'), ('Wakarusa', 1618, '41.53450', '-86.01270'), ('Waterford Mills', 0, '41.54300', '-85.83100')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ006': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Adams Lake', 0, '41.55400', '-85.32900'), ('Big Long Lake', 0, '41.56000', '-85.24000'), ('Brighton', 0, '41.72200', '-85.31100'), ('Brushy Prairie', 0, '41.64200', '-85.24700'), ('Eddy', 0, '41.53600', '-85.43800'), ('Elmira', 0, '41.59200', '-85.20400'), ('Emma', 0, '41.61100', '-85.54100'), ('Honeyville', 0, '41.58200', '-85.60200'), ('Howe', 0, '41.72100', '-85.42000'), ('Indianola', 0, '41.56500', '-85.24700'), ('Lagrange', 2919, '41.64340', '-85.41720'), ('Mongo', 0, '41.68500', '-85.23000'), ('Oliver Lake', 0, '41.57200', '-85.40400'), ('Ontario', 0, '41.70200', '-85.38200'), ('Plato', 0, '41.64200', '-85.33200'), ('Scott', 0, '41.73400', '-85.55700'), ('Shipshewana', 536, '41.67490', '-85.57930'), ('Stroh', 0, '41.58100', '-85.19900'), ('Topeka', 1159, '41.53860', '-85.54220'), ('Woodruff', 0, '41.57300', '-85.32900')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ007': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alvarado', 0, '41.57700', '-84.83800'), ('Angola', 7344, '41.64290', '-85.00010'), ('Berlien', 0, '41.63700', '-84.87700'), ('Big Turkey Lake', 0, '41.58700', '-85.18900'), ('Clear Lake', 244, '41.73580', '-84.83830'), ('Crooked Lake', 0, '41.68000', '-85.03700'), ('Flint', 0, '41.69000', '-85.12500'), ('Fremont', 1696, '41.73110', '-84.93370'), ('Golden Lake', 0, '41.60400', '-85.06500'), ('Hamilton', 1233, '41.53230', '-84.91750'), ('Hamilton Lake', 0, '41.55100', '-84.91700'), ('Helmer', 0, '41.53100', '-85.17000'), ('Hudson', 0, '41.53300', '-85.08100'), ('Lake Gauge', 0, '41.70300', '-85.11200'), ('Lake James', 0, '41.70500', '-85.04800'), ('Long Lake', 0, '41.58200', '-85.02700'), ('Metz', 0, '41.61600', '-84.83900'), ('Nevada Mills', 0, '41.72700', '-85.08200'), ('Orland', 341, '41.73100', '-85.17110'), ('Pleasant Lake', 0, '41.57500', '-85.01600'), ('Salem Center', 0, '41.58500', '-85.14000'), ('Silver Lake', 0, '41.62888', '-85.06373'), ('Steubenville', 0, '41.53200', '-85.02234'), ('York', 0, '41.68800', '-84.82200')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ008': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Albion', 2284, '41.39520', '-85.41970'), ('Ari', 0, '41.26400', '-85.24900'), ('Avilla', 2049, '41.36500', '-85.23810'), ('Bear Lake', 0, '41.32200', '-85.51800'), ('Big Lake', 0, '41.27700', '-85.50000'), ('Brimfield', 0, '41.45400', '-85.39800'), ('Cosperville', 0, '41.48100', '-85.47400'), ('Cromwell', 452, '41.40350', '-85.61440'), ('Ege', 0, '41.29300', '-85.28800'), ('Green Center', 0, '41.30800', '-85.36600'), ('Kendallville', 9616, '41.44340', '-85.25810'), ('Kimmel', 0, '41.39500', '-85.54800'), ('Knapp Lake', 0, '41.34300', '-85.60800'), ('Laotto', 0, '41.29000', '-85.19800'), ('Ligonier', 4357, '41.46410', '-85.59470'), ('Lisbon', 0, '41.41100', '-85.25900'), ('Merriam', 0, '41.28700', '-85.43400'), ('Rome City', 1615, '41.48830', '-85.35580'), ('Swan', 0, '41.31600', '-85.21200'), ('Wilmot', 0, '41.31000', '-85.64200'), ('Wolcottville', 0, '41.52467', '-85.36606'), ('Wolflake', 0, '41.33500', '-85.49600')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ009': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Altona', 198, '41.35090', '-85.15280'), ('Artic', 0, '41.47400', '-84.81500'), ('Ashley', 0, '41.52700', '-85.06600'), ('Auburn', 12074, '41.36330', '-85.05760'), ('Butler', 2725, '41.42920', '-84.87060'), ('Butler Center', 0, '41.30800', '-85.13700'), ('Concord', 0, '41.32600', '-84.94500'), ('Corunna', 254, '41.43570', '-85.14420'), ('Fairfield Center', 0, '41.48300', '-85.12800'), ('Garrett', 5803, '41.34990', '-85.12770'), ('Moore', 0, '41.40000', '-84.95200'), ('Newville', 0, '41.34900', '-84.84500'), ('Saint Joe', 478, '41.31480', '-84.90350'), ('Saint Johns', 0, '41.30900', '-85.11400'), ('Sedan', 0, '41.43600', '-85.10000'), ('Spencerville', 0, '41.28300', '-84.92200'), ('Waterloo', 2200, '41.43340', '-85.02660')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ010': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brook', 1062, '40.86600', '-87.36580'), ('Goodland', 1096, '40.76430', '-87.29490'), ('Kentland', 1822, '40.77280', '-87.44600'), ('Morocco', 1127, '40.94560', '-87.45270'), ('Mount Ayr', 147, '40.95150', '-87.29830')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INZ011': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Collegeville', 865, '40.90810', '-87.16390'), ('De Motte', 3234, '41.19970', '-87.19920'), ('Remington', 1323, '40.76270', '-87.15170'), ('Rensselaer', 5294, '40.93550', '-87.14920'), ('Wheatfield', 772, '41.19130', '-87.05250')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INZ012': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bass Lake', 0, '41.20700', '-86.60200'), ('Brems', 0, '41.33900', '-86.69800'), ('English Lake', 0, '41.26600', '-86.82400'), ('Grovertown', 0, '41.37500', '-86.50500'), ('Hamlet', 820, '41.37850', '-86.58320'), ('Knox', 3721, '41.29190', '-86.62130'), ('Koontz Lake', 1554, '41.41820', '-86.48410'), ('Lomax', 0, '41.25900', '-86.87200'), ('North Judson', 1675, '41.21700', '-86.77590'), ('Oak Grove', 0, '41.28800', '-86.48600'), ('Ober', 0, '41.27100', '-86.52400'), ('Ora', 0, '41.17400', '-86.55300'), ('San Pierre', 0, '41.19936', '-86.89200'), ('Toto', 0, '41.25900', '-86.69800'), ('Winona', 0, '41.23600', '-86.56900')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INZ013': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Beardstown', 0, '41.13800', '-86.60200'), ('Clarks', 0, '41.13300', '-86.89000'), ('Denham', 0, '41.15200', '-86.71400'), ('Francesville', 905, '40.98580', '-86.88390'), ('Lakeside', 0, '40.93400', '-86.73800'), ('Lawton', 0, '41.01000', '-86.52500'), ('Medaryville', 565, '41.08030', '-86.89000'), ('Monterey', 231, '41.15620', '-86.48170'), ('Pulaski', 0, '40.97500', '-86.65800'), ('Ripley', 0, '41.10000', '-86.66000'), ('Star City', 0, '40.97200', '-86.55600'), ('Thornhope', 0, '40.92600', '-86.53000'), ('Vanmeter Park', 0, '41.08600', '-86.56800'), ('Winamac', 2418, '41.05290', '-86.60330')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INZ014': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Argos', 1613, '41.23770', '-86.24770'), ('Bourbon', 1691, '41.29780', '-86.11690'), ('Bremen', 4486, '41.44700', '-86.15440'), ('Burr Oak', 0, '41.25600', '-86.41500'), ('Culver', 1539, '41.21790', '-86.42250'), ('Donaldson', 0, '41.36100', '-86.44400'), ('Hibbard', 0, '41.25300', '-86.38700'), ('Inwood', 0, '41.31800', '-86.20300'), ('Lake Of The Woods', 0, '41.42300', '-86.23500'), ('La Paz', 489, '41.45940', '-86.31000'), ('Linkville', 0, '41.41600', '-86.28700'), ('Maxinkuckee', 0, '41.20800', '-86.38100'), ('Old Tip Town', 0, '41.22400', '-86.11500'), ('Plymouth', 9840, '41.34700', '-86.31450'), ('Rutland', 0, '41.24400', '-86.35700'), ('Teegarden', 0, '41.46500', '-86.37800'), ('Tippecanoe', 0, '41.20900', '-86.11500'), ('Twin Lakes', 0, '41.30400', '-86.35700'), ('Tyner', 0, '41.41000', '-86.40300'), ('Walnut', 0, '41.17600', '-86.21200')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ015': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Akron', 1076, '41.03880', '-86.02480'), ('Athens', 0, '41.05400', '-86.12500'), ('Bruce Lake Station', 0, '41.07000', '-86.41500'), ('Delong', 0, '41.13800', '-86.41600'), ('Fletcher', 0, '40.91200', '-86.33300'), ('Fulton', 326, '40.94650', '-86.26400'), ('Grass Creek', 0, '40.94800', '-86.40400'), ('Kewanna', 614, '41.01910', '-86.41270'), ('Lake Bruce', 0, '41.07000', '-86.46400'), ('Lake Manitou', 0, '41.05400', '-86.18300'), ('Leiters Ford', 0, '41.12200', '-86.38600'), ('Marshtown', 0, '40.94500', '-86.33900'), ('Nyena Lake', 0, '40.96500', '-86.18500'), ('Rochester', 6414, '41.06150', '-86.19550'), ('Talma', 0, '41.15301', '-86.13455'), ('Tiosa', 0, '41.15300', '-86.20600')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ016': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Atwood', 0, '41.26100', '-85.97500'), ('Beaver Dam', 0, '41.08600', '-86.01300'), ('Beaver Dam Lake', 0, '41.09300', '-85.97500'), ('Big Barbee Lake', 0, '41.28500', '-85.70400'), ('Burket', 195, '41.15440', '-85.96920'), ('Claypool', 311, '41.12780', '-85.87970'), ('Clunette', 0, '41.32000', '-85.92300'), ('Dewart Lake', 0, '41.37500', '-85.77700'), ('Etna Green', 663, '41.27810', '-86.04630'), ('Hastings', 0, '41.38400', '-85.92900'), ('Hoffman Lake', 0, '41.27200', '-85.98700'), ('Irish Lake', 0, '41.29500', '-85.73500'), ('James Lake', 0, '41.31900', '-85.72600'), ('Lake Wawasee', 0, '41.40100', '-85.70200'), ('Leesburg', 625, '41.32950', '-85.84860'), ('Mentone', 898, '41.17380', '-86.03690'), ('Milford', 1550, '41.41040', '-85.84830'), ('Monoquet', 0, '41.28900', '-85.86200'), ('North Webster', 1067, '41.32530', '-85.69720'), ('Oakwood Park', 0, '41.41100', '-85.73800'), ('Oswego', 0, '41.32000', '-85.78700'), ('Packerton', 0, '41.11600', '-85.79700'), ('Palestine', 0, '41.17800', '-85.95000'), ('Pierceton', 695, '41.19960', '-85.70760'), ('Ridinger Lake', 0, '41.26100', '-85.66700'), ('Sechrist Lake', 0, '41.29700', '-85.71800'), ('Sevastopol', 0, '41.12900', '-86.01900'), ('Sidney', 168, '41.10500', '-85.74290'), ('Silver Lake', 546, '41.07240', '-85.89170'), ('Syracuse', 3038, '41.42320', '-85.74900'), ('Tippecanoe Lake', 0, '41.32700', '-85.75900'), ('Warsaw', 12415, '41.23960', '-85.84760'), ('Winona Lake', 3987, '41.21860', '-85.81530'), ('Wooster', 0, '41.20900', '-85.74300')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ017': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Blue Lake', 0, '41.23900', '-85.36200'), ('Churubusco', 1666, '41.23240', '-85.32140'), ('Coesse', 0, '41.12800', '-85.39500'), ('Collamer', 0, '41.07600', '-85.66500'), ('Collins', 0, '41.19800', '-85.38700'), ('Columbia City', 7077, '41.15860', '-85.48480'), ('Etna', 0, '41.27400', '-85.57400'), ('Goose Lake', 0, '41.24000', '-85.55300'), ('Larwill', 282, '41.17890', '-85.62440'), ('Laud', 0, '41.05000', '-85.45200'), ('Loon Lake', 0, '41.27300', '-85.53900'), ('Lorane', 0, '41.20700', '-85.55800'), ('Ormas', 0, '41.29500', '-85.54600'), ('Peabody', 0, '41.08600', '-85.48900'), ('Raber', 0, '41.08600', '-85.43300'), ('South Whitley', 1782, '41.08570', '-85.62860'), ('Tri-Lakes', 3925, '41.22100', '-85.48420'), ('Tunker', 0, '41.04900', '-85.55700'), ('Washington Center', 0, '41.04800', '-85.50900')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ018': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Aboite', 0, '41.00000', '-85.31800'), ('Arcola', 0, '41.10400', '-85.29400'), ('Cuba', 0, '41.18600', '-84.93900'), ('Dixon', 0, '40.95100', '-84.80400'), ('Dunfee', 0, '41.08700', '-85.33700'), ('Edgerton', 0, '41.07700', '-84.80600'), ('Fort Wayne', 205727, '41.07370', '-85.13900'), ('Georgetown', 0, '41.23200', '-84.86700'), ('Grabill', 1113, '41.21070', '-84.96790'), ('Harlan', 0, '41.19600', '-84.92000'), ('Hessen Cassel', 0, '40.97800', '-85.07900'), ('Hoagland', 0, '40.94800', '-84.99000'), ('Huntertown', 1771, '41.23130', '-85.16980'), ('Lake Everett', 0, '41.15500', '-85.31400'), ('Leo-Cedarville', 0, '41.21300', '-85.01700'), ('Maples', 0, '41.01300', '-84.96900'), ('Middletown', 0, '40.94300', '-85.04900'), ('Monroeville', 1236, '40.97220', '-84.86760'), ('New Haven', 12406, '41.06900', '-85.02510'), ('Nine Mile', 0, '40.97500', '-85.22500'), ('Poe', 0, '40.93600', '-85.08700'), ('Roanoke', 1495, '40.91911', '-85.28235'), ('Rolling Hills', 0, '41.02700', '-85.26800'), ('Tillman', 0, '41.02400', '-84.89300'), ('Townley', 0, '41.01800', '-84.86400'), ('Wallen', 0, '41.16100', '-85.16600'), ('Woodburn', 1579, '41.12600', '-84.85280'), ('Yoder', 0, '40.93100', '-85.17700'), ('Zanesville', 602, '40.91771', '-85.28015'), ('Zulu', 0, '41.03700', '-84.89200')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ019': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Ambia', 197, '40.48880', '-87.51620'), ('Boswell', 827, '40.51900', '-87.38260'), ('Earl Park', 485, '40.68580', '-87.42040'), ('Fowler', 2415, '40.61720', '-87.31700'), ('Otterbein', 1312, '40.48830', '-87.11000'), ('Oxford', 1271, '40.52140', '-87.24850')], 'partOfState': 'northwest', 'wfo': 'LOT'}, +'INZ020': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Badger Grove', 0, '40.58400', '-86.96400'), ('Bell Center', 0, '40.86900', '-86.63900'), ('Brookston', 1717, '40.60020', '-86.86580'), ('Buffalo', 0, '40.88300', '-86.74500'), ('Burnettsville', 373, '40.76150', '-86.59480'), ('Chalmers', 513, '40.66250', '-86.86760'), ('Headlee', 0, '40.89700', '-86.65800'), ('Idaville', 0, '40.75700', '-86.64900'), ('Indiana Beach', 0, '40.79100', '-86.76800'), ('Lee', 0, '40.89600', '-86.96800'), ('Monon', 1733, '40.86360', '-86.87870'), ('Monticello', 5723, '40.74670', '-86.76390'), ('Norway', 0, '40.77800', '-86.75900'), ('Reynolds', 547, '40.74870', '-86.87370'), ('Sitka', 0, '40.82600', '-86.73500'), ('Smithson', 0, '40.71800', '-86.87300'), ('Wolcott', 989, '40.75820', '-87.04330')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'INZ021': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Burlington', 444, '40.48130', '-86.39450'), ('Camden', 582, '40.61020', '-86.53870'), ('Delphi', 3015, '40.58460', '-86.67030'), ('Flora', 2227, '40.54490', '-86.52340'), ('Yeoman', 96, '40.66710', '-86.72340')], 'partOfState': 'north central', 'wfo': 'IND'}, +'INZ022': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Adamsboro', 0, '40.78400', '-86.26700'), ('Anoka', 0, '40.72200', '-86.28200'), ('Clymers', 0, '40.70800', '-86.44900'), ('Deacon', 0, '40.63400', '-86.31700'), ('Galveston', 0, '40.57900', '-86.19000'), ('Georgetown', 0, '40.74100', '-86.50500'), ('Hoover', 0, '40.80900', '-86.20100'), ('Lake Cicott', 0, '40.76400', '-86.52400'), ('Leases Corner', 0, '40.86600', '-86.37400'), ('Lincoln', 0, '40.61600', '-86.21000'), ('Logansport', 19684, '40.75370', '-86.35740'), ('Lucerne', 0, '40.86600', '-86.40300'), ('Metea', 0, '40.86900', '-86.30900'), ('New Waverly', 0, '40.76400', '-86.19200'), ('Onward', 81, '40.69400', '-86.19540'), ('Royal Center', 832, '40.86460', '-86.50050'), ('Twelve Mile', 0, '40.86600', '-86.22500'), ('Walton', 1069, '40.66230', '-86.24470')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ023': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Amboy', 360, '40.60160', '-85.92740'), ('Bennetts Switch', 0, '40.58500', '-86.11300'), ('Bunker Hill', 987, '40.66040', '-86.10180'), ('Chili', 0, '40.86000', '-86.02600'), ('Converse', 1137, '40.57990', '-85.87790'), ('Deedsville', 0, '40.91000', '-86.10100'), ('Denver', 541, '40.86420', '-86.07640'), ('Erie', 0, '40.80100', '-85.99100'), ('Flora', 0, '40.73300', '-86.01000'), ('Gilead', 0, '40.97000', '-86.01900'), ('Grissom AFB', 1652, '40.65940', '-86.14760'), ('Macy', 248, '40.95770', '-86.12890'), ('Mexico', 984, '40.81290', '-86.11090'), ('Miami', 0, '40.61400', '-86.10600'), ('Nead', 0, '40.70700', '-86.12700'), ('Peoria', 0, '40.71900', '-85.96100'), ('Peru', 12994, '40.75360', '-86.06800'), ('Santa Fe', 0, '40.65300', '-85.98600'), ('Wells', 0, '40.73200', '-86.11100')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ024': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Disko', 0, '41.00200', '-85.94400'), ('Ijamsville', 0, '40.96000', '-85.83300'), ('La Fontaine', 900, '40.67370', '-85.72170'), ('Lagro', 454, '40.83830', '-85.72840'), ('Laketon', 0, '40.97400', '-85.83400'), ('Liberty Mills', 0, '41.03400', '-85.73600'), ('Lincolnville', 0, '40.75400', '-85.67800'), ('North Manchester', 6260, '41.00490', '-85.77410'), ('Richvalley', 0, '40.78500', '-85.92000'), ('Roann', 400, '40.91120', '-85.92390'), ('Servia', 0, '40.79570', '-85.74100'), ('Somerset', 0, '40.66900', '-85.82800'), ('Speicherville', 0, '40.85400', '-85.79200'), ('Stockdale', 0, '40.91500', '-85.94400'), ('Treaty', 0, '40.72400', '-85.78200'), ('Urbana', 0, '40.89800', '-85.79300'), ('Wabash', 11743, '40.79920', '-85.82530')], 'partOfState': 'north central', 'wfo': 'IWX'}, +'INZ025': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Andrews', 1290, '40.85950', '-85.60100'), ('Banquo', 0, '40.69600', '-85.62000'), ('Bippus', 0, '40.94400', '-85.62400'), ('Bowerstown', 0, '40.88900', '-85.44200'), ('Bracken', 0, '40.98700', '-85.62400'), ('Buckeye', 0, '40.69100', '-85.35400'), ('Goblesville', 0, '40.99000', '-85.51000'), ('Huntington', 17450, '40.88070', '-85.50560'), ('Lancaster', 0, '40.74900', '-85.50700'), ('Luther', 0, '41.00300', '-85.57400'), ('Mahon', 0, '40.93900', '-85.38100'), ('Majenica', 0, '40.77000', '-85.45300'), ('Markle', 1102, '40.82640', '-85.33810'), ('Mount Etna', 110, '40.74180', '-85.56250'), ('Pleasant Plain', 0, '40.69700', '-85.54500'), ('Plum Tree', 0, '40.74200', '-85.39200'), ('Warren', 1272, '40.68670', '-85.42340')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ026': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bluffton', 9536, '40.74150', '-85.17090'), ('Craigville', 0, '40.77800', '-85.08900'), ('Curryville', 0, '40.78600', '-85.07200'), ('Dillman', 0, '40.61000', '-85.24290'), ('Domestic', 0, '40.61200', '-85.08900'), ('Keystone', 0, '40.59600', '-85.25900'), ('Kingsland', 0, '40.83000', '-85.17700'), ('Liberty Center', 0, '40.69900', '-85.28000'), ('McNatts', 0, '40.62400', '-85.39100'), ('Mount Zion', 0, '40.65000', '-85.33500'), ('Murray', 0, '40.79200', '-85.20000'), ('North Oaks', 0, '40.77700', '-85.21740'), ('Nottingham', 0, '40.58100', '-85.15000'), ('Ossian', 2943, '40.87860', '-85.16840'), ('Petroleum', 0, '40.61100', '-85.15000'), ('Poneto', 240, '40.65610', '-85.22220'), ('Reiffsburg', 0, '40.65600', '-85.15200'), ('Rockford', 0, '40.76000', '-85.31400'), ('Tocsin', 0, '40.83000', '-85.10900'), ('Travisville', 0, '40.69200', '-85.20800'), ('Uniondale', 277, '40.82840', '-85.24140'), ('Vera Cruz', 55, '40.70090', '-85.07960'), ('Wellsburg', 0, '40.66600', '-85.22200')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ027': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Berne', 4150, '40.65710', '-84.95430'), ('Ceylon', 0, '40.60700', '-84.95300'), ('Decatur', 9528, '40.83000', '-84.92820'), ('Geneva', 1368, '40.59720', '-84.95710'), ('Linn Grove', 0, '40.64500', '-85.03300'), ('Magley', 0, '40.83100', '-85.05300'), ('Monmouth', 0, '40.86800', '-84.94400'), ('Monroe', 734, '40.74450', '-84.94050'), ('Peterson', 0, '40.81300', '-85.01500'), ('Pleasant Mills', 0, '40.77800', '-84.84200'), ('Preble', 0, '40.83200', '-85.01500'), ('Rivare', 0, '40.81200', '-84.84100'), ('Salem', 0, '40.71700', '-84.85400'), ('Williams', 0, '40.91900', '-84.97500')], 'partOfState': 'northeast', 'wfo': 'IWX'}, +'INZ028': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Pine Village', 255, '40.44990', '-87.25250'), ('State Line City', 188, '40.19720', '-87.52720'), ('West Lebanon', 793, '40.27130', '-87.38340'), ('Williamsport', 1935, '40.28710', '-87.29350')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ029': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Battle Ground', 1323, '40.51000', '-86.83850'), ('Clarks Hill', 680, '40.24690', '-86.72460'), ('Dayton', 1120, '40.37760', '-86.77680'), ('Lafayette', 56397, '40.41090', '-86.87070'), ('Shadeland', 1682, '40.34450', '-86.96370'), ('West Lafayette', 28778, '40.44470', '-86.91190')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ030': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Colfax', 768, '40.19430', '-86.66720'), ('Frankfort', 16662, '40.28110', '-86.51030'), ('Kirklin', 766, '40.19300', '-86.35970'), ('Michigantown', 406, '40.32780', '-86.39100'), ('Mulberry', 1387, '40.34560', '-86.66810'), ('Rossville', 1513, '40.42110', '-86.59560')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ031': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Greentown', 2546, '40.47850', '-85.96470'), ('Indian Heights', 3274, '40.42500', '-86.11650'), ('Kokomo', 46113, '40.47550', '-86.13310'), ('Russiaville', 1092, '40.41880', '-86.27030')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ032': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Arcana', 0, '40.53900', '-85.50300'), ('Fairmount', 2992, '40.41690', '-85.64790'), ('Fowlerton', 298, '40.40960', '-85.57300'), ('Gas City', 5940, '40.48920', '-85.60770'), ('Hackleman', 0, '40.42200', '-85.74800'), ('Hanfield', 0, '40.60400', '-85.58000'), ('Herbst', 0, '40.51500', '-85.78700'), ('Home Corner', 0, '40.52400', '-85.64100'), ('Jalapa', 0, '40.62800', '-85.74600'), ('Jonesboro', 1887, '40.47930', '-85.62990'), ('Lake Wood', 0, '40.55300', '-85.56800'), ('Landess', 0, '40.61100', '-85.56100'), ('Marion', 31320, '40.54910', '-85.66700'), ('Michaelsville', 0, '40.45240', '-85.70200'), ('Mier', 0, '40.57500', '-85.82300'), ('Normal', 0, '40.46500', '-85.82500'), ('Point Isabel', 0, '40.42200', '-85.82400'), ('Radley', 0, '40.43600', '-85.73400'), ('Roseburg', 0, '40.52200', '-85.72900'), ('Sims', 0, '40.49900', '-85.85500'), ('Swayzee', 1011, '40.50680', '-85.82410'), ('Sweetser', 906, '40.56970', '-85.76700'), ('Upland', 3803, '40.46280', '-85.51330'), ('Van Buren', 935, '40.61640', '-85.50550')], 'partOfState': 'central', 'wfo': 'IWX'}, +'INZ033': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Hartford City', 6928, '40.45250', '-85.37180'), ('Mill Grove', 0, '40.40800', '-85.27500'), ('Montpelier', 1929, '40.55290', '-85.28170'), ('Roll', 0, '40.55200', '-85.39000'), ('Shamrock Lakes', 168, '40.41100', '-85.42620'), ('Trenton', 0, '40.45000', '-85.23900')], 'partOfState': 'east central', 'wfo': 'IWX'}, +'INZ034': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Balbec', 0, '40.53100', '-85.14900'), ('Bellfountain', 0, '40.43300', '-84.86400'), ('Blaine', 0, '40.40300', '-85.05600'), ('Bluff Point', 0, '40.34600', '-84.97700'), ('Boundary City', 0, '40.34400', '-84.92200'), ('Brice', 0, '40.41800', '-84.89600'), ('Bryant', 0, '40.53300', '-84.96400'), ('Center', 0, '40.44500', '-85.07700'), ('College Corner', 0, '40.41100', '-84.97700'), ('Collett', 0, '40.37500', '-85.00000'), ('Como', 0, '40.38500', '-85.08700'), ('Dunkirk', 2646, '40.37350', '-85.20790'), ('Fiat', 0, '40.55300', '-85.15000'), ('Liber', 0, '40.40800', '-84.96900'), ('New Corydon', 0, '40.56900', '-84.84000'), ('New Mount Pleasant', 0, '40.35600', '-85.06500'), ('Pennville', 706, '40.49330', '-85.14740'), ('Portland', 6437, '40.43320', '-84.98110'), ('Powers', 0, '40.32200', '-85.09200'), ('Redkey', 1427, '40.34800', '-85.15270'), ('Salamonia', 158, '40.38200', '-84.86610'), ('Trinity', 0, '40.54300', '-84.84900'), ('Westchester', 0, '40.49800', '-84.89500')], 'partOfState': 'east central', 'wfo': 'IWX'}, +'INZ035': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Attica', 3491, '40.28760', '-87.24640'), ('Covington', 2565, '40.13990', '-87.39120'), ('Hillsboro', 489, '40.10950', '-87.15710'), ('Kingman', 538, '39.96580', '-87.27830'), ('Mellott', 207, '40.16390', '-87.14920'), ('Newtown', 162, '40.20440', '-87.14790'), ('Veedersburg', 2299, '40.11270', '-87.25920'), ('Wallace', 100, '39.98780', '-87.14770')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ036': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alamo', 137, '39.98370', '-87.05510'), ('Crawfordsville', 15243, '40.04420', '-86.89660'), ('Darlington', 854, '40.10820', '-86.77650'), ('Ladoga', 1047, '39.91680', '-86.79870'), ('Linden', 700, '40.19070', '-86.90200'), ('New Market', 659, '39.95190', '-86.92210'), ('New Richmond', 349, '40.19390', '-86.97860'), ('New Ross', 334, '39.96390', '-86.71370'), ('Waveland', 416, '39.87700', '-87.04630'), ('Waynetown', 909, '40.08750', '-87.06560'), ('Wingate', 299, '40.17050', '-87.07350')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ037': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Advance', 562, '39.99520', '-86.62040'), ('Jamestown', 886, '39.92740', '-86.62840'), ('Lebanon', 14222, '40.05160', '-86.47350'), ('Thorntown', 1562, '40.12870', '-86.61010'), ('Ulen', 123, '40.06420', '-86.46340'), ('Whitestown', 471, '39.99560', '-86.34640'), ('Zionsville', 8775, '39.95240', '-86.27270')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ038': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Kempton', 380, '40.28750', '-86.23000'), ('Sharpsville', 618, '40.37990', '-86.08730'), ('Tipton', 5251, '40.28280', '-86.04030'), ('Windfall', 803, '40.36290', '-85.95750')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ039': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Arcadia', 1747, '40.17410', '-86.02130'), ('Atlanta', 761, '40.21480', '-86.02710'), ('Carmel', 37733, '39.96930', '-86.10950'), ('Cicero', 4303, '40.12470', '-86.02260'), ('Fishers', 37835, '39.95410', '-86.02360'), ('Noblesville', 28590, '40.05660', '-86.03170'), ('Sheridan', 2520, '40.13470', '-86.21890'), ('Westfield', 9293, '40.04700', '-86.13090')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ040': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alexandria', 6260, '40.25820', '-85.67620'), ('Anderson', 59734, '40.09290', '-85.68800'), ('Chesterfield', 2969, '40.11190', '-85.59280'), ('Country Club Heights', 91, '40.12540', '-85.68760'), ('Edgewood', 1988, '40.10260', '-85.73760'), ('Elwood', 9737, '40.27570', '-85.83890'), ('Frankton', 1905, '40.22050', '-85.77250'), ('Ingalls', 1168, '39.96030', '-85.79880'), ('Lapel', 1855, '40.06880', '-85.84750'), ('Markleville', 383, '39.97720', '-85.61610'), ('Orestes', 334, '40.27070', '-85.72520'), ('Pendleton', 3873, '40.00030', '-85.74220'), ('River Forest', 28, '40.10950', '-85.72940'), ('Summitville', 1090, '40.33730', '-85.64300'), ('Woodlawn Heights', 73, '40.11720', '-85.69670')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ041': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Albany', 2368, '40.30210', '-85.23360'), ('Daleville', 1658, '40.11880', '-85.55630'), ('Eaton', 1603, '40.34050', '-85.35490'), ('Gaston', 1010, '40.31350', '-85.50130'), ('Muncie', 67430, '40.19750', '-85.39060'), ('Selma', 880, '40.18840', '-85.27430'), ('Yorktown', 4785, '40.17330', '-85.47860')], 'partOfState': 'east central', 'wfo': 'IND'}, +'INZ042': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Farmland', 1456, '40.18900', '-85.12710'), ('Losantville', 280, '40.02310', '-85.18310'), ('Lynn', 1143, '40.04870', '-84.94230'), ('Modoc', 225, '40.04470', '-85.12620'), ('Parker City', 1416, '40.18960', '-85.20340'), ('Ridgeville', 843, '40.28960', '-85.02980'), ('Saratoga', 288, '40.23690', '-84.91550'), ('Union City', 3622, '40.20160', '-84.81750'), ('Winchester', 5037, '40.17190', '-84.97710')], 'partOfState': 'east central', 'wfo': 'IND'}, +'INZ043': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Cayuga', 1109, '39.94710', '-87.46480'), ('Clinton', 5126, '39.66100', '-87.40450'), ('Dana', 662, '39.80670', '-87.49420'), ('Fairview Park', 1496, '39.68180', '-87.41360'), ('Newport', 578, '39.88480', '-87.40630'), ('Perrysville', 502, '40.05350', '-87.43580'), ('Universal', 419, '39.62160', '-87.45300')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ044': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bloomingdale', 319, '39.83150', '-87.24950'), ('Judson', 53, '39.81350', '-87.13520'), ('Marshall', 360, '39.84700', '-87.18580'), ('Mecca', 355, '39.72710', '-87.33150'), ('Montezuma', 1179, '39.79100', '-87.36910'), ('Rockville', 2765, '39.76670', '-87.23090'), ('Rosedale', 750, '39.62320', '-87.28210')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ045': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bainbridge', 743, '39.76060', '-86.81100'), ('Cloverdale', 2243, '39.52130', '-86.79870'), ('Fillmore', 545, '39.67100', '-86.75360'), ('Greencastle', 9880, '39.64200', '-86.84060'), ('Roachdale', 975, '39.84880', '-86.80040'), ('Russellville', 340, '39.85710', '-86.98340')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ046': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Amo', 414, '39.68940', '-86.61410'), ('Brownsburg', 14520, '39.84160', '-86.39430'), ('Clayton', 693, '39.68940', '-86.52360'), ('Coatesville', 516, '39.68730', '-86.66920'), ('Danville', 6418, '39.76220', '-86.51980'), ('Lizton', 372, '39.88570', '-86.54250'), ('North Salem', 591, '39.85940', '-86.64450'), ('Pittsboro', 1588, '39.86730', '-86.46480'), ('Plainfield', 18396, '39.70040', '-86.38790'), ('Stilesville', 261, '39.63830', '-86.63230')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ047': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Beech Grove', 14880, '39.71500', '-86.08740'), ('Castleton', 36, '39.90480', '-86.05010'), ('Clermont', 1477, '39.81740', '-86.32040'), ('Crows Nest', 96, '39.85220', '-86.17280'), ('Cumberland', 5500, '39.78280', '-85.95240'), ('Homecroft', 751, '39.67010', '-86.13010'), ('Indianapolis', 752279, '39.77640', '-86.14620'), ('Lawrence', 38915, '39.86860', '-85.98720'), ('Meridian Hills', 1713, '39.88640', '-86.15650'), ('North Crows Nest', 42, '39.86510', '-86.16200'), ('Rocky Ripple', 712, '39.84890', '-86.17320'), ('Southport', 1852, '39.65960', '-86.11660'), ('Speedway', 12881, '39.79340', '-86.24740'), ('Spring Hill', 112, '39.83340', '-86.19270'), ('Warren Park', 1656, '39.78240', '-86.05240'), ('Williams Creek', 413, '39.90040', '-86.14990'), ('Wynnedale', 275, '39.83270', '-86.19870')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ048': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Fortville', 3444, '39.93590', '-85.84700'), ('Greenfield', 14600, '39.79280', '-85.77000'), ('McCordsville', 1134, '39.90810', '-85.93120'), ('New Palestine', 1264, '39.72110', '-85.89160'), ('Shirley', 806, '39.89050', '-85.57980'), ('Spring Lake', 262, '39.77680', '-85.85440'), ('Wilkinson', 356, '39.88480', '-85.60830')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ049': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Blountsville', 166, '40.05960', '-85.23890'), ('Cadiz', 161, '39.95050', '-85.48650'), ('Dunreith', 184, '39.80290', '-85.43690'), ('Greensboro', 174, '39.87830', '-85.46300'), ('Kennard', 455, '39.90430', '-85.51980'), ('Knightstown', 2148, '39.79570', '-85.52830'), ('Lewisville', 395, '39.80590', '-85.35320'), ('Middletown', 2488, '40.05950', '-85.54270'), ('Mooreland', 393, '39.99770', '-85.25170'), ('Mount Summit', 313, '40.00320', '-85.38670'), ('New Castle', 17780, '39.92090', '-85.36490'), ('Spiceland', 807, '39.83810', '-85.43810'), ('Springport', 174, '40.04690', '-85.39290'), ('Straughn', 263, '39.80830', '-85.29040'), ('Sulphur Springs', 346, '40.00570', '-85.44340')], 'partOfState': 'east central', 'wfo': 'IND'}, +'INZ050': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Boston', 177, '39.74150', '-84.85110'), ('Cambridge City', 2121, '39.81200', '-85.17080'), ('Centerville', 2427, '39.81720', '-84.99550'), ('Dublin', 697, '39.81240', '-85.20510'), ('East Germantown', 243, '39.81280', '-85.13670'), ('Economy', 200, '39.97740', '-85.08710'), ('Fountain City', 735, '39.95590', '-84.91790'), ('Greens Fork', 371, '39.89140', '-85.04230'), ('Hagerstown', 1768, '39.91170', '-85.15690'), ('Milton', 611, '39.78650', '-85.15620'), ('Mount Auburn', 75, '39.81290', '-85.19030'), ('Richmond', 39124, '39.82950', '-84.88540'), ('Spring Grove', 386, '39.84720', '-84.89050'), ('Whitewater', 78, '39.94430', '-84.83070')], 'partOfState': 'east central', 'wfo': 'ILN'}, +'INZ051': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('North Terre Haute', 4606, '39.53990', '-87.36020'), ('Riley', 160, '39.38980', '-87.30040'), ('Seelyville', 1182, '39.49400', '-87.26700'), ('Terre Haute', 59614, '39.47040', '-87.38350'), ('West Terre Haute', 2330, '39.46430', '-87.44900')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ052': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brazil', 8188, '39.52360', '-87.12340'), ('Carbon', 334, '39.59890', '-87.10750'), ('Center Point', 292, '39.41480', '-87.07450'), ('Clay City', 1019, '39.27700', '-87.11210'), ('Harmony', 589, '39.53400', '-87.07340'), ('Knightsville', 624, '39.52610', '-87.08980'), ('Staunton', 550, '39.48610', '-87.18940')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ053': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Gosport', 715, '39.35050', '-86.66570'), ('Spencer', 2508, '39.28710', '-86.76920')], 'partOfState': 'west central', 'wfo': 'IND'}, +'INZ054': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bethany', 94, '39.53370', '-86.37890'), ('Brooklyn', 1545, '39.54260', '-86.37150'), ('Lake Hart', 235, '39.56840', '-86.43010'), ('Martinsville', 11698, '39.42280', '-86.42170'), ('Mooresville', 9273, '39.61590', '-86.37010'), ('Morgantown', 964, '39.37390', '-86.25930'), ('Paragon', 663, '39.39490', '-86.56310')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ055': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bargersville', 2120, '39.51990', '-86.16560'), ('Edinburgh', 4505, '39.35270', '-85.96750'), ('Franklin', 19463, '39.49220', '-86.05650'), ('Greenwood', 36037, '39.61550', '-86.11380'), ('New Whiteland', 4579, '39.56210', '-86.09690'), ('Princes Lakes', 1506, '39.35070', '-86.10910'), ('Trafalgar', 798, '39.41500', '-86.14970'), ('Whiteland', 3958, '39.55030', '-86.08860')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ056': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Fairland', 1276, '39.59870', '-85.85810'), ('Morristown', 1133, '39.67230', '-85.69980'), ('Shelbyville', 17951, '39.52330', '-85.77580')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ057': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Carthage', 928, '39.73720', '-85.57160'), ('Glenwood', 318, '39.62650', '-85.30130'), ('Rushville', 5995, '39.61460', '-85.44710')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ058': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Connersville', 15411, '39.65570', '-85.14070')], 'partOfState': 'east central', 'wfo': 'ILN'}, +'INZ059': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Liberty', 2061, '39.63450', '-84.92700'), ('West College Corner', 634, '39.56960', '-84.81930')], 'partOfState': 'east central', 'wfo': 'ILN'}, +'INZ060': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Carlisle', 2660, '38.96220', '-87.40070'), ('Dugger', 955, '39.06840', '-87.26040'), ('Farmersburg', 1180, '39.25240', '-87.38040'), ('Hymera', 833, '39.18570', '-87.29890'), ('Merom', 294, '39.05690', '-87.56780'), ('Shelburn', 1268, '39.17950', '-87.39690'), ('Sullivan', 4617, '39.09690', '-87.40780')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INZ061': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bloomfield', 2542, '39.02640', '-86.93700'), ('Jasonville', 2490, '39.16250', '-87.19960'), ('Linton', 5774, '39.03600', '-87.15920'), ('Lyons', 748, '38.98810', '-87.08160'), ('Newberry', 206, '38.92370', '-87.01890'), ('Switz City', 311, '39.03470', '-87.05360'), ('Worthington', 1481, '39.11850', '-86.97980')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INZ062': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bloomington', 69291, '39.16660', '-86.52150'), ('Ellettsville', 5078, '39.23140', '-86.62210'), ('Stinesville', 194, '39.30040', '-86.64920')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INZ063': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Nashville', 825, '39.20380', '-86.23600')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INZ064': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Clifford', 291, '39.28300', '-85.86960'), ('Columbus', 39059, '39.21070', '-85.91340'), ('Elizabethtown', 391, '39.13530', '-85.81270'), ('Hartsville', 376, '39.26700', '-85.69870'), ('Hope', 2140, '39.29990', '-85.76810'), ('Jonesville', 220, '39.06000', '-85.88880'), ('Taylorsville', 936, '39.29620', '-85.94920')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ065': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Greensburg', 10260, '39.34140', '-85.48050'), ('Millhousen', 136, '39.21070', '-85.43530'), ('Newpoint', 298, '39.30890', '-85.33010'), ('St. Paul', 1022, '39.42730', '-85.62910'), ('Westport', 1515, '39.17610', '-85.57530')], 'partOfState': 'central', 'wfo': 'IND'}, +'INZ066': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brookville', 2652, '39.42360', '-85.00840'), ('Cedar Grove', 185, '39.35570', '-84.93700'), ('Laurel', 579, '39.50160', '-85.18840'), ('Oldenburg', 647, '39.33850', '-85.20300')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INZ067': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bicknell', 3378, '38.77530', '-87.30840'), ('Bruceville', 469, '38.75810', '-87.41440'), ('Decker', 283, '38.51830', '-87.52380'), ('Edwardsport', 363, '38.81240', '-87.25160'), ('Monroe City', 548, '38.61420', '-87.35350'), ('Oaktown', 633, '38.87170', '-87.44130'), ('Sandborn', 451, '38.89680', '-87.18460'), ('Vincennes', 18701, '38.67620', '-87.51110'), ('Wheatland', 504, '38.66410', '-87.30670')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INZ068': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alfordsville', 112, '38.56010', '-86.94870'), ('Cannelburg', 140, '38.66900', '-86.99790'), ('Elnora', 721, '38.87720', '-87.08490'), ('Montgomery', 368, '38.66520', '-87.04710'), ('Odon', 1376, '38.84230', '-86.98870'), ('Plainville', 513, '38.80430', '-87.15190'), ('Washington', 11380, '38.65820', '-87.17300')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INZ069': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Crane', 203, '38.89510', '-86.90040'), ('Loogootee', 2741, '38.67540', '-86.91430'), ('Shoals', 807, '38.66700', '-86.79350')], 'partOfState': 'southwest', 'wfo': 'IND'}, +'INZ070': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bedford', 13768, '38.86040', '-86.49080'), ('Mitchell', 4567, '38.73660', '-86.47550'), ('Oolitic', 1152, '38.89140', '-86.52640')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INZ071': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Brownstown', 2978, '38.88030', '-86.04610'), ('Crothersville', 1570, '38.79640', '-85.84000'), ('Medora', 565, '38.82460', '-86.17070'), ('Seymour', 18101, '38.95850', '-85.88640')], 'partOfState': 'south central', 'wfo': 'IND'}, +'INZ072': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('North Vernon', 6515, '39.00780', '-85.63120'), ('Vernon', 330, '38.98510', '-85.61110')], 'partOfState': 'southeast', 'wfo': 'IND'}, +'INZ073': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Batesville', 6033, '39.29790', '-85.21830'), ('Holton', 407, '39.07560', '-85.38460'), ('Milan', 1816, '39.12530', '-85.13070'), ('Napoleon', 238, '39.20540', '-85.32730'), ('Osgood', 1669, '39.12830', '-85.29190'), ('Sunman', 805, '39.23390', '-85.09610'), ('Versailles', 1784, '39.06430', '-85.25750')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INZ074': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Aurora', 3965, '39.06640', '-84.90330'), ('Bright', 5405, '39.21592', '-84.85779'), ('Dillsboro', 1436, '39.01860', '-85.06170'), ('Greendale', 4296, '39.11770', '-84.86020'), ('Hidden Valley', 4417, '39.16220', '-84.84310'), ('Lawrenceburg', 4685, '39.09317', '-84.85657'), ('Moores Hill', 635, '39.11340', '-85.08900'), ('St. Leon', 387, '39.29149', '-84.95749'), ('West Harrison', 284, '39.26120', '-84.82090')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INZ075': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Rising Sun', 2470, '38.95160', '-84.85710')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INZ076': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Abydel', 618, '38.57061', '-86.56110'), ('Bacon', 673, '38.41061', '-86.43332'), ('Bonds', 0, '38.68116', '-86.62944'), ('Braxtons Siding', 0, '38.55922', '-86.48804'), ('Bromer', 112, '38.59367', '-86.33582'), ('Chambersburg', 3844, '38.51811', '-86.39221'), ('Ethel', 673, '38.40367', '-86.52443'), ('Fargo', 0, '38.40006', '-86.48332'), ('French Lick', 1941, '38.54894', '-86.61999'), ('French Lick Municipal Airport', 13140, '38.50600', '-86.63700'), ('Greenbrier', 1941, '38.46311', '-86.55582'), ('Hindostan', 0, '38.66561', '-86.60444'), ('Leipsic', 107, '38.67117', '-86.36971'), ('Mahan Crossing', 0, '38.55728', '-86.36443'), ('Millersburg', 868, '38.55728', '-86.33554'), ('Orangeville', 0, '38.63144', '-86.55666'), ('Orleans', 2273, '38.66172', '-86.45166'), ('Paoli', 3844, '38.55617', '-86.46832'), ('Pine Valley', 0, '38.47645', '-86.45026'), ('Prospect', 618, '38.57811', '-86.61416'), ('Pumpkin Center', 112, '38.58950', '-86.36443'), ('Rego', 0, '38.48506', '-86.31776'), ('Roland', 618, '38.59533', '-86.68194'), ('Scarlet', 0, '38.65783', '-86.66749'), ('Stampers Creek', 0, '38.55839', '-86.38332'), ('Syria', 3844, '38.58617', '-86.40165'), ('Trotter Crossing', 0, '38.51145', '-86.36554'), ('Valeene', 829, '38.43895', '-86.39721'), ('West Baden Springs', 618, '38.56533', '-86.61110'), ('Woodlawn Grove', 0, '38.57811', '-86.45804'), ('Youngs Creek', 3844, '38.47672', '-86.49554')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ077': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Becks Mill', 6172, '38.53534', '-86.15553'), ('Blue River', 987, '38.53006', '-85.93942'), ('Bunker Hill', 987, '38.57367', '-85.89442'), ('Campbellsburg', 578, '38.65144', '-86.26109'), ('Canton', 6172, '38.62395', '-86.03470'), ('Claysville', 578, '38.62256', '-86.28943'), ('Daisy Hill', 987, '38.50617', '-85.93942'), ('Farabee', 1334, '38.55700', '-86.01581'), ('Fredericksburg', 92, '38.43312', '-86.18970'), ('Georgetown', 0, '38.64839', '-85.99831'), ('Hardinsburg', 0, '38.46089', '-86.27859'), ('Harristown', 0, '38.59784', '-86.02414'), ('Highland', 0, '38.64950', '-86.12748'), ('Hitchcock', 6172, '38.63811', '-86.16970'), ('Kossuth', 6172, '38.70450', '-86.10276'), ('Little York', 185, '38.70284', '-85.90497'), ('Livonia', 112, '38.55700', '-86.27748'), ('Martinsburg', 1334, '38.44395', '-86.02608'), ('McKinley', 565, '38.74478', '-86.21054'), ('Mount Carmel', 106, '38.71700', '-86.24943'), ('New Liberty', 987, '38.56812', '-85.86719'), ('New Pekin', 1334, '38.50506', '-86.01692'), ('New Philadelphia', 185, '38.62645', '-85.96997'), ('New Salem', 0, '38.62145', '-85.90414'), ('Organ Springs', 92, '38.47673', '-86.16470'), ('Plattsburg', 6172, '38.71950', '-86.08970'), ('Prowsville', 0, '38.68006', '-86.20165'), ('Pumpkin Center', 185, '38.70422', '-85.95053'), ('Rosebud', 0, '38.52728', '-86.21192'), ('Rush Creek Valley', 578, '38.69533', '-86.17054'), ('Salem', 0, '38.60561', '-86.10109'), ('Saltillo', 107, '38.66506', '-86.28915'), ('Shorts Corner', 0, '38.49978', '-86.10025'), ('Smedley', 578, '38.63311', '-86.21582'), ('South Boston', 1334, '38.58284', '-85.97914')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ078': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Albion', 0, '38.74367', '-85.73413'), ('Austin', 4724, '38.75839', '-85.80803'), ('Blocher', 6040, '38.71811', '-85.65663'), ('Goshen', 29383, '38.67145', '-85.70969'), ('Leota', 185, '38.64839', '-85.85025'), ('Lexington', 0, '38.65228', '-85.62524'), ('New Frankfort', 6040, '38.73672', '-85.71108'), ('Scottsburg', 0, '38.68561', '-85.77025'), ('Vienna', 6040, '38.64895', '-85.76886'), ('Wooster', 0, '38.73672', '-85.69274')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ079': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Barbersville', 0, '38.90589', '-85.28079'), ('Belleview', 12004, '38.85589', '-85.37801'), ('Brooksburg', 74, '38.73645', '-85.24357'), ('Bryantsburg', 12004, '38.88589', '-85.37440'), ('Canaan', 74, '38.86672', '-85.29579'), ('Chelsea', 2834, '38.65062', '-85.52496'), ('China', 12004, '38.82589', '-85.33829'), ('Deputy', 392, '38.79422', '-85.65330'), ('Dupont', 392, '38.89006', '-85.51413'), ('Five Points', 0, '38.84617', '-85.50913'), ('Hanover', 2834, '38.71423', '-85.47357'), ('Hanover Beach', 0, '38.70673', '-85.45329'), ('Kent', 2834, '38.73784', '-85.53996'), ('Lancaster', 392, '38.83145', '-85.51857'), ('Madison', 12004, '38.73589', '-85.37996'), ('Madison Municipal Airport', 13140, '38.75995', '-85.46383'), ('Manville', 74, '38.78784', '-85.28551'), ('Middlefork', 0, '38.85395', '-85.47218'), ('North Madison', 12004, '38.76784', '-85.39662'), ('Paynesville', 2834, '38.62117', '-85.49329'), ('Ringwald', 0, '38.78367', '-85.38274'), ('Saluda', 2834, '38.65062', '-85.48496'), ('Smyrna', 0, '38.78200', '-85.48079'), ('Swanville', 0, '38.68645', '-85.55857'), ('Volga', 2834, '38.78395', '-85.51802'), ('Wakefield', 2834, '38.78728', '-85.55996'), ('Wirt', 12004, '38.80950', '-85.45357')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ080': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Florence', 0, '38.78400', '-84.92400'), ('Patriot', 202, '38.83820', '-84.82780'), ('Vevay', 1735, '38.74783', '-85.06701')], 'partOfState': 'southeast', 'wfo': 'ILN'}, +'INZ081': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Fort Branch', 2320, '38.24680', '-87.57480'), ('Francisco', 543, '38.33400', '-87.44860'), ('Haubstadt', 1529, '38.20310', '-87.57480'), ('Hazleton', 288, '38.48900', '-87.54040'), ('Mackey', 142, '38.24990', '-87.39070'), ('Oakland City', 2588, '38.34000', '-87.34800'), ('Owensville', 1322, '38.27170', '-87.69060'), ('Patoka', 749, '38.40580', '-87.58750'), ('Princeton', 8175, '38.35570', '-87.56920'), ('Somerville', 312, '38.27770', '-87.37680')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INZ082': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Petersburg', 2570, '38.49170', '-87.28170'), ('Spurgeon', 227, '38.25560', '-87.25940'), ('Winslow', 881, '38.38380', '-87.21270')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INZ083': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Birdseye', 465, '38.31672', '-86.69582'), ('Bretzville', 2277, '38.29950', '-86.87305'), ('Celestine', 465, '38.38478', '-86.77916'), ('Crystal', 1941, '38.49200', '-86.75388'), ('Cuzco', 1941, '38.47505', '-86.72277'), ('Dubois', 12100, '38.44533', '-86.80444'), ('Dubois Crossroads', 0, '38.48116', '-86.81194'), ('Duff', 695, '38.32727', '-87.02639'), ('Ellsworth', 0, '38.42783', '-86.71833'), ('Ferdinand', 2277, '38.22394', '-86.86222'), ('Haysville', 112, '38.48561', '-86.91500'), ('Hillham', 1941, '38.51394', '-86.70055'), ('Holland', 695, '38.24561', '-87.03611'), ('Huntingburg', 5598, '38.29894', '-86.95500'), ('Huntingburg Airport', 13140, '38.24900', '-86.95400'), ('Ireland', 12100, '38.41477', '-86.99945'), ('Jasper', 12100, '38.39144', '-86.93111'), ('Johnsburg', 1568, '38.21783', '-86.95555'), ('Kellerville', 12100, '38.48172', '-86.83166'), ('Kyana', 465, '38.30506', '-86.78221'), ('Maltersville', 12100, '38.34644', '-86.88972'), ('Mentor', 465, '38.31645', '-86.71888'), ('Millersport', 0, '38.34311', '-87.05389'), ('Norton', 1941, '38.49450', '-86.68305'), ('Portersville', 112, '38.49950', '-86.97834'), ('Saint Anthony', 2277, '38.31450', '-86.82666'), ('Saint Henry', 2277, '38.21755', '-86.92861'), ('Saint Marks', 2277, '38.30561', '-86.81805'), ('Schnellville', 465, '38.34117', '-86.75610'), ('Thales', 807, '38.51033', '-86.79861')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ084': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Alton', 53, '38.12256', '-86.41776'), ('Beechwood', 353, '38.20673', '-86.42442'), ('Brownstown', 673, '38.38089', '-86.50304'), ('Cape Sandy', 353, '38.15090', '-86.37081'), ('Carefree', 27, '38.25173', '-86.35137'), ('Curby', 27, '38.28756', '-86.37720'), ('Deuchars', 53, '38.17229', '-86.44831'), ('Eckerty', 465, '38.32034', '-86.61193'), ('English', 673, '38.33450', '-86.46415'), ('Fredonia', 353, '38.17812', '-86.38303'), ('Grantsburg', 673, '38.28812', '-86.46943'), ('Hogtown', 0, '38.35839', '-86.31776'), ('Leavenworth', 353, '38.19979', '-86.34414'), ('Marengo', 829, '38.36923', '-86.34359'), ('Mifflin', 673, '38.30617', '-86.54026'), ('Milltown', 932, '38.34228', '-86.27609'), ('Pilot Knob', 27, '38.28256', '-86.34970'), ('Riceville', 465, '38.32450', '-86.66554'), ('Riddle', 27, '38.25062', '-86.43054'), ('Sulphur', 673, '38.22756', '-86.47081'), ('Sulphur Springs', 53, '38.21201', '-86.47498'), ('Switzer Crossroads', 0, '38.26895', '-86.41665'), ('Taswell', 673, '38.33423', '-86.56110'), ('Temple', 673, '38.34450', '-86.41582'), ('West Fork', 673, '38.23367', '-86.52637'), ('Wickliffe', 465, '38.36839', '-86.64110'), ('Wyandotte', 353, '38.22868', '-86.29470')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ085': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Cynthiana', 693, '38.18690', '-87.70880'), ('Griffin', 160, '38.20430', '-87.91530'), ('Mount Vernon', 7478, '37.93600', '-87.89870'), ('New Harmony', 916, '38.12850', '-87.93250'), ('Poseyville', 1187, '38.17020', '-87.78280')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INZ086': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Darmstadt', 1313, '38.09100', '-87.57620'), ('Evansville', 121582, '37.98410', '-87.54330'), ('Melody Hill', 3066, '38.02420', '-87.51320')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INZ087': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Boonville', 6834, '38.04510', '-87.27370'), ('Chandler', 3094, '38.04200', '-87.36900'), ('Elberfeld', 636, '38.16120', '-87.44810'), ('Lynnville', 781, '38.19890', '-87.31740'), ('Newburgh', 3088, '37.94650', '-87.40370'), ('Tennyson', 290, '38.08160', '-87.11890')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INZ088': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Chrisney', 544, '38.01230', '-87.03410'), ('Dale', 1568, '38.16720', '-86.98660'), ('Gentryville', 262, '38.10880', '-87.03040'), ('Grandview', 696, '37.93800', '-86.98310'), ('Rockport', 2160, '37.88370', '-87.05090'), ('Santa Claus', 2041, '38.11550', '-86.92510')], 'partOfState': 'southwest', 'wfo': 'PAH'}, +'INZ089': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Adyeville', 2277, '38.19089', '-86.76943'), ('Apalona', 465, '38.15450', '-86.63221'), ('Bandon', 53, '38.13728', '-86.60026'), ('Branchville', 53, '38.16367', '-86.57971'), ('Bristow', 392, '38.14006', '-86.72166'), ('Cannelton', 1209, '37.91144', '-86.74443'), ('Celina', 0, '38.18812', '-86.61276'), ('Derby', 53, '38.03034', '-86.52720'), ('Dexter', 53, '38.05923', '-86.47859'), ('Dodd', 1209, '37.91228', '-86.65193'), ('Doolittle Mills', 465, '38.25089', '-86.60304'), ('Fenn Haven', 0, '37.93144', '-86.75665'), ('Gatchel', 7845, '38.04673', '-86.65054'), ('Gerald', 1207, '38.00756', '-86.57304'), ('Hardingrove', 0, '37.92700', '-86.57137'), ('Kitterman Corners', 0, '38.22256', '-86.69749'), ('Lauer', 0, '37.87922', '-86.60165'), ('Leopold', 53, '38.10395', '-86.58332'), ('Lilly Dale', 0, '38.01173', '-86.65137'), ('Magnet', 53, '38.09673', '-86.46331'), ('Mount Pleasant', 53, '38.12173', '-86.51776'), ('Oriole', 53, '38.16895', '-86.50470'), ('Ranger', 0, '38.09589', '-86.68554'), ('Rome', 1207, '37.92339', '-86.52359'), ('Saint Croix', 465, '38.22395', '-86.58637'), ('Sassafras', 465, '38.18839', '-86.69027'), ('Siberia', 465, '38.23811', '-86.73360'), ('Tell City', 7845, '37.95144', '-86.76777'), ('Terry', 7845, '38.08728', '-86.63304'), ('Tobinsport', 1207, '37.85256', '-86.63554'), ('Troy', 0, '37.99533', '-86.79777'), ('Uniontown', 465, '38.22534', '-86.66082')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ090': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bradford', 633, '38.36784', '-86.06192'), ('Breckenridge', 0, '38.21785', '-86.03302'), ('Bridgeport', 0, '38.17618', '-85.90635'), ('Buena Vista', 0, '38.05896', '-85.97996'), ('Byrneville', 131, '38.32757', '-86.04358'), ('Central', 0, '38.09979', '-86.15858'), ('Central Barren', 633, '38.36423', '-86.09636'), ('Corydon', 2715, '38.21201', '-86.12192'), ('Crandall', 131, '38.28757', '-86.06636'), ('Depauw', 932, '38.33506', '-86.21748'), ('Dogwood', 29, '38.10535', '-86.08441'), ('Elizabeth', 137, '38.12118', '-85.97413'), ('Evans Landing', 1216, '38.00424', '-85.98469'), ('Fairdale', 0, '38.32618', '-86.17109'), ('Fishtown', 0, '38.06952', '-85.91746'), ('Frenchtown', 932, '38.31479', '-86.21442'), ('Glidas', 0, '38.05674', '-86.18442'), ('Hancock Chapel', 92, '38.38173', '-86.17942'), ('Happy Hollow', 0, '38.05340', '-85.93774'), ('Laconia', 29, '38.03174', '-86.08552'), ('Lanesville', 614, '38.23701', '-85.98580'), ('Lottick Corner', 0, '38.17118', '-85.94024'), ('Macedonia', 0, '38.05396', '-85.95996'), ('Mauckport', 83, '38.02479', '-86.20192'), ('Moberly', 0, '38.26979', '-86.20942'), ('New Amsterdam', 1, '38.10229', '-86.27497'), ('New Boston', 1216, '37.99980', '-86.01080'), ('New Middletown', 77, '38.16396', '-86.05080'), ('New Salisbury', 131, '38.31368', '-86.09497'), ('Palmyra', 633, '38.40784', '-86.10997'), ('Ramsey', 131, '38.32368', '-86.15470'), ('Rosewood', 0, '38.03813', '-85.92913'), ('Seven Springs', 0, '38.14201', '-85.97663'), ('Sugar Grove', 0, '38.11785', '-85.91108'), ('Titus', 0, '38.05423', '-86.25608'), ('Valley City', 1, '38.09396', '-86.22275'), ('White Cloud', 2715, '38.22812', '-86.22442')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ091': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Edwardsville', 37603, '38.28423', '-85.90941'), ('Floyds Knobs', 37603, '38.32451', '-85.87358'), ('Galena', 1831, '38.35173', '-85.94164'), ('Georgetown', 2227, '38.29451', '-85.97552'), ('Greenville', 0, '38.37256', '-85.98636'), ('Navilleton', 1831, '38.38173', '-85.93858'), ('New Albany', 37603, '38.28562', '-85.82413'), ('Saint Joseph', 6071, '38.40007', '-85.80830'), ('Scottsville', 1831, '38.40201', '-85.90914')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'INZ092': {'fullStateName': 'Indiana', 'state': 'IN', 'cities': [('Bennettsville', 6071, '38.42562', '-85.80858'), ('Bethlehem', 761, '38.53923', '-85.42051'), ('Blue Lick', 0, '38.50840', '-85.80469'), ('Borden', 818, '38.46673', '-85.94580'), ('Carwood', 818, '38.44840', '-85.86386'), ('Cementville', 21400, '38.34979', '-85.74607'), ('Charlestown', 5993, '38.45312', '-85.67024'), ('Chestnut Hill', 0, '38.47589', '-85.93275'), ('Clark Regional Airport', 13140, '38.36833', '-85.73846'), ('Clark Siding', 0, '38.47284', '-85.66357'), ('Clarksville', 0, '38.29674', '-85.75996'), ('Hamburg', 6071, '38.38340', '-85.76746'), ('Henryville', 1545, '38.54173', '-85.76774'), ('Hibernia', 0, '38.50201', '-85.52552'), ('Jeffersonville', 27362, '38.27757', '-85.73718'), ('Marysville', 5993, '38.58562', '-85.64357'), ('Memphis', 400, '38.48340', '-85.76163'), ('Nabb', 5993, '38.60562', '-85.63274'), ('New Market', 650, '38.53562', '-85.61691'), ('New Washington', 547, '38.56312', '-85.53968'), ('Oak Park', 0, '38.30562', '-85.69635'), ('Otisco', 5993, '38.54228', '-85.66719'), ('Otto', 2834, '38.57090', '-85.46690'), ('Owen', 2447, '38.45812', '-85.54190'), ('Prather', 0, '38.38173', '-85.69274'), ('River Ridge', 0, '38.37868', '-85.64552'), ('Rolling Hills', 0, '38.47812', '-85.58857'), ('Sellersburg', 6071, '38.39812', '-85.75496'), ('Speed', 6071, '38.41229', '-85.75246'), ('Starlight', 818, '38.41506', '-85.89247'), ('Underwood', 6040, '38.60367', '-85.77441'), ('Utica', 591, '38.33368', '-85.65357'), ('Vesta', 0, '38.48506', '-85.55052'), ('Watson', 5379, '38.34868', '-85.69996'), ('Wilson', 0, '38.44451', '-85.82969')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KSZ001': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bird City', 482, '39.74990', '-101.53170'), ('St. Francis', 1497, '39.77140', '-101.80030'), ('Wheeler', 0, '39.76000', '-101.71000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ002': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Atwood', 1279, '39.81040', '-101.04100'), ('Beardsley', 0, '39.81000', '-101.23000'), ('Blakeman', 0, '39.82000', '-101.12000'), ('Herndon', 149, '39.90850', '-100.78570'), ('Ludell', 0, '39.85000', '-100.96000'), ('McDonald', 159, '39.78520', '-101.37030')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ003': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Bluffs', 0, '39.98000', '-100.56000'), ('Dresden', 51, '39.62140', '-100.41970'), ('Jennings', 146, '39.68020', '-100.29350'), ('Kanona', 0, '39.80000', '-100.39000'), ('Leoville', 0, '39.58000', '-100.46000'), ('Norcatur', 169, '39.83460', '-100.18800'), ('Oberlin', 1994, '39.82320', '-100.53040'), ('Traer', 0, '39.93000', '-100.65000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ004': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Almena', 469, '39.89150', '-99.70980'), ('Calvert', 0, '39.83000', '-99.76000'), ('Clayton', 66, '39.73720', '-100.17640'), ('Densmore', 0, '39.64000', '-99.74000'), ('Edmond', 47, '39.62670', '-99.82030'), ('Lenora', 306, '39.61100', '-100.00100'), ('New Almelo', 0, '39.59000', '-100.12000'), ('Norton', 3012, '39.83550', '-99.89180'), ('Reager', 0, '39.83000', '-100.10000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ005': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Agra', 306, '39.76100', '-99.11970'), ('Glade', 114, '39.68260', '-99.31060'), ('Kirwin', 229, '39.66980', '-99.12280'), ('Logan', 603, '39.66130', '-99.56650'), ('Long Island', 155, '39.94630', '-99.53290'), ('Phillipsburg', 2668, '39.75140', '-99.32190'), ('Prairie View', 141, '39.83170', '-99.57290'), ('Speed', 44, '39.67630', '-99.42030'), ('Woodruff', 155, '39.99250', '-99.42600')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSZ006': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Athol', 51, '39.76570', '-98.91990'), ('Bellaire', 1931, '39.79850', '-98.67600'), ('Cedar', 26, '39.65670', '-98.94000'), ('Gaylord', 145, '39.64610', '-98.84670'), ('Harlan', 123, '39.60550', '-98.76650'), ('Kensington', 529, '39.76740', '-99.03200'), ('Lebanon', 303, '39.81050', '-98.55700'), ('Smith Center', 1931, '39.77970', '-98.78310')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSZ007': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burr Oak', 265, '39.87040', '-98.30400'), ('Esbon', 148, '39.82170', '-98.43340'), ('Formoso', 129, '39.77930', '-97.99350'), ('Ionia', 439, '39.66400', '-98.34700'), ('Jewell', 483, '39.67180', '-98.15130'), ('Lovewell State Park', 37, '39.89000', '-98.03000'), ('Mankato', 976, '39.78740', '-98.20760'), ('Montrose', 129, '39.78450', '-98.08750'), ('Randall', 90, '39.64160', '-98.04510'), ('Webber', 37, '39.93440', '-98.03580')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSZ008': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Agenda', 81, '39.70780', '-97.43140'), ('Belleville', 2239, '39.82440', '-97.63220'), ('Courtland', 334, '39.78140', '-97.89250'), ('Cuba', 231, '39.80280', '-97.45560'), ('Munden', 122, '39.91390', '-97.53780'), ('Narka', 93, '39.96060', '-97.42560'), ('Norway', 436, '39.69610', '-97.77360'), ('Republic', 161, '39.92360', '-97.82140'), ('Scandia', 436, '39.79450', '-97.78330')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSZ009': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Barnes', 152, '39.71190', '-96.87420'), ('Clifton', 557, '39.56720', '-97.27830'), ('Greenleaf', 357, '39.72830', '-96.97580'), ('Haddam', 169, '39.85700', '-97.30140'), ('Hanover', 653, '39.89390', '-96.87920'), ('Hollenberg', 31, '39.98060', '-96.99190'), ('Linn', 425, '39.68000', '-97.08390'), ('Mahaska', 107, '39.98700', '-97.35400'), ('Morrowville', 168, '39.84440', '-97.17140'), ('Palmer', 108, '39.63190', '-97.14000'), ('Vining', 58, '39.56690', '-97.29530'), ('Washington', 1223, '39.81800', '-97.05100')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSZ010': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Axtell', 445, '39.87170', '-96.25860'), ('Beattie', 277, '39.86110', '-96.41940'), ('Blue Rapids', 1088, '39.68200', '-96.65950'), ('Bremen', 0, '39.90140', '-96.78920'), ('Frankfort', 855, '39.70560', '-96.41670'), ('Lillis', 0, '39.60970', '-96.29580'), ('Marysville', 3271, '39.84110', '-96.64690'), ('Oketo', 87, '39.96360', '-96.59940'), ('Summerfield', 211, '39.99640', '-96.34900'), ('Vermillion', 107, '39.71940', '-96.26560'), ('Waterville', 681, '39.69110', '-96.74720')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSZ011': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Baileyville', 445, '39.84440', '-96.18470'), ('Bern', 204, '39.96220', '-95.97170'), ('Centralia', 534, '39.72580', '-96.12700'), ('Corning', 170, '39.65720', '-96.02920'), ('Goff', 181, '39.66390', '-95.93200'), ('Oneida', 70, '39.86390', '-95.93890'), ('Sabetha', 2589, '39.90220', '-95.80060'), ('Seneca', 2122, '39.83420', '-96.06390'), ('Wetmore', 362, '39.63330', '-95.81110'), ('Woodlawn', 0, '39.78330', '-95.86470')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSZ012': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Everest', 314, '39.67720', '-95.42450'), ('Fairview', 271, '39.84110', '-95.72780'), ('Hamlin', 53, '39.91610', '-95.62800'), ('Hiawatha', 3417, '39.85250', '-95.53560'), ('Horton', 1967, '39.66060', '-95.52610'), ('Morrill', 277, '39.92830', '-95.69170'), ('Powhattan', 91, '39.76170', '-95.62970'), ('Reserve', 100, '39.97720', '-95.56170'), ('Robinson', 216, '39.81670', '-95.41030'), ('Willis', 69, '39.72500', '-95.50560')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSZ013': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Edson', 0, '39.33000', '-101.54000'), ('Goodland', 4948, '39.34860', '-101.70930'), ('Kanorado', 248, '39.33710', '-102.03690'), ('Ruleton', 0, '39.34000', '-101.88000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ014': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Brewster', 285, '39.36290', '-101.37740'), ('Colby', 5450, '39.38770', '-101.04590'), ('Gem', 96, '39.42580', '-100.89680'), ('Halford', 0, '39.37000', '-100.87000'), ('Levant', 0, '39.38000', '-101.19000'), ('Menlo', 57, '39.35610', '-100.72390'), ('Mingo', 0, '39.28000', '-100.96000'), ('Rexford', 157, '39.47050', '-100.74350')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ015': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Angelus', 0, '39.19000', '-100.69000'), ('Hoxie', 1244, '39.35530', '-100.43950'), ('Seguin', 0, '39.34000', '-100.60000'), ('Selden', 201, '39.54120', '-100.56660'), ('Tasco', 0, '39.35000', '-100.29000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ016': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bogue', 179, '39.35960', '-99.68790'), ('Hill City', 1604, '39.36630', '-99.84650'), ('Morland', 164, '39.34880', '-100.07440'), ('Nicodemus', 0, '39.39000', '-99.61000'), ('Penokee', 0, '39.35000', '-99.97000'), ('Saint Peter', 0, '39.19000', '-100.09000'), ('Studley', 0, '39.35000', '-100.16000')], 'partOfState': 'northwest', 'wfo': 'GLD'}, +'KSZ017': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Codell', 2029, '39.19350', '-99.17700'), ('Damar', 155, '39.31910', '-99.58380'), ('Palco', 248, '39.25390', '-99.56420'), ('Plainville', 2029, '39.23420', '-99.30130'), ('Stockton', 1558, '39.43630', '-99.27130'), ('Webster State Park', 155, '39.39800', '-99.45000'), ('Woodston', 116, '39.45430', '-99.09870'), ('Zurich', 126, '39.23160', '-99.43440')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSZ018': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alton', 117, '39.46820', '-98.94820'), ('Downs', 1038, '39.50330', '-98.54680'), ('Natoma', 367, '39.18900', '-99.02450'), ('Osborne', 1607, '39.43940', '-98.69830'), ('Portis', 123, '39.55800', '-98.69100')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSZ019': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Asherville', 114, '39.40600', '-97.97650'), ('Beloit', 4019, '39.46580', '-98.10780'), ('Cawker City', 521, '39.50970', '-98.43210'), ('Glen Elder', 439, '39.49970', '-98.30620'), ('Hunter', 77, '39.23560', '-98.39560'), ('Scottsville', 21, '39.54310', '-97.95200'), ('Simpson', 114, '39.38630', '-97.93370'), ('Tipton', 243, '39.33940', '-98.47110'), ('Victor', 0, '39.24800', '-98.28350')], 'partOfState': 'north central', 'wfo': 'GID'}, +'KSZ020': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Aurora', 79, '39.45200', '-97.52700'), ('Clyde', 740, '39.59110', '-97.39860'), ('Concordia', 5714, '39.57080', '-97.66220'), ('Glasco', 536, '39.35670', '-97.84080'), ('Jamestown', 399, '39.59950', '-97.86080'), ('Miltonvale', 523, '39.34830', '-97.44580')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSZ021': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Clay Center', 4564, '39.37700', '-97.12440'), ('Green', 147, '39.42780', '-97.00170'), ('Idana', 198, '39.35750', '-97.26390'), ('Longford', 94, '39.17000', '-97.33110'), ('Morganville', 198, '39.46640', '-97.20170'), ('Oak Hill', 35, '39.24830', '-97.34110'), ('Wakefield', 838, '39.21600', '-97.01700')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSZ022': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Keats', 1494, '39.22360', '-96.70830'), ('Leonardville', 398, '39.36440', '-96.85860'), ('Manhattan', 44831, '39.18360', '-96.57140'), ('Ogden', 1762, '39.11110', '-96.70580'), ('Randolph', 175, '39.43060', '-96.75970'), ('Riley', 886, '39.29890', '-96.83060')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSZ023': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Belvue', 228, '39.21670', '-96.17780'), ('Blaine', 92, '39.49670', '-96.40280'), ('Emmett', 277, '39.30720', '-96.05580'), ('Havensville', 146, '39.51110', '-96.07780'), ('Louisville', 209, '39.25030', '-96.31450'), ('Olsburg', 192, '39.43060', '-96.61530'), ('Onaga', 704, '39.48890', '-96.16970'), ('St. George', 434, '39.19110', '-96.42000'), ('St. Marys', 2198, '39.19420', '-96.07080'), ('Wamego', 4246, '39.20200', '-96.30470'), ('Westmoreland', 631, '39.39400', '-96.41400'), ('Wheaton', 92, '39.50220', '-96.32060')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSZ024': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Circleville', 185, '39.50830', '-95.85830'), ('Delia', 179, '39.24060', '-95.96670'), ('Denison', 231, '39.39170', '-95.62780'), ('Holton', 3353, '39.46530', '-95.73610'), ('Hoyt', 571, '39.24780', '-95.70610'), ('Mayetta', 312, '39.33890', '-95.72220'), ('Netawaka', 170, '39.60280', '-95.71810'), ('Soldier', 122, '39.53610', '-95.96390'), ('Whiting', 206, '39.58970', '-95.61250')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSZ025': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arrington', 0, '39.46320', '-95.53660'), ('Atchison', 10232, '39.56310', '-95.12140'), ('Cummings', 0, '39.46320', '-95.24590'), ('Effingham', 588, '39.52220', '-95.40060'), ('Farmington', 0, '39.51860', '-95.30860'), ('Huron', 0, '39.63830', '-95.35140'), ('Lancaster', 291, '39.57280', '-95.30250'), ('Muscotah', 200, '39.55280', '-95.52140'), ('Potter', 0, '39.42580', '-95.14170')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KSZ026': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Grantville', 706, '39.08330', '-95.56110'), ('McLouth', 868, '39.19580', '-95.20810'), ('Meriden', 706, '39.18890', '-95.56940'), ('Nortonville', 620, '39.41670', '-95.33360'), ('Oskaloosa', 1165, '39.21530', '-95.31250'), ('Ozawkie', 552, '39.23330', '-95.46670'), ('Perry', 901, '39.07580', '-95.39310'), ('Valley Falls', 1254, '39.34330', '-95.46000'), ('Williamstown', 0, '39.06280', '-95.33250'), ('Winchester', 579, '39.32220', '-95.26670')], 'partOfState': 'northeast', 'wfo': 'TOP'}, +'KSZ027': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Sharon Springs', 835, '38.89420', '-101.75210'), ('Wallace', 67, '38.91370', '-101.59240'), ('Weskan', 0, '38.86000', '-101.96000')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSZ028': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Monument', 0, '39.10000', '-101.00000'), ('Oakley', 2173, '39.12580', '-100.85410'), ('Russell Springs', 32, '38.91230', '-101.17550'), ('Winona', 228, '39.06160', '-101.24460')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSZ029': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Gove', 99, '38.95970', '-100.48950'), ('Grainfield', 327, '39.11410', '-100.46860'), ('Grinnell', 329, '39.12490', '-100.63070'), ('Park', 151, '39.11230', '-100.36170'), ('Quinter', 961, '39.06660', '-100.23370'), ('The Monument Rocks', 0, '38.77000', '-100.77000')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSZ030': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Bluff', 0, '38.78000', '-99.73000'), ('Collyer', 133, '39.03780', '-100.11810'), ('Ogallah', 0, '38.98000', '-99.73000'), ('Riga', 0, '38.94000', '-99.63000'), ('Trego Center', 0, '38.88000', '-99.90000'), ('Voda', 0, '39.04000', '-100.02000'), ('Wakeeney', 1924, '39.02340', '-99.88130')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSZ031': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Antonino', 0, '38.78000', '-99.38000'), ('Catherine', 0, '38.93330', '-99.21670'), ('Ellis', 1873, '38.93620', '-99.55890'), ('Emmeram', 0, '38.97000', '-99.14000'), ('Hays', 20013, '38.87820', '-99.31880'), ('Munjor', 0, '38.81000', '-99.27000'), ('Pheifer', 44831, '38.70000', '-99.16670'), ('Schoenchen', 214, '38.71320', '-99.33040'), ('Toulon', 0, '38.84000', '-99.25000'), ('Victoria', 1208, '38.85360', '-99.14710'), ('Walker', 0, '38.86000', '-99.06000'), ('Yocemento', 0, '38.90000', '-99.42000')], 'partOfState': 'central', 'wfo': 'DDC'}, +'KSZ032': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bunker Hill', 101, '38.87260', '-98.70080'), ('Dorrance', 205, '38.84630', '-98.59020'), ('Gorham', 360, '38.88070', '-99.02360'), ('Lucas', 436, '39.05750', '-98.53850'), ('Luray', 203, '39.11500', '-98.69240'), ('Milberger', 0, '38.72000', '-98.92000'), ('Paradise', 64, '39.11460', '-98.91760'), ('Russell', 4696, '38.88790', '-98.85350'), ('Russell Airport', 0, '38.86670', '-98.81670'), ('Waldo', 48, '39.12020', '-98.79750')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ033': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ash Grove', 0, '39.17000', '-98.35000'), ('Barnard', 123, '39.18950', '-98.04400'), ('Beverly', 199, '39.01380', '-97.97570'), ('Lincoln', 1274, '39.04270', '-98.14820'), ('Sylvan Grove', 324, '39.01280', '-98.39350'), ('Westfall', 0, '38.93000', '-98.00000')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ034': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ada', 339, '39.15140', '-97.88890'), ('Bennington', 623, '39.03060', '-97.59390'), ('Culver', 164, '38.97080', '-97.75860'), ('Delphos', 469, '39.27390', '-97.77170'), ('Minneapolis', 2046, '39.12190', '-97.70640'), ('Niles', 0, '38.96940', '-97.46280'), ('Tescott', 339, '39.00810', '-97.87530'), ('Wells', 0, '39.13890', '-97.55090')], 'partOfState': 'north central', 'wfo': 'TOP'}, +'KSZ035': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Abilene', 6543, '38.91720', '-97.21360'), ('Carlton', 38, '38.68720', '-97.29310'), ('Chapman', 1241, '38.97220', '-97.02220'), ('Enterprise', 836, '38.90280', '-97.11670'), ('Herington', 2563, '38.67110', '-96.94220'), ('Hope', 372, '38.69030', '-97.07640'), ('Manchester', 102, '39.09470', '-97.32450'), ('Moonlight', 1241, '39.00280', '-97.10220'), ('Solomon', 1072, '38.92000', '-97.36100'), ('Talmage', 102, '39.02500', '-97.26030'), ('Woodbine', 207, '38.79610', '-96.95830')], 'partOfState': 'central', 'wfo': 'TOP'}, +'KSZ036': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Grandview Plaza', 1184, '39.02920', '-96.78920'), ('Junction City', 18886, '39.02860', '-96.83110'), ('Milford', 502, '39.17500', '-96.91400')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ037': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burdick', 0, '38.56360', '-96.84530'), ('Council Grove', 2321, '38.66110', '-96.49170'), ('Dunlap', 81, '38.57640', '-96.36560'), ('Dwight', 330, '38.84440', '-96.59310'), ('Latimer', 21, '38.73890', '-96.84530'), ('Parkerville', 73, '38.76390', '-96.66110'), ('White City', 518, '38.79560', '-96.73560'), ('Wilsey', 191, '38.63610', '-96.67500')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ038': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alma', 797, '39.01670', '-96.28890'), ('Alta Vista', 442, '38.86390', '-96.48890'), ('Eskridge', 589, '38.85890', '-96.10890'), ('Harveyville', 267, '38.79000', '-95.96140'), ('Keene', 0, '38.95750', '-96.03920'), ('Maple Hill', 469, '39.08470', '-96.02780'), ('McFarland', 271, '39.05280', '-96.23750'), ('Paxico', 211, '39.06940', '-96.16610'), ('Volland', 0, '38.94440', '-96.40420')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ039': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Auburn', 1121, '38.90610', '-95.81580'), ('Berryton', 0, '38.94080', '-95.63160'), ('Dover', 0, '38.96470', '-95.93720'), ('Pauline', 0, '38.96330', '-95.69050'), ('Richland', 0, '38.88360', '-95.53940'), ('Rossville', 1014, '39.13610', '-95.95140'), ('Silver Lake', 1358, '39.10420', '-95.85830'), ('Tecumseh', 0, '39.04810', '-95.57910'), ('Topeka', 122377, '39.04830', '-95.67780'), ('Willard', 86, '39.09330', '-95.94170')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ040': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Baldwin City', 3400, '38.77500', '-95.18700'), ('Clinton', 0, '38.91170', '-95.39030'), ('Eudora', 4307, '38.94330', '-95.09830'), ('Globe', 0, '38.78220', '-95.39970'), ('Lawrence', 80098, '38.95900', '-95.26000'), ('Lecompton', 608, '39.04450', '-95.39450'), ('Lone Star', 0, '38.86670', '-95.35530'), ('Pleasant Grove', 0, '38.85560', '-95.26970'), ('Vinland', 0, '38.83950', '-95.18220')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ041': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Horace', 143, '38.47670', '-101.79040'), ('Tribune', 835, '38.47130', '-101.75400')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSZ042': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Leoti', 1598, '38.48300', '-101.35720'), ('Lydia', 0, '38.28000', '-101.29000'), ('Marienthal', 0, '38.49000', '-101.21000'), ('Selkirk', 0, '38.47000', '-101.54000')], 'partOfState': 'west central', 'wfo': 'GLD'}, +'KSZ043': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Grigston', 0, '38.47000', '-100.72000'), ('Manning', 0, '38.54000', '-100.72000'), ('Modoc', 0, '38.48000', '-101.07000'), ('Scott City', 3855, '38.47980', '-100.90840'), ('Scott State Lake', 3855, '38.68000', '-100.92000'), ('Shallow Water', 0, '38.36000', '-100.91000')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSZ044': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alamota', 0, '38.44000', '-100.31000'), ('Amy', 0, '38.46000', '-100.60000'), ('Dighton', 1261, '38.48150', '-100.46580'), ('Healy', 0, '38.60000', '-100.62000'), ('Pendennis', 0, '38.65000', '-100.33000'), ('Shields', 0, '38.62000', '-100.45000')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSZ045': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arnold', 0, '38.63000', '-100.04000'), ('Bazine', 311, '38.44600', '-99.69220'), ('Beeler', 0, '38.43000', '-100.20000'), ('Brownell', 48, '38.64020', '-99.74370'), ('Ness City', 1534, '38.45340', '-99.90560'), ('Ransom', 338, '38.63630', '-99.93200'), ('Utica', 223, '38.64290', '-100.16990')], 'partOfState': 'west central', 'wfo': 'DDC'}, +'KSZ046': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alexander', 75, '38.46940', '-99.55200'), ('Bison', 235, '38.51980', '-99.19720'), ('Hargrave', 0, '38.55000', '-99.43000'), ('La Crosse', 1376, '38.53170', '-99.30980'), ('Liebenthal', 111, '38.65450', '-99.32000'), ('Loretta', 0, '38.65000', '-99.18330'), ('McCracken', 211, '38.58230', '-99.56890'), ('Nekoma', 0, '38.47000', '-99.44000'), ('Otis', 325, '38.53490', '-99.05310'), ('Rush Center', 176, '38.46490', '-99.31050'), ('Shaffer', 0, '38.46000', '-99.08000'), ('Timken', 83, '38.47290', '-99.17700')], 'partOfState': 'central', 'wfo': 'DDC'}, +'KSZ047': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Albert', 181, '38.45450', '-99.01170'), ('Claflin', 705, '38.52390', '-98.53680'), ('Ellinwood', 2164, '38.35620', '-98.58200'), ('Galatia', 61, '38.64140', '-98.95720'), ('Great Bend', 15345, '38.36080', '-98.80880'), ('Great Bend Airport', 0, '38.35000', '-98.85000'), ('Hoisington', 2975, '38.51840', '-98.77810'), ('Olmitz', 138, '38.51640', '-98.93700'), ('Pawnee Rock', 356, '38.26530', '-98.98220'), ('Susank', 57, '38.64040', '-98.77460')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ048': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ellsworth', 2965, '38.73560', '-98.22810'), ('Holyrood', 464, '38.58730', '-98.41170'), ('Kanopolis', 543, '38.70850', '-98.15670'), ('Lorraine', 136, '38.56960', '-98.31710'), ('Wilson', 799, '38.82560', '-98.47440')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ049': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Assaria', 438, '38.68040', '-97.60370'), ('Bridgeport', 0, '38.63330', '-97.60000'), ('Brookville', 259, '38.77370', '-97.86420'), ('Glendale', 0, '38.90000', '-97.87000'), ('Gypsum', 414, '38.70580', '-97.42650'), ('New Cambria', 150, '38.87960', '-97.50540'), ('Salina', 45679, '38.81580', '-97.61780'), ('Smolan', 218, '38.73800', '-97.68360')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ050': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Alden', 168, '38.24410', '-98.31110'), ('Bushton', 314, '38.51280', '-98.39470'), ('Chase', 490, '38.35570', '-98.34840'), ('Frederick', 11, '38.51310', '-98.26740'), ('Geneseo', 272, '38.51680', '-98.15400'), ('Little River', 536, '38.39770', '-98.01240'), ('Lyons', 3732, '38.34600', '-98.20220'), ('Raymond', 95, '38.27850', '-98.41450'), ('Silica', 0, '38.35000', '-98.45000'), ('Sterling', 2642, '38.20920', '-98.20580')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ051': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Canton', 829, '38.38610', '-97.42990'), ('Galva', 701, '38.38210', '-97.53800'), ('Inman', 1142, '38.22910', '-97.77380'), ('Lindsborg', 3321, '38.57430', '-97.67490'), ('Marquette', 542, '38.55380', '-97.83400'), ('McPherson', 13770, '38.37190', '-97.66190'), ('Moundridge', 1593, '38.20180', '-97.51560'), ('Roxbury', 0, '38.55000', '-97.42000'), ('Windom', 137, '38.38430', '-97.91020')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ052': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burns', 268, '38.08970', '-96.88770'), ('Durham', 114, '38.48510', '-97.22700'), ('Florence', 671, '38.24280', '-96.92910'), ('Goessel', 565, '38.24650', '-97.34540'), ('Hillsboro', 2854, '38.35130', '-97.20220'), ('Lehigh', 215, '38.37490', '-97.30240'), ('Lincolnville', 225, '38.49400', '-96.96120'), ('Lost Springs', 71, '38.56650', '-96.96490'), ('Marion', 2110, '38.34890', '-97.01570'), ('Peabody', 1384, '38.16880', '-97.10690'), ('Tampa', 144, '38.54700', '-97.15400')], 'partOfState': 'central', 'wfo': 'ICT'}, +'KSZ053': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Point', 53, '38.25990', '-96.82170'), ('Cottonwood Falls', 966, '38.36910', '-96.54260'), ('Elmdale', 50, '38.37300', '-96.64570'), ('Hymer', 0, '38.48000', '-96.68000'), ('Matfield Green', 60, '38.15870', '-96.56340'), ('Saffordville', 0, '38.38330', '-96.40000'), ('Strong City', 584, '38.39560', '-96.53650'), ('Wonsevu', 0, '38.15000', '-96.77000')], 'partOfState': 'east central', 'wfo': 'ICT'}, +'KSZ054': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Admire', 177, '38.64110', '-96.10280'), ('Allen', 211, '38.65610', '-96.16940'), ('Americus', 938, '38.50690', '-96.26170'), ('Bushong', 55, '38.64310', '-96.25690'), ('Emporia', 26760, '38.40390', '-96.18140'), ('Hartford', 500, '38.30830', '-95.95560'), ('Neosho Rapids', 274, '38.36950', '-95.99170'), ('Olpe', 504, '38.26250', '-96.16670'), ('Reading', 247, '38.51900', '-95.95900')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ055': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burlingame', 1017, '38.75390', '-95.83470'), ('Carbondale', 1478, '38.81860', '-95.68890'), ('Lyndon', 1038, '38.61000', '-95.68420'), ('Melvern', 429, '38.50690', '-95.63750'), ('Olivet', 64, '38.48060', '-95.75140'), ('Osage City', 3034, '38.63390', '-95.82560'), ('Overbrook', 947, '38.78060', '-95.55700'), ('Quenemo', 468, '38.57970', '-95.52670'), ('Scranton', 724, '38.78170', '-95.73830')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ056': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Centropolis', 0, '38.71610', '-95.35030'), ('Lane', 256, '38.43970', '-95.08200'), ('Ottawa', 11921, '38.61560', '-95.26750'), ('Pomona', 923, '38.60830', '-95.45140'), ('Princeton', 317, '38.48890', '-95.27500'), ('Rantoul', 241, '38.54860', '-95.10000'), ('Richmond', 510, '38.40280', '-95.25360'), ('Wellsville', 1606, '38.71830', '-95.08140'), ('Williamsburg', 351, '38.48060', '-95.46670')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ057': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Beagle', 0, '38.41760', '-94.95490'), ('Bucyrus', 0, '38.72500', '-94.71800'), ('Chiles', 0, '38.67990', '-94.76110'), ('Fontana', 149, '38.42590', '-94.83790'), ('Hillsdale', 0, '38.66270', '-94.85130'), ('Louisburg', 2576, '38.62380', '-94.68290'), ('New Lancaster', 0, '38.46250', '-94.73340'), ('Osawatomie', 4645, '38.50250', '-94.95110'), ('Paola', 5011, '38.57700', '-94.86620'), ('Wagstaff', 0, '38.66520', '-94.79700')], 'partOfState': 'east central', 'wfo': 'EAX'}, +'KSZ058': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Beto Junction', 0, '38.40560', '-95.69190'), ('Burlington', 2790, '38.19440', '-95.74250'), ('Gridley', 372, '38.09780', '-95.88330'), ('Lebo', 961, '38.41670', '-95.85280'), ('Le Roy', 593, '38.08390', '-95.63420'), ('New Strawn', 425, '38.26250', '-95.74190'), ('Waverly', 589, '38.39390', '-95.60280')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ059': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Colony', 397, '38.07080', '-95.36530'), ('Garnett', 3368, '38.28060', '-95.24170'), ('Greeley', 327, '38.36670', '-95.12670'), ('Harris', 53, '38.31900', '-95.43700'), ('Kincaid', 178, '38.08420', '-95.15330'), ('Lone Elm', 27, '38.08000', '-95.24330'), ('Westphalia', 165, '38.18200', '-95.49000')], 'partOfState': 'east central', 'wfo': 'TOP'}, +'KSZ060': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Blue Mound', 277, '38.08920', '-95.00940'), ('La Cygne', 1115, '38.34680', '-94.76130'), ('Mound City', 821, '38.14380', '-94.82240'), ('Parker', 281, '38.32890', '-94.99050'), ('Pleasanton', 1387, '38.17520', '-94.71300'), ('Prescott', 280, '38.06300', '-94.69610')], 'partOfState': 'east central', 'wfo': 'EAX'}, +'KSZ061': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Coolidge', 86, '38.04090', '-102.00740'), ('Syracuse', 1824, '37.98110', '-101.75140')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ062': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Deerfield', 884, '37.98140', '-101.13260'), ('Kendall', 0, '37.94000', '-101.54000'), ('Lakin', 2316, '37.94020', '-101.25830')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ063': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Friend', 0, '38.25000', '-100.91000'), ('Garden City', 28451, '37.97710', '-100.86280'), ('Holcomb', 2026, '37.99020', '-100.98810'), ('Kalvesta', 0, '38.05000', '-100.28000'), ('Pierceville', 0, '37.88000', '-100.67000'), ('Plymell', 0, '37.81000', '-100.87000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ064': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Gray', 0, '38.15000', '-99.63000'), ('Hanston', 259, '38.12290', '-99.71210'), ('Jetmore', 903, '38.08310', '-99.89300')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ065': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Ash Valley', 0, '38.29000', '-99.21000'), ('Burdett', 256, '38.19340', '-99.52610'), ('Frizell', 0, '38.17000', '-99.20000'), ('Garfield', 198, '38.07760', '-99.24460'), ('Larned', 4236, '38.18320', '-99.10130'), ('Rozel', 182, '38.19590', '-99.40210'), ('Sanford', 0, '38.17000', '-99.31000'), ('Zook', 0, '38.04000', '-99.09000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSZ066': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Dillwyn', 0, '37.97000', '-98.87000'), ('Hudson', 133, '38.10390', '-98.66010'), ('Macksville', 514, '37.95720', '-98.96830'), ('Neola', 0, '37.86000', '-98.51000'), ('Radium', 40, '38.17370', '-98.89390'), ('Seward', 63, '38.17760', '-98.79380'), ('Stafford', 1161, '37.96280', '-98.59930'), ('St. John', 1318, '38.00100', '-98.76070'), ('Zenith', 0, '37.95000', '-98.48000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSZ067': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Abbyville', 128, '37.97060', '-98.20340'), ('Arlington', 459, '37.89600', '-98.17760'), ('Buhler', 1358, '38.13810', '-97.77130'), ('Haven', 1175, '37.90230', '-97.78060'), ('Hutchinson', 40787, '38.06550', '-97.91420'), ('Langdon', 62, '37.85330', '-98.32410'), ('Nickerson', 1194, '38.14770', '-98.08670'), ('Partridge', 259, '37.96740', '-98.09390'), ('Plevna', 99, '37.97110', '-98.30910'), ('Pretty Prairie', 615, '37.78020', '-98.01970'), ('South Hutchinson', 2539, '38.02840', '-97.94100'), ('Sylvia', 297, '37.95990', '-98.40780'), ('Turon', 436, '37.80740', '-98.42800'), ('Willowbrook', 36, '38.10160', '-97.99110')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ068': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Burrton', 932, '38.02260', '-97.67200'), ('Halstead', 1873, '38.00100', '-97.50930'), ('Hesston', 3509, '38.13990', '-97.42760'), ('Newton', 17190, '38.04440', '-97.34190'), ('North Newton', 1522, '38.07390', '-97.34600'), ('Sedgwick', 1537, '37.91780', '-97.42610'), ('Walton', 284, '38.11830', '-97.25610')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ069': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Andover', 6698, '37.69120', '-97.13930'), ('Augusta', 8423, '37.69230', '-96.97530'), ('Benton', 827, '37.78880', '-97.10810'), ('Cassoday', 130, '38.03870', '-96.63690'), ('Douglass', 1813, '37.51780', '-97.01140'), ('Elbing', 218, '38.05410', '-97.12680'), ('El Dorado', 12057, '37.82110', '-96.85800'), ('Latham', 164, '37.53520', '-96.64150'), ('Leon', 645, '37.68820', '-96.78350'), ('Potwin', 457, '37.93890', '-97.01870'), ('Rosalia', 0, '37.82000', '-96.62000'), ('Rose Hill', 3432, '37.56620', '-97.13210'), ('Towanda', 1338, '37.79690', '-96.99700'), ('Whitewater', 653, '37.96320', '-97.14680')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ070': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Climax', 64, '37.71930', '-96.22360'), ('Eureka', 2914, '37.82270', '-96.28840'), ('Fall River', 156, '37.60840', '-96.02850'), ('Hamilton', 334, '37.98110', '-96.16380'), ('Madison', 857, '38.13300', '-96.13700'), ('Piedmont', 0, '37.62000', '-96.37000'), ('Severy', 359, '37.62160', '-96.22730'), ('Thrall', 0, '38.02000', '-96.32000'), ('Virgil', 113, '37.98060', '-96.01080')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ071': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Batesville', 0, '37.83330', '-95.88330'), ('Neosho Falls', 179, '38.00580', '-95.55520'), ('Rose', 0, '37.80000', '-95.68000'), ('Toronto', 312, '37.79860', '-95.94930'), ('Yates Center', 1599, '37.87240', '-95.74280')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ072': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bassett', 22, '37.90670', '-95.40720'), ('Elsmore', 73, '37.79420', '-95.14920'), ('Gas', 556, '37.92270', '-95.34470'), ('Humboldt', 1999, '37.81160', '-95.43720'), ('Iola', 6302, '37.92820', '-95.40100'), ('La Harpe', 706, '37.91650', '-95.30190'), ('Mildred', 36, '38.02480', '-95.17380'), ('Moran', 562, '37.91610', '-95.17050'), ('Petrolia', 0, '37.75000', '-95.47000'), ('Savonburg', 91, '37.74910', '-95.14170')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ073': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bronson', 346, '37.89590', '-95.07250'), ('Devon', 140, '37.92210', '-94.81880'), ('Fort Scott', 8297, '37.83960', '-94.70800'), ('Fulton', 184, '38.01000', '-94.71930'), ('Garland', 391, '37.73160', '-94.62210'), ('Hammond', 184, '37.93550', '-94.69490'), ('Harding', 98, '37.99380', '-94.81930'), ('Hiattville', 140, '37.72210', '-94.87130'), ('Mapleton', 98, '38.01500', '-94.88330'), ('Marmaton', 140, '37.83180', '-94.82430'), ('Pawnee Station', 8297, '37.70000', '-94.79100'), ('Petersburg', 288, '37.77570', '-94.97910'), ('Porterville', 91, '37.71790', '-95.06850'), ('Redfield', 140, '37.83660', '-94.88070'), ('Uniontown', 288, '37.84710', '-94.97490'), ('Xenia', 277, '37.99520', '-94.98600')], 'partOfState': 'southeast', 'wfo': 'SGF'}, +'KSZ074': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Big Bow', 0, '37.56000', '-101.56000'), ('Johnson City', 1348, '37.56960', '-101.75250'), ('Manter', 178, '37.52420', '-101.88270'), ('The Saunders Elevator', 0, '37.47000', '-102.03000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ075': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Hickok', 0, '37.56000', '-101.23000'), ('Ryus', 0, '37.50000', '-101.11000'), ('Ulysses', 5960, '37.57900', '-101.35580')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ076': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Satanta', 1239, '37.43590', '-100.98790'), ('Sublette', 1592, '37.47960', '-100.84650'), ('Tice', 0, '37.51000', '-100.71000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ077': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Charleston', 0, '37.87000', '-100.57000'), ('Cimarron', 1934, '37.80820', '-100.34570'), ('Copeland', 339, '37.54020', '-100.62850'), ('Ensign', 203, '37.65360', '-100.23220'), ('Ingalls', 328, '37.82790', '-100.45240'), ('Montezuma', 966, '37.59650', '-100.44170'), ('The Haggard Elev', 0, '37.62000', '-100.30000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ078': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bellefont', 0, '37.88000', '-99.65000'), ('Bloom', 0, '37.48000', '-99.88000'), ('Bucklin', 725, '37.54900', '-99.63460'), ('Dodge City', 25176, '37.75870', '-100.01540'), ('Ford', 314, '37.63700', '-99.75400'), ('Ft. Dodge', 0, '37.74000', '-99.93000'), ('Howell', 0, '37.78000', '-100.18000'), ('Kingsdown', 0, '37.51000', '-99.76000'), ('Spearville', 813, '37.84800', '-99.75430'), ('Windhorst', 0, '37.78000', '-99.63000'), ('Wright', 0, '37.78000', '-99.89000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ079': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Belpre', 104, '37.95100', '-99.09920'), ('Centerview', 0, '37.80000', '-99.27000'), ('Fellsburg', 0, '37.80000', '-99.18000'), ('Kinsley', 1658, '37.92240', '-99.41110'), ('Lewis', 486, '37.93700', '-99.25430'), ('Offerle', 220, '37.89090', '-99.56050'), ('Trousdale', 0, '37.80000', '-99.08000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSZ080': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Belvidere', 0, '37.44000', '-99.08000'), ('Greensburg', 1574, '37.60540', '-99.29180'), ('Haviland', 612, '37.61770', '-99.10510'), ('Mullinville', 279, '37.58800', '-99.47460'), ('Wellsford', 0, '37.61000', '-99.02000')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSZ081': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Byers', 50, '37.78780', '-98.86670'), ('Cairo', 0, '37.64000', '-98.54000'), ('Coats', 112, '37.51090', '-98.82440'), ('Croft', 0, '37.49000', '-98.99000'), ('Cullison', 98, '37.62970', '-98.90510'), ('Hopewell', 0, '37.80000', '-98.98000'), ('Iuka', 185, '37.72900', '-98.73140'), ('Pratt', 6570, '37.64670', '-98.73590'), ('Preston', 164, '37.75800', '-98.55550'), ('Sawyer', 124, '37.49770', '-98.68270')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSZ082': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cleveland', 0, '37.55000', '-98.13000'), ('Cunningham', 514, '37.64490', '-98.43200'), ('Kingman', 3387, '37.64700', '-98.11350'), ('Mt Vernon', 0, '37.72000', '-97.85000'), ('Nashville', 111, '37.43860', '-98.42230'), ('Norwich', 551, '37.45670', '-97.84550'), ('Penalosa', 27, '37.71580', '-98.31970'), ('Rago', 0, '37.45000', '-98.08000'), ('Spivey', 80, '37.44820', '-98.16500'), ('Zenda', 123, '37.44500', '-98.28220')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ083': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Andale', 766, '37.79270', '-97.62910'), ('Bel Aire', 5836, '37.76450', '-97.26820'), ('Bentley', 368, '37.88640', '-97.51560'), ('Cheney', 1783, '37.62790', '-97.78020'), ('Clearwater', 2178, '37.50560', '-97.50130'), ('Colwich', 1229, '37.78170', '-97.53750'), ('Derby', 17807, '37.54930', '-97.25890'), ('Downtown Wichita', 0, '37.68740', '-97.34270'), ('East Wichita', 0, '37.68470', '-97.25840'), ('Garden Plain', 797, '37.66110', '-97.68160'), ('Goddard', 2037, '37.65980', '-97.57660'), ('Haysville', 8502, '37.56700', '-97.34920'), ('Kechi', 1038, '37.79530', '-97.27830'), ('Maize', 1868, '37.77310', '-97.46410'), ('McConnell Air Force Base', 0, '37.62000', '-97.27000'), ('Mount Hope', 830, '37.86840', '-97.66420'), ('Mulvane', 5155, '37.48070', '-97.24070'), ('Oaklawn', 0, '37.60670', '-97.29880'), ('Park City', 5814, '37.79600', '-97.32190'), ('Valley Center', 4883, '37.83520', '-97.37350'), ('Viola', 211, '37.48250', '-97.64460'), ('Wichita', 0, '37.75140', '-97.33366')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ084': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Elkhart', 2233, '37.00220', '-101.89450'), ('Richfield', 48, '37.26570', '-101.78320'), ('Rolla', 482, '37.11930', '-101.63060'), ('Wilburton', 0, '37.07000', '-101.76000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ085': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cave', 0, '37.36000', '-101.12000'), ('Feterita', 0, '37.15000', '-101.48000'), ('Hugoton', 3708, '37.17640', '-101.34680'), ('Moscow', 247, '37.32550', '-101.20630'), ('Woods', 0, '37.17000', '-101.10000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ086': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Hayne', 0, '37.10000', '-100.80000'), ('Kismet', 484, '37.20500', '-100.70060'), ('Liberal', 19666, '37.04470', '-100.93550')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ087': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Fowler', 567, '37.38330', '-100.19570'), ('Meade', 1672, '37.28500', '-100.33760'), ('Meade State Park', 0, '37.17000', '-100.42000'), ('Missler', 0, '37.32000', '-100.43000'), ('Plains City', 1163, '37.26360', '-100.58990')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ088': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Acres', 0, '37.10000', '-99.88000'), ('Ashland', 1032, '37.18680', '-99.76890'), ('Clark State Lake', 0, '37.39000', '-99.78000'), ('Englewood', 109, '37.03970', '-99.98540'), ('Minneola', 717, '37.44270', '-100.01260'), ('Sitka', 0, '37.17000', '-99.65000')], 'partOfState': 'southwest', 'wfo': 'DDC'}, +'KSZ089': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Buttermilk', 0, '37.11000', '-99.34000'), ('Coldwater', 792, '37.25790', '-99.33680'), ('Lake Coldwater', 792, '37.25000', '-99.35000'), ('Protection', 558, '37.20020', '-99.48030'), ('Wilmore', 57, '37.33590', '-99.20930')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSZ090': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Aetna', 0, '37.08000', '-98.97000'), ('Hardtner', 199, '37.01430', '-98.64840'), ('Hazelton', 144, '37.08820', '-98.40130'), ('Isabel', 108, '37.46770', '-98.55140'), ('Kiowa', 1055, '37.01750', '-98.48440'), ('Lake City', 0, '37.35000', '-98.81000'), ('Medicine Lodge', 2193, '37.28600', '-98.58030'), ('Sharon', 210, '37.25000', '-98.41830'), ('Sun City', 81, '37.37850', '-98.91640')], 'partOfState': 'south central', 'wfo': 'DDC'}, +'KSZ091': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Anthony', 2440, '37.15390', '-98.02910'), ('Attica', 636, '37.24250', '-98.22590'), ('Bluff City', 80, '37.07560', '-97.87500'), ('Corwin', 0, '37.08000', '-98.30000'), ('Danville', 59, '37.28570', '-97.89100'), ('Freeport', 6, '37.19870', '-97.85420'), ('Harper', 1567, '37.28520', '-98.02630'), ('Runnymede', 0, '37.35000', '-97.93000'), ('Waldron', 17, '37.00080', '-98.18280')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ092': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Argonia', 534, '37.26530', '-97.76450'), ('Belle Plaine', 1708, '37.39420', '-97.27880'), ('Caldwell', 1284, '37.03520', '-97.60870'), ('Conway Springs', 1322, '37.38950', '-97.64400'), ('Geuda Springs', 212, '37.11080', '-97.14940'), ('Hunnewell', 83, '37.00450', '-97.40690'), ('Mayfield', 113, '37.26230', '-97.54550'), ('Milan', 137, '37.25810', '-97.67300'), ('Oxford', 1173, '37.27480', '-97.16950'), ('South Haven', 390, '37.04910', '-97.40030'), ('Wellington', 8647, '37.27130', '-97.39720')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ093': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arkansas City', 11963, '37.06880', '-97.04060'), ('Atlanta', 255, '37.43640', '-96.76710'), ('Burden', 564, '37.31310', '-96.75500'), ('Cambridge', 103, '37.31730', '-96.66680'), ('Dexter', 364, '37.17930', '-96.71570'), ('Maple City', 0, '37.05000', '-96.78330'), ('Udall', 794, '37.38700', '-97.11750'), ('Winfield', 12206, '37.26860', '-96.96850')], 'partOfState': 'south central', 'wfo': 'ICT'}, +'KSZ094': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Elk Falls', 112, '37.37400', '-96.19250'), ('Grenola', 231, '37.35070', '-96.44820'), ('Howard', 808, '37.46950', '-96.26270'), ('Longton', 394, '37.37750', '-96.08260'), ('Moline', 457, '37.36370', '-96.30180')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ095': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Altoona', 485, '37.52550', '-95.66160'), ('Benedict', 103, '37.62470', '-95.74190'), ('Buffalo', 284, '37.70860', '-95.69670'), ('Buxton', 0, '37.45000', '-95.92000'), ('Coyville', 71, '37.68720', '-95.89530'), ('Fredonia', 2600, '37.53290', '-95.82400'), ('Neodesha', 2848, '37.42350', '-95.68090'), ('New Albany', 73, '37.56770', '-95.93450')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ096': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Chanute', 9411, '37.67100', '-95.46030'), ('Earlton', 80, '37.58730', '-95.46920'), ('Erie', 1211, '37.56850', '-95.24370'), ('Galesburg', 150, '37.47240', '-95.35560'), ('Stark', 106, '37.68950', '-95.14330'), ('St. Paul', 687, '37.51730', '-95.17480'), ('Thayer', 500, '37.48790', '-95.47400')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ097': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Arcadia', 391, '37.64190', '-94.62350'), ('Arma', 1529, '37.54380', '-94.70000'), ('Beulah', 2773, '37.44020', '-94.82790'), ('Brazilton', 154, '37.55970', '-94.95720'), ('Cherokee', 722, '37.34580', '-94.80860'), ('Chicopee', 19243, '37.38180', '-94.74160'), ('Croweburg', 1529, '37.55690', '-94.66580'), ('Englevale', 1529, '37.59380', '-94.72710'), ('Farlington', 2773, '37.61770', '-94.82740'), ('Franklin', 1529, '37.52630', '-94.70550'), ('Frontenac', 2996, '37.45550', '-94.68880'), ('Girard', 2773, '37.51110', '-94.83770'), ('Greenbush', 221, '37.51440', '-94.98770'), ('Hepler', 154, '37.66110', '-94.96790'), ('Lone Oak', 19243, '37.43690', '-94.74170'), ('McCune', 426, '37.35470', '-95.01630'), ('Mulberry', 577, '37.55690', '-94.62160'), ('Opolis', 220, '37.34440', '-94.62070'), ('Pittsburg', 19243, '37.41080', '-94.70470'), ('Polk', 1529, '37.54330', '-94.74160'), ('Ringo', 1529, '37.50940', '-94.76110'), ('Walnut', 221, '37.60130', '-95.07770'), ('Yale', 346, '37.48380', '-94.64160')], 'partOfState': 'southeast', 'wfo': 'SGF'}, +'KSZ098': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Cedar Vale', 723, '37.10640', '-96.50060'), ('Chautauqua', 113, '37.02390', '-96.17680'), ('Elgin', 82, '37.00160', '-96.28040'), ('Hale', 0, '37.23000', '-96.02000'), ('Niotaze', 122, '37.06730', '-96.01400'), ('Peru', 183, '37.08120', '-96.09600'), ('Sedan', 1342, '37.12740', '-96.18470')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ099': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bolton', 0, '37.18000', '-95.80000'), ('Caney', 2092, '37.01350', '-95.93150'), ('Cherryvale', 2386, '37.26800', '-95.55110'), ('Coffeyville', 11021, '37.04080', '-95.63210'), ('Coffeyville Airport', 0, '37.10000', '-95.56670'), ('Dearing', 415, '37.05910', '-95.71210'), ('Elk City', 305, '37.28910', '-95.91000'), ('Havana', 86, '37.09220', '-95.94130'), ('Independence', 9846, '37.23150', '-95.71380'), ('Independence Airport', 0, '37.15000', '-95.78330'), ('Liberty', 95, '37.15610', '-95.59770'), ('Sycamore', 0, '37.33000', '-95.72000'), ('Tyro', 226, '37.03670', '-95.82140')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ100': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Altamont', 1092, '37.19150', '-95.29470'), ('Angola', 0, '37.10000', '-95.47000'), ('Bartlett', 124, '37.05490', '-95.21130'), ('Chetopa', 1281, '37.03630', '-95.09330'), ('Dennis', 0, '37.35000', '-95.42000'), ('Edna', 423, '37.05850', '-95.35830'), ('Labette', 68, '37.23030', '-95.18350'), ('Mound Valley', 418, '37.20720', '-95.40400'), ('Oswego', 2046, '37.16760', '-95.11180'), ('Parsons', 11514, '37.33900', '-95.26790'), ('Parsons Tri City Airport', 0, '37.33330', '-95.51670')], 'partOfState': 'southeast', 'wfo': 'ICT'}, +'KSZ101': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Baxter Springs', 4602, '37.02350', '-94.73520'), ('Carona', 101, '37.28020', '-94.86820'), ('Columbus', 3396, '37.16910', '-94.84380'), ('Crestline', 3287, '37.17070', '-94.70410'), ('Faulkner', 1281, '37.10130', '-95.01130'), ('Galena', 3287, '37.07570', '-94.63940'), ('Hallowell', 2046, '37.17460', '-94.99520'), ('Lawton', 86, '37.22180', '-94.63580'), ('Lowell', 4602, '37.04850', '-94.70130'), ('Melrose', 149, '37.03070', '-94.95800'), ('Neutral', 3396, '37.09770', '-94.79460'), ('Riverton', 4602, '37.07490', '-94.70440'), ('Roseland', 101, '37.28100', '-94.85020'), ('Scammon', 496, '37.27740', '-94.82460'), ('Sherman', 426, '37.25720', '-95.05690'), ('Sherwin', 3396, '37.17990', '-94.94740'), ('Skidmore', 496, '37.24020', '-94.83160'), ('Stippville', 3396, '37.22210', '-94.83740'), ('Treece', 149, '37.00080', '-94.84300'), ('Weir', 780, '37.31000', '-94.77160'), ('West Mineral', 243, '37.28410', '-94.92270')], 'partOfState': 'southeast', 'wfo': 'SGF'}, +'KSZ102': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bendena', 0, '39.74220', '-95.18080'), ('Denton', 186, '39.73160', '-95.26980'), ('Doniphan', 0, '39.64100', '-95.08090'), ('Elwood', 1145, '39.75390', '-94.87220'), ('Fanning', 0, '39.83460', '-95.16060'), ('Highland', 942, '39.86000', '-95.26940'), ('Leona', 88, '39.78580', '-95.32190'), ('Severance', 108, '39.76690', '-95.24970'), ('Troy', 1054, '39.78320', '-95.08860'), ('Wathena', 1348, '39.75910', '-94.94910'), ('White Cloud', 239, '39.97640', '-95.29720')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KSZ103': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Basehor', 2238, '39.14170', '-94.93830'), ('Easton', 362, '39.34540', '-95.11630'), ('Fort Leavenworth', 35420, '39.35800', '-94.91990'), ('Jarbalo', 0, '39.20230', '-95.06670'), ('Lansing', 9199, '39.24820', '-94.90000'), ('Leavenworth', 35420, '39.31110', '-94.92220'), ('Linwood', 374, '39.00000', '-95.03890'), ('Lowemont', 0, '39.38070', '-95.05530'), ('Reno', 0, '39.05000', '-95.11990'), ('Tonganoxie', 2728, '39.10970', '-95.08750')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KSZ104': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Bonner Springs', 6768, '39.05600', '-94.88150'), ('Edwardsville', 4146, '39.06100', '-94.81860'), ('Kansas City Kansas', 146866, '39.11450', '-94.62700'), ('Piper', 0, '39.14290', '-94.86150')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'KSZ105': {'fullStateName': 'Kansas', 'state': 'KS', 'cities': [('Clearview City', 0, '38.94510', '-95.00200'), ('De Soto', 4561, '38.97910', '-94.96840'), ('Edgerton', 1440, '38.76480', '-95.00780'), ('Fairway', 3952, '39.02230', '-94.63170'), ('Gardner', 9396, '38.81230', '-94.92700'), ('Holliday', 0, '39.03890', '-94.80620'), ('Lake Quivira', 932, '39.04040', '-94.76800'), ('Leawood', 27656, '38.96670', '-94.61670'), ('Lenexa', 40238, '38.95360', '-94.73330'), ('Merriam', 11008, '39.02360', '-94.69180'), ('Mission', 9727, '39.02670', '-94.65670'), ('Mission Hills', 3593, '39.01360', '-94.61640'), ('Mission Woods', 165, '39.03320', '-94.61280'), ('Olathe', 92962, '38.88690', '-94.81450'), ('Overland Park', 149080, '38.98220', '-94.67060'), ('Prairie Village', 23186, '38.99170', '-94.63590'), ('Roeland Park', 6817, '39.03590', '-94.63750'), ('Shawnee', 47996, '39.00900', '-94.81200'), ('Spring Hill', 2727, '38.74300', '-94.82500'), ('Stanley', 149080, '38.85400', '-94.66700'), ('Stillwell', 0, '38.76920', '-94.65650'), ('Westwood', 1533, '39.03990', '-94.61700'), ('Westwood Hills', 378, '39.03910', '-94.61060')], 'partOfState': 'east central', 'wfo': 'EAX'}, +'KYZ001': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Boundurant', 2560, '36.52330', '-89.31970'), ('Fulton', 2775, '36.51250', '-88.88120'), ('Hickman', 2560, '36.56290', '-89.18780')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ002': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Clinton', 1415, '36.66610', '-88.99400'), ('Columbus', 229, '36.75950', '-89.10180')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ003': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arlington', 395, '36.79010', '-89.01230'), ('Bardwell', 799, '36.87260', '-89.01000')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ004': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Barlow', 715, '37.05070', '-89.04510'), ('Blandville', 99, '36.94350', '-88.96460'), ('Kevil', 574, '37.08490', '-88.88510'), ('La Center', 1038, '37.07480', '-88.97410'), ('Lovelaceville', 574, '36.96860', '-88.83080'), ('Wickliffe', 794, '36.96630', '-89.08150')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ005': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Lone Oak', 454, '37.03610', '-88.66610'), ('Paducah', 26307, '37.07260', '-88.63600'), ('Reidland', 4353, '37.00760', '-88.52560')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ006': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Fancy Farm', 581, '36.75940', '-88.79280'), ('Lowes', 3733, '36.88550', '-88.77380'), ('Mayfield', 10349, '36.73630', '-88.64570'), ('Symsonia', 4353, '36.90460', '-88.51000'), ('Water Valley', 316, '36.56830', '-88.81080'), ('Wingo', 581, '36.64190', '-88.73790')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ007': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Carrsville', 64, '37.39770', '-88.37320'), ('Grand Rivers', 343, '37.00570', '-88.23590'), ('Ledbetter', 1700, '37.04810', '-88.49720'), ('Salem', 769, '37.26550', '-88.23950'), ('Smithland', 401, '37.13780', '-88.40330')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ008': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aurora', 564, '36.77660', '-88.14410'), ('Benton', 4197, '36.85290', '-88.35810'), ('Brewers', 4197, '36.77130', '-88.43880'), ('Calvert City', 2701, '37.03330', '-88.35290'), ('Hardin', 564, '36.76430', '-88.30150')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ009': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Harris Grove', 14950, '36.57000', '-88.42770'), ('Hazel', 440, '36.50540', '-88.32600'), ('Kirksey', 14950, '36.68170', '-88.42670'), ('Murray', 14950, '36.61150', '-88.31570'), ('New Concord', 14950, '36.59640', '-88.06980')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ010': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Dycusburg', 39, '37.16000', '-88.18490'), ('Marion', 3196, '37.33150', '-88.07920')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ011': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Eddyville', 2350, '37.07530', '-88.07930'), ('Kuttawa', 596, '37.06190', '-88.10960')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ012': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Cadiz', 2373, '36.86970', '-87.82330'), ('Canton', 2373, '36.79880', '-87.96080'), ('Linton', 2373, '36.68660', '-87.91860'), ('Rockcastle', 2373, '36.89970', '-87.98720')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ013': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Fredonia', 420, '37.20910', '-88.05880'), ('Fryer', 3611, '37.26220', '-87.81970'), ('Princeton', 6536, '37.10700', '-87.88470')], 'partOfState': 'western', 'wfo': 'PAH'}, +'KYZ014': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Breckinridge Center', 1874, '37.68270', '-87.86310'), ('Morganfield', 3494, '37.68420', '-87.90690'), ('Sturgis', 2030, '37.54590', '-87.98730'), ('Uniontown', 1064, '37.77330', '-87.93220'), ('Waverly', 297, '37.70970', '-87.81530')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYZ015': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Clay', 1179, '37.47690', '-87.82040'), ('Dixon', 632, '37.51720', '-87.69070'), ('Providence', 3611, '37.39920', '-87.75020'), ('Sebree', 1558, '37.60400', '-87.52860'), ('Slaughters', 238, '37.49130', '-87.50120'), ('Wheatcroft', 173, '37.48930', '-87.86120')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYZ016': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Dawson Springs', 2980, '37.17270', '-87.68860'), ('Earlington', 1649, '37.27340', '-87.51550'), ('Hanson', 625, '37.41740', '-87.47210'), ('Madisonville', 19307, '37.33660', '-87.50540'), ('Mortons Gap', 952, '37.23710', '-87.47180'), ('Nebo', 220, '37.38440', '-87.64140'), ('Nortonville', 1264, '37.18630', '-87.45740'), ('St. Charles', 309, '37.18800', '-87.55690'), ('White Plains', 800, '37.18770', '-87.38640')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYZ017': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Crofton', 838, '37.04810', '-87.48340'), ('Fort Campbell North', 14338, '36.65360', '-87.45970'), ('Hawkins', 2980, '37.02910', '-87.65050'), ('Herndon', 193, '36.71290', '-87.60120'), ('Hopkinsville', 30089, '36.85440', '-87.49090'), ('Lafayette', 193, '36.66010', '-87.65820'), ('Oak Grove', 7064, '36.66800', '-87.42730'), ('Pembroke', 797, '36.77400', '-87.35880')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'KYZ018': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Corydon', 744, '37.73970', '-87.70650'), ('Hebbardsville', 2880, '37.77610', '-87.37520'), ('Henderson', 27373, '37.83990', '-87.58200')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYZ019': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Masonville', 1119, '37.67310', '-87.03450'), ('Moseleyville', 54067, '37.66300', '-87.19330'), ('Owensboro', 54067, '37.75930', '-87.11930'), ('Whitesville', 632, '37.68390', '-86.86980')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYZ020': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Calhoun', 836, '37.54120', '-87.25920'), ('Island', 435, '37.44270', '-87.14760'), ('Livermore', 1482, '37.49160', '-87.13410'), ('Sacramento', 517, '37.41670', '-87.26710')], 'partOfState': 'northwest', 'wfo': 'PAH'}, +'KYZ021': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bremen', 365, '37.36110', '-87.21900'), ('Central City', 5893, '37.29550', '-87.12870'), ('Drakesboro', 627, '37.21650', '-87.04980'), ('Greenville', 4398, '37.20670', '-87.17850'), ('Powderly', 846, '37.23540', '-87.16230'), ('South Carrollton', 184, '37.33640', '-87.14040')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'KYZ022': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Allegre', 1984, '36.92860', '-87.21720'), ('Allensville', 189, '36.71710', '-87.06840'), ('Clifty', 1984, '36.99520', '-87.14770'), ('Elkton', 1984, '36.81010', '-87.15800'), ('Guthrie', 1469, '36.64740', '-87.17070'), ('Trenton', 419, '36.72280', '-87.26320')], 'partOfState': 'south central', 'wfo': 'PAH'}, +'KYZ023': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adair', 0, '37.95061', '-86.82666'), ('Arrington Corner', 0, '37.77478', '-86.74860'), ('Cabot', 0, '37.68867', '-86.65332'), ('Chambers', 0, '37.83728', '-86.78527'), ('Dukes', 1256, '37.82478', '-86.69832'), ('Easton', 0, '37.70617', '-86.68165'), ('Floral', 0, '37.78672', '-86.81082'), ('Goering', 0, '37.80089', '-86.76165'), ('Hawesville', 971, '37.90006', '-86.75499'), ('Lewisport', 1639, '37.93700', '-86.90221'), ('Patesville', 1256, '37.78200', '-86.71888'), ('Pellville', 632, '37.75227', '-86.81360'), ('Petri', 0, '37.92644', '-86.80416'), ('Roseville', 0, '37.71728', '-86.75499'), ('Skillman', 0, '37.89283', '-86.67165'), ('Sunny Corner', 0, '37.85228', '-86.66971'), ('Victoria Crossroads', 0, '37.74783', '-86.67776'), ('Waitman', 0, '37.90811', '-86.95083'), ('Weberstown', 0, '37.77033', '-86.77888')], 'partOfState': 'northwest', 'wfo': 'LMK'}, +'KYZ024': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ammons', 0, '37.95117', '-86.49387'), ('Axtel', 0, '37.64422', '-86.47581'), ('Basin Spring', 0, '37.84201', '-86.30664'), ('Bewleyville', 0, '37.84006', '-86.24442'), ('Big Spring', 170, '37.79923', '-86.15219'), ('Buras', 0, '37.70173', '-86.31609'), ('Cannons Point', 0, '37.58394', '-86.46137'), ('Cave Spring', 0, '37.64950', '-86.42414'), ('Centerview', 0, '37.63089', '-86.30859'), ('Chenaultt', 0, '38.01506', '-86.51803'), ('Clifton Mills', 0, '37.86728', '-86.38803'), ('Cloverport', 1256, '37.83339', '-86.63276'), ('Cobblers Knob', 0, '37.56811', '-86.38553'), ('Constantine', 794, '37.67534', '-86.23636'), ('Corners', 0, '37.79479', '-86.23025'), ('Custer', 1257, '37.73840', '-86.25469'), ('Dempster', 0, '37.62533', '-86.55970'), ('Dyer', 1257, '37.70617', '-86.22136'), ('Fairfield', 72, '37.67145', '-86.28720'), ('Fisher', 0, '37.57644', '-86.36831'), ('Frymire', 0, '37.96062', '-86.39636'), ('Garfield', 2345, '37.78284', '-86.35748'), ('Glen Dean', 2345, '37.65339', '-86.54109'), ('Graysville', 0, '37.77228', '-86.29747'), ('Hardinsburg', 2345, '37.78006', '-86.46053'), ('Harned', 2345, '37.75173', '-86.41359'), ('Hensley', 1738, '37.79201', '-86.33497'), ('High Plains', 0, '37.77312', '-86.21108'), ('High Plains Corner', 0, '37.77340', '-86.17191'), ('Hinton Hills', 0, '37.62339', '-86.46109'), ('Holt', 0, '37.91089', '-86.58109'), ('Hudson', 794, '37.65117', '-86.27664'), ('Irvington', 1257, '37.88034', '-86.28386'), ('Kingswood', 0, '37.71895', '-86.40859'), ('Kirk', 0, '37.72395', '-86.47859'), ('Locust Hill', 0, '37.72784', '-86.35664'), ('Lodiburg', 0, '37.90451', '-86.40275'), ('Madrid', 6139, '37.61228', '-86.34220'), ('Manning Crossing', 0, '37.99590', '-86.48109'), ('Mattingly', 0, '37.76283', '-86.60193'), ('McCoy', 0, '37.61867', '-86.38164'), ('McDaniels', 2345, '37.60672', '-86.42498'), ('McQuady', 2345, '37.70839', '-86.51887'), ('Mook', 0, '37.67339', '-86.35220'), ('Mooleyville', 57, '38.02117', '-86.46387'), ('Mystic', 0, '37.89701', '-86.44276'), ('Raymond', 0, '37.93895', '-86.36525'), ('Rockvale', 0, '37.63255', '-86.57665'), ('Rosetta', 0, '37.79673', '-86.27303'), ('Sample', 0, '37.90451', '-86.48109'), ('Se Ree', 0, '37.68339', '-86.37970'), ('Stephensport', 1256, '37.91256', '-86.52720'), ('Tar Fork', 0, '37.72061', '-86.60165'), ('Union Star', 2345, '37.93840', '-86.45164'), ('Vanzant', 0, '37.64311', '-86.61248'), ('Webster', 1257, '37.88895', '-86.33886'), ('Westview', 0, '37.70006', '-86.40914'), ('Woodrow', 0, '37.74145', '-86.31970')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ025': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Andyville', 57, '38.03395', '-86.37248'), ('Battletown', 30, '38.06396', '-86.29386'), ('Beechland', 0, '38.08312', '-86.36081'), ('Brandenburg', 2049, '37.99896', '-86.16941'), ('Brandenburg Station', 0, '37.96896', '-86.14052'), ('Buck Grove', 0, '37.91896', '-86.12775'), ('Cedar Flat', 0, '38.11812', '-86.32164'), ('Concordia', 0, '38.05895', '-86.42803'), ('Ekron', 170, '37.92923', '-86.17941'), ('Flaherty', 4169, '37.83646', '-86.06552'), ('Garrett', 0, '37.89785', '-86.11302'), ('Grahamton', 0, '37.90285', '-86.02552'), ('Guston', 170, '37.89284', '-86.22192'), ('Haysville', 0, '37.90340', '-86.24247'), ('Hillgrove', 0, '37.87923', '-86.16386'), ('Hughes Landing', 0, '37.96479', '-86.02997'), ('Liberty', 0, '38.02812', '-86.31914'), ('Lodale', 0, '38.04312', '-86.28081'), ('Maples Corner', 0, '37.83312', '-86.13358'), ('Midway', 0, '37.95201', '-86.23858'), ('Muldraugh', 1298, '37.93702', '-85.99163'), ('Payneville', 1257, '37.98951', '-86.31303'), ('Pilcher Landing', 0, '37.99202', '-86.01746'), ('Rhodelia', 57, '38.00701', '-86.42053'), ('Roberta', 0, '38.11062', '-86.43776'), ('Rock Haven', 0, '37.94702', '-86.05469'), ('Sirocco', 95, '37.98923', '-86.27220'), ('Wolf Creek', 57, '38.10284', '-86.38970')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ026': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adaburg', 0, '37.59172', '-86.84777'), ('Aetnaville', 0, '37.67283', '-86.79054'), ('Arnold', 0, '37.39144', '-86.65888'), ('Askin', 0, '37.63839', '-86.63998'), ('Baizetown', 2544, '37.37060', '-86.71082'), ('Beaver Dam', 3033, '37.40199', '-86.87583'), ('Beda', 2571, '37.50783', '-86.94944'), ('Bells Run', 0, '37.59505', '-86.92833'), ('Buford', 0, '37.56422', '-86.98388'), ('Centertown', 416, '37.41727', '-86.99611'), ('Ceralvo', 0, '37.36504', '-87.03138'), ('Coffman', 0, '37.46310', '-87.10194'), ('Cool Springs', 417, '37.29338', '-86.88194'), ('Cromwell', 3033, '37.34033', '-86.78805'), ('Deanefield', 632, '37.65950', '-86.80693'), ('Dogwalk', 0, '37.40477', '-86.63026'), ('Dukehurst', 0, '37.51088', '-86.85777'), ('Dundee', 531, '37.55894', '-86.77277'), ('Ellmitch', 0, '37.62950', '-86.69971'), ('Equality', 0, '37.39588', '-87.06583'), ('Flint Springs', 0, '37.34338', '-86.71360'), ('Fordsville', 531, '37.63616', '-86.71749'), ('Hartford', 2571, '37.45116', '-86.90916'), ('Haynesville', 0, '37.68505', '-86.75666'), ('Heflin', 416, '37.50671', '-87.00694'), ('Herbert', 0, '37.71866', '-86.79943'), ('Highview', 0, '37.30588', '-86.84444'), ('Horse Branch', 0, '37.45588', '-86.67665'), ('Horton', 0, '37.43560', '-86.79888'), ('Jingo', 0, '37.49866', '-86.80832'), ('Ken Wye', 0, '37.34560', '-86.95333'), ('Kirtley', 0, '37.43699', '-87.10111'), ('Magan', 0, '37.60033', '-86.79943'), ('Matanzas', 0, '37.45060', '-87.05861'), ('McHenry', 417, '37.38199', '-86.92249'), ('Mount Pleasant', 0, '37.41116', '-86.75110'), ('Narrows', 0, '37.56727', '-86.72999'), ('Nineteen', 0, '37.32754', '-86.94666'), ('No Creek', 0, '37.48060', '-86.95833'), ('Oak Grove', 0, '37.34421', '-86.75471'), ('Olaton', 531, '37.52588', '-86.68749'), ('Pleasant Ridge', 0, '37.59838', '-86.98722'), ('Prentiss', 3033, '37.33477', '-86.84055'), ('Ralph', 0, '37.61811', '-86.83749'), ('Rob Roy', 0, '37.38699', '-86.79832'), ('Rockport', 334, '37.33393', '-86.99611'), ('Rosine', 3033, '37.45033', '-86.74138'), ('Sandefur Crossing', 0, '37.41588', '-86.83249'), ('Scottown', 0, '37.32310', '-86.96527'), ('Select', 0, '37.35977', '-86.74499'), ('Shreve', 0, '37.57866', '-86.62887'), ('Shultztown', 0, '37.29227', '-86.83777'), ('Simmons', 0, '37.35755', '-86.94222'), ('Smallhous', 0, '37.38004', '-87.09361'), ('Sulphur Springs', 0, '37.53561', '-86.77666'), ('Sunnydale', 0, '37.53616', '-86.81943'), ('Taffy', 0, '37.55394', '-86.89166'), ('White Run', 0, '37.44477', '-86.64193'), ('Windy Hill', 0, '37.41977', '-86.70527'), ('Wysox', 0, '37.27310', '-86.90777')], 'partOfState': 'northwest', 'wfo': 'LMK'}, +'KYZ027': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Anneta', 0, '37.37088', '-86.24525'), ('Big Clifty', 794, '37.54561', '-86.15358'), ('Black Rock', 0, '37.46061', '-86.35498'), ('Broad Ford', 0, '37.38144', '-86.07941'), ('Caneyville', 627, '37.42422', '-86.48831'), ('Clarkson', 794, '37.49533', '-86.22136'), ('Concord', 0, '37.56089', '-86.45970'), ('Conoloway', 0, '37.36811', '-86.21553'), ('Do Stop', 0, '37.43200', '-86.55054'), ('Duff', 0, '37.54978', '-86.41303'), ('Dug Hill', 0, '37.35311', '-86.14858'), ('Eveleigh', 0, '37.58756', '-86.32748'), ('Falling Branch', 0, '37.59478', '-86.49720'), ('Fragrant', 0, '37.45422', '-86.16969'), ('Grayson Springs', 794, '37.45922', '-86.22442'), ('Hanging Rock', 0, '37.55256', '-86.32220'), ('Hickory Corner', 0, '37.58728', '-86.53359'), ('Hilltop', 0, '37.39505', '-86.10719'), ('Hites Falls', 0, '37.54228', '-86.59693'), ('Horntown', 0, '37.47672', '-86.12636'), ('Huffman', 0, '37.39005', '-86.21914'), ('Iberia', 794, '37.37311', '-86.16608'), ('Indian Valley', 0, '37.57478', '-86.44026'), ('Johnson Crossroads', 0, '37.39866', '-86.20164'), ('Jugville', 0, '37.46311', '-86.59887'), ('Lacon', 0, '37.49228', '-86.08414'), ('Leitchfield', 6139, '37.48005', '-86.29386'), ('Lilac', 0, '37.54894', '-86.34414'), ('Linwood', 0, '37.34200', '-86.17608'), ('Lone Oak', 0, '37.42561', '-86.07164'), ('Meredith', 794, '37.40255', '-86.23692'), ('Millerstown', 654, '37.44533', '-86.05080'), ('Millwood', 627, '37.45033', '-86.39053'), ('Moutardier', 0, '37.33505', '-86.24775'), ('Pearman', 0, '37.37450', '-86.10858'), ('Peonia', 794, '37.41561', '-86.21914'), ('Peth', 0, '37.40700', '-86.43665'), ('Pine Knob', 627, '37.48339', '-86.51193'), ('Pine Springs', 0, '37.35200', '-86.09469'), ('Ponderosa', 0, '37.34061', '-86.19608'), ('Post', 0, '37.47311', '-86.47554'), ('Ready', 627, '37.37172', '-86.47137'), ('Rock Creek', 0, '37.43200', '-86.15803'), ('Royal', 0, '37.44089', '-86.09525'), ('Sadler', 0, '37.35783', '-86.33414'), ('Saint Paul', 0, '37.55089', '-86.19358'), ('Short Creek', 627, '37.52783', '-86.47442'), ('Shrewsbury', 627, '37.37894', '-86.38470'), ('Skaggstown', 0, '37.43367', '-86.18664'), ('Snap', 0, '37.40311', '-86.15608'), ('South', 627, '37.32922', '-86.36470'), ('Spike', 0, '37.40700', '-86.08469'), ('Steff', 0, '37.42977', '-86.60554'), ('Tar Hill', 0, '37.56561', '-86.21831'), ('Tousey', 0, '37.51450', '-86.54776'), ('Wax', 794, '37.35422', '-86.12219'), ('West Clifty', 0, '37.51339', '-86.18830'), ('Wheelers Mill', 0, '37.39394', '-86.02608'), ('Windyville', 921, '37.36033', '-86.41887'), ('Yeaman', 627, '37.51783', '-86.57748')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ028': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Booth', 424, '37.80534', '-85.75163'), ('Cecilia', 22542, '37.66590', '-85.95663'), ('Colesburg', 1801, '37.78479', '-85.77385'), ('Crest', 0, '37.75006', '-85.84357'), ('Dietz Acres', 0, '37.86562', '-85.94996'), ('Eastview', 350, '37.58895', '-86.05580'), ('Elizabethtown', 22542, '37.69395', '-85.85913'), ('Flint Hill', 0, '37.49839', '-85.99052'), ('Fort Knox', 13140, '37.89404', '-85.94652'), ('Four Corners', 0, '37.74895', '-86.08802'), ('Franklin Cross Roads', 0, '37.67006', '-86.01496'), ('Gaithers', 0, '37.65756', '-85.89968'), ('Glendale', 350, '37.60173', '-85.90552'), ('Hansbrough', 0, '37.63451', '-85.99358'), ('Harcourt', 0, '37.55589', '-86.01219'), ('Hardin Springs', 0, '37.60950', '-86.25636'), ('Howard', 0, '37.98896', '-85.96080'), ('Howe Valley', 4169, '37.68728', '-86.08830'), ('Indian Hills', 0, '37.70895', '-85.84607'), ('Kraft', 0, '37.71701', '-85.97080'), ('Limp', 0, '37.59228', '-86.19747'), ('Long View', 0, '37.78951', '-85.91302'), ('Nolin', 0, '37.56117', '-85.90274'), ('Perryville', 0, '37.72951', '-86.04858'), ('Pierce Mill', 0, '37.64062', '-86.19997'), ('Radcliff', 21961, '37.84035', '-85.94913'), ('Red Hill', 0, '37.85562', '-85.96746'), ('Rineyville', 4169, '37.74951', '-85.96996'), ('Rogersville', 0, '37.82034', '-85.92885'), ('Saint John', 0, '37.69840', '-85.96635'), ('Seven Corners', 0, '37.48200', '-85.99274'), ('Solway', 0, '37.62117', '-86.17664'), ('Sonora', 350, '37.52423', '-85.89302'), ('Spurrier', 0, '37.47450', '-86.05413'), ('Star Mills', 0, '37.59923', '-85.98024'), ('Stephensburg', 22542, '37.62478', '-86.01885'), ('Summit', 0, '37.56895', '-86.08108'), ('Tunnel Hills', 0, '37.73284', '-85.83135'), ('Vertrees', 4169, '37.69645', '-86.13441'), ('Vine Grove', 4169, '37.81007', '-85.98135'), ('West Point', 1100, '37.99952', '-85.94357'), ('White Mills', 350, '37.55534', '-86.03219'), ('White Mills Junction', 0, '37.57756', '-86.03552'), ('Younger Creek', 0, '37.75673', '-85.72357')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ029': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bardstown Junction', 8334, '37.94006', '-85.69940'), ('Barrallton', 0, '38.03896', '-85.79885'), ('Beech Grove', 0, '37.93396', '-85.75579'), ('Belmont', 0, '37.89645', '-85.71357'), ('Brooks', 0, '38.06118', '-85.70968'), ('Brownington', 0, '37.94840', '-85.58523'), ('Cedar Grove', 0, '37.97229', '-85.63107'), ('Clermont', 8334, '37.92979', '-85.65274'), ('Cupio', 0, '38.00618', '-85.87830'), ('Fox Chase', 0, '38.04562', '-85.69274'), ('Gap In Knob', 0, '38.01673', '-85.70301'), ('Hebron Estates', 0, '38.04951', '-85.66607'), ('Hobbs', 0, '37.92729', '-85.62523'), ('Hunters Hollow', 0, '38.07729', '-85.69218'), ('Lebanon Junction', 1801, '37.83451', '-85.73190'), ('Lotus', 0, '37.91895', '-85.59662'), ('Mount Washington', 8485, '38.05006', '-85.54579'), ('Pitts Point', 0, '37.91673', '-85.82607'), ('Ridgetop', 0, '37.90701', '-85.62107'), ('Scuffletown', 0, '37.87256', '-85.64857'), ('Shepherdsville', 8334, '37.98840', '-85.71579'), ('Smithville', 0, '38.01312', '-85.51412'), ('Solitude', 0, '37.97312', '-85.54023'), ('Stites', 0, '38.01674', '-85.90469'), ('Whitfield', 0, '38.09618', '-85.47051'), ('Zoneton', 0, '38.06340', '-85.67051')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ030': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Anchorage', 2264, '38.27020', '-85.53810'), ('Fairdale', 7658, '38.11180', '-85.75750'), ('Fern Creek', 17870, '38.15830', '-85.59670'), ('Fisherville', 13140, '38.19120', '-85.46390'), ('Highview', 15161, '38.14020', '-85.63500'), ('Jeffersontown', 26633, '38.20560', '-85.57090'), ('Louisville', 256231, '38.22480', '-85.74120'), ('Lyndon', 9369, '38.26440', '-85.58930'), ('Middletown', 5744, '38.24250', '-85.51960'), ('Okolona', 17807, '38.13900', '-85.68600'), ('Pleasure Ridge Park', 25131, '38.15370', '-85.85290'), ('Prospect', 4657, '38.34780', '-85.60930'), ('Routt', 13140, '38.13400', '-85.46640'), ('Shively', 15157, '38.19590', '-85.81320'), ('St. Matthews', 15852, '38.24920', '-85.63780'), ('Thixton', 13140, '38.10070', '-85.56540'), ('Valley Station', 22946, '38.10350', '-85.85860')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ031': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ballardsville', 0, '38.36146', '-85.34579'), ('Belknap Beach', 0, '38.38284', '-85.62330'), ('Brownsboro', 1999, '38.35618', '-85.49829'), ('Buckner', 4000, '38.38368', '-85.43996'), ('Cedar Point', 0, '38.40784', '-85.47774'), ('Centerfield', 0, '38.35007', '-85.40746'), ('Crestwood', 0, '38.32424', '-85.47246'), ('Demplytown', 0, '38.38451', '-85.47440'), ('Floydsburg', 0, '38.31118', '-85.45968'), ('Goshen', 907, '38.40312', '-85.57413'), ('Greenhaven', 0, '38.44534', '-85.45413'), ('Halls Landing', 0, '38.45173', '-85.53079'), ('Harmony Village', 0, '38.40451', '-85.61996'), ('La Grange', 5676, '38.40757', '-85.37885'), ('Liro', 0, '38.40118', '-85.33857'), ('Oldham', 0, '38.49756', '-85.42107'), ('Orchard Grass Hills', 0, '38.32368', '-85.52135'), ('Park Lake', 0, '38.34507', '-85.47329'), ('Pewee Valley', 1436, '38.31062', '-85.48746'), ('River Bluff', 0, '38.37062', '-85.61163'), ('Russell Corner', 0, '38.45145', '-85.41162'), ('Skylight', 907, '38.43257', '-85.52163'), ('Westport', 5676, '38.47895', '-85.47496')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ032': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bedford', 677, '38.59256', '-85.31773'), ('Milton', 525, '38.72367', '-85.36940'), ('Monitor', 0, '38.65478', '-85.26634'), ('Mount Pleasant', 0, '38.61312', '-85.38385'), ('Providence', 0, '38.57451', '-85.22107'), ('Trout', 0, '38.63867', '-85.40885'), ('Wises Landing', 0, '38.57312', '-85.40829')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ033': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bellview', 0, '38.35618', '-85.14301'), ('Bethlehem', 869, '38.40062', '-85.06940'), ('Campbellsburg', 705, '38.52368', '-85.20273'), ('Defoe', 869, '38.34090', '-85.05440'), ('Delville', 0, '38.47757', '-85.09745'), ('Drennon Springs', 0, '38.50784', '-85.05384'), ('Eminence', 2231, '38.37007', '-85.18051'), ('Fallis', 0, '38.43007', '-84.93523'), ('Franklinton', 0, '38.45257', '-85.05551'), ('Gest', 0, '38.41757', '-84.88273'), ('Jericho', 0, '38.40507', '-85.28996'), ('Lacie', 0, '38.52701', '-85.12940'), ('Lockport', 89, '38.43590', '-84.96717'), ('New Castle', 919, '38.43340', '-85.16968'), ('North Pleasureville', 0, '38.35979', '-85.10718'), ('Orville', 0, '38.39840', '-84.91551'), ('Pendleton', 0, '38.46229', '-85.30357'), ('Pleasureville', 869, '38.34590', '-85.11523'), ('Port Royal', 215, '38.55534', '-85.08023'), ('Slabtown', 0, '38.43285', '-85.00523'), ('Sligo', 5676, '38.48895', '-85.31329'), ('Smithfield', 102, '38.38673', '-85.25690'), ('Sulphur', 705, '38.49479', '-85.27357'), ('Tarascon', 0, '38.41146', '-85.30912'), ('Turners Station', 0, '38.55562', '-85.16773')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ034': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bagdad', 869, '38.26229', '-85.05773'), ('Chestnut Grove', 102, '38.30007', '-85.26385'), ('Clay Village', 0, '38.19257', '-85.10718'), ('Conner', 0, '38.22368', '-85.39024'), ('Cropper', 869, '38.31229', '-85.11329'), ('Elmburg', 0, '38.32118', '-85.07134'), ('Finchville', 1281, '38.15368', '-85.31273'), ('Graefenburg', 27741, '38.15590', '-85.01356'), ('Harrisonville', 9014, '38.08840', '-85.06718'), ('Hatton', 0, '38.22590', '-85.00662'), ('Hemp Ridge', 0, '38.14840', '-85.11884'), ('Hooper', 0, '38.17479', '-85.15690'), ('Jacksonville', 0, '38.27424', '-85.01301'), ('Joyes', 0, '38.20979', '-85.29107'), ('Junte', 0, '38.08118', '-85.09773'), ('L S Park', 0, '38.19562', '-85.39968'), ('Middletown Heights', 0, '38.21590', '-85.24218'), ('Montclair', 0, '38.22007', '-85.32885'), ('Mulberry', 0, '38.26507', '-85.13412'), ('Old Christianburg', 0, '38.28146', '-85.08495'), ('Olive Branch', 0, '38.12562', '-85.26495'), ('Peytona', 10085, '38.18118', '-85.06106'), ('Shelbyville', 10085, '38.21201', '-85.22357'), ('Simpsonville', 1281, '38.22257', '-85.35523'), ('Southville', 10085, '38.11007', '-85.18190'), ('Todds Point', 1281, '38.28424', '-85.34579'), ('Veachland', 0, '38.21146', '-85.19746'), ('Veech', 0, '38.12007', '-85.32107'), ('Waddy', 10085, '38.13702', '-85.07440')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ035': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Benson', 0, '38.20702', '-84.95940'), ('Big Eddy', 0, '38.17007', '-84.85828'), ('Bon Air Hills', 0, '38.19285', '-84.82523'), ('Bridgeport', 0, '38.16007', '-84.95106'), ('Broadville Manor', 0, '38.16868', '-84.93134'), ('Bryant', 0, '38.23924', '-84.95106'), ('Elmville', 0, '38.34118', '-84.76134'), ('Elsinore', 0, '38.22063', '-84.79606'), ('Evergreen', 0, '38.13563', '-84.92578'), ('Farmdale', 0, '38.10952', '-84.91662'), ('Flag Fork', 0, '38.32146', '-84.94828'), ('Frankfort', 27741, '38.20091', '-84.87328'), ('Harvieland', 0, '38.25424', '-84.91273'), ('Indian Hills', 0, '38.21702', '-84.83078'), ('Jett', 0, '38.17868', '-84.81439'), ('Kennebec', 0, '38.20702', '-84.91301'), ('Ottusville', 0, '38.32285', '-84.89551'), ('Peaks Mill', 0, '38.29840', '-84.81245'), ('Polsgrove', 0, '38.34813', '-84.88495'), ('Slickway', 0, '38.18702', '-84.79912'), ('Swallowfield', 0, '38.33924', '-84.84856'), ('Switzer', 0, '38.25417', '-84.75444'), ('Woodlake', 0, '38.21063', '-84.75356')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ036': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Biddle', 0, '38.34952', '-84.60744'), ('Boydtown', 0, '38.28424', '-84.50272'), ('Clabber Bottom', 0, '38.19369', '-84.52439'), ('Davis', 263, '38.37424', '-84.47216'), ('Delaplain', 0, '38.27368', '-84.54855'), ('Double Culvert', 0, '38.35952', '-84.56411'), ('Duval', 0, '38.24646', '-84.64133'), ('Georgetown', 18080, '38.20980', '-84.55883'), ('Great Crossing', 0, '38.21452', '-84.60522'), ('Herdon', 0, '38.17841', '-84.59383'), ('Josephine', 0, '38.39868', '-84.64994'), ('Lancelot Estates', 0, '38.18341', '-84.62328'), ('Longlick', 0, '38.34257', '-84.65828'), ('Mallard Point', 0, '38.31785', '-84.57605'), ('Minorsville', 0, '38.32952', '-84.70356'), ('Moon Lake Estates', 0, '38.28730', '-84.56133'), ('Muddy Ford', 0, '38.30924', '-84.50244'), ('Newtown', 18080, '38.22035', '-84.46994'), ('New Zion', 18080, '38.17924', '-84.48855'), ('Oxford', 18080, '38.26841', '-84.50300'), ('Paynes Depot', 0, '38.14202', '-84.62355'), ('Porter', 0, '38.38202', '-84.60522'), ('Rogers Gap', 0, '38.30452', '-84.53605'), ('Sadieville', 263, '38.38924', '-84.53744'), ('Shiff', 0, '38.24063', '-84.59605'), ('Skinnersburg', 0, '38.30618', '-84.64217'), ('Stamping Ground', 566, '38.27174', '-84.68634'), ('Stone Hedge Estates', 0, '38.24868', '-84.57022'), ('Stonewall', 0, '38.43924', '-84.56467'), ('Suterville', 0, '38.36813', '-84.70356'), ('Turkey Foot', 878, '38.33841', '-84.51105'), ('Watkinsville', 0, '38.24313', '-84.72634'), ('White Sulphur', 0, '38.20507', '-84.70217'), ('Zion Hill', 2447, '38.12008', '-84.63772')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ037': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alberta', 0, '38.40007', '-84.47411'), ('Antioch', 0, '38.56646', '-84.29271'), ('Berry', 310, '38.52063', '-84.38438'), ('Boyd', 0, '38.55063', '-84.39411'), ('Breckinridge', 6258, '38.44146', '-84.37855'), ('Broadwell', 0, '38.32869', '-84.35910'), ('Buena Vista', 0, '38.43646', '-84.16799'), ('Claysville', 0, '38.51924', '-84.18521'), ('Colemansville', 0, '38.52785', '-84.40688'), ('Colville', 6258, '38.36535', '-84.21021'), ('Connersville', 263, '38.38007', '-84.41272'), ('Cynthiana', 6258, '38.39035', '-84.29410'), ('Garnett', 0, '38.45924', '-84.32744'), ('Hinton', 0, '38.45729', '-84.52939'), ('Kelat', 310, '38.52618', '-84.31216'), ('Lair', 0, '38.34202', '-84.30771'), ('Leesburg', 6258, '38.29452', '-84.41827'), ('Lees Lick', 0, '38.33591', '-84.41855'), ('Oddville', 6258, '38.45563', '-84.23882'), ('Poindexter', 0, '38.43702', '-84.30827'), ('Renaker', 0, '38.46285', '-84.42550'), ('Robinson', 0, '38.49118', '-84.34827'), ('Rutland', 0, '38.44480', '-84.45077'), ('Sunrise', 310, '38.54257', '-84.23660'), ('Venus', 0, '38.44202', '-84.19243')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ038': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Crenshaw', 0, '38.05478', '-85.46690'), ('Elk Creek', 1009, '38.10034', '-85.37107'), ('Little Mount', 1009, '38.06146', '-85.25134'), ('Mount Eden', 0, '38.05618', '-85.15106'), ('Normandy', 0, '38.09812', '-85.34273'), ('Rivals', 0, '38.09757', '-85.30440'), ('Taylorsville', 1009, '38.03173', '-85.34245'), ('Wakefield', 855, '37.97173', '-85.30801'), ('Waterford', 1009, '38.03895', '-85.43718'), ('Wilsonville', 0, '38.12729', '-85.40690'), ('Yoder', 0, '38.06062', '-85.34495')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ039': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alton', 9014, '38.08896', '-84.93495'), ('Anderson City', 0, '38.00729', '-85.02579'), ('Ashbrook', 0, '37.93202', '-85.04579'), ('Avenstoke', 0, '38.10841', '-85.00051'), ('Ballard', 0, '37.93035', '-84.99051'), ('Birdie', 0, '38.03757', '-85.01468'), ('Drydock', 0, '37.98868', '-85.02245'), ('Fairview', 0, '37.90146', '-85.10690'), ('Fox Creek', 0, '37.98785', '-84.96801'), ('Gee', 0, '38.04507', '-85.06301'), ('Glensboro', 9014, '38.00479', '-85.05995'), ('Hickory Grove', 0, '37.96730', '-84.99329'), ('Johnsonville', 304, '37.93507', '-85.10690'), ('Klondyke', 0, '37.94646', '-85.09023'), ('Lawrenceburg', 9014, '38.03730', '-84.89662'), ('McBrayer', 0, '37.97535', '-84.88551'), ('Nevin', 0, '37.94619', '-84.88328'), ('Ninevah', 0, '38.08257', '-84.87884'), ('Sinai', 0, '37.95424', '-85.02718'), ('Sparrow', 0, '37.92396', '-85.15079'), ('Stringtown', 0, '38.00813', '-84.88078'), ('Tyrone', 9014, '38.03285', '-84.83634'), ('Van Buren', 0, '37.97451', '-85.16523'), ('Wayside', 0, '38.02507', '-85.10523')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ040': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bonita', 0, '38.08591', '-84.70800'), ('Clifton', 0, '38.08619', '-84.82606'), ('Davistown', 0, '38.14146', '-84.65161'), ('Duckers', 27741, '38.16452', '-84.78384'), ('Faywood', 0, '38.10285', '-84.64161'), ('Firmantown', 0, '38.05980', '-84.68883'), ('Gaybourn', 0, '38.04285', '-84.66661'), ('McKees Crossroads', 0, '38.12091', '-84.77606'), ('Midway', 0, '38.15091', '-84.68383'), ('Millville', 27741, '38.13702', '-84.82189'), ('Milner', 0, '38.03341', '-84.80717'), ('Mortonsville', 0, '37.97202', '-84.75634'), ('Mundys Landing', 0, '37.85424', '-84.77078'), ('Nonesuch', 5905, '37.90619', '-84.75550'), ('Pinckard', 0, '37.97730', '-84.68161'), ('Pisgah', 0, '38.05674', '-84.65494'), ('Troy', 5905, '37.91008', '-84.69467'), ('Versailles', 7511, '38.05258', '-84.72995'), ('Wallace', 0, '38.12119', '-84.69217')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ041': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Athens', 0, '37.94925', '-84.36410'), ('Avon', 0, '38.07174', '-84.31854'), ('Beaumont Park', 0, '38.03258', '-84.56022'), ('Bracktown', 0, '38.09480', '-84.56244'), ('Bryan Station', 0, '38.07674', '-84.41132'), ('Cadentown', 0, '38.01230', '-84.42660'), ('Cardinal Hill', 0, '38.04285', '-84.53883'), ('Centerville', 9183, '37.97897', '-84.36299'), ('Chevy Chase', 0, '38.02036', '-84.48744'), ('Chilesburg', 0, '38.00702', '-84.35966'), ('Coletown', 0, '37.92841', '-84.44327'), ('Columbus', 0, '38.03702', '-84.36549'), ('Donerail', 0, '38.14924', '-84.53494'), ('Dunbar High School', 13140, '38.01740', '-84.57520'), ('East Hickman', 0, '37.92341', '-84.47077'), ('Elk Chester', 0, '38.07202', '-84.61800'), ('Elmendorf', 0, '38.10841', '-84.40438'), ('Fayette Mall', 13140, '37.99030', '-84.52410'), ('Fenwick', 2634, '38.07869', '-84.35549'), ('Frogtown', 0, '38.03313', '-84.64967'), ('Greendale', 0, '38.10591', '-84.52550'), ('Highlands', 0, '38.08980', '-84.50827'), ('Holiday Hills', 0, '38.05174', '-84.55661'), ('Jimtown', 0, '38.18896', '-84.37438'), ('Lexington', 225366, '38.04267', '-84.45949'), ('Little Texas', 0, '38.01258', '-84.64189'), ('Loradale', 0, '38.19508', '-84.39744'), ('Mattoxtown', 0, '38.12730', '-84.45022'), ('Meadowthorpe', 0, '38.07008', '-84.52327'), ('Muir', 0, '38.10591', '-84.37716'), ('Northland', 0, '38.06563', '-84.47938'), ('South Elkhorn', 0, '37.99647', '-84.58216'), ('Spears', 19680, '37.87258', '-84.43771'), ('Spindletop Estates', 0, '38.13452', '-84.52300'), ('Thoroughbred Acres', 0, '38.08174', '-84.45494'), ('U K Arboretum', 13140, '38.01940', '-84.50660'), ('Veterans Park', 13140, '37.96250', '-84.49440'), ('Viley', 0, '38.07563', '-84.55161'), ('Walnut Hill', 0, '38.01119', '-84.38743'), ('Yarnallton', 0, '38.10619', '-84.58550')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ042': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Austerlitz', 0, '38.09063', '-84.21687'), ('Blacks Crossroads', 0, '38.25091', '-84.13826'), ('Brentsville', 0, '38.23785', '-84.28966'), ('Bunker Hill', 0, '38.16397', '-84.01298'), ('Centerville', 0, '38.22396', '-84.39133'), ('Clintonville', 16724, '38.08508', '-84.26826'), ('Currentsville', 0, '38.26091', '-84.25104'), ('Escondida', 0, '38.12619', '-84.22799'), ('Ewalt Crossroads', 0, '38.27396', '-84.29938'), ('Hutchison', 0, '38.13813', '-84.33993'), ('Jacksonville', 0, '38.27285', '-84.36577'), ('Jackstown', 0, '38.24480', '-84.05854'), ('Kiserton', 0, '38.27702', '-84.27604'), ('Little Rock', 0, '38.19397', '-84.05104'), ('Millersburg', 842, '38.30202', '-84.14743'), ('Monterey', 167, '38.17258', '-84.30882'), ('North Middletown', 562, '38.14508', '-84.11132'), ('Paris', 9183, '38.20980', '-84.25299'), ('Plum', 0, '38.17897', '-84.03132'), ('Ruddels Mills', 842, '38.30424', '-84.23799'), ('Shawhan', 0, '38.30174', '-84.27243'), ('Sidville', 0, '38.12813', '-84.25965'), ('Stony Point', 0, '38.12063', '-84.19382')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ043': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Barefoot', 0, '38.42369', '-84.11687'), ('Barterville', 0, '38.37896', '-84.06882'), ('Carlisle', 1917, '38.31202', '-84.02743'), ('East Union', 0, '38.24008', '-83.98048'), ('Ellisville', 0, '38.39091', '-84.02076'), ('Headquarters', 0, '38.35841', '-84.11437'), ('Hooktown', 842, '38.35452', '-84.15160'), ('Milltown', 0, '38.33341', '-83.84603'), ('Moorefield', 295, '38.27313', '-83.93104'), ('Morning Glory', 0, '38.40063', '-84.14771'), ('Myers', 1917, '38.35091', '-83.95326'), ('Pleasant Valley', 0, '38.37924', '-83.93798'), ('Sprout', 0, '38.30202', '-83.88659'), ('Weston', 0, '38.29702', '-83.96298')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ044': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Cowan', 278, '38.40860', '-83.89220'), ('Craintown', 3010, '38.38910', '-83.78720'), ('Dalesburg', 3010, '38.46530', '-83.67830'), ('Elizaville', 278, '38.42110', '-83.82580'), ('Ewing', 278, '38.42730', '-83.86230'), ('Fairview', 278, '38.45000', '-83.93000'), ('Flemingsburg', 3010, '38.42350', '-83.73690'), ('Flemingsburg Junction', 278, '38.45940', '-83.80780'), ('Foxport', 3010, '38.47560', '-83.59190'), ('Goddard', 3010, '38.36310', '-83.61530'), ('Grange City', 342, '38.24560', '-83.66520'), ('Hillsboro', 3010, '38.29440', '-83.65970'), ('Mount Carmel', 3010, '38.48500', '-83.63720'), ('Muses Mills', 5914, '38.35060', '-83.52750'), ('Nepton', 278, '38.43670', '-83.83530'), ('Pecks Ridge', 3010, '38.36000', '-83.80000'), ('Pleasureville', 3010, '38.47970', '-83.60330'), ('Plummers Landing', 5914, '38.32060', '-83.56080'), ('Poplar Plains', 3010, '38.36170', '-83.67500'), ('Ringos Mills', 342, '38.26640', '-83.60940'), ('Sharkey', 251, '38.23140', '-83.56030'), ('Sherburne', 278, '38.29000', '-83.81000'), ('Tilton', 3010, '38.34750', '-83.75940'), ('Wallingford', 3010, '38.40580', '-83.61250')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ045': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Balltown', 0, '37.73867', '-85.50635'), ('Bardstown', 10374, '37.80923', '-85.46690'), ('Bellwood', 0, '37.79451', '-85.54746'), ('Bloomfield', 855, '37.91034', '-85.31662'), ('Blue Gap', 0, '37.68784', '-85.56552'), ('Boston', 0, '37.78756', '-85.67274'), ('Botland', 0, '37.77645', '-85.38913'), ('Bourbon Springs', 0, '37.85117', '-85.48301'), ('Chaplin', 855, '37.89784', '-85.22134'), ('Coxs Creek', 10374, '37.89867', '-85.47357'), ('Cravens', 0, '37.80867', '-85.54274'), ('Culvertown', 0, '37.71006', '-85.53385'), ('Deatsville', 10374, '37.89701', '-85.55912'), ('East Bardstown', 0, '37.83256', '-85.40885'), ('Fairfield', 0, '37.93367', '-85.38357'), ('Gethsemane', 0, '37.64617', '-85.54218'), ('Greenbrier', 0, '37.72951', '-85.45913'), ('Highgrove', 8485, '37.98312', '-85.48634'), ('Howardstown', 849, '37.57228', '-85.59191'), ('Hunters', 0, '37.86034', '-85.50107'), ('Lenore', 0, '37.93839', '-85.50940'), ('Nelsonville', 0, '37.73090', '-85.63968'), ('New Haven', 849, '37.65784', '-85.59107'), ('New Hope', 849, '37.63201', '-85.50830'), ('Samuels', 10374, '37.88284', '-85.53329'), ('Stiles', 0, '37.53951', '-85.58052'), ('Withrow', 0, '37.83506', '-85.47246'), ('Woodlawn', 268, '37.81312', '-85.36524')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ046': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Battle', 0, '37.77868', '-85.02857'), ('Bearwallow', 0, '37.70367', '-85.31746'), ('Booker', 0, '37.78201', '-85.29996'), ('Briartown', 0, '37.69395', '-85.24246'), ('Brush Grove', 0, '37.84312', '-85.18024'), ('Cardwell', 0, '37.82424', '-85.03412'), ('Cisselville', 0, '37.69340', '-85.27690'), ('Croakes', 0, '37.77673', '-85.33218'), ('Fredericktown', 0, '37.75895', '-85.34190'), ('Hardesty', 0, '37.80201', '-85.21329'), ('Jenkinsville', 0, '37.73201', '-85.03968'), ('Jimtown', 0, '37.66979', '-85.20940'), ('Litsey', 0, '37.76951', '-85.19274'), ('Mackville', 206, '37.73674', '-85.06746'), ('Manton', 0, '37.71478', '-85.38524'), ('Maud', 855, '37.82145', '-85.29662'), ('Mooresville', 0, '37.79895', '-85.26524'), ('Pleasant Grove', 0, '37.75173', '-85.17246'), ('Polin', 0, '37.81923', '-85.20885'), ('Pottsville', 0, '37.64729', '-85.06690'), ('Pulliam', 0, '37.84590', '-85.14968'), ('Rineltown', 0, '37.65951', '-85.15607'), ('Saint Catharine', 0, '37.70867', '-85.25774'), ('Seaville', 0, '37.88340', '-85.03884'), ('Sharpsville', 0, '37.85535', '-85.06746'), ('Simstown', 0, '37.63395', '-85.17774'), ('Springfield', 2634, '37.68534', '-85.22218'), ('Tablow', 0, '37.86479', '-85.01412'), ('Tatham Springs', 0, '37.86590', '-85.12385'), ('Texas', 206, '37.65562', '-85.11024'), ('Thompsonville', 0, '37.72701', '-85.13690'), ('Valley Hill', 0, '37.75089', '-85.26218'), ('Willisburg', 304, '37.80979', '-85.12635')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ047': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bohon', 8014, '37.81174', '-84.91968'), ('Bondville', 0, '37.92174', '-84.87190'), ('Braxton', 0, '37.84147', '-84.80551'), ('Burgin', 874, '37.75341', '-84.76661'), ('Bushtown', 0, '37.73063', '-84.72911'), ('Cornishville', 0, '37.80035', '-84.99357'), ('Dixville', 0, '37.70591', '-84.94801'), ('Dugansville', 0, '37.87868', '-84.98496'), ('Duncan', 0, '37.84924', '-84.99023'), ('Ebenezer', 0, '37.87980', '-84.81495'), ('Harrodsburg', 8014, '37.76230', '-84.84329'), ('Jackson', 0, '37.82508', '-84.87079'), ('Kirkwood', 0, '37.91646', '-84.92329'), ('Mayo', 0, '37.87174', '-84.92495'), ('Nevada', 763, '37.69646', '-84.90968'), ('Oregon', 0, '37.91230', '-84.82356'), ('Riverview Estates', 0, '37.75674', '-84.86940'), ('Shakertown', 8014, '37.81897', '-84.73995'), ('Stewart', 0, '37.69118', '-85.00829'), ('Stringtown', 0, '37.77341', '-84.82328'), ('Talmage', 0, '37.85091', '-84.86940'), ('Terrapin', 0, '37.88424', '-84.93856'), ('Vanarsdell', 0, '37.89258', '-84.88051')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ048': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Brannon', 0, '37.95841', '-84.54605'), ('Catnip', 0, '37.93230', '-84.55605'), ('Dixon Town', 0, '37.93730', '-84.65855'), ('Hall', 0, '37.78397', '-84.61689'), ('High Bridge', 5905, '37.82424', '-84.71828'), ('Jessamine', 0, '37.87591', '-84.62133'), ('Keene', 5905, '37.94341', '-84.64189'), ('Little Hickman', 0, '37.77369', '-84.57022'), ('Logana', 0, '37.86480', '-84.48688'), ('Mount Lebanon', 0, '37.82675', '-84.50438'), ('Nealton', 0, '37.93702', '-84.60439'), ('Nicholasville', 19680, '37.88063', '-84.57300'), ('Pink', 0, '37.77952', '-84.55105'), ('Pollard', 0, '37.80675', '-84.50994'), ('Union Mills', 0, '37.89036', '-84.50994'), ('Vineyard', 0, '37.84397', '-84.58772'), ('Wilmore', 5905, '37.86202', '-84.66161')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ049': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Agawam', 0, '37.91452', '-84.08798'), ('Becknerville', 0, '37.96647', '-84.27938'), ('Bloomingdale', 0, '37.88702', '-84.12687'), ('Colby', 0, '37.99591', '-84.26354'), ('Constant Station', 0, '38.02438', '-84.20717'), ('Cotton Branch', 0, '37.87271', '-84.11822'), ('Elkin', 0, '37.91286', '-84.22382'), ('Flanagan', 0, '37.93397', '-84.21048'), ('Ford', 16724, '37.88175', '-84.26021'), ('Forest Grove', 0, '37.94563', '-84.22437'), ('Franklin', 0, '37.97871', '-84.13977'), ('Goffs Corner', 0, '37.92869', '-84.00659'), ('Haggard', 0, '37.90746', '-84.13772'), ('Hedges', 0, '37.99369', '-84.04604'), ('Hootentown', 0, '37.92563', '-84.29243'), ('Hunt', 0, '37.91064', '-84.16048'), ('Jackson Ferry', 0, '37.88739', '-84.22126'), ('Judianne Estates', 0, '38.02692', '-84.23161'), ('Kiddville', 0, '37.95980', '-83.99298'), ('Lisletown', 0, '37.91925', '-84.27354'), ('Locust Grove', 0, '37.93452', '-84.31854'), ('Log Lick', 0, '37.85814', '-84.02687'), ('Lyndale', 0, '37.96925', '-84.20521'), ('Mina', 0, '37.86258', '-84.06715'), ('Mount Zion', 0, '38.03091', '-84.09604'), ('Old Pine Grove', 0, '38.02647', '-84.27188'), ('Olivers', 0, '37.88714', '-84.19088'), ('Pilot View', 0, '37.96786', '-84.06381'), ('Pinchem', 0, '37.92619', '-84.15993'), ('Pine Grove', 0, '38.00202', '-84.31577'), ('Pine Ridge', 0, '37.87144', '-84.01389'), ('Pretty Run', 0, '38.07330', '-84.15815'), ('Providence', 0, '37.92560', '-84.24240'), ('Rabbit Town', 0, '37.90591', '-84.01520'), ('Renick', 0, '38.05841', '-84.20660'), ('Rightangle', 0, '37.89480', '-84.02854'), ('Ruckerville', 16724, '37.93369', '-84.09437'), ('Sewell Shop', 0, '38.03063', '-84.02742'), ('Silver Lake', 0, '38.07766', '-84.23943'), ('Tebbs', 0, '37.99786', '-84.28243'), ('Thomson', 0, '38.00591', '-84.02604'), ('Trapp', 1303, '37.88341', '-84.05493'), ('Vianna', 0, '37.83619', '-84.03826'), ('Winchester', 16724, '37.99008', '-84.17965'), ('Wyandotte', 0, '38.04980', '-84.27215'), ('Yorktown', 0, '38.03828', '-84.28352')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ050': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bean', 1804, '37.94540', '-83.83640'), ('Camargo', 923, '37.99680', '-83.88960'), ('Coons Station', 923, '38.03080', '-83.87110'), ('Ewington', 5876, '38.08330', '-83.90140'), ('Gatewoods Station', 923, '38.04130', '-83.89420'), ('Grassy Lick', 5876, '38.08160', '-84.02000'), ('Hope', 1804, '38.01550', '-83.77300'), ('Howards Mile', 923, '38.06430', '-83.84730'), ('Jeffersonville', 1804, '37.96500', '-83.82810'), ('Judy', 5876, '38.12970', '-83.95860'), ('Klondike', 5876, '38.01960', '-83.99740'), ('Levee', 923, '37.97110', '-83.93530'), ('Lower Spencer', 923, '38.02890', '-83.84030'), ('Lucky Stop', 1804, '37.96400', '-83.81090'), ('Mount Sterling', 5876, '38.06040', '-83.94530'), ('Oggs Station', 1804, '38.02310', '-83.82450'), ('Prewitt', 5876, '38.02800', '-83.98110'), ('Sideview', 562, '38.11310', '-84.03670'), ('Stepstone', 1488, '38.08800', '-83.83030'), ('Stoops', 5876, '38.12810', '-83.91470'), ('Upper Spencer', 923, '38.02960', '-83.84760'), ('Wades Mill', 5876, '38.03650', '-84.01090'), ('Walkers Crossing', 1804, '38.02690', '-83.79640')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ051': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bethel', 295, '38.25060', '-83.86640'), ('Bourbon Furnace', 1488, '38.11820', '-83.74530'), ('Craigs', 1488, '38.16280', '-83.72540'), ('Crooks', 1488, '38.07430', '-83.76020'), ('Flat Creek', 295, '38.13590', '-83.86930'), ('Kendall Springs', 1488, '38.10120', '-83.77910'), ('Marshall', 342, '38.13620', '-83.67830'), ('Midland', 342, '38.13330', '-83.57830'), ('Moores Ferry', 342, '38.16840', '-83.61820'), ('Oakley', 1488, '38.24770', '-83.72460'), ('Odessa', 1488, '38.22010', '-83.75030'), ('Olympia', 1488, '38.09860', '-83.69610'), ('Olympia Springs', 342, '38.06200', '-83.67330'), ('Owingsville', 1488, '38.13690', '-83.75950'), ('Peasticks', 1488, '38.15560', '-83.69880'), ('Pebble', 1488, '38.26880', '-83.75730'), ('Peeled Oak', 1488, '38.06080', '-83.80160'), ('Polksville', 342, '38.13800', '-83.65550'), ('Preston', 1488, '38.08610', '-83.75390'), ('Reynoldsville', 1488, '38.19110', '-83.82470'), ('Salt Lick', 342, '38.11950', '-83.61610'), ('Sharpsburg', 295, '38.20210', '-83.92840'), ('Slate Valley', 1488, '38.17150', '-83.72230'), ('Wyoming', 1488, '38.21970', '-83.69910'), ('Yale', 251, '38.06380', '-83.50090'), ('Young Springs', 342, '38.06640', '-83.60130'), ('Zilpo', 251, '38.07200', '-83.47410')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ052': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bangor', 251, '38.05000', '-83.44400'), ('Bluestone', 251, '38.15190', '-83.50900'), ('Brandy', 5914, '38.15710', '-83.45600'), ('Christy', 5914, '38.18920', '-83.37280'), ('Clearfield', 5914, '38.16490', '-83.43270'), ('Cogswell', 251, '38.09620', '-83.48980'), ('Craney', 5914, '38.07710', '-83.35580'), ('Cranston', 5914, '38.26330', '-83.43570'), ('Crix', 5914, '38.15570', '-83.37460'), ('Elliottville', 1813, '38.18280', '-83.27580'), ('Fannin Valley', 678, '38.13620', '-83.22670'), ('Farley', 678, '38.16750', '-83.22620'), ('Farmers', 251, '38.14280', '-83.54610'), ('Freestone', 251, '38.14790', '-83.51660'), ('Gates', 5914, '38.23480', '-83.36660'), ('Haldeman', 5914, '38.25280', '-83.31860'), ('Hamm', 5914, '38.12490', '-83.31160'), ('Hays Crossing', 5914, '38.24110', '-83.44860'), ('Hilda', 5914, '38.23840', '-83.50780'), ('Lakeview Heights', 251, '38.15210', '-83.50450'), ('Lick Fork', 5914, '38.09630', '-83.41110'), ('Minor', 678, '38.12980', '-83.26480'), ('Morehead', 5914, '38.19010', '-83.44220'), ('Munson', 5914, '38.23060', '-83.45760'), ('Paragon', 251, '38.04770', '-83.39890'), ('Pelfrey', 5914, '38.11300', '-83.38510'), ('Ramey', 251, '38.18060', '-83.57130'), ('Rodburn', 5914, '38.19780', '-83.41090'), ('Triplett', 5914, '38.29310', '-83.39610'), ('Vale', 5914, '38.19230', '-83.29560'), ('Wagner', 678, '38.13600', '-83.28410'), ('Wagner Store', 678, '38.16750', '-83.26840'), ('Waltz', 5914, '38.31600', '-83.44320')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ053': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Athertonville', 849, '37.63562', '-85.60413'), ('Attilla', 0, '37.50340', '-85.50636'), ('Boundary Oak', 0, '37.53034', '-85.73774'), ('Buffalo', 2874, '37.51200', '-85.69857'), ('Ginseng', 0, '37.50478', '-85.58108'), ('Gleanings', 144, '37.55840', '-85.53385'), ('Hodgenville', 2874, '37.57395', '-85.73996'), ('Jericho', 0, '37.51867', '-85.64830'), ('Leafdale', 0, '37.56339', '-85.66468'), ('Lyons', 849, '37.67784', '-85.61246'), ('Magnolia', 2874, '37.44395', '-85.74357'), ('Mathers Mill', 0, '37.54034', '-85.76913'), ('Maxine', 0, '37.46506', '-85.79552'), ('Mount Sherman', 0, '37.45256', '-85.66830'), ('Roanoke', 0, '37.67701', '-85.70579'), ('Talley', 0, '37.45061', '-85.84385'), ('Tanner', 0, '37.50950', '-85.78496'), ('Tonieville', 0, '37.60951', '-85.79607'), ('Upton', 654, '37.46506', '-85.89330')], 'partOfState': 'north central', 'wfo': 'LMK'}, +'KYZ054': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Belltown', 0, '37.53368', '-85.30524'), ('Bradfordsville', 304, '37.49424', '-85.14885'), ('Burkes Spring', 0, '37.64756', '-85.34829'), ('Calvary', 0, '37.51562', '-85.26246'), ('Dant', 0, '37.63590', '-85.45580'), ('Frogtown', 0, '37.59034', '-85.37246'), ('Gandertown', 0, '37.68312', '-85.38996'), ('Gravel Switch', 763, '37.57868', '-85.05218'), ('Greenbriar', 0, '37.49451', '-85.23135'), ('Holy Cross', 623, '37.67395', '-85.44691'), ('Jessietown', 0, '37.48090', '-85.32496'), ('Lebanon', 5718, '37.56979', '-85.25274'), ('Loretto', 623, '37.63534', '-85.40080'), ('Nerinx', 623, '37.66423', '-85.39941'), ('New Market', 5718, '37.50173', '-85.31080'), ('Penick', 0, '37.56840', '-85.15024'), ('Phillipsburg', 0, '37.45645', '-85.25996'), ('Poplar Corner', 0, '37.60840', '-85.14857'), ('Raywick', 144, '37.56034', '-85.43052'), ('Riley', 0, '37.55951', '-85.09885'), ('Saint Francis', 0, '37.62645', '-85.42774'), ('Saint Joseph', 0, '37.52201', '-85.38969'), ('Saint Mary', 0, '37.58062', '-85.34635'), ('Salleetown', 0, '37.45646', '-85.21107')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ055': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aliceton', 0, '37.59090', '-85.02996'), ('Alum Springs', 0, '37.59674', '-84.84051'), ('Brumfield', 0, '37.60424', '-84.98218'), ('Caldwell Manor', 0, '37.65813', '-84.78189'), ('Clifton', 0, '37.64952', '-84.68800'), ('Craintown', 3010, '37.62368', '-85.01829'), ('Danville', 15477, '37.64563', '-84.77217'), ('Davis Hill', 0, '37.64869', '-84.83662'), ('Faulconer', 0, '37.70702', '-84.77773'), ('Forkland', 0, '37.55257', '-84.97996'), ('Hedgeville', 0, '37.63341', '-84.68356'), ('Junction City', 2184, '37.58674', '-84.79384'), ('Little Needmore', 0, '37.65786', '-84.72661'), ('Mitchellsburg', 763, '37.60063', '-84.94968'), ('Needmore', 0, '37.65174', '-84.87773'), ('Parksville', 763, '37.59785', '-84.89134'), ('Perryville', 763, '37.65035', '-84.95162')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ056': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bourne', 0, '37.70980', '-84.61300'), ('Bryantsville', 3734, '37.71452', '-84.64911'), ('Buckeye', 3734, '37.71564', '-84.50549'), ('Buena Vista', 874, '37.75036', '-84.66522'), ('Cartersville', 0, '37.53814', '-84.40799'), ('Davistown', 0, '37.69202', '-84.69550'), ('Hackley', 0, '37.63314', '-84.47160'), ('Hyattsville', 0, '37.60508', '-84.52244'), ('Lancaster', 3734, '37.61952', '-84.57800'), ('Lowell', 3589, '37.60953', '-84.42521'), ('Manse', 0, '37.58786', '-84.43771'), ('Marcellus', 0, '37.68619', '-84.67717'), ('Marksbury', 0, '37.67258', '-84.63772'), ('McCreary', 3734, '37.67119', '-84.51549'), ('Nina', 0, '37.66397', '-84.46633'), ('Paint Lick', 9851, '37.61675', '-84.40938'), ('Point Leavell', 0, '37.59342', '-84.49605'), ('Stone', 0, '37.72814', '-84.54605'), ('Teatersville', 0, '37.68897', '-84.50688'), ('Three Forks', 0, '37.69091', '-84.57494'), ('Toddville', 0, '37.73258', '-84.63605')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ057': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arlington', 0, '37.76064', '-84.30771'), ('Baldwin', 0, '37.79675', '-84.42521'), ('Berea', 9851, '37.56869', '-84.29632'), ('Bighill', 0, '37.55453', '-84.20827'), ('Blue Grass', 0, '37.84758', '-84.33521'), ('Bobtown', 634, '37.61758', '-84.22910'), ('Brassfield', 0, '37.67425', '-84.14632'), ('Buggytown', 0, '37.63564', '-84.36910'), ('Bybee', 2843, '37.73314', '-84.12465'), ('Caleast', 0, '37.69036', '-84.33188'), ('College Hill', 0, '37.78675', '-84.12326'), ('Combs', 2843, '37.66090', '-84.10920'), ('Cottonburg', 0, '37.73064', '-84.46188'), ('Crow Valley', 0, '37.74036', '-84.41438'), ('Cuzick', 0, '37.83425', '-84.45355'), ('Doylesville', 0, '37.84425', '-84.16076'), ('Dreyfus', 0, '37.61730', '-84.17660'), ('Duluth', 0, '37.57953', '-84.16826'), ('Duncanon', 0, '37.65953', '-84.34799'), ('Edenton', 0, '37.76702', '-84.48466'), ('Elliston', 0, '37.74091', '-84.15521'), ('Hillcrest', 0, '37.76869', '-84.29160'), ('Kingston', 9851, '37.65036', '-84.24160'), ('Kirksville', 27152, '37.66536', '-84.40910'), ('Middletown', 0, '37.58980', '-84.29993'), ('Million', 0, '37.77980', '-84.38743'), ('Moberly', 0, '37.74175', '-84.18271'), ('Newby', 0, '37.76314', '-84.41521'), ('Panola', 0, '37.66092', '-84.11521'), ('Peytontown', 0, '37.66953', '-84.33132'), ('Redhouse', 27152, '37.83230', '-84.27215'), ('Reeds Crossing', 0, '37.73925', '-84.22243'), ('Richmond', 27152, '37.74786', '-84.29465'), ('Round Hill', 0, '37.67897', '-84.41605'), ('Ruthton', 0, '37.73286', '-84.43355'), ('Silver Creek', 0, '37.65730', '-84.36605'), ('Slate Lick', 0, '37.54647', '-84.31104'), ('Speedwell', 0, '37.67425', '-84.17521'), ('Stringtown', 0, '37.81980', '-84.41299'), ('Terrill', 0, '37.68619', '-84.25910'), ('Union City', 0, '37.79730', '-84.19771'), ('Valley View', 19680, '37.84619', '-84.43049'), ('Wallaceton', 0, '37.56814', '-84.36216'), ('Whites', 0, '37.63064', '-84.29938')], 'partOfState': 'east central', 'wfo': 'LMK'}, +'KYZ058': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alger', 2843, '37.67010', '-84.07960'), ('Alumbaugh', 693, '37.59630', '-83.93190'), ('Arthurmabel', 693, '37.59350', '-83.94560'), ('Blackburn', 2843, '37.66240', '-84.07600'), ('Calloway Crossing', 2843, '37.72460', '-84.00390'), ('Cobhill', 693, '37.71640', '-83.82920'), ('Cow Creek', 693, '37.70130', '-83.92570'), ('Cressy', 1303, '37.82480', '-84.04030'), ('Crystal', 693, '37.66300', '-83.82570'), ('Doe Creek', 693, '37.67240', '-83.93260'), ('Engle', 2843, '37.81300', '-84.11570'), ('Estilco', 693, '37.61130', '-83.96320'), ('Fainville', 2843, '37.70390', '-84.06500'), ('Fitchburg', 693, '37.73210', '-83.85180'), ('Fox', 2843, '37.75910', '-84.06700'), ('Furnace', 3029, '37.76210', '-83.83160'), ('Hardwick', 2843, '37.77780', '-83.94090'), ('Hargett', 2843, '37.78280', '-84.00970'), ('Iron Mound', 1303, '37.81500', '-84.04400'), ('Irvine', 2843, '37.69640', '-83.96830'), ('Jinks', 2843, '37.60640', '-84.03220'), ('Kimbrell', 1303, '37.80500', '-83.99030'), ('Kings Station', 2843, '37.68660', '-84.06310'), ('Leighton', 693, '37.60370', '-83.88580'), ('Locust Branch', 2843, '37.58530', '-84.07030'), ('Noland', 2843, '37.64800', '-84.05500'), ('North Irvine', 2843, '37.71420', '-83.97970'), ('Palmer', 1303, '37.81330', '-84.06640'), ('Patsey', 3029, '37.71130', '-83.79150'), ('Pilot', 3029, '37.74080', '-83.76870'), ('Pitts', 693, '37.70980', '-83.88430'), ('Pryse', 693, '37.65950', '-83.87540'), ('Ravenna', 693, '37.68720', '-83.94780'), ('Rice Station', 2843, '37.70270', '-84.04080'), ('Sam', 2843, '37.78080', '-84.02800'), ('Sandhill', 2843, '37.72530', '-84.02460'), ('See', 3029, '37.72760', '-83.76060'), ('Shade', 693, '37.64170', '-83.86450'), ('South Irvine', 2843, '37.68330', '-83.97690'), ('Spout Springs', 1303, '37.82700', '-83.97450'), ('Station Camp', 2843, '37.65040', '-83.99300'), ('Texola', 693, '37.65310', '-83.87090'), ('Union Hall', 693, '37.75870', '-83.90500'), ('Wagersville', 693, '37.62540', '-83.95340'), ('Weedon', 2843, '37.71130', '-84.01230'), ('West Irvine', 2843, '37.70140', '-83.99080'), ('Willow Tree', 693, '37.70820', '-83.91550'), ('Winston', 2843, '37.70260', '-84.07670'), ('Wiseman Crossing', 2843, '37.75530', '-84.01460'), ('Wisemantown', 2843, '37.67880', '-84.00640'), ('Witt', 2843, '37.67300', '-84.02440')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ059': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bowen', 3029, '37.84110', '-83.77190'), ('Cat Creek', 3029, '37.84500', '-83.80560'), ('Clay City', 1303, '37.86310', '-83.92840'), ('Haystack', 625, '37.84760', '-83.67900'), ('Knowlton', 3029, '37.78610', '-83.83750'), ('Lombard', 3029, '37.81780', '-83.74680'), ('Nada', 3029, '37.81460', '-83.71900'), ('Natural Bridge State Park', 424, '37.77520', '-83.68590'), ('Powell Valley', 1303, '37.86500', '-83.94780'), ('Rogers Chapel', 3029, '37.77420', '-83.78310'), ('Rosslyn', 3029, '37.84060', '-83.81220'), ('Slade', 3029, '37.79050', '-83.70600'), ('Stanton', 3029, '37.84690', '-83.85720'), ('Vaughns Mill', 1303, '37.81360', '-83.91670'), ('Virden', 1303, '37.88190', '-83.95500'), ('Waltersville', 1303, '37.86470', '-83.93440'), ('Westbend', 1303, '37.90580', '-83.96920')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ060': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Artville', 625, '37.93500', '-83.47500'), ('Big Woods', 625, '37.99500', '-83.47000'), ('Cedar Groves', 1804, '37.96000', '-83.76000'), ('Clay Lick', 1804, '37.98000', '-83.77000'), ('Cornwell', 625, '37.95700', '-83.71400'), ('Dan', 625, '37.96500', '-83.46500'), ('Denniston', 625, '37.91550', '-83.53660'), ('Fagan', 625, '37.92000', '-83.70000'), ('Frenchburg', 551, '37.95480', '-83.62240'), ('Korea', 625, '37.94190', '-83.47860'), ('Mariba', 625, '37.91410', '-83.57690'), ('Means', 1804, '37.94810', '-83.76340'), ('Pomeroyton', 625, '37.87130', '-83.52200'), ('Ratlitt', 625, '38.00000', '-83.58000'), ('Rothwell', 625, '37.96000', '-83.69000'), ('Scranton', 625, '37.98720', '-83.52170'), ('Stoll', 424, '37.87000', '-83.51000'), ('Sudith', 625, '38.01830', '-83.63220'), ('Tabor', 625, '37.92000', '-83.66000'), ('Wellington', 561, '37.91530', '-83.50420')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ061': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aberdeen', 2544, '37.25394', '-86.68165'), ('Banock', 0, '37.35088', '-86.65554'), ('Boston', 0, '37.08866', '-86.78694'), ('Brooklyn', 0, '37.28977', '-86.57637'), ('Casey', 0, '37.33449', '-86.60749'), ('Davis Crossroads', 0, '37.05143', '-86.74138'), ('Decker', 0, '37.33533', '-86.48554'), ('Dimple', 0, '37.10282', '-86.72027'), ('Dunbar', 2544, '37.18810', '-86.75694'), ('Eden', 0, '37.27560', '-86.70443'), ('Flener', 0, '37.28949', '-86.66665'), ('Gilstrap', 0, '37.31533', '-86.70666'), ('Grancer', 0, '37.30894', '-86.54609'), ('Harper Crossroads', 0, '37.09032', '-86.88527'), ('Harreldsville', 0, '37.06477', '-86.89388'), ('Horsemill', 0, '37.23310', '-86.53804'), ('Huldeville', 0, '37.26699', '-86.60887'), ('Huntsville', 0, '37.16338', '-86.88166'), ('Jetson', 0, '37.24921', '-86.53193'), ('Lee', 0, '37.29588', '-86.49943'), ('Leetown', 0, '37.13949', '-86.74277'), ('Logansport', 2544, '37.28505', '-86.76805'), ('Love', 0, '37.28310', '-86.52721'), ('Mining City', 0, '37.22727', '-86.77888'), ('Monford', 0, '37.26727', '-86.64138'), ('Morgantown', 2544, '37.22560', '-86.68360'), ('Neafus', 0, '37.39505', '-86.61193'), ('Needmore', 0, '37.11088', '-86.65110'), ('Pleasant Hill', 0, '37.18032', '-86.86527'), ('Provo', 0, '37.23310', '-86.82833'), ('Quality', 903, '37.07560', '-86.84666'), ('Reedyville', 0, '37.19144', '-86.43165'), ('Richelieu', 0, '37.00588', '-86.69277'), ('Rochester', 186, '37.21254', '-86.89305'), ('Sharer', 0, '37.03671', '-86.67083'), ('Silver City', 0, '37.13782', '-86.83166'), ('South Hill', 186, '37.17588', '-86.80471'), ('Sugar Grove', 0, '37.09004', '-86.66499'), ('Tilford', 0, '37.37394', '-86.54748'), ('Turnertown', 0, '37.06032', '-86.75999'), ('Vineyard', 0, '37.24588', '-86.48832'), ('Welchs Creek', 627, '37.34477', '-86.56804'), ('Welcome', 0, '37.30366', '-86.65138'), ('Woodbury', 87, '37.18338', '-86.63388'), ('Youngtown', 0, '37.18143', '-86.71860')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ062': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arthur', 1101, '37.17560', '-86.20664'), ('Asphalt', 0, '37.19088', '-86.34998'), ('Bee Spring', 921, '37.28949', '-86.28470'), ('Big Reedy', 0, '37.26922', '-86.43554'), ('Black Gold', 0, '37.25949', '-86.32998'), ('Broadway', 0, '37.31449', '-86.27358'), ('Brownsville', 0, '37.19255', '-86.26775'), ('Cedar Spring', 0, '37.12227', '-86.15303'), ('Chalybeate', 0, '37.12699', '-86.23609'), ('Cub Run', 1563, '37.32283', '-86.19469'), ('Elko', 318, '37.16171', '-86.13525'), ('Hillview', 7037, '37.29922', '-86.22858'), ('Huff', 0, '37.24866', '-86.36776'), ('Lindseyville', 0, '37.23588', '-86.29442'), ('Mammoth Cave', 517, '37.18616', '-86.09998'), ('Nash', 0, '37.32033', '-86.43081'), ('Nick', 0, '37.12977', '-86.31109'), ('Ollie', 0, '37.25199', '-86.18025'), ('Pig', 0, '37.13282', '-86.16998'), ('Prosperity', 0, '37.32172', '-86.31748'), ('Rhoda', 921, '37.15588', '-86.22526'), ('Rocky Hill', 0, '37.06894', '-86.13637'), ('Roundhill', 87, '37.23699', '-86.43081'), ('Segal', 0, '37.20560', '-86.38498'), ('Sloans Crossing', 0, '37.15088', '-86.09720'), ('Stockholm', 0, '37.24810', '-86.13081'), ('Straw', 0, '37.27588', '-86.17247'), ('Sunfish', 921, '37.29699', '-86.36970'), ('Sweeden', 921, '37.25366', '-86.27886'), ('Union City', 0, '37.13699', '-86.07192'), ('Windyville', 0, '37.21616', '-86.32442')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ063': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bear Wallow', 0, '37.15172', '-85.85608'), ('Bee', 0, '37.26894', '-86.08469'), ('Big Windy', 0, '37.31866', '-86.09442'), ('Bonnieville', 354, '37.37867', '-85.90302'), ('Bunnell Crossing', 0, '37.23172', '-85.80469'), ('Canmer', 1563, '37.29033', '-85.76719'), ('Cub Run', 0, '37.30561', '-86.06080'), ('Defries', 0, '37.26839', '-85.68469'), ('Dogcreek', 0, '37.32061', '-86.12525'), ('Forestville', 0, '37.26838', '-85.99664'), ('Glen Lily', 0, '37.30783', '-85.79441'), ('Hammonville', 354, '37.41478', '-85.79746'), ('Hardyville', 1563, '37.25422', '-85.78608'), ('High Hickory', 0, '37.42256', '-85.82996'), ('Hinesdale', 0, '37.31756', '-85.82358'), ('Horse Cave', 2252, '37.17950', '-85.90692'), ('Jonesville', 0, '37.38784', '-85.76830'), ('Kessinger', 1563, '37.30589', '-85.95942'), ('Legrande', 0, '37.17811', '-85.78219'), ('Leitchfield Crossing', 0, '37.30144', '-85.91247'), ('Lines Mill', 0, '37.35811', '-86.04275'), ('Linwood', 354, '37.33950', '-85.75997'), ('Logsdon Valley', 0, '37.26616', '-85.96192'), ('Lone Star', 0, '37.40478', '-85.94663'), ('Macon', 0, '37.33089', '-86.01969'), ('Monroe', 224, '37.23228', '-85.69775'), ('Mount Beulah', 0, '37.29839', '-85.93942'), ('Munfordville', 1563, '37.27228', '-85.89108'), ('Northtown', 0, '37.21422', '-86.00081'), ('Pascal', 0, '37.21700', '-85.73025'), ('Pike View', 0, '37.37950', '-85.75302'), ('Powder Mill', 0, '37.34700', '-85.71330'), ('Priceville', 354, '37.37422', '-85.98719'), ('Rex', 2081, '37.22283', '-85.78553'), ('Riders Mill', 0, '37.41061', '-85.99914'), ('Rio', 0, '37.31895', '-85.77108'), ('Roseburg', 0, '37.33005', '-86.07942'), ('Rowletts', 1563, '37.24089', '-85.89414'), ('Seymour', 0, '37.16589', '-85.80330'), ('Three Springs', 224, '37.17172', '-85.74358'), ('Tom Johns Crossing', 0, '37.24977', '-86.02442'), ('Uno', 2252, '37.18922', '-85.82442'), ('Vento', 0, '37.41811', '-85.89302'), ('Wabash', 0, '37.40645', '-85.84941'), ('Whickerville', 0, '37.20033', '-85.69052'), ('Winesap', 0, '37.28727', '-86.01608'), ('Woodsonville', 0, '37.26283', '-85.88830')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ064': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Allendale', 2396, '37.37117', '-85.58302'), ('Black Gnat', 2396, '37.30423', '-85.43635'), ('Bloyd', 0, '37.40534', '-85.57580'), ('Bluff Boom', 0, '37.27784', '-85.46108'), ('Bramlett', 0, '37.16200', '-85.46191'), ('Coakley', 0, '37.37617', '-85.53552'), ('Crailhope', 0, '37.15978', '-85.66580'), ('Donansburg', 0, '37.23728', '-85.62608'), ('Eve', 0, '37.31117', '-85.67858'), ('Exie', 2396, '37.15978', '-85.53580'), ('Fry', 0, '37.14673', '-85.48830'), ('Gabe', 0, '37.30784', '-85.57413'), ('Grab', 0, '37.22589', '-85.60163'), ('Greensburg', 2396, '37.26089', '-85.49885'), ('Gresham', 0, '37.19673', '-85.45024'), ('Haskingsville', 0, '37.18701', '-85.39524'), ('Hudgins', 0, '37.34867', '-85.68052'), ('Kemp', 0, '37.13645', '-85.45802'), ('Liletown', 0, '37.14395', '-85.58330'), ('Little Barren', 0, '37.12783', '-85.61775'), ('Lobb', 0, '37.34589', '-85.64497'), ('Mell', 0, '37.11228', '-85.52858'), ('Mount Gilead', 0, '37.17312', '-85.38413'), ('Newt', 0, '37.17923', '-85.56469'), ('Pierce', 2396, '37.18645', '-85.60775'), ('Roachville', 0, '37.24062', '-85.42358'), ('Summersville', 2396, '37.32617', '-85.54441'), ('Thurlow', 0, '37.21256', '-85.53636'), ('Wards', 0, '37.45951', '-85.61024'), ('Webbs', 0, '37.25895', '-85.60191'), ('Whitewood', 0, '37.28367', '-85.43608')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ065': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Acton', 0, '37.34701', '-85.24802'), ('Arista', 0, '37.36868', '-85.30468'), ('Atchison', 0, '37.30756', '-85.30052'), ('Badger', 0, '37.45451', '-85.53135'), ('Bengal', 0, '37.35923', '-85.45719'), ('Burdick', 0, '37.27367', '-85.37607'), ('Campbellsville', 10498, '37.34340', '-85.34191'), ('Durhamtown', 0, '37.39979', '-85.41385'), ('Elk Horn', 10498, '37.31645', '-85.28524'), ('Finley', 0, '37.46145', '-85.33941'), ('Hatcher', 0, '37.29479', '-85.36635'), ('Hibernia', 0, '37.45895', '-85.55997'), ('Hobson', 10498, '37.42562', '-85.36885'), ('Mac', 0, '37.40006', '-85.51052'), ('Mannsville', 304, '37.37257', '-85.19663'), ('Maple', 0, '37.46423', '-85.50219'), ('Merrimac', 0, '37.41257', '-85.12857'), ('Pitman', 0, '37.37812', '-85.48941'), ('Romine', 0, '37.23562', '-85.35024'), ('Saloma', 10498, '37.41201', '-85.39274'), ('South Campbellsville', 0, '37.33340', '-85.32552'), ('Speck', 0, '37.30673', '-85.18774'), ('Spurlington', 0, '37.41229', '-85.27468'), ('Sweeneyville', 0, '37.35229', '-85.39913'), ('White Rose', 0, '37.42117', '-85.46108'), ('Willowtown', 0, '37.45201', '-85.42191'), ('Wooleyville', 0, '37.37923', '-85.24690'), ('Wrights', 0, '37.31256', '-85.39996'), ('Yuma', 10498, '37.28034', '-85.24163')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ066': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Argyle', 1850, '37.22591', '-84.80745'), ('Atterson', 0, '37.33840', '-85.07801'), ('Bass', 0, '37.33868', '-85.14468'), ('Beech Bottom', 0, '37.37035', '-84.93523'), ('Bethelridge', 358, '37.23369', '-84.75828'), ('Butchertown', 0, '37.51146', '-84.89051'), ('Cantown', 0, '37.26146', '-84.91217'), ('Chilton', 0, '37.45507', '-84.98746'), ('Clementsville', 1850, '37.29007', '-85.09301'), ('Creston', 0, '37.26674', '-85.04218'), ('Duncan', 206, '37.35869', '-84.72745'), ('Dunnville', 1850, '37.20007', '-85.00995'), ('Ellisburg', 347, '37.46730', '-84.91940'), ('Evans Ford', 0, '37.23118', '-84.98551'), ('Evona', 0, '37.19424', '-84.91051'), ('Gilpin', 0, '37.25674', '-84.88190'), ('Jacktown', 304, '37.44396', '-85.01551'), ('Labascus', 0, '37.22646', '-84.91912'), ('Lanhamtown', 0, '37.33619', '-84.88245'), ('Lawhorn Hill', 0, '37.30007', '-84.85384'), ('Liberty', 1850, '37.31841', '-84.93940'), ('Middleburg', 1850, '37.35785', '-84.82106'), ('Mintonville', 1850, '37.17730', '-84.81078'), ('Mount Olive', 1193, '37.27952', '-84.76578'), ('Peytons Store', 0, '37.46396', '-84.97051'), ('Phil', 1850, '37.21535', '-84.95356'), ('Pricetown', 0, '37.28424', '-84.95551'), ('Rheber', 1850, '37.25924', '-85.02190'), ('Rubert Ford', 0, '37.23535', '-84.96690'), ('Teddy', 0, '37.17979', '-84.94190'), ('Walltown', 0, '37.32230', '-84.73161'), ('Ware', 0, '37.20869', '-84.76884'), ('Windsor', 2399, '37.12785', '-84.91217')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ067': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Blue Lick', 0, '37.49091', '-84.70744'), ('Boneyville', 0, '37.50536', '-84.69161'), ('Broughtentown', 0, '37.38397', '-84.54327'), ('Chicken Bristle', 0, '37.48591', '-84.76995'), ('Crab Orchard', 842, '37.46453', '-84.50660'), ('Dog Walk', 842, '37.37703', '-84.50216'), ('Geneva', 0, '37.43952', '-84.74634'), ('Gilbert', 0, '37.57397', '-84.59411'), ('Halls Gap', 0, '37.46202', '-84.63328'), ('Highland', 0, '37.42813', '-84.65383'), ('Hubble', 0, '37.59702', '-84.65467'), ('Hustonville', 347, '37.47313', '-84.81578'), ('Jumbo', 0, '37.45813', '-84.68911'), ('Kings Mountain', 358, '37.37258', '-84.68800'), ('Logantown', 0, '37.56064', '-84.62966'), ('Maywood', 0, '37.48036', '-84.61689'), ('McKinney', 347, '37.45258', '-84.75911'), ('Milledgeville', 0, '37.52063', '-84.81384'), ('Moreland', 347, '37.50563', '-84.81328'), ('Mount Salem', 0, '37.41730', '-84.79939'), ('New Salem', 0, '37.40924', '-84.76745'), ('Ottenheim', 0, '37.42314', '-84.59577'), ('Preachersville', 842, '37.52730', '-84.53383'), ('Rowland', 3430, '37.52286', '-84.63161'), ('South Fork', 0, '37.40952', '-84.73800'), ('Stanford', 3430, '37.53119', '-84.66189'), ('Sugar Grove', 87, '37.45814', '-84.56633'), ('Turkeytown', 0, '37.42064', '-84.48688'), ('Turnersville', 0, '37.49036', '-84.73884'), ('Walnut Flat', 0, '37.49536', '-84.57883'), ('Waynesburg', 358, '37.33286', '-84.67161')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ068': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bee Lick', 1193, '37.32840', '-84.50210'), ('Bloss', 2592, '37.21640', '-84.36000'), ('Boone', 9851, '37.51750', '-84.31670'), ('Brodhead', 1193, '37.40290', '-84.41690'), ('Bromo', 1193, '37.31540', '-84.41870'), ('Bummer', 2592, '37.42580', '-84.24610'), ('Burr', 2592, '37.34190', '-84.30500'), ('Cedarville', 228, '37.21340', '-84.32880'), ('Climax', 9851, '37.46940', '-84.22530'), ('Conway', 9851, '37.47780', '-84.33440'), ('Cooksburg', 228, '37.38720', '-84.18720'), ('Dillon', 228, '37.26030', '-84.22710'), ('Disputanta', 9851, '37.48840', '-84.25560'), ('Donaro', 228, '37.35140', '-84.21680'), ('Dudley Station', 228, '37.37090', '-84.25560'), ('Flat Rock', 2592, '37.36120', '-84.26630'), ('Gauley', 228, '37.31400', '-84.19720'), ('Goochland', 228, '37.43410', '-84.18850'), ('Gum Sulphur', 1193, '37.42690', '-84.45940'), ('Hansford', 2592, '37.26990', '-84.37050'), ('Hiatt', 1193, '37.41660', '-84.37640'), ('Horse Lick', 228, '37.33130', '-84.15580'), ('Hummel', 2592, '37.39610', '-84.28590'), ('Indian Lakes Park', 1193, '37.41140', '-84.46160'), ('Jep Hill', 228, '37.35380', '-84.18110'), ('Johnetta', 228, '37.41520', '-84.19940'), ('Lake Linville', 2592, '37.38800', '-84.34500'), ('Level Green', 2592, '37.28110', '-84.42610'), ('Livingston', 228, '37.29850', '-84.21670'), ('Luner', 228, '37.23770', '-84.28080'), ('Maretburg', 2592, '37.35540', '-84.38730'), ('Mount Vernon', 2592, '37.36310', '-84.34420'), ('Muellersville', 2592, '37.38580', '-84.30710'), ('Orlando', 2592, '37.37160', '-84.26860'), ('Ottowa', 1193, '37.36170', '-84.45670'), ('Pine Hill', 228, '37.32870', '-84.26330'), ('Pongo', 228, '37.22220', '-84.32340'), ('Quail', 1193, '37.32720', '-84.45470'), ('Renfro Valley', 2592, '37.38780', '-84.33170'), ('Robinet', 228, '37.37590', '-84.17760'), ('Rockford', 9851, '37.51460', '-84.26880'), ('Roundstone', 2592, '37.43860', '-84.31680'), ('Sand Hill', 228, '37.28930', '-84.26340'), ('Sand Springs', 2592, '37.29770', '-84.35840'), ('Sinks', 228, '37.33650', '-84.23200'), ('Snider', 9851, '37.49680', '-84.32430'), ('Spiro', 2592, '37.34230', '-84.39970'), ('Wabo', 2592, '37.31320', '-84.38970'), ('Wellhope', 2592, '37.31700', '-84.31870'), ('Wildie', 2592, '37.42330', '-84.30220'), ('Willailla', 1193, '37.30510', '-84.46280'), ('Withers', 228, '37.34590', '-84.22580')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYZ069': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alcorn', 878, '37.56140', '-84.04890'), ('Annville', 589, '37.31990', '-83.96140'), ('Ardery', 228, '37.34060', '-84.10430'), ('Atkinstown', 878, '37.38310', '-83.96280'), ('Blanton Flats', 693, '37.57000', '-84.00390'), ('Bond', 589, '37.31590', '-83.98640'), ('Bradshaw', 878, '37.42500', '-83.96330'), ('Brazil', 878, '37.52470', '-84.04170'), ('Carico', 228, '37.33200', '-84.09840'), ('Clover Bottom', 9851, '37.49890', '-84.15140'), ('Collingsworth', 878, '37.46390', '-84.08710'), ('Cornelius', 589, '37.31390', '-84.00860'), ('Dabolt', 589, '37.34890', '-84.00410'), ('Dango', 228, '37.36940', '-84.11350'), ('Datha', 589, '37.26010', '-83.91500'), ('Deese', 589, '37.33550', '-84.02440'), ('Drip Rock', 693, '37.57500', '-83.97360'), ('Eberle', 228, '37.29830', '-84.08870'), ('Eglon', 878, '37.45660', '-84.12980'), ('Egypt', 589, '37.31310', '-83.89610'), ('Elian', 589, '37.38940', '-83.83110'), ('Foxtown', 878, '37.50420', '-83.99360'), ('Gray Hawk', 878, '37.39280', '-83.93680'), ('Green Hill', 589, '37.29610', '-83.96550'), ('Herd', 589, '37.36420', '-83.87530'), ('High Knob', 589, '37.28720', '-83.90590'), ('Hisel', 878, '37.55560', '-84.08390'), ('Hurley', 878, '37.41250', '-84.03720'), ('Kerby Knob', 878, '37.52090', '-84.11520'), ('Lakes', 878, '37.50450', '-83.93670'), ('Loam', 228, '37.40690', '-84.12910'), ('Macedonia', 878, '37.45860', '-83.96580'), ('Maulden', 589, '37.35420', '-83.84900'), ('McKee', 878, '37.42990', '-83.99760'), ('Middlefork', 589, '37.34350', '-84.08140'), ('Mildred', 589, '37.35420', '-83.92720'), ('Moores Creek', 589, '37.28230', '-83.99490'), ('Morrill', 9851, '37.51920', '-84.19750'), ('Mummie', 589, '37.39360', '-83.87110'), ('Nathanton', 589, '37.36790', '-83.82760'), ('New Zion', 878, '37.47120', '-83.89600'), ('Old Orchard', 878, '37.52280', '-83.88980'), ('Olin', 589, '37.35190', '-83.96640'), ('Parrot', 589, '37.31680', '-84.06030'), ('Peoples', 589, '37.28870', '-84.04970'), ('Privett', 878, '37.40190', '-83.90060'), ('Royrader', 589, '37.26100', '-83.94080'), ('Sandgap', 878, '37.48490', '-84.09160'), ('Sand Springs', 878, '37.52610', '-84.00000'), ('Settle Store', 589, '37.32940', '-83.94170'), ('Shirley', 9851, '37.54590', '-84.14330'), ('Shop Branch', 878, '37.38540', '-84.03530'), ('Threelinks', 9851, '37.46440', '-84.19020'), ('Turkey Foot', 878, '37.46450', '-83.91790'), ('Tyner', 589, '37.34520', '-83.90390'), ('Waneta', 878, '37.47080', '-84.03850'), ('Welchburg', 589, '37.32060', '-83.93000'), ('Wind Cave', 878, '37.51250', '-83.92890'), ('Zekes Point', 589, '37.35100', '-83.88890')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ070': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adairville', 920, '36.66754', '-86.85194'), ('Agnes', 0, '37.04838', '-87.02028'), ('Anderson', 0, '37.01810', '-86.79972'), ('Auburn', 1444, '36.86421', '-86.71027'), ('Beechland', 0, '37.04171', '-86.91250'), ('Cave Springs', 0, '36.79921', '-86.95333'), ('Chandlers Chapel', 0, '36.94921', '-86.79305'), ('Cooperstown', 0, '36.93032', '-86.88750'), ('Corinth', 1444, '36.78893', '-86.80389'), ('Costelow', 0, '36.99088', '-86.76777'), ('Crossroad', 0, '36.86671', '-87.02194'), ('Danby', 0, '36.88254', '-86.91944'), ('Deer Lick', 0, '37.01588', '-87.03666'), ('Dennis', 0, '36.84282', '-86.78722'), ('Diamond Springs', 0, '37.03560', '-86.97583'), ('Dot', 920, '36.67782', '-86.95250'), ('Edwards', 0, '36.95921', '-86.94083'), ('Epleys', 0, '36.92699', '-86.93861'), ('Everett', 0, '36.93643', '-87.05416'), ('Ferguson', 881, '36.77948', '-86.97722'), ('Gasper', 0, '36.95004', '-86.74194'), ('Gordonsville', 0, '36.84004', '-87.01889'), ('Hilltop', 0, '36.66421', '-86.77916'), ('Hollow Bill', 0, '37.05616', '-86.98833'), ('Homer', 0, '36.96143', '-86.83972'), ('Insco', 0, '36.98115', '-86.86444'), ('Jerico', 0, '36.99671', '-86.97750'), ('Justice', 0, '36.88115', '-87.05611'), ('Keysburg', 189, '36.65115', '-87.00805'), ('Lewisburg', 903, '36.98643', '-86.94722'), ('Lickskillet', 0, '36.73810', '-86.98972'), ('Lost City', 0, '36.97699', '-86.90500'), ('Oakville', 0, '36.74893', '-86.87555'), ('Old Volney', 0, '36.77421', '-87.01250'), ('Olmstead', 189, '36.75226', '-87.01500'), ('Russellville', 7149, '36.84532', '-86.88722'), ('Schley', 0, '36.68615', '-86.92000'), ('Schochoh', 0, '36.72282', '-86.79111'), ('South Union', 1444, '36.87643', '-86.65638'), ('Spa', 903, '36.96171', '-87.00472'), ('Whippoorwill', 0, '36.81671', '-87.00972'), ('Wolf Lick', 0, '37.01893', '-86.95611')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ071': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alvaton', 49296, '36.87338', '-86.35305'), ('Anna', 0, '37.11643', '-86.42304'), ('Barren River', 0, '37.04921', '-86.51666'), ('Benleo', 0, '37.11393', '-86.54416'), ('Blue Level', 0, '36.97754', '-86.54110'), ('Bowling Green', 49296, '36.99032', '-86.44360'), ('Boyce', 49296, '36.83199', '-86.37944'), ('Bristow', 0, '37.01865', '-86.35999'), ('Browning', 0, '36.94699', '-86.60972'), ('Buffalo Fork', 0, '36.99949', '-86.67333'), ('Claypool', 260, '36.90588', '-86.24082'), ('Crestmoor', 0, '36.97171', '-86.46832'), ('Delafield', 0, '37.01115', '-86.44582'), ('Drake', 0, '36.83615', '-86.40971'), ('Girkin', 0, '37.06754', '-86.35832'), ('Glenmore', 0, '37.16838', '-86.39887'), ('Gotts', 0, '36.97282', '-86.31388'), ('Greencastle', 0, '37.09171', '-86.49554'), ('Greenhill', 0, '36.90810', '-86.31582'), ('Greenwood', 0, '36.94032', '-86.41999'), ('Guy', 0, '37.12393', '-86.61305'), ('Hadley', 87, '37.05977', '-86.60694'), ('Hardcastle', 0, '36.94171', '-86.32888'), ('Hays', 784, '37.03144', '-86.13887'), ('Hydro', 0, '36.97560', '-86.15637'), ('Kepler', 0, '36.97477', '-86.20054'), ('Loving', 0, '37.02032', '-86.29110'), ('Martinsville', 0, '36.92449', '-86.21471'), ('Matlock', 0, '36.83282', '-86.46610'), ('Memphis Junction', 0, '36.94226', '-86.48916'), ('Motley', 0, '36.90754', '-86.28804'), ('Mount Victor', 0, '36.97921', '-86.39499'), ('Oakland', 260, '37.04199', '-86.24832'), ('Petros', 0, '36.89726', '-86.59666'), ('Plano', 49296, '36.88032', '-86.41832'), ('Plum Springs', 447, '37.01838', '-86.38138'), ('Polkville', 0, '36.97254', '-86.27082'), ('Pondsville', 0, '36.99449', '-86.16526'), ('Richardsville', 49296, '37.10477', '-86.47082'), ('Rich Pond', 323, '36.89421', '-86.50944'), ('Riverside', 87, '37.15893', '-86.54360'), ('Rockfield', 323, '36.91032', '-86.56444'), ('Rockland', 0, '37.08977', '-86.58388'), ('Sand Hill', 0, '37.10504', '-86.38582'), ('Smiths Grove', 784, '37.05255', '-86.20776'), ('Sunnyside', 0, '37.02838', '-86.30749'), ('Three Forks', 784, '36.95310', '-86.20387'), ('Three Springs', 0, '36.91671', '-86.43694'), ('Tuckertown', 0, '37.07643', '-86.26137'), ('Woodburn', 323, '36.84254', '-86.52749')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ072': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Flat Rock', 2592, '36.67587', '-86.56194'), ('Franklin', 7996, '36.72226', '-86.57722'), ('Geddes', 0, '36.65671', '-86.54972'), ('Gold City', 323, '36.75448', '-86.44749'), ('Hickory Flat', 0, '36.70782', '-86.46194'), ('Highland', 0, '36.70671', '-86.43916'), ('Hillsdale', 0, '36.79698', '-86.47638'), ('Middleton', 0, '36.75088', '-86.73472'), ('Neosheo', 0, '36.71199', '-86.67861'), ('Peden Mill', 0, '36.68115', '-86.52555'), ('Prices Mill', 3611, '36.68143', '-86.73000'), ('Providence', 3611, '36.66615', '-86.67750'), ('Salmons', 0, '36.77837', '-86.56305'), ('Schweizer', 0, '36.67088', '-86.63388'), ('Temperance', 0, '36.77698', '-86.43110'), ('Turnertown', 0, '36.77476', '-86.65527')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ073': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adolphus', 0, '36.65171', '-86.26138'), ('Allen Springs', 0, '36.83171', '-86.31499'), ('Alonzo', 0, '36.69310', '-86.34471'), ('Amos', 0, '36.65255', '-86.08832'), ('Bornes Ford', 0, '36.66254', '-86.41221'), ('Butlersville', 0, '36.78365', '-86.31305'), ('Cedar Springs', 0, '36.83088', '-86.10665'), ('Chapel Hill', 0, '36.71976', '-86.29277'), ('Clare', 0, '36.71504', '-86.39471'), ('Eubanks Ford', 0, '36.69254', '-86.41360'), ('Fleet', 0, '36.65365', '-86.29388'), ('Forest Springs', 4327, '36.65894', '-86.16110'), ('Gainesville', 0, '36.85060', '-86.15832'), ('Halfway', 0, '36.79560', '-86.29610'), ('Halifax', 0, '36.82838', '-86.24221'), ('Holland', 236, '36.69894', '-86.06832'), ('Maynard', 4327, '36.76922', '-86.07582'), ('McElroy Ford', 0, '36.73393', '-86.40999'), ('Meador', 0, '36.89116', '-86.17610'), ('Mount Aerial', 0, '36.75337', '-86.39277'), ('Mount Zion', 0, '36.68311', '-86.05721'), ('New Roe', 0, '36.66588', '-86.38249'), ('Oak Forest', 0, '36.71588', '-86.09832'), ('Petroleum', 0, '36.69532', '-86.24832'), ('Pope', 0, '36.76254', '-86.33971'), ('Port Oliver Ford', 0, '36.89394', '-86.13804'), ('Raley Ford', 0, '36.85976', '-86.26721'), ('Red Hill', 0, '36.74115', '-86.29916'), ('Rodemer', 0, '36.71921', '-86.22943'), ('Scottsville', 4327, '36.75338', '-86.19054'), ('Settle', 0, '36.86949', '-86.21443'), ('Trammel', 0, '36.78532', '-86.35332'), ('Walnut Hill', 0, '36.72311', '-86.04582'), ('West Fork', 0, '36.78282', '-86.28054'), ('Yesse', 0, '36.85310', '-86.19721')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ074': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Apple Grove', 0, '37.05533', '-86.07276'), ('Austin', 236, '36.82533', '-86.01915'), ('Beckton', 0, '36.98422', '-86.03637'), ('Berry Store', 0, '36.95338', '-86.14082'), ('Bon Ayr', 517, '37.02449', '-86.05887'), ('Bristletown', 0, '36.93422', '-85.91942'), ('Carden', 0, '37.04255', '-85.99859'), ('Cave City', 1880, '37.13672', '-85.95692'), ('Cooktown', 0, '36.83477', '-85.94081'), ('Coral Hill', 0, '37.05144', '-85.85636'), ('Dry Fork', 0, '36.81533', '-85.92470'), ('Eighty Eight', 1586, '36.91839', '-85.78636'), ('Etoile', 0, '36.83561', '-85.89998'), ('Finney', 784, '36.91532', '-86.10498'), ('Glasgow', 1309, '36.99588', '-85.91192'), ('Goodnight', 0, '37.09338', '-85.88025'), ('Griderville', 0, '37.11283', '-85.87025'), ('Halfway', 4327, '37.08839', '-85.79553'), ('Haywood', 1309, '36.94616', '-85.97442'), ('Highland Springs', 0, '37.13144', '-86.02581'), ('Hiseville', 224, '37.10089', '-85.81247'), ('Kino', 0, '36.94783', '-85.77747'), ('Lecta', 1309, '37.01116', '-85.85609'), ('Lucas', 1309, '36.89172', '-86.03748'), ('Merry Oaks', 0, '37.02227', '-86.10609'), ('Nobob', 0, '36.86533', '-85.77414'), ('Oil City', 0, '37.03338', '-85.98303'), ('Park', 0, '37.14033', '-85.77469'), ('Park City', 517, '37.09394', '-86.04637'), ('Peter Creek', 0, '36.84505', '-85.97915'), ('Pritchardsville', 0, '36.97227', '-85.93720'), ('Railton', 0, '36.98171', '-86.12054'), ('Red Cross', 0, '36.97866', '-86.08582'), ('Rocky Hill', 0, '36.94005', '-86.07109'), ('Roseville', 1309, '36.88727', '-85.92553'), ('Slick Rock', 0, '37.00589', '-85.79803'), ('Stovall', 0, '37.05644', '-86.01026'), ('Temple Hill', 1309, '36.88672', '-85.84720'), ('Tracy', 236, '36.79811', '-85.97054')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ075': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Akersville', 236, '36.64755', '-85.93776'), ('Blythe', 0, '36.67645', '-85.54886'), ('Boles', 0, '36.61867', '-85.66442'), ('Bugtussle', 0, '36.62589', '-85.87581'), ('Emberton', 0, '36.71311', '-85.80636'), ('Flippin', 236, '36.72033', '-85.87414'), ('Forkton', 0, '36.74811', '-85.71970'), ('Fountain Run', 236, '36.71533', '-85.96581'), ('Freetown', 0, '36.68033', '-85.79720'), ('Gamaliel', 439, '36.63978', '-85.79664'), ('Grandview', 0, '36.71950', '-85.68719'), ('Gum Tree', 0, '36.72422', '-85.81942'), ('Harlan Crossroads', 0, '36.65311', '-85.70386'), ('Hestand', 2660, '36.65423', '-85.62942'), ('Jeffrey', 0, '36.75117', '-85.84053'), ('Lamb', 0, '36.75866', '-85.89914'), ('Meshack', 0, '36.73256', '-85.54886'), ('Mount Hermon', 0, '36.80672', '-85.82081'), ('Mud Lick', 2660, '36.75283', '-85.78053'), ('Otia', 0, '36.68784', '-85.56914'), ('Persimmon', 0, '36.80311', '-85.64247'), ('Raydure', 0, '36.65228', '-85.47913'), ('Rockbridge', 2660, '36.78395', '-85.68414'), ('Sulphur Lick', 0, '36.80533', '-85.73858'), ('Tompkinsville', 2660, '36.70228', '-85.69164'), ('Vernon', 0, '36.63700', '-85.50913')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ076': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Beaumont', 1586, '36.87561', '-85.65191'), ('Beechville', 0, '37.06145', '-85.63275'), ('Cedar Flats', 0, '36.94645', '-85.61414'), ('Center', 224, '37.14228', '-85.69302'), ('Clarks Corner', 0, '37.04200', '-85.66108'), ('Cofer', 0, '36.95978', '-85.49024'), ('Cork', 0, '37.03756', '-85.58330'), ('Curtis', 0, '36.93311', '-85.57636'), ('Cyclone', 0, '36.83756', '-85.67942'), ('Echo', 0, '37.02783', '-85.74747'), ('Edmonton', 1586, '36.98006', '-85.61219'), ('Gascon', 1586, '37.00367', '-85.57108'), ('Goodluck', 0, '36.92533', '-85.64164'), ('Knob Lick', 1586, '37.07839', '-85.69441'), ('New Liberty', 0, '37.00755', '-85.69303'), ('Node', 0, '37.12922', '-85.64386'), ('Randolph', 0, '36.97089', '-85.71053'), ('Savoyard', 0, '37.11200', '-85.74108'), ('Summer Shade', 1586, '36.88422', '-85.70247'), ('Willow Shade', 0, '36.84784', '-85.60775'), ('Wisdom', 1586, '37.00394', '-85.71997')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ077': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Absher', 0, '37.16868', '-85.25913'), ('Barnett Springs', 0, '37.24201', '-85.09135'), ('Bliss', 0, '37.08006', '-85.37191'), ('Breeding', 1756, '36.95923', '-85.43441'), ('Cane Valley', 4014, '37.18034', '-85.31968'), ('Casey Creek', 0, '37.27229', '-85.15746'), ('Chance', 0, '36.97534', '-85.32468'), ('Christine', 0, '37.14229', '-85.20690'), ('Coburg', 4014, '37.20145', '-85.33580'), ('Columbia', 4014, '37.10284', '-85.30635'), ('Craycraft', 0, '37.09395', '-85.20274'), ('Crocus', 4014, '36.98062', '-85.21079'), ('Cundiff', 0, '36.94479', '-85.25440'), ('Dunbar Hill', 0, '37.21590', '-85.17163'), ('Ella', 2399, '37.15673', '-85.13968'), ('Fairplay', 0, '37.01228', '-85.30385'), ('Feathersburg', 0, '37.31146', '-85.16913'), ('Flatwood', 0, '37.04784', '-85.36163'), ('Gadberry', 0, '37.04367', '-85.30941'), ('Garlin', 0, '37.11395', '-85.25218'), ('Gentrys Mill', 0, '37.08479', '-85.15357'), ('Glens Fork', 4014, '37.01395', '-85.25052'), ('Gradyville', 4014, '37.06339', '-85.42246'), ('Holmes', 0, '37.20756', '-85.26968'), ('Inroad', 0, '36.95645', '-85.27968'), ('Joppa', 0, '37.05173', '-85.24218'), ('Keltner', 0, '37.09506', '-85.51024'), ('Knifley', 0, '37.24284', '-85.18940'), ('Milltown', 0, '37.12228', '-85.40746'), ('Montpelier', 2399, '37.01895', '-85.18551'), ('Neatsville', 0, '37.19729', '-85.12551'), ('Nell', 0, '37.00950', '-85.48330'), ('Ozark', 0, '37.07923', '-85.23135'), ('Pellyton', 2399, '37.21174', '-85.08412'), ('Pickett', 0, '37.12256', '-85.47552'), ('Portland', 0, '37.12062', '-85.44608'), ('Purdy', 0, '37.15146', '-85.18496'), ('Sparksville', 0, '37.00839', '-85.40191'), ('Toria', 0, '36.98950', '-85.43746'), ('Weed', 0, '37.03867', '-85.47135')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ078': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bryan', 0, '36.92951', '-85.20385'), ('Creelsboro', 1624, '36.88506', '-85.19746'), ('Decatur', 0, '37.12535', '-84.99801'), ('Eli', 0, '37.04396', '-84.96440'), ('Esto', 0, '37.00423', '-85.11079'), ('Fonthill', 0, '37.08396', '-85.00356'), ('Helm', 0, '36.89562', '-85.15273'), ('Honey Acre', 0, '37.11285', '-84.97467'), ('Horntown', 0, '37.06785', '-85.00551'), ('Indian Hills', 0, '36.99285', '-84.93356'), ('Jabez', 5981, '36.98702', '-84.89356'), ('Jamestown', 1624, '36.98479', '-85.06301'), ('Jericho', 0, '37.08646', '-85.04912'), ('Karlus', 0, '36.99396', '-85.02634'), ('Long Bottom', 0, '36.88229', '-85.12968'), ('Manntown', 0, '36.87840', '-85.16079'), ('Middletown', 5744, '37.02062', '-85.07607'), ('Old Olga', 0, '36.92562', '-85.16857'), ('Olga', 1624, '36.95090', '-85.16024'), ('Ono', 0, '36.98868', '-84.96662'), ('Ribbon', 0, '36.88034', '-85.24024'), ('Rose Crossroads', 0, '36.97590', '-85.12051'), ('Rowena', 0, '36.87784', '-85.10634'), ('Royville', 0, '37.06673', '-85.10579'), ('Russell Springs', 2399, '37.05618', '-85.08857'), ('Salem', 2399, '37.06896', '-84.98551'), ('Sano', 0, '37.10840', '-85.10357'), ('Sewellton', 0, '36.93618', '-85.10496'), ('Sycamore Flat', 0, '37.12396', '-85.04329'), ('Vinnie', 0, '37.01091', '-84.86911'), ('Webbs Cross Roads', 0, '37.10924', '-85.05357'), ('Whittle', 0, '37.02201', '-84.96162')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ079': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alpine', 637, '36.92220', '-84.51900'), ('Bandy', 1193, '37.29330', '-84.50360'), ('Bent', 881, '37.11190', '-84.44470'), ('Bobtown', 634, '37.21450', '-84.53820'), ('Bronston', 637, '36.98590', '-84.61890'), ('Burnside', 637, '36.98730', '-84.60090'), ('Cains Store', 1850, '37.13250', '-84.85060'), ('Dabney', 634, '37.18390', '-84.55000'), ('Dykes', 881, '37.06860', '-84.43600'), ('Elihu', 881, '37.04520', '-84.59120'), ('Eubank', 358, '37.27930', '-84.65490'), ('Faubush', 11352, '37.06560', '-84.82660'), ('Ferguson', 881, '37.06670', '-84.59450'), ('General Burnside State Park', 637, '36.97450', '-84.60220'), ('Grade', 881, '37.07180', '-84.46150'), ('Hogue', 634, '37.16330', '-84.70970'), ('Magnum', 1850, '37.15220', '-84.83510'), ('Mount Victory', 881, '37.02920', '-84.38640'), ('Nancy', 11352, '37.07250', '-84.75090'), ('Naomi', 5981, '37.00890', '-84.79190'), ('Pointer', 634, '37.13280', '-84.76730'), ('Pulaski', 634, '37.20890', '-84.63890'), ('Pulaski County Park', 11352, '37.06520', '-84.70750'), ('Quinton', 637, '36.95320', '-84.62670'), ('Ruth', 881, '37.07620', '-84.52470'), ('Science Hill', 634, '37.17600', '-84.63640'), ('Shopville', 881, '37.15860', '-84.48000'), ('Sloans Valley', 637, '36.93830', '-84.53630'), ('Somerset', 11352, '37.08230', '-84.60980'), ('Somerset Pulaski County', 881, '37.05540', '-84.61360'), ('Stab', 634, '37.15140', '-84.75090'), ('Tateville', 637, '36.96390', '-84.58180'), ('Trimble', 637, '37.01010', '-84.73680'), ('Valley Oak', 634, '37.18920', '-84.47220'), ('Woodstock', 358, '37.26130', '-84.51670')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYZ080': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Atlanta', 5757, '37.23250', '-84.04940'), ('Baldrock', 7742, '36.99030', '-84.28360'), ('Bernstadt', 5757, '37.15610', '-84.19470'), ('Billows', 228, '37.17080', '-84.29670'), ('Blackwater', 1738, '37.05310', '-83.89500'), ('Brock', 5757, '37.10970', '-84.00000'), ('Bunch', 5757, '37.09860', '-84.23640'), ('Bush', 1738, '37.09250', '-83.87030'), ('Camp Wildcat', 228, '37.26490', '-84.20080'), ('Cane Creek', 5757, '37.05580', '-83.92280'), ('Carmichael', 5757, '37.18690', '-84.13870'), ('Crawford', 589, '37.19440', '-83.95190'), ('Cruise', 228, '37.31830', '-84.12310'), ('Dorthae', 1662, '36.99330', '-84.10470'), ('East Bernstadt', 774, '37.18940', '-84.11830'), ('Fariston', 5757, '37.07000', '-84.05670'), ('Greenmount', 589, '37.24750', '-84.03080'), ('Hare', 5757, '37.20430', '-84.15990'), ('Hazel Patch', 228, '37.24440', '-84.19310'), ('Hightop', 1662, '37.03280', '-84.18780'), ('Holly Bay Recreation Area', 7742, '36.98460', '-84.25040'), ('Huxley', 7742, '36.95470', '-84.34310'), ('Keavy', 1662, '37.00120', '-84.16560'), ('Lake', 1738, '37.08940', '-83.88560'), ('Lamero', 228, '37.29010', '-84.14070'), ('Langnau', 5757, '37.17970', '-83.96690'), ('Lesbas', 5757, '37.07890', '-83.99560'), ('Levi Jackson Wilderness Rd Sp', 5757, '37.08150', '-84.04130'), ('Lida', 5757, '37.08220', '-83.93470'), ('Lily', 1662, '37.02380', '-84.07550'), ('London', 5692, '37.12800', '-84.08220'), ('London-Corbin Airport', 5757, '37.08680', '-84.07710'), ('Lynn Camp', 1662, '36.99380', '-84.00900'), ('Maplesville', 5757, '37.15000', '-84.02780'), ('Marydell', 1738, '37.10920', '-83.90890'), ('McHargue', 1662, '37.00530', '-84.01750'), ('McWhorter', 589, '37.23420', '-84.00000'), ('Mershons', 228, '37.28310', '-84.12580'), ('North Corbin', 1662, '36.96650', '-84.09470'), ('Oakley', 5757, '37.23830', '-84.09780'), ('Pittsburg', 5757, '37.16070', '-84.10770'), ('Rockcastle Springs', 7742, '37.01640', '-84.30450'), ('Sasser', 1738, '37.07140', '-83.89110'), ('Sublimity City', 5757, '37.10020', '-84.08630'), ('Templer', 228, '37.30230', '-84.12390'), ('Tuttle', 1662, '37.02000', '-83.95000'), ('Victory', 228, '37.25640', '-84.09700'), ('Vox', 7742, '36.98640', '-84.19920'), ('Wood Creek Lake', 228, '37.20330', '-84.18970')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYZ081': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Amandaville', 1756, '36.89673', '-85.31107'), ('Arat', 0, '36.75673', '-85.46524'), ('Ashlock', 0, '36.62451', '-85.43247'), ('Bakerton', 0, '36.84840', '-85.33357'), ('Bow', 0, '36.76256', '-85.34496'), ('Burkesville', 1756, '36.79034', '-85.37052'), ('Claywell', 0, '36.81867', '-85.28996'), ('Cloyds Landing', 0, '36.75423', '-85.49108'), ('Dubre', 1586, '36.83895', '-85.55858'), ('Ellington', 0, '36.75728', '-85.42302'), ('Frogue', 0, '36.66617', '-85.29829'), ('Green Grove', 0, '36.73395', '-85.26968'), ('Grider', 0, '36.80423', '-85.42552'), ('Hegira', 0, '36.70673', '-85.27607'), ('Judio', 0, '36.69589', '-85.48080'), ('Kettle', 0, '36.70228', '-85.36107'), ('Leslie', 0, '36.77951', '-85.45191'), ('Littrell', 0, '36.68590', '-85.39635'), ('Marrowbone', 1756, '36.82784', '-85.50663'), ('Modoc', 0, '36.73590', '-85.30274'), ('Peytonsburg', 1493, '36.63423', '-85.39274'), ('Stalcup', 0, '36.70284', '-85.44663'), ('Tanbark', 0, '36.72228', '-85.38441'), ('Waterview', 0, '36.81700', '-85.45830')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ082': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Aaron', 0, '36.81257', '-85.18079'), ('Albany', 2220, '36.69090', '-85.13468'), ('Alpha', 0, '36.76229', '-85.01023'), ('Browns Crossroads', 0, '36.71590', '-85.19079'), ('Bug', 0, '36.65479', '-85.10912'), ('Cannons Mill', 0, '36.68896', '-85.08995'), ('Cartwright', 0, '36.75284', '-85.07606'), ('Cumberland City', 2220, '36.80507', '-85.06829'), ('Decide', 0, '36.77340', '-85.20412'), ('Desda', 0, '36.83451', '-85.19829'), ('Highway', 0, '36.73840', '-85.20885'), ('Hobart', 0, '36.68395', '-85.26302'), ('Huntersville', 0, '36.62479', '-85.13551'), ('Ida', 0, '36.76757', '-85.16801'), ('Marlow', 0, '36.77729', '-85.09245'), ('Narvel', 0, '36.78479', '-85.04551'), ('Nora', 0, '36.76062', '-85.04273'), ('Rolan', 0, '36.65201', '-85.03328'), ('Savage', 0, '36.69285', '-85.04773'), ('Seventy Six', 0, '36.78645', '-85.14385'), ('Shipley', 0, '36.66729', '-85.21774'), ('Snow', 0, '36.75034', '-85.13690'), ('Static', 998, '36.62201', '-85.08495'), ('Upchurch', 0, '36.74646', '-85.11079'), ('Wago', 0, '36.73645', '-85.17246'), ('Willis Creek', 0, '36.81423', '-85.22190'), ('Wolf River Dock', 0, '36.62618', '-85.20857')], 'partOfState': 'south central', 'wfo': 'LMK'}, +'KYZ083': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Barrier', 5981, '36.76890', '-84.76720'), ('Betsey', 5981, '36.90360', '-84.74310'), ('Burfield', 5981, '36.72640', '-84.79090'), ('Cabell', 5981, '36.83110', '-85.00690'), ('Cooper', 5981, '36.77110', '-84.86140'), ('Coopersville', 5981, '36.76040', '-84.73800'), ('Delta', 637, '36.86490', '-84.65840'), ('Denney', 637, '36.81330', '-84.65690'), ('Frazer', 637, '36.95640', '-84.70500'), ('Gregory', 5981, '36.82940', '-84.70190'), ('Griffin', 5981, '36.70430', '-84.72930'), ('Hidalgo', 5981, '36.73560', '-84.94750'), ('Kidder', 637, '36.91500', '-84.65170'), ('Kidds Crossing', 5981, '36.75640', '-84.68000'), ('Mill Springs', 5981, '36.93190', '-84.77920'), ('Monticello', 5981, '36.84050', '-84.84760'), ('Mount Pisgah', 5981, '36.65890', '-84.81470'), ('Oil Valley', 5981, '36.77440', '-84.79830'), ('Parmleysville', 5981, '36.68420', '-84.75390'), ('Parnell', 5981, '36.86780', '-84.94530'), ('Powersburg', 2220, '36.70420', '-84.96530'), ('Ritner', 1111, '36.79250', '-84.64000'), ('Rockeybranch', 5981, '36.73240', '-84.73300'), ('Slickford', 5981, '36.69750', '-84.89010'), ('Steubenville', 5981, '36.88750', '-84.80280'), ('Sunnybrook', 2220, '36.65700', '-84.97580'), ('Susie', 5981, '36.77640', '-84.95640'), ('Zula', 5981, '36.76720', '-84.97940')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYZ084': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Beulah Heights', 1111, '36.80340', '-84.43640'), ('Blue Heron', 1586, '36.66840', '-84.54600'), ('Co Operative', 1586, '36.69280', '-84.60780'), ('Great Meadows Camp', 3502, '36.62880', '-84.72490'), ('Greenwood', 1111, '36.87470', '-84.49400'), ('Hollyhill', 1680, '36.66310', '-84.33030'), ('Honeybee', 1111, '36.84220', '-84.37320'), ('Marshes Siding', 1111, '36.74330', '-84.48120'), ('Parkers Lake', 1111, '36.84060', '-84.48050'), ('Pine Knot', 1680, '36.66390', '-84.43890'), ('Slavans', 1111, '36.75360', '-84.66560'), ('Stearns', 1586, '36.69500', '-84.47800'), ('Strunk', 1680, '36.62740', '-84.43490'), ('Whitley City', 1111, '36.72470', '-84.47540'), ('Wiborg', 1111, '36.80910', '-84.48950')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYZ085': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ayers', 2447, '36.63040', '-84.22900'), ('Bark Camp', 7742, '36.91340', '-84.25530'), ('Barton', 7742, '36.93500', '-84.12990'), ('Bon', 5143, '36.72270', '-84.19100'), ('Bounty', 5143, '36.72670', '-84.26760'), ('Carpenter', 3589, '36.71510', '-83.97140'), ('Clio', 5143, '36.81690', '-84.19930'), ('Corbin', 7742, '36.93740', '-84.10740'), ('Cumberland Falls', 1111, '36.84070', '-84.33840'), ('Deering', 7742, '36.88100', '-84.19920'), ('Dixie', 5143, '36.69610', '-84.05450'), ('Duckrun', 1680, '36.73590', '-84.31570'), ('Emlyn', 5143, '36.70470', '-84.14250'), ('Faber', 7742, '36.87630', '-84.13220'), ('Fairview', 2447, '36.59960', '-84.11250'), ('Gatliff', 2447, '36.67880', '-84.02140'), ('Gausdale', 3589, '36.75750', '-83.97570'), ('Goins', 3589, '36.69970', '-83.94020'), ('Goldbug', 5143, '36.79450', '-84.17360'), ('Grove', 7742, '36.93050', '-84.22330'), ('Jellico Creek', 5143, '36.68690', '-84.23260'), ('Julip', 5143, '36.74210', '-84.06630'), ('Krupp', 5143, '36.78700', '-84.25030'), ('Liberty', 5143, '36.76460', '-84.20340'), ('Lot', 2447, '36.60040', '-84.08870'), ('Louden', 5143, '36.75170', '-84.02840'), ('Lucky', 5143, '36.73110', '-84.06740'), ('Mountain Ash', 2447, '36.65720', '-84.12910'), ('Nevisdale', 5143, '36.68490', '-84.04410'), ('Packard', 2447, '36.66680', '-84.05570'), ('Perkins', 5143, '36.78430', '-84.06190'), ('Pleasant View', 5143, '36.67860', '-84.12950'), ('Polly Camp', 2447, '36.66460', '-84.04440'), ('Red Ash', 2447, '36.61610', '-84.12250'), ('Redbird', 5143, '36.76150', '-84.21960'), ('Rockholds', 5143, '36.82920', '-84.11660'), ('Rye', 7742, '36.92440', '-84.18730'), ('Saxton', 2447, '36.63320', '-84.10950'), ('Siler', 3589, '36.69830', '-83.96250'), ('Suttons Mill', 5143, '36.74300', '-84.10180'), ('Verne', 5143, '36.71790', '-84.07010'), ('Walden', 5143, '36.84590', '-84.16820'), ('Wilkerson', 2447, '36.59850', '-83.97150'), ('Williamsburg', 5143, '36.73830', '-84.16750'), ('Wofford', 5143, '36.78120', '-84.13490'), ('Woodbine', 7742, '36.90450', '-84.08830'), ('Yaden', 5143, '36.73690', '-84.09800'), ('Youngs Creek', 5143, '36.86560', '-84.24090'), ('Zion Hill', 2447, '36.60950', '-84.23710')], 'partOfState': 'south central', 'wfo': 'JKL'}, +'KYZ086': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arkle', 3589, '36.91990', '-83.97670'), ('Artemus', 3589, '36.83360', '-83.84150'), ('Avis', 3589, '36.81530', '-83.82840'), ('Baileys Switch', 3589, '36.91240', '-83.90010'), ('Barbourville', 3589, '36.86640', '-83.88400'), ('Barnyard', 3589, '36.90900', '-83.74130'), ('Baughman', 3589, '36.86550', '-83.80050'), ('Bentley Station', 3589, '36.91780', '-83.93190'), ('Bertha Station', 1662, '36.92990', '-83.99070'), ('Bimble', 3589, '36.87690', '-83.82000'), ('Birdseye', 3589, '36.74290', '-83.93210'), ('Boone Heights', 3589, '36.85070', '-83.85450'), ('Brush Creek', 3589, '36.82240', '-83.84010'), ('Bryants Store', 3589, '36.77440', '-83.92120'), ('Cannon', 3589, '36.91720', '-83.85910'), ('Clate', 3589, '36.79890', '-83.96050'), ('Cranes Nest', 3589, '36.98950', '-83.87950'), ('Dewitt', 2093, '36.87700', '-83.73750'), ('Dishman Springs', 3589, '36.86890', '-83.95970'), ('Elys', 2093, '36.80590', '-83.75090'), ('Emanuel', 3589, '36.90630', '-83.93270'), ('Erose', 2093, '36.92780', '-83.61680'), ('Flat Lick', 2093, '36.82420', '-83.76900'), ('Fletcher', 3589, '37.00440', '-83.86960'), ('Fount', 3589, '36.98770', '-83.82870'), ('Garrich', 3589, '36.93250', '-83.93650'), ('Gibbs', 3589, '37.02040', '-83.89910'), ('Girdler', 3589, '36.93730', '-83.84110'), ('Gray', 1662, '36.94340', '-84.00570'), ('Green Road', 3589, '36.95960', '-83.83590'), ('Hammond', 3589, '36.95730', '-83.72710'), ('Haven', 1738, '37.01150', '-83.82050'), ('Heidrick', 3589, '36.88260', '-83.87840'), ('Himyar', 3589, '36.83300', '-83.79850'), ('Hinkle', 3589, '36.91350', '-83.81830'), ('Hubbs', 3589, '36.77730', '-83.88990'), ('Indian Creek', 3589, '36.87000', '-83.98230'), ('Jarvis', 3589, '36.95520', '-83.89150'), ('Kayjay', 3589, '36.74420', '-83.84820'), ('King', 3589, '36.79570', '-83.94110'), ('Knoxfork', 3589, '36.99260', '-83.92420'), ('Lowell', 3589, '36.90960', '-83.92920'), ('Mills', 2093, '36.92260', '-83.64240'), ('Moore Hill', 7742, '36.93490', '-84.08070'), ('Myrick', 3589, '36.80620', '-83.84110'), ('Old Flat Lick', 2093, '36.83840', '-83.77100'), ('Permon', 3589, '36.81010', '-83.98280'), ('Providence', 3589, '36.86700', '-83.90930'), ('Rossland', 1662, '36.92680', '-83.98760'), ('Salt Gum', 2093, '36.94800', '-83.70380'), ('Scalf', 2093, '36.91850', '-83.70010'), ('Siler', 1662, '36.94120', '-84.04000'), ('Sprule', 3589, '37.01500', '-83.84890'), ('Swan Lake', 3589, '36.82430', '-83.92880'), ('Swanpond', 3589, '36.83260', '-83.90170'), ('Tedders', 3589, '37.02000', '-83.87870'), ('Trosper', 3589, '36.78750', '-83.81590'), ('Walker', 2093, '36.88280', '-83.71580'), ('Warren', 3589, '36.75260', '-83.84440'), ('Wheeler', 2093, '36.72520', '-83.84320'), ('Wilton', 7742, '36.88840', '-84.04390'), ('Woollum', 1738, '37.02090', '-83.81780'), ('Yeager', 3589, '36.87400', '-83.83130')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ087': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arjay', 2093, '36.80500', '-83.64690'), ('Balkan', 996, '36.75970', '-83.54500'), ('Beverly', 257, '36.93000', '-83.53300'), ('Binghamtown', 10730, '36.63190', '-83.71940'), ('Blackmont', 257, '36.79200', '-83.52500'), ('Black Snake', 996, '36.76910', '-83.50390'), ('Blanche', 2093, '36.81910', '-83.65610'), ('Callaway', 2093, '36.78420', '-83.56310'), ('Calvin', 2093, '36.72280', '-83.62220'), ('Cary', 2093, '36.79360', '-83.66530'), ('Chenoa', 10730, '36.66940', '-83.86190'), ('Clear Creek Spring', 2093, '36.72690', '-83.72830'), ('Cubage', 996, '36.70250', '-83.52170'), ('Davisburg', 10730, '36.68000', '-83.82360'), ('East Pineville', 2093, '36.73470', '-83.67170'), ('Ferndale', 2093, '36.69610', '-83.68610'), ('Field', 2093, '36.89310', '-83.60280'), ('Fonde', 10730, '36.60000', '-83.87780'), ('Fourmile', 2093, '36.79360', '-83.74190'), ('Frakes', 10730, '36.64310', '-83.92780'), ('Hutch', 210, '36.65030', '-83.62220'), ('Ingram', 2093, '36.73110', '-83.79920'), ('Kettle Island', 2093, '36.79140', '-83.60470'), ('Meldrum', 10730, '36.66750', '-83.69390'), ('Middlesboro', 10730, '36.61320', '-83.72240'), ('Miracle', 2093, '36.76110', '-83.58390'), ('Noetown', 10730, '36.61750', '-83.75560'), ('Oaks', 2093, '36.72330', '-83.55670'), ('Pearl', 2447, '36.63030', '-83.94550'), ('Pineville', 2093, '36.76280', '-83.70130'), ('Ponza', 2093, '36.72000', '-83.64300'), ('Pruden', 10730, '36.59500', '-83.89140'), ('Rella', 2093, '36.83580', '-83.63280'), ('Stony Fork', 257, '36.83250', '-83.53470'), ('Straight Creek', 2093, '36.77280', '-83.66720'), ('Varilla', 2093, '36.73940', '-83.60030'), ('Wallsend', 2093, '36.76580', '-83.71000'), ('Wasioto', 2093, '36.75250', '-83.68920')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ088': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ages', 1101, '36.85750', '-83.24670'), ('Alva', 996, '36.73600', '-83.42490'), ('Arthur', 1101, '36.99890', '-83.17280'), ('Bailey Creek', 1101, '36.88060', '-83.19080'), ('Bardo', 996, '36.75880', '-83.34340'), ('Baxter', 766, '36.86170', '-83.33180'), ('Benham', 599, '36.96460', '-82.95190'), ('Benito', 1101, '36.90090', '-83.12720'), ('Big Black Mountain', 900, '36.91450', '-82.89090'), ('Big Laurel', 1101, '36.97940', '-83.21900'), ('Black Bottom', 206, '36.90790', '-83.07830'), ('Blackjoe', 2081, '36.85940', '-83.28300'), ('Black Mountain', 1101, '36.84860', '-83.14560'), ('Blair', 599, '36.99010', '-82.95350'), ('Bledsoe', 766, '36.92400', '-83.36620'), ('Bobs Creek', 1101, '36.78960', '-83.24690'), ('Brookside', 1101, '36.85920', '-83.25270'), ('Chad', 2611, '36.97050', '-83.01910'), ('Chevrolet', 2081, '36.81590', '-83.27490'), ('Closplint', 206, '36.90250', '-83.06780'), ('Clover', 599, '36.92830', '-82.96720'), ('Clover-Darby', 206, '36.89230', '-83.06210'), ('Clover Fork', 900, '36.87720', '-82.93160'), ('Clovertown', 2081, '36.85270', '-83.30530'), ('Clutts', 2611, '36.97230', '-82.97130'), ('Coburn', 2081, '36.81590', '-83.31980'), ('Coldiron', 257, '36.82680', '-83.45340'), ('Colts', 1101, '36.88040', '-83.14760'), ('Coxton', 2081, '36.85760', '-83.26670'), ('Cranks', 927, '36.76470', '-83.17210'), ('Creech', 996, '36.76720', '-83.39500'), ('Creech', 2611, '36.96730', '-83.04170'), ('Crummies', 1101, '36.77430', '-83.20520'), ('Cumberland', 2611, '36.98420', '-82.98600'), ('Darkmont', 1101, '36.87300', '-83.18000'), ('Diane', 2611, '36.95120', '-83.08100'), ('Dillon', 1101, '36.91540', '-83.19410'), ('Divide', 1101, '36.93650', '-83.21230'), ('Dizney', 206, '36.85090', '-83.11690'), ('Draper', 1101, '36.87290', '-83.21080'), ('Dressen', 2081, '36.83270', '-83.32330'), ('Elcomb', 2081, '36.82220', '-83.33520'), ('Evarts', 1101, '36.86370', '-83.19770'), ('Farmers Mill', 2081, '36.81530', '-83.28530'), ('Flagler', 1101, '36.76380', '-83.23820'), ('Fresh Meadows', 766, '36.84030', '-83.37540'), ('Gano', 1101, '36.90150', '-83.13420'), ('Gatun', 2081, '36.87210', '-83.31070'), ('Georgetown', 206, '36.88870', '-83.05380'), ('Golden Ash', 2081, '36.86100', '-83.29290'), ('Grays Knob', 2081, '36.80660', '-83.30410'), ('Harlan', 2081, '36.84140', '-83.32020'), ('Harlan Gas', 2081, '36.85070', '-83.30580'), ('Hensley Store', 996, '36.72000', '-83.35000'), ('Highsplint', 1101, '36.89850', '-83.11770'), ('Hiram', 2611, '36.96680', '-83.04760'), ('Holmes Mill', 206, '36.86840', '-83.00060'), ('Incline', 2081, '36.91650', '-83.28130'), ('Insull', 996, '36.76360', '-83.48580'), ('Jonesburg', 1101, '36.92880', '-83.24000'), ('Keith', 766, '36.85320', '-83.36920'), ('Kellioka', 1101, '36.90250', '-83.24380'), ('Kentenia', 996, '36.79800', '-83.40130'), ('Kentenia State Forest', 1101, '36.92490', '-83.22430'), ('Kenvir', 1101, '36.85390', '-83.15960'), ('Kerr', 257, '36.83800', '-83.41290'), ('Kildav', 1101, '36.85720', '-83.21100'), ('Kingdom Come State Park', 2611, '36.99030', '-82.98520'), ('Kitts', 2081, '36.85510', '-83.29790'), ('Laden', 1101, '36.91640', '-83.19290'), ('Layman', 257, '36.82970', '-83.46420'), ('Lejunior', 206, '36.90590', '-83.07170'), ('Lenarve', 2081, '36.80580', '-83.26830'), ('Leonard', 1101, '36.91010', '-83.11020'), ('Liggett', 996, '36.75190', '-83.34720'), ('Longton', 257, '36.83550', '-83.41010'), ('Louellen', 206, '36.91140', '-83.08580'), ('Low', 996, '36.78290', '-83.39820'), ('Loyall', 766, '36.85180', '-83.35080'), ('Lynch', 900, '36.96450', '-82.91360'), ('Martins Fork', 996, '36.73000', '-83.33000'), ('Martins Fork Lake', 2081, '36.75000', '-83.26000'), ('Mary Alice', 2081, '36.78580', '-83.33040'), ('Mary Helen', 2081, '36.81270', '-83.25200'), ('Merna', 2081, '36.79340', '-83.25200'), ('Molus', 257, '36.81360', '-83.49110'), ('Nolansburg', 1101, '36.92620', '-83.16550'), ('Pansy', 2081, '36.77510', '-83.32940'), ('Pathfork', 996, '36.75580', '-83.46310'), ('Peepace Store', 2081, '36.73000', '-83.32000'), ('Pine Mountain', 1101, '36.94970', '-83.18570'), ('Popeville', 1101, '36.79390', '-83.20900'), ('Putney', 1101, '36.90670', '-83.22680'), ('Redbud', 1101, '36.85950', '-83.16880'), ('Rex', 2081, '36.85280', '-83.30030'), ('Rhea', 1101, '36.89890', '-83.25650'), ('Ridgeway', 1101, '36.89640', '-83.12320'), ('Rileyville', 206, '36.89710', '-83.06450'), ('Rio Vista', 766, '36.84560', '-83.35890'), ('River Ridge', 1101, '36.87660', '-83.17190'), ('Rock House', 599, '36.90070', '-82.93930'), ('Rosspoint', 2081, '36.88400', '-83.29100'), ('Rutherford', 206, '36.88460', '-83.03420'), ('Sand Hill', 2611, '36.97500', '-83.00540'), ('Shields', 1101, '36.89560', '-83.14080'), ('Short Town', 1101, '36.87750', '-83.16040'), ('Smith', 2081, '36.74000', '-83.26000'), ('South Wallins', 996, '36.80740', '-83.40630'), ('Stanfill', 996, '36.76500', '-83.34290'), ('Sunshine', 2081, '36.83790', '-83.32920'), ('Tacky Town', 257, '36.85280', '-83.47460'), ('Teetersville', 2081, '36.81230', '-83.33750'), ('Ten Spot', 1101, '36.84300', '-83.21720'), ('Three Point', 2081, '36.76430', '-83.25880'), ('Totz', 1101, '36.94420', '-83.11890'), ('Tremont', 257, '36.84220', '-83.39310'), ('Tway', 2081, '36.82760', '-83.31810'), ('Twila', 996, '36.77270', '-83.39360'), ('Verda', 1101, '36.85100', '-83.22110'), ('Wallins Creek', 257, '36.82790', '-83.41450'), ('White Star', 766, '36.82750', '-83.36650'), ('Woods', 1101, '36.86100', '-83.18160'), ('Yancey', 2081, '36.76560', '-83.31920')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ089': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Carrollton', 3846, '38.67860', '-85.16460'), ('Ghent', 371, '38.73570', '-85.06100'), ('Prestonville', 164, '38.67950', '-85.19520'), ('Sanders', 246, '38.65460', '-84.94680'), ('Worthville', 215, '38.60940', '-85.06850')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ090': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Glencoe', 251, '38.71110', '-84.82180'), ('Sparta', 230, '38.67763', '-84.90894'), ('Warsaw', 1811, '38.78530', '-84.89480')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ091': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Burlington', 10779, '39.02440', '-84.72300'), ('Florence', 23551, '38.99150', '-84.64290'), ('Oakbrook', 7726, '38.99960', '-84.68530'), ('Union', 2893, '38.95290', '-84.66920'), ('Walton', 2450, '38.86620', '-84.61560')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ092': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bromley', 838, '39.08060', '-84.56240'), ('Covington', 43370, '39.07677', '-84.50802'), ('Crescent Park', 355, '39.04320', '-84.57630'), ('Crescent Springs', 3931, '39.05250', '-84.58020'), ('Crestview Hills', 2889, '39.02630', '-84.57140'), ('Edgewood', 9400, '39.00610', '-84.56230'), ('Elsmere', 8139, '38.99430', '-84.60040'), ('Erlanger', 16676, '39.00990', '-84.58810'), ('Fairview', 156, '38.99860', '-84.48280'), ('Fort Mitchell', 8089, '39.04520', '-84.55550'), ('Fort Wright', 5681, '39.04710', '-84.53690'), ('Independence', 14982, '38.95440', '-84.54740'), ('Kenton Vale', 156, '39.05140', '-84.51990'), ('Lakeside Park', 2869, '39.03430', '-84.56650'), ('Latonia Lakes', 325, '38.96750', '-84.49570'), ('Ludlow', 4409, '39.08940', '-84.55050'), ('Park Hills', 2977, '39.07020', '-84.53090'), ('Ryland Heights', 799, '38.95800', '-84.46930'), ('Taylor Mill', 6913, '39.01180', '-84.49720'), ('Villa Hills', 7948, '39.06390', '-84.59630'), ('Visalia', 111, '38.91500', '-84.45130')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ093': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Alexandria', 5592, '38.96050', '-84.38420'), ('Bellevue', 6480, '39.10120', '-84.47750'), ('California', 86, '38.91970', '-84.26260'), ('Claryville', 2588, '38.92460', '-84.40930'), ('Crestview', 471, '39.02240', '-84.41610'), ('Dayton', 5966, '39.11250', '-84.46240'), ('Fort Thomas', 16495, '39.08240', '-84.45030'), ('Highland Heights', 6554, '39.03690', '-84.45420'), ('Melbourne', 457, '39.03170', '-84.37100'), ('Mentor', 181, '38.89060', '-84.24370'), ('Newport', 17048, '39.08766', '-84.49421'), ('Silver Grove', 1215, '39.03670', '-84.39690'), ('Southgate', 3472, '39.06130', '-84.47080'), ('Wilder', 2624, '39.03560', '-84.47860'), ('Woodlawn', 268, '39.09080', '-84.47200')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ094': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Gratz', 89, '38.47300', '-84.94640'), ('Monterey', 167, '38.42500', '-84.87130'), ('Owenton', 1387, '38.53860', '-84.83970')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ095': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Corinth', 181, '38.49590', '-84.56410'), ('Crittenden', 2401, '38.78110', '-84.60550'), ('Dry Ridge', 1995, '38.68220', '-84.59640'), ('Williamstown', 3227, '38.63750', '-84.56090')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ096': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Butler', 613, '38.78790', '-84.37070'), ('Falmouth', 2058, '38.67380', '-84.33430')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ097': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Augusta', 1204, '38.77250', '-84.00160'), ('Brooksville', 589, '38.68250', '-84.06670'), ('Foster', 65, '38.79980', '-84.21390'), ('Germantown', 190, '38.65200', '-83.96720')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ098': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Mount Olivet', 289, '38.53180', '-84.03720')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ099': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Dover', 316, '38.75580', '-83.88340'), ('Lewisburg', 795, '38.55419', '-83.77047'), ('Maysville', 8993, '38.64051', '-83.74527'), ('Sardis', 149, '38.53420', '-83.95750'), ('Washington', 795, '38.61590', '-83.80810')], 'partOfState': 'northern', 'wfo': 'ILN'}, +'KYZ100': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Camp Dix', 1731, '38.49000', '-83.27000'), ('Head Of Grassy', 1813, '38.40000', '-83.26000'), ('Tollesboro', 2223, '38.55915', '-83.57761'), ('Vanceburg', 1731, '38.59420', '-83.32100')], 'partOfState': 'northeast', 'wfo': 'ILN'}, +'KYZ101': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bellefonte', 837, '38.49840', '-82.68840'), ('Flatwoods', 7605, '38.51930', '-82.72000'), ('Greenup', 1198, '38.57300', '-82.82910'), ('Raceland', 2355, '38.53620', '-82.73370'), ('Russell', 3645, '38.50970', '-82.70120'), ('South Shore', 1226, '38.72200', '-82.96430'), ('Worthington', 1673, '38.55170', '-82.73630'), ('Wurtland', 1049, '38.55040', '-82.77320')], 'partOfState': '', 'wfo': 'RLX'}, +'KYZ102': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Carter Caves State Park', 1813, '38.37180', '-83.11890'), ('Grayson', 3877, '38.33360', '-82.93830'), ('Grayson Lake State Park', 3877, '38.21610', '-83.01760'), ('Olive Hill', 1813, '38.30320', '-83.16940')], 'partOfState': '', 'wfo': 'RLX'}, +'KYZ103': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ashland', 21981, '38.45920', '-82.64490'), ('Cannonsburg', 21981, '38.38860', '-82.70290'), ('Catlettsburg', 1960, '38.41760', '-82.60120'), ('Westwood', 4888, '38.48120', '-82.67800')], 'partOfState': '', 'wfo': 'RLX'}, +'KYZ104': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bruin', 678, '38.18810', '-83.01940'), ('Culver', 678, '38.08500', '-82.99110'), ('Isonville', 678, '38.06640', '-83.05330'), ('Little Sandy', 678, '38.06220', '-83.18220'), ('Lytten', 678, '38.10580', '-83.22190'), ('Newfoundland', 678, '38.13310', '-83.10080'), ('Sandy Hook', 678, '38.09280', '-83.12330'), ('Stark', 678, '38.17530', '-83.13470')], 'partOfState': 'east central', 'wfo': 'JKL'}, +'KYZ105': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Blaine', 245, '38.02620', '-82.85410'), ('Louisa', 2018, '38.10940', '-82.60340'), ('Yatesville Lake State Park', 2018, '38.14650', '-82.68800')], 'partOfState': '', 'wfo': 'RLX'}, +'KYZ106': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adele', 3277, '37.75720', '-83.30120'), ('Blairs Mills', 678, '38.08190', '-83.29230'), ('Blaze', 3277, '38.02140', '-83.33330'), ('Burg', 3277, '37.73930', '-83.26000'), ('Caney', 3277, '37.80060', '-83.25840'), ('Cannel City', 3277, '37.78980', '-83.27590'), ('Cottle', 3277, '37.88830', '-83.20310'), ('Crockett', 678, '37.98590', '-83.09210'), ('Dehart', 3277, '37.96420', '-83.33740'), ('Demund', 3277, '37.83250', '-83.33730'), ('Dingus', 1604, '37.90850', '-83.08990'), ('Ebon', 3277, '37.95410', '-83.43600'), ('Elamton', 3277, '37.93940', '-83.15400'), ('Elkfork', 678, '37.96440', '-83.13460'), ('Ezel', 3277, '37.89000', '-83.44440'), ('Florress', 3277, '37.88480', '-83.17710'), ('Gordon Ford', 3277, '37.88450', '-83.23570'), ('Grassy Creek', 3277, '37.86690', '-83.34500'), ('Greear', 3277, '37.87770', '-83.29820'), ('Henry', 3277, '37.91190', '-83.34390'), ('Holliday', 3277, '37.81080', '-83.22970'), ('Index', 3277, '37.89480', '-83.25830'), ('Jeptha', 678, '37.94240', '-83.09990'), ('Kellacey', 3277, '37.96030', '-83.39220'), ('Leisure', 3277, '38.04450', '-83.33330'), ('Lenox', 3277, '37.95660', '-83.20210'), ('Lewis', 3277, '37.82610', '-83.24920'), ('Liberty Road', 3277, '37.90840', '-83.29370'), ('Lick Branch', 3277, '37.95990', '-83.24040'), ('Licking River', 3277, '37.93040', '-83.29370'), ('Lizzielane', 3277, '37.82430', '-83.32070'), ('Malone', 3277, '37.87160', '-83.25830'), ('Matthew', 3277, '37.85590', '-83.15850'), ('Maytown', 424, '37.84700', '-83.47010'), ('Mima', 1604, '37.92230', '-83.03840'), ('Minefork', 1604, '37.86090', '-83.00710'), ('Mize', 3277, '37.86090', '-83.37250'), ('Moon', 678, '37.97440', '-83.04750'), ('Murphyfork', 424, '37.82820', '-83.42100'), ('New Coomer', 3277, '37.89120', '-83.35410'), ('Nickell', 3277, '37.83510', '-83.32640'), ('Omer', 3277, '37.92370', '-83.39930'), ('Ophir', 1604, '37.90730', '-83.01410'), ('Panama', 3277, '37.84730', '-83.30120'), ('Payton', 3277, '37.80400', '-83.29850'), ('Pekin', 3277, '37.88090', '-83.38260'), ('Pomp', 3277, '37.95940', '-83.28170'), ('Relief', 245, '37.94640', '-82.99830'), ('Rexville', 3277, '37.82400', '-83.37090'), ('Salem', 3277, '37.81170', '-83.33340'), ('Sellars', 3277, '37.79120', '-83.33700'), ('Silverhill', 1604, '37.90000', '-83.07030'), ('Stacy Fork', 3277, '37.83600', '-83.26740'), ('Steele', 3277, '37.97780', '-83.17180'), ('Twentysix', 3277, '37.94560', '-83.35930'), ('Wells Station', 3277, '37.85510', '-83.25010'), ('West Liberty', 3277, '37.91340', '-83.26570'), ('Wheel Rim', 3277, '37.72930', '-83.26370'), ('White Oak', 3277, '37.85840', '-83.20200'), ('Williams', 3277, '37.83890', '-83.19160'), ('Woodsbend', 3277, '37.91510', '-83.34390'), ('Wrigley', 3277, '38.01830', '-83.27140'), ('Yocum', 3277, '37.98340', '-83.32510'), ('Zoo', 3277, '37.98620', '-83.36350')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ107': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Baker', 4132, '37.86010', '-82.75820'), ('Ballot', 1604, '37.77700', '-82.94290'), ('Barnetts Creek', 4132, '37.82760', '-82.87970'), ('Barnrock', 245, '37.95280', '-82.92120'), ('Bobbs', 1079, '37.82700', '-82.74340'), ('Boons Camp', 1079, '37.83290', '-82.70130'), ('Buffalo', 1079, '37.79470', '-82.75390'), ('Chandlerville', 245, '37.93460', '-82.81380'), ('Chestnut', 1079, '37.89060', '-82.68190'), ('Collista', 4132, '37.78240', '-82.82410'), ('Denver', 4132, '37.77590', '-82.85510'), ('Dobson', 4132, '37.74080', '-82.88460'), ('East Point', 1079, '37.74640', '-82.79610'), ('Elna', 245, '37.91800', '-82.96760'), ('Fitz', 4132, '37.78410', '-82.84000'), ('Flatgap', 245, '37.93350', '-82.88770'), ('Galen', 4132, '37.89050', '-82.80670'), ('Gillem Branch', 245, '37.96370', '-82.97240'), ('Hagerhill', 4132, '37.78750', '-82.79060'), ('Hammond', 466, '37.88400', '-82.67080'), ('Hargis', 1604, '37.84080', '-82.97720'), ('Keaton', 245, '37.98160', '-82.96180'), ('Kerz', 4132, '37.91510', '-82.84090'), ('Leander', 4132, '37.75380', '-82.87140'), ('Meally', 1079, '37.79850', '-82.73430'), ('Nero', 1079, '37.74900', '-82.74570'), ('Niles', 1604, '37.82900', '-82.97460'), ('Nippa', 4132, '37.86620', '-82.78820'), ('Oaklawn Estates', 1079, '37.75650', '-82.77520'), ('Odds', 1079, '37.75520', '-82.69300'), ('Offutt', 4132, '37.85070', '-82.72880'), ('Oil Springs', 4132, '37.80990', '-82.94210'), ('Paintsville', 4132, '37.81710', '-82.80710'), ('Patrick', 4132, '37.75930', '-82.86880'), ('Redbush', 245, '37.93930', '-82.94940'), ('Riceville', 1604, '37.73360', '-82.92380'), ('River', 4132, '37.86040', '-82.72600'), ('Sip', 245, '37.92400', '-82.82840'), ('Staffordsville', 4132, '37.83010', '-82.84170'), ('Stambaugh', 4132, '37.88530', '-82.79710'), ('Swamp Branch', 4132, '37.73740', '-82.89670'), ('Thealka', 4132, '37.82180', '-82.78960'), ('Thelma', 4132, '37.81980', '-82.76580'), ('Tutor Key', 4132, '37.84420', '-82.76490'), ('Van Lear', 1079, '37.76990', '-82.75640'), ('Wells Chapel', 1079, '37.83150', '-82.69670'), ('West Van Lear', 1079, '37.78530', '-82.77900'), ('Whitehouse', 1079, '37.87170', '-82.69700'), ('Williamsport', 1079, '37.82430', '-82.72890'), ('Win', 1604, '37.86740', '-82.98930'), ('Winifred', 245, '37.94640', '-82.85450'), ('Wittensville', 4132, '37.86330', '-82.79900'), ('Woodland Estates', 1079, '37.80330', '-82.76650')], 'partOfState': 'northeast', 'wfo': 'JKL'}, +'KYZ108': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Baptist', 424, '37.73140', '-83.47930'), ('Belknap', 2490, '37.72040', '-83.29380'), ('Bethany', 424, '37.65030', '-83.47360'), ('Booth', 424, '37.69560', '-83.63200'), ('Burkhart', 2490, '37.70670', '-83.27480'), ('Calaboose', 424, '37.78310', '-83.52970'), ('Campton', 424, '37.73520', '-83.54730'), ('Daysboro', 3277, '37.79340', '-83.37560'), ('Flat', 424, '37.65420', '-83.54610'), ('Gillmore', 424, '37.73780', '-83.36970'), ('Glencairn', 424, '37.76430', '-83.67000'), ('Gosneyville', 424, '37.80000', '-83.48990'), ('Grannie', 424, '37.69680', '-83.58570'), ('Hazel Green', 424, '37.79800', '-83.41560'), ('Helechawa', 3277, '37.76620', '-83.33990'), ('Hollonville', 424, '37.66850', '-83.46750'), ('Jenson', 424, '37.77750', '-83.63000'), ('Koomer Ridge Camping Ground', 424, '37.78320', '-83.63250'), ('Landsaw', 424, '37.72770', '-83.45160'), ('Lane', 424, '37.66710', '-83.48490'), ('Lee City', 3277, '37.73920', '-83.33310'), ('Lexie', 424, '37.72890', '-83.40390'), ('Lower Gillmore', 424, '37.76410', '-83.36970'), ('Malaga', 424, '37.71350', '-83.42750'), ('Mary', 424, '37.66710', '-83.53650'), ('Pence', 2490, '37.63490', '-83.47380'), ('Pine Ridge', 424, '37.76310', '-83.61280'), ('Red River Gorge', 424, '37.82490', '-83.61770'), ('Rogers', 424, '37.74400', '-83.63580'), ('Rosefork', 2490, '37.69860', '-83.33600'), ('Shockey', 2490, '37.69100', '-83.33190'), ('Stillwater', 424, '37.75640', '-83.48440'), ('Toliver', 424, '37.81360', '-83.45780'), ('Torrent', 424, '37.71690', '-83.66230'), ('Trent', 424, '37.77150', '-83.46160'), ('Upper Gilmore', 2490, '37.72440', '-83.36500'), ('Valeria', 424, '37.83000', '-83.51670'), ('Vortex', 424, '37.69720', '-83.52720'), ('Whisman', 424, '37.69550', '-83.65490')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ109': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Bethanna', 1604, '37.77530', '-83.18360'), ('Bloomington', 1604, '37.81690', '-83.14420'), ('Bradley', 1604, '37.71030', '-83.00670'), ('Brownlow', 1604, '37.79790', '-83.00920'), ('Burning Fork', 1604, '37.73330', '-83.02330'), ('Carver', 1604, '37.64480', '-83.04890'), ('Carver Station', 1604, '37.63180', '-83.05580'), ('Cisco', 1604, '37.83460', '-83.12810'), ('Conley', 1604, '37.75170', '-82.97830'), ('Conley Station', 1604, '37.66910', '-83.04240'), ('Coon', 1604, '37.83040', '-83.05820'), ('Cornelia', 1604, '37.66320', '-83.20450'), ('Cutuno', 1604, '37.71810', '-83.24330'), ('Cyrus', 1604, '37.79400', '-83.03830'), ('Dale', 1604, '37.69330', '-83.23180'), ('Duco', 1604, '37.60790', '-83.03030'), ('Elsie', 1604, '37.77830', '-83.13400'), ('Emma', 1604, '37.81320', '-83.05670'), ('Epson', 1604, '37.74470', '-83.21830'), ('Eugene', 1604, '37.68040', '-83.18590'), ('Ever', 1604, '37.85410', '-83.05460'), ('Falcon', 1604, '37.78970', '-83.00190'), ('Flat Fork', 1604, '37.83550', '-83.03320'), ('Foraker', 1604, '37.66000', '-83.13720'), ('Fredville', 1604, '37.60550', '-82.96500'), ('Fritz', 1604, '37.70140', '-83.15170'), ('Galdia', 1604, '37.63000', '-82.95920'), ('Gapville', 1604, '37.63000', '-82.95900'), ('Gifford', 1604, '37.76220', '-83.12210'), ('Grayfox', 1604, '37.86370', '-83.05350'), ('Gullett', 1604, '37.73900', '-83.12560'), ('Gunlock', 298, '37.54820', '-82.92560'), ('Gypsy', 1604, '37.66250', '-82.96390'), ('Hager', 1604, '37.74640', '-83.19940'), ('Haleburg', 1604, '37.87310', '-83.10380'), ('Harper', 3277, '37.79750', '-83.19700'), ('Hendricks', 1604, '37.68960', '-83.12490'), ('Ivyton', 1604, '37.70890', '-82.97860'), ('Kernie', 1604, '37.75670', '-83.16810'), ('Lacey', 1604, '37.86080', '-83.03080'), ('Lakesville', 1604, '37.71970', '-83.07010'), ('Leatha', 1604, '37.81580', '-83.01680'), ('Lickburg', 1604, '37.79190', '-83.08470'), ('Logville', 1604, '37.87220', '-83.10950'), ('Lykins', 3277, '37.77810', '-83.22190'), ('Maggard', 1604, '37.81880', '-83.09940'), ('Marshallville', 1604, '37.67810', '-82.98940'), ('Mary', 1604, '37.86090', '-83.08110'), ('Mashfork', 1604, '37.75920', '-82.99990'), ('Mason', 1604, '37.72060', '-83.05000'), ('Mid', 298, '37.52320', '-82.90110'), ('Netty', 3277, '37.74690', '-83.23860'), ('Orchard', 633, '37.56340', '-82.92550'), ('Ordway', 1604, '37.58910', '-82.96230'), ('Orient', 1604, '37.85010', '-83.10950'), ('Ova', 1604, '37.72530', '-83.17150'), ('Patton', 1604, '37.77930', '-83.15470'), ('Perlie', 1604, '37.79790', '-83.05500'), ('Plutarch', 1604, '37.84000', '-83.08850'), ('Puncheon', 1604, '37.69180', '-83.19640'), ('Quod', 1604, '37.84740', '-83.04300'), ('Royalton', 1604, '37.67580', '-83.02210'), ('Salyersville', 1604, '37.74680', '-83.06370'), ('Seitz', 1604, '37.69560', '-83.19650'), ('Skaggs', 1604, '37.68120', '-83.03330'), ('Stella', 1604, '37.73780', '-83.16610'), ('Stringtown', 1604, '37.76440', '-83.04750'), ('Sublett', 1604, '37.67780', '-83.03570'), ('Swampton', 1604, '37.65860', '-83.01140'), ('Tella', 1604, '37.82060', '-83.08570'), ('Tiptop', 1604, '37.61390', '-83.06110'), ('Waldo', 1604, '37.57660', '-82.97670'), ('West Royalton State Park', 1604, '37.68070', '-83.02990'), ('Wheelersburg', 1604, '37.82650', '-83.01080'), ('Wonnie', 1604, '37.80920', '-83.15420')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ110': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Allen', 150, '37.61120', '-82.72840'), ('Allen City', 150, '37.60940', '-82.72330'), ('Alphoretta', 633, '37.56360', '-82.76500'), ('Aluba', 262, '37.53080', '-82.64390'), ('Alvin', 150, '37.63810', '-82.69580'), ('Arkansas', 633, '37.58310', '-82.73280'), ('Auxier', 1079, '37.73810', '-82.75890'), ('Bammer', 150, '37.60060', '-82.70220'), ('Bays Branch', 1079, '37.72330', '-82.76810'), ('Beaver', 1042, '37.39810', '-82.65500'), ('Beaver Junction', 150, '37.61420', '-82.73250'), ('Betsy Layne', 262, '37.55190', '-82.63360'), ('Blue Moon', 633, '37.50780', '-82.69750'), ('Blue River', 3612, '37.62000', '-82.84420'), ('Bonanza', 3612, '37.69330', '-82.86440'), ('Bosco', 298, '37.50470', '-82.84080'), ('Brainard', 3612, '37.66420', '-82.89640'), ('Buckhorn Hollow', 1042, '37.39250', '-82.66970'), ('Buckingham', 1042, '37.37060', '-82.74110'), ('Burton', 1042, '37.36060', '-82.72470'), ('Cliff', 3612, '37.68190', '-82.78110'), ('Corn Fork Hollow', 3612, '37.67780', '-82.70060'), ('Craynor', 1042, '37.43780', '-82.66890'), ('Dana', 633, '37.55500', '-82.69190'), ('David', 633, '37.60030', '-82.89190'), ('Dicks Creek', 3612, '37.70170', '-82.67890'), ('Dock', 3612, '37.62780', '-82.80170'), ('Dotson', 3612, '37.64720', '-82.85810'), ('Drift', 298, '37.48060', '-82.74830'), ('Dwale', 150, '37.62390', '-82.72440'), ('Eastern', 298, '37.51750', '-82.80610'), ('East Mcdowell', 298, '37.44860', '-82.72610'), ('Emma', 150, '37.63670', '-82.70060'), ('Endicott', 150, '37.66750', '-82.63940'), ('Estill', 298, '37.45860', '-82.81860'), ('Galveston', 262, '37.44110', '-82.62860'), ('Garret', 298, '37.47970', '-82.83110'), ('Glo', 298, '37.44890', '-82.80940'), ('Grethel', 262, '37.49170', '-82.64720'), ('Halo', 1042, '37.31610', '-82.74080'), ('Harold', 262, '37.53810', '-82.63310'), ('Hi Hat', 1042, '37.39280', '-82.72970'), ('Hippo', 298, '37.53280', '-82.86940'), ('Honaker', 633, '37.52390', '-82.68030'), ('Hueysville', 633, '37.54170', '-82.83190'), ('Hunter', 633, '37.50690', '-82.75670'), ('Ivel', 150, '37.59420', '-82.66830'), ('Justell', 262, '37.55690', '-82.63830'), ('Lancer', 3612, '37.66890', '-82.73690'), ('Langley', 633, '37.53220', '-82.79170'), ('Ligon', 1042, '37.37080', '-82.67330'), ('Martin', 633, '37.57180', '-82.75600'), ('McDowell', 298, '37.45640', '-82.73690'), ('Melvin', 1042, '37.35110', '-82.69560'), ('Minnie', 298, '37.47360', '-82.75470'), ('Orkney', 298, '37.43030', '-82.73640'), ('Osborn', 262, '37.47780', '-82.61330'), ('Porter Junction', 298, '37.47310', '-82.82940'), ('Prestonsburg', 3612, '37.67370', '-82.76660'), ('Price', 1042, '37.40310', '-82.74280'), ('Printer', 633, '37.53140', '-82.74670'), ('Pyramid', 633, '37.56560', '-82.86970'), ('Wayland', 298, '37.44820', '-82.80050'), ('Wheelwright', 1042, '37.33890', '-82.72030')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ111': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Airedale', 1193, '37.60250', '-83.63940'), ('Arvel', 878, '37.51830', '-83.88530'), ('Athol', 111, '37.55250', '-83.57280'), ('Banford', 1193, '37.51350', '-83.82060'), ('Beattyville', 1193, '37.58020', '-83.70720'), ('Belle Point', 1193, '37.56250', '-83.74810'), ('Canyon Falls', 1193, '37.57640', '-83.57750'), ('Caryton', 1193, '37.54400', '-83.77770'), ('Corgleton', 1193, '37.55260', '-83.71240'), ('Cressmont', 1193, '37.53080', '-83.79500'), ('Delvinta', 111, '37.50080', '-83.79390'), ('Earnestville', 1193, '37.49400', '-83.82930'), ('Enoch', 1193, '37.54330', '-83.67560'), ('Evelyn', 693, '37.61310', '-83.86050'), ('Fillmore', 424, '37.60410', '-83.55000'), ('Fincastle', 1193, '37.64850', '-83.64540'), ('Fixer', 1193, '37.67810', '-83.71830'), ('Greeley', 1193, '37.67640', '-83.75310'), ('Heidelberg', 1193, '37.55520', '-83.77890'), ('Idamay', 1193, '37.52110', '-83.76630'), ('Leeco', 1193, '37.71040', '-83.69430'), ('Lone', 111, '37.53000', '-83.60390'), ('Lower Buffalo', 111, '37.52780', '-83.68780'), ('Maloney', 1193, '37.58020', '-83.67800'), ('Monica', 1193, '37.58240', '-83.60010'), ('Mount Olive', 1193, '37.61400', '-83.73040'), ('Old Landing', 1193, '37.63730', '-83.80290'), ('Pinnacle', 1193, '37.62110', '-83.81750'), ('Primrose', 1193, '37.60220', '-83.60860'), ('Proctor', 1193, '37.57000', '-83.71390'), ('Standing Rock', 1193, '37.71440', '-83.70390'), ('St. Helens', 1193, '37.58280', '-83.64720'), ('Tallega', 1193, '37.55950', '-83.59270'), ('Union', 424, '37.63010', '-83.59690'), ('Vada', 424, '37.62230', '-83.59130'), ('White Ash', 1193, '37.55910', '-83.73520'), ('Whynot', 1193, '37.64180', '-83.78590'), ('Wild Dog', 111, '37.48880', '-83.82340'), ('Williba', 424, '37.62280', '-83.57010'), ('Willow Shoals', 1193, '37.59130', '-83.81340'), ('Yellow Rock', 1193, '37.57080', '-83.80500'), ('Zachariah', 1193, '37.70490', '-83.68370'), ('Zoe', 1193, '37.68120', '-83.68320')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ112': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Altro', 2490, '37.38250', '-83.38220'), ('Barwick', 2490, '37.36820', '-83.36530'), ('Bays', 2490, '37.64750', '-83.24780'), ('Beech', 2490, '37.37030', '-83.42890'), ('Bush Branch', 2490, '37.37660', '-83.39070'), ('c', 2490, '37.53680', '-83.36690'), ('Camp Lewis', 2490, '37.58500', '-83.18770'), ('Canoe', 2490, '37.44970', '-83.44920'), ('Chenowee', 2490, '37.54340', '-83.48020'), ('Clayhole', 2490, '37.46670', '-83.29750'), ('Copebranch', 2490, '37.51750', '-83.52650'), ('Copland', 2490, '37.45510', '-83.37320'), ('Crockettsville', 2490, '37.40320', '-83.46940'), ('Curt', 2490, '37.49590', '-83.39460'), ('Daisydell', 1604, '37.53810', '-83.12160'), ('Dalesburg', 111, '37.36730', '-83.49200'), ('Decoy', 787, '37.50170', '-83.09390'), ('Dumont', 2490, '37.53050', '-83.36070'), ('Elkatawa', 2490, '37.55810', '-83.42750'), ('Evanston', 1604, '37.54190', '-83.03130'), ('Fivemile', 2490, '37.59380', '-83.40890'), ('Flintville', 2490, '37.48540', '-83.30090'), ('Frozen Creek', 2490, '37.59190', '-83.42220'), ('Gentry', 2490, '37.56270', '-83.44290'), ('Guage', 2490, '37.59690', '-83.19780'), ('Guerrant', 2490, '37.50810', '-83.49780'), ('Haddix', 2490, '37.48810', '-83.34890'), ('Haginsville', 2490, '37.56600', '-83.29620'), ('Hardshell', 2490, '37.45860', '-83.25220'), ('Houston', 111, '37.44560', '-83.51690'), ('Howard Creek', 2490, '37.46840', '-83.38000'), ('Jackson', 2490, '37.55770', '-83.37970'), ('Jetts Creek', 111, '37.49950', '-83.54340'), ('Keck', 2490, '37.60620', '-83.36240'), ('Lambric', 1604, '37.56940', '-83.13140'), ('Lawson', 2490, '37.60160', '-83.45860'), ('Little', 2490, '37.44030', '-83.36190'), ('Lost Creek', 2490, '37.48310', '-83.32530'), ('Lunah', 2490, '37.56330', '-83.17730'), ('Moct', 2490, '37.66070', '-83.34620'), ('Morris Fork', 111, '37.37700', '-83.52180'), ('Mountain Valley', 2490, '37.66220', '-83.26940'), ('Ned', 4806, '37.40940', '-83.27190'), ('Noble', 4806, '37.45030', '-83.19000'), ('Noctor', 2490, '37.56060', '-83.33750'), ('Oakdale', 2490, '37.55450', '-83.51500'), ('Paxton', 2490, '37.67560', '-83.41010'), ('Portsmouth', 2490, '37.53170', '-83.31440'), ('Press', 2490, '37.52780', '-83.26940'), ('Quicksand', 2490, '37.53030', '-83.34470'), ('Rock Lick', 2490, '37.65210', '-83.31170'), ('Rousseau', 2490, '37.59390', '-83.23060'), ('Saldee', 2490, '37.45270', '-83.38010'), ("Sebastian's Branch", 2490, '37.43670', '-83.47280'), ('Sewell', 2490, '37.62690', '-83.38890'), ('Sikes', 2490, '37.54240', '-83.24030'), ('Simpson', 2490, '37.66830', '-83.37100'), ('Smith Branch', 2490, '37.52680', '-83.31400'), ('Stevenson', 2490, '37.57990', '-83.26330'), ('Talbert', 2490, '37.42250', '-83.45970'), ('Taulbee', 2490, '37.64330', '-83.33030'), ('Turkey', 2490, '37.47940', '-83.50780'), ('Vail', 787, '37.50990', '-82.99960'), ('Valjean', 111, '37.33860', '-83.53810'), ('Vancleve', 2490, '37.62830', '-83.41390'), ('War Creek', 2490, '37.59410', '-83.48510'), ('Watts', 2490, '37.44330', '-83.31010'), ('Whick', 2490, '37.42310', '-83.37690'), ('Widecreek', 424, '37.61100', '-83.53220'), ('Wilhurst', 2490, '37.63390', '-83.41500'), ('Wilstacy', 2490, '37.52870', '-83.28140'), ('Wolf Coal', 2490, '37.39860', '-83.37890'), ('Yeadon', 2490, '37.55130', '-83.45810')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ113': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Amburgey', 787, '37.26930', '-82.98290'), ('Amelia', 1600, '37.20710', '-82.92040'), ('Anco', 318, '37.24210', '-83.06030'), ('Bath', 297, '37.24230', '-82.91060'), ('Bearville', 787, '37.37270', '-83.06540'), ('Betty', 298, '37.45130', '-82.84080'), ('Bolyn', 298, '37.44470', '-82.90570'), ('Brinkley', 787, '37.30060', '-82.94450'), ('Buck', 787, '37.44830', '-83.10930'), ('Carr Creek', 318, '37.23150', '-82.96920'), ('Carrie', 787, '37.33140', '-83.03350'), ('Cody', 318, '37.22420', '-82.97590'), ('Cordia', 318, '37.27940', '-83.11570'), ('Demo', 298, '37.41010', '-82.78120'), ('Dirk', 318, '37.23020', '-82.95860'), ('Drew', 297, '37.28340', '-82.86250'), ('Dry Creek', 1042, '37.33350', '-82.77770'), ('Elic', 318, '37.26700', '-83.06830'), ('Elmrock', 787, '37.45220', '-83.02580'), ('Emmalena', 787, '37.33630', '-83.07750'), ('Fisty', 787, '37.33580', '-83.10140'), ('Garner', 297, '37.35620', '-82.92710'), ('Greenleaf', 1042, '37.30080', '-82.75730'), ('Hall', 1042, '37.30020', '-82.77500'), ('Handshoe', 298, '37.47000', '-82.90670'), ('Hindman', 787, '37.33370', '-82.98320'), ('Hollybush', 297, '37.34790', '-82.85650'), ('Ivan', 297, '37.27810', '-82.82800'), ('Ivis', 297, '37.30620', '-82.92820'), ('Kite', 297, '37.33520', '-82.81190'), ('Larkslane', 297, '37.38400', '-82.88160'), ('Leburn', 787, '37.34820', '-82.95650'), ('Littcarr', 787, '37.24270', '-82.94770'), ('Mallie', 297, '37.30300', '-82.91700'), ('May', 297, '37.27270', '-82.86230'), ('Mousie', 298, '37.41890', '-82.87740'), ('Nealy', 297, '37.27420', '-82.86810'), ('Omaha', 297, '37.27450', '-82.84390'), ('Pine Top', 297, '37.27220', '-82.88350'), ('Pippa Passes', 297, '37.33410', '-82.87440'), ('Puncheon', 1042, '37.30220', '-82.78900'), ('Raven', 298, '37.40280', '-82.80640'), ('Redfox', 318, '37.21550', '-82.94390'), ('Ritchie', 318, '37.31110', '-83.08400'), ('Sassafras', 318, '37.22080', '-83.05470'), ('Smithsboro', 318, '37.23100', '-82.99610'), ('Soft Shell', 787, '37.39370', '-82.94420'), ('Spider', 297, '37.25910', '-82.91840'), ('Talcum', 787, '37.37210', '-83.10610'), ('Tina', 787, '37.36080', '-83.02020'), ('Topmost', 1042, '37.36100', '-82.78860'), ('Vest', 787, '37.39600', '-83.00620'), ('Wiscoal', 318, '37.23600', '-83.05730'), ('Yellow Mountain', 787, '37.40480', '-82.96730')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ114': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Arnett', 111, '37.41030', '-83.56860'), ('Blake', 111, '37.38690', '-83.73920'), ('Booneville', 111, '37.47640', '-83.67920'), ('Chestnut Gap', 111, '37.45820', '-83.65900'), ('Conkling', 111, '37.38140', '-83.69000'), ('Cowcreek', 111, '37.43860', '-83.61060'), ('Endee', 111, '37.43130', '-83.75300'), ('Eversole', 111, '37.44750', '-83.64280'), ('Gobbard', 111, '37.37840', '-83.63110'), ('Grass', 111, '37.52300', '-83.64790'), ('Green Hall', 589, '37.40670', '-83.82550'), ('Island City', 111, '37.36720', '-83.76710'), ('Lerose', 111, '37.48320', '-83.61540'), ('Levi', 111, '37.48030', '-83.72080'), ('Lucky Fork', 111, '37.36750', '-83.57000'), ('Major', 111, '37.41370', '-83.69790'), ('Mistletoe', 111, '37.31280', '-83.59220'), ('Pebworth', 111, '37.50410', '-83.73110'), ('Ricetown', 111, '37.39220', '-83.62230'), ('Scoville', 111, '37.45390', '-83.72000'), ('Sebastian', 111, '37.36080', '-83.62030'), ('Southfork', 111, '37.41630', '-83.66060'), ('Stay', 111, '37.51030', '-83.65190'), ('Sturgeon', 111, '37.41890', '-83.78460'), ('Taft', 111, '37.36160', '-83.68380'), ('Travellers Rest', 111, '37.44830', '-83.78720'), ('Turin', 111, '37.45970', '-83.68730'), ('Vincent', 111, '37.46830', '-83.77390'), ('Whoopflarea', 204, '37.28250', '-83.56030')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ115': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Ary', 4806, '37.37860', '-83.14670'), ('Avawam', 4806, '37.22230', '-83.27860'), ('Buckhorn', 204, '37.34510', '-83.47160'), ('Buckhorn Lake State Park', 204, '37.30490', '-83.44000'), ('Bulan', 4806, '37.29810', '-83.16670'), ('Chavies', 4806, '37.34570', '-83.35370'), ('Cornettsville', 318, '37.13160', '-83.07930'), ('Daisy', 318, '37.11680', '-83.09140'), ('Delphia', 2611, '37.02900', '-83.08670'), ('Diablock', 4806, '37.22830', '-83.17220'), ('Dice', 4806, '37.36280', '-83.22750'), ('Dwarf', 4806, '37.33710', '-83.12860'), ('Gays Creek', 204, '37.33690', '-83.40660'), ('Gilley', 2611, '36.99490', '-83.11160'), ('Hazard', 4806, '37.25300', '-83.19530'), ('Jeff', 318, '37.20590', '-83.13520'), ('Krypton', 204, '37.31090', '-83.33900'), ('Lamont', 4806, '37.35080', '-83.31350'), ('Leatherwood', 1101, '37.04040', '-83.17080'), ('Rowdy', 4806, '37.41500', '-83.20600'), ('Saul', 204, '37.27800', '-83.49380'), ('Slemp', 318, '37.07890', '-83.11140'), ('Vicco', 318, '37.21610', '-83.06120'), ('Viper', 4806, '37.18180', '-83.14870')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ116': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Add', 1738, '37.12640', '-83.76950'), ('Alger', 1738, '37.31500', '-83.72870'), ('Ammie', 1738, '37.26640', '-83.69220'), ('Ashers Fork', 1738, '37.00810', '-83.59470'), ('Barcreek', 1738, '37.22780', '-83.64140'), ('Benge', 589, '37.22830', '-83.92310'), ('Bernice', 1738, '37.20690', '-83.75360'), ('Big Creek', 204, '37.16360', '-83.56860'), ('Bluehole', 1738, '37.10170', '-83.75640'), ('Boho', 1738, '37.11870', '-83.70320'), ('Botto', 1738, '37.08720', '-83.67720'), ('Brightshade', 1738, '37.02050', '-83.65790'), ('Brutus', 1738, '37.25580', '-83.57720'), ('Burning Springs', 1738, '37.25580', '-83.80230'), ('Byron', 1738, '37.16770', '-83.88650'), ('Chestnutburg', 1738, '37.29030', '-83.79610'), ('Cottongim', 1738, '37.06470', '-83.80250'), ('Creekville', 204, '37.07890', '-83.54920'), ('Deer Lick', 5757, '37.14700', '-83.94320'), ('Eriline', 1738, '37.18860', '-83.59420'), ('Fall Rock', 1738, '37.22140', '-83.78890'), ('Felty', 1738, '37.30100', '-83.70780'), ('Fogertown', 589, '37.22000', '-83.90140'), ('Gardner', 257, '36.96870', '-83.53590'), ('Garrard', 1738, '37.12530', '-83.74580'), ('Goose Rock', 1738, '37.09140', '-83.69470'), ('Grace', 1738, '37.19860', '-83.86670'), ('Hector', 1738, '37.15440', '-83.65440'), ('Hensley', 1738, '37.23730', '-83.67440'), ('Herron', 1738, '37.12730', '-83.79410'), ('High Knob', 1738, '37.26770', '-83.81840'), ('Hima', 1738, '37.12190', '-83.77920'), ('Hooker', 1738, '37.13810', '-83.83510'), ('Horse Creek Junction', 1738, '37.13680', '-83.76340'), ('House', 1738, '37.08270', '-83.76930'), ('Ice Cliff', 1738, '37.00910', '-83.63560'), ('Jacks Creek', 204, '37.20750', '-83.55690'), ('Jonsee', 1738, '37.07220', '-83.78570'), ('Larue', 589, '37.20310', '-83.92500'), ('Laurel Creek', 1738, '37.24420', '-83.74850'), ('Lincoln', 1738, '37.05780', '-83.73920'), ('Lipps', 1738, '37.04860', '-83.65750'), ('Littleton', 1738, '37.16360', '-83.75500'), ('Malcomb', 589, '37.27820', '-83.83750'), ('Manchester', 1738, '37.15250', '-83.76810'), ('Marcum', 204, '37.11170', '-83.55940'), ('Mill Pond', 1738, '37.22920', '-83.73750'), ('Newfound', 111, '37.31060', '-83.63150'), ('Ogle', 1738, '37.03080', '-83.71190'), ('Oneida', 1738, '37.27060', '-83.64970'), ('Panco', 204, '37.23860', '-83.53280'), ('Park Valley', 1738, '37.07760', '-83.77810'), ('Peabody', 1738, '37.15970', '-83.59800'), ('Pigeonroost', 1738, '37.11090', '-83.80970'), ('Plank', 1738, '37.07780', '-83.64720'), ('Portersburg', 589, '37.17060', '-83.92580'), ('Queendale', 257, '37.00880', '-83.52580'), ('Sacker Gap', 1738, '37.26570', '-83.79750'), ('Seth', 1738, '37.24770', '-83.65040'), ('Sextons Creek', 1738, '37.31580', '-83.78440'), ('Shepherdtown', 589, '37.28810', '-83.86560'), ('Sibert', 1738, '37.12470', '-83.78690'), ('Sidell', 1738, '37.19040', '-83.82240'), ('Skidmore', 257, '36.99310', '-83.53630'), ('Sourwood', 589, '37.32880', '-83.79990'), ('Spring Creek', 204, '37.06280', '-83.54250'), ('Spurlock', 1738, '37.21280', '-83.63470'), ('Tanksley', 1738, '37.21780', '-83.71060'), ('Teges', 1738, '37.29560', '-83.66750'), ('Treadway', 1738, '37.23060', '-83.78330'), ('Trixie', 111, '37.33520', '-83.67300'), ('Urban', 1738, '37.15810', '-83.84780'), ('Wild Cat', 1738, '37.23420', '-83.69060')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ117': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Asher', 204, '37.04400', '-83.40180'), ('Bear Branch', 204, '37.16390', '-83.54860'), ('Big Fork', 204, '37.05250', '-83.25670'), ('Big Rock', 1101, '37.04360', '-83.20730'), ('Bobs Fork', 204, '37.16410', '-83.51850'), ('Causey', 204, '37.05760', '-83.28050'), ('Chappell', 204, '37.00960', '-83.34970'), ('Cinda', 204, '37.10860', '-83.29460'), ('Confluence', 204, '37.27180', '-83.38280'), ('Cutshin', 204, '37.09030', '-83.26100'), ('Daley', 4806, '37.13590', '-83.23260'), ('Dryhill', 204, '37.22310', '-83.37710'), ('Essie', 204, '37.06450', '-83.45360'), ('Frew', 4806, '37.18170', '-83.24690'), ('Hosea', 204, '37.13670', '-83.44270'), ('Hoskinston', 204, '37.07720', '-83.39170'), ('Hyden', 204, '37.16170', '-83.37360'), ('Kaliopi', 204, '37.23290', '-83.41510'), ('Lewis Creek', 766, '36.98990', '-83.31190'), ('Mosley Bend', 204, '37.27500', '-83.36000'), ('Mozelle', 766, '37.00080', '-83.39840'), ('Napier', 2081, '36.98420', '-83.28470'), ('Roark', 204, '37.02380', '-83.51670'), ('Sandy Fork', 257, '36.93620', '-83.50540'), ('Saylor', 257, '36.89920', '-83.46220'), ('Shoal', 204, '37.26840', '-83.43560'), ('Sizerock', 204, '37.22270', '-83.50460'), ('Smilax', 204, '37.13340', '-83.28260'), ('Spruce Pine', 257, '36.92330', '-83.44530'), ('Stinnett', 204, '37.09190', '-83.39660'), ('Thousandsticks', 204, '37.18500', '-83.42890'), ('Toulouse', 204, '37.24850', '-83.35350'), ('Warbranch', 257, '36.97430', '-83.44810'), ('Wendover', 204, '37.12630', '-83.36290'), ('Wooton', 204, '37.17900', '-83.30330'), ('Yeaddiss', 204, '37.07020', '-83.21890')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ118': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Adamson', 2401, '37.20370', '-82.57830'), ('Arminta', 318, '37.16270', '-83.02130'), ('Baker', 840, '37.21120', '-82.72070'), ('Banks', 2611, '37.08280', '-83.02260'), ('Beefhide', 921, '37.23930', '-82.62670'), ('Bellcraft', 1600, '37.13650', '-82.82460'), ('Blackey', 318, '37.14020', '-82.97830'), ('Bluefield', 318, '37.13650', '-83.03010'), ('Burdine', 2401, '37.18980', '-82.60290'), ('Carbon Glow', 318, '37.17500', '-82.95010'), ('Carcassonne', 318, '37.17200', '-82.98810'), ('Chip', 840, '37.18530', '-82.71700'), ('Colly', 1600, '37.12460', '-82.78450'), ('Colson', 297, '37.22870', '-82.86130'), ('Craftsville', 840, '37.18120', '-82.75350'), ('Cromona', 840, '37.18640', '-82.69650'), ('Crown', 1600, '37.14530', '-82.84750'), ('David', 318, '37.16120', '-82.95000'), ('Day', 1600, '37.07120', '-82.84720'), ('Deane', 840, '37.24050', '-82.77260'), ('Defeated Creek', 2611, '37.05230', '-82.99180'), ('Democrat', 840, '37.23370', '-82.79220'), ('Dongola', 1600, '37.09190', '-82.84010'), ('Dunham', 2401, '37.19350', '-82.64580'), ('Ehkhorn Mine', 840, '37.22370', '-82.71200'), ('Elko', 318, '37.13880', '-82.98930'), ('Eolia', 1600, '37.05340', '-82.79200'), ('Ermine', 1600, '37.11970', '-82.79340'), ('Farraday', 1600, '37.16360', '-82.77140'), ('Fishpond Lake', 840, '37.16140', '-82.67690'), ('Fleming-Neon', 840, '37.19180', '-82.70380'), ('Flint', 2611, '37.05160', '-82.93170'), ('Gander', 318, '37.17560', '-83.00040'), ('Gaskill', 2401, '37.18490', '-82.61130'), ('Gordon', 2611, '37.00000', '-83.02390'), ('Hallie', 318, '37.10210', '-83.02240'), ('Haymond', 840, '37.18500', '-82.69260'), ('Hemphill', 840, '37.21550', '-82.70520'), ('Horn', 840, '37.20730', '-82.72900'), ('Hot Spot', 1600, '37.12760', '-82.91690'), ('Ice', 1600, '37.10860', '-82.85950'), ('Indian Bottom', 318, '37.14240', '-82.95940'), ('Isom', 1600, '37.18730', '-82.89950'), ('Jenkins', 2401, '37.17810', '-82.62660'), ('Jeremiah', 1600, '37.16750', '-82.92900'), ('Kings Creek', 900, '37.05270', '-82.91450'), ('Lester', 1600, '37.21210', '-82.80600'), ('Letcher', 318, '37.14580', '-82.95930'), ('Lewis Creek', 900, '36.99620', '-82.89740'), ('Lilley Cornett Woods', 2611, '37.08490', '-82.98950'), ('Linefork', 2611, '37.02000', '-82.95990'), ('Lowndes', 840, '37.19870', '-82.68570'), ('Lucastown', 1600, '37.20620', '-82.79610'), ('Maggard', 900, '37.01550', '-82.88250'), ('Marlowe', 1600, '37.13090', '-82.83110'), ('Mayking', 1600, '37.13580', '-82.76450'), ('McRoberts', 921, '37.21180', '-82.66800'), ('Millstone', 840, '37.16500', '-82.75120'), ('Neon Junction', 840, '37.17970', '-82.71450'), ('Oscaloosa', 1600, '37.10570', '-82.89400'), ('Oven Fork', 1600, '37.05880', '-82.80900'), ('Partridge', 900, '37.00820', '-82.89830'), ('Payne Gap', 2401, '37.15550', '-82.65870'), ('Polly', 1600, '37.20240', '-82.82390'), ('Potters Fork', 921, '37.18310', '-82.67350'), ('Premium', 1600, '37.12360', '-82.91890'), ('Red Star', 318, '37.13940', '-83.02020'), ('Roxana', 1600, '37.10920', '-82.94970'), ('Sackett', 1600, '37.20270', '-82.88500'), ('Seco', 840, '37.17370', '-82.73240'), ('Sergent', 1600, '37.14810', '-82.77010'), ('Skyline', 2611, '37.07580', '-82.98170'), ('Southdown', 1600, '37.16330', '-82.80410'), ('Thornton', 840, '37.15670', '-82.73970'), ('Tillie', 1600, '37.18130', '-82.86370'), ('Tolliver Town', 840, '37.18070', '-82.70900'), ('Trailer', 1600, '37.11790', '-82.88170'), ('Ulvah', 318, '37.12810', '-83.05260'), ('Van', 1600, '37.15180', '-82.87220'), ('Whitaker', 840, '37.17230', '-82.72120'), ('Whitco', 1600, '37.12010', '-82.85150'), ('Whitesburg', 1600, '37.11810', '-82.82570'), ('Winters', 840, '37.15480', '-82.76430'), ('Wright', 840, '37.15370', '-82.73090')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'KYZ119': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Add', 466, '37.91010', '-82.55210'), ('Andy', 284, '37.83150', '-82.47190'), ('Beauty', 284, '37.83960', '-82.43780'), ('Bradbury', 466, '37.81560', '-82.50450'), ('Calf Creek', 466, '37.92320', '-82.49540'), ('Coalpoint', 284, '37.78440', '-82.44460'), ('Davella', 466, '37.79580', '-82.57210'), ('Davisport', 466, '37.81460', '-82.59990'), ('Debord', 466, '37.82720', '-82.55200'), ('Delong', 466, '37.81030', '-82.56490'), ('Hode', 284, '37.88550', '-82.43000'), ('Inez', 466, '37.86610', '-82.53750'), ('Job', 466, '37.93320', '-82.53290'), ('Laura', 284, '37.72420', '-82.44170'), ('Lovely', 284, '37.82690', '-82.45000'), ('McClure', 284, '37.76560', '-82.48770'), ('Milo', 466, '37.91340', '-82.56160'), ('Moree', 284, '37.71880', '-82.50370'), ('Oppy', 342, '37.80160', '-82.38700'), ('Pevier', 466, '37.82670', '-82.56340'), ('Pilgrim', 284, '37.79800', '-82.42030'), ('Pleasant', 466, '37.73830', '-82.57390'), ('Preece', 466, '37.80180', '-82.51950'), ('Prince', 466, '37.78370', '-82.52490'), ('Stidham', 466, '37.88410', '-82.58300'), ('Threeforks', 284, '37.70640', '-82.46040'), ('Tomahawk', 466, '37.87030', '-82.59190'), ('Warfield', 284, '37.83870', '-82.42320'), ('Wells', 466, '37.89770', '-82.58120')], 'partOfState': 'northeast', 'wfo': 'JKL'}, +'KYZ120': {'fullStateName': 'Kentucky', 'state': 'KY', 'cities': [('Argo', 1053, '37.48120', '-82.06460'), ('Ashcamp', 52, '37.26600', '-82.43460'), ('Belcher', 52, '37.34180', '-82.37400'), ('Belfry', 4154, '37.62350', '-82.26760'), ('Biggs', 1053, '37.41960', '-82.26670'), ('Board Tree', 1053, '37.53830', '-82.16210'), ('Boldman', 262, '37.52970', '-82.61190'), ('Canada', 4154, '37.60770', '-82.32570'), ('Cedarville', 52, '37.31410', '-82.35830'), ('Chloe', 6295, '37.45180', '-82.47640'), ('Coal Run', 577, '37.51290', '-82.55870'), ('Coleman', 1053, '37.48660', '-82.18640'), ('Conder', 4154, '37.67460', '-82.37720'), ('Dorton', 2401, '37.27670', '-82.57920'), ('Elkhorn City', 1060, '37.30290', '-82.34800'), ('Fedscreek', 1053, '37.40160', '-82.24610'), ('Fishtrap Lake', 52, '37.42510', '-82.36960'), ('Forest Hills', 4154, '37.64200', '-82.28040'), ('Garden Village', 6295, '37.42080', '-82.46430'), ('Gulnare', 262, '37.62800', '-82.54970'), ('Hardy', 4154, '37.61580', '-82.24200'), ('Hatfield Station', 1182, '37.72540', '-82.37970'), ('Heenan', 262, '37.66860', '-82.48760'), ('Heisey', 4154, '37.66470', '-82.38720'), ('Huddy', 4154, '37.59800', '-82.27520'), ('Jamboree', 1053, '37.50600', '-82.13460'), ('Jarad', 262, '37.66380', '-82.48100'), ('Jonancy', 921, '37.31510', '-82.58430'), ('Kimper', 6295, '37.49750', '-82.34990'), ('Lookout', 52, '37.31350', '-82.46750'), ('Majestic', 1053, '37.53650', '-82.10050'), ('Marrowbone', 52, '37.36770', '-82.41280'), ('McAndrews', 4154, '37.56820', '-82.26780'), ('McCombs', 262, '37.65390', '-82.58360'), ('Meta', 6295, '37.57100', '-82.43710'), ('Mouthcard', 1060, '37.38230', '-82.25480'), ('Myra', 921, '37.28970', '-82.60000'), ('Paw Paw', 1053, '37.43920', '-82.11090'), ('Phelps', 1053, '37.50910', '-82.16010'), ('Phyllis', 52, '37.44290', '-82.33450'), ('Pikeville', 6295, '37.47720', '-82.51380'), ('Piso', 262, '37.63610', '-82.46600'), ('Raccoon', 6295, '37.49130', '-82.44030'), ('Rockhouse', 52, '37.32830', '-82.45340'), ('Rural', 1182, '37.70450', '-82.36060'), ('Shelbiana', 6295, '37.42890', '-82.49290'), ('Shelby Gap', 2401, '37.21340', '-82.55660'), ('Sidney', 4154, '37.62120', '-82.35480'), ('Speight', 921, '37.27540', '-82.68150'), ('Toonerville', 1060, '37.36810', '-82.23060'), ('Turkey Creek', 4154, '37.67090', '-82.30670'), ('Varney', 4154, '37.63840', '-82.42180'), ('Virgie', 1042, '37.33410', '-82.57920'), ('Whitepost', 1182, '37.72850', '-82.34520'), ('Woodman', 1053, '37.51950', '-82.04920'), ('Zebulon', 6295, '37.51590', '-82.47440')], 'partOfState': 'southeast', 'wfo': 'JKL'}, +'LAZ001': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Belcher', 272, '32.75330', '-93.83510'), ('Blanchard', 2050, '32.59200', '-93.88610'), ('Gilliam', 178, '32.82730', '-93.84270'), ('Greenwood', 2458, '32.44140', '-93.97380'), ('Hosston', 387, '32.88370', '-93.88280'), ('Ida', 258, '33.00210', '-93.89500'), ('Mooringsport', 833, '32.68280', '-93.96160'), ('Oil City', 1219, '32.74470', '-93.97490'), ('Rodessa', 307, '32.97170', '-93.99200'), ('Shreveport', 200145, '32.47160', '-93.79780'), ('Vivian', 4031, '32.87310', '-93.98670')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ002': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Benton', 2035, '32.69190', '-93.74010'), ('Bossier City', 56461, '32.51860', '-93.66380'), ('Eastwood', 3374, '32.56170', '-93.56620'), ('Haughton', 2792, '32.53010', '-93.50630'), ('Plain Dealing', 1071, '32.90680', '-93.69890'), ('Red Chute', 5984, '32.57350', '-93.61160')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ003': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Cotton Valley', 1189, '32.81270', '-93.42300'), ('Cullen', 1296, '32.97010', '-93.44630'), ('Dixie Inn', 352, '32.59400', '-93.33500'), ('Doyline', 841, '32.51890', '-93.41590'), ('Dubberly', 290, '32.53950', '-93.23760'), ('Heflin', 245, '32.45790', '-93.26740'), ('Minden', 13027, '32.61660', '-93.28080'), ('Sarepta', 925, '32.89520', '-93.45140'), ('Shongaloo', 162, '32.94040', '-93.29380'), ('Sibley', 1098, '32.54370', '-93.29410'), ('Springhill', 5439, '33.00210', '-93.46130')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ004': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Athens', 262, '32.65110', '-93.02590'), ('Haynesville', 2679, '32.96690', '-93.13780'), ('Homer', 3788, '32.79360', '-93.05870'), ('Lisbon', 162, '32.78810', '-92.86550')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ005': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Choudrant', 582, '32.53030', '-92.51770'), ('Dubach', 800, '32.69800', '-92.65600'), ('Grambling', 4693, '32.52700', '-92.71160'), ('Ruston', 20546, '32.53180', '-92.63960'), ('Simsboro', 684, '32.53320', '-92.78300'), ('Vienna', 424, '32.60860', '-92.65180')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ006': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bernice', 1809, '32.82730', '-92.65920'), ('Downsville', 118, '32.62700', '-92.41430'), ('Farmerville', 3808, '32.77390', '-92.40050'), ('Junction City', 652, '33.00900', '-92.72280'), ('Lillie', 139, '32.92020', '-92.66140'), ('Marion', 806, '32.89980', '-92.23950'), ('Spearsville', 155, '32.93540', '-92.60390')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ007': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bastrop', 12988, '32.77450', '-91.90930'), ('Bonita', 335, '32.91990', '-91.67490'), ('Collinston', 327, '32.68880', '-91.87150'), ('Mer Rouge', 721, '32.77690', '-91.79430'), ('Oak Ridge', 142, '32.62470', '-91.77330')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ008': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Epps', 1153, '32.60500', '-91.47950'), ('Forest', 275, '32.79240', '-91.41220'), ('Kilbourne', 436, '32.99780', '-91.31320'), ('Oak Grove', 2174, '32.86220', '-91.39120'), ('Pioneer', 171, '32.73810', '-91.43590')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ009': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Lake Providence', 5104, '32.81060', '-91.18440')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ010': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Grand Cane', 191, '32.08450', '-93.80940'), ('Keachi', 277, '32.17570', '-93.91620'), ('Logansport', 1630, '31.97400', '-93.99410'), ('Longstreet', 163, '32.09680', '-93.95010'), ('Mansfield', 5582, '32.03380', '-93.70240'), ('South Mansfield', 352, '32.01850', '-93.72290'), ('Stanley', 145, '31.96350', '-93.90350'), ('Stonewall', 1668, '32.26400', '-93.81640')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ011': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Coushatta', 2299, '32.02480', '-93.34050'), ('Edgefield', 190, '32.04880', '-93.33580'), ('Hall Summit', 264, '32.17690', '-93.30490'), ('Martin', 625, '32.09910', '-93.21830')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ012': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Arcadia', 3041, '32.55100', '-92.92460'), ('Bienville', 262, '32.36130', '-92.97630'), ('Bryceland', 114, '32.44380', '-92.98960'), ('Castor', 209, '32.25410', '-93.16700'), ('Gibsland', 1119, '32.53900', '-93.05330'), ('Jamestown', 149, '32.33760', '-93.20530'), ('Lucky', 355, '32.24350', '-93.01280'), ('Mount Lebanon', 73, '32.50290', '-93.04930'), ('Ringgold', 1660, '32.32600', '-93.28440'), ('Saline', 296, '32.16400', '-92.97700')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ013': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Chatham', 623, '32.30890', '-92.45120'), ('East Hodge', 366, '32.27690', '-92.71400'), ('Eros', 202, '32.39220', '-92.42430'), ('Hodge', 492, '32.27170', '-92.72910'), ('Jonesboro', 3914, '32.23680', '-92.71000'), ('North Hodge', 436, '32.28410', '-92.71620'), ('Quitman', 168, '32.34990', '-92.72150')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ014': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Brownsville-Bawcom', 7397, '32.48380', '-92.16390'), ('Claiborne', 9830, '32.54220', '-92.19670'), ('Monroe', 53107, '32.51170', '-92.08490'), ('Richwood', 2115, '32.44660', '-92.07250'), ('Sterlington', 1276, '32.69060', '-92.06480'), ('Swartz', 4247, '32.56930', '-91.98610'), ('West Monroe', 13250, '32.51480', '-92.14850')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ015': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Delhi', 3066, '32.45640', '-91.48920'), ('Mangham', 595, '32.30600', '-91.78090'), ('Rayville', 4234, '32.47160', '-91.75720')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ016': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Delta', 239, '32.32380', '-90.92320'), ('Mound', 12, '32.33680', '-91.02150'), ('Richmond', 499, '32.38780', '-91.18240'), ('Tallulah', 9189, '32.40740', '-91.18920')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ017': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Converse', 400, '31.78040', '-93.69980'), ('Fisher', 268, '31.49440', '-93.46030'), ('Florien', 692, '31.44940', '-93.45950'), ('Many', 2889, '31.56540', '-93.47490'), ('Noble', 259, '31.69010', '-93.68300'), ('Pleasant Hill', 786, '31.81610', '-93.51520'), ('Zwolle', 1783, '31.63630', '-93.64350')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ018': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Ashland', 291, '32.11630', '-93.11460'), ('Campti', 1057, '31.89790', '-93.11500'), ('Clarence', 516, '31.82000', '-93.02860'), ('Goldonna', 457, '32.02040', '-92.91200'), ('Natchez', 583, '31.67400', '-93.04530'), ('Natchitoches', 17865, '31.75550', '-93.09770'), ('Powhatan', 141, '31.87410', '-93.20330'), ('Provencal', 708, '31.65270', '-93.20030'), ('Robeline', 183, '31.69180', '-93.30330')], 'partOfState': 'northwest', 'wfo': 'SHV'}, +'LAZ019': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Atlanta', 150, '31.80560', '-92.73690'), ('Calvin', 236, '31.95970', '-92.77830'), ('Dodson', 357, '32.07920', '-92.65820'), ('Sikes', 120, '32.07930', '-92.48590'), ('Winnfield', 5749, '31.92210', '-92.64120')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ020': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Colfax', 1659, '31.51890', '-92.70570'), ('Dry Prong', 421, '31.57860', '-92.52930'), ('Georgetown', 301, '31.75930', '-92.38100'), ('Montgomery', 787, '31.66450', '-92.88920'), ('Pollock', 376, '31.52460', '-92.40760')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ021': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Clarks', 1071, '32.02860', '-92.13970'), ('Columbia', 477, '32.10150', '-92.07720'), ('Grayson', 531, '32.04850', '-92.11150')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ022': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Jena', 2971, '31.68760', '-92.12580'), ('Midway', 1505, '31.68510', '-92.15120'), ('Olla', 1417, '31.89980', '-92.23760'), ('Tullos', 419, '31.82020', '-92.32910'), ('Urania', 700, '31.86390', '-92.29050')], 'partOfState': 'north central', 'wfo': 'SHV'}, +'LAZ023': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Baskin', 188, '32.25930', '-91.74780'), ('Gilbert', 561, '32.05060', '-91.65540'), ('Winnsboro', 5344, '32.16010', '-91.72050'), ('Wisner', 1140, '31.98090', '-91.65510')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ024': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Harrisonburg', 746, '31.76700', '-91.82380'), ('Jonesville', 2469, '31.62280', '-91.83050'), ('Sicily Island', 453, '31.84970', '-91.65920')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ025': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Newellton', 1482, '32.07260', '-91.23910'), ('St. Joseph', 1340, '31.92010', '-91.23930'), ('Waterproof', 834, '31.80680', '-91.38510')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ026': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Clayton', 858, '31.72100', '-91.53970'), ('Ferriday', 3723, '31.63450', '-91.55530'), ('Ridgecrest', 801, '31.60190', '-91.52970'), ('Vidalia', 4543, '31.56830', '-91.44050'), ('West Ferriday', 1541, '31.64020', '-91.57320')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'LAZ027': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Anacoco', 866, '31.25570', '-93.34390'), ('Burr Ferry', 2415, '31.06600', '-93.49600'), ('Evans', 1390, '30.98890', '-93.50190'), ('Fort Polk', 11000, '31.04640', '-93.20530'), ('Hornbeck', 435, '31.32670', '-93.39620'), ('Kurthwood', 583, '31.33800', '-93.16500'), ('Lacamp', 583, '31.16400', '-92.91500'), ('Leesville', 6753, '31.13740', '-93.27480'), ('New Llano', 2415, '31.11280', '-93.27910'), ('Pickering', 11000, '31.03390', '-93.27060'), ('Pitkin', 574, '30.93610', '-92.93610'), ('Rosepine', 1390, '30.91940', '-93.28430'), ('Simpson', 583, '31.25580', '-93.01840'), ('Slagle', 3279, '31.20220', '-93.12720')], 'partOfState': 'west central', 'wfo': 'LCH'}, +'LAZ028': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Alexandria', 46342, '31.29190', '-92.46330'), ('Ball', 3681, '31.41830', '-92.41010'), ('Boyce', 1190, '31.39000', '-92.66940'), ('Calcasieu', 211, '31.09030', '-92.71280'), ('Cheneyville', 901, '31.01090', '-92.28990'), ('Deville', 1007, '31.34660', '-92.15790'), ('Echo', 901, '31.11100', '-92.24100'), ('Flatwoods', 1190, '31.40250', '-92.86810'), ('Forest Hill', 456, '31.05000', '-92.52460'), ('Gardner', 1190, '31.26900', '-92.69300'), ('Glenmora', 1558, '30.97320', '-92.58280'), ('Hineston', 211, '31.14300', '-92.75900'), ('Lecompte', 1366, '31.08890', '-92.39860'), ('McNary', 211, '30.98670', '-92.57760'), ('Pineville', 13829, '31.33200', '-92.41500'), ('Union Hill', 574, '30.99400', '-92.73100'), ('Woodworth', 1080, '31.15000', '-92.50160')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAZ029': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bordelonville', 922, '31.10530', '-91.90720'), ('Bunkie', 4662, '30.95360', '-92.18670'), ('Centerpoint', 1007, '31.24800', '-92.21000'), ('Cottonport', 2316, '30.98830', '-92.05290'), ('Dupont', 281, '30.92940', '-91.94810'), ('Effie', 5537, '31.21580', '-92.15560'), ('Evergreen', 314, '30.95400', '-92.10600'), ('Hamburg', 922, '31.03060', '-91.93140'), ('Hessmer', 642, '31.05360', '-92.12110'), ('Mansura', 1573, '31.05800', '-92.05080'), ('Marksville', 5537, '31.12680', '-92.06310'), ('Moreauville', 922, '31.03330', '-91.98040'), ('Plaucheville', 281, '30.96460', '-91.98290'), ('Simmesport', 2239, '30.98190', '-91.81440')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAZ030': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bundick Lake', 9808, '30.74640', '-93.10720'), ('De Ridder', 9808, '30.84570', '-93.29100'), ('Dry Creek', 209, '30.66890', '-93.04530'), ('Fields', 3398, '30.52610', '-93.57470'), ('Junction', 1126, '30.83810', '-93.50890'), ('Longville', 209, '30.60500', '-93.23170'), ('Merryville', 1126, '30.75350', '-93.53260'), ('Oretta', 3398, '30.52580', '-93.43720'), ('Ragley', 209, '30.51250', '-93.23220'), ('Singer', 1126, '30.65470', '-93.41220'), ('Sugartown', 574, '30.83970', '-93.01470')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAZ031': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Elizabeth', 574, '30.86830', '-92.79280'), ('Grant', 574, '30.78830', '-92.94830'), ('Kinder', 2148, '30.48650', '-92.84870'), ('Leblanc', 209, '30.50890', '-92.94890'), ('Mittie', 1853, '30.70670', '-92.90670'), ('Oakdale', 8137, '30.81840', '-92.65650'), ('Oberlin', 1853, '30.61830', '-92.76430'), ('Reeves', 209, '30.51990', '-93.04390')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAZ032': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Basile', 1660, '30.49500', '-92.59580'), ('Beaver', 8137, '30.79560', '-92.57190'), ('Chataignier', 383, '30.56750', '-92.31540'), ('Mamou', 3566, '30.63480', '-92.41760'), ('Pine Prairie', 1087, '30.78290', '-92.42290'), ('Reddell', 3566, '30.67390', '-92.42610'), ('St. Landry', 4662, '30.84440', '-92.25810'), ('Turkey Creek', 356, '30.87400', '-92.41600'), ('Ville Platte', 8145, '30.69000', '-92.28030')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAZ033': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Arnaudville', 1398, '30.41750', '-91.93140'), ('Big Cane', 188, '30.82060', '-92.00920'), ('Cankton', 362, '30.34890', '-92.11140'), ('Eunice', 11499, '30.49110', '-92.41910'), ('Grand Coteau', 1040, '30.41970', '-92.04640'), ('Krotz Springs', 1219, '30.53430', '-91.75350'), ('Lawtell', 22860, '30.51830', '-92.18470'), ('Leonville', 1007, '30.46440', '-91.98010'), ('Melville', 1376, '30.69180', '-91.74730'), ('Opelousas', 22860, '30.52470', '-92.08350'), ('Palmetto', 188, '30.71780', '-91.90800'), ('Port Barre', 2287, '30.55680', '-91.95640'), ('Sunset', 2352, '30.40830', '-92.06600'), ('Washington', 1082, '30.61540', '-92.05970')], 'partOfState': 'central', 'wfo': 'LCH'}, +'LAZ034': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Batchelor', 659, '30.84030', '-91.66140'), ('Lettsworth', 2239, '30.93330', '-91.70470'), ('Livonia', 1339, '30.56490', '-91.55010'), ('Lottie', 933, '30.55610', '-91.64170'), ('Morganza', 659, '30.73660', '-91.59070'), ('New Roads', 4966, '30.69410', '-91.45410')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ035': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Spillman', 4130, '30.92970', '-91.28360'), ('St. Francisville', 1712, '30.78360', '-91.37910'), ('Wakefield', 1712, '30.88920', '-91.35000')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ036': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Clinton', 1998, '30.86110', '-91.01500'), ('Felps', 1998, '30.97690', '-90.91860'), ('Jackson', 4130, '30.83420', '-91.21020'), ('Norwood', 337, '30.96450', '-91.10650'), ('Slaughter', 1011, '30.71890', '-91.14160')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ037': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Darlington', 631, '30.87780', '-90.78140'), ('Easleyville', 631, '30.92860', '-90.68750'), ('Greensburg', 631, '30.82960', '-90.67000'), ('Montpelier', 214, '30.67950', '-90.65450')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ039': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Angie', 240, '30.96390', '-89.81580'), ('Bogalusa', 13365, '30.78270', '-89.86410'), ('Enon', 3657, '30.72670', '-90.08420'), ('Franklinton', 3657, '30.84880', '-90.14360'), ('Mount Herman', 483, '30.96000', '-90.29580'), ('Varnado', 342, '30.89470', '-89.83160')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ040': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Abita Springs', 1957, '30.47760', '-90.03130'), ('Bush', 471, '30.60860', '-89.90000'), ('Covington', 8483, '30.47860', '-90.11210'), ('Eden Isle', 6261, '30.22830', '-89.79870'), ('Folsom', 525, '30.63190', '-90.19800'), ('Lacombe', 7518, '30.30770', '-89.92800'), ('Madisonville', 677, '30.39520', '-90.16420'), ('Mandeville', 10489, '30.37010', '-90.08220'), ('Pearl River', 1839, '30.37220', '-89.74800'), ('Slidell', 25695, '30.28100', '-89.77770'), ('Sun', 471, '30.64960', '-89.90450')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ041': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bell City', 2663, '30.11310', '-92.96250'), ('Carlyss', 4049, '30.17580', '-93.36960'), ('De Quincy', 3398, '30.44830', '-93.44350'), ('Gillis', 10535, '30.37360', '-93.20080'), ('Hayes', 2663, '30.10860', '-92.92000'), ('Iowa', 2663, '30.23720', '-93.01270'), ('Lake Charles', 71757, '30.21090', '-93.20290'), ('Lebleu Settlement', 2663, '30.27670', '-93.08110'), ('Moss Bluff', 10535, '30.30410', '-93.20380'), ('Starks', 1218, '30.31530', '-93.66170'), ('Sulphur', 20512, '30.22950', '-93.35640'), ('Vinton', 3338, '30.19720', '-93.58050'), ('Westlake', 4668, '30.25110', '-93.25890')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAZ042': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Elton', 1261, '30.48160', '-92.69710'), ('Fenton', 380, '30.36350', '-92.91680'), ('Hathaway', 10986, '30.34940', '-92.67140'), ('Jennings', 10986, '30.22290', '-92.65840'), ('Lacassine', 2663, '30.23530', '-92.92140'), ('Lake Arthur', 3007, '30.07980', '-92.67740'), ('Roanoke', 3380, '30.23670', '-92.74690'), ('Topsy', 10535, '30.40920', '-93.12220'), ('Welsh', 3380, '30.23550', '-92.81210')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAZ043': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Branch', 4756, '30.34860', '-92.26750'), ('Church Point', 4756, '30.40390', '-92.21450'), ('Crowley', 14225, '30.21260', '-92.37590'), ('Egan', 807, '30.23670', '-92.50580'), ('Estherwood', 807, '30.18110', '-92.46320'), ('Evangeline', 721, '30.26220', '-92.57060'), ('Iota', 1376, '30.32650', '-92.49480'), ('Mermentau', 721, '30.18500', '-92.58500'), ('Midland', 807, '30.18110', '-92.50310'), ('Mire', 1672, '30.30000', '-92.19390'), ('Morse', 759, '30.12090', '-92.49800'), ('Rayne', 8552, '30.23820', '-92.26710'), ('Richard', 4756, '30.42200', '-92.31300')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAZ044': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Broussard', 5874, '30.15010', '-91.97010'), ('Carencro', 6120, '30.31050', '-92.03660'), ('Duson', 1672, '30.23220', '-92.19190'), ('Lafayette', 110257, '30.21530', '-92.02950'), ('Milton', 642, '30.10360', '-92.07000'), ('Scott', 7870, '30.23770', '-92.09050'), ('Youngsville', 3992, '30.09990', '-91.99250')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAZ045': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Breaux Bridge', 7281, '30.27820', '-91.90100'), ('Butte La Rose', 1531, '30.27750', '-91.68670'), ('Cade', 6989, '30.08700', '-91.90500'), ('Catahoula', 533, '30.21400', '-91.70900'), ('Cecilia', 1505, '30.33610', '-91.84780'), ('Henderson', 1531, '30.31430', '-91.79930'), ('Parks', 533, '30.21530', '-91.82940'), ('St. Martinville', 6989, '30.12500', '-91.83050')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAZ046': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bayou Sorrel', 7064, '30.16170', '-91.33560'), ('Carville', 1108, '30.22390', '-91.10450'), ('Grosse Tete', 670, '30.41440', '-91.43520'), ('Maringouin', 1262, '30.49110', '-91.51830'), ('Plaquemine', 7064, '30.28320', '-91.24050'), ('Ramah', 753, '30.40220', '-91.50720'), ('White Castle', 1946, '30.16070', '-91.14930')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ047': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Addis', 2238, '30.35450', '-91.26940'), ('Brusly', 2020, '30.39470', '-91.25170'), ('Erwinville', 753, '30.53080', '-91.40780'), ('Port Allen', 5278, '30.45070', '-91.20880')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ048': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Baker', 13793, '30.58550', '-91.15700'), ('Baton Rouge', 227818, '30.44900', '-91.12600'), ('Gardere', 8992, '30.35720', '-91.13460'), ('Greenwell Spring', 4763, '30.57940', '-90.99420'), ('Oak Hills Place', 7996, '30.36670', '-91.08690'), ('Pride', 1011, '30.69360', '-90.97810'), ('Westminster', 2515, '30.40710', '-91.08980'), ('Zachary', 11275, '30.66110', '-91.15210')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ049': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Donaldsonville', 7605, '30.09810', '-90.99670'), ('Geismer', 1108, '30.20420', '-91.02250'), ('Gonzales', 8156, '30.21680', '-90.92360'), ('Prairieville', 5631, '30.30280', '-90.97190'), ('Sorrento', 1227, '30.18830', '-90.86580')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ050': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Denham Springs', 8757, '30.47970', '-90.95930'), ('Killian', 1053, '30.35020', '-90.57830'), ('Livingston', 1342, '30.50220', '-90.74520'), ('Springfield', 395, '30.42650', '-90.54260'), ('Walker', 4801, '30.48440', '-90.86600'), ('Watson', 8757, '30.57560', '-90.95310'), ('Whitehall', 945, '30.28330', '-90.70030')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ052': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Abbeville', 11887, '29.97420', '-92.12360'), ('Delcambre', 2168, '29.95010', '-91.98960'), ('Erath', 2187, '29.95820', '-92.03750'), ('Forked Island', 5177, '29.83140', '-92.30000'), ('Gueydan', 1598, '30.02890', '-92.50850'), ('Henry', 2187, '29.88310', '-92.07830'), ('Intracoastal City', 11887, '29.78420', '-92.15610'), ('Kaplan', 5177, '30.00340', '-92.28430'), ('Maurice', 642, '30.10620', '-92.12390'), ('Meaux', 11887, '30.02060', '-92.18250'), ('Pecan Island', 1598, '29.64640', '-92.45310')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAZ053': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Avery Island', 2168, '29.90330', '-91.91030'), ('Jeanerette', 5997, '29.91630', '-91.67530'), ('Jefferson Island', 2168, '29.97690', '-91.97720'), ('Lake Fausse Pointe', 938, '30.01560', '-91.65140'), ('Loreauville', 938, '30.05910', '-91.73860'), ('Lydia', 1079, '29.92450', '-91.78240'), ('New Iberia', 32623, '30.00510', '-91.81720'), ('Weeks Island', 1079, '29.80750', '-91.80690')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAZ054': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Amelia', 2423, '29.66370', '-91.10680'), ('Baldwin', 2497, '29.83340', '-91.55370'), ('Bayou Vista', 4351, '29.69230', '-91.26710'), ('Berwick', 4418, '29.70030', '-91.23580'), ('Burns Point', 8354, '29.57330', '-91.52850'), ('Centerville', 8354, '29.76000', '-91.42800'), ('Charenton', 1944, '29.86850', '-91.53640'), ('Cypremort Point', 1079, '29.77470', '-91.77440'), ('Franklin', 8354, '29.80080', '-91.51450'), ('Morgan City', 12703, '29.70170', '-91.19190'), ('Patterson', 5130, '29.69170', '-91.30870')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAZ055': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Stephensville', 12703, '29.77810', '-91.16580')], 'partOfState': 'south central', 'wfo': 'LCH'}, +'LAZ056': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Labadieville', 1811, '29.82360', '-90.95640'), ('Napoleonville', 686, '29.93760', '-91.02670'), ('Paincourtville', 884, '29.99140', '-91.05390'), ('Pierre Part', 3239, '29.95760', '-91.20890')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ057': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Convent', 3735, '30.02060', '-90.82970'), ('Gramercy', 3066, '30.05940', '-90.69550'), ('Lutcher', 3735, '30.06300', '-90.71170')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ058': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Edgard', 2637, '30.02510', '-90.55670'), ('Garyville', 2775, '30.07730', '-90.62450'), ('Laplace', 27684, '30.07230', '-90.47280'), ('Reserve', 9111, '30.07540', '-90.56060')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ059': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Larose', 7306, '29.57080', '-90.37450'), ('Lockport', 2624, '29.64040', '-90.53800'), ('Mathews', 2003, '29.68720', '-90.56140'), ('Raceland', 10224, '29.71810', '-90.59680'), ('Thibodaux', 14431, '29.79000', '-90.82090')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ060': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Boutte', 2181, '29.89620', '-90.39750'), ('Des Allemands', 2500, '29.83280', '-90.43000'), ('Destrehan', 11260, '29.96180', '-90.36900'), ('Hahnville', 2792, '29.97300', '-90.42100'), ('New Sarpy', 1568, '29.97740', '-90.38620'), ('Norco', 3579, '30.00170', '-90.40960')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ061': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Avondale', 5441, '29.90210', '-90.19160'), ('Barataria', 1333, '29.71560', '-90.12410'), ('Bridge City', 8323, '29.93380', '-90.16140'), ('Gretna', 17423, '29.91400', '-90.05250'), ('Harahan', 9885, '29.93700', '-90.20370'), ('Harvey', 22226, '29.88600', '-90.06730'), ('Jean Lafitte', 2137, '29.74950', '-90.10610'), ('Kenner', 70517, '29.98000', '-90.25000'), ('Lafitte', 1576, '29.68860', '-90.09710'), ('Marrero', 36165, '29.88500', '-90.11430'), ('Metairie', 146136, '29.99760', '-90.17740'), ('Terrytown', 25430, '29.90000', '-90.02830'), ('Timberlane', 11405, '29.87730', '-90.03200'), ('Waggaman', 9435, '29.93760', '-90.23370'), ('Westwego', 10763, '29.90490', '-90.14280')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ062': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('East New Orleans', 484674, '30.06580', '-89.93140'), ('Lake Catherine', 6261, '30.11420', '-89.70920'), ('New Orleans', 484674, '29.97000', '-90.08300')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ063': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Belle Chasse', 9848, '29.84590', '-90.00390')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ064': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Chalmette', 32069, '29.94420', '-89.96730'), ('Violet', 8555, '29.89620', '-89.89250')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ065': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Bayou Cane', 17046, '29.62390', '-90.75110'), ('Gray', 4958, '29.67690', '-90.78160'), ('Houma', 32393, '29.57870', '-90.70690'), ('Schriever', 5880, '29.73610', '-90.82680')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ066': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Chauvin', 3229, '29.44550', '-90.59440'), ('Cocodrie', 2458, '29.24670', '-90.66140'), ('Dulac', 2458, '29.36980', '-90.70040'), ('Montegut', 1803, '29.46980', '-90.55990')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ067': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Cut Off', 5635, '29.52940', '-90.33460'), ('Galliano', 7356, '29.43100', '-90.30270'), ('Golden Meadow', 2193, '29.38770', '-90.27340'), ('Leeville', 2193, '29.23890', '-90.20750')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ068': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ069': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Boothville', 2220, '29.32330', '-89.39580'), ('Buras', 3358, '29.34210', '-89.49650'), ('Empire', 2211, '29.41190', '-89.61060'), ('Myrtle Grove', 1576, '29.63720', '-89.94920'), ('Pointe A La Hache', 3115, '29.57610', '-89.79170'), ('Port Sulphur', 3115, '29.49440', '-89.70850'), ('Venice', 2220, '29.27690', '-89.35470')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ070': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Yscloskey', 3886, '29.84170', '-89.68830')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ071': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Amite', 4640, '30.73340', '-90.51000'), ('Kentwood', 2205, '30.93470', '-90.51530'), ('Roseland', 1162, '30.76470', '-90.51280'), ('Tangipahoa', 747, '30.87530', '-90.51390'), ('Wilmer', 1162, '30.81390', '-90.36250')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ072': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Hammond', 17639, '30.50770', '-90.46010'), ('Independence', 1724, '30.63550', '-90.50510'), ('Ponchatoula', 5180, '30.43730', '-90.44350'), ('Robert', 17639, '30.50610', '-90.34080'), ('Tickfaw', 617, '30.57620', '-90.48570')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'LAZ073': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Constance Beach', 1699, '29.77500', '-93.57940'), ('Hackberry', 1699, '29.96830', '-93.43380'), ('Holly Beach', 1965, '29.78500', '-93.45920'), ('Johnson Bayou', 58724, '29.77110', '-93.65830'), ('Sabine National Wildlife Refuge', 0, '29.90000', '-93.58000')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'LAZ074': {'fullStateName': 'Louisiana', 'state': 'LA', 'cities': [('Cameron', 1965, '29.79760', '-93.29960'), ('Creole', 1965, '29.79580', '-93.11110'), ('Grand Chenier', 1965, '29.76670', '-92.97500'), ('Grand Lake', 7215, '30.03060', '-93.27190'), ('Klondike', 3007, '30.03060', '-92.63280'), ('Lacassine National', 0, '29.99000', '-92.93000'), ('Rockefeller Wildlife Refuge', 0, '29.68000', '-92.76000'), ('Rutherford Beach', 1965, '29.77500', '-93.12500')], 'partOfState': 'southwest', 'wfo': 'LCH'}, +'MAZ001': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Adams', 5784, '42.62750', '-73.11930'), ('Cheshire', 5784, '42.55700', '-73.15300'), ('Dalton', 45793, '42.47420', '-73.16170'), ('Florida', 14681, '42.66720', '-73.00800'), ('Hancock', 45793, '42.54300', '-73.32380'), ('New Ashford', 4754, '42.60420', '-73.23630'), ('North Adams', 14681, '42.68680', '-73.11380'), ('Pittsfield', 45793, '42.45180', '-73.26090'), ('Savoy', 5784, '42.56770', '-73.02420'), ('Williamstown', 4754, '42.70710', '-73.20190')], 'partOfState': 'western', 'wfo': 'ALY'}, +'MAZ002': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Ashfield', 1951, '42.53333', '-72.78333'), ('Buckland', 1951, '42.60000', '-72.78333'), ('Charlemont', 1951, '42.63333', '-72.88333'), ('Colrain', 1951, '42.66667', '-72.68333'), ('Conway', 1868, '42.51667', '-72.68333'), ('Hawley', 1951, '42.56667', '-72.88333'), ('Heath', 1951, '42.66667', '-72.83333'), ('Leyden', 13716, '42.70000', '-72.61667'), ('Monroe', 244, '42.71667', '-72.95000'), ('Rowe', 244, '42.70000', '-72.90000'), ('Shelburne', 1951, '42.58333', '-72.68333')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAZ003': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Bernardston', 4731, '42.66667', '-72.55000'), ('Deerfield', 13716, '42.55000', '-72.60000'), ('Erving', 1072, '42.60000', '-72.40000'), ('Gill', 1072, '42.65000', '-72.50000'), ('Greenfield', 13716, '42.58930', '-72.59890'), ('Leverett', 6019, '42.45000', '-72.50000'), ('Montague', 1072, '42.53333', '-72.53333'), ('New Salem', 3945, '42.50000', '-72.33333'), ('Northfield', 1141, '42.70940', '-72.43730'), ('Orange', 3945, '42.59420', '-72.30430'), ('Shutesbury', 6019, '42.45000', '-72.40000'), ('Sunderland', 1868, '42.46667', '-72.58333'), ('Warwick', 3945, '42.68333', '-72.33333'), ('Wendell', 1072, '42.55000', '-72.40000'), ('Whately', 1868, '42.45000', '-72.61667')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAZ004': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Ashburnham', 1013, '42.63333', '-71.90000'), ('Athol', 8370, '42.59180', '-72.23200'), ('Barre', 1150, '42.42250', '-72.10770'), ('Berlin', 7884, '42.38333', '-71.63333'), ('Bolton', 14388, '42.43333', '-71.60000'), ('Boylston', 7884, '42.35000', '-71.73333'), ('Brookfield', 1610, '42.21667', '-72.10000'), ('Clinton', 7884, '42.41870', '-71.68530'), ('East Brookfield', 1410, '42.22870', '-72.04820'), ('Fitchburg', 39102, '42.58920', '-71.81560'), ('Gardner', 20770, '42.58410', '-71.98620'), ('Hardwick', 6174, '42.35000', '-72.20000'), ('Harvard', 5981, '42.50000', '-71.58333'), ('Holden', 0, '42.35000', '-71.85000'), ('Hubbardston', 20770, '42.48333', '-72.01667'), ('Lancaster', 1742, '42.45000', '-71.66667'), ('Leicester', 0, '42.25000', '-71.90000'), ('Leominster', 41303, '42.51910', '-71.77220'), ('Lunenburg', 1695, '42.59500', '-71.72510'), ('New Braintree', 2527, '42.31667', '-72.13333'), ('North Brookfield', 2527, '42.27170', '-72.08500'), ('Oakham', 2527, '42.35000', '-72.05000'), ('Paxton', 2205, '42.31667', '-71.93333'), ('Petersham', 1150, '42.48333', '-72.18333'), ('Phillipston', 1852, '42.55000', '-72.13333'), ('Princeton', 41303, '42.45000', '-71.86667'), ('Royalston', 8370, '42.68333', '-72.18333'), ('Rutland', 2205, '42.36280', '-71.95190'), ('Spencer', 6032, '42.24390', '-71.99200'), ('Sterling', 1742, '42.43333', '-71.75000'), ('Templeton', 1852, '42.55000', '-72.06667'), ('Warren', 1452, '42.21520', '-72.19070'), ('West Boylston', 172648, '42.36667', '-71.78333'), ('West Brookfield', 1610, '42.23850', '-72.14810'), ('Westminster', 1013, '42.55000', '-71.90000'), ('Winchendon', 4246, '42.68200', '-72.04470')], 'partOfState': 'central', 'wfo': 'BOX'}, +'MAZ005': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Acton', 2816, '42.48333', '-71.46667'), ('Ashland', 2515, '42.25000', '-71.46667'), ('Bedford', 30355, '42.48333', '-71.26667'), ('Billerica', 6941, '42.55000', '-71.26667'), ('Boxborough', 2816, '42.50000', '-71.50000'), ('Burlington', 22876, '42.50310', '-71.20210'), ('Carlisle', 32388, '42.53333', '-71.35000'), ('Chelmsford', 32388, '42.59990', '-71.36770'), ('Concord', 5761, '42.45000', '-71.35000'), ('Dracut', 105167, '42.66667', '-71.30000'), ('Dunstable', 2296, '42.66667', '-71.48333'), ('Framingham', 66910, '42.30590', '-71.43790'), ('Holliston', 4607, '42.20000', '-71.43333'), ('Hopkinton', 2628, '42.22280', '-71.52140'), ('Hudson', 14388, '42.39230', '-71.56400'), ('Lincoln', 59226, '42.41667', '-71.30000'), ('Littleton', 2816, '42.53650', '-71.47250'), ('Lowell', 105167, '42.63870', '-71.32210'), ('Marlborough', 36255, '42.34990', '-71.54770'), ('Maynard', 10433, '42.42570', '-71.45700'), ('Natick', 6768, '42.28333', '-71.35000'), ('North Reading', 11542, '42.56667', '-71.06667'), ('Reading', 23708, '42.53580', '-71.10700'), ('Sherborn', 4607, '42.23333', '-71.36667'), ('Stow', 10433, '42.43333', '-71.50000'), ('Sudbury', 6768, '42.36667', '-71.40000'), ('Tewksbury', 6941, '42.61667', '-71.23333'), ('Tyngsboro', 7626, '42.68333', '-71.41667'), ('Wayland', 6768, '42.36667', '-71.36667'), ('Westford', 2816, '42.58333', '-71.43333'), ('Wilmington', 21363, '42.55940', '-71.16660')], 'partOfState': 'northeast', 'wfo': 'BOX'}, +'MAZ006': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Amesbury', 12327, '42.85640', '-70.92850'), ('Andover', 7900, '42.65530', '-71.14310'), ('Boxford', 2340, '42.67350', '-70.98660'), ('Georgetown', 2340, '42.73333', '-70.98333'), ('Groveland', 58969, '42.75000', '-71.03333'), ('Haverhill', 58969, '42.78430', '-71.08620'), ('Lawrence', 72043, '42.70000', '-71.16200'), ('Merrimac', 12327, '42.83333', '-71.00000'), ('Methuen', 43789, '42.71667', '-71.18333'), ('Middleton', 11542, '42.60000', '-71.01667'), ('North Andover', 72043, '42.70000', '-71.11667'), ('Topsfield', 2826, '42.63920', '-70.95590'), ('West Newbury', 58969, '42.80147', '-70.99000')], 'partOfState': 'northeast', 'wfo': 'BOX'}, +'MAZ007': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Beverly', 39862, '42.55770', '-70.84050'), ('Danvers', 25212, '42.57190', '-70.95110'), ('Essex', 1426, '42.63080', '-70.77240'), ('Gloucester', 30273, '42.61670', '-70.65000'), ('Hamilton', 39862, '42.61667', '-70.86667'), ('Ipswich', 4161, '42.67810', '-70.83150'), ('Lynn', 89050, '42.47420', '-70.96250'), ('Lynnfield', 11542, '42.53560', '-71.04030'), ('Manchester', 1426, '42.56667', '-70.76667'), ('Newbury', 58969, '42.76670', '-70.84500'), ('Newburyport', 17189, '42.81480', '-70.88950'), ('Peabody', 48129, '42.53290', '-70.97030'), ('Rockport', 5606, '42.64600', '-70.61940'), ('Rowley', 1434, '42.71870', '-70.87460'), ('Salisbury', 4484, '42.83260', '-70.84030'), ('Saugus', 26078, '42.46740', '-71.01530'), ('Swampscott', 14412, '42.46670', '-70.89230'), ('Wenham', 39862, '42.60000', '-70.88333')], 'partOfState': 'northeast', 'wfo': 'BOX'}, +'MAZ008': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Chesterfield', 28978, '42.40000', '-72.85000'), ('Cummington', 1951, '42.46667', '-72.90000'), ('East Windsor', 5784, '42.47720', '-72.98320'), ('Goshen', 28978, '42.43333', '-72.80000'), ('Huntington', 40072, '42.23333', '-72.88333'), ('Middlefield', 2021, '42.35000', '-73.01667'), ('Plainfield', 1951, '42.51667', '-72.91667'), ('Westhampton', 28978, '42.30000', '-72.76667'), ('Williamsburg', 28978, '42.40000', '-72.71667'), ('Worthington', 1951, '42.41667', '-72.93333')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAZ009': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Blandford', 40072, '42.18333', '-72.93333'), ('Chester', 2021, '42.28333', '-72.98333'), ('Granville', 1455, '42.06667', '-72.86667'), ('Montgomery', 40072, '42.20000', '-72.80000'), ('Russell', 40072, '42.18333', '-72.85000'), ('Tolland', 8254, '42.08333', '-73.01667')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAZ010': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Amherst', 17050, '42.37510', '-72.52000'), ('Belchertown', 2626, '42.27320', '-72.40320'), ('Easthampton', 15994, '42.26667', '-72.68333'), ('Granby', 1344, '42.26270', '-72.52740'), ('Hadley', 1298, '42.35000', '-72.58333'), ('Hatfield', 1298, '42.37190', '-72.60880'), ('Northampton', 28978, '42.32710', '-72.67510'), ('Pelham', 6019, '42.40000', '-72.40000'), ('Southampton', 39838, '42.23333', '-72.73333'), ('South Hadley', 1344, '42.26667', '-72.56666'), ('Ware', 6174, '42.25320', '-72.24550')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAZ011': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Agawam', 28144, '42.06667', '-72.61667'), ('Brimfield', 1444, '42.11667', '-72.20000'), ('Chicopee', 54653, '42.17590', '-72.57310'), ('East Longmeadow', 152082, '42.06667', '-72.51667'), ('Hampden', 3544, '42.06667', '-72.41667'), ('Holland', 1444, '42.05280', '-72.15210'), ('Holyoke', 39838, '42.21350', '-72.64240'), ('Longmeadow', 15633, '42.04780', '-72.57010'), ('Ludlow', 3544, '42.16667', '-72.48333'), ('Monson', 2101, '42.09710', '-72.31040'), ('Palmer', 3900, '42.16090', '-72.32230'), ('Southwick', 1455, '42.05000', '-72.76667'), ('Springfield', 152082, '42.11500', '-72.53900'), ('Wales', 1444, '42.06667', '-72.21667'), ('Westfield', 40072, '42.13890', '-72.75600'), ('West Springfield', 27899, '42.12320', '-72.65310'), ('Wilbraham', 3544, '42.13580', '-72.43630')], 'partOfState': 'western', 'wfo': 'BOX'}, +'MAZ012': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Auburn', 172648, '42.20000', '-71.83333'), ('Charlton', 12878, '42.13333', '-71.96667'), ('Douglas', 2319, '42.05000', '-71.73333'), ('Dudley', 1031, '42.05000', '-71.93333'), ('Grafton', 2326, '42.20000', '-71.68333'), ('Hopedale', 4158, '42.12680', '-71.54220'), ('Mendon', 4158, '42.10000', '-71.55000'), ('Milford', 24230, '42.14860', '-71.51550'), ('Millville', 43877, '42.03333', '-71.58333'), ('Northborough', 6257, '42.31180', '-71.64890'), ('Northbridge', 6340, '42.15000', '-71.65000'), ('Oxford', 5899, '42.11570', '-71.87090'), ('Shrewsbury', 6257, '42.30000', '-71.71667'), ('Southborough', 2515, '42.30000', '-71.51667'), ('Southbridge', 12878, '42.08390', '-72.03480'), ('Sturbridge', 2047, '42.09990', '-72.06430'), ('Sutton', 2319, '42.15000', '-71.76667'), ('Upton', 2326, '42.17370', '-71.61020'), ('Uxbridge', 4158, '42.08333', '-71.60000'), ('Webster', 11600, '42.04610', '-71.87470'), ('Westborough', 3983, '42.26590', '-71.61710'), ('Whitinsville', 6340, '42.11240', '-71.67140'), ('Worcester', 172648, '42.26960', '-71.80890')], 'partOfState': 'central', 'wfo': 'BOX'}, +'MAZ013': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Avon', 94304, '42.11667', '-71.03333'), ('Bellingham', 4497, '42.09410', '-71.47460'), ('Canton', 5941, '42.15000', '-71.13333'), ('Dedham', 23464, '42.24660', '-71.17920'), ('Dover', 2216, '42.24750', '-71.27580'), ('Foxborough', 5509, '42.06520', '-71.24840'), ('Franklin', 29560, '42.08690', '-71.38730'), ('Holbrook', 10785, '42.14780', '-71.00710'), ('Medfield', 6670, '42.18790', '-71.30470'), ('Medway', 29560, '42.13333', '-71.40000'), ('Millis', 4607, '42.16890', '-71.35570'), ('Needham', 28911, '42.28070', '-71.24100'), ('Norfolk', 4607, '42.11667', '-71.31667'), ('Norwood', 28587, '42.18530', '-71.19530'), ('Plainville', 16796, '42.00000', '-71.33333'), ('Randolph', 30963, '42.17520', '-71.05430'), ('Sharon', 5941, '42.11750', '-71.18220'), ('Stoughton', 30963, '42.11667', '-71.10000'), ('Walpole', 5867, '42.13780', '-71.24470'), ('Wellesley', 26613, '42.30450', '-71.28680'), ('Westwood', 28587, '42.21667', '-71.21667'), ('Wrentham', 29560, '42.06667', '-71.33333')], 'partOfState': 'eastern', 'wfo': 'BOX'}, +'MAZ014': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Arlington', 42389, '42.41860', '-71.16430'), ('Belmont', 24194, '42.40000', '-71.16667'), ('Cambridge', 101355, '42.37580', '-71.11870'), ('Everett', 38037, '42.40660', '-71.05460'), ('Lexington', 30355, '42.44570', '-71.23140'), ('Malden', 56340, '42.43040', '-71.05840'), ('Medford', 55765, '42.42240', '-71.10870'), ('Melrose', 27134, '42.45490', '-71.05910'), ('Newton', 83829, '42.33160', '-71.20710'), ('Somerville', 77478, '42.39030', '-71.10180'), ('Stoneham', 22219, '42.47410', '-71.09820'), ('Wakefield', 24804, '42.50460', '-71.06660'), ('Waltham', 59226, '42.38780', '-71.24220'), ('Watertown', 32986, '42.36950', '-71.17760'), ('Weston', 59226, '42.36667', '-71.26667'), ('Winchester', 20810, '42.45190', '-71.14690'), ('Woburn', 37258, '42.48550', '-71.15520')], 'partOfState': 'northeast', 'wfo': 'BOX'}, +'MAZ015': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Allston', 589141, '42.35000', '-71.13333'), ('Boston', 589141, '42.31667', '-71.06667'), ('Brighton', 589141, '42.35000', '-71.15000'), ('Brookline', 57107, '42.32310', '-71.14240'), ('Charlestown', 589141, '42.38333', '-71.06667'), ('Chelsea', 35080, '42.39590', '-71.03350'), ('Dorchester', 589141, '42.28333', '-71.08333'), ('East Boston', 589141, '42.36667', '-71.03333'), ('Forest Hills', 589141, '42.29670', '-71.10400'), ('Hyde Park', 589141, '42.26667', '-71.11667'), ('Jamaica Plain', 589141, '42.30970', '-71.12100'), ('Mattapan', 589141, '42.26667', '-71.10000'), ('Revere', 47283, '42.41830', '-70.99250'), ('Roslindale', 589141, '42.28333', '-71.13333'), ('South Boston', 589141, '42.33333', '-71.05000'), ('West Roxbury', 589141, '42.28333', '-71.16667'), ('Winthrop', 18303, '42.38090', '-70.98000')], 'partOfState': 'eastern', 'wfo': 'BOX'}, +'MAZ016': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Braintree', 33698, '42.20260', '-71.00340'), ('Milton', 26062, '42.24330', '-71.08320'), ('Quincy', 88025, '42.26130', '-71.00700'), ('Weymouth', 53988, '42.20620', '-70.94510')], 'partOfState': 'eastern', 'wfo': 'BOX'}, +'MAZ017': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Attleborough', 38383, '41.93070', '-71.29570'), ('Berkley', 55976, '41.85000', '-71.08333'), ('Dighton', 18234, '41.81667', '-71.11667'), ('Easton', 94304, '42.03333', '-71.10000'), ('Freetown', 55976, '41.82000', '-71.05000'), ('Mansfield', 7170, '42.02370', '-71.21870'), ('North Attleborough', 16796, '41.97310', '-71.32520'), ('Norton', 1899, '41.96980', '-71.18420'), ('Raynham', 3709, '41.93180', '-71.04370'), ('Rehoboth', 2635, '41.83333', '-71.26667'), ('Seekonk', 50380, '41.81667', '-71.33333'), ('Taunton', 55976, '41.90300', '-71.09330')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ018': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Abington', 14605, '42.11740', '-70.95910'), ('Bridgewater', 6664, '41.98860', '-70.97130'), ('Brockton', 94304, '42.08110', '-71.02550'), ('Carver', 2059, '41.88333', '-70.76667'), ('East Bridgewater', 6664, '42.03333', '-70.95000'), ('Halifax', 2044, '41.98333', '-70.86667'), ('Hanover', 2913, '42.11667', '-70.81667'), ('Hanson', 2044, '42.06440', '-70.85040'), ('Lakeville', 2048, '41.85000', '-70.95000'), ('Middleborough', 6837, '41.89620', '-70.92790'), ('Pembroke', 2913, '42.06667', '-70.80000'), ('Plympton', 5380, '41.95000', '-70.81667'), ('Rockland', 14605, '42.13333', '-70.91667'), ('West Bridgewater', 6664, '42.01667', '-71.00000'), ('Whitman', 14605, '42.08333', '-70.93333')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ019': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Cohasset', 5065, '42.23333', '-70.80000'), ('Duxbury', 1426, '42.04280', '-70.67340'), ('Hingham', 5352, '42.23720', '-70.88770'), ('Kingston', 5380, '41.99720', '-70.71450'), ('Marshfield', 4246, '42.09140', '-70.70600'), ('Norwell', 5065, '42.16667', '-70.78333'), ('Plymouth', 7658, '41.95810', '-70.67830'), ('Scituate', 5069, '42.18910', '-70.73430')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ020': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Acushnet', 3170, '41.68610', '-70.90610'), ('Dartmouth', 4908, '41.56667', '-71.00000'), ('Fall River', 91938, '41.71460', '-71.10510'), ('New Bedford', 93768, '41.66130', '-70.93810'), ('Somerset', 18234, '41.73940', '-71.15900'), ('Swansea', 18234, '41.75000', '-71.18333'), ('Westport', 4697, '41.66667', '-71.10000')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ021': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Marion', 1202, '41.70310', '-70.76240'), ('Mattapoisett', 2949, '41.66260', '-70.80860'), ('Rochester', 1202, '41.73333', '-70.81667'), ('Wareham', 2607, '41.75230', '-70.72140')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ022': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Barnstable', 47821, '41.70000', '-70.30000'), ('Bourne', 1443, '41.73270', '-70.61400'), ('Brewster', 2212, '41.75160', '-70.08000'), ('Chatham', 1667, '41.67640', '-69.96260'), ('Dennis', 2798, '41.73160', '-70.20190'), ('Eastham', 1716, '41.83333', '-69.96667'), ('Falmouth', 4115, '41.54620', '-70.60780'), ('Harwich', 1668, '41.69180', '-70.07280'), ('Hyannis', 14120, '41.65290', '-70.29580'), ('Mashpee', 2833, '41.65000', '-70.48333'), ('Orleans', 1716, '41.79100', '-70.00030'), ('Sandwich', 3058, '41.75780', '-70.49980'), ('Truro', 3192, '42.00000', '-70.06667'), ('Wellfleet', 1570, '41.93333', '-70.03333'), ('Yarmouth', 4271, '41.70940', '-70.22890')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ023': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Aquinnah', 2048, '41.33333', '-70.81667'), ('Chilmark', 2048, '41.35000', '-70.75000'), ('Edgartown', 2048, '41.38333', '-70.53000'), ('Oak Bluffs', 2048, '41.45000', '-70.56667'), ('Tisbury', 2048, '41.46667', '-70.61667'), ('Vineyard Haven', 2048, '41.45000', '-70.61670'), ('West Tisbury', 2048, '41.38333', '-70.68333')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ024': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Nantucket', 3830, '41.27000', '-70.10270')], 'partOfState': 'southeast', 'wfo': 'BOX'}, +'MAZ025': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Ashley Falls', 1194, '42.05570', '-73.33430'), ('Becket', 2021, '42.33080', '-73.07970'), ('Great Barrington', 2459, '42.19440', '-73.35640'), ('Housatonic', 1335, '42.25040', '-73.36270'), ('Lee', 2021, '42.30720', '-73.25150'), ('Lenox', 1667, '42.35810', '-73.28670'), ('Monterey', 2021, '42.18130', '-73.21530'), ('Otis', 2021, '42.19830', '-73.07450'), ('Sandisfield', 8254, '42.11320', '-73.13770'), ('Sheffield', 1194, '42.10930', '-73.34770'), ('South Egremont', 2459, '42.16120', '-73.41700')], 'partOfState': 'western', 'wfo': 'ALY'}, +'MAZ026': {'fullStateName': 'Massachusetts', 'state': 'MA', 'cities': [('Ashby', 1135, '42.68333', '-71.81667'), ('Ayer', 2960, '42.56220', '-71.58530'), ('Groton', 1113, '42.60640', '-71.57150'), ('Pepperell', 2517, '42.66780', '-71.58820'), ('Shirley', 1427, '42.54200', '-71.65290'), ('Townsend', 1043, '42.66980', '-71.70330')], 'partOfState': 'northeast', 'wfo': 'BOX'}, +'MDZ001': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Accident', 353, '39.62690', '-79.32090'), ('Deer Park', 405, '39.42350', '-79.32670'), ('Friendsville', 539, '39.66300', '-79.40520'), ('Grantsville', 619, '39.69650', '-79.15710'), ('Kitzmiller', 302, '39.38920', '-79.18370'), ('Loch Lynn Heights', 469, '39.39130', '-79.37310'), ('Mc Henry', 0, '39.55000', '-79.35000'), ('Mountain Lake Park', 2248, '39.40380', '-79.37940')], 'partOfState': 'western', 'wfo': 'PBZ'}, +'MDZ003': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Antietam', 691, '39.41610', '-77.74250'), ('Boonsboro', 2803, '39.50950', '-77.65560'), ('Bridgeport', 2702, '39.64090', '-77.67320'), ('Brownsville', 171, '39.38190', '-77.66060'), ('Clear Spring', 455, '39.65590', '-77.93110'), ('Conococheague', 1868, '39.65720', '-77.84500'), ('Fairplay', 482, '39.53640', '-77.74780'), ('Forest Park', 0, '39.70280', '-78.29970'), ('Fort Ritchie', 276, '39.70050', '-77.50380'), ('Funkstown', 983, '39.60830', '-77.70800'), ('Gapland', 171, '39.40280', '-77.66060'), ('Hagerstown', 36687, '39.63790', '-77.71930'), ('Halfway', 10065, '39.61320', '-77.77070'), ('Hancock', 1725, '39.70290', '-78.17370'), ('Keedysville', 482, '39.48700', '-77.69920'), ('Leitersburg', 523, '39.69250', '-77.62310'), ('Long Meadow', 5594, '39.68620', '-77.71240'), ('Pecktonville', 455, '39.66970', '-78.04440'), ('Pleasantville', 308, '39.33970', '-77.73810'), ('Ringgold', 1683, '39.70940', '-77.56690'), ('Rohersville', 171, '39.43330', '-77.66310'), ('Sharpsburg', 691, '39.45760', '-77.74980'), ('Smithsburg', 2146, '39.65880', '-77.57800'), ('Warrenton', 0, '39.72000', '-77.78000'), ('Williamsport', 1868, '39.59630', '-77.81860')], 'partOfState': 'north central', 'wfo': 'LWX'}, +'MDZ004': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Arnoldtown', 171, '39.40940', '-77.60610'), ('Ballenger Creek', 13518, '39.37240', '-77.43560'), ('Bloomfield', 3260, '39.47560', '-77.42170'), ('Bolivar', 1382, '39.46640', '-77.59190'), ('Braddock Heights', 4627, '39.41430', '-77.50730'), ('Brunswick', 4894, '39.31640', '-77.62320'), ('Buckeystown', 13518, '39.33470', '-77.43190'), ('Burkittsville', 171, '39.39140', '-77.62740'), ('Emmitsburg', 2290, '39.70460', '-77.32560'), ('Frederick', 52767, '39.42820', '-77.41690'), ('Green Valley', 12262, '39.34360', '-77.24520'), ('Jefferson', 4627, '39.36190', '-77.53190'), ('Libertytown', 846, '39.48500', '-77.24060'), ('Middletown', 2668, '39.44220', '-77.54420'), ('Mount Airy', 6425, '39.37420', '-77.15930'), ('Mount Pleasant', 2152, '39.45360', '-77.32610'), ('Myersville', 1382, '39.50620', '-77.56510'), ('New Market', 427, '39.38410', '-77.27440'), ('Park Mills', 13518, '39.29780', '-77.40810'), ('Petersville', 273, '39.34640', '-77.61110'), ('Pleasant Walk', 1382, '39.53970', '-77.58640'), ('Point Of Rocks', 4894, '39.27580', '-77.53940'), ('Rosemont', 273, '39.33480', '-77.62140'), ('Sabillasville', 276, '39.70000', '-77.45670'), ('Thurmont', 5588, '39.62380', '-77.40970'), ('Utica', 5192, '39.52580', '-77.39420'), ('Walkersville', 5192, '39.48450', '-77.35330'), ('Wolfsville', 1382, '39.57420', '-77.55080'), ('Woodsboro', 846, '39.53210', '-77.31100')], 'partOfState': 'north central', 'wfo': 'LWX'}, +'MDZ005': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Eldersburg', 27741, '39.40840', '-76.94320'), ('Finksburg', 2078, '39.49280', '-76.88970'), ('Gaither', 4197, '39.36140', '-76.99330'), ('Gamber', 27741, '39.46470', '-76.93420'), ('Hampstead', 5060, '39.61840', '-76.85580'), ('Harney', 5128, '39.71390', '-77.20690'), ('Henryton', 2078, '39.35110', '-76.91360'), ('Keysville', 5128, '39.63390', '-77.25890'), ('Lineboro', 3329, '39.71860', '-76.84420'), ('Linwood', 989, '39.56330', '-77.14310'), ('Louisville', 2078, '39.44860', '-76.92420'), ('Manchester', 3329, '39.65850', '-76.89070'), ('Marston', 1303, '39.50780', '-77.10060'), ('Middleburg', 989, '39.59390', '-77.21310'), ('Millers', 3329, '39.67110', '-76.85140'), ('Oakland', 2078, '39.41240', '-76.90190'), ('Reese', 4284, '39.54280', '-76.93810'), ('Sykesville', 4197, '39.37000', '-76.97540'), ('Taneytown', 5128, '39.65510', '-77.16870'), ('Uniontown', 1303, '39.59330', '-77.11640'), ('Wagners Mill', 1303, '39.56140', '-77.05580'), ('Westminster', 16731, '39.57880', '-77.00770'), ('Winfield', 1303, '39.44720', '-77.05530')], 'partOfState': 'north central', 'wfo': 'LWX'}, +'MDZ006': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Bentley Springs', 2920, '39.67360', '-76.67110'), ('Brooklandville', 11427, '39.42030', '-76.67030'), ('Cockeysville', 19388, '39.47780', '-76.63180'), ('Glyndon', 22438, '39.47640', '-76.81610'), ('Kingsville', 4214, '39.44900', '-76.41830'), ('Long Green', 28264, '39.47280', '-76.52330'), ('Reisterstown', 22438, '39.45690', '-76.81490'), ('Timonium', 15814, '39.43690', '-76.62000')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDZ007': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Aberdeen', 13842, '39.51170', '-76.17250'), ('Aberdeen Proving Ground', 3116, '39.47250', '-76.13000'), ('Abingdon', 23378, '39.46220', '-76.27940'), ('Bel Air', 10080, '39.53460', '-76.34690'), ('Bynum', 25798, '39.56560', '-76.36500'), ('Carsins', 13842, '39.53720', '-76.21280'), ('Chrome Hill', 2756, '39.62250', '-76.42080'), ('Churchville', 13842, '39.56110', '-76.24580'), ('Darlington', 676, '39.63920', '-76.20310'), ('Edgewood', 23378, '39.42050', '-76.29920'), ('Fallston', 8427, '39.52100', '-76.42650'), ('Harford', 0, '39.49500', '-76.26170'), ('Harford Furnace', 39711, '39.49500', '-76.26170'), ('Havre De Grace', 11331, '39.54720', '-76.09900'), ('Hickory', 25798, '39.57860', '-76.34560'), ('Jarrettsville', 2756, '39.60370', '-76.47270'), ('Joppa', 11391, '39.43360', '-76.35810'), ('Joppatowne', 11391, '39.41540', '-76.35420'), ('Magnolia', 23378, '39.40470', '-76.32500'), ('Norrisville', 1308, '39.70470', '-76.53500'), ('Perryman', 2461, '39.46990', '-76.20570'), ('Pleasant Furnace', 0, '39.48710', '-76.39520'), ('Pleasant Hills', 2851, '39.48710', '-76.39520'), ('Pylesville', 761, '39.68970', '-76.37330'), ('Scarboro', 761, '39.64610', '-76.29560'), ('Whiteford', 761, '39.70890', '-76.34580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDZ007': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Aberdeen', 13842, '39.51170', '-76.17250'), ('Aberdeen Proving Ground', 3116, '39.47250', '-76.13000'), ('Abingdon', 23378, '39.46220', '-76.27940'), ('Bel Air', 10080, '39.53460', '-76.34690'), ('Bynum', 25798, '39.56560', '-76.36500'), ('Carsins', 13842, '39.53720', '-76.21280'), ('Chrome Hill', 2756, '39.62250', '-76.42080'), ('Churchville', 13842, '39.56110', '-76.24580'), ('Darlington', 676, '39.63920', '-76.20310'), ('Edgewood', 23378, '39.42050', '-76.29920'), ('Fallston', 8427, '39.52100', '-76.42650'), ('Harford', 0, '39.49500', '-76.26170'), ('Harford Furnace', 39711, '39.49500', '-76.26170'), ('Havre De Grace', 11331, '39.54720', '-76.09900'), ('Hickory', 25798, '39.57860', '-76.34560'), ('Jarrettsville', 2756, '39.60370', '-76.47270'), ('Joppa', 11391, '39.43360', '-76.35810'), ('Joppatowne', 11391, '39.41540', '-76.35420'), ('Magnolia', 23378, '39.40470', '-76.32500'), ('Norrisville', 1308, '39.70470', '-76.53500'), ('Perryman', 2461, '39.46990', '-76.20570'), ('Pleasant Furnace', 0, '39.48710', '-76.39520'), ('Pleasant Hills', 2851, '39.48710', '-76.39520'), ('Pylesville', 761, '39.68970', '-76.37330'), ('Scarboro', 761, '39.64610', '-76.29560'), ('Whiteford', 761, '39.70890', '-76.34580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDZ008': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andora', 0, '39.68470', '-75.86110'), ('Appleton', 0, '39.69830', '-75.81440'), ('Barksdale', 0, '39.66890', '-75.81500'), ('Bay View', 0, '39.64330', '-75.96170'), ('Blake', 0, '39.71560', '-75.91690'), ('Bohemias Mills', 0, '39.46610', '-75.77860'), ('Brantwood', 0, '39.55860', '-75.80420'), ('Calvert', 0, '39.70030', '-75.98280'), ('Cayots', 0, '39.48580', '-75.84810'), ('Cecilton', 0, '39.40280', '-75.86980'), ('Charlestown', 0, '39.57520', '-75.97930'), ('Cherry Hill', 0, '39.66330', '-75.85310'), ('Chesapeake City', 0, '39.52970', '-75.81070'), ('Conowingo', 0, '39.67780', '-76.15940'), ('Elkton', 0, '39.60000', '-75.82000'), ('Fair Hill', 0, '39.70220', '-75.86830'), ('Farmington', 0, '39.67860', '-76.03250'), ('Glen Westover', 0, '39.71360', '-75.79720'), ('Hollywood Beach', 0, '39.50220', '-75.90830'), ('Lombard', 0, '39.71860', '-75.94670'), ('North East', 0, '39.60020', '-75.94250'), ('Octoraro', 0, '39.65860', '-76.15500'), ('Perryville', 0, '39.57100', '-76.06880'), ('Pleasant Hill', 0, '39.67030', '-75.90250'), ('Port Deposit', 0, '39.60360', '-76.11580'), ('Richardsmere', 0, '39.68920', '-76.12670'), ('Rising Sun', 0, '39.69830', '-76.06060'), ('Rock Springs', 0, '39.71500', '-76.15890'), ('Warwick', 0, '39.41670', '-75.77860'), ('West Nottingham', 0, '39.66940', '-76.07670'), ('Woodlawn', 0, '39.63420', '-76.07610'), ('Zion', 0, '39.67560', '-75.96530')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDZ008': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andora', 0, '39.68470', '-75.86110'), ('Appleton', 0, '39.69830', '-75.81440'), ('Barksdale', 0, '39.66890', '-75.81500'), ('Bay View', 0, '39.64330', '-75.96170'), ('Blake', 0, '39.71560', '-75.91690'), ('Bohemias Mills', 0, '39.46610', '-75.77860'), ('Brantwood', 0, '39.55860', '-75.80420'), ('Calvert', 0, '39.70030', '-75.98280'), ('Cayots', 0, '39.48580', '-75.84810'), ('Cecilton', 0, '39.40280', '-75.86980'), ('Charlestown', 0, '39.57520', '-75.97930'), ('Cherry Hill', 0, '39.66330', '-75.85310'), ('Chesapeake City', 0, '39.52970', '-75.81070'), ('Conowingo', 0, '39.67780', '-76.15940'), ('Elkton', 0, '39.60000', '-75.82000'), ('Fair Hill', 0, '39.70220', '-75.86830'), ('Farmington', 0, '39.67860', '-76.03250'), ('Glen Westover', 0, '39.71360', '-75.79720'), ('Hollywood Beach', 0, '39.50220', '-75.90830'), ('Lombard', 0, '39.71860', '-75.94670'), ('North East', 0, '39.60020', '-75.94250'), ('Octoraro', 0, '39.65860', '-76.15500'), ('Perryville', 0, '39.57100', '-76.06880'), ('Pleasant Hill', 0, '39.67030', '-75.90250'), ('Port Deposit', 0, '39.60360', '-76.11580'), ('Richardsmere', 0, '39.68920', '-76.12670'), ('Rising Sun', 0, '39.69830', '-76.06060'), ('Rock Springs', 0, '39.71500', '-76.15890'), ('Warwick', 0, '39.41670', '-75.77860'), ('West Nottingham', 0, '39.66940', '-76.07670'), ('Woodlawn', 0, '39.63420', '-76.07610'), ('Zion', 0, '39.67560', '-75.96530')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDZ009': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Aspen Hill', 50228, '39.09210', '-77.07900'), ('Barnesville', 161, '39.21990', '-77.38110'), ('Bethesda', 55277, '38.98980', '-77.12030'), ('Boyds', 55419, '39.18360', '-77.31310'), ('Bradley Farms', 44822, '39.00670', '-77.19110'), ('Brookeville', 120, '39.17660', '-77.05740'), ('Burtonsville', 7305, '39.11120', '-76.93220'), ('Calverton', 12610, '39.05640', '-76.94820'), ('Chevy Chase', 9381, '38.99500', '-77.07310'), ('Clarksburg', 1834, '39.23860', '-77.27970'), ('Cloverly', 7835, '39.10280', '-76.97660'), ('Colesville', 19810, '39.08830', '-77.00710'), ('Congressional Manor', 44822, '38.99720', '-77.17310'), ('Damascus', 11430, '39.27770', '-77.20500'), ('Dawsonville', 5151, '39.12830', '-77.34330'), ('Dickerson', 161, '39.22000', '-77.42440'), ('Ednor', 3437, '39.13580', '-76.99530'), ('Fairland', 21738, '39.08220', '-76.95160'), ('Four Corners', 76540, '39.02030', '-77.01310'), ('Friendship', 11430, '39.30690', '-77.19750'), ('Gaithersburg', 52613, '39.14120', '-77.21660'), ('Garrett Park', 917, '39.03610', '-77.09460'), ('Germantown', 55419, '39.17820', '-77.26070'), ('Glen Echo', 242, '38.96740', '-77.14080'), ('Glenmont', 57694, '39.05780', '-77.05000'), ('Hillandale', 3054, '39.01960', '-76.97470'), ('Kensington', 1873, '39.02590', '-77.07320'), ('Laytonsville', 277, '39.20960', '-77.14160'), ('Montgomery Village', 38051, '39.18120', '-77.19360'), ('Norbeck', 7569, '39.11000', '-77.07610'), ('North Potomac', 23044, '39.09640', '-77.24500'), ('Olney', 31438, '39.14920', '-77.08220'), ('Poolesville', 5151, '39.14480', '-77.41000'), ('Potomac', 44822, '39.02580', '-77.19770'), ('Rockville', 47388, '39.08120', '-77.15390'), ('Silver Spring', 76540, '39.00000', '-77.05000'), ('Somerset', 1124, '38.96580', '-77.09540'), ('Takoma Park', 17299, '38.98210', '-77.00280'), ('White Oak', 20973, '39.04200', '-76.98860')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDZ010': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Clarksville', 88254, '39.20640', '-76.94330'), ('Columbia', 88254, '39.20300', '-76.85800'), ('Dayton', 3437, '39.23920', '-76.98690'), ('Elkridge', 22042, '39.20190', '-76.75050'), ('Ellicott City', 56397, '39.27210', '-76.83460'), ('Fulton', 7305, '39.15080', '-76.92330'), ('Glenelg', 4197, '39.26420', '-76.99280'), ('Glenwood', 4197, '39.28750', '-77.02830'), ('Highland', 3437, '39.17890', '-76.95780'), ('Lisbon', 6425, '39.33610', '-77.07140'), ('Marriottsville', 2078, '39.35000', '-76.89970'), ('Poplar Springs', 6425, '39.34330', '-77.09670'), ('Roxbury Mills', 120, '39.25810', '-77.05360'), ('Scaggsville', 20468, '39.14500', '-76.90060'), ('Simpsonville', 88254, '39.18670', '-76.88220'), ('Watersville', 6425, '39.36750', '-77.10390'), ('West Friendship', 4197, '39.30250', '-76.95310'), ('Woodstock', 56397, '39.32860', '-76.87220')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDZ011': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Arbutus', 20116, '39.24260', '-76.69230'), ('Baltimore', 651154, '39.30080', '-76.61060'), ('Baltimore Martin S', 23958, '39.33000', '-76.42000'), ('Bowleys Quarters', 6314, '39.31230', '-76.38230'), ('Carney', 28264, '39.40440', '-76.52270'), ('Catonsville', 39820, '39.26450', '-76.74170'), ('Chase', 6314, '39.36330', '-76.37140'), ('Dundalk', 62306, '39.26860', '-76.49740'), ('Edgemere', 9248, '39.22290', '-76.45970'), ('Essex', 39078, '39.30270', '-76.44600'), ('Fells Point', 651154, '39.26470', '-76.56500'), ('Fort Howard', 0, '39.20720', '-76.44530'), ('Fullerton', 12148, '39.37170', '-76.51140'), ('Gunpowder', 11391, '39.41470', '-76.38810'), ('Hamilton', 12148, '39.34080', '-76.55190'), ('Hampton', 5004, '39.41830', '-76.57280'), ('Highlandtown', 62306, '39.28690', '-76.54890'), ('Lochearn', 25269, '39.34730', '-76.73080'), ('McDonogh', 7969, '39.39110', '-76.76470'), ('Middle River', 23958, '39.33400', '-76.43400'), ('Milford Mill', 26527, '39.34770', '-76.77030'), ('Owings Mills', 20193, '39.41130', '-76.79320'), ('Park Heights', 651154, '39.33690', '-76.60780'), ('Parkville', 31118, '39.38400', '-76.55180'), ('Perry Hall', 28705, '39.40660', '-76.47860'), ('Pikesville', 29123, '39.39140', '-76.70070'), ('Randallstown', 30870, '39.37170', '-76.80220'), ('Rosedale', 19199, '39.32760', '-76.50840'), ('Rossville', 11515, '39.35480', '-76.48080'), ('Towson', 51793, '39.39500', '-76.62130'), ('White Marsh', 8485, '39.38350', '-76.45860'), ('Woodlawn', 36079, '39.30670', '-76.74780')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDZ011': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Arbutus', 20116, '39.24260', '-76.69230'), ('Baltimore', 651154, '39.30080', '-76.61060'), ('Baltimore Martin S', 23958, '39.33000', '-76.42000'), ('Bowleys Quarters', 6314, '39.31230', '-76.38230'), ('Carney', 28264, '39.40440', '-76.52270'), ('Catonsville', 39820, '39.26450', '-76.74170'), ('Chase', 6314, '39.36330', '-76.37140'), ('Dundalk', 62306, '39.26860', '-76.49740'), ('Edgemere', 9248, '39.22290', '-76.45970'), ('Essex', 39078, '39.30270', '-76.44600'), ('Fells Point', 651154, '39.26470', '-76.56500'), ('Fort Howard', 0, '39.20720', '-76.44530'), ('Fullerton', 12148, '39.37170', '-76.51140'), ('Gunpowder', 11391, '39.41470', '-76.38810'), ('Hamilton', 12148, '39.34080', '-76.55190'), ('Hampton', 5004, '39.41830', '-76.57280'), ('Highlandtown', 62306, '39.28690', '-76.54890'), ('Lochearn', 25269, '39.34730', '-76.73080'), ('McDonogh', 7969, '39.39110', '-76.76470'), ('Middle River', 23958, '39.33400', '-76.43400'), ('Milford Mill', 26527, '39.34770', '-76.77030'), ('Owings Mills', 20193, '39.41130', '-76.79320'), ('Park Heights', 651154, '39.33690', '-76.60780'), ('Parkville', 31118, '39.38400', '-76.55180'), ('Perry Hall', 28705, '39.40660', '-76.47860'), ('Pikesville', 29123, '39.39140', '-76.70070'), ('Randallstown', 30870, '39.37170', '-76.80220'), ('Rosedale', 19199, '39.32760', '-76.50840'), ('Rossville', 11515, '39.35480', '-76.48080'), ('Towson', 51793, '39.39500', '-76.62130'), ('White Marsh', 8485, '39.38350', '-76.45860'), ('Woodlawn', 36079, '39.30670', '-76.74780')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'MDZ012': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Betterton', 0, '39.36700', '-76.07250'), ('Chestertown', 0, '39.21920', '-76.07050'), ('Galena', 0, '39.34330', '-75.87920'), ('Kennedyville', 0, '39.30530', '-75.99530'), ('Langford', 0, '39.18830', '-76.14110'), ('Massey', 0, '39.30970', '-75.82560'), ('Millington', 0, '39.25810', '-75.83750'), ('Morgnec', 0, '39.25360', '-76.00080'), ('Newtown', 0, '39.30420', '-76.14830'), ('Old Town', 0, '39.14190', '-76.10640'), ('Overton', 0, '39.03280', '-76.21030'), ('Rock Hall', 0, '39.14050', '-76.24090'), ('Sassafras', 0, '39.37310', '-75.80280')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDZ012': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Betterton', 0, '39.36700', '-76.07250'), ('Chestertown', 0, '39.21920', '-76.07050'), ('Galena', 0, '39.34330', '-75.87920'), ('Kennedyville', 0, '39.30530', '-75.99530'), ('Langford', 0, '39.18830', '-76.14110'), ('Massey', 0, '39.30970', '-75.82560'), ('Millington', 0, '39.25810', '-75.83750'), ('Morgnec', 0, '39.25360', '-76.00080'), ('Newtown', 0, '39.30420', '-76.14830'), ('Old Town', 0, '39.14190', '-76.10640'), ('Overton', 0, '39.03280', '-76.21030'), ('Rock Hall', 0, '39.14050', '-76.24090'), ('Sassafras', 0, '39.37310', '-75.80280')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDZ013': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Accokeek', 7349, '38.67600', '-77.01630'), ('Adelphi', 14998, '39.00190', '-76.96550'), ('Andrews AFB', 7925, '38.80340', '-76.87180'), ('Baden', 1410, '38.65920', '-76.77810'), ('Beltsville', 15690, '39.03680', '-76.92350'), ('Bladensburg', 7661, '38.94360', '-76.92620'), ('Bowie', 50269, '38.95950', '-76.73770'), ('Brandywine', 1410, '38.69850', '-76.85430'), ('Brentwood', 2844, '38.94360', '-76.95710'), ('Camp Springs', 17968, '38.80360', '-76.92080'), ('Capitol Heights', 4138, '38.87790', '-76.90810'), ('Cheltenham', 12322, '38.73560', '-76.82670'), ('Cheverly', 6433, '38.92580', '-76.91390'), ('Clinton', 26064, '38.76440', '-76.89800'), ('College Park', 24657, '38.99610', '-76.93480'), ('Coral Hills', 10720, '38.87170', '-76.92350'), ('Eagle Harbor', 55, '38.56640', '-76.68700'), ('Forestville', 12707, '38.84970', '-76.87480'), ('Friendly', 10938, '38.75640', '-76.96580'), ('Glenarden', 6318, '38.93080', '-76.86290'), ('Glenn Dale', 12609, '38.98690', '-76.80090'), ('Greenbelt', 21456, '38.99480', '-76.88570'), ('Hyattsville', 14733, '38.95920', '-76.95340'), ('Kettering', 11008, '38.89010', '-76.78560'), ('Landover', 5052, '38.93610', '-76.90150'), ('Langley Park', 16214, '38.99390', '-76.98210'), ('Largo', 8408, '38.87950', '-76.83020'), ('Laurel', 19960, '39.09770', '-76.85860'), ('Marlow Heights', 6059, '38.82460', '-76.94960'), ('Marlton', 7798, '38.75810', '-76.78990'), ('Mitchellville', 9611, '38.92920', '-76.82330'), ('Montpelier', 20479, '39.06140', '-76.85110'), ('Morningside', 1295, '38.82940', '-76.89070'), ('New Carrollton', 12589, '38.96630', '-76.87690'), ('Oxon Hill', 2585, '38.80330', '-76.99000'), ('Seat Pleasant', 4885, '38.89520', '-76.90250'), ('Suitland-Silver Hill', 33515, '38.84560', '-76.92280'), ('Tantallon', 23845, '38.72390', '-77.01000'), ('Upper Marlboro', 648, '38.81760', '-76.75540'), ('Woodmore', 6077, '38.93480', '-76.77500')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDZ013': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Accokeek', 7349, '38.67600', '-77.01630'), ('Adelphi', 14998, '39.00190', '-76.96550'), ('Andrews AFB', 7925, '38.80340', '-76.87180'), ('Baden', 1410, '38.65920', '-76.77810'), ('Beltsville', 15690, '39.03680', '-76.92350'), ('Bladensburg', 7661, '38.94360', '-76.92620'), ('Bowie', 50269, '38.95950', '-76.73770'), ('Brandywine', 1410, '38.69850', '-76.85430'), ('Brentwood', 2844, '38.94360', '-76.95710'), ('Camp Springs', 17968, '38.80360', '-76.92080'), ('Capitol Heights', 4138, '38.87790', '-76.90810'), ('Cheltenham', 12322, '38.73560', '-76.82670'), ('Cheverly', 6433, '38.92580', '-76.91390'), ('Clinton', 26064, '38.76440', '-76.89800'), ('College Park', 24657, '38.99610', '-76.93480'), ('Coral Hills', 10720, '38.87170', '-76.92350'), ('Eagle Harbor', 55, '38.56640', '-76.68700'), ('Forestville', 12707, '38.84970', '-76.87480'), ('Friendly', 10938, '38.75640', '-76.96580'), ('Glenarden', 6318, '38.93080', '-76.86290'), ('Glenn Dale', 12609, '38.98690', '-76.80090'), ('Greenbelt', 21456, '38.99480', '-76.88570'), ('Hyattsville', 14733, '38.95920', '-76.95340'), ('Kettering', 11008, '38.89010', '-76.78560'), ('Landover', 5052, '38.93610', '-76.90150'), ('Langley Park', 16214, '38.99390', '-76.98210'), ('Largo', 8408, '38.87950', '-76.83020'), ('Laurel', 19960, '39.09770', '-76.85860'), ('Marlow Heights', 6059, '38.82460', '-76.94960'), ('Marlton', 7798, '38.75810', '-76.78990'), ('Mitchellville', 9611, '38.92920', '-76.82330'), ('Montpelier', 20479, '39.06140', '-76.85110'), ('Morningside', 1295, '38.82940', '-76.89070'), ('New Carrollton', 12589, '38.96630', '-76.87690'), ('Oxon Hill', 2585, '38.80330', '-76.99000'), ('Seat Pleasant', 4885, '38.89520', '-76.90250'), ('Suitland-Silver Hill', 33515, '38.84560', '-76.92280'), ('Tantallon', 23845, '38.72390', '-77.01000'), ('Upper Marlboro', 648, '38.81760', '-76.75540'), ('Woodmore', 6077, '38.93480', '-76.77500')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDZ014': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Annapolis', 35838, '38.97160', '-76.50300'), ('Arnold', 23422, '39.04270', '-76.49940'), ('Bay Ridge', 109, '38.93780', '-76.46030'), ('Belvedere Heights', 23422, '39.05580', '-76.50250'), ('Benfield', 1971, '39.08860', '-76.62250'), ('Brooklyn Park', 10938, '39.21700', '-76.61050'), ('(BWII)Baltmore-Washington Arpt', 0, '39.17000', '-76.67000'), ('Cape Arthur', 12093, '39.07890', '-76.52500'), ('Cape St. Claire', 8022, '39.04430', '-76.44590'), ('Chelsea Beach', 12093, '39.10190', '-76.52030'), ('Crofton', 20091, '39.01100', '-76.68730'), ('Crownsville', 1670, '39.01680', '-76.59550'), ('Deale', 4796, '38.79320', '-76.54660'), ('Ferndale', 16056, '39.18650', '-76.63440'), ('Fort Meade', 9882, '39.10810', '-76.74200'), ('Galesville', 5559, '38.84310', '-76.54390'), ('Gibson Island', 8022, '39.07420', '-76.42420'), ('Glen Burnie', 38922, '39.16640', '-76.60240'), ('Green Haven', 17415, '39.13670', '-76.54010'), ('Herald Harbor', 2313, '39.05040', '-76.57420'), ('Highland Beach', 0, '38.93180', '-76.46680'), ('Hillsmere Shores', 2977, '38.93190', '-76.49710'), ('Jessup', 7865, '39.14610', '-76.77300'), ('Lake Shore', 13065, '39.09760', '-76.48560'), ('Linthicum', 7539, '39.20540', '-76.66600'), ('Londontowne', 7595, '38.93570', '-76.55800'), ('Mayo', 3153, '38.89170', '-76.50040'), ('Millersville', 20534, '39.05940', '-76.64830'), ('Odenton', 20534, '39.06120', '-76.69580'), ('Parole', 14031, '38.98410', '-76.55310'), ('Pasadena', 12093, '39.11210', '-76.55240'), ('Pumphrey', 5317, '39.21800', '-76.64290'), ('Ridgeway', 35076, '39.11470', '-76.68390'), ('Riva', 3966, '38.94600', '-76.58960'), ('Severn', 35076, '39.13520', '-76.69160'), ('Severna Park', 28507, '39.08190', '-76.57250'), ('Shady Side', 5559, '38.83010', '-76.52450'), ('South Gate', 28672, '39.12890', '-76.62600')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDZ014': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Annapolis', 35838, '38.97160', '-76.50300'), ('Arnold', 23422, '39.04270', '-76.49940'), ('Bay Ridge', 109, '38.93780', '-76.46030'), ('Belvedere Heights', 23422, '39.05580', '-76.50250'), ('Benfield', 1971, '39.08860', '-76.62250'), ('Brooklyn Park', 10938, '39.21700', '-76.61050'), ('(BWII)Baltmore-Washington Arpt', 0, '39.17000', '-76.67000'), ('Cape Arthur', 12093, '39.07890', '-76.52500'), ('Cape St. Claire', 8022, '39.04430', '-76.44590'), ('Chelsea Beach', 12093, '39.10190', '-76.52030'), ('Crofton', 20091, '39.01100', '-76.68730'), ('Crownsville', 1670, '39.01680', '-76.59550'), ('Deale', 4796, '38.79320', '-76.54660'), ('Ferndale', 16056, '39.18650', '-76.63440'), ('Fort Meade', 9882, '39.10810', '-76.74200'), ('Galesville', 5559, '38.84310', '-76.54390'), ('Gibson Island', 8022, '39.07420', '-76.42420'), ('Glen Burnie', 38922, '39.16640', '-76.60240'), ('Green Haven', 17415, '39.13670', '-76.54010'), ('Herald Harbor', 2313, '39.05040', '-76.57420'), ('Highland Beach', 0, '38.93180', '-76.46680'), ('Hillsmere Shores', 2977, '38.93190', '-76.49710'), ('Jessup', 7865, '39.14610', '-76.77300'), ('Lake Shore', 13065, '39.09760', '-76.48560'), ('Linthicum', 7539, '39.20540', '-76.66600'), ('Londontowne', 7595, '38.93570', '-76.55800'), ('Mayo', 3153, '38.89170', '-76.50040'), ('Millersville', 20534, '39.05940', '-76.64830'), ('Odenton', 20534, '39.06120', '-76.69580'), ('Parole', 14031, '38.98410', '-76.55310'), ('Pasadena', 12093, '39.11210', '-76.55240'), ('Pumphrey', 5317, '39.21800', '-76.64290'), ('Ridgeway', 35076, '39.11470', '-76.68390'), ('Riva', 3966, '38.94600', '-76.58960'), ('Severn', 35076, '39.13520', '-76.69160'), ('Severna Park', 28507, '39.08190', '-76.57250'), ('Shady Side', 5559, '38.83010', '-76.52450'), ('South Gate', 28672, '39.12890', '-76.62600')], 'partOfState': 'central', 'wfo': 'LWX'}, +'MDZ015': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Barclay', 0, '39.14380', '-75.86420'), ('Carville', 0, '39.04920', '-76.00420'), ('Centreville', 0, '39.04350', '-76.06530'), ('Chester', 0, '38.97000', '-76.29000'), ('Chester', 0, '38.97000', '-76.29000'), ('Church Hill', 0, '39.14360', '-75.98070'), ('Crumpton', 0, '39.24140', '-75.92190'), ('Grasonville', 0, '38.95820', '-76.21020'), ('Grasonville', 0, '38.95800', '-76.19420'), ('Hope', 0, '39.04190', '-75.96970'), ('Kent Point', 0, '38.83680', '-76.36920'), ('Kent Point', 0, '38.83680', '-76.36920'), ('Kingstown', 0, '39.20620', '-76.04810'), ('Queen Anne', 0, '38.92080', '-75.95560'), ('Queenstown', 0, '38.98990', '-76.15590'), ('Romancoke', 0, '38.88110', '-76.33640'), ('Romancoke', 0, '38.88110', '-76.33640'), ('Starkey Corner', 0, '39.12050', '-76.01470'), ('Starr', 0, '38.97810', '-76.01060'), ('Stevensville', 0, '38.99390', '-76.30890'), ('Stevensville', 0, '38.99390', '-76.30890'), ('Stevensville South', 0, '38.96020', '-76.32930'), ('Stevensville South', 0, '38.96020', '-76.32930'), ('Sudlersville', 0, '39.18620', '-75.85850')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDZ015': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Barclay', 0, '39.14380', '-75.86420'), ('Carville', 0, '39.04920', '-76.00420'), ('Centreville', 0, '39.04350', '-76.06530'), ('Chester', 0, '38.97000', '-76.29000'), ('Chester', 0, '38.97000', '-76.29000'), ('Church Hill', 0, '39.14360', '-75.98070'), ('Crumpton', 0, '39.24140', '-75.92190'), ('Grasonville', 0, '38.95820', '-76.21020'), ('Grasonville', 0, '38.95800', '-76.19420'), ('Hope', 0, '39.04190', '-75.96970'), ('Kent Point', 0, '38.83680', '-76.36920'), ('Kent Point', 0, '38.83680', '-76.36920'), ('Kingstown', 0, '39.20620', '-76.04810'), ('Queen Anne', 0, '38.92080', '-75.95560'), ('Queenstown', 0, '38.98990', '-76.15590'), ('Romancoke', 0, '38.88110', '-76.33640'), ('Romancoke', 0, '38.88110', '-76.33640'), ('Starkey Corner', 0, '39.12050', '-76.01470'), ('Starr', 0, '38.97810', '-76.01060'), ('Stevensville', 0, '38.99390', '-76.30890'), ('Stevensville', 0, '38.99390', '-76.30890'), ('Stevensville South', 0, '38.96020', '-76.32930'), ('Stevensville South', 0, '38.96020', '-76.32930'), ('Sudlersville', 0, '39.18620', '-75.85850')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'MDZ016': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Bel Alton', 15, '38.46390', '-76.98310'), ('Benedict', 2665, '38.50920', '-76.68000'), ('Bryantown', 1537, '38.55500', '-76.84220'), ('Dentsville', 6551, '38.48170', '-76.89280'), ('Faulkner', 15, '38.43890', '-76.97860'), ('Hughesville', 1537, '38.53870', '-76.78370'), ('Indian Head', 3422, '38.59850', '-77.15790'), ('Ironsides', 1244, '38.49170', '-77.16000'), ('La Plata', 6551, '38.53410', '-76.97050'), ('Marbury', 1244, '38.55610', '-77.15850'), ('Nanjemoy', 670, '38.45470', '-77.21720'), ('Port Tobacco Village', 15, '38.51140', '-77.02040'), ('Potomac Heights', 1154, '38.60760', '-77.12280'), ('Ripley', 15, '38.54470', '-77.07860'), ('St. Charles', 33379, '38.60570', '-76.92320'), ('Tompkinsville', 3132, '38.32170', '-76.89280'), ('Waldorf', 22312, '38.64190', '-76.90450'), ('White Plains', 3560, '38.59440', '-76.97640'), ('Wicomico', 1214, '38.41330', '-76.87690')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDZ016': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Bel Alton', 15, '38.46390', '-76.98310'), ('Benedict', 2665, '38.50920', '-76.68000'), ('Bryantown', 1537, '38.55500', '-76.84220'), ('Dentsville', 6551, '38.48170', '-76.89280'), ('Faulkner', 15, '38.43890', '-76.97860'), ('Hughesville', 1537, '38.53870', '-76.78370'), ('Indian Head', 3422, '38.59850', '-77.15790'), ('Ironsides', 1244, '38.49170', '-77.16000'), ('La Plata', 6551, '38.53410', '-76.97050'), ('Marbury', 1244, '38.55610', '-77.15850'), ('Nanjemoy', 670, '38.45470', '-77.21720'), ('Port Tobacco Village', 15, '38.51140', '-77.02040'), ('Potomac Heights', 1154, '38.60760', '-77.12280'), ('Ripley', 15, '38.54470', '-77.07860'), ('St. Charles', 33379, '38.60570', '-76.92320'), ('Tompkinsville', 3132, '38.32170', '-76.89280'), ('Waldorf', 22312, '38.64190', '-76.90450'), ('White Plains', 3560, '38.59440', '-76.97640'), ('Wicomico', 1214, '38.41330', '-76.87690')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDZ017': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('California', 9307, '38.29610', '-76.49620'), ('Callaway', 9307, '38.23830', '-76.51940'), ('Chaptico', 0, '38.36750', '-76.78330'), ('Charlotte Hall', 1214, '38.47820', '-76.78950'), ('Clements', 1896, '38.32610', '-76.72750'), ('Dameron', 11021, '38.15220', '-76.36970'), ('Golden Beach', 2665, '38.48730', '-76.69320'), ('Hillville', 1896, '38.37250', '-76.60280'), ('Hollywood', 1896, '38.34580', '-76.57190'), ('Leonardtown', 1896, '38.29960', '-76.64170'), ('Lexington Park', 11021, '38.26040', '-76.44590'), ('Mechanicsville', 0, '38.43000', '-76.73000'), ('Morganza', 0, '38.37530', '-76.69580'), ('Oakley', 1896, '38.27280', '-76.74000'), ('Patuxent River NAS', 0, '38.28000', '-76.43000'), ('Piney Point', 11021, '38.14220', '-76.50780'), ('Redgate', 1896, '38.25640', '-76.59890'), ('Ridge', 11021, '38.11920', '-76.37420'), ('Sandgates', 2665, '38.41280', '-76.61560'), ('Sotterley', 9307, '38.37830', '-76.53330'), ('Tintop Hill', 1896, '38.32220', '-76.61890')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDZ017': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('California', 9307, '38.29610', '-76.49620'), ('Callaway', 9307, '38.23830', '-76.51940'), ('Chaptico', 0, '38.36750', '-76.78330'), ('Charlotte Hall', 1214, '38.47820', '-76.78950'), ('Clements', 1896, '38.32610', '-76.72750'), ('Dameron', 11021, '38.15220', '-76.36970'), ('Golden Beach', 2665, '38.48730', '-76.69320'), ('Hillville', 1896, '38.37250', '-76.60280'), ('Hollywood', 1896, '38.34580', '-76.57190'), ('Leonardtown', 1896, '38.29960', '-76.64170'), ('Lexington Park', 11021, '38.26040', '-76.44590'), ('Mechanicsville', 0, '38.43000', '-76.73000'), ('Morganza', 0, '38.37530', '-76.69580'), ('Oakley', 1896, '38.27280', '-76.74000'), ('Patuxent River NAS', 0, '38.28000', '-76.43000'), ('Piney Point', 11021, '38.14220', '-76.50780'), ('Redgate', 1896, '38.25640', '-76.59890'), ('Ridge', 11021, '38.11920', '-76.37420'), ('Sandgates', 2665, '38.41280', '-76.61560'), ('Sotterley', 9307, '38.37830', '-76.53330'), ('Tintop Hill', 1896, '38.32220', '-76.61890')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDZ017': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('California', 9307, '38.29610', '-76.49620'), ('Callaway', 9307, '38.23830', '-76.51940'), ('Chaptico', 0, '38.36750', '-76.78330'), ('Charlotte Hall', 1214, '38.47820', '-76.78950'), ('Clements', 1896, '38.32610', '-76.72750'), ('Dameron', 11021, '38.15220', '-76.36970'), ('Golden Beach', 2665, '38.48730', '-76.69320'), ('Hillville', 1896, '38.37250', '-76.60280'), ('Hollywood', 1896, '38.34580', '-76.57190'), ('Leonardtown', 1896, '38.29960', '-76.64170'), ('Lexington Park', 11021, '38.26040', '-76.44590'), ('Mechanicsville', 0, '38.43000', '-76.73000'), ('Morganza', 0, '38.37530', '-76.69580'), ('Oakley', 1896, '38.27280', '-76.74000'), ('Patuxent River NAS', 0, '38.28000', '-76.43000'), ('Piney Point', 11021, '38.14220', '-76.50780'), ('Redgate', 1896, '38.25640', '-76.59890'), ('Ridge', 11021, '38.11920', '-76.37420'), ('Sandgates', 2665, '38.41280', '-76.61560'), ('Sotterley', 9307, '38.37830', '-76.53330'), ('Tintop Hill', 1896, '38.32220', '-76.61890')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDZ018': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Broomes Island', 2487, '38.41810', '-76.54440'), ('Chesapeake Beach', 3180, '38.68730', '-76.53590'), ('Cove Point', 5423, '38.38110', '-76.38920'), ('Dares Beach', 1432, '38.56170', '-76.51580'), ('Drum Point', 5423, '38.32670', '-76.42640'), ('Dunkirk', 1880, '38.72170', '-76.66080'), ('Huntingtown', 1432, '38.61580', '-76.61330'), ('Long Beach', 2487, '38.46080', '-76.46920'), ('Lower Marlboro', 55, '38.65580', '-76.68220'), ('Lusby', 1666, '38.41060', '-76.45560'), ('Mount Harmony', 3180, '38.69830', '-76.60440'), ('North Beach', 1880, '38.70870', '-76.53470'), ('Prince Frederick', 1432, '38.54860', '-76.58910'), ('Saint Leonard', 536, '38.47420', '-76.50670')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDZ018': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Broomes Island', 2487, '38.41810', '-76.54440'), ('Chesapeake Beach', 3180, '38.68730', '-76.53590'), ('Cove Point', 5423, '38.38110', '-76.38920'), ('Dares Beach', 1432, '38.56170', '-76.51580'), ('Drum Point', 5423, '38.32670', '-76.42640'), ('Dunkirk', 1880, '38.72170', '-76.66080'), ('Huntingtown', 1432, '38.61580', '-76.61330'), ('Long Beach', 2487, '38.46080', '-76.46920'), ('Lower Marlboro', 55, '38.65580', '-76.68220'), ('Lusby', 1666, '38.41060', '-76.45560'), ('Mount Harmony', 3180, '38.69830', '-76.60440'), ('North Beach', 1880, '38.70870', '-76.53470'), ('Prince Frederick', 1432, '38.54860', '-76.58910'), ('Saint Leonard', 536, '38.47420', '-76.50670')], 'partOfState': 'southern', 'wfo': 'LWX'}, +'MDZ019': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Copperville', 0, '38.82470', '-76.17110'), ('Cordova', 0, '38.88000', '-75.99000'), ('Easton', 0, '38.77000', '-76.07000'), ('Hambleton', 0, '38.69500', '-76.06470'), ('Matthews', 0, '38.81610', '-75.95310'), ('Oxford', 0, '38.68930', '-76.17080'), ('Skipton', 0, '38.89530', '-76.05920'), ('St. Michaels', 0, '38.78840', '-76.22220'), ('Talbot', 0, '38.81750', '-76.27830'), ('Tilghman Island', 0, '38.75000', '-76.33000'), ('Trappe', 0, '38.65980', '-76.05840'), ('Windyhill', 0, '38.68140', '-75.97780'), ('Wye Mills', 0, '38.94110', '-76.08080')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'MDZ019': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Copperville', 0, '38.82470', '-76.17110'), ('Cordova', 0, '38.88000', '-75.99000'), ('Easton', 0, '38.77000', '-76.07000'), ('Hambleton', 0, '38.69500', '-76.06470'), ('Matthews', 0, '38.81610', '-75.95310'), ('Oxford', 0, '38.68930', '-76.17080'), ('Skipton', 0, '38.89530', '-76.05920'), ('St. Michaels', 0, '38.78840', '-76.22220'), ('Talbot', 0, '38.81750', '-76.27830'), ('Tilghman Island', 0, '38.75000', '-76.33000'), ('Trappe', 0, '38.65980', '-76.05840'), ('Windyhill', 0, '38.68140', '-75.97780'), ('Wye Mills', 0, '38.94110', '-76.08080')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'MDZ020': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Agner', 0, '38.75560', '-75.78970'), ('Choptank', 0, '38.68080', '-75.94860'), ('Denton', 0, '38.88230', '-75.82230'), ('Federalsburg', 0, '38.69100', '-75.77360'), ('Goldsboro', 0, '39.03540', '-75.78740'), ('Greensboro', 0, '38.97610', '-75.80680'), ('Griffin', 0, '38.86140', '-75.91420'), ('Harmony', 0, '38.77890', '-75.88080'), ('Henderson', 0, '39.07490', '-75.76710'), ('Jumptown', 0, '38.96110', '-75.91890'), ('Marydel', 0, '39.11390', '-75.74850'), ('Oakland', 0, '38.98860', '-75.87640'), ('Preston', 0, '38.71080', '-75.90860'), ('Ridgely', 0, '38.94750', '-75.88530'), ('Smithville', 0, '38.77390', '-75.73310'), ('Tanyard', 0, '38.75060', '-75.97690'), ('Templeville', 0, '39.13480', '-75.76800')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'MDZ021': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andrews', 85, '38.35690', '-76.11050'), ('Brookview', 65, '38.57440', '-75.79510'), ('Bucktown', 10911, '38.45910', '-76.03140'), ('Cambridge', 10911, '38.56180', '-76.07780'), ('Church Creek', 85, '38.50530', '-76.15470'), ('Crocheron', 85, '38.24270', '-76.05290'), ('East New Market', 167, '38.59910', '-75.92390'), ('Eldorado', 60, '38.58250', '-75.79080'), ('Elliott', 85, '38.30900', '-76.00400'), ('Galestown', 101, '38.56200', '-75.71690'), ('Honga', 85, '38.34000', '-76.22500'), ('Hoopersville', 85, '38.26170', '-76.18130'), ('Hudson', 771, '38.59220', '-76.25530'), ('Hurlock', 1874, '38.62910', '-75.87100'), ('Linkwood', 167, '38.54060', '-75.94610'), ('Lloyds', 85, '38.59000', '-76.18260'), ('Madison', 85, '38.50730', '-76.22100'), ('Secretary', 503, '38.60740', '-75.94750'), ('Taylors Island', 85, '38.46700', '-76.30290'), ('Vienna', 280, '38.48500', '-75.82740'), ('Wingate', 85, '38.28130', '-76.08140'), ('Woolford', 85, '38.50440', '-76.18110')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ021': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Andrews', 85, '38.35690', '-76.11050'), ('Brookview', 65, '38.57440', '-75.79510'), ('Bucktown', 10911, '38.45910', '-76.03140'), ('Cambridge', 10911, '38.56180', '-76.07780'), ('Church Creek', 85, '38.50530', '-76.15470'), ('Crocheron', 85, '38.24270', '-76.05290'), ('East New Market', 167, '38.59910', '-75.92390'), ('Eldorado', 60, '38.58250', '-75.79080'), ('Elliott', 85, '38.30900', '-76.00400'), ('Galestown', 101, '38.56200', '-75.71690'), ('Honga', 85, '38.34000', '-76.22500'), ('Hoopersville', 85, '38.26170', '-76.18130'), ('Hudson', 771, '38.59220', '-76.25530'), ('Hurlock', 1874, '38.62910', '-75.87100'), ('Linkwood', 167, '38.54060', '-75.94610'), ('Lloyds', 85, '38.59000', '-76.18260'), ('Madison', 85, '38.50730', '-76.22100'), ('Secretary', 503, '38.60740', '-75.94750'), ('Taylors Island', 85, '38.46700', '-76.30290'), ('Vienna', 280, '38.48500', '-75.82740'), ('Wingate', 85, '38.28130', '-76.08140'), ('Woolford', 85, '38.50440', '-76.18110')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ022': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Allen', 3774, '38.28950', '-75.68870'), ('Bivalve', 280, '38.30630', '-75.88940'), ('Catchpenny', 807, '38.35530', '-75.72420'), ('Chesapeake Heights', 23743, '38.37667', '-75.54472'), ('Delmar', 1859, '38.45260', '-75.57480'), ('Fruitland', 3774, '38.32190', '-75.62630'), ('Green Hill', 2313, '38.31170', '-75.77850'), ('Hebron', 807, '38.41760', '-75.68800'), ('Lakewood', 3774, '38.32990', '-75.59750'), ('Mardela Springs', 364, '38.45820', '-75.75660'), ('Melson', 1182, '38.44180', '-75.47710'), ('Nanticoke', 2313, '38.27220', '-75.90580'), ('Parsonsburg', 1182, '38.38800', '-75.47050'), ('Pittsville', 1182, '38.39330', '-75.41320'), ('Powellville', 938, '38.32890', '-75.37580'), ('Royal Oak', 364, '38.34980', '-75.79350'), ('Salisbury', 23743, '38.37190', '-75.58900'), ('Salisbury-Wicomico', 23743, '38.33990', '-75.50940'), ('Shad Point', 3774, '38.33980', '-75.63250'), ('Sharptown', 649, '38.53920', '-75.72030'), ('Trinity', 2313, '38.29440', '-75.74960'), ('Tyaskin', 280, '38.32680', '-75.87520'), ('Waterview', 2313, '38.24600', '-75.90230'), ('Wetipquin', 280, '38.33710', '-75.84750'), ('Whitehaven', 2313, '38.26920', '-75.79050'), ('Willards', 938, '38.39190', '-75.34990')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ022': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Allen', 3774, '38.28950', '-75.68870'), ('Bivalve', 280, '38.30630', '-75.88940'), ('Catchpenny', 807, '38.35530', '-75.72420'), ('Chesapeake Heights', 23743, '38.37667', '-75.54472'), ('Delmar', 1859, '38.45260', '-75.57480'), ('Fruitland', 3774, '38.32190', '-75.62630'), ('Green Hill', 2313, '38.31170', '-75.77850'), ('Hebron', 807, '38.41760', '-75.68800'), ('Lakewood', 3774, '38.32990', '-75.59750'), ('Mardela Springs', 364, '38.45820', '-75.75660'), ('Melson', 1182, '38.44180', '-75.47710'), ('Nanticoke', 2313, '38.27220', '-75.90580'), ('Parsonsburg', 1182, '38.38800', '-75.47050'), ('Pittsville', 1182, '38.39330', '-75.41320'), ('Powellville', 938, '38.32890', '-75.37580'), ('Royal Oak', 364, '38.34980', '-75.79350'), ('Salisbury', 23743, '38.37190', '-75.58900'), ('Salisbury-Wicomico', 23743, '38.33990', '-75.50940'), ('Shad Point', 3774, '38.33980', '-75.63250'), ('Sharptown', 649, '38.53920', '-75.72030'), ('Trinity', 2313, '38.29440', '-75.74960'), ('Tyaskin', 280, '38.32680', '-75.87520'), ('Waterview', 2313, '38.24600', '-75.90230'), ('Wetipquin', 280, '38.33710', '-75.84750'), ('Whitehaven', 2313, '38.26920', '-75.79050'), ('Willards', 938, '38.39190', '-75.34990')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ023': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Byrdtown', 1326, '37.95950', '-75.83990'), ('Champ', 2313, '38.15390', '-75.80710'), ('Cokesbury', 4098, '38.12680', '-75.57900'), ('Crisfield', 2723, '37.97710', '-75.85930'), ('Dames Quarter', 188, '38.18850', '-75.89750'), ('Deal Island', 578, '38.15920', '-75.94880'), ('Eden', 793, '38.28120', '-75.65070'), ('Fairmount', 2723, '38.09010', '-75.81740'), ('Hopewell', 2723, '38.00690', '-75.81730'), ('Kingston', 2313, '38.07430', '-75.72850'), ('Lawsonia', 1326, '37.95750', '-75.84200'), ('Manokin', 2313, '38.11530', '-75.75600'), ('Marion Station', 367, '38.01631', '-75.73219'), ('Monie', 2313, '38.18610', '-75.81320'), ('Mount Vernon', 761, '38.24530', '-75.82180'), ('Oriole', 2313, '38.17440', '-75.80760'), ('Princess Anne', 2313, '38.20430', '-75.69540'), ('Rehobeth', 4098, '38.03930', '-75.66670'), ('Rumbley', 2723, '38.09190', '-75.84940'), ('Shelltown', 367, '37.98240', '-75.64400'), ('Upper Fairmount', 2313, '38.10420', '-75.79140'), ('Upper Hill', 2313, '38.11190', '-75.79000'), ('Westover', 2313, '38.12280', '-75.70690'), ('Widgeon', 2313, '38.25110', '-75.76940')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ023': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Byrdtown', 1326, '37.95950', '-75.83990'), ('Champ', 2313, '38.15390', '-75.80710'), ('Cokesbury', 4098, '38.12680', '-75.57900'), ('Crisfield', 2723, '37.97710', '-75.85930'), ('Dames Quarter', 188, '38.18850', '-75.89750'), ('Deal Island', 578, '38.15920', '-75.94880'), ('Eden', 793, '38.28120', '-75.65070'), ('Fairmount', 2723, '38.09010', '-75.81740'), ('Hopewell', 2723, '38.00690', '-75.81730'), ('Kingston', 2313, '38.07430', '-75.72850'), ('Lawsonia', 1326, '37.95750', '-75.84200'), ('Manokin', 2313, '38.11530', '-75.75600'), ('Marion Station', 367, '38.01631', '-75.73219'), ('Monie', 2313, '38.18610', '-75.81320'), ('Mount Vernon', 761, '38.24530', '-75.82180'), ('Oriole', 2313, '38.17440', '-75.80760'), ('Princess Anne', 2313, '38.20430', '-75.69540'), ('Rehobeth', 4098, '38.03930', '-75.66670'), ('Rumbley', 2723, '38.09190', '-75.84940'), ('Shelltown', 367, '37.98240', '-75.64400'), ('Upper Fairmount', 2313, '38.10420', '-75.79140'), ('Upper Hill', 2313, '38.11190', '-75.79000'), ('Westover', 2313, '38.12280', '-75.70690'), ('Widgeon', 2313, '38.25110', '-75.76940')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ023': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Byrdtown', 1326, '37.95950', '-75.83990'), ('Champ', 2313, '38.15390', '-75.80710'), ('Cokesbury', 4098, '38.12680', '-75.57900'), ('Crisfield', 2723, '37.97710', '-75.85930'), ('Dames Quarter', 188, '38.18850', '-75.89750'), ('Deal Island', 578, '38.15920', '-75.94880'), ('Eden', 793, '38.28120', '-75.65070'), ('Fairmount', 2723, '38.09010', '-75.81740'), ('Hopewell', 2723, '38.00690', '-75.81730'), ('Kingston', 2313, '38.07430', '-75.72850'), ('Lawsonia', 1326, '37.95750', '-75.84200'), ('Manokin', 2313, '38.11530', '-75.75600'), ('Marion Station', 367, '38.01631', '-75.73219'), ('Monie', 2313, '38.18610', '-75.81320'), ('Mount Vernon', 761, '38.24530', '-75.82180'), ('Oriole', 2313, '38.17440', '-75.80760'), ('Princess Anne', 2313, '38.20430', '-75.69540'), ('Rehobeth', 4098, '38.03930', '-75.66670'), ('Rumbley', 2723, '38.09190', '-75.84940'), ('Shelltown', 367, '37.98240', '-75.64400'), ('Upper Fairmount', 2313, '38.10420', '-75.79140'), ('Upper Hill', 2313, '38.11190', '-75.79000'), ('Westover', 2313, '38.12280', '-75.70690'), ('Widgeon', 2313, '38.25110', '-75.76940')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ024': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Beaver Dam', 4098, '38.01520', '-75.56080'), ('Berlin', 3491, '38.32520', '-75.21810'), ('Bishop', 1335, '38.42860', '-75.21950'), ('Bishopville', 1335, '38.44260', '-75.19380'), ('Boxiron', 2409, '38.11530', '-75.34920'), ('Cedartown', 2409, '38.19560', '-75.30120'), ('Girdletree', 2409, '38.09420', '-75.39760'), ('Goodwill', 4098, '38.07080', '-75.49140'), ('Ironshire', 3491, '38.28420', '-75.23140'), ('Longridge', 3774, '38.26670', '-75.51340'), ('Mount Wesley', 2409, '38.17160', '-75.34620'), ('Newark', 3491, '38.25080', '-75.29090'), ('Ocean Pines', 10496, '38.38310', '-75.14960'), ('Pocomoke City', 4098, '38.06710', '-75.56190'), ('Public Landing', 2409, '38.14910', '-75.28860'), ('Showell', 1335, '38.39970', '-75.21160'), ('Snow Hill', 2409, '38.17320', '-75.39160'), ('Stockton', 143, '38.05370', '-75.40990'), ('Whaleyville', 124, '38.40160', '-75.30370'), ('Whitesburg', 4098, '38.18570', '-75.53790'), ('Whiton', 938, '38.28930', '-75.37710')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ024': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Beaver Dam', 4098, '38.01520', '-75.56080'), ('Berlin', 3491, '38.32520', '-75.21810'), ('Bishop', 1335, '38.42860', '-75.21950'), ('Bishopville', 1335, '38.44260', '-75.19380'), ('Boxiron', 2409, '38.11530', '-75.34920'), ('Cedartown', 2409, '38.19560', '-75.30120'), ('Girdletree', 2409, '38.09420', '-75.39760'), ('Goodwill', 4098, '38.07080', '-75.49140'), ('Ironshire', 3491, '38.28420', '-75.23140'), ('Longridge', 3774, '38.26670', '-75.51340'), ('Mount Wesley', 2409, '38.17160', '-75.34620'), ('Newark', 3491, '38.25080', '-75.29090'), ('Ocean Pines', 10496, '38.38310', '-75.14960'), ('Pocomoke City', 4098, '38.06710', '-75.56190'), ('Public Landing', 2409, '38.14910', '-75.28860'), ('Showell', 1335, '38.39970', '-75.21160'), ('Snow Hill', 2409, '38.17320', '-75.39160'), ('Stockton', 143, '38.05370', '-75.40990'), ('Whaleyville', 124, '38.40160', '-75.30370'), ('Whitesburg', 4098, '38.18570', '-75.53790'), ('Whiton', 938, '38.28930', '-75.37710')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ025': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Cape Isle Of Wight', 3311, '38.35278', '-75.11833'), ('Ocean City', 7173, '38.35720', '-75.07400'), ('Ocean City Municipality', 3311, '38.31170', '-75.12380'), ('West Ocean City', 3311, '38.34530', '-75.10970')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'MDZ501': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Barton', 478, '39.53250', '-79.01700'), ('Dogwood Flats', 478, '39.52470', '-79.01690'), ('Frostburg', 7873, '39.65000', '-78.92900'), ('La Vale', 4613, '39.66340', '-78.81860'), ('Lonaconing', 1205, '39.56520', '-78.97990'), ('Luke', 80, '39.47560', '-79.06040'), ('Midland', 473, '39.58980', '-78.94900'), ('Mount Savage', 213, '39.69560', '-78.88000'), ('Reynolds', 2104, '39.50920', '-79.02810'), ('Westernport', 2104, '39.48890', '-79.04250'), ('Woodland', 473, '39.60830', '-78.95110')], 'partOfState': 'western', 'wfo': 'LWX'}, +'MDZ502': {'fullStateName': 'Maryland', 'state': 'MD', 'cities': [('Bellegrove', 0, '39.70670', '-78.33830'), ('Brady', 5884, '39.59220', '-78.82190'), ('Corriganville', 4613, '39.69280', '-78.79310'), ('Cumberland', 21518, '39.65110', '-78.76380'), ('Ellerslie', 21518, '39.72060', '-78.77440'), ('Flintstone', 0, '39.70310', '-78.56810'), ('Green Ridge', 538, '39.59360', '-78.42890'), ('Little Orleans', 538, '39.62580', '-78.38670'), ('McCoole', 5870, '39.44640', '-78.97250'), ('North Branch', 0, '39.58940', '-78.73250'), ('Oldtown', 0, '39.54140', '-78.61170'), ('Paw Paw', 0, '39.53000', '-78.47000'), ('Pleasant Valley', 0, '39.70970', '-78.64080'), ('Potomac Park', 779, '39.61170', '-78.80610'), ('Pumpkin Center', 0, '39.62170', '-78.56560'), ('Rawlings', 5884, '39.53440', '-78.88360'), ('Town Creek', 0, '39.52560', '-78.53920'), ('Wolfe Mill', 0, '39.67330', '-78.72500')], 'partOfState': 'western', 'wfo': 'LWX'}, +'MEZ001': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Allagash', 1978, '47.08330', '-69.04170'), ('Clayton Lake', 1319, '46.61080', '-69.52280'), ('Daigle', 1978, '47.18940', '-68.46140'), ('Deboullie Mountain', 1978, '46.97060', '-68.87640'), ('Dickey', 1978, '47.10950', '-69.08720'), ('Eagle Lake', 1978, '47.04000', '-68.59000'), ('Fort Kent', 1978, '47.25860', '-68.59000'), ('Frenchville', 3326, '47.28080', '-68.38030'), ('Grand Isle', 3326, '47.30530', '-68.15250'), ('Guerette', 3326, '47.12940', '-68.31780'), ('Madawaska', 3326, '47.35530', '-68.32220'), ('Nine-Mile Bridge', 1319, '46.70590', '-69.72360'), ('Saint Agatha', 3326, '47.24310', '-68.31420'), ('Saint Francis', 1978, '47.17110', '-68.89030'), ('Saint Pamphile', 1978, '46.92000', '-69.70940'), ('Soldier Pond', 1978, '47.15610', '-68.57640'), ('Wallagrass', 1978, '47.12940', '-68.59780'), ('Winterville', 1978, '46.97030', '-68.57170')], 'partOfState': 'northern', 'wfo': 'CAR'}, +'MEZ002': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Ashland', 9511, '46.63110', '-68.40670'), ('Blaine', 1428, '46.50470', '-67.86920'), ('Bridgewater', 1428, '46.42780', '-67.84390'), ('Caribou', 8312, '46.86060', '-68.01250'), ('Chapman', 9511, '46.64810', '-68.16140'), ('Easton', 9511, '46.64110', '-67.91000'), ('Fort Fairfield', 1600, '46.77220', '-67.83440'), ('Limestone', 1453, '46.90860', '-67.82640'), ('Loring', 7829, '46.94040', '-67.89480'), ('Mapleton', 9511, '46.68190', '-68.16330'), ('Mars Hill', 1428, '46.51580', '-67.86690'), ('Masardis', 9511, '46.50360', '-68.36170'), ('New Sweden', 8312, '46.94170', '-68.12110'), ('Oxbow', 9511, '46.41860', '-68.49060'), ('Perham', 8312, '46.84420', '-68.19780'), ('Portage', 9511, '46.76310', '-68.47640'), ('Presque Isle', 9511, '46.68110', '-68.01640'), ('Russel Crossing', 1978, '46.64000', '-68.74000'), ('Squa Pan', 9511, '46.56310', '-68.37860'), ('Stockholm', 2759, '47.04220', '-68.14000'), ('Washburn', 8312, '46.79000', '-68.15810'), ('Westfield', 1428, '46.57030', '-67.92310'), ('Woodland', 8312, '46.88530', '-68.14250')], 'partOfState': 'northern', 'wfo': 'CAR'}, +'MEZ003': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Baker Lake', 1319, '46.26470', '-69.91030'), ('Billy-Jack Depot', 1319, '46.24500', '-70.03670'), ('Comstock', 1319, '45.99170', '-70.02890')], 'partOfState': 'west central', 'wfo': 'CAR'}, +'MEZ004': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Baxter St Park', 5190, '46.02450', '-68.99500'), ('Caucomgomoc Lake', 1319, '46.19470', '-69.55920'), ('Chamberlain Lake', 1319, '46.27500', '-69.35170'), ('Chesuncook', 1319, '46.06030', '-69.41000'), ('Churchill Dam', 5190, '46.49250', '-69.28970'), ('Mount Katahdin', 5190, '45.90420', '-68.92280'), ('Ripogenus', 5190, '45.88140', '-69.17580'), ('Tamway', 1319, '46.32220', '-69.37700'), ('Telos Lake', 5190, '46.14690', '-69.12720')], 'partOfState': 'north central', 'wfo': 'CAR'}, +'MEZ005': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('East Millinocket', 1701, '45.62750', '-68.57500'), ('Grand Lake Matagamon', 5190, '46.16440', '-68.78690'), ('Grindstone', 1701, '45.73610', '-68.58720'), ('Medway', 1701, '45.60890', '-68.53140'), ('Millinocket', 5190, '45.65720', '-68.71030'), ('Moosehorn Crossing', 5190, '46.34830', '-68.76330'), ('Norcross', 5190, '45.62940', '-68.80310'), ('Patten', 1701, '45.99640', '-68.44670'), ('Sherman Station', 1701, '45.89920', '-68.43000'), ('Shin Pond', 5190, '46.10530', '-68.55720'), ('Stacyville', 1701, '45.86360', '-68.50580'), ('West Seboeis', 5190, '45.52920', '-68.87920')], 'partOfState': 'east central', 'wfo': 'CAR'}, +'MEZ006': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Bancroft', 5270, '45.67360', '-68.03140'), ('Benedicta', 1701, '45.80170', '-68.41220'), ('Cary', 5270, '45.99530', '-67.86250'), ('Crystal', 1701, '45.95920', '-68.36080'), ('Dudley', 5270, '46.17140', '-68.16030'), ('Dyer Brook', 5270, '46.08140', '-68.18390'), ('Haynesville', 5270, '45.82610', '-67.99170'), ('Hodgdon', 5270, '46.05390', '-67.86720'), ('Houlton', 5270, '46.12610', '-67.84080'), ('Island Falls', 5270, '46.00920', '-68.27190'), ('Linneus', 5270, '46.03860', '-67.96060'), ('Littleton', 5270, '46.23080', '-67.84170'), ('Ludlow', 5270, '46.14060', '-68.04060'), ('Macwahoc', 1701, '45.62830', '-68.26330'), ('Molunkus', 1701, '45.61530', '-68.30390'), ('Monarda', 1701, '45.79690', '-68.32440'), ('Monticello', 5270, '46.30830', '-67.84310'), ('New Limerick', 5270, '46.10110', '-67.96060'), ('North Amity', 5270, '45.94170', '-67.83080'), ('Oakfield', 5270, '46.09890', '-68.15060'), ('Orient', 5270, '45.81690', '-67.84060'), ('Reed', 1701, '45.72360', '-68.14280'), ('Sherman', 1701, '45.87110', '-68.41830'), ('Silver Ridge', 1701, '45.80640', '-68.32530'), ('Smyrna Mills', 5270, '46.12940', '-68.16470'), ('Wytopitlock', 1701, '45.64060', '-68.07610')], 'partOfState': 'northern', 'wfo': 'CAR'}, +'MEZ007': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Andover', 4795, '44.63560', '-70.75170'), ('Byron', 4795, '44.72190', '-70.63110'), ('Middle Dam', 4795, '44.78000', '-70.92280'), ('Roxbury', 4795, '44.66970', '-70.59390'), ('South Arm', 4795, '44.75530', '-70.84610'), ('Upton', 11824, '44.69420', '-71.01110'), ('Wilsons Mills', 11824, '44.93810', '-71.03580')], 'partOfState': 'western', 'wfo': 'GYX'}, +'MEZ008': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Avon', 4098, '44.80610', '-70.27170'), ('Carrabassett Valley', 856, '45.07780', '-70.21250'), ('Coburn Gore', 4795, '45.37920', '-70.80390'), ('Dallas', 1946, '44.99690', '-70.55640'), ('Davis', 4795, '45.08720', '-70.78610'), ('Eustis', 856, '45.21720', '-70.47890'), ('Kingfield', 4098, '44.95920', '-70.15440'), ('Madrid', 1946, '44.86440', '-70.46250'), ('Oquossoc', 4795, '44.96640', '-70.77420'), ('Phillips', 4098, '44.82310', '-70.34000'), ('Rangeley', 4795, '44.96640', '-70.64330'), ('Redington', 4098, '44.98440', '-70.43580'), ('Salem', 4098, '44.90060', '-70.27860'), ('Stratton', 4098, '45.14110', '-70.44110'), ('Strong', 4098, '44.80750', '-70.22140'), ('Tim Pond', 1946, '45.17030', '-70.62310'), ('Weld', 1137, '44.69860', '-70.42190')], 'partOfState': 'western', 'wfo': 'GYX'}, +'MEZ009': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Attean', 856, '45.57470', '-70.31860'), ('Bingham', 856, '45.05860', '-69.88280'), ('Brassua', 1319, '45.62670', '-69.91280'), ('Caratunk', 856, '45.23390', '-69.99060'), ('Flagstaff Lake', 856, '45.22780', '-70.20390'), ('Jackman', 856, '45.62390', '-70.25500'), ('Lake Moxie', 856, '45.35110', '-69.88470'), ('Long Pond', 1319, '45.62140', '-70.08690'), ('Mayfield', 856, '45.10360', '-69.69360'), ('Moosehead', 1319, '45.58330', '-69.71420'), ('Moscow', 856, '45.07060', '-69.89170'), ('New Portland', 4098, '44.88420', '-70.09720'), ('Pittston Farm', 1319, '45.89250', '-69.96530'), ('Seboomook', 1319, '45.88060', '-69.72560'), ('The Forks', 856, '45.33610', '-69.96780')], 'partOfState': 'west central', 'wfo': 'GYX'}, +'MEZ010': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Blanchard', 1319, '45.26750', '-69.58420'), ('Greenville', 1319, '45.45940', '-69.59110'), ('Katahdin Iron Works', 2592, '45.44330', '-69.17750'), ('Kokadjo', 1319, '45.67110', '-69.44750'), ('Lily Bay', 1319, '45.59780', '-69.54720'), ('Lobster Lake', 1319, '45.85310', '-69.52310'), ('Monson', 945, '45.28690', '-69.50170'), ('North East Carry', 1319, '45.86640', '-69.62690'), ('Onawa', 945, '45.36670', '-69.37220'), ('Rockwood', 1319, '45.67780', '-69.74140'), ('Shirley', 1319, '45.36560', '-69.61860'), ('Willimantic', 945, '45.30670', '-69.40890')], 'partOfState': 'north central', 'wfo': 'CAR'}, +'MEZ011': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Burlington', 2933, '45.20920', '-68.42720'), ('Carroll', 2933, '45.41440', '-68.03860'), ('Chester', 2933, '45.40860', '-68.50030'), ('Enfield', 1210, '45.24890', '-68.56890'), ('Howland', 1210, '45.23860', '-68.66420'), ('Kingman', 2933, '45.54940', '-68.20000'), ('Lagrange', 1898, '45.16670', '-68.84500'), ('Lee', 2933, '45.36000', '-68.28690'), ('Lincoln', 2933, '45.36220', '-68.50560'), ('Mattawamkeag', 2933, '45.51360', '-68.35500'), ('Passadumkeag', 1210, '45.18530', '-68.61720'), ('Seboeis', 1210, '45.36310', '-68.71170'), ('Springfield', 2933, '45.39610', '-68.13610'), ('Winn', 2933, '45.48560', '-68.37280')], 'partOfState': 'east central', 'wfo': 'CAR'}, +'MEZ012': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Bethel', 4795, '44.40420', '-70.79110'), ('Brownfield', 1549, '43.93810', '-70.90920'), ('Bryant Pond', 4795, '44.37830', '-70.64640'), ('Buckfield', 2237, '44.28940', '-70.36580'), ('Canton', 1399, '44.44060', '-70.31580'), ('Denmark', 2359, '43.97030', '-70.80390'), ('Dixfield', 1137, '44.53390', '-70.45920'), ('Fryeburg', 1549, '44.01640', '-70.98110'), ('Gilead', 1910, '44.39420', '-70.97330'), ('Greenwood', 2623, '44.31830', '-70.65140'), ('Hanover', 4795, '44.49670', '-70.69470'), ('Hartford', 1626, '44.37280', '-70.34720'), ('Hebron', 2450, '44.19810', '-70.40690'), ('Hiram', 2359, '43.87860', '-70.80390'), ('Kezar Falls', 1549, '43.80780', '-70.88940'), ('Locke Mills', 4795, '44.40000', '-70.70250'), ('Lovell', 1549, '44.12670', '-70.89220'), ('Mexico', 1946, '44.56080', '-70.54580'), ('Milton', 4795, '44.44780', '-70.65360'), ('Newry', 4795, '44.48720', '-70.78750'), ('Norway', 2623, '44.21390', '-70.54530'), ('Otisfield', 1300, '44.14830', '-70.56440'), ('Oxford', 1300, '44.13170', '-70.49360'), ('Peru', 1137, '44.50670', '-70.40580'), ('Porter', 1549, '43.79580', '-70.93310'), ('Rumford', 4795, '44.55360', '-70.55140'), ('South Paris', 2237, '44.22360', '-70.51390'), ('Stoneham', 2359, '44.25030', '-70.81310'), ('Stowe', 1549, '44.16060', '-70.98560'), ('Sumner', 1137, '44.39190', '-70.43890'), ('Sweden', 2359, '44.13330', '-70.82310'), ('Waterford', 2359, '44.18140', '-70.71780'), ('West Paris', 2623, '44.32420', '-70.57440')], 'partOfState': 'western', 'wfo': 'GYX'}, +'MEZ013': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Carthage', 1137, '44.62420', '-70.47360'), ('Chesterville', 1399, '44.55110', '-70.08670'), ('Farmington', 4098, '44.67060', '-70.15170'), ('Jay', 1399, '44.50390', '-70.21670'), ('New Sharon', 4098, '44.63890', '-70.01610'), ('New Vineyard', 4098, '44.80420', '-70.12190'), ('Temple', 4098, '44.68500', '-70.22690'), ('Wilton', 2290, '44.59280', '-70.22860')], 'partOfState': 'western', 'wfo': 'GYX'}, +'MEZ014': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Anson', 818, '44.79830', '-69.88970'), ('Athens', 6696, '44.92310', '-69.67330'), ('Brighton', 856, '45.04530', '-69.69530'), ('Cambridge', 872, '45.02420', '-69.47440'), ('Canaan', 1305, '44.76170', '-69.56190'), ('Cornville', 6696, '44.83670', '-69.67360'), ('Detroit', 1754, '44.79250', '-69.29720'), ('Embden', 2733, '44.91810', '-69.86720'), ('Fairfield', 2569, '44.58830', '-69.59920'), ('Harmony', 872, '44.97390', '-69.54670'), ('Hartland', 872, '44.88330', '-69.44810'), ('Madison', 2733, '44.79750', '-69.88030'), ('Mercer', 2733, '44.67810', '-69.93690'), ('Norridgewock', 1557, '44.71310', '-69.79110'), ('Palmyra', 3217, '44.84640', '-69.35920'), ('Pittsfield', 3217, '44.78250', '-69.38390'), ('Ripley', 2201, '44.99110', '-69.37220'), ('Saint Albans', 872, '44.91000', '-69.41060'), ('Skowhegan', 6696, '44.76500', '-69.71970'), ('Solon', 856, '44.94940', '-69.85890')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEZ015': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Alton', 8130, '45.03140', '-68.72920'), ('Argyle', 2197, '45.05420', '-68.67280'), ('Bangor', 31473, '44.80110', '-68.77830'), ('Bradford', 1898, '45.06670', '-68.93830'), ('Bradley', 2197, '44.92080', '-68.62860'), ('Brewer', 8987, '44.79670', '-68.76190'), ('Carmel', 1754, '44.79750', '-69.05170'), ('Charleston', 1898, '45.08500', '-69.04110'), ('Clifton', 2197, '44.81670', '-68.51170'), ('Corinna', 1754, '44.92110', '-69.26220'), ('Costigan', 2197, '45.01280', '-68.64000'), ('Dexter', 2201, '45.02390', '-69.29030'), ('Dixmont', 1754, '44.68030', '-69.16330'), ('East Corinth', 1898, '45.00250', '-69.02420'), ('Eddington', 8253, '44.82610', '-68.69390'), ('Etna', 1754, '44.82080', '-69.11170'), ('Exeter', 2201, '44.97000', '-69.14060'), ('Garland', 2201, '45.03830', '-69.16080'), ('Glenburn', 31473, '44.91060', '-68.84780'), ('Greenbush', 2197, '45.08030', '-68.65140'), ('Greenfield', 2197, '45.04720', '-68.48190'), ('Hampden', 4126, '44.74440', '-68.83750'), ('Hermon', 4126, '44.81000', '-68.91390'), ('Holden', 8987, '44.75280', '-68.67940'), ('Hudson', 8130, '45.00110', '-68.88110'), ('Kenduskeag', 31473, '44.91940', '-68.93220'), ('Levant', 31473, '44.86920', '-68.93530'), ('Lowell', 2933, '45.18780', '-68.46830'), ('Milford', 2197, '44.94610', '-68.64440'), ('Newburgh', 1307, '44.72170', '-69.00280'), ('Newport', 1754, '44.83530', '-69.27440'), ('Old Town', 8130, '44.93420', '-68.64580'), ('Orono', 8253, '44.88310', '-68.67250'), ('Orrington', 4126, '44.73110', '-68.82690'), ('Plymouth', 1754, '44.76720', '-69.21080'), ('Saponac', 2933, '45.17080', '-68.31860'), ('Stetson', 1754, '44.89170', '-69.14330'), ('Veazie', 8253, '44.83860', '-68.70580')], 'partOfState': 'east central', 'wfo': 'CAR'}, +'MEZ016': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Amherst', 6456, '44.83330', '-68.36470'), ('Aurora', 6456, '44.85420', '-68.32860'), ('Dedham', 8987, '44.69170', '-68.66250'), ('Eastbrook', 6456, '44.67860', '-68.26500'), ('Great Pond', 2197, '44.94030', '-68.28250'), ('Mariaville', 6456, '44.72060', '-68.41610'), ('Orland', 2970, '44.57030', '-68.73640'), ('Waltham', 6456, '44.70860', '-68.33890')], 'partOfState': 'southeast', 'wfo': 'CAR'}, +'MEZ017': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Alexander', 1044, '45.08960', '-67.46900'), ('Calais', 0, '45.18896', '-67.27860'), ('Charlotte', 3963, '45.02110', '-67.24580'), ('Cooper', 1044, '44.95940', '-67.44030'), ('Crawford', 1044, '45.05280', '-67.55190'), ('Deblois', 2830, '44.74140', '-68.01530'), ('Dennysville', 1640, '44.90360', '-67.22920'), ('Eastport', 1640, '44.90610', '-66.99060'), ('Edmunds', 1640, '44.87190', '-67.16470'), ('Grand Lake Stream', 1044, '45.17940', '-67.77500'), ('Marion', 1376, '44.87830', '-67.31750'), ('Meddybemps', 1044, '45.03830', '-67.35640'), ('Northfield', 1376, '44.82890', '-67.57110'), ('Pembroke', 1640, '44.95360', '-67.16250'), ('Perry', 1640, '44.97500', '-67.07640'), ('Princeton', 1044, '45.22330', '-67.57280'), ('Wesley', 1376, '44.95220', '-67.66140')], 'partOfState': 'southeast', 'wfo': 'CAR'}, +'MEZ018': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Acton', 3488, '43.53420', '-70.91030'), ('Alfred', 10133, '43.47640', '-70.71890'), ('Berwick', 1993, '43.26580', '-70.86500'), ('Buxton', 4164, '43.63780', '-70.51940'), ('Cornish', 2359, '43.80470', '-70.80170'), ('Goodwins Mills', 4804, '43.50860', '-70.58220'), ('Hollis', 15181, '43.60500', '-70.59360'), ('Lebanon', 10133, '43.39440', '-70.85140'), ('Limerick', 3488, '43.68830', '-70.79420'), ('Limington', 4164, '43.73170', '-70.71140'), ('Newfield', 3488, '43.64810', '-70.84750'), ('Parsonsfield', 3488, '43.72690', '-70.92920'), ('Sanford', 10133, '43.43920', '-70.77470'), ('Shapleigh', 3488, '43.54060', '-70.84860'), ('South Berwick', 1993, '43.23440', '-70.81000'), ('Springvale', 3488, '43.46700', '-70.80320'), ('Waterboro', 3488, '43.53560', '-70.71560')], 'partOfState': 'southwest', 'wfo': 'GYX'}, +'MEZ019': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Bridgton', 2359, '44.05470', '-70.71330'), ('Casco', 1300, '44.00670', '-70.52330'), ('Gorham', 4164, '43.67940', '-70.44470'), ('Gray', 2596, '43.88560', '-70.33220'), ('Harrison', 2359, '44.11030', '-70.67970'), ('Naples', 2359, '43.97170', '-70.60970'), ('New Gloucester', 24309, '43.96280', '-70.28310'), ('North Windham', 4568, '43.83420', '-70.43890'), ('North Yarmouth', 3560, '43.84440', '-70.21780'), ('Pownal', 1813, '43.89220', '-70.18580'), ('Raymond', 4568, '43.90140', '-70.47080'), ('South Windham', 1715, '43.73610', '-70.42420'), ('Standish', 4164, '43.73580', '-70.55250'), ('West Baldwin', 2359, '43.83310', '-70.77830')], 'partOfState': '', 'wfo': 'GYX'}, +'MEZ020': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Auburn', 23203, '44.09780', '-70.23170'), ('Greene', 35690, '44.18970', '-70.14080'), ('Leeds', 2893, '44.30330', '-70.12000'), ('Lewiston', 35690, '44.10030', '-70.21530'), ('Lisbon Falls', 4420, '43.99610', '-70.06110'), ('Livermore', 1626, '44.33390', '-70.24970'), ('Livermore Falls', 1626, '44.47530', '-70.18860'), ('Mechanic Falls', 2450, '44.11170', '-70.39220'), ('Minot', 24309, '44.08560', '-70.32060'), ('Poland', 2450, '44.06060', '-70.39420'), ('Sabattus', 35690, '44.11970', '-70.10810'), ('Turner', 24309, '44.25640', '-70.25670'), ('Wales', 35690, '44.18360', '-70.06560')], 'partOfState': 'southwest', 'wfo': 'GYX'}, +'MEZ021': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Albion', 1305, '44.53220', '-69.44310'), ('Augusta', 18560, '44.31060', '-69.78000'), ('Belgrade', 2467, '44.44720', '-69.83310'), ('Benton', 2569, '44.58610', '-69.55140'), ('Chelsea', 1911, '44.25030', '-69.71780'), ('China', 7743, '44.47860', '-69.51780'), ('Clinton', 1305, '44.63780', '-69.50360'), ('Farmingdale', 1935, '44.24440', '-69.77190'), ('Fayette', 2893, '44.40890', '-70.03420'), ('Gardiner', 6198, '44.23000', '-69.77580'), ('Hallowell', 2467, '44.28580', '-69.79140'), ('Litchfield', 4420, '44.13310', '-69.96560'), ('Manchester', 2467, '44.32440', '-69.86080'), ('Monmouth', 2893, '44.23860', '-70.01940'), ('Mount Vernon', 2893, '44.50110', '-69.98810'), ('Oakland', 2758, '44.54030', '-69.72250'), ('Palermo', 7743, '44.40780', '-69.47440'), ('Pittston', 1911, '44.22170', '-69.75610'), ('Randolph', 1911, '44.23030', '-69.76720'), ('Readfield', 2893, '44.38780', '-69.96720'), ('Rome', 1557, '44.58500', '-69.86970'), ('Sidney', 18560, '44.41310', '-69.72940'), ('Vassalboro', 17173, '44.45920', '-69.67810'), ('Vienna', 1626, '44.53330', '-69.98530'), ('Waterville', 15605, '44.55190', '-69.63220'), ('Wayne', 2893, '44.34860', '-70.06670'), ('Windsor', 18560, '44.31060', '-69.58110'), ('Winslow', 7743, '44.56360', '-69.62170'), ('Winthrop', 2893, '44.30500', '-69.97750')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEZ022': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Brooks', 6381, '44.55030', '-69.12140'), ('Burnham', 1305, '44.69280', '-69.42810'), ('Frankfort', 1307, '44.60970', '-68.87720'), ('Freedom', 1305, '44.53030', '-69.29830'), ('Jackson', 6381, '44.61470', '-69.12140'), ('Knox', 6381, '44.52310', '-69.24310'), ('Liberty', 6381, '44.38920', '-69.30330'), ('Monroe', 1307, '44.61500', '-69.01860'), ('Montville', 6381, '44.44670', '-69.24670'), ('Morrill', 6381, '44.44310', '-69.14970'), ('Prospect', 2970, '44.55310', '-68.86530'), ('Stockton Springs', 1102, '44.48940', '-68.85750'), ('Swanville', 1102, '44.52110', '-68.99830'), ('Thorndike', 1305, '44.57810', '-69.27640'), ('Troy', 1754, '44.66470', '-69.24140'), ('Unity', 486, '44.61110', '-69.33500'), ('Waldo', 6381, '44.51250', '-69.07670')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEZ023': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Arundel', 1376, '43.38250', '-70.47830'), ('Biddeford', 20942, '43.49250', '-70.45390'), ('Cape Neddick', 2997, '43.17000', '-70.61930'), ('Eliot', 3445, '43.15310', '-70.80060'), ('Kennebunk', 4804, '43.38390', '-70.54530'), ('Kennebunkport', 1376, '43.36170', '-70.47720'), ('Kittery', 4884, '43.08810', '-70.73670'), ('Kittery Point', 1093, '43.08470', '-70.69950'), ('North Berwick', 1580, '43.30360', '-70.73390'), ('Ogunquit', 2997, '43.24890', '-70.59970'), ('Old Orchard Beach', 8856, '43.51720', '-70.37810'), ('Saco', 16822, '43.50080', '-70.44330'), ('South Eliot', 3445, '43.12740', '-70.79820'), ('Wells', 4804, '43.32190', '-70.58140'), ('York', 2555, '43.14360', '-70.65140')], 'partOfState': 'southwest', 'wfo': 'GYX'}, +'MEZ024': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Brunswick', 14816, '43.91440', '-69.96580'), ('Brunswick Naval Air Station', 1511, '43.89620', '-69.93140'), ('Cape Elizabeth', 23324, '43.56360', '-70.20060'), ('Cumberland', 2596, '43.79640', '-70.25940'), ('Falmouth', 1708, '43.72940', '-70.24250'), ('Freeport', 1813, '43.85690', '-70.10360'), ('Harpswell', 1511, '43.80170', '-69.98470'), ('Portland', 64249, '43.66140', '-70.25580'), ('Scarborough', 3867, '43.57810', '-70.32220'), ('South Portland', 23324, '43.64140', '-70.24140'), ('Westbrook', 16142, '43.67690', '-70.37170'), ('Yarmouth', 3560, '43.80060', '-70.18720')], 'partOfState': 'southwest', 'wfo': 'GYX'}, +'MEZ025': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Arrowsic', 9266, '43.84970', '-69.77860'), ('Bath', 9266, '43.91060', '-69.82110'), ('Bowdoin', 4420, '44.04720', '-70.02530'), ('Bowdoinham', 6271, '44.01000', '-69.89890'), ('Georgetown', 1237, '43.80440', '-69.74720'), ('Phippsburg', 9266, '43.82060', '-69.81530'), ('Richmond', 1864, '44.08720', '-69.79940'), ('Topsham', 6271, '43.92750', '-69.97640')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEZ026': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Alna', 1751, '44.10610', '-69.60420'), ('Boothbay', 1237, '43.87640', '-69.63420'), ('Boothbay Harbor', 1237, '43.85220', '-69.62860'), ('Bremen', 1751, '44.00140', '-69.42920'), ('Bristol', 1751, '43.95750', '-69.50970'), ('Damariscotta', 1751, '44.03280', '-69.51920'), ('Dresden', 1864, '44.10720', '-69.72470'), ('Edgecomb', 1203, '43.95830', '-69.63110'), ('Jefferson', 1291, '44.20670', '-69.45310'), ('Monhegan', 1237, '43.76220', '-69.32080'), ('Newcastle', 1751, '44.03500', '-69.53720'), ('Nobleboro', 1751, '44.07940', '-69.48560'), ('Somerville', 1291, '44.30920', '-69.48940'), ('South Bristol', 1237, '43.86390', '-69.56170'), ('Southport', 1237, '43.84080', '-69.65920'), ('Waldoboro', 1291, '44.09610', '-69.38150'), ('Westport', 1237, '43.89920', '-69.70890'), ('Whitefield', 1911, '44.17000', '-69.62580'), ('Wiscasset', 1203, '44.00280', '-69.66610')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEZ027': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Appleton', 3934, '44.28920', '-69.25140'), ('Camden', 3934, '44.20970', '-69.06530'), ('Cushing', 2714, '44.01920', '-69.24030'), ('Friendship', 1291, '43.98360', '-69.33440'), ('Hope', 3934, '44.26500', '-69.15940'), ('Matinicus', 7609, '43.86500', '-68.88750'), ('Owls Head', 7609, '44.08220', '-69.05780'), ('Rockland', 7609, '44.10360', '-69.10940'), ('Rockport', 3934, '44.18440', '-69.07670'), ('Saint George', 2714, '44.01640', '-69.19940'), ('South Thomaston', 2714, '44.05140', '-69.12830'), ('Thomaston', 2714, '44.07890', '-69.18220'), ('Union', 1291, '44.21140', '-69.27470'), ('Vinalhaven', 3934, '44.04810', '-68.83220'), ('Warren', 2714, '44.12030', '-69.24060'), ('Washington', 1291, '44.27360', '-69.36780')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEZ028': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Belfast', 6381, '44.42580', '-69.00690'), ('Isleboro', 1102, '44.30830', '-68.90390'), ('Lincolnville', 3934, '44.28110', '-69.00920'), ('Northport', 6381, '44.33780', '-68.96190'), ('Searsmont', 6381, '44.36170', '-69.19560'), ('Searsport', 1102, '44.45830', '-68.92470')], 'partOfState': 'south central', 'wfo': 'GYX'}, +'MEZ029': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Bar Harbor', 2830, '44.38750', '-68.20440'), ('Blue Hill', 6456, '44.41390', '-68.58720'), ('Brooklin', 6456, '44.26610', '-68.56970'), ('Brooksville', 1102, '44.34670', '-68.68420'), ('Cranberry Isles', 2830, '44.24830', '-68.26080'), ('Deer Isle', 1102, '44.22390', '-68.67810'), ('Ellsworth', 6456, '44.54060', '-68.42000'), ('Franklin', 2830, '44.58690', '-68.23280'), ('Frenchboro', 2830, '44.11810', '-68.36310'), ('Gouldsboro', 2830, '44.47830', '-68.03890'), ('Hancock', 2830, '44.52920', '-68.25420'), ('Penobscot', 2970, '44.46440', '-68.71170'), ('Sedgwick', 6456, '44.30360', '-68.61670'), ('Somesville', 2830, '44.36220', '-68.33470'), ('Surry', 6456, '44.49580', '-68.50220'), ('Swans Island', 2830, '44.14500', '-68.45220'), ('Tremont', 2830, '44.25360', '-68.35190'), ('Trenton', 2830, '44.43890', '-68.37060'), ('Winter Harbor', 2830, '44.39530', '-68.08360')], 'partOfState': 'southeast', 'wfo': 'CAR'}, +'MEZ030': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Addison', 1044, '44.62070', '-67.74300'), ('Centerville', 1376, '44.70560', '-67.67940'), ('Cherryfield', 2830, '44.60720', '-67.92640'), ('Columbia', 1376, '44.65810', '-67.77500'), ('Columbia Falls', 1376, '44.65360', '-67.72810'), ('East Machias', 1376, '44.73920', '-67.39060'), ('Harrington', 1376, '44.61920', '-67.81080'), ('Jonesboro', 1376, '44.66250', '-67.57310'), ('Jonesport', 1376, '44.53280', '-67.59890'), ('Machias', 1376, '44.71500', '-67.46190'), ('Machiasport', 1376, '44.69860', '-67.39530'), ('Marshfield', 1376, '44.73310', '-67.47810'), ('Millbridge', 2830, '44.53530', '-67.88140'), ('Roque Bluffs', 1376, '44.61280', '-67.48030'), ('Steuben', 2830, '44.51060', '-67.96580'), ('Trescott', 1640, '44.76920', '-67.07470'), ('Whiting', 1640, '44.79080', '-67.17610'), ('Whitneyville', 1376, '44.72190', '-67.52390')], 'partOfState': 'southeast', 'wfo': 'CAR'}, +'MEZ031': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Abbot', 945, '45.18640', '-69.45250'), ('Atkinson', 1898, '45.15970', '-69.08280'), ('Barnard', 2592, '45.36640', '-69.20750'), ('Bowerbank', 2592, '45.27278', '-69.21200'), ('Boyd Lake', 2592, '45.17736', '-68.92100'), ('Brownville', 1898, '45.30690', '-69.03390'), ('Brownville Junction', 1898, '45.35000', '-69.05280'), ('Dover-Foxcroft', 2592, '45.18330', '-69.22750'), ('Guilford', 945, '45.16890', '-69.38500'), ('Kingsbury', 856, '45.11940', '-69.64970'), ('Lake View', 1898, '45.32330', '-68.92640'), ('Medford', 1898, '45.28530', '-68.85220'), ('Milo', 1898, '45.25360', '-68.98640'), ('Parkman', 945, '45.13360', '-69.43360'), ('Sangerville', 945, '45.16470', '-69.35690'), ('Sebec', 2592, '45.27140', '-69.11720'), ('Wellington', 872, '45.03970', '-69.59780'), ('Williamsburg', 1898, '45.38000', '-69.11640')], 'partOfState': 'north central', 'wfo': 'CAR'}, +'MEZ032': {'fullStateName': 'Maine', 'state': 'ME', 'cities': [('Brookton', 1044, '45.52970', '-67.76610'), ('Codyville', 1044, '45.43970', '-67.69470'), ('Danforth', 5270, '45.66030', '-67.86890'), ('Eaton', 5270, '45.60530', '-67.80610'), ('Forest', 1044, '45.57110', '-67.72830'), ('Forest City', 5270, '45.65970', '-67.73030'), ('Lambert Lake', 1044, '45.54580', '-67.52750'), ('Topsfield', 1044, '45.41890', '-67.73610'), ('Vanceboro', 1044, '45.56330', '-67.43030'), ('Waite', 1044, '45.32560', '-67.69080')], 'partOfState': 'southeast', 'wfo': 'CAR'}, +'MIZ001': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ahmeek', 157, '47.29790', '-88.39700'), ('Allouez', 157, '47.28700', '-88.40900'), ('Copper Harbor', 205, '47.47000', '-87.89000'), ('Delaware', 205, '47.42000', '-88.10000'), ('Eagle Harbor', 205, '47.45800', '-88.16200'), ('Gay', 205, '47.22900', '-88.16380'), ('Mohawk', 205, '47.30490', '-88.36340'), ('Phoenix', 157, '47.38900', '-88.27800')], 'partOfState': 'northeast', 'wfo': 'MQT'}, +'MIZ002': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bergland', 1769, '46.59250', '-89.57100'), ('Bruce Crossing', 1769, '46.53500', '-89.17860'), ('Clark Lake', 2085, '46.63400', '-89.77100'), ('Ewen', 1769, '46.53440', '-89.28150'), ('Fourteen Mile Point', 1769, '46.99200', '-89.11700'), ('Lake Of The Clouds', 2085, '46.80400', '-89.75200'), ('Mass City', 1769, '46.76190', '-89.07910'), ('Merriweather', 2085, '46.57190', '-89.63740'), ('Mirror Lake', 2085, '46.76200', '-89.77000'), ('Ontonagon', 1769, '46.86710', '-89.31430'), ('Paulding', 1374, '46.40000', '-89.18000'), ('Rockland', 1769, '46.73800', '-89.17900'), ('Silver City', 1769, '46.83000', '-89.57000'), ('Trout Creek', 1769, '46.48190', '-89.01220'), ('White Pine', 1769, '46.75400', '-89.58400')], 'partOfState': 'western upper', 'wfo': 'MQT'}, +'MIZ003': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Calumet', 879, '47.24740', '-88.45320'), ('Chassell', 7498, '47.02750', '-88.52570'), ('Copper City', 205, '47.28450', '-88.38690'), ('Donken', 727, '46.94180', '-88.79200'), ('Hancock', 4323, '47.13230', '-88.60070'), ('Houghton', 7010, '47.11360', '-88.56180'), ('Hubbell', 1105, '47.17510', '-88.42900'), ('Lake Linden', 1081, '47.19510', '-88.40810'), ('Laurium', 2126, '47.23650', '-88.43760'), ('Painesdale', 727, '47.04330', '-88.67220'), ('Redridge', 727, '47.15090', '-88.76250'), ('Rice Lake', 1081, '47.16400', '-88.28500'), ('South Range', 727, '47.07030', '-88.64460'), ('Tapiola', 727, '46.92410', '-88.62590'), ('Toivola', 727, '46.99920', '-88.76980'), ('Twin Lakes', 727, '46.90000', '-88.83000'), ('Winona', 727, '46.87370', '-88.90620')], 'partOfState': 'western upper', 'wfo': 'MQT'}, +'MIZ004': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alberta', 2107, '46.64350', '-88.48010'), ('Arnheim', 1285, '46.91720', '-88.48270'), ('Assinins', 1285, '46.81000', '-88.47700'), ('Baraga', 1285, '46.77730', '-88.49350'), ('Herman', 2107, '46.66700', '-88.36700'), ('Island Lake', 6686, '46.69800', '-88.01500'), ('Keweenaw Bay', 1285, '46.86030', '-88.48170'), ("L'anse", 2107, '46.75360', '-88.44940'), ('Mount Arvon', 2107, '46.75600', '-88.15600'), ('Ned Lake', 2107, '46.45200', '-88.33400'), ('Pelkie', 1285, '46.81320', '-88.63610'), ('Pequaming', 2107, '46.85300', '-88.39200'), ('Three Lakes', 2107, '46.55400', '-88.20100'), ('Watton', 1285, '46.53730', '-88.60580')], 'partOfState': 'north central upper', 'wfo': 'MQT'}, +'MIZ005': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Arnold', 1965, '46.05080', '-87.49230'), ('Big Bass Lake', 6686, '46.30800', '-87.67800'), ('Big Bay', 265, '46.81870', '-87.72890'), ('Carlshend', 1443, '46.31140', '-87.22140'), ('Champion', 6686, '46.51390', '-87.96340'), ('Gwinn', 1965, '46.28160', '-87.44160'), ('Harvey', 1321, '46.49280', '-87.35090'), ('Huron River Point', 6686, '46.90900', '-87.90000'), ('Ishpeming', 6686, '46.48750', '-87.66360'), ('Little Lake', 1443, '46.28920', '-87.34050'), ('Marquette', 19661, '46.55080', '-87.39570'), ('McFarland', 1443, '46.18010', '-87.24410'), ('Michigamme', 287, '46.53500', '-88.11000'), ('Mountain Lake', 6686, '46.86100', '-87.91400'), ('National Mine', 6686, '46.45940', '-87.68240'), ('Negaunee', 4576, '46.50100', '-87.60840'), ('Northland', 1965, '46.07250', '-87.59610'), ('Palmer', 449, '46.44080', '-87.59310'), ('Republic', 614, '46.40730', '-87.97860'), ('Sands', 1443, '46.41970', '-87.40650'), ('Silver Lake', 1443, '46.34100', '-87.33500'), ('Skandia', 1443, '46.37700', '-87.24090'), ('Trowbridge Park', 2012, '46.55380', '-87.43170'), ('Watson', 1965, '46.01960', '-87.41460'), ('Witch Lake', 1791, '46.28000', '-88.02000')], 'partOfState': 'north central upper', 'wfo': 'MQT'}, +'MIZ006': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Au Sable Point', 2539, '46.67200', '-86.14200'), ('Au Train', 231, '46.43040', '-86.83750'), ('Beaver Lake', 2539, '46.56800', '-86.33900'), ('Chatham', 231, '46.34430', '-86.93080'), ('Christmas', 2539, '46.43770', '-86.70260'), ('Deerton', 231, '46.47400', '-87.04200'), ('Eben Junction', 231, '46.35490', '-86.97070'), ('Fish Lake', 2539, '46.22300', '-86.63900'), ('Forest Lake', 231, '46.33250', '-86.84440'), ('Grand Marais', 2686, '46.67000', '-85.98000'), ('Grand Portal Point', 2539, '46.55310', '-86.46200'), ('Kiva', 231, '46.25400', '-87.08400'), ('Melstrand', 2539, '46.46480', '-86.41610'), ('Munising', 2539, '46.40910', '-86.65370'), ('Nawakwa Lake', 2686, '46.53600', '-85.97500'), ('Shingleton', 2539, '46.34800', '-86.47000'), ('Sundell', 231, '46.34750', '-87.08500'), ('Traunik', 231, '46.26100', '-86.96900'), ('Trenary', 231, '46.19510', '-86.97000'), ('Wetmore', 2539, '46.38000', '-86.62000')], 'partOfState': 'north central upper', 'wfo': 'MQT'}, +'MIZ007': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Betsy Lake', 2686, '46.62400', '-85.27400'), ('Crisp Point', 2686, '46.75300', '-85.25700'), ('Deer Park', 2686, '46.67410', '-85.61500'), ('Dollarville', 2686, '46.35100', '-85.54200'), ('Helmer', 2686, '46.26640', '-85.71520'), ('McMillan', 2686, '46.33900', '-85.68760'), ('Newberry', 2686, '46.35330', '-85.50900'), ('Pike Lake', 2686, '46.64200', '-85.40700'), ('Pine Stump Junction', 2686, '46.56930', '-85.59140'), ('Soo Junction', 2686, '46.33600', '-85.25900')], 'partOfState': 'eastern upper', 'wfo': 'MQT'}, +'MIZ008': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Barbeau', 16542, '46.28330', '-84.28330'), ('Bay Mills', 16542, '46.43500', '-84.58500'), ('Bayview Campground', 16542, '46.44500', '-84.76000'), ('Brimley', 16542, '46.40500', '-84.56660'), ('Dafter', 16542, '46.36700', '-84.43300'), ('Donaldson', 16542, '46.31000', '-84.35000'), ('Eckerman', 2686, '46.36700', '-85.03340'), ('Fibre', 2678, '46.20000', '-84.88330'), ('Goetzville', 421, '46.08000', '-84.09000'), ('Hulbert', 2686, '46.35000', '-85.15000'), ('Kelden', 16542, '46.21000', '-84.31000'), ('Kincheloe', 16542, '46.25000', '-84.50000'), ('Kinross', 16542, '46.26660', '-84.48000'), ('Lower Tahquamenon', 2686, '46.62000', '-85.20000'), ('McCarron', 16542, '46.33000', '-84.28000'), ('Munuscong', 16542, '46.24500', '-84.19000'), ('Pickford', 16542, '46.16400', '-84.36400'), ('Raco', 16542, '46.37100', '-84.71600'), ('Rudyard', 16542, '46.23330', '-84.60000'), ('Sault Ste. Marie', 16542, '46.48460', '-84.36550'), ('Stalwart', 421, '46.10000', '-84.24000'), ('Strongs', 2678, '46.35000', '-84.96700'), ('Three Lakes', 2678, '46.31000', '-84.97000'), ('Trout Lake', 2678, '46.18330', '-85.01710'), ('Whitefish Point', 2686, '46.75200', '-84.98330')], 'partOfState': 'eastern', 'wfo': 'APX'}, +'MIZ009': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bessemer', 2148, '46.48120', '-90.05030'), ('Chaney Lake', 2085, '46.31700', '-89.91300'), ('Ironwood', 6293, '46.45450', '-90.15260'), ('Little Girls Point', 838, '46.60700', '-90.33100'), ('Marenisco', 2085, '46.37930', '-89.69630'), ('Pomeroy Lake', 2085, '46.27900', '-89.57500'), ('Presque Isle Reservoir', 2085, '46.34500', '-89.71200'), ('Tamarack Lake', 214, '46.24000', '-88.99200'), ('Thomaston', 2085, '46.51640', '-89.92790'), ('Thousand Island Lake', 1374, '46.22900', '-89.40000'), ('Wakefield', 2085, '46.47680', '-89.93340'), ('Watersmeet', 1374, '46.27000', '-89.18000')], 'partOfState': 'western upper', 'wfo': 'MQT'}, +'MIZ010': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alpha', 198, '46.04390', '-88.37830'), ('Amasa', 1791, '46.23400', '-88.45000'), ('Beechwood', 214, '46.15960', '-88.76220'), ('Bewabic State Park', 198, '46.09300', '-88.42700'), ('Bone Lake', 1791, '46.37500', '-88.30700'), ('Caspian', 997, '46.06340', '-88.62970'), ('Crystal Falls', 1791, '46.09730', '-88.32770'), ('Gaastra', 339, '46.05880', '-88.60540'), ('Gibbs City', 214, '46.22600', '-88.70100'), ('Golden Lake', 214, '46.17600', '-88.88700'), ('Hagerman Lake', 214, '46.06000', '-88.78000'), ('Iron River', 1929, '46.09250', '-88.64100'), ('Mineral Hills', 214, '46.11230', '-88.64470'), ('Peavy Falls Dam', 1791, '45.99100', '-88.20800'), ('Perch Lake', 214, '46.36200', '-88.66200'), ('Smoky Lake', 214, '46.09600', '-88.94200'), ('Stager', 198, '45.98930', '-88.31500'), ('Stambaugh', 1243, '46.08300', '-88.62730'), ('Triangle Ranch', 1791, '46.31400', '-88.41900'), ('Way Dam', 1791, '46.16100', '-88.23900')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIZ011': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Channing', 1791, '46.14100', '-88.09250'), ('Felch', 2959, '45.99630', '-87.82520'), ('Foster City', 2959, '45.96600', '-87.74150'), ('Granite Bluff', 8154, '45.93900', '-88.05400'), ('Hardwood', 2959, '45.96420', '-87.69780'), ('Iron Mountain', 8154, '45.82770', '-88.06150'), ('Kingsford', 5549, '45.80800', '-88.09900'), ('Norway', 2959, '45.78700', '-87.90310'), ('Quinnesec', 1187, '45.80140', '-87.99850'), ('Ralph', 2959, '46.10600', '-87.78460'), ('Randville', 8154, '45.99170', '-88.05690'), ('Sagola', 8154, '46.08850', '-88.07760'), ('Vulcan', 2959, '45.78010', '-87.86140'), ('Waucedah', 2959, '45.76290', '-87.74590')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIZ012': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bagley', 225, '45.55000', '-87.58000'), ('Banat', 270, '45.52000', '-87.70000'), ('Birch Creek', 9398, '45.20270', '-87.61100'), ('Carbondale', 875, '45.27820', '-87.61540'), ('Carney', 225, '45.58910', '-87.55400'), ('Cedar River', 875, '45.41100', '-87.35400'), ('Cunard', 430, '45.73860', '-87.66580'), ('Daggett', 270, '45.46200', '-87.60450'), ('Faithorn', 2959, '45.67910', '-87.75310'), ('Gourley', 225, '45.59500', '-87.42400'), ('Hermansville', 430, '45.71100', '-87.60200'), ('Ingalls', 875, '45.37700', '-87.61070'), ('La Branche', 430, '45.88000', '-87.47000'), ('Menominee', 9131, '45.12110', '-87.62350'), ('Nathan', 225, '45.57900', '-87.70700'), ('Powers', 430, '45.68750', '-87.52640'), ('Spalding', 430, '45.69600', '-87.51100'), ('Stephenson', 875, '45.41370', '-87.60890'), ('Swanson', 270, '45.47500', '-87.70900'), ('Wallace', 875, '45.32610', '-87.61420'), ('Whitney', 430, '45.82160', '-87.38640'), ('Wilson', 430, '45.70530', '-87.43880')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIZ013': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bark River', 13140, '45.70920', '-87.30700'), ('Brampton', 5032, '45.93000', '-87.07000'), ('Chicago Lake', 240, '46.03700', '-86.61100'), ('Cornell', 5032, '45.90160', '-87.22200'), ('Ensign', 5032, '45.90000', '-86.87000'), ('Escanaba', 13140, '45.74620', '-87.08080'), ('Fayette', 240, '45.71830', '-86.66480'), ('Ford River', 13140, '45.67880', '-87.14390'), ('Garden', 240, '45.77530', '-86.55250'), ('Garden Corners', 240, '45.89000', '-86.53700'), ('Gladstone', 5032, '45.85200', '-87.02470'), ('Hyde', 13140, '45.73280', '-87.20220'), ('Isabella', 240, '45.89740', '-86.60580'), ('Lathrop', 1443, '46.15000', '-87.22000'), ('Nahma Junction', 240, '45.89700', '-86.70800'), ('Perkins', 5032, '45.97790', '-87.07090'), ('Rapid River', 5032, '45.92000', '-86.97000'), ('Rock', 5032, '46.06900', '-87.16600'), ('Round Lake', 231, '46.15000', '-86.74600'), ('Schaeffer', 13140, '45.76120', '-87.29850'), ('Stonington', 13140, '45.72490', '-86.97640')], 'partOfState': 'south central upper', 'wfo': 'MQT'}, +'MIZ014': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Blaney Park', 3583, '46.11520', '-85.92730'), ('Cooks', 240, '45.91800', '-86.47600'), ('Gulliver', 3583, '45.99210', '-86.01730'), ('Manistique', 3583, '45.95860', '-86.25010'), ('Seul Choix Point', 3583, '45.92170', '-85.91090'), ('Thompson', 3583, '45.90610', '-86.32870')], 'partOfState': 'east central upper', 'wfo': 'MQT'}, +'MIZ015': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allenville', 2678, '45.98330', '-84.81670'), ('Brevort', 2678, '46.01760', '-85.03400'), ('Cedarville', 523, '45.99000', '-84.36150'), ('Corinne', 2686, '46.08340', '-85.71660'), ('Curtis', 2686, '46.20100', '-85.75000'), ('Engadine', 2686, '46.11670', '-85.56660'), ('Epoufette', 2686, '46.06000', '-85.17400'), ('Garnet', 2686, '46.15000', '-85.30000'), ('Gilchrist', 2686, '46.13330', '-85.38330'), ('Gould City', 2686, '46.10000', '-85.70000'), ('Hessel', 523, '46.00600', '-84.42200'), ('Mackinac Island', 523, '45.85900', '-84.63570'), ('Marquette Island', 523, '45.96000', '-84.40000'), ('Naubinway', 2686, '46.11100', '-85.45000'), ('Point Aux Pins On', 5295, '45.74000', '-84.48000'), ('Rexton', 2686, '46.15000', '-85.24000'), ('St. Ignace', 2678, '45.86840', '-84.72570')], 'partOfState': 'eastern', 'wfo': 'APX'}, +'MIZ016': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bliss', 859, '45.68330', '-84.85000'), ('Brutus', 771, '45.50000', '-84.75000'), ('Carp Lake', 859, '45.69000', '-84.79000'), ('Conway', 785, '45.41720', '-84.87000'), ('Cross Village', 1567, '45.63690', '-85.03880'), ('Good Hart', 1567, '45.56660', '-85.11660'), ('Harbor Springs', 1567, '45.43200', '-84.98960'), ('Levering', 771, '45.63630', '-84.76740'), ('Oden', 785, '45.42000', '-84.84220'), ('Pellston', 771, '45.56000', '-84.78330'), ('Pleasant View', 1567, '45.52000', '-84.93000'), ('Stutsmanville', 1567, '45.50000', '-85.03000'), ('Wilderness State Park', 859, '45.75500', '-84.95000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ017': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Aloha', 5295, '45.53330', '-84.46660'), ('Alverno', 5295, '45.56660', '-84.40000'), ('Black Lake', 993, '45.49000', '-84.28000'), ('Burt Lake', 785, '45.43330', '-84.71660'), ('Cheboygan', 5295, '45.64190', '-84.46880'), ('Indian River', 2008, '45.41600', '-84.61660'), ('Mackinaw City', 859, '45.77900', '-84.73200'), ('Mullet Lake', 5295, '45.56660', '-84.53330'), ('Riggsville', 771, '45.57500', '-84.62000'), ('Topinabee', 785, '45.48330', '-84.60000'), ('Tower', 993, '45.35000', '-84.30000'), ('Wolverine', 283, '45.27350', '-84.60550')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ018': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Hagensville', 3322, '45.33330', '-83.80000'), ('Hawks', 3322, '45.30000', '-83.90000'), ('Huron Beach', 263, '45.49000', '-84.11000'), ('Metz', 292, '45.28340', '-83.81660'), ('Millersburg', 263, '45.33380', '-84.06060'), ('Ocqueoc', 263, '45.41000', '-84.10000'), ('Onaway', 993, '45.35850', '-84.22830'), ('Posen', 292, '45.26210', '-83.69940'), ('Presque Isle', 11304, '45.30000', '-83.46660'), ('Rogers City', 3322, '45.41850', '-83.80650')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ019': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Beaver Island', 2994, '45.70000', '-85.55000'), ('Boyne City', 3503, '45.18400', '-84.95670'), ('Boyne Falls', 370, '45.16650', '-84.90000'), ('Charlevoix', 2994, '45.32000', '-85.26000'), ('Clarion', 6080, '45.28360', '-84.90410'), ('East Jordan', 2507, '45.15780', '-85.13030'), ('Horton Bay', 3478, '45.28330', '-85.08460'), ('Ironton', 2994, '45.26000', '-85.20000'), ('Walloon Lake', 3503, '45.26710', '-84.91700')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ020': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bingham', 1415, '44.87500', '-85.69000'), ('Burdickville', 378, '44.85000', '-85.95000'), ('Cedar', 276, '44.85000', '-85.80000'), ('Empire', 378, '44.81320', '-86.05890'), ('Fouch', 1415, '44.82580', '-85.72630'), ('Glen Haven', 378, '44.90000', '-86.02030'), ('Greilickville', 1415, '44.79910', '-85.64580'), ('Leland', 589, '45.01670', '-85.76700'), ('Maple City', 276, '44.84890', '-85.86780'), ('Northport', 648, '45.13000', '-85.62150'), ('Omena', 605, '45.06000', '-85.59660'), ('Peshawbestown', 589, '45.01750', '-85.61330'), ('Suttons Bay', 589, '44.97900', '-85.65150')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ021': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Antrim', 1370, '44.88330', '-85.08000'), ('Bellaire', 1164, '44.97590', '-85.20670'), ('Central Lake', 990, '45.06980', '-85.26310'), ('Clam River', 1164, '44.93330', '-85.28330'), ('Elk Rapids', 1700, '44.89490', '-85.40420'), ('Ellsworth', 483, '45.16620', '-85.24440'), ('Kewadin', 1700, '44.93340', '-85.36700'), ('Lake Bellaire', 1164, '44.95000', '-85.24000'), ('Mancelona', 1408, '44.90210', '-85.06100'), ('Torch Lake', 954, '45.06670', '-85.36720')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ022': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Elmira', 3503, '45.06700', '-84.85000'), ('Gaylord', 3681, '45.03200', '-84.67410'), ('Johannesburg', 3681, '44.98400', '-84.46000'), ('Otsego Lake State Park', 3681, '44.93000', '-84.70000'), ('Sparr', 3681, '45.05000', '-84.58330'), ('Vanderbilt', 587, '45.14350', '-84.66350'), ('Waters', 3681, '44.89660', '-84.70000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ023': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Atlanta', 757, '45.00100', '-84.15000'), ('Clear Lake State Park', 993, '45.15100', '-84.20220'), ('Fletcher Pond', 685, '44.98000', '-83.89000'), ('Hetherton', 3681, '45.00000', '-84.36670'), ('Hillman', 685, '45.06590', '-83.90060'), ('Lewiston', 990, '44.88330', '-84.31660'), ('Lockwood Lake', 685, '44.91670', '-84.00000'), ('Long Lake', 685, '45.13340', '-83.98330')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ024': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alpena', 11304, '45.07280', '-83.43750'), ('Cathro', 11304, '45.15000', '-83.56660'), ('Devils Lake', 11304, '44.99000', '-83.50000'), ('Lachine', 685, '45.08340', '-83.73340'), ('Long Rapids', 292, '45.13350', '-83.73340'), ('Ossineke', 1059, '44.90720', '-83.43200'), ('Spratt', 685, '45.00000', '-83.76000'), ('The Town Of Hubbar', 1059, '44.88340', '-83.58330')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ025': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bendon', 276, '44.64340', '-85.85110'), ('Benzonia', 519, '44.61650', '-86.09790'), ('Beulah', 363, '44.62960', '-86.09550'), ('Elberta', 457, '44.62140', '-86.22970'), ('Frankfort', 1513, '44.63690', '-86.23400'), ('Honor', 299, '44.66680', '-86.02020'), ('Lake Ann', 276, '44.72570', '-85.84450'), ('Thompsonville', 457, '44.52070', '-85.93870')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ026': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bates', 1700, '44.76660', '-85.44000'), ('Fife Lake', 466, '44.57370', '-85.35330'), ('Grawn', 15155, '44.66670', '-85.68330'), ('Hannah', 1469, '44.58330', '-85.61670'), ('Interlochen', 276, '44.65000', '-85.75000'), ('Karlin', 402, '44.58330', '-85.76660'), ('Kingsley', 1469, '44.58430', '-85.53540'), ('Mapleton', 1700, '44.90000', '-85.51660'), ('Old Mission', 1700, '44.97250', '-85.48650'), ('Traverse City', 14532, '44.75440', '-85.60290'), ('Williamsburg', 1700, '44.76670', '-85.40000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ027': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Barker Creek', 1700, '44.78330', '-85.31660'), ('Bear Lake', 318, '44.71660', '-84.93330'), ('Darragh', 2226, '44.76660', '-85.05000'), ('Kalkaska', 2226, '44.73460', '-85.17990'), ('Rapid City', 1700, '44.83340', '-85.28330'), ('Sharon', 2226, '44.58330', '-85.08330'), ('Sigma', 2226, '44.66660', '-85.05000'), ('Smithville', 923, '44.52000', '-85.15000'), ('South Boardman', 394, '44.63330', '-85.25020')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ028': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Frederic', 1952, '44.78530', '-84.73340'), ('Grayling', 1952, '44.65730', '-84.70950'), ('Hartwick Pines State Park', 1952, '44.76000', '-84.69000'), ('Lovells', 1952, '44.81000', '-84.46670')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ029': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Comins', 2016, '44.80000', '-84.05000'), ('Fairview', 2016, '44.71660', '-84.05000'), ('Luzerne', 2016, '44.61660', '-84.26660'), ('Mack Lake', 2016, '44.56000', '-84.10000'), ('McKinley', 2016, '44.63330', '-83.93330'), ('Mio', 2016, '44.66300', '-84.13000'), ('Red Oak', 2016, '44.70000', '-84.28340')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ030': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Barton City', 364, '44.68330', '-83.60000'), ('Black River', 1059, '44.81660', '-83.31000'), ('Curran', 2016, '44.71660', '-83.80000'), ('Curtisville', 721, '44.56660', '-83.86660'), ('Glennie', 364, '44.56660', '-83.71660'), ('Harrisville', 514, '44.65670', '-83.30000'), ('Hubbard Lake', 1059, '44.80000', '-83.59000'), ('Lincoln', 364, '44.68520', '-83.41260'), ('Mikado', 5080, '44.56680', '-83.41670'), ('Spruce', 1059, '44.83410', '-83.46670')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ031': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Arcadia', 478, '44.51130', '-86.23330'), ('Brethren', 509, '44.30000', '-86.01670'), ('Copemish', 232, '44.48100', '-85.92390'), ('Dublin', 509, '44.18330', '-85.93330'), ('Eastlake', 466, '44.24550', '-86.29390'), ('Kaleva', 509, '44.37230', '-86.01300'), ('Manistee', 6586, '44.24460', '-86.32640'), ('Norwalk', 647, '44.33330', '-86.16660'), ('Onekama', 647, '44.36680', '-86.20310'), ('Parkdale', 466, '44.26660', '-86.30000'), ('Pierport', 647, '44.43340', '-86.23400'), ('Wellston', 509, '44.21670', '-85.95100'), ('Wildwood', 339, '44.41660', '-86.16660')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ032': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Boon', 169, '44.28340', '-85.60000'), ('Buckley', 550, '44.50390', '-85.67170'), ('Cadillac', 10000, '44.24830', '-85.41610'), ('Harrietta', 169, '44.30950', '-85.70050'), ('Manton', 1221, '44.41140', '-85.40040'), ('Meauwataka', 1221, '44.35000', '-85.53330'), ('Mesick', 447, '44.40360', '-85.71940'), ('Sherman', 447, '44.41670', '-85.70000'), ('Yuma', 447, '44.35000', '-85.75000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ033': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Falmouth', 584, '44.25000', '-85.08330'), ('Jennings', 923, '44.33330', '-85.28330'), ('Lake City', 923, '44.33030', '-85.20850'), ('Lucas', 584, '44.21670', '-85.28330'), ('McBain', 584, '44.19440', '-85.21440'), ('Merritt', 3749, '44.31670', '-84.93330'), ('Moddersville', 3749, '44.21670', '-84.95100'), ('Moorestown', 3749, '44.47000', '-84.95000'), ('Stittsville', 923, '44.45000', '-85.03000'), ('Vogel Center', 836, '44.18330', '-85.05000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ034': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Higgins Lake', 1133, '44.46000', '-84.73500'), ('Houghton Lake', 3749, '44.30000', '-84.76000'), ('Lake St. Helen', 2993, '44.36000', '-84.50000'), ('North Higgins Lake', 1133, '44.50000', '-84.73000'), ('Prudenville', 1737, '44.30000', '-84.67000'), ('Roscommon', 1133, '44.50000', '-84.59500'), ('Roscommon County Airport', 1513, '44.35500', '-84.68600'), ('South Higgins Lake', 1133, '44.44000', '-84.67000'), ('St. Helen', 2993, '44.36280', '-84.41860'), ('Twin Lakes Area', 2993, '44.23330', '-84.45000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ035': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Clear Lake', 721, '44.41660', '-84.25000'), ('Lupton', 721, '44.43330', '-84.01700'), ('Prescott', 286, '44.19140', '-83.93190'), ('Rifle River State Park', 721, '44.40000', '-83.99000'), ('Rose City', 721, '44.42100', '-84.11540'), ('Selkirk', 721, '44.31670', '-84.06670'), ('Skidway Lake', 3147, '44.19400', '-84.04420'), ('West Branch', 1926, '44.27570', '-84.23530')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ036': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Au Sable', 1533, '44.41080', '-83.33980'), ('East Tawas', 2951, '44.28500', '-83.48410'), ('Hale', 476, '44.38330', '-83.80500'), ('Long Lake', 476, '44.41660', '-83.86660'), ('National City', 476, '44.23330', '-83.71660'), ('Oscoda', 992, '44.42220', '-83.33480'), ('Sid Town', 2009, '44.44000', '-83.61000'), ('South Branch', 721, '44.46660', '-83.88330'), ('Tawas City', 2005, '44.27000', '-83.52100'), ('Whittemore', 476, '44.23310', '-83.80280'), ('Wilber', 2951, '44.39000', '-83.48000'), ('Wurtsmith Airfield', 5080, '44.46120', '-83.38450')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ037': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Custer', 318, '43.95030', '-86.21940'), ('Fountain', 175, '44.04780', '-86.17950'), ('Freesoil', 148, '44.10700', '-86.21670'), ('Ludington', 8357, '43.95710', '-86.44300'), ('Scottville', 1266, '43.95040', '-86.28000'), ('Walhalla', 312, '43.95370', '-86.11470')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ037': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Custer', 318, '43.95030', '-86.21940'), ('Fountain', 175, '44.04780', '-86.17950'), ('Freesoil', 148, '44.10700', '-86.21670'), ('Ludington', 8357, '43.95710', '-86.44300'), ('Scottville', 1266, '43.95040', '-86.28000'), ('Walhalla', 312, '43.95370', '-86.11470')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ038': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Baldwin', 1107, '43.89760', '-85.85240'), ('Bristol', 339, '44.10380', '-85.58370'), ('Chase', 2430, '43.88920', '-85.63550'), ('Idlewild', 1107, '43.88700', '-85.80250'), ('Irons', 1107, '44.14000', '-85.91580'), ('Luther', 339, '44.03870', '-85.68290'), ('Nirvana', 339, '43.90250', '-85.71200')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ039': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ashton', 251, '43.97300', '-85.50370'), ('Avondale', 836, '44.01580', '-85.22670'), ('Dighton', 236, '44.08780', '-85.34500'), ('Evart', 1738, '43.90240', '-85.27380'), ('Gibos Corners', 393, '43.85720', '-85.14720'), ('Hersey', 374, '43.84970', '-85.44210'), ('Highland', 584, '44.14550', '-85.26630'), ('Ina', 584, '44.11700', '-85.28670'), ('Le Roy', 267, '44.03850', '-85.45270'), ('Marion', 836, '44.10280', '-85.14700'), ('Park Lake', 584, '44.14580', '-85.20620'), ('Pisgah Heights', 836, '44.09450', '-85.22600'), ('Reed City', 2430, '43.87250', '-85.50920'), ('Sears', 1738, '43.89830', '-85.18470'), ('Stambaugh Corner', 354, '43.94450', '-85.42530'), ('Tustin', 237, '44.10200', '-85.45810')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIZ040': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Clare', 3173, '43.82420', '-84.76500'), ('Farwell', 855, '43.83570', '-84.86770'), ('Lake', 855, '43.85200', '-85.00520'), ('Lake George', 855, '43.96330', '-84.94680'), ('Leota', 3749, '44.13950', '-84.88950'), ('Temple', 836, '44.03080', '-85.02830')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIZ041': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Beaverton', 1106, '43.88170', '-84.48760'), ('Gladwin', 3001, '43.98390', '-84.49160'), ('Hockaday', 3001, '44.08330', '-84.41660'), ('Rhodes', 533, '43.90000', '-84.18340'), ('Skeels', 3001, '44.08340', '-84.58310'), ('Winegars', 1150, '43.93340', '-84.36670'), ('Wooden Shoe Village', 3001, '43.98330', '-84.35000')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ042': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alger', 2569, '44.11660', '-84.11660'), ('Au Gres', 1028, '44.04420', '-83.69280'), ('Maple Ridge', 314, '44.13340', '-83.91670'), ('Omer', 337, '44.04950', '-83.85720'), ('Standish', 1581, '43.98060', '-83.96340'), ('Sterling', 533, '44.03210', '-84.02030'), ('Turner', 158, '44.14180', '-83.78820'), ('Twining', 192, '44.11260', '-83.80780')], 'partOfState': 'northern', 'wfo': 'APX'}, +'MIZ043': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Colfax', 254, '43.74330', '-86.07920'), ('Crystal Valley', 254, '43.77380', '-86.23750'), ('Elbridge', 254, '43.68580', '-86.21880'), ('Hart', 1950, '43.69710', '-86.36310'), ('Hesperia', 954, '43.56820', '-86.04020'), ('Little Point Sable', 1050, '43.63470', '-86.53750'), ('Mears', 1950, '43.68200', '-86.41970'), ('New Era', 461, '43.55950', '-86.34690'), ('Rothbury', 416, '43.50740', '-86.34840'), ('St. Huberts', 846, '43.54250', '-86.08500'), ('Stony Lake', 520, '43.55970', '-86.50000'), ('Walkerville', 254, '43.71470', '-86.12570'), ('Weare', 1950, '43.74630', '-86.33950')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ043': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Colfax', 254, '43.74330', '-86.07920'), ('Crystal Valley', 254, '43.77380', '-86.23750'), ('Elbridge', 254, '43.68580', '-86.21880'), ('Hart', 1950, '43.69710', '-86.36310'), ('Hesperia', 954, '43.56820', '-86.04020'), ('Little Point Sable', 1050, '43.63470', '-86.53750'), ('Mears', 1950, '43.68200', '-86.41970'), ('New Era', 461, '43.55950', '-86.34690'), ('Rothbury', 416, '43.50740', '-86.34840'), ('St. Huberts', 846, '43.54250', '-86.08500'), ('Stony Lake', 520, '43.55970', '-86.50000'), ('Walkerville', 254, '43.71470', '-86.12570'), ('Weare', 1950, '43.74630', '-86.33950')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ044': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bitely', 1107, '43.74680', '-85.86170'), ('Bridgeton', 4224, '43.34670', '-85.93720'), ('Croton', 1336, '43.43880', '-85.66080'), ('Croton Heights', 1420, '43.45630', '-85.63470'), ('Fremont', 4224, '43.46150', '-85.95220'), ('Grant', 881, '43.33410', '-85.81010'), ('Hawkins', 2430, '43.80050', '-85.60300'), ('Newaygo', 1670, '43.42000', '-85.80050'), ('Reeman', 4224, '43.44500', '-86.00870'), ('White Cloud', 1420, '43.55290', '-85.77260'), ('Woodland Park', 1107, '43.71470', '-85.86130'), ('Woodville', 1420, '43.66580', '-85.68120'), ('Wooster', 4224, '43.51050', '-85.87380')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ045': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Altona', 1112, '43.53970', '-85.31350'), ('Barryton', 381, '43.74960', '-85.14270'), ('Big Rapids', 10849, '43.70390', '-85.48630'), ('Chippewa Lake', 440, '43.74380', '-85.29720'), ('Mecosta', 440, '43.61890', '-85.23050'), ('Morley', 495, '43.49120', '-85.44600'), ('Paris', 12603, '43.77330', '-85.50250'), ('Rodney', 440, '43.67370', '-85.32830'), ('Stanwood', 204, '43.58010', '-85.44790'), ('Sylvester', 440, '43.53970', '-85.25450')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIZ046': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Beal City', 345, '43.66990', '-84.90980'), ('Blanchard', 1244, '43.51970', '-85.08000'), ('Brinton', 696, '43.77030', '-85.01030'), ('Delwin', 333, '43.69720', '-84.67800'), ('Loomis', 1296, '43.79370', '-84.66620'), ('Mount Pleasant', 25946, '43.59660', '-84.77830'), ('Rosebush', 379, '43.69960', '-84.76580'), ('Shepherd', 1536, '43.52460', '-84.69380'), ('Weidman', 879, '43.69400', '-84.97290'), ('Winn', 23285, '43.52330', '-84.90170')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIZ047': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bombay', 41685, '43.74170', '-84.26640'), ('Coleman', 1296, '43.75670', '-84.58670'), ('Edenville', 943, '43.80000', '-84.38980'), ('Gordonville', 943, '43.56780', '-84.36940'), ('Midland', 41685, '43.62360', '-84.22940'), ('North Bradley', 1296, '43.71140', '-84.49000'), ('Oil City', 1413, '43.61080', '-84.58830'), ('Pleasant Valley', 3828, '43.50970', '-84.58810'), ('Porter Township', 1339, '43.51000', '-84.43500'), ('Poseyville', 41685, '43.53970', '-84.24940'), ('Sanford', 943, '43.67560', '-84.38060')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ048': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Auburn', 2011, '43.60190', '-84.07710'), ('Bay City', 36817, '43.59000', '-83.88860'), ('Bentley', 533, '43.94810', '-84.13440'), ('Crump', 2011, '43.75390', '-84.08720'), ('Essexville', 3766, '43.61120', '-83.84350'), ('Kawkawlin', 38936, '43.65320', '-83.94720'), ('Linwood', 1386, '43.73890', '-83.97670'), ('Mount Forest', 1386, '43.88720', '-84.11420'), ('Munger', 1395, '43.52300', '-83.77460'), ('Pinconning', 1386, '43.85790', '-83.96460'), ('Willard', 2011, '43.66830', '-84.10830')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ049': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bad Axe', 3462, '43.80280', '-82.99690'), ('Bay Port', 1207, '43.84830', '-83.37090'), ('Caseville', 888, '43.94220', '-83.27460'), ('Elkton', 863, '43.81890', '-83.18070'), ('Harbor Beach', 1837, '43.84660', '-82.65490'), ('Helena', 2089, '43.77470', '-82.69080'), ('Huron City', 310, '44.02920', '-82.83280'), ('Ivanhoe', 2643, '43.70520', '-83.09780'), ('Kinde', 534, '43.93990', '-82.99490'), ('Owendale', 296, '43.72700', '-83.26770'), ('Parisville', 233, '43.71390', '-82.79940'), ('Pigeon', 1207, '43.82950', '-83.27000'), ('Pinnebog', 473, '43.93530', '-83.10390'), ('Port Austin', 737, '44.04270', '-82.99530'), ('Port Hope', 310, '43.93960', '-82.71510'), ('Rapson', 3484, '43.85610', '-82.88250'), ('Redman', 310, '43.92920', '-82.83420'), ('Sebewaing', 1974, '43.73180', '-83.45100'), ('Ubly', 873, '43.71090', '-82.93460'), ('White Rock', 127, '43.70990', '-82.61500')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ050': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bailey', 376, '43.27780', '-85.81030'), ('Brunswick', 4224, '43.43300', '-86.04030'), ('Casnovia', 315, '43.23480', '-85.79130'), ('Cloverville', 1124, '43.19050', '-86.16530'), ('Dalton', 1006, '43.31870', '-86.26170'), ('Fruitport', 1124, '43.12570', '-86.15590'), ('Holton', 1328, '43.41330', '-86.07950'), ('Lakewood Club', 1006, '43.37660', '-86.25510'), ('Montague', 2407, '43.41230', '-86.36290'), ('Muskegon', 40105, '43.22760', '-86.25550'), ('Norton Shores', 22527, '43.16000', '-86.25250'), ('Ravenna', 1206, '43.18960', '-85.94030'), ('Roosevelt Park', 3890, '43.19750', '-86.27350'), ('Slocum', 1206, '43.22220', '-85.90970'), ('Sullivan', 4455, '43.18370', '-86.05300'), ('Twin Lake', 1613, '43.36900', '-86.17990'), ('Vickeryville', 1206, '43.19220', '-85.96530'), ('Wabaningo', 2276, '43.37050', '-86.42170'), ('Whitehall', 2884, '43.39830', '-86.34130'), ('Wolf Lake', 4455, '43.24550', '-86.10590')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ050': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bailey', 376, '43.27780', '-85.81030'), ('Brunswick', 4224, '43.43300', '-86.04030'), ('Casnovia', 315, '43.23480', '-85.79130'), ('Cloverville', 1124, '43.19050', '-86.16530'), ('Dalton', 1006, '43.31870', '-86.26170'), ('Fruitport', 1124, '43.12570', '-86.15590'), ('Holton', 1328, '43.41330', '-86.07950'), ('Lakewood Club', 1006, '43.37660', '-86.25510'), ('Montague', 2407, '43.41230', '-86.36290'), ('Muskegon', 40105, '43.22760', '-86.25550'), ('Norton Shores', 22527, '43.16000', '-86.25250'), ('Ravenna', 1206, '43.18960', '-85.94030'), ('Roosevelt Park', 3890, '43.19750', '-86.27350'), ('Slocum', 1206, '43.22220', '-85.90970'), ('Sullivan', 4455, '43.18370', '-86.05300'), ('Twin Lake', 1613, '43.36900', '-86.17990'), ('Vickeryville', 1206, '43.19220', '-85.96530'), ('Wabaningo', 2276, '43.37050', '-86.42170'), ('Whitehall', 2884, '43.39830', '-86.34130'), ('Wolf Lake', 4455, '43.24550', '-86.10590')], 'partOfState': 'west central', 'wfo': 'GRR'}, +'MIZ051': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Amble', 528, '43.43130', '-85.38850'), ('Butternut', 1190, '43.18330', '-84.91550'), ('Carson City', 1190, '43.17840', '-84.84690'), ('Cedar Lake', 1244, '43.40620', '-84.97500'), ('Coral', 1585, '43.36280', '-85.40280'), ('Crystal', 1190, '43.26300', '-84.91470'), ('Edmore', 1244, '43.40760', '-85.03770'), ('Entrican', 1504, '43.35030', '-85.15370'), ('Fenwick', 705, '43.14920', '-85.08020'), ('Gowen', 7935, '43.25170', '-85.30200'), ('Greenville', 7935, '43.17800', '-85.25390'), ('Howard City', 1585, '43.39520', '-85.46620'), ('Kings Corner', 705, '43.24920', '-85.07330'), ('Lakeview', 1112, '43.44650', '-85.27550'), ('Langston', 7935, '43.31380', '-85.24380'), ('McBride', 232, '43.35280', '-85.04310'), ('Pierson', 185, '43.31900', '-85.49750'), ('Sheridan', 705, '43.21040', '-85.07260'), ('Sidney', 1504, '43.25000', '-85.13300'), ('Six Lakes', 1244, '43.42500', '-85.15000'), ('Stanton', 1504, '43.29310', '-85.07930'), ('Trufant', 1585, '43.31380', '-85.35450'), ('Turk Lake', 7935, '43.27080', '-85.25630'), ('Vestaburg', 1244, '43.39920', '-84.90550'), ('Westville', 236, '43.35780', '-85.08370'), ('Wyman', 1244, '43.45500', '-85.04300')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIZ052': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alma', 9275, '43.37940', '-84.65480'), ('Ashley', 526, '43.18770', '-84.47630'), ('Bannister', 1055, '43.13250', '-84.42170'), ('Breckenridge', 1339, '43.40770', '-84.47840'), ('Elm Hall', 9275, '43.36500', '-84.83530'), ('Forest Hill', 9275, '43.43670', '-84.68550'), ('Ithaca', 3098, '43.29230', '-84.60480'), ('Perrinton', 439, '43.18170', '-84.67860'), ('Riverdale', 9275, '43.38550', '-84.83550'), ('St. Louis', 4494, '43.40930', '-84.61570'), ('Sumner', 1190, '43.30700', '-84.81580'), ('Wheeler', 1339, '43.41280', '-84.43780')], 'partOfState': 'central', 'wfo': 'GRR'}, +'MIZ053': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Arthur', 1375, '43.44290', '-83.75110'), ('Birch Run', 1653, '43.25010', '-83.79010'), ('Bridgeport', 7849, '43.37580', '-83.88320'), ('Burt', 1122, '43.23680', '-83.90630'), ('Chesaning', 2548, '43.18460', '-84.11990'), ('Fenmore', 1055, '43.17280', '-84.34530'), ('Fosters', 1169, '43.29810', '-83.91640'), ('Frankenmuth', 4838, '43.33050', '-83.74020'), ('Freeland', 5147, '43.52110', '-84.11770'), ('Hemlock', 1585, '43.41580', '-84.23160'), ('Layton Corners', 603, '43.17580', '-83.98830'), ('Marion Springs', 526, '43.24440', '-84.32720'), ('Merrill', 782, '43.40930', '-84.33530'), ('Nelson', 1601, '43.33420', '-84.22970'), ('Oakley', 339, '43.14310', '-84.16860'), ('Saginaw', 61799, '43.41960', '-83.94950'), ('Shields', 6590, '43.41770', '-84.07320'), ('St. Charles', 2215, '43.29940', '-84.14970'), ('Zilwaukee', 1799, '43.48000', '-83.92180')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ054': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Akron', 461, '43.56700', '-83.51430'), ('Bay Park', 421, '43.65470', '-83.58920'), ('Caro', 4145, '43.48800', '-83.40210'), ('Cass City', 2643, '43.60250', '-83.17520'), ('Deford', 2643, '43.51240', '-83.18960'), ('East Dayton', 450, '43.41080', '-83.28530'), ('Ellington', 4054, '43.55390', '-83.32140'), ('Fairgrove', 627, '43.52400', '-83.54170'), ('Fostoria', 1010, '43.25540', '-83.37250'), ('Gagetown', 389, '43.65680', '-83.24520'), ('Kingston', 450, '43.41360', '-83.18670'), ('Mayville', 1055, '43.33600', '-83.35330'), ('Millington', 1137, '43.28030', '-83.52880'), ('Quanicassee', 1375, '43.58400', '-83.67350'), ('Reese', 1375, '43.45180', '-83.68860'), ('Unionville', 605, '43.65410', '-83.46690'), ('Vassar', 2823, '43.37150', '-83.57870'), ('Watrousville', 592, '43.45220', '-83.52310')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ055': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Applegate', 287, '43.35490', '-82.63650'), ('Argyle', 821, '43.56420', '-82.93610'), ('Brown City', 1334, '43.21160', '-82.98870'), ('Carsonville', 502, '43.42570', '-82.67260'), ('Croswell', 2467, '43.27370', '-82.61870'), ('Decker', 2104, '43.45910', '-83.04960'), ('Deckerville', 944, '43.52560', '-82.74210'), ('Forestville', 127, '43.66070', '-82.61310'), ('Juhl', 2745, '43.35970', '-82.94640'), ('Lexington', 1104, '43.26850', '-82.53380'), ('Marlette', 2104, '43.32650', '-83.08070'), ('Melvin', 160, '43.18460', '-82.86350'), ('Minden', 242, '43.67100', '-82.77520'), ('New Greenleaf', 2643, '43.66170', '-83.07830'), ('Peck', 599, '43.25910', '-82.81650'), ('Port Sanilac', 658, '43.43010', '-82.54810'), ('Richmondville', 127, '43.57330', '-82.59760'), ('Roseburg', 2063, '43.19000', '-82.74390'), ('Sandusky', 2745, '43.42290', '-82.83180'), ('Watertown', 2745, '43.34110', '-82.82830')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ056': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allendale', 11555, '42.98570', '-85.95180'), ('Bauer', 7160, '42.92130', '-85.90220'), ('Beechwood', 2963, '42.79700', '-86.12590'), ('Coopersville', 3910, '43.06540', '-85.93380'), ('Drenthe', 5805, '42.78280', '-85.94000'), ('Eastmanville', 11555, '43.01700', '-85.95630'), ('Grand Haven', 11168, '43.05530', '-86.22420'), ('Grand Valley', 17211, '42.97450', '-85.86970'), ('Holland', 35048, '42.77170', '-86.10220'), ('Hudsonville', 7160, '42.86500', '-85.86310'), ('Jamestown', 7160, '42.82550', '-85.84250'), ('Jenison', 17211, '42.90870', '-85.82980'), ('Lamont', 11555, '43.00870', '-85.90620'), ('Macatawa', 2963, '42.76970', '-86.20620'), ('Marne', 17279, '43.03620', '-85.82780'), ('Nunica', 1124, '43.07970', '-86.06720'), ('Olive Center', 5805, '42.91420', '-86.08130'), ('Port Sheldon', 2963, '42.89950', '-86.19970'), ('Spring Lake', 2514, '43.07480', '-86.19050'), ('Wright', 3968, '43.11080', '-85.80870'), ('Zeeland', 5805, '42.81310', '-86.01310')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIZ056': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allendale', 11555, '42.98570', '-85.95180'), ('Bauer', 7160, '42.92130', '-85.90220'), ('Beechwood', 2963, '42.79700', '-86.12590'), ('Coopersville', 3910, '43.06540', '-85.93380'), ('Drenthe', 5805, '42.78280', '-85.94000'), ('Eastmanville', 11555, '43.01700', '-85.95630'), ('Grand Haven', 11168, '43.05530', '-86.22420'), ('Grand Valley', 17211, '42.97450', '-85.86970'), ('Holland', 35048, '42.77170', '-86.10220'), ('Hudsonville', 7160, '42.86500', '-85.86310'), ('Jamestown', 7160, '42.82550', '-85.84250'), ('Jenison', 17211, '42.90870', '-85.82980'), ('Lamont', 11555, '43.00870', '-85.90620'), ('Macatawa', 2963, '42.76970', '-86.20620'), ('Marne', 17279, '43.03620', '-85.82780'), ('Nunica', 1124, '43.07970', '-86.06720'), ('Olive Center', 5805, '42.91420', '-86.08130'), ('Port Sheldon', 2963, '42.89950', '-86.19970'), ('Spring Lake', 2514, '43.07480', '-86.19050'), ('Wright', 3968, '43.11080', '-85.80870'), ('Zeeland', 5805, '42.81310', '-86.01310')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIZ057': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ada', 20942, '42.95420', '-85.48880'), ('Alaska', 885, '42.84000', '-85.47800'), ('Alto', 3983, '42.85670', '-85.38020'), ('Belmont', 13712, '43.07550', '-85.60920'), ('Byron Center', 3777, '42.81220', '-85.72280'), ('Caledonia', 1102, '42.79390', '-85.51320'), ('Cannonsburg', 20942, '43.05380', '-85.46970'), ('Cascade', 20942, '42.91220', '-85.49800'), ('Cedar Springs', 3112, '43.22140', '-85.55320'), ('Comstock Park', 10674, '43.04500', '-85.67230'), ('Cutlerville', 15114, '42.84150', '-85.66160'), ('Dutton', 45255, '42.84120', '-85.58500'), ('East Grand Rapids', 10764, '42.94640', '-85.60740'), ('Grand Rapids', 189126, '42.96120', '-85.65570'), ('Grandville', 16263, '42.90380', '-85.75610'), ('Grattan', 5877, '43.08420', '-85.38120'), ('Kent City', 1061, '43.21910', '-85.75210'), ('Kentwood', 45255, '42.88240', '-85.59220'), ('Lowell', 4013, '42.93320', '-85.34570'), ('North Dorr', 11228, '42.76870', '-85.76200'), ('Rockford', 4626, '43.12620', '-85.55660'), ('Sand Lake', 456, '43.29090', '-85.51820'), ('Sparta', 4159, '43.15790', '-85.70940'), ('Walker', 21842, '42.98470', '-85.74770'), ('Wyoming', 63891, '42.89240', '-85.70250')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIZ058': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Belding', 5877, '43.09650', '-85.23300'), ('Clarksville', 317, '42.84150', '-85.24200'), ('Hubbardston', 394, '43.09420', '-84.84140'), ('Ionia', 10569, '42.98510', '-85.05800'), ('Lake Odessa', 2272, '42.78280', '-85.13740'), ('Lyons', 726, '42.98320', '-84.94540'), ('Muir', 634, '42.99740', '-84.93550'), ('Orleans', 5877, '43.06870', '-85.13500'), ('Palo', 667, '43.11250', '-84.98550'), ('Pewamo', 560, '43.00130', '-84.84650'), ('Portland', 3789, '42.87120', '-84.90110'), ('Saranac', 1326, '42.92980', '-85.20940'), ('Sebewa', 610, '42.79950', '-84.95580'), ('Smyrna', 5877, '43.05930', '-85.26280')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIZ059': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bath', 10230, '42.81870', '-84.44870'), ('Dewitt', 4702, '42.83590', '-84.57560'), ('Eagle', 130, '42.80980', '-84.79050'), ('Elsie', 1055, '43.08900', '-84.39060'), ('Eureka', 526, '43.10370', '-84.51380'), ('Fowler', 1136, '43.00400', '-84.74030'), ('Maple Rapids', 643, '43.10660', '-84.69010'), ('Ovid', 1514, '43.00250', '-84.37450'), ('St. Johns', 7485, '43.00020', '-84.55750'), ('Wacousta', 7579, '42.82780', '-84.70080'), ('Westphalia', 876, '42.92970', '-84.79780')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIZ060': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bancroft', 616, '42.87680', '-84.06550'), ('Bennington', 16322, '42.93530', '-84.24190'), ('Byron', 595, '42.82550', '-83.94890'), ('Carland', 1442, '43.05810', '-84.30470'), ('Corunna', 3381, '42.98400', '-84.11670'), ('Durand', 3933, '42.91300', '-83.98830'), ('Henderson', 362, '43.08600', '-84.19650'), ('Juddville', 603, '43.05860', '-83.98750'), ('Laingsburg', 1223, '42.89000', '-84.34880'), ('Lennon', 517, '42.98530', '-83.93140'), ('Morrice', 882, '42.83800', '-84.17950'), ('New Lothrop', 603, '43.11610', '-83.96890'), ('Owosso', 15713, '42.99520', '-84.17580'), ('Perry', 2065, '42.82090', '-84.22830'), ('Shaftsburg', 2163, '42.80470', '-84.29310'), ('Vernon', 847, '42.93970', '-84.02990')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ061': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Argentine', 2285, '42.79020', '-83.83200'), ('Burton', 27617, '42.99670', '-83.61960'), ('Clio', 2483, '43.17710', '-83.73610'), ('Davison', 5536, '43.03210', '-83.51830'), ('Fenton', 10582, '42.80000', '-83.71420'), ('Flint', 124943, '43.02280', '-83.69280'), ('Flushing', 8348, '43.06490', '-83.84160'), ('Gaines', 366, '42.87230', '-83.91180'), ('Genesee', 3292, '43.11250', '-83.61780'), ('Goodrich', 1353, '42.91660', '-83.50830'), ('Grand Blanc', 8242, '42.92580', '-83.61870'), ('Linden', 2861, '42.81920', '-83.78150'), ('Montrose', 1619, '43.17560', '-83.89260'), ('Mount Morris', 3194, '43.11630', '-83.69890'), ('Otisville', 882, '43.16530', '-83.52430'), ('Rankin', 4091, '42.91440', '-83.75060'), ('Swartz Creek', 5102, '42.96210', '-83.82650')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ062': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Almont', 2803, '42.92140', '-83.04450'), ('Attica', 3869, '43.03230', '-83.16230'), ('Burnside', 1244, '43.21060', '-83.07720'), ('Clifford', 324, '43.31430', '-83.17880'), ('Columbiaville', 815, '43.15800', '-83.40780'), ('Dryden', 815, '42.94540', '-83.12450'), ('Goodland Township', 3869, '43.11200', '-83.04750'), ('Hadley', 1252, '42.95440', '-83.40330'), ('Imlay City', 3869, '43.01640', '-83.07800'), ('Kings Mill', 1027, '43.14220', '-83.17280'), ('Lapeer', 9072, '43.04700', '-83.32490'), ('Metamora', 507, '42.94120', '-83.29060'), ('North Branch', 1027, '43.22980', '-83.19170'), ('Otter Lake', 437, '43.21330', '-83.45840')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ063': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Adair', 4141, '42.79810', '-82.63390'), ('Algonac', 4613, '42.62210', '-82.53460'), ('Berville', 1548, '42.90830', '-82.88310'), ('Brockway', 2063, '43.07440', '-82.76560'), ('Capac', 1775, '43.01330', '-82.92930'), ('Emmett', 251, '42.99110', '-82.76590'), ('Fair Haven', 1505, '42.67740', '-82.64810'), ('Harsens Island', 3394, '42.59550', '-82.57850'), ('Jeddo', 2467, '43.15150', '-82.58380'), ('Lakeport', 33694, '43.11500', '-82.49730'), ('Lynn Township', 148, '43.11750', '-82.92930'), ('Marine City', 4652, '42.71420', '-82.50110'), ('Marysville', 9684, '42.91020', '-82.47980'), ('Port Huron', 32338, '42.99370', '-82.43360'), ('Ruby', 1974, '43.04220', '-82.60750'), ('Smiths Creek', 1974, '42.91440', '-82.60100'), ('St. Clair', 5802, '42.82470', '-82.49290'), ('Wadhams', 1974, '42.98720', '-82.53860'), ('Yale', 2063, '43.12800', '-82.79640')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ064': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allegan', 4838, '42.52830', '-85.84550'), ('Bradley', 3939, '42.63030', '-85.64300'), ('Burnips', 546, '42.73190', '-85.83940'), ('Castle Park', 954, '42.74800', '-86.20690'), ('Dorr', 3939, '42.72530', '-85.72250'), ('Douglas', 1214, '42.64180', '-86.21040'), ('Fennville', 1459, '42.59480', '-86.10520'), ('Ganges', 1214, '42.57690', '-86.21030'), ('Glenn', 1214, '42.52030', '-86.22750'), ('Hamilton', 1459, '42.67770', '-86.00620'), ('Hopkins', 592, '42.62530', '-85.76380'), ('Martin', 435, '42.53710', '-85.63750'), ('Otsego', 3933, '42.45770', '-85.69710'), ('Plainwell', 3933, '42.44510', '-85.64410'), ('Pullman', 1459, '42.48370', '-86.09130'), ('Saugatuck', 1065, '42.65610', '-86.20580'), ('Shelbyville', 435, '42.59420', '-85.63720'), ('Wayland', 3939, '42.67190', '-85.64140')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIZ065': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Assyria', 1401, '42.46450', '-85.13130'), ('Banfield', 3605, '42.46350', '-85.28850'), ('Delton', 1526, '42.49970', '-85.40800'), ('Dowling', 6549, '42.52250', '-85.25300'), ('Freeport', 444, '42.76350', '-85.31450'), ('Hastings', 7095, '42.65020', '-85.28850'), ('Hickory Corners', 1526, '42.44130', '-85.37550'), ('Irving', 1966, '42.68830', '-85.41800'), ('Lacey', 1654, '42.49300', '-85.19120'), ('Middleville', 2721, '42.71340', '-85.46550'), ('Nashville', 1684, '42.60290', '-85.09390'), ('Orangeville', 435, '42.55280', '-85.51920'), ('Woodbury', 2272, '42.76120', '-85.07450'), ('Woodland', 495, '42.72650', '-85.13490')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIZ066': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bellevue', 1365, '42.44420', '-85.01860'), ('Brookfield', 8389, '42.45100', '-84.79670'), ('Charlotte', 8389, '42.56440', '-84.83250'), ('Dimondale', 1342, '42.64880', '-84.64910'), ('Eaton Rapids', 5330, '42.51000', '-84.65390'), ('Grand Ledge', 7813, '42.75260', '-84.74860'), ('Gresham', 8389, '42.64130', '-84.89530'), ('Kalamo', 776, '42.54270', '-85.01280'), ('Mulliken', 557, '42.76300', '-84.89510'), ('Olivet', 1758, '42.44610', '-84.92360'), ('Potterville', 2168, '42.62800', '-84.74580'), ('Sunfield', 591, '42.76170', '-84.99170'), ('Vermontville', 789, '42.62600', '-85.02610'), ('Waverly', 16194, '42.73920', '-84.62080')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIZ067': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Aurelius', 6714, '42.52420', '-84.52220'), ('Bell Oak', 1698, '42.72870', '-84.17370'), ('Bunker Hill', 437, '42.47550', '-84.31750'), ('Dansville', 429, '42.55530', '-84.30250'), ('East Lansing', 46525, '42.73600', '-84.48430'), ('Eden', 6714, '42.52380', '-84.42830'), ('Edgemont Park', 2442, '42.74670', '-84.59370'), ('Fitchburg', 1260, '42.43920', '-84.27780'), ('Haslett', 11283, '42.75270', '-84.40580'), ('Holt', 11315, '42.63730', '-84.52560'), ('Lansing', 119128, '42.70910', '-84.55400'), ('Leslie', 2044, '42.45000', '-84.43080'), ('Mason', 6714, '42.58170', '-84.44390'), ('Okemos', 22805, '42.70820', '-84.41440'), ('Onondaga', 5330, '42.44420', '-84.56220'), ('Stockbridge', 1260, '42.45070', '-84.17830'), ('Webberville', 1503, '42.66740', '-84.18020'), ('Williamston', 3441, '42.68980', '-84.28220')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIZ068': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Brighton', 6701, '42.53010', '-83.78480'), ('Chilson', 6701, '42.52690', '-83.86170'), ('Cohoctah', 573, '42.75970', '-83.94860'), ('Conway Township', 2972, '42.73300', '-84.09600'), ('Fowlerville', 2972, '42.66010', '-84.07230'), ('Gregory', 1260, '42.45970', '-84.08450'), ('Hamburg', 3251, '42.45170', '-83.79970'), ('Hartland', 6701, '42.65570', '-83.75470'), ('Howell', 9232, '42.60940', '-83.93570'), ('Parkers Corners', 2972, '42.56810', '-84.11330'), ('Pinckney', 2141, '42.45450', '-83.94550'), ('Tyrone Township', 8444, '42.73300', '-83.75000')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ069': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Birmingham', 19291, '42.54480', '-83.21650'), ('Bloomfield Hills', 3940, '42.57890', '-83.24740'), ('Clarkston', 962, '42.73540', '-83.42110'), ('Davisburg', 5595, '42.75240', '-83.54030'), ('Farmington', 10423, '42.46320', '-83.37730'), ('Ferndale', 22105, '42.45930', '-83.13100'), ('Highland', 5511, '42.63810', '-83.61720'), ('Holly', 6135, '42.79900', '-83.62260'), ('Lake Orion', 2715, '42.78370', '-83.24430'), ('Leonard', 332, '42.86590', '-83.14320'), ('Milford', 6272, '42.58570', '-83.60110'), ('Novi', 47386, '42.47550', '-83.49050'), ('Orchard Lake', 2245, '42.58240', '-83.37750'), ('Ortonville', 1535, '42.85140', '-83.44420'), ('Oxford', 3540, '42.82100', '-83.25400'), ('Pontiac', 66337, '42.64910', '-83.28720'), ('Rochester', 10467, '42.68670', '-83.12380'), ('Royal Oak', 60062, '42.50860', '-83.15460'), ('Southfield', 78296, '42.47560', '-83.25920'), ('South Lyon', 10036, '42.46070', '-83.65130'), ('Troy', 72884, '42.58020', '-83.14310'), ('Waterford', 73150, '42.66290', '-83.38800'), ('White Lake', 4727, '42.65450', '-83.50490')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ070': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Armada', 1573, '42.84100', '-82.88350'), ('Fraser', 15297, '42.53970', '-82.94860'), ('Macomb Township', 18405, '42.67260', '-82.91770'), ('Memphis', 1129, '42.89530', '-82.76950'), ('Mount Clemens', 17312, '42.59810', '-82.88190'), ('New Baltimore', 7405, '42.68310', '-82.73810'), ('New Haven', 2331, '42.73260', '-82.79410'), ('Richmond', 4897, '42.80900', '-82.75460'), ('Romeo', 3721, '42.80420', '-83.00530'), ('St. Clair Shores', 63096, '42.49310', '-82.89110'), ('Sterling Heights', 124471, '42.58000', '-83.03050'), ('Utica', 4577, '42.62840', '-83.02090'), ('Warren', 138247, '42.49300', '-83.02820'), ('Washington', 48655, '42.72440', '-83.03610')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ071': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Bangor', 1933, '42.31150', '-86.11450'), ('Bloomingdale', 528, '42.38340', '-85.95780'), ('Breedsville', 235, '42.34710', '-86.07090'), ('Covert', 3782, '42.29370', '-86.26220'), ('Decatur', 1838, '42.10970', '-85.97340'), ('Glendale', 503, '42.30280', '-85.95630'), ('Gobles', 815, '42.36190', '-85.87670'), ('Grand Junction', 235, '42.40420', '-86.07300'), ('Hartford', 2476, '42.20750', '-86.16620'), ('Keeler', 2476, '42.11280', '-86.16670'), ('Kendall', 815, '42.36170', '-85.81330'), ('Lacota', 235, '42.41350', '-86.12970'), ('Lawrence', 1059, '42.21870', '-86.05280'), ('Lawton', 1859, '42.16720', '-85.84640'), ('Mattawan', 2536, '42.21400', '-85.78760'), ('McDonald', 2476, '42.26530', '-86.15700'), ('Mentha', 815, '42.35720', '-85.77470'), ('Paw Paw', 3363, '42.21800', '-85.89000'), ('Pine Grove', 815, '42.35380', '-85.86280'), ('South Haven', 5021, '42.40040', '-86.27250')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIZ072': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alamo', 3937, '42.37530', '-85.70780'), ('Augusta', 899, '42.33760', '-85.35140'), ('Climax', 791, '42.23940', '-85.33700'), ('Comstock', 6265, '42.28870', '-85.51330'), ('Cooper', 1958, '42.37630', '-85.61030'), ('Eastwood', 6265, '42.30200', '-85.54410'), ('Fulton', 1111, '42.11500', '-85.35250'), ('Galesburg', 1988, '42.29060', '-85.41760'), ('Kalamazoo', 77145, '42.27470', '-85.58830'), ('Midland Park', 1526, '42.39080', '-85.38550'), ('Oshtemo', 9122, '42.25880', '-85.67750'), ('Parchment', 1936, '42.32690', '-85.56550'), ('Portage', 44897, '42.20140', '-85.59060'), ('Richland', 593, '42.37560', '-85.45610'), ('Schoolcraft', 1587, '42.11520', '-85.63350'), ('Scotts', 1260, '42.19580', '-85.41300'), ('South Gull Lake', 1526, '42.38750', '-85.39670'), ('Vicksburg', 2320, '42.12040', '-85.53420'), ('Westwood', 9122, '42.30340', '-85.63010')], 'partOfState': 'southwest', 'wfo': 'GRR'}, +'MIZ073': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Albion', 9144, '42.24640', '-84.75690'), ('Athens', 1111, '42.08580', '-85.23620'), ('Battle Creek', 53364, '42.29890', '-85.22900'), ('Beford', 3605, '42.39530', '-85.23220'), ('Brownlee Park', 2588, '42.32420', '-85.13370'), ('Burlington', 405, '42.10480', '-85.07910'), ('Ceresco', 2536, '42.27180', '-85.06130'), ('Homer', 1851, '42.14550', '-84.81000'), ('Marengo', 10066, '42.27130', '-84.84870'), ('Marshall', 7459, '42.26170', '-84.95840'), ('Pine Creek', 1111, '42.16550', '-85.25620'), ('Springfield', 5582, '42.32400', '-85.23760'), ('Tekonsha', 712, '42.09470', '-84.98930')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIZ074': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Brooklyn', 1176, '42.10550', '-84.24870'), ('Clark Lake', 493, '42.12130', '-84.34500'), ('Concord', 1101, '42.17520', '-84.64390'), ('Grass Lake', 1082, '42.25090', '-84.20600'), ('Hanover', 424, '42.10060', '-84.55270'), ('Horton', 481, '42.15030', '-84.51720'), ('Jackson', 36316, '42.24320', '-84.40480'), ('Leoni', 4863, '42.24380', '-84.26920'), ('Michigan Center', 4641, '42.22690', '-84.32250'), ('Munith', 1260, '42.39050', '-84.25050'), ('Napoleon', 1254, '42.16830', '-84.24630'), ('Norvell', 1254, '42.15750', '-84.18420'), ('Oak Point', 1254, '42.19270', '-84.25580'), ('Parma', 907, '42.25720', '-84.59830'), ('Pulaski', 1101, '42.11500', '-84.64250'), ('Rives Junction', 1872, '42.38580', '-84.46170'), ('Sandstone', 2010, '42.25200', '-84.51770'), ('Spring Arbor', 2188, '42.20660', '-84.55590'), ('Springport', 707, '42.37780', '-84.69730'), ('Sunset Beach', 1027, '42.08720', '-84.20370'), ('Topkins', 809, '42.37300', '-84.54170'), ('Vandercook Lake', 4809, '42.19160', '-84.38540')], 'partOfState': 'south central', 'wfo': 'GRR'}, +'MIZ075': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Ann Arbor', 114024, '42.27540', '-83.73080'), ('Bridgewater', 6660, '42.16020', '-83.89820'), ('Chelsea', 4398, '42.31440', '-84.02200'), ('Dexter', 2338, '42.33150', '-83.87980'), ('Hudson Mills', 2338, '42.38720', '-83.91690'), ('Lyndon Township', 4398, '42.38150', '-84.06750'), ('Manchester', 2160, '42.14890', '-84.03550'), ('Milan', 4775, '42.08740', '-83.68190'), ('Pleasant Lake', 2160, '42.20670', '-83.95110'), ('Salem', 5857, '42.40610', '-83.58000'), ('Saline', 8034, '42.17580', '-83.78000'), ('Whitmore Lake', 6574, '42.42910', '-83.74540'), ('Whittaker', 4775, '42.12810', '-83.59970'), ('Ypsilanti', 22362, '42.24420', '-83.62110')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ076': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Belleville', 3997, '42.20340', '-83.48230'), ('Canton', 76366, '42.30850', '-83.48220'), ('Dearborn', 97775, '42.31130', '-83.21350'), ('Downtown Detroit', 22976, '42.33220', '-83.04810'), ('Flat Rock', 8488, '42.10180', '-83.27290'), ('Grosse Ile', 10894, '42.12840', '-83.14940'), ('Grosse Pointe', 5670, '42.38650', '-82.90610'), ('Grosse Pointe Shore', 2823, '42.44520', '-82.87410'), ('Hamtramck', 22976, '42.40000', '-83.07000'), ('Highland Park', 16746, '42.40490', '-83.09880'), ('Lincoln Park', 40008, '42.24350', '-83.18100'), ('Livonia', 100545, '42.39820', '-83.37250'), ('Northeast Detroit', 22976, '42.43000', '-83.03000'), ('Northville', 6459, '42.43650', '-83.48840'), ('Northwest Detroit', 54387, '42.40000', '-83.22000'), ('Plymouth', 9022, '42.37120', '-83.46740'), ('Redford', 51622, '42.39480', '-83.29420'), ('Riverview', 13894, '42.17140', '-83.19210'), ('Romulus', 22979, '42.22380', '-83.36620'), ('Southwest Detroit', 951270, '42.33000', '-83.11000'), ('Sumpter Township', 3270, '42.13150', '-83.48170'), ('Taylor', 65868, '42.22530', '-83.26840'), ('Westland', 86602, '42.31900', '-83.38090')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ077': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Baroda', 858, '41.95460', '-86.48760'), ('Benton Harbor', 11182, '42.11640', '-86.44620'), ('Benton Heights', 5458, '42.12110', '-86.41500'), ('Berrien Springs', 1862, '41.94730', '-86.34000'), ('Bertrand', 0, '41.77400', '-86.26200'), ('Bridgman', 2428, '41.94070', '-86.56360'), ('Buchanan', 4681, '41.82790', '-86.36680'), ('Coloma', 1595, '42.18660', '-86.30770'), ('Dayton', 0, '41.79800', '-86.43900'), ('Eau Claire', 656, '41.98390', '-86.30380'), ('Fair Plain', 7828, '42.08170', '-86.45350'), ('Galien', 593, '41.80160', '-86.49970'), ('Glendora', 0, '41.88500', '-86.48700'), ('Grand Beach', 221, '41.77470', '-86.78830'), ('Harbert', 0, '41.87200', '-86.62900'), ('Lake Michigan Beach', 1509, '42.21430', '-86.38240'), ('Lakeside', 0, '41.84900', '-86.66800'), ('Michiana', 200, '41.76340', '-86.81120'), ('Millburg', 0, '42.12300', '-86.34200'), ('New Buffalo', 2200, '41.79040', '-86.74530'), ('New Troy', 0, '41.87500', '-86.55000'), ('Niles', 12204, '41.83450', '-86.24800'), ('Paw Paw Lake', 3944, '42.21120', '-86.27560'), ('Riverside', 0, '42.18300', '-86.38300'), ('Sawyer', 0, '41.88500', '-86.58900'), ('Shoreham', 860, '42.05770', '-86.51160'), ('Shorewood-Tower Hiill', 1636, '41.88450', '-86.62040'), ('Sodus', 0, '42.04400', '-86.36900'), ('Spinks Corners', 0, '42.09400', '-86.32100'), ('Stevensville', 1191, '42.01380', '-86.52520'), ('St. Joseph', 8789, '42.09690', '-86.49130'), ('Three Oaks', 1829, '41.79930', '-86.61270'), ('Turner Shores', 0, '41.86000', '-86.66000'), ('Union Pier', 0, '41.82800', '-86.69300'), ('Watervliet', 1843, '42.18660', '-86.25720')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIZ078': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Adamsville', 0, '41.78600', '-86.00000'), ('Barron Lake', 0, '41.84400', '-86.18300'), ('Calvin Center', 0, '41.84600', '-85.93500'), ('Cassopolis', 1740, '41.91250', '-86.00790'), ('Dailey', 0, '41.88700', '-86.08900'), ('Dewey Lake', 0, '42.05500', '-86.18700'), ('Diamond Lake', 0, '41.90300', '-85.98100'), ('Donnell Lake', 0, '41.90700', '-85.89300'), ('Dowagiac', 6147, '41.98380', '-86.11060'), ('Eagle Lake', 0, '41.80400', '-86.02600'), ('Edwardsburg', 1147, '41.79670', '-86.08350'), ('Indian Lake', 0, '42.00000', '-86.21200'), ('Jones', 0, '41.90300', '-85.79900'), ('Juno Lake', 0, '41.81000', '-85.98600'), ('La Grange', 0, '41.95400', '-86.04200'), ('Magician Lake', 0, '42.06600', '-86.16400'), ('Marcellus', 1162, '42.02600', '-85.81320'), ('Paradise Lake', 0, '41.89000', '-85.90800'), ('Penn', 0, '41.94700', '-85.93600'), ('Pokagon', 0, '41.91300', '-86.17600'), ('Sandy Beach', 0, '42.05100', '-86.18800'), ('Shavehead Lake', 0, '41.84300', '-85.86300'), ('Sumnerville', 0, '41.91200', '-86.20700'), ('Union', 0, '41.78600', '-85.86800'), ('Vandalia', 429, '41.91840', '-85.91500'), ('Wakelee', 0, '41.98300', '-85.87600')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIZ079': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Burr Oak', 797, '41.84820', '-85.32090'), ('Centreville', 1579, '41.92180', '-85.52740'), ('Clear Lake', 0, '41.94800', '-85.73300'), ('Colon', 1227, '41.95900', '-85.32350'), ('Constantine', 2095, '41.83800', '-85.66530'), ('Corey Lake', 0, '41.93000', '-85.74700'), ('Fairfax', 0, '41.95500', '-85.36600'), ('Fawn River', 0, '41.78200', '-85.34400'), ('Findley', 0, '41.89400', '-85.37200'), ('Fishers Lake', 0, '41.99100', '-85.57100'), ('Flowerfield', 0, '42.06500', '-85.65800'), ('Howardsville', 0, '42.02500', '-85.71800'), ('Klinger Lake', 0, '41.80500', '-85.54300'), ('Leonidas', 0, '42.02300', '-85.35200'), ('Mendon', 917, '42.00840', '-85.45410'), ('Moore Park', 0, '42.01400', '-85.63600'), ('Mottville', 0, '41.80000', '-85.75700'), ('Nottawa', 0, '41.91900', '-85.44900'), ('Sturgis', 11285, '41.80170', '-85.42120'), ('Three Rivers', 7328, '41.94410', '-85.63210'), ('Wasepi', 0, '41.94100', '-85.46200'), ('White Pigeon', 1627, '41.79840', '-85.64280')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIZ080': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Batavia', 0, '41.91300', '-85.09800'), ('Bronson', 2421, '41.87370', '-85.19150'), ('California', 0, '41.79600', '-84.88300'), ('Coldwater', 12697, '41.94060', '-85.00450'), ('Coldwater Lake', 0, '41.82300', '-84.97600'), ('East Gilead', 0, '41.78200', '-85.08300'), ('Gilead', 0, '41.80100', '-85.15600'), ('Girard', 0, '42.03000', '-85.00000'), ('Hodunk', 0, '42.01500', '-85.06200'), ('Kinderhook', 0, '41.79700', '-85.00500'), ('Lake Of The Woods', 0, '41.85000', '-85.04200'), ('Marble Lake', 0, '41.90700', '-84.90400'), ('Matteson Lake', 0, '41.93100', '-85.20700'), ('Quincy', 1701, '41.94390', '-84.88300'), ('Ray', 0, '41.76000', '-84.87200'), ('Sherwood', 324, '42.00000', '-85.24000'), ('South Butler', 0, '42.02200', '-84.88500'), ('Union City', 1804, '42.06630', '-85.14050')], 'partOfState': 'southwest', 'wfo': 'IWX'}, +'MIZ081': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Allen', 225, '41.95790', '-84.76740'), ('Bear Lake', 0, '41.86900', '-84.68100'), ('Betzer', 0, '41.75300', '-84.47600'), ('Cambria', 0, '41.82200', '-84.66500'), ('Camden', 550, '41.75640', '-84.75700'), ('Frontier', 0, '41.78200', '-84.60500'), ('Hillsdale', 8233, '41.92580', '-84.63570'), ('Jerome', 0, '42.02700', '-84.46900'), ('Jonesville', 2337, '41.98100', '-84.66650'), ('Lake Wilson', 0, '41.87600', '-84.68300'), ('Litchfield', 1458, '42.04310', '-84.75750'), ('Long Lake', 0, '41.87500', '-84.79500'), ('Montgomery', 386, '41.77690', '-84.80600'), ('Moscow', 0, '42.05000', '-84.51000'), ('North Adams', 514, '41.97190', '-84.52420'), ('Osseo', 0, '41.88600', '-84.54400'), ('Pittsford', 0, '41.86200', '-84.47700'), ('Prattville', 0, '41.78200', '-84.40000'), ('Ransom', 0, '41.77500', '-84.53400'), ('Reading', 1134, '41.83920', '-84.74730'), ('Shadyside', 0, '41.82300', '-84.53600'), ('Somerset', 0, '42.04800', '-84.37600'), ('Somerset Center', 0, '42.05100', '-84.41400'), ('Waldron', 590, '41.72460', '-84.41820')], 'partOfState': 'southeast', 'wfo': 'IWX'}, +'MIZ082': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Addison', 627, '41.98590', '-84.34910'), ('Adrian', 21574, '41.89830', '-84.04350'), ('Blissfield', 3223, '41.83240', '-83.86440'), ('Britton', 699, '41.98630', '-83.83190'), ('Cement City', 452, '42.06840', '-84.32730'), ('Clayton', 326, '41.86440', '-84.23590'), ('Clinton', 2293, '42.06890', '-83.97240'), ('Deerfield', 1005, '41.89010', '-83.77860'), ('Fairfield', 22097, '41.81280', '-84.04110'), ('Holloway', 8574, '41.93500', '-83.91440'), ('Hudson', 2499, '41.85630', '-84.34560'), ('Lime Creek', 2580, '41.76560', '-84.32970'), ('Morenci', 2398, '41.72160', '-84.21640'), ('Ogden Center', 543, '41.77190', '-83.95970'), ('Onsted', 813, '42.00760', '-84.19020'), ('Rome Center', 801, '41.94360', '-84.18780'), ('Seneca', 2342, '41.78750', '-84.17670'), ('Tecumseh', 8574, '42.00610', '-83.94450'), ('Tipton', 8574, '42.01670', '-84.06420')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ083': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Carleton', 2562, '42.05750', '-83.38980'), ('Cone', 4775, '42.03190', '-83.75310'), ('Dundee', 3522, '41.95700', '-83.66040'), ('Estral Beach', 486, '41.98800', '-83.24100'), ('Ida', 3522, '41.91040', '-83.57400'), ('Lambertville', 9299, '41.74730', '-83.62290'), ('La Salle', 5266, '41.86780', '-83.45220'), ('Luna Pier', 1483, '41.80510', '-83.44250'), ('Maybee', 505, '42.00580', '-83.51610'), ('Monroe', 22076, '41.91670', '-83.38600'), ('Ottawa Lake', 17301, '41.76350', '-83.74830'), ('Petersburg', 1157, '41.89960', '-83.71180'), ('South Rockwood', 1284, '42.06200', '-83.26060'), ('Stony Point', 1775, '41.94720', '-83.27140'), ('Temperance', 7757, '41.76760', '-83.57230')], 'partOfState': 'southeast', 'wfo': 'DTX'}, +'MIZ084': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Alston', 1285, '46.76490', '-88.74190'), ('Bob Lake', 1285, '46.66600', '-88.90900'), ('Echo Lake', 1285, '46.61300', '-88.84800'), ('Kenton', 214, '46.48580', '-88.89270'), ('Nisula', 1285, '46.76500', '-88.79400'), ('Sidnaw', 1285, '46.50670', '-88.70810')], 'partOfState': 'western upper', 'wfo': 'MQT'}, +'MIZ085': {'fullStateName': 'Michigan', 'state': 'MI', 'cities': [('Cusino Lake', 2539, '46.45600', '-86.25900'), ('Germfask', 2686, '46.24950', '-85.92620'), ('Seney', 2686, '46.34480', '-85.94590'), ('Snyder Lake', 2686, '46.48800', '-85.94800'), ('Steuben', 2539, '46.18800', '-86.45700')], 'partOfState': 'east central upper', 'wfo': 'MQT'}, +'MNZ001': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Angus', 1678, '48.08110', '-96.70280'), ('Beltrami', 101, '47.54320', '-96.52800'), ('Bygland', 435, '47.81170', '-96.93190'), ('Climax', 243, '47.60680', '-96.81230'), ('Crookston', 8192, '47.77420', '-96.60560'), ('Davidson', 435, '47.87670', '-96.84690'), ('East Grand Forks', 7501, '47.93000', '-97.01590'), ('Eldred', 243, '47.68280', '-96.78000'), ('Euclid', 8192, '47.97190', '-96.63860'), ('Fisher', 435, '47.79930', '-96.79960'), ('Gentilly', 8192, '47.78920', '-96.44890'), ('Greenview', 101, '47.62580', '-96.56030'), ('Harold', 8192, '47.70220', '-96.49720'), ('Key West', 435, '47.93470', '-96.78310'), ('Mallory', 7501, '47.87670', '-96.91140'), ('Melvin', 893, '47.62080', '-96.38890'), ('Nielsville', 91, '47.52880', '-96.81630'), ('Sherack', 1678, '48.02080', '-96.78140'), ('Tabor', 1678, '48.07920', '-96.86250')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ002': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ada', 1657, '47.29950', '-96.51390'), ('Borup', 91, '47.18080', '-96.50580'), ('Faith', 1202, '47.28690', '-96.09860'), ('Flaming', 893, '47.45670', '-96.27030'), ('Flom', 532, '47.16610', '-96.13060'), ('Gary', 215, '47.37280', '-96.26510'), ('Hadler', 1657, '47.36860', '-96.53500'), ('Halstad', 622, '47.35120', '-96.82400'), ('Hendrum', 315, '47.26380', '-96.81020'), ('Lockhart', 101, '47.44000', '-96.55080'), ('Perley', 121, '47.17660', '-96.80050'), ('Ranum', 215, '47.45560', '-96.13140'), ('Rindal', 205, '47.49940', '-96.13110'), ('Shelly', 266, '47.45750', '-96.82000'), ('Syre', 865, '47.18030', '-96.25830'), ('Twin Valley', 865, '47.25780', '-96.25840'), ('Waukon', 215, '47.36890', '-96.13080')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ003': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Averill', 1049, '46.97080', '-96.54690'), ('Baker', 421, '46.71060', '-96.56670'), ('Barnesville', 2173, '46.64890', '-96.41760'), ('Comstock', 123, '46.66000', '-96.74660'), ('Dale', 201, '46.90530', '-96.21940'), ('Dilworth', 3001, '46.87540', '-96.69870'), ('Downer', 2173, '46.75420', '-96.48670'), ('Felton', 216, '47.07640', '-96.50480'), ('Georgetown', 125, '47.07810', '-96.79480'), ('Glyndon', 1049, '46.87270', '-96.57940'), ('Hawley', 1882, '46.87820', '-96.31620'), ('Hitterdal', 201, '46.97850', '-96.25820'), ('Kragnes', 1334, '46.98830', '-96.75140'), ('Moorhead', 32177, '46.86460', '-96.75570'), ('Muskoda', 1882, '46.86170', '-96.40640'), ('Rollag', 1882, '46.74000', '-96.23780'), ('Rustad', 88, '46.73330', '-96.74440'), ('Sabin', 421, '46.78050', '-96.65290'), ('Ulen', 532, '47.07930', '-96.25950')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ004': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Caribou', 246, '48.98250', '-96.44920'), ('Donaldson', 41, '48.57470', '-96.89730'), ('Hallock', 1196, '48.76640', '-96.94360'), ('Halma', 78, '48.66080', '-96.59760'), ('Humboldt', 61, '48.92150', '-97.09430'), ('Karlstad', 794, '48.57810', '-96.51560'), ('Kennedy', 255, '48.64350', '-96.91010'), ('Lake Bronson', 246, '48.73260', '-96.66260'), ('Lancaster', 363, '48.85790', '-96.80280'), ('Mattson', 1196, '48.68940', '-97.07330'), ('Northcote', 1196, '48.84530', '-97.00080'), ('Noyes', 117, '48.99750', '-97.20420'), ('Orleans', 363, '48.92610', '-96.93640'), ('Robbin', 961, '48.57280', '-97.14220'), ('St. Vincent', 117, '48.96780', '-97.22470')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ005': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Badger', 470, '48.77610', '-96.02070'), ('Casperson', 2756, '48.57610', '-95.68690'), ('Fox', 2756, '48.83890', '-95.89860'), ('Greenbush', 784, '48.69820', '-96.18390'), ('Haug', 784, '48.81970', '-96.18420'), ('Hayes Lake State Park', 2756, '48.62360', '-95.50780'), ('Leo', 784, '48.76080', '-96.25030'), ('Malung', 2756, '48.77250', '-95.72390'), ('Pencer', 2756, '48.69920', '-95.63750'), ('Pinecreek', 470, '48.97830', '-95.94250'), ('Roosevelt', 166, '48.80360', '-95.09670'), ('Roseau', 2756, '48.84580', '-95.76190'), ('Ross', 470, '48.90610', '-95.92000'), ('Salol', 2756, '48.86610', '-95.57060'), ('Skime', 228, '48.54690', '-95.60250'), ('Strathcona', 29, '48.55220', '-96.16780'), ('Swift', 1722, '48.85330', '-95.22110'), ('Torfin', 2756, '48.59780', '-95.73330'), ('Wannaska', 2756, '48.65830', '-95.73440'), ('Warroad', 1722, '48.90850', '-95.32070')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ006': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Angle Inlet', 1722, '49.34530', '-95.06250'), ('Arnesen', 166, '48.95750', '-95.06720'), ('Baudette', 1104, '48.71120', '-94.58700'), ('Carp', 1104, '48.50530', '-94.64690'), ('Clementson', 1104, '48.69080', '-94.43610'), ('Faunce', 210, '48.59310', '-94.95220'), ('Flag Island', 210, '49.32470', '-94.88500'), ('Graceton', 210, '48.74110', '-94.83610'), ('Long Point', 210, '48.97720', '-94.95970'), ('Oak Island', 210, '49.31000', '-94.84970'), ('Oaks Corner', 210, '48.42440', '-94.94970'), ('Penasse', 166, '49.35670', '-94.95860'), ('Pitt', 1104, '48.71750', '-94.73580'), ('Williams', 210, '48.76850', '-94.95270')], 'partOfState': 'north central', 'wfo': 'FGF'}, +'MNZ007': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alvarado', 371, '48.19260', '-96.99830'), ('Argyle', 656, '48.33740', '-96.81570'), ('Big Woods', 347, '48.31140', '-97.10780'), ('Englund', 794, '48.48580', '-96.62780'), ('Florian', 794, '48.44220', '-96.62780'), ('March', 371, '48.19500', '-96.89690'), ('Old Mill State Par', 88, '48.36140', '-96.57060'), ('Oslo', 347, '48.19490', '-97.12790'), ('Radium', 1678, '48.22940', '-96.61330'), ('Stephen', 708, '48.45150', '-96.87720'), ('Strandquist', 88, '48.49000', '-96.44810'), ('Viking', 92, '48.21790', '-96.40640'), ('Warren', 1678, '48.19610', '-96.76980')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ008': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Espelie', 228, '48.22360', '-95.68000'), ('Gatzke', 228, '48.42440', '-95.78390'), ('Grygla', 228, '48.29970', '-95.61970'), ('Holt', 89, '48.29210', '-96.19390'), ('Middle River', 319, '48.43560', '-96.16190'), ('Newfolden', 362, '48.35520', '-96.32970'), ('Rosewood', 92, '48.18940', '-96.29000')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ009': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Carmel', 228, '48.28170', '-95.44420'), ('Fourtown', 228, '48.28110', '-95.33530'), ('Gates Corner', 228, '48.45280', '-95.31890'), ('Jelle', 228, '48.23810', '-95.40000'), ('Kelliher', 294, '47.94300', '-94.44600'), ('Malcolm', 228, '48.32440', '-95.33530'), ('Otto', 294, '48.08810', '-94.60720'), ('Ponemah', 874, '48.02060', '-94.91360'), ('Redby', 957, '47.87860', '-94.91280'), ('Red Lake', 1430, '47.87640', '-95.01670'), ('Saum', 294, '47.97470', '-94.67670'), ('Shooks', 294, '47.87420', '-94.43810'), ('Shotley', 294, '48.04890', '-94.63860'), ('Thorhult', 228, '48.23030', '-95.24780'), ('Waskish', 294, '48.16140', '-94.51220')], 'partOfState': 'north central', 'wfo': 'FGF'}, +'MNZ010': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Big Falls', 264, '48.18510', '-93.80820'), ('Birchdale', 1104, '48.62700', '-94.10210'), ('Craigville', 91, '47.90310', '-93.61310'), ('Ericksburg', 6703, '48.48780', '-93.33140'), ('Gemmell', 78, '47.97340', '-94.12390'), ('Grand Falls', 264, '48.19860', '-93.79290'), ('International Falls', 6703, '48.58760', '-93.40620'), ('Island View', 150, '48.60600', '-93.19070'), ('Littlefork', 680, '48.39650', '-93.55680'), ('Loman', 680, '48.51280', '-93.80310'), ('Manitou', 264, '48.62840', '-93.99320'), ('Margie', 264, '48.09540', '-93.94010'), ('Mizpah', 78, '47.92250', '-94.21540'), ('Northome', 230, '47.87460', '-94.26580'), ('Pelland', 680, '48.52280', '-93.57540'), ('Ranier', 188, '48.61320', '-93.34660'), ('Ray', 150, '48.41090', '-93.21030')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNZ011': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ash Lake', 249, '48.21900', '-92.91610'), ('Buyck', 249, '48.14280', '-92.52060'), ('Celina', 249, '47.86580', '-93.06200'), ('Crane Lake', 249, '48.26670', '-92.48870'), ('Cusson', 249, '48.10190', '-92.84310'), ('Ely', 3724, '47.90570', '-91.85060'), ('Gheen', 249, '47.96810', '-92.80830'), ('Greaney', 249, '47.96730', '-93.02110'), ('Kabetogama', 150, '48.43790', '-93.02750'), ('Linden Grove', 622, '47.86320', '-92.87060'), ('Meadow Brook', 249, '47.86280', '-92.95480'), ('Nett Lake', 249, '48.11120', '-93.07990'), ('Orr', 249, '48.06400', '-92.82040'), ('Robinson', 3724, '47.85950', '-92.04200'), ('Winton', 185, '47.92900', '-91.80140')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNZ012': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Basswood Lake', 185, '48.07480', '-91.58220'), ('Butterfly Lake', 185, '47.75840', '-91.47950'), ('Clear Lake', 266, '47.64010', '-91.11940'), ('Eagle Mountain', 1353, '47.89760', '-90.56030'), ('Forest Center', 2068, '47.79500', '-91.30780'), ('Isabella', 2068, '47.61730', '-91.35500'), ('Murphy City', 2068, '47.50980', '-91.32470'), ('Sawbill Landing', 2068, '47.71530', '-91.26810'), ('Sea Gull Lake', 1353, '48.13090', '-90.94740'), ('Silver Rapids', 185, '47.90400', '-91.75560'), ('Snow Bank Lake', 185, '47.99160', '-91.42130'), ('Wales', 3613, '47.23500', '-91.74700'), ('Whyte', 2068, '47.45170', '-91.56230')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNZ013': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Carpenters Corner', 92, '48.15810', '-96.43720'), ('Dakota Junction', 8410, '48.15890', '-96.19420'), ('Goodridge', 98, '48.14470', '-95.80400'), ('Hazel', 272, '48.02000', '-96.11500'), ('High Landing', 98, '48.04940', '-95.80830'), ('Mavie', 98, '48.14470', '-95.93860'), ('St. Hilaire', 272, '48.01320', '-96.21380'), ('Thief River Falls', 8410, '48.11350', '-96.17540')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ014': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Brooks', 141, '47.81710', '-96.00110'), ('Delorme', 1590, '47.76470', '-96.28890'), ('Dorothy', 1590, '47.92780', '-96.44640'), ('Huot', 1590, '47.86530', '-96.42310'), ('Oklee', 396, '47.83880', '-95.85010'), ('Perault', 1590, '47.81250', '-96.28970'), ('Plummer', 270, '47.91570', '-96.03940'), ('Red Lake Falls', 1590, '47.88520', '-96.27390'), ('Roland', 396, '47.94420', '-95.77860'), ('Terrebonne', 270, '47.83250', '-96.13310'), ('Wylie', 1590, '47.96190', '-96.35280')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ015': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Dugdale', 150, '47.70170', '-96.26610'), ('Erskine', 437, '47.66360', '-96.01370'), ('Fertile', 893, '47.53210', '-96.29130'), ('Fosston', 1575, '47.58090', '-95.74770'), ('Gully', 106, '47.76900', '-95.62350'), ('Lengby', 79, '47.51490', '-95.63350'), ('Maple Bay', 150, '47.63580', '-96.22470'), ('McIntosh', 638, '47.63750', '-95.88520'), ('Mentor', 150, '47.69660', '-96.14470'), ('Olga', 106, '47.68720', '-95.66330'), ('Trail', 62, '47.78370', '-95.69910'), ('Winger', 205, '47.53700', '-95.98510')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ016': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bagley', 1235, '47.52340', '-95.40360'), ('Berner', 294, '47.80440', '-95.47280'), ('Clearbrook', 551, '47.69470', '-95.42830'), ('Gonvick', 294, '47.73830', '-95.51250'), ('Leonard', 29, '47.65240', '-95.26640'), ('Shevlin', 160, '47.53070', '-95.25920'), ('Weme', 294, '47.64420', '-95.53780')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ017': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bemidji', 11917, '47.48230', '-94.87860'), ('Blackduck', 696, '47.72640', '-94.54820'), ('Debs', 1055, '47.73140', '-95.12780'), ('Funkley', 15, '47.78640', '-94.42750'), ('Hines', 195, '47.68610', '-94.63250'), ('Island Lake', 1430, '47.78890', '-95.01780'), ('Lavinia', 11917, '47.51500', '-94.81140'), ('Nebish', 957, '47.77140', '-94.84720'), ('Pennington', 860, '47.48360', '-94.47970'), ('Pinewood', 69, '47.59720', '-95.12750'), ('Puposky', 957, '47.67780', '-94.90690'), ('Rosby', 11917, '47.42080', '-94.80640'), ('Solway', 69, '47.52070', '-95.12970'), ('Tenstrike', 195, '47.66080', '-94.68460'), ('Turtle River', 75, '47.58850', '-94.76020'), ('Wilton', 186, '47.50520', '-94.99120')], 'partOfState': 'north central', 'wfo': 'FGF'}, +'MNZ018': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alvwood', 230, '47.73060', '-94.26810'), ('Bigfork', 469, '47.74840', '-93.65340'), ('Bowstring', 903, '47.54300', '-93.79680'), ('Effie', 91, '47.84070', '-93.63780'), ('Inger', 99, '47.55420', '-93.98540'), ('Jessie Lake', 469, '47.60120', '-93.81730'), ('Marcell', 469, '47.59320', '-93.69090'), ('Max', 99, '47.61470', '-94.06810'), ('Orth', 230, '47.83920', '-94.31530'), ('Oslund', 99, '47.65580', '-94.03410'), ('Rosy', 99, '47.65810', '-94.30620'), ('Spring Lake', 469, '47.64260', '-93.86800'), ('Squaw Lake', 99, '47.62690', '-94.14100'), ('Stony Brook', 4960, '47.73500', '-93.09860'), ('Talmoon', 469, '47.60010', '-93.77400'), ('Togo', 249, '47.82140', '-93.15590'), ('Wirt', 99, '47.73060', '-93.96010')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNZ019': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Angora', 622, '47.77510', '-92.63420'), ('Aurora', 1850, '47.53200', '-92.24000'), ('Babbitt', 1670, '47.64510', '-91.94010'), ('Biwabik', 954, '47.53420', '-92.35000'), ('Brimson', 3613, '47.27670', '-91.86710'), ('Buhl', 983, '47.49850', '-92.76690'), ('Canyon', 98, '47.04000', '-92.47080'), ('Chisholm', 4960, '47.48750', '-92.87920'), ('Cook', 622, '47.85310', '-92.68810'), ('Cotton', 111, '47.16980', '-92.47100'), ('Elmer', 111, '47.10360', '-92.77720'), ('Embarrass', 2082, '47.65930', '-92.19810'), ('Eveleth', 3865, '47.46370', '-92.54290'), ('Fairbanks', 2082, '47.37060', '-91.92670'), ('Franklin', 498, '47.53780', '-92.51930'), ('Gilbert', 1847, '47.49190', '-92.46050'), ('Hibbing', 17071, '47.40000', '-92.94810'), ('Hoyt Lakes', 2082, '47.51220', '-92.15470'), ('Idington', 622, '47.73340', '-92.65200'), ('Iron Junction', 93, '47.41640', '-92.60670'), ('Kelly Lake', 17071, '47.41760', '-93.00670'), ('Kelsey', 111, '47.15390', '-92.59920'), ('Kinney', 199, '47.52230', '-92.72530'), ('Leetonia', 17071, '47.42920', '-92.98540'), ('Leonidas', 60, '47.46730', '-92.56790'), ('Little Swan', 17071, '47.29720', '-92.83110'), ('Makinen', 80, '47.35730', '-92.36780'), ('Markham', 1850, '47.29930', '-92.21870'), ('McKinley', 80, '47.51450', '-92.40750'), ('Meadowlands', 111, '47.07280', '-92.73140'), ('Melrude', 1847, '47.24560', '-92.41720'), ('Mesaba', 2082, '47.56900', '-92.13200'), ('Mountain Iron', 2999, '47.52640', '-92.62690'), ('Payne', 111, '47.09620', '-92.59950'), ('Ridge', 1670, '47.62260', '-92.03620'), ('Shaw', 7448, '47.11370', '-92.35310'), ('Shermans Corner', 622, '47.77920', '-92.65640'), ('Side Lake', 4960, '47.66530', '-93.01600'), ('Silica', 1164, '47.26560', '-93.02110'), ('Skibo', 2082, '47.48560', '-91.99440'), ('Snake Trail', 4960, '47.71360', '-93.04660'), ('Soudan', 479, '47.81590', '-92.23780'), ('Toivola', 111, '47.16700', '-92.81120'), ('Tower', 479, '47.81010', '-92.29050'), ('Virginia', 9157, '47.51580', '-92.50710'), ('Wahlsten', 479, '47.73580', '-92.28360'), ('Zim', 93, '47.30700', '-92.60340')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNZ020': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alger', 3613, '47.14720', '-91.69270'), ('Beaver Bay', 175, '47.25690', '-91.29860'), ('Castle Danger', 3613, '47.12090', '-91.50340'), ('Finland', 2068, '47.41480', '-91.24910'), ('Knife River', 3613, '46.95010', '-91.78340'), ('Larsmont', 3613, '46.97930', '-91.74580'), ('Little Marais', 2068, '47.41090', '-91.11030'), ('Silver Bay', 2068, '47.29190', '-91.27860'), ('Two Harbors', 3613, '47.03030', '-91.67570')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNZ021': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Grand Marais', 1353, '47.75520', '-90.34480'), ('Grand Portage', 1353, '47.96390', '-89.68500'), ('Hovland', 1353, '47.83880', '-89.97230'), ('Lutsen', 1353, '47.63690', '-90.71080'), ('Taconite Harbor', 2068, '47.52410', '-90.92170'), ('Tofte', 2068, '47.55970', '-90.88080')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNZ022': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Beaulieu', 1202, '47.33560', '-95.80420'), ('Bejou', 94, '47.44180', '-95.97200'), ('Island_lake', 79, '47.44860', '-95.65140'), ('Mahkonce', 583, '47.32440', '-95.61530'), ('Mahnomen', 1202, '47.31480', '-95.96910'), ('Naytahwaush', 583, '47.26280', '-95.62580'), ('Pine Bend', 79, '47.42640', '-95.59080'), ('Roy Lake', 583, '47.32530', '-95.55140'), ('Tulaby Lake', 583, '47.15250', '-95.60420'), ('Waubun', 403, '47.18410', '-95.93950')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ023': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alida', 160, '47.38360', '-95.23440'), ('Ebro', 79, '47.49560', '-95.52920'), ('Lake Itasca', 69, '47.25390', '-95.21220'), ('Long Lost Lake', 583, '47.19360', '-95.41810'), ('Lower Rice Lake', 583, '47.34910', '-95.47210'), ('Upper Rice Lake', 160, '47.39370', '-95.29690'), ('Zerkel', 1235, '47.31080', '-95.38140')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ024': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Akeley', 412, '47.00040', '-94.72760'), ('Badoura', 364, '46.86220', '-94.76580'), ('Becida', 69, '47.35420', '-95.08080'), ('Benedict', 145, '47.15810', '-94.69030'), ('Chamberlain', 412, '46.90530', '-94.72140'), ('Dorset', 364, '46.95640', '-94.95220'), ('Emmaville', 3276, '47.06560', '-94.98030'), ('Guthrie', 145, '47.30030', '-94.79080'), ('Hubbard', 3276, '46.83670', '-95.01000'), ('Kabekona', 145, '47.23470', '-94.87640'), ('Lake George', 145, '47.20060', '-94.99330'), ('Laporte', 145, '47.21430', '-94.75720'), ('Nary', 11917, '47.36690', '-94.82310'), ('Nevis', 364, '46.96530', '-94.83920'), ('Park Rapids', 3276, '46.91750', '-95.06010')], 'partOfState': 'north central', 'wfo': 'FGF'}, +'MNZ025': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Backus', 311, '46.82090', '-94.51410'), ('Bena', 110, '47.34110', '-94.20620'), ('Boy River', 38, '47.16690', '-94.12250'), ('Brevik', 180, '47.08300', '-94.28880'), ('Cass Lake', 860, '47.37880', '-94.60060'), ('Days High Landing', 75, '47.25230', '-93.80590'), ('Federal Dam', 101, '47.23850', '-94.21880'), ('Hackensack', 285, '46.92790', '-94.51860'), ('Inguadona', 180, '46.98360', '-94.13060'), ('Longville', 180, '46.98670', '-94.21520'), ('Oshawa', 311, '46.80400', '-94.63890'), ('Outing', 847, '46.82060', '-93.94810'), ('Pontoria', 148, '46.86340', '-94.33670'), ('Remer', 372, '47.05800', '-93.91370'), ('Schley', 860, '47.36890', '-94.41620'), ('Tobique', 38, '47.11560', '-94.03980'), ('Wabedo', 180, '46.92060', '-94.18810'), ('Walker', 1069, '47.08980', '-94.57890'), ('Whipholt', 180, '47.04940', '-94.36610'), ('Wilkinson', 860, '47.25090', '-94.62780')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNZ026': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ball Club', 903, '47.32590', '-93.93620'), ('Blackberry', 605, '47.18090', '-93.39060'), ('Bovey', 662, '47.29420', '-93.40230'), ('Calumet', 383, '47.31920', '-93.26960'), ('Cohasset', 2481, '47.26370', '-93.62040'), ('Coleraine', 1110, '47.30630', '-93.42310'), ('Deer River', 903, '47.33600', '-93.79400'), ('Goodland', 183, '47.16200', '-93.13590'), ('Grand Rapids', 7764, '47.22880', '-93.52450'), ('Gunn', 605, '47.21620', '-93.47540'), ('Keewatin', 1164, '47.40410', '-93.08550'), ('La Prairie', 605, '47.22730', '-93.49010'), ('Marble', 695, '47.32860', '-93.29340'), ('Nashwauk', 935, '47.38420', '-93.16770'), ('Pengilly', 935, '47.33280', '-93.19730'), ('Swan River', 183, '47.08670', '-93.19510'), ('Taconite', 315, '47.32320', '-93.36020'), ('Warba', 183, '47.13580', '-93.27090'), ('Wawina', 183, '47.05320', '-93.11920'), ('Zemple', 75, '47.32340', '-93.78620')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNZ027': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Audubon', 445, '46.86420', '-95.98090'), ('Callaway', 200, '46.98300', '-95.91130'), ('Cormorant', 782, '46.73060', '-96.06530'), ('Detroit Lakes', 7348, '46.81310', '-95.84220'), ('Frazee', 1377, '46.72700', '-95.69960'), ('Lake Park', 782, '46.88360', '-96.09650'), ('Ogema', 143, '47.10160', '-95.92250'), ('Richwood', 200, '46.97470', '-95.82250'), ('Rochert', 1377, '46.86000', '-95.68750'), ('Shoreham', 7348, '46.75750', '-95.89860'), ('Westbury', 200, '46.91720', '-95.90940'), ('White Earth', 424, '47.09670', '-95.84310')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ028': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bad Medicine Lake', 583, '47.12690', '-95.40080'), ('Evergreen', 31, '46.76000', '-95.45060'), ('Height Of Land Lake', 1377, '46.89110', '-95.60830'), ('Many Point Lake', 583, '47.07670', '-95.53470'), ('Midway', 31, '46.78190', '-95.26000'), ('Osage', 31, '46.92030', '-95.25670'), ('Ponsford', 31, '46.97000', '-95.38360'), ('Snellman', 31, '46.88940', '-95.41280'), ('Toad Lake', 31, '46.86440', '-95.48970'), ('Two Inlets', 3276, '47.05280', '-95.21720'), ('Wolf Lake', 31, '46.80290', '-95.35510')], 'partOfState': 'northwest', 'wfo': 'FGF'}, +'MNZ029': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Breckenridge', 3559, '46.26360', '-96.58780'), ('Brushvale', 120, '46.36940', '-96.64310'), ('Campbell', 241, '46.09790', '-96.40540'), ('Doran', 59, '46.18520', '-96.48560'), ('Everdell', 143, '46.26750', '-96.40780'), ('Foxhome', 143, '46.27670', '-96.31020'), ('Kent', 120, '46.43960', '-96.68440'), ('Lawndale', 2173, '46.55690', '-96.36000'), ('McCauleyville', 252, '46.44170', '-96.70750'), ('Nashua', 69, '46.03600', '-96.30470'), ('Rothsay', 497, '46.47470', '-96.28670'), ('Tenney', 6, '46.04430', '-96.45400'), ('Wolverton', 122, '46.56470', '-96.73550')], 'partOfState': 'west central', 'wfo': 'FGF'}, +'MNZ030': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Carlisle', 172, '46.36830', '-96.18940'), ('Dalton', 258, '46.17340', '-95.91630'), ('Dunvilla', 2374, '46.66310', '-96.01580'), ('Edwards', 150, '46.44890', '-95.98860'), ('Elizabeth', 172, '46.37930', '-96.13040'), ('Erhard', 150, '46.48400', '-96.09710'), ('Fergus Falls', 13471, '46.28210', '-96.06770'), ('Lake Lida', 2374, '46.58220', '-95.97060'), ('Maplewood State Park', 2374, '46.53360', '-95.94920'), ('Pelican Rapids', 2374, '46.57080', '-96.08560'), ('Phelps', 319, '46.38030', '-95.82030'), ('Star Lake', 192, '46.52920', '-95.80560'), ('Underwood', 319, '46.28520', '-95.87000'), ('Vergas', 311, '46.65530', '-95.80380'), ('Western', 177, '46.15190', '-96.18280')], 'partOfState': 'west central', 'wfo': 'FGF'}, +'MNZ031': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Almora', 991, '46.24640', '-95.36530'), ('Amor', 686, '46.41250', '-95.74500'), ('Battle Lake', 686, '46.28880', '-95.71510'), ('Big Mcdonald Lake', 192, '46.58000', '-95.76690'), ('Bluffton', 210, '46.46930', '-95.23350'), ('Butler', 31, '46.68810', '-95.35280'), ('Clitherall', 118, '46.27430', '-95.62970'), ('Deer Creek', 328, '46.39130', '-95.32200'), ('Dent', 192, '46.55210', '-95.71720'), ('Henning', 719, '46.32240', '-95.44290'), ('Hillview', 31, '46.68030', '-95.25750'), ('New York Mills', 1158, '46.51970', '-95.37420'), ('Ottertail', 451, '46.42850', '-95.55870'), ('Ottertail Lake', 451, '46.39810', '-95.66280'), ('Parkers Prairie', 991, '46.15380', '-95.32930'), ('Perham', 2559, '46.59960', '-95.57340'), ('Richville', 124, '46.50670', '-95.62610'), ('Urbank', 59, '46.12560', '-95.51060'), ('Vining', 68, '46.26320', '-95.53380'), ('Wrightstown', 267, '46.27390', '-95.18580')], 'partOfState': 'west central', 'wfo': 'FGF'}, +'MNZ032': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Aldrich', 53, '46.37470', '-94.93940'), ('Blue Grass', 710, '46.54280', '-95.00970'), ('Huntersville', 75, '46.77580', '-94.89250'), ('Menahga', 1220, '46.74880', '-95.10210'), ('Nimrod', 75, '46.63780', '-94.88100'), ('Oylen', 75, '46.57470', '-94.79830'), ('Sebeka', 710, '46.62910', '-95.08820'), ('Staples Airport', 3104, '46.38080', '-94.80670'), ('Verndale', 575, '46.39730', '-95.01150'), ('Wadena', 4294, '46.43990', '-95.13480')], 'partOfState': 'central', 'wfo': 'FGF'}, +'MNZ033': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Casino', 420, '46.42700', '-94.54030'), ('Chickamaw Beach', 148, '46.74870', '-94.38980'), ('East Gull Lake', 978, '46.41080', '-94.35220'), ('Esterdy', 3104, '46.47670', '-94.73260'), ('Lake Shore', 966, '46.49530', '-94.36100'), ('Leader', 585, '46.51580', '-94.64970'), ('Pillager', 420, '46.32690', '-94.47640'), ('Pine River', 928, '46.72260', '-94.39830'), ('Poplar', 75, '46.58670', '-94.69670'), ('Sylvan', 420, '46.33510', '-94.40680')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'MNZ034': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Barrows', 5555, '46.30120', '-94.25390'), ('Baxter', 5555, '46.34120', '-94.28240'), ('Brainerd', 13178, '46.35440', '-94.19410'), ('Breezy Point', 979, '46.60140', '-94.21930'), ('Crosby', 2299, '46.49000', '-93.95660'), ('Crosslake', 1893, '46.68250', '-94.09480'), ('Cuyuna', 231, '46.51180', '-93.92900'), ('Deerwood', 590, '46.47320', '-93.89900'), ('Emily', 847, '46.75690', '-93.96150'), ('Fifty Lakes', 392, '46.74880', '-94.09600'), ('Fort Ripley', 74, '46.16640', '-94.36170'), ('Garrison', 213, '46.30260', '-93.82350'), ('Ironton', 498, '46.48090', '-93.99670'), ('Jenkins', 287, '46.65230', '-94.32900'), ('Lake Hubert', 1953, '46.50230', '-94.25760'), ('Legionville', 13178, '46.44720', '-94.19950'), ('Lennox', 74, '46.24370', '-94.34320'), ('Little Pine', 847, '46.74560', '-93.86150'), ('Manhattan Beach', 50, '46.73440', '-94.14440'), ('Merrifield', 13178, '46.46510', '-94.17290'), ('Mission', 125, '46.58810', '-94.05110'), ('Nisswa', 1953, '46.50000', '-94.29730'), ('Pequot Lakes', 947, '46.60190', '-94.32060'), ('Pine Center', 213, '46.21450', '-93.91450'), ('Riverton', 115, '46.46100', '-94.04870'), ('Shephard', 105, '46.21400', '-94.10430'), ('St. Mathias', 5555, '46.22280', '-94.25110'), ('Swanburg', 50, '46.74040', '-94.17550'), ('Trommald', 125, '46.50450', '-94.01670'), ('Wolford', 125, '46.54570', '-93.97920'), ('Woodrow', 115, '46.38840', '-94.07450')], 'partOfState': 'east central', 'wfo': 'DLH'}, +'MNZ035': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bain', 118, '46.79090', '-93.58980'), ('Ball Bluff', 183, '46.95470', '-93.27330'), ('Balsam', 59, '46.78110', '-93.15610'), ('Haypoint', 479, '46.90030', '-93.61690'), ('Hill City', 479, '46.98610', '-93.59640'), ('Jacobson', 183, '47.00080', '-93.26270'), ('Libby', 404, '46.78420', '-93.32670'), ('Palisade', 118, '46.71310', '-93.49070'), ('Sheshebee', 404, '46.70470', '-93.24260'), ('Swatara', 479, '46.89560', '-93.67420'), ('Tamarack', 59, '46.65190', '-93.11900'), ('Waldeck', 118, '46.67440', '-93.60780'), ('Waukenabo', 118, '46.74020', '-93.60080')], 'partOfState': 'east central', 'wfo': 'DLH'}, +'MNZ036': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Aitkin', 1984, '46.53010', '-93.71040'), ('Arthyde', 40, '46.35620', '-93.08950'), ('Dads Corner', 65, '46.33280', '-93.25910'), ('Glen', 1984, '46.41870', '-93.51540'), ('Glory', 1984, '46.41760', '-93.60060'), ('Hassman', 1984, '46.60220', '-93.61370'), ('Kimberly', 118, '46.56090', '-93.46650'), ('Lawler', 59, '46.53620', '-93.17060'), ('Malmo', 707, '46.33420', '-93.51970'), ('McGrath', 65, '46.24290', '-93.27440'), ('McGregor', 404, '46.60830', '-93.30600'), ('Pine Knoll', 1984, '46.57730', '-93.75780'), ('Rossburg', 1984, '46.53530', '-93.58010'), ('Wealthwood', 1984, '46.36320', '-93.65430')], 'partOfState': 'east central', 'wfo': 'DLH'}, +'MNZ037': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alborn', 98, '46.97310', '-92.57620'), ('Arnold', 3032, '46.87510', '-92.10780'), ('Automba', 168, '46.52090', '-93.01870'), ('Barnum', 525, '46.50480', '-92.68930'), ('Brookston', 98, '46.86600', '-92.60320'), ('Burnett', 98, '46.90090', '-92.52440'), ('Carlton', 810, '46.66030', '-92.42320'), ('Cherry', 111, '47.00080', '-92.70670'), ('Cloquet', 11201, '46.72900', '-92.49440'), ('Cromwell', 143, '46.67950', '-92.87070'), ('Culver', 98, '46.92590', '-92.55860'), ('Duluth', 86918, '46.78100', '-92.11800'), ('Esko', 153, '46.70600', '-92.36330'), ('Floodwood', 503, '46.92690', '-92.91550'), ('Fond Du Lac', 2852, '46.67180', '-92.27330'), ('Fredenberg', 3032, '46.97370', '-92.21730'), ('French River', 3032, '46.89810', '-91.89720'), ('Gary New Duluth', 86918, '46.67870', '-92.20680'), ('Gowan', 503, '46.86420', '-92.84730'), ('Hermantown', 7448, '46.80620', '-92.24380'), ('Holyoke', 308, '46.46760', '-92.38860'), ('Independence', 98, '46.96080', '-92.46170'), ('Island', 503, '46.98620', '-93.01370'), ('Island Lake', 3032, '47.01490', '-92.19380'), ('Kettle River', 168, '46.48640', '-92.87800'), ('Mahtowa', 525, '46.57400', '-92.63200'), ('Moose Lake', 2239, '46.44600', '-92.76840'), ('Munger', 7448, '46.80190', '-92.34390'), ('Nemadji', 525, '46.47950', '-92.59480'), ('Palmers', 3613, '46.92480', '-91.85080'), ('Pleasant Valley', 308, '46.53830', '-92.38500'), ('Proctor', 2852, '46.74310', '-92.22740'), ('Prosit', 98, '46.99810', '-92.61780'), ('Ronald', 40, '46.44740', '-93.05430'), ('Saginaw', 11201, '46.85930', '-92.44450'), ('Sawyer', 11201, '46.67140', '-92.63330'), ('Scanlon', 838, '46.70740', '-92.42890'), ('Scotts Corner', 308, '46.59830', '-92.42910'), ('Taft', 7448, '46.99450', '-92.33280'), ('Thomson', 153, '46.66410', '-92.38980'), ('Twig', 7448, '46.89460', '-92.36480'), ('West Duluth', 2852, '46.73560', '-92.18640'), ('Wrenshall', 308, '46.61830', '-92.38360'), ('Wright', 93, '46.67210', '-93.00670')], 'partOfState': 'northeast', 'wfo': 'DLH'}, +'MNZ038': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Askov', 368, '46.18870', '-92.78150'), ('Belden', 71, '46.32230', '-92.31340'), ('Beroun', 3043, '45.91030', '-92.95530'), ('Brook Park', 156, '45.94890', '-93.07310'), ('Bruno', 102, '46.28050', '-92.66750'), ('Cloverdale', 1549, '46.01240', '-92.74040'), ('Cloverton', 623, '46.16810', '-92.31970'), ('Denham', 40, '46.36230', '-92.94360'), ('Duquette', 71, '46.37040', '-92.55360'), ('Duxbury', 102, '46.12780', '-92.50890'), ('Finlayson', 314, '46.20500', '-92.92760'), ('Friesland', 1291, '46.08630', '-92.92950'), ('Greely', 105, '45.74540', '-93.06860'), ('Harlis', 308, '46.41220', '-92.31280'), ('Henriette', 101, '45.87130', '-93.12000'), ('Hinckley', 1291, '46.01450', '-92.93840'), ('Kerrick', 71, '46.33970', '-92.58560'), ('Kingsdale', 71, '46.23840', '-92.31170'), ('Markville', 623, '46.09200', '-92.33080'), ('Nickerson', 71, '46.41130', '-92.49930'), ('Pine City', 3043, '45.83090', '-92.96990'), ('Rock Creek', 1119, '45.75930', '-92.96600'), ('Rutledge', 196, '46.26000', '-92.86920'), ('Sandstone', 1549, '46.12520', '-92.86460'), ('Sturgeon Lake', 347, '46.38330', '-92.82710'), ('West Rock', 3043, '45.76720', '-93.02180'), ('Willow River', 309, '46.32000', '-92.83670')], 'partOfState': 'east central', 'wfo': 'DLH'}, +'MNZ039': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Browns Valley', 690, '45.59480', '-96.83280'), ('Charlesville', 79, '45.94920', '-96.26860'), ('Collis', 126, '45.64620', '-96.42480'), ('Dumont', 122, '45.71680', '-96.42190'), ('Tintah', 79, '46.01100', '-96.32010'), ('Wheaton', 1619, '45.80580', '-96.49720')], 'partOfState': 'west central', 'wfo': 'ABR'}, +'MNZ040': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ashby', 472, '46.09320', '-95.81610'), ('Barrett', 355, '45.91070', '-95.89140'), ('Elbow Lake', 1275, '45.99180', '-95.97740'), ('Erdahl', 472, '45.99190', '-95.81750'), ('Herman', 452, '45.81060', '-96.13990'), ('Hoffman', 672, '45.83190', '-95.78590'), ('Norcross', 59, '45.86860', '-96.19590'), ('Wendell', 177, '46.03540', '-96.10100')], 'partOfState': 'west central', 'wfo': 'FGF'}, +'MNZ041': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alexandria', 8820, '45.87400', '-95.37510'), ('Brandon', 450, '45.96540', '-95.59690'), ('Carlos', 329, '45.97390', '-95.29280'), ('Evansville', 566, '46.00720', '-95.68370'), ('Forada', 197, '45.78950', '-95.35540'), ('Garfield', 281, '45.94040', '-95.49440'), ('Kensington', 286, '45.77790', '-95.69530'), ('Millerville', 115, '46.07110', '-95.55260'), ('Miltona', 279, '46.04480', '-95.29200'), ('Nelson', 172, '45.88500', '-95.26570'), ('Osakis', 1567, '45.86540', '-95.15280')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNZ042': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bertha', 470, '46.26600', '-95.06310'), ('Browerville', 735, '46.08570', '-94.86810'), ('Burtrum', 146, '45.86590', '-94.68720'), ('Clarissa', 609, '46.12920', '-94.94940'), ('Eagle Bend', 595, '46.16500', '-95.03400'), ('Grey Eagle', 335, '45.82500', '-94.74860'), ('Hewitt', 267, '46.32290', '-95.08790'), ('Long Prairie', 3040, '45.97960', '-94.86300'), ('Round Prairie', 709, '45.90500', '-94.88500'), ('Staples', 3104, '46.36400', '-94.80340'), ('West Union', 87, '45.80140', '-95.08330')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ043': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bowlus', 260, '45.82010', '-94.40750'), ('Buckman', 208, '45.89800', '-94.09230'), ('Camp Ripley Junction', 742, '46.07000', '-94.32800'), ('Elmdale', 107, '45.83730', '-94.49020'), ('Flensburg', 244, '45.94770', '-94.53010'), ('Genola', 71, '45.96880', '-94.11100'), ('Harding', 105, '46.12080', '-94.04380'), ('Hillman', 29, '46.00900', '-93.88820'), ('Lastrup', 99, '46.03980', '-94.06130'), ('Little Falls', 7719, '45.97790', '-94.36110'), ('Little Rock', 1055, '45.83200', '-94.09200'), ('Motley', 585, '46.33570', '-94.64320'), ('Pierz', 1277, '45.97850', '-94.10030'), ('Randall', 535, '46.08940', '-94.49970'), ('Royalton', 816, '45.83180', '-94.28940'), ('Sobieski', 196, '45.92430', '-94.48210'), ('Swanville', 351, '45.91620', '-94.63960'), ('Upsala', 424, '45.80810', '-94.56900')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ044': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bock', 106, '45.78500', '-93.55320'), ('Foreston', 389, '45.73320', '-93.70940'), ('Isle', 707, '46.14220', '-93.46040'), ('Milaca', 2580, '45.75790', '-93.65290'), ('Onamia', 847, '46.06930', '-93.66520'), ('Pease', 163, '45.69810', '-93.65060'), ('Princeton', 3933, '45.57060', '-93.59080'), ('Vineland', 607, '46.18270', '-93.77360'), ('Wahkon', 314, '46.11860', '-93.52370')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ045': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Grasston', 105, '45.79450', '-93.15390'), ('Mora', 3193, '45.87740', '-93.29330'), ('Ogilvie', 474, '45.83070', '-93.41990'), ('Quamba', 98, '45.91550', '-93.17470')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ046': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Artichoke', 47, '45.39920', '-96.15750'), ('Barry', 25, '45.55850', '-96.55970'), ('Beardsley', 262, '45.55780', '-96.71420'), ('Bonanza Grove', 262, '45.44560', '-96.70950'), ('Clinton', 453, '45.46220', '-96.44330'), ('Correll', 47, '45.23180', '-96.16270'), ('Graceville', 605, '45.56850', '-96.43750'), ('Johnson', 32, '45.57190', '-96.29380'), ('Lagoona Beach', 669, '45.36650', '-96.48560'), ('Odessa', 113, '45.26140', '-96.33120'), ('Ortonville', 2158, '45.30360', '-96.44090'), ('Yankeetown', 262, '45.49110', '-96.74020')], 'partOfState': 'west central', 'wfo': 'ABR'}, +'MNZ047': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alberta', 142, '45.57480', '-96.05030'), ('Chokio', 443, '45.57370', '-96.17410'), ('Donnelly', 254, '45.69000', '-96.01410'), ('Hancock', 717, '45.49830', '-95.79390'), ('Morris', 5068, '45.58590', '-95.90530')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNZ048': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cyrus', 303, '45.61510', '-95.73700'), ('Farwell', 57, '45.75190', '-95.61810'), ('Glenwood', 2594, '45.65330', '-95.38280'), ('Long Beach', 271, '45.64810', '-95.42980'), ('Lowry', 271, '45.70550', '-95.51720'), ('Sedan', 65, '45.57700', '-95.24550'), ('Starbuck', 1314, '45.61210', '-95.53300'), ('Villard', 244, '45.71350', '-95.26960'), ('Westport', 72, '45.71460', '-95.16730')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNZ049': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Albany', 1796, '45.63090', '-94.56870'), ('Avon', 1242, '45.60880', '-94.45150'), ('Belgrade', 750, '45.45000', '-94.99900'), ('Brooten', 649, '45.50030', '-95.11900'), ('Cold Spring', 2975, '45.45750', '-94.43150'), ('Elrosa', 166, '45.56250', '-94.94760'), ('Freeport', 454, '45.66300', '-94.68720'), ('Greenwald', 201, '45.60220', '-94.85900'), ('Holdingford', 736, '45.73080', '-94.47120'), ('Kimball', 635, '45.31330', '-94.30080'), ('Lake Henry', 90, '45.45780', '-94.79720'), ('Meire Grove', 149, '45.62710', '-94.86890'), ('Melrose', 3091, '45.67540', '-94.81210'), ('New Munich', 352, '45.63060', '-94.75280'), ('Paynesville', 2267, '45.37850', '-94.71970'), ('Pleasant Lake', 504, '45.49900', '-94.28500'), ('Richmond', 1213, '45.45260', '-94.51770'), ('Rockville', 749, '45.47240', '-94.33960'), ('Roscoe', 116, '45.43240', '-94.63520'), ('Sartell', 9641, '45.62050', '-94.20630'), ('Sauk Centre', 3930, '45.73780', '-94.95730'), ('Spring Hill', 55, '45.52340', '-94.83440'), ('St Cloud', 59107, '45.55400', '-94.17040'), ('St Joseph', 4681, '45.56650', '-94.31710'), ('St Martin', 278, '45.50410', '-94.66270'), ('St Rosa', 44, '45.73130', '-94.71500'), ('St Stephen', 860, '45.70210', '-94.27650'), ('St Wendel', 2221, '45.66600', '-94.36600'), ('Waite Park', 6568, '45.55250', '-94.22360')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ050': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Foley', 2154, '45.66320', '-93.90940'), ('Gilman', 215, '45.73530', '-93.95010'), ('Granite Ledge', 716, '45.80700', '-93.86500'), ('Oak Park', 876, '45.69800', '-93.81700'), ('Rice', 711, '45.74860', '-94.22870'), ('Ronneby', 16, '45.68220', '-93.86570'), ('Sauk Rapids', 10213, '45.59440', '-94.16610')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ051': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Becker', 2673, '45.37130', '-93.87340'), ('Big Lake', 6063, '45.33660', '-93.74660'), ('Clear Lake', 266, '45.44610', '-93.99800'), ('Elk River', 16447, '45.33260', '-93.56580'), ('Orrock', 3367, '45.44400', '-93.73600'), ('Santiago', 2080, '45.53900', '-93.81900'), ('Zimmerman', 2851, '45.44400', '-93.59240')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ052': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Braham', 1276, '45.72370', '-93.17340'), ('Cambridge', 5520, '45.56430', '-93.22690'), ('Isanti', 2324, '45.48990', '-93.25260'), ('Spencer Brook', 1616, '45.52200', '-93.44000'), ('Spring Lake', 1787, '45.54200', '-93.06500'), ('Weber', 883, '45.47500', '-93.12400')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ053': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Branch', 2696, '45.51460', '-92.95760'), ('Center City', 582, '45.39090', '-92.81810'), ('Chisago City', 2622, '45.37040', '-92.88800'), ('Harris', 1121, '45.60290', '-92.98910'), ('Lindstrom', 3015, '45.38590', '-92.84040'), ('North Branch', 8023, '45.51430', '-92.97840'), ('Rush City', 2102, '45.68170', '-92.96580'), ('Shafer', 343, '45.38770', '-92.74580'), ('Stacy', 1278, '45.39790', '-92.98780'), ('Taylors Falls', 951, '45.41140', '-92.66180'), ('Wyoming', 3048, '45.33360', '-92.99600')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ054': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bellingham', 205, '45.13560', '-96.28280'), ('Boyd', 210, '44.85100', '-95.90080'), ('Dawson', 1539, '44.92890', '-96.04900'), ('Louisburg', 26, '45.16620', '-96.17010'), ('Madison', 1768, '45.01380', '-96.18910'), ('Marietta', 174, '45.01030', '-96.41800'), ('Nassau', 83, '45.06800', '-96.44110')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNZ055': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Appleton', 2871, '45.20140', '-96.02290'), ('Benson', 3376, '45.31710', '-95.60710'), ('Clontarf', 173, '45.37630', '-95.67720'), ('Danvers', 108, '45.28260', '-95.75270'), ('De Graff', 133, '45.25920', '-95.46890'), ('Holloway', 112, '45.24760', '-95.91050'), ('Kerkhoven', 759, '45.19290', '-95.32000'), ('Murdock', 303, '45.22370', '-95.39410')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNZ056': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Clara City', 1393, '44.95800', '-95.36600'), ('Maynard', 388, '44.90490', '-95.46720'), ('Milan', 326, '45.11410', '-95.91350'), ('Montevideo', 5346, '44.95110', '-95.71850'), ('Watson', 209, '45.01030', '-95.79990')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNZ057': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Atwater', 1079, '45.13550', '-94.77690'), ('Blomkest', 186, '44.94320', '-95.02240'), ('Kandiyohi', 555, '45.13110', '-94.93230'), ('Lake Lillian', 257, '44.94570', '-94.88050'), ('New London', 1066, '45.29930', '-94.94560'), ('Pennock', 504, '45.14630', '-95.17530'), ('Prinsburg', 458, '44.93560', '-95.18580'), ('Raymond', 803, '45.01600', '-95.23720'), ('Regal', 40, '45.40500', '-94.84020'), ('Spicer', 1126, '45.23260', '-94.93860'), ('Sunburg', 110, '45.34790', '-95.23940'), ('Willmar', 18351, '45.12460', '-95.04960')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ058': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cedar Mills', 53, '44.94720', '-94.51730'), ('Cosmos', 582, '44.93590', '-94.69740'), ('Darwin', 276, '45.09700', '-94.40410'), ('Dassel', 1233, '45.08180', '-94.30740'), ('Eden Valley', 866, '45.32570', '-94.54570'), ('Forest City', 697, '45.20600', '-94.46600'), ('Grove City', 608, '45.15190', '-94.68140'), ('Kingston', 120, '45.19670', '-94.30970'), ('Litchfield', 6562, '45.11950', '-94.52710'), ('Watkins', 880, '45.31480', '-94.40790')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ059': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Albertville', 3621, '45.23920', '-93.66000'), ('Annandale', 2684, '45.26220', '-94.11890'), ('Buffalo', 10097, '45.17700', '-93.86850'), ('Clearwater', 858, '45.41020', '-94.04270'), ('Cokato', 2727, '45.07680', '-94.18940'), ('Delano', 3837, '45.04130', '-93.78550'), ('French Lake', 1114, '45.20000', '-94.18500'), ('Hanover', 1355, '45.15610', '-93.65860'), ('Howard Lake', 1853, '45.05960', '-94.06580'), ('Maple Lake', 1633, '45.23140', '-94.00300'), ('Monticello', 7868, '45.30470', '-93.80220'), ('Montrose', 1143, '45.06720', '-93.91230'), ('Rockford', 3484, '45.08910', '-93.73560'), ('South Haven', 204, '45.29150', '-94.21590'), ('St Michael', 9099, '45.21090', '-93.66370'), ('Waverly', 732, '45.06890', '-93.96900')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ060': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bloomington', 85172, '44.82950', '-93.31510'), ('Brooklyn Center', 29172, '45.06880', '-93.31780'), ('Brooklyn Park', 67388, '45.10960', '-93.35210'), ('Champlin', 22193, '45.16550', '-93.38920'), ('Corcoran', 5630, '45.11700', '-93.58630'), ('Crystal', 22698, '45.03730', '-93.35930'), ('Dayton', 4699, '45.18990', '-93.47170'), ('Eden Prairie', 54901, '44.84920', '-93.45810'), ('Edina', 47425, '44.89100', '-93.35960'), ('Golden Valley', 20281, '44.98990', '-93.35860'), ('Greenfield', 2544, '45.10490', '-93.69640'), ('Hopkins', 17145, '44.92670', '-93.40530'), ('Independence', 3236, '45.02210', '-93.70520'), ('Long Lake', 1842, '44.98530', '-93.56880'), ('Loretto', 570, '45.05540', '-93.63520'), ('Maple Grove', 50365, '45.10600', '-93.46000'), ('Maple Plain', 2088, '45.00890', '-93.66150'), ('Medina', 4005, '45.03120', '-93.59530'), ('Minneapolis', 382618, '44.96180', '-93.26680'), ('New Hope', 20873, '45.03700', '-93.38700'), ('Osseo', 2434, '45.11790', '-93.39910'), ('Plymouth', 65894, '45.02430', '-93.46020'), ('Richfield', 34439, '44.87720', '-93.28210'), ('Robbinsdale', 14123, '45.02670', '-93.33320'), ('Rogers', 3588, '45.19390', '-93.55170'), ('St Bonifacius', 1873, '44.90490', '-93.74700'), ('St Louis Park', 44126, '44.94860', '-93.36490'), ('The Lake Minnetonk', 51301, '44.93210', '-93.46140')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ061': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Andover', 26588, '45.25750', '-93.33110'), ('Anoka', 18076, '45.21040', '-93.39010'), ('Bethel', 443, '45.40060', '-93.26940'), ('Blaine', 44942, '45.16610', '-93.20840'), ('Centerville', 3202, '45.16500', '-93.05300'), ('Circle Pines', 4663, '45.13850', '-93.15240'), ('Columbia Heights', 18520, '45.04910', '-93.24660'), ('Coon Rapids', 61607, '45.17410', '-93.31110'), ('East Bethel', 10941, '45.34420', '-93.20140'), ('Fridley', 27449, '45.08480', '-93.25890'), ('Ham Lake', 12710, '45.26000', '-93.20080'), ('Lino Lakes', 16791, '45.16190', '-93.08250'), ('Oak Grove', 7944, '45.32000', '-93.34700'), ('Ramsey', 18510, '45.26340', '-93.44770'), ('St Francis', 7101, '45.38500', '-93.36000'), ('St Francis', 4910, '45.39980', '-93.38960')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ062': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Arden Hills', 9652, '45.07140', '-93.16540'), ('Falcon Heights', 5572, '44.98790', '-93.17940'), ('Little Canada', 9771, '45.02370', '-93.08390'), ('Maplewood', 34947, '44.99290', '-93.02370'), ('Mounds View', 12738, '45.10600', '-93.20610'), ('New Brighton', 22206, '45.06560', '-93.20430'), ('North Oaks', 3883, '45.10680', '-93.08720'), ('North St Paul', 11929, '45.01410', '-92.99830'), ('Roseville', 33690, '45.01520', '-93.15250'), ('Shoreview', 25924, '45.08390', '-93.13590'), ('St Paul', 287151, '44.94770', '-93.10370'), ('Vadnais Heights', 13069, '45.05640', '-93.07300'), ('White Bear Lake', 24325, '45.06770', '-93.01270')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ063': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Afton', 2839, '44.90320', '-92.81880'), ('Bayport', 3162, '45.01780', '-92.78020'), ('Cottage Grove', 30582, '44.81750', '-92.92700'), ('Forest Lake', 6798, '45.27580', '-92.98580'), ('Hugo', 6363, '45.15910', '-92.96300'), ('Lake Elmo', 6863, '44.99540', '-92.90770'), ('Lakeland', 1917, '44.95050', '-92.77060'), ('Lake St Croix Beach', 1101, '44.92200', '-92.76600'), ('Mahtomedi', 7563, '45.05610', '-92.96080'), ('Marine On St Croix', 602, '45.19800', '-92.77320'), ('Newport', 3715, '44.87450', '-92.99860'), ('Oakdale', 26653, '44.98870', '-92.96630'), ('Scandia', 3846, '45.25300', '-92.80500'), ('Stillwater', 15143, '45.05650', '-92.82220'), ('St Paul Park', 5070, '44.83940', '-92.99500'), ('Woodbury', 46463, '44.91900', '-92.93300')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ064': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Canby', 1903, '44.71460', '-96.26900'), ('Clarkfield', 944, '44.79120', '-95.80730'), ('Echo', 278, '44.62270', '-95.41130'), ('Granite Falls', 3070, '44.81110', '-95.53870'), ('Hanley Falls', 323, '44.69190', '-95.61910'), ('Hazel Run', 64, '44.74980', '-95.71610'), ('Porter', 190, '44.64070', '-96.16960'), ('St Leo', 106, '44.71610', '-96.05470'), ('Wood Lake', 436, '44.65080', '-95.53490')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'MNZ065': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bird Island', 1195, '44.76480', '-94.89400'), ('Buffalo Lake', 768, '44.73670', '-94.61770'), ('Danube', 529, '44.79130', '-95.10250'), ('Fairfax', 1295, '44.52820', '-94.72290'), ('Franklin', 498, '44.53090', '-94.88610'), ('Hector', 1166, '44.74140', '-94.71270'), ('Morton', 442, '44.55300', '-94.98490'), ('Olivia', 2570, '44.77580', '-94.99710'), ('Renville', 1323, '44.79420', '-95.21110'), ('Sacred Heart', 549, '44.78310', '-95.35030')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ066': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Biscay', 114, '44.82650', '-94.27410'), ('Brownton', 807, '44.73260', '-94.35120'), ('Glencoe', 5453, '44.76950', '-94.14950'), ('Hutchinson', 13080, '44.88880', '-94.37470'), ('Lester Prairie', 1377, '44.88370', '-94.03970'), ('Plato', 336, '44.77240', '-94.03900'), ('Silver Lake', 761, '44.90380', '-94.19750'), ('Stewart', 564, '44.72510', '-94.48790'), ('Winsted', 2094, '44.96580', '-94.04880')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ067': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Arlington', 2048, '44.60710', '-94.07790'), ('Gaylord', 2279, '44.55450', '-94.21820'), ('Gibbon', 808, '44.53510', '-94.52300'), ('Green Isle', 334, '44.67810', '-94.00620'), ('Henderson', 910, '44.53030', '-93.90790'), ('New Auburn', 488, '44.67280', '-94.22890'), ('Winthrop', 1367, '44.54370', '-94.36460')], 'partOfState': 'central', 'wfo': 'MPX'}, +'MNZ068': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Carver', 1266, '44.76040', '-93.62750'), ('Chanhassen', 20321, '44.85720', '-93.55780'), ('Chaska', 17449, '44.82110', '-93.60510'), ('Cologne', 1012, '44.77160', '-93.78800'), ('Hamburg', 538, '44.73160', '-93.96320'), ('Mayer', 554, '44.88420', '-93.88830'), ('New Germany', 346, '44.88370', '-93.97090'), ('Norwood/Young America', 3108, '44.78070', '-93.91530'), ('Victoria', 4025, '44.86610', '-93.65840'), ('Waconia', 6814, '44.84790', '-93.79410'), ('Watertown', 3029, '44.96310', '-93.84570')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ069': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Belle Plaine', 3789, '44.62360', '-93.76420'), ('Credit River', 4449, '44.67700', '-93.36800'), ('Elko', 472, '44.56530', '-93.32450'), ('Jordan', 3833, '44.66850', '-93.63220'), ('New Market', 332, '44.57210', '-93.34970'), ('New Prague', 4559, '44.54660', '-93.57400'), ('Prior Lake', 15917, '44.72850', '-93.43400'), ('Savage', 21115, '44.75540', '-93.35720'), ('Shakopee', 20568, '44.77060', '-93.47560')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ070': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Apple Valley', 45527, '44.74920', '-93.19750'), ('Burnsville', 60220, '44.76460', '-93.27990'), ('Coates', 155, '44.71700', '-93.03600'), ('Eagan', 63557, '44.81940', '-93.16300'), ('Farmington', 12365, '44.65720', '-93.17830'), ('Hampton', 434, '44.60930', '-93.00230'), ('Hastings', 18204, '44.73280', '-92.85250'), ('Inver Grove Heights', 29751, '44.82520', '-93.05770'), ('Lakeville', 43128, '44.67940', '-93.24480'), ('Mendota Heights', 11434, '44.88220', '-93.14030'), ('Miesville', 135, '44.60020', '-92.81000'), ('New Trier', 116, '44.60390', '-92.93320'), ('Rosemount', 14619, '44.74760', '-93.07080'), ('South St Paul', 20197, '44.88790', '-93.04010'), ('Vermillion', 437, '44.67460', '-92.96410'), ('West St Paul', 19405, '44.90260', '-93.08560')], 'partOfState': 'east central', 'wfo': 'MPX'}, +'MNZ071': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Arco', 100, '44.38350', '-96.18080'), ('Hendricks', 725, '44.50860', '-96.42630'), ('Ivanhoe', 679, '44.46410', '-96.25040'), ('Lake Benton', 703, '44.26260', '-96.29250'), ('Tyler', 1218, '44.27930', '-96.13510')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNZ072': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Balaton', 637, '44.23330', '-95.87110'), ('Camden State Park', 0, '44.35613', '-95.93173'), ('Cottonwood', 1148, '44.60990', '-95.67080'), ('Florence', 61, '44.23690', '-96.05150'), ('Garvin', 159, '44.21480', '-95.76090'), ('Ghent', 315, '44.51280', '-95.89240'), ('Lynd', 346, '44.38510', '-95.89560'), ('Marshall', 12735, '44.45070', '-95.78950'), ('Minneota', 1449, '44.56370', '-95.98200'), ('Russell', 371, '44.31890', '-95.94800'), ('Taunton', 207, '44.59310', '-96.06320'), ('Tracy', 2268, '44.23220', '-95.61951')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNZ073': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Belview', 412, '44.60590', '-95.32880'), ('Clements', 191, '44.37990', '-95.05480'), ('Delhi', 69, '44.59820', '-95.21300'), ('Lamberton', 859, '44.22970', '-95.26410'), ('Lucan', 226, '44.40930', '-95.41270'), ('Milroy', 271, '44.41740', '-95.55400'), ('Morgan', 903, '44.41570', '-94.92460'), ('North Redwood', 204, '44.56360', '-95.09350'), ('Redwood Falls', 5459, '44.54160', '-95.11370'), ('Revere', 100, '44.21890', '-95.36330'), ('Sanborn', 434, '44.21020', '-95.12900'), ('Seaforth', 77, '44.47690', '-95.32930'), ('Vesta', 339, '44.50650', '-95.41370'), ('Wabasso', 643, '44.40260', '-95.25500'), ('Walnut Grove', 599, '44.22560', '-95.46860'), ('Wanda', 103, '44.31600', '-95.21210')], 'partOfState': 'southwest', 'wfo': 'MPX'}, +'MNZ074': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cobden', 61, '44.28390', '-94.84770'), ('Comfrey', 367, '44.11090', '-94.90270'), ('Essig', 762, '44.32400', '-94.60400'), ('Evan', 91, '44.35250', '-94.83690'), ('Hanska', 443, '44.14810', '-94.49460'), ('New Ulm', 13594, '44.31310', '-94.46370'), ('Searles', 913, '44.22800', '-94.43400'), ('Sleepy Eye', 3515, '44.29990', '-94.72480'), ('Springfield', 2215, '44.23790', '-94.97680')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ075': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Courtland', 538, '44.26650', '-94.34400'), ('Lafayette', 529, '44.44830', '-94.39330'), ('New Sweden', 327, '44.40700', '-94.18900'), ('Nicollet', 889, '44.27560', '-94.18810'), ('North Mankato', 11798, '44.17620', '-94.03090'), ('Oshawa', 464, '44.30000', '-94.10500'), ('St Peter', 9747, '44.32900', '-93.96390')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ076': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Cleveland', 673, '44.32380', '-93.83510'), ('Elysian', 486, '44.20000', '-93.67710'), ('Heidelberg', 72, '44.49340', '-93.62360'), ('Kasota', 680, '44.29020', '-93.96820'), ('Kilkenny', 148, '44.31320', '-93.57430'), ('Le Center', 2240, '44.38760', '-93.73290'), ('Le Sueur', 3922, '44.46320', '-93.90610'), ('Montgomery', 2794, '44.43920', '-93.58050'), ('Waterville', 1833, '44.22270', '-93.57430')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ077': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Dundas', 547, '44.42970', '-93.20490'), ('Faribault', 20818, '44.29740', '-93.27490'), ('Lonsdale', 1491, '44.47760', '-93.42780'), ('Morristown', 981, '44.22470', '-93.44480'), ('Nerstrand', 233, '44.34080', '-93.06250'), ('Northfield', 17147, '44.45440', '-93.16530'), ('Veseli', 1393, '44.51500', '-93.45900')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ078': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bellechester', 172, '44.37090', '-92.51170'), ('Cannon Falls', 3795, '44.51650', '-92.90260'), ('Dennison', 168, '44.40340', '-93.02870'), ('Goodhue', 778, '44.40060', '-92.62160'), ('Kenyon', 1661, '44.27240', '-92.98580'), ('Pine Island', 2337, '44.20490', '-92.64960'), ('Red Wing', 16116, '44.58190', '-92.60210'), ('Vasa', 908, '44.50300', '-92.72200'), ('Wanamingo', 1007, '44.30530', '-92.79150'), ('Zumbrota', 2789, '44.29450', '-92.67260')], 'partOfState': 'southeast', 'wfo': 'MPX'}, +'MNZ079': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bear Valley', 177, '44.31433', '-92.45043'), ('Conception', 439, '44.26498', '-92.10136'), ('Dumfries', 2599, '44.34905', '-92.11781'), ('Elgin', 826, '44.13090', '-92.25390'), ('Hammond', 198, '44.22170', '-92.37370'), ('Jarrett', 198, '44.23391', '-92.33529'), ('Kellogg', 439, '44.30700', '-91.99880'), ('Lake City', 4950, '44.44650', '-92.27810'), ('Maple Springs', 873, '44.41484', '-92.16715'), ('Mazeppa', 778, '44.27360', '-92.54080'), ('Millville', 186, '44.24510', '-92.29620'), ('Minneiska', 116, '44.19480', '-91.87150'), ('Oak Center', 177, '44.34905', '-92.39925'), ('Plainview', 3190, '44.16560', '-92.16890'), ('Theilman', 186, '44.29788', '-92.20005'), ('Wabasha', 2599, '44.37150', '-92.04510'), ('West Albany', 186, '44.29788', '-92.28595'), ('Zumbro Falls', 177, '44.28690', '-92.42630')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNZ080': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Avoca', 146, '43.94950', '-95.64530'), ('Chandler', 276, '43.92940', '-95.94910'), ('Current Lake', 637, '44.13800', '-95.94140'), ('Currie', 225, '44.07100', '-95.66660'), ('Dovray', 67, '44.05480', '-95.54610'), ('Fulda', 1283, '43.87000', '-95.60230'), ('Hadley', 81, '43.99740', '-95.85810'), ('Iona', 173, '43.91490', '-95.78500'), ('Lake Shetek State Park', 0, '44.10079', '-95.68709'), ('Lake Wilson', 270, '43.99480', '-95.95300'), ('Slayton', 2072, '43.99050', '-95.75490')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNZ081': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Bingham Lake', 167, '43.90940', '-95.04540'), ('Delft', 167, '43.98570', '-95.08820'), ('Jeffers', 396, '44.05550', '-95.19550'), ('Mountain Lake', 2082, '43.94030', '-94.92620'), ('Storden', 274, '44.03960', '-95.31990'), ('Westbrook', 755, '44.04260', '-95.43490'), ('Windom', 4490, '43.86950', '-95.11830')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNZ082': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Butterfield', 564, '43.95820', '-94.79300'), ('Darfur', 137, '44.05360', '-94.83730'), ('La Salle', 90, '44.07210', '-94.57000'), ('Lewisville', 274, '43.92400', '-94.43510'), ('Madelia', 2340, '44.04930', '-94.41710'), ('Odin', 125, '43.86760', '-94.74170'), ('Ormsby', 154, '43.85100', '-94.69860'), ('St James', 4695, '43.98480', '-94.62530'), ('Sveadahl', 292, '44.07400', '-94.73900')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ083': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Amboy', 575, '43.88850', '-94.15730'), ('Eagle Lake', 1787, '44.15940', '-93.88250'), ('Garden City', 666, '44.04700', '-94.16400'), ('Good Thunder', 592, '44.00670', '-94.07010'), ('Judson', 563, '44.19600', '-94.19500'), ('Lake Crystal', 2420, '44.10340', '-94.21790'), ('Madison Lake', 837, '44.20220', '-93.81440'), ('Mankato', 32427, '44.16670', '-93.99110'), ('Mapleton', 1678, '43.92590', '-93.95390'), ('Pemberton', 246, '44.00890', '-93.78390'), ('Skyline', 330, '44.14020', '-94.03520'), ('St Clair', 827, '44.08110', '-93.85750'), ('Vernon Center', 359, '43.96340', '-94.16670')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ084': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Janesville', 2109, '44.11670', '-93.70780'), ('New Richland', 1197, '43.89340', '-93.49300'), ('Smiths Mill', 517, '44.13700', '-93.76600'), ('Waldorf', 242, '43.93260', '-93.69670'), ('Waseca', 8493, '44.08110', '-93.50190')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ085': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Blooming Prairie', 1933, '43.86850', '-93.05450'), ('Ellendale', 590, '43.87360', '-93.30120'), ('Lemond', 525, '43.98200', '-93.37900'), ('Medford', 984, '44.17170', '-93.24450'), ('Owatonna', 22434, '44.08520', '-93.22430')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ086': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Berne', 1054, '44.16447', '-92.76659'), ('Claremont', 620, '44.04470', '-92.99620'), ('Concord', 836, '44.14985', '-92.83421'), ('Dodge Center', 2226, '44.02860', '-92.84900'), ('Eden', 836, '44.09867', '-92.88356'), ('Hayfield', 1325, '43.89010', '-92.84700'), ('Kasson', 4398, '44.02920', '-92.75290'), ('Mantorville', 1054, '44.06590', '-92.75340'), ('Oslo', 76, '43.88119', '-92.74832'), ('Wasioja', 1054, '44.08040', '-92.81411'), ('West Concord', 836, '44.15300', '-92.89970')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNZ087': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Byron', 3500, '44.03340', '-92.64610'), ('Chester', 1644, '43.99816', '-92.35174'), ('Cummingsville', 2394, '43.88302', '-92.26584'), ('Douglas', 883, '44.11695', '-92.56739'), ('Dover', 438, '43.96990', '-92.13370'), ('Eyota', 1644, '43.98760', '-92.22820'), ('Genoa', 3500, '44.11512', '-92.61673'), ('High Forest', 5411, '43.84647', '-92.55094'), ('Little Valley', 3190, '44.08223', '-92.13426'), ('Marion', 1644, '43.94881', '-92.35174'), ('Oronoco', 883, '44.16350', '-92.54090'), ('Pleasant Grove', 5411, '43.86292', '-92.38463'), ('Potsdam', 198, '44.16447', '-92.34991'), ('Predmore', 1644, '43.93419', '-92.33529'), ('Ringe', 198, '44.11512', '-92.39925'), ('Rochester', 85806, '44.01360', '-92.47570'), ('Rock Dell', 3500, '43.91226', '-92.65146'), ('Salem Corners', 3500, '43.98354', '-92.60028'), ('Simpson', 85806, '43.93237', '-92.40108'), ('Stewartville', 5411, '43.85730', '-92.48700'), ('Viola', 826, '44.06578', '-92.26584')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNZ088': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Altura', 417, '44.06980', '-91.93890'), ('Beaver', 214, '44.14802', '-92.03374'), ('Bethany', 417, '44.02923', '-91.91861'), ('Dakota', 329, '43.91180', '-91.35860'), ('Elba', 214, '44.08710', '-92.01730'), ('Fremont', 1484, '43.91409', '-91.90033'), ('Goodview', 3373, '44.06720', '-91.71070'), ('Hart', 1696, '43.88119', '-91.73585'), ('Lewiston', 1484, '43.98490', '-91.86790'), ('Minnesota City', 235, '44.09200', '-91.75010'), ('New Hartford', 329, '43.88119', '-91.48365'), ('Nodine', 329, '43.89764', '-91.45075'), ('Pickwick', 27069, '43.98171', '-91.60061'), ('Ridgeway', 1020, '43.91409', '-91.56772'), ('Rollingstone', 697, '44.09990', '-91.81910'), ('Saratoga', 3295, '43.88119', '-92.06847'), ('St. Charles', 3295, '43.96960', '-92.06410'), ('Stockton', 682, '44.02800', '-91.77230'), ('Troy', 3295, '43.86109', '-92.06664'), ('Utica', 230, '43.97640', '-91.95070'), ('Whitman', 697, '44.14802', '-91.79982'), ('Wilson', 27069, '43.94881', '-91.69930'), ('Winona', 27069, '44.04780', '-91.65710'), ('Witoka', 27069, '43.93237', '-91.61706'), ('Wyattville', 1484, '43.93237', '-91.79982')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNZ089': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Adrian', 1234, '43.63460', '-95.93240'), ('Bigelow', 231, '43.50540', '-95.68910'), ('Brewster', 502, '43.69620', '-95.46480'), ('Dundee', 102, '43.84430', '-95.46610'), ('Ellsworth', 540, '43.52110', '-96.01850'), ('Kinbrae', 21, '43.82630', '-95.48020'), ('Lismore', 238, '43.74940', '-95.94820'), ('Round Lake', 424, '43.53880', '-95.46930'), ('Rushmore', 376, '43.62010', '-95.79880'), ('Wilmont', 332, '43.76400', '-95.82830'), ('Worthington', 11283, '43.62720', '-95.59840')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNZ090': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Alpha', 126, '43.63920', '-94.87140'), ('Bergen', 167, '43.79120', '-94.99470'), ('Heron Lake', 768, '43.79530', '-95.32360'), ('Jackson', 3501, '43.62440', '-94.98900'), ('Kilen Woods State Park', 167, '43.72744', '-95.06432'), ('Lakefield', 1721, '43.67790', '-95.17110'), ('Okabena', 185, '43.73860', '-95.31580'), ('Wilder', 69, '43.82550', '-95.20630')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNZ091': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Ceylon', 413, '43.53190', '-94.63200'), ('Dunnell', 197, '43.56050', '-94.77370'), ('Fairmont', 10889, '43.64240', '-94.45780'), ('Granada', 317, '43.69360', '-94.34930'), ('Imogene', 266, '43.66000', '-94.34500'), ('Northrop', 262, '43.73560', '-94.43560'), ('Sherburn', 1082, '43.65380', '-94.72650'), ('Trimont', 754, '43.76140', '-94.71540'), ('Truman', 1259, '43.82800', '-94.43620'), ('Welcome', 721, '43.66840', '-94.61850')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ092': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Blue Earth', 3621, '43.63910', '-94.09980'), ('Bricelyn', 379, '43.56070', '-93.81300'), ('Delavan', 223, '43.76730', '-94.01850'), ('Easton', 214, '43.76590', '-93.90030'), ('Elmore', 735, '43.50590', '-94.08850'), ('Frost', 251, '43.58370', '-93.92540'), ('Kiester', 540, '43.53660', '-93.71140'), ('Minnesota Lake', 681, '43.84050', '-93.82870'), ('Walters', 88, '43.60520', '-93.67350'), ('Wells', 2494, '43.74370', '-93.72620'), ('Winnebago', 1487, '43.76600', '-94.16830')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ093': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Albert Lea', 18356, '43.65510', '-93.36660'), ('Alden', 652, '43.67010', '-93.57320'), ('Clarks Grove', 734, '43.76440', '-93.32780'), ('Conger', 133, '43.61530', '-93.52860'), ('Emmons', 432, '43.50740', '-93.48380'), ('Freeborn', 305, '43.76640', '-93.56320'), ('Geneva', 449, '43.82390', '-93.26830'), ('Glenville', 720, '43.56900', '-93.27560'), ('Hartland', 288, '43.80430', '-93.48560'), ('Hayward', 249, '43.64940', '-93.24670'), ('Hollandale', 292, '43.75980', '-93.20540'), ('London', 334, '43.52600', '-93.06200'), ('Manchester', 81, '43.72490', '-93.45060'), ('Matawan', 255, '43.83800', '-93.63500'), ('Myrtle', 63, '43.56320', '-93.16290'), ('Twin Lakes', 168, '43.56090', '-93.42330')], 'partOfState': 'south central', 'wfo': 'MPX'}, +'MNZ094': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Adams', 800, '43.56500', '-92.71850'), ('Austin', 23314, '43.67150', '-92.97060'), ('Brownsdale', 718, '43.74030', '-92.86740'), ('Dexter', 333, '43.71810', '-92.70250'), ('Elkton', 149, '43.65980', '-92.70870'), ('Grand Meadow', 945, '43.70520', '-92.57180'), ('Hamilton', 355, '43.76423', '-92.45043'), ('Johnsburg', 481, '43.50837', '-92.77573'), ('Lansing', 189, '43.74961', '-92.96762'), ('Le Roy', 925, '43.51360', '-92.50780'), ('Lyle', 566, '43.50540', '-92.94200'), ('Mapleview', 189, '43.68900', '-92.97490'), ('Mayville', 718, '43.76423', '-92.91645'), ('Racine', 355, '43.77650', '-92.48200'), ('Ramsey', 18510, '43.71671', '-92.98590'), ('Renova', 76, '43.73134', '-92.78304'), ('Rose Creek', 354, '43.60460', '-92.82960'), ('Sargeant', 76, '43.80560', '-92.80090'), ('Taopi', 93, '43.55840', '-92.64040'), ('Varco', 23314, '43.61437', '-92.98407'), ('Waltham', 196, '43.82070', '-92.87520')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNZ095': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Amherst', 343, '43.61254', '-91.91678'), ('Arendahl', 269, '43.83185', '-91.91495'), ('Bratsberg', 714, '43.73134', '-91.76692'), ('Bristol', 438, '43.54858', '-92.18360'), ('Canton', 343, '43.53010', '-91.92940'), ('Carimona', 343, '43.66554', '-92.16715'), ('Chatfield', 2394, '43.84390', '-92.18590'), ('Cherry Grove', 158, '43.57965', '-92.28412'), ('Choice', 269, '43.66372', '-91.79982'), ('Etna', 212, '43.59792', '-92.34991'), ('Fillmore', 460, '43.74778', '-92.26767'), ('Fountain', 343, '43.74070', '-92.13400'), ('Granger', 1080, '43.50106', '-92.09954'), ('Greenleafton', 460, '43.58148', '-92.21833'), ('Harmony', 1080, '43.55530', '-92.00940'), ('Henrytown', 343, '43.59792', '-91.93506'), ('Highland', 64, '43.68382', '-91.88388'), ('Hutton', 1426, '43.61437', '-92.05202'), ('Isinours', 1426, '43.71489', '-92.05019'), ('Lanesboro', 788, '43.71950', '-91.97350'), ('Lenora', 343, '43.56503', '-91.90033'), ('Mabel', 766, '43.52030', '-91.76830'), ('Newburg', 766, '43.56503', '-91.83271'), ('Ostrander', 212, '43.61400', '-92.42560'), ('Peterson', 269, '43.78600', '-91.83320'), ('Pilot Mound', 788, '43.81540', '-92.03557'), ('Preston', 1426, '43.67160', '-92.08250'), ('Rushford', 1696, '43.81230', '-91.75240'), ('Rushford Village', 714, '43.80440', '-91.78730'), ('Spring Valley', 2518, '43.68600', '-92.38990'), ('Tawney', 766, '43.61620', '-91.79982'), ('Washington', 2518, '43.76423', '-92.34991'), ('Whalan', 64, '43.73280', '-91.92770'), ('Wykoff', 460, '43.70820', '-92.26740'), ('York', 438, '43.53213', '-92.26584')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNZ096': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Black Hammer', 1304, '43.61254', '-91.66640'), ('Brownsville', 517, '43.69860', '-91.28050'), ('Caledonia', 2965, '43.63410', '-91.50030'), ('Eitzen', 229, '43.50830', '-91.46470'), ('Freeburg', 517, '43.61254', '-91.36669'), ('Hokah', 614, '43.76010', '-91.35000'), ('Houston', 1020, '43.76070', '-91.57230'), ('La Crescent', 4923, '43.82940', '-91.30080'), ('Money Creek', 1020, '43.81540', '-91.61523'), ('Mound Prairie', 614, '43.78068', '-91.45075'), ('Newhouse', 766, '43.51568', '-91.71758'), ('Perkins', 1020, '43.78251', '-91.64996'), ('Reno', 266, '43.59792', '-91.28079'), ('Riceford', 766, '43.58330', '-91.72489'), ('Sheldon', 1020, '43.68199', '-91.60244'), ('Spring Grove', 1304, '43.56100', '-91.63950'), ('Willington Grove', 1304, '43.57965', '-91.58416'), ('Wilmington', 1304, '43.54858', '-91.54944')], 'partOfState': 'southeast', 'wfo': 'ARX'}, +'MNZ097': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Edgerton', 1033, '43.87420', '-96.13060'), ('Hatfield', 47, '43.95160', '-96.18910'), ('Holland', 215, '44.09090', '-96.19170'), ('Ihlen', 107, '43.91000', '-96.37190'), ('Jasper', 597, '43.84960', '-96.39950'), ('Pipestone', 4280, '44.00000', '-96.31410'), ('Pipestone National Monument', 0, '44.04758', '-96.32524'), ('Ruthton', 284, '44.17780', '-96.10390'), ('Trosky', 116, '43.88840', '-96.25570'), ('Woodstock', 132, '44.01040', '-96.09650')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MNZ098': {'fullStateName': 'Minnesota', 'state': 'MN', 'cities': [('Beaver Creek', 250, '43.61260', '-96.36180'), ('Blue Mounds State Park', 0, '43.70318', '-96.18909'), ('Hardwick', 222, '43.77520', '-96.19670'), ('Hills', 565, '43.52650', '-96.36080'), ('Kenneth', 61, '43.75330', '-96.07180'), ('Luverne', 4617, '43.65480', '-96.20990'), ('Magnolia', 221, '43.64490', '-96.07450'), ('Steen', 182, '43.51320', '-96.26220')], 'partOfState': 'southwest', 'wfo': 'FSD'}, +'MOZ001': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Fairfax', 645, '40.33860', '-95.39310'), ('Phelps City', 31, '40.40330', '-95.59810'), ('Rockport', 1395, '40.41110', '-95.51670'), ('Tarkio', 1935, '40.44030', '-95.37750'), ('Watson', 121, '40.47850', '-95.62270'), ('Westboro', 163, '40.53470', '-95.31890')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ002': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arkoe', 58, '40.25880', '-94.82960'), ('Barnard', 257, '40.17440', '-94.82260'), ('Burlington Junction', 632, '40.44720', '-95.06740'), ('Clearmont', 191, '40.50740', '-95.03290'), ('Clyde', 74, '40.26620', '-94.66830'), ('Conception', 0, '40.24450', '-94.68570'), ('Conception Junction', 202, '40.26830', '-94.69070'), ('Elmo', 166, '40.51880', '-95.11720'), ('Graham', 191, '40.20080', '-95.03980'), ('Guilford', 87, '40.17030', '-94.73610'), ('Hopkins', 579, '40.55110', '-94.81620'), ('Maryville', 10581, '40.34330', '-94.87220'), ('Parnell', 197, '40.44010', '-94.62180'), ('Pickering', 154, '40.45060', '-94.84170'), ('Quitman', 46, '40.37310', '-95.07670'), ('Ravenwood', 448, '40.35260', '-94.67120'), ('Skidmore', 342, '40.28750', '-95.08110')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ003': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Allendale', 54, '40.48620', '-94.28870'), ('Denver', 40, '40.39900', '-94.32370'), ('Grant City', 926, '40.48600', '-94.41390'), ('Sheridan', 185, '40.51740', '-94.61460'), ('Worth', 94, '40.40550', '-94.44680')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ004': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Albany', 1937, '40.24820', '-94.33390'), ('Darlington', 113, '40.19880', '-94.39580'), ('Ford City', 29, '40.11220', '-94.46480'), ('Gentry', 101, '40.33310', '-94.42350'), ('King City', 1012, '40.05060', '-94.52470'), ('McFall', 135, '40.11170', '-94.22250'), ('Stanberry', 1243, '40.21670', '-94.53800')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ005': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bethany', 3087, '40.26780', '-94.02830'), ('Blythedale', 233, '40.47520', '-93.92720'), ('Cainsville', 370, '40.43750', '-93.77450'), ('Eagleville', 321, '40.46870', '-93.98810'), ('Gilman City', 380, '40.14170', '-93.87240'), ('Hatfield', 0, '40.52790', '-94.15000'), ('Martinsville', 0, '40.33860', '-94.16070'), ('Mount Moriah', 143, '40.32930', '-93.79730'), ('New Hampton', 349, '40.26510', '-94.19580'), ('Ridgeway', 530, '40.37780', '-93.93770')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ006': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Mercer', 342, '40.51100', '-93.52930'), ('Mill Grove', 0, '40.30890', '-93.59390'), ('Modena', 0, '40.30000', '-93.68330'), ('Princeton', 1047, '40.39710', '-93.58810'), ('South Lineville', 37, '40.57790', '-93.52360')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ007': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Lemons', 0, '40.40530', '-93.04830'), ('Livonia', 114, '40.49160', '-92.69970'), ('Lucerne', 92, '40.46370', '-93.29160'), ('Powersville', 86, '40.54990', '-93.30080'), ('Unionville', 2041, '40.47570', '-93.00370'), ('Worthington', 89, '40.40810', '-92.68880')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ008': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Downing', 396, '40.48640', '-92.36850'), ('Glenwood', 203, '40.52360', '-92.57630'), ('Greentop', 427, '40.34690', '-92.56590'), ('Lancaster', 737, '40.52270', '-92.52780'), ('Queen City', 638, '40.41370', '-92.56660')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'MOZ009': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arbela', 40, '40.46300', '-92.01600'), ('Azen', 40, '40.55500', '-92.03140'), ('Bible Grove', 159, '40.35020', '-92.30400'), ('Brock', 2061, '40.55080', '-92.15060'), ('Crawford', 396, '40.46670', '-92.27000'), ('Etna', 44, '40.41730', '-91.97410'), ('Granger', 44, '40.46750', '-91.97310'), ('Hitt', 2061, '40.55900', '-92.25140'), ('Indian Hills Conservation Area', 159, '40.31670', '-92.26670'), ('Kilwinning', 396, '40.51220', '-92.33940'), ('Memphis', 2061, '40.46090', '-92.16970'), ('Memphis Memorial Airport', 2061, '40.45900', '-92.21970'), ('Prospect Grove', 44, '40.51880', '-91.98520'), ('Rutledge', 103, '40.31300', '-92.08740'), ('Sand Hill', 103, '40.31200', '-92.11800'), ('South Gorin', 143, '40.36010', '-92.02410'), ('Spillman Mound', 159, '40.31790', '-92.17000')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'MOZ010': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Alexandria', 166, '40.35970', '-91.45920'), ('Anson', 655, '40.56830', '-91.76870'), ('Antioch', 2241, '40.31880', '-91.68410'), ('Ashton', 102, '40.45030', '-91.80110'), ('Athens State Park', 121, '40.57300', '-91.69000'), ('Chambersburg', 102, '40.51800', '-91.80060'), ('Clark City', 2241, '40.41800', '-91.68010'), ('Fairmont', 310, '40.33360', '-91.90140'), ('Frost Island Conservation Area', 425, '40.44000', '-91.54860'), ('Gregory Landing', 166, '40.28360', '-91.50500'), ('Heath Memorial Conservation Area', 53, '40.57880', '-91.89470'), ('Kahoka', 2241, '40.42380', '-91.71840'), ('Luray', 102, '40.45250', '-91.88430'), ('Medill', 2241, '40.43380', '-91.76770'), ('Neeper', 2241, '40.33360', '-91.78440'), ('Peaksville', 121, '40.50190', '-91.68520'), ('Revere', 121, '40.49420', '-91.67600'), ('St. Patrick', 425, '40.26880', '-91.62550'), ('Wayland', 425, '40.39520', '-91.58170'), ('Winchester', 425, '40.31740', '-91.60170'), ('Wyaconda', 310, '40.39300', '-91.92630')], 'partOfState': 'northeast', 'wfo': 'DVN'}, +'MOZ011': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bigelow', 38, '40.11060', '-95.28850'), ('Big Lake', 127, '40.08190', '-95.34960'), ('Corning', 21, '40.24880', '-95.45470'), ('Craig', 309, '40.19220', '-95.37340'), ('Forest City', 338, '39.98270', '-95.19170'), ('Fortescue', 51, '40.05200', '-95.31750'), ('Maitland', 342, '40.20310', '-95.07420'), ('Mound City', 1193, '40.13600', '-95.23140'), ('Oregon', 935, '39.98450', '-95.14470')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ012': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Amazonia', 277, '39.88860', '-94.89170'), ('Bolckow', 234, '40.11300', '-94.82190'), ('Cosby', 143, '39.86420', '-94.67800'), ('Country Club Villa', 1846, '39.83220', '-94.82140'), ('Fillmore', 211, '40.02530', '-94.97340'), ('Helena', 10, '39.91280', '-94.65010'), ('Rea', 56, '40.06190', '-94.76440'), ('Rosendale', 180, '40.04260', '-94.82240'), ('Savannah', 4762, '39.94170', '-94.83000')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ013': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Amity', 70, '39.86860', '-94.43450'), ('Clarksdale', 351, '39.81350', '-94.55020'), ('Fairport', 0, '39.98330', '-94.34600'), ('Maysville', 1212, '39.88700', '-94.36130'), ('Osborn', 455, '39.75000', '-94.35710'), ('Santa Rosa', 0, '39.98000', '-94.20530'), ('Stewartsville', 759, '39.75080', '-94.49870'), ('Union Star', 433, '39.98030', '-94.59800'), ('Weatherby', 123, '39.90920', '-94.24420')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ014': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Altamont', 218, '39.88890', '-94.08670'), ('Coffey', 140, '40.10510', '-94.00620'), ('Gallatin', 1789, '39.91030', '-93.96200'), ('Jameson', 120, '40.00530', '-93.98760'), ('Jamesport', 505, '39.97470', '-93.80210'), ('Lock Springs', 69, '39.84910', '-93.77590'), ('Pattonsburg', 261, '40.04800', '-94.13760'), ('Winston', 247, '39.86990', '-94.13970')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ015': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brimson', 63, '40.14420', '-93.73780'), ('Galt', 275, '40.12720', '-93.38760'), ('Laredo', 250, '40.02630', '-93.44730'), ('Spickard', 315, '40.24260', '-93.59220'), ('Tindall', 65, '40.16040', '-93.60940'), ('Trenton', 6216, '40.07890', '-93.61640')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ016': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Green Castle', 274, '40.26150', '-92.87830'), ('Green City', 688, '40.26570', '-92.95310'), ('Harris', 105, '40.30640', '-93.35010'), ('Humphreys', 164, '40.12510', '-93.31840'), ('Milan', 1958, '40.20320', '-93.12390'), ('Newtown', 209, '40.37660', '-93.33280'), ('Osgood', 51, '40.19810', '-93.34700'), ('Pollock', 131, '40.35900', '-93.08410'), ('Reger', 0, '40.14400', '-93.19230'), ('Winigan', 0, '40.05000', '-92.90000')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ017': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brashear', 280, '40.14890', '-92.37840'), ('Gibbs', 100, '40.09780', '-92.41670'), ('Kirksville', 16988, '40.19470', '-92.58300'), ('Kirksville Regional Airport', 0, '40.10000', '-92.54300'), ('Millard', 75, '40.10720', '-92.54580'), ('Novinger', 534, '40.23190', '-92.70830')], 'partOfState': 'northeast', 'wfo': 'EAX'}, +'MOZ018': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Baring', 159, '40.24470', '-92.20570'), ('Colony', 223, '40.25000', '-91.98300'), ('Edina', 1233, '40.16800', '-92.17310'), ('Greensburg', 159, '40.30000', '-92.21700'), ('Hurdland', 239, '40.15070', '-92.30220'), ('Knox City', 223, '40.14360', '-92.01030'), ('Newark', 100, '39.99440', '-91.97310'), ('Novelty', 119, '40.01260', '-92.20740'), ('Plevna', 121, '39.97370', '-92.08620')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOZ019': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Canton', 2557, '40.12970', '-91.52380'), ('Ewing', 464, '40.00840', '-91.71440'), ('La Belle', 669, '40.11640', '-91.91390'), ('La Grange', 1000, '40.04800', '-91.50050'), ('Lewistown', 595, '40.08420', '-91.81270'), ('Maywood', 464, '39.95440', '-91.60320'), ('Monticello', 126, '40.11910', '-91.71260'), ('Steffenville', 100, '39.97060', '-91.88200')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOZ020': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Agency', 599, '39.64470', '-94.73980'), ('De Kalb', 257, '39.58690', '-94.92500'), ('Easton', 258, '39.72220', '-94.64140'), ('Faucett', 0, '39.60000', '-94.80000'), ('Lewis And Clark Villiage', 155, '39.54300', '-95.05250'), ('Rushville', 280, '39.58670', '-95.02580'), ('St. Joseph', 73390, '39.76800', '-94.84600'), ('St. Joseph Airport', 73990, '39.76670', '-94.91670')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ021': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cameron', 8312, '39.74030', '-94.24080'), ('Gower', 1399, '39.61230', '-94.59470'), ('Lathrop', 2092, '39.54920', '-94.32950'), ('Plattsburg', 2354, '39.56500', '-94.46230'), ('Trimble', 451, '39.47110', '-94.56100'), ('Turney', 155, '39.63470', '-94.32060')], 'partOfState': 'northwest', 'wfo': 'EAX'}, +'MOZ022': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Braymer', 910, '39.58700', '-93.79560'), ('Breckenridge', 454, '39.76150', '-93.80480'), ('Cowgill', 247, '39.56060', '-93.92580'), ('Hamilton', 1813, '39.74330', '-94.00210'), ('Kidder', 271, '39.78190', '-94.10240'), ('Kingston', 287, '39.64220', '-94.03820'), ('Polo', 582, '39.55220', '-94.04000')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ023': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Avalon', 0, '39.66670', '-93.45000'), ('Chillicothe', 8968, '39.79160', '-93.55410'), ('Chula', 198, '39.92160', '-93.47630'), ('Dawn', 0, '39.66670', '-93.63330'), ('Ludlow', 204, '39.65350', '-93.70310'), ('Mooresville', 89, '39.74640', '-93.71750'), ('Spring Hill', 0, '39.87430', '-93.64310'), ('Utica', 274, '39.74560', '-93.62930'), ('Wheeling', 268, '39.78660', '-93.38640')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ024': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brookfield', 4769, '39.78580', '-93.07630'), ('Browning', 317, '40.03490', '-93.16020'), ('Bucklin', 524, '39.78240', '-92.89000'), ('Laclede', 415, '39.78820', '-93.16950'), ('Linneus', 369, '39.87690', '-93.18750'), ('Marceline', 2558, '39.71190', '-92.94740'), ('Meadville', 457, '39.78780', '-93.30190'), ('New Boston', 0, '39.95000', '-92.85960'), ('Purdin', 223, '39.95020', '-93.16550'), ('Saint Catherine', 0, '39.79425', '-92.99400')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ025': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Atlanta', 450, '39.89800', '-92.47980'), ('Bevier', 723, '39.74910', '-92.56370'), ('Callao', 291, '39.76220', '-92.62320'), ('Elmer', 98, '39.95760', '-92.64980'), ('Ethel', 100, '39.89350', '-92.73780'), ('Excello', 0, '39.63450', '-92.47450'), ('La Plata', 1486, '40.02500', '-92.49140'), ('Macon', 5538, '39.74220', '-92.47050'), ('New Cambria', 222, '39.77530', '-92.75130'), ('South Gifford', 72, '40.02590', '-92.68230')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ026': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bethel', 121, '39.87820', '-92.02270'), ('Clarence', 915, '39.74300', '-92.26030'), ('Emden', 227, '39.79640', '-91.86280'), ('Hunnewell', 227, '39.66830', '-91.85890'), ('Leonard', 66, '39.89520', '-92.18070'), ('Maud', 915, '39.63340', '-92.19540'), ('Shelbina', 1943, '39.69230', '-92.03970'), ('Shelbyville', 682, '39.80710', '-92.03970')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOZ027': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Hannibal', 17757, '39.70750', '-91.38360'), ('Palmyra', 3467, '39.79640', '-91.52470'), ('Philadelphia', 464, '39.83880', '-91.73900'), ('Taylor', 1000, '39.93820', '-91.52370'), ('Warren', 2588, '39.76700', '-91.76700')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOZ028': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bean Lake', 0, '39.48770', '-95.01780'), ('Beverly', 0, '39.36760', '-94.87040'), ('Camden Point', 484, '39.45280', '-94.74220'), ('Dearborn', 529, '39.52490', '-94.76970'), ('Edgerton', 533, '39.50500', '-94.63060'), ('Farley', 226, '39.28230', '-94.83110'), ('Ferrelview', 593, '39.31120', '-94.66530'), ('Houston Lake', 284, '39.19170', '-94.62000'), ('Iatan', 54, '39.47520', '-94.98160'), ('Kansas City Intl Arpt', 0, '39.29770', '-94.71550'), ('Lake Waukomis', 917, '39.23030', '-94.63780'), ('Parkville', 4059, '39.19510', '-94.68200'), ('Platte City', 3866, '39.37030', '-94.78230'), ('Platte Woods', 474, '39.22930', '-94.64780'), ('Ridgely', 64, '39.45560', '-94.63950'), ('Riverside', 2979, '39.17750', '-94.61280'), ('Tracy', 213, '39.37860', '-94.79300'), ('Waldron', 0, '39.22290', '-94.79300'), ('Weatherby Lake', 1873, '39.23860', '-94.69760'), ('Weston', 1631, '39.41460', '-94.90140')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ029': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Avondale', 529, '39.15350', '-94.54500'), ('Birmingham', 214, '39.16660', '-94.45040'), ('Claycomo', 1267, '39.20250', '-94.49220'), ('Excelsior Springs', 10847, '39.33790', '-94.22580'), ('Gladstone', 26365, '39.20390', '-94.55890'), ('Glenaire', 553, '39.22000', '-94.45000'), ('Holt', 405, '39.45420', '-94.34190'), ('Kansas City Downtown', 0, '39.12120', '-94.59340'), ('Kearney', 5472, '39.36780', '-94.36150'), ('Liberty', 26232, '39.24610', '-94.41910'), ('Missouri City', 295, '39.24080', '-94.28780'), ('Mosby', 242, '39.31560', '-94.29360'), ('North Kansas City', 4714, '39.13000', '-94.56200'), ('Northmoor', 399, '39.18430', '-94.59250'), ('Oaks', 136, '39.19700', '-94.56940'), ('Oakview', 386, '39.20800', '-94.56810'), ('Oakwood', 197, '39.20030', '-94.57000'), ('Oakwood Park', 183, '39.20570', '-94.57280'), ('Pleasant Valley', 3321, '39.21640', '-94.48390'), ('Prathersville', 111, '39.31410', '-94.27290'), ('Randolph', 47, '39.15640', '-94.49060'), ('Smithville', 5514, '39.38700', '-94.58090')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ030': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Camden', 209, '39.19720', '-94.01890'), ('Crystal Lakes', 383, '39.35820', '-94.19000'), ('Elmira', 82, '39.50830', '-94.15310'), ('Excelsior Estates', 263, '39.39020', '-94.20760'), ('Fleming', 122, '39.19290', '-94.06530'), ('Hardin', 614, '39.27090', '-93.83030'), ('Henrietta', 457, '39.23410', '-93.93800'), ('Homestead', 181, '39.36280', '-94.20190'), ('Knoxville', 0, '39.44600', '-94.01670'), ('Lawson', 2336, '39.43630', '-94.20390'), ('Orrick', 889, '39.21360', '-94.12520'), ('Rayville', 204, '39.34800', '-94.06360'), ('Richmond', 6116, '39.27870', '-93.97330'), ('Russellville', 0, '39.40650', '-93.82870'), ('Woods Heights', 742, '39.33950', '-94.16220')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ031': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bogard', 234, '39.45790', '-93.52410'), ('Bosworth', 382, '39.46980', '-93.33560'), ('Carrollton', 4122, '39.36310', '-93.49630'), ('De Witt', 120, '39.38490', '-93.22010'), ('Hale', 473, '39.60520', '-93.34320'), ('Norborne', 805, '39.30230', '-93.67580'), ('Stet', 0, '39.42310', '-93.75890'), ('Tina', 193, '39.53720', '-93.44130'), ('Wakenda', 90, '39.31550', '-93.37790')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ032': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brunswick', 925, '39.42400', '-93.13030'), ('Dalton', 27, '39.39820', '-92.98970'), ('Keytesville', 533, '39.43440', '-92.93810'), ('Mendon', 208, '39.58970', '-93.13360'), ('Prairie Hill', 0, '39.51880', '-92.73540'), ('Rothville', 93, '39.65330', '-93.06390'), ('Salisbury', 1726, '39.42340', '-92.80230'), ('Sumner', 142, '39.65260', '-93.24320'), ('Triplett', 64, '39.49770', '-93.19350'), ('Wien', 0, '39.66290', '-92.78330')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ033': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cairo', 293, '39.51200', '-92.44070'), ('Clark', 275, '39.28060', '-92.34190'), ('Clifton Hill', 124, '39.43920', '-92.66710'), ('Higbee', 623, '39.30640', '-92.51220'), ('Huntsville', 1553, '39.44060', '-92.54500'), ('Jacksonville', 163, '39.58750', '-92.47280'), ('Moberly', 11945, '39.41970', '-92.43620'), ('Renick', 221, '39.34210', '-92.41070')], 'partOfState': 'north central', 'wfo': 'EAX'}, +'MOZ034': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Duncans Bridge', 586, '39.57560', '-92.26380'), ('Florida', 9, '39.49330', '-91.79010'), ('Granville', 129, '39.56260', '-92.09770'), ('Holliday', 129, '39.49360', '-92.13190'), ('Indian Creek', 2588, '39.59450', '-91.77690'), ('Madison', 586, '39.47320', '-92.21190'), ('Monroe City', 2588, '39.65410', '-91.73220'), ('Paris', 1529, '39.47710', '-92.00390'), ('Santa Fe', 9, '39.36700', '-91.83300'), ('Stoutsville', 44, '39.55170', '-91.85290'), ('Woodlawn', 586, '39.58300', '-92.21700')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOZ035': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Center', 644, '39.50980', '-91.52850'), ('Ilasco', 17757, '39.67150', '-91.31070'), ('New London', 1001, '39.58420', '-91.39880'), ('Perry', 666, '39.43000', '-91.66790'), ('Rensselaer', 145, '39.67070', '-91.54780'), ('Saverton', 514, '39.64380', '-91.26980'), ('Spaulding', 644, '39.61860', '-91.52660'), ('The Landing', 8, '39.55940', '-91.65900')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOZ036': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Annada', 48, '39.26220', '-90.82850'), ('Ashburn', 51, '39.54630', '-91.17100'), ('Ashley', 3260, '39.24940', '-91.22230'), ('Bowling Green', 3260, '39.33900', '-91.19560'), ('Clarksville', 490, '39.37180', '-90.90560'), ('Curryville', 251, '39.34590', '-91.34250'), ('Cyrene', 3260, '39.28650', '-91.10780'), ('Edgewood', 435, '39.27130', '-91.07580'), ('Eolia', 435, '39.23990', '-91.01120'), ('Frankford', 351, '39.49320', '-91.32070'), ('Louisiana', 3863, '39.44350', '-91.05920'), ('New Hartford', 199, '39.20000', '-91.28300'), ('Paynesville', 91, '39.26220', '-90.89960'), ('Spencerburg', 251, '39.42180', '-91.38760'), ('St. Clement', 3260, '39.28300', '-91.20980')], 'partOfState': 'northeast', 'wfo': 'LSX'}, +'MOZ037': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blue Springs', 48080, '39.01690', '-94.28140'), ('Buckner', 2725, '39.13480', '-94.19800'), ('Grain Valley', 5160, '39.01500', '-94.19830'), ('Grandview', 24881, '38.88580', '-94.53280'), ('Greenwood', 3952, '38.85110', '-94.34360'), ('Independence', 113288, '39.09110', '-94.41500'), ('Kansas City', 441545, '39.09970', '-94.57800'), ('Lake Lotawana', 1872, '38.92310', '-94.24390'), ('Lake Tapawingo', 843, '39.02140', '-94.31140'), ("Lee's Summit", 70700, '38.91080', '-94.38190'), ('Levasy', 108, '39.13310', '-94.13230'), ('Lone Jack', 528, '38.87040', '-94.17360'), ('Maywood', 0, '39.09500', '-94.44550'), ('Oak Grove', 5535, '39.00500', '-94.12910'), ('Raytown', 30388, '39.00860', '-94.46520'), ('Sibley', 347, '39.17920', '-94.19300'), ('Sugar Creek', 3839, '39.10970', '-94.44440'), ('Unity Village', 140, '38.95140', '-94.40150')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ038': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Alma', 399, '39.09580', '-93.54800'), ('Aullville', 86, '39.01780', '-93.67750'), ('Bates City', 245, '39.00620', '-94.07020'), ('Concordia', 2360, '38.98330', '-93.56840'), ('Corder', 427, '39.09950', '-93.64050'), ('Dover', 108, '39.19330', '-93.68950'), ('Emma', 243, '38.97650', '-93.49550'), ('Higginsville', 4682, '39.07250', '-93.71690'), ('Lexington', 4453, '39.18210', '-93.87490'), ('Mayview', 294, '39.05260', '-93.83020'), ('Napoleon', 208, '39.13230', '-94.07060'), ('Odessa', 4818, '38.99700', '-93.95330'), ('Waverly', 806, '39.20660', '-93.51750'), ('Wellington', 784, '39.13620', '-93.98250')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ039': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arrow Rock', 79, '39.07000', '-92.94800'), ('Blackburn', 284, '39.10490', '-93.48610'), ('Gilliam', 229, '39.23280', '-93.00370'), ('Grand Pass', 53, '39.20520', '-93.44320'), ('Malta Bend', 249, '39.19430', '-93.36410'), ('Marshall', 12433, '39.12300', '-93.19670'), ('Miami', 160, '39.32170', '-93.22550'), ('Mount Leonard', 123, '39.12500', '-93.39280'), ('Nelson', 212, '38.99350', '-93.03030'), ('Slater', 2083, '39.21800', '-93.06470'), ('Sweet Springs', 1628, '38.96420', '-93.41640')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOZ040': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Armstrong', 287, '39.26930', '-92.70500'), ('Fayette', 2793, '39.14750', '-92.68560'), ('Franklin', 112, '39.01130', '-92.75470'), ('Glasgow', 1263, '39.22700', '-92.84640'), ('New Franklin', 1145, '39.01860', '-92.73720')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOZ041': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ashland', 1869, '38.77390', '-92.25670'), ('Centralia', 3774, '39.21150', '-92.13160'), ('Columbia', 84531, '38.95410', '-92.32670'), ('Hallsville', 978, '39.11580', '-92.21970'), ('Harrisburg', 169, '39.14220', '-92.45970'), ('Hartsburg', 108, '38.69520', '-92.30980'), ('McBaine', 17, '38.88700', '-92.44650'), ('Midway', 47, '38.98300', '-92.45000'), ('Murry', 978, '39.04290', '-92.17680'), ('Rocheport', 208, '38.97950', '-92.56330'), ('Sturgeon', 944, '39.23380', '-92.28130'), ('Wilton', 108, '38.73510', '-92.35910')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOZ042': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Benton City', 122, '39.13480', '-91.76430'), ('Farber', 411, '39.27410', '-91.57640'), ('Laddonia', 620, '39.24150', '-91.64290'), ('Martinsburg', 326, '39.10110', '-91.64720'), ('Mexico', 11320, '39.16650', '-91.87060'), ('Rush Hill', 130, '39.20990', '-91.72510'), ('Thompson', 11320, '39.18860', '-91.98280'), ('Vandalia', 2529, '39.30930', '-91.49030'), ('Vandiver', 83, '39.16130', '-91.84880')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOZ043': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Archie', 890, '38.48170', '-94.35420'), ('Belton', 21730, '38.81190', '-94.53120'), ('Cleveland', 592, '38.67910', '-94.59300'), ('Creighton', 322, '38.49470', '-94.07300'), ('Drexel', 1090, '38.48280', '-94.60740'), ('East Lynne', 300, '38.66820', '-94.22940'), ('Freeman', 521, '38.61860', '-94.50580'), ('Garden City', 1500, '38.56080', '-94.19110'), ('Gunn City', 85, '38.66620', '-94.16200'), ('Harrisonville', 8946, '38.65330', '-94.34920'), ('Lake Winnebago', 902, '38.83140', '-94.35720'), ('Peculiar', 2604, '38.71900', '-94.45790'), ('Pleasant Hill', 5582, '38.78700', '-94.26920'), ('Raymore', 11146, '38.80190', '-94.45250'), ('Strasburg', 136, '38.76000', '-94.16610'), ('West Line', 95, '38.63260', '-94.58390')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ044': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Centerview', 249, '38.74560', '-93.84560'), ('Chilhowee', 329, '38.58890', '-93.85630'), ('Fayetteville', 0, '38.88330', '-93.75610'), ('Holden', 2510, '38.71340', '-93.99110'), ('Kingsville', 257, '38.74290', '-94.06870'), ('Knob Noster', 2462, '38.76800', '-93.55830'), ('Leeton', 619, '38.58360', '-93.69510'), ('Pittsville', 0, '38.85010', '-93.99000'), ('Post Oak', 0, '38.56890', '-93.75080'), ('Warrensburg', 16340, '38.76270', '-93.73580'), ('Whiteman Air Force Base', 3814, '38.73270', '-93.55150')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ045': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Green Ridge', 445, '38.62020', '-93.40980'), ('Houstonia', 275, '38.89890', '-93.35980'), ('Hughesville', 174, '38.83790', '-93.29590'), ('La Monte', 1064, '38.77110', '-93.42250'), ('Sedalia', 20339, '38.70300', '-93.22800'), ('Sedalia Memorial Arpt', 0, '38.70900', '-93.17670'), ('Smithton', 510, '38.68160', '-93.09220')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOZ046': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blackwater', 199, '38.97940', '-92.99070'), ('Boonville', 8202, '38.96420', '-92.74780'), ('Bunceton', 348, '38.78970', '-92.79850'), ('Clifton City', 0, '38.76470', '-93.04130'), ('Lamine', 0, '38.95010', '-92.87630'), ('Otterville', 476, '38.70230', '-93.00280'), ('Pilot Grove', 723, '38.87380', '-92.91200'), ('Prairie Home', 220, '38.81490', '-92.58960'), ('Wooldridge', 47, '38.90650', '-92.52180')], 'partOfState': 'central', 'wfo': 'EAX'}, +'MOZ047': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('California', 4005, '38.63160', '-92.56680'), ('Clarksburg', 375, '38.66140', '-92.66610'), ('Easley', 29, '38.80000', '-92.38300'), ('Enon', 157, '38.45700', '-92.48950'), ('High Point', 157, '38.48300', '-92.58300'), ('Jamestown', 382, '38.76570', '-92.47780'), ('Kliever', 382, '38.69730', '-92.50340'), ('Latham', 375, '38.56090', '-92.68230'), ('Lupus', 29, '38.84570', '-92.45420'), ('McGirk', 257, '38.61120', '-92.47620'), ('Sandy Hook', 382, '38.74830', '-92.40840'), ('Tipton', 3261, '38.65310', '-92.78000')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOZ048': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brazito', 287, '38.45000', '-92.28300'), ('Centertown', 257, '38.61900', '-92.40930'), ('Elston', 1023, '38.61290', '-92.32370'), ('Eugene', 156, '38.35370', '-92.40340'), ('Hickory Hill', 156, '38.40060', '-92.35940'), ('Jefferson City', 39636, '38.57190', '-92.19050'), ('Lohman', 168, '38.54250', '-92.36350'), ('Marion', 108, '38.69090', '-92.36620'), ('Osage Bend', 287, '38.40610', '-92.14310'), ('Osage City', 870, '38.55230', '-92.03230'), ('Russellville', 758, '38.51270', '-92.43790'), ('Schubert', 870, '38.51760', '-92.04940'), ('St. Martins', 1023, '38.59570', '-92.33330'), ('St. Thomas', 287, '38.36880', '-92.21560'), ('Taos', 870, '38.49780', '-92.08080'), ('Wardsville', 976, '38.48800', '-92.17340')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOZ049': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Argyle', 164, '38.29500', '-92.02550'), ('Bonnots Mill', 188, '38.57250', '-91.96100'), ('Chamois', 456, '38.67720', '-91.77000'), ('Frankenstein', 188, '38.57420', '-91.88220'), ('Freeburg', 423, '38.31550', '-91.92250'), ('Koeltztown', 164, '38.32480', '-92.04210'), ('Linn', 1354, '38.48080', '-91.84440'), ('Loose Creek', 320, '38.50810', '-91.95730'), ('Meta', 249, '38.31240', '-92.16660'), ('Rich Fountain', 423, '38.39580', '-91.87980'), ('Westphalia', 320, '38.44120', '-92.00050')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOZ050': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Auxvasse', 901, '39.01740', '-91.89450'), ('Carrington', 599, '38.80820', '-92.05940'), ('Fulton', 12128, '38.85310', '-91.94880'), ('Guthrie', 599, '38.75700', '-92.09650'), ('Hatton', 121, '39.02420', '-92.02610'), ('Holts Summit', 2935, '38.64470', '-92.11600'), ('Kingdom City', 121, '38.94630', '-91.93720'), ('Lake Mykee', 326, '38.67650', '-92.10080'), ('Mokane', 188, '38.67440', '-91.87270'), ('New Bloomfield', 599, '38.71940', '-92.08970'), ('Portland', 456, '38.71090', '-91.71780'), ('Reform', 456, '38.76530', '-91.77900'), ('Shamrock', 326, '39.00440', '-91.69370'), ('Steedman', 456, '38.70470', '-91.81790'), ('Tebbetts', 188, '38.62060', '-91.96250'), ('Wainwright', 2935, '38.58370', '-92.06820'), ('Williamsburg', 326, '38.91700', '-91.70000')], 'partOfState': 'central', 'wfo': 'LSX'}, +'MOZ051': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Americus', 176, '38.78030', '-91.56400'), ('Bellflower', 427, '39.00380', '-91.35270'), ('Big Spring', 72, '38.80000', '-91.48300'), ('Buell', 2442, '39.03430', '-91.43890'), ('Danville', 2442, '38.91070', '-91.53480'), ('High Hill', 231, '38.87540', '-91.37560'), ('Jonesburg', 695, '38.85360', '-91.30650'), ('McKittrick', 72, '38.73520', '-91.44270'), ('Middletown', 199, '39.12850', '-91.41450'), ('Mineola', 2442, '38.88820', '-91.57160'), ('Montgomery City', 2442, '38.97560', '-91.50510'), ('New Florence', 764, '38.90820', '-91.44990'), ('Rhineland', 176, '38.71860', '-91.51730'), ('Wellsville', 1423, '39.07370', '-91.56790')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ052': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cave', 7, '39.02380', '-91.04520'), ('Davis', 7, '39.05810', '-91.01950'), ('Elsberry', 2047, '39.17000', '-90.78990'), ('Foley', 178, '39.04570', '-90.74130'), ('Hawk Point', 459, '38.97120', '-91.13370'), ('Moscow Mills', 1742, '38.94590', '-90.91920'), ('New Hope', 2047, '39.13540', '-90.86460'), ('Old Monroe', 250, '38.93130', '-90.74700'), ('Olney', 96, '39.08400', '-91.24320'), ('Silex', 206, '39.12630', '-91.05750'), ('Troy', 6737, '38.97690', '-90.97540'), ('Truxton', 96, '39.00220', '-91.24060'), ('Whiteside', 67, '39.18340', '-91.01650'), ('Winfield', 723, '38.99540', '-90.73980')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ053': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Adrian', 1780, '38.39750', '-94.35140'), ('Amoret', 211, '38.25530', '-94.58750'), ('Amsterdam', 281, '38.34930', '-94.58890'), ('Ballard', 0, '38.36130', '-94.14260'), ('Butler', 4209, '38.25860', '-94.33030'), ('Foster', 130, '38.16670', '-94.50720'), ('Hume', 337, '38.08950', '-94.58360'), ('Merwin', 83, '38.40420', '-94.59080'), ('Passaic', 40, '38.32160', '-94.34790'), ('Rich Hill', 1461, '38.09580', '-94.36300'), ('Rockville', 162, '38.07040', '-94.08020'), ('Worland', 0, '38.18810', '-94.59320')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ054': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blairstown', 141, '38.55740', '-93.96060'), ('Brownington', 119, '38.24570', '-93.72250'), ('Calhoun', 491, '38.46790', '-93.62450'), ('Clinton', 9311, '38.37130', '-93.77800'), ('Coal', 0, '38.32530', '-93.61450'), ('Deepwater', 507, '38.25920', '-93.77380'), ('Hartwell', 16, '38.43490', '-93.93390'), ('La Due', 39, '38.31280', '-93.87780'), ('Montrose', 417, '38.25940', '-93.98200'), ('Tightwad', 63, '38.31110', '-93.54170'), ('Urich', 499, '38.45990', '-93.99900'), ('Windsor', 3087, '38.53340', '-93.52240')], 'partOfState': 'west central', 'wfo': 'EAX'}, +'MOZ055': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brandon', 108, '38.50800', '-93.42270'), ('Cole Camp', 1028, '38.46000', '-93.20250'), ('Crockerville', 1028, '38.44270', '-93.10410'), ('Edmonson', 1026, '38.30940', '-93.22380'), ('Edwards', 80, '38.13660', '-93.16930'), ('Fristoe', 185, '38.11660', '-93.27540'), ('Hastain', 80, '38.21190', '-93.17600'), ('Ionia', 108, '38.50410', '-93.32380'), ('Knobby', 80, '38.15250', '-93.09520'), ('Lakeview Heights', 80, '38.25880', '-93.15610'), ('Lincoln', 1026, '38.39080', '-93.33440'), ('Mora', 1028, '38.52350', '-93.21550'), ('Palo Pinto', 63, '38.38160', '-93.45520'), ('Racket', 63, '38.29330', '-93.49190'), ('Warsaw', 2070, '38.24300', '-93.38160'), ('Whitakerville', 2070, '38.21380', '-93.37070'), ('Zora', 968, '38.28630', '-93.09630')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOZ056': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Barnett', 207, '38.37820', '-92.67430'), ('Florence', 476, '38.58880', '-92.97880'), ('Gravois Mills', 208, '38.30830', '-92.82520'), ('Laurie', 663, '38.20360', '-92.82910'), ('Rocky Mount', 1493, '38.27210', '-92.71930'), ('Stover', 968, '38.44080', '-92.99160'), ('Syracuse', 172, '38.66990', '-92.87290'), ('Versailles', 2565, '38.43130', '-92.84080')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOZ057': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Aurora Springs', 4895, '38.32460', '-92.58490'), ('Bagnell', 86, '38.22660', '-92.60130'), ('Brumley', 102, '38.08630', '-92.48660'), ('Eldon', 4895, '38.34830', '-92.58130'), ('Etterville', 156, '38.36740', '-92.46990'), ('Iberia', 605, '38.09020', '-92.29240'), ('Kaiser', 456, '38.13350', '-92.58960'), ('Lakeland', 376, '38.21950', '-92.63090'), ('Lake Ozark', 1489, '38.19850', '-92.63850'), ('Lakeview', 111, '38.21380', '-92.62710'), ('Marys Home', 156, '38.30550', '-92.35500'), ('Olean', 157, '38.41040', '-92.53010'), ('Saint Elizabeth', 297, '38.25580', '-92.26770'), ('Tuscumbia', 218, '38.23290', '-92.45830'), ('Ulman', 102, '38.15300', '-92.44380')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOZ058': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Belle', 1344, '38.28580', '-91.72020'), ('Brinktown', 1570, '38.12660', '-92.07440'), ('Vichy', 16367, '38.11130', '-91.76020'), ('Vienna', 628, '38.18660', '-91.94690')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOZ059': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bay', 267, '38.50800', '-91.55800'), ('Bland', 565, '38.30060', '-91.63250'), ('Canaan', 2500, '38.31220', '-91.55900'), ('Drake', 364, '38.46700', '-91.46700'), ('Gasconade', 267, '38.66940', '-91.56030'), ('Hermann', 2674, '38.69910', '-91.43500'), ('Morrison', 123, '38.67070', '-91.63280'), ('Mount Sterling', 565, '38.46700', '-91.61700'), ('Owensville', 2500, '38.34760', '-91.49770'), ('Rosebud', 364, '38.38660', '-91.40300'), ('Swiss', 267, '38.56290', '-91.47120')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ060': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Dutzow', 13243, '38.60570', '-90.99460'), ('Holstein', 1867, '38.65540', '-91.17120'), ('Marthasville', 837, '38.62840', '-91.05330'), ('Treloar', 1867, '38.64450', '-91.18790'), ('Truesdale', 397, '38.81100', '-91.12510'), ('Warrenton', 5281, '38.82130', '-91.14010'), ('Wright City', 1532, '38.82760', '-91.02430')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ061': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Augusta', 218, '38.57290', '-90.88280'), ('Cottleville', 1928, '38.75400', '-90.65380'), ('Dardenne Prairie', 4384, '38.75430', '-90.73210'), ('Defiance', 218, '38.63300', '-90.78300'), ('Flint Hill', 379, '38.85350', '-90.86350'), ('Foristell', 331, '38.81850', '-90.95990'), ('Harvester', 51381, '38.74970', '-90.57920'), ('Kampville', 60321, '38.85240', '-90.54730'), ('Lake St. Louis', 10169, '38.78900', '-90.78280'), ('Matson', 218, '38.60820', '-90.79710'), ('New Melle', 124, '38.71020', '-90.88030'), ("O'fallon", 46169, '38.78430', '-90.70790'), ('Orchard Farms', 918, '38.87980', '-90.44600'), ('Portage Des Sioux', 351, '38.92610', '-90.34190'), ('St. Charles', 60321, '38.79060', '-90.51640'), ('St. Paul', 1634, '38.84990', '-90.73660'), ('St. Peters', 51381, '38.77850', '-90.60530'), ('Weldon Spring', 5270, '38.71650', '-90.64900'), ('Wentzville', 6896, '38.81340', '-90.85950'), ('West Alton', 573, '38.86280', '-90.22380')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ062': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Beaufort', 87, '38.41930', '-91.19090'), ('Berger', 206, '38.67400', '-91.33520'), ('Catawissa', 5482, '38.42470', '-90.78260'), ('Gerald', 1171, '38.39940', '-91.33110'), ('Gray Summit', 2640, '38.49480', '-90.81520'), ('Japan', 1348, '38.23930', '-91.30600'), ('Leslie', 87, '38.41790', '-91.23190'), ('Lonedell', 280, '38.30670', '-90.82880'), ('Lyon', 1867, '38.51180', '-91.17400'), ('Moselle', 2417, '38.38680', '-90.89790'), ('New Haven', 1867, '38.60750', '-91.21810'), ('Noser Mill', 87, '38.39320', '-91.19230'), ('Pacific', 5482, '38.47830', '-90.75290'), ('Parkway', 280, '38.33850', '-90.97370'), ('Piney Park', 280, '38.30020', '-90.94370'), ('Robertsville', 2640, '38.41330', '-90.81540'), ('Stanton', 6351, '38.27350', '-91.10840'), ('St. Clair', 4390, '38.35110', '-90.98090'), ('Sullivan', 6351, '38.21600', '-91.16900'), ('Union', 7757, '38.44830', '-91.01260'), ('Villa Ridge', 2417, '38.47120', '-90.88350'), ('Washington', 13243, '38.55310', '-91.01260')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ063': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Affton', 20535, '38.54950', '-90.32890'), ('Ballwin', 31283, '38.59410', '-90.55240'), ('Bellefontaine Neighbors', 11271, '38.75200', '-90.22690'), ('Bel-Ridge', 3082, '38.71410', '-90.32790'), ('Berkeley', 10063, '38.74330', '-90.33560'), ('Beverly Hills', 603, '38.69770', '-90.29040'), ('Black Jack', 6792, '38.79810', '-90.26360'), ('Brentwood', 7693, '38.61910', '-90.34860'), ('Bridgeton', 15550, '38.76630', '-90.42650'), ('Chesterfield', 46802, '38.65430', '-90.58120'), ('Clarkson Valley', 2675, '38.62500', '-90.59410'), ('Clayton', 12825, '38.64430', '-90.32860'), ('Cool Valley', 1081, '38.72480', '-90.30480'), ('Crestwood', 11863, '38.55560', '-90.38160'), ('Creve Coeur', 16500, '38.66050', '-90.43550'), ('Dellwood', 5255, '38.75520', '-90.27770'), ('Des Peres', 8592, '38.59600', '-90.44720'), ('Ellisville', 9104, '38.58910', '-90.58600'), ('Eureka', 7676, '38.50290', '-90.64270'), ('Fenton', 4360, '38.53610', '-90.45140'), ('Ferguson', 22406, '38.74880', '-90.29580'), ('Florissant', 50497, '38.79740', '-90.32430'), ('Frontenac', 3483, '38.63080', '-90.41600'), ('Glendale', 5767, '38.59300', '-90.38120'), ('Greendale', 722, '38.69150', '-90.31220'), ('Hazelwood', 26206, '38.77770', '-90.35960'), ('Hillsdale', 1477, '38.68510', '-90.28850'), ('Jennings', 15469, '38.72360', '-90.26450'), ('Kinloch', 449, '38.73810', '-90.32530'), ('Kirkwood', 27324, '38.58040', '-90.42010'), ('Ladue', 8645, '38.63680', '-90.38160'), ('Lakeshire', 1375, '38.54130', '-90.33700'), ('Lemay', 17215, '38.53180', '-90.28390'), ('Manchester', 19161, '38.59260', '-90.51480'), ('Maplewood', 9228, '38.61210', '-90.32430'), ('Maryland Heights', 25756, '38.72250', '-90.47740'), ('Mehlville', 28822, '38.50110', '-90.31570'), ('Normandy', 5153, '38.70770', '-90.30040'), ('Northwoods', 4643, '38.70320', '-90.28220'), ('Oakland', 1540, '38.57580', '-90.38440'), ('Oakville', 35309, '38.44410', '-90.31690'), ('Olivette', 7438, '38.67230', '-90.37720'), ('Overland', 16838, '38.69600', '-90.36820'), ('Peerless Park', 42, '38.54240', '-90.50110'), ('Richmond Heights', 9602, '38.63020', '-90.33170'), ('Riverview', 3146, '38.74930', '-90.21430'), ('Shrewsbury', 6644, '38.58700', '-90.32790'), ('Spanish Lake', 21337, '38.78690', '-90.20770'), ('St. Ann', 13607, '38.72590', '-90.38780'), ('St. John', 7690, '38.71450', '-90.34610'), ('Sunset Hills', 8267, '38.53730', '-90.41630'), ('Town And Country', 10894, '38.62470', '-90.47630'), ('University City', 37428, '38.66620', '-90.33110'), ('Uplands Park', 460, '38.69270', '-90.28250'), ('Valley Park', 6518, '38.55450', '-90.48240'), ('Warson Woods', 1983, '38.60690', '-90.39150'), ('Webster Groves', 23230, '38.58560', '-90.35460'), ('Wildwood', 9104, '38.58280', '-90.66280'), ('Woodson Terrace', 4189, '38.72840', '-90.36010')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ064': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('St. Louis', 348189, '38.63600', '-90.24430')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ065': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Antonia', 6108, '38.36250', '-90.46560'), ('Arnold', 19965, '38.42840', '-90.36930'), ('Barnhart', 6108, '38.33440', '-90.40410'), ('Byrnes Mill', 2376, '38.43930', '-90.57360'), ('Cedar Hill', 1703, '38.35610', '-90.64160'), ('Crystal City', 4247, '38.22590', '-90.38300'), ('De Soto', 6375, '38.13900', '-90.56050'), ('Dittmer', 229, '38.33300', '-90.68300'), ('Festus', 9660, '38.22280', '-90.40540'), ('Fletcher', 6375, '38.16590', '-90.73340'), ('Grubville', 229, '38.28840', '-90.75480'), ('Hematite', 669, '38.20070', '-90.48340'), ('Herculaneum', 2805, '38.25920', '-90.38770'), ('High Ridge', 4236, '38.46290', '-90.53410'), ('Hillsboro', 1675, '38.23230', '-90.56680'), ('House Springs', 2376, '38.41700', '-90.56700'), ('Kimmswick', 94, '38.36670', '-90.36510'), ('Mapaville', 1043, '38.24810', '-90.48560'), ('Morse Mill', 229, '38.27680', '-90.65320'), ('Murphy', 9048, '38.49290', '-90.48640'), ('Oermann', 229, '38.30750', '-90.72570'), ('Olympian Village', 669, '38.13460', '-90.45720'), ('Otto', 211, '38.37200', '-90.50060'), ('Parkdale', 205, '38.47890', '-90.52660'), ('Pevely', 3768, '38.28910', '-90.39800'), ('Scotsdale', 211, '38.39590', '-90.58970'), ('Valles Mill', 669, '38.04070', '-90.50150'), ('Victoria', 6375, '38.17790', '-90.52590')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ066': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bronaugh', 245, '37.69410', '-94.46850'), ('Deerfield', 75, '37.83850', '-94.50580'), ('Harwood', 90, '37.95610', '-94.15410'), ('Horton', 67, '37.97460', '-94.36500'), ('Metz', 67, '37.99740', '-94.44300'), ('Milo', 84, '37.75610', '-94.30580'), ('Montevallo', 259, '37.72600', '-94.10800'), ('Moundville', 103, '37.76590', '-94.45120'), ('Nevada', 8607, '37.83910', '-94.35440'), ('Richards', 95, '37.90720', '-94.55690'), ('Schell City', 286, '38.01990', '-94.11550'), ('Sheldon', 529, '37.65800', '-94.29240'), ('Stotesbury', 43, '37.97180', '-94.56330'), ('Walker', 275, '37.89850', '-94.23180')], 'partOfState': 'west central', 'wfo': 'SGF'}, +'MOZ067': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Appleton City', 1314, '38.19050', '-94.02910'), ('Collins', 176, '37.89100', '-93.62270'), ('Gerster', 35, '37.95330', '-93.57540'), ('Harper', 35, '38.06250', '-93.51820'), ('Iconium', 35, '38.10580', '-93.54440'), ('Johnson City', 1314, '38.11680', '-93.92770'), ('Lowry City', 728, '38.13990', '-93.72660'), ('Monegaw Springs', 112, '38.02910', '-93.83880'), ('Osceola', 835, '38.04660', '-93.70410'), ('Roscoe', 112, '37.97270', '-93.81190'), ('Taberville', 162, '38.00830', '-93.99440'), ('Tiffin', 3775, '37.95500', '-93.93800'), ('Vista', 55, '37.98830', '-93.66380')], 'partOfState': 'west central', 'wfo': 'SGF'}, +'MOZ068': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cross Timbers', 185, '38.02460', '-93.22660'), ('Elkton', 124, '37.85250', '-93.42570'), ('Hermitage', 406, '37.94130', '-93.31610'), ('Nemo', 113, '37.87660', '-93.26160'), ('Pittsburg', 406, '37.83380', '-93.30020'), ('Preston', 113, '37.94080', '-93.20750'), ('Quincy', 388, '38.00830', '-93.47210'), ('Weaubleau', 518, '37.89050', '-93.54160'), ('Wheatland', 388, '37.94600', '-93.40080')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOZ069': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Barnumton', 80, '38.11000', '-92.93630'), ('Branch', 267, '37.91080', '-93.00270'), ('Camdenton', 2779, '38.00800', '-92.74440'), ('Climax Springs', 80, '38.10140', '-93.05000'), ('Decaturville', 2779, '37.90750', '-92.69960'), ('Freedom', 280, '38.03600', '-92.58940'), ('Green Bay Terrace', 368, '38.10000', '-92.76160'), ('Hurricane Deck', 368, '38.13160', '-92.79250'), ('Linn Creek', 280, '38.03800', '-92.71130'), ('Macks Creek', 267, '37.96630', '-92.96910'), ('Montreal', 280, '37.96880', '-92.59190'), ('Old Linn Creek', 280, '38.07240', '-92.73630'), ('Osage Beach', 3662, '38.15020', '-92.61770'), ('Purvis', 663, '38.16880', '-92.81710'), ('Roach', 2779, '37.99380', '-92.83600'), ('Stoutland', 177, '37.81300', '-92.51430'), ('Sunrise Beach', 368, '38.17570', '-92.78410'), ('Village Of Four Seasons', 1493, '38.19820', '-92.71550'), ('Wet Glaize', 177, '37.92210', '-92.53350')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOZ070': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Crocker', 1033, '37.94880', '-92.26360'), ("Devil's Elbow", 2760, '37.84580', '-92.06360'), ('Dixon', 1570, '37.99160', '-92.09350'), ('Fort Leonard Wood', 13666, '37.70520', '-92.15800'), ('Laquey', 3507, '37.77020', '-92.30330'), ('Ozark Springs', 1805, '37.83960', '-92.33770'), ('Richland', 1805, '37.86110', '-92.39950'), ('St. Robert', 2760, '37.82790', '-92.17740'), ('Swedeborg', 1033, '37.91380', '-92.33160'), ('Waynesville', 3507, '37.82860', '-92.20050')], 'partOfState': 'central', 'wfo': 'SGF'}, +'MOZ071': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Beulah', 190, '37.62410', '-91.91680'), ('Doolittle', 644, '37.94020', '-91.88070'), ('Edgar Springs', 190, '37.70440', '-91.86630'), ('Jerome', 484, '37.92600', '-91.97740'), ('Newburg', 484, '37.91410', '-91.90250'), ('Northwye', 16367, '37.97490', '-91.75550'), ('Rolla', 16367, '37.95130', '-91.77100'), ('Rosati', 3704, '38.02690', '-91.53090'), ('St. James', 3704, '37.99710', '-91.61410')], 'partOfState': 'east central', 'wfo': 'SGF'}, +'MOZ072': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bourbon', 1348, '38.15160', '-91.24720'), ('Cherryville', 1429, '37.85000', '-91.28300'), ('Cook Station', 1429, '37.81280', '-91.43790'), ('Cuba', 3230, '38.06300', '-91.39990'), ('Davisville', 825, '37.80790', '-91.18510'), ('Dillard', 825, '37.73680', '-91.20430'), ('Leasburg', 323, '38.09420', '-91.29500'), ('Oak Hill', 3230, '38.20590', '-91.42070'), ('St. Cloud', 56, '38.17250', '-91.21260'), ('Steelville', 1429, '37.96940', '-91.35540')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ073': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anthonies Mill', 6351, '38.08300', '-91.08300'), ('Belgrade', 158, '37.78680', '-90.84940'), ('Cadet', 363, '37.98750', '-90.68840'), ('Caledonia', 158, '37.76360', '-90.77100'), ('Courtois', 825, '37.76700', '-91.08300'), ('Irondale', 437, '37.83420', '-90.67090'), ('Latty', 2662, '37.98230', '-90.89320'), ('Mineral Point', 363, '37.94510', '-90.72440'), ('Old Mines', 2662, '38.01700', '-90.76700'), ('Potosi', 2662, '37.93600', '-90.78210'), ('Richwoods', 280, '38.16700', '-90.83300'), ('Shirley', 2662, '37.91510', '-90.91930')], 'partOfState': 'east central', 'wfo': 'LSX'}, +'MOZ074': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bismarck', 1470, '37.76740', '-90.62270'), ('Blackwell', 6375, '38.04370', '-90.62400'), ('Bonne Terre', 4039, '37.92270', '-90.54980'), ('Desloge', 4802, '37.87380', '-90.52070'), ('Doe Run', 13924, '37.74290', '-90.50370'), ('Farmington', 13924, '37.78000', '-90.42590'), ('Frankclay', 1160, '37.86180', '-90.61510'), ('French Village', 362, '37.97260', '-90.38980'), ('Iron Mountain', 632, '37.69540', '-90.64040'), ('Knob Lick', 13924, '37.68300', '-90.38300'), ('Leadington', 206, '37.83430', '-90.48160'), ('Leadwood', 1160, '37.86220', '-90.58940'), ('Libertyville', 319, '37.70370', '-90.28820'), ('Park Hills', 7861, '37.84930', '-90.52660')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOZ075': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bloomsdale', 419, '38.01140', '-90.21930'), ('Coffman', 362, '37.78300', '-90.20000'), ('Minnith', 377, '37.79820', '-90.05010'), ('River Aux Vases', 4476, '37.87220', '-90.11290'), ('Rocky Ridge', 362, '37.93340', '-90.24270'), ('Ste. Genevieve', 4476, '37.97490', '-90.04950'), ('St. Mary', 377, '37.87610', '-89.94870'), ('Weingarten', 362, '37.88300', '-90.21700'), ('Womac', 319, '37.68120', '-90.19650')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOZ076': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Altenburg', 309, '37.63130', '-89.58140'), ('Frohna', 192, '37.63650', '-89.62050'), ('Lithium', 0, '37.83220', '-89.88380'), ('Longtown', 76, '37.66980', '-89.77350'), ('Perryville', 7667, '37.72610', '-89.87220'), ('Silver Lake', 7667, '37.68360', '-89.99000')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ077': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Boston', 1011, '37.41270', '-94.28160'), ('Burgess', 70, '37.55610', '-94.61470'), ('Golden City', 884, '37.39300', '-94.09350'), ('Hannon', 779, '37.62240', '-94.49380'), ('Iantha', 216, '37.51680', '-94.39740'), ('Irwin', 529, '37.58850', '-94.28520'), ('Kenoma', 4425, '37.43940', '-94.19710'), ('Lamar', 4425, '37.49490', '-94.27630'), ('Lamar Heights', 216, '37.49350', '-94.29740'), ('Liberal', 779, '37.55800', '-94.51960'), ('Milford', 52, '37.58460', '-94.15690'), ('Mindenmines', 409, '37.47130', '-94.58960'), ('Nashville', 119, '37.37430', '-94.49050'), ('Oakton', 216, '37.45800', '-94.35380'), ('Oskaloosa', 338, '37.63910', '-94.59210'), ('Verdella', 779, '37.60630', '-94.43830')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ078': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arnica', 1960, '37.75160', '-93.70830'), ('Bearcreek', 418, '37.65720', '-93.65800'), ('Cane Hill', 52, '37.57880', '-93.73130'), ('Caplinger Mills', 1960, '37.79410', '-93.80410'), ('Cedar Springs', 3775, '37.87350', '-93.89330'), ('El Dorado Springs', 3775, '37.87680', '-94.02100'), ('Filley', 3775, '37.75880', '-93.94880'), ('Jerico Springs', 259, '37.62210', '-94.00830'), ('Masters', 418, '37.60550', '-93.66130'), ('Olympia', 259, '37.72600', '-94.02820'), ('Stockton', 1960, '37.69880', '-93.79580'), ('Umber View Heights', 52, '37.62420', '-93.80380'), ('Wagoner', 259, '37.67040', '-93.92520')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ079': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Aldrich', 75, '37.54740', '-93.55440'), ('Bolivar', 9143, '37.61440', '-93.41020'), ('Brighton', 548, '37.45770', '-93.34770'), ('Dunnegan', 418, '37.70800', '-93.57660'), ('Eudora', 75, '37.48240', '-93.53740'), ('Fair Play', 418, '37.62990', '-93.57290'), ('Flemington', 124, '37.80470', '-93.50110'), ('Goodson', 176, '37.70190', '-93.25130'), ('Half Way', 176, '37.61630', '-93.24440'), ('Humansville', 946, '37.79440', '-93.57770'), ('Morrisville', 344, '37.48100', '-93.42710'), ('Pleasant Hope', 548, '37.46300', '-93.27240'), ('Polk', 176, '37.72910', '-93.29910')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ080': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Buffalo', 2781, '37.64380', '-93.09210'), ('Charity', 2781, '37.51520', '-93.01610'), ('Foose', 2781, '37.56130', '-93.14630'), ('Leadmine', 267, '37.83660', '-92.96190'), ('Long Lane', 201, '37.61130', '-92.90910'), ('Louisburg', 147, '37.75770', '-93.13910'), ('March', 2781, '37.52240', '-93.08910'), ('Olive', 1107, '37.45910', '-93.10860'), ('Plad', 2781, '37.74850', '-92.97520'), ('Pumpkin Center', 147, '37.74490', '-93.07040'), ('Tunas', 267, '37.84960', '-93.02740'), ('Urbana', 407, '37.84210', '-93.16660'), ('Windyville', 2781, '37.70660', '-92.92680')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ081': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bennett Springs', 201, '37.72680', '-92.85550'), ('Competition', 42, '37.48350', '-92.42880'), ('Conway', 743, '37.50190', '-92.82070'), ('Dry Knob', 42, '37.64160', '-92.45020'), ('Eldridge', 2779, '37.82960', '-92.74880'), ('Falcon', 42, '37.60500', '-92.37850'), ('Lebanon', 12155, '37.68040', '-92.66360'), ('Lynchburg', 13666, '37.49300', '-92.29410'), ('Morgan', 42, '37.51020', '-92.67630'), ('Phillipsburg', 201, '37.55380', '-92.78460'), ('Sleeper', 177, '37.76050', '-92.59270'), ('Twin Bridges', 42, '37.55220', '-92.59710')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ082': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arroll', 544, '37.10750', '-91.72630'), ('Bendavis', 4574, '37.29580', '-92.20720'), ('Bucyrus', 1992, '37.34410', '-92.01660'), ('Cabool', 2168, '37.12380', '-92.10110'), ('Clear Springs', 2147, '37.09600', '-91.85300'), ('Elk Creek', 2168, '37.18880', '-91.99690'), ('Eunice', 442, '37.24490', '-91.77930'), ('Hartshorn', 544, '37.26470', '-91.67020'), ('Hazelton', 1471, '37.52490', '-92.02460'), ('Houston', 1992, '37.32600', '-91.95580'), ('Huggins', 4574, '37.31990', '-92.19830'), ('Licking', 1471, '37.49940', '-91.85690'), ('Pine Crest', 544, '37.09190', '-91.65860'), ('Plato', 13666, '37.50360', '-92.22460'), ('Prescott', 1471, '37.43690', '-91.92130'), ('Raymondville', 442, '37.33960', '-91.83380'), ('Roby', 13666, '37.51550', '-92.13880'), ('Simmons', 1992, '37.23040', '-92.01520'), ('Solo', 1992, '37.23330', '-91.95300'), ('Success', 1992, '37.44350', '-92.08740'), ('Summersville', 544, '37.17910', '-91.65660'), ('Yukon', 442, '37.27290', '-91.84800')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOZ083': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anutt', 190, '37.71580', '-91.71960'), ('Bangert', 4854, '37.77100', '-91.51580'), ('Boss', 825, '37.64300', '-91.18910'), ('Bunker', 427, '37.45750', '-91.21150'), ('Darien', 4854, '37.51990', '-91.59210'), ('Gladden', 4854, '37.49850', '-91.45630'), ('Howes', 4854, '37.70940', '-91.51550'), ('Howes Mill', 427, '37.61770', '-91.29160'), ('Jadwin', 4854, '37.48660', '-91.57070'), ('Lake Spring', 16367, '37.78240', '-91.67830'), ('Lecoma', 190, '37.77600', '-91.73070'), ('Lenox', 190, '37.65300', '-91.76110'), ('Montauk', 1471, '37.44770', '-91.69550'), ('Salem', 4854, '37.64550', '-91.53580'), ('Sligo', 1429, '37.77380', '-91.37740'), ('Stone Hill', 427, '37.60160', '-91.34190'), ('Turtle', 4854, '37.52320', '-91.41220')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOZ084': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Annapolis', 310, '37.35990', '-90.69830'), ('Arcadia', 567, '37.58540', '-90.62850'), ('Belleview', 158, '37.68300', '-90.75000'), ('Bixby', 825, '37.66700', '-91.08300'), ('Chloride', 310, '37.46060', '-90.68700'), ('Des Arc', 187, '37.28420', '-90.63490'), ('Glover', 567, '37.48700', '-90.69120'), ('Granite', 697, '37.65450', '-90.67160'), ('Hogan', 567, '37.51120', '-90.69590'), ('Ironton', 1471, '37.59670', '-90.63580'), ('Pilot Knob', 697, '37.62350', '-90.64360'), ('Sabula', 310, '37.40480', '-90.69620'), ('Viburnum', 825, '37.71560', '-91.12920'), ('Vulcan', 187, '37.30950', '-90.66260')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOZ085': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Buckhorn', 251, '37.33300', '-90.30000'), ('Catherine Place', 3928, '37.57510', '-90.32440'), ('Fredericktown', 3928, '37.56460', '-90.29650'), ('Junction City', 319, '37.57390', '-90.29390'), ('Marquand', 251, '37.42870', '-90.16710'), ('Mine La Motte', 319, '37.61570', '-90.28980'), ('Roselle', 567, '37.60000', '-90.53300'), ('Saco', 187, '37.36700', '-90.45000')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOZ086': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Glenallen', 145, '37.31680', '-90.02810'), ('Marble Hill', 1502, '37.30230', '-89.98040'), ('Sedgewickville', 197, '37.51510', '-89.90590'), ('Zalma', 93, '37.14340', '-90.08030')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ087': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Allenville', 104, '37.22160', '-89.75490'), ('Cape Girardeau', 35349, '37.30830', '-89.55030'), ('Delta', 517, '37.19820', '-89.73700'), ('Gordonville', 425, '37.31040', '-89.67300'), ('Jackson', 11947, '37.38030', '-89.65450'), ('Oak Ridge', 202, '37.49980', '-89.72960'), ('Old Appleton', 82, '37.59320', '-89.70940'), ('Pocahontas', 127, '37.50110', '-89.63970'), ('Whitewater', 113, '37.23660', '-89.79770')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ088': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Airport Drive', 622, '37.14240', '-94.51050'), ('Alba', 588, '37.23830', '-94.41710'), ('Asbury', 218, '37.27430', '-94.60520'), ('Atlas', 1034, '37.09490', '-94.38580'), ('Avilla', 137, '37.19520', '-94.12930'), ('Brooklyn Heights', 125, '37.17040', '-94.38610'), ('Carl Junction', 5294, '37.17660', '-94.56520'), ('Carterville', 1850, '37.14910', '-94.44270'), ('Carthage', 12668, '37.17630', '-94.31000'), ('Carytown', 217, '37.26610', '-94.30910'), ('Dudenville', 884, '37.30550', '-94.09960'), ('Duenweg', 1034, '37.08350', '-94.41330'), ('Duquesne', 1640, '37.07660', '-94.45910'), ('Fidelity', 252, '37.06790', '-94.31300'), ('Iron Gates', 332, '37.06350', '-94.55690'), ('Jasper', 1011, '37.33600', '-94.30110'), ('Joplin', 45504, '37.08410', '-94.51300'), ('Lakeside', 1850, '37.15880', '-94.41470'), ('La Russell', 138, '37.14130', '-94.06130'), ('Maple Grove', 137, '37.25360', '-94.12540'), ('Neck City', 119, '37.25690', '-94.44410'), ('Oakland Park', 95, '37.11000', '-94.47260'), ('Oronogo', 976, '37.18830', '-94.46990'), ('Purcell', 357, '37.24210', '-94.43490'), ('Reeds', 103, '37.11610', '-94.16550'), ('Sarcoxie', 1354, '37.06910', '-94.11630'), ('Waco', 86, '37.24690', '-94.59910'), ('Webb City', 9812, '37.14630', '-94.48300')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ089': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arcola', 45, '37.54910', '-93.87490'), ('Bona', 224, '37.54460', '-93.67130'), ('Cedarville', 259, '37.57430', '-93.98410'), ('Dadeville', 224, '37.48020', '-93.67350'), ('Everton', 322, '37.34240', '-93.70220'), ('Greenfield', 1358, '37.41520', '-93.84080'), ('Lockwood', 989, '37.38550', '-93.95300'), ('Meinert', 989, '37.33520', '-93.99050'), ('Neola', 45, '37.50550', '-93.86930'), ('Pennsboro', 136, '37.32710', '-93.83380'), ('South Greenfield', 136, '37.37600', '-93.84080'), ('Sylvania', 259, '37.50770', '-94.02240')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ090': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ash Grove', 1430, '37.31520', '-93.58490'), ('Bassville', 1107, '37.34440', '-93.13210'), ('Battlefield', 2385, '37.11550', '-93.36990'), ("Bois D'Arc", 1430, '37.25630', '-93.50750'), ('Cave Springs', 3193, '37.35130', '-93.46330'), ('Ebenezer', 3193, '37.34020', '-93.30690'), ('Fair Grove', 1107, '37.38380', '-93.15110'), ('Galloway', 597, '37.13660', '-93.23770'), ('Glidewell', 3193, '37.30440', '-93.32680'), ('Republic', 8438, '37.11990', '-93.47990'), ('Sacville', 344, '37.39380', '-93.42880'), ('Springfield', 151580, '37.19620', '-93.28610'), ('Strafford', 1845, '37.26820', '-93.11680'), ('Turners', 1845, '37.18070', '-93.15520'), ('Walnut Grove', 630, '37.41110', '-93.54940'), ('Willard', 3193, '37.30500', '-93.42820')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ091': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Diggins', 298, '37.17240', '-92.85410'), ('Elkland', 1107, '37.44300', '-93.03070'), ('Fordland', 684, '37.15750', '-92.94050'), ('Marshfield', 5720, '37.33850', '-92.90690'), ('Niangua', 445, '37.38710', '-92.83240'), ('Northview', 5720, '37.28660', '-92.99630'), ('Rader', 743, '37.46020', '-92.71880'), ('Rogersville', 1508, '37.11680', '-93.05550'), ('Seymour', 1834, '37.14630', '-92.76850')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ092': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Dawson', 4574, '37.25690', '-92.30770'), ('Duncan', 1834, '37.28160', '-92.69160'), ('Graff', 4574, '37.31740', '-92.28240'), ('Grovespring', 42, '37.39960', '-92.60940'), ('Hartville', 607, '37.25080', '-92.51020'), ('Manes', 607, '37.37990', '-92.36660'), ('Mansfield', 1349, '37.10660', '-92.58040'), ('Mountain Grove', 4574, '37.13040', '-92.26330'), ('Norwood', 552, '37.10830', '-92.41470'), ('Odin', 607, '37.26820', '-92.61820')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ093': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Cliff Village', 33, '37.02530', '-94.51690'), ('Dennis Acres', 68, '37.04580', '-94.50410'), ('Diamond', 807, '36.99520', '-94.31580'), ('Fairview', 395, '36.81740', '-94.08800'), ('Granby', 2121, '36.91910', '-94.25500'), ('Leawood', 904, '37.03340', '-94.49050'), ('Neosho', 10505, '36.86880', '-94.36770'), ('Newtonia', 231, '36.87660', '-94.18520'), ('Racine', 2135, '36.89600', '-94.52710'), ('Redings Mill', 159, '37.01970', '-94.51650'), ('Ritchey', 76, '36.94410', '-94.18460'), ('Saginaw', 276, '37.02380', '-94.46790'), ('Seneca', 2135, '36.84130', '-94.61080'), ('Shoal Creek Drive', 346, '37.03750', '-94.52320'), ('Shoal Creek Estates', 51, '37.01870', '-94.49410'), ('Silver Creek', 608, '37.03880', '-94.47190'), ('Stark City', 156, '36.86220', '-94.18550'), ('Stella', 178, '36.76130', '-94.19100'), ('Wentworth', 141, '36.99330', '-94.07410')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ094': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Aurora', 7014, '36.97070', '-93.71770'), ('Chesapeake', 189, '37.11680', '-93.68130'), ('Freistatt', 184, '37.01820', '-93.89740'), ('Halltown', 189, '37.19330', '-93.62520'), ('Hoberg', 60, '37.06960', '-93.84850'), ('Marionville', 2113, '37.00300', '-93.63710'), ('Miller', 754, '37.21470', '-93.83960'), ('Mount Vernon', 4017, '37.10360', '-93.81820'), ('Pierce City', 1385, '36.94580', '-94.00000'), ('Red Oak', 138, '37.22850', '-94.01110'), ('Stotts City', 250, '37.10360', '-93.94940'), ('Verona', 714, '36.96380', '-93.79550')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ095': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Billings', 1091, '37.06740', '-93.55190'), ('Boaz', 1010, '37.01850', '-93.40020'), ('Bruner', 1144, '37.01470', '-92.98580'), ('Chadwick', 1144, '36.92990', '-93.05660'), ('Chestnutridge', 1142, '36.83660', '-93.25160'), ('Christian Center', 9665, '36.94080', '-93.16660'), ('Clever', 1010, '37.03020', '-93.47270'), ('Elkhead', 684, '37.01360', '-92.93020'), ('Fremont Hills', 597, '37.06580', '-93.25260'), ('Garrison', 359, '36.83880', '-93.01930'), ('Highlandville', 872, '36.93270', '-93.28020'), ('Keltner', 1144, '36.96880', '-92.94800'), ('Linden', 1144, '37.04630', '-93.13380'), ('Nixa', 12124, '37.04330', '-93.29410'), ('Oldfield', 1144, '36.97820', '-93.03990'), ('Ozark', 9665, '37.02070', '-93.20580'), ('Selmore', 9665, '36.96790', '-93.22990'), ('Sparta', 1144, '37.00110', '-93.08130'), ('Spokane', 133, '36.86790', '-93.29660')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ096': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ava', 3021, '36.95190', '-92.66020'), ('Brushyknob', 552, '36.96470', '-92.48580'), ('Dogwood', 1834, '37.03770', '-92.83070'), ('Drury', 552, '36.92990', '-92.32240'), ('Gentryville', 552, '36.86380', '-92.36050'), ('Goodhope', 3021, '36.90880', '-92.80750'), ('Rome', 3021, '36.84130', '-92.77320'), ('Squires', 3021, '36.85130', '-92.62460'), ('Vanzant', 4574, '36.96960', '-92.30270')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ097': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Brandsville', 174, '36.65020', '-91.68990'), ('Caulfield', 285, '36.61440', '-92.10470'), ('Lanton', 174, '36.51710', '-91.80130'), ('Moody', 320, '36.52930', '-91.98910'), ('Mountain View', 2430, '36.99520', '-91.70360'), ('Peace Valley', 2430, '36.87430', '-91.73100'), ('Pomona', 10866, '36.86710', '-91.91410'), ('Pottersville', 10866, '36.69580', '-92.03100'), ('Siloam Springs', 10866, '36.79550', '-92.07520'), ('South Fork', 10866, '36.62770', '-91.96250'), ('West Plains', 10866, '36.72790', '-91.85220'), ('White Church', 10866, '36.85020', '-91.78600'), ('Willow Springs', 2147, '36.99210', '-91.96960')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOZ098': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Akers', 544, '37.37600', '-91.55260'), ('Alley Spring', 548, '37.14410', '-91.44380'), ('Birch Tree', 634, '36.99100', '-91.49240'), ('Eminence', 548, '37.15050', '-91.35750'), ('Midridge', 427, '37.33520', '-91.22160'), ('Montier', 634, '36.98690', '-91.57520'), ('Round Spring', 548, '37.28040', '-91.41110'), ('Teresita', 2430, '36.98460', '-91.62850'), ('West Eminence', 548, '37.14020', '-91.37430'), ('Winona', 1290, '37.00970', '-91.32320')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOZ099': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Black', 171, '37.53140', '-90.93320'), ('Centerville', 171, '37.43630', '-90.96030'), ('Corridon', 171, '37.38200', '-91.07230'), ('Ellington', 1045, '37.23540', '-90.97200'), ('Garwood', 845, '37.06700', '-90.90000'), ('Lesterville', 171, '37.45580', '-90.82530'), ('Oates', 171, '37.56700', '-91.05000'), ('Redford', 1045, '37.32010', '-90.89840'), ('Reynolds', 171, '37.40000', '-91.06700')], 'partOfState': 'southeast', 'wfo': 'LSX'}, +'MOZ100': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Greenville', 451, '37.12690', '-90.44600'), ('Mill Spring', 219, '37.06470', '-90.68140'), ('Piedmont', 1992, '37.14780', '-90.69840'), ('Williamsville', 379, '36.97360', '-90.54810')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ101': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anderson', 1856, '36.65050', '-94.44330'), ('Goodman', 1183, '36.74160', '-94.39880'), ('Lanagan', 411, '36.60800', '-94.44740'), ('Noel', 1480, '36.54550', '-94.48490'), ('Pineville', 768, '36.59440', '-94.38380'), ('Powell', 178, '36.62270', '-94.18040'), ('Rocky Comfort', 721, '36.74630', '-94.09020'), ('South West City', 855, '36.51250', '-94.61110')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ102': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Butterfield', 397, '36.75000', '-93.90750'), ('Cassville', 2890, '36.67680', '-93.86850'), ('Eagle Rock', 111, '36.54800', '-93.75410'), ('Exeter', 707, '36.67210', '-93.94080'), ('Golden', 1393, '36.52410', '-93.65360'), ('Jenkins', 1390, '36.77850', '-93.68580'), ('Madry', 7014, '36.86930', '-93.71990'), ('McDowell', 1103, '36.82410', '-93.79300'), ('Monett', 7396, '36.92110', '-93.92740'), ('Pioneer', 395, '36.83580', '-94.05740'), ('Pleasant Ridge', 714, '36.89630', '-93.79130'), ('Purdy', 1103, '36.81710', '-93.92040'), ('Ridgley', 721, '36.69710', '-94.01990'), ('Seligman', 877, '36.52240', '-93.93940'), ('Shell Knob', 1393, '36.63210', '-93.63410'), ('Washburn', 448, '36.58690', '-93.96580'), ('Wayne', 707, '36.63740', '-93.96190'), ('Wheaton', 721, '36.76270', '-94.05580'), ('Wheelerville', 1390, '36.83600', '-93.62910')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ103': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Blue Eye', 129, '36.49910', '-93.39580'), ('Branson West', 0, '36.69600', '-93.36900'), ('Cape Fair', 451, '36.72990', '-93.51000'), ('Crane', 1390, '36.90520', '-93.57130'), ('Elsey', 1390, '36.85410', '-93.54050'), ('Galena', 451, '36.80520', '-93.46630'), ('Hurley', 157, '36.93130', '-93.49880'), ('Indian Point', 588, '36.64070', '-93.34690'), ('Kimberling City', 2253, '36.63330', '-93.41660'), ('Lampe', 129, '36.56360', '-93.43770'), ('Ponce De Leon', 465, '36.87570', '-93.35130'), ('Reeds Spring', 465, '36.74960', '-93.37770'), ('Silver Dollar City', 588, '36.66770', '-93.33940')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ104': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bradleyville', 359, '36.78350', '-92.90800'), ('Branson', 6050, '36.64350', '-93.21820'), ('Brownbranch', 359, '36.79440', '-92.83040'), ('Edgewater Beach', 1686, '36.66130', '-93.14160'), ('Forsyth', 1686, '36.68490', '-93.11960'), ('Hollister', 3867, '36.62100', '-93.21520'), ('Kirbyville', 3867, '36.62290', '-93.16380'), ('Kissee Mills', 359, '36.68350', '-93.04960'), ('Merriam Woods', 1142, '36.71380', '-93.16160'), ('Ozark Beach', 1686, '36.65880', '-93.13850'), ('Powersite', 1686, '36.65550', '-93.12100'), ('Protem', 601, '36.52880', '-92.85860'), ('Ridgedale', 207, '36.50380', '-93.22350'), ('Rockaway Beach', 577, '36.69910', '-93.15970'), ('Rueter', 601, '36.60830', '-92.86880'), ('Table Rock', 229, '36.60430', '-93.30030'), ('Taneyville', 359, '36.74130', '-93.03410'), ('Walnut Shade', 1142, '36.73240', '-93.19330')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ105': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bakersfield', 285, '36.52240', '-92.14190'), ('Brixey', 632, '36.75070', '-92.40470'), ('Dora', 285, '36.77680', '-92.21710'), ('Gainesville', 632, '36.60300', '-92.42790'), ('Hardenville', 632, '36.58910', '-92.37100'), ('Isabella', 38, '36.58070', '-92.61250'), ('Long Run', 240, '36.64910', '-92.72290'), ('Noble', 240, '36.74740', '-92.56960'), ('Pontiac', 38, '36.51550', '-92.60360'), ('Rockbridge', 632, '36.78940', '-92.40880'), ('Sundown', 38, '36.56550', '-92.63730'), ('Sycamore', 632, '36.70330', '-92.27410'), ('Tecumseh', 632, '36.58660', '-92.28630'), ('Theodosia', 240, '36.58270', '-92.67570'), ('Thornfield', 240, '36.70860', '-92.65910'), ('Udall', 285, '36.54380', '-92.25860'), ('Wasola', 3021, '36.79350', '-92.57540'), ('Willhoit', 632, '36.68330', '-92.50660'), ('Zanoni', 632, '36.68600', '-92.33160')], 'partOfState': 'southwest', 'wfo': 'SGF'}, +'MOZ106': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Alton', 668, '36.69410', '-91.39910'), ('Couch', 668, '36.60610', '-91.38290'), ('Greer', 668, '36.76930', '-91.35330'), ('Koshkonong', 205, '36.59580', '-91.64550'), ('Myrtle', 131, '36.50860', '-91.26680'), ('Rover', 174, '36.72160', '-91.62070'), ('Thayer', 2201, '36.52430', '-91.53800'), ('Thomasville', 668, '36.78910', '-91.53180'), ('Wilderness', 668, '36.71940', '-91.19190')], 'partOfState': 'south central', 'wfo': 'SGF'}, +'MOZ107': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Ellsinore', 363, '36.93360', '-90.74600'), ('Freemont', 845, '36.85380', '-91.12320'), ('Grandin', 236, '36.82990', '-90.82180'), ('Van Buren', 845, '37.00730', '-91.01220')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ108': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Briar', 1932, '36.64350', '-90.96120'), ('Doniphan', 1932, '36.62290', '-90.82200'), ('Gatewood', 354, '36.56290', '-91.07400'), ('Naylor', 610, '36.57400', '-90.60530')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ109': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Fisk', 363, '36.78220', '-90.20740'), ('Harviell', 610, '36.68360', '-90.57440'), ('Hendrickson', 379, '36.90440', '-90.46880'), ('Neelyville', 487, '36.55920', '-90.51100'), ('Poplar Bluff', 16651, '36.76390', '-90.40720'), ('Qulin', 467, '36.59790', '-90.24910'), ('Rombauer', 363, '36.84300', '-90.28000')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ110': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Advance', 1244, '37.10360', '-89.91450'), ('Baker', 5, '36.77360', '-89.76140'), ('Bell City', 461, '37.02380', '-89.81940'), ('Bernie', 1777, '36.67200', '-89.97050'), ('Bloomfield', 1952, '36.88860', '-89.93160'), ('Dexter', 7356, '36.79040', '-89.96030'), ('Dudley', 289, '36.78910', '-90.09140'), ('Essex', 524, '36.81200', '-89.86240'), ('Penermon', 75, '36.79330', '-89.82960'), ('Puxico', 1145, '36.95070', '-90.15900')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ111': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Benton', 732, '37.09800', '-89.56210'), ('Blodgett', 265, '37.00430', '-89.52620'), ('Chaffee', 3044, '37.18040', '-89.66130'), ('Commerce', 110, '37.15810', '-89.44660'), ('Diehlstadt', 163, '36.95940', '-89.43240'), ('Hay-Wood City', 239, '37.01180', '-89.60010'), ('Kelso', 527, '37.19010', '-89.55040'), ('Lambert', 49, '37.09360', '-89.55570'), ('Miner', 1056, '36.89380', '-89.53460'), ('Morley', 792, '37.04330', '-89.61260'), ('Oran', 1264, '37.08500', '-89.65290'), ('Scott City', 4591, '37.22250', '-89.53210'), ('Sikeston', 16992, '36.88020', '-89.58070'), ('Vanduser', 217, '36.99120', '-89.68650')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ112': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Anniston', 285, '36.82450', '-89.32620'), ('Bertrand', 740, '36.90900', '-89.44970'), ('Charleston', 4732, '36.91890', '-89.33790'), ('East Prairie', 3227, '36.77900', '-89.38410'), ('Wilson City', 165, '36.92300', '-89.22280'), ('Wyatt', 364, '36.91200', '-89.22360')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ113': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Arbyrd', 528, '36.05260', '-90.24000'), ('Campbell', 1883, '36.49210', '-90.07430'), ('Cardwell', 789, '36.04720', '-90.29120'), ('Clarkton', 1330, '36.45240', '-89.96530'), ('Glennonville', 467, '36.58330', '-90.15000'), ('Holcomb', 696, '36.40020', '-90.02310'), ('Hornersville', 686, '36.04030', '-90.11480'), ('Kennett', 11260, '36.24000', '-90.04870'), ('Malden', 4782, '36.58490', '-89.97560'), ('Senath', 1650, '36.13350', '-90.16110')], 'partOfState': 'southeast', 'wfo': 'MEG'}, +'MOZ114': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Canalou', 348, '36.75430', '-89.68750'), ('Catron', 68, '36.61240', '-89.70630'), ('Gideon', 1113, '36.45080', '-89.91060'), ('Howardville', 342, '36.56830', '-89.59730'), ('Lilbourn', 1303, '36.59080', '-89.61370'), ('Marston', 610, '36.51760', '-89.60870'), ('Matthews', 605, '36.75930', '-89.58360'), ('Morehouse', 1015, '36.84600', '-89.69090'), ('New Madrid', 3334, '36.58930', '-89.54860'), ('North Lilbourn', 95, '36.60170', '-89.62190'), ('Parma', 852, '36.61090', '-89.81820'), ('Portageville', 3295, '36.42870', '-89.69980'), ('Risco', 392, '36.55150', '-89.81870'), ('Tallapoosa', 204, '36.50750', '-89.81870')], 'partOfState': 'southeast', 'wfo': 'PAH'}, +'MOZ115': {'fullStateName': 'Missouri', 'state': 'MO', 'cities': [('Bolton', 230, '36.31670', '-89.78330'), ('Bragg City', 189, '36.26840', '-89.91150'), ('Caruthersville', 6760, '36.17910', '-89.66510'), ('Cooter', 440, '36.04700', '-89.80970'), ('Deering', 189, '36.20000', '-89.88330'), ('Denton', 2263, '36.10000', '-89.88330'), ('Hayti', 3207, '36.23250', '-89.74850'), ('Hayti Heights', 771, '36.23220', '-89.76850'), ('Hayward', 123, '36.39610', '-89.66600'), ('Holland', 246, '36.05730', '-89.87040'), ('Homestown', 181, '36.33170', '-89.82460'), ('North Wardell', 170, '36.35780', '-89.81550'), ('Pascola', 138, '36.26610', '-89.82650'), ('Steele', 2263, '36.08500', '-89.84670'), ('Wardell', 278, '36.35070', '-89.81690')], 'partOfState': 'southeast', 'wfo': 'MEG'}, +'MSZ001': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Eudora', 87, '34.83330', '-90.15000'), ('Hernando', 6812, '34.82760', '-89.98690'), ('Hollywood', 35, '34.75000', '-90.20000'), ('Horn Lake', 14099, '34.95610', '-90.03530'), ('Lake Cormorant', 35, '34.90000', '-90.21670'), ('Lewisburg', 21054, '34.86670', '-89.81670'), ('Lynchburg', 2959, '34.96710', '-90.09450'), ('Memphis', 87, '34.92570', '-90.14090'), ('Newport', 35, '34.89320', '-90.22850'), ('Olive Branch', 21054, '34.95480', '-89.82900'), ('Southaven', 28977, '34.97440', '-89.99900'), ('Walls', 87, '34.95000', '-90.13330')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ002': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bethlehem', 494, '34.56670', '-89.33330'), ('Byhalia', 706, '34.86450', '-89.68740'), ('Holly Springs', 7957, '34.77270', '-89.44350'), ('Laws Hill', 423, '34.58330', '-89.58330'), ('Marianna', 7957, '34.71670', '-89.60000'), ('Mt Pleasant', 291, '34.95000', '-89.51670'), ('Potts Camp', 494, '34.64830', '-89.30690'), ('Red Banks', 706, '34.83330', '-89.58330'), ('Slayden', 384, '34.95000', '-89.45000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ003': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ashland', 577, '34.83280', '-89.17660'), ('Canaan', 577, '34.93330', '-89.13330'), ('Hickory Flat', 565, '34.61520', '-89.18700'), ('Lamar', 167, '34.91670', '-89.31670'), ('Michigan City', 167, '34.98330', '-89.25000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ004': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Blue Mountain', 670, '34.67100', '-89.02720'), ('Dumas', 452, '34.63530', '-88.83700'), ('Falkner', 212, '34.84750', '-88.93190'), ('Gravestown', 670, '34.75000', '-89.08330'), ('Ripley', 5478, '34.72960', '-88.94440'), ('Walnut', 754, '34.94850', '-88.90010')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ005': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Corinth', 14054, '34.93770', '-88.51680'), ('Glen', 14054, '34.86670', '-88.50000'), ('Hinkle', 330, '34.78330', '-88.56670'), ('Kossuth', 170, '34.87140', '-88.64410'), ('Leedy', 1034, '34.80000', '-88.36670'), ('Rienzi', 330, '34.76350', '-88.53130'), ('Theo', 170, '34.93330', '-88.70000'), ('Wenasoga', 497, '34.98330', '-88.58330')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ006': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Belmont', 1961, '34.50700', '-88.20800'), ('Burnsville', 1034, '34.84200', '-88.31600'), ('Golden', 201, '34.48520', '-88.18610'), ('Iuka', 3059, '34.80800', '-88.19730'), ('Midway', 106, '34.73330', '-88.23330'), ('Paden', 106, '34.66460', '-88.26460'), ('Pineflat', 1034, '34.98330', '-88.26670'), ('Tishomingo', 316, '34.63650', '-88.22990')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ007': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Dubbs', 1132, '34.56670', '-90.36670'), ('Dundee', 370, '34.51670', '-90.45000'), ('Little Texas', 1132, '34.62670', '-90.28330'), ('North Tunica', 1450, '34.70090', '-90.37810'), ('Prichard', 1450, '34.71670', '-90.23330'), ('Robinsonville', 298, '34.81670', '-90.31670'), ('Tunica', 1132, '34.68820', '-90.38150')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ008': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Arkabutla', 1674, '34.70000', '-90.13330'), ('Barr', 1310, '34.61670', '-89.78330'), ('Coldwater', 1674, '34.69020', '-89.97540'), ('Independence', 1674, '34.70000', '-89.80000'), ('Phillipp', 35, '34.73330', '-90.18330'), ('Senatobia', 6682, '34.61750', '-89.97210'), ('Strayhorn', 916, '34.62670', '-90.15000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ009': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Booneville', 8625, '34.66260', '-88.56770'), ('Burton', 106, '34.63330', '-88.33330'), ('Jumpertown', 404, '34.70640', '-88.66380'), ('Marietta', 248, '34.50090', '-88.47110'), ('Thrashers', 330, '34.70000', '-88.48330'), ('Wheeler', 8625, '34.58330', '-88.60000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ010': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bobo', 220, '34.13330', '-90.68330'), ('Clarksdale', 20645, '34.20040', '-90.57670'), ('Coahoma', 325, '34.36590', '-90.52220'), ('Dublin', 1364, '34.08330', '-90.50000'), ('Friars Point', 1480, '34.36730', '-90.63810'), ('Jonestown', 1701, '34.32120', '-90.45430'), ('Kings', 1480, '34.30000', '-90.60000'), ('Lula', 370, '34.45480', '-90.47760'), ('Lyon', 418, '34.21710', '-90.54220'), ('Sherard', 220, '34.21670', '-90.71670')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ011': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Belen', 1551, '34.26670', '-90.35000'), ('Crowder', 766, '34.17300', '-90.13760'), ('Darling', 317, '34.35000', '-90.26670'), ('Denton', 1967, '34.15000', '-90.31670'), ('Falcon', 317, '34.39260', '-90.25550'), ('Lambert', 1967, '34.20200', '-90.28300'), ('Marks', 1551, '34.25380', '-90.27290'), ('Sledge', 529, '34.43250', '-90.22130'), ('Vance', 1967, '34.08330', '-90.30000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ012': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Batesville', 7113, '34.31950', '-89.93680'), ('Como', 1310, '34.51490', '-89.94000'), ('Courtland', 460, '34.24110', '-89.94250'), ('Crenshaw', 916, '34.50390', '-90.19470'), ('Curtis Station', 317, '34.33330', '-90.15000'), ('Endville', 7113, '34.31670', '-89.88330'), ('Glenville', 2038, '34.53330', '-89.75000'), ('Pleasant Grove', 916, '34.43330', '-90.10000'), ('Pope', 241, '34.21370', '-89.94760'), ('Sardis', 2038, '34.43470', '-89.91270')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ013': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Abbeville', 423, '34.50270', '-89.50220'), ('Burgess', 289, '34.35000', '-89.66670'), ('Cambridge', 423, '34.45000', '-89.36670'), ('Denmark', 189, '34.31670', '-89.35000'), ('Harmontown', 423, '34.53330', '-89.65000'), ('Oxford', 11756, '34.35980', '-89.52620'), ('Paris', 289, '34.18330', '-89.46770'), ('Springdale', 289, '34.23330', '-89.61670'), ('Taylor', 289, '34.27210', '-89.58240'), ('Tula', 189, '34.23330', '-89.36670')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ014': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Blue Springs', 144, '34.40290', '-88.87280'), ('Etta', 407, '34.46670', '-89.20000'), ('Keownville', 452, '34.55000', '-88.91670'), ('Myrtle', 407, '34.55930', '-89.11580'), ('New Albany', 7607, '34.49060', '-89.02070'), ('New Harmony', 144, '34.40000', '-88.91670'), ('Pinedale', 513, '34.41670', '-89.20000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ015': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Algoma', 508, '34.17880', '-89.03600'), ('Ecru', 947, '34.35620', '-89.02540'), ('Furrs', 548, '34.23330', '-88.86670'), ('Pontotoc', 5253, '34.24850', '-89.00670'), ('Randolph', 189, '34.18330', '-89.16670'), ('Sherman', 548, '34.35940', '-88.83870'), ('Thaxton', 513, '34.30820', '-89.17490'), ('Toccopola', 189, '34.25570', '-89.23440'), ('Troy', 5253, '34.16670', '-88.90000')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ016': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Baldwyn', 3321, '34.50300', '-88.63370'), ('Blair', 1183, '34.45000', '-88.73330'), ('Guntown', 1183, '34.44490', '-88.66300'), ('Nettleton', 1932, '34.09130', '-88.61650'), ('Plantersville', 1144, '34.21150', '-88.66580'), ('Pratts Friendship', 3321, '34.45000', '-88.58330'), ('Saltillo', 3393, '34.38330', '-88.68910'), ('Shannon', 1657, '34.11370', '-88.69420'), ('Tupelo', 34211, '34.26350', '-88.73200'), ('Verona', 3334, '34.19020', '-88.71910')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ017': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Evergreen', 1932, '34.16670', '-88.51670'), ('Fairview', 3882, '34.36670', '-88.31670'), ('Fulton', 3882, '34.26230', '-88.40170'), ('Mantachie', 1107, '34.32400', '-88.49300'), ('New Salem', 882, '34.15000', '-88.35000'), ('Sandy Springs', 248, '34.43330', '-88.38330'), ('Tremont', 390, '34.23350', '-88.24900')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ018': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Alligator', 220, '34.08980', '-90.72020'), ('Benoit', 611, '33.65150', '-91.00850'), ('Beulah', 473, '33.79040', '-90.98040'), ('Boyle', 720, '33.70380', '-90.72600'), ('Cleveland', 13841, '33.74320', '-90.72810'), ('Duncan', 578, '34.04350', '-90.74460'), ('Gunnison', 633, '33.94420', '-90.94680'), ('Merigold', 664, '33.83910', '-90.72690'), ('Mound Bayou', 2102, '33.88050', '-90.72790'), ('Pace', 364, '33.79210', '-90.85910'), ('Renova', 623, '33.78090', '-90.72260'), ('Rosedale', 2414, '33.85350', '-91.03220'), ('Shaw', 2312, '33.60030', '-90.77150'), ('Shelby', 2926, '33.95160', '-90.76570'), ('Winstonville', 319, '33.91140', '-90.75270')], 'partOfState': 'northwest', 'wfo': 'JAN'}, +'MSZ019': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Doddsville', 108, '33.65850', '-90.52440'), ('Drew', 2434, '33.80980', '-90.53040'), ('Indianola', 12066, '33.44860', '-90.64480'), ('Inverness', 1153, '33.35400', '-90.59070'), ('Moorhead', 2573, '33.44920', '-90.50680'), ('Ruleville', 3234, '33.72500', '-90.55010'), ('Sunflower', 696, '33.54660', '-90.53840')], 'partOfState': 'northwest', 'wfo': 'JAN'}, +'MSZ020': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Brazil', 587, '34.03330', '-90.28330'), ('Charleston', 2198, '34.00740', '-90.05510'), ('Enid', 586, '34.11670', '-89.95000'), ('Glendora', 285, '33.82850', '-90.29210'), ('Paynes', 2198, '33.91670', '-90.06670'), ('Sumner', 407, '33.96980', '-90.36950'), ('Tutwiler', 1364, '34.01180', '-90.42990'), ('Webb', 587, '33.94800', '-90.34620')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ021': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Coffeeville', 930, '33.97670', '-89.67750'), ('Oakland', 586, '34.05310', '-89.91460'), ('Scobey', 121, '33.93330', '-89.88330'), ('Tillatoba', 121, '33.98490', '-89.89570'), ('Velma', 930, '34.06670', '-89.65000'), ('Water Valley', 3677, '34.16160', '-89.63030')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'MSZ022': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Banner', 2097, '34.10000', '-89.40000'), ('Big Creek', 127, '33.84330', '-89.41570'), ('Bruce', 2097, '33.99180', '-89.34490'), ('Calhoun City', 1872, '33.85930', '-89.31460'), ('Derma', 1023, '33.85450', '-89.28630'), ('Pittsboro', 212, '33.94130', '-89.33680'), ('Sabougla', 127, '33.76670', '-89.48330'), ('Slate Spring', 117, '33.74260', '-89.37310'), ('Vardaman', 1065, '33.88170', '-89.17860')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ023': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Houlka', 552, '34.03330', '-89.01670'), ('Houston', 4079, '33.89620', '-89.00160'), ('New Houlka', 710, '34.03630', '-89.02000'), ('Okolona', 3056, '34.00560', '-88.75050'), ('Pyland', 1065, '33.88330', '-89.11670'), ('Trebloc', 4079, '33.83330', '-88.85000'), ('Woodland', 159, '33.78000', '-89.05010')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ024': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Aberdeen', 6415, '33.82850', '-88.55160'), ('Amory', 6956, '33.98790', '-88.48290'), ('Gattman', 114, '33.88550', '-88.23610'), ('Hatley', 476, '33.97720', '-88.41810'), ('New Wren', 1932, '33.96670', '-88.61670'), ('Prairie', 6415, '33.80000', '-88.66670'), ('Smithville', 882, '34.06700', '-88.39810')], 'partOfState': 'northeast', 'wfo': 'MEG'}, +'MSZ025': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Greenwood', 18425, '33.51780', '-90.19160'), ('Itta Bena', 2208, '33.49970', '-90.32500'), ('Morgan City', 305, '33.37890', '-90.34730'), ('Schlater', 388, '33.63910', '-90.34940'), ('Sidon', 672, '33.40740', '-90.20820')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSZ026': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Grenada', 14879, '33.77820', '-89.81040')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSZ027': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Carrollton', 408, '33.50490', '-89.92260'), ('North Carrollton', 499, '33.51820', '-89.91990'), ('Vaiden', 840, '33.33220', '-89.75250')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSZ028': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Duck Hill', 746, '33.63140', '-89.71250'), ('Kilmichael', 830, '33.43900', '-89.56700'), ('Winona', 5482, '33.48940', '-89.72610')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSZ029': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Eupora', 2326, '33.54390', '-89.27780'), ('Mantee', 169, '33.73050', '-89.06000'), ('Mathiston', 720, '33.53970', '-89.12830'), ('Walthall', 170, '33.60800', '-89.27600')], 'partOfState': 'north central', 'wfo': 'JAN'}, +'MSZ030': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('West Point', 12145, '33.60650', '-88.64460')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'MSZ031': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Artesia', 498, '33.41700', '-88.64290'), ('Caledonia', 1015, '33.68340', '-88.32600'), ('Columbus', 25944, '33.50500', '-88.40420'), ('Columbus AFB', 2060, '33.63450', '-88.44980'), ('Crawford', 655, '33.30270', '-88.62340'), ('New Hope', 1964, '33.44650', '-88.32490')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'MSZ032': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ackerman', 1696, '33.31070', '-89.17190'), ('French Camp', 393, '33.29210', '-89.39850'), ('Weir', 553, '33.26330', '-89.28940')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ033': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Maben', 803, '33.55400', '-89.08100'), ('Starkville', 21869, '33.45670', '-88.82220'), ('Sturgis', 206, '33.34390', '-89.04660')], 'partOfState': 'northeast', 'wfo': 'JAN'}, +'MSZ034': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Arcola', 563, '33.27110', '-90.88030'), ('Greenville', 41633, '33.38540', '-91.05190'), ('Hollandale', 3437, '33.17440', '-90.85320'), ('Leland', 5502, '33.40470', '-90.89990'), ('Metcalfe', 1109, '33.45010', '-91.00230')], 'partOfState': 'northwest', 'wfo': 'JAN'}, +'MSZ035': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Belzoni', 2663, '33.17930', '-90.48550'), ('Isola', 768, '33.26250', '-90.59170'), ('Louise', 315, '32.98260', '-90.59120'), ('Silver City', 337, '33.09630', '-90.49720')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ036': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Cruger', 449, '33.32380', '-90.23490'), ('Durant', 2932, '33.08020', '-89.85650'), ('Goodman', 1252, '32.96790', '-89.91250'), ('Lexington', 2025, '33.11680', '-90.04920'), ('Pickens', 1325, '32.89090', '-89.96840'), ('Tchula', 2332, '33.18310', '-90.22260'), ('West', 220, '33.19810', '-89.78140')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ037': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ethel', 452, '33.12190', '-89.46480'), ('Kosciusko', 7372, '33.05800', '-89.58820'), ('McCool', 182, '33.19830', '-89.34300'), ('Sallis', 114, '33.02170', '-89.76400')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ038': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Louisville', 7006, '33.12280', '-89.05460'), ('Noxapater', 419, '32.99280', '-89.06350')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ039': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Brooksville', 1182, '33.23260', '-88.58260'), ('Macon', 2461, '33.11490', '-88.56120'), ('Shuqualak', 562, '32.97940', '-88.56870')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ040': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Mayersville', 795, '32.89740', '-91.04490')], 'partOfState': 'west central', 'wfo': 'JAN'}, +'MSZ041': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Anguilla', 907, '32.97210', '-90.82820'), ('Cary', 427, '32.80470', '-90.92590'), ('Rolling Fork', 2486, '32.90690', '-90.87700')], 'partOfState': 'west central', 'wfo': 'JAN'}, +'MSZ042': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bentonia', 500, '32.64730', '-90.37020'), ('Eden', 126, '32.98570', '-90.32320'), ('Satartia', 68, '32.67100', '-90.54390'), ('Yazoo City', 14550, '32.86140', '-90.40770')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ043': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Canton', 12911, '32.61070', '-90.03110'), ('Flora', 1546, '32.54740', '-90.31200'), ('Madison', 14692, '32.45340', '-90.10850'), ('Ridgeland', 20173, '32.42180', '-90.13120')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ044': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Carthage', 4637, '32.74400', '-89.53340'), ('Lena', 167, '32.59460', '-89.59350'), ('Redwater', 409, '32.78260', '-89.55060'), ('Standing Pine', 509, '32.67350', '-89.45150'), ('Walnut Grove', 488, '32.59780', '-89.45830')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ045': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Pearl River', 3156, '32.78760', '-89.24280'), ('Philadelphia', 7303, '32.77400', '-89.10920'), ('Tucker', 534, '32.70750', '-89.04890')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ046': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('De Kalb', 972, '32.76850', '-88.65550'), ('Scooba', 632, '32.83140', '-88.47770')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ047': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Vicksburg', 26407, '32.32910', '-90.87080')], 'partOfState': 'west central', 'wfo': 'JAN'}, +'MSZ048': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bolton', 629, '32.35260', '-90.45740'), ('Clinton', 23347, '32.33970', '-90.33490'), ('Edwards', 1347, '32.33230', '-90.60470'), ('Jackson', 184256, '32.32050', '-90.20760'), ('Learned', 50, '32.19770', '-90.54870'), ('Raymond', 1664, '32.26030', '-90.42270'), ('Terry', 664, '32.10280', '-90.29880'), ('Utica', 966, '32.10330', '-90.62210')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ049': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Brandon', 16436, '32.28050', '-90.00380'), ('Florence', 2396, '32.15480', '-90.12840'), ('Flowood', 4750, '32.32320', '-90.10570'), ('Pearl', 21961, '32.27180', '-90.10520'), ('Pelahatchie', 1461, '32.31540', '-89.80110'), ('Puckett', 354, '32.08440', '-89.77840'), ('Richland', 6027, '32.23320', '-90.16500')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ050': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Forest', 5987, '32.35690', '-89.47400'), ('Lake', 408, '32.34310', '-89.32740'), ('Morton', 3482, '32.35550', '-89.65640'), ('Sebastopol', 233, '32.56910', '-89.33380')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ051': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Chunky', 344, '32.32710', '-88.92970'), ('Conehatta', 997, '32.45740', '-89.27110'), ('Decatur', 1426, '32.43820', '-89.11090'), ('Hickory', 499, '32.31650', '-89.02110'), ('Newton', 3699, '32.31970', '-89.15890'), ('Union', 2021, '32.57150', '-89.11630')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ052': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Collinsville', 1823, '32.49440', '-88.84250'), ('Marion', 1305, '32.42760', '-88.64830'), ('Meridian', 39968, '32.38090', '-88.71250'), ('Meridian Station', 1849, '32.54620', '-88.61760'), ('Nellieburg', 1354, '32.38720', '-88.78420')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ053': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Port Gibson', 1840, '31.95510', '-90.98340')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSZ054': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Beauregard', 265, '31.72140', '-90.38800'), ('Crystal Springs', 5873, '31.98970', '-90.35500'), ('Georgetown', 344, '31.86980', '-90.16480'), ('Hazlehurst', 4400, '31.86480', '-90.39130'), ('Wesson', 1693, '31.70050', '-90.39670')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ055': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Braxton', 181, '32.02470', '-89.97220'), ("D'Lo", 394, '31.98650', '-89.90100'), ('Magee', 4200, '31.87120', '-89.73120'), ('Mendenhall', 2555, '31.96070', '-89.86940')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ056': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Mize', 285, '31.86720', '-89.55430'), ('Polkville', 132, '32.19150', '-89.69250'), ('Raleigh', 1255, '32.03040', '-89.52360'), ('Sylvarena', 120, '32.01300', '-89.38040'), ('Taylorsville', 1341, '31.83100', '-89.43200')], 'partOfState': 'central', 'wfo': 'JAN'}, +'MSZ057': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bay Springs', 2097, '31.98020', '-89.28410'), ('Heidelberg', 840, '31.89010', '-88.98800'), ('Louin', 339, '32.07250', '-89.26170'), ('Montrose', 127, '32.12440', '-89.23540')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ058': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Enterprise', 474, '32.17490', '-88.81370'), ('Pachuta', 245, '32.04280', '-88.88440'), ('Quitman', 2463, '32.04130', '-88.72040'), ('Shubuta', 651, '31.86080', '-88.70240'), ('Stonewall', 1149, '32.13750', '-88.79590')], 'partOfState': 'east central', 'wfo': 'JAN'}, +'MSZ059': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Fayette', 2242, '31.71170', '-91.06170')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSZ060': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Natchez', 18464, '31.54790', '-91.38860')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSZ061': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bude', 1037, '31.46260', '-90.85120'), ('Meadville', 519, '31.47180', '-90.89300'), ('Roxie', 569, '31.50510', '-91.06720')], 'partOfState': 'southwest', 'wfo': 'JAN'}, +'MSZ062': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bogue Chitto', 1428, '31.43270', '-90.45080'), ('Brookhaven', 9861, '31.58340', '-90.44530')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSZ063': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Monticello', 1726, '31.55030', '-90.11270'), ('New Hebron', 447, '31.73290', '-89.98320'), ('Silver Creek', 209, '31.60330', '-90.00460')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSZ064': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bassfield', 315, '31.49730', '-89.74250'), ('Prentiss', 1158, '31.59630', '-89.87200')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSZ065': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Collins', 2683, '31.63780', '-89.55780'), ('Mount Olive', 893, '31.75940', '-89.65620'), ('Seminary', 335, '31.55920', '-89.49530')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSZ066': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Ellisville', 3465, '31.59870', '-89.20710'), ('Laurel', 18393, '31.69370', '-89.14470'), ('Sandersville', 789, '31.78760', '-89.03610'), ('Soso', 379, '31.75460', '-89.27640')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSZ067': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Battles', 555, '31.50189', '-88.50952'), ('Belmont', 603, '31.56891', '-88.48389'), ('Boice', 5197, '31.74768', '-88.65479'), ('Buckatunna', 555, '31.54871', '-88.53491'), ('Chicora', 5197, '31.56390', '-88.57532'), ('Clara', 5197, '31.57990', '-88.69232'), ('Denham', 5197, '31.65369', '-88.52551'), ('Eret', 2458, '31.47028', '-88.48218'), ('Eucutta', 840, '31.80530', '-88.87231'), ('Gretna', 5197, '31.75970', '-88.50201'), ('Henderson', 56255, '31.44891', '-88.77368'), ('Hiwannee', 651, '31.81030', '-88.69061'), ('Hollis Creek', 0, '31.53113', '-88.83368'), ('Lightsey', 0, '31.73572', '-88.93591'), ('Matherville', 651, '31.86572', '-88.56561'), ('Mulberry', 1038, '31.47711', '-88.84778'), ('Pineview', 0, '31.72632', '-88.94281'), ('Pleasant Grove', 0, '31.70972', '-88.92279'), ('Robinsons Junction', 5197, '31.57471', '-88.55920'), ('Smithtown', 555, '31.43750', '-88.71588'), ('State Line', 555, '31.43610', '-88.47388'), ('Strengthford', 789, '31.61389', '-88.88483'), ('Tokio', 0, '31.74487', '-88.54810'), ('Waynesboro', 5197, '31.67749', '-88.63531'), ('West King', 0, '31.75067', '-88.70093'), ('Whistler', 5197, '31.69708', '-88.80450'), ('Winchester', 5197, '31.61768', '-88.59058'), ('Woodwards', 5197, '31.69391', '-88.66388')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSZ068': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Centreville', 1680, '31.08640', '-91.06580'), ('Crosby', 360, '31.27860', '-91.06140'), ('Dolorosa', 1192, '31.30500', '-91.35940'), ('Fort Adams', 1192, '31.08640', '-91.54810'), ('Woodville', 1192, '31.10330', '-91.29880')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSZ069': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Gillsberg', 2468, '31.02500', '-90.65580'), ('Gloster', 1073, '31.19460', '-91.01800'), ('Liberty', 633, '31.16020', '-90.80120'), ('Smithdale', 1037, '31.33940', '-90.68280')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSZ070': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Magnolia', 2071, '31.15020', '-90.46070'), ('McComb', 13337, '31.24500', '-90.46520'), ('Osyka', 481, '31.00700', '-90.47110'), ('Summit', 1428, '31.28470', '-90.46620')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSZ071': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Dexter', 1910, '31.07420', '-89.99280'), ('Salem', 1910, '31.22970', '-90.11720'), ('Tylertown', 1910, '31.11690', '-90.14250')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSZ072': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Columbia', 6603, '31.25660', '-89.82870')], 'partOfState': 'south central', 'wfo': 'JAN'}, +'MSZ073': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Lumberton', 2228, '31.00420', '-89.45170'), ('Purvis', 2164, '31.14250', '-89.40880'), ('Sumrall', 1005, '31.41850', '-89.54650'), ('West Hattiesburg', 6305, '31.31880', '-89.37500')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSZ074': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Hattiesburg', 44779, '31.31280', '-89.30690'), ('Petal', 7579, '31.34410', '-89.25140')], 'partOfState': 'southeast', 'wfo': 'JAN'}, +'MSZ075': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Barbara', 0, '30.99213', '-88.97839'), ('Batt Place', 0, '30.97552', '-88.97919'), ('Beaumont', 977, '31.17072', '-88.92511'), ('Belleville', 715, '31.21252', '-89.12640'), ('Benmore', 0, '31.24548', '-88.91779'), ('Brewer', 0, '31.37268', '-88.86639'), ('Corinth', 0, '31.34387', '-89.13971'), ('Deep Creek', 0, '30.91992', '-88.91638'), ('East Side', 0, '31.35492', '-88.91119'), ('Ferguson', 977, '31.19409', '-88.97559'), ('Good Hope', 0, '31.40448', '-88.94891'), ('Hercules Station', 0, '31.18073', '-88.93890'), ('Hintonville', 977, '31.26111', '-88.92200'), ('Indian Springs', 0, '31.29773', '-89.13782'), ('Janice', 715, '31.02551', '-89.03668'), ('Kittrell', 0, '31.20728', '-88.91339'), ('Little Creek', 0, '31.12750', '-88.85339'), ('Mahned', 715, '31.20911', '-89.08081'), ('McSwain', 0, '31.31470', '-88.97699'), ('New Augusta', 715, '31.20367', '-89.02759'), ('Oak Grove', 0, '31.03632', '-88.97418'), ('Progress', 0, '31.07629', '-88.85620'), ('Redhill', 0, '31.12988', '-89.06421'), ('Rhodes', 0, '31.43213', '-88.96558'), ('Richton', 1038, '31.34949', '-88.94061'), ('Runnelstown', 7579, '31.37567', '-89.11169'), ('Tallahala', 7579, '31.38647', '-89.12311'), ('Wingate', 715, '31.20270', '-89.00140')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSZ076': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Avera', 1038, '31.29608', '-88.74139'), ('Benjoe', 0, '31.00189', '-88.77301'), ('Bothwell', 1038, '31.32770', '-88.74341'), ('Bradley', 0, '31.17529', '-88.67139'), ('Brown Town', 0, '31.07129', '-88.43671'), ('Byrd', 0, '31.22028', '-88.73981'), ('Carson City', 0, '31.36749', '-88.66388'), ('Clark', 0, '31.28833', '-88.57391'), ('Dueitt', 0, '31.15088', '-88.53448'), ('Hillman', 0, '31.13348', '-88.63281'), ('Jonathan', 1026, '31.22272', '-88.63751'), ('Kittrell', 977, '31.43048', '-88.56311'), ('Knobtown', 0, '31.37830', '-88.52338'), ('Leaf', 603, '31.02588', '-88.79559'), ('Leakesville', 1026, '31.15448', '-88.55823'), ('McLain', 603, '31.10370', '-88.82391'), ('Neely', 603, '31.16492', '-88.75482'), ('Old Avera', 0, '31.36108', '-88.56702'), ('Piave', 1038, '31.39429', '-88.74481'), ('Pisgah', 1026, '31.10449', '-88.48859'), ('Rounsaville', 1026, '31.16888', '-88.45691'), ('Royce', 603, '31.06250', '-88.80530'), ('Sand Hill', 1038, '31.34692', '-88.76361'), ('Vernal', 2458, '31.03851', '-88.61090')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSZ077': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Crossroads', 14280, '30.78250', '-89.77470'), ('McNeil', 10535, '30.66860', '-89.63830'), ('Picayune', 10535, '30.52870', '-89.67830'), ('Poplarville', 2601, '30.83800', '-89.53410')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSZ078': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Beatrice', 3849, '30.73907', '-88.94702'), ('Big Level', 0, '30.81171', '-89.05139'), ('Bond', 0, '30.89429', '-89.16870'), ('India', 0, '30.81708', '-89.11121'), ('McHenry', 3849, '30.70770', '-89.13843'), ('Perkinston', 3849, '30.78210', '-89.13812'), ('Perry', 3849, '30.72089', '-89.14142'), ('Ramsey Springs', 3849, '30.77087', '-88.91479'), ('Smith Town', 0, '30.80811', '-89.31262'), ('Ten Mile', 3849, '30.76550', '-89.14368'), ('Texas', 0, '30.88611', '-89.27191'), ('Whites Crossing', 3849, '30.84833', '-89.04028'), ('Wiggins', 3849, '30.85571', '-89.13849'), ('Wlox Tv Station Tower', 3849, '30.72388', '-89.09131')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSZ079': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Agricola', 2458, '30.80768', '-88.52002'), ('Avent', 603, '30.98169', '-88.77917'), ('Barton', 0, '30.77112', '-88.59808'), ('Benndale', 2458, '30.87170', '-88.80701'), ('Bexley', 2458, '30.96667', '-88.67419'), ('Central', 0, '30.88129', '-88.65417'), ('Crossroads', 0, '30.88531', '-88.71051'), ('Dale', 0, '30.83490', '-88.78308'), ('Dean Landing', 0, '30.78131', '-88.47241'), ('Evanston', 2458, '30.90747', '-88.56360'), ('Gibson Landing', 0, '30.76752', '-88.67029'), ('Howell', 0, '30.79388', '-88.42889'), ('Latonia', 0, '30.86108', '-88.42780'), ('Lucedale', 2458, '30.92151', '-88.59430'), ('Merrill', 2458, '30.97913', '-88.72058'), ('Movella', 494, '30.76410', '-88.50641'), ('Rock Creek', 0, '30.95288', '-88.53888'), ('Ruble', 0, '30.77350', '-88.87091'), ('Shipman', 494, '30.87750', '-88.47498'), ('Vaughn', 0, '30.85913', '-88.51562'), ('Ward', 0, '30.86688', '-88.54718'), ('Waters Landing', 0, '30.79071', '-88.46472')], 'partOfState': 'southeast', 'wfo': 'MOB'}, +'MSZ080': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Bay St. Louis', 8209, '30.31020', '-89.33000'), ('Diamondhead', 5912, '30.38360', '-89.36860'), ('Kiln', 2040, '30.41650', '-89.43420'), ('Pearlington', 1684, '30.24840', '-89.60120'), ('Waveland', 6674, '30.28630', '-89.38450')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MSZ081': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Gulfport', 71127, '30.38610', '-89.06770'), ('Long Beach', 17320, '30.36200', '-89.16730'), ('Lyman', 1081, '30.50120', '-89.13080'), ('Pass Christian', 6579, '30.31880', '-89.24170'), ('Saucier', 1303, '30.63570', '-89.13500')], 'partOfState': 'southeast', 'wfo': 'LIX'}, +'MSZ082': {'fullStateName': 'Mississippi', 'state': 'MS', 'cities': [('Escatawpa', 3566, '30.48900', '-88.55120'), ('Gautier', 11681, '30.38890', '-88.63990'), ('Gulf Park Estates', 4272, '30.37920', '-88.75850'), ('Moss Point', 15851, '30.42550', '-88.52900'), ('Ocean Springs', 17225, '30.40610', '-88.80190'), ('Pascagoula', 26200, '30.36610', '-88.54730'), ('St. Martin', 6676, '30.43770', '-88.86820'), ('Vancleave', 4910, '30.54170', '-88.66710'), ('Wade', 491, '30.64220', '-88.56970')], 'partOfState': 'southern', 'wfo': 'LIX'}, +'MTZ001': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bend', 1321, '47.90944', '-115.04861'), ('Eureka', 1017, '48.87590', '-115.05250'), ('Fortine', 1017, '48.76444', '-114.90222'), ('Happys Inn', 2626, '48.08333', '-115.13944'), ('Kila', 14223, '48.12028', '-114.45583'), ('Kootenai Falls', 957, '48.44806', '-115.78167'), ('Libby', 2626, '48.38833', '-115.55500'), ('Lupfer', 5032, '48.48361', '-114.51028'), ('Marion', 14223, '48.10556', '-114.66222'), ('Olney', 5032, '48.54861', '-114.57722'), ('Radnor', 5032, '48.61000', '-114.65972'), ('Rexford', 151, '48.89944', '-115.17111'), ('Stryker', 1017, '48.67417', '-114.76917'), ('Trego', 1017, '48.70528', '-114.86833'), ('Troy', 957, '48.46333', '-115.88861'), ('Yaak', 957, '48.83306', '-115.70778'), ('Yakt', 957, '48.54556', '-115.96778')], 'partOfState': 'northwest', 'wfo': 'MSO'}, +'MTZ002': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Apgar', 3645, '48.52778', '-113.99222'), ('Blacktail', 396, '48.27694', '-113.44722'), ('Coram', 3645, '48.41806', '-114.04528'), ('Essex', 396, '48.27806', '-113.61167'), ('Hungry Horse', 934, '48.38583', '-114.06000'), ('Lake Mcdonald', 3645, '48.62083', '-113.87083'), ('Logan Pass', 396, '48.69500', '-113.72000'), ('Martin City', 331, '48.39167', '-114.03722'), ('Nyack', 3645, '48.43944', '-113.80472'), ('Pinnacle', 396, '48.35611', '-113.65222'), ('Polebridge', 5032, '48.76528', '-114.28417'), ('Salmon Prairie', 493, '47.63000', '-113.78444'), ('Swan Lake', 493, '47.92917', '-113.84389'), ('Trailcreek', 5032, '48.91917', '-114.40639'), ('West Glacier', 3645, '48.50000', '-113.97778'), ('Woods Bay', 493, '48.00167', '-114.04944')], 'partOfState': 'northwest', 'wfo': 'MSO'}, +'MTZ003': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Allentown', 80, '47.44056', '-114.09556'), ('Arlee', 602, '47.16194', '-114.08417'), ('Big Arm', 131, '47.79806', '-114.29389'), ('Bigfork', 1421, '48.06333', '-114.07167'), ('Camas', 531, '47.61806', '-114.65694'), ('Camas Prairie', 531, '47.46278', '-114.60611'), ('Charlo', 439, '47.43861', '-114.17139'), ('Columbia Falls', 3645, '48.37250', '-114.18056'), ('Creston', 6215, '48.18944', '-114.13639'), ('Dayton', 95, '47.86583', '-114.27806'), ('Dixon', 439, '47.31667', '-114.31306'), ('Elmo', 143, '47.83056', '-114.34861'), ('Evergreen', 6215, '48.22570', '-114.27500'), ('Finley Point', 493, '47.73820', '-114.06240'), ('Fort Connah', 80, '47.40556', '-114.08722'), ('Hot Springs', 531, '47.60917', '-114.66778'), ('Kalispell', 14223, '48.19583', '-114.31194'), ('Kicking Horse', 80, '47.46060', '-114.07420'), ('Lake Mary Ronan', 14223, '47.94306', '-114.39361'), ('Lakeside', 14223, '48.01944', '-114.22361'), ('La Salle', 3645, '48.31306', '-114.24306'), ('Lonepine', 137, '47.70306', '-114.63583'), ('Moiese', 439, '47.37056', '-114.26500'), ('Niarada', 50, '47.81417', '-114.60361'), ('Pablo', 1814, '47.60028', '-114.11806'), ('Polson', 4041, '47.69361', '-114.16222'), ('Proctor', 4041, '47.89250', '-114.30444'), ('Ravalli', 119, '47.27722', '-114.17972'), ('Rollins', 183, '47.90611', '-114.19750'), ('Ronan', 1812, '47.52889', '-114.10056'), ('Round Butte', 439, '47.52972', '-114.26267'), ('Saint Ignatius', 788, '47.32000', '-114.09306'), ('Somers', 14223, '48.08028', '-114.22056'), ('Whitefish', 5032, '48.41111', '-114.33667')], 'partOfState': 'northwest', 'wfo': 'MSO'}, +'MTZ004': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Alberton', 374, '47.00167', '-114.47250'), ('Belknap', 1321, '47.66222', '-115.40778'), ('Cyr', 374, '47.01028', '-114.58389'), ('De Borgia', 69, '47.37583', '-115.34500'), ('East Portal', 821, '47.39722', '-115.63417'), ('Eddy', 1321, '47.55833', '-115.13222'), ('Evaro', 602, '47.03222', '-114.09056'), ('Haugan', 1321, '47.38333', '-115.39861'), ('Heron', 644, '48.05889', '-115.95611'), ('Huson', 374, '47.03139', '-114.32639'), ('Keystone', 893, '47.26833', '-114.93472'), ('Lozeau', 893, '47.11667', '-114.77917'), ('Ninemile', 374, '47.02000', '-114.40833'), ('Noxon', 230, '47.99611', '-115.78056'), ('Paradise', 1126, '47.38944', '-114.80111'), ('Perma', 531, '47.36389', '-114.58389'), ('Plains', 1126, '47.46028', '-114.88194'), ('Quartz', 893, '47.05194', '-114.76833'), ('Saint Regis', 893, '47.29944', '-115.10167'), ('Saltese', 1321, '47.41028', '-115.50861'), ('Snider', 1321, '47.60389', '-115.21750'), ('Stark', 374, '47.12556', '-114.50417'), ('Superior', 893, '47.19167', '-114.89083'), ('Taft', 821, '47.41917', '-115.59722'), ('Tarkio', 893, '47.02139', '-114.73806'), ('Thompson Falls', 1321, '47.59722', '-115.34333'), ('Trout Creek', 1321, '47.83694', '-115.59722'), ('Tuscor', 821, '47.90333', '-115.69000'), ('Weeksville', 1126, '47.52306', '-114.99306'), ('White Pine', 1321, '47.74361', '-115.48139')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTZ005': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bell Crossing', 1553, '46.44333', '-114.12306'), ('Charlos Heights', 710, '46.12639', '-114.17694'), ('Como', 710, '46.08972', '-114.17444'), ('Conner', 710, '45.93083', '-114.12361'), ('Corvallis', 443, '46.31417', '-114.11194'), ('Darby', 710, '46.02278', '-114.17722'), ('Florence', 1553, '46.63167', '-114.07806'), ('Frenchtown', 883, '47.01500', '-114.22889'), ('Grantsdale', 3705, '46.20361', '-114.14083'), ('Hamilton', 3705, '46.24694', '-114.15944'), ('Lolo', 3388, '46.75889', '-114.08000'), ('Missoula', 57053, '46.87222', '-113.99306'), ('Pinesdale', 742, '46.32944', '-114.21583'), ('Stevensville', 1553, '46.51000', '-114.09222'), ('Victor', 742, '46.41667', '-114.14917'), ('Woodside', 3705, '46.31333', '-114.15417')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTZ006': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Lolo Hot Springs', 374, '46.72778', '-114.52972'), ('Lost Trail Pass', 710, '45.70000', '-113.94500'), ('Quigley', 1693, '46.61222', '-113.64750'), ('Skalkaho Pass', 3705, '46.24500', '-113.77500'), ('Sula', 710, '45.83667', '-113.98083')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTZ007': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Anaconda', 9417, '46.12861', '-112.94139'), ('Avon', 124, '46.59722', '-112.60111'), ('Bearmouth', 318, '46.71028', '-113.33056'), ('Blossburg', 1711, '46.63278', '-112.32111'), ('Brock Creek', 3421, '46.60361', '-112.85472'), ('Butte', 714, '46.00389', '-112.53389'), ('Crackerville', 33892, '46.06472', '-112.80417'), ('Deer Lodge', 3421, '46.39583', '-112.72917'), ('Divide', 33892, '45.75111', '-112.74639'), ('Drummond', 318, '46.66750', '-113.14639'), ('Elliston', 1711, '46.56222', '-112.43000'), ('Finn', 3421, '46.76611', '-112.70278'), ('Fishtrap', 9417, '45.87222', '-113.22861'), ('Galen', 3421, '46.23556', '-112.77528'), ('Garrison', 3421, '46.52333', '-112.81083'), ('Georgetown', 914, '46.19944', '-113.24556'), ('Goldcreek', 318, '46.58667', '-112.92778'), ('Gregson Hot Springs', 33892, '46.04306', '-112.80917'), ('Hall', 318, '46.58528', '-113.19583'), ('Helmville', 318, '46.86667', '-112.96028'), ('Janney', 714, '45.90944', '-112.49444'), ('Jens', 318, '46.60417', '-113.00528'), ('Lost Creek', 9417, '46.17583', '-112.94833'), ('Maxville', 914, '46.46472', '-113.23333'), ('Melrose', 33892, '45.63194', '-112.68361'), ('New Chicago', 318, '46.62694', '-113.14139'), ('Newcomb', 714, '45.92000', '-112.51889'), ('Nissler', 714, '46.00472', '-112.64139'), ('Opportunity', 9417, '46.10722', '-112.82722'), ('Ovando', 71, '47.02028', '-113.13222'), ('Philipsburg', 914, '46.33222', '-113.29333'), ('Porters Corner', 914, '46.25194', '-113.33111'), ('Princeton', 914, '46.41694', '-113.16472'), ('Racetrack', 3421, '46.27889', '-112.74778'), ('Ramsay', 33892, '46.00583', '-112.68528'), ('Silver Bow', 33892, '46.00361', '-112.66694'), ('Walkerville', 714, '46.03650', '-112.54030'), ('Warm Springs', 3421, '46.18139', '-112.78389'), ('West Valley', 9417, '46.15194', '-113.02167'), ('Woodworth', 318, '47.10639', '-113.30167')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTZ008': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bannack', 3752, '45.16110', '-112.99470'), ('Dell', 242, '44.71880', '-112.69640'), ('Dewey', 33892, '45.77720', '-112.85420'), ('Dillon', 3752, '45.21610', '-112.63450'), ('Glen', 3752, '45.47670', '-112.68970'), ('Grant', 74, '45.00860', '-113.06610'), ('Jackson', 2941, '45.36810', '-113.40810'), ('Lakeview', 11, '44.59940', '-111.80970'), ('Lima', 242, '44.63840', '-112.59140'), ('Monida', 11, '44.56190', '-112.31280'), ('Polaris', 3752, '45.36970', '-113.11860'), ('Wisdom', 9417, '45.61810', '-113.45000'), ('Wise River', 9417, '45.79140', '-112.94860')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTZ009': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Babb', 248, '48.86030', '-113.43580'), ('Browning', 1065, '48.55670', '-113.01370'), ('Dupuyer', 498, '48.19250', '-112.49860'), ('East Glacier Park', 396, '48.44710', '-113.22230'), ('Heart Butte', 698, '48.29050', '-112.83290'), ('Kiowa', 396, '48.52000', '-113.31000'), ('Saint Mary', 248, '48.74390', '-113.42860')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ010': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Cut Bank', 3105, '48.63480', '-112.33020'), ('Santa Rita', 3105, '48.77060', '-112.31920')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ011': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Box Elder', 703, '48.31720', '-110.01250'), ('Gildford', 185, '48.56940', '-110.29890'), ('Havre', 9621, '48.54380', '-109.67910'), ('Hingham', 157, '48.55560', '-110.42070'), ('Inverness', 103, '48.55670', '-110.68330'), ('Kremlin', 157, '48.56970', '-110.08580'), ('Rocky Boy', 9621, '48.25610', '-109.78750'), ('Rudyard', 275, '48.56000', '-110.55330')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ012': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Belt', 633, '47.38600', '-110.92580'), ('Black Eagle', 914, '47.52470', '-111.27750'), ('Cascade', 819, '47.27070', '-111.70250'), ('Centerville', 4544, '47.38970', '-111.14190'), ('Fort Shaw', 274, '47.50560', '-111.80940'), ('Great Falls', 56690, '47.50480', '-111.29060'), ('Malmstrom AFB', 4544, '47.50940', '-111.19070'), ('Monarch', 91, '47.09830', '-110.83780'), ('Neihart', 91, '46.93350', '-110.73570'), ('Sand Coulee', 4544, '47.39940', '-111.16690'), ('Simms', 659, '47.49170', '-111.92720'), ('Stockett', 4544, '47.35670', '-111.16440'), ('Sun Prairie', 1772, '47.53690', '-111.48060'), ('Sun River', 1772, '47.53330', '-111.72060'), ('Tracy', 4544, '47.41310', '-111.15330'), ('Ulm', 1772, '47.43150', '-111.50640'), ('Vaughn', 1772, '47.56060', '-111.54500')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTZ013': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Big Sandy', 703, '48.17890', '-110.11290'), ('Carter', 1594, '47.78110', '-110.95560'), ('Floweree', 4544, '47.72970', '-111.02670'), ('Fort Benton', 1594, '47.82860', '-110.65510'), ('Geraldine', 284, '47.60350', '-110.26590'), ('Highwood', 189, '47.58360', '-110.78940'), ('Iliad', 156, '47.79860', '-109.78530'), ('Loma', 92, '47.93690', '-110.50280'), ('Square Butte', 284, '47.51500', '-110.19750'), ('The Knees', 389, '48.02000', '-111.28330')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ014': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Canyon Creek', 2082, '46.80560', '-112.26360'), ('Craig', 819, '47.07440', '-111.96250'), ('East Helena', 1642, '46.58830', '-111.91800'), ('Helena', 25780, '46.59650', '-112.02040'), ('Lincoln', 1100, '46.95500', '-112.68080'), ('Marysville', 2082, '46.75060', '-112.29940'), ('Wolf Creek', 2082, '47.00610', '-112.06830')], 'partOfState': 'west central', 'wfo': 'TFX'}, +'MTZ015': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Alder', 659, '45.32390', '-112.10640'), ('Cameron', 840, '45.20330', '-111.67780'), ('Ennis', 840, '45.34530', '-111.72970'), ('Harrison', 1728, '45.70080', '-111.78560'), ('Jeffers', 840, '45.34890', '-111.70470'), ('Laurin', 659, '45.35280', '-112.11720'), ('McAllister', 840, '45.44440', '-111.73140'), ('Norris', 840, '45.56810', '-111.69000'), ('Pony', 1044, '45.65860', '-111.89080'), ('Sheridan', 659, '45.45710', '-112.19150'), ('Silver Star', 400, '45.69030', '-112.28220'), ('Twin Bridges', 400, '45.54340', '-112.33260'), ('Virginia City', 130, '45.29860', '-111.93550'), ('Waterloo', 1044, '45.72190', '-112.19140')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTZ016': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bowdoin', 2120, '48.39270', '-107.60550'), ('Content', 2120, '48.02050', '-107.55970'), ('Dodson', 122, '48.39550', '-108.24360'), ('Fourchette', 2120, '47.73330', '-107.96940'), ('Malta', 2120, '48.35970', '-107.87360'), ('Phillips', 122, '48.09360', '-108.16330'), ('Saco', 224, '48.45720', '-107.34190'), ('Sleeping Buffalo', 224, '48.48380', '-107.52800'), ('Sun Prairie', 2120, '47.84550', '-107.74580'), ('U L Bend', 185, '47.49160', '-107.88330'), ('Wagner', 122, '48.37050', '-108.07690')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ017': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Duck Creek Fishing', 240, '47.98440', '-106.52250'), ('Fort Peck', 240, '48.00910', '-106.44910'), ('Frazer', 452, '48.05910', '-106.04160'), ('Glasgow', 3253, '48.19690', '-106.63610'), ('Hinsdale', 224, '48.39410', '-107.08410'), ('Lustre', 452, '48.39330', '-105.88160'), ('Nashua', 325, '48.13220', '-106.35580'), ('Oswego', 452, '48.05860', '-105.88050'), ('Park Grove', 240, '48.03020', '-106.44470'), ('Saint Marie', 183, '48.40220', '-106.53220'), ('Tampico', 3253, '48.30470', '-106.82630'), ('The Bentonite Plan', 3253, '48.13880', '-107.01940'), ('The Pines Recreation Area', 240, '47.83330', '-106.62500'), ('Vandalia', 3253, '48.35470', '-106.90910'), ('Whatley', 3253, '48.14880', '-106.51660')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ018': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Flaxville', 87, '48.80380', '-105.17220'), ('Four Buttes', 1082, '48.80970', '-105.60580'), ('Madoc', 87, '48.81080', '-105.28520'), ('Navajo', 87, '48.79220', '-105.05970'), ('Peerless', 1082, '48.78250', '-105.83050'), ('Port Of Scobey', 1082, '48.99940', '-105.40660'), ('Port Of Whitetail', 87, '48.99910', '-105.16130'), ('Scobey', 1082, '48.79250', '-105.42020'), ('West Fork', 1082, '48.68690', '-105.91110'), ('Whitetail', 87, '48.89500', '-105.16270')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ019': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Antelope', 43, '48.68970', '-104.45770'), ('Archer', 82, '48.79270', '-104.81020'), ('Coalridge', 172, '48.69830', '-104.18860'), ('Comertown', 172, '48.89690', '-104.24830'), ('Dagmar', 261, '48.58330', '-104.19770'), ('Daleview', 82, '48.91330', '-104.93330'), ('Dooley', 2061, '48.88110', '-104.38880'), ('Homestead', 269, '48.42110', '-104.53830'), ('Medicine Lake', 269, '48.50130', '-104.50410'), ('Outlook', 82, '48.88750', '-104.77720'), ('Plentywood', 2061, '48.77470', '-104.56190'), ('Raymond', 2061, '48.87630', '-104.57970'), ('Raymond Port Of Entry', 2061, '48.99660', '-104.57500'), ('Redstone', 82, '48.82160', '-104.94360'), ('Reserve', 269, '48.60550', '-104.45910')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ020': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bredette', 1082, '48.50550', '-105.29910'), ('Poplar', 911, '48.11300', '-105.19770'), ('Sprole', 911, '48.10720', '-105.06270'), ('Volt', 2663, '48.38830', '-105.71830'), ('Wolf Point', 2663, '48.09050', '-105.64000')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ021': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Cat Creek', 185, '47.06520', '-108.00550'), ('Crooked Creek Camp', 185, '47.42300', '-107.94020'), ('Flatwillow', 185, '46.83190', '-108.39940'), ('Petrolia Lake', 185, '46.94160', '-108.25130'), ('Tiegen', 149, '47.03660', '-108.59610'), ('Winnett', 185, '47.00270', '-108.35130')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ022': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Brusett', 364, '47.42520', '-107.26610'), ('Cohagen', 364, '47.05440', '-106.61690'), ('Devils Creek Rec Area', 2120, '47.61830', '-107.65000'), ('Edwards', 364, '47.14020', '-107.33300'), ('Haxby', 240, '47.77000', '-106.42660'), ('Hell Creek Rec Area', 364, '47.61580', '-106.88720'), ('Hillside', 364, '46.91110', '-106.39940'), ('Jordan', 364, '47.32080', '-106.90940'), ('Mosby', 136, '46.99220', '-107.88300'), ('Sand Springs', 364, '47.10080', '-107.48500'), ('Steve Forks', 364, '47.27080', '-107.33330'), ('Van Norman', 364, '47.35330', '-106.38660')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ023': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Brockway', 644, '47.29770', '-105.76190'), ('Circle', 644, '47.41660', '-105.59800'), ('Flowing Wells Rest Area', 644, '47.32550', '-106.17050'), ('Nelson Creek Rec Area', 240, '47.55910', '-106.22510'), ('Vida', 2663, '47.83190', '-105.49250'), ('Watkins', 644, '47.24270', '-105.87270'), ('Weldon', 644, '47.61250', '-105.89160')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ024': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Burns', 4729, '47.37800', '-104.40470'), ('Crane', 4774, '47.57580', '-104.26190'), ('Enid', 189, '47.69550', '-104.77910'), ('Lambert', 189, '47.68360', '-104.62020'), ('Midway', 4774, '47.51500', '-104.32000'), ('Nohly', 709, '47.99550', '-104.09130'), ('Savage', 4774, '47.45360', '-104.34220'), ('Sidney', 4774, '47.71660', '-104.15580'), ('Wooley', 4774, '47.76500', '-104.10520')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ025': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bloomfield', 189, '47.41270', '-104.91660'), ('Forest Park', 4729, '47.10470', '-104.75770'), ('Glendive', 4729, '47.10520', '-104.71190'), ('Hodges', 567, '46.98360', '-104.38720'), ('Hoyt', 4729, '46.92970', '-104.85410'), ('Intake', 4729, '47.29380', '-104.52130'), ('Lindsay', 189, '47.21880', '-105.15330'), ('Marsh', 4729, '46.88970', '-104.93250'), ('Richey', 189, '47.64380', '-105.07440'), ('Stipek', 4729, '47.21220', '-104.66440')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ026': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Calypso', 611, '46.77300', '-105.42220'), ('Crow Rock', 8487, '46.91130', '-106.07020'), ('Fallon', 611, '46.83550', '-105.11880'), ('McCloud', 611, '46.90080', '-105.59970'), ('Mildred', 26, '46.67580', '-104.95940'), ('Terry', 611, '46.79300', '-105.31160'), ('Zero', 611, '46.66910', '-105.48800')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ027': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Carlyle', 101, '46.65500', '-104.07550'), ('Saint Phillip', 1205, '46.83160', '-104.14500'), ('Wibaux', 567, '46.98500', '-104.18770'), ('Yates', 567, '46.95110', '-104.13000')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ028': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Harlowton', 1062, '46.43702', '-109.83377'), ('Hedgesville', 0, '46.45663', '-109.50115'), ('Shawmut', 0, '46.34345', '-109.52417'), ('Twodot', 0, '46.42395', '-110.07337')], 'partOfState': 'central', 'wfo': 'BYZ'}, +'MTZ029': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Delphia', 0, '46.51075', '-108.21370'), ('Klein', 0, '46.40449', '-108.54836'), ('Melstone', 136, '46.59750', '-107.86847'), ('Musselshell', 0, '46.51858', '-108.09125'), ('Roundup', 1931, '46.44882', '-108.54191')], 'partOfState': 'central', 'wfo': 'BYZ'}, +'MTZ030': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bighorn', 0, '46.15361', '-107.43845'), ('Hysham', 330, '46.29177', '-107.22610'), ('Myers', 0, '46.25076', '-107.33799'), ('Sanders', 0, '46.29136', '-107.09639')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTZ031': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Angela', 0, '46.72983', '-106.20038'), ('Bascom', 0, '46.62647', '-106.75363'), ('Brandenberg', 0, '45.81411', '-106.23020'), ('Cartersville', 0, '46.29948', '-106.46697'), ('Colstrip', 2346, '45.89487', '-106.63015'), ('Forsyth', 1944, '46.26602', '-106.67797'), ('Hathaway', 0, '46.27483', '-106.19880'), ('Ingomar', 0, '46.57683', '-107.37505'), ('Rock Springs', 0, '46.81680', '-106.24705'), ('Rosebud', 0, '46.27460', '-106.44463'), ('Sumatra', 0, '46.61825', '-107.55082'), ('Vananda', 0, '46.39019', '-107.00378')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTZ032': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bonfield', 0, '46.62500', '-105.57300'), ('Garland', 0, '46.04686', '-105.92610'), ('Horton', 0, '46.34138', '-106.06191'), ('Ismay', 26, '46.50068', '-104.79458'), ('Kinsey', 0, '46.57082', '-105.65720'), ('Knowlton', 0, '46.34338', '-105.08769'), ('Locate', 0, '46.43330', '-105.30000'), ('Miles City', 8487, '46.40839', '-105.84078'), ('Mizpah', 0, '46.24484', '-105.26721'), ('Murn', 0, '46.43330', '-105.73330'), ('Paragon', 0, '46.36441', '-106.00950'), ('Sheffield', 0, '46.33266', '-106.13845'), ('Shirley', 0, '46.58428', '-105.57247'), ('Tusler', 0, '46.48435', '-105.74902'), ('Ulmer', 0, '46.35226', '-105.92098'), ('Volborg', 0, '45.84077', '-105.68074')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTZ033': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Baker', 1695, '46.36790', '-104.27545'), ('Ollie', 0, '46.58362', '-104.08125'), ('Plevna', 138, '46.41498', '-104.51757'), ('Webster', 0, '46.05464', '-104.24614'), ('Westmore', 0, '46.47408', '-104.64257'), ('Willard', 0, '46.19419', '-104.36841')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTZ034': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Absarokee', 1234, '45.52267', '-109.44107'), ('Columbus', 1748, '45.63688', '-109.25240'), ('Hailstone Wildlife Refuge', 0, '46.00740', '-109.18160'), ('Halfbreed Lake Wildlife', 0, '45.94250', '-109.11790'), ('Molt', 0, '45.86115', '-108.92779'), ('Park City', 0, '45.63415', '-108.91905'), ('Rapelje', 0, '45.97421', '-109.25484'), ('Reed Point', 0, '45.70515', '-109.54185')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ035': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Acton', 0, '45.93201', '-108.68299'), ('Ballantine', 0, '45.94869', '-108.14687'), ('Billings', 89847, '45.78270', '-108.50447'), ('Broadview', 150, '46.09687', '-108.87554'), ('Comanche', 0, '45.99756', '-108.77388'), ('Custer', 0, '46.13052', '-107.55393'), ('Huntley', 0, '45.89584', '-108.30843'), ('Laurel', 6255, '45.66925', '-108.77148'), ('Lockwood', 4306, '45.81519', '-108.41397'), ('Pompeys Pillar', 0, '45.95261', '-107.95261'), ('Shepherd', 0, '45.94371', '-108.34278'), ('Worden', 0, '45.95990', '-108.16147')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ036': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Belle Creek', 0, '45.13930', '-105.11069'), ('Biddle', 0, '45.09702', '-105.33812'), ('Broadus', 451, '45.44348', '-105.40833'), ('Coalwood', 0, '45.72805', '-105.59058'), ('Epsie', 0, '45.49146', '-105.65161'), ('Moorhead', 0, '45.06628', '-105.87104'), ('Olive', 0, '45.55037', '-105.52791'), ('Otter', 0, '45.20564', '-106.20476'), ('Powderville', 0, '45.75894', '-105.11594'), ('Sayle', 0, '45.22574', '-105.99339'), ('Sonnette', 0, '45.41335', '-105.83159'), ('Stacey', 0, '45.69950', '-105.93310')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTZ037': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Albion', 0, '45.18695', '-104.27574'), ('Alzada', 0, '45.02323', '-104.41536'), ('Belltower', 0, '45.63937', '-104.37466'), ('Boyes', 0, '45.26873', '-105.03065'), ('Capitol', 0, '45.43365', '-104.06644'), ('Ekalaka', 410, '45.88869', '-104.55057'), ('Hammond', 0, '45.22523', '-104.91605'), ('Medicine Rocks St Park', 0, '46.04000', '-104.48000'), ('Mill Iron', 0, '45.85336', '-104.21742'), ('Ridge', 0, '45.04701', '-105.02048'), ('Ridgeway', 0, '45.48290', '-104.50936')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTZ038': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Aberdeen', 0, '45.05436', '-107.35406'), ('Decker', 0, '45.01153', '-106.86342'), ('Fort Smith', 0, '45.31249', '-107.93556'), ('Kirby', 0, '45.30000', '-106.98330'), ('Lodge Grass', 510, '45.31453', '-107.36256'), ('Pryor', 628, '45.41002', '-108.53256'), ('Quietus', 0, '45.09639', '-106.28250'), ('Rosebud Battlefield Park', 0, '45.22640', '-106.99780'), ('St. Xavier', 0, '45.46114', '-107.72650'), ('Tongue River Reservoir Pk', 0, '45.08240', '-106.80560'), ('Wyola', 0, '45.12957', '-107.39369')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ039': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Belfry', 0, '45.14191', '-109.00579'), ('Boyd', 0, '45.45783', '-109.06667'), ('Bridger', 745, '45.29362', '-108.91407'), ('Cooney Reservoir St Park', 0, '45.44380', '-109.21700'), ('East Bridger', 0, '45.26660', '-108.91660'), ('Edgar', 0, '45.46457', '-108.85098'), ('Fromberg', 486, '45.39178', '-108.90726'), ('Joliet', 575, '45.48460', '-108.97060'), ('Rockvale', 0, '45.52228', '-108.86187'), ('Silesia', 0, '45.55666', '-108.84120'), ('Warren', 0, '45.05997', '-108.65839')], 'partOfState': '', 'wfo': 'BYZ'}, +'MTZ040': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Clyde Park', 310, '45.88393', '-110.60413'), ('Wilsall', 0, '45.99370', '-110.66036')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ041': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Big Timber', 1650, '45.83490', '-109.95540'), ('Greycliff', 0, '45.76612', '-109.79073'), ('Melville', 0, '46.10427', '-109.95140'), ('Sourdough', 0, '45.90156', '-109.81423')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ042': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Barber', 0, '46.31487', '-109.38392'), ('Belmont', 0, '46.22834', '-108.98918'), ('Cushman', 0, '46.28889', '-109.04135'), ('Franklin', 0, '46.37103', '-109.26751'), ('Lavina', 209, '46.29561', '-108.93798'), ('Ryegate', 268, '46.29767', '-109.25650')], 'partOfState': 'central', 'wfo': 'BYZ'}, +'MTZ043': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bonner', 1693, '46.87333', '-113.86361'), ('Clearwater', 318, '47.00028', '-113.37694'), ('Clinton', 549, '46.76917', '-113.71167'), ('Condon', 80, '47.52778', '-113.70972'), ('East Missoula', 2070, '46.87083', '-113.94361'), ('Garnet', 318, '46.82528', '-113.33806'), ('Greenough', 318, '46.91667', '-113.43583'), ('Nimrod', 318, '46.70028', '-113.47639'), ('Potomac', 1693, '46.88167', '-113.57861'), ('Seeley Lake', 1693, '47.17944', '-113.48361'), ('Turah', 1693, '46.83611', '-113.82917'), ('Twin Creeks', 1693, '46.91278', '-113.71306')], 'partOfState': 'west central', 'wfo': 'MSO'}, +'MTZ044': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Devon', 3216, '48.46670', '-111.47780'), ('Ethridge', 3105, '48.55780', '-112.11970'), ('Ferdig', 415, '48.75420', '-111.77420'), ('Galata', 871, '48.47560', '-111.35140'), ('Kevin', 178, '48.74580', '-111.96550'), ('Oilmont', 178, '48.74000', '-111.84000'), ('Shelby', 3216, '48.50950', '-111.85670'), ('Sunburst', 415, '48.87650', '-111.90620')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ045': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Chester', 871, '48.51110', '-110.96590'), ('Joplin', 871, '48.56080', '-110.77170'), ('Lothair', 871, '48.47170', '-111.23140'), ('Whitlash', 871, '48.90830', '-111.25220')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ046': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Brady', 2753, '48.03560', '-111.83920'), ('Conrad', 2753, '48.17280', '-111.94630'), ('Ledger', 2753, '48.26030', '-111.82220'), ('Valier', 498, '48.30190', '-112.25120')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ047': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Chinook', 1386, '48.59040', '-109.23120'), ('Fort Belknap', 422, '48.48310', '-108.76630'), ('Harlem', 848, '48.53180', '-108.78370'), ('Hays', 702, '47.99050', '-108.64940'), ('Hogeland', 848, '48.85250', '-108.65810'), ('Lloyd', 1386, '48.29030', '-109.36140'), ('Lodge Pole', 702, '48.03470', '-108.53250'), ('Turner', 122, '48.84360', '-108.40640'), ('Zurich', 1386, '48.58440', '-109.02970')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ048': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Augusta', 284, '47.49280', '-112.39140'), ('Bynum', 1781, '47.97920', '-112.31080'), ('Choteau', 1781, '47.81260', '-112.17960'), ('Pendroy', 498, '48.05690', '-112.29810')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ049': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Dutton', 389, '47.84760', '-111.71360'), ('Fairfield', 659, '47.61530', '-111.98000'), ('Power', 389, '47.71580', '-111.68610')], 'partOfState': 'north central', 'wfo': 'TFX'}, +'MTZ050': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Benchland', 244, '47.07940', '-110.01750'), ('Geyser', 454, '47.27380', '-110.49250'), ('Hobson', 244, '46.99890', '-109.87320'), ('Moccasin', 244, '47.05330', '-109.90970'), ('Raynesford', 633, '47.27000', '-110.72920'), ('Stanford', 454, '47.15200', '-110.21840'), ('Utica', 244, '46.96830', '-110.09170'), ('Windham', 454, '47.07860', '-110.13970')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTZ051': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Buffalo', 164, '46.82110', '-109.82780'), ('Christina', 156, '47.38190', '-109.32330'), ('Coffee Creek', 301, '47.34780', '-110.08080'), ('Danvers', 186, '47.22520', '-109.71640'), ('Denton', 301, '47.32310', '-109.94890'), ('Fergus', 156, '47.33080', '-109.06640'), ('Forestgrove', 149, '46.99140', '-109.07940'), ('Garneill', 164, '46.75250', '-109.75190'), ('Grass Range', 149, '47.02680', '-108.80280'), ('Hilger', 5813, '47.25390', '-109.35920'), ('Lewistown', 5813, '47.06360', '-109.42770'), ('Moore', 186, '46.97490', '-109.69490'), ('Roy', 149, '47.33140', '-108.95920'), ('Suffolk', 156, '47.46690', '-109.35500'), ('Winifred', 156, '47.56150', '-109.37530')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTZ052': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Basin', 255, '46.27140', '-112.26280'), ('Boulder', 1300, '46.23610', '-112.11950'), ('Cardwell', 40, '45.86000', '-111.95170'), ('Clancy', 1406, '46.46530', '-111.98560'), ('Corbin', 1300, '46.38060', '-112.06110'), ('Montana City', 2094, '46.53780', '-111.93190'), ('Whitehall', 1044, '45.87140', '-112.09590'), ('Wickes', 1300, '46.34970', '-112.10250')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTZ053': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Radersburg', 70, '46.19580', '-111.63110'), ('Toston', 1867, '46.19280', '-111.44030'), ('Townsend', 1867, '46.31890', '-111.51920'), ('Winston', 1867, '46.47670', '-111.65810')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTZ054': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Checkerboard', 984, '46.57250', '-110.54610'), ('Martinsdale', 1062, '46.45830', '-110.31250'), ('Ringling', 984, '46.27170', '-110.80640'), ('White Sulphur Springs', 984, '46.54720', '-110.90390')], 'partOfState': 'central', 'wfo': 'TFX'}, +'MTZ055': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Amsterdam', 1396, '45.75810', '-111.31920'), ('Belgrade', 5728, '45.77790', '-111.17740'), ('Big Sky', 1221, '45.26390', '-111.33060'), ('Bozeman', 27509, '45.67690', '-111.04250'), ('Bozeman Hot Springs', 5728, '45.65000', '-111.18330'), ('Church Hill', 1396, '45.75080', '-111.30360'), ('Gallatin Gateway', 27509, '45.59170', '-111.19690'), ('Logan', 1396, '45.88440', '-111.42670'), ('Manhattan', 1396, '45.85740', '-111.33020'), ('Maudlow', 1396, '46.10780', '-111.17220'), ('Three Forks', 1728, '45.88940', '-111.55370'), ('Trident', 1728, '45.94750', '-111.47580'), ('West Yellowstone', 1177, '44.66460', '-111.10670'), ('Willow Creek', 1728, '45.82530', '-111.64390')], 'partOfState': 'southwest', 'wfo': 'TFX'}, +'MTZ056': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bearcreek', 0, '45.16660', '-109.16660'), ('Bearcreek', 83, '45.16060', '-109.15700'), ('Fox', 0, '45.27599', '-109.21804'), ('Luther', 0, '45.28410', '-109.42903'), ('Red Lodge', 2177, '45.19486', '-109.24667'), ('Roberts', 0, '45.35881', '-109.16855'), ('Roscoe', 0, '45.35088', '-109.49554'), ('Washoe', 0, '45.16244', '-109.21171')], 'partOfState': '', 'wfo': 'BYZ'}, +'MTZ057': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Busby', 695, '45.53088', '-106.95740'), ('Corinth', 0, '45.85564', '-107.96452'), ('Crow Agency', 1552, '45.59660', '-107.46163'), ('Garryowen', 0, '45.52953', '-107.41921'), ('Hardin', 3384, '45.73132', '-107.61344'), ('Muddy', 0, '45.60861', '-106.79339')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ058': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Ashland', 464, '45.60764', '-106.30018'), ('Birney', 0, '45.41612', '-106.49359'), ('Lame Deer', 2018, '45.61132', '-106.61380')], 'partOfState': 'southeast', 'wfo': 'BYZ'}, +'MTZ059': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Chapman', 122, '48.86860', '-108.13250'), ('Frenchman Reservoir', 224, '48.70550', '-107.22500'), ('Loring', 2120, '48.79220', '-107.86110'), ('Port Of Morgan', 2120, '48.99940', '-107.83160'), ('Whitewater', 224, '48.75940', '-107.62690')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ060': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Landusky', 702, '47.89770', '-108.62160'), ('Zortman', 702, '47.91770', '-108.52550')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ061': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Baylor', 111, '48.66330', '-106.47880'), ('Glentana', 111, '48.84800', '-106.24880'), ('Larslan', 111, '48.57830', '-106.19330'), ('Opheim', 111, '48.85660', '-106.40660'), ('Port Of Opheim', 111, '48.99940', '-106.37720'), ('Richland', 111, '48.82080', '-106.05050'), ('Thoeny', 111, '48.87690', '-106.91690')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ062': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Bainville', 153, '48.14000', '-104.22220'), ('Brockton', 245, '48.15130', '-104.91630'), ('Culbertson', 716, '48.14440', '-104.51630'), ('Fort Kipp', 245, '48.14660', '-104.71520'), ('Fort Union', 709, '48.00970', '-104.04830'), ('Froid', 195, '48.33440', '-104.49550'), ('McCabe', 195, '48.24360', '-104.37720'), ('Snowden', 153, '48.02690', '-104.08360')], 'partOfState': 'northeast', 'wfo': 'GGW'}, +'MTZ063': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Judith Gap', 164, '46.67910', '-109.75231')], 'partOfState': 'central', 'wfo': 'BYZ'}, +'MTZ064': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Chico', 0, '45.32115', '-110.70606'), ('Corwin Springs', 0, '45.11301', '-110.79010'), ('Emigrant', 0, '45.36865', '-110.73363'), ('Miner', 0, '45.19888', '-110.90818'), ('Pine Creek', 0, '45.50813', '-110.56316'), ('Pray', 0, '45.38063', '-110.68153')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ065': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Livingston', 6851, '45.66170', '-110.56236'), ('Springdale', 0, '45.73470', '-110.22716')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ066': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Dean', 0, '45.40470', '-109.69465'), ('Fishtail', 0, '45.45335', '-109.50754'), ('Limestone', 0, '45.48335', '-109.90412'), ('Mc Leod', 0, '45.66357', '-110.11566'), ('Nye', 0, '45.43542', '-109.80908')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ067': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [('Alpine', 0, '45.19758', '-109.63740'), ('Cooke City', 0, '45.01947', '-109.93442'), ('Jardine', 0, '45.07021', '-110.63411'), ('Mystic Lake', 0, '45.22270', '-109.78250'), ('Silver Gate', 0, '45.00608', '-109.98859')], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'MTZ068': {'fullStateName': 'Montana', 'state': 'MT', 'cities': [], 'partOfState': 'south central', 'wfo': 'BYZ'}, +'NCZ001': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ashland', 151, '36.43330', '-81.65000'), ('Baldwin', 1081, '36.35000', '-81.53330'), ('Clifton', 151, '36.45000', '-81.56670'), ('Flatwood', 151, '36.55000', '-81.63330'), ('Fleetwood', 1081, '36.30000', '-81.51670'), ('Glendale Springs', 1422, '36.35000', '-81.38330'), ('Grassy Creek', 151, '36.56670', '-81.40000'), ('Idlewild', 1081, '36.31670', '-81.43330'), ('Jefferson', 1422, '36.42020', '-81.46990'), ('Lansing', 151, '36.49980', '-81.50980'), ('Laurel Springs', 1817, '36.41670', '-81.26670'), ('Nella', 151, '36.56670', '-81.55000'), ('Othello', 1422, '36.36670', '-81.43330'), ('Shatley Springs', 151, '36.48330', '-81.56670'), ('Trout', 1081, '36.40000', '-81.61670'), ('Wagoner', 1422, '36.40000', '-81.40000'), ('West Jefferson', 1081, '36.40000', '-81.50000')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCZ002': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Barrett', 6670, '36.51670', '-80.95000'), ('Ennice', 1817, '36.55000', '-81.00000'), ('Glade Valley', 1817, '36.48330', '-81.05000'), ('Piney Creek', 988, '36.55000', '-81.30000'), ('Roaring Gap', 1817, '36.40000', '-80.98330'), ('Scottville', 1817, '36.50000', '-81.28330'), ('Sparta', 1817, '36.50000', '-81.13330'), ('Stratford', 1817, '36.51670', '-81.21670'), ('Twin Oaks', 1817, '36.53330', '-81.16670'), ('Whitehead', 1817, '36.46670', '-81.15000')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCZ003': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ararat', 1049, '36.40000', '-80.56670'), ('Bottom', 1457, '36.48330', '-80.76670'), ('Burch', 1138, '36.28330', '-80.76670'), ('Crutchfield', 1138, '36.28330', '-80.71670'), ('Dobson', 1457, '36.39160', '-80.72130'), ('Elkin', 4109, '36.25750', '-80.84920'), ('Fairview', 1457, '36.33330', '-80.71670'), ('Flat Rock', 1690, '36.50700', '-80.58320'), ('Level Cross', 1457, '36.35000', '-80.63330'), ('Low Gap', 6670, '36.53330', '-80.86670'), ('Mountain Park', 4109, '36.38330', '-80.85000'), ('Mount Airy', 8484, '36.50380', '-80.61310'), ('Pilot Mountain', 1281, '36.38430', '-80.47190'), ('Pine Ridge', 1922, '36.50000', '-80.71670'), ('Rockford', 1138, '36.26670', '-80.65000'), ('Siloam', 659, '36.28330', '-80.56670'), ('State Road', 4109, '36.31670', '-80.86670'), ('Toast', 1922, '36.49690', '-80.63290'), ('Westfield', 8484, '36.47528', '-80.44700'), ('White Plains', 1049, '36.45000', '-80.63330'), ('Woodville', 1690, '36.50000', '-80.48330')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCZ004': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ayersville', 2417, '36.48330', '-80.03330'), ('Capella', 5952, '36.36670', '-80.31670'), ('Collinstown', 965, '36.53330', '-80.35000'), ('Danbury', 108, '36.40880', '-80.21170'), ('Dillard', 108, '36.40000', '-80.10000'), ('Francisco', 1281, '36.50000', '-80.36670'), ('Germanton', 2464, '36.26670', '-80.23330'), ('King', 5952, '36.27800', '-80.35760'), ('Lawsonville', 108, '36.48330', '-80.25000'), ('Meadows', 108, '36.36670', '-80.18330'), ('Pine Hall', 1465, '36.31670', '-80.06670'), ('Pinnacle', 5952, '36.33330', '-80.40000'), ('Prestonville', 108, '36.46670', '-80.11670'), ('Sandy Ridge', 108, '36.50000', '-80.11670'), ('Vade Mecum', 108, '36.41670', '-80.31670'), ('Walnut Cove', 1465, '36.29480', '-80.13930')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCZ005': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bethany', 7018, '36.31670', '-79.85000'), ('Draper', 15908, '36.51670', '-79.68330'), ('Eden', 15908, '36.50570', '-79.74220'), ('Ellisboro', 2262, '36.33330', '-79.98330'), ('Harrisons Crossroads', 14485, '36.43330', '-79.68330'), ('Intelligence', 2262, '36.36670', '-79.90000'), ('Lawsonville', 14485, '36.40000', '-79.56670'), ('Madison', 2262, '36.38620', '-79.97550'), ('Mayfield', 53056, '36.51670', '-79.56670'), ('Mayodan', 2417, '36.41350', '-79.97290'), ('Monroeton', 14485, '36.28330', '-79.73330'), ('Oregon Hill', 14485, '36.45000', '-79.65000'), ('Price', 1002, '36.53330', '-79.91670'), ('Reidsville', 14485, '36.34830', '-79.67240'), ('Ruffin', 14485, '36.45000', '-79.55000'), ('Stoneville', 1002, '36.46570', '-79.90660'), ('Wentworth', 2779, '36.40000', '-79.76670')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCZ006': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Baynes', 2091, '36.26670', '-79.30000'), ('Bethel', 2091, '36.45000', '-79.45000'), ('Blanch', 132, '36.51670', '-79.28330'), ('Camp Springs', 996, '36.30000', '-79.50000'), ('Gatewood', 53056, '36.53330', '-79.40000'), ('Hamer', 2091, '36.45000', '-79.28330'), ('Hightowers', 2091, '36.33330', '-79.25000'), ('Jericho', 2091, '36.28330', '-79.36670'), ('Leasburg', 132, '36.40000', '-79.16670'), ('Milton', 132, '36.53650', '-79.20840'), ('Pelham', 53056, '36.50000', '-79.46670'), ('Prospect Hill', 7284, '36.25000', '-79.20000'), ('Providence', 53056, '36.50000', '-79.36670'), ('Quick', 2091, '36.40000', '-79.50000'), ('Semora', 132, '36.50000', '-79.15000'), ('Topnot', 2091, '36.36670', '-79.26670'), ('Yanceyville', 2091, '36.40760', '-79.34310')], 'partOfState': 'north central', 'wfo': 'RNK'}, +'NCZ007': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bethel Hill', 161, '36.50000', '-78.88000'), ('Bushy Fork', 8696, '36.31000', '-79.08000'), ('Concord', 8696, '36.47000', '-79.06000'), ('Moriah', 229, '36.25000', '-78.83000'), ('Roxboro', 8696, '36.40160', '-78.98010'), ('Surl', 8696, '36.32000', '-78.88000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ008': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Berea', 229, '36.32000', '-78.73000'), ('Butner', 5792, '36.13520', '-78.77040'), ('Creedmoor', 2232, '36.12090', '-78.68720'), ('Kerr Lake', 376, '36.53000', '-78.60000'), ('Oak Hill', 161, '36.43000', '-78.72000'), ('Oxford', 8338, '36.31090', '-78.58960'), ('Stem', 229, '36.19980', '-78.72320'), ('Stovall', 376, '36.44770', '-78.56940')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ009': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bullocksville', 162, '36.48000', '-78.34500'), ('Dabney', 16095, '36.35000', '-78.48000'), ('Gillburg', 1220, '36.28000', '-78.37000'), ('Henderson', 16095, '36.32480', '-78.41200'), ('Kerr Lake', 162, '36.50000', '-78.35000'), ('Kittrell', 148, '36.22190', '-78.44150'), ('Middleburg', 162, '36.39840', '-78.32480'), ('South Henderson', 1220, '36.30250', '-78.40560'), ('Tungsten', 376, '36.52000', '-78.47000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ010': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Afton', 811, '36.33000', '-78.22000'), ('Arcola', 99, '36.28000', '-77.98000'), ('Drewry', 162, '36.45000', '-78.30000'), ('Lake Gaston', 692, '36.52000', '-77.99000'), ('Macon', 115, '36.43900', '-78.08470'), ('Norlina', 1107, '36.44570', '-78.19550'), ('Warrenton', 811, '36.40010', '-78.15710'), ('Wise', 1107, '36.48000', '-78.18000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ011': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Airlie', 692, '36.33000', '-77.88000'), ('Enfield', 2347, '36.17940', '-77.66810'), ('Glenview', 799, '36.17000', '-77.82000'), ('Halifax', 344, '36.32520', '-77.59000'), ('Hobgood', 404, '36.02740', '-77.39520'), ('Littleton', 692, '36.43420', '-77.91060'), ('Roanoke Rapids', 16957, '36.45320', '-77.65170'), ('Rosemary', 2843, '36.45130', '-77.69750'), ('Scotland Neck', 2362, '36.13030', '-77.42130'), ('South Weldon', 1414, '36.40320', '-77.61900'), ('Tillery', 344, '36.25000', '-77.48000'), ('Weldon', 1374, '36.42420', '-77.60560')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ012': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Boones Crossroads', 695, '36.33860', '-77.41890'), ('Bryantown', 931, '36.28060', '-77.35920'), ('Conway', 734, '36.43670', '-77.22970'), ('Creeksville', 103, '36.39390', '-77.30390'), ('Eagletown', 931, '36.27140', '-77.22860'), ('Falsons Old Tavern', 734, '36.44470', '-77.32410'), ('Galatia', 734, '36.47140', '-77.30280'), ('Garysburg', 1254, '36.44680', '-77.55970'), ('Gaston', 973, '36.49620', '-77.64430'), ('George', 833, '36.32200', '-77.23160'), ('Gumberry', 695, '36.47000', '-77.49840'), ('Gum Forks', 973, '36.50610', '-77.68030'), ('Henrico', 692, '36.53420', '-77.83070'), ('Jackson', 695, '36.39030', '-77.41980'), ('Lasker', 103, '36.34970', '-77.30560'), ('Margarettsville', 695, '36.53210', '-77.35070'), ('Milwaukee', 734, '36.40570', '-77.23220'), ('Mud Castle', 344, '36.37000', '-77.53140'), ('Pendleton', 263, '36.47160', '-77.19870'), ('Pleasant Grove', 695, '36.43920', '-77.44470'), ('Pleasant Hill', 795, '36.53330', '-77.53480'), ('Potecasi', 833, '36.36330', '-77.23930'), ('Rich Square', 931, '36.27370', '-77.28440'), ('Seaboard', 695, '36.49030', '-77.44110'), ('Severn', 263, '36.51370', '-77.18980'), ('Vultare', 2843, '36.51690', '-77.76530'), ('Woodland', 833, '36.33220', '-77.21090')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ013': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ahoskie', 4523, '36.28680', '-76.98590'), ('Barretts Crossroad', 78, '36.47030', '-77.05580'), ('Bartonsville', 78, '36.47500', '-76.95890'), ('Brantleys Grove', 4523, '36.32110', '-76.94920'), ('Chowan Beach', 956, '36.41750', '-76.95000'), ('Cofield', 347, '36.35560', '-76.90970'), ('Como', 78, '36.49970', '-77.01480'), ('Earleys', 4523, '36.25720', '-77.02780'), ('Harrellsville', 102, '36.30130', '-76.79270'), ('Mapleton', 2045, '36.42670', '-77.03500'), ('Menola', 833, '36.33890', '-77.12920'), ('Millennium', 888, '36.24860', '-77.09420'), ('Murfreesboro', 2045, '36.44060', '-77.09910'), ('Newsome Store', 102, '36.26220', '-76.76810'), ('Oak Villa', 956, '36.37330', '-76.94720'), ('Poor Town', 4523, '36.28030', '-77.02560'), ('Proctors Corner', 4523, '36.25530', '-76.98810'), ('Riddicksville', 78, '36.52720', '-76.93920'), ('Saint John', 888, '36.30610', '-77.08670'), ('Tunis', 347, '36.37500', '-76.89500'), ('Union', 4523, '36.33380', '-77.02420'), ('Winton', 956, '36.38990', '-76.93610')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ013': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ahoskie', 4523, '36.28680', '-76.98590'), ('Barretts Crossroad', 78, '36.47030', '-77.05580'), ('Bartonsville', 78, '36.47500', '-76.95890'), ('Brantleys Grove', 4523, '36.32110', '-76.94920'), ('Chowan Beach', 956, '36.41750', '-76.95000'), ('Cofield', 347, '36.35560', '-76.90970'), ('Como', 78, '36.49970', '-77.01480'), ('Earleys', 4523, '36.25720', '-77.02780'), ('Harrellsville', 102, '36.30130', '-76.79270'), ('Mapleton', 2045, '36.42670', '-77.03500'), ('Menola', 833, '36.33890', '-77.12920'), ('Millennium', 888, '36.24860', '-77.09420'), ('Murfreesboro', 2045, '36.44060', '-77.09910'), ('Newsome Store', 102, '36.26220', '-76.76810'), ('Oak Villa', 956, '36.37330', '-76.94720'), ('Poor Town', 4523, '36.28030', '-77.02560'), ('Proctors Corner', 4523, '36.25530', '-76.98810'), ('Riddicksville', 78, '36.52720', '-76.93920'), ('Saint John', 888, '36.30610', '-77.08670'), ('Tunis', 347, '36.37500', '-76.89500'), ('Union', 4523, '36.33380', '-77.02420'), ('Winton', 956, '36.38990', '-76.93610')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ014': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Acorn Hill', 281, '36.44270', '-76.54680'), ('Buckland', 281, '36.47420', '-76.76170'), ('Carter', 281, '36.35720', '-76.68430'), ('Corapeake', 52141, '36.53440', '-76.57680'), ('Dort', 78, '36.52920', '-76.87010'), ('Drum Hill', 281, '36.54150', '-76.72520'), ('Easons Crossroads', 281, '36.44970', '-76.69940'), ('Eure', 956, '36.42600', '-76.85630'), ('Gates', 281, '36.50350', '-76.76860'), ('Gatesville', 281, '36.40720', '-76.75540'), ('Hazelton', 281, '36.51800', '-76.69900'), ('Hobbsville', 281, '36.34760', '-76.60410'), ('Rays Beach', 347, '36.37740', '-76.84020'), ('Reynoldson', 281, '36.52810', '-76.79210'), ('Roduco', 281, '36.46240', '-76.81230'), ('Sandy Cross', 554, '36.36860', '-76.55330'), ('Savage', 281, '36.49180', '-76.60110'), ('Sunbury', 281, '36.44300', '-76.60820'), ('Topsy', 956, '36.50330', '-76.87100'), ('Trotville', 281, '36.36870', '-76.59790'), ('Wyanoke', 78, '36.54340', '-76.91180')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ014': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Acorn Hill', 281, '36.44270', '-76.54680'), ('Buckland', 281, '36.47420', '-76.76170'), ('Carter', 281, '36.35720', '-76.68430'), ('Corapeake', 52141, '36.53440', '-76.57680'), ('Dort', 78, '36.52920', '-76.87010'), ('Drum Hill', 281, '36.54150', '-76.72520'), ('Easons Crossroads', 281, '36.44970', '-76.69940'), ('Eure', 956, '36.42600', '-76.85630'), ('Gates', 281, '36.50350', '-76.76860'), ('Gatesville', 281, '36.40720', '-76.75540'), ('Hazelton', 281, '36.51800', '-76.69900'), ('Hobbsville', 281, '36.34760', '-76.60410'), ('Rays Beach', 347, '36.37740', '-76.84020'), ('Reynoldson', 281, '36.52810', '-76.79210'), ('Roduco', 281, '36.46240', '-76.81230'), ('Sandy Cross', 554, '36.36860', '-76.55330'), ('Savage', 281, '36.49180', '-76.60110'), ('Sunbury', 281, '36.44300', '-76.60820'), ('Topsy', 956, '36.50330', '-76.87100'), ('Trotville', 281, '36.36870', '-76.59790'), ('Wyanoke', 78, '36.54340', '-76.91180')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ015': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bob White Fork', 17188, '36.19360', '-76.20830'), ('Elizabeth City', 17188, '36.29600', '-76.22060'), ('Frog Island', 17188, '36.14030', '-76.10470'), ('Glen Cove', 17188, '36.16810', '-76.07220'), ('Listers Corner', 17188, '36.14140', '-76.17170'), ('Lynchs Corner', 554, '36.42320', '-76.42030'), ('Morgans Corner', 17188, '36.41740', '-76.34890'), ('Nixonton', 17188, '36.19970', '-76.27190'), ('Okisko', 554, '36.25920', '-76.35500'), ('Pasquotank', 17188, '36.26720', '-76.33870'), ('Rabbit Corner', 17188, '36.24390', '-76.32220'), ('Symonds Creek', 17188, '36.19250', '-76.23170'), ('Weeksville', 17188, '36.20730', '-76.17000')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ015': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bob White Fork', 17188, '36.19360', '-76.20830'), ('Elizabeth City', 17188, '36.29600', '-76.22060'), ('Frog Island', 17188, '36.14030', '-76.10470'), ('Glen Cove', 17188, '36.16810', '-76.07220'), ('Listers Corner', 17188, '36.14140', '-76.17170'), ('Lynchs Corner', 554, '36.42320', '-76.42030'), ('Morgans Corner', 17188, '36.41740', '-76.34890'), ('Nixonton', 17188, '36.19970', '-76.27190'), ('Okisko', 554, '36.25920', '-76.35500'), ('Pasquotank', 17188, '36.26720', '-76.33870'), ('Rabbit Corner', 17188, '36.24390', '-76.32220'), ('Symonds Creek', 17188, '36.19250', '-76.23170'), ('Weeksville', 17188, '36.20730', '-76.17000')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ016': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bartlett', 17188, '36.28920', '-76.08470'), ('Belcross', 17188, '36.34740', '-76.15510'), ('Burnt Mills', 17188, '36.39420', '-76.26530'), ('Camden', 17188, '36.32730', '-76.16800'), ('Goose Creek', 17188, '36.22810', '-76.02830'), ('Horseshoe', 151976, '36.46000', '-76.39360'), ('Indiantown', 17188, '36.33350', '-76.07730'), ('Johnsons Corner', 17188, '36.43440', '-76.29890'), ('Lambs Corner', 17188, '36.37970', '-76.22220'), ('Lilly', 151976, '36.48570', '-76.30250'), ('Old Trap', 17188, '36.24050', '-76.02710'), ('Pierceville', 17188, '36.44830', '-76.29390'), ('Riddle', 17188, '36.28940', '-76.04350'), ('Sharon', 151976, '36.49560', '-76.31000'), ('Shiloh', 17188, '36.27140', '-76.08080'), ('South Mills', 17188, '36.44530', '-76.32950'), ('Spences Corner', 17188, '36.35080', '-76.19610'), ('Tar Corner', 17188, '36.47690', '-76.28640'), ('Taylors Beach', 17188, '36.27940', '-76.11720'), ('Texas', 17188, '36.19780', '-76.01030'), ('Whitehall Shores', 17188, '36.29130', '-76.14530')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ016': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bartlett', 17188, '36.28920', '-76.08470'), ('Belcross', 17188, '36.34740', '-76.15510'), ('Burnt Mills', 17188, '36.39420', '-76.26530'), ('Camden', 17188, '36.32730', '-76.16800'), ('Goose Creek', 17188, '36.22810', '-76.02830'), ('Horseshoe', 151976, '36.46000', '-76.39360'), ('Indiantown', 17188, '36.33350', '-76.07730'), ('Johnsons Corner', 17188, '36.43440', '-76.29890'), ('Lambs Corner', 17188, '36.37970', '-76.22220'), ('Lilly', 151976, '36.48570', '-76.30250'), ('Old Trap', 17188, '36.24050', '-76.02710'), ('Pierceville', 17188, '36.44830', '-76.29390'), ('Riddle', 17188, '36.28940', '-76.04350'), ('Sharon', 151976, '36.49560', '-76.31000'), ('Shiloh', 17188, '36.27140', '-76.08080'), ('South Mills', 17188, '36.44530', '-76.32950'), ('Spences Corner', 17188, '36.35080', '-76.19610'), ('Tar Corner', 17188, '36.47690', '-76.28640'), ('Taylors Beach', 17188, '36.27940', '-76.11720'), ('Texas', 17188, '36.19780', '-76.01030'), ('Whitehall Shores', 17188, '36.29130', '-76.14530')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ017': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aydlett', 2201, '36.32530', '-75.91000'), ('Barco', 17188, '36.39120', '-75.97970'), ('Bertha', 2201, '36.27340', '-75.91120'), ('Coinjock', 17188, '36.34460', '-75.95420'), ('Currituck', 17188, '36.44820', '-76.01500'), ('Grandy', 2201, '36.24230', '-75.87800'), ('Gregory', 17188, '36.38960', '-76.12630'), ('Harbinger', 2201, '36.10190', '-75.81410'), ('Jarvisburg', 2201, '36.20190', '-75.86550'), ('Knotts Island', 393069, '36.51300', '-75.91960'), ('Mamie', 2201, '36.12740', '-75.83690'), ('Maple', 17188, '36.41350', '-76.00330'), ('Moyock', 17188, '36.48540', '-76.13520'), ('Point Harbor', 2201, '36.08000', '-75.80500'), ('Poplar Branch', 2201, '36.28060', '-75.89320'), ('Powells Point', 2201, '36.15970', '-75.85940'), ('Shawboro', 17188, '36.40520', '-76.09310'), ('Sligo', 17188, '36.45170', '-76.07750'), ('Snowden', 17188, '36.45670', '-76.10890'), ('Spot', 2201, '36.11810', '-75.81940'), ('Waterlily', 17188, '36.38500', '-75.92500')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ017': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aydlett', 2201, '36.32530', '-75.91000'), ('Barco', 17188, '36.39120', '-75.97970'), ('Bertha', 2201, '36.27340', '-75.91120'), ('Coinjock', 17188, '36.34460', '-75.95420'), ('Currituck', 17188, '36.44820', '-76.01500'), ('Grandy', 2201, '36.24230', '-75.87800'), ('Gregory', 17188, '36.38960', '-76.12630'), ('Harbinger', 2201, '36.10190', '-75.81410'), ('Jarvisburg', 2201, '36.20190', '-75.86550'), ('Knotts Island', 393069, '36.51300', '-75.91960'), ('Mamie', 2201, '36.12740', '-75.83690'), ('Maple', 17188, '36.41350', '-76.00330'), ('Moyock', 17188, '36.48540', '-76.13520'), ('Point Harbor', 2201, '36.08000', '-75.80500'), ('Poplar Branch', 2201, '36.28060', '-75.89320'), ('Powells Point', 2201, '36.15970', '-75.85940'), ('Shawboro', 17188, '36.40520', '-76.09310'), ('Sligo', 17188, '36.45170', '-76.07750'), ('Snowden', 17188, '36.45670', '-76.10890'), ('Spot', 2201, '36.11810', '-75.81940'), ('Waterlily', 17188, '36.38500', '-75.92500')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ018': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aho', 1418, '36.16670', '-81.61670'), ('Beech Mountain', 310, '36.21080', '-81.88900'), ('Blowing Rock', 1418, '36.12910', '-81.67060'), ('Boone', 13472, '36.20950', '-81.66990'), ('Deep Gap', 13472, '36.23330', '-81.51670'), ('Foscoe', 129, '36.16670', '-81.76670'), ('Lovill', 13472, '36.23330', '-81.73330'), ('Meat Camp', 13472, '36.30000', '-81.66670'), ('Peoria', 310, '36.28330', '-81.86670'), ('Reese', 2169, '36.33330', '-81.81670'), ('Rominger', 310, '36.23330', '-81.83330'), ('Rutherwood', 13472, '36.23330', '-81.60000'), ('Sands', 13472, '36.25000', '-81.63330'), ('Seven Devils', 129, '36.14970', '-81.81390'), ('Silverstone', 13472, '36.30000', '-81.75000'), ('Sugar Grove', 310, '36.26670', '-81.78330'), ('Todd', 13472, '36.30000', '-81.60000'), ('Valle Crucis', 129, '36.21670', '-81.78330')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCZ019': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Abshers', 1731, '36.36670', '-81.11670'), ('Benham', 1109, '36.30000', '-80.91670'), ('Boomer', 1440, '36.06670', '-81.25000'), ('Buck', 2071, '36.16670', '-81.23330'), ('Clingman', 460, '36.18330', '-80.93330'), ('Cricket', 2053, '36.16630', '-81.19140'), ('Darby', 1418, '36.11670', '-81.50000'), ('Dockery', 1731, '36.30000', '-81.08330'), ('Elkville', 2071, '36.06670', '-81.40000'), ('Fairplains', 2051, '36.19630', '-81.15270'), ('Halls Mills', 2269, '36.30000', '-81.21670'), ('Hays', 1731, '36.24910', '-81.11610'), ('Maple Springs', 2071, '36.18330', '-81.38330'), ('Mc Grady', 2269, '36.33330', '-81.23330'), ('Millers Creek', 2071, '36.18890', '-81.23760'), ('Moravian Falls', 1440, '36.10000', '-81.18330'), ('Mulberry', 2269, '36.22770', '-81.16610'), ('North Wilkesboro', 4116, '36.16970', '-81.14220'), ('Pleasant Hill', 795, '36.25300', '-80.88530'), ('Roaring River', 460, '36.21670', '-81.00000'), ('Ronda', 460, '36.22160', '-80.94330'), ('Summit', 1081, '36.25000', '-81.41670'), ('Traphill', 1731, '36.35000', '-81.03330'), ('Wilbar', 2071, '36.26670', '-81.31670'), ('Wilkesboro', 3159, '36.14100', '-81.16480'), ('Wilkes County Airport', 1731, '36.21670', '-81.10000'), ('Windy Gap', 460, '36.11670', '-80.98330')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCZ020': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Boonville', 1138, '36.23320', '-80.70810'), ('Brooks Crossroads', 795, '36.11670', '-80.78330'), ('Buck Shoals', 795, '36.10000', '-80.83330'), ('Courtney', 2818, '36.06670', '-80.63330'), ('East Bend', 659, '36.21730', '-80.50930'), ('Enon', 659, '36.15000', '-80.46670'), ('Huntsville', 8826, '36.08330', '-80.51670'), ('Jonesville', 1464, '36.23480', '-80.84040'), ('Lone Hickory', 2818, '36.06670', '-80.71670'), ('Nebo', 1138, '36.21670', '-80.65000'), ('Shacktown', 2818, '36.11670', '-80.60000'), ('Swancreek', 795, '36.18330', '-80.86670'), ('Yadkinville', 2818, '36.13140', '-80.65960')], 'partOfState': 'northwest', 'wfo': 'RNK'}, +'NCZ021': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Belews Creek', 3267, '36.25000', '-80.06000'), ('Clemmons', 13827, '36.02120', '-80.38770'), ('Donnaha', 659, '36.23000', '-80.43000'), ('Kernersville', 17126, '36.11820', '-80.07640'), ('Lewisville', 8826, '36.09310', '-80.40270'), ('Pfafftown', 185776, '36.15000', '-80.30000'), ('Rural Hall', 2464, '36.23470', '-80.29390'), ('Sedge Garden', 2784, '36.08850', '-80.13900'), ('Stanleyville', 185776, '36.19880', '-80.26690'), ('Walkertown', 4009, '36.17150', '-80.15300'), ('Winston-Salem', 185776, '36.10210', '-80.26290')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ022': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Climax', 4714, '35.92000', '-79.73000'), ('Colfax', 17126, '36.13000', '-80.02000'), ('Forest Oaks', 3241, '35.98800', '-79.70640'), ('Gibsonville', 4372, '36.10350', '-79.54080'), ('Greensboro', 223891, '36.07890', '-79.82690'), ('High Point', 85839, '35.98130', '-79.99820'), ('Jamestown', 3088, '35.99560', '-79.93450'), ('Lake Townsend', 223891, '36.17000', '-79.78000'), ('McLeansville', 1080, '36.10360', '-79.66050'), ('Monticello', 1080, '36.20000', '-79.68000'), ('Pleasant Garden', 4714, '35.96220', '-79.77410'), ('Stokesdale', 3267, '36.23570', '-79.98420'), ('Summerfield', 7018, '36.20260', '-79.89420')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ023': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alamance', 310, '36.03330', '-79.48520'), ('Altamahaw', 996, '36.17930', '-79.50680'), ('Burlington', 44917, '36.08440', '-79.44720'), ('Elon College', 5277, '36.09410', '-79.51170'), ('Glen Raven', 2750, '36.12100', '-79.47000'), ('Graham', 12833, '36.06310', '-79.39050'), ('Haw River', 1908, '36.09240', '-79.36010'), ('Mebane', 7284, '36.09120', '-79.27530'), ('Pleasant Grove', 1908, '36.19330', '-79.32690'), ('Saxapahaw', 1418, '35.94790', '-79.32110'), ('Snow Camp', 1418, '35.86660', '-79.41660'), ('Sutphin', 1418, '35.88330', '-79.35000'), ('Swepsonville', 922, '36.02870', '-79.35980'), ('Union Ridge', 1908, '36.22000', '-79.38330')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ024': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Cane Creek Reservoir', 1418, '35.95000', '-79.23000'), ('Carr', 7284, '36.22000', '-79.22000'), ('Carrboro', 16782, '35.91530', '-79.08380'), ('Chapel Hill', 48715, '35.92760', '-79.04060'), ('Efland', 5446, '36.06000', '-79.17000'), ('Hillsborough', 5446, '36.07120', '-79.10270'), ('Schley', 5446, '36.15000', '-79.07000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ025': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bahama', 5792, '36.17000', '-78.88000'), ('Bethesda', 187035, '35.95000', '-78.85000'), ('Durham', 187035, '35.98040', '-78.91500'), ('Gorman', 1002, '36.03800', '-78.81310'), ('Parkwood', 4123, '35.88850', '-78.90880'), ('Research Triangle', 187035, '35.87000', '-78.84000'), ('Rougemont', 5792, '36.22000', '-78.93000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ026': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bunn', 357, '35.95870', '-78.25260'), ('Centerville', 99, '36.18650', '-78.11030'), ('Franklinton', 1745, '36.10360', '-78.45660'), ('Ingleside', 3111, '36.18000', '-78.30000'), ('Louisburg', 3111, '36.10030', '-78.29930'), ('Pilot', 3173, '35.88000', '-78.27000'), ('Youngsville', 651, '36.02590', '-78.47710')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ027': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aventon', 2723, '36.15000', '-77.95000'), ('Bailey', 670, '35.78010', '-78.11290'), ('Battleboro', 527, '36.04860', '-77.75080'), ('Castalia', 340, '36.08230', '-78.05730'), ('Dortches', 809, '36.01110', '-77.85840'), ('Middlesex', 838, '35.78770', '-78.20460'), ('Nashville', 4309, '35.96730', '-77.95610'), ('Red Oak', 2723, '36.03850', '-77.90680'), ('Sharpsburg', 2421, '35.86710', '-77.83240'), ('Spring Hope', 1261, '35.94450', '-78.10940')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ028': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Conetoe', 365, '35.81720', '-77.45740'), ('Kingsboro', 11138, '35.91000', '-77.67000'), ('Leggett', 77, '35.99110', '-77.57960'), ('Macclesfield', 458, '35.75220', '-77.67060'), ('Pinetops', 1419, '35.79110', '-77.63730'), ('Princeville', 940, '35.88830', '-77.52600'), ('Rocky Mount', 55893, '35.95000', '-77.78800'), ('Speed', 70, '35.96830', '-77.44430'), ('Tarboro', 11138, '35.90770', '-77.55660'), ('Whitakers', 799, '36.10590', '-77.70000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ029': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beargrass', 53, '35.76580', '-77.12980'), ('Everetts', 179, '35.83330', '-77.17180'), ('Hamilton', 516, '35.94400', '-77.20810'), ('Hassell', 72, '35.90820', '-77.27780'), ('Jamesville', 502, '35.81160', '-76.89970'), ('Oak City', 339, '35.96210', '-77.30490'), ('Parmele', 290, '35.81970', '-77.31240'), ('Robersonville', 1731, '35.82490', '-77.25300'), ('Williamston', 5843, '35.85140', '-77.05860')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ030': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Askewville', 180, '36.10970', '-76.94120'), ('Aulander', 888, '36.22890', '-77.11360'), ('Buena Vista', 180, '36.12060', '-76.96470'), ('Burden', 888, '36.15990', '-77.06490'), ('Colerain', 221, '36.20100', '-76.76840'), ('Connaritsa', 888, '36.18930', '-77.07430'), ('Edenhouse', 5394, '36.03860', '-76.72500'), ('Goose Pond', 221, '36.17780', '-76.77530'), ('Kelford', 245, '36.18080', '-77.22420'), ('Lewiston Woodville', 613, '36.11430', '-77.17990'), ('Merry Hill', 4107, '36.01210', '-76.77170'), ('Midway', 2293, '36.03440', '-76.78440'), ('Mount Gould', 221, '36.12100', '-76.76090'), ('Powellsville', 259, '36.22480', '-76.93200'), ('Quitsna', 5843, '35.97400', '-77.08590'), ('Republican', 180, '36.08250', '-77.05950'), ('Rosemead', 259, '36.18000', '-76.86640'), ('Roxobel', 263, '36.20180', '-77.23820'), ('Trap', 259, '36.20670', '-76.87110'), ('Wakelon', 221, '36.15860', '-76.84390'), ('Whites Crossroads', 180, '36.13690', '-76.86610'), ('Windsor', 2283, '36.00070', '-76.94390'), ('Woodard', 502, '35.91620', '-76.86170')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ030': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Askewville', 180, '36.10970', '-76.94120'), ('Aulander', 888, '36.22890', '-77.11360'), ('Buena Vista', 180, '36.12060', '-76.96470'), ('Burden', 888, '36.15990', '-77.06490'), ('Colerain', 221, '36.20100', '-76.76840'), ('Connaritsa', 888, '36.18930', '-77.07430'), ('Edenhouse', 5394, '36.03860', '-76.72500'), ('Goose Pond', 221, '36.17780', '-76.77530'), ('Kelford', 245, '36.18080', '-77.22420'), ('Lewiston Woodville', 613, '36.11430', '-77.17990'), ('Merry Hill', 4107, '36.01210', '-76.77170'), ('Midway', 2293, '36.03440', '-76.78440'), ('Mount Gould', 221, '36.12100', '-76.76090'), ('Powellsville', 259, '36.22480', '-76.93200'), ('Quitsna', 5843, '35.97400', '-77.08590'), ('Republican', 180, '36.08250', '-77.05950'), ('Rosemead', 259, '36.18000', '-76.86640'), ('Roxobel', 263, '36.20180', '-77.23820'), ('Trap', 259, '36.20670', '-76.87110'), ('Wakelon', 221, '36.15860', '-76.84390'), ('Whites Crossroads', 180, '36.13690', '-76.86610'), ('Windsor', 2283, '36.00070', '-76.94390'), ('Woodard', 502, '35.91620', '-76.86170')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ031': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Arrowhead Beach', 221, '36.22310', '-76.70000'), ('Cape Colony', 5394, '36.01940', '-76.58190'), ('Center Hill', 2070, '36.21480', '-76.60930'), ('Cisco', 221, '36.18970', '-76.63420'), ('Drummond Point', 2070, '36.06000', '-76.43000'), ('Edenton', 5394, '36.05580', '-76.60190'), ('Gliden', 281, '36.30500', '-76.61440'), ('Hancock', 5394, '36.09900', '-76.62860'), ('Icaria', 221, '36.25580', '-76.62750'), ('Macedonia', 5394, '36.10170', '-76.66750'), ('Mavaton', 5394, '36.17390', '-76.64250'), ('Mill Crossroads', 221, '36.22190', '-76.66830'), ('Rockyhock', 221, '36.18110', '-76.69240'), ('Ryland', 221, '36.27400', '-76.63490'), ('Saint Johns', 5394, '36.03060', '-76.52690'), ('Sign Pine', 281, '36.30890', '-76.62440'), ('Smalls Crossroads', 221, '36.22580', '-76.65670'), ('Somerset', 2070, '36.06020', '-76.46620'), ('Tyner', 221, '36.25140', '-76.63230'), ('Valhalla', 5394, '36.13700', '-76.65780')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ031': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Arrowhead Beach', 221, '36.22310', '-76.70000'), ('Cape Colony', 5394, '36.01940', '-76.58190'), ('Center Hill', 2070, '36.21480', '-76.60930'), ('Cisco', 221, '36.18970', '-76.63420'), ('Drummond Point', 2070, '36.06000', '-76.43000'), ('Edenton', 5394, '36.05580', '-76.60190'), ('Gliden', 281, '36.30500', '-76.61440'), ('Hancock', 5394, '36.09900', '-76.62860'), ('Icaria', 221, '36.25580', '-76.62750'), ('Macedonia', 5394, '36.10170', '-76.66750'), ('Mavaton', 5394, '36.17390', '-76.64250'), ('Mill Crossroads', 221, '36.22190', '-76.66830'), ('Rockyhock', 221, '36.18110', '-76.69240'), ('Ryland', 221, '36.27400', '-76.63490'), ('Saint Johns', 5394, '36.03060', '-76.52690'), ('Sign Pine', 281, '36.30890', '-76.62440'), ('Smalls Crossroads', 221, '36.22580', '-76.65670'), ('Somerset', 2070, '36.06020', '-76.46620'), ('Tyner', 221, '36.25140', '-76.63230'), ('Valhalla', 5394, '36.13700', '-76.65780')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ032': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beach Springs', 2070, '36.20920', '-76.51500'), ('Belvidere', 554, '36.26850', '-76.53590'), ('Burgess', 2070, '36.13470', '-76.40750'), ('Chapanoke', 554, '36.25400', '-76.37740'), ('Forestburg', 554, '36.19080', '-76.37830'), ('Harvey Point', 2070, '36.09000', '-76.32000'), ('Hertford', 2070, '36.18310', '-76.47460'), ('Hickory Crossroads', 554, '36.32030', '-76.54450'), ('Holiday Island', 2070, '36.08750', '-76.38330'), ('Jacocks', 17188, '36.14830', '-76.26410'), ('Light Nixon Fork', 2070, '36.13220', '-76.49390'), ('Nicanor', 554, '36.33220', '-76.47980'), ('Parkville', 554, '36.29140', '-76.39940'), ('Peach', 554, '36.34500', '-76.53610'), ('Smithtown', 554, '36.24200', '-76.48450'), ('Snug Harbor', 2070, '36.08240', '-76.43000'), ('Whiteston', 554, '36.32510', '-76.49860'), ('Winfall', 554, '36.21060', '-76.45520'), ('Woodville', 17188, '36.23420', '-76.32670'), ('Yeopim Station', 2070, '36.14200', '-76.52290')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ032': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beach Springs', 2070, '36.20920', '-76.51500'), ('Belvidere', 554, '36.26850', '-76.53590'), ('Burgess', 2070, '36.13470', '-76.40750'), ('Chapanoke', 554, '36.25400', '-76.37740'), ('Forestburg', 554, '36.19080', '-76.37830'), ('Harvey Point', 2070, '36.09000', '-76.32000'), ('Hertford', 2070, '36.18310', '-76.47460'), ('Hickory Crossroads', 554, '36.32030', '-76.54450'), ('Holiday Island', 2070, '36.08750', '-76.38330'), ('Jacocks', 17188, '36.14830', '-76.26410'), ('Light Nixon Fork', 2070, '36.13220', '-76.49390'), ('Nicanor', 554, '36.33220', '-76.47980'), ('Parkville', 554, '36.29140', '-76.39940'), ('Peach', 554, '36.34500', '-76.53610'), ('Smithtown', 554, '36.24200', '-76.48450'), ('Snug Harbor', 2070, '36.08240', '-76.43000'), ('Whiteston', 554, '36.32510', '-76.49860'), ('Winfall', 554, '36.21060', '-76.45520'), ('Woodville', 17188, '36.23420', '-76.32670'), ('Yeopim Station', 2070, '36.14200', '-76.52290')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ033': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Banner Elk', 811, '36.16240', '-81.87230'), ('Crossnore', 242, '36.02240', '-81.93140'), ('Elk Park', 459, '36.15800', '-81.98080'), ('Grandfather Mountain', 73, '36.09850', '-81.84750'), ('Ingalls', 2030, '35.97140', '-82.01190'), ('Minneapolis', 459, '36.09920', '-81.98720'), ('Newland', 704, '36.08660', '-81.92640'), ('Sugar Mountain', 226, '36.12420', '-81.86330')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ035': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bethlehem', 3713, '35.81340', '-81.29240'), ('Ellendale', 1799, '35.92560', '-81.27970'), ('Hiddenite', 1380, '35.90360', '-81.09080'), ('Millersville', 1799, '35.85560', '-81.18360'), ('Stony Point', 1380, '35.86670', '-81.04910'), ('Taylorsville', 1799, '35.92110', '-81.17930')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ036': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Harmony', 526, '35.95840', '-80.77280'), ('Love Valley', 30, '35.99020', '-80.98520'), ('Mooresville', 18823, '35.57940', '-80.81220'), ('Scotts', 1380, '35.84280', '-81.00940'), ('Statesville', 23320, '35.78670', '-80.88630'), ('Troutman', 1592, '35.70470', '-80.89050'), ('Turnersburg', 526, '35.90830', '-80.80750'), ('Union Grove', 526, '36.02440', '-80.86360')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ037': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Advance', 13827, '35.93460', '-80.40560'), ('Cooleemee', 905, '35.81250', '-80.55750'), ('Farmington', 43720, '36.00930', '-80.52950'), ('Fork Church', 43720, '35.88060', '-80.44580'), ('Mocksville', 43720, '35.89750', '-80.55600'), ('Sheffield', 526, '35.96610', '-80.68030')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ038': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Arcadia', 3538, '35.95000', '-80.30000'), ('Denton', 1450, '35.63660', '-80.11190'), ('Gordontown', 1450, '35.75000', '-80.12000'), ('High Rock', 1450, '35.60000', '-80.23000'), ('Lexington', 19953, '35.80900', '-80.25700'), ('Linwood', 4247, '35.75056', '-80.31800'), ('Midway', 3538, '35.98000', '-80.27000'), ('Newsom', 326, '35.53000', '-80.18000'), ('Thomasville', 19788, '35.88890', '-80.07660'), ('Welcome', 3538, '35.91080', '-80.25420')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ039': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Archdale', 9014, '35.90380', '-79.96630'), ('Asheboro', 21672, '35.71980', '-79.81170'), ('Coleridge', 1588, '35.64000', '-79.60000'), ('Franklinville', 1258, '35.74500', '-79.69180'), ('Liberty', 2661, '35.85420', '-79.57140'), ('Martha', 1450, '35.62000', '-80.01000'), ('New Hope', 1450, '35.55000', '-80.02000'), ('Ramseur', 1588, '35.73340', '-79.65060'), ('Randleman', 3557, '35.81700', '-79.80240'), ('Seagrove', 246, '35.54150', '-79.77690'), ('Staley', 347, '35.79460', '-79.55140'), ('Trinity', 6690, '35.88790', '-80.01450'), ('Ulah', 21672, '35.64000', '-79.84000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ040': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bynum', 2226, '35.77000', '-79.15000'), ('Fearrington', 903, '35.80630', '-79.07350'), ('Goldston', 319, '35.59340', '-79.32850'), ('Harpers Crossroads', 319, '35.56000', '-79.48000'), ('Hasty', 6966, '35.68000', '-79.47000'), ('Jordan Lake', 903, '35.74000', '-79.04000'), ('Moncure', 2226, '35.62000', '-79.08000'), ('Pittsboro', 2226, '35.71940', '-79.17450'), ('Siler City', 6966, '35.72490', '-79.46260')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ041': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Apex', 20212, '35.72580', '-78.84500'), ('Carpenter', 5208, '35.82000', '-78.88000'), ('Cary', 94536, '35.78340', '-78.79890'), ('Falls Lake', 12588, '35.93000', '-78.58000'), ('Fuquay-Varina', 7898, '35.59070', '-78.79400'), ('Garner', 17757, '35.69450', '-78.62690'), ('Holly Springs', 9192, '35.65520', '-78.83570'), ('Knightdale', 5958, '35.79250', '-78.48640'), ('Lake Wheeler', 17757, '35.69950', '-78.72000'), ('Morrisville', 5208, '35.83310', '-78.83310'), ('New Hill', 9192, '35.68000', '-78.90000'), ('New Hope', 5694, '35.80710', '-78.55520'), ('Purnell', 12588, '36.02000', '-78.57000'), ('Raleigh', 276093, '35.82200', '-78.65880'), ('Rdu International', 5208, '35.87000', '-78.78000'), ('Rolesville', 907, '35.92760', '-78.45710'), ('Wake Forest', 12588, '35.97060', '-78.52090'), ('Wendell', 4247, '35.78200', '-78.36850')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ042': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Benson', 2923, '35.37990', '-78.54700'), ('Clayton', 6973, '35.64700', '-78.45830'), ('Coats Crossroads', 2923, '35.52000', '-78.55000'), ('Emit', 838, '35.73000', '-78.27000'), ('Flowers', 6973, '35.65000', '-78.35000'), ('Four Oaks', 1424, '35.44770', '-78.42500'), ('Kenly', 1569, '35.59340', '-78.12530'), ('Micro', 454, '35.56260', '-78.20420'), ('Pine Level', 1313, '35.51000', '-78.24620'), ('Princeton', 1066, '35.46550', '-78.16040'), ('Selma', 5914, '35.53680', '-78.28870'), ('Smithfield', 11510, '35.50730', '-78.34410')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ043': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Black Creek', 714, '35.63580', '-77.93350'), ('Elm City', 1165, '35.80890', '-77.86290'), ('Lucama', 847, '35.64350', '-78.00860'), ('New Hope', 44405, '35.80000', '-77.95000'), ('Saratoga', 379, '35.65350', '-77.77680'), ('Sims', 128, '35.76040', '-78.05890'), ('Stantonsburg', 726, '35.60450', '-77.82020'), ('Willbanks', 379, '35.75000', '-77.77000'), ('Wilson', 44405, '35.73180', '-77.92450')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ044': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ayden', 4622, '35.47080', '-77.42110'), ('Bethel', 1681, '35.80760', '-77.37610'), ('Falkland', 112, '35.69860', '-77.51480'), ('Farmville', 4302, '35.59490', '-77.59100'), ('Fountain', 533, '35.67410', '-77.63710'), ('Greenville', 60476, '35.59980', '-77.37440'), ('Grifton', 2073, '35.37380', '-77.43460'), ('Grimesland', 440, '35.56230', '-77.19170'), ('Simpson', 464, '35.57500', '-77.27880'), ('Winterville', 4791, '35.52870', '-77.39770')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ045': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Creswell', 278, '35.87090', '-76.39320'), ('Plymouth', 4107, '35.86090', '-76.74840'), ('Roper', 613, '35.87740', '-76.61710')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ046': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Columbia', 819, '35.91970', '-76.25120')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ047': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ048': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Allenstand', 645, '35.97280', '-82.75310'), ('Faust', 1764, '35.91110', '-82.53030'), ('Hot Springs', 645, '35.89160', '-82.82830'), ('Luck', 645, '35.73580', '-82.86640'), ('Marshall', 840, '35.79670', '-82.68400'), ('Mars Hill', 1764, '35.82820', '-82.55060'), ('Spring Creek', 645, '35.79860', '-82.85440'), ('Walnut', 840, '35.84940', '-82.73890'), ('Whiterock', 645, '35.95250', '-82.70170')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ049': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Burnsville', 1623, '35.91650', '-82.29790'), ('Busick', 963, '35.76970', '-82.18310'), ('Celo', 1623, '35.85500', '-82.19810'), ('Micaville', 1623, '35.90940', '-82.21330'), ('Mount Mitchell State Park', 630, '35.77080', '-82.26330'), ('Ramseytown', 1623, '36.00060', '-82.35750'), ('Swiss', 1764, '35.91420', '-82.45000')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ050': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bakersville', 357, '36.01480', '-82.15840'), ('Bandana', 357, '35.97310', '-82.17610'), ('Buladean', 357, '36.10830', '-82.19500'), ('Ledger', 357, '35.96420', '-82.16530'), ('Poplar', 1717, '36.07250', '-82.34330'), ('Spruce Pine', 2030, '35.91620', '-82.06990')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ051': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alarka', 1411, '35.35180', '-83.43730'), ('Almond', 1411, '35.36970', '-83.56530'), ('Bryson City', 1411, '35.42650', '-83.44730'), ('Cherokee', 205, '35.47420', '-83.31500'), ('Luada', 1411, '35.37280', '-83.50420'), ('Newfound Gap', 3417, '35.60650', '-83.42500'), ('Smokemont', 1411, '35.55200', '-83.30520'), ('Wesser', 1411, '35.33310', '-83.59140')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ052': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Canton', 4029, '35.54610', '-82.84300'), ('Clyde', 1324, '35.53320', '-82.91180'), ('Cove Creek', 2675, '35.60640', '-83.01140'), ('Cruso', 4029, '35.41750', '-82.81080'), ('Lake Junaluska', 2675, '35.52770', '-82.97660'), ('Maggie Valley', 607, '35.51720', '-83.09150'), ('Sunburst', 1678, '35.41060', '-82.93220'), ('Waterville', 7123, '35.76260', '-83.10050'), ('Waynesville', 9232, '35.48450', '-82.99750')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ053': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Avery Creek', 1405, '35.46280', '-82.57450'), ('Barnardsville', 1764, '35.77650', '-82.45300'), ('Bent Creek', 1389, '35.51090', '-82.61430'), ('Biltmore Forest', 1440, '35.53350', '-82.54100'), ('Black Mountain', 7511, '35.61430', '-82.33030'), ('Candler', 1389, '35.53640', '-82.69310'), ('Canto', 840, '35.70140', '-82.75920'), ('Downtown Asheville', 68889, '35.57410', '-82.54880'), ('Fairview', 2495, '35.52280', '-82.40450'), ('Leicester', 3162, '35.65300', '-82.68780'), ('Montreat', 630, '35.64650', '-82.30060'), ('Skyland', 4418, '35.48350', '-82.52460'), ('Swannanoa', 4132, '35.60160', '-82.39210'), ('Weaverville', 2416, '35.69700', '-82.55790'), ('Woodfin', 3162, '35.63650', '-82.58550')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ056': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Catawba', 698, '35.70620', '-81.07580'), ('Claremont', 1038, '35.71360', '-81.15090'), ('Conover', 6604, '35.70950', '-81.21750'), ('Cooksville', 962, '35.59310', '-81.47610'), ('Hickory', 37222, '35.73920', '-81.32620'), ('Longview', 4722, '35.72600', '-81.38400'), ('Maiden', 3282, '35.57580', '-81.20610'), ('Newton', 12560, '35.66540', '-81.21870'), ('St. Stephens', 9439, '35.76450', '-81.27340'), ('Terrell', 3185, '35.58920', '-80.97830')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ057': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('China Grove', 3616, '35.57120', '-80.58030'), ('Cleveland', 808, '35.73090', '-80.67920'), ('Craven', 1971, '35.62830', '-80.33190'), ('Enochville', 2851, '35.52000', '-80.66600'), ('Faith', 695, '35.58810', '-80.46120'), ('Gold Hill', 1971, '35.52110', '-80.33830'), ('Granite Quarry', 2175, '35.61320', '-80.44570'), ('Landis', 2996, '35.54630', '-80.61190'), ('Mount Ulla', 808, '35.65830', '-80.72690'), ('Rockwell', 1971, '35.55180', '-80.40690'), ('Salisbury', 26462, '35.66650', '-80.48290'), ('Spencer', 3355, '35.69440', '-80.43310'), ('Woodleaf', 905, '35.76890', '-80.59110')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ058': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Fontana Village', 44, '35.43560', '-83.81920'), ('Robbinsville', 747, '35.32280', '-83.80690'), ('Santeetlah', 44, '35.36380', '-83.86650'), ('Stecoah', 747, '35.36970', '-83.69060'), ('Tapoco', 44, '35.44330', '-83.93690')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ059': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Balsam', 607, '35.42670', '-83.08530'), ('Cullowhee', 3579, '35.31160', '-83.17840'), ('Dillsboro', 205, '35.36900', '-83.25210'), ('Gay', 205, '35.29140', '-83.27330'), ('Sylva', 2435, '35.37440', '-83.22280'), ('Tuckasegee', 3579, '35.27030', '-83.12280'), ('Webster', 486, '35.35290', '-83.21500')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ060': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Andrews', 1602, '35.19850', '-83.82290'), ('Culberson', 153, '34.99060', '-84.16890'), ('Hiawasse Dam', 1568, '35.14750', '-84.17110'), ('Hot House', 153, '35.01940', '-84.23330'), ('Marble', 1602, '35.17390', '-83.92580'), ('Murphy', 1568, '35.09330', '-84.02740'), ('Topton', 1602, '35.24560', '-83.70420'), ('Unaka', 1568, '35.19390', '-84.14250'), ('Violet', 657, '35.18830', '-84.21890')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'NCZ061': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Brasstown', 297, '35.01580', '-83.91030'), ('Hayesville', 297, '35.04630', '-83.81930'), ('Shooting Creek', 547, '35.03060', '-83.64970'), ('Tusquitee', 297, '35.08330', '-83.76670')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'NCZ062': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Franklin', 3490, '35.18100', '-83.38180'), ('Highlands', 909, '35.05400', '-83.19810'), ('Kyle', 1602, '35.22270', '-83.60930'), ('Nantahala Lake', 1602, '35.18970', '-83.65130'), ('Otto', 199, '35.06000', '-83.38780'), ('Rainbow Springs', 3490, '35.08650', '-83.55930'), ('Scaly', 187, '35.01170', '-83.31640')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ063': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Cashiers', 196, '35.10560', '-83.09670'), ('Wolf Mountain', 490, '35.21580', '-82.98670')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ064': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Balsam Grove', 490, '35.22940', '-82.87390'), ('Brevard', 6789, '35.23770', '-82.73020'), ('Cedar Mountain', 6789, '35.14330', '-82.64310'), ('Lake Toxaway', 490, '35.13220', '-82.93420'), ('Little River', 2766, '35.23860', '-82.62920'), ('Rosman', 490, '35.14380', '-82.82200'), ('Sapphire', 490, '35.10690', '-83.00310')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ065': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bat Cave', 1027, '35.45080', '-82.28230'), ('Dana', 4151, '35.32920', '-82.37560'), ('East Flat Rock', 4151, '35.28450', '-82.41920'), ('Etowah', 2766, '35.31530', '-82.59510'), ('Flat Rock', 2565, '35.27110', '-82.44170'), ('Fletcher', 4185, '35.43430', '-82.50290'), ('Hendersonville', 10420, '35.32150', '-82.46220'), ('Mills River', 2169, '35.38830', '-82.56690'), ('Mountain Home', 2169, '35.36990', '-82.50440'), ('Tuxedo', 4151, '35.22530', '-82.42970')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ068': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Belwood', 962, '35.47720', '-81.52120'), ('Boiling Springs NC', 3866, '35.24890', '-81.66720'), ('Casar', 308, '35.51290', '-81.61770'), ('Earl', 234, '35.19490', '-81.53430'), ('Fallston', 603, '35.42920', '-81.50240'), ('Grover', 698, '35.17090', '-81.45170'), ('Kings Mountain', 9693, '35.24150', '-81.34800'), ('Kingstown', 845, '35.36250', '-81.62310'), ('Lattimore', 419, '35.31730', '-81.66200'), ('Lawndale', 642, '35.41410', '-81.56160'), ('Mooresboro', 314, '35.29910', '-81.69960'), ('Patterson Springs', 620, '35.23240', '-81.51750'), ('Polkville', 535, '35.41690', '-81.64480'), ('Shelby', 19477, '35.28890', '-81.54200'), ('Waco', 328, '35.36190', '-81.42930')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ069': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Boger City', 554, '35.47940', '-81.20220'), ('Crouse', 5361, '35.42080', '-81.30560'), ('Denver', 1280, '35.53110', '-81.03000'), ('Iron Station', 554, '35.44140', '-81.15640'), ('Lincolnton', 9965, '35.47580', '-81.24550'), ('Lowesville', 1440, '35.42120', '-81.00260'), ('Vale', 962, '35.53970', '-81.39750')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ070': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Belmont', 8705, '35.24990', '-81.04020'), ('Bessemer City', 5119, '35.28400', '-81.28520'), ('Cherryville', 5361, '35.38160', '-81.37560'), ('Cramerton', 2976, '35.23460', '-81.07420'), ('Crowders', 5487, '35.18610', '-81.20670'), ('Dallas', 3402, '35.31470', '-81.17680'), ('Gastonia', 66277, '35.25270', '-81.17150'), ('High Shoals', 729, '35.39820', '-81.20150'), ('Lowell', 2662, '35.26860', '-81.10140'), ('Lucia', 1440, '35.38470', '-81.01080'), ('McAdenville', 619, '35.26470', '-81.08000'), ('Mount Holly', 9618, '35.30520', '-81.03140'), ('Ranlo', 2198, '35.28700', '-81.13130'), ('Stanley', 3053, '35.35650', '-81.09750')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ071': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Center City Charlotte', 540828, '35.22710', '-80.84310'), ('Cornelius', 11969, '35.48080', '-80.86860'), ('Croft', 24960, '35.34470', '-80.82440'), ('Davidson', 7139, '35.49850', '-80.84650'), ('Eastland Mall', 540828, '35.20750', '-80.75310'), ('Huntersville', 24960, '35.41580', '-80.84510'), ('Matthews', 22127, '35.12200', '-80.71320'), ('Mint Hill', 14922, '35.17690', '-80.66170'), ('Paw Creek', 9618, '35.27420', '-80.93860'), ('Pineville', 3449, '35.08460', '-80.88570'), ('Southpark Mall', 540828, '35.15130', '-80.82870'), ('Unc Charlotte', 540828, '35.30250', '-80.72910')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ072': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Concord', 55977, '35.40730', '-80.59430'), ('Harrisburg', 4493, '35.32140', '-80.66510'), ('Kannapolis', 36910, '35.49110', '-80.62040'), ('Midland', 1113, '35.22720', '-80.50080'), ('Mount Pleasant', 1259, '35.40250', '-80.43610')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ073': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Albemarle', 15680, '35.36340', '-80.19220'), ('Badin', 1154, '35.40710', '-80.11130'), ('Finger', 1259, '35.38000', '-80.37000'), ('Locust', 2416, '35.25810', '-80.43060'), ('New London', 326, '35.44260', '-80.21980'), ('Norwood', 2216, '35.22470', '-80.12030'), ('Oakboro', 1198, '35.22310', '-80.32580'), ('Plyler', 15680, '35.37000', '-80.28000'), ('Richfield', 515, '35.47150', '-80.25670'), ('Stanfield', 1113, '35.23530', '-80.42780')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ074': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Badin Lake', 1154, '35.46000', '-80.08000'), ('Biscoe', 1700, '35.36030', '-79.78050'), ('Candor', 825, '35.29120', '-79.74360'), ('Eldorado', 1154, '35.47000', '-80.03000'), ('Mount Gilead', 1389, '35.21510', '-80.00300'), ('Pekin', 1389, '35.22000', '-79.88000'), ('Star', 807, '35.40050', '-79.78420'), ('Steeds', 807, '35.47000', '-79.80000'), ('Troy', 3430, '35.36410', '-79.89320')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ075': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aberdeen', 3400, '35.13950', '-79.42140'), ('Cameron', 151, '35.32700', '-79.25160'), ('Carthage', 1871, '35.34740', '-79.41830'), ('Eagle Springs', 3214, '35.30000', '-79.65000'), ('Foxfire', 474, '35.17360', '-79.56830'), ('Glendon', 1195, '35.48235', '-79.41700'), ('Highfalls', 1195, '35.48000', '-79.53000'), ('High Falls', 424, '35.48360', '-79.52200'), ('Pinebluff', 1109, '35.10710', '-79.47230'), ('Pinehurst', 9706, '35.18030', '-79.46140'), ('Robbins', 1195, '35.43240', '-79.58420'), ('Seven Lakes', 3214, '35.26420', '-79.58500'), ('Southern Pines', 10918, '35.18350', '-79.40220'), ('Taylortown', 845, '35.21590', '-79.49200'), ('Vass', 750, '35.25580', '-79.28220'), ('Whispering Pines', 2090, '35.25490', '-79.37950')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ076': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Broadway', 1015, '35.45710', '-79.05360'), ('Cumnock', 23220, '35.54000', '-79.23000'), ('Gum Springs', 23220, '35.46000', '-79.22000'), ('Lemon Springs', 151, '35.38000', '-79.20000'), ('Sanford', 23220, '35.47700', '-79.18130'), ('Tramway', 23220, '35.43000', '-79.23000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ077': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Anderson Creek', 8098, '35.28000', '-78.93000'), ('Angier', 3419, '35.51070', '-78.73880'), ('Buies Creek', 2215, '35.40750', '-78.74020'), ('Coats', 1845, '35.40620', '-78.66880'), ('Duncan', 7898, '35.56000', '-78.88000'), ('Dunn', 9196, '35.31130', '-78.61530'), ('Erwin', 4537, '35.32520', '-78.67230'), ('Lillington', 2915, '35.39790', '-78.81610'), ('Olivia', 1015, '35.37000', '-79.11000'), ('Pineview', 1015, '35.31000', '-79.08000'), ('Seminole', 1015, '35.46000', '-79.00000'), ('Timberlake', 8098, '35.28800', '-78.95000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ078': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Brogden', 2907, '35.29660', '-78.02530'), ('Elroy', 3896, '35.33400', '-77.92060'), ('Eureka', 244, '35.54090', '-77.87750'), ('Fremont', 1463, '35.54330', '-77.97600'), ('Goldsboro', 39043, '35.37380', '-77.97610'), ('Grantham', 3004, '35.30000', '-78.17000'), ('Mar-Mac', 3004, '35.33490', '-78.05600'), ('Mount Olive', 4567, '35.19640', '-78.06770'), ('Nahunta', 719, '35.50000', '-78.06000'), ('Pikeville', 719, '35.49750', '-77.98430'), ('Seven Springs', 86, '35.22540', '-77.84600'), ('Walnut Creek', 859, '35.30860', '-77.86890')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ079': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Hookerton', 467, '35.42290', '-77.58920'), ('Snow Hill', 1514, '35.45140', '-77.67450'), ('Walstonburg', 224, '35.59470', '-77.69920')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ080': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Aurora', 583, '35.30350', '-76.78840'), ('Belhaven', 1968, '35.54370', '-76.62470'), ('Chocowinity', 733, '35.51390', '-77.09970'), ('Pantego', 170, '35.58740', '-76.65850'), ('River Road', 4094, '35.50660', '-76.99100'), ('Washington', 9583, '35.55630', '-77.05050'), ('Washington Park', 440, '35.53250', '-77.03120')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ081': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ082': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Fairview', 2495, '35.13830', '-80.53780'), ('Indian Trail', 11905, '35.07240', '-80.67920'), ('Marshville', 2360, '34.98710', '-80.36820'), ('Monroe', 26228, '34.98710', '-80.54180'), ('New Salem', 1198, '35.13080', '-80.36940'), ('Stallings', 3189, '35.08470', '-80.68950'), ('Sturdivants', 2360, '34.90580', '-80.32830'), ('Trinity', 26228, '34.84970', '-80.53110'), ('Waxhaw', 2625, '34.92430', '-80.74210'), ('Weddington', 6696, '35.03160', '-80.73810'), ('Wingate', 2406, '34.98330', '-80.44850')], 'partOfState': 'piedmont', 'wfo': 'GSP'}, +'NCZ083': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ansonville', 636, '35.10450', '-80.10990'), ('Lilesville', 459, '34.96780', '-79.98520'), ('McFarlan', 89, '34.81330', '-79.97620'), ('Morven', 579, '34.86330', '-80.00040'), ('Peachland', 554, '34.99370', '-80.26580'), ('Polkton', 1195, '35.00820', '-80.20190'), ('Wadesboro', 3552, '34.96660', '-80.06850'), ('White Store', 554, '34.90000', '-80.26000')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ084': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Covington', 1021, '35.15000', '-79.87000'), ('Derby', 72, '35.15000', '-79.65000'), ('Diggs', 89, '34.85000', '-79.87000'), ('Dobbins Heights', 936, '34.90660', '-79.69350'), ('East Rockingham', 3885, '34.91130', '-79.76550'), ('Ellerbe', 1021, '35.07070', '-79.76080'), ('Hamlet', 6018, '34.88960', '-79.70930'), ('Hoffman', 624, '35.03250', '-79.54970'), ('Norman', 72, '35.16390', '-79.72250'), ('Rockingham', 9672, '34.93930', '-79.76230')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ085': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Camp Mackall', 624, '35.02000', '-79.47000'), ('East Laurinburg', 295, '34.77020', '-79.44530'), ('Gibson', 584, '34.75870', '-79.60680'), ('Laurel Hill', 15874, '34.80000', '-79.54000'), ('Laurinburg', 15874, '34.76610', '-79.47010'), ('Wagram', 801, '34.88990', '-79.36570')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ086': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Antioch', 3493, '34.88000', '-79.20000'), ('Ashley Heights', 3400, '35.10000', '-79.38000'), ('Bowmore', 145, '34.94000', '-79.31000'), ('Raeford', 3386, '34.97900', '-79.22460'), ('Rockfish', 2353, '34.98000', '-79.07000'), ('Silver City', 1146, '34.99600', '-79.22780')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ087': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Barker Ten Mile', 976, '34.67980', '-78.98880'), ('Fairmont', 2604, '34.49510', '-79.11540'), ('Lumber Bridge', 118, '34.88940', '-79.07300'), ('Lumberton', 20795, '34.63230', '-79.01490'), ('Marietta', 164, '34.36890', '-79.12740'), ('Maxton', 2551, '34.73720', '-79.35170'), ('McDonald', 119, '34.55310', '-79.17630'), ('Orrum', 79, '34.46580', '-79.01010'), ('Parkton', 428, '34.90220', '-79.01000'), ('Pembroke', 2399, '34.68080', '-79.19870'), ('Proctorville', 133, '34.47540', '-79.03790'), ('Raynham', 67, '34.57490', '-79.19050'), ('Red Springs', 3493, '34.81420', '-79.18450'), ('Rennert', 283, '34.81470', '-79.07940'), ('Rowland', 1146, '34.53660', '-79.29270'), ('Smiths', 0, '34.65000', '-78.87000'), ('St. Pauls', 2137, '34.80720', '-78.97300'), ('Tolarsville', 0, '34.77000', '-78.87000')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ088': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bonnie Doone', 3893, '35.09890', '-78.95980'), ('Cedar Creek', 664, '34.95000', '-78.75000'), ('Eastover', 1376, '35.10070', '-78.78250'), ('Falcon', 328, '35.19440', '-78.64860'), ('Fayetteville', 121015, '35.07160', '-78.89920'), ('Fort Bragg', 34744, '35.13850', '-79.00100'), ('Godwin', 112, '35.21740', '-78.68200'), ('Hope Mills', 11237, '34.97330', '-78.95340'), ('Linden', 127, '35.25440', '-78.74850'), ('Pope AFB', 2857, '35.16870', '-79.01060'), ('Spring Lake', 8098, '35.17760', '-78.98240'), ('Stedman', 664, '35.01050', '-78.69830'), ('Vander', 1204, '35.03680', '-78.78700'), ('Wade', 480, '35.16430', '-78.73530')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ089': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Autryville', 196, '34.99650', '-78.64060'), ('Clinton', 8600, '35.00020', '-78.33180'), ('Garland', 808, '34.78600', '-78.39500'), ('Harrells', 187, '34.72960', '-78.20100'), ('Hobbton', 606, '35.18000', '-78.32000'), ('Ivanhoe', 311, '34.60000', '-78.25000'), ('Newton Grove', 606, '35.25220', '-78.35590'), ('Roseboro', 1267, '34.95390', '-78.51210'), ('Salemburg', 469, '35.01420', '-78.50310'), ("Spivey's Corner", 1820, '35.25000', '-78.53000'), ('Turkey', 262, '34.99320', '-78.18540')], 'partOfState': 'central', 'wfo': 'RAH'}, +'NCZ090': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Beulaville', 1067, '34.92230', '-77.77250'), ('Calypso', 410, '35.15460', '-78.10500'), ('Faison', 744, '35.11660', '-78.13660'), ('Greenevers', 560, '34.82700', '-77.92440'), ('Kenansville', 1149, '34.96200', '-77.96600'), ('Magnolia', 932, '34.89550', '-78.05520'), ('Rose Hill', 1330, '34.82500', '-78.02820'), ('Teachey', 245, '34.76740', '-78.00880'), ('Wallace', 3344, '34.73500', '-77.99790'), ('Warsaw', 3051, '34.99890', '-78.08800')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ091': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Kinston', 23688, '35.27540', '-77.59030'), ('La Grange', 2844, '35.30590', '-77.78840'), ('Pink Hill', 521, '35.05640', '-77.74480')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ092': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Maysville', 1002, '34.90370', '-77.23090'), ('Pollocksville', 269, '35.00700', '-77.22130'), ('Trenton', 206, '35.06300', '-77.35500')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ093': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bridgeton', 328, '35.12240', '-77.02170'), ('Cove City', 433, '35.18840', '-77.32190'), ('Dover', 443, '35.21610', '-77.43350'), ('Havelock', 22442, '34.90740', '-76.89490'), ('James City', 5420, '35.06550', '-77.01810'), ('Neuse Forest', 1426, '34.96360', '-76.94510'), ('New Bern', 23128, '35.11990', '-77.07880'), ('River Bend', 2923, '35.07310', '-77.15220'), ('Trent Woods', 4192, '35.07790', '-77.09630'), ('Vanceboro', 898, '35.30440', '-77.15760')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ094': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alliance', 781, '35.14450', '-76.80790'), ('Arapahoe', 436, '35.01910', '-76.82730'), ('Bayboro', 741, '35.14390', '-76.76870'), ('Mesic', 257, '35.20450', '-76.64830'), ('Minnesott Beach', 311, '34.98030', '-76.81870'), ('Oriental', 875, '35.03470', '-76.68460'), ('Stonewall', 285, '35.13750', '-76.74150'), ('Vandemere', 289, '35.18910', '-76.66490')], 'partOfState': '', 'wfo': 'MHX'}, +'NCZ095': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Atlantic Beach', 1781, '34.70020', '-76.73950'), ('Beaufort', 3771, '34.72150', '-76.65250'), ('Cape Carteret', 1214, '34.69430', '-77.05950'), ('Cedar Point', 929, '34.68140', '-77.08150'), ('Emerald Isle', 3488, '34.66640', '-77.02920'), ('Indian Beach', 95, '34.68590', '-76.89440'), ('Morehead City', 7691, '34.72470', '-76.73200'), ('Newport', 3349, '34.78790', '-76.86100'), ('Pine Knoll Shores', 1524, '34.69570', '-76.81820')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ096': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bladenboro', 1718, '34.53980', '-78.79530'), ('Clarkton', 705, '34.48910', '-78.65470'), ('Dublin', 250, '34.65590', '-78.72340'), ('East Arcadia', 524, '34.38140', '-78.32190'), ('Elizabethtown', 3698, '34.62450', '-78.61030'), ('Jerome', 0, '34.83000', '-78.73000'), ('Kelly', 454, '34.47000', '-78.32000'), ('Tar Heel', 70, '34.73150', '-78.79240'), ('White Lake', 529, '34.63880', '-78.50030')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ098': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Camp Lejeune Center', 36716, '34.69580', '-77.36650'), ('Half Moon', 6645, '34.82700', '-77.46650'), ('Holly Ridge', 831, '34.49260', '-77.55580'), ('Jacksonville', 66715, '34.76440', '-77.40410'), ('New River Station', 9732, '34.70970', '-77.44250'), ('Piney Green', 11658, '34.75440', '-77.32160'), ('Pumpkin Center', 2228, '34.78040', '-77.36660'), ('Richlands', 928, '34.89980', '-77.54780'), ('Sneads Ferry', 2248, '34.55370', '-77.37870'), ('Swansboro', 1426, '34.69050', '-77.12890')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ099': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bolton', 494, '34.31860', '-78.40280'), ('Brunswick', 360, '34.29270', '-78.70720'), ('Cerro Gordo', 244, '34.32200', '-78.92840'), ('Chadbourn', 2129, '34.32190', '-78.82720'), ('Cherry Grove', 0, '34.23000', '-78.97000'), ('Clarendon', 0, '34.22000', '-78.85000'), ('Delco', 0, '34.32000', '-78.22000'), ('Evergreen', 0, '34.42000', '-78.90000'), ('Fair Bluff', 1181, '34.31170', '-79.03460'), ('Lake Waccamaw', 1411, '34.31960', '-78.51340'), ('Nakina', 0, '34.13000', '-78.67000'), ('Pireway', 0, '34.03000', '-78.63000'), ('Riegelwood', 0, '34.33000', '-78.23000'), ('Tabor City', 2509, '34.14940', '-78.87420'), ('Whiteville', 5148, '34.32990', '-78.70480')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ102': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Corolla', 2201, '36.37860', '-75.83120')], 'partOfState': 'northeast', 'wfo': 'AKQ'}, +'NCZ103': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Kill Devil Hills', 5897, '36.01600', '-75.66750'), ('Kitty Hawk', 2991, '36.07020', '-75.71950'), ('Manteo', 1052, '35.89900', '-75.66640'), ('Nags Head', 2700, '35.94460', '-75.62650'), ('Southern Shores', 2201, '36.11870', '-75.73320'), ('Wanchese', 1527, '35.83750', '-75.64020')], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ104': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [], 'partOfState': 'eastern', 'wfo': 'MHX'}, +'NCZ105': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Atkinson', 236, '34.52750', '-78.17030'), ('Burgaw', 3337, '34.55030', '-77.92640'), ('Currie', 0, '34.47000', '-78.10000'), ('Hampstead', 0, '34.37000', '-77.70000'), ('Maple Hill', 0, '34.67000', '-77.72000'), ('Penderlea', 0, '34.67000', '-78.05000'), ('Rocky Point', 0, '34.43000', '-77.88000'), ('St. Helena', 395, '34.51380', '-77.91540'), ('Watha', 151, '34.64230', '-77.96290'), ('Willard', 0, '34.68000', '-77.98000')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ106': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Surf City', 1393, '34.42390', '-77.55840')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ106': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Surf City', 1393, '34.42390', '-77.55840')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ107': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bayshore', 2512, '34.28950', '-77.78770'), ('Castle Hayne', 1116, '34.35500', '-77.90320'), ('Silver Lake', 5788, '34.14860', '-77.91800'), ('Smith Creek', 7461, '34.26270', '-77.86380'), ('Wilmington', 75838, '34.21240', '-77.91130'), ('Windemere', 4604, '34.24370', '-77.84500'), ('Wrightsboro', 4496, '34.28250', '-77.92420')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ107': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bayshore', 2512, '34.28950', '-77.78770'), ('Castle Hayne', 1116, '34.35500', '-77.90320'), ('Silver Lake', 5788, '34.14860', '-77.91800'), ('Smith Creek', 7461, '34.26270', '-77.86380'), ('Wilmington', 75838, '34.21240', '-77.91130'), ('Windemere', 4604, '34.24370', '-77.84500'), ('Wrightsboro', 4496, '34.28250', '-77.92420')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ108': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Carolina Beach', 4701, '34.04020', '-77.89520'), ('Kure Beach', 1507, '33.99600', '-77.91070'), ('Masonboro', 11812, '34.16910', '-77.86620'), ('Myrtle Grove', 7125, '34.12440', '-77.88370'), ('Ogden', 5481, '34.26500', '-77.79950'), ('Seagate', 4590, '34.20350', '-77.84290'), ('Wrightsville Beach', 2593, '34.20830', '-77.79670')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ108': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Carolina Beach', 4701, '34.04020', '-77.89520'), ('Kure Beach', 1507, '33.99600', '-77.91070'), ('Masonboro', 11812, '34.16910', '-77.86620'), ('Myrtle Grove', 7125, '34.12440', '-77.88370'), ('Ogden', 5481, '34.26500', '-77.79950'), ('Seagate', 4590, '34.20350', '-77.84290'), ('Wrightsville Beach', 2593, '34.20830', '-77.79670')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ109': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ash', 0, '34.07000', '-78.52000'), ('Belville', 285, '34.23000', '-77.98650'), ('Boiling Spring Lakes', 2972, '34.03190', '-78.06700'), ('Bolivia', 148, '34.07070', '-78.14680'), ('Freeland', 0, '34.10000', '-78.53000'), ('Leland', 1938, '34.24060', '-78.00570'), ('Longwood', 0, '34.00000', '-78.55000'), ('Navassa', 479, '34.25720', '-78.00270'), ('Sandy Creek', 246, '34.28500', '-78.15700'), ('Shallotte', 1381, '33.97590', '-78.38590'), ('Supply', 0, '34.02000', '-78.27000'), ('Winnabow', 0, '34.15000', '-78.10000')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ109': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ash', 0, '34.07000', '-78.52000'), ('Belville', 285, '34.23000', '-77.98650'), ('Boiling Spring Lakes', 2972, '34.03190', '-78.06700'), ('Bolivia', 148, '34.07070', '-78.14680'), ('Freeland', 0, '34.10000', '-78.53000'), ('Leland', 1938, '34.24060', '-78.00570'), ('Longwood', 0, '34.00000', '-78.55000'), ('Navassa', 479, '34.25720', '-78.00270'), ('Sandy Creek', 246, '34.28500', '-78.15700'), ('Shallotte', 1381, '33.97590', '-78.38590'), ('Supply', 0, '34.02000', '-78.27000'), ('Winnabow', 0, '34.15000', '-78.10000')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ110': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bald Head Island', 173, '33.86310', '-77.98830'), ('Calabash', 711, '33.89850', '-78.57700'), ('Caswell Beach', 370, '33.90480', '-78.04850'), ('Holden Beach', 787, '33.90910', '-78.31290'), ('Long Beach', 5618, '33.91830', '-78.14940'), ('Oak Island', 6571, '33.92000', '-78.17000'), ('Ocean Isle Beach', 426, '33.89250', '-78.43220'), ('Southport', 2351, '33.92410', '-78.02200'), ('Sunset Beach', 1824, '33.87470', '-78.51000'), ('Varnamtown', 481, '33.94190', '-78.23970'), ('Yaupon Beach', 922, '33.90750', '-78.07640')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ110': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Bald Head Island', 173, '33.86310', '-77.98830'), ('Calabash', 711, '33.89850', '-78.57700'), ('Caswell Beach', 370, '33.90480', '-78.04850'), ('Holden Beach', 787, '33.90910', '-78.31290'), ('Long Beach', 5618, '33.91830', '-78.14940'), ('Oak Island', 6571, '33.92000', '-78.17000'), ('Ocean Isle Beach', 426, '33.89250', '-78.43220'), ('Southport', 2351, '33.92410', '-78.02200'), ('Sunset Beach', 1824, '33.87470', '-78.51000'), ('Varnamtown', 481, '33.94190', '-78.23970'), ('Yaupon Beach', 922, '33.90750', '-78.07640')], 'partOfState': 'southeast', 'wfo': 'ILM'}, +'NCZ501': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Edgemont', 73, '36.00130', '-81.76500'), ('Globe', 1418, '36.03770', '-81.70500'), ('Patterson', 16793, '35.98950', '-81.55850'), ('Upton', 1418, '36.06200', '-81.68730')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ502': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [("Cajah's Mountain", 2683, '35.84990', '-81.53890'), ('Collettsville', 3644, '35.92530', '-81.66480'), ('Gamewell', 3644, '35.86710', '-81.60080'), ('Granite Falls', 4612, '35.80170', '-81.42700'), ('Hudson', 3078, '35.84840', '-81.48590'), ('Kings Creek', 16793, '35.98540', '-81.40120'), ('Lenoir', 16793, '35.90610', '-81.53460'), ('Sawmills', 4921, '35.81870', '-81.48170')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ503': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Jonas Ridge', 242, '35.97250', '-81.89500')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ504': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Connelly Springs', 1814, '35.74870', '-81.50000'), ('Drexel', 1938, '35.75730', '-81.60820'), ('Glen Alpine', 1090, '35.72930', '-81.77860'), ('Hildebran', 1472, '35.71520', '-81.42150'), ('Icard', 2734, '35.72570', '-81.45860'), ('Morganton', 17310, '35.74160', '-81.69840'), ('Pleasant Grove', 4485, '35.63360', '-81.58390'), ('Rhodhiss', 366, '35.77050', '-81.43100'), ('Table Rock', 1090, '35.83810', '-81.80470'), ('Valdese', 4485, '35.74650', '-81.55770')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ505': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Ashford', 2030, '35.87280', '-81.93880'), ('Little Switzerland', 0, '35.84650', '-82.09000'), ('Old Fort', 963, '35.63210', '-82.17580'), ('Sugar Hill', 1556, '35.58440', '-82.04250'), ('Woodlawn', 1051, '35.78530', '-82.04060')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ506': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Dysartsville', 1556, '35.60020', '-81.87150'), ('Fero', 1556, '35.58200', '-81.97670'), ('Glenwood', 1556, '35.60870', '-81.97930'), ('Marion', 4943, '35.68250', '-82.00860'), ('Nebo', 4943, '35.71500', '-81.93110')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ507': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Lake Lure', 1027, '35.44060', '-82.20660')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ508': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Alexander Mills', 661, '35.30980', '-81.85700'), ('Cliffside', 479, '35.23810', '-81.77000'), ('Ellenboro', 479, '35.32960', '-81.75910'), ('Forest City', 7549, '35.33600', '-81.86910'), ('Harris', 661, '35.24280', '-81.87470'), ('Rutherfordton', 4131, '35.36480', '-81.96090'), ('Shingle Hollow', 0, '35.47096', '-82.07372'), ('Spindale', 4022, '35.36030', '-81.92470'), ('Sunshine', 371, '35.44890', '-81.81060'), ('Thermal City', 366, '35.51920', '-81.97500')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ509': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Saluda', 575, '35.23790', '-82.34810')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NCZ510': {'fullStateName': 'North Carolina', 'state': 'NC', 'cities': [('Columbus', 992, '35.24680', '-82.20490'), ('Lake Adger', 992, '35.33500', '-82.18670'), ('Mill Spring', 992, '35.29750', '-82.16140'), ('Tryon', 1760, '35.20890', '-82.23870')], 'partOfState': 'western', 'wfo': 'GSP'}, +'NDZ001': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alkabo', 0, '48.86430', '-103.88760'), ('Ambrose', 0, '48.95390', '-103.48280'), ('Crosby', 0, '48.91420', '-103.29470'), ('Fortuna', 0, '48.91000', '-103.77890'), ('Noonan', 0, '48.88890', '-103.00890'), ('Writing Rock State Historical Site', 0, '48.78030', '-103.85870')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDZ002': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Battleview', 0, '48.57890', '-102.79230'), ('Bowbells', 0, '48.80300', '-102.24680'), ('Columbus', 0, '48.90420', '-102.78000'), ('Coteau', 0, '48.75830', '-102.32000'), ('Flaxton', 0, '48.89860', '-102.39270'), ('Larson', 0, '48.88970', '-102.85860'), ('Lignite', 0, '48.87750', '-102.56270'), ('Northgate', 0, '48.99080', '-102.26270'), ('Portal', 0, '48.99580', '-102.54990'), ('Powers Lake', 0, '48.56280', '-102.64750')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDZ003': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Glenburn', 0, '48.51300', '-101.22050'), ('Grano', 0, '48.61500', '-101.58650'), ('Greene', 0, '48.65940', '-101.70480'), ('Loraine', 0, '48.86550', '-101.56730'), ('Mohall', 0, '48.76330', '-101.51360'), ('Norma', 0, '48.72890', '-101.97370'), ('Sherwood', 0, '48.96000', '-101.63210'), ('Tolley', 0, '48.72890', '-101.82750')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDZ004': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Antler', 0, '48.97080', '-101.28200'), ('Bottineau', 0, '48.82720', '-100.44530'), ('Carbury', 0, '48.89080', '-100.54430'), ('Eckman', 0, '48.65800', '-101.05700'), ('Gardena', 0, '48.70080', '-100.49710'), ('Kramer', 0, '48.69050', '-100.70610'), ('Lake Metigoshe State Park', 0, '48.98670', '-100.32400'), ('Landa', 0, '48.89660', '-100.91100'), ('Lansford', 0, '48.62890', '-101.37540'), ('Maxbass', 0, '48.72160', '-101.14170'), ('Newburg', 0, '48.71500', '-100.91230'), ('Omemee', 0, '48.70610', '-100.35690'), ('Overly', 0, '48.68190', '-100.15070'), ('Roth', 0, '48.90780', '-100.80200'), ('Russell', 0, '48.67140', '-100.90100'), ('Souris', 0, '48.90970', '-100.68150'), ('Westhope', 0, '48.90940', '-101.02060'), ('Willow City', 0, '48.60440', '-100.29470')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDZ005': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Agate', 0, '48.62250', '-99.49510'), ('Belcourt', 0, '48.83910', '-99.74480'), ('Dunseith', 0, '48.81300', '-100.06030'), ('International Peace Garden', 0, '48.99190', '-100.06260'), ('Mylo', 0, '48.63520', '-99.61870'), ('Nanson', 0, '48.57380', '-99.77980'), ('Rolette', 0, '48.66080', '-99.84150'), ('Rolla', 0, '48.85770', '-99.61790'), ('Shell Valley', 0, '48.79790', '-99.86430'), ('St. John', 0, '48.94450', '-99.71100'), ('Thorne', 0, '48.73910', '-99.93150')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDZ006': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Amourdale', 8, '48.87140', '-99.37250'), ('Arndt', 49, '48.63000', '-99.23500'), ('Bisbee', 167, '48.62660', '-99.37830'), ('Cando', 1342, '48.48760', '-99.20260'), ('Considine', 1342, '48.56190', '-99.28280'), ('Egeland', 49, '48.62800', '-99.09760'), ('Hansboro', 8, '48.95220', '-99.38080'), ('Maza', 5, '48.39490', '-99.19950'), ('Newville', 24, '48.55860', '-98.98690'), ('Perth', 13, '48.71460', '-99.45720'), ('Rocklake', 194, '48.79070', '-99.24500')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ007': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alsen', 68, '48.62950', '-98.70540'), ('Calio', 24, '48.62360', '-98.93790'), ('Calvin', 26, '48.85120', '-98.93700'), ('Clyde', 26, '48.77000', '-98.89860'), ('Dresden', 2101, '48.82750', '-98.48080'), ('Hannah', 20, '48.97310', '-98.69020'), ('Langdon', 2101, '48.76260', '-98.37290'), ('Loma', 21, '48.63790', '-98.52500'), ('Maida', 2101, '48.99860', '-98.36440'), ('Milton', 85, '48.62720', '-98.04370'), ('Mount Carmel', 2101, '48.93500', '-98.38640'), ('Munich', 268, '48.66910', '-98.83220'), ('Nekoma', 51, '48.57610', '-98.37610'), ('Olga', 174, '48.79830', '-98.03750'), ('Osnabrock', 174, '48.67020', '-98.14890'), ('Sarles', 25, '48.94520', '-98.99650'), ('Union', 252, '48.55780', '-97.94860'), ('Vang', 1057, '48.90580', '-98.12440'), ('Wales', 30, '48.89410', '-98.60140')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ008': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Akra', 1537, '48.77530', '-97.72670'), ('Backoo', 1537, '48.83660', '-97.71000'), ('Bathgate', 66, '48.88060', '-97.47290'), ('Bowesmont', 913, '48.69000', '-97.17770'), ('Cavalier', 1537, '48.79530', '-97.62430'), ('Concrete', 133, '48.74550', '-97.93330'), ('Crystal', 167, '48.59850', '-97.66840'), ('Drayton', 913, '48.56460', '-97.17960'), ('Gardar', 252, '48.58910', '-97.86360'), ('Glasston', 447, '48.70580', '-97.44720'), ('Hamilton', 73, '48.80810', '-97.45160'), ('Hensel', 64, '48.68830', '-97.66610'), ('Joliette', 642, '48.81810', '-97.22680'), ('Leroy', 1057, '48.92340', '-97.75220'), ('Mountain', 133, '48.68350', '-97.86340'), ('Neche', 437, '48.98200', '-97.55090'), ('Pembina', 642, '48.96800', '-97.24570'), ('St. Thomas', 447, '48.62020', '-97.44690'), ('Walhalla', 1057, '48.92120', '-97.91670')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ009': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alamo', 0, '48.58170', '-103.46900'), ('Appam', 0, '48.57020', '-103.58870'), ('Blacktail Lake', 0, '48.43340', '-103.73380'), ('Bonetrail', 0, '48.41640', '-103.83850'), ('Corinth', 0, '48.61250', '-103.32770'), ('Epping', 0, '48.27910', '-103.35770'), ('Fort Union Trading Post', 0, '47.99930', '-104.04060'), ('Grenora', 0, '48.61830', '-103.93710'), ('Hamlet', 0, '48.62860', '-103.05100'), ('Hanks', 0, '48.60330', '-103.80200'), ('Lewis And Clark State Park', 0, '48.12470', '-103.23320'), ('McGregor', 0, '48.59530', '-102.92830'), ('Ray', 0, '48.34440', '-103.16570'), ('Spring Brook', 0, '48.25250', '-103.45810'), ('Tioga', 0, '48.39720', '-102.93850'), ('Trenton', 0, '48.07050', '-103.83600'), ('Wheelock', 0, '48.29640', '-103.25250'), ('White Tail Bay Recreation Area', 0, '48.15860', '-103.13150'), ('Wildrose', 0, '48.63050', '-103.18410'), ('Williston', 0, '48.15400', '-103.62570'), ('Zahl', 0, '48.57330', '-103.69230')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDZ010': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Belden', 0, '48.15140', '-102.35700'), ('Blaisdell', 0, '48.33610', '-102.07670'), ('Coulee', 0, '48.54580', '-102.01070'), ('Lostwood', 0, '48.47690', '-102.42200'), ('New Town', 0, '47.98100', '-102.49000'), ('Palermo', 0, '48.33970', '-102.22950'), ('Parshall', 0, '47.95330', '-102.13470'), ('Parshall Bay Recreation Area', 0, '47.91990', '-102.29270'), ('Plaza', 0, '48.02580', '-101.96140'), ('Pouch Point Recreation Area', 0, '47.80030', '-102.40340'), ('Ross', 0, '48.31110', '-102.54680'), ('Stanley', 0, '48.31720', '-102.39050'), ('Tagus', 0, '48.34760', '-101.93220'), ('Van Hook Park', 0, '47.94830', '-102.35750'), ('White Earth', 0, '48.38050', '-102.77380'), ('White Earth Bay Recreation Area', 0, '48.12600', '-102.72690')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDZ011': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Berthold', 0, '48.31300', '-101.73730'), ('Burlington', 0, '48.27520', '-101.42870'), ('Carpio', 0, '48.44250', '-101.71440'), ('Des Lacs', 0, '48.25770', '-101.56320'), ('Donnybrook', 0, '48.50940', '-101.88560'), ('Douglas', 0, '47.85720', '-101.50280'), ('Foxholm', 0, '48.36940', '-101.57170'), ('Hartland', 0, '48.39940', '-101.82070'), ('Kenmare', 0, '48.67470', '-102.08280'), ('Logan', 0, '48.14810', '-101.15310'), ('Makoti', 0, '47.96110', '-101.80470'), ('Minot', 0, '48.23250', '-101.29610'), ('Minot Air Force Base', 0, '48.41560', '-101.35760'), ('Niobe', 0, '48.68930', '-102.21530'), ('Rice Lake', 0, '48.00740', '-101.53270'), ('Ryder', 0, '47.91750', '-101.67710'), ('Sawyer', 0, '48.08970', '-101.05300'), ('Surrey', 0, '48.23640', '-101.13360'), ('Wolseth', 0, '48.44640', '-101.12470')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDZ012': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Anamoose', 0, '47.88250', '-100.24150'), ('Balfour', 0, '47.95160', '-100.53470'), ('Bantry', 0, '48.49830', '-100.61020'), ('Bergen', 0, '48.00160', '-100.71430'), ('Berwick', 0, '48.36110', '-100.24600'), ('Deering', 0, '48.39550', '-101.05140'), ('Denbigh', 0, '48.31520', '-100.58730'), ('Drake', 0, '47.92410', '-100.37290'), ('George Lake', 0, '48.10090', '-100.38210'), ('Granville', 0, '48.26770', '-100.84290'), ('Karlsruhe', 0, '48.09080', '-100.62010'), ('Kief', 0, '47.85750', '-100.51160'), ('Norwich', 0, '48.24640', '-100.98930'), ('Simcoe', 0, '48.15610', '-100.86660'), ('Towner', 0, '48.34580', '-100.40520'), ('Upham', 0, '48.58160', '-100.72810'), ('Velva', 0, '48.05610', '-100.92920'), ('Voltaire', 0, '48.02050', '-100.84190')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDZ013': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Balta', 0, '48.16660', '-100.03720'), ('Barton', 0, '48.50690', '-100.17610'), ('Orrin', 0, '48.09130', '-100.16370'), ('Rugby', 0, '48.36880', '-99.99620'), ('Selz', 0, '47.85740', '-99.89160'), ('Silva', 0, '48.16890', '-99.91840'), ('Wolford', 0, '48.49860', '-99.70430')], 'partOfState': 'north central', 'wfo': 'BIS'}, +'NDZ014': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Baker', 26, '48.16060', '-99.64720'), ('Brinsmade', 29, '48.18330', '-99.32440'), ('Esmond', 159, '48.03290', '-99.76480'), ('Fillmore', 159, '48.18030', '-99.80030'), ('Flora', 498, '47.95030', '-99.41750'), ('Fort Totten', 952, '47.97610', '-98.99480'), ('Harlow', 464, '48.16360', '-99.51860'), ('Knox', 59, '48.34270', '-99.68930'), ('Leeds', 464, '48.28940', '-99.43850'), ('Maddock', 498, '47.96220', '-99.52910'), ('Minnewaukan', 318, '48.06980', '-99.25010'), ('Oberon', 81, '47.92390', '-99.20520'), ('Pleasant Lake', 59, '48.36140', '-99.80170'), ('St Michael', 952, '47.98500', '-98.87220'), ('Tokio', 75, '47.92470', '-98.81580'), ('York', 26, '48.31350', '-99.57340')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ015': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Brocket', 65, '48.21120', '-98.35620'), ('Camp Grafton', 7222, '48.05690', '-98.92060'), ('Churchs Ferry', 77, '48.26860', '-99.19420'), ('Crary', 149, '48.07150', '-98.64000'), ('Derrick', 60, '48.47690', '-98.55720'), ('Devils Lake', 7222, '48.11280', '-98.87410'), ('Doyon', 149, '48.05280', '-98.53640'), ('Edmore', 256, '48.41270', '-98.45320'), ('Garske', 157, '48.35780', '-98.87690'), ('Hampden', 60, '48.53950', '-98.65450'), ('Lawton', 42, '48.30290', '-98.36740'), ('Penn', 77, '48.22170', '-99.08860'), ('Southam', 149, '48.15830', '-98.55170'), ('Starkweather', 157, '48.45230', '-98.87770'), ('Webster', 7222, '48.28220', '-98.87580')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ016': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Ardoch', 61, '48.20590', '-97.34090'), ('Conway', 23, '48.23400', '-97.67440'), ('Edinburg', 252, '48.49560', '-97.86220'), ('Fordville', 266, '48.21670', '-97.79450'), ('Forest River', 154, '48.21710', '-97.47000'), ('Grafton', 4516, '48.41510', '-97.40310'), ('Herrick', 913, '48.51390', '-97.22810'), ('Hoople', 292, '48.53550', '-97.63750'), ('Minto', 657, '48.29220', '-97.37210'), ('Nash', 4516, '48.47060', '-97.51280'), ('Oakwood', 4516, '48.42690', '-97.29500'), ('Park River', 1535, '48.39340', '-97.74480'), ('Pisek', 96, '48.31110', '-97.71030'), ('Poland', 362, '48.19780', '-97.21810'), ('Veseleyville', 154, '48.32530', '-97.55690'), ('Voss', 154, '48.29640', '-97.45500'), ('Warsaw', 657, '48.29610', '-97.25440')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ017': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('4 Bears Lodge', 0, '47.98040', '-102.57440'), ('Alexander', 0, '47.84300', '-103.64260'), ('Arnegard', 0, '47.80780', '-103.44110'), ('Cartwright', 0, '47.85970', '-103.92630'), ('Charbonneau', 0, '47.85310', '-103.76280'), ('Charlson', 0, '48.06030', '-102.87170'), ('East Fairview', 0, '47.85570', '-104.03990'), ('Grassy Butte', 0, '47.39250', '-103.24700'), ('Johnsons Corner', 0, '47.80410', '-102.94160'), ('Keene', 0, '47.92690', '-102.94100'), ('Mandaree', 0, '47.72910', '-102.67670'), ('Rawson', 0, '47.81940', '-103.54070'), ('Sather Dam', 0, '47.67390', '-103.80920'), ('Skaar', 0, '47.37370', '-104.04170'), ('Tobacco Garden Bay Recreation Area', 0, '48.10700', '-103.11190'), ('Watford City', 0, '47.80220', '-103.28340')], 'partOfState': 'northwest', 'wfo': 'BIS'}, +'NDZ018': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Dodge', 0, '47.30610', '-102.20400'), ('Dunn Center', 0, '47.35360', '-102.62080'), ('Halliday', 0, '47.35440', '-102.33650'), ('Hirschville', 0, '47.06810', '-102.56330'), ('Killdeer', 0, '47.37190', '-102.75470'), ('Little Missouri State Park', 0, '47.55480', '-102.74720'), ('Manning', 0, '47.23000', '-102.77070'), ('Marshall', 0, '47.13800', '-102.33230'), ('McKenzie Bay Recreation Area', 0, '47.59920', '-102.36460'), ('New Hradec', 0, '46.99940', '-102.88430'), ('Oakdale', 0, '47.47380', '-102.86720'), ('Skunk Creek Bay Recreation Area', 0, '47.74320', '-102.42800'), ('Twin Buttes', 0, '47.51650', '-102.24620')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ019': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Beulah', 0, '47.26330', '-101.77740'), ('Beulah Bay Recreation Area', 0, '47.50190', '-101.76090'), ('Dakota Waters Recreation Area', 0, '47.48390', '-101.78580'), ('Golden Valley', 0, '47.29080', '-102.06470'), ('Hazen', 0, '47.29440', '-101.62280'), ('Hazen Bay Recreation Area', 0, '47.50680', '-101.62890'), ('Lake Sakakawea State Park', 0, '47.52840', '-101.45590'), ('Pick City', 0, '47.51130', '-101.45310'), ('Stanton', 0, '47.32110', '-101.38100'), ('Zap', 0, '47.28640', '-101.92290')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ020': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Center', 0, '47.11630', '-101.29990'), ('Cross Ranch State Park', 0, '47.21400', '-100.99970'), ('Fort Clark', 0, '47.24000', '-101.25170'), ('Hannover', 0, '47.11130', '-101.42630'), ('Hensler', 0, '47.26020', '-101.08430'), ('Price', 0, '47.08580', '-100.94100'), ('Sanger', 0, '47.17970', '-100.99500')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ021': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Benedict', 0, '47.83020', '-101.08270'), ('Butte', 0, '47.83800', '-100.66590'), ('Coleharbor', 0, '47.54410', '-101.22320'), ('Deep Water Creek Recreation Area', 0, '47.73320', '-102.20790'), ('Emmet', 0, '47.64630', '-101.65300'), ('Falkirk', 0, '47.36210', '-101.09560'), ('Fort Stevenson State Park', 0, '47.59670', '-101.42050'), ('Garrison', 0, '47.65220', '-101.41540'), ('Indian Hills Recreation Area', 0, '47.60290', '-102.09480'), ('Max', 0, '47.82110', '-101.29890'), ('Mercer', 0, '47.49050', '-100.71020'), ('Raub', 0, '47.74640', '-102.04300'), ('Riverdale', 0, '47.49750', '-101.37150'), ('Roseglen', 0, '47.75130', '-101.83630'), ('Ruso', 0, '47.83830', '-100.93350'), ('Strawberry Lake', 0, '47.76480', '-100.87240'), ('Turtle Lake', 0, '47.52150', '-100.89030'), ('Underwood', 0, '47.45630', '-101.13720'), ('Washburn', 0, '47.28910', '-101.02920'), ('White Shield', 0, '47.66130', '-101.84480'), ('Wilton', 0, '47.15860', '-100.78300')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ022': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Denhoff', 0, '47.47660', '-100.25970'), ('Goodrich', 0, '47.47490', '-100.12670'), ('Krueger Lake', 0, '47.76640', '-100.49930'), ('Martin', 0, '47.82660', '-100.11520'), ('McClusky', 0, '47.48580', '-100.44370'), ('Sheyenne Lake', 0, '47.69600', '-100.19920')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ023': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bowdon', 0, '47.46970', '-99.70780'), ('Bremen', 0, '47.74660', '-99.38670'), ('Cathay', 0, '47.55330', '-99.40900'), ('Chaseley', 0, '47.45020', '-99.82010'), ('Emrick', 0, '47.59470', '-99.51200'), ('Fessenden', 0, '47.64910', '-99.62920'), ('Hamberg', 0, '47.76300', '-99.51450'), ('Harvey', 0, '47.76970', '-99.93540'), ('Heaton', 0, '47.47830', '-99.54790'), ('Heimdal', 0, '47.79270', '-99.64510'), ('Hurdsfield', 0, '47.44830', '-99.92840'), ('Manfred', 0, '47.69450', '-99.74750'), ('Sykeston', 0, '47.46570', '-99.39950'), ('Wellsburg', 0, '47.83160', '-99.76150')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ024': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Brantford', 71, '47.59780', '-98.92250'), ('Hamar', 75, '47.84360', '-98.57310'), ('New Rockford', 1463, '47.68060', '-99.13580'), ('Sheyenne', 318, '47.82680', '-99.11660')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ025': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Barlow', 0, '47.56970', '-99.13780'), ('Bordulac', 0, '47.38770', '-98.96470'), ('Carrington', 0, '47.44970', '-99.12620'), ('Glenfield', 0, '47.45330', '-98.56730'), ('Grace City', 0, '47.55130', '-98.80530'), ('Juanita', 0, '47.50220', '-98.68390'), ('McHenry', 0, '47.57610', '-98.59140'), ('Melville', 0, '47.33470', '-99.03560')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDZ026': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Aneta', 284, '47.67890', '-97.98880'), ('Dahlen', 266, '48.15810', '-97.92920'), ('Kloten', 284, '47.71610', '-98.07500'), ('Lakota', 781, '48.04310', '-98.34710'), ('Mapes', 348, '48.03110', '-98.22690'), ('McVille', 470, '47.76510', '-98.17610'), ('Michigan', 348, '48.02500', '-98.11670'), ('Pekin', 80, '47.79100', '-98.32660'), ('Petersburg', 195, '48.01190', '-97.99970'), ('Stump Lake', 202, '47.91440', '-98.43420'), ('Tolna', 202, '47.82720', '-98.43970'), ('Whitman', 348, '48.15860', '-98.11940')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ027': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Arvilla', 4832, '47.91920', '-97.49440'), ('Emerado', 510, '47.92150', '-97.36390'), ('Gilby', 243, '48.08380', '-97.46820'), ('Grand Forks', 49321, '47.91690', '-97.07200'), ('Grand Forks AFB', 4832, '47.96220', '-97.38390'), ('Holmes', 707, '47.71580', '-97.29640'), ('Honeyford', 243, '48.03330', '-97.47030'), ('Inkster', 102, '48.15200', '-97.64430'), ('Johnstown', 243, '48.14420', '-97.46970'), ('Kempton', 1433, '47.81890', '-97.61390'), ('Larimore', 1433, '47.90840', '-97.62730'), ('Logan Center', 57, '47.80280', '-97.81810'), ('Manvel', 370, '48.07320', '-97.17570'), ('McCanna', 1433, '48.00580', '-97.70970'), ('Mekinock', 4832, '48.01280', '-97.36310'), ('Niagara', 57, '47.99740', '-97.87050'), ('Northwood', 959, '47.73580', '-97.56870'), ('Orr', 102, '48.09330', '-97.67500'), ('Thompson', 1006, '47.77500', '-97.10580')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NDZ028': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Binford', 201, '47.55980', '-98.34530'), ('Cooperstown', 1053, '47.44410', '-98.12410'), ('Hannaford', 181, '47.31390', '-98.18790'), ('Jessie', 201, '47.54220', '-98.23780'), ('Mose', 201, '47.57860', '-98.45440'), ('Red Willow Lake', 201, '47.64750', '-98.37280'), ('Revere', 181, '47.35560', '-98.32830'), ('Sutton', 134, '47.40190', '-98.43890'), ('Walum', 181, '47.26970', '-98.19420')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ029': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Blabon', 303, '47.40170', '-97.78860'), ('Colgate', 303, '47.24470', '-97.65610'), ('Finley', 515, '47.51140', '-97.83710'), ('Golden Lake', 959, '47.57970', '-97.63610'), ('Hope', 303, '47.32480', '-97.71960'), ('Luverne', 44, '47.25030', '-97.93450'), ('Sharon', 109, '47.59710', '-97.89860'), ('Sherbrooke', 515, '47.46080', '-97.71920')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ030': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Blanchard', 326, '47.34580', '-97.21920'), ('Buxton', 350, '47.60220', '-97.09920'), ('Caledonia', 225, '47.45750', '-96.88530'), ('Clifford', 51, '47.34830', '-97.40930'), ('Cummings', 350, '47.51470', '-97.07920'), ('Galesburg', 157, '47.27060', '-97.40850'), ('Hatton', 707, '47.63600', '-97.45760'), ('Hillsboro', 1563, '47.40280', '-97.06140'), ('Kelso', 1563, '47.32310', '-97.02920'), ('Mayville', 1953, '47.50010', '-97.32820'), ('Portland', 604, '47.49910', '-97.36890'), ('Reynolds', 350, '47.67110', '-97.10840'), ('Roseville', 602, '47.44030', '-97.38860')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ031': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Alpha', 0, '46.65850', '-103.81860'), ('Beach', 0, '46.91800', '-104.00470'), ('Golva', 0, '46.73410', '-103.98660'), ('Sentinel Butte', 0, '46.91830', '-103.83800'), ('Trotters', 0, '47.32300', '-103.91870')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ032': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Fairfield', 0, '47.18940', '-103.22270'), ('Fryburg', 0, '46.87050', '-103.30270'), ('Medora', 0, '46.91390', '-103.52440'), ('South Fairfield', 0, '47.12460', '-103.20080')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ033': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Belfield', 0, '46.88520', '-103.19940'), ('Dickinson', 0, '46.87910', '-102.78970'), ('Dickinson Regional Airport', 0, '46.80140', '-102.79340'), ('Gladstone', 0, '46.86080', '-102.56740'), ('Lefor', 0, '46.68160', '-102.55900'), ('Richardton', 0, '46.88390', '-102.31500'), ('Schefield', 0, '46.67460', '-102.85500'), ('South Heart', 0, '46.86470', '-102.99180'), ('Taylor', 0, '46.90050', '-102.42540')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ034': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Almont', 0, '46.72520', '-101.50280'), ('Breien', 0, '46.38050', '-100.94030'), ('Crown Butte Lake', 0, '46.86580', '-101.09240'), ('Flasher', 0, '46.45610', '-101.23200'), ('Fort Rice', 0, '46.52610', '-100.58430'), ('Glen Ullin', 0, '46.81540', '-101.82910'), ('Hebron', 0, '46.90050', '-102.04510'), ('Huff', 0, '46.62380', '-100.65100'), ('Judson', 0, '46.82500', '-101.28000'), ('Mandan', 0, '46.82660', '-100.88980'), ('New Salem', 0, '46.84580', '-101.41140'), ('St. Anthony', 0, '46.61750', '-100.91060'), ('Sweet Briar Lake', 0, '46.86460', '-101.25730')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ035': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Arena', 0, '47.12720', '-100.16270'), ('Baldwin', 0, '47.02670', '-100.74920'), ('Bismarck', 0, '46.80830', '-100.78330'), ('Double Ditch Indian Villiage', 0, '46.93410', '-100.89680'), ('Driscoll', 0, '46.84410', '-100.14130'), ('Lincoln', 0, '46.76240', '-100.70090'), ('McKenzie', 0, '46.82410', '-100.41300'), ('Menoken', 0, '46.82050', '-100.53170'), ('Moffit', 0, '46.67720', '-100.29130'), ('New Johns Lake', 0, '47.32010', '-100.65710'), ('Regan', 0, '47.15800', '-100.52850'), ('Sterling', 0, '46.81380', '-100.29130'), ('Wing', 0, '47.14080', '-100.27920')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ036': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Crystal Springs', 0, '46.87830', '-99.47560'), ('Dawson', 0, '46.86850', '-99.75140'), ('Horsehead Lake', 0, '47.06320', '-99.78450'), ('Lake Isabel', 0, '46.81840', '-99.74980'), ('Lake Williams', 0, '47.13470', '-99.61450'), ('Pettibone', 0, '47.11910', '-99.51950'), ('Robinson', 0, '47.14270', '-99.78120'), ('Steele', 0, '46.85470', '-99.91590'), ('Tappen', 0, '46.87490', '-99.63650'), ('Tuttle', 0, '47.14360', '-99.99450')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ037': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Buchanan', 0, '47.06240', '-98.82890'), ('Chase Lake', 0, '47.01260', '-99.44090'), ('Cleveland', 0, '46.89170', '-99.11750'), ('Courtenay', 0, '47.22220', '-98.56640'), ('Edmunds', 0, '47.24720', '-98.96810'), ('Eldridge', 0, '46.90240', '-98.85170'), ('Jamestown', 0, '46.91050', '-98.70840'), ('Kensal', 0, '47.30080', '-98.73340'), ('Medina', 0, '46.89380', '-99.29980'), ('Millarton', 0, '46.66690', '-98.75950'), ('Montpelier', 0, '46.70020', '-98.59010'), ('Pingree', 0, '47.16330', '-98.90700'), ('Spiritwood', 0, '46.93610', '-98.49560'), ('Spiritwood Lake', 0, '47.07630', '-98.57310'), ('Streeter', 0, '46.65520', '-99.35410'), ('Sydney', 0, '46.73080', '-98.76980'), ('Windsor', 0, '46.89630', '-99.04280'), ('Woodworth', 0, '47.14250', '-99.30310'), ('Ypsilanti', 0, '46.78420', '-98.56510')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDZ038': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bald Hill Dam', 61, '47.03470', '-98.07780'), ('Dazey', 91, '47.18820', '-98.20050'), ('Eckelson', 194, '46.93800', '-98.33280'), ('Fingal', 133, '46.76210', '-97.79240'), ('Hastings', 191, '46.68390', '-98.09420'), ('Kathryn', 63, '46.67980', '-97.96760'), ('Leal', 36, '47.10510', '-98.31400'), ('Litchville', 191, '46.65740', '-98.19130'), ('Little Yellowstone', 63, '46.63250', '-97.95060'), ('Lucca', 133, '46.70690', '-97.71940'), ('Nome', 70, '46.67560', '-97.81560'), ('Oriska', 128, '46.93140', '-97.78870'), ('Pillsbury', 24, '47.20680', '-97.79610'), ('Rogers', 61, '47.07310', '-98.20210'), ('Sanborn', 194, '46.94270', '-98.22330'), ('Sibley', 46, '47.21730', '-97.96530'), ('Urbana', 194, '46.93440', '-98.41140'), ('Valley City', 6826, '46.92310', '-98.00560'), ('Wimbledon', 237, '47.17070', '-98.45960')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ039': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Absaraka', 23, '46.97810', '-97.39420'), ('Alice', 56, '46.76050', '-97.55620'), ('Amenia', 89, '47.00820', '-97.22390'), ('Argusville', 147, '47.05060', '-96.94100'), ('Arthur', 402, '47.10350', '-97.21830'), ('Ayr', 23, '47.04070', '-97.49120'), ('Briarwood', 78, '46.78620', '-96.79380'), ('Buffalo', 209, '46.92140', '-97.55030'), ('Casselton', 1855, '46.90060', '-97.21190'), ('Chaffee', 255, '46.77440', '-97.35220'), ('Davenport', 261, '46.71380', '-97.06880'), ('Durbin', 1601, '46.80860', '-97.14920'), ('Embden', 56, '46.80220', '-97.43280'), ('Erie', 65, '47.11280', '-97.38750'), ('Fargo', 90599, '46.87660', '-96.81710'), ('Frontier', 273, '46.80040', '-96.83300'), ('Gardner', 80, '47.14340', '-96.96880'), ('Grandin', 181, '47.23610', '-97.00240'), ('Harwood', 607, '46.98030', '-96.87990'), ('Hickson', 100, '46.66940', '-96.81000'), ('Horace', 915, '46.75740', '-96.90420'), ('Hunter', 326, '47.19210', '-97.21630'), ('Kindred', 614, '46.65090', '-97.02110'), ('Leonard', 255, '46.65130', '-97.24550'), ('Mapleton', 606, '46.89080', '-97.05340'), ('North River', 65, '46.94930', '-96.80210'), ('Oxbow', 248, '46.84720', '-96.80420'), ('Page', 225, '47.15800', '-97.57060'), ('Prairie Rose', 68, '46.81730', '-96.83440'), ('Prosper', 606, '46.96310', '-97.01940'), ("Reile's Acres", 254, '46.92250', '-96.86240'), ('Tower City', 252, '46.92530', '-97.67610'), ('West Fargo', 14940, '46.87280', '-96.89700'), ('Wheatland', 60, '46.90750', '-97.34500'), ('Wild Rice', 78, '46.74640', '-96.80920')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ040': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Amidon', 0, '46.48220', '-103.32180'), ('Marmarth', 0, '46.29500', '-103.92090'), ('Pretty Butte', 0, '46.38200', '-103.96440'), ('Three V Crossing', 0, '46.55700', '-103.79190')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ041': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bentley', 0, '46.32910', '-102.06370'), ('Burt', 0, '46.36520', '-102.15500'), ('Havelock', 0, '46.47470', '-102.74380'), ('Mott', 0, '46.37250', '-102.32710'), ('New England', 0, '46.53910', '-102.86870'), ('Regent', 0, '46.42160', '-102.55560')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ042': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Carson', 0, '46.41770', '-101.56480'), ('Elgin', 0, '46.40390', '-101.84560'), ('Heart Butte Dam', 0, '46.59680', '-101.81030'), ('Heil', 0, '46.38990', '-101.70120'), ('Lark', 0, '46.45300', '-101.39600'), ('Leith', 0, '46.35830', '-101.63630'), ('New Leipzig', 0, '46.37350', '-101.94840'), ('Raleigh', 0, '46.35770', '-101.30600'), ('Shields', 0, '46.23360', '-101.12530'), ('St. Gertrude', 0, '46.28450', '-101.33050')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ043': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bowman', 0, '46.18300', '-103.39480'), ('Bowman Haley Dam', 0, '45.98510', '-103.24590'), ('Buffalo Springs', 0, '46.17490', '-103.23510'), ('Gascoyne', 0, '46.11830', '-103.07920'), ('Griffin', 0, '46.21560', '-103.54050'), ('Mud Buttes', 0, '46.02560', '-103.77040'), ('Rhame', 0, '46.23250', '-103.65520'), ('Scranton', 0, '46.14800', '-103.14240'), ('Sunset Butte', 0, '46.14940', '-103.80960')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ044': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Bucyrus', 0, '46.06390', '-102.78830'), ('Haynes', 0, '45.97410', '-102.47060'), ('Hettinger', 0, '46.00130', '-102.63640'), ('North Lemmon', 0, '45.94570', '-102.15960'), ('Reeder', 0, '46.10580', '-102.94520')], 'partOfState': 'southwest', 'wfo': 'BIS'}, +'NDZ045': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Cannon Ball', 0, '46.38940', '-100.59410'), ('Fort Yates', 0, '46.09220', '-100.62980'), ('Porcupine', 0, '46.22000', '-101.09680'), ('Prairie Knights Resort', 0, '46.27390', '-100.63700'), ('Selfridge', 0, '46.04130', '-100.92530'), ('Solen', 0, '46.38880', '-100.79840')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ046': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Braddock', 0, '46.56440', '-100.09010'), ('Hague', 0, '46.02860', '-99.99560'), ('Hazelton', 0, '46.48470', '-100.27940'), ('Hull', 0, '46.02920', '-100.12540'), ('Kintyre', 0, '46.54970', '-99.94950'), ('Linton', 0, '46.26660', '-100.23220'), ('Strasburg', 0, '46.13360', '-100.16140'), ('Temvik', 0, '46.36970', '-100.25840'), ('Westfield', 0, '46.02940', '-100.20200')], 'partOfState': 'south central', 'wfo': 'BIS'}, +'NDZ047': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Burnstad', 0, '46.38550', '-99.63260'), ('Fredonia', 0, '46.32600', '-99.09490'), ('Gackle', 0, '46.62580', '-99.14200'), ('Napoleon', 0, '46.50830', '-99.77120')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDZ048': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Adrian', 0, '46.59990', '-98.55340'), ('Alfred', 0, '46.60300', '-98.99920'), ('Berlin', 0, '46.37850', '-98.48980'), ('Dickey', 0, '46.53690', '-98.46780'), ('Edgeley', 0, '46.35910', '-98.71560'), ('Grand Rapids', 0, '46.44440', '-98.37060'), ('Jud', 0, '46.52600', '-98.89560'), ('Kulm', 0, '46.30100', '-98.95450'), ('La Moure', 0, '46.35720', '-98.29420'), ('Marion', 0, '46.60720', '-98.33230'), ('Nortonville', 0, '46.55830', '-98.73870'), ('Verona', 0, '46.36380', '-98.07230')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDZ049': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Anselm', 135, '46.52860', '-97.49530'), ('Elliott', 44, '46.40240', '-97.81390'), ('Enderlin', 947, '46.62300', '-97.59890'), ('Englevale', 44, '46.39280', '-97.91310'), ('Fort Ransom', 70, '46.52470', '-97.93040'), ('Lisbon', 2292, '46.43830', '-97.68320'), ('McLeod', 711, '46.39360', '-97.29920'), ('Sheldon', 135, '46.58700', '-97.49220'), ('Venlo', 135, '46.48640', '-97.44580')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ050': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Ashley', 0, '46.03450', '-99.37320'), ('Danzig', 0, '46.14150', '-99.47680'), ('Green Lake', 0, '46.20160', '-99.46730'), ('Lehr', 0, '46.27960', '-99.35230'), ('Venturia', 0, '45.99850', '-99.54620'), ('Wishek', 0, '46.25690', '-99.55700'), ('Zeeland', 0, '45.97000', '-99.83030')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDZ051': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Ellendale', 0, '46.00270', '-98.52700'), ('Forbes', 0, '45.94350', '-98.78200'), ('Fullerton', 0, '46.16520', '-98.42700'), ('Glover', 0, '46.24050', '-98.13970'), ('Guelph', 0, '46.02270', '-98.23590'), ('Ludden', 0, '46.00850', '-98.12530'), ('Merricourt', 0, '46.20940', '-98.76260'), ('Monango', 0, '46.17270', '-98.59450'), ('Oakes', 0, '46.13850', '-98.09030')], 'partOfState': 'southeast', 'wfo': 'BIS'}, +'NDZ052': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Brampton', 165, '45.99470', '-97.77580'), ('Cayuga', 61, '46.07580', '-97.38340'), ('Cogswell', 165, '46.10710', '-97.78400'), ('Crete', 1979, '46.20030', '-97.96250'), ('De Lamere', 711, '46.26720', '-97.33470'), ('Forman', 506, '46.10520', '-97.63690'), ('Geneseo', 61, '46.07390', '-97.27830'), ('Gwinner', 717, '46.22420', '-97.65850'), ('Hamlin', 61, '46.16610', '-97.28470'), ('Havana', 94, '45.95070', '-97.61770'), ('Milnor', 711, '46.26080', '-97.45660'), ('Rutland', 220, '46.05380', '-97.50790'), ('Stirum', 165, '46.21030', '-97.80610'), ('Straubville', 165, '46.04390', '-97.89970')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ053': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Abercrombie', 296, '46.44780', '-96.73000'), ('Barney', 69, '46.26650', '-96.99920'), ('Barrie', 614, '46.56890', '-97.12220'), ('Blackmer', 7, '45.97890', '-96.60030'), ('Christine', 153, '46.57530', '-96.80670'), ('Colfax', 91, '46.47020', '-96.87400'), ('Dwight', 75, '46.30290', '-96.73860'), ('Fairmount', 406, '46.05450', '-96.60270'), ('Galchutt', 296, '46.38750', '-96.80920'), ('Great Bend', 118, '46.15450', '-96.80110'), ('Hankinson', 1058, '46.07150', '-96.89380'), ('Lamars', 408, '45.96470', '-96.69000'), ('Lidgerwood', 738, '46.07490', '-97.14630'), ('Mantador', 71, '46.16590', '-96.97780'), ('Mooreton', 204, '46.26910', '-96.87630'), ('Sonora', 118, '46.06670', '-96.74110'), ('Stiles', 738, '46.07530', '-97.05220'), ('Wahpeton', 8586, '46.27100', '-96.61010'), ('Walcott', 189, '46.55040', '-96.93700'), ('Wyndmere', 533, '46.26420', '-97.13100')], 'partOfState': 'southeast', 'wfo': 'FGF'}, +'NDZ054': {'fullStateName': 'North Dakota', 'state': 'ND', 'cities': [('Adams', 203, '48.41970', '-98.07380'), ('Fairdale', 51, '48.48950', '-98.23150'), ('Lankin', 131, '48.31480', '-97.92080')], 'partOfState': 'northeast', 'wfo': 'FGF'}, +'NEZ002': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Box Butte Dam', 993, '42.45000', '-103.08000'), ('Chadron', 5634, '42.82710', '-103.00010'), ('Chadron St Park', 5634, '42.68000', '-103.00000'), ('Crawford', 1107, '42.68550', '-103.41420'), ('Fort Robinson', 1107, '42.66000', '-103.48000'), ('Marsland', 10, '42.44460', '-103.30090'), ('Whitney', 87, '42.78410', '-103.25680')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ003': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alliance', 8959, '42.10040', '-102.87390'), ('Berea', 993, '42.20000', '-102.99000'), ('Hemingford', 993, '42.32120', '-103.07570')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ004': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Antioch', 8959, '42.06800', '-102.62000'), ('Bingham', 287, '42.01700', '-102.06000'), ('Clinton', 30, '42.75940', '-102.34820'), ('Ellsworth', 287, '42.06000', '-102.28600'), ('Gordon', 1756, '42.80630', '-102.20360'), ('Hay Springs', 652, '42.68310', '-102.68900'), ('Lakeside', 8959, '42.06050', '-102.46000'), ('Rushville', 999, '42.71290', '-102.46580')], 'partOfState': 'panhandle', 'wfo': 'LBF'}, +'NEZ005': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brownlee', 211, '42.29050', '-100.62500'), ('Crookston', 98, '42.92530', '-100.75290'), ('Elsmere', 59, '42.16000', '-100.18000'), ('Merritt Reservoir', 98, '42.64600', '-100.87200'), ('Sparks', 2820, '42.93100', '-100.26800'), ('Valentine', 2820, '42.87370', '-100.54990'), ('Wood Lake', 72, '42.63910', '-100.23680')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ006': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burton', 11, '42.91140', '-99.59060'), ('Mills', 11, '42.94000', '-99.40000'), ('Springview', 244, '42.82530', '-99.74900')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ007': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Anoka', 10, '42.94690', '-98.82990'), ('Bristow', 88, '42.83990', '-98.58370'), ('Butte', 366, '42.91260', '-98.84790'), ('Gross', 5, '42.94680', '-98.56890'), ('Lynch', 269, '42.83090', '-98.46680'), ('Monowi', 2, '42.83010', '-98.32880'), ('Naper', 105, '42.96420', '-99.09710'), ('Spencer', 541, '42.87460', '-98.70160')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ008': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ainsworth', 1862, '42.54900', '-99.85720'), ('Johnstown', 53, '42.57250', '-100.05520'), ('Long Pine', 341, '42.53480', '-99.70240')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ009': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bassett', 743, '42.58260', '-99.53570'), ('Newport', 98, '42.60080', '-99.32760'), ('Rose', 341, '42.17000', '-99.52850')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ010': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Amelia', 333, '42.23000', '-98.96000'), ('Atkinson', 1244, '42.53170', '-98.97640'), ('Chambers', 333, '42.20510', '-98.74780'), ('Emmet', 77, '42.47640', '-98.80990'), ('Ewing', 433, '42.25850', '-98.34260'), ('Inman', 148, '42.38130', '-98.52890'), ('Oneill', 3733, '42.46070', '-98.64670'), ('Page', 157, '42.39900', '-98.41740'), ('Stuart', 625, '42.60000', '-99.14020')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ011': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bazile Mills', 26, '42.51380', '-97.91000'), ('Bloomfield', 1126, '42.59880', '-97.64880'), ('Center', 90, '42.60890', '-97.87590'), ('Creighton', 1270, '42.46510', '-97.90680'), ('Crofton', 754, '42.73180', '-97.49770'), ('Niobrara', 379, '42.75030', '-98.03030'), ('Santee', 302, '42.83850', '-97.84920'), ('Verdel', 58, '42.81150', '-98.19290'), ('Verdigre', 519, '42.59750', '-98.03520'), ('Wausa', 636, '42.49780', '-97.53820'), ('Winnetoon', 70, '42.51430', '-97.96140')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ012': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Belden', 131, '42.41170', '-97.20760'), ('Coleridge', 541, '42.50630', '-97.20230'), ('Fordyce', 182, '42.69810', '-97.36270'), ('Hartington', 1640, '42.62000', '-97.26500'), ('Laurel', 986, '42.42800', '-97.09400'), ('Magnet', 79, '42.45740', '-97.46920'), ('Obert', 49, '42.68900', '-97.02700'), ('Randolph', 955, '42.37730', '-97.35720'), ('St. Helena', 86, '42.80990', '-97.24890'), ('Wynot', 191, '42.73950', '-97.16960')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ013': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Allen', 411, '42.41460', '-96.84280'), ('Concord', 160, '42.38420', '-96.98870'), ('Dixon', 108, '42.41560', '-96.99450'), ('Martinsburg', 103, '42.50800', '-96.83160'), ('Maskell', 67, '42.69040', '-96.98150'), ('Newcastle', 299, '42.65200', '-96.87490'), ('Ponca', 1062, '42.56540', '-96.70910'), ('Ponca State Park', 0, '42.60553', '-96.71737'), ('Wakefield', 1411, '42.26760', '-96.86710'), ('Waterbury', 89, '42.45720', '-96.73520')], 'partOfState': 'northeast', 'wfo': 'FSD'}, +'NEZ014': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Dakota City', 1821, '42.41600', '-96.41740'), ('Emerson', 817, '42.27820', '-96.72560'), ('Homer', 590, '42.32200', '-96.49110'), ('Hubbard', 234, '42.38550', '-96.59040'), ('Jackson', 205, '42.44880', '-96.56590'), ('South Sioux City', 11925, '42.46600', '-96.41210')], 'partOfState': 'northeast', 'wfo': 'FSD'}, +'NEZ015': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Macy', 956, '42.11260', '-96.36300'), ('Pender', 1148, '42.11000', '-96.71060'), ('Rosalie', 194, '42.05690', '-96.51270'), ('Thurston', 125, '42.17650', '-96.69990'), ('Walthill', 909, '42.14870', '-96.49280'), ('Winnebago', 768, '42.23720', '-96.47290')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ016': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brunswick', 179, '42.33820', '-97.97120'), ('Clearwater', 384, '42.17060', '-98.18860'), ('Elgin', 735, '41.98370', '-98.08320'), ('Neligh', 1651, '42.13000', '-98.02880'), ('Oakdale', 345, '42.07000', '-97.96610'), ('Orchard', 391, '42.33600', '-98.24120'), ('Royal', 75, '42.33270', '-98.12500')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ017': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Foster', 63, '42.27370', '-97.66500'), ('Hadar', 312, '42.10580', '-97.45150'), ('McLean', 38, '42.38620', '-97.46770'), ('Osmond', 796, '42.35820', '-97.59890'), ('Pierce', 1774, '42.19950', '-97.52770'), ('Plainview', 1353, '42.35390', '-97.78690')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ018': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Carroll', 238, '42.27630', '-97.19110'), ('Hoskins', 283, '42.11370', '-97.30460'), ('Sholes', 24, '42.33500', '-97.29400'), ('Wayne', 5583, '42.23710', '-97.01670'), ('Winside', 468, '42.17800', '-97.17410')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ019': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Gering', 7751, '41.82850', '-103.66520'), ('Henry', 162, '41.99830', '-104.04630'), ('Lyman', 421, '41.91810', '-104.03650'), ('McGrew', 103, '41.74720', '-103.41720'), ('Melbeta', 138, '41.78200', '-103.51680'), ('Minatare', 810, '41.81100', '-103.50220'), ('Mitchell', 1831, '41.94210', '-103.80900'), ('Morrill', 957, '41.96410', '-103.92380'), ('Scottsbluff', 14732, '41.86720', '-103.66160'), ('Terrytown', 646, '41.85000', '-103.66850')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ020': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Harrisburg', 7751, '41.55000', '-103.74000')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ021': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Angora', 1594, '41.87000', '-103.10000'), ('Bayard', 1247, '41.75710', '-103.32300'), ('Bridgeport', 1594, '41.66670', '-103.09830'), ('Broadwater', 140, '41.59760', '-102.85150'), ('Redington', 1247, '41.59000', '-103.30000')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ022': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Crescent Lake Nwr', 887, '41.73500', '-102.41000'), ('Lewellen', 282, '41.33070', '-102.14310'), ('Lisco', 140, '41.50000', '-102.62000'), ('Oshkosh', 887, '41.40860', '-102.34440')], 'partOfState': 'panhandle', 'wfo': 'LBF'}, +'NEZ023': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ashby', 287, '42.02650', '-101.93500'), ('Hyannis', 287, '42.00040', '-101.76060'), ('Whitman', 287, '42.04400', '-101.53700')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEZ024': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Mullen', 491, '42.04200', '-101.04330')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEZ025': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Halsey', 59, '41.90280', '-100.26910'), ('Seneca', 51, '42.04270', '-100.83130'), ('Thedford', 211, '41.97880', '-100.57450')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ026': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brewster', 29, '41.93840', '-99.86510'), ('Dunning', 109, '41.82770', '-100.10370'), ('Purdum', 59, '42.07000', '-100.26000')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ027': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Almeria', 207, '41.83430', '-99.54000'), ('Taylor', 207, '41.76970', '-99.38130')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ028': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burwell', 1130, '41.78000', '-99.13390')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ029': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bartlett', 128, '41.88410', '-98.55140'), ('Ericson', 104, '41.78050', '-98.67760')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ030': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Albion', 1797, '41.68930', '-98.00280'), ('Cedar Rapids', 407, '41.55880', '-98.14930'), ('Petersburg', 374, '41.85470', '-98.07990'), ('Primrose', 69, '41.62360', '-98.23720'), ('St. Edward', 796, '41.57130', '-97.86090')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ031': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Battle Creek', 1158, '41.99900', '-97.59870'), ('Madison', 2367, '41.82840', '-97.45660'), ('Meadow Grove', 311, '42.02920', '-97.73620'), ('Newman Grove', 797, '41.74740', '-97.77710'), ('Norfolk', 23516, '42.03430', '-97.41840'), ('Tilden', 1078, '42.04400', '-97.83200')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ032': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Pilger', 378, '42.00770', '-97.05400'), ('Stanton', 1627, '41.94890', '-97.22400')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ033': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bancroft', 520, '42.01040', '-96.57300'), ('Beemer', 773, '41.93040', '-96.80950'), ('West Point', 3660, '41.83770', '-96.70730'), ('Wisner', 1270, '41.98670', '-96.91350')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ034': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Craig', 241, '41.78490', '-96.36160'), ('Decatur', 618, '42.00810', '-96.25070'), ('Lyons', 963, '41.93610', '-96.47190'), ('Oakland', 1367, '41.83510', '-96.46580'), ('Tekamah', 1892, '41.77740', '-96.22270')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEZ035': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arthur', 145, '41.57230', '-101.69190')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEZ036': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ringgold', 301, '41.51100', '-100.77050'), ('Tryon', 572, '41.55800', '-100.94500')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEZ037': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Gandy', 30, '41.47010', '-100.45740'), ('Stapleton', 301, '41.47990', '-100.51220')], 'partOfState': 'west central', 'wfo': 'LBF'}, +'NEZ038': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Anselmo', 159, '41.61850', '-99.86440'), ('Ansley', 520, '41.28760', '-99.38220'), ('Arnold', 630, '41.42390', '-100.19380'), ('Berwyn', 134, '41.35130', '-99.50020'), ('Broken Bow', 3491, '41.40540', '-99.63910'), ('Callaway', 637, '41.29130', '-99.92000'), ('Comstock', 110, '41.55790', '-99.24250'), ('Gates', 391, '41.65500', '-99.64500'), ('Mason City', 178, '41.22250', '-99.29800'), ('Merna', 391, '41.48460', '-99.76060'), ('Milburn', 159, '41.73450', '-99.75000'), ('Oconto', 141, '41.14160', '-99.76110'), ('Sargent', 649, '41.64090', '-99.37000'), ('Weissert', 134, '41.46700', '-99.45000'), ('Westerville', 520, '41.39890', '-99.39000')], 'partOfState': 'central', 'wfo': 'LBF'}, +'NEZ039': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arcadia', 359, '41.42470', '-99.12560'), ('Elyria', 54, '41.67970', '-99.00530'), ('Fort Hartsuff State Park', 54, '41.73000', '-99.01000'), ('North Loup', 339, '41.49490', '-98.77190'), ('Ord', 2269, '41.60250', '-98.92960')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEZ040': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Greeley', 549, '41.54820', '-98.53000'), ('Scotia', 308, '41.46830', '-98.70250'), ('Spalding', 537, '41.68840', '-98.36200'), ('Wolbach', 287, '41.40080', '-98.39170')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEZ041': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Belgrade', 134, '41.47130', '-98.06710'), ('Fullerton', 1378, '41.36410', '-97.97250'), ('Genoa', 981, '41.44590', '-97.73280')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEZ042': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Columbus', 20971, '41.43470', '-97.35560'), ('Cornlea', 41, '41.68070', '-97.56710'), ('Creston', 215, '41.70710', '-97.36150'), ('Duncan', 359, '41.39000', '-97.49350'), ('Humphrey', 786, '41.68820', '-97.48740'), ('Lindsay', 276, '41.70060', '-97.69430'), ('Monroe', 307, '41.47370', '-97.60010'), ('Platte Center', 359, '41.53800', '-97.48720'), ('Tarnov', 63, '41.61490', '-97.50280')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ043': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Clarkson', 685, '41.72470', '-97.12130'), ('Howells', 632, '41.72340', '-97.00470'), ('Leigh', 442, '41.70410', '-97.23680'), ('Richland', 89, '41.43730', '-97.21410'), ('Rogers', 95, '41.46460', '-96.91620'), ('Schuyler', 5371, '41.44810', '-97.05990')], 'partOfState': 'northeast', 'wfo': 'OAX'}, +'NEZ044': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Dodge', 700, '41.72160', '-96.87940'), ('Fremont', 25174, '41.44080', '-96.49210'), ('Hooper', 827, '41.61220', '-96.54800'), ('Inglewood', 382, '41.41670', '-96.50160'), ('Nickerson', 431, '41.53500', '-96.47050'), ('North Bend', 1213, '41.46520', '-96.78310'), ('Scribner', 971, '41.66450', '-96.66490'), ('Snyder', 318, '41.70450', '-96.78620'), ('Uehling', 275, '41.73430', '-96.50540'), ('Winslow', 104, '41.60880', '-96.50470')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEZ045': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arlington', 1197, '41.45420', '-96.35550'), ('Blair', 7512, '41.54420', '-96.13670'), ('Fort Calhoun', 856, '41.45510', '-96.02560'), ('Herman', 310, '41.67310', '-96.21660'), ('Kennard', 371, '41.47430', '-96.20340'), ('Washington', 126, '41.39830', '-96.20870')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEZ046': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ashton', 237, '41.24760', '-98.79450'), ('Hazard', 66, '41.09120', '-99.07810'), ('Litchfield', 280, '41.15610', '-99.15190'), ('Loup City', 996, '41.27630', '-98.96770'), ('Rockville', 111, '41.11930', '-98.83110'), ('Sherman Reservoir', 996, '41.30000', '-98.88000')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEZ047': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Boelus', 208, '41.07500', '-98.71670'), ('Cotesfield', 66, '41.35770', '-98.63300'), ('Cushing', 31, '41.29460', '-98.36900'), ('Dannebrog', 352, '41.11860', '-98.54520'), ('Elba', 243, '41.28440', '-98.56910'), ('Farwell', 148, '41.21580', '-98.62740'), ('St. Libory', 42940, '41.08000', '-98.35300'), ('St. Paul', 2218, '41.21370', '-98.45950')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEZ048': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Archer', 472, '41.16640', '-98.13000'), ('Central City', 2998, '41.11440', '-98.00280'), ('Chapman', 341, '41.02290', '-98.15970'), ('Clarks', 361, '41.21630', '-97.83940'), ('Palmer', 472, '41.22750', '-98.21890'), ('Silver Creek', 441, '41.33280', '-97.66570')], 'partOfState': 'central', 'wfo': 'GID'}, +'NEZ049': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Osceola', 921, '41.17790', '-97.54840'), ('Polk', 322, '41.07520', '-97.78280'), ('Shelby', 690, '41.19420', '-97.42640'), ('Stromsburg', 1232, '41.11630', '-97.59050')], 'partOfState': 'east central', 'wfo': 'GID'}, +'NEZ050': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Abie', 108, '41.33370', '-96.94930'), ('Bellwood', 446, '41.34210', '-97.24020'), ('Brainard', 351, '41.18270', '-97.00220'), ('Bruno', 112, '41.28330', '-96.96050'), ('David City', 2597, '41.25450', '-97.12610'), ('Dwight', 259, '41.08300', '-97.01910'), ('Garrison', 67, '41.17550', '-97.16300'), ('Linwood', 118, '41.41180', '-96.93240'), ('Octavia', 145, '41.34730', '-97.05910'), ('Rising City', 386, '41.19860', '-97.29690'), ('Surprise', 44, '41.10440', '-97.30860'), ('Ulysses', 276, '41.07240', '-97.20240')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEZ051': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ashland', 2262, '41.04050', '-96.37090'), ('Cedar Bluffs', 615, '41.39780', '-96.60920'), ('Ceresco', 920, '41.05770', '-96.64530'), ('Colon', 138, '41.29780', '-96.60650'), ('Ithaca', 168, '41.16040', '-96.53960'), ('Leshara', 111, '41.33010', '-96.42870'), ('Malmo', 109, '41.26630', '-96.72100'), ('Mead', 564, '41.22910', '-96.48940'), ('Memphis', 106, '41.09460', '-96.43280'), ('Morse Bluff', 134, '41.43110', '-96.76570'), ('Prague', 346, '41.30970', '-96.80860'), ('Valparaiso', 563, '41.07940', '-96.83200'), ('Wahoo', 3942, '41.21520', '-96.62000'), ('Weston', 310, '41.19200', '-96.74120'), ('Yutan', 1216, '41.24320', '-96.39730')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEZ052': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bennington', 937, '41.36760', '-96.15690'), ('Boys Town', 818, '41.25950', '-96.13120'), ('Elkhorn', 6062, '41.28270', '-96.23620'), ('Millard', 10736, '41.20530', '-96.15770'), ('Omaha', 390007, '41.26390', '-96.01170'), ('Ralston', 6314, '41.20130', '-96.03670'), ('Valley', 1788, '41.31300', '-96.34600'), ('Waterloo', 459, '41.28780', '-96.28570')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEZ053': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bellevue', 44382, '41.15640', '-95.92260'), ('Chalco', 10736, '41.18340', '-96.13390'), ('Gretna', 2355, '41.14070', '-96.24360'), ('La Vista', 11699, '41.18430', '-96.03910'), ('Offutt AFB', 10883, '41.11160', '-95.91880'), ('Papillion', 16363, '41.15720', '-96.04050'), ('Springfield', 1450, '41.08310', '-96.13220')], 'partOfState': 'east central', 'wfo': 'OAX'}, +'NEZ054': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bushnell', 162, '41.23200', '-103.89040'), ('Dix', 267, '41.23470', '-103.48630'), ('Kimball', 2559, '41.23250', '-103.65900')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ055': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brownson', 6282, '41.17000', '-103.08000'), ('Dalton', 332, '41.40770', '-102.97040'), ('Gurley', 228, '41.32060', '-102.97390'), ('Lodgepole', 348, '41.14850', '-102.63830'), ('Lorenzo', 179, '41.03000', '-103.05000'), ('Potter', 390, '41.21890', '-103.31430'), ('Sidney', 6282, '41.13370', '-102.97000')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ056': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Big Springs', 418, '41.06340', '-102.07470'), ('Chappell', 983, '41.09410', '-102.46700')], 'partOfState': 'panhandle', 'wfo': 'LBF'}, +'NEZ057': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brule', 372, '41.09590', '-101.88840'), ('Keystone', 4930, '41.22000', '-101.59000'), ('Kingsley Dam', 4930, '41.21450', '-101.65800'), ('Lemoyne', 4930, '41.28550', '-101.80050'), ('Ogallala', 4930, '41.13050', '-101.72050'), ('Paxton', 614, '41.12480', '-101.35540'), ('Roscoe', 4930, '41.13500', '-101.60000'), ('Sarben', 614, '41.16300', '-101.30000')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEZ058': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brandon', 175, '40.80150', '-101.93100'), ('Elsie', 139, '40.84680', '-101.38890'), ('Grainton', 16, '40.82240', '-101.28650'), ('Grant', 1225, '40.84440', '-101.72570'), ('Madrid', 265, '40.84960', '-101.54270'), ('Venango', 175, '40.76170', '-102.04080')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEZ059': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Brady', 366, '41.02280', '-100.36740'), ('Dickens', 16, '40.82580', '-100.99340'), ('Hershey', 572, '41.15810', '-101.00130'), ('Maxwell', 315, '41.07860', '-100.52580'), ('North Platte', 23878, '41.13300', '-100.77180'), ('Sutherland', 1129, '41.15750', '-101.12650'), ('Wallace', 329, '40.83710', '-101.16350'), ('Wellfleet', 76, '40.75270', '-100.73040')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEZ060': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Cozad', 4163, '40.86290', '-99.98650'), ('Eddyville', 96, '41.01270', '-99.62330'), ('Farnam', 223, '40.70630', '-100.21500'), ('Gothenburg', 3619, '40.92940', '-100.16120'), ('Lexington', 10011, '40.77840', '-99.74210'), ('Overton', 646, '40.74040', '-99.53700'), ('Sumner', 237, '40.94950', '-99.50720'), ('Willow Island', 4163, '40.88000', '-100.06720')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ061': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Amherst', 277, '40.83880', '-99.26910'), ('Elm Creek', 894, '40.71980', '-99.37500'), ('Gibbon', 1759, '40.74650', '-98.84470'), ('Kearney', 27431, '40.70080', '-99.08460'), ('Miller', 156, '40.92700', '-99.39050'), ('Odessa', 894, '40.70000', '-99.25580'), ('Pleasanton', 360, '40.97010', '-99.08670'), ('Poole', 1341, '40.97920', '-98.95280'), ('Ravenna', 1341, '41.02680', '-98.91300'), ('Riverdale', 213, '40.78360', '-99.16000'), ('Shelton', 1140, '40.77850', '-98.73020')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ062': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alda', 652, '40.86470', '-98.46880'), ('Cairo', 790, '41.00160', '-98.60770'), ('Doniphan', 763, '40.77350', '-98.37120'), ('Grand Island', 42940, '40.92180', '-98.36590'), ('Wood River', 1204, '40.82180', '-98.59790')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ063': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Aurora', 4225, '40.86570', '-98.00310'), ('Giltner', 389, '40.77430', '-98.15390'), ('Hampton', 439, '40.88100', '-97.88790'), ('Hordville', 150, '41.07980', '-97.89030'), ('Marquette', 282, '41.00600', '-98.00950'), ('Phillips', 336, '40.89800', '-98.21490'), ('Stockham', 60, '40.71680', '-97.94340')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ064': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Benedict', 278, '41.00660', '-97.60680'), ('Bradshaw', 336, '40.88370', '-97.74620'), ('Gresham', 270, '41.02770', '-97.40110'), ('Henderson', 986, '40.77900', '-97.81160'), ('Lushton', 33, '40.72380', '-97.72410'), ('McCool Junction', 385, '40.74430', '-97.59520'), ('Thayer', 71, '40.96970', '-97.49450'), ('Waco', 256, '40.89660', '-97.46120'), ('York', 8081, '40.87120', '-97.59560')], 'partOfState': 'east central', 'wfo': 'GID'}, +'NEZ065': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Beaver Crossing', 457, '40.77780', '-97.28190'), ('Bee', 223, '41.00690', '-97.05770'), ('Cordova', 127, '40.71640', '-97.35090'), ('Garland', 247, '40.94420', '-96.98510'), ('Goehner', 186, '40.83270', '-97.21990'), ('Milford', 2070, '40.77280', '-97.05200'), ('Pleasant Dale', 245, '40.79180', '-96.93270'), ('Seward', 6319, '40.91210', '-97.09670'), ('Staplehurst', 270, '40.97480', '-97.17200'), ('Tamora', 51, '40.89580', '-97.22410'), ('Utica', 844, '40.89560', '-97.34500')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ066': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bennet', 570, '40.68120', '-96.50590'), ('Davey', 153, '40.98260', '-96.66860'), ('Denton', 189, '40.73950', '-96.84460'), ('Firth', 564, '40.53430', '-96.60400'), ('Hallam', 276, '40.53670', '-96.78590'), ('Hickman', 1084, '40.62150', '-96.63150'), ('Lincoln', 225581, '40.81640', '-96.68820'), ('Malcolm', 413, '40.90850', '-96.86600'), ('Panama', 253, '40.59960', '-96.51120'), ('Raymond', 186, '40.95660', '-96.78150'), ('Roca', 220, '40.65810', '-96.66170'), ('Sprague', 146, '40.62660', '-96.74520'), ('Waverly', 2448, '40.91490', '-96.53000')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ067': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alvo', 142, '40.87150', '-96.38660'), ('Avoca', 270, '40.79640', '-96.11780'), ('Cedar Creek', 396, '41.04540', '-96.09790'), ('Eagle', 1105, '40.81610', '-96.43210'), ('Elmwood', 668, '40.84220', '-96.29430'), ('Greenwood', 544, '40.96160', '-96.44270'), ('Louisville', 1046, '40.99880', '-96.16030'), ('Manley', 191, '40.91880', '-96.16520'), ('Murdock', 269, '40.92600', '-96.28030'), ('Murray', 481, '40.91660', '-95.92790'), ('Nehawka', 232, '40.82980', '-95.98930'), ('Plattsmouth', 6887, '41.00770', '-95.89140'), ('South Bend', 86, '41.00210', '-96.24620'), ('Union', 260, '40.81470', '-95.92070'), ('Weeping Water', 1103, '40.86780', '-96.13880')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ068': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burr', 66, '40.53590', '-96.29890'), ('Douglas', 231, '40.59230', '-96.38850'), ('Dunbar', 237, '40.66870', '-96.03030'), ('Lorton Village', 39, '40.59750', '-96.02350'), ('Nebraska City', 7228, '40.67620', '-95.86070'), ('Otoe', 217, '40.72450', '-96.12030'), ('Palmyra', 546, '40.70570', '-96.39160'), ('Syracuse', 1762, '40.66180', '-96.18290'), ('Talmage', 268, '40.53180', '-96.02340'), ('Unadilla', 342, '40.68280', '-96.27010')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ069': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Champion', 1982, '40.46500', '-101.71000'), ('Enders', 1982, '40.44250', '-101.52000'), ('Imperial', 1982, '40.51620', '-101.63760'), ('Lamar', 19, '40.57240', '-101.97950'), ('Wauneta', 625, '40.41660', '-101.37160')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEZ070': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Hamlet', 54, '40.38440', '-101.23490'), ('Hayes Center', 240, '40.51120', '-101.02000')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEZ071': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Curtis', 832, '40.63450', '-100.51420'), ('Eustis', 464, '40.66430', '-100.02860'), ('Maywood', 331, '40.65810', '-100.62230'), ('Moorefield', 52, '40.68970', '-100.39990'), ('Stockville', 36, '40.53320', '-100.38410')], 'partOfState': 'southwest', 'wfo': 'LBF'}, +'NEZ072': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Elwood', 761, '40.58960', '-99.86160'), ('Johnson Lake', 761, '40.68000', '-99.85000'), ('Smithfield', 68, '40.57320', '-99.74090')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ073': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Atlanta', 130, '40.36830', '-99.47240'), ('Bertrand', 786, '40.52670', '-99.63270'), ('Funk', 204, '40.46290', '-99.24950'), ('Holdrege', 5636, '40.44060', '-99.37550'), ('Loomis', 397, '40.47810', '-99.50740')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ074': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Axtell', 696, '40.47900', '-99.12820'), ('Heartwell', 80, '40.56970', '-98.78850'), ('Minden', 2964, '40.50080', '-98.95080'), ('Norman', 49, '40.47930', '-98.79100'), ('Wilcox', 360, '40.36450', '-99.16880')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ075': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Ayr', 98, '40.43790', '-98.44020'), ('Hansen', 763, '40.69580', '-98.36860'), ('Hastings', 24064, '40.58930', '-98.39010'), ('Holstein', 229, '40.46480', '-98.65110'), ('Juniata', 693, '40.58950', '-98.50540'), ('Kenesaw', 873, '40.61960', '-98.65810'), ('Prosser', 94, '40.68870', '-98.57730'), ('Roseland', 242, '40.47090', '-98.55790')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ076': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Clay Center', 861, '40.52330', '-98.05470'), ('Deweese', 80, '40.35430', '-98.13920'), ('Edgar', 539, '40.36840', '-97.97050'), ('Fairfield', 467, '40.43200', '-98.10320'), ('Glenvil', 332, '40.50260', '-98.25480'), ('Harvard', 998, '40.61930', '-98.09620'), ('Inland', 332, '40.59080', '-98.22920'), ('Ong', 67, '40.39820', '-97.83910'), ('Saronville', 61, '40.60290', '-97.93890'), ('Sutton', 1447, '40.60760', '-97.85830'), ('Trumbull', 212, '40.68010', '-98.27280')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ077': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Exeter', 712, '40.64470', '-97.44920'), ('Fairmont', 691, '40.63550', '-97.58420'), ('Geneva', 2226, '40.52760', '-97.60160'), ('Grafton', 152, '40.62960', '-97.71510'), ('Milligan', 315, '40.49990', '-97.38800'), ('Ohiowa', 142, '40.41410', '-97.45190'), ('Shickley', 376, '40.41610', '-97.72350'), ('Strang', 32, '40.41510', '-97.58710')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ078': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Crete', 6028, '40.62560', '-96.95830'), ('De Witt', 572, '40.39500', '-96.92180'), ('Dorchester', 615, '40.64760', '-97.11480'), ('Friend', 1174, '40.65110', '-97.28400'), ('Swanton', 106, '40.37930', '-97.07970'), ('Tobias', 158, '40.41840', '-97.33630'), ('Western', 287, '40.39310', '-97.19930'), ('Wilber', 1761, '40.48090', '-96.96330')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ079': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Benkelman', 1006, '40.05160', '-101.53460'), ('Haigler', 211, '40.01240', '-101.93850'), ('Max', 0, '40.11000', '-101.40000'), ('Parks', 0, '40.04000', '-101.73000')], 'partOfState': 'southwest', 'wfo': 'GLD'}, +'NEZ080': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Culbertson', 594, '40.22850', '-100.83560'), ('Palisade', 381, '40.34840', '-101.10670'), ('Stratton Ne', 396, '40.15170', '-101.22770'), ('Trenton', 507, '40.17430', '-101.01330')], 'partOfState': 'southwest', 'wfo': 'GLD'}, +'NEZ081': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bartley', 355, '40.25250', '-100.30930'), ('Danbury', 127, '40.03780', '-100.40440'), ('Indianola', 642, '40.23490', '-100.41890'), ('Lebanon', 70, '40.04920', '-100.27590'), ('McCook', 7994, '40.20410', '-100.62030')], 'partOfState': 'southwest', 'wfo': 'GLD'}, +'NEZ082': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Arapahoe', 1028, '40.30500', '-99.89810'), ('Beaver City', 641, '40.13770', '-99.82730'), ('Cambridge', 1041, '40.28340', '-100.17050'), ('Edison', 154, '40.27760', '-99.77570'), ('Hendley', 38, '40.13090', '-99.97040'), ('Holbrook', 225, '40.30390', '-100.01040'), ('Hollinger', 641, '40.15600', '-99.73890'), ('Oxford', 876, '40.25310', '-99.63250'), ('Wilsonville', 118, '40.11150', '-100.10590')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ083': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alma', 1214, '40.10170', '-99.36220'), ('Harlan County Dam', 209, '40.07000', '-99.21000'), ('Huntley', 67, '40.21080', '-99.29100'), ('Orleans', 425, '40.13160', '-99.45410'), ('Ragan', 46, '40.31060', '-99.29010'), ('Republican City', 209, '40.10030', '-99.22240'), ('Stamford', 202, '40.13070', '-99.59470')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ084': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bloomington', 124, '40.09360', '-99.03780'), ('Campbell', 387, '40.29680', '-98.73090'), ('Franklin', 1026, '40.09660', '-98.95100'), ('Hildreth', 370, '40.33750', '-99.04600'), ('Naponee', 132, '40.07400', '-99.13810'), ('Riverton', 145, '40.08890', '-98.75920'), ('Upland', 179, '40.31900', '-98.90160')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ085': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bladen', 291, '40.32360', '-98.59510'), ('Blue Hill', 867, '40.33300', '-98.44760'), ('Cowles', 48, '40.17100', '-98.44800'), ('Guide Rock', 245, '40.07300', '-98.32920'), ('Inavale', 1131, '40.09580', '-98.63860'), ('Red Cloud', 1131, '40.08610', '-98.52230'), ('Rosemont', 867, '40.28690', '-98.36390')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ086': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Bostwick', 2055, '40.04000', '-98.18500'), ('Hardy', 179, '40.01160', '-97.92330'), ('Lawrence', 312, '40.29020', '-98.25900'), ('Nelson', 587, '40.20090', '-98.06900'), ('Nora', 20, '40.16380', '-97.97360'), ('Oak', 60, '40.23730', '-97.90400'), ('Ruskin', 195, '40.14430', '-97.86650'), ('Superior', 2055, '40.02240', '-98.06770')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ087': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Alexandria', 216, '40.24740', '-97.38680'), ('Belvidere', 98, '40.25440', '-97.55690'), ('Bruning', 300, '40.33570', '-97.56460'), ('Byron', 144, '40.00520', '-97.76810'), ('Carleton', 136, '40.30170', '-97.67350'), ('Chester', 294, '40.00960', '-97.61770'), ('Davenport', 339, '40.31160', '-97.81010'), ('Deshler', 879, '40.13900', '-97.72320'), ('Gilead', 40, '40.14650', '-97.41500'), ('Hebron', 1565, '40.16840', '-97.58770'), ('Hubbell', 73, '40.00760', '-97.49670')], 'partOfState': 'south central', 'wfo': 'GID'}, +'NEZ088': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Daykin', 177, '40.32180', '-97.29740'), ('Diller', 287, '40.10870', '-96.93750'), ('Endicott', 139, '40.08090', '-97.09530'), ('Fairbury', 4262, '40.14090', '-97.17720'), ('Harbine', 56, '40.19150', '-96.97350'), ('Jansen', 143, '40.18570', '-97.08240'), ('Plymouth', 477, '40.30340', '-96.98810'), ('Reynolds', 88, '40.06040', '-97.33590'), ('Steele City', 84, '40.03650', '-97.02250')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ089': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Adams', 489, '40.45620', '-96.51120'), ('Barneston', 122, '40.04870', '-96.57670'), ('Beatrice', 12496, '40.26980', '-96.74560'), ('Blue Springs', 383, '40.13700', '-96.66260'), ('Clatonia', 275, '40.46490', '-96.85120'), ('Cortland', 488, '40.50610', '-96.70560'), ('Filley', 174, '40.28540', '-96.53380'), ('Liberty', 86, '40.08500', '-96.48300'), ('Odell', 345, '40.05030', '-96.80070'), ('Pickrell', 182, '40.37780', '-96.72850'), ('Virginia', 67, '40.24520', '-96.49890'), ('Wymore', 1656, '40.12280', '-96.66660')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ090': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Cook', 322, '40.51030', '-96.16120'), ('Crab Orchard', 49, '40.33440', '-96.42170'), ('Elk Creek', 112, '40.28750', '-96.12800'), ('Sterling', 507, '40.46190', '-96.37810'), ('Tecumseh', 1716, '40.37030', '-96.18880')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ091': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Auburn', 3350, '40.38830', '-95.84200'), ('Brock', 162, '40.48110', '-95.95970'), ('Brownville', 146, '40.39710', '-95.66140'), ('Johnson', 280, '40.41130', '-95.99840'), ('Julian', 63, '40.52030', '-95.86710'), ('Nemaha', 178, '40.33780', '-95.67590'), ('Peru', 569, '40.47870', '-95.73100')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ092': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Burchard', 103, '40.14980', '-96.34780'), ('Du Bois', 166, '40.03400', '-96.04590'), ('Lewiston', 86, '40.24340', '-96.40740'), ('Pawnee City', 1033, '40.11060', '-96.15200'), ('Steinauer', 74, '40.20700', '-96.23360'), ('Table Rock', 264, '40.17870', '-96.08920')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ093': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Barada', 28, '40.21830', '-95.57860'), ('Dawson', 209, '40.13090', '-95.82980'), ('Falls City', 4671, '40.06530', '-95.59960'), ('Humboldt', 941, '40.16620', '-95.94420'), ('Preston', 50, '40.03410', '-95.51730'), ('Rulo', 226, '40.05200', '-95.43000'), ('Salem', 138, '40.07710', '-95.72680'), ('Shubert', 252, '40.23580', '-95.68330'), ('Stella', 220, '40.23160', '-95.77260'), ('Verdon', 223, '40.14890', '-95.71080')], 'partOfState': 'southeast', 'wfo': 'OAX'}, +'NEZ094': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Cody', 149, '42.93710', '-101.24770'), ('Eli', 149, '42.94000', '-101.44000'), ('Kilgore', 99, '42.93850', '-100.95670'), ('Merriman', 118, '42.92110', '-101.69980'), ('Nenzel', 13, '42.92690', '-101.10130')], 'partOfState': 'north central', 'wfo': 'LBF'}, +'NEZ095': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Harrison', 279, '42.68800', '-103.88160')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NEZ096': {'fullStateName': 'Nebraska', 'state': 'NE', 'cities': [('Agate', 279, '42.41000', '-103.78000')], 'partOfState': 'panhandle', 'wfo': 'CYS'}, +'NHZ001': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Clarksville', 1197, '45.02080', '-71.31250'), ('Colebrook', 1197, '44.89440', '-71.49640'), ('Dixville Notch', 1197, '44.87080', '-71.30640'), ('Errol', 10331, '44.78140', '-71.13830'), ('Millsfield', 10331, '44.80190', '-71.27610'), ('North Stratford', 1197, '44.76020', '-71.58840'), ('Pittsburg', 1197, '45.05110', '-71.39190'), ('Stewartstown', 1197, '45.00610', '-71.50830'), ('Wentworths Location', 10331, '44.85810', '-71.05580')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHZ002': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Berlin', 10331, '44.46860', '-71.18560'), ('Carroll', 1089, '44.29830', '-71.54110'), ('Dummer', 10331, '44.67140', '-71.25310'), ('Gorham', 1773, '44.38780', '-71.17360'), ('Groveton', 1197, '44.59920', '-71.51820'), ('Jefferson', 1695, '44.41890', '-71.47500'), ('Lancaster', 1695, '44.48890', '-71.56970'), ('Milan', 10331, '44.57330', '-71.18560'), ('Mount Washington', 1773, '44.27060', '-71.30470'), ('Northumberland', 1197, '44.56330', '-71.55920'), ('Pinkham Notch', 1773, '44.25750', '-71.25420'), ('Randolph', 1773, '44.37530', '-71.28030'), ('Shelburne', 1773, '44.40110', '-71.17530'), ('Stark', 1197, '44.60060', '-71.40670'), ('Stratford', 1197, '44.65500', '-71.55610'), ('Whitefield', 1089, '44.37580', '-71.61060'), ('York Pond', 10331, '44.50330', '-71.33920')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHZ003': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Bath', 1081, '44.16690', '-71.96670'), ('Benton', 1070, '44.10310', '-71.90220'), ('Bethlehem', 4431, '44.28030', '-71.68860'), ('Easton', 1070, '44.14610', '-71.79060'), ('Landaff Center', 1070, '44.17500', '-71.88750'), ('Lincoln', 4431, '44.04560', '-71.67060'), ('Lisbon', 1070, '44.21270', '-71.90900'), ('Littleton', 4431, '44.30610', '-71.77060'), ('Livermore', 2069, '44.01830', '-71.45310'), ('Piermont', 672, '43.96970', '-72.08110'), ('Sugar Hill', 4431, '44.22170', '-71.80140'), ('Thornton', 3528, '43.89280', '-71.67640'), ('Warren', 412, '43.92310', '-71.89250'), ('Waterville Valley', 3528, '43.95000', '-71.50000'), ('Woodstock', 3528, '43.97750', '-71.68560'), ('Woodsville', 1081, '44.15220', '-72.03780')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHZ004': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Albany', 1692, '43.95780', '-71.16810'), ('Chatham', 1580, '44.16440', '-71.01170'), ('Conway', 1692, '43.97920', '-71.12080'), ('Crawford Notch', 1089, '44.16860', '-71.40500'), ('Jackson', 2069, '44.14420', '-71.18140'), ('North Conway', 2069, '44.05380', '-71.12680')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHZ005': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Ashland', 3528, '43.69530', '-71.63110'), ('Bristol', 1670, '43.59110', '-71.73720'), ('Canaan', 1698, '43.64750', '-72.01220'), ('Dorchester', 1698, '43.75670', '-71.94920'), ('Ellsworth', 3528, '43.87390', '-71.73690'), ('Enfield', 1698, '43.64060', '-72.14440'), ('Hebron', 1670, '43.69390', '-71.80610'), ('Holderness', 3528, '43.73190', '-71.58890'), ('Lebanon', 12568, '43.64220', '-72.25220'), ('Lyme', 8162, '43.80940', '-72.15920'), ('Orange', 1698, '43.65440', '-71.97190'), ('Plymouth', 3528, '43.75690', '-71.68860'), ('Rumney', 3528, '43.80530', '-71.81310'), ('Wentworth', 672, '43.87170', '-71.91470')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHZ006': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Bridgewater', 2979, '43.63830', '-71.23690'), ('Brookfield', 2979, '43.55890', '-71.06580'), ('Eaton', 1692, '43.90920', '-71.08420'), ('Effingham', 1692, '43.76110', '-70.99690'), ('Freedom', 1692, '43.81220', '-71.03610'), ('Madison', 1692, '43.89920', '-71.14890'), ('Moultonborough', 1739, '43.75470', '-71.39720'), ('Ossipee', 2979, '43.68530', '-71.11720'), ('Sandwich', 1739, '43.79030', '-71.41170'), ('Tamworth', 1692, '43.85970', '-71.26360'), ('Tuftonboro', 2979, '43.69640', '-71.22250'), ('Wakefield', 3468, '43.56810', '-71.03060'), ('Wolfeboro', 2979, '43.58390', '-71.20780')], 'partOfState': 'northern', 'wfo': 'GYX'}, +'NHZ007': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Acworth', 1145, '43.21780', '-72.29250'), ('Charlestown', 1145, '43.23860', '-72.42500'), ('Claremont', 13151, '43.37670', '-72.34720'), ('Cornish', 13151, '43.48280', '-72.32000'), ('Croydon', 4008, '43.45060', '-72.16360'), ('Goshen', 4008, '43.30110', '-72.14830'), ('Grantham', 4008, '43.48940', '-72.13810'), ('Langdon', 3313, '43.16690', '-72.38000'), ('Lempster', 4008, '43.23830', '-72.21110'), ('Newport', 4008, '43.36530', '-72.17390'), ('Plainfield', 2521, '43.53420', '-72.35670'), ('Springfield', 4008, '43.49500', '-72.03390'), ('Sunapee', 4008, '43.38750', '-72.08830'), ('Unity', 13151, '43.29390', '-72.26080'), ('Washington', 1842, '43.17580', '-72.09720')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NHZ008': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Allenstown', 5362, '43.15780', '-71.40610'), ('Andover', 8405, '43.43690', '-71.82390'), ('Boscawen', 40687, '43.31500', '-71.62140'), ('Bow', 5362, '43.13190', '-71.54970'), ('Bradford', 1842, '43.27000', '-71.96060'), ('Canterbury', 40687, '43.33690', '-71.56580'), ('Chichester', 1669, '43.24920', '-71.40030'), ('Concord', 40687, '43.20810', '-71.53810'), ('Contoocook', 1444, '43.22350', '-71.71510'), ('Danbury', 1670, '43.52560', '-71.86220'), ('Dunbarton', 40687, '43.10250', '-71.61690'), ('Epsom', 1669, '43.22280', '-71.33250'), ('Franklin', 8405, '43.44420', '-71.64780'), ('Henniker', 1627, '43.17970', '-71.82280'), ('Hill', 8405, '43.52420', '-71.70140'), ('Hooksett', 3609, '43.09670', '-71.46560'), ('Hopkinton', 1444, '43.19140', '-71.67580'), ('Loudon', 40687, '43.28560', '-71.46780'), ('Newbury', 4008, '43.32140', '-72.03640'), ('New London', 4008, '43.41390', '-71.98560'), ('Northfield', 3231, '43.43310', '-71.59280'), ('Pembroke', 5362, '43.14670', '-71.45810'), ('Pittsfield', 1669, '43.30580', '-71.32470'), ('Salisbury', 8405, '43.38000', '-71.71750'), ('South Hooksett', 5282, '43.03490', '-71.42260'), ('Suncook', 5362, '43.13870', '-71.45210'), ('Sutton', 1627, '43.33420', '-71.95190'), ('Warner', 1627, '43.28060', '-71.81720'), ('Webster', 1444, '43.32890', '-71.71830'), ('Wilmot', 1670, '43.45170', '-71.91420')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NHZ009': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Alton', 2979, '43.45220', '-71.21810'), ('Barnstead', 1669, '43.33390', '-71.29330'), ('Belmont', 3231, '43.44530', '-71.47830'), ('Gilford', 15743, '43.54750', '-71.40720'), ('Gilmanton', 1669, '43.42420', '-71.41500'), ('Laconia', 40687, '43.52770', '-71.47080'), ('Meredith', 1739, '43.65750', '-71.50080'), ('New Hampton', 1670, '43.60560', '-71.65470'), ('Sanbornton', 3231, '43.48920', '-71.58280'), ('Tilton', 3231, '43.44220', '-71.58940'), ('Tilton-Northfield', 3231, '43.44340', '-71.59310')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NHZ010': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Barrington', 28461, '43.22280', '-71.04750'), ('Dover', 26884, '43.19780', '-70.87420'), ('Durham', 9024, '43.13390', '-70.92690'), ('Farmington', 3468, '43.38970', '-71.06560'), ('Lee', 5124, '43.12310', '-71.01190'), ('Madbury', 9024, '43.16920', '-70.92440'), ('Middleton', 3468, '43.47610', '-71.07000'), ('Milton', 3468, '43.40970', '-70.98890'), ('New Durham', 3468, '43.43670', '-71.17280'), ('Rochester', 28461, '43.30440', '-70.97610'), ('Rollinsford', 11477, '43.23610', '-70.82080'), ('Somersworth', 11477, '43.26170', '-70.86580'), ('Strafford', 3468, '43.32690', '-71.18470')], 'partOfState': 'central', 'wfo': 'GYX'}, +'NHZ011': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Alstead', 3313, '43.15000', '-72.36667'), ('Chesterfield', 1713, '42.88333', '-72.46667'), ('Dublin', 2944, '42.91667', '-72.06667'), ('Fitzwilliam', 2802, '42.78333', '-72.15000'), ('Gilsum', 22563, '43.05000', '-72.26667'), ('Harrisville', 1089, '42.95000', '-72.10000'), ('Hinsdale', 1713, '42.78820', '-72.48830'), ('Jaffrey', 2802, '42.81300', '-72.02480'), ('Keene', 22563, '42.95000', '-72.29740'), ('Marlborough', 1089, '42.90390', '-72.21020'), ('Marlow', 22563, '43.11667', '-72.20000'), ('Nelson', 1089, '42.98333', '-72.13333'), ('Richmond', 1832, '42.75000', '-72.28333'), ('Rindge', 2802, '42.75000', '-72.01667'), ('Roxbury', 1089, '42.93333', '-72.20000'), ('Stoddard', 1389, '43.08333', '-72.10000'), ('Sullivan', 22563, '43.01667', '-72.21667'), ('Surry', 22563, '43.05000', '-72.33333'), ('Swanzey', 1055, '42.86667', '-72.28333'), ('Troy', 1089, '42.83333', '-72.18333'), ('Walpole', 399, '43.08333', '-72.43333'), ('Westmoreland', 399, '42.96667', '-72.45000'), ('Winchester', 1832, '42.77620', '-72.38470')], 'partOfState': 'southern', 'wfo': 'BOX'}, +'NHZ012': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Bedford', 5779, '42.95000', '-71.50000'), ('Hudson', 7814, '42.76380', '-71.43210'), ('Litchfield', 3784, '42.83333', '-71.46667'), ('Manchester', 107006, '42.98360', '-71.44490'), ('Merrimack', 3784, '42.86667', '-71.48333'), ('Nashua', 86605, '42.74860', '-71.49180'), ('Pelham', 103439, '42.73333', '-71.31667')], 'partOfState': 'southern', 'wfo': 'BOX'}, +'NHZ013': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Atkinson', 51418, '42.83830', '-71.14750'), ('Auburn', 5282, '43.00440', '-71.34890'), ('Brentwood', 1673, '42.97860', '-71.07330'), ('Candia', 2839, '43.07780', '-71.27720'), ('Chester', 22661, '42.95670', '-71.25780'), ('Danville', 1673, '42.91250', '-71.12500'), ('Deerfield', 2839, '43.14610', '-71.21690'), ('Derry', 22661, '42.88060', '-71.32780'), ('East Kingston', 9759, '42.92560', '-71.01720'), ('Epping', 1673, '43.03330', '-71.07470'), ('Exeter', 9759, '42.98140', '-70.94830'), ('Fremont', 2839, '42.99080', '-71.14310'), ('Hampstead', 22661, '42.87440', '-71.18170'), ('Kensington', 9759, '42.92690', '-70.94440'), ('Kingston', 1673, '42.93640', '-71.05390'), ('Londonderry', 11417, '42.86500', '-71.37440'), ('Newfields', 5124, '43.03690', '-70.93890'), ('Newmarket', 5124, '43.08280', '-70.93560'), ('Newton', 51418, '42.86940', '-71.03500'), ('Northwood', 2839, '43.19420', '-71.15140'), ('Nottingham', 1673, '43.11440', '-71.10030'), ('Plaistow', 51418, '42.83640', '-71.09530'), ('Raymond', 2839, '43.03610', '-71.18390'), ('Salem', 70207, '42.78830', '-71.20140'), ('Sandown', 2839, '42.92860', '-71.18750'), ('South Hampton', 12109, '42.88080', '-70.96310'), ('Stratham', 5124, '43.02390', '-70.91420'), ('Windham', 11417, '42.80060', '-71.30470')], 'partOfState': 'southern', 'wfo': 'GYX'}, +'NHZ014': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Greenland', 20784, '43.03610', '-70.83330'), ('Hampton', 9126, '42.93750', '-70.83940'), ('Hampton Falls', 9126, '42.91610', '-70.86420'), ('Newington', 3112, '43.10000', '-70.83420'), ('North Hampton', 9126, '42.97250', '-70.83030'), ('Portsmouth', 20784, '43.07170', '-70.76310'), ('Rye', 20784, '43.01330', '-70.77140'), ('Seabrook', 9126, '42.89470', '-70.87170')], 'partOfState': 'southern', 'wfo': 'GYX'}, +'NHZ015': {'fullStateName': 'New Hampshire', 'state': 'NH', 'cities': [('Amherst', 8293, '42.86667', '-71.61667'), ('Antrim', 1389, '43.03170', '-71.94580'), ('Bennington', 0, '43.00000', '-71.93330'), ('Brookline', 1164, '42.73333', '-71.66667'), ('Deering', 1842, '43.06667', '-71.86667'), ('Francestown', 0, '42.98333', '-71.80000'), ('Goffstown', 5779, '43.01667', '-71.60000'), ('Greenfield', 0, '42.95000', '-71.85000'), ('Greenville', 1131, '42.76960', '-71.79980'), ('Hancock', 0, '42.96667', '-71.98333'), ('Hillsborough', 1842, '43.11430', '-71.89980'), ('Hollis', 2350, '42.73333', '-71.58333'), ('Lyndeborough', 1236, '42.90000', '-71.75000'), ('Mason', 1131, '42.75000', '-71.75000'), ('Milford', 8293, '42.83400', '-71.66180'), ('Mont Vernon', 8293, '42.90000', '-71.66667'), ('New Boston', 1236, '42.96667', '-71.68333'), ('New Ipswich', 1131, '42.75000', '-71.85000'), ('Peterborough', 2944, '42.87660', '-71.96230'), ('Sharon', 2944, '42.81667', '-71.90000'), ('Temple', 1131, '42.81667', '-71.83333'), ('Weare', 1627, '43.10000', '-71.73333'), ('Wilton', 1236, '42.84690', '-71.73680'), ('Windsor', 1389, '43.06667', '-71.96667')], 'partOfState': '', 'wfo': 'BOX'}, +'NJZ001': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Andover', 0, '40.98000', '-74.74000'), ('Beemerville', 0, '41.21029', '-74.69137'), ('Branchville', 0, '41.14670', '-74.74960'), ('Crandon Lakes', 0, '41.12420', '-74.84030'), ('Five Points', 0, '41.08610', '-74.85810'), ('Flatbrookville', 0, '41.10030', '-74.96390'), ('Franklin', 0, '41.11050', '-74.58980'), ('Greendell', 0, '40.97390', '-74.82140'), ('Hainesville', 0, '41.25190', '-74.80330'), ('Hamburg', 0, '41.14880', '-74.57470'), ('Highland Lake', 0, '41.17660', '-74.45700'), ('High Point', 0, '41.32060', '-74.66190'), ('Hopatcong', 0, '40.95610', '-74.65770'), ('La Fayette', 0, '41.09729', '-74.68663'), ('Lake Mohawk', 0, '41.01840', '-74.66040'), ('Lake Windsor', 0, '41.16600', '-74.64300'), ('Montague', 0, '41.30310', '-74.79390'), ('Newton', 0, '41.05000', '-74.75000'), ('Ogdensburg', 0, '41.07500', '-74.59790'), ('Stanhope', 0, '40.90280', '-74.70940'), ('Sussex', 0, '41.21000', '-74.61000'), ('Vernon Valley', 0, '41.23680', '-74.48750'), ('Wantage', 0, '41.24400', '-74.55000')], 'partOfState': 'northwest', 'wfo': 'PHI'}, +'NJZ002': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bloomingdale', 7610, '41.02670', '-74.33450'), ('Pompton Lakes', 10640, '41.00300', '-74.28590'), ('Ringwood', 12396, '41.11150', '-74.27480'), ('Wanaque', 10266, '41.04320', '-74.29060'), ('West Milford', 26410, '41.10610', '-74.39630')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ004': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Clifton', 78672, '40.86400', '-74.15760'), ('Haledon', 8252, '40.93680', '-74.18900'), ('Hawthorne', 18218, '40.95670', '-74.15900'), ('Little Falls', 10855, '40.87550', '-74.21850'), ('North Haledon', 7920, '40.96190', '-74.18630'), ('Passaic', 67861, '40.85730', '-74.12940'), ('Paterson', 149222, '40.91450', '-74.16340'), ('Prospect Park', 5779, '40.93710', '-74.17260'), ('Totowa', 9892, '40.90480', '-74.22210'), ('Wayne', 54069, '40.94590', '-74.24550'), ('West Paterson', 10987, '40.88920', '-74.19560')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ006': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bayonne', 61842, '40.66500', '-74.11050'), ('East Newark', 2377, '40.75030', '-74.16330'), ('Guttenberg', 10807, '40.79270', '-74.00490'), ('Harrison', 14424, '40.74350', '-74.15340'), ('Hoboken', 38577, '40.74260', '-74.02880'), ('Jersey City', 240055, '40.71130', '-74.06500'), ('Kearny', 40513, '40.75130', '-74.11970'), ('North Bergen', 48414, '40.79260', '-74.02580'), ('Secaucus', 15931, '40.78110', '-74.06480'), ('Union City', 67088, '40.76710', '-74.03250'), ('Weehawken', 12385, '40.76870', '-74.01890'), ('West New York', 45768, '40.78590', '-74.00980')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ006': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bayonne', 61842, '40.66500', '-74.11050'), ('East Newark', 2377, '40.75030', '-74.16330'), ('Guttenberg', 10807, '40.79270', '-74.00490'), ('Harrison', 14424, '40.74350', '-74.15340'), ('Hoboken', 38577, '40.74260', '-74.02880'), ('Jersey City', 240055, '40.71130', '-74.06500'), ('Kearny', 40513, '40.75130', '-74.11970'), ('North Bergen', 48414, '40.79260', '-74.02580'), ('Secaucus', 15931, '40.78110', '-74.06480'), ('Union City', 67088, '40.76710', '-74.03250'), ('Weehawken', 12385, '40.76870', '-74.01890'), ('West New York', 45768, '40.78590', '-74.00980')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ007': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Allamuchy-Panther Valley', 0, '40.91210', '-74.83190'), ('Alpha', 0, '40.65980', '-75.15750'), ('Beattyestown', 0, '40.81920', '-74.85550'), ('Belvidere', 0, '40.82810', '-75.07320'), ('Blairstown', 0, '40.98000', '-74.98000'), ('Brass Castle', 0, '40.76080', '-75.01220'), ('Columbia', 0, '40.92610', '-75.09310'), ('Great Meadows-Vienna', 0, '40.87080', '-74.88980'), ('Hackettstown', 0, '40.85380', '-74.82540'), ('Harmony', 0, '40.74670', '-75.13780'), ('Hope', 0, '40.91110', '-74.96780'), ('Millbrook', 0, '41.07330', '-74.96330'), ('Oxford', 0, '40.81210', '-74.99580'), ('Phillipsburg', 0, '40.68890', '-75.18280'), ('Pleasant Valley', 0, '40.75140', '-75.00860'), ('Roxburg', 0, '40.78000', '-75.10000'), ('Washington', 0, '40.75930', '-74.98290')], 'partOfState': 'northwest', 'wfo': 'PHI'}, +'NJZ008': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Boonton', 0, '40.90510', '-74.40950'), ('Budd Lake', 0, '40.87330', '-74.73710'), ('Butler', 0, '40.99950', '-74.34630'), ('Chatham', 0, '40.74040', '-74.38540'), ('Chester', 0, '40.78600', '-74.69290'), ('Dover', 0, '40.88590', '-74.55820'), ('East Hanover', 0, '40.81990', '-74.36520'), ('Florham Park', 0, '40.77720', '-74.39030'), ('Green Pond', 0, '41.01720', '-74.47810'), ('Hanover Township', 0, '40.81890', '-74.43050'), ('Kinnelon', 0, '40.99110', '-74.37200'), ('Lake Telemark', 0, '40.96130', '-74.49680'), ('Lincoln Park', 0, '40.92320', '-74.29380'), ('Long Valley', 0, '40.78540', '-74.76840'), ('Madison', 0, '40.75870', '-74.41610'), ('Mendham', 0, '40.77450', '-74.60170'), ('Millington', 0, '40.67720', '-74.51810'), ('Morris Plains', 0, '40.83610', '-74.48140'), ('Morristown', 0, '40.79000', '-74.48000'), ('Mountain Lakes', 0, '40.88730', '-74.44080'), ('Mount Arlington', 0, '40.91440', '-74.63990'), ('Netcong', 0, '40.89750', '-74.70430'), ('Parsippany', 0, '40.85940', '-74.42390'), ('Pequannock Township', 0, '40.96330', '-74.30370'), ('Riverdale', 2498, '40.99520', '-74.31380'), ('Rockaway', 0, '40.90040', '-74.51360'), ('Succasunna', 0, '40.85540', '-74.65290'), ('Victory Lakes', 0, '40.87620', '-74.54430'), ('Wharton', 0, '40.89810', '-74.58010'), ('White Meadow Lake', 0, '40.92350', '-74.51110')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'NJZ009': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Annandale', 0, '40.64500', '-74.89110'), ('Bloomsbury', 0, '40.65300', '-75.08560'), ('Califon', 0, '40.71920', '-74.83680'), ('Clinton', 0, '40.63530', '-74.91230'), ('Flemington', 0, '40.50910', '-74.86030'), ('Frenchtown', 0, '40.52580', '-75.05630'), ('Glen Gardner', 0, '40.69900', '-74.94120'), ('Hampton', 0, '40.70870', '-74.96780'), ('High Bridge', 0, '40.66840', '-74.89570'), ('Lambertville', 0, '40.36800', '-74.94330'), ('Lebanon', 0, '40.64390', '-74.83510'), ('Milford', 0, '40.56820', '-75.09010'), ('Sand Brook', 0, '40.46920', '-74.91720'), ('Sergeantsville', 0, '40.44580', '-74.94390'), ('Stockton', 0, '40.40540', '-74.97750'), ('White House Station', 0, '40.61620', '-74.77240')], 'partOfState': 'northwest', 'wfo': 'PHI'}, +'NJZ010': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Basking Ridge', 0, '40.70610', '-74.54970'), ('Belle Mead', 0, '40.46670', '-74.66110'), ('Bernardsville', 0, '40.73060', '-74.59290'), ('Bound Brook', 0, '40.56750', '-74.53770'), ('Cloverhill', 0, '40.48810', '-74.78250'), ('Far Hills', 0, '40.69040', '-74.62210'), ('Flagtown', 0, '40.51690', '-74.68470'), ('Manville', 0, '40.54160', '-74.58930'), ('Martinsville', 0, '40.60110', '-74.55940'), ('Millstone', 0, '40.49930', '-74.59130'), ('North Plainfield', 0, '40.62120', '-74.44010'), ('Peapack And Gladstone', 0, '40.71660', '-74.65700'), ('Raritan', 0, '40.57200', '-74.64180'), ('Skillman', 0, '40.42000', '-74.71500'), ('Somerset', 0, '40.49760', '-74.48900'), ('Somerville', 0, '40.57000', '-74.61000'), ('South Bound Brook', 0, '40.55400', '-74.52810'), ('Watchung', 0, '40.64390', '-74.43770')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'NJZ012': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Avenel', 0, '40.58250', '-74.27370'), ('Carteret', 0, '40.58360', '-74.22880'), ('Clearbrook Park', 0, '40.30960', '-74.46500'), ('Colonia', 0, '40.59260', '-74.31580'), ('Concordia', 0, '40.31090', '-74.44860'), ('Dayton', 0, '40.38260', '-74.51030'), ('Dunellen', 0, '40.58940', '-74.46540'), ('East Brunswick', 0, '40.42770', '-74.41650'), ('Edison', 0, '40.52880', '-74.36930'), ('Fords', 0, '40.54210', '-74.31220'), ('Heathcote', 0, '40.38860', '-74.57620'), ('Helmetta', 0, '40.37660', '-74.42440'), ('Highland Park', 0, '40.50030', '-74.42840'), ('Iselin', 0, '40.57020', '-74.31670'), ('Jamesburg', 0, '40.34900', '-74.44020'), ('Kendall Park', 0, '40.41340', '-74.56260'), ('Laurence Harbor', 0, '40.44790', '-74.24950'), ('Madison Park', 0, '40.44620', '-74.29530'), ('Metuchen', 0, '40.54190', '-74.36340'), ('Middlesex', 0, '40.57370', '-74.50210'), ('Milltown', 0, '40.45010', '-74.43470'), ('Monmouth Junction', 0, '40.38000', '-74.54520'), ('New Brunswick', 0, '40.48000', '-74.44000'), ('North Brunswick', 0, '40.44850', '-74.47760'), ('Old Bridge', 0, '40.39290', '-74.33000'), ('Perth Amboy', 0, '40.52020', '-74.27210'), ('Port Reading', 0, '40.56460', '-74.24700'), ('Rossmoor', 0, '40.33650', '-74.47390'), ('Sayreville', 0, '40.46560', '-74.32210'), ('Sewaren', 0, '40.55080', '-74.26090'), ('Society Hill', 0, '40.53400', '-74.45830'), ('South Amboy', 0, '40.48550', '-74.27720'), ('South Brunswick', 0, '40.40000', '-74.54170'), ('South Plainfield', 0, '40.57540', '-74.41530'), ('South River', 0, '40.44530', '-74.37840'), ('Spotswood', 0, '40.39390', '-74.39050'), ('Woodbridge', 0, '40.55470', '-74.28580')], 'partOfState': 'northern', 'wfo': 'PHI'}, +'NJZ013': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Adelphia', 0, '40.21810', '-74.25670'), ('Allentown', 0, '40.17560', '-74.58690'), ('Clarksburg', 0, '40.18860', '-74.44110'), ('Cliffwood Beach', 0, '40.44260', '-74.21800'), ('Collingwood Park', 0, '40.22220', '-74.13420'), ('Cream Ridge', 0, '40.13500', '-74.52440'), ('East Freehold', 0, '40.26870', '-74.24040'), ('Englishtown', 0, '40.29650', '-74.36060'), ('Farmingdale', 0, '40.19850', '-74.17140'), ('Freehold', 0, '40.25880', '-74.27560'), ('Freewood Acres', 0, '40.16890', '-74.23830'), ('Holmdel', 0, '40.34500', '-74.18440'), ('Howell', 0, '40.19170', '-74.20000'), ('Imlaystown', 0, '40.16750', '-74.51560'), ('Keansburg', 0, '40.45000', '-74.13000'), ('Keyport', 0, '40.43200', '-74.20150'), ('Leonardo', 0, '40.41920', '-74.06060'), ('Lincroft', 0, '40.34140', '-74.12520'), ('Manalapan', 0, '40.25720', '-74.39610'), ('Marlboro', 0, '40.31530', '-74.24670'), ('Matawan', 0, '40.41220', '-74.23790'), ('Middletown', 0, '40.39420', '-74.11750'), ('Morganville', 0, '40.37630', '-74.24470'), ('North Middletown', 0, '40.43960', '-74.11930'), ('Port Monmouth', 0, '40.43220', '-74.10140'), ('Red Bank', 0, '40.34730', '-74.06750'), ('Robertsville', 0, '40.34030', '-74.29740'), ('Roosevelt', 0, '40.22130', '-74.47420'), ('Shrewsbury', 0, '40.32660', '-74.05970'), ('Strathmore', 0, '40.40280', '-74.21890'), ('Tinton Falls', 0, '40.27240', '-74.08920'), ('Union Beach', 0, '40.44720', '-74.16910'), ('West Freehold', 0, '40.23300', '-74.29550'), ('Yorketown', 0, '40.30780', '-74.33800')], 'partOfState': 'central', 'wfo': 'PHI'}, +'NJZ014': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Allenhurst', 0, '40.23600', '-74.00250'), ('Asbury Park', 0, '40.22310', '-74.01140'), ('Avon-By-the-sea', 0, '40.19100', '-74.01520'), ('Belmar', 0, '40.18040', '-74.02550'), ('Bradley Beach', 0, '40.20170', '-74.01210'), ('Brielle', 0, '40.10460', '-74.06290'), ('Deal', 0, '40.24980', '-73.99730'), ('Eatontown', 0, '40.29150', '-74.05510'), ('Elberon', 0, '40.26920', '-73.99220'), ('Fair Haven', 0, '40.36050', '-74.03780'), ('Highlands', 0, '40.40440', '-73.99080'), ('Interlaken', 0, '40.23430', '-74.01590'), ('Little Silver', 0, '40.33500', '-74.03500'), ('Loch Arbour', 0, '40.23180', '-74.00140'), ('Long Branch', 0, '40.29670', '-73.98920'), ('Manasquan', 0, '40.11280', '-74.03700'), ('Monmouth Beach', 0, '40.33590', '-73.98640'), ('Neptune City', 0, '40.20060', '-74.03310'), ('Oakhurst', 0, '40.26170', '-74.02720'), ('Ocean Grove', 0, '40.21180', '-74.00960'), ('Oceanport', 0, '40.31500', '-74.02040'), ('Rumson', 0, '40.36270', '-74.00390'), ('Sandy Hook', 0, '40.45495', '-73.99701'), ('Sea Girt', 0, '40.12920', '-74.03450'), ('Shark River Hills', 0, '40.19360', '-74.04820'), ('South Belmar', 0, '40.17010', '-74.02620'), ('Spring Lake', 0, '40.15270', '-74.02740'), ('Spring Lake Heights', 0, '40.15220', '-74.04230'), ('Wanamassa', 0, '40.23670', '-74.02920'), ('West Belmar', 0, '40.17020', '-74.03720'), ('West Long Branch', 0, '40.29000', '-74.01830')], 'partOfState': 'central', 'wfo': 'PHI'}, +'NJZ015': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Edinburg', 0, '40.25810', '-74.61640'), ('Ewing', 0, '40.26540', '-74.80120'), ('Hightstown', 0, '40.26970', '-74.52410'), ('Hopewell', 0, '40.38900', '-74.76400'), ('Lawrenceville', 0, '40.30140', '-74.73020'), ('Mercerville-Hamilton Square', 0, '40.23070', '-74.67170'), ('Pennington', 0, '40.32500', '-74.79210'), ('Princeton', 0, '40.35220', '-74.65700'), ('Princeton Junction', 0, '40.32030', '-74.62370'), ('Princeton North', 0, '40.36140', '-74.64810'), ('Trenton', 0, '40.22170', '-74.75610'), ('White Horse', 0, '40.19080', '-74.70450'), ('Windsor', 0, '40.24220', '-74.58170'), ('Yardville-Groveville', 0, '40.18120', '-74.66770')], 'partOfState': 'central', 'wfo': 'PHI'}, +'NJZ016': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Alloway', 0, '39.56330', '-75.34670'), ('Carneys Point', 0, '39.70870', '-75.47240'), ('Centerton', 0, '39.52420', '-75.16720'), ('Elmer', 0, '39.59110', '-75.17380'), ('Hancocks Bridge', 0, '39.50530', '-75.46190'), ('Hope Creek', 0, '39.47210', '-75.53340'), ('Olivet', 0, '39.53970', '-75.17500'), ('Penns Grove', 0, '39.72810', '-75.46800'), ('Pennsville', 0, '39.65540', '-75.51070'), ('Quinton', 0, '39.54550', '-75.41300'), ('Salem', 0, '39.56950', '-75.46760'), ('Woodstown', 0, '39.65100', '-75.32700')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ017': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Beckett', 0, '39.75390', '-75.35790'), ('Clayton', 0, '39.65790', '-75.08790'), ('Deptford', 0, '39.82700', '-75.15500'), ('Franklinville', 0, '39.61730', '-75.07680'), ('Gibbstown', 0, '39.82430', '-75.27980'), ('Glassboro', 0, '39.70150', '-75.11290'), ('Malaga', 0, '39.57290', '-75.05260'), ('Monroe Township', 0, '39.66940', '-74.98360'), ('Mullica Hill', 0, '39.73620', '-75.22460'), ('National Park', 0, '39.86710', '-75.18020'), ('Newfield', 0, '39.54890', '-75.02200'), ('Oak Valley', 0, '39.80590', '-75.15910'), ('Paulsboro', 0, '39.83550', '-75.24180'), ('Pitman', 0, '39.73130', '-75.12950'), ('Swedesboro', 0, '39.74810', '-75.31140'), ('Turnersville', 0, '39.76540', '-75.06210'), ('Victory Lakes', 0, '39.63290', '-74.96650'), ('Wenonah', 0, '39.79170', '-75.14850'), ('West Deptford', 0, '39.83340', '-75.19960'), ('Westville', 0, '39.86800', '-75.12750'), ('Williamstown', 0, '39.68570', '-74.98390'), ('Woodbury', 0, '39.83730', '-75.15290'), ('Woodbury Heights', 0, '39.81700', '-75.15520')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ018': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Atco', 0, '39.76980', '-74.88740'), ('Audubon', 0, '39.88970', '-75.07280'), ('Barrington', 0, '39.87040', '-75.05300'), ('Bellmawr', 0, '39.86590', '-75.09490'), ('Berlin', 0, '39.79400', '-74.93790'), ('Blackwood', 0, '39.79840', '-75.06290'), ('Camden', 0, '39.93590', '-75.10840'), ('Cherry Hill', 0, '39.90230', '-74.99610'), ('Chesilhurst', 0, '39.73220', '-74.87970'), ('Clementon', 0, '39.80420', '-74.98580'), ('Collingswood', 0, '39.91620', '-75.07500'), ('Gibbsboro', 0, '39.83350', '-74.96640'), ('Glendora', 0, '39.84040', '-75.06910'), ('Gloucester City', 0, '39.89240', '-75.11780'), ('Greentree', 0, '39.90000', '-74.96000'), ('Haddonfield', 0, '39.89500', '-75.03470'), ('Haddon Heights', 0, '39.87870', '-75.06600'), ('Hi-Nella', 0, '39.83520', '-75.02200'), ('Laurel Springs', 0, '39.82010', '-75.00590'), ('Lawnside', 0, '39.86560', '-75.03060'), ('Lindenwold', 0, '39.81580', '-74.99020'), ('Magnolia', 0, '39.85490', '-75.03550'), ('Merchantville', 0, '39.94990', '-75.05060'), ('Mount Ephraim', 0, '39.88100', '-75.09170'), ('Oaklyn', 0, '39.90190', '-75.08080'), ('Pennsauken', 0, '39.96370', '-75.05620'), ('Pine Hill', 0, '39.78660', '-74.98580'), ('Pine Valley', 0, '39.78840', '-74.97240'), ('Runnemede', 0, '39.85140', '-75.07510'), ('Sicklerville', 0, '39.71730', '-74.96930'), ('Somerdale', 0, '39.84530', '-75.02300'), ('Springdale', 0, '39.88000', '-74.97000'), ('Stratford', 0, '39.82820', '-75.01510'), ('Tavistock', 0, '39.87510', '-75.02840'), ('Voorhees', 0, '39.85010', '-74.95790'), ('Woodlynne', 0, '39.91630', '-75.09580')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ019': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Beverly', 0, '40.06470', '-74.92180'), ('Bordentown', 0, '40.14860', '-74.70950'), ('Browns Mills', 0, '39.97330', '-74.56800'), ('Burlington', 0, '40.07830', '-74.85250'), ('Cinnaminson', 0, '39.99990', '-74.99150'), ('Columbus', 0, '40.07250', '-74.72080'), ('Country Lake Estates', 0, '39.94870', '-74.54110'), ('Crosswicks', 0, '40.15150', '-74.64810'), ('Delanco', 0, '40.04920', '-74.94910'), ('Edgewater Park', 0, '40.05460', '-74.91250'), ('Evesham', 0, '39.87850', '-74.90360'), ('Fieldsboro', 0, '40.13620', '-74.72990'), ('Florence', 0, '40.11000', '-74.79450'), ('Fort Dix', 0, '40.00490', '-74.61310'), ('Georgetown', 0, '40.07940', '-74.65360'), ('Jacksonville', 0, '40.05030', '-74.76390'), ('Jobstown', 0, '40.03690', '-74.69330'), ('Leisuretowne', 0, '39.90100', '-74.70450'), ('Lumberton', 0, '39.97000', '-74.80330'), ('Maple Shade', 0, '39.95130', '-74.99570'), ('Marlton', 0, '39.90140', '-74.92930'), ('Marlton Lakes', 0, '39.80900', '-74.89820'), ('McGuire AFB', 0, '40.04130', '-74.58440'), ('Medford', 0, '39.90000', '-74.80000'), ('Medford Lakes', 0, '39.85940', '-74.80580'), ('Moorestown-Lenola', 0, '39.96430', '-74.96600'), ('Mount Holly', 0, '39.99500', '-74.78680'), ('Mount Laurel', 0, '39.93380', '-74.92820'), ('Palmyra', 0, '40.00200', '-75.03490'), ('Pemberton', 0, '39.97140', '-74.68620'), ('Pemberton Heights', 0, '39.95770', '-74.67820'), ('Presidential Lakes', 0, '39.91370', '-74.56490'), ('Riverside', 0, '40.03550', '-74.95590'), ('Riverton', 0, '40.01170', '-75.01490'), ('Westampton', 0, '40.01360', '-74.81790'), ('Willingboro', 0, '40.02710', '-74.88740'), ('Wrightstown', 0, '40.02750', '-74.63100')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ020': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bamber Lake', 0, '39.89500', '-74.31750'), ('Barnegat', 0, '39.75400', '-74.22170'), ('Beachwood', 0, '39.92740', '-74.20270'), ('Brick Township', 0, '40.05750', '-74.11000'), ('Brookville', 0, '39.78170', '-74.30780'), ('Cassville', 0, '40.10440', '-74.38690'), ('Cedar Glen Lakes', 0, '39.95210', '-74.40020'), ('Crestwood Village', 0, '39.95720', '-74.35510'), ('Forked River', 0, '39.84184', '-74.17198'), ('Gilford Park', 0, '39.95410', '-74.13020'), ('Holiday City', 0, '39.95960', '-74.27770'), ('Holiday Heights', 0, '39.94580', '-74.25430'), ('Island Heights', 0, '39.94230', '-74.14960'), ('Jackson', 0, '40.08330', '-74.30830'), ('Jacksons Mills', 0, '40.14780', '-74.32440'), ('Lakehurst', 0, '40.01290', '-74.32080'), ('Lakewood', 0, '40.09480', '-74.21190'), ('Leisure Knoll', 0, '40.01890', '-74.29260'), ('Leisure Village', 0, '40.04490', '-74.18250'), ('Manahawkin', 0, '39.69570', '-74.25390'), ('Mystic Island', 0, '39.56560', '-74.38330'), ('New Egypt', 0, '40.06390', '-74.53190'), ('Ocean Acres', 0, '39.74330', '-74.28130'), ('Ocean Gate', 0, '39.92610', '-74.13510'), ('Old Halfway', 0, '39.86080', '-74.43780'), ('Pine Beach', 0, '39.93550', '-74.17010'), ('Pleasant Plains', 0, '39.99700', '-74.21900'), ('Silver Ridge', 0, '39.96100', '-74.23620'), ('Silverton', 0, '40.00790', '-74.12180'), ('Six Flags Theme Park', 0, '40.14000', '-74.43000'), ('South Toms River', 0, '39.94080', '-74.20970'), ('Toms River', 0, '39.95000', '-74.18000'), ('Tuckerton', 0, '39.59780', '-74.32940'), ('Waretown', 0, '39.78970', '-74.19380'), ('Warren Grove', 0, '39.74640', '-74.37080'), ('Whiting', 0, '39.95440', '-74.37890'), ('Woodruff', 0, '40.06030', '-74.46250')], 'partOfState': '', 'wfo': 'PHI'}, +'NJZ021': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bivalve', 0, '39.23420', '-75.03420'), ('Bricksboro', 0, '39.30170', '-74.97900'), ('Bridgeton', 0, '39.42750', '-75.22810'), ('Cedarville', 0, '39.33250', '-75.20000'), ('Cumberland', 0, '39.37040', '-74.94080'), ('Dividing Creek', 0, '39.27030', '-75.10130'), ('Fairton', 0, '39.37790', '-75.21490'), ('Fortesque', 0, '39.23940', '-75.17160'), ('Greenwich', 0, '39.38970', '-75.33890'), ('Laurel Lake', 0, '39.33000', '-75.03000'), ('Leesburg', 0, '39.25790', '-74.98790'), ('Mauricetown', 0, '39.28490', '-74.99390'), ('Millville', 0, '39.39000', '-75.06000'), ('Newport', 0, '39.29660', '-75.17690'), ('Port Elizabeth', 0, '39.31330', '-74.98110'), ('Port Norris', 0, '39.24800', '-75.04110'), ('Rosenhayn', 0, '39.47890', '-75.13650'), ('Seabrook Farms', 0, '39.50100', '-75.21830'), ('Shiloh', 0, '39.45800', '-75.29800'), ('South Vineland', 0, '39.44580', '-75.02920'), ('Vineland', 0, '39.46480', '-74.99740')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ022': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Absecon', 0, '39.43040', '-74.50390'), ('Buena', 0, '39.52800', '-74.94490'), ('Collings Lakes', 0, '39.59470', '-74.88320'), ('Corbin City', 0, '39.30160', '-74.75400'), ('Dorothy', 0, '39.40060', '-74.82390'), ('Egg Harbor City', 0, '39.54980', '-74.61750'), ('Elwood-Magnolia', 0, '39.57750', '-74.71630'), ('English Creek', 0, '39.34920', '-74.67110'), ('Estell Manor', 0, '39.37480', '-74.77130'), ('Folsom', 0, '39.59190', '-74.84720'), ('Hammonton', 0, '39.64120', '-74.78620'), ('Linwood', 0, '39.34220', '-74.57030'), ('Mays Landing', 0, '39.45600', '-74.72710'), ('Mizpah', 0, '39.48670', '-74.83610'), ('Northfield', 0, '39.37010', '-74.55410'), ('Pleasantville', 0, '39.39560', '-74.52290'), ('Pomona', 0, '39.46720', '-74.54770'), ('Port Republic', 0, '39.52790', '-74.49170'), ('Weymouth', 0, '39.51930', '-74.77780')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ023': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Belleplain Forest', 0, '39.26860', '-74.86690'), ('Cape May Court House', 0, '39.07990', '-74.82390'), ('Dennisville', 0, '39.19310', '-74.82560'), ('Eldora', 0, '39.21530', '-74.90640'), ('Erma', 0, '38.99840', '-74.89480'), ('Goshen', 0, '39.14140', '-74.85330'), ('Green Creek', 0, '39.04610', '-74.90170'), ('Rio Grande', 0, '39.02200', '-74.87770'), ('Villas', 0, '39.01560', '-74.93670'), ('Whitesboro-Burleigh', 0, '39.04580', '-74.86580'), ('Woodbine', 0, '39.22790', '-74.80850')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ024': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Avalon', 0, '39.09170', '-74.73700'), ('Beesleys Point', 0, '39.27840', '-74.63700'), ('Cape May', 0, '38.94000', '-74.90000'), ('Marmora', 0, '39.26670', '-74.64530'), ('North Cape May', 0, '38.97630', '-74.95170'), ('North Wildwood', 0, '39.00430', '-74.79980'), ('Ocean City', 0, '39.26960', '-74.60340'), ('Sea Isle City', 0, '39.15240', '-74.69780'), ('Seaville', 0, '39.20830', '-74.70440'), ('Stone Harbor', 0, '39.05080', '-74.75830'), ('Strathmere', 0, '39.19610', '-74.65730'), ('West Cape May', 0, '38.94140', '-74.93790'), ('West Wildwood', 0, '39.00010', '-74.82430'), ('Wildwood', 0, '38.98890', '-74.82030'), ('Wildwood Crest', 0, '38.97240', '-74.83880')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ025': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Atlantic City', 0, '39.36000', '-74.44000'), ('Brigantine', 0, '39.40210', '-74.37900'), ('Longport', 0, '39.31170', '-74.52550'), ('Margate City', 0, '39.32940', '-74.50660'), ('Somers Point', 0, '39.31920', '-74.60030'), ('Ventnor City', 0, '39.34190', '-74.48320')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ026': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Barnegat Light', 0, '39.75180', '-74.11120'), ('Bay Head', 0, '40.07020', '-74.04870'), ('Beach Haven', 0, '39.56410', '-74.24530'), ('Beach Haven West', 0, '39.67020', '-74.23340'), ('Harvey Cedars', 0, '39.69960', '-74.14210'), ('Lavallette', 0, '39.96910', '-74.07240'), ('Mantoloking', 0, '40.04530', '-74.04960'), ('North Beach Haven', 0, '39.60020', '-74.21190'), ('Point Pleasant', 0, '40.07840', '-74.07090'), ('Point Pleasant Beach', 0, '40.09000', '-74.05000'), ('Seaside Heights', 0, '39.94310', '-74.07650'), ('Ship Bottom', 0, '39.64510', '-74.18330'), ('Surf City', 0, '39.66230', '-74.16920')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ027': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Atsion', 0, '39.74250', '-74.72640'), ('Bass River State Forest', 0, '39.63390', '-74.40750'), ('Batsto', 0, '39.64000', '-74.64000'), ('Chatsworth', 0, '39.82000', '-74.52000'), ('New Gretna', 0, '39.59220', '-74.45140'), ('Penn State Forest', 0, '39.74390', '-74.46030'), ('Shamong', 0, '39.77500', '-74.70800'), ('Tabernacle', 0, '39.84300', '-74.71000'), ('Wading River', 0, '39.61530', '-74.50440'), ('Wharton State Forest', 0, '39.73000', '-74.63000')], 'partOfState': 'southern', 'wfo': 'PHI'}, +'NJZ103': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Allendale', 6699, '41.03320', '-74.13280'), ('Elmwood Park', 18925, '40.90440', '-74.11970'), ('Fair Lawn', 31637, '40.93600', '-74.11800'), ('Franklin Lakes', 10422, '41.00690', '-74.20800'), ('Glen Rock', 11546, '40.95920', '-74.12540'), ('Ho-Ho-kus', 4060, '40.99960', '-74.09720'), ('Midland Park', 0, '40.99480', '-74.14220'), ('Oakland', 12466, '41.03140', '-74.24040'), ('Paramus', 25737, '40.94510', '-74.07150'), ('Ramsey', 14351, '41.05920', '-74.14650'), ('Ridgewood', 24936, '40.98110', '-74.11390'), ('Saddle River', 3201, '41.02630', '-74.09890'), ('Upper Saddle River', 7741, '41.06340', '-74.10050'), ('Waldwick', 9622, '41.01290', '-74.12510'), ('Wyckoff', 16508, '40.99780', '-74.16640')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ104': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Alpine', 2183, '40.95800', '-73.92050'), ('Bergenfield', 26247, '40.92390', '-73.99860'), ('Bogota', 8249, '40.87530', '-74.02920'), ('Carlstadt', 5917, '40.82450', '-74.06390'), ('Cliffside Park', 23007, '40.82160', '-73.98850'), ('Closter', 8383, '40.97270', '-73.96050'), ('Cresskill', 7746, '40.93990', '-73.95890'), ('Demarest', 4845, '40.95620', '-73.95770'), ('Dumont', 17503, '40.94550', '-73.99260'), ('East Rutherford', 8716, '40.81750', '-74.08440'), ('Edgewater', 7677, '40.82140', '-73.97840'), ('Emerson', 7197, '40.97500', '-74.02370'), ('Englewood', 26203, '40.89240', '-73.97430'), ('Englewood Cliffs', 5322, '40.88370', '-73.94760'), ('Fairview', 13255, '40.81750', '-74.00160'), ('Fort Lee', 0, '40.85040', '-73.97130'), ('Garfield', 29786, '40.87980', '-74.10850'), ('Hackensack', 42677, '40.88930', '-74.04610'), ('Harrington Park', 4740, '40.98930', '-73.98000'), ('Hasbrouck Heights', 11662, '40.86080', '-74.07420'), ('Haworth', 3390, '40.96170', '-73.99890'), ('Hillsdale', 10087, '41.00820', '-74.04370'), ('Leonia', 8914, '40.86310', '-73.99160'), ('Little Ferry', 10800, '40.84570', '-74.03950'), ('Lodi', 23971, '40.87900', '-74.08120'), ('Lyndhurst', 19383, '40.79680', '-74.11340'), ('Maywood', 9523, '40.90280', '-74.06380'), ('Montvale', 7034, '41.05220', '-74.04910'), ('Moonachie', 2754, '40.84240', '-74.05920'), ('New Milford', 16400, '40.93410', '-74.01980'), ('North Arlington', 15181, '40.79000', '-74.12700'), ('Northvale', 4460, '41.00980', '-73.95010'), ('Norwood', 5751, '40.99410', '-73.95170'), ('Old Tappan', 5482, '41.01620', '-73.98300'), ('Oradell', 8047, '40.95500', '-74.03100'), ('Palisades Park', 17073, '40.84690', '-73.99730'), ('Park Ridge', 8708, '41.03580', '-74.04150'), ('Ridgefield', 10830, '40.83140', '-74.01570'), ('Ridgefield Park', 12873, '40.85460', '-74.02050'), ('River Edge', 10946, '40.92720', '-74.04000'), ('River Vale', 9449, '41.01360', '-74.00700'), ('Rochelle Park', 5528, '40.90640', '-74.07840'), ('Rockleigh', 391, '41.00200', '-73.93550'), ('Rutherford', 18110, '40.81990', '-74.10710'), ('Saddle Brook', 13155, '40.90420', '-74.09550'), ('Teaneck', 39260, '40.88970', '-74.01210'), ('Tenafly', 13806, '40.91710', '-73.95520'), ('Teterboro', 18, '40.85350', '-74.06080'), ('Wallington', 11583, '40.85310', '-74.10680'), ('Washington Township', 9245, '40.98900', '-74.06500'), ('Westwood', 10999, '40.98840', '-74.03110'), ('Woodcliff Lake', 5745, '41.02560', '-74.06120'), ('Wood-Ridge', 7644, '40.85040', '-74.08770')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ104': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Alpine', 2183, '40.95800', '-73.92050'), ('Bergenfield', 26247, '40.92390', '-73.99860'), ('Bogota', 8249, '40.87530', '-74.02920'), ('Carlstadt', 5917, '40.82450', '-74.06390'), ('Cliffside Park', 23007, '40.82160', '-73.98850'), ('Closter', 8383, '40.97270', '-73.96050'), ('Cresskill', 7746, '40.93990', '-73.95890'), ('Demarest', 4845, '40.95620', '-73.95770'), ('Dumont', 17503, '40.94550', '-73.99260'), ('East Rutherford', 8716, '40.81750', '-74.08440'), ('Edgewater', 7677, '40.82140', '-73.97840'), ('Emerson', 7197, '40.97500', '-74.02370'), ('Englewood', 26203, '40.89240', '-73.97430'), ('Englewood Cliffs', 5322, '40.88370', '-73.94760'), ('Fairview', 13255, '40.81750', '-74.00160'), ('Fort Lee', 0, '40.85040', '-73.97130'), ('Garfield', 29786, '40.87980', '-74.10850'), ('Hackensack', 42677, '40.88930', '-74.04610'), ('Harrington Park', 4740, '40.98930', '-73.98000'), ('Hasbrouck Heights', 11662, '40.86080', '-74.07420'), ('Haworth', 3390, '40.96170', '-73.99890'), ('Hillsdale', 10087, '41.00820', '-74.04370'), ('Leonia', 8914, '40.86310', '-73.99160'), ('Little Ferry', 10800, '40.84570', '-74.03950'), ('Lodi', 23971, '40.87900', '-74.08120'), ('Lyndhurst', 19383, '40.79680', '-74.11340'), ('Maywood', 9523, '40.90280', '-74.06380'), ('Montvale', 7034, '41.05220', '-74.04910'), ('Moonachie', 2754, '40.84240', '-74.05920'), ('New Milford', 16400, '40.93410', '-74.01980'), ('North Arlington', 15181, '40.79000', '-74.12700'), ('Northvale', 4460, '41.00980', '-73.95010'), ('Norwood', 5751, '40.99410', '-73.95170'), ('Old Tappan', 5482, '41.01620', '-73.98300'), ('Oradell', 8047, '40.95500', '-74.03100'), ('Palisades Park', 17073, '40.84690', '-73.99730'), ('Park Ridge', 8708, '41.03580', '-74.04150'), ('Ridgefield', 10830, '40.83140', '-74.01570'), ('Ridgefield Park', 12873, '40.85460', '-74.02050'), ('River Edge', 10946, '40.92720', '-74.04000'), ('River Vale', 9449, '41.01360', '-74.00700'), ('Rochelle Park', 5528, '40.90640', '-74.07840'), ('Rockleigh', 391, '41.00200', '-73.93550'), ('Rutherford', 18110, '40.81990', '-74.10710'), ('Saddle Brook', 13155, '40.90420', '-74.09550'), ('Teaneck', 39260, '40.88970', '-74.01210'), ('Tenafly', 13806, '40.91710', '-73.95520'), ('Teterboro', 18, '40.85350', '-74.06080'), ('Wallington', 11583, '40.85310', '-74.10680'), ('Washington Township', 9245, '40.98900', '-74.06500'), ('Westwood', 10999, '40.98840', '-74.03110'), ('Woodcliff Lake', 5745, '41.02560', '-74.06120'), ('Wood-Ridge', 7644, '40.85040', '-74.08770')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ105': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Bloomfield', 47683, '40.81060', '-74.18690'), ('Caldwell', 7549, '40.83840', '-74.27790'), ('Cedar Grove', 12300, '40.85610', '-74.22950'), ('East Orange', 69824, '40.76590', '-74.21210'), ('Fairfield', 7063, '40.88360', '-74.30630'), ('Glen Ridge', 7271, '40.80310', '-74.20500'), ('Irvington', 60695, '40.72450', '-74.23250'), ('Livingston', 27391, '40.78560', '-74.32950'), ('Maplewood', 23868, '40.73310', '-74.27190'), ('Millburn', 19765, '40.74030', '-74.32450'), ('Montclair', 38977, '40.82450', '-74.21160'), ('North Caldwell', 7375, '40.86340', '-74.25910'), ('Orange', 32868, '40.76820', '-74.23640'), ('Roseland', 5298, '40.82200', '-74.30840'), ('South Orange', 16964, '40.74900', '-74.26160'), ('Verona', 13533, '40.83230', '-74.24270'), ('West Caldwell', 11233, '40.84990', '-74.29830'), ('West Orange', 44943, '40.79290', '-74.26360')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ106': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Belleville', 35928, '40.79490', '-74.16270'), ('Newark', 273546, '40.72410', '-74.17320'), ('Nutley', 27362, '40.81880', '-74.15720')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ106': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Belleville', 35928, '40.79490', '-74.16270'), ('Newark', 273546, '40.72410', '-74.17320'), ('Nutley', 27362, '40.81880', '-74.15720')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ107': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Berkeley Heights', 13407, '40.67550', '-74.42510'), ('Clark', 14597, '40.62100', '-74.31150'), ('Cranford', 22578, '40.65620', '-74.30410'), ('Fanwood', 7174, '40.64180', '-74.38570'), ('Garwood', 4153, '40.65120', '-74.32410'), ('Kenilworth', 7675, '40.67890', '-74.28890'), ('Mountainside', 6602, '40.68060', '-74.36100'), ('New Providence', 11907, '40.70040', '-74.40350'), ('Plainfield', 47829, '40.61530', '-74.41650'), ('Scotch Plains', 22732, '40.63310', '-74.37350'), ('Springfield', 14429, '40.69950', '-74.32500'), ('Summit', 21131, '40.71490', '-74.36540'), ('Union', 54405, '40.69530', '-74.26970'), ('Westfield', 29644, '40.65160', '-74.34420')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ108': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Elizabeth', 120568, '40.66640', '-74.19420'), ('Hillside', 21747, '40.69620', '-74.23030'), ('Linden', 39394, '40.62510', '-74.23840'), ('Rahway', 26500, '40.60700', '-74.28140'), ('Roselle', 21274, '40.65210', '-74.26080'), ('Roselle Park', 13281, '40.66560', '-74.26710')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NJZ108': {'fullStateName': 'New Jersey', 'state': 'NJ', 'cities': [('Elizabeth', 120568, '40.66640', '-74.19420'), ('Hillside', 21747, '40.69620', '-74.23030'), ('Linden', 39394, '40.62510', '-74.23840'), ('Rahway', 26500, '40.60700', '-74.28140'), ('Roselle', 21274, '40.65210', '-74.26080'), ('Roselle Park', 13281, '40.66560', '-74.26710')], 'partOfState': 'northeast', 'wfo': 'OKX'}, +'NMZ027': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Queen', 569, '32.19080', '-104.74530')], 'partOfState': 'southeast', 'wfo': 'MAF'}, +'NMZ028': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Artesia', 10692, '32.84750', '-104.42970'), ('Atoka', 10692, '32.76940', '-104.38830'), ('Avalon', 1245, '32.49750', '-104.23610'), ('Carlsbad', 25625, '32.40420', '-104.23660'), ('Cottonwood', 432, '32.92970', '-104.38720'), ('Dayton', 10692, '32.73140', '-104.38470'), ('Hope', 107, '32.81730', '-104.73670'), ('Lakewood', 1245, '32.61780', '-104.35390'), ('Loco Hills', 432, '32.81890', '-103.97640'), ('Loving', 1326, '32.28650', '-104.09600'), ('Malaga', 1326, '32.22390', '-104.07190'), ('Otis', 25625, '32.35110', '-104.16800'), ('Seven Rivers', 1245, '32.59500', '-104.42110'), ('Whites City', 25625, '32.17560', '-104.37610')], 'partOfState': 'southeast', 'wfo': 'MAF'}, +'NMZ029': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Caprock', 683, '33.39190', '-103.71000'), ('Crossroads', 683, '33.51220', '-103.33920'), ('Gladiola', 683, '33.25720', '-103.17940'), ('McDonald', 683, '33.14060', '-103.31690'), ('Tatum', 683, '33.25530', '-103.31530')], 'partOfState': 'southeast', 'wfo': 'MAF'}, +'NMZ033': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Buckeye', 9471, '32.80190', '-103.50530'), ('Halfway', 1326, '32.55170', '-103.73500'), ('Hobbs', 28657, '32.73430', '-103.16280'), ('Humble City', 28657, '32.79500', '-103.21860'), ('Knowles', 28657, '32.84020', '-103.12720'), ('Lovington', 9471, '32.94530', '-103.35030'), ('Maljamar', 9471, '32.85610', '-103.76220'), ('Monument', 28657, '32.62390', '-103.26390'), ('Nadine', 28657, '32.62390', '-103.12690')], 'partOfState': 'southeast', 'wfo': 'MAF'}, +'NMZ034': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bennett', 1996, '32.06770', '-103.21060'), ('Eunice', 2562, '32.44250', '-103.19320'), ('Jal', 1996, '32.11350', '-103.18940'), ('Oil Center', 2562, '32.49690', '-103.26080')], 'partOfState': 'southeast', 'wfo': 'MAF'}, +'NMZ401': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Aldo Leopold Vista', 0, '33.18530', '-108.82880'), ('Buckhorn', 143, '33.03690', '-108.70800'), ('Cliff', 10545, '32.96220', '-108.61010'), ('Gila', 10545, '32.96580', '-108.57610'), ('Gila Hot Springs', 10545, '33.19580', '-108.20640'), ('Gila Riparian Preserve', 0, '33.02300', '-108.54500'), ('Mangas Springs', 0, '32.84000', '-108.51000'), ('Mule Creek', 2840, '33.12190', '-108.95560'), ('Riverside', 0, '32.92880', '-108.59220')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ402': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Arenas Valley', 0, '32.79400', '-108.18420'), ('Bayard', 2534, '32.75758', '-108.13890'), ('Black Canyon Campgrounds', 0, '33.18490', '-108.03350'), ('Camp Thunderbird', 0, '32.96290', '-108.03890'), ('Cherry Creek Campground', 0, '32.90780', '-108.22520'), ('Chloride', 0, '33.33860', '-107.67920'), ('Cobre', 0, '32.78060', '-108.11200'), ('Copperas Vista', 0, '33.11970', '-108.20030'), ('Fierro', 0, '32.84530', '-108.07750'), ('Fort Bayard', 1944, '32.79600', '-108.14860'), ('Hanover', 0, '32.81330', '-108.09060'), ('Iron Creek Campground', 0, '32.90840', '-107.80140'), ('Kingston', 2534, '32.91690', '-107.70500'), ('Lake Roberts', 10545, '33.03480', '-108.16680'), ('Little Walnut Village', 0, '32.83530', '-108.27450'), ('McMillan Campground', 0, '32.92590', '-108.21040'), ('Pinos Altos', 10545, '32.86610', '-108.22140'), ('Poverty Creek', 0, '33.47410', '-107.79790'), ('Rocky Canyon Campground', 0, '33.09680', '-108.01330'), ('Santa Clara', 1944, '32.77530', '-108.15420'), ('Sapillo Campground', 0, '33.01410', '-108.12090'), ('Silver City', 10545, '32.78290', '-108.26680'), ('Tyrone', 10545, '32.70980', '-108.30190'), ('White Signal', 0, '32.55580', '-108.36560'), ('Winston', 527, '33.35300', '-107.64940')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ403': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('City Of Rocks State Park', 0, '32.59130', '-107.97470'), ('Faywood', 0, '32.62630', '-107.87010'), ('Hurley', 1464, '32.69800', '-108.12840'), ('Mimbres', 2534, '32.85610', '-107.97920'), ('North Hurley', 0, '32.72000', '-108.13000'), ('San Juan', 0, '32.76180', '-107.90620'), ('San Lorenzo', 2534, '32.81000', '-107.91940'), ('Sherman', 0, '32.74560', '-107.88740')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ404': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Lordsburg', 3379, '32.34330', '-108.70200'), ('Redrock', 143, '32.68610', '-108.73750'), ('Road Forks', 3379, '32.22320', '-108.95350'), ('Separ', 0, '32.20080', '-108.42170'), ('Shakespeare', 0, '32.32000', '-108.73000'), ('Steins', 0, '32.22850', '-108.99040'), ('Virden', 143, '32.68860', '-109.00200')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ405': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alamo Hueco', 0, '31.44000', '-108.42000'), ('Animas', 3379, '31.95065', '-108.80695'), ('Antelope Wells', 12822, '31.35330', '-108.53330'), ('Big Hatchet Refuge', 0, '31.72070', '-108.42480'), ('Cotton City', 0, '32.08830', '-108.87860'), ('Granite Gap', 0, '32.08140', '-108.98410'), ('Hachita', 3379, '31.91810', '-108.31970'), ('Playas', 0, '31.91430', '-108.53420'), ('Rodeo', 3379, '31.83530', '-109.03060'), ('Windmill', 0, '31.97790', '-108.62510')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ406': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Cloverdale', 0, '31.41690', '-108.92920'), ('Geronimo Campground', 0, '31.51720', '-108.99370')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ407': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Akela', 0, '32.23860', '-107.40950'), ('Columbus', 1765, '31.82890', '-107.64080'), ('Deming', 14116, '32.26170', '-107.75040'), ('Gage', 14116, '32.22940', '-108.08580'), ('Hermanas', 0, '31.85110', '-107.95260'), ('Nutt', 0, '32.57550', '-107.45140'), ('Rock Hound State Park', 0, '32.18740', '-107.61290'), ('Spring Canyon State Park', 0, '32.14560', '-107.62100'), ('Sunshine', 0, '32.13830', '-107.76770'), ('Uvas Valley', 1673, '32.52550', '-107.37580')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ408': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Hillsboro', 527, '32.92220', '-107.56640'), ('Lake Valley', 0, '32.71780', '-107.56860'), ('Monticello', 527, '33.39690', '-107.45000'), ('Placitas', 0, '33.37650', '-107.43220')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'NMZ409': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alamosa Canyon', 0, '33.31000', '-107.29150'), ('Arrey', 1673, '32.84860', '-107.31860'), ('Caballo', 527, '32.97560', '-107.30720'), ('Caballo Lake State Park', 0, '32.90780', '-107.31000'), ('Cuchillo', 527, '33.23590', '-107.36040'), ('Derry', 1673, '32.78810', '-107.28170'), ('Elephant Butte', 7289, '33.18730', '-107.22130'), ('Engle', 0, '33.17660', '-107.03110'), ('Las Palomas', 0, '33.05930', '-107.30000'), ('North Monticello Point', 0, '33.31541', '-107.20062'), ('Rock House', 0, '33.38280', '-107.16850'), ('Truth Or Consequences', 7289, '33.13560', '-107.24810'), ('Upham', 0, '32.88760', '-107.00070'), ('Williamsburg', 527, '33.11610', '-107.29400')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ410': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Garfield', 1673, '32.75690', '-107.26390'), ('Hatch', 1673, '32.66685', '-107.15375'), ('Jornada Range', 0, '32.61580', '-106.74040'), ('Leasburg', 1518, '32.44808', '-106.87934'), ('Placitas', 0, '32.66420', '-107.16980'), ('Radium Springs', 1518, '32.48755', '-106.92119'), ('Rincon', 220, '32.67398', '-107.06624'), ('Salem', 795, '32.71203', '-107.20940')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ411': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Anthony', 7904, '32.00540', '-106.59560'), ('Berino', 0, '32.07020', '-106.62010'), ('Chamberino', 0, '32.03980', '-106.68590'), ('Corralitos', 0, '32.30430', '-107.00310'), ('Dona Ana', 1379, '32.39130', '-106.81530'), ('Dripping Springs', 0, '32.32330', '-106.58380'), ('East Mesa', 0, '32.38185', '-106.72422'), ('Fairacres', 0, '32.30690', '-106.83960'), ('Kilbourne Hole', 0, '31.97170', '-106.96360'), ('La Mesa', 2732, '32.12190', '-106.70720'), ('Las Cruces', 74267, '32.31600', '-106.78000'), ('La Union', 605, '31.94994', '-106.66248'), ('Mesilla', 2180, '32.26917', '-106.80964'), ('Mesquite', 948, '32.16440', '-106.69610'), ('Nmsu Main Campus', 2732, '32.28090', '-106.74890'), ('Organ', 1323, '32.42550', '-106.60120'), ('Picacho', 0, '32.31450', '-106.86370'), ('San Miguel', 0, '32.15416', '-106.73212'), ('Santa Teresa', 2607, '31.85025', '-106.64400'), ('Soledad Canyon', 0, '32.30760', '-106.58560'), ('Sunland Park', 13309, '31.79910', '-106.57720'), ('Talavera', 0, '32.29330', '-106.66580'), ('Vado', 3003, '32.11864', '-106.66215')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ412': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alamogordo', 35582, '32.90524', '-105.95400'), ('Bent', 0, '33.15330', '-105.88280'), ('Boles Acres', 1172, '32.80890', '-105.98630'), ('Burro Flats', 0, '33.00320', '-105.86860'), ('Holloman AFB', 2076, '32.85120', '-106.10620'), ('La Luz', 1615, '32.97809', '-105.94257'), ('Northrup Landing', 0, '32.94320', '-106.41950'), ('Oliver Lee State Park', 0, '32.74820', '-105.91430'), ('Three Rivers', 2864, '33.32140', '-106.07500'), ('Tularosa', 2864, '33.07590', '-106.01970'), ('White Sands National Monument', 0, '32.81210', '-106.26390')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ413': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Aguirre Springs', 0, '32.37300', '-106.55970'), ('Anthony Gap', 0, '32.01060', '-106.52160'), ('Chaparral', 6117, '32.02590', '-106.39950'), ('McGregor Range Base', 0, '32.07810', '-106.17690'), ('Orogrande', 1323, '32.37110', '-106.08390'), ('White Sands Main Post', 1323, '32.38270', '-106.49240')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ414': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('High Rolls', 749, '32.94780', '-105.83840'), ('Mescalero', 1233, '33.15537', '-105.77905'), ('Mountain Park', 0, '32.95300', '-105.82240'), ('Timberon', 309, '32.63830', '-105.69030')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ415': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Apache Summit', 0, '33.22470', '-105.68990'), ('Bluff Springs', 0, '32.83120', '-105.73750'), ('Cloudcroft', 749, '32.95300', '-105.73940'), ('Silver Lake', 0, '33.02040', '-105.63370'), ('Sunspot', 0, '32.79090', '-105.81830')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ416': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Elk Silver', 0, '33.05350', '-105.55890'), ('Lake Mescalero', 0, '33.29400', '-105.68900'), ('Mayhill', 749, '32.88940', '-105.47750'), ('Pinon', 749, '32.61810', '-105.39390'), ('Sacramento', 749, '32.79250', '-105.56000'), ('Sixteen Springs', 0, '32.99290', '-105.55060'), ('Weed', 749, '32.80250', '-105.51670')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ417': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Brokeoff Mountains Wsa', 0, '32.12677', '-104.92905'), ('Cornudas Mountains', 0, '32.07930', '-105.51980'), ('Crow Flats', 0, '32.31000', '-105.11000'), ('Otero Mesa', 0, '32.18000', '-105.80000')], 'partOfState': 'south central', 'wfo': 'EPZ'}, +'NMZ501': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Aztec', 6378, '36.82840', '-108.00460'), ('Bloomfield', 6417, '36.71170', '-107.97740'), ('Burnham', 387, '36.36700', '-108.51700'), ('Cedar Hill', 0, '36.93700', '-107.89000'), ('Chaco Canyon', 2630, '36.06700', '-107.96700'), ('Coyote Canyon', 373, '35.77500', '-108.62000'), ('Farmington', 37844, '36.75470', '-108.18560'), ('Flora Vista', 1383, '36.80210', '-108.08200'), ('Fruitland', 6190, '36.73900', '-108.39500'), ('Kirtland', 6190, '36.73950', '-108.34310'), ('Lake Valley', 2630, '36.09200', '-108.15700'), ('La Plata', 1383, '36.92900', '-108.19000'), ('Naschitti', 360, '36.06220', '-108.68100'), ('Newcomb', 387, '36.28330', '-108.70680'), ('Rattlesnake', 8156, '36.75500', '-108.80100'), ('Sanostee', 429, '36.43480', '-108.87270'), ('Sheep Springs', 360, '36.14300', '-108.70700'), ('Shiprock', 8156, '36.79200', '-108.69600'), ('Standing Rock', 2630, '35.80300', '-108.36000'), ('Toadlena', 387, '36.23700', '-108.89200'), ('Tocito', 429, '36.39900', '-108.78100')], 'partOfState': 'northwest', 'wfo': 'ABQ'}, +'NMZ502': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Crystal', 347, '36.04600', '-108.96600'), ('Navajo', 2097, '35.89630', '-109.03140'), ('Tse Bonito', 261, '35.67500', '-109.04100'), ('Washington Pass', 360, '36.07600', '-108.85800')], 'partOfState': 'northwest', 'wfo': 'ABQ'}, +'NMZ503': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Archuleta', 6417, '36.79400', '-107.70800'), ('Dulce', 2623, '36.93340', '-106.99600'), ('Lumberton', 2623, '36.93000', '-106.93600'), ('Navajo Dam', 0, '36.80000', '-107.61200'), ('Turley', 6417, '36.75300', '-107.76400')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ504': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Blanco Trading Post', 6417, '36.36700', '-107.80000'), ('Counselors', 590, '36.20900', '-107.45700'), ('Crownpoint', 2630, '35.68810', '-108.14610'), ('Cuba', 590, '36.02250', '-106.95420'), ('El Huerfano Trading Post', 6417, '36.41700', '-107.83300'), ('La Jara', 209, '36.08800', '-106.97400'), ('Lindrith', 590, '36.30400', '-107.04400'), ('Nageezi', 296, '36.26700', '-107.74100'), ('Ojo Encino', 590, '35.95600', '-107.34700'), ('Pueblo Pintado', 2630, '35.97700', '-107.67300'), ('Torreon Navajo Mission', 297, '35.79900', '-107.18100')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ505': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Allison', 20209, '35.52400', '-108.78400'), ('Black Rock', 1252, '35.08600', '-108.79000'), ('Chi Chil Tah', 6367, '35.24900', '-108.90700'), ('Church Rock', 1077, '35.53400', '-108.59900'), ('Fence Lake', 1252, '34.65300', '-108.67700'), ('Gallup', 20209, '35.52040', '-108.73540'), ('Gamerco', 20209, '35.57200', '-108.76500'), ('Manuelito', 261, '35.42200', '-108.99300'), ('Mentmore', 20209, '35.51400', '-108.84500'), ('Mexican Springs', 455, '35.78750', '-108.80730'), ('Ojo Caliente', 6367, '34.91700', '-108.96800'), ('Pescado', 1252, '35.10600', '-108.58000'), ('Red Rock State Park', 20209, '35.45400', '-108.75500'), ('Salt Lake', 1802, '34.45300', '-108.76900'), ('Tohatchi', 1037, '35.85020', '-108.75010'), ('Twin Lakes', 1069, '35.70900', '-108.77400'), ('Upper Nutria', 1252, '35.27000', '-108.57000'), ('Whitewater', 1252, '35.26700', '-108.76700'), ('Yah-Ta-hey', 580, '35.62800', '-108.78000'), ('Zuni Pueblo', 6367, '35.07250', '-108.85000')], 'partOfState': 'west central', 'wfo': 'ABQ'}, +'NMZ506': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bluewater Lake', 1891, '35.30000', '-108.08300'), ('Coolidge', 2630, '35.44700', '-108.36300'), ('El Morro', 1891, '35.04400', '-108.32000'), ('Fort Wingate', 20209, '35.46800', '-108.54100'), ('Mariano Lake', 2630, '35.57800', '-108.32100'), ('Marquez', 474, '35.31400', '-107.30200'), ('McGaffey', 20209, '35.37500', '-108.51500'), ('Pinedale', 20209, '35.60400', '-108.44600'), ('Pine Hill', 116, '35.00000', '-108.40000'), ('Prewitt', 1891, '35.36300', '-108.04300'), ('Ramah', 407, '35.13300', '-108.49100'), ('San Mateo', 312, '35.33100', '-107.64300'), ('Thoreau', 1863, '35.40300', '-108.22300')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ507': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Acoma Pueblo', 1035, '34.89600', '-107.58100'), ('Acomita Lake', 312, '35.07020', '-107.61300'), ('Bibo', 474, '35.17400', '-107.38800'), ('Cebolleta', 474, '35.17400', '-107.39600'), ('Cubero', 333, '35.08600', '-107.51800'), ('Encinal', 200, '35.11700', '-107.46400'), ('Grants', 8806, '35.15340', '-107.83830'), ('Laguna Pueblo', 423, '35.04100', '-107.37300'), ('McCartys', 312, '35.06300', '-107.66900'), ('Mesita', 776, '35.01310', '-107.33070'), ('Milan', 1891, '35.18900', '-107.89200'), ('New Laguna', 423, '35.04100', '-107.42100'), ('North Acomita Villiage', 288, '35.06320', '-107.56540'), ('Paguate', 474, '35.13460', '-107.36380'), ('Paraje', 669, '35.04610', '-107.46730'), ('San Fidel', 312, '35.08200', '-107.59900'), ('San Rafael', 8806, '35.11300', '-107.88200'), ('Seama', 333, '35.04740', '-107.52750'), ('Skyline-Ganipa', 1035, '35.03460', '-107.61530')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ508': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Apache Creek', 387, '33.83300', '-108.62400'), ('Aragon', 387, '33.88100', '-108.53800'), ('Datil', 913, '34.14500', '-107.84300'), ('Luna', 387, '33.81900', '-108.95400'), ('Magdalena', 913, '34.11040', '-107.23450'), ('Mogollon', 387, '33.39700', '-108.79400'), ('National Radio Astronomy Obs', 913, '33.87700', '-107.72700'), ('Old Horse Springs', 387, '33.92400', '-108.22700'), ('Omega', 387, '34.32300', '-108.37400'), ('Pietown', 387, '34.29800', '-108.13400'), ('Quemado Lake', 387, '34.33400', '-108.49500'), ('Red Hill', 1802, '34.21900', '-108.87200')], 'partOfState': 'central', 'wfo': 'ABQ'}, +'NMZ509': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alma', 387, '33.37900', '-108.90300'), ('Cruzville', 387, '33.80700', '-108.66500'), ('Glenwood', 387, '33.31700', '-108.88300'), ('Pleasanton', 387, '33.27200', '-108.87200'), ('Reserve', 387, '33.70840', '-108.76120'), ('San Francisco Plaza', 387, '33.69300', '-108.76600')], 'partOfState': 'west central', 'wfo': 'ABQ'}, +'NMZ510': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Brazos', 1199, '36.75100', '-106.56100'), ('Canjilon', 1199, '36.47900', '-106.43700'), ('Canon Plaza', 377, '36.55000', '-106.16700'), ('Cebolla', 1199, '36.53800', '-106.48600'), ('Chama', 1199, '36.89350', '-106.58260'), ('El Vado', 1199, '36.59400', '-106.72800'), ('Ensenada', 1199, '36.72700', '-106.53300'), ('La Puente', 1199, '36.70000', '-106.60000'), ('Las Tablas', 1864, '36.55600', '-106.02900'), ('Los Ojos', 1199, '36.72900', '-106.56900'), ('Los Pinos', 0, '36.98800', '-106.06400'), ('Monero', 0, '36.90200', '-106.85500'), ('Petaca', 301, '36.50800', '-106.01000'), ('Rutheron', 1199, '36.71900', '-106.61100'), ('San Miguel', 0, '36.96100', '-106.16000'), ('Tierra Amarilla', 1199, '36.70000', '-106.54900'), ('Vallecitos', 377, '36.49500', '-106.11600')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ511': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bandelier National', 6045, '35.78300', '-106.26700'), ('Canon', 1953, '35.65700', '-106.73500'), ('Canones', 1953, '35.67400', '-106.75200'), ('Frijoles', 6045, '35.77900', '-106.27100'), ('Gallina', 590, '36.23300', '-106.85000'), ('Jemez Pueblo', 1953, '35.61630', '-106.72620'), ('Jemez Springs', 375, '35.77370', '-106.68840'), ('Los Alamos', 11909, '35.89380', '-106.28390'), ('Regina', 99, '36.18400', '-106.95600'), ('Vallecitos', 1953, '35.66700', '-106.66700'), ('White Rock', 6045, '35.80380', '-106.21040'), ('Zia Pueblo', 646, '35.51390', '-106.72540')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ512': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Amalia', 0, '36.94200', '-105.45400'), ('Arroyo Seco', 1264, '36.51700', '-105.56900'), ('Cerro', 1864, '36.75400', '-105.61200'), ('Chamisal', 301, '36.17670', '-105.74900'), ('Costilla', 0, '36.97600', '-105.53100'), ('Cowles', 1441, '35.81200', '-105.65900'), ('Glorieta', 859, '35.58300', '-105.76900'), ('Lama', 1864, '36.65000', '-105.61800'), ('Llano', 572, '36.14000', '-105.68100'), ('Llano Largo', 572, '36.14100', '-105.65900'), ('Lower Colonias', 1441, '35.54200', '-105.58300'), ('North San Ysidro', 1441, '35.46900', '-105.55300'), ('Pecos', 1441, '35.57500', '-105.67870'), ('Penasco', 572, '36.17120', '-105.69190'), ('Picuris Pueblo', 86, '36.20100', '-105.70900'), ('Questa', 1864, '36.71090', '-105.59270'), ('Rio Lucio', 379, '36.19600', '-105.72500'), ('Rodarte', 572, '36.15200', '-105.67200'), ('Rowe', 1441, '35.49200', '-105.67500'), ('San Cristobal', 1864, '36.59600', '-105.63900'), ('Shady Brook', 4700, '36.37000', '-105.46700'), ('South San Ysidro', 1441, '35.45000', '-105.57700'), ('Tererro', 1441, '35.74200', '-105.67400'), ('Tres Ritos', 242, '36.13100', '-105.51500'), ('Truchas', 2924, '36.04400', '-105.81100'), ('Upper Colonias', 1441, '35.57600', '-105.58400'), ('Vadito', 242, '36.19110', '-105.67710'), ('Valdez', 1264, '36.53400', '-105.58300')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ513': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Red River', 484, '36.70750', '-105.40670')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ514': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ515': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Angel Fire', 1048, '36.39060', '-105.27870'), ('Black Lake', 1048, '36.29800', '-105.25800'), ('Buena Vista', 14565, '35.91400', '-105.24900'), ('Canon', 14565, '35.94300', '-105.36900'), ('Chacon', 1048, '36.14400', '-105.36700'), ('Cleveland', 242, '35.99300', '-105.37000'), ('Eagle Nest', 306, '36.55300', '-105.26080'), ('Elizabethtown', 306, '36.61900', '-105.28400'), ('El Porvenir', 14565, '35.69700', '-105.38200'), ('El Turquillo', 1048, '36.08000', '-105.25100'), ('Gallinas', 14565, '35.67900', '-105.35300'), ('Gascon', 14565, '35.88700', '-105.44600'), ('Guadalupita', 1048, '36.13800', '-105.23800'), ('Holman', 242, '36.03800', '-105.38300'), ('La Cueva', 14565, '35.94200', '-105.24900'), ('Ledoux', 14565, '35.92400', '-105.36100'), ('Luceros', 1048, '36.01600', '-105.22800'), ('Manuelitas', 14565, '35.80100', '-105.27800'), ('Mineral Hill', 14565, '35.61000', '-105.40100'), ('Monte Aplanado', 572, '35.95500', '-105.39400'), ('Mora', 14565, '35.97400', '-105.32900'), ('Ocate', 1048, '36.17600', '-105.04800'), ('Ojo Feliz', 1048, '36.05800', '-105.11800'), ('Rainsville', 14565, '35.97900', '-105.20900'), ('Rociada', 14565, '35.83200', '-105.42000'), ('San Ignacio', 14565, '35.77100', '-105.35400'), ('San Pablo', 14565, '35.54700', '-105.39900'), ('Sapello', 14565, '35.77300', '-105.25300'), ('South Carmen', 14565, '35.89400', '-105.33600'), ('Tierra Monte', 14565, '35.85900', '-105.34700'), ('Ute Park', 306, '36.55800', '-105.11400')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ516': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Arroyo Hondo', 1264, '36.53600', '-105.66900'), ('El Padro', 1264, '36.43200', '-105.57400'), ('Los Cordovas', 2390, '36.38700', '-105.63700'), ('Pilar', 301, '36.27000', '-105.78800'), ('Ranchos De Taos', 2390, '36.36290', '-105.60330'), ('Sunshine Valley', 1864, '36.84200', '-105.65800'), ('Talpa', 2390, '36.34100', '-105.59600'), ('Taos', 4700, '36.38620', '-105.57720'), ('Taos Pueblo', 1264, '36.46930', '-105.55950'), ('Tres Piedras', 1864, '36.64700', '-105.96700')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ517': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abiquiu', 377, '36.20700', '-106.31800'), ('Alcalde', 377, '36.08470', '-106.05840'), ('Buena Vista', 377, '36.20300', '-106.33800'), ('Canoncito', 301, '36.18100', '-105.83200'), ('Canones', 11909, '36.18800', '-106.43900'), ('Chili', 377, '36.10500', '-106.14900'), ('Chimayo', 2924, '35.99880', '-105.92850'), ('Cordova', 2924, '36.00700', '-105.86000'), ('Coyote', 590, '36.16800', '-106.61600'), ('Cundiyo', 95, '35.95900', '-105.89600'), ('Cuyamungue', 421, '35.86980', '-106.00850'), ('Dixon', 301, '36.19900', '-105.88800'), ('El Rancho', 817, '35.88900', '-106.07900'), ('El Rito', 377, '36.34300', '-106.18800'), ('Embudo', 377, '36.20800', '-105.96100'), ('Espanola', 9688, '36.00340', '-106.06930'), ('Ghost Ranch', 11909, '36.33000', '-106.47500'), ('Hernandez', 592, '36.06300', '-106.11900'), ('Jaconita', 343, '35.89250', '-106.03480'), ('La Madera', 377, '36.38700', '-106.04100'), ('Las Placitas', 377, '36.32300', '-106.16200'), ('La Villita', 377, '36.10300', '-106.04800'), ('Lyden', 377, '36.14600', '-106.00500'), ('Medanales', 377, '36.17600', '-106.18300'), ('Nambe', 1246, '35.89300', '-105.98200'), ('Nambe Pueblo', 1246, '35.88800', '-105.96400'), ('Ojo Caliente', 377, '36.30300', '-106.04600'), ('Ojo Sarco', 301, '36.12300', '-105.78300'), ('Pojoaque', 343, '35.89360', '-106.02300'), ('Pojoaque Pueblo', 1037, '35.89400', '-106.02100'), ('Rinconada', 301, '36.21800', '-105.87300'), ('San Ildefonso Pueb', 458, '35.89810', '-106.12750'), ('San Jose', 592, '36.03900', '-106.09800'), ('San Juan Pueblo', 592, '36.05190', '-106.07000'), ('Santa Clara Pueblo', 980, '35.97180', '-106.09260'), ('Santa Cruz', 423, '35.98550', '-106.01610'), ('Velarde', 377, '36.15900', '-105.97400'), ('Youngsville', 11909, '36.18800', '-106.55600')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ518': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Agua Fria', 2051, '35.64770', '-106.02150'), ('Chupadero', 318, '35.82300', '-105.91600'), ('Cochiti Lake', 507, '35.64800', '-106.33700'), ('Cochiti Pueblo', 507, '35.60800', '-106.34700'), ('Domingo', 2550, '35.51100', '-106.31900'), ('Gallisteo', 5799, '35.39600', '-105.94600'), ('La Bajada', 661, '35.55600', '-106.24000'), ('La Cienega', 3007, '35.57650', '-106.11040'), ('Lamy', 137, '35.48100', '-105.87900'), ('Los Cerrillos', 229, '35.43900', '-106.12300'), ('Madrid', 149, '35.40700', '-106.15200'), ('Pena Blanca', 661, '35.57140', '-106.33620'), ('Santa Fe', 62203, '35.67850', '-105.95410'), ('Santo Domingo Pueblo', 2550, '35.51590', '-106.36580'), ('Tesuque', 909, '35.76660', '-105.92330')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ519': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Adelino', 2211, '34.71600', '-106.73100'), ('Alameda', 11923, '35.18700', '-106.61800'), ('Albuquerque', 448607, '35.11720', '-106.62460'), ('Algodones', 688, '35.38100', '-106.47900'), ('Belen', 6901, '34.65870', '-106.77900'), ('Bernalillo', 6611, '35.31600', '-106.55570'), ('Bosque Farms', 3931, '34.85480', '-106.70090'), ('Carnuel', 872, '35.06400', '-106.45700'), ('Corrales', 7334, '35.23500', '-106.62000'), ('Isleta Pueblo', 1703, '34.88220', '-106.68340'), ('Jarales', 1434, '34.61300', '-106.76300'), ('Los Chavez', 3872, '34.73000', '-106.76080'), ('Los Lunas', 10034, '34.81330', '-106.73810'), ('Los Ranchos De Albuquerque', 5092, '35.16510', '-106.64900'), ('Los Trujillos-Gaba', 2166, '34.66130', '-106.75520'), ('Meadow Lake', 4491, '34.80200', '-106.59070'), ('North Valley', 11923, '35.17320', '-106.62270'), ('Pajarito', 39060, '34.98600', '-106.69600'), ('Paradise Hills', 5513, '35.19650', '-106.69430'), ('Peralta', 3750, '34.82950', '-106.68740'), ('Placitas', 3452, '35.30700', '-106.42400'), ('Rio Communities', 4213, '34.64410', '-106.71800'), ('Rio Rancho', 32505, '35.27340', '-106.66040'), ('Sandia Heights', 3519, '35.17690', '-106.49070'), ('Sandia Pueblo', 344, '35.25600', '-106.57100'), ('San Felipe Pueblo', 2080, '35.43430', '-106.42840'), ('Santa Ana Pueblo', 479, '35.35250', '-106.51850'), ('San Ysidro', 238, '35.55650', '-106.77190'), ('South Valley', 39060, '35.01000', '-106.67750'), ('Tome-Adelino', 2211, '34.73150', '-106.72070'), ('Valencia', 4500, '34.79600', '-106.69100')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ520': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abeytas', 6901, '34.46800', '-106.81100'), ('Bernardo', 6901, '34.41900', '-106.83300'), ('Bingham', 1036, '33.88900', '-106.37200'), ('Bosque Del Apache', 8877, '33.80400', '-106.89100'), ('Chamizal', 8877, '34.21800', '-106.91300'), ('Contreras', 6901, '34.38300', '-106.81300'), ('Escondida', 8877, '34.10100', '-106.89600'), ('Laborcita', 8877, '33.94600', '-106.86800'), ('La Joya', 8877, '34.34600', '-106.84500'), ('Las Nutrias', 4213, '34.47700', '-106.77000'), ('Lemitar', 8877, '34.16000', '-106.91000'), ('Luis Lopez', 8877, '33.98900', '-106.88500'), ('Sabinal', 6901, '34.49400', '-106.80700'), ('San Acacia', 8877, '34.25500', '-106.89900'), ('San Antonio', 8877, '33.91800', '-106.86500'), ('Socorro', 8877, '34.05510', '-106.90420'), ('Veguita', 4213, '34.51600', '-106.76700')], 'partOfState': 'central', 'wfo': 'ABQ'}, +'NMZ521': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Canoncito', 474, '35.13700', '-106.37300'), ('Cedar Crest', 1060, '35.10800', '-106.37200'), ('Cedro', 474, '35.02200', '-106.35300'), ('Chilili', 113, '34.88900', '-106.23200'), ('Edgewood', 113, '35.08390', '-106.17490'), ('Escabosa', 474, '34.92500', '-106.28900'), ('Golden', 113, '35.26700', '-106.21300'), ('Manzano', 54, '34.64700', '-106.34400'), ('Miera', 474, '34.96500', '-106.29100'), ('Ponderosa', 310, '34.98100', '-106.30300'), ('San Antonito', 474, '35.16300', '-106.34700'), ('Sandia Park', 474, '35.16800', '-106.36500'), ('Sedillo', 474, '35.10000', '-106.29500'), ('Tajique', 148, '34.75200', '-106.28700'), ('Tijeras', 474, '35.08840', '-106.37490'), ('Torreon', 297, '34.72200', '-106.29800')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ522': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Chamita', 113, '35.07000', '-106.09600'), ('Estancia', 1584, '34.76030', '-106.06020'), ('McIntosh', 1584, '34.86500', '-106.05100'), ('Moriarty', 1765, '35.00140', '-106.04370'), ('Stanley', 1765, '35.14800', '-105.97600'), ('Willard', 240, '34.59440', '-106.03370')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ523': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Cedarvale', 165, '34.37100', '-105.70100'), ('Clines Corners', 1765, '35.00900', '-105.66900'), ('Duran', 94, '34.46700', '-105.39600'), ('Encino', 94, '34.65100', '-105.45800'), ('San Juan', 14565, '35.14600', '-105.36500')], 'partOfState': 'north central', 'wfo': 'ABQ'}, +'NMZ524': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abo', 1116, '34.45600', '-106.33300'), ('Claunch', 165, '34.14200', '-105.99400'), ('Corona', 165, '34.24970', '-105.59670'), ('Gran Quivira', 1116, '34.26400', '-106.10100'), ('Mountainair', 1116, '34.52080', '-106.24290')], 'partOfState': 'central', 'wfo': 'ABQ'}, +'NMZ525': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Carrizozo', 1036, '33.64380', '-105.88330'), ('Oscuro', 1036, '33.48400', '-106.05400')], 'partOfState': 'central', 'wfo': 'ABQ'}, +'NMZ526': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Alto', 7698, '33.39900', '-105.68000'), ('Ancho', 1036, '33.93800', '-105.73900'), ('Angus', 1443, '33.51700', '-105.63300'), ('Bonito Lake', 7698, '33.45100', '-105.70800'), ('Capitan', 1443, '33.54040', '-105.59390'), ('Encinoso', 1443, '33.68600', '-105.48300'), ('Fort Stanton', 1443, '33.49600', '-105.52300'), ('Glencoe', 1824, '33.40900', '-105.44800'), ('Hollywood', 7698, '33.32300', '-105.63400'), ('Jicarilla', 1036, '33.86900', '-105.66300'), ('Lincoln', 1443, '33.49200', '-105.38300'), ('Nogal', 1443, '33.55800', '-105.70700'), ('Ruidoso', 7698, '33.36600', '-105.64250'), ('Ruidoso Downs', 1824, '33.33160', '-105.60370'), ('White Oaks', 1036, '33.74800', '-105.73600')], 'partOfState': 'central', 'wfo': 'ABQ'}, +'NMZ527': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Capulin', 75, '36.74100', '-103.99300'), ('Des Moines', 177, '36.76130', '-103.83330'), ('Folsom', 75, '36.84810', '-103.91770'), ('Sugarite', 7282, '36.94400', '-104.38100')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ528': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Abbott', 1285, '36.30600', '-104.25800'), ('Cimarron', 917, '36.50990', '-104.91260'), ('Farley', 304, '36.35300', '-104.03900'), ('Golondrinas', 14565, '35.88900', '-105.18600'), ('Maxwell', 247, '36.54050', '-104.54210'), ('Miami', 917, '36.35000', '-104.79300'), ('Philmont Scout Ranch', 917, '36.48300', '-104.93300'), ('Raton', 7282, '36.88570', '-104.44150'), ('Raton Crews Airport', 7282, '36.73300', '-104.50000'), ('Rayado', 917, '36.36900', '-104.92600'), ('Shoemaker', 369, '35.81600', '-104.87600'), ('Springer', 1285, '36.36620', '-104.59310'), ('Valmora', 369, '35.81600', '-104.92300'), ('Wagon Mound', 369, '36.00290', '-104.71430'), ('Watrous', 14565, '35.79100', '-104.98100')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ529': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Chapelle', 14565, '35.38900', '-105.29300'), ('Las Vegas', 14565, '35.59920', '-105.21960'), ('Los Montoyas', 14565, '35.41900', '-105.20700'), ('Maes', 369, '35.68300', '-104.60000'), ('Montezuma', 14565, '35.65200', '-105.27600'), ('Ojitos Frios', 14565, '35.51700', '-105.31700'), ('Ribera', 1441, '35.37400', '-105.44800'), ('Romeroville', 14565, '35.52300', '-105.24400'), ('San Antonio', 14565, '35.62900', '-105.24500'), ('San Augustin', 14565, '35.45800', '-105.14500'), ('San Geronimo', 14565, '35.58000', '-105.39500'), ('San Jose', 1441, '35.39700', '-105.47400'), ('San Miguel', 1441, '35.36400', '-105.45000'), ('Sena', 14565, '35.29800', '-105.39200'), ('Tecolote', 14565, '35.46000', '-105.28000'), ('Tecolotito', 14565, '35.23400', '-105.15900'), ('Trujillo', 369, '35.53500', '-104.69100'), ('Villanueva', 14565, '35.26700', '-105.36000')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ530': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Amistad', 425, '35.91900', '-103.15300'), ('Clayton', 2524, '36.45070', '-103.17510'), ('Gladstone', 304, '36.30500', '-103.97300'), ('Grenville', 25, '36.59290', '-103.61270'), ('Hayden', 425, '35.96800', '-103.27100'), ('Mount Dora', 25, '36.51900', '-103.48900'), ('Sedan', 425, '36.14400', '-103.13000'), ('Seneca', 2524, '36.62800', '-103.12600')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ531': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bueyeros', 120, '35.97900', '-103.68700'), ('Chicosa Lake State', 304, '36.05000', '-104.16700'), ('Mills', 304, '36.08500', '-104.25500'), ('Mosquero', 120, '35.77450', '-103.95430'), ('Rosebud', 1094, '35.84100', '-103.44500'), ('Roy', 304, '35.94540', '-104.19630'), ('Solano', 120, '35.84800', '-104.06700'), ('Yates', 304, '36.13000', '-103.90100')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ532': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bell Ranch', 120, '35.53000', '-104.09400'), ('Conchas', 120, '35.40300', '-104.18900'), ('Trementina', 2744, '35.47000', '-104.52700'), ('Variadero', 2744, '35.38800', '-104.45900')], 'partOfState': 'northeast', 'wfo': 'ABQ'}, +'NMZ533': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Anton Chico', 14565, '35.20000', '-105.14200'), ('Colonias', 2744, '35.11000', '-104.84700'), ('Cuervo', 2744, '35.03100', '-104.40800'), ('Dilia', 14565, '35.19300', '-105.06300'), ('Milagro', 539, '34.93800', '-105.23900'), ('Newkirk', 2744, '35.06800', '-104.26400'), ('Pastura', 2744, '34.78300', '-104.94400'), ('Pintada', 539, '34.88200', '-105.07200'), ('Puerto De Luna', 2744, '34.83200', '-104.62100'), ('San Ignacio', 2744, '34.91300', '-104.94500'), ('Santa Rosa', 2744, '34.94340', '-104.67670'), ('Santa Rosa Lake State Park', 2744, '35.03300', '-104.68300'), ('Vaughn', 539, '34.60660', '-105.21230')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMZ534': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Forrest', 98, '34.79500', '-103.60100'), ('House', 72, '34.64800', '-103.90330'), ('Logan', 1094, '35.36100', '-103.44340'), ('McAlister', 72, '34.69200', '-103.77600'), ('Montoya', 5989, '35.10000', '-104.06300'), ('Nara Visa', 1094, '35.60800', '-103.09900'), ('Quay', 5989, '34.93400', '-103.76000'), ('Ragland', 72, '34.82300', '-103.74200'), ('San Jon', 306, '35.11300', '-103.32750'), ('Tucumcari', 5989, '35.16740', '-103.72750'), ('Wheatland', 98, '34.90900', '-103.35400')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMZ535': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bellview', 98, '34.82100', '-103.10700'), ('Broadview', 98, '34.81900', '-103.21300'), ('Cannon AFB', 2557, '34.38040', '-103.31410'), ('Clovis', 32667, '34.41020', '-103.20270'), ('Grady', 98, '34.82200', '-103.31540'), ('Melrose', 736, '34.42920', '-103.62880'), ('Pleasant Hill', 1065, '34.52000', '-103.07300'), ('Portair', 2557, '34.40500', '-103.30100'), ('Ranchvale', 2557, '34.49300', '-103.31800'), ('Saint Vrain', 736, '34.41600', '-103.48900'), ('Texico', 1065, '34.38940', '-103.05170')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMZ536': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Arch', 11131, '34.11300', '-103.14200'), ('Causey', 52, '33.86520', '-103.11680'), ('Dora', 130, '33.93320', '-103.33530'), ('Elida', 183, '33.94420', '-103.65460'), ('Floyd', 78, '34.21470', '-103.54890'), ('Kenna', 183, '33.84200', '-103.77100'), ('Lingo', 52, '33.78800', '-103.11400'), ('Milnesand', 130, '33.64300', '-103.33900'), ('Pep', 130, '33.83600', '-103.33500'), ('Portales', 11131, '34.18110', '-103.34530'), ('Rogers', 130, '33.98200', '-103.23000'), ('Tolar', 72, '34.45100', '-103.93100')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMZ537': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Fort Sumner', 1249, '34.47810', '-104.23720'), ('Sumner Lake', 86, '34.60300', '-104.38100'), ('Taiban', 72, '34.44400', '-104.00900'), ('Yeso', 1249, '34.43900', '-104.60900')], 'partOfState': 'east central', 'wfo': 'ABQ'}, +'NMZ538': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Bitter Lake Wildlife Refuge', 45293, '33.45900', '-104.40400'), ('Dexter', 1235, '33.19470', '-104.36840'), ('Elkins', 183, '33.69400', '-104.05400'), ('Greenfield', 1235, '33.16500', '-104.34900'), ('Hagerman', 1168, '33.11350', '-104.32830'), ('Lake Arthur', 432, '32.99970', '-104.36340'), ('Mesa', 45293, '33.98400', '-104.67700'), ('Midway', 45293, '33.29500', '-104.45000'), ('Roswell', 45293, '33.37110', '-104.52940'), ('Roswell Correctionial', 1235, '33.13300', '-104.53300')], 'partOfState': 'southeast', 'wfo': 'ABQ'}, +'NMZ539': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Arabela', 1443, '33.58700', '-105.17300'), ('Hondo', 1824, '33.38800', '-105.27000'), ('Picacho', 1824, '33.35200', '-105.14400'), ('San Patricio', 1824, '33.40900', '-105.32600'), ('Sunset', 1824, '33.33900', '-105.07500')], 'partOfState': 'central', 'wfo': 'ABQ'}, +'NMZ540': {'fullStateName': 'New Mexico', 'state': 'NM', 'cities': [('Dunken', 107, '32.81300', '-105.20200'), ('Elk', 749, '32.94300', '-105.33400')], 'partOfState': 'southeast', 'wfo': 'ABQ'}, +'NVZ001': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Hawthorne', 3311, '38.52520', '-118.62700'), ('Luning', 318, '38.51000', '-118.18000'), ('Mason', 2883, '38.95000', '-119.19000'), ('Mina', 318, '38.39000', '-118.11000'), ('Mount Montgomery', 2561, '37.98000', '-118.32000'), ('Schurz', 721, '38.99290', '-118.83280'), ('Smith', 1033, '38.80000', '-119.33000'), ('Smith Valley', 1033, '38.78610', '-119.34080'), ('Sweetwater Summit', 1033, '38.52000', '-119.21000'), ('Wabuska', 2883, '39.14000', '-119.18000'), ('Walker Lake', 3311, '38.69000', '-118.74000'), ('Weed Heights', 2883, '38.99000', '-119.21000'), ('Wellington', 1033, '38.76000', '-119.38000'), ('Yerington', 2883, '38.98810', '-119.16310')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVZ002': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Crystal Bay', 2796, '39.25000', '-119.99000'), ('Dagget Pass', 2624, '38.98000', '-119.89000'), ('Genoa', 2624, '39.00000', '-119.85000'), ('Glenbrook', 1649, '39.09000', '-119.94000'), ('Heavenly Valley', 2624, '38.96000', '-119.89000'), ('Incline Village', 9952, '39.25080', '-119.96320'), ('Kingsbury', 2624, '38.97590', '-119.88210'), ('Mount Rose Summit', 9952, '39.31000', '-119.90000'), ('Spooner Summit', 1649, '39.10000', '-119.90000'), ('Stateline', 1215, '38.96000', '-119.94000'), ('Zephyr Cove', 1215, '39.00000', '-119.96000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVZ003': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Carson City', 52457, '39.16990', '-119.76490'), ('Dayton', 5907, '39.24000', '-119.57970'), ('Gardnerville', 3357, '38.93930', '-119.73590'), ('Gardnerville Ranch', 11054, '38.88820', '-119.74020'), ('Gold Hill', 5907, '39.29000', '-119.66000'), ('Holbrook Junction', 1033, '38.73000', '-119.55000'), ('Indian Hills', 4407, '39.08600', '-119.78300'), ('Johnson Lane', 4837, '39.04800', '-119.72120'), ('Lakeview', 52457, '39.21000', '-119.80000'), ('Lockwood', 66346, '39.51000', '-119.65000'), ('Minden', 2836, '38.96050', '-119.77220'), ('Mustang', 66346, '39.52000', '-119.63000'), ('New Washoe City', 2875, '39.30130', '-119.77180'), ('Patrick', 66346, '39.55000', '-119.58000'), ('Reno', 180480, '39.53870', '-119.82250'), ('Six Mile Canyon', 5907, '39.31000', '-119.56000'), ('Spanish Springs', 9018, '39.62000', '-119.72000'), ('Sparks', 66346, '39.54420', '-119.73690'), ('Stead', 19461, '39.64000', '-119.88000'), ('Stewart', 52457, '39.12000', '-119.76000'), ('Sun Valley', 19461, '39.59820', '-119.77860'), ('Topaz Lake', 1033, '38.69000', '-119.54900'), ('Verdi', 133850, '39.52000', '-120.00000'), ('Verdi', 180480, '39.52000', '-119.99000'), ('Virginia City', 5907, '39.31000', '-119.64000'), ('Wadsworth', 881, '39.63260', '-119.29000'), ('Washoe City', 2875, '39.32000', '-119.81000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVZ004': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Cold Springs', 318, '39.41000', '-117.84000'), ('Dixie Valley', 1265, '39.57000', '-118.08000'), ('Fallon', 7536, '39.47580', '-118.77780'), ('Fallon Station', 1265, '39.41860', '-118.72010'), ('Fernley', 8543, '39.61380', '-119.24000'), ('Fort Churchill Station', 4708, '39.29000', '-119.27000'), ('Frenchman', 1265, '39.28000', '-118.27000'), ('Hazen', 8543, '39.57000', '-119.05000'), ('Imlay', 7174, '40.66000', '-118.15000'), ('Lahontan Reservoir', 4708, '39.46000', '-119.07000'), ('Lovelock', 2003, '40.18000', '-118.47690'), ('Middlegate', 318, '39.29000', '-118.03000'), ('Mill City', 7174, '40.68000', '-118.07000'), ('Nixon', 418, '39.83000', '-119.36000'), ('Oreana', 2003, '40.33000', '-118.32000'), ('Pyramid Lake', 881, '40.06000', '-119.56000'), ('Rye Patch Reservoir', 2003, '40.49000', '-118.32000'), ('Sand Mountain', 1265, '39.31000', '-118.40000'), ('Sand Pass', 19461, '40.26000', '-119.68000'), ('Silver Springs', 4708, '39.42070', '-119.22000'), ('Stagecoach', 4708, '39.37000', '-119.37000'), ('Stillwater', 1265, '39.52000', '-118.55000'), ('Sutcliffe', 281, '39.95000', '-119.60000'), ('The Needle Rocks', 19461, '40.15000', '-119.68000'), ('Trinity Junction', 2003, '39.94000', '-118.75000'), ('Unionville', 2003, '40.44000', '-118.12000')], 'partOfState': 'west central', 'wfo': 'REV'}, +'NVZ005': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Catnip Mountain', 2526, '41.85000', '-119.38000'), ('Empire', 881, '40.58000', '-119.34000'), ('Gerlach', 2003, '40.65000', '-119.35000'), ('Smoke Creek Desert', 19461, '40.48000', '-119.73000'), ('Vya', 3231, '41.60000', '-119.86000')], 'partOfState': 'western', 'wfo': 'REV'}, +'NVZ014': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Beatty', 1154, '36.91020', '-116.76000'), ('Boundary Peak', 2561, '37.85000', '-118.35000'), ('Coaldale', 2627, '38.03330', '-117.87500'), ('Dyer', 3475, '37.61660', '-118.03100'), ('Goldfield', 2627, '37.70000', '-117.23330'), ('Gold Point', 2627, '37.35500', '-117.36330'), ('Lida', 2627, '37.45830', '-117.49660'), ('Lida Junction', 2627, '37.50000', '-117.18750'), ('Scottys Junction', 1154, '37.30000', '-117.04330'), ('Silver Peak', 2627, '37.76670', '-117.46660')], 'partOfState': 'south central', 'wfo': 'VEF'}, +'NVZ015': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Alamo', 1123, '37.35250', '-115.15250'), ('Caliente', 1123, '37.61560', '-114.51450'), ('Carp', 9389, '37.10660', '-114.48330'), ('Eagle Valley', 0, '38.03330', '-114.18330'), ('Elgin', 1123, '37.35000', '-114.53660'), ('Hiko', 1123, '37.60000', '-115.21660'), ('Panaca', 1123, '37.78330', '-114.38330'), ('Pioche', 1123, '37.93330', '-114.45000'), ('Rachel', 1302, '37.63330', '-115.71660'), ('Ursine', 0, '37.98300', '-114.20000')], 'partOfState': 'south central', 'wfo': 'VEF'}, +'NVZ016': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Bunkerville', 1014, '36.78000', '-114.10990'), ('Logandale', 5784, '36.61660', '-114.48330'), ('Mesquite', 9389, '36.79100', '-114.07250'), ('Moapa', 5784, '36.66660', '-114.61660'), ('Valley Of Fire State Park', 5784, '36.43330', '-114.51660')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVZ017': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Amargosa Valley', 1154, '36.64160', '-116.39660'), ('Indian Springs', 1302, '36.57080', '-115.66660'), ('Lathrop Wells', 1154, '36.66660', '-116.38330'), ('Mercury', 1302, '36.67000', '-116.00500'), ('Pahrump', 24631, '36.20830', '-115.99160'), ('Sandy Valley', 1804, '35.80000', '-115.60000')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVZ018': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Hayford Pk', 115488, '36.65830', '-115.19910')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVZ019': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Goodsprings', 232, '35.83330', '-115.43330'), ('Mt. Charleston', 285, '36.28330', '-115.61660'), ('Mt. Potosi', 14676, '35.96670', '-115.50000'), ('Red Rock Canyon', 117390, '36.14000', '-115.45330'), ('Spring Mountain Ranch State Park', 117390, '36.07330', '-115.45000')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVZ020': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Black Mtn', 175381, '35.93330', '-115.04160'), ('Downtown Las Vegas', 26958, '36.17300', '-115.14600'), ('East Las Vegas', 11087, '36.09650', '-115.04350'), ('Frenchman Mtn', 156120, '36.17750', '-114.99600'), ('Gass Pk', 115488, '36.40000', '-115.17830'), ('Green Valley', 11087, '36.05700', '-115.08000'), ('Henderson', 175381, '36.03370', '-115.00240'), ('Henderson Executive', 186070, '35.98950', '-115.13200'), ('Jean', 14676, '35.77660', '-115.33330'), ('Lone Mtn', 478434, '36.23920', '-115.31250'), ('Mountain Springs', 175381, '36.02330', '-115.00750'), ('Nellis AFB', 8896, '36.24440', '-115.05380'), ('North Las Vegas', 115488, '36.26780', '-115.14420'), ('Nws Las Vegas', 14676, '36.05000', '-115.19160'), ("Sam's Town", 11087, '36.11250', '-115.05500'), ('Sloan', 14676, '35.94080', '-115.20500'), ('Spring Valley', 117390, '36.10830', '-115.24160'), ('Stratosphere Tower', 26958, '36.14660', '-115.15830'), ('Summerlin', 478434, '36.20600', '-115.30500'), ('Sunrise Mtn', 8896, '36.22660', '-114.97500'), ('The Lakes', 117390, '36.14200', '-115.29000'), ('The Silver Bowl', 11087, '36.08880', '-115.02250'), ('The Strip', 26958, '36.11660', '-115.17500'), ('Unlv', 186070, '36.10500', '-115.14000')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVZ021': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Big Bend Raws', 7076, '35.11660', '-114.70000'), ('Boulder Beach', 14966, '36.04330', '-114.81000'), ('Boulder City', 14966, '35.98300', '-114.83000'), ('Callville Bay', 14966, '36.13330', '-114.72880'), ('Cottonwood Cove', 7076, '35.48330', '-114.69000'), ('Echo Bay', 5784, '36.31660', '-114.41110'), ('Hoover Dam', 14966, '36.01660', '-114.73830'), ('Las Vegas Bay', 14966, '36.11000', '-114.86000'), ('Laughlin', 7076, '35.15730', '-114.57900'), ('Overton', 5784, '36.53330', '-114.45000'), ('Overton Beach', 5784, '36.44000', '-114.36440'), ('Railroad Pass', 14966, '35.98330', '-114.91650'), ('Willow Beach', 12567, '35.87100', '-114.66670')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVZ022': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Cal Nev Ari', 278, '35.31660', '-114.88660'), ('Primm', 14676, '35.61660', '-115.39330'), ('Searchlight', 576, '35.46330', '-114.91660')], 'partOfState': 'southern', 'wfo': 'VEF'}, +'NVZ030': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Denio', 269, '41.98330', '-118.63340'), ('Dufferena', 2526, '41.86670', '-119.00010'), ('Golconda', 7174, '40.95010', '-117.48330'), ('Kings River Valley', 269, '41.73340', '-118.21660'), ('Leonard Creek Ranch', 269, '41.63340', '-118.71680'), ('McDermitt', 269, '41.98900', '-117.71550'), ('Orovada', 269, '41.56660', '-117.83330'), ('Paradise Valley', 269, '41.50020', '-117.53330'), ('Valmy', 2871, '40.78330', '-117.13330'), ('Winnemucca', 7174, '40.96830', '-117.72570')], 'partOfState': 'northwest', 'wfo': 'LKN'}, +'NVZ031': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Charleston', 1017, '41.66670', '-115.53330'), ('Contact', 144, '41.77060', '-114.75280'), ('Gibbs Ranch', 1346, '41.56970', '-115.21220'), ('Jackpot', 144, '41.98670', '-114.67440'), ('Jarbidge', 1017, '41.88330', '-115.41670'), ('Midas', 2871, '41.25000', '-116.81670'), ('Montello', 0, '41.26100', '-114.18550'), ('Mountain City', 1017, '41.83900', '-115.96100'), ('Owyhee', 1017, '41.94200', '-116.09600'), ('Tuscarora', 1017, '41.31610', '-116.22440')], 'partOfState': 'northeast', 'wfo': 'LKN'}, +'NVZ033': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('West Wendover', 4721, '40.76770', '-114.11550')], 'partOfState': 'northeast', 'wfo': 'LKN'}, +'NVZ034': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [], 'partOfState': 'northeast', 'wfo': 'LKN'}, +'NVZ035': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Baker', 0, '39.01660', '-114.13330'), ('Cherry Creek', 1054, '39.90000', '-114.88330'), ('Ely', 4041, '39.24910', '-114.87790'), ('Ely Airport', 4041, '39.29500', '-114.84520'), ('Great Basin National Park', 0, '39.00920', '-114.22670'), ('Lages Junction', 0, '40.06330', '-114.61520'), ('Lund', 4041, '38.86250', '-115.00940'), ('McGill', 1054, '39.39970', '-114.77890'), ('Preston', 4041, '38.91660', '-115.06670'), ('Ruth', 4041, '39.28000', '-114.98750'), ('Schellbourne', 1054, '39.81660', '-114.66670'), ('Shoshone', 0, '38.91030', '-114.40190')], 'partOfState': 'eastern', 'wfo': 'LKN'}, +'NVZ036': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Argenta', 2871, '40.66670', '-116.75000'), ('Battle Mountain', 2871, '40.64150', '-116.93770'), ('Beowawe', 2161, '40.58330', '-116.46660'), ('Crescent Valley', 2871, '40.41660', '-116.56660'), ('Dunphy', 2161, '40.70000', '-116.51660'), ('Emigrant Pass', 2161, '40.63330', '-116.30220'), ('Palisade', 2161, '40.60000', '-116.20000'), ('Pine Valley', 2161, '40.41660', '-116.11660')], 'partOfState': 'north central', 'wfo': 'LKN'}, +'NVZ037': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Austin', 318, '39.48330', '-117.06670'), ('Diamond Valley', 2161, '39.70860', '-116.04940'), ('Eureka', 4041, '39.50000', '-115.95000'), ('Eureka Airport', 2161, '39.60000', '-116.00000'), ('Garden Pass', 2161, '39.82770', '-116.16300'), ('Gillman Springs', 318, '39.25020', '-117.01410'), ('Grass Valley', 2871, '39.90000', '-116.58330'), ('Hickison Summit', 2871, '39.43330', '-116.73330'), ('Kingston', 318, '39.20000', '-117.08330'), ('New Pass Summit', 318, '39.53330', '-117.46660'), ('Pinto Summit', 4041, '39.44000', '-115.92750')], 'partOfState': 'north central', 'wfo': 'LKN'}, +'NVZ038': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Carlin', 2161, '40.71720', '-116.11270'), ('Deeth', 1346, '41.06610', '-115.27110'), ('Elko', 16708, '40.83870', '-115.76070'), ('Jiggs', 10548, '40.41800', '-115.66600'), ('Lamoille', 10548, '40.74470', '-115.48610'), ('Lee', 10548, '40.55050', '-115.57150'), ('Ryndon', 16708, '40.95280', '-115.60750'), ('South Fork', 10548, '40.67580', '-115.74470'), ('Spring Creek', 10548, '40.73850', '-115.59590')], 'partOfState': 'northeast', 'wfo': 'LKN'}, +'NVZ039': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Clover Valley', 1346, '40.84940', '-115.03170'), ('Currie', 0, '40.26670', '-114.75000'), ('Oasis', 4721, '41.03140', '-114.47280'), ('Pequop Summit', 1346, '41.07510', '-114.55800'), ('Ruby Lake', 10548, '40.20280', '-115.49270'), ('Ruby Valley', 1346, '40.78110', '-115.18580'), ('Wells', 1346, '41.11440', '-114.94810')], 'partOfState': 'northeast', 'wfo': 'LKN'}, +'NVZ040': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Gabbs', 318, '38.86770', '-117.92150'), ('Manhattan', 2627, '38.52080', '-117.06660'), ('Round Mountain', 2627, '38.71660', '-117.06670'), ('Tonopah', 2627, '38.06660', '-117.23000')], 'partOfState': 'south central', 'wfo': 'LKN'}, +'NVZ041': {'fullStateName': 'Nevada', 'state': 'NV', 'cities': [('Blue Eagle Ranch', 4041, '38.53330', '-115.55000'), ('Duckwater', 4041, '38.90000', '-115.71660')], 'partOfState': 'south central', 'wfo': 'LKN'}, +'NYZ001': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Barker', 577, '43.32740', '-78.55380'), ('Gasport', 1248, '43.19540', '-78.57720'), ('Lewiston', 2781, '43.17160', '-79.04080'), ('Lockport', 22279, '43.16970', '-78.69630'), ('Middleport', 1917, '43.21170', '-78.47600'), ('Newfane', 3129, '43.28800', '-78.69930'), ('Niagara Falls', 55593, '43.09110', '-79.01620'), ('North Tonawanda', 33262, '43.04380', '-78.86590'), ('Olcott', 1156, '43.33530', '-78.71230'), ('Ransomville', 1488, '43.23780', '-78.90910'), ('Rapids', 1356, '43.10130', '-78.64140'), ('Wilson', 1213, '43.31070', '-78.82690'), ('Youngstown', 1957, '43.24870', '-79.04280')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ002': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Albion', 7438, '43.24590', '-78.18930'), ('Holley', 1802, '43.22420', '-78.02810'), ('Lyndonville', 862, '43.32190', '-78.38700'), ('Medina', 6415, '43.21980', '-78.38800')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ003': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Brighton', 35584, '43.11860', '-77.58440'), ('Brockport', 8103, '43.21340', '-77.94100'), ('Churchville', 1887, '43.10150', '-77.88410'), ('East Rochester', 6650, '43.11160', '-77.48740'), ('Fairport', 5740, '43.10020', '-77.44330'), ('Gates-North Gates', 14995, '43.16400', '-77.70070'), ('Greece', 14614, '43.21190', '-77.70230'), ('Hilton', 5856, '43.28990', '-77.79280'), ('Honeoye Falls', 2595, '42.95440', '-77.59180'), ('Irondequoit', 52354, '43.21030', '-77.57210'), ('Pittsford', 1418, '43.09040', '-77.51710'), ('Rochester', 219773, '43.16870', '-77.61580'), ('Scottsville', 2128, '43.02180', '-77.75380'), ('Spencerport', 3559, '43.18810', '-77.80860'), ('Webster', 5216, '43.21410', '-77.42240')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ004': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Clyde', 2269, '43.08340', '-76.87100'), ('Lyons', 3695, '43.06340', '-76.99360'), ('Macedon', 1496, '43.06870', '-77.30270'), ('Newark', 9682, '43.04190', '-77.09430'), ('Palmyra', 3490, '43.06160', '-77.23070'), ('Red Creek', 521, '43.24800', '-76.72310'), ('Sodus', 1735, '43.23670', '-77.06410'), ('Sodus Point', 1160, '43.26260', '-76.99420'), ('Wolcott', 1712, '43.22250', '-76.81270')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ005': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Cato', 601, '43.16800', '-76.57240'), ('Fair Haven', 884, '43.32570', '-76.70240'), ('Meridian', 350, '43.16350', '-76.53540'), ('Port Byron', 1297, '43.03670', '-76.62580'), ('Weedsport', 2017, '43.04700', '-76.56470')], 'partOfState': 'central', 'wfo': 'BUF'}, +'NYZ006': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Altmar', 351, '43.51060', '-76.00500'), ('Central Square', 1646, '43.28670', '-76.14080'), ('Cleveland', 758, '43.23920', '-75.88500'), ('Constantia', 1107, '43.25390', '-76.00190'), ('Fulton', 11855, '43.31680', '-76.41560'), ('Hannibal', 542, '43.31780', '-76.57760'), ('Lacona', 590, '43.64370', '-76.06890'), ('Mexico', 1572, '43.46410', '-76.23500'), ('Minetto', 1086, '43.39900', '-76.48150'), ('Oswego', 17954, '43.45840', '-76.50290'), ('Parish', 512, '43.40430', '-76.12890'), ('Phoenix', 2251, '43.23180', '-76.29730'), ('Pulaski', 2398, '43.56530', '-76.12820'), ('Sand Ridge', 906, '43.25590', '-76.23040'), ('Sandy Creek', 789, '43.64290', '-76.08610')], 'partOfState': 'central', 'wfo': 'BUF'}, +'NYZ007': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Adams', 1624, '43.80980', '-76.02250'), ('Adams Center', 1500, '43.85960', '-75.99760'), ('Alexandria Bay', 1088, '44.33740', '-75.91770'), ('Antwerp', 716, '44.19970', '-75.60900'), ('Black River', 1285, '44.00960', '-75.79680'), ('Calcium', 3346, '44.03470', '-75.84800'), ('Cape Vincent', 760, '44.12630', '-76.33100'), ('Carthage', 3721, '43.98480', '-75.60460'), ('Chaumont', 592, '44.06530', '-76.13340'), ('Clayton', 1821, '44.23570', '-76.08690'), ('Deferiet', 309, '44.03460', '-75.67970'), ('Ellisburg', 269, '43.73600', '-76.13380'), ('Evans Mills', 605, '44.08780', '-75.80830'), ('Fort Drum', 11578, '44.05340', '-75.77380'), ('Mannsville', 400, '43.71520', '-76.06660'), ('Philadelphia', 1519, '44.15480', '-75.70940'), ('Sackets Harbor', 1386, '43.94160', '-76.12220'), ('Theresa', 812, '44.21480', '-75.79720'), ('Watertown', 26705, '43.97360', '-75.91020'), ('West Carthage', 2102, '43.97360', '-75.62170')], 'partOfState': 'central', 'wfo': 'BUF'}, +'NYZ008': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Castorland', 306, '43.88420', '-75.51760'), ('Constableville', 305, '43.56440', '-75.42850'), ('Copenhagen', 865, '43.89380', '-75.67400'), ('Croghan', 665, '43.89530', '-75.39130'), ('Harrisville', 653, '44.15340', '-75.32170'), ('Lowville', 3476, '43.78580', '-75.48970'), ('Lyons Falls', 591, '43.61690', '-75.36210'), ('Port Leyden', 665, '43.58400', '-75.34100'), ('Turin', 263, '43.62890', '-75.40970')], 'partOfState': 'central', 'wfo': 'BUF'}, +'NYZ009': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alder Creek', 531, '43.41670', '-75.21670'), ('Ava', 305, '43.41670', '-75.48330'), ('Boonville', 2138, '43.48080', '-75.33010'), ('Camden', 2330, '43.33630', '-75.74760'), ('Florence', 2330, '43.43330', '-75.75000'), ('Forestport', 2138, '43.45000', '-75.21670'), ('Frenchville', 461, '43.33330', '-75.36670'), ('Glenmore', 2330, '43.36670', '-75.61670'), ('Hawkinsville', 2138, '43.50000', '-75.26670'), ('Hinckley', 330, '43.31670', '-75.11670'), ('Jewell', 758, '43.23330', '-75.81670'), ('North Western', 2138, '43.35000', '-75.36670'), ('Point Rock', 34950, '43.38330', '-75.55000'), ('Prospect', 330, '43.30420', '-75.15280'), ('Remsen', 531, '43.32750', '-75.18710'), ('Steuben', 461, '43.31670', '-75.28330'), ('Stokes Corner', 34950, '43.30000', '-75.46670'), ('Taberg', 2330, '43.30000', '-75.61670'), ('Westernville', 34950, '43.31670', '-75.38330'), ('Woodgate', 2138, '43.51670', '-75.15000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ010': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Akron', 3085, '43.01930', '-78.49560'), ('Alden', 2666, '42.89840', '-78.49450'), ('Blasdell', 2718, '42.79620', '-78.83340'), ('Buffalo', 292648, '42.88980', '-78.85970'), ('Cheektowaga', 79988, '42.90890', '-78.75020'), ('Clarence Center', 1747, '43.00870', '-78.63180'), ('Depew', 16629, '42.91200', '-78.70470'), ('Elma Center', 2491, '42.82620', '-78.63270'), ('Harris Hill', 4881, '42.97660', '-78.68270'), ('Kenmore', 16426, '42.96480', '-78.87190'), ('Lackawanna', 19064, '42.81680', '-78.82930'), ('Lancaster', 11188, '42.90160', '-78.66980'), ('Sloan', 3775, '42.89220', '-78.79170'), ('Tonawanda', 61729, '42.98410', '-78.87570'), ('West Seneca', 45943, '42.83770', '-78.75140'), ('Williamsville', 5573, '42.96290', '-78.74090')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ011': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alexander', 481, '42.90170', '-78.26070'), ('Batavia', 16256, '42.99860', '-78.18120'), ('Bergen', 1240, '43.08330', '-77.94200'), ('Corfu', 795, '42.96040', '-78.40030'), ('Elba', 696, '43.07520', '-78.18890'), ('Le Roy', 4462, '42.97790', '-77.99100'), ('Oakfield', 1805, '43.06440', '-78.27070')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ012': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Arcade', 2026, '42.53340', '-78.43320'), ('Attica', 2597, '42.86550', '-78.28010'), ('Castile', 1051, '42.63100', '-78.05260'), ('Gainesville', 304, '42.64080', '-78.13520'), ('Perry', 3945, '42.71730', '-78.00670'), ('Pike', 382, '42.55590', '-78.15420'), ('Silver Springs', 844, '42.66010', '-78.08470'), ('Warsaw', 3814, '42.74140', '-78.14100'), ('Wyoming', 513, '42.82510', '-78.08550')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ013': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Avon', 2977, '42.91230', '-77.74610'), ('Caledonia', 2327, '42.97560', '-77.85740'), ('Dansville', 4832, '42.56090', '-77.69530'), ('Geneseo', 7579, '42.79830', '-77.81060'), ('Leicester', 469, '42.77140', '-77.89800'), ('Lima', 2459, '42.90640', '-77.61310'), ('Livonia', 1373, '42.82090', '-77.66880'), ('Mount Morris', 3266, '42.72370', '-77.87500'), ('Nunda', 1330, '42.58060', '-77.93870')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ014': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Canandaigua', 11264, '42.88900', '-77.28070'), ('Clifton Springs', 2223, '42.95970', '-77.13340'), ('East Bloomfield', 541, '42.89710', '-77.43380'), ('Geneva', 13617, '42.86530', '-76.98350'), ('Holcomb', 1267, '42.90020', '-77.41830'), ('Manchester', 1475, '42.96860', '-77.23160'), ('Naples', 1072, '42.61690', '-77.40190'), ('Phelps', 1969, '42.95830', '-77.06260'), ('Shortsville', 1320, '42.95610', '-77.22230'), ('Victor', 2433, '42.98260', '-77.41170')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ015': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bellona Stn', 5219, '42.75000', '-77.03330'), ('Benton', 5219, '42.73330', '-77.06670'), ('Bluff Point', 5219, '42.61670', '-77.11670'), ('Branchport', 5219, '42.60000', '-77.15000'), ('Crosby', 5219, '42.55000', '-77.10000'), ('Dresden', 307, '42.68310', '-76.95690'), ('Dundee', 1690, '42.52350', '-76.97820'), ('Ferguson Corners', 5219, '42.75000', '-77.10000'), ('Friend', 621, '42.66670', '-77.18330'), ('Glenora', 1690, '42.48330', '-76.91670'), ('Guyanoga', 5219, '42.61670', '-77.16670'), ('Himrod', 1690, '42.58330', '-76.95000'), ('Italy', 1072, '42.61670', '-77.28330'), ('Italy Hill', 1072, '42.60000', '-77.25000'), ('Keuka Park', 5219, '42.61670', '-77.08330'), ('Lakemont', 1690, '42.51670', '-76.91670'), ('Mays Mills', 307, '42.66670', '-76.98330'), ('Middlesex', 621, '42.70000', '-77.26670'), ('Milo Center', 307, '42.66670', '-77.00000'), ('Milo Mills', 5219, '42.66670', '-77.03330'), ('Penn Yan', 5219, '42.66120', '-77.05490'), ('Porter Corner', 1690, '42.55000', '-77.03330'), ('Potter', 621, '42.70000', '-77.20000'), ('Rock Stream', 1690, '42.46670', '-76.91670'), ('Rushville', 621, '42.76060', '-77.22750'), ('Starkey', 1690, '42.53330', '-76.91670'), ('Vine Valley', 621, '42.71670', '-77.31670'), ('Yatesville', 5219, '42.66670', '-77.13330')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ016': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Border City', 13617, '42.88330', '-76.95000'), ('Canoga', 1074, '42.85000', '-76.73330'), ('Caywood', 338, '42.56670', '-76.85000'), ('Covert', 1581, '42.58330', '-76.66670'), ('Dublin', 2269, '43.00000', '-76.91670'), ('East Varick', 720, '42.76670', '-76.76670'), ('Fayette', 6861, '42.81670', '-76.80000'), ('Hayts Corners', 612, '42.70000', '-76.78330'), ('Interlaken', 674, '42.61870', '-76.72470'), ('Kelly Corners', 674, '42.60000', '-76.75000'), ('Kendaia', 612, '42.75000', '-76.88330'), ('Kidders', 674, '42.65000', '-76.68330'), ('Lehigh Vly Jct', 509, '42.95000', '-76.76670'), ('Lodi', 338, '42.61330', '-76.82250'), ('Lodi Station', 338, '42.61670', '-76.85000'), ('Mac Dougall', 5111, '42.80000', '-76.86670'), ('Magee', 5111, '42.96670', '-76.83330'), ('Montezuma', 1297, '43.01670', '-76.71670'), ('Ovid', 612, '42.67530', '-76.82160'), ('Packwood Corners', 5111, '42.90000', '-76.90000'), ('Romulus', 612, '42.75000', '-76.83330'), ('Rose Hill', 5111, '42.85000', '-76.90000'), ('Seneca Falls', 6861, '42.90940', '-76.79580'), ('Sheldrake Spgs', 674, '42.66670', '-76.75000'), ('Townsendville', 674, '42.56670', '-76.76670'), ('Tyre', 6861, '42.98330', '-76.80000'), ('Waterloo', 5111, '42.90450', '-76.85940'), ('Willard', 612, '42.68330', '-76.86670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ017': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Auburn', 28574, '42.93320', '-76.56890'), ('Aurora', 720, '42.75220', '-76.69890'), ('Cascade', 1363, '42.75000', '-76.46670'), ('Casowasco', 1363, '42.78330', '-76.48330'), ('Cayuga', 509, '42.91940', '-76.72830'), ('Dresserville', 1363, '42.70000', '-76.31670'), ('East Genoa', 1363, '42.65000', '-76.50000'), ('East Venice', 1363, '42.68330', '-76.50000'), ('Edgewater', 1363, '42.76670', '-76.48330'), ('Ensenore', 1363, '42.78330', '-76.50000'), ('Fleming', 2359, '42.86670', '-76.55000'), ('Fosterville', 509, '42.95000', '-76.66670'), ('Genoa', 1363, '42.66670', '-76.53330'), ('Kelloggsville', 1363, '42.78330', '-76.35000'), ('King Ferry', 674, '42.66670', '-76.61670'), ('Ledyard', 720, '42.70000', '-76.61670'), ('Levanna', 720, '42.78330', '-76.68330'), ('Locke', 1363, '42.66670', '-76.41670'), ('Mapleton', 2359, '42.85000', '-76.58330'), ('Melrose Park', 2359, '42.90230', '-76.52830'), ('Merrifield', 2359, '42.78330', '-76.56670'), ('Montville', 1363, '42.71670', '-76.40000'), ('Moravia', 1363, '42.71210', '-76.42250'), ('New Hope', 1363, '42.80000', '-76.35000'), ('Niles', 2616, '42.83330', '-76.40000'), ('Scipio Center', 2359, '42.78330', '-76.53330'), ('Sempronius', 1363, '42.73330', '-76.31670'), ('Sennett', 2017, '43.00000', '-76.53330'), ('Sheldrake', 674, '42.66670', '-76.68330'), ('Sherwood', 1363, '42.75000', '-76.48330'), ('Throopsville', 28574, '42.96670', '-76.60000'), ('Union Springs', 1074, '42.84500', '-76.69330'), ('Venice Center', 1363, '42.73330', '-76.55000'), ('Willets', 720, '42.71670', '-76.68330'), ('Wyckoff', 2359, '42.83330', '-76.51670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ018': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Amboy', 1249, '43.06670', '-76.28330'), ('Apulia', 924, '42.81670', '-76.05000'), ('Baldwinsville', 7053, '43.15640', '-76.33380'), ('Bayberry', 2505, '43.15000', '-76.21670'), ('Bennetts Corners', 1826, '43.03330', '-76.36670'), ('Brewerton', 3453, '43.23550', '-76.14180'), ('Bridgeport', 1665, '43.15440', '-75.97520'), ('Camillus', 1249, '43.03930', '-76.30820'), ('Cedarvale', 10795, '42.96670', '-76.23330'), ('Cicero', 6862, '43.18330', '-76.11670'), ('Clay', 3453, '43.18330', '-76.18330'), ('De Witt', 8244, '43.03850', '-76.07340'), ('East Syracuse', 3178, '43.06370', '-76.06980'), ('Elbridge', 1103, '43.03420', '-76.44360'), ('Euclid', 906, '43.18330', '-76.21670'), ('Fabius', 355, '42.83550', '-75.98550'), ('Fairmount', 10795, '43.04060', '-76.24720'), ('Fayetteville', 4190, '43.03010', '-75.99780'), ('Ionia', 7053, '43.10000', '-76.38330'), ('Jacks Reef', 1314, '43.10000', '-76.43330'), ('Jamesville', 4593, '42.98330', '-76.06670'), ('Jordan', 1314, '43.06570', '-76.47330'), ('Kirkville', 3348, '43.06670', '-75.96670'), ('La Fayette', 924, '42.88330', '-76.10000'), ('Lakeland', 10795, '43.08330', '-76.25000'), ('Liverpool', 2505, '43.10590', '-76.20990'), ('Lower South Bay', 3453, '43.20000', '-76.06670'), ('Lyncourt', 4268, '43.08140', '-76.12620'), ('Lyndon', 4593, '43.02780', '-76.04060'), ('Lysander', 350, '43.21670', '-76.46670'), ('Manlius', 4819, '43.00090', '-75.98250'), ('Marcellus', 1826, '42.98410', '-76.34000'), ('Marietta', 1826, '42.91670', '-76.31670'), ('Marysville', 2616, '42.98330', '-76.43330'), ('Mattydale', 6367, '43.09940', '-76.14590'), ('Memphis', 1103, '43.08330', '-76.38330'), ('Minoa', 3348, '43.07540', '-76.01040'), ('Nedrow', 2265, '42.98330', '-76.13330'), ('North Syracuse', 6862, '43.13230', '-76.13020'), ('Onondaga', 5166, '43.00000', '-76.18330'), ('Oran', 4819, '42.98330', '-75.91670'), ('Otisco', 924, '42.86670', '-76.20000'), ('Owasco', 2359, '42.85000', '-76.45000'), ('Plainville', 350, '43.16670', '-76.45000'), ('Pompey', 355, '42.90000', '-76.01670'), ('Seneca Knolls', 2138, '43.13330', '-76.30000'), ('Skaneateles', 2616, '42.94500', '-76.42550'), ('Solvay', 6845, '43.05830', '-76.21200'), ('Syracuse', 147306, '43.04110', '-76.14410'), ('Taunton', 5166, '43.03330', '-76.21670'), ('Tully', 924, '42.79790', '-76.10800'), ('Van Buren', 3945, '43.11670', '-76.31670'), ('Vesper', 924, '42.81670', '-76.16670'), ('Village Green', 3945, '43.13330', '-76.31340'), ('Warners', 1249, '43.08330', '-76.33330'), ('Watervale', 4819, '42.95000', '-75.96670'), ('Westvale', 5166, '43.04180', '-76.21230'), ('Woodard', 2505, '43.15000', '-76.20000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ019': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bemus Point', 340, '42.16340', '-79.39120'), ('Brocton', 1547, '42.38920', '-79.44230'), ('Cassadaga', 676, '42.34100', '-79.31710'), ('Celoron', 1295, '42.10480', '-79.27610'), ('Cherry Creek', 551, '42.29510', '-79.10170'), ('Falconer', 2540, '42.11890', '-79.19730'), ('Forestville', 770, '42.46860', '-79.17500'), ('Fredonia', 10706, '42.44040', '-79.33180'), ('Frewsburg', 1965, '42.05720', '-79.16110'), ('Jamestown', 31730, '42.09740', '-79.23630'), ('Jamestown West', 2633, '42.08940', '-79.27880'), ('Lakewood', 3258, '42.10020', '-79.32000'), ('Mayville', 1756, '42.25290', '-79.50230'), ('Panama', 491, '42.07500', '-79.48610'), ('Ripley', 1030, '42.26560', '-79.71140'), ('Sherman', 714, '42.16010', '-79.59490'), ('Silver Creek', 2896, '42.54350', '-79.16890'), ('Sinclairville', 665, '42.26440', '-79.25820'), ('Westfield', 3481, '42.32200', '-79.57590')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ020': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Allegany', 1883, '42.09010', '-78.49150'), ('Cattaraugus', 1075, '42.32970', '-78.86790'), ('Delevan', 1089, '42.49100', '-78.47940'), ('East Randolph', 630, '42.17050', '-78.95080'), ('Ellicottville', 472, '42.27480', '-78.67260'), ('Franklinville', 1855, '42.33530', '-78.45650'), ('Gowanda', 2842, '42.46160', '-78.93530'), ('Lime Lake-Machias', 1269, '42.42840', '-78.48230'), ('Limestone', 411, '42.02400', '-78.63100'), ('Little Valley', 1130, '42.24930', '-78.79930'), ('Olean', 15347, '42.08210', '-78.43230'), ('Perrysburg', 408, '42.45950', '-79.00150'), ('Portville', 1024, '42.03560', '-78.33910'), ('Randolph', 1316, '42.16230', '-78.97990'), ('Salamanca', 6097, '42.16430', '-78.72270'), ('South Dayton', 662, '42.36270', '-79.05200'), ('St. Bonaventure', 2127, '42.08020', '-78.47520'), ('Weston Mills', 1608, '42.07590', '-78.37290'), ('Yorkshire', 1403, '42.52190', '-78.47840')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ021': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alfred', 3954, '42.25410', '-77.78980'), ('Almond', 461, '42.31900', '-77.73950'), ('Andover', 1073, '42.15700', '-77.79650'), ('Angelica', 903, '42.30430', '-78.02110'), ('Belmont', 952, '42.22240', '-78.03360'), ('Bolivar', 1173, '42.07030', '-78.16670'), ('Canaseraga', 594, '42.46400', '-77.77690'), ('Cuba', 1633, '42.21860', '-78.27630'), ('Fillmore', 502, '42.46800', '-78.11310'), ('Friendship', 1176, '42.20540', '-78.14240'), ('Houghton', 1748, '42.42650', '-78.16140'), ('Richburg', 448, '42.08990', '-78.15600'), ('Stannards', 868, '42.07880', '-77.91290'), ('Wellsville', 5171, '42.12100', '-77.94750')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ022': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Addison', 1797, '42.10580', '-77.23360'), ('Arkport', 832, '42.39190', '-77.69650'), ('Atlanta', 854, '42.55000', '-77.48330'), ('Avoca', 1008, '42.40830', '-77.42320'), ('Bath', 5641, '42.33700', '-77.31840'), ('Buena Vista', 2336, '42.30000', '-77.51670'), ('Cameron', 5641, '42.20000', '-77.40000'), ('Cameron Mills', 1797, '42.18330', '-77.36670'), ('Campbell', 822, '42.23330', '-77.20000'), ('Canisteo', 2336, '42.27030', '-77.60510'), ('Caton', 1147, '42.05000', '-77.03330'), ('Cohocton', 854, '42.50000', '-77.49930'), ('Coopers Plains', 3304, '42.18330', '-77.15000'), ('Corning', 10842, '42.14720', '-77.05670'), ('East Corning', 2482, '42.13330', '-76.98330'), ('Erwins', 3304, '42.11670', '-77.15000'), ('Fremont', 851, '42.40000', '-77.63330'), ('Gang Mills', 3304, '42.15360', '-77.13460'), ('Gibson', 10842, '42.15000', '-77.03330'), ('Greenwood', 2336, '42.13330', '-77.65000'), ('Hammondsport', 731, '42.40880', '-77.22310'), ('Hartsville', 461, '42.25000', '-77.70000'), ('Haskinville', 854, '42.41670', '-77.56670'), ('Hornby', 1842, '42.25000', '-77.05000'), ('Hornell', 9019, '42.32440', '-77.66050'), ('Howard', 1008, '42.36670', '-77.51670'), ('Jasper', 589, '42.11670', '-77.50000'), ('Kanona', 1008, '42.38330', '-77.36670'), ('Keuka', 731, '42.48330', '-77.13330'), ('Lindley', 481, '42.03330', '-77.13330'), ('Meads Creek', 1842, '42.26670', '-77.10000'), ('North Cameron', 5641, '42.25000', '-77.36670'), ('North Hornell', 851, '42.34570', '-77.66250'), ('Painted Post', 1842, '42.16290', '-77.09190'), ('Perkinsville', 1893, '42.53330', '-77.63330'), ('Prattsburg', 731, '42.51670', '-77.28330'), ('Pulteney', 731, '42.51670', '-77.16670'), ('Rheims', 731, '42.40000', '-77.25000'), ('Risingville', 822, '42.21670', '-77.31670'), ('Savona', 822, '42.28410', '-77.22320'), ('Sonora', 822, '42.33330', '-77.16670'), ('South Corning', 1147, '42.12400', '-77.03690'), ('South Dansville', 832, '42.46670', '-77.65000'), ('Thurston', 822, '42.21670', '-77.26670'), ('Troupsburg', 1119, '42.05000', '-77.55000'), ('Urbana', 731, '42.45000', '-77.18330'), ('Wayland', 1893, '42.56810', '-77.59210'), ('West Cameron', 5641, '42.23330', '-77.43330'), ('West Greenwood', 1073, '42.15000', '-77.71670'), ('Wheeler', 1008, '42.43330', '-77.33330'), ('Willeyville', 653, '42.03330', '-77.70000'), ('Woodhull', 589, '42.08330', '-77.41670'), ('Young Hickory', 1119, '42.05000', '-77.61670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ023': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alpine', 617, '42.31670', '-76.71670'), ('Altay', 1690, '42.43330', '-77.01670'), ('Beaver Dams', 297, '42.28330', '-76.96670'), ('Bennettsburg', 357, '42.43330', '-76.80000'), ('Bradford', 731, '42.36670', '-77.10000'), ('Burdett', 357, '42.41710', '-76.84730'), ('Catharine', 617, '42.31670', '-76.78330'), ('Cayuta', 617, '42.28330', '-76.70000'), ('East Steamburg', 674, '42.53330', '-76.76670'), ('Hector', 357, '42.50000', '-76.86670'), ('Logan', 357, '42.48330', '-76.83330'), ('Mecklenburg', 1581, '42.46670', '-76.70000'), ('Monterey', 1842, '42.30000', '-77.05000'), ('Montour Falls', 1797, '42.35020', '-76.84940'), ('Moreland', 1797, '42.30000', '-76.90000'), ('Odessa', 617, '42.31110', '-76.81750'), ('Perry City', 1581, '42.50000', '-76.70000'), ('Reading Center', 2149, '42.43330', '-76.93330'), ('Reynoldsville', 357, '42.46670', '-76.76670'), ('Searsburg', 1581, '42.53330', '-76.73330'), ('Smith Valley', 357, '42.41670', '-76.75000'), ('Townsend', 2149, '42.35000', '-76.95000'), ('Watkins Glen', 2149, '42.38030', '-76.86780'), ('Wayne', 1690, '42.46670', '-77.10000'), ('Wedgewood', 1797, '42.35000', '-76.88330'), ('Weston', 1690, '42.41670', '-77.06670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ024': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Big Flats', 2482, '42.14230', '-76.93040'), ('Big Flats Airport', 2184, '42.17100', '-76.88980'), ('Breesport', 2852, '42.16670', '-76.73330'), ('Chambers', 2184, '42.25000', '-76.95000'), ('Elmira', 30940, '42.09320', '-76.81010'), ('Elmira Arpt', 2184, '42.16670', '-76.90000'), ('Elmira Heights', 4170, '42.12640', '-76.82660'), ('Erin', 581, '42.18330', '-76.66670'), ('Fisherville', 2184, '42.16670', '-76.86670'), ('Horseheads', 6452, '42.16970', '-76.82990'), ('Horseheads North', 2852, '42.19200', '-76.80910'), ('Lowman', 631, '42.03330', '-76.71670'), ('Millport', 297, '42.26760', '-76.83640'), ('Owens Mill', 4607, '42.06670', '-76.60000'), ('Pine City', 5136, '42.03330', '-76.86670'), ('Sagetown', 2482, '42.03330', '-76.95000'), ('Seely Creek', 5136, '42.01447', '-76.89200'), ('Southport', 7396, '42.06380', '-76.81160'), ('Swartwood', 581, '42.23330', '-76.61670'), ('Tompkins Corners', 2184, '42.20000', '-76.88330'), ('Van Etten', 581, '42.19820', '-76.55470'), ('Webb Mills', 5136, '42.01670', '-76.88330'), ('Wellsburg', 631, '42.01280', '-76.72960'), ('West Elmira', 5136, '42.08950', '-76.85070')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ025': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Besemer', 2192, '42.40000', '-76.41670'), ('Brooktondale', 2192, '42.38330', '-76.40000'), ('Caroline', 1832, '42.38330', '-76.30000'), ('Cayuga Heights', 3273, '42.46910', '-76.48690'), ('Danby', 6003, '42.35000', '-76.48330'), ('Dryden', 1832, '42.49020', '-76.29890'), ('East Ithaca', 2192, '42.42700', '-76.46580'), ('Enfield', 647, '42.43330', '-76.63330'), ('Etna', 505, '42.48330', '-76.38330'), ('Forest Home', 941, '42.45310', '-76.47180'), ('Freeville', 505, '42.51190', '-76.34600'), ('Groton', 2470, '42.58690', '-76.36530'), ('Ithaca', 29287, '42.44390', '-76.50340'), ('Ithaca Tompkins Arpt', 3417, '42.48330', '-76.46670'), ('Jacksonville', 1581, '42.51670', '-76.61670'), ('Lake Ridge', 1581, '42.61670', '-76.61670'), ('Lansing', 3417, '42.49080', '-76.48640'), ('Lansingville', 1581, '42.60000', '-76.55000'), ('Mc Lean', 1345, '42.56670', '-76.28330'), ('Myers', 1115, '42.53330', '-76.53330'), ('Newfield', 647, '42.36670', '-76.58330'), ('Newfield Hamlet', 647, '42.35790', '-76.59410'), ('Northeast Ithaca', 2655, '42.47120', '-76.46800'), ('Northwest Ithaca', 1115, '42.47080', '-76.54320'), ('Nubia', 1345, '42.58330', '-76.28330'), ('Peruville', 2470, '42.55000', '-76.36670'), ('Slaterville Spgs', 1832, '42.40000', '-76.35000'), ('South Danby', 731, '42.30000', '-76.43330'), ('South Hill', 6003, '42.41150', '-76.49100'), ('Speedville', 855, '42.30000', '-76.26670'), ('Taughannock Falls', 1581, '42.53330', '-76.60000'), ('Trumansburg', 1581, '42.54040', '-76.66050'), ('West Danby', 647, '42.31670', '-76.51670'), ('West Dryden', 2655, '42.51670', '-76.41670'), ('West Groton', 2470, '42.60000', '-76.45000'), ('West Slaterville', 2192, '42.40000', '-76.36670'), ('Willow Creek', 1115, '42.51670', '-76.58330')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ026': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Brasher Center', 0, '44.86720', '-74.78420'), ('Brasher Falls', 1140, '44.80490', '-74.79370'), ('Chipman', 0, '44.78110', '-75.19640'), ('Eisenhower Lock', 0, '44.97920', '-74.85000'), ('Helena', 1140, '44.92000', '-74.72000'), ('Ironton', 0, '44.89830', '-74.68580'), ('Lawrenceville', 1140, '44.77000', '-74.65000'), ('Louisville', 1334, '44.90000', '-75.03000'), ('Massena', 11209, '44.92850', '-74.89340'), ('Norfolk', 1334, '44.80010', '-74.98600'), ('North Lawrence', 0, '44.80500', '-74.67530'), ('North Stockholm', 0, '44.76940', '-74.93500'), ('Norwood', 1685, '44.74840', '-74.99760'), ('Raymondville', 1334, '44.83000', '-74.97000'), ('Rooseveltown', 0, '44.97280', '-74.73140'), ('Stockholm Center', 0, '44.75940', '-74.83190'), ('Winthrop', 0, '44.79470', '-74.78720')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ027': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bangor', 0, '44.81220', '-74.39780'), ('Bombay', 0, '44.93890', '-74.56810'), ('Brushton', 479, '44.83090', '-74.51290'), ('Burke Center', 0, '44.91890', '-74.18000'), ('Constable', 6075, '44.93000', '-74.28000'), ('Dickinson', 479, '44.75000', '-74.55000'), ('Fort Covington', 479, '44.98000', '-74.47000'), ('Fort Covington Center', 0, '44.94830', '-74.46440'), ('Hogansburg', 479, '44.97000', '-74.63000'), ('Malone', 6075, '44.84820', '-74.29140'), ('Moira', 0, '44.81810', '-74.55610'), ('North Bangor', 0, '44.84190', '-74.40140'), ('North Burke', 0, '44.98670', '-74.17470'), ('South Bombay', 0, '44.89000', '-74.55470'), ('St. Regis', 0, '44.99720', '-74.65140'), ('West Bangor', 479, '44.80000', '-74.42000'), ('Westville Center', 0, '44.94470', '-74.39640')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ028': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Altona', 1056, '44.89220', '-73.65930'), ('Ausable Chasm', 0, '44.52250', '-73.46560'), ('Beekmantown', 18816, '44.77000', '-73.48000'), ('Cannon Corners', 0, '44.96000', '-73.74000'), ('Champlain', 1173, '44.98730', '-73.44460'), ('Chazy', 1173, '44.88000', '-73.43000'), ('Chazy Landing', 0, '44.88720', '-73.37860'), ('Cumberland Head', 1532, '44.71630', '-73.40300'), ('Irona', 0, '44.90470', '-73.70610'), ('Keeseville', 1850, '44.50370', '-73.48270'), ('Mooers', 440, '44.96530', '-73.58590'), ('Mooers Forks', 0, '44.95810', '-73.64110'), ('Morrisonville', 1702, '44.69070', '-73.55120'), ('Perry Mills', 0, '45.00030', '-73.50670'), ('Peru', 1514, '44.58000', '-73.53450'), ('Plattsburgh', 18816, '44.69550', '-73.45680'), ('Point Au Roche', 0, '44.78330', '-73.39170'), ('Rouses Point', 2277, '44.99200', '-73.36600'), ('Schuyler Falls', 0, '44.62860', '-73.55830'), ('Sciota', 440, '44.90000', '-73.55000'), ('Valcour', 0, '44.60500', '-73.44030'), ('West Beekmantown', 0, '44.77110', '-73.55500'), ('West Chazy', 0, '44.82060', '-73.50750'), ('West Plattsburgh', 0, '44.71360', '-73.56860')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ029': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Carry Falls Reservoir', 0, '44.44000', '-74.73000'), ('Childwold', 3935, '44.28000', '-74.67000'), ('Conifer', 0, '44.21670', '-74.61330'), ('Cranberry Lake', 860, '44.22000', '-74.83000'), ('Degrasse', 465, '44.35000', '-75.08000'), ('Fine', 860, '44.25000', '-75.13000'), ('Gale', 0, '44.26750', '-74.63140'), ('Horseshoe Lake', 0, '44.13470', '-74.63220'), ('Lake Ozonia', 0, '44.57860', '-74.59030'), ('Newton Falls', 0, '44.21060', '-74.98940'), ('Nicholville', 0, '44.69720', '-74.65970'), ('Oswegatchie', 0, '44.18280', '-75.07060'), ('Piercefield', 3935, '44.23000', '-74.57000'), ('Shurtleff', 0, '44.25530', '-74.74500'), ('South Colton', 9425, '44.50000', '-74.88000'), ('South Edwards', 0, '44.26750', '-75.20750'), ('South Russell', 0, '44.37140', '-75.12780'), ('Stark', 0, '44.45030', '-74.78190'), ('Star Lake', 860, '44.16020', '-75.03750'), ('Wanakena', 860, '44.13000', '-74.92000')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ030': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alder Brook', 0, '44.51330', '-73.94390'), ('Axton Landing', 0, '44.20280', '-74.32920'), ('Azure Mountain', 0, '44.57000', '-74.48000'), ('Bloomingdale', 5041, '44.42000', '-74.10000'), ('Brainardsville', 0, '44.85780', '-74.03390'), ('Bryants Mill', 0, '44.68640', '-74.11780'), ('Burke', 213, '44.90340', '-74.17090'), ('Chasm Falls', 6075, '44.75000', '-74.22000'), ('Chateaugay', 798, '44.92730', '-74.08080'), ('Debar Mountain', 0, '44.60000', '-74.21000'), ('Duane Center', 6075, '44.65000', '-74.27000'), ('Earlville', 0, '44.97030', '-74.05030'), ('Franklin Falls', 2638, '44.43000', '-73.98000'), ('Gabriels', 0, '44.43190', '-74.18140'), ('Harrietstown', 0, '44.39690', '-74.15890'), ('Lake Clear', 0, '44.36750', '-74.23310'), ('Lake Colby', 0, '44.35280', '-74.14390'), ('Loon Lake', 5041, '44.55000', '-74.07000'), ('Madawaska', 0, '44.51670', '-74.39750'), ('Onchiota', 0, '44.49420', '-74.12390'), ('Owls Head', 0, '44.73440', '-74.16920'), ('Paul Smiths', 5041, '44.43000', '-74.25000'), ('Rainbow Lake', 5041, '44.47000', '-74.17000'), ('Santa Clara', 479, '44.63000', '-74.45000'), ('Saranac Inn', 5041, '44.33000', '-74.28000'), ('Saranac Lake', 5041, '44.32500', '-74.13310'), ('St. Regis Falls', 479, '44.67000', '-74.53000'), ('St. Regis Mountain', 0, '44.40830', '-74.33000'), ('Tupper Lake', 3935, '44.23430', '-74.46890'), ('Upper St. Regis', 0, '44.39780', '-74.27000'), ('Vermontville', 0, '44.45170', '-74.06610'), ('Wawbeek', 0, '44.25440', '-74.33690'), ('Whippleville', 0, '44.80970', '-74.26220'), ('Wolf Pond', 0, '44.64920', '-74.06690')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ031': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Black Brook', 1514, '44.47000', '-73.73000'), ('Cadyville', 0, '44.69810', '-73.63190'), ('Chazy Lake', 0, '44.72000', '-73.83000'), ('Churubusco', 798, '44.95000', '-73.92000'), ('Clayburg', 512, '44.60000', '-73.83000'), ('Clintonville', 0, '44.46560', '-73.58310'), ('Dannemora', 4129, '44.72080', '-73.71930'), ('Ellenburg', 0, '44.89390', '-73.83690'), ('Ellenburg Center', 0, '44.86470', '-73.89750'), ('Ellenburg Depot', 1056, '44.90000', '-73.80000'), ('Ellenburg Mountain', 0, '44.79000', '-73.85000'), ('Harkness', 0, '44.52360', '-73.57000'), ('Harrigan', 0, '44.85250', '-73.96690'), ('Hawkeye', 2638, '44.51000', '-73.87000'), ('Jericho', 4129, '44.78000', '-73.65000'), ('Lyon Mountain', 458, '44.72000', '-73.92000'), ('Merrill', 798, '44.77000', '-73.95000'), ('Moffittsville', 0, '44.63860', '-73.75640'), ('Peasleeville', 0, '44.60080', '-73.67360'), ('Redford', 0, '44.60830', '-73.80470'), ('Riverview', 4129, '44.58000', '-73.90000'), ('Saranac', 0, '44.65140', '-73.74390'), ('Standish', 0, '44.68920', '-73.94940'), ('Union Falls', 0, '44.50720', '-73.91690')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ032': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Atwell', 336, '43.52470', '-74.94330'), ('Big Moose', 860, '43.81750', '-74.91350'), ('Eagle Bay', 860, '43.76670', '-74.82170'), ('McKeever', 665, '43.61220', '-75.10000'), ('Nobleboro', 336, '43.39530', '-74.86080'), ('Northwood', 330, '43.34900', '-75.07120'), ('Old Forge', 665, '43.71100', '-74.97170')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYZ033': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Blue Mountain Lake', 348, '43.87530', '-74.44420'), ('Hoffmeister', 2166, '43.40000', '-74.72000'), ('Indian Lake', 348, '43.78330', '-74.26920'), ('Long Lake', 3935, '43.97000', '-74.42000'), ('Piseco', 348, '43.42400', '-74.53600'), ('Raquette Lake', 348, '43.81300', '-74.65720'), ('Sabael', 348, '43.72830', '-74.30700'), ('Sabattis', 3935, '44.08120', '-74.70120'), ('Speculator', 348, '43.58060', '-74.38060'), ('Wells', 1139, '43.39030', '-74.29120')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYZ034': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ausable Forks', 1514, '44.43000', '-73.68000'), ('Chilson', 0, '43.87720', '-73.52920'), ('Deerhead', 0, '44.35220', '-73.54360'), ('Elizabethtown', 1747, '44.22000', '-73.60000'), ('Ironville', 0, '43.92250', '-73.53610'), ('Keene', 2638, '44.25000', '-73.78000'), ('Keene Valley', 2638, '44.20000', '-73.78000'), ('Lake Placid', 2638, '44.28340', '-73.98500'), ('Lewis', 524, '44.27000', '-73.57000'), ('Minerva', 3208, '43.78000', '-73.97000'), ('Mineville', 1747, '44.08910', '-73.52750'), ('Moriah Center', 0, '44.06110', '-73.51030'), ('Mount Marcy', 0, '44.10000', '-73.90000'), ('Mount Van Hoevenberg', 0, '44.21000', '-73.92970'), ('Newcomb', 5041, '43.97000', '-74.17000'), ('New Russia', 0, '44.16330', '-73.61190'), ('North Elba', 0, '44.24330', '-73.95470'), ('North Hudson', 0, '43.95250', '-73.72890'), ('North Jay', 0, '44.39830', '-73.67390'), ('Olmstedville', 0, '43.77140', '-73.93170'), ('Paradox', 2726, '43.90000', '-73.63000'), ('Pharoah Mountain', 0, '43.81830', '-73.65860'), ('Ray Brook', 5041, '44.30000', '-74.08000'), ('Schroon Falls', 0, '43.89920', '-73.74920'), ('Schroon Lake', 2726, '43.83000', '-73.73000'), ('Severance', 0, '43.87580', '-73.73080'), ('South Schroon', 0, '43.79500', '-73.79250'), ('St. Huberts', 0, '44.15720', '-73.77360'), ('Tahawus', 0, '44.05060', '-74.05140'), ('Underwood', 1747, '44.08000', '-73.68000'), ('Upper Jay', 2638, '44.33000', '-73.78000'), ('Vanderwhacker Mountain', 0, '43.87000', '-74.12000'), ('Wilmington', 2638, '44.38000', '-73.82000'), ('Witherbee', 0, '44.08750', '-73.53330')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ035': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Boquet', 0, '44.30360', '-73.40280'), ('Crown Point', 0, '43.95030', '-73.43750'), ('Crown Point Center', 2726, '43.95000', '-73.42000'), ('Essex', 0, '44.31000', '-73.35310'), ('Moriah', 1152, '44.05000', '-73.50000'), ('Port Douglass', 0, '44.48580', '-73.41830'), ('Port Henry', 1152, '44.04700', '-73.46070'), ('Port Kent', 1850, '44.53000', '-73.42000'), ('Reber', 0, '44.32360', '-73.48000'), ('Ticonderoga', 2726, '43.84700', '-73.42560'), ('Wadhams', 524, '44.23000', '-73.47000'), ('Westport', 524, '44.17880', '-73.43610'), ('Whallonsburg', 0, '44.26420', '-73.40330'), ('Willsboro', 1850, '44.37000', '-73.40000'), ('Willsboro Point', 0, '44.40860', '-73.37860')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ036': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Brookfield', 579, '42.81670', '-75.31670'), ('Canastota', 4425, '43.08430', '-75.75570'), ('Cazenovia', 2614, '42.92940', '-75.85220'), ('Chittenango', 4855, '43.04560', '-75.87330'), ('Deruyter', 531, '42.75890', '-75.88730'), ('Earlville', 791, '42.74030', '-75.54360'), ('Eaton', 3509, '42.84988', '-75.61200'), ('Erieville', 2148, '42.85000', '-75.73330'), ('Georgetown', 2148, '42.76670', '-75.71670'), ('Hamilton', 3509, '42.82450', '-75.54730'), ('Hubbardsville', 3509, '42.81670', '-75.46670'), ('Kenwood', 3147, '43.05000', '-75.61670'), ('Lakeport', 758, '43.15000', '-75.88330'), ('Lebanon', 3509, '42.78330', '-75.63330'), ('Lenox', 561, '43.06670', '-75.71670'), ('Madison', 315, '42.89790', '-75.51100'), ('Morrisville', 2148, '42.89800', '-75.64490'), ('Munnsville', 437, '42.97710', '-75.58760'), ('Nelson', 2614, '42.91670', '-75.75000'), ('North Brookfield', 1721, '42.85000', '-75.36670'), ('Oneida', 10987, '43.07580', '-75.66380'), ('Pecksport', 3509, '42.86670', '-75.55000'), ('Perryville', 4855, '43.00000', '-75.81670'), ('Peterboro', 2148, '42.96670', '-75.66670'), ('Pierceville', 3509, '42.85000', '-75.60000'), ('Poolville', 791, '42.76670', '-75.50000'), ('Sheds', 531, '42.80000', '-75.81670'), ('Solsville', 315, '42.90000', '-75.50000'), ('South Bay', 1071, '43.16670', '-75.76670'), ('South Brookfield', 1129, '42.75000', '-75.30000'), ('South Lebanon', 241, '42.75000', '-75.65000'), ('Stockbridge', 437, '42.98330', '-75.58330'), ('Sullivan', 4855, '43.05000', '-75.86670'), ('Union Corners', 4425, '43.11670', '-75.75000'), ('Wampsville', 561, '43.07770', '-75.70960'), ('West Eaton', 2148, '42.85000', '-75.65000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ037': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Augusta', 698, '42.96670', '-75.51670'), ('Barneveld', 332, '43.27400', '-75.18910'), ('Barnveld', 332, '43.26670', '-75.18330'), ('Blossvale', 1071, '43.28330', '-75.65000'), ('Bridgewater', 579, '42.87770', '-75.25020'), ('Chadwicks', 1886, '43.03330', '-75.28330'), ('Clark Mills', 1424, '43.08420', '-75.37660'), ('Clayville', 445, '42.97420', '-75.24980'), ('Clinton', 1952, '43.04890', '-75.37870'), ('Colemans', 1459, '43.13330', '-75.35000'), ('Deerfield', 60651, '43.11670', '-75.21670'), ('Delta Lake', 34950, '43.28330', '-75.45000'), ('Floyd', 1459, '43.21670', '-75.35000'), ('Griffiss AFB', 34950, '43.23330', '-75.41670'), ('Holland Patent', 461, '43.24180', '-75.25740'), ('Hubbard Corners', 1721, '42.96670', '-75.33330'), ('Kirkland', 1424, '43.08330', '-75.38330'), ('Lee', 34950, '43.28330', '-75.58330'), ('Maynard', 2675, '43.13330', '-75.26670'), ('New Hartford', 1886, '43.07110', '-75.28960'), ('New London', 34950, '43.20000', '-75.60000'), ('New York Mills', 3191, '43.10030', '-75.29320'), ('Oneida Castle', 627, '43.08390', '-75.63230'), ('Oriskany', 1459, '43.15590', '-75.33280'), ('Oriskany Falls', 698, '42.93800', '-75.46330'), ('Paris', 445, '43.00000', '-75.31670'), ('Rome', 34950, '43.22550', '-75.48930'), ('Sauquoit', 445, '43.00000', '-75.25000'), ('Sherrill', 3147, '43.07000', '-75.60000'), ('Stittville', 461, '43.21670', '-75.28330'), ('Stockwell', 1721, '42.88330', '-75.40000'), ('Sylvan Beach', 1071, '43.20660', '-75.72550'), ('Trenton', 332, '43.28330', '-75.18330'), ('Trenton Falls', 332, '43.26670', '-75.16670'), ('Utica', 60651, '43.09690', '-75.22840'), ('Vernon', 1155, '43.08030', '-75.53840'), ('Vernon Center', 1155, '43.05000', '-75.51670'), ('Verona', 3147, '43.13330', '-75.58330'), ('Verona Beach', 1071, '43.20000', '-75.73330'), ('Verona Mills', 34950, '43.20000', '-75.56670'), ('Vienna', 1071, '43.23330', '-75.71670'), ('Waterville', 1721, '42.93100', '-75.38130'), ('Westmoreland', 1424, '43.11670', '-75.41670'), ('Whitesboro', 3943, '43.12380', '-75.29700'), ('Yorkville', 2675, '43.11170', '-75.27390')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ038': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Cold Brook', 336, '43.24090', '-75.03760'), ('Dolgeville', 2166, '43.10120', '-74.77450'), ('Frankfort', 2537, '43.03810', '-75.07190'), ('Herkimer', 7498, '43.02870', '-74.99280'), ('Ilion', 8610, '43.01120', '-75.04070'), ('Jordanville', 1255, '42.91570', '-74.95120'), ('Little Falls', 5188, '43.04540', '-74.85590'), ('Middleville', 550, '43.13830', '-74.97110'), ('Mohawk', 2660, '43.00940', '-75.00720'), ('Newport', 640, '43.18730', '-75.01500'), ('Ohio', 336, '43.32220', '-74.97870'), ('Poland', 451, '43.22610', '-75.06150'), ('West Winfield', 862, '42.88360', '-75.19170')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYZ039': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Broadalbin', 1411, '43.05950', '-74.19770'), ('Ephratah', 622, '43.00030', '-74.54470'), ('Gloversville', 15413, '43.05020', '-74.34700'), ('Johnstown', 8511, '43.00850', '-74.37440')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYZ040': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ames', 173, '42.83570', '-74.60300'), ('Amsterdam', 18355, '42.94180', '-74.19090'), ('Canajoharie', 2257, '42.90300', '-74.57150'), ('Charleston Four Corners', 710, '42.80270', '-74.40200'), ('Fonda', 810, '42.95330', '-74.37310'), ('Fort Johnson', 491, '42.95730', '-74.23930'), ('Fort Plain', 2288, '42.93170', '-74.62830'), ('Fultonville', 710, '42.94510', '-74.37050'), ('Hagaman', 1357, '42.97480', '-74.15380'), ('Nelliston', 622, '42.93200', '-74.60820'), ('Palatine Bridge', 706, '42.91080', '-74.57520'), ('St. Johnsville', 1685, '43.00050', '-74.67680'), ('Tribes Hill', 1024, '42.94770', '-74.30180'), ('Wellsville', 1024, '42.88200', '-74.27770')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYZ041': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Corinth', 2474, '43.24550', '-73.83070'), ('Day Center', 1139, '43.30500', '-74.01720'), ('Edinburg', 1139, '43.22620', '-74.09250'), ('Gansevoort', 3141, '43.19600', '-73.64780'), ('Milton', 2692, '43.03350', '-73.85300'), ('Porter Corners', 2474, '43.14750', '-73.88670'), ('Rock City Falls', 2692, '43.06150', '-73.92130'), ('Saratoga Lake', 26186, '43.03170', '-73.73830'), ('Saratoga Springs', 26186, '43.06760', '-73.77880'), ('Schuylerville', 1197, '43.10200', '-73.59060'), ('South Glens Falls', 3368, '43.29340', '-73.63530'), ('Stillwater', 1644, '42.95000', '-73.64490'), ('The Saratoga Battllefield', 1644, '43.00250', '-73.64370'), ('Victory', 1197, '43.09360', '-73.59240')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ042': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bolton Landing', 3208, '43.55830', '-73.65200'), ('Hague', 2726, '43.74550', '-73.49700'), ('Johnsburg', 3208, '43.51820', '-73.96120'), ('North Creek', 3208, '43.69730', '-73.98570'), ('North River', 3208, '43.73770', '-74.04950'), ('Warrensburg', 3208, '43.50180', '-73.77540')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ043': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Fort Ann', 471, '43.41500', '-73.49060'), ('Granville', 2644, '43.40830', '-73.26100'), ('Huletts Landing', 2667, '43.64080', '-73.50930'), ('Whitehall', 2667, '43.56020', '-73.41840')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ044': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Baltimore', 924, '42.73330', '-76.11670'), ('Cincinnatus', 1063, '42.53330', '-75.88330'), ('Como', 3368, '42.68330', '-76.26670'), ('Cortland', 18740, '42.60090', '-76.17940'), ('Cortland West', 1345, '42.58900', '-76.22790'), ('Cuyler', 531, '42.73330', '-75.93330'), ('East Freetown', 1063, '42.55000', '-75.96670'), ('East Homer', 1000, '42.66670', '-76.10000'), ('Freetown Corners', 1063, '42.51670', '-76.03330'), ('Glen Haven', 3368, '42.76670', '-76.26670'), ('Gracie', 1345, '42.56670', '-76.25000'), ('Harford', 1832, '42.43330', '-76.23330'), ('Homer', 3368, '42.63780', '-76.18360'), ('Hunts Corners', 1063, '42.41670', '-76.11670'), ('Keeney', 355, '42.78330', '-75.95000'), ('Lapeer', 1063, '42.43330', '-76.10000'), ('Marathon', 1063, '42.44280', '-76.03510'), ('McGraw', 1000, '42.59200', '-76.09820'), ('Munsons Corners', 2426, '42.58010', '-76.20530'), ('Preble', 924, '42.73330', '-76.13330'), ('Scott', 3368, '42.73330', '-76.23330'), ('Solon', 1000, '42.60000', '-76.01670'), ('South Cortland', 2426, '42.56670', '-76.21670'), ('Taylor', 531, '42.61670', '-75.88330'), ('Texas Valley', 1063, '42.48330', '-75.96670'), ('Tripoli', 531, '42.73330', '-75.95000'), ('Truxton', 924, '42.71670', '-76.03330'), ('Union Valley', 531, '42.63330', '-75.88330'), ('Virgil', 2426, '42.51670', '-76.18330'), ('Willet', 1063, '42.46670', '-75.90000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ045': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Afton', 836, '42.22910', '-75.52520'), ('Bainbridge', 1365, '42.29600', '-75.48040'), ('Brisben', 1701, '42.36670', '-75.68330'), ('Columbus', 1129, '42.68330', '-75.36670'), ('Coventry', 1584, '42.31670', '-75.63330'), ('German', 1701, '42.48330', '-75.85000'), ('Greene', 1701, '42.33000', '-75.77050'), ('Guilford', 1365, '42.40000', '-75.48330'), ('Holmesville', 375, '42.51670', '-75.40000'), ('Lincklaen', 531, '42.66670', '-75.85000'), ('Mc Donough', 1701, '42.50000', '-75.76670'), ('Mt Upton', 375, '42.41670', '-75.38330'), ('New Berlin', 1129, '42.62410', '-75.33570'), ('Nineveh', 836, '42.20000', '-75.60000'), ('North Norwich', 1455, '42.61670', '-75.53330'), ('Norwich', 7355, '42.53500', '-75.52370'), ('Otselic', 241, '42.71670', '-75.71670'), ('Oxford', 1584, '42.44060', '-75.59620'), ('Pharsalia', 531, '42.58330', '-75.76670'), ('Pitcher', 531, '42.58330', '-75.85000'), ('Plymouth', 241, '42.61670', '-75.60000'), ('Polkville', 7355, '42.51670', '-75.51670'), ('Preston', 7355, '42.53330', '-75.60000'), ('Rockdale', 4068, '42.38330', '-75.41670'), ('Sherburne', 1455, '42.68030', '-75.49750'), ('Smithville Center', 1701, '42.40000', '-75.71670'), ('Smithville Flats', 1701, '42.40000', '-75.80000'), ('Smyrna', 241, '42.68580', '-75.56750'), ('South Otselic', 531, '42.65000', '-75.78330'), ('South Oxford', 1584, '42.38330', '-75.61670'), ('South Plymouth', 7355, '42.58330', '-75.56670'), ('Tyner', 1584, '42.43330', '-75.66670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ046': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bowerstown', 2032, '42.68330', '-74.90000'), ('Burlington', 862, '42.71670', '-75.13330'), ('Cherry Valley', 592, '42.80000', '-74.75000'), ('Colliersville', 13292, '42.48330', '-74.98330'), ('Cooperstown', 2032, '42.69970', '-74.93070'), ('Cooperstown Jct', 511, '42.50000', '-74.95000'), ('East Springfield', 592, '42.83330', '-74.80000'), ('Edmeston', 1129, '42.70000', '-75.23330'), ('Elk Creek', 573, '42.60000', '-74.83330'), ('Emmons', 13292, '42.46670', '-75.01670'), ('Exeter Center', 1255, '42.78330', '-75.06670'), ('Gilbertsville', 375, '42.46940', '-75.32140'), ('Hartwick', 511, '42.65000', '-75.05000'), ('Hyde Park', 2032, '42.66670', '-74.95000'), ('Index', 2032, '42.66535', '-74.95900'), ('Lambs Corners', 1129, '42.68330', '-75.31670'), ('Lathams Corners', 375, '42.46670', '-75.40000'), ('Laurens', 277, '42.53140', '-75.08860'), ('Leonardsville', 579, '42.80000', '-75.23330'), ('Maryland', 573, '42.53330', '-74.88330'), ('Middlefield', 2032, '42.68330', '-74.83330'), ('Milford', 511, '42.59000', '-74.94730'), ('Morris', 591, '42.54800', '-75.24550'), ('Mt Vision', 277, '42.56670', '-75.05000'), ('New Lisbon', 591, '42.58330', '-75.18330'), ('Oaksville', 2032, '42.73330', '-75.00000'), ('Oneonta', 13292, '42.45470', '-75.06730'), ('Otego', 1052, '42.39160', '-75.17840'), ('Pittsfield', 1129, '42.63330', '-75.26670'), ('Portlandville', 511, '42.53330', '-74.96670'), ('Richfield Springs', 1255, '42.85440', '-74.98620'), ('Schenevus', 573, '42.54730', '-74.82460'), ('South Edmeston', 1129, '42.68330', '-75.30000'), ('South New Berlin', 375, '42.53330', '-75.35000'), ('Springfield', 592, '42.83330', '-74.85000'), ('Toddsville', 2032, '42.68330', '-74.95000'), ('Unadilla', 1127, '42.32700', '-75.31670'), ('Unadilla Forks', 579, '42.83330', '-75.23330'), ('Wells Bridge', 1052, '42.36670', '-75.25000'), ('West End', 1813, '42.46860', '-75.09410'), ('Westford', 573, '42.65000', '-74.78330'), ('Westville', 511, '42.63330', '-74.90000'), ('Worcester', 573, '42.58330', '-74.75000')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ047': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Breakabeen', 1398, '42.52970', '-74.40970'), ('Central Bridge', 1030, '42.70880', '-74.33620'), ('Cobleskill', 4533, '42.67910', '-74.48610'), ('Esperance', 380, '42.76440', '-74.25770'), ('Gilboa', 1398, '42.39780', '-74.39780'), ('Jefferson', 1265, '42.48020', '-74.61250'), ('Livingstonville', 1398, '42.48800', '-74.26930'), ('Middleburgh', 1398, '42.59890', '-74.32990'), ('North Blenheim', 1398, '42.47350', '-74.43750'), ('Richmondville', 786, '42.63320', '-74.56450'), ('Schoharie', 1030, '42.66670', '-74.31290'), ('Sharon Springs', 547, '42.79490', '-74.61750'), ('Summit', 786, '42.58000', '-74.58650')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ048': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Delanson', 385, '42.74770', '-74.18500'), ('Duanesburg', 339, '42.76220', '-74.13350'), ('Mariaville', 710, '42.82930', '-74.13770')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ049': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Alplaus', 6064, '42.85570', '-73.90250'), ('East Glenville', 6064, '42.86010', '-73.91590'), ('Niskayuna', 4892, '42.81710', '-73.89800'), ('Rotterdam', 20536, '42.77840', '-73.95450'), ('Rotterdam Junction', 918, '42.87420', '-74.04600'), ('Schenectady', 61821, '42.80180', '-73.92810'), ('Scotia', 7957, '42.83200', '-73.96080')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ050': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ballston Spa', 5556, '43.00600', '-73.85150'), ('Burnt Hills', 6064, '42.91180', '-73.90050'), ('Clifton Park', 2287, '42.85480', '-73.80850'), ('Galway', 214, '43.01880', '-74.03180'), ('Mechanicville', 5019, '42.90400', '-73.69010'), ('Round Lake', 604, '42.93720', '-73.79610'), ('Waterford', 2204, '42.79180', '-73.67940')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ051': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Altamont', 1737, '42.70510', '-74.03630'), ('Berne', 1737, '42.62850', '-74.13430'), ('Knox', 1737, '42.67130', '-74.11600'), ('Preston Hollow', 1436, '42.44170', '-74.20730'), ('Westerlo', 2705, '42.51630', '-74.04530')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ052': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Albany', 95658, '42.66060', '-73.77850'), ('Cohoes', 15521, '42.77260', '-73.70840'), ('Colonie', 7916, '42.72080', '-73.83460'), ('Delmar', 8292, '42.62430', '-73.83350'), ('Feura Bush', 8292, '42.57820', '-73.88000'), ('Green Island', 2278, '42.74780', '-73.69260'), ('Guilderland', 7188, '42.69580', '-73.89220'), ('Latham', 10131, '42.74520', '-73.74690'), ('Loudonville', 10822, '42.70730', '-73.76610'), ('Menands', 3910, '42.69120', '-73.72860'), ('Ravena', 3369, '42.47660', '-73.81230'), ('Selkirk', 1619, '42.53050', '-73.80270'), ('Voorheesville', 2705, '42.64640', '-73.93320'), ('Watervliet', 10207, '42.72480', '-73.70750'), ('Westmere', 7188, '42.68760', '-73.87480')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ053': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Averill Park', 1517, '42.63500', '-73.55340'), ('Castleton-On-hudson', 1619, '42.53230', '-73.75080'), ('East Greenbush', 4085, '42.59440', '-73.70320'), ('Hampton Manor', 2525, '42.62080', '-73.72890'), ('Nassau', 1161, '42.51370', '-73.61160'), ('Poestenkill', 1024, '42.69360', '-73.56450'), ('Rensselaer', 7761, '42.64440', '-73.73530'), ('Schaghticoke', 676, '42.89950', '-73.58660'), ('Troy', 49170, '42.73430', '-73.67550'), ('Valley Falls', 491, '42.90080', '-73.56290'), ('West Sand Lake', 2439, '42.63870', '-73.60660'), ('Wyantskill', 3329, '42.68910', '-73.64930')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ054': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Berlin', 4791, '42.70000', '-73.38000'), ('Eagle Bridge', 3436, '42.94330', '-73.39990'), ('Grafton', 1024, '42.76720', '-73.43670'), ('Hoosick Falls', 3436, '42.90050', '-73.35040'), ('Stephentown', 1517, '42.54950', '-73.44330')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ055': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Apalachin', 1126, '42.07230', '-76.16590'), ('Barton', 574, '42.05000', '-76.45000'), ('Berkshire', 1071, '42.30000', '-76.18330'), ('Campville', 1126, '42.08330', '-76.15000'), ('Candor', 855, '42.22730', '-76.33760'), ('Catatonk', 3911, '42.15000', '-76.31670'), ('East Berkshire', 1071, '42.30000', '-76.13330'), ('Foster', 1126, '42.13330', '-76.15000'), ('Jenksville', 1071, '42.26670', '-76.25000'), ('Litchfield', 5791, '42.01670', '-76.46670'), ('Lockwood', 4607, '42.10000', '-76.55000'), ('Lounsberry', 574, '42.06670', '-76.33330'), ('Newark Valley', 1071, '42.22300', '-76.18590'), ('Nichols', 574, '42.01990', '-76.36880'), ('North Spencer', 731, '42.25000', '-76.51670'), ('Owego', 3911, '42.10480', '-76.26270'), ('Richford', 1071, '42.35000', '-76.20000'), ('Spencer', 731, '42.21510', '-76.49480'), ('Tioga Center', 574, '42.06670', '-76.35000'), ('Tioga Terrace', 1126, '42.05000', '-76.11670'), ('Waverly', 4607, '42.01220', '-76.54110'), ('Weltonville', 1071, '42.20000', '-76.25000'), ('West Candor', 731, '42.21670', '-76.41670'), ('West Newark', 1071, '42.25000', '-76.23330'), ('Willseyville', 855, '42.28330', '-76.38330')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ056': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Belden', 901, '42.20000', '-75.66670'), ('Binghamton', 47380, '42.10160', '-75.90950'), ('Castle Creek', 1697, '42.23330', '-75.91670'), ('Center Lisle', 302, '42.36670', '-76.06670'), ('Chenango Bridge', 1697, '42.16670', '-75.86670'), ('Chenango Forks', 1697, '42.23330', '-75.86670'), ('Conklin', 704, '42.03330', '-75.80000'), ('East Windsor', 901, '42.11670', '-75.61670'), ('Endicott', 13038, '42.09790', '-76.06360'), ('Endwell', 11706, '42.11720', '-76.02330'), ('Hale Eddy', 1699, '42.00000', '-75.36670'), ('Harpursville', 836, '42.18330', '-75.61670'), ('Johnson City', 15535, '42.12360', '-75.96180'), ('Kirkwood', 704, '42.03330', '-75.78330'), ('Lisle', 302, '42.35070', '-76.00370'), ('Maine', 12602, '42.20000', '-76.06670'), ('Nanticoke', 302, '42.28330', '-76.06670'), ('Nws Binghamton', 15535, '42.20700', '-75.98470'), ('Port Crane', 1697, '42.16670', '-75.83330'), ('Port Dickinson', 1697, '42.13660', '-75.89200'), ('Sanford', 1699, '42.10000', '-75.48330'), ('Sanitaria Spgs', 1697, '42.16670', '-75.76670'), ('Union Center', 13038, '42.15000', '-76.06670'), ('Vestal', 13038, '42.08330', '-76.05000'), ('Vestal Center', 13038, '42.03330', '-76.01670'), ('West Corners', 13038, '42.11670', '-76.06670'), ('Whitney Point', 965, '42.33140', '-75.96800'), ('Windsor', 901, '42.07720', '-75.64100')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ057': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Andes', 289, '42.19000', '-74.78420'), ('Arkville', 643, '42.15000', '-74.61670'), ('Beerston', 3070, '42.13330', '-75.16670'), ('Bovina Center', 289, '42.26670', '-74.78330'), ('Butts Corner', 573, '42.46670', '-74.81670'), ('Cannonsville', 1699, '42.10000', '-75.31670'), ('Colchester', 3070, '42.16670', '-75.08330'), ('Cooks Falls', 1355, '41.93330', '-74.96670'), ('Corbett', 3070, '42.05000', '-75.01670'), ('Davenport', 573, '42.46670', '-74.85000'), ('Davenport Center', 573, '42.45000', '-74.91670'), ('Delhi', 2583, '42.28000', '-74.91450'), ('Deposit', 1699, '42.06400', '-75.42190'), ('Downsville', 3070, '42.08330', '-75.00000'), ('Dunraven', 643, '42.11670', '-74.70000'), ('East Branch', 1189, '41.98330', '-75.11670'), ('East Delhi', 2583, '42.30000', '-74.88330'), ('East Meredith', 2583, '42.41670', '-74.88330'), ('East Sidney', 402, '42.33330', '-75.23330'), ('Fergusonville', 573, '42.50000', '-74.83330'), ('Fishs Eddy', 1189, '41.96670', '-75.16670'), ('Fleischmanns', 351, '42.15560', '-74.53350'), ('Franklin', 402, '42.34260', '-75.16640'), ('Halcottsville', 643, '42.20000', '-74.60000'), ('Hamden', 2583, '42.20000', '-75.00000'), ('Hancock', 1189, '41.95340', '-75.28330'), ('Harvard', 3070, '42.03330', '-75.11670'), ('Hobart', 390, '42.37120', '-74.66890'), ('Kortright', 390, '42.40000', '-74.80000'), ('Loomis', 3070, '42.20000', '-75.21670'), ('Margaretville', 643, '42.14440', '-74.65210'), ('Masonville', 4068, '42.25000', '-75.36670'), ('Meredith', 2583, '42.35000', '-74.95000'), ('Meridale', 2583, '42.36670', '-74.95000'), ('New Kingston', 643, '42.21670', '-74.68330'), ('North Franklin', 13292, '42.40000', '-75.08330'), ('Peabrook', 1189, '41.90000', '-75.13330'), ('Rock Rift', 3070, '42.10000', '-75.20000'), ('Roxbury', 351, '42.28330', '-74.56670'), ('Shinhopple', 3070, '42.05000', '-75.06670'), ('Sidney', 4068, '42.30590', '-75.39770'), ('Sidney Center', 1127, '42.28330', '-75.25000'), ('Stamford', 1265, '42.40890', '-74.61760'), ('Stilesville', 1699, '42.08330', '-75.40000'), ('Trout Creek', 1127, '42.20000', '-75.26670'), ('Walton', 3070, '42.16970', '-75.13070'), ('Wolf Hollow', 289, '42.15000', '-74.80000'), ('Youngs', 1265, '42.30000', '-75.31670')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ058': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Hunter', 490, '42.21120', '-74.21570'), ('Prattsville', 351, '42.31620', '-74.43330'), ('Tannersville', 448, '42.19360', '-74.13490'), ('Windham', 359, '42.30520', '-74.25250')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ059': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Athens', 1695, '42.26710', '-73.81290'), ('Cairo', 1390, '42.30540', '-74.00990'), ('Catskill', 4392, '42.21480', '-73.86550'), ('Coxsackie', 2895, '42.35820', '-73.80930'), ('Jefferson Heights', 1104, '42.23640', '-73.87280')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ060': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Claverack', 1061, '42.22320', '-73.72490'), ('Clermont', 1163, '42.08980', '-73.82930'), ('Elizaville', 1805, '42.04920', '-73.79470'), ('Hudson', 7524, '42.25130', '-73.78650'), ('Kinderhook', 1275, '42.39460', '-73.70410'), ('Livingston', 1061, '42.13930', '-73.76320'), ('Niverville', 1737, '42.44550', '-73.64880'), ('Philmont', 1480, '42.24830', '-73.64670'), ('Stottville', 1355, '42.28920', '-73.75230'), ('Valatie', 1712, '42.41480', '-73.67670')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ061': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ancram', 1412, '42.05130', '-73.63530'), ('Austerlitz', 1184, '42.32000', '-73.47000'), ('Chatham', 1758, '42.36130', '-73.59790'), ('Copake', 925, '42.10000', '-73.55000'), ('New Lebanon', 48622, '42.46880', '-73.39250')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ062': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Aden', 3975, '41.85000', '-74.68330'), ('Anderson', 3975, '41.90000', '-74.71670'), ('Barryville', 1064, '41.48330', '-74.93330'), ('Beaver Brook', 420, '41.56670', '-74.93330'), ('Bethel', 420, '41.68330', '-74.88330'), ('Bloomingburg', 353, '41.55610', '-74.44150'), ('Bradley', 3975, '41.81670', '-74.70000'), ('Bridgeville', 6512, '41.65000', '-74.66670'), ('Briscoe', 420, '41.76670', '-74.88330'), ('Callicoon', 216, '41.76670', '-75.05000'), ('Callicoon Center', 420, '41.83691', '-74.94700'), ('Cochecton', 420, '41.70000', '-75.05000'), ('Cochecton Center', 420, '41.65483', '-74.98300'), ('Debruce', 1355, '41.91670', '-74.73330'), ('Eldred', 1064, '41.53330', '-74.90000'), ('Fallsburg', 2061, '41.73330', '-74.61670'), ('Ferndale', 3975, '41.76670', '-74.73330'), ('Forrestburg', 6512, '41.55000', '-74.76670'), ('Fosterdale', 420, '41.70000', '-74.98330'), ('Fremont', 420, '41.83330', '-75.05000'), ('Glen Spey', 1064, '41.46670', '-74.81670'), ('Glen Wild', 902, '41.65000', '-74.60000'), ('Grahamsville', 902, '41.85000', '-74.56670'), ('Harris', 6512, '41.71670', '-74.73330'), ('Hartwood', 6512, '41.53330', '-74.68330'), ('Hasbrouck', 2061, '41.78330', '-74.61670'), ('Haven', 989, '41.53330', '-74.53330'), ('Hazel', 1355, '41.91670', '-74.86670'), ('Highland Lake', 1064, '41.51670', '-74.86670'), ('Highview', 1234, '41.56670', '-74.46670'), ('Hortonville', 420, '41.76670', '-75.03330'), ('Hurleyville', 2061, '41.73330', '-74.68330'), ('Jeffersonville', 420, '41.77940', '-74.93260'), ('Joscelyn', 1355, '41.95000', '-74.85000'), ('Kenoza Lake', 420, '41.73330', '-74.96670'), ('Kiamesha', 2061, '41.68330', '-74.65000'), ('Lava', 420, '41.61670', '-75.01670'), ('Lewbeach', 1355, '42.00000', '-74.78330'), ('Liberty', 3975, '41.79750', '-74.74640'), ('Livingston Manor', 1355, '41.89510', '-74.82650'), ('Loch Sheldrake', 2061, '41.76670', '-74.66670'), ('Maplewood', 6512, '41.66670', '-74.75000'), ('Mongaup Valley', 6512, '41.66670', '-74.78330'), ('Monticello', 6512, '41.65250', '-74.68800'), ('Mountain Dale', 902, '41.68330', '-74.53330'), ('Mt Prosper', 1234, '41.60000', '-74.53330'), ('Mt Vernon', 1234, '41.65000', '-74.50000'), ('Narrowsburg', 414, '41.60000', '-75.06670'), ('Neversink', 2061, '41.81670', '-74.65000'), ('North Branch', 420, '41.80000', '-75.00000'), ('Parkston', 1355, '41.90000', '-74.78330'), ('Parksville', 3975, '41.85000', '-74.76670'), ('Phillipsport', 1234, '41.63330', '-74.45000'), ('Rock Hill', 1056, '41.63330', '-74.60000'), ('Rockland', 1355, '41.95000', '-74.91670'), ('Roscoe', 597, '41.93330', '-74.91670'), ('Shandelee', 1355, '41.88330', '-74.88330'), ('South Fallsburg', 2061, '41.72060', '-74.63480'), ('Swan Lake', 3975, '41.75000', '-74.78330'), ('Thompsonville', 2061, '41.66670', '-74.63330'), ('Tusten', 414, '41.56670', '-75.01670'), ('Tylertown', 420, '41.63330', '-74.95000'), ('White Lake', 6512, '41.66670', '-74.83330'), ('White Sulphur Springs', 3975, '41.80000', '-74.83330'), ('Willowemoc', 3975, '41.91670', '-74.66670'), ('Woodbourne', 2061, '41.75000', '-74.60000'), ('Woodridge', 902, '41.71120', '-74.57340'), ('Wurtsboro', 1234, '41.57640', '-74.48540')], 'partOfState': 'central', 'wfo': 'BGM'}, +'NYZ063': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ellenville', 4130, '41.70290', '-74.36410'), ('Kerhonkson', 1732, '41.77900', '-74.29590'), ('Napanoch', 1168, '41.75080', '-74.37450'), ('Phoenicia', 381, '42.08570', '-74.31770'), ('Sundown', 1168, '41.88880', '-74.46220'), ('West Hurley', 2105, '42.00650', '-74.11130'), ('West Shokan', 2105, '41.96870', '-74.28580'), ('Woodstock', 2187, '42.03880', '-74.11050')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ064': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Clintondale', 1424, '41.69180', '-74.04730'), ('Highland', 5060, '41.71730', '-73.96570'), ('Hurley', 3561, '41.91380', '-74.05820'), ('Kingston', 23456, '41.93010', '-73.99730'), ('Lake Katrine', 2396, '41.98330', '-73.99020'), ('Lincoln Park', 2337, '41.95760', '-74.00270'), ('Marlboro', 2339, '41.60320', '-73.97330'), ('New Paltz', 6034, '41.74820', '-74.08190'), ('Port Ewen', 3650, '41.90620', '-73.97890'), ('Rosendale Village', 1284, '41.84930', '-74.07620'), ('Saugerties', 4955, '42.07480', '-73.94830'), ('Tillson', 1709, '41.83160', '-74.06920'), ('Wallkill', 2143, '41.60870', '-74.16470')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ065': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Arlington', 12481, '41.69570', '-73.88490'), ('Beacon', 13808, '41.50420', '-73.96600'), ('Fairview', 5421, '41.73190', '-73.91340'), ('Fishkill', 1735, '41.53450', '-73.89420'), ('Hopewell Junction', 2610, '41.58570', '-73.80130'), ('Hyde Park', 3605, '41.78430', '-73.93430'), ('Myers Corner', 5546, '41.59710', '-73.86580'), ('Pleasant Valley', 1839, '41.74870', '-73.82050'), ('Poughkeepsie', 29871, '41.69580', '-73.92250'), ('Red Hook', 1805, '41.99560', '-73.87660'), ('Red Oaks Mill', 4930, '41.65570', '-73.87360'), ('Rhinebeck', 3077, '41.92870', '-73.90750'), ('Staatsburg', 911, '41.84950', '-73.92480'), ('Tivoli', 1163, '42.05930', '-73.91110'), ('Wappingers Falls', 4929, '41.59900', '-73.91850')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ066': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Amenia', 1115, '41.84620', '-73.55240'), ('Dover Plains', 1996, '41.74520', '-73.58030'), ('Millbrook', 1429, '41.78430', '-73.69470'), ('Millerton', 925, '41.95360', '-73.51120'), ('Pawling', 2233, '41.56330', '-73.59990'), ('Pine Plains', 1412, '41.97770', '-73.65840'), ('Stanfordville', 1429, '41.86580', '-73.71580'), ('Wingdale', 2233, '41.64630', '-73.56420')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ067': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Balmville', 3339, '41.52680', '-74.02350'), ('Central Valley', 1857, '41.32890', '-74.12730'), ('Chester', 3445, '41.35720', '-74.27620'), ('Cornwall On Hudson', 3058, '41.43870', '-74.01730'), ('Firthcliffe', 4970, '41.44000', '-74.03420'), ('Florida', 2571, '41.33030', '-74.35430'), ('Fort Montgomery', 1418, '41.33760', '-73.98770'), ('Gardnertown', 4533, '41.53410', '-74.05990'), ('Goshen', 5676, '41.40110', '-74.32750'), ('Greenwood Lake', 3411, '41.22200', '-74.28900'), ('Harriman', 2252, '41.30890', '-74.14500'), ('Highland Falls', 3678, '41.36270', '-73.96920'), ('Highland Mills', 3468, '41.35190', '-74.12680'), ('Kiryas Joel', 13138, '41.33990', '-74.16760'), ('Maybrook', 3084, '41.48570', '-74.21430'), ('Middletown', 25388, '41.44570', '-74.42250'), ('Monroe', 7780, '41.32060', '-74.18630'), ('Montgomery', 3636, '41.52200', '-74.23820'), ('Newburgh', 28259, '41.50310', '-74.02010'), ('New Windsor', 9077, '41.47010', '-74.02720'), ('Orange Lake', 6085, '41.53180', '-74.09420'), ('Otisville', 989, '41.47060', '-74.53990'), ('Pine Bush', 1539, '41.60890', '-74.29740'), ('Port Jervis', 8860, '41.37780', '-74.69130'), ('Scotchtown', 8954, '41.47620', '-74.36860'), ('Tuxedo Park', 731, '41.20410', '-74.20720'), ('Unionville', 536, '41.30200', '-74.56260'), ('Vails Gate', 3319, '41.45790', '-74.05390'), ('Walden', 6164, '41.55970', '-74.18860'), ('Warwick', 6412, '41.25620', '-74.35550'), ('Washingtonville', 5851, '41.42970', '-74.15760'), ('West Point', 8024, '41.36230', '-74.02730')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ068': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Brewster', 2162, '41.39680', '-73.61510'), ('Brewster Hill', 2226, '41.42380', '-73.60480'), ('Carmel', 4800, '41.41450', '-73.68380'), ('Cold Spring', 1983, '41.41880', '-73.95490'), ('Fahnestock State Park', 1735, '41.45000', '-73.83000'), ('Lake Carmel', 8663, '41.46120', '-73.67030'), ('Mahopac', 8478, '41.36950', '-73.74160'), ('Peach Lake', 1671, '41.36740', '-73.57840'), ('Putnam Lake', 3855, '41.47770', '-73.55000'), ('Putnam Valley', 14891, '41.34000', '-73.87000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ069': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Airmont', 7799, '41.09910', '-74.10040'), ('Bardonia', 4367, '41.11120', '-73.98140'), ('Blauvelt', 5207, '41.06800', '-73.95530'), ('Chestnut Ridge', 7829, '41.08190', '-74.05190'), ('Congers', 8303, '41.14790', '-73.94670'), ('Grand View-On-huds', 284, '41.05840', '-73.90740'), ('Haverstraw', 10117, '41.18530', '-73.95500'), ('Hillburn', 881, '41.12720', '-74.17040'), ('Hillcrest', 7106, '41.12960', '-74.03590'), ('Monsey', 14504, '41.11810', '-74.06770'), ('Montebello', 3688, '41.12880', '-74.11810'), ('Mount Ivy', 6536, '41.19290', '-74.02870'), ('Nanuet', 16707, '41.09520', '-74.01600'), ('New City', 34038, '41.15380', '-73.99180'), ('New Hempstead', 4200, '41.14960', '-74.04970'), ('New Square', 4624, '41.13970', '-74.02860'), ('Nyack', 6737, '41.09010', '-73.91500'), ('Orangeburg', 3388, '41.05000', '-73.94560'), ('Pearl River', 15553, '41.06050', '-74.00320'), ('Piermont', 2607, '41.03960', '-73.91550'), ('Pomona', 2726, '41.18980', '-74.05370'), ('Sloatsburg', 3117, '41.16060', '-74.19120'), ('South Nyack', 3473, '41.07770', '-73.91710'), ('Spring Valley', 21802, '41.11440', '-74.04920'), ('Stony Point', 11744, '41.22930', '-73.99750'), ('Suffern', 11006, '41.11340', '-74.14400'), ('Tappan', 6757, '41.02580', '-73.95160'), ('Thiells', 4758, '41.20760', '-74.01050'), ('Upper Nyack', 1863, '41.11450', '-73.91450'), ('Valley Cottage', 9269, '41.11550', '-73.94380'), ('Viola', 5931, '41.12940', '-74.08250'), ('Wesley Hills', 4848, '41.15760', '-74.07930'), ('West Haverstraw', 10295, '41.20640', '-73.98750'), ('West Nyack', 3282, '41.09100', '-73.96920')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ070': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Armonk', 3461, '41.13230', '-73.71280'), ('Bedford', 1724, '41.19680', '-73.64720'), ('Briarcliff Manor', 7696, '41.13880', '-73.84220'), ('Buchanan', 2189, '41.26320', '-73.94490'), ('Croton-On-hudson', 7606, '41.20320', '-73.89070'), ('Dobbs Ferry', 10622, '41.01450', '-73.86970'), ('Elmsford', 4676, '41.05320', '-73.81460'), ("Golden's Bridge", 1578, '41.28590', '-73.67050'), ('Hawthorne', 5083, '41.10430', '-73.79380'), ('Irvington', 6631, '41.03860', '-73.86730'), ('Jefferson Valley', 14891, '41.31860', '-73.80190'), ('Mount Kisco', 9983, '41.20180', '-73.73050'), ('North Tarrytown', 8152, '41.09180', '-73.87140'), ('Ossining', 24010, '41.15850', '-73.87150'), ('Peekskill', 22441, '41.28940', '-73.92390'), ('Pleasantville', 7172, '41.13810', '-73.78470'), ('Tarrytown', 11090, '41.06480', '-73.86870'), ('Thornwood', 5980, '41.11380', '-73.76490'), ('Yorktown Heights', 7972, '41.27130', '-73.78260')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ071': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ardsley', 4269, '41.01460', '-73.84120'), ('Bronxville', 6543, '40.93890', '-73.82730'), ('Eastchester', 18564, '40.95820', '-73.80780'), ('Greenville', 493, '41.00090', '-73.81870'), ('Harrison', 24154, '41.02260', '-73.72020'), ('Hartsdale', 9830, '41.02570', '-73.80520'), ('Hastings-On-hudson', 7648, '40.98790', '-73.87960'), ('Larchmont', 6485, '40.92610', '-73.75350'), ('Mamaroneck', 18752, '40.93450', '-73.72740'), ('Mount Vernon', 68381, '40.91300', '-73.82980'), ('New Rochelle', 72182, '40.92320', '-73.77990'), ('Pelham', 6400, '40.91100', '-73.80830'), ('Pelham Manor', 5466, '40.89370', '-73.80520'), ('Port Chester', 27867, '41.00450', '-73.66770'), ('Rye Brook', 8602, '41.03040', '-73.68660'), ('Scarsdale', 17823, '40.98840', '-73.77640'), ('Tuckahoe', 6211, '40.95270', '-73.82320'), ('White Plains', 53077, '41.02090', '-73.75740'), ('Yonkers', 196086, '40.94700', '-73.86750')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ071': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Ardsley', 4269, '41.01460', '-73.84120'), ('Bronxville', 6543, '40.93890', '-73.82730'), ('Eastchester', 18564, '40.95820', '-73.80780'), ('Greenville', 493, '41.00090', '-73.81870'), ('Harrison', 24154, '41.02260', '-73.72020'), ('Hartsdale', 9830, '41.02570', '-73.80520'), ('Hastings-On-hudson', 7648, '40.98790', '-73.87960'), ('Larchmont', 6485, '40.92610', '-73.75350'), ('Mamaroneck', 18752, '40.93450', '-73.72740'), ('Mount Vernon', 68381, '40.91300', '-73.82980'), ('New Rochelle', 72182, '40.92320', '-73.77990'), ('Pelham', 6400, '40.91100', '-73.80830'), ('Pelham Manor', 5466, '40.89370', '-73.80520'), ('Port Chester', 27867, '41.00450', '-73.66770'), ('Rye Brook', 8602, '41.03040', '-73.68660'), ('Scarsdale', 17823, '40.98840', '-73.77640'), ('Tuckahoe', 6211, '40.95270', '-73.82320'), ('White Plains', 53077, '41.02090', '-73.75740'), ('Yonkers', 196086, '40.94700', '-73.86750')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ072': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Battery Park', 33397, '40.70900', '-74.00600'), ('Greenwich Village', 12385, '40.75090', '-73.99750'), ('Harlem', 8008278, '40.82400', '-73.93750'), ('Midtown Manhattan', 8268, '40.77000', '-73.96750'), ('Morningside Height', 35461, '40.83300', '-73.96050'), ('New York', 0, '40.78232', '-73.96542'), ('Washington Heights', 8008278, '40.85000', '-73.93000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ072': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Battery Park', 33397, '40.70900', '-74.00600'), ('Greenwich Village', 12385, '40.75090', '-73.99750'), ('Harlem', 8008278, '40.82400', '-73.93750'), ('Midtown Manhattan', 8268, '40.77000', '-73.96750'), ('Morningside Height', 35461, '40.83300', '-73.96050'), ('New York', 0, '40.78232', '-73.96542'), ('Washington Heights', 8008278, '40.85000', '-73.93000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ073': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('City Island', 5466, '40.87000', '-73.79000'), ('Co-Op City', 5466, '40.87000', '-73.82000'), ('East Tremont', 8008278, '40.85000', '-73.87000'), ('Fordham', 8008278, '40.87000', '-73.89000'), ('Laguardia Airport', 8008278, '40.79000', '-73.87100'), ('Mott Haven', 8008278, '40.82000', '-73.91000'), ('Riverdale', 8008278, '40.90000', '-73.91000'), ('Woodlawn', 8008278, '40.90000', '-73.85000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ073': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('City Island', 5466, '40.87000', '-73.79000'), ('Co-Op City', 5466, '40.87000', '-73.82000'), ('East Tremont', 8008278, '40.85000', '-73.87000'), ('Fordham', 8008278, '40.87000', '-73.89000'), ('Laguardia Airport', 8008278, '40.79000', '-73.87100'), ('Mott Haven', 8008278, '40.82000', '-73.91000'), ('Riverdale', 8008278, '40.90000', '-73.91000'), ('Woodlawn', 8008278, '40.90000', '-73.85000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ074': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Annadale', 8008278, '40.55000', '-74.16000'), ('Grasmere', 8008278, '40.61000', '-74.07000'), ('Heartland Village', 8008278, '40.58500', '-74.17000'), ('Huguenot', 8008278, '40.54000', '-74.17250'), ('Hylan Blvd', 8008278, '40.59000', '-74.08000'), ('New Dorp', 8008278, '40.59000', '-74.11000'), ('Todt Hill', 8008278, '40.61000', '-74.13000'), ('Tompkinsville', 8008278, '40.63000', '-74.07000'), ('Tottenville', 41967, '40.52000', '-74.23000'), ('West Shore Express', 8008278, '40.60000', '-74.17000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ074': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Annadale', 8008278, '40.55000', '-74.16000'), ('Grasmere', 8008278, '40.61000', '-74.07000'), ('Heartland Village', 8008278, '40.58500', '-74.17000'), ('Huguenot', 8008278, '40.54000', '-74.17250'), ('Hylan Blvd', 8008278, '40.59000', '-74.08000'), ('New Dorp', 8008278, '40.59000', '-74.11000'), ('Todt Hill', 8008278, '40.61000', '-74.13000'), ('Tompkinsville', 8008278, '40.63000', '-74.07000'), ('Tottenville', 41967, '40.52000', '-74.23000'), ('West Shore Express', 8008278, '40.60000', '-74.17000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ075': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bay Ridge', 8008278, '40.62000', '-74.02000'), ('Canarsie', 8008278, '40.65000', '-73.89000'), ('Coney Island', 8008278, '40.58300', '-73.98300'), ('Crown Heights', 8008278, '40.67000', '-73.94000'), ('Flatbush', 8008278, '40.64000', '-73.95000'), ('Greenpoint', 8008278, '40.72000', '-73.95000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ078': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Belle Terre', 832, '40.96230', '-73.06720'), ('Centereach', 27285, '40.87080', '-73.08330'), ('Centerport', 5446, '40.90080', '-73.37220'), ('Cold Spring Harbor', 4975, '40.86310', '-73.44790'), ('Commack', 36367, '40.84490', '-73.28360'), ('Coram', 34923, '40.87950', '-73.00450'), ('Dix Hills', 26024, '40.80480', '-73.33660'), ('East Northport', 20845, '40.87920', '-73.32460'), ('Eatons Neck', 1388, '40.95000', '-73.39000'), ('Elwood', 10916, '40.84620', '-73.34210'), ('Farmingville', 16458, '40.84250', '-73.04420'), ('Fort Salonga', 9634, '40.91120', '-73.29440'), ('Greenlawn', 13286, '40.86310', '-73.36660'), ('Hauppauge', 20100, '40.82000', '-73.21270'), ('Head Of The Harbor', 1447, '40.89820', '-73.16280'), ('Huntington', 18403, '40.87770', '-73.40790'), ('Huntington Bay', 1496, '40.90400', '-73.41640'), ('Huntington Station', 29910, '40.84490', '-73.40520'), ('Jericho Turnpike', 10916, '40.84000', '-73.36000'), ('Kings Park', 16146, '40.89070', '-73.24550'), ('Lake Grove', 10250, '40.85800', '-73.11690'), ('Lake Ronkonkoma', 19701, '40.83140', '-73.11090'), ('Lloyd Harbor', 3675, '40.91750', '-73.46410'), ('Long Island Express', 27512, '40.82000', '-73.09000'), ('Melville', 14533, '40.78200', '-73.41200'), ('Middle Country Road', 21861, '40.87000', '-73.03000'), ('Middle Island', 9702, '40.88500', '-72.94390'), ('Miller Place', 10580, '40.93250', '-72.98740'), ('Mount Sinai', 8734, '40.93840', '-73.01910'), ('Nesconset', 11992, '40.84680', '-73.15240'), ('Nesconset Highway', 27285, '40.89000', '-73.08000'), ('Nissequogue', 1543, '40.90570', '-73.18840'), ('Northport', 7606, '40.90370', '-73.34560'), ('Old Field', 947, '40.96230', '-73.13080'), ('Poquott', 975, '40.95220', '-73.08920'), ('Port Jefferson', 7837, '40.94760', '-73.05900'), ('Port Jefferson Station', 7527, '40.92350', '-73.06770'), ('Ridge', 13380, '40.91020', '-72.88210'), ('Rocky Point', 8596, '40.95000', '-72.93000'), ('Sagtikos Parkway', 53917, '40.81000', '-73.27000'), ('Selden', 21861, '40.86940', '-73.04790'), ('Setauket-East Setauket', 13634, '40.92990', '-73.10250'), ('Shoreham', 417, '40.95580', '-72.90650'), ('Smithtown', 26901, '40.85710', '-73.21490'), ('Sound Beach', 9807, '40.95530', '-72.96690'), ('South Huntington', 9465, '40.82080', '-73.39220'), ('St. James', 13268, '40.87640', '-73.15260'), ('Stony Brook', 13727, '40.90790', '-73.12830'), ('Sunken Meadow Park', 16146, '40.89000', '-73.26000'), ('West Hills', 5607, '40.81920', '-73.43170'), ('Yaphank', 5025, '40.83160', '-72.92580')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ079': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Aquebogue', 2254, '40.93830', '-72.61410'), ('Brookhaven National Laboratory', 13380, '40.87000', '-72.86000'), ('Calverton', 5704, '40.92390', '-72.76190'), ('Cutchogue', 2849, '41.01290', '-72.48620'), ('Fishers Island', 289, '41.27000', '-71.99000'), ("Gardner's Island", 4950, '41.09000', '-72.09000'), ('Greenport', 2048, '41.10270', '-72.36780'), ('Jamesport', 1526, '40.94540', '-72.57500'), ('Laurel', 1188, '40.97530', '-72.55360'), ('Orient', 709, '41.14000', '-72.30000'), ('Peconic', 1081, '41.03900', '-72.46490'), ('Plum Island', 3048, '41.18000', '-72.19000'), ('Shelter Island', 1234, '41.07570', '-72.34280'), ('Sound Avenue', 801, '40.97000', '-72.61000'), ('Southold', 5465, '41.05980', '-72.42780'), ('Wading River', 6668, '40.94710', '-72.81990')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ080': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Amityville', 9441, '40.66980', '-73.41610'), ('Babylon', 12615, '40.69600', '-73.32710'), ('Bayport', 8662, '40.74780', '-73.05470'), ('Bay Shore', 23852, '40.72640', '-73.25050'), ('Baywood', 7351, '40.75120', '-73.29110'), ('Bellport', 2363, '40.75690', '-72.94210'), ('Blue Point', 4407, '40.75030', '-73.03500'), ('Bohemia', 9871, '40.77400', '-73.12130'), ('Brentwood', 53917, '40.78140', '-73.24850'), ('Brightwaters', 3248, '40.71800', '-73.26590'), ('Brookhaven', 3570, '40.78020', '-72.91300'), ('Carmans River', 25395, '40.78000', '-72.89000'), ('Central Islip', 31950, '40.78540', '-73.19690'), ('Connectquot River', 3964, '40.76000', '-73.15000'), ('Copiague', 21922, '40.67130', '-73.39200'), ('Deer Park', 28316, '40.76230', '-73.32260'), ('East Farmingdale', 5400, '40.72910', '-73.41730'), ('East Islip', 14078, '40.72520', '-73.18700'), ('East Patchogue', 20824, '40.76990', '-72.98240'), ('Holbrook', 27512, '40.79260', '-73.07080'), ('Holtsville', 17006, '40.81330', '-73.04760'), ('Islandia', 3057, '40.80670', '-73.17190'), ('Islip', 20575, '40.73280', '-73.21770'), ('Islip Terrace', 5641, '40.74860', '-73.18690'), ('Lindenhurst', 27819, '40.68570', '-73.37180'), ('Medford', 21985, '40.82240', '-72.98470'), ('North Bay Shore', 14992, '40.75900', '-73.26100'), ('North Bellport', 9007, '40.78840', '-72.94640'), ('North Patchogue', 7825, '40.78440', '-73.02440'), ('Oakdale', 8075, '40.73770', '-73.13420'), ('Ocean Beach', 138, '40.64550', '-73.15640'), ('Patchogue', 11919, '40.76130', '-73.01940'), ('Robert Moses State Park', 43, '40.63000', '-73.24000'), ('Ronkonkoma', 20029, '40.80350', '-73.12490'), ('Saltaire', 43, '40.63800', '-73.19510'), ('Sayville', 16735, '40.74680', '-73.08580'), ('Shirley', 25395, '40.79520', '-72.87410'), ('Sunrise Highway', 16735, '40.75000', '-73.09000'), ('West Islip', 28907, '40.70890', '-73.29660'), ('West Sayville', 5003, '40.72820', '-73.10570'), ('Wyandanch', 10546, '40.74660', '-73.37720')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ081': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bridgehampton', 1381, '40.94340', '-72.29910'), ('Center Moriches', 6655, '40.79920', '-72.79680'), ('East Hampton', 1334, '40.95070', '-72.19690'), ('East Hampton Airport', 1381, '40.95000', '-72.28000'), ('East Moriches', 4550, '40.81010', '-72.76050'), ('East Quogue', 4265, '40.85310', '-72.57670'), ('Flanders', 3646, '40.91000', '-72.60480'), ('Hampton Bays', 12236, '40.88000', '-72.52440'), ('Hither Hills State', 3851, '41.01000', '-72.01000'), ('Manorville', 11131, '40.85850', '-72.79400'), ('Mastic', 15436, '40.80200', '-72.84440'), ('Mastic Beach', 11543, '40.76150', '-72.84020'), ('Montauk', 3851, '41.04750', '-71.94520'), ('Montauk Highway', 1724, '40.90000', '-72.34000'), ('Montauk Point', 3851, '41.07000', '-71.86000'), ('North Haven', 743, '41.02360', '-72.31570'), ('North Sea', 4493, '40.95000', '-72.41000'), ('Peconic River', 1486, '40.91000', '-72.65000'), ('Quogue', 4265, '40.85000', '-72.59750'), ('Remsenburg-Speonk', 1851, '40.81340', '-72.70580'), ('Riverhead', 3646, '40.91000', '-72.63000'), ('Sag Harbor', 2313, '41.00000', '-72.31000'), ('Shinnecock Hills', 1749, '40.89550', '-72.45640'), ('Southampton', 3965, '40.88030', '-72.39550'), ('Springs', 4950, '41.02090', '-72.15710'), ('Watermill', 1724, '40.92900', '-72.34820'), ('Westhampton', 2869, '40.83870', '-72.66490')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ082': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Caroga Lake', 15413, '43.13750', '-74.48400'), ('Cranberry Creek', 800, '43.15150', '-74.22230'), ('Mayfield', 800, '43.10200', '-74.26650'), ('Northville', 1139, '43.22200', '-74.17100'), ('Stratford', 2166, '43.18180', '-74.68550')], 'partOfState': 'eastern', 'wfo': 'ALY'}, +'NYZ083': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Glens Falls', 14354, '43.31110', '-73.64550'), ('Lake George Villag', 933, '43.42560', '-73.71510'), ('Lake Luzerne-Hadle', 2042, '43.31890', '-73.83800'), ('West Glens Falls', 6721, '43.30260', '-73.68800')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ084': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Argyle', 289, '43.23700', '-73.49040'), ('Cambridge', 1925, '43.02660', '-73.38090'), ('Fort Edward', 3141, '43.26890', '-73.58300'), ('Greenwich', 1902, '43.08660', '-73.49670'), ('Hudson Falls', 6927, '43.30470', '-73.58200'), ('Middle Falls', 1902, '43.10820', '-73.52770'), ('North Easton', 1902, '43.01030', '-73.55000'), ('Salem', 964, '43.17410', '-73.32830')], 'partOfState': 'east central', 'wfo': 'ALY'}, +'NYZ085': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Angola', 2266, '42.63770', '-79.02980'), ('Angola On The Lake', 1771, '42.65470', '-79.04910'), ('East Aurora', 6673, '42.76680', '-78.61740'), ('Eden', 3579, '42.65200', '-78.90070'), ('Farnham', 322, '42.59690', '-79.07890'), ('Hamburg', 10116, '42.72400', '-78.83490'), ('Holland', 1261, '42.63640', '-78.54790'), ('Lake Erie Beach', 4499, '42.62360', '-79.07770'), ('North Boston', 2680, '42.67220', '-78.78400'), ('North Collins', 1079, '42.59460', '-78.93670'), ('Orchard Park', 3294, '42.76340', '-78.74580'), ('Springville', 4252, '42.50940', '-78.67010')], 'partOfState': 'western', 'wfo': 'BUF'}, +'NYZ087': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Balmat', 0, '44.24830', '-75.39530'), ('Canton', 5882, '44.59660', '-75.17250'), ('Chippewa Bay', 0, '44.44200', '-75.75690'), ('Colton', 0, '44.55310', '-74.94000'), ('Converse', 0, '44.68030', '-74.82500'), ('De Kalb', 274, '44.50000', '-75.35000'), ('De Kalb Junction', 0, '44.50506', '-75.27382'), ('De Peyster', 0, '44.55256', '-75.43550'), ('East De Kalb', 0, '44.48250', '-75.30080'), ('Edwards', 465, '44.32360', '-75.25330'), ('Edwardsville', 0, '44.52228', '-75.59301'), ('Fowler', 0, '44.27860', '-75.38670'), ('Fullerville', 0, '44.26810', '-75.34220'), ('Gouverneur', 4263, '44.33660', '-75.46620'), ('Hammond', 302, '44.44720', '-75.69420'), ('Hannawa Falls', 0, '44.61220', '-74.97140'), ('Hermon', 402, '44.46840', '-75.23270'), ('Heuvelton', 804, '44.61710', '-75.40440'), ('Hopkinton', 1140, '44.68000', '-74.72000'), ('Lisbon', 0, '44.72720', '-75.32140'), ('Madrid', 923, '44.75000', '-75.15000'), ('Morley', 0, '44.66500', '-75.19920'), ('Morristown', 456, '44.58320', '-75.64510'), ('North Gouverneur', 0, '44.42117', '-75.46994'), ('North Hammond', 0, '44.48339', '-75.72940'), ('North Russell', 0, '44.50250', '-75.12310'), ('Ogdensburg', 12364, '44.70700', '-75.47040'), ('Parishville', 9425, '44.63000', '-74.82000'), ('Pierrepont', 0, '44.54220', '-75.01220'), ('Potsdam', 9425, '44.66810', '-74.98560'), ('Pyrites', 0, '44.51470', '-75.18610'), ('Rensselaer Falls', 337, '44.59080', '-75.32020'), ('Richville', 274, '44.41530', '-75.39090'), ('Russell', 0, '44.42940', '-75.15030'), ('Schermerhorn Landing', 0, '44.41283', '-75.79051'), ('South Hammond', 0, '44.39922', '-75.73301'), ('Talcville', 0, '44.30970', '-75.30640'), ('West Fowler', 0, '44.26780', '-75.45190'), ('West Pierrepont', 0, '44.49250', '-75.06000'), ('West Potsdam', 0, '44.68690', '-75.09000'), ('West Stockholm', 0, '44.71360', '-74.90110')], 'partOfState': 'northern', 'wfo': 'BTV'}, +'NYZ176': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Astoria', 8008278, '40.78000', '-73.91000'), ('Flushing', 8008278, '40.77000', '-73.84000'), ('Jackson Heights', 8008278, '40.77000', '-73.88000'), ('Triborough Bridge', 8008278, '40.79400', '-73.90750'), ('Whitestone', 8008278, '40.79000', '-73.81000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ176': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Astoria', 8008278, '40.78000', '-73.91000'), ('Flushing', 8008278, '40.77000', '-73.84000'), ('Jackson Heights', 8008278, '40.77000', '-73.88000'), ('Triborough Bridge', 8008278, '40.79400', '-73.90750'), ('Whitestone', 8008278, '40.79000', '-73.81000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ177': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Bayville', 7135, '40.90700', '-73.56310'), ('Brookville', 2126, '40.80750', '-73.57030'), ('Centre Island', 444, '40.90020', '-73.52210'), ('Cove Neck', 300, '40.88440', '-73.49660'), ('East Hills', 6842, '40.79650', '-73.62920'), ('East Norwich', 2675, '40.84700', '-73.52920'), ('Glen Cove', 26622, '40.87150', '-73.63880'), ('Glen Head', 4625, '40.84330', '-73.61930'), ('Glenwood Landing', 3541, '40.82980', '-73.63770'), ('Great Neck', 9538, '40.80230', '-73.73340'), ('Jericho', 13045, '40.78850', '-73.54190'), ('Lake Success', 2797, '40.76870', '-73.71020'), ('Locust Valley', 3521, '40.88070', '-73.58760'), ('Manhasset', 8362, '40.79150', '-73.69280'), ('Manorhaven', 6138, '40.84800', '-73.71400'), ('Matinecock', 836, '40.86440', '-73.58400'), ('Mill Neck', 825, '40.88010', '-73.55620'), ('Munsey Park', 2632, '40.79940', '-73.68010'), ('Muttontown', 3412, '40.82060', '-73.54110'), ('Old Brookville', 2167, '40.82750', '-73.60490'), ('Old Westbury', 4228, '40.78630', '-73.59620'), ('Oyster Bay', 6826, '40.86860', '-73.53310'), ('Oyster Bay Cove', 2262, '40.85920', '-73.50440'), ('Plandome', 1272, '40.80750', '-73.70040'), ('Port Washington', 15215, '40.82720', '-73.68030'), ('Roslyn', 2570, '40.79960', '-73.64880'), ('Russell Gardens', 1074, '40.78130', '-73.72540'), ('Sands Point', 2786, '40.86000', '-73.71000'), ('Sea Cliff', 5066, '40.85000', '-73.64000'), ('Syosset', 18544, '40.81540', '-73.50280'), ('Thomaston', 2607, '40.78800', '-73.71450'), ('Upper Brookville', 1801, '40.84410', '-73.56490'), ('Woodbury', 9010, '40.81490', '-73.47030')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ178': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Howard Beach', 8008278, '40.66000', '-73.84000'), ('Jamaica', 8008278, '40.71000', '-73.79000'), ('Kennedy Airport', 8008278, '40.65750', '-73.77800'), ('Ozone Park', 8008278, '40.69000', '-73.85000')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'NYZ179': {'fullStateName': 'New York', 'state': 'NY', 'cities': [('Baldwin', 23455, '40.66300', '-73.61120'), ('Baldwin Harbor', 8147, '40.63600', '-73.60230'), ('Bellerose', 1173, '40.72430', '-73.71670'), ('Bellmore', 16441, '40.65710', '-73.52920'), ('Bethpage', 16543, '40.74950', '-73.48580'), ('Carle Place', 5247, '40.75100', '-73.61150'), ('Cedarhurst', 6164, '40.62550', '-73.72790'), ('East Massapequa', 19565, '40.67340', '-73.43690'), ('East Meadow', 37461, '40.71990', '-73.55930'), ('East Rockaway', 10414, '40.64370', '-73.66730'), ('East Williston', 2503, '40.76060', '-73.63390'), ('Elmont', 32657, '40.70390', '-73.70750'), ('Farmingdale', 8399, '40.73310', '-73.44760'), ('Floral Park', 15967, '40.72230', '-73.70360'), ('Franklin Square', 29342, '40.70000', '-73.67700'), ('Freeport', 43783, '40.65080', '-73.58500'), ('Garden City', 21672, '40.72590', '-73.64450'), ('Hempstead', 4030, '40.70340', '-73.61900'), ('Herricks', 4076, '40.75690', '-73.66430'), ('Hewlett', 7060, '40.64170', '-73.69470'), ('Hicksville', 41260, '40.76380', '-73.52520'), ('Inwood', 9325, '40.62280', '-73.75000'), ('Lawrence', 6522, '40.60440', '-73.71280'), ('Levittown', 53067, '40.72380', '-73.51310'), ('Lido Beach', 2825, '40.59210', '-73.60780'), ('Long Beach', 35462, '40.59000', '-73.67000'), ('Lynbrook', 19911, '40.65870', '-73.67440'), ('Malverne', 8934, '40.67450', '-73.67260'), ('Massapequa', 22652, '40.66830', '-73.47180'), ('Merrick', 22764, '40.65060', '-73.55460'), ('Mineola', 19234, '40.74700', '-73.63860'), ('New Hyde Park', 9523, '40.73200', '-73.68590'), ('North Wantagh', 12156, '40.69910', '-73.50870'), ('Oceanside', 32733, '40.63240', '-73.63580'), ('Plainedge', 9195, '40.72440', '-73.47780'), ('Plainview', 25637, '40.78330', '-73.47260'), ('Rockville Centre', 24568, '40.66380', '-73.63830'), ('Roosevelt', 15854, '40.67960', '-73.58390'), ('Roslyn Heights', 6295, '40.77880', '-73.64060'), ('Seaford', 15791, '40.66780', '-73.49300'), ('Searingtown', 5034, '40.77010', '-73.66010'), ('Uniondale', 23011, '40.70220', '-73.59150'), ('Valley Stream', 36368, '40.66450', '-73.70520'), ('Wantagh', 18971, '40.66770', '-73.51080'), ('Westbury', 14263, '40.75970', '-73.58890'), ('West Hempstead', 18713, '40.69530', '-73.65110'), ('Woodmere', 16447, '40.63790', '-73.72180')], 'partOfState': 'southeast', 'wfo': 'OKX'}, +'OHZ001': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Alvordton', 305, '41.66530', '-84.43440'), ('Blakeslee', 130, '41.52390', '-84.73110'), ('Bridgewater Center', 0, '41.65800', '-84.63100'), ('Bryan', 8333, '41.47020', '-84.54800'), ('Columbia', 0, '41.63300', '-84.78900'), ('Edgerton', 2117, '41.44670', '-84.74980'), ('Edon', 898, '41.55660', '-84.76830'), ('Hallock', 0, '41.52700', '-84.55700'), ('Kunkle', 0, '41.63700', '-84.49500'), ('Lake Seneca', 0, '41.68900', '-84.66500'), ('Melbern', 0, '41.46700', '-84.65100'), ('Montpelier', 4320, '41.58160', '-84.60050'), ('Nettle Lake', 0, '41.67900', '-84.72300'), ('Pioneer', 1460, '41.67800', '-84.55210'), ('Pulaski', 0, '41.51100', '-84.50800'), ('Stryker', 1406, '41.50320', '-84.41760'), ('West Jefferson', 0, '41.57200', '-84.55700'), ('West Unity', 1790, '41.58600', '-84.43420'), ('Williams Center', 0, '41.42900', '-84.61000')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHZ002': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Archbold', 4290, '41.51550', '-84.30440'), ('Assumption', 0, '41.67200', '-83.91200'), ('Brailey', 0, '41.55500', '-83.92200'), ('Burlington', 0, '41.57200', '-84.30800'), ('Delta', 2930, '41.57410', '-84.00250'), ('Denson', 0, '41.70600', '-84.14800'), ('Elmira', 0, '41.57900', '-84.30800'), ('Fayette', 1340, '41.67270', '-84.32910'), ('Lyons', 559, '41.69960', '-84.07300'), ('Metamora', 563, '41.71110', '-83.90800'), ('Oakshade', 0, '41.66900', '-84.15200'), ('Ottokee', 0, '41.60200', '-84.13400'), ('Pettisville', 0, '41.53100', '-84.23000'), ('Seward', 0, '41.70000', '-84.03600'), ('Swanton', 3307, '41.58380', '-83.89170'), ('Tedrow', 0, '41.60300', '-84.20600'), ('Wauseon', 7091, '41.55350', '-84.14190'), ('Winameg', 0, '41.62400', '-84.06500'), ('Zone', 0, '41.62300', '-84.32800')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHZ003': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Berkey', 265, '41.71440', '-83.83350'), ('Harbor View', 99, '41.69260', '-83.44460'), ('Holland', 1306, '41.62030', '-83.70950'), ('Maumee', 15237, '41.57420', '-83.65340'), ('Oregon', 19355, '41.66690', '-83.41940'), ('Ottawa Hills', 4564, '41.66750', '-83.64500'), ('Sylvania', 18670, '41.71460', '-83.70600'), ('Toledo', 313619, '41.66390', '-83.58160'), ('Waterville', 4828, '41.49800', '-83.73330'), ('Whitehouse', 2733, '41.51890', '-83.80260')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHZ004': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ayersville', 0, '41.23900', '-84.28600'), ('Brunersburg', 0, '41.30700', '-84.38700'), ('Defiance', 16465, '41.28120', '-84.36190'), ('Evansport', 0, '41.42600', '-84.39600'), ('Farmer', 0, '41.38300', '-84.63100'), ('Hicksville', 3649, '41.29450', '-84.76660'), ('Independence', 0, '41.29800', '-84.30000'), ('Jewell', 0, '41.32600', '-84.28600'), ('Mark Center', 0, '41.28900', '-84.63100'), ('Ney', 364, '41.38070', '-84.52100'), ('Sherwood', 0, '41.28700', '-84.55400'), ('The Bend', 0, '41.28400', '-84.51600')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHZ005': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Colton', 0, '41.46500', '-83.95200'), ('Deshler', 1831, '41.20800', '-83.90570'), ('Elery', 0, '41.29800', '-84.06900'), ('Florida', 246, '41.32300', '-84.20060'), ('Gallup', 0, '41.18800', '-84.02900'), ('Gerald', 0, '41.45700', '-84.14400'), ('Grelton', 0, '41.34000', '-84.00000'), ('Hamler', 650, '41.23020', '-84.03330'), ('Holgate', 1194, '41.24880', '-84.12860'), ('Liberty Center', 1109, '41.44340', '-84.00810'), ('Malinta', 285, '41.31960', '-84.03710'), ('McClure', 761, '41.37050', '-83.94200'), ('Napoleon', 9318, '41.39480', '-84.12660'), ('New Bavaria', 78, '41.20360', '-84.16700'), ('Okolona', 0, '41.35500', '-84.21700'), ('Pleasant Bend', 0, '41.18000', '-84.19000'), ('Ridgeville Corners', 0, '41.43800', '-84.25700'), ('Standley', 0, '41.26700', '-84.22700'), ('Texas', 0, '41.42400', '-83.95200')], 'partOfState': 'northwest', 'wfo': 'IWX'}, +'OHZ006': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bairdstown', 130, '41.17100', '-83.60700'), ('Bloomdale', 724, '41.17090', '-83.55360'), ('Bowling Green', 29636, '41.37640', '-83.64950'), ('Bradner', 1171, '41.32360', '-83.43650'), ('Custar', 208, '41.28420', '-83.84350'), ('Cygnet', 564, '41.24010', '-83.64380'), ('Grand Rapids', 1002, '41.41040', '-83.86570'), ('Haskins', 638, '41.46380', '-83.70410'), ('Hoytville', 296, '41.19030', '-83.78370'), ('Jerry City', 453, '41.25310', '-83.60270'), ('Luckey', 998, '41.45230', '-83.48370'), ('Millbury', 1161, '41.56410', '-83.42570'), ('Milton Center', 195, '41.30140', '-83.82950'), ('North Baltimore', 3361, '41.18030', '-83.67560'), ('Northwood', 5471, '41.61030', '-83.48030'), ('Pemberville', 1365, '41.40980', '-83.45790'), ('Perrysburg', 16945, '41.55300', '-83.62380'), ('Portage', 428, '41.32380', '-83.64790'), ('Risingsun', 620, '41.26880', '-83.42640'), ('Rossford', 6406, '41.60370', '-83.56200'), ('Tontogany', 364, '41.42010', '-83.74010'), ('Walbridge', 2546, '41.58560', '-83.48920'), ('Wayne', 842, '41.30120', '-83.47240'), ('West Millgrove', 78, '41.24380', '-83.49210'), ('Weston', 1659, '41.34580', '-83.79460')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHZ007': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Clay Center', 294, '41.56880', '-83.36100'), ('Elmore', 1426, '41.47300', '-83.29190'), ('Genoa', 2230, '41.51840', '-83.36100'), ('Marblehead', 762, '41.53180', '-82.72150'), ('Oak Harbor', 2841, '41.51160', '-83.14670'), ('Port Clinton', 6391, '41.50970', '-82.93840'), ('Rocky Ridge', 389, '41.53050', '-83.21350')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHZ008': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ballville', 3255, '41.32770', '-83.13730'), ('Bellevue', 8193, '41.27580', '-82.84220'), ('Burgoon', 199, '41.26730', '-83.25070'), ('Clyde', 6064, '41.30510', '-82.97750'), ('Fremont', 17375, '41.35030', '-83.11310'), ('Gibsonburg', 2506, '41.38650', '-83.32280'), ('Green Springs', 1247, '41.25710', '-83.05370'), ('Helena', 236, '41.33980', '-83.29180'), ('Lindsey', 504, '41.42060', '-83.22070'), ('Stony Prairie', 836, '41.35130', '-83.15520'), ('Woodville', 1977, '41.45130', '-83.36300')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHZ009': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bay View', 692, '41.46890', '-82.82360'), ('Berlin Heights', 685, '41.32090', '-82.49270'), ('Castalia', 935, '41.40130', '-82.80930'), ('Fairview Lanes', 1015, '41.42710', '-82.65670'), ('Huron', 7958, '41.39650', '-82.56210'), ('Milan', 1445, '41.28880', '-82.60110'), ('Sandusky', 27844, '41.45590', '-82.71440'), ('Sandusky South', 6336, '41.41600', '-82.68700')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ010': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Amherst', 11797, '41.40010', '-82.23070'), ('Avon', 11446, '41.45130', '-82.02350'), ('Avon Lake', 18145, '41.49370', '-82.01590'), ('Eaton Estates', 1409, '41.30550', '-82.00960'), ('Elyria', 55953, '41.37990', '-82.10560'), ('Grafton', 2302, '41.28050', '-82.03320'), ('Kipton', 265, '41.26700', '-82.30480'), ('Lagrange', 1815, '41.23880', '-82.12050'), ('Lorain', 68652, '41.44150', '-82.18340'), ('North Ridgeville', 22338, '41.38800', '-82.01520'), ('Oberlin', 8195, '41.29040', '-82.21670'), ('Rochester', 190, '41.12480', '-82.30630'), ('Sheffield', 2949, '41.45690', '-82.09460'), ('Sheffield Lake', 9371, '41.48880', '-82.09790'), ('South Amherst', 1863, '41.35390', '-82.23820'), ('Vermilion', 10927, '41.41200', '-82.31820'), ('Wellington', 4511, '41.16460', '-82.22360')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ011': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bay Village', 16087, '41.48980', '-81.92930'), ('Beachwood', 12186, '41.47870', '-81.50250'), ('Bedford', 14214, '41.39130', '-81.53730'), ('Bedford Heights', 11375, '41.40520', '-81.50620'), ('Bentleyville', 947, '41.41350', '-81.41320'), ('Berea', 18970, '41.36990', '-81.86270'), ('Bratenahl', 1337, '41.55780', '-81.59700'), ('Brecksville', 13382, '41.30760', '-81.61850'), ('Broadview Heights', 15967, '41.31920', '-81.67990'), ('Brooklyn', 11586, '41.43460', '-81.74950'), ('Brooklyn Heights', 1558, '41.41560', '-81.66540'), ('Brook Park', 21218, '41.40010', '-81.82690'), ('Chagrin Falls', 4024, '41.43120', '-81.38960'), ('Cleveland', 478403, '41.47970', '-81.67850'), ('Cleveland Heights', 49958, '41.50960', '-81.56350'), ('Cuyahoga Heights', 599, '41.43610', '-81.65330'), ('East Cleveland', 27217, '41.53120', '-81.58020'), ('Euclid', 52717, '41.59230', '-81.51940'), ('Fairview Park', 17572, '41.44060', '-81.85410'), ('Garfield Heights', 30734, '41.41970', '-81.60400'), ('Gates Mills', 2493, '41.53250', '-81.41070'), ('Glenwillow', 449, '41.36080', '-81.47240'), ('Highland Heights', 8082, '41.54900', '-81.47160'), ('Hunting Valley', 735, '41.47300', '-81.40910'), ('Independence', 7109, '41.38030', '-81.64150'), ('Lakewood', 56646, '41.48380', '-81.80150'), ('Linndale', 117, '41.44510', '-81.76650'), ('Lyndhurst', 15279, '41.51550', '-81.49260'), ('Maple Heights', 26156, '41.40890', '-81.56280'), ('Mayfield', 3435, '41.55350', '-81.43530'), ('Mayfield Heights', 19386, '41.51740', '-81.45400'), ('Middleburg Heights', 15542, '41.36760', '-81.81490'), ('Moreland Hills', 3298, '41.44450', '-81.43110'), ('Newburgh Heights', 2389, '41.45260', '-81.66230'), ('North Olmsted', 34113, '41.41470', '-81.92050'), ('North Randall', 906, '41.43120', '-81.53070'), ('North Royalton', 28648, '41.31240', '-81.74510'), ('Olmsted Falls', 7962, '41.36750', '-81.90500'), ('Orange', 3236, '41.43850', '-81.47200'), ('Parma', 85655, '41.38350', '-81.72940'), ('Parma Heights', 21659, '41.38600', '-81.76360'), ('Pepper Pike', 6040, '41.47960', '-81.46020'), ('Richmond Heights', 10944, '41.55810', '-81.50380'), ('Rocky River', 20735, '41.47310', '-81.85430'), ('Seven Hills', 12080, '41.37950', '-81.67510'), ('Shaker Heights', 29405, '41.47560', '-81.54780'), ('Solon', 21802, '41.38620', '-81.44090'), ('South Euclid', 23537, '41.52420', '-81.52520'), ('Strongsville', 43858, '41.31270', '-81.83210'), ('University Heights', 14146, '41.49470', '-81.53550'), ('Valley View', 2179, '41.38630', '-81.60690'), ('Walton Hills', 2400, '41.36420', '-81.55450'), ('Warrensville Heigh', 15109, '41.43860', '-81.52340'), ('Westlake', 31719, '41.45440', '-81.92880'), ('Woodmere', 828, '41.45920', '-81.47940')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ012': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Eastlake', 20255, '41.65960', '-81.43060'), ('Fairport Harbor', 3180, '41.74750', '-81.27330'), ('Grand River', 345, '41.74220', '-81.28600'), ('Kirtland', 6670, '41.59840', '-81.33800'), ('Kirtland Hills', 597, '41.64250', '-81.31810'), ('Madison', 2921, '41.77170', '-81.05320'), ('Mentor', 50278, '41.69150', '-81.33450'), ('Mentor-On-the-lake', 8127, '41.71370', '-81.36490'), ('North Madison', 8451, '41.82970', '-81.05480'), ('North Perry', 838, '41.80680', '-81.12550'), ('Painesville', 17503, '41.72710', '-81.24830'), ('Perry', 1195, '41.76730', '-81.14300'), ('Waite Hill', 446, '41.60980', '-81.38800'), ('Wickliffe', 13484, '41.60810', '-81.46750'), ('Willoughby', 22621, '41.64630', '-81.40940'), ('Willoughby Hills', 8595, '41.58480', '-81.43520'), ('Willowick', 14361, '41.63500', '-81.46850')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ013': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Aquilla', 372, '41.54600', '-81.17120'), ('Bainbridge', 3417, '41.39340', '-81.33720'), ('Burton', 1450, '41.47050', '-81.14640'), ('Chardon', 5156, '41.57910', '-81.20850'), ('Chesterland', 2646, '41.52420', '-81.34300'), ('Middlefield', 2233, '41.45910', '-81.07510'), ('South Russell', 4022, '41.43460', '-81.33280')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ014': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Andover', 1269, '41.60720', '-80.56960'), ('Jefferson', 3572, '41.73860', '-80.76870'), ('Orwell', 1519, '41.53610', '-80.85850'), ('Roaming Shores', 1239, '41.63670', '-80.82850'), ('Rock Creek', 584, '41.66070', '-80.85380')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ015': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Antwerp', 1740, '41.18070', '-84.73910'), ('Arthur', 0, '41.19500', '-84.36100'), ('Briceton', 0, '41.08400', '-84.63100'), ('Broughton', 166, '41.08790', '-84.53590'), ('Cecil', 216, '41.21910', '-84.60150'), ('Charloe', 0, '41.13100', '-84.43400'), ('Grover Hill', 412, '41.01870', '-84.47710'), ('Haviland', 180, '41.01840', '-84.58110'), ('Latty', 200, '41.08810', '-84.58340'), ('Mandale', 0, '41.01800', '-84.36000'), ('McGill', 0, '41.01900', '-84.77400'), ('Melrose', 322, '41.08960', '-84.41950'), ('Oakwood', 0, '41.09000', '-84.38000'), ('Paulding', 3595, '41.13680', '-84.58270'), ('Payne', 1166, '41.07940', '-84.72720'), ('Roselms', 0, '41.01900', '-84.41900'), ('Tipton', 0, '41.01900', '-84.66900'), ('Worstville', 0, '41.08200', '-84.67100')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHZ016': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belmore', 171, '41.15440', '-83.94140'), ('Cloverdale', 201, '41.01960', '-84.30420'), ('Columbus Grove', 2200, '40.91940', '-84.05820'), ('Continental', 1188, '41.09890', '-84.26680'), ('Dupont', 268, '41.05490', '-84.30210'), ('Fort Jennings', 432, '40.90610', '-84.29930'), ('Gilboa', 170, '41.01890', '-83.92140'), ('Glandorf', 919, '41.03030', '-84.07920'), ('Kalida', 1031, '40.98590', '-84.19550'), ('Kieferville', 0, '41.10000', '-84.20700'), ('Leipsic', 2236, '41.09930', '-83.98450'), ('Miller City', 136, '41.10190', '-84.13200'), ('North Creek', 0, '41.14600', '-84.21900'), ('Ottawa', 4367, '41.02080', '-84.04140'), ('Ottoville', 873, '40.93160', '-84.33880'), ('Pandora', 1188, '40.94770', '-83.96120'), ('Prentiss', 0, '41.15300', '-84.01800'), ('Rimer', 0, '40.88400', '-84.21100'), ('Rushmore', 0, '40.87500', '-84.25000'), ('Vaughnsville', 0, '40.88200', '-84.15000'), ('West Leipsic', 271, '41.10540', '-84.00180'), ('Wisterman', 0, '41.12400', '-84.23800')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHZ017': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Arcadia', 537, '41.11130', '-83.51130'), ('Arlington', 1351, '40.89270', '-83.65370'), ('Benton Ridge', 315, '41.00480', '-83.79200'), ('Findlay', 38967, '41.04300', '-83.64220'), ('Jenera', 235, '40.89980', '-83.72740'), ('McComb', 1676, '41.10670', '-83.78960'), ('Mount Blanchard', 484, '40.89850', '-83.55720'), ('Mount Cory', 203, '40.93480', '-83.82430'), ('Rawson', 465, '40.95670', '-83.78570'), ('Van Buren', 313, '41.13900', '-83.64920'), ('Vanlue', 371, '40.97640', '-83.48180')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHZ018': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Attica', 955, '41.06520', '-82.88630'), ('Bettsville', 784, '41.24400', '-83.23360'), ('Bloomville', 1045, '41.05100', '-83.01330'), ('Fostoria', 13931, '41.15920', '-83.41360'), ('New Riegel', 226, '41.05150', '-83.31900'), ('Republic', 614, '41.12480', '-83.01610'), ('Tiffin', 18135, '41.11670', '-83.17750')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHZ019': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Greenwich', 1525, '41.03110', '-82.51790'), ('Monroeville', 1433, '41.24400', '-82.70120'), ('New London', 2696, '41.07940', '-82.40620'), ('North Fairfield', 573, '41.10480', '-82.61300'), ('Norwalk', 16238, '41.24210', '-82.61050'), ('Wakeman', 951, '41.25590', '-82.40400'), ('Willard', 6806, '41.05080', '-82.72260')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ020': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Briarwood Beach', 682, '41.07490', '-81.90490'), ('Brunswick', 33388, '41.24570', '-81.82120'), ('Chippewa-On-the-lake', 293, '41.07010', '-81.90370'), ('Gloria Glens Park', 538, '41.05830', '-81.90090'), ('Lodi', 3061, '41.03370', '-82.01310'), ('Medina', 25139, '41.13620', '-81.86740'), ('Seville', 2160, '41.02240', '-81.86770'), ('Spencer', 747, '41.09750', '-82.12280'), ('Wadsworth', 18437, '41.02380', '-81.73190'), ('Westfield Center', 1054, '41.02660', '-81.93340')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ021': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Akron', 217074, '41.08040', '-81.52150'), ('Barberton', 27899, '41.01190', '-81.60570'), ('Boston Heights', 1186, '41.25570', '-81.50460'), ('Clinton', 1337, '40.92910', '-81.63110'), ('Cuyahoga Falls', 49374, '41.16900', '-81.52260'), ('Fairlawn', 7307, '41.12490', '-81.62130'), ('Green', 22817, '40.93630', '-81.43660'), ('Green', 22817, '40.94770', '-81.48650'), ('Hudson', 22439, '41.24470', '-81.45120'), ('Lakemore', 2561, '41.02130', '-81.42770'), ('Macedonia', 9224, '41.31100', '-81.49730'), ('Mogadore', 3893, '41.05040', '-81.40060'), ('Montrose-Ghent', 4906, '41.15730', '-81.64250'), ('Munroe Falls', 5314, '41.13970', '-81.43630'), ('Northfield', 3827, '41.34360', '-81.52970'), ('Norton', 11523, '41.02880', '-81.64570'), ('Peninsula', 602, '41.23680', '-81.55300'), ('Pigeon Creek', 945, '41.11100', '-81.67320'), ('Portage Lakes', 9870, '40.98710', '-81.53660'), ('Reminderville', 2347, '41.32740', '-81.39730'), ('Richfield', 3286, '41.23170', '-81.63730'), ('Silver Lake', 3019, '41.15660', '-81.45950'), ('Stow', 32139, '41.17660', '-81.43640'), ('Tallmadge', 16390, '41.10330', '-81.42320'), ('Twinsburg', 17006, '41.32420', '-81.45290')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ022': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Aurora', 13556, '41.31220', '-81.34460'), ('Brady Lake', 513, '41.16270', '-81.31390'), ('Brimfield', 3248, '41.09020', '-81.35010'), ('Garrettsville', 2262, '41.28390', '-81.09540'), ('Hiram', 1242, '41.31020', '-81.14450'), ('Kent', 27906, '41.14710', '-81.36250'), ('Mantua', 1046, '41.28140', '-81.22270'), ('Ravenna', 11771, '41.15980', '-81.24260'), ('Streetsboro', 12311, '41.23880', '-81.34580'), ('Sugar Bush Knolls', 227, '41.20490', '-81.34670'), ('Windham', 2806, '41.23620', '-81.03640')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ023': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bolindale', 2489, '41.20730', '-80.77780'), ('Brookfield Center', 1288, '41.24050', '-80.55820'), ('Champion Heights', 4665, '41.28810', '-80.84880'), ('Churchill', 2601, '41.17360', '-80.66730'), ('Cortland', 6830, '41.33150', '-80.72340'), ('Girard', 10902, '41.15460', '-80.69750'), ('Howland Center', 6481, '41.25120', '-80.74570'), ('Hubbard', 8284, '41.16000', '-80.56960'), ('Lordstown', 3633, '41.16540', '-80.85440'), ('McDonald', 3481, '41.16420', '-80.72380'), ('Mineral Ridge', 3900, '41.13910', '-80.76730'), ('Newton Falls', 5002, '41.18890', '-80.96980'), ('Niles', 20932, '41.18780', '-80.75310'), ('Orangeville', 189, '41.34330', '-80.52920'), ('South Canal', 1346, '41.17730', '-80.98680'), ('Turnpike Interchange', 1188, '41.21640', '-80.93440'), ('Vienna', 1067, '41.25510', '-80.67710'), ('Warren', 46832, '41.23810', '-80.81690'), ('West Farmington', 519, '41.39100', '-80.97350'), ('West Hill', 2523, '41.23090', '-80.52740'), ('Yankee Lake', 99, '41.27140', '-80.57070')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ024': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Abanaka', 0, '40.76000', '-84.69800'), ('Cavett', 0, '40.94600', '-84.58100'), ('Convoy', 1110, '40.91720', '-84.70620'), ('Dull', 0, '40.76400', '-84.66600'), ('Elgin', 50, '40.74170', '-84.47610'), ('Glenmore', 0, '40.78500', '-84.69800'), ('Jonestown', 0, '40.77100', '-84.51400'), ('Middlebury', 0, '40.84600', '-84.74600'), ('Middle Point', 593, '40.85600', '-84.44680'), ('Monticello', 0, '40.69800', '-84.42600'), ('Ohio City', 784, '40.77010', '-84.61610'), ('Schumm', 0, '40.75600', '-84.72700'), ('Scott', 322, '40.98860', '-84.58410'), ('Van Wert', 10690, '40.86460', '-84.58170'), ('Venedocia', 160, '40.78540', '-84.45550'), ('Wetzel', 0, '40.94500', '-84.43600'), ('Willshire', 463, '40.74660', '-84.79210'), ('Wren', 199, '40.80030', '-84.77410')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHZ025': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beaverdam', 356, '40.83290', '-83.97640'), ('Bluffton', 3896, '40.89010', '-83.88590'), ('Cairo', 499, '40.83130', '-84.08460'), ('Conant', 0, '40.71900', '-84.28000'), ('Delphos', 6944, '40.84440', '-84.33940'), ('Elida', 1917, '40.78600', '-84.19980'), ('Fort Shawnee', 3855, '40.68120', '-84.13150'), ('Gomer', 0, '40.84500', '-84.18700'), ('Harrod', 491, '40.70840', '-83.92040'), ('Hume', 0, '40.66300', '-84.20000'), ('Kemp', 0, '40.72400', '-84.22300'), ('Lafayette', 304, '40.75860', '-83.94950'), ('Lima', 40081, '40.74330', '-84.11140'), ('Needmore', 0, '40.77900', '-84.30800'), ('Rockport', 0, '40.87000', '-84.00000'), ('Rousculp', 0, '40.66600', '-84.08500'), ('Slabtown', 0, '40.78900', '-84.05200'), ('Southworth', 0, '40.76400', '-84.34000'), ('Spencerville', 2235, '40.70800', '-84.35320'), ('Westminster', 0, '40.69300', '-83.98000'), ('Yoder', 0, '40.68700', '-84.07100')], 'partOfState': 'west central', 'wfo': 'IWX'}, +'OHZ026': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ada', 5582, '40.76880', '-83.82390'), ('Alger', 888, '40.70950', '-83.84460'), ('Dunkirk', 952, '40.78760', '-83.64250'), ('Forest', 1488, '40.80310', '-83.51190'), ('Kenton', 8336, '40.64450', '-83.61040'), ('McGuffey', 522, '40.69330', '-83.78590'), ('Mount Victory', 600, '40.53410', '-83.52020'), ('Patterson', 138, '40.78180', '-83.52610'), ('Ridgeway', 354, '40.51404', '-83.57116')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ027': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Carey', 3901, '40.95150', '-83.38190'), ('Harpster', 203, '40.73860', '-83.25060'), ('Kirby', 132, '40.81340', '-83.41870'), ('Marseilles', 124, '40.70120', '-83.39280'), ('Nevada', 814, '40.81860', '-83.13140'), ('Sycamore', 914, '40.95100', '-83.17090'), ('Upper Sandusky', 6533, '40.83100', '-83.28080'), ('Wharton', 409, '40.86200', '-83.46470')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'OHZ028': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bucyrus', 13224, '40.80280', '-82.97350'), ('Chatfield', 218, '40.95250', '-82.94160'), ('Crestline', 5088, '40.78570', '-82.73890'), ('Galion', 11341, '40.73170', '-82.79050'), ('New Washington', 987, '40.96140', '-82.85430'), ('North Robinson', 211, '40.79220', '-82.85640'), ('Tiro', 281, '40.90600', '-82.76830')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ029': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bellville', 1773, '40.62080', '-82.51100'), ('Butler', 921, '40.58640', '-82.42010'), ('Lexington', 4165, '40.67820', '-82.58690'), ('Lucas', 620, '40.70290', '-82.42120'), ('Mansfield', 49346, '40.76280', '-82.52690'), ('Ontario', 5303, '40.76600', '-82.60760'), ('Plymouth', 1852, '40.99500', '-82.66800'), ('Shelby', 9821, '40.88210', '-82.66150')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ030': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ashland', 21249, '40.86690', '-82.31760'), ('Bailey Lakes', 397, '40.94740', '-82.35550'), ('Hayesville', 348, '40.77470', '-82.26070'), ('Jeromesville', 478, '40.80390', '-82.19620'), ('Loudonville', 2906, '40.63470', '-82.23400'), ('Mifflin', 144, '40.77440', '-82.36430'), ('Perrysville', 816, '40.65670', '-82.31240'), ('Polk', 357, '40.94520', '-82.21430'), ('Savannah', 372, '40.96740', '-82.36430')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ031': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Apple Creek', 999, '40.74830', '-81.83350'), ('Burbank', 279, '40.98760', '-81.99460'), ('Congress', 192, '40.92630', '-82.05530'), ('Creston', 2161, '40.97940', '-81.90040'), ('Dalton', 1605, '40.79920', '-81.69720'), ('Doylestown', 2799, '40.97030', '-81.69670'), ('Fredericksburg', 487, '40.67740', '-81.86970'), ('Marshallville', 826, '40.90040', '-81.73330'), ('Mount Eaton', 246, '40.69500', '-81.70280'), ('Orrville', 8551, '40.84680', '-81.77120'), ('Rittman', 6314, '40.97100', '-81.78330'), ('Shreve', 1582, '40.68220', '-82.02230'), ('Smithville', 1333, '40.86280', '-81.85980'), ('West Salem', 1501, '40.96960', '-82.10780'), ('Wooster', 24811, '40.81850', '-81.93290')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ032': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Alliance', 23253, '40.91110', '-81.11710'), ('Beach City', 1137, '40.65270', '-81.58010'), ('Brewster', 2324, '40.71270', '-81.60070'), ('Canal Fulton', 5061, '40.89000', '-81.58450'), ('Canton', 80806, '40.81220', '-81.37330'), ('East Canton', 1629, '40.78890', '-81.28340'), ('East Sparta', 806, '40.66980', '-81.35380'), ('Greentown', 3154, '40.92750', '-81.40190'), ('Hartville', 2174, '40.96100', '-81.33400'), ('Hills And Dales', 260, '40.82810', '-81.44490'), ('Limaville', 193, '40.98410', '-81.14810'), ('Louisville', 8904, '40.83720', '-81.26090'), ('Magnolia', 931, '40.65150', '-81.29250'), ('Massillon', 31325, '40.78670', '-81.52010'), ('Meyers Lake', 565, '40.81390', '-81.41820'), ('Minerva', 3934, '40.72980', '-81.10240'), ('Navarre', 1440, '40.72260', '-81.52270'), ('North Canton', 16369, '40.87310', '-81.39840'), ('Perry Heights', 8900, '40.79680', '-81.46910'), ('Uniontown', 2802, '40.97350', '-81.40350'), ('Waynesburg', 1003, '40.66810', '-81.25920'), ('Wilmot', 335, '40.65610', '-81.63500')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ033': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Austintown', 31627, '41.09160', '-80.73830'), ('Beloit', 1024, '40.92050', '-81.00050'), ('Boardman', 37215, '41.03220', '-80.66850'), ('Campbell', 9460, '41.07740', '-80.59060'), ('Canfield', 7374, '41.02970', '-80.76740'), ('Craig Beach', 1254, '41.11850', '-80.98240'), ('Lowellville', 1281, '41.04010', '-80.54810'), ('Maple Ridge', 910, '40.91630', '-81.05000'), ('New Middletown', 1682, '40.96370', '-80.56000'), ('Poland', 2866, '41.02410', '-80.61410'), ('Sebring', 4912, '40.92350', '-81.02230'), ('Struthers', 11756, '41.05120', '-80.59310'), ('Villa Maria', 0, '41.08000', '-80.52000'), ('Youngstown', 82026, '41.09910', '-80.64640')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ034': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Burkettsville', 254, '40.35290', '-84.64250'), ('Celina', 10303, '40.55330', '-84.57010'), ('Chickasaw', 364, '40.43620', '-84.49400'), ('Coldwater', 4482, '40.48270', '-84.63150'), ('Fort Recovery', 1273, '40.41090', '-84.77510'), ('Mendon', 697, '40.67130', '-84.51800'), ('Montezuma', 191, '40.48930', '-84.54890'), ('Rockford', 1126, '40.69200', '-84.64870'), ('St. Henry', 2271, '40.42090', '-84.63360')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ035': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Buckland', 255, '40.62430', '-84.26070'), ('Cridersville', 1817, '40.65260', '-84.14600'), ('Minster', 2794, '40.39430', '-84.37950'), ('New Bremen', 2909, '40.43740', '-84.38060'), ('New Knoxville', 891, '40.49420', '-84.31850'), ('St. Marys', 8342, '40.54390', '-84.39090'), ('Uniopolis', 256, '40.60190', '-84.08660'), ('Wapakoneta', 9474, '40.57020', '-84.19220'), ('Waynesfield', 803, '40.60180', '-83.97380')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ036': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Caledonia', 578, '40.63600', '-82.96940'), ('Green Camp', 342, '40.53280', '-83.20800'), ('La Rue', 775, '40.57790', '-83.38250'), ('Marion', 35318, '40.58490', '-83.12790'), ('Morral', 388, '40.68990', '-83.21310'), ('New Bloomington', 548, '40.58550', '-83.31530'), ('Prospect', 1191, '40.45240', '-83.18570'), ('Waldo', 332, '40.46160', '-83.08560')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ037': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Cardington', 1849, '40.49910', '-82.89380'), ('Chesterville', 193, '40.48010', '-82.68280'), ('Edison', 437, '40.55810', '-82.86360'), ('Fulton', 264, '40.46240', '-82.82840'), ('Marengo', 297, '40.40130', '-82.81010'), ('Mount Gilead', 3290, '40.55080', '-82.83600'), ('Sparta', 191, '40.39470', '-82.69960')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ038': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Glenmont', 283, '40.51700', '-82.09270'), ('Holmesville', 386, '40.62840', '-81.92340'), ('Killbuck', 839, '40.49720', '-81.98360'), ('Millersburg', 3326, '40.55340', '-81.91560'), ('Nashville', 172, '40.59600', '-82.11330')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OHZ039': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Baltic', 743, '40.44130', '-81.70180'), ('Barnhill', 364, '40.44820', '-81.36760'), ('Bolivar', 894, '40.65000', '-81.45480'), ('Dennison', 2992, '40.39710', '-81.32790'), ('Dover', 12210, '40.52980', '-81.47980'), ('Gnadenhutten', 1280, '40.35920', '-81.43130'), ('Midvale', 547, '40.43700', '-81.37210'), ('Mineral City', 841, '40.60240', '-81.36150'), ('Newcomerstown', 4008, '40.27450', '-81.59880'), ('New Philadelphia', 17056, '40.48670', '-81.44130'), ('Parral', 241, '40.56120', '-81.49500'), ('Port Washington', 552, '40.32690', '-81.51960'), ('Roswell', 276, '40.47540', '-81.34640'), ('Stillwater', 0, '40.32000', '-81.32000'), ('Stone Creek', 184, '40.39870', '-81.55870'), ('Strasburg', 2310, '40.60230', '-81.52940'), ('Sugarcreek', 2174, '40.50660', '-81.64190'), ('Tuscarawas', 934, '40.39750', '-81.40420'), ('Uhrichsville', 5662, '40.40010', '-81.35080'), ('Zoar', 193, '40.61400', '-81.42430')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ040': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Carrollton', 3190, '40.57980', '-81.09130'), ('Dellroy', 294, '40.55570', '-81.19940'), ('Leesville', 184, '40.45090', '-81.20960'), ('Malvern', 1218, '40.68900', '-81.18180'), ('Minerva Jct', 0, '40.72000', '-81.15000'), ('Sherrodsville', 316, '40.49470', '-81.24470')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ041': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Calcutta', 3491, '40.67600', '-80.57830'), ('Columbiana', 5635, '40.88590', '-80.68840'), ('East Liverpool', 13089, '40.63290', '-80.56940'), ('East Palestine', 4917, '40.83740', '-80.54490'), ('Glenmoor', 2192, '40.66510', '-80.61320'), ('Hanoverton', 387, '40.75500', '-80.93560'), ('La Croft', 1307, '40.64720', '-80.60130'), ('Leetonia', 2043, '40.87840', '-80.76100'), ('Lisbon', 2788, '40.77610', '-80.76930'), ('Middleton', 0, '40.78000', '-80.53000'), ('New Waterford', 1391, '40.84850', '-80.62040'), ('Rogers', 266, '40.79020', '-80.62710'), ('Salem', 12197, '40.90260', '-80.85370'), ('Salineville', 1397, '40.62100', '-80.83280'), ('Summitville', 108, '40.67720', '-80.88610'), ('Washingtonville', 789, '40.90020', '-80.76790'), ('Wellsville', 4133, '40.60270', '-80.65630')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ042': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ansonia', 1145, '40.21460', '-84.63530'), ('Arcanum', 2076, '39.99160', '-84.55380'), ('Castine', 129, '39.93080', '-84.62470'), ('Gettysburg', 558, '40.11570', '-84.49600'), ('Gordon', 190, '39.92990', '-84.50860'), ('Greenville', 13294, '40.10280', '-84.62480'), ('Hollansburg', 214, '39.99850', '-84.79300'), ('Ithaca', 102, '39.93820', '-84.55340'), ('New Madison', 817, '39.96850', '-84.70830'), ('New Weston', 135, '40.33700', '-84.64400'), ('North Star', 209, '40.32390', '-84.56800'), ('Osgood', 255, '40.34010', '-84.49420'), ('Palestine', 170, '40.05030', '-84.74450'), ('Pitsburg', 392, '39.98670', '-84.48770'), ('Rossburg', 224, '40.27980', '-84.63820'), ('Union City', 1767, '40.19820', '-84.79480'), ('Versailles', 2589, '40.22300', '-84.48400'), ('Wayne Lakes', 684, '40.02110', '-84.66240'), ('Yorkshire', 110, '40.32550', '-84.49600')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ043': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Anna', 1319, '40.39560', '-84.17290'), ('Botkins', 1205, '40.46720', '-84.18260'), ('Fort Loramie', 1344, '40.34630', '-84.37030'), ('Jackson Center', 1369, '40.43910', '-84.03950'), ('Kettlersville', 175, '40.43880', '-84.26100'), ('Lockington', 208, '40.20780', '-84.23550'), ('Port Jefferson', 321, '40.33000', '-84.09210'), ('Russia', 551, '40.23240', '-84.41090'), ('Sidney', 20211, '40.28880', '-84.16320')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ044': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belle Center', 807, '40.50910', '-83.74490'), ('Bellefontaine', 13069, '40.36000', '-83.75700'), ('De Graff', 1212, '40.31030', '-83.91470'), ('Huntsville', 454, '40.44240', '-83.80390'), ('Lakeview', 1074, '40.48780', '-83.92570'), ('Quincy', 734, '40.29590', '-83.96950'), ('Rushsylvania', 543, '40.46120', '-83.67110'), ('Russells Point', 1619, '40.46800', '-83.89330'), ('Valley Hi', 244, '40.31610', '-83.67300'), ('West Liberty', 1813, '40.25380', '-83.75800'), ('West Mansfield', 700, '40.39960', '-83.54500'), ('Zanesfield', 220, '40.33820', '-83.67810')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ045': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Magnetic Springs', 323, '40.35370', '-83.26280'), ('Marysville', 15942, '40.23770', '-83.37470'), ('Milford Center', 626, '40.17910', '-83.43710'), ('Richwood', 2156, '40.42710', '-83.29620'), ('Unionville Center', 299, '40.13630', '-83.34160')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ046': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ashley', 1216, '40.40910', '-82.95450'), ('Delaware', 25243, '40.29885', '-83.06747'), ('Galena', 305, '40.22050', '-82.88210'), ('Ostrander', 405, '40.26510', '-83.21210'), ('Powell', 6247, '40.16050', '-83.06560'), ('Sunbury', 2630, '40.24510', '-82.86480')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ047': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Centerburg', 1432, '40.30370', '-82.69660'), ('Danville', 1104, '40.44790', '-82.26010'), ('Fredericktown', 2428, '40.47890', '-82.54530'), ('Gambier', 1871, '40.37630', '-82.39490'), ('Gann', 179, '40.46910', '-82.19030'), ('Martinsburg', 185, '40.26930', '-82.35490'), ('Mount Vernon', 14375, '40.39050', '-82.47520')], 'partOfState': 'north central', 'wfo': 'CLE'}, +'OHZ048': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Chili', 0, '40.37000', '-81.77000'), ('Conesville', 364, '40.18500', '-81.89230'), ('Coshocton', 11682, '40.26370', '-81.84960'), ('Nellie', 134, '40.33830', '-82.06840'), ('Plainfield', 158, '40.20630', '-81.71900'), ('Warsaw', 781, '40.33530', '-82.00140'), ('West Lafayette', 2313, '40.27390', '-81.75100')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ049': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bowerston', 414, '40.42670', '-81.18770'), ('Cadiz', 3308, '40.26670', '-80.99230'), ('Deersville', 82, '40.30810', '-81.18770'), ('Freeport', 398, '40.21080', '-81.26830'), ('Harrisville', 259, '40.18180', '-80.88710'), ('Hopedale', 984, '40.32330', '-80.89900'), ('Jewett', 784, '40.36810', '-81.00270'), ('New Athens', 342, '40.18430', '-80.99540'), ('Scio', 799, '40.39870', '-81.08760')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ050': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Adena', 815, '40.21640', '-80.87630'), ('Amsterdam', 568, '40.47140', '-80.92140'), ('Bergholz', 769, '40.52110', '-80.88470'), ('Bloomingdale', 221, '40.34180', '-80.81750'), ('Brentwood', 3568, '40.35310', '-80.73070'), ('Brilliant', 1568, '40.26850', '-80.62490'), ('Empire', 300, '40.51100', '-80.62500'), ('Irondale', 418, '40.57270', '-80.72600'), ('Mingo Junction', 3631, '40.32060', '-80.61360'), ('Mount Pleasant', 535, '40.17590', '-80.80000'), ('New Alexandria', 222, '40.29120', '-80.67530'), ('Rayland', 434, '40.18340', '-80.69140'), ('Richmond', 471, '40.43280', '-80.77210'), ('Smithfield', 867, '40.27260', '-80.77680'), ('Steubenville', 19015, '40.36700', '-80.64660'), ('Stratton', 277, '40.52490', '-80.63040'), ('Tiltonsville', 1329, '40.17250', '-80.69770'), ('Toronto', 5676, '40.45890', '-80.60630'), ('Wintersville', 4067, '40.37900', '-80.70660')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ051': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bradford', 1859, '40.13090', '-84.42930'), ('Casstown', 322, '40.05260', '-84.12880'), ('Covington', 2559, '40.11910', '-84.35090'), ('Fletcher', 510, '40.14440', '-84.11180'), ('Laura', 487, '39.99360', '-84.40910'), ('Ludlow Falls', 210, '39.99840', '-84.33910'), ('Piqua', 20738, '40.14660', '-84.25100'), ('Pleasant Hill', 1134, '40.05130', '-84.34490'), ('Potsdam', 203, '39.96315', '-84.41620'), ('Tipp City', 9221, '39.95880', '-84.17630'), ('Troy', 21999, '40.04049', '-84.20497'), ('West Milton', 4645, '39.96104', '-84.32751')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ052': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Christiansburg', 553, '40.05680', '-84.02520'), ('Mechanicsburg', 1744, '40.07440', '-83.55780'), ('Mutual', 132, '40.07910', '-83.63730'), ('North Lewisburg', 1588, '40.22380', '-83.55780'), ('St. Paris', 1998, '40.12790', '-83.95800'), ('Urbana', 11613, '40.10880', '-83.75170'), ('Woodstock', 317, '40.17350', '-83.52790')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ053': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Catawba', 312, '39.99980', '-83.62230'), ('Crystal Lakes', 1411, '39.88490', '-84.02540'), ('Donnelsville', 293, '39.91830', '-83.94650'), ('Enon', 2638, '39.87903', '-83.93595'), ('Green Meadows', 2318, '39.86870', '-83.94430'), ('Holiday Valley', 1712, '39.85603', '-83.96843'), ('Lawrenceville', 302, '39.98500', '-83.87480'), ('New Carlisle', 5735, '39.93666', '-84.02691'), ('North Hampton', 370, '39.99050', '-83.94170'), ('Park Layne', 4519, '39.88650', '-84.03960'), ('South Charleston', 1850, '39.82693', '-83.63523'), ('South Vienna', 469, '39.92870', '-83.61180'), ('Springfield', 65358, '39.92718', '-83.80726'), ('Tremont City', 349, '40.01470', '-83.83610')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ054': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Choctaw Lake', 1562, '39.96010', '-83.48510'), ('London', 8771, '39.88920', '-83.44090'), ('Midway', 274, '39.73270', '-83.47630'), ('Mount Sterling', 1865, '39.71950', '-83.26810'), ('Plain City', 2832, '40.10680', '-83.27000'), ('South Solon', 405, '39.73710', '-83.61350'), ('West Jefferson', 3572, '39.94539', '-83.27651')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ055': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bexley', 13203, '39.96460', '-82.93450'), ('Blacklick Estates', 9518, '39.90490', '-82.86450'), ('Brice', 70, '39.91660', '-82.83200'), ('Canal Winchester', 4478, '39.84690', '-82.82140'), ('Downtown Columbus', 711470, '39.96035', '-83.00019'), ('Dublin', 31392, '40.11840', '-83.13290'), ('Gahanna', 32636, '40.02500', '-82.87500'), ('Grandview Heights', 6695, '39.97950', '-83.03990'), ('Grove City', 27075, '39.87310', '-83.07470'), ('Groveport', 3865, '39.85151', '-82.88455'), ('Harrisburg', 332, '39.81080', '-83.17150'), ('Hilliard', 24230, '40.03800', '-83.14260'), ('Huber Ridge', 4883, '40.09020', '-82.91840'), ('Lake Darby', 3727, '39.95730', '-83.22890'), ('Lincoln Village', 9482, '39.95470', '-83.13090'), ('Lockbourne', 280, '39.80900', '-82.97050'), ('Marble Cliff', 646, '39.98510', '-83.06050'), ('Minerva Park', 1288, '40.07760', '-82.94360'), ('New Albany', 3711, '40.07960', '-82.80870'), ('Obetz', 3977, '39.87670', '-82.94060'), ('Reynoldsburg', 32069, '39.95550', '-82.79920'), ('Riverlea', 499, '40.08040', '-83.02580'), ('Upper Arlington', 33686, '40.02660', '-83.07050'), ('Urbancrest', 868, '39.89940', '-83.08900'), ('Valleyview', 601, '39.96480', '-83.07290'), ('Westerville', 35318, '40.12120', '-82.91760'), ('Whitehall', 19201, '39.96860', '-82.88370'), ('Worthington', 14125, '40.09770', '-83.02090')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ056': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Alexandria', 85, '40.08970', '-82.61310'), ('Beechwood Trails', 2258, '40.02370', '-82.65090'), ('Buckeye Lake', 3049, '39.93058', '-82.47373'), ('Granville', 3167, '40.07100', '-82.50160'), ('Granville South', 1124, '40.05290', '-82.54020'), ('Gratiot', 187, '39.95140', '-82.21730'), ('Hanover', 885, '40.07920', '-82.27050'), ('Harbor Hills', 1303, '39.93670', '-82.43520'), ('Hartford', 418, '40.23940', '-82.68770'), ('Heath', 8527, '40.02690', '-82.43740'), ('Hebron', 2034, '39.96260', '-82.49160'), ('Johnstown', 3440, '40.15110', '-82.68770'), ('Kirkersville', 520, '39.96001', '-82.59705'), ('Newark', 46279, '40.05794', '-82.40080'), ('Pataskala', 10249, '40.00070', '-82.67350'), ('St. Louisville', 346, '40.17150', '-82.41900'), ('Summit Station', 1380, '40.00480', '-82.75080'), ('Utica', 2130, '40.23340', '-82.44360')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ057': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Adamsville', 127, '40.06880', '-81.88310'), ('Dresden', 1423, '40.12180', '-82.01110'), ('Duncan Falls', 0, '39.87000', '-81.92000'), ('Frazeysburg', 1201, '40.11630', '-82.11870'), ('Fultonham', 151, '39.85610', '-82.14290'), ('New Concord', 2651, '39.99740', '-81.73580'), ('North Zanesville', 3013, '39.98220', '-82.00010'), ('Norwich', 113, '39.98470', '-81.79260'), ('Philo', 769, '39.86120', '-81.90930'), ('Pleasant Grove', 2016, '39.94960', '-81.95960'), ('Roseville', 1936, '39.80710', '-82.07360'), ('South Zanesville', 1936, '39.90340', '-82.01970'), ('Zanesville', 25586, '39.95240', '-82.01200')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ058': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Antrim', 0, '40.12000', '-81.35000'), ('Byesville', 2574, '39.96800', '-81.54260'), ('Cambridge', 11520, '40.02500', '-81.58690'), ('Cumberland', 402, '39.85230', '-81.65860'), ('Fairview', 81, '40.05890', '-81.23410'), ('Kimbolton', 190, '40.15400', '-81.57430'), ('Lore City', 305, '39.98400', '-81.45960'), ('Old Washington', 265, '40.03740', '-81.44440'), ('Pleasant City', 439, '39.90340', '-81.54470'), ('Quaker City', 563, '39.96910', '-81.29640'), ('Salesville', 154, '39.97340', '-81.33700'), ('Senecaville', 453, '39.93450', '-81.45990')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ059': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Barnesville', 4225, '39.98900', '-81.17350'), ('Bellaire', 4892, '40.01690', '-80.74650'), ('Belmont', 532, '40.02800', '-81.04120'), ('Bethesda', 1413, '40.01610', '-81.07290'), ('Bridgeport', 2186, '40.06650', '-80.74680'), ('Brookside', 644, '40.07120', '-80.76180'), ('Flushing', 900, '40.14850', '-81.06550'), ('Holloway', 345, '40.16050', '-81.12640'), ('Martins Ferry', 7226, '40.10130', '-80.72390'), ('Morristown', 299, '40.06280', '-81.07150'), ('Neffs', 1138, '40.02920', '-80.81560'), ('Powhatan Point', 1744, '39.86110', '-80.80940'), ('Shadyside', 3675, '39.97130', '-80.75090'), ('St. Clairsville', 5057, '40.07810', '-80.89900'), ('Yorkville', 1230, '40.15250', '-80.70810')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ060': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Camden', 2302, '39.63710', '-84.64650'), ('College Corner', 424, '39.56780', '-84.81260'), ('Eaton', 8133, '39.74850', '-84.63390'), ('Eldorado', 543, '39.90380', '-84.67580'), ('Gratis', 934, '39.64840', '-84.52880'), ('Lewisburg', 1798, '39.84900', '-84.54060'), ('New Paris', 1623, '39.85700', '-84.79350'), ('Verona', 430, '39.90290', '-84.48650'), ('West Alexandria', 1395, '39.74290', '-84.53360'), ('West Elkton', 194, '39.58880', '-84.55430'), ('West Manchester', 433, '39.90230', '-84.62620')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ061': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Brookville', 5289, '39.83570', '-84.41500'), ('Centerville', 23024, '39.64110', '-84.14000'), ('Clayton', 13347, '39.86070', '-84.35510'), ('Downtown Dayton', 166179, '39.76140', '-84.19454'), ('Drexel', 2057, '39.74410', '-84.29170'), ('Englewood', 12235, '39.86080', '-84.30690'), ('Farmersville', 980, '39.67870', '-84.42710'), ('Fort Mckinley', 3989, '39.80600', '-84.25670'), ('Germantown', 4884, '39.62548', '-84.36992'), ('Huber Heights', 38212, '39.85580', '-84.11230'), ('Kettering', 57502, '39.69590', '-84.15010'), ('Miamisburg', 19489, '39.63560', '-84.27450'), ('Moraine', 6897, '39.70390', '-84.22840'), ('New Lebanon', 4231, '39.74557', '-84.38488'), ('Northridge', 6853, '39.81030', '-84.19170'), ('Northview', 10337, '39.84310', '-84.27960'), ('Oakwood', 607, '39.71990', '-84.17360'), ('Overlook-Page Manor', 13242, '39.75410', '-84.11540'), ('Phillipsburg', 628, '39.90440', '-84.40070'), ('Riverside', 23545, '39.78060', '-84.12390'), ('Shiloh', 721, '39.81350', '-84.23180'), ('Trotwood', 27420, '39.80280', '-84.30450'), ('Union', 5574, '39.90270', '-84.30990'), ('Vandalia', 14603, '39.87810', '-84.19400'), ('West Carrollton', 13818, '39.66950', '-84.25250'), ('Woodbourne-Hyde Park', 7837, '39.66070', '-84.17360')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ062': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beavercreek', 37984, '39.72930', '-84.06240'), ('Bellbrook', 7009, '39.64000', '-84.08560'), ('Bowersville', 290, '39.58010', '-83.72370'), ('Cedarville', 3828, '39.74490', '-83.81050'), ('Clifton', 179, '39.79730', '-83.82570'), ('Fairborn', 32052, '39.80450', '-84.01750'), ('Jamestown', 1917, '39.65860', '-83.74000'), ('Shawnee Hills', 419, '39.65250', '-83.78260'), ('Spring Valley', 510, '39.61020', '-84.00610'), ('Wilberforce', 1579, '39.71650', '-83.88360'), ('Wright-Patterson AFB', 8579, '39.80160', '-84.07080'), ('Xenia', 24164, '39.68500', '-83.94080'), ('Yellow Springs', 3761, '39.80550', '-83.88718')], 'partOfState': 'west central', 'wfo': 'ILN'}, +'OHZ063': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Bloomingburg', 874, '39.60790', '-83.39550'), ('Jeffersonville', 1288, '39.65200', '-83.55690'), ('Milledgeville', 122, '39.59360', '-83.58780'), ('Octa', 83, '39.60464', '-83.61383'), ('Washington Court House', 13586, '39.53770', '-83.43110')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ064': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ashville', 3174, '39.71760', '-82.95520'), ('Circleville', 13485, '39.60180', '-82.93900'), ('Commercial Point', 776, '39.76940', '-83.05790'), ('Darbyville', 293, '39.69570', '-83.11420'), ('Logan Elm Village', 1062, '39.57170', '-82.94740'), ('New Holland', 785, '39.55320', '-83.25740'), ('Orient', 269, '39.80560', '-83.15150'), ('South Bloomfield', 1179, '39.71590', '-82.99000'), ('Tarlton', 298, '39.55430', '-82.77740'), ('Williamsport', 1002, '39.58340', '-83.11670')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ065': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Amanda', 707, '39.65040', '-82.74330'), ('Baltimore', 2881, '39.84630', '-82.60760'), ('Bremen', 1265, '39.70590', '-82.43140'), ('Carroll', 488, '39.79990', '-82.70340'), ('Fairfield Beach', 1163, '39.91780', '-82.48110'), ('Lancaster', 35335, '39.71488', '-82.59920'), ('Lithopolis', 600, '39.80500', '-82.81120'), ('Millersport', 963, '39.89858', '-82.53449'), ('Pickerington', 9792, '39.89050', '-82.76840'), ('Pleasantville', 877, '39.80900', '-82.52280'), ('Rushville', 268, '39.76270', '-82.43130'), ('Stoutsville', 581, '39.60660', '-82.82460'), ('Sugar Grove', 448, '39.62670', '-82.54710'), ('Thurston', 555, '39.84130', '-82.54500'), ('West Rushville', 132, '39.76270', '-82.44860')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ066': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Corning', 593, '39.60230', '-82.08870'), ('Crooksville', 2483, '39.76810', '-82.09490'), ('Glenford', 198, '39.88620', '-82.31980'), ('Hemlock', 142, '39.58890', '-82.15530'), ('Junction City', 818, '39.72150', '-82.30020'), ('New Lexington', 4689, '39.71330', '-82.20810'), ('New Straitsville', 774, '39.57780', '-82.23600'), ('Perry State Forest', 4689, '39.76950', '-82.20850'), ('Rendville', 46, '39.61930', '-82.09020'), ('Shawnee', 608, '39.61050', '-82.20720'), ('Somerset', 1549, '39.80580', '-82.30000'), ('Thornville', 731, '39.89580', '-82.41920')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ067': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Chesterhill', 305, '39.48990', '-81.86590'), ('Malta', 696, '39.65040', '-81.86460'), ('McConnelsville', 1676, '39.65410', '-81.84440'), ('Stockport', 540, '39.54930', '-81.79500')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ068': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Batesville', 100, '39.91420', '-81.28120'), ('Belle Valley', 263, '39.78870', '-81.55520'), ('Caldwell', 1956, '39.74580', '-81.51310'), ('Dexter City', 166, '39.65920', '-81.47490'), ('Sarahsville', 198, '39.80770', '-81.46950'), ('Summerfield', 296, '39.79770', '-81.33590')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ069': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Antioch', 89, '39.66160', '-81.06770'), ('Beallsville', 423, '39.84830', '-81.03540'), ('Clarington', 444, '39.77680', '-80.86510'), ('Graysville', 113, '39.66110', '-81.17110'), ('Jerusalem', 152, '39.85220', '-81.09530'), ('Lewisville', 233, '39.76590', '-81.21880'), ('Miltonsburg', 29, '39.83180', '-81.16430'), ('Stafford', 86, '39.71320', '-81.27760'), ('Wilson', 118, '39.85820', '-81.06780'), ('Woodsfield', 2598, '39.76300', '-81.11670')], 'partOfState': 'east central', 'wfo': 'PBZ'}, +'OHZ070': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beckett Ridge', 8663, '39.34700', '-84.43540'), ('Fairfield', 42097, '39.33110', '-84.54290'), ('Hamilton', 60690, '39.39946', '-84.56067'), ('Jacksonburg', 67, '39.53790', '-84.50390'), ('Middletown', 51605, '39.50570', '-84.37360'), ('Millville', 817, '39.39180', '-84.65350'), ('Monroe', 7133, '39.44058', '-84.36238'), ('New Miami', 2469, '39.43150', '-84.54100'), ('Oxford', 21943, '39.50570', '-84.74720'), ('Ross', 1971, '39.31180', '-84.65290'), ('Seven Mile', 678, '39.47930', '-84.55250'), ('Somerville', 294, '39.56350', '-84.63860'), ('South Middletown', 264, '39.48110', '-84.40070'), ('Trenton', 8746, '39.47700', '-84.46230')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ071': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Butlerville', 231, '39.30200', '-84.08900'), ('Carlisle', 5121, '39.57830', '-84.32090'), ('Corwin', 256, '39.52500', '-84.07320'), ('Five Points', 2191, '39.56160', '-84.19710'), ('Franklin', 11396, '39.55390', '-84.30120'), ('Harveysburg', 563, '39.50030', '-84.00230'), ('Landen', 12766, '39.30790', '-84.27970'), ('Lebanon', 16962, '39.43336', '-84.20737'), ('Loveland Park', 1799, '39.29840', '-84.26250'), ('Maineville', 885, '39.31580', '-84.22310'), ('Mason', 22016, '39.36000', '-84.30700'), ('Morrow', 1286, '39.34910', '-84.12660'), ('Pleasant Plain', 156, '39.27970', '-84.10930'), ('South Lebanon', 2538, '39.37120', '-84.21140'), ('Springboro', 12380, '39.56340', '-84.23770'), ('Waynesville', 2558, '39.53410', '-84.08660')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ072': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Blanchester', 4220, '39.28950', '-83.97960'), ('Clarksville', 497, '39.40250', '-83.98290'), ('Martinsville', 440, '39.32300', '-83.81110'), ('Midland', 265, '39.30590', '-83.91040'), ('New Vienna', 1294, '39.32470', '-83.69240'), ('Port William', 258, '39.55170', '-83.78570'), ('Sabina', 2780, '39.49030', '-83.63380'), ('Wilmington', 11921, '39.44360', '-83.83090')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ073': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Adelphi', 371, '39.46460', '-82.74630'), ('Bainbridge', 213, '39.22676', '-83.26996'), ('Chillicothe', 21796, '39.33560', '-82.98810'), ('Clarksburg', 516, '39.50630', '-83.15460'), ('Frankfort', 1011, '39.40800', '-83.18280'), ('Kingston', 1032, '39.47220', '-82.91180'), ('North Fork Village', 1247, '39.33640', '-83.02780'), ('South Salem', 213, '39.33640', '-83.30750')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ074': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Laurelville', 533, '39.47150', '-82.73750'), ('Logan', 6704, '39.53690', '-82.40170'), ('Murray City', 452, '39.51080', '-82.16710')], 'partOfState': 'central', 'wfo': 'ILN'}, +'OHZ075': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Albany', 808, '39.22370', '-82.19890'), ('Amesville', 184, '39.40140', '-81.95530'), ('Athens', 21342, '39.32420', '-82.09610'), ('Buchtel', 574, '39.46280', '-82.18250'), ('Chauncey', 1067, '39.39950', '-82.12800'), ('Coolville', 528, '39.22030', '-81.79830'), ('Glouster', 1972, '39.50280', '-82.08480'), ('Jacksonville', 544, '39.47580', '-82.08010'), ('Nelsonville', 5230, '39.45880', '-82.22600'), ('The Plains', 2931, '39.36560', '-82.13400'), ('Trimble', 466, '39.48640', '-82.07990')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ076': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belpre', 6660, '39.27830', '-81.58860'), ('Beverly', 1282, '39.54970', '-81.63630'), ('Devola', 2771, '39.47330', '-81.46960'), ('Lowell', 628, '39.52910', '-81.50750'), ('Lower Salem', 109, '39.56350', '-81.39460'), ('Macksburg', 202, '39.63120', '-81.45690'), ('Marietta', 14515, '39.42140', '-81.44690'), ('Matamoras', 1135, '39.51860', '-81.07050')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ077': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Addyston', 1010, '39.13810', '-84.71060'), ('Amberley', 3425, '39.20240', '-84.43320'), ('Anderson Township', 10978, '39.07010', '-84.33880'), ('Arlington Heights', 899, '39.21510', '-84.45580'), ('Blue Ash', 12513, '39.24670', '-84.38080'), ('Bridgetown', 11748, '39.15720', '-84.63394'), ('Cherry Grove', 4555, '39.07970', '-84.32280'), ('Cheviot', 9015, '39.15755', '-84.60973'), ('Cleves', 2790, '39.16230', '-84.74930'), ('Covedale', 6360, '39.12380', '-84.64060'), ('Deer Park', 5982, '39.20340', '-84.39700'), ('Dent', 7612, '39.19380', '-84.66090'), ('Dillonvale', 3716, '39.21800', '-84.40210'), ('Downtown Cincinnati', 331285, '39.10113', '-84.51195'), ('Dry Run', 6553, '39.10430', '-84.33070'), ('Elmwood Place', 2681, '39.18490', '-84.48850'), ('Evendale', 3090, '39.25380', '-84.42570'), ('Fairfax', 1938, '39.14270', '-84.39620'), ('Finneytown', 13492, '39.21670', '-84.51420'), ('Forest Park', 19463, '39.28720', '-84.52690'), ('Fruit Hill', 3945, '39.06810', '-84.36620'), ('Glendale', 2188, '39.27070', '-84.45840'), ('Golf Manor', 3999, '39.18710', '-84.44640'), ('Grandview', 1391, '39.19430', '-84.72440'), ('Greenhills', 4103, '39.26470', '-84.51760'), ('Groesbeck', 7202, '39.22880', '-84.59430'), ('Harrison', 7487, '39.24990', '-84.79300'), ('Indian Hill', 5907, '39.18950', '-84.33480'), ('Kenwood', 7423, '39.20560', '-84.37410'), ('Lincoln Heights', 4113, '39.24390', '-84.45810'), ('Lockland', 3707, '39.22760', '-84.45740'), ('Loveland', 11677, '39.26730', '-84.27410'), ('Mack', 5767, '39.15401', '-84.66822'), ('Madeira', 8923, '39.18420', '-84.37480'), ('Mariemont', 3408, '39.14210', '-84.37900'), ('Monfort Heights', 3661, '39.19034', '-84.59898'), ('Montgomery', 10163, '39.24730', '-84.34760'), ('Mount Healthy', 7149, '39.23280', '-84.54720'), ('Mount Healthy Heights', 3450, '39.27030', '-84.56810'), ('Newtown', 2420, '39.12220', '-84.35050'), ('North Bend', 603, '39.14850', '-84.74150'), ('Northbrook', 11076, '39.24750', '-84.57900'), ('North College Hill', 10082, '39.21720', '-84.55160'), ('Northgate', 8016, '39.25270', '-84.59240'), ('Norwood', 21675, '39.15960', '-84.45370'), ('Pleasant Run', 5267, '39.29090', '-84.57240'), ('Pleasant Run Farm', 4731, '39.30300', '-84.54800'), ('Reading', 11292, '39.22440', '-84.43140'), ('Sharonville', 13804, '39.28120', '-84.40650'), ('Sherwood', 3907, '39.08470', '-84.36070'), ('Silverton', 5178, '39.18930', '-84.40130'), ('Springdale', 10563, '39.29160', '-84.47550'), ('St. Bernard', 4924, '39.17100', '-84.49530'), ('Terrace Park', 2273, '39.15800', '-84.31210'), ('Turpin Hills', 4960, '39.10710', '-84.37320'), ('White Oak', 13277, '39.21025', '-84.60254'), ('Woodlawn', 2816, '39.25670', '-84.46750'), ('Wyoming', 8261, '39.22950', '-84.48160')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ078': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Amelia', 2752, '39.02580', '-84.21690'), ('Batavia', 1617, '39.07840', '-84.18120'), ('Bethel', 2637, '38.96240', '-84.08470'), ('Chilo', 97, '38.79370', '-84.13820'), ('Day Heights', 2823, '39.17390', '-84.22630'), ('Felicity', 922, '38.83990', '-84.09790'), ('Milford', 6284, '39.17090', '-84.28160'), ('Moscow', 244, '38.86030', '-84.22850'), ('Mount Carmel', 4308, '39.09670', '-84.29840'), ('Mount Repose', 4102, '39.18540', '-84.22460'), ('Mulberry', 3139, '39.19720', '-84.24890'), ('Neville', 127, '38.81320', '-84.21080'), ('New Richmond', 2219, '38.95117', '-84.27942'), ('Newtonsville', 492, '39.18290', '-84.08740'), ('Owensville', 816, '39.12370', '-84.13540'), ('Summerside', 5523, '39.12280', '-84.28640'), ('Williamsburg', 2358, '39.05310', '-84.05070'), ('Withamsville', 3145, '39.05860', '-84.27000')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ079': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Aberdeen', 1603, '38.66670', '-83.76990'), ('Fayetteville', 372, '39.18640', '-83.93210'), ('Georgetown', 3691, '38.86690', '-83.90270'), ('Hamersville', 515, '38.91830', '-83.98500'), ('Higginsport', 291, '38.79070', '-83.96840'), ('Mount Orab', 2307, '39.02930', '-83.92370'), ('Ripley', 1745, '38.73960', '-83.84020'), ('Russellville', 453, '38.86740', '-83.78750'), ('Sardinia', 862, '39.00690', '-83.80700'), ('St. Martin', 91, '39.21470', '-83.88790')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ080': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Belfast', 1039, '39.06266', '-83.53211'), ('Greenfield', 4906, '39.35420', '-83.38910'), ('Highland', 283, '39.34360', '-83.59960'), ('Hillsboro', 6368, '39.20121', '-83.61060'), ('Leesburg', 1253, '39.34580', '-83.55460'), ('Lynchburg', 1350, '39.24430', '-83.78880'), ('Marshall', 158, '39.15209', '-83.48485'), ('Mowrystown', 373, '39.03880', '-83.75250'), ('Sinking Spring', 158, '39.07510', '-83.38720')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ081': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Cherry Fork', 127, '38.88840', '-83.61350'), ('Manchester', 2043, '38.69140', '-83.60520'), ('Peebles', 1739, '38.94720', '-83.40830'), ('Rome', 99, '38.66480', '-83.37910'), ('Seaman', 1039, '38.93880', '-83.57310'), ('West Union', 2903, '38.79320', '-83.54370'), ('Winchester', 1025, '38.94260', '-83.65360')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ082': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Beaver', 464, '39.03240', '-82.82520'), ('Cynthiana', 158, '39.17305', '-83.34838'), ('Kincaid Springs', 158, '39.10000', '-83.27000'), ('Pike Lake', 1907, '39.16284', '-83.21872'), ('Piketon', 1907, '39.06820', '-82.99990'), ('Waverly', 4582, '39.12530', '-82.98250')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ083': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Coalton', 545, '39.11250', '-82.61120'), ('Jackson', 6184, '39.04570', '-82.62920'), ('Oak Hill', 1685, '38.89600', '-82.56940'), ('Wellston', 6078, '39.11710', '-82.53830')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ084': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Hamden', 871, '39.16000', '-82.52540'), ('Lake Hope State Park', 375, '39.33330', '-82.35160'), ('McArthur', 1888, '39.24700', '-82.47840'), ('Wilkesville', 151, '39.07650', '-82.32660'), ('Zaleski', 375, '39.28060', '-82.39630')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ085': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Forked Run State Park', 528, '39.10140', '-81.78840'), ('Middleport', 2525, '38.99980', '-82.05690'), ('Pomeroy', 1966, '39.02760', '-82.03320'), ('Racine', 746, '38.96820', '-81.91250'), ('Rutland', 401, '39.04220', '-82.12910'), ('Syracuse', 879, '38.99970', '-81.97300')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ086': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Cheshire', 221, '38.94400', '-82.11220'), ('Crown City', 411, '38.58830', '-82.28970'), ('Gallipolis', 4180, '38.82000', '-82.19150'), ('Rio Grande', 915, '38.88170', '-82.37860'), ('Vinton', 324, '38.97740', '-82.34030')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ087': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Athalia', 328, '38.51220', '-82.30760'), ('Burlington', 2794, '38.40930', '-82.52900'), ('Chesapeake', 842, '38.43050', '-82.45050'), ('Coal Grove', 2027, '38.49800', '-82.64270'), ('Hanging Rock', 279, '38.55890', '-82.72620'), ('Ironton', 11211, '38.53250', '-82.67850'), ('Lake Vesuvius', 11211, '38.61550', '-82.63070'), ('Proctorville', 620, '38.43760', '-82.38090'), ('South Point', 3742, '38.41920', '-82.57420')], 'partOfState': 'southeast', 'wfo': 'RLX'}, +'OHZ088': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Franklin Furnace', 1537, '38.60800', '-82.84650'), ('Lucasville', 1588, '38.87900', '-82.99530'), ('New Boston', 2340, '38.75200', '-82.93500'), ('Otway', 86, '38.86500', '-83.18830'), ('Portsmouth', 20909, '38.73850', '-82.99110'), ('Rarden', 176, '38.92270', '-83.24280'), ('Rosemount', 2043, '38.78780', '-82.97170'), ('Sciotodale', 982, '38.75530', '-82.86110'), ('South Webster', 764, '38.81560', '-82.72790'), ('West Portsmouth', 3458, '38.76280', '-83.03830'), ('Wheelersburg', 6471, '38.73410', '-82.84530')], 'partOfState': 'southwest', 'wfo': 'ILN'}, +'OHZ089': {'fullStateName': 'Ohio', 'state': 'OH', 'cities': [('Ashtabula', 20962, '41.87950', '-80.79820'), ('Conneaut', 12485, '41.92630', '-80.57020'), ('Edgewood', 4762, '41.87870', '-80.74080'), ('Geneva', 6595, '41.79980', '-80.94850'), ('Geneva-On-the-lake', 1545, '41.85660', '-80.94600'), ('North Kingsville', 2658, '41.91720', '-80.67020')], 'partOfState': 'northeast', 'wfo': 'CLE'}, +'OKZ001': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Black Mesa Park', 0, '36.84780', '-102.88190'), ('Boise City', 1483, '36.73010', '-102.51000'), ('Felt', 0, '36.57000', '-102.78000'), ('Griggs', 0, '36.60000', '-102.12000'), ('Kenton', 0, '36.90000', '-102.97000'), ('Keyes', 410, '36.80760', '-102.25150'), ('Sturgis', 0, '36.88000', '-102.05000'), ('Wheeless', 0, '36.72000', '-102.90000')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'OKZ002': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Adams', 0, '36.75000', '-101.08000'), ('Baker', 0, '36.87000', '-101.02000'), ('Eva', 0, '36.80000', '-101.90000'), ('Goodwell', 1192, '36.59450', '-101.63210'), ('Guymon', 10472, '36.68630', '-101.48300'), ('Hardesty', 277, '36.61450', '-101.19330'), ('Hooker', 1788, '36.85990', '-101.21200'), ('Hough', 0, '36.87000', '-101.57000'), ('Optima', 266, '36.75830', '-101.35400'), ('Texhoma', 935, '36.50540', '-101.78730'), ('Tyrone', 880, '36.95560', '-101.06640')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'OKZ003': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Balko', 0, '36.63000', '-100.68000'), ('Beaver', 1570, '36.81450', '-100.52390'), ('Boyd', 0, '36.70000', '-100.82000'), ('Bryans Corner', 0, '36.62000', '-100.82000'), ('Elmwood', 0, '36.62000', '-100.52000'), ('Floris', 0, '36.87000', '-100.70000'), ('Forgan', 532, '36.90640', '-100.53760'), ('Gate', 112, '36.85190', '-100.05540'), ('Gray', 0, '36.55000', '-100.82000'), ('Knowles', 32, '36.87260', '-100.19250'), ('Mocane', 0, '36.88000', '-100.53000'), ('Slapout', 0, '36.62000', '-100.12000'), ('Turpin', 0, '36.87000', '-100.88000')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'OKZ004': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Buffalo', 1200, '36.83490', '-99.62760'), ('Laverne', 1097, '36.70970', '-99.89580'), ('May', 33, '36.61650', '-99.74900'), ('Rosston', 66, '36.81220', '-99.92990'), ('Selman', 0, '36.80390', '-99.48990')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ005': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Alva', 5288, '36.80190', '-98.66720'), ('Avard', 26, '36.69910', '-98.78970'), ('Camp Houston', 0, '36.81220', '-99.11530'), ('Capron', 42, '36.89740', '-98.57670'), ('Dacoma', 148, '36.66000', '-98.56370'), ('Freedom', 271, '36.76650', '-99.11260'), ('Hopeton', 0, '36.68870', '-98.66630'), ('Waynoka', 993, '36.58500', '-98.87940')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ006': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Aline', 214, '36.50900', '-98.44830'), ('Amorita', 44, '36.92390', '-98.29350'), ('Burlington', 156, '36.90080', '-98.42330'), ('Byron', 45, '36.90120', '-98.29470'), ('Carmen', 411, '36.57840', '-98.45770'), ('Cherokee', 1630, '36.75410', '-98.35490'), ('Driftwood', 0, '36.88030', '-98.35990'), ('Goltry', 268, '36.53200', '-98.15070'), ('Great Salt Plains Lake', 0, '36.73000', '-98.20000'), ('Helena', 443, '36.54640', '-98.27020'), ('Ingersoll', 0, '36.79610', '-98.39400'), ('Jet', 230, '36.66680', '-98.18070'), ('Lambert', 9, '36.68370', '-98.42390')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ007': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Deer Creek', 124, '36.80630', '-97.51880'), ('Jefferson', 37, '36.71910', '-97.79020'), ('Lamont', 465, '36.69110', '-97.55610'), ('Manchester', 104, '36.99440', '-98.03500'), ('Medford', 1172, '36.80730', '-97.73370'), ('Nash', 224, '36.66540', '-98.05210'), ('Pond Creek', 896, '36.66750', '-97.80170'), ('Renfrow', 16, '36.92420', '-97.65640'), ('Wakita', 420, '36.88180', '-97.92340')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKZ008': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Blackwell', 7668, '36.80450', '-97.28260'), ('Blackwell Lake', 0, '36.94940', '-97.39800'), ('Braman', 244, '36.92290', '-97.33370'), ('c', 0, '36.77780', '-96.85660'), ('Chilocco', 0, '36.98730', '-97.06920'), ('Hardy', 0, '36.97120', '-96.79660'), ('Kaw City', 372, '36.76490', '-96.86300'), ('Kildare', 92, '36.80900', '-97.04960'), ('Nardin', 75, '36.80630', '-97.44800'), ('Newkirk', 2243, '36.88170', '-97.05540'), ('Peckham', 0, '36.88670', '-97.17560'), ('Ponca City', 25919, '36.70390', '-97.08130'), ('Tonkawa', 3299, '36.68280', '-97.30780')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKZ009': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arnett', 520, '36.13530', '-99.77040'), ('Catesby', 0, '36.49300', '-99.96300'), ('Fargo', 326, '36.37340', '-99.62240'), ('Gage', 429, '36.31810', '-99.75670'), ('Harmon', 0, '36.14470', '-99.56050'), ('Shattuck', 1274, '36.27260', '-99.87710')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ010': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Fort Supply', 328, '36.57220', '-99.57350'), ('Mooreland', 1226, '36.43850', '-99.20500'), ('Mutual', 76, '36.22980', '-99.16730'), ('Quinlan', 22, '36.45480', '-99.04550'), ('Sharon', 122, '36.27540', '-99.33810'), ('Tangier', 0, '36.42030', '-99.53440'), ('Woodward', 11853, '36.43360', '-99.39070')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ011': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ames', 199, '36.24780', '-98.18640'), ('Chester', 0, '36.21650', '-98.92080'), ('Cleo Springs', 326, '36.40690', '-98.43950'), ('Fairview', 2733, '36.26940', '-98.47630'), ('Isabella', 0, '36.23650', '-98.34050'), ('Meno', 195, '36.38780', '-98.17730'), ('Orienta', 0, '36.36220', '-98.47290'), ('Orion', 0, '36.22350', '-98.77850'), ('Ringwood', 424, '36.37940', '-98.24500')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ012': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bison', 0, '36.19570', '-97.88780'), ('Breckenridge', 251, '36.43610', '-97.73260'), ('Carrier', 77, '36.47660', '-98.02310'), ('Covington', 553, '36.30750', '-97.58560'), ('Douglas', 55, '36.26000', '-97.66730'), ('Drummond', 405, '36.30100', '-98.03540'), ('Enid', 47045, '36.40460', '-97.88410'), ('Fairmont', 147, '36.35490', '-97.70330'), ('Garber', 845, '36.43650', '-97.58040'), ('Hayward', 0, '36.27590', '-97.51430'), ('Hillsdale', 101, '36.56400', '-97.99250'), ('Hunter', 173, '36.56400', '-97.66240'), ('Kremlin', 240, '36.54660', '-97.83090'), ('Lahoma', 577, '36.38790', '-98.09030'), ('North Enid', 796, '36.43500', '-97.87020'), ('Vance Air Force Base', 0, '36.34000', '-97.90000'), ('Waukomis', 1261, '36.28000', '-97.89880')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKZ013': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Billings', 436, '36.52890', '-97.44410'), ('Ceres', 0, '36.47720', '-97.28250'), ('Lake Mcmurtry', 0, '36.17870', '-97.18080'), ('Lucien', 0, '36.27500', '-97.45490'), ('Marland', 280, '36.56130', '-97.15270'), ('Morrison', 636, '36.29460', '-97.01160'), ('Perry', 5230, '36.29000', '-97.28560'), ('Red Rock', 293, '36.45990', '-97.17890'), ('Sooner Lake', 0, '36.43430', '-97.04160')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'OKZ014': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Angora', 0, '35.84160', '-99.44420'), ('Berlin', 0, '35.45060', '-99.62700'), ('Cheyenne', 778, '35.61390', '-99.67200'), ('Crawford', 0, '35.82620', '-99.80000'), ('Dempsey', 0, '35.51210', '-99.82320'), ('Durham', 0, '35.84280', '-99.92370'), ('Hammon', 469, '35.63230', '-99.38340'), ('Reydon', 177, '35.65440', '-99.92010'), ('Roll', 0, '35.78440', '-99.71180'), ('Strong City', 42, '35.67010', '-99.60010')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKZ015': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Camargo', 115, '36.01780', '-99.28830'), ('Cestos', 0, '36.14430', '-99.09430'), ('Fay', 0, '35.81600', '-98.65720'), ('Hucmac', 0, '36.05760', '-98.79180'), ('Leedey', 345, '35.86950', '-99.34500'), ('Oakwood', 72, '35.93080', '-98.70320'), ('Putnam', 46, '35.85560', '-98.96810'), ('Seiling', 875, '36.14960', '-98.92470'), ('Taloga', 372, '36.04020', '-98.96430'), ('Vici', 668, '36.14910', '-99.29890')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ016': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arapaho', 748, '35.57810', '-98.95960'), ('Butler', 345, '35.63610', '-99.18540'), ('Clinton', 8833, '35.51270', '-98.97400'), ('Custer City', 393, '35.66450', '-98.88340'), ('Foss Reservoir', 0, '35.57060', '-99.22080'), ('Moorewood', 0, '35.74120', '-99.35270'), ('Stafford', 0, '35.53670', '-99.12240'), ('Thomas', 1238, '35.74730', '-98.74910'), ('Weatherford', 9859, '35.53080', '-98.70310')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKZ017': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Canton', 618, '36.05600', '-98.58860'), ('Canton Lake', 0, '36.12800', '-98.60730'), ('Eagle City', 0, '35.93310', '-98.59040'), ('Geary', 1258, '35.62940', '-98.31780'), ('Greenfield', 123, '35.72870', '-98.37710'), ('Hitchcock', 141, '35.96840', '-98.34890'), ('Homestead', 0, '36.14720', '-98.39190'), ('Longdale', 310, '36.13430', '-98.55020'), ('Okeene', 1240, '36.11650', '-98.31810'), ('Southard', 0, '36.05750', '-98.47850'), ('Watonga', 4658, '35.84920', '-98.41220')], 'partOfState': 'northwest', 'wfo': 'OUN'}, +'OKZ018': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cashion', 635, '35.79920', '-97.67860'), ('Dover', 367, '35.98160', '-97.91070'), ('Hennessey', 2058, '36.10590', '-97.89800'), ('Kingfisher', 4380, '35.85670', '-97.93270'), ('Lacey', 0, '36.11590', '-98.08640'), ('Loyal', 81, '35.97280', '-98.11730'), ('Okarche', 1110, '35.72750', '-97.97710'), ('Omega', 0, '35.87010', '-98.19860')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ019': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cedar Valley', 58, '35.86400', '-97.56160'), ('Cimarron City', 110, '35.88930', '-97.59670'), ('Coyle', 337, '35.95400', '-97.23740'), ('Crescent', 1281, '35.95250', '-97.59550'), ('Guthrie', 9925, '35.88020', '-97.42470'), ('Langston', 1670, '35.94200', '-97.25440'), ('Lovell', 0, '36.05670', '-97.63690'), ('Marshall', 258, '36.15540', '-97.62480'), ('Meridian', 54, '35.84190', '-97.24670'), ('Mulhall', 239, '36.06430', '-97.40480'), ('Navina', 0, '35.80100', '-97.56000'), ('Orlando', 201, '36.14830', '-97.37580'), ('Seward', 0, '35.79710', '-97.48820')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ020': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cushing', 8371, '35.98250', '-96.76390'), ('Glencoe', 583, '36.22610', '-96.92740'), ('Ingalls', 0, '36.10180', '-96.88140'), ('Lake Carl Blackwell', 0, '36.13500', '-97.21270'), ('Perkins', 2272, '35.97550', '-97.03260'), ('Ripley', 444, '36.01750', '-96.90490'), ('Stillwater', 39065, '36.11550', '-97.05840'), ('Yale', 1342, '36.11490', '-96.70060')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ021': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Carter', 254, '35.21720', '-99.50340'), ('Delhi', 0, '35.17500', '-99.68020'), ('Elk City', 10510, '35.41450', '-99.41730'), ('Erick', 1023, '35.21350', '-99.86690'), ('Retrop', 0, '35.16030', '-99.36020'), ('Sayre', 4114, '35.30000', '-99.63990'), ('Sweetwater', 0, '35.42230', '-99.91140'), ('Texola', 47, '35.21860', '-99.98940')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKZ022': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bessie', 190, '35.38490', '-98.98830'), ('Burns Flat', 1782, '35.35510', '-99.17510'), ('Canute', 524, '35.41890', '-99.28050'), ('Cloud Chief', 0, '35.25290', '-98.84300'), ('Colony', 147, '35.35000', '-98.67600'), ('Cordell', 2892, '35.29430', '-98.98770'), ('Corn', 591, '35.37890', '-98.78130'), ('Cowden', 0, '35.24770', '-98.71180'), ('Dill City', 526, '35.28250', '-99.13380'), ('Foss', 127, '35.45560', '-99.16950'), ('Rocky', 174, '35.15640', '-99.05850'), ('Sentinel', 859, '35.15660', '-99.17350')], 'partOfState': 'western', 'wfo': 'OUN'}, +'OKZ023': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Albert', 0, '35.23300', '-98.41220'), ('Alfalfa', 0, '35.22200', '-98.60610'), ('Anadarko', 6645, '35.07540', '-98.24310'), ('Apache', 1616, '34.89380', '-98.36310'), ('Binger', 708, '35.30920', '-98.34370'), ('Boone', 0, '34.89860', '-98.46220'), ('Bridgeport', 109, '35.54690', '-98.37830'), ('Carnegie', 1637, '35.10460', '-98.60260'), ('Cement', 530, '34.93510', '-98.13830'), ('Cogar', 0, '35.33410', '-98.13070'), ('Cyril', 1168, '34.89760', '-98.20210'), ('Eakly', 276, '35.30630', '-98.55570'), ('Fort Cobb', 667, '35.09860', '-98.43620'), ('Fort Cobb Reservoir', 0, '35.19030', '-98.47800'), ('Gracemont', 336, '35.18780', '-98.25650'), ('Hinton', 2175, '35.47340', '-98.35530'), ('Hydro', 1060, '35.54880', '-98.57860'), ('Lake Chickasha', 0, '35.14020', '-98.14060'), ('Lookeba', 131, '35.36300', '-98.36400'), ('Stecker', 0, '34.95830', '-98.31500')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ024': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Calumet', 535, '35.60050', '-98.11910'), ('Cedar Lake', 0, '35.42900', '-98.19250'), ('Concho', 16212, '35.61260', '-97.99370'), ('El Reno', 16212, '35.52820', '-97.95580'), ('Mustang', 13156, '35.39170', '-97.72450'), ('Piedmont', 3650, '35.64230', '-97.74600'), ('Richland', 0, '35.57680', '-97.80290'), ('Union City', 1375, '35.39210', '-97.94020'), ('Yukon', 21043, '35.49730', '-97.74280')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ025': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arcadia', 279, '35.66540', '-97.32610'), ('Bethany', 20307, '35.50600', '-97.64340'), ('Choctaw', 9377, '35.49460', '-97.26500'), ('Del City', 22128, '35.44750', '-97.43970'), ('Edmond', 68315, '35.65320', '-97.48150'), ('Forest Park', 1066, '35.50720', '-97.44650'), ('Harrah', 4719, '35.48930', '-97.16350'), ('Jones', 2517, '35.56660', '-97.29060'), ('Lake Aluma', 96, '35.53560', '-97.44830'), ('Luther', 612, '35.66040', '-97.19460'), ('Midwest City', 54088, '35.45640', '-97.38900'), ('Newalla', 0, '35.40460', '-97.16100'), ('Nichols Hills', 4056, '35.54610', '-97.54440'), ('Nicoma Park', 2415, '35.49110', '-97.32400'), ('Oklahoma City', 506132, '35.46710', '-97.51350'), ('Spencer', 3746, '35.50760', '-97.37980'), ('The Village', 10157, '35.56620', '-97.55130'), ('Tinker Air Force Base', 0, '35.41830', '-97.38920'), ('Valley Brook', 817, '35.40250', '-97.48200'), ('Warr Acres', 9735, '35.52230', '-97.61900')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ026': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Agra', 356, '35.89510', '-96.87010'), ('Avery', 0, '35.88310', '-96.75070'), ('Carney', 649, '35.80580', '-97.01540'), ('Chandler', 2842, '35.70800', '-96.87650'), ('Davenport', 881, '35.70930', '-96.76560'), ('Kendrick', 138, '35.78530', '-96.77490'), ('Meeker', 978, '35.50320', '-96.89450'), ('Parkland', 0, '35.83940', '-96.84370'), ('Prague', 2138, '35.48850', '-96.68570'), ('Sparks', 137, '35.61090', '-96.81830'), ('Stroud', 2758, '35.75010', '-96.66000'), ('Tryon', 448, '35.87130', '-96.96320'), ('Warwick', 235, '35.68620', '-97.00570'), ('Wellston', 825, '35.69130', '-97.06490')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ027': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Acme', 0, '34.79720', '-98.01930'), ('Agawam', 0, '34.87420', '-97.94740'), ('Alex', 635, '34.91540', '-97.77890'), ('Amber', 490, '35.16140', '-97.88050'), ('Bradley', 182, '34.87730', '-97.70850'), ('Bridge Creek', 0, '35.23230', '-97.71980'), ('Chickasha', 15850, '35.04190', '-97.94380'), ('Cox City', 0, '34.72530', '-97.73170'), ('Laverty', 0, '34.98960', '-98.07550'), ('Middleberg', 0, '35.10600', '-97.73550'), ('Minco', 1672, '35.31340', '-97.94430'), ('Ninnekah', 994, '34.94650', '-97.92360'), ('Norge', 82, '34.98790', '-97.99570'), ('Pocasset', 192, '35.19450', '-97.95380'), ('Rush Springs', 1278, '34.78270', '-97.95620'), ('Tabler', 0, '35.04440', '-97.82130'), ('Tuttle', 4294, '35.29080', '-97.81280'), ('Verden', 659, '35.08370', '-98.08710')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ028': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Blanchard', 2816, '35.13800', '-97.65840'), ('Byars', 280, '34.87310', '-97.05180'), ('Cole', 473, '35.10280', '-97.57250'), ('Criner', 0, '34.97150', '-97.56480'), ('Dibble', 289, '35.03400', '-97.62800'), ('Goldsby', 1204, '35.14590', '-97.47700'), ('Newcastle', 5434, '35.24770', '-97.59940'), ('Payne', 0, '34.90620', '-97.53010'), ('Purcell', 5571, '35.01390', '-97.36620'), ('Rosedale', 66, '34.91870', '-97.18460'), ('Washington', 520, '35.05830', '-97.48350'), ('Wayne', 714, '34.91720', '-97.31580')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ029': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Etowah', 122, '35.13120', '-97.16870'), ('Lake Thunderbird', 0, '35.22800', '-97.23000'), ('Lexington', 2086, '35.01490', '-97.33530'), ('Moore', 41138, '35.33930', '-97.48780'), ('Noble', 5260, '35.13930', '-97.39450'), ('Norman', 95694, '35.21910', '-97.44190'), ('Slaughterville', 3609, '35.08720', '-97.33490'), ('Stanley Draper Lake', 0, '35.34590', '-97.35290'), ('Stella', 506132, '35.31900', '-97.21250')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ030': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Asher', 419, '34.98820', '-96.92440'), ('Aydelotte', 0, '35.43870', '-96.91050'), ('Bethel Acres', 2735, '35.30420', '-97.05390'), ('Brooksville', 90, '35.19730', '-96.96810'), ('Centerview', 0, '35.43370', '-96.66580'), ('Dale', 0, '35.38880', '-97.04530'), ('Earlsboro', 633, '35.26700', '-96.80350'), ('Harjo', 0, '35.21070', '-96.82530'), ('Johnson', 223, '35.40510', '-96.84260'), ('Macomb', 61, '35.14780', '-97.00810'), ('Maud', 1136, '35.13270', '-96.77850'), ('McLoud', 3548, '35.43550', '-97.09310'), ('Pink', 1165, '35.26060', '-97.11940'), ('Shawnee', 28692, '35.33280', '-96.92470'), ('St. Louis', 206, '35.07250', '-96.86170'), ('Tecumseh', 6098, '35.26050', '-96.93700'), ('Tribbey', 273, '35.11450', '-97.05530'), ('Trousdale', 0, '35.04130', '-97.03790'), ('Wanette', 402, '34.96260', '-97.03090')], 'partOfState': 'central', 'wfo': 'OUN'}, +'OKZ031': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bowlegs', 371, '35.14750', '-96.66930'), ('Cromwell', 265, '35.34170', '-96.45480'), ('Konawa', 1479, '34.95750', '-96.75380'), ('Lima', 74, '35.17330', '-96.59800'), ('Little', 0, '35.34680', '-96.67050'), ('Sasakwa', 150, '34.94660', '-96.52500'), ('Seminole', 6899, '35.22920', '-96.67800'), ('Wewoka', 3562, '35.15220', '-96.49360')], 'partOfState': 'east central', 'wfo': 'OUN'}, +'OKZ032': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Atwood', 113, '34.95720', '-96.33780'), ('Calvin', 279, '34.96740', '-96.25320'), ('Dustin', 452, '35.27120', '-96.03140'), ('Gerty', 101, '34.83600', '-96.28960'), ('Holdenville', 4732, '35.08480', '-96.39900'), ('Horntown', 61, '35.08700', '-96.24780'), ('Lamar', 172, '35.09790', '-96.12680'), ('Spaulding', 62, '35.01400', '-96.44000'), ('Stuart', 220, '34.90070', '-96.09980'), ('Wetumka', 1451, '35.23750', '-96.24120'), ('Yeager', 67, '35.15680', '-96.33960')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKZ033': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Gould', 206, '34.66910', '-99.77380'), ('Hollis', 2264, '34.68970', '-99.91540'), ('Madge', 0, '34.90050', '-99.95850'), ('McKnight', 0, '34.76620', '-99.91230'), ('McQueen', 0, '34.66670', '-99.70180'), ('Vinson', 0, '34.89940', '-99.85960')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ034': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Altus-Lugert Lake', 0, '34.93360', '-99.31410'), ('Brinkman', 0, '35.01060', '-99.51580'), ('Granite', 1844, '34.96290', '-99.37830'), ('Hester', 0, '34.80160', '-99.43170'), ('Mangum', 2924, '34.87880', '-99.50320'), ('Willow', 114, '35.05250', '-99.50920')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ035': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cooperton', 20, '34.86650', '-98.86780'), ('Gotebo', 272, '35.07110', '-98.87380'), ('Hobart', 3997, '35.02920', '-99.09610'), ('Lone Wolf', 500, '34.99010', '-99.24570'), ('Mountain Park', 390, '34.69850', '-98.95160'), ('Mountain View', 880, '35.09860', '-98.74780'), ('Roosevelt', 280, '34.84800', '-99.02200'), ('Snyder', 1509, '34.65980', '-98.95190'), ('Tom Steed Reservoir', 0, '34.76190', '-98.99280')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ036': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Altus', 21447, '34.64360', '-99.33300'), ('Altus Air Force Base', 0, '34.65800', '-99.28800'), ('Blair', 894, '34.77900', '-99.33300'), ('Duke', 341, '34.66280', '-99.56930'), ('Eldorado', 527, '34.47250', '-99.65020'), ('Elmer', 96, '34.48140', '-99.35230'), ('Friendship', 0, '34.69600', '-99.22900'), ('Headrick', 130, '34.62670', '-99.13710'), ('Hess', 0, '34.46450', '-99.27230'), ('Humphreys', 0, '34.55670', '-99.23860'), ('Martha', 205, '34.72650', '-99.38600'), ('Olustee', 680, '34.54790', '-99.42390'), ('Warren', 0, '34.78320', '-99.20960')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ037': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Davidson', 375, '34.24210', '-99.07820'), ('Frederick', 4637, '34.39190', '-99.01700'), ('Grandfield', 1110, '34.23120', '-98.68730'), ('Hollister', 60, '34.34160', '-98.87040'), ('Loveland', 14, '34.30420', '-98.77080'), ('Manitou', 278, '34.50680', '-98.98050'), ('Tipton', 916, '34.50130', '-99.13750')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ038': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cache', 2371, '34.62980', '-98.62670'), ('Chattanooga', 432, '34.42400', '-98.65470'), ('Elgin', 1210, '34.77860', '-98.29240'), ('Faxon', 134, '34.46040', '-98.57830'), ('Fletcher', 1022, '34.82450', '-98.24030'), ('Fort Sill', 0, '34.65860', '-98.40660'), ('Geronimo', 959, '34.48250', '-98.38330'), ('Indiahoma', 374, '34.62030', '-98.75180'), ('Lake Ellsworth', 0, '34.82610', '-98.35410'), ('Lake Lawtonka', 0, '34.75700', '-98.50520'), ('Lawton', 92757, '34.60670', '-98.39450'), ('Medicine Park', 373, '34.72920', '-98.50240'), ('Meers', 0, '34.78260', '-98.57830'), ('Sterling', 762, '34.75030', '-98.17060')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ039': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bray', 1035, '34.63790', '-97.81760'), ('Central High', 954, '34.60810', '-98.09280'), ('Comanche', 1556, '34.36870', '-97.96740'), ('Corum', 0, '34.36230', '-98.10430'), ('Duncan', 22505, '34.50190', '-97.95670'), ('Empire City', 734, '34.42020', '-98.03500'), ('Loco', 150, '34.32950', '-97.68020'), ('Marlow', 4416, '34.64770', '-97.95780'), ('Velma', 664, '34.45610', '-97.66590')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKZ040': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Antioch', 0, '34.72470', '-97.40550'), ('Elmore City', 756, '34.62330', '-97.39650'), ('Erin Springs', 114, '34.81070', '-97.60510'), ('Foster', 0, '34.61620', '-97.48750'), ('Hennepin', 0, '34.50990', '-97.34670'), ('Lindsay', 2889, '34.83580', '-97.60560'), ('Maysville', 1313, '34.81670', '-97.41020'), ('Paoli', 649, '34.82650', '-97.25980'), ('Pauls Valley', 6256, '34.74040', '-97.22160'), ('Pernell', 0, '34.56140', '-97.51050'), ('Stratford', 1474, '34.79510', '-96.96000'), ('Whitebead', 0, '34.76100', '-97.30050'), ('Wynnewood', 2367, '34.64430', '-97.16170')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKZ041': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Davis', 2610, '34.50340', '-97.11880'), ('Dougherty', 224, '34.39980', '-97.05110'), ('Hickory', 87, '34.55540', '-96.86190'), ('Lake Of The Arbuckles', 0, '34.43700', '-97.01970'), ('Scullin', 0, '34.52000', '-96.87000'), ('Sulphur', 4794, '34.50890', '-96.97410'), ('Turner Falls', 0, '34.42550', '-97.14780')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKZ042': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ada', 15691, '34.77450', '-96.67900'), ('Allen', 951, '34.87800', '-96.41290'), ('Byng', 1090, '34.86480', '-96.66500'), ('Fittstown', 0, '34.61410', '-96.63440'), ('Fitzhugh', 204, '34.66560', '-96.77460'), ('Francis', 332, '34.87490', '-96.59260'), ('Jesse', 0, '34.58000', '-96.53000'), ('Roff', 734, '34.62890', '-96.84110'), ('Stonewall', 465, '34.65200', '-96.52500'), ('Vanoss', 0, '34.76380', '-96.87110')], 'partOfState': 'east central', 'wfo': 'OUN'}, +'OKZ043': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Centrahoma', 110, '34.60920', '-96.34350'), ('Clarita', 0, '34.48520', '-96.43590'), ('Coalgate', 2005, '34.53800', '-96.21830'), ('Lehigh', 315, '34.46890', '-96.21740'), ('Olney', 0, '34.46980', '-96.35710'), ('Phillips', 150, '34.50590', '-96.21990'), ('Tupelo', 377, '34.60210', '-96.42020')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKZ044': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cookietown', 0, '34.27390', '-98.45290'), ('Devol', 150, '34.19470', '-98.58770'), ('Hulen', 0, '34.50470', '-98.22280'), ('Randlett', 511, '34.17770', '-98.46270'), ('Taylor', 0, '34.17340', '-98.33110'), ('Temple', 1146, '34.27350', '-98.23470'), ('Walters', 2657, '34.35470', '-98.30900')], 'partOfState': 'southwest', 'wfo': 'OUN'}, +'OKZ045': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Addington', 117, '34.24310', '-97.96630'), ('Cornish', 172, '34.15910', '-97.59670'), ('Grady', 0, '34.02050', '-97.66550'), ('Hastings', 155, '34.22510', '-98.10840'), ('Oscar', 0, '33.98400', '-97.75280'), ('Petersburg', 0, '33.95500', '-97.56970'), ('Ringling', 1135, '34.17670', '-97.59040'), ('Ryan', 894, '34.02160', '-97.95400'), ('Sugden', 59, '34.08120', '-97.97840'), ('Terral', 386, '33.89610', '-97.93870'), ('Waurika', 1988, '34.16690', '-97.99720'), ('Waurika Lake', 0, '34.28740', '-98.08360')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKZ046': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ardmore', 23711, '34.17440', '-97.13580'), ('Dickson', 1139, '34.18720', '-96.98590'), ('Fox', 0, '34.36340', '-97.49260'), ('Gene Autry', 99, '34.28480', '-97.03770'), ('Graham', 0, '34.33950', '-97.43540'), ('Healdton', 2786, '34.23350', '-97.48680'), ('Lone Grove', 4631, '34.17580', '-97.26190'), ('Milo', 0, '34.33260', '-97.33970'), ('Pooleville', 0, '34.42000', '-97.40000'), ('Ratliff City', 131, '34.44860', '-97.51200'), ('Springer', 577, '34.31340', '-97.13930'), ('Tatums', 172, '34.48280', '-97.46190'), ('Wilson', 1584, '34.16180', '-97.42560')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKZ047': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bromide', 163, '34.41780', '-96.49430'), ('Coleman', 0, '34.27000', '-96.42000'), ('Connerville', 0, '34.44700', '-96.63400'), ('Fillmore', 0, '34.27410', '-96.49620'), ('Mannsville', 587, '34.18740', '-96.88000'), ('Milburn', 312, '34.24090', '-96.55160'), ('Mill Creek', 336, '34.40260', '-96.82490'), ('Nida', 0, '34.14320', '-96.50120'), ('Pontotoc', 0, '34.48970', '-96.62530'), ('Ravia', 459, '34.24060', '-96.75570'), ('Reagan', 0, '34.35000', '-96.72000'), ('Russett', 0, '34.19010', '-96.80450'), ('Tishomingo', 3162, '34.23420', '-96.67630'), ('Wapanucka', 445, '34.37340', '-96.42440')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKZ048': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Atoka', 2988, '34.38460', '-96.12870'), ('Atoka Reservoir', 0, '34.50420', '-96.07500'), ('Bentley', 0, '34.21500', '-96.07570'), ('Boggy Depot State Park', 0, '34.32180', '-96.31110'), ('Caney', 199, '34.23290', '-96.21340'), ('Chockie', 0, '34.58030', '-95.99610'), ('Daisy', 0, '34.53590', '-95.74030'), ('Darwin', 0, '34.24780', '-95.77920'), ('Lane', 0, '34.29890', '-95.98800'), ('McGee Creek Lake', 0, '34.33840', '-95.88430'), ('Redden', 0, '34.50630', '-95.84600'), ('Stringtown', 366, '34.46530', '-96.05320'), ('Tushka', 345, '34.31950', '-96.16600'), ('Wardville', 54, '34.65550', '-96.03040')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKZ049': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Albion', 143, '34.66280', '-95.09970'), ('Antlers', 2552, '34.23110', '-95.62000'), ('Clayton', 719, '34.58940', '-95.35250'), ('Cloudy', 0, '34.30190', '-95.28080'), ('Corinne', 0, '34.18580', '-95.29110'), ('Dela', 0, '34.20030', '-95.52190'), ('Dunbar', 0, '34.45860', '-95.56030'), ('Eubanks', 0, '34.42190', '-95.58470'), ('Finley', 0, '34.32830', '-95.49470'), ('Kellond', 0, '34.26360', '-95.64000'), ('Kiamichi', 0, '34.63530', '-95.17860'), ('Kosoma', 0, '34.34830', '-95.61280'), ('Moyers', 0, '34.32610', '-95.65330'), ('Nashoba', 0, '34.48190', '-95.21500'), ('Oleta', 0, '34.19940', '-95.34360'), ('Rattan', 241, '34.20030', '-95.41280'), ('Sardis', 0, '34.66580', '-95.40940'), ('Snow', 0, '34.39580', '-95.41250'), ('Sobol', 0, '34.16110', '-95.23830'), ('Stanley', 0, '34.54000', '-95.46940'), ('Tuskahoma', 0, '34.61780', '-95.27640')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKZ050': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Burneyville', 0, '33.90800', '-97.30060'), ('Courtney', 0, '33.94030', '-97.50870'), ('Lake Murray', 0, '34.06770', '-97.08390'), ('Leon', 96, '33.87700', '-97.42950'), ('Marietta', 1445, '33.93700', '-97.11650'), ('Overbrook', 0, '34.06910', '-97.14330'), ('Rubottom', 0, '33.94030', '-97.45640'), ('Thackerville', 404, '33.79390', '-97.14340')], 'partOfState': 'southern', 'wfo': 'OUN'}, +'OKZ051': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Kingston', 1390, '34.00220', '-96.72170'), ('Lake Texoma', 0, '33.87140', '-96.70090'), ('Lebanon', 0, '33.98360', '-96.91020'), ('Little City', 0, '34.08620', '-96.61210'), ('Madill', 3410, '34.09150', '-96.77230'), ('McBride', 84, '33.93590', '-96.63600'), ('Oakland', 674, '34.10000', '-96.79310'), ('Willis', 0, '33.88770', '-96.83060'), ('Woodville', 69, '33.96860', '-96.65490')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKZ052': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Achille', 506, '33.83450', '-96.38990'), ('Albany', 0, '33.88120', '-96.16320'), ('Armstrong', 141, '34.05240', '-96.34390'), ('Bennington', 289, '34.00110', '-96.03840'), ('Blue', 0, '33.99690', '-96.22810'), ('Bokchito', 564, '34.01780', '-96.13930'), ('Caddo', 944, '34.12670', '-96.26340'), ('Calera', 1739, '33.93310', '-96.42760'), ('Cartwright', 0, '33.85290', '-96.56300'), ('Colbert', 1065, '33.85740', '-96.50420'), ('Durant', 13549, '33.99660', '-96.38550'), ('Hendrix', 79, '33.77470', '-96.40800'), ('Kemp', 144, '33.76900', '-96.35460'), ('Kenefic', 192, '34.14860', '-96.36030'), ('Mead', 123, '34.00070', '-96.51130'), ('Silo', 282, '34.03970', '-96.47530'), ('Utica', 0, '33.90180', '-96.22450'), ('Wade', 0, '33.88780', '-96.08130')], 'partOfState': 'southeast', 'wfo': 'OUN'}, +'OKZ053': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Apple', 0, '34.12750', '-95.41720'), ('Boswell', 703, '34.02720', '-95.86890'), ('Fallon', 0, '33.99780', '-95.41670'), ('Fort Towson', 611, '34.01860', '-95.26610'), ('Frogville', 0, '33.89750', '-95.31250'), ('Gay', 0, '33.95330', '-95.62110'), ('Goodland', 0, '33.98170', '-95.55500'), ('Grant', 0, '33.94310', '-95.51330'), ('Hugo', 5536, '34.01060', '-95.50940'), ('Huskey', 0, '33.94580', '-95.27810'), ('Kent', 0, '34.11310', '-95.62280'), ('Messer', 0, '34.08720', '-95.46920'), ('Ord', 0, '33.91000', '-95.49920'), ('Sawyer', 274, '34.01360', '-95.37140'), ('Soper', 300, '34.03280', '-95.69690'), ('Speer', 0, '34.11330', '-95.55560'), ('Swink', 83, '34.01780', '-95.20190'), ('Unger', 0, '34.02610', '-95.78170')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKZ054': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Apperson', 0, '36.75110', '-96.76580'), ('Avant', 372, '36.48940', '-96.06190'), ('Barnsdall', 1325, '36.56190', '-96.16140'), ('Bigheart', 0, '36.85170', '-96.22560'), ('Burbank', 155, '36.69500', '-96.73170'), ('Fairfax', 1555, '36.57360', '-96.70390'), ('Foraker', 23, '36.87220', '-96.56530'), ('Grainola', 31, '36.93720', '-96.65030'), ('Hominy', 2584, '36.41420', '-96.39500'), ('Hulah', 0, '36.92860', '-96.03500'), ('Nelagoney', 0, '36.62640', '-96.24190'), ('Okesa', 0, '36.71280', '-96.13440'), ('Osage', 188, '36.29280', '-96.41560'), ('Pawhuska', 3629, '36.66780', '-96.33690'), ('Pearsonia', 0, '36.80170', '-96.45060'), ('Pershing', 0, '36.59330', '-96.27500'), ('Shidler', 520, '36.78190', '-96.66080'), ('Tallant', 0, '36.59750', '-96.19030'), ('Webb City', 95, '36.80690', '-96.70830'), ('Wolco', 0, '36.53830', '-96.07110'), ('Wynona', 531, '36.54610', '-96.32690')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ055': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bartlesville', 34748, '36.74720', '-95.98060'), ('Copan', 796, '36.89750', '-95.92580'), ('Dewey', 3179, '36.79580', '-95.93530'), ('Ochelata', 494, '36.60000', '-95.97940'), ('Ramona', 564, '36.53030', '-95.92330'), ('Vera', 188, '36.44920', '-95.88060')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ056': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Delaware', 456, '36.77860', '-95.63920'), ('Lenapah', 298, '36.85060', '-95.63580'), ('New Alluwe', 84, '36.60940', '-95.48890'), ('Nowata', 3971, '36.70060', '-95.63780'), ('Wann', 132, '36.91530', '-95.80420'), ('Watova', 0, '36.61720', '-95.65560')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ057': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Big Cabin', 293, '36.53780', '-95.22110'), ('Bluejacket', 274, '36.79970', '-95.07080'), ('Centrailia', 0, '36.80000', '-95.33300'), ('Centralia', 0, '36.79670', '-95.35310'), ('Hollow', 0, '36.88750', '-95.26970'), ('Ketchum', 286, '36.52440', '-95.02360'), ('Pyramid Corners', 0, '36.80170', '-95.14310'), ('Vinita', 6472, '36.63860', '-95.15390'), ('Welch', 597, '36.87360', '-95.09560'), ('White Oak', 0, '36.62030', '-95.26390')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ058': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Afton', 1118, '36.69360', '-94.96280'), ('Cardin', 150, '36.97250', '-94.84860'), ('Commerce', 2645, '36.93330', '-94.87280'), ('Fairland', 1025, '36.75110', '-94.84720'), ('Miami', 13704, '36.87440', '-94.87720'), ('Narcissa', 100, '36.80110', '-94.92670'), ('Ottawa', 0, '36.85670', '-94.78750'), ('Peoria', 141, '36.91530', '-94.66970'), ('Picher', 1640, '36.98690', '-94.83060'), ('Quapaw', 984, '36.95440', '-94.78780'), ('Wyandotte', 363, '36.79330', '-94.72500')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ059': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Blackburn', 102, '36.37310', '-96.59580'), ('Cleveland', 3282, '36.31000', '-96.46390'), ('Hallett', 168, '36.23390', '-96.56720'), ('Jennings', 373, '36.18110', '-96.56940'), ('Maramec', 104, '36.24190', '-96.68000'), ('Pawnee', 2230, '36.33780', '-96.80360'), ('Quay', 47, '36.16010', '-96.70970'), ('Ralston', 355, '36.50390', '-96.73190'), ('Skedee', 102, '36.37940', '-96.70470'), ('Terlton', 85, '36.18810', '-96.49000'), ('Westport', 264, '36.21890', '-96.32440')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ060': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bixby', 13336, '35.94190', '-95.88310'), ('Broken Arrow', 74859, '36.05250', '-95.79060'), ('Collinsville', 4077, '36.36440', '-95.83860'), ('Glenpool', 8123, '35.95530', '-96.00860'), ('Gray', 15346, '36.13030', '-96.08030'), ('Jenks', 9557, '36.02280', '-95.96810'), ('Leonard', 0, '35.92030', '-95.79920'), ('Liberty', 155, '35.85860', '-95.97720'), ('Owasso', 18502, '36.26940', '-95.85440'), ('Sand Springs', 17451, '36.13970', '-96.10860'), ('Skiatook', 5396, '36.36830', '-96.00110'), ('Sperry', 981, '36.29720', '-95.99110'), ('Tulsa', 393049, '36.13390', '-95.92250')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ061': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bushyhead', 1203, '36.46140', '-95.49390'), ('Catoosa', 5449, '36.18890', '-95.74560'), ('Chelsea', 2136, '36.53560', '-95.43220'), ('Claremore', 15873, '36.31250', '-95.61580'), ('Foyil', 234, '36.43470', '-95.51920'), ('Inola', 1589, '36.15110', '-95.50920'), ('Oologah', 944, '36.44690', '-95.70810'), ('Talala', 270, '36.52970', '-95.70110'), ('Tiawah', 166, '36.26110', '-95.56060'), ('Verdigris', 0, '36.23470', '-95.69080')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ062': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Adair', 704, '36.43670', '-95.27110'), ('Chouteau', 1931, '36.18580', '-95.34280'), ('Disney', 226, '36.48110', '-95.01470'), ('Langley', 669, '36.46390', '-95.04750'), ('Locust Grove', 1366, '36.20000', '-95.16750'), ('Mazie', 88, '36.10750', '-95.36310'), ('Murphy', 231, '36.14690', '-95.24440'), ('Pensacola', 71, '36.45500', '-95.13030'), ('Pryor', 8708, '36.30830', '-95.31670'), ('Rose', 0, '36.21940', '-95.02940'), ('Salina', 1422, '36.29280', '-95.15310'), ('Spavinaw', 563, '36.39110', '-95.04640'), ('Strang', 100, '36.41060', '-95.13060')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ063': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bernice', 504, '36.61580', '-94.91750'), ('Chloeta', 0, '36.42310', '-94.97060'), ('Cleora', 1113, '36.57890', '-94.97080'), ('Colcord', 819, '36.26420', '-94.69280'), ('Grove', 5131, '36.59360', '-94.76890'), ('Jay', 2482, '36.42110', '-94.79670'), ('Kansas', 685, '36.20500', '-94.79750'), ('Leach', 220, '36.20470', '-94.92220'), ('Oaks', 412, '36.16610', '-94.85440'), ('Tiff City', 855, '36.66820', '-94.61880'), ('Twin Oaks', 186, '36.20530', '-94.85110'), ('West Siloam Spring', 877, '36.17610', '-94.57470'), ('Zena', 123, '36.49610', '-94.85330')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ064': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bristow', 4325, '35.83060', '-96.39080'), ('Depew', 564, '35.80280', '-96.50580'), ('Drumright', 2905, '35.98830', '-96.60080'), ('Kellyville', 906, '35.94360', '-96.21330'), ('Kiefer', 1026, '35.94470', '-96.06500'), ('Mannford', 2095, '36.13330', '-96.35420'), ('Milfay', 0, '35.75500', '-96.56560'), ('Mounds', 1153, '35.87640', '-96.06080'), ('Oilton', 1099, '36.08440', '-96.58330'), ('Sapulpa', 19166, '35.99860', '-96.11390'), ('Shamrock', 125, '35.91000', '-96.58360'), ('Silver City', 0, '36.09030', '-96.49420'), ('Slick', 148, '35.77690', '-96.26580')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ065': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bearden', 140, '35.34810', '-96.38830'), ('Boley', 1126, '35.49330', '-96.48330'), ('Castle', 122, '35.47440', '-96.38190'), ('Clearview', 56, '35.39690', '-96.18610'), ('Mason', 0, '35.56610', '-96.35190'), ('Okemah', 3038, '35.43250', '-96.30470'), ('Okfuskee', 0, '35.59530', '-96.22810'), ('Paden', 446, '35.50780', '-96.56720'), ('Pharoah', 0, '35.42030', '-96.12280'), ('Weleetka', 1014, '35.33560', '-96.13610'), ('Welty', 0, '35.62440', '-96.40500')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKZ066': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bald Hill', 0, '35.74030', '-95.83690'), ('Beggs', 1364, '35.74250', '-96.07000'), ('Bryant', 0, '35.39060', '-96.06440'), ('Dewar', 919, '35.45810', '-95.94110'), ('Eram', 0, '35.61690', '-95.75470'), ('Grayson', 134, '35.50310', '-95.87250'), ('Hectorville', 0, '35.84190', '-95.92500'), ('Henryetta', 6096, '35.43970', '-95.98170'), ('Hoffman', 148, '35.48920', '-95.84250'), ('Morris', 1294, '35.60750', '-95.86000'), ('Okmulgee', 13022, '35.62330', '-95.96030'), ('Preston', 0, '35.71140', '-95.99140'), ('Schulter', 600, '35.51440', '-95.95640'), ('Wilson', 5872, '35.50750', '-96.03440')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ067': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Choska', 0, '35.83000', '-95.62000'), ('Coweta', 7139, '35.95170', '-95.65060'), ('Okay', 597, '35.85060', '-95.31810'), ('Oneta', 74859, '36.01890', '-95.70780'), ('Porter', 574, '35.87080', '-95.52220'), ('Redbird', 166, '35.88670', '-95.58790'), ('Stonebluff', 0, '35.88580', '-95.73670'), ('Tullahassee', 106, '35.83470', '-95.43750'), ('Wagoner', 7669, '35.95940', '-95.36920')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ068': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Cookson', 0, '35.71080', '-94.91970'), ('Eldon', 991, '35.92810', '-94.84000'), ('Hulbert', 543, '35.93250', '-95.14110'), ('Lost City', 809, '35.98780', '-95.13610'), ('Peggs', 0, '36.08080', '-95.09920'), ('Pumpkin Center', 308, '35.71280', '-95.12690'), ('Scraper', 475, '36.08940', '-94.85030'), ('Tahlequah', 14458, '35.91530', '-94.96970')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKZ069': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Ballard', 0, '36.09440', '-94.58920'), ('Baron', 0, '35.92360', '-94.61610'), ('Bunch', 0, '35.68250', '-94.76080'), ('Christie', 166, '35.95810', '-94.69000'), ('Marietta', 2663, '35.84330', '-94.65780'), ('Proctor', 0, '35.96610', '-94.77720'), ('Stilwell', 3276, '35.81440', '-94.62830'), ('Watts', 316, '36.10920', '-94.57000'), ('Westville', 1596, '35.99250', '-94.56780')], 'partOfState': 'northeast', 'wfo': 'TSA'}, +'OKZ070': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Boynton', 274, '35.64860', '-95.65580'), ('Braggs', 301, '35.66330', '-95.19780'), ('Briartown', 0, '35.29720', '-95.23940'), ('Council Hill', 129, '35.55560', '-95.65110'), ('Fort Gibson', 4054, '35.79750', '-95.25030'), ('Haskell', 1765, '35.82030', '-95.67390'), ('Jamesville', 0, '35.75500', '-95.64030'), ('Keefeton', 0, '35.58970', '-95.33910'), ('Muskogee', 38310, '35.74780', '-95.36940'), ('Oktaha', 327, '35.57640', '-95.47470'), ('Porum', 725, '35.35610', '-95.26530'), ('Summit', 226, '35.66580', '-95.42250'), ('Taft', 349, '35.76170', '-95.54610'), ('Wainwright', 197, '35.61250', '-95.56420'), ('Warner', 1430, '35.49420', '-95.30530'), ('Webbers Falls', 726, '35.51080', '-95.12970')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKZ071': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Checotah', 3481, '35.47000', '-95.52280'), ('Eufaula', 2639, '35.28720', '-95.58220'), ('Hanna', 133, '35.20500', '-95.89000'), ('Hitchita', 113, '35.51970', '-95.75110'), ('Onapa', 2083, '35.40580', '-95.55310'), ('Pierce', 0, '35.43470', '-95.71610'), ('Raiford', 0, '35.26780', '-95.78670'), ('Rentiesville', 102, '35.52140', '-95.49470'), ('Stidham', 23, '35.36860', '-95.69940'), ('Vernon', 0, '35.21560', '-95.92560'), ('Vivian', 0, '35.28970', '-95.71610')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKZ072': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Box', 0, '35.58110', '-94.97610'), ('Brushy', 787, '35.55690', '-94.72530'), ('Cottonwood', 2481, '35.36830', '-94.54890'), ('Gans', 208, '35.38890', '-94.69190'), ('Gore', 850, '35.52920', '-95.11690'), ('Marble City', 242, '35.58030', '-94.82080'), ('Mc Key', 135, '35.48000', '-94.88000'), ('Moffett', 179, '35.39030', '-94.44670'), ('Muldrow', 3104, '35.40610', '-94.59860'), ('Roland', 2842, '35.42110', '-94.51440'), ('Sallisaw', 7989, '35.46030', '-94.78720'), ('Short', 0, '35.57140', '-94.49110'), ('Vian', 1362, '35.49830', '-94.96940')], 'partOfState': 'east central', 'wfo': 'TSA'}, +'OKZ073': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Alderson', 261, '34.90000', '-95.69170'), ('Arpelar', 0, '34.94190', '-95.96530'), ('Ashland', 53, '34.76780', '-96.06940'), ('Bache', 0, '34.89420', '-95.64830'), ('Blanco', 0, '34.75110', '-95.77420'), ('Blocker', 0, '35.06140', '-95.56810'), ('Canadian', 239, '35.17720', '-95.65500'), ('Crowder', 436, '35.12390', '-95.66970'), ('Dow', 0, '34.87670', '-95.60000'), ('Featherston', 0, '35.07860', '-95.48970'), ('Haileyville', 891, '34.85440', '-95.58190'), ('Hartshorne', 2102, '34.84500', '-95.55720'), ('Haywood', 0, '34.88720', '-95.94810'), ('Indianola', 191, '35.16280', '-95.77440'), ('Kiowa', 693, '34.72060', '-95.89890'), ('Krebs', 2051, '34.92780', '-95.71560'), ('McAlester', 17783, '34.93330', '-95.76940'), ('Pittsburg', 280, '34.71310', '-95.84970'), ('Quinton', 1071, '35.12280', '-95.37080'), ('Savanna', 730, '34.82890', '-95.84360'), ('Scipio', 0, '35.05470', '-95.95640')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKZ074': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Enterprise', 0, '35.22970', '-95.37970'), ('Kanima', 0, '35.28000', '-95.02000'), ('Keota', 517, '35.25560', '-94.92140'), ('Kinta', 243, '35.11920', '-95.23750'), ('Lequire', 0, '35.10440', '-95.10720'), ('Lewisville', 0, '35.12000', '-95.27670'), ('McCurtain', 466, '35.14970', '-94.97050'), ('Mc Curtain', 466, '35.15000', '-94.97000'), ('Stigler', 2731, '35.25360', '-95.12280'), ('Tamaha', 198, '35.39610', '-94.98330'), ('Whitefield', 231, '35.25250', '-95.23720')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKZ075': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Bengal', 0, '34.83280', '-95.06170'), ('Damon', 0, '34.85500', '-95.30750'), ('Gowen', 0, '34.88140', '-95.47670'), ('Higgins', 0, '34.81140', '-95.43330'), ('Panola', 0, '34.92860', '-95.21310'), ('Red Oak', 581, '34.95080', '-95.08000'), ('Wilburton', 2972, '34.91860', '-95.30890'), ('Yanush', 0, '34.70970', '-95.31360')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKZ076': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('Arkoma', 2180, '35.35440', '-94.44390'), ('Big Cedar', 0, '34.64580', '-94.64860'), ('Bokoshe', 450, '35.18640', '-94.78560'), ('Braden', 0, '35.28420', '-94.50110'), ('Cameron', 312, '35.13390', '-94.53440'), ('Cowlington', 133, '35.27530', '-94.72830'), ('Fanshawe', 384, '34.95080', '-94.90810'), ('Heavener', 3201, '34.88920', '-94.60060'), ('Hodgen', 0, '34.84170', '-94.63110'), ('Honobia', 0, '34.53890', '-94.93720'), ('Howe', 697, '34.95110', '-94.63690'), ('Milton', 0, '35.16170', '-94.86330'), ('Muse', 0, '34.67190', '-94.76250'), ('Octavia', 0, '34.52670', '-94.70280'), ('Panama', 1362, '35.16720', '-94.67220'), ('Pocola', 3994, '35.23110', '-94.47780'), ('Poteau', 7939, '35.05360', '-94.62330'), ('Rock Island', 709, '35.18220', '-94.47360'), ('Scullyville', 0, '35.25000', '-94.57000'), ('Shady Point', 848, '35.13000', '-94.65830'), ('Spiro', 2227, '35.24110', '-94.61970'), ('Summerfield', 0, '34.89860', '-94.86580'), ('Talihina', 1211, '34.75140', '-95.04780'), ('Whitesboro', 0, '34.69250', '-94.88500'), ('Wister', 1002, '34.96720', '-94.72440')], 'partOfState': 'southeast', 'wfo': 'TSA'}, +'OKZ077': {'fullStateName': 'Oklahoma', 'state': 'OK', 'cities': [('America', 0, '33.82000', '-94.55000'), ('Battiest', 0, '34.40000', '-94.93000'), ('Bethel', 0, '34.35000', '-94.85000'), ('Bokhoma', 0, '33.82000', '-94.58000'), ('Broken Bow', 4230, '34.02570', '-94.73630'), ('Eagletown', 0, '34.03000', '-94.57000'), ('Garvin', 143, '33.95480', '-94.94130'), ('Glover', 0, '34.07000', '-94.90000'), ('Harris', 0, '33.75000', '-94.73000'), ('Haworth', 354, '33.84420', '-94.65480'), ('Hochatown', 0, '34.20000', '-94.67000'), ('Idabel', 6952, '33.90200', '-94.81880'), ('Millerton', 359, '33.98470', '-95.01510'), ('Pickens', 0, '34.40000', '-95.03000'), ('Ringold', 0, '34.21700', '-95.13000'), ('Rufe', 0, '34.12000', '-95.15000'), ('Smithville', 123, '34.46810', '-94.64610'), ('Tom', 0, '33.73000', '-94.57000'), ('Valliant', 771, '34.00490', '-95.08970'), ('Watson', 0, '34.43000', '-94.55000'), ('Wright City', 848, '34.06370', '-95.00740')], 'partOfState': 'southeast', 'wfo': 'SHV'}, +'ORZ001': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Arch Cape', 0, '45.81660', '-123.95500'), ('Astoria', 9813, '46.18800', '-123.82050'), ('Bay City', 1149, '45.52120', '-123.88500'), ('Beaver', 145, '45.28300', '-123.83300'), ('Camp Rilea', 4096, '46.14000', '-123.95000'), ('Cannon Beach', 0, '45.88850', '-123.95500'), ('Cape Lookout', 4352, '45.34000', '-123.99000'), ('Cape Meares', 110, '45.48500', '-123.97500'), ('Cascade Head', 7437, '45.05000', '-124.00400'), ('Cloverdale', 242, '45.21660', '-123.90000'), ('Garibaldi', 899, '45.56050', '-123.91020'), ('Gearhart', 995, '46.02500', '-123.91750'), ('Hammond', 589, '46.19810', '-123.94680'), ('Hebo', 231, '45.23330', '-123.85000'), ('Knappa', 508, '46.18300', '-123.58300'), ('Manzanita', 564, '45.71730', '-123.93360'), ('Mohler', 391, '45.70000', '-123.86660'), ('Nehalem', 203, '45.72110', '-123.89150'), ('Neskowin', 169, '45.10000', '-123.98330'), ('Netarts', 744, '45.43300', '-123.93700'), ('Oceanside', 326, '45.46660', '-123.96660'), ('Olney', 9813, '46.10000', '-123.75000'), ('Pacific City', 1027, '45.20000', '-123.96000'), ('Pleasant Valley', 4352, '45.36660', '-123.81000'), ('Puget Island', 565, '46.17000', '-123.38000'), ('Rockaway Beach', 1267, '45.61500', '-123.93830'), ('Sandlake', 0, '45.30330', '-123.92220'), ('Seaside', 5900, '45.99020', '-123.92010'), ('Svenson', 9813, '46.16660', '-123.66660'), ('Tillamook', 4352, '45.45670', '-123.83760'), ('Tillamook Head', 1221, '45.94000', '-123.99000'), ('Warrenton', 4096, '46.17030', '-123.92090'), ('Westport', 508, '46.13300', '-123.36700'), ('Wheeler', 391, '45.68700', '-123.88410')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ002': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Cape Foulweather', 1174, '44.78000', '-124.07000'), ('Cushman', 7263, '43.98330', '-124.05000'), ('Depoe Bay', 1174, '44.81010', '-124.05830'), ('Dunes City', 1241, '43.90810', '-124.09510'), ('Florence', 7263, '43.98640', '-124.10310'), ('Gleneden Beach', 2078, '44.88330', '-124.03330'), ('Heceta Beach', 7263, '44.03000', '-124.13000'), ('Kernville', 2078, '44.90000', '-124.00000'), ('Lincoln Beach', 2078, '44.85000', '-124.04400'), ('Lincoln City', 7437, '44.97260', '-124.00720'), ('Newport', 9532, '44.63000', '-124.05390'), ('Ona', 2050, '44.51000', '-124.00000'), ('Otis', 1708, '45.01700', '-123.93300'), ('Seal Rock', 2050, '44.50000', '-124.07660'), ('Siletz', 1133, '44.72210', '-123.91650'), ('Siltcoos', 1241, '43.88330', '-124.06660'), ('South Beach', 9532, '44.61660', '-124.05000'), ('Toledo', 3472, '44.62090', '-123.93250'), ('Waldport', 2050, '44.42140', '-124.06410'), ('Yachats', 617, '44.31270', '-124.10050'), ('Yaquina Head', 9532, '44.67500', '-124.07200')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORZ003': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Apiary', 1687, '46.01660', '-123.03330'), ('Birkenfeld', 1528, '46.00000', '-123.33330'), ('Blaine', 4352, '45.28330', '-123.71660'), ('Buxton', 1286, '45.68330', '-123.20000'), ('Elsie', 203, '45.86700', '-123.60000'), ('Foss', 391, '45.70000', '-123.75000'), ('Glenwood', 1286, '45.65000', '-123.26700'), ('Grande Ronde Indian Reservation', 1844, '45.15000', '-123.63000'), ('Hamlet', 203, '45.83000', '-123.68000'), ('Jewell', 508, '45.93300', '-123.50000'), ('Klaskanine Summit', 9813, '46.05000', '-123.66000'), ('Lees Camp', 4352, '45.60000', '-123.51700'), ('Manning', 1286, '45.66660', '-123.16660'), ('Mist', 1528, '46.00000', '-123.25000'), ('Necanicum', 5900, '45.90000', '-123.76000'), ('Pittsburg', 2228, '45.90000', '-123.16000'), ('Saddle Mountain', 5900, '45.97000', '-123.69000'), ('Salmonberry', 391, '45.75000', '-123.65000'), ('Spitzenberg', 4976, '45.82000', '-122.94000'), ('Sunset Summit', 2228, '45.80000', '-123.46000'), ('Timber', 2228, '45.71660', '-123.30000'), ('Trask', 4352, '45.42000', '-123.64000'), ('Vernonia', 2228, '45.86050', '-123.18520'), ('Willamina', 1844, '45.07910', '-123.48350'), ('Wilson River Summit', 1286, '45.62000', '-123.38000')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ004': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Alma', 2755, '43.88000', '-123.48000'), ('Alsea', 3838, '44.40000', '-123.56700'), ('Blachly', 2755, '44.20000', '-123.53300'), ('Blodgett', 3838, '44.60000', '-123.51670'), ('Burnt Woods', 3838, '44.60000', '-123.61660'), ('Chitwood', 3472, '44.65000', '-123.81660'), ('Crow', 2755, '43.99000', '-123.33000'), ('Deadwood', 7263, '44.10000', '-123.75000'), ('Eddyville', 3472, '44.63330', '-123.76660'), ('Elk City', 3472, '44.61660', '-123.86660'), ('Grande Ronde', 1844, '45.06300', '-123.61700'), ('Greenleaf', 2755, '44.11660', '-123.66660'), ('Harlan', 3472, '44.53330', '-123.68330'), ('Horton', 607, '44.21660', '-123.48330'), ('Logsden', 1133, '44.73330', '-123.78330'), ('Lorane', 1021, '43.83330', '-123.24000'), ('Mapleton', 7263, '44.03300', '-123.86700'), ('Noti', 2755, '44.05000', '-123.45000'), ('Rose Lodge', 1708, '45.02210', '-123.87970'), ('Summit', 3838, '44.63330', '-123.56670'), ('Swisshome', 7263, '44.05000', '-123.80000'), ('Tidewater', 2050, '44.41660', '-123.90000'), ('Tiernan', 7263, '44.01660', '-123.93330'), ('Triangle Lake', 2755, '44.17000', '-123.58000'), ('Valsetz', 966, '44.83300', '-123.63300'), ('Vaughn', 2755, '44.02000', '-123.43330'), ('Veneta', 2755, '44.04830', '-123.35230'), ('Walton', 2755, '44.03300', '-123.58000')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORZ005': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Alston', 3163, '46.10000', '-123.06000'), ('Clatskanie', 1528, '46.10370', '-123.20500'), ('Columbia City', 1571, '45.89740', '-122.81080'), ('Goble', 72, '46.01660', '-122.88330'), ('Mayger', 3163, '46.16660', '-123.10000'), ('Prescott', 72, '46.04730', '-122.88580'), ('Quincy', 1528, '46.15000', '-123.16660'), ('Rainier', 1687, '46.09230', '-122.94640'), ('St. Helens', 10019, '45.86060', '-122.81100'), ('Warren', 10019, '45.81660', '-122.85000')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ006': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Aloha', 41741, '45.49210', '-122.87180'), ('Banks', 1286, '45.61540', '-123.11000'), ('Beaverton', 76129, '45.47550', '-122.81660'), ('Boring', 90205, '45.43300', '-122.38300'), ('Canby', 12790, '45.26650', '-122.69170'), ('Cedar Hills', 8949, '45.50370', '-122.80560'), ('Cherry Grove', 600, '45.45000', '-123.25000'), ('Clackamas', 5177, '45.40860', '-122.55250'), ('Cornelius', 9652, '45.51890', '-123.05410'), ('Damascus', 4519, '45.41660', '-122.46660'), ('Delta Park', 46380, '45.61000', '-122.68000'), ('Dilley', 17708, '45.48330', '-123.11660'), ('Durham', 1382, '45.39470', '-122.75750'), ('Eagle Creek', 2371, '45.36660', '-122.36660'), ('Fairview', 7561, '45.54000', '-122.44000'), ('Farmington', 70186, '45.45000', '-122.95000'), ('Forest Grove', 17708, '45.52230', '-123.10440'), ('Gales Creek', 1286, '45.58330', '-123.21660'), ('Gaston', 600, '45.43560', '-123.14080'), ('Gladstone', 11438, '45.38580', '-122.59150'), ('Government Island', 6996, '45.58500', '-122.53000'), ('Gresham', 90205, '45.50380', '-122.43820'), ('Happy Valley', 4519, '45.44380', '-122.53580'), ('Hillsboro', 70186, '45.52770', '-122.93910'), ('Jantzen Beach', 46380, '45.62000', '-122.68000'), ('Johnson City', 634, '45.40440', '-122.57790'), ('King City', 1949, '45.40540', '-122.80160'), ('Lake Oswego', 35278, '45.41220', '-122.69810'), ('Lloyd Center', 529121, '45.53000', '-122.66000'), ('Milwaukie', 20490, '45.44420', '-122.61970'), ('Mt Tabor', 781, '45.51000', '-122.59000'), ('North Plains', 1605, '45.59670', '-122.99880'), ('Oak Grove', 12576, '45.41350', '-122.63770'), ('Oregon City', 25754, '45.34490', '-122.59680'), ('Parkrose', 781, '45.55500', '-122.54250'), ('Portland Airport', 4423, '45.59000', '-122.60000'), ('Portland Downtown', 529121, '45.52000', '-122.68000'), ('Powellhurst', 28756, '45.49610', '-122.51510'), ('Raleigh Hills', 5865, '45.48490', '-122.75430'), ('Rockcreek', 9404, '45.55030', '-122.87590'), ('Rockwood', 11480, '45.52000', '-122.49000'), ('Rocky Butte', 781, '45.54000', '-122.57000'), ('Sauvie Island', 3109, '45.67000', '-122.80000'), ('Scappoose', 4976, '45.75160', '-122.88050'), ('Scholls', 18064, '45.40000', '-122.95000'), ('Sellwood', 20490, '45.46000', '-122.66000'), ('Sherwood', 11791, '45.35990', '-122.84190'), ('St. Johns', 9697, '45.59000', '-122.75000'), ('Sunnyside', 6791, '45.43220', '-122.55580'), ('Swan Island', 529121, '45.56000', '-122.71000'), ('Sylvan', 5865, '45.51000', '-122.73000'), ('The Oregon Zoo', 5865, '45.51000', '-122.71000'), ('Tigard', 41223, '45.42500', '-122.77390'), ('Troutdale', 13777, '45.53690', '-122.39080'), ('Tualatin', 22791, '45.37630', '-122.77170'), ('University Of Portland', 6009, '45.57000', '-122.73000'), ('West Linn', 22261, '45.36850', '-122.63820'), ('Wilshire Park', 529121, '45.55000', '-122.63000'), ('Wilsonville', 13991, '45.30910', '-122.76630'), ('Wood Village', 2860, '45.53350', '-122.42030')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ007': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Amity', 1478, '45.11570', '-123.20310'), ('Aumsville', 3003, '44.84570', '-122.86810'), ('Aurora', 655, '45.22830', '-122.75560'), ('Barlow', 140, '45.25240', '-122.72010'), ('Brooks', 410, '45.05000', '-122.96700'), ('Buell', 1844, '45.01660', '-123.43330'), ('Buena Vista', 6035, '44.76660', '-123.15000'), ('Carlton', 1514, '45.29500', '-123.17500'), ('Colton', 5647, '45.18330', '-122.45000'), ('Dallas', 12459, '44.92130', '-123.31230'), ('Dayton', 2119, '45.22050', '-123.07660'), ('Donald', 608, '45.22300', '-122.83770'), ('Dundee', 2598, '45.27650', '-123.00590'), ('Falls City', 966, '44.86560', '-123.43670'), ('Gervais', 2009, '45.10850', '-122.89480'), ('Hubbard', 2483, '45.18130', '-122.80580'), ('Independence', 6035, '44.85530', '-123.19250'), ('Jefferson', 2487, '44.71800', '-123.00530'), ('Keizer', 32203, '45.00400', '-123.02120'), ('Lafayette', 2586, '45.24610', '-123.11040'), ('Marion', 274, '44.75000', '-122.93300'), ('Marquam', 312, '45.06700', '-122.70000'), ('McMinnville', 26499, '45.21120', '-123.19020'), ('Molalla', 5647, '45.14970', '-122.57800'), ('Monitor', 3121, '45.10000', '-122.76660'), ('Monmouth', 7741, '44.85040', '-123.22880'), ('Mount Angel', 3121, '45.06930', '-122.79430'), ('Mulino', 5647, '45.21700', '-122.58300'), ('Newberg', 18064, '45.30100', '-122.97000'), ('Perrydale', 1478, '45.03330', '-123.26660'), ('Pike', 794, '45.38330', '-123.26660'), ('Rickreall', 57, '44.93330', '-123.23330'), ('Salem', 136924, '44.92450', '-123.02210'), ('Scotts Mills', 312, '45.04090', '-122.66810'), ('Sheridan', 3570, '45.09540', '-123.39510'), ('Silverton', 7414, '45.00770', '-122.78070'), ('Stayton', 6816, '44.80180', '-122.79620'), ('St. Paul', 354, '45.21300', '-122.97550'), ('Sublimity', 2148, '44.82920', '-122.79170'), ('Turner', 1199, '44.84610', '-122.95150'), ('Unionvale', 2119, '45.15000', '-123.06660'), ('West Salem', 136924, '44.96000', '-123.05000'), ('Wheatland', 32203, '45.08000', '-123.05000'), ('Whiteson', 1478, '45.15000', '-123.20000'), ('Woodburn', 20100, '45.14840', '-122.85580'), ('Yamhill', 794, '45.34130', '-123.18440')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ008': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adair Village', 536, '44.67430', '-123.21770'), ('Albany', 40852, '44.61700', '-123.09130'), ('Brownsville', 1449, '44.39300', '-122.98190'), ('Cheshire', 4721, '44.18330', '-123.28330'), ('Coburg', 969, '44.13810', '-123.05980'), ('Corvallis', 49322, '44.57100', '-123.27600'), ('Crabtree', 695, '44.63330', '-122.88330'), ('Eugene', 137893, '44.05300', '-123.11220'), ('Eugene Airport', 12834, '44.12000', '-123.22000'), ('Fern Ridge Reservoir', 2755, '44.08000', '-123.29000'), ('Goshen', 3579, '43.98330', '-123.00000'), ('Greenberry', 49322, '44.45000', '-123.27000'), ('Halsey', 724, '44.38310', '-123.10810'), ('Harrisburg', 2795, '44.26850', '-123.16500'), ('Hoskins', 3838, '44.68300', '-123.45000'), ('Junction City', 4721, '44.21790', '-123.20390'), ('Kings Valley', 966, '44.70000', '-123.41700'), ('Lacomb', 239, '44.58330', '-122.73330'), ('Lebanon', 12950, '44.53490', '-122.90440'), ('Lewisburg', 536, '44.63330', '-123.23330'), ('Millersburg', 651, '44.68070', '-123.07060'), ('Monroe', 607, '44.31680', '-123.29850'), ('North Albany', 4325, '44.66170', '-123.11360'), ('Peoria', 724, '44.45000', '-123.20000'), ('Philomath', 3838, '44.54050', '-123.35710'), ('Santa Clara', 12834, '44.11450', '-123.13190'), ('Scio', 695, '44.70540', '-122.84850'), ('Shedd', 724, '44.46660', '-123.11660'), ('Sodaville', 290, '44.48390', '-122.86740'), ('Springfield', 52864, '44.05290', '-122.97710'), ('Tangent', 933, '44.55120', '-123.10790'), ('Waterloo', 239, '44.49530', '-122.82160'), ('Wren', 3838, '44.59000', '-123.42000')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORZ010': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bull Run', 5385, '45.43330', '-122.23330'), ('Cascadia', 8016, '44.40000', '-122.48300'), ('Cherryville', 5385, '45.36660', '-122.13330'), ('Crawfordsville', 290, '44.35000', '-122.85000'), ('Elkhorn', 471, '44.83300', '-122.35000'), ('Estacada', 2371, '45.29220', '-122.33330'), ('Foster Reservoir', 8016, '44.41000', '-122.64000'), ('Gates', 471, '44.75570', '-122.41950'), ('Green Peter Reservoir', 8016, '44.47000', '-122.51000'), ('Holley', 8016, '44.35000', '-122.78330'), ('Jordan', 1008, '44.73330', '-122.68330'), ('Lyons', 1008, '44.77730', '-122.60690'), ('Mehema', 1008, '44.78330', '-122.61660'), ('Mill City', 1537, '44.75130', '-122.47710'), ('Sandy', 5385, '45.39960', '-122.26670'), ('Shortys Corner', 5385, '45.38000', '-122.22000'), ('Silver Falls', 1008, '44.88000', '-122.63000'), ('Snow Peak', 1008, '44.63000', '-122.59000'), ('Sweet Home', 8016, '44.40170', '-122.70210')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ011': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bagby Hot Springs', 262, '44.92000', '-122.16000'), ('Bennett Pass', 3306, '45.32000', '-121.62000'), ('Breitenbush Springs', 232, '44.78300', '-121.96700'), ('Brightwood', 3306, '45.37000', '-122.01700'), ('Detroit', 262, '44.73390', '-122.15080'), ('Government Camp', 3306, '45.30000', '-121.76700'), ('Idanha', 232, '44.70310', '-122.08340'), ('Lolo Pass', 3306, '45.42000', '-121.80000'), ('Lost Lake', 1115, '45.49000', '-121.83000'), ('Marion Forks', 232, '44.60000', '-121.95000'), ('McKenzie Pass', 0, '44.25900', '-121.81000'), ('Mount Hood', 3306, '45.37500', '-121.70000'), ('Rhododendron', 3306, '45.33330', '-121.91660'), ('Round Mountain', 2371, '45.06000', '-122.11000'), ('Santiam Junction', 232, '44.44000', '-121.95000'), ('Santiam Pass', 959, '44.42200', '-121.84600'), ('Table Rock', 471, '44.96000', '-122.27000'), ('Three Lynx', 3306, '45.12000', '-122.06000'), ('Timothy Lake', 3306, '45.12000', '-121.79000'), ('Tombstone Summit', 232, '44.39700', '-122.16000'), ('Upper Soda', 262, '44.41000', '-122.28330'), ('Welches', 3306, '45.33330', '-121.96660'), ('White River Snow Park', 3306, '45.30000', '-121.67000'), ('Zigzag', 3306, '45.34000', '-121.93300')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ012': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Cottage Grove', 8445, '43.79770', '-123.05570'), ('Cottage Grove Lake', 8445, '43.69000', '-123.07000'), ('Creswell', 3579, '43.91830', '-123.01930'), ('Dexter', 857, '43.91660', '-122.81660'), ('Disston', 857, '43.70000', '-122.76660'), ('Dorena', 8445, '43.71700', '-122.86700'), ('Dorena Reservoir', 8445, '43.77000', '-122.93000'), ('Fall Creek Reservoir', 857, '43.94000', '-122.74000'), ('Jasper', 52864, '44.00000', '-122.90000'), ('Leaburg', 857, '44.11660', '-122.68330'), ('Lookout Point Reservoir', 857, '43.87000', '-122.68000'), ('Lowell', 857, '43.92070', '-122.77960'), ('Marcola', 52864, '44.16700', '-122.85000'), ('Mohawk', 52864, '44.13330', '-122.91660'), ('Nimrod', 276, '44.11660', '-122.41660'), ('Pleasant Hill', 52864, '43.96660', '-122.91660'), ('Saginaw', 8445, '43.83330', '-123.05000'), ('Vida', 8016, '44.15000', '-122.56700'), ('Walker', 8445, '43.85000', '-123.05000'), ('Walterville', 857, '44.06660', '-122.80000')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORZ013': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Belknap Springs', 232, '44.20000', '-122.05000'), ('Blue River', 3148, '44.15000', '-122.33330'), ('Cougar Reservoir', 3148, '44.08000', '-122.23000'), ('Hampton', 276, '43.80000', '-122.57000'), ('Hills Creek Reservoir', 3148, '43.67000', '-122.43000'), ('McCredie Springs', 3148, '43.71600', '-122.31700'), ('McKenzie Bridge', 232, '44.18300', '-122.16700'), ('Oakridge', 3148, '43.74740', '-122.47200'), ('Waldo Lake', 3148, '43.73000', '-122.05000'), ('Westfir', 276, '43.75820', '-122.50640'), ('Willamette Pass', 0, '43.60000', '-122.04000')], 'partOfState': 'western', 'wfo': 'PQR'}, +'ORZ014': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Dee', 5831, '45.58330', '-121.61660'), ('Odell', 1849, '45.63000', '-121.53600'), ('Parkdale', 266, '45.51700', '-121.60000')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ015': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bonneville', 411, '45.63300', '-121.95150'), ('Bridal Veil', 4764, '45.55000', '-122.18330'), ('Cascade Locks', 1115, '45.66980', '-121.88940'), ('Corbett', 4764, '45.53300', '-122.30000'), ('Multnomah Falls', 411, '45.57500', '-122.11700'), ('Rooster Rock State Park', 4764, '45.55000', '-122.23000')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ016': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Hood River', 5831, '45.70980', '-121.52190'), ('Viento State Park', 5831, '45.70000', '-121.66000'), ('Wyeth', 1678, '45.69000', '-121.76660')], 'partOfState': 'northwest', 'wfo': 'PQR'}, +'ORZ021': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bandon', 2833, '43.11590', '-124.41460'), ('Charleston', 1402, '43.34030', '-124.32890'), ('Coos Bay', 15374, '43.37840', '-124.23100'), ('Coquille', 4184, '43.18130', '-124.18170'), ('Denmark', 1153, '42.89080', '-124.46140'), ('Lakeside', 1371, '43.57900', '-124.17320'), ('Langlois', 1153, '42.92360', '-124.44970'), ('Myrtle Point', 2451, '43.06220', '-124.13190'), ('North Bend', 9544, '43.40610', '-124.23620'), ('Port Orford', 1153, '42.74990', '-124.49550'), ('Powers', 734, '42.88540', '-124.07220'), ('Reedsport', 4378, '43.69900', '-124.11090'), ('Sixes', 1153, '42.82030', '-124.48190')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ022': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Brookings', 5447, '42.05980', '-124.29080'), ('Gold Beach', 1897, '42.41290', '-124.41850'), ('Harbor', 2622, '42.03910', '-124.25470'), ('Nesika Beach', 1897, '42.50640', '-124.41220'), ('Ophir', 1897, '42.56330', '-124.38170'), ('Pistol River', 1897, '42.27720', '-124.39360')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ023': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Azalea', 1293, '42.79560', '-123.25920'), ('Camas Valley', 4613, '43.03440', '-123.67280'), ('Canyonville', 1293, '42.92870', '-123.27830'), ('Curtain', 1021, '43.72250', '-123.21080'), ('Drain', 1021, '43.66210', '-123.31410'), ('Elkton', 147, '43.63730', '-123.56600'), ('Glendale', 855, '42.73760', '-123.42840'), ('Green', 6174, '43.14920', '-123.38220'), ('Myrtle Creek', 3419, '43.02580', '-123.28260'), ('Oakland', 954, '43.42300', '-123.29580'), ('Riddle', 1014, '42.95370', '-123.36610'), ('Roseburg', 20017, '43.21970', '-123.35760'), ('Scottsburg', 147, '43.65420', '-123.81560'), ('Sitkum', 2451, '43.14830', '-123.86000'), ('Sutherlin', 6669, '43.38860', '-123.31500'), ('Tiller', 1293, '42.92860', '-122.95000'), ('Tri-City', 3519, '42.98470', '-123.31050'), ('Umpqua', 6669, '43.36560', '-123.46720'), ('Winchester', 6831, '43.28030', '-123.35250'), ('Winston', 4613, '43.12040', '-123.41140'), ('Yoncalla', 1052, '43.60020', '-123.28540')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ024': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Agness', 734, '42.55670', '-124.06780'), ('Cave Junction', 1363, '42.16730', '-123.64470'), ('Galice', 855, '42.56970', '-123.59610'), ('Grants Pass', 23003, '42.44120', '-123.32430'), ('Kerby', 1363, '42.19440', '-123.65060'), ('Merlin', 5844, '42.51750', '-123.41860'), ('Murphy', 3780, '42.34780', '-123.33220'), ('Obrien', 1363, '42.06750', '-123.70190'), ('Provolt', 3780, '42.28330', '-123.23330'), ('Selma', 1363, '42.27920', '-123.61470'), ('Sunny Valley', 855, '42.63920', '-123.37440'), ('Takilma', 1363, '42.05170', '-123.61830'), ('Wilderville', 5844, '42.38250', '-123.46580'), ('Williams', 3780, '42.21890', '-123.27280'), ('Wolf Creek', 855, '42.69560', '-123.39420')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ025': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Steamboat', 276, '43.34560', '-122.73440'), ('Toketee Falls', 3148, '43.27580', '-122.44970')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ026': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Applegate', 1847, '42.25720', '-123.16720'), ('Ashland', 19522, '42.19020', '-122.69960'), ('Butte Falls', 439, '42.54200', '-122.56780'), ('Central Point', 12493, '42.37370', '-122.91100'), ('Eagle Point', 4797, '42.46610', '-122.79950'), ('Gold Hill', 1073, '42.43460', '-123.05030'), ('Jacksonville', 2235, '42.31310', '-122.96760'), ('Medford', 63154, '42.33980', '-122.85310'), ('Phoenix', 4060, '42.27450', '-122.81600'), ('Prospect', 439, '42.75110', '-122.48780'), ('Rogue River', 1847, '42.43580', '-123.16710'), ('Ruch', 2235, '42.23670', '-123.04110'), ('Shady Cove', 2307, '42.61180', '-122.81870'), ('Talent', 5589, '42.24010', '-122.78100'), ('Trail', 2307, '42.64860', '-122.80940'), ('White City', 5466, '42.43200', '-122.83010')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ027': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Crater Lake', 716, '42.90000', '-122.13000'), ('Crescent Lake', 3148, '43.50940', '-121.96830'), ('Diamond Lake', 3148, '43.17890', '-122.13780'), ('Union Creek', 439, '42.90720', '-122.44440')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ028': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Howard Prairie', 19522, '42.20000', '-122.38330'), ('Siskiyou Summit', 19522, '42.06000', '-122.57000')], 'partOfState': 'southwest', 'wfo': 'MFR'}, +'ORZ029': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Altamont', 19603, '42.19820', '-121.71970'), ('Bonanza', 415, '42.19960', '-121.40590'), ('Chiloquin', 716, '42.57650', '-121.86690'), ('Dairy', 415, '42.23530', '-121.52000'), ('Keno', 892, '42.12670', '-121.92890'), ('Klamath Falls', 19462, '42.22100', '-121.77240'), ('Lorella', 415, '42.13720', '-121.27140'), ('Malin', 638, '42.01400', '-121.40780'), ('Merrill', 897, '42.02660', '-121.59970'), ('Midland', 19462, '42.13080', '-121.81920'), ('Modoc Point', 716, '42.44500', '-121.86720'), ('Olene', 19603, '42.17190', '-121.62970'), ('Worden', 892, '42.04560', '-121.86530')], 'partOfState': 'south central', 'wfo': 'MFR'}, +'ORZ030': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Beatty', 415, '42.44190', '-121.26970'), ('Bly', 415, '42.39780', '-121.04060'), ('Chemult', 716, '43.21670', '-121.78170'), ('Crescent', 2445, '43.46250', '-121.69450'), ('Gilchrist', 2445, '43.47720', '-121.68420'), ('Sprague River', 415, '42.45560', '-121.50310')], 'partOfState': 'south central', 'wfo': 'MFR'}, +'ORZ031': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adel', 2474, '42.17750', '-119.89750'), ('Alkali Lake', 247, '42.97140', '-119.99220'), ('Fort Rock', 2445, '43.35670', '-121.05280'), ('Lakeview', 2474, '42.18920', '-120.34540'), ('New Pine Creek', 2474, '42.00000', '-120.30000'), ('Paisley', 247, '42.69300', '-120.54440'), ('Silver Lake', 247, '43.12810', '-121.04500'), ('Summer Lake', 247, '42.97310', '-120.77640'), ('Valley Falls', 2474, '42.34420', '-120.28080')], 'partOfState': 'south central', 'wfo': 'MFR'}, +'ORZ041': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Arlington', 524, '45.71780', '-120.19260'), ('Chenoweth', 3412, '45.62730', '-121.23010'), ('City Of The Dalles', 11514, '45.59920', '-121.17500'), ('Mosier', 410, '45.68370', '-121.39490'), ('Rufus', 268, '45.69370', '-120.73970')], 'partOfState': 'north central', 'wfo': 'PDT'}, +'ORZ044': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Boardman', 2855, '45.83760', '-119.70250'), ('Echo', 650, '45.74400', '-119.19200'), ('Hermiston', 13154, '45.83280', '-119.28350'), ('Ione', 321, '45.50100', '-119.82230'), ('Irrigon', 1702, '45.89690', '-119.48810'), ('Stanfield', 1979, '45.78630', '-119.21950'), ('Umatilla', 4978, '45.91330', '-119.32780')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORZ049': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Cove', 594, '45.29670', '-117.80950'), ('Elgin', 1654, '45.56450', '-117.92020'), ('Imbler', 284, '45.46240', '-117.96250'), ('Island City', 916, '45.33880', '-118.04610'), ('La Grande', 12327, '45.32530', '-118.08730'), ('Summerville', 117, '45.48980', '-118.00250')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORZ050': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Enterprise', 1895, '45.42530', '-117.27610'), ('Joseph', 1054, '45.35200', '-117.22790'), ('Lostine', 263, '45.48710', '-117.42900'), ('Wallowa', 869, '45.57070', '-117.52770')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORZ061': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Andrews', 373, '42.46670', '-118.61670'), ('Buchanan', 3064, '43.65000', '-118.63330'), ('Burns', 3064, '43.58770', '-119.06120'), ('Crane', 3064, '43.41670', '-118.58330'), ('Diamond', 1623, '43.01670', '-118.68330'), ('Drewsey', 131, '43.79890', '-118.38000'), ('Dunnean', 3064, '43.43330', '-118.25000'), ('Fields', 373, '42.25970', '-118.66890'), ('Frenchglen', 1623, '42.82890', '-118.90580'), ('Hines', 1623, '43.56720', '-119.07880'), ('Narrows', 1623, '43.27470', '-118.95890'), ('New Princeton', 3064, '43.28280', '-118.59890'), ('Riley', 1623, '43.53330', '-119.48330'), ('Van', 223, '43.98330', '-118.68330'), ('Venator', 3064, '43.35000', '-118.30000'), ('Wagontire', 247, '43.25000', '-119.88330')], 'partOfState': 'southeast', 'wfo': 'BOI'}, +'ORZ062': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Baker', 9860, '44.77420', '-117.83160'), ('Brownlee Dam', 311, '44.84000', '-116.90000'), ('Durkee', 515, '44.58000', '-117.45000'), ('Greenhorn', 0, '44.70890', '-118.49580'), ('Haines', 426, '44.91190', '-117.93900'), ('Halfway', 337, '44.87680', '-117.10900'), ('Huntington', 515, '44.35030', '-117.26600'), ('Oxbow Dam', 337, '44.97000', '-116.85000'), ('Richland', 147, '44.76770', '-117.16760'), ('Rock Creek', 426, '44.91670', '-118.03330'), ('Sumpter', 171, '44.74380', '-118.19590'), ('Unity', 131, '44.43680', '-118.18730')], 'partOfState': 'northeast', 'wfo': 'BOI'}, +'ORZ063': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Beulah', 131, '43.90000', '-118.16670'), ('Burns Junction', 239, '42.78190', '-117.83890'), ('Crowley', 239, '43.30000', '-117.90000'), ('Harper', 1976, '43.85470', '-117.60690'), ('Ironside', 131, '44.33330', '-117.93330'), ('Jordan Valley', 239, '42.97660', '-117.05430'), ('Juntura', 131, '43.74470', '-118.08580'), ('Little Valley', 1976, '43.90000', '-117.50000'), ('Malheur City', 9860, '44.41670', '-117.71670'), ('Riverside', 131, '43.55000', '-118.15000'), ('Rome', 239, '42.83330', '-117.61670'), ('Westfall', 1976, '43.98330', '-117.71670')], 'partOfState': 'southeast', 'wfo': 'BOI'}, +'ORZ064': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adrian', 147, '43.74090', '-117.07010'), ('Brogan', 515, '44.25000', '-117.50000'), ('Jamieson', 515, '44.18330', '-117.43330'), ('Nyssa', 3163, '43.87850', '-116.99730'), ('Ontario', 10985, '44.02470', '-116.97430'), ('Owyhee', 147, '43.80000', '-117.05000'), ('Vale', 1976, '43.98310', '-117.24050')], 'partOfState': 'southeast', 'wfo': 'BOI'}, +'ORZ502': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORZ503': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Granite', 24, '44.81060', '-118.41940'), ('Lonerock', 24, '45.08920', '-119.88310'), ('Long Creek', 228, '44.71380', '-119.10190'), ('North Powder', 489, '45.03060', '-117.91860'), ('Ukiah', 255, '45.13390', '-118.93170'), ('Union', 1926, '45.20900', '-117.86710')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORZ505': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Canyon City', 669, '44.39220', '-118.94840'), ('Dayville', 138, '44.46680', '-119.53230'), ('John Day', 1821, '44.41840', '-118.94940'), ('Mitchell', 170, '44.56730', '-120.15250'), ('Monument', 151, '44.82000', '-119.41880'), ('Mount Vernon', 595, '44.41780', '-119.11220'), ('Spray', 140, '44.83200', '-119.79330')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORZ506': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Prairie City', 1080, '44.46160', '-118.70950'), ('Seneca', 223, '44.13470', '-118.97560')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORZ507': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Adams', 297, '45.76730', '-118.56270'), ('Athena', 1221, '45.81280', '-118.49140'), ('Helix', 183, '45.85030', '-118.65740'), ('Milton-Freewater', 6470, '45.93490', '-118.39040'), ('Mission', 1019, '45.66710', '-118.67180'), ('Pendleton', 16354, '45.67380', '-118.81730'), ('Pilot Rock', 1532, '45.48150', '-118.83220'), ('Weston', 717, '45.81580', '-118.42470')], 'partOfState': 'northeast', 'wfo': 'PDT'}, +'ORZ508': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Condon', 759, '45.23680', '-120.18390'), ('Fossil', 469, '44.99840', '-120.21320'), ('Heppner', 1395, '45.35420', '-119.55300'), ('Lexington', 263, '45.44570', '-119.68660')], 'partOfState': 'north central', 'wfo': 'PDT'}, +'ORZ509': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Deschutes River Woods', 4631, '43.99170', '-121.35710'), ('Mount Jefferson', 232, '44.68000', '-121.79700'), ('Sisters', 959, '44.29100', '-121.54820'), ('Three Rivers', 2445, '43.82010', '-121.46800')], 'partOfState': 'central', 'wfo': 'PDT'}, +'ORZ510': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Antelope', 59, '44.91090', '-120.72250'), ('Dufur', 588, '45.45340', '-121.12710'), ('Grass Valley', 171, '45.35990', '-120.78320'), ('Maupin', 411, '45.17520', '-121.08290'), ('Moro', 337, '45.48570', '-120.73170'), ('Shaniko', 26, '45.00420', '-120.75050'), ('Wasco', 381, '45.59160', '-120.69570')], 'partOfState': 'north central', 'wfo': 'PDT'}, +'ORZ511': {'fullStateName': 'Oregon', 'state': 'OR', 'cities': [('Bend', 52029, '44.06600', '-121.31100'), ('Culver', 802, '44.52490', '-121.20930'), ('Madras', 5078, '44.62990', '-121.12900'), ('Metolius', 635, '44.58760', '-121.17660'), ('Prineville', 7356, '44.30550', '-120.84150'), ('Redmond', 13481, '44.25950', '-121.17120'), ('Terrebonne', 1469, '44.34200', '-121.17740'), ('Warm Springs', 2431, '44.76920', '-121.28570')], 'partOfState': 'central', 'wfo': 'PDT'}, +'PAZ001': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Avonia', 1331, '42.04410', '-80.27350'), ('Erie', 103717, '42.12580', '-80.08660'), ('Fairview', 2042, '42.02930', '-80.25540'), ('Girard', 3164, '42.00400', '-80.31940'), ('Lake City', 2811, '42.01730', '-80.34690'), ('Lawrence Park', 4048, '42.15190', '-80.02170'), ('North East', 4601, '42.21330', '-79.83390'), ('Northwest Harborcr', 6662, '42.14620', '-79.99410'), ('Wesleyville', 3617, '42.13700', '-80.01260')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'PAZ002': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Albion', 1607, '41.88960', '-80.36380'), ('Corry', 6834, '41.92590', '-79.63730'), ('Cranesville', 600, '41.90380', '-80.34470'), ('Edinboro', 6950, '41.87470', '-80.12470'), ('Elgin', 236, '41.91080', '-79.74340'), ('McKean', 418, '41.99910', '-80.13830'), ('Mill Village', 412, '41.87770', '-79.97260'), ('Platea', 474, '41.95140', '-80.33030'), ('Union City', 3463, '41.89610', '-79.84470'), ('Waterford', 1449, '41.94530', '-79.98540'), ('Wattsburg', 378, '42.00280', '-79.80710')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'PAZ003': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blooming Valley', 378, '41.68030', '-80.04160'), ('Cambridge Springs', 2363, '41.80170', '-80.06010'), ('Cochranton', 1148, '41.51850', '-80.04690'), ('Conneaut Lake', 708, '41.60230', '-80.30920'), ('Conneaut Lakeshore', 708, '41.62410', '-80.30720'), ('Conneautville', 848, '41.75770', '-80.36810'), ('Hydetown', 605, '41.65160', '-79.72430'), ('Linesville', 1155, '41.65680', '-80.42180'), ('Meadville', 13685, '41.64620', '-80.14650'), ('Saegertown', 1071, '41.71330', '-80.13830'), ('Spartansburg', 333, '41.82380', '-79.68250'), ('Springboro', 491, '41.80000', '-80.37120'), ('Titusville', 6146, '41.62670', '-79.67090'), ('Townville', 306, '41.67960', '-79.88200'), ('Venango', 288, '41.77280', '-80.11200'), ('Woodcock', 146, '41.75360', '-80.08430')], 'partOfState': 'northwest', 'wfo': 'CLE'}, +'PAZ004': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bear Lake', 193, '41.99310', '-79.50100'), ('Chapman State Park', 1780, '41.77000', '-79.18000'), ('Clarendon', 564, '41.78070', '-79.09640'), ('Columbus', 6834, '41.95000', '-79.58000'), ('Enterprise', 850, '41.63000', '-79.59000'), ('Garland', 792, '41.80000', '-79.43000'), ('Grand Valley', 850, '41.72000', '-79.54000'), ('Kinzua Dam', 564, '41.84000', '-79.00000'), ('Lottsville', 193, '41.93000', '-79.44000'), ('Russell', 10259, '41.92000', '-79.14000'), ('Scandia', 10259, '41.91088', '-79.03625'), ('Sheffield', 1268, '41.69630', '-79.02830'), ('Spring Creek', 193, '41.88000', '-79.51000'), ('Sugar Grove', 613, '41.98340', '-79.34000'), ('Tidioute', 792, '41.68360', '-79.40210'), ('Warren', 10259, '41.84370', '-79.14400'), ('Youngsville', 1834, '41.85190', '-79.31570')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ005': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bradford', 9175, '41.96050', '-78.64020'), ('Coryville', 858, '41.88000', '-78.39000'), ('Crosby', 1684, '41.75000', '-78.37000'), ('Cyclone', 577, '41.82000', '-78.58000'), ('Eldred', 858, '41.95670', '-78.38100'), ('Kane', 4126, '41.66300', '-78.80930'), ('Kinzua Bridge State Park', 1070, '41.75000', '-78.57000'), ('Lewis Run', 577, '41.87080', '-78.66070'), ('Ludlow', 1268, '41.73000', '-78.95000'), ('Marshburg', 577, '41.85000', '-78.77000'), ('Mount Jewett', 1070, '41.72470', '-78.64400'), ('Norwich', 2355, '41.67000', '-78.35000'), ('Port Allegany', 2355, '41.81360', '-78.27770'), ('Rew', 1684, '41.90000', '-78.50000'), ('Smethport', 1684, '41.80740', '-78.44430'), ('Westline', 1070, '41.77000', '-78.75000'), ('Wetmore', 4126, '41.69000', '-78.86000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ006': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Austin', 623, '41.63600', '-78.08900'), ('Cherry Springs State Park', 1325, '41.65000', '-77.84000'), ('Coudersport', 2650, '41.77420', '-78.01430'), ('Cross Fork', 1318, '41.48000', '-77.83000'), ('Denton Hill State Park', 684, '41.76000', '-77.82000'), ('Galeton', 1325, '41.73320', '-77.64400'), ('Genesee', 1028, '41.98000', '-77.90000'), ('Harrison Valley', 684, '41.92000', '-77.67000'), ('Keating Summit', 623, '41.71000', '-78.17000'), ('Lyman Run State Park', 1325, '41.72000', '-77.79000'), ('Ole Bull State Park', 1325, '41.55000', '-77.71000'), ('Oswayo', 159, '41.92010', '-78.02050'), ('Roulette', 2355, '41.77000', '-78.16000'), ('Shinglehouse', 1250, '41.96530', '-78.19150'), ('Ulysses', 684, '41.90410', '-77.75520'), ('Wharton', 623, '41.55000', '-78.00000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ007': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Clark', 633, '41.28530', '-80.40420'), ('Farrell', 6050, '41.20960', '-80.49740'), ('Fredonia', 652, '41.32220', '-80.25880'), ('Greenville', 6380, '41.40600', '-80.38430'), ('Greenville East', 1419, '41.40270', '-80.35900'), ('Grove City', 8024, '41.15690', '-80.08880'), ('Hermitage', 16157, '41.22980', '-80.44290'), ('Jackson Center', 221, '41.27320', '-80.13880'), ('Jamestown', 636, '41.48490', '-80.43700'), ('Mercer', 2391, '41.22630', '-80.23660'), ('New Lebanon', 205, '41.41670', '-80.07590'), ('Sandy Lake', 743, '41.34760', '-80.08460'), ('Sharon', 16328, '41.23420', '-80.49980'), ('Sharpsville', 4500, '41.25890', '-80.48200'), ('Sheakleyville', 164, '41.44470', '-80.20710'), ('Stoneboro', 1104, '41.33660', '-80.10970'), ('West Middlesex', 929, '41.17410', '-80.45610'), ('Wheatland', 748, '41.19690', '-80.49600')], 'partOfState': 'northwest', 'wfo': 'PBZ'}, +'PAZ008': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Barkeyville', 237, '41.20020', '-79.98310'), ('Clintonville', 528, '41.20180', '-79.87610'), ('Cooperstown', 460, '41.49960', '-79.87400'), ('Cranberry', 0, '41.35000', '-79.72000'), ('Emlenton', 784, '41.18070', '-79.70830'), ('Franklin', 7212, '41.39200', '-79.83880'), ('Hasson Heights', 1495, '41.44880', '-79.67710'), ('Kennerdell', 0, '41.27000', '-79.85000'), ('Oil City', 11504, '41.42660', '-79.70430'), ('Pleasantville', 850, '41.59360', '-79.57930'), ('Polk', 1031, '41.36920', '-79.93010'), ('Rouseville', 472, '41.47100', '-79.68610'), ('Seneca', 966, '41.37570', '-79.70550'), ('Sugarcreek', 5331, '41.43950', '-79.81150'), ('Utica', 211, '41.43700', '-79.95760'), ('Wesley', 0, '41.23000', '-79.97000'), ('Woodland Heights', 1402, '41.40930', '-79.70180')], 'partOfState': 'northwest', 'wfo': 'PBZ'}, +'PAZ009': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Lynch', 0, '41.60000', '-79.05000'), ('Marienville', 0, '41.45000', '-79.08000'), ('Tionesta', 615, '41.49600', '-79.44680')], 'partOfState': 'northwest', 'wfo': 'PBZ'}, +'PAZ010': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Benezette', 103, '41.31000', '-78.35000'), ('Brandy Camp', 4591, '41.34000', '-78.70000'), ('Brockport', 2182, '41.27000', '-78.73000'), ('East Branch Dam', 14502, '41.53000', '-78.58000'), ('Force', 2170, '41.26000', '-78.49000'), ('James City', 4126, '41.62000', '-78.83000'), ('Johnsonburg', 3003, '41.49190', '-78.67890'), ('Medix Run', 2170, '41.29000', '-78.39000'), ('Portland Mills', 4591, '41.38000', '-78.84000'), ('Ridgway', 4591, '41.42560', '-78.72880'), ('St. Marys', 14502, '41.42860', '-78.55770'), ('Wilcox', 3003, '41.58000', '-78.68000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ011': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Cameron', 103, '41.43000', '-78.16000'), ('Driftwood', 103, '41.34320', '-78.13540'), ('Elk River', 2526, '41.58000', '-78.38000'), ('Emporium', 2526, '41.51090', '-78.23710'), ('Hicks Run', 103, '41.36000', '-78.24000'), ('Sizerville', 2526, '41.59000', '-78.21000'), ('Stevenson Dam', 103, '41.43000', '-78.06000'), ('Truman', 2526, '41.45000', '-78.37000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ012': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Glen Union', 1321, '41.23000', '-77.57000'), ('Hyner', 557, '41.30000', '-77.67000'), ('Keating', 1318, '41.26000', '-77.92000'), ('Kettle Creek State Park', 103, '41.36000', '-77.95000'), ('Renovo', 1318, '41.32910', '-77.74780'), ('Tamarack', 1318, '41.42000', '-77.85000'), ('Westport', 1318, '41.30000', '-77.84000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ013': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bessemer', 1172, '40.97680', '-80.48750'), ('Ellport', 1148, '40.86140', '-80.26230'), ('Ellwood City', 8688, '40.86090', '-80.28350'), ('Enon Valley', 387, '40.85580', '-80.45740'), ('New Beaver', 1677, '40.88240', '-80.36460'), ('New Castle', 26309, '40.99570', '-80.34630'), ('New Castle Northwest', 1515, '41.02190', '-80.35620'), ('New Wilmington', 2452, '41.11760', '-80.33220'), ('Oakland', 1516, '40.99220', '-80.36600'), ('Oakwood', 2249, '41.01060', '-80.37960'), ('S.n.p.j.', 12, '40.92890', '-80.49900'), ('South New Castle', 808, '40.97420', '-80.34600'), ('Volant', 113, '41.11360', '-80.25910'), ('Wampum', 678, '40.88650', '-80.33880')], 'partOfState': 'western', 'wfo': 'PBZ'}, +'PAZ014': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bruin', 534, '41.05510', '-79.72730'), ('Butler', 15121, '40.86190', '-79.89670'), ('Callery', 444, '40.73950', '-80.03760'), ('Cherry Valley', 72, '41.16190', '-79.79910'), ('Chicora', 1021, '40.94890', '-79.74190'), ('Connoquenessing', 564, '40.81800', '-80.01390'), ('East Butler', 679, '40.87860', '-79.84760'), ('Eau Claire', 355, '41.13690', '-79.79820'), ('Evans City', 2009, '40.76850', '-80.05870'), ('Fernway', 12188, '40.69470', '-80.13100'), ('Fox Run', 3044, '40.70230', '-80.08300'), ('Harmony', 937, '40.80130', '-80.12520'), ('Harrisville', 883, '41.13600', '-80.01100'), ('Homeacre-Lyndora', 7511, '40.87100', '-79.92300'), ('Karns City', 244, '40.99710', '-79.72600'), ('Mars', 1746, '40.69660', '-80.01410'), ('Meadowood', 2912, '40.84200', '-79.89400'), ('Meridian', 3794, '40.85440', '-79.95660'), ('Nixon', 1404, '40.78320', '-79.92970'), ('Oak Hills', 2335, '40.82470', '-79.91340'), ('Petrolia', 218, '41.02180', '-79.71720'), ('Portersville', 268, '40.92520', '-80.14440'), ('Prospect', 1234, '40.90070', '-80.04960'), ('Sarver', 0, '40.73000', '-79.73000'), ('Saxonburg', 1629, '40.75200', '-79.81550'), ('Seven Fields', 1986, '40.68840', '-80.06200'), ('Shanor-Northvue', 3517, '40.90930', '-79.91720'), ('Slippery Rock', 3068, '41.07000', '-80.06030'), ('Valencia', 384, '40.67570', '-79.98820'), ('West Liberty', 325, '41.00730', '-80.05500'), ('West Sunbury', 104, '41.00610', '-79.89630'), ('Zelienople', 4123, '40.78940', '-80.14350')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAZ015': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Callensburg', 224, '41.12560', '-79.55850'), ('Clarion', 6185, '41.21010', '-79.38040'), ('East Brady', 1038, '40.98480', '-79.61410'), ('Foxburg', 275, '41.14500', '-79.68060'), ('Fryburg', 0, '41.35000', '-79.45000'), ('Hawthorn', 587, '41.02080', '-79.27620'), ('Knox', 1176, '41.23480', '-79.53570'), ('New Bethlehem', 1057, '41.00300', '-79.32880'), ('Rimersburg', 1051, '41.04120', '-79.50210'), ('Shippenville', 505, '41.25090', '-79.46300'), ('Sligo', 728, '41.10880', '-79.49590'), ('St. Petersburg', 405, '41.16090', '-79.65440'), ('Strattanville', 542, '41.20290', '-79.32760')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAZ016': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Big Run', 686, '40.96990', '-78.87810'), ('Brockway', 2182, '41.24710', '-78.79330'), ('Brookville', 4230, '41.16160', '-79.08280'), ('Corsica', 354, '41.18170', '-79.20290'), ('Falls Creek', 983, '41.14210', '-78.80720'), ('Punxsutawney', 6271, '40.94410', '-78.97760'), ('Reynoldsville', 2710, '41.09430', '-78.88800'), ('Sigel', 0, '41.28000', '-79.12000'), ('Summerville', 525, '41.11640', '-79.18860'), ('Sykesville', 1246, '41.04930', '-78.81890'), ('Timblin', 151, '40.96610', '-79.19930'), ('Worthville', 85, '41.02440', '-79.14110')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAZ017': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Brisbin', 413, '40.83920', '-78.35220'), ('Burnside', 283, '40.81280', '-78.78980'), ('Clearfield', 6631, '41.02140', '-78.43920'), ('Coalport', 490, '40.74850', '-78.53210'), ('Curwensville', 2650, '40.97270', '-78.51800'), ('Dubois', 8123, '41.12230', '-78.75580'), ('Glen Hope', 149, '40.79900', '-78.49810'), ('Grampian', 441, '40.96400', '-78.61100'), ('Houtzdale', 941, '40.82500', '-78.35100'), ('Hyde', 1491, '41.00740', '-78.46830'), ('Irvona', 680, '40.77350', '-78.55280'), ('Jeffries', 413, '40.91000', '-78.39000'), ('Karthaus', 771, '41.11000', '-78.12000'), ('Lecontes Mills', 350, '41.07000', '-78.26000'), ('Lumber City', 86, '40.92890', '-78.57210'), ('Mahaffey', 402, '40.87520', '-78.72810'), ('New Washington', 89, '40.82270', '-78.70140'), ('Osceola Mills', 1249, '40.85250', '-78.26990'), ('Parker Dam State Park', 1040, '41.18000', '-78.49000'), ('Penfield', 4507, '41.21000', '-78.60000'), ('Ramey', 525, '40.80070', '-78.39880'), ('Rockton', 8123, '41.08000', '-78.66000'), ('S.b. Elliot State Park', 1040, '41.12000', '-78.53000'), ('Treasure Lake', 4507, '41.17340', '-78.71610'), ('Troutville', 224, '41.02490', '-78.78550'), ('Wallaceton', 350, '40.96550', '-78.29240'), ('Westover', 458, '40.74960', '-78.68180'), ('Woodland', 6631, '40.99000', '-78.38000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ018': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Black Moshannon State Park', 638, '40.91300', '-78.05200'), ('Moshannon', 771, '41.02720', '-78.04800'), ('Philipsburg', 3056, '40.89260', '-78.21170'), ('Pine Glen', 771, '41.10100', '-78.05950'), ('Sandy Ridge', 340, '40.79900', '-78.21170'), ('Snow Shoe', 771, '41.02720', '-77.95030')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ019': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bald Eagle State Park', 699, '41.05000', '-77.68500'), ('Bellefonte', 6395, '40.91380', '-77.76860'), ('Boalsburg', 3578, '40.77350', '-77.79160'), ('Centre Hall', 1079, '40.84440', '-77.68460'), ('Howard', 699, '41.01200', '-77.65700'), ('McCall Dam State Park', 435, '41.01000', '-77.20000'), ('Milesburg', 1187, '40.94260', '-77.79190'), ('Millheim', 749, '40.89250', '-77.47620'), ('Park Forest', 8830, '40.80100', '-77.90970'), ('Pine Grove Mills', 1141, '40.73880', '-77.87390'), ('Pleasant Gap', 1611, '40.86460', '-77.73800'), ('Poe Valley State Park', 749, '40.84440', '-77.49500'), ('Port Matilda', 638, '40.79900', '-78.05260'), ('Potters Mills', 1386, '40.77000', '-77.64000'), ('Rebersburg', 492, '40.94250', '-77.49000'), ('Rock Springs', 1104, '40.71950', '-77.95660'), ('State College', 38420, '40.79060', '-77.85790'), ('Unionville', 313, '40.90590', '-77.87660'), ('Zion', 2054, '40.92140', '-77.66790')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ020': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aliquippa', 11734, '40.61740', '-80.25500'), ('Ambridge', 7769, '40.59310', '-80.22540'), ('Baden', 4377, '40.63860', '-80.22190'), ('Beaver', 4775, '40.69290', '-80.30750'), ('Beaver Falls', 9920, '40.76090', '-80.32240'), ('Big Beaver', 2186, '40.81830', '-80.36360'), ('Bridgewater', 739, '40.70900', '-80.30050'), ('Conway', 2290, '40.66450', '-80.24090'), ('Darlington', 299, '40.81000', '-80.42390'), ('East Rochester', 623, '40.69810', '-80.26820'), ('Eastvale', 293, '40.76770', '-80.31550'), ('Economy', 9363, '40.63840', '-80.18510'), ('Fallston', 307, '40.72150', '-80.31450'), ('Frankfort Springs', 130, '40.48130', '-80.44560'), ('Freedom', 1763, '40.68460', '-80.25340'), ('Georgetown', 182, '40.64170', '-80.49980'), ('Glasgow', 63, '40.64460', '-80.50860'), ('Harmony Township', 3694, '40.60710', '-80.22050'), ('Harshaville', 0, '40.55000', '-80.42000'), ('Homewood', 147, '40.81340', '-80.32920'), ('Hookstown', 152, '40.59880', '-80.47440'), ('Industry', 1921, '40.65600', '-80.40980'), ('Koppel', 856, '40.83480', '-80.32250'), ('Midland', 3137, '40.63990', '-80.45790'), ('Monaca', 6286, '40.68330', '-80.27320'), ('New Brighton', 6641, '40.73560', '-80.30890'), ('New Galilee', 424, '40.83310', '-80.40090'), ('Ohioville', 3759, '40.68290', '-80.47730'), ('Patterson Heights', 670, '40.73900', '-80.32700'), ('Patterson Township', 3074, '40.74240', '-80.33240'), ('Rochester', 4014, '40.70200', '-80.28330'), ('Shippingport', 237, '40.62540', '-80.42420'), ('South Heights', 542, '40.57460', '-80.23630'), ('West Mayfield', 1187, '40.77900', '-80.33810')], 'partOfState': 'western', 'wfo': 'PBZ'}, +'PAZ021': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aspinwall', 2960, '40.49230', '-79.90370'), ('Avalon', 5294, '40.50100', '-80.06870'), ('Baldwin', 19999, '40.36320', '-79.96610'), ('Bell Acres', 1382, '40.59210', '-80.17630'), ('Bellevue', 8770, '40.49390', '-80.05590'), ('Ben Avon', 1917, '40.50650', '-80.08240'), ('Ben Avon Heights', 392, '40.51150', '-80.07290'), ('Bethel Park', 33556, '40.32360', '-80.03610'), ('Blawnox', 1550, '40.49110', '-79.86220'), ('Brackenridge', 3543, '40.60740', '-79.74210'), ('Braddock', 2912, '40.40200', '-79.86930'), ('Braddock Hills', 1998, '40.41680', '-79.86340'), ('Bradfordwoods', 1149, '40.63580', '-80.08030'), ('Brentwood', 10466, '40.37330', '-79.97600'), ('Bridgeville', 5341, '40.35660', '-80.10610'), ('Carnegie', 8389, '40.40760', '-80.08660'), ('Carnot-Moon', 10187, '40.51860', '-80.21420'), ('Castle Shannon', 8556, '40.36630', '-80.02020'), ('Chalfant', 870, '40.40990', '-79.83850'), ('Cheswick', 1899, '40.54290', '-79.80130'), ('Churchill', 3566, '40.43830', '-79.84070'), ('Clairton', 8491, '40.29650', '-79.88550'), ('Coraopolis', 6131, '40.51410', '-80.16210'), ('Crafton', 6706, '40.43330', '-80.07090'), ('Curtisville', 1173, '40.64870', '-79.84960'), ('Dormont', 9305, '40.39300', '-80.03750'), ('Dravosburg', 2015, '40.35210', '-79.88870'), ('Duquesne', 7332, '40.37320', '-79.85080'), ('East Mckeesport', 2343, '40.38430', '-79.80680'), ('East Pittsburgh', 2017, '40.39720', '-79.83690'), ('Edgewood', 2619, '40.43140', '-79.88370'), ('Edgeworth', 1730, '40.55430', '-80.19220'), ('Elizabeth', 1609, '40.27150', '-79.88650'), ('Emsworth', 2598, '40.51060', '-80.09640'), ('Etna', 3924, '40.49860', '-79.94730'), ('Forest Hills', 6831, '40.42480', '-79.85250'), ('Fox Chapel', 5436, '40.52540', '-79.88960'), ('Franklin Park', 11364, '40.59170', '-80.09870'), ('Glassport', 4993, '40.32540', '-79.88660'), ('Glenfield', 236, '40.52170', '-80.13210'), ('Green Tree', 4719, '40.41850', '-80.05530'), ('Hampton Township', 15568, '40.58580', '-79.95500'), ('Harrison Township', 11763, '40.63660', '-79.71670'), ('Haysville', 78, '40.52610', '-80.15440'), ('Heidelberg', 1225, '40.39140', '-80.09200'), ('Homestead', 3569, '40.40680', '-79.90980'), ('Imperial-Enlow', 3449, '40.45340', '-80.24850'), ('Ingram', 3712, '40.44570', '-80.06840'), ('Jefferson', 337, '40.29370', '-79.93220'), ('Kennedy Township', 7152, '40.47620', '-80.10190'), ('Leetsdale', 1232, '40.56830', '-80.21480'), ('Liberty', 2670, '40.32380', '-79.85800'), ('Lincoln', 1218, '40.29320', '-79.85250'), ('McCandless Township', 28781, '40.58350', '-80.03000'), ('McKeesport', 24040, '40.34150', '-79.84430'), ('McKees Rocks', 6622, '40.46930', '-80.06210'), ('Millvale', 4028, '40.48210', '-79.97440'), ('Mount Lebanon', 33017, '40.37400', '-80.04890'), ('Mount Oliver', 3970, '40.41090', '-79.98640'), ('Munhall', 12264, '40.39330', '-79.90110'), ('Municipality Of Monroeville', 29169, '40.42600', '-79.76090'), ('North Braddock', 6410, '40.40100', '-79.85210'), ('North Versailles', 11125, '40.37980', '-79.80970'), ('Oakdale', 1551, '40.39970', '-80.18770'), ('Oakmont', 6911, '40.51940', '-79.83650'), ("O'hara Township", 9096, '40.49930', '-79.90170'), ('Osborne', 566, '40.53080', '-80.16950'), ('Penn Hills', 46809, '40.47590', '-79.82700'), ('Pennsbury Village', 738, '40.42770', '-80.10090'), ('Pitcairn', 3689, '40.40760', '-79.77600'), ('Pittsburgh', 334563, '40.43920', '-79.97670'), ('Pleasant Hills', 8397, '40.32870', '-79.96110'), ('Plum', 26940, '40.50240', '-79.75400'), ('Port Vue', 4228, '40.33690', '-79.87050'), ('Rankin', 2315, '40.41140', '-79.88210'), ('Reserve Township', 3866, '40.48270', '-79.98710'), ('Robinson Township', 10830, '40.46210', '-80.12680'), ('Rosslyn Farms', 464, '40.42160', '-80.08980'), ('Ross Township', 33482, '40.52660', '-80.02490'), ('Russellton', 1530, '40.61070', '-79.83770'), ('Scott Township', 17118, '40.38620', '-80.07720'), ('Sewickley', 3902, '40.53970', '-80.18050'), ('Sewickley Heights', 981, '40.56100', '-80.15580'), ('Sewickley Hills', 652, '40.56030', '-80.12020'), ('Shaler Township', 30533, '40.52090', '-79.96400'), ('Sharpsburg', 3594, '40.49320', '-79.92660'), ('South Park Township', 14292, '40.29700', '-79.99390'), ('Springdale', 3828, '40.53960', '-79.78200'), ('Stowe Township', 7681, '40.48310', '-80.07330'), ('Sturgeon-Noblestown', 1350, '40.38880', '-80.20310'), ('Swissvale', 9653, '40.42050', '-79.88650'), ('Tarentum', 4993, '40.60520', '-79.76020'), ('Thornburg', 468, '40.43350', '-80.08340'), ('Turtle Creek', 6076, '40.40810', '-79.82090'), ('Upper St. Clair', 20053, '40.33570', '-80.08370'), ('Verona', 3124, '40.50500', '-79.84110'), ('Versailles', 1724, '40.31720', '-79.83050'), ('Wall', 727, '40.39320', '-79.78510'), ('West Elizabeth', 565, '40.27310', '-79.89390'), ('West Homestead', 2197, '40.39900', '-79.92040'), ('West Mifflin', 22464, '40.35710', '-79.90780'), ('West View', 7277, '40.51830', '-80.03390'), ('Wexford', 0, '40.63000', '-80.05000'), ('Whitaker', 1338, '40.39970', '-79.88740'), ('Whitehall', 14444, '40.35910', '-79.99180'), ('White Oak', 8437, '40.33920', '-79.80430'), ('Wilkinsburg', 19196, '40.44480', '-79.87330'), ('Wilkins Township', 7487, '40.42630', '-79.82430'), ('Wilmerding', 2145, '40.39360', '-79.81090')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAZ022': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Apollo', 1765, '40.58460', '-79.56460'), ('Applewold', 356, '40.80750', '-79.52230'), ('Atwood', 112, '40.74800', '-79.26190'), ('Bradys Bend', 0, '41.00000', '-79.63000'), ('Dayton', 543, '40.88100', '-79.24180'), ('Elderton', 358, '40.69410', '-79.34190'), ('Ford City', 3451, '40.76820', '-79.53450'), ('Ford Cliff', 412, '40.75990', '-79.53660'), ('Freeport', 1962, '40.68260', '-79.68280'), ('Kittanning', 4787, '40.82710', '-79.52340'), ('Leechburg', 2386, '40.63040', '-79.60280'), ('Lenape Heights', 1212, '40.76430', '-79.52080'), ('Manorville', 401, '40.78770', '-79.52110'), ('North Apollo', 1426, '40.59320', '-79.55710'), ('North Vandergrift', 1431, '40.60850', '-79.56440'), ('Orchard Hills', 2152, '40.59300', '-79.54140'), ('Parker', 799, '41.09200', '-79.68430'), ('Rural Valley', 922, '40.79910', '-79.31470'), ('South Bethlehem', 444, '40.99960', '-79.33950'), ('West Hills', 1229, '40.82790', '-79.54700'), ('West Kittanning', 1199, '40.81190', '-79.53170'), ('Worthington', 778, '40.83790', '-79.63440')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAZ023': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Armagh', 131, '40.45320', '-79.03310'), ('Black Lick', 1438, '40.46500', '-79.18800'), ('Blairsville', 3607, '40.43150', '-79.26010'), ('Brush Vly', 0, '40.53000', '-79.07000'), ('Chevy Chase Height', 1511, '40.63900', '-79.14370'), ('Clymer', 1547, '40.66830', '-79.01400'), ('Creekside', 323, '40.68000', '-79.19350'), ('Ernest', 501, '40.67850', '-79.16500'), ('Glen Campbell', 306, '40.81830', '-78.83050'), ('Homer City', 1844, '40.53960', '-79.15950'), ('Indiana', 14895, '40.62190', '-79.15580'), ('Jacksonville', 675, '40.54150', '-79.28340'), ('Lucerne Mines', 951, '40.55440', '-79.15580'), ('Marion Center', 451, '40.77020', '-79.04800'), ('Plumville', 342, '40.79380', '-79.18050'), ('Saltsburg', 955, '40.48520', '-79.44650'), ('Shelocta', 127, '40.65650', '-79.30240'), ('Smicksburg', 49, '40.87000', '-79.17180'), ('West Lebanon', 0, '40.60000', '-79.35000')], 'partOfState': 'west central', 'wfo': 'PBZ'}, +'PAZ024': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Ashville', 279, '40.55910', '-78.54740'), ('Beaverdale', 1230, '40.32290', '-78.69880'), ('Belmont', 2846, '40.28240', '-78.89170'), ('Belsano', 1035, '40.55000', '-78.86000'), ('Blandburg', 490, '40.69000', '-78.44000'), ('Brownstown', 883, '40.33290', '-78.93700'), ('Carrolltown', 1049, '40.60420', '-78.70710'), ('Cassandra', 136, '40.40810', '-78.64160'), ('Chest Springs', 110, '40.57870', '-78.61010'), ('Colver', 1035, '40.54290', '-78.78760'), ('Cresson', 1631, '40.46260', '-78.58660'), ('Dale', 1503, '40.31180', '-78.90410'), ('Dunlo', 1257, '40.28000', '-78.73000'), ('East Conemaugh', 1291, '40.34750', '-78.88610'), ('Ebensburg', 3091, '40.48860', '-78.72700'), ('Elim', 4175, '40.29780', '-78.94290'), ('Ferndale', 1834, '40.28840', '-78.91720'), ('Gallitzin', 1756, '40.48220', '-78.55600'), ('Geistown', 2555, '40.29380', '-78.87170'), ('Hastings', 1398, '40.66490', '-78.70900'), ('Johnstown', 23906, '40.32540', '-78.91950'), ('Lilly', 948, '40.42390', '-78.62000'), ('Lorain', 747, '40.29580', '-78.89530'), ('Loretto', 1190, '40.50870', '-78.63630'), ('Nanty-Glo', 3117, '40.47030', '-78.83490'), ('Northern Cambria', 2534, '40.66630', '-78.78080'), ('Patton', 2023, '40.63270', '-78.64930'), ('Portage', 2837, '40.38680', '-78.67550'), ('Prince Gallitzin State Park', 2023, '40.65000', '-78.57000'), ('Scalp Level', 851, '40.24930', '-78.84390'), ('Sidman', 1189, '40.32330', '-78.76550'), ('South Fork', 1138, '40.36380', '-78.79160'), ('Spring Hill', 970, '40.37110', '-78.66650'), ('Summerhill', 521, '40.37570', '-78.76130'), ('Tunnelhill', 409, '40.47390', '-78.54340'), ('Vinco', 1429, '40.40960', '-78.84220'), ('Vintondale', 528, '40.47860', '-78.91250'), ('Westmont', 5523, '40.31910', '-78.95230'), ('Wilmore', 252, '40.38610', '-78.71690')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ025': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Altoona', 49523, '40.50780', '-78.40130'), ('Bald Eagle', 91, '40.73000', '-78.17000'), ('Bellwood', 2016, '40.60110', '-78.33420'), ('Canoe Creek State Park', 49523, '40.50000', '-78.32000'), ('Claysburg', 1503, '40.29210', '-78.44960'), ('Duncansville', 1238, '40.42630', '-78.42960'), ('Hollidaysburg', 5368, '40.43010', '-78.39310'), ('Horseshoe Curve', 49523, '40.50000', '-78.47000'), ('Lakemont', 5368, '40.47000', '-78.38000'), ('Martinsburg', 2236, '40.31030', '-78.32450'), ('Newry', 245, '40.39310', '-78.43530'), ('Roaring Spring', 2418, '40.33370', '-78.39670'), ('Royer', 1345, '40.42000', '-78.27000'), ('Sinking Valley', 2016, '40.57000', '-78.27000'), ('Ski Gap', 1503, '40.32000', '-78.52000'), ('Tipton', 1225, '40.63630', '-78.29860'), ('Tyrone', 5528, '40.67680', '-78.24620'), ('Williamsburg', 1345, '40.46390', '-78.20570')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ026': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alexandria', 401, '40.55890', '-78.10010'), ('Broad Top City', 384, '40.20150', '-78.14070'), ('Cassville', 152, '40.29370', '-78.02780'), ('Coalmont', 128, '40.21100', '-78.20070'), ('Entriken', 216, '40.34000', '-78.18000'), ('Franklinville', 455, '40.64000', '-78.06000'), ('Huntingdon', 6918, '40.49650', '-78.01030'), ('Mapleton', 473, '40.39290', '-77.93950'), ('Marklesburg', 216, '40.38400', '-78.16930'), ('McAlevys Fort', 1386, '40.64000', '-77.82000'), ('Mill Creek', 351, '40.43740', '-77.92940'), ('Mount Union', 2504, '40.38490', '-77.88200'), ('Orbisonia', 425, '40.24330', '-77.89360'), ('Petersburg', 455, '40.57360', '-78.04960'), ('Raystown Dam', 6918, '40.45000', '-78.01000'), ('Saltillo', 343, '40.21180', '-78.00780'), ('Shade Gap', 97, '40.18000', '-77.86570'), ('Shirleysburg', 140, '40.29690', '-77.87740'), ('Shy Beaver', 128, '40.29000', '-78.21000'), ('Spruce Creek', 91, '40.62000', '-78.14000'), ('Three Springs', 445, '40.19520', '-77.98390'), ('Trough Creek State Park', 216, '40.34000', '-78.12000'), ('Warriors Mark', 91, '40.70000', '-78.11000'), ('Whipple Dam State Park', 1141, '40.69000', '-77.84000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ027': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alfarata', 2144, '40.66000', '-77.48000'), ('Allensville', 405, '40.53000', '-77.81000'), ('Belleville', 1386, '40.60280', '-77.72570'), ('Belltown', 975, '40.70000', '-77.40000'), ('Burnham', 2144, '40.63660', '-77.56320'), ('Lewistown', 8998, '40.59730', '-77.57350'), ('McVeytown', 405, '40.49810', '-77.74130'), ('Milroy', 1386, '40.71480', '-77.58690'), ('Newton Hamilton', 272, '40.39280', '-77.83540'), ('Reeds Gap State Park', 1386, '40.73000', '-77.47000'), ('Reedsville', 858, '40.65930', '-77.60200'), ('Seven Mountains', 1386, '40.74000', '-77.62000'), ('Strodes Mills', 1386, '40.55000', '-77.66000'), ('Yeagertown', 1035, '40.64090', '-77.58040')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ028': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blacklog', 405, '40.42000', '-77.68000'), ('Honey Grove', 252, '40.42000', '-77.55000'), ('McAlisterville', 765, '40.63000', '-77.28000'), ('Mifflin', 627, '40.56780', '-77.40480'), ('Mifflintown', 861, '40.57110', '-77.39510'), ('Perulack', 252, '40.34000', '-77.66000'), ('Port Royal', 977, '40.53390', '-77.39090'), ('Spruce Hill', 977, '40.47000', '-77.46000'), ('Thompsontown', 765, '40.56620', '-77.23530'), ('Walnut', 627, '40.53000', '-77.48000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ029': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Allenport', 549, '40.09090', '-79.85690'), ('Amity', 0, '40.05000', '-80.20000'), ('Avella', 0, '40.28000', '-80.47000'), ('Baidland', 1576, '40.18910', '-79.95510'), ('Beallsville', 511, '40.05860', '-80.03310'), ('Bentleyville', 2502, '40.11780', '-80.00360'), ('Burgettstown', 1576, '40.38120', '-80.39220'), ('California', 5274, '40.06620', '-79.91080'), ('Canonsburg', 8607, '40.26380', '-80.18680'), ('Cecil-Bishop', 2701, '40.31640', '-80.19100'), ('Centerville', 247, '40.03070', '-79.95930'), ('Charleroi', 4871, '40.13920', '-79.90050'), ('Claysville', 724, '40.12060', '-80.41320'), ('Coal Center', 134, '40.06990', '-79.90120'), ('Cokeburg', 705, '40.09840', '-80.06630'), ('Deemston', 809, '40.03210', '-80.02670'), ('Donora', 5653, '40.17830', '-79.86340'), ('Dunlevy', 397, '40.11240', '-79.85870'), ('East Washington', 1930, '40.17370', '-80.23290'), ('Eighty Four', 0, '40.18000', '-80.13000'), ('Elco', 362, '40.08500', '-79.88310'), ('Ellsworth', 1083, '40.10800', '-80.02210'), ('Finleyville', 459, '40.25290', '-80.00220'), ('Fredericktown-Mill', 1237, '39.99740', '-80.00510'), ('Gastonville', 3002, '40.26440', '-80.00730'), ('Green Hills', 18, '40.11560', '-80.30880'), ('Hickory', 0, '40.30000', '-80.32000'), ('Houston', 1314, '40.25000', '-80.21180'), ('Long Branch', 539, '40.10270', '-79.87890'), ('Marianna', 626, '40.01120', '-80.11440'), ('McDonald', 2281, '40.37020', '-80.23250'), ('McGovern', 2538, '40.24030', '-80.22910'), ('McMurray', 4726, '40.28080', '-80.08830'), ('Monongahela', 4761, '40.19830', '-79.92260'), ('New Eagle', 2262, '40.20620', '-79.95450'), ('North Charleroi', 1409, '40.15040', '-79.90840'), ('Roscoe', 848, '40.07760', '-79.86490'), ('Scenery Hill', 0, '40.08000', '-80.07000'), ('Speers', 1241, '40.12260', '-79.88010'), ('Stockdale', 555, '40.08330', '-79.85070'), ('Taylorstown', 0, '40.17000', '-80.38000'), ('Thompsonville', 3592, '40.28130', '-80.11990'), ('Twilight', 241, '40.11430', '-79.89050'), ('Washington', 15268, '40.17430', '-80.24740'), ('West Alexander', 320, '40.10410', '-80.50800'), ('West Brownsville', 1075, '40.03130', '-79.89200'), ('West Finley', 0, '40.00000', '-80.47000'), ('West Middletown', 144, '40.24510', '-80.42550'), ('Wickerham Manor-Fisher', 1931, '40.17540', '-79.90450'), ('Wolfdale', 2873, '40.19870', '-80.29970')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAZ031': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aleppo', 0, '39.82000', '-80.45000'), ('Carmichaels', 556, '39.89770', '-79.97520'), ('Clarksville', 234, '39.97440', '-80.04430'), ('Fairdale', 1955, '39.88840', '-79.96910'), ('Greensboro', 295, '39.79210', '-79.91300'), ('Nemacolin', 1034, '39.87760', '-79.92420'), ('Rices Landing', 443, '39.94610', '-79.99480'), ('Spraggs', 0, '39.78000', '-80.22000'), ('Waynesburg', 4184, '39.89860', '-80.18580')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAZ033': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Acosta', 1364, '40.10000', '-79.04000'), ('Addison', 214, '39.74350', '-79.33530'), ('Benson', 194, '40.20260', '-78.92940'), ('Berlin', 2192, '39.92240', '-78.95250'), ('Boswell', 1364, '40.16080', '-79.02710'), ('Callimont', 51, '39.79660', '-78.92050'), ('Casselman', 99, '39.88540', '-79.21100'), ('Central City', 1258, '40.10970', '-78.80530'), ('Confluence', 834, '39.80950', '-79.35430'), ('Davidsville', 1119, '40.23190', '-78.93690'), ('Friedens', 1673, '40.04260', '-79.00530'), ('Garrett', 449, '39.86420', '-79.06170'), ('Hooversville', 779, '40.15040', '-78.91460'), ('Indian Lake', 450, '40.04750', '-78.85950'), ('Jennerstown', 714, '40.16440', '-79.06210'), ('Jerome', 1068, '40.21340', '-78.98390'), ('Meyersdale', 2473, '39.81310', '-79.02680'), ('Mount Davis', 878, '39.79000', '-79.16000'), ('New Baltimore', 168, '39.98580', '-78.77200'), ('Ogletown', 214, '40.19000', '-78.70000'), ('Rockwood', 954, '39.91670', '-79.15710'), ('Salisbury', 878, '39.75420', '-79.08460'), ('Seven Springs', 127, '40.02510', '-79.29150'), ('Shanksville', 245, '40.01740', '-78.90690'), ('Somerset', 6762, '40.00500', '-79.07830'), ('Stoystown', 428, '40.10340', '-78.95530'), ('Tire Hill', 1834, '40.27000', '-78.92000'), ('Wellersburg', 176, '39.72780', '-78.84980'), ('Windber', 4395, '40.23380', '-78.82590')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ034': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Barnes Gap', 0, '39.77000', '-78.34000'), ('Bedford', 3141, '40.01490', '-78.50440'), ('Blue Knob State Park', 1230, '40.26000', '-78.59000'), ('Breezewood', 20, '39.99000', '-78.24000'), ('Buffalo Mills', 291, '39.92000', '-78.63000'), ('Cessna', 3141, '40.06000', '-78.51000'), ('Clearville', 1905, '39.91000', '-78.37000'), ('Everett', 1905, '40.01270', '-78.36630'), ('Hopewell', 222, '40.13460', '-78.26670'), ('Hyndman', 1005, '39.82100', '-78.72110'), ('Inglesmith', 146, '39.75000', '-78.42000'), ('Lake Gordon', 1005, '39.77000', '-78.67000'), ('Manns Choice', 291, '40.00280', '-78.59170'), ('New Enterprise', 269, '40.16000', '-78.37000'), ('New Paris', 214, '40.10770', '-78.64320'), ('Osterburg', 88, '40.18000', '-78.53000'), ('Queen', 1503, '40.25000', '-78.51000'), ('Rainsburg', 146, '39.89520', '-78.51620'), ('Saxton', 803, '40.21300', '-78.24720'), ('Schellsburg', 316, '40.04860', '-78.64300'), ('Woodbury', 269, '40.22570', '-78.36670')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ035': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Big Cove Tannery', 1073, '39.84000', '-78.05000'), ('Cove Mills', 1926, '39.78000', '-78.18000'), ('Crystal Springs', 20, '39.92000', '-78.24000'), ('Fort Littleton', 97, '40.06000', '-77.93000'), ('Harrissonville', 1073, '39.97000', '-78.06000'), ('Locust Grove', 1926, '39.83000', '-78.25000'), ('McConnellsburg', 1073, '39.93150', '-77.99530'), ('Needmore', 1926, '39.86000', '-78.15000'), ('Saluvia', 20, '40.00000', '-78.10000'), ('Sideling Hill Rest Area', 1073, '40.03000', '-78.06000'), ('Valley-Hi', 20, '40.02700', '-78.19080'), ('Waterfall', 343, '40.12000', '-78.06000'), ('Wells Tannery', 20, '40.09000', '-78.18000')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ036': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Amberson Valley', 231, '40.14000', '-77.69000'), ('Chambersburg', 17862, '39.93220', '-77.65640'), ('Claylick', 1540, '39.77000', '-77.91000'), ('Doylesburg', 372, '40.22000', '-77.70000'), ('Fannettsburg', 97, '40.05000', '-77.83000'), ('Fayetteville', 2774, '39.91240', '-77.56570'), ('Fort Loudon', 1540, '39.94000', '-77.87000'), ('Greencastle', 3722, '39.79050', '-77.72690'), ('Marion', 17862, '39.86000', '-77.67000'), ('Mercersburg', 1540, '39.83140', '-77.90180'), ('Mont Alto', 1357, '39.83960', '-77.55470'), ('Orrstown', 231, '40.05830', '-77.60950'), ('Rouzerville', 862, '39.73400', '-77.52480'), ('Roxbury', 231, '40.09000', '-77.67000'), ('Scotland', 1618, '39.96000', '-77.59000'), ('St. Thomas', 17862, '39.94000', '-77.74000'), ('Upper Strasburg', 17862, '40.02000', '-77.70000'), ('Waynesboro', 9614, '39.75200', '-77.58240'), ('Willow Hill', 97, '40.11000', '-77.77000')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ037': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blossburg', 1480, '41.68290', '-77.06660'), ('Covington', 1480, '41.74000', '-77.07000'), ('Elkland', 1786, '41.98920', '-77.31480'), ('Gaines', 1325, '41.78000', '-77.54000'), ('Keeneyville', 3328, '41.86000', '-77.26000'), ('Knoxville', 617, '41.95680', '-77.43580'), ('Leetonia', 1325, '41.62000', '-77.52000'), ('Leonard Harrison State Park', 3328, '41.69000', '-77.41000'), ('Mansfield', 3411, '41.80570', '-77.07870'), ('Millerton', 207, '41.98000', '-76.95000'), ('Morris', 3328, '41.65000', '-77.27000'), ('Ogdensburg', 1807, '41.59000', '-76.96000'), ('Roseville', 207, '41.86540', '-76.95890'), ('Tioga', 622, '41.90490', '-77.13540'), ('Tioga Junction', 622, '41.95000', '-77.12000'), ('Wellsboro', 3328, '41.74610', '-77.30290'), ('Westfield', 1190, '41.91780', '-77.54060')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ038': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alba', 186, '41.70430', '-76.82780'), ('Athens', 3415, '41.95040', '-76.51710'), ('Bentley Creek', 617, '41.95000', '-76.68330'), ('Browntown', 564, '41.65281', '-76.24000'), ('Brushville', 318, '41.81670', '-76.18330'), ('Burlington', 182, '41.78280', '-76.60890'), ('Camptown', 564, '41.73330', '-76.23330'), ('Canton', 1807, '41.65700', '-76.85300'), ('Chemung', 987, '42.00000', '-76.61670'), ('Cherrytown', 564, '41.68330', '-76.28330'), ('Cowley', 23677, '41.88330', '-76.76670'), ('Dunning', 617, '41.93330', '-76.78330'), ('Durell', 3024, '41.71670', '-76.36670'), ('East Smithfield', 182, '41.86670', '-76.61670'), ('Evergreen', 306, '41.61670', '-76.41670'), ('Franklindale', 565, '41.70000', '-76.55000'), ('Gillett', 617, '41.95000', '-76.78330'), ('Grover', 1807, '41.61670', '-76.86670'), ('Herrick', 318, '41.78330', '-76.25000'), ('Herrickville', 318, '41.80000', '-76.25000'), ('Hollenback', 564, '41.60000', '-76.23330'), ('Leona', 23677, '41.81670', '-76.73330'), ('Le Raysville', 318, '41.83760', '-76.18070'), ('Le Roy', 186, '41.66670', '-76.70000'), ('Liberty Corners', 565, '41.70000', '-76.41670'), ('Litchfield', 573, '41.96670', '-76.43330'), ('Macedonia', 3024, '41.76670', '-76.38330'), ('Milan', 3415, '41.91670', '-76.50000'), ('Minnequa', 186, '41.68330', '-76.83330'), ('Monroe', 565, '41.71360', '-76.47560'), ('Monroeton', 565, '41.71670', '-76.46670'), ('Mosherville', 7753, '41.98330', '-76.88330'), ('New Albany', 306, '41.60080', '-76.44330'), ('North Towanda', 3024, '41.78330', '-76.45000'), ('Orwell', 382, '41.88330', '-76.26670'), ('Overton', 306, '41.56670', '-76.50000'), ('Ridgebury', 617, '41.96670', '-76.71670'), ('Riggs', 182, '41.83330', '-76.56670'), ('Rome', 382, '41.85790', '-76.34160'), ('Rushville', 318, '41.78330', '-76.13330'), ('Sayre', 5813, '41.98590', '-76.52100'), ('Sheshequin', 3024, '41.85000', '-76.48330'), ('Silvara', 396, '41.70000', '-76.13330'), ('South Branch', 306, '41.65000', '-76.43330'), ('South Waverly', 987, '41.99560', '-76.54430'), ('Springfield', 23677, '41.85000', '-76.73330'), ('Spring Hill', 396, '41.70000', '-76.18330'), ('Stevensville', 318, '41.76670', '-76.18330'), ('Sugar Run', 564, '41.65000', '-76.23330'), ('Sylvania', 200, '41.80500', '-76.85750'), ('Terrytown', 564, '41.66670', '-76.28330'), ('Towanda', 3024, '41.77090', '-76.44690'), ('Troy', 23677, '41.78470', '-76.78960'), ('Ulster', 3024, '41.85000', '-76.50000'), ('Warren Center', 290, '41.93330', '-76.16670'), ('West Burlington', 182, '41.76670', '-76.66670'), ('West Franklin', 182, '41.70000', '-76.61670'), ('West Le Roy', 186, '41.66670', '-76.75000'), ('West Warren', 318, '41.93330', '-76.23330'), ('Wetona', 182, '41.83330', '-76.68330'), ('Wilawana', 987, '41.98330', '-76.60000'), ('Wilmot', 564, '41.60000', '-76.31670'), ('Windham', 573, '41.96670', '-76.28330'), ('Wyalusing', 564, '41.66910', '-76.26270'), ('Wysox', 3024, '41.76670', '-76.40000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ039': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alford', 878, '41.80000', '-75.78330'), ('Ararat', 299, '41.83330', '-75.51670'), ('Auburn Center', 459, '41.68330', '-76.03330'), ('Birchardville', 91, '41.85000', '-76.01670'), ('Brackney', 53008, '41.98330', '-75.91670'), ('Burnwood', 368, '41.78330', '-75.51670'), ('Clifford', 9804, '41.65000', '-75.60000'), ('Dimock', 1664, '41.75000', '-75.90000'), ('Elkdale', 368, '41.68330', '-75.56670'), ('Elk Lake', 1664, '41.75000', '-75.95000'), ('Forest City', 1855, '41.65160', '-75.46970'), ('Friendsville', 91, '41.91790', '-76.04730'), ('Gibson', 878, '41.80000', '-75.65000'), ('Glenwood', 713, '41.65000', '-75.73330'), ('Great Bend', 700, '41.97270', '-75.74560'), ('Hallstead', 1216, '41.96190', '-75.74730'), ('Harford', 878, '41.78330', '-75.70000'), ('Hickory Grove', 700, '41.96670', '-75.68330'), ('Hop Bottom', 333, '41.70640', '-75.76720'), ('Jackson', 299, '41.83330', '-75.60000'), ('Lakeside', 878, '41.88330', '-75.66670'), ('Lakeview', 1809, '41.86670', '-75.61670'), ('Lanesboro', 588, '41.96230', '-75.58240'), ('Lawton', 318, '41.78330', '-76.06670'), ('Lenoxville', 333, '41.66670', '-75.65000'), ('Little Meadows', 290, '41.99310', '-76.13090'), ('Middletown Center', 91, '41.86670', '-76.10000'), ('Montrose', 1664, '41.83400', '-75.87690'), ('New Milford', 878, '41.87590', '-75.72690'), ('Royal', 333, '41.66670', '-75.63330'), ('Rush', 91, '41.78330', '-76.05000'), ('South Montrose', 1664, '41.80000', '-75.88330'), ('Springville', 459, '41.70000', '-75.93330'), ('Susquehanna', 1809, '41.93330', '-75.60000'), ('Thompson', 299, '41.86230', '-75.51390'), ('Uniondale', 368, '41.71430', '-75.48390'), ('West Auburn', 396, '41.73330', '-76.10000'), ('West Lenox', 333, '41.71670', '-75.70000'), ('Wyoanna', 1664, '41.93330', '-75.91670')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ040': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Abrahamsville', 484, '41.76670', '-75.11670'), ('Aldenville', 243, '41.65000', '-75.36670'), ('Browndale', 1855, '41.66670', '-75.45000'), ('Calkins', 4874, '41.65000', '-75.15000'), ('Damascus', 484, '41.70000', '-75.06670'), ('Equinunk', 1330, '41.85000', '-75.21670'), ('Hankins', 420, '41.81670', '-75.10000'), ('Hiawatha', 216, '41.91670', '-75.36670'), ('Lake Como', 1330, '41.85000', '-75.33330'), ('Lakewood', 216, '41.85000', '-75.36670'), ('Lookout', 1330, '41.78330', '-75.16670'), ('Milanville', 484, '41.66670', '-75.06670'), ('Orson', 299, '41.81670', '-75.45000'), ('Pleasant Mount', 368, '41.73330', '-75.41670'), ('Preston Park', 1330, '41.88330', '-75.35000'), ('Rileyville', 292, '41.71670', '-75.21670'), ('Rutledgedale', 292, '41.71670', '-75.18330'), ('Scott Center', 216, '41.93330', '-75.40000'), ('Shehawken', 216, '41.88330', '-75.38330'), ('Sherman', 1936, '41.98330', '-75.43330'), ('Stalker', 484, '41.83330', '-75.11670'), ('Starlight', 1330, '41.90000', '-75.33330'), ('Starruca', 216, '41.90280', '-75.45440'), ('Winterdale', 1330, '41.95000', '-75.35000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ041': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Barbours', 693, '41.40000', '-76.78000'), ('Buttonwood', 1480, '41.49000', '-77.16000'), ('Cammal', 260, '41.39000', '-77.39000'), ('Cedar Run', 3328, '41.52000', '-77.45000'), ('English Center', 260, '41.44000', '-77.25000'), ('Little Pine State Park', 260, '41.36000', '-77.33000'), ('Ralston', 1807, '41.50000', '-76.94000'), ('Salladasburg', 260, '41.27650', '-77.22760'), ('Slate Run', 557, '41.47000', '-77.49000'), ('Trout Run', 2679, '41.39000', '-77.08000'), ('Waterville', 260, '41.32000', '-77.35000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ042': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Dushore', 663, '41.52530', '-76.39910'), ('Eagles Mere', 153, '41.40970', '-76.58330'), ('Forksville', 147, '41.49090', '-76.60390'), ('Kettle Creek Gorge', 153, '41.42000', '-76.69000'), ('Laporte', 290, '41.41860', '-76.49170'), ('Lincoln Falls', 147, '41.51000', '-76.68000'), ('Muncy Valley', 153, '41.35000', '-76.60000'), ('Ricketts Glen State Park', 955, '41.35000', '-76.31000'), ('Shunk', 1807, '41.56000', '-76.76000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ043': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aldovin', 1911, '41.61670', '-75.93330'), ('Avery', 1911, '41.63330', '-75.93330'), ('Beaumont', 2888, '41.41670', '-76.00000'), ('Center Moreland', 2557, '41.41670', '-75.93330'), ('Eatonville', 1911, '41.51670', '-75.96670'), ('Evans Falls', 1911, '41.46670', '-76.01670'), ('Factoryville', 1144, '41.56000', '-75.78350'), ('Falls', 1911, '41.46670', '-75.88330'), ('Forkston', 396, '41.53330', '-76.13330'), ('Jenningsville', 396, '41.58330', '-76.15000'), ('Kasson Brook', 2888, '41.46670', '-76.15000'), ('Laceyville', 396, '41.64500', '-76.15950'), ('Lake Carey', 1911, '41.60000', '-75.95000'), ('Lake Sheridan', 713, '41.60000', '-75.76670'), ('Lake Winola', 1911, '41.50000', '-75.86670'), ('Lovelton', 396, '41.53330', '-76.18330'), ('Mehoopany', 459, '41.56670', '-76.06670'), ('Meshoppen', 459, '41.61360', '-76.04590'), ('Mill City', 1144, '41.50000', '-75.85000'), ('Nicholson', 713, '41.62740', '-75.78570'), ('Noxen', 2888, '41.43330', '-76.06670'), ('Osterhout', 1911, '41.51670', '-75.91670'), ('Ruggles', 2888, '41.40000', '-76.05000'), ('Russell Hill', 459, '41.58330', '-76.00000'), ('Stowell', 396, '41.58330', '-76.20000'), ('Stull', 2888, '41.41670', '-76.10000'), ('Tunkhannock', 1911, '41.54100', '-75.94930'), ('Vernon', 1911, '41.45000', '-75.96670'), ('Vosburg', 1911, '41.56670', '-76.00000'), ('Walls Corners', 1144, '41.53330', '-75.80000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ044': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Archbald', 6220, '41.50720', '-75.54220'), ('Blakely', 7027, '41.48780', '-75.59780'), ('Carbondale', 9804, '41.57110', '-75.50550'), ('Clarks Green', 1630, '41.49970', '-75.69560'), ('Clarks Summit', 5126, '41.49020', '-75.70750'), ('Cortez', 2140, '41.46670', '-75.46670'), ('Craig', 1630, '41.55000', '-75.68330'), ('Daleville', 1883, '41.30000', '-75.51670'), ('Dalton', 1294, '41.53790', '-75.73860'), ('Dickson City', 6205, '41.46880', '-75.63480'), ('Drinker', 2140, '41.39514', '-75.47100'), ('Dunmore', 14018, '41.41560', '-75.60710'), ('East Benton', 1294, '41.58330', '-75.66670'), ('Elmhurst', 1883, '41.38330', '-75.55000'), ('Fells Corners', 1883, '41.30000', '-75.53330'), ('Fleetville', 1294, '41.60000', '-75.71670'), ('Glenburn', 1212, '41.50920', '-75.73520'), ('Gouldsboro', 1883, '41.25000', '-75.46670'), ('Jermyn', 2287, '41.52670', '-75.54660'), ('Jessup', 4718, '41.45820', '-75.54770'), ('La Plume', 1144, '41.55000', '-75.76670'), ('Lehigh', 1883, '41.26670', '-75.46670'), ('Marshbrook', 713, '41.63330', '-75.68330'), ('Mayfield', 1756, '41.53700', '-75.53370'), ('Moosic', 5575, '41.35700', '-75.70230'), ('Moscow', 1883, '41.34030', '-75.52910'), ('Mount Cobb', 2140, '41.42860', '-75.49720'), ('Oakhill', 5575, '41.36670', '-75.71670'), ('Old Forge', 8798, '41.36890', '-75.74230'), ('Olyphant', 4978, '41.44920', '-75.58020'), ('Peckville', 7027, '41.48330', '-75.61670'), ('Quicktown', 1883, '41.36670', '-75.46670'), ('Richmondale', 738, '41.63330', '-75.50000'), ('Scranton', 76415, '41.40400', '-75.66610'), ('Simpson', 9804, '41.58330', '-75.48330'), ('Springbrook Corner', 1883, '41.30000', '-75.60000'), ('Taylor', 6475, '41.39870', '-75.71370'), ('Throop', 4010, '41.43850', '-75.59600'), ('Tompkinsville', 2287, '41.58330', '-75.61670'), ('Vandling', 738, '41.63110', '-75.47060'), ('Wallsville', 1294, '41.58330', '-75.73330'), ('Waverly', 1212, '41.51670', '-75.71670'), ('West Scranton', 76415, '41.41670', '-75.68330'), ('Wimmers', 2140, '41.40420', '-75.48100'), ('Winton', 6220, '41.48330', '-75.55000'), ('Yostville', 1883, '41.30000', '-75.56670')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ045': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Avis', 1492, '41.18620', '-77.31640'), ('Beech Creek', 717, '41.07470', '-77.58600'), ('Carroll', 435, '41.06000', '-77.23000'), ('Dunnstown', 1365, '41.14690', '-77.42110'), ('Lamar', 1568, '41.01000', '-77.51000'), ('Lock Haven', 9149, '41.13590', '-77.45320'), ('Loganton', 435, '41.03370', '-77.30240'), ('Mackeyville', 1123, '41.05000', '-77.43000'), ('McElhattan', 1492, '41.17000', '-77.37000'), ('Mill Hall', 1568, '41.10440', '-77.49040')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ046': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Biggertown', 955, '41.26000', '-76.50000'), ('Cogan Station', 2679, '41.31000', '-77.03000'), ('Collomsville', 4482, '41.15000', '-77.15000'), ('Duboistown', 1280, '41.22310', '-77.03830'), ('Elimsport', 1280, '41.13000', '-77.01000'), ('Garden View', 2679, '41.25650', '-77.04870'), ('Hughesville', 2220, '41.23850', '-76.72640'), ('Jersey Shore', 4482, '41.20070', '-77.26700'), ('Lairdsville', 693, '41.23000', '-76.61000'), ('Loyalsockville', 4777, '41.32000', '-76.92000'), ('Montgomery', 1695, '41.17090', '-76.87520'), ('Montoursville', 4777, '41.24710', '-76.92000'), ('Muncy', 2663, '41.20190', '-76.78590'), ('Picture Rocks', 693, '41.28000', '-76.70920'), ('South Williamsport', 6412, '41.22990', '-77.00130'), ('Williamsport', 30706, '41.24000', '-77.02000')], 'partOfState': 'north central', 'wfo': 'CTP'}, +'PAZ047': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Albert', 671, '41.11670', '-75.95000'), ('Alden', 10955, '41.18330', '-76.01670'), ('Ashley', 2866, '41.21370', '-75.89900'), ('Ashmore', 144, '40.96670', '-75.90000'), ('Avoca', 2851, '41.33770', '-75.74310'), ('Beach Haven', 1528, '41.06670', '-76.18330'), ('Bear Creek', 269, '41.18330', '-75.76670'), ('Briggsville', 1528, '41.03330', '-76.13330'), ('Carverton', 2833, '41.35000', '-75.85000'), ('Conyngham', 1958, '40.99150', '-76.06020'), ('Courtdale', 791, '41.28550', '-75.91520'), ('Dallas', 2557, '41.33180', '-75.97230'), ('Deringer', 1958, '40.95000', '-76.15000'), ('Dorrance', 671, '41.10000', '-76.00000'), ('Drifton', 144, '41.00000', '-75.91670'), ('Drums', 3542, '41.01670', '-76.00000'), ('Dupont', 2719, '41.32400', '-75.74240'), ('Duryea', 4634, '41.35180', '-75.77630'), ('East Berwick', 1998, '41.06470', '-76.22070'), ('Edwardsville', 4984, '41.26040', '-75.90700'), ('Exeter', 5955, '41.33020', '-75.82250'), ('Fern Brook', 2557, '41.33330', '-75.96670'), ('Fern Glen', 1528, '40.95000', '-76.16670'), ('Forest Park', 0, '41.19220', '-75.78490'), ('Forty Fort', 4579, '41.28900', '-75.87050'), ('Freeland', 3643, '41.02070', '-75.89630'), ('Glendale', 2851, '41.33330', '-75.71670'), ('Glen Lyon', 1881, '41.18400', '-76.07140'), ('Glen Summit', 2866, '41.15000', '-75.86670'), ('Harding', 5955, '41.36670', '-75.81670'), ('Harveys Lake', 2888, '41.36210', '-76.03220'), ('Hazleton', 23329, '40.95010', '-75.97230'), ('Hudson', 43123, '41.27482', '-75.83600'), ('Hughestown', 1541, '41.33010', '-75.77190'), ('Huntington Mills', 215, '41.18330', '-76.23330'), ('Inkerman', 1502, '41.30000', '-75.81670'), ('Jeanesville', 23329, '40.93330', '-75.96670'), ('Jeddo', 144, '40.99240', '-75.89760'), ('Kingston', 13855, '41.26410', '-75.88740'), ('Koonsville', 959, '41.16670', '-76.16670'), ('Laflin', 1502, '41.28950', '-75.79620'), ('Larksville', 4694, '41.25940', '-75.93230'), ('Laurel Run', 723, '41.21930', '-75.84760'), ('Lee', 1881, '41.16670', '-76.10000'), ('Lehman', 2888, '41.31670', '-76.03330'), ('Luzerne', 2952, '41.28600', '-75.89720'), ('Lynwood', 6507, '41.23330', '-75.96670'), ('Miners Mills', 43123, '41.26703', '-75.83200'), ('Mountain Mills', 0, '41.16960', '-75.87730'), ('Mountain Top', 15269, '41.16960', '-75.87700'), ('Muhlenberg', 959, '41.23330', '-76.15000'), ('Nanticoke', 10955, '41.20030', '-76.00000'), ('Nescopeck', 1528, '41.05270', '-76.21250'), ('New Columbus', 215, '41.16890', '-76.28660'), ('Nuangola', 671, '41.15830', '-75.97800'), ('Orange', 2557, '41.40000', '-75.91670'), ('Parsons', 43123, '41.26670', '-75.85000'), ('Penn Lake Park', 269, '41.11490', '-75.77460'), ('Penobscot', 2866, '41.16670', '-75.88330'), ('Pikes Creek', 2888, '41.30000', '-76.10000'), ('Pittston', 8104, '41.32610', '-75.78790'), ('Plains', 43123, '41.27350', '-75.85390'), ('Plymouth', 6507, '41.24110', '-75.95020'), ('Pond Hill', 959, '41.13330', '-76.11670'), ('Preston', 1023, '41.20000', '-75.91670'), ('Pringle', 991, '41.27660', '-75.90310'), ('Ransom', 5955, '41.40000', '-75.83330'), ('Rock Glen', 1528, '40.96670', '-76.18330'), ('Shavertown', 2557, '41.31670', '-75.95000'), ('Shickshinny', 959, '41.15320', '-76.15160'), ('Slocum', 1881, '41.13330', '-76.05000'), ('Stockton', 144, '40.96670', '-75.91670'), ('Stoddartsville', 269, '41.13330', '-75.63330'), ('Sugar Notch', 1023, '41.19220', '-75.93220'), ('Sweet Valley', 1881, '41.28330', '-76.15000'), ('Swoyersville', 5157, '41.29850', '-75.87900'), ('Warrior Run', 624, '41.18740', '-75.95290'), ('West Hazleton', 3542, '40.97070', '-76.01320'), ('Westminister', 1502, '41.28330', '-75.78330'), ('Weston', 1958, '40.93330', '-76.13330'), ('West Pittston', 5072, '41.32940', '-75.80000'), ('West Wyoming', 2833, '41.31940', '-75.85240'), ('White Haven', 0, '41.05530', '-75.77720'), ('Wilkes-Barre', 43123, '41.24640', '-75.87580'), ('Wilkes-Barre Township', 3572, '41.23750', '-75.86310'), ('Woodside-Drifton', 1360, '41.01190', '-75.89810'), ('Wyoming', 3221, '41.30580', '-75.84180'), ('Yatesville', 649, '41.30290', '-75.78200')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ048': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Blooming Grove', 1303, '41.36670', '-75.16670'), ('Bushkill', 1177, '41.10000', '-75.00000'), ('Dingmans Ferry', 1177, '41.21670', '-74.88330'), ('Greeley', 1303, '41.41670', '-75.00000'), ('Kimbles', 1303, '41.46670', '-75.13330'), ('Lackawaxen', 1303, '41.48330', '-75.00000'), ('Ledgerdale', 1303, '41.36670', '-75.31670'), ('Lords Valley', 1303, '41.36670', '-75.06670'), ('Milford', 1104, '41.32400', '-74.80190'), ('Millrift', 9060, '41.41670', '-74.75000'), ('Panther', 1169, '41.28330', '-75.30000'), ('Paupack', 1303, '41.40000', '-75.20000'), ('Pecks Pond', 1303, '41.30000', '-75.10000'), ('Rowland', 1303, '41.46670', '-75.05000'), ('Shohola', 1104, '41.46670', '-74.91670'), ('Tamiment', 1177, '41.13998', '-75.02100'), ('Twin Lakes', 1104, '41.40000', '-74.91670'), ('Westcolang Park', 1303, '41.51670', '-75.05000')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ049': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Allenwood', 2255, '41.09000', '-76.90000'), ('Forest Hill', 3594, '40.97000', '-77.01000'), ('Hartleton', 260, '40.89940', '-77.15680'), ('Laurelton Center', 260, '40.93000', '-77.20000'), ('Lewisburg', 5620, '40.96410', '-76.89050'), ('Linntown', 1542, '40.95690', '-76.90090'), ('Mifflinburg', 3594, '40.92010', '-77.04710'), ('New Berlin', 838, '40.88040', '-76.98530'), ('New Columbia', 6650, '41.04000', '-76.88000'), ('R.b. Winter State Park', 260, '40.99000', '-77.19000'), ('Sand Bridge State Park', 3594, '40.98000', '-77.10000'), ('Spruce Run Reservoir', 3594, '41.02000', '-77.00000'), ('Vicksburg', 838, '40.94000', '-76.98000'), ('Weikert', 260, '40.86000', '-77.28000'), ('West Milton', 6650, '41.01100', '-76.87600'), ('Winfield', 1542, '40.90000', '-76.87000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ050': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Beaver Springs', 634, '40.74000', '-77.22000'), ('Beavertown', 870, '40.75260', '-77.16970'), ('Freeburg', 584, '40.76280', '-76.94120'), ('Fremont', 1382, '40.72000', '-77.01000'), ('Hummels Wharf', 641, '40.83360', '-76.83960'), ('Kratzerville', 5383, '40.85000', '-76.91000'), ('McClure', 975, '40.70760', '-77.31130'), ('Meiserville', 584, '40.67000', '-76.95000'), ('Middleburg', 1382, '40.78900', '-77.04590'), ('Penns Creek', 668, '40.86000', '-77.07000'), ('Port Treverton', 383, '40.71000', '-76.88000'), ('Richfield', 459, '40.69000', '-77.12000'), ('Selinsgrove', 5383, '40.80110', '-76.86550'), ('Shamokin Dam', 1502, '40.85310', '-76.82250'), ('Snyder-Middleswart', 975, '40.79000', '-77.32000'), ('Troxelville', 192, '40.81000', '-77.20000'), ('Tyrone', 1690, '40.80230', '-77.05900')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ051': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Danville', 4897, '40.96150', '-76.61230'), ('Exchange', 201, '41.11000', '-76.69000'), ('Mechanicsville', 3099, '40.96640', '-76.58550'), ('Mooresburg', 1861, '40.98000', '-76.72000'), ('Washingtonville', 201, '41.05190', '-76.67510')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ052': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Delaware Run', 1695, '41.14000', '-76.85000'), ('Elysburg', 2067, '40.86820', '-76.54930'), ('Farnsworth', 357, '40.83000', '-76.66000'), ('Ferndale', 2411, '40.78000', '-76.57560'), ('Herndon', 383, '40.71060', '-76.85460'), ('Knoebels Grove', 2067, '40.88000', '-76.51000'), ('Kulpmont', 2985, '40.79540', '-76.47220'), ('Leck Kill', 2411, '40.72000', '-76.60000'), ('Marion Heights', 0, '40.80320', '-76.46520'), ('McEwensville', 314, '41.07210', '-76.81900'), ('Milton', 6650, '41.00800', '-76.85060'), ('Montandon', 5620, '40.96000', '-76.86000'), ('Mount Carmel', 6390, '40.79530', '-76.41230'), ('Northumberland', 3714, '40.89710', '-76.79370'), ('Rebuck', 304, '40.72000', '-76.75000'), ('Resler', 641, '40.78000', '-76.80000'), ('Riverside', 1861, '40.94260', '-76.64570'), ('Shamokin', 8009, '40.78810', '-76.55490'), ('Snydertown', 357, '40.87240', '-76.67450'), ('Stonington', 357, '40.84000', '-76.66000'), ('Sunbury', 10610, '40.86210', '-76.78810'), ('Trevorton', 2010, '40.78290', '-76.67350'), ('Turbotville', 691, '41.10100', '-76.76940'), ('Urban', 676, '40.67000', '-76.74000'), ('Watsontown', 2255, '41.08470', '-76.86460')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ053': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Almedia', 1056, '41.01440', '-76.38800'), ('Benton', 955, '41.19490', '-76.38530'), ('Berwick', 10774, '41.05560', '-76.24890'), ('Bloomsburg', 12375, '41.00230', '-76.45690'), ('Briar Creek', 0, '41.04700', '-76.28680'), ('Cambra', 215, '41.20000', '-76.31670'), ('Catawissa', 1589, '40.95300', '-76.46040'), ('Central', 955, '41.29000', '-76.37000'), ('Centralia', 21, '40.80420', '-76.34420'), ('Espy', 0, '41.00500', '-76.41770'), ('Fairmount Spgs', 215, '41.25000', '-76.31670'), ('Fairmount Springs', 0, '41.25000', '-76.31670'), ('Jerseytown', 991, '41.09000', '-76.60000'), ('Lime Ridge', 0, '41.02360', '-76.35530'), ('Mainville', 83, '40.96000', '-76.38000'), ('Mifflinville', 1213, '41.02920', '-76.30060'), ('Millville', 991, '41.12120', '-76.52740'), ('Numidia', 254, '40.89000', '-76.41000'), ('Orangeville', 500, '41.07660', '-76.41310'), ('Red Rock', 955, '41.28330', '-76.31670'), ('Scotch Valley', 1528, '40.96000', '-76.23000'), ('Shumans', 1213, '40.98000', '-76.28000'), ('Stillwater', 194, '41.15020', '-76.36710')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ054': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Albrightsville', 0, '41.01440', '-75.60140'), ('Beaver Meadows', 0, '40.92960', '-75.91270'), ('Beltzville State Park', 0, '40.86830', '-75.60830'), ('Bowmanstown', 0, '40.80150', '-75.66150'), ('Christmans', 0, '40.96810', '-75.64440'), ('Jim Thorpe', 0, '40.87140', '-75.73980'), ('Lake Harmony', 0, '41.06060', '-75.59140'), ('Lansford', 0, '40.83210', '-75.88600'), ('Lehighton', 0, '40.83000', '-75.72000'), ('Meckesville', 0, '40.99970', '-75.55250'), ('Nesquehoning', 0, '40.86200', '-75.82950'), ('New Mahoning', 0, '40.79750', '-75.81060'), ('Palmerton', 0, '40.80120', '-75.61700'), ('Parryville', 0, '40.82430', '-75.66960'), ('Penn Forest Reservoir', 0, '40.92940', '-75.56280'), ('Summit Hill', 0, '40.82490', '-75.84670'), ('Trachsville', 0, '40.88080', '-75.52910'), ('Tresckow', 0, '40.91540', '-75.96520'), ('Weatherly', 0, '40.94300', '-75.82170'), ('Weissport', 0, '40.82900', '-75.70120'), ('Weissport East', 0, '40.83550', '-75.69110')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'PAZ055': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alpine Mountain', 0, '41.11080', '-75.23000'), ('Analomink', 0, '41.05110', '-75.22080'), ('Arlington Heights', 0, '41.00440', '-75.21310'), ('Arrowhead Lake', 0, '41.15460', '-75.57110'), ('Bartonsville', 0, '41.00530', '-75.28040'), ('Blakeslee', 0, '41.09250', '-75.59300'), ('Brodheadsville', 0, '40.92410', '-75.40330'), ('Canadensis', 0, '41.19190', '-75.25170'), ('Cresco', 0, '41.15450', '-75.28150'), ('Delaware Water Gap', 0, '40.97860', '-75.13760'), ('East Stroudsburg', 0, '41.00150', '-75.17840'), ('Echo Lake', 0, '41.06500', '-75.05690'), ('Effort', 0, '40.93960', '-75.43540'), ('Fiddletown', 0, '40.86700', '-75.44310'), ('Gilbert', 0, '40.91580', '-75.43970'), ('Goulsboro State Park', 0, '41.21060', '-75.45580'), ('Hernyville', 0, '41.09360', '-75.24170'), ('Hidden Lake', 0, '41.05240', '-75.04780'), ('Jonas', 0, '40.96750', '-75.51220'), ('Kresgeville', 0, '40.90110', '-75.49710'), ('Kunkletown', 0, '40.84760', '-75.44660'), ('Lake In The Clouds', 0, '41.24410', '-75.27240'), ('Long Pond', 0, '41.05330', '-75.46330'), ('Marshalls Creek', 0, '41.04320', '-75.12760'), ('McMichael', 0, '40.99530', '-75.39910'), ('Merwinsburg', 0, '40.96540', '-75.46690'), ('Mountainhome', 0, '41.17660', '-75.26320'), ('Mount Pocono', 0, '41.12000', '-75.36000'), ('Paradise Valley', 0, '41.12190', '-75.28110'), ('Pocono Pines', 0, '41.11680', '-75.45790'), ('Pocono Raceway', 0, '41.05000', '-75.49000'), ('Reeders', 0, '41.01890', '-75.33640'), ('Rossland', 0, '40.87110', '-75.39720'), ('Saylorsburg', 0, '40.89560', '-75.32390'), ('Scotrun', 0, '41.06580', '-75.32030'), ('Shawnee', 0, '41.01210', '-75.11060'), ('Skytop', 0, '41.22610', '-75.23860'), ('Stormville', 0, '40.95170', '-75.24390'), ('Stroudsburg', 0, '40.98360', '-75.19760'), ('Sun Valley', 0, '40.98710', '-75.46440'), ('Tannersville', 0, '41.03890', '-75.31280'), ('Tobyhanna', 0, '41.17690', '-75.41830'), ('Werry Lake', 0, '41.07430', '-75.04510')], 'partOfState': 'northeast', 'wfo': 'PHI'}, +'PAZ056': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Amity Hall', 123, '40.45000', '-77.00000'), ('Big Spring State Park', 252, '40.27000', '-77.65000'), ('Blain', 252, '40.33720', '-77.51220'), ('Duncannon', 1508, '40.40000', '-77.03000'), ('Ickesburg', 765, '40.49000', '-77.29000'), ('Kistler', 195, '40.42000', '-77.39000'), ('Landisburg', 195, '40.34320', '-77.30590'), ('Liverpool', 876, '40.57240', '-76.99280'), ('Loysville', 195, '40.38000', '-77.33000'), ('Marysville', 2306, '40.33760', '-76.93260'), ('Millerstown', 679, '40.55280', '-77.15280'), ('Montgomery Ferry', 123, '40.50000', '-76.98000'), ('New Bloomfield', 1080, '40.41970', '-77.18880'), ('Newport', 1506, '40.47830', '-77.13410'), ('Shermansdale', 1080, '40.35000', '-77.18000')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ057': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Berrysburg', 354, '40.60280', '-76.80910'), ('Clifton', 4360, '40.24000', '-76.72000'), ('Colonial Park', 13259, '40.29990', '-76.80640'), ('Dauphin', 773, '40.36880', '-76.93040'), ('Dehart Dam', 2307, '40.45000', '-76.75000'), ('Elizabethville', 1344, '40.54750', '-76.81600'), ('Ellendale Forge', 6414, '40.40000', '-76.85000'), ('Gratz', 676, '40.60560', '-76.71730'), ('Halifax', 875, '40.46500', '-76.93340'), ('Harrisburg', 48950, '40.27600', '-76.88450'), ('Hershey', 12771, '40.28010', '-76.64770'), ('Highspire', 2720, '40.20850', '-76.78590'), ('Hummelstown', 4360, '40.26640', '-76.71290'), ('Linglestown', 6414, '40.34320', '-76.79400'), ('Lykens', 1937, '40.56330', '-76.69790'), ('Middletown', 9242, '40.20090', '-76.72930'), ('Millersburg', 2562, '40.54240', '-76.95600'), ('Penn National Race', 2307, '40.40000', '-76.67000'), ('Pillow', 304, '40.64120', '-76.80240'), ('Progress', 9647, '40.29050', '-76.83660'), ('Rockville', 2306, '40.32000', '-76.90000'), ('Rutherford Heights', 3481, '40.26890', '-76.76820'), ('Skyline View', 2307, '40.33830', '-76.72630'), ('Steelton', 5858, '40.22610', '-76.82590'), ('Williamstown', 1433, '40.58070', '-76.61790')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ058': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Ashland', 3283, '40.78100', '-76.34570'), ('Auburn', 839, '40.59630', '-76.09620'), ('Coaldale', 2295, '40.82080', '-75.91620'), ('Cressona', 0, '40.63050', '-76.19480'), ('Deer Lake', 528, '40.62060', '-76.05660'), ('Frackville', 4361, '40.78370', '-76.23330'), ('Gilberton', 867, '40.79660', '-76.22330'), ('Girardville', 1742, '40.79230', '-76.28420'), ('Gordon', 781, '40.75040', '-76.34060'), ('Hometown', 1399, '40.82200', '-75.98600'), ('Joe Zerbey Airport', 781, '40.72000', '-76.36000'), ('Lake Wynonah', 0, '40.58710', '-76.18020'), ('Landingville', 175, '40.62550', '-76.12310'), ('Locust Lake State Park', 4647, '40.78000', '-76.12000'), ('Mahanoy City', 4647, '40.81270', '-76.13850'), ('McAdoo', 2274, '40.90080', '-75.99240'), ('Middleport', 458, '40.72730', '-76.08720'), ('Minersville', 4552, '40.69080', '-76.25930'), ('Mount Carbon', 0, '40.67420', '-76.18800'), ('Muir', 1255, '40.59000', '-76.51000'), ('New Philadelphia', 1149, '40.71780', '-76.11800'), ('New Ringgold', 291, '40.68850', '-75.99380'), ('Nuremburg', 231, '40.93300', '-76.17000'), ('Orwigsburg', 3106, '40.65370', '-76.10370'), ('Palo Alto', 0, '40.68280', '-76.17680'), ('Pine Grove', 2154, '40.55330', '-76.38700'), ('Port Carbon', 2019, '40.69710', '-76.16710'), ('Port Clinton', 0, '40.58240', '-76.02670'), ('Pottsville', 15549, '40.67930', '-76.20980'), ('Ringtown', 826, '40.85690', '-76.23540'), ('Rough And Ready', 2411, '40.69000', '-76.58000'), ('Schuylkill Haven', 5548, '40.62810', '-76.17290'), ('Shenandoah', 5624, '40.81660', '-76.20080'), ('Shenandoah Heights', 0, '40.83340', '-76.20800'), ('Sheppton', 239, '40.90000', '-76.11000'), ('Snyders', 2974, '40.73000', '-75.82000'), ('St. Clair', 3254, '40.72040', '-76.19080'), ('Summit Station', 208, '40.58000', '-76.22050'), ('Tamaqua', 7174, '40.80520', '-75.93490'), ('Tower City', 1396, '40.58950', '-76.55380'), ('Tremont', 1784, '40.62970', '-76.39190'), ('Tuscarora', 939, '40.76020', '-76.05790'), ('Valley View', 1396, '40.66000', '-76.53000')], 'partOfState': 'central', 'wfo': 'CTP'}, +'PAZ059': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Annville', 4518, '40.33250', '-76.50660'), ('Avon Heights', 0, '40.34580', '-76.38710'), ('Campbelltown', 2415, '40.27640', '-76.58450'), ('Cleona', 2148, '40.33880', '-76.47730'), ('Cornwall', 3486, '40.26950', '-76.40810'), ('Fort Indiantown Gap', 85, '40.44400', '-76.57000'), ('Fredericksburg', 987, '40.45630', '-76.42560'), ('Harper Tavern', 34, '40.41000', '-76.57000'), ('Jonestown', 34, '40.41320', '-76.48070'), ('Kleinfeltersville', 1508, '40.31000', '-76.27000'), ('Lawn', 1609, '40.22000', '-76.55000'), ('Lebanon', 24461, '40.34130', '-76.42330'), ('Lickdale', 34, '40.46000', '-76.49000'), ('Mount Gretna', 242, '40.24540', '-76.47160'), ('Myerstown', 3171, '40.37170', '-76.30540'), ('Newmanstown', 1536, '40.35080', '-76.21290'), ('Palmyra', 7096, '40.30950', '-76.59500'), ('Pleasant Hill', 0, '40.33670', '-76.44720'), ('Richland', 1508, '40.35700', '-76.25750'), ('Sand Hill', 2345, '40.36090', '-76.42150')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ060': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Amity Gardens', 0, '40.27410', '-75.73560'), ('Bally', 0, '40.40100', '-75.58830'), ('Bechtelsville', 0, '40.37000', '-75.62860'), ('Bernville', 0, '40.43370', '-76.11100'), ('Birdsboro', 0, '40.26310', '-75.80780'), ('Boyertown', 0, '40.33140', '-75.63610'), ('Centerport', 0, '40.48660', '-76.00630'), ('Fairview Hgts', 1023, '40.43090', '-76.00700'), ('Fleetwood', 0, '40.45480', '-75.81880'), ('Flying Hills', 0, '40.27670', '-75.91450'), ('Hamburg', 0, '40.55620', '-75.98260'), ('Kenhorst', 0, '40.30670', '-75.94410'), ('Kutztown', 0, '40.51980', '-75.77530'), ('Laureldale', 0, '40.38930', '-75.91410'), ('Leesport', 0, '40.44490', '-75.96990'), ('Lenhartsville', 0, '40.57340', '-75.88670'), ('Lorane', 0, '40.29360', '-75.84630'), ('Lyons', 0, '40.48020', '-75.75700'), ('Mohnton', 0, '40.28650', '-75.98770'), ('Mount Penn', 0, '40.32850', '-75.88920'), ('New Morgan', 0, '40.18070', '-75.87070'), ('Reading', 0, '40.33000', '-75.93000'), ('Reiffton', 0, '40.31600', '-75.86760'), ('Robesonia', 0, '40.35000', '-76.13000'), ('Shillington', 0, '40.30250', '-75.96720'), ('Shoemakersville', 0, '40.50000', '-75.96900'), ('Sinking Spring', 0, '40.32470', '-76.02240'), ('St. Lawrence', 0, '40.32600', '-75.86500'), ('Strausstown', 0, '40.49200', '-76.18410'), ('Topton', 0, '40.50300', '-75.70180'), ('Wernersville', 0, '40.32990', '-76.08070'), ('West Lawn', 0, '40.32850', '-75.99330'), ('West Reading', 0, '40.33340', '-75.94690'), ('West Wyomissing', 0, '40.32270', '-75.99490'), ('Whitfield', 0, '40.33590', '-76.00630'), ('Womelsdorf', 0, '40.36520', '-76.18780'), ('Wyomissing', 0, '40.33270', '-75.96460'), ('Wyomissing Hills', 0, '40.33470', '-75.98200')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'PAZ061': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Alburtis', 0, '40.50950', '-75.60070'), ('Allentown', 0, '40.59000', '-75.48000'), ('Ancient Oaks', 0, '40.53250', '-75.58570'), ('Catasauqua', 0, '40.65210', '-75.46470'), ('Claussville', 0, '40.61420', '-75.65420'), ('Coffeetown', 0, '40.64870', '-75.57760'), ('Coopersburg', 0, '40.51040', '-75.39140'), ('Coplay', 0, '40.67110', '-75.49650'), ('Emerald', 0, '40.74500', '-75.63500'), ('Emmaus', 0, '40.53610', '-75.49800'), ('Fountain Hill', 0, '40.60260', '-75.39670'), ('Fullerton', 0, '40.63200', '-75.48590'), ('Hokendauqua', 0, '40.65870', '-75.49580'), ('Jordan Valley', 0, '40.71280', '-75.71350'), ('Macungie', 0, '40.51580', '-75.55430'), ('Neffs', 0, '40.69440', '-75.61000'), ('New Tripoli', 0, '40.68080', '-75.75220'), ('Schnecksville', 0, '40.67820', '-75.61960'), ('Slatington', 0, '40.74840', '-75.62050'), ('Wanamakers', 0, '40.66080', '-75.84610'), ('Zionsville', 0, '40.47970', '-75.50560')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'PAZ062': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bangor', 0, '40.86670', '-75.21070'), ('Bath', 0, '40.72650', '-75.39030'), ('Beersville', 0, '40.74640', '-75.47110'), ('Belfast', 0, '40.78250', '-75.27310'), ('Berlinsville', 0, '40.76860', '-75.57420'), ('Bethlehem', 0, '40.62610', '-75.37550'), ('Chapman', 0, '40.75920', '-75.40150'), ('Danielsville', 0, '40.79440', '-75.52750'), ('East Bangor', 0, '40.88060', '-75.18660'), ('Eastlawn Gardens', 0, '40.75070', '-75.29610'), ('Easton', 0, '40.68820', '-75.21640'), ('Forks', 0, '40.70000', '-75.23000'), ('Freemansburg', 0, '40.62720', '-75.34020'), ('Glendon', 0, '40.66210', '-75.23570'), ('Hellertown', 0, '40.58410', '-75.33810'), ('Nazareth', 0, '40.74000', '-75.31110'), ('Northampton', 0, '40.68380', '-75.49130'), ('North Catasauqua', 0, '40.66430', '-75.47430'), ('Old Orchard', 0, '40.65780', '-75.26260'), ('Palmer Heights', 0, '40.68960', '-75.26850'), ('Pen Argyl', 0, '40.86880', '-75.25540'), ('Portland', 0, '40.92060', '-75.11000'), ('Roseto', 0, '40.87820', '-75.22080'), ('Steuben', 0, '40.68690', '-75.36690'), ('Stockertown', 0, '40.75530', '-75.26380'), ('Tatamy', 0, '40.74070', '-75.25330'), ('Walnutport', 0, '40.75150', '-75.59550'), ('Wilson', 0, '40.68390', '-75.24220'), ('Wind Gap', 0, '40.84640', '-75.29160')], 'partOfState': 'eastern', 'wfo': 'PHI'}, +'PAZ063': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bloserville', 195, '40.24000', '-77.32000'), ('Boiling Springs', 2769, '40.15780', '-77.13730'), ('Camp Hill', 7636, '40.24250', '-76.92680'), ('Carlisle', 17970, '40.20090', '-77.20420'), ('Carlisle Springs', 4728, '40.24160', '-77.17730'), ('Colonel Denning State Park', 252, '40.29000', '-77.42000'), ('Enola', 5627, '40.28850', '-76.93600'), ('Hogestown', 9042, '40.23000', '-77.04000'), ('Lemoyne', 3995, '40.24450', '-76.89940'), ('Lower Allen', 6619, '40.22630', '-76.90070'), ('Mechanicsburg', 9042, '40.21010', '-77.00550'), ('Mount Holly Spring', 1925, '40.11270', '-77.18480'), ('Newburg', 372, '40.13770', '-77.55450'), ('New Cumberland', 7349, '40.23050', '-76.87520'), ('Newville', 1367, '40.17090', '-77.40190'), ('Pine Grove Furnace', 576, '40.05000', '-77.27000'), ('Shippensburg', 5586, '40.04810', '-77.52300'), ('Shiremanstown', 1521, '40.22230', '-76.95630'), ('Walnut Bottom', 1367, '40.09000', '-77.37000'), ('Wertzville', 9042, '40.27000', '-77.03000'), ('West Fairview', 1364, '40.27740', '-76.91860'), ('Wormleysburg', 2607, '40.26180', '-76.90830')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ064': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Abbottstown', 905, '39.88450', '-76.98970'), ('Arendtsville', 848, '39.92500', '-77.30120'), ('Bendersville', 576, '39.98240', '-77.24990'), ('Biglerville', 1101, '39.93010', '-77.24720'), ('Bonneauville', 1378, '39.81140', '-77.13680'), ('Carroll Valley', 3291, '39.75060', '-77.38110'), ('Cashtown', 848, '39.88000', '-77.34000'), ('East Berlin', 1832, '39.93680', '-76.98040'), ('Fairfield', 486, '39.78770', '-77.36920'), ('Germantown', 1378, '39.77000', '-77.16000'), ('Gettysburg', 7490, '39.83010', '-77.23450'), ('Heidlersburg', 1696, '39.93000', '-77.09000'), ('Lake Meade', 1832, '39.97000', '-77.02000'), ('Littlestown', 3947, '39.74410', '-77.08870'), ('McSherrystown', 2691, '39.80410', '-77.01960'), ('New Oxford', 1696, '39.86220', '-77.05570'), ('Seven Stars', 7490, '39.85000', '-77.27000'), ('York Springs', 574, '40.00890', '-77.11660')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ065': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Brogue', 449, '39.86000', '-76.45000'), ('Codorus', 492, '39.80000', '-76.82000'), ('Dallastown', 4087, '39.89970', '-76.64110'), ('Delta', 741, '39.72610', '-76.32770'), ('Dillsburg', 2063, '40.11010', '-77.03480'), ('Dover', 1815, '40.00370', '-76.84970'), ('East Prospect', 678, '39.97140', '-76.52090'), ('Emigsville', 2467, '40.00780', '-76.73020'), ('Fawn Grove', 463, '39.72990', '-76.45110'), ('Felton', 449, '39.85630', '-76.56150'), ('Franklintown', 532, '40.07520', '-77.02910'), ('Glen Rock', 1809, '39.79340', '-76.73050'), ('Goldsboro', 939, '40.15450', '-76.75050'), ('Hallam', 1532, '40.00250', '-76.60440'), ('Hanover', 14535, '39.81210', '-76.98370'), ('Jacobus', 1203, '39.88240', '-76.71240'), ('Lewisberry', 385, '40.13520', '-76.86080'), ('Loganville', 908, '39.85510', '-76.70880'), ('Manchester', 2350, '40.06130', '-76.72030'), ('New Freedom', 3512, '39.73630', '-76.69680'), ('New Salem', 648, '39.90240', '-76.79350'), ('Parkville', 6593, '39.78290', '-76.96750'), ('Pennville', 1964, '39.78560', '-76.99040'), ('Red Lion', 6149, '39.89870', '-76.60770'), ('Seven Valleys', 492, '39.85260', '-76.76650'), ('Shenks Ferry', 7774, '39.90000', '-76.39000'), ('Shrewsbury', 3378, '39.77100', '-76.68030'), ('Siddonsburg', 1521, '40.15000', '-76.96000'), ('Spring Grove', 2050, '39.88140', '-76.86440'), ('Spry', 4903, '39.91250', '-76.68750'), ('Stewartstown', 1752, '39.75240', '-76.59300'), ('Stonybrook', 4887, '39.97480', '-76.64300'), ('Sunnyburn', 2134, '39.79000', '-76.37000'), ('Susquehanna Trails', 0, '39.75850', '-76.36840'), ('Thomasville', 2050, '39.92000', '-76.87000'), ('Valley Green', 3550, '40.15720', '-76.79300'), ('Weigelstown', 10117, '39.98740', '-76.82940'), ('Wellsville', 279, '40.05020', '-76.94080'), ('Windsor', 1331, '39.91550', '-76.58330'), ('Winterstown', 546, '39.84090', '-76.61320'), ('Wrightsville', 2223, '40.02440', '-76.53150'), ('York', 40862, '39.96450', '-76.73180'), ('York Haven', 809, '40.11010', '-76.71580')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ066': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Adamstown', 1203, '40.24090', '-76.06260'), ('Akron', 4046, '40.15760', '-76.20370'), ('Bainbridge', 1365, '40.09000', '-76.67000'), ('Brickerville', 1287, '40.22680', '-76.28650'), ('Christiana', 1124, '39.95410', '-75.99770'), ('Churchtown', 1287, '40.14000', '-75.95000'), ('Columbia', 10311, '40.03340', '-76.49500'), ('Denver', 3332, '40.23250', '-76.13870'), ('East Petersburg', 4450, '40.10070', '-76.35350'), ('Elizabethtown', 11887, '40.15360', '-76.59860'), ('Ephrata', 13213, '40.18060', '-76.18280'), ('Gap', 0, '39.98890', '-76.02420'), ('Holtwood', 2134, '39.82000', '-76.33000'), ('Lancaster', 56348, '40.04180', '-76.30120'), ('Landisville', 4239, '40.09150', '-76.41860'), ('Leacock-Leola-bareville', 0, '40.09140', '-76.18910'), ('Leola', 5685, '40.09140', '-76.18910'), ('Lititz', 9029, '40.15370', '-76.30530'), ('Manheim', 4784, '40.16330', '-76.39650'), ('Marietta', 2689, '40.05700', '-76.55290'), ('Maytown', 2604, '40.07700', '-76.58040'), ('Millersville', 7774, '40.00360', '-76.35390'), ('Mount Joy', 6765, '40.11050', '-76.50790'), ('Mountville', 2444, '40.04060', '-76.43440'), ('New Holland', 5092, '40.10100', '-76.09040'), ('Paradise', 1028, '40.00680', '-76.12230'), ('Quarryville', 1994, '39.89570', '-76.16120'), ('Reamstown', 3498, '40.21200', '-76.11790'), ('Rheems', 1557, '40.12900', '-76.57070'), ('Rothsville', 3017, '40.15270', '-76.24570'), ('Safe Harbor', 7774, '39.92500', '-76.40000'), ('Salunga-Landisville', 0, '40.09150', '-76.41860'), ('Smithville', 7258, '39.93000', '-76.25000'), ('Strasburg', 2800, '39.98360', '-76.18560'), ('Terre Hill', 1237, '40.15750', '-76.05070'), ('Wakefield', 1263, '39.76000', '-76.17000'), ('Willow Street', 7258, '39.98470', '-76.27040')], 'partOfState': 'south central', 'wfo': 'CTP'}, +'PAZ070': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Aldan', 0, '39.92290', '-75.28880'), ('Boothwyn', 0, '39.83550', '-75.44520'), ('Brookhaven', 0, '39.87060', '-75.39130'), ('Broomall', 0, '39.96990', '-75.35300'), ('Chelsea', 0, '39.86690', '-75.46830'), ('Chester', 0, '39.84540', '-75.37220'), ('Chester Heights', 0, '39.89440', '-75.46770'), ('Cheyney', 0, '39.92830', '-75.52310'), ('Clifton Heights', 0, '39.92900', '-75.29610'), ('Collingdale', 0, '39.91450', '-75.27740'), ('Colwyn', 0, '39.91150', '-75.25330'), ('Concordville', 0, '39.88500', '-75.52060'), ('Darby', 0, '39.92050', '-75.26100'), ('Drexel Hill', 0, '39.94920', '-75.30380'), ('East Lansdowne', 0, '39.94380', '-75.26170'), ('Eddystone', 0, '39.85610', '-75.33280'), ('Elam', 0, '39.85500', '-75.54140'), ('Folcroft', 0, '39.88860', '-75.27660'), ('Folsom', 0, '39.89140', '-75.32910'), ('Glenolden', 0, '39.89870', '-75.29280'), ('Gradyville', 0, '39.94310', '-75.46970'), ('Lansdowne', 0, '39.94050', '-75.27530'), ('Lima', 0, '39.91670', '-75.44230'), ('Linwood', 0, '39.82340', '-75.42450'), ('Marcus Hook', 0, '39.81280', '-75.41640'), ('Media', 0, '39.91950', '-75.38880'), ('Millbourne', 0, '39.96310', '-75.25280'), ('Morton', 0, '39.91090', '-75.32700'), ('Nether Providence Township', 0, '39.89790', '-75.36820'), ('Newtown Square', 0, '39.98670', '-75.40140'), ('Norwood', 0, '39.88590', '-75.29600'), ('Parkside', 0, '39.86650', '-75.37870'), ('Prospect Park', 0, '39.88560', '-75.30750'), ('Radnor Township', 0, '40.02830', '-75.36830'), ('Ridley Park', 0, '39.87770', '-75.32560'), ('Rose Valley', 0, '39.89480', '-75.38610'), ('Rutledge', 0, '39.90070', '-75.32780'), ('Sharon Hill', 0, '39.90780', '-75.26920'), ('Springfield', 0, '39.92770', '-75.33760'), ('Swarthmore', 0, '39.90210', '-75.34830'), ('Trainer', 0, '39.82360', '-75.40500'), ('Trout Lake', 0, '40.00170', '-75.34670'), ('Upland', 0, '39.85670', '-75.37980'), ('Upper Providence Township', 0, '39.93770', '-75.39650'), ('Village Green-Green Ridge', 0, '39.86390', '-75.42490'), ('Woodlyn', 0, '39.87740', '-75.34410'), ('Yeadon', 0, '39.93270', '-75.25190')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAZ071': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Ben Franklin Bridge', 0, '39.95290', '-75.13410'), ('Center City', 0, '39.98000', '-75.14000'), ('Chestnut Hill', 0, '40.07000', '-75.22000'), ('Germantown', 0, '40.04000', '-75.19000'), ('Holmesburg', 0, '40.04140', '-75.02830'), ('Kensington', 0, '39.98580', '-75.13220'), ('Morris Park', 0, '39.97970', '-75.25810'), ('Northeast Philadelphia', 0, '40.09000', '-75.02000'), ('Philadelphia', 0, '40.00680', '-75.13470'), ('Philadelphia International Airport', 0, '39.88000', '-75.26000'), ('Roxborough', 0, '40.00000', '-75.22000'), ('South Philadelphia', 0, '39.91000', '-75.21000'), ('Tacony', 0, '40.03110', '-75.04470'), ('Wissinoming', 0, '40.02220', '-75.06360')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAZ072': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Angels', 1169, '41.28330', '-75.36670'), ('Arlington', 2140, '41.41670', '-75.33330'), ('Beach Lake', 4874, '41.60000', '-75.15000'), ('Beech Grove', 292, '41.60000', '-75.30000'), ('Bethany', 292, '41.61420', '-75.28890'), ('Gouldsboro', 0, '41.24420', '-75.45530'), ('Greentown', 1169, '41.31670', '-75.31670'), ('Hawley', 1303, '41.47660', '-75.17800'), ('Headley', 4874, '41.51670', '-75.28330'), ('Honesdale', 4874, '41.57720', '-75.25360'), ('La Anna', 1169, '41.25000', '-75.35000'), ('Lake Ariel', 2140, '41.45000', '-75.38330'), ('Lakeville', 1303, '41.43330', '-75.28330'), ('Laurella', 4874, '41.58330', '-75.21670'), ('Newfoundland', 1169, '41.30000', '-75.33330'), ('Prompton', 243, '41.58980', '-75.32950'), ('Seelyville', 4874, '41.56670', '-75.26670'), ('South Canaan', 1429, '41.50000', '-75.41670'), ('Sterling', 1883, '41.33330', '-75.40000'), ('Tresslarville', 2140, '41.45000', '-75.40000'), ('Waymart', 1429, '41.58720', '-75.40930')], 'partOfState': 'northeast', 'wfo': 'BGM'}, +'PAZ073': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Adamsburg', 221, '40.31040', '-79.65470'), ('Arnold', 5667, '40.57890', '-79.76490'), ('Arona', 407, '40.26820', '-79.65750'), ('Avonmore', 820, '40.52680', '-79.47000'), ('Calumet-Norvelt', 1790, '40.20730', '-79.49310'), ('Delmont', 2497, '40.41390', '-79.57340'), ('Derry', 2991, '40.33330', '-79.30170'), ('East Vandergrift', 742, '40.59740', '-79.56300'), ('Export', 895, '40.41870', '-79.62500'), ('Greensburg', 15889, '40.31090', '-79.54440'), ('Hunker', 329, '40.20400', '-79.61530'), ('Hyde Park', 513, '40.63220', '-79.58900'), ('Irwin', 4366, '40.32590', '-79.69960'), ('Jeannette', 10654, '40.32720', '-79.61410'), ('Latrobe', 8994, '40.31210', '-79.38270'), ('Lawson Heights', 2339, '40.29200', '-79.38830'), ('Lower Burrell', 12608, '40.58240', '-79.71300'), ('Lynnwood-Pricedale', 2664, '40.12980', '-79.85230'), ('Madison', 510, '40.24660', '-79.67290'), ('Manor', 2796, '40.34650', '-79.67080'), ('McChesneytown-Loya', 3708, '40.31280', '-79.35600'), ('Monessen', 8669, '40.15220', '-79.88220'), ('Mount Pleasant', 4728, '40.15040', '-79.54410'), ('Municipality Of Murrsyville', 17240, '40.44150', '-79.65590'), ('New Alexandria', 595, '40.39350', '-79.41840'), ('New Kensington', 14701, '40.56990', '-79.75080'), ('New Stanton', 1906, '40.22170', '-79.60900'), ('North Belle Vernon', 2107, '40.13200', '-79.86510'), ('North Irwin', 879, '40.33890', '-79.71120'), ('North Washington', 0, '40.53000', '-79.60000'), ('Oklahoma', 915, '40.58090', '-79.57470'), ('Penn', 460, '40.32880', '-79.64170'), ('Scottdale', 4772, '40.10280', '-79.58990'), ('Smithton', 444, '40.15330', '-79.74170'), ('South Greensburg', 2280, '40.27690', '-79.54790'), ('Southwest Greensburg', 2398, '40.29200', '-79.54780'), ('Sutersville', 636, '40.23570', '-79.80260'), ('Trafford', 3236, '40.38420', '-79.75710'), ('Vandergrift', 5455, '40.59950', '-79.57440'), ('West Leechburg', 1290, '40.63210', '-79.61740'), ('West Newton', 3083, '40.20840', '-79.76960'), ('Youngstown', 400, '40.28090', '-79.36580'), ('Youngwood', 4138, '40.24370', '-79.58110')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAZ074': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bolivar', 501, '40.39480', '-79.15210'), ('Donegal', 165, '40.11280', '-79.38250'), ('Laurel Mountain', 185, '40.21130', '-79.18480'), ('Ligonier', 1695, '40.24440', '-79.23730'), ('New Florence', 784, '40.37910', '-79.07500'), ('Seward', 484, '40.41250', '-79.02170')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAZ075': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Belle Vernon', 1211, '40.12460', '-79.86580'), ('Brownsville', 2804, '40.01900', '-79.89140'), ('Connellsville', 9146, '40.01630', '-79.58910'), ('Dawson', 451, '40.04780', '-79.65890'), ('Dunbar', 1219, '39.97960', '-79.61410'), ('East Uniontown', 2760, '39.89970', '-79.69810'), ('Everson', 842, '40.09050', '-79.58730'), ('Fairchance', 2174, '39.82590', '-79.75460'), ('Fayette City', 714, '40.10020', '-79.83910'), ('Grindstone-Rowes Run', 1041, '40.01520', '-79.81520'), ('Hiller', 1234, '40.00720', '-79.90390'), ('Hopwood', 2006, '39.87750', '-79.70180'), ('Isabella', 0, '39.95000', '-79.93000'), ('Juniata', 0, '39.98000', '-79.72000'), ('Leith-Hatfield', 2437, '39.87980', '-79.73470'), ('Masontown', 3611, '39.84830', '-79.90860'), ('Newell', 551, '40.07350', '-79.88860'), ('New Salem-Buffington', 1169, '39.93190', '-79.82060'), ('Oliver', 2925, '39.91520', '-79.72210'), ('Perryopolis', 1764, '40.08650', '-79.75320'), ('Point Marion', 1333, '39.73450', '-79.90070'), ('Republic', 1396, '39.96480', '-79.87660'), ('Smithfield', 854, '39.80200', '-79.80950'), ('South Connellsvill', 2281, '39.99260', '-79.58250'), ('Uniontown', 12422, '39.89920', '-79.72470'), ('Vanderbilt', 553, '40.03310', '-79.66300')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAZ076': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Champion', 0, '40.08000', '-79.37000'), ('Markleysburg', 282, '39.73710', '-79.45290'), ('Ohiopyle', 77, '39.86750', '-79.49420')], 'partOfState': 'southwest', 'wfo': 'PBZ'}, +'PAZ101': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Atglen', 0, '39.94710', '-75.97530'), ('Cedarville', 0, '40.22690', '-75.67190'), ('Chester Springs', 0, '40.09500', '-75.61720'), ('Coatesville', 0, '39.98480', '-75.81930'), ('Cochranville', 0, '39.89170', '-75.92190'), ('Elverson', 0, '40.15780', '-75.83150'), ('Glenmoore', 0, '40.08890', '-75.77220'), ('Glen Roy', 0, '39.76670', '-76.04970'), ('Homeville', 0, '39.86080', '-75.98690'), ('Honey Brook', 0, '40.09340', '-75.91100'), ('Kenilworth', 0, '40.22540', '-75.64260'), ('Lionville', 0, '40.05270', '-75.64560'), ('Modena', 0, '39.96220', '-75.80250'), ('Mount Vernon', 0, '39.80940', '-76.02610'), ('Oxford', 0, '39.78570', '-75.98040'), ('Parkesburg', 0, '39.95870', '-75.91670'), ('Phoenixville', 0, '40.13590', '-75.51920'), ('Pughtown', 0, '40.16670', '-75.66580'), ('South Coatesville', 0, '39.96810', '-75.81530'), ('South Pottstown', 0, '40.23700', '-75.66460'), ('Spring City', 0, '40.17670', '-75.54690'), ('Thorndale', 0, '39.99850', '-75.75220'), ('Valley Forge', 0, '40.09690', '-75.47000')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAZ102': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Avondale', 0, '39.82390', '-75.78240'), ('Chesterbrook', 0, '40.07570', '-75.45930'), ('Devon-Berwyn', 0, '40.04340', '-75.43870'), ('Downingtown', 0, '40.00720', '-75.70240'), ('Exton', 0, '40.03160', '-75.63000'), ('Kemblesville', 0, '39.74890', '-75.82440'), ('Kennett Square', 0, '39.84370', '-75.71170'), ('Ladenberg', 0, '39.77720', '-75.77170'), ('Malvern', 0, '40.03350', '-75.51400'), ('Marshallton', 0, '39.94970', '-75.68060'), ('Paoli', 0, '40.04230', '-75.49280'), ('Toughkenamon', 0, '39.83090', '-75.75560'), ('West Chester', 0, '39.96060', '-75.60550'), ('West Goshen', 0, '39.96820', '-75.57300'), ('West Grove', 0, '39.82140', '-75.82890'), ('Westtown', 0, '39.93080', '-75.55220')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAZ103': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Audubon', 0, '40.12980', '-75.42840'), ('Collegeville', 0, '40.18550', '-75.45820'), ('Eagleville', 0, '40.15790', '-75.40780'), ('East Greenville', 0, '40.40600', '-75.50650'), ('Evansburg', 0, '40.19020', '-75.43600'), ('Gilbertsville', 0, '40.32280', '-75.60900'), ('Green Lane', 0, '40.33720', '-75.46930'), ('Halfway House', 0, '40.28190', '-75.64360'), ('Harleysville', 0, '40.27840', '-75.38800'), ('Hatfield', 0, '40.27800', '-75.29870'), ('Kulpsville', 0, '40.24370', '-75.34090'), ('Pennsburg', 0, '40.39360', '-75.49590'), ('Pottsgrove', 0, '40.26460', '-75.61220'), ('Pottstown', 0, '40.24970', '-75.64030'), ('Red Hill', 0, '40.37620', '-75.48430'), ('Royersford', 0, '40.18520', '-75.53760'), ('Sanatoga', 0, '40.24950', '-75.58920'), ('Schwenksville', 0, '40.25640', '-75.46500'), ('Skippack', 0, '40.22100', '-75.40160'), ('Souderton', 0, '40.31020', '-75.32160'), ('Stowe', 0, '40.25660', '-75.68160'), ('Trappe', 0, '40.19710', '-75.47520'), ('Trooper', 0, '40.14960', '-75.39940')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAZ104': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Abington', 0, '40.12060', '-75.11800'), ('Ambler', 0, '40.15500', '-75.22010'), ('Ardmore', 0, '40.00290', '-75.29480'), ('Blue Bell', 0, '40.14570', '-75.26770'), ('Bridgeport', 0, '40.10390', '-75.34340'), ('Bryn Athyn', 0, '40.13950', '-75.06710'), ('Bryn Mawr', 0, '40.02180', '-75.31590'), ('Conshohocken', 0, '40.07710', '-75.30200'), ('Flourtown', 0, '40.10280', '-75.20860'), ('Fort Washington', 0, '40.13840', '-75.19180'), ('Glenside', 0, '40.10280', '-75.15260'), ('Hatboro', 0, '40.17760', '-75.10440'), ('Horsham', 0, '40.18250', '-75.13920'), ('Jenkintown', 0, '40.09600', '-75.12940'), ('King Of Prussia', 0, '40.09550', '-75.38340'), ('Lansdale', 0, '40.24190', '-75.28400'), ('Maple Glen', 0, '40.17520', '-75.18050'), ('Montgomeryville', 0, '40.24810', '-75.24170'), ('Narberth', 0, '40.00740', '-75.26210'), ('Norristown', 0, '40.11980', '-75.34170'), ('North Wales', 0, '40.21060', '-75.27540'), ('Oreland', 0, '40.11440', '-75.18030'), ('Penn Wynne', 0, '39.98620', '-75.27270'), ('Plymouth Meeting', 0, '40.10870', '-75.28080'), ('Rockledge', 0, '40.08220', '-75.09000'), ('Spring House', 0, '40.18360', '-75.22640'), ('West Conshohocken', 0, '40.06990', '-75.31900'), ('Willow Grove', 0, '40.14900', '-75.11850'), ('Wyncote', 0, '40.09220', '-75.14790'), ('Wyndmoor', 0, '40.08320', '-75.19300')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAZ105': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Bedminster', 0, '40.42580', '-75.17940'), ('Chalfont', 0, '40.28970', '-75.21020'), ('Dublin', 0, '40.37060', '-75.20470'), ('Erwinna', 0, '40.50060', '-75.07310'), ('Ferndale', 0, '40.53360', '-75.17910'), ('Fricks', 0, '40.30890', '-75.24540'), ('Gardenville', 0, '40.37250', '-75.10810'), ('Geryville', 0, '40.41530', '-75.47560'), ('Hilltown', 0, '40.34250', '-75.25630'), ('Ottsville', 0, '40.47310', '-75.16140'), ('Perkasie', 0, '40.37160', '-75.29300'), ('Pipersville', 0, '40.42530', '-75.13970'), ('Pleasant Valley', 0, '40.52110', '-75.29310'), ('Quakertown', 0, '40.44040', '-75.34040'), ('Revere', 0, '40.51530', '-75.16140'), ('Richlandtown', 0, '40.47230', '-75.32130'), ('Riegelsville', 0, '40.59540', '-75.19560'), ('Robesonia', 0, '40.35150', '-75.13650'), ('Sellersville', 0, '40.36030', '-75.30830'), ('Silverdale', 0, '40.34640', '-75.27130'), ('Springtown', 0, '40.55640', '-75.28970'), ('Telford', 0, '40.32550', '-75.32730'), ('Tinicum', 0, '40.44830', '-75.10810'), ('Trumbauersville', 0, '40.41410', '-75.37940')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PAZ106': {'fullStateName': 'Pennsylvania', 'state': 'PA', 'cities': [('Andalusia', 0, '40.06940', '-74.97170'), ('Bensalem', 0, '40.10440', '-74.95170'), ('Bristol', 0, '40.10330', '-74.85140'), ('Churchville', 0, '40.20070', '-74.99740'), ('Cornwells Heights-Eddington', 0, '40.08170', '-74.94710'), ('Croydon', 0, '40.09020', '-74.89550'), ('Doylestown', 0, '40.31270', '-75.12880'), ('Fairless Hills', 0, '40.17880', '-74.85340'), ('Feasterville', 0, '40.15270', '-74.98660'), ('Furlong', 0, '40.29580', '-75.08170'), ('Hulmeville', 0, '40.14310', '-74.90750'), ('Ivyland', 0, '40.20810', '-75.07290'), ('Jamison', 0, '40.25490', '-75.08920'), ('Langhorne', 0, '40.17740', '-74.91880'), ('Levittown', 0, '40.15350', '-74.85310'), ('Lumberville', 0, '40.40670', '-75.03830'), ('Morrisville', 0, '40.20730', '-74.78030'), ('New Britain', 0, '40.29910', '-75.17860'), ('New Hope', 0, '40.36140', '-74.95930'), ('Newtown', 0, '40.22820', '-74.93230'), ('Newtown Grant', 0, '40.26000', '-74.95530'), ('Peddlers Village', 0, '40.34780', '-75.03160'), ('Penndel', 0, '40.15490', '-74.91390'), ('Penns Park', 0, '40.26570', '-74.99810'), ('Richboro', 0, '40.22160', '-75.00600'), ('Tullytown', 0, '40.14500', '-74.81780'), ('Village Shires', 0, '40.20300', '-74.97080'), ('Warminster', 0, '40.20610', '-75.09980'), ('Warminster Heights', 0, '40.18670', '-75.08480'), ('Warrington', 0, '40.24910', '-75.13370'), ('Washington Crossing', 0, '40.29330', '-74.87080'), ('Woodbourne', 0, '40.20210', '-74.88640'), ('Woodside', 0, '40.23030', '-74.85870'), ('Yardley', 0, '40.24150', '-74.83630')], 'partOfState': 'southeast', 'wfo': 'PHI'}, +'PRZ001': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Bayamon', 1699, '18.38130', '-66.16390'), ('Campanilla', 7757, '18.42460', '-66.23870'), ('Candelaria', 17300, '18.40670', '-66.21830'), ('Candelaria Arenas', 5854, '18.41920', '-66.21780'), ('Carolina', 168164, '18.40840', '-65.98110'), ('Catano', 30071, '18.44540', '-66.13940'), ('Galateo', 2705, '18.36440', '-66.25930'), ('Guaynabo', 78806, '18.38640', '-66.11430'), ('H. Rivera Colon', 2379, '18.34970', '-66.27410'), ('Ingenio', 5664, '18.44730', '-66.22580'), ('Levittown', 30140, '18.44760', '-66.17630'), ('Mucarabones', 1690, '18.39270', '-66.21650'), ('Pajaros', 9466, '18.36210', '-66.21910'), ('Sabana Seca', 6247, '18.42560', '-66.18540'), ('San Jose', 3278, '18.40600', '-66.24850'), ('San Juan', 421958, '18.40840', '-66.06440'), ('Toa Alta', 4368, '18.39010', '-66.25010'), ('Toa Baja', 1841, '18.44430', '-66.25480'), ('Trujillo Alto', 50841, '18.36300', '-66.01760')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ002': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguas Claras', 3499, '18.24950', '-65.66630'), ('Anton Ruiz', 1764, '18.19010', '-65.80760'), ('Bajandas', 1418, '18.16230', '-65.78280'), ('Bartolo', 1260, '18.36350', '-65.84140'), ('Benitez', 1334, '18.27540', '-65.87930'), ('Campo Rico', 3218, '18.33910', '-65.89820'), ('Candelero Arriba', 1346, '18.10400', '-65.83710'), ('Canovanas', 8069, '18.37970', '-65.90680'), ('Ceiba', 6277, '18.26660', '-65.64900'), ('Daguao', 1488, '18.22350', '-65.68070'), ('Duque', 1529, '18.24010', '-65.74460'), ('Fajardo', 33286, '18.33500', '-65.65970'), ('Hato Candal', 2453, '18.37660', '-65.78990'), ('Humacao', 20682, '18.15450', '-65.81970'), ('La Dolores', 3534, '18.37730', '-65.85520'), ('Loiza', 4123, '18.43280', '-65.88060'), ('Lomas', 953, '18.27050', '-65.90920'), ('Luis M. Cintron', 2634, '18.30160', '-65.63890'), ('Luquillo', 7947, '18.37750', '-65.72100'), ('Naguabo', 4432, '18.21350', '-65.73760'), ('Palmer', 1205, '18.37240', '-65.77450'), ('Pena Pobre', 1024, '18.21870', '-65.82290'), ('Punta Santiago', 5803, '18.16470', '-65.75840'), ('Ramos', 2004, '18.34160', '-65.71300'), ('Rio Blanco', 1406, '18.21440', '-65.79320'), ('Rio Grande', 13467, '18.38070', '-65.83930'), ('Roosevelt Roads', 3975, '18.23820', '-65.62780'), ('San Isidro', 8071, '18.39410', '-65.88570'), ('Santa Barbara', 5168, '18.39560', '-65.91900'), ('Suarez', 2276, '18.43290', '-65.85100'), ('Vieques', 2136, '18.42840', '-65.83540')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ003': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Arroyo', 7244, '17.97080', '-66.06210'), ('Buena Vista', 2026, '17.99840', '-66.05230'), ('Central Aguirre', 1588, '17.95700', '-66.22660'), ('Coco', 5803, '18.00450', '-66.26000'), ('Comunas', 2027, '18.08950', '-65.84040'), ('Coqui', 3590, '17.98060', '-66.22640'), ('Corazon', 2925, '17.99550', '-66.08360'), ('El Negro', 1656, '18.03930', '-65.85170'), ('Emajagua', 3099, '18.00250', '-65.88300'), ('Guayama', 21624, '17.97820', '-66.11100'), ('Jobos', 3475, '17.96250', '-66.16570'), ('Lamboglia', 1121, '17.98630', '-65.98490'), ('La Plena', 1036, '18.04430', '-66.20660'), ('Las Ochenta', 1199, '17.98580', '-66.31810'), ('Martorell', 2884, '18.07540', '-65.89820'), ('Maunabo', 2075, '18.00980', '-65.90140'), ('Olimpo', 2493, '18.00470', '-66.10950'), ('Palmas', 2829, '17.98900', '-66.02570'), ('Palo Seco', 1152, '18.00960', '-65.93730'), ('Patillas', 4091, '18.00900', '-66.01390'), ('Playita', 673, '18.04170', '-65.90830'), ('Rosa Sanchez', 1221, '18.06350', '-65.91380'), ('Salinas', 6141, '17.97940', '-66.29660'), ('Vazquez', 2297, '18.06770', '-66.23910'), ('Yabucoa', 6636, '18.04960', '-65.87960'), ('Yaurel', 1468, '18.02890', '-66.05750')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ004': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguas Buenas', 4368, '18.25940', '-66.10540'), ('Bairoa', 2365, '18.25670', '-66.06530'), ('Boqueron', 1218, '18.20950', '-65.84890'), ('Caguas', 88680, '18.23430', '-66.03940'), ('Cayey', 19940, '18.11640', '-66.16270'), ('Celada', 4435, '18.27200', '-65.96260'), ('Cidra', 4881, '18.17920', '-66.15920'), ('Comerio', 4478, '18.22170', '-66.22500'), ('El Mango', 1979, '18.23690', '-65.87560'), ('G. L. Garcia', 1798, '18.12950', '-66.10430'), ('Gurabo', 9046, '18.25610', '-65.97800'), ('Jagual', 1402, '18.16280', '-65.99770'), ('Juncos', 8978, '18.22850', '-65.91680'), ('La Fermina', 3177, '18.17740', '-65.85380'), ('Las Piedras', 6352, '18.18130', '-65.86980'), ('Parcelas La Milagr', 1344, '18.17270', '-66.18850'), ('Parcelas Nuevas', 1628, '18.14220', '-66.17270'), ('Pueblito Del Rio', 1481, '18.23000', '-65.86330'), ('San Lorenzo', 8947, '18.19080', '-65.96640'), ('Sumidero', 1145, '18.21280', '-66.13430')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ005': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Animas', 1450, '18.44760', '-66.63520'), ('Arecibo', 49318, '18.45670', '-66.73590'), ('Bajadero', 3877, '18.42530', '-66.67650'), ('Barceloneta', 4253, '18.45480', '-66.53900'), ('Brenas', 2104, '18.47390', '-66.33410'), ('Bufalo', 1108, '18.42040', '-66.57370'), ('Coto Norte', 1381, '18.43520', '-66.44110'), ('Dorado', 12747, '18.47020', '-66.27150'), ('Florida', 5652, '18.36440', '-66.56150'), ('Garrochales', 1208, '18.46440', '-66.57010'), ('Imbery', 3021, '18.43920', '-66.55730'), ('La Alianza', 2139, '18.40240', '-66.60180'), ('La Luisa', 2887, '18.45080', '-66.51020'), ('Manati', 16173, '18.43100', '-66.48420'), ('Miranda', 2057, '18.38870', '-66.38020'), ('Monserrate', 2756, '18.43920', '-66.35680'), ('Rio Lajas', 2349, '18.40040', '-66.26280'), ('Sabana', 1946, '18.46400', '-66.35280'), ('Sabana Hoyos', 1823, '18.42900', '-66.61210'), ('San Antonio', 2300, '18.44950', '-66.29860'), ('Tiburones', 709, '18.43870', '-66.58000'), ('Tierras Nuevas Pon', 2366, '18.46390', '-66.48900'), ('Vega Alta', 11755, '18.41660', '-66.32200'), ('Vega Baja', 28811, '18.44280', '-66.39970')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ006': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aibonito', 9269, '18.14180', '-66.26610'), ('Barahona', 2632, '18.35340', '-66.44590'), ('Barranquitas', 2910, '18.18770', '-66.30930'), ('Ciales', 3082, '18.33600', '-66.47100'), ('Coamo', 12356, '18.08110', '-66.36060'), ('Corozal', 11444, '18.34370', '-66.31270'), ('Franquez', 2021, '18.34210', '-66.42800'), ('Jayuya', 3516, '18.22050', '-66.59700'), ('Los Llanos', 2301, '18.05820', '-66.40960'), ('Mariano Colon', 2387, '18.02540', '-66.33280'), ('Morovis', 2285, '18.32680', '-66.40520'), ('Naranjito', 1931, '18.30510', '-66.24500'), ('Orocovis', 909, '18.22690', '-66.39180'), ('Pastos', 1528, '18.11970', '-66.25910'), ('Villalba', 4388, '18.13000', '-66.48220')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ007': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguilita', 4922, '18.03000', '-66.53360'), ('Capitanejo', 3209, '18.01530', '-66.53610'), ('Coto Laurel', 3606, '18.04990', '-66.55190'), ('El Ojo', 1713, '18.00590', '-66.39210'), ('Guayabal', 2377, '18.07820', '-66.50210'), ('Guayanilla', 5110, '18.02490', '-66.79000'), ('Indios', 1739, '17.99610', '-66.81980'), ('Jauca', 1838, '17.96580', '-66.36600'), ('Juana Diaz', 9505, '18.05480', '-66.50530'), ('Las Ollas', 1949, '18.01640', '-66.42170'), ('Luis Llorens Torre', 3328, '18.05880', '-66.52730'), ('Magas Arriba', 1063, '18.02490', '-66.76580'), ('Marueno', 913, '18.05860', '-66.65630'), ('Palomas', 1742, '18.01540', '-66.86870'), ('Parcelas Penuelas', 1132, '18.00400', '-66.34010'), ('Penuelas', 6712, '18.06150', '-66.72140'), ('Ponce', 155038, '17.98710', '-66.60910'), ('Potala Pastillo', 3819, '17.99350', '-66.49690'), ('Rio Canas Abajo', 1185, '18.04110', '-66.46870'), ('Santa Isabel', 6993, '17.97090', '-66.40510'), ('Santo Domingo', 3633, '18.07170', '-66.75370'), ('Tallaboa', 1150, '17.99870', '-66.71090'), ('Tallaboa Alta', 2243, '18.05210', '-66.70290'), ('Yauco', 19609, '18.03660', '-66.86200')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ008': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aguadilla', 16776, '18.43970', '-67.15490'), ('Caban', 3959, '18.44540', '-67.13630'), ('Cacao', 2068, '18.43850', '-66.93750'), ('Camuy', 4013, '18.48570', '-66.84910'), ('Carrizales', 2556, '18.48340', '-66.78810'), ('Corcovado', 1527, '18.46320', '-66.77720'), ('Hatillo', 5321, '18.48720', '-66.82350'), ('Isabela', 12818, '18.50530', '-67.02100'), ('Mora', 1857, '18.46500', '-67.03300'), ('Piedra Gorda', 1927, '18.43600', '-66.88800'), ('Quebrada', 1130, '18.36210', '-66.83630'), ('Quebradillas', 5319, '18.47580', '-66.93630'), ('Rafael Capo', 1863, '18.40560', '-66.78360'), ('Rafael Gonzalez', 2325, '18.42950', '-66.78730'), ('Rafael Hernandez', 1516, '18.47330', '-67.07950')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ009': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Adjuntas', 4980, '18.16570', '-66.72410'), ('Cayuco', 1284, '18.29530', '-66.73540'), ('Juncal', 1155, '18.31570', '-66.91940'), ('Lares', 7042, '18.29630', '-66.88220'), ('Liborio Negron Torres', 1303, '18.04510', '-66.94280'), ('Lluveras', 2005, '18.04040', '-66.90510'), ('Maricao', 1123, '18.18610', '-66.98040'), ('Sabana Grande', 8784, '18.08400', '-66.96710'), ('San Sebastian', 11598, '18.33800', '-66.99590'), ('Utuado', 9887, '18.27140', '-66.70560')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ010': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Aceitunas', 1688, '18.44800', '-67.06780'), ('Aguada', 3871, '18.38220', '-67.18780'), ('Anasco', 5880, '18.28850', '-67.14130'), ('Espino', 1422, '18.27830', '-67.11980'), ('Hormigueros', 12444, '18.14440', '-67.12080'), ('La Playa', 2139, '18.28940', '-67.18740'), ('Las Marias', 988, '18.29430', '-67.14480'), ('Luyando', 3553, '18.35840', '-67.15630'), ('Mayaguez', 78647, '18.20360', '-67.14340'), ('Moca', 4757, '18.39660', '-67.11420'), ('Rincon', 1436, '18.34100', '-67.25260'), ('Sabana Eneas', 1847, '18.08410', '-67.08540'), ('San German', 12033, '18.08470', '-67.04550'), ('Stella', 1293, '18.32400', '-67.24720')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ011': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Betances', 835, '18.03150', '-67.13340'), ('Cabo Rojo', 10610, '18.08830', '-67.14860'), ('Fuig', 1204, '17.98830', '-66.91770'), ('Guanica', 9247, '17.97040', '-66.93070'), ('Lajas', 5036, '18.04640', '-67.06030'), ('La Parguera', 1141, '17.97680', '-67.04690'), ('Maria Antonia', 1479, '17.98030', '-66.88970'), ('Palmarejo', 1169, '18.04350', '-67.07750'), ('Pole Ojea', 1829, '17.97890', '-67.18470')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ012': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Culebra', 1418, '18.31320', '-65.30570')], 'partOfState': '', 'wfo': 'SJU'}, +'PRZ013': {'fullStateName': 'Puerto Rico', 'state': 'PR', 'cities': [('Esperanza', 1092, '18.10320', '-65.48000')], 'partOfState': '', 'wfo': 'SJU'}, +'RIZ001': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Blackstone', 43877, '42.01667', '-71.50000'), ('Burrillville', 4742, '41.95370', '-71.71670'), ('Central Falls', 18928, '41.88940', '-71.39390'), ('Cumberland', 7738, '41.97200', '-71.46010'), ('Foster', 4742, '41.85000', '-71.76667'), ('Glocester', 9948, '41.91667', '-71.66667'), ('Lincoln', 7738, '41.91667', '-71.46667'), ('Millbury', 4742, '42.00000', '-71.75000'), ('North Smithfield', 43224, '41.95000', '-71.55000'), ('Scituate', 8626, '41.80000', '-71.61667'), ('Smithfield', 8626, '41.88333', '-71.55000'), ('Woonsocket', 43224, '41.99990', '-71.50040')], 'partOfState': '', 'wfo': 'BOX'}, +'RIZ002': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Cranston', 79269, '41.76660', '-71.48110'), ('East Providence', 48688, '41.80020', '-71.35950'), ('Johnston', 32411, '41.81667', '-71.46667'), ('North Providence', 32411, '41.86120', '-71.45750'), ('Pawtucket', 72958, '41.87330', '-71.37430'), ('Providence', 173618, '41.82200', '-71.41970')], 'partOfState': '', 'wfo': 'BOX'}, +'RIZ003': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Coventry', 29581, '41.68333', '-71.65000'), ('West Greenwich', 5085, '41.63333', '-71.65000')], 'partOfState': '', 'wfo': 'BOX'}, +'RIZ004': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('East Greenwich', 85808, '41.65000', '-71.46667'), ('Warwick', 85808, '41.70220', '-71.42190'), ('West Warwick', 29581, '41.69750', '-71.51830')], 'partOfState': '', 'wfo': 'BOX'}, +'RIZ005': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Barrington', 16819, '41.73520', '-71.31860'), ('Bristol', 22469, '41.67780', '-71.27430'), ('Warren', 22469, '41.71667', '-71.26667')], 'partOfState': '', 'wfo': 'BOX'}, +'RIZ006': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Charlestown', 1497, '41.38333', '-71.65000'), ('Exeter', 6045, '41.56667', '-71.68333'), ('Hopkinton', 7838, '41.45000', '-71.78333'), ('Kingston', 5446, '41.47220', '-71.52340'), ('Narragansett', 16361, '41.42710', '-71.46690'), ('North Kingstown', 26326, '41.51000', '-71.45000'), ('Richmond', 7222, '41.50000', '-71.63333'), ('South Kingstown', 5446, '41.43333', '-71.55000'), ('Westerly', 17682, '41.37060', '-71.81030')], 'partOfState': '', 'wfo': 'BOX'}, +'RIZ007': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Jamestown', 26475, '41.48333', '-71.36667'), ('Little Compton', 3593, '41.50000', '-71.16667'), ('Newport', 26475, '41.49010', '-71.32030'), ('Portsmouth', 2325, '41.60000', '-71.25000'), ('Prudence Island', 2325, '41.60000', '-71.31667'), ('Tiverton', 7282, '41.65420', '-71.20090')], 'partOfState': '', 'wfo': 'BOX'}, +'RIZ008': {'fullStateName': 'Rhode Island', 'state': 'RI', 'cities': [('Block Island', 1497, '41.16667', '-71.58333')], 'partOfState': '', 'wfo': 'BOX'}, +'SCZ001': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Long Creek', 147, '34.77330', '-83.25920'), ('Mountain Rest', 3801, '34.86920', '-83.15330'), ('Salem', 126, '34.89150', '-82.97790'), ('Walhalla', 3801, '34.77200', '-83.06180'), ('Westminster', 2743, '34.66620', '-83.09160')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ002': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Nine Times', 553, '34.91500', '-82.84420'), ('Pumpkintown', 3012, '35.00280', '-82.65310'), ('Rocky Bottom', 385, '35.04580', '-82.80250')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ003': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Caesars Head', 2228, '35.10330', '-82.61420'), ('Cleveland', 2228, '35.07220', '-82.52750'), ('Gowensville', 2472, '35.11470', '-82.22530'), ('Marietta', 2228, '35.03350', '-82.49420'), ('Tigerville', 4099, '35.07100', '-82.37120')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ004': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Fair Play', 1854, '34.51110', '-82.98560'), ('Oakway', 2743, '34.60110', '-83.02580'), ('Seneca', 7652, '34.68610', '-82.95780')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ005': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Central', 3522, '34.72330', '-82.78300'), ('Clemson', 11939, '34.68400', '-82.81290'), ('Dacusville', 14158, '34.93530', '-82.55890'), ('Easley', 17754, '34.82200', '-82.58800'), ('Liberty', 3009, '34.79250', '-82.69540'), ('Norris', 847, '34.76480', '-82.75230'), ('Pickens', 3012, '34.88280', '-82.70810'), ('Six Mile', 553, '34.80780', '-82.81910')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ006': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Berea', 14158, '34.88150', '-82.46510'), ('Downtown Greenville', 56002, '34.83870', '-82.37160'), ('Fork Shoals', 14352, '34.62250', '-82.30690'), ('Fountain Inn', 6017, '34.69350', '-82.20060'), ('Greer', 16843, '34.93900', '-82.23180'), ('Mauldin', 15224, '34.78710', '-82.30150'), ('Paris Mountain State Park', 4099, '34.94500', '-82.39560'), ('Princeton', 65, '34.50080', '-82.28940'), ('Simpsonville', 14352, '34.73140', '-82.25900'), ('Taylors', 20125, '34.91520', '-82.31350'), ('Travelers Rest', 4099, '34.96720', '-82.43780'), ('Welcome', 5362, '34.82090', '-82.45800')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ007': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Boiling Springs SC', 4544, '35.04500', '-81.97670'), ('Campobello', 449, '35.11660', '-82.14940'), ('Chesnee', 1003, '35.14790', '-81.86280'), ('Cowpens', 2279, '35.01880', '-81.80360'), ('Cross Anchor', 8091, '34.64280', '-81.85810'), ('Duncan', 2870, '34.93560', '-82.13700'), ('Enoree', 4229, '34.65640', '-81.96530'), ('Fingerville', 4544, '35.13390', '-82.00670'), ('Inman', 1884, '35.05200', '-82.09330'), ('Landrum', 2472, '35.17420', '-82.18700'), ('Lyman', 2659, '34.95140', '-82.12330'), ('Mayo', 1842, '35.08450', '-81.85440'), ('Moore', 1725, '34.83330', '-81.99220'), ('Pacolet', 2690, '34.89920', '-81.76670'), ('Pacolet Mills', 956, '34.91860', '-81.74720'), ('Pauline', 1725, '34.83310', '-81.87250'), ('Reidville', 478, '34.86280', '-82.11440'), ('Roebuck', 1725, '34.87610', '-81.96420'), ('Spartanburg', 39673, '34.94490', '-81.92830'), ('Wellford', 2030, '34.95680', '-82.09720'), ('Woodruff', 4229, '34.74040', '-82.03280')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ008': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Blacksburg', 1880, '35.12110', '-81.51870'), ('Gaffney', 12968, '35.07230', '-81.65610'), ('Saratt', 39, '34.89580', '-81.54030'), ('Thicketty', 2279, '35.01640', '-81.72500')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ009': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bullock Creek', 39, '34.85420', '-81.41190'), ('Catawba', 49765, '34.85280', '-80.91140'), ('Clover', 4014, '35.11210', '-81.22710'), ('Fort Mill', 7587, '35.00610', '-80.94350'), ('Hickory Grove', 337, '34.98200', '-81.41550'), ('Kings Mountain State Park', 516, '35.13560', '-81.36940'), ('Lake Wylie', 3061, '35.11080', '-81.05390'), ('McConnells', 287, '34.86870', '-81.22760'), ('Rock Hill', 49765, '34.93930', '-81.02840'), ('Sharon', 421, '34.95400', '-81.34430'), ('Smyrna', 59, '35.04200', '-81.41130'), ('Tega Cay', 4044, '35.03470', '-81.01880'), ('York', 6985, '34.99520', '-81.23610')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ010': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Anderson', 25514, '34.51860', '-82.64580'), ('Belton', 4461, '34.52390', '-82.49510'), ('Honea Path', 3504, '34.44700', '-82.39460'), ('Iva', 1156, '34.30680', '-82.66350'), ('Pelzer', 97, '34.64380', '-82.46190'), ('Pendleton', 2966, '34.65080', '-82.78280'), ('Piedmont', 4684, '34.71010', '-82.46430'), ('Powdersville', 5362, '34.79170', '-82.49310'), ('Sadlers Creek State Park', 1854, '34.42500', '-82.82780'), ('Sandy Springs', 2966, '34.59530', '-82.75000'), ('Starr', 173, '34.37710', '-82.69580'), ('Townville', 1478, '34.56360', '-82.89860'), ('Williamston', 3791, '34.61760', '-82.47940')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ011': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Abbeville', 5840, '34.17960', '-82.37820'), ('Antreville', 118, '34.30390', '-82.54250'), ('Calhoun Falls', 2303, '34.09170', '-82.59650'), ('Donalds', 354, '34.37760', '-82.34700'), ('Due West', 1209, '34.33230', '-82.38860'), ('Lowndesville', 166, '34.21030', '-82.64950')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ012': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Clinton', 8091, '34.47780', '-81.86610'), ('Cross Hill', 601, '34.30400', '-81.98320'), ('Gray Court', 1021, '34.60730', '-82.11290'), ('Hickory Tavern', 1021, '34.52110', '-82.18890'), ('Joanna', 1609, '34.41570', '-81.81080'), ('Laurens', 9916, '34.50160', '-82.02510'), ('Ora', 1535, '34.58170', '-81.99580'), ('Waterloo', 203, '34.35280', '-82.05820')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ013': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Adamsburg', 39, '34.79110', '-81.52860'), ('Buffalo', 1462, '34.72430', '-81.68350'), ('Carlisle', 496, '34.59150', '-81.46470'), ('Cross Keys', 1462, '34.63190', '-81.77690'), ('Jonesville', 982, '34.83560', '-81.67990'), ('Lockhart', 39, '34.79470', '-81.46100'), ('Monarch Mills', 2214, '34.71900', '-81.58100'), ('Sedalia', 1462, '34.60390', '-81.72470'), ('Union', 8793, '34.72280', '-81.62380')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ014': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Blackstock', 6476, '34.55830', '-81.15250'), ('Chester', 6476, '34.70570', '-81.21420'), ('Cornwell', 6476, '34.60720', '-81.17940'), ('Edgemoor', 332, '34.80560', '-81.01170'), ('Fort Lawn', 864, '34.70110', '-80.89850'), ('Great Falls', 2194, '34.57460', '-80.90320'), ('Leeds', 496, '34.62940', '-81.39640'), ('Lowrys', 207, '34.80490', '-81.23820'), ('Richburg', 332, '34.71550', '-81.02030')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ015': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Elgin', 2426, '34.67370', '-80.72170'), ('Heath Springs', 864, '34.59020', '-80.67450'), ('Irwin', 1343, '34.69370', '-80.82260'), ('Kershaw', 1645, '34.54510', '-80.58770'), ('Lancaster', 8177, '34.72390', '-80.77960'), ('Lancaster Mill', 2109, '34.71100', '-80.78300'), ('Springdale', 2864, '34.69700', '-80.78300')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ016': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cheraw', 5524, '34.69640', '-79.89530'), ('Chesterfield', 1318, '34.73470', '-80.08470'), ('Jefferson', 704, '34.65140', '-80.38810'), ('McBee', 714, '34.46770', '-80.25830'), ('Mount Croghan', 155, '34.76930', '-80.22510'), ('Pageland', 2521, '34.77300', '-80.38970'), ('Patrick', 354, '34.57570', '-80.04470'), ('Ruby', 348, '34.74410', '-80.17970')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ017': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bennettsville', 9425, '34.63160', '-79.68610'), ('Blenheim', 137, '34.51010', '-79.65260'), ('Brownsville', 0, '34.40000', '-79.60000'), ('Clio', 774, '34.57850', '-79.54640'), ('McColl', 2498, '34.66760', '-79.54530'), ('Tatum', 69, '34.64380', '-79.58670'), ('Wallace', 0, '34.72000', '-79.83000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ018': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Clarks Hill', 376, '33.66000', '-82.16000'), ('McCormick', 1489, '33.91000', '-82.29290'), ('Modoc', 256, '33.71500', '-82.21800'), ('Mount Carmel', 237, '34.00610', '-82.50790'), ('Parksville', 120, '33.78620', '-82.21790'), ('Plum Branch', 98, '33.84940', '-82.25920'), ('Willington', 177, '33.96900', '-82.45400')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ019': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Callison', 105, '34.01440', '-82.12580'), ('Cokesbury', 279, '34.28920', '-82.20810'), ('Coronaca', 170, '34.25970', '-82.09440'), ('Dyson', 49, '34.16170', '-81.93250'), ('Greenwood', 170, '34.19020', '-82.15280'), ('Hodges', 158, '34.28760', '-82.24800'), ('Ninety Six', 1936, '34.17200', '-82.02350'), ('Troy', 105, '33.98740', '-82.29680'), ('Verdery', 170, '34.10920', '-82.24940'), ('Ware Shoals', 2363, '34.39010', '-82.24420')], 'partOfState': 'upstate', 'wfo': 'GSP'}, +'SCZ020': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Chappells', 49, '34.18250', '-81.87000'), ('Little Mountain', 255, '34.19500', '-81.41410'), ('Newberry', 10580, '34.27890', '-81.61190'), ('Peak', 61, '34.23810', '-81.32910'), ('Pomaria', 177, '34.26640', '-81.41980'), ('Prosperity', 1047, '34.21030', '-81.53430'), ('Silverstreet', 216, '34.21810', '-81.71480'), ('Whitmire', 1512, '34.50340', '-81.61560')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ021': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ridgeway', 328, '34.30660', '-80.96070'), ('Winnsboro', 3599, '34.37660', '-81.08970'), ('Winnsboro Mills', 2263, '34.35600', '-81.08300')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ022': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bethune', 352, '34.41390', '-80.34910'), ('Camden', 6682, '34.26160', '-80.61170'), ('Elgin', 2426, '34.16900', '-80.78900'), ('Lugoff', 6278, '34.22570', '-80.68060')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ023': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Clyde', 0, '34.38000', '-80.18000'), ('Darlington', 6720, '34.30180', '-79.86610'), ('Dovesville', 0, '34.40000', '-79.90000'), ('Floyd', 0, '34.37000', '-79.90000'), ('Hartsville', 7556, '34.36950', '-80.08380'), ('Lamar', 1015, '34.16920', '-80.06570'), ('Lydia', 0, '34.28000', '-80.12000'), ('Mont Clare', 0, '34.40000', '-79.82000'), ('North Hartsville', 3136, '34.39950', '-80.07120'), ('Oats', 0, '34.25000', '-80.08000'), ('Society Hill', 700, '34.50920', '-79.85230')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ024': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bingham', 0, '34.43000', '-79.55000'), ('Dillon', 6316, '34.42200', '-79.36980'), ('Floydale', 0, '34.32000', '-79.33000'), ('Fork', 0, '34.28000', '-79.27000'), ('Lake View', 789, '34.34020', '-79.16690'), ('Latta', 1410, '34.33890', '-79.43400'), ('Little Rock', 0, '34.48000', '-79.40000'), ('Minturn', 0, '34.52000', '-79.47000'), ('Oak Grove', 0, '34.35000', '-79.55000'), ('Smithboro', 0, '34.28000', '-79.30000'), ('South Of The Border', 0, '34.50000', '-79.32000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ025': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Edgefield', 4449, '33.78940', '-81.93040'), ('Johnston', 2336, '33.83440', '-81.80510'), ('Murphys Estates', 1518, '33.60200', '-81.94000'), ('Trenton', 226, '33.74090', '-81.84020')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ026': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Monetta', 220, '33.84980', '-81.61050'), ('Ridge Spring', 823, '33.84520', '-81.66270'), ('Saluda', 3066, '34.00070', '-81.77150'), ('Ward', 110, '33.85720', '-81.73230')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ027': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Batesburg', 4380, '33.90740', '-81.54690'), ('Cayce', 12150, '33.95580', '-81.06090'), ('Chapin', 628, '34.16520', '-81.34800'), ('Gaston', 1304, '33.81580', '-81.10110'), ('Gilbert', 500, '33.92360', '-81.39420'), ('Leesville', 2235, '33.91810', '-81.51230'), ('Lexington', 9793, '33.98630', '-81.22900'), ('Oak Grove', 8183, '33.98060', '-81.14340'), ('Pelion', 553, '33.78020', '-81.24790'), ('Pine Ridge', 1593, '33.91090', '-81.09500'), ('Red Bank', 8811, '33.92890', '-81.23330'), ('Seven Oaks', 15755, '34.05100', '-81.14300'), ('South Congaree', 2266, '33.90950', '-81.13710'), ('Springdale', 2877, '33.95980', '-81.11240'), ('Summit', 219, '33.92430', '-81.42330'), ('Swansea', 533, '33.73610', '-81.10640'), ('West Columbia', 13064, '33.99150', '-81.08140')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ028': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Arcadia Lakes', 882, '34.05350', '-80.96210'), ('Blythewood', 170, '34.21700', '-80.97580'), ('Columbia', 116278, '34.00100', '-81.03500'), ('Dentsville', 13009, '34.07650', '-80.95610'), ('Eastover', 830, '33.87840', '-80.69570'), ('Forest Acres', 10558, '34.02630', '-80.97680'), ('Fort Jackson', 0, '34.03920', '-80.88630'), ('Irmo', 11039, '34.09360', '-81.18800'), ('Lake Murray Of Richland', 3526, '34.12000', '-81.26300'), ('St. Andrews', 21814, '34.04850', '-81.10340'), ('Woodfields', 9238, '34.05910', '-80.93100')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ029': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bishopville', 3670, '34.21990', '-80.24790'), ('Lynchburg', 588, '34.05920', '-80.07700')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ030': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Aiken', 25337, '33.54080', '-81.72840'), ('Belvedere', 5631, '33.53560', '-81.94190'), ('Burnettown', 2720, '33.51050', '-81.85420'), ('Clearwater', 4199, '33.50550', '-81.90770'), ('Gloverville', 2805, '33.52810', '-81.81400'), ('Jackson', 1625, '33.32840', '-81.79220'), ('New Ellenton', 2250, '33.41880', '-81.68660'), ('North Augusta', 17574, '33.51770', '-81.95620'), ('Perry', 237, '33.62700', '-81.30920'), ('Salley', 410, '33.56660', '-81.30430'), ('Wagener', 863, '33.65090', '-81.36300'), ('Windsor', 127, '33.48080', '-81.51510')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ031': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cane Savannah', 1542, '33.89200', '-80.44000'), ('Cherryvale', 2461, '33.95400', '-80.46100'), ('Dalzell', 2260, '34.01900', '-80.43100'), ('East Sumter', 1220, '33.92600', '-80.29700'), ('Lakewood', 2603, '33.85200', '-80.35300'), ('Mayesville', 1001, '33.98710', '-80.20740'), ('Millwood', 885, '33.90970', '-80.39420'), ('Mulberry', 841, '33.95190', '-80.33310'), ('Oakland', 1272, '33.98790', '-80.49950'), ('Oswego', 95, '34.01000', '-80.28800'), ('Pinewood', 459, '33.73930', '-80.46270'), ('Privateer', 2118, '33.82200', '-80.39400'), ('Rembert', 406, '34.10000', '-80.53100'), ('Shiloh', 259, '33.93800', '-80.02700'), ('South Sumter', 3365, '33.88840', '-80.34040'), ('Stateburg', 1264, '33.97900', '-80.52600'), ('Sumter', 39643, '33.94440', '-80.39250'), ('Wedgewood', 1544, '33.89200', '-80.50500')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ032': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Coward', 650, '33.97210', '-79.74830'), ('Effingham', 0, '34.07000', '-79.75000'), ('Evergreen', 0, '34.07000', '-79.68000'), ('Florence', 30248, '34.18100', '-79.78040'), ('Johnsonville', 1418, '33.81680', '-79.44900'), ('Lake City', 6478, '33.86780', '-79.75320'), ('Olanta', 613, '33.93540', '-79.93280'), ('Pamplico', 1139, '33.99550', '-79.56900'), ('Quinby', 842, '34.23230', '-79.73260'), ('Scranton', 942, '33.91730', '-79.74360'), ('Timmonsville', 2315, '34.13420', '-79.94240')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ033': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Gresham', 0, '33.93000', '-79.42000'), ('Marion', 7042, '34.17590', '-79.40000'), ('Mullins', 5029, '34.20460', '-79.25360'), ('Nichols', 408, '34.23470', '-79.14930'), ('Rains', 0, '34.10000', '-79.32000'), ('Sellers', 277, '34.28250', '-79.47220')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ035': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Barnwell', 5035, '33.24140', '-81.36510'), ('Blackville', 2973, '33.36020', '-81.28100'), ('Elko', 212, '33.37910', '-81.37950'), ('Hilda', 436, '33.27380', '-81.24660'), ('Kline', 238, '33.12420', '-81.34320'), ('Savannah River Site', 0, '33.26001', '-81.62300'), ('Snelling', 246, '33.24030', '-81.45590'), ('Williston', 3307, '33.40170', '-81.42270')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ036': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bowman', 1198, '33.34890', '-80.68380'), ('Branchville', 1083, '33.25110', '-80.81580'), ('Brookdale', 4724, '33.51540', '-80.83500'), ('Cope', 107, '33.37820', '-81.00680'), ('Cordova', 157, '33.43560', '-80.92000'), ('Edisto', 2632, '33.47800', '-80.89800'), ('Elloree', 742, '33.52980', '-80.57240'), ('Eutawville', 344, '33.39790', '-80.34360'), ('Holly Hill', 1281, '33.32500', '-80.41370'), ('Livingston', 148, '33.55340', '-81.12010'), ('Neeses', 413, '33.53620', '-81.12610'), ('North', 813, '33.61710', '-81.10310'), ('Norway', 389, '33.44960', '-81.12680'), ('Orangeburg', 12765, '33.49390', '-80.86540'), ('Rowesville', 378, '33.37220', '-80.83630'), ('Santee', 740, '33.48010', '-80.48710'), ('Springfield', 504, '33.49570', '-81.27950'), ('Vance', 208, '33.43580', '-80.42150'), ('Wilkinson Heights', 3068, '33.49200', '-80.83300'), ('Woodford', 196, '33.66780', '-81.11170')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ037': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cameron', 449, '33.55840', '-80.71490'), ('St. Matthews', 2107, '33.66370', '-80.77790')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ038': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Central Crossroads', 613, '33.88780', '-79.91310'), ('Manning', 4025, '33.69380', '-80.21560'), ('Paxville', 248, '33.73980', '-80.36040'), ('Summerton', 1061, '33.60220', '-80.35180'), ('Turbeville', 602, '33.89030', '-80.01540')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ039': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cades', 0, '33.78000', '-79.78000'), ('Greeleyville', 452, '33.57790', '-79.98950'), ('Hebron', 0, '33.82000', '-79.88000'), ('Hemingway', 573, '33.75400', '-79.44400'), ('Kingstree', 3496, '33.66510', '-79.82920'), ('Lane', 585, '33.52480', '-79.88050'), ('Nesmith', 0, '33.67000', '-79.52000'), ('Stuckey', 263, '33.73090', '-79.51290'), ('Trio', 0, '33.48000', '-79.72000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ040': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Allendale', 4052, '33.00780', '-81.30860'), ('Appleton', 4052, '33.04330', '-81.36310'), ('Averill', 246, '33.07420', '-81.51360'), ('Baldock', 238, '33.07920', '-81.42360'), ('Barton', 3206, '32.92220', '-81.28670'), ('Fairfax', 3206, '32.95890', '-81.23670'), ('Jennys', 185, '33.02610', '-81.11390'), ('Martin', 238, '33.06890', '-81.47670'), ('Milbury', 4052, '32.92420', '-81.43030'), ('Millett', 246, '33.08110', '-81.53580'), ('Rouse', 370, '32.88530', '-81.27560'), ('Seigling', 4052, '33.04420', '-81.31530'), ('Sycamore', 185, '33.03560', '-81.22220'), ('Ulmer', 102, '33.09720', '-81.20830')], 'partOfState': 'west central', 'wfo': 'CHS'}, +'SCZ041': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bamberg', 3733, '33.29830', '-81.03210'), ('Denmark', 3328, '33.31870', '-81.13850'), ('Ehrhardt', 614, '33.09840', '-81.01340'), ('Govan', 67, '33.22320', '-81.17510'), ('Olar', 237, '33.18030', '-81.18520')], 'partOfState': 'central', 'wfo': 'CAE'}, +'SCZ042': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Almeda', 2074, '32.82970', '-81.04940'), ('Barkerville', 807, '32.70560', '-80.93690'), ('Blountville', 807, '32.69640', '-80.85170'), ('Brighton', 227, '32.61250', '-81.27390'), ('Brunson', 589, '32.92530', '-81.18750'), ('Camp Branch', 2074, '32.81030', '-81.02330'), ('Crocketville', 2837, '32.91640', '-81.07750'), ('Cummings', 2074, '32.78690', '-80.99060'), ('Davidson', 807, '32.72470', '-80.90080'), ('De Loach', 286, '32.65970', '-81.17920'), ('Dukes', 370, '32.89750', '-81.23810'), ('Early Branch', 807, '32.74560', '-80.92810'), ('Estill', 2425, '32.75470', '-81.24220'), ('Fechtig', 807, '32.76890', '-80.96420'), ('Furman', 286, '32.68140', '-81.18830'), ('Garnett', 227, '32.60610', '-81.24560'), ('Gifford', 370, '32.85940', '-81.23920'), ('Hampton', 2837, '32.87780', '-81.12780'), ('Kress', 807, '32.64330', '-80.88440'), ('Lena', 2425, '32.75330', '-81.21530'), ('Luray', 115, '32.81360', '-81.24000'), ('McPhersonville', 807, '32.69170', '-80.91940'), ('Miley', 2074, '32.94780', '-81.03190'), ('Nixville', 286, '32.74280', '-81.15220'), ('Scotia', 227, '32.68080', '-81.24360'), ('Shirley', 227, '32.66000', '-81.31640'), ('Stafford', 286, '32.67000', '-81.16500'), ('Valentine', 115, '32.82330', '-81.25780'), ('Varnville', 2074, '32.85030', '-81.07940'), ('Yemassee', 807, '32.69000', '-80.85080')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCZ043': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ashepoo', 5153, '32.74000', '-80.55060'), ('Ashton', 114, '33.01580', '-80.97080'), ('Beck Landing', 707, '32.80440', '-80.41890'), ('Bells Crossroads', 116, '32.97890', '-80.85170'), ('Blake', 807, '32.69170', '-80.76940'), ('Caldwell', 114, '33.04170', '-80.90390'), ('Canadys', 2092, '33.05560', '-80.62060'), ('Colleton', 116, '33.03970', '-80.88250'), ('Cottageville', 707, '32.93670', '-80.48110'), ('Drawdy', 5153, '32.84780', '-80.62500'), ('Gloverville', 707, '32.90000', '-80.49360'), ('Green Pond', 5153, '32.73170', '-80.61440'), ('Hendersonville', 5153, '32.79060', '-80.72560'), ('Hiotts', 707, '32.97860', '-80.54470'), ('Islandton', 116, '32.90890', '-80.93560'), ('Jacksonboro', 707, '32.77000', '-80.45470'), ('Lodge', 114, '33.06780', '-80.95390'), ('Moselle', 114, '32.96580', '-81.01280'), ('Neyles', 5153, '32.82500', '-80.55860'), ('Padgetts', 116, '33.07170', '-80.88640'), ('Parkers Ferry Land', 707, '32.85920', '-80.40390'), ('Rhodes Crossroads', 5153, '32.95860', '-80.71000'), ('Ritter', 5153, '32.78940', '-80.63060'), ('Round O', 707, '32.93690', '-80.54110'), ('Ruffin', 116, '33.00440', '-80.81580'), ('Salkehatchie', 807, '32.70610', '-80.81330'), ('Sidney', 707, '32.99940', '-80.56860'), ('Smoaks', 140, '33.08940', '-80.81420'), ('Smyly', 116, '33.02580', '-80.79580'), ('Springtown', 207, '33.09890', '-80.67640'), ('Stokes', 5153, '32.95920', '-80.72580'), ('Thayer', 5153, '32.87440', '-80.62890'), ('Walterboro', 5153, '32.90500', '-80.66690'), ('White Hall', 807, '32.72170', '-80.69060'), ('Williams', 116, '33.03440', '-80.84280')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCZ044': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Brownsville', 27752, '33.02860', '-80.19830'), ('Byrd', 2092, '33.16890', '-80.51720'), ('Canaan', 27752, '32.96560', '-80.29440'), ('Cat Hole', 207, '33.14440', '-80.69420'), ('Centerville', 27752, '32.99560', '-80.17060'), ('Clubhouse Crossroad', 2214, '32.89780', '-80.32280'), ('Cooke Crossroads', 27752, '32.94810', '-80.20580'), ('Dorchester', 594, '33.13970', '-80.39440'), ('Dorchester Estates', 27752, '32.96780', '-80.19690'), ('Duncan Chapel', 2092, '33.29580', '-80.56060'), ('Gettysville', 707, '32.90170', '-80.36420'), ('Giant', 594, '33.23690', '-80.44500'), ('Givhans', 1690, '33.01140', '-80.33780'), ('Greggs Landing', 904, '32.92830', '-80.15420'), ('Grover', 2092, '33.10500', '-80.59500'), ('Harleyville', 594, '33.21440', '-80.44810'), ('Hudsontown', 2092, '33.20580', '-80.59110'), ('Jedburg', 1690, '33.05560', '-80.23860'), ('Knightsville', 27752, '33.01140', '-80.23810'), ('Lotts Crossroads', 1690, '33.04080', '-80.24940'), ('Mount Zion', 2092, '33.22560', '-80.58750'), ('Norman Landing', 707, '32.98440', '-80.40860'), ('Oakbrook', 27752, '32.95830', '-80.17220'), ('Old Saint George', 2092, '33.17110', '-80.61250'), ('Orchard Hill', 27752, '33.02530', '-80.22280'), ('Pregnall', 594, '33.15610', '-80.46470'), ('Reevesville', 207, '33.20560', '-80.64810'), ('Ridgeville', 1690, '33.09560', '-80.31560'), ('Rosinville', 2092, '33.25440', '-80.52780'), ('Saint George', 2092, '33.18580', '-80.57580'), ('Slandsville', 27752, '32.98030', '-80.24170'), ('Stallsville', 27752, '32.99640', '-80.18220'), ('Summerville', 27752, '33.01830', '-80.17580'), ('Texas', 2092, '33.13190', '-80.55390'), ('Westoe', 27752, '32.94580', '-80.23360')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ045': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Alvin', 1776, '33.34890', '-79.81640'), ('Ararat', 29208, '32.97830', '-80.00360'), ('Bethera', 97, '33.20140', '-79.78830'), ('Beufordtown', 97, '33.28390', '-79.74360'), ('Black Creek', 344, '33.28470', '-80.25780'), ('Bonneau', 354, '33.30530', '-79.95810'), ('Bonneau Beach', 354, '33.31970', '-80.00060'), ('Calestown', 97, '33.29030', '-79.78690'), ('Carnes Crossroad', 13264, '33.06330', '-80.09330'), ('Chicora', 5952, '33.26690', '-80.10970'), ('College Park', 13264, '33.01720', '-80.09830'), ('Comingtee', 29208, '33.07940', '-79.91720'), ('Cordesville', 5952, '33.13190', '-79.88360'), ('Cross', 354, '33.32720', '-80.14860'), ('Cross Cross Roads', 354, '33.34440', '-80.14280'), ('Driggerstown', 13264, '33.03030', '-80.09140'), ('Eadytown', 344, '33.41220', '-80.14720'), ('Ebenezer', 1281, '33.25580', '-80.32500'), ('Ellwood', 5952, '33.11080', '-79.93640'), ('Farewell Corner', 97, '33.22280', '-79.74750'), ('Goose Creek', 29208, '32.98080', '-80.03280'), ('Groomville', 13264, '33.08560', '-80.05690'), ('Grove Hall', 13264, '33.04530', '-80.07780'), ('Halfway Creek', 97, '33.11360', '-79.64750'), ('Huger', 97, '33.09640', '-79.80360'), ('Hussertown', 344, '33.25560', '-80.25830'), ('Jamestown', 97, '33.28580', '-79.69280'), ('Judge Town', 1776, '33.43190', '-80.01940'), ('Limerick', 97, '33.13580', '-79.81530'), ('Macbeth', 354, '33.26750', '-79.97500'), ('Mepkin', 5952, '33.11470', '-79.95250'), ('Moncks Corner', 5952, '33.19580', '-80.01330'), ('Moorefield', 5952, '33.28860', '-80.16890'), ('Mount Holly', 29208, '33.03420', '-80.03470'), ('Murraysville', 5952, '33.18110', '-80.10170'), ('New Hope', 27752, '33.10640', '-80.18830'), ('New Hope', 29208, '33.08940', '-79.81670'), ('Newland', 97, '33.20420', '-79.61640'), ('Oakatee', 13264, '33.04170', '-80.07920'), ('Oakley', 5952, '33.12390', '-80.01920'), ('Old Cordesville', 5952, '33.17750', '-79.91690'), ('Palmerville', 97, '33.25390', '-79.64780'), ('Pimlico', 5952, '33.09720', '-79.96060'), ('Pineville', 1776, '33.42810', '-80.02940'), ('Pinopolis', 5952, '33.22640', '-80.03780'), ('Pringletown', 1690, '33.14360', '-80.30610'), ('Prioleau', 344, '33.36420', '-80.19580'), ('Richmond', 29208, '33.07530', '-79.87890'), ('Russellville', 1776, '33.39690', '-79.97190'), ('Saint Johns', 5952, '33.12060', '-80.06920'), ('Saint Stephen', 1776, '33.40420', '-79.92190'), ('Sandridge', 1281, '33.25500', '-80.31610'), ('Sangaree', 13264, '33.03530', '-80.12810'), ('Shulerville', 97, '33.18720', '-79.63220'), ('Simmonsville', 97, '33.24830', '-79.64060'), ('Simpson Crossing', 5952, '33.24940', '-79.97530'), ('Smith', 29208, '33.05780', '-79.77000'), ('Spring Hill', 594, '33.23110', '-80.32470'), ('Stony Landing', 5952, '33.19310', '-79.96940'), ('Strawberry', 29208, '33.09140', '-80.03080'), ('Sugar Hill', 5952, '33.20780', '-80.04580'), ('Tarry Town', 29208, '33.08110', '-79.99310'), ('Thomas Corner', 97, '33.16060', '-79.71500'), ('Wadboo', 5952, '33.19080', '-79.93780'), ('Wampee', 5952, '33.24310', '-80.03170'), ('Wappoola', 5952, '33.09780', '-79.99030'), ('Whitesville', 5952, '33.14720', '-80.06170'), ('Wilder', 354, '33.34690', '-79.94330'), ('Wilsons Landing', 344, '33.44830', '-80.16190')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ047': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bashan', 2518, '32.55140', '-80.94640'), ('Boyd', 2518, '32.44530', '-80.89640'), ('Coosawhatchie', 2518, '32.58860', '-80.92750'), ('Cosby', 227, '32.58170', '-81.24830'), ('Deerfield', 1793, '32.38220', '-81.09670'), ('Gillisonville', 2518, '32.61080', '-81.00390'), ('Gilmania', 807, '32.61170', '-80.91080'), ('Grahamville', 2518, '32.47390', '-80.96360'), ('Grays', 286, '32.67360', '-81.02060'), ('Hardeeville', 1793, '32.28690', '-81.08080'), ('Knowles', 6625, '32.50940', '-80.85830'), ('Limehouse', 1793, '32.21250', '-81.07080'), ('Mitchellville', 2518, '32.46170', '-80.99220'), ('Morgan', 1793, '32.30360', '-81.08250'), ('Murad', 6625, '32.49580', '-80.87030'), ('Nevadum', 2518, '32.45860', '-80.88940'), ('Okatie', 1793, '32.35190', '-80.97830'), ('Old House', 2518, '32.45940', '-80.89670'), ('Pineland', 286, '32.60000', '-81.15970'), ('Pocotaligo', 807, '32.63690', '-80.86360'), ('Possum Corner', 807, '32.68420', '-80.97610'), ('Purysburgh', 1793, '32.29720', '-81.11940'), ('Ricetown', 2518, '32.51690', '-80.96690'), ('Ridgeland', 2518, '32.48060', '-80.98060'), ('Robertville', 286, '32.58640', '-81.19860'), ('Switzerland', 2518, '32.42750', '-81.00890'), ('Tarboro', 286, '32.53170', '-81.15440'), ('Tillman', 2518, '32.46330', '-81.10750')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCZ047': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bashan', 2518, '32.55140', '-80.94640'), ('Boyd', 2518, '32.44530', '-80.89640'), ('Coosawhatchie', 2518, '32.58860', '-80.92750'), ('Cosby', 227, '32.58170', '-81.24830'), ('Deerfield', 1793, '32.38220', '-81.09670'), ('Gillisonville', 2518, '32.61080', '-81.00390'), ('Gilmania', 807, '32.61170', '-80.91080'), ('Grahamville', 2518, '32.47390', '-80.96360'), ('Grays', 286, '32.67360', '-81.02060'), ('Hardeeville', 1793, '32.28690', '-81.08080'), ('Knowles', 6625, '32.50940', '-80.85830'), ('Limehouse', 1793, '32.21250', '-81.07080'), ('Mitchellville', 2518, '32.46170', '-80.99220'), ('Morgan', 1793, '32.30360', '-81.08250'), ('Murad', 6625, '32.49580', '-80.87030'), ('Nevadum', 2518, '32.45860', '-80.88940'), ('Okatie', 1793, '32.35190', '-80.97830'), ('Old House', 2518, '32.45940', '-80.89670'), ('Pineland', 286, '32.60000', '-81.15970'), ('Pocotaligo', 807, '32.63690', '-80.86360'), ('Possum Corner', 807, '32.68420', '-80.97610'), ('Purysburgh', 1793, '32.29720', '-81.11940'), ('Ricetown', 2518, '32.51690', '-80.96690'), ('Ridgeland', 2518, '32.48060', '-80.98060'), ('Robertville', 286, '32.58640', '-81.19860'), ('Switzerland', 2518, '32.42750', '-81.00890'), ('Tarboro', 286, '32.53170', '-81.15440'), ('Tillman', 2518, '32.46330', '-81.10750')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ048': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ashdale', 504, '32.44810', '-80.61940'), ('Bluffton', 1275, '32.23690', '-80.86060'), ('Burton', 7180, '32.43560', '-80.72420'), ('Calibogue Cay', 33862, '32.14830', '-80.79890'), ('Chesterfield', 7180, '32.40140', '-80.76420'), ('Dale', 504, '32.55640', '-80.69000'), ('Daniels', 504, '32.47860', '-80.62750'), ('Daufuskie Island', 1275, '32.12500', '-80.86670'), ('Folly Field', 33862, '32.20190', '-80.69060'), ('Forest Beach', 33862, '32.14640', '-80.74390'), ('Frogmore', 504, '32.39670', '-80.57640'), ('Gardens Corner', 807, '32.60060', '-80.76140'), ('Harbortown', 33862, '32.13330', '-80.81250'), ('Hilton Head Island', 33862, '32.21610', '-80.75280'), ('Hunting Island', 641, '32.37500', '-80.44170'), ('Lands End', 4841, '32.29170', '-80.64170'), ('Laurel Bay', 6625, '32.45000', '-80.78500'), ('Lawton', 33862, '32.14330', '-80.78860'), ('Lobeco', 6625, '32.55250', '-80.74360'), ('Myrtle Island', 1275, '32.21170', '-80.86500'), ('Parris Island', 4841, '32.35000', '-80.68330'), ('Port Royal', 3950, '32.37890', '-80.69280'), ('Pritchardville', 1275, '32.23780', '-80.96440'), ('Scott', 4841, '32.34640', '-80.62330'), ('Sea Pines', 33862, '32.13330', '-80.79500'), ('Sheldon', 807, '32.60140', '-80.79330'), ('Springfield', 504, '32.47920', '-80.63060'), ('Walling Grove', 504, '32.49220', '-80.65780')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ048': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Ashdale', 504, '32.44810', '-80.61940'), ('Bluffton', 1275, '32.23690', '-80.86060'), ('Burton', 7180, '32.43560', '-80.72420'), ('Calibogue Cay', 33862, '32.14830', '-80.79890'), ('Chesterfield', 7180, '32.40140', '-80.76420'), ('Dale', 504, '32.55640', '-80.69000'), ('Daniels', 504, '32.47860', '-80.62750'), ('Daufuskie Island', 1275, '32.12500', '-80.86670'), ('Folly Field', 33862, '32.20190', '-80.69060'), ('Forest Beach', 33862, '32.14640', '-80.74390'), ('Frogmore', 504, '32.39670', '-80.57640'), ('Gardens Corner', 807, '32.60060', '-80.76140'), ('Harbortown', 33862, '32.13330', '-80.81250'), ('Hilton Head Island', 33862, '32.21610', '-80.75280'), ('Hunting Island', 641, '32.37500', '-80.44170'), ('Lands End', 4841, '32.29170', '-80.64170'), ('Laurel Bay', 6625, '32.45000', '-80.78500'), ('Lawton', 33862, '32.14330', '-80.78860'), ('Lobeco', 6625, '32.55250', '-80.74360'), ('Myrtle Island', 1275, '32.21170', '-80.86500'), ('Parris Island', 4841, '32.35000', '-80.68330'), ('Port Royal', 3950, '32.37890', '-80.69280'), ('Pritchardville', 1275, '32.23780', '-80.96440'), ('Scott', 4841, '32.34640', '-80.62330'), ('Sea Pines', 33862, '32.13330', '-80.79500'), ('Sheldon', 807, '32.60140', '-80.79330'), ('Springfield', 504, '32.47920', '-80.63060'), ('Walling Grove', 504, '32.49220', '-80.65780')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ049': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Bennetts Point', 641, '32.56080', '-80.45470'), ('Fenwick', 1230, '32.65140', '-80.45170'), ('Wiggins', 504, '32.60440', '-80.54390')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCZ050': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Adams Run', 1230, '32.72060', '-80.34830'), ('Awendaw', 1195, '33.03750', '-79.61330'), ('Battery Point', 96650, '32.74280', '-79.94920'), ('Buck Hall', 459, '33.05310', '-79.56000'), ('Canady Landing', 707, '32.81530', '-80.40500'), ('Capwells Crossroads', 2214, '32.77920', '-80.26860'), ('Charleston', 96650, '32.78330', '-79.93750'), ('Charleston Airport', 79641, '32.89870', '-80.04050'), ('Citadel Mall', 96650, '32.79670', '-80.04000'), ('Delemar Crossroads', 2214, '32.84610', '-80.28440'), ('Dewees Island', 4583, '32.85000', '-79.71670'), ('Edisto Island', 641, '32.56000', '-80.28000'), ('Folly Beach', 2116, '32.65500', '-79.94060'), ('Fort Moultrie', 1911, '32.75890', '-79.85810'), ('Germantown', 459, '33.19530', '-79.44750'), ('Hanahan', 12937, '32.91830', '-80.02220'), ('Hobcaw Point', 47609, '32.82000', '-79.89420'), ('Hollywood', 3946, '32.73420', '-80.24190'), ('Huskum Corner Crosroads', 1163, '32.67500', '-80.05060'), ('James Island', 2116, '32.73330', '-79.93330'), ('Johns Island', 96650, '32.72500', '-80.07500'), ('Kiawah Island', 1163, '32.60810', '-80.08500'), ('Ladson', 13264, '32.98560', '-80.11000'), ('Lambs', 79641, '32.88640', '-80.06810'), ('Legareville', 1163, '32.65470', '-80.05310'), ('Lincolnville', 904, '33.00670', '-80.15560'), ('Maryville', 96650, '32.79220', '-79.99530'), ('McClellanville', 459, '33.08810', '-79.46140'), ('Meggett', 1230, '32.71780', '-80.23920'), ('Midland Park', 79641, '32.92060', '-80.04080'), ('Mount Pleasant', 47609, '32.79390', '-79.86280'), ('North Charleston', 79641, '32.85440', '-79.97500'), ('Northwoods Mall', 79641, '32.94080', '-80.04580'), ('Oakland', 96650, '32.78530', '-80.03530'), ('Otranto', 12937, '32.96500', '-80.04440'), ('Parkers Ferry', 1230, '32.76000', '-80.39640'), ('Rantowles', 2214, '32.78280', '-80.14890'), ('Ravenel', 2214, '32.76310', '-80.25030'), ('Red Top', 3946, '32.80250', '-80.12280'), ('Remleys Point', 47609, '32.80970', '-79.89390'), ('Rockville', 137, '32.60060', '-80.19500'), ('Saint Andrews', 96650, '32.78330', '-79.98330'), ('Seabrook Island', 1250, '32.57690', '-80.17080'), ('Secessionville', 2116, '32.70560', '-79.93940'), ('Shadowmoss', 79641, '32.85000', '-80.07500'), ('Snowden', 47609, '32.84140', '-79.84670'), ('South Santee', 459, '33.17330', '-79.41780'), ('South Windermere', 96650, '32.77580', '-79.98030'), ('Stiles Point', 2116, '32.73920', '-79.92360'), ('Stono', 96650, '32.73000', '-79.98250'), ('Sullivans Island', 1911, '32.76310', '-79.83690'), ('Wadmalaw Island', 3946, '32.68330', '-80.16670'), ('West Ashley', 96650, '32.80000', '-80.01000'), ('Whitehall Terrace', 4583, '32.87330', '-79.74860'), ('Yonges Island', 1230, '32.69330', '-80.23080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ050': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Adams Run', 1230, '32.72060', '-80.34830'), ('Awendaw', 1195, '33.03750', '-79.61330'), ('Battery Point', 96650, '32.74280', '-79.94920'), ('Buck Hall', 459, '33.05310', '-79.56000'), ('Canady Landing', 707, '32.81530', '-80.40500'), ('Capwells Crossroads', 2214, '32.77920', '-80.26860'), ('Charleston', 96650, '32.78330', '-79.93750'), ('Charleston Airport', 79641, '32.89870', '-80.04050'), ('Citadel Mall', 96650, '32.79670', '-80.04000'), ('Delemar Crossroads', 2214, '32.84610', '-80.28440'), ('Dewees Island', 4583, '32.85000', '-79.71670'), ('Edisto Island', 641, '32.56000', '-80.28000'), ('Folly Beach', 2116, '32.65500', '-79.94060'), ('Fort Moultrie', 1911, '32.75890', '-79.85810'), ('Germantown', 459, '33.19530', '-79.44750'), ('Hanahan', 12937, '32.91830', '-80.02220'), ('Hobcaw Point', 47609, '32.82000', '-79.89420'), ('Hollywood', 3946, '32.73420', '-80.24190'), ('Huskum Corner Crosroads', 1163, '32.67500', '-80.05060'), ('James Island', 2116, '32.73330', '-79.93330'), ('Johns Island', 96650, '32.72500', '-80.07500'), ('Kiawah Island', 1163, '32.60810', '-80.08500'), ('Ladson', 13264, '32.98560', '-80.11000'), ('Lambs', 79641, '32.88640', '-80.06810'), ('Legareville', 1163, '32.65470', '-80.05310'), ('Lincolnville', 904, '33.00670', '-80.15560'), ('Maryville', 96650, '32.79220', '-79.99530'), ('McClellanville', 459, '33.08810', '-79.46140'), ('Meggett', 1230, '32.71780', '-80.23920'), ('Midland Park', 79641, '32.92060', '-80.04080'), ('Mount Pleasant', 47609, '32.79390', '-79.86280'), ('North Charleston', 79641, '32.85440', '-79.97500'), ('Northwoods Mall', 79641, '32.94080', '-80.04580'), ('Oakland', 96650, '32.78530', '-80.03530'), ('Otranto', 12937, '32.96500', '-80.04440'), ('Parkers Ferry', 1230, '32.76000', '-80.39640'), ('Rantowles', 2214, '32.78280', '-80.14890'), ('Ravenel', 2214, '32.76310', '-80.25030'), ('Red Top', 3946, '32.80250', '-80.12280'), ('Remleys Point', 47609, '32.80970', '-79.89390'), ('Rockville', 137, '32.60060', '-80.19500'), ('Saint Andrews', 96650, '32.78330', '-79.98330'), ('Seabrook Island', 1250, '32.57690', '-80.17080'), ('Secessionville', 2116, '32.70560', '-79.93940'), ('Shadowmoss', 79641, '32.85000', '-80.07500'), ('Snowden', 47609, '32.84140', '-79.84670'), ('South Santee', 459, '33.17330', '-79.41780'), ('South Windermere', 96650, '32.77580', '-79.98030'), ('Stiles Point', 2116, '32.73920', '-79.92360'), ('Stono', 96650, '32.73000', '-79.98250'), ('Sullivans Island', 1911, '32.76310', '-79.83690'), ('Wadmalaw Island', 3946, '32.68330', '-80.16670'), ('West Ashley', 96650, '32.80000', '-80.01000'), ('Whitehall Terrace', 4583, '32.87330', '-79.74860'), ('Yonges Island', 1230, '32.69330', '-80.23080')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ051': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Chelsea', 1275, '32.35420', '-80.88830'), ('Jasper', 1275, '32.34280', '-80.94940'), ('Levy', 1793, '32.20280', '-81.02920')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCZ051': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Chelsea', 1275, '32.35420', '-80.88830'), ('Jasper', 1275, '32.34280', '-80.94940'), ('Levy', 1793, '32.20280', '-81.02920')], 'partOfState': 'southern', 'wfo': 'CHS'}, +'SCZ052': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cainhoy', 96650, '32.92920', '-79.83140'), ('Charity', 29208, '33.00580', '-79.85000'), ('Cote Bas Landing', 29208, '33.01470', '-79.92420'), ('Daniel Island', 96650, '32.87500', '-79.90000'), ('Hagan', 29208, '33.05720', '-79.90920'), ('Moreland', 29208, '33.00920', '-79.89530'), ('Poppenheim Crossing', 29208, '32.96830', '-80.00190'), ('Red Bank Landing', 29208, '32.95170', '-79.93190'), ('Wando', 47609, '32.93330', '-79.83190'), ('Woodland', 29208, '33.03780', '-79.90670'), ('Woodland Landing', 29208, '33.04560', '-79.91580')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ052': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Cainhoy', 96650, '32.92920', '-79.83140'), ('Charity', 29208, '33.00580', '-79.85000'), ('Cote Bas Landing', 29208, '33.01470', '-79.92420'), ('Daniel Island', 96650, '32.87500', '-79.90000'), ('Hagan', 29208, '33.05720', '-79.90920'), ('Moreland', 29208, '33.00920', '-79.89530'), ('Poppenheim Crossing', 29208, '32.96830', '-80.00190'), ('Red Bank Landing', 29208, '32.95170', '-79.93190'), ('Wando', 47609, '32.93330', '-79.83190'), ('Woodland', 29208, '33.03780', '-79.90670'), ('Woodland Landing', 29208, '33.04560', '-79.91580')], 'partOfState': 'southeast', 'wfo': 'CHS'}, +'SCZ053': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Allsbrook', 0, '34.02000', '-78.95000'), ('Aynor', 587, '33.99840', '-79.20110'), ('Bayboro', 0, '34.02000', '-79.02000'), ('Bucksport', 1117, '33.67200', '-79.11270'), ('Conway', 11788, '33.83860', '-79.06090'), ('Galivants Ferry', 0, '34.05000', '-79.25000'), ('Green Sea', 0, '34.13000', '-78.98000'), ('Longs', 0, '33.93000', '-78.73000'), ('Loris', 2079, '34.05660', '-78.89030'), ('Red Hill', 10509, '33.78710', '-79.00970')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ054': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Atlantic Beach', 351, '33.80300', '-78.71750'), ('Briarcliffe Acres', 470, '33.78910', '-78.74760'), ('Forestbrook', 3391, '33.72300', '-78.96610'), ('Garden City', 9357, '33.59260', '-79.00900'), ('Little River', 7027, '33.87300', '-78.63150'), ('Myrtle Beach', 22759, '33.69880', '-78.89220'), ('North Myrtle Beach', 10974, '33.82760', '-78.67110'), ('Socastee', 14295, '33.68710', '-79.00890'), ('Surfside Beach', 4425, '33.60960', '-78.97770')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ055': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Andrews', 3068, '33.44860', '-79.56620'), ('Lambert', 0, '33.33000', '-79.57000'), ('Oatland', 0, '33.50000', '-79.35000'), ('Plantersville', 0, '33.55000', '-79.22000'), ('Sampit', 0, '33.37000', '-79.45000'), ('Yauhannah', 0, '33.63000', '-79.18000')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ056': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Georgetown', 8950, '33.36300', '-79.29610'), ('Jackson', 0, '33.50000', '-79.20000'), ('Litchfield Beach', 0, '33.47000', '-79.10000'), ('Murrells Inlet', 5519, '33.55490', '-79.05000'), ("Pawley's Island", 138, '33.42200', '-79.12610')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SCZ056': {'fullStateName': 'South Carolina', 'state': 'SC', 'cities': [('Georgetown', 8950, '33.36300', '-79.29610'), ('Jackson', 0, '33.50000', '-79.20000'), ('Litchfield Beach', 0, '33.47000', '-79.10000'), ('Murrells Inlet', 5519, '33.55490', '-79.05000'), ("Pawley's Island", 138, '33.42200', '-79.12610')], 'partOfState': 'northeast', 'wfo': 'ILM'}, +'SDZ001': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Buffalo', 380, '45.58433', '-103.54758'), ('Camp Crook', 56, '45.55003', '-103.98328'), ('Gustave', 56, '45.28333', '-103.98328'), ('Harding', 56, '45.39503', '-103.83228'), ('Ladner', 380, '45.83333', '-103.73328'), ('Ludlow', 380, '45.83333', '-103.38328'), ('Ralph', 22, '45.77353', '-103.06518'), ('Redig', 380, '45.27123', '-103.54748'), ('Reva', 380, '45.54653', '-103.08298')], 'partOfState': 'northwest', 'wfo': 'UNR'}, +'SDZ002': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bison', 373, '45.52433', '-102.46508'), ('Chance', 373, '45.40963', '-102.27928'), ('Date', 373, '45.36673', '-102.64998'), ('Lemmon', 1398, '45.93843', '-102.15818'), ('Lodgepole', 1574, '45.80883', '-102.66198'), ('Meadow', 373, '45.53333', '-102.21668'), ('Prairie City', 373, '45.53333', '-102.79998'), ('Shadehill', 1398, '45.76673', '-102.18328'), ('Shadehill Reservoir', 1398, '45.75003', '-102.24998'), ('Sorum', 373, '45.45263', '-102.93718'), ('Usta', 489, '45.21833', '-102.16158'), ('White Butte', 158, '45.93903', '-102.35938'), ('Zeona', 373, '45.19173', '-102.92058')], 'partOfState': 'northwest', 'wfo': 'UNR'}, +'SDZ003': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Black Horse', 217, '45.71540', '-101.38060'), ('Bullhead', 308, '45.76790', '-101.08010'), ('Indian Memorial Rec Area', 3574, '45.57440', '-100.48370'), ('Keldron', 82, '45.93380', '-101.80650'), ('Kenel', 339, '45.85580', '-100.45850'), ('Klein Ranch', 217, '45.66580', '-101.34780'), ('Little Eagle', 370, '45.68160', '-100.79630'), ('Mahto', 370, '45.75630', '-100.67530'), ('McIntosh', 217, '45.92060', '-101.34960'), ('McLaughlin', 775, '45.81300', '-100.81100'), ('Morristown', 82, '45.93900', '-101.71830'), ('Shambo Ranch', 82, '45.53320', '-101.83420'), ('Thunder Hawk', 1398, '45.93750', '-101.98330'), ('Trail City', 370, '45.47330', '-100.73120'), ('Wakpala', 3574, '45.65700', '-100.53550'), ('Walker', 308, '45.91020', '-101.09030'), ('Watauga', 82, '45.92250', '-101.54030')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ004': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Artas', 13, '45.88770', '-99.80600'), ('Herreid', 482, '45.83690', '-100.07520'), ('Mound City', 84, '45.72680', '-100.06770'), ('Pollock', 339, '45.90150', '-100.29020')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ005': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Eureka', 1101, '45.76870', '-99.62300'), ('Greenway', 13, '45.91240', '-99.71340'), ('Hillsview', 3, '45.66520', '-99.55950'), ('Leola', 462, '45.72130', '-98.93810'), ('Long Lake', 58, '45.85630', '-99.20620'), ('Long Lake Colony', 12, '45.60760', '-98.81930'), ('Spring Creek Colony', 56, '45.90910', '-98.88000'), ('Wetonka', 12, '45.62460', '-98.77000')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ006': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Aberdeen', 24658, '45.46750', '-98.48240'), ('Barnard', 125, '45.73210', '-98.49570'), ('Bath', 140, '45.46900', '-98.32380'), ('Claremont', 130, '45.67200', '-98.01450'), ('Columbia', 140, '45.61490', '-98.31160'), ('Ferney', 6, '45.33020', '-98.09720'), ('Frederick', 255, '45.83280', '-98.50660'), ('Groton', 1356, '45.45210', '-98.10010'), ('Hecla', 314, '45.88210', '-98.15140'), ('Houghton', 314, '45.76290', '-98.21050'), ('Putney', 1356, '45.56030', '-98.17530'), ('Richmond Lake Rec Area', 24658, '45.54190', '-98.61080'), ('Stratford', 96, '45.31710', '-98.30380'), ('Verdon', 6, '45.24470', '-98.09810'), ('Warner', 419, '45.32430', '-98.49520'), ('Westport', 125, '45.64790', '-98.49730')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ007': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Amherst', 130, '45.73790', '-97.92170'), ('Britton', 1328, '45.78950', '-97.74950'), ('Eden', 97, '45.61620', '-97.42010'), ('Fort Sisseton Station', 97, '45.65730', '-97.52970'), ('Hillhead', 281, '45.83500', '-97.39210'), ('Kidder', 1328, '45.88320', '-97.71420'), ('Lake City', 47, '45.72380', '-97.41360'), ('Langford', 290, '45.60230', '-97.82950'), ('Roy Lake State Park', 47, '45.71030', '-97.43030'), ('Veblen', 281, '45.86190', '-97.28680')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ008': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Claire City', 85, '45.85640', '-97.10240'), ('Corona', 112, '45.33480', '-96.76520'), ('New Effington', 233, '45.85520', '-96.91810'), ('Ortley', 54, '45.33520', '-97.20400'), ('Peever', 209, '45.54250', '-96.95570'), ('Rosholt', 419, '45.86610', '-96.73170'), ('Rudebusch Corner', 54, '45.42820', '-97.15450'), ('Sisseton', 2572, '45.66240', '-97.04610'), ('Summit', 281, '45.30380', '-97.03680'), ('Victor', 233, '45.86870', '-96.83570'), ('White Rock', 18, '45.92530', '-96.57250'), ('Wilmot', 543, '45.40930', '-96.85690')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ009': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Akaska', 31, '45.33190', '-100.12070'), ('Glenham', 139, '45.53330', '-100.27030'), ('Indian Creek Rec Area', 3574, '45.51860', '-100.38630'), ('Java', 197, '45.50360', '-99.88420'), ('Lowry', 10, '45.31540', '-99.98200'), ('Mobridge', 3574, '45.54070', '-100.43580'), ('Selby', 736, '45.50470', '-100.03240'), ('Swan Creek Rec Area', 31, '45.31580', '-100.26390')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ010': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bowdle', 571, '45.45170', '-99.65590'), ('Cravens Corner', 943, '45.44820', '-98.92700'), ('Deerfield Colony', 462, '45.58820', '-98.90290'), ('Hosmer', 287, '45.57890', '-99.47370'), ('Ipswich', 943, '45.44410', '-99.02990'), ('Loyalton', 324, '45.28810', '-99.27870'), ('Mina', 12, '45.43810', '-98.75530'), ('Pembrook Colony', 943, '45.37650', '-99.00080'), ('Plainview Colony', 943, '45.58160', '-99.00660'), ('Roscoe', 324, '45.45030', '-99.33490')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ011': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Andover', 99, '45.41060', '-97.90330'), ('Bristol', 377, '45.34660', '-97.74900'), ('Butler', 17, '45.25820', '-97.71120'), ('Crandall', 187, '45.15530', '-97.95560'), ('Grenville', 62, '45.46640', '-97.38970'), ('Lily', 21, '45.18140', '-97.68120'), ('Pickerel Lake Station', 62, '45.50170', '-97.28290'), ('Pierpont', 122, '45.49690', '-97.83110'), ('Roslyn', 225, '45.49660', '-97.49340'), ('Waubay', 662, '45.33320', '-97.30670'), ('Waubay Wildlife Rec Area', 62, '45.42520', '-97.34160'), ('Webster', 1952, '45.33570', '-97.52190')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ012': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Belle Fourche Reservoir', 62, '44.73333', '-103.69998'), ('Castle Rock', 646, '44.96743', '-103.42378'), ('Downtown Belle Fourche', 4565, '44.67003', '-103.84898'), ('Fruitdale', 62, '44.66803', '-103.69698'), ('Hoover', 646, '45.11003', '-103.26898'), ('Newell', 646, '44.71673', '-103.41668'), ('Nisland', 204, '44.67113', '-103.55448'), ('Vale', 646, '44.61673', '-103.39998')], 'partOfState': 'northwest', 'wfo': 'UNR'}, +'SDZ013': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Fairpoint', 646, '44.74833', '-102.79638'), ('Faith', 489, '45.01673', '-102.03328'), ('Howes', 489, '44.62093', '-102.04898'), ('Marcus', 489, '44.66673', '-102.26668'), ('Maurine', 373, '45.01673', '-102.59998'), ('Mud Butte', 646, '45.00543', '-102.87578'), ('Opal', 489, '44.89413', '-102.61428'), ('Plainview', 489, '44.60473', '-102.16468'), ('Red Owl', 489, '44.69773', '-102.55168'), ('Stoneville', 616, '44.73903', '-102.65158')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ014': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bridger', 489, '44.55133', '-101.91008'), ('Cherry Creek', 434, '44.60003', '-101.49998'), ('Dupree', 434, '45.05063', '-101.59098'), ('Glad Valley', 239, '45.40003', '-101.78328'), ('Iron Lightning', 489, '45.18003', '-101.84038'), ('Red Elm', 434, '45.05623', '-101.79068'), ('Red Scaffold', 489, '44.76943', '-101.84948'), ('South Eagle Butte', 619, '44.99003', '-101.23298'), ('Thunder Butte', 434, '45.21323', '-101.68048')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ015': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Eagle Butte', 0, '45.00090', '-101.23970'), ('Firesteel', 239, '45.42520', '-101.28460'), ('Green Grass', 58, '45.16770', '-101.25050'), ('Isabel', 239, '45.39580', '-101.42850'), ('Lantry', 0, '45.01660', '-101.41860'), ('Laplant', 3574, '45.14430', '-100.65100'), ('Little Moreau Rec Area', 443, '45.35450', '-101.09960'), ('Parade', 2163, '45.02350', '-101.10420'), ('Promise', 3574, '45.32910', '-100.60380'), ('Ridgeview', 2163, '45.08470', '-100.79990'), ('Timber Lake', 443, '45.42760', '-101.07420'), ('White Horse', 180, '45.27040', '-100.88780')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ016': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Gettysburg', 1352, '45.00650', '-99.95350'), ('Gorman', 82, '44.92700', '-100.07500'), ('Hoven', 511, '45.24180', '-99.77640'), ('Lebanon', 86, '45.06890', '-99.76590'), ('Tolstoy', 64, '45.20680', '-99.61470'), ('Whitlocks Bay Rec Area', 82, '45.04330', '-100.26410')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ017': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Brentwood Colony', 0, '45.11520', '-99.30860'), ('Burkmere', 785, '45.04860', '-99.31180'), ('Chelsea', 33, '45.16720', '-98.74220'), ('Cresbard', 143, '45.16960', '-98.94760'), ('Devoe', 143, '45.09160', '-98.87870'), ('Faulkton', 785, '45.03430', '-99.12770'), ('Miranda', 57, '44.97220', '-98.96490'), ('Norbeck', 785, '45.18750', '-99.20610'), ('Onaka', 30, '45.19120', '-99.46460'), ('Orient', 57, '44.90290', '-99.08830'), ('Rockham', 53, '44.90500', '-98.82290'), ('Seneca', 58, '45.06100', '-99.50810')], 'partOfState': 'north central', 'wfo': 'ABR'}, +'SDZ018': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ashton', 152, '44.99350', '-98.49820'), ('Athol', 152, '45.00950', '-98.59680'), ('Brentford', 65, '45.15920', '-98.32150'), ('Clark Colony', 86, '44.78960', '-97.98020'), ('Conde', 187, '45.15780', '-98.09670'), ('Doland', 297, '44.89440', '-98.09920'), ('Frankfort', 166, '44.87740', '-98.30860'), ('Glendale Colony', 166, '44.79930', '-98.28760'), ('Hillside Colony', 297, '44.73880', '-98.04590'), ('Mansfield', 124, '45.24210', '-98.56120'), ('Mellette', 248, '45.15400', '-98.49800'), ('Northville', 124, '45.15490', '-98.57850'), ('Redfield', 2897, '44.87300', '-98.52040'), ('Spink Colony', 166, '44.74660', '-98.29200'), ('Spottswood', 221, '44.65210', '-98.50560'), ('Tulare', 221, '44.73880', '-98.50870'), ('Turton', 61, '45.04900', '-98.09650')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ019': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bradley', 112, '45.09010', '-97.64140'), ('Carpenter', 118, '44.63850', '-97.91450'), ('Clark', 1285, '44.88070', '-97.73380'), ('Crocker', 21, '45.10530', '-97.78540'), ('Fordham Colony', 86, '44.76860', '-97.90920'), ('Garden City', 72, '44.95790', '-97.58070'), ('Hillcrest Colony', 1285, '44.95000', '-97.67750'), ('Mayfield Colony', 0, '44.68650', '-97.55550'), ('Naples', 25, '44.77130', '-97.51260'), ('Raymond', 86, '44.91110', '-97.93660'), ('Vienna', 78, '44.70310', '-97.49910'), ('Willow Lake', 294, '44.62790', '-97.63780')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ020': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Florence', 299, '45.05560', '-97.32590'), ('Henry', 268, '44.88100', '-97.46260'), ('Kranzburg', 185, '44.88650', '-96.90980'), ('Rauville', 20237, '44.97520', '-97.07630'), ('Sandy Shore State Park', 20237, '44.89410', '-97.24220'), ('South Shore', 270, '45.10170', '-96.93000'), ('Wallace', 86, '45.08510', '-97.47730'), ('Watertown', 20237, '44.91260', '-97.16660'), ('Waverly', 270, '44.99920', '-96.97140')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ021': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Albee', 10, '45.05130', '-96.55430'), ('Big Stone City', 605, '45.29520', '-96.46440'), ('La Bolt', 95, '45.05000', '-96.67420'), ('Marvin', 66, '45.26090', '-96.91250'), ('Milbank', 3640, '45.21960', '-96.63480'), ('Revillo', 147, '45.01460', '-96.57030'), ('Stockholm', 105, '45.10250', '-96.79840'), ('Strandburg', 69, '45.04330', '-96.76100'), ('Troy', 270, '45.03490', '-96.86720'), ('Twin Brooks', 55, '45.20770', '-96.78690')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ022': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bryant', 396, '44.58990', '-97.46740'), ('Castlewood', 666, '44.72430', '-97.03070'), ('Estelline', 675, '44.57620', '-96.90010'), ('Hayti', 367, '44.65660', '-97.20400'), ('Hazel', 105, '44.75800', '-97.38010'), ('Lake Norden', 432, '44.57910', '-97.20800'), ('Stone Bridge', 666, '44.60280', '-97.05570'), ('Thomas', 367, '44.76080', '-97.20950')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ023': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Altamont', 34, '44.84040', '-96.69010'), ('Astoria', 150, '44.55770', '-96.54600'), ('Brandt', 113, '44.66550', '-96.62500'), ('Clear Lake', 1335, '44.76600', '-96.68130'), ('Gary', 231, '44.79520', '-96.45800'), ('Goodwin', 160, '44.87720', '-96.84850'), ('Lake Cochrane Rec Area', 231, '44.71130', '-96.46210'), ('Moritz', 231, '44.83400', '-96.56100'), ('Toronto', 202, '44.57240', '-96.64160'), ('Tunerville', 0, '44.89024', '-96.68090')], 'partOfState': 'northeast', 'wfo': 'ABR'}, +'SDZ024': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Brownsville', 3027, '44.27433', '-103.69408'), ('Central City', 149, '44.36923', '-103.76918'), ('Cheyenne Crossing', 3027, '44.29843', '-103.86488'), ('Deadwood', 1380, '44.37603', '-103.73008'), ('Galena', 1380, '44.33333', '-103.64998'), ('Lead', 3027, '44.35213', '-103.76688'), ('Nemo', 2432, '44.19193', '-103.50428'), ("O'neil Pass", 3027, '44.20373', '-104.00358'), ('Roubaix Lake', 3027, '44.20003', '-103.66668'), ('Terry Peak', 3027, '44.33233', '-103.83408')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ025': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Downtown Spearfish', 8606, '44.49703', '-103.85698'), ('Saint Onge', 844, '44.54843', '-103.72138'), ('Whitewood', 844, '44.45933', '-103.63738')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ026': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Downtown Rapid City', 59607, '44.08103', '-103.22598'), ('Rapid Valley', 7043, '44.07253', '-103.12958')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ027': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Angostura Reservoir', 4129, '43.31673', '-103.43328'), ('Cold Brook Reservoir', 4129, '43.46133', '-103.49158'), ('Cottonwood Springs Dam', 4129, '43.43473', '-103.56238'), ('Downtown Hot Springs', 4129, '43.43303', '-103.48028'), ('Edgemont', 867, '43.29853', '-103.82708'), ('Maverick Junction', 4129, '43.40063', '-103.39588')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDZ028': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Deerfield', 780, '44.02373', '-103.83708'), ('Deerfield Reservoir', 780, '44.01673', '-103.79998'), ('Harney Peak', 780, '43.86773', '-103.54158'), ('Hayward', 311, '43.86973', '-103.33208'), ('Hill City', 780, '43.93213', '-103.57138'), ('Hisega', 2561, '44.05373', '-103.40228'), ('Johnson Siding', 200, '44.08403', '-103.43998'), ('Keystone', 311, '43.88853', '-103.42528'), ('Moon', 3003, '43.94783', '-104.00638'), ('Mount Rushmore', 311, '43.88123', '-103.45318'), ('Mystic', 780, '44.06673', '-103.64998'), ('Pactola Reservoir', 780, '44.06673', '-103.49998'), ('Rochford', 3027, '44.12403', '-103.71998'), ('Rockerville', 2561, '43.95903', '-103.35928'), ('Sheridan Lake', 311, '43.97033', '-103.46568'), ('Silver City', 780, '44.08773', '-103.56548')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ029': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Argyle', 125, '43.53333', '-103.64998'), ('Blue Bell', 1860, '43.71633', '-103.48188'), ('Center Lake', 311, '43.80343', '-103.43038'), ('Crazy Horse Memorial', 1860, '43.82803', '-103.63198'), ('Custer Park Game Lodge', 25, '43.76603', '-103.38298'), ('Dewey', 867, '43.52923', '-104.03278'), ('Downtown Custer', 1860, '43.76653', '-103.60068'), ('Jewel Cave', 1860, '43.73333', '-103.83328'), ('Pringle', 125, '43.60903', '-103.58908'), ('Sanator', 1860, '43.69493', '-103.60318'), ('Stockade Lake', 1860, '43.76673', '-103.51668'), ('Sylvan Lake', 780, '43.85003', '-103.56668'), ('Wind Cave Visitors Center', 4129, '43.55643', '-103.47408')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDZ030': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Folsom', 616, '43.83203', '-102.86578')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDZ031': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Box Elder', 2841, '44.11963', '-103.07208'), ('Caputa', 2841, '43.99533', '-102.98418'), ('Creighton', 818, '44.25303', '-102.20778'), ('Farmingdale', 616, '43.96763', '-102.89498'), ('New Underwood', 616, '44.10003', '-102.83328'), ('Owanka', 75, '44.01973', '-102.58468'), ('Pinnacles Ranger Station', 818, '43.86673', '-102.23328'), ('Quinn', 44, '43.98733', '-102.13018'), ('Rapid City Airport', 10, '44.03803', '-103.05898'), ('Scenic', 75, '43.78333', '-102.54998'), ('Wall', 818, '43.99163', '-102.23908'), ('Wasta', 75, '44.06933', '-102.44588'), ('Wicksville', 75, '44.10003', '-102.56668')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ032': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Billsburg', 885, '44.40003', '-101.68328'), ('Grindstone', 6, '44.14173', '-101.96588'), ('Kirley', 619, '44.52423', '-101.31158'), ('Midland', 179, '44.07243', '-101.15228'), ('Milesville', 885, '44.45913', '-101.67858'), ('Ottumwa', 179, '44.23383', '-101.34098'), ('Philip', 885, '44.04583', '-101.66548')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ033': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bunker', 179, '44.23850', '-101.10180'), ('Chantler Creek Recreation Area', 1991, '44.48070', '-100.61730'), ('Fort Pierre', 1991, '44.36270', '-100.37930'), ('Hayes', 179, '44.37120', '-101.02370'), ('Mission Ridge', 1991, '44.68880', '-100.79130'), ('Sansarc', 179, '44.50660', '-101.03490'), ('Wendte', 1991, '44.24380', '-100.66480'), ('West Shore Rec Area', 1991, '44.45070', '-100.45140')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ034': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Agar', 82, '44.83870', '-100.07250'), ('Cow Creek Rec Area', 1991, '44.56160', '-100.49750'), ('Okobojo Creek Rec Area', 1991, '44.60740', '-100.46530'), ('Onida', 740, '44.70470', '-100.06650'), ('Sutton Bay Rec Area', 82, '44.88080', '-100.35680')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ035': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Blunt', 370, '44.51550', '-99.98800'), ('Canning', 370, '44.39650', '-100.03200'), ('Grey Goose', 13876, '44.50460', '-100.35060'), ('Harrold', 209, '44.52330', '-99.73840'), ('Joe Creek Rec Area', 599, '44.14610', '-99.79680'), ('Oahe Mission Rec Area', 1991, '44.48280', '-100.52850'), ('Overlook Rec Area', 1991, '44.45860', '-100.38410'), ('Pierre', 13876, '44.37300', '-100.32250'), ('Rosseau', 370, '44.31640', '-100.07150'), ('Spring Creek Rec Area', 1991, '44.54680', '-100.47570'), ('West Bend Rec Area', 599, '44.17110', '-99.71920')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ036': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Highmore', 851, '44.52070', '-99.43900'), ('Holabird', 209, '44.52380', '-99.59770'), ('Stephan', 1375, '44.24770', '-99.45260')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ037': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ames', 1530, '44.26910', '-99.08470'), ('Burdette', 53, '44.70730', '-98.81000'), ('Danforth', 210, '44.25420', '-98.88330'), ('Miller', 1530, '44.52000', '-98.98770'), ('Miller Dale Colony', 85, '44.39990', '-99.11280'), ('Polo', 57, '44.77960', '-99.10960'), ('Ree Heights', 85, '44.51610', '-99.20040'), ('Saint Lawrence', 210, '44.51700', '-98.94000'), ('Vayland', 248, '44.49250', '-98.79880'), ('Zell', 53, '44.89270', '-98.72630')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ038': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Broadland', 38, '44.49340', '-98.34810'), ('Cavour', 141, '44.37280', '-98.04100'), ('Hitchcock', 108, '44.62930', '-98.40780'), ('Huron', 11893, '44.36390', '-98.21780'), ('Virgil', 25, '44.29030', '-98.42670'), ('Wessington', 248, '44.45490', '-98.69620'), ('Wolsey', 418, '44.41090', '-98.47380'), ('Yale', 118, '44.43340', '-97.98910')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDZ039': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Arlington', 992, '44.36250', '-97.13390'), ('Badger', 144, '44.48570', '-97.20940'), ('Bancroft', 37, '44.48870', '-97.75040'), ('De Smet', 1164, '44.38660', '-97.54780'), ('Erwin', 58, '44.48820', '-97.44100'), ('Hetland', 43, '44.37650', '-97.23450'), ('Iroquois', 278, '44.36650', '-97.84970'), ('Lake Preston', 737, '44.36180', '-97.37620'), ('Lake Thompson State Recreation Area', 0, '44.32363', '-97.44010'), ('Oldham', 206, '44.22820', '-97.30860')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDZ040': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Aurora', 500, '44.28270', '-96.68660'), ('Brookings', 18504, '44.30630', '-96.78620'), ('Bruce', 272, '44.43810', '-96.88940'), ('Bushnell', 75, '44.32840', '-96.64320'), ('Elkton', 677, '44.23450', '-96.47980'), ('Oakwood State Park', 0, '44.44981', '-96.98564'), ('Sinai', 133, '44.24510', '-97.04300'), ('Volga', 1435, '44.32330', '-96.92260'), ('White', 530, '44.43340', '-96.64540')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDZ041': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ardmore', 867, '43.02453', '-103.65798'), ('Oelrichs', 145, '43.17853', '-103.23088'), ('Oral', 164, '43.40003', '-103.26668'), ('Provo', 867, '43.19133', '-103.83098'), ('Rumford', 867, '43.12803', '-103.69798'), ('Smithwick', 145, '43.30343', '-103.22288')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDZ042': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Batesland', 88, '43.12820', '-102.10130'), ('Kyle', 970, '43.42323', '-102.18808'), ('Manderson', 626, '43.23953', '-102.47068'), ('Oglala', 1229, '43.18333', '-102.73328'), ('Pine Ridge', 3171, '43.02753', '-102.55478'), ('Porcupine', 407, '43.23333', '-102.33328'), ('Red Shirt', 80, '43.65483', '-102.89238'), ('Rockyford', 626, '43.50003', '-102.49998'), ('Sharps Corner', 407, '43.38333', '-102.39998'), ('Slim Butte', 1229, '43.05953', '-102.82208'), ('Wounded Knee', 328, '43.14203', '-102.36348')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDZ043': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Belvidere', 57, '43.83423', '-101.27048'), ('Cactus Flat', 6, '43.84163', '-101.89888'), ('Cedar Pass', 77, '43.75003', '-101.94998'), ('Cottonwood', 6, '43.96383', '-101.89998'), ('Hisle', 641, '43.40763', '-101.74948'), ('Interior', 77, '43.72633', '-101.98078'), ('Kadoka', 706, '43.83203', '-101.50878'), ('Long Valley', 641, '43.46203', '-101.49358'), ('Minuteman Missile Site', 2, '43.87803', '-101.96098'), ('Potato Creek', 77, '43.53473', '-101.98588'), ('Wanblee', 641, '43.56853', '-101.65908')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDZ044': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Allen', 419, '43.28193', '-101.92648'), ('Harrington', 136, '43.16673', '-101.24998'), ('Lacreek Wildlife Refuge', 1106, '43.11573', '-101.52708'), ('Martin', 1106, '43.17233', '-101.73108'), ('Swett', 88, '43.17173', '-101.95408'), ('Tuthill', 1106, '43.15513', '-101.49458'), ('Vetal', 177, '43.21673', '-101.36668')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'SDZ045': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Capa', 179, '44.10970', '-100.97760'), ('Draper', 92, '43.92590', '-100.53770'), ('Murdo', 612, '43.88920', '-100.71360'), ('Okaton', 29, '43.88600', '-100.89190'), ('Van Metre', 612, '44.15910', '-100.79350'), ('Westover', 612, '43.74820', '-100.66570')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ046': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Cedar Butte', 650, '43.57953', '-101.02168'), ('Mosher', 66, '43.46673', '-100.29998'), ('Norris', 650, '43.46673', '-101.19998'), ('White River', 598, '43.56733', '-100.74428'), ('Wood', 66, '43.49683', '-100.47978')], 'partOfState': 'south central', 'wfo': 'UNR'}, +'SDZ047': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Hidden Timber', 180, '43.23103', '-100.42598'), ('Lakeview', 1557, '43.11293', '-100.74818'), ('Littleburg', 2826, '43.04643', '-100.44978'), ('Mission', 904, '43.30653', '-100.66048'), ('Okreek', 66, '43.36673', '-100.38328'), ('Parmelee', 650, '43.32303', '-101.02128'), ('Rosebud', 1557, '43.23243', '-100.85198'), ('Saint Francis', 675, '43.14233', '-100.90198'), ('Spring Creek', 136, '43.11673', '-101.01668')], 'partOfState': 'south central', 'wfo': 'UNR'}, +'SDZ048': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Cedar Creek Rec Area', 286, '44.14910', '-99.93290'), ('Counselor Creek Recreation Area', 599, '44.03160', '-99.51070'), ('Iona', 390, '43.54270', '-99.42580'), ('Kennebec', 286, '43.90430', '-99.86240'), ('Lower Brule', 599, '44.07400', '-99.58250'), ('Lyman', 206, '43.87630', '-99.72630'), ('Oacoma', 390, '43.79920', '-99.38440'), ('Presho', 588, '43.90710', '-100.05770'), ('Reliance', 206, '43.88040', '-99.60230'), ('Tailwaters Rec Area', 1375, '44.03430', '-99.44070'), ('Vivian', 131, '43.92770', '-100.29150')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ049': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Carter', 51, '43.38703', '-100.20668'), ('Clearfield', 3137, '43.16673', '-100.03328'), ('Colome', 340, '43.26003', '-99.71568'), ('Hamill', 11, '43.59643', '-99.67868'), ('Ideal', 3137, '43.54423', '-99.90068'), ('Keyapaha', 51, '43.10003', '-100.13328'), ('Millboro', 340, '43.06673', '-99.96668'), ('Wewela', 304, '43.01153', '-99.77758'), ('Winner', 3137, '43.37393', '-99.85868'), ('Witten', 87, '43.43843', '-100.08598')], 'partOfState': 'south central', 'wfo': 'UNR'}, +'SDZ050': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bonesteel', 297, '43.07810', '-98.94680'), ('Burke', 676, '43.18300', '-99.29250'), ('Dallas', 144, '43.23790', '-99.51770'), ('Dixon', 144, '43.38320', '-99.47390'), ('Fairfax', 123, '43.02810', '-98.88900'), ('Gregory', 1342, '43.23180', '-99.42510'), ('Herrick', 105, '43.11540', '-99.18720')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDZ051': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Fort Thompson', 1375, '44.04980', '-99.41200'), ('Gann Valley', 745, '44.03320', '-98.98780'), ('Lees Corner', 1375, '44.06980', '-99.32150'), ('Shelby', 287, '43.94800', '-99.18730')], 'partOfState': 'central', 'wfo': 'ABR'}, +'SDZ052': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Alpena', 265, '44.18340', '-98.36790'), ('Lane', 59, '44.06920', '-98.42410'), ('Wessington Springs', 1011, '44.08080', '-98.57130')], 'partOfState': 'central', 'wfo': 'FSD'}, +'SDZ053': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Artesian', 157, '44.00850', '-97.92300'), ('Forestburg', 177, '44.02170', '-98.10890'), ('Letcher', 177, '43.89780', '-98.14350'), ('Woonsocket', 720, '44.05470', '-98.27370')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDZ054': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Canova', 140, '43.88080', '-97.50300'), ('Carthage', 187, '44.16890', '-97.71400'), ('Fedora', 21, '44.00820', '-97.78750'), ('Howard', 1071, '44.01190', '-97.52330'), ('Roswell', 21, '43.99910', '-97.70100'), ('Vilas', 19, '44.00850', '-97.59570')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDZ055': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Chester', 662, '43.89450', '-96.92510'), ('Lake Herman State Park', 0, '43.98831', '-97.16399'), ('Madison', 6540, '44.00840', '-97.10740'), ('Nunda', 47, '44.16100', '-97.01790'), ('Orland', 6540, '43.89270', '-97.18950'), ('Ramona', 190, '44.12010', '-97.21500'), ('Wentworth', 188, '43.99680', '-96.96430'), ('Winfred', 53, '43.99760', '-97.36260')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDZ056': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Colman', 572, '43.98470', '-96.81590'), ('Egan', 265, '43.99970', '-96.65050'), ('Flandreau', 2376, '44.04690', '-96.59770'), ('Trent', 254, '43.90690', '-96.65730'), ('Ward', 41, '44.15540', '-96.46080')], 'partOfState': 'east central', 'wfo': 'FSD'}, +'SDZ057': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Chamberlain', 2338, '43.80760', '-99.32020'), ('Kimball', 745, '43.74620', '-98.95710'), ('Pukwana', 287, '43.77890', '-99.18240')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDZ058': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Plankinton', 601, '43.71570', '-98.48410'), ('Stickney', 334, '43.58960', '-98.43750'), ('White Lake', 405, '43.72840', '-98.71290')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDZ059': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ethan', 330, '43.54590', '-97.98290'), ('Loomis', 47, '43.79440', '-98.10600'), ('Mitchell', 14558, '43.73260', '-98.03380'), ('Mount Vernon', 477, '43.71220', '-98.26090')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ060': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Alexandria', 563, '43.65390', '-97.77900'), ('Emery', 439, '43.60270', '-97.62020'), ('Farmer', 18, '43.72480', '-97.68810'), ('Fulton', 86, '43.72820', '-97.82230')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ061': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bridgewater', 607, '43.55020', '-97.49860'), ('Canistota', 700, '43.59750', '-97.29160'), ('Lake Vermillion State Recreation Area', 0, '43.58767', '-97.17157'), ('Montrose', 460, '43.70150', '-97.18300'), ('Salem', 1371, '43.72430', '-97.38860'), ('Spencer', 157, '43.72790', '-97.59170')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ062': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Baltic', 811, '43.75960', '-96.73840'), ('Brandon', 5693, '43.59130', '-96.57800'), ('Colton', 662, '43.78640', '-96.92700'), ('Crooks', 859, '43.66020', '-96.80730'), ('Current Lake', 637, '43.68870', '-96.51300'), ('Dell Rapids', 2980, '43.82490', '-96.71250'), ('Garretson', 1165, '43.71680', '-96.50030'), ('Hartford', 1844, '43.62350', '-96.94480'), ('Humboldt', 521, '43.64500', '-97.07400'), ('Rowena', 3543, '43.51990', '-96.55710'), ('Sherman', 87, '43.75770', '-96.47540'), ('Sioux Falls', 123975, '43.54420', '-96.73010'), ('Valley Springs', 792, '43.58320', '-96.46470'), ('Wall Lake', 1844, '43.52890', '-96.96000')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ063': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Dante', 82, '43.03990', '-98.18640'), ('Geddes', 252, '43.25400', '-98.69730'), ('Lake Andes', 819, '43.15570', '-98.53500'), ('Marty', 421, '42.99290', '-98.42930'), ('Pickstown', 168, '43.06690', '-98.53050'), ('Platte', 1367, '43.38740', '-98.84390'), ('Ravinia', 79, '43.13600', '-98.42710'), ('Wagner', 1675, '43.07810', '-98.30160')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDZ064': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Armour', 782, '43.31940', '-98.34390'), ('Corsica', 644, '43.42430', '-98.40570'), ('Delmont', 263, '43.26600', '-98.15990'), ('Harrison', 51, '43.44000', '-98.52970')], 'partOfState': 'south central', 'wfo': 'FSD'}, +'SDZ065': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Clayton', 439, '43.44310', '-97.65730'), ('Dimock', 151, '43.47600', '-97.98770'), ('Freeman', 1317, '43.35090', '-97.43240'), ('Menno', 729, '43.23790', '-97.57710'), ('Olivet', 70, '43.24170', '-97.67350'), ('Parkston', 1674, '43.39330', '-97.98560'), ('Tripp', 711, '43.22500', '-97.96640')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ066': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Centerville', 910, '43.11770', '-96.95890'), ('Chancellor', 328, '43.37240', '-96.98740'), ('Davis', 104, '43.25830', '-96.99580'), ('Dolton', 41, '43.49150', '-97.38480'), ('Hurley', 426, '43.27980', '-97.09030'), ('Irene', 432, '43.08370', '-97.15810'), ('Marion', 892, '43.42400', '-97.26060'), ('Monroe', 163, '43.48710', '-97.21600'), ('Parker', 1031, '43.39620', '-97.13840'), ('Viborg', 832, '43.17120', '-97.08050')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ067': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Canton', 3110, '43.30320', '-96.58090'), ('Fairview', 94, '43.22210', '-96.48900'), ('Harrisburg', 958, '43.43030', '-96.69580'), ('Hudson', 402, '43.12980', '-96.45550'), ('Inwood', 875, '43.21900', '-96.57190'), ('Lake Alvin State Recreation Area', 0, '43.44128', '-96.61351'), ('Lennox', 2037, '43.35280', '-96.89640'), ('Tea', 1742, '43.44810', '-96.83730'), ('Worthing', 585, '43.32890', '-96.76490')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ068': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Avon', 561, '43.00510', '-98.05910'), ('Scotland', 891, '43.14810', '-97.71950'), ('Springfield', 792, '42.85470', '-97.89300'), ('Tabor', 417, '42.94770', '-97.65970'), ('Tyndall', 1239, '42.98970', '-97.86460')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ069': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Gayville', 418, '42.88820', '-97.17280'), ('Lesterville', 158, '43.03870', '-97.59050'), ('Mayfield', 432, '43.08190', '-97.31760'), ('Mission Hill', 183, '42.92120', '-97.27910'), ('Utica', 86, '42.98130', '-97.49620'), ('Volin', 207, '42.95900', '-97.18070'), ('Yankton', 13528, '42.88980', '-97.39210')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ070': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Meckling', 418, '42.84070', '-97.07160'), ('Vermillion', 9765, '42.78200', '-96.92660'), ('Wakonda', 374, '43.00810', '-97.10540')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ071': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Alcester', 880, '43.02310', '-96.62870'), ('Beresford', 2006, '43.07970', '-96.78010'), ('Elk Point', 1714, '42.68270', '-96.68080'), ('Jefferson', 586, '42.60350', '-96.56140'), ('North Sioux City', 2288, '42.53660', '-96.50210'), ('Union Grove State Park', 0, '42.92169', '-96.77378')], 'partOfState': 'southeast', 'wfo': 'FSD'}, +'SDZ072': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Bear Butte State Park', 6442, '44.48173', '-103.41868'), ('Black Hawk', 2432, '44.15173', '-103.31528'), ('Downtown Sturgis', 6442, '44.41163', '-103.51458'), ('Piedmont', 2432, '44.23333', '-103.39998'), ('Tilford', 6442, '44.30003', '-103.43328')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ073': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Ellsworth AFB', 4165, '44.15003', '-103.09998'), ('Elm Springs', 75, '44.31303', '-102.52698'), ('Enning', 75, '44.57713', '-102.56128'), ('Hereford', 616, '44.38333', '-102.88328'), ('Union Center', 616, '44.56323', '-102.66898'), ('White Owl', 75, '44.59273', '-102.42738')], 'partOfState': 'west central', 'wfo': 'UNR'}, +'SDZ074': {'fullStateName': 'South Dakota', 'state': 'SD', 'cities': [('Buffalo Gap', 164, '43.49043', '-103.31278'), ('Fairburn', 80, '43.68783', '-103.20878'), ('Hermosa', 315, '43.84003', '-103.19148')], 'partOfState': 'southwest', 'wfo': 'UNR'}, +'TNZ001': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cottonwood Grove', 1667, '36.23330', '-89.53330'), ('Ridgely', 1667, '36.26450', '-89.48260'), ('Tiptonville', 2439, '36.37730', '-89.47230')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ002': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clayton', 2689, '36.46670', '-89.25000'), ('Cloverdale', 435, '36.23330', '-89.33330'), ('Hornbeak', 435, '36.33140', '-89.29690'), ('Obion', 1134, '36.26080', '-89.19200'), ('Rives', 331, '36.35710', '-89.04970'), ('Samburg', 260, '36.38230', '-89.35190'), ('South Fulton', 2517, '36.49200', '-88.88490'), ('Troy', 1273, '36.33950', '-89.16160'), ('Union City', 10513, '36.42250', '-89.05100'), ('Woodland Mills', 398, '36.47630', '-89.11260')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ003': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Dresden', 2855, '36.27740', '-88.69040'), ('Gleason', 1463, '36.21560', '-88.61020'), ('Greenfield', 2208, '36.15540', '-88.80140'), ('Latham', 2855, '36.42339', '-88.71400'), ('Martin', 10515, '36.34230', '-88.85850'), ('Palmersville', 97, '36.41670', '-88.58330'), ('Sharon', 988, '36.23320', '-88.82490')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ004': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cottage Grove', 97, '36.37980', '-88.47790'), ('Cronanville', 2855, '36.43500', '-88.47700'), ('Henry', 520, '36.20050', '-88.41060'), ('Paris', 9763, '36.30020', '-88.30730'), ('Puryear', 667, '36.44250', '-88.33480'), ('Routon', 520, '36.23330', '-88.38330'), ('Springville', 518, '36.25000', '-88.15000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ005': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cumberland City', 316, '36.38220', '-87.64400'), ('Dover', 1442, '36.48140', '-87.84370')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ006': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clarksville', 103455, '36.56110', '-87.34730')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ007': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Adams', 566, '36.58160', '-87.06510'), ('Black Jack', 0, '36.63365', '-86.56388'), ('Cedar Hill', 298, '36.55060', '-87.00010'), ('Cross Plains', 1381, '36.54010', '-86.68120'), ('Greenbrier', 4940, '36.42300', '-86.80090'), ('Orlinda', 594, '36.60070', '-86.67190'), ('Ridgetop', 1083, '36.39670', '-86.77340'), ('Springfield', 14329, '36.49950', '-86.87870'), ('White House', 2987, '36.46320', '-86.66780')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ008': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Gallatin', 23230, '36.37870', '-86.45310'), ('Goodlettsville', 13780, '36.33370', '-86.70380'), ('Hendersonville', 40620, '36.29400', '-86.60350'), ('Millersville', 5308, '36.38180', '-86.70130'), ('Mitchellville', 207, '36.63270', '-86.53920'), ('Portland', 8458, '36.58590', '-86.51660'), ('Westmoreland', 1726, '36.56380', '-86.24690')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ009': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Lafayette', 3885, '36.52450', '-86.03090'), ('Red Boiling Spring', 1023, '36.53170', '-85.85070')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ010': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Celina', 1379, '36.54830', '-85.50200')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ011': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Byrdstown', 903, '36.57400', '-85.13330')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ012': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Big South Fork National', 3615, '36.52000', '-84.67310'), ('Elgin', 981, '36.33030', '-84.60940'), ('Huntsville', 981, '36.41360', '-84.48750'), ('Ketchen', 911, '36.56810', '-84.32030'), ('Norma', 981, '36.33470', '-84.38780'), ('Oneida', 3615, '36.50390', '-84.51500'), ('Slick Rock', 981, '36.30080', '-84.50720'), ('Smokey Junction', 2243, '36.28670', '-84.36580'), ('Winfield', 911, '36.56180', '-84.45050')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ013': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Caryville', 2243, '36.32440', '-84.21930'), ('Disney', 1888, '36.24810', '-84.17220'), ('Elk Valley', 2448, '36.48170', '-84.24940'), ('Fincastle', 7926, '36.40860', '-84.04970'), ('Jacksboro', 1887, '36.33180', '-84.19100'), ('Jellico', 2448, '36.57710', '-84.12870'), ('La Follette', 7926, '36.37300', '-84.12710'), ('Royal Blue', 2243, '36.38170', '-84.27890'), ('White Oak', 2448, '36.53360', '-84.03500')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ014': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Arthur', 2865, '36.54640', '-83.67310'), ('Clairfield', 2448, '36.54830', '-83.95170'), ('Harrogate-Shawanee', 2865, '36.58140', '-83.64370'), ('Howard Quarter', 2165, '36.47250', '-83.41280'), ('Lone Mountain', 2871, '36.38780', '-83.58640'), ('Sandlick', 2871, '36.39690', '-83.68310'), ('Springdale', 2871, '36.42390', '-83.69110'), ('Tazewell', 2165, '36.45820', '-83.57600')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ015': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Evanston', 1257, '36.50640', '-83.28830'), ('Kyles Ford', 927, '36.57030', '-83.04420'), ('Sneedville', 1257, '36.53760', '-83.21110'), ('Treadway', 1257, '36.41560', '-83.22690')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ016': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bulls Gap', 714, '36.26420', '-83.07900'), ('Church Hill', 5916, '36.52530', '-82.71200'), ('Kepler', 1484, '36.39970', '-82.88720'), ('Klondike', 1257, '36.43860', '-83.13220'), ('McCloud', 4240, '36.36530', '-82.97110'), ('Mooresburg', 24965, '36.34610', '-83.22970'), ('Mount Carmel', 4795, '36.56090', '-82.65870'), ('Okolona', 5916, '36.58140', '-82.77470'), ('Rogersville', 4240, '36.40670', '-83.00520'), ('St. Clair', 714, '36.32920', '-83.08560'), ('Surgoinsville', 1484, '36.47330', '-82.85790')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ017': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bloomingdale', 10350, '36.57830', '-82.50840'), ('Blountville', 2959, '36.53310', '-82.32730'), ('Bluff City', 1559, '36.46370', '-82.27420'), ('Bristol TN', 24821, '36.56780', '-82.19740'), ('Colonial Heights', 7067, '36.47960', '-82.51180'), ('Harr', 7003, '36.58560', '-81.99470'), ('Kingsport', 44905, '36.52960', '-82.55690'), ('South Holston Dam', 24821, '36.52440', '-82.08940'), ('Sullivan Gardens', 1313, '36.47720', '-82.59670'), ('Tri-City Airport', 3498, '36.48000', '-82.40000')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ018': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Doeville', 2383, '36.38690', '-81.97190'), ('Laurel Bloomery', 918, '36.55830', '-81.76110'), ('Mountain City', 2383, '36.47180', '-81.80530'), ('Neva', 2383, '36.39030', '-81.86530'), ('Shady Valley', 2383, '36.51720', '-81.92780'), ('Trade', 2383, '36.34610', '-81.74750')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ019': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bradleytown', 17452, '36.03330', '-89.41670'), ('Dyersburg', 17452, '36.03920', '-89.38020'), ('Heloise', 7389, '36.05000', '-89.66670'), ('Millsfield', 17452, '36.15000', '-89.38330'), ('Miston', 1667, '36.16670', '-89.48330'), ('Newbern', 2988, '36.11640', '-89.26800'), ('Roellen', 2988, '36.01670', '-89.25000'), ('Trimble', 728, '36.20220', '-89.18890'), ('Unionville', 17452, '35.96000', '-89.45000')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ020': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bradford', 1113, '36.07390', '-88.81770'), ('Dyer', 2406, '36.07090', '-88.99200'), ('Eaton', 608, '35.96670', '-89.13330'), ('Gibson', 305, '35.87400', '-88.84590'), ('Humboldt', 9467, '35.82180', '-88.90650'), ('Kenton', 1306, '36.19970', '-89.01420'), ('Medina', 969, '35.80340', '-88.77430'), ('Milan', 7664, '35.91890', '-88.75460'), ('Rutherford', 1272, '36.12540', '-88.99280'), ('Trenton', 4683, '35.97210', '-88.93960'), ('Yorkville', 347, '36.09870', '-89.11900')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ021': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Atwood', 1000, '35.97700', '-88.67100'), ('Bruceton', 1554, '36.03440', '-88.24710'), ('Buena Vista', 963, '35.98330', '-88.28330'), ('Cedar Grove', 259, '35.81670', '-88.60000'), ('Clarksburg', 285, '35.87160', '-88.38980'), ('Hollow Rock', 963, '36.03520', '-88.27260'), ('Huntingdon', 4349, '36.00850', '-88.41200'), ('McKenzie', 5295, '36.13960', '-88.51130'), ('McLemoresville', 259, '35.98600', '-88.57940'), ('Middle Fork', 285, '35.86670', '-88.50000'), ('Trezevant', 901, '36.01350', '-88.62000'), ('Vale', 963, '36.11670', '-88.26670')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ022': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Big Sandy', 518, '36.23270', '-88.08570'), ('Camden', 3828, '36.06440', '-88.10490')], 'partOfState': 'middle', 'wfo': 'MEG'}, +'TNZ023': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Erin', 1490, '36.31590', '-87.70260'), ('Tennessee Ridge', 1334, '36.31980', '-87.76380')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ024': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('McEwen', 1702, '36.10680', '-87.63570'), ('New Johnsonville', 1905, '36.01690', '-87.95740'), ('Waverly', 3925, '36.09240', '-87.78780')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ025': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Burns', 1366, '36.05320', '-87.31200'), ('Charlotte', 1153, '36.18470', '-87.34750'), ('Dickson', 12244, '36.07670', '-87.37710'), ('Slayden', 185, '36.29320', '-87.46780'), ('Vanleer', 369, '36.23740', '-87.44480'), ('White Bluff', 1988, '36.10590', '-87.21350')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ026': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ashland City', 3641, '36.27690', '-87.05980'), ('Kingston Springs', 2773, '36.09650', '-87.10040'), ('Pegram', 2146, '36.10430', '-87.05670')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ027': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Belle Meade', 2943, '36.09880', '-86.85500'), ('Berry Hill', 674, '36.11930', '-86.76780'), ('Forest Hills', 4710, '36.06340', '-86.83680'), ('Nashville', 504505, '36.17160', '-86.78480'), ('Oak Hill', 4493, '36.07690', '-86.78690')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ028': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Belinda City', 2098, '36.17000', '-86.47790'), ('Green Hill', 7068, '36.23480', '-86.57090'), ('Lebanon', 20235, '36.20980', '-86.32220'), ('Mount Juliet', 12366, '36.20620', '-86.52250'), ('Rural Hill', 2032, '36.11140', '-86.51130'), ('Watertown', 1250, '36.09960', '-86.13950')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ029': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Hartsville', 2395, '36.39000', '-86.15960')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ030': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Carthage', 2251, '36.25680', '-85.94370'), ('Gordonsville', 1066, '36.18310', '-85.93260'), ('South Carthage', 1302, '36.24070', '-85.95800')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ031': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Gainesboro', 879, '36.36050', '-85.65380')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ032': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Algood', 2942, '36.19770', '-85.44720'), ('Baxter', 1279, '36.15430', '-85.63830'), ('Cookeville', 23923, '36.15690', '-85.50540'), ('Monterey', 2717, '36.13300', '-85.24430')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ033': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Livingston', 3498, '36.38870', '-85.32750')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ034': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Allardt', 642, '36.38100', '-84.88140'), ('Jamestown', 1839, '36.43210', '-84.93530')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ035': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Deerlodge', 577, '36.19920', '-84.76190'), ('High Point', 4885, '36.14860', '-84.82830'), ('Oakdale', 244, '35.98880', '-84.55790'), ('Petros', 3303, '36.09190', '-84.44670'), ('Pine Orchard', 5774, '35.96610', '-84.65580'), ('Rugby', 642, '36.35860', '-84.70440'), ('Sunbright', 577, '36.24170', '-84.67170'), ('Wartburg', 577, '36.10340', '-84.58820')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ036': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clinton', 9409, '36.09080', '-84.13050'), ('Lake City', 1888, '36.22420', '-84.15600'), ('Norris', 1446, '36.21310', '-84.06100'), ('Oak Ridge', 27387, '35.96270', '-84.29620'), ('Rosedale', 3303, '36.17030', '-84.35170')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ037': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Luttrell', 915, '36.20880', '-83.74460'), ('Maynardville', 1782, '36.24690', '-83.80620'), ('Norris Lake', 1782, '36.29220', '-83.91470'), ('Paulette', 1782, '36.19060', '-83.89140'), ('Rose Hill', 1782, '36.30500', '-83.76190'), ('Sharps Chapel', 1782, '36.34140', '-83.80560')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ038': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bean Station', 24965, '36.34190', '-83.28470'), ('Blaine', 1585, '36.14440', '-83.69490'), ('Buffalo Springs', 1187, '36.21640', '-83.56500'), ('Joppa', 1187, '36.23610', '-83.61640'), ('Rutledge', 1187, '36.27420', '-83.52480'), ('Thorn Hill', 1187, '36.35720', '-83.41860')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ039': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alpha', 24965, '36.17580', '-83.38420'), ('Lowland', 1997, '36.15250', '-83.20860'), ('Morristown', 24965, '36.21460', '-83.29600'), ('Russellville', 24965, '36.25780', '-83.19610')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ040': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bybee', 7242, '36.04420', '-83.18140'), ('Newport', 7242, '35.96020', '-83.19120'), ('Parrottsville', 207, '36.00930', '-83.09130')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ041': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cosby', 477, '35.81470', '-83.25080'), ('Del Rio', 207, '35.91780', '-83.02830'), ('Hartford', 7242, '35.81470', '-83.14560'), ('Round Mountain', 478, '35.83670', '-82.96220')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ042': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Baileyton', 504, '36.32800', '-82.83060'), ('Camp Creek', 2004, '36.08610', '-82.76560'), ('Caney Branch', 207, '36.04610', '-82.98580'), ('Chucky', 2004, '36.21390', '-82.69080'), ('Greeneville', 15198, '36.16530', '-82.81900'), ('Jearoldstown', 504, '36.36030', '-82.82190'), ('Mohawk', 714, '36.19940', '-83.05530'), ('Mosheim', 1749, '36.19220', '-82.95680'), ('Romeo', 1749, '36.29000', '-82.93860'), ('Tusculum', 2004, '36.17560', '-82.75090')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ043': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cedar Creek', 478, '36.02310', '-82.90360')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ044': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Avondale', 4168, '36.30970', '-82.46420'), ('Embreeville', 5610, '36.17970', '-82.46110'), ('Fall Branch', 1313, '36.41720', '-82.62340'), ('Gray', 1273, '36.41120', '-82.47970'), ('Johnson City', 55469, '36.33140', '-82.36870'), ('Jonesborough', 4168, '36.29360', '-82.47770'), ('Leesburg', 4168, '36.29220', '-82.54470'), ('Liberty', 2004, '36.14000', '-82.61920'), ('Limestone', 2004, '36.22720', '-82.63280')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ045': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Banner Hill', 1053, '36.12760', '-82.40560'), ('Erwin', 5610, '36.14490', '-82.41090'), ('Limestone Cove', 2872, '36.17860', '-82.26330'), ('Rocky Fork', 1053, '36.03390', '-82.55390'), ('Unicoi', 5610, '36.19390', '-82.35170')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ046': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Elizabethton', 13372, '36.33880', '-82.23200'), ('Hunter', 1566, '36.37880', '-82.16330'), ('Milligan College', 2872, '36.26940', '-82.29920'), ('Sadie', 1566, '36.43190', '-82.05670'), ('Watauga', 389, '36.36800', '-82.29230')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ047': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Elk Mills', 486, '36.26940', '-81.99190'), ('Hampton', 13372, '36.28190', '-82.17470'), ('Roan Mountain', 1160, '36.18370', '-82.07390')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ048': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ashport', 1338, '35.76670', '-89.80000'), ('Edith', 7844, '35.85000', '-89.55000'), ('Ft Pillow', 309, '35.66670', '-89.75000'), ('Fulton', 489, '35.61670', '-89.88330'), ('Gates', 901, '35.83940', '-89.40780'), ('Halls', 2311, '35.86670', '-89.40000'), ('Henning', 970, '35.67330', '-89.57540'), ('Ripley', 7844, '35.74590', '-89.53410')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ049': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Atoka', 3235, '35.44520', '-89.77270'), ('Brighton', 1719, '35.47980', '-89.73900'), ('Burlison', 453, '35.55870', '-89.78540'), ('Covington', 8463, '35.56710', '-89.64940'), ('Dixonville', 3235, '35.42314', '-89.94600'), ('Garland', 309, '35.58650', '-89.75200'), ('Gilt Edge', 489, '35.53280', '-89.83070'), ('Mason', 1089, '35.41320', '-89.53660'), ('Munford', 4708, '35.44980', '-89.80420')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ050': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Belle Eagle', 10748, '35.68330', '-89.25000'), ('Brownsville', 10748, '35.59450', '-89.25500'), ('Dancyville', 615, '35.41670', '-89.30000'), ('Forked Deer', 901, '35.76670', '-89.40000'), ('Hillville', 3148, '35.45000', '-89.16670'), ('Holly Grove', 2171, '35.65000', '-89.13330'), ('Nutbush', 7844, '35.70000', '-89.41670'), ('Stanton', 615, '35.46200', '-89.40080')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ051': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alamo', 2392, '35.78260', '-89.11570'), ('Bells', 2171, '35.71840', '-89.08530'), ('Chestnut Bluff', 901, '35.86670', '-89.33300'), ('Friendship', 608, '35.91030', '-89.24180'), ('Gadsden', 553, '35.77840', '-88.98360'), ('Maury City', 704, '35.81550', '-89.22380')], 'partOfState': 'northwest', 'wfo': 'MEG'}, +'TNZ052': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Adair', 553, '35.71670', '-88.96670'), ('Bemis', 59643, '35.58330', '-88.83330'), ('Fairview', 9467, '35.76670', '-88.85000'), ('Jackson', 59643, '35.63370', '-88.82850'), ('Medon', 191, '35.45850', '-88.86570'), ('Mercer', 330, '35.48330', '-89.03330'), ('Spring Creek', 969, '35.76670', '-88.68330')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ053': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Enville', 230, '35.38790', '-88.42470'), ('Henderson', 5670, '35.44490', '-88.64770'), ('Jacks Creek', 5670, '35.46670', '-88.53330'), ('Masseyville', 60, '35.30000', '-88.71670'), ('Mifflin', 5670, '35.55000', '-88.58330')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ054': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bargerton', 241, '35.73330', '-88.50000'), ('Blue Goose', 7393, '35.70000', '-88.58320'), ('Darden', 2452, '35.63330', '-88.23330'), ('Lexington', 7393, '35.65390', '-88.39300'), ("Parker's Cross Roads", 241, '35.78880', '-88.39270'), ('Reagan', 445, '35.51670', '-88.35000'), ('Sardis', 445, '35.44310', '-88.29430'), ('Scotts Hill', 894, '35.51540', '-88.25060'), ('Wildersville', 241, '35.78330', '-88.36670')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ055': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Decaturville', 859, '35.58230', '-88.11920'), ('Parsons', 2452, '35.65330', '-88.12500')], 'partOfState': 'middle', 'wfo': 'MEG'}, +'TNZ056': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Linden', 1015, '35.61120', '-87.84390'), ('Lobelville', 915, '35.75100', '-87.79710')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ057': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Centerville', 3793, '35.79410', '-87.44980')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ058': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Hohenwald', 3754, '35.55090', '-87.55970')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ059': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Brentwood', 23445, '35.99670', '-86.78770'), ('Fairview', 5800, '35.97970', '-87.12420'), ('Franklin', 41842, '35.92940', '-86.84200'), ('Nolensville', 3099, '35.94790', '-86.64800')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ060': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Columbia', 33055, '35.62250', '-87.04900'), ('Mount Pleasant', 4491, '35.55130', '-87.19120'), ('Spring Hill', 7715, '35.74200', '-86.92370')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ061': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Chapel Hill', 943, '35.62810', '-86.69620'), ('Cornersville', 962, '35.35870', '-86.84100'), ('Lewisburg', 10413, '35.44700', '-86.78810')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ062': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Eagleville', 464, '35.74010', '-86.65360'), ('La Vergne', 18687, '35.99930', '-86.57320'), ('Murfreesboro', 68816, '35.85340', '-86.39460'), ('Smyrna', 25569, '35.98260', '-86.51720'), ('Walterhill', 1043, '35.96280', '-86.37920')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ063': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Auburntown', 252, '35.94890', '-86.09430'), ('Woodbury', 2287, '35.82480', '-86.07050')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ064': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alexandria', 814, '36.07670', '-86.03460'), ('Dowelltown', 302, '36.01310', '-85.94310'), ('Liberty', 367, '36.00400', '-85.97780'), ('Smithville', 3994, '35.95710', '-85.82080')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ065': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Doyle', 525, '35.85210', '-85.51280'), ('Sparta', 4599, '35.93450', '-85.47310')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ066': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Crab Orchard', 838, '35.90960', '-84.88210'), ('Crossville', 8981, '35.95190', '-85.03680'), ('Fairfield Glade', 4885, '36.00010', '-84.89940'), ('Pleasant Hill', 544, '35.97500', '-85.19720')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ067': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bradbury', 5264, '35.86970', '-84.39030'), ('Dearmond', 244, '35.96640', '-84.48530'), ('Eagle Furnace', 5774, '35.77080', '-84.73670'), ('Fairview', 5264, '35.78970', '-84.57670'), ('Harriman', 6744, '35.93340', '-84.56170'), ('Kingston', 5264, '35.87010', '-84.51010'), ('Oliver Springs', 3303, '36.03640', '-84.33700'), ('Paint Rock', 533, '35.73640', '-84.51670'), ('Rockwood', 5774, '35.87410', '-84.67520')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ068': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Greenback', 954, '35.65180', '-84.17520'), ('Lenoir City', 6819, '35.80090', '-84.27100'), ('Loudon', 4476, '35.73530', '-84.35780'), ('Philadelphia', 533, '35.67910', '-84.40040')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ069': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bearden', 173890, '35.93310', '-84.00360'), ('Farragut', 17720, '35.87440', '-84.18220'), ('Halls', 6450, '36.08180', '-83.93290'), ('Karns', 1458, '35.97600', '-84.11820'), ('Kimberlin Heights', 8850, '35.92970', '-83.75190'), ('Knoxville', 173890, '35.97460', '-83.94630'), ('Lake Forest', 173890, '35.92610', '-83.86830'), ('Maloneyville', 2119, '36.08530', '-83.83610'), ('Mascot', 2119, '36.06820', '-83.76610'), ('Powell', 7534, '36.03370', '-84.02830')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ070': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Chestnut Hill', 2078, '35.93000', '-83.34030'), ('Dandridge', 2078, '36.02310', '-83.41870'), ('Jefferson City', 7760, '36.11900', '-83.48760'), ('New Market', 1234, '36.09890', '-83.55240'), ('Piedmont', 1234, '36.02530', '-83.52810'), ('Strawberry Plains', 2119, '36.06250', '-83.68720'), ('White Pine', 1997, '36.09930', '-83.29770')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ071': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Alcoa', 7734, '35.79300', '-83.97920'), ('Clover Hill', 890, '35.70810', '-84.06720'), ('Eagleton Village', 4883, '35.79400', '-83.93670'), ('Friendsville', 890, '35.75720', '-84.13040'), ('Happy Valley', 23120, '35.60810', '-83.95810'), ('Maryville', 23120, '35.74750', '-83.97300'), ('Talassee', 954, '35.54810', '-84.06080'), ('Townsend', 244, '35.67610', '-83.75190'), ('Walland', 244, '35.72530', '-83.81530'), ('Wildwood', 4883, '35.80250', '-83.87360')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ072': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cades Cove', 244, '35.59670', '-83.81060')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ073': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bird Crossing', 2078, '35.91170', '-83.36560'), ('Harrisburg', 11757, '35.86250', '-83.48440'), ('Kodak', 11757, '35.97310', '-83.62860'), ('McMahan', 11757, '35.91500', '-83.67310'), ('Pigeon Forge', 5083, '35.79270', '-83.55810'), ('Sevierville', 11757, '35.89200', '-83.57820'), ('Seymour', 8850, '35.87470', '-83.77390'), ('Wears Valley', 244, '35.71360', '-83.65580')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ074': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Elkmont', 3382, '35.65220', '-83.58220'), ('Gatlinburg', 3382, '35.72340', '-83.49370'), ('Pittman Center', 477, '35.75880', '-83.38830')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ075': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bell Buckle', 391, '35.59070', '-86.35410'), ('Normandy', 141, '35.45140', '-86.25810'), ('Shelbyville', 16105, '35.49040', '-86.44670'), ('Wartrace', 494, '35.52780', '-86.33290')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ076': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Lynchburg', 4721, '35.28420', '-86.35740')], 'partOfState': 'middle', 'wfo': 'HUN'}, +'TNZ077': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Manchester', 8294, '35.46860', '-86.08080'), ('Tullahoma', 16761, '35.37120', '-86.21550')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ078': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Centertown', 257, '35.72480', '-85.91970'), ('McMinnville', 12749, '35.68750', '-85.77630'), ('Morrison', 684, '35.60240', '-85.91850'), ('Viola', 123, '35.53800', '-85.86060')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ079': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Altamont', 1136, '35.42970', '-85.72840'), ('Beersheba Springs', 553, '35.45740', '-85.67130'), ('Coalmont', 948, '35.33900', '-85.71340'), ('Gruetli-Laager', 1867, '35.37100', '-85.63710'), ('Palmer', 726, '35.35790', '-85.56520'), ('Tracy City', 1679, '35.25900', '-85.75190')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ080': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Spencer', 1713, '35.74230', '-85.45670')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ081': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cagle', 4173, '35.47420', '-85.46250'), ('Cartwright', 1660, '35.27690', '-85.46030'), ('Dunlap', 4173, '35.37270', '-85.38650'), ('Lone Oak', 1578, '35.19810', '-85.36560')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ082': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Brayton', 1411, '35.46920', '-85.18500'), ('Melvine', 1781, '35.73220', '-85.05970'), ('Mount Crest', 1781, '35.66860', '-85.24170'), ('Old Cumberland', 4173, '35.54750', '-85.37440'), ('Palio', 4173, '35.46920', '-85.32190'), ('Pikeville', 1781, '35.60670', '-85.19580')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ083': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Dayton', 6180, '35.49280', '-85.01300'), ('Evensville', 6180, '35.56280', '-84.95690'), ('Grandview', 2025, '35.74330', '-84.83860'), ('Graysville', 1411, '35.44780', '-85.08250'), ('Old Washington', 6180, '35.53170', '-84.90920'), ('Spring City', 2025, '35.68740', '-84.86410')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ084': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Big Spring', 6180, '35.39560', '-84.90030'), ('Decatur', 1395, '35.52500', '-84.79120'), ('Peakland', 1395, '35.62670', '-84.76390'), ('Ten Mile', 1395, '35.66560', '-84.66610')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ085': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Athens', 13220, '35.45150', '-84.60200'), ('Calhoun', 496, '35.29700', '-84.74730'), ('Clear Water', 13220, '35.50390', '-84.65280'), ('Dentville', 3663, '35.27970', '-84.60830'), ('Englewood', 1590, '35.42260', '-84.48970'), ('Etowah', 3663, '35.33500', '-84.52890'), ('Hillsview', 496, '35.38670', '-84.80330'), ('Murray Store', 781, '35.61470', '-84.62640'), ('Niota', 781, '35.51460', '-84.54930'), ('Riceville', 496, '35.38250', '-84.69530')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ086': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bullet Creek', 3663, '35.27810', '-84.42810'), ('Citico Beach', 954, '35.53470', '-84.10920'), ('Madisonville', 3939, '35.52280', '-84.35990'), ('Mount Vernon', 859, '35.41140', '-84.36390'), ('Sweetwater', 5586, '35.60030', '-84.46830'), ('Tariffville', 1162, '35.48580', '-84.18030'), ('Tellico Plains', 859, '35.36650', '-84.29900'), ('Vonore', 1162, '35.59680', '-84.23190')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ087': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Citico', 859, '35.39920', '-84.11810'), ('Coker Creek', 859, '35.26310', '-84.28750')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ088': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Arlington', 2569, '35.28220', '-89.66420'), ('Bartlett', 40543, '35.21550', '-89.83530'), ('Collierville', 31872, '35.05530', '-89.67850'), ('Downtown Memphis', 650100, '35.13330', '-90.05000'), ('Eads', 6862, '35.20000', '-89.66670'), ('Ellendale', 40543, '35.23330', '-89.83330'), ('Frayser', 650100, '35.21670', '-89.97000'), ('Germantown', 37348, '35.08890', '-89.79170'), ('Lakeland', 6862, '35.24020', '-89.72980'), ('Midtown Memphis', 99, '35.13330', '-89.98330'), ('Millington', 10433, '35.33440', '-89.88830'), ('Southeast Memphis', 37348, '35.06670', '-89.88330'), ('Southwest Memphis', 650100, '35.05000', '-90.06670'), ('Whitehaven', 17949, '35.01670', '-90.03330')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ089': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Braden', 271, '35.36970', '-89.57590'), ('Gallaway', 666, '35.33830', '-89.60350'), ('Lagrange', 136, '35.05000', '-89.21670'), ('La Grange', 136, '35.04930', '-89.23470'), ('Moscow', 422, '35.06130', '-89.39680'), ('Oakland', 1279, '35.22420', '-89.51340'), ('Piperton', 589, '35.02650', '-89.63020'), ('Rossville', 380, '35.04380', '-89.54290'), ('Somerville', 2519, '35.23750', '-89.35070'), ('Williston', 427, '35.15940', '-89.37600')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ090': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Bolivar', 5802, '35.26400', '-88.99910'), ('Cloverport', 330, '35.40000', '-89.01670'), ('Grand Junction', 301, '35.04920', '-89.18860'), ('Hickory Valley', 136, '35.15480', '-89.12650'), ('Hornsby', 306, '35.22970', '-88.83040'), ('Middleton', 602, '35.06030', '-88.89140'), ('Pocahontas', 602, '35.05000', '-88.81670'), ('Saulsbury', 99, '35.04920', '-89.08880'), ('Silerton', 60, '35.35000', '-88.81670'), ('Toone', 330, '35.35300', '-88.95350'), ('Whiteville', 3148, '35.32760', '-89.14770')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ091': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Acton', 647, '35.01670', '-88.46670'), ('Adamsville', 1983, '35.23470', '-88.38760'), ('Bethel Springs', 763, '35.23550', '-88.60990'), ('Eastview', 618, '35.08900', '-88.55380'), ('Finger', 350, '35.35470', '-88.61550'), ('Guys', 483, '35.01590', '-88.54420'), ('McNairy', 350, '35.31670', '-88.63330'), ('Michie', 647, '35.06290', '-88.42750'), ('Milledgeville', 287, '35.37600', '-88.36660'), ('Ramer', 354, '35.07030', '-88.61770'), ('Selmer', 4541, '35.17180', '-88.59000'), ('Stantonville', 312, '35.15810', '-88.42830')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ092': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Crump', 1521, '35.23980', '-88.32180'), ('Morris Chapel', 287, '35.31670', '-88.35000'), ('Olive Hill', 2699, '35.26670', '-88.03330'), ('Pickwick Dam', 6917, '35.05000', '-88.25000'), ('Saltillo', 342, '35.37780', '-88.21050'), ('Savannah', 6917, '35.22290', '-88.23720'), ('Shiloh', 312, '35.11670', '-88.36670'), ('Walnut Grove', 250, '35.05000', '-88.05000')], 'partOfState': 'southwest', 'wfo': 'MEG'}, +'TNZ093': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Clifton', 2699, '35.38140', '-87.99260'), ('Collinwood', 1024, '35.17640', '-87.74430'), ('Waynesboro', 1824, '35.32280', '-87.75780')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ094': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ethridge', 536, '35.32120', '-87.30230'), ('Iron City', 368, '35.02560', '-87.58370'), ('Lawrenceburg', 10796, '35.24570', '-87.33800'), ('Loretto', 1665, '35.08030', '-87.43610'), ('St. Joseph', 829, '35.02950', '-87.50610')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ095': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Ardmore', 1082, '34.99990', '-86.85660'), ('Elkton', 510, '35.06020', '-86.89640'), ('Lynnville', 345, '35.37790', '-87.00560'), ('Minor Hill', 437, '35.03840', '-87.17110'), ('Pulaski', 7871, '35.19570', '-87.03430')], 'partOfState': 'middle', 'wfo': 'OHX'}, +'TNZ096': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Fayetteville', 6994, '35.14990', '-86.56440'), ('Petersburg', 580, '35.31710', '-86.64010')], 'partOfState': 'middle', 'wfo': 'HUN'}, +'TNZ097': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Cowan', 1770, '35.16520', '-86.01610'), ('Decherd', 2246, '35.20930', '-86.08790'), ('Estill Springs', 2152, '35.26450', '-86.13100'), ('Huntland', 916, '35.05580', '-86.26860'), ('Sewanee', 2361, '35.20150', '-85.92050'), ('Winchester', 6305, '35.18840', '-86.10850')], 'partOfState': 'middle', 'wfo': 'HUN'}, +'TNZ098': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Griffith Creek', 726, '35.28890', '-85.55190'), ('Haletown (Guild)', 3214, '35.02720', '-85.53920'), ('Jasper', 3214, '35.05990', '-85.62870'), ('Martin Springs', 1660, '35.16560', '-85.53920'), ('Monteagle', 1238, '35.22820', '-85.83070'), ('Orme', 124, '35.01190', '-85.80640'), ('Powells Crossroads', 1286, '35.18350', '-85.48290'), ('South Pittsburg', 3295, '35.01580', '-85.71140'), ('Whitwell', 1660, '35.20150', '-85.51870')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ099': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Birchwood', 1411, '35.36140', '-84.99330'), ('Chattanooga', 155554, '35.06620', '-85.25700'), ('Collegedale', 6514, '35.04470', '-85.05030'), ('East Brainerd', 14132, '35.01380', '-85.10890'), ('Harrison', 7630, '35.12790', '-85.14600'), ('Middle Valley', 11854, '35.18770', '-85.18940'), ('Ooltewah', 5681, '35.06250', '-85.09110'), ('Red Bank', 12418, '35.11140', '-85.29500'), ('Sale Creek', 1411, '35.38110', '-85.10970'), ('Shady Grove', 732, '35.25220', '-85.12110'), ('Signal Mountain', 7429, '35.13040', '-85.34210'), ('Soddy-Daisy', 11530, '35.26260', '-85.17220')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ100': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Charleston', 630, '35.28720', '-84.76040'), ('Cleveland', 37192, '35.17760', '-84.86750'), ('Flint Springs', 3050, '35.03330', '-84.90720'), ('Gap Springs', 3050, '35.00440', '-84.78610'), ('Hopewell', 1815, '35.23490', '-84.90530'), ('McDonald', 5372, '35.11170', '-84.98420'), ('Tasso', 37192, '35.20440', '-84.81030'), ('Waterville', 3050, '35.10640', '-84.86470')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ101': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Archville', 1138, '35.13140', '-84.52640'), ('Benton', 1138, '35.17530', '-84.65280'), ('Conasauga', 3050, '35.00250', '-84.73060'), ('Parksville', 1138, '35.09810', '-84.65220'), ('Reliance', 1138, '35.18610', '-84.56690')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TNZ102': {'fullStateName': 'Tennessee', 'state': 'TN', 'cities': [('Big Frog Mountain', 427, '35.00060', '-84.53060'), ('Ducktown', 427, '35.03580', '-84.38980'), ('Turtletown', 427, '35.12610', '-84.35500')], 'partOfState': 'east', 'wfo': 'MRX'}, +'TXZ001': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Conlen', 1991, '36.23530', '-102.23690'), ('Dalhart', 7237, '36.06180', '-102.51460'), ('Texline', 425, '36.37670', '-103.01870'), ('Ware', 7237, '36.18470', '-102.70970')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ002': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Stratford', 1991, '36.33720', '-102.07360'), ('Texhoma', 291, '36.48770', '-101.81000')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ003': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gruver', 1162, '36.25650', '-101.41110'), ('Morse', 172, '36.06250', '-101.47500'), ('Spearman', 3021, '36.19750', '-101.19360')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ004': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Farnsworth', 7774, '36.32110', '-100.96580'), ('Perryton', 7774, '36.39170', '-100.80300'), ('Waka', 3021, '36.28170', '-101.04720'), ('Wolf Creek Park', 7774, '36.21470', '-100.64580')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ005': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Booker', 1315, '36.45590', '-100.53960'), ('Darrouzett', 303, '36.44510', '-100.32540'), ('Follett', 412, '36.43420', '-100.14070'), ('Higgins', 464, '36.12030', '-100.02690'), ('Lipscomb', 44, '36.23330', '-100.27060')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ006': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Channing', 356, '35.68210', '-102.33170'), ('Hartley', 441, '35.88560', '-102.39640'), ('Romero', 159, '35.72750', '-102.93080')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ007': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cactus', 2538, '36.04470', '-102.01110'), ('Dumas', 13747, '35.86320', '-101.96450'), ('Four Way', 13747, '35.69190', '-101.96190'), ('Lake Meredith', 2235, '35.65080', '-101.66190'), ('Masterson', 13747, '35.63580', '-101.95970'), ('Sunray', 1729, '36.01820', '-101.82340')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ008': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Borger', 14302, '35.65930', '-101.40020'), ('Fritch', 2235, '35.64060', '-101.59680'), ('Pringle', 1936, '35.94920', '-101.45580'), ('Sanford', 218, '35.70260', '-101.53130'), ('Stinnett', 1936, '35.82220', '-101.44320')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ009': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Codman', 588, '35.64000', '-100.75310'), ('Lora', 588, '35.74080', '-100.55720'), ('Miami', 588, '35.69180', '-100.64040')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ010': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Canadian', 2233, '35.91070', '-100.38330'), ('Glazier', 2233, '36.01140', '-100.26330'), ('Lake Marvin', 2233, '35.89390', '-100.16580')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ011': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Adrian', 159, '35.27590', '-102.66390'), ('Boys Ranch', 356, '35.51110', '-102.25080'), ('Vega', 936, '35.24660', '-102.42590'), ('Wildorado', 936, '35.21640', '-102.24440')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ012': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Amarillo', 173627, '35.20260', '-101.81870'), ('Bushland', 173627, '35.19000', '-102.06270'), ('Valley De Oro', 356, '35.45170', '-102.10600')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ013': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Groom', 587, '35.20410', '-101.10600'), ('Panhandle', 2589, '35.34620', '-101.38010'), ('Pantex', 2589, '35.32390', '-101.58080'), ('Skellytown', 664, '35.57310', '-101.17300'), ('White Deer', 1125, '35.43240', '-101.17480')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ014': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alanreed', 830, '35.21250', '-100.73390'), ('Kingsmill', 17887, '35.48830', '-101.05920'), ('Lake Mcclellan', 437, '35.21690', '-100.87190'), ('Lefors', 559, '35.43970', '-100.80330'), ('McLean', 830, '35.23290', '-100.60000'), ('Pampa', 17887, '35.54700', '-100.96430')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ015': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Allison', 0, '35.60580', '-100.10030'), ('Briscoe', 3985, '35.58360', '-100.28940'), ('Kellerville', 830, '35.37170', '-100.50250'), ('Lela', 2029, '35.22750', '-100.34250'), ('Mobeetie', 107, '35.53050', '-100.44210'), ('New Mobeetie', 107, '35.53190', '-100.44110'), ('Shamrock', 2029, '35.21600', '-100.24550'), ('Twitty', 2029, '35.31390', '-100.23580'), ('Wheeler', 3985, '35.44030', '-100.27500')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ016': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bootleg', 3854, '34.82890', '-102.81361'), ('Dawn', 14597, '34.91030', '-102.19940'), ('Glenrio', 277, '35.17860', '-103.02190'), ('Glenrio', 306, '35.17900', '-103.04200'), ('Hereford', 14597, '34.82340', '-102.39840'), ('Simms', 159, '35.03340', '-102.65770')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ017': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buffalo Lake', 12875, '34.88890', '-102.13390'), ('Canyon', 12875, '34.98130', '-101.92160'), ('Lake Tanglewood', 825, '35.05900', '-101.78290'), ('Palo Duro Canyon', 825, '34.94890', '-101.67190'), ('Timbercreek Canyon', 277, '35.05480', '-101.81600'), ('Umbarger', 12875, '34.95440', '-102.10500')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ018': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Claude', 1313, '35.10730', '-101.36230'), ('Goodnight', 587, '35.03440', '-101.18583'), ('Washburn', 1313, '35.17670', '-101.57278'), ('Wayside', 647, '34.79280', '-101.54667')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ019': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clarendon', 1974, '34.93670', '-100.89180'), ('Greenbelt Lake', 437, '35.01190', '-100.91080'), ('Hedley', 379, '34.86700', '-100.65940'), ('Howardwick', 437, '35.03520', '-100.90870'), ('Lelia Lake', 379, '34.90110', '-100.77030')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ020': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dodson', 115, '34.76500', '-100.01950'), ('Dozier', 2029, '35.08140', '-100.34440'), ('Lutie', 2275, '35.02310', '-100.22222'), ('Quail', 33, '34.90900', '-100.40500'), ('Samnorwood', 2029, '35.05530', '-100.28430'), ('Wellington', 2275, '34.85350', '-100.21320')], 'partOfState': 'panhandle', 'wfo': 'AMA'}, +'TXZ021': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Black', 3854, '34.68250', '-102.60880'), ('Bovina', 1874, '34.51620', '-102.88830'), ('Farwell', 1364, '34.38540', '-103.03650'), ('Friona', 3854, '34.63890', '-102.72230'), ('Lariat', 1364, '34.33020', '-102.90740'), ('Lazbuddie', 4530, '34.39300', '-102.61080'), ('Oklahoma Lane', 1874, '34.37880', '-102.87690'), ('Rhea', 1874, '34.67110', '-102.94860')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXZ022': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dimmitt', 4375, '34.54790', '-102.31520'), ('Easter', 4375, '34.64550', '-102.39630'), ('Hart', 1198, '34.38560', '-102.11460'), ('Nazareth', 356, '34.54140', '-102.10370'), ('Summerfield', 14597, '34.74080', '-102.51470')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXZ023': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Claytonville', 826, '34.37520', '-101.57440'), ('Happy', 647, '34.74130', '-101.85590'), ('Kress', 826, '34.36620', '-101.74750'), ('Tulia', 4699, '34.53760', '-101.77150')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXZ024': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caprock Canyon St.', 432, '34.44580', '-101.06770'), ('Mackenzie Reservoir', 771, '34.54690', '-101.44880'), ('Quitaque', 432, '34.36740', '-101.05490'), ('Silverton', 771, '34.47120', '-101.30430'), ('Valley Schools', 432, '34.37700', '-100.98690')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXZ025': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brice', 152, '34.71000', '-100.88970'), ('Estelline', 168, '34.54710', '-100.43940'), ('Lakeview', 152, '34.67280', '-100.69720'), ('Memphis', 2479, '34.72670', '-100.54120'), ('Turkey', 507, '34.39420', '-100.89550')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXZ026': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Childress', 6778, '34.42450', '-100.24830'), ('Kirkland', 0, '34.39190', '-100.06890'), ('Tell', 6778, '34.38000', '-100.39190')], 'partOfState': 'panhandle', 'wfo': 'LUB'}, +'TXZ027': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bula', 1039, '33.91130', '-102.63750'), ('Enochs', 2249, '33.87300', '-102.75940'), ('Maple', 2249, '33.84860', '-102.89800'), ('Muleshoe', 4530, '34.22860', '-102.72810'), ('Muleshoe Wildlife Refuge', 2249, '33.94690', '-102.75270'), ('Needmore', 4530, '34.03300', '-102.73690'), ('Progress', 4530, '34.28270', '-102.80940'), ('West Camp', 1364, '34.28380', '-102.98190')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ028': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Amherst', 791, '34.01240', '-102.41400'), ('Earth', 1109, '34.23350', '-102.40840'), ('Fieldton', 6507, '34.03910', '-102.22270'), ('Littlefield', 6507, '33.91990', '-102.33460'), ('Olton', 2288, '34.17950', '-102.13650'), ('Spade', 1200, '33.92610', '-102.15300'), ('Springlake', 132, '34.23220', '-102.30510'), ('Sudan', 1039, '34.06750', '-102.52490')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ029': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Abernathy', 2839, '33.84000', '-101.84660'), ('Abernathy', 2839, '33.83180', '-101.84460'), ('Cotton Center', 2263, '33.99300', '-101.99240'), ('Edmonson', 123, '34.28110', '-101.89480'), ('Hale Center', 2263, '34.06470', '-101.84450'), ('Halfway', 123, '34.18800', '-101.95190'), ('Petersburg', 1262, '33.87090', '-101.59680'), ('Plainview', 21700, '34.19090', '-101.72460'), ('Seth Ward', 1402, '34.21370', '-101.69040')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ030': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aiken', 2056, '34.14220', '-101.52520'), ('Cedar Hill', 3676, '34.14330', '-101.20380'), ('Dougherty', 265, '33.94160', '-101.08610'), ('Floydada', 3676, '33.98370', '-101.33680'), ('Lockney', 2056, '34.12290', '-101.44180'), ('South Plains', 2056, '34.22440', '-101.30910')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ031': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Flomot', 432, '34.22690', '-100.98860'), ('Matador', 740, '34.01510', '-100.82120'), ('Northfield', 168, '34.28720', '-100.59830'), ('Roaring Springs', 265, '33.89940', '-100.85580')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ032': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cee Vee', 1498, '34.22940', '-100.44080'), ('Chalk', 1498, '33.87690', '-100.23280'), ('Delwin', 1498, '33.87690', '-100.39970'), ('Hackberry', 0, '33.92780', '-100.15080'), ('Lazare', 0, '34.29190', '-100.00000'), ('Paducah', 1498, '34.01480', '-100.30340'), ('Swearingen', 1498, '34.14780', '-100.14580')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ033': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bledsoe', 57, '33.61910', '-103.02080'), ('Lehman', 2249, '33.62700', '-102.79190'), ('Morton', 2249, '33.72460', '-102.75820'), ('Whiteface', 465, '33.59920', '-102.61250')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ034': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anton', 1200, '33.81130', '-102.16200'), ('Levelland', 12866, '33.57990', '-102.36390'), ('Opdyke West', 188, '33.59120', '-102.29950'), ('Pep', 2249, '33.81580', '-102.55970'), ('Ropesville', 494, '33.41370', '-102.15430'), ('Smyer', 442, '33.58680', '-102.16320'), ('Sundown', 1759, '33.45680', '-102.49070'), ('Whitharral', 188, '33.73750', '-102.32660')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ035': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Downtown Lubbock', 199564, '33.58770', '-101.84580'), ('Idalou', 2157, '33.66290', '-101.68190'), ('Lubbock', 199564, '33.57590', '-101.87540'), ('Lubbock Int. Airport', 708, '33.65380', '-101.81380'), ('Lubbock South Plai', 199564, '33.53500', '-101.92270'), ('New Deal', 708, '33.73130', '-101.83810'), ('Ransom Canyon', 750, '33.52960', '-101.68250'), ('Reese Center', 1263, '33.59250', '-102.02690'), ('Shallowater', 1708, '33.69010', '-101.99230'), ('Slaton', 6109, '33.43910', '-101.64230'), ('Slide', 320, '33.41380', '-101.92940'), ('Texas Tech Univ.', 199564, '33.58380', '-101.85770'), ('Wolfforth', 1941, '33.50800', '-102.01030'), ('Woodrow', 199564, '33.44660', '-101.84360')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ036': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caprock', 2252, '33.47970', '-101.40990'), ('Cone', 2252, '33.79720', '-101.38720'), ('Crosbyton', 1874, '33.64190', '-101.23740'), ('Kalgary', 1874, '33.40880', '-101.14800'), ('Lorenzo', 1372, '33.67010', '-101.53450'), ('Ralls', 2252, '33.67830', '-101.38440'), ('White River Lake', 1874, '33.48080', '-101.09880')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ037': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Afton', 265, '33.76270', '-100.81630'), ('Dickens', 332, '33.62130', '-100.83580'), ('McAdoo', 332, '33.73380', '-101.00580'), ('Spur', 1300, '33.47810', '-100.85490')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ038': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dumont', 1498, '33.80390', '-100.51780'), ('Finney', 1498, '33.77780', '-100.38280'), ('Grow', 1498, '33.80970', '-100.29830'), ('Guthrie', 1498, '33.62890', '-100.32280')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ039': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bronco', 1422, '33.25690', '-103.05860'), ('Bronco', 1450, '33.25380', '-103.03880'), ('Denver City', 3985, '32.96960', '-102.83070'), ('Plains', 1450, '33.19010', '-102.82710')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ040': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brownfield', 9488, '33.17970', '-102.27050'), ('Locketville', 658, '33.38770', '-102.31380'), ('Meadow', 658, '33.33820', '-102.20620'), ('Tokio', 203, '33.18130', '-102.57190'), ('Union', 9488, '33.03630', '-102.22130'), ('Wellman', 203, '33.04700', '-102.42760')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ041': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Grassland', 2910, '33.13880', '-101.58970'), ('New Home', 320, '33.32730', '-101.91080'), ('New Moore', 1011, '33.02190', '-102.03220'), ("O'donnell", 1011, '32.96520', '-101.83010'), ('Tahoka', 2910, '33.16450', '-101.79440'), ('Wilson', 568, '33.31980', '-101.72670')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ042': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Graham', 8716, '33.15050', '-101.46910'), ('Justiceburg', 8716, '33.04270', '-101.20240'), ('Lake Alan Henry', 8716, '33.06440', '-101.04830'), ('Post', 8716, '33.19090', '-101.38130'), ('Southland', 6109, '33.36190', '-101.54970')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ043': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clairemont', 513, '33.16630', '-100.75220'), ('Girard', 62, '33.36220', '-100.66250'), ('Jayton', 513, '33.25010', '-100.57440')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ044': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aspermont', 1021, '33.13990', '-100.22490'), ('Old Glory', 1021, '33.12970', '-100.05550'), ('Peacock', 1021, '33.18220', '-100.39880'), ('Swenson', 1021, '33.20690', '-100.31160')], 'partOfState': 'northwest', 'wfo': 'LUB'}, +'TXZ045': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ashmore', 203, '32.92000', '-102.28000'), ('Fairview', 5910, '32.69670', '-102.53610'), ('Higginbotham', 3985, '32.90000', '-102.99000'), ('Loop', 203, '32.92000', '-102.42000'), ('Paynes Corner', 5910, '32.73000', '-102.80000'), ('Seagraves', 2398, '32.94150', '-102.56490'), ('Seminole', 5910, '32.71830', '-102.65260')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ046': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arvana', 9952, '32.81000', '-101.92000'), ('Friendship', 9952, '32.63000', '-102.03000'), ('Grandview', 1011, '32.91000', '-102.00000'), ('Hancock', 288, '32.82000', '-101.86000'), ('Key', 288, '32.73000', '-101.80000'), ('Klondike', 288, '32.56000', '-101.96000'), ('Lamesa', 9952, '32.73260', '-101.95580'), ('Midway', 288, '32.68610', '-101.78610'), ('Patricia', 9952, '32.56000', '-102.02000'), ('Pride', 9952, '32.94000', '-102.08000'), ('Punkin Center', 9952, '32.85000', '-102.05000'), ('Sand', 9952, '32.70000', '-102.18000'), ('Sparenberg', 245, '32.58000', '-101.84000'), ('Tenmile', 288, '32.60000', '-101.92000'), ('Union', 9952, '32.67360', '-102.06360'), ('Welch', 9952, '32.93000', '-102.13000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ047': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gail', 245, '32.77000', '-101.45000'), ('Mesquite', 124523, '32.87000', '-101.63000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ048': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arah', 288, '32.76000', '-101.14000'), ('China Grove', 4281, '32.53000', '-100.82000'), ('Dermott', 288, '32.86000', '-101.02000'), ('Dunn', 288, '32.57000', '-100.89000'), ('Fluvanna', 288, '32.89000', '-101.15000'), ('Hermleigh', 393, '32.64000', '-100.76000'), ('Hudd', 1611, '32.93000', '-100.68000'), ('Inadale', 656, '32.54000', '-100.68000'), ('Ira', 288, '32.58000', '-101.00000'), ('Knapp', 288, '32.63190', '-101.13000'), ('Midway', 288, '32.73000', '-100.68000'), ('Snyder', 288, '32.71350', '-100.91510'), ('Union', 288, '32.73000', '-101.00000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ049': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Busby', 673, '32.62280', '-100.42060'), ('Capitola', 673, '32.62220', '-100.49220'), ('Gannon', 11415, '32.55670', '-100.48310'), ('Hitson', 2248, '32.89440', '-100.21140'), ('Hobbs', 1611, '32.78140', '-100.59140'), ('Longworth', 673, '32.65030', '-100.34530'), ('McCaulley', 2248, '32.78190', '-100.20360'), ('Roby', 673, '32.74630', '-100.37850'), ('Rotan', 1611, '32.85360', '-100.46540'), ('Sylvester', 673, '32.72080', '-100.25390')], 'partOfState': 'northwest', 'wfo': 'SJT'}, +'TXZ050': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Andrews', 9652, '32.32170', '-102.54950'), ('Florey', 9652, '32.45000', '-102.59000'), ('Frankel City', 9652, '32.39000', '-102.78000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ051': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ackerly', 245, '32.52460', '-101.71580'), ('Brown', 245, '32.43000', '-101.74000'), ('Buford', 288, '32.48000', '-101.96000'), ('Courtney', 2556, '32.15000', '-101.91000'), ('Flower Grove', 245, '32.50000', '-101.89000'), ('Grady', 2556, '32.31000', '-101.93000'), ('Lenorah', 2556, '32.31000', '-101.88000'), ('Stanton', 2556, '32.12930', '-101.78990'), ('Tarzan', 2556, '32.31000', '-101.98000'), ('Three Leagues', 288, '32.50000', '-101.97000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ052': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Big Spring', 25233, '32.25000', '-101.47890'), ('Coahoma', 932, '32.29500', '-101.30630'), ('Elbow', 25233, '32.16000', '-101.51000'), ('Fairview', 25233, '32.36000', '-101.52000'), ('Forsan', 226, '32.11020', '-101.36610'), ('Knott', 245, '32.40000', '-101.64000'), ('Lomax', 2556, '32.12000', '-101.64000'), ('Luther', 25233, '32.45000', '-101.46000'), ('Midway', 288, '32.28000', '-101.37000'), ('Sand Springs', 1133, '32.28000', '-101.35000'), ('South Haven', 25233, '32.19000', '-101.48000'), ('Vealmoor', 245, '32.51000', '-101.57000'), ('Vincent', 1133, '32.48000', '-101.23000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ053': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Colorado City', 4281, '32.39970', '-100.85760'), ('Cuthbert', 203, '32.48000', '-101.03000'), ('Loraine', 656, '32.40830', '-100.71220'), ('Westbrook', 203, '32.35690', '-101.01220')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ054': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Blackwell', 360, '32.08670', '-100.31720'), ('Champion', 656, '32.35860', '-100.62000'), ('Hylton', 360, '32.12810', '-100.20250'), ('Maryneal', 360, '32.23530', '-100.45000'), ('Nolan', 360, '32.27360', '-100.24220'), ('Roscoe', 1446, '32.44580', '-100.53830'), ('Sweetwater', 11415, '32.46900', '-100.40460'), ('Wastella', 656, '32.51030', '-100.64920')], 'partOfState': 'northwest', 'wfo': 'SJT'}, +'TXZ057': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Lobo', 2435, '30.81000', '-104.75000'), ('Van Horn', 2435, '31.04000', '-104.83460')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ058': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Balmorhea', 527, '30.98410', '-103.74350'), ('Orla', 1243, '31.83000', '-103.91000'), ('Pecos', 9501, '31.41250', '-103.49560'), ('Red Bluff', 1243, '31.90000', '-103.92000'), ('Saragosa', 527, '31.03000', '-103.66000'), ('Toyah', 115, '31.31950', '-103.79350'), ('Toyahvale', 527, '30.94000', '-103.79000'), ('Verhalen', 527, '31.13000', '-103.59000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ059': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Mentone', 9501, '31.71000', '-103.60000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ060': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Kermit', 5714, '31.85390', '-103.09200'), ('Wink', 1189, '31.75520', '-103.15440')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ061': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gardendale', 1103, '32.02040', '-102.37130'), ('Goldsmith', 253, '31.98310', '-102.61650'), ('North Cowden', 253, '32.01000', '-102.51000'), ('Notrees', 253, '31.92000', '-102.76000'), ('Odessa', 90943, '31.85440', '-102.36830'), ('Penwell', 17799, '31.73000', '-102.59000'), ('Pleasant Farms', 90943, '31.68000', '-102.34000'), ('West Odessa', 17799, '31.84220', '-102.49830')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ062': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cotton Flat', 94996, '31.93000', '-102.06000'), ('Greenwood', 2556, '32.03000', '-101.90000'), ('Midland', 94996, '32.00000', '-102.08020'), ('Spraberry', 2556, '31.93000', '-101.83000'), ('Valley View', 94996, '31.94470', '-101.99420'), ('Warfield', 90943, '31.92000', '-102.22000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ063': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bigby Corner', 2556, '31.71000', '-101.65000'), ('Garden City', 226, '31.87000', '-101.48000'), ('Lees', 226, '32.08000', '-101.49000'), ('Saint Lawrence', 226, '31.70000', '-101.54000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ064': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Broome', 1081, '31.75940', '-100.83690'), ('Sterling City', 1081, '31.83900', '-100.98550')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ065': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bronte', 1076, '31.88550', '-100.29480'), ('Robert Lee', 1171, '31.89220', '-100.48440'), ('Sanco', 1171, '32.00830', '-100.52360'), ('Silver', 1171, '32.07080', '-100.68220'), ('Tennyson', 1076, '31.74170', '-100.28580')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ066': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ballinger', 4243, '31.74070', '-99.95550'), ('Benoit', 4243, '31.78280', '-99.82860'), ('Crews', 2880, '31.93190', '-99.77780'), ('Drasco', 2880, '32.07640', '-99.98720'), ('Hatchel', 4243, '31.85000', '-99.94890'), ('Maverick', 1076, '31.83330', '-100.19470'), ('Miles', 850, '31.59720', '-100.18190'), ('Norton', 1076, '31.87080', '-100.12580'), ('Pumphrey', 2880, '32.03860', '-100.03810'), ('Rowena', 4243, '31.64690', '-100.04580'), ('Wilmeth', 2880, '31.97810', '-100.12000'), ('Wingate', 2880, '32.04390', '-100.10970'), ('Winters', 2880, '31.96550', '-99.93430')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ067': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Barstow', 406, '31.46140', '-103.39500'), ('Grandfalls', 391, '31.34060', '-102.85440'), ('Monahans', 6821, '31.60000', '-102.89000'), ('Pyote', 348, '31.53720', '-103.12250'), ('Royalty', 391, '31.37000', '-102.87000'), ('Thorntonville', 6821, '31.57800', '-102.92160'), ('Wickett', 560, '31.57010', '-103.00940')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ068': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Crane', 3191, '31.39180', '-102.35000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ069': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('McCamey', 1805, '31.13260', '-102.21950'), ('Midkiff', 800, '31.63270', '-101.83940'), ('Rankin', 800, '31.22520', '-101.93940')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ070': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Best', 2885, '31.23000', '-101.62000'), ('Big Lake', 2885, '31.19380', '-101.45840'), ('Stiles', 2885, '31.40670', '-101.56580'), ('Texon', 2885, '31.23000', '-101.69000')], 'partOfState': 'western', 'wfo': 'MAF'}, +'TXZ071': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arden', 839, '31.44360', '-100.76670'), ('Barnhart', 2885, '31.12780', '-101.17030'), ('Mertzon', 839, '31.26170', '-100.81690'), ('Sherwood', 839, '31.28110', '-100.79500')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ072': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carlsbad', 88439, '31.59810', '-100.63250'), ('Christoval', 422, '31.19330', '-100.49830'), ('Grape Creek', 3138, '31.58080', '-100.54690'), ('Harriet', 850, '31.54690', '-100.31830'), ('Knickerbocker', 839, '31.26640', '-100.62280'), ('Mereta', 850, '31.45690', '-100.14060'), ('Orient', 850, '31.65670', '-100.33140'), ('San Angelo', 88439, '31.44600', '-100.45240'), ('Tankersley', 839, '31.34940', '-100.64310'), ('Vancourt', 850, '31.34280', '-100.17670'), ('Veribest', 850, '31.47640', '-100.25920'), ('Wall', 88439, '31.37390', '-100.30720'), ('Water Valley', 1081, '31.66750', '-100.71670')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ073': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Eden', 2561, '31.21570', '-99.84360'), ('Eola', 320, '31.39860', '-100.08890'), ('Live Oak', 2561, '31.13890', '-99.92920'), ('Lowake', 850, '31.56610', '-100.07560'), ('Millersview', 320, '31.40860', '-99.75530'), ('Paint Rock', 320, '31.50950', '-99.92530'), ('Vick', 320, '31.34080', '-100.09170')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ074': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alpine', 5786, '30.36320', '-103.66500'), ('Altuda', 5786, '30.30000', '-103.46000'), ('Boracho', 2435, '31.08000', '-104.39000'), ('Fort Davis', 1050, '30.59000', '-103.90000'), ('Kent', 527, '31.07000', '-104.22000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ075': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bakersfield', 1805, '30.89000', '-102.30000'), ('Belding', 7846, '30.79000', '-103.03000'), ('Coyanosa', 138, '31.24000', '-103.07000'), ('Fort Stockton', 7846, '30.89120', '-102.88570'), ('Girvin', 1805, '31.07000', '-102.39000'), ('Hovey', 5786, '30.60470', '-103.34690'), ('Imperial', 428, '31.27000', '-102.69000'), ('Iraan', 1238, '30.91230', '-101.89940'), ('Longfellow', 861, '30.16000', '-102.64000'), ('Sheffield', 1238, '30.69000', '-101.82000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ076': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ozona', 3436, '30.71000', '-101.20030')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ077': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Eldorado', 1951, '30.86000', '-100.60060')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ078': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Sonora', 2751, '30.56670', '-100.64310')], 'partOfState': 'southwest', 'wfo': 'SJT'}, +'TXZ079': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Adobes', 4167, '29.77000', '-104.56000'), ('Candelaria', 187, '30.14000', '-104.68000'), ('Ochoa', 4167, '29.67000', '-104.50000'), ('Presidio', 4167, '29.56110', '-104.36370'), ('Redford', 4167, '29.45000', '-104.19000'), ('Ruidosa', 4167, '29.98000', '-104.68000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ080': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Casa Piedra', 4167, '29.74000', '-104.06000'), ('Marfa', 2121, '30.31040', '-104.02490'), ('Ryan', 187, '30.43000', '-104.30000'), ('Shafter', 4167, '29.82000', '-104.30000'), ('Valentine', 187, '30.58910', '-104.49500')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ081': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Boquillas Canyon', 861, '29.22000', '-102.88000'), ('Castolon', 4167, '29.14000', '-103.51000'), ('Chisos Basin', 4167, '29.27000', '-103.30670'), ('Lajitas', 4167, '29.26000', '-103.77000'), ('Marathon', 455, '30.20900', '-103.24000'), ('Panther Junction', 5786, '29.32990', '-103.20000'), ('Study Butte', 4167, '29.33500', '-103.53000'), ('Terlingua', 4167, '29.32000', '-103.62000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ082': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dryden', 861, '30.05000', '-102.12000'), ('Sanderson', 861, '30.14260', '-102.39770')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ083': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Chillicothe', 798, '34.25560', '-99.51390'), ('Coppers Breaks State Park', 0, '34.11190', '-99.74320'), ('Goodlett', 0, '34.33530', '-99.88480'), ('Lazare', 0, '34.28320', '-99.99760'), ('Medicine Mound', 798, '34.18780', '-99.59420'), ('Quanah', 3413, '34.29560', '-99.74250')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ084': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Crowell', 1141, '33.98360', '-99.72410'), ('Margaret', 0, '34.04920', '-99.65120'), ('Rayland', 0, '34.06450', '-99.47990'), ('Thalia', 0, '33.98420', '-99.53920')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ085': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fargo', 0, '34.29430', '-99.27750'), ('Grayback', 0, '33.99040', '-99.17220'), ('Harrold', 0, '34.08110', '-99.03190'), ('Lockett', 0, '34.08410', '-99.36840'), ('Odell', 0, '34.34560', '-99.41770'), ('Oklaunion', 0, '34.13050', '-99.14180'), ('Vernon', 12001, '34.15220', '-99.28760')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ086': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Burkburnett', 10927, '34.08710', '-98.56490'), ('Cashion', 0, '34.03210', '-98.49940'), ('Electra', 3168, '34.03030', '-98.91850'), ('Haynesville', 0, '34.09170', '-98.91610'), ('Iowa Park', 6431, '33.95380', '-98.66900'), ('Kamay', 0, '33.85760', '-98.80830'), ('Pleasant Valley', 378, '33.93750', '-98.60100'), ('Sheppard AFB', 104197, '33.97350', '-98.50870'), ('Wichita Falls', 104197, '33.91120', '-98.49200')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ087': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Benjamin', 264, '33.58330', '-99.79300'), ('Gilliland', 0, '33.73140', '-99.68360'), ('Goree', 321, '33.46760', '-99.52350'), ('Knox City', 1219, '33.41750', '-99.81580'), ('Munday', 1527, '33.44890', '-99.62690'), ('Rhineland', 0, '33.53000', '-99.65000'), ('Truscott', 0, '33.75420', '-99.81160'), ('Vera', 0, '33.63270', '-99.56440')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ088': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bomarton', 0, '33.50650', '-99.42790'), ('Lake Kemp', 0, '33.76140', '-99.19570'), ('Mabelle', 0, '33.67320', '-99.13010'), ('Red Springs', 0, '33.61300', '-99.41200'), ('Seymour', 3185, '33.59270', '-99.26040'), ('Westover', 0, '33.49580', '-99.01100')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ089': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Archer City', 1848, '33.59350', '-98.62520'), ('Dundee', 0, '33.74110', '-98.90290'), ('Holliday', 1632, '33.81520', '-98.69450'), ('Lake Diversion', 0, '33.80490', '-98.95170'), ('Lake Kickapoo', 0, '33.64590', '-98.81300'), ('Lakeside City', 984, '33.82880', '-98.54560'), ('Mankins', 0, '33.78240', '-98.79750'), ('Megargel', 248, '33.45330', '-98.92920'), ('Scotland', 490, '33.65920', '-98.46970'), ('Windthorst', 367, '33.57550', '-98.43670')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ090': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bellevue', 386, '33.63420', '-98.01590'), ('Bluegrove', 0, '33.67420', '-98.22970'), ('Buffalo Springs', 0, '33.55640', '-98.13950'), ('Byers', 517, '34.06860', '-98.19070'), ('Charlie', 0, '34.09690', '-98.31710'), ('Dean', 341, '33.94620', '-98.35160'), ('Henrietta', 3264, '33.81680', '-98.19450'), ('Jolly', 188, '33.86750', '-98.34870'), ('Joy', 0, '33.57590', '-98.21590'), ('Lake Arrowhead', 0, '33.70900', '-98.37030'), ('Newport', 0, '33.47200', '-98.01540'), ('Petrolia', 782, '34.01300', '-98.23130'), ('Shannon', 0, '33.47000', '-98.27000'), ('Shannon', 0, '33.47390', '-98.25900'), ('Vashti', 0, '33.55580', '-98.04130')], 'partOfState': 'northern', 'wfo': 'OUN'}, +'TXZ091': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bowie', 5219, '33.55910', '-97.84480'), ('Nocona', 3198, '33.78350', '-97.73000'), ('St. Jo', 1048, '33.69520', '-97.52240')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ092': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Callisburg', 365, '33.69980', '-97.01640'), ('Gainesville', 15538, '33.63730', '-97.15060'), ('Lindsay', 394, '33.63620', '-97.21980'), ('Muenster', 1556, '33.65190', '-97.37670'), ('Valley View', 640, '33.48540', '-97.16080')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ093': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bells', 1190, '33.62000', '-96.41290'), ('Collinsville', 1235, '33.55970', '-96.91000'), ('Denison', 22773, '33.75590', '-96.56410'), ('Dorchester', 109, '33.53010', '-96.69190'), ('Gunter', 1230, '33.45080', '-96.74190'), ('Howe', 2478, '33.51280', '-96.61310'), ('Knollwood', 375, '33.68900', '-96.61850'), ('Luella', 581, '33.56930', '-96.54250'), ('Pottsboro', 1177, '33.77220', '-96.67160'), ('Sadler', 316, '33.68310', '-96.84570'), ('Sherman', 31601, '33.61830', '-96.60950'), ('Southmayd', 643, '33.62140', '-96.72010'), ('Tioga', 625, '33.47220', '-96.91720'), ('Tom Bean', 827, '33.52070', '-96.48370'), ('Van Alstyne', 2090, '33.41980', '-96.57350'), ('Whitesboro', 3209, '33.65950', '-96.90340'), ('Whitewright', 1713, '33.51110', '-96.39470')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ094': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bailey', 213, '33.43260', '-96.16450'), ('Bonham', 9990, '33.58930', '-96.18000'), ('Dodd City', 419, '33.57580', '-96.07470'), ('Ector', 600, '33.57900', '-96.27290'), ('Honey Grove', 1746, '33.58340', '-95.90990'), ('Ladonia', 667, '33.42780', '-95.94530'), ('Leonard', 1846, '33.38110', '-96.24650'), ('Savoy', 877, '33.59950', '-96.36920'), ('Trenton', 655, '33.42950', '-96.33990'), ('Windom', 269, '33.56440', '-95.99850')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ095': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Blossom', 1439, '33.66200', '-95.38220'), ('Deport', 718, '33.52910', '-95.31750'), ('Paris', 25898, '33.66660', '-95.54760'), ('Roxton', 639, '33.54550', '-95.72470'), ('Sun Valley', 60, '33.67250', '-95.42880'), ('Toco', 127, '33.65340', '-95.64910')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ096': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Annona', 282, '33.58100', '-94.91310'), ('Avery', 462, '33.55100', '-94.77980'), ('Bogata', 1396, '33.46920', '-95.21340'), ('Clarksville', 3883, '33.61050', '-95.05550'), ('Detroit', 776, '33.66080', '-95.26600')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ097': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('De Kalb', 1769, '33.50720', '-94.61650'), ('Hooks', 2973, '33.46930', '-94.28500'), ('Leary', 555, '33.47050', '-94.21210'), ('Maud', 1028, '33.33040', '-94.34470'), ('Nash', 2169, '33.44350', '-94.12940'), ('New Boston', 4808, '33.46030', '-94.41850'), ('Redwater', 824, '33.35820', '-94.25440'), ('Texarkana', 31656, '33.44100', '-94.07240'), ('Wake Village', 4757, '33.42330', '-94.11240')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ098': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Haskell', 3106, '33.15900', '-99.73180'), ('Irby', 3636, '33.17970', '-99.52220'), ("O'brien", 132, '33.38000', '-99.84330'), ('Rochester', 458, '33.31580', '-99.85560'), ('Rule', 698, '33.18440', '-99.89330'), ('Sagerton', 698, '33.07690', '-99.95530'), ('Weinert', 235, '33.32430', '-99.67290')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ099': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Elbert', 56, '33.26610', '-98.99360'), ('Throckmorton', 1036, '33.17860', '-99.17720'), ('Woodson', 296, '33.01440', '-99.05340')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ100': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Graham', 8716, '33.10070', '-98.57740'), ('Newcastle', 575, '33.19400', '-98.74400'), ('Olney', 3396, '33.36440', '-98.75810')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ101': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bryson', 528, '33.15970', '-98.38660'), ('Jacksboro', 4533, '33.22310', '-98.15410')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ102': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alvord', 1007, '33.35890', '-97.69500'), ('Aurora', 853, '33.05820', '-97.51590'), ('Boyd', 1099, '33.08050', '-97.56160'), ('Bridgeport', 4309, '33.20760', '-97.75720'), ('Chico', 947, '33.29420', '-97.79920'), ('Decatur', 5201, '33.23330', '-97.59140'), ('Lake Bridgeport', 372, '33.20710', '-97.83060'), ('Newark', 887, '32.99490', '-97.47080'), ('Rhome', 605, '33.05100', '-97.46730'), ('Runaway Bay', 700, '33.17490', '-97.86650')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ103': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Argyle', 2365, '33.11050', '-97.17990'), ('Aubrey', 1500, '33.30390', '-96.98310'), ('Bartonville', 1093, '33.08870', '-97.15640'), ('Carrollton', 109576, '32.98810', '-96.89670'), ('Copper Canyon', 1216, '33.09710', '-97.09670'), ('Corinth', 3944, '33.14380', '-97.06470'), ('Corral City', 89, '33.09930', '-97.22620'), ('Cross Roads', 361, '33.23060', '-96.99410'), ('Denton', 80537, '33.21420', '-97.13090'), ('Double Oak', 2179, '33.06410', '-97.11260'), ('Flower Mound', 50702, '33.02830', '-97.09270'), ('Hackberry', 544, '33.15000', '-96.91840'), ('Hebron', 874, '33.04230', '-96.89930'), ('Hickory Creek', 2078, '33.10930', '-97.02820'), ('Highland Village', 12173, '33.08810', '-97.05560'), ('Justin', 1891, '33.08660', '-97.29990'), ('Krugerville', 903, '33.28070', '-96.99060'), ('Krum', 1979, '33.26560', '-97.22960'), ('Lake Dallas', 6166, '33.12650', '-97.02470'), ('Lakewood Village', 342, '33.14040', '-96.97650'), ('Lewisville', 77737, '33.04170', '-96.98290'), ('Lincoln Park', 287, '33.22260', '-96.97240'), ('Little Elm', 3646, '33.16380', '-96.93000'), ('Marshall Creek', 431, '33.01760', '-97.20830'), ('Northlake', 921, '33.07400', '-97.25730'), ('Oak Point', 1747, '33.18220', '-96.99490'), ('Pilot Point', 2538, '33.39850', '-96.95510'), ('Ponder', 432, '33.17910', '-97.28760'), ('Roanoke', 1616, '33.00210', '-97.23230'), ('Sanger', 3508, '33.36070', '-97.17680'), ('Shady Shores', 1045, '33.16270', '-97.04430'), ('The Colony', 22113, '33.09090', '-96.88710'), ('Trophy Club', 3922, '33.00040', '-97.19290')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ104': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Allen', 43554, '33.10970', '-96.66950'), ('Anna', 1225, '33.35280', '-96.54980'), ('Blue Ridge', 672, '33.29840', '-96.39990'), ('Celina', 1861, '33.32000', '-96.78380'), ('Fairview', 1554, '33.14220', '-96.62490'), ('Farmersville', 3118, '33.16160', '-96.35760'), ('Frisco', 33714, '33.14450', '-96.81300'), ('Josephine', 594, '33.06160', '-96.31630'), ('Lavon', 387, '33.02670', '-96.43820'), ('Lowry Crossing', 1229, '33.16790', '-96.54450'), ('Lucas', 2890, '33.10140', '-96.57770'), ('McKinney', 54369, '33.20090', '-96.65490'), ('Melissa', 1350, '33.28260', '-96.57720'), ('Murphy', 3099, '33.01280', '-96.60740'), ('Nevada', 563, '33.03910', '-96.37170'), ('New Hope', 523, '33.21240', '-96.56460'), ('Parker', 1379, '33.05400', '-96.63640'), ('Plano', 128713, '33.04620', '-96.74670'), ('Princeton', 2321, '33.18510', '-96.50410'), ('Prosper', 1018, '33.24020', '-96.78590'), ('St. Paul', 415, '33.04620', '-96.54860'), ('Westminster', 388, '33.35890', '-96.45790'), ('Weston', 362, '33.32820', '-96.64410'), ('Wylie', 8716, '33.04260', '-96.51390')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ105': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caddo Mills', 1149, '33.06570', '-96.22690'), ('Campbell', 734, '33.14790', '-95.95500'), ('Celeste', 817, '33.29420', '-96.19410'), ('Commerce', 7669, '33.23820', '-95.90080'), ('Greenville', 23960, '33.11690', '-96.10120'), ('Lone Oak', 521, '32.99630', '-95.94150'), ('Neylandville', 56, '33.19960', '-96.00400'), ('Quinlan', 1360, '32.90870', '-96.13250'), ('West Tawakoni', 932, '32.90180', '-96.02090'), ('Wolfe City', 1505, '33.36980', '-96.06770')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ106': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cooper', 2153, '33.37180', '-95.69050'), ('Pecan Gap', 214, '33.43660', '-95.85160')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ107': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Como', 621, '33.06050', '-95.47510'), ('Cumby', 616, '33.13300', '-95.83880'), ('Sulphur Springs', 14062, '33.14390', '-95.61010'), ('Tira', 237, '33.32620', '-95.56230')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ108': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Mount Vernon', 2286, '33.17270', '-95.22180')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ109': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [("Miller's Cove", 120, '33.15570', '-95.11560'), ('Mount Pleasant', 12291, '33.16550', '-94.97580'), ('Talco', 592, '33.36200', '-95.10390'), ('Winfield', 345, '33.16650', '-95.10930')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ110': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Pittsburg', 4007, '32.99690', '-94.96560'), ('Rocky Mound', 53, '33.02850', '-95.03170')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ111': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Daingerfield', 2517, '33.03060', '-94.72420'), ('Lone Star', 1615, '32.93740', '-94.70850'), ('Naples', 1410, '33.20360', '-94.67770'), ('Omaha', 999, '33.17960', '-94.74220')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ112': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Atlanta', 5745, '33.11640', '-94.16430'), ('Avinger', 464, '32.89820', '-94.55430'), ('Bloomburg', 375, '33.13750', '-94.05870'), ('Domino', 52, '33.25140', '-94.11470'), ('Douglassville', 175, '33.19180', '-94.35140'), ('Hughes Springs', 1856, '32.99880', '-94.63020'), ('Linden', 2256, '33.01100', '-94.36210'), ('Marietta', 112, '33.17380', '-94.54180'), ('Queen City', 1748, '33.14970', '-94.15130')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ113': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anson', 2556, '32.75640', '-99.89580'), ('Avoca', 300, '32.86560', '-99.71560'), ('Funston', 2556, '32.75140', '-99.79970'), ('Hamlin', 2248, '32.88470', '-100.12610'), ('Hawley', 646, '32.61190', '-99.81390'), ('Hodges', 646, '32.58920', '-99.86860'), ('Lueders', 300, '32.79950', '-99.62330'), ('Neinda', 2248, '32.79670', '-100.09250'), ('Noodle', 318, '32.60220', '-100.05170'), ('Nugent', 300, '32.69390', '-99.66720'), ('Stamford', 3636, '32.94280', '-99.80390'), ('Stith', 2637, '32.54640', '-99.94390'), ('Truby', 2556, '32.64530', '-99.92500'), ('Tuxedo', 2556, '32.93280', '-99.95140')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ114': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Albany', 1921, '32.72670', '-99.29560'), ('Fort Griffin', 296, '32.92890', '-99.23280'), ('Ibex', 233, '32.67890', '-99.11890'), ('Moran', 233, '32.54680', '-99.16560')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ115': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Breckenridge', 5868, '32.75670', '-98.91250')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ116': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Gordon', 465, '32.54580', '-98.36580'), ('Graford', 578, '32.93670', '-98.24750'), ('Mineral Wells', 16946, '32.82030', '-98.07830'), ('Mingus', 246, '32.53680', '-98.42390'), ('Strawn', 709, '32.55080', '-98.49780')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ117': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aledo', 1726, '32.69600', '-97.60380'), ('Annetta', 1108, '32.69550', '-97.65770'), ('Annetta North', 467, '32.71990', '-97.67360'), ('Annetta South', 555, '32.66930', '-97.64700'), ('Briar', 5350, '32.99210', '-97.55460'), ('Cool', 162, '32.79830', '-98.01250'), ('Hudson Oaks', 1637, '32.74730', '-97.70110'), ('Millsap', 353, '32.75000', '-98.00860'), ('Reno', 2322, '32.94090', '-97.58300'), ('Sanctuary', 234, '32.90870', '-97.58390'), ('Springtown', 1740, '32.96930', '-97.68100'), ('Weatherford', 14804, '32.75570', '-97.77130'), ('Willow Park', 2328, '32.75580', '-97.65130')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ118': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arlington', 332969, '32.69450', '-97.12750'), ('Azle', 9600, '32.89520', '-97.53110'), ('Bedford', 47152, '32.84610', '-97.13440'), ('Benbrook', 20208, '32.67840', '-97.46120'), ('Blue Mound', 2388, '32.85380', '-97.33720'), ('Colleyville', 19636, '32.89250', '-97.14710'), ('Crowley', 7467, '32.57730', '-97.35810'), ('Dalworthington Gar', 2186, '32.69370', '-97.15870'), ('Eagle Mountain', 5847, '32.89340', '-97.44430'), ('Edgecliff', 2550, '32.65520', '-97.34130'), ('Euless', 46005, '32.84910', '-97.07730'), ('Everman', 5836, '32.63020', '-97.28260'), ('Forest Hill', 11482, '32.66150', '-97.26530'), ('Fort Worth', 534694, '32.75390', '-97.33620'), ('Grapevine', 42059, '32.93350', '-97.07170'), ('Haltom City', 39018, '32.81760', '-97.27070'), ('Haslet', 1134, '32.95820', '-97.33970'), ('Hurst', 36273, '32.83550', '-97.17990'), ('Keller', 27345, '32.93010', '-97.22610'), ('Kennedale', 5850, '32.64750', '-97.21910'), ('Lakeside', 1040, '32.82160', '-97.48930'), ('Lake Worth', 4618, '32.81370', '-97.43290'), ('Mansfield', 28031, '32.56710', '-97.11740'), ('North Richland Hills', 55635, '32.86010', '-97.21910'), ('Pantego', 2318, '32.71510', '-97.15460'), ('Pecan Acres', 1587, '32.97000', '-97.47440'), ('Pelican Bay', 1505, '32.92330', '-97.51920'), ('Rendon', 7658, '32.58000', '-97.23650'), ('Richland Hills', 7978, '32.81000', '-97.22610'), ('River Oaks', 6580, '32.77570', '-97.39790'), ('Saginaw', 8551, '32.86520', '-97.36530'), ('Sansom Park', 3928, '32.80260', '-97.40170'), ('Southlake', 7065, '32.95320', '-97.14830'), ('Watauga', 20009, '32.87150', '-97.25090'), ('Westlake', 185, '32.98500', '-97.19800'), ('Westover Hills', 672, '32.74530', '-97.41150'), ('Westworth', 2350, '32.76000', '-97.42220'), ('White Settlement', 15472, '32.75480', '-97.46020')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ119': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Addison', 14166, '32.96120', '-96.83720'), ('Balch Springs', 19375, '32.71880', '-96.61620'), ('Buckingham', 66, '32.93410', '-96.72500'), ('Cedar Hill', 32093, '32.58030', '-96.95760'), ('Cockrell Hill', 4443, '32.73860', '-96.88890'), ('Coppell', 35958, '32.96290', '-96.99050'), ('Dallas', 1188580, '32.79420', '-96.76520'), ('Desoto', 37646, '32.59920', '-96.86250'), ('Duncanville', 36081, '32.64590', '-96.91350'), ('Farmers Branch', 27508, '32.92680', '-96.87890'), ('Garland', 180650, '32.91080', '-96.62930'), ('Glenn Heights', 7224, '32.55100', '-96.85390'), ('Grand Prairie', 127427, '32.69220', '-97.01670'), ('Highland Park', 8842, '32.83150', '-96.80080'), ('Hutchins', 2805, '32.64370', '-96.70730'), ('Irving', 191615, '32.85770', '-96.96930'), ('Lancaster', 25894, '32.59560', '-96.78100'), ('Mesquite', 124523, '32.76900', '-96.59980'), ('Richardson', 74840, '32.97280', '-96.70980'), ('Rowlett', 23260, '32.90810', '-96.55000'), ('Sachse', 5346, '32.97460', '-96.58080'), ('Seagoville', 8969, '32.65670', '-96.54650'), ('Sunnyvale', 2228, '32.79930', '-96.55830'), ('University Park', 22259, '32.85010', '-96.79310'), ('Wilmer', 2479, '32.59880', '-96.68420')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ120': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fate', 497, '32.94080', '-96.38630'), ('Heath', 4149, '32.84780', '-96.47800'), ('McLendon-Chisholm', 914, '32.84590', '-96.38990'), ('Rockwall', 10486, '32.92200', '-96.45750'), ('Royse City', 2206, '32.97530', '-96.33290')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ121': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Combine', 1788, '32.58820', '-96.51490'), ('Cottonwood', 156, '32.45690', '-96.39150'), ('Crandall', 2774, '32.63070', '-96.45370'), ('Forney', 5588, '32.75270', '-96.46610'), ('Grays Prairie', 296, '32.47250', '-96.35000'), ('Kaufman', 6490, '32.58180', '-96.30820'), ('Kemp', 1133, '32.43660', '-96.22370'), ('Lawrence', 231, '32.74120', '-96.34690'), ('Mabank', 2151, '32.36550', '-96.10400'), ('Oak Grove', 557, '32.52880', '-96.31560'), ('Oak Ridge', 224, '32.65760', '-96.26400'), ('Post Oak Bend City', 264, '32.63210', '-96.31330'), ('Rosser', 366, '32.46270', '-96.44220'), ('Terrell', 12490, '32.73280', '-96.29190')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ122': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Canton', 3292, '32.54750', '-95.86390'), ('Edgewood', 1348, '32.69480', '-95.88210'), ('Edom', 322, '32.37300', '-95.61110'), ('Fruitvale', 418, '32.68390', '-95.80360'), ('Grand Saline', 3028, '32.67750', '-95.71120'), ('Van', 1854, '32.52370', '-95.63730'), ('Wills Point', 2986, '32.70940', '-96.00620')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ123': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('East Tawakoni', 775, '32.89770', '-95.93360'), ('Emory', 1021, '32.87570', '-95.76880'), ('Point', 645, '32.93010', '-95.87010')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ124': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alba', 430, '32.79140', '-95.63520'), ('Hawkins', 1331, '32.59080', '-95.20250'), ('Mineola', 4550, '32.66590', '-95.48890'), ('Quitman', 1684, '32.79590', '-95.44430'), ('Winnsboro', 2904, '32.95620', '-95.28980'), ('Yantis', 210, '32.93190', '-95.57500')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ125': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Big Sandy', 1288, '32.58570', '-95.11260'), ('East Mountain', 580, '32.59390', '-94.85520'), ('Gilmer', 4799, '32.73020', '-94.94570'), ('Ore City', 1106, '32.80150', '-94.71690'), ('Union Grove', 271, '32.58310', '-94.90850')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ126': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Jefferson', 2024, '32.76090', '-94.34910')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ127': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Abilene', 115930, '32.44860', '-99.73280'), ('Bradshaw', 2880, '32.09830', '-99.89750'), ('Buffalo Gap', 463, '32.28220', '-99.83130'), ('Dyess AFB', 1158, '32.42250', '-99.86170'), ('Hamby', 39, '32.51860', '-99.63080'), ('Happy Valley', 360, '32.13250', '-100.10890'), ('Impact', 39, '32.49880', '-99.74630'), ('Lawn', 353, '32.13470', '-99.74940'), ('Merkel', 2637, '32.46830', '-100.01280'), ('Ovalo', 714, '32.17280', '-99.80750'), ('Potosi', 1664, '32.33560', '-99.68420'), ('Trent', 318, '32.48580', '-100.12500'), ('Tuscola', 714, '32.21070', '-99.79890'), ('Tye', 1158, '32.45320', '-99.86940'), ('View', 463, '32.34280', '-99.88440')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ128': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Admiral', 88, '32.29640', '-99.29750'), ('Atwell', 88, '32.26110', '-99.13390'), ('Baird', 1623, '32.39580', '-99.39550'), ('Clyde', 3345, '32.40240', '-99.49820'), ('Cross Plains', 1068, '32.12660', '-99.16530'), ('Dudley', 1664, '32.25810', '-99.60470'), ('Eula', 3345, '32.34220', '-99.56140'), ('Oplin', 142, '32.13780', '-99.56190'), ('Putnam', 88, '32.37080', '-99.19220')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ129': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carbon', 224, '32.26860', '-98.82670'), ('Cisco', 3851, '32.38500', '-98.98000'), ('Eastland', 3769, '32.40120', '-98.81910'), ('Gorman', 1236, '32.21400', '-98.67180'), ('Ranger', 2803, '32.47010', '-98.67430'), ('Rising Star', 835, '32.09730', '-98.96570')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ130': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dublin', 3754, '32.08660', '-98.33890'), ('Stephenville', 13502, '32.21910', '-98.21530')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ131': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Granbury', 5718, '32.44020', '-97.78770'), ('Lipan', 425, '32.51890', '-98.04670'), ('Oak Trail Shores', 2475, '32.48860', '-97.83390'), ('Tolar', 523, '32.39000', '-97.91680')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ132': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Glen Rose', 2122, '32.23630', '-97.75460')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ133': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alvarado', 3288, '32.41000', '-97.21140'), ('Briaroaks', 493, '32.49230', '-97.30190'), ('Burleson', 20976, '32.53310', '-97.32900'), ('Cleburne', 26005, '32.34930', '-97.40630'), ('Godley', 879, '32.44950', '-97.52660'), ('Grandview', 1358, '32.26800', '-97.17720'), ('Joshua', 4528, '32.46220', '-97.38040'), ('Keene', 5003, '32.39330', '-97.33020'), ('Rio Vista', 541, '32.23570', '-97.37550'), ('Venus', 977, '32.42750', '-97.10460')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ134': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alma', 302, '32.28540', '-96.54470'), ('Bardwell', 583, '32.26720', '-96.69520'), ('Ennis', 16045, '32.33800', '-96.62910'), ('Ferris', 2175, '32.53510', '-96.66390'), ('Garrett', 448, '32.36080', '-96.65180'), ('Italy', 1993, '32.18140', '-96.88390'), ('Maypearl', 746, '32.31560', '-97.00660'), ('Midlothian', 7480, '32.49400', '-96.99770'), ('Milford', 685, '32.12220', '-96.94940'), ('Oak Leaf', 1209, '32.52090', '-96.84990'), ('Ovilla', 3405, '32.53970', '-96.89270'), ('Palmer', 1774, '32.42730', '-96.67240'), ('Pecan Hill', 672, '32.49690', '-96.77510'), ('Red Oak', 3124, '32.51790', '-96.80880'), ('Waxahachie', 18168, '32.40720', '-96.85200')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ135': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Athens', 11297, '32.20480', '-95.85540'), ('Berryville', 891, '32.08740', '-95.46500'), ('Brownsboro', 796, '32.29730', '-95.61470'), ('Caney City', 236, '32.20870', '-96.03940'), ('Chandler', 2099, '32.30580', '-95.47890'), ('Coffee City', 193, '32.12990', '-95.47820'), ('Enchanted Oaks', 357, '32.26630', '-96.10770'), ('Eustace', 798, '32.30590', '-96.01210'), ('Gun Barrel City', 5145, '32.32740', '-96.13640'), ('Log Cabin', 733, '32.22330', '-96.02220'), ('Malakoff', 2257, '32.17310', '-96.01240'), ('Moore Station', 184, '32.19080', '-95.57240'), ('Murchison', 592, '32.27490', '-95.75810'), ('Payne Springs', 683, '32.28090', '-96.08950'), ('Poynor', 237, '32.07600', '-95.59490'), ('Seven Points', 723, '32.32560', '-96.21480'), ('Star Harbor', 368, '32.19380', '-96.05570'), ('Tool', 1712, '32.28030', '-96.17240'), ('Trinidad', 1056, '32.14850', '-96.09970')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ136': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arp', 901, '32.22770', '-95.05630'), ('Bullard', 1150, '32.14110', '-95.31910'), ('Lindale', 2954, '32.50540', '-95.40600'), ('New Chapel Hill', 553, '32.30340', '-95.16900'), ('Noonday', 515, '32.24390', '-95.39760'), ('Troup', 1659, '32.14460', '-95.12310'), ('Tyler', 75450, '32.32840', '-95.30360'), ('Whitehouse', 4032, '32.22600', '-95.21960'), ('Winona', 457, '32.49070', '-95.17090')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ137': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clarksville City', 806, '32.53510', '-94.89550'), ('Easton', 524, '32.38290', '-94.59340'), ('Gladewater', 6027, '32.54300', '-94.94510'), ('Kilgore', 11066, '32.38720', '-94.86830'), ('Lakeport', 861, '32.40200', '-94.71150'), ('Liberty City', 1935, '32.45010', '-94.94460'), ('Longview', 73344, '32.51770', '-94.76230'), ('Rolling Meadows', 291, '32.41260', '-94.80760'), ('Warren City', 250, '32.55340', '-94.90220'), ('White Oak', 5136, '32.53210', '-94.85500')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ138': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Hallsville', 2772, '32.50340', '-94.57610'), ('Marshall', 23935, '32.53600', '-94.35080'), ('Nesbitt', 327, '32.58930', '-94.44530'), ('Scottsville', 283, '32.53590', '-94.24140'), ('Uncertain', 194, '32.70860', '-94.12250'), ('Waskom', 1812, '32.47790', '-94.06480')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ139': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Burkett', 1068, '31.99580', '-99.22530'), ('Coleman', 5127, '31.82720', '-99.42610'), ('Echo', 5127, '31.92810', '-99.31750'), ('Fisk', 5127, '31.67080', '-99.48890'), ('Glen Cove', 142, '31.86580', '-99.63720'), ('Goldsboro', 142, '32.06000', '-99.68080'), ('Gouldbusk', 1081, '31.55470', '-99.47640'), ('Leaday', 320, '31.56780', '-99.67280'), ('Mozelle', 1081, '31.59890', '-99.49250'), ('Novice', 142, '31.98940', '-99.62330'), ('Rockwood', 1081, '31.50080', '-99.37310'), ('Santa Anna', 1081, '31.74190', '-99.32140'), ('Shields', 1081, '31.59310', '-99.42390'), ('Silver Valley', 142, '31.95640', '-99.54580'), ('Talpa', 142, '31.77640', '-99.70920'), ('Trickham', 1620, '31.58750', '-99.23030'), ('Valera', 5127, '31.75280', '-99.54690'), ('Voss', 5127, '31.62080', '-99.56140'), ('Whon', 1081, '31.49030', '-99.30580')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ140': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bangs', 1620, '31.71450', '-99.13050'), ('Blanket', 402, '31.82390', '-98.78670'), ('Brookesmith', 1620, '31.55030', '-99.11830'), ('Brownwood', 18813, '31.70920', '-98.99080'), ('Cross Cut', 1068, '32.03360', '-99.13220'), ('Early', 2588, '31.74190', '-98.94530'), ('Indian Creek', 18813, '31.52310', '-98.97970'), ('Lake Brownwood', 1694, '31.81600', '-99.10290'), ('May', 835, '31.97940', '-98.91970'), ('Owens', 2588, '31.84780', '-98.92560'), ('Thrifty', 1694, '31.81080', '-99.13170'), ('Winchell', 1620, '31.47190', '-99.16060'), ('Zephyr', 402, '31.67580', '-98.79440')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ141': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Comanche', 4482, '31.89970', '-98.60420'), ('De Leon', 2433, '32.11170', '-98.53670'), ('Gustine', 457, '31.84530', '-98.40210')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ142': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Goldthwaite', 1802, '31.45390', '-98.57100'), ('Mullin', 175, '31.55470', '-98.66500')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ143': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Hamilton', 2977, '31.70500', '-98.12120'), ('Hico', 1341, '31.98340', '-98.02850')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ144': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clifton', 3195, '31.78130', '-97.58010'), ('Cranfills Gap', 335, '31.77620', '-97.82980'), ('Iredell', 360, '31.98620', '-97.87110'), ('Meridian', 1491, '31.92400', '-97.64720'), ('Morgan', 485, '32.01570', '-97.60570'), ('Valley Mills', 1085, '31.65840', '-97.47180'), ('Walnut Springs', 716, '32.05700', '-97.75150')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ145': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Abbott', 300, '31.88370', '-97.07740'), ('Aquilla', 136, '31.85520', '-97.22160'), ('Blum', 399, '32.14180', '-97.39680'), ('Bynum', 225, '31.96890', '-97.00300'), ("Carl's Corner", 134, '32.08530', '-97.04490'), ('Covington', 282, '32.17740', '-97.25890'), ('Hillsboro', 8232, '32.00740', '-97.11560'), ('Hubbard', 1586, '31.84590', '-96.80050'), ('Itasca', 1503, '32.15840', '-97.14760'), ('Malone', 278, '31.91660', '-96.89490'), ('Mertens', 146, '32.05890', '-96.89340'), ('Mount Calm', 310, '31.75690', '-96.88080'), ('Penelope', 211, '31.85840', '-96.92910'), ('Whitney', 1626, '31.94980', '-97.32040')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ146': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Angus', 334, '31.99770', '-96.42570'), ('Barry', 209, '32.09870', '-96.63790'), ('Blooming Grove', 833, '32.09190', '-96.71680'), ('Corsicana', 24485, '32.08420', '-96.46500'), ('Dawson', 852, '31.89380', '-96.71400'), ('Emhouse', 159, '32.16060', '-96.57760'), ('Eureka', 242, '32.00970', '-96.28590'), ('Frost', 648, '32.07810', '-96.80800'), ('Goodlow', 264, '32.11260', '-96.21640'), ('Kerens', 1681, '32.13100', '-96.22520'), ('Mildred', 405, '32.03690', '-96.34480'), ('Mustang', 35, '32.01250', '-96.43090'), ('Navarro', 191, '32.00030', '-96.38190'), ('Oak Valley', 401, '32.03040', '-96.51100'), ('Powell', 101, '32.11650', '-96.32870'), ('Retreat', 334, '32.05130', '-96.47710'), ('Rice', 564, '32.24470', '-96.50130'), ('Richland', 244, '31.92500', '-96.42580')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ147': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fairfield', 3094, '31.71880', '-96.16550'), ('Kirvin', 122, '31.76680', '-96.32980'), ('Streetman', 260, '31.87590', '-96.32390'), ('Teague', 3268, '31.63040', '-96.28160'), ('Wortham', 1020, '31.79000', '-96.46080')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ148': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Elkhart', 1215, '31.62830', '-95.57840'), ('Frankston', 1209, '32.05510', '-95.50360'), ('Palestine', 18042, '31.75650', '-95.64650')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ149': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alto', 1190, '31.65040', '-95.07090'), ('Cuney', 145, '32.03820', '-95.41540'), ('Gallatin', 378, '31.89510', '-95.15250'), ('Jacksonville', 13868, '31.96530', '-95.26000'), ('New Summerfield', 998, '31.98520', '-95.10480'), ('Rusk', 4366, '31.79760', '-95.14850'), ('Wells', 761, '31.49180', '-94.94670')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ150': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Henderson', 11273, '32.15700', '-94.79720'), ('Mount Enterprise', 501, '31.91010', '-94.68190'), ('New London', 987, '32.26920', '-94.93130'), ('Overton', 2350, '32.27560', '-94.97230'), ('Reklaw', 266, '31.86460', '-94.98410'), ('Tatum', 1289, '32.31470', '-94.51870')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ151': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Beckville', 752, '32.24280', '-94.45590'), ('Carthage', 6664, '32.15180', '-94.33690'), ('Gary City', 300, '32.02790', '-94.36830')], 'partOfState': 'northeast', 'wfo': 'SHV'}, +'TXZ152': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Appleby', 444, '31.71780', '-94.60750'), ('Chireno', 405, '31.49880', '-94.34540'), ('Cushing', 637, '31.81330', '-94.84010'), ('Garrison', 844, '31.82420', '-94.49250'), ('Nacogdoches', 29914, '31.61500', '-94.65190')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXZ153': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Center', 5678, '31.79350', '-94.17830'), ('Huxley', 298, '31.76220', '-93.88740'), ('Joaquin', 925, '31.96680', '-94.05050'), ('Tenaha', 1072, '31.94370', '-94.24460'), ('Timpson', 1029, '31.90620', '-94.39640')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXZ154': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brady', 5523, '31.13500', '-99.33470'), ('Doole', 155, '31.39560', '-99.59860'), ('Fife', 5523, '31.39030', '-99.38420'), ('Lohn', 5523, '31.32360', '-99.40970'), ('Melvin', 155, '31.19830', '-99.58090'), ('Mercury', 350, '31.41220', '-99.15720'), ('Milburn', 350, '31.43750', '-99.10940'), ('Pear Valley', 155, '31.31000', '-99.49360'), ('Placid', 350, '31.32530', '-99.18420'), ('Rochelle', 5523, '31.22440', '-99.21080'), ('Salt Gap', 155, '31.30360', '-99.59890'), ('Stacy', 155, '31.47690', '-99.59750'), ('Voca', 5523, '31.01080', '-99.18420'), ('Waldrip', 155, '31.44250', '-99.42280')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ155': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Algerita', 350, '31.22780', '-98.85280'), ('Chappel', 2637, '31.05560', '-98.57060'), ('Cherokee', 2637, '30.98220', '-98.70720'), ('Elm Grove', 350, '31.42750', '-99.05560'), ('Hall', 350, '31.28500', '-99.05140'), ('Harkeyville', 2637, '31.21060', '-98.78530'), ('Locker', 350, '31.37720', '-98.89670'), ('Richland Springs', 350, '31.26940', '-98.94470'), ('San Saba', 2637, '31.19560', '-98.71780'), ('Skeeterville', 350, '31.35390', '-98.96250'), ('Spring Creek', 350, '31.35310', '-98.82170')], 'partOfState': 'north central', 'wfo': 'SJT'}, +'TXZ156': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Lampasas', 6786, '31.06340', '-98.18090'), ('Lometa', 782, '31.21610', '-98.39280')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ157': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Copperas Cove', 29592, '31.11870', '-97.90180'), ('Evant', 393, '31.47580', '-98.14960'), ('Fort Gates', 818, '31.40330', '-97.70960'), ('Gatesville', 15591, '31.44030', '-97.73400'), ('Oglesby', 458, '31.41890', '-97.50990'), ('South Mountain', 301, '31.43830', '-97.67630')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ158': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Belton', 14623, '31.06810', '-97.46370'), ('Fort Hood', 35580, '31.13380', '-97.77410'), ('Harker Heights', 17308, '31.06120', '-97.65410'), ('Holland', 1102, '30.88380', '-97.40350'), ('Killeen', 86911, '31.09830', '-97.71720'), ('Little River-Academy', 1645, '30.99130', '-97.35190'), ("Morgan's Point Resort", 2989, '31.15560', '-97.45420'), ('Nolanville', 2150, '31.07820', '-97.61010'), ('Rogers', 1131, '30.93220', '-97.22850'), ('Salado', 1216, '30.95080', '-97.52470'), ('Temple', 46109, '31.09770', '-97.36350'), ('Troy', 1395, '31.19560', '-97.30680')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ159': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bellmead', 9214, '31.60050', '-97.09140'), ('Beverly Hills', 2113, '31.52180', '-97.15600'), ('Bruceville-Eddy', 1490, '31.30580', '-97.24850'), ('Crawford', 705, '31.53380', '-97.44010'), ('Gholson', 922, '31.71170', '-97.23680'), ('Hallsburg', 518, '31.54580', '-96.94680'), ('Hewitt', 11085, '31.45110', '-97.19360'), ('Lacy-Lakeview', 5764, '31.61990', '-97.10760'), ('Leroy', 335, '31.73160', '-97.02000'), ('Lorena', 1433, '31.38230', '-97.21270'), ('Mart', 2273, '31.54140', '-96.83000'), ('McGregor', 4727, '31.45400', '-97.37730'), ('Moody', 1400, '31.30840', '-97.36020'), ('Northcrest', 1785, '31.63940', '-97.09740'), ('Riesel', 839, '31.47390', '-96.93080'), ('Robinson', 7111, '31.44960', '-97.12440'), ('Ross', 188, '31.72840', '-97.11120'), ('Waco', 103590, '31.56900', '-97.18320'), ('West', 2515, '31.80320', '-97.09280'), ('Woodway', 8695, '31.49660', '-97.23210')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ160': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Golinda', 423, '31.37040', '-97.08110'), ('Lott', 724, '31.20600', '-97.03340'), ('Marlin', 6628, '31.30900', '-96.89300'), ('Rosebud', 1638, '31.07500', '-96.97530')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ161': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Coolidge', 848, '31.75120', '-96.65200'), ('Groesbeck', 4291, '31.52450', '-96.53110'), ('Kosse', 497, '31.30690', '-96.62870'), ('Mexia', 6563, '31.67970', '-96.48070'), ('Tehuacana', 322, '31.74420', '-96.54400'), ('Thornton', 540, '31.41170', '-96.57460')], 'partOfState': 'north central', 'wfo': 'FWD'}, +'TXZ162': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buffalo', 1804, '31.46120', '-96.06280'), ('Centerville', 903, '31.25830', '-95.97680'), ('Jewett', 861, '31.36160', '-96.14580'), ('Leona', 181, '31.15460', '-95.97550'), ('Marquez', 220, '31.23690', '-96.25680'), ('Normangee', 719, '31.03000', '-96.11550'), ('Oakwood', 471, '31.58440', '-95.84890')], 'partOfState': 'northeast', 'wfo': 'FWD'}, +'TXZ163': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Crockett', 7141, '31.31790', '-95.45630'), ('Grapeland', 1451, '31.49130', '-95.48180'), ('Kennard', 317, '31.35820', '-95.18490'), ('Latexo', 272, '31.38910', '-95.47450'), ('Lovelady', 608, '31.12600', '-95.44530')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ164': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Groveton', 1107, '31.05730', '-95.12710'), ('Trinity', 2648, '30.94420', '-95.37330')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ165': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Burke', 315, '31.22830', '-94.76920'), ('Diboll', 5470, '31.18860', '-94.78350'), ('Hudson', 3792, '31.33010', '-94.79720'), ('Huntington', 2068, '31.27980', '-94.57750'), ('Lufkin', 32709, '31.33350', '-94.72610'), ('Zavalla', 701, '31.15690', '-94.41740')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXZ166': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Broaddus', 189, '31.30540', '-94.26930'), ('San Augustine', 2337, '31.52990', '-94.11100')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXZ167': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bronson', 287, '31.34550', '-94.00890'), ('Hemphill', 1106, '31.34180', '-93.85130'), ('Pineland', 882, '31.24640', '-93.97170')], 'partOfState': 'eastern', 'wfo': 'SHV'}, +'TXZ168': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Erna', 2134, '30.75060', '-99.48560'), ('Fort Mckavett', 1653, '30.82690', '-100.10640'), ('Hext', 1653, '30.86890', '-99.52830'), ('Menard', 1653, '30.91750', '-99.78610')], 'partOfState': 'south central', 'wfo': 'SJT'}, +'TXZ169': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cleo', 2618, '30.60360', '-99.87470'), ('Junction', 2618, '30.48960', '-99.77100'), ('London', 2618, '30.67670', '-99.57610'), ('Roosevelt', 2618, '30.49080', '-100.05470'), ('Segovia', 2618, '30.41920', '-99.67000'), ('Telegraph', 2618, '30.32720', '-99.90580')], 'partOfState': 'south central', 'wfo': 'SJT'}, +'TXZ170': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fredonia', 2134, '30.93190', '-99.11310'), ('Katemcy', 2134, '30.91250', '-99.25360'), ('Koockville', 2134, '30.75690', '-99.24970'), ('Loyal Valley', 2134, '30.57560', '-99.00750'), ('Mason', 2134, '30.74860', '-99.23030'), ('Pontotoc', 2134, '30.90920', '-98.97970'), ('Streeter', 2134, '30.76470', '-99.37610')], 'partOfState': 'south central', 'wfo': 'SJT'}, +'TXZ171': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buchanan Dam', 1688, '30.79910', '-98.43830'), ('Castell', 4584, '30.70000', '-98.50000'), ('Enchanted Rock Station', 8911, '30.51000', '-98.85000'), ('Horseshoe Bay', 3337, '30.53710', '-98.35480'), ('Kingsland', 4584, '30.66470', '-98.45350'), ('Llano', 3325, '30.75130', '-98.67390'), ('Sunrise Beach Village', 497, '30.58830', '-98.41880'), ('Tow', 1688, '30.88330', '-98.46670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ172': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bertram', 1122, '30.74420', '-98.05740'), ('Briggs', 1054, '30.86660', '-97.91660'), ('Burnet', 4735, '30.76110', '-98.22980'), ('Cottonwood Shores', 877, '30.55580', '-98.32550'), ('Granite Shoals', 2040, '30.58870', '-98.38380'), ('Inks Lake State Park', 4584, '30.72000', '-98.38000'), ('Marble Falls', 4959, '30.57970', '-98.27210'), ('Meadowlakes', 1293, '30.56320', '-98.29520'), ('Spicewood', 4959, '30.48330', '-98.16660')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ173': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anderson Mill', 8953, '30.45480', '-97.80550'), ('Andice', 1054, '30.78330', '-97.85000'), ('Bartlett', 1675, '30.79470', '-97.43190'), ('Brushy Creek', 15371, '30.51330', '-97.73940'), ('Cedar Park', 26049, '30.51460', '-97.83080'), ('Coupland', 13575, '30.46670', '-97.38330'), ('Florence', 1054, '30.83970', '-97.79260'), ('Georgetown', 28339, '30.64760', '-97.68630'), ('Georgetown Dam', 28339, '30.66000', '-97.71000'), ('Granger', 1299, '30.71790', '-97.44070'), ('Granger Dam', 1299, '30.70000', '-97.33000'), ('Hutto', 1250, '30.54580', '-97.54210'), ('Jarrell', 591, '30.81670', '-97.60000'), ('Jollyville', 15813, '30.44950', '-97.75100'), ('Leander', 7596, '30.56240', '-97.86050'), ('Liberty Hill', 1409, '30.66670', '-97.91670'), ('Round Rock', 30923, '30.51750', '-97.67210'), ('Serenada', 3242, '30.69910', '-97.69150'), ('Taylor', 13575, '30.57180', '-97.41000'), ('Thrall', 550, '30.58840', '-97.29840'), ('Weir', 591, '30.67330', '-97.59120')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ174': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buckholts', 387, '30.87260', '-97.12750'), ('Cameron', 5634, '30.85810', '-96.97700'), ('Milano', 400, '30.70680', '-96.85990'), ('Rockdale', 5235, '30.65530', '-97.00770'), ('Thorndale', 1092, '30.61430', '-97.20500')], 'partOfState': 'south central', 'wfo': 'FWD'}, +'TXZ175': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bremond', 876, '31.16510', '-96.67630'), ('Calvert', 1426, '30.97960', '-96.67170'), ('Franklin', 1470, '31.02490', '-96.48570'), ('Hearne', 4690, '30.87700', '-96.59480')], 'partOfState': 'south central', 'wfo': 'FWD'}, +'TXZ176': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Madisonville', 4159, '30.95200', '-95.90840'), ('Midway', 288, '31.02650', '-95.75280')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ177': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Huntsville', 35078, '30.71190', '-95.54980'), ('New Waverly', 950, '30.53650', '-95.48120'), ('Riverside', 451, '30.84750', '-95.39880')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ178': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Coldspring', 691, '30.59090', '-95.12920'), ('Oakhurst', 230, '30.74470', '-95.30950'), ('Point Blank', 443, '30.74590', '-95.21680'), ('Shepherd', 1812, '30.49050', '-95.00300')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ179': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Corrigan', 1721, '30.99950', '-94.82440'), ('Goodrich', 243, '30.60960', '-94.94510'), ('Livingston', 5433, '30.70940', '-94.93610'), ('Onalaska', 1174, '30.80880', '-95.10590'), ('Seven Oaks', 171, '30.85340', '-94.85620')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ180': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Chester', 265, '30.92260', '-94.60260'), ('Colmesneil', 638, '30.90900', '-94.42310'), ('Fred', 6393, '30.57640', '-94.17610'), ('Hillister', 2415, '30.66750', '-94.38110'), ('Ivanhoe', 2415, '30.68440', '-94.41310'), ('Rockland', 638, '31.00000', '-94.38200'), ('Spurger', 2415, '30.69300', '-94.17800'), ('Town Bluff', 8247, '30.79080', '-94.18030'), ('Warren', 2415, '30.61440', '-94.40830'), ('Woodville', 2415, '30.77410', '-94.42240')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ183': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Comstock', 33867, '29.68330', '-101.16670'), ('Del Rio', 33867, '29.37630', '-100.89570'), ('Juno', 3436, '30.15000', '-101.11670'), ('Langtry', 33867, '29.81670', '-101.56670'), ('Laughlin AFB', 2225, '29.35570', '-100.78380'), ('Loma Alta', 33867, '29.91670', '-100.76670'), ('Pandale', 3436, '30.18330', '-101.55000'), ('Seminole Canyon State Park', 33867, '29.70000', '-101.34000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ184': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carta Valley', 2225, '29.80000', '-100.68330'), ('Rocksprings', 1339, '30.01680', '-100.21180')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ185': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Barksdale', 822, '29.70000', '-100.03330'), ('Camp Wood', 822, '29.66890', '-100.01130'), ('Leakey', 387, '29.72440', '-99.76220'), ('Rio Frio', 387, '29.63330', '-99.73330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ186': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Camp Verde', 957, '29.88330', '-99.10000'), ('Center Point', 2358, '29.93330', '-99.03330'), ('Hunt', 1740, '30.06670', '-99.33330'), ('Ingram', 1740, '30.07850', '-99.23670'), ('Kerrville', 20425, '30.04190', '-99.13610'), ('Kerrville State Park', 20425, '30.04000', '-99.13600'), ('Kerr Wildlife Management Area', 1740, '30.09000', '-99.50000'), ('Mountain Home', 1740, '30.16670', '-99.36670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ187': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bandera', 957, '29.72480', '-99.07380'), ('Lakehills', 4668, '29.60440', '-98.94290'), ('Lost Maples State Park', 387, '29.84000', '-99.59000'), ('Medina', 2960, '29.80000', '-99.25000'), ('Pipe Creek', 4668, '29.71660', '-98.93330'), ('Tarpley', 957, '29.63330', '-99.28330'), ('Vanderpool', 387, '29.73700', '-99.55280')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ188': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fredericksburg', 8911, '30.27050', '-98.87220'), ('Harper', 1006, '30.30000', '-99.25000'), ('Lbj State Park', 1191, '30.24000', '-98.63000'), ('Luckenbach', 8911, '30.18330', '-98.75000'), ('Willow City', 8911, '30.40000', '-98.70000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ189': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bankersmith', 8911, '30.13330', '-98.81670'), ('Bergheim', 4695, '29.81670', '-98.58330'), ('Boerne', 6178, '29.80150', '-98.73850'), ('Comfort', 2358, '29.97230', '-98.90280'), ('Guadalupe River State Park', 3761, '29.87000', '-98.51000'), ('Kendalia', 1505, '29.96670', '-98.51670'), ('Sisterdale', 6178, '29.96670', '-98.73330'), ('Waring', 2358, '29.95000', '-98.80000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ190': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Blanco', 1505, '30.09840', '-98.42230'), ('Cypress Mill', 111, '30.40000', '-98.25000'), ('Johnson City', 1191, '30.27430', '-98.40650'), ('Pedernales Falls State Park', 1191, '30.31000', '-98.25000'), ('Round Mountain', 111, '30.43610', '-98.35380'), ('Twin Sisters', 1505, '30.00000', '-98.40000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ191': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buda', 2404, '30.08580', '-97.83970'), ('Driftwood', 1548, '30.11670', '-98.03330'), ('Dripping Springs', 1548, '30.18850', '-98.08830'), ('Hays', 233, '30.12280', '-97.87100'), ('Henly', 1548, '30.20000', '-98.21670'), ('Kyle', 5314, '29.99400', '-97.87060'), ('Mountain City', 671, '30.03850', '-97.89300'), ('Niederwald', 584, '30.01330', '-97.73690'), ('San Marcos', 34733, '29.88020', '-97.92900'), ('Uhland', 368, '29.96370', '-97.79460'), ('Wimberley', 2403, '29.99290', '-98.10150'), ('Woodcreek', 889, '30.03110', '-98.11220')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ192': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Austin', 656562, '30.27460', '-97.74040'), ('Bee Cave', 656, '30.30800', '-97.95520'), ('Briarcliff', 895, '30.40590', '-98.04600'), ('Creedmoor', 211, '30.09190', '-97.74170'), ('Garfield', 1660, '30.18970', '-97.56060'), ('Jonestown', 1681, '30.48920', '-97.92810'), ('Lago Vista', 4507, '30.45190', '-97.99670'), ('Lakeway', 8002, '30.36660', '-97.97940'), ('Lost Creek', 4729, '30.29540', '-97.84400'), ('Manor', 1204, '30.34600', '-97.55570'), ('Mansfield Dam', 656, '30.33330', '-97.90000'), ('Mustang Ridge', 785, '30.05660', '-97.69090'), ('Onion Creek', 1544, '30.13630', '-97.78390'), ('Pflugerville', 16335, '30.44070', '-97.62020'), ('Rollingwood', 1388, '30.27380', '-97.78680'), ('San Leanna', 325, '30.14490', '-97.81870'), ('Sunset Valley', 327, '30.22610', '-97.81640'), ('Tanglewood Forest', 2941, '30.17430', '-97.83890'), ('Wells Branch', 7094, '30.44580', '-97.67910'), ('West Lake Hills', 2542, '30.29210', '-97.80960'), ('Windemere', 3207, '30.45890', '-97.64880')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ193': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bastrop', 5340, '30.11300', '-97.30540'), ('Camp Swift', 4731, '30.19070', '-97.29210'), ('Cedar Creek', 2310, '30.08330', '-97.50000'), ('Circle D-Kc Estate', 2010, '30.16080', '-97.23140'), ('Elgin', 5700, '30.34920', '-97.37250'), ('Paige', 2010, '30.21670', '-97.11670'), ('Rosanky', 3901, '29.93330', '-97.30000'), ('Smithville', 3901, '30.00770', '-97.15660'), ('Wyldwood', 2310, '30.12920', '-97.47250')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ194': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Dime Box', 5105, '30.35000', '-96.81670'), ('Fedor', 1178, '30.31670', '-97.05000'), ('Giddings', 5105, '30.18330', '-96.92790'), ('Lexington', 1178, '30.41470', '-97.00940'), ('Tanglewood', 1178, '30.50000', '-96.98330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ195': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Caldwell', 3181, '30.52910', '-96.70300'), ('Snook', 489, '30.49060', '-96.46570'), ('Somerville', 1542, '30.34520', '-96.53050')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ196': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bryan', 55002, '30.66850', '-96.36520'), ('College Station', 67890, '30.60050', '-96.31240'), ('Wixon Valley', 186, '30.76260', '-96.31720')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ197': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brenham', 13507, '30.15970', '-96.39730'), ('Burton', 311, '30.17930', '-96.59730')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ198': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Navasota', 6789, '30.38910', '-96.08800'), ('Todd Mission', 54, '30.26040', '-95.82920')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ199': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Chateau Woods', 641, '30.16540', '-95.42740'), ('Conroe', 36811, '30.32330', '-95.47140'), ('Cut And Shoot', 1158, '30.33860', '-95.35290'), ('Magnolia', 1111, '30.21100', '-95.74870'), ('Montgomery', 489, '30.39120', '-95.69580'), ('Oak Ridge North', 2991, '30.15900', '-95.44500'), ('Panorama Village', 1965, '30.38210', '-95.49270'), ('Patton Village', 1391, '30.19470', '-95.16690'), ('Pinehurst', 3284, '30.18890', '-95.70510'), ('Porter Heights', 1448, '30.15170', '-95.32160'), ('Roman Forest', 1033, '30.17770', '-95.15930'), ('Shenandoah', 1718, '30.18100', '-95.45480'), ('Splendora', 745, '30.23010', '-95.16400'), ('Stagecoach', 340, '30.14120', '-95.71010'), ('The Woodlands', 29205, '30.15770', '-95.48930'), ('Willis', 2764, '30.42480', '-95.47810'), ('Woodbranch', 1312, '30.18400', '-95.18430'), ('Woodloch', 291, '30.21770', '-95.41400')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ200': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ames', 989, '30.04690', '-94.73770'), ('Cleveland', 7124, '30.34420', '-95.07870'), ('Daisetta', 1034, '30.11410', '-94.64270'), ('Dayton', 5709, '30.05040', '-94.89530'), ('Dayton Lakes', 101, '30.14520', '-94.82150'), ('Devers', 416, '30.02760', '-94.58510'), ('Hardin', 755, '30.15000', '-94.73640'), ('Kenefick', 667, '30.10880', '-94.85410'), ('Liberty', 7733, '30.04600', '-94.79770'), ('North Cleveland', 263, '30.36270', '-95.10160'), ('Plum Grove', 480, '30.19850', '-95.08740')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ201': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Batson', 1034, '30.24920', '-94.60690'), ('Honey Island', 2115, '30.39530', '-94.44060'), ('Kountze', 2115, '30.37240', '-94.31550'), ('Lumberton', 8731, '30.26450', '-94.20180'), ('Saratoga', 1667, '30.28390', '-94.52920'), ('Silsbee', 6393, '30.34470', '-94.18040'), ('Sour Lake', 1667, '30.13600', '-94.40390'), ('Thicket', 755, '30.39560', '-94.63000'), ('Village Mills', 2115, '30.49400', '-94.39800'), ('Wildwood', 2115, '30.51830', '-94.44390')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ202': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alamo Village', 1876, '29.41000', '-100.40000'), ('Brackettville', 1876, '29.31780', '-100.41040'), ('Spofford', 68, '29.17240', '-100.41100')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ203': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Concan', 387, '29.51670', '-99.73330'), ('Garner State Park', 387, '29.57000', '-99.74000'), ('Knippa', 739, '29.30000', '-99.63330'), ('Montell', 822, '29.53330', '-100.01670'), ('Reagan Wells', 387, '29.55000', '-99.80000'), ('Sabinal', 739, '29.32140', '-99.46870'), ('Utopia', 387, '29.61670', '-99.53330'), ('Uvalde', 14729, '29.21550', '-99.78490')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ204': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Castroville', 2664, '29.34800', '-98.87320'), ('Devine', 4140, '29.14540', '-98.90470'), ("D'Hanis", 7897, '29.32860', '-99.27770'), ('Hondo', 7897, '29.35630', '-99.15830'), ('Lacoste', 1021, '29.30930', '-98.81090'), ('Mico', 4668, '29.53330', '-98.93330'), ('Natalia', 1663, '29.19050', '-98.85570'), ('Rio Medina', 2664, '29.43330', '-98.88330'), ('Yancey', 7897, '29.15000', '-99.13000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ205': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alamo Heights', 7319, '29.48260', '-98.46700'), ('Balcones Heights', 3016, '29.49000', '-98.55190'), ('Calaveras Lake', 664, '29.28000', '-98.30000'), ('Castle Hills', 4202, '29.52380', '-98.51920'), ('China Grove', 1247, '29.39560', '-98.34810'), ('Converse', 11508, '29.51380', '-98.31190'), ('Cross Mountain', 1524, '29.64520', '-98.65910'), ('Elmendorf', 664, '29.25850', '-98.33460'), ('Fair Oaks Ranch', 4695, '29.73610', '-98.63560'), ('Grey Forest', 418, '29.61410', '-98.68240'), ('Helotes', 4285, '29.56810', '-98.69350'), ('Hill Country Village', 1028, '29.58390', '-98.49180'), ('Hollywood Park', 2983, '29.59890', '-98.48490'), ('Kirby', 8673, '29.46000', '-98.38560'), ('Lackland AFB', 9352, '29.38280', '-98.62650'), ('Leon Springs', 1196, '29.66660', '-98.63330'), ('Leon Valley', 9239, '29.49520', '-98.61340'), ('Live Oak', 9156, '29.55410', '-98.33980'), ('Olmos Park', 2343, '29.47450', '-98.48590'), ('San Antonito', 935933, '29.42570', '-98.48610'), ('Scenic Oaks', 2352, '29.71060', '-98.67570'), ('Sea World', 9239, '29.46000', '-98.70000'), ('Selma', 520, '29.58630', '-98.31680'), ('Shavano Park', 1708, '29.58410', '-98.55500'), ('Somerset', 1144, '29.22760', '-98.65670'), ('St. Hedwig', 1443, '29.42430', '-98.21410'), ('Terrell Hills', 4592, '29.47730', '-98.44660'), ('The Dominion', 1196, '29.65660', '-98.61620'), ('Timberwood Park', 3761, '29.70540', '-98.47810'), ('Universal City', 13057, '29.55160', '-98.30620'), ('Windcrest', 5331, '29.51770', '-98.37890')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ206': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bulverde', 3761, '29.73620', '-98.45170'), ('Canyon Lake Dam', 16870, '29.87500', '-98.26230'), ('Fischer', 16870, '29.96660', '-98.26660'), ('Garden Ridge', 1882, '29.63470', '-98.29360'), ('New Braunfels', 36494, '29.70430', '-98.11740'), ('Smithson Valley', 16870, '29.80480', '-98.35600'), ('Spring Branch', 16870, '29.86660', '-98.40000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ207': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cibolo', 3035, '29.57390', '-98.23280'), ('Geronimo', 619, '29.66670', '-97.96670'), ('Kingsbury', 652, '29.65000', '-97.81670'), ('Marion', 1099, '29.57360', '-98.14300'), ('McQueeney', 2527, '29.59790', '-98.04320'), ('New Berlin', 467, '29.46370', '-98.10100'), ('Schertz', 10555, '29.55480', '-98.26200'), ('Seguin', 22011, '29.57950', '-97.96880'), ('Staples', 953, '29.78330', '-97.83330'), ('Zorn', 34733, '29.75000', '-97.96670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ208': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fentress', 953, '29.75000', '-97.76660'), ('Lockhart', 11615, '29.87420', '-97.67760'), ('Luling', 5080, '29.68290', '-97.64900'), ('Martindale', 953, '29.84230', '-97.84330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ209': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Carmine', 228, '30.14960', '-96.68880'), ('Cistern', 974, '29.81670', '-97.21670'), ('Ellinger', 261, '29.83350', '-96.70300'), ('Fayetteville', 261, '29.90640', '-96.67440'), ('Flatonia', 1377, '29.68730', '-97.10750'), ('La Grange', 4478, '29.90870', '-96.87810'), ('Muldoon', 1377, '29.81670', '-97.06670'), ('Round Top', 81, '30.06440', '-96.69570'), ('Schulenburg', 2455, '29.68120', '-96.90690')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ210': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Columbus', 3916, '29.70440', '-96.55150'), ('Eagle Lake', 3664, '29.58710', '-96.32830'), ('Weimar', 2052, '29.70080', '-96.77830')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ211': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bellville', 3794, '29.94640', '-96.25870'), ('San Felipe', 618, '29.79860', '-96.10560'), ('Sealy', 4541, '29.77370', '-96.15290'), ('Wallis', 1001, '29.63130', '-96.06420')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ212': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brookshire', 3450, '29.78240', '-95.95350'), ('Hempstead', 4691, '30.09310', '-96.08040'), ('Pattison', 447, '29.81400', '-95.97750'), ('Pine Island', 571, '30.05340', '-96.02860'), ('Prairie View', 4004, '30.08320', '-95.98910'), ('Waller', 1493, '30.05780', '-95.92330')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ213': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aldine', 13979, '29.91360', '-95.37600'), ('Barrett', 2872, '29.87300', '-95.06200'), ('Baytown', 66430, '29.74850', '-94.96900'), ('Bellaire', 15642, '29.70380', '-95.46080'), ('Bunker Hill Village', 3654, '29.76470', '-95.53160'), ('Channelview', 29685, '29.78860', '-95.11510'), ('Cloverleaf', 23508, '29.78730', '-95.17280'), ('Crosby', 1714, '29.91410', '-95.05820'), ('Deer Park', 28520, '29.69040', '-95.11530'), ('El Lago', 3075, '29.57280', '-95.04450'), ('Galena Park', 10592, '29.74490', '-95.23420'), ('Hedwig Village', 2334, '29.77980', '-95.51920'), ('Highlands', 7089, '29.81270', '-95.05750'), ('Hilshire Village', 720, '29.79020', '-95.48800'), ('Houston', 1953631, '29.76870', '-95.38670'), ('Humble', 14579, '29.99470', '-95.26470'), ('Hunters Creek Village', 4374, '29.77380', '-95.49770'), ('Jacinto City', 10302, '29.76600', '-95.24090'), ('Jersey Village', 6880, '29.88830', '-95.56840'), ('Katy', 11775, '29.79830', '-95.82310'), ('Kingwood', 37397, '30.05790', '-95.18620'), ('La Porte', 31880, '29.66660', '-95.04470'), ("Morgan's Point", 336, '29.67610', '-95.00520'), ('Nassau Bay', 4170, '29.54530', '-95.08770'), ('Pasadena', 141674, '29.66060', '-95.15200'), ('Piney Point Village', 3197, '29.75990', '-95.51550'), ('Sheldon', 1653, '29.86030', '-95.13360'), ('Shoreacres', 1316, '29.61790', '-95.00160'), ('South Houston', 14207, '29.66080', '-95.22800'), ('Southside Place', 1392, '29.70840', '-95.43520'), ('Spring', 33111, '30.06190', '-95.38380'), ('Spring Valley', 3392, '29.78810', '-95.50390'), ('Taylor Lake Village', 3394, '29.57370', '-95.05480'), ('Tomball', 6370, '30.09690', '-95.61640'), ('Webster', 4678, '29.53280', '-95.11640'), ('West University Place', 12920, '29.71520', '-95.43130')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ213': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aldine', 13979, '29.91360', '-95.37600'), ('Barrett', 2872, '29.87300', '-95.06200'), ('Baytown', 66430, '29.74850', '-94.96900'), ('Bellaire', 15642, '29.70380', '-95.46080'), ('Bunker Hill Village', 3654, '29.76470', '-95.53160'), ('Channelview', 29685, '29.78860', '-95.11510'), ('Cloverleaf', 23508, '29.78730', '-95.17280'), ('Crosby', 1714, '29.91410', '-95.05820'), ('Deer Park', 28520, '29.69040', '-95.11530'), ('El Lago', 3075, '29.57280', '-95.04450'), ('Galena Park', 10592, '29.74490', '-95.23420'), ('Hedwig Village', 2334, '29.77980', '-95.51920'), ('Highlands', 7089, '29.81270', '-95.05750'), ('Hilshire Village', 720, '29.79020', '-95.48800'), ('Houston', 1953631, '29.76870', '-95.38670'), ('Humble', 14579, '29.99470', '-95.26470'), ('Hunters Creek Village', 4374, '29.77380', '-95.49770'), ('Jacinto City', 10302, '29.76600', '-95.24090'), ('Jersey Village', 6880, '29.88830', '-95.56840'), ('Katy', 11775, '29.79830', '-95.82310'), ('Kingwood', 37397, '30.05790', '-95.18620'), ('La Porte', 31880, '29.66660', '-95.04470'), ("Morgan's Point", 336, '29.67610', '-95.00520'), ('Nassau Bay', 4170, '29.54530', '-95.08770'), ('Pasadena', 141674, '29.66060', '-95.15200'), ('Piney Point Village', 3197, '29.75990', '-95.51550'), ('Sheldon', 1653, '29.86030', '-95.13360'), ('Shoreacres', 1316, '29.61790', '-95.00160'), ('South Houston', 14207, '29.66080', '-95.22800'), ('Southside Place', 1392, '29.70840', '-95.43520'), ('Spring', 33111, '30.06190', '-95.38380'), ('Spring Valley', 3392, '29.78810', '-95.50390'), ('Taylor Lake Village', 3394, '29.57370', '-95.05480'), ('Tomball', 6370, '30.09690', '-95.61640'), ('Webster', 4678, '29.53280', '-95.11640'), ('West University Place', 12920, '29.71520', '-95.43130')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ214': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anahuac', 2210, '29.76480', '-94.67830'), ('Cove', 323, '29.81320', '-94.82490'), ('Mont Belvieu', 2324, '29.85160', '-94.88110'), ('Old River-Winfree', 1364, '29.87830', '-94.82430'), ('Stowell', 1419, '29.78550', '-94.37990'), ('Winnie', 2914, '29.81670', '-94.38020')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ215': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Beaumont', 113866, '30.08780', '-94.14450'), ('Bevil Oaks', 1346, '30.15540', '-94.27160'), ('Central Gardens', 4106, '29.99180', '-94.02070'), ('China', 1112, '30.05220', '-94.33560'), ('Fannett', 1112, '29.92580', '-94.25060'), ('Groves', 15733, '29.94590', '-93.91670'), ('Hamshire', 2914, '29.86140', '-94.31220'), ('Nederland', 17422, '29.97070', '-93.99590'), ('Nome', 515, '30.03440', '-94.41810'), ('Port Arthur', 15733, '29.89860', '-93.92860'), ('Port Neches', 12974, '29.97420', '-93.94120'), ('Sabine Pass', 57755, '29.73330', '-93.89420'), ('Sea Rim State Park', 57755, '29.68750', '-94.05000')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ216': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bridge City', 8651, '30.02990', '-93.85090'), ('Mauriceville', 2743, '30.21830', '-93.87290'), ('Orange', 18643, '30.10390', '-93.75820'), ('Pine Forest', 709, '30.17990', '-94.02980'), ('Rose City', 572, '30.10410', '-94.05000'), ('Vidor', 10935, '30.12930', '-94.00160'), ('West Orange', 4187, '30.07820', '-93.75990')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ217': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Eagle Pass', 22413, '28.70980', '-100.49140'), ('El Indio', 263, '28.51670', '-100.31670'), ('Quemado', 243, '28.95000', '-100.63330')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ218': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Batesville', 1298, '28.94730', '-99.61430'), ('Cometa', 7190, '28.66670', '-100.01670'), ('Crystal City', 7190, '28.68990', '-99.82550'), ('La Pryor', 1491, '28.94860', '-99.84880'), ('Loma Vista', 1298, '28.76670', '-99.60000')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ219': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Big Foot', 4140, '29.05000', '-98.88330'), ('Dilley', 3674, '28.66880', '-99.17100'), ('Frio Town', 7157, '29.01670', '-99.31670'), ('Moore', 4140, '29.05000', '-99.01670'), ('Pearsall', 7157, '28.88770', '-99.09210')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ220': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Campbellton', 436, '28.75000', '-98.30000'), ('Charlotte', 1637, '28.85920', '-98.70000'), ('Christine', 436, '28.78520', '-98.49860'), ('Jourdanton', 3732, '28.91270', '-98.54140'), ('Leming', 3305, '29.06660', '-98.48330'), ('Lytle', 2255, '29.23410', '-98.79710'), ('Pleasanton', 7678, '28.96460', '-98.49150'), ('Poteet', 3305, '29.03740', '-98.57510')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ221': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Floresville', 5868, '29.13680', '-98.15650'), ('Kosciusko', 1398, '29.10000', '-97.93330'), ('La Vernia', 931, '29.35000', '-98.11670'), ('Pandora', 2186, '29.25000', '-97.83330'), ('Poth', 1642, '29.07240', '-98.08090'), ('Stockdale', 1398, '29.23380', '-97.96220'), ('Sutherland Springs', 931, '29.26670', '-98.06670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ222': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cestohowa', 591, '29.01670', '-97.95000'), ('Falls City', 591, '28.98130', '-98.02130'), ('Gillett', 2186, '29.13330', '-97.80000'), ('Karnes City', 3457, '28.88700', '-97.90110'), ('Kenedy', 3487, '28.81520', '-97.85050'), ('Runge', 1080, '28.88590', '-97.71280')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ223': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cheapside', 6571, '29.28330', '-97.40000'), ('Gonzales', 7202, '29.50860', '-97.44750'), ('Nixon', 2186, '29.26930', '-97.76190'), ('Palmeto', 5080, '29.59000', '-97.60000'), ('Smiley', 453, '29.27150', '-97.63750'), ('Waelder', 974, '29.69380', '-97.29630')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ224': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cuero', 6571, '29.09410', '-97.28740'), ('Hochheim', 5731, '29.31670', '-97.30000'), ('Nordheim', 323, '28.92330', '-97.61360'), ('Thomaston', 6571, '29.00000', '-97.15000'), ('Westhoff', 453, '29.20000', '-97.46670'), ('Yorktown', 2207, '28.98290', '-97.50410')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ225': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Ezzell', 2345, '29.28330', '-96.90000'), ('Hallettsville', 2345, '29.44490', '-96.94180'), ('Moulton', 944, '29.57160', '-97.14600'), ('Shiner', 2074, '29.43200', '-97.17180'), ('Speaks', 5899, '29.25000', '-96.71670'), ('Sublime', 2345, '29.48300', '-96.80000'), ('Yoakum', 5731, '29.29280', '-97.14650')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ226': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Boling-Iago', 1119, '29.26050', '-95.94860'), ('East Bernard', 1729, '29.52800', '-96.06300'), ('El Campo', 10945, '29.19650', '-96.27630'), ('Wharton', 9011, '29.31640', '-96.09900')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ227': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Arcola', 1048, '29.50110', '-95.46350'), ('Beasley', 590, '29.49740', '-95.91790'), ('First Colony', 18327, '29.57450', '-95.60830'), ('Fresno', 3182, '29.53740', '-95.45690'), ('Fulshear', 716, '29.69110', '-95.88420'), ('Kendleton', 466, '29.44590', '-96.00010'), ('Meadows', 4871, '29.65150', '-95.58630'), ('Mission Bend', 24945, '29.69370', '-95.66460'), ('Missouri City', 52913, '29.57230', '-95.53670'), ('Needville', 2609, '29.39570', '-95.83920'), ('Orchard', 408, '29.60300', '-95.96870'), ('Pecan Grove', 13551, '29.62580', '-95.73140'), ('Pleak', 746, '29.48390', '-95.80990'), ('Richmond', 9801, '29.58140', '-95.76500'), ('Rosenberg', 20183, '29.54860', '-95.79460'), ('Simonton', 717, '29.68140', '-95.99520'), ('Stafford', 8397, '29.62400', '-95.56310'), ('Sugar Land', 24529, '29.61880', '-95.61620'), ('Thompsons', 167, '29.49100', '-95.61960'), ('Town West', 6166, '29.66350', '-95.63090')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ228': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Asherton', 1342, '28.44600', '-99.76050'), ('Big Wells', 704, '28.56950', '-99.57000'), ('Carrizo Springs', 5655, '28.52550', '-99.85900'), ('Catarina', 135, '28.35000', '-99.61670')], 'partOfState': 'south central', 'wfo': 'EWX'}, +'TXZ229': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Artesia Wells', 629, '28.22080', '-99.29380'), ('Cotulla', 3614, '28.43610', '-99.23640'), ('Encinal', 629, '28.04130', '-99.35470'), ('Fowlerton', 62, '28.45277', '-98.81666'), ('Los Angeles', 3614, '28.45000', '-99.00194'), ('Millet', 2632, '28.57222', '-99.21250'), ('Woodward', 3614, '28.53333', '-99.29333')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ230': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Calliham', 1878, '28.46580', '-98.35580'), ('Cross', 436, '28.59690', '-98.54880'), ('Loma Alta', 3241, '28.08770', '-98.51580'), ('Tilden', 436, '28.45000', '-98.54444')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ231': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Annarose', 2524, '28.08770', '-98.16690'), ('Choke Canyon', 1878, '28.50880', '-98.31580'), ('Clegg', 2524, '28.12500', '-98.29000'), ('Dinero', 526, '28.20500', '-97.93333'), ('Esseville', 1878, '28.67270', '-98.22000'), ('George West', 2524, '28.33030', '-98.11770'), ('Lagarto', 269, '28.08833', '-97.93333'), ('Nell', 1878, '28.69583', '-98.07500'), ('Oakville', 2524, '28.41380', '-98.06190'), ('Pernitas Point', 269, '28.05830', '-97.90610'), ('Ray Point', 1878, '28.47500', '-98.08333'), ('Simmons', 1878, '28.39166', '-98.30416'), ('Three Rivers', 1878, '28.46560', '-98.17790'), ('Whitsett', 1878, '28.62383', '-98.27777')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ232': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Beeville', 13129, '28.40560', '-97.74910'), ('Normanna', 121, '28.53333', '-97.79166'), ('Pawnee', 201, '28.64266', '-98.00500'), ('Pettus', 608, '28.57580', '-97.80000'), ('Skidmore', 1013, '28.23333', '-97.68333')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ233': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Berclair', 1975, '28.50000', '-97.53333'), ('Charco', 1080, '28.73270', '-97.62880'), ('Fannin', 1975, '28.69270', '-97.21690'), ('Goliad', 1975, '28.66970', '-97.39160'), ('Schroeder', 1975, '28.80470', '-97.21690'), ('Weesatche', 1975, '28.83333', '-97.41666')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ234': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bloomington', 2562, '28.63333', '-96.88333'), ('Dacosta', 2562, '28.71666', '-96.88333'), ('Inez', 1787, '28.88333', '-96.78333'), ('Mission Valley', 60603, '28.85050', '-97.15670'), ('Nursery', 60603, '28.91666', '-97.10300'), ('Placedo', 2562, '28.66666', '-96.83333'), ('Telferner', 1787, '28.83333', '-96.83333'), ('Victoria', 60603, '28.82420', '-96.98290')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ235': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Edna', 5899, '28.97400', '-96.64730'), ('Ganado', 1915, '29.04210', '-96.51140'), ('La Ward', 200, '28.84760', '-96.46540')], 'partOfState': 'south central', 'wfo': 'HGX'}, +'TXZ236': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bay City', 18667, '28.97860', '-95.96340'), ('Markham', 1138, '28.96380', '-96.06340'), ('Palacios', 5153, '28.71360', '-96.23580'), ('Van Vleck', 1534, '29.03610', '-95.88180')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ237': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alvin', 21413, '29.43210', '-95.24600'), ('Angleton', 18130, '29.16690', '-95.42760'), ("Bailey's Prairie", 694, '29.15340', '-95.49430'), ('Bonney', 384, '29.30170', '-95.45850'), ('Brazoria', 2787, '29.04710', '-95.56820'), ('Brookside Village', 1960, '29.58940', '-95.31630'), ('Clute', 10424, '29.02460', '-95.39750'), ('Danbury', 1611, '29.22660', '-95.34570'), ('Freeport', 12708, '28.95140', '-95.36430'), ('Hillcrest', 695, '29.39210', '-95.22260'), ('Holiday Lakes', 1095, '29.20880', '-95.51420'), ('Iowa Colony', 804, '29.44270', '-95.41540'), ('Jones Creek', 2130, '28.97460', '-95.46780'), ('Lake Jackson', 26386, '29.04190', '-95.44630'), ('Liverpool', 404, '29.29900', '-95.27730'), ('Manvel', 3046, '29.48380', '-95.35960'), ('Oyster Creek', 1192, '28.99740', '-95.33050'), ('Pearland', 37640, '29.55560', '-95.27550'), ('Quintana', 51, '28.93050', '-95.31580'), ('Richwood', 2732, '29.05800', '-95.40750'), ('Surfside Beach', 611, '28.95380', '-95.28220'), ('Sweeny', 3297, '29.04530', '-95.69930'), ('West Columbia', 4372, '29.14150', '-95.64810'), ('Wild Peach Village', 2440, '29.08340', '-95.63370')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ238': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bacliff', 6962, '29.50820', '-94.99190'), ('Bayou Vista', 1644, '29.32530', '-94.93780'), ('Clear Lake Shores', 1205, '29.54820', '-95.03390'), ('Dickinson', 17093, '29.45370', '-95.06630'), ('Friendswood', 29037, '29.51230', '-95.19770'), ('Galveston', 57247, '29.22930', '-94.89210'), ('Hitchcock', 6386, '29.31570', '-95.01730'), ('Jamaica Beach', 1075, '29.19120', '-94.97980'), ('Kemah', 2330, '29.52880', '-95.02050'), ('La Marque', 13682, '29.36700', '-94.99330'), ('League City', 45444, '29.48560', '-95.10750'), ('San Leon', 3328, '29.48860', '-94.93830'), ('Santa Fe', 8429, '29.38200', '-95.09830'), ('Texas City', 40822, '29.40940', '-94.95800')], 'partOfState': 'southeast', 'wfo': 'HGX'}, +'TXZ239': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Aguilares', 176576, '27.45416', '-99.10000'), ('Bruni', 412, '27.42770', '-98.84380'), ('Columbia Bridge', 176576, '27.71190', '-99.73180'), ('El Cenizo', 3545, '27.34580', '-99.49690'), ('Laredo', 176576, '27.53430', '-99.48660'), ('Las Tiendas', 629, '27.89580', '-99.62580'), ('Mirando City', 493, '27.43080', '-98.93190'), ('Oilton', 310, '27.45000', '-98.91388'), ('Orvil', 176576, '27.62580', '-99.49690'), ('Rio Bravo', 3545, '27.36166', '-99.47666')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ240': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Benavides', 1686, '27.59770', '-98.40920'), ('Concepcion', 2772, '27.38333', '-98.27000'), ('Freer', 3241, '27.88140', '-98.61820'), ('Realitos', 4465, '27.42500', '-98.55000'), ('Rios', 2772, '27.42666', '-98.27000'), ('Rosita', 1686, '27.78333', '-98.42500'), ('San Diego', 4983, '27.75920', '-98.23830'), ('Seven Sisters', 3241, '28.03000', '-98.52000')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ241': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alice', 19010, '27.75520', '-98.06550'), ('Ben Bolt', 19010, '27.63333', '-98.08333'), ('Lake Alice', 19010, '27.80770', '-98.06380'), ('Orange Grove', 1288, '27.95580', '-97.93890'), ('Premont', 2772, '27.35780', '-98.12410'), ('Sandia', 269, '28.01190', '-97.88190')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ242': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Kingsville', 25575, '27.50890', '-97.86070'), ('Loyola Beach', 25575, '27.33000', '-97.70080'), ('Ricardo', 25575, '27.41666', '-97.85000'), ('Riviera', 25575, '27.28333', '-97.81666')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ243': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Agua Dulce', 737, '27.78280', '-97.90980'), ('Bishop', 3305, '27.58480', '-97.79760'), ('Cc NAS', 277454, '27.69000', '-97.28500'), ('Chapman Ranch', 83, '27.58000', '-97.45270'), ('Corpus Christi', 277454, '27.70570', '-97.29280'), ('Driscoll', 825, '27.67220', '-97.75080'), ('Flour Bluff', 277454, '27.65380', '-97.30270'), ('North San Pedro', 953, '27.80240', '-97.68270'), ('Petronila', 83, '27.66940', '-97.63360'), ('Robstown', 12727, '27.79920', '-97.66070'), ('Tuloso', 12727, '27.80880', '-97.54880')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ244': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Edroy', 420, '27.93333', '-97.66666'), ('Gregory', 2318, '27.92210', '-97.29080'), ('Ingleside', 9388, '27.87000', '-97.20010'), ('Lake City', 526, '28.08300', '-97.88240'), ('Lake Corpus Christi', 465, '28.12880', '-97.87500'), ('Lakeside', 1040, '28.10450', '-97.86110'), ('Mathis', 5034, '28.09340', '-97.82450'), ('Odem', 2499, '27.94550', '-97.58680'), ('Portland', 12224, '27.87890', '-97.32690'), ('San Patricio', 369, '27.97850', '-97.77260'), ('Sinton', 5676, '28.03350', '-97.50960'), ('St. Paul', 5676, '28.10690', '-97.56690'), ('Taft', 3222, '27.98110', '-97.39080'), ('Taft Southwest', 2012, '27.97230', '-97.40530'), ('Tynan', 5034, '28.15530', '-97.73333')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ245': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fulton', 1553, '28.07130', '-97.03580'), ('Rockport', 4753, '28.04070', '-97.05150')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ246': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Austwell', 192, '28.39010', '-96.84330'), ('Bayside', 360, '28.07580', '-97.24080'), ('McFaddin', 2562, '28.51666', '-97.01666'), ('Refugio', 3158, '28.30710', '-97.27500'), ('Tivoli', 192, '28.43333', '-96.88333'), ('Woodsboro', 1731, '28.23750', '-97.32480')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ247': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Kamay', 12035, '28.61690', '-96.73880'), ('Long Mott', 1352, '28.46666', '-96.78333'), ('Magnolia Beach', 12035, '28.51380', '-96.51690'), ('Point Comfort', 956, '28.65580', '-96.55690'), ('Port Lavaca', 12035, '28.61470', '-96.62120'), ('Seadrift', 1352, '28.38000', '-96.69000')], 'partOfState': 'south central', 'wfo': 'CRP'}, +'TXZ248': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Escoba', 7119, '27.06700', '-99.01000'), ('Zapata', 7119, '26.89430', '-99.26210')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ249': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Guerra', 8, '26.88300', '-98.88500'), ('Hebbronville', 4498, '27.31740', '-98.68600'), ('Randado', 4498, '27.08330', '-98.87000')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ250': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Encino', 177, '26.93330', '-98.13330')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ251': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Border Patrol', 177, '27.00250', '-97.78330'), ('Sarita', 25575, '27.21670', '-97.80000')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ252': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('El Sauz', 1705, '26.56700', '-98.86700'), ('Falcon Dam', 9617, '26.55000', '-99.13330'), ('Garciasville', 2177, '26.33230', '-98.71710'), ('La Gloria', 2177, '26.71670', '-98.54000'), ('Rio Grande City', 9891, '26.37850', '-98.82630'), ('Roma', 8059, '26.41340', '-99.00240')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ253': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Alamo', 14760, '26.18860', '-98.11850'), ('Donna', 14768, '26.16890', '-98.05000'), ('Edcouch', 3342, '26.29400', '-97.96430'), ('Edinburg', 48465, '26.29580', '-98.16490'), ('Elsa', 5549, '26.29830', '-97.99340'), ('Hidalgo', 7322, '26.10180', '-98.25840'), ('La Joya', 3303, '26.24830', '-98.47820'), ('McAllen', 106414, '26.21550', '-98.23930'), ('McCook', 3069, '26.48000', '-98.38300'), ('Mercedes', 13649, '26.14800', '-97.92080'), ('Mission', 45408, '26.21140', '-98.31690'), ('Palmview', 4107, '26.22990', '-98.37250'), ('Penitas', 1167, '26.23340', '-98.44850'), ('Pharr', 46660, '26.18200', '-98.18850'), ('Progreso', 1951, '26.09750', '-97.96050'), ('San Juan', 10815, '26.19130', '-98.15410'), ('San Manuel', 48465, '26.57000', '-98.11700'), ('Sullivan City', 2371, '26.28170', '-98.56080'), ('Weslaco', 21877, '26.16160', '-97.98440')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ254': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Lyford', 1973, '26.41090', '-97.78960'), ('Raymondville', 8880, '26.47910', '-97.78080'), ('San Perlita', 680, '26.50040', '-97.63980'), ('Sebastian', 1598, '26.34390', '-97.79730')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ255': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bayview', 323, '26.12430', '-97.39900'), ('Brownsville', 139722, '25.92510', '-97.48200'), ('Combes', 2553, '26.24240', '-97.72420'), ('Harlingen', 57564, '26.19530', '-97.68630'), ('La Feria', 6115, '26.15700', '-97.82260'), ('Los Fresnos', 4512, '26.07390', '-97.47990'), ('Rancho Viejo', 885, '26.03470', '-97.55760'), ('Rio Hondo', 1793, '26.23430', '-97.58260'), ('San Benito', 20125, '26.13710', '-97.63530'), ('Santa Rosa', 2223, '26.25420', '-97.82540')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ256': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Port Mansfield', 680, '26.55000', '-97.43330')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ257': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Laguna Heights', 1990, '26.08010', '-97.25690'), ('Laguna Vista', 1166, '26.10050', '-97.29330'), ('Port Isabel', 4467, '26.07480', '-97.22010')], 'partOfState': 'south central', 'wfo': 'BRO'}, +'TXZ258': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Pine Springs', 413, '31.89000', '-104.81000')], 'partOfState': 'southwest', 'wfo': 'MAF'}, +'TXZ259': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Brookeland', 219, '31.12920', '-93.98970'), ('Holly Springs', 8247, '30.89690', '-93.88390'), ('Jasper', 8247, '30.92040', '-93.99510'), ('Kirbyville', 2085, '30.65790', '-93.89990'), ('Magnolia Springs', 2085, '30.73530', '-94.02640'), ('Mt. Union', 2085, '30.69900', '-94.02300'), ('Roganville', 2085, '30.80000', '-93.90330'), ('Sam Rayburn Dam', 219, '31.06140', '-94.10640')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ260': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Bleakwood', 2085, '30.69220', '-93.82500'), ('Bon Weir', 1235, '30.73970', '-93.66330'), ('Burkeville', 2459, '30.99970', '-93.66780'), ('Call', 2085, '30.61250', '-93.87390'), ('Farrsville', 2459, '30.98390', '-93.80750'), ('Jamestown', 2459, '30.92280', '-93.82640'), ('Newton', 2459, '30.85050', '-93.75280'), ('Toledo Bend Dam', 427, '31.17420', '-93.56670'), ('Wiergate', 2459, '30.99940', '-93.70750')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ261': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Buna', 2269, '30.44430', '-93.96170'), ('Evadale', 1430, '30.33860', '-94.06120'), ('Gist', 2743, '30.27420', '-93.90560')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ262': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Deweyville', 1190, '30.30690', '-93.75790')], 'partOfState': 'southeast', 'wfo': 'LCH'}, +'TXZ418': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Anthony', 3850, '31.99415', '-106.60574'), ('Canutillo', 5129, '31.91870', '-106.59940'), ('Central El Paso', 563662, '31.78326', '-106.48214'), ('Franklin Mountains State Park', 0, '31.93010', '-106.51330'), ('Vinton', 605, '31.96170', '-106.59570'), ('West El Paso', 0, '31.86721', '-106.56513'), ('Westway', 2381, '31.95870', '-106.57760')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXZ419': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Clint', 980, '31.59010', '-106.22840'), ('East El Paso', 0, '31.77988', '-106.30361'), ('Fort Bliss', 13915, '31.81172', '-106.41796'), ('Horizon City', 5233, '31.67760', '-106.19059'), ('Mission Valley', 0, '31.67855', '-106.33449'), ('Montana Vista', 4978, '31.81998', '-106.17575'), ('Northeast El Paso', 0, '31.89857', '-106.41941'), ('San Elizario', 4385, '31.57840', '-106.26210'), ('Socorro', 22995, '31.63934', '-106.26658'), ('Sparks', 1276, '31.67260', '-106.23930')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXZ420': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Hueco Tanks', 0, '31.91770', '-106.04710'), ('Loma Linda', 0, '31.83090', '-105.96300')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXZ421': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Cornudas', 413, '31.78330', '-105.46670'), ('Dell City', 413, '31.93520', '-105.19980'), ('Salt Flat', 413, '31.74470', '-105.08140')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXZ422': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Allamoore', 0, '31.07700', '-105.00280'), ('Quitman Canyon', 0, '31.08240', '-105.45930'), ('Sierra Blanca', 2435, '31.17450', '-105.35670')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXZ423': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Acala', 0, '31.33510', '-105.91520'), ('Esperanza', 0, '31.16000', '-105.71060'), ('Fabens', 8043, '31.50384', '-106.15817'), ('Fort Hancock', 8043, '31.29830', '-105.84470'), ('McNary', 8043, '31.24800', '-105.79600'), ('Tornillo', 8043, '31.44530', '-106.08780')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'TXZ424': {'fullStateName': 'Texas', 'state': 'TX', 'cities': [('Fort Quitman', 0, '31.06310', '-105.58380')], 'partOfState': 'southwest', 'wfo': 'EPZ'}, +'UTZ001': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Amalga', 427, '41.85750', '-111.89680'), ('Avon', 0, '41.53000', '-111.82000'), ('Clarkston', 688, '41.92100', '-112.04840'), ('College Ward', 0, '41.68000', '-111.88000'), ('Cornish', 259, '41.97310', '-111.95100'), ('Hyde Park', 2955, '41.79800', '-111.81470'), ('Hyrum', 6316, '41.63290', '-111.84470'), ('Lewiston', 1877, '41.96090', '-111.87490'), ('Logan', 42670, '41.73000', '-111.83000'), ('Mendon', 898, '41.71100', '-111.97970'), ('Millville', 1507, '41.68060', '-111.81890'), ('Newton', 699, '41.86120', '-111.98920'), ('Nibley', 2045, '41.67250', '-111.84190'), ('North Logan', 6163, '41.77150', '-111.81410'), ('Paradise', 759, '41.56760', '-111.83320'), ('Providence', 4377, '41.70520', '-111.81340'), ('Richmond', 2051, '41.91940', '-111.80940'), ('River Heights', 1496, '41.72250', '-111.82040'), ('Smithfield', 7261, '41.83540', '-111.82970'), ('Trenton', 449, '41.91390', '-111.93520'), ('Wellsville', 2728, '41.63230', '-111.93180')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ002': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Antelope Island State Park', 0, '41.04000', '-112.23000'), ('Bear River', 750, '41.61440', '-112.12310'), ('Bountiful', 41301, '40.87610', '-111.86520'), ('Brigham City', 17411, '41.50910', '-112.00960'), ('Centerville', 14585, '40.92660', '-111.87000'), ('Clearfield', 25974, '41.10450', '-112.02260'), ('Clinton', 7945, '41.14100', '-112.06260'), ('Collinston', 0, '41.77000', '-112.08000'), ('Corinne', 621, '41.54770', '-112.11660'), ('Deweyville', 278, '41.71000', '-112.08980'), ('East Layton', 0, '41.08000', '-111.92000'), ('Elwood', 678, '41.68200', '-112.09500'), ('Farmington', 12081, '40.98870', '-111.88000'), ('Farr West', 3094, '41.29800', '-112.03030'), ('Fielding', 448, '41.81200', '-112.11640'), ('Fruit Heights', 4701, '41.02830', '-111.90570'), ('Harrisville', 3645, '41.28090', '-111.98430'), ('Hill Air Force Base', 0, '41.11670', '-111.96670'), ('Honeyville', 1214, '41.63480', '-112.08280'), ('Hooper', 3926, '41.17300', '-112.12450'), ('Howell', 221, '41.77120', '-112.44490'), ('Kaysville', 20351, '41.03070', '-111.92430'), ('Layton', 58474, '41.07800', '-111.95460'), ('North Ogden', 15026, '41.31140', '-111.95890'), ('North Salt Lake', 8749, '40.83000', '-111.91960'), ('Ogden', 77226, '41.22790', '-111.96580'), ('Perry', 2383, '41.46490', '-112.03430'), ('Plain City', 3489, '41.29890', '-112.07510'), ('Pleasant View', 3603, '41.32370', '-111.99870'), ('Plymouth', 328, '41.87640', '-112.13480'), ('Portage', 257, '41.97660', '-112.23780'), ('Riverdale', 7656, '41.17110', '-111.99500'), ('Roy', 32885, '41.16167', '-112.02556'), ('Slaterville', 0, '41.27000', '-112.03000'), ('South Ogden', 14377, '41.18000', '-111.95800'), ('South Weber', 4260, '41.13390', '-111.93490'), ('Sunset', 5204, '41.13870', '-112.02720'), ('Syracuse', 9398, '41.09620', '-112.05740'), ('Tremonton', 5592, '41.68500', '-112.13000'), ('Uintah', 1127, '41.14280', '-111.93380'), ('Warren', 0, '41.28000', '-112.12000'), ('Washakie', 0, '41.95000', '-112.22000'), ('West Haven', 3976, '41.20300', '-112.02627'), ('West Point', 6033, '41.12150', '-112.09710'), ('West Warren', 0, '41.25000', '-112.15000'), ('West Weber', 0, '41.25000', '-112.08000'), ('Willard', 1630, '41.41170', '-112.04400'), ('Wilson', 0, '41.23000', '-112.02000'), ('Woods Cross', 6419, '40.87360', '-111.90900')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ003': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Bluffdale', 4700, '40.47600', '-111.95550'), ('Copperton', 0, '40.57000', '-112.10000'), ('Cottonwood Heights', 27569, '40.61010', '-111.80960'), ('Draper', 25220, '40.49940', '-111.86370'), ('Erda', 2473, '40.61000', '-112.32180'), ('Faust', 0, '40.18000', '-112.38000'), ('Grantsville', 6015, '40.59000', '-112.46750'), ('Herriman', 1523, '40.52000', '-112.03000'), ('Holladay', 14561, '40.67000', '-111.82000'), ('Kearns', 33659, '40.65250', '-112.00830'), ('Lake Point', 0, '40.67000', '-112.27000'), ('Lofgreen', 0, '40.02000', '-112.32000'), ('Magna', 22770, '40.70400', '-112.08620'), ('Midvale', 27029, '40.61180', '-111.90230'), ('Murray', 34024, '40.65250', '-111.89250'), ('Riverton', 25011, '40.51970', '-111.94520'), ('Rush Valley', 112, '40.33000', '-112.47000'), ('Salt Lake City', 181743, '40.77730', '-111.87000'), ('Sandy', 85406, '40.56970', '-111.85430'), ('South Jordan', 29437, '40.55880', '-111.97320'), ('South Salt Lake', 22038, '40.71020', '-111.88680'), ('Stansbury Park', 2385, '40.63800', '-112.30340'), ('Stockton', 443, '40.45270', '-112.36200'), ('Sugarhouse', 0, '40.72578', '-111.86522'), ('Taylorsville', 57439, '40.67000', '-111.93000'), ('Tooele', 22502, '40.53650', '-112.30140'), ('University Of Utah', 0, '40.78000', '-111.83000'), ('Vernon', 236, '40.09130', '-112.44980'), ('West Jordan', 68336, '40.59990', '-111.99460'), ('West Valley City', 108896, '40.69090', '-112.00860')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ004': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Alpine', 7146, '40.46030', '-111.77450'), ('American Fork', 21941, '40.38430', '-111.79390'), ('Cedar Hills', 2500, '40.41412', '-111.75854'), ('Elberta', 278, '39.95000', '-111.95000'), ('Fairfield', 0, '40.26000', '-112.02000'), ('Genola', 965, '39.99000', '-111.85000'), ('Goshen', 874, '39.95180', '-111.90090'), ('Highland', 8172, '40.42160', '-111.78880'), ('Lehi', 19028, '40.40230', '-111.85430'), ('Levan', 688, '39.55680', '-111.86020'), ('Lindon', 8363, '40.34130', '-111.71660'), ('Mapleton', 5809, '40.12170', '-111.57300'), ('Mona', 850, '39.81540', '-111.85750'), ('Nephi', 4733, '39.71080', '-111.82880'), ('Orem', 84324, '40.29820', '-111.69810'), ('Payson', 12716, '40.03390', '-111.72810'), ('Pleasant Grove', 23468, '40.37040', '-111.73330'), ('Provo', 105166, '40.24710', '-111.65970'), ('Salem', 4372, '40.05230', '-111.67160'), ('Santaquin', 4834, '39.97480', '-111.78360'), ('Saratoga Springs', 3119, '40.34912', '-111.90466'), ('Spanish Fork', 20246, '40.11430', '-111.63420'), ('Springville', 20424, '40.16490', '-111.61450')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ005': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Bonneville Salt Flats', 0, '40.83021', '-113.81043'), ('Bothwell', 0, '41.72000', '-112.27000'), ('Clive', 0, '40.68000', '-113.08000'), ('Curlew Junction', 0, '41.97000', '-113.05000'), ('Delle', 0, '40.77000', '-112.78000'), ('Dugway', 1761, '40.25000', '-112.75050'), ('Etna', 0, '41.67000', '-113.97000'), ('Garland', 1943, '41.73680', '-112.14900'), ('Grouse Creek', 0, '41.72000', '-113.88000'), ('Gunnison Island', 0, '41.32012', '-112.85032'), ('Hat Island', 0, '41.07049', '-112.58552'), ('Ibapah', 0, '40.03000', '-113.98000'), ('Knolls', 0, '40.72000', '-113.28000'), ('Lakeside', 0, '41.21000', '-112.88000'), ('Locomotive Springs', 0, '41.70992', '-112.92276'), ('Lucin', 0, '41.35000', '-113.92000'), ('Lynn', 0, '41.88000', '-113.73000'), ('Park Valley', 0, '41.82000', '-113.33000'), ('Penrose', 0, '41.65000', '-112.30000'), ('Promontory', 0, '41.62000', '-112.57000'), ('Rosette', 0, '41.82000', '-113.42000'), ('Snowville', 177, '41.96980', '-112.71470'), ('Standrod', 0, '41.98000', '-113.42000'), ('Thatcher', 0, '41.70000', '-112.30000'), ('Wendover', 1537, '40.74000', '-114.02300'), ('Yost', 0, '41.97000', '-113.55000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ006': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Charleston', 336, '40.46550', '-111.46790'), ('Coalville', 1382, '40.91760', '-111.39440'), ('Croydon', 0, '41.07000', '-111.52000'), ('Deer Creek State Park', 0, '40.41945', '-111.50769'), ('Echo', 0, '40.97000', '-111.45000'), ('Eden', 0, '41.30000', '-111.82000'), ('Francis', 698, '40.61220', '-111.27530'), ('Hailstone', 0, '40.60000', '-111.40000'), ('Heber City', 4782, '40.50180', '-111.40150'), ('Henefer', 684, '41.01920', '-111.49280'), ('Hoytsville', 0, '40.87000', '-111.38000'), ('Huntsville', 649, '41.25990', '-111.77270'), ('Jordanelle Reservoir', 0, '40.61956', '-111.40930'), ('Kamas', 1274, '40.64330', '-111.27370'), ('Kimball Junction', 0, '40.73000', '-111.55000'), ('Liberty', 0, '41.33000', '-111.87000'), ('Marion', 0, '40.67000', '-111.28000'), ('Midway', 2121, '40.51450', '-111.47450'), ('Morgan', 2635, '41.04960', '-111.68270'), ('Mountain Green', 0, '41.15500', '-111.80000'), ('Oakley', 948, '40.72210', '-111.28760'), ('Park City', 7371, '40.65640', '-111.49300'), ('Peoa', 0, '40.72000', '-111.33000'), ('Peterson', 0, '41.12000', '-111.74500'), ('Portersville', 0, '40.98000', '-111.68000'), ('Richville', 0, '41.01500', '-111.69500'), ('Rockport Reservoir', 0, '40.76000', '-111.39000'), ('Snyderville', 0, '40.68000', '-111.53000'), ('Stoddard', 0, '41.07000', '-111.69400'), ('Wallsburg', 274, '40.38690', '-111.42090'), ('Wanship', 0, '40.80000', '-111.40000'), ('Woodland', 335, '40.58134', '-111.22712')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ007': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Beaver Mtn', 0, '41.96000', '-111.55000'), ('Castle Rock', 0, '41.13000', '-111.17000'), ('Causey Reservoir', 0, '41.29800', '-111.58702'), ('Echo Reservoir', 0, '40.95467', '-111.43454'), ('Emory', 0, '41.08000', '-111.32000'), ('Garden City', 357, '41.93410', '-111.40970'), ('Laketown', 188, '41.82230', '-111.31770'), ('Lakota', 0, '41.98000', '-111.40000'), ('Mantua Reservoir', 665, '41.50280', '-111.93240'), ('Meadowville', 0, '41.85000', '-111.40000'), ('Nordic Valley', 0, '41.36000', '-111.79000'), ('Parleys Summit', 0, '40.74567', '-111.62000'), ('Pickelville', 0, '41.92000', '-111.38000'), ('Pineview Reservoir', 0, '41.24984', '-111.83765'), ('Powder Mountain', 0, '41.39000', '-111.75000'), ('Randolph', 483, '41.66450', '-111.18270'), ('Snowbasin', 0, '41.22000', '-111.83000'), ('Wahsatch', 0, '41.20000', '-111.10000'), ('Woodruff', 194, '41.52290', '-111.16360')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ008': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Alta', 370, '40.57910', '-111.61910'), ('Brighton', 0, '40.60000', '-111.56000'), ('Mt Timpanogos', 0, '40.38000', '-111.69500'), ('Snowbird', 0, '40.57000', '-111.65000'), ('Sundance', 0, '40.37000', '-111.57000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ009': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Kings Peak', 0, '40.78000', '-110.38000'), ('Moon Lake', 0, '40.57600', '-110.50603'), ('Trial Lk', 0, '40.68000', '-111.02000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ010': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Birdseye', 0, '39.92000', '-111.55000'), ('Castle Gate', 0, '39.73000', '-110.88000'), ('Clear Creek', 0, '39.65000', '-111.15000'), ('Coal City', 0, '39.67000', '-111.02000'), ('Colton', 0, '39.85000', '-111.02000'), ('East Carbon', 1270, '39.55000', '-110.38330'), ('Hiawatha', 45, '39.49620', '-111.02900'), ('Kenilworth', 0, '39.68000', '-110.80000'), ('Scofield Reservoir', 43, '39.72500', '-111.16120'), ('Soldier Summit', 0, '39.93000', '-111.08000'), ('Strawberry Reservoir', 0, '40.14000', '-111.13000'), ('Sunnyside', 404, '39.55220', '-110.40010'), ('Wattis', 0, '39.53000', '-111.02000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ011': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Altamont', 178, '40.35860', '-110.28630'), ('Altonah', 0, '40.40000', '-110.30000'), ('Arcadia', 0, '40.23000', '-110.23000'), ('Bridgeland', 0, '40.17000', '-110.23000'), ('Cedarview', 0, '40.37000', '-110.05000'), ('Duchesne', 1408, '40.17540', '-110.39250'), ('Fruitland', 0, '40.22000', '-110.83000'), ('Hanna', 0, '40.40000', '-110.77000'), ('Mountain Home', 0, '40.40000', '-110.38000'), ('Myton', 539, '40.19350', '-110.06180'), ('Neola', 533, '40.44030', '-110.03670'), ('Roosevelt', 4299, '40.29550', '-110.00000'), ('Tabiona', 149, '40.35390', '-110.70860'), ('Talmage', 0, '40.33000', '-110.43000'), ('Upalco', 0, '40.28000', '-110.22000'), ('Utahn', 0, '40.27000', '-110.43000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ012': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Castle Dale', 1657, '39.22140', '-111.01980'), ('Clawson', 153, '39.13290', '-111.09720'), ('Cleveland', 508, '39.34900', '-110.85650'), ('Elmo', 368, '39.38880', '-110.81550'), ('Emery', 308, '38.92530', '-111.25060'), ('Ferron', 1623, '39.09070', '-111.13230'), ('Helper', 2025, '39.68970', '-110.85910'), ('Huntington', 2131, '39.33110', '-110.96290'), ('Molen', 0, '39.08000', '-111.08000'), ('Moore', 0, '38.97000', '-111.15000'), ('Orangeville', 1398, '39.23130', '-111.05890'), ('Price', 8402, '39.60170', '-110.82000'), ('Wellington', 1666, '39.53790', '-110.73740')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ013': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Caineville', 0, '38.33000', '-111.02000'), ('Capitol Reef National Park', 0, '38.28000', '-111.20000'), ('Elgin', 0, '38.98803', '-110.14541'), ('Fruita', 0, '38.28000', '-111.25000'), ('Goblin Valley', 0, '38.54000', '-110.70000'), ('Green River', 973, '38.99525', '-110.16102'), ('Hanksville', 0, '38.36670', '-110.71670'), ('Woodside', 0, '39.26621', '-110.34900')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ014': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Annabella', 603, '38.70620', '-112.05750'), ('Aurora', 947, '38.92040', '-111.93240'), ('Axtell', 0, '39.05000', '-111.82000'), ('Centerfield', 766, '39.12760', '-111.81720'), ('Elsinore', 733, '38.68390', '-112.14890'), ('Ephraim', 4505, '39.35970', '-111.58440'), ('Fairview', 1160, '39.63050', '-111.43540'), ('Fountain Green', 945, '39.62770', '-111.63860'), ('Glenwood', 437, '38.76240', '-111.98860'), ('Gunnison', 1298, '39.15830', '-111.81260'), ('Indianola', 0, '39.80000', '-111.48000'), ('Joseph', 269, '38.62510', '-112.22000'), ('Manti', 3040, '39.26690', '-111.63640'), ('Mayfield', 420, '39.11620', '-111.70730'), ('Milburn', 0, '39.70420', '-111.42500'), ('Mills', 0, '39.48000', '-112.05000'), ('Monroe', 1845, '38.62430', '-112.11950'), ('Moroni', 1280, '39.52810', '-111.58230'), ('Mount Pleasant', 2707, '39.54170', '-111.45560'), ('Redmond', 788, '39.00530', '-111.86450'), ('Richfield', 6847, '38.76600', '-112.08500'), ('Salina', 2393, '38.94910', '-111.85920'), ('Scipio', 290, '39.24760', '-112.10200'), ('Sevier', 0, '38.58000', '-112.25000'), ('Sigurd', 430, '38.85040', '-111.96540'), ('Spring City', 956, '39.48020', '-111.49050'), ('Sterling', 235, '39.19430', '-111.69090'), ('Yuba Lake State Park', 0, '39.36000', '-112.02000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ015': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Abraham', 0, '39.40000', '-112.72000'), ('Black Rock', 0, '38.72000', '-112.97000'), ('Callao', 0, '39.90000', '-113.72000'), ('Delta', 3209, '39.35330', '-112.56570'), ('Desert Range Exp Station', 0, '38.59496', '-113.74859'), ('Eureka', 766, '39.95500', '-112.11560'), ('Fillmore', 2253, '38.96770', '-112.33680'), ('Fish Springs Wildlife Refuge', 0, '39.85800', '-113.36776'), ('Flowell', 0, '38.98000', '-112.43000'), ('Gandy', 0, '39.45000', '-113.98000'), ('Garrison', 0, '38.93000', '-114.03000'), ('Greenwood', 0, '39.12000', '-112.35000'), ('Hatton', 0, '38.83000', '-112.47000'), ('Hinckley', 698, '39.33240', '-112.67280'), ('Holden', 400, '39.09990', '-112.26890'), ('Jericho', 0, '39.75000', '-112.17000'), ('Kanosh', 485, '38.80460', '-112.43830'), ('Kings Canyon', 0, '39.08000', '-113.64000'), ('Leamington', 217, '39.53100', '-112.28930'), ('Little Sahara State Park', 0, '39.72000', '-112.23000'), ('Lynndyl', 134, '39.50810', '-112.38900'), ('Mc Cornick', 0, '39.22000', '-112.42000'), ('Meadow', 254, '38.88680', '-112.40590'), ('Oak City', 650, '39.37610', '-112.33600'), ('Partoun', 0, '39.65000', '-113.90000'), ('Sugarville', 0, '39.47000', '-112.65000'), ('Sutherland', 0, '39.38000', '-112.63000'), ('Tintic Junction', 0, '39.92000', '-112.17000'), ('Trout Creek', 0, '39.70000', '-113.83330')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ016': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Adamsville', 0, '38.25000', '-112.80000'), ('Beaver', 2454, '38.27900', '-112.63980'), ('Cedar City', 20527, '37.67500', '-113.07000'), ('Enoch', 3467, '37.76220', '-113.04200'), ('Enterprise', 936, '37.57040', '-113.71460'), ('Hamilton Fort', 0, '37.63000', '-113.13000'), ('Hamlin Valley', 0, '37.99830', '-113.96900'), ('Indian Peak Management Range', 0, '38.25885', '-113.83858'), ('Kanarraville', 311, '37.53750', '-113.17940'), ('Kolob Canyon', 0, '37.45359', '-113.22551'), ('Lund', 0, '38.00000', '-113.43000'), ('Milford', 1451, '38.40000', '-113.02010'), ('Minersville', 817, '38.21330', '-112.92410'), ('Modena', 0, '37.80000', '-113.92000'), ('Newcastle', 0, '37.67000', '-113.55000'), ('New Harmony', 190, '37.47840', '-113.30810'), ('Paragonah', 470, '37.88690', '-112.77160'), ('Summit', 0, '37.82000', '-112.97000'), ('Woods Reservoir', 0, '38.35302', '-113.67469')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ019': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Bloomington', 0, '37.05000', '-113.60000'), ('Gunlock', 0, '37.28000', '-113.77000'), ('Hurricane', 8250, '37.15990', '-113.31920'), ('Ivins', 4450, '37.17490', '-113.68450'), ('La Verkin', 3392, '37.20640', '-113.27250'), ('Leeds', 547, '37.23700', '-113.35800'), ('Motoqua', 0, '37.32000', '-114.00000'), ('Pintura', 0, '37.35000', '-113.27000'), ('Rockville', 247, '37.15360', '-113.05940'), ('Santa Clara', 4630, '37.13390', '-113.65130'), ('Snow Canyon State Park', 0, '37.24120', '-113.65890'), ('Springdale', 457, '37.18400', '-112.99910'), ('St George', 49663, '37.08000', '-113.59000'), ('Toquerville', 910, '37.23670', '-113.28550'), ('Veyo', 130, '37.33785', '-113.69321'), ('Virgin', 394, '37.20080', '-113.19850'), ('Washington', 8186, '37.13470', '-113.49350'), ('Zion National Park', 0, '37.25330', '-112.95000')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ020': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Cannonville', 148, '37.56610', '-112.05410'), ('Coral Pink Sand Dunes', 0, '37.03802', '-112.72010'), ('Escalante', 818, '37.76490', '-111.60080'), ('Glendale', 355, '37.33210', '-112.60070'), ('Henrieville', 159, '37.56460', '-111.99460'), ('Hildale', 1895, '37.00820', '-112.96810'), ('Kanab', 3564, '37.03500', '-112.52000'), ('Kodachrome Basin State Park', 0, '37.50014', '-112.00340'), ('Mt Carmel', 0, '37.23000', '-112.67000'), ('Orderville', 596, '37.27620', '-112.63260'), ('Tropic', 508, '37.62460', '-112.08770')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ021': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Big Water', 417, '37.06850', '-111.66160'), ('Bullfrog', 0, '37.50000', '-110.72000'), ('Dangling Rope Marina', 0, '37.12121', '-111.07982'), ('Hite Marina', 0, '37.90000', '-110.39000'), ('Ticaboo', 0, '37.60000', '-110.68000')], 'partOfState': 'southeast', 'wfo': 'SLC'}, +'UTZ022': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Aneth', 598, '37.22000', '-109.18000'), ('Blanding', 3162, '37.62470', '-109.48010'), ('Bluff', 320, '37.28000', '-109.57000'), ('Goulding', 0, '37.00000', '-110.18000'), ('Hovenweep National Monument', 0, '37.38722', '-109.07956'), ('Mexican Hat', 88, '37.12860', '-109.91550'), ('Montezuma Creek', 507, '37.26010', '-109.31330'), ('Navajo Mountain Trading Post', 379, '37.01670', '-110.81670'), ('Oljeto', 0, '37.03000', '-110.33000'), ('Red Mesa', 0, '37.00000', '-109.36670')], 'partOfState': 'southeast', 'wfo': 'GJT'}, +'UTZ023': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Manila', 308, '40.99280', '-109.72040')], 'partOfState': 'northeast', 'wfo': 'GJT'}, +'UTZ024': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Ballard', 566, '40.28430', '-109.94700'), ('Fort Duchesne', 621, '40.27820', '-109.87100'), ('Maeser', 2855, '40.47360', '-109.58090'), ('Naples', 1300, '40.42980', '-109.49100'), ('Randlett', 224, '40.23060', '-109.82770'), ('Vernal', 7714, '40.45200', '-109.53550'), ('Whiterocks', 341, '40.47290', '-109.94300')], 'partOfState': 'northeast', 'wfo': 'GJT'}, +'UTZ025': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [], 'partOfState': 'east central', 'wfo': 'GJT'}, +'UTZ027': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Arches National Park', 0, '38.70831', '-109.56317'), ('Castle Valley', 349, '38.63260', '-109.39940'), ('Cisco', 20, '38.96560', '-109.32101'), ('Moab', 4779, '38.57250', '-109.54710')], 'partOfState': 'east central', 'wfo': 'GJT'}, +'UTZ028': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Eastland', 0, '37.80000', '-109.15000'), ('La Sal', 339, '38.33000', '-109.18000'), ('La Sal Junction', 0, '38.32000', '-109.38000'), ('Monticello', 1958, '37.87150', '-109.33550'), ('Summit Point', 0, '38.05000', '-109.12000'), ('Ucolo', 0, '37.86132', '-109.06500')], 'partOfState': 'southeast', 'wfo': 'GJT'}, +'UTZ029': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Canyonlands National Park', 0, '38.40000', '-109.88000'), ('Dead Horse Point State Park', 0, '38.47100', '-109.73900'), ('Fry Canyon', 0, '37.63000', '-110.15000')], 'partOfState': 'southeast', 'wfo': 'GJT'}, +'UTZ517': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Burrville', 0, '38.57000', '-111.87000'), ('Cove Fort', 0, '38.60000', '-112.58000'), ('Fish Lake', 0, '38.54950', '-111.71030'), ('Fremont Junction', 0, '38.75000', '-111.40000'), ('Koosharem', 276, '38.51150', '-111.88030')], 'partOfState': '', 'wfo': 'SLC'}, +'UTZ518': {'fullStateName': 'Utah', 'state': 'UT', 'cities': [('Alton', 134, '37.43880', '-112.48320'), ('Angle', 0, '38.25000', '-111.97000'), ('Antimony', 122, '38.10090', '-111.98360'), ('Beaver Dam', 0, '37.50500', '-114.05000'), ('Bicknell', 353, '38.34140', '-111.54470'), ('Boulder', 126, '37.92900', '-111.42780'), ('Brian Head', 118, '37.69840', '-112.84170'), ('Bryce Canyon National Park', 0, '37.67000', '-112.17000'), ('Circleville', 505, '38.16340', '-112.26180'), ('Fremont', 0, '38.45000', '-111.62000'), ('Goldstrike', 0, '37.38000', '-113.90000'), ('Greenwich', 0, '38.43000', '-111.92000'), ('Hatch', 127, '37.65240', '-112.43260'), ('Hillsdale', 0, '37.72000', '-112.38000'), ('Junction', 177, '38.23840', '-112.22410'), ('Kingston', 142, '38.20500', '-112.17920'), ('Loa', 525, '38.40290', '-111.64320'), ('Long Valley Junction', 0, '37.48900', '-112.51300'), ('Lyman', 234, '38.39620', '-111.58820'), ('Manderfield', 0, '38.35000', '-112.63000'), ('Marysvale', 381, '38.43770', '-112.25810'), ('Panguitch', 1623, '37.82370', '-112.43770'), ('Parowan', 2565, '37.83220', '-112.82010'), ('Pine Valley', 0, '37.42000', '-113.50000'), ('Pinto', 0, '37.53330', '-113.51670'), ('Rubys Inn', 0, '37.70000', '-112.16000'), ('Teasdale', 0, '38.28000', '-111.47000'), ('Torrey', 171, '38.30160', '-111.41920')], 'partOfState': '', 'wfo': 'SLC'}, +'VAZ001': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Cumberland Gap', 210, '36.60280', '-83.66530'), ('Dryden', 1253, '36.77560', '-82.94310'), ('Ewing', 436, '36.63470', '-83.43220'), ('Jasper', 62, '36.76640', '-82.82420'), ('Jonesville', 995, '36.68820', '-83.11550'), ('Pattonsville', 1781, '36.69560', '-82.94310'), ('Pennington Gap', 1781, '36.75960', '-83.02890'), ('Rose Hill', 15058, '36.69060', '-83.28920'), ('St. Charles', 159, '36.80390', '-83.05790')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAZ002': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Appalachia', 1839, '36.90880', '-82.78700'), ('Big Stone Gap', 4856, '36.86000', '-82.77790'), ('Coeburn', 1996, '36.94570', '-82.46930'), ('Norton', 3904, '36.93130', '-82.62610'), ('Pardee', 1839, '37.00530', '-82.75250'), ('Pound', 1089, '37.12470', '-82.60750'), ('St. Paul', 1000, '36.90550', '-82.31030'), ('Wise', 3255, '36.97730', '-82.58040')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAZ003': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Breaks Interstate', 813, '37.29030', '-82.29520'), ('Clintwood', 1549, '37.15060', '-82.45620'), ('Haysi', 186, '37.20510', '-82.29310'), ('John Flannagan Lake', 186, '37.23320', '-82.34520')], 'partOfState': '', 'wfo': 'RLX'}, +'VAZ004': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Davenport', 989, '37.10060', '-82.13710'), ('Grundy', 1105, '37.27680', '-82.10000'), ('Hurley', 1105, '37.42030', '-82.02020'), ('Vansant', 989, '37.23060', '-82.08960')], 'partOfState': '', 'wfo': 'RLX'}, +'VAZ005': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Clinchport', 77, '36.67930', '-82.74500'), ('Duffield', 62, '36.71990', '-82.79780'), ('Dungannon', 317, '36.82840', '-82.46760'), ('Fort Blackmore', 2159, '36.77000', '-82.58780'), ('Gate City', 2159, '36.63860', '-82.58120'), ('Hiltons', 10953, '36.65280', '-82.46780'), ('Nickelsville', 448, '36.75130', '-82.41630'), ('Weber City', 1377, '36.62240', '-82.56030')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAZ006': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Castlewood', 2036, '36.87830', '-82.28720'), ('Cleveland', 148, '36.94360', '-82.15250'), ('Collingwood', 448, '36.73580', '-82.32670'), ('Dye', 2593, '37.06670', '-81.92670'), ('Hansonville', 3273, '36.82110', '-82.14860'), ('Honaker', 945, '37.01620', '-81.97720'), ('Lebanon', 3273, '36.89940', '-82.07850'), ('Rosedale', 945, '36.95610', '-81.93310')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAZ007': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amonate', 1081, '37.18330', '-81.65000'), ('Asberrys', 4206, '37.01670', '-81.55000'), ('Bandy', 1085, '37.15000', '-81.71670'), ('Bluefield', 5078, '37.23690', '-81.26610'), ('Boissevain', 441, '37.28330', '-81.38330'), ('Burkes Garden', 5078, '37.10000', '-81.35000'), ('Cedar Bluff', 1085, '37.08680', '-81.76390'), ('Claypool Hill', 1719, '37.06510', '-81.75600'), ('Cliffield', 1719, '37.10000', '-81.66670'), ('Glen Burke', 2593, '37.15000', '-81.85000'), ('Gratton', 4206, '37.13330', '-81.41670'), ('Jewell Ridge', 4144, '37.18330', '-81.80000'), ('Pocahontas', 441, '37.30580', '-81.34320'), ('Raven', 2593, '37.09420', '-81.86200'), ('Richlands', 4144, '37.09520', '-81.80230'), ('Tazewell', 4206, '37.11670', '-81.51670'), ('Tiptop', 4206, '37.20000', '-81.43330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ008': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Abingdon', 7780, '36.70890', '-81.96930'), ('Benhams', 17367, '36.67690', '-82.21940'), ('Bristol VA', 17367, '36.61320', '-82.16810'), ('Damascus', 981, '36.63280', '-81.78930'), ('Emory-Meadow View', 2266, '36.77320', '-81.84640'), ('Glade Spring', 1374, '36.79040', '-81.77210'), ('Hilander Park', 3273, '36.65511', '-82.08200'), ('Holston', 3273, '36.77733', '-82.08300'), ('Konnarock', 1457, '36.66420', '-81.63940'), ('Lindell', 2266, '36.80280', '-81.90170')], 'partOfState': 'southwest', 'wfo': 'MRX'}, +'VAZ009': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adwolf', 1457, '36.78910', '-81.58850'), ('Allison Gap', 2204, '36.90000', '-81.76670'), ('Atkins', 1138, '36.86670', '-81.41670'), ('Broadford', 2204, '36.91670', '-81.66670'), ('Chilhowie', 1827, '36.80010', '-81.68400'), ('Marion', 6349, '36.83330', '-81.50000'), ('Marion Wytheville', 1138, '36.90000', '-81.35000'), ('Nebo', 1138, '36.93330', '-81.43330'), ('Quarry', 2204, '36.85000', '-81.75000'), ('Saltville', 2204, '36.87500', '-81.76280'), ('Sugar Grove', 741, '36.76670', '-81.40000'), ('Thomas Bridge', 1457, '36.76670', '-81.56670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ010': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bastian', 12756, '37.15000', '-81.15000'), ('Bland', 7804, '37.10000', '-81.11670'), ('Ceres', 1350, '37.01670', '-81.35000'), ('Clear Fork', 12756, '37.21670', '-81.20000'), ('Hicksville', 12756, '37.18330', '-81.13330'), ('Kimberling', 165, '37.16670', '-81.03330'), ('Long Spur', 9473, '37.10000', '-80.95000'), ('Mechanicsburg', 165, '37.15000', '-80.95000'), ('Rocky Gap', 12756, '37.23330', '-81.10000'), ('Suiter', 5078, '37.11670', '-81.21670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ011': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bane', 2729, '37.26670', '-80.71670'), ('Chapel', 165, '37.28330', '-80.93330'), ('Eggleston', 1134, '37.28330', '-80.63330'), ('Glen Lyn', 151, '37.37160', '-80.85920'), ('Interior', 1134, '37.41670', '-80.60000'), ('Kimballton', 2729, '37.36670', '-80.68330'), ('Kire', 1134, '37.43330', '-80.53330'), ('Mountain Lake', 1134, '37.35000', '-80.55000'), ('Narrows', 2111, '37.33330', '-80.81670'), ('Newport', 39573, '37.28330', '-80.50000'), ('Pearisburg', 2729, '37.31670', '-80.73330'), ('Pembroke', 1134, '37.32180', '-80.63660'), ('Poplar Hill', 2729, '37.21670', '-80.73330'), ('Rich Creek', 665, '37.38330', '-80.83330'), ('Thessalia', 2111, '37.25000', '-80.80000'), ('White Gate', 2111, '37.20000', '-80.85000')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ012': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Coleman Store', 7804, '36.88330', '-80.98330'), ('Cripple Creek', 7804, '36.81670', '-81.10000'), ('Crockett', 1350, '36.88330', '-81.18330'), ('Favonia', 7804, '36.96670', '-81.18330'), ('Grahams Forge', 9473, '36.93330', '-80.86670'), ('Gunton Park', 9473, '37.00000', '-80.88330'), ('Ivanhoe', 614, '36.83330', '-80.95000'), ('Max Meadows', 512, '36.96670', '-80.93330'), ('Patterson', 2607, '36.88330', '-80.78330'), ('Rural Retreat', 1350, '36.90000', '-81.26670'), ('Speedwell', 1350, '36.81670', '-81.16670'), ('Wytheville', 7804, '36.95000', '-81.08330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ013': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Allisonia', 9473, '36.93330', '-80.73330'), ('Draper', 9473, '37.00000', '-80.76670'), ('Dublin', 2288, '37.11670', '-80.70000'), ('Fairlawn', 2211, '37.15130', '-80.55950'), ('Graysontown', 15859, '37.05000', '-80.56670'), ('Mc Coy', 1134, '37.23330', '-80.61670'), ('Parrott', 2211, '37.21670', '-80.63330'), ('Pulaski', 9473, '37.05000', '-80.80000')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ014': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Blacksburg', 39573, '37.23330', '-80.41670'), ('Childress', 15859, '37.06670', '-80.51670'), ('Christiansburg', 16947, '37.14170', '-80.40270'), ('Crockett Springs', 1029, '37.10000', '-80.26670'), ('Elliston', 1241, '37.21670', '-80.23330'), ('Elliston-Lafayette', 1241, '37.22300', '-80.21570'), ('Mc Donalds Mill', 1241, '37.30000', '-80.28330'), ('Merrimac', 1751, '37.19060', '-80.42580'), ('Pilot', 16947, '37.05000', '-80.36670'), ('Prices Fork', 39573, '37.21670', '-80.50000'), ('Radford', 15859, '37.13330', '-80.56670'), ('Shawsville', 1029, '37.16670', '-80.26670'), ('Walton', 2211, '37.16670', '-80.53330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ015': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Baywood', 614, '36.61670', '-81.01670'), ('Bridle Creek', 971, '36.61670', '-81.25000'), ('Comers Rock', 1350, '36.75000', '-81.25000'), ('Elk Creek', 971, '36.71670', '-81.18330'), ('Flatridge', 174, '36.73330', '-81.31670'), ('Fries', 614, '36.71610', '-80.97900'), ('Independence', 971, '36.61670', '-81.15000'), ('Mouth Of Wilson', 174, '36.58330', '-81.33330'), ('Rugby', 174, '36.61670', '-81.45000'), ('Spring Valley', 614, '36.73330', '-81.06670'), ('Troutdale', 174, '36.70000', '-81.43330'), ('Volney', 174, '36.61670', '-81.38330'), ('Whitetop', 171, '36.60000', '-81.61670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ016': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Byllesby', 614, '36.78330', '-80.93330'), ('Cana', 1228, '36.58330', '-80.66670'), ('Dugspur', 2607, '36.81670', '-80.61670'), ('Fancy Gap', 260, '36.66670', '-80.70000'), ('Galax City', 6837, '36.66670', '-80.91670'), ('Galax Hillsville Airport', 2249, '36.76670', '-80.81670'), ('Gladesboro', 2607, '36.71670', '-80.65000'), ('Hillsville', 2607, '36.76670', '-80.73330'), ('Lambsburg', 1228, '36.58330', '-80.76670'), ('Laurel Fork', 1812, '36.71670', '-80.51670'), ('Pipers Gap', 6837, '36.65000', '-80.83330'), ('Sylvatus', 2607, '36.86670', '-80.76670'), ('Woodlawn', 2249, '36.71670', '-80.81670')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ017': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alum Ridge', 432, '36.93330', '-80.46670'), ('Check', 1029, '37.05000', '-80.18330'), ('Copper Hill', 1029, '37.08330', '-80.13330'), ('Copper Valley', 15859, '36.98330', '-80.53330'), ('Floyd', 432, '36.91670', '-80.31670'), ('Indian Valley', 15859, '36.91670', '-80.55000'), ('Terrys Fork', 1029, '37.05000', '-80.26670'), ('Willis', 432, '36.85000', '-80.48330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ018': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Abbott', 179, '37.41670', '-80.15000'), ('Craig Springs', 179, '37.48330', '-80.28330'), ('Huffman', 39573, '37.35000', '-80.41670'), ('Maggie', 39573, '37.43330', '-80.40000'), ('New Castle', 179, '37.50000', '-80.11670'), ('Paint Bank', 179, '37.56670', '-80.28330'), ('Simmonsville', 39573, '37.38330', '-80.36670'), ('Sinking Creek', 179, '37.41670', '-80.28330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ019': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alleghany', 2779, '37.75000', '-80.25000'), ('Callaghan', 6303, '37.80000', '-80.08330'), ('Clifton Forge City', 4289, '37.82350', '-79.82550'), ('Covington City', 6303, '37.78330', '-79.98330'), ('Earlehurst', 2779, '37.66670', '-80.25000'), ('Hollins', 4289, '37.83330', '-79.91670'), ('Iron Gate', 404, '37.79880', '-79.79060'), ('Jordan Mines', 6303, '37.68330', '-80.11670'), ('Longdale Furnace', 404, '37.83330', '-79.71670'), ('Natural Well', 6303, '37.91670', '-79.96670'), ('Potts Creek', 179, '37.61670', '-80.20000')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAZ020': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bacova Junction', 4289, '38.01670', '-79.86670'), ('Burnsville', 158, '38.18330', '-79.65000'), ('Callison', 4289, '37.98330', '-79.90000'), ('Carloover', 4289, '37.91670', '-79.90000'), ('Hot Springs', 4289, '38.00000', '-79.83330'), ('Ingalls Field', 4289, '37.95000', '-79.83330'), ('Millboro', 406, '37.96670', '-79.60000'), ('Mountain Grove', 1148, '38.10000', '-79.88330'), ('Nimrod Hall', 406, '37.95000', '-79.63330'), ('Warm Springs', 4289, '38.05000', '-79.78330'), ('Yost', 406, '38.05000', '-79.53330')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAZ022': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bent Mountain', 1241, '37.15000', '-80.11670'), ('Bradshaw', 1241, '37.30000', '-80.23330'), ('Catawba', 24747, '37.38330', '-80.11670'), ('Cave Spring', 24941, '37.22380', '-80.00760'), ('Glenvar', 1241, '37.26670', '-80.15000'), ('Hollins', 14309, '37.34290', '-79.95350'), ('Poages Mill', 24941, '37.20000', '-80.05000'), ('Roanoke', 94911, '37.27840', '-79.95840'), ('Roanoke Airport', 14309, '37.33330', '-79.98330'), ('Salem City', 24747, '37.28670', '-80.05640'), ('Vinton', 7782, '37.27310', '-79.88840')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAZ023': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arcadia', 1233, '37.55000', '-79.63330'), ('Blue Ridge', 3188, '37.38330', '-79.81670'), ('Buchanan', 1233, '37.51670', '-79.68330'), ('Cloverdale', 2986, '37.36670', '-79.91670'), ('Daleville', 1454, '37.41670', '-79.91670'), ('Eagle Rock', 359, '37.63330', '-79.80000'), ('Fincastle', 359, '37.49860', '-79.87550'), ('Gala', 404, '37.68330', '-79.81670'), ('Glen Wilton', 404, '37.75000', '-79.81670'), ('Laymantown', 2034, '37.36570', '-79.85790'), ('Lithia', 1233, '37.48330', '-79.75000'), ('Nace', 432, '37.43330', '-79.85000'), ('Oriskany', 359, '37.61670', '-79.98330'), ('Springwood', 1233, '37.55000', '-79.75000'), ('Troutville', 432, '37.41360', '-79.87800')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAZ024': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bells Valley', 406, '38.03330', '-79.45000'), ('Brownsburg', 979, '37.93330', '-79.31670'), ('Buena Vista City', 6349, '37.73330', '-79.36670'), ('Collierstown', 6867, '37.76670', '-79.58330'), ('Cornwall', 6349, '37.80000', '-79.30000'), ('Fairfield', 6349, '37.88330', '-79.30000'), ('Glasgow', 1046, '37.63330', '-79.45000'), ('Goshen', 406, '37.98330', '-79.50000'), ('Natural Bridge', 1046, '37.63330', '-79.55000'), ('Rockbridge Baths', 6867, '37.90000', '-79.41670'), ('Vesuvius', 8367, '37.90000', '-79.20000')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAZ025': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Christian', 23853, '38.18220', '-79.22780'), ('Churchville', 23853, '38.22610', '-79.16250'), ('Craigsville', 979, '38.08100', '-79.38440'), ('Crimora', 1796, '38.16070', '-78.83930'), ('Deerfield', 979, '38.19640', '-79.40690'), ('Greenville', 886, '38.00330', '-79.15610'), ('Hermitage', 3230, '38.14140', '-78.91440'), ('Mint Spring', 1037, '38.07440', '-79.10110'), ('Moscow', 5203, '38.31690', '-79.08920'), ('Sangerville', 5203, '38.38860', '-79.08360'), ('Sherando', 665, '37.98110', '-78.95420'), ('Spottswood', 8367, '37.95500', '-79.21390'), ('Staunton', 23853, '38.15880', '-79.06230'), ('Staunton Arpt', 0, '38.27000', '-78.90000'), ('Stuarts Draft', 8367, '38.02560', '-79.02490'), ('Summerdean', 979, '38.07500', '-79.25640'), ('Trimbles Mill', 1037, '38.13530', '-79.21890'), ('Verona', 3638, '38.19980', '-79.00620'), ('Waynesboro', 19520, '38.06950', '-78.90260'), ('West Augusta', 979, '38.27000', '-79.30810')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAZ026': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bridgewater', 5203, '38.38490', '-78.96900'), ('Broadway', 2192, '38.60820', '-78.79590'), ('Cherry Grove', 2192, '38.58670', '-78.87170'), ('Clover Hill', 5203, '38.45190', '-79.03030'), ('Criders', 0, '38.75140', '-79.00440'), ('Dale Enterprise', 921, '38.45440', '-78.93970'), ('Elkton', 2042, '38.41310', '-78.61710'), ('Grottoes', 2114, '38.26810', '-78.82460'), ('Harrisonburg', 40468, '38.43670', '-78.87400'), ('Linville', 40468, '38.52030', '-78.83780'), ('Massanutten', 1945, '38.40960', '-78.73800'), ('Montevideo', 1945, '38.36440', '-78.76970'), ('Mount Crawford', 254, '38.35690', '-78.94100'), ('Rawley Springs', 921, '38.50530', '-79.05670'), ('Rocky Bar', 1945, '38.34360', '-78.70190'), ('Sparkling Springs', 921, '38.55140', '-78.95190'), ('Swift Run', 2042, '38.36830', '-78.58110'), ('Timberville', 1739, '38.63600', '-78.77240'), ('Tunis', 1739, '38.70280', '-78.86750'), ('Yankeetown', 1209, '38.68470', '-78.94810')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAZ027': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alonzaville', 3952, '38.92860', '-78.54670'), ('Basye', 0, '38.80000', '-78.78000'), ('Clary', 4017, '39.02530', '-78.36500'), ('Dilbeck', 255, '38.89580', '-78.36940'), ('Edinburg', 813, '38.82340', '-78.56490'), ('Harmony', 813, '38.87330', '-78.59750'), ('Hawkinstown', 1664, '38.77250', '-78.61330'), ('Jerome', 0, '38.86250', '-78.72890'), ('Kings Crossing', 813, '38.76920', '-78.49890'), ('Mount Clifton', 1664, '38.76140', '-78.71170'), ('Mount Jackson', 1664, '38.74980', '-78.63790'), ('New Market', 1435, '38.64760', '-78.67490'), ('Seven Fountains', 255, '38.86110', '-78.39970'), ('Strasburg', 4017, '38.98850', '-78.35770'), ('Toms Brook', 255, '38.94710', '-78.43990'), ('Woodstock', 3952, '38.87630', '-78.51900')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAZ028': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Albin', 23585, '39.22170', '-78.19890'), ('Armel', 1146, '39.07920', '-78.14390'), ('Cedar Grove', 23585, '39.26810', '-78.18940'), ('Cedar Hill', 0, '39.27640', '-78.11420'), ('Cross Junction', 192, '39.32030', '-78.29360'), ('Gainesboro', 23585, '39.27830', '-78.25940'), ('Gore', 192, '39.26390', '-78.33220'), ('Gravel Springs', 4017, '39.07500', '-78.44060'), ('High View Manor', 1146, '39.16190', '-78.32140'), ('Middletown', 1015, '39.02870', '-78.27790'), ('Rock Enon Springs', 192, '39.21190', '-78.38670'), ('Stephens City', 1146, '39.09690', '-78.22140'), ('Wilde Acres', 192, '39.14690', '-78.40000'), ('Winchester', 23585, '39.17450', '-78.17500')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAZ029': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alma', 1326, '38.59110', '-78.55780'), ('Compton', 4871, '38.78250', '-78.36920'), ('Fairview', 4871, '38.65420', '-78.42940'), ('Hamburg', 4871, '38.65810', '-78.51470'), ('Honeyville', 1326, '38.57860', '-78.56250'), ('Ida', 1326, '38.58890', '-78.42420'), ('Ingham', 1878, '38.52890', '-78.57830'), ('Jollett', 1878, '38.46390', '-78.52420'), ('Kimball', 4871, '38.68690', '-78.40280'), ('Leaksville', 1326, '38.62640', '-78.52640'), ('Luray', 4871, '38.66470', '-78.45530'), ('Newport', 1326, '38.57860', '-78.59670'), ('Panorama', 0, '38.65920', '-78.32170'), ('Pine Grove', 1326, '38.53580', '-78.48030'), ('Rileyville', 4871, '38.76500', '-78.38830'), ('Shenandoah', 1878, '38.48740', '-78.62250'), ('Skyland', 4871, '38.59360', '-78.38220'), ('Stanley', 1326, '38.57910', '-78.50470')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAZ030': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arco', 13589, '38.86000', '-78.17500'), ('Bentonville', 13589, '38.83170', '-78.31670'), ('Blue Mountain', 0, '38.96250', '-78.03940'), ('Browntown', 183, '38.81080', '-78.23390'), ('Buckton', 13589, '38.95530', '-78.25420'), ('Cedarville', 13589, '38.97690', '-78.18440'), ('Front Royal', 13589, '38.92480', '-78.18470'), ('Glen Echo', 13589, '38.85000', '-78.22470'), ('Howellsville', 13589, '38.97470', '-78.07940'), ('Karo', 13589, '38.87190', '-78.25220'), ('Linden', 13589, '38.90890', '-78.07580'), ('Nineveh', 13589, '39.01580', '-78.16530'), ('Reliance', 1015, '39.00640', '-78.25060'), ('Riverside', 13589, '38.90140', '-78.21390')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAZ031': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Berryville', 2963, '39.14960', '-77.98110'), ('Bethel', 426, '39.03080', '-78.04360'), ('Boyce', 426, '39.09300', '-78.05950'), ('Briggs', 426, '39.10780', '-78.01420'), ('Gaylord', 0, '39.18750', '-77.93080'), ('Millwood', 426, '39.06940', '-78.03810'), ('Stringtown', 2963, '39.18810', '-77.97830'), ('Wadesville', 0, '39.24250', '-78.03920'), ('White Post', 426, '39.05690', '-78.10390'), ('Wickliffe', 0, '39.16610', '-77.89250')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAZ032': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ararat', 1812, '36.60000', '-80.51670'), ('Buffalo Ridge', 961, '36.75000', '-80.26670'), ('Charity', 432, '36.81670', '-80.21670'), ('Critz', 961, '36.63330', '-80.15000'), ('Meadows Of Dan', 961, '36.73330', '-80.41670'), ('Penns Store', 2255, '36.60000', '-80.06670'), ('Stuart', 961, '36.63330', '-80.28330'), ('Woolwine', 432, '36.78330', '-80.28330')], 'partOfState': 'southwest', 'wfo': 'RNK'}, +'VAZ033': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Boones Mill', 285, '37.11520', '-79.95070'), ('Burnt Chimney', 4066, '37.10000', '-79.83330'), ('Callaway', 1313, '37.01670', '-80.05000'), ('Endicott', 1313, '36.88330', '-80.15000'), ('Ferrum', 1313, '36.91670', '-80.01670'), ('Oak Level', 1515, '36.81670', '-79.91670'), ('Penhook', 726, '36.98330', '-79.63330'), ('Rocky Mount', 4066, '37.00000', '-79.88330'), ('Snow Creek', 1742, '36.83330', '-79.75000'), ('Sontag', 4066, '36.93330', '-79.80000'), ('Sydnorsville', 4066, '36.86670', '-79.83330'), ('Wirtz', 285, '37.08330', '-79.90000')], 'partOfState': 'west central', 'wfo': 'RNK'}, +'VAZ034': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bedford City', 6299, '37.33780', '-79.52110'), ('Big Island', 1046, '37.53330', '-79.36670'), ('Boonsboro', 8006, '37.45000', '-79.26670'), ('Chamblissburg', 3188, '37.25000', '-79.71670'), ('Coleman Falls', 8006, '37.50000', '-79.33330'), ('Forest', 8006, '37.36670', '-79.28330'), ('Goode', 8006, '37.36670', '-79.38330'), ('Goodview', 7782, '37.21670', '-79.71670'), ('Huddleston', 6299, '37.16670', '-79.48330'), ('Moneta', 6299, '37.18330', '-79.63330'), ('Montvale', 3188, '37.38330', '-79.73330'), ('Sedalia', 1046, '37.48330', '-79.45000'), ('Snowden', 1046, '37.60000', '-79.40000'), ('Stewartsville', 7782, '37.26670', '-79.80000'), ('Thaxton', 6299, '37.35000', '-79.63330')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAZ035': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alto', 6349, '37.76670', '-79.23330'), ('Amherst', 2251, '37.58330', '-79.05000'), ('Clifford', 2251, '37.65000', '-79.03330'), ('Elon', 65269, '37.51670', '-79.20000'), ('Falconerville', 2251, '37.53330', '-79.10000'), ('Forks Of Buffalo', 2251, '37.68330', '-79.18330'), ('Lowesville', 2251, '37.71670', '-79.06670'), ('Madison Heights', 11584, '37.41670', '-79.13330'), ('Naola', 8006, '37.53330', '-79.28330'), ('New Glasgow', 2251, '37.63330', '-78.98330'), ('Oronoco', 6349, '37.73330', '-79.26670'), ('Pleasant View', 6349, '37.61670', '-79.25000'), ('Riverville', 2251, '37.51670', '-78.91670')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAZ036': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Afton', 1307, '38.03220', '-78.83940'), ('Allens Creek', 2251, '37.54670', '-78.86890'), ('Arrington', 0, '37.68390', '-78.90140'), ('Buffalo Springs', 0, '37.60940', '-78.86220'), ('Elma', 0, '37.75360', '-78.79530'), ('Five Forks', 2251, '37.57920', '-78.85890'), ('Greenfield', 19520, '37.92750', '-78.83830'), ('Jonesboro', 0, '37.78330', '-78.97860'), ('Lovingston', 0, '37.77000', '-78.88000'), ('Montebello', 8367, '37.86360', '-79.13810'), ('Norwood', 0, '37.64310', '-78.80920'), ('Piedmont', 2251, '37.61080', '-78.92190'), ('Rockfish', 0, '37.80110', '-78.75580'), ('Roseland', 0, '37.74750', '-78.97610'), ('Schuyler', 0, '37.79220', '-78.69860'), ('Shipman', 0, '37.72360', '-78.83940'), ('Tyro', 0, '37.82140', '-79.00500'), ('Wintergreen', 0, '37.88470', '-78.89970')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAZ037': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alberene', 555, '37.88640', '-78.61670'), ('Barracks', 4710, '38.05740', '-78.51350'), ('Carrsbrook', 5133, '38.09310', '-78.45810'), ('Charlottesville', 45049, '38.03740', '-78.48570'), ('Cobham', 1498, '38.06280', '-78.26830'), ('Covesville', 2820, '37.89000', '-78.70500'), ('Crozet', 2820, '38.06930', '-78.69900'), ('Damon', 555, '37.82280', '-78.65940'), ('Earlysville', 2628, '38.15750', '-78.48310'), ('Esmont', 555, '37.83110', '-78.60750'), ('Flordon', 6900, '38.05580', '-78.55670'), ('Free Union', 4710, '38.15470', '-78.56470'), ('Glendower', 555, '37.83720', '-78.54390'), ('Greenwood', 2820, '38.05560', '-78.77080'), ('Hollymead', 2628, '38.12190', '-78.43960'), ('Ivy', 6900, '38.05640', '-78.59690'), ('Keene', 555, '37.86500', '-78.55560'), ('Keswick', 6852, '38.02250', '-78.35940'), ('North Garden', 6900, '37.94060', '-78.63690'), ('Overton', 45049, '37.95720', '-78.46780'), ('Scottsville', 555, '37.79890', '-78.49340'), ('Shadwell', 5133, '38.01280', '-78.39580'), ('Stony Point', 2628, '38.11280', '-78.37170'), ('Westmoreland', 5133, '38.08640', '-78.45470'), ('White Hall', 2820, '38.11780', '-78.66170'), ('Woodridge', 6852, '37.89690', '-78.43640')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAZ038': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amicus', 476, '38.25560', '-78.48030'), ('Dawsonville', 0, '38.26530', '-78.31530'), ('Fletcher', 476, '38.39280', '-78.43360'), ('Haneytown', 476, '38.29030', '-78.53560'), ('Lydia', 476, '38.33030', '-78.49110'), ('McMullen', 476, '38.34830', '-78.45810'), ('Newtown', 0, '38.23750', '-78.33750'), ('Ruckersville', 0, '38.23000', '-78.37000'), ('Shady Grove', 2042, '38.26030', '-78.59280'), ('Stanardsville', 476, '38.30040', '-78.43830')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAZ039': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aylor', 210, '38.43470', '-78.30220'), ('Big Meadows', 1326, '38.52640', '-78.44000'), ('Criglersville', 210, '38.45780', '-78.30140'), ('Etlan', 0, '38.52530', '-78.26280'), ('Five Forks', 4123, '38.29890', '-78.13560'), ('Fordsville', 9664, '38.40140', '-78.11640'), ('Graves Mill', 210, '38.42250', '-78.36780'), ('Madison', 210, '38.37750', '-78.25930'), ('Madison Mills', 4123, '38.28080', '-78.14110'), ('Nethers', 0, '38.57030', '-78.27810'), ('Oakpark', 210, '38.36670', '-78.16030'), ('Rochelle', 210, '38.29030', '-78.27280'), ('Syria', 210, '38.48780', '-78.32640'), ('Twymans Mill', 4123, '38.31780', '-78.17170'), ('Wolftown', 210, '38.35560', '-78.34780')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAZ040': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amissville', 0, '38.67140', '-77.99580'), ('Castleton', 183, '38.60580', '-78.10690'), ('Chester Gap', 13589, '38.85330', '-78.13530'), ('Five Forks', 183, '38.65000', '-78.16860'), ('Flint Hill', 183, '38.76280', '-78.10030'), ('Fourway', 0, '38.74970', '-78.26830'), ('Hackleys Crossroads', 183, '38.72750', '-78.03140'), ('Rock Mills', 183, '38.65500', '-78.12970'), ('Slate Mills', 0, '38.53140', '-78.18310'), ('Sperryville', 0, '38.67000', '-78.25000'), ('Viewtown', 0, '38.63920', '-78.03970'), ('Washington', 183, '38.71270', '-78.15980'), ('Woodville', 0, '38.60670', '-78.17560')], 'partOfState': 'northwest', 'wfo': 'LWX'}, +'VAZ042': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aldie', 632, '38.97560', '-77.64170'), ('Arcola', 3393, '38.95170', '-77.53440'), ('Ashburn', 3393, '39.04140', '-77.48100'), ('Belmont', 3393, '39.06470', '-77.51030'), ('Bluemont', 500, '39.11110', '-77.83420'), ('Countryside', 8349, '39.05240', '-77.41760'), ('Dulles International Airport', 21655, '38.94440', '-77.45560'), ('Gleedsville', 28311, '39.04920', '-77.60500'), ('Hillsboro', 96, '39.19790', '-77.72450'), ('Hughesville', 562, '39.09970', '-77.66000'), ('Leesburg', 28311, '39.10470', '-77.55610'), ('Lovettsville', 853, '39.27410', '-77.63900'), ('Lucketts', 28311, '39.21560', '-77.53470'), ('Middleburg', 632, '38.97100', '-77.73980'), ('Oak Grove', 20512, '38.98390', '-77.40420'), ('Philomont', 500, '39.05610', '-77.74060'), ('Purcellville', 3584, '39.13800', '-77.71150'), ('Round Hill', 500, '39.13350', '-77.77050'), ('Sterling Park', 20512, '39.00130', '-77.40830'), ('Taylorstown', 853, '39.25420', '-77.57500'), ('Waterford', 562, '39.18670', '-77.61030')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ043': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Axton', 1742, '36.66670', '-79.71670'), ('Bassett', 1338, '36.76670', '-79.98330'), ('Chatmoss', 1742, '36.67950', '-79.80590'), ('Collinsville', 7777, '36.72480', '-79.91200'), ('Fieldale', 929, '36.70310', '-79.94320'), ('Figsboro', 7777, '36.78330', '-79.85000'), ('Horse Pasture', 2255, '36.62960', '-79.94870'), ('Leatherwood', 1742, '36.73330', '-79.75000'), ('Martinsville Airport', 15416, '36.63330', '-79.86670'), ('Martinsville City', 15416, '36.68330', '-79.86670'), ('Mountain Valley', 1742, '36.78330', '-79.70000'), ('Ridgeway', 775, '36.58330', '-79.86670'), ('Sanville', 1338, '36.71670', '-80.06670'), ('Spencer', 2255, '36.61670', '-80.01670'), ('Stanleytown', 1515, '36.75170', '-79.95130'), ('Villa Heights', 1021, '36.69730', '-79.90400')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAZ044': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aiken Summit', 15238, '36.60000', '-79.70000'), ('Ajax', 1257, '36.96670', '-79.56670'), ('Blairs', 48411, '36.68330', '-79.38330'), ('Callands', 1338, '36.81670', '-79.58330'), ('Cascade', 15238, '36.56670', '-79.66670'), ('Chalk Level', 1257, '36.91670', '-79.28330'), ('Chatham', 1338, '36.81670', '-79.40000'), ('Climax', 1338, '36.88330', '-79.48330'), ('Danville Airport', 48411, '36.58330', '-79.33330'), ('Danville City', 48411, '36.58330', '-79.41670'), ('Dry Fork', 1338, '36.75000', '-79.41670'), ('Gretna', 1257, '36.95000', '-79.36670'), ('Hurt', 1276, '37.08330', '-79.28330'), ('Java', 1338, '36.83330', '-79.23330'), ('Keeling', 1338, '36.71670', '-79.30000'), ('Mt Airy', 1257, '36.93330', '-79.20000'), ('Pittsville', 1257, '36.98330', '-79.46670'), ('Ringgold', 48411, '36.60000', '-79.30000'), ('Sago', 1338, '36.88330', '-79.63330'), ('Sandy River', 1742, '36.71670', '-79.65000'), ('Straightstone', 1276, '37.01670', '-79.13330'), ('Swansonville', 1338, '36.73330', '-79.58330'), ('Westover Hills', 48411, '36.60000', '-79.45000')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAZ045': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Altavista', 3425, '37.12350', '-79.28450'), ('Bocock', 11584, '37.36670', '-79.11670'), ('Brookneal', 1259, '37.05000', '-78.96670'), ('Concord', 11584, '37.35000', '-78.98330'), ('Evington', 10683, '37.23330', '-79.28330'), ('Gladys', 1259, '37.16670', '-79.08330'), ('Hat Creek', 1259, '37.11670', '-78.91670'), ('Hodges', 3425, '37.11670', '-79.18330'), ('Leesville', 1276, '37.11670', '-79.38330'), ('Long Island', 1259, '37.08330', '-79.10000'), ('Lynchburg Airport', 10683, '37.33330', '-79.20000'), ('Lynchburg City', 65269, '37.41670', '-79.15000'), ('Mike', 1259, '37.21670', '-78.91670'), ('Rustburg', 1271, '37.28330', '-79.10000'), ('Spring Mills', 1761, '37.23330', '-78.93330'), ('Timberlake', 10683, '37.32320', '-79.24990')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAZ046': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Appomattox', 1761, '37.35880', '-78.82670'), ('Bent Creek', 1761, '37.53330', '-78.83330'), ('Evergreen', 1761, '37.30000', '-78.78330'), ('Hixburg', 201, '37.33330', '-78.66670'), ('Oakville', 1761, '37.43330', '-78.86670'), ('Pamplin City', 201, '37.26670', '-78.68330'), ('Spout Spring', 1761, '37.35000', '-78.91670'), ('Stonewall', 11584, '37.41670', '-78.96670'), ('Tower Hill', 1761, '37.50000', '-78.78330')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAZ047': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Andersonville', 447, '37.46670', '-78.56670'), ('Buckingham', 447, '37.55000', '-78.55000'), ('Centenary', 555, '37.70000', '-78.51670'), ('Dillwyn', 447, '37.54020', '-78.46160'), ('Gold Hill', 447, '37.61670', '-78.36670'), ('New Canton', 49, '37.70000', '-78.30000'), ('Sheppards', 6845, '37.38330', '-78.48330'), ('Toga', 447, '37.50000', '-78.61670'), ('Wingina', 0, '37.63330', '-78.71670')], 'partOfState': 'central', 'wfo': 'RNK'}, +'VAZ048': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Antioch', 555, '37.84650', '-78.42050'), ('Bremo Bluff', 49, '37.71240', '-78.29730'), ('Bybee', 6852, '37.92560', '-78.20580'), ('Carysbrook', 49, '37.81210', '-78.24210'), ('Central Plains', 6852, '37.80380', '-78.33690'), ('Cohasset', 49, '37.76920', '-78.30340'), ('Columbia', 49, '37.75300', '-78.16510'), ('Cunningham', 6852, '37.87400', '-78.32020'), ('Dixie', 49, '37.78150', '-78.23580'), ('Fork Union', 49, '37.76310', '-78.26250'), ('Hardware', 555, '37.74260', '-78.40590'), ('Kents Store', 49, '37.87730', '-78.12860'), ('Lake Monticello', 6852, '37.92310', '-78.33510'), ('Nahor', 6852, '37.90880', '-78.34780'), ('Palmyra', 6852, '37.86060', '-78.26360'), ('Shores', 555, '37.74190', '-78.35870'), ('Stage Junction', 49, '37.79130', '-78.15330'), ('Troy', 6852, '37.94720', '-78.24740'), ('Union Mills', 6852, '37.93920', '-78.30080'), ('Wildwood', 6852, '37.90310', '-78.25720'), ('Wilmington', 49, '37.84910', '-78.20160')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ049': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Apple Grove', 424, '37.89010', '-77.89810'), ('Boswells Tavern', 1498, '38.07070', '-78.18600'), ('Bumpass', 424, '37.96380', '-77.73730'), ('Byrd Mill', 1401, '37.99200', '-78.08220'), ('Cuckoo', 424, '37.95230', '-77.90050'), ('Dabneys', 424, '37.76580', '-77.80020'), ('Ferncliff', 1401, '37.93330', '-78.10960'), ('Fredericks Hall', 424, '37.98580', '-77.82300'), ('Green Springs', 1498, '38.08610', '-78.11260'), ('Gum Spring', 424, '37.77540', '-77.89700'), ('Locust Creek', 424, '37.86730', '-77.78790'), ('Louisa', 1401, '38.01920', '-77.99950'), ('Louisa Airport', 1401, '38.01380', '-77.98090'), ('Mineral', 424, '38.00730', '-77.90660'), ('Orchid', 424, '37.82900', '-77.89540'), ('Pendleton', 424, '37.99470', '-77.89830'), ('Trevilians', 1401, '38.05040', '-78.07370'), ('Vawter Corner', 1401, '38.12900', '-78.01380'), ('Waldrop', 1498, '38.07360', '-78.20190'), ('Wares Crossroads', 424, '38.07960', '-77.87980'), ('Yanceyville', 1401, '37.91650', '-77.98640'), ('Zion Crossroads', 6852, '37.97060', '-78.21940')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ050': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barboursville', 1498, '38.17080', '-78.28190'), ('Burr Hill', 9664, '38.34390', '-77.86000'), ('Eheart', 0, '38.20360', '-78.32330'), ('Everona', 4123, '38.30470', '-77.96750'), ('Flat Run', 0, '38.36470', '-77.76670'), ('Gold Dale', 0, '38.26690', '-77.80610'), ('Gordonsville', 1498, '38.13660', '-78.18810'), ('Lahore', 4123, '38.19860', '-77.96970'), ('Madison Run', 4123, '38.19670', '-78.13060'), ('Nasons', 4123, '38.25500', '-78.02690'), ('Old Somerset', 1498, '38.22360', '-78.22030'), ('Orange', 4123, '38.24700', '-78.11140'), ('Thornhill', 1401, '38.15420', '-77.96830'), ('Unionville', 4123, '38.25970', '-77.96860'), ('Verdiersville', 4123, '38.27170', '-77.90280')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAZ051': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alanthus', 0, '38.54190', '-77.93310'), ('Cardova', 9664, '38.53220', '-78.03830'), ('Catalpa', 9664, '38.51060', '-77.98810'), ('Culpeper', 9664, '38.47100', '-78.00110'), ('Elkwood', 624, '38.51170', '-77.85610'), ('Jeffersonton', 0, '38.63690', '-77.91530'), ('Lignum', 624, '38.41580', '-77.82690'), ('Rapidan', 4123, '38.31250', '-78.06610'), ('Reva', 9664, '38.49390', '-78.13360'), ('Richardsville', 0, '38.40000', '-77.72920'), ('Rixeyville', 0, '38.58000', '-77.97000'), ('Stevensburg', 9664, '38.44310', '-77.90000'), ('Winston', 9664, '38.41000', '-78.00970')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ052': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aden', 35135, '38.65500', '-77.53750'), ('Bull Run', 1236, '38.78360', '-77.52070'), ('Cherry Hill', 670, '38.56970', '-77.26720'), ('Dale City', 55971, '38.65050', '-77.34430'), ('Dumfries', 4937, '38.56770', '-77.32510'), ('Gainesville', 4382, '38.79560', '-77.61420'), ('Greenwich', 1332, '38.74920', '-77.64830'), ('Haymarket', 879, '38.81210', '-77.63750'), ('Independent Hill', 55971, '38.63580', '-77.43810'), ('Lake Ridge', 30404, '38.68760', '-77.29800'), ('Manassas', 35135, '38.74740', '-77.48540'), ('Manassas Park', 10290, '38.77330', '-77.45210'), ('Montclair', 15728, '38.61090', '-77.33990'), ('Nokesville', 1236, '38.69860', '-77.58000'), ('Occoquan', 759, '38.68240', '-77.26050'), ('Triangle', 5500, '38.54570', '-77.31460'), ('Woodbridge', 26401, '38.63560', '-77.26210'), ('Woolsey', 879, '38.86970', '-77.63580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ052': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aden', 35135, '38.65500', '-77.53750'), ('Bull Run', 1236, '38.78360', '-77.52070'), ('Cherry Hill', 670, '38.56970', '-77.26720'), ('Dale City', 55971, '38.65050', '-77.34430'), ('Dumfries', 4937, '38.56770', '-77.32510'), ('Gainesville', 4382, '38.79560', '-77.61420'), ('Greenwich', 1332, '38.74920', '-77.64830'), ('Haymarket', 879, '38.81210', '-77.63750'), ('Independent Hill', 55971, '38.63580', '-77.43810'), ('Lake Ridge', 30404, '38.68760', '-77.29800'), ('Manassas', 35135, '38.74740', '-77.48540'), ('Manassas Park', 10290, '38.77330', '-77.45210'), ('Montclair', 15728, '38.61090', '-77.33990'), ('Nokesville', 1236, '38.69860', '-77.58000'), ('Occoquan', 759, '38.68240', '-77.26050'), ('Triangle', 5500, '38.54570', '-77.31460'), ('Woodbridge', 26401, '38.63560', '-77.26210'), ('Woolsey', 879, '38.86970', '-77.63580')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ053': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Annandale', 54994, '38.83320', '-77.21210'), ("Bailey's Crossroads", 19507, '38.84800', '-77.12920'), ('Baileys Xrds', 0, '38.86670', '-77.15000'), ('Belle Haven', 480, '38.77730', '-77.05740'), ('Burke', 57737, '38.78020', '-77.27210'), ('Centreville', 26585, '38.84690', '-77.44380'), ('Chantilly', 41041, '38.87560', '-77.40870'), ('Clifton', 185, '38.77990', '-77.38770'), ('Fairfax', 21498, '38.85370', '-77.29820'), ('Fairfax Station', 57737, '38.80080', '-77.32580'), ('Fort Belvoir', 8590, '38.70970', '-77.14700'), ('Franconia', 31907, '38.76310', '-77.14910'), ('Great Falls', 8549, '39.01020', '-77.28850'), ('Herndon', 21655, '38.96920', '-77.38730'), ('Hybla Valley', 16721, '38.74880', '-77.07660'), ('Lake Barcroft', 8906, '38.85130', '-77.15820'), ('Langley', 38929, '38.94640', '-77.15920'), ('Lincolnia', 15788, '38.82440', '-77.15420'), ('Lorton', 17786, '38.70070', '-77.24080'), ('McLean', 38929, '38.93850', '-77.17700'), ('Merrifield', 11170, '38.87300', '-77.24330'), ('Mount Vernon', 28582, '38.71860', '-77.10920'), ('Newington', 19784, '38.73600', '-77.20420'), ('Oakton', 29348, '38.89220', '-77.30120'), ('Ravensworth', 8996, '38.80390', '-77.22080'), ('Reston', 56407, '38.95210', '-77.34520'), ('Rose Hill', 15058, '38.78860', '-77.11300'), ('Springfield', 23706, '38.78600', '-77.17960'), ('The American Legion Mem Br', 38168, '38.96580', '-77.18890'), ('The I395 And I495', 23706, '38.78890', '-77.17390'), ('The I66 And I495', 6509, '38.88000', '-77.22280'), ('Tysons Corner', 18540, '38.91860', '-77.23170'), ('Vienna', 14453, '38.90040', '-77.26020'), ('Wolf Trap', 13133, '38.93980', '-77.28630')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ053': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Annandale', 54994, '38.83320', '-77.21210'), ("Bailey's Crossroads", 19507, '38.84800', '-77.12920'), ('Baileys Xrds', 0, '38.86670', '-77.15000'), ('Belle Haven', 480, '38.77730', '-77.05740'), ('Burke', 57737, '38.78020', '-77.27210'), ('Centreville', 26585, '38.84690', '-77.44380'), ('Chantilly', 41041, '38.87560', '-77.40870'), ('Clifton', 185, '38.77990', '-77.38770'), ('Fairfax', 21498, '38.85370', '-77.29820'), ('Fairfax Station', 57737, '38.80080', '-77.32580'), ('Fort Belvoir', 8590, '38.70970', '-77.14700'), ('Franconia', 31907, '38.76310', '-77.14910'), ('Great Falls', 8549, '39.01020', '-77.28850'), ('Herndon', 21655, '38.96920', '-77.38730'), ('Hybla Valley', 16721, '38.74880', '-77.07660'), ('Lake Barcroft', 8906, '38.85130', '-77.15820'), ('Langley', 38929, '38.94640', '-77.15920'), ('Lincolnia', 15788, '38.82440', '-77.15420'), ('Lorton', 17786, '38.70070', '-77.24080'), ('McLean', 38929, '38.93850', '-77.17700'), ('Merrifield', 11170, '38.87300', '-77.24330'), ('Mount Vernon', 28582, '38.71860', '-77.10920'), ('Newington', 19784, '38.73600', '-77.20420'), ('Oakton', 29348, '38.89220', '-77.30120'), ('Ravensworth', 8996, '38.80390', '-77.22080'), ('Reston', 56407, '38.95210', '-77.34520'), ('Rose Hill', 15058, '38.78860', '-77.11300'), ('Springfield', 23706, '38.78600', '-77.17960'), ('The American Legion Mem Br', 38168, '38.96580', '-77.18890'), ('The I395 And I495', 23706, '38.78890', '-77.17390'), ('The I66 And I495', 6509, '38.88000', '-77.22280'), ('Tysons Corner', 18540, '38.91860', '-77.23170'), ('Vienna', 14453, '38.90040', '-77.26020'), ('Wolf Trap', 13133, '38.93980', '-77.28630')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ054': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alexandria', 128283, '38.82100', '-77.08620'), ('Arlington', 189453, '38.87870', '-77.10190'), ('Ballston', 189453, '38.88000', '-77.11420'), ('Barcroft', 189453, '38.85580', '-77.10420'), ('Cherrydale', 189453, '38.89690', '-77.10860'), ('Falls Church', 10377, '38.88500', '-77.17460'), ('Reagan National Aiirport', 606900, '38.85220', '-77.03750'), ('Rivercrest', 189453, '38.92190', '-77.11940'), ('Rosslyn', 189453, '38.89670', '-77.07280'), ('The Woodrow Wilson', 6427, '38.78890', '-77.04690'), ('Westover', 7280, '38.88690', '-77.13970')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ055': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arkendale', 7856, '38.43830', '-77.34280'), ('Brookfield', 3624, '38.31110', '-77.43310'), ('Falmouth', 3624, '38.33530', '-77.46550'), ('Garrisonville', 7856, '38.48250', '-77.42690'), ('Glendie', 3624, '38.39970', '-77.53530'), ('Heflin', 3624, '38.48830', '-77.57830'), ('Holly Corner', 0, '38.36330', '-77.56640'), ('Leeland', 3624, '38.34970', '-77.43390'), ('Ramoth', 0, '38.42190', '-77.46970'), ('Roseville', 0, '38.46500', '-77.50420'), ('Shiloh', 7856, '38.50360', '-77.50670'), ('Spring Valley', 3624, '38.33110', '-77.46080'), ('Stafford', 0, '38.42000', '-77.40000'), ('Stones Corner', 3624, '38.32810', '-77.39080'), ('Storck', 0, '38.41920', '-77.61390'), ('White Oak', 3624, '38.30060', '-77.37560'), ('Widewater', 7856, '38.46470', '-77.32560')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ055': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arkendale', 7856, '38.43830', '-77.34280'), ('Brookfield', 3624, '38.31110', '-77.43310'), ('Falmouth', 3624, '38.33530', '-77.46550'), ('Garrisonville', 7856, '38.48250', '-77.42690'), ('Glendie', 3624, '38.39970', '-77.53530'), ('Heflin', 3624, '38.48830', '-77.57830'), ('Holly Corner', 0, '38.36330', '-77.56640'), ('Leeland', 3624, '38.34970', '-77.43390'), ('Ramoth', 0, '38.42190', '-77.46970'), ('Roseville', 0, '38.46500', '-77.50420'), ('Shiloh', 7856, '38.50360', '-77.50670'), ('Spring Valley', 3624, '38.33110', '-77.46080'), ('Stafford', 0, '38.42000', '-77.40000'), ('Stones Corner', 3624, '38.32810', '-77.39080'), ('Storck', 0, '38.41920', '-77.61390'), ('White Oak', 3624, '38.30060', '-77.37560'), ('Widewater', 7856, '38.46470', '-77.32560')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ055': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arkendale', 7856, '38.43830', '-77.34280'), ('Brookfield', 3624, '38.31110', '-77.43310'), ('Falmouth', 3624, '38.33530', '-77.46550'), ('Garrisonville', 7856, '38.48250', '-77.42690'), ('Glendie', 3624, '38.39970', '-77.53530'), ('Heflin', 3624, '38.48830', '-77.57830'), ('Holly Corner', 0, '38.36330', '-77.56640'), ('Leeland', 3624, '38.34970', '-77.43390'), ('Ramoth', 0, '38.42190', '-77.46970'), ('Roseville', 0, '38.46500', '-77.50420'), ('Shiloh', 7856, '38.50360', '-77.50670'), ('Spring Valley', 3624, '38.33110', '-77.46080'), ('Stafford', 0, '38.42000', '-77.40000'), ('Stones Corner', 3624, '38.32810', '-77.39080'), ('Storck', 0, '38.41920', '-77.61390'), ('White Oak', 3624, '38.30060', '-77.37560'), ('Widewater', 7856, '38.46470', '-77.32560')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ056': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alsop', 3833, '38.20690', '-77.64970'), ('Belmont', 424, '38.15360', '-77.86640'), ('Brokenburg', 3833, '38.14560', '-77.71920'), ('Chancellorsville', 0, '38.30000', '-77.63000'), ('Cookstown', 0, '38.29500', '-77.70190'), ('Dunavant', 0, '38.36220', '-77.66500'), ('Fredericksburg', 19279, '38.29930', '-77.48710'), ('Gatewood', 3833, '38.08190', '-77.66920'), ('Glenora', 424, '38.08860', '-77.79440'), ('Logan', 0, '38.21750', '-77.76140'), ('Massaponax', 3833, '38.19330', '-77.50920'), ('Parker', 0, '38.27500', '-77.75750'), ('Partlow', 3833, '38.03860', '-77.63920'), ('Post Oak', 3833, '38.16610', '-77.66360'), ('Spotsylvania Court', 3833, '38.19770', '-77.58820'), ('Thornburg', 3833, '38.13330', '-77.52190')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAZ057': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Berthaville', 0, '38.33330', '-77.12610'), ('Dahlgren', 997, '38.33000', '-77.05000'), ('Dogue', 170, '38.23190', '-77.21610'), ('Fairview Beach', 230, '38.33000', '-77.24750'), ('Jersey', 170, '38.21140', '-77.13970'), ('King George', 170, '38.26810', '-77.18470'), ('Lambs Creek', 170, '38.26360', '-77.26940'), ('Ninde', 0, '38.27110', '-77.05640'), ('Passapatanzy', 0, '38.29720', '-77.31440'), ('Rollins Fork', 3228, '38.18470', '-77.06250'), ('Shiloh', 170, '38.22140', '-77.11140'), ('Weedonville', 0, '38.29830', '-77.15890')], 'partOfState': 'central', 'wfo': 'LWX'}, +'VAZ057': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Berthaville', 0, '38.33330', '-77.12610'), ('Dahlgren', 997, '38.33000', '-77.05000'), ('Dogue', 170, '38.23190', '-77.21610'), ('Fairview Beach', 230, '38.33000', '-77.24750'), ('Jersey', 170, '38.21140', '-77.13970'), ('King George', 170, '38.26810', '-77.18470'), ('Lambs Creek', 170, '38.26360', '-77.26940'), ('Ninde', 0, '38.27110', '-77.05640'), ('Passapatanzy', 0, '38.29720', '-77.31440'), ('Rollins Fork', 3228, '38.18470', '-77.06250'), ('Shiloh', 170, '38.22140', '-77.11140'), ('Weedonville', 0, '38.29830', '-77.15890')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ058': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alton', 7332, '36.56670', '-79.00000'), ('Clover', 198, '36.83390', '-78.73390'), ('Cluster Springs', 8491, '36.61670', '-78.91670'), ('Cody', 1259, '36.98330', '-79.08330'), ('Crystal Hill', 1389, '36.85000', '-78.90000'), ('Dryburg', 145, '36.73330', '-78.71670'), ('Elmo', 185, '36.66670', '-79.13330'), ('Halifax', 1389, '36.76540', '-78.93240'), ('Hitesburg', 159, '36.61670', '-78.71670'), ('Ingram', 1389, '36.75000', '-79.15000'), ('Leda', 1389, '36.90000', '-79.08330'), ('Mt Laurel', 198, '36.86670', '-78.76670'), ('Nathalie', 1259, '36.93330', '-78.95000'), ('Ridgeway', 1389, '36.80000', '-79.13330'), ('Scottsburg', 145, '36.75980', '-78.79080'), ('South Boston', 8491, '36.70000', '-78.90000'), ('Turbeville', 8491, '36.61670', '-79.03330'), ('Virgilina', 159, '36.55000', '-78.78330')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAZ059': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Abilene', 817, '37.13330', '-78.55000'), ('Aspen', 200, '37.03330', '-78.83330'), ('Charlotte Court House', 404, '37.05000', '-78.63330'), ('Cullen', 404, '37.11670', '-78.65000'), ('Drakes Branch', 504, '36.99280', '-78.60100'), ('Keysville', 817, '37.03890', '-78.48150'), ('Madisonville', 201, '37.18330', '-78.68330'), ('Phenix', 200, '37.08330', '-78.75000'), ('Red House', 200, '37.18330', '-78.80000'), ('Redoak', 198, '36.78330', '-78.61670'), ('Saxe', 504, '36.93330', '-78.66670'), ('Wren', 200, '37.11670', '-78.85000'), ('Wylliesburg', 2457, '36.85000', '-78.58330')], 'partOfState': 'south central', 'wfo': 'RNK'}, +'VAZ060': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Allens Mill', 201, '37.26420', '-78.57040'), ('Briery', 817, '37.09140', '-78.45810'), ('Briery Creek Lake', 1264, '37.19900', '-78.44550'), ('Burkes Tavern', 489, '37.19500', '-78.25000'), ('Darlington Heights', 201, '37.20000', '-78.60440'), ('Elam', 201, '37.28450', '-78.61750'), ('Farmville', 6845, '37.29750', '-78.39600'), ('Five Forks', 201, '37.23760', '-78.57680'), ('Green Bay', 489, '37.13190', '-78.30530'), ('Hampden Sydney', 1264, '37.24080', '-78.45790'), ('Kingsville', 1264, '37.24580', '-78.44420'), ('Moran', 489, '37.23140', '-78.26000'), ('Prince Edward Lake', 489, '37.17230', '-78.27400'), ('Prince Edward Station', 489, '37.17460', '-78.29500'), ('Prospect', 1264, '37.30450', '-78.55950'), ('Rice', 6845, '37.27170', '-78.29060'), ('Tuggle', 1264, '37.30580', '-78.48890'), ('Twin Lakes State Park', 489, '37.17190', '-78.27350'), ('Virso', 817, '37.09360', '-78.40610'), ('Warsham', 1264, '37.23000', '-78.44330')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ061': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Angola', 6845, '37.40130', '-78.24030'), ('Ashby', 49, '37.57770', '-78.17520'), ('Bear Creek Lake State Park', 447, '37.52860', '-78.27020'), ('Cartersville', 49, '37.66000', '-78.10000'), ('Clinton', 49, '37.54290', '-78.12590'), ('Cumberland', 447, '37.49610', '-78.24470'), ('Duncan', 49, '37.71280', '-78.15130'), ('Grays Siding', 49, '37.51110', '-78.21270'), ('Guinea Mills', 6845, '37.43690', '-78.33190'), ('Hawk', 6845, '37.40990', '-78.35580'), ('Lakeside Village', 49, '37.66330', '-78.17860'), ('McRae', 447, '37.46150', '-78.28250'), ('Oak Forest', 49, '37.53640', '-78.19420'), ('Raines Tavern', 6845, '37.36930', '-78.36960'), ('Reeds', 6845, '37.33780', '-78.40420'), ('Stoddert', 6845, '37.35030', '-78.29530'), ('Sunnyside', 49, '37.47710', '-78.15210'), ('Tamworth', 49, '37.64810', '-78.08110'), ('Trenton Mills', 49, '37.62920', '-78.22860'), ('Trents Mill', 447, '37.55470', '-78.28970'), ('Whiteville', 49, '37.60230', '-78.16810')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ062': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Caledonia', 49, '37.82110', '-78.10600'), ('Centerville', 43242, '37.67090', '-77.68740'), ('Crozier', 43242, '37.63720', '-77.79690'), ('Elk Hill', 49, '37.71730', '-78.08750'), ('Fife', 49, '37.74220', '-78.05880'), ('Georges Tavern', 49, '37.73550', '-78.05430'), ('Goochland', 49, '37.68390', '-77.88540'), ('Hadensville', 49, '37.82550', '-77.99970'), ('Irwin', 49, '37.69390', '-77.92350'), ('Johnsons Springs', 43242, '37.69810', '-77.71140'), ('Maidens', 49, '37.66900', '-77.88180'), ('Manakin', 43242, '37.60170', '-77.70200'), ('Oilville', 43242, '37.70500', '-77.78790'), ('Othma', 49, '37.77250', '-77.98000'), ('Pemberton', 49, '37.67440', '-78.08500'), ('Rock Castle', 49, '37.62660', '-77.97830'), ('Sabot', 43242, '37.61410', '-77.74800'), ('Sandy Hook', 49, '37.75280', '-77.91270'), ('Tabscott', 49, '37.86120', '-78.06440'), ('Three Square', 49, '37.66500', '-77.99460'), ('West View', 49, '37.64600', '-78.00820')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ063': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ashcake', 4380, '37.69170', '-77.40280'), ('Ashland', 6619, '37.76160', '-77.47640'), ('Atlee', 4380, '37.65750', '-77.40740'), ('Beaverdam', 6619, '37.94170', '-77.65440'), ('Coatesville', 6619, '37.87830', '-77.60930'), ('Doswell', 6619, '37.86030', '-77.46460'), ('Elmont', 12562, '37.71110', '-77.49280'), ('Gilman', 6619, '37.77830', '-77.58080'), ('Goodall', 6619, '37.78250', '-77.63720'), ('Gum Tree', 6619, '37.81920', '-77.47440'), ('Hanover', 6619, '37.76320', '-77.37100'), ('Hanover Airport', 12562, '37.70870', '-77.43590'), ('Hewlett', 6619, '37.92220', '-77.57670'), ('Kings Dominion', 6619, '37.83300', '-77.43100'), ('Mabelton', 424, '37.84080', '-77.74250'), ('Mechanicsville', 30464, '37.62730', '-77.35600'), ('Montpelier', 6619, '37.81440', '-77.67770'), ('Noel', 6619, '37.90440', '-77.54440'), ('Oliver', 6619, '37.85810', '-77.53310'), ('Rockville', 43242, '37.72580', '-77.67890'), ('Studley', 30464, '37.67560', '-77.29080'), ('Vontay', 43242, '37.75750', '-77.75060'), ('Westwood', 15137, '37.60170', '-77.17780')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ064': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowling Green', 936, '38.04980', '-77.35100'), ('Burruss Corner', 6619, '37.89330', '-77.41650'), ('Cedar Fork', 6619, '37.96170', '-77.54830'), ('Cedon', 3833, '38.06110', '-77.51890'), ('Central Point', 170, '37.98890', '-77.13150'), ('Chilesburg', 3833, '37.99950', '-77.59330'), ('Corbin', 19279, '38.19940', '-77.38880'), ('Dawn', 6619, '37.83330', '-77.36580'), ('Fort A.p. Hill', 170, '38.10970', '-77.26620'), ('Gether', 936, '37.91640', '-77.20790'), ('Golansville', 936, '37.98090', '-77.50130'), ('Guinea', 936, '38.14280', '-77.43770'), ('Ladysmith', 936, '38.01750', '-77.51500'), ('Milford', 936, '38.02690', '-77.36980'), ('Nancy Wrights Corner', 3833, '38.09050', '-77.51620'), ('Penola', 936, '37.95770', '-77.37090'), ('Port Royal', 170, '38.16970', '-77.19110'), ('Rappahannock Academy', 170, '38.15580', '-77.30300'), ('Ruther Glen', 936, '38.00450', '-77.54350'), ('Sparta', 936, '37.99150', '-77.22970'), ('Villboro', 936, '38.13500', '-77.38970'), ('Woodford', 936, '38.11310', '-77.40940')], 'partOfState': 'north central', 'wfo': 'AKQ'}, +'VAZ065': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Baskerville', 454, '36.68890', '-78.27490'), ('Beechwood', 4403, '36.61720', '-78.21390'), ('Boydton', 454, '36.66600', '-78.38980'), ('Bracey', 618, '36.59710', '-78.14330'), ('Buffalo Junction', 1329, '36.60470', '-78.63060'), ('Buffalo Springs', 1329, '36.64620', '-78.66260'), ('Chase City', 2457, '36.79920', '-78.46130'), ('Clarksville', 1329, '36.62050', '-78.56560'), ('Eppes Fork', 454, '36.55280', '-78.36190'), ('Fairview', 2457, '36.81530', '-78.46690'), ('Finchley', 1329, '36.65090', '-78.49230'), ('Finneywood', 2457, '36.87530', '-78.48060'), ('Forksville', 317, '36.75220', '-78.04640'), ('John H Kerr Dam', 454, '36.59830', '-78.29870'), ('Keats', 454, '36.55560', '-78.29760'), ('La Crosse', 618, '36.69680', '-78.09370'), ('Nelson', 159, '36.55650', '-78.67250'), ('North View', 4403, '36.78060', '-78.24440'), ('Palmer Springs', 996, '36.56050', '-78.23890'), ('Richardson', 454, '36.56110', '-78.44640'), ('Rogers Corner', 454, '36.72000', '-78.41810'), ('Skipwith', 1329, '36.69190', '-78.49070'), ('South Hill', 4403, '36.72900', '-78.12830'), ('Spanish Grove', 2457, '36.79560', '-78.53560'), ('Wightman', 454, '36.79010', '-78.30320')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAZ066': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Arvins Store', 1821, '37.01970', '-78.34310'), ('Bacons Fork', 1253, '36.85270', '-78.06030'), ('Blevins Corner', 817, '36.98060', '-78.43690'), ('Dundas', 1253, '36.91320', '-78.02180'), ('Fort Mitchell', 2457, '36.91790', '-78.48190'), ('Gary', 1253, '36.86500', '-78.20070'), ('Gills Corner', 1253, '36.86060', '-78.03530'), ('Kells Corner', 2457, '36.87870', '-78.40770'), ('Kenbridge', 1253, '36.96410', '-78.13060'), ('Lafoon Corner', 1253, '36.92370', '-78.08910'), ('Loves Mill', 1821, '36.90580', '-78.28420'), ('Lunenburg', 1821, '36.96140', '-78.26570'), ('Meherrin', 817, '37.09000', '-78.36670'), ('Nutbush', 1821, '37.04500', '-78.27630'), ('Oral Oaks', 1253, '36.91570', '-78.19590'), ('Plantersville', 817, '36.92580', '-78.44190'), ('Pleasant Grove', 817, '37.00060', '-78.37200'), ('Rehoboth', 1821, '36.92050', '-78.35510'), ('Rubermount', 1821, '37.06250', '-78.20640'), ('Scholfield', 1821, '37.10180', '-78.32400'), ('Simplicity', 817, '37.07970', '-78.42440'), ('Victoria', 1821, '36.99460', '-78.22450'), ('Wilburn', 1821, '36.85570', '-78.27090')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAZ067': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Blackstone', 3675, '37.07870', '-78.00170'), ('Blackstone Airport', 3675, '37.07650', '-77.95510'), ('Burkeville', 489, '37.18700', '-78.20200'), ('Clay Store', 3675, '37.19610', '-77.96260'), ('Crewe', 2378, '37.18070', '-78.13090'), ('Dominy Corner', 3675, '37.08160', '-77.96990'), ('Fergusonville', 2378, '37.22950', '-78.06800'), ('Forkland', 3675, '37.01750', '-77.96550'), ('Fort Pickett', 3675, '37.04590', '-77.94360'), ('Irby', 3675, '37.03160', '-78.04270'), ('Jennings Ordinary', 2378, '37.22550', '-78.14580'), ('Murdocks', 3675, '37.02700', '-78.05980'), ('North Wellville', 3675, '37.15050', '-77.91720'), ('Nottoway', 2378, '37.13030', '-78.07960'), ('Oliveville', 489, '37.14710', '-78.23280'), ('Pattersons Store', 3675, '37.14580', '-77.96230'), ('Spainville', 3675, '37.18900', '-77.91610'), ('The Falls', 1253, '37.04600', '-78.14900'), ('Wellville', 3675, '37.12600', '-77.92220')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAZ068': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amelia Courthouse', 2378, '37.34130', '-77.98010'), ('Ammon', 441, '37.21120', '-77.76760'), ('Chula', 2378, '37.38830', '-77.90310'), ('Deatonville', 489, '37.32800', '-78.16750'), ('Denaro', 2378, '37.24490', '-77.98410'), ('Earls', 3675, '37.22860', '-77.89250'), ('Giles Mill', 49, '37.48190', '-77.96780'), ('Jetersville', 2378, '37.29380', '-78.09630'), ('Lodore', 2378, '37.43920', '-78.02230'), ('Mannboro', 3675, '37.25160', '-77.82350'), ('Maplewood', 2378, '37.31610', '-78.04890'), ('Morven', 2378, '37.41830', '-78.07580'), ('Paineville', 2378, '37.38960', '-78.12100'), ('Rodophil', 489, '37.36830', '-78.15680'), ('Scotts Fork', 3675, '37.31790', '-77.89060'), ('Truxillo', 2378, '37.37060', '-78.04190'), ('Winterham', 2378, '37.36630', '-77.93330')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ069': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ballsville', 49, '37.49830', '-78.06780'), ('Belona', 49, '37.52210', '-78.01200'), ('Clayville', 16213, '37.45970', '-77.81720'), ('Fine Creek Mills', 43242, '37.59780', '-77.81930'), ('Flat Rock', 43242, '37.52200', '-77.82200'), ('Genito', 16213, '37.46190', '-77.85940'), ('Goodwins Store', 43242, '37.53750', '-77.88370'), ('Hatchers', 49, '37.58040', '-78.05120'), ('Holly Hills', 16213, '37.50420', '-77.75840'), ('Jefferson', 49, '37.61320', '-77.90500'), ('Lake Powhatan', 49, '37.57620', '-77.99310'), ('Macon', 49, '37.52170', '-77.96220'), ('Michaux', 49, '37.64860', '-77.90190'), ('Pilkinton', 16213, '37.43000', '-77.84170'), ('Powhatan', 49, '37.54450', '-77.92020'), ('Provost', 49, '37.60550', '-77.98280'), ('Subletts', 43242, '37.58560', '-77.74940'), ('Tobaccoville', 49, '37.48250', '-78.09610'), ('Trenholm', 49, '37.59500', '-78.06200'), ('Worshams', 43242, '37.53530', '-77.89420')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ070': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Beach', 17890, '37.35610', '-77.59390'), ('Bellwood', 5974, '37.40720', '-77.43680'), ('Bensley', 5435, '37.44660', '-77.44370'), ('Bon Air', 16213, '37.51980', '-77.56910'), ('Centralia', 5974, '37.38080', '-77.46030'), ('Chester', 17890, '37.35330', '-77.43610'), ('Chesterfield', 17890, '37.37580', '-77.50920'), ('Colonial Heights', 16897, '37.26400', '-77.39880'), ('Drewrys Bluff', 5435, '37.42640', '-77.45810'), ('Ettrick', 5627, '37.24090', '-77.42830'), ('Matoaca', 2273, '37.23060', '-77.47930'), ('Meadowville', 22354, '37.37060', '-77.32280'), ('Midlothian', 16213, '37.50250', '-77.63980'), ('Moseley', 16213, '37.41650', '-77.77020'), ('Pocahontas State Park', 5974, '37.37880', '-77.55990'), ('Skinquarter', 16213, '37.39500', '-77.77920'), ('Winterpock', 16213, '37.34600', '-77.72000')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ071': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Chamberlayne', 4380, '37.62640', '-77.42880'), ('Downtown Richmond', 197790, '37.53110', '-77.47460'), ('Dumbarton', 6674, '37.60870', '-77.50050'), ('East Highland Park', 12488, '37.57480', '-77.38450'), ('Elko', 15137, '37.47280', '-77.21170'), ('Fair Oaks', 15137, '37.53060', '-77.31640'), ('Glen Allen', 12562, '37.66400', '-77.48450'), ('Glendale', 15137, '37.44560', '-77.23330'), ('Greendale', 6674, '37.61390', '-77.49690'), ('Highland Springs', 15137, '37.55080', '-77.32720'), ('Lakeside', 11157, '37.61750', '-77.46790'), ('Laurel', 14875, '37.63390', '-77.50700'), ('Longdale', 12562, '37.65810', '-77.47000'), ('Montrose', 7018, '37.52050', '-77.37850'), ('Richmond', 0, '37.47876', '-77.46832'), ('Richmond Heights', 5435, '37.46360', '-77.39830'), ('Richmond International', 15137, '37.50630', '-77.31700'), ('Roslyn Hills', 43242, '37.57610', '-77.56610'), ('Sandston', 15137, '37.51585', '-77.27853'), ('Short Pump', 182, '37.65050', '-77.60950'), ('Solomons Store', 11157, '37.63940', '-77.45970'), ('Tuckahoe', 43242, '37.58700', '-77.58700'), ('Varina', 7018, '37.44310', '-77.34890')], 'partOfState': 'central', 'wfo': 'AKQ'}, +'VAZ072': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Aylett', 30464, '37.77000', '-77.12000'), ('Beulahville', 936, '37.85510', '-77.17900'), ('Calno', 6619, '37.81310', '-77.30170'), ('Central Garage', 30464, '37.74420', '-77.13150'), ('Cohoke', 2866, '37.57940', '-76.94670'), ('Cooke', 2866, '37.57920', '-76.94640'), ('Duane Fork', 936, '37.87440', '-77.23070'), ('Enfield', 30464, '37.74530', '-77.21860'), ('Epworth', 30464, '37.79080', '-77.21220'), ('Etna Mills', 30464, '37.76560', '-77.26610'), ('Globe', 30464, '37.81220', '-77.20000'), ('King William', 2866, '37.68720', '-77.01360'), ('Lanesville', 2866, '37.61440', '-76.97890'), ('Mangohick', 30464, '37.81000', '-77.27350'), ('Manquin', 30464, '37.70890', '-77.15420'), ('Palls', 2866, '37.64430', '-77.05470'), ('Pollards Corner', 30464, '37.79010', '-77.18500'), ('Romancoke', 2866, '37.57780', '-76.84520'), ('Rose Garden', 2866, '37.63250', '-76.93450'), ('Rumford', 30464, '37.72450', '-77.08980'), ('Turpin', 30464, '37.76110', '-77.14720'), ('Upshaw', 30464, '37.79390', '-77.14720'), ('West Point', 2866, '37.55230', '-76.80030')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ073': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Beazley', 2068, '37.96470', '-77.07030'), ('Biscoe', 2068, '37.81820', '-77.05760'), ('Bruington', 2068, '37.77780', '-76.93620'), ('Clancie', 2866, '37.58030', '-76.69330'), ('Crouch', 2068, '37.76220', '-76.89750'), ('Dragonville', 2866, '37.70060', '-76.78060'), ('Gressit', 2866, '37.48730', '-76.70840'), ('Henley Fork', 2068, '37.75590', '-76.99060'), ('Indian Neck', 2068, '37.90220', '-77.03310'), ('Ino', 2068, '37.76220', '-76.79810'), ('King And Queen Court House', 2866, '37.66960', '-76.87760'), ('Little Plymouth', 2866, '37.62800', '-76.79380'), ('Mascot', 2866, '37.62710', '-76.70690'), ('Mattaponi', 2866, '37.53420', '-76.77740'), ('Newtown', 2068, '37.91340', '-77.12810'), ('Owenton', 2068, '37.88380', '-77.10050'), ('Saint Stephens Church', 2068, '37.80340', '-77.05580'), ('Salvia', 170, '37.94920', '-77.13310'), ('Shacklefords', 2866, '37.54990', '-76.73420'), ('Stevensville', 2068, '37.72760', '-76.92030'), ('Velma', 2866, '37.64690', '-76.71610'), ('Walkerton', 2068, '37.72680', '-77.02240')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ074': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowlers Wharf', 1375, '37.82320', '-76.75220'), ('Brays Fork', 2068, '37.89610', '-76.87190'), ('Caret', 2068, '37.98280', '-76.96200'), ('Center Cross', 2068, '37.80460', '-76.77940'), ('Champlain', 2068, '38.01380', '-76.99290'), ('Chance', 315, '38.06340', '-77.00920'), ('Dunbrooke', 2068, '37.89420', '-76.96410'), ('Dunnsville', 2068, '37.85890', '-76.82270'), ('Elevon', 170, '37.99410', '-77.07310'), ('Howertons', 2068, '37.83120', '-76.89070'), ('Hustle', 170, '38.04250', '-77.06690'), ('Laneview', 1375, '37.77000', '-76.73500'), ('Loretto', 170, '38.07620', '-77.05150'), ('Millers Tavern', 2068, '37.83090', '-76.93680'), ('Montague', 1375, '37.76800', '-76.73740'), ('Mount Landing', 2068, '37.94000', '-76.92170'), ('Rexburg', 2068, '37.93640', '-76.98720'), ('Supply', 170, '38.09420', '-77.13620'), ('Tappahannock', 2068, '37.92000', '-76.86780'), ('Upright', 2068, '37.80940', '-76.83770')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ074': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowlers Wharf', 1375, '37.82320', '-76.75220'), ('Brays Fork', 2068, '37.89610', '-76.87190'), ('Caret', 2068, '37.98280', '-76.96200'), ('Center Cross', 2068, '37.80460', '-76.77940'), ('Champlain', 2068, '38.01380', '-76.99290'), ('Chance', 315, '38.06340', '-77.00920'), ('Dunbrooke', 2068, '37.89420', '-76.96410'), ('Dunnsville', 2068, '37.85890', '-76.82270'), ('Elevon', 170, '37.99410', '-77.07310'), ('Howertons', 2068, '37.83120', '-76.89070'), ('Hustle', 170, '38.04250', '-77.06690'), ('Laneview', 1375, '37.77000', '-76.73500'), ('Loretto', 170, '38.07620', '-77.05150'), ('Millers Tavern', 2068, '37.83090', '-76.93680'), ('Montague', 1375, '37.76800', '-76.73740'), ('Mount Landing', 2068, '37.94000', '-76.92170'), ('Rexburg', 2068, '37.93640', '-76.98720'), ('Supply', 170, '38.09420', '-77.13620'), ('Tappahannock', 2068, '37.92000', '-76.86780'), ('Upright', 2068, '37.80940', '-76.83770')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ075': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Coles Point', 1475, '38.14850', '-76.63750'), ('Colonial Beach', 3228, '38.25480', '-76.97070'), ('Currioman Landing', 315, '38.15400', '-76.76500'), ('Erica', 315, '38.11830', '-76.67920'), ('Hague', 1375, '38.07230', '-76.65180'), ('Kinsale', 1375, '38.02990', '-76.57890'), ('Kremlin', 1375, '38.02940', '-76.69170'), ('Leedstown', 3228, '38.11160', '-76.99890'), ('Lerty', 315, '38.14200', '-76.86710'), ('Montross', 315, '38.09310', '-76.82280'), ('Mount Holly', 315, '38.09110', '-76.71850'), ('Oak Grove', 3228, '38.18170', '-76.99740'), ('Oldhams', 1375, '38.00250', '-76.66920'), ('Peeds', 315, '38.10060', '-76.92280'), ('Potomac Beach', 3228, '38.27280', '-77.00010'), ('Potomac Mills', 3228, '38.16330', '-76.94130'), ('Sandy Point', 9943, '38.06060', '-76.53360'), ('Stratford Hall', 315, '38.14380', '-76.83560'), ('Templeman', 315, '38.07060', '-76.77530'), ('Threeway', 1375, '37.99280', '-76.69900'), ('Westmoreland', 9943, '38.06410', '-76.55910'), ('Westmoreland State', 315, '38.16210', '-76.86530')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ075': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Coles Point', 1475, '38.14850', '-76.63750'), ('Colonial Beach', 3228, '38.25480', '-76.97070'), ('Currioman Landing', 315, '38.15400', '-76.76500'), ('Erica', 315, '38.11830', '-76.67920'), ('Hague', 1375, '38.07230', '-76.65180'), ('Kinsale', 1375, '38.02990', '-76.57890'), ('Kremlin', 1375, '38.02940', '-76.69170'), ('Leedstown', 3228, '38.11160', '-76.99890'), ('Lerty', 315, '38.14200', '-76.86710'), ('Montross', 315, '38.09310', '-76.82280'), ('Mount Holly', 315, '38.09110', '-76.71850'), ('Oak Grove', 3228, '38.18170', '-76.99740'), ('Oldhams', 1375, '38.00250', '-76.66920'), ('Peeds', 315, '38.10060', '-76.92280'), ('Potomac Beach', 3228, '38.27280', '-77.00010'), ('Potomac Mills', 3228, '38.16330', '-76.94130'), ('Sandy Point', 9943, '38.06060', '-76.53360'), ('Stratford Hall', 315, '38.14380', '-76.83560'), ('Templeman', 315, '38.07060', '-76.77530'), ('Threeway', 1375, '37.99280', '-76.69900'), ('Westmoreland', 9943, '38.06410', '-76.55910'), ('Westmoreland State', 315, '38.16210', '-76.86530')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ076': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downing', 1375, '37.84440', '-76.62330'), ('Emmerton', 1375, '37.89910', '-76.67990'), ('Ethel', 1375, '37.99650', '-76.78090'), ('Farnham', 1375, '37.88600', '-76.62570'), ('Foneswood', 315, '38.10480', '-76.90100'), ('Haynesville', 1375, '37.95030', '-76.66280'), ('Kennard', 1375, '37.91560', '-76.74810'), ('Lyells', 1375, '37.99690', '-76.72920'), ('Moon Corner', 1244, '37.86910', '-76.55020'), ('Mulch', 1375, '37.90380', '-76.57110'), ('Naylors Beach', 2068, '37.97750', '-76.86330'), ('Newland', 315, '38.05070', '-76.87370'), ('Piney Grove', 1375, '38.02700', '-76.78640'), ('Robley', 543, '37.84670', '-76.58150'), ('Sharps', 1375, '37.84000', '-76.70110'), ('Singerly', 315, '38.08030', '-76.89670'), ('Tidewater', 1375, '37.85490', '-76.69860'), ('Village', 1375, '37.94760', '-76.60560'), ('Warsaw', 1375, '37.96110', '-76.76130'), ('Wellford', 1375, '37.90000', '-76.75000')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ076': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Downing', 1375, '37.84440', '-76.62330'), ('Emmerton', 1375, '37.89910', '-76.67990'), ('Ethel', 1375, '37.99650', '-76.78090'), ('Farnham', 1375, '37.88600', '-76.62570'), ('Foneswood', 315, '38.10480', '-76.90100'), ('Haynesville', 1375, '37.95030', '-76.66280'), ('Kennard', 1375, '37.91560', '-76.74810'), ('Lyells', 1375, '37.99690', '-76.72920'), ('Moon Corner', 1244, '37.86910', '-76.55020'), ('Mulch', 1375, '37.90380', '-76.57110'), ('Naylors Beach', 2068, '37.97750', '-76.86330'), ('Newland', 315, '38.05070', '-76.87370'), ('Piney Grove', 1375, '38.02700', '-76.78640'), ('Robley', 543, '37.84670', '-76.58150'), ('Sharps', 1375, '37.84000', '-76.70110'), ('Singerly', 315, '38.08030', '-76.89670'), ('Tidewater', 1375, '37.85490', '-76.69860'), ('Village', 1375, '37.94760', '-76.60560'), ('Warsaw', 1375, '37.96110', '-76.76130'), ('Wellford', 1375, '37.90000', '-76.75000')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ077': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Avalon', 1244, '37.90670', '-76.42420'), ('Browns Store', 1244, '37.82890', '-76.42960'), ('Burgess', 1244, '37.88370', '-76.34780'), ('Byrdton', 1244, '37.70110', '-76.33690'), ('Callao', 1375, '37.96830', '-76.55780'), ('Dodlyt', 1244, '37.89690', '-76.51060'), ('Edwardsville', 1244, '37.90660', '-76.36460'), ('Fair Port', 1244, '37.83333', '-76.29056'), ('Fleeton', 1244, '37.81750', '-76.28160'), ('Gibeon', 1375, '37.97030', '-76.61870'), ('Heathsville', 1244, '37.91760', '-76.47250'), ('Howland', 1244, '37.87080', '-76.45560'), ('Hull Neck', 1244, '37.95370', '-76.37620'), ('Lara', 1244, '37.85440', '-76.51710'), ('Lewisetta', 9943, '38.00500', '-76.46380'), ('Lilian', 1244, '37.86360', '-76.30140'), ('Lottsburg', 1375, '37.96130', '-76.51930'), ('Middletons Corner', 1244, '37.94550', '-76.44600'), ('Opheila', 1244, '37.91030', '-76.28330'), ('Reedville', 1244, '37.86520', '-76.29060'), ('Rehoboth Church', 1244, '37.76770', '-76.36600'), ('Smith Point', 1244, '37.88860', '-76.23690'), ('Wicomico Church', 1244, '37.81510', '-76.37830')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ077': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Avalon', 1244, '37.90670', '-76.42420'), ('Browns Store', 1244, '37.82890', '-76.42960'), ('Burgess', 1244, '37.88370', '-76.34780'), ('Byrdton', 1244, '37.70110', '-76.33690'), ('Callao', 1375, '37.96830', '-76.55780'), ('Dodlyt', 1244, '37.89690', '-76.51060'), ('Edwardsville', 1244, '37.90660', '-76.36460'), ('Fair Port', 1244, '37.83333', '-76.29056'), ('Fleeton', 1244, '37.81750', '-76.28160'), ('Gibeon', 1375, '37.97030', '-76.61870'), ('Heathsville', 1244, '37.91760', '-76.47250'), ('Howland', 1244, '37.87080', '-76.45560'), ('Hull Neck', 1244, '37.95370', '-76.37620'), ('Lara', 1244, '37.85440', '-76.51710'), ('Lewisetta', 9943, '38.00500', '-76.46380'), ('Lilian', 1244, '37.86360', '-76.30140'), ('Lottsburg', 1375, '37.96130', '-76.51930'), ('Middletons Corner', 1244, '37.94550', '-76.44600'), ('Opheila', 1244, '37.91030', '-76.28330'), ('Reedville', 1244, '37.86520', '-76.29060'), ('Rehoboth Church', 1244, '37.76770', '-76.36600'), ('Smith Point', 1244, '37.88860', '-76.23690'), ('Wicomico Church', 1244, '37.81510', '-76.37830')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ078': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alfonso', 1244, '37.80910', '-76.50830'), ('Beanes Corner', 1244, '37.82000', '-76.46390'), ('Belle Isle State Park', 543, '37.77920', '-76.59310'), ('Bertrand', 543, '37.66890', '-76.51780'), ('Brook Vale', 1244, '37.75930', '-76.42080'), ('Christ Church', 673, '37.68190', '-76.42340'), ('Foxwells', 358, '37.62920', '-76.31140'), ('Kilmarnock', 1244, '37.71450', '-76.38270'), ('Lancaster', 1244, '37.76990', '-76.46730'), ('Lively', 1244, '37.77770', '-76.51390'), ('Millenbeck', 673, '37.66970', '-76.48890'), ('Mollusk', 543, '37.72680', '-76.53690'), ('Morattico', 543, '37.80000', '-76.61000'), ('Nuttsville', 543, '37.79340', '-76.55120'), ('Regina', 1244, '37.80390', '-76.41780'), ('Senora', 543, '37.67640', '-76.52140'), ('Slabtown', 673, '37.67580', '-76.49710'), ('Somers', 543, '37.78810', '-76.56670'), ('Weems', 673, '37.65410', '-76.44990'), ('White Stone', 358, '37.64500', '-76.39160'), ('Windmill Point', 358, '37.61440', '-76.27960')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ078': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alfonso', 1244, '37.80910', '-76.50830'), ('Beanes Corner', 1244, '37.82000', '-76.46390'), ('Belle Isle State Park', 543, '37.77920', '-76.59310'), ('Bertrand', 543, '37.66890', '-76.51780'), ('Brook Vale', 1244, '37.75930', '-76.42080'), ('Christ Church', 673, '37.68190', '-76.42340'), ('Foxwells', 358, '37.62920', '-76.31140'), ('Kilmarnock', 1244, '37.71450', '-76.38270'), ('Lancaster', 1244, '37.76990', '-76.46730'), ('Lively', 1244, '37.77770', '-76.51390'), ('Millenbeck', 673, '37.66970', '-76.48890'), ('Mollusk', 543, '37.72680', '-76.53690'), ('Morattico', 543, '37.80000', '-76.61000'), ('Nuttsville', 543, '37.79340', '-76.55120'), ('Regina', 1244, '37.80390', '-76.41780'), ('Senora', 543, '37.67640', '-76.52140'), ('Slabtown', 673, '37.67580', '-76.49710'), ('Somers', 543, '37.78810', '-76.56670'), ('Weems', 673, '37.65410', '-76.44990'), ('White Stone', 358, '37.64500', '-76.39160'), ('Windmill Point', 358, '37.61440', '-76.27960')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ079': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alberta', 306, '36.86460', '-77.88300'), ('Ante', 1275, '36.66500', '-77.71910'), ('Barrows Store', 306, '36.93470', '-77.97920'), ('Bowens Corner', 317, '36.63590', '-77.96080'), ('Brodnax', 317, '36.70350', '-78.03290'), ('Brunswick', 1275, '36.64760', '-77.86990'), ('Callaville', 441, '36.82830', '-77.66780'), ('Cochran', 306, '36.84310', '-77.90530'), ('Danieltown', 306, '36.90470', '-77.96000'), ('Dolphin', 306, '36.83790', '-77.79480'), ('Ebony', 317, '36.57870', '-77.99100'), ('Edgerton', 1275, '36.77840', '-77.77090'), ('Gasburg', 691, '36.56700', '-77.89590'), ('Lawrenceville', 1275, '36.75760', '-77.85200'), ('Meredithville', 306, '36.79850', '-77.95990'), ('Ordsburg', 306, '36.96260', '-77.86000'), ('Prices Mill', 306, '36.81260', '-77.92340'), ('Rawlings', 441, '36.94830', '-77.77880'), ('Triplet', 1003, '36.61030', '-77.76610'), ('Valentines', 1275, '36.58870', '-77.83020'), ('Warfield', 441, '36.89550', '-77.74440'), ('White Plains', 1275, '36.63360', '-77.91320')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAZ080': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Addison', 5627, '37.19750', '-77.50280'), ('Burgess', 5627, '37.14050', '-77.50880'), ('Butterworth', 441, '37.05110', '-77.62720'), ('Carson', 202, '37.03470', '-77.40530'), ('Center Star', 441, '37.11100', '-77.64000'), ('Cherry Hill', 441, '36.93810', '-77.62220'), ('Church Road', 441, '37.15600', '-77.63180'), ('Darvills', 441, '37.06320', '-77.83390'), ('Dewitt', 441, '37.03860', '-77.64320'), ('Dinwiddie', 441, '37.07710', '-77.58620'), ('Five Forks', 441, '37.13920', '-77.62310'), ('Ford', 441, '37.14850', '-77.73150'), ('Hebron', 441, '37.14420', '-77.80560'), ('McKenney', 441, '36.98560', '-77.72170'), ('Petersburg Airport', 5627, '37.15920', '-77.52290'), ('Reams', 33740, '37.10080', '-77.40610'), ('Rocky Run', 441, '37.07540', '-77.68410'), ('Sutherland', 5627, '37.19600', '-77.56330'), ('Walkers', 441, '37.15810', '-77.70640'), ('Wharfs Store', 441, '36.98180', '-77.57690'), ('Wilsons', 3675, '37.14370', '-77.85950')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAZ081': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Birchett Estate', 22354, '37.26030', '-77.27720'), ('Brandon', 343, '37.25580', '-76.99890'), ('Burrowsville', 343, '37.21670', '-77.08310'), ('Disputanta', 7269, '37.12430', '-77.22610'), ('Fort Lee', 7269, '37.23340', '-77.33030'), ('Garysville', 22354, '37.24950', '-77.15730'), ('Hopewell', 22354, '37.29060', '-77.29840'), ('Jordan Point Country Club', 22354, '37.28420', '-77.25480'), ('Jordans Point', 22354, '37.30560', '-77.22110'), ('New Bohemia', 7269, '37.18430', '-77.31940'), ('Petersburg', 33740, '37.20430', '-77.39260'), ('Petersburg National Battlefield', 33740, '37.22920', '-77.36130'), ('Prince George', 7269, '37.22310', '-77.28780'), ('Prince George Golf', 7269, '37.14620', '-77.26640'), ('Richard Bland College', 33740, '37.17320', '-77.37160'), ('Taylors Corner', 343, '37.22920', '-77.04060'), ('Templeton', 33740, '37.07540', '-77.33010')], 'partOfState': 'south central', 'wfo': 'AKQ'}, +'VAZ082': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adkins Store', 343, '37.39370', '-77.09620'), ('Barnetts', 22354, '37.36710', '-77.15810'), ('Charles City', 343, '37.34370', '-77.07130'), ('Holdcroft', 343, '37.36560', '-76.93530'), ('Mount Airy', 343, '37.35110', '-76.91830'), ('New Hope', 343, '37.34110', '-77.06170'), ('Roaches Corner', 343, '37.39080', '-77.05310'), ('Roxbury', 15137, '37.46460', '-77.14110'), ('Rustic', 343, '37.29250', '-76.93410'), ('Ruthville', 343, '37.36750', '-77.04110'), ('Sandybottom', 343, '37.41310', '-77.04470'), ('Wayside', 22354, '37.37220', '-77.19500')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ082': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adkins Store', 343, '37.39370', '-77.09620'), ('Barnetts', 22354, '37.36710', '-77.15810'), ('Charles City', 343, '37.34370', '-77.07130'), ('Holdcroft', 343, '37.36560', '-76.93530'), ('Mount Airy', 343, '37.35110', '-76.91830'), ('New Hope', 343, '37.34110', '-77.06170'), ('Roaches Corner', 343, '37.39080', '-77.05310'), ('Roxbury', 15137, '37.46460', '-77.14110'), ('Rustic', 343, '37.29250', '-76.93410'), ('Ruthville', 343, '37.36750', '-77.04110'), ('Sandybottom', 343, '37.41310', '-77.04470'), ('Wayside', 22354, '37.37220', '-77.19500')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ083': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barhamsville', 2866, '37.45610', '-76.84100'), ('Bottoms Bridge', 15137, '37.51080', '-77.19210'), ('Browns Corner', 15137, '37.51780', '-77.08970'), ('Chickahominy Shore', 343, '37.39360', '-76.94140'), ('Colonial Downs', 2866, '37.49280', '-77.02090'), ('Eltham', 2866, '37.52380', '-76.82660'), ('Holly Forks', 2866, '37.46820', '-76.78430'), ('Lanexa', 2866, '37.42300', '-76.90620'), ('Mountcastle', 15137, '37.45330', '-77.09420'), ('New Kent', 2866, '37.51770', '-76.97830'), ('New Kent Airport', 15137, '37.50260', '-77.11860'), ('Orapax Farms', 15137, '37.53360', '-77.20580'), ('Plum Point', 2866, '37.51640', '-76.81390'), ('Providence Forge', 343, '37.44260', '-77.04760'), ('Quinton', 15137, '37.53270', '-77.11540'), ('Slaterville', 2866, '37.49950', '-76.94440'), ('Talleysville', 15137, '37.52450', '-77.07540'), ('Tunstall', 15137, '37.61150', '-77.12480'), ('Walkers', 343, '37.41530', '-76.94030'), ('Wrights Corner', 15137, '37.49930', '-77.13840')], 'partOfState': 'east central', 'wfo': 'AKQ'}, +'VAZ084': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Achilles', 9429, '37.28000', '-76.44070'), ('Adner', 2269, '37.49870', '-76.63340'), ('Allmondsville', 2269, '37.39720', '-76.64840'), ('Ark', 2269, '37.43820', '-76.57730'), ('Belroi', 2269, '37.38770', '-76.58790'), ('Beulah', 2269, '37.39000', '-76.44230'), ('Cash', 543, '37.53510', '-76.54550'), ('Clay Bank', 2269, '37.36000', '-76.59000'), ('Dutton', 2269, '37.49450', '-76.46870'), ('Glass', 9429, '37.31680', '-76.44990'), ('Glenns', 543, '37.56550', '-76.61260'), ('Gloucester Courthouse', 2269, '37.40980', '-76.52700'), ('Gloucester Point', 9429, '37.26770', '-76.49550'), ('Harcum', 2269, '37.51840', '-76.50500'), ('Hayes', 2269, '37.37610', '-76.50310'), ('Maryus', 9429, '37.27960', '-76.40310'), ('Naxera', 9429, '37.34200', '-76.44770'), ('Ordinary', 9429, '37.31640', '-76.51360'), ('Pampa', 543, '37.52540', '-76.59310'), ('Pinero', 2269, '37.49250', '-76.54060'), ('Selden', 2269, '37.35740', '-76.46820'), ('Severn', 9429, '37.29420', '-76.41580'), ('Ware Neck', 2269, '37.40250', '-76.45890'), ('White Marsh', 2269, '37.34210', '-76.52070'), ('Wicomico', 9429, '37.29190', '-76.51910')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ084': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Achilles', 9429, '37.28000', '-76.44070'), ('Adner', 2269, '37.49870', '-76.63340'), ('Allmondsville', 2269, '37.39720', '-76.64840'), ('Ark', 2269, '37.43820', '-76.57730'), ('Belroi', 2269, '37.38770', '-76.58790'), ('Beulah', 2269, '37.39000', '-76.44230'), ('Cash', 543, '37.53510', '-76.54550'), ('Clay Bank', 2269, '37.36000', '-76.59000'), ('Dutton', 2269, '37.49450', '-76.46870'), ('Glass', 9429, '37.31680', '-76.44990'), ('Glenns', 543, '37.56550', '-76.61260'), ('Gloucester Courthouse', 2269, '37.40980', '-76.52700'), ('Gloucester Point', 9429, '37.26770', '-76.49550'), ('Harcum', 2269, '37.51840', '-76.50500'), ('Hayes', 2269, '37.37610', '-76.50310'), ('Maryus', 9429, '37.27960', '-76.40310'), ('Naxera', 9429, '37.34200', '-76.44770'), ('Ordinary', 9429, '37.31640', '-76.51360'), ('Pampa', 543, '37.52540', '-76.59310'), ('Pinero', 2269, '37.49250', '-76.54060'), ('Selden', 2269, '37.35740', '-76.46820'), ('Severn', 9429, '37.29420', '-76.41580'), ('Ware Neck', 2269, '37.40250', '-76.45890'), ('White Marsh', 2269, '37.34210', '-76.52070'), ('Wicomico', 9429, '37.29190', '-76.51910')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ085': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amburg', 358, '37.55360', '-76.35860'), ('Church View', 543, '37.67790', '-76.68020'), ('Cooper', 543, '37.61090', '-76.52060'), ('Deltaville', 358, '37.55600', '-76.32770'), ('Grafton', 673, '37.55890', '-76.47060'), ('Hardyville', 358, '37.55590', '-76.38230'), ('Harmony Village', 673, '37.58180', '-76.48730'), ('Hartfield', 358, '37.55080', '-76.44400'), ('Healys', 543, '37.57280', '-76.51190'), ('Jamaica', 543, '37.71490', '-76.69440'), ('Nesting', 543, '37.73390', '-76.64890'), ('Remlik', 543, '37.66160', '-76.62020'), ('Saluda', 543, '37.60610', '-76.59550'), ('Samos', 543, '37.70120', '-76.63520'), ('Stampers', 358, '37.53970', '-76.43280'), ('Stingray Point', 358, '37.55870', '-76.30510'), ('Urbanna', 543, '37.63970', '-76.57540'), ('Wake', 358, '37.56630', '-76.42950'), ('Warner', 543, '37.63780', '-76.64480'), ('Water View', 543, '37.72200', '-76.61390'), ('Wilton', 358, '37.54950', '-76.40690')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ085': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Amburg', 358, '37.55360', '-76.35860'), ('Church View', 543, '37.67790', '-76.68020'), ('Cooper', 543, '37.61090', '-76.52060'), ('Deltaville', 358, '37.55600', '-76.32770'), ('Grafton', 673, '37.55890', '-76.47060'), ('Hardyville', 358, '37.55590', '-76.38230'), ('Harmony Village', 673, '37.58180', '-76.48730'), ('Hartfield', 358, '37.55080', '-76.44400'), ('Healys', 543, '37.57280', '-76.51190'), ('Jamaica', 543, '37.71490', '-76.69440'), ('Nesting', 543, '37.73390', '-76.64890'), ('Remlik', 543, '37.66160', '-76.62020'), ('Saluda', 543, '37.60610', '-76.59550'), ('Samos', 543, '37.70120', '-76.63520'), ('Stampers', 358, '37.53970', '-76.43280'), ('Stingray Point', 358, '37.55870', '-76.30510'), ('Urbanna', 543, '37.63970', '-76.57540'), ('Wake', 358, '37.56630', '-76.42950'), ('Warner', 543, '37.63780', '-76.64480'), ('Water View', 543, '37.72200', '-76.61390'), ('Wilton', 358, '37.54950', '-76.40690')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ086': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bavon', 11566, '37.33250', '-76.28800'), ('Blakes', 358, '37.50630', '-76.37620'), ('Cardinal', 2269, '37.42050', '-76.37840'), ('Cobbs Creek', 358, '37.50530', '-76.39680'), ('Diggs', 358, '37.43600', '-76.28130'), ('Dixie', 2269, '37.50060', '-76.41470'), ('Fort Nonsense', 2269, '37.46500', '-76.44490'), ('Gwynn', 358, '37.50440', '-76.28860'), ('Hudgins', 358, '37.47100', '-76.32640'), ('Laban', 2269, '37.40030', '-76.28360'), ('Mathews', 2269, '37.43340', '-76.32180'), ('Mobjack', 2269, '37.37620', '-76.34830'), ('Moon', 358, '37.44960', '-76.30350'), ('New Point', 11566, '37.34880', '-76.28150'), ('New Point Comfort', 11566, '37.30630', '-76.27760'), ('North', 2269, '37.46750', '-76.38050'), ('Peary', 11566, '37.37190', '-76.27970'), ('Port Haywood', 2269, '37.38610', '-76.31740'), ('Redart', 358, '37.47000', '-76.30190'), ('Ruff', 2269, '37.41000', '-76.31280'), ('Soles', 2269, '37.49280', '-76.43720')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ086': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bavon', 11566, '37.33250', '-76.28800'), ('Blakes', 358, '37.50630', '-76.37620'), ('Cardinal', 2269, '37.42050', '-76.37840'), ('Cobbs Creek', 358, '37.50530', '-76.39680'), ('Diggs', 358, '37.43600', '-76.28130'), ('Dixie', 2269, '37.50060', '-76.41470'), ('Fort Nonsense', 2269, '37.46500', '-76.44490'), ('Gwynn', 358, '37.50440', '-76.28860'), ('Hudgins', 358, '37.47100', '-76.32640'), ('Laban', 2269, '37.40030', '-76.28360'), ('Mathews', 2269, '37.43340', '-76.32180'), ('Mobjack', 2269, '37.37620', '-76.34830'), ('Moon', 358, '37.44960', '-76.30350'), ('New Point', 11566, '37.34880', '-76.28150'), ('New Point Comfort', 11566, '37.30630', '-76.27760'), ('North', 2269, '37.46750', '-76.38050'), ('Peary', 11566, '37.37190', '-76.27970'), ('Port Haywood', 2269, '37.38610', '-76.31740'), ('Redart', 358, '37.47000', '-76.30190'), ('Ruff', 2269, '37.41000', '-76.31280'), ('Soles', 2269, '37.49280', '-76.43720')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ087': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barley', 1003, '36.56410', '-77.72410'), ('Brink', 1003, '36.61780', '-77.63470'), ('Bryants Corner', 791, '36.58850', '-77.41570'), ('Bufford Crossroads', 5665, '36.73770', '-77.61950'), ('Claresville', 5665, '36.62250', '-77.45110'), ('Cowie Corner', 5665, '36.77420', '-77.57190'), ('Dahlia', 791, '36.56970', '-77.53660'), ('Durand', 5665, '36.72000', '-77.58830'), ('Emporia', 5665, '36.69480', '-77.53670'), ('Emporia Airport', 5665, '36.68720', '-77.48360'), ('Emporia Reservoir', 5665, '36.69800', '-77.56760'), ('Fields Crossroads', 589, '36.83170', '-77.54940'), ('Green Plain', 5665, '36.69670', '-77.45220'), ('Jarratt', 589, '36.81580', '-77.47010'), ('Lanes Corner', 5665, '36.66280', '-77.52920'), ('Pleasant Shade', 5665, '36.75110', '-77.64720'), ('Purdy', 589, '36.82270', '-77.58820'), ('Radium', 5665, '36.73170', '-77.62860'), ('Slagles Lake', 5665, '36.75650', '-77.52860'), ('Slates Corner', 1003, '36.56310', '-77.65890'), ('Turners Crossroads', 1003, '36.55030', '-77.58670')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ088': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Booker', 202, '36.93940', '-77.28500'), ('Gray', 589, '36.79670', '-77.34390'), ('Grizzard', 589, '36.72640', '-77.43780'), ('Hilda', 589, '36.82030', '-77.32940'), ('Homeville', 2309, '36.94920', '-77.17190'), ('Huske', 202, '36.89750', '-77.41890'), ('Littleton', 2309, '36.90270', '-77.14920'), ('Lumberton', 167, '36.88140', '-77.21080'), ('Mason', 589, '36.75940', '-77.38560'), ('Newville', 2309, '37.01280', '-77.17670'), ('Owens', 589, '36.85360', '-77.42470'), ('Stony Creek', 202, '36.94740', '-77.40020'), ('Sussex', 202, '36.91530', '-77.27940'), ('Wakefield', 1038, '36.96860', '-76.98820'), ('Waverly', 2309, '37.03380', '-77.09570'), ('Yale', 202, '36.84540', '-77.28760')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ089': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alliance', 262, '37.13810', '-76.78390'), ('Bacons Castle', 1083, '37.10530', '-76.73010'), ('Barham', 2309, '37.14110', '-77.11310'), ('Beachland', 262, '37.08530', '-76.81610'), ('Booth Fork', 1038, '36.97920', '-76.94720'), ('Cabin Point', 343, '37.18480', '-77.03150'), ('Carsley', 297, '37.09560', '-77.00610'), ('Chippokes State Park', 1083, '37.13790', '-76.72670'), ('Claremont', 343, '37.22710', '-76.96580'), ('Delk Crossroads', 262, '37.04420', '-76.79220'), ('Dendron', 297, '37.03460', '-76.92420'), ('Elberon', 297, '37.07420', '-76.88430'), ('Ellis Fork', 297, '37.00310', '-76.90080'), ('Gwaltney Corner', 2309, '37.11130', '-77.02400'), ('Hog Island Game Reserve', 1083, '37.17390', '-76.68130'), ('Oak Hill Corner', 343, '37.15920', '-77.06970'), ('Poolesville', 1083, '37.09250', '-76.72440'), ('Runnymede', 297, '37.03440', '-76.85170'), ('Savedge', 343, '37.13360', '-77.01940'), ('Scotland', 262, '37.18230', '-76.78700'), ('Spring Grove', 343, '37.16560', '-76.97340'), ('Surry', 262, '37.13740', '-76.83500')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ089': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Alliance', 262, '37.13810', '-76.78390'), ('Bacons Castle', 1083, '37.10530', '-76.73010'), ('Barham', 2309, '37.14110', '-77.11310'), ('Beachland', 262, '37.08530', '-76.81610'), ('Booth Fork', 1038, '36.97920', '-76.94720'), ('Cabin Point', 343, '37.18480', '-77.03150'), ('Carsley', 297, '37.09560', '-77.00610'), ('Chippokes State Park', 1083, '37.13790', '-76.72670'), ('Claremont', 343, '37.22710', '-76.96580'), ('Delk Crossroads', 262, '37.04420', '-76.79220'), ('Dendron', 297, '37.03460', '-76.92420'), ('Elberon', 297, '37.07420', '-76.88430'), ('Ellis Fork', 297, '37.00310', '-76.90080'), ('Gwaltney Corner', 2309, '37.11130', '-77.02400'), ('Hog Island Game Reserve', 1083, '37.17390', '-76.68130'), ('Oak Hill Corner', 343, '37.15920', '-77.06970'), ('Poolesville', 1083, '37.09250', '-76.72440'), ('Runnymede', 297, '37.03440', '-76.85170'), ('Savedge', 343, '37.13360', '-77.01940'), ('Scotland', 262, '37.18230', '-76.78700'), ('Spring Grove', 343, '37.16560', '-76.97340'), ('Surry', 262, '37.13740', '-76.83500')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ090': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Busch Gardens', 11998, '37.22910', '-76.63640'), ('Centerville', 11998, '37.31640', '-76.78950'), ('Christensons Corner', 11998, '37.38780', '-76.70890'), ('Croaker', 11998, '37.39670', '-76.75310'), ('Diascund', 2866, '37.39420', '-76.87080'), ('Ewell', 11998, '37.32890', '-76.74250'), ('Five Forks', 11998, '37.25200', '-76.76550'), ('Governors Land', 262, '37.24920', '-76.83020'), ('Grove', 11998, '37.22972', '-76.62722'), ('Jamestown', 11998, '37.22000', '-76.76000'), ('Kings Corner', 2866, '37.40090', '-76.87380'), ('Kings Point', 11998, '37.24382', '-76.70546'), ('Lightfoot', 11998, '37.34000', '-76.75440'), ('Norge', 11998, '37.36800', '-76.77080'), ('Toano', 11998, '37.37920', '-76.80300'), ('Warren Mill', 11998, '37.37280', '-76.84110'), ('Williamsburg', 11998, '37.27000', '-76.70690'), ('Williamsburg Airport', 11998, '37.24040', '-76.71820'), ('York River State Park', 11998, '37.41410', '-76.71420')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ090': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Busch Gardens', 11998, '37.22910', '-76.63640'), ('Centerville', 11998, '37.31640', '-76.78950'), ('Christensons Corner', 11998, '37.38780', '-76.70890'), ('Croaker', 11998, '37.39670', '-76.75310'), ('Diascund', 2866, '37.39420', '-76.87080'), ('Ewell', 11998, '37.32890', '-76.74250'), ('Five Forks', 11998, '37.25200', '-76.76550'), ('Governors Land', 262, '37.24920', '-76.83020'), ('Grove', 11998, '37.22972', '-76.62722'), ('Jamestown', 11998, '37.22000', '-76.76000'), ('Kings Corner', 2866, '37.40090', '-76.87380'), ('Kings Point', 11998, '37.24382', '-76.70546'), ('Lightfoot', 11998, '37.34000', '-76.75440'), ('Norge', 11998, '37.36800', '-76.77080'), ('Toano', 11998, '37.37920', '-76.80300'), ('Warren Mill', 11998, '37.37280', '-76.84110'), ('Williamsburg', 11998, '37.27000', '-76.70690'), ('Williamsburg Airport', 11998, '37.24040', '-76.71820'), ('York River State Park', 11998, '37.41410', '-76.71420')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ091': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barlows Corner', 11998, '37.35900', '-76.71670'), ('Camp Peary', 11998, '37.32150', '-76.66370'), ('Carver Gardens', 11998, '37.25080', '-76.65890'), ('Dare', 9429, '37.16900', '-76.43830'), ('Grafton', 180150, '37.16570', '-76.46680'), ('Harris Grove', 9429, '37.19417', '-76.48222'), ('Hornsbyville', 9429, '37.19640', '-76.46860'), ('Lackey', 9429, '37.23210', '-76.54790'), ('Messick', 11566, '37.12070', '-76.34550'), ('Oaktree', 11998, '37.33330', '-76.70500'), ('Plum Tree Island Refuge', 11566, '37.13280', '-76.32910'), ('Poquoson', 11566, '37.13170', '-76.38340'), ('Queens Lake', 11998, '37.29028', '-76.65806'), ('Seaford', 9429, '37.19790', '-76.43240'), ('Skimino', 11998, '37.34690', '-76.70500'), ('Tabb', 180150, '37.13010', '-76.45730'), ('U.s. Naval Weapons', 9429, '37.26770', '-76.57510'), ('Water Country U.S.A.', 11998, '37.26200', '-76.63850'), ('York Terrace', 11998, '37.26280', '-76.66170'), ('Yorktown', 203, '37.23450', '-76.50720')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ091': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Barlows Corner', 11998, '37.35900', '-76.71670'), ('Camp Peary', 11998, '37.32150', '-76.66370'), ('Carver Gardens', 11998, '37.25080', '-76.65890'), ('Dare', 9429, '37.16900', '-76.43830'), ('Grafton', 180150, '37.16570', '-76.46680'), ('Harris Grove', 9429, '37.19417', '-76.48222'), ('Hornsbyville', 9429, '37.19640', '-76.46860'), ('Lackey', 9429, '37.23210', '-76.54790'), ('Messick', 11566, '37.12070', '-76.34550'), ('Oaktree', 11998, '37.33330', '-76.70500'), ('Plum Tree Island Refuge', 11566, '37.13280', '-76.32910'), ('Poquoson', 11566, '37.13170', '-76.38340'), ('Queens Lake', 11998, '37.29028', '-76.65806'), ('Seaford', 9429, '37.19790', '-76.43240'), ('Skimino', 11998, '37.34690', '-76.70500'), ('Tabb', 180150, '37.13010', '-76.45730'), ('U.s. Naval Weapons', 9429, '37.26770', '-76.57510'), ('Water Country U.S.A.', 11998, '37.26200', '-76.63850'), ('York Terrace', 11998, '37.26280', '-76.66170'), ('Yorktown', 203, '37.23450', '-76.50720')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ092': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Adams Grove', 589, '36.69310', '-77.38600'), ('Berlin', 320, '36.85750', '-76.97750'), ('Boykins', 620, '36.57720', '-77.19890'), ('Branchville', 123, '36.56970', '-77.25010'), ('Burdette', 8346, '36.76780', '-76.89460'), ('Capron', 167, '36.70940', '-77.20130'), ('Courtland', 1270, '36.71160', '-77.06290'), ('Dory', 1038, '36.86100', '-77.04640'), ('Drewryville', 167, '36.71600', '-77.30660'), ('Franklin', 8346, '36.68080', '-76.93600'), ('Handsom', 1270, '36.64210', '-77.03050'), ('Hunterdale', 8346, '36.70140', '-76.96140'), ('Ivor', 320, '36.90490', '-76.89940'), ('Joyner', 167, '36.77900', '-77.25210'), ('Little Texas', 123, '36.60190', '-77.33970'), ('Manry', 1038, '36.89190', '-77.03520'), ('Newsoms', 282, '36.62760', '-77.12490'), ('Riverdale', 71, '36.56110', '-76.96000'), ('Sebrell', 1270, '36.78460', '-77.12660'), ('Sedley', 1270, '36.77400', '-76.98420'), ('Shiloh', 620, '36.60940', '-77.20000'), ('Story', 1270, '36.70490', '-77.01130'), ('Sunbeam', 71, '36.58770', '-77.02800'), ('Vicksville', 1270, '36.81310', '-77.02230'), ('Worrell', 167, '36.72510', '-77.21650')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ093': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Benns Church', 6324, '36.93760', '-76.58640'), ('Bethel Church', 6324, '36.95420', '-76.71390'), ('Boaz', 916, '36.74670', '-76.76190'), ('Carrollton', 6324, '36.94670', '-76.56080'), ('Carrsville', 8346, '36.71110', '-76.82990'), ('Central Hill', 916, '36.91060', '-76.74080'), ('Collosse', 916, '36.76110', '-76.82190'), ('Comet', 1083, '36.98470', '-76.74420'), ('Indika', 916, '36.82030', '-76.68390'), ('Isle Of Wight', 916, '36.90770', '-76.70800'), ('Lawson', 6324, '37.01110', '-76.63080'), ('Lees Mill', 8346, '36.68250', '-76.89580'), ('Longview', 6324, '36.88890', '-76.60690'), ('Mogarts Beach', 6324, '37.03190', '-76.60110'), ('Moonlight', 1083, '37.03400', '-76.72250'), ('Pons', 297, '37.00030', '-76.79190'), ('Raynor', 320, '36.94920', '-76.78260'), ('Rescue', 6324, '36.99650', '-76.55410'), ('Rushmere', 1083, '37.08300', '-76.67460'), ('Smithfield', 6324, '36.98270', '-76.61780'), ('Walters', 916, '36.77220', '-76.84970'), ('Whitley', 916, '36.88530', '-76.75970'), ('Wills Corner', 6324, '36.88060', '-76.58220'), ('Windsor', 916, '36.80820', '-76.73950'), ('Zuni', 324, '36.86660', '-76.82000')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ093': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Benns Church', 6324, '36.93760', '-76.58640'), ('Bethel Church', 6324, '36.95420', '-76.71390'), ('Boaz', 916, '36.74670', '-76.76190'), ('Carrollton', 6324, '36.94670', '-76.56080'), ('Carrsville', 8346, '36.71110', '-76.82990'), ('Central Hill', 916, '36.91060', '-76.74080'), ('Collosse', 916, '36.76110', '-76.82190'), ('Comet', 1083, '36.98470', '-76.74420'), ('Indika', 916, '36.82030', '-76.68390'), ('Isle Of Wight', 916, '36.90770', '-76.70800'), ('Lawson', 6324, '37.01110', '-76.63080'), ('Lees Mill', 8346, '36.68250', '-76.89580'), ('Longview', 6324, '36.88890', '-76.60690'), ('Mogarts Beach', 6324, '37.03190', '-76.60110'), ('Moonlight', 1083, '37.03400', '-76.72250'), ('Pons', 297, '37.00030', '-76.79190'), ('Raynor', 320, '36.94920', '-76.78260'), ('Rescue', 6324, '36.99650', '-76.55410'), ('Rushmere', 1083, '37.08300', '-76.67460'), ('Smithfield', 6324, '36.98270', '-76.61780'), ('Walters', 916, '36.77220', '-76.84970'), ('Whitley', 916, '36.88530', '-76.75970'), ('Wills Corner', 6324, '36.88060', '-76.58220'), ('Windsor', 916, '36.80820', '-76.73950'), ('Zuni', 324, '36.86660', '-76.82000')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ094': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Beaconsdale', 180150, '37.06420', '-76.47310'), ('Buckroe Beach', 146437, '37.04280', '-76.29360'), ('Denbigh', 180150, '37.12440', '-76.53200'), ('Fort Eustis', 180150, '37.12630', '-76.59570'), ('Fort Monroe', 146437, '37.00580', '-76.30720'), ('Fox Hill', 146437, '37.08080', '-76.29000'), ('Grand View', 146437, '37.07840', '-76.27730'), ('Hallwood', 146437, '37.06600', '-76.29640'), ('Hampton', 146437, '37.04980', '-76.29500'), ('Hilton Village', 180150, '37.03010', '-76.46190'), ('Langley AFB', 146437, '37.08770', '-76.36700'), ('Langley View', 146437, '37.07000', '-76.36460'), ('Lee Hall', 180150, '37.19310', '-76.57300'), ('Menchville', 180150, '37.09240', '-76.52760'), ('Newport News', 180150, '37.07590', '-76.51420'), ('Newport News Golf Course', 180150, '37.17660', '-76.54920'), ('Northampton', 146437, '37.04500', '-76.42420'), ('Oriana', 180150, '37.13360', '-76.52530'), ('Oyster Point', 180150, '37.10530', '-76.50780'), ('Patrick Henry Field', 180150, '37.12950', '-76.49640'), ('Phoebus', 146437, '37.02140', '-76.31830'), ('Raleigh Terrace', 146437, '37.00420', '-76.36810')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ094': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Beaconsdale', 180150, '37.06420', '-76.47310'), ('Buckroe Beach', 146437, '37.04280', '-76.29360'), ('Denbigh', 180150, '37.12440', '-76.53200'), ('Fort Eustis', 180150, '37.12630', '-76.59570'), ('Fort Monroe', 146437, '37.00580', '-76.30720'), ('Fox Hill', 146437, '37.08080', '-76.29000'), ('Grand View', 146437, '37.07840', '-76.27730'), ('Hallwood', 146437, '37.06600', '-76.29640'), ('Hampton', 146437, '37.04980', '-76.29500'), ('Hilton Village', 180150, '37.03010', '-76.46190'), ('Langley AFB', 146437, '37.08770', '-76.36700'), ('Langley View', 146437, '37.07000', '-76.36460'), ('Lee Hall', 180150, '37.19310', '-76.57300'), ('Menchville', 180150, '37.09240', '-76.52760'), ('Newport News', 180150, '37.07590', '-76.51420'), ('Newport News Golf Course', 180150, '37.17660', '-76.54920'), ('Northampton', 146437, '37.04500', '-76.42420'), ('Oriana', 180150, '37.13360', '-76.52530'), ('Oyster Point', 180150, '37.10530', '-76.50780'), ('Patrick Henry Field', 180150, '37.12950', '-76.49640'), ('Phoebus', 146437, '37.02140', '-76.31830'), ('Raleigh Terrace', 146437, '37.00420', '-76.36810')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ095': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Churchland', 100565, '36.86170', '-76.39600'), ('Cradock', 100565, '36.79560', '-76.32140'), ('Downtown Norfolk', 234403, '36.85500', '-76.28350'), ('Downtown Portsmouth', 100565, '36.83820', '-76.30260'), ('Ghent', 234403, '36.86770', '-76.29810'), ('Norfolk International Arpt', 234403, '36.89670', '-76.19790'), ('Norfolk NAS', 234403, '36.93560', '-76.29970'), ('Norview', 234403, '36.88830', '-76.24580'), ('Ocean View', 234403, '36.95040', '-76.24800'), ('Wards Corner', 234403, '36.91870', '-76.27100'), ('Willoughby Spit', 234403, '36.96670', '-76.28600')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ095': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Churchland', 100565, '36.86170', '-76.39600'), ('Cradock', 100565, '36.79560', '-76.32140'), ('Downtown Norfolk', 234403, '36.85500', '-76.28350'), ('Downtown Portsmouth', 100565, '36.83820', '-76.30260'), ('Ghent', 234403, '36.86770', '-76.29810'), ('Norfolk International Arpt', 234403, '36.89670', '-76.19790'), ('Norfolk NAS', 234403, '36.93560', '-76.29970'), ('Norview', 234403, '36.88830', '-76.24580'), ('Ocean View', 234403, '36.95040', '-76.24800'), ('Wards Corner', 234403, '36.91870', '-76.27100'), ('Willoughby Spit', 234403, '36.96670', '-76.28600')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ096': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Chuckatuck', 63677, '36.86140', '-76.58010'), ('Cleopus', 63677, '36.59280', '-76.83030'), ('Crittenden', 63677, '36.91010', '-76.49590'), ('Deanes', 63677, '36.83940', '-76.46280'), ('Downtown Suffolk', 63677, '36.72440', '-76.58660'), ('Driver', 63677, '36.82310', '-76.50280'), ('Elwood', 63677, '36.67610', '-76.82420'), ('Hobson', 63677, '36.89470', '-76.51220'), ('Holland', 63677, '36.68110', '-76.78060'), ('Huntersville', 63677, '36.87420', '-76.43170'), ('Kilby', 63677, '36.72480', '-76.63330'), ('Kings Fork', 63677, '36.78180', '-76.62700'), ('Lummis', 63677, '36.69500', '-76.70140'), ('Magnolia', 63677, '36.74580', '-76.54080'), ('Nurney', 63677, '36.64220', '-76.61420'), ('Saunders', 63677, '36.64000', '-76.57580'), ('Somerton', 308, '36.56810', '-76.75170'), ('Suffolk Airport', 63677, '36.68330', '-76.60190'), ('Whaleyville', 63677, '36.58820', '-76.68480'), ('Wilroy', 63677, '36.78640', '-76.53390')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ096': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Chuckatuck', 63677, '36.86140', '-76.58010'), ('Cleopus', 63677, '36.59280', '-76.83030'), ('Crittenden', 63677, '36.91010', '-76.49590'), ('Deanes', 63677, '36.83940', '-76.46280'), ('Downtown Suffolk', 63677, '36.72440', '-76.58660'), ('Driver', 63677, '36.82310', '-76.50280'), ('Elwood', 63677, '36.67610', '-76.82420'), ('Hobson', 63677, '36.89470', '-76.51220'), ('Holland', 63677, '36.68110', '-76.78060'), ('Huntersville', 63677, '36.87420', '-76.43170'), ('Kilby', 63677, '36.72480', '-76.63330'), ('Kings Fork', 63677, '36.78180', '-76.62700'), ('Lummis', 63677, '36.69500', '-76.70140'), ('Magnolia', 63677, '36.74580', '-76.54080'), ('Nurney', 63677, '36.64220', '-76.61420'), ('Saunders', 63677, '36.64000', '-76.57580'), ('Somerton', 308, '36.56810', '-76.75170'), ('Suffolk Airport', 63677, '36.68330', '-76.60190'), ('Whaleyville', 63677, '36.58820', '-76.68480'), ('Wilroy', 63677, '36.78640', '-76.53390')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ097': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bowers Hill', 199184, '36.78410', '-76.42340'), ('Chesapeake Airport', 199184, '36.66310', '-76.32230'), ('Deep Creek', 199184, '36.74070', '-76.34440'), ('Fentress', 199184, '36.69800', '-76.18420'), ('Great Bridge', 199184, '36.71280', '-76.23820'), ('Greenbrier', 199184, '36.78150', '-76.20990'), ('Herberts Corner', 199184, '36.72750', '-76.30250'), ('Hickory', 199184, '36.66400', '-76.22590'), ('Mount Pleasant', 425257, '36.71150', '-76.13420'), ('Northwest', 199184, '36.56370', '-76.19940'), ('Portlock', 199184, '36.78500', '-76.27780'), ('South Norfolk', 199184, '36.80000', '-76.28330'), ('Western Branch', 199184, '36.82520', '-76.40650')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ098': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Back Bay', 425257, '36.65360', '-76.03170'), ('Bayside', 425257, '36.88880', '-76.13340'), ('Cape Henry', 425257, '36.92960', '-76.01310'), ('Dam Neck', 425257, '36.78280', '-75.96550'), ('Gallups Corner', 425257, '36.79970', '-76.12970'), ('Kempsville', 425257, '36.82730', '-76.16000'), ('London Bridge', 425257, '36.84170', '-76.05000'), ('Lynnhaven', 425257, '36.83600', '-76.05950'), ('Macons Corner', 425257, '36.80000', '-76.00440'), ('Munden', 425257, '36.57770', '-76.02720'), ('North Virginia Beach', 425257, '36.89070', '-75.98800'), ('Oceana', 425257, '36.84190', '-76.01330'), ('Oceana NAS', 425257, '36.81520', '-76.02780'), ('Princess Anne', 425257, '36.75180', '-76.05390'), ('Princess Anne Plaza', 425257, '36.83680', '-76.09150'), ('Pungo', 425257, '36.72400', '-76.01780'), ('Rudee Heights', 425257, '36.82690', '-75.97690'), ('Sandbridge Beach', 425257, '36.72280', '-75.93540'), ('Sigma', 425257, '36.73170', '-75.98640'), ('Virginia Beach', 425257, '36.84950', '-75.97730')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ099': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Accomac', 547, '37.71850', '-75.66770'), ('Assawoman', 290, '37.87400', '-75.52290'), ('Atlantic', 290, '37.90330', '-75.50620'), ('Bloxom', 395, '37.83080', '-75.62020'), ('Chincoteague', 4317, '37.94930', '-75.35530'), ('Clam', 837, '37.81300', '-75.67150'), ('Greenbackville', 4317, '38.00140', '-75.41530'), ('Guilford', 395, '37.82450', '-75.65230'), ('Hallwood', 290, '37.87780', '-75.58950'), ('Harborton', 173, '37.66000', '-75.84000'), ('Horntown', 4317, '37.97020', '-75.46310'), ('Keller', 173, '37.62040', '-75.76450'), ('Locustville', 236, '37.65340', '-75.67870'), ('Mappsville', 290, '37.84480', '-75.56780'), ('Melfa', 450, '37.64920', '-75.74080'), ('Modest Town', 395, '37.81190', '-75.57320'), ('Nelsonia', 395, '37.81960', '-75.58780'), ('New Church', 3922, '37.97910', '-75.53150'), ('Oak Hall', 290, '37.93650', '-75.54610'), ('Onancock', 1525, '37.70990', '-75.74430'), ('Onley', 496, '37.69060', '-75.71930'), ('Painter', 246, '37.58550', '-75.78380'), ('Parksley', 837, '37.78580', '-75.65400'), ('Pungoteague', 173, '37.62990', '-75.81350'), ('Quinby', 246, '37.55630', '-75.73170'), ('Sanford', 337, '37.92200', '-75.66870'), ('Saxis', 337, '37.92540', '-75.72360'), ('Tangier', 604, '37.82500', '-75.99340'), ('Tasley', 496, '37.70870', '-75.70520'), ('Temperanceville', 290, '37.89340', '-75.54890'), ('Wachapreague', 236, '37.60620', '-75.68980'), ('Wallops Island', 290, '37.84390', '-75.47940')], 'partOfState': 'southeast', 'wfo': 'AKQ'}, +'VAZ100': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Bay View', 499, '37.27667', '-75.96778'), ('Birdsnest', 572, '37.43850', '-75.88240'), ('Cape Charles', 1134, '37.27040', '-76.01460'), ('Cape Charles Light', 499, '37.12160', '-75.90280'), ('Capeville', 499, '37.20500', '-75.95720'), ('Cheapside', 1134, '37.20070', '-75.98320'), ('Cheriton', 499, '37.28800', '-75.96760'), ('Dalbys', 499, '37.23000', '-75.97060'), ('Eastville', 203, '37.35080', '-75.94040'), ('Exmore', 1136, '37.53370', '-75.82410'), ('Fishermans Island', 1134, '37.10000', '-75.97000'), ('Franktown', 572, '37.47800', '-75.87830'), ('Jamesville', 572, '37.51470', '-75.93250'), ('Kiptopeke', 1134, '37.13950', '-75.96380'), ('Kiptopeke State Park', 1134, '37.17000', '-75.97920'), ('Machipongo', 203, '37.40340', '-75.90180'), ('Nassawadox', 572, '37.47650', '-75.86280'), ('Oyster', 499, '37.28640', '-75.92260'), ('Plantation', 1134, '37.24030', '-75.98380'), ('Silver Beach', 572, '37.48460', '-75.96110'), ('Simpkins', 203, '37.32420', '-75.94390'), ('Smith Beach', 203, '37.38280', '-75.98380'), ('Townsend', 1134, '37.18540', '-75.95820'), ('Wardtown', 572, '37.50830', '-75.87040')], 'partOfState': 'eastern', 'wfo': 'AKQ'}, +'VAZ501': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Ada', 0, '38.83690', '-77.91860'), ('Airlie', 6670, '38.75690', '-77.79190'), ('Ashville', 0, '38.86420', '-77.92250'), ('Bethel', 6670, '38.76610', '-77.81610'), ('Cresthill', 183, '38.76750', '-78.00860'), ('Delaplane', 0, '38.92000', '-77.92000'), ('Halfway', 632, '38.91610', '-77.74500'), ('Hume', 0, '38.83190', '-77.99970'), ('Markham', 0, '38.90390', '-78.00220'), ('Marshall', 0, '38.87000', '-77.85000'), ('Meadowville', 266, '38.79810', '-77.81560'), ('Orlean', 0, '38.74970', '-77.96220'), ('Paris', 0, '39.00440', '-77.95170'), ('The Plains', 266, '38.86280', '-77.77360'), ('Upperville', 0, '38.99390', '-77.88500'), ('Warrenton', 6670, '38.71820', '-77.79710')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ502': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Auburn', 1332, '38.70280', '-77.70110'), ('Bealeton', 624, '38.57170', '-77.76420'), ('Bristersburg', 1332, '38.58330', '-77.61420'), ('Broken Hill', 1332, '38.75110', '-77.70830'), ('Calverton', 1332, '38.63190', '-77.67080'), ('Goldvein', 0, '38.44890', '-77.65560'), ('Midland', 624, '38.59940', '-77.72470'), ('Morrisville', 624, '38.50170', '-77.70030'), ('Opal', 624, '38.62080', '-77.80030'), ('Remington', 624, '38.53410', '-77.80900'), ('Somerville', 624, '38.52170', '-77.60970'), ('Sumerduck', 624, '38.46000', '-77.72830'), ('Turnbull', 6670, '38.66750', '-77.86060')], 'partOfState': 'northern', 'wfo': 'LWX'}, +'VAZ503': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Hightown', 158, '38.43110', '-79.63190'), ('Mill Gap', 158, '38.32170', '-79.70420'), ('New Hampden', 158, '38.49280', '-79.56360')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VAZ504': {'fullStateName': 'Virginia', 'state': 'VA', 'cities': [('Clover Creek', 158, '38.27000', '-79.54920'), ('Doe Hill', 0, '38.43190', '-79.44470'), ('Liberty', 158, '38.28890', '-79.45970'), ('McDowell', 158, '38.33560', '-79.49080'), ('Monterey', 158, '38.41180', '-79.58070'), ('Mustoe', 158, '38.32360', '-79.64060'), ('Palo Alto', 0, '38.42330', '-79.37060'), ('Possum Trot', 158, '38.47000', '-79.53250'), ('Sirons Mill', 158, '38.39750', '-79.47330'), ('Vanderpool', 158, '38.36940', '-79.62560'), ('Williamsville', 158, '38.20000', '-79.56670')], 'partOfState': 'western', 'wfo': 'LWX'}, +'VIZ001': {'fullStateName': 'Virgin Islands', 'state': 'VI', 'cities': [("Anna's Retreat", 8197, '18.34210', '-64.88790'), ('Charlotte Amalie', 11004, '18.34400', '-64.93350'), ('Charlotte Amalie E', 2722, '18.33700', '-64.91270'), ('Charlotte Amalie W', 5146, '18.33920', '-64.96050'), ('Cruz Bay', 2743, '18.32250', '-64.78240')], 'partOfState': '', 'wfo': 'SJU'}, +'VIZ002': {'fullStateName': 'Virgin Islands', 'state': 'VI', 'cities': [('Christiansted', 2637, '17.74630', '-64.70730'), ('Frederiksted', 732, '17.71370', '-64.88170'), ('Frederiksted South', 3035, '17.70740', '-64.88010'), ('Grove Place', 2797, '17.72630', '-64.82750')], 'partOfState': '', 'wfo': 'SJU'}, +'VTZ001': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Alburgh', 0, '44.97500', '-73.30060'), ('Alburgh Center', 0, '44.95360', '-73.27030'), ('Alburgh Dunes State Park', 0, '44.87280', '-73.28470'), ('Alburgh Springs', 0, '44.99190', '-73.22330'), ('East Alburgh', 0, '44.97310', '-73.23000'), ('Gordon Landing', 0, '44.68860', '-73.34720'), ('Grand Isle', 1698, '44.72000', '-73.30000'), ('Grand Isle State Park', 0, '44.68810', '-73.29750'), ('Isle La Motte', 488, '44.87000', '-73.33000'), ('Knight Island State Park', 0, '44.81310', '-73.24720'), ('Knight Point State Park', 0, '44.76970', '-73.29360'), ('North Hero', 488, '44.82200', '-73.28000'), ('North Hero State Park', 0, '44.91360', '-73.24360'), ('South Alburgh', 0, '44.88750', '-73.27890'), ('South Hero', 1698, '44.64000', '-73.31000')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTZ002': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Burton Island State Park', 0, '44.77250', '-73.20530'), ('East Fairfield', 0, '44.78440', '-72.85890'), ('East Franklin', 0, '44.99610', '-72.83250'), ('East Georgia', 0, '44.68000', '-73.08360'), ('Exit 22 I89', 0, '45.00820', '-73.08600'), ('Fairfax', 1537, '44.67000', '-73.02000'), ('Fairfield', 7650, '44.80000', '-72.95000'), ('Franklin', 1473, '44.98000', '-72.92000'), ('Georgia Center', 0, '44.72750', '-73.11810'), ('Georgia Plains', 0, '44.72110', '-73.16440'), ('Highgate Falls', 2548, '44.93000', '-73.03000'), ('Highgate Springs', 2548, '44.97000', '-73.10000'), ('Kill Kare State Park', 0, '44.77920', '-73.18310'), ('Lake Carmi State Park', 0, '44.95410', '-72.87400'), ('North Fairfax', 0, '44.76060', '-73.06250'), ('Sheldon', 1473, '44.88000', '-72.95000'), ('St. Albans', 7650, '44.81130', '-73.08490'), ('St. Albans Bay State Park', 0, '44.81080', '-73.14500'), ('Swanton', 2548, '44.92150', '-73.12100'), ('Swanton Junction', 0, '44.87780', '-73.09920'), ('West Swanton', 0, '44.96890', '-73.21280'), ('Woods Island State Park', 0, '44.80250', '-73.20970')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTZ003': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Albany', 165, '44.73050', '-72.38200'), ('Albany Center', 0, '44.73670', '-72.35000'), ('Barton', 742, '44.74960', '-72.17740'), ('Beebe Plains', 0, '45.00530', '-72.14110'), ('Brownington', 0, '44.83080', '-72.17220'), ('Brownington Center', 0, '44.82280', '-72.14860'), ('Coventry', 826, '44.87000', '-72.27000'), ('Craftsbury', 165, '44.63000', '-72.37000'), ('Craftsbury Common', 0, '44.65420', '-72.38250'), ('Crystal Lake State Park', 0, '44.74890', '-72.16330'), ('Derby Center', 670, '44.95580', '-72.13230'), ('Derby Line', 776, '45.00240', '-72.10400'), ('East Albany', 0, '44.73110', '-72.31670'), ('East Brownington', 0, '44.80080', '-72.08610'), ('East Charleston', 849, '44.83000', '-72.00000'), ('East Craftsbury', 0, '44.64250', '-72.34360'), ('Evansville', 0, '44.80310', '-72.13080'), ('Glover', 742, '44.70000', '-72.18000'), ('Greensboro', 239, '44.58000', '-72.28000'), ('Holland', 0, '44.96690', '-72.00280'), ('Irasburg', 0, '44.80000', '-72.28000'), ('Jay', 593, '44.97000', '-72.47000'), ('Lowell', 165, '44.80000', '-72.45000'), ('Morgan Center', 849, '44.92000', '-71.98000'), ('Newport', 5005, '44.93700', '-72.20890'), ('Newport Center', 5005, '44.95000', '-72.30000'), ('North Troy', 593, '44.99540', '-72.40490'), ('Orleans', 826, '44.81060', '-72.20180'), ('South Albany', 0, '44.69140', '-72.31250'), ('Troy', 0, '44.90140', '-72.40190'), ('West Charleston', 0, '44.89890', '-72.06000'), ('Westfield', 593, '44.88000', '-72.42000'), ('West Glover', 0, '44.72830', '-72.22440'), ('Westmore', 742, '44.77000', '-72.05000')], 'partOfState': 'northeast', 'wfo': 'BTV'}, +'VTZ004': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Averill', 849, '45.00000', '-71.72000'), ('Brighton State Park', 0, '44.79860', '-71.85000'), ('Brunswick Springs', 0, '44.73640', '-71.63280'), ('Canaan', 1255, '45.00000', '-71.53000'), ('Concord', 6319, '44.43000', '-71.88000'), ('Concord Corner', 0, '44.40140', '-71.86190'), ('East Brighton', 0, '44.78580', '-71.80750'), ('East Concord', 0, '44.42470', '-71.75420'), ('Ferdinand', 0, '44.71690', '-71.77670'), ('Gallup Mills', 0, '44.57500', '-71.78470'), ('Gilman', 0, '44.41220', '-71.72280'), ('Granby', 1859, '44.57000', '-71.77000'), ('Island Pond', 849, '44.81290', '-71.88550'), ('Lunenburg', 1859, '44.47000', '-71.68000'), ('Maidstone', 1255, '44.67000', '-71.61000'), ('Maidstone State Park', 0, '44.65410', '-71.63910'), ('Norton', 849, '45.00000', '-71.80000'), ('Victory', 1227, '44.52000', '-71.85000')], 'partOfState': 'northeast', 'wfo': 'BTV'}, +'VTZ005': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Burlington', 38889, '44.48810', '-73.22620'), ('Charlotte', 2741, '44.30000', '-73.25000'), ('Chimney Corner', 0, '44.58810', '-73.16670'), ('Colchester', 6561, '44.53000', '-73.15000'), ('Colchester Point', 0, '44.55280', '-73.31140'), ('East Charlotte', 0, '44.31970', '-73.18920'), ('Essex Center', 0, '44.51190', '-73.05930'), ('Essex Junction', 8591, '44.49030', '-73.11240'), ('Exit 15 I89', 0, '44.49230', '-73.17310'), ('Hinesburg', 15814, '44.33000', '-73.12000'), ('Malletts Bay', 0, '44.54440', '-73.21580'), ('Milton', 1537, '44.63840', '-73.11250'), ('Mt. Philo State Park', 0, '44.27860', '-73.21530'), ('Sand Bar State Park', 0, '44.62670', '-73.24060'), ('Shelburne', 15814, '44.38000', '-73.23000'), ('Shelburne Point', 0, '44.44190', '-73.25110'), ('South Burlington', 15814, '44.44560', '-73.21610'), ('St. George', 0, '44.37750', '-73.12580'), ('Westford', 1537, '44.62000', '-73.02000'), ('West Milton', 0, '44.63010', '-73.17220'), ('Williston', 8591, '44.43000', '-73.07000'), ('Winooski', 6561, '44.49540', '-73.18510')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTZ006': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Belvidere Center', 0, '44.75000', '-72.69170'), ('Belvidere Junction', 0, '44.73690', '-72.74310'), ('Cadys Falls', 0, '44.57810', '-72.61220'), ('Cambridge', 235, '44.63540', '-72.88250'), ('Cambridge Junction', 0, '44.64920', '-72.81380'), ('Eden', 415, '44.70000', '-72.55000'), ('Elmore', 0, '44.45830', '-72.49170'), ('Elmore State Park', 0, '44.53560', '-72.54080'), ('Garfield', 0, '44.60250', '-72.53670'), ('Green River Reservoir', 0, '44.62020', '-72.52730'), ('Hyde Park', 415, '44.59430', '-72.61290'), ('Jeffersonville', 568, '44.64440', '-72.82810'), ('Johnson', 1420, '44.63720', '-72.67790'), ('Morrisville', 2009, '44.55860', '-72.59640'), ('Moscow', 0, '44.44140', '-72.71580'), ('North Wolcott', 0, '44.62000', '-72.45000'), ('Pleasant Valley', 0, '44.59250', '-72.86310'), ('Smugglers Notch', 0, '44.55000', '-72.80000'), ('Stowe', 473, '44.46590', '-72.68570'), ('Waterville', 0, '44.68000', '-72.76000'), ('Wolcott', 2009, '44.55000', '-72.47000')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTZ007': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Barnet', 6319, '44.30000', '-72.05000'), ('Burke Hollow', 0, '44.62250', '-71.95000'), ('Danville', 6319, '44.42000', '-72.13000'), ('East Barnet', 0, '44.32670', '-72.03810'), ('East Burke', 0, '44.58920', '-71.94080'), ('East Hardwick', 0, '44.52170', '-72.30920'), ('East Haven', 364, '44.67000', '-71.90000'), ('East Lyndon', 0, '44.51970', '-71.95830'), ('East Ryegate', 0, '44.20500', '-72.06170'), ('East St. Johnsbury', 0, '44.43860', '-71.94610'), ('Groton', 325, '44.22000', '-72.20000'), ('Hardwick', 239, '44.50000', '-72.37000'), ('Lower Waterford', 6319, '44.35000', '-71.92000'), ('Lyndonville', 1227, '44.53490', '-72.00300'), ('Newark', 0, '44.68000', '-71.95000'), ('North Danville', 0, '44.47000', '-72.10000'), ('Passumpsic', 6319, '44.38000', '-72.03000'), ('Peacham', 239, '44.33000', '-72.17000'), ('Ricker State Park', 0, '44.24710', '-72.24840'), ('Ryegate', 0, '44.22000', '-72.10000'), ('Sheffield', 1227, '44.60000', '-72.12000'), ('South Kirby', 0, '44.46000', '-71.91000'), ('South Ryegate', 0, '44.18830', '-72.14140'), ('South Wheelock', 0, '44.55000', '-72.12000'), ('Stannard', 239, '44.53000', '-72.22000'), ('Stillwater State Park', 0, '44.27970', '-72.27140'), ('St. Johnsbury', 6319, '44.43040', '-72.01320'), ('Sutton', 0, '44.63310', '-72.02610'), ('Walden', 239, '44.43000', '-72.23000'), ('West Burke', 364, '44.64380', '-71.98030'), ('West Danville', 0, '44.40940', '-72.19560')], 'partOfState': 'northeast', 'wfo': 'BTV'}, +'VTZ008': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Adamant', 0, '44.32920', '-72.50330'), ('Alpine Village', 0, '44.06860', '-72.83470'), ('Barre', 9291, '44.20010', '-72.50790'), ('Berlin', 0, '44.21000', '-72.57640'), ('Cabot', 239, '44.40860', '-72.31100'), ('Calais', 262, '44.38000', '-72.43000'), ('Duxbury', 0, '44.32690', '-72.75310'), ('East Barre', 0, '44.15810', '-72.45080'), ('East Cabot', 0, '44.38970', '-72.25170'), ('East Calais', 0, '44.36640', '-72.43030'), ('East Montpelier', 0, '44.27110', '-72.48750'), ('East Montpelier Center', 0, '44.28360', '-72.52580'), ('East Roxbury', 0, '44.07970', '-72.65220'), ('Exit 10 I89', 0, '44.34270', '-72.75130'), ('Exit 6 I89', 0, '44.16760', '-72.57770'), ('Exit 7 I89', 0, '44.21560', '-72.58370'), ('Exit 8 I89', 0, '44.25070', '-72.59630'), ('Exit 9 I89', 0, '44.29820', '-72.68510'), ('Fayston', 0, '44.22920', '-72.88440'), ('Little River State Park', 0, '44.40970', '-72.79690'), ('Marshfield', 262, '44.35080', '-72.35210'), ('Middlesex', 1706, '44.30000', '-72.68000'), ('Montpelier', 8035, '44.26650', '-72.57190'), ('Moretown', 1706, '44.25000', '-72.75000'), ('Mount Worcester', 0, '44.44310', '-72.59190'), ('Northfield', 3208, '44.15230', '-72.65650'), ('Plainfield', 262, '44.28000', '-72.43000'), ('Putnamville', 0, '44.34170', '-72.56640'), ('Riverton', 0, '44.20250', '-72.63670'), ('Roxbury', 3208, '44.10000', '-72.73000'), ('South Barre', 1242, '44.16330', '-72.50660'), ('Waitsfield', 3208, '44.18000', '-72.82000'), ('Warren', 3208, '44.12000', '-72.85000'), ('Waterbury', 1706, '44.33940', '-72.75270'), ('Waterbury Center', 0, '44.37810', '-72.71640'), ('Woodbury', 0, '44.43000', '-72.42000'), ('Worcester', 8035, '44.37000', '-72.55000')], 'partOfState': 'central', 'wfo': 'BTV'}, +'VTZ009': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Addison', 2741, '44.08000', '-73.30000'), ('Basin Harbor', 0, '44.19490', '-73.36380'), ('Branbury State Park', 0, '43.90580', '-73.07190'), ('Bridport', 1263, '43.98000', '-73.32000'), ('Brooksville', 0, '44.06560', '-73.17330'), ('Button Bay State Park', 0, '44.18060', '-73.35940'), ('Chimney Point', 0, '44.03610', '-73.41860'), ('Chipmans Point', 0, '43.80000', '-73.37610'), ('Cornwall', 6252, '43.97000', '-73.22000'), ('D A R State Park', 0, '44.05490', '-73.41230'), ('East Middlebury', 0, '43.97330', '-73.10670'), ('Ferrisburg', 2741, '44.20000', '-73.25000'), ('Kingsland Bay State Park', 0, '44.23280', '-73.30140'), ('Leicester', 1684, '43.87000', '-73.10000'), ('Middlebury', 6252, '44.00770', '-73.15720'), ('Monkton', 1786, '44.23000', '-73.15000'), ('New Haven', 1786, '44.12000', '-73.15000'), ('New Haven Mills', 0, '44.09170', '-73.10920'), ('Orwell', 2770, '43.80000', '-73.30000'), ('Panton', 0, '44.14860', '-73.34080'), ('Salisbury', 1684, '43.90000', '-73.10000'), ('Shoreham', 2770, '43.90000', '-73.32000'), ('Vergennes', 2741, '44.16740', '-73.25570'), ('Waltham', 0, '44.12360', '-73.22860'), ('West Addison', 0, '44.08000', '-73.40000'), ('Weybridge', 0, '44.06640', '-73.21610'), ('Whiting', 0, '43.87000', '-73.20000')], 'partOfState': 'central', 'wfo': 'BTV'}, +'VTZ010': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Ainsworth State Park', 0, '44.07470', '-72.56360'), ('Allis State Park', 0, '44.04810', '-72.63670'), ('Boltonville', 0, '44.17080', '-72.10030'), ('Bradford', 815, '43.99410', '-72.12820'), ('Bradford Center', 0, '44.01310', '-72.17110'), ('Brookfield', 3208, '44.05000', '-72.60000'), ('Chelsea', 2189, '43.98000', '-72.47000'), ('Corinth', 815, '44.02000', '-72.23000'), ('Corinth Corners', 0, '44.01000', '-72.34940'), ('East Braintree', 0, '43.99580', '-72.65190'), ('East Brookfield', 0, '44.02750', '-72.57190'), ('East Corinth', 0, '44.06390', '-72.22280'), ('East Orange', 0, '44.09470', '-72.34190'), ('East Randolph', 1242, '43.93000', '-72.55000'), ('Ely', 0, '43.87640', '-72.17690'), ('Fairlee', 0, '43.90750', '-72.14390'), ('Newbury', 396, '44.08040', '-72.06060'), ('Orange', 2189, '44.15000', '-72.40000'), ('Post Mills', 0, '43.88560', '-72.26110'), ('Randolph', 3208, '43.92000', '-72.67000'), ('South Newbury', 0, '44.05000', '-72.08000'), ('South Washington', 0, '44.02810', '-72.41330'), ('Strafford', 6538, '43.87000', '-72.38000'), ('Thetford Center', 6538, '43.82000', '-72.23000'), ('Thetford Hill State Park', 0, '43.81340', '-72.23650'), ('Topsham', 0, '44.09890', '-72.22500'), ('Tunbridge', 977, '43.88000', '-72.50000'), ('Vershire', 815, '43.97000', '-72.32000'), ('Waits River', 815, '44.08000', '-72.28000'), ('Washington', 2189, '44.10000', '-72.43000'), ('Wells River', 325, '44.15140', '-72.06590'), ('West Braintree', 0, '43.96940', '-72.68890'), ('West Brookfield', 0, '44.02080', '-72.67250'), ('West Fairlee', 815, '43.90000', '-72.27000'), ('Williamstown', 1242, '44.12000', '-72.53000')], 'partOfState': 'central', 'wfo': 'BTV'}, +'VTZ011': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Benson', 2435, '43.72000', '-73.32000'), ('Bomoseen', 0, '43.64360', '-73.19920'), ('Bomoseen State Park', 0, '43.68860', '-73.23060'), ('Brandon', 1684, '43.80120', '-73.08650'), ('Castleton', 2435, '43.62000', '-73.18000'), ('Center Rutland', 0, '43.60440', '-73.01190'), ('Chippenhook', 0, '43.51830', '-73.01440'), ('Clarendon', 0, '43.51610', '-72.97030'), ('Clarendon Springs', 0, '43.54780', '-73.02280'), ('Danby', 948, '43.35000', '-73.00000'), ('Danby Four Corners', 0, '43.35470', '-73.04720'), ('East Hubbardton', 0, '43.69310', '-73.13860'), ('East Pittsford', 0, '43.67110', '-72.94330'), ('Fair Haven', 2435, '43.59580', '-73.27110'), ('Florence', 0, '43.71640', '-73.06190'), ('Forest Dale', 0, '43.82780', '-73.05420'), ('Half Moon State Park', 0, '43.68900', '-73.21790'), ('Hortonia', 0, '43.74530', '-73.22360'), ('Hubbardton', 1684, '43.72000', '-73.18000'), ('Ira', 0, '43.53000', '-73.07000'), ('Lake St. Catherine', 0, '43.48030', '-73.20530'), ('Middletown Springs', 1575, '43.48000', '-73.12000'), ('North Clarendon', 0, '43.56670', '-72.96580'), ('Pawlet', 2646, '43.35000', '-73.18000'), ('Pittsford', 17292, '43.70000', '-73.03000'), ('Poultney', 1575, '43.51780', '-73.23610'), ('Proctor', 0, '43.66060', '-73.03610'), ('Rutland', 17292, '43.60890', '-72.97960'), ('South Poultney', 0, '43.47560', '-73.23640'), ('Sudbury', 1684, '43.80000', '-73.20000'), ('Tinmouth', 0, '43.45000', '-73.05000'), ('Wells', 2646, '43.42000', '-73.20000'), ('West Castleton', 0, '43.65890', '-73.23220'), ('West Haven', 2435, '43.65000', '-73.35000'), ('West Rutland', 2263, '43.59490', '-73.04550')], 'partOfState': 'southern', 'wfo': 'BTV'}, +'VTZ012': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Amsden', 0, '43.40580', '-72.50640'), ('Andover', 0, '43.27720', '-72.69720'), ('Ascutney', 0, '43.40690', '-72.40750'), ('Ascutney State Park', 0, '43.44190', '-72.43970'), ('Baltimore', 0, '43.36030', '-72.57360'), ('Barnard', 977, '43.73000', '-72.62000'), ('Bethel', 977, '43.83000', '-72.63000'), ('Bridgewater', 977, '43.58000', '-72.63000'), ('Bridgewater Center', 0, '43.61640', '-72.65970'), ('Bridgewater Corners', 0, '43.58830', '-72.65640'), ('Brownsville', 0, '43.46860', '-72.47140'), ('Camp Plymouth', 0, '43.47640', '-72.69530'), ('Cavendish', 958, '43.38000', '-72.62000'), ('Chester', 999, '43.26280', '-72.59390'), ('Coolidge State Park', 0, '43.54720', '-72.68610'), ('Downers', 0, '43.40030', '-72.51470'), ('East Barnard', 0, '43.74580', '-72.54330'), ('East Bethel', 0, '43.87330', '-72.58470'), ('Gassetts', 0, '43.32440', '-72.60720'), ('Hartland', 2569, '43.55000', '-72.40000'), ('Ludlow', 958, '43.39630', '-72.69750'), ('North Hartland', 0, '43.59280', '-72.35220'), ('Norwich', 6538, '43.72000', '-72.30000'), ('Perkinsville', 142, '43.36970', '-72.51620'), ('Plymouth', 958, '43.53000', '-72.73000'), ('Pomfret', 977, '43.70000', '-72.52000'), ('Quechee', 2569, '43.65000', '-72.42000'), ('Queechee State Park', 0, '43.63540', '-72.40670'), ('Reading', 142, '43.47000', '-72.55000'), ('Rochester', 1684, '43.88000', '-72.82000'), ('Sharon', 977, '43.78000', '-72.45000'), ('Silver Lake State Park', 0, '43.73280', '-72.61420'), ('South Pomfret', 0, '43.66500', '-72.54000'), ('South Royalton', 977, '43.82000', '-72.52000'), ('South Woodstock', 977, '43.57000', '-72.53000'), ('Springfield', 3938, '43.28840', '-72.47620'), ('Stockbridge', 17292, '43.78000', '-72.77000'), ('Tyson', 958, '43.47000', '-72.70000'), ('Union Village', 0, '43.78000', '-72.25000'), ('West Bridgewater', 958, '43.60000', '-72.75000'), ('West Hartford', 1636, '43.72000', '-72.42000'), ('Weston', 958, '43.28000', '-72.80000'), ('West Windsor', 0, '43.48610', '-72.49310'), ('White River Junction', 2569, '43.65010', '-72.32340'), ('Wilder', 1636, '43.67230', '-72.31130'), ('Wilgus State Park', 0, '43.39080', '-72.40830'), ('Windsor', 13902, '43.48000', '-72.42000'), ('Woodstock', 977, '43.62620', '-72.51710')], 'partOfState': 'southern', 'wfo': 'BTV'}, +'VTZ013': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Arlington', 1199, '43.06730', '-73.15190'), ('Bennington', 9168, '42.87280', '-73.18510'), ('Dorset', 2065, '43.25500', '-73.09850'), ('Manchester', 602, '43.16200', '-73.07200'), ('Manchester Center', 2065, '43.17780', '-73.04350'), ('North Bennington', 1428, '42.92530', '-73.24430'), ('Old Bennington', 232, '42.88330', '-73.21380'), ('Peru', 2065, '43.23050', '-72.89870'), ('Pownal', 4791, '42.76450', '-73.23780'), ('Readsboro', 237, '42.77100', '-72.94790'), ('Stamford', 16797, '42.75470', '-73.06880'), ('Woodford State Park', 9168, '42.88980', '-73.03450')], 'partOfState': 'southern', 'wfo': 'ALY'}, +'VTZ014': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Jacksonville', 237, '42.79730', '-72.82080'), ('Londonderry', 958, '43.22650', '-72.80550'), ('Newfane', 116, '42.98760', '-72.65640'), ('Stratton', 2065, '43.04280', '-72.91070'), ('Townshend', 116, '43.04300', '-72.66600'), ('West Wardsboro', 116, '43.02970', '-72.85250'), ('Wilmington', 237, '42.86820', '-72.87230')], 'partOfState': 'southern', 'wfo': 'ALY'}, +'VTZ015': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Bellows Falls', 3165, '43.13610', '-72.45320'), ('Brattleboro', 8289, '42.86130', '-72.57420'), ('Guilford Center', 3222, '42.79200', '-72.62400'), ('Putney', 276, '42.97400', '-72.52030'), ('Saxtons River', 519, '43.13890', '-72.51130'), ('Vernon', 1718, '42.78180', '-72.52820'), ('West Brattleboro', 3222, '42.85150', '-72.61100'), ('Westminster', 276, '43.07630', '-72.45600')], 'partOfState': 'southern', 'wfo': 'ALY'}, +'VTZ016': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Bakersfield', 1473, '44.78000', '-72.80000'), ('Berkshire', 0, '44.97170', '-72.77580'), ('East Berkshire', 0, '44.93530', '-72.70970'), ('East Enosburg', 0, '44.86310', '-72.73670'), ('East Fletcher', 0, '44.71310', '-72.83830'), ('East Richford', 0, '45.01110', '-72.58640'), ('Enosburg Falls', 1473, '44.90830', '-72.80440'), ('Fletcher', 235, '44.68000', '-72.92000'), ('Montgomery', 1474, '44.90000', '-72.63000'), ('Montgomery Center', 0, '44.87810', '-72.60280'), ('Richford', 1474, '44.99570', '-72.67340'), ('West Enosburg', 0, '44.87190', '-72.79580')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTZ017': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Bolton', 1706, '44.37000', '-72.88000'), ('Camels Hump State Park', 0, '44.22670', '-72.93390'), ('Huntington', 1457, '44.33000', '-72.98000'), ('Jericho', 1457, '44.50180', '-72.98700'), ('Jonesville', 0, '44.38390', '-72.93810'), ('North Underhill', 0, '44.58530', '-72.93280'), ('Richmond', 1457, '44.40000', '-73.00000'), ('Underhill Center', 0, '44.50750', '-72.90000'), ('Underhill State Park', 0, '44.53030', '-72.83330'), ('West Bolton', 0, '44.44560', '-72.89830')], 'partOfState': 'northwest', 'wfo': 'BTV'}, +'VTZ018': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Bread Loaf', 0, '43.95330', '-72.99310'), ('Bristol', 1786, '44.13650', '-73.08090'), ('Goshen', 0, '43.85000', '-73.02000'), ('Granville', 3208, '43.98000', '-72.85000'), ('Hancock', 3208, '43.93000', '-72.83000'), ('Hanksville', 1786, '44.25000', '-72.97000'), ('Ripton', 6252, '43.98000', '-73.03000'), ('South Lincoln', 1786, '44.07000', '-72.98000'), ('Starksboro', 0, '44.23000', '-73.05000')], 'partOfState': 'central', 'wfo': 'BTV'}, +'VTZ019': {'fullStateName': 'Vermont', 'state': 'VT', 'cities': [('Belmont', 0, '43.41560', '-72.82280'), ('Chittenden', 17292, '43.72000', '-72.95000'), ('Cuttingsville', 0, '43.48830', '-72.88280'), ('East Wallingford', 0, '43.44940', '-72.87640'), ('Gifford Woods State Park', 0, '43.67410', '-72.81270'), ('Killington', 17292, '43.67000', '-72.77000'), ('Mendon', 17292, '43.65000', '-72.93000'), ('Mt. Holly', 958, '43.45000', '-72.82000'), ('Mt. Tabor', 0, '43.35060', '-72.98310'), ('Pittsfield', 17292, '43.78000', '-72.82000'), ('Shrewsbury', 948, '43.52000', '-72.87000'), ('South Wallingford', 948, '43.42000', '-72.98000'), ('Wallingford', 948, '43.48050', '-72.97570')], 'partOfState': 'southern', 'wfo': 'BTV'}, +'WAZ001': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Eastsound', 0, '48.69680', '-122.90550'), ('Friday Harbor', 1989, '48.53690', '-123.03130'), ('Friday Harbor', 0, '48.53430', '-123.01710'), ('Roche Harbor', 0, '48.60980', '-123.14880'), ('Waldron', 0, '48.68760', '-123.03690')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ019': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Adams Fork Campground', 2116, '46.32000', '-121.66000'), ('Coldwater Lake', 1045, '46.29000', '-122.27000'), ('Coldwater Ridge Visitors Center', 0, '46.29000', '-122.28200'), ('Indian Heaven Wilderness', 2116, '45.95000', '-121.77000'), ('Johnston Ridge Visitors Center', 0, '46.27200', '-122.23200'), ('Mount St. Helens', 1045, '46.19000', '-122.19000'), ('Northwoods', 2116, '46.06000', '-122.01000'), ('Spirit Lake', 1045, '46.27000', '-122.14000'), ('Stabler', 2116, '45.81000', '-121.89000'), ('Swift Reservoir', 1055, '46.06000', '-122.12000'), ('Trapper Creek Wilderness', 1200, '45.89000', '-122.03000'), ('Upper Lewis River Falls', 2116, '46.16000', '-121.88000'), ('Willard', 4632, '45.78300', '-121.63300')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ020': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Brooklyn', 3049, '46.78300', '-123.50000'), ('Frances', 657, '46.53300', '-123.50000'), ('Lebam', 176, '46.56700', '-123.55000'), ('Menlo', 2975, '46.63330', '-123.65000'), ('Ryderwood', 590, '46.37000', '-123.05000'), ('Sutico', 657, '46.63000', '-123.51000'), ('Willapa', 2975, '46.66660', '-123.66660')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ021': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Altoona', 377, '46.26700', '-123.65000'), ('Bay Center', 174, '46.62000', '-123.95000'), ('Cape Disappointment', 950, '46.27000', '-124.08000'), ('Cathlamet', 565, '46.20020', '-123.37960'), ('Chinook', 457, '46.27700', '-123.95000'), ('Deep River', 377, '46.34800', '-123.68500'), ('Grays River', 565, '46.35000', '-123.60000'), ('Ilwaco', 950, '46.31090', '-124.03310'), ('Klipsan Beach', 1459, '46.46660', '-124.05000'), ('Knappton', 377, '46.27500', '-123.81660'), ('Leadbetter Point', 1459, '46.64000', '-124.06000'), ('Long Beach', 1283, '46.35550', '-124.05320'), ('Megler', 377, '46.25000', '-123.86660'), ('Naselle', 377, '46.36700', '-123.81700'), ('Nemah', 1459, '46.51600', '-123.88330'), ('Ocean Park', 1459, '46.49570', '-124.04320'), ('Oceanside', 1283, '46.40000', '-124.04500'), ('Oysterville', 1459, '46.55000', '-124.03330'), ('Pillar Rock', 565, '46.26660', '-123.58330'), ('Raymond', 2975, '46.68350', '-123.73690'), ('Rosburg', 377, '46.33330', '-123.63330'), ('Seaview', 1283, '46.33330', '-124.05100'), ('Skamokawa', 565, '46.26700', '-123.45000'), ('South Bend', 1807, '46.66000', '-123.80300'), ('Tokeland', 194, '46.71000', '-123.98330')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ022': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Carrolls', 63, '46.06700', '-122.85000'), ('Castle Rock', 2130, '46.27290', '-122.90150'), ('Kalama', 1783, '46.01030', '-122.84090'), ('Kelso', 11895, '46.12640', '-122.89140'), ('Lexington', 4565, '46.18300', '-122.90000'), ('Longview', 34660, '46.13330', '-122.93330'), ('Oak Point', 1629, '46.18330', '-123.18330'), ('Ostrander', 4565, '46.18330', '-122.88330'), ('Rose Valley', 11895, '46.10500', '-122.84000'), ('Silver Lake', 2130, '46.29500', '-122.80000'), ('Stella', 2882, '46.19000', '-123.10500'), ('Woodland', 3780, '45.91500', '-122.74300')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ024': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bingen', 672, '45.71420', '-121.46810'), ('White Salmon', 2193, '45.72770', '-121.48370')], 'partOfState': 'central', 'wfo': 'PDT'}, +'WAZ026': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Ellensburg', 15414, '46.99710', '-120.54800'), ('Kittitas', 1105, '46.98500', '-120.41700')], 'partOfState': 'central', 'wfo': 'PDT'}, +'WAZ027': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Fairview-Sumach', 2749, '46.58780', '-120.47460'), ('Fruitvale', 4125, '46.61720', '-120.54170'), ('Grandview', 8377, '46.24440', '-119.91080'), ('Granger', 2530, '46.34280', '-120.18960'), ('Harrah', 542, '46.40430', '-120.54130'), ('Mabton', 1891, '46.21290', '-119.99560'), ('Moxee', 821, '46.56340', '-120.39880'), ('Naches', 643, '46.72950', '-120.69730'), ('Satus', 746, '46.23200', '-120.11840'), ('Selah', 6310, '46.65620', '-120.53390'), ('South Broadway', 2735, '46.56640', '-120.51560'), ('Sunnyside', 13905, '46.32100', '-120.01250'), ('Terrace Heights', 6447, '46.60600', '-120.43770'), ('Tieton', 1154, '46.70180', '-120.75290'), ('Toppenish', 8946, '46.38110', '-120.31150'), ('Union Gap', 5621, '46.55510', '-120.48740'), ('Wapato', 4582, '46.44570', '-120.42070'), ('West Valley', 10433, '46.59230', '-120.60400'), ('White Swan', 3033, '46.38820', '-120.72080'), ('Yakima', 71845, '46.59260', '-120.52890'), ('Zillah', 2198, '46.40370', '-120.25950')], 'partOfState': 'central', 'wfo': 'PDT'}, +'WAZ028': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Benton City', 2624, '46.26800', '-119.48710'), ('Burbank', 3303, '46.19160', '-118.98160'), ('Connell', 2956, '46.66000', '-118.86100'), ('Finley', 5770, '46.16900', '-119.04220'), ('Highland', 3388, '46.13160', '-119.11300'), ('Kahlotus', 214, '46.64360', '-118.55240'), ('Kennewick', 54693, '46.20310', '-119.17040'), ('Mesa', 425, '46.57320', '-118.99960'), ('Pasco', 32066, '46.25210', '-119.12780'), ('Prosser', 4838, '46.20620', '-119.76630'), ('Richland', 38708, '46.29400', '-119.29070'), ('West Pasco', 4629, '46.24560', '-119.18170'), ('West Richland', 8385, '46.32450', '-119.39730')], 'partOfState': 'south central', 'wfo': 'PDT'}, +'WAZ029': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('College Place', 7818, '46.04420', '-118.38360'), ('Dayton', 2655, '46.31770', '-117.97680'), ('Garrett', 1022, '46.06140', '-118.38330'), ('Prescott', 314, '46.29910', '-118.31150'), ('Starbuck', 130, '46.51910', '-118.12500'), ('Waitsburg', 1212, '46.26910', '-118.15040'), ('Walla Walla', 29686, '46.06690', '-118.34120'), ('Walla Walla East', 2479, '46.05450', '-118.30260')], 'partOfState': 'southeast', 'wfo': 'PDT'}, +'WAZ030': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [], 'partOfState': 'southeast', 'wfo': 'PDT'}, +'WAZ031': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Anatone', 1095, '46.13430', '-117.12550'), ('Peola', 1517, '46.30550', '-117.47580')], 'partOfState': 'southeast', 'wfo': 'OTX'}, +'WAZ032': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Asotin', 1095, '46.33880', '-117.04390'), ('Clarkston', 7337, '46.41550', '-117.04900'), ('Clarkston Heights', 6117, '46.38630', '-117.07660'), ('Dodge', 1517, '46.52170', '-117.81920'), ('Mayview', 1517, '46.62530', '-117.45880'), ('Pomeroy', 1517, '46.47400', '-117.59550')], 'partOfState': 'southeast', 'wfo': 'OTX'}, +'WAZ033': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Albion', 616, '46.79250', '-117.24950'), ('Belmont', 641, '47.08620', '-117.15680'), ('Colfax', 2844, '46.88410', '-117.36270'), ('Colton', 386, '46.56840', '-117.12700'), ('Diamond', 2844, '46.91750', '-117.48580'), ('Dusty', 621, '46.80620', '-117.65050'), ('Endicott', 621, '46.92890', '-117.68500'), ('Ewen', 548, '47.11680', '-117.73370'), ('Farmington', 153, '47.08890', '-117.04510'), ('Garfield', 641, '47.00840', '-117.14070'), ('Hay', 380, '46.67400', '-117.90880'), ('La Crosse', 380, '46.81440', '-117.87900'), ('Lamont', 106, '47.20060', '-117.90350'), ('Latah', 151, '47.28180', '-117.15430'), ('Malden', 215, '47.23130', '-117.47190'), ('Oakesdale', 420, '47.13090', '-117.24550'), ('Palouse', 1011, '46.91110', '-117.07380'), ('Pine City', 215, '47.20150', '-117.52070'), ('Plaza', 648, '47.31880', '-117.37630'), ('Pullman', 24675, '46.73330', '-117.16200'), ('Rosalia', 648, '47.23700', '-117.36790'), ('Steptoe', 2844, '47.00370', '-117.35300'), ('St. John', 548, '47.08880', '-117.58110'), ('Tekoa', 826, '47.22560', '-117.07330'), ('Thornton', 648, '47.11920', '-117.38650'), ('Uniontown', 345, '46.53740', '-117.08460'), ('Waverly', 121, '47.33950', '-117.22870'), ('Winona', 621, '46.94080', '-117.79300')], 'partOfState': 'eastern', 'wfo': 'OTX'}, +'WAZ034': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Beverly', 2609, '46.83550', '-119.92580'), ('Desert Aire', 1124, '46.67430', '-119.90970'), ('Ephrata', 6808, '47.31230', '-119.53690'), ('George', 528, '47.07860', '-119.85600'), ('Laveview Park', 1733, '47.37270', '-119.50400'), ('Mattawa', 2609, '46.73650', '-119.90080'), ('Moses Lake', 14953, '47.11570', '-119.28620'), ('Othello', 5847, '46.82040', '-119.16710'), ('Quincy', 5044, '47.23380', '-119.85110'), ('Royal City', 1823, '46.89890', '-119.61410'), ('Soap Lake', 1733, '47.38830', '-119.48970'), ('Warden', 2544, '46.96790', '-119.04700'), ('Winchester', 5044, '47.24280', '-119.71780')], 'partOfState': 'central', 'wfo': 'OTX'}, +'WAZ035': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Almira', 302, '47.71060', '-118.93930'), ('Benge', 380, '46.90570', '-118.10080'), ('Coulee City', 600, '47.61190', '-119.28980'), ('Coulee Dam', 1044, '47.96870', '-118.97440'), ('Creston', 232, '47.76000', '-118.51940'), ('Cunningham', 98, '46.82000', '-118.80320'), ('Edwall', 608, '47.51780', '-117.95000'), ('Electric City', 922, '47.93020', '-119.03620'), ('Elmer City', 267, '47.99900', '-118.95240'), ('Grand Coulee', 897, '47.93960', '-119.00390'), ('Harrington', 426, '47.48040', '-118.25440'), ('Hartline', 134, '47.68940', '-119.10590'), ('Hatton', 98, '46.77230', '-118.82180'), ('Irby', 60, '47.35530', '-118.85000'), ('Krupp', 60, '47.40990', '-118.98780'), ('Lamona', 957, '47.35570', '-118.47550'), ('Lincoln', 232, '47.82420', '-118.40830'), ('Lind', 582, '46.97160', '-118.61360'), ('Marlin', 55, '47.40450', '-118.98370'), ('Mohler', 426, '47.40300', '-118.32350'), ('Odessa', 957, '47.33330', '-118.68710'), ('Ralston', 1736, '46.98370', '-118.33830'), ('Ritzville', 1736, '47.12660', '-118.37600'), ('Sprague', 490, '47.30000', '-117.97410'), ('Stratford', 1733, '47.42300', '-119.41900'), ('Washtucna', 260, '46.75350', '-118.31160'), ('Wilbur', 914, '47.75810', '-118.70450'), ('Wilson Creek', 227, '47.42260', '-119.11570')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAZ036': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Airway Heights', 4500, '47.64440', '-117.58290'), ('Chattaroy', 3017, '47.88720', '-117.35400'), ('Cheney', 8832, '47.49060', '-117.57950'), ('Colbert', 6764, '47.82270', '-117.33780'), ('Davenport', 1730, '47.65130', '-118.15320'), ('Deep Creek', 4357, '47.63920', '-117.70670'), ('Dishman', 10031, '47.65890', '-117.27550'), ('Fairchild AFB', 4357, '47.61310', '-117.64370'), ('Fairfield', 494, '47.38520', '-117.17400'), ('Four Lakes', 8832, '47.55680', '-117.58920'), ('Green Acres', 5158, '47.66360', '-117.16090'), ('Liberty Lake', 4660, '47.65440', '-117.08250'), ('Marshall', 8832, '47.55900', '-117.49230'), ('Mead', 6764, '47.76720', '-117.35230'), ('Medical Lake', 3758, '47.57000', '-117.69210'), ('Mica', 9387, '47.55370', '-117.20670'), ('Miles', 232, '47.90650', '-118.28820'), ('Millwood', 1649, '47.68570', '-117.27930'), ('Opportunity', 25065, '47.64950', '-117.24050'), ('Otis Orchards', 6318, '47.70020', '-117.09010'), ('Reardan', 608, '47.66920', '-117.87740'), ('Rockford', 413, '47.45100', '-117.12920'), ('Spangle', 240, '47.43050', '-117.37880'), ('Spokane', 195629, '47.67230', '-117.41400'), ('Trentwood', 4388, '47.69790', '-117.21340'), ('Tum Tum', 283, '47.88830', '-117.67580'), ('Tyler', 3758, '47.43500', '-117.77620'), ('Valleyford', 25065, '47.52580', '-117.23620'), ('Veradale', 9387, '47.64950', '-117.20750')], 'partOfState': 'eastern', 'wfo': 'OTX'}, +'WAZ037': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Addy', 2186, '48.35370', '-117.83520'), ('Arden', 4988, '48.45620', '-117.87180'), ('Cedonia', 389, '48.15230', '-118.16750'), ('Chewelah', 2186, '48.28600', '-117.72970'), ('Clayton', 3017, '47.99080', '-117.55500'), ('Colville', 4988, '48.54330', '-117.89510'), ('Cusick', 212, '48.33450', '-117.29410'), ('Deer Park', 3017, '47.96330', '-117.43400'), ('Diamond Lake', 1921, '48.11980', '-117.19220'), ('Elk', 3017, '48.00980', '-117.27200'), ('Evans', 117, '48.70820', '-118.02120'), ('Ford', 283, '47.90500', '-117.80280'), ('Fruitland', 389, '48.06930', '-118.19200'), ('Gifford', 389, '48.30380', '-118.14050'), ('Hunters', 389, '48.11680', '-118.20050'), ('Ione', 479, '48.74060', '-117.42090'), ('Kettle Falls', 1527, '48.60600', '-118.05890'), ('Loon Lake', 283, '48.05700', '-117.62570'), ('Marcus', 117, '48.66320', '-118.05790'), ('Metaline', 162, '48.85460', '-117.38810'), ('Metaline Falls', 223, '48.86240', '-117.36940'), ('Milan', 3017, '47.96700', '-117.32570'), ('Newman Lake', 6318, '47.77280', '-117.08970'), ('Newport', 1921, '48.18080', '-117.05080'), ('Northport', 336, '48.91670', '-117.77830'), ('Orient', 117, '48.85970', '-118.20100'), ('Orin', 4988, '48.48800', '-117.90530'), ('Rice', 389, '48.42400', '-118.16820'), ('Ruby', 212, '48.52000', '-117.29220'), ('Springdale', 283, '48.05690', '-117.74630'), ('Tiger', 479, '48.68830', '-117.40400'), ('Usk', 212, '48.30830', '-117.27380'), ('Valley', 2186, '48.17180', '-117.72080'), ('Wellpinit', 608, '47.88620', '-117.98550')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAZ038': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Boyds', 117, '48.70830', '-118.12570'), ('Chesaw', 1653, '48.94100', '-119.05020'), ('Curlew', 954, '48.88470', '-118.59230'), ('Danville', 954, '48.98880', '-118.50420'), ('Inchelium', 389, '48.34120', '-118.24740'), ('Keller', 267, '48.07400', '-118.68370'), ('Lauier', 117, '48.99270', '-118.22050'), ('Malo', 954, '48.80100', '-118.60350'), ('Molson', 1653, '48.97530', '-119.19300'), ('Republic', 954, '48.64910', '-118.73180'), ('Wauconda', 954, '48.72220', '-119.00750')], 'partOfState': 'northeast', 'wfo': 'OTX'}, +'WAZ039': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Alpine', 1055, '45.79000', '-122.43000'), ('Amboy', 2085, '45.90000', '-122.45000'), ('Battle Ground', 9296, '45.78200', '-122.54110'), ('Brush Prairie', 2384, '45.73140', '-122.55140'), ('Camas', 12534, '45.58790', '-122.42350'), ('Camp Bonneville', 5136, '45.70000', '-122.41660'), ('Cascade Park', 6656, '45.61000', '-122.54000'), ('Clark County Fairgrounds', 16767, '45.75000', '-122.67000'), ('Elkhorn Mountain', 1055, '45.73000', '-122.37000'), ('Ellsworth', 4423, '45.61000', '-122.57000'), ('Evergreen', 11249, '45.62730', '-122.52730'), ('Fargher Lake', 9296, '45.88330', '-122.51660'), ('Felida', 5683, '45.71680', '-122.70820'), ('Hazel Dell', 5796, '45.67800', '-122.65400'), ('Heisson', 9296, '45.81660', '-122.50000'), ('Hockinson', 5136, '45.73300', '-122.48300'), ('Lacamas Lake', 12534, '45.61000', '-122.43000'), ('La Center', 1654, '45.86420', '-122.66650'), ('McLoughlin Heights', 5796, '45.62000', '-122.60000'), ('Minnehaha', 7689, '45.65700', '-122.62630'), ('Moulton', 1055, '45.82000', '-122.38000'), ('Orchards', 17852, '45.66660', '-122.55000'), ('Proebstel', 5136, '45.67000', '-122.45000'), ('Ridgefield', 2147, '45.81730', '-122.74020'), ('Salmon Creek', 16767, '45.71340', '-122.66110'), ('Salmon Falls', 1055, '45.76000', '-122.42000'), ('Sifton', 5136, '45.68000', '-122.51660'), ('Vancouver Downtown', 143560, '45.63420', '-122.66500'), ('Vancouver Lake', 6670, '45.68000', '-122.73000'), ('Vancouver Mall', 6938, '45.65900', '-122.58370'), ('Washougal', 8595, '45.57900', '-122.34390'), ('Yacolt', 1055, '45.86570', '-122.40590')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ040': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Ariel', 1654, '45.96700', '-122.56700'), ('Chelatchie', 1055, '45.92000', '-122.38330'), ('Cougar', 1055, '46.05000', '-122.30000'), ('Lake Merwin', 1055, '45.98000', '-122.50000'), ('Larch Mountain', 8595, '45.71000', '-122.29000'), ('Pigeon Springs', 3780, '46.06000', '-122.62000'), ('Toutle', 653, '46.33330', '-122.71000'), ('Yale', 1055, '46.00000', '-122.38300'), ('Yale Lake', 1055, '46.02000', '-122.31000')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ041': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Ardenvoir', 957, '47.73580', '-120.36730'), ('Cashmere', 2965, '47.51840', '-120.46760'), ('Chelan', 3522, '47.84630', '-120.02770'), ('East Wenatchee', 5757, '47.41710', '-120.28830'), ('Entiat', 957, '47.67540', '-120.21160'), ('Malaga', 863, '47.37020', '-120.20000'), ('Manson', 3522, '47.88430', '-120.15430'), ('Monitor', 2965, '47.48550', '-120.41680'), ('Rock Island', 863, '47.37180', '-120.13710'), ('Sunnyslope', 2521, '47.49180', '-120.34130'), ('Wenatchee', 27856, '47.42570', '-120.32490')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAZ042': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Carlton', 938, '48.24230', '-120.10900'), ('Conconully', 185, '48.55880', '-119.75100'), ('Dryden', 2965, '47.53820', '-120.55580'), ('Leavenworth', 2074, '47.59130', '-120.66420'), ('Loomis', 994, '48.81930', '-119.62600'), ('Lucerne', 349, '48.20150', '-120.58730'), ('Mazama', 349, '48.57550', '-120.38470'), ('Methow', 643, '48.12480', '-120.00150'), ('Peshastin', 2074, '47.56920', '-120.60170'), ('Plain', 2074, '47.75670', '-120.65370'), ('Telma', 2074, '47.83930', '-120.80870'), ('Twisp', 938, '48.36330', '-120.11950'), ('Winthrop', 349, '48.47290', '-120.17830'), ('Winton', 2074, '47.73470', '-120.73730')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAZ043': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Brewster', 2189, '48.10280', '-119.77960'), ('Bridgeport', 2059, '48.00570', '-119.67120'), ('Disautel', 688, '48.35630', '-119.23500'), ('Ellisforde', 994, '48.78730', '-119.40000'), ('Malott', 2484, '48.26900', '-119.70580'), ('Monse', 2189, '48.13820', '-119.67270'), ('Nespelem', 212, '48.16770', '-118.97140'), ('Nighthawk', 1653, '48.96670', '-119.63780'), ('Okanogan', 2484, '48.36880', '-119.57610'), ('Omak', 4721, '48.40960', '-119.52550'), ('Oroville', 1653, '48.94240', '-119.43160'), ('Pateros', 643, '48.05480', '-119.89990'), ('Riverside', 348, '48.50270', '-119.50750'), ('Tonasket', 994, '48.70480', '-119.43780')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAZ044': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Douglas', 1163, '47.61950', '-120.00220'), ('Mansfield', 319, '47.81150', '-119.63700'), ('Mold', 600, '47.73920', '-119.33780'), ('Palisades', 5044, '47.41820', '-119.90800'), ('Waterville', 1163, '47.64800', '-120.06950'), ('Withrow', 319, '47.70300', '-119.80450')], 'partOfState': 'north central', 'wfo': 'OTX'}, +'WAZ045': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Beacon Rock', 593, '45.62760', '-122.02060'), ('Cape Horn', 0, '45.57260', '-122.19510'), ('North Bonneville', 593, '45.63850', '-121.97300'), ('Prindle', 8595, '45.58500', '-122.16660'), ('Skamania', 593, '45.61700', '-122.05000'), ('Stevenson', 1200, '45.69560', '-121.88450')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ046': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Carson', 2116, '45.72540', '-121.81920'), ('Cook', 4632, '45.71660', '-121.65000'), ('Home Valley', 2116, '45.71660', '-121.76660'), ('Underwood', 4632, '45.72500', '-121.54000')], 'partOfState': 'southwest', 'wfo': 'PQR'}, +'WAZ503': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bellingham', 67171, '48.74400', '-122.46690'), ('Birch Bay', 0, '48.91790', '-122.74460'), ('Everson', 2035, '48.91480', '-122.35090'), ('Ferndale', 8758, '48.85090', '-122.58720'), ('Lawrence', 0, '48.85760', '-122.29350'), ('Lynden', 9020, '48.94840', '-122.45610'), ('Marietta', 0, '48.78710', '-122.58050'), ('Nooksack', 851, '48.92840', '-122.32120'), ('Point Roberts', 0, '48.98560', '-123.07670'), ('Sudden Valley', 4165, '48.72080', '-122.34470')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ504': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bucoda', 628, '46.79820', '-122.86790'), ('Centralia', 0, '46.71620', '-122.95430'), ('Chehalis', 7057, '46.66490', '-122.96500'), ('Cinebar', 0, '46.60430', '-122.53180'), ('Curtis', 0, '46.58700', '-123.11010'), ('Doty', 0, '46.63450', '-123.27760'), ('Fords Prairie', 1961, '46.74010', '-123.00150'), ('Grand Mound', 1948, '46.81000', '-123.01270'), ('Lacey', 31226, '47.03310', '-122.80580'), ('Littlerock', 0, '46.90180', '-123.01790'), ('Maytown', 0, '46.89760', '-122.94350'), ('Mossyrock', 486, '46.53010', '-122.48130'), ('Napavine', 1361, '46.57710', '-122.90850'), ('Nisqually', 0, '47.05670', '-122.70000'), ('Nisqually Indian', 588, '47.00590', '-122.66980'), ('Olympia', 42514, '47.04190', '-122.89380'), ('Olympia', 0, '47.03790', '-122.90070'), ('Onalaska', 0, '46.57510', '-122.71820'), ('Pe Ell', 657, '46.57150', '-123.29690'), ('Rainier', 1492, '46.89050', '-122.68460'), ('Rochester', 1829, '46.82910', '-123.07070'), ('Tanglewilde-Thompson', 5670, '47.05250', '-122.77810'), ('Tenino', 1447, '46.85740', '-122.84740'), ('Toledo', 653, '46.44050', '-122.84770'), ('Tumwater', 12698, '46.99810', '-122.91790'), ('Vader', 590, '46.40280', '-122.95560'), ('Winlock', 0, '46.49120', '-122.93790'), ('Winlock', 1166, '46.49150', '-122.93590'), ('Yelm', 3289, '46.94570', '-122.60350')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ506': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Allen', 0, '48.51650', '-122.37710'), ('Anacortes', 0, '48.51260', '-122.61270'), ('Anacortes', 14557, '48.49240', '-122.62940'), ('Big Lake', 0, '48.40290', '-122.24130'), ('Blanchard', 0, '48.59340', '-122.41660'), ('Burlington', 6757, '48.46920', '-122.33180'), ('Clear Lake', 0, '48.46430', '-122.23400'), ('Edison', 0, '48.56230', '-122.44380'), ('La Conner', 761, '48.39270', '-122.49320'), ('Mount Vernon', 26232, '48.42170', '-122.31450'), ('Sedro-Woolley', 8658, '48.50820', '-122.23500'), ('Shelter Bay', 0, '48.38260', '-122.51400'), ('Snee Oosh', 302, '48.42250', '-122.55310'), ('Swinomish Village', 563, '48.40840', '-122.50990')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ507': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Alderwood Manor', 0, '47.82220', '-122.28080'), ('Brier', 6383, '47.79250', '-122.27170'), ('Cathan', 526, '48.11430', '-122.27620'), ('Edmonds', 39515, '47.82590', '-122.36790'), ('Esperance', 0, '47.78910', '-122.35430'), ('Everett', 91488, '47.96330', '-122.19860'), ('Harbour Pointe', 9107, '47.88600', '-122.30400'), ('John Sam Lake', 753, '48.10940', '-122.24460'), ('Kingston', 0, '47.80000', '-122.50000'), ('Lake Goodwin', 3354, '48.13910', '-122.27840'), ('Lake Serene-North', 14290, '47.85500', '-122.28410'), ('Lynnwood', 33847, '47.82720', '-122.30430'), ('Martha Lake', 12633, '47.85100', '-122.23810'), ('Marysville', 25315, '48.05950', '-122.15470'), ('Mountlake Terrace', 20362, '47.79120', '-122.30660'), ('Mukilteo', 18019, '47.92680', '-122.30870'), ('Shaker Church', 0, '48.05280', '-122.22710'), ('Smokey Point', 1556, '48.15040', '-122.19330'), ('Stanwood', 3923, '48.24320', '-122.34820'), ('Stanwood', 0, '48.24120', '-122.37070'), ('Stimson Crossing', 773, '48.10790', '-122.20700'), ('Tulalip', 0, '48.06860', '-122.29060'), ('Weallup Lake', 882, '48.11040', '-122.30490')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ509': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Artondale', 8630, '47.31380', '-122.63450'), ('Dupont', 2452, '47.10680', '-122.65310'), ('Edgewood', 0, '47.25030', '-122.29250'), ('Elk Plain', 15697, '47.05330', '-122.37800'), ('Fife', 4784, '47.24000', '-122.36140'), ('Fircrest', 5868, '47.23110', '-122.51300'), ('Fox Island', 2803, '47.25180', '-122.62780'), ('Frederickson', 5758, '47.08650', '-122.36190'), ('Gig Harbor', 0, '47.32890', '-122.58790'), ('Graham', 0, '47.05290', '-122.29430'), ('Lakewood', 0, '47.17180', '-122.51850'), ('Midland', 7414, '47.17230', '-122.40890'), ('Milton', 5795, '47.25190', '-122.31590'), ('Parkland', 24053, '47.13790', '-122.42930'), ('Puyallup', 33011, '47.18190', '-122.28420'), ('Puyallup', 0, '47.18540', '-122.29290'), ('Roy', 260, '47.00120', '-122.54430'), ('Ruston', 738, '47.29780', '-122.50930'), ('South Hill', 31623, '47.14120', '-122.26900'), ('Spanaway', 21588, '47.10620', '-122.42650'), ('Steilacoom', 6049, '47.16960', '-122.59240'), ('Summit', 8041, '47.17210', '-122.35800'), ('Sumner', 8504, '47.21050', '-122.23600'), ('Sumner', 0, '47.20320', '-122.24040'), ('Tacoma', 193556, '47.25200', '-122.45980'), ('University Place', 29933, '47.21910', '-122.54240'), ('Vaughn', 0, '47.34440', '-122.76190'), ('Waller', 9200, '47.20090', '-122.36820')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ510': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Chimacum', 0, '48.01110', '-122.76750'), ('Coupeville', 0, '48.21980', '-122.68630'), ('Freeland', 1313, '48.01310', '-122.53770'), ('Gardiner', 0, '48.04980', '-122.91570'), ('Langley', 959, '48.03710', '-122.40720'), ('Oak Harbor', 0, '48.29320', '-122.64320'), ('Port Hadlock', 0, '48.03180', '-122.75820'), ('Port Townsend', 8334, '48.12200', '-122.77920')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ511': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Belfair', 0, '47.45060', '-122.82740'), ('Brinnon', 0, '47.67930', '-122.89820'), ('Holly', 0, '47.56000', '-122.97000'), ('Hoodsport', 0, '47.40590', '-123.13930'), ('Leland', 0, '47.89180', '-122.88660'), ('Lilliwaup', 0, '47.46340', '-123.11430'), ('Port Ludlow', 0, '47.92540', '-122.68350'), ('Quilcene', 0, '47.82230', '-122.87570'), ('Seabeck', 0, '47.63000', '-122.83000'), ('Shelton', 8442, '47.21480', '-123.10530'), ('Skokomish', 616, '47.33360', '-123.15620'), ('Tahuya', 0, '47.37120', '-123.05580')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ512': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Central Park', 0, '46.97340', '-123.69240'), ('Elma', 3049, '47.00510', '-123.40090'), ('Malone', 0, '46.96040', '-123.32680'), ('Matlock', 0, '47.23790', '-123.40790'), ('McCleary', 1454, '47.05530', '-123.26760'), ('Melbourne', 0, '46.94540', '-123.62600'), ('Montesano', 3312, '47.01460', '-123.58390'), ('Oakville', 675, '46.84040', '-123.23360'), ('Porter', 0, '46.93900', '-123.31070'), ('Satsop', 0, '47.00330', '-123.48220')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ513': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Amanda Park', 0, '47.46310', '-123.88600'), ('Grisdale', 0, '47.35700', '-123.61240'), ('Hurricane Ridge', 0, '47.99750', '-123.47670'), ('Montesano', 0, '47.98120', '-123.60270'), ('Mount Olympus', 0, '47.79980', '-123.70660'), ('Quinault', 0, '47.46700', '-123.84540')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ514': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Agnew', 0, '48.10560', '-123.24850'), ('Blyn', 0, '48.02230', '-123.00600'), ('Dungeness', 0, '48.14680', '-123.12320'), ('Port Angeles', 0, '48.11810', '-123.43070'), ('Sequim', 4334, '48.07750', '-123.10530'), ('Sequim', 0, '48.07950', '-123.10180')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ515': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Clallam Bay', 0, '48.25000', '-124.25000'), ('Joyce', 0, '48.13650', '-123.73410'), ('Sekiu', 0, '48.26000', '-124.31000')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ516': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Beaver', 0, '48.05730', '-124.34740'), ('Clearwater', 0, '47.57760', '-124.29460'), ('Forks', 0, '47.95040', '-124.38550'), ('La Push', 0, '47.91000', '-124.63000'), ('Neah Bay', 0, '48.36000', '-124.63000'), ('Ozette', 0, '48.15480', '-124.66720'), ('Queets', 0, '47.53950', '-124.33240'), ('Quillayute', 0, '47.94310', '-124.54240'), ('Sappho', 0, '48.07010', '-124.27940')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ517': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Aberdeen', 0, '46.97540', '-123.81570'), ('Aberdeen', 16461, '46.97700', '-123.80840'), ('Carlisle', 0, '47.15480', '-124.09850'), ('Cosmopolis', 1595, '46.95550', '-123.76980'), ('Grayland', 0, '46.81010', '-124.09320'), ('Hoquiam', 9097, '46.97540', '-123.88660'), ('Humptulips', 0, '47.23310', '-123.95810'), ('Markham', 0, '46.91000', '-123.98000'), ('Ocean City', 0, '47.07090', '-124.16600'), ('Ocean Shores', 3836, '46.97110', '-124.15230'), ('Pacific Beach', 0, '47.20900', '-124.20320'), ('Westport', 2137, '46.89200', '-124.11100')], 'partOfState': 'northwest', 'wfo': 'SEW'}, +'WAZ520': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Cle Elum', 1755, '47.19400', '-120.93310'), ('Roslyn', 1017, '47.24480', '-121.10260'), ('South Cle Elum', 457, '47.18680', '-120.95180')], 'partOfState': 'south central', 'wfo': 'PDT'}, +'WAZ521': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Goldendale', 3760, '45.82200', '-120.81830')], 'partOfState': 'central', 'wfo': 'PDT'}, +'WAZ555': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Alder', 0, '46.80040', '-122.29010'), ('Arlington', 0, '48.19870', '-122.12760'), ('Black Diamond', 3970, '47.31170', '-122.00990'), ('Bonney Lake', 9687, '47.18730', '-122.16880'), ('Bryant', 0, '48.23900', '-122.15790'), ('Buckley', 4145, '47.16260', '-122.01870'), ('Buckley', 0, '47.16320', '-122.02680'), ('Carbonado', 621, '47.08090', '-122.05340'), ('Carnation', 1893, '47.64610', '-121.90930'), ('Carnation', 0, '47.64790', '-121.91400'), ('Cathcart', 0, '47.84810', '-122.09810'), ('Cedar Falls', 0, '47.42540', '-121.77680'), ('Covington', 0, '47.34830', '-122.11360'), ('Covington-Sawyer-w', 24321, '47.35280', '-122.07310'), ('Duvall', 4616, '47.73370', '-121.96920'), ('Eatonville', 2012, '46.86840', '-122.26880'), ('Enumclaw', 0, '47.20430', '-121.99150'), ('Enumclaw', 11116, '47.20090', '-121.98910'), ('Fall City', 1638, '47.56630', '-121.90210'), ('Fall City', 0, '47.56730', '-121.88870'), ('Gold Bar', 2014, '47.85770', '-121.69570'), ('Granite Falls', 2347, '48.08290', '-121.96710'), ('Kapowsin', 0, '46.98570', '-122.22570'), ('Lake Stevens', 6361, '48.01710', '-122.06530'), ('Maltby', 0, '47.80530', '-122.11190'), ('Maple Valley', 14209, '47.40130', '-122.02570'), ('Mirrormont', 3804, '47.46260', '-121.99430'), ('Monroe', 13795, '47.85810', '-121.98180'), ('North Bend', 4746, '47.49570', '-121.78870'), ('Orting', 3760, '47.08880', '-122.20540'), ('Orting', 0, '47.09790', '-122.20430'), ('Palmer', 0, '47.31430', '-121.89230'), ('Prairie Ridge', 11688, '47.13790', '-122.14740'), ('Ravensdale', 0, '47.35250', '-121.98250'), ('Selleck', 0, '47.37580', '-121.86720'), ('Snohomish', 8494, '47.91950', '-122.09340'), ('Snoqualmie', 0, '47.52870', '-121.82540'), ('Snoqualmie', 1631, '47.52430', '-121.81760'), ('South Prairie', 382, '47.13850', '-122.09180'), ('Sultan', 3344, '47.86460', '-121.80430'), ('Wilkeson', 395, '47.10710', '-122.04700'), ('Woodinville', 9194, '47.74620', '-122.11190')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ556': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bellevue', 0, '47.61040', '-122.20070'), ('Bothell', 30150, '47.76000', '-122.19690'), ('Bothell', 0, '47.76230', '-122.20540'), ('Clearview', 0, '47.83390', '-122.12470'), ('Clyde Hill', 2890, '47.62920', '-122.21780'), ('Eastgate', 4558, '47.57230', '-122.13490'), ('Hunts Point', 443, '47.63880', '-122.22750'), ('Issaquah', 11212, '47.53230', '-122.03850'), ('Kenmore', 18678, '47.76460', '-122.24260'), ('Kingsgate', 12222, '47.73060', '-122.16710'), ('Kirkland', 45054, '47.68460', '-122.19390'), ('Medina', 3011, '47.61630', '-122.23650'), ('Mill Creek', 0, '47.85770', '-122.20580'), ('Newcastle', 0, '47.53920', '-122.15440'), ('Newport Hills', 14736, '47.54750', '-122.17400'), ('Pine Lake', 13940, '47.57890', '-122.04490'), ('Redmond', 45256, '47.67420', '-122.11480'), ('Sahalee', 13951, '47.63490', '-122.05410'), ('Sammamish', 0, '47.64190', '-122.07920'), ('Yarrow Point', 1008, '47.64570', '-122.21530')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ558': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Algona', 2460, '47.28370', '-122.25010'), ('Auburn', 0, '47.30730', '-122.22850'), ('Bryn Mawr', 0, '47.50360', '-122.23170'), ('Burien', 31881, '47.46490', '-122.34640'), ('Des Moines', 29267, '47.39550', '-122.30950'), ('Fairwood', 0, '47.44860', '-122.15610'), ('Federal Way', 83259, '47.31190', '-122.34080'), ('Kent', 79524, '47.39430', '-122.23850'), ('Lake Forest Park', 13142, '47.76270', '-122.28620'), ('Lea Hill', 10871, '47.32630', '-122.18030'), ('Mercer Island', 22036, '47.56930', '-122.23090'), ('Mercer Island', 0, '47.57070', '-122.22210'), ('Normandy Park', 6392, '47.44470', '-122.35580'), ('North Hill', 5706, '47.41940', '-122.32230'), ('Renton', 50052, '47.48190', '-122.19660'), ('Richmond Highlands', 26037, '47.75910', '-122.34300'), ('Seatac', 0, '47.45370', '-122.32180'), ('Seattle', 563374, '47.62180', '-122.35030'), ('Sheridan Beach', 6518, '47.74490', '-122.28680'), ('Shoreline', 0, '47.75580', '-122.34030'), ('Skyway', 0, '47.49170', '-122.25310'), ('Tukwila', 17181, '47.47770', '-122.26830'), ('Vashon Island', 0, '47.43000', '-122.48000'), ('White Center', 0, '47.51750', '-122.35360'), ('Woodmont Beach', 7493, '47.36180', '-122.31630')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ559': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Bainbridge Island', 0, '47.65000', '-122.55000'), ('Bremerton', 37259, '47.54890', '-122.70200'), ('Indianola', 3026, '47.75450', '-122.51330'), ('Navy Yard City', 2638, '47.55160', '-122.66700'), ('Parkwood', 7213, '47.52600', '-122.59670'), ('Port Orchard', 7693, '47.52900', '-122.64120'), ('Poulsbo', 6813, '47.73710', '-122.64000'), ('Poulsbo', 0, '47.73590', '-122.64650'), ('Silverdale', 15816, '47.65210', '-122.68310'), ('Suquamish', 3510, '47.72910', '-122.58430'), ('Tracyton', 3267, '47.60960', '-122.65450'), ('Winslow', 3081, '47.62970', '-122.51780')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ567': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Acme', 0, '48.71710', '-122.20520'), ('Concrete', 790, '48.53710', '-121.74890'), ('Deming', 0, '48.82570', '-122.21600'), ('Diablo', 0, '48.71350', '-121.14120'), ('Glacier', 0, '48.89010', '-121.94570'), ('Hamilton', 309, '48.52330', '-121.98820'), ('Hamilton', 0, '48.52150', '-121.98930'), ('Lyman', 0, '48.52710', '-122.06180'), ('Lyman', 409, '48.52350', '-122.06360'), ('Maple Falls', 0, '48.92430', '-122.07700'), ('Marblemount', 0, '48.52760', '-121.44960'), ('Mount Baker', 0, '48.86360', '-121.67720'), ('Newhalem', 0, '48.67370', '-121.24730'), ('Rockport', 0, '48.48570', '-121.59760'), ('Van Zandt', 0, '48.78900', '-122.19180'), ('Wickersham', 0, '48.65510', '-122.21290')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ568': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Baring', 0, '47.77320', '-121.48540'), ('Darrington', 1136, '48.25240', '-121.60390'), ('Greenwater', 0, '47.15590', '-121.65040'), ('Index', 157, '47.82070', '-121.55240'), ('Robe', 0, '48.09730', '-121.81350'), ('Silverton', 0, '48.07840', '-121.56710'), ('Skykomish', 214, '47.71120', '-121.35740'), ('Snoqualmie Pass', 0, '47.42530', '-121.41250'), ('Stevens Pass', 0, '47.74190', '-121.09170'), ('Verlot', 0, '48.09040', '-121.77730')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WAZ569': {'fullStateName': 'Washington', 'state': 'WA', 'cities': [('Ashford', 0, '46.75840', '-122.03090'), ('Crystal Mountain', 0, '46.92820', '-121.50450'), ('Elbe', 0, '46.76500', '-122.19250'), ('Glenoma', 0, '46.51460', '-122.16010'), ('Longmire', 0, '46.74980', '-121.81260'), ('Mineral', 0, '46.71710', '-122.18090'), ('Morton', 1045, '46.55800', '-122.28010'), ('Mount Rainier', 0, '46.85290', '-121.76040'), ('Packwood', 0, '46.60650', '-121.67060'), ('Paradise', 0, '46.78670', '-121.74500'), ('Randle', 0, '46.53510', '-121.95700')], 'partOfState': 'west central', 'wfo': 'SEW'}, +'WIZ001': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bennett', 576, '46.44930', '-91.85050'), ('Blueberry', 1015, '46.58030', '-91.66880'), ('Brule', 1015, '46.55310', '-91.57670'), ('Chaffey', 358, '46.39830', '-92.16360'), ('Cloverland', 552, '46.67710', '-91.67960'), ('Cozy Corner', 653, '46.16490', '-92.23830'), ('Dairyland', 531, '46.21620', '-92.15550'), ('Foxboro', 296, '46.48190', '-92.28280'), ('Gordon', 576, '46.24700', '-91.79860'), ('Hawthorne', 552, '46.50310', '-91.86080'), ('Lake Nebagamon', 1015, '46.50780', '-91.69450'), ('Maple', 552, '46.58980', '-91.72080'), ('Moose Junction', 576, '46.28760', '-92.15550'), ('Oliver', 358, '46.64990', '-92.18990'), ('Patzau', 358, '46.49150', '-92.22080'), ('Poplar', 552, '46.58190', '-91.78780'), ('Solon Springs', 576, '46.34940', '-91.82000'), ('Superior', 27368, '46.69690', '-92.05960'), ('Waino', 1015, '46.63980', '-91.57370'), ('Wascott', 531, '46.17250', '-91.79830'), ('Wentworth', 552, '46.60010', '-91.83610')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIZ002': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Barksdale', 2280, '46.62150', '-90.93220'), ('Bayfield', 611, '46.81160', '-90.82140'), ('Benoit', 72, '46.50190', '-91.07690'), ('Cable', 948, '46.19890', '-91.30470'), ('Drummond', 72, '46.33080', '-91.25780'), ('Grand View', 72, '46.36760', '-91.10830'), ('Herbster', 2280, '46.83250', '-91.26110'), ('Ino', 72, '46.53090', '-91.17890'), ('Iron River', 1015, '46.56450', '-91.40830'), ('Mason', 72, '46.43550', '-91.06230'), ('Moquah', 72, '46.57050', '-91.08330'), ('Namekagon', 72, '46.21280', '-91.04550'), ('Oulu', 1015, '46.63300', '-91.53200'), ('Port Wing', 3651, '46.77480', '-91.38660'), ('Red Cliff', 611, '46.85560', '-90.78800'), ('Sand Bay', 611, '46.93480', '-90.89120'), ('Washburn', 2280, '46.67390', '-90.89330')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIZ003': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Ashland', 8620, '46.58020', '-90.87410'), ('Butternut', 407, '46.01370', '-90.49770'), ('Clam Lake', 845, '46.15580', '-90.91690'), ('Glidden', 407, '46.13500', '-90.57860'), ('High Bridge', 845, '46.38890', '-90.73630'), ('Marengo', 8620, '46.42250', '-90.81690'), ('Mellen', 845, '46.32330', '-90.66110'), ('Morse', 845, '46.22230', '-90.62770'), ('Odanah', 254, '46.60450', '-90.68350'), ('Sanborn', 8620, '46.43340', '-90.90950')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIZ004': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Cedar', 254, '46.50780', '-90.49860'), ('Gile', 838, '46.42840', '-90.22520'), ('Gurney', 845, '46.47320', '-90.50850'), ('Hurley', 1818, '46.44430', '-90.19650'), ('Iron Belt', 838, '46.40070', '-90.32440'), ('Kimball', 838, '46.48180', '-90.30640'), ('Manitowish', 1646, '46.13310', '-90.01360'), ('Mercer', 1646, '46.16570', '-90.06280'), ('Montreal', 838, '46.43050', '-90.23880'), ('Pence', 838, '46.41520', '-90.27160'), ('Saxon', 838, '46.49350', '-90.41500'), ('Upson', 838, '46.36930', '-90.40690'), ('Van Buskirk', 6849, '46.38720', '-90.14360')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIZ005': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arbor Vitae', 1646, '45.91000', '-89.65000'), ('Boulder Junction', 1646, '46.11000', '-89.63000'), ('Conover', 1443, '46.04000', '-89.25000'), ('Eagle River', 1443, '45.91000', '-89.25000'), ('Lac Du Flambeau', 1646, '45.96000', '-89.88000'), ('Land O Lakes', 1443, '46.16000', '-89.23000'), ('Manitowish Waters', 1646, '46.13000', '-89.88000'), ('Phelps', 1443, '46.06000', '-89.08000'), ('Presque Isle', 2318, '46.25000', '-89.73000'), ('Sayner', 1443, '46.00000', '-89.53000'), ('Star Lake', 1443, '46.03000', '-89.46000'), ('St Germain', 1443, '45.91000', '-89.48000'), ('Winchester', 1646, '46.21000', '-89.90000'), ('Woodruff', 1646, '45.90000', '-89.69000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIZ006': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alpha', 1369, '45.77350', '-92.58030'), ('Branstad', 1369, '45.73810', '-92.68290'), ('Danbury', 653, '46.00670', '-92.37130'), ('Falun', 1262, '45.77220', '-92.52810'), ('Four Corners', 1262, '45.67200', '-92.59110'), ('Grantsburg', 1369, '45.78060', '-92.68450'), ('Hertel', 653, '45.80860', '-92.17530'), ('Randall', 1040, '45.69620', '-92.83570'), ('Riverside', 653, '46.07640', '-92.24780'), ('Siren', 988, '45.78370', '-92.38000'), ('Trade Lake', 1369, '45.68980', '-92.59300'), ('Trade River', 1369, '45.64830', '-92.67320'), ('Webb Lake', 653, '46.00950', '-92.13280'), ('Webster', 653, '45.87860', '-92.36200'), ('Yellowlake', 653, '45.93580', '-92.37810')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIZ007': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Angus', 518, '45.64780', '-91.60180'), ('Birchwood', 518, '45.65710', '-91.55220'), ('Earl', 2653, '45.91070', '-91.76050'), ('Lampson', 531, '45.98310', '-91.81640'), ('Minong', 531, '46.09840', '-91.82390'), ('Sarona', 1309, '45.71120', '-91.80670'), ('Shell Lake', 1309, '45.73860', '-91.89910'), ('Spooner', 2653, '45.82450', '-91.89350'), ('Springbrook', 531, '45.94860', '-91.68840'), ('Stanberry', 2129, '46.00740', '-91.62630'), ('Trego', 2653, '45.89980', '-91.82110')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIZ008': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Chief Lake', 625, '45.92660', '-91.33280'), ('Couderay', 96, '45.79620', '-91.29920'), ('Edgewater', 518, '45.74230', '-91.47520'), ('Exeland', 212, '45.66800', '-91.24020'), ('Hayward', 2129, '46.01000', '-91.48030'), ('Little Round Lake', 948, '45.96500', '-91.36780'), ('Loretta', 344, '45.88560', '-90.85310'), ('New Post', 367, '45.89720', '-91.19200'), ('Northwoods Beach', 948, '45.91420', '-91.40360'), ('Ojibwa', 222, '45.79810', '-91.11700'), ('Radisson', 222, '45.76850', '-91.21870'), ('Reserve', 436, '45.82830', '-91.36010'), ('Stone Lake', 2129, '45.84560', '-91.54050'), ('Winter', 344, '45.82110', '-91.01200')], 'partOfState': 'northwest', 'wfo': 'DLH'}, +'WIZ009': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Brantwood', 626, '45.56290', '-90.11520'), ('Catawba', 149, '45.53580', '-90.53290'), ('Fifield', 2793, '45.87980', '-90.42220'), ('Kennan', 171, '45.53090', '-90.58610'), ('Ogema', 626, '45.44360', '-90.29820'), ('Park Falls', 2793, '45.93340', '-90.44590'), ('Phillips', 1675, '45.69560', '-90.39770'), ('Prentice', 626, '45.54170', '-90.28810'), ('Spirit', 878, '45.45420', '-90.11440')], 'partOfState': 'north central', 'wfo': 'DLH'}, +'WIZ010': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Clearwater Lake', 1443, '45.84000', '-89.18000'), ('Enterprise', 7735, '45.50000', '-89.25000'), ('Gagen', 1961, '45.66000', '-89.09000'), ('Goodnow', 7735, '45.70000', '-89.63000'), ('Harshaw', 3770, '45.66000', '-89.65000'), ('Hazelhurst', 1646, '45.79000', '-89.71000'), ('Lake Tomahawk', 7735, '45.81000', '-89.59000'), ('Lennox', 1961, '45.51000', '-89.06000'), ('Mc Naughton', 7735, '45.73000', '-89.55000'), ('Minocqua', 1646, '45.86000', '-89.69000'), ('Monico', 1961, '45.58000', '-89.11000'), ('Pelican Lake', 1961, '45.50000', '-89.11000'), ('Rhinelander', 7735, '45.63000', '-89.41000'), ('Starks', 7735, '45.66000', '-89.19000'), ('Sugar Camp', 1443, '45.78000', '-89.30000'), ('Three Lakes', 1443, '45.79000', '-89.16000'), ('Willow Reservoir', 1646, '45.71000', '-89.85000'), ('Woodboro', 7735, '45.59000', '-89.55000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIZ011': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alvin', 1281, '46.01000', '-88.81000'), ('Argonne', 1961, '45.66000', '-88.88000'), ('Armstrong Creek', 5480, '45.65000', '-88.44000'), ('Blackwell', 1961, '45.51000', '-88.61000'), ('Carter', 329, '45.39000', '-88.63000'), ('Cavour', 1961, '45.65000', '-88.63000'), ('Crandon', 1961, '45.56000', '-88.90000'), ('Hiles', 1961, '45.71000', '-88.98000'), ('Laona', 1961, '45.56000', '-88.68000'), ('Mole Lake', 1961, '45.48000', '-89.00000'), ('Nashville', 1961, '45.51000', '-89.03000'), ('Newald', 1961, '45.73000', '-88.69000'), ('Wabeno', 1961, '45.43000', '-88.66000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ012': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Aurora', 5480, '45.78000', '-88.09000'), ('Commonwealth', 5480, '45.91000', '-88.23000'), ('Fence', 219, '45.75000', '-88.43000'), ('Florence', 219, '45.93000', '-88.25000'), ('Long Lake', 376, '45.83000', '-88.66000'), ('Spread Eagle', 5480, '45.88000', '-88.13000'), ('Tipler', 376, '45.91000', '-88.63000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ013': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Amberg', 572, '45.50000', '-88.00000'), ('Athelstane', 572, '45.43000', '-88.09000'), ('Beecher', 572, '45.57000', '-87.98000'), ('Caldron Falls Rese', 998, '45.38000', '-88.26000'), ('Dunbar', 5480, '45.65000', '-88.18000'), ('Goodman', 5480, '45.63000', '-88.34000'), ('Niagara', 1880, '45.76000', '-88.00000'), ('Pembine', 1880, '45.63000', '-88.00000'), ('Wausaukee', 572, '45.36000', '-87.94000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ014': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Amery', 2845, '45.30460', '-92.36310'), ('Balsam Lake', 792, '45.45810', '-92.45470'), ('Centuria', 865, '45.44960', '-92.55580'), ('Clayton', 507, '45.32370', '-92.17000'), ('Clear Lake', 1051, '45.25010', '-92.26860'), ('Dresser', 732, '45.36150', '-92.63380'), ('Frederic', 1262, '45.65640', '-92.46400'), ('Luck', 1210, '45.57520', '-92.46730'), ('Milltown', 888, '45.52690', '-92.49970'), ('Nye', 2171, '45.31400', '-92.58000'), ('Osceola', 2421, '45.31920', '-92.69590'), ('St Croix Falls', 2033, '45.40940', '-92.63380')], 'partOfState': 'northwest', 'wfo': 'MPX'}, +'WIZ015': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Almena', 720, '45.41450', '-92.03650'), ('Arland', 744, '45.33800', '-92.02200'), ('Barron', 3248, '45.40060', '-91.84650'), ('Cameron', 1546, '45.40330', '-91.74340'), ('Chetek', 2180, '45.31600', '-91.65310'), ('Cumberland', 2280, '45.53590', '-92.02320'), ('Dallas', 356, '45.25810', '-91.81470'), ('Haugen', 287, '45.60780', '-91.77840'), ('Prairie Farm', 508, '45.23760', '-91.98080'), ('Reeve', 795, '45.23800', '-92.12300'), ('Rice Lake', 8320, '45.49690', '-91.73920'), ('Turtle Lake', 1065, '45.39240', '-92.14130')], 'partOfState': 'northwest', 'wfo': 'MPX'}, +'WIZ016': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bruce', 787, '45.45860', '-91.27280'), ('Conrath', 98, '45.38470', '-91.03580'), ('Glen Flora', 93, '45.49680', '-90.89310'), ('Hawkins', 317, '45.51180', '-90.71330'), ('Ingram', 76, '45.50550', '-90.81320'), ('Ladysmith', 3932, '45.46280', '-91.09590'), ('Sheldon', 256, '45.31110', '-90.95740'), ('Tony', 105, '45.48110', '-90.99580'), ('Weyerhaeuser', 353, '45.42380', '-91.41440')], 'partOfState': 'northwest', 'wfo': 'MPX'}, +'WIZ017': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Chelsea', 878, '45.28030', '-90.31915'), ('Donald', 256, '45.24832', '-90.89940'), ('Gilman', 474, '45.16690', '-90.80690'), ('Goodrich', 1095, '45.16151', '-90.06330'), ('Hannibal', 474, '45.24832', '-90.78290'), ('Jump River', 76, '45.35569', '-90.80117'), ('Lublin', 110, '45.07520', '-90.72400'), ('Medford', 4350, '45.13860', '-90.34790'), ('Perkinstown', 110, '45.20035', '-90.63441'), ('Polley', 474, '45.13638', '-90.80117'), ('Rib Lake', 878, '45.31890', '-90.20360'), ('Stetsonville', 563, '45.07640', '-90.31250'), ('Westboro', 878, '45.34884', '-90.30088')], 'partOfState': 'north central', 'wfo': 'ARX'}, +'WIZ018': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bloomville', 10146, '45.29000', '-89.53000'), ('Bradley', 3770, '45.53000', '-89.75000'), ('Doering', 10146, '45.23000', '-89.46000'), ('Gleason', 10146, '45.30000', '-89.50000'), ('Harrison', 7735, '45.48000', '-89.50000'), ('Heafford Junction', 3770, '45.54000', '-89.71000'), ('Irma', 3770, '45.34000', '-89.66000'), ('Jeffris', 7735, '45.50000', '-89.43000'), ('Merrill', 10146, '45.18000', '-89.68000'), ('Pine River', 10146, '45.13000', '-89.64000'), ('Spirit Falls', 3770, '45.45000', '-89.98000'), ('Tomahawk', 3770, '45.46000', '-89.73000'), ('Tripoli', 3770, '45.55000', '-90.00000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIZ019': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Antigo', 8560, '45.15000', '-89.15000'), ('Bryant', 8560, '45.20000', '-89.01000'), ('Deerbrook', 8560, '45.23000', '-89.16000'), ('Elcho', 8560, '45.43000', '-89.18000'), ('Elmhurst', 272, '45.06000', '-89.18000'), ('Elton', 329, '45.15000', '-88.84000'), ('Hollister', 329, '45.25000', '-88.80000'), ('Kempster', 8560, '45.28000', '-89.16000'), ('Langlade', 329, '45.18000', '-88.73000'), ('Lily', 329, '45.29000', '-88.84000'), ('Neva', 8560, '45.23000', '-89.11000'), ('Parrish', 7735, '45.41000', '-89.40000'), ('Pearson', 1961, '45.36000', '-89.01000'), ('Phlox', 466, '45.04000', '-89.01000'), ('Pickerel', 1961, '45.36000', '-88.91000'), ('Polar', 8560, '45.16000', '-89.00000'), ('Post Lake', 1961, '45.43000', '-89.08000'), ('Summit Lake', 8560, '45.38000', '-89.19000'), ('White Lake', 329, '45.16000', '-88.76000')], 'partOfState': 'north central', 'wfo': 'GRB'}, +'WIZ020': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Keshena', 1394, '44.88000', '-88.63000'), ('Neopit', 839, '44.98000', '-88.81000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ021': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Breed', 605, '45.06000', '-88.43000'), ('Klondike', 716, '45.06000', '-88.16000'), ('Lakewood', 329, '45.29000', '-88.51000'), ('Mountain', 605, '45.18000', '-88.48000'), ('Townsend', 329, '45.33000', '-88.58000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ022': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Baileys Harbor', 353, '45.06000', '-87.13000'), ('Brussels', 429, '44.73000', '-87.63000'), ('Carlsville', 250, '44.95000', '-87.34000'), ('Chambers Island', 250, '45.18000', '-87.35000'), ('Clay Banks', 9176, '44.71000', '-87.36000'), ('Egg Harbor', 250, '45.04000', '-87.28000'), ('Ellison Bay', 886, '45.25000', '-87.06000'), ('Ephraim', 353, '45.15000', '-87.16000'), ('Fish Creek', 353, '45.13000', '-87.23000'), ('Forestville', 429, '44.68000', '-87.50000'), ('Gills Rock', 886, '45.28000', '-87.01000'), ('Institute', 9176, '44.90000', '-87.30000'), ('Kolberg', 429, '44.71000', '-87.56000'), ('Little Sturgeon', 429, '44.84000', '-87.57000'), ('Maplewood', 429, '44.75000', '-87.48000'), ('Peninsula State Park', 353, '45.16000', '-87.21000'), ('Sister Bay', 886, '45.18000', '-87.11000'), ('Valmy', 9176, '44.90000', '-87.26000'), ('Washington Island', 0, '45.37721', '-86.90095'), ('Whitefish Dunes State Park', 250, '44.92000', '-87.21000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ023': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Baldwin', 2667, '44.96290', '-92.37110'), ('Deer Park', 227, '45.18860', '-92.38660'), ('Glenwood City', 1183, '45.05730', '-92.17160'), ('Hammond', 1153, '44.97300', '-92.43710'), ('Hudson', 8775, '44.96690', '-92.74210'), ('New Richmond', 6310, '45.12210', '-92.53670'), ('Roberts', 969, '44.98500', '-92.55200'), ('Somerset', 1556, '45.12730', '-92.67600'), ('Star Prairie', 574, '45.19830', '-92.53180'), ('Wilson', 176, '44.95560', '-92.17240'), ('Woodville', 1104, '44.95250', '-92.28640')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIZ024': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bay City', 465, '44.58530', '-92.45260'), ('Ellsworth', 2909, '44.73740', '-92.47980'), ('Elmwood', 841, '44.78010', '-92.14930'), ('El Paso', 779, '44.76900', '-92.34400'), ('Maiden Rock', 121, '44.56780', '-92.30840'), ('Plum City', 574, '44.63300', '-92.19180'), ('Prescott', 3764, '44.75070', '-92.79010'), ('River Falls', 12560, '44.85570', '-92.62160'), ('Spring Valley', 1189, '44.85000', '-92.23980')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIZ025': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Boyceville', 1043, '45.04260', '-92.03990'), ('Cedar Falls', 1667, '44.93500', '-91.88000'), ('Colfax', 1136, '44.99690', '-91.72590'), ('Downing', 257, '45.04850', '-92.12410'), ('Downsville', 1610, '44.77400', '-91.93100'), ('Elk Mound', 785, '44.87510', '-91.68770'), ('Knapp', 421, '44.95410', '-92.07690'), ('Menomonie', 14937, '44.88790', '-91.91400'), ('Ridgeland', 265, '45.20220', '-91.89740'), ('Tainter Lake', 2089, '44.98930', '-91.84760'), ('Weston', 661, '44.81200', '-92.07100'), ('Wheeler', 317, '45.04370', '-91.90550')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIZ026': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Durand', 1968, '44.62910', '-91.96060'), ('Pepin', 878, '44.44240', '-92.14630'), ('Stockholm', 97, '44.48360', '-92.26030')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIZ027': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bloomer', 3347, '45.10250', '-91.49080'), ('Boyd', 680, '44.95350', '-91.04010'), ('Cadott', 1345, '44.95120', '-91.15120'), ('Chippewa Falls', 12925, '44.93250', '-91.39120'), ('Cornell', 1466, '45.16250', '-91.15230'), ('Lake Wissota', 2458, '44.92020', '-91.30250'), ('New Auburn', 562, '45.19810', '-91.56500'), ('Stanley', 1898, '44.96250', '-90.94280'), ('Tilden', 1294, '45.00700', '-91.43700')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIZ028': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Altoona', 6698, '44.80510', '-91.44200'), ('Augusta', 1460, '44.67870', '-91.12120'), ('Eau Claire', 61704, '44.82120', '-91.49230'), ('Fairchild', 564, '44.60550', '-90.95640'), ('Fall Creek', 1236, '44.76210', '-91.27400')], 'partOfState': 'west central', 'wfo': 'MPX'}, +'WIZ029': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Abbotsford', 1956, '44.94830', '-90.31870'), ('Atwood', 198, '44.88269', '-90.48398'), ('Chili', 1550, '44.63049', '-90.35057'), ('Christie', 2731, '44.64877', '-90.59729'), ('Colby', 1616, '44.90890', '-90.31690'), ('Curtiss', 198, '44.95390', '-90.43520'), ('Dorchester', 827, '45.00230', '-90.33330'), ('Eidsvold', 1536, '44.95031', '-90.86594'), ('Globe', 2731, '44.65060', '-90.66490'), ('Granton', 1550, '44.58850', '-90.46200'), ('Greenwood', 1079, '44.76540', '-90.59880'), ('Humbird', 564, '44.53180', '-90.90066'), ('Junction', 1898, '45.01428', '-90.90066'), ('Lake Arbutus', 585, '44.42946', '-90.69963'), ('Longwood', 508, '44.88269', '-90.60094'), ('Loyal', 1308, '44.73610', '-90.49640'), ('Lynn', 1550, '44.58298', '-90.41636'), ('Neillsville', 2731, '44.56040', '-90.59090'), ('Nevins', 1550, '44.49891', '-90.36701'), ('Owen', 936, '44.94940', '-90.56780'), ('Reseburg', 1536, '44.91559', '-90.76725'), ('Riplinger', 368, '44.82970', '-90.39991'), ('Sherwood', 1550, '44.43129', '-90.35239'), ('Shortville', 2731, '44.49708', '-90.51687'), ('Sidney', 2731, '44.54825', '-90.65211'), ('Thorp', 1536, '44.95980', '-90.80090'), ('Tioga', 564, '44.68166', '-90.78187'), ('Veefkind', 1932, '44.69811', '-90.38712'), ('Willard', 1079, '44.72918', '-90.73435'), ('Withee', 508, '44.95280', '-90.59700')], 'partOfState': 'central', 'wfo': 'ARX'}, +'WIZ030': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Athens', 1095, '45.03000', '-90.08000'), ('Bevent', 189, '44.76000', '-89.38000'), ('Brokaw', 107, '45.03000', '-89.65000'), ('Colby', 1616, '44.91000', '-90.30000'), ('Edgar', 1386, '44.91000', '-89.96000'), ('Elderon', 189, '44.78000', '-89.25000'), ('Evergreen', 3611, '44.84000', '-89.64000'), ('Fenwood', 174, '44.86000', '-90.01000'), ('Galloway', 189, '44.71000', '-89.26000'), ('Halder', 1640, '44.79000', '-89.86000'), ('Hamburg', 1640, '45.08000', '-89.88000'), ('Hatley', 476, '44.88000', '-89.33000'), ('Hogarty', 272, '45.03000', '-89.31000'), ('Knowlton', 4063, '44.71000', '-89.68000'), ('Little Chicago', 1640, '45.04000', '-89.84000'), ('Marathon City', 1640, '44.95000', '-89.84000'), ('Milan', 1095, '44.97000', '-90.19000'), ('Moon', 4063, '44.76000', '-89.78000'), ('Mosinee', 4063, '44.78000', '-89.69000'), ('Norrie', 251, '44.88000', '-89.25000'), ('Nutterville', 2117, '45.00000', '-89.50000'), ('Pike Lake', 476, '44.81000', '-89.34000'), ('Poniatowski', 1386, '44.98000', '-89.98000'), ('Rib Falls', 1640, '44.96000', '-89.90000'), ('Rib Mountain', 6059, '44.91290', '-89.67540'), ('Rib Mountain State Park', 6059, '44.92000', '-89.67000'), ('Ringle', 476, '44.90000', '-89.41000'), ('Rothschild', 4970, '44.88000', '-89.61000'), ('Rozellville', 1523, '44.75000', '-90.01000'), ('Schofield', 2117, '44.90000', '-89.59000'), ('Spencer', 1932, '44.76000', '-90.28000'), ('Stratford', 1523, '44.79000', '-90.08000'), ('Sunset', 2117, '44.98000', '-89.48000'), ('Unity', 368, '44.84000', '-90.31000'), ('Wausau', 38426, '44.96000', '-89.63000'), ('Weston', 2117, '44.89910', '-89.56950')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WIZ031': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Adams Beach', 399, '44.68000', '-88.68000'), ('Advance', 1256, '44.78000', '-88.33000'), ('Angelica', 3060, '44.66000', '-88.30000'), ('Aniwa', 272, '45.00000', '-89.21000'), ('Belle Plaine', 399, '44.71000', '-88.66000'), ('Birnamwood', 795, '44.93000', '-89.19000'), ('Bonduel', 1416, '44.73000', '-88.44000'), ('Bowler', 343, '44.86000', '-88.96000'), ('Briarton', 307, '44.59000', '-88.41000'), ('Caroline', 1297, '44.71000', '-88.88000'), ('Cecil', 466, '44.79000', '-88.44000'), ('Eland', 251, '44.88000', '-89.19000'), ('Green Valley', 1256, '44.79000', '-88.26000'), ('Gresham', 575, '44.84000', '-88.78000'), ('Hofa Park', 3060, '44.63000', '-88.33000'), ('Krakow', 3060, '44.75000', '-88.25000'), ('Leopolis', 575, '44.76000', '-88.83000'), ('Lyndhurst', 575, '44.83000', '-88.80000'), ('Mattoon', 466, '45.00000', '-89.03000'), ('Morgan', 575, '44.88000', '-88.81000'), ('Navarino', 307, '44.61000', '-88.48000'), ('Pella', 1297, '44.73000', '-88.80000'), ('Pulcifer', 1256, '44.84000', '-88.34000'), ('Red River', 1394, '44.81000', '-88.69000'), ('Rose Lawn', 1474, '44.59000', '-88.31000'), ('Shawano', 8298, '44.78000', '-88.59000'), ('Shawano Lake', 466, '44.80000', '-88.51000'), ('Shepley', 1177, '44.86000', '-89.08000'), ('Split Rock', 764, '44.70000', '-89.01000'), ('Thornton', 8298, '44.79000', '-88.68000'), ('Tigerton', 764, '44.73000', '-89.05000'), ('Tilleda', 343, '44.81000', '-88.90000'), ('Whitcomb', 764, '44.78000', '-89.09000'), ('Wittenberg', 1177, '44.81000', '-89.15000'), ('Zachow', 1416, '44.73000', '-88.34000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ032': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alma', 942, '44.33100', '-91.92220'), ('Buffalo', 1040, '44.22350', '-91.86940'), ('Cochrane', 435, '44.22880', '-91.83660'), ('Cream', 435, '44.31615', '-91.76509'), ('Dodge', 25399, '44.13340', '-91.56223'), ('Fountain City', 983, '44.11980', '-91.69780'), ('Gilmanton', 2634, '44.46418', '-91.68285'), ('Marshland', 25399, '44.08223', '-91.56041'), ('Maxville', 1968, '44.56470', '-92.00267'), ('Misha Mokwa', 395, '44.51536', '-92.00267'), ('Modena', 942, '44.45139', '-91.79982'), ('Mondovi', 2634, '44.56890', '-91.66950'), ('Montana', 2402, '44.34905', '-91.66640'), ('Nelson', 395, '44.42360', '-92.00490'), ('Praag', 435, '44.38194', '-91.75047'), ('Tell', 942, '44.38194', '-91.86744'), ('Urne', 395, '44.50074', '-91.90033'), ('Waumandee', 435, '44.29788', '-91.69930')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIZ033': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arcadia', 2402, '44.25240', '-91.49340'), ('Beach Corners', 521, '44.20102', '-91.23327'), ('Blair', 1273, '44.29590', '-91.22990'), ('Centerville', 1319, '44.07126', '-91.45075'), ('Chimney Rock', 1001, '44.46601', '-91.41603'), ('Eleva', 635, '44.57640', '-91.47030'), ('Elk Creek', 1244, '44.43129', '-91.39958'), ('Ettrick', 521, '44.16980', '-91.26610'), ('Frenchville', 521, '44.14985', '-91.31734'), ('Galesville', 1427, '44.08420', '-91.35620'), ('Hegg', 521, '44.21746', '-91.20038'), ('Iduna', 521, '44.19736', '-91.31734'), ('Independence', 1244, '44.36220', '-91.41930'), ('Osseo', 1669, '44.57830', '-91.21810'), ('Pigeon Falls', 388, '44.42470', '-91.20820'), ('Pleasantville', 1651, '44.44591', '-91.30272'), ('Strum', 1001, '44.55290', '-91.38620'), ('Tamarack', 2402, '44.18274', '-91.46720'), ('Trempealeau', 1319, '44.00700', '-91.43600'), ('Whitehall', 1651, '44.36580', '-91.31370')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIZ034': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alma Center', 446, '44.43660', '-90.91300'), ('Black River Falls', 3618, '44.29870', '-90.84700'), ('Disco', 446, '44.26864', '-90.99935'), ('Fall Hall Glen', 3618, '44.21564', '-90.83487'), ('Franklin', 513, '44.21564', '-91.11631'), ('Hatfield', 585, '44.41667', '-90.73070'), ('Hixton', 446, '44.38400', '-91.01110'), ('Irving', 529, '44.18640', '-90.89883'), ('Levis', 1669, '44.53729', '-91.09986'), ('Melrose', 529, '44.13200', '-90.99680'), ('Merrillan', 585, '44.45100', '-90.83660'), ('Millston', 286, '44.19919', '-90.64846'), ('North Bend', 529, '44.09867', '-91.11814'), ('North Branch', 446, '44.45139', '-91.00117'), ('Northfield', 388, '44.46601', '-91.09986'), ('Pray', 2731, '44.36915', '-90.49860'), ('Price', 564, '44.57932', '-91.05052'), ('Requa', 1669, '44.58115', '-91.13367'), ('Shamrock', 3618, '44.18091', '-90.79832'), ('Taylor', 513, '44.32210', '-91.12120'), ('Vaudreuil', 3618, '44.31067', '-90.81111'), ('York', 388, '44.43494', '-91.13459')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIZ035': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arpin', 337, '44.54000', '-90.03000'), ('Auburndale', 738, '44.63000', '-90.00000'), ('Babcock', 866, '44.29000', '-90.13000'), ('Bakerville', 18800, '44.63000', '-90.21000'), ('Bethel', 337, '44.53000', '-90.08000'), ('Biron', 915, '44.43000', '-89.78000'), ('Blenker', 268, '44.61000', '-89.91000'), ('Dexterville', 866, '44.38000', '-90.11000'), ('Hewitt', 670, '44.63000', '-90.13000'), ('Lindsey', 1550, '44.54000', '-90.30000'), ('Marshfield', 18800, '44.66000', '-90.16000'), ('Milladore', 268, '44.59000', '-89.86000'), ('Nekoosa', 2590, '44.31000', '-89.88000'), ('Pittsville', 866, '44.45000', '-90.13000'), ('Port Edwards', 1944, '44.33000', '-89.84000'), ('Rudolph', 423, '44.50000', '-89.80000'), ('Sherry', 268, '44.58000', '-89.91000'), ('Vesper', 541, '44.48000', '-89.96000'), ('Wisconsin Rapids', 18435, '44.40000', '-89.84000')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WIZ036': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Almond', 459, '44.26000', '-89.40000'), ('Amherst', 964, '44.45000', '-89.28000'), ('Amherst Junction', 305, '44.46000', '-89.30000'), ('Arnott', 10520, '44.45000', '-89.43000'), ('Bancroft', 899, '44.31000', '-89.51000'), ('Blaine', 459, '44.31000', '-89.30000'), ('Custer', 269, '44.50000', '-89.41000'), ('Dancy', 4063, '44.68000', '-89.69000'), ('Ellis', 488, '44.58000', '-89.43000'), ('Jordan', 488, '44.56000', '-89.48000'), ('Junction City', 440, '44.58000', '-89.75000'), ('Keene', 459, '44.36000', '-89.46000'), ('Kellner', 2278, '44.34000', '-89.71000'), ('Nelsonville', 191, '44.50000', '-89.30000'), ('Park Ridge', 488, '44.51000', '-89.54000'), ('Peru', 518, '44.56000', '-89.23000'), ('Plover', 10520, '44.45000', '-89.53000'), ('Polonia', 191, '44.56000', '-89.41000'), ('Rosholt', 518, '44.63000', '-89.30000'), ('Shantytown', 518, '44.68000', '-89.41000'), ('Stevens Point', 24551, '44.51000', '-89.56000'), ('Stockton', 488, '44.51000', '-89.46000'), ('Whiting', 1760, '44.48900', '-89.56190')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WIZ037': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Big Falls', 85, '44.61000', '-89.00000'), ('Clintonville', 4736, '44.61000', '-88.75000'), ('Embarrass', 399, '44.66000', '-88.69000'), ('Fremont', 666, '44.26000', '-88.86000'), ('Iola', 1298, '44.50000', '-89.11000'), ('King', 2215, '44.33000', '-89.13000'), ('Lind Center', 5676, '44.28000', '-89.03000'), ('Manawa', 1330, '44.46000', '-88.91000'), ('Marion', 1297, '44.66000', '-88.88000'), ('New London', 7085, '44.38000', '-88.75000'), ('Northland', 1298, '44.59000', '-89.19000'), ('Northport', 7085, '44.40000', '-88.80000'), ('Ogdensburg', 224, '44.45000', '-89.03000'), ('Readfield', 666, '44.26000', '-88.76000'), ('Royalton', 1330, '44.41000', '-88.86000'), ('Rural', 2215, '44.31000', '-89.15000'), ('Scandinavia', 349, '44.46000', '-89.13000'), ('Sheridan', 2215, '44.38000', '-89.21000'), ('Symco', 1330, '44.51000', '-88.90000'), ('Waupaca', 5676, '44.34000', '-89.06000'), ('Weyauwega', 1806, '44.31000', '-88.93000'), ('White Lake', 1806, '44.36000', '-88.94000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ038': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Appleton', 70087, '44.26000', '-88.40000'), ('Bear Creek', 415, '44.53000', '-88.71000'), ('Binghamton', 1192, '44.43000', '-88.46000'), ('Black Creek', 1192, '44.46000', '-88.44000'), ('Combined Locks', 2422, '44.25000', '-88.31000'), ('Dale', 2357, '44.26000', '-88.68000'), ('Freedom', 6146, '44.38000', '-88.28000'), ('Greenville', 2357, '44.29000', '-88.53000'), ('Hortonville', 2357, '44.33000', '-88.63000'), ('Kaukauna', 12983, '44.26000', '-88.26000'), ('Kimberly', 6146, '44.28000', '-88.31000'), ('Leeman', 307, '44.56000', '-88.55000'), ('Little Chute', 10476, '44.28000', '-88.26000'), ('Mackville', 70087, '44.34000', '-88.41000'), ('Medina', 2357, '44.26000', '-88.63000'), ('Nichols', 307, '44.56000', '-88.46000'), ('Seymour', 1474, '44.51000', '-88.33000'), ('Shiocton', 954, '44.43000', '-88.58000'), ('Stephensville', 2357, '44.36000', '-88.58000'), ('Sugar Bush', 415, '44.48000', '-88.73000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ039': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Allouez', 15443, '44.46000', '-87.98000'), ('Anston', 13546, '44.61000', '-88.15000'), ('Ashwaubenon', 17634, '44.46000', '-88.08000'), ('Askeaton', 1934, '44.26000', '-88.11000'), ('Bellevue', 11828, '44.43000', '-87.91000'), ('Champion', 1935, '44.58000', '-87.80000'), ('Denmark', 1958, '44.34000', '-87.83000'), ('De Pere', 20559, '44.45000', '-88.05000'), ('Flintville', 13546, '44.65000', '-88.11000'), ('Green Bay', 102313, '44.51000', '-88.00000'), ('Greenleaf', 1934, '44.31000', '-88.09000'), ('Holland', 1934, '44.25000', '-88.16000'), ('Howard', 13546, '44.56000', '-88.06000'), ('Humboldt', 1935, '44.50000', '-87.83000'), ('Kunesh', 3060, '44.61000', '-88.18000'), ('Langes Corners', 1958, '44.38000', '-87.86000'), ('Lark', 1958, '44.31000', '-87.94000'), ('Morrison', 1187, '44.29000', '-87.98000'), ('New Franken', 1935, '44.53000', '-87.83000'), ('Oneida', 1070, '44.50000', '-88.19000'), ('Poland', 1958, '44.43000', '-87.83000'), ('Pulaski', 3060, '44.66000', '-88.23000'), ('Shirley', 1958, '44.34000', '-87.94000'), ('Suamico', 13546, '44.63000', '-88.05000'), ('Wayside', 1187, '44.25000', '-87.94000'), ('Wrightstown', 1934, '44.33000', '-88.16000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ040': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Alaska', 2806, '44.53000', '-87.50000'), ('Casco', 572, '44.56000', '-87.61000'), ('Duvall', 1935, '44.66000', '-87.69000'), ('Dyckesville', 1935, '44.65000', '-87.75000'), ('Ellisville', 1935, '44.46000', '-87.68000'), ('Euren', 572, '44.61000', '-87.59000'), ('Lincoln', 572, '44.61000', '-87.63000'), ('Luxemburg', 1935, '44.54000', '-87.69000'), ('Neuern', 1935, '44.50000', '-87.71000'), ('Norman', 2806, '44.36000', '-87.59000'), ('Pilsen', 1935, '44.45000', '-87.71000'), ('Rankin', 3357, '44.59000', '-87.50000'), ('Rio Creek', 3357, '44.58000', '-87.53000'), ('Rosiere', 572, '44.66000', '-87.59000'), ('Rostok', 2806, '44.50000', '-87.50000'), ('Slovan', 572, '44.53000', '-87.58000'), ('Stangelville', 1935, '44.40000', '-87.68000'), ('Tisch Mills', 1422, '44.33000', '-87.61000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ041': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bangor', 1400, '43.89200', '-90.99110'), ('Barre Mills', 4540, '43.83551', '-91.11631'), ('Brice Prairie', 1804, '43.93870', '-91.29970'), ('Burns', 1400, '43.95247', '-90.98107'), ('Burr Oak', 529, '44.05116', '-91.04686'), ('Council Bay', 1427, '44.05116', '-91.28262'), ('French Island', 4410, '43.85830', '-91.26030'), ('Holmen', 6200, '43.95690', '-91.25900'), ('La Crosse', 51818, '43.82690', '-91.23390'), ('Medary', 14839, '43.86840', '-91.20038'), ('Middle Ridge', 1400, '43.80078', '-90.94818'), ('Mindoro', 4540, '44.01826', '-91.09986'), ('New Amsterdam', 1804, '43.98537', '-91.31734'), ('Newburg Corners', 714, '43.78251', '-90.98290'), ('Onalaska', 14839, '43.88710', '-91.21880'), ('Rockland', 628, '43.90610', '-90.91820'), ('Stevenstown', 6200, '44.03654', '-91.16748'), ('St Joseph', 714, '43.78616', '-91.03224'), ('West Salem', 4540, '43.89860', '-91.08170')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIZ042': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Cashton', 1005, '43.74310', '-90.78140'), ('Cataract', 8648, '44.08588', '-90.83121'), ('Clifton', 113, '43.88119', '-90.35057'), ('Fort Mc Coy', 8648, '44.01643', '-90.68135'), ('Four Corners', 529, '44.07857', '-90.91162'), ('Glendale', 469, '43.78251', '-90.34874'), ('Kendall', 469, '43.79320', '-90.36760'), ('Kirby', 286, '44.10233', '-90.53332'), ('Melvina', 93, '43.80430', '-90.78030'), ('Norwalk', 653, '43.83330', '-90.62540'), ('Oakdale', 297, '43.96270', '-90.37860'), ('Portland', 1005, '43.76606', '-90.84949'), ('Ridgeville', 653, '43.88485', '-90.56622'), ('Shennington', 146, '44.03105', '-90.31401'), ('Sparta', 8648, '43.94280', '-90.80980'), ('St Marys', 653, '43.80078', '-90.68501'), ('Tomah', 8419, '43.98960', '-90.50330'), ('Tunnel City', 8419, '44.00181', '-90.56804'), ('Valley Junction', 146, '44.05116', '-90.41453'), ('Warrens', 286, '44.13040', '-90.50060'), ('Wilton', 519, '43.81450', '-90.52740'), ('Wyeville', 146, '44.02770', '-90.38580')], 'partOfState': 'west central', 'wfo': 'ARX'}, +'WIZ043': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Buckhorn State Park', 888, '43.91775', '-89.97774'), ('Camp Douglas', 592, '43.91890', '-90.26890'), ('Cloverdale', 888, '44.01643', '-90.18243'), ('Cutler', 592, '44.01826', '-90.23543'), ('Elroy', 1578, '43.74270', '-90.27240'), ('Finley', 888, '44.21746', '-90.13309'), ('Hustler', 113, '43.87930', '-90.26820'), ('Lemonweir', 3740, '43.78251', '-90.01247'), ('Lyndon Station', 458, '43.71010', '-89.89440'), ('Mather', 146, '44.14985', '-90.29574'), ('Mauston', 3740, '43.80060', '-90.08110'), ('Meadow Valley', 866, '44.22112', '-90.21533'), ('Necedah', 888, '44.02460', '-90.07170'), ('New Lisbon', 1436, '43.87860', '-90.16470'), ('New Miner', 888, '44.16629', '-90.03257'), ('Sprague', 888, '44.14985', '-90.13309'), ('Union Center', 214, '43.68410', '-90.26320'), ('Wonewoc', 834, '43.65310', '-90.22400')], 'partOfState': 'central', 'wfo': 'ARX'}, +'WIZ044': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Adams', 1914, '43.95530', '-89.81690'), ('Arkdale', 698, '44.03288', '-89.88271'), ('Big Flats', 698, '44.11878', '-89.80230'), ('Big Spring', 536, '43.66737', '-89.63416'), ('Brooks', 536, '43.81906', '-89.63416'), ('Dellwood', 888, '43.96892', '-89.95581'), ('Friendship', 698, '43.97180', '-89.82000'), ('Grand Marsh', 1914, '43.89947', '-89.71275'), ('Monroe Center', 888, '44.11878', '-89.94850'), ('New Rome', 2590, '44.23574', '-89.88454'), ('Plainville', 458, '43.71671', '-89.81509'), ('Strongs Prairie', 888, '44.07126', '-89.98323'), ('White Creek', 1914, '43.83551', '-89.86444')], 'partOfState': 'central', 'wfo': 'ARX'}, +'WIZ045': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Auroraville', 5305, '44.04000', '-89.00000'), ('Borth', 5305, '44.09000', '-88.90000'), ('Coloma', 461, '44.03000', '-89.51000'), ('Hancock', 463, '44.13000', '-89.51000'), ('Lohrville', 408, '44.02000', '-89.11000'), ('Mount Morris', 765, '44.11000', '-89.19000'), ('Pine River', 1040, '44.15000', '-89.08000'), ('Plainfield', 899, '44.21000', '-89.48000'), ('Poy Sippi', 1040, '44.13000', '-89.00000'), ('Redgranite', 1040, '44.03000', '-89.09000'), ('Richford', 461, '44.01000', '-89.43000'), ('Saxeville', 1040, '44.18000', '-89.11000'), ('Silver Lake', 1998, '44.04000', '-89.23000'), ('Spring Lake', 408, '44.01000', '-89.16000'), ('Tustin', 666, '44.16000', '-88.89000'), ('Wautoma', 1998, '44.06000', '-89.28000'), ('West Bloomfield', 666, '44.21000', '-88.96000'), ('Wild Rose', 765, '44.18000', '-89.25000')], 'partOfState': 'central', 'wfo': 'GRB'}, +'WIZ046': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Endeavor', 440, '43.71470', '-89.46890'), ('Montello', 1397, '43.79430', '-89.33440'), ('Neshkoro', 453, '43.96520', '-89.21390'), ('Oxford', 536, '43.78020', '-89.56270'), ('Westfield', 1217, '43.88460', '-89.49410')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ047': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Berlin', 5305, '43.97000', '-88.95020'), ('Green Lake', 1100, '43.84270', '-88.95570'), ('Kingston', 288, '43.69360', '-89.13130'), ('Markesan', 1396, '43.70920', '-88.98970'), ('Marquette', 169, '43.74220', '-89.13880'), ('Princeton', 1504, '43.85220', '-89.12950')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ048': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Allenville', 2401, '44.13000', '-88.61000'), ('Butte Des Morts', 2401, '44.09000', '-88.65000'), ('Eureka', 3177, '44.00000', '-88.84000'), ('Fisk', 3177, '43.95000', '-88.68000'), ('Lake Butte Des Mor', 2401, '44.08000', '-88.63000'), ('Lake Poygan', 666, '44.16000', '-88.86000'), ('Larsen', 2401, '44.18000', '-88.61000'), ('Menasha', 16331, '44.20000', '-88.44000'), ('Neenah', 24507, '44.18000', '-88.44000'), ('Omro', 3177, '44.03000', '-88.75000'), ('Oshkosh', 62916, '44.01000', '-88.55000'), ('Pickett', 923, '43.91000', '-88.73000'), ('Rush Lake', 6828, '43.91000', '-88.83000'), ('Waukau', 3177, '44.00000', '-88.76000'), ('Winchester', 2401, '44.20000', '-88.66000'), ('Winnebago', 62916, '44.06000', '-88.51000'), ('Winneconne', 2401, '44.11000', '-88.71000'), ('Wittman Field', 62916, '43.98000', '-88.55000'), ('Zittau', 666, '44.21000', '-88.78000')], 'partOfState': 'east central', 'wfo': 'GRB'}, +'WIZ049': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Brillion', 2937, '44.18000', '-88.06000'), ('Brothertown', 649, '43.96000', '-88.30000'), ('Central Lake Winnebago', 649, '44.08000', '-88.40000'), ('Charlesburg', 3301, '43.96000', '-88.16000'), ('Chilton', 3708, '44.03000', '-88.16000'), ('Darboy', 70087, '44.23000', '-88.38000'), ('Dundas', 12983, '44.23000', '-88.19000'), ('Forest Junction', 1089, '44.21000', '-88.15000'), ('Hayton', 3708, '44.01000', '-88.11000'), ('High Cliff State Park', 837, '44.16000', '-88.28000'), ('Hilbert', 1089, '44.13000', '-88.16000'), ('Jericho', 3708, '43.96000', '-88.26000'), ('New Holstein', 3301, '43.95000', '-88.08000'), ('Northern Lake Winnebago', 16331, '44.17000', '-88.40000'), ('Potter', 223, '44.11000', '-88.09000'), ('Quinney', 649, '44.01000', '-88.30000'), ('St Anna', 3301, '43.90000', '-88.13000'), ('St John', 1089, '44.16000', '-88.19000'), ('Stockbridge', 649, '44.06000', '-88.30000')], 'partOfState': 'east central', 'wfo': 'GRB'}, +'WIZ050': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Branch', 681, '44.15000', '-87.76000'), ('Cato', 730, '44.15000', '-87.86000'), ('Clarks Mills', 948, '44.08000', '-87.86000'), ('Cleveland', 1361, '43.91000', '-87.75000'), ('Collins', 1187, '44.08000', '-87.98000'), ('Cooperstown', 264, '44.31000', '-87.76000'), ('Francis Creek', 681, '44.20000', '-87.71000'), ('Grimms', 1187, '44.15000', '-87.90000'), ('Kellnersville', 374, '44.23000', '-87.80000'), ('Kiel', 3450, '43.91000', '-88.03000'), ('Larrabee', 681, '44.26000', '-87.71000'), ('Manitowoc', 34053, '44.08000', '-87.66000'), ('Maribel', 264, '44.26000', '-87.80000'), ('Menchalville', 374, '44.21000', '-87.88000'), ('Millhome', 3450, '43.90000', '-87.96000'), ('Mishicot', 1422, '44.23000', '-87.63000'), ('Osman', 1361, '43.96000', '-87.81000'), ('Point Beach State Park', 12639, '44.21000', '-87.51000'), ('Reedsville', 1187, '44.16000', '-87.96000'), ('Rosecrans', 264, '44.26000', '-87.83000'), ('School Hill', 749, '43.95000', '-87.90000'), ('Shoto', 34053, '44.16000', '-87.65000'), ('Spring Valley', 1361, '43.93000', '-87.83000'), ('St Nazianz', 749, '44.00000', '-87.91000'), ('Taus', 730, '44.18000', '-87.86000'), ('Two Creeks', 1422, '44.29000', '-87.56000'), ('Two Rivers', 12639, '44.15000', '-87.56000'), ('Valders', 948, '44.06000', '-87.88000'), ('Whitelaw', 730, '44.15000', '-87.83000')], 'partOfState': 'east central', 'wfo': 'GRB'}, +'WIZ051': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Brandon', 912, '43.73740', '-88.78380'), ('Campbellsport', 1913, '43.59940', '-88.28130'), ('Eden', 687, '43.69240', '-88.36280'), ('Fairwater', 350, '43.74110', '-88.86880'), ('Fond Du Lac', 42203, '43.78333', '-88.45000'), ('Mount Calvary', 956, '43.82650', '-88.24680'), ('North Fond Du Lac', 4557, '43.80900', '-88.48330'), ('Oakfield', 1012, '43.68460', '-88.54690'), ('Ripon', 6828, '43.84580', '-88.84160'), ('Rosendale', 923, '43.80830', '-88.67580'), ('St. Cloud', 497, '43.82260', '-88.16730')], 'partOfState': 'east central', 'wfo': 'MKX'}, +'WIZ052': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Adell', 517, '43.62080', '-87.94620'), ('Cascade', 666, '43.65940', '-88.00850'), ('Cedar Grove', 1887, '43.56710', '-87.82360'), ('Elkhart Lake', 1021, '43.83280', '-88.01460'), ('Glenbeulah', 378, '43.79860', '-88.04660'), ('Howards Grove', 2792, '43.82960', '-87.82590'), ('Kohler', 1926, '43.73550', '-87.77900'), ('Oostburg', 2660, '43.62430', '-87.79760'), ('Plymouth', 7781, '43.74720', '-87.97200'), ('Random Lake', 1551, '43.55500', '-87.95600'), ('Sheboygan Falls', 6772, '43.72980', '-87.82260'), ('Waldo', 450, '43.67560', '-87.94650')], 'partOfState': 'east central', 'wfo': 'MKX'}, +'WIZ053': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Benders Corners', 1302, '43.58148', '-90.35057'), ('Bloomingdale', 2045, '43.64727', '-90.78370'), ('Chaseburg', 306, '43.65480', '-91.09990'), ('Coon Valley', 714, '43.70180', '-91.01020'), ('De Soto', 366, '43.42690', '-91.19670'), ('Dilly', 1302, '43.65092', '-90.43281'), ('Esofea', 714, '43.63082', '-90.96645'), ('Genoa', 263, '43.57340', '-91.22580'), ('Greenwood', 92, '43.56503', '-90.41636'), ('Hillsboro', 1302, '43.65410', '-90.33770'), ('La Farge', 775, '43.57750', '-90.63810'), ('Liberty Pole', 4335, '43.48279', '-90.90066'), ('Newton', 306, '43.58148', '-91.06697'), ('Ontario', 476, '43.72210', '-90.59290'), ('Potts Corners', 775, '43.63082', '-90.65028'), ('Readstown', 395, '43.44880', '-90.75890'), ('Red Mound', 366, '43.46451', '-91.14921'), ('Retreat', 174, '43.44806', '-91.08341'), ('Rockton', 476, '43.64544', '-90.60094'), ('Stoddard', 815, '43.66120', '-91.21840'), ('Trippville', 469, '43.71489', '-90.40174'), ('Valley', 476, '43.64727', '-90.53149'), ('Victory', 366, '43.47913', '-91.21683'), ('Viola', 667, '43.50760', '-90.67310'), ('Viroqua', 4335, '43.55830', '-90.88630'), ('Westby', 2045, '43.65300', '-90.85710'), ('West Prairie', 174, '43.46451', '-91.01580')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIZ054': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Barnum', 177, '43.21231', '-90.83487'), ('Bell Center', 116, '43.29200', '-90.82540'), ('Bridgeport', 6018, '43.00214', '-91.05417'), ('Clayton', 507, '43.38227', '-90.71608'), ('Eastman', 437, '43.16230', '-91.02030'), ('Fairview', 215, '43.36217', '-90.95000'), ('Ferryville', 174, '43.34320', '-91.08350'), ('Gays Mills', 625, '43.32010', '-90.85040'), ('Lynxville', 176, '43.24800', '-91.04790'), ('Mount Sterling', 215, '43.31430', '-90.93060'), ('Plugtown', 3047, '43.21414', '-90.74897'), ('Prairie Du Chien', 6018, '43.04320', '-91.14000'), ('Rising Sun', 215, '43.41517', '-90.96645'), ('Rolling Ground', 653, '43.33110', '-90.73252'), ('Seneca', 215, '43.26531', '-90.96645'), ('Soldiers Grove', 653, '43.39240', '-90.77360'), ('Steuben', 177, '43.18120', '-90.85730'), ('Wauzeka', 768, '43.08440', '-90.89550')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIZ055': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bloom City', 92, '43.49741', '-90.46753'), ('Boaz', 137, '43.33080', '-90.52720'), ('Bosstown', 137, '43.38227', '-90.61739'), ('Cazenovia', 326, '43.52530', '-90.19880'), ('Eagle Corners', 1453, '43.21414', '-90.50042'), ('Five Points', 137, '43.31465', '-90.59911'), ('Gillingham', 92, '43.43162', '-90.44925'), ('Gotham', 608, '43.21414', '-90.29939'), ('Ithaca', 5114, '43.34755', '-90.28295'), ('Lone Rock', 929, '43.18450', '-90.20170'), ('Loyd', 169, '43.41517', '-90.24822'), ('Neptune', 5114, '43.36582', '-90.26650'), ('Richland Center', 5114, '43.33780', '-90.38320'), ('Rockbridge', 92, '43.44806', '-90.36701'), ('Sabin', 137, '43.43162', '-90.56439'), ('Sextonville', 608, '43.28176', '-90.29757'), ('Tavera', 429, '43.28358', '-90.65028'), ('West Lima', 92, '43.54858', '-90.53149'), ('Westport', 429, '43.19952', '-90.63384'), ('Yuba', 92, '43.53630', '-90.42790')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIZ056': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Baraboo', 10711, '43.46850', '-89.74150'), ('Ironton', 250, '43.54470', '-90.14170'), ('Lake Delton', 1982, '43.59330', '-89.78040'), ('La Valle', 326, '43.58270', '-90.13060'), ('Lime Ridge', 169, '43.46820', '-90.15640'), ('Loganville', 276, '43.43980', '-90.03700'), ('Merrimac', 416, '43.37370', '-89.62540'), ('North Freedom', 649, '43.45870', '-89.86310'), ('Plain', 792, '43.27830', '-90.04220'), ('Prairie Du Sac', 3231, '43.29110', '-89.72850'), ('Reedsburg', 7827, '43.53490', '-89.99900'), ('Rock Springs', 425, '43.47990', '-89.91800'), ('Sauk City', 3109, '43.27220', '-89.72850'), ('Spring Green', 1444, '43.17560', '-90.06710'), ('West Baraboo', 1248, '43.47590', '-89.76790')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ057': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arlington', 484, '43.33850', '-89.37660'), ('Cambria', 792, '43.54090', '-89.11380'), ('Columbus', 4479, '43.33570', '-89.02840'), ('Doylestown', 328, '43.42760', '-89.14620'), ('Fall River', 1097, '43.38510', '-89.04770'), ('Friesland', 298, '43.58900', '-89.06780'), ('Lake Wisconsin', 3493, '43.37350', '-89.57560'), ('Lodi', 2882, '43.31640', '-89.53210'), ('Pardeeville', 1982, '43.53410', '-89.30030'), ('Portage', 9728, '43.54790', '-89.46590'), ('Poynette', 2266, '43.39080', '-89.40820'), ('Rio', 938, '43.45030', '-89.23770'), ('Wisconsin Dells', 2418, '43.62640', '-89.77790'), ('Wyocena', 668, '43.49310', '-89.31000')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ058': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Beaver Dam', 15169, '43.46400', '-88.83720'), ('Brownsville', 570, '43.61570', '-88.49130'), ('Clyman', 388, '43.31210', '-88.71930'), ('Fox Lake', 1454, '43.56340', '-88.91260'), ('Horicon', 3775, '43.44490', '-88.63710'), ('Hustisford', 1135, '43.34550', '-88.60360'), ('Iron Ridge', 998, '43.39760', '-88.53210'), ('Juneau', 2485, '43.40630', '-88.70330'), ('Kekoskee', 169, '43.52760', '-88.56170'), ('Lomira', 2233, '43.58890', '-88.44470'), ('Lowell', 366, '43.33780', '-88.82090'), ('Mayville', 4902, '43.49820', '-88.54620'), ('Neosho', 593, '43.30970', '-88.51780'), ('Randolph', 1869, '43.53780', '-89.00220'), ('Reeseville', 703, '43.30590', '-88.84510'), ('Theresa', 1252, '43.51780', '-88.45270'), ('Waupun', 10718, '43.63160', '-88.73570')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ059': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Germantown', 18260, '43.23610', '-88.12030'), ('Hartford', 10905, '43.32370', '-88.38880'), ('Jackson', 4938, '43.32090', '-88.16390'), ('Kewaskum', 3274, '43.52190', '-88.23040'), ('Newburg', 1119, '43.43140', '-88.04750'), ('Slinger', 3901, '43.33210', '-88.28570'), ('West Bend', 28152, '43.42280', '-88.18420')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ060': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Belgium', 1678, '43.50060', '-87.85030'), ('Cedarburg', 10908, '43.29660', '-87.98820'), ('Fredonia', 1934, '43.46850', '-87.95170'), ('Grafton', 10312, '43.31860', '-87.95460'), ('Mequon', 21823, '43.23333', '-87.98333'), ('Saukville', 4068, '43.38380', '-87.94140'), ('Thiensville', 3254, '43.23680', '-87.97990')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ061': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bagley', 339, '42.90360', '-91.09820'), ('Beetown', 701, '42.79746', '-90.88421'), ('Bloomington', 701, '42.89210', '-90.92730'), ('Blue River', 429, '43.18620', '-90.57240'), ('Boscobel', 3047, '43.13960', '-90.70460'), ('Burton', 64, '42.71522', '-90.81842'), ('Cassville', 1085, '42.71560', '-90.99040'), ('Castle Rock', 663, '43.04600', '-90.53332'), ('Cuba City', 2156, '42.60310', '-90.43130'), ('Dickeyville', 1043, '42.62580', '-90.59210'), ('Ellenboro', 4070, '42.78101', '-90.61922'), ('Fennimore', 2387, '42.98060', '-90.65060'), ('Georgetown', 2156, '42.61653', '-90.48398'), ('Glen Haven', 2257, '42.83035', '-91.06879'), ('Hazel Green', 1183, '42.53430', '-90.43560'), ('Hurricane', 4070, '42.78101', '-90.76725'), ('Kieler', 1043, '42.58363', '-90.59911'), ('Lancaster', 4070, '42.84850', '-90.70800'), ('Livingston', 597, '42.90070', '-90.43370'), ('Millville', 768, '43.03138', '-90.93356'), ('Montfort', 663, '42.97020', '-90.43290'), ('Mount Hope', 186, '42.96970', '-90.85860'), ('Muscoda', 1453, '43.18730', '-90.43420'), ('North Andover', 701, '42.81573', '-90.96828'), ('Patch Grove', 166, '42.93930', '-90.97270'), ('Platteville', 9989, '42.73520', '-90.47690'), ('Port Andrew', 429, '43.20500', '-90.56804'), ('Potosi', 711, '42.68940', '-90.71100'), ('Preston', 2387, '42.96559', '-90.54794'), ('Sinsinawa', 187, '42.51601', '-90.53332'), ('Stitzer', 2387, '42.91442', '-90.63384'), ('Tennyson', 370, '42.68970', '-90.68660'), ('Union', 9989, '42.83218', '-90.51687'), ('Werley', 96, '43.01493', '-90.76725'), ('Woodman', 96, '43.09080', '-90.79790')], 'partOfState': 'southwest', 'wfo': 'ARX'}, +'WIZ062': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Arena', 685, '43.16330', '-89.91320'), ('Avoca', 608, '43.18820', '-90.32520'), ('Barneveld', 1088, '43.01450', '-89.89590'), ('Cobb', 442, '42.96530', '-90.32930'), ('Dodgeville', 4220, '42.96380', '-90.13000'), ('Highland', 855, '43.04640', '-90.37900'), ('Hollandale', 283, '42.87610', '-89.93330'), ('Linden', 615, '42.91920', '-90.27400'), ('Mineral Point', 2617, '42.86190', '-90.18310'), ('Rewey', 311, '42.84190', '-90.39630'), ('Ridgeway', 689, '42.99920', '-89.99220')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ063': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Belleville', 1908, '42.86170', '-89.53650'), ('Black Earth', 1320, '43.13660', '-89.74610'), ('Blue Mounds', 708, '43.02070', '-89.82620'), ('Cambridge', 1101, '43.00720', '-89.01870'), ('Cottage Grove', 4059, '43.08500', '-89.20230'), ('Cross Plains', 3084, '43.11390', '-89.64620'), ('Dane', 799, '43.25040', '-89.50040'), ('Deerfield', 1971, '43.05140', '-89.07430'), ('De Forest', 7368, '43.24580', '-89.34580'), ('Fitchburg', 20501, '42.98600', '-89.42510'), ('Madison', 208054, '43.08333', '-89.38333'), ('Maple Bluff', 1358, '43.10980', '-89.36940'), ('Marshall', 3432, '43.17250', '-89.06410'), ('Mazomanie', 1485, '43.17440', '-89.79480'), ('McFarland', 6416, '43.01890', '-89.29390'), ('Middleton', 15770, '43.10290', '-89.50630'), ('Monona', 8018, '43.05440', '-89.33320'), ('Mount Horeb', 5860, '43.00910', '-89.73360'), ('Oregon', 7514, '42.92630', '-89.38210'), ('Rockdale', 214, '42.97250', '-89.03260'), ('Shorewood Hills', 1732, '43.07770', '-89.44650'), ('Stoughton', 12354, '42.92110', '-89.22280'), ('Sun Prairie', 20369, '43.18370', '-89.23230'), ('Verona', 7052, '42.98880', '-89.53540'), ('Waunakee', 8995, '43.18660', '-89.45200'), ('Windsor', 2533, '43.21670', '-89.34210')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ064': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Fort Atkinson', 11621, '42.92670', '-88.84150'), ('Jefferson', 7338, '43.00640', '-88.80810'), ('Johnson Creek', 1581, '43.07980', '-88.77390'), ('Lake Mills', 4843, '43.07400', '-88.90800'), ('Lake Ripley', 1603, '43.00570', '-88.98610'), ('Palmyra', 1766, '42.87900', '-88.58810'), ('Sullivan', 688, '43.01250', '-88.58950'), ('Waterloo', 3259, '43.18300', '-88.98990'), ('Watertown', 21598, '43.19160', '-88.72490')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ065': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Big Bend', 1278, '42.88230', '-88.20410'), ('Brookfield', 38649, '43.06280', '-88.11980'), ('Butler', 1881, '43.10840', '-88.07220'), ('Chenequa', 583, '43.12340', '-88.38110'), ('Delafield', 6472, '43.06960', '-88.39190'), ('Dousman', 1584, '43.01480', '-88.47140'), ('Eagle', 1707, '42.87960', '-88.47130'), ('Elm Grove', 6249, '43.04760', '-88.08670'), ('Hartland', 7905, '43.09820', '-88.34460'), ('Lac La Belle', 329, '43.14550', '-88.52570'), ('Lannon', 1009, '43.15140', '-88.16240'), ('Menomonee Falls', 32647, '43.14720', '-88.12590'), ('Merton', 1926, '43.14100', '-88.31350'), ('Mukwonago', 6162, '42.86630', '-88.33120'), ('Muskego', 21397, '42.89110', '-88.12290'), ('Nashotah', 1266, '43.09300', '-88.40130'), ('New Berlin', 38220, '42.97280', '-88.12920'), ('North Prairie', 1571, '42.93720', '-88.39560'), ('Oconomowoc', 12382, '43.10280', '-88.49680'), ('Oconomowoc Lake', 564, '43.09870', '-88.45500'), ('Okauchee Lake', 3916, '43.12340', '-88.44060'), ('Pewaukee', 8170, '43.08570', '-88.25200'), ('Sussex', 8828, '43.13590', '-88.21790'), ('Wales', 2523, '43.00490', '-88.37770'), ('Waukesha', 64825, '43.01250', '-88.23820')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ066': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bayside', 4518, '43.18290', '-87.90180'), ('Brown Deer', 12170, '43.17500', '-87.97480'), ('Cudahy', 18429, '42.94660', '-87.86480'), ('Fox Point', 7012, '43.15850', '-87.90170'), ('Franklin', 29494, '42.88630', '-88.00980'), ('Glendale', 13367, '43.13000', '-87.92760'), ('Greendale', 14405, '42.93570', '-88.00150'), ('Greenfield', 35476, '42.96280', '-88.00560'), ('Hales Corners', 7765, '42.94050', '-88.04930'), ('Milwaukee', 0, '43.03890', '-87.90647'), ('Oak Creek', 28456, '42.88230', '-87.89730'), ('River Hills', 1631, '43.17360', '-87.93510'), ('Shorewood', 13763, '43.09130', '-87.88620'), ('South Milwaukee', 21256, '42.91290', '-87.86220'), ('St. Francis', 8662, '42.97070', '-87.87170'), ('Wauwatosa', 47271, '43.06210', '-88.03360'), ('West Allis', 61254, '43.00720', '-88.03000'), ('West Milwaukee', 4201, '43.01290', '-87.97010'), ('Whitefish Bay', 14163, '43.11260', '-87.90090')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ067': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Argyle', 823, '42.70060', '-89.86620'), ('Belmont', 871, '42.73800', '-90.33260'), ('Benton', 976, '42.57090', '-90.38220'), ('Blanchardville', 806, '42.80930', '-89.86060'), ('Darlington', 2418, '42.68050', '-90.11700'), ('Gratiot', 252, '42.57950', '-90.02290'), ('Shullsburg', 1246, '42.57310', '-90.23150'), ('South Wayne', 484, '42.56670', '-89.88040')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ068': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Albany', 1191, '42.70700', '-89.43680'), ('Brodhead', 3180, '42.61670', '-89.37620'), ('Brooklyn', 916, '42.85290', '-89.37220'), ('Browntown', 252, '42.57790', '-89.79140'), ('Monroe', 10843, '42.59980', '-89.64380'), ('Monticello', 1146, '42.74580', '-89.58970'), ('New Glarus', 2111, '42.81320', '-89.63460')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ069': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Beloit', 35775, '42.52370', '-89.02010'), ('Clinton', 2162, '42.55650', '-88.86610'), ('Edgerton', 4933, '42.83780', '-89.07260'), ('Evansville', 4039, '42.77990', '-89.29870'), ('Footville', 788, '42.67150', '-89.20890'), ('Janesville', 59498, '42.68460', '-89.01560'), ('Milton', 5132, '42.77890', '-88.94940'), ('Orfordville', 1272, '42.62920', '-89.25730')], 'partOfState': 'south central', 'wfo': 'MKX'}, +'WIZ070': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Como', 1870, '42.60940', '-88.49520'), ('Darien', 1572, '42.60090', '-88.71010'), ('Delavan', 7956, '42.62670', '-88.63260'), ('Delavan Lake', 2352, '42.60260', '-88.61900'), ('East Troy', 3564, '42.78910', '-88.39940'), ('Elkhorn', 7305, '42.67100', '-88.54030'), ('Fontana-On-geneva', 1754, '42.54530', '-88.56640'), ('Genoa City', 1949, '42.50150', '-88.32340'), ('Lake Geneva', 7148, '42.58860', '-88.42960'), ('Pell Lake', 2988, '42.54090', '-88.35800'), ('Potter Lake', 1099, '42.82160', '-88.34880'), ('Sharon', 1549, '42.50160', '-88.73010'), ('Walworth', 2304, '42.53050', '-88.59740'), ('Whitewater', 13437, '42.83490', '-88.73600'), ('Williams Bay', 2415, '42.57640', '-88.54280')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ071': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Bohners Lake', 1952, '42.62300', '-88.28030'), ('Browns Lake', 1933, '42.69240', '-88.23110'), ('Burlington', 9936, '42.67790', '-88.27820'), ('Eagle Lake', 1320, '42.70710', '-88.12810'), ('Elmwood Park', 474, '42.69290', '-87.82220'), ('North Bay', 260, '42.76490', '-87.78080'), ('Racine', 81855, '42.73333', '-87.78333'), ('Rochester', 1149, '42.74060', '-88.22400'), ('Sturtevant', 5287, '42.70030', '-87.89910'), ('Union Grove', 4322, '42.68420', '-88.05100'), ('Waterford', 4048, '42.76280', '-88.21550'), ('Waterford North', 1604, '42.79320', '-88.22200'), ('Wind Lake', 5202, '42.82240', '-88.15680'), ('Wind Point', 1853, '42.78170', '-87.77290')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ072': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Camp Lake', 3255, '42.53070', '-88.14590'), ('Kenosha', 90352, '42.58333', '-87.81667'), ('Paddock Lake', 3012, '42.57150', '-88.10240'), ('Pleasant Prairie', 16136, '42.55000', '-87.93333'), ('Powers Lake', 1500, '42.54260', '-88.30140'), ('Silver Lake', 2341, '42.55170', '-88.16760'), ('Twin Lakes', 5124, '42.51880', '-88.25880')], 'partOfState': 'southeast', 'wfo': 'MKX'}, +'WIZ073': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Beaver', 355, '45.13000', '-88.01000'), ('Coleman', 716, '45.06000', '-88.03000'), ('Crivitz', 998, '45.23000', '-88.01000'), ('Harmony', 3357, '45.09000', '-87.81000'), ('High Falls Reservoir', 998, '45.29000', '-88.20000'), ('Loomis', 998, '45.20000', '-87.90000'), ('McAllister', 904, '45.33000', '-87.71000'), ('Middle Inlet', 998, '45.29000', '-88.00000'), ('Peshtigo', 3357, '45.04000', '-87.75000'), ('Porterfield', 3357, '45.15000', '-87.80000'), ('Pound', 355, '45.09000', '-88.03000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WIZ074': {'fullStateName': 'Wisconsin', 'state': 'WI', 'cities': [('Abrams', 2843, '44.78000', '-88.06000'), ('Brookside', 4708, '44.79000', '-88.00000'), ('Gillett', 1256, '44.90000', '-88.31000'), ('Hayes', 605, '45.00000', '-88.43000'), ('Hickory Corners', 605, '45.00000', '-88.26000'), ('Lena', 510, '44.95000', '-88.05000'), ('Little Suamico', 13546, '44.71000', '-87.99000'), ('Oconto', 4708, '44.88000', '-87.88000'), ('Oconto Falls', 2843, '44.88000', '-88.20000'), ('Pensaukee', 4708, '44.81000', '-87.91000'), ('Sampson', 3060, '44.76000', '-88.18000'), ('Sobieski', 13546, '44.71000', '-88.06000'), ('Spruce', 2843, '44.95000', '-88.16000'), ('Stiles', 510, '44.86000', '-88.05000'), ('Suring', 605, '45.00000', '-88.38000'), ('Underhill', 1256, '44.88000', '-88.38000')], 'partOfState': 'northeast', 'wfo': 'GRB'}, +'WVZ001': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Chester', 2592, '40.61220', '-80.56380'), ('New Cumberland', 1099, '40.49600', '-80.60710'), ('Newell', 1602, '40.61750', '-80.60110'), ('Weirton', 20411, '40.40090', '-80.56410')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ002': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beech Bottom', 606, '40.22630', '-80.65200'), ('Bethany', 985, '40.20550', '-80.56360'), ('Follansbee', 3115, '40.33720', '-80.59720'), ('Hooverson Heights', 2909, '40.31840', '-80.57980'), ('Wellsburg', 2891, '40.28170', '-80.60980')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ003': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bethlehem', 2651, '40.04470', '-80.69200'), ('Clearview', 590, '40.14240', '-80.69130'), ('Triadelphia', 817, '40.05060', '-80.62720'), ('Valley Grove', 405, '40.09120', '-80.57070'), ('West Liberty', 1220, '40.16730', '-80.59480'), ('Wheeling', 31419, '40.07510', '-80.69700')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ004': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Benwood', 1585, '40.01000', '-80.73390'), ('Cameron', 1212, '39.82640', '-80.57050'), ('Glen Dale', 1552, '39.94900', '-80.75620'), ('Lynn Camp', 0, '39.77000', '-80.70000'), ('McMechen', 1937, '39.98650', '-80.73320'), ('Moundsville', 9998, '39.92280', '-80.74180')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ005': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beech Fork State Park', 1105, '38.30130', '-82.40990'), ('Ceredo', 1675, '38.39660', '-82.55410'), ('East Lynn Lake', 1105, '38.15440', '-82.38430'), ('Fort Gay', 819, '38.11850', '-82.59450'), ('Kenova', 3485, '38.40320', '-82.58010'), ('Wayne', 1105, '38.22090', '-82.44270')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ006': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Barboursville', 3183, '38.40480', '-82.29450'), ('Culloden', 2940, '38.41710', '-82.06780'), ('Huntington', 51475, '38.41300', '-82.43380'), ('Milton', 2206, '38.43390', '-82.13770'), ('Pea Ridge', 6363, '38.41400', '-82.32000')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ007': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Hartford City', 519, '38.99860', '-81.98870'), ('Henderson', 325, '38.83150', '-82.13570'), ('Leon', 132, '38.74730', '-81.95610'), ('Mason', 1064, '39.01890', '-82.03240'), ('New Haven', 1559, '38.98800', '-81.96750'), ('Point Pleasant', 4637, '38.85390', '-82.13070')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ008': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Kenna', 3263, '38.67640', '-81.66040'), ('Ravenswood', 4031, '38.95720', '-81.76310'), ('Ripley', 3263, '38.82010', '-81.70910')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ009': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Blennerhassett', 3225, '39.25850', '-81.63360'), ('Boaz', 1345, '39.37100', '-81.48620'), ('Lubeck', 1303, '39.23640', '-81.62950'), ('Mineralwells', 1860, '39.17910', '-81.51160'), ('North Hills', 880, '39.31470', '-81.51050'), ('Parkersburg', 33099, '39.26400', '-81.54300'), ('Vienna', 10861, '39.32270', '-81.53820'), ('Washington', 1170, '39.24090', '-81.67340'), ('Williamstown', 2996, '39.40120', '-81.45090')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ010': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Belmont', 1036, '39.37740', '-81.26230'), ('St. Marys', 2017, '39.40250', '-81.19550')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ011': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Friendly', 159, '39.51290', '-81.06210'), ('Middlebourne', 870, '39.49360', '-80.90940'), ('Sistersville', 1588, '39.55950', '-80.99850')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ012': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Hundred', 344, '39.68410', '-80.45750'), ('Jacksonburg', 0, '39.53000', '-80.65000'), ('Knob Fork', 0, '39.65000', '-80.55000'), ('Littleton', 207, '39.69960', '-80.51480'), ('New Martinsville', 5984, '39.66410', '-80.85970'), ('Paden City', 2860, '39.60290', '-80.93540'), ('Pine Grove', 571, '39.56470', '-80.68260'), ('Smithfield', 177, '39.49890', '-80.56060')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ013': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Alum Creek', 1839, '38.28190', '-81.84170'), ('Hamlin', 1119, '38.27910', '-82.10380'), ('Harts', 2361, '38.03060', '-82.13080'), ('West Hamlin', 696, '38.28340', '-82.19530')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ014': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bancroft', 367, '38.51080', '-81.84180'), ('Buffalo', 1171, '38.61320', '-81.98130'), ('Eleanor', 1345, '38.53890', '-81.93120'), ('Hurricane', 5222, '38.43680', '-82.01690'), ('Poca', 1013, '38.47440', '-81.81280'), ('Teays Valley', 12704, '38.44800', '-81.92750'), ('Winfield', 1858, '38.52580', '-81.88310')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ015': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Belle', 1259, '38.23250', '-81.53990'), ('Cedar Grove', 862, '38.22070', '-81.42880'), ('Charleston', 53421, '38.35050', '-81.63040'), ('Chesapeake', 1643, '38.22240', '-81.53620'), ('Clendenin', 1116, '38.48740', '-81.34930'), ('Coal Fork', 1350, '38.31650', '-81.52090'), ('Cross Lanes', 10353, '38.43510', '-81.76990'), ('Dunbar', 8154, '38.36820', '-81.73670'), ('East Bank', 933, '38.21570', '-81.44520'), ('Elkview', 1182, '38.43490', '-81.47490'), ('Glasgow', 783, '38.20980', '-81.42260'), ('Handley', 362, '38.18660', '-81.36640'), ('Institute', 8154, '38.38360', '-81.76580'), ('Marmet', 1693, '38.24630', '-81.56980'), ('Nitro', 6824, '38.41760', '-81.83110'), ('Pinch', 2811, '38.40740', '-81.47980'), ('Pratt', 551, '38.20700', '-81.38750'), ('Sissonville', 4399, '38.50190', '-81.64470'), ('South Charleston', 13390, '38.35640', '-81.70720'), ('St. Albans', 11567, '38.37860', '-81.81700'), ('Tornado', 1111, '38.33280', '-81.85570')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ016': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Reedy', 198, '38.89880', '-81.42720'), ('Spencer', 2352, '38.80420', '-81.35630')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ017': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Elizabeth', 994, '39.06240', '-81.39740')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ018': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Arnoldsburg', 565, '38.78900', '-81.12790'), ('Grantsville', 565, '38.92050', '-81.09340')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ019': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Auburn', 103, '39.09530', '-80.85670'), ('Cairo', 263, '39.20810', '-81.15570'), ('Ellenboro', 373, '39.26550', '-81.05500'), ('Harrisville', 1842, '39.21070', '-81.04970'), ('North Bend State Park', 263, '39.22310', '-81.11070'), ('Pennsboro', 1199, '39.28160', '-80.97500'), ('Pullman', 169, '39.18740', '-80.94960')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ020': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('West Union', 806, '39.29630', '-80.77560')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ021': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Barrackville', 1288, '39.50150', '-80.17020'), ('Fairmont', 19097, '39.48080', '-80.14610'), ('Fairview', 435, '39.59260', '-80.24730'), ('Farmington', 387, '39.51150', '-80.25250'), ('Glover Gap', 0, '39.62000', '-80.40000'), ('Grant Town', 657, '39.55730', '-80.17870'), ('Mannington', 2124, '39.52650', '-80.34120'), ('Monongah', 939, '39.45960', '-80.21770'), ('Rivesville', 913, '39.53160', '-80.12070'), ('Worthington', 170, '39.45800', '-80.26190')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ022': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Blacksville', 175, '39.71870', '-80.21560'), ('Brookhaven', 4734, '39.61040', '-79.88440'), ('Cassville', 1586, '39.66390', '-80.05890'), ('Cheat Lake', 6396, '39.67200', '-79.85360'), ('Core', 0, '39.68000', '-80.10000'), ('Granville', 778, '39.64670', '-79.99060'), ('Morgantown', 26809, '39.63560', '-79.94980'), ('Osage', 163, '39.65830', '-80.00940'), ('Star City', 1366, '39.65940', '-79.98660'), ('Wadestown', 0, '39.68000', '-80.33000'), ('Westover', 3941, '39.63510', '-79.97640')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ023': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Albright', 247, '39.49340', '-79.63850'), ('Brandonville', 102, '39.66540', '-79.62520'), ('Bruceton Mills', 74, '39.65950', '-79.64100'), ('Kingwood', 2944, '39.47110', '-79.68310'), ('Masontown', 647, '39.55170', '-79.80040'), ('Newburg', 360, '39.38840', '-79.85430'), ('Reedsville', 517, '39.51040', '-79.80010'), ('Rowlesburg', 613, '39.34850', '-79.67740'), ('Terra Alta', 1456, '39.44420', '-79.54420'), ('Tunnelton', 336, '39.39340', '-79.74650')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ024': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Chattaroy', 1136, '37.70500', '-82.26840'), ('Delbarton', 474, '37.70490', '-82.18580'), ('Gilbert', 417, '37.61440', '-81.86740'), ('Gilbert Creek', 1582, '37.57570', '-81.89500'), ('Kermit', 209, '37.83920', '-82.40780'), ('Matewan', 498, '37.62370', '-82.16770'), ('R.d. Bailey Lake', 417, '37.60010', '-81.82060'), ('Red Jacket', 728, '37.64910', '-82.13230'), ('Williamson', 3414, '37.67370', '-82.27270')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ025': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Amherstdale-Robine', 2435, '37.77980', '-81.77390'), ('Chapmanville', 1211, '37.97340', '-82.01820'), ('Chief Logan State', 301, '37.89340', '-82.00900'), ('Holden', 1105, '37.81440', '-82.06670'), ('Logan', 1630, '37.84910', '-81.98690'), ('Mallory', 1143, '37.73480', '-81.81890'), ('Man', 770, '37.74260', '-81.87430'), ('Mitchell Heights', 301, '37.90920', '-81.98870'), ('Mount Gay', 3377, '37.85420', '-82.04270'), ('Switzer', 1138, '37.78630', '-81.97390'), ('West Logan', 418, '37.86790', '-81.99300')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ026': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Danville', 550, '38.08130', '-81.83480'), ('Madison', 2677, '38.05930', '-81.80080'), ('Sylvester', 195, '38.00810', '-81.56100'), ('Whitesville', 520, '37.97950', '-81.53600')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ027': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Clay', 593, '38.46280', '-81.08020')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ028': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Burnsville', 481, '38.85560', '-80.65600'), ('Flatwoods', 348, '38.72130', '-80.65310'), ('Gassaway', 901, '38.67060', '-80.77060'), ('Sutton', 1011, '38.66670', '-80.71070')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ029': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Cedar Creek State Park', 1544, '38.88090', '-80.86240'), ('Glenville', 1544, '38.93840', '-80.83340'), ('Sand Fork', 176, '38.91520', '-80.74880')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ030': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Jackson Mill', 4317, '39.09610', '-80.47620'), ('Jane Lew', 406, '39.10960', '-80.40900'), ('Stonewall Jackson', 4317, '39.00770', '-80.47140'), ('Weston', 4317, '39.04160', '-80.46880')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ031': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Anmoore', 685, '39.25890', '-80.29120'), ('Bridgeport', 7306, '39.29150', '-80.25690'), ('Clarksburg', 16743, '39.28040', '-80.33180'), ('Despard', 1039, '39.29220', '-80.31760'), ('Enterprise', 939, '39.41870', '-80.27770'), ('Lost Creek', 467, '39.15910', '-80.35050'), ('Lumberport', 937, '39.37300', '-80.34850'), ('Nutter Fort', 1686, '39.25950', '-80.32460'), ('Salem', 2006, '39.28290', '-80.56510'), ('Shinnston', 2295, '39.39320', '-80.29950'), ('Stonewood', 1815, '39.24890', '-80.30520'), ('West Milford', 651, '39.20570', '-80.40490')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ032': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Flemington', 287, '39.26730', '-80.12820'), ('Grafton', 5489, '39.34060', '-80.01720'), ('Tygart Lake State Park', 5489, '39.29810', '-80.03460')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ033': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Anawalt', 272, '37.33350', '-81.44150'), ('Bradshaw', 289, '37.35290', '-81.80090'), ('Davy', 373, '37.47410', '-81.65000'), ('Gary', 917, '37.36190', '-81.53810'), ('Iaeger', 358, '37.46380', '-81.81340'), ('Keystone', 453, '37.41500', '-81.44630'), ('Kimball', 411, '37.42740', '-81.50690'), ('Northfork', 519, '37.41910', '-81.42620'), ('War', 788, '37.30280', '-81.68010'), ('Welch', 2683, '37.43280', '-81.58150')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ034': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Mullens', 1769, '37.57970', '-81.38520'), ('Oceana', 1550, '37.69180', '-81.63270'), ('Pineville', 715, '37.58560', '-81.53500'), ('Twin Falls State Park', 1769, '37.63300', '-81.43730')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ035': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beaver', 1378, '37.74050', '-81.15090'), ('Beckley', 17254, '37.78750', '-81.18580'), ('Bradley', 2371, '37.86140', '-81.19630'), ('Coal City', 1905, '37.67620', '-81.21450'), ('Crab Orchard', 2761, '37.74060', '-81.23140'), ('Daniels', 1846, '37.72260', '-81.12600'), ('Glen Daniel', 322, '37.77900', '-81.33740'), ('Lester', 322, '37.73510', '-81.30090'), ('Mabscott', 1403, '37.76830', '-81.21230'), ('Macarthur', 1693, '37.75700', '-81.20950'), ('Piney View', 1046, '37.84710', '-81.13890'), ('Prosperity', 1310, '37.83530', '-81.20320'), ('Rhodell', 234, '37.60980', '-81.30500'), ('Shady Spring', 2078, '37.70300', '-81.09520'), ('Sophia', 1301, '37.70780', '-81.25600'), ('Stanaford', 1443, '37.81500', '-81.15200')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ036': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Ansted', 1576, '38.13590', '-81.10210'), ('Babcock State Park', 7, '37.99350', '-80.97210'), ('Fayetteville', 2754, '38.05210', '-81.10550'), ('Gauley Bridge', 738, '38.16830', '-81.20170'), ('Hawks Nest State Park', 1576, '38.12380', '-81.11920'), ('Meadow Bridge', 321, '37.86230', '-80.85540'), ('Montgomery', 1942, '38.17380', '-81.31850'), ('Mount Hope', 1487, '37.89530', '-81.17100'), ('Oak Hill', 7589, '37.98200', '-81.14770'), ('Pax', 174, '37.90960', '-81.26390'), ('Powellton', 1796, '38.09050', '-81.31620'), ('Smithers', 904, '38.17850', '-81.30650'), ('Thurmond', 7, '37.96380', '-81.08030')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ037': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Birch River', 901, '38.49860', '-80.75540'), ('Craigsville', 2204, '38.32050', '-80.64580'), ('Richwood', 2477, '38.22150', '-80.53720'), ('Summersville', 3294, '38.28440', '-80.84410')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ038': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Camden On Gauley', 226, '38.36890', '-80.59780'), ('Cowen', 513, '38.41020', '-80.55510'), ('Holly River State', 1009, '38.66440', '-80.33520'), ('Webster Springs', 1009, '38.47840', '-80.41040')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ039': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Buckhannon', 5725, '38.98950', '-80.22540'), ('Rock Cave', 5725, '38.83670', '-80.34290')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ040': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Audra State Park', 2870, '39.04040', '-80.06570'), ('Belington', 1788, '39.02230', '-79.93870'), ('Junior', 450, '38.97730', '-79.95050'), ('Philippi', 2870, '39.15220', '-80.04420')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ041': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Canaan Hgts', 0, '39.10000', '-79.43000'), ('Davis', 624, '39.13100', '-79.46650'), ('Hambleton', 246, '39.08120', '-79.64610'), ('Hendricks', 319, '39.07520', '-79.63030'), ('Parsons', 1463, '39.09330', '-79.67930'), ('Red Creek', 0, '39.00000', '-79.50000'), ('Thomas', 452, '39.14740', '-79.49910')], 'partOfState': 'northern', 'wfo': 'PBZ'}, +'WVZ042': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Athens', 1102, '37.42280', '-81.01610'), ('Bluefield', 11451, '37.26670', '-81.21670'), ('Bramwell', 426, '37.32670', '-81.31270'), ('Camp Creek', 1102, '37.48330', '-81.10000'), ('Ceres', 11451, '37.30000', '-81.15000'), ('Coaldale', 426, '37.35000', '-81.35000'), ('Dunns', 1102, '37.53330', '-81.05000'), ('Elgood', 142, '37.40000', '-80.93330'), ('Flat Top', 2078, '37.58330', '-81.11670'), ('Kegley', 6347, '37.40000', '-81.13330'), ('Lerona', 1102, '37.50000', '-80.98330'), ('Matoaka', 317, '37.41670', '-81.25000'), ('Mercer County Airport', 11451, '37.30000', '-81.21670'), ('Montcalm', 885, '37.35030', '-81.25180'), ('Oakvale', 142, '37.33290', '-80.96600'), ('Princeton', 6347, '37.36670', '-81.10000'), ('Sandlick', 885, '37.33330', '-81.21670'), ('Spanishburg', 6347, '37.45000', '-81.11670'), ('Wenonah', 317, '37.46670', '-81.25000'), ('Willowton', 170, '37.35000', '-80.88330')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVZ043': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Ballengee', 2880, '37.61670', '-80.75000'), ('Buck', 2880, '37.60000', '-80.83330'), ('Ellison', 2880, '37.58330', '-81.00000'), ('Elton', 321, '37.81670', '-80.81670'), ('Glenray', 1091, '37.71670', '-80.66670'), ('Hinton', 2880, '37.66670', '-80.90000'), ('Hix', 2880, '37.71670', '-80.81670'), ('Indian Mills', 499, '37.53330', '-80.81670'), ('Jumping Branch', 2880, '37.65000', '-80.98330'), ('Lawn', 321, '37.83330', '-80.75000'), ('Lick Creek', 1102, '37.48330', '-80.91670'), ('Pipestem', 1102, '37.53330', '-80.96670'), ('Sandstone', 321, '37.76670', '-80.88330'), ('Talcott', 1091, '37.65000', '-80.75000')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVZ044': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bozoo', 499, '37.46670', '-80.83330'), ('Gap Mills', 548, '37.56670', '-80.41670'), ('Glace', 2315, '37.68330', '-80.35000'), ('Hollywood', 548, '37.61670', '-80.45000'), ('Laurel Branch', 548, '37.53330', '-80.51670'), ('Lindside', 1064, '37.45000', '-80.66670'), ('Peterstown', 670, '37.39898', '-80.79500'), ('Pickaway', 548, '37.63330', '-80.51670'), ('Raines Corner', 548, '37.51670', '-80.61670'), ('Red Sulphur Spring', 499, '37.50000', '-80.76670'), ('Sweet Springs', 2315, '37.63330', '-80.25000'), ('Union', 548, '37.58330', '-80.53330'), ('Waiteville', 548, '37.48330', '-80.43330'), ('Wayside', 1091, '37.58330', '-80.70000'), ('Wolfcreek', 1091, '37.66670', '-80.63330'), ('Zenith', 548, '37.50000', '-80.53330')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVZ045': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Alderson', 1091, '37.73330', '-80.65000'), ('Alvon', 2315, '37.90000', '-80.21670'), ('Anjean', 940, '38.01670', '-80.63330'), ('Asbury', 1706, '37.81670', '-80.56670'), ('Bingham', 1545, '38.05000', '-80.80000'), ('Duo', 435, '38.06670', '-80.60000'), ('Fairlea', 1706, '37.77510', '-80.45980'), ('Falling Spring', 209, '37.99200', '-80.35730'), ('Frankford', 209, '37.91670', '-80.38330'), ('Leonard', 209, '38.08330', '-80.40000'), ('Lewisburg', 3624, '37.80000', '-80.45000'), ('Lewisburg Airport', 3624, '37.86670', '-80.40000'), ('Maxwelton', 3624, '37.86670', '-80.41670'), ('Meadow Bluff', 940, '37.90000', '-80.65000'), ('Neola', 243, '37.96670', '-80.13330'), ('Organ Cave', 1557, '37.71670', '-80.45000'), ('Quinwood', 435, '38.05780', '-80.70360'), ('Rainelle', 1545, '37.96670', '-80.78330'), ('Renick', 209, '37.98330', '-80.36670'), ('Ronceverte', 1557, '37.74890', '-80.47260'), ('Rorer', 209, '38.03330', '-80.28330'), ('Rupert', 940, '37.95000', '-80.68330'), ('Trout', 209, '38.01670', '-80.46670'), ('White Sulphur Springs', 2315, '37.79880', '-80.29730'), ('Williamsburg', 209, '37.96670', '-80.50000')], 'partOfState': 'southeast', 'wfo': 'RNK'}, +'WVZ046': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Cass Scenic Railroad', 262, '38.44970', '-79.92790'), ('Durbin', 262, '38.54710', '-79.82810'), ('Greenbank', 262, '38.42000', '-79.83180'), ('Hillsboro', 243, '38.13500', '-80.21250'), ('Marlinton', 1204, '38.22010', '-80.08710'), ('Snowshoe', 1204, '38.40910', '-79.99570')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ047': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Beverly', 651, '38.84240', '-79.87480'), ('Dailey', 651, '38.79870', '-79.89650'), ('Elkins', 7032, '38.92510', '-79.85360'), ('Harman', 126, '38.92140', '-79.52480'), ('Huttonsville', 217, '38.71470', '-79.97630'), ('Mill Creek', 662, '38.73160', '-79.97250'), ('Montrose', 156, '39.06960', '-79.81070'), ('Womelsdorf (Coalton)', 315, '38.89770', '-79.96450')], 'partOfState': '', 'wfo': 'RLX'}, +'WVZ050': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bloomery', 200, '39.38690', '-78.37330'), ('Capon Bridge', 200, '39.29780', '-78.43550'), ('Capon Springs', 246, '39.13610', '-78.48470'), ('Delray', 0, '39.19440', '-78.60440'), ('Frenchburg', 1940, '39.31530', '-78.66080'), ('Higginsville', 0, '39.41810', '-78.58000'), ('High View', 200, '39.23060', '-78.40860'), ('Lehew', 200, '39.19920', '-78.43830'), ('Levels', 0, '39.48440', '-78.55390'), ('Points', 1354, '39.44000', '-78.61060'), ('Purgitsville', 2375, '39.23920', '-78.92140'), ('Romney', 1940, '39.34610', '-78.75550'), ('Slanesville', 200, '39.37310', '-78.52310'), ('Springfield', 1354, '39.45060', '-78.69390'), ('Three Churches', 1940, '39.40080', '-78.65440'), ('Wapocomo', 1940, '39.39500', '-78.73500')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVZ051': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Berkeley Spgs', 766, '39.63000', '-78.23000'), ('Berryville', 663, '39.61560', '-78.23000'), ('Cherry Run', 240, '39.62750', '-78.03420'), ('Great Cacapon', 0, '39.62000', '-78.29280'), ('Hancock', 1926, '39.69280', '-78.17780'), ('Lineburg', 0, '39.63810', '-78.34690'), ('Magnolia', 524, '39.56170', '-78.42720'), ('Oakland', 0, '39.48110', '-78.25190'), ('Omps', 0, '39.50000', '-78.28000'), ('Paw Paw', 524, '39.53090', '-78.45610'), ('Shady Grove', 1926, '39.63750', '-78.15140'), ('Smith Crossroads', 663, '39.56780', '-78.22750'), ('Stotlers Crossroads', 0, '39.51330', '-78.22420'), ('Unger', 0, '39.43670', '-78.25420')], 'partOfState': 'panhandle', 'wfo': 'LWX'}, +'WVZ052': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Arden', 2084, '39.41560', '-78.04360'), ('Berkeley', 0, '39.50000', '-77.93000'), ('Falling Waters', 0, '39.55920', '-77.89110'), ('Glengary', 2084, '39.38390', '-78.15580'), ('Hedgesville', 240, '39.55470', '-77.99440'), ('Inwood', 2084, '39.35260', '-78.05120'), ('Johnsontown', 240, '39.57830', '-78.03970'), ('Jones Springs', 240, '39.49140', '-78.09560'), ('Martinsburg', 14972, '39.46030', '-77.96930'), ('Martinsburg Arpt', 0, '39.40000', '-77.98000'), ('Ridgeway', 0, '39.30000', '-78.07000'), ('Shanghai', 2084, '39.44140', '-78.13250'), ('Tomahawk', 240, '39.53030', '-78.04720'), ('Vanville', 0, '39.37970', '-77.98000'), ('Winebrenners Cross', 0, '39.42810', '-77.89580')], 'partOfState': 'panhandle', 'wfo': 'LWX'}, +'WVZ053': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bakerton', 1045, '39.36280', '-77.76330'), ('Bloomery', 2907, '39.25470', '-77.81940'), ('Charles Town', 2907, '39.28510', '-77.85750'), ('Harpers Ferry', 307, '39.32510', '-77.74220'), ('Kearneysville', 803, '39.38810', '-77.88580'), ('Middleway', 2084, '39.30330', '-77.98310'), ('Millville', 1045, '39.29390', '-77.78610'), ('Moler Crossroads', 803, '39.39580', '-77.76530'), ('Ranson', 2951, '39.29500', '-77.86080'), ('Rippon', 0, '39.22000', '-77.90000'), ('Shenandoah Junction', 2951, '39.35860', '-77.84330'), ('Shepherdstown', 803, '39.43110', '-77.80510'), ('Summit Point', 0, '39.24940', '-77.95890')], 'partOfState': 'panhandle', 'wfo': 'LWX'}, +'WVZ055': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Baker', 0, '39.04170', '-78.74500'), ('Bean Settlement', 2375, '39.11500', '-78.82610'), ('Brake', 2423, '38.88940', '-79.03640'), ('Fisher', 2375, '39.05140', '-79.00360'), ('Inkerman', 0, '39.13810', '-78.76890'), ('Lost City', 0, '38.92970', '-78.83440'), ('Lost River', 0, '38.95000', '-78.80000'), ('Mathias', 0, '38.87780', '-78.86640'), ('McCauley', 0, '39.04220', '-78.71220'), ('McNeill', 2375, '39.14000', '-78.91360'), ('Milam', 0, '38.81390', '-79.09940'), ('Moorefield', 2375, '39.06290', '-78.96620'), ('Perry', 0, '38.97140', '-78.67530'), ('Rio', 0, '39.13000', '-78.67000'), ('Wardensville', 246, '39.07650', '-78.59370')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVZ501': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Bayard', 299, '39.27180', '-79.36690'), ('Beechwood', 452, '39.20000', '-79.46830'), ('Bismarck', 0, '39.21780', '-79.23330'), ('Mount Pisgah', 0, '39.28970', '-79.17170'), ('Mount Storm', 0, '39.27720', '-79.24110'), ('Wilsonia', 452, '39.20610', '-79.44970')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVZ502': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Cabins', 2423, '38.99890', '-79.20560'), ('Kline Gap', 2423, '39.07220', '-79.19280'), ('Lahmansville', 0, '39.12810', '-79.08170'), ('Landes', 2423, '38.89670', '-79.19810'), ('Martin', 0, '39.22420', '-79.08920'), ('Masonville', 2423, '38.91860', '-79.08390'), ('Maysville', 0, '39.11500', '-79.16500'), ('Medley', 0, '39.17610', '-79.05810'), ('Petersburg', 2423, '38.99630', '-79.12820'), ('Scherr', 0, '39.20000', '-79.17000'), ('Seymourville', 2423, '39.05690', '-79.10920'), ('Streby', 0, '39.08030', '-79.23970'), ('Welton', 2423, '39.00170', '-79.08530')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVZ503': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Emoryville', 0, '39.35330', '-79.17060'), ('Hartmansville', 0, '39.32190', '-79.15530'), ('Kitzmiller', 0, '39.38000', '-79.18000'), ('Piedmont', 1014, '39.47930', '-79.04780'), ('Sulphur City', 261, '39.35310', '-79.13780'), ('Warnocks', 184, '39.46190', '-79.09780')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVZ504': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Antioch', 5303, '39.32360', '-79.01780'), ('Fort Ashby', 1354, '39.49820', '-78.76540'), ('Headsville', 1940, '39.39250', '-78.85610'), ('Keyser', 5303, '39.43950', '-78.98400'), ('New Creek', 5303, '39.37500', '-79.02690'), ('Patterson Creek', 1354, '39.56670', '-78.73330'), ('Reeses Mill', 1354, '39.43060', '-78.85500'), ('Ridgeley', 762, '39.64270', '-78.77030'), ('Ridgeville', 5303, '39.34830', '-78.99080'), ('Russelldale', 5303, '39.29250', '-78.93030'), ('Short Gap', 1354, '39.54360', '-78.81140'), ('Wagoner', 1354, '39.53810', '-78.67250')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVZ505': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Cherry Grove', 0, '38.64060', '-79.52310'), ('Circleville', 0, '38.67080', '-79.49140'), ('Riverton', 797, '38.74390', '-79.43610'), ('Seneca Rocks', 0, '38.83470', '-79.37640')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WVZ506': {'fullStateName': 'West Virginia', 'state': 'WV', 'cities': [('Brandywine', 797, '38.62470', '-79.24500'), ('Brushy Run', 0, '38.83750', '-79.24780'), ('Deer Run', 0, '38.72000', '-79.23080'), ('Franklin', 797, '38.64600', '-79.33310'), ('Harper', 0, '38.52000', '-79.47000'), ('Oak Flat', 797, '38.65940', '-79.21310'), ('Ruddle', 797, '38.71250', '-79.30860'), ('Sugar Grove', 797, '38.51110', '-79.32190'), ('Upper Track', 0, '38.78000', '-79.28000')], 'partOfState': 'eastern', 'wfo': 'LWX'}, +'WYZ001': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Canyon', 913, '44.73000', '-110.49000'), ('East Entrance', 0, '44.48978', '-110.00234'), ('Gardiner', 0, '45.03167', '-110.70588'), ('Grant Village', 0, '44.39438', '-110.56432'), ('Lake', 913, '44.55000', '-110.40000'), ('Madison', 913, '44.64000', '-110.86000'), ('Mammoth', 913, '44.98000', '-110.70000'), ('Northeast Entrance', 0, '44.98296', '-110.05974'), ('Old Faithful', 913, '44.46000', '-110.83000'), ('South Entrance', 0, '44.13410', '-110.66646'), ('Tower Junction', 913, '44.92000', '-110.42000')], 'partOfState': 'northwest', 'wfo': 'RIW'}, +'WYZ002': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Pahaska', 8835, '44.50000', '-109.97000'), ('Sunlight Basin', 0, '44.73856', '-109.54259'), ('Valley', 0, '44.16276', '-109.59993')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ003': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Clark', 0, '44.89941', '-109.15097'), ('Cody', 8835, '44.51950', '-109.05410'), ('Meeteetse', 351, '44.15550', '-108.87130'), ('Pitchfork', 0, '44.09303', '-109.08846'), ('Wapiti', 8835, '44.47000', '-109.43000')], 'partOfState': 'northwest', 'wfo': 'RIW'}, +'WYZ004': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Basin', 1238, '44.37960', '-108.04250'), ('Burlington', 250, '44.44740', '-108.43170'), ('Byron', 557, '44.79540', '-108.50760'), ('Cowley', 560, '44.88580', '-108.46980'), ('Deaver', 177, '44.88920', '-108.59480'), ('Emblem', 250, '44.51000', '-108.39000'), ('Frannie', 209, '44.97090', '-108.61970'), ('Garland', 0, '44.77963', '-108.66052'), ('Greybull', 1815, '44.49100', '-108.05720'), ('Hyattville', 73, '44.25000', '-107.60000'), ('Lovell', 2281, '44.83680', '-108.39150'), ('Manderson', 104, '44.26990', '-107.96340'), ('Otto', 250, '44.40000', '-108.27000'), ('Powell', 5373, '44.75000', '-108.76000'), ('Ralston', 0, '44.71603', '-108.86463'), ('Shell', 1815, '44.53000', '-107.78000')], 'partOfState': 'northwest', 'wfo': 'RIW'}, +'WYZ005': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Grass Creek', 351, '43.93000', '-108.65000'), ('Hamilton Dome', 3172, '43.77000', '-108.58000'), ('Kirby', 57, '43.80410', '-108.18020'), ('Lucerne', 525, '43.73000', '-108.17000'), ('Thermopolis', 3172, '43.64800', '-108.21390')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ006': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Big Trails', 304, '43.77000', '-107.32000'), ('Ten Sleep', 304, '44.03470', '-107.44740'), ('Winchester', 60, '43.86000', '-108.16000'), ('Worland', 5250, '44.00540', '-107.95800')], 'partOfState': 'north central', 'wfo': 'RIW'}, +'WYZ007': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ008': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ009': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ010': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Buffalo', 3900, '44.34230', '-106.71740')], 'partOfState': 'north central', 'wfo': 'RIW'}, +'WYZ011': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Barnum', 249, '43.66000', '-106.91000'), ('Kaycee', 249, '43.70980', '-106.63770'), ('Linch', 169, '43.61000', '-106.20000'), ('Mayoworth', 249, '43.83000', '-106.79000'), ('Sussex', 169, '43.70000', '-106.29000')], 'partOfState': 'north central', 'wfo': 'RIW'}, +'WYZ012': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Alta', 0, '43.75380', '-111.03690')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYZ013': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Hoback Junction', 1138, '43.32000', '-110.73000'), ('Jackson', 8647, '43.47400', '-110.76390'), ('Kelly', 0, '43.62298', '-110.62353'), ('Moose', 8647, '43.65000', '-110.72000'), ('Moran Junction', 8647, '43.84000', '-110.51000'), ('Rafter J Ranch', 1138, '43.42620', '-110.79840'), ('Teton Village', 175, '43.57000', '-110.81000'), ('Wilson', 1294, '43.50000', '-110.87000')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYZ014': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Atlantic City', 6867, '42.50000', '-108.73000'), ('South Pass City', 0, '42.46830', '-108.79983')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ015': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ016': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Burris', 0, '43.36407', '-109.27485'), ('Crowheart', 163, '43.31000', '-109.19000'), ('Dubois', 962, '43.53630', '-109.64210')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ017': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Arapahoe', 1766, '42.97050', '-108.47510'), ('Ethete', 1455, '43.02170', '-108.75700'), ('Fort Washakie', 1477, '43.00790', '-108.92590'), ('Hudson', 407, '42.90200', '-108.58160'), ('Kinnear', 165, '43.15000', '-108.68000'), ('Lost Cabin', 0, '43.28635', '-107.63260'), ('Lysite', 635, '43.25000', '-107.71000'), ('Moneta', 635, '43.16000', '-107.73000'), ('Morton', 165, '43.19000', '-108.77000'), ('Pavillion', 165, '43.24400', '-108.69080'), ('Riverton', 9310, '43.03560', '-108.41480'), ('Shoshoni', 635, '43.23790', '-108.10290'), ('St. Stephens', 9310, '42.98000', '-108.42000')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ018': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Lander', 6867, '42.83000', '-108.72860'), ('Milford', 0, '42.87633', '-108.78428')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ019': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Alcova', 20, '42.55000', '-106.72000'), ('Bairoil', 97, '42.23800', '-107.55890'), ('Ervay', 0, '42.85844', '-107.36166'), ('Jeffrey City', 106, '42.48000', '-107.84000'), ('Sweetwater Station', 0, '42.54224', '-108.18370')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ020': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Arminto', 249, '43.18000', '-107.26000'), ('Bar Nunn', 936, '42.92620', '-106.34630'), ('Casper', 49644, '42.83260', '-106.32930'), ('Edgerton', 169, '43.41450', '-106.24720'), ('Evansville', 2255, '42.87250', '-106.25870'), ('Hiland', 635, '43.12000', '-107.35000'), ('Midwest', 408, '43.41130', '-106.27750'), ('Mills', 2591, '42.84580', '-106.37590'), ('Natrona', 103, '43.03000', '-106.81000'), ('Powder River', 51, '43.03000', '-106.98000'), ('Waltman', 103, '43.06000', '-107.19000')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ021': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Almy', 0, '41.33200', '-111.00500'), ('Altamont', 0, '41.19200', '-110.79000'), ('Carter', 0, '41.43800', '-110.42800'), ('Church Buttes', 0, '41.41662', '-110.07432'), ('Evanston', 11507, '41.26800', '-110.96300'), ('Fort Bridger', 400, '41.31700', '-110.38400'), ('Leroy', 0, '41.32000', '-110.62000'), ('Lonetree', 0, '41.05400', '-110.15400'), ('Lyman', 1938, '41.32700', '-110.29300'), ('Millburne', 0, '41.25800', '-110.41300'), ('Piedmont', 0, '41.21600', '-110.62700'), ('Ragen', 0, '41.27000', '-110.68000'), ('Robertson', 0, '41.18500', '-110.41300')], 'partOfState': 'southwest', 'wfo': 'SLC'}, +'WYZ022': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ023': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Afton', 1818, '42.72630', '-110.92840'), ('Alpine', 550, '43.16080', '-111.01360'), ('Auburn', 276, '42.79000', '-111.00000'), ('Bedford', 169, '42.90000', '-110.93000'), ('Etna', 123, '43.03000', '-111.01000'), ('Fairview', 1818, '42.69000', '-110.98000'), ('Freedom', 0, '42.98161', '-111.04325'), ('Grover', 137, '42.69000', '-110.93000'), ('Smoot', 182, '42.62000', '-110.92000'), ('Thayne', 341, '42.91980', '-111.00110'), ('Turnerville', 0, '42.84822', '-110.89601')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYZ024': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Fossil Butte National Monument', 2651, '41.86000', '-110.76000')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYZ025': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Bondurant', 155, '43.20000', '-110.41000'), ('Boulder', 30, '42.72000', '-109.63000'), ('Cora', 76, '42.94000', '-109.98000'), ('Daniel', 89, '42.87000', '-110.07000'), ('Pinedale', 1412, '42.86640', '-109.86470')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYZ026': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Big Piney', 408, '42.54100', '-110.11710'), ('Big Sandy', 1412, '42.63000', '-109.47000'), ('Calpet', 0, '42.28384', '-110.25905'), ('Eden', 388, '42.05000', '-109.43000'), ('Farson', 242, '42.11000', '-109.44000'), ('La Barge', 431, '42.26120', '-110.19630'), ('Marbleton', 720, '42.55750', '-110.09940')], 'partOfState': 'central', 'wfo': 'RIW'}, +'WYZ027': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Cokeville', 506, '42.08320', '-110.95500'), ('Diamondville', 716, '41.77770', '-110.53640'), ('Elkol', 0, '41.72384', '-110.61233'), ('Kemmerer', 2651, '41.78220', '-110.55140'), ('Opal', 102, '41.77000', '-110.32080'), ('Sage Junction', 488, '41.82000', '-110.98000'), ('Viola', 0, '42.26604', '-110.37855')], 'partOfState': 'west central', 'wfo': 'RIW'}, +'WYZ028': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Burntfork', 0, '41.03000', '-110.00000'), ('Granger', 146, '41.59410', '-109.96590'), ('Green River', 11808, '41.51590', '-109.46790'), ('Little America', 56, '41.55000', '-109.86000'), ('McKinnon', 49, '41.03000', '-109.93000'), ('Reliance', 665, '41.67000', '-109.19000'), ('Rock Springs', 18708, '41.59810', '-109.22150')], 'partOfState': 'south central', 'wfo': 'RIW'}, +'WYZ029': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [], 'partOfState': 'south central', 'wfo': 'RIW'}, +'WYZ030': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Point Of Rocks', 3, '41.68000', '-108.78000'), ('Red Desert', 261, '41.65000', '-108.12000'), ('Superior', 244, '41.76060', '-108.96360'), ('Wamsutter', 261, '41.66890', '-107.97590')], 'partOfState': 'south central', 'wfo': 'RIW'}, +'WYZ054': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Downtown Gillette', 19646, '44.29103', '-105.50198'), ('Echeta', 19646, '44.45113', '-105.85498'), ('Recluse', 19646, '44.74003', '-105.70798'), ('Rockypoint', 408, '44.90003', '-105.09998'), ('Rozet', 1177, '44.28333', '-105.19998'), ('Spotted Horse', 19646, '44.71043', '-105.84508'), ('Weston', 19646, '44.63423', '-105.33338'), ('Wyodak', 1177, '44.29013', '-105.36858')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYZ055': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Pine Tree Junction', 1347, '43.61673', '-105.78328'), ('Pumpkin Buttes', 1347, '43.73593', '-105.88388'), ('Reno Junction', 1347, '43.76663', '-105.47688'), ('Savageton', 1347, '43.86453', '-105.78738'), ('Wright', 1347, '43.74923', '-105.50188')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYZ056': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Carlile', 222, '44.48333', '-104.79998'), ('Devils Tower', 408, '44.59003', '-104.71498'), ('Devils Tower Junction', 222, '44.50423', '-104.68738'), ('Hulett', 408, '44.68043', '-104.60378'), ('Keyhole Reservoir', 222, '44.36673', '-104.84998'), ('Lightning Flat', 408, '44.98333', '-105.03328'), ('Moorcroft', 807, '44.26673', '-104.94998'), ('New Haven', 408, '44.75003', '-104.84998'), ('Oshoto', 222, '44.60003', '-104.94998'), ('Pine Haven', 222, '44.34883', '-104.81008')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYZ057': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Aladdin', 1161, '44.63333', '-104.18328'), ('Alva', 408, '44.70003', '-104.44998'), ('Beulah', 2274, '44.53333', '-104.08328'), ('Buckhorn', 3065, '44.15003', '-104.09998'), ('Four Corners', 3065, '44.08333', '-104.13328'), ('Inyan Kara Mountain', 1161, '44.21383', '-104.34868'), ('Moskee', 1161, '44.28333', '-104.18328'), ('Sundance', 1161, '44.40473', '-104.37418'), ('Warren Peak', 1161, '44.48183', '-104.44208')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYZ058': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Clareton', 872, '43.70003', '-104.68328'), ('Downtown Newcastle', 3065, '43.85503', '-104.20198'), ('Morrisey', 3065, '43.53333', '-104.39998'), ('Osage', 215, '43.98003', '-104.42018'), ('Rochelle', 1347, '43.59203', '-104.95898'), ('Upton', 872, '44.10213', '-104.62808')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYZ071': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Colony', 4335, '44.86903', '-104.15698')], 'partOfState': 'northeast', 'wfo': 'UNR'}, +'WYZ098': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Burgess Junction', 0, '44.76989', '-107.51907')], 'partOfState': 'north central', 'wfo': 'BYZ'}, +'WYZ099': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Arvada', 0, '44.65381', '-106.13040'), ('Banner', 0, '44.60101', '-106.86586'), ('Beckton', 0, '44.74913', '-107.12922'), ('Big Horn', 0, '44.67537', '-106.97268'), ('Clearmont', 115, '44.64017', '-106.38063'), ('Dayton', 678, '44.87274', '-107.26265'), ('Leiter', 0, '44.71770', '-106.26852'), ('Parkman', 0, '44.95782', '-107.33337'), ('Ranchester', 701, '44.90883', '-107.16548'), ('Sheridan', 15804, '44.79724', '-106.95590'), ('Story', 0, '44.57318', '-106.88707'), ('Ucross', 0, '44.56072', '-106.54120'), ('Wyarno', 0, '44.80927', '-106.77125')], 'partOfState': 'north central', 'wfo': 'BYZ'}, +'WYZ101': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Bill', 5288, '43.21000', '-105.26000'), ('Deer Creek', 2231, '42.83000', '-105.78000'), ('Douglas', 5288, '42.75580', '-105.39270'), ('Glenrock', 2231, '42.85710', '-105.85710'), ('Lost Springs', 1, '42.76530', '-104.92380'), ('Rolling Hills Estates', 449, '42.90240', '-105.84600')], 'partOfState': 'east central', 'wfo': 'CYS'}, +'WYZ102': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Keeline', 101, '42.75000', '-104.75000'), ('Lance Creek', 51, '43.02000', '-104.64000'), ('Lusk', 1447, '42.76070', '-104.45360'), ('Manville', 101, '42.77950', '-104.61690'), ('Redbird', 906, '43.24000', '-104.27000'), ('Van Tassell', 18, '42.66360', '-104.09070')], 'partOfState': 'east central', 'wfo': 'CYS'}, +'WYZ103': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Garrett', 235, '42.11000', '-105.60000')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ104': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Muddy Gap', 97, '42.38000', '-107.44000'), ('Seminoe Dam', 423, '42.15000', '-106.90000')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ105': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Medicine Bow', 274, '41.89980', '-106.20100'), ('Shirley Basin', 274, '42.35000', '-106.21000')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ106': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Bordeaux', 3548, '41.95000', '-104.95000')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ107': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Chugwater', 244, '41.75570', '-104.82110'), ('Glendo', 229, '42.50400', '-105.02490'), ('Guernsey', 1147, '42.26630', '-104.74430'), ('Hartville', 76, '42.32740', '-104.72420'), ('Sibley Peak', 229, '42.44000', '-105.03000'), ('Wheatland', 3548, '42.05120', '-104.95890')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ108': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Fort Laramie', 243, '42.21240', '-104.51660'), ('Hawk Springs', 69, '41.79000', '-104.27000'), ('Jay Em', 243, '42.47000', '-104.36000'), ('La Grange', 332, '41.63940', '-104.16380'), ('Lingle', 510, '42.13880', '-104.34600'), ('Torrington', 5776, '42.06750', '-104.18200'), ('Veteran', 28, '41.96000', '-104.35000'), ('Yoder', 169, '41.91760', '-104.29460')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ109': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Hanna', 873, '41.86990', '-106.55870'), ('Rawlins', 8538, '41.78450', '-107.22790'), ('Sinclair', 423, '41.77750', '-107.11670')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ110': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Arlington', 192, '41.59000', '-106.21000'), ('Elk Mountain', 192, '41.68780', '-106.41290')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ111': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Baggs', 348, '41.03560', '-107.65590'), ('Dixon', 79, '41.03410', '-107.53430')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ112': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ113': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Encampment', 534, '41.20880', '-106.79460'), ('Riverside', 59, '41.21440', '-106.78070'), ('Saratoga', 1726, '41.45150', '-106.81220'), ('Skyline', 0, '41.13300', '-106.58000')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ114': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Albany', 80, '41.17000', '-106.12000'), ('Centennial', 191, '41.30000', '-106.11000'), ('Woods Landing', 0, '41.11000', '-106.02000')], 'partOfState': 'south central', 'wfo': 'CYS'}, +'WYZ115': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Bosler', 27204, '41.58000', '-105.69000'), ('Laramie', 27204, '41.31090', '-105.58300'), ('Rock River', 235, '41.73120', '-105.97270')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ116': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Buford', 0, '41.11000', '-105.30000'), ('Pumpkin Vine', 0, '41.05000', '-105.46000'), ('Vedauwoo', 0, '41.15000', '-105.40000')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ117': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Federal', 4440, '41.27000', '-105.10000'), ('Horse Creek', 4440, '41.41000', '-105.18000'), ('Whitaker', 4869, '41.41000', '-104.87000')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ118': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Cheyenne', 53011, '41.14540', '-104.79230'), ('Fox Farm-College', 3272, '41.11010', '-104.78740'), ('North Cheyenne', 4869, '41.21850', '-104.78970'), ('South Greeley High', 4201, '41.09710', '-104.80580'), ('Warren Af Base', 4440, '41.15310', '-104.86060')], 'partOfState': 'southeast', 'wfo': 'CYS'}, +'WYZ119': {'fullStateName': 'Wyoming', 'state': 'WY', 'cities': [('Albin', 120, '41.41710', '-104.09970'), ('Burns', 285, '41.19010', '-104.35870'), ('Carpenter', 0, '41.03000', '-104.34000'), ('Gun Barrel', 285, '41.44000', '-104.35000'), ('Pine Bluffs', 1153, '41.18040', '-104.06820')], 'partOfState': 'southeast', 'wfo': 'CYS'}, } diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/gfeLevelMappingFile.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/gfeLevelMappingFile.xml index b416a6a713..cb9bf4d2e9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/gfeLevelMappingFile.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/gfeLevelMappingFile.xml @@ -462,4 +462,7 @@ + + + diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/aKrtmaNDFD.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/aKrtmaNDFD.xml old mode 100644 new mode 100755 index 0d704cb1cc..fd22bf5431 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/aKrtmaNDFD.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/aKrtmaNDFD.xml @@ -172,4 +172,34 @@ FHAG2 + + vis + visibility + m + meters + Vis + 0.0 + 100000.0 + -99999.0 + 1 + SFC + + SFC + + + + viserranl + visibility uncertainty + m + meters + Viserranlind + 0.0 + 100000.0 + -99999.0 + 1 + SFC + + SFC + + diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn201.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn201.xml index cc206e1000..9ea6e8b546 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn201.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn201.xml @@ -26,8 +26,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn202.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn202.xml index 09a39908d6..3ce0469f17 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn202.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn202.xml @@ -26,8 +26,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn203.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn203.xml index 7e135fe455..0e06263460 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn203.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn203.xml @@ -26,8 +26,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn211.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn211.xml index 725b00d83e..f5db1cec71 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn211.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn211.xml @@ -46,8 +46,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn225.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn225.xml index b2ac4ef228..de23a200e7 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn225.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/avn225.xml @@ -26,8 +26,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs160.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs160.xml index e3c8214e0f..11b0a73104 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs160.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs160.xml @@ -82,8 +82,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs161.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs161.xml index e3c8214e0f..11b0a73104 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs161.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs161.xml @@ -82,8 +82,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs201.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs201.xml index a5c3648be5..1e729346c9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs201.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs201.xml @@ -46,8 +46,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs212.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs212.xml index 1234531a1a..0ee4ad35f3 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs212.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs212.xml @@ -76,8 +76,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs213.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs213.xml index 3bf7d18660..f4e8f7ee49 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs213.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs213.xml @@ -52,8 +52,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs254.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs254.xml index e3c8214e0f..11b0a73104 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs254.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/gfs254.xml @@ -82,8 +82,8 @@ vss vertical speed shear - l/s - l/second + /s + 1/second vertSpeedShear -0.10000000149 0.10000000149 diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/rtmaNDFD.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/rtmaNDFD.xml index 768a3085f2..8a832a55da 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/rtmaNDFD.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/rtmaNDFD.xml @@ -232,4 +232,109 @@ FHAG2 + + wgs + Wind Gust Speed + m/s + meter/sec + windGustSpeed + -150.0 + 150.0 + -99999.0 + 1 + FHAG 10 + + FHAG10 + + + + wgserranl + wind speed uncertainty + m/s + meter/sec + WGSerranlind + -150.0 + 150.0 + -99999.0 + 1 + FHAG 10 + + FHAG10 + + + + vis + visibility + m + meters + Vis + 0.0 + 100000.0 + -99999.0 + 1 + SFC + + SFC + + + + viserranl + visibility uncertainty + m + meters + Viserranlind + 0.0 + 100000.0 + -99999.0 + 1 + SFC + + SFC + + + + perranl + pressure uncertainty + Pa + pascal + atmPerranlind + 0.0 + 110000.0 + -99999.0 + 1 + SFC + + SFC + + + + p + pressure + Pa + pascal + atmP + 0.0 + 110000.0 + -99999.0 + 1 + SFC + + SFC + + + + gh + Geopotential height + m + meters + geoPotHt + -2000.0 + 20000.0 + -99999.0 + 1 + SFC + + SFC + + diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/spcGuideNDFD.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/spcGuideNDFD.xml index d15c9fed34..e177287f0f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/spcGuideNDFD.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/grid/parameterInfo/spcGuideNDFD.xml @@ -209,4 +209,19 @@ SFC + + srcono + Convective Outlook + 1 + category + srcono + 0.0 + 100.0 + -99999.0 + 0 + SFC + + SFC + + diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/Init.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/Init.py index bb8c4fd59e..4d5f5904a5 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/Init.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/Init.py @@ -28,7 +28,8 @@ # 04/04/13 #1787 randerso fix validTime check to work with accumulative parms # fix logging so you can actually determine why # a smartInit is not calculating a parameter -# Oct 29, 2013 2476 njensen Improved getting wx/discrete keys when retrieving data +# 10/29/2013 #2476 njensen Improved getting wx/discrete keys when retrieving data +# 10/27/2014 #3766 randerso Changed _getLatest to include error text returned from InitClient.createDB() # ## import string, sys, re, time, types, getopt, fnmatch, LogStream, DatabaseID, JUtil, AbsTime, TimeRange @@ -325,7 +326,9 @@ class Forecaster(GridUtilities): msg = "No databases for " + self._srcName LogStream.logProblem(msg) return - #sys.exit(1) + + if self.newdb() is None: + return self.__topo = self.getTopo() * .3048 srcdbkeys = self.srcdb().getKeys() @@ -402,7 +405,11 @@ class Forecaster(GridUtilities): #-------------------------------------------------------------------------- def convertKtoF(self, t): return self.KtoF(t) - + #-------------------------------------------------------------------------- + # Converts the value from meters to statute miles + #-------------------------------------------------------------------------- + def convertMtoSM(self, d): + return d * 0.00062 #-------------------------------------------------------------------------- # Calculates the saturation vapor pressure give the temperature in K #-------------------------------------------------------------------------- @@ -547,6 +554,9 @@ class Forecaster(GridUtilities): start = time.time() self.__init() + if self.newdb() is None: + return + msgDest = "Destination database:" + self.newdb().getModelIdentifier() if validTime is not None: @@ -643,10 +653,16 @@ class Forecaster(GridUtilities): break if singletonNeeded: newdb = newdb[:-13] + '00000000_0000' + newdb = self.getDb(newdb) else: - client.createDB(newdb) - - newdb = self.getDb(newdb) + sr = client.createDB(newdb) + if sr.isOkay(): + newdb = self.getDb(newdb) + else: + msg = "Unable to create database for " + str(newdb) + ":\n" + \ + str(sr.message()) + LogStream.logProblem(msg) + newdb = None return srcdb, newdb diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/RTMA.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/RTMA.py index f4a261af67..ca55afcf6a 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/RTMA.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/smartinit/RTMA.py @@ -1,19 +1,19 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## @@ -114,6 +114,15 @@ class RTMAForecaster(Forecaster): def calcWDirUnc(self, wderranl_FHAG10): return wderranl_FHAG10 +##-------------------------------------------------------------------------- +## Visibility +##-------------------------------------------------------------------------- + def calcVis(self, vis_SFC): + return self.convertMtoSM(vis_SFC) + + def calcVisUnc(self, viserranl_SFC): + return self.convertMtoSM(viserranl_SFC) + ##------------------------------------------------------------------------- ## TdAft and TdMrn - simply calculate from MaxT/MinRH and MinT/MaxRH ##------------------------------------------------------------------------- diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/Generator.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/Generator.py index f15ea5c911..01117508ec 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/Generator.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/Generator.py @@ -18,28 +18,34 @@ # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## - -"""Generate site specific text products. - -This script is run at install time to customize a set of the text products -for a given site. - -SOFTWARE HISTORY -Date Ticket# Engineer Description ------------- ---------- ----------- -------------------------- -Jun 23, 2008 1180 jelkins Initial creation -Jul 08, 2008 1222 jelkins Modified for use within Java -Jul 09, 2008 1222 jelkins Split command line loader from class -Jul 24, 2012 #944 dgilling Refactored to support separate - generation of products and utilities. -Sep 07, 2012 #1150 dgilling Ensure all necessary dirs get created. - -@author: jelkins -""" +# +# Generate site specific text products. +# +# This script is run at install time to customize a set of the text products +# for a given site. +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Jun 23, 2008 1180 jelkins Initial creation +# Jul 08, 2008 1222 jelkins Modified for use within Java +# Jul 09, 2008 1222 jelkins Split command line loader from class +# Jul 24, 2012 #944 dgilling Refactored to support separate +# generation of products and utilities. +# Sep 07, 2012 #1150 dgilling Ensure all necessary dirs get created. +# May 12, 2014 2536 bclement renamed text plugin to include uf in name +# Oct 20, 2014 #3685 randerso Changed how SiteInfo is loaded. +# Fixed logging to log to a file +# Cleaned up how protected file updates are returned +# +# @author: jelkins +# +## __version__ = "1.0" import errno import os +import JUtil from os.path import basename from os.path import join from os.path import dirname @@ -63,7 +69,6 @@ from sys import path path.append(join(LIBRARY_DIR,"../")) path.append(join(PREFERENCE_DIR,"../")) -from library.SiteInfo import SiteInfo as SITE_INFO from preferences.configureTextProducts import NWSProducts as NWS_PRODUCTS from os.path import basename @@ -72,12 +77,21 @@ from os.path import abspath from os.path import join # ---- Setup Logging ---------------------------------------------------------- -LOG_CONF = join(SCRIPT_DIR,"preferences","logging.conf") +import logging +from time import strftime, gmtime +timeStamp = strftime("%Y%m%d", gmtime()) +logFile = '/awips2/edex/logs/configureTextProducts-'+timeStamp+'.log' -import logging.config -logging.config.fileConfig(LOG_CONF) +LOG = logging.getLogger("configureTextProducts") +LOG.setLevel(logging.DEBUG) +handler = logging.FileHandler(logFile) +handler.setLevel(logging.DEBUG) +formatter = logging.Formatter("%(levelname)-5s %(asctime)s [%(process)d:%(thread)d] %(filename)s: %(message)s") +handler.setFormatter(formatter) +for h in LOG.handlers: + LOG.removeHandler(h) +LOG.addHandler(handler) -LOG = logging.getLogger("Generator") # List of protected files fileList = [] @@ -95,6 +109,17 @@ ProcessDirectories = [ }, ] +# This will "load" SiteInfo in a more complicated way +# than 'from SiteCFG import SiteInfo'. +from LockingFile import File + +pathManager = PathManagerFactory.getPathManager() +lf = pathManager.getStaticLocalizationFile(LocalizationType.COMMON_STATIC, "python/gfe/SiteCFG.py") +with File(lf.getFile(), lf.getName(), 'r') as file: + fileContents = file.read() + +exec fileContents + class Generator(): """Generates site specific text products from base template files. @@ -117,7 +142,7 @@ class Generator(): @raise LookupError: when the site ID is invalid """ - if siteId in SITE_INFO.keys(): + if siteId in SiteInfo.keys(): self.__siteId = siteId else: raise LookupError, ' unknown WFO: ' + siteId @@ -178,6 +203,8 @@ class Generator(): created += self.__create(dirInfo['src'], dirInfo['dest']) LOG.info("%d text products created" % created) LOG.debug("Configuration of Text Products Finish") + + return JUtil.pylistToJavaStringList(self.getProtectedFiles()) def delete(self): """Delete text products""" @@ -215,11 +242,11 @@ class Generator(): LOG.debug("PIL Information for all sites Begin.......") - for site in SITE_INFO.keys(): + for site in SiteInfo.keys(): LOG.info("--------------------------------------------") LOG.info("%s %s %s" % (site, - SITE_INFO[site]['fullStationID'], - SITE_INFO[site]['wfoCityState'])) + SiteInfo[site]['fullStationID'], + SiteInfo[site]['wfoCityState'])) pils = self.__createPilDictionary(site) self.__printPilDictionary(pils) found += len(pils) @@ -302,11 +329,11 @@ class Generator(): subDict = {} subDict[''] = siteid.strip() - subDict[''] = SITE_INFO[siteid]['region'].strip() - subDict[''] = SITE_INFO[siteid]['wfoCityState'].strip() - subDict[''] = SITE_INFO[siteid]['wfoCity'].strip() - subDict[''] = SITE_INFO[siteid]['fullStationID'].strip() - subDict[''] = SITE_INFO[siteid]['state'].strip() + subDict[''] = SiteInfo[siteid]['region'].strip() + subDict[''] = SiteInfo[siteid]['wfoCityState'].strip() + subDict[''] = SiteInfo[siteid]['wfoCity'].strip() + subDict[''] = SiteInfo[siteid]['fullStationID'].strip() + subDict[''] = SiteInfo[siteid]['state'].strip() if product is not None: subDict[''] = product.strip() if ProductToStandardMapping.has_key(product): @@ -341,7 +368,7 @@ class Generator(): subDict = {} subDict['Site'] = siteid.strip() - subDict['Region'] = SITE_INFO[siteid]['region'].strip() + subDict['Region'] = SiteInfo[siteid]['region'].strip() if product is not None: subDict['Product'] = product.strip() if pilInfo is not None and pilInfo.has_key("pil") and multiPilFlag: @@ -377,10 +404,10 @@ class Generator(): LOG.info("%s %s" % (p,pillist[p])) def __createPilDictionary(self, siteid): - """Update the SITE_INFO with a PIL dictionary + """Update the SiteInfo with a PIL dictionary Read the a2a data from the database, create PIL information, and add the information - to the SITE_INFO dictionary. + to the SiteInfo dictionary. @param site: the site for which PIL information is created @type site: string @@ -389,10 +416,10 @@ class Generator(): @rtype: dictionary """ - siteD = SITE_INFO[siteid] + siteD = SiteInfo[siteid] stationID4 = siteD['fullStationID'] - from com.raytheon.edex.plugin.text.dao import AfosToAwipsDao + from com.raytheon.uf.edex.plugin.text.dao import AfosToAwipsDao dao = AfosToAwipsDao() response = dao.lookupAfosId(stationID4, None, None) @@ -434,7 +461,7 @@ class Generator(): e['textdbPil'] = pil e['awipsWANPil'] = site4 + pil[3:] d.append(e) - siteD[nnn] = d #store the pil dictionary back into the SITE_INFO + siteD[nnn] = d #store the pil dictionary back into the SiteInfo return pillist @@ -571,8 +598,8 @@ class Generator(): continue # extract out the pil information from the dictionary - if SITE_INFO[siteid].has_key(pilNames[0]): - pils = SITE_INFO[siteid][pilNames[0]] + if SiteInfo[siteid].has_key(pilNames[0]): + pils = SiteInfo[siteid][pilNames[0]] else: #set pils to empty list if none defined pils = [{'awipsWANPil': 'kssscccnnn', @@ -727,4 +754,7 @@ class Generator(): LOG.debug(" Deleting Existing Baseline Templates Finished........") return productsRemoved - \ No newline at end of file + +def runFromJava(siteId, destinationDir): + generator = Generator() + return generator.create(siteId, destinationDir) \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AFD.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AFD.py index 5b962f6821..3739dc05bb 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AFD.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AFD.py @@ -17,6 +17,14 @@ # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Changed to support mixed case +# +## + #------------------------------------------------------------------------- # File Name: AFD.py # Description: This product creates a Area Forecast Discussion product. @@ -245,7 +253,7 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): ], "popStartZ_AM": 12, #hour UTC - "WWA_Nil" : "NONE.", + "WWA_Nil" : "None.", "hazardSamplingThreshold": (10, None), #(%cov, #points) } @@ -621,12 +629,13 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): productName = self.checkTestMode(argDict, self._productName) - fcst = fcst + self._pil + "\n\n" - fcst = fcst + productName + "\n" - fcst = fcst + "NATIONAL WEATHER SERVICE " - fcst = fcst + self._wfoCityState +"\n" - fcst = fcst + issuedByString - fcst = fcst + self._timeLabel + "\n\n" + s = self._pil + "\n\n" + \ + productName + "\n" + \ + "NATIONAL WEATHER SERVICE " + \ + self._wfoCityState +"\n" + \ + issuedByString + \ + self._timeLabel + "\n\n" + fcst = fcst + s.upper() return fcst #################################################################### @@ -776,7 +785,7 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): # If no hazards are found, append the null phrase if len(stateHazardList) == 0: - fcst = fcst + "NONE.\n" + fcst = fcst + self._WWA_Nil + "\n" continue # If hazards are found, then build the hazard phrases @@ -822,7 +831,7 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): idString = self.makeUGCString(ids) # hazard phrase - phrase = hazName + ' ' + timing + ' FOR ' + idString + '.' + phrase = hazName + ' ' + timing + ' for ' + idString + '.' # Indent if there is a state list associated if len(self._state_IDs) > 1: @@ -1088,6 +1097,7 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): ('SU.W', allActions, 'HighSurf'), # HIGH SURF WARNING ('SU.Y', allActions, 'HighSurf1'), # HIGH SURF ADVISORY ('RP.S', allActions, 'Rip'), # HIGH RIP CURRENT RISK + ('BH.S', allActions, 'BeachHaz'), # BEACH HAZARDS STATEMENT ('AF.W', allActions, 'Ashfall2'), # VOLCANIC ASHFALL WARNING ('AF.Y', allActions, 'Ashfall'), # VOLCANIC ASHFALL ADVISORY ('TS.W', allActions, 'Tsunami'), # TSUNAMI WARNING diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AreaFcst.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AreaFcst.py old mode 100644 new mode 100755 index 84ff351107..55b3dd5eac --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AreaFcst.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/AreaFcst.py @@ -1439,13 +1439,14 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): # These are sorted in priority order - most important first. def allowedHazards(self): allActions = ["NEW", "EXA", "EXB", "EXT", "CAN", "CON", "EXP"] - tropicalActions = ["NEW", "EXA", "EXB", "EXT", "UPG", "CAN", "CON", - "EXP"] + tropicalActions = ["NEW", "EXA","UPG", "CAN", "CON"] return [ ('HU.W', tropicalActions, 'Tropical'), # HURRICANE WARNING + ('SS.W', tropicalActions, 'Surge'), # Storm Surge WARNING ('TY.W', tropicalActions, 'Tropical'), # TYPHOON WARNING ('TR.W', tropicalActions, 'Tropical1'), # TROPICAL STORM WARNING ('HU.A', tropicalActions, 'Tropical'), # HURRICANE WATCH + ('SS.A', tropicalActions, 'Surge'), # Storm Surge WATCH ('TY.A', tropicalActions, 'Tropical'), # TYPHOON WATCH ('TR.A', tropicalActions, 'Tropical1'), # TROPICAL STORM WATCH ('HF.W', allActions, 'Marine'), # HURRICANE FORCE WIND WARNING @@ -1498,6 +1499,7 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): ('SU.W', allActions, 'HighSurf'), # HIGH SURF WARNING ('SU.Y', allActions, 'HighSurf'), # HIGH SURF ADVISORY ('RP.S', allActions, 'Rip'), # HIGH RIP CURRENT RISK + ('BH.S', allActions, 'BeachHaz'), # BEACH HAZARDS STATEMENT ('AF.W', allActions, 'Ashfall'), # VOLCANIC ASHFALL WARNING ('AF.Y', allActions, 'Ashfall'), # VOLCANIC ASHFALL ADVISORY ('LO.Y', allActions, 'Drought'), # LOW WATER ADVISORY diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/CivilEmerg_EQR_MultiPil_Local.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/CivilEmerg_EQR_MultiPil_Local.py index 60c9dc521f..d98595d7c4 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/CivilEmerg_EQR_MultiPil_Local.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/CivilEmerg_EQR_MultiPil_Local.py @@ -27,6 +27,15 @@ # # Author: davis # ---------------------------------------------------------------------------- +## +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Changed to support mixed case +# +## + #------------------------------------------------------------------------- # Example Output: # Refer to the NWS 10-518 Directive for further information. @@ -111,7 +120,6 @@ class TextProduct(CivilEmerg.TextProduct): return fcst def _postProcessProduct(self, fcst, argDict): - fcst = string.upper(fcst) fcst = self.endline(fcst, linelength=self._lineLength, breakStr=[" ", "...", "-"]) self.setProgressPercentage(100) self.progressMessage(0, 100, self._displayName + " Complete") diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/ESF_Local.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/ESF_Local.py index 4486c86227..497c550ed4 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/ESF_Local.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/ESF_Local.py @@ -27,6 +27,15 @@ # # Author: Matt Davis # ---------------------------------------------------------------------------- +## +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Changed to support mixed case +# +## + #------------------------------------------------------------------------- # Example Output: # Refer to the NWS 10-922 Directive for further information. @@ -119,10 +128,10 @@ class TextProduct(GenericReport.TextProduct): issuedByString = self.getIssuedByString() productName = self.checkTestMode(argDict, self._productName) - fcst = fcst + productName + "\n" + \ + s = productName + "\n" + \ "NATIONAL WEATHER SERVICE " + self._wfoCityState + \ "\n" + issuedByString + self._timeLabel + "\n\n" - fcst = string.upper(fcst) + fcst = fcst + s.upper() return fcst def _makeProduct(self, fcst, editArea, areaLabel, argDict): @@ -132,8 +141,6 @@ class TextProduct(GenericReport.TextProduct): return fcst def _postProcessProduct(self, fcst, argDict): - fcst = string.upper(fcst) - # # Clean up multiple line feeds # diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericHazards.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericHazards.py index 22bbc3898c..e09bffa4b8 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericHazards.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericHazards.py @@ -1,19 +1,19 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## @@ -505,7 +505,8 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis, hazNameA = self.hazardName(eachHazard['hdln'], argDict, True) hazName = self.hazardName(eachHazard['hdln'], argDict, False) - if hazName == "WINTER WEATHER ADVISORY" or hazName == "WINTER STORM WARNING": +# if hazName == "WINTER WEATHER ADVISORY" or hazName == "WINTER STORM WARNING": + if hazName in ["WINTER WEATHER ADVISORY", "WINTER STORM WARNING", "BEACH HAZARDS STATEMENT"]: forPhrase = " FOR |* ENTER HAZARD TYPE *|" else: forPhrase ="" @@ -735,8 +736,12 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis, segmentTextSplit[1] = PRECAUTION + segmentTextSplit2[1] segmentText = string.join(segmentTextSplit,"") - if removeBulletList != []: + if keepBulletList == []: + segmentText = "\n\n|* WRAP-UP TEXT GOES HERE *|.\n" + elif removeBulletList != []: segmentText = "|*\n" + segmentText + "*|" + else: + segmentText = segmentText # # If segment passes the above checks, add the text diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericReport.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericReport.py index 8874b5a2c4..7d3f928c8d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericReport.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/GenericReport.py @@ -105,6 +105,13 @@ # Example Output: # Refer to the NWS C11 and 10-503 Directives for Public Weather Services. #------------------------------------------------------------------------- +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Removed upper case conversions +# +## import TextRules import SampleAnalysis @@ -200,7 +207,6 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): fcst = self._postProcessArea(fcst, editArea, areaLabel, argDict) fraction = fractionOne fcst = self._postProcessProduct(fcst, argDict) - fcst = string.upper(fcst) return fcst def _getVariables(self, argDict): @@ -252,13 +258,13 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): issuedByString = self.getIssuedByString() productName = self.checkTestMode(argDict, productName) - fcst = fcst + self._wmoID + " " + self._fullStationID + " " + \ + s = self._wmoID + " " + self._fullStationID + " " + \ self._ddhhmmTime + "\n" + self._pil + "\n\n" +\ productName + "\n" +\ "NATIONAL WEATHER SERVICE " + self._wfoCityState + \ "\n" + issuedByString + self._timeLabel + "\n\n" - fcst = string.upper(fcst) + fcst = fcst + s.upper() return fcst def _preProcessArea(self, fcst, editArea, areaLabel, argDict): @@ -278,7 +284,6 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): return fcst + "\n\n$$\n" def _postProcessProduct(self, fcst, argDict): - fcst = string.upper(fcst) self.setProgressPercentage(100) self.progressMessage(0, 100, self._displayName + " Complete") return fcst diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_AQA_MultiPil.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_AQA_MultiPil.py index b135763d2f..91435a7634 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_AQA_MultiPil.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_AQA_MultiPil.py @@ -20,8 +20,13 @@ ######################################################################## # Hazard_AQA.py # +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Changed to support mixed case +# ## -########################################################################## + import GenericHazards import string, time, re, os, types, copy import ProcessVariableList @@ -157,10 +162,10 @@ class TextProduct(GenericHazards.TextProduct): # Placeholder for Agency Names to be filled in in _postProcessProduct #fcst = fcst + "@AGENCYNAMES" + "\n" - fcst = fcst + "RELAYED BY NATIONAL WEATHER SERVICE " + self._wfoCityState + "\n" +\ + s = "RELAYED BY NATIONAL WEATHER SERVICE " + self._wfoCityState + "\n" +\ issuedByString + self._timeLabel + "\n\n" - fcst = string.upper(fcst) + fcst = fcst + s.upper() return fcst def headlinesTiming(self, tree, node, key, timeRange, areaLabel, issuanceTime): @@ -301,8 +306,6 @@ class TextProduct(GenericHazards.TextProduct): fixMultiLF = re.compile(r'(\n\n)\n*', re.DOTALL) fcst = fixMultiLF.sub(r'\1', fcst) -## # Keep body in lower case, if desired -## fcst = string.upper(fcst) self.setProgressPercentage(100) self.progressMessage(0, 100, self._displayName + " Complete") return fcst diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_CFW_MultiPil.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_CFW_MultiPil.py index d1cc56093f..9064f39f98 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_CFW_MultiPil.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_CFW_MultiPil.py @@ -1,19 +1,19 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## @@ -100,6 +100,7 @@ class TextProduct(GenericHazards.TextProduct): ('LS.S', allActions, 'CoastalFloodStatement'), # LAKESHORE FLOOD STATEMENT ('SU.W', allActions, 'HighSurf'), # HIGH SURF WARNING ('SU.Y', allActions, 'HighSurf'), # HIGH SURF ADVISORY + ('BH.S', allActions, 'BeachHaz'), # Beach Hazards Statement ('RP.S', allActions, 'RipCurrent'), # HIGH RIP CURRENT RISK ] @@ -107,6 +108,7 @@ class TextProduct(GenericHazards.TextProduct): return { "CF" : ("COASTAL FLOODING,TIMING,IMPACTS"), ### coastal flood warning, advisory, watch "LS" : ("LAKE SHORE FLOODING,TIMING,IMPACTS"), ### lake shore flood warning, advisory, watch + "BH" : ("HAZARDS,TIMING,LOCATION,POTENTIAL IMPACTS"), ### hazardous beach conditions "SU" : ("WAVES AND SURF,TIMING,IMPACTS"), ### high surf warning, advisory "RP" : ("TIMING,IMPACTS"), ### high rip current risk } @@ -116,11 +118,14 @@ class TextProduct(GenericHazards.TextProduct): "COASTAL FLOODING", "LAKE SHORE FLOODING", "WAVES AND SURF", + "HAZARDS", "TIMING", + "LOCATION", + "POTENTIAL IMPACTS", "IMPACTS", ] - + # # Overridden to allow for attribution statement # diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_WCN_MultiPil.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_WCN_MultiPil.py index e82e62adf8..36cb80104f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_WCN_MultiPil.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/Hazard_WCN_MultiPil.py @@ -22,6 +22,15 @@ # ## ########################################################################## +## +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Changed to support mixed case +# +## + import GenericHazards import string, time, re, os, types, copy, sets import ModuleAccessor, LogStream @@ -108,12 +117,12 @@ class TextProduct(GenericHazards.TextProduct): productName = self.checkTestMode(argDict, self._productName + watchPhrase) - fcst = fcst + self._wmoID + " " + self._fullStationID + " " + \ + s = self._wmoID + " " + self._fullStationID + " " + \ self._ddhhmmTime + "\n" + self._pil + "\n\n" +\ productName + "\n" +\ "NATIONAL WEATHER SERVICE " + self._wfoCityState + \ "\n" + issuedByString + self._timeLabel + "\n" + self._easPhrase + "\n" - fcst = string.upper(fcst) + fcst = fcst + s.upper() return fcst diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/PNS_Local.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/PNS_Local.py index 1dde3c2085..293a58cf0f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/PNS_Local.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/PNS_Local.py @@ -27,6 +27,14 @@ # # Author: Matt Davis # ---------------------------------------------------------------------------- +## +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Changed to support mixed case +# +## import GenericReport @@ -67,7 +75,7 @@ class TextProduct(GenericReport.TextProduct): "language": "english", "lineLength": 66, #Maximum line length "includeCities" : 0, # Cities included in area header - "cityDescriptor" : "INCLUDING THE CITIES OF", + "cityDescriptor" : "Including the cities of", "includeZoneNames" : 0, # Zone names will be included in the area header "includeIssueTime" : 0, # This should be set to zero "singleComboOnly" : 1, # Used for non-segmented products @@ -108,20 +116,18 @@ class TextProduct(GenericReport.TextProduct): issuedByString = self.getIssuedByString() productName = self.checkTestMode(argDict, self._productName) - fcst = fcst + productName + "\n" + \ + s = productName + "\n" + \ "NATIONAL WEATHER SERVICE " + self._wfoCityState + \ "\n" + issuedByString + self._timeLabel + "\n\n" - fcst = string.upper(fcst) + fcst = fcst + s.upper() return fcst def _makeProduct(self, fcst, editArea, areaLabel, argDict): fcst = fcst + "...PUBLIC INFORMATION STATEMENT...\n\n" - fcst = fcst + "|* INFORMATION GOES HERE *|\n\n" + fcst = fcst + "|* Information goes here *|\n\n" return fcst def _postProcessProduct(self, fcst, argDict): - fcst = string.upper(fcst) - # # Clean up multiple line feeds # diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/RFD_Local.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/RFD_Local.py index 4c66f06c79..55552b2fe0 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/RFD_Local.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/RFD_Local.py @@ -27,6 +27,15 @@ # # Author: Matt Davis # ---------------------------------------------------------------------------- +## +# +# SOFTWARE HISTORY +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# Oct 20, 2014 #3685 randerso Changed to support mixed case +# +## + #------------------------------------------------------------------------- # Example Output: # Refer to the NWS 10-518 Directive for further information. @@ -111,10 +120,10 @@ class TextProduct(GenericReport.TextProduct): issuedByString = self.getIssuedByString() productName = self.checkTestMode(argDict, self._productName) - fcst = fcst + productName + "\n" + \ + s = productName + "\n" + \ "NATIONAL WEATHER SERVICE " + self._wfoCityState + \ "\n" + issuedByString + self._timeLabel + "\n\n" - fcst = string.upper(fcst) + fcst = fcst + s.upper() return fcst def _makeProduct(self, fcst, editArea, areaLabel, argDict): @@ -123,8 +132,6 @@ class TextProduct(GenericReport.TextProduct): return fcst def _postProcessProduct(self, fcst, argDict): - fcst = string.upper(fcst) - # # Clean up multiple line feeds # diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/SRF.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/SRF.py index 0122c88acc..68b55a8685 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/SRF.py +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/edex_static/base/textproducts/templates/product/SRF.py @@ -1946,5 +1946,6 @@ class TextProduct(TextRules.TextRules, SampleAnalysis.SampleAnalysis): ('SU.W', allActions, 'Marine'), # HIGH SURF WARNING ('SU.Y', allActions, 'Marine'), # HIGH SURF ADVISORY ('RP.S', allActions, 'Rip'), # High Rip Threat + ('BH.S', allActions, 'BeachHaz'), # Beach Hazards Statement ] diff --git a/edexOsgi/com.raytheon.edex.plugin.goessounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.goessounding/META-INF/MANIFEST.MF index 5bee1409f1..4af4cc9457 100644 --- a/edexOsgi/com.raytheon.edex.plugin.goessounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.goessounding/META-INF/MANIFEST.MF @@ -2,8 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Goessounding Plug-in Bundle-SymbolicName: com.raytheon.edex.plugin.goessounding -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", @@ -13,11 +12,15 @@ Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.common.localization;bundle-version="1.11.16" Export-Package: com.raytheon.edex.plugin.goessounding, com.raytheon.edex.plugin.goessounding.decoder -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.dataplugin.goessounding, com.raytheon.uf.common.geospatial.spi, com.raytheon.uf.common.pointdata, com.raytheon.uf.common.pointdata.spatial, com.raytheon.uf.common.status, + com.raytheon.uf.common.wmo, + com.raytheon.uf.edex.bufrtools, + com.raytheon.uf.edex.bufrtools.descriptors, + com.raytheon.uf.edex.bufrtools.packets, com.raytheon.uf.edex.pointdata, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.edex.plugin.goessounding/res/spring/goessounding-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.goessounding/res/spring/goessounding-ingest.xml index 5f7aa56c3c..7ff0af9962 100644 --- a/edexOsgi/com.raytheon.edex.plugin.goessounding/res/spring/goessounding-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.goessounding/res/spring/goessounding-ingest.xml @@ -15,16 +15,9 @@ - - - - + errorHandlerRef="errorHandler"> - + @@ -63,14 +55,15 @@ - + - + + diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/res/spring/grib-distribution.xml b/edexOsgi/com.raytheon.edex.plugin.grib/res/spring/grib-distribution.xml index cdd021b194..59b26f0f93 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/res/spring/grib-distribution.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/res/spring/grib-distribution.xml @@ -5,5 +5,6 @@ factory-method="register"> + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/resources/com.raytheon.edex.plugin.grib.properties b/edexOsgi/com.raytheon.edex.plugin.grib/resources/com.raytheon.edex.plugin.grib.properties index 6c28a91853..97a20fd894 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/resources/com.raytheon.edex.plugin.grib.properties +++ b/edexOsgi/com.raytheon.edex.plugin.grib/resources/com.raytheon.edex.plugin.grib.properties @@ -1,9 +1,9 @@ # the number of grib decode threads. -grib-decode.count.threads=8 +grib-decode.count.threads=4 # the number of grib split threads. -grib-split.count.threads=4 +grib-split.count.threads=2 # Maximum number of grid points to decode at one time for all threads. Large # grib files may cause the decoder to reach this limit and then some threads # will have to wait. This can be used to control the amount of memory used by # the decoder. -grib-decode.count.gridpoints=6000000 +grib-decode.count.gridpoints=6000000 \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/Grib1Decoder.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/Grib1Decoder.java index 07aa70ed40..04b4c67702 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/Grib1Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/Grib1Decoder.java @@ -54,7 +54,6 @@ import com.raytheon.edex.plugin.grib.util.GridModel; import com.raytheon.edex.util.grib.Grib1TableMap; import com.raytheon.edex.util.grib.GribParamTranslator; import com.raytheon.edex.util.grib.GribTableLookup; -import com.raytheon.uf.common.comm.CommunicationException; import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.level.LevelFactory; @@ -98,6 +97,8 @@ import com.raytheon.uf.common.util.mapping.MultipleMappingException; * Oct 07, 2013 2402 bsteffen Decode GribDecodeMessage instead of * files. * Oct 15, 2013 2473 bsteffen Removed deprecated and unused code. + * Jul 30, 2014 3469 bsteffen Improve logging of invalid files. + * Sep 09, 2014 3356 njensen Remove CommunicationException * * * @@ -164,11 +165,14 @@ public class Grib1Decoder extends AbstractDecoder { } return gribRecords.toArray(new GridRecord[] {}); } catch (IOException e) { - throw new GribException("Failed to decode grib1 file: [" + fileName - + "]", e); + throw new GribException("IO failure decoding grib1 file: [" + + fileName + "]", e); } catch (NoValidGribException e) { throw new GribException( "Invalid grib1 message: [" + fileName + "]", e); + } catch (Exception e) { + throw new GribException("Unexpected error in grib1 file: [" + + fileName + "]", e); } finally { if (raf != null) { try { @@ -424,6 +428,9 @@ public class Grib1Decoder extends AbstractDecoder { } } + if (data == null) { + throw new GribException("No valid data found in grib record."); + } if (gdsVars != null) { correctForScanMode(data, gdsVars.getNx(), gdsVars.getNy(), bmsPresent, scanMode); @@ -899,7 +906,7 @@ public class Grib1Decoder extends AbstractDecoder { private String createModelName(int centerId, int subcenterId, int process, GridCoverage grid) { return GribModelLookup.getInstance().getModelName(centerId, - subcenterId, grid, process); + subcenterId, grid, process, null); } /** @@ -915,7 +922,7 @@ public class Grib1Decoder extends AbstractDecoder { private void checkForecastFlag(DataTime time, int centerId, int subcenterId, int process, GridCoverage grid) { GridModel gridModel = GribModelLookup.getInstance().getModel(centerId, - subcenterId, grid, process); + subcenterId, grid, process, null); if ((gridModel != null) && gridModel.getAnalysisOnly()) { time.getUtilityFlags().remove(FLAG.FCST_USED); } @@ -1012,8 +1019,7 @@ public class Grib1Decoder extends AbstractDecoder { * The value of the level * @return The converted level type information */ - private float[] convertGrib1LevelInfo(int ltype1, float lval1, - float lval2) { + private float[] convertGrib1LevelInfo(int ltype1, float lval1, float lval2) { float level1Type = ltype1; float level1Scale = 0; float level1Value = 0; @@ -1252,8 +1258,6 @@ public class Grib1Decoder extends AbstractDecoder { try { return LevelMapper.getInstance().lookupLevel(levelName, "grib", levelOneValue, levelTwoValue, levelUnit); - } catch (CommunicationException e) { - throw new GribException("Error requesting levels", e); } catch (MultipleLevelMappingException e) { statusHandler.handle(Priority.WARN, e.getLocalizedMessage(), e); return e.getArbitraryLevelMapping(); diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/EnsembleGridAssembler.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/EnsembleGridAssembler.java index a8fbb036c2..07ea4426cf 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/EnsembleGridAssembler.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/EnsembleGridAssembler.java @@ -58,8 +58,8 @@ import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; import com.raytheon.uf.edex.database.cluster.ClusterTask; +import com.raytheon.uf.edex.database.plugin.DataURIDatabaseUtil; import com.raytheon.uf.edex.database.plugin.PluginFactory; -import com.raytheon.uf.edex.database.query.DatabaseQuery; import com.raytheon.uf.edex.plugin.grid.dao.GridDao; /** @@ -81,6 +81,8 @@ import com.raytheon.uf.edex.plugin.grid.dao.GridDao; * Oct 15, 2013 2473 bsteffen Remove deprecated method calls. * Nov 19, 2013 2478 rjpeter Make update process update database also. * Dec 06, 2013 2170 rjpeter Update to pass PluginDataObject[] to notification. + * Apr 21, 2014 2060 njensen Remove dependency on grid dataURI column + * Jul 21, 2014 3373 bclement JAXB manager api changes * * * @author bphillip @@ -123,7 +125,7 @@ public class EnsembleGridAssembler implements IDecoderPostProcessor { SingleTypeJAXBManager jaxbManager; try { - jaxbManager = new SingleTypeJAXBManager( + jaxbManager = new SingleTypeJAXBManager(true, CompositeModel.class); } catch (JAXBException e) { statusHandler.handle(Priority.PROBLEM, @@ -214,15 +216,11 @@ public class EnsembleGridAssembler implements IDecoderPostProcessor { */ private void processGrid(GridRecord record, CompositeModel thinned) throws Exception { - GridDao dao = (GridDao) PluginFactory.getInstance().getPluginDao( GridConstants.GRID); GridRecord assembledRecord = createAssembledRecord(record, thinned); - DatabaseQuery query = new DatabaseQuery(GridRecord.class); - query.addReturnedField("dataURI"); - query.addQueryParam("dataURI", assembledRecord.getDataURI()); - List result = dao.queryByCriteria(query); - if (result.isEmpty()) { + boolean exists = DataURIDatabaseUtil.existingDataURI(assembledRecord); + if (!exists) { persistNewRecord(record, assembledRecord, thinned, dao); } else { updateExistingRecord(record, assembledRecord, thinned, dao); diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/FFGGribPostProcessor.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/FFGGribPostProcessor.java index 39147c4e42..83cb17b975 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/FFGGribPostProcessor.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/FFGGribPostProcessor.java @@ -25,7 +25,6 @@ import java.util.List; import com.raytheon.edex.plugin.grib.exception.GribException; import com.raytheon.uf.common.dataplugin.grid.GridConstants; import com.raytheon.uf.common.dataplugin.grid.GridRecord; -import com.raytheon.uf.common.dataquery.db.QueryParam.QueryOperand; import com.raytheon.uf.edex.database.plugin.PluginFactory; import com.raytheon.uf.edex.database.query.DatabaseQuery; import com.raytheon.uf.edex.plugin.grid.dao.GridDao; @@ -43,6 +42,7 @@ import com.raytheon.uf.edex.plugin.grid.dao.GridDao; * Aug 31, 2010 5875 bphillip Initial Creation * Mar 26, 2013 1821 bsteffen Optimize FFG version query. * Oct 15, 2013 2473 bsteffen Remove deprecated method calls. + * Apr 25, 2014 2060 njensen Remove dependency on grid dataURI column * * * @@ -57,13 +57,14 @@ public class FFGGribPostProcessor implements IDecoderPostProcessor { try { GridDao gribDao = (GridDao) PluginFactory.getInstance() .getPluginDao(GridConstants.GRID); - record.setSecondaryId("%"); - record.setDataURI(null); + /* + * All we want to do is check for pre-existing records, and if some + * are found, increment the version number in the secondaryId so + * it's not identified as a duplicate + */ DatabaseQuery query = new DatabaseQuery(GridRecord.class); query.addReturnedField(GridConstants.SECONDARY_ID); - // The dataURI constraint does the final selection but the other - // constraints help the db optimize efficiently. query.addQueryParam(GridConstants.DATASET_ID, record.getDatasetId()); query.addQueryParam(GridConstants.PARAMETER_ABBREVIATION, record .getParameter().getAbbreviation()); @@ -71,9 +72,21 @@ public class FFGGribPostProcessor implements IDecoderPostProcessor { .getId()); query.addQueryParam(GridConstants.LOCATION_ID, record.getLocation() .getId()); - query.addQueryParam("dataURI", record.getDataURI(), - QueryOperand.LIKE); + query.addQueryParam("dataTime.refTime", record.getDataTime() + .getRefTime()); + query.addQueryParam("dataTime.fcstTime", record.getDataTime() + .getFcstTime()); + query.addQueryParam(GridConstants.ENSEMBLE_ID, + record.getEnsembleId()); List result = gribDao.queryByCriteria(query); + + /* + * TODO this does not appear to be cluster safe, but we probably + * dodge it due to the low frequency of this data arriving for the + * same parameters, time, etc + */ + + // find the highest version number int maxVersion = -1; for (Object row : result) { String secondaryId = (String) row; @@ -90,6 +103,7 @@ public class FFGGribPostProcessor implements IDecoderPostProcessor { } record.setSecondaryId("Version" + (maxVersion + 1)); record.getInfo().setId(null); + // clear out dataURI in case it was cached record.setDataURI(null); } catch (Exception e) { throw new GribException("Error decoding FFG grid", e); diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LapsPostProcessor.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LapsPostProcessor.java index e75f97c65d..1566aa7e66 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LapsPostProcessor.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LapsPostProcessor.java @@ -21,7 +21,6 @@ package com.raytheon.edex.plugin.grib.decoderpostprocessors; import com.raytheon.edex.plugin.grib.exception.GribException; -import com.raytheon.uf.common.comm.CommunicationException; import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.level.LevelFactory; @@ -38,6 +37,7 @@ import com.raytheon.uf.common.parameter.Parameter; * ------------- -------- ----------- -------------------------- * Apr 07, 2011 6619 bphillip Initial creation * Oct 15, 2013 2473 bsteffen Remove deprecated method calls. + * Sep 09, 2014 3356 njensen Remove CommunicationException * * * @@ -60,13 +60,9 @@ public class LapsPostProcessor implements IDecoderPostProcessor { String levelName = record.getLevel().getMasterLevel().getName(); boolean modelInfoModified = false; if (levelName.equals(FHAG)) { - try { - Level sfcLevel = LevelFactory.getInstance().getLevel(SFC, 0); - record.setLevel(sfcLevel); - modelInfoModified = true; - } catch (CommunicationException e) { - throw new GribException("Error modifying LAPS records.", e); - } + Level sfcLevel = LevelFactory.getInstance().getLevel(SFC, 0); + record.setLevel(sfcLevel); + modelInfoModified = true; } if (record.getParameter().getAbbreviation().equals(PMSL)) { diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LiftedIndexPostProcessor.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LiftedIndexPostProcessor.java index 9095d96197..ffb4621576 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LiftedIndexPostProcessor.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/decoderpostprocessors/LiftedIndexPostProcessor.java @@ -1,61 +1,52 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ package com.raytheon.edex.plugin.grib.decoderpostprocessors; -import java.util.Arrays; -import java.util.List; - -import javax.measure.converter.UnitConverter; -import javax.measure.unit.SI; - import com.raytheon.edex.plugin.grib.exception.GribException; -import com.raytheon.uf.common.dataplugin.grid.GridRecord; + /** * - * Adjusts data values on Lifted Index to match the units. Lifted index should - * always be centered around 0 however some sources go through a Celsius to - * Kelvin conversion which results in data centered around 273.15, this attempts - * to detect and revert this conversion. + * @deprecated Only exists for backwards compatibility in localization files, + * use TemperatureCorrectionPostProcessor directly in the future. * - *
+ *             
  * 
  * SOFTWARE HISTORY
  * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Nov 18, 2010            bsteffen     Initial creation
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Nov 18, 2010           bsteffen    Initial creation
+ * Mar 28, 2010  2874     bsteffen    Deprecated
  * 
  * 
* * @author bsteffen * @version 1.0 */ -public class LiftedIndexPostProcessor implements IDecoderPostProcessor { +@Deprecated +public class LiftedIndexPostProcessor extends + TemperatureCorrectionPostProcessor { - private static final List LIFTED_INDEX_PARAMETERS = Arrays.asList( - "SLI", "BLI", "PLI"); - - private static final String KELVIN_UNIT_STRING = "K"; - - private static final float MAX_VALID = 150; - - private static final UnitConverter k2c = SI.KELVIN - .getConverterTo(SI.CELSIUS); - - @Override - public GridRecord[] process(GridRecord record) throws GribException { - // Change units of Lifted Index to match the data - if (LIFTED_INDEX_PARAMETERS.contains(record.getParameter() - .getAbbreviation()) - && KELVIN_UNIT_STRING.equals(record.getParameter() - .getUnitString())) { - float[] data = (float[]) record.getMessageData(); - for (int i = 0; i < data.length; i++) { - if (data[i] > MAX_VALID) { - data[i] = (float) k2c.convert(data[i]); - } - } - } - return new GridRecord[] { record }; + public LiftedIndexPostProcessor() throws GribException { + super(); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/spatial/GribSpatialCache.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/spatial/GribSpatialCache.java index bdfde24c06..d33263c392 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/spatial/GribSpatialCache.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/spatial/GribSpatialCache.java @@ -27,6 +27,8 @@ import java.util.HashSet; import java.util.Map; import java.util.Set; +import javax.xml.bind.JAXBException; + import org.opengis.metadata.spatial.PixelOrientation; import com.raytheon.edex.plugin.grib.exception.GribException; @@ -74,6 +76,7 @@ import com.vividsolutions.jts.geom.Coordinate; * Jan 04, 2013 15653 M.Porricelli Shift subgrid domain westward like * AWIPSI * Oct 15, 2013 2473 bsteffen Rewrite deprecated code. + * Jul 21, 2014 3373 bclement JAXB managers only live during initializeGrids() * *
* @@ -86,15 +89,6 @@ public class GribSpatialCache { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(GribSpatialCache.class); - private static final SingleTypeJAXBManager GRID_COVERAGE_JAXB = SingleTypeJAXBManager - .createWithoutException(GridCoverage.class); - - private static final SingleTypeJAXBManager SUB_GRID_DEF_JAXB = SingleTypeJAXBManager - .createWithoutException(SubGridDef.class); - - private static final SingleTypeJAXBManager SUB_GRID_CENTER_JAXB = SingleTypeJAXBManager - .createWithoutException(DefaultSubGridCenterPoint.class); - /** The singleton instance */ private static GribSpatialCache instance; @@ -429,17 +423,20 @@ public class GribSpatialCache { * Loads and validates subGridDef pointed to by filePath. If definition * empty/invalid returns null. * + * @param subGridDefJaxb * @param filePath + * @param defaultCenter * @return */ - private SubGridDef loadSubGridDef(final String filePath, - final Coordinate defaultCenter) { + private SubGridDef loadSubGridDef( + final SingleTypeJAXBManager subGridDefJaxb, + final String filePath, final Coordinate defaultCenter) { SubGridDef rval = null; File f = new File(filePath); if (f.length() > 0) { try { - rval = SUB_GRID_DEF_JAXB.unmarshalFromXmlFile(f); + rval = subGridDefJaxb.unmarshalFromXmlFile(f); if ((rval.getReferenceModel() == null && rval .getReferenceGrid() == null) || (rval.getModelNames() == null) @@ -498,14 +495,28 @@ public class GribSpatialCache { Map> gridNameMap = new HashMap>(); Map spatialNameMap = new HashMap(); Map subGridDefMap = new HashMap(); + + SingleTypeJAXBManager gridCovJaxb; + SingleTypeJAXBManager subGridDefJaxb; + try { + subGridDefJaxb = new SingleTypeJAXBManager(true, + SubGridDef.class); + gridCovJaxb = new SingleTypeJAXBManager(true, + GridCoverage.class); + } catch (JAXBException e) { + statusHandler.error("Unable to create grid JAXB managers", e); + return; + } + do { ct = ClusterLockUtils.lock("grib", "spatialCache", 120000, true); } while (!LockState.SUCCESSFUL.equals(ct.getLockState())); + try { for (FileData fd : fdl.getCoverageFileList()) { try { - GridCoverage grid = GRID_COVERAGE_JAXB + GridCoverage grid = gridCovJaxb .unmarshalFromXmlFile(fd.getFilePath()); String name = grid.getName(); grid = insert(grid); @@ -535,8 +546,8 @@ public class GribSpatialCache { } for (FileData fd : fdl.getSubGridFileList()) { try { - SubGridDef subGridDef = loadSubGridDef(fd.getFilePath(), - defaultCenterPoint); + SubGridDef subGridDef = loadSubGridDef(subGridDefJaxb, + fd.getFilePath(), defaultCenterPoint); if (subGridDef == null) { continue; } @@ -599,12 +610,14 @@ public class GribSpatialCache { IPathManager pm = PathManagerFactory.getPathManager(); LocalizationFile defaultSubGridLocationFile = pm .getStaticLocalizationFile("/grib/defaultSubGridCenterPoint.xml"); + SingleTypeJAXBManager subGridCenterJaxb = new SingleTypeJAXBManager( + DefaultSubGridCenterPoint.class); if ((defaultSubGridLocationFile != null) && defaultSubGridLocationFile.exists()) { try { DefaultSubGridCenterPoint defaultSubGridLocation = defaultSubGridLocationFile .jaxbUnmarshal(DefaultSubGridCenterPoint.class, - SUB_GRID_CENTER_JAXB); + subGridCenterJaxb); if ((defaultSubGridLocation != null) && (defaultSubGridLocation.getCenterLatitude() != null) && (defaultSubGridLocation.getCenterLongitude() != null)) { diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/Grib1ParameterLookup.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/Grib1ParameterLookup.java index 7ba53022f6..690741690a 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/Grib1ParameterLookup.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/Grib1ParameterLookup.java @@ -46,6 +46,7 @@ import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; * ------------- -------- ----------- -------------------------- * Mar 09, 2010 4758 bphillip Initial Creation * Oct 15, 2013 2473 bsteffen Remove deprecated method calls. + * Jul 21, 2014 3373 bclement JAXB manager API changes * * * @@ -127,7 +128,7 @@ public class Grib1ParameterLookup { try { JAXBManager jaxbManager = new SingleTypeJAXBManager( - Grib1ParameterSet.class); + true, Grib1ParameterSet.class); if (baseParameterFile.exists()) { Grib1ParameterSet parameterSet = baseParameterFile .jaxbUnmarshal(Grib1ParameterSet.class, jaxbManager); diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GribModelLookup.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GribModelLookup.java index 7736ebe232..6a20481976 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GribModelLookup.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GribModelLookup.java @@ -55,6 +55,10 @@ import com.raytheon.uf.common.util.mapping.MultipleMappingException; * reverse. * Apr 30, 2013 1961 bsteffen Add ability to disable grib tables. * Oct 14, 2013 2473 bsteffen Remove lookup of deprecated grib files. + * Apr 25, 2014 2874 bsteffen Add processType + * Jul 02, 2014 3230 rferrel Recursively get model files in initModelList. + * Jul 30, 2014 3455 bsteffen Allow model matching with no grid defined. + * * * * @@ -94,42 +98,63 @@ public class GribModelLookup { initModelList(); } - public GridModel getModel(int center, int subcenter, String grid, - int process) { - GridModel model = models.get(toKey(center, subcenter, grid, process)); - if (model == null) { - // See if there is a version for all grids. - model = models.get(toKey(center, subcenter, null, process)); + /** + * Get a model based off some fields in the grib file. + * + * @param center + * the id of the center + * @param subcenter + * the id of the subcenter + * @param grid + * gridcoverage as defined in the grib file(don't use subgrids) + * @param process + * the process id + * @param processType + * the process type, although this is a byte in the grib file + * this method expects the byte to be resolved to a string by + * looking up the type id in the grib tables(4.3). grib1 does not + * include a value for process type so null is acceptable. + * @return The grid model if one is find or null if no such model is defined + * in the localization files.. + */ + public GridModel getModel(int center, int subcenter, GridCoverage grid, + int process, String processType) { + /* Match all fields */ + GridModel model = getModelSimple(center, subcenter, grid, process, + processType); + if (model == null && processType != null) { + /* Match with no processType specified */ + model = getModelSimple(center, subcenter, grid, process, null); + } + if (model == null && grid != null) { + /* Match with no grid specified */ + model = getModelSimple(center, subcenter, null, process, + processType); + } + if (model == null && grid != null && processType != null) { + /* Match with no grid or processType */ + model = getModelSimple(center, subcenter, null, process, null); } return model; } - public GridModel getModel(int center, int subcenter, GridCoverage grid, - int process) { - GridModel model = null; - if (grid.getName() != null) { - models.get(toKey(center, subcenter, grid.getName(), process)); - } - if (model == null) { + private GridModel getModelSimple(int center, int subcenter, + GridCoverage grid, int process, String processType) { + if (grid != null) { for (String gribGridName : GribSpatialCache.getInstance() .getGribCoverageNames(grid)) { - model = models.get(toKey(center, subcenter, gribGridName, - process)); + String key = toKey(center, subcenter, gribGridName, process, + processType); + GridModel model = models.get(key); if (model != null) { - break; + return model; } } - if (model == null) { - // last step is to look for a matching center, subcenter, and - // process with no grid. - model = models.get(toKey(center, subcenter, null, process)); - } + } else { + String key = toKey(center, subcenter, null, process, processType); + return models.get(key); } - return model; - } - - public GridModel getModel(int center, int subcenter, int gridid, int process) { - return getModel(center, subcenter, String.valueOf(gridid), process); + return null; } public GridModel getModelByName(String name) { @@ -141,8 +166,9 @@ public class GribModelLookup { } public String getModelName(int center, int subcenter, GridCoverage grid, - int process) { - GridModel model = getModel(center, subcenter, grid, process); + int process, String processType) { + GridModel model = getModel(center, subcenter, grid, process, + processType); if (model == null || model.getName() == null) { String cenSubProc = "GribModel:" + String.valueOf(center) + ":" + String.valueOf(subcenter) + ":" + String.valueOf(process); @@ -197,7 +223,7 @@ public class GribModelLookup { new LocalizationContext[] { edexStaticBase, edexStaticSite }, "grib" + IPathManager.SEPARATOR + "models", // Win32 - new String[] { ".xml" }, false, true); + new String[] { ".xml" }, true, true); GridModelSet modelSet = new GridModelSet(); @@ -219,41 +245,32 @@ public class GribModelLookup { private void addModels(GridModelSet modelSet) { for (GridModel model : modelSet.getModels()) { + int subCenter = Integer.parseInt(model.getSubCenter()); modelsByName.put(model.getName(), model); for (int process : model.getProcess()) { if (model.getAllGrids().isEmpty()) { - models.put( - toKey(model.getCenter(), - Integer.parseInt(model.getSubCenter()), - null, process), model); + String key = toKey(model.getCenter(), subCenter, null, + process, model.getProcessType()); + models.put(key, model); } for (String grid : model.getAllGrids()) { - models.put( - toKey(model.getCenter(), - Integer.parseInt(model.getSubCenter()), - grid, process), model); + String key = toKey(model.getCenter(), subCenter, grid, + process, model.getProcessType()); + models.put(key, model); } } } } - private String toKey(Integer center, Integer subcenter, String grid, - Integer process) { + Integer process, String processType) { StringBuilder builder = new StringBuilder(); builder.append(center); builder.append(subcenter); builder.append(grid); builder.append(process); + builder.append(processType); return builder.toString(); - // final int PRIME = 31; - // int result = 1; - // result = PRIME * result + ((center == null) ? 0 : center.hashCode()); - // result = PRIME * result - // + ((subcenter == null) ? 0 : subcenter.hashCode()); - // result = PRIME * result + ((grid == null) ? 0 : grid.hashCode()); - // result = PRIME * result + ((process == null) ? 0 : - // process.hashCode()); - // return result; + } } diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GridModel.java b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GridModel.java index faa661fdde..5c5b806698 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GridModel.java +++ b/edexOsgi/com.raytheon.edex.plugin.grib/src/com/raytheon/edex/plugin/grib/util/GridModel.java @@ -76,6 +76,10 @@ public class GridModel { @XmlElement(name = "id") private ArrayList process; + /** The generating processes associated with this model */ + @XmlElement + private String processType; + @XmlElement private String alias; @@ -130,6 +134,14 @@ public class GridModel { public void setProcess(ArrayList process) { this.process = process; } + + public String getProcessType() { + return processType; + } + + public void setProcessType(String processType) { + this.processType = processType; + } public Integer getCenter() { return center; diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml index 3e342f75c3..9da4aa29b2 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml @@ -899,4 +899,9 @@ PROB3HR
3
+ + HRRR + HRRR +
1
+
diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/grib1ParameterConvTable.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/grib1ParameterConvTable.xml index fabbf7ff67..0df61629c7 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/grib1ParameterConvTable.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/grib1ParameterConvTable.xml @@ -9010,4 +9010,15 @@ 14 + + + +
54
+ 2 + 52 + 0 + 1 + 1 +
+
diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/master_grib2_lookup.txt b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/master_grib2_lookup.txt index 3f0b7ad8f4..c8cbdec2c1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/master_grib2_lookup.txt +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/master_grib2_lookup.txt @@ -40,32 +40,50 @@ // that of the input hash, one might do this if one only wanted to // assign a specific level or change the perturbation, or prevent a more // broadly defined translation from affecting a specific case. -s2s -TP_254E3_T170L42A-NCEP-MDL_1073x689_21600-0 POP6hr -TP_254E3_T170L42A-NCEP-MDL_1073x689_43200-0 POP12hr +// 5km CONUS MOSGuide precip probability +TP0.254mm_T170L42A-NCEP-MDL_1073x689_21600-0 POP6hr +TP0.254mm_T170L42A-NCEP-MDL_1073x689_43200-0 POP12hr +// 5km CONUS MOSGuide cumulative precip +// these are unnessecary since A2 always appends duration TP_T170L42A-NCEP-MDL_1073x689_21600-0 TP6hr TP_T170L42A-NCEP-MDL_1073x689_43200-0 TP12hr +// 5km CONUS MOSGuide cumulative thunderstorm probabilities +// these are unnessecary since A2 always appends duration ThP_T170L42A-NCEP-MDL_1073x689_43200-0 ThP12hr ThP_T170L42A-NCEP-MDL_1073x689_21600-0 ThP6hr ThP_T170L42A-NCEP-MDL_1073x689_10800-0 ThP3hr -TP_254E3_T170L42A-NCEP-MDL_1649x1105_21600-0 POP6hr -TP_254E3_T170L42A-NCEP-MDL_1649x1105_43200-0 POP12hr +// 2.5km MOSGuide +TP0.254mm_T170L42A-NCEP-MDL_2145x1377_21600-0 POP6hr +TP0.254mm_T170L42A-NCEP-MDL_2145x1377_43200-0 POP12hr +// MOSGuide Alaska +TP0.254mm_T170L42A-NCEP-MDL_1649x1105_21600-0 POP6hr +TP0.254mm_T170L42A-NCEP-MDL_1649x1105_43200-0 POP12hr +// TPCWindProb wind speed probabilities WS17.491m/s Prob34 WS25.722m/s Prob50 WS32.924m/s Prob64 PWS17.491m/s PWS34 PWS25.722m/s PWS50 PWS32.924m/s PWS64 +// All European models(center 98) min/max temperature +// these are unnessecary since A2 always appends duration MxT_ECMFMOD-1DEG-ECMF_10800-0 MxT3hr MxT_ECMFMOD-1DEG-ECMF_21600-0 MxT6hr MnT_ECMFMOD-1DEG-ECMF_10800-0 MnT3hr MnT_ECMFMOD-1DEG-ECMF_21600-0 MnT6hr +// All European models(center 98) precip +// this gets converted to TP-ECMWF for storage. TP_ECMFMOD-1DEG-ECMF TP_ECMWF +// HPCQPF cumulative precip +// these are unnessecary since A2 always appends duration TP_HPCQPF-NCEP-HPC_432000-0 TP120hr TP_HPCQPF-NCEP-HPC_172800-0 TP48hr +// HPCQPF 6 hour cumulative precip TP_HPCQPF-NCEP-HPC_21600-0 tpHPCndfd +// SREF snowfall statistics SNOLmean_43200-0 SNOL12mean SNOLsprd_43200-0 SNOL12sprd +// SREF precip statistics TPmean_10800-0 TP3mean TPsprd_10800-0 TP3sprd TPmean_21600-0 TP6mean @@ -74,30 +92,38 @@ TPmean_43200-0 TP12mean TPsprd_43200-0 TP12sprd TPmean_86400-0 TP24mean TPsprd_86400-0 TP24sprd +// SREF visibility probabilities Vis1609.0m Visc1 Vis4827.0m Visc2 +// SREF Wind Speed probabilities WS12.89m/s WSc1 WS17.5m/s WSc2 -WS25.7m/s WSc3 +WS25.0m/s WSc3 WS25.78m/s WSc4 +// SREF Height probabilities GH152.5gpm Cigc1 GH305.0gpm Cigc2 GH914.6gpm Cigc3 +// SREF temperature probability T273.0K Tc1 +// SREF CAPE probabilities CAPE500.0J/kg CAPEc1 CAPE1000.0J/kg CAPEc2 CAPE2000.0J/kg CAPEc3 CAPE3000.0J/kg CAPEc4 CAPE4000.0J/kg CAPEc5 +// SREF precip type probabilities CFRZR1.0 CFRZRc1 CICEP1.0 CICEPc1 CRAIN1.0 CRAINc1 CSNOW1.0 CSNOWc1 +// SREF lifted index probabilities PLI0.0K PLIxc1 PLI-2.0K PLIxc2 PLI-4.0K PLIxc3 PLI-6.0K PLIxc4 PLI-8.0K PLIxc5 +// SREF precip probabilities TP0.25mm_10800-0 tp3c1 TP1.27mm_10800-0 tp3c2 TP2.54mm_10800-0 tp3c3 @@ -130,8 +156,9 @@ TP12.7mm_86400-0 tp24c5 TP25.4mm_86400-0 tp24c6 TP38.1mm_86400-0 tp24c7 TP50.8mm_86400-0 tp24c8 +// SREF snowfall probabilities SNOL25.4mm_43200-0 SNOL12c1 -SNOL508.0mm_43200-0 SNOL12c2 +SNOL50.8mm_43200-0 SNOL12c2 SNOL101.6mm_43200-0 SNOL12c3 SNOL152.4mm_43200-0 SNOL12c4 SNOL190.5mm_43200-0 SNOL12c5 @@ -139,41 +166,54 @@ SNOL203.2mm_43200-0 SNOL12c6 SNOL254.0mm_43200-0 SNOL12c7 SNOL304.8mm_43200-0 SNOL12c8 SNOL406.4mm_43200-0 SNOL12c9 -SNOL609.6mm_43200-0 SNOL12c10 -T_66E2_CPCMANU-NCEP-CPC_1073x689_604800-0 PTAM -T_33E2_CPCMANU-NCEP-CPC_1073x689_604800-0 PTBM -TP_66E2_CPCMANU-NCEP-CPC_1073x689_604800-0 PPAM -TP_33E2_CPCMANU-NCEP-CPC_1073x689_604800-0 PPBM -T_66E2_CPCAUTO-NCEP-CPC_1073x689_172800-0 PTAS -T_33E2_CPCAUTO-NCEP-CPC_1073x689_172800-0 PTBS -TP_66E2_CPCAUTO-NCEP-CPC_1073x689_172800-0 PPAS -TP_33E2_CPCAUTO-NCEP-CPC_1073x689_172800-0 PPBS -T_66E2_CPCMANU-NCEP-CPC_825x553_604800-0 PTAM -T_33E2_CPCMANU-NCEP-CPC_825x553_604800-0 PTBM -TP_66E2_CPCMANU-NCEP-CPC_825x553_604800-0 PPAM -TP_33E2_CPCMANU-NCEP-CPC_825x553_604800-0 PPBM -T_66E2_CPCAUTO-NCEP-CPC_825x553_172800-0 PTAS -T_33E2_CPCAUTO-NCEP-CPC_825x553_172800-0 PTBS -TP_66E2_CPCAUTO-NCEP-CPC_825x553_172800-0 PPAS -TP_33E2_CPCAUTO-NCEP-CPC_825x553_172800-0 PPBS +SNOL609.4mm_43200-0 SNOL12c10 +// CPCOutlook Medium CONUS (process 200) +T0.66K_CPCMANU-NCEP-CPC_1073x689_604800-0 PTAM +T0.33K_CPCMANU-NCEP-CPC_1073x689_604800-0 PTBM +TP0.66mm_CPCMANU-NCEP-CPC_1073x689_604800-0 PPAM +TP0.33mm_CPCMANU-NCEP-CPC_1073x689_604800-0 PPBM +// CPCOutlook Short CONUS (process 201) +T0.66K_CPCAUTO-NCEP-CPC_1073x689_172800-0 PTAS +T0.33K_CPCAUTO-NCEP-CPC_1073x689_172800-0 PTBS +TP0.66mm_CPCAUTO-NCEP-CPC_1073x689_172800-0 PPAS +TP0.33mm_CPCAUTO-NCEP-CPC_1073x689_172800-0 PPBS +// CPCOutlook Medium Alaska (process 200) +T0.66K_CPCMANU-NCEP-CPC_825x553_604800-0 PTAM +T0.33K_CPCMANU-NCEP-CPC_825x553_604800-0 PTBM +TP0.66mm_CPCMANU-NCEP-CPC_825x553_604800-0 PPAM +TP0.33mm_CPCMANU-NCEP-CPC_825x553_604800-0 PPBM +// CPCOutlook Short Alaska (process 201) +T0.66K_CPCAUTO-NCEP-CPC_825x553_172800-0 PTAS +T0.33K_CPCAUTO-NCEP-CPC_825x553_172800-0 PTBS +TP0.66mm_CPCAUTO-NCEP-CPC_825x553_172800-0 PPAS +TP0.33mm_CPCAUTO-NCEP-CPC_825x553_172800-0 PPBS +// NMM (process 89) Min/Max temp +// these are unnessecary since A2 always appends duration MxT_NMM-NCEP_10800-0 MxT3hr MxT_NMM-NCEP_43200-0 MxT12hr MnT_NMM-NCEP_10800-0 MnT3hr MnT_NMM-NCEP_43200-0 MnT12hr +// NMM (process 89) prob of precip POP_NMM-NCEP_10800-0 prcp3hr POP_NMM-NCEP_21600-0 prcp6hr POP_NMM-NCEP_43200-0 prcp12hr +// NMM (process 89) precip accumulation +// these are unnessecary since A2 always appends duration TP_NMM-NCEP_10800-0 TP3hr TP_NMM-NCEP_21600-0 TP6hr TP_NMM-NCEP_43200-0 TP12hr +// NMM (process 89) min/max Relative Humidity +// these are unnessecary since A2 always appends duration MAXRH_NMM-NCEP_10800-0 MAXRH3hr MAXRH_NMM-NCEP_43200-0 MAXRH12hr -SnD_NMM-NCEP_10800-0 snowd3hr -SnD_NMM-NCEP_21600-0 snowd6hr -PTOR_254E3 PTOR MINRH_NMM-NCEP_10800-0 MINRH3hr MINRH_NMM-NCEP_43200-0 MINRH12hr -TP_254E3 POP +// NMM (process 89) snowfall +// these are unnessecary since A2 always appends duration +SnD_NMM-NCEP_10800-0 snowd3hr +SnD_NMM-NCEP_21600-0 snowd6hr +// Catchall that always maps probability of precip over 0.245mm(1/100 in) to POP. +TP0.254mm POP // Throw 1-hr and 2-hr precip on the floor for RUC13 CP_RUC2-NCEP_165x165_7200-0 PWS64 @@ -181,20 +221,107 @@ CP_RUC2-NCEP_165x165_10800-0 PWS64 LgSP_RUC2-NCEP_165x165_7200-0 PWS64 LgSP_RUC2-NCEP_165x165_10800-0 PWS64 -LAVV_32924E3 LAVV -LOUV_25722E3 LOUV -LAUV_17491E3 LAUV +// Unused entries for TPCWindProb because of previously incorrect table entries +// for parameters 198,199 and 200. +LAVV32.924degrees LAVV +LOUV25.722degrees LOUV +LAUV17.491degrees LAUV +// HPCqpfNDFD, this prevents the decoder from appending the duration PPFFG_75600-0 PPFFG PPFFG_108000-0 PPFFG PPFFG_172800-0 PPFFG PPFFG_259200-0 PPFFG -# SPC -SIGTRNDPROB_254E3 SIGTRNDPROB -HAILPROB_254E3 HAILPROB -SIGHAILPROB_254E3 SIGHAILPROB -WINDPROB_254E3 WINDPROB -SIGWINDPROB_254E3 SIGWINDPROB -PRSVR_254E3 PRSVR -PRSIGSV_254E3 PRSIGSV +// SPCGuide Probability sever weather, strip off the bogus probability +PTOR0.254% PTOR +SIGTRNDPROB0.254% SIGTRNDPROB +HAILPROB0.254% HAILPROB +SIGHAILPROB0.254% SIGHAILPROB +WINDPROB0.254% WINDPROB +SIGWINDPROB0.254% SIGWINDPROB +PRSVR0.254% PRSVR +PRSIGSV0.254% PRSIGSV + +#TPCSurgeProb +# For the pct parameters the parameters coming out of the grib files are coded +# as the height where there is XX probability that the surge is less than a +# height but the desired interpretation is XX probability that the surge is +# greater than a height +Surge10pct_21600-0 Surge90pct6hr +Surge20pct_21600-0 Surge80pct6hr +Surge30pct_21600-0 Surge70pct6hr +Surge40pct_21600-0 Surge60pct6hr +Surge50pct_21600-0 Surge50pct6hr +Surge60pct_21600-0 Surge40pct6hr +Surge70pct_21600-0 Surge30pct6hr +Surge80pct_21600-0 Surge20pct6hr +Surge90pct_21600-0 Surge10pct6hr +# For the m parameters convert the abbreviation from the grib decoder contains +# a height in meters but it was intended and can be dispalyed nicely as a +# height in feet. +Surge0.0m_21600-0 PSurge0ft6hr +Surge0.3m_21600-0 PSurge1ft6hr +Surge0.61m_21600-0 PSurge2ft6hr +Surge0.91m_21600-0 PSurge3ft6hr +Surge1.22m_21600-0 PSurge4ft6hr +Surge1.52m_21600-0 PSurge5ft6hr +Surge1.83m_21600-0 PSurge6ft6hr +Surge2.13m_21600-0 PSurge7ft6hr +Surge2.44m_21600-0 PSurge8ft6hr +Surge2.74m_21600-0 PSurge9ft6hr +Surge3.05m_21600-0 PSurge10ft6hr +Surge3.35m_21600-0 PSurge11ft6hr +Surge3.66m_21600-0 PSurge12ft6hr +Surge3.96m_21600-0 PSurge13ft6hr +Surge4.27m_21600-0 PSurge14ft6hr +Surge4.57m_21600-0 PSurge15ft6hr +Surge4.88m_21600-0 PSurge16ft6hr +Surge5.18m_21600-0 PSurge17ft6hr +Surge5.49m_21600-0 PSurge18ft6hr +Surge5.79m_21600-0 PSurge19ft6hr +Surge6.1m_21600-0 PSurge20ft6hr +Surge6.4m_21600-0 PSurge21ft6hr +Surge6.71m_21600-0 PSurge22ft6hr +Surge7.01m_21600-0 PSurge23ft6hr +Surge7.32m_21600-0 PSurge24ft6hr +Surge7.62m_21600-0 PSurge25ft6hr +# For the Cumulative this mapping not only inverses the percentages and +# converts the heights, it also prevents the decoder from appending a duration +# which is necessary because the duration increases for each forecast time. +Surge10pctCumul Surge90pctCumul +Surge20pctCumul Surge80pctCumul +Surge30pctCumul Surge70pctCumul +Surge40pctCumul Surge60pctCumul +Surge50pctCumul Surge50pctCumul +Surge60pctCumul Surge40pctCumul +Surge70pctCumul Surge30pctCumul +Surge80pctCumul Surge20pctCumul +Surge90pctCumul Surge10pctCumul +Surge0.0mCumul PSurge0ftCumul +Surge0.3mCumul PSurge1ftCumul +Surge0.61mCumul PSurge2ftCumul +Surge0.91mCumul PSurge3ftCumul +Surge1.22mCumul PSurge4ftCumul +Surge1.52mCumul PSurge5ftCumul +Surge1.83mCumul PSurge6ftCumul +Surge2.13mCumul PSurge7ftCumul +Surge2.44mCumul PSurge8ftCumul +Surge2.74mCumul PSurge9ftCumul +Surge3.05mCumul PSurge10ftCumul +Surge3.35mCumul PSurge11ftCumul +Surge3.66mCumul PSurge12ftCumul +Surge3.96mCumul PSurge13ftCumul +Surge4.27mCumul PSurge14ftCumul +Surge4.57mCumul PSurge15ftCumul +Surge4.88mCumul PSurge16ftCumul +Surge5.18mCumul PSurge17ftCumul +Surge5.49mCumul PSurge18ftCumul +Surge5.79mCumul PSurge19ftCumul +Surge6.1mCumul PSurge20ftCumul +Surge6.4mCumul PSurge21ftCumul +Surge6.71mCumul PSurge22ftCumul +Surge7.01mCumul PSurge23ftCumul +Surge7.32mCumul PSurge24ftCumul +Surge7.62mCumul PSurge25ftCumul + diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/parameterNameAlias.txt b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/parameterNameAlias.txt index 6b7da539bf..fc2768528d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/parameterNameAlias.txt +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/parameterNameAlias.txt @@ -131,10 +131,82 @@ SREF243::SNOL12c2::Prob 12-hr SNOW > 2 in SREF243::SNOL12c5::Prob 12-hr SNOW > 7.5 in SREF243::SNOL12c4::Prob 12-hr SNOW > 6 in SREF243::SNOL12c1::Prob 12-hr SNOW > 1 in - TPCWindProb::Prob34::Probability of Wind Speed > 34 knots TPCWindProb::Prob50::Probability of Wind Speed > 50 knots TPCWindProb::Prob64::Probability of Wind Speed > 64 knots TPCWindProb::PWS34::Incremental Prob WS 34 kts or greater TPCWindProb::PWS50::Incremental Prob WS 50 kts or greater -TPCWindProb::PWS64::Incremental Prob WS 64 kts or greater \ No newline at end of file +TPCWindProb::PWS64::Incremental Prob WS 64 kts or greater +// For the TPCSurgeProb parameters the names need to be converted from metric +// and the percentages need to be inverted, for more information see the +// comments in master_grib2_lookup.txt +TPCSurgeProb::Surge10pct6hr::6 Hour Surge 10% Exceedance Ht +TPCSurgeProb::Surge20pct6hr::6 Hour Surge 20% Exceedance Ht +TPCSurgeProb::Surge30pct6hr::6 Hour Surge 30% Exceedance Ht +TPCSurgeProb::Surge40pct6hr::6 Hour Surge 40% Exceedance Ht +TPCSurgeProb::Surge50pct6hr::6 Hour Surge 50% Exceedance Ht +TPCSurgeProb::Surge60pct6hr::6 Hour Surge 60% Exceedance Ht +TPCSurgeProb::Surge70pct6hr::6 Hour Surge 70% Exceedance Ht +TPCSurgeProb::Surge80pct6hr::6 Hour Surge 80% Exceedance Ht +TPCSurgeProb::Surge90pct6hr::6 Hour Surge 90% Exceedance Ht +TPCSurgeProb::PSurge0ft6hr::6 hour Prob of Surge > 0 ft +TPCSurgeProb::PSurge1ft6hr::6 hour Prob of Surge > 1 ft +TPCSurgeProb::PSurge2ft6hr::6 hour Prob of Surge > 2 ft +TPCSurgeProb::PSurge3ft6hr::6 hour Prob of Surge > 3 ft +TPCSurgeProb::PSurge4ft6hr::6 hour Prob of Surge > 4 ft +TPCSurgeProb::PSurge5ft6hr::6 hour Prob of Surge > 5 ft +TPCSurgeProb::PSurge6ft6hr::6 hour Prob of Surge > 6 ft +TPCSurgeProb::PSurge7ft6hr::6 hour Prob of Surge > 7 ft +TPCSurgeProb::PSurge8ft6hr::6 hour Prob of Surge > 8 ft +TPCSurgeProb::PSurge9ft6hr::6 hour Prob of Surge > 9 ft +TPCSurgeProb::PSurge10ft6hr::6 hour Prob of Surge > 10 ft +TPCSurgeProb::PSurge11ft6hr::6 hour Prob of Surge > 11 ft +TPCSurgeProb::PSurge12ft6hr::6 hour Prob of Surge > 12 ft +TPCSurgeProb::PSurge13ft6hr::6 hour Prob of Surge > 13 ft +TPCSurgeProb::PSurge14ft6hr::6 hour Prob of Surge > 14 ft +TPCSurgeProb::PSurge15ft6hr::6 hour Prob of Surge > 15 ft +TPCSurgeProb::PSurge16ft6hr::6 hour Prob of Surge > 16 ft +TPCSurgeProb::PSurge17ft6hr::6 hour Prob of Surge > 17 ft +TPCSurgeProb::PSurge18ft6hr::6 hour Prob of Surge > 18 ft +TPCSurgeProb::PSurge19ft6hr::6 hour Prob of Surge > 19 ft +TPCSurgeProb::PSurge20ft6hr::6 hour Prob of Surge > 20 ft +TPCSurgeProb::PSurge21ft6hr::6 hour Prob of Surge > 21 ft +TPCSurgeProb::PSurge22ft6hr::6 hour Prob of Surge > 22 ft +TPCSurgeProb::PSurge23ft6hr::6 hour Prob of Surge > 23 ft +TPCSurgeProb::PSurge24ft6hr::6 hour Prob of Surge > 24 ft +TPCSurgeProb::PSurge25ft6hr::6 hour Prob of Surge > 25 ft +TPCSurgeProb::Surge10pctCumul::Cumulative Surge 10% Exceedance Ht +TPCSurgeProb::Surge20pctCumul::Cumulative Surge 20% Exceedance Ht +TPCSurgeProb::Surge30pctCumul::Cumulative Surge 30% Exceedance Ht +TPCSurgeProb::Surge40pctCumul::Cumulative Surge 40% Exceedance Ht +TPCSurgeProb::Surge50pctCumul::Cumulative Surge 50% Exceedance Ht +TPCSurgeProb::Surge60pctCumul::Cumulative Surge 60% Exceedance Ht +TPCSurgeProb::Surge70pctCumul::Cumulative Surge 70% Exceedance Ht +TPCSurgeProb::Surge80pctCumul::Cumulative Surge 80% Exceedance Ht +TPCSurgeProb::Surge90pctCumul::Cumulative Surge 90% Exceedance Ht +TPCSurgeProb::PSurge0ftCumul::Cumulative Prob of Surge > 0 ft +TPCSurgeProb::PSurge1ftCumul::Cumulative Prob of Surge > 1 ft +TPCSurgeProb::PSurge2ftCumul::Cumulative Prob of Surge > 2 ft +TPCSurgeProb::PSurge3ftCumul::Cumulative Prob of Surge > 3 ft +TPCSurgeProb::PSurge4ftCumul::Cumulative Prob of Surge > 4 ft +TPCSurgeProb::PSurge5ftCumul::Cumulative Prob of Surge > 5 ft +TPCSurgeProb::PSurge6ftCumul::Cumulative Prob of Surge > 6 ft +TPCSurgeProb::PSurge7ftCumul::Cumulative Prob of Surge > 7 ft +TPCSurgeProb::PSurge8ftCumul::Cumulative Prob of Surge > 8 ft +TPCSurgeProb::PSurge9ftCumul::Cumulative Prob of Surge > 9 ft +TPCSurgeProb::PSurge10ftCumul::Cumulative Prob of Surge > 10 ft +TPCSurgeProb::PSurge11ftCumul::Cumulative Prob of Surge > 11 ft +TPCSurgeProb::PSurge12ftCumul::Cumulative Prob of Surge > 12 ft +TPCSurgeProb::PSurge13ftCumul::Cumulative Prob of Surge > 13 ft +TPCSurgeProb::PSurge14ftCumul::Cumulative Prob of Surge > 14 ft +TPCSurgeProb::PSurge15ftCumul::Cumulative Prob of Surge > 15 ft +TPCSurgeProb::PSurge16ftCumul::Cumulative Prob of Surge > 16 ft +TPCSurgeProb::PSurge17ftCumul::Cumulative Prob of Surge > 17 ft +TPCSurgeProb::PSurge18ftCumul::Cumulative Prob of Surge > 18 ft +TPCSurgeProb::PSurge19ftCumul::Cumulative Prob of Surge > 19 ft +TPCSurgeProb::PSurge20ftCumul::Cumulative Prob of Surge > 20 ft +TPCSurgeProb::PSurge21ftCumul::Cumulative Prob of Surge > 21 ft +TPCSurgeProb::PSurge22ftCumul::Cumulative Prob of Surge > 22 ft +TPCSurgeProb::PSurge23ftCumul::Cumulative Prob of Surge > 23 ft +TPCSurgeProb::PSurge24ftCumul::Cumulative Prob of Surge > 24 ft +TPCSurgeProb::PSurge25ftCumul::Cumulative Prob of Surge > 25 ft \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/distribution/grib.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/distribution/grib.xml index 48f1d60e5e..f9816c7f7f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/distribution/grib.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/distribution/grib.xml @@ -23,7 +23,7 @@ ^[EHLMOYZ][A-Z]{3}\d{2} - + ^LZ[ABC][ABC]9[123] KWBC .*grib.* ^US058.* diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/grids/grid4.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/grids/grid4.xml index 9b9e929790..21906330d3 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/grids/grid4.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/grids/grid4.xml @@ -20,7 +20,7 @@ --> 4 - Global Lon/Lat grid + 259920-point (720x361) global Lon/Lat grid 90.0 0.0 UpperLeft diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/GribModels_FNMO-58.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/GribModels_FNMO-58.xml index c71ac78b30..28203b77f1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/GribModels_FNMO-58.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/GribModels_FNMO-58.xml @@ -182,7 +182,7 @@ - fnmocWave1 + fnmocWave
58
0 401 @@ -192,7 +192,7 @@
- fnmocWave2 + fnmocWave
58
0 362181001 @@ -202,7 +202,7 @@
- fnmocWave3 + fnmocWave
58
0 362181002 @@ -222,7 +222,7 @@
- fnmocWave5 + fnmocWave
58
0 361181002 @@ -254,4 +254,4 @@ - + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NCEP-7.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NCEP-7.xml index 2ca087a27c..26bcf934e7 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NCEP-7.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NCEP-7.xml @@ -262,6 +262,54 @@
+ + + GFS215 +
7
+ 0 + 215 + + 81 + 96 + +
+ + + + GFS217 +
7
+ 0 + 217 + + 81 + 96 + +
+ + + + GFS20-PAC +
7
+ 0 + GFS-PAC-20KM + + 81 + 96 + +
+ + + + GFS20-PRICO +
7
+ 0 + GFS-PRICO-20KM + + 81 + 96 + +
+ WAFS
7
@@ -371,26 +419,6 @@
- - ofsGmex -
7
- 0 - 15058391 - - 45 - -
- - - ofsWatl -
7
- 0 - -26535243 - - 45 - -
- AVN-NorthernHemisphere
7
@@ -1312,6 +1340,17 @@
+ + Aviation +
7
+ 0 + 252 + + 191 + 105 + +
+ AK-NamDNG5
7
@@ -1404,24 +1443,14 @@
- hireswArwGuam + HiResW-ARW-US
7
0 - 11731129 - - 116 - -
- - - hireswArwPR -
7
- 0 - 13560489 - - 116 - -
+ 14731025001 + + 116 + + HiResW-NMM-East @@ -1483,26 +1512,17 @@ 112 - + - hireswNmmGuam -
7
- 0 - 11731129 - - 112 - -
- - - hireswNmmPR -
7
- 0 - 13560489 - - 112 - -
+ HiResW-NMM-US +
7
+ 0 + 14731025001 + + 112 + + + GRLKwave @@ -1714,7 +1734,7 @@ - GFS-1p0-3 + GFS
7
0 361181001 @@ -1727,7 +1747,7 @@
- GFS-1p0-4 + GFS
7
0 372 @@ -1748,7 +1768,17 @@
- gfs-5 + gfs +
7
+ 0 + 372 + + 81 + +
+ + + GFS
7
0 145073001 @@ -1760,7 +1790,7 @@
- gfs-6 + GFS
7
0 375 @@ -1809,6 +1839,7 @@ 89
+ NDFD
8
diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NOAA-161.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NOAA-161.xml index 4776331a14..487b41a54e 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NOAA-161.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_NOAA-161.xml @@ -10,6 +10,30 @@ + + + MRMS +
161
+ 0 + 10000 + + 97 + +
+ + + MRMS +
161
+ 0 + 10001 + + 97 + +
+ + + + diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RFC-9.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RFC-9.xml index 5483816d9d..26a2e937c2 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RFC-9.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RFC-9.xml @@ -23,7 +23,7 @@ - MPE-Mosaic + MPE-Local
9
0 304 @@ -36,7 +36,6 @@ HPE
9
0 - 303 165 @@ -46,12 +45,12 @@ BHPE
9
0 - 303 166
+ diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RSMC-54.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RSMC-54.xml index fee35cffce..088751b316 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RSMC-54.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/models/gribModels_RSMC-54.xml @@ -12,6 +12,16 @@ + + cmcHR +
53
+ 0 + 493399001 + + 36 + +
+ CanadianModel
54
diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/postProcessModels/postProcessedModels.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/postProcessModels/postProcessedModels.xml index f4f6b9d910..b4acb946e0 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/postProcessModels/postProcessedModels.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/postProcessModels/postProcessedModels.xml @@ -32,6 +32,11 @@ OverwriteGribPostProcessor + + URMA25 + OverwriteGribPostProcessor + + @@ -40,26 +45,12 @@ FFGGribPostProcessor - + - ETA218 - LiftedIndexPostProcessor - - - - GFS212 - LiftedIndexPostProcessor - - - - GFS213 - GFSProcessor - LiftedIndexPostProcessor - - - - ETA242 - LiftedIndexPostProcessor + ETA218|GFS212|GFS213|ETA242|RTOFS-.* + TemperatureCorrectionPostProcessor @@ -120,12 +111,6 @@ RUC130 RUC130GribPostProcessor - - - - TPCSurgeProb - TPCSurgeProbPostProcessor - diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/subgrids/mEtaClip.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/subgrids/mEtaClip.xml index 678ea7cc37..d9589e2615 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/subgrids/mEtaClip.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/subgrids/mEtaClip.xml @@ -19,7 +19,7 @@ further_licensing_information. --> - NAM-40km mesoEta215 ETA212 + mesoEta212 mesoEta215 ETA212 215 175 173 diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/tables/7/0/4.2.3.192.table b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/tables/7/0/4.2.3.192.table index 0e789b15ac..0edd0b31d1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/tables/7/0/4.2.3.192.table +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/edex_static/base/grib/tables/7/0/4.2.3.192.table @@ -1,10 +1,51 @@ # Product Discipline 3: Space Products, Parameter Category 192: Forecast Satellite Imagery +# Revised 07/15/2014 0:0:Simulated Brightness Temperature for GOES 12, Channel 2:K:SBT122 1:1:Simulated Brightness Temperature for GOES 12, Channel 3:K:SBT123 2:2:Simulated Brightness Temperature for GOES 12, Channel 4:K:SBT124 3:3:Simulated Brightness Temperature for GOES 12, Channel 5:K:SBT125 4:4:Simulated Brightness Counts for GOES 12, Channel 3:Byte:SBC123 5:5:Simulated Brightness Counts for GOES 12, Channel 4:Byte:SBC124 -#6-191: Reserved +6:6:Simulated Brightness Temperature for GOES 11, Channel 2:K:SBT112 +7:7:Simulated Brightness Temperature for GOES 11, Channel 3:K:SBT113 +8:8:Simulated Brightness Temperature for GOES 11, Channel 4:K:SBT114 +9:9:Simulated Brightness Temperature for GOES 11, Channel 5:K:SBT115 +10:10:Simulated Brightness Temperature for AMSRE on Aqua, Channel 9:K:AMSRE9 +11:11:Simulated Brightness Temperature for AMSRE on Aqua, Channel 10:K:AMSRE10 +12:12:Simulated Brightness Temperature for AMSRE on Aqua, Channel 11:K:AMSRE11 +13:13:Simulated Brightness Temperature for AMSRE on Aqua, Channel 12:K:AMSRE12 +14:14:Simulated Reflectance Factor for ABI GOES-16, Band-1::SRFA161 +15:15:Simulated Reflectance Factor for ABI GOES-16, Band-2::SRFA162 +16:16:Simulated Reflectance Factor for ABI GOES-16, Band-3::SRFA163 +17:17:Simulated Reflectance Factor for ABI GOES-16, Band-4::SRFA164 +18:18:Simulated Reflectance Factor for ABI GOES-16, Band-5::SRFA165 +19:19:Simulated Reflectance Factor for ABI GOES-16, Band-6::SRFA166 +20:20:Simulated Brightness Temperature for ABI GOES-16, Band-7:K:SBTA167 +21:21:Simulated Brightness Temperature for ABI GOES-16, Band-8:K:SBTA168 +22:22:Simulated Brightness Temperature for ABI GOES-16, Band-9:K:SBTA169 +23:23:Simulated Brightness Temperature for ABI GOES-16, Band-10:K:SBTA1610 +24:24:Simulated Brightness Temperature for ABI GOES-16, Band-11:K:SBTA1611 +25:25:Simulated Brightness Temperature for ABI GOES-16, Band-12:K:SBTA1612 +26:26:Simulated Brightness Temperature for ABI GOES-16, Band-13:K:SBTA1613 +27:27:Simulated Brightness Temperature for ABI GOES-16, Band-14:K:SBTA1614 +28:28:Simulated Brightness Temperature for ABI GOES-16, Band-15:K:SBTA1615 +29:29:Simulated Brightness Temperature for ABI GOES-16, Band-16:K:SBTA1616 +30:30:Simulated Reflectance Factor for ABI GOES-17, Band-1::SRFA171 +31:31:Simulated Reflectance Factor for ABI GOES-17, Band-2::SRFA172 +32:32:Simulated Reflectance Factor for ABI GOES-17, Band-3::SRFA173 +33:33:Simulated Reflectance Factor for ABI GOES-17, Band-4::SRFA174 +34:34:Simulated Reflectance Factor for ABI GOES-17, Band-5::SRFA175 +35:35:Simulated Reflectance Factor for ABI GOES-17, Band-6::SRFA176 +36:36:Simulated Brightness Temperature for ABI GOES-17, Band-7:K:SBTA177 +37:37:Simulated Brightness Temperature for ABI GOES-17, Band-8:K:SBTA178 +38:38:Simulated Brightness Temperature for ABI GOES-17, Band-9:K:SBTA179 +39:39:Simulated Brightness Temperature for ABI GOES-17, Band-10:K:SBTA1710 +40:40:Simulated Brightness Temperature for ABI GOES-17, Band-11:K:SBTA1711 +41:41:Simulated Brightness Temperature for ABI GOES-17, Band-12:K:SBTA1712 +42:42:Simulated Brightness Temperature for ABI GOES-17, Band-13:K:SBTA1713 +43:43:Simulated Brightness Temperature for ABI GOES-17, Band-14:K:SBTA1714 +44:44:Simulated Brightness Temperature for ABI GOES-17, Band-15:K:SBTA1715 +45:45:Simulated Brightness Temperature for ABI GOES-17, Band-16:K:SBTA1716 +#46-191: Reserved #192-254 Reserved for Local Use 255:255:Missing \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.ldadhydro/res/spring/ldadhydro-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.ldadhydro/res/spring/ldadhydro-ingest.xml index ecc97822c6..9bc6e25997 100644 --- a/edexOsgi/com.raytheon.edex.plugin.ldadhydro/res/spring/ldadhydro-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.ldadhydro/res/spring/ldadhydro-ingest.xml @@ -17,16 +17,10 @@ - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.edex.plugin.ldadhydro/src/com/raytheon/edex/plugin/ldadhydro/dao/HydroDecoder.java b/edexOsgi/com.raytheon.edex.plugin.ldadhydro/src/com/raytheon/edex/plugin/ldadhydro/dao/HydroDecoder.java index 46865d1d68..6dd7550718 100644 --- a/edexOsgi/com.raytheon.edex.plugin.ldadhydro/src/com/raytheon/edex/plugin/ldadhydro/dao/HydroDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.ldadhydro/src/com/raytheon/edex/plugin/ldadhydro/dao/HydroDecoder.java @@ -49,7 +49,6 @@ import com.raytheon.edex.plugin.IBinaryDecoder; import com.raytheon.edex.plugin.ldad.common.DecodedData; import com.raytheon.edex.plugin.ldad.common.LdadField; import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.ldadhydro.HydroLdadRecord; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; @@ -70,6 +69,7 @@ import com.raytheon.uf.common.time.DataTime; * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * 10/16/13 DR 16685 M.Porricelli Add error checking for date * format + * Jul 23, 2014 3410 bclement location changed to floats * * * @author vkorolev @@ -169,12 +169,12 @@ public class HydroDecoder extends AbstractDecoder implements IBinaryDecoder { } } if (nn.equals("_lat")) { - double val = Double.parseDouble(vv); + float val = Float.parseFloat(vv); location.setLatitude(val); continue; } if (nn.equals("_lon")) { - double val = Double.parseDouble(vv); + float val = Float.parseFloat(vv); location.setLongitude(val); continue; } @@ -203,7 +203,6 @@ public class HydroDecoder extends AbstractDecoder implements IBinaryDecoder { DataTime dt = new DataTime(ot); record.setDataTime(dt); record.setLocation(location); - record.constructDataURI(); retVal.add(record); } // logger.info("-------------------------------------------------------"); @@ -219,8 +218,6 @@ public class HydroDecoder extends AbstractDecoder implements IBinaryDecoder { logger.error(traceId + " - SecurityException:" + e); } catch (IllegalArgumentException e) { logger.error(traceId + " - IllegalArgumentException:" + e); - } catch (PluginException e) { - logger.error(traceId + " - PluginException:" + e); } } return retVal.toArray(new PluginDataObject[retVal.size()]); @@ -242,14 +239,13 @@ public class HydroDecoder extends AbstractDecoder implements IBinaryDecoder { * @throws Throwable */ - @SuppressWarnings("unchecked") public void setProperty(String name, Object obj, String value, String vunit) { String prop = Character.toUpperCase(name.charAt(0)) + name.substring(1); String mname = "set" + prop; Object val = null; try { - Class cls = obj.getClass(); + Class cls = obj.getClass(); Field fld = cls.getDeclaredField(name); Class clazz = fld.getType(); // Type filter @@ -319,11 +315,10 @@ public class HydroDecoder extends AbstractDecoder implements IBinaryDecoder { } // List of Fields in record - @SuppressWarnings("unchecked") public static void main(String args[]) { HydroLdadRecord record = new HydroLdadRecord(); try { - Class cls = record.getClass(); + Class cls = record.getClass(); Field fieldlist[] = cls.getDeclaredFields(); for (Field fld : fieldlist) { diff --git a/edexOsgi/com.raytheon.edex.plugin.ldadmanual/res/spring/ldadmanual-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.ldadmanual/res/spring/ldadmanual-ingest.xml index 7d21714988..73ed78c047 100644 --- a/edexOsgi/com.raytheon.edex.plugin.ldadmanual/res/spring/ldadmanual-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.ldadmanual/res/spring/ldadmanual-ingest.xml @@ -15,15 +15,9 @@ - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualDecoder.java b/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualDecoder.java index 7b1ac16bec..7edcba9873 100644 --- a/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualDecoder.java @@ -48,7 +48,6 @@ import com.raytheon.edex.plugin.IBinaryDecoder; import com.raytheon.edex.plugin.ldad.common.DecodedData; import com.raytheon.edex.plugin.ldad.common.LdadField; import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.PathManagerFactory; @@ -66,6 +65,7 @@ import com.raytheon.uf.common.time.DataTime; * ------------ ---------- ----------- -------------------------- * Sep 30, 2009 vkorolev Initial creation * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jul 23, 2014 3410 bclement location changed to floats * * * @author vkorolev @@ -163,12 +163,12 @@ public class ManualDecoder extends AbstractDecoder implements IBinaryDecoder } } if (nn.equals("_lat")) { - double val = Double.parseDouble(vv); + float val = Float.parseFloat(vv); location.setLatitude(val); continue; } if (nn.equals("_lon")) { - double val = Double.parseDouble(vv); + float val = Float.parseFloat(vv); location.setLongitude(val); continue; } @@ -196,7 +196,6 @@ public class ManualDecoder extends AbstractDecoder implements IBinaryDecoder DataTime dt = new DataTime(ot); record.setDataTime(dt); record.setLocation(location); - record.constructDataURI(); retVal.add(record); // logger.info("-------------------------------------------------------"); } @@ -211,8 +210,6 @@ public class ManualDecoder extends AbstractDecoder implements IBinaryDecoder logger.error(traceId + " - SecurityException:" + e); } catch (IllegalArgumentException e) { logger.error(traceId + " - IllegalArgumentException:" + e); - } catch (PluginException e) { - logger.error(traceId + " - PluginException:" + e); } } return retVal.toArray(new PluginDataObject[retVal.size()]); diff --git a/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualLdadRecord.java b/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualLdadRecord.java index 55473e338e..cede204355 100644 --- a/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualLdadRecord.java +++ b/edexOsgi/com.raytheon.edex.plugin.ldadmanual/src/com/raytheon/edex/plugin/ldadmanual/dao/ManualLdadRecord.java @@ -20,17 +20,7 @@ package com.raytheon.edex.plugin.ldadmanual.dao; import java.util.Calendar; -import java.util.Collection; -import java.util.HashMap; -import javax.measure.quantity.Angle; -import javax.measure.quantity.Length; -import javax.measure.quantity.Pressure; -import javax.measure.quantity.Temperature; -import javax.measure.quantity.Velocity; -import javax.measure.unit.NonSI; -import javax.measure.unit.SI; -import javax.measure.unit.Unit; import javax.persistence.Access; import javax.persistence.AccessType; import javax.persistence.Column; @@ -47,7 +37,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.geospatial.ISpatialEnabled; @@ -63,15 +52,18 @@ import com.vividsolutions.jts.geom.Geometry; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ----------- ---------- ----------- -------------------------- - * Sep 30, 2009 vkorolev Initial creation - * Apr 04, 2013 1846 bkowal Added an index on refTime and - * forecastTime - * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. - * May 07, 2013 1869 bsteffen Remove dataURI column from - * PluginDataObject. - * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Sep 30, 2009 vkorolev Initial creation + * Apr 04, 2013 1846 bkowal Added an index on refTime and + * forecastTime + * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. + * May 07, 2013 1869 bsteffen Remove dataURI column from + * PluginDataObject. + * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable + * Jul 23, 2014 3410 bclement location changed to floats + * * * * @author vkorolev @@ -91,41 +83,10 @@ import com.vividsolutions.jts.geom.Geometry; @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public class ManualLdadRecord extends PluginDataObject implements - ISpatialEnabled, IDecoderGettable { + ISpatialEnabled { private static final long serialVersionUID = 1L; - public static final String OBS_TEXT = "text"; - - public static final Unit LENGTH_UNIT = SI.METER; - - public static final Unit TEMPERATURE_UNIT = SI.KELVIN; - - public static final Unit WIND_SPEED_UNIT = SI.METERS_PER_SECOND; - - public static final Unit WIND_DIR_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit PRESSURE_UNIT = SI.PASCAL; - - public static final Unit LOCATION_UNIT = NonSI.DEGREE_ANGLE; - - private static final HashMap PARM_MAP = new HashMap(); - static { - PARM_MAP.put("T", SFC_TEMP); - PARM_MAP.put("DpT", SFC_DWPT); - PARM_MAP.put("WS", SFC_WNDSPD); - PARM_MAP.put("WD", SFC_WNDDIR); - PARM_MAP.put("WGS", SFC_WNDGST); - PARM_MAP.put("ASET", "SFC.PRESS.ALTIMETER"); - PARM_MAP.put("PMSL", PRES_SLP); - PARM_MAP.put("NLAT", STA_LAT); - PARM_MAP.put("NLON", STA_LON); - PARM_MAP.put("STA", "STA"); - PARM_MAP.put("stationid", "STA"); - PARM_MAP.put("message", OBS_TEXT); - PARM_MAP.put(OBS_TEXT, OBS_TEXT); - } - // Time of the observation. @DataURI(position = 2) @Column @@ -2142,7 +2103,7 @@ public class ManualLdadRecord extends PluginDataObject implements * * @return The geometry latitude. */ - public Double getLatitude() { + public Float getLatitude() { return location.getLatitude(); } @@ -2151,7 +2112,7 @@ public class ManualLdadRecord extends PluginDataObject implements * * @return The geometry longitude. */ - public Double getLongitude() { + public Float getLongitude() { return location.getLongitude(); } @@ -2179,11 +2140,6 @@ public class ManualLdadRecord extends PluginDataObject implements this.location = location; } - @Override - public Amount getValue(String paramName) { - // TODO Auto-generated method stub - return null; - } /** * @return the timeObs @@ -2215,45 +2171,6 @@ public class ManualLdadRecord extends PluginDataObject implements return location; } - /** - * This class implements IDecoderGettable so return this instance. - * - * @return The reference to this instance. - */ - @Override - public IDecoderGettable getDecoderGettable() { - return this; - } - - /** - * - */ - @Override - public String getString(String paramName) { - String retValue = null; - String pName = PARM_MAP.get(paramName); - if ("STA".matches(pName)) { - retValue = getStationId(); - } else if (OBS_TEXT.equals(pName)) { - retValue = getStationId(); - } - - return retValue; - } - - @Override - public String[] getStrings(String paramName) { - return null; - } - - /** - * - */ - @Override - public Collection getValues(String paramName) { - return null; - } - /** * @param providerId * the providerId to set diff --git a/edexOsgi/com.raytheon.edex.plugin.ldadprofiler/res/spring/ldadprofiler-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.ldadprofiler/res/spring/ldadprofiler-ingest.xml index 5c3a0cb0d5..1907207071 100644 --- a/edexOsgi/com.raytheon.edex.plugin.ldadprofiler/res/spring/ldadprofiler-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.ldadprofiler/res/spring/ldadprofiler-ingest.xml @@ -19,15 +19,9 @@ - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest-metarshef.xml b/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest-metarshef.xml index 3fa8f85c54..d8aae45577 100644 --- a/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest-metarshef.xml +++ b/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest-metarshef.xml @@ -5,15 +5,8 @@ http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> - - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest.xml index 876404ccac..5547059240 100644 --- a/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.obs/res/spring/obs-ingest.xml @@ -1,8 +1,7 @@ + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> @@ -13,6 +12,22 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/ObsDecoder.java b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/ObsDecoder.java index b5799ce186..2f02246324 100644 --- a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/ObsDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/ObsDecoder.java @@ -32,7 +32,7 @@ import com.raytheon.uf.common.status.IPerformanceStatusHandler; import com.raytheon.uf.common.status.PerformanceStatus; import com.raytheon.uf.common.time.util.ITimer; import com.raytheon.uf.common.time.util.TimeUtil; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; /** * Decoder implementation for observation data types. This class provides a @@ -55,6 +55,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * status to decode. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Oct 23, 2013 2361 njensen Removed dead mesowest code + * May 14, 2014 2536 bclement moved WMO Header to common * * * @author bphillip @@ -122,12 +123,11 @@ public class ObsDecoder extends AbstractDecoder { */ private MetarDecoder getDecoderStrategy(byte[] messageData, Headers headers) throws DecoderException { - String message = new String(messageData).trim(); - // We can never be sure when this method is called so make sure // to null out the decoder strategy. MetarDecoder decoder = null; - WMOHeader header = new WMOHeader(messageData, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + WMOHeader header = new WMOHeader(messageData, fileName); if (header.isValid()) { if ('S' == header.getT1()) { switch (header.getT2()) { diff --git a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarDecoder.java b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarDecoder.java index 43617ece1d..616f39c708 100644 --- a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarDecoder.java @@ -37,11 +37,13 @@ import com.raytheon.uf.common.dataplugin.obs.metar.util.WeatherCondition; import com.raytheon.uf.common.pointdata.spatial.ObStation; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.decodertools.core.DecoderTools; import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; import com.raytheon.uf.edex.decodertools.time.TimeTools; import com.raytheon.uf.edex.pointdata.spatial.ObStationDao; -import com.raytheon.uf.edex.wmo.message.WMOHeader; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.GeometryFactory; import com.vividsolutions.jts.geom.Point; @@ -79,6 +81,11 @@ import com.vividsolutions.jts.geom.impl.CoordinateArraySequence; * Nov 11, 2008 1684 chammack Camel refactor. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Sep 17, 2013 2378 njensen Improve 3/6 hr precip decoding + * May 12, 2014 DR 17151 D. Friedman Fix 6hr min/max temp decoding. + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage + * Jul 23, 2014 3410 bclement location changed to floats + * Oct 02, 2014 3693 mapeters Added Pattern constants. + * * * * @author bphillip @@ -187,6 +194,14 @@ public class MetarDecoder extends AbstractDecoder { public static final Pattern SUNSHINE = Pattern .compile("(\\b)98(\\d{3}|///)"); + private static final Pattern AUTO = Pattern.compile(" AUTO"); + + private static final Pattern D4_NDV = Pattern.compile("\\d{4}NDV"); + + private static final Pattern D4_NSEW = Pattern.compile("\\d{4}[NSEW]"); + + private static final Pattern D4 = Pattern.compile("\\d{4}"); + private boolean useMockInfo = false; private ObStation mockInfo = null; @@ -216,11 +231,14 @@ public class MetarDecoder extends AbstractDecoder { List retVal = new ArrayList(); - Calendar baseTime = TimeTools.getSystemCalendar(); + Calendar baseTime = TimeUtil.newGmtCalendar(); WMOHeader wmoHdr = sep.getWMOHeader(); - if (TimeTools.allowArchive()) { + if (WMOTimeParser.allowArchive()) { if ((wmoHdr != null) && (wmoHdr.isValid())) { - baseTime = TimeTools.findDataTime(wmoHdr.getYYGGgg(), headers); + String fileName = (String) headers + .get(WMOHeader.INGEST_FILE_NAME); + baseTime = WMOTimeParser.findDataTime(wmoHdr.getYYGGgg(), + fileName); } else { logger.error("ARCHIVE MODE-No WMO Header found in file" + headers.get(WMOHeader.INGEST_FILE_NAME)); @@ -229,7 +247,6 @@ public class MetarDecoder extends AbstractDecoder { while (sep.hasNext()) { byte[] messageData = sep.next(); - Pattern thePattern; String message = new String(messageData); StringBuilder sbm = new StringBuilder(message); @@ -254,16 +271,17 @@ public class MetarDecoder extends AbstractDecoder { record.setMessageData(message); message = cleanMessage(message); - String trailingData = null; + String remarks = null; int cutPos = message.indexOf(" RMK "); if (cutPos >= 0) { - trailingData = message.substring(cutPos); + remarks = message.substring(cutPos); // Now truncate the message data. message = message.substring(0, cutPos); } else { - trailingData = message; + remarks = ""; } - trailingData = trailingData + " "; + StringBuilder trailingData = new StringBuilder(remarks); + trailingData.append(' '); StringBuilder obsMsg = new StringBuilder(message); @@ -280,8 +298,8 @@ public class MetarDecoder extends AbstractDecoder { ObStation station = getStationInfo(icao); if (station != null) { SurfaceObsLocation loc = new SurfaceObsLocation(icao); - Double lat = station.getGeometry().getY(); - Double lon = station.getGeometry().getX(); + float lat = (float) station.getGeometry().getY(); + float lon = (float) station.getGeometry().getX(); loc.assignLocation(lat, lon); loc.setElevation(station.getElevation()); @@ -299,7 +317,7 @@ public class MetarDecoder extends AbstractDecoder { Integer hr = DecoderTools.getInt(timeGroup, 2, 4); Integer mi = DecoderTools.getInt(timeGroup, 4, 6); if ((da != null) && (hr != null) && (mi != null)) { - obsTime = TimeTools.copy(baseTime); + obsTime = (Calendar) baseTime.clone(); obsTime.set(Calendar.DAY_OF_MONTH, da); obsTime.set(Calendar.HOUR_OF_DAY, hr); obsTime.set(Calendar.MINUTE, mi); @@ -326,7 +344,7 @@ public class MetarDecoder extends AbstractDecoder { // into the future Calendar obsTime = record.getTimeObs(); if (obsTime != null) { - Calendar currTime = TimeTools.copy(baseTime); + Calendar currTime = (Calendar) baseTime.clone(); // Do this only for archive mode!!! Otherwise valid data // will not pass if the WMO header @@ -335,7 +353,7 @@ public class MetarDecoder extends AbstractDecoder { // Observed time = dd1235 // To solve this will require greater precision in the file // timestamp. - if (TimeTools.allowArchive()) { + if (WMOTimeParser.allowArchive()) { currTime.add(Calendar.HOUR, 1); } currTime.add(Calendar.MINUTE, METAR_FUTURE_LIMIT); @@ -357,8 +375,7 @@ public class MetarDecoder extends AbstractDecoder { obsMsg.delete(0, cutPos); // Gets the correction notifier - thePattern = Pattern.compile(" AUTO"); - matcher = thePattern.matcher(obsMsg); + matcher = AUTO.matcher(obsMsg); if (matcher.find()) { obsMsg.delete(0, matcher.end()); } @@ -447,8 +464,7 @@ public class MetarDecoder extends AbstractDecoder { } } if (!foundVis) { - thePattern = Pattern.compile("\\d{4}NDV"); - matcher = thePattern.matcher(obsMsg); + matcher = D4_NDV.matcher(obsMsg); if (matcher.find()) { int start = matcher.start(); int end = matcher.end(); @@ -462,8 +478,7 @@ public class MetarDecoder extends AbstractDecoder { boolean sectorFound = true; while (sectorFound) { - thePattern = Pattern.compile("\\d{4}[NSEW]"); - matcher = thePattern.matcher(obsMsg); + matcher = D4_NSEW.matcher(obsMsg); if (matcher.find()) { int start = matcher.start(); int end = matcher.end(); @@ -478,8 +493,7 @@ public class MetarDecoder extends AbstractDecoder { } } - thePattern = Pattern.compile("\\d{4}"); - matcher = thePattern.matcher(obsMsg); + matcher = D4.matcher(obsMsg); if (matcher.find()) { int start = matcher.start(); if (start > 0) { @@ -712,7 +726,7 @@ public class MetarDecoder extends AbstractDecoder { hh = pkHHmm / 100; } Calendar obsT = record.getTimeObs(); - Calendar pkTim = TimeTools.copy(obsT); + Calendar pkTim = (Calendar) obsT.clone(); int obsMin = obsT.get(Calendar.MINUTE); int obsHr = obsT.get(Calendar.HOUR_OF_DAY); @@ -730,6 +744,7 @@ public class MetarDecoder extends AbstractDecoder { pkTim.add(Calendar.DAY_OF_MONTH, -1); } record.setPkWndTime(pkTim); + trailingData.delete(matcher.start(), matcher.end()); } // Gets the temperature and dew point in tenths precision @@ -923,8 +938,6 @@ public class MetarDecoder extends AbstractDecoder { record.setSunshine(value); } - record.constructDataURI(); - record.setWmoHeader(sep.getWMOHeader().getWmoHeader()); retVal.add(record); @@ -1055,7 +1068,7 @@ public class MetarDecoder extends AbstractDecoder { } String indent = " "; ArrayList parts = new ArrayList(); - int rmkPos = sb.indexOf("RMK"); + // int rmkPos = sb.indexOf("RMK"); parts.add(sb.toString()); // if(rmkPos > 0) { diff --git a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarPointDataTransform.java b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarPointDataTransform.java index ee1e76c41e..4d7f706a2e 100644 --- a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarPointDataTransform.java +++ b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarPointDataTransform.java @@ -31,6 +31,10 @@ import java.util.List; import java.util.Map; import java.util.Set; +import javax.measure.converter.UnitConverter; +import javax.measure.unit.NonSI; +import javax.measure.unit.SI; + import com.raytheon.edex.plugin.obs.ObsDao; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.obs.metar.MetarRecord; @@ -41,8 +45,7 @@ import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; /** * Provides a transform from MetarRecords to PointDataContainer and vice versa. @@ -61,6 +64,9 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * work without dataURI. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Dec 16, 2013 DR 16920 D. Friemdan Fix type of tempFromTenths access. + * May 14, 2014 2536 bclement removed TimeTools usage + * Jul 23, 2014 3410 bclement location changed to floats + * Sep 18, 2014 3627 mapeters Convert units using {@link UnitConverter}. * * * @@ -70,6 +76,9 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; public class MetarPointDataTransform { + public static final UnitConverter inToPa = NonSI.INCH_OF_MERCURY + .getConverterTo(SI.PASCAL); + public static final String ALTIMETER = "altimeter"; public static final String SEA_LEVEL_PRESS = "seaLevelPress"; @@ -388,8 +397,8 @@ public class MetarPointDataTransform { SurfaceObsLocation loc = new SurfaceObsLocation( pdv.getString(STATION_NAME)); - Double lat = pdv.getNumber(LATITUDE).doubleValue(); - Double lon = pdv.getNumber(LONGITUDE).doubleValue(); + float lat = pdv.getNumber(LATITUDE).floatValue(); + float lon = pdv.getNumber(LONGITUDE).floatValue(); loc.assignLocation(lat, lon); loc.setElevation(pdv.getNumber(ELEVATION).intValue()); mr.setLocation(loc); @@ -414,7 +423,7 @@ public class MetarPointDataTransform { mr.setSeaLevelPress(pdv.getNumber(SEA_LEVEL_PRESS).floatValue()); mr.setAltimeter(pdv.getNumber(ALTIMETER).floatValue()); - double pa = DecoderTools.inToPa(pdv.getNumber(ALTIMETER).doubleValue()); + double pa = inToPa.convert(pdv.getNumber(ALTIMETER).doubleValue()); mr.setAltimeterInPa((float) pa); mr.setPressChange3Hour(pdv.getNumber(PRESS_CHANGE3_HOUR).floatValue()); mr.setPressChangeChar(pdv.getString(PRESS_CHANGE_CHAR)); @@ -480,7 +489,7 @@ public class MetarPointDataTransform { mr.setPkWndSpd(pdv.getNumber(PK_WND_SPD).intValue()); long t = pdv.getNumber(PK_WND_TIME).longValue(); if (t >= 0) { - mr.setPkWndTime(TimeTools.newCalendar(t)); + mr.setPkWndTime(TimeUtil.newGmtCalendar(new Date(t))); } return mr; diff --git a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarSeparator.java b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarSeparator.java index 8e95cb6b37..9afdfbfea4 100644 --- a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarSeparator.java +++ b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/MetarSeparator.java @@ -39,7 +39,7 @@ import com.raytheon.edex.esb.Headers; import com.raytheon.edex.exception.DecoderException; import com.raytheon.edex.plugin.AbstractRecordSeparator; import com.raytheon.uf.common.util.StringUtil; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; /** * @@ -57,6 +57,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * 14Nov2006 71 Rockwood Implemented filter for NIL observations * 20080418 1093 jkorman Added filter for Alaskan "Airways" * observations. + * May 14, 2014 2536 bclement moved WMO Header to common, removed unused HEADERREGEX + * Oct 02, 2014 3693 mapeters Changed pattern String constants to Pattern constants. * * * @author bphillip @@ -74,18 +76,17 @@ public class MetarSeparator extends AbstractRecordSeparator { private final Log theLogger = LogFactory.getLog(getClass()); /** Regex used for separating multi-record files */ - private static final String ICAODATEPAIR = "\\p{Alnum}{4} (\\d{6}Z |(RMK )?NIL)"; + private static final Pattern ICAODATEPAIR = Pattern + .compile("\\p{Alnum}{4} (\\d{6}Z |(RMK )?NIL)"); /** Regex used for determining metar type */ - private static final String METARTYPE = "METAR|SPECI"; + private static final Pattern METARTYPE = Pattern.compile("METAR|SPECI"); - /** Regex used for extracting the header */ - private static final String HEADERREGEX = "[A-Z]{4}[0-9]{1,2} [A-Z]{4} [0-9]{6}"; - - private static final String AIRWAYS = "[A-Z][A-Z,0-9]{3} (SP|SA) \\d{4} AWOS"; + private static final Pattern AIRWAYS = Pattern + .compile("[A-Z][A-Z,0-9]{3} (SP|SA) \\d{4} AWOS"); /** Regex used to search for NIL messages */ - private static final String NILREGEX = "NIL"; + private static final Pattern NILREGEX = Pattern.compile("NIL"); /** The WMO header */ private WMOHeader header; @@ -181,8 +182,7 @@ public class MetarSeparator extends AbstractRecordSeparator { // header = matcher.group(); // } // Determines the type - Pattern pattern = Pattern.compile(METARTYPE); - Matcher matcher = pattern.matcher(message); + Matcher matcher = METARTYPE.matcher(message); if (matcher.find()) { type = matcher.group(); @@ -191,8 +191,7 @@ public class MetarSeparator extends AbstractRecordSeparator { } message = message.replaceAll(type, ""); - pattern = Pattern.compile(ICAODATEPAIR); - matcher = pattern.matcher(message); + matcher = ICAODATEPAIR.matcher(message); List bodyIndex = new ArrayList(); Map bodyMap = new HashMap(); @@ -220,7 +219,7 @@ public class MetarSeparator extends AbstractRecordSeparator { for (int i = 0; i < bodyIndex.size() - 1; i += 2) { String observation = message.substring(bodyIndex.get(i), bodyIndex.get(i + 1)); - matcher = pattern.matcher(observation); + matcher = ICAODATEPAIR.matcher(observation); if (matcher.find()) { // Get the key i.e. {ICAO|Date} String obsKey = matcher.group(); @@ -242,15 +241,13 @@ public class MetarSeparator extends AbstractRecordSeparator { // Check for old style AIRWAYS data from Alaskan stations. This // data will be at the end of valid METAR/SPECI data so just // remove it. - pattern = Pattern.compile(AIRWAYS); - matcher = pattern.matcher(observation); + matcher = AIRWAYS.matcher(observation); if (matcher.find()) { observation = observation.substring(0, matcher.start()); } // Check for NIL observations and, if found, throw out - pattern = Pattern.compile(NILREGEX); - matcher = pattern.matcher(observation); + matcher = NILREGEX.matcher(observation); if (!matcher.find()) { String record = header.getWmoHeader() + "\n" + type + " " + observation; records.add(record); diff --git a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/util/VisibilityParser.java b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/util/VisibilityParser.java index 06cd43f02f..ad93e259df 100644 --- a/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/util/VisibilityParser.java +++ b/edexOsgi/com.raytheon.edex.plugin.obs/src/com/raytheon/edex/plugin/obs/metar/util/VisibilityParser.java @@ -21,6 +21,7 @@ package com.raytheon.edex.plugin.obs.metar.util; import java.util.regex.Matcher; import java.util.regex.Pattern; + import javax.measure.converter.UnitConverter; import javax.measure.unit.NonSI; import javax.measure.unit.SI; @@ -29,17 +30,18 @@ import javax.measure.unit.SI; * TODO Add Description * *
- *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Jun 24, 2009            brockwoo     Initial creation
- *
+ * Oct 02, 2014 3693       mapeters     Made Patterns and UnitConverters constants.
+ * 
  * 
- * + * * @author brockwoo - * @version 1.0 + * @version 1.0 */ public class VisibilityParser { @@ -47,30 +49,34 @@ public class VisibilityParser { private String visibility; private double prevail_vsbySM; private String vsby_Dir; - private Pattern digitsOnly; - private Pattern twoDigitDir; - private Pattern oneDigitDir; - private Pattern parseNumber; - private UnitConverter meters2Miles; - private UnitConverter km2Miles; - private UnitConverter miles2Meters; - private UnitConverter miles2Km; + + private static final Pattern DIGITS_ONLY = Pattern.compile("^\\d+$"); + + private static final Pattern TWO_DIGIT_DIR = Pattern.compile("^[NS][EW]$"); + + private static final Pattern ONE_DIGIT_DIR = Pattern.compile("^[NSEW]$"); + + private static final Pattern PARSE_NUMBER = Pattern.compile("^(\\d+)\\D*$"); + + private static final UnitConverter METERS_TO_MILES = SI.METER + .getConverterTo(NonSI.MILE); + + private static final UnitConverter KM_TO_MILES = SI.KILOMETER + .getConverterTo(NonSI.MILE); + + private static final UnitConverter MILES_TO_METERS = NonSI.MILE + .getConverterTo(SI.METER); + + private static final UnitConverter MILES_TO_KM = NonSI.MILE + .getConverterTo(SI.KILOMETER); // MAX value taken from AWIPSI code private static final double MAX = 2147483647; public VisibilityParser() { - this.meters2Miles = SI.METER.getConverterTo(NonSI.MILE); - this.km2Miles = SI.KILOMETER.getConverterTo(NonSI.MILE); - this.miles2Meters = NonSI.MILE.getConverterTo(SI.METER); - this.miles2Km = NonSI.MILE.getConverterTo(SI.KILOMETER); this.visibility = new String(); this.prevail_vsbySM = 0.0; this.vsby_Dir = new String(); - this.digitsOnly = Pattern.compile("^\\d+$"); - this.twoDigitDir = Pattern.compile("^[NS][EW]$"); - this.oneDigitDir = Pattern.compile("^[NSEW]$"); - this.parseNumber = Pattern.compile("^(\\d+)\\D*$"); } public String getVisibility() { @@ -82,11 +88,11 @@ public class VisibilityParser { } public double getPrevail_vsbyKM() { - return this.miles2Km.convert(prevail_vsbySM); + return MILES_TO_KM.convert(prevail_vsbySM); } public double getPrevail_vsbyM() { - return this.miles2Meters.convert(prevail_vsbySM); + return MILES_TO_METERS.convert(prevail_vsbySM); } public String getVsby_Dir() { @@ -116,10 +122,10 @@ public class VisibilityParser { /* CHECK FOR VISIBILITY MEASURED IN KILOMETERS */ /***********************************************/ if((offset = vis[0].indexOf("KM")) != -1) { - Matcher km = digitsOnly.matcher(vis[0].substring(0, offset)); + Matcher km = DIGITS_ONLY.matcher(vis[0].substring(0, offset)); if(km.matches()) { this.prevail_vsbySM = - this.km2Miles.convert(prevailVSBY(vis[0])); + KM_TO_MILES.convert(prevailVSBY(vis[0])); this.visibility = vis[0]; return true; } @@ -133,9 +139,9 @@ public class VisibilityParser { /***********************************/ else if( (charOffset = vis[0].indexOf('/')) != -1 && (offset = vis[0].indexOf("SM")) != -1 ) { - Matcher num = digitsOnly.matcher(vis[0].substring(0, charOffset)); + Matcher num = DIGITS_ONLY.matcher(vis[0].substring(0, charOffset)); Matcher den = - digitsOnly.matcher(vis[0].substring(charOffset+1, offset)); + DIGITS_ONLY.matcher(vis[0].substring(charOffset+1, offset)); if(num.matches() && den.matches()) { this.prevail_vsbySM = prevailVSBY(vis[0]); this.visibility = vis[0]; @@ -149,7 +155,7 @@ public class VisibilityParser { /* IN WHOLE STATUTE MILES */ /***********************************/ else if((offset = vis[0].indexOf("SM")) != -1) { - Matcher sm = digitsOnly.matcher(vis[0].substring(0, offset)); + Matcher sm = DIGITS_ONLY.matcher(vis[0].substring(0, offset)); if(sm.matches()) { prevail_vsbySM = prevailVSBY(vis[0]); this.visibility = vis[0]; @@ -165,7 +171,7 @@ public class VisibilityParser { /* MILES */ /***********************************/ else if( vis[0].length() < 4 ) { - Matcher wholeNumber = digitsOnly.matcher(vis[0]); + Matcher wholeNumber = DIGITS_ONLY.matcher(vis[0]); if(!wholeNumber.matches()) { return false; } @@ -177,9 +183,9 @@ public class VisibilityParser { if( (charOffset = vis[1].indexOf('/')) != -1 && (offset = vis[1].indexOf("SM")) != -1 ) { Matcher num = - digitsOnly.matcher(vis[1].substring(0, charOffset)); + DIGITS_ONLY.matcher(vis[1].substring(0, charOffset)); Matcher den = - digitsOnly.matcher(vis[1].substring(charOffset+1, offset)); + DIGITS_ONLY.matcher(vis[1].substring(charOffset+1, offset)); if( num.matches() && den.matches() ) { prevail_vsbySM = prevailVSBY(vis[1]); @@ -200,20 +206,20 @@ public class VisibilityParser { /* IN METERS WITH OR WITHOUT DI- */ /* RECTION OF OBSERVATION */ /***********************************/ - Matcher firstFourChar = digitsOnly.matcher(vis[0].substring(0, 4)); + Matcher firstFourChar = DIGITS_ONLY.matcher(vis[0].substring(0, 4)); if(!firstFourChar.matches()) { return false; } if(vis[0].length() == 6) { String dir = vis[0].substring(4, 6); - if(this.twoDigitDir.matcher(dir).matches()) { + if (TWO_DIGIT_DIR.matcher(dir).matches()) { vsby_Dir = dir; } } else if(vis[0].length() == 5) { String dir = vis[0].substring(4, 5); - if(this.oneDigitDir.matcher(dir).matches()) { + if (ONE_DIGIT_DIR.matcher(dir).matches()) { vsby_Dir = dir; } } @@ -223,7 +229,7 @@ public class VisibilityParser { if( visValue >= 50f && visValue <= 500f && (visValue % 50) == 0 ) { - this.prevail_vsbySM = this.meters2Miles.convert(visValue); + this.prevail_vsbySM = METERS_TO_MILES.convert(visValue); this.visibility = vis[0]; return true; } @@ -231,7 +237,7 @@ public class VisibilityParser { visValue <= 3000.0f && (visValue % 100) == 0 ) { - prevail_vsbySM = this.meters2Miles.convert(visValue); + prevail_vsbySM = METERS_TO_MILES.convert(visValue); this.visibility = vis[0]; return true; } @@ -239,7 +245,7 @@ public class VisibilityParser { visValue <= 3000.0f && (visValue % 100) == 0 ) { - prevail_vsbySM = this.meters2Miles.convert(visValue); + prevail_vsbySM = METERS_TO_MILES.convert(visValue); this.visibility = vis[0]; return true; } @@ -247,7 +253,7 @@ public class VisibilityParser { visValue <= 5000.0f && (visValue % 500) == 0 ) { - this.prevail_vsbySM = this.meters2Miles.convert(visValue); + this.prevail_vsbySM = METERS_TO_MILES.convert(visValue); this.visibility = vis[0]; return true; } @@ -256,7 +262,7 @@ public class VisibilityParser { (visValue % 500) == 0 || visValue == 9999 ) { - this.prevail_vsbySM = this.meters2Miles.convert(visValue); + this.prevail_vsbySM = METERS_TO_MILES.convert(visValue); this.visibility = vis[0]; return true; } @@ -272,7 +278,7 @@ public class VisibilityParser { if(vis.length() < 0) { return MAX; } - Matcher number = this.parseNumber.matcher(vis); + Matcher number = PARSE_NUMBER.matcher(vis); if(number.matches()) { return Double.valueOf(number.group(1)); } diff --git a/edexOsgi/com.raytheon.edex.plugin.poessounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.poessounding/META-INF/MANIFEST.MF index 0c26b29572..a2a67db9a1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.poessounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.poessounding/META-INF/MANIFEST.MF @@ -2,8 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Poessounding Plug-in Bundle-SymbolicName: com.raytheon.edex.plugin.poessounding -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", @@ -13,11 +12,15 @@ Require-Bundle: com.raytheon.edex.common, javax.persistence Export-Package: com.raytheon.edex.plugin.poessounding, com.raytheon.edex.plugin.poessounding.decoder -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.dataplugin.poessounding, com.raytheon.uf.common.geospatial.spi, com.raytheon.uf.common.pointdata, com.raytheon.uf.common.pointdata.spatial, com.raytheon.uf.common.status, + com.raytheon.uf.common.wmo, + com.raytheon.uf.edex.bufrtools, + com.raytheon.uf.edex.bufrtools.descriptors, + com.raytheon.uf.edex.bufrtools.packets, com.raytheon.uf.edex.pointdata, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.edex.plugin.poessounding/res/spring/poessounding-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.poessounding/res/spring/poessounding-ingest.xml index a5acee9edc..70b7d67a9b 100644 --- a/edexOsgi/com.raytheon.edex.plugin.poessounding/res/spring/poessounding-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.poessounding/res/spring/poessounding-ingest.xml @@ -12,15 +12,9 @@ - - - - + errorHandlerRef="errorHandler"> - - - - - + errorHandlerRef="errorHandler"> - + radar-sbn - @@ -74,14 +70,17 @@ + com.raytheon.uf.common.dataplugin.exception.MalformedDataException + + + java.lang.Throwable - +
- + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/res/spring/radar-request.xml b/edexOsgi/com.raytheon.edex.plugin.radar/res/spring/radar-request.xml index fa8c7bb5a4..75a36c1153 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/res/spring/radar-request.xml +++ b/edexOsgi/com.raytheon.edex.plugin.radar/res/spring/radar-request.xml @@ -14,6 +14,12 @@ + + + + + + diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/RadarDecoder.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/RadarDecoder.java index 586451a579..973a104598 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/RadarDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/RadarDecoder.java @@ -73,12 +73,12 @@ import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.common.time.util.ITimer; import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.common.wmo.AFOSProductId; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterTask; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.AFOSProductId; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Decoder implementation for radar plugin @@ -97,6 +97,9 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * added status to decode. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Oct 09, 2013 2457 bsteffen Improve error message for missing icao. + * Jan 21, 2014 2627 njensen Removed decode()'s try/catch, camel route will do try/catch + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage + * * * * @author bphillip @@ -172,7 +175,7 @@ public class RadarDecoder extends AbstractDecoder { * @throws DecoderException */ public PluginDataObject[] decode(byte[] messageData, Headers headers) - throws DecoderException { + throws Exception { if (headers != null) { traceId = (String) headers.get("traceId"); } @@ -181,270 +184,263 @@ public class RadarDecoder extends AbstractDecoder { // decode the product String arch = new String(messageData, 0, 4); - try { - ITimer timer = TimeUtil.getTimer(); - timer.start(); - // for level2 data, this does not happen very often - if (LEVEL_TWO_IDENTS.contains(arch)) { - decodeLevelTwoData(messageData, recordList); + ITimer timer = TimeUtil.getTimer(); + + timer.start(); + // for level2 data, this does not happen very often + if (LEVEL_TWO_IDENTS.contains(arch)) { + decodeLevelTwoData(messageData, recordList); + } + // for free text messages, which come in with the following wmo + else if (NOUS.equals(arch)) { + decodeFreeTextMessage(messageData, headers); + } else { + if (headers.get("header") != null) { + // handle an interesting special case + String wmoHeader = headers.get("header").toString(); + if (wmoHeader.contains("SDUS4")) { + String fileName = (String) headers + .get(WMOHeader.INGEST_FILE_NAME); + WMOHeader header = new WMOHeader(wmoHeader.getBytes(), + fileName); + String dataString = new String(messageData, 0, + messageData.length).substring(1, + messageData.length - 1); + String siteId = dataString.substring(0, 3); + AFOSProductId afos = new AFOSProductId("WSR", "ROB", siteId); + // store the product ROB that is barely do-able + Calendar cal = (WMOTimeParser.allowArchive() ? header + .getHeaderDate() : Calendar.getInstance()); + RadarEdexTextProductUtil.storeTextProduct(afos, header, + dataString, true, cal); + return new PluginDataObject[0]; + } } - // for free text messages, which come in with the following wmo - else if (NOUS.equals(arch)) { - decodeFreeTextMessage(messageData, headers); + Level3BaseRadar l3Radar = new Level3BaseRadar(messageData, headers, + infoDict); + RadarRecord record = new RadarRecord(); + record.setProductCode(l3Radar.getMessageCode()); + record.setDataTime(new DataTime(l3Radar.getMessageTimestamp())); + RadarStation station = RadarSpatialUtil + .getRadarStationByRpgIdDec(l3Radar.getSourceId()); + if (station == null) { + record.setIcao("unkn"); + logger.error(headers.get("ingestfilename") + + " contains an rpg id(" + l3Radar.getSourceId() + + ") that is not in the radar_spatial table."); } else { - if (headers.get("header") != null) { - // handle an interesting special case - String wmoHeader = headers.get("header").toString(); - if (wmoHeader.contains("SDUS4")) { - WMOHeader header = new WMOHeader(wmoHeader.getBytes(), - headers); - String dataString = new String(messageData, 0, - messageData.length).substring(1, - messageData.length - 1); - String siteId = dataString.substring(0, 3); - AFOSProductId afos = new AFOSProductId("WSR", "ROB", - siteId); - // store the product ROB that is barely do-able - Calendar cal = (TimeTools.allowArchive() ? header - .getHeaderDate() : Calendar.getInstance()); - RadarEdexTextProductUtil.storeTextProduct(afos, header, - dataString, true, cal); - return new PluginDataObject[0]; - } - } - Level3BaseRadar l3Radar = new Level3BaseRadar(messageData, - headers, infoDict); - RadarRecord record = new RadarRecord(); - record.setProductCode(l3Radar.getMessageCode()); - record.setDataTime(new DataTime(l3Radar.getMessageTimestamp())); - RadarStation station = RadarSpatialUtil - .getRadarStationByRpgIdDec(l3Radar.getSourceId()); - if (station == null) { - record.setIcao("unkn"); - logger.error(headers.get("ingestfilename") - + " contains an rpg id(" + l3Radar.getSourceId() - + ") that is not in the radar_spatial table."); - } else { - record.setIcao(station.getRdaId().toLowerCase()); - } - - record.setLocation(station); - - RadarInfo info = infoDict.getInfo(record.getProductCode()); - if (info == null) { - theHandler.handle( - Priority.ERROR, - "Unknown radar product code: " - + record.getProductCode() + " for " - + headers.get("ingestfilename")); - return new PluginDataObject[0]; - } - record.setFormat(info.getFormat()); - record.setNumLevels(info.getNumLevels()); - record.setGateResolution(info.getResolution()); - record.setMnemonic(info.getMnemonic()); - record.setDisplayModes(info.getDisplayModes()); - record.setUnit(info.getUnit()); - - // -- some product specific decode functionality -- - // the general status message product - if (l3Radar.getMessageCode() == l3Radar.GSM_MESSAGE) { - record.setGsmMessage(l3Radar.getGsmBlock().getMessage()); - record.setPrimaryElevationAngle(0.0); - record.setTrueElevationAngle(0.0f); - handleRadarStatus(record); - } - // the product request response product - else if (l3Radar.getMessageCode() == l3Radar.PRODUCT_REQUEST_RESPONSE_MESSAGE) { - // do nothing with this, it will get excessive otherwise! - return new PluginDataObject[0]; - } - // the user alert message product - else if (l3Radar.getMessageCode() == USER_ALERT_MESSAGE) { - EDEXUtil.sendMessageAlertViz(Priority.VERBOSE, - RadarConstants.PLUGIN_ID, EDEX, RADAR, - record.getIcao() + ": User Alert Message Received", - l3Radar.getTabularBlock().toString(), null); - return new PluginDataObject[0]; - } - // handle the other case for free text message - else if (l3Radar.getMessageCode() == FREE_TEXT_MESSAGE) { - // product already stored to the text database, so just send - // to alertviz - String formattedMsg = l3Radar.getTabularBlock().toString() - .replace("Page 1\n\t", ""); - EDEXUtil.sendMessageAlertViz(Priority.SIGNIFICANT, - RadarConstants.PLUGIN_ID, EDEX, RADAR, - record.getIcao() + ": Free Text Message Received", - formattedMsg, null); - return new PluginDataObject[0]; - } - // the alert adaptations parameters product - else if (l3Radar.getMessageCode() == l3Radar.ALERT_ADAPTATION_PARAMETERS) { - record.setAapMessage(l3Radar.getAapMessage()); - record.setPrimaryElevationAngle(0.0); - record.setTrueElevationAngle(0.0f); - EDEXUtil.sendMessageAlertViz( - Priority.VERBOSE, - RadarConstants.PLUGIN_ID, - EDEX, - RADAR, - record.getIcao() - + ": Alert Adapation Parameter Message Received", - l3Radar.getAapMessage().toString(), null); - } - // the alert message product - else if (l3Radar.getMessageCode() == l3Radar.ALERT_MESSAGE) { - record.setPrimaryElevationAngle(0.0); - record.setTrueElevationAngle(0.0f); - AlertMessage msg = l3Radar.getAlertMessage(); - String details = "Alert Area : " + msg.getAlertAreaNum() - + "\n"; - details += "Position : " + msg.getGridBoxAz() - + " deg\nRange : " + msg.getGridBoxRange() + "nm\n"; - String category = AlertCategory.values()[msg - .getAlertCategory()].toString(); - category = category.substring(category.indexOf("_")); - category = category.replaceAll("_", " "); - details += "Alert Category : " + category + "\n"; - details += "Threshold : " + msg.getThresholdValue() + "\n"; - details += "Exceeding : " + msg.getExceedingValue() + "\n"; - details += "Storm Cell ID :" + msg.getStormId() + "\n"; - record.setAlertMessage(msg); - EDEXUtil.sendMessageAlertViz(Priority.SIGNIFICANT, - RadarConstants.PLUGIN_ID, EDEX, RADAR, - record.getIcao() + ": Alert Message Received", - details, null); - } else { - record.setLatitude((float) l3Radar.getLatitude()); - record.setLongitude((float) l3Radar.getLongitude()); - record.setElevation((float) l3Radar.getHeight()); - record.setVolumeCoveragePattern(l3Radar - .getVolumeCoveragePattern()); - record.setOperationalMode(l3Radar.getOperationalMode()); - - record.setElevationNumber(l3Radar.getElevationNumber()); - // some products don't have real elevation angles, 0 is a - // default value - if (record.getElevationNumber() == 0) { - record.setTrueElevationAngle(0f); - } else { - record.setTrueElevationAngle(l3Radar - .getProductDependentValue(2) * 0.1f); - } - - // determine to use the primary elevations or the elevation - // in the terminal radar configuration file - if (TerminalRadarUtils.isTerminalRadar(record.getIcao())) { - Double elevation = TerminalRadarUtils.getPrimarysMap( - record.getIcao()).get( - TiltAngleBin.getPrimaryElevationAngle(record - .getTrueElevationAngle())); - if (elevation != null) { - record.setPrimaryElevationAngle(elevation - .doubleValue()); - } else { - // fall back - record.setPrimaryElevationAngle(record - .getTrueElevationAngle().doubleValue()); - } - } else { - record.setPrimaryElevationAngle(TiltAngleBin - .getPrimaryElevationAngle(record - .getTrueElevationAngle())); - } - - // code specific for clutter filter control - if (record.getProductCode() == CLUTTER_FILTER_CONTROL) { - int segment = ((int) (Math.log(l3Radar - .getProductDependentValue(0)) / Math.log(2))); - record.setLayer((double) segment); - } - // code specific for user select accum - else if (record.getProductCode() == USER_SELECT_ACCUM) { - int layer = 0; // Default to zero - - int timeSpan = l3Radar.getProductDependentValue(1); - if (timeSpan == 60) { - layer = 1; - } else if (timeSpan == 120) { - layer = 2; - } else if (timeSpan == 180) { - layer = 3; - } else if (timeSpan == 360) { - layer = 4; - } else if (timeSpan == 720) { - layer = 5; - } else if (timeSpan == 1440) { - layer = 6; - } else { - layer = 0; - } - record.setLayer((double) layer); - } - - // handle times because radar times are sent out in batches - // (a volume scan) and we want the volume scan time to be - // part of the data uri - if (l3Radar.getVolumeScanTime() != null) { - record.setDataTime(new DataTime(l3Radar - .getVolumeScanTime().getTime())); - record.setVolScanTime(l3Radar - .getProductGenerationTime().getTime()); - } else { - record.setDataTime(new DataTime(l3Radar - .getMessageTimestamp().getTime())); - record.setVolScanTime(l3Radar.getMessageTimestamp() - .getTime()); - } - - // thresholds specific per product and site - if (l3Radar.getDataLevelThresholds() != null) { - for (int i = 0; i < 16; ++i) { - record.setThreshold(i, - l3Radar.getDataLevelThreshold(i)); - } - } - // values that are product dependent as defined in the ICD - record.setProductDependentValues(l3Radar - .getProductDependentValue()); - - processSymbologyBlock(record, l3Radar.getSymbologyBlock()); - - GraphicBlock gb = l3Radar.getGraphicBlock(); - record.setGraphicBlock(gb); - - // Tabular block is where most of the text values are... - TabularBlock tb = l3Radar.getTabularBlock(); - if (tb != null) { - // complicated, but makes for logical access to needed - // elements - HashMap>> map = new HashMap>>(); - HashMap> recordVals = new HashMap>(); - RadarTabularBlockParser.parseTabularBlock(tb, - record.getProductCode(), map, recordVals); - record.setProductVals(map); - record.setMapRecordVals(recordVals); - record.setTabularBlock(tb); - } - } - - try { - finalizeRecord(record); - } catch (PluginException e) { - logger.error(e); - return new PluginDataObject[0]; - } - - timer.stop(); - perfLog.logDuration("Time to Decode", timer.getElapsedTime()); - - recordList.add(record); + record.setIcao(station.getRdaId().toLowerCase()); } - } catch (Exception e) { - theHandler.handle(Priority.ERROR, "Couldn't properly handle " - + headers.get("ingestfilename"), e); + + record.setLocation(station); + + RadarInfo info = infoDict.getInfo(record.getProductCode()); + if (info == null) { + theHandler.handle( + Priority.ERROR, + "Unknown radar product code: " + + record.getProductCode() + " for " + + headers.get("ingestfilename")); + return new PluginDataObject[0]; + } + record.setFormat(info.getFormat()); + record.setNumLevels(info.getNumLevels()); + record.setGateResolution(info.getResolution()); + record.setMnemonic(info.getMnemonic()); + record.setDisplayModes(info.getDisplayModes()); + record.setUnit(info.getUnit()); + + // -- some product specific decode functionality -- + // the general status message product + if (l3Radar.getMessageCode() == Level3BaseRadar.GSM_MESSAGE) { + record.setGsmMessage(l3Radar.getGsmBlock().getMessage()); + record.setPrimaryElevationAngle(0.0); + record.setTrueElevationAngle(0.0f); + handleRadarStatus(record); + } + // the product request response product + else if (l3Radar.getMessageCode() == l3Radar.PRODUCT_REQUEST_RESPONSE_MESSAGE) { + // do nothing with this, it will get excessive otherwise! + return new PluginDataObject[0]; + } + // the user alert message product + else if (l3Radar.getMessageCode() == USER_ALERT_MESSAGE) { + EDEXUtil.sendMessageAlertViz(Priority.VERBOSE, + RadarConstants.PLUGIN_ID, EDEX, RADAR, record.getIcao() + + ": User Alert Message Received", l3Radar + .getTabularBlock().toString(), null); + return new PluginDataObject[0]; + } + // handle the other case for free text message + else if (l3Radar.getMessageCode() == FREE_TEXT_MESSAGE) { + // product already stored to the text database, so just send + // to alertviz + String formattedMsg = l3Radar.getTabularBlock().toString() + .replace("Page 1\n\t", ""); + EDEXUtil.sendMessageAlertViz(Priority.SIGNIFICANT, + RadarConstants.PLUGIN_ID, EDEX, RADAR, record.getIcao() + + ": Free Text Message Received", formattedMsg, + null); + return new PluginDataObject[0]; + } + // the alert adaptations parameters product + else if (l3Radar.getMessageCode() == l3Radar.ALERT_ADAPTATION_PARAMETERS) { + record.setAapMessage(l3Radar.getAapMessage()); + record.setPrimaryElevationAngle(0.0); + record.setTrueElevationAngle(0.0f); + EDEXUtil.sendMessageAlertViz( + Priority.VERBOSE, + RadarConstants.PLUGIN_ID, + EDEX, + RADAR, + record.getIcao() + + ": Alert Adapation Parameter Message Received", + l3Radar.getAapMessage().toString(), null); + } + // the alert message product + else if (l3Radar.getMessageCode() == l3Radar.ALERT_MESSAGE) { + record.setPrimaryElevationAngle(0.0); + record.setTrueElevationAngle(0.0f); + AlertMessage msg = l3Radar.getAlertMessage(); + String details = "Alert Area : " + msg.getAlertAreaNum() + "\n"; + details += "Position : " + msg.getGridBoxAz() + + " deg\nRange : " + msg.getGridBoxRange() + "nm\n"; + String category = AlertCategory.values()[msg.getAlertCategory()] + .toString(); + category = category.substring(category.indexOf("_")); + category = category.replaceAll("_", " "); + details += "Alert Category : " + category + "\n"; + details += "Threshold : " + msg.getThresholdValue() + "\n"; + details += "Exceeding : " + msg.getExceedingValue() + "\n"; + details += "Storm Cell ID :" + msg.getStormId() + "\n"; + record.setAlertMessage(msg); + EDEXUtil.sendMessageAlertViz(Priority.SIGNIFICANT, + RadarConstants.PLUGIN_ID, EDEX, RADAR, record.getIcao() + + ": Alert Message Received", details, null); + } else { + record.setLatitude((float) l3Radar.getLatitude()); + record.setLongitude((float) l3Radar.getLongitude()); + record.setElevation((float) l3Radar.getHeight()); + record.setVolumeCoveragePattern(l3Radar + .getVolumeCoveragePattern()); + record.setOperationalMode(l3Radar.getOperationalMode()); + + record.setElevationNumber(l3Radar.getElevationNumber()); + // some products don't have real elevation angles, 0 is a + // default value + if (record.getElevationNumber() == 0) { + record.setTrueElevationAngle(0f); + } else { + record.setTrueElevationAngle(l3Radar + .getProductDependentValue(2) * 0.1f); + } + + // determine to use the primary elevations or the elevation + // in the terminal radar configuration file + if (TerminalRadarUtils.isTerminalRadar(record.getIcao())) { + Double elevation = TerminalRadarUtils.getPrimarysMap( + record.getIcao()).get( + TiltAngleBin.getPrimaryElevationAngle(record + .getTrueElevationAngle())); + if (elevation != null) { + record.setPrimaryElevationAngle(elevation.doubleValue()); + } else { + // fall back + record.setPrimaryElevationAngle(record + .getTrueElevationAngle().doubleValue()); + } + } else { + record.setPrimaryElevationAngle(TiltAngleBin + .getPrimaryElevationAngle(record + .getTrueElevationAngle())); + } + + // code specific for clutter filter control + if (record.getProductCode() == CLUTTER_FILTER_CONTROL) { + int segment = ((int) (Math.log(l3Radar + .getProductDependentValue(0)) / Math.log(2))); + record.setLayer((double) segment); + } + // code specific for user select accum + else if (record.getProductCode() == USER_SELECT_ACCUM) { + int layer = 0; // Default to zero + + int timeSpan = l3Radar.getProductDependentValue(1); + if (timeSpan == 60) { + layer = 1; + } else if (timeSpan == 120) { + layer = 2; + } else if (timeSpan == 180) { + layer = 3; + } else if (timeSpan == 360) { + layer = 4; + } else if (timeSpan == 720) { + layer = 5; + } else if (timeSpan == 1440) { + layer = 6; + } else { + layer = 0; + } + record.setLayer((double) layer); + } + + // handle times because radar times are sent out in batches + // (a volume scan) and we want the volume scan time to be + // part of the data uri + if (l3Radar.getVolumeScanTime() != null) { + record.setDataTime(new DataTime(l3Radar.getVolumeScanTime() + .getTime())); + record.setVolScanTime(l3Radar.getProductGenerationTime() + .getTime()); + } else { + record.setDataTime(new DataTime(l3Radar + .getMessageTimestamp().getTime())); + record.setVolScanTime(l3Radar.getMessageTimestamp() + .getTime()); + } + + // thresholds specific per product and site + if (l3Radar.getDataLevelThresholds() != null) { + for (int i = 0; i < 16; ++i) { + record.setThreshold(i, l3Radar.getDataLevelThreshold(i)); + } + } + // values that are product dependent as defined in the ICD + record.setProductDependentValues(l3Radar + .getProductDependentValue()); + + processSymbologyBlock(record, l3Radar.getSymbologyBlock()); + + GraphicBlock gb = l3Radar.getGraphicBlock(); + record.setGraphicBlock(gb); + + // Tabular block is where most of the text values are... + TabularBlock tb = l3Radar.getTabularBlock(); + if (tb != null) { + // complicated, but makes for logical access to needed + // elements + HashMap>> map = new HashMap>>(); + HashMap> recordVals = new HashMap>(); + RadarTabularBlockParser.parseTabularBlock(tb, + record.getProductCode(), map, recordVals); + record.setProductVals(map); + record.setMapRecordVals(recordVals); + record.setTabularBlock(tb); + } + } + + try { + finalizeRecord(record); + } catch (PluginException e) { + logger.error(e); + return new PluginDataObject[0]; + } + + timer.stop(); + perfLog.logDuration("Time to Decode", timer.getElapsedTime()); + + recordList.add(record); } return recordList.toArray(new PluginDataObject[recordList.size()]); @@ -523,7 +519,8 @@ public class RadarDecoder extends AbstractDecoder { private void decodeFreeTextMessage(byte[] messageData, Headers headers) { String temp = new String(messageData); temp = temp.substring(0, temp.length() - 4); - WMOHeader header = new WMOHeader(messageData, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + WMOHeader header = new WMOHeader(messageData, fileName); temp = temp.replace(header.toString(), ""); String[] splits = temp.split(" "); @@ -532,7 +529,7 @@ public class RadarDecoder extends AbstractDecoder { splits[1].substring(1))); // store the product to the text database - Calendar cal = (TimeTools.allowArchive() ? header.getHeaderDate() + Calendar cal = (WMOTimeParser.allowArchive() ? header.getHeaderDate() : Calendar.getInstance()); RadarEdexTextProductUtil .storeTextProduct(afos, header, temp, true, cal); @@ -545,8 +542,7 @@ public class RadarDecoder extends AbstractDecoder { private void finalizeRecord(RadarRecord record) throws PluginException { record.setTraceId(traceId); - record.constructDataURI(); - record.setInsertTime(TimeTools.getSystemCalendar()); + record.setInsertTime(TimeUtil.newGmtCalendar()); // for GSM, we want all the messages as they have the possibility of // being different if (record.getProductCode() == Level3BaseRadar.GSM_MESSAGE) { diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarDao.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarDao.java index cf7c22c7d5..70ec621eb9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarDao.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarDao.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -22,7 +22,7 @@ package com.raytheon.edex.plugin.radar.dao; /** * Data Access Object implementation for accessing radar data - * + * *
  * SOFTWARE HISTORY
  * Date         Ticket#    Engineer    Description
@@ -30,14 +30,15 @@ package com.raytheon.edex.plugin.radar.dao;
  * Feb 06, 2009 1990       bphillip    Initial creation
  * Mar 18, 2013 1804       bsteffen    Reduce useless data stored in radar hdf5
  * Aug 30, 2013 2298       rjpeter     Make getPluginName abstract
- * 
+ * Aug 14, 2014 3393       nabowle     Remove broken getFullRecord override.
+ * Aug 19, 2014 3393       nabowle     Default constructor.
+ *
  * 
- * + * * @author bphillip * @version 1.0 */ import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; @@ -48,10 +49,6 @@ import com.raytheon.uf.common.dataplugin.radar.RadarDataKey; import com.raytheon.uf.common.dataplugin.radar.RadarDataPoint; import com.raytheon.uf.common.dataplugin.radar.RadarRecord; import com.raytheon.uf.common.dataplugin.radar.RadarStoredData; -import com.raytheon.uf.common.dataplugin.radar.level3.GSMBlock.GSMMessage; -import com.raytheon.uf.common.dataplugin.radar.level3.GraphicBlock; -import com.raytheon.uf.common.dataplugin.radar.level3.SymbologyBlock; -import com.raytheon.uf.common.dataplugin.radar.util.RadarConstants; import com.raytheon.uf.common.dataplugin.radar.util.RadarConstants.MapValues; import com.raytheon.uf.common.dataplugin.radar.util.RadarDataRetriever; import com.raytheon.uf.common.datastorage.IDataStore; @@ -62,17 +59,24 @@ import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.datastorage.records.ShortDataRecord; import com.raytheon.uf.common.serialization.DynamicSerializationManager; import com.raytheon.uf.common.serialization.DynamicSerializationManager.SerializationType; -import com.raytheon.uf.common.serialization.SerializationException; -import com.raytheon.uf.common.serialization.SerializationUtil; import com.raytheon.uf.edex.core.dataplugin.PluginRegistry; import com.raytheon.uf.edex.database.plugin.PluginDao; -import com.raytheon.uf.edex.database.query.DatabaseQuery; public class RadarDao extends PluginDao { + /** + * Creates a new radar dao. Equivalent to RadarDao("radar"). + * + * @throws PluginException + * If the dao cannot be initialized + */ + public RadarDao() throws PluginException { + super("radar"); + } + /** * Creates a new radar dao - * + * * @param pluginName * "radar" * @throws PluginException @@ -270,38 +274,6 @@ public class RadarDao extends PluginDao { return retVal; } - @Override - public PluginDataObject[] getFullRecord(DatabaseQuery query, int tile) - throws PluginException { - PluginDataObject[] queryResults = getMetadata(query); - for (PluginDataObject obj : queryResults) { - RadarRecord record = (RadarRecord) obj; - IDataRecord[] hdf5Data = getHDF5Data(record, tile); - record.setMessageData(hdf5Data[0].getDataObject()); - record.setAngleData((float[]) hdf5Data[1].getDataObject()); - record.setThresholds((short[]) hdf5Data[2].getDataObject()); - record.setProductDependentValues((short[]) hdf5Data[8] - .getDataObject()); - - record.setProductVals((HashMap>>) hdf5Data[5] - .getDataObject()); - record.setMapRecordVals((HashMap>) hdf5Data[6]); - record.setGsmMessage((GSMMessage) hdf5Data[7].getDataObject()); - try { - record.setSymbologyBlock((SymbologyBlock) SerializationUtil - .transformFromThrift((byte[]) hdf5Data[3] - .getDataObject())); - record.setGraphicBlock((GraphicBlock) SerializationUtil - .transformFromThrift((byte[]) hdf5Data[4] - .getDataObject())); - - } catch (SerializationException e) { - throw new PluginException( - "Error deserializing symbology block", e); - } - } - return queryResults; - } public void populateData(RadarRecord record) throws Exception { RadarDataRetriever.populateRadarRecord(getDataStore(record), record); diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarStationDao.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarStationDao.java index 596e693750..42148d412c 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarStationDao.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/dao/RadarStationDao.java @@ -23,6 +23,7 @@ package com.raytheon.edex.plugin.radar.dao; import java.util.ArrayList; import java.util.List; +import org.hibernate.Session; import org.hibernate.criterion.DetachedCriteria; import org.hibernate.criterion.Disjunction; import org.hibernate.criterion.Expression; @@ -45,6 +46,8 @@ import com.vividsolutions.jts.geom.Coordinate; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 7/24/07 353 bphillip Initial Check in + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 + * 10/28/2014 3454 bphillip Fix usage of getSession() * * * @@ -167,10 +170,14 @@ public class RadarStationDao extends CoreDao { } } crit.add(stationEq); - List stations = getHibernateTemplate() - .findByCriteria(crit); - - return stations; + Session session = getSession(); + try { + return crit.getExecutableCriteria(session).list(); + } finally { + if (session != null){ + session.close(); + } + } } else { logger.warn("Cannot execute spatial query with less than 3 points"); return new ArrayList(); diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/handler/GetRadarDataTreeHandler.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/handler/GetRadarDataTreeHandler.java index f21e343dd1..d61b5fd873 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/handler/GetRadarDataTreeHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/handler/GetRadarDataTreeHandler.java @@ -23,11 +23,11 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import com.raytheon.uf.common.inventory.tree.DataTree; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.level.LevelFactory; import com.raytheon.uf.common.dataplugin.radar.RadarRecord; import com.raytheon.uf.common.dataplugin.radar.request.GetRadarDataTreeRequest; -import com.raytheon.uf.common.derivparam.tree.DataTree; import com.raytheon.uf.common.serialization.comm.IRequestHandler; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/level3/Level3BaseRadar.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/level3/Level3BaseRadar.java index 2c83e63566..7d90c73c12 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/level3/Level3BaseRadar.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/level3/Level3BaseRadar.java @@ -40,6 +40,7 @@ import org.itadaki.bzip2.BZip2InputStream; import com.raytheon.edex.esb.Headers; import com.raytheon.edex.plugin.radar.util.RadarEdexTextProductUtil; import com.raytheon.edex.plugin.radar.util.RadarSpatialUtil; +import com.raytheon.uf.common.dataplugin.exception.MalformedDataException; import com.raytheon.uf.common.dataplugin.radar.RadarStation; import com.raytheon.uf.common.dataplugin.radar.level3.AlertAdaptationParameters; import com.raytheon.uf.common.dataplugin.radar.level3.AlertMessage; @@ -55,10 +56,10 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.wmo.AFOSProductId; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.database.DataAccessLayerException; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.AFOSProductId; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * BaseRadar is a class that will allow the user to do the following: @@ -91,7 +92,18 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * graphics context and the extents of the Component used to create the Graphics * object. * - * Copyright 2006 Raytheon Corporation + * + *
+ * SOFTWARE HISTORY
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * --/--/2006             brockwoo    Initial creation
+ * Jan 21, 2014  2627     njensen     Changed offset errors to MalformedDataException
+ * May 14, 2014  2536     bclement    moved WMO Header to common, removed TimeTools usage
+ *                                     added storeTextProduct()
+ * 
+ * 
+ * * * @author Bryan Rockwood * @version 1.0 @@ -200,8 +212,10 @@ public class Level3BaseRadar { * A java.io.File object containing a raw radar file * @throws IOException * If the radar head parsing fails, an IO exception is thrown + * @throws MalformedDataException */ - public Level3BaseRadar(File aRadar, Headers headers) throws IOException { + public Level3BaseRadar(File aRadar, Headers headers) throws IOException, + MalformedDataException { int fileSize = (int) aRadar.length(); byte[] tempRawRadarByteArray = new byte[fileSize]; @@ -227,13 +241,15 @@ public class Level3BaseRadar { * A byte array containing a raw radar file * @throws IOException * If the radar head parsing fails, an IO exception is thrown + * @throws MalformedDataException */ - public Level3BaseRadar(byte[] aRadar, Headers headers) throws IOException { + public Level3BaseRadar(byte[] aRadar, Headers headers) throws IOException, + MalformedDataException { init(aRadar, headers); } public Level3BaseRadar(byte[] aRadar, Headers headers, RadarInfoDict dict) - throws IOException { + throws IOException, MalformedDataException { this.dict = dict; init(aRadar, headers); } @@ -241,8 +257,10 @@ public class Level3BaseRadar { /** * @param aRadar * @throws IOException + * @throws MalformedDataException */ - private void init(byte[] aRadar, Headers headers) throws IOException { + private void init(byte[] aRadar, Headers headers) throws IOException, + MalformedDataException { // printPacketContents(aRadar); int wmoHeaderSize; @@ -512,7 +530,8 @@ public class Level3BaseRadar { return dataLevelThresholds[code]; } - private SymbologyBlock readSymbologyBlock(int offset) throws IOException { + private SymbologyBlock readSymbologyBlock(int offset) throws IOException, + MalformedDataException { SymbologyBlock symBlock = null; if (offset != 0) { theRadarData.reset(); @@ -520,8 +539,8 @@ public class Level3BaseRadar { int divider = theRadarData.readShort(); int blockId = theRadarData.readUnsignedShort(); if ((divider != -1) || (blockId != SymbologyBlock.getBlockId())) { - throw new IOException( - "This does not appear to be a symbology block"); + throw new MalformedDataException("Symbology block offset " + + offset + " does not point to a symbology block"); } int blockLen = theRadarData.readInt(); byte[] buf = RadarUtil.subArray(theRawRadarByteArray, offset, @@ -537,7 +556,8 @@ public class Level3BaseRadar { return symBlock; } - private GraphicBlock readGraphicBlock(int offset) throws IOException { + private GraphicBlock readGraphicBlock(int offset) throws IOException, + MalformedDataException { GraphicBlock graphicBlock = null; if (offset != 0) { theRadarData.reset(); @@ -545,8 +565,8 @@ public class Level3BaseRadar { int divider = theRadarData.readShort(); int blockId = theRadarData.readUnsignedShort(); if ((divider != -1) || (blockId != GraphicBlock.getBlockId())) { - throw new IOException( - "This does not appear to be a graphic block"); + throw new MalformedDataException("Graphic block offset " + + offset + " does not point to a graphic block"); } int blockLen = theRadarData.readInt(); byte[] buf = RadarUtil.subArray(theRawRadarByteArray, offset, @@ -559,7 +579,8 @@ public class Level3BaseRadar { return graphicBlock; } - private TabularBlock readTabularBlock(int offset) throws IOException { + private TabularBlock readTabularBlock(int offset) throws IOException, + MalformedDataException { TabularBlock tabBlock = null; if (offset != 0) { theRadarData.reset(); @@ -567,8 +588,8 @@ public class Level3BaseRadar { int divider = theRadarData.readShort(); int blockId = theRadarData.readUnsignedShort(); if ((divider != -1) || (blockId != TabularBlock.getBlockId())) { - throw new IOException( - "This does not appear to be a tabular block"); + throw new MalformedDataException("Tabular block offset " + + offset + " does not point to a tabular block"); } int blockLen = theRadarData.readInt(); byte[] buf = RadarUtil.subArray(theRawRadarByteArray, offset, @@ -587,13 +608,14 @@ public class Level3BaseRadar { * @return * @throws IOException */ - private TabularBlock readStandaloneTabular(int offset) throws IOException { + private TabularBlock readStandaloneTabular(int offset) throws IOException, + MalformedDataException { int divider = theRadarData.readShort(); TabularBlock tabBlock = new TabularBlock(); int numPages = theRadarData.readUnsignedShort(); if ((divider != -1)) { - throw new IOException( - "This does not appear to be a standalone tabular block"); + throw new MalformedDataException("Standalone tabular block offset " + + offset + " does not point to a standalone tabular block"); } List> pages = new ArrayList>(); for (int p = 0; p < numPages; p++) { @@ -678,7 +700,8 @@ public class Level3BaseRadar { } - private void parseRadarMessage(Headers headers) throws IOException { + private void parseRadarMessage(Headers headers) throws IOException, + MalformedDataException { // Product Description Block theRadarData.skip(2); theLatitude = theRadarData.readInt() * 0.001; @@ -728,16 +751,21 @@ public class Level3BaseRadar { byte[] msg = new byte[120]; InputStream byt; if (uncompressedSize + msg.length != theRawRadarByteArray.length) { + InputStream ins = null; try { theRadarData.reset(); theRadarData.readFully(msg); - InputStream ins = new BZip2InputStream(theRadarData, false); + ins = new BZip2InputStream(theRadarData, false); uncompressed = new byte[uncompressedSize]; ins.read(uncompressed); } catch (IOException e) { theHandler.handle(Priority.ERROR, "Error decompressing product: ", e); return; + } finally { + if (ins != null) { + ins.close(); + } } theRawRadarByteArray = new byte[120 + uncompressed.length]; System.arraycopy(msg, 0, theRawRadarByteArray, 0, 120); @@ -769,20 +797,7 @@ public class Level3BaseRadar { } if (RadarTextProductUtil.radarTable.keySet().contains( theProductCode)) { - byte[] wmoid = wmoHeader.getBytes(); - WMOHeader header = new WMOHeader(wmoid, headers); - AFOSProductId afos = new AFOSProductId(afosId); - if (afos.isFilled()) { - try { - Calendar cal = (TimeTools.allowArchive() ? theMsgTimestamp - : Calendar.getInstance()); - RadarEdexTextProductUtil.storeTextProduct(afos, header, - tabularBlock.getString(), true, cal); - } catch (Exception e) { - theHandler.handle(Priority.ERROR, - "Could not store text product", e); - } - } + storeTextProduct(headers); } } } @@ -842,23 +857,36 @@ public class Level3BaseRadar { } tabularBlock.setString(builder.toString()); - + lookupAfosId(); - + if (RadarTextProductUtil.radarTable.keySet().contains(theMessageCode)) { - byte[] wmoid = wmoHeader.getBytes(); - WMOHeader header = new WMOHeader(wmoid, headers); - AFOSProductId afos = new AFOSProductId(afosId); - if (afos.isFilled()) { - try { - Calendar cal = (TimeTools.allowArchive() ? theMsgTimestamp - : Calendar.getInstance()); - RadarEdexTextProductUtil.storeTextProduct(afos, header, - tabularBlock.getString(), true, cal); - } catch (Exception e) { - theHandler.handle(Priority.ERROR, - "Could not store text product", e); - } + storeTextProduct(headers); + } + } + + /** + * Stores text from tabular block if AFOS product id is filled. + * + * @see RadarEdexTextProductUtil#storeTextProduct(AFOSProductId, WMOHeader, + * String, boolean, Calendar) + * @see AFOSProductId#isFilled() + * @param headers + */ + private void storeTextProduct(Headers headers) { + byte[] wmoid = wmoHeader.getBytes(); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + WMOHeader header = new WMOHeader(wmoid, fileName); + AFOSProductId afos = new AFOSProductId(afosId); + if (afos.isFilled()) { + try { + Calendar cal = (WMOTimeParser.allowArchive() ? theMsgTimestamp + : Calendar.getInstance()); + RadarEdexTextProductUtil.storeTextProduct(afos, header, + tabularBlock.getString(), true, cal); + } catch (Exception e) { + theHandler.handle(Priority.ERROR, + "Could not store text product", e); } } } @@ -944,10 +972,11 @@ public class Level3BaseRadar { } } - private void parseGeneralStatusMessage() throws IOException { + private void parseGeneralStatusMessage() throws IOException, + MalformedDataException { int divider = theRadarData.readShort(); if ((divider != -1)) { - throw new IOException("This does not appear to be a gsm block"); + throw new MalformedDataException("This is not a gsm block"); } int blockLen = theRadarData.readShort(); byte[] buf = RadarUtil.subArray(theRawRadarByteArray, 22, blockLen); diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/Import88DLocationsUtil.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/Import88DLocationsUtil.java index d5a300643e..cf6831fad5 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/Import88DLocationsUtil.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/Import88DLocationsUtil.java @@ -14,7 +14,6 @@ import java.util.Set; import org.opengis.feature.Property; import org.opengis.feature.simple.SimpleFeature; -import com.raytheon.edex.common.shapefiles.Shapefile; import com.raytheon.edex.plugin.radar.dao.RadarStationDao; import com.raytheon.uf.common.dataplugin.radar.RadarStation; import com.raytheon.uf.common.localization.IPathManager; @@ -23,11 +22,11 @@ import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.PathManagerFactory; -import com.raytheon.uf.common.site.ingest.INationalDatasetSubscriber; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.edex.database.DataAccessLayerException; +import com.raytheon.uf.edex.ndm.ingest.INationalDatasetSubscriber; import com.vividsolutions.jts.geom.GeometryFactory; import com.vividsolutions.jts.geom.Point; import com.vividsolutions.jts.geom.PrecisionModel; @@ -43,12 +42,13 @@ import com.vividsolutions.jts.io.WKTReader; * ------------ ---------- ----------- -------------------------- * 10Oct2011 10520 JWork Initial check-in. * 09/11/2012 DR 15366 D. Friedman Set SRID on radar stations. + * Mar 06, 2014 2876 mpduff Moved NationalDatasetSubscriber. * * */ public class Import88DLocationsUtil implements INationalDatasetSubscriber { - private static final transient IUFStatusHandler statusHandler = UFStatus + private static final IUFStatusHandler statusHandler = UFStatus .getHandler(Import88DLocationsUtil.class); private static final String SHAPEFILE = "fsl-w88d.shp"; @@ -58,34 +58,30 @@ public class Import88DLocationsUtil implements INationalDatasetSubscriber { private static final int WGS84_SRID = 4326; - // The list of the required file comprising a Shapefile set - private ArrayList theRadarShapeFileList = new ArrayList() { - private static final long serialVersionUID = 1L; + /** The list of the required files comprising a Shapefile set */ + private static final String[] SHAPE_FILES = new String[] { "fsl-w88d.shp", + "fsl-w88d.shx", "fsl-w88d.dbf" }; - { - add("fsl-w88d.shp"); - add("fsl-w88d.shx"); - add("fsl-w88d.dbf"); - } - }; - - // The collection of feature attribute names this code needs from the - // shapefile + /** + * The collection of feature attribute names this code needs from the + * shapefile + */ private enum databaseColumns { LAT, EQP_ELV, NAME, LON, IMMUTABLEX, RDA_ID, ELEVMETER, THE_GEOM, WFO_ID, RPG_ID_DEC } - private long theTimeRange = 3600000l; + private final long theTimeRange = 3600000l; - // The file name of the file currently being processed. + /** The file name of the file currently being processed. */ private String theFileName = null; - // The date, in millis, of the file currently being processed. + /** The date, in millis, of the file currently being processed. */ private long theCurrentFileDateMillis = 0; - // The list of RDA_ID's from the shapefile used to determine if an ID has - // been - // removed from the database + /** + * The list of RDA_ID's from the shapefile used to determine if an ID has + * been removed from the database + */ private ArrayList theRDAList = null; private IPathManager thePathMgr = null; @@ -140,16 +136,16 @@ public class Import88DLocationsUtil implements INationalDatasetSubscriber { */ private void saveFile(File file, LocalizationFile outFile) { if ((file != null) && file.exists()) { + FileInputStream fis = null; + FileOutputStream fos = null; try { byte[] fileByteArray = new byte[(int) file.length()]; - FileInputStream fis = new FileInputStream(file); + fis = new FileInputStream(file); fis.read(fileByteArray); - FileOutputStream fos = new FileOutputStream(outFile.getFile()); + fos = new FileOutputStream(outFile.getFile()); fos.write(fileByteArray); - fis.close(); - fos.close(); /* * BufferedReader fis = new BufferedReader(new * InputStreamReader( new FileInputStream(file))); @@ -165,12 +161,29 @@ public class Import88DLocationsUtil implements INationalDatasetSubscriber { } catch (FileNotFoundException e) { if (statusHandler.isPriorityEnabled(Priority.PROBLEM)) { statusHandler.handle(Priority.PROBLEM, - "Failed to find File ", e); + "Failed to find file: " + file.getName(), e); } } catch (IOException e) { if (statusHandler.isPriorityEnabled(Priority.PROBLEM)) { - statusHandler.handle(Priority.PROBLEM, - "Could not create output file. ", e); + statusHandler.handle( + Priority.PROBLEM, + "Could not create output file: " + + outFile.getName(), e); + } + } finally { + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + // ignore + } + } + if (fos != null) { + try { + fos.close(); + } catch (IOException e) { + // ignore + } } } } @@ -193,7 +206,7 @@ public class Import88DLocationsUtil implements INationalDatasetSubscriber { // Determine if the two other files are available or if the time // threshold has been crossed and are to old to process - for (String key : theRadarShapeFileList) { + for (String key : SHAPE_FILES) { if (!key.equals(theFileName)) { tempFile = getPathInfoRead(key); timeStampMillis = tempFile.lastModified(); @@ -271,7 +284,7 @@ public class Import88DLocationsUtil implements INationalDatasetSubscriber { for (RadarStation station : aStationList) { radarStationDAO.saveOrUpdate(station); } - + /* * Kludge for DR 15366: The GeoTools WKBWriter does not store SRIDs so * we must update them manually. @@ -285,7 +298,7 @@ public class Import88DLocationsUtil implements INationalDatasetSubscriber { statusHandler.handle(Priority.ERROR, "Failed to update the SRIDs in the radar_spatial_table", e); } - + if (statusHandler.isPriorityEnabled(Priority.INFO)) { statusHandler .handle(Priority.INFO, @@ -322,7 +335,8 @@ public class Import88DLocationsUtil implements INationalDatasetSubscriber { String rda_id = null; RadarStation tempStation = null; Set keySet = null; - GeometryFactory gf = new GeometryFactory(new PrecisionModel(), WGS84_SRID); + GeometryFactory gf = new GeometryFactory(new PrecisionModel(), + WGS84_SRID); WKTReader wkt = new WKTReader(gf); for (HashMap aHashMap : aDataList) { keySet = aHashMap.keySet(); diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarEdexTextProductUtil.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarEdexTextProductUtil.java index 0a35ba2f1c..a35f1666bb 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarEdexTextProductUtil.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarEdexTextProductUtil.java @@ -28,9 +28,9 @@ import com.raytheon.uf.common.dataplugin.text.db.StdTextProduct; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.wmo.AFOSProductId; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.core.EDEXUtil; -import com.raytheon.uf.edex.wmo.message.AFOSProductId; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * TODO Add Description diff --git a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarMenuUtil.java b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarMenuUtil.java index be6defcae9..50693257c3 100644 --- a/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarMenuUtil.java +++ b/edexOsgi/com.raytheon.edex.plugin.radar/src/com/raytheon/edex/plugin/radar/util/RadarMenuUtil.java @@ -44,12 +44,11 @@ import com.raytheon.uf.common.menus.xml.CommonSeparatorMenuContribution; import com.raytheon.uf.common.menus.xml.CommonSubmenuContribution; import com.raytheon.uf.common.menus.xml.MenuTemplateFile; import com.raytheon.uf.common.menus.xml.VariableSubstitution; -import com.raytheon.uf.common.site.ingest.INationalDatasetSubscriber; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.edex.menus.AbstractMenuUtil; - +import com.raytheon.uf.edex.ndm.ingest.INationalDatasetSubscriber; /** * Builds menus using JAXB @@ -61,7 +60,8 @@ import com.raytheon.uf.edex.menus.AbstractMenuUtil; * ------------ ---------- ----------- -------------------------- * Jun 30, 2010 mnash Initial creation * Feb 25, 2013 DR14418 zwang Change radar menu to dual pol style - * 03/07/2013 DR15495 zwang Handle additional elevation for ssss radars + * 03/07/2013 DR15495 zwang Handle additional elevation for ssss radars + * Mar 06, 2014 2876 mpduff New NDM plugin. * * * @@ -71,11 +71,11 @@ import com.raytheon.uf.edex.menus.AbstractMenuUtil; public class RadarMenuUtil extends AbstractMenuUtil implements INationalDatasetSubscriber { - private static final transient IUFStatusHandler statusHandler = UFStatus + private static final IUFStatusHandler statusHandler = UFStatus .getHandler(RadarMenuUtil.class); private final int NUM_POSSIBLE_RADARS = 25; - + /** * */ @@ -92,7 +92,7 @@ public class RadarMenuUtil extends AbstractMenuUtil implements RadarsInUseUtil.setParsed(false); List radars = RadarsInUseUtil.getSite(getSite(), RadarsInUseUtil.LOCAL_CONSTANT); - ; + String path = "menus" + File.separator + "radar" + File.separator; CommonMenuContributionFile menuContributionFile = new CommonMenuContributionFile(); CommonIncludeMenuItem includeMenuItem = null; @@ -113,9 +113,8 @@ public class RadarMenuUtil extends AbstractMenuUtil implements boolean terminal = TerminalRadarUtils.isTerminalRadar(radars .get(i).toLowerCase()); if (terminal) { - includeMenuItem.fileName = new File(path - + "dualPol" + File.separator - + "baseTerminalLocalRadarMenu.xml"); + includeMenuItem.fileName = new File(path + "dualPol" + + File.separator + "baseTerminalLocalRadarMenu.xml"); List elevations = map.get(radars.get(i)); vars = new VariableSubstitution[(elevations.size() + 1) + NUM_POSSIBLE_RADARS + 1]; @@ -141,17 +140,14 @@ public class RadarMenuUtil extends AbstractMenuUtil implements } includeMenuItem.substitutions = vars; } else { - if (SsssRadarUtil.isSsssRadar(radars.get(i).toLowerCase())) { - String ssssRadar = radars.get(i).toLowerCase(); - includeMenuItem.fileName = new File(path - + ssssRadar + File.separator - + "baseLocalRadarMenu.xml"); - } - else { - includeMenuItem.fileName = new File(path - + "dualPol" + File.separator - + "baseLocalRadarMenu.xml"); - } + if (SsssRadarUtil.isSsssRadar(radars.get(i).toLowerCase())) { + String ssssRadar = radars.get(i).toLowerCase(); + includeMenuItem.fileName = new File(path + ssssRadar + + File.separator + "baseLocalRadarMenu.xml"); + } else { + includeMenuItem.fileName = new File(path + "dualPol" + + File.separator + "baseLocalRadarMenu.xml"); + } vars = new VariableSubstitution[1]; vars[0] = new VariableSubstitution(); vars[0].key = "icao"; @@ -189,9 +185,9 @@ public class RadarMenuUtil extends AbstractMenuUtil implements .toLowerCase()); if (terminal) { List elevations = map.get(radars.get(i)); - includeMenuContribution.fileName = new File(path - + "dualPol" + File.separator - + File.separator + "baseTerminalLocalRadarMenu.xml"); + includeMenuContribution.fileName = new File(path + "dualPol" + + File.separator + File.separator + + "baseTerminalLocalRadarMenu.xml"); vars = new VariableSubstitution[(elevations.size() + 1) + NUM_POSSIBLE_RADARS + 1]; vars[0] = new VariableSubstitution(); @@ -217,17 +213,16 @@ public class RadarMenuUtil extends AbstractMenuUtil implements includeMenuContribution.substitutions = vars; terminal = true; } else { - if (SsssRadarUtil.isSsssRadar(radars.get(i).toLowerCase())) { - String ssssRadar = radars.get(i).toLowerCase(); - includeMenuContribution.fileName = new File(path + if (SsssRadarUtil.isSsssRadar(radars.get(i).toLowerCase())) { + String ssssRadar = radars.get(i).toLowerCase(); + includeMenuContribution.fileName = new File(path + ssssRadar + File.separator + "baseLocalRadarMenu.xml"); - } - else { - includeMenuContribution.fileName = new File(path + } else { + includeMenuContribution.fileName = new File(path + "dualPol" + File.separator + "baseLocalRadarMenu.xml"); - } + } vars = new VariableSubstitution[1]; vars[0] = new VariableSubstitution(); vars[0].key = "icao"; @@ -386,10 +381,12 @@ public class RadarMenuUtil extends AbstractMenuUtil implements private void saveFile(File file, File outFile) { if ((file != null) && file.exists()) { + BufferedReader fis = null; + BufferedWriter fos = null; try { - BufferedReader fis = new BufferedReader(new InputStreamReader( + fis = new BufferedReader(new InputStreamReader( new FileInputStream(file))); - BufferedWriter fos = new BufferedWriter(new OutputStreamWriter( + fos = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(outFile))); String line = null; try { @@ -397,15 +394,29 @@ public class RadarMenuUtil extends AbstractMenuUtil implements fos.write(line); fos.newLine(); } - fos.close(); } catch (IOException e) { statusHandler.handle(Priority.PROBLEM, - "Could not read File ", e); + "Could not read file: " + file.getName(), e); } } catch (FileNotFoundException e) { - statusHandler.handle(Priority.PROBLEM, "Failed to find file ", - e); + statusHandler.handle(Priority.PROBLEM, "Failed to find file: " + + file.getName(), e); + } finally { + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + // ignore + } + } + if (fos != null) { + try { + fos.close(); + } catch (IOException e) { + // ignore + } + } } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.recco/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.recco/META-INF/MANIFEST.MF index f94b169a3f..a5b66c66a4 100644 --- a/edexOsgi/com.raytheon.edex.plugin.recco/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.recco/META-INF/MANIFEST.MF @@ -3,7 +3,6 @@ Bundle-ManifestVersion: 2 Bundle-Name: Recco Plug-in Bundle-SymbolicName: com.raytheon.edex.plugin.recco Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization Bundle-Vendor: RAYTHEON Export-Package: com.raytheon.edex.plugin.recco, com.raytheon.edex.plugin.recco.common, @@ -14,5 +13,6 @@ Require-Bundle: com.raytheon.edex.common, org.geotools, javax.persistence, com.raytheon.uf.edex.decodertools;bundle-version="1.0.0" -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Import-Package: org.apache.commons.logging +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Import-Package: com.raytheon.uf.common.wmo, + org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.edex.plugin.recco/res/spring/recco-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.recco/res/spring/recco-ingest.xml index 7ab29724e2..7b89c82ed1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.recco/res/spring/recco-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.recco/res/spring/recco-ingest.xml @@ -15,15 +15,9 @@
- - - - + errorHandlerRef="errorHandler"> - - - - + - + @@ -58,7 +55,7 @@ - + @@ -66,10 +63,10 @@ - + - + diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/pointdata/sfcobsdb.xml b/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/pointdata/sfcobsdb.xml index 68b643a85b..a286121c7f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/pointdata/sfcobsdb.xml +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/pointdata/sfcobsdb.xml @@ -28,4 +28,6 @@ + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-common.xml b/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-common.xml index 8970ebf6aa..69c6e5a8bf 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-common.xml +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-common.xml @@ -13,7 +13,7 @@
- + diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-ingest.xml index 097d703b64..a71c1c4652 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/res/spring/sfcobs-ingest.xml @@ -16,14 +16,37 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsDecoder.java index 9d20ce9b65..2e9f694eb6 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsDecoder.java @@ -33,15 +33,14 @@ import com.raytheon.edex.plugin.AbstractDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.ISfcObsDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.SfcObsDecoderFactory; import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; import com.raytheon.uf.common.status.IPerformanceStatusHandler; import com.raytheon.uf.common.status.PerformanceStatus; import com.raytheon.uf.common.time.util.ITimer; import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Decoder strategy for text surface observation data. Most common usage is as @@ -73,6 +72,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Mar 19, 2013 1785 bgonzale Added performance status handler and * added status to decode. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage * * * @author jkorman @@ -170,11 +170,6 @@ public class SfcObsDecoder extends AbstractDecoder { } if (report != null) { report.setTraceId(traceId); - try { - report.constructDataURI(); - } catch (PluginException e) { - throw new DecoderException("Error Constructing dataURI", e); - } if (!obsMap.containsKey(report.getDataURI())) { retVal.add(report); obsMap.put(report.getDataURI(), Boolean.TRUE); @@ -207,10 +202,10 @@ public class SfcObsDecoder extends AbstractDecoder { boolean isValid = false; if (report != null) { - Calendar curr = TimeTools.getSystemCalendar((String) headers + Calendar curr = WMOTimeParser.getSystemCalendar((String) headers .get(DecoderTools.INGEST_FILE_NAME)); - Calendar rHour = TimeTools.copy(report.getRefHour()); + Calendar rHour = (Calendar) report.getRefHour().clone(); rHour.add(Calendar.MINUTE, -15); long delta = curr.getTimeInMillis() - rHour.getTimeInMillis(); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsPointDataTransform.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsPointDataTransform.java index 1dad2a934f..615d66b471 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsPointDataTransform.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsPointDataTransform.java @@ -20,14 +20,13 @@ package com.raytheon.edex.plugin.sfcobs; import java.io.File; +import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.xml.bind.JAXBException; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -40,10 +39,9 @@ import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.serialization.SerializationException; -import com.raytheon.uf.edex.decodertools.time.TimeTools; /** - * TODO Add Description + * Populates point data views from fields in obs common records. * *
  * 
@@ -53,6 +51,8 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools;
  * ------------ ---------- ----------- --------------------------
  * Oct 1, 2009             jkorman     Initial creation
  * Feb 15,2011  5705       cjeanbap    Added wmoHeader to HDR_PARAMS_LIST.
+ * Apr 04,2014  2906       bclement    made getDescription() and static constants public
+ * Apr 22,2014  2906       bclement    removed WMO header, timeObs and timeNominal from HDF5 (times still in DB)
  * 
  * 
* @@ -66,143 +66,143 @@ public class SfcObsPointDataTransform { private static Log logger = LogFactory .getLog(SfcObsPointDataTransform.class); - private static final int INT_DEFAULT = -9999; + public static final int INT_DEFAULT = -9999; - private static final float FLOAT_DEFAULT = -9999.0f; + public static final float FLOAT_DEFAULT = -9999.0f; // /pluginName/dataTime/reportType/corIndicator/latitude/longitude // /sfcobs/2009-10-12_12:00:00.0/1001/null/71905/55.28/-77.76 // ** DataUri - private static final String STATION_ID = "stationId"; + public static final String STATION_ID = "stationId"; // ** DataUri - private static final String LATITUDE = "latitude"; + public static final String LATITUDE = "latitude"; // ** DataUri - private static final String LONGITUDE = "longitude"; + public static final String LONGITUDE = "longitude"; - private static final String ELEVATION = "elevation"; + public static final String ELEVATION = "elevation"; - private static final String TIME_OBS = "timeObs"; + public static final String TIME_OBS = "timeObs"; - private static final String TIME_NOMINAL = "timeNominal"; + public static final String TIME_NOMINAL = "timeNominal"; // ** DataUri - private static final String REPORT_TYPE = "reportType"; + public static final String REPORT_TYPE = "reportType"; // ** DataUri - private static final String COR_INDICATOR = "corIndicator"; + public static final String COR_INDICATOR = "corIndicator"; - private static final String DATA_URI = "dataURI"; + public static final String DATA_URI = "dataURI"; - private static final String WMO_HEADER = "wmoHeader"; + public static final String WMO_HEADER = "wmoHeader"; - private static final String RAW_REPORT = "rawReport"; + public static final String RAW_REPORT = "rawReport"; - private static final String PRESS_CHANGE_3HR = "pressChange3Hour"; + public static final String PRESS_CHANGE_3HR = "pressChange3Hour"; - private static final String PRESS_CHANGE_CHAR = "pressChangeChar"; + public static final String PRESS_CHANGE_CHAR = "pressChangeChar"; - private static final String PRECIP1_HOUR = "precip1Hour"; + public static final String PRECIP1_HOUR = "precip1Hour"; - private static final String PRECIP6_HOUR = "precip6Hour"; + public static final String PRECIP6_HOUR = "precip6Hour"; - private static final String PRECIP12_HOUR = "precip12Hour"; + public static final String PRECIP12_HOUR = "precip12Hour"; - private static final String PRECIP18_HOUR = "precip18Hour"; + public static final String PRECIP18_HOUR = "precip18Hour"; - private static final String PRECIP24_HOUR = "precip24Hour"; + public static final String PRECIP24_HOUR = "precip24Hour"; - private static final String TEMPERATURE = "temperature"; + public static final String TEMPERATURE = "temperature"; - private static final String DEWPOINT = "dewpoint"; + public static final String DEWPOINT = "dewpoint"; - private static final String WIND_DIR = "windDir"; + public static final String WIND_DIR = "windDir"; - private static final String WIND_GUST = "windGust"; + public static final String WIND_GUST = "windGust"; - private static final String WIND_SPEED = "windSpeed"; + public static final String WIND_SPEED = "windSpeed"; - private static final String PEAK_WIND_DIR = "peakWindDir"; + public static final String PEAK_WIND_DIR = "peakWindDir"; - private static final String PEAK_WIND_SPEED = "peakWindSpeed"; + public static final String PEAK_WIND_SPEED = "peakWindSpeed"; - private static final String PEAK_WIND_SPEED_TIME = "peakWindSpeedTime"; + public static final String PEAK_WIND_SPEED_TIME = "peakWindSpeedTime"; - private static final String SEA_LEVEL_PRESS = "seaLevelPress"; + public static final String SEA_LEVEL_PRESS = "seaLevelPress"; - private static final String ALTIMETER = "altimeter"; + public static final String ALTIMETER = "altimeter"; - private static final String STATION_PRESS = "stationPress"; + public static final String STATION_PRESS = "stationPress"; - private static final String VISIBILITY = "visibility"; + public static final String VISIBILITY = "visibility"; - private static final String PRES_WEATHER = "presWeather"; + public static final String PRES_WEATHER = "presWeather"; - private static final String WX_PRESENT = "wx_present"; + public static final String WX_PRESENT = "wx_present"; - private static final String WX_PAST_1 = "wx_past_1"; + public static final String WX_PAST_1 = "wx_past_1"; - private static final String WX_PAST_2 = "wx_past_2"; + public static final String WX_PAST_2 = "wx_past_2"; - private static final String CLOUD_AMOUNT_TOT = "totCloudAmount"; + public static final String CLOUD_AMOUNT_TOT = "totCloudAmount"; - private static final String CLOUD_HGT_LOW = "lowCloudHeight"; + public static final String CLOUD_HGT_LOW = "lowCloudHeight"; - private static final String CLOUD_AMOUNT_LOW = "lowCloudAmount"; + public static final String CLOUD_AMOUNT_LOW = "lowCloudAmount"; - private static final String CLOUD_TYPE_LOW = "lowCloudType"; + public static final String CLOUD_TYPE_LOW = "lowCloudType"; - private static final String CLOUD_TYPE_MID = "midCloudType"; + public static final String CLOUD_TYPE_MID = "midCloudType"; - private static final String CLOUD_TYPE_HI = "hiCloudType"; + public static final String CLOUD_TYPE_HI = "hiCloudType"; - private static final String SEA_SFC_TEMP = "seaSurfaceTemp"; + public static final String SEA_SFC_TEMP = "seaSurfaceTemp"; - private static final String ICE_CODE = "iceCode"; + public static final String ICE_CODE = "iceCode"; - private static final String WET_BULB = "wetBulb"; + public static final String WET_BULB = "wetBulb"; - private static final String PLATFORM_DIR = "platformTrueDirection"; + public static final String PLATFORM_DIR = "platformTrueDirection"; - private static final String PLATFORM_SPD = "platformTrueSpeed"; + public static final String PLATFORM_SPD = "platformTrueSpeed"; - private static final String WIND_SPD_EQUIV_10M = "equivWindSpeed10m"; + public static final String WIND_SPD_EQUIV_10M = "equivWindSpeed10m"; - private static final String WIND_SPD_EQUIV_20M = "equivWindSpeed20m"; + public static final String WIND_SPD_EQUIV_20M = "equivWindSpeed20m"; - private static final String WIND_WV_HGT = "windWaveHeight"; + public static final String WIND_WV_HGT = "windWaveHeight"; - private static final String WIND_WV_PD = "windWavePeriod"; + public static final String WIND_WV_PD = "windWavePeriod"; - private static final String WV_HGT = "waveHeight"; + public static final String WV_HGT = "waveHeight"; - private static final String WV_PD = "wavePeriod"; + public static final String WV_PD = "wavePeriod"; - private static final String WV_STEEPNESS = "waveSteepness"; + public static final String WV_STEEPNESS = "waveSteepness"; - private static final String HI_RES_WV_HGT = "highResWaveHeight"; + public static final String HI_RES_WV_HGT = "highResWaveHeight"; - private static final String PRI_SWELL_WV_DIR = "primarySwellWaveDir"; + public static final String PRI_SWELL_WV_DIR = "primarySwellWaveDir"; - private static final String PRI_SWELL_WV_PD = "primarySwellWavePeriod"; + public static final String PRI_SWELL_WV_PD = "primarySwellWavePeriod"; - private static final String PRI_SWELL_WV_HGT = "primarySwellWaveHeight"; + public static final String PRI_SWELL_WV_HGT = "primarySwellWaveHeight"; - private static final String SEC_SWELL_WV_DIR = "secondarySwellWaveDir"; + public static final String SEC_SWELL_WV_DIR = "secondarySwellWaveDir"; - private static final String SEC_SWELL_WV_PD = "secondarySwellWavePeriod"; + public static final String SEC_SWELL_WV_PD = "secondarySwellWavePeriod"; - private static final String SEC_SWELL_WV_HGT = "secondarySwellWaveHeight"; + public static final String SEC_SWELL_WV_HGT = "secondarySwellWaveHeight"; - private static final String NUM_INTER_WINDS = "numInterWinds"; + public static final String NUM_INTER_WINDS = "numInterWinds"; - private static final String INTER_WIND_TIME = "interWindTime"; + public static final String INTER_WIND_TIME = "interWindTime"; - private static final String INTER_WIND_DIR = "interWindDir"; + public static final String INTER_WIND_DIR = "interWindDir"; - private static final String INTER_WIND_SPD = "interWindSpeed"; + public static final String INTER_WIND_SPD = "interWindSpeed"; public static final String HDR_PARAMS_LIST; static { @@ -217,7 +217,6 @@ public class SfcObsPointDataTransform { sb.append("reportType,"); sb.append("dataURI,"); sb.append("rawReport,"); - sb.append("wmoHeader,"); HDR_PARAMS_LIST = sb.toString(); } @@ -371,11 +370,8 @@ public class SfcObsPointDataTransform { PointDataView pdv = container.append(); if (pdv != null) { - pdv.setLong(TIME_OBS, record.getTimeObs().getTimeInMillis()); - pdv.setLong(TIME_NOMINAL, record.getRefHour().getTimeInMillis()); pdv.setString(RAW_REPORT, record.getObsText()); - pdv.setString(WMO_HEADER, record.getWmoHeader()); pdv.setFloat(TEMPERATURE, getFloat(record.getTemp())); pdv.setFloat(DEWPOINT, getFloat(record.getDwpt())); @@ -489,21 +485,28 @@ public class SfcObsPointDataTransform { } /** + * Read description file from classpath for specified type * * @param type * @return - * @throws JAXBException + * @throws SerializationException */ - private PointDataDescription getDescription(String type) + public static PointDataDescription getDescription(String type) throws SerializationException { - InputStream is = this.getClass().getResourceAsStream( - "/res/pointdata/" + type + ".xml"); + InputStream is = SfcObsPointDataTransform.class + .getResourceAsStream("/res/pointdata/" + type + ".xml"); if (is == null) { throw new RuntimeException("Cannot find descriptor for: " + type); } - PointDataDescription d = PointDataDescription.fromStream(is); - - return d; + try { + return PointDataDescription.fromStream(is); + } finally { + try { + is.close(); + } catch (IOException e) { + logger.error(e.getLocalizedMessage(), e); + } + } } public static ObsCommon toSfcObsRecord(PointDataView pdv) { @@ -614,31 +617,11 @@ public class SfcObsPointDataTransform { SurfaceObsLocation loc = obs.getLocation(); loc.setElevation(elev); - long tt = pdv.getNumber(TIME_OBS).longValue(); - obs.setTimeObs(TimeTools.newCalendar(tt)); - - tt = pdv.getNumber(TIME_NOMINAL).longValue(); - obs.setRefHour(TimeTools.newCalendar(tt)); - obs.setObsText(pdv.getString(RAW_REPORT)); - obs.setWmoHeader(pdv.getString(WMO_HEADER)); } return obs; } - /** - * - * @param value - * @return - */ - private static int getInt(Double value) { - int retValue = INT_DEFAULT; - if (value != null) { - retValue = value.intValue(); - } - return retValue; - } - private static int getInt(Integer value) { int retValue = INT_DEFAULT; if (value != null) { @@ -647,14 +630,6 @@ public class SfcObsPointDataTransform { return retValue; } - private static int getInt(Float value) { - int retValue = INT_DEFAULT; - if (value != null) { - retValue = value.intValue(); - } - return retValue; - } - private static float getFloat(Double value) { float retValue = FLOAT_DEFAULT; if (value != null) { diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsSeparator.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsSeparator.java index e23cb4df93..f0eb9cecad 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsSeparator.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/SfcObsSeparator.java @@ -19,10 +19,6 @@ **/ package com.raytheon.edex.plugin.sfcobs; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.ETX; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.SOM; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.WMO_HEADER; - import java.util.ArrayList; import java.util.List; import java.util.StringTokenizer; @@ -36,8 +32,9 @@ import com.raytheon.edex.esb.Headers; import com.raytheon.edex.plugin.AbstractRecordSeparator; import com.raytheon.edex.plugin.sfcobs.common.SfcObsPart; import com.raytheon.edex.plugin.sfcobs.common.SfcObsSubMessage; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; /** * The SfcObsSeparator takes a potential weather message and attempts to @@ -57,6 +54,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070925 391 jkorman Initial Coding. + * May 14, 2014 2536 bclement moved WMO Header to common + * Sep 26, 2014 3629 mapeters Added SOM constant, replaced static imports. * * * @author jkorman @@ -66,7 +65,11 @@ public class SfcObsSeparator extends AbstractRecordSeparator { /** The logger */ private Log logger = LogFactory.getLog(getClass()); - private static final String SPLITCHARS = " \r=;$" + SOM + ETX; + private static final String SOM = String + .valueOf((char) IDecoderConstants.ASCII_SOM); + + private static final String SPLITCHARS = " \r=;$" + SOM + + IDecoderConstants.ETX; // private static final String GGYYiW_GRP = // "((0[1-9])|([1-2]\\d)|3[0-1])(([0-1]\\d)|2[0-3])[1-4]"; @@ -135,10 +138,11 @@ public class SfcObsSeparator extends AbstractRecordSeparator { reports = null; rawMessage = DecoderTools.cleanData(rawMessage); if (rawMessage != null) { - wmoHeader = new WMOHeader(rawMessage, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + wmoHeader = new WMOHeader(rawMessage, fileName); if (wmoHeader.isValid()) { messageData = DecoderTools.stripWMOHeader(rawMessage, - WMO_HEADER); + IDecoderConstants.WMO_HEADER); } } cleanGarbage(); @@ -202,7 +206,7 @@ public class SfcObsSeparator extends AbstractRecordSeparator { parts.add(SfcObsPart.RE_PART); } else if (SOM.equals(s)) { parts.add(SfcObsPart.MS_PART); - } else if (ETX.equals(s)) { + } else if (IDecoderConstants.ETX.equals(s)) { parts.add(SfcObsPart.ME_PART); } else { SfcObsPart reportPart = SfcObsPart.partFactory(s); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/common/SfcObsPart.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/common/SfcObsPart.java index 61b885a8b4..762e1bcba2 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/common/SfcObsPart.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/common/SfcObsPart.java @@ -19,11 +19,6 @@ **/ package com.raytheon.edex.plugin.sfcobs.common; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.CARRIAGECONTROL; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.MESSAGE_END; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.MESSAGE_START; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.REPORT_END; - import java.util.HashMap; import java.util.Map; @@ -40,6 +35,7 @@ import java.util.Map; * ------------- -------- ----------- -------------------------- * Sep 25, 2007 391 jkorman Initial Coding. * Oct 29, 2013 2489 bsteffen Add NAVTEX_END_PART + * Sep 26, 2014 3629 mapeters Removed static imports. * * * @@ -47,13 +43,15 @@ import java.util.Map; * @version 1.0 */ public class SfcObsPart { - public static final SfcObsPart CR_PART = new SfcObsPart(CARRIAGECONTROL,false); - public static final SfcObsPart RE_PART = new SfcObsPart(REPORT_END, false); + public static final SfcObsPart CR_PART = new SfcObsPart("CARRIAGECONTROL", + false); - public static final SfcObsPart MS_PART = new SfcObsPart(MESSAGE_START,false); + public static final SfcObsPart RE_PART = new SfcObsPart("RPT_END", false); - public static final SfcObsPart ME_PART = new SfcObsPart(MESSAGE_END,false); + public static final SfcObsPart MS_PART = new SfcObsPart("MSG_START", false); + + public static final SfcObsPart ME_PART = new SfcObsPart("MSG_END", false); public static final SfcObsPart AAXX_PART = new SfcObsPart("AAXX",false); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/AbstractSfcObsDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/AbstractSfcObsDecoder.java index 020b3d2498..41314db9a9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/AbstractSfcObsDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/AbstractSfcObsDecoder.java @@ -23,9 +23,7 @@ import java.util.Calendar; import java.util.regex.Matcher; import java.util.regex.Pattern; -import com.raytheon.uf.edex.decodertools.core.DefaultParserStrategy; -import com.raytheon.uf.edex.decodertools.core.ReportParser; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; /** * AbstractSfcObsDecoder is the base class for all surface observation decoders. diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/ISfcObsDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/ISfcObsDecoder.java index 19c7772bd7..9bfcc70743 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/ISfcObsDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/ISfcObsDecoder.java @@ -23,8 +23,8 @@ import java.util.Calendar; import com.raytheon.edex.exception.DecoderException; import com.raytheon.uf.common.dataplugin.PluginDataObject; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Declare the methods common to the surface observation class data. In the @@ -40,6 +40,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070928 391 jkorman Initial Coding. + * Sep 26, 2014 3629 mapeters Added SYNOPTIC_*, DRIFTING_BUOY constants. * * * @author jkorman @@ -51,6 +52,16 @@ public interface ISfcObsDecoder { public static final Integer VAL_MISSING = IDecoderConstants.VAL_MISSING; + public static final int SYNOPTIC_SHIP = 1003; + + public static final int SYNOPTIC_CMAN = 1004; + + public static final int SYNOPTIC_MOORED_BUOY = 1005; + + public static final int DRIFTING_BUOY = 1006; + + public static final int SYNOPTIC_MAROB = 1007; + /** * Get the text report data. * diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/SfcObsDecoderFactory.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/SfcObsDecoderFactory.java index 449fefca56..509cb19e94 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/SfcObsDecoderFactory.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/SfcObsDecoderFactory.java @@ -19,8 +19,6 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.SPACE_CHAR; - import java.util.HashMap; import java.util.Map; @@ -34,7 +32,7 @@ import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.LandSynopticDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.MAROBSynopticDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.MobileSynopticDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SHIPSynopticDecoder; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; /** * This factory examines the incoming observation data to determine the proper @@ -48,6 +46,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070925 391 jkorman Initial Coding. + * Sep 26, 2014 3629 mapeters Added SPACE_CHAR constant. * * * @author jkorman @@ -57,6 +56,8 @@ public class SfcObsDecoderFactory { /** The logger */ private static Log logger = LogFactory.getLog(SfcObsDecoderFactory.class); + private static final char SPACE_CHAR = ' '; + private static final Map> DECODER_MAP = new HashMap>(); static { DECODER_MAP.put("AAXX", LandSynopticDecoder.class); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec1Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec1Decoder.java index fbaa5d628e..3cdc92a761 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec1Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec1Decoder.java @@ -19,23 +19,19 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.buoy; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_3_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_ERROR; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_MISSING; - import java.util.regex.Pattern; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.DataItem; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSectionDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SynopticGroups; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.DataItem; -import com.raytheon.uf.edex.decodertools.core.ReportParser; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; import com.raytheon.uf.edex.decodertools.time.TimeTools; /** @@ -49,6 +45,9 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. + * Sep 18, 2014 3627 mapeters Updated deprecated {@link TimeTools} usage. + * Sep 26, 2014 3629 mapeters Replaced static imports. + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @@ -112,23 +111,23 @@ public class DRIBUSec1Decoder extends AbstractSectionDecoder { break; } - if (matchElement(element, DRIBUSec2Decoder.SEC_2_PATTERN)) { + if (DRIBUSec2Decoder.SEC_2_PATTERN.matcher(element).find()) { break; - } else if (matchElement(element, SEC_3_LEAD)) { + } else if (ISynoptic.SEC_3_LEAD_PATTERN.matcher(element).find()) { break; - } else if (matchElement(element, SEC_4_LEAD)) { + } else if (ISynoptic.SEC_4_LEAD_PATTERN.matcher(element).find()) { break; - } else if (matchElement(element, SEC_5_LEAD)) { + } else if (ISynoptic.SEC_5_LEAD_PATTERN.matcher(element).find()) { break; } String s = element.substring(0, 1); if ("0".equals(s) && doGroup(0)) { - Integer temp = getInt(element, 1, 3); + Integer temp = AbstractSfcObsDecoder.getInt(element, 1, 3); if ((temp != null) && (temp >= 0)) { windDirection = temp * 10; } - temp = getInt(element, 3, 5); + temp = AbstractSfcObsDecoder.getInt(element, 3, 5); if ((temp != null) && (temp >= 0)) { windSpeed = temp.doubleValue(); } @@ -151,10 +150,11 @@ public class DRIBUSec1Decoder extends AbstractSectionDecoder { element, 1); closeGroup(4); } else if ("5".equals(s) && doGroup(5)) { - Integer val = getInt(element, 1, 2); - changeCharacter = new DataItem("int", "changeCharacter", 1); + Integer val = AbstractSfcObsDecoder.getInt(element, 1, 2); + changeCharacter = new DataItem("changeCharacter"); changeCharacter.setDataValue(val.doubleValue()); - changeCharacter.setDataPeriod(3 * TimeTools.SECONDS_HOUR); + changeCharacter + .setDataPeriod(3 * TimeUtil.SECONDS_PER_HOUR); pressureChange = SynopticGroups.decodePressureChange( element, 1); closeGroup(5); @@ -186,10 +186,11 @@ public class DRIBUSec1Decoder extends AbstractSectionDecoder { * @return The populated receiver object. */ public ObsCommon getDecodedData(ObsCommon receiver) { - final Double[] ignore = { VAL_ERROR.doubleValue(), - VAL_MISSING.doubleValue() }; if (receiver != null) { + final Double[] ignore = { + IDecoderConstants.VAL_ERROR.doubleValue(), + IDecoderConstants.VAL_MISSING.doubleValue() }; int iSubW = decoderParent.getISubw(); double conversion = 1.0; diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec2Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec2Decoder.java index c9459313a5..573ebad3c1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec2Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec2Decoder.java @@ -19,23 +19,18 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.buoy; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_3_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_ERROR; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_MISSING; - import java.util.regex.Pattern; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.DataItem; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSectionDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SynopticGroups; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.DataItem; -import com.raytheon.uf.edex.decodertools.core.ReportParser; +import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; /** * Decode synoptic section 2 data. This section has a single group which @@ -53,6 +48,9 @@ import com.raytheon.uf.edex.decodertools.core.ReportParser; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. + * Sep 26, 2014 3629 mapeters Removed unused fields, replaced static imports. + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} + * calls, changed SEC_2_PATTERN from String to Pattern. * * * @@ -61,16 +59,10 @@ import com.raytheon.uf.edex.decodertools.core.ReportParser; */ public class DRIBUSec2Decoder extends AbstractSectionDecoder { - public static final String SEC_2_PATTERN = "222[/0-9]{2}"; + public static final Pattern SEC_2_PATTERN = Pattern.compile("222[/0-9]{2}"); private DataItem seaTemp = null; - // high resolution wave period (second) - private Integer windWavePeriod_lo = null; - - // low resolution wave period (1 meter) - private Integer windWaveHeight_lo = null; - // high resolution wave period (1/10th second) private Integer windWavePeriod_hi = null; @@ -94,7 +86,6 @@ public class DRIBUSec2Decoder extends AbstractSectionDecoder { * Thrown when an relevant error has occurred. */ public void decode(ReportParser reportParser) throws DecoderException { - Pattern sec2 = Pattern.compile(SEC_2_PATTERN); init(); if (reportParser == null) { // nothing to do. @@ -102,7 +93,7 @@ public class DRIBUSec2Decoder extends AbstractSectionDecoder { } String element = null; - if (reportParser.positionTo(sec2)) { + if (reportParser.positionTo(SEC_2_PATTERN)) { while (true) { // if we run out of data, exit. if (reportParser.next()) { @@ -113,21 +104,19 @@ public class DRIBUSec2Decoder extends AbstractSectionDecoder { break; } - if (matchElement(element, SEC_3_LEAD)) { + if (ISynoptic.SEC_3_LEAD_PATTERN.matcher(element).find()) { break; - } else if (matchElement(element, SEC_4_LEAD)) { + } else if (ISynoptic.SEC_4_LEAD_PATTERN.matcher(element).find()) { break; - } else if (matchElement(element, SEC_5_LEAD)) { + } else if (ISynoptic.SEC_5_LEAD_PATTERN.matcher(element).find()) { break; } if ("0".equals(element.substring(0, 1))) { seaTemp = SynopticGroups.decodeTemperature(element, 2); - } else if ("1".equals(element.substring(0, 1))) { - windWavePeriod_lo = getInt(element, 1, 3); - windWaveHeight_lo = getInt(element, 3, 5); } else if ("20".equals(element.substring(0, 2))) { - windWavePeriod_hi = getInt(element, 1, 3); + windWavePeriod_hi = AbstractSfcObsDecoder.getInt(element, + 1, 3); if ((windWavePeriod_hi != null) && (windWavePeriod_hi >= 0)) { // TODO : For now the finest granularity in time is one // second, @@ -137,7 +126,8 @@ public class DRIBUSec2Decoder extends AbstractSectionDecoder { .round(windWavePeriod_hi / 10.0); } } else if ("21".equals(element.substring(0, 2))) { - windWaveHeight_hi = getInt(element, 3, 5); + windWaveHeight_hi = AbstractSfcObsDecoder.getInt(element, + 3, 5); } } // while } @@ -149,8 +139,6 @@ public class DRIBUSec2Decoder extends AbstractSectionDecoder { */ private void init() { seaTemp = null; - windWavePeriod_lo = null; - windWaveHeight_lo = null; windWavePeriod_hi = null; windWaveHeight_hi = null; } @@ -163,10 +151,11 @@ public class DRIBUSec2Decoder extends AbstractSectionDecoder { * @return The populated receiver object. */ public ObsCommon getDecodedData(ObsCommon receiver) { - final Double[] ignore = { VAL_ERROR.doubleValue(), - VAL_MISSING.doubleValue() }; if (receiver != null) { + final Double[] ignore = { + IDecoderConstants.VAL_ERROR.doubleValue(), + IDecoderConstants.VAL_MISSING.doubleValue() }; receiver.setSeaTemp(DataItem.getValue(seaTemp, ignore)); if ((windWavePeriod_hi != null) || (windWaveHeight_hi != null)) { diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec3Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec3Decoder.java index c919d7b7d6..0c805fbc72 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec3Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec3Decoder.java @@ -19,16 +19,13 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.buoy; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_3_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; - import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSectionDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.ReportParser; /** * Decode the Drifting buoy section 3 data. The current decoders skip Buoy @@ -42,6 +39,7 @@ import com.raytheon.uf.edex.decodertools.core.ReportParser; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070928 391 jkorman Initial Coding. + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @@ -73,7 +71,7 @@ public class DRIBUSec3Decoder extends AbstractSectionDecoder { return; } String element = null; - if (reportParser.positionTo(SEC_3_LEAD)) { + if (reportParser.positionTo(ISynoptic.SEC_3_LEAD_STRING)) { while (true) { // if we run out of data, exit. if (reportParser.next()) { @@ -84,9 +82,9 @@ public class DRIBUSec3Decoder extends AbstractSectionDecoder { break; } - if (matchElement(element, SEC_4_LEAD)) { + if (ISynoptic.SEC_4_LEAD_PATTERN.matcher(element).find()) { break; - } else if (matchElement(element, SEC_5_LEAD)) { + } else if (ISynoptic.SEC_5_LEAD_PATTERN.matcher(element).find()) { break; } diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec4Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec4Decoder.java index b31abd45e3..58647cf849 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec4Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec4Decoder.java @@ -19,16 +19,13 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.buoy; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; - import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSectionDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.ReportParser; /** * Decode synoptic section 4 data. This section has a single group which @@ -41,6 +38,7 @@ import com.raytheon.uf.edex.decodertools.core.ReportParser; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @author jkorman @@ -77,7 +75,7 @@ public class DRIBUSec4Decoder extends AbstractSectionDecoder { return; } String element = null; - if (reportParser.positionTo(SEC_4_LEAD)) { + if (reportParser.positionTo(ISynoptic.SEC_4_LEAD_STRING)) { while (true) { // if we run out of data, exit. if (reportParser.next()) { @@ -88,13 +86,14 @@ public class DRIBUSec4Decoder extends AbstractSectionDecoder { break; } - if (matchElement(element, SEC_5_LEAD)) { + if (ISynoptic.SEC_5_LEAD_PATTERN.matcher(element).find()) { break; } if ("7".equals(element.substring(0, 1))) { - driftSpeed = getInt(element, 1, 3); - driftDirection = getInt(element, 3, 5); + driftSpeed = AbstractSfcObsDecoder.getInt(element, 1, 3); + driftDirection = AbstractSfcObsDecoder + .getInt(element, 3, 5); closeGroup(7); } diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec5Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec5Decoder.java index 9c494a365c..8149abdb2c 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec5Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSec5Decoder.java @@ -20,10 +20,10 @@ package com.raytheon.edex.plugin.sfcobs.decoder.buoy; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSectionDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.ReportParser; /** * Decode buoy section 5 data. Section 5 data is specific to various regions in diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSynopticDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSynopticDecoder.java index aa999dc7ec..c092141901 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSynopticDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/buoy/DRIBUSynopticDecoder.java @@ -19,12 +19,14 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.buoy; +import java.util.regex.Pattern; + import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; -import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; /** * Decode the FM-18 Buoy observation data. @@ -36,6 +38,10 @@ import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070928 391 jkorman Initial Coding. + * Jul 23, 2014 3410 bclement location changed to floats + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} + * calls, added Pattern constants. + * * * * @author jkorman @@ -47,9 +53,25 @@ public class DRIBUSynopticDecoder extends AbstractSynopticDecoder { // private Integer dateMM = null; // Month // private Integer dateJ = null; // Units digit of year // private Integer dategg = null; // Minutes - private Double buoyLatitude = null; - private Double buoyLongitude = null; + private static final Pattern PATTERN_1357d5 = Pattern + .compile("[1357]\\d{5}"); + + private static final Pattern PATTERN_1357d4 = Pattern + .compile("[1357]\\d{4}/"); + + private static final Pattern PATTERN_1357d3 = Pattern + .compile("[1357]\\d{3}//"); + + private static final Pattern PATTERN_d6 = Pattern.compile("\\d{6}"); + + private static final Pattern PATTERN_d5 = Pattern.compile("\\d{5}/"); + + private static final Pattern PATTERN_d4 = Pattern.compile("\\d{4}//"); + + private Float buoyLatitude = null; + + private Float buoyLongitude = null; private Integer buoyQuadrant = null; @@ -123,7 +145,7 @@ public class DRIBUSynopticDecoder extends AbstractSynopticDecoder { } report = (ObsCommon) super.consolidateReport(); if (report != null) { - report.setReportType(IDecoderConstants.DRIFTING_BUOY); + report.setReportType(DRIFTING_BUOY); SurfaceObsLocation loc = new SurfaceObsLocation( getReportIdentifier()); @@ -183,21 +205,23 @@ public class DRIBUSynopticDecoder extends AbstractSynopticDecoder { reportParser.next(); String element = reportParser.getElement(); Integer lat = null; - double divisor = 1000.0; - if (matchElement(element, "[1357]\\d{5}")) { - buoyQuadrant = getInt(element, 0, 1); - lat = getInt(element, 1, 6); - } else if (matchElement(element, "[1357]\\d{4}/")) { - buoyQuadrant = getInt(element, 0, 1); - lat = getInt(element, 1, 5); - divisor = 100.0; - } else if (matchElement(element, "[1357]\\d{3}//")) { - buoyQuadrant = getInt(element, 0, 1); - lat = getInt(element, 1, 4); - divisor = 10.0; + float divisor = 1000.0f; + if (element != null) { + if (PATTERN_1357d5.matcher(element).find()) { + buoyQuadrant = getInt(element, 0, 1); + lat = getInt(element, 1, 6); + } else if (PATTERN_1357d4.matcher(element).find()) { + buoyQuadrant = getInt(element, 0, 1); + lat = getInt(element, 1, 5); + divisor = 100.0f; + } else if (PATTERN_1357d3.matcher(element).find()) { + buoyQuadrant = getInt(element, 0, 1); + lat = getInt(element, 1, 4); + divisor = 10.0f; + } } if ((lat != null) && (lat >= 0)) { - buoyLatitude = lat.doubleValue() / divisor; + buoyLatitude = lat.floatValue() / divisor; } else { buoyLatitude = null; } @@ -216,18 +240,20 @@ public class DRIBUSynopticDecoder extends AbstractSynopticDecoder { reportParser.next(); String element = reportParser.getElement(); Integer lon = null; - double divisor = 1000.0; - if (matchElement(element, "\\d{6}")) { - lon = getInt(element, 0, 6); - } else if (matchElement(element, "\\d{5}/")) { - lon = getInt(element, 0, 5); - divisor = 100.0; - } else if (matchElement(element, "\\d{4}//")) { - lon = getInt(element, 0, 4); - divisor = 10.0; + float divisor = 1000.0f; + if (element != null) { + if (PATTERN_d6.matcher(element).find()) { + lon = getInt(element, 0, 6); + } else if (PATTERN_d5.matcher(element).find()) { + lon = getInt(element, 0, 5); + divisor = 100.0f; + } else if (PATTERN_d4.matcher(element).find()) { + lon = getInt(element, 0, 4); + divisor = 10.0f; + } } if ((lon != null) && (lon >= 0)) { - buoyLongitude = lon.doubleValue() / divisor; + buoyLongitude = lon.floatValue() / divisor; } else { buoyLongitude = null; } @@ -242,8 +268,8 @@ public class DRIBUSynopticDecoder extends AbstractSynopticDecoder { if ((buoyLatitude != null) && (buoyLongitude != null) && (buoyQuadrant != null)) { if ((buoyLatitude >= 0) && (buoyLongitude >= 0)) { - double lat = 0; - double lon = 0; + float lat = 0; + float lon = 0; switch (buoyQuadrant) { case 1: { lat = 1; diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSectionDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSectionDecoder.java index f381feb20e..9c74df2089 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSectionDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSectionDecoder.java @@ -20,8 +20,8 @@ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.ReportParser; /** * diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSynopticDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSynopticDecoder.java index c5c1af1540..017f1e50fa 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSynopticDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/AbstractSynopticDecoder.java @@ -23,12 +23,14 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.TimeZone; +import java.util.regex.Pattern; import com.raytheon.edex.exception.DecoderException; import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.decodertools.time.ITimeService; import com.raytheon.uf.edex.decodertools.time.TimeTools; @@ -45,6 +47,8 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070928 391 jkorman Initial Coding. + * May 14, 2014 2536 bclement removed TimeTools usage + * Sep 30, 2014 3629 mapeters Added LAT_PATTERN, LON_PATTERN. * * * @author jkorman @@ -52,6 +56,11 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; */ public abstract class AbstractSynopticDecoder extends AbstractSfcObsDecoder { + protected static final Pattern LAT_PATTERN = Pattern.compile("99\\d{3}"); + + protected static final Pattern LON_PATTERN = Pattern + .compile("[1357]((0\\d{3})|(1(([0-7]\\d{2})|(800))))"); + private static final int LINE_CUT_LENGTH = 58; private static final ArrayList wxAbrev = new ArrayList(); @@ -392,7 +401,7 @@ public abstract class AbstractSynopticDecoder extends AbstractSfcObsDecoder { ObsCommon report = null; Calendar oTime = calculateObsDateTime( - TimeTools.getSystemCalendar(obsYear, obsMonth, obsDay), obsDay, + TimeUtil.newGmtCalendar(obsYear, obsMonth, obsDay), obsDay, obsHour, obsYear, obsMonth); if (oTime != null) { report = new ObsCommon(); @@ -460,7 +469,7 @@ public abstract class AbstractSynopticDecoder extends AbstractSfcObsDecoder { Integer obsDay, Integer obsHour, Integer obsYear, Integer obsMonth) { Calendar obsTime = null; Calendar tTime = TimeTools.copyToNearestHour(currentClock); - TimeTools.rollByDays(tTime, 1); + tTime.add(Calendar.DAY_OF_MONTH, 1); if ((obsDay != null) && (obsHour != null)) { if (obsDay == currentClock.get(Calendar.DAY_OF_MONTH)) { @@ -475,7 +484,7 @@ public abstract class AbstractSynopticDecoder extends AbstractSfcObsDecoder { int i = 0; while (i++ < 25) { // Go back a day - TimeTools.rollByDays(tTime, -1); + tTime.add(Calendar.DAY_OF_MONTH, -1); if (obsDay == tTime.get(Calendar.DAY_OF_MONTH)) { // Day values are equal, so this is it. obsTime = TimeTools.copyToNearestHour(tTime); @@ -553,7 +562,8 @@ public abstract class AbstractSynopticDecoder extends AbstractSfcObsDecoder { Integer obsDay = 31; Integer obsHour = 21; - Calendar currentClock = TimeTools.getSystemCalendar(obsYear, obsMonth, obsDay); + Calendar currentClock = TimeUtil.newGmtCalendar(obsYear, obsMonth, + obsDay); System.out.println(TMFMT.format(currentClock.getTime())); Calendar c = calculateObsDateTime(currentClock,obsDay,obsHour,obsYear,obsMonth); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/CMANSynopticDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/CMANSynopticDecoder.java index fcc3e226e4..cf7231ee91 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/CMANSynopticDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/CMANSynopticDecoder.java @@ -23,13 +23,13 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.regional.Sec5MaritimeDecoder; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; import com.raytheon.uf.common.pointdata.spatial.ObStation; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.edex.database.DataAccessLayerException; -import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; import com.raytheon.uf.edex.pointdata.spatial.ObStationDao; /** @@ -46,6 +46,7 @@ import com.raytheon.uf.edex.pointdata.spatial.ObStationDao; * Dec 17, 2007 600 bphillip Added dao pool usage * 20080116 798 jkorman Changed logging levels. * Feb 27, 2013 1638 mschenke Moved ObStationDao to edex pointdata plugin + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @author jkorman @@ -80,7 +81,8 @@ public class CMANSynopticDecoder extends LandSynopticDecoder { if (isValid) { reportParser.next(); element = reportParser.getElement(); - if (matchElement(element, ISynoptic.YYGGI_SUB_W)) { + if (element != null + && ISynoptic.YYGGI_SUB_W.matcher(element).find()) { try { Integer month = getHeader().getMonth(); @@ -167,7 +169,7 @@ public class CMANSynopticDecoder extends LandSynopticDecoder { if (report != null) { // If we didn't find this report in the catalog then don't store it. if ((stationInfo != null)) { - report.setReportType(IDecoderConstants.SYNOPTIC_CMAN); + report.setReportType(SYNOPTIC_CMAN); // Land synoptic needs to add the Fixed Land report SurfaceObsLocation loc = new SurfaceObsLocation( getReportIdentifier()); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/ISynoptic.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/ISynoptic.java index 9098892d47..461775c328 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/ISynoptic.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/ISynoptic.java @@ -19,6 +19,8 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; +import java.util.regex.Pattern; + /** * * @@ -32,6 +34,7 @@ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070925 391 jkorman Initial Coding. + * Sep 30, 2014 3629 mapeters Changed constants to Patterns, added Pattern constants. * * * @author jkorman @@ -39,26 +42,40 @@ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; */ public interface ISynoptic { - public static final String GENERAL_GROUP = "[0-9/]{5}"; + public static final Pattern GENERAL_GROUP = Pattern + .compile("[0-9/]{5}"); - public static final String YYGGI_SUB_W = "([012]\\d{1}|3[01])[0-5]\\d{1}[/0134]"; + public static final Pattern YYGGI_SUB_W = Pattern + .compile("([012]\\d{1}|3[01])[0-5]\\d{1}[/0134]"); - public static final String SEC_1_IRIXHVV = "[0-4][0-7][0-9/](\\d{2}|//)"; + public static final Pattern SEC_1_IRIXHVV = Pattern + .compile("[0-4][0-7][0-9/](\\d{2}|//)"); - public static final String SEC_1_NDDFF = "([/0-9])(//|([012]\\d)|(3[0-6]))(//|\\d{2})"; + public static final Pattern SEC_1_NDDFF = Pattern + .compile("([/0-9])(//|([012]\\d)|(3[0-6]))(//|\\d{2})"); - public static final String SEC_1_TEMPDEW = "[0128](\\d{4} | ////)"; + public static final Pattern SEC_5_72_CTEMP = Pattern + .compile("1[01][0-9/]{2}"); - public static final String SEC_5_72_CTEMP = "1[01][0-9/]{2}"; + public static final Pattern SEC_5_72_CMAXMIN = Pattern + .compile("[01][0-9/]{2}[01][0-9/]{2}"); - public static final String SEC_5_72_CMAXMIN = "[01][0-9/]{2}[01][0-9/]{2}"; + public static final Pattern SEC_2_LEAD = Pattern + .compile("222[0-9/]{2}"); - public static final String SEC_2_LEAD = "222[0-9/]{2}"; + public static final String SEC_3_LEAD_STRING = "333"; - public static final String SEC_3_LEAD = "333"; + public static final Pattern SEC_3_LEAD_PATTERN = Pattern + .compile(SEC_3_LEAD_STRING); - public static final String SEC_4_LEAD = "444"; + public static final String SEC_4_LEAD_STRING = "444"; - public static final String SEC_5_LEAD = "555"; + public static final Pattern SEC_4_LEAD_PATTERN = Pattern + .compile(SEC_4_LEAD_STRING); + + public static final String SEC_5_LEAD_STRING = "555"; + + public static final Pattern SEC_5_LEAD_PATTERN = Pattern + .compile(SEC_5_LEAD_STRING); } diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/LandSynopticDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/LandSynopticDecoder.java index ef52f2ef9e..057b9d35f0 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/LandSynopticDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/LandSynopticDecoder.java @@ -26,6 +26,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.regional.Sec5Block72Decoder; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; @@ -52,6 +53,7 @@ import com.raytheon.uf.edex.pointdata.spatial.ObStationDao; * Dec 17, 2007 600 bphillip Added dao pool usage * 20080116 798 jkorman Changed logging levels. * Feb 27, 2013 1638 mschenke Moved ObStationDao to edex pointdata plugin + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @author jkorman @@ -88,7 +90,8 @@ public class LandSynopticDecoder extends AbstractSynopticDecoder { if (isValid) { reportParser.next(); element = reportParser.getElement(); - if (matchElement(element, ISynoptic.YYGGI_SUB_W)) { + if (element != null + && ISynoptic.YYGGI_SUB_W.matcher(element).find()) { try { Integer month = getHeader().getMonth(); if (month != -1) { diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MAROBSynopticDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MAROBSynopticDecoder.java index 8b64b44644..b1a74cfd88 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MAROBSynopticDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MAROBSynopticDecoder.java @@ -23,9 +23,9 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; /** * Decode the MAROB (Marine Observation) data. This format is very similar to @@ -39,6 +39,7 @@ import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. * 20071217 453 jkorman Added code to report MAROB report type. + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @@ -78,7 +79,8 @@ public class MAROBSynopticDecoder extends SHIPSynopticDecoder { setReportIdentifier(reportParser.getElement()); reportParser.next(); element = reportParser.getElement(); - if (matchElement(element, ISynoptic.YYGGI_SUB_W)) { + if (element != null + && ISynoptic.YYGGI_SUB_W.matcher(element).find()) { try { Integer month = getHeader().getMonth(); if (month != -1) { @@ -129,7 +131,7 @@ public class MAROBSynopticDecoder extends SHIPSynopticDecoder { ObsCommon report = (ObsCommon) super.consolidateReport(); // Need to override the reportType. if (report != null) { - report.setReportType(IDecoderConstants.SYNOPTIC_MAROB); + report.setReportType(SYNOPTIC_MAROB); } return report; } diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MobileSynopticDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MobileSynopticDecoder.java index a3d3bccdf9..6b7b86de55 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MobileSynopticDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/MobileSynopticDecoder.java @@ -19,10 +19,13 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; +import java.util.regex.Pattern; + import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; @@ -39,6 +42,9 @@ import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20070928 391 jkorman Initial Coding. + * Jul 23, 2014 3410 bclement location changed to floats + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} + * calls, added ELEV_PATTERN. * * * @author jkorman @@ -46,12 +52,15 @@ import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; */ public class MobileSynopticDecoder extends AbstractSynopticDecoder { + private static final Pattern ELEV_PATTERN = Pattern + .compile("[/0-9]{4}[1-8]"); + // The logger private Log logger = LogFactory.getLog(getClass()); - private Double mobileLatitude = null; + private Float mobileLatitude = null; - private Double mobileLongitude = null; + private Float mobileLongitude = null; private Integer mobileQuadrant = null; @@ -91,7 +100,8 @@ public class MobileSynopticDecoder extends AbstractSynopticDecoder { setReportIdentifier(reportParser.getElement()); reportParser.next(); element = reportParser.getElement(); - if (matchElement(element, ISynoptic.YYGGI_SUB_W)) { + if (element != null + && ISynoptic.YYGGI_SUB_W.matcher(element).find()) { try { Integer month = getHeader().getMonth(); if (month != -1) { @@ -170,10 +180,10 @@ public class MobileSynopticDecoder extends AbstractSynopticDecoder { reportParser.next(); String element = reportParser.getElement(); - if (matchElement(element, "99\\d{3}")) { + if (element != null && LAT_PATTERN.matcher(element).find()) { Integer lat = getInt(element, 2, 5); if (lat != null) { - mobileLatitude = lat.doubleValue() / 10.0; + mobileLatitude = lat.floatValue() / 10.0f; } } } @@ -189,10 +199,10 @@ public class MobileSynopticDecoder extends AbstractSynopticDecoder { reportParser.next(); String element = reportParser.getElement(); - if (matchElement(element, "[1357]((0\\d{3})|(1(([0-7]\\d{2})|(800))))")) { + if (element != null && LON_PATTERN.matcher(element).find()) { Integer lon = getInt(element, 2, 5); if (lon != null) { - mobileLongitude = lon.doubleValue() / 10.0; + mobileLongitude = lon.floatValue() / 10.0f; } mobileQuadrant = getInt(element, 0, 1); } @@ -207,8 +217,8 @@ public class MobileSynopticDecoder extends AbstractSynopticDecoder { if ((mobileLatitude != null) && (mobileLongitude != null) && (mobileQuadrant != null)) { if ((mobileLatitude >= 0) && (mobileLongitude >= 0)) { - double lat = 0; - double lon = 0; + float lat = 0; + float lon = 0; switch (mobileQuadrant) { case 1: { lat = 1; @@ -256,7 +266,7 @@ public class MobileSynopticDecoder extends AbstractSynopticDecoder { reportParser.next(); String element = reportParser.getElement(); - if (matchElement(element, "[/0-9]{4}[1-8]")) { + if (element != null && ELEV_PATTERN.matcher(element).find()) { Integer elev = getInt(element, 0, 4); if (elev != null) { if (elev >= 0) { diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SHIPSynopticDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SHIPSynopticDecoder.java index 7999f947ae..5ba6c69805 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SHIPSynopticDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SHIPSynopticDecoder.java @@ -23,6 +23,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.regional.Sec5MaritimeDecoder; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; @@ -30,7 +31,6 @@ import com.raytheon.uf.common.pointdata.spatial.ObStation; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; import com.raytheon.uf.edex.pointdata.spatial.ObStationDao; /** @@ -49,18 +49,21 @@ import com.raytheon.uf.edex.pointdata.spatial.ObStationDao; * 20080108 721 jkorman Added buoy id query. * 20120619 DR 14015 mporricelli Added elevation for fixed buoys * Feb 27, 2013 1638 mschenke Moved ObStationDao to edex pointdata plugin + * Jul 23, 2014 3410 bclement location changed to floats + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @author jkorman * @version 1.0 */ public class SHIPSynopticDecoder extends AbstractSynopticDecoder { + // The logger private Log logger = LogFactory.getLog(getClass()); - protected Double shipLatitude = null; + protected Float shipLatitude = null; - protected Double shipLongitude = null; + protected Float shipLongitude = null; protected Integer shipElev = null; @@ -123,7 +126,8 @@ public class SHIPSynopticDecoder extends AbstractSynopticDecoder { } reportParser.next(); element = reportParser.getElement(); - if (matchElement(element, ISynoptic.YYGGI_SUB_W)) { + if (element != null + && ISynoptic.YYGGI_SUB_W.matcher(element).find()) { try { Integer month = getHeader().getMonth(); if (month != -1) { @@ -161,8 +165,8 @@ public class SHIPSynopticDecoder extends AbstractSynopticDecoder { // with the spi files - shipLatitude = buoyLat; - shipLongitude = buoyLon; + shipLatitude = buoyLat != null ? buoyLat.floatValue() : null; + shipLongitude = buoyLon != null ? buoyLon.floatValue() : null; shipElev = buoyElev; if ((shipLatitude == null) || (shipLongitude == null)) { clearSectionDecoders(); @@ -197,9 +201,9 @@ public class SHIPSynopticDecoder extends AbstractSynopticDecoder { if (report != null) { if (isFixedBuoy) { - report.setReportType(IDecoderConstants.SYNOPTIC_MOORED_BUOY); + report.setReportType(SYNOPTIC_MOORED_BUOY); } else { - report.setReportType(IDecoderConstants.SYNOPTIC_SHIP); + report.setReportType(SYNOPTIC_SHIP); } SurfaceObsLocation loc = new SurfaceObsLocation( @@ -219,10 +223,10 @@ public class SHIPSynopticDecoder extends AbstractSynopticDecoder { reportParser.next(); String element = reportParser.getElement(); - if (matchElement(element, "99\\d{3}")) { + if (element != null && LAT_PATTERN.matcher(element).find()) { Integer lat = getInt(element, 2, 5); if ((lat != null) && (lat >= 0)) { - shipLatitude = lat.doubleValue() / 10.0; + shipLatitude = lat.floatValue() / 10.0f; } else { shipLatitude = null; } @@ -237,10 +241,10 @@ public class SHIPSynopticDecoder extends AbstractSynopticDecoder { reportParser.next(); String element = reportParser.getElement(); - if (matchElement(element, "[1357]((0\\d{3})|(1(([0-7]\\d{2})|(800))))")) { + if (element != null && LON_PATTERN.matcher(element).find()) { Integer lon = getInt(element, 1, 5); if ((lon != null) && (lon >= 0)) { - shipLongitude = lon.doubleValue() / 10.0; + shipLongitude = lon.floatValue() / 10.0f; } else { shipLongitude = null; } @@ -257,8 +261,8 @@ public class SHIPSynopticDecoder extends AbstractSynopticDecoder { if ((shipLatitude != null) && (shipLongitude != null) && (shipQuadrant != null)) { if ((shipLatitude >= 0) && (shipLongitude >= 0)) { - double lat = 0; - double lon = 0; + float lat = 0; + float lon = 0; switch (shipQuadrant) { case 1: { lat = 1; diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticGroups.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticGroups.java index 70ff11e4b8..ba14b052ab 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticGroups.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticGroups.java @@ -19,13 +19,15 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; +import java.util.regex.Pattern; -import com.raytheon.uf.edex.decodertools.core.DataItem; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; +import javax.measure.converter.UnitConverter; +import javax.measure.unit.SI; + +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.DataItem; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; -import com.raytheon.uf.edex.decodertools.time.TimeTools; /** * Various methods for decoding specific common data from the synoptic @@ -52,6 +54,11 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * ------------ ---------- ----------- -------------------------- * 20070925 391 jkorman Initial Coding. * 20071109 391 jkorman Factored out time constants. + * Sep 18, 2014 #3627 mapeters Convert units using {@link UnitConverter}. + * Sep 26, 2014 #3629 mapeters Replaced static imports. + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} + * calls, added HUMIDITY_PATTERN. + * * * * @author jkorman @@ -59,6 +66,8 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; */ public class SynopticGroups { + private static final Pattern HUMIDITY_PATTERN = Pattern.compile("2\\d{4}"); + private static final int PREFIX_START = 0; private static final String RH_PREFIX = "29"; @@ -67,6 +76,12 @@ public class SynopticGroups { // TODO : This needs to be external. private static int[] precipHours = { -1, 6, 12, 18, 24, 1, 2, 3, 9, 15 }; + private static final UnitConverter cToK = SI.CELSIUS + .getConverterTo(SI.KELVIN); + + private static final UnitConverter hPaToPa = SI.HECTO(SI.PASCAL) + .getConverterTo(SI.PASCAL); + /** * Decode the relative humidity group. * @@ -80,14 +95,13 @@ public class SynopticGroups { int lookingForSect) { DataItem decodedItem = null; - if (matchElement(groupData, "2\\d{4}")) { + if (groupData != null && HUMIDITY_PATTERN.matcher(groupData).find()) { Integer val = Integer.parseInt(groupData.substring(2, 5)); if ((val != null) && (val >= 0)) { if (lookingForSect == 1) { if (RH_PREFIX.equals(groupData.substring(PREFIX_START, RH_PREFIX.length()))) { - decodedItem = new DataItem("Percent", "relHum", - lookingForSect); + decodedItem = new DataItem("relHum"); decodedItem.setDataValue(val.doubleValue()); } } @@ -118,7 +132,7 @@ public class SynopticGroups { if ("///".equals(s)) { return decodedItem; } - Integer val = getInt(groupData, 2, 5); + Integer val = AbstractSfcObsDecoder.getInt(groupData, 2, 5); if ((val != null) && (val >= 0)) { String dataItemName = null; int sign = 0; @@ -127,11 +141,9 @@ public class SynopticGroups { case '0': { if (lookingForSect == 2) { if ((sign = getSign(sn)) != 0) { - decodedItem = new DataItem("Kelvin", "seaSfcTemp", - lookingForSect); - decodedItem.setDataValue(DecoderTools - .celsiusToKelvin(val, sign, - defaultTempScale)); + decodedItem = new DataItem("seaSfcTemp"); + decodedItem.setDataValue(cToK.convert(val * sign + / defaultTempScale)); } } break; @@ -144,10 +156,9 @@ public class SynopticGroups { } if ((dataItemName != null) && ((sign = getSign(sn)) != 0)) { - decodedItem = new DataItem("Kelvin", dataItemName, - lookingForSect); - decodedItem.setDataValue(DecoderTools.celsiusToKelvin( - val, sign, defaultTempScale)); + decodedItem = new DataItem(dataItemName); + decodedItem.setDataValue(cToK.convert(val * sign + / defaultTempScale)); } break; } @@ -161,21 +172,18 @@ public class SynopticGroups { } if ((dataItemName != null) && ((sign = getSign(sn)) != 0)) { - decodedItem = new DataItem("Kelvin", dataItemName, - lookingForSect); - decodedItem.setDataValue(DecoderTools.celsiusToKelvin( - val, sign, defaultTempScale)); + decodedItem = new DataItem(dataItemName); + decodedItem.setDataValue(cToK.convert(val * sign + / defaultTempScale)); } break; } case '8': { if (lookingForSect == 2) { if ((sign = getSign(sn)) != 0) { - decodedItem = new DataItem("Kelvin", "wetBulbTemp", - lookingForSect); - decodedItem.setDataValue(DecoderTools - .celsiusToKelvin(val, sign, - defaultTempScale)); + decodedItem = new DataItem("wetBulbTemp"); + decodedItem.setDataValue(cToK.convert(val * sign + / defaultTempScale)); } } break; @@ -203,19 +211,16 @@ public class SynopticGroups { if ((groupData != null) && (groupData.length() == 5)) { if ((groupData.charAt(0) == '3') && (lookingForSect == 1)) { - Integer val = getInt(groupData, 1, 5); + Integer val = AbstractSfcObsDecoder.getInt(groupData, 1, 5); if ((val != null) && (val >= 0)) { - decodedItem = new DataItem("Pascals", "stationPressure", - lookingForSect); + decodedItem = new DataItem("stationPressure"); // RULE : If the value is between 0 and 100, assume the // value // is above 1000 hPa i.e. 0132 --> 1013.2 hPa --> 101320 Pa if (val < 1000) { - decodedItem - .setDataValue(DecoderTools.hPaToPascals(val) + 100000); + decodedItem.setDataValue(hPaToPa.convert(val) + 100000); } else { - decodedItem - .setDataValue(DecoderTools.hPaToPascals(val)); + decodedItem.setDataValue(hPaToPa.convert(val)); } } } @@ -240,19 +245,16 @@ public class SynopticGroups { if ((groupData != null) && (groupData.length() == 5)) { if ((groupData.charAt(0) == '4') && (lookingForSect == 1)) { - Integer val = getInt(groupData, 1, 5); + Integer val = AbstractSfcObsDecoder.getInt(groupData, 1, 5); if ((val != null) && (val >= 0)) { - decodedItem = new DataItem("Pascals", "seaLevelPressure", - lookingForSect); + decodedItem = new DataItem("seaLevelPressure"); // RULE : If the value is between 0 and 100, assume the // value // is above 1000 hPa i.e. 0132 --> 1013.2 hPa --> 101320 Pa if (val < 1000) { - decodedItem - .setDataValue(DecoderTools.hPaToPascals(val) + 100000); + decodedItem.setDataValue(hPaToPa.convert(val) + 100000); } else { - decodedItem - .setDataValue(DecoderTools.hPaToPascals(val)); + decodedItem.setDataValue(hPaToPa.convert(val)); } } } @@ -277,12 +279,11 @@ public class SynopticGroups { if ((groupData != null) && (groupData.length() == 5)) { if ((groupData.charAt(0) == '5') && (lookingForSect == 1)) { - Integer val = getInt(groupData, 2, 5); + Integer val = AbstractSfcObsDecoder.getInt(groupData, 2, 5); if ((val != null) && (val >= 0)) { - decodedItem = new DataItem("Pascals", "3HRChange", - lookingForSect); - decodedItem.setDataValue(DecoderTools.hPaToPascals(val)); - decodedItem.setDataPeriod(3 * TimeTools.SECONDS_HOUR); + decodedItem = new DataItem("3HRChange"); + decodedItem.setDataValue(hPaToPa.convert(val)); + decodedItem.setDataPeriod(3 * TimeUtil.SECONDS_PER_HOUR); } } } @@ -305,10 +306,9 @@ public class SynopticGroups { if ((groupData != null) && (groupData.length() == 5)) { if ((groupData.charAt(0) == '6')) { if ((lookingForSect == 1) || (lookingForSect == 3)) { - Integer val = getInt(groupData, 1, 4); + Integer val = AbstractSfcObsDecoder.getInt(groupData, 1, 4); if (val != null) { - decodedItem = new DataItem("millimeters", "precip", - lookingForSect); + decodedItem = new DataItem("precip"); if ((val >= 0) && (val < 990)) { decodedItem.setDataValue(val.doubleValue()); } else { @@ -316,30 +316,28 @@ public class SynopticGroups { decodedItem.setDataValue(value); } - val = getInt(groupData, 4, 5); + val = AbstractSfcObsDecoder.getInt(groupData, 4, 5); if ((val != null) && (val >= 0)) { decodedItem.setDataPeriod(precipHours[val] - * TimeTools.SECONDS_HOUR); + * TimeUtil.SECONDS_PER_HOUR); } } } } else if ((groupData.charAt(0) == '7') && (lookingForSect == 3)) { - Integer val = getInt(groupData, 1, 5); + Integer val = AbstractSfcObsDecoder.getInt(groupData, 1, 5); if ((val != null) && (val >= 0)) { - decodedItem = new DataItem("millimeters", "precip", - lookingForSect); + decodedItem = new DataItem("precip"); if (val > 9998) { val = 0; } decodedItem.setDataValue(val.doubleValue() / 10.0); - decodedItem.setDataPeriod(TimeTools.SECONDS_DAY); + decodedItem.setDataPeriod(TimeUtil.SECONDS_PER_DAY); } } else if ((groupData.charAt(0) == '2') && (lookingForSect == 5)) { - Integer val = getInt(groupData, 1, 5); + Integer val = AbstractSfcObsDecoder.getInt(groupData, 1, 5); if ((val != null) && (val >= 0)) { - decodedItem = new DataItem("millimeters", "cityPrecip", - lookingForSect); + decodedItem = new DataItem("cityPrecip"); if (!IDecoderConstants.VAL_MISSING.equals(val)) { // convert 1/100ths of an inch to millimeters. decodedItem @@ -347,7 +345,7 @@ public class SynopticGroups { } else { decodedItem.setDataValue(val.doubleValue()); } - decodedItem.setDataPeriod(TimeTools.SECONDS_DAY); + decodedItem.setDataPeriod(TimeUtil.SECONDS_PER_DAY); } } } @@ -412,12 +410,12 @@ public class SynopticGroups { if ("minTemp".equals(di.getDataName())) { int p = minTbl[regionIdx][hourTbl[obsHour]]; if (p != 99) { - period = new Integer(p * TimeTools.SECONDS_HOUR); + period = new Integer(p * TimeUtil.SECONDS_PER_HOUR); } } else if ("maxTemp".equals(di.getDataName())) { int p = maxTbl[regionIdx][hourTbl[obsHour]]; if (p != 99) { - period = new Integer(p * TimeTools.SECONDS_HOUR); + period = new Integer(p * TimeUtil.SECONDS_PER_HOUR); } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec1Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec1Decoder.java index f2c7bb63c5..7a349e3a15 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec1Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec1Decoder.java @@ -19,24 +19,17 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.checkRange; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_2_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_3_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_ERROR; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_MISSING; - import java.util.Calendar; +import java.util.regex.Pattern; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.DataItem; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.uf.common.dataplugin.sfcobs.AncPrecip; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.decodertools.core.DataItem; -import com.raytheon.uf.edex.decodertools.core.ReportParser; +import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; import com.raytheon.uf.edex.decodertools.time.TimeTools; /** @@ -53,6 +46,11 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * 20071109 391 jkorman Added guard for short data. * 20080123 757 jkorman Ensure that the group 9 obs time has * the correct day of month. + * Sep 18, 2014 #3627 mapeters Updated deprecated {@link TimeTools} usage, + * removed unused lowCloudAmount field. + * Sep 26, 2014 #3629 mapeters Replaced static imports. + * Sep 30, 2014 #3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} + * calls, added PATTERN_8094. * * * @@ -60,6 +58,9 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * @version 1.0 */ public class SynopticSec1Decoder extends AbstractSectionDecoder { + + private static final Pattern PATTERN_8094 = Pattern.compile("8[/0-9]{4}"); + // The report observation hour - from 9 group private Integer obsTimeHour = null; @@ -102,8 +103,6 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { private Integer loCloudHeight = null; - private Integer lowCloudAmount = null; - private Integer lowCloudType = null; private Integer midCloudType = null; @@ -151,24 +150,25 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { break; } if (!irix && !winds - && matchElement(element, ISynoptic.SEC_1_IRIXHVV)) { + && ISynoptic.SEC_1_IRIXHVV.matcher(element).find()) { // iSubR = getInt(element, 0, 1); - getInt(element, 0, 1); + AbstractSfcObsDecoder.getInt(element, 0, 1); // iSubX = getInt(element, 1, 2); - getInt(element, 1, 2); + AbstractSfcObsDecoder.getInt(element, 1, 2); - loCloudHeight = getInt(element, 2, 3); - visibility = getInt(element, 3, 5); + loCloudHeight = AbstractSfcObsDecoder.getInt(element, 2, 3); + visibility = AbstractSfcObsDecoder.getInt(element, 3, 5); irix = true; continue; - } else if (!winds && matchElement(element, ISynoptic.SEC_1_NDDFF)) { - totalCloud = getInt(element, 0, 1); - Integer temp = getInt(element, 1, 3); + } else if (!winds + && ISynoptic.SEC_1_NDDFF.matcher(element).find()) { + totalCloud = AbstractSfcObsDecoder.getInt(element, 0, 1); + Integer temp = AbstractSfcObsDecoder.getInt(element, 1, 3); if ((temp != null) && (temp >= 0)) { windDirection = temp * 10; } - temp = getInt(element, 3, 5); + temp = AbstractSfcObsDecoder.getInt(element, 3, 5); if ((temp != null) && (temp >= 0)) { windSpeed = temp.doubleValue(); } @@ -179,7 +179,8 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { } element = reportParser.getElement(); if ("00".equals(element.substring(0, 2))) { - windSpeed = getInt(element, 2, 5).doubleValue(); + windSpeed = AbstractSfcObsDecoder.getInt(element, 2, 5) + .doubleValue(); winds = true; } else { // TODO : Need to indicate an error here! @@ -188,13 +189,14 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { winds = true; } continue; - } else if (winds && matchElement(element, SEC_2_LEAD)) { + } else if (winds + && ISynoptic.SEC_2_LEAD.matcher(element).find()) { break; - } else if (SEC_3_LEAD.equals(element)) { + } else if (ISynoptic.SEC_3_LEAD_STRING.equals(element)) { break; - } else if (SEC_4_LEAD.equals(element)) { + } else if (ISynoptic.SEC_4_LEAD_STRING.equals(element)) { break; - } else if (SEC_5_LEAD.equals(element)) { + } else if (ISynoptic.SEC_5_LEAD_STRING.equals(element)) { break; } else if ("80000".equals(element)) { break; @@ -232,8 +234,8 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { closeGroup(4); winds = true; } else if ("5".equals(element.substring(0, 1)) && doGroup(5)) { - Integer val = getInt(element, 1, 2); - changeCharacter = new DataItem("int", "changeCharacter", 1); + Integer val = AbstractSfcObsDecoder.getInt(element, 1, 2); + changeCharacter = new DataItem("changeCharacter"); changeCharacter.setDataValue(val.doubleValue()); changeCharacter.setDataPeriod(3 * 3600); pressureChange = SynopticGroups @@ -246,33 +248,33 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { winds = true; } else if ("7".equals(element.substring(0, 1)) && doGroup(7)) { // TODO : - presentWeather = getInt(element, 1, 3); - pastWeather1 = getInt(element, 3, 4); - pastWeather2 = getInt(element, 4, 5); + presentWeather = AbstractSfcObsDecoder.getInt(element, 1, 3); + pastWeather1 = AbstractSfcObsDecoder.getInt(element, 3, 4); + pastWeather2 = AbstractSfcObsDecoder.getInt(element, 4, 5); closeGroup(7); winds = true; } else if ("8".equals(element.substring(0, 1)) && doGroup(8)) { - if (!winds && matchElement(element, "8[/0-9]{4}")) { - - if ((lowCloudAmount = getInt(element, 1, 2)) < 0) { - lowCloudAmount = null; - } - if ((lowCloudType = getInt(element, 2, 3)) < 0) { + if (!winds + && PATTERN_8094.matcher(element).find()) { + if ((lowCloudType = AbstractSfcObsDecoder.getInt(element, + 2, 3)) < 0) { lowCloudType = null; } - if ((midCloudType = getInt(element, 3, 4)) < 0) { + if ((midCloudType = AbstractSfcObsDecoder.getInt(element, + 3, 4)) < 0) { midCloudType = null; } - if ((hiCloudType = getInt(element, 4, 5)) < 0) { + if ((hiCloudType = AbstractSfcObsDecoder.getInt(element, 4, + 5)) < 0) { hiCloudType = null; } closeGroup(8); } winds = true; } else if ("9".equals(element.substring(0, 1)) && doGroup(9)) { - obsTimeHour = getInt(element, 1, 3); - obsTimeMinute = getInt(element, 3, 5); + obsTimeHour = AbstractSfcObsDecoder.getInt(element, 1, 3); + obsTimeMinute = AbstractSfcObsDecoder.getInt(element, 3, 5); break; } } // while() @@ -286,8 +288,8 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { * @return The populated receiver object. */ public ObsCommon getDecodedData(ObsCommon receiver) { - final Double[] ignore = { VAL_ERROR.doubleValue(), - VAL_MISSING.doubleValue() }; + final Double[] ignore = { IDecoderConstants.VAL_ERROR.doubleValue(), + IDecoderConstants.VAL_MISSING.doubleValue() }; // Check to see if we need to convert knots to mps. int iSubW = decoderParent.getISubw(); @@ -363,8 +365,8 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { // Do we need to override the observation time if ((obsTimeHour != null) && (obsTimeMinute != null)) { - if (checkRange(0, obsTimeHour, 23) - && checkRange(0, obsTimeMinute, 59)) { + if (AbstractSfcObsDecoder.checkRange(0, obsTimeHour, 23) + && AbstractSfcObsDecoder.checkRange(0, obsTimeMinute, 59)) { Calendar obsT = receiver.getTimeObs(); Integer month = getParent().getHeader().getMonth(); @@ -385,7 +387,7 @@ public class SynopticSec1Decoder extends AbstractSectionDecoder { long delta = newT.getTimeInMillis() - obsT.getTimeInMillis(); // Allow up to the reference hour + 30 minutes. if (delta > 30 * 60 * 1000) { - TimeTools.rollByDays(newT, -1); + newT.add(Calendar.DAY_OF_MONTH, -1); } receiver.setTimeObs(newT); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec2Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec2Decoder.java index 1e577dd73b..049723c252 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec2Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec2Decoder.java @@ -19,20 +19,12 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_2_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_3_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_ERROR; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_MISSING; - -import java.util.regex.Pattern; - import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.DataItem; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.DataItem; -import com.raytheon.uf.edex.decodertools.core.ReportParser; +import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; /** * Decode synoptic section 2 data. This section has a single group which @@ -46,7 +38,9 @@ import com.raytheon.uf.edex.decodertools.core.ReportParser; * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. * 20071109 391 jkorman Added guard for short data. - * 2013/8 757 T. Lee Checked missing wave height from ship report + * 2013/8 757 T. Lee Checked missing wave height from ship report + * Sep 26, 2014 3629 mapeters Replaced static imports. + * Sep 30, 2014 3629 mapeters Conformed to changes in {@link ISynoptic} constants. * * * @@ -113,17 +107,16 @@ public class SynopticSec2Decoder extends AbstractSectionDecoder { * Thrown when an relevant error has occurred. */ public void decode(ReportParser reportParser) throws DecoderException { - Pattern pattern = Pattern.compile(SEC_2_LEAD); init(); if (reportParser == null) { // nothing to do. return; } - if (reportParser.positionTo(pattern)) { + if (reportParser.positionTo(ISynoptic.SEC_2_LEAD)) { String element = reportParser.getElement(); // need to decode the Ds vs data - shipDirection = getInt(element, 3, 4); - shipSpeed = getInt(element, 4, 5); + shipDirection = AbstractSfcObsDecoder.getInt(element, 3, 4); + shipSpeed = AbstractSfcObsDecoder.getInt(element, 4, 5); while (true) { // if we run out of data, exit. if (reportParser.next()) { @@ -134,11 +127,11 @@ public class SynopticSec2Decoder extends AbstractSectionDecoder { break; } - if (SEC_3_LEAD.equals(element)) { + if (ISynoptic.SEC_3_LEAD_STRING.equals(element)) { break; - } else if (SEC_4_LEAD.equals(element)) { + } else if (ISynoptic.SEC_4_LEAD_STRING.equals(element)) { break; - } else if (SEC_5_LEAD.equals(element)) { + } else if (ISynoptic.SEC_5_LEAD_STRING.equals(element)) { break; } else if ("80000".equals(element)) { break; @@ -165,30 +158,36 @@ public class SynopticSec2Decoder extends AbstractSectionDecoder { seaTemp = SynopticGroups.decodeTemperature(element, 2); closeGroup(1); } else if (doGroup(1) && "1".equals(element.substring(0, 1))) { - wavePeriod = getInt(element, 1, 3); - waveHeight = getInt(element, 3, 5); + wavePeriod = AbstractSfcObsDecoder.getInt(element, 1, 3); + waveHeight = AbstractSfcObsDecoder.getInt(element, 3, 5); closeGroup(1); } else if (doGroup(2) && "2".equals(element.substring(0, 1))) { - windWavePeriod = getInt(element, 1, 3); - windWaveHeight = getInt(element, 3, 5); + windWavePeriod = AbstractSfcObsDecoder + .getInt(element, 1, 3); + windWaveHeight = AbstractSfcObsDecoder + .getInt(element, 3, 5); closeGroup(2); } else if (doGroup(3) && "3".equals(element.substring(0, 1))) { - swellWave1Dir = getInt(element, 1, 3); - swellWave2Dir = getInt(element, 3, 5); + swellWave1Dir = AbstractSfcObsDecoder.getInt(element, 1, 3); + swellWave2Dir = AbstractSfcObsDecoder.getInt(element, 3, 5); closeGroup(3); } else if (doGroup(4) && "4".equals(element.substring(0, 1))) { - swellWave1Period = getInt(element, 1, 3); - swellWave1Height = getInt(element, 3, 5); + swellWave1Period = AbstractSfcObsDecoder.getInt(element, 1, + 3); + swellWave1Height = AbstractSfcObsDecoder.getInt(element, 3, + 5); closeGroup(4); } else if (doGroup(5) && "5".equals(element.substring(0, 1))) { - swellWave2Period = getInt(element, 1, 3); - swellWave2Height = getInt(element, 3, 5); + swellWave2Period = AbstractSfcObsDecoder.getInt(element, 1, + 3); + swellWave2Height = AbstractSfcObsDecoder.getInt(element, 3, + 5); closeGroup(5); } else if (doGroup(6) && "6".equals(element.substring(0, 1))) { // TODO : closeGroup(6); } else if (doGroup(7) && "70".equals(element.substring(0, 2))) { - heightOfWaves = getInt(element, 2, 5); + heightOfWaves = AbstractSfcObsDecoder.getInt(element, 2, 5); closeGroup(7); } else if (doGroup(8) && "8".equals(element.substring(0, 1))) { wetBulb = SynopticGroups.decodeTemperature(element, 2); @@ -227,10 +226,12 @@ public class SynopticSec2Decoder extends AbstractSectionDecoder { * @return The populated receiver object. */ public ObsCommon getDecodedData(ObsCommon receiver) { - final Double[] ignore = { VAL_ERROR.doubleValue(), - VAL_MISSING.doubleValue() }; if (receiver != null) { + final Double[] ignore = { + IDecoderConstants.VAL_ERROR.doubleValue(), + IDecoderConstants.VAL_MISSING.doubleValue() }; + receiver.setShipIceData(iceCode); receiver.setSeaTemp(DataItem.getValue(seaTemp, ignore)); receiver.setWetBulb(DataItem.getValue(wetBulb, ignore)); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec3Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec3Decoder.java index 93f6e76857..6f629fc4bb 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec3Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec3Decoder.java @@ -19,26 +19,24 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_3_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_ERROR; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_MISSING; +import java.util.regex.Pattern; + +import javax.measure.converter.UnitConverter; +import javax.measure.unit.SI; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.DataItem; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.uf.common.dataplugin.sfcobs.AncPrecip; import com.raytheon.uf.common.dataplugin.sfcobs.AncPressure; import com.raytheon.uf.common.dataplugin.sfcobs.AncTemp; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.DataItem; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.core.ReportParser; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; /** * TODO Add Description @@ -58,7 +56,10 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * 20071010 391 jkorman Initial coding. * 20071203 410 jkorman JavaDoc complaints. * 20080116 798 jkorman Changed logging levels. - * + * Sep 18, 2014 #3627 mapeters Convert units using {@link UnitConverter}, removed + * unused duration field, made patterns constant. + * Sep 26, 2014 #3629 mapeters Replaced static imports. + * Sep 30, 2014 #3629 mapeters Conformed to changes in ISynoptic constants. * * * @@ -67,6 +68,16 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; */ public class SynopticSec3Decoder extends AbstractSectionDecoder { + private static final Pattern P589 = Pattern.compile("5[89][0-9/]{3}"); + + private static final Pattern P907 = Pattern.compile("907\\d{2}"); + + private static final Pattern P910 = Pattern.compile("910\\d{2}"); + + private static final Pattern P911 = Pattern.compile("911\\d{2}"); + + private static final Pattern P912 = Pattern.compile("912\\d{2}"); + /** The logger */ private Log logger = LogFactory.getLog(getClass()); @@ -86,7 +97,8 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { private Double windGust912 = null; - private Integer duration = null; + private static final UnitConverter hPaToPa = SI.HECTO(SI.PASCAL) + .getConverterTo(SI.PASCAL); /** * @@ -117,7 +129,7 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { return; } String element = null; - if (reportParser.positionTo(SEC_3_LEAD)) { + if (reportParser.positionTo(ISynoptic.SEC_3_LEAD_STRING)) { while (true) { // if we run out of data, exit. if (reportParser.next()) { @@ -127,15 +139,14 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { } else { break; } - if (SEC_4_LEAD.equals(element)) { + if (ISynoptic.SEC_4_LEAD_STRING.equals(element)) { break; - } else if (SEC_5_LEAD.equals(element)) { + } else if (ISynoptic.SEC_5_LEAD_STRING.equals(element)) { break; } else if ("80000".equals(element)) { break; } - // String s = null; if ("1".equals(element.substring(0, 1)) && doGroup(1)) { maxTemperature = SynopticGroups.decodeTemperature(element, 3); @@ -151,7 +162,7 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { closeGroup(3); } else if ("4".equals(element.substring(0, 1)) && doGroup(4)) { closeGroup(4); - } else if (matchElement(element, "5[89][0-9/]{3}") + } else if (P589.matcher(element).find() && doGroup(5)) { int sign = 0; if (element.charAt(1) == '8') { @@ -159,12 +170,12 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { } else if (element.charAt(1) == '9') { sign = -1; } - Integer val = getInt(element, 2, 5); + Integer val = AbstractSfcObsDecoder.getInt(element, 2, 5); if ((val != null) && (val >= 0)) { - pressure24 = new DataItem("Pascals", "24HRChange", 3); - pressure24.setDataValue(DecoderTools.hPaToPascals(val + pressure24 = new DataItem("24HRChange"); + pressure24.setDataValue(hPaToPa.convert(val * sign)); - pressure24.setDataPeriod(TimeTools.SECONDS_DAY); + pressure24.setDataPeriod(TimeUtil.SECONDS_PER_DAY); } closeGroup(5); } else if ("6".equals(element.substring(0, 1)) && doGroup(6)) { @@ -177,30 +188,21 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { // TODO : // Group 8 doesn't get closed here, there may be more than // one group. - } else if (matchElement(element, "907\\d{2}")) { - Integer temp = getInt(element, 3, 5); - if ((temp != null) && (temp >= 0)) { - if (temp < 61) { - duration = 6 * temp; - } else if (temp < 67) { - duration = (60 * (temp - 60)) + 360; - } else { - duration = 1080; - } - } - } else if (matchElement(element, "910\\d{2}")) { - Integer temp = getInt(element, 3, 5); + } else if (P907.matcher(element).find()) { + // TODO : Should something be done here? + } else if (P910.matcher(element).find()) { + Integer temp = AbstractSfcObsDecoder.getInt(element, 3, 5); if ((temp != null) && (temp >= 0)) { windGust910 = temp * conversion; } - } else if (matchElement(element, "911\\d{2}")) { - Integer temp = getInt(element, 3, 5); + } else if (P911.matcher(element).find()) { + Integer temp = AbstractSfcObsDecoder.getInt(element, 3, 5); if ((temp != null) && (temp >= 0)) { windGust911 = temp * conversion; } - } else if (matchElement(element, "912\\d{2}")) { - Integer temp = getInt(element, 3, 5); + } else if (P912.matcher(element).find()) { + Integer temp = AbstractSfcObsDecoder.getInt(element, 3, 5); if ((temp != null) && (temp >= 0)) { windGust912 = temp * conversion; ; @@ -220,8 +222,6 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { * @return The populated receiver object. */ public ObsCommon getDecodedData(ObsCommon receiver) { - final Double[] ignore = { VAL_ERROR.doubleValue(), - VAL_MISSING.doubleValue() }; if (maxTemperature != null) { AncTemp temp = new AncTemp(); @@ -260,6 +260,9 @@ public class SynopticSec3Decoder extends AbstractSectionDecoder { } } if (pressure24 != null) { + final Double[] ignore = { + IDecoderConstants.VAL_ERROR.doubleValue(), + IDecoderConstants.VAL_MISSING.doubleValue() }; Double v = DataItem.getValue(pressure24, ignore); if ((v != null) && (v >= -9999)) { AncPressure press = new AncPressure(); diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec4Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec4Decoder.java index e66bcd07b9..547d78d4ae 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec4Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec4Decoder.java @@ -19,15 +19,11 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.GENERAL_GROUP; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_4_LEAD; - import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.uf.common.dataplugin.sfcobs.AncCloud; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.ReportParser; /** * Decode synoptic section 4 data. This section has a single group which @@ -40,6 +36,7 @@ import com.raytheon.uf.edex.decodertools.core.ReportParser; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. + * Sep 30, 2014 3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @author jkorman @@ -90,15 +87,17 @@ public class SynopticSec4Decoder extends AbstractSectionDecoder { // nothing to do. return; } - if (reportParser.positionTo(SEC_4_LEAD)) { + if (reportParser.positionTo(ISynoptic.SEC_4_LEAD_STRING)) { if (reportParser.next()) { String element = reportParser.getElement(); - if (matchElement(element, GENERAL_GROUP)) { - cloudAmount = getInt(element, 0, 1); - cloudGenus = getInt(element, 1, 2); - cloudAltitude = getInt(element, 2, 4); - cloudDescription = getInt(element, 4, 5); + if (element != null + && ISynoptic.GENERAL_GROUP.matcher(element).find()) { + cloudAmount = AbstractSfcObsDecoder.getInt(element, 0, 1); + cloudGenus = AbstractSfcObsDecoder.getInt(element, 1, 2); + cloudAltitude = AbstractSfcObsDecoder.getInt(element, 2, 4); + cloudDescription = AbstractSfcObsDecoder.getInt(element, 4, + 5); } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec5Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec5Decoder.java index 534fe1135b..f949cde344 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec5Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/SynopticSec5Decoder.java @@ -20,8 +20,8 @@ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.ReportParser; /** * Decode synoptic section 5 data. Section 5 data is specific to various regions diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5Block72Decoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5Block72Decoder.java index 1b3f9d27d2..4dd6fe94b8 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5Block72Decoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5Block72Decoder.java @@ -19,22 +19,21 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic.regional; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_72_CMAXMIN; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_72_CTEMP; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; +import javax.measure.converter.UnitConverter; +import javax.measure.unit.NonSI; +import javax.measure.unit.SI; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.DataItem; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SynopticGroups; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SynopticSec5Decoder; import com.raytheon.uf.common.dataplugin.sfcobs.AncPrecip; import com.raytheon.uf.common.dataplugin.sfcobs.AncTemp; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; -import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SynopticGroups; -import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SynopticSec5Decoder; -import com.raytheon.uf.edex.decodertools.core.DataItem; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.core.ReportParser; /** * Decode synoptic section 5 regional data for WMO block 72 (United States) @@ -46,6 +45,9 @@ import com.raytheon.uf.edex.decodertools.core.ReportParser; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. + * Sep 18, 2014 #3627 mapeters Convert units using {@link UnitConverter}. + * Sep 26, 2014 #3629 mapeters Replaced static imports. + * Sep 30, 2014 #3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} calls. * * * @@ -62,6 +64,9 @@ public class Sec5Block72Decoder extends SynopticSec5Decoder { private DataItem city24HrPrecip = null; + private static final UnitConverter fToK = NonSI.FAHRENHEIT + .getConverterTo(SI.KELVIN); + /** * Construct this decoder using a specified decoder parent. * @@ -94,7 +99,7 @@ public class Sec5Block72Decoder extends SynopticSec5Decoder { // nothing to do. return; } - if (reportParser.positionTo(SEC_5_LEAD)) { + if (reportParser.positionTo(ISynoptic.SEC_5_LEAD_STRING)) { String element = null; while (true) { @@ -107,27 +112,27 @@ public class Sec5Block72Decoder extends SynopticSec5Decoder { break; } if (isBlock72Data) { - if (matchElement(element, SEC_5_72_CTEMP)) { + if (ISynoptic.SEC_5_72_CTEMP.matcher(element) + .find()) { // City temperature. Double val = decodeFahrenheit(element.substring(1, 4)); if (val != null) { - cityTemperature = new DataItem("K", "cityTemp", 5); + cityTemperature = new DataItem("cityTemp"); cityTemperature.setDataValue(val); cityTemperature.setDataPeriod(0); } - } else if (matchElement(element, SEC_5_72_CMAXMIN)) { + } else if (ISynoptic.SEC_5_72_CMAXMIN.matcher( + element).find()) { // City maximum/minimum temperature. Double val = decodeFahrenheit(element.substring(0, 3)); if (val != null) { - cityMaxTemperature = new DataItem("K", - "cityMaxTemp", 5); + cityMaxTemperature = new DataItem("cityMaxTemp"); cityMaxTemperature.setDataValue(val); cityMaxTemperature.setDataPeriod(0); } val = decodeFahrenheit(element.substring(3, 6)); if (val != null) { - cityMinTemperature = new DataItem("K", - "cityMinTemp", 5); + cityMinTemperature = new DataItem("cityMinTemp"); cityMinTemperature.setDataValue(val); cityMinTemperature.setDataPeriod(0); } @@ -220,10 +225,9 @@ public class Sec5Block72Decoder extends SynopticSec5Decoder { private static final Double decodeFahrenheit(String element) { Double decodedValue = null; int sign = SynopticGroups.getSign(element.charAt(0)); - Integer val = getInt(element, 1, 3); + Integer val = AbstractSfcObsDecoder.getInt(element, 1, 3); if ((val != null) && (val >= 0)) { - double f = (((double) val * sign) - 32) * 5.0 / 9.0; - decodedValue = DecoderTools.celsiusToKelvin(f, 1, 1); + decodedValue = fToK.convert((double) val * sign); } else { decodedValue = null; } diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5MaritimeDecoder.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5MaritimeDecoder.java index d018e4efe3..644b6761b1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5MaritimeDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/src/com/raytheon/edex/plugin/sfcobs/decoder/synoptic/regional/Sec5MaritimeDecoder.java @@ -19,20 +19,23 @@ **/ package com.raytheon.edex.plugin.sfcobs.decoder.synoptic.regional; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.getInt; -import static com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder.matchElement; -import static com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic.SEC_5_LEAD; - import java.util.Arrays; import java.util.Calendar; +import java.util.regex.Pattern; + +import javax.measure.converter.UnitConverter; +import javax.measure.unit.NonSI; +import javax.measure.unit.SI; import com.raytheon.edex.exception.DecoderException; +import com.raytheon.edex.plugin.sfcobs.decoder.AbstractSfcObsDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.ReportParser; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.AbstractSynopticDecoder; +import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.ISynoptic; import com.raytheon.edex.plugin.sfcobs.decoder.synoptic.SynopticSec5Decoder; import com.raytheon.uf.common.dataplugin.sfcobs.InterWinds; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.core.ReportParser; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.decodertools.time.TimeTools; /** @@ -51,6 +54,10 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20071010 391 jkorman Initial coding. + * Sep 18, 2014 #3627 mapeters Convert units using {@link UnitConverter}, + * updated deprecated {@link TimeTools} usage.\ + * Sep 30, 2014 #3629 mapeters Replaced {@link AbstractSfcObsDecoder#matchElement()} + * calls, added Pattern constants. * * * @@ -58,6 +65,29 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * @version 1.0 */ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { + + private static final Pattern WIND_SPEED_10_M = Pattern + .compile("11[/0-9]{3}"); + + private static final Pattern WIND_SPEED_20_M = Pattern + .compile("22[/0-9]{3}"); + + private static final Pattern PEAK_WIND_3 = Pattern.compile("3[/0-9]{4}"); + + private static final Pattern CMAN_PEAK_WIND_4 = Pattern.compile("4[/0-9]{5}"); + + private static final Pattern PEAK_WIND_4 = Pattern.compile("4[/0-9]{4}"); + + private static final Pattern CONT_WIND_SPEED = Pattern.compile("6[/0-9]{4}"); + + private static final Pattern CONT_WIND_SPEED_INTERNAL = Pattern + .compile("[/0-9]{6}"); + + private static final Pattern TIDE = Pattern.compile("TIDE[/0-9]{4}"); + + private static final UnitConverter knotsToMSec = NonSI.KNOT + .getConverterTo(SI.METERS_PER_SECOND); + private static final int NUM_WINDS = 6; private Double wind10mSpeed = null; @@ -108,7 +138,7 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { // nothing to do. return; } - if (reportParser.positionTo(SEC_5_LEAD)) { + if (reportParser.positionTo(ISynoptic.SEC_5_LEAD_STRING)) { String element = null; while (true) { @@ -120,51 +150,59 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { } else { break; } - if (doGroup(1) && matchElement(element, "11[/0-9]{3}")) { + if (doGroup(1) && WIND_SPEED_10_M.matcher(element).find()) { // extrapolated 10 meter wind speed - Integer temp = getInt(element, 2, 5); + Integer temp = AbstractSfcObsDecoder.getInt(element, 2, 5); if ((temp != null) && (temp >= 0)) { wind10mSpeed = temp.doubleValue() / 10.0; } closeGroup(1); - } else if (doGroup(2) && matchElement(element, "22[/0-9]{3}")) { + } else if (doGroup(2) + && WIND_SPEED_20_M.matcher(element).find()) { // extrapolated 20 meter wind speed - Integer temp = getInt(element, 2, 5); + Integer temp = AbstractSfcObsDecoder.getInt(element, 2, 5); if ((temp != null) && (temp >= 0)) { wind20mSpeed = temp.doubleValue() / 10.0; } closeGroup(2); - } else if (doGroup(3) && matchElement(element, "3[/0-9]{4}")) { + } else if (doGroup(3) && PEAK_WIND_3.matcher(element).find()) { // peak wind data time - pkWindTimeHour = getInt(element, 1, 3); - pkWindTimeMinute = getInt(element, 3, 5); + pkWindTimeHour = AbstractSfcObsDecoder + .getInt(element, 1, 3); + pkWindTimeMinute = AbstractSfcObsDecoder.getInt(element, 3, + 5); closeGroup(3); - } else if (doGroup(4) && matchElement(element, "4[/0-9]{5}")) { + } else if (doGroup(4) + && CMAN_PEAK_WIND_4.matcher(element).find()) { // peak wind data time from CMAN - pkWindDirection = getInt(element, 1, 3); + pkWindDirection = AbstractSfcObsDecoder.getInt(element, 1, + 3); if ((pkWindDirection != null) && (pkWindDirection >= 0)) { pkWindDirection *= 10; } - Integer spd = getInt(element, 3, 6); + Integer spd = AbstractSfcObsDecoder.getInt(element, 3, 6); if ((spd != null) && (spd >= 0)) { pkWindSpeed = spd.doubleValue(); } closeGroup(4); - } else if (doGroup(4) && matchElement(element, "4[/0-9]{4}")) { + } else if (doGroup(4) && PEAK_WIND_4.matcher(element).find()) { // peak wind data time - pkWindDirection = getInt(element, 1, 3); + pkWindDirection = AbstractSfcObsDecoder.getInt(element, 1, + 3); if ((pkWindDirection != null) && (pkWindDirection >= 0)) { pkWindDirection *= 10; } - Integer spd = getInt(element, 3, 5); + Integer spd = AbstractSfcObsDecoder.getInt(element, 3, 5); if ((spd != null) && (spd >= 0)) { pkWindSpeed = spd.doubleValue(); } closeGroup(4); - } else if (doGroup(6) && matchElement(element, "6[/0-9]{4}")) { + } else if (doGroup(6) + && CONT_WIND_SPEED.matcher(element).find()) { // Continuous wind speed data - windTimeHour = getInt(element, 1, 3); - windTimeMinute = getInt(element, 3, 5); + windTimeHour = AbstractSfcObsDecoder.getInt(element, 1, 3); + windTimeMinute = AbstractSfcObsDecoder + .getInt(element, 3, 5); windSpeeds = new Double[NUM_WINDS]; Arrays.fill(windSpeeds, new Double(-9999.0)); @@ -179,9 +217,11 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { } else { break; } - if (matchElement(element, "[/0-9]{6}")) { - Integer wd = getInt(element, 0, 3); - Integer ws = getInt(element, 3, 6); + if (CONT_WIND_SPEED_INTERNAL.matcher(element).find()) { + Integer wd = AbstractSfcObsDecoder.getInt(element, + 0, 3); + Integer ws = AbstractSfcObsDecoder.getInt(element, + 3, 6); if ((wd != null) && (wd >= 0)) { windDirs[i] = wd; } @@ -191,7 +231,7 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { } } closeGroup(6); - } else if (matchElement(element, "TIDE[/0-9]{4}")) { + } else if (TIDE.matcher(element).find()) { // Tidal data in feet. } @@ -230,14 +270,14 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { if (wind10mSpeed > -9999.0) { wSpeed = wind10mSpeed; if (inKnots) { - wSpeed = DecoderTools.knotsToMSec(wSpeed); + wSpeed = knotsToMSec.convert(wSpeed); } receiver.setWind10mSpeed(wSpeed); } if (wind20mSpeed > -9999.0) { wSpeed = wind20mSpeed; if (inKnots) { - wSpeed = DecoderTools.knotsToMSec(wSpeed); + wSpeed = knotsToMSec.convert(wSpeed); } receiver.setWind20mSpeed(wSpeed); } @@ -265,7 +305,7 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { wSpeed = pkWindSpeed; if (wSpeed > -9999) { if (inKnots) { - wSpeed = DecoderTools.knotsToMSec(wSpeed); + wSpeed = knotsToMSec.convert(wSpeed); } } receiver.setPeakWindSpeed(wSpeed); @@ -298,7 +338,7 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { wSpeed = windSpeeds[i]; if (wSpeed >= 0) { if (inKnots) { - wSpeed = DecoderTools.knotsToMSec(wSpeed); + wSpeed = knotsToMSec.convert(wSpeed); } } wind.setWindSpeed(wSpeed); @@ -311,7 +351,7 @@ public class Sec5MaritimeDecoder extends SynopticSec5Decoder { } // Now set the time/type if there was data. if (wind != null) { - wind.setObsTime(TimeTools.copy(newT)); + wind.setObsTime(TimeUtil.newCalendar(newT)); receiver.addInterWind(wind); } // adjust the time back ten minutes diff --git a/edexOsgi/com.raytheon.edex.plugin.sfcobs/unittest/com/raytheon/edex/plugin/sfcobs/decoder/TestSfcObsDecoders.java b/edexOsgi/com.raytheon.edex.plugin.sfcobs/unittest/com/raytheon/edex/plugin/sfcobs/decoder/TestSfcObsDecoders.java index c3076d93be..54d7215192 100644 --- a/edexOsgi/com.raytheon.edex.plugin.sfcobs/unittest/com/raytheon/edex/plugin/sfcobs/decoder/TestSfcObsDecoders.java +++ b/edexOsgi/com.raytheon.edex.plugin.sfcobs/unittest/com/raytheon/edex/plugin/sfcobs/decoder/TestSfcObsDecoders.java @@ -180,12 +180,8 @@ public class TestSfcObsDecoders extends TestCase { true,true,true,false,false, }; - - Pattern p = Pattern.compile(ISynoptic.YYGGI_SUB_W); - - for(int i = 0;i < testData.length;i++) { - Matcher m = p.matcher(testData[i]); + Matcher m = ISynoptic.YYGGI_SUB_W.matcher(testData[i]); assertEquals(m.find(),testMatch[i]); } } @@ -202,12 +198,8 @@ public class TestSfcObsDecoders extends TestCase { true,true,true,true, }; - - Pattern p = Pattern.compile(ISynoptic.SEC_1_NDDFF); - - for(int i = 0;i < testData.length;i++) { - Matcher m = p.matcher(testData[i]); + Matcher m = ISynoptic.SEC_1_NDDFF.matcher(testData[i]); assertEquals(m.find(),testMatch[i]); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/MANIFEST.MF index f5ac2505c1..c8663e9461 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/MANIFEST.MF @@ -2,8 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Shef Plug-in Bundle-SymbolicName: com.raytheon.edex.plugin.shef -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Export-Package: com.raytheon.edex.plugin.shef, com.raytheon.edex.plugin.shef.data, @@ -18,16 +17,18 @@ Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.common.localization, javax.persistence, org.apache.commons.cli;bundle-version="1.0.0", - com.raytheon.uf.common.dataplugin.shef;bundle-version="1.12.1174" -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 + com.raytheon.uf.common.dataplugin.shef;bundle-version="1.12.1174", + com.raytheon.uf.common.status;bundle-version="1.12.1174" +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.edex.plugin.obs, com.raytheon.edex.plugin.obs.metar, com.raytheon.edex.plugin.obs.metar.util, - com.raytheon.edex.textdb.dbapi.impl, + com.raytheon.edex.plugin.shef.database, com.raytheon.uf.common.dataplugin.obs.metar, com.raytheon.uf.common.dataplugin.obs.metar.util, com.raytheon.uf.common.dataplugin.sfcobs, com.raytheon.uf.common.dataplugin.text.request, com.raytheon.uf.common.ohd, + com.raytheon.uf.common.wmo, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index b887a863a2..63ebb6f13a 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/edexOsgi/com.raytheon.edex.plugin.shef/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -44,6 +44,12 @@ com.raytheon.uf.common.dataplugin.shef.tables.Curpc com.raytheon.uf.common.dataplugin.shef.tables.CurpcId com.raytheon.uf.common.dataplugin.shef.tables.Curpp com.raytheon.uf.common.dataplugin.shef.tables.CurppId +com.raytheon.uf.common.dataplugin.shef.tables.DAABiasDyn +com.raytheon.uf.common.dataplugin.shef.tables.DAABiasDynId +com.raytheon.uf.common.dataplugin.shef.tables.DAARadar +com.raytheon.uf.common.dataplugin.shef.tables.DAARadarId +com.raytheon.uf.common.dataplugin.shef.tables.DAARadarResult +com.raytheon.uf.common.dataplugin.shef.tables.DAARadarResultId com.raytheon.uf.common.dataplugin.shef.tables.Dailypp com.raytheon.uf.common.dataplugin.shef.tables.DailyppId com.raytheon.uf.common.dataplugin.shef.tables.Damtypes @@ -65,6 +71,12 @@ com.raytheon.uf.common.dataplugin.shef.tables.Dpaadapt com.raytheon.uf.common.dataplugin.shef.tables.DpaadaptId com.raytheon.uf.common.dataplugin.shef.tables.Dparadar com.raytheon.uf.common.dataplugin.shef.tables.DparadarId +com.raytheon.uf.common.dataplugin.shef.tables.DPRRadar +com.raytheon.uf.common.dataplugin.shef.tables.DPRRadarId +com.raytheon.uf.common.dataplugin.shef.tables.DSAAdapt +com.raytheon.uf.common.dataplugin.shef.tables.DSAAdaptId +com.raytheon.uf.common.dataplugin.shef.tables.DSARadar +com.raytheon.uf.common.dataplugin.shef.tables.DSARadarId com.raytheon.uf.common.dataplugin.shef.tables.Dspadapt com.raytheon.uf.common.dataplugin.shef.tables.DspadaptId com.raytheon.uf.common.dataplugin.shef.tables.Dspradar diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/res/spring/shef-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.shef/res/spring/shef-ingest.xml index cbeb83d0e8..e52bd48561 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/res/spring/shef-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.shef/res/spring/shef-ingest.xml @@ -2,6 +2,10 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> + + + + @@ -44,22 +48,17 @@ - - - - - + + errorHandlerRef="errorHandler"> @@ -75,7 +74,7 @@ + errorHandlerRef="errorHandler"> @@ -132,6 +131,7 @@ + java.lang.Throwable @@ -151,6 +151,7 @@ + java.lang.Throwable diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/SHEFParser.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/SHEFParser.java index a707797ac8..7fa4d7e244 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/SHEFParser.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/SHEFParser.java @@ -29,9 +29,6 @@ import java.util.List; import java.util.StringTokenizer; import java.util.TimeZone; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.plugin.shef.ShefSeparator.ShefDecoderInput; import com.raytheon.edex.plugin.shef.data.ShefData; import com.raytheon.edex.plugin.shef.data.ShefRecord; @@ -48,7 +45,9 @@ import com.raytheon.uf.common.dataplugin.shef.util.SHEFErrorCodes; import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; import com.raytheon.uf.common.ohd.AppsDefaults; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.status.UFStatus; /** * The SHEFParser provides the text parsing for SHEF data. This class was @@ -61,6 +60,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Nov 10, 2009 jkorman Initial creation + * Apr 29, 2014 3088 mpduff Changed to use UFStatus logging. * * * @@ -69,7 +69,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; */ public class SHEFParser { - private final Log log = LogFactory.getLog(getClass()); + private static final IUFStatusHandler log = UFStatus + .getHandler(SHEFParser.class); private static final SHEFErrors ERR_LOGGER = SHEFErrors .registerLogger(SHEFParser.class); @@ -101,7 +102,7 @@ public class SHEFParser { EOD_SENDCODES.add("PY"); EOD_SENDCODES.add("QY"); } - + private static final String CARRIAGECONTROL = "\r\n"; private String message; @@ -181,10 +182,12 @@ public class SHEFParser { private boolean emitSkippedValues = false; private String reportLead = null; - + /** + * Constructor * - * @param traceId + * @param sdi + * ShefDecoderInput */ public SHEFParser(ShefDecoderInput sdi) { message = sdi.record; @@ -213,9 +216,6 @@ public class SHEFParser { * the locationId to set */ public void setLocationId(String lid) { - if (log.isDebugEnabled()) { - log.debug(traceId + "- Setting locationId : " + lid); - } locationId = lid; } @@ -231,9 +231,6 @@ public class SHEFParser { * the obsTime to set */ public void setObsTime(String obsTime) { - if (log.isDebugEnabled()) { - log.debug(traceId + "- Setting obsTime : " + obsTime); - } this.obsTime = obsTime; } @@ -264,9 +261,6 @@ public class SHEFParser { * the timeZone to set */ public void setTimeZone(String timeZone) { - if (log.isDebugEnabled()) { - log.debug(traceId + "- Setting timeZone : " + timeZone); - } this.timeZone = timeZone; } @@ -316,9 +310,6 @@ public class SHEFParser { * the adjusted date to set */ public void setAdjObsDate(SHEFDate adjDate) { - if (log.isDebugEnabled()) { - log.debug(traceId + "- Setting adjObsDate : " + adjDate); - } if (adjDate != null) { adjObsDate = new SHEFDate(adjDate); } @@ -336,9 +327,6 @@ public class SHEFParser { * the createTime to set */ public void setCreateTime(SHEFDate createTime) { - if (log.isDebugEnabled()) { - log.debug(traceId + "- Setting createTime : " + createTime); - } this.createTime = createTime; } @@ -387,6 +375,9 @@ public class SHEFParser { this.currentExtremum = currentExtremum; } + /** + * @param qual + */ public void setCurrentQualifier(String qual) { if ("Z".equals(qual)) { currentQualifier = null; @@ -395,13 +386,19 @@ public class SHEFParser { } } + /** + * Get the current qualifer + * + * @return The current qualifier + */ public String getCurrentQualifier() { return currentQualifier; } /** + * Decode the data. * - * @return + * @return The decoded ShefRecord */ public ShefRecord decode() { boolean revision = false; @@ -472,7 +469,7 @@ public class SHEFParser { String identifier = "MSGPRODID"; if (wmoHeader != null) { if (awipsHeader != null) { - if(awipsHeader.length() <= 6) { + if (awipsHeader.length() <= 6) { identifier = wmoHeader.getCccc() + awipsHeader; } else { identifier = awipsHeader; @@ -533,15 +530,16 @@ public class SHEFParser { sb.append(" "); } reportLead = sb.toString(); - + identifyUnknownToken(parts, false); - if(!validateRecord(parts,record)) { + if (!validateRecord(parts, record)) { return record; } - int error = getObsDate().getError(); - if(error != 0) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, error); + int error = getObsDate().getError(); + if (error != 0) { + statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, + error); return record; } masterDate = new SHEFDate(getObsDate()); @@ -562,77 +560,102 @@ public class SHEFParser { if (err < ParserToken.ERR_NO_ERROR) { switch (err) { case ParserToken.ERR_INV_CREATE_DATE: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_019); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_019); value = null; break; } case ParserToken.ERR_INV_JUL_DATE: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_016); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_016); value = null; break; } case ParserToken.ERR_INVALID_QUAL: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_021); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_021); value = null; break; } case ParserToken.ERR_INV_SECONDS: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_016); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_016); value = null; break; } case ParserToken.ERR_INV_MINUTES: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_016); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_016); value = null; break; } case ParserToken.ERR_INV_HOURS: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_016); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_016); value = null; break; } case ParserToken.ERR_INV_DAY: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_017); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_017); value = null; break; } case ParserToken.ERR_INV_MONTH: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_017); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_017); value = null; break; } - case ParserToken.ERR_LOG035 : { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_035); + case ParserToken.ERR_LOG035: { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_035); value = null; break; } - case ParserToken.ERR_LOG044 : { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); + case ParserToken.ERR_LOG044: { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); value = null; reSync = true; break; } - case ParserToken.ERR_LOG079 : { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.WARNING, SHEFErrorCodes.LOG_035); + case ParserToken.ERR_LOG079: { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.WARNING, + SHEFErrorCodes.LOG_035); break; } } break; - } else if(err > 0) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, err); + } else if (err > 0) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, err); value = null; break; } - if(reSync) { + if (reSync) { break; } switch (token.getType()) { case UNITS_CODE: { currentUnits = token.getToken().substring(2); - if(!isValidUnits(currentUnits)) { + if (!isValidUnits(currentUnits)) { // Handle the error condition - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_022); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_022); // and return with the legal data found so far. return record; } @@ -640,12 +663,14 @@ public class SHEFParser { } case QUAL_CODE: { String q = token.getToken().substring(2); - if(isValidQualityCode(q)) { + if (isValidQualityCode(q)) { setCurrentQualifier(q); qualifier = getCurrentQualifier(); } else { // Handle the error condition - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_085); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_085); // and return with the legal data found so far. return record; } @@ -664,9 +689,11 @@ public class SHEFParser { case DATE_DATE: case DATE_JUL: { if ((d = masterDate.applyData(token)) != null) { - if(d.isDSTExclusion()) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); - errorCode = 1; + if (d.isDSTExclusion()) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); + errorCode = 1; } else { masterDate = d; setObsDate(d); @@ -679,9 +706,11 @@ public class SHEFParser { } case DATE_REL: { if ((d = getObsDate().applyData(token)) != null) { - if(d.isDSTExclusion()) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); - errorCode = 1; + if (d.isDSTExclusion()) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); + errorCode = 1; } else { setAdjObsDate(d); } @@ -708,14 +737,15 @@ public class SHEFParser { } case PEDTSEP: { String s = null; - if(dateRelative) { + if (dateRelative) { s = token.getSendCode(); - if((s != null) && (s.length() >= 2)) { - s = s.substring(0,2); - if(EOD_SENDCODES.contains(s)) { + if ((s != null) && (s.length() >= 2)) { + s = s.substring(0, 2); + if (EOD_SENDCODES.contains(s)) { // this is an error condition errorCode = SHEFErrorCodes.LOG_035; - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, errorCode); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, errorCode); trace = false; reSync = false; value = null; @@ -725,7 +755,7 @@ public class SHEFParser { } } } - + s = token.getToken(); int currError = ShefUtil.validatePEDTSEP(s); if (currError == 0) { @@ -738,7 +768,8 @@ public class SHEFParser { } } else { // Handle the error condition - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, currError); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, currError); pedtsep = null; // Reset the qualifier back if it was overridden @@ -751,8 +782,10 @@ public class SHEFParser { case QNUMERIC: { if (!reSync) { String s = token.getQualifier(); - if(!isValidQualityCode(s)) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_021); + if (!isValidQualityCode(s)) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_021); value = null; } else { qualifier = s; @@ -771,7 +804,7 @@ public class SHEFParser { break; } case RETAINEDCOMMENT: { - if(lastData != null) { + if (lastData != null) { lastData.setRetainedComment(token.getToken()); retainedComment = null; } else { @@ -791,11 +824,12 @@ public class SHEFParser { } break; } - + default: { // Handle the error condition - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_064); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_064); pedtsep = null; value = null; @@ -816,7 +850,7 @@ public class SHEFParser { data.setUnitsCode(getCurrentUnits()); data.setStringValue(value); data.setQualifier(qualifier); - if(retainedComment != null) { + if (retainedComment != null) { data.setRetainedComment(retainedComment); retainedComment = null; } else { @@ -843,7 +877,7 @@ public class SHEFParser { trace = false; reSync = false; - } + } if (errorCode > 0) { // clear out the last value. value = null; @@ -867,8 +901,9 @@ public class SHEFParser { if (token != null) { String pe = token.getSendCode(); if (pe != null) { - if(pe != null) { - if(pe.startsWith("HY") || pe.startsWith("QY") || pe.startsWith("PY")) { + if (pe != null) { + if (pe.startsWith("HY") || pe.startsWith("QY") + || pe.startsWith("PY")) { if ("Z".equals(timeZone)) { isValid = false; error = SHEFErrorCodes.LOG_035; @@ -879,11 +914,12 @@ public class SHEFParser { } } if (!isValid) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, error); + statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, + error); } return isValid; } - + // ********************************* // * B Record specific methods. // ********************************* @@ -918,9 +954,10 @@ public class SHEFParser { if (getPositionalData()) { identifyUnknownToken(parts, false); - int error = getObsDate().getError(); - if(error != 0) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, error); + int error = getObsDate().getError(); + if (error != 0) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, error); return record; } @@ -980,14 +1017,18 @@ public class SHEFParser { try { interpretData(record, pattern, subList, localMaster); } catch (Exception e) { - ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); - ERR_LOGGER.error(getClass(), createDataLine(subList)); + ERR_LOGGER.error(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); + ERR_LOGGER.error(getClass(), + createDataLine(subList)); ERR_LOGGER.error(getClass(), "?"); - ERR_LOGGER.error(getClass(), "Exception " + e.getLocalizedMessage()); - ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_090); + ERR_LOGGER.error(getClass(), + "Exception " + e.getLocalizedMessage()); + ERR_LOGGER + .error(getClass(), SHEFErrorCodes.LOG_090); } - + } } } @@ -1010,15 +1051,15 @@ public class SHEFParser { int error = 0; int currPos = -1; - for(ParserToken t : pattern) { + for (ParserToken t : pattern) { currPos++; - if(t.getError() != ParserToken.ERR_NO_ERROR) { + if (t.getError() != ParserToken.ERR_NO_ERROR) { valid = false; error = t.getError(); break; } } - if(valid) { + if (valid) { TokenType type = TokenType.NIL; ParserToken currToken = null; TokenType lastType = TokenType.NIL; @@ -1027,12 +1068,12 @@ public class SHEFParser { do { currPos++; valid = (currPos < pattern.size()); - if(valid) { + if (valid) { currToken = pattern.get(currPos); lastType = type; type = currToken.getType(); } - } while(valid && (!(SLASH.equals(type)))); + } while (valid && (!(SLASH.equals(type)))); // Don't start other validation until we find the first / for (; (currPos < pattern.size()) && valid; currPos++) { currToken = pattern.get(currPos); @@ -1049,22 +1090,23 @@ public class SHEFParser { } } } - if(TokenType.PEDTSEP.equals(currType)) { + if (TokenType.PEDTSEP.equals(currType)) { peFound = true; } lastType = currToken.getType(); } // for - // If we didn't find a pe, invalidate this pattern + // If we didn't find a pe, invalidate this pattern valid &= peFound; - if(valid) { + if (valid) { for (ParserToken token : pattern) { if (token != null) { String pe = token.getSendCode(); - + if (pe != null) { - if(pe.startsWith("HY")||pe.startsWith("QY")||pe.startsWith("PY")) { - // if we found any of the above, examine the timezone - // to see if it is ZULU + if (pe.startsWith("HY") || pe.startsWith("QY") + || pe.startsWith("PY")) { + // if we found any of the above, examine the + // timezone to see if it is ZULU if ("Z".equals(timeZone)) { token.setError(ParserToken.ERR_LOG035); } @@ -1076,7 +1118,7 @@ public class SHEFParser { // this isn't right, leave it for now error = SHEFErrorCodes.LOG_003; } - if(valid) { + if (valid) { for (ParserToken t : pattern) { TokenType tt = t.getType(); @@ -1097,7 +1139,7 @@ public class SHEFParser { break; } } // switch - if(!valid) { + if (!valid) { break; } } // for @@ -1271,11 +1313,10 @@ public class SHEFParser { int errorCode = 0; int bDataPtr = 1; - ParserToken drCode = null; ParserToken drCodeOverride = null; - + boolean createOverride = false; boolean reSync = false; boolean outOfData = false; @@ -1284,9 +1325,9 @@ public class SHEFParser { boolean timeOverride = false; for (ParserToken pToken : pattern) { - - int exitStatus = tokenError(record, pattern, bdata, pToken); - if(exitStatus == 1) { + + int exitStatus = tokenError(record, pattern, bdata, pToken); + if (exitStatus == 1) { value = null; forceExit = true; break; @@ -1294,13 +1335,14 @@ public class SHEFParser { value = null; break; } - + switch (pToken.getType()) { case UNITS_CODE: { currentUnits = pToken.getToken().substring(2); - if(!isValidUnits(currentUnits)) { - ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); + if (!isValidUnits(currentUnits)) { + ERR_LOGGER.error(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); ERR_LOGGER.error(getClass(), createDataLine(bdata)); ERR_LOGGER.error(getClass(), " ?"); ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_022); @@ -1310,9 +1352,10 @@ public class SHEFParser { } case QUAL_CODE: { setCurrentQualifier(pToken.getToken().substring(2)); - if(!isValidQualityCode(getCurrentQualifier())) { - ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); + if (!isValidQualityCode(getCurrentQualifier())) { + ERR_LOGGER.error(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); ERR_LOGGER.error(getClass(), createDataLine(bdata)); ERR_LOGGER.error(getClass(), " ?"); ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_021); @@ -1334,10 +1377,12 @@ public class SHEFParser { case DATE_JUL: { if (!timeOverride) { if ((d = localMaster.applyData(pToken)) != null) { - if(d.isDSTExclusion()) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); + if (d.isDSTExclusion()) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); forceExit = true; - errorCode = 1; + errorCode = 1; } else { localMaster = d; setObsDate(d); @@ -1348,10 +1393,10 @@ public class SHEFParser { errorCode = 1; } } - // Even though the time may not get used because of override, - // any date relative codes are cleared. + // Even though the time may not get used because of + // override, any date relative codes are cleared. drCode = null; - if(!timeOverride) { + if (!timeOverride) { drCodeOverride = null; } break; @@ -1380,14 +1425,15 @@ public class SHEFParser { String s = null; // Need to check both Date Relative codes, so if either // are not null... - if((drCode != null) || (drCodeOverride != null)) { + if ((drCode != null) || (drCodeOverride != null)) { s = pToken.getSendCode(); - if((s != null) && (s.length() >= 2)) { - s = s.substring(0,2); - if(EOD_SENDCODES.contains(s)) { + if ((s != null) && (s.length() >= 2)) { + s = s.substring(0, 2); + if (EOD_SENDCODES.contains(s)) { // this is an error condition errorCode = SHEFErrorCodes.LOG_035; - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, errorCode); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, errorCode); forceExit = true; reSync = false; break; @@ -1404,29 +1450,30 @@ public class SHEFParser { pedtsep = s; } // Is there a duration coded? - if(s.length() >= 3) { - if("V".equals(s.subSequence(2,3))) { + if (s.length() >= 3) { + if ("V".equals(s.subSequence(2, 3))) { // do we have a variable duration defined? - if(currentDurationOverride == null) { - if(currentDuration == null) { + if (currentDurationOverride == null) { + if (currentDuration == null) { // No duration at all! currError = SHEFErrorCodes.LOG_032; } else { - if(!"V".equals(currentDuration)) { + if (!"V".equals(currentDuration)) { currError = SHEFErrorCodes.LOG_032; - } - } + } + } } else { - if(!"V".equals(currentDurationOverride)) { + if (!"V".equals(currentDurationOverride)) { currError = SHEFErrorCodes.LOG_032; - } + } } - if(currError != 0) { - errorCode = 1; + if (currError != 0) { + errorCode = 1; forceExit = true; pedtsep = null; value = null; - // Reset the qualifier back if it was overridden + // Reset the qualifier back if it was + // overridden qualifier = getCurrentQualifier(); retainedComment = null; reSync = true; @@ -1441,19 +1488,20 @@ public class SHEFParser { retainedComment = null; reSync = true; } - if(currError != 0) { + if (currError != 0) { // Handle the error condition - ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); + ERR_LOGGER.error(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); ERR_LOGGER.error(getClass(), createDataLine(bdata)); ERR_LOGGER.error(getClass(), " ?"); ERR_LOGGER.error(getClass(), currError); } - if(reSync) { + if (reSync) { break; } - + qualifier = getCurrentQualifier(); boolean empty = false; @@ -1479,9 +1527,10 @@ public class SHEFParser { data.setDataSource(bRecordDataSource); data.setObservationTime(record.getRecordDate()); - SHEFDate date = getRelativeDate(localMaster, drCode, - drCodeOverride, record, timeOverride); - if(date != null) { + SHEFDate date = getRelativeDate(localMaster, + drCode, drCodeOverride, record, + timeOverride); + if (date != null) { data.setObsTime(date); data.setCreateTime(getCreateTime()); @@ -1498,7 +1547,8 @@ public class SHEFParser { data.setQualifier(qualifierOverride); } data.setRetainedComment(retainedComment); - data.setRevisedRecord(record.isRevisedRecord()); + data.setRevisedRecord(record + .isRevisedRecord()); data.fixupDuration((durationValueOverride == null) ? durationValue : durationValueOverride); @@ -1509,7 +1559,9 @@ public class SHEFParser { } else { ERR_LOGGER .error(getClass(), - createRecordHeader(record, reportLead) + createRecordHeader( + record, + reportLead) + createDataLine(pattern)); ERR_LOGGER.error(getClass(), createDataLine(bdata)); @@ -1521,7 +1573,7 @@ public class SHEFParser { record.addDataValue(data); } } else { - errorCode = 1; + errorCode = 1; forceExit = true; } @@ -1535,8 +1587,8 @@ public class SHEFParser { } bToken = bdata.get(bDataPtr++); - exitStatus = tokenError(record, pattern, bdata, bToken); - if(exitStatus == 1) { + exitStatus = tokenError(record, pattern, bdata, bToken); + if (exitStatus == 1) { value = null; forceExit = true; dataFound = true; @@ -1546,7 +1598,7 @@ public class SHEFParser { dataFound = true; break; } - + switch (bToken.getType()) { case DATE_SEC: case DATE_MIN: @@ -1558,11 +1610,13 @@ public class SHEFParser { case DATE_JUL: { timeOverride = true; if ((d = localMaster.applyData(bToken)) != null) { - if(d.getError() == 0) { - if(d.isDSTExclusion()) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); + if (d.getError() == 0) { + if (d.isDSTExclusion()) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); forceExit = true; - errorCode = 1; + errorCode = 1; dataFound = true; timeOverride = false; } else { @@ -1571,15 +1625,16 @@ public class SHEFParser { resetAdjObsDate(); } } else { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, d.getError()); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + d.getError()); break INNER; } } else { errorCode = 1; } -// // Remove the 'local' override, but leave the -// // outer override. -// drCodeOverride = null; + // Remove the 'local' override, but leave the + // outer override. break; } case DATE_REL: { @@ -1594,12 +1649,15 @@ public class SHEFParser { } case UNITS_CODE: { unitsOverride = bToken.getToken().substring(2); - if(!isValidUnits(unitsOverride)) { - ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); - ERR_LOGGER.error(getClass(), createDataLine(bdata)); + if (!isValidUnits(unitsOverride)) { + ERR_LOGGER.error(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); + ERR_LOGGER.error(getClass(), + createDataLine(bdata)); ERR_LOGGER.error(getClass(), " ?"); - ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_022); + ERR_LOGGER.error(getClass(), + SHEFErrorCodes.LOG_022); dataFound = true; errorCode = 1; } @@ -1607,12 +1665,15 @@ public class SHEFParser { } case QUAL_CODE: { qualifierOverride = bToken.getToken().substring(2); - if(!isValidQualityCode(qualifierOverride)) { - ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); - ERR_LOGGER.error(getClass(), createDataLine(bdata)); + if (!isValidQualityCode(qualifierOverride)) { + ERR_LOGGER.error(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); + ERR_LOGGER.error(getClass(), + createDataLine(bdata)); ERR_LOGGER.error(getClass(), " ?"); - ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_021); + ERR_LOGGER.error(getClass(), + SHEFErrorCodes.LOG_021); dataFound = true; errorCode = 1; } @@ -1624,12 +1685,15 @@ public class SHEFParser { } case QNUMERIC: { String ss = bToken.getQualifier(); - if(!isValidQualityCode(ss)) { - ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); - ERR_LOGGER.error(getClass(), createDataLine(bdata)); + if (!isValidQualityCode(ss)) { + ERR_LOGGER.error(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); + ERR_LOGGER.error(getClass(), + createDataLine(bdata)); ERR_LOGGER.error(getClass(), " ?"); - ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_021); + ERR_LOGGER.error(getClass(), + SHEFErrorCodes.LOG_021); value = null; } else { qualifier = ss; @@ -1646,7 +1710,7 @@ public class SHEFParser { } case RETAINEDCOMMENT: { - if(lastData != null) { + if (lastData != null) { lastData.setRetainedComment(bToken.getToken()); retainedComment = null; } else { @@ -1662,7 +1726,8 @@ public class SHEFParser { case UNKNOWN: { if (isMissingValue(bToken.getToken())) { value = ShefConstants.SHEF_MISSING; - qualifier = getMissingQualifier(bToken.getToken()); + qualifier = getMissingQualifier(bToken + .getToken()); } else if (isTraceValue(bToken.getToken())) { value = ShefConstants.SHEF_TRACE; trace = true; @@ -1684,7 +1749,8 @@ public class SHEFParser { data.setDataSource(bRecordDataSource); data.setObservationTime(record.getRecordDate()); SHEFDate date = getRelativeDate(localMaster, - drCode, drCodeOverride, record, timeOverride); + drCode, drCodeOverride, record, + timeOverride); if (date != null) { data.setObsTime(date); data.setCreateTime(getCreateTime()); @@ -1763,11 +1829,6 @@ public class SHEFParser { break; } default: { - if (log.isDebugEnabled()) { - log.debug(traceId + "- Invalid token [" - + pToken.getToken() + ":" + pToken.getType() - + "] in \"B\" record"); - } } } // switch if (errorCode > 0) { @@ -1814,7 +1875,8 @@ public class SHEFParser { + createDataLine(pattern)); ERR_LOGGER.error(getClass(), createDataLine(bdata)); ERR_LOGGER.error(getClass(), " ?"); - ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_031); + ERR_LOGGER + .error(getClass(), SHEFErrorCodes.LOG_031); } } else { record.addDataValue(data); @@ -1826,9 +1888,10 @@ public class SHEFParser { // out by a different error. // add one to the bdata.size because the bDataPtr doesn't get // incremented the last time through - if (bDataPtr+1 < bdata.size() && !forceExit) { - ERR_LOGGER.warning(getClass(), createRecordHeader(record, reportLead) - + createDataLine(pattern)); + if (bDataPtr + 1 < bdata.size() && !forceExit) { + ERR_LOGGER.warning(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(pattern)); ERR_LOGGER.warning(getClass(), createDataLine(bdata)); ERR_LOGGER.warning(getClass(), " ?"); ERR_LOGGER.warning(getClass(), SHEFErrorCodes.LOG_041); @@ -1845,8 +1908,7 @@ public class SHEFParser { private int tokenError(ShefRecord record, List pattern, List bdata, ParserToken token) { int errorCondition = 0; - - + int err = token.getError(); if (err < ParserToken.ERR_NO_ERROR) { ERR_LOGGER.error(getClass(), createDataLine(pattern)); @@ -1893,30 +1955,30 @@ public class SHEFParser { errorCondition = 1; break; } - case ParserToken.ERR_LOG035 : { + case ParserToken.ERR_LOG035: { ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_035); errorCondition = 1; break; } - case ParserToken.ERR_LOG044 : { + case ParserToken.ERR_LOG044: { ERR_LOGGER.error(getClass(), SHEFErrorCodes.LOG_044); errorCondition = 1; break; } - case ParserToken.ERR_LOG079 : { + case ParserToken.ERR_LOG079: { ERR_LOGGER.warning(getClass(), SHEFErrorCodes.LOG_079); errorCondition = 2; break; } } - } else if(err > 0) { + } else if (err > 0) { statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, err); errorCondition = 1; } - + return errorCondition; } - + /** * * @param baseTime @@ -1929,11 +1991,11 @@ public class SHEFParser { ParserToken drInner, ShefRecord record, boolean overRide) { SHEFDate date = null; ParserToken dateRelative = null; - if ((drOuter != null)&&(TokenType.DATE_REL.equals(drOuter.getType()))) { + if ((drOuter != null) && (TokenType.DATE_REL.equals(drOuter.getType()))) { if (drInner == null) { dateRelative = drOuter; } else { - if(TokenType.DATE_REL.equals(drInner.getType())) { + if (TokenType.DATE_REL.equals(drInner.getType())) { dateRelative = drInner; } else { date = new SHEFDate(); @@ -1941,7 +2003,8 @@ public class SHEFParser { } } } else { - if ((drInner != null) && (TokenType.DATE_REL.equals(drInner.getType()))) { + if ((drInner != null) + && (TokenType.DATE_REL.equals(drInner.getType()))) { dateRelative = drInner; } else { date = new SHEFDate(); @@ -1971,7 +2034,7 @@ public class SHEFParser { */ private ShefRecord parseERecord(ShefRecord record) { reportLead = null; - + if (getPositionalData()) { record.setTimeZone(tz); correctMissingDelimiters(); @@ -1980,7 +2043,7 @@ public class SHEFParser { PRIMARY: for (int i = 0; i < parts.size();) { ParserToken t = parts.remove(i); sb.append(t.getRawToken()); - + switch (t.getType()) { case TIMEZONE: { break PRIMARY; @@ -1995,16 +2058,17 @@ public class SHEFParser { sb.append(" "); } reportLead = sb.toString(); - + identifyUnknownToken(parts, false); - if(!validateERecord(record)) { + if (!validateERecord(record)) { return record; } - - int error = getObsDate().getError(); - if(error != 0) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, error); + + int error = getObsDate().getError(); + if (error != 0) { + statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, + error); return record; } @@ -2039,53 +2103,76 @@ public class SHEFParser { if (err < ParserToken.ERR_NO_ERROR) { switch (err) { case ParserToken.ERR_INV_CREATE_DATE: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_019); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_019); break; } case ParserToken.ERR_INV_JUL_DATE: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_079); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_079); break; } case ParserToken.ERR_INVALID_QUAL: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_021); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_021); break; } case ParserToken.ERR_INV_SECONDS: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_016); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_016); break; } case ParserToken.ERR_INV_MINUTES: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_016); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_016); break; } case ParserToken.ERR_INV_HOURS: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_016); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_016); break; } case ParserToken.ERR_INV_DAY: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_017); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_017); break; } case ParserToken.ERR_INV_MONTH: { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_017); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_017); break; } - case ParserToken.ERR_LOG044 : { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_017); + case ParserToken.ERR_LOG044: { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_017); break; } - case ParserToken.ERR_LOG079 : { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.WARNING, SHEFErrorCodes.LOG_079); + case ParserToken.ERR_LOG079: { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.WARNING, + SHEFErrorCodes.LOG_079); break; } - default : { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.WARNING, SHEFErrorCodes.LOG_090); + default: { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.WARNING, + SHEFErrorCodes.LOG_090); } } value = null; break; - } else if(err > 0) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, err); + } else if (err > 0) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, err); value = null; break; } @@ -2109,16 +2196,18 @@ public class SHEFParser { int currError = ShefUtil.validatePEDTSEP(s); if (currError == 0) { - PhysicalElement pe = PhysicalElement.getEnum(s.substring(0, 2)); + PhysicalElement pe = PhysicalElement.getEnum(s + .substring(0, 2)); if (!PhysicalElement.UNKNOWN.equals(pe)) { pedtsep = s; } // Is there a duration coded? - if(s.length() >= 3) { - if("V".equals(s.subSequence(2,3))) { - // do we have a variable duration defined? - if(!"Z".equals(currentDuration)) { - if("Z".equals(currentDurationOverride)) { + if (s.length() >= 3) { + if ("V".equals(s.subSequence(2, 3))) { + // do we have a variable duration + // defined? + if (!"Z".equals(currentDuration)) { + if ("Z".equals(currentDurationOverride)) { currError = SHEFErrorCodes.LOG_032; } } else { @@ -2127,7 +2216,7 @@ public class SHEFParser { } } } - if(currError != 0) { + if (currError != 0) { // Handle the error condition ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) @@ -2146,7 +2235,9 @@ public class SHEFParser { // can't redeclare the PE once data processing has // started. // Handle the error condition - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_101); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_101); reSync = true; } break; @@ -2165,11 +2256,13 @@ public class SHEFParser { case DATE_DATE: case DATE_JUL: { if ((d = masterDate.applyData(token)) != null) { - if(d.isDSTExclusion()) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); + if (d.isDSTExclusion()) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); pedtsep = null; reSync = true; - } else { + } else { masterDate = d; setObsDate(d); resetAdjObsDate(); @@ -2185,8 +2278,10 @@ public class SHEFParser { } case DATE_REL: { if ((d = masterDate.applyData(token)) != null) { - if(d.isDSTExclusion()) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); + if (d.isDSTExclusion()) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); pedtsep = null; reSync = true; } else { @@ -2208,7 +2303,7 @@ public class SHEFParser { resetAdjObsDate(); seriesSequence = 0; - + break; } case QNUMERIC: { @@ -2217,8 +2312,10 @@ public class SHEFParser { if (haveInt) { // override the current qualifier. String ss = token.getQualifier(); - if(!isValidQualityCode(ss)) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_021); + if (!isValidQualityCode(ss)) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_021); value = null; // But adjust the date incrementAdjObsDate(interval); @@ -2250,7 +2347,7 @@ public class SHEFParser { break; } case RETAINEDCOMMENT: { - if(lastData != null) { + if (lastData != null) { lastData.setRetainedComment(token.getToken()); retainedComment = null; } else { @@ -2278,10 +2375,12 @@ public class SHEFParser { value = ShefConstants.SHEF_TRACE; trace = true; } else { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_064); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_064); value = null; // Several things to check for - if(!haveInt || (pedtsep == null)) { + if (!haveInt || (pedtsep == null)) { reSync = true; } break; @@ -2300,8 +2399,7 @@ public class SHEFParser { } // switch if ((pedtsep != null) && (value != null)) { ShefData data = new ShefData(); - data.setParameterCodeString(pedtsep, - currentDuration); + data.setParameterCodeString(pedtsep, currentDuration); data.setLocationId(getLocationId()); data.setObservationTime(record.getRecordDate()); data.setObsTime(getAdjObsDate()); @@ -2311,7 +2409,7 @@ public class SHEFParser { data.setStringValue(value); data.setUnitsCode(getCurrentUnits()); data.setQualifier(qualifier); - if(retainedComment != null) { + if (retainedComment != null) { data.setRetainedComment(retainedComment); retainedComment = null; } else { @@ -2325,7 +2423,9 @@ public class SHEFParser { if (legalTraceValue(data.getPhysicalElement())) { record.addDataValue(data); } else { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_031); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_031); } } else { record.addDataValue(data); @@ -2334,24 +2434,27 @@ public class SHEFParser { qualifier = getCurrentQualifier(); incrementAdjObsDate(interval); - if(getAdjObsDate().isDSTExclusion()) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_044); + if (getAdjObsDate().isDSTExclusion()) { + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_044); reSync = true; } seriesSequence++; trace = false; - } - - // For E records if we have a bad PEDTSEP or attempted - // re-declaration of - // PEDTSEP or the data time interval then we have to quit. + } + + // For E records if we have a bad PEDTSEP or attempted + // re-declaration of + // PEDTSEP or the data time interval then we have to quit. if (reSync) { break; } } // for // Check to see if we have "trailing" data to pickup } else { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, SHEFErrorCodes.LOG_045); + statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, + SHEFErrorCodes.LOG_045); record = null; } } else { @@ -2383,7 +2486,8 @@ public class SHEFParser { } if (t != null) { if (error > -9999) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, error); + statusReporting(record, ERR_LOGGER, + SHEFErrors.HANDLERS.ERROR, error); } else { } @@ -2399,49 +2503,50 @@ public class SHEFParser { private boolean validateERecord(ShefRecord record) { boolean isValid = true; int error = 0; - for(ParserToken token : parts) { - - if(token != null) { + for (ParserToken token : parts) { + + if (token != null) { TokenType type = token.getType(); - switch(type) { - case PEDTSEP : { + switch (type) { + case PEDTSEP: { String pe = token.getSendCode(); - if(pe != null) { - if(pe.startsWith("HY") || pe.startsWith("QY") || pe.startsWith("PY")) { + if (pe != null) { + if (pe.startsWith("HY") || pe.startsWith("QY") + || pe.startsWith("PY")) { error = SHEFErrorCodes.LOG_035; isValid = false; } } break; } - case UNITS_CODE : { + case UNITS_CODE: { isValid = isValidUnits(token.getRawToken().substring(2)); error = SHEFErrorCodes.LOG_022; break; } - case QUAL_CODE : { - isValid = isValidQualityCode(token.getRawToken().substring(2)); + case QUAL_CODE: { + isValid = isValidQualityCode(token.getRawToken().substring( + 2)); error = SHEFErrorCodes.LOG_021; break; } - case UNKNOWN : { - - - + case UNKNOWN: { + } } } } - if(!isValid) { - statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, error); + if (!isValid) { + statusReporting(record, ERR_LOGGER, SHEFErrors.HANDLERS.ERROR, + error); } return isValid; } - - private void statusReporting(ShefRecord record, SHEFErrors logger, SHEFErrors.HANDLERS handler, int error) { - switch(handler) { - case DEBUG : { + private void statusReporting(ShefRecord record, SHEFErrors logger, + SHEFErrors.HANDLERS handler, int error) { + switch (handler) { + case DEBUG: { ERR_LOGGER.debug(getClass(), createRecordHeader(record, reportLead) + createDataLine(parts)); ERR_LOGGER.debug(getClass(), "?"); @@ -2449,16 +2554,17 @@ public class SHEFParser { break; } - case WARNING : { - ERR_LOGGER.warning(getClass(), createRecordHeader(record, reportLead) - + createDataLine(parts)); + case WARNING: { + ERR_LOGGER.warning(getClass(), + createRecordHeader(record, reportLead) + + createDataLine(parts)); ERR_LOGGER.warning(getClass(), "?"); ERR_LOGGER.warning(getClass(), error); - + break; } - case ERROR : { - + case ERROR: { + ERR_LOGGER.error(getClass(), createRecordHeader(record, reportLead) + createDataLine(parts)); ERR_LOGGER.error(getClass(), "?"); @@ -2467,7 +2573,7 @@ public class SHEFParser { } } } - + /** * * Note - This method must only be used for "E" records. @@ -2478,29 +2584,31 @@ public class SHEFParser { TokenType QNUMERIC = TokenType.QNUMERIC; TokenType COMMA = TokenType.COMMA; TokenType SPACE = TokenType.SPACE; - + if ((parts != null) && (parts.size() > 0)) { ParserToken last = null; - // First pass through we are going to look for possible commas in the data. - for(int i = 0;i < parts.size();) { - ParserToken t = getToken(parts,i); - // do we have a comma? - if(COMMA.equals(t.getType())) { + // First pass through we are going to look for possible commas in + // the data. + for (int i = 0; i < parts.size();) { + ParserToken t = getToken(parts, i); + // do we have a comma? + if (COMMA.equals(t.getType())) { // ok remove it parts.remove(i); - if(SPACE.equals(last.getType())) { + if (SPACE.equals(last.getType())) { // preceeded by a space, then we check the // next token. - t = getToken(parts,i); - if(t.isValueToken()) { + t = getToken(parts, i); + if (t.isValueToken()) { parts.remove(i); } } else { - if((last != null) && (last.getType() != null)) { - if(last.isValueToken()) { - parts.set(i-1,new ParserToken("",TokenType.EMPTY)); - t = getToken(parts,i); - if(t.isValueToken()) { + if ((last != null) && (last.getType() != null)) { + if (last.isValueToken()) { + parts.set(i - 1, new ParserToken("", + TokenType.EMPTY)); + t = getToken(parts, i); + if (t.isValueToken()) { parts.remove(i); } } @@ -2596,21 +2704,21 @@ public class SHEFParser { String currToken = st.nextToken(); // Constructor will attempt to determine the token type ParserToken t = new ParserToken(currToken.trim()); - if(TokenType.COMMA.equals(last) && currToken.startsWith(" ")) { + if (TokenType.COMMA.equals(last) && currToken.startsWith(" ")) { tokens.add(new ParserToken(" ", TokenType.SPACE)); } - if (TokenType.UNKNOWN.equals(t.getType()) || - TokenType.SPACEINMIDDLE.equals(t.getType())) { + if (TokenType.UNKNOWN.equals(t.getType()) + || TokenType.SPACEINMIDDLE.equals(t.getType())) { // check possible failures - List subList = subTokenize(currToken); - if (subList != null) { - tokens.addAll(subList); - } + List subList = subTokenize(currToken); + if (subList != null) { + tokens.addAll(subList); + } } else { tokens.add(t); } - if(tokens.size() > 0) { - last = tokens.get(tokens.size() -1).getType(); + if (tokens.size() > 0) { + last = tokens.get(tokens.size() - 1).getType(); } } tokens = identifyEmpty(collapseSpaces(tokens)); @@ -2637,13 +2745,13 @@ public class SHEFParser { continue; } ParserToken tt = new ParserToken(currToken); - if(TokenType.UNKNOWN.equals(tt.getType())) { + if (TokenType.UNKNOWN.equals(tt.getType())) { tt = tt.check_D_Directives(); } tokens.add(tt); lastToken = currToken; } - + // Make a pass through the tokens to see if there are any // ill-formed retained comments for (int i = 0; i < tokens.size(); i++) { @@ -2737,7 +2845,7 @@ public class SHEFParser { TokenType UNKNOWN = TokenType.UNKNOWN; TokenType NUMERIC = TokenType.NUMERIC; TokenType RETAINEDCOMMENT = TokenType.RETAINEDCOMMENT; - + TokenType last = UNKNOWN; for (int i = 0; i < tokens.size(); i++) { @@ -2764,7 +2872,7 @@ public class SHEFParser { break; } case RETAINEDCOMMENT: { - if(!NUMERIC.equals(last)) { + if (!NUMERIC.equals(last)) { last = RETAINEDCOMMENT; } break; @@ -2788,7 +2896,7 @@ public class SHEFParser { TokenType SLASH = TokenType.SLASH; TokenType SPACE = TokenType.SPACE; TokenType COMMA = TokenType.COMMA; - + TokenType NIL = TokenType.NIL; List newTokens = new ArrayList(); @@ -2818,8 +2926,8 @@ public class SHEFParser { newTokens.add(t); } } else { - if(SPACE.equals(t.getType())) { - if(COMMA.equals(last)) { + if (SPACE.equals(t.getType())) { + if (COMMA.equals(last)) { newTokens.add(t); } } else { @@ -2833,8 +2941,8 @@ public class SHEFParser { last = t.getType(); } } else { - if(SPACE.equals(t.getType())) { - if(COMMA.equals(last)) { + if (SPACE.equals(t.getType())) { + if (COMMA.equals(last)) { last = t.getType(); } } else { @@ -2862,10 +2970,6 @@ public class SHEFParser { ParserToken t = tokens.get(i); if (TokenType.UNKNOWN.equals(t.getType())) { String s = t.getToken().toUpperCase(); - if (log.isDebugEnabled()) { - log.debug(traceId + "- Checking unknown token " - + t.getType() + " " + s); - } if (s.length() >= 2) { // Special check for MM, may be a PE or missing value. if ("MM".equals(s)) { @@ -2901,7 +3005,7 @@ public class SHEFParser { PhysicalElement pe = PhysicalElement.getEnum(s .substring(0, 2)); if (!PhysicalElement.UNKNOWN.equals(pe)) { - + int error = SHEFErrorCodes.LOG_000; String sendCode = null; @@ -2911,16 +3015,17 @@ public class SHEFParser { if (trans != null) { if (trans.length() > 3) { // Handle the send code translation - if(s.length() != 2) { + if (s.length() != 2) { error = SHEFErrorCodes.LOG_030; } else { // Only set the sendCode for true - // send codes, not duration overrides. + // send codes, not duration + // overrides. sendCode = pe.getCode(); s = trans; } } else { - if(s.length() == 2) { + if (s.length() == 2) { s = trans; } } @@ -2932,9 +3037,8 @@ public class SHEFParser { tokens.set(i, tt); // May be some other type of token } else if (isMissingValue(t.getToken())) { - String q = getMissingQualifier(t - .getToken()); - if("M".equals(q)) { + String q = getMissingQualifier(t.getToken()); + if ("M".equals(q)) { q = ShefConstants.SHEF_MISSING + "M"; } else { q = ShefConstants.SHEF_MISSING; @@ -2947,9 +3051,8 @@ public class SHEFParser { } } } else if (isMissingValue(t.getToken())) { - String q = getMissingQualifier(t - .getToken()); - if("M".equals(q)) { + String q = getMissingQualifier(t.getToken()); + if ("M".equals(q)) { q = ShefConstants.SHEF_MISSING + "M"; } else { q = ShefConstants.SHEF_MISSING; @@ -2962,7 +3065,7 @@ public class SHEFParser { tt.setTrace(true); tokens.set(i, tt); } else { - // With the + // With the // We have a problem! log.error(traceId + "- Could not identify token " + t); } @@ -2986,13 +3089,6 @@ public class SHEFParser { } else { i++; } - // re-get the token -// t = tokens.get(ii); -// if (TokenType.UNKNOWN.equals(t.getType())) { -// String s = t.getToken().toUpperCase(); -// ParserToken tt = t.analyzeUnknown(s); -// tokens.set(ii, tt); -// } } } } @@ -3015,9 +3111,8 @@ public class SHEFParser { .length(), ShefConstants.UPPER_LID_LIMIT)) { setLocationId(t.getToken()); - // t = new ParserToken(getLocationId(), TokenType.LOC_ID); t = ParserToken.createLocIdToken(getLocationId()); - + parts.set(partsIndex, t); if (t.getError() < 0) { return foundPositionalData; @@ -3053,12 +3148,11 @@ public class SHEFParser { setTimeZone(tzc); } checkForDefaultTimeZone(); - // Now check to see if what attempted to set as - // the - // timezone was indeed the timezone. If so, set - // the - // token - // type to TIMEZONE + /* + * Now check to see if what attempted to set as + * the timezone was indeed the timezone. If so, + * set the token type to TIMEZONE + */ if (tzc.equals(getTimeZone())) { parts.set(partsIndex, new ParserToken(tzc, TokenType.TIMEZONE)); @@ -3074,9 +3168,6 @@ public class SHEFParser { partsIndex++; } tz = SHEFTimezone.sysTimeZones.get(timeZone); - if (log.isDebugEnabled()) { - log.info("Timezone set to " + tz); - } if (tz == null) { // indicate error - really bad! foundPositionalData = false; @@ -3137,7 +3228,6 @@ public class SHEFParser { return foundPositionalData; } // - /** * Move past any SPACE tokens in the data list. * @@ -3192,12 +3282,12 @@ public class SHEFParser { */ private static void fixupDates(List tokens, TimeZone tz) { for (ParserToken t : tokens) { - switch(t.getType()) { + switch (t.getType()) { case DATE_CREATE: case OBS_DATE_4: case OBS_DATE_6: case OBS_DATE_8: { - if(t.getError() == ParserToken.ERR_NO_ERROR) { + if (t.getError() == ParserToken.ERR_NO_ERROR) { t.adjustToTimezone(tz); t.getDateData().validate(); } @@ -3395,7 +3485,7 @@ public class SHEFParser { private static boolean legalTraceValue(PhysicalElement pe) { return VALID_TRACE_PE.contains(pe); } - + /** * * @param qualCode @@ -3404,7 +3494,7 @@ public class SHEFParser { private boolean isValidQualityCode(String qualCode) { // Set to false by exception boolean isValid = true; - if(qualCode != null) { + if (qualCode != null) { isValid = (ShefParm.getDataQualifierCodes(qualCode) != null); } else { isValid = false; @@ -3414,13 +3504,14 @@ public class SHEFParser { /** * Determine if the units code is valid. + * * @param unitsCode * @return */ private static boolean isValidUnits(String unitsCode) { // Set to false by exception boolean isValid = true; - if(unitsCode != null) { + if (unitsCode != null) { isValid = ShefConstants.VALID_UNITS.indexOf(unitsCode) > -1; } else { isValid = false; @@ -3436,19 +3527,16 @@ public class SHEFParser { */ private static ParserToken getToken(List list, int i) { ParserToken t = null; - if((list != null) && (i < list.size())) { + if ((list != null) && (i < list.size())) { t = list.get(i); } - if(t == null) { + if (t == null) { t = new ParserToken("^^^", TokenType.UNKNOWN); } - + return t; } - - - - + /** * * @param msg @@ -3486,7 +3574,7 @@ public class SHEFParser { if (rec != null) { recData.append(rec.getShefType().name()); recData.append(rec.isRevisedRecord() ? "R " : " "); - if(reportLead != null) { + if (reportLead != null) { recData.append(reportLead); recData.append(" "); } @@ -3504,7 +3592,7 @@ public class SHEFParser { Iterator it = p.iterator(); while (it.hasNext()) { ParserToken t = it.next(); - if(t.getSendCode() != null) { + if (t.getSendCode() != null) { sb.append(t.getSendCode()); } else { sb.append(t.getRawToken()); @@ -3543,7 +3631,7 @@ public class SHEFParser { */ public static void main(String[] args) { -// List list = + // List list = // tokenize(".E EE0165 0323 Z DH01/HGI/DIH1 /\n" + // ".E1 1.0 2..0 3+0 \"comment 3\" 4.0 \"comment 4\" 5.0 6.0"); @@ -3555,31 +3643,28 @@ public class SHEFParser { // .A AA0447N 991216 Z DH09/ TX 20A\"comment\" / // .A AA0447P 991216 Z DH09/ TX 20R\'comment\' / -// tokenize(".A AA0447L 991216 Z DH09/ TX 20M\"comment\""); + // tokenize(".A AA0447L 991216 Z DH09/ TX 20M\"comment\""); // List list = // tokenize(".E1 1.0 2..0 3+0 \"comment 3\" 4.0 \"comment 4\" 5.0 6.0 \"comment 5\"\n"); -// System.out -// .println("------------------------------------------------------------"); -// for (ParserToken t : list) { -// System.out.println(t); -// } + // System.out + // .println("------------------------------------------------------------"); + // for (ParserToken t : list) { + // System.out.println(t); + // } - List list = - tokenize(".E1 1.0 2..0 3+0 \"comment 3\" 4.0 \"comment 4\" 5.0 6.0 \"comment 5 \""); - - System.out - .println("------------------------------------------------------------"); - for (ParserToken t : list) { - System.out.println(t); - } + List list = tokenize(".E1 1.0 2..0 3+0 \"comment 3\" 4.0 \"comment 4\" 5.0 6.0 \"comment 5 \""); + + System.out + .println("------------------------------------------------------------"); + for (ParserToken t : list) { + System.out.println(t); + } ParserToken t = new ParserToken("HY"); System.out.println(t + " " + t.getError()); - - - + } } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefDecoder.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefDecoder.java index 1387f04e5a..19c3ca09f7 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefDecoder.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefDecoder.java @@ -21,17 +21,15 @@ package com.raytheon.edex.plugin.shef; import java.util.Date; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.esb.Headers; -import com.raytheon.edex.exception.DecoderException; import com.raytheon.edex.plugin.shef.ShefSeparator.ShefDecoderInput; import com.raytheon.edex.plugin.shef.data.ShefRecord; import com.raytheon.edex.plugin.shef.database.PostShef; import com.raytheon.edex.plugin.shef.database.PurgeText; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.decodertools.core.DecoderTools; /** @@ -56,11 +54,13 @@ import com.raytheon.uf.edex.decodertools.core.DecoderTools; * 01/15/2009 1892 J. Sanchez Update parse method, set obsTimeFlag to false when done. * 12/--/2009 jkorman Major refactor - split into ShefDecoder/SHEFParser * 03/07/2013 15071 W. Kwock Skip empty data files. + * 04/28/2014 3088 mpduff Use UFStatus logging, various cleanup. * */ public class ShefDecoder { - private final Log logger = LogFactory.getLog(getClass()); + private static final IUFStatusHandler logger = UFStatus + .getHandler(ShefDecoder.class); // SHEF never returns real data to edex, so create an empty data array // here. @@ -68,8 +68,6 @@ public class ShefDecoder { /** * Constructor - * - * @throws DecoderException */ public ShefDecoder() { this("shef"); @@ -78,63 +76,60 @@ public class ShefDecoder { /** * Constructor * - * @throws DecoderException + * @param name */ public ShefDecoder(String name) { } /** + * Decode. * * @param data + * Data to decode * @param headers - * @return + * The headers for the data + * @return PluginDataObject[] of decoded data */ public PluginDataObject[] decode(byte[] data, Headers headers) { - boolean archiveMode = AppsDefaults.getInstance().getBoolean("ALLOW_ARCHIVE_DATA",false); - + boolean archiveMode = AppsDefaults.getInstance().getBoolean( + "ALLOW_ARCHIVE_DATA", false); + String traceId = null; - if (data == null || data.length == 0){ - return null; + if (data == null || data.length == 0) { + return null; } - + if (headers != null) { traceId = (String) headers.get(DecoderTools.INGEST_FILE_NAME); } - if (traceId != null) { - logger.info("Separating " + traceId); - } + ShefSeparator separator = null; try { separator = ShefSeparator.separate(data, headers); - - } catch(Exception e) { - logger.error("Could not separate " + traceId); - if(logger.isDebugEnabled()) { - logger.error(e); - } + } catch (Exception e) { + logger.error("Could not separate " + traceId, e); separator = null; } if (separator != null) { - + long startTime = System.currentTimeMillis(); Date postDate = null; - if(archiveMode) { - postDate = getPostTime(separator.getWmoHeader().getHeaderDate().getTimeInMillis()); + if (archiveMode) { + postDate = getPostTime(separator.getWmoHeader().getHeaderDate() + .getTimeInMillis()); } else { postDate = getPostTime(startTime); } PostShef postShef = new PostShef(postDate); - if(separator.hasNext()) { + if (separator.hasNext()) { PurgeText pText = new PurgeText(postDate); pText.storeTextProduct(separator); } - - if(postShef != null) { - doDecode(separator, traceId, postShef); - } + + doDecode(separator, traceId, postShef); logger.info(traceId + "- Decode complete in " + (System.currentTimeMillis() - startTime) + " milliSeconds"); @@ -142,7 +137,7 @@ public class ShefDecoder { return records; } - + /** * * @param data @@ -162,14 +157,9 @@ public class ShefDecoder { ShefSeparator separator = null; try { separator = ShefSeparator.separate(data, headers); - - } catch(Exception e) { - if(logger.isDebugEnabled()) { - logger.error("Could not separate " + traceId, e); - } else { - logger.error("Could not separate " + traceId); - } - logger.error("Could not separate ",e); + + } catch (Exception e) { + logger.error("Could not separate " + traceId, e); separator = null; } @@ -181,79 +171,66 @@ public class ShefDecoder { try { postShef = new PostShef(postDate); } catch (Exception e) { - if(logger.isDebugEnabled()) { - logger.error("Could not create PostShef", e); - } else { - logger.error("Could not create PostShef" + e.toString()); - } + logger.error("Could not create PostShef", e); } - if(postShef != null) { + if (postShef != null) { try { doDecode(separator, traceId, postShef); logger.info(traceId + "- Decode complete in " + (System.currentTimeMillis() - startTime) + " milliSeconds"); } catch (Exception e) { - if(logger.isDebugEnabled()) { - logger.error("ShefDecoder.decode failed", e); - } else { - logger.error("ShefDecoder.decode failed " + e.toString()); - } - } + logger.error("ShefDecoder.decode failed", e); + } } } return records; } - - - private void doDecode(ShefSeparator separator, String traceId, PostShef postShef) { - + + private void doDecode(ShefSeparator separator, String traceId, + PostShef postShef) { long startTime = System.currentTimeMillis(); + try { + AppsDefaults appDefaults = AppsDefaults.getInstance(); + boolean logSHEFOut = appDefaults.getBoolean("shef_out", false); - AppsDefaults appDefaults = AppsDefaults.getInstance(); - boolean logSHEFOut = appDefaults.getBoolean("shef_out", false); - - // Check to see if the separator has data to be processed. - boolean dataProcessed = separator.hasNext(); - while (separator.hasNext()) { - ShefDecoderInput sdi = separator.next(); - try { - - SHEFParser parser = new SHEFParser(sdi); - ShefRecord shefRecord = parser.decode(); - if (shefRecord != null) { - if (shefRecord.getDataValues() != null) { - try { - if (logSHEFOut) { - logger.info(traceId + " > " + shefRecord); - } else if (logger.isDebugEnabled()) { - logger.debug(traceId + " > " + shefRecord); + // Check to see if the separator has data to be processed. + boolean dataProcessed = separator.hasNext(); + while (separator.hasNext()) { + ShefDecoderInput sdi = separator.next(); + try { + SHEFParser parser = new SHEFParser(sdi); + ShefRecord shefRecord = parser.decode(); + if (shefRecord != null) { + if (shefRecord.getDataValues() != null) { + try { + if (logSHEFOut) { + logger.info(traceId + " > " + shefRecord); + } + postShef.post(shefRecord); + } catch (Throwable tt) { + logger.error(traceId + + "- Could not post record.", tt); } - postShef.post(shefRecord); - } catch (Throwable tt) { - logger.error(traceId - + "- Could not post record.", tt); + } else { + logger.info(traceId + "- No data records in file."); } } else { - logger.info(traceId + "- No data records in file."); + logger.info(traceId + "- No records in file."); } - } else { - logger.info(traceId + "- No records in file."); - } - } catch (Exception ee) { - logger - .error(traceId + "- Could not parse SHEF report.", - ee); - if (logger.isDebugEnabled()) { - logger.debug(traceId + " " + sdi.record); + } catch (Exception ee) { + logger.error(traceId + "- Could not parse SHEF report.", ee); } + } // while() + if (dataProcessed) { + postShef.logStats(traceId, System.currentTimeMillis() + - startTime); } - } // while() - if(dataProcessed) { - postShef.logStats(traceId, System.currentTimeMillis() - startTime); + } finally { + postShef.close(); } } - + /** * * @param startTime @@ -263,13 +240,12 @@ public class ShefDecoder { // Force time to nearest second. return new Date(startTime - (startTime % 1000)); } - - + /* * */ - public static final void main(String [] args) { - + public static final void main(String[] args) { + long t = System.currentTimeMillis(); Date postDateA = new Date(t); t = t - (t % 1000); diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefSeparator.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefSeparator.java index 26d2834fe6..4f119cb8d9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefSeparator.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ShefSeparator.java @@ -34,16 +34,15 @@ import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.esb.Headers; import com.raytheon.edex.plugin.AbstractRecordSeparator; import com.raytheon.edex.plugin.shef.util.SHEFErrors; import com.raytheon.uf.common.dataplugin.shef.util.SHEFErrorCodes; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * @@ -59,7 +58,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * 11/29/2012 lbousaidi fixed the decoding issue when the shef starts * with : * 6/27/2013 16225 wkwock Fixed trail with slash and space issue. - * + * 04/29/2014 3088 mpduff Use UFStatus logging + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage * * * @author bphillip @@ -85,7 +85,8 @@ public class ShefSeparator extends AbstractRecordSeparator { public String traceId; } - private static final Log log = LogFactory.getLog(ShefSeparator.class); + private static final IUFStatusHandler log = UFStatus + .getHandler(ShefSeparator.class); private static final SHEFErrors ERR_LOGGER = SHEFErrors .registerLogger(ShefSeparator.class); @@ -150,7 +151,8 @@ public class ShefSeparator extends AbstractRecordSeparator { currentRecord = -1; /* Extracts the header */ - wmoHeader = new WMOHeader(data, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + wmoHeader = new WMOHeader(data, fileName); if (wmoHeader.isValid()) { if (traceId == null) { traceId = wmoHeader.getWmoHeader(); @@ -165,7 +167,7 @@ public class ShefSeparator extends AbstractRecordSeparator { } else { // No WMO header found or bad one, so process as best // as we can. - Calendar c = TimeTools.getSystemCalendar(); + Calendar c = TimeUtil.newGmtCalendar(); if (c != null) { productTime = c.getTime(); } @@ -199,11 +201,7 @@ public class ShefSeparator extends AbstractRecordSeparator { } separator.setData(data, headers); } catch (Exception e) { - if(log.isDebugEnabled()) { - log.error(separator.traceId + "- Error separating data.", e); - } else { - log.error(separator.traceId + "- Error separating data " + e.toString()); - } + log.error(separator.traceId + "- Error separating data.", e); } return separator; } @@ -598,15 +596,7 @@ public class ShefSeparator extends AbstractRecordSeparator { records.add(buffer.toString()); } } catch (Exception e) { - if (log.isDebugEnabled()) { - ERR_LOGGER.error(getClass(), "Data error ", e); - } else { - ERR_LOGGER.error(getClass(), "Data error "); - } - } - if (log.isDebugEnabled()) { - ERR_LOGGER.debug(getClass(), "Message has " + records.size() - + " records."); + ERR_LOGGER.error(getClass(), "Data error ", e); } } @@ -619,19 +609,19 @@ public class ShefSeparator extends AbstractRecordSeparator { private static String removeInternalComments(String dataLine) { String s = null; if (dataLine != null) { - StringBuilder buffer = new StringBuilder(dataLine.length()); - boolean inComment = false; - for (int i = 0; i < dataLine.length(); i++) { - if (dataLine.charAt(i) != ':') { - if (!inComment) { - buffer.append(dataLine.charAt(i)); - } - } else { - // Toggle comments - inComment = !inComment; + StringBuilder buffer = new StringBuilder(dataLine.length()); + boolean inComment = false; + for (int i = 0; i < dataLine.length(); i++) { + if (dataLine.charAt(i) != ':') { + if (!inComment) { + buffer.append(dataLine.charAt(i)); } + } else { + // Toggle comments + inComment = !inComment; } - s = buffer.toString(); + } + s = buffer.toString(); } else { s = new String(); } @@ -718,7 +708,7 @@ public class ShefSeparator extends AbstractRecordSeparator { private static boolean findTrailingSlash(String data) { boolean trailingSlash = false; if ((data != null) && (data.length() > 0)) { - String trimData = data.trim(); + String trimData = data.trim(); trailingSlash = (trimData.charAt(trimData.length() - 1) == '/'); } return trailingSlash; diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefData.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefData.java index c78999b906..949baffe4c 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefData.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefData.java @@ -19,20 +19,20 @@ **/ package com.raytheon.edex.plugin.shef.data; -import java.text.ParseException; import java.util.Date; import java.util.regex.Matcher; import java.util.regex.Pattern; +import com.raytheon.edex.plugin.shef.util.SHEFDate; +import com.raytheon.edex.plugin.shef.util.ShefParm; +import com.raytheon.uf.common.dataplugin.shef.tables.IngestfilterId; import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode; -import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.Duration; import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.Extremum; import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.PhysicalElement; import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.Probability; import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.TypeSource; -import com.raytheon.edex.plugin.shef.util.SHEFDate; -import com.raytheon.edex.plugin.shef.util.ShefParm; +import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; import com.raytheon.uf.common.serialization.ISerializableObject; @@ -47,6 +47,8 @@ import com.raytheon.uf.common.serialization.ISerializableObject; * ------------ ---------- ----------- -------------------------- * 03/19/08 387 M. Duff Initial creation. * 10/16/2008 1548 jelkins Integrated ParameterCode Types + * 04/29/2014 3088 mpduff cleanup. + * 06/26/2014 3321 mpduff Added ingestfilter primary key getter. * * */ @@ -55,13 +57,14 @@ public class ShefData implements ISerializableObject { private String stringValue = null; private Double value = null; - + private String qualifier = "Z"; private String locationId = null; + // Only used for B records. private String dataSource = null; - + private PhysicalElement physicalElement = PhysicalElement.HEIGHT_RIVER_STAGE; private Duration duration = Duration.INSTANTENOUS; @@ -76,10 +79,11 @@ public class ShefData implements ISerializableObject { private TypeSource typeSource = TypeSource.READING_NONSPECIFIC; - private String dataTypeCode = TypeSource.READING_NONSPECIFIC.getCode().substring(0,1); - + private String dataTypeCode = TypeSource.READING_NONSPECIFIC.getCode() + .substring(0, 1); + private String dataSourceCode = TypeSource.READING_NONSPECIFIC.getSource(); - + private Extremum extremum = Extremum.NULL; private Probability probability = Probability.NULL; @@ -90,22 +94,18 @@ public class ShefData implements ISerializableObject { private String observationTime = null; - private Date observationTimeObj = null; - private SHEFDate obsTime = null; private String unitsCode = null; private String creationDate = null; - private Date creationDateObj = null; - private SHEFDate createTime = null; private int timeSeriesId = ShefConstants.SHEF_NOT_SERIES; private String parameterCodeString = null; - + private boolean revisedRecord = false; /** @@ -114,7 +114,7 @@ public class ShefData implements ISerializableObject { public ShefData() { } - + /** * @return the stringValue */ @@ -123,28 +123,29 @@ public class ShefData implements ISerializableObject { } /** - * @param stringValue the stringValue to set + * @param stringValue + * the stringValue to set */ public void setStringValue(String stringValue) { this.stringValue = stringValue; try { boolean neg = false; int negPos = stringValue.indexOf('-'); - if(negPos >= 0) { - stringValue = stringValue.substring(negPos+1); + if (negPos >= 0) { + stringValue = stringValue.substring(negPos + 1); neg = true; } value = Double.parseDouble(stringValue); - if(neg && Math.signum(value) != 0) { - value *= -1.0; + if (neg && Math.signum(value) != 0) { + value *= -1.0; } - } catch(NumberFormatException nfe) { + } catch (NumberFormatException nfe) { value = null; - } catch(NullPointerException npe) { + } catch (NullPointerException npe) { value = null; } } - + /** * @return the value */ @@ -153,7 +154,8 @@ public class ShefData implements ISerializableObject { } /** - * @param value the value to set + * @param value + * the value to set */ public void setValue(Double value) { this.value = value; @@ -167,7 +169,8 @@ public class ShefData implements ISerializableObject { } /** - * @param qualifier the qualifier to set + * @param qual + * the qualifier to set */ public void setQualifier(String qual) { qualifier = (qual == null) ? "Z" : qual; @@ -181,12 +184,13 @@ public class ShefData implements ISerializableObject { } /** - * @param locationId the locationId to set + * @param locationId + * the locationId to set */ public void setLocationId(String locationId) { this.locationId = locationId; } - + /** * @return the dataSource */ @@ -195,7 +199,8 @@ public class ShefData implements ISerializableObject { } /** - * @param dataSource the dataSource to set + * @param dataSource + * the dataSource to set */ public void setDataSource(String dataSource) { this.dataSource = dataSource; @@ -209,7 +214,8 @@ public class ShefData implements ISerializableObject { } /** - * @param timeSeriesId the timeSeriesId to set + * @param timeSeriesId + * the timeSeriesId to set */ public void setTimeSeriesId(int timeSeriesId) { this.timeSeriesId = timeSeriesId; @@ -227,62 +233,65 @@ public class ShefData implements ISerializableObject { /** * Set the parameter code string * - * @param parameterCode + * @param peCode * the parameterCode to set + * @param variableDuration */ public void setParameterCodeString(String peCode, String variableDuration) { - if((peCode != null)&&(peCode.length() >= 2)) { + if ((peCode != null) && (peCode.length() >= 2)) { parameterCodeString = peCode; - PhysicalElement pe = PhysicalElement.getEnum(peCode.substring(0,2)); - if(!PhysicalElement.UNKNOWN.equals(pe)) { + PhysicalElement pe = PhysicalElement + .getEnum(peCode.substring(0, 2)); + if (!PhysicalElement.UNKNOWN.equals(pe)) { // Set up default values for PEDTSEP String paramProbability = Probability.NULL.getCode(); String paramExtremum = Extremum.NULL.getCode(); - String paramType = TypeSource.READING_NONSPECIFIC.getCode().substring(0,1); + String paramType = TypeSource.READING_NONSPECIFIC.getCode() + .substring(0, 1); String paramSource = TypeSource.READING_NONSPECIFIC.getSource(); String paramDuration = "Z"; - switch(peCode.length()) { - case 7 : { - paramProbability = peCode.substring(6,7); + switch (peCode.length()) { + case 7: { + paramProbability = peCode.substring(6, 7); } - case 6 : { - paramExtremum = peCode.substring(5,6); + case 6: { + paramExtremum = peCode.substring(5, 6); } - case 5 : { - paramSource = peCode.substring(4,5); + case 5: { + paramSource = peCode.substring(4, 5); } - case 4 : { - paramType = peCode.substring(3,4); - if("Z".equals(paramType)) { + case 4: { + paramType = peCode.substring(3, 4); + if ("Z".equals(paramType)) { paramType = "R"; } } - case 3 : { - paramDuration = peCode.substring(2,3); + case 3: { + paramDuration = peCode.substring(2, 3); } - case 2 : { + case 2: { setProbability(Probability.getEnum(paramProbability)); - + setExtremum(Extremum.getEnum(paramExtremum)); - + // check to see if this is a valid typesource String key = paramType + paramSource; Integer n = ShefParm.getTypeSourceCode(key); - if((n != null) && (n == 1)) { - TypeSource ts = TypeSource.getEnum(key); + if ((n != null) && (n == 1)) { + TypeSource ts = TypeSource.getEnum(key); dataTypeCode = paramType; dataSourceCode = paramSource; - + setTypeSource(ts); } else { - + } - + Duration duration = Duration.INSTANTENOUS; - if("Z".equals(paramDuration)) { + if ("Z".equals(paramDuration)) { // Use the default duration code for this PE duration = ParameterCode.Duration.getDefault(pe); } else if ("V".equals(paramDuration)) { @@ -298,7 +307,7 @@ public class ShefData implements ISerializableObject { setPhysicalElement(pe); break; } - default : { + default: { // This is an error condition! } } @@ -318,13 +327,13 @@ public class ShefData implements ISerializableObject { /** * Set the retained comment * - * @param retainedComment + * @param comment * the retainedComment to set */ public void setRetainedComment(String comment) { - if((comment != null)&&(comment.length() == 0)) { + if ((comment != null) && (comment.length() == 0)) { comment = null; - } + } retainedComment = comment; } @@ -359,7 +368,7 @@ public class ShefData implements ISerializableObject { /** * Set the physical element * - * @param physicalElement + * @param element * the physicalElement to set */ public void setPhysicalElement(PhysicalElement element) { @@ -384,7 +393,7 @@ public class ShefData implements ISerializableObject { public void setDuration(Duration duration) { this.duration = duration; } - + /** * @return the durationValue */ @@ -393,7 +402,8 @@ public class ShefData implements ISerializableObject { } /** - * @param durationValue the durationValue to set + * @param duration + * the durationValue to set */ public void setDurationValue(Short duration) { durationValue = duration; @@ -443,17 +453,7 @@ public class ShefData implements ISerializableObject { * @return the observationTime */ public String getObservationTime() { - String retVal = null; - if (observationTime != null) { - retVal = observationTime; - } else { -// if (shefRecord.getTimeZoneCode().equalsIgnoreCase(ShefConstants.Z)) { -// retVal = "120000"; -// } else { -// retVal = "240000"; -// } - } - return retVal; + return observationTime; } /** @@ -461,10 +461,8 @@ public class ShefData implements ISerializableObject { * * @param anObservationTime * the observationTime to set - * @throws ParseException */ - public void setObservationTime(String anObservationTime) - { + public void setObservationTime(String anObservationTime) { observationTime = anObservationTime; } @@ -501,9 +499,8 @@ public class ShefData implements ISerializableObject { * * @param creationDate * the creationDate to set - * @throws ParseException */ - public void setCreationDate(String creationDate) throws ParseException { + public void setCreationDate(String creationDate) { this.creationDate = creationDate; } @@ -514,7 +511,7 @@ public class ShefData implements ISerializableObject { */ public Date getCreationDateObj() { Date retDate = null; - if(createTime != null) { + if (createTime != null) { retDate = createTime.toCalendar().getTime(); } return retDate; @@ -523,17 +520,16 @@ public class ShefData implements ISerializableObject { /** * Set the creation date Date obj * - * @param creationDateObj + * @param creationDate * the creationDateObj to set */ public void setCreationDateObj(Date creationDate) { - SHEFDate d = new SHEFDate(creationDate,SHEFTimezone.GMT_TIMEZONE); - if(d != null) { + SHEFDate d = new SHEFDate(creationDate, SHEFTimezone.GMT_TIMEZONE); + if (d != null) { createTime = d; } - creationDateObj = creationDate; } - + /** * @return the createTime */ @@ -542,10 +538,11 @@ public class ShefData implements ISerializableObject { } /** - * @param createTime the createTime to set + * @param createTime + * the createTime to set */ public void setCreateTime(SHEFDate createTime) { - if(createTime != null) { + if (createTime != null) { this.createTime = new SHEFDate(createTime); } } @@ -576,7 +573,7 @@ public class ShefData implements ISerializableObject { */ public Date getObservationTimeObj() { Date retDate = null; - if(obsTime != null) { + if (obsTime != null) { retDate = obsTime.toCalendar().getTime(); } return retDate; @@ -585,27 +582,26 @@ public class ShefData implements ISerializableObject { /** * Set the observation time Date object * - * @param observationTimeObj + * @param observationTime * the observationTimeObj to set */ public void setObservationTimeObj(Date observationTime) { - SHEFDate d = new SHEFDate(observationTime,SHEFTimezone.GMT_TIMEZONE); - if(d != null) { + SHEFDate d = new SHEFDate(observationTime, SHEFTimezone.GMT_TIMEZONE); + if (d != null) { obsTime = d; } - observationTimeObj = observationTime; } public void setObsTime(SHEFDate date) { - if(date != null) { + if (date != null) { obsTime = new SHEFDate(date); } } - + public SHEFDate getObsTime() { return obsTime; } - + /** * @return the typeSource */ @@ -620,7 +616,7 @@ public class ShefData implements ISerializableObject { public void setTypeSource(ParameterCode.TypeSource typeSource) { this.typeSource = typeSource; } - + /** * @return the revisedRecord */ @@ -629,7 +625,8 @@ public class ShefData implements ISerializableObject { } /** - * @param revisedRecord the revisedRecord to set + * @param revisedRecord + * the revisedRecord to set */ public void setRevisedRecord(boolean revisedRecord) { this.revisedRecord = revisedRecord; @@ -643,8 +640,8 @@ public class ShefData implements ISerializableObject { */ public int fixupDuration(Short durationValue) { int errorCode = 0; - if(duration != null) { - if(Duration.VARIABLE_PERIOD.equals(duration)) { + if (duration != null) { + if (Duration.VARIABLE_PERIOD.equals(duration)) { if (durationValue != null) { setDurationValue(durationValue); } else { @@ -659,63 +656,55 @@ public class ShefData implements ISerializableObject { return errorCode; } - /** * Processes all internal data so that it is ready for PostSHEF. - * 1. All dates converted to UTC. - * 2. All data values converted to their English equivalent. + * + *
+     * 1. All dates converted to UTC. 
+     * 2. All data values converted to their English equivalent. 
      * 3. Ensure that all "defaults" are set correctly for output.
+     * 
*/ public void toPostData() { - if("S".equals(unitsCode)) { - if(physicalElement != null) { + if ("S".equals(unitsCode)) { + if (physicalElement != null) { String key = physicalElement.getCode(); - Double cf = ShefParm.getPhysicalElementConversionFactor(key); - Double n = doConversion(physicalElement,unitsCode,value); - if(n == null) { - if(cf != null) { + Double cf = ShefParm.getPhysicalElementConversionFactor(key); + Double n = doConversion(physicalElement, unitsCode, value); + if (n == null) { + if (cf != null) { value *= cf; } } else { value = n; } - stringValue = String.format("%f",value); + stringValue = String.format("%f", value); unitsCode = "E"; } } - if(createTime != null) { + if (createTime != null) { createTime.toZuluDate(); } - if(obsTime != null) { + if (obsTime != null) { obsTime.toZuluDate(); } - switch(getPhysicalElement()) { - case PRECIPITATION_ACCUMULATOR : - case PRECIPITATION_INCREMENT : - case PRECIPITATION_INCREMENT_DAILY : { - if(getValue() >= 0) { + switch (getPhysicalElement()) { + case PRECIPITATION_ACCUMULATOR: + case PRECIPITATION_INCREMENT: + case PRECIPITATION_INCREMENT_DAILY: { + if (getValue() >= 0) { String val = getStringValue(); // Is there a decimal point in the value? - if(val.indexOf('.') < 0) { + if (val.indexOf('.') < 0) { double value = getValue() / 100.0; - setStringValue(String.format("%.3f",value)); + setStringValue(String.format("%.3f", value)); } } break; } } -// if(Duration.DEFAULT.equals(getDuration())) { -// // Check default durations -// Duration defaultDuration = Duration.getDefault(getPhysicalElement()); -// if(defaultDuration == null) { -// defaultDuration = Duration.INSTANTENOUS; -// } -// setDuration(defaultDuration); -// setDurationValue((short) getDuration().getValue()); -// setDurationCodeVariable(getDuration().getCode()); -// } } - + /** * * @param divisor @@ -723,26 +712,26 @@ public class ShefData implements ISerializableObject { * @param multiplier * @param adder */ - public void adjustValue(double divisor, double base, double multiplier, double adder) { + public void adjustValue(double divisor, double base, double multiplier, + double adder) { double adjustedValue = Double.parseDouble(stringValue); - adjustedValue = (adjustedValue / divisor + base) - * multiplier + adder; + adjustedValue = (adjustedValue / divisor + base) * multiplier + adder; value = adjustedValue; stringValue = String.valueOf(adjustedValue); } public StringBuilder toString(StringBuilder receiver) { - if(receiver == null) { + if (receiver == null) { receiver = new StringBuilder(); } - receiver.append(String.format("%-8s",locationId)); - if(obsTime != null) { + receiver.append(String.format("%-8s", locationId)); + if (obsTime != null) { receiver.append(obsTime.toOutString()); } else { receiver.append(" 0 0 0 0 0 0"); } receiver.append(" "); - if(createTime != null) { + if (createTime != null) { receiver.append(createTime.toOutString()); } else { receiver.append(" 0 0 0 0 0 0"); @@ -752,7 +741,7 @@ public class ShefData implements ISerializableObject { receiver.append(physicalElement.getCode()); receiver.append(" "); // Type Code - if(TypeSource.UNKNOWN.equals(typeSource)) { + if (TypeSource.UNKNOWN.equals(typeSource)) { receiver.append(" "); } else { receiver.append(dataTypeCode); @@ -762,46 +751,48 @@ public class ShefData implements ISerializableObject { // Extremnum receiver.append(extremum.getCode()); // Data Value - if(value != null) { + if (value != null) { receiver.append(String.format("%10.3f", value)); } else { - receiver.append(String.format("%10s",ShefConstants.SHEF_MISSING)); + receiver.append(String.format("%10s", ShefConstants.SHEF_MISSING)); } receiver.append(" "); // Data Qualifier receiver.append((qualifier != null) ? qualifier : " "); - if(probability != null) { + if (probability != null) { Double p = probability.getValue(); - receiver.append(String.format("%6.2f",p)); + receiver.append(String.format("%6.2f", p)); } else { receiver.append(" "); } - - if(durationValue != null) { - receiver.append(String.format("%5d",durationValue)); + + if (durationValue != null) { + receiver.append(String.format("%5d", durationValue)); } else { - receiver.append(String.format("%5d",0)); + receiver.append(String.format("%5d", 0)); } // Revision code receiver.append((revisedRecord) ? " 1" : " 0"); receiver.append(" "); // Data source - receiver.append(String.format("%-8s",(dataSource != null) ? dataSource : " ")); + receiver.append(String.format("%-8s", (dataSource != null) ? dataSource + : " ")); receiver.append(" "); // Time series indicator - receiver.append(String.format("%3d",timeSeriesId)); + receiver.append(String.format("%3d", timeSeriesId)); receiver.append(" "); // Full Parameter code - receiver.append(String.format("%-7s",parameterCodeString)); + receiver.append(String.format("%-7s", parameterCodeString)); receiver.append(" "); - // Unused - receiver.append(String.format("%8s"," ")); + // Unused + receiver.append(String.format("%8s", " ")); receiver.append(" "); - if(retainedComment != null) { + if (retainedComment != null) { receiver.append(retainedComment); } return receiver; } + /** * Human readable output of data stored in this object */ @@ -810,49 +801,66 @@ public class ShefData implements ISerializableObject { StringBuilder sb = new StringBuilder(); return toString(sb).toString(); } - + /** * The data's PETSEP. + * * @return */ - public String getPeTsE() { + public String getPeDTsE() { StringBuilder sb = new StringBuilder(); sb.append(this.getPhysicalElement().getCode()); sb.append(this.getTypeSource().getCode()); sb.append(this.getExtremum().getCode()); + sb.append(this.getDurationCodeVariable()); return sb.toString(); } - + /** + * Get the ingest filter table primary key value for this data object. + * + * @return The primary key object + */ + public IngestfilterId getIngestFilterKey() { + IngestfilterId id = new IngestfilterId(); + id.setLid(this.getLocationId()); + id.setDur(this.getDurationValue()); + id.setExtremum(this.getExtremum().getCode()); + id.setPe(this.getPhysicalElement().getCode()); + id.setTs(this.getTypeSource().getCode()); + return id; + } + /** * * @param element * @param unitCode * @param dValue - * @return The converted value or null to indicate no conversion took place. + * @return The converted value or null to indicate no conversion took place. */ - private Double doConversion(PhysicalElement element, String unitCode, Double dValue) { - if(dValue != null) { - if(element != null) { - switch(element) { - case TEMPERATURE_AIR_DRY : - case TEMPERATURE_COOLING : - case TEMPERATURE_DEW : - case TEMPERATURE_FREEZING : - case TEMPERATURE_HEATING : - case TEMPERATURE_AIR_WET : - case TEMPERATURE_AIR_MINIMUM : - case TEMPERATURE_PAN_WATER : - case TEMPERATURE_ROAD_SURFACE : - case TEMPERATURE_WATER : - case TEMPERATURE_AIR_MAXIMUM : - case TEMPERATURE_FREEZING_SURFACE : { - if("S".equals(unitCode)) { + private Double doConversion(PhysicalElement element, String unitCode, + Double dValue) { + if (dValue != null) { + if (element != null) { + switch (element) { + case TEMPERATURE_AIR_DRY: + case TEMPERATURE_COOLING: + case TEMPERATURE_DEW: + case TEMPERATURE_FREEZING: + case TEMPERATURE_HEATING: + case TEMPERATURE_AIR_WET: + case TEMPERATURE_AIR_MINIMUM: + case TEMPERATURE_PAN_WATER: + case TEMPERATURE_ROAD_SURFACE: + case TEMPERATURE_WATER: + case TEMPERATURE_AIR_MAXIMUM: + case TEMPERATURE_FREEZING_SURFACE: { + if ("S".equals(unitCode)) { dValue = ((value * 9.0) / 5.0) + 32; } break; } - default : { + default: { dValue = null; } } @@ -865,38 +873,34 @@ public class ShefData implements ISerializableObject { * * @param args */ - public static final void main(String [] args) { - -// ShefData d = new ShefData(); -// -// d.setParameterCodeString("AD","Z"); -// -// System.out.println(d); -// -// double dv = 0.04; -// -// System.out.println(String.format("[%.3f]",dv)); -// - + public static final void main(String[] args) { + + // ShefData d = new ShefData(); + // + // d.setParameterCodeString("AD","Z"); + // + // System.out.println(d); + // + // double dv = 0.04; + // + // System.out.println(String.format("[%.3f]",dv)); + // + double adjustedValue = 10; double divisor = 1; double base = 0; double multiplier = 1000; double adder = 0; - + double n = (adjustedValue / divisor + base) * multiplier + adder; - + System.out.println(n); - + Pattern Q_CODES = Pattern.compile("Q[^BEF]"); Matcher m = Q_CODES.matcher("QI"); - if(m.matches()) { + if (m.matches()) { System.out.println("found"); } - - - + } - - } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefRecord.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefRecord.java index c0b0419c08..34d543b0ad 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefRecord.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/data/ShefRecord.java @@ -36,9 +36,7 @@ import javax.xml.bind.annotation.XmlAccessorType; import com.raytheon.edex.plugin.shef.util.SHEFDate; import com.raytheon.edex.plugin.shef.util.ShefUtil; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode; import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; @@ -47,15 +45,17 @@ import com.raytheon.uf.common.time.DataTime; /** *
  * SOFTWARE HISTORY
- * Date         Ticket#     Engineer    Description
- * ------------ ----------  ----------- --------------------------
- * June2006     314         Phillippe   Initial Creation.
- * Nov 29, 2007 472         jkorman     Added IDecoderGettable interface.
- * Mar 19, 2008 387         M. Duff     Modified to store SHEF data.
- * May 07, 2013 1869        bsteffen    Remove dataURI column from
- *                                      PluginDataObject.
- * Aug 30, 2013 2298        rjpeter     Make getPluginName abstract
- * 
+ * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Jun ??, 2006 314 Phillippe Initial Creation. + * Nov 29, 2007 472 jkorman Added IDecoderGettable interface. + * Mar 19, 2008 387 M. Duff Modified to store SHEF data. + * May 07, 2013 1869 bsteffen Remove dataURI column from + * PluginDataObject. + * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable + * + * * @author bphillip * @version 1 @@ -129,9 +129,6 @@ public class ShefRecord extends PluginDataObject { @Transient private SHEFDate createDate = null; - @Transient - private final int durationValue = ParameterCode.Duration.DEFAULT.getValue(); - /** * Empty constructor */ @@ -550,17 +547,6 @@ public class ShefRecord extends PluginDataObject { messageSource = msgSrc; } - /** - * Get the IDecoderGettable reference for this record. - * - * @return The IDecoderGettable reference for this record. Null for this - * class. - */ - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - @Override public String toString() { StringBuilder sb = new StringBuilder(); diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostShef.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostShef.java index e4dd5ccf43..7b9bbceecf 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostShef.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostShef.java @@ -23,10 +23,13 @@ import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.Calendar; +import java.util.Collections; import java.util.Date; import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.TimeZone; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -36,8 +39,9 @@ import org.apache.commons.logging.LogFactory; import com.raytheon.edex.plugin.shef.data.ShefData; import com.raytheon.edex.plugin.shef.data.ShefRecord; +import com.raytheon.edex.plugin.shef.data.ShefRecord.ShefType; import com.raytheon.edex.plugin.shef.util.BitUtils; -import com.raytheon.edex.plugin.shef.util.SHEFDate; +import com.raytheon.edex.plugin.shef.util.ShefAdjustFactor; import com.raytheon.edex.plugin.shef.util.ShefStats; import com.raytheon.edex.plugin.shef.util.ShefUtil; import com.raytheon.edex.plugin.shef.util.StoreDisposition; @@ -78,6 +82,9 @@ import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants.IngestSwitch; import com.raytheon.uf.common.dataplugin.shef.util.ShefQC; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; import com.raytheon.uf.edex.decodertools.time.TimeTools; @@ -89,7 +96,7 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * 04/21/2008 387 M. Duff Initial Version. + * 04/21/2008 387 M. Duff Initial Version. * 06/02/2008 1166 M. Duff Added checks for null data objects. * 22Jul2008 1277 MW Fegan Use CoreDao in checkIngest(). * 10/16/2008 1548 jelkins Integrated ParameterCode Types and misc fixes @@ -109,8 +116,21 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * 04/05/2013 16036 w. kwock Fixed no ts=RZ in ingestfilter table but posted to height table * 10/28/2013 16711 lbousaidi if the id is not in location table,but defined in geoarea table * data can be posted to appropriate pe-based tables only if the data - * type is not READING like in A1 code. - * + * type is not READING like in A1 code. + * 02/18/2014 16572 l. Bousaidi only apply adjust factor to non missing values. + * 04/24/2014 16904 lbousaidi gross check should be applied to adjusted value. + * 04/29/2014 3088 mpduff Change logging class, clean up/optimization. + * Updated with more performance fixes. + * May 14, 2014 2536 bclement removed TimeTools usage + * 05/28/2014 3222 mpduff Fix posting time to be processed time so db doesn't show all post times the same + * 06/02/2014 mpduff Fix for caching of range checks. + * 06/26/2014 3321 mpduff Fix ingestSwitchMap checks + * 07/10/2014 3370 mpduff Fix update/insert issue for riverstatus + * 07/14/2014 mpduff Fix data range checks + * 08/05/2014 15671 snaples Fixed check for posting when not found in ingestfilter and token is set for load_shef_ingest + * 09/03/2014 mpduff Fixed river status table updates. + * 09/12/2014 mpduff Fix for shef_load_ingest token + * 09/18/2014 3627 mapeters Updated deprecated {@link TimeTools} usage. * * * @author mduff @@ -118,7 +138,8 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; */ public class PostShef { /** The logger */ - private final Log log = LogFactory.getLog(getClass()); + private static final IUFStatusHandler log = UFStatus + .getHandler(PostShef.class); /** * Location Enum @@ -134,87 +155,156 @@ public class PostShef { QC_DEFAULT, QC_GROSSRANGE_FAILED, QC_REASONRANGE_FAILED, QC_ROC_FAILED, QC_ROC_PASSED, QC_OUTLIER_FAILED, QC_OUTLIER_PASSED, QC_SCC_FAILED, QC_SCC_PASSED, QC_MSC_FAILED, QC_MSC_PASSED, QC_EXTERN_FAILED, QC_EXTERN_QUEST, QC_MANUAL_PASSED, QC_MANUAL_QUEST, QC_MANUAL_FAILED, QC_MANUAL_NEW, QC_PASSED, QC_QUESTIONABLE, QC_FAILED, QC_NOT_PASSED, QC_NOT_FAILED }; - private static final SimpleDateFormat DB_TIMESTAMP = new SimpleDateFormat(ShefConstants.POSTGRES_DATE_FORMAT.toPattern()); - static { - DB_TIMESTAMP.setTimeZone(TimeZone.getTimeZone(ShefConstants.GMT)); - } - + /** Log entry separator */ + private static final String LOG_SEP = "========================================"; + + /** Q code pattern */ private static final Pattern Q_CODES = Pattern.compile("Q[^BEF]"); - - private static final String POST_START_MSG = "Posting process started for LID [%s] PEDTSEP [%s] value [%s]"; - - private static final String LOV_POST_MSG = "Data [%s] ObsTime[%s] for LID [%s] posted to the latestObsValue for PE [%s]"; - + + /** Constant for ON */ private static final String SHEF_ON = "ON"; - private String prevLid = null; + private static final int MISSING = -999; - private String prevProdId = null; + /** Questionable/bad threshold value */ + private static final int QUESTIONABLE_BAD_THRESHOLD = 1073741824; - private Date prevProdTime = null; + /** Map of value to duration character */ + private static final Map DURATION_MAP; + /** The time this class is created and the shef file is processed. */ + private final long currentTime = System.currentTimeMillis(); + + static { + DURATION_MAP = Collections.unmodifiableMap(buildDurationMap()); + } + + /** Thread safe database date formatter */ + private ThreadLocal dbFormat = new ThreadLocal() { + @Override + protected SimpleDateFormat initialValue() { + SimpleDateFormat sdf = new SimpleDateFormat( + ShefConstants.POSTGRES_DATE_STRING); + sdf.setTimeZone(TimeZone.getTimeZone("GMT")); + return sdf; + } + }; + + /** Instance of DAO object */ + private CoreDao dao; + + /** SHEF product id */ private String prodId = null; + /** SHEF product time */ private Date prodTime = null; + /** db posting time */ private Date postDate; + /** SHEF data record */ private ShefRecord shefRecord = null; + /** SHEF decoder statistics object */ private final ShefStats stats = new ShefStats(); + /** SHEF alert/alarm value */ private int alertAlarm = ShefConstants.NO_ALERTALARM; + /** AppsDefaults instance */ private AppsDefaults appDefaults = AppsDefaults.getInstance(); - private boolean isHoursLoad = false; - - private long obshrs = 72; - - private long fcsthrs = 72; - + /** Default basis hrs */ private long basishrs = 72; + /** Map of location identifiers to Location Objects */ + private HashMap idLocations = new HashMap(); + + /** number of milliseconds back for data to be considered valid */ + private long lookbackMillis; + + /** number of milliseconds forward for data to be considered valid */ + private int lookfwdMillis; + + /** Location DAO object */ + private CoreDao locDao; + + /** Instance of PostTables class */ + private PostTables postTables; + + /** Map of adjustment factors for eacy data type */ + private Map adjustmentMap = new HashMap(); + + /** Map of location identifier to IngestSwitch */ + private Map ingestSwitchMap = new HashMap(); + // AppsDefaults tokens - private String undefStation = ShefConstants.NONE; + private String undefStation; private String shefPostDuplicate = null; - private String shefPostDuplicateDef = "IF_DIFFERENT"; + private String shefPostDuplicateDef; - private boolean shefAlertAlarm = false; + private boolean shefAlertAlarm; - private boolean locMess = false; + private boolean locMess; - private int lookBackDays = 10; + private int lookBackDays; - private int lookAheadMinutes = 30; + private int lookAheadMinutes; - private boolean postLink = false; + private boolean postLink; private String postLatest = ""; - private boolean loadMaxFcst = false; + private boolean loadMaxFcst; - private boolean postBadData = false; + private boolean postBadData; - private String basis_hours_str = null; + private boolean loadIngest; - private boolean elgMess = false; + private boolean procObs; - private boolean loadIngest = false; + private boolean dataLog; - private boolean ingestMess = false; + private boolean perfLog; - private boolean procObs = false; + /** Type Source list */ + private List tsList = new ArrayList(); - private boolean dataLog = false; + /** Use latest value flag */ + private int useLatest = MISSING; - private boolean perfLog = false; + /** Begin basis time */ + private long basisBeginTime = currentTime + - (basishrs * ShefConstants.MILLIS_PER_HOUR); - private boolean archiveMode = false; - - private HashMap idLocations = new HashMap(); + /** Basis time TimeStamp */ + private java.sql.Timestamp basisTimeAnsi = new Timestamp(basisBeginTime); + + /** river status update query value */ + private boolean riverStatusUpdateValueFlag; + + /** Quality check flag, true to query for quality values */ + private boolean qualityCheckFlag = true; + + /** Type Source to use */ + private String useTs = null; + + /** basis time values from query */ + private Object[] basisTimeValues = null; + + /** Previous forecast query */ + private String previousQueryForecast; + + /** Forecast query results */ + private Object[] queryForecastResults; + + /** Cache of data limits and loc data limits */ + private Map dataRangeMap = new HashMap(); + + /** Valid date range flag */ + private boolean validDateRange = false; /** * @@ -223,7 +313,9 @@ public class PostShef { public PostShef(Date date) { postDate = date; getAppsDefaults(); - PostTables.PostTablesInit(); + createConnection(); + postTables = new PostTables(); + calculateConstants(); } private void getAppsDefaults() { @@ -233,7 +325,7 @@ public class PostShef { shefPostDuplicate = appDefaults.getToken(ShefConstants.SHEF_DUPLICATE); shefPostDuplicateDef = appDefaults.getToken( - ShefConstants.SHEF_DUPLICATE, "IF_DIFFERENT"); + ShefConstants.SHEF_DUPLICATE, ShefConstants.IF_DIFFERENT); shefAlertAlarm = appDefaults.getBoolean(ShefConstants.SHEF_ALERTALARM, false); @@ -252,23 +344,64 @@ public class PostShef { postBadData = appDefaults.getToken(ShefConstants.SHEF_POST_BADDATA, "REJECT").equalsIgnoreCase("REJECT"); - basis_hours_str = appDefaults + String basis_hours_str = appDefaults .getToken(ShefConstants.BASIS_HOURS_FILTER); - - elgMess = appDefaults.getBoolean(ShefConstants.ELGMESS, false); + try { + if (basis_hours_str != null) { + basishrs = Integer.parseInt(basis_hours_str); + } + } catch (NumberFormatException e) { + log.info(ShefConstants.BASIS_HOURS_FILTER + + " not set, using default value of 72"); + } loadIngest = appDefaults.getBoolean(ShefConstants.SHEF_LOAD_INGEST, false); - ingestMess = appDefaults.getBoolean(ShefConstants.INGEST_MESS, false); - procObs = appDefaults.getBoolean(ShefConstants.SHEF_PROCOBS, false); dataLog = appDefaults.getBoolean(ShefConstants.SHEF_DATA_LOG, false); // TODO need to implement this token and the performance logging perfLog = appDefaults.getBoolean(ShefConstants.SHEF_PERFLOG, false); - - archiveMode = appDefaults.getBoolean("ALLOW_ARCHIVE_DATA",false); + } + + private void calculateConstants() { + lookbackMillis = lookBackDays * ShefConstants.MILLIS_PER_DAY; + lookfwdMillis = lookAheadMinutes * ShefConstants.MILLIS_PER_MINUTE; + } + + private static Map buildDurationMap() { + Map map = new HashMap(); + map.put(0, "I"); + map.put(1, "U"); + map.put(5, "E"); + map.put(10, "G"); + map.put(15, "C"); + map.put(30, "J"); + map.put(1001, "H"); + map.put(1002, "B"); + map.put(1003, "T"); + map.put(1004, "F"); + map.put(1006, "Q"); + map.put(1008, "A"); + map.put(1012, "K"); + map.put(1018, "L"); + map.put(2001, "D"); + map.put(2007, "W"); + map.put(3001, "M"); + map.put(4001, "Y"); + map.put(5004, "P"); + map.put(5000, "Z"); + map.put(5001, "S"); + map.put(5002, "R"); + map.put(5005, "X"); + return map; + } + + private void createConnection() { + dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); + locDao = new CoreDao(DaoConfig.forClass(ShefConstants.IHFS, + com.raytheon.uf.common.dataplugin.shef.tables.Location.class)); } /** @@ -290,20 +423,12 @@ public class PostShef { * - The ShefRecord object containing all the data */ public void post(ShefRecord shefRecord) { - - if (log.isDebugEnabled()) { - log.debug("PostShef.post() called..."); - } this.shefRecord = shefRecord; /* Make sure we have data, else return */ if (shefRecord == null) { log.info("Not Posted:Report is null"); return; - } else { - if (log.isDebugEnabled()) { - log.debug("ShefRecord = " + shefRecord); - } } List dataValues = shefRecord.getDataValues(); @@ -312,677 +437,676 @@ public class PostShef { log.info("Not Posted:No data records in decoded data"); return; } - + long start; long end; String identifier = shefRecord.getIdentifier(); - if(identifier == null) { + if (identifier == null) { identifier = "MSGPRODID"; } prodId = identifier; - // /* Build the text product */ - // storeTextProduct(); - String locId = shefRecord.getLocationId(); prodTime = shefRecord.getProductTime(); - if (ShefRecord.ShefType.B.equals(shefRecord.getShefType())) { - String locateId = null; - // need to handle bType for bad data-- loop through it - // for (ShefData data : dataValues) { - // locateId = data.getLocationId(); - // log.info("Posting process started for shefrecord " + locateId); - // } - } else if ((locId == null) || (dataValues == null)) { + if ((locId == null) || (dataValues == null)) { // Check for bad data log.warn("No data stored for " + prodId); return; } - prevLid = locId; - /* - * check to see whether this location should be posted. it checks if the - * "location" is defined in the location table; also allow for - * "locations" (i.e. areas) to be defined in the GeoArea table. this if - * for data for counties, basins, etc. - */ - prevLid = null; - Location postLocData = null; - for (ShefData data : dataValues) { + try { - boolean same_lid_product = false; - - String dataValue = data.getStringValue(); - - if (ShefConstants.SHEF_SKIPPED.equals(dataValue)) { - continue; - } else if (ShefConstants.SHEF_MISSING_DEC.equals(dataValue)) { - dataValue = ShefConstants.SHEF_MISSING; - } - - // Per A1 code - set the creation date to Date(0) if missing. - Date basis = data.getCreationDateObj(); - if(basis == null) { - Date d = new Date(0); - SimpleDateFormat sdf = new SimpleDateFormat(ShefConstants.POSTGRES_DATE_STRING); - sdf.setTimeZone(TimeZone.getTimeZone("Zulu")); - data.setCreationDateObj(d); - try { - data.setCreationDate("1970-01-01 00:00:00"); - } catch (ParseException e) { - // Nothing - will not happen! - } - } - - locId = data.getLocationId(); - - String key = String.format("%s%s%s", locId, prodId, - data.getObservationTime()); - if (idLocations.containsKey(key)) { - postLocData = idLocations.get(key); - same_lid_product = true; - } else { - postLocData = checkLocation(data.getLocationId()); - idLocations.put(key, postLocData); - same_lid_product = false; - } - - log.info("========================================"); - - log.info(String.format(POST_START_MSG, locId, data.getPeTsE(), dataValue)); - /* - * determine the type of data this is, based on the type-source - * code. areal data is separated from the point data. note that - * processed data can be labeled as observed data!!! also note that - * any type-sources which are not R,F, or C are assumed to be - * processed. This includes the numbered type-source codes. + * check to see whether this location should be posted. it checks if + * the "location" is defined in the location table; also allow for + * "locations" (i.e. areas) to be defined in the GeoArea table. this + * if for data for counties, basins, etc. */ - String dataQualifier = data.getQualifier(); - TypeSource typeSource = data.getTypeSource(); + Location postLocData = null; + for (ShefData data : dataValues) { + if (data.getObsTime() == null) { + log.error(data.toString()); + log.error("Not posted:Record does not contain an observation time"); + return; + } - if (typeSource != null) { - if (TypeSource.UNKNOWN.equals(typeSource)) { + postDate.setTime(getToNearestSecond(TimeUtil + .currentTimeMillis())); + boolean same_lid_product = false; + + String dataValue = data.getStringValue(); + + if (ShefConstants.SHEF_SKIPPED.equals(dataValue)) { + continue; + } else if (ShefConstants.SHEF_MISSING_DEC.equals(dataValue)) { + dataValue = ShefConstants.SHEF_MISSING; + } + + // Per A1 code - set the creation date to Date(0) if missing. + Date basis = data.getCreationDateObj(); + if (basis == null) { + Date d = new Date(0); + data.setCreationDateObj(d); + data.setCreationDate("1970-01-01 00:00:00"); + } + + locId = data.getLocationId(); + String key = locId + prodId + data.getObservationTime(); + if (idLocations.containsKey(key)) { + postLocData = idLocations.get(key); + same_lid_product = true; + } else { + postLocData = checkLocation(data.getLocationId()); + idLocations.put(key, postLocData); + same_lid_product = false; + } + + if (dataLog) { + log.info(LOG_SEP); + log.info("Posting process started for LID [" + locId + + "] PEDTSEP [" + data.getPeDTsE() + "] value [" + + dataValue + "]"); + } + + /* + * determine the type of data this is, based on the type-source + * code. areal data is separated from the point data. note that + * processed data can be labeled as observed data!!! also note + * that any type-sources which are not R,F, or C are assumed to + * be processed. This includes the numbered type-source codes. + */ + String dataQualifier = data.getQualifier(); + TypeSource typeSource = data.getTypeSource(); + + if (typeSource == null || typeSource == TypeSource.UNKNOWN) { log.error("Unknown typesource code in data [" + data + "]"); continue; } - } else { - log.error("Unknown typesource code in data [" + data + "]"); - continue; - } - // Don't use the TypeSource directly because there are some cases - // where the "type" defaults. - DataType dataType = ParameterCode.DataType.getDataType(typeSource,procObs); + // Don't use the TypeSource directly because there are some + // cases + // where the "type" defaults. + DataType dataType = ParameterCode.DataType.getDataType( + typeSource, procObs); - if (log.isDebugEnabled()) { - log.debug("DataType = " + dataType); - } - - /* - * if the station_id exists in location table and - * the data type is READING then the data doesn't get posted - * to the appropriate pe-based tables to match A1 logic. - * DR16711 - */ - - if ((DataType.READING.equals(dataType)) - &&(Location.LOC_GEOAREA.equals(postLocData))) { - postLocData=Location.LOC_UNDEFINED; - } - - SHEFDate d = data.getObsTime(); - if (d == null) { - log.error(data); - log.error("Not posted:Record does not contain an observation time"); - return; - } - Date obsTime = d.toCalendar().getTime(); - Date createTime = null; - if (data.getCreateTime() != null) { - createTime = data.getCreateTime().toCalendar().getTime(); - } - - /* - * if location not defined, issue message and save the data if - * appropriate. now dispense of the unknown data in the appropriate - * manner. note for unknown data, any comments specified are not - * stored. also note, for unknown station data, don't bother posting - * if the data has not changed. - */ - StoreDisposition disposition = StoreDisposition.NONE; - if (Location.LOC_UNDEFINED.equals(postLocData)) { - // Do logging here - if (locMess && !same_lid_product) { - String sMsg = null; - if (ShefConstants.NONE.equalsIgnoreCase(undefStation)) { - sMsg = String.format("LID [%s] not defined; no data posted", locId); - } else if ("IDS_ONLY".equalsIgnoreCase(undefStation)) { - sMsg = String.format("LID [%s] not defined; ; station info posting to UnkStn", locId); - } else if ("IDS_AND_DATA".equalsIgnoreCase(undefStation)) { - sMsg = String.format("LID [%s] not defined; ; data posting to UnkStnValue", locId); - } - if(sMsg != null) { - log.info(sMsg); - } - } - - // Only post an unknown once! - if ("IDS_ONLY".equalsIgnoreCase(undefStation)) { - if (!same_lid_product) { - Unkstn unknown = new Unkstn(); - unknown.setIdentifier(identifier); - unknown.setLid(locId); - unknown.setPostingtime(postDate); - unknown.setProductId(prodId); - unknown.setProducttime(prodTime); - unknown.setTraceId(shefRecord.getTraceId()); - start = System.currentTimeMillis(); - PostTables.postUnknownStation(unknown, stats); - end = System.currentTimeMillis(); - stats.addElapsedTimeUnknown(end - start); - disposition = StoreDisposition.UKN_STN_POSTING; - } else { - disposition = StoreDisposition.UKN_STN_POSTED; - } - } else if ("IDS_AND_DATA".equalsIgnoreCase(undefStation)) { - stats.incrementUnknownStation(); - PersistableDataObject unknstnvalue = populateDataObj( - shefRecord, data, locId, - ShefConstants.UNKNOWN_STATION_VALUE, dataValue, - dataQualifier, 0); - - start = System.currentTimeMillis(); - PostTables.postData(unknstnvalue, - ShefConstants.UNKNOWN_STATION_VALUE, - shefPostDuplicateDef, stats); - end = System.currentTimeMillis(); - stats.addElapsedTimeUnknown(end - start); - disposition = StoreDisposition.UKN_STN_VALUE; - } - stats.incrementWarningMessages(); - } else if (Location.LOC_NO_POST.equals(postLocData)) { - stats.incrementNoPost(); - // if the location is defined but was set to not post, then - // write message indicating this, if one hasn't been written - // already - if (locMess && !same_lid_product) { - log.info(String.format("Station [%s] is inactive", locId)); - } - disposition = StoreDisposition.INACTIVE_LID; - } - - /* - * check if an lid-PEDTSE entry exists in the IngestFilter. this - * function can self-populate the IngestFilter table; if not in - * self-populate mode, then an error message is issued if there is - * no entry in the IngestFilter table and the data will not be - * posted. - */ - ShefConstants.IngestSwitch ingestSwitch = ShefConstants.IngestSwitch.POST_PE_ONLY; - if (Location.LOC_LOCATION.equals(postLocData) - || (Location.LOC_GEOAREA.equals(postLocData))) { - if (!DataType.CONTINGENCY.equals(dataType)) { - ingestSwitch = checkIngest(locId, data, ingestSwitch); - } - if (ShefConstants.IngestSwitch.POST_PE_OFF.equals(ingestSwitch)) { - stats.incrementNoPost(); - } - } - - /* - * if the location data should not be posted because either: 1) the - * location is not defined as a location or an area, or because the - * location post switch is off, or 2) the PEDTSE ingest switch is - * turned off; then no need to continue - */ - - boolean t2 = ShefConstants.IngestSwitch.POST_PE_OFF - .equals(ingestSwitch); - - if ((!Location.LOC_LOCATION.equals(postLocData) && !Location.LOC_GEOAREA - .equals(postLocData)) || t2) { /* - * set the prev info for the next pass through this function. - * this is info is used for to prevent redundant messages + * if the station_id exists in location table and the data type + * is READING then the data doesn't get posted to the + * appropriate pe-based tables to match A1 logic. DR16711 */ - prevLid = locId; - prevProdId = identifier; - prevProdTime = prodTime; - String unkmsg = null; - switch (disposition) { - case UKN_STN_POSTING : { - unkmsg = String.format("Posting LID [%s] to [unkstn]", locId); - break; + if ((DataType.READING.equals(dataType)) + && (Location.LOC_GEOAREA.equals(postLocData))) { + postLocData = Location.LOC_UNDEFINED; } - case UKN_STN_POSTED : { - unkmsg = String.format("LID [%s] already posted to [unkstn]", locId); - break; - } - case UKN_STN_VALUE : { - unkmsg = String.format("Posting LID [%s] data [%s] to [unkstnvalue]", locId, dataValue); - break; - } - case INACTIVE_LID : - unkmsg = String.format("Not posting data [%s] for inactive LID [%s]", dataValue, locId); - break; - default : { - unkmsg = String.format("Not posting data [%s] for LID [%s]", dataValue, locId); - break; - } - } - log.warn(unkmsg); - stats.incrementWarningMessages(); - continue; - } - /*---------------------------------------------------------------------*/ - /* - * check for observed data too far in past or future if data is - * outside of this time window, then do not post. skip this check if - * data is monthly data - */ - - if (DataType.READING.equals(dataType) - || TypeSource.PROCESSED_MEAN_AREAL_DATA.equals(typeSource)) { - - long lookbackMillis = lookBackDays - * ShefConstants.MILLIS_PER_DAY; - - long lookfwdMillis = lookAheadMinutes - * ShefConstants.MILLIS_PER_MINUTE; - - if ((postDate.getTime() - obsTime.getTime() > lookbackMillis) - && (!Duration._1_MONTH.equals(data.getDuration()))) { - stats.incrementWarningMessages(); - stats.incrementOutsideWindow(); - log.warn(locId + " " + data.getObsTime() + " obs time > " - + lookBackDays + " days old; data not posted"); - continue; - } else if (obsTime.getTime() - postDate.getTime() > lookfwdMillis) { - stats.incrementWarningMessages(); - stats.incrementOutsideWindow(); - log.warn(locId + " obs time (" + data.getObsTime() + ") >" - + " post time (" + postDate + "); " - + lookAheadMinutes - + " minutes in the future; data not posted"); - continue; - } - } - if (log.isDebugEnabled()) { - log.debug("Data in the window"); - } - /* - * check for forecast basis times that are after the valid time, - * issue a warning message if this is the case - basis time is the - * creation date and valid time is the obs time - */ - if (DataType.FORECAST.equals(dataType) - || TypeSource.FORECAST_MEAN_AREAL_DATA.equals(typeSource)) { - - if (createTime == null) { - // stats.incrementWarning Messages(); - if (log.isDebugEnabled()) { - log.debug("Creation date not present."); + /* + * if location not defined, issue message and save the data if + * appropriate. now dispense of the unknown data in the + * appropriate manner. note for unknown data, any comments + * specified are not stored. also note, for unknown station + * data, don't bother posting if the data has not changed. + */ + StoreDisposition disposition = StoreDisposition.NONE; + if (Location.LOC_UNDEFINED.equals(postLocData)) { + // Do logging here + if (locMess && !same_lid_product) { + StringBuilder sMsg = new StringBuilder(); + if (ShefConstants.NONE.equalsIgnoreCase(undefStation)) { + sMsg.append("LID [").append(locId) + .append("] not defined; no data posted"); + } else if ("IDS_ONLY".equalsIgnoreCase(undefStation)) { + sMsg.append("LID [") + .append(locId) + .append("] not defined; station info posting to UnkStn"); + } else if ("IDS_AND_DATA" + .equalsIgnoreCase(undefStation)) { + sMsg.append("LID [") + .append("] not defined; data posting to UnkStnValue"); + } + if (sMsg.length() > 0) { + log.info(sMsg.toString()); + } } - } else { - if (createTime.getTime() > obsTime.getTime()) { + + // Only post an unknown once! + if ("IDS_ONLY".equalsIgnoreCase(undefStation)) { + if (!same_lid_product) { + Unkstn unknown = new Unkstn(); + unknown.setIdentifier(identifier); + unknown.setLid(locId); + unknown.setPostingtime(postDate); + unknown.setProductId(prodId); + unknown.setProducttime(prodTime); + unknown.setTraceId(shefRecord.getTraceId()); + start = System.currentTimeMillis(); + postTables.postUnknownStation(unknown, stats); + end = System.currentTimeMillis(); + stats.addElapsedTimeUnknown(end - start); + stats.incrementUnknownStation(); + disposition = StoreDisposition.UKN_STN_POSTING; + } else { + disposition = StoreDisposition.UKN_STN_POSTED; + } + } else if ("IDS_AND_DATA".equalsIgnoreCase(undefStation)) { + PersistableDataObject unknstnvalue = populateDataObj( + shefRecord, data, locId, + ShefConstants.UNKNOWN_STATION_VALUE, dataValue, + dataQualifier, 0); + + start = System.currentTimeMillis(); + postTables.postData(unknstnvalue, + ShefConstants.UNKNOWN_STATION_VALUE, + shefPostDuplicateDef, stats); + end = System.currentTimeMillis(); + stats.incrementUnknownStation(); + stats.addElapsedTimeUnknown(end - start); + disposition = StoreDisposition.UKN_STN_VALUE; + } + stats.incrementWarningMessages(); + } else if (Location.LOC_NO_POST.equals(postLocData)) { + stats.incrementNoPost(); + // if the location is defined but was set to not post, then + // write message indicating this, if one hasn't been written + // already + if (locMess && !same_lid_product) { + log.info("Station [" + locId + "] is inactive"); + } + disposition = StoreDisposition.INACTIVE_LID; + } + + /* + * check if an lid-PEDTSE entry exists in the IngestFilter. this + * function can self-populate the IngestFilter table; if not in + * self-populate mode, then an error message is issued if there + * is no entry in the IngestFilter table and the data will not + * be posted. + */ + ShefConstants.IngestSwitch ingestSwitch = ShefConstants.IngestSwitch.POST_PE_ONLY; + if (Location.LOC_LOCATION.equals(postLocData) + || (Location.LOC_GEOAREA.equals(postLocData))) { + if (!DataType.CONTINGENCY.equals(dataType)) { + ingestSwitch = checkIngest(locId, data); + } + if (ShefConstants.IngestSwitch.POST_PE_OFF + .equals(ingestSwitch)) { + stats.incrementNoPost(); + } + } + + /* + * if the location data should not be posted because either: 1) + * the location is not defined as a location or an area, or + * because the location post switch is off, or 2) the PEDTSE + * ingest switch is turned off; then no need to continue + */ + + boolean postPeOffSwitch = ShefConstants.IngestSwitch.POST_PE_OFF + .equals(ingestSwitch); + + if ((!Location.LOC_LOCATION.equals(postLocData) && !Location.LOC_GEOAREA + .equals(postLocData)) || postPeOffSwitch) { + /* + * set the prev info for the next pass through this + * function. this is info is used for to prevent redundant + * messages + */ + StringBuilder unkmsg = new StringBuilder(); + switch (disposition) { + case UKN_STN_POSTING: { + unkmsg.append("Posting LID [").append(locId) + .append("] to [unkstn]"); + break; + } + case UKN_STN_POSTED: { + unkmsg.append("LID [").append(locId) + .append("] already posted to [unkstn]"); + break; + } + case UKN_STN_VALUE: { + unkmsg.append("Posting LID [").append(locId) + .append("] data [").append(dataValue) + .append("] to [unkstnvalue]"); + break; + } + case INACTIVE_LID: + unkmsg.append("Not posting data [").append(dataValue) + .append("] for inactive LID [").append(locId) + .append("]"); + break; + default: { + unkmsg.append("Not posting data [").append(dataValue) + .append("] for LID [").append(locId) + .append("]"); + break; + } + } + log.warn(unkmsg.toString()); + stats.incrementWarningMessages(); + continue; + } + + /*---------------------------------------------------------------------*/ + /* + * check for observed data too far in past or future if data is + * outside of this time window, then do not post. skip this + * check if data is monthly data + */ + Date obsTime = data.getObsTime().toCalendar().getTime(); + Date createTime = null; + if (data.getCreateTime() != null) { + createTime = data.getCreateTime().toCalendar().getTime(); + } + + if (DataType.READING.equals(dataType) + || TypeSource.PROCESSED_MEAN_AREAL_DATA + .equals(typeSource)) { + + if ((postDate.getTime() - obsTime.getTime() > lookbackMillis) + && (!Duration._1_MONTH.equals(data.getDuration()))) { stats.incrementWarningMessages(); - log.warn(locId + " basis time (" + createTime - + ") > valid time (" + obsTime - + "); check encoding"); + stats.incrementOutsideWindow(); + log.warn(locId + " " + data.getObsTime() + + " obs time > " + lookBackDays + + " days old; data not posted"); + continue; + } else if (obsTime.getTime() - postDate.getTime() > lookfwdMillis) { + stats.incrementWarningMessages(); + stats.incrementOutsideWindow(); + log.warn(locId + " obs time (" + data.getObsTime() + + ") >" + " post time (" + postDate + "); " + + lookAheadMinutes + + " minutes in the future; data not posted"); + continue; } } - } - /* - * check to see if an adjustment factor should be applied to the raw - * SHEF value coming in and if so adjust that value in the shefrec - * structure - */ - adjustRawValue(locId, data); - - /* - * multiply non-missing values of discharge values and unspecified - * height values by 1000 to change units - */ - String pe = data.getPhysicalElement().getCode(); - if((pe != null)&&(data.getValue() != -9999)) { - Matcher m = Q_CODES.matcher(pe); - if(m.matches()) { - data.adjustValue(1, 0, 1000.0, 0); - dataValue = data.getStringValue(); - } - if("HZ".equals(pe)) { - data.adjustValue(1, 0, 1000.0, 0); - dataValue = data.getStringValue(); - } - } - /*---------------------------------------------------------------*/ - /* - * post data to the appropriate table(s). for the sake of - * uniformity, most of these functions have the same argument list - * even though some of the arguments are not used by some functions - * - * if instructed, post to the product link table, but only if the - * info has changed - */ - if (postLink && !same_lid_product) { - start = System.currentTimeMillis(); - // Identifier has been set from the awipsHeader. + /* + * check for forecast basis times that are after the valid time, + * issue a warning message if this is the case - basis time is + * the creation date and valid time is the obs time + */ + if (DataType.FORECAST.equals(dataType) + || TypeSource.FORECAST_MEAN_AREAL_DATA + .equals(typeSource)) { + + if (createTime != null) { + if (createTime.getTime() > obsTime.getTime()) { + stats.incrementWarningMessages(); + log.warn(locId + " basis time (" + createTime + + ") > valid time (" + obsTime + + "); check encoding"); + } + } + } + /* + * check to see if an adjustment factor should be applied to the + * raw SHEF value coming in and if so adjust that value in the + * shefrec structure + */ + if (!dataValue.equals(ShefConstants.SHEF_MISSING)) { + adjustRawValue(locId, data); + } + + dataValue = data.getStringValue(); + /* + * multiply non-missing values of discharge values and + * unspecified height values by 1000 to change units + */ + String pe = data.getPhysicalElement().getCode(); + if ((pe != null) && (data.getValue() != -9999)) { + Matcher m = Q_CODES.matcher(pe); + if (m.matches()) { + data.adjustValue(1, 0, 1000.0, 0); + dataValue = data.getStringValue(); + } + if ("HZ".equals(pe)) { + data.adjustValue(1, 0, 1000.0, 0); + dataValue = data.getStringValue(); + } + } + + /*---------------------------------------------------------------*/ + /* + * post data to the appropriate table(s). for the sake of + * uniformity, most of these functions have the same argument + * list even though some of the arguments are not used by some + * functions + * + * if instructed, post to the product link table, but only if + * the info has changed + */ + if (postLink && !same_lid_product) { + start = System.currentTimeMillis(); + // Identifier has been set from the awipsHeader. + postProductLink(locId, identifier, obsTime); + stats.addElapsedTimeIngest(System.currentTimeMillis() + - start); - postProductLink(locId, identifier, obsTime); - // postProductLink(locId, shefRecord.getIdentifier(), obsTime); - stats.addElapsedTimeIngest(System.currentTimeMillis() - start); - - if (dataLog || log.isDebugEnabled()) { - String msg = String.format("Posted product link [%s] for LID [%s]", identifier, locId); if (dataLog) { - log.info(msg); - } else if(log.isDebugEnabled()) { - log.debug(msg); + log.info("Posted product link [" + identifier + + "] for LID [" + locId + "]"); } } - } + /* + * Check the quality of the data if observed or forecast. note + * the posting may treat processed data as observed, including + * this manner. + * + * the quality_code defined contains information from two + * 'sources'. one, the qc checks performed by shef, and two, + * certain shef qualifier codes reflect the quality of the data. + * use the information in the quality_code field, which is based + * on these two sources, to help determine the dispensation of + * the value. + */ + boolean valueOk = false; + long qualityCode = MISSING; + Date validTime = new Date(obsTime.getTime()); - /* - * Check the quality of the data if observed or forecast. note the - * posting may treat processed data as observed, including this - * manner. - * - * the quality_code defined contains information from two 'sources'. - * one, the qc checks performed by shef, and two, certain shef - * qualifier codes reflect the quality of the data. use the - * information in the quality_code field, which is based on these - * two sources, to help determine the dispensation of the value. - */ + /* Don't perform the check if the value is a missing value */ + if (!ShefConstants.SHEF_MISSING.equals(dataValue)) { + qualityCode = checkQuality(locId, dataQualifier, dataValue, + data); + valueOk = checkQcCode(QualityControlCode.QC_NOT_FAILED, + qualityCode); + } else { + qualityCode = ShefQC.setQcCode(ShefQC.QC_DEFAULT, 0L); + valueOk = true; + } - boolean valueOk = false; - long qualityCode = -999; - Date validTime = new Date(obsTime.getTime()); + /* + * only attempt to post to the latestobsvalue table if meets + * certain conditions based on settings + */ + if (DataType.READING.equals(dataType)) { + if (SHEF_ON.equalsIgnoreCase(postLatest) + || (ShefConstants.VALID_ONLY + .equalsIgnoreCase(postLatest) && valueOk && (data + .getStringValue() != ShefConstants.SHEF_MISSING)) + || (ShefConstants.VALID_OR_MISSING + .equalsIgnoreCase(postLatest) && valueOk)) { - /* Don't perform the check if the value is a missing value */ - if (!ShefConstants.SHEF_MISSING.equals(dataValue)) { - qualityCode = checkQuality(locId, dataQualifier, dataValue, - data); - valueOk = checkQcCode(QualityControlCode.QC_NOT_FAILED, - qualityCode); - } else { - qualityCode = ShefQC.setQcCode(ShefQC.QC_DEFAULT, 0L); - valueOk = true; - } + postTables.postLatestObs(shefRecord, data, locId, + data.getStringValue(), data.getQualifier(), + qualityCode, prodId, prodTime, + shefPostDuplicateDef, stats, postDate); + if (dataLog) { + log.info("Data [" + dataValue + "] ObsTime[" + + data.getObservationTimeObj().toString() + + "] for LID [" + locId + + "] posted to the latestObsValue for PE [" + + data.getPhysicalElement().getCode() + "]"); + } + } + } - /* - * only attempt to post to the latestobsvalue table if meets certain - * conditions based on settings - */ - if (DataType.READING.equals(dataType)) { - if (SHEF_ON.equalsIgnoreCase(postLatest) - || (ShefConstants.VALID_ONLY - .equalsIgnoreCase(postLatest) && valueOk && (data - .getStringValue() != ShefConstants.SHEF_MISSING)) - || (ShefConstants.VALID_OR_MISSING - .equalsIgnoreCase(postLatest) && valueOk)) { - PostTables.postLatestObs(shefRecord, data, locId, - data.getStringValue(), data.getQualifier(), - qualityCode, prodId, prodTime, - shefPostDuplicateDef, stats, postDate); + /* + * if the data is either observed or forecast, or if processed + * data is being treated as observed data, then invoke the + * procedure to post to the appropriate pe-based table. if data + * are bad, then don't post to pe-tables and instead post to + * reject data, as per user instructions. + */ + switch (dataType) { + case READING: + case AREAL_PROCESSED: + case FORECAST: + case AREAL_FORECAST: { + if (!valueOk && postBadData) { + PersistableDataObject rejectValue = populateDataObj( + shefRecord, data, locId, + ShefConstants.REJECTED_DATA, dataValue, + dataQualifier, qualityCode); + + postTables.postData(rejectValue, + ShefConstants.REJECTED_DATA, + shefPostDuplicateDef, stats); + if (dataLog) { + log.info("Posting data [" + dataValue + + "] for LID [" + locId + + "] to rejectedData table"); + } + } else { + if (DataType.READING.equals(dataType) + || DataType.FORECAST.equals(dataType)) { + if (checkIfPaired(data)) { + postTables.postPairedData(shefRecord, data, + locId, dataValue, dataQualifier, + qualityCode, prodId, prodTime, + shefPostDuplicateDef, stats, postDate); + if (dataLog) { + log.info("Posting data [" + dataValue + + "] for LID [" + locId + + "] to pairedValue table"); + } + } else { + postTables.postPeData(shefRecord, data, locId, + data.getStringValue(), dataQualifier, + qualityCode, prodId, prodTime, + shefPostDuplicateDef, ingestSwitch, + stats, validTime, postDate, dataType); + if (dataLog) { + log.info("Posting data [" + + data.getStringValue() + + "] for LID [" + + locId + + "] for PE [" + + data.getPhysicalElement() + .getCode() + "]"); + } + } + } else if (DataType.AREAL_PROCESSED.equals(dataType)) { + /* + * if a value is both areal and paired, then let the + * paired characteristic of the data take precedence + * over the areal nature of the data, so store the + * areal paired data in the pairedvalue table, not + * the areal tables. + */ + if (checkIfPaired(data)) { + postTables.postPairedData(shefRecord, data, + locId, dataValue, dataQualifier, + qualityCode, prodId, prodTime, + shefPostDuplicateDef, stats, postDate); + if (dataLog) { + log.info("Posting areal obs data [" + + dataValue + "] for LID [" + locId + + "] to pairedValue table"); + } + } else { + PersistableDataObject arealObs = populateDataObj( + shefRecord, data, locId, + ShefConstants.AREAL_OBS, dataValue, + dataQualifier, qualityCode); + postTables.postData(arealObs, + ShefConstants.AREAL_OBS, + shefPostDuplicateDef, stats); + + if (dataLog) { + log.info("Posting areal obs data [" + + dataValue + "] for LID [" + locId + + "] to arealobs table"); + } + } + } else if (DataType.AREAL_FORECAST.equals(dataType)) { + if (checkIfPaired(data)) { + postTables.postPairedData(shefRecord, data, + locId, dataValue, dataQualifier, + qualityCode, prodId, prodTime, + shefPostDuplicateDef, stats, postDate); + if (dataLog) { + log.info("Posting areal forecast data [" + + dataValue + "] for LID [" + locId + + "] to pairedValue table"); + } + } else { + PersistableDataObject arealfcst = populateDataObj( + shefRecord, data, locId, + ShefConstants.AREAL_FCST, dataValue, + dataQualifier, qualityCode); + postTables.postData(arealfcst, + ShefConstants.AREAL_FCST, + shefPostDuplicateDef, stats); + if (dataLog) { + log.info("Posting areal forecast data [" + + dataValue + "] for LID [" + locId + + "] to arealfcst table"); + } + } + } + } + break; + } + case CONTINGENCY: { + /* + * post to the Contingency and Processed tables; unless of + * course the PE is one of the special paired elements. note + * that we are only posting to the processed tables if not + * treating the processed data as observed. + */ + if (checkIfPaired(data)) { + postTables + .postPairedData(shefRecord, data, locId, + dataValue, dataQualifier, qualityCode, + prodId, prodTime, shefPostDuplicateDef, + stats, postDate); + if (dataLog) { + log.info("Posting contingency data [" + dataValue + + "] for LID [" + locId + + "] to pairedValue table"); + } + } else { + PersistableDataObject contingency = populateDataObj( + shefRecord, data, locId, + ShefConstants.CONTINGENCY_VALUE, dataValue, + dataQualifier, qualityCode); + postTables.postData(contingency, + ShefConstants.CONTINGENCY_VALUE, + shefPostDuplicateDef, stats); + if (dataLog) { + log.info("Posting contingency data [" + dataValue + + "] for LID [" + locId + + "] to contingencyValue table"); + } + } + break; + } // case CONTINGENCY: + case PROCESSED: { + if (checkIfPaired(data)) { + postTables + .postPairedData(shefRecord, data, locId, + dataValue, dataQualifier, qualityCode, + prodId, prodTime, shefPostDuplicateDef, + stats, postDate); + if (dataLog) { + log.info("Posting processed data [" + dataValue + + "] for LID [" + locId + + "] to pairedValue table"); + } + } else { + PersistableDataObject procval = populateDataObj( + shefRecord, data, locId, + ShefConstants.PROC_VALUE, dataValue, + dataQualifier, qualityCode); + postTables.postData(procval, ShefConstants.PROC_VALUE, + shefPostDuplicateDef, stats); + if (dataLog) { + log.info("Posting processed data [" + dataValue + + "] for LID [" + locId + + "] to procValue table"); + } + } + break; + } // case PROCESSED: + } // switch + + /* + * post alertalarm data as necessary. Don't perform the + * alert/alarm post if the data is a ContingencyValue + */ + if (!DataType.CONTINGENCY.equals(dataType) && shefAlertAlarm + && (alertAlarm != ShefConstants.NO_ALERTALARM)) { + // TODO: Ensure what is to be saved here! + post_alertalarm(data, locId, dataValue, dataQualifier, + qualityCode); + stats.incrementAlertAlarm(); if (dataLog) { - log.info(String.format(LOV_POST_MSG, dataValue, - data.getObservationTimeObj(), locId, - data.getPhysicalElement().getCode())); + log.info("Posting data [" + dataValue + "] for LID [" + + locId + "] to alertAlarmVal table"); } } - } - /* - * if the data is either observed or forecast, or if processed data - * is being treated as observed data, then invoke the procedure to - * post to the appropriate pe-based table. if data are bad, then - * don't post to pe-tables and instead post to reject data, as per - * user instructions. - */ - switch (dataType) { - case READING: - case AREAL_PROCESSED: - case FORECAST: - case AREAL_FORECAST: { - if (!valueOk && postBadData) { - PersistableDataObject rejectValue = populateDataObj( + /* + * now check if there is any comment data associated with this + * data. if so, then store in the comment table, where comments + * for all datatypes goes. + */ + String c = data.getRetainedComment(); + if ((c != null) && (c.length() > 0)) { + PersistableDataObject commentValue = populateDataObj( shefRecord, data, locId, - ShefConstants.REJECTED_DATA, dataValue, + ShefConstants.COMMENT_VALUE, dataValue, dataQualifier, qualityCode); - PostTables.postData(rejectValue, - ShefConstants.REJECTED_DATA, shefPostDuplicateDef, + postTables.postData(commentValue, + ShefConstants.COMMENT_VALUE, shefPostDuplicateDef, stats); if (dataLog) { - log.info(String - .format("Posting data [%s] for LID [%s] to rejectedData table", - dataValue, locId)); - } - } else { - if (DataType.READING.equals(dataType) - || DataType.FORECAST.equals(dataType)) { - if (checkIfPaired(data)) { - PostTables.postPairedData(shefRecord, data, locId, - dataValue, dataQualifier, qualityCode, - prodId, prodTime, shefPostDuplicateDef, - stats, postDate); - if (dataLog) { - log.info(String - .format("Posting data [%s] for LID [%s] to pairedValue table", - dataValue, locId)); - } - } else { - PostTables.postPeData(shefRecord, data, locId, - data.getStringValue(), dataQualifier, qualityCode, - prodId, prodTime, shefPostDuplicateDef, - ingestSwitch, stats, validTime, postDate, - dataType); - if (dataLog) { - log.info(String - .format("Posting data [%s] for LID [%s] for PE [%s]", - data.getStringValue(), locId, data - .getPhysicalElement() - .getCode())); - } - } - } else if (DataType.AREAL_PROCESSED.equals(dataType)) { - /* - * if a value is both areal and paired, then let the - * paired characteristic of the data take precedence - * over the areal nature of the data, so store the areal - * paired data in the pairedvalue table, not the areal - * tables. - */ - if (checkIfPaired(data)) { - PostTables.postPairedData(shefRecord, data, locId, - dataValue, dataQualifier, qualityCode, - prodId, prodTime, shefPostDuplicateDef, - stats, postDate); - if (dataLog) { - log.info(String - .format("Posting areal obs data [%s] for LID [%s] to pairedValue table", - dataValue, locId)); - } - } else { - PersistableDataObject arealObs = populateDataObj( - shefRecord, data, locId, - ShefConstants.AREAL_OBS, dataValue, - dataQualifier, qualityCode); - - PostTables.postData(arealObs, - ShefConstants.AREAL_OBS, - shefPostDuplicateDef, stats); - if (dataLog) { - log.info(String - .format("Posting areal obs data [%s] for LID [%s] to arealobs table", - dataValue, locId)); - } - } - } else if (DataType.AREAL_FORECAST.equals(dataType)) { - if (checkIfPaired(data)) { - PostTables.postPairedData(shefRecord, data, locId, - dataValue, dataQualifier, qualityCode, - prodId, prodTime, shefPostDuplicateDef, - stats, postDate); - if (dataLog) { - log.info(String - .format("Posting areal forecast data [%s] for LID [%s] to pairedValue table", - dataValue, locId)); - } - } else { - PersistableDataObject arealfcst = populateDataObj( - shefRecord, data, locId, - ShefConstants.AREAL_FCST, dataValue, - dataQualifier, qualityCode); - - PostTables.postData(arealfcst, - ShefConstants.AREAL_FCST, - shefPostDuplicateDef, stats); - if (dataLog) { - log.info(String - .format("Posting areal forecast data [%s] for LID [%s] to arealfcst table", - dataValue, locId)); - } - } + log.info("Posting comments for data [" + dataValue + + "] : LID [" + locId + + "] to commentValue table"); } } - break; - } - case CONTINGENCY: { - /* - * post to the Contingency and Processed tables; unless of - * course the PE is one of the special paired elements. note - * that we are only posting to the processed tables if not - * treating the processed data as observed. - */ - if (checkIfPaired(data)) { - PostTables.postPairedData(shefRecord, data, locId, - dataValue, dataQualifier, qualityCode, prodId, - prodTime, shefPostDuplicateDef, stats, postDate); - if (dataLog) { - log.info(String - .format("Posting contingency data [%s] for LID [%s] to pairedValue table", - dataValue, locId)); - } - } else { - PersistableDataObject contingency = populateDataObj( - shefRecord, data, locId, - ShefConstants.CONTINGENCY_VALUE, dataValue, - dataQualifier, qualityCode); + } // for - PostTables.postData(contingency, - ShefConstants.CONTINGENCY_VALUE, - shefPostDuplicateDef, stats); - if (dataLog) { - log.info(String - .format("Posting contingency data [%s] for LID [%s] to contingencyValue table", - dataValue, locId)); - } - } - break; - } // case CONTINGENCY: - case PROCESSED: { - if (checkIfPaired(data)) { - PostTables.postPairedData(shefRecord, data, locId, - dataValue, dataQualifier, qualityCode, prodId, - prodTime, shefPostDuplicateDef, stats, postDate); - if (dataLog) { - log.info(String - .format("Posting processed data [%s] for LID [%s] to pairedValue table", - dataValue, locId)); - } - } else { - PersistableDataObject procval = populateDataObj(shefRecord, - data, locId, ShefConstants.PROC_VALUE, dataValue, - dataQualifier, qualityCode); + postTables.executeBatchUpdates(); + + if (!dataValues.isEmpty()) { + ShefData data = dataValues.get(0); + DataType dataType = ParameterCode.DataType.getDataType( + data.getTypeSource(), procObs); + if ((DataType.FORECAST.equals(dataType)) + && loadMaxFcst + && (data.getPhysicalElement().getCode().startsWith("H") || data + .getPhysicalElement().getCode().startsWith("Q"))) { + postRiverStatus(data, locId); + log.info("Update RiverStatus for: " + locId + " " + + data.getPhysicalElement().getCode()); + } + } + } catch (Exception e) { + log.error("An error occurred posting shef data.", e); + } - PostTables.postData(procval, ShefConstants.PROC_VALUE, - shefPostDuplicateDef, stats); - if (dataLog) { - log.info(String - .format("Posting processed data [%s] for LID [%s] to procValue table", - dataValue, locId)); - } - } - break; - } // case PROCESSED: - } // switch - - /* - * post alertalarm data as necessary. Don't perform the alert/alarm - * post if the data is a ContingencyValue - */ - if (!DataType.CONTINGENCY.equals(dataType) && shefAlertAlarm - && (alertAlarm != ShefConstants.NO_ALERTALARM)) { - - // TODO: Ensure what is to be saved here! - post_alertalarm(data, locId, dataValue, dataQualifier, - qualityCode); - stats.incrementAlertAlarm(); - if (dataLog) { - log.info(String - .format("Posting data [%s] for LID [%s] to alertAlarmVal table", - dataValue, locId)); - } - } - - /* - * now check if there is any comment data associated with this data. - * if so, then store in the comment table, where comments for all - * datatypes goes. - */ - String c = data.getRetainedComment(); - if ((c != null) && (c.length() > 0)) { - PersistableDataObject commentValue = populateDataObj( - shefRecord, data, locId, ShefConstants.COMMENT_VALUE, - dataValue, dataQualifier, qualityCode); - - PostTables.postData(commentValue, ShefConstants.COMMENT_VALUE, - shefPostDuplicateDef, stats); - if (dataLog) { - log.info(String - .format("Posting comments for data [%s] : LID [%s] to commentValue table", - dataValue, locId)); - } - } - - /* - * if we just received some forecast height or discharge data, then - * update the riverstatus table for those reports - */ - if ((DataType.FORECAST.equals(dataType)) - && loadMaxFcst - && (data.getPhysicalElement().getCode().startsWith("H") || data - .getPhysicalElement().getCode().startsWith("Q"))) { - - postRiverStatus(data, locId); - } - - /* - * very important to store this info to prevent redundant posting. - */ - prevLid = locId; - prevProdId = prodId; - prevProdTime = prodTime; - - } // for + // Reset .E cache vars + tsList.clear(); + useLatest = MISSING; + qualityCheckFlag = true; + useTs = null; + basisTimeValues = null; + previousQueryForecast = null; + dataRangeMap.clear(); + validDateRange = false; } + /** + * Log the summary stats. + * + * @param traceId + * @param totalTime + */ public void logStats(String traceId, long totalTime) { if (this.perfLog) { Log perfLog = LogFactory.getLog("ShefPerfLog"); - SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmmss"); perfLog.info("********************************"); perfLog.info("Performance Stats: " + traceId); perfLog.info("Total Elapsed Time (ms): " + totalTime); - if(prodTime != null) { + if (prodTime != null) { + SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmmss"); perfLog.info(prodId + ", " + sdf.format(prodTime)); } else { perfLog.info(prodId + ", ------------"); @@ -1069,9 +1193,6 @@ public class PostShef { aaCategory = ShefConstants.ALARM_CATEGSTR; aaCheck = ShefConstants.LOWER_CHECKSTR; } - if (log.isDebugEnabled()) { - log.debug("alertAlarm = " + alertAlarm); - } PersistableDataObject aaValue = populateDataObj(shefRecord, data, locId, ShefConstants.ALERTALARM_VALUE, data.getStringValue(), @@ -1080,7 +1201,7 @@ public class PostShef { ((Alertalarmval) aaValue).getId().setAaCateg(aaCategory); ((Alertalarmval) aaValue).getId().setAaCheck(aaCheck); - PostTables.postAAData(aaValue, ShefConstants.ALERTALARM_VALUE, + postTables.postAAData(aaValue, ShefConstants.ALERTALARM_VALUE, shefPostDuplicate, stats, aaCategory, aaCheck); } @@ -1089,15 +1210,10 @@ public class PostShef { * Post data to the riverstatus data table. */ private void postRiverStatus(ShefData data, String locId) { - long start = 0; - long end = 0; - long duration = 0; - // int maxfcst = 0; + String tableName = null; String pe = data.getPhysicalElement().getCode(); - log.info("Update RiverStatus for: " + locId + " " - + data.getPhysicalElement()); if (data.getTimeSeriesId() <= ShefConstants.MAXFCST_INFO) { start = System.currentTimeMillis(); @@ -1116,38 +1232,29 @@ public class PostShef { loadMaxFcstData("FcstDischarge"); } - end = System.currentTimeMillis(); - ; - duration = end - start; - log.info("H/Q lid-pe; updated RiverStatus, runtime = " + duration - + " ms."); + if (dataLog) { + log.info("H/Q lid-pe; updated RiverStatus, runtime = " + + (System.currentTimeMillis() - start) + " ms."); + } } /** - * Process forecast data for the given tablename. Don't consider any + * Process forecast data for the given table name. Don't consider any * probabilistic values. **/ private void loadMaxFcstData(String tableName) { - CoreDao dao = null; Object[] oa = null; String lid = null; String pe = null; String ts = null; + String dateStr = dbFormat.get().format(postDate); -// String query = "select lid,pe,ts " + "from " + tableName + " " -// + "where validtime > CURRENT_TIMESTAMP and " -// + "probability < 0.0"; - - String query = String - .format("select lid,pe,ts from %s where validtime > '%s' and probability < 0.0", - tableName, toTimeStamp(postDate)); + String query = "select lid,pe,ts from " + tableName + + " where validtime > '" + dateStr + "' and probability < 0.0"; try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - oa = dao.executeSQLQuery(query); - if (oa == null) { return; } @@ -1155,12 +1262,12 @@ public class PostShef { Object[] row = null; for (int i = 0; i < oa.length; i++) { row = (Object[]) oa[i]; - if(row.length == 3) { + if (row.length == 3) { lid = ShefUtil.getString(row[0], null); pe = ShefUtil.getString(row[1], null); ts = ShefUtil.getString(row[2], null); - if ((lid != null) && (pe != null)&&(ts != null)) { + if ((lid != null) && (pe != null) && (ts != null)) { loadMaxFcstItem(lid, pe, ts); } } @@ -1168,10 +1275,7 @@ public class PostShef { } catch (Exception e) { log.error("Query = [" + query + "]"); log.error(shefRecord.getTraceId() - + " - PostgresSQL error retrieving from " + tableName); - if(log.isDebugEnabled()) { - log.error(e); - } + + " - PostgresSQL error retrieving from " + tableName, e); } } @@ -1179,33 +1283,57 @@ public class PostShef { * Process forecast data for the given tableName. */ private void loadMaxFcstData_lidpe(String tableName, String locId, String pe) { - CoreDao dao = null; Object[] oa = null; if ((tableName != null) && (locId != null) && (pe != null)) { - String query = "select DISTINCT(ts) " + "from " + tableName - + " where lid = '" + locId + "' and " + "pe = '" + pe - + "' and " + "validtime > CURRENT_TIMESTAMP and " - + "probability < 0.0"; - - try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - oa = dao.executeSQLQuery(query); - - for (int i = 0; i < oa.length; i++) { - String ts = ShefUtil.getString(oa[i], null); - if(ts != null) { - loadMaxFcstItem(locId, pe, ts); + if (shefRecord.getShefType() == ShefType.E) { + // Only need to do this query once for each shef record for .E + if (tsList.isEmpty()) { + String query = "select DISTINCT(ts) " + "from " + tableName + + " where lid = '" + locId + "' and pe = '" + pe + + "' and " + "validtime > CURRENT_TIMESTAMP and " + + "probability < 0.0"; + try { + oa = dao.executeSQLQuery(query); + for (int i = 0; i < oa.length; i++) { + String ts = ShefUtil.getString(oa[i], null); + if (ts != null) { + tsList.add(ts); + } + } + } catch (Exception e) { + log.error("Query = [" + query + "]"); + log.error(shefRecord.getTraceId() + + " - PostgresSQL error retrieving from " + + tableName, e); } } + } else { + String query = "select DISTINCT(ts) " + "from " + tableName + + " where lid = '" + locId + "' and pe = '" + pe + + "' and " + "validtime > CURRENT_TIMESTAMP and " + + "probability < 0.0"; - } catch (Exception e) { - log.error("Query = [" + query + "]"); - log.error(shefRecord.getTraceId() - + " - PostgresSQL error retrieving from " + tableName); - if(log.isDebugEnabled()) { - log.error(e); + try { + oa = dao.executeSQLQuery(query); + + for (int i = 0; i < oa.length; i++) { + String ts = ShefUtil.getString(oa[i], null); + if (ts != null) { + tsList.add(ts); + } + } + + } catch (Exception e) { + log.error("Query = [" + query + "]"); + log.error(shefRecord.getTraceId() + + " - PostgresSQL error retrieving from " + + tableName, e); } } + + for (String ts : tsList) { + loadMaxFcstItem(locId, pe, ts); + } } } @@ -1214,101 +1342,89 @@ public class PostShef { * location and pe. * */ private void loadMaxFcstItem(String lid, String pe, String ts) { - CoreDao dao = null; Object[] oa = null; - String riverStatQuery = "select use_latest_fcst from riverstat where lid = '" - + lid + "'"; - String hourQuery = "select obshrs,fcsthrs from RpfParams"; - String deleteQuery = "delete from riverstatus " + "where lid= '" + lid - + "' and pe= '" + pe + "' and ts= '" + ts + "'"; - int useLatest = 0; int qcFilter = 1; List shefList = null; - try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - oa = dao.executeSQLQuery(riverStatQuery); + String riverStatQuery = "select use_latest_fcst from riverstat where lid = '" + + lid + "'"; + String deleteQuery = "delete from riverstatus " + "where lid= '" + lid + + "' and pe= '" + pe + "' and ts= '" + ts + "'"; + if (shefRecord.getShefType() == ShefType.E) { + if (useLatest == MISSING) { + useLatest = 0; + try { + oa = dao.executeSQLQuery(riverStatQuery); - /* - * get the setting for the use_latest_fcst field for the current - * location from the riverstat table. - */ + /* + * get the setting for the use_latest_fcst field for the + * current location from the riverstat table. + */ - if (oa == null) { - useLatest = 1; - } else { - if (oa.length > 0) { - if ("T".equals(ShefUtil.getString(oa[0],null))) { + if (oa == null) { useLatest = 1; + } else { + if (oa.length > 0) { + if ("T".equals(ShefUtil.getString(oa[0], null))) { + useLatest = 1; + } + } } + } catch (Exception e) { + log.error("Query = [" + riverStatQuery + "]"); + log.error(shefRecord.getTraceId() + + " - PostgresSQL error loading max forecast item", + e); } } + } else { + useLatest = 0; + try { + oa = dao.executeSQLQuery(riverStatQuery); - /* - * get the forecast time series for this location, pe, and ts using - * any instructions on any type-source to screen and whether to use - * only the latest basis time - */ - long currentTime = System.currentTimeMillis(); - // long obsTime = 0; - // long endValidTime = 0; - long basisBeginTime = 0; - - /* - * This code sets the time values - */ - if (!isHoursLoad) { - oa = dao.executeSQLQuery(hourQuery); - Object[] row = null; - if (oa.length > 0) { - row = (Object[]) oa[0]; // first row - obshrs = ((Integer) row[0]).longValue(); - fcsthrs = ((Integer) row[1]).longValue(); - } else { - log.error("No records in RpfParams table, using defaults"); - } - - if (basis_hours_str != null) { - basishrs = Long.parseLong(basis_hours_str); - if ((basishrs <= 0) || (basishrs > 480)) { - log.info("invalid value for basis_hours_filter token: " - + basishrs); - basishrs = 72; - } - } - isHoursLoad = true; - } - // obsTime = currentTime - (obshrs * 3600 * 1000); - // endValidTime = currentTime + (fcsthrs * 3600 * 1000); - basisBeginTime = currentTime - (basishrs * 3600 * 1000); - - shefList = buildTsFcstRiv(lid, pe, ts, qcFilter, useLatest, - basisBeginTime); - - if ((shefList != null) && (shefList.size() > 0)) { - ShefData maxShefDataValue = findMaxFcst(shefList); - boolean updateFlag = updateRiverStatus(lid, pe, ts); - PostTables.postRiverStatus(shefRecord, maxShefDataValue, - updateFlag); - - } else { /* - * if no data were found, then delete any entries that may exist - * for this key. this is needed if general applications are - * using this function directly and delete all forecast data for - * a given key + * get the setting for the use_latest_fcst field for the current + * location from the riverstat table. */ - dao.executeSQLUpdate(deleteQuery); + + if (oa == null) { + useLatest = 1; + } else { + if (oa.length > 0) { + if ("T".equals(ShefUtil.getString(oa[0], null))) { + useLatest = 1; + } + } + } + } catch (Exception e) { + log.error("Query = [" + riverStatQuery + "]"); + log.error(shefRecord.getTraceId() + + " - PostgresSQL error loading max forecast item", e); } - } catch (Exception e) { - log.error("Query = [" + riverStatQuery + "]"); - log.error("Query = [" + hourQuery + "]"); - log.error(shefRecord.getTraceId() - + " - PostgresSQL error loading max forecast item"); - if(log.isDebugEnabled()) { - log.error(e); - } + } + /* + * get the forecast time series for this location, pe, and ts using any + * instructions on any type-source to screen and whether to use only the + * latest basis time + */ + /* + * This code sets the time values + */ + shefList = buildTsFcstRiv(lid, pe, ts, qcFilter, useLatest); + if ((shefList != null) && (shefList.size() > 0)) { + ShefData maxShefDataValue = findMaxFcst(shefList); + + riverStatusUpdateValueFlag = updateRiverStatus(lid, pe, ts); + postTables.postRiverStatus(shefRecord, maxShefDataValue, + riverStatusUpdateValueFlag); + } else { + /* + * if no data were found, then delete any entries that may exist for + * this key. this is needed if general applications are using this + * function directly and delete all forecast data for a given key + */ + dao.executeSQLUpdate(deleteQuery); } } @@ -1318,15 +1434,12 @@ public class PostShef { */ private boolean updateRiverStatus(String lid, String pe, String ts) { boolean rval = false; - CoreDao dao = null; Object[] oa = null; - String query = "select lid " + "from riverstatus where lid = '" + lid - + "' and " + "pe = '" + pe + "' and " + "ts = '" + ts + "'"; + String query = "select lid from riverstatus where lid = '" + lid + + "' and pe = '" + pe + "' and " + "ts = '" + ts + "'"; try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - oa = dao.executeSQLQuery(query); if ((oa != null) && (oa.length > 0)) { @@ -1336,10 +1449,7 @@ public class PostShef { } catch (Exception e) { log.error("Query = [" + query + "]"); log.error(shefRecord.getTraceId() - + " - PostgresSQL error searching riverstatus"); - if(log.isDebugEnabled()) { - log.error(e); - } + + " - PostgresSQL error searching riverstatus", e); } return rval; } @@ -1375,31 +1485,25 @@ public class PostShef { * is contained in the adjust_startend() function. **/ private List buildTsFcstRiv(String lid, String pe, - String tsFilter, int qcFilter, int useLatest, long basisBegintime) { - // int status = -1; + String tsFilter, int qcFilter, int useLatest) { int fcstCount = 0; - int keepCount = 0; - int QUESTIONABLE_BAD_THRESHOLD = 1073741824; - - String useTs = null; String tableName = null; String query = null; - String queryForecast = null; + StringBuilder queryForecast = null; - java.sql.Timestamp basisTimeAnsi = null; - - int[] doKeep = null; - Object[] ulHead = null; + boolean[] doKeep = null; Object[] row = null; Fcstheight[] fcstHead = null; Fcstheight fcstHght = null; - // List fcstList = new ArrayList(); List shefList = new ArrayList(); ShefData shefDataValue = null; - CoreDao dao = null; - if ((tsFilter == null) || (tsFilter.length() == 0)) { + if (shefRecord.getShefType() != ShefType.E) { + useTs = null; + basisTimeValues = null; + } + if ((tsFilter == null) || (tsFilter.length() == 0) && useTs == null) { useTs = getBestTs(lid, pe, "F%", 0); if (useTs == null) { return null; @@ -1409,34 +1513,32 @@ public class PostShef { useTs = tsFilter; } try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - if (pe.startsWith("H") || pe.startsWith("h")) { tableName = "FcstHeight"; } else { tableName = "FcstDischarge"; } + if (basisTimeValues == null) { + /* + * retrieve a list of unique basis times; use descending sort. + * only consider forecast data before some ending time, and with + * some limited basis time ago + */ + query = "SELECT DISTINCT(basistime) FROM " + tableName + " " + + "WHERE lid = '" + lid + "' and " + "pe = '" + pe + + "' and " + "ts = '" + useTs + "' and " + + "validtime >= CURRENT_TIMESTAMP and " + + "basistime >= '" + basisTimeAnsi + "' and " + + "value != " + ShefConstants.SHEF_MISSING_INT + + " and " + "quality_code >= " + + QUESTIONABLE_BAD_THRESHOLD + " " + + "ORDER BY basistime DESC "; - basisTimeAnsi = new Timestamp(basisBegintime); - /* - * retrieve a list of unique basis times; use descending sort. only - * consider forecast data before some ending time, and with some - * limited basis time ago - */ + basisTimeValues = dao.executeSQLQuery(query); - query = "SELECT DISTINCT(basistime) FROM " + tableName + " " - + "WHERE lid = '" + lid + "' and " + "pe = '" + pe - + "' and " + "ts = '" + useTs + "' and " - + "validtime >= CURRENT_TIMESTAMP and " + "basistime >= '" - + basisTimeAnsi + "' and " + "value != " - + ShefConstants.SHEF_MISSING_INT + " and " - + "quality_code >= " + QUESTIONABLE_BAD_THRESHOLD + " " - + "ORDER BY basistime DESC "; - - ulHead = dao.executeSQLQuery(query); - - if ((ulHead == null) || (ulHead.length <= 0)) { - return null; + if ((basisTimeValues == null) || (basisTimeValues.length <= 0)) { + return null; + } } /* @@ -1444,74 +1546,70 @@ public class PostShef { * before, limit the forecast time valid time window and as needed, * the age of the forecast (basistime). */ + queryForecast = new StringBuilder( + "SELECT lid,pe,dur,ts,extremum,probability,validtime,basistime,value "); + queryForecast.append("FROM ").append(tableName) + .append(" WHERE lid = '").append(lid); + queryForecast.append("' AND pe = '").append(pe) + .append("' AND ts = '").append(useTs); + queryForecast + .append("' AND validtime >= CURRENT_TIMESTAMP AND probability < 0.0 AND "); - queryForecast = "SELECT lid,pe,dur,ts,extremum,probability,validtime,basistime,value " - + "FROM " - + tableName - + " " - + "WHERE lid = '" - + lid - + "' AND " - + "pe = '" - + pe - + "' AND " - + "ts = '" - + useTs - + "' AND " - + "validtime >= CURRENT_TIMESTAMP AND " - + "probability < 0.0 AND "; - - if ((useLatest == 1) || (ulHead.length == 1)) { + if ((useLatest == 1) + || (basisTimeValues != null && basisTimeValues.length == 1)) { java.sql.Timestamp tempStamp = null; - tempStamp = (Timestamp) ulHead[0]; - queryForecast += "basistime >= '" + tempStamp + "' AND "; - + tempStamp = (Timestamp) basisTimeValues[0]; + queryForecast.append("basistime >= '").append(tempStamp) + .append("' AND "); } else { - queryForecast += "basistime >= '" + basisTimeAnsi + "' AND "; + queryForecast.append("basistime >= '").append(basisTimeAnsi) + .append("' AND "); } - queryForecast += "value != " - + Integer.parseInt(ShefConstants.SHEF_MISSING) + " AND " - + "quality_code >= " - + Integer.parseInt(ShefConstants.SHEF_MISSING) + " " - + "ORDER BY validtime ASC"; + queryForecast.append("value != ") + .append(ShefConstants.SHEF_MISSING) + .append(" AND quality_code >= "); + queryForecast.append(ShefConstants.SHEF_MISSING).append( + " ORDER BY validtime ASC"); - Object[] oa = dao.executeSQLQuery(queryForecast); + if (!queryForecast.toString().equals(previousQueryForecast)) { + previousQueryForecast = queryForecast.toString(); + queryForecastResults = dao.executeSQLQuery(queryForecast + .toString()); + } row = null; - if ((oa != null) && (oa.length > 0)) { - fcstHead = new Fcstheight[oa.length]; - for (int i = 0; i < oa.length; i++) { - row = (Object[]) oa[i]; + if ((queryForecastResults != null) + && (queryForecastResults.length > 0)) { + fcstHead = new Fcstheight[queryForecastResults.length]; + for (int i = 0; i < queryForecastResults.length; i++) { + row = (Object[]) queryForecastResults[i]; fcstHght = new Fcstheight(); FcstheightId id = new FcstheightId(); Date tmpDate = null; id.setLid(ShefUtil.getString(row[0], null)); // lid - + id.setPe(ShefUtil.getString(row[1], null)); // pe - + id.setDur(ShefUtil.getShort(row[2], (short) 0)); // dur - + id.setTs(ShefUtil.getString(row[3], null)); // ts - + id.setExtremum(ShefUtil.getString(row[4], null)); // extremum - + id.setProbability(ShefUtil.getFloat(row[5], 0.0f)); - + tmpDate = ShefUtil.getDate(row[6], null); id.setValidtime(tmpDate); // valid - + tmpDate = ShefUtil.getDate(row[7], null); id.setBasistime(tmpDate);// basis - + fcstHght.setId(id); fcstHght.setValue(ShefUtil.getDouble(row[8], 0.0)); // value fcstHead[i] = fcstHght; } - } - - if (fcstHead != null) { fcstCount = fcstHead.length; } @@ -1520,7 +1618,7 @@ public class PostShef { * to keep and return */ if (fcstCount > 0) { - doKeep = new int[fcstCount]; + doKeep = new boolean[fcstCount]; } else { return null; } @@ -1531,12 +1629,10 @@ public class PostShef { * the time series together for the multiple basis times. */ - if ((useLatest == 1) || (ulHead.length <= 1)) { - for (int i = 0; i < doKeep.length; i++) { - doKeep[i] = 1; - } + if ((useLatest == 1) || (basisTimeValues.length <= 1)) { + Arrays.fill(doKeep, true); } else { - doKeep = setFcstKeep(ulHead, fcstHead); + doKeep = setFcstKeep(basisTimeValues, fcstHead); } /* @@ -1545,22 +1641,19 @@ public class PostShef { * of the number of values to keep and allocate the data */ - for (int j = 0; j < fcstCount; j++) { - if (doKeep[j] == 1) { - keepCount++; - } - } - for (int y = 0; y < fcstCount; y++) { shefDataValue = new ShefData(); - if (doKeep[y] == 1) { + if (doKeep[y]) { shefDataValue.setLocationId(fcstHead[y].getId().getLid()); + shefDataValue.setPhysicalElement(PhysicalElement .getEnum(fcstHead[y].getId().getPe())); convertDur(fcstHead[y].getId().getDur(), shefDataValue); + shefDataValue.setTypeSource(TypeSource.getEnum(fcstHead[y] .getId().getTs())); + shefDataValue.setExtremum(Extremum.getEnum(fcstHead[y] .getId().getExtremum())); shefDataValue.setObservationTimeObj(fcstHead[y].getId() @@ -1569,16 +1662,13 @@ public class PostShef { .getBasistime()); shefDataValue.setValue(fcstHead[y].getValue()); shefList.add(shefDataValue); - } + } } } catch (Exception e) { log.error("Query = [" + query + "]"); log.error("Query = [" + queryForecast + "]"); log.error(shefRecord.getTraceId() - + " - PostgresSQL error in buildTsFcstRiv"); - if(log.isDebugEnabled()) { - log.error(e); - } + + " - PostgresSQL error in buildTsFcstRiv", e); } return shefList; } @@ -1588,116 +1678,34 @@ public class PostShef { * * @param dur * The duration value - * @return The single character duration value */ private void convertDur(short dur, ShefData data) { String value = null; String durationCode = null; - - switch (dur) { - case 0: - value = "I"; - break; - case 1: - value = "U"; - break; - case 5: - value = "E"; - break; - case 10: - value = "G"; - break; - case 15: - value = "C"; - break; - case 30: - value = "J"; - break; - case 1001: - value = "H"; - break; - case 1002: - value = "B"; - break; - case 1003: - value = "T"; - break; - case 1004: - value = "F"; - break; - case 1006: - value = "Q"; - break; - case 1008: - value = "A"; - break; - case 1012: - value = "K"; - break; - case 1018: - value = "L"; - break; - case 2001: - value = "D"; - break; - case 2007: - value = "W"; - break; - // case 'N': - // Not sure what to return. Shef maunal explanation: - // N Mid month, duration for the period from the 1st day of the - // month to and ending on the - // 15th day of the same month - // break; - case 3001: - value = "M"; - break; - case 4001: - value = "Y"; - break; - case 5004: - value = "P"; - break; - case 5000: { - value = "Z"; - break; - } - case 5001: - value = "S"; - break; - case 5002: - value = "R"; - break; - case 5005: - value = "X"; - break; - default: { - // Anything that didn't get picked up above is + Integer durInt = new Integer(dur); + value = DURATION_MAP.get(durInt); + if (value == null) { + // Anything not in the DURATION_MAP is // probably a variable duration. + value = "V"; if (dur >= 7000) { - value = "V"; durationCode = "S"; } else if (dur < 1000) { - value = "V"; durationCode = "N"; } else if (dur < 2000) { - value = "V"; durationCode = "H"; } else if (dur < 3000) { - value = "V"; durationCode = "D"; } else if (dur < 4000) { - value = "V"; durationCode = "M"; } else if (dur < 5000) { - value = "V"; durationCode = "Y"; } else { // Not sure what value this would be. value = "Z"; } } - } + data.setDuration(Duration.getEnum(value)); data.setDurationCodeVariable(durationCode); data.setDurationValue(dur); @@ -1707,10 +1715,10 @@ public class PostShef { * Determine which items in the forecast time series to keep, as there may * be overlap due to multiple time_series. **/ - private int[] setFcstKeep(Object[] ulHead, Fcstheight[] fcstHead) { + private boolean[] setFcstKeep(Object[] ulHead, Fcstheight[] fcstHead) { int fcstCount = fcstHead.length; int ulCount = ulHead.length; - int[] doKeep = new int[fcstCount]; + boolean[] doKeep = new boolean[fcstCount]; int[] basisIndex = new int[fcstCount]; int[] tsFirstChk = new int[ulCount]; int MISSING = ShefConstants.SHEF_MISSING_INT; @@ -1721,9 +1729,6 @@ public class PostShef { Timestamp fcstValidTime = null; Timestamp ulBasisTime = null; - for (int i = 0; i < ulCount; i++) { - tsFirstChk[i] = 0; - } Timestamp row = null; Timestamp validTime = null; for (int i = 0; i < fcstCount; i++) { @@ -1752,7 +1757,6 @@ public class PostShef { * check if the values constitute the start or end times for the * time series and record these times if they do */ - validTime = new Timestamp(fcstHead[i].getId().getValidtime() .getTime()); @@ -1773,7 +1777,6 @@ public class PostShef { * for each of the unique basis times, assign the basis time in a * convenient array for use in the adjust_startend function. */ - for (int j = 0; j < ulCount; j++) { row = (Timestamp) ulHead[j]; basisTime[j] = row; @@ -1799,9 +1802,9 @@ public class PostShef { .getTime()); if ((fcstValidTime.compareTo(startTime[basisIndex[i]]) >= 0) && (fcstValidTime.compareTo(endTime[basisIndex[i]]) <= 0)) { - doKeep[i] = 1; + doKeep[i] = true; } else { - doKeep[i] = 0; + doKeep[i] = false; } } return doKeep; @@ -1824,11 +1827,9 @@ public class PostShef { Timestamp fullEndValidTime = null; Timestamp tmpTime = null; Timestamp zero = new Timestamp((new Date(0)).getTime()); - Object[] rval = new Object[2]; // [startValidTime[]] [endValidTime[]] + Object[] rval = new Object[2]; - for (int i = 0; i < count; i++) { - basisOrder[i] = -1; - } + Arrays.fill(basisOrder, -1); /* * find the order of the time series by their latest basis time. if two @@ -1836,7 +1837,6 @@ public class PostShef { * earlier starting time. note that the order is such that the latest * basis time is last in the resulting order array. */ - for (int i = 0; i < count; i++) { tmpTime = zero; currentIndex = 0; @@ -1985,11 +1985,9 @@ public class PostShef { private String getBestTs(String lid, String pe, String tsPrefix, int ordinal) { int count = 0; String tsFound = null; - String query = "SELECT ts_rank,ts FROM ingestfilter " + "WHERE lid = '" - + lid + "' AND " + "pe = '" + pe + "' AND " + "ts like '" - + tsPrefix + "' AND " + "ingest = 'T' " - + "ORDER BY ts_rank, ts"; - CoreDao dao = null; + String query = "SELECT ts_rank,ts FROM ingestfilter WHERE lid = '" + + lid + "' AND pe = '" + pe + "' AND ts like '" + tsPrefix + + "' AND ingest = 'T' ORDER BY ts_rank, ts"; Object[] oa = null; try { /* @@ -1999,8 +1997,6 @@ public class PostShef { * that this approach ignores the duration, extremum, and probabilty * code. */ - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - oa = dao.executeSQLQuery(query); Object[] row = null; if ((oa != null) && (oa.length > 0)) { @@ -2029,10 +2025,7 @@ public class PostShef { } catch (Exception e) { log.error("Query = [" + query + "]"); log.error(shefRecord.getTraceId() - + " - PostgresSQL error retrieving from ingestfilter"); - if(log.isDebugEnabled()) { - log.error(e); - } + + " - PostgresSQL error retrieving from ingestfilter", e); } return tsFound; } @@ -2047,23 +2040,13 @@ public class PostShef { * @return Location corresponding to 1 of 4 return values */ private Location checkLocation(String locId) { - if (log.isDebugEnabled()) { - log.debug("PostShef.checkLocation() called..."); - } Location retVal = Location.LOC_UNDEFINED; - CoreDao dao = null; String sql = null; try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); sql = "select lid, post from location where lid = '" + locId + "'"; - if (log.isDebugEnabled()) { - log.debug("SQL Query = " + sql); - } + // TODO fix multiple results returned error Object[] oa = dao.executeSQLQuery(sql); - if (log.isDebugEnabled()) { - log.debug(oa.length + " elements in oa"); - } if (oa.length > 0) { Object[] oa2 = (Object[]) oa[0]; int post = ShefUtil.getInt(oa2[1], 0); @@ -2074,9 +2057,6 @@ public class PostShef { } else { sql = "select area_id from GeoArea where area_id = '" + locId + "'"; - if (log.isDebugEnabled()) { - log.debug("Sql Query = " + sql); - } oa = dao.executeSQLQuery(sql); if (oa.length > 0) { retVal = Location.LOC_GEOAREA; @@ -2084,10 +2064,7 @@ public class PostShef { } } catch (Exception e) { log.error("Query = [" + sql + "]"); - log.error(shefRecord.getTraceId() + " - Error checking location"); - if(log.isDebugEnabled()) { - log.error(e); - } + log.error(shefRecord.getTraceId() + " - Error checking location", e); } return retVal; } @@ -2108,14 +2085,8 @@ public class PostShef { * ingest switch setting * @return */ - private IngestSwitch checkIngest(String locId, ShefData data, - ShefConstants.IngestSwitch ingestSwitch) { - if (log.isDebugEnabled()) { - log.debug("PostShef.checkIngest() called..."); - } - StringBuffer errorMsg = new StringBuffer(); - CoreDao dao = null; - CoreDao locDao = null; + private IngestSwitch checkIngest(String locId, ShefData data) { + StringBuilder errorMsg = new StringBuilder(); boolean matchFound = false; int hNum = 0; int pNum = 0; @@ -2139,60 +2110,54 @@ public class PostShef { boolean resFound = false; String telem = null; String sql = null; + Object[] oa = null; + + IngestfilterId key = data.getIngestFilterKey();// .getPeDTsE(); + + // Default to off + ShefConstants.IngestSwitch ingestSwitch = IngestSwitch.POST_PE_OFF; try { - errorMsg.append("Error getting connection to IHFS Database"); - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - sql = "select lid, pe, dur, ts, extremum, ts_rank, ingest, ofs_input, " - + "stg2_input from IngestFilter where lid = '" - + locId - + "'"; - if (log.isDebugEnabled()) { - log.debug("SQL Query = " + sql); - } - errorMsg.setLength(0); - errorMsg.append("Error requesting IngestFilter data: " + sql); - Object[] oa = dao.executeSQLQuery(sql); - if (oa.length > 0) { - for (int i = 0; i < oa.length; i++) { - Object[] oa2 = (Object[]) oa[i]; - String pe = ShefUtil.getString(oa2[1],""); - int dur = ShefUtil.getInt(oa2[2],-9999); - String ts = ShefUtil.getString(oa2[3],""); - String extremum = ShefUtil.getString(oa2[4],""); - // int tsRank = (Short) oa2[5]; - String ingest = ShefUtil.getString(oa2[6],""); - // String ofs_input = (String) oa2[7]; - String stg2_input = ShefUtil.getString(oa2[8],""); + if (!ingestSwitchMap.containsKey(key)) { + sql = "select lid, pe, dur, ts, extremum, ts_rank, ingest, ofs_input, stg2_input from IngestFilter where lid = '" + + locId + "'"; + errorMsg.append("Error requesting IngestFilter data: " + sql); + oa = dao.executeSQLQuery(sql); + if (oa.length > 0) { + for (int i = 0; i < oa.length; i++) { + Object[] oa2 = (Object[]) oa[i]; + String pe = ShefUtil.getString(oa2[1], ""); + int dur = ShefUtil.getInt(oa2[2], -9999); + String ts = ShefUtil.getString(oa2[3], ""); + String extremum = ShefUtil.getString(oa2[4], ""); + String ingest = ShefUtil.getString(oa2[6], ""); + String stg2_input = ShefUtil.getString(oa2[8], ""); - if (pe.equals(data.getPhysicalElement().getCode()) - && ts.equals(data.getTypeSource().getCode()) - && extremum.equals(data.getExtremum().getCode()) - && (dur == data.getDurationValue())) { - if ("T".equals(ingest)) { - if ("T".equals(stg2_input)) { - ingestSwitch = ShefConstants.IngestSwitch.POST_PE_AND_HOURLY; - } else { - ingestSwitch = ShefConstants.IngestSwitch.POST_PE_ONLY; - } - } else { - if (elgMess) { - if (log.isDebugEnabled()) { - log.debug(locId + " - " - + data.getPhysicalElement() + "(" - + data.getDuration() + ")" - + data.getTypeSource() - + data.getExtremum() - + " ingest filter set to False"); + if (pe.equals(data.getPhysicalElement().getCode()) + && ts.equals(data.getTypeSource().getCode()) + && extremum + .equals(data.getExtremum().getCode()) + && (dur == data.getDurationValue())) { + if ("T".equals(ingest)) { + if ("T".equals(stg2_input)) { + ingestSwitch = ShefConstants.IngestSwitch.POST_PE_AND_HOURLY; + } else { + ingestSwitch = ShefConstants.IngestSwitch.POST_PE_ONLY; } + } else { + ingestSwitch = ShefConstants.IngestSwitch.POST_PE_OFF; } - ingestSwitch = ShefConstants.IngestSwitch.POST_PE_OFF; + matchFound = true; + ingestSwitchMap.put(key, ingestSwitch); + break; } - matchFound = true; - break; } } } + + matchFound = ingestSwitchMap.containsKey(key); + ingestSwitch = ingestSwitchMap.get(key); + /* * if there is no ingest record for this entry, then check if the * user options instruct the loading of the ingest info. if the user @@ -2231,7 +2196,6 @@ public class PostShef { errorMsg.setLength(0); errorMsg.append("PostgreSQL error putting data into IngestFilter"); dao.saveOrUpdate(ingestFilter); - prevLid = locId; /* * since the elements defined in Ingest Filter have an impact on @@ -2279,45 +2243,48 @@ public class PostShef { */ isOffriv = fpFound; isRes = resFound; - /* get data elements defined for station */ errorMsg.setLength(0); - errorMsg.append("Error getting PE codes from IngestFilter: " - + sql); + errorMsg.append("Error getting PE codes from IngestFilter: ") + .append(sql); sql = "select pe from IngestFilter where lid = '" + locId + "' and ingest = 'T'"; oa = dao.executeSQLQuery(sql); if (oa.length > 0) { - hNum = checkPeMatch(oa, + String[] sa = new String[oa.length]; + for (int i = 0; i < oa.length; i++) { + sa[i] = ShefUtil.getString(oa[i], ""); + } + hNum = checkPeMatch(sa, PhysicalElementCategory.HEIGHT.getCode()); - qNum = checkPeMatch(oa, + qNum = checkPeMatch(sa, PhysicalElementCategory.DISCHARGE.getCode()); - sNum = checkPeMatch(oa, + sNum = checkPeMatch(sa, PhysicalElementCategory.SNOW.getCode()); - tNum = checkPeMatch(oa, + tNum = checkPeMatch(sa, PhysicalElementCategory.TEMPERATURE.getCode()); - pNum = checkPeMatch(oa, + pNum = checkPeMatch(sa, PhysicalElementCategory.PRECIPITATION.getCode()); - paNum = checkPeMatch(oa, + paNum = checkPeMatch(sa, PhysicalElement.PRESSURE_ATMOSPHERIC.getCode()); pNum = pNum - paNum; - numPe = oa.length; + numPe = sa.length; /* * also, a station is a reservoir if it has a param type of * HP or HT or LS */ - if ((checkPeMatch(oa, + if ((checkPeMatch(sa, PhysicalElement.ELEVATION_POOL.getCode()) > 0) - || (checkPeMatch(oa, + || (checkPeMatch(sa, PhysicalElement.ELEVATION_PROJECT_TAIL .getCode()) > 0) - || (checkPeMatch(oa, + || (checkPeMatch(sa, PhysicalElement.LAKE_STORAGE_VOLUME .getCode()) > 0)) { isRes = true; @@ -2341,7 +2308,7 @@ public class PostShef { isPrecip = (pNum > 0); isSnow = (sNum > 0); isTemp = (tNum > 0); - + } else { numPe = 0; } @@ -2361,7 +2328,7 @@ public class PostShef { * into the StnClass table. */ Stnclass stnClass = new Stnclass(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); if (isOffriv) { sb.append("F"); @@ -2405,11 +2372,8 @@ public class PostShef { stnClass.setLid(locId); - locDao = new CoreDao(DaoConfig.forClass(ShefConstants.IHFS, - com.raytheon.uf.common.dataplugin.shef.tables.Location.class)); - - List fields = new ArrayList(); - List values = new ArrayList(); + List fields = new ArrayList(1); + List values = new ArrayList(1); fields.add("lid"); values.add(locId); @@ -2420,33 +2384,27 @@ public class PostShef { .get(0); } stnClass.setLocation(loc); - // stnClass.setObserver(); stnClass.setTraceId(shefRecord.getTraceId()); errorMsg.setLength(0); - errorMsg.append("Error on saveOrUpdate stnclass table: " + sql); + errorMsg.append("Error on saveOrUpdate stnclass table: ") + .append(sql); dao.saveOrUpdate(stnClass); /* since a record was added, set the match_found variable */ matchFound = true; - } + } } catch (Exception e) { log.error("Query = [" + sql + "]"); - log.error(shefRecord.getTraceId() + " - " + errorMsg.toString()); - if(log.isDebugEnabled()) { - log.error(e); - } + log.error(shefRecord.getTraceId() + " - " + errorMsg.toString(), e); stats.incrementErrorMessages(); } // *************************************************** if (!matchFound) { - if (ingestMess) { - log.warn(locId + " - " + data.getPhysicalElement() + "(" - + data.getDuration() + ")" + data.getTypeSource() - + data.getExtremum() + " ingest " - + "filter not defined"); - } + log.warn(locId + " - " + data.getPhysicalElement() + "(" + + data.getDuration() + ")" + data.getTypeSource() + + data.getExtremum() + " ingest filter not defined"); stats.incrementWarningMessages(); ingestSwitch = ShefConstants.IngestSwitch.POST_PE_OFF; } @@ -2464,27 +2422,20 @@ public class PostShef { * @return - number of records in the table */ private int recordCount(String table, String where) { - if (log.isDebugEnabled()) { - log.debug("PostShef.recordCount() called..."); - } int retVal = 0; - CoreDao dao = null; - StringBuffer sql = new StringBuffer("Select count(*) from " + table); + StringBuilder sql = new StringBuilder("Select count(*) from ") + .append(table); if (where != null) { sql.append(where); } try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); Object[] oa = dao.executeSQLQuery(sql.toString()); - retVal = ShefUtil.getInt(oa[0],0); + retVal = ShefUtil.getInt(oa[0], 0); } catch (Exception e) { log.error("Query = [" + sql.toString() + "]"); log.error(shefRecord.getTraceId() + " - An error occurred in recordCount: " + table + " - " - + sql); - if(log.isDebugEnabled()) { - log.error(e); - } + + sql, e); } return retVal; } @@ -2498,22 +2449,12 @@ public class PostShef { * - PE code or PE category code to search for * @return - number of matches found in the array */ - private int checkPeMatch(Object[] oa, String findPeCode) { - if (log.isDebugEnabled()) { - log.debug("PostShef.checkPeMatch() called..."); - } + private int checkPeMatch(String[] sa, String findPeCode) { int retVal = 0; - if (oa.length > 0) { - - for (Object o : oa) { - - String lookIn = ShefUtil.getString(o,""); - if (lookIn.startsWith(findPeCode)) { - retVal++; - } - + for (String s : sa) { + if (s.startsWith(findPeCode)) { + retVal++; } - } return retVal; } @@ -2527,65 +2468,73 @@ public class PostShef { * - data object */ private void adjustRawValue(String locId, ShefData data) { - if (log.isDebugEnabled()) { - log.debug("PostShef.adjustRawValue() called..."); + String key = locId + data.getPhysicalElement().getCode() + + data.getDurationValue() + data.getTypeSource().getCode() + + data.getExtremum().getCode(); + // Check for existing adjust values + if (!adjustmentMap.containsKey(key)) { + // need to look up the adjust values + double divisor = 1.0; + double base = 0.0; + double multiplier = 1.0; + double adder = 0.0; + + StringBuilder sql = new StringBuilder(); + try { + sql.append("select divisor, base, multiplier, adder from adjustfactor "); + + sql.append("where lid = '").append(locId) + .append("' and pe = '"); + sql.append(data.getPhysicalElement().getCode()).append( + "' and dur = "); + sql.append(data.getDurationValue()).append(" and ts = '"); + sql.append(data.getTypeSource().getCode()).append( + "' and extremum = '"); + sql.append(data.getExtremum().getCode()).append("'"); + Object[] oa = dao.executeSQLQuery(sql.toString()); + if (oa.length > 0) { + Object[] oa2 = (Object[]) oa[0]; + + /* if Correction Factor divisor value is NULL, set it to 1.0 */ + divisor = ShefUtil.getDouble(oa2[0], 1.0); + /* + * if divisor is ZERO, set it to 1.0, DON'T WANT TO DIVIDE + * BY ZERO + */ + if (divisor == 0) { + log.warn("Divisor = 0.0 in adjustfactor " + + sql.toString()); + divisor = 1; + } + base = ShefUtil.getDouble(oa2[1], 0.0); + multiplier = ShefUtil.getDouble(oa2[2], 1.0); + adder = ShefUtil.getDouble(oa2[3], 0.0); + + ShefAdjustFactor af = new ShefAdjustFactor(divisor, base, + multiplier, adder); + adjustmentMap.put(key, af); + } else { + adjustmentMap.put(key, null); + } + } catch (Exception e) { + log.error("Query = [" + sql.toString() + "]"); + log.error(shefRecord.getTraceId() + + " - Error adjusting raw value", e); + return; + } } - double divisor = 1.0; - double base = 0.0; - double multiplier = 1.0; - double adder = 0.0; - CoreDao dao = null; - String sql = null; - try { - /* Get a Data Access Object */ - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); + /* + * calculate adjusted value using an equation similar to HydroMet + */ + ShefAdjustFactor factor = adjustmentMap.get(key); + if (factor != null) { + data.adjustValue(factor.getDivisor(), factor.getBase(), + factor.getMultiplier(), factor.getAdder()); + } - sql = "select divisor, base, multiplier, adder from " - + "adjustfactor "; - - String where = "where lid = '" + locId + "' and pe = '" - + data.getPhysicalElement().getCode() + "' and dur = " - + data.getDurationValue() + " and ts = '" - + data.getTypeSource().getCode() + "' and extremum = '" - + data.getExtremum().getCode() + "'"; - - sql = sql + where; - if (log.isDebugEnabled()) { - log.debug("value adjustment query [" + sql + "]"); - } - Object[] oa = dao.executeSQLQuery(sql); - if (oa.length > 0) { - Object[] oa2 = (Object[]) oa[0]; - - /* if Correction Factor divisor value is NULL, set it to 1.0 */ - divisor = ShefUtil.getDouble(oa2[0], 1.0); - // if divisor is ZERO, set it to 1.0, DON'T WANT TO DIVIDE BY - // ZERO - if (divisor == 0) { - log.error("Divisor = 0.0 in adjustfactor " + where); - divisor = 1; - } - base = ShefUtil.getDouble(oa2[1], 0.0); - multiplier = ShefUtil.getDouble(oa2[2], 1.0); - adder = ShefUtil.getDouble(oa2[3], 0.0); - - /* - * calculate adjusted value using an equation similar to - * HydroMet - */ - data.adjustValue(divisor, base, multiplier, adder); - - if (dataLog) { - log.info(locId + " Adjusting Value"); - } - } - } catch (Exception e) { - log.error("Query = [" + sql + "]"); - log.error(shefRecord.getTraceId() + " - Error adjusting raw value"); - if(log.isDebugEnabled()) { - log.error(e); - } + if (dataLog) { + log.info(locId + " Adjusting Value for " + data.getLocationId()); } } @@ -2600,31 +2549,19 @@ public class PostShef { * - The observation time */ private void postProductLink(String locId, String productId, Date obsTime) { - if (log.isDebugEnabled()) { - log.debug("PostShef.postProductLink() called..."); - } - CoreDao dao = null; PersistableDataObject link = null; + + postDate.setTime(getToNearestSecond(TimeUtil.currentTimeMillis())); try { /* Get a Data Access Object */ - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - link = new Productlink(new ProductlinkId(locId, productId, obsTime, postDate)); - if (log.isDebugEnabled()) { - log.debug("Storing data to Productlink table for ProductId " - + productId); - } - dao.saveOrUpdate(link); } catch (Exception e) { log.error(shefRecord.getTraceId() + " - Error writing to productlink table(" + locId + ", " - + productId + ", " + obsTime.toString() + ")"); - if(log.isDebugEnabled()) { - log.error(e); - } + + productId + ", " + obsTime.toString() + ")", e); } } @@ -2647,28 +2584,14 @@ public class PostShef { */ private long checkQuality(String lid, String dataQualifier, String dataValue, ShefData data) { - if (log.isDebugEnabled()) { - log.debug("PostShef.checkQuality() called..."); - } double missing = ShefConstants.SHEF_MISSING_INT; long qualityCode = ShefConstants.DEFAULT_QC_VALUE; String monthdaystart = null; String monthdayend = null; - double grossRangeMin = missing; - double grossRangeMax = missing; - double reasonRangeMin = missing; - double reasonRangeMax = missing; - double alertUpperLimit = missing; - double alarmUpperLimit = missing; - double alertLowerLimit = missing; - double alarmLowerLimit = missing; alertAlarm = ShefConstants.NO_ALERTALARM; - if (log.isDebugEnabled()) { - log.debug("DataValue = " + dataValue); - } double dValue = 0; // if the dataValue = -9999 (missing data) @@ -2680,40 +2603,45 @@ public class PostShef { dValue = Double.parseDouble(dataValue); } catch (NumberFormatException e) { log.error("Double conversion failed for data value = '" + dataValue - + "'"); + + "'", e); + return ShefConstants.QC_MANUAL_FAILED; } - - boolean locRangeFound = false; - boolean defRangeFound = false; - boolean validDateRange = false; - - CoreDao dao = null; StringBuilder locLimitSql = new StringBuilder(); - StringBuilder defLimitSql = null; + StringBuilder defLimitSql = new StringBuilder(); + String key = lid + data.getPhysicalElement().getCode() + + data.getDurationValue(); try { - /* Get a Data Access Object */ - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); + if (!dataRangeMap.containsKey(key)) { + String sqlStart = "select monthdaystart, monthdayend, gross_range_min, gross_range_max, reason_range_min, " + + "reason_range_max, roc_max, alert_upper_limit, alert_roc_limit, alarm_upper_limit, " + + "alarm_roc_limit, alert_lower_limit, alarm_lower_limit, alert_diff_limit, " + + "alarm_diff_limit, pe, dur from "; - String sqlStart = "select monthdaystart, monthdayend, gross_range_min, gross_range_max, reason_range_min, " - + "reason_range_max, roc_max, alert_upper_limit, alert_roc_limit, alarm_upper_limit, " - + "alarm_roc_limit, alert_lower_limit, alarm_lower_limit, alert_diff_limit, " - + "alarm_diff_limit, pe, dur from "; + locLimitSql.append(sqlStart); + locLimitSql.append("locdatalimits where "); + locLimitSql.append("lid = '").append(lid) + .append("' and pe = '") + .append(data.getPhysicalElement().getCode()) + .append("' and dur = ").append(data.getDurationValue()); - locLimitSql.append(sqlStart); - locLimitSql.append("locdatalimits where "); - locLimitSql.append("lid = '" + lid + "' and pe = '" - + data.getPhysicalElement().getCode() + "' and " + "dur = " - + data.getDurationValue()); + Object[] oa = dao.executeSQLQuery(locLimitSql.toString()); - if (log.isDebugEnabled()) { - log.debug("LocLimit query [" + locLimitSql.toString() + "]"); - } - Object[] oa = dao.executeSQLQuery(locLimitSql.toString()); + if (oa.length == 0) { + dataRangeMap.put(key, null); + // default range + defLimitSql = new StringBuilder(sqlStart); + defLimitSql.append("datalimits where pe = '") + .append(data.getPhysicalElement().getCode()) + .append("' and dur = ") + .append(data.getDurationValue()); - if (oa.length > 0) { // Location specific range is defined - if (log.isDebugEnabled()) { - log.debug("Found data in location specific range"); + oa = dao.executeSQLQuery(defLimitSql.toString()); + key = data.getPhysicalElement().getCode() + + data.getDurationValue(); + if (oa.length == 0) { + dataRangeMap.put(key, null); + } } for (int i = 0; i < oa.length; i++) { @@ -2725,110 +2653,72 @@ public class PostShef { validDateRange = checkRangeDate( data.getObservationTimeObj(), monthdaystart, - monthdayend,log); + monthdayend); if (validDateRange) { - grossRangeMin =ShefUtil.getDouble(oa2[2], missing); - - grossRangeMax = ShefUtil.getDouble(oa2[3], missing); - - reasonRangeMin = ShefUtil.getDouble(oa2[4], missing); - - reasonRangeMax = ShefUtil.getDouble(oa2[5], missing); - - alertUpperLimit = ShefUtil.getDouble(oa2[7], missing); - - alertLowerLimit = ShefUtil.getDouble(oa2[11], missing); - - alarmLowerLimit = ShefUtil.getDouble(oa2[12], missing); - - alarmUpperLimit = ShefUtil.getDouble(oa2[9], missing); - - locRangeFound = true; + /* + * if a range is found, then check the value and set the + * flag + */ + ShefRangeData rangeData = new ShefRangeData(); + rangeData.setGrossRangeMin(ShefUtil.getDouble(oa2[2], + missing)); + rangeData.setGrossRangeMax(ShefUtil.getDouble(oa2[3], + missing)); + rangeData.setReasonRangeMin(ShefUtil.getDouble(oa2[4], + missing)); + rangeData.setReasonRangeMax(ShefUtil.getDouble(oa2[5], + missing)); + rangeData.setAlarmLowerLimit(ShefUtil.getDouble( + oa2[12], missing)); + rangeData.setAlarmUpperLimit(ShefUtil.getDouble(oa2[9], + missing)); + rangeData.setAlertLowerLimit(ShefUtil.getDouble( + oa2[11], missing)); + rangeData.setAlertUpperLimit(ShefUtil.getDouble(oa2[7], + missing)); + this.dataRangeMap.put(key, rangeData); break; } } - } else { // Location specific range is undefined, check the - // default range - defLimitSql = new StringBuilder(sqlStart); - defLimitSql.append("datalimits where "); - defLimitSql.append("pe = '" + data.getPhysicalElement().getCode() - + "' and " + "dur = " + data.getDurationValue()); - - oa = dao.executeSQLQuery(defLimitSql.toString()); - if (oa.length > 0) { // Default range is defined - if (log.isDebugEnabled()) { - log.debug("Found data in default range"); - } - - for (int i = 0; i < oa.length; i++) { - Object[] oa2 = (Object[]) oa[i]; - - /* Check the date range */ - monthdaystart = ShefUtil.getString(oa2[0], "99-99"); - monthdayend = ShefUtil.getString(oa2[1], "00-00"); - - validDateRange = checkRangeDate( - data.getObservationTimeObj(), monthdaystart, - monthdayend,log); - - if (validDateRange) { - /* - * if a range is found, then check the value and set - * the flag - */ - grossRangeMin =ShefUtil.getDouble(oa2[2], missing); - - grossRangeMax = ShefUtil.getDouble(oa2[3], missing); - - reasonRangeMin = ShefUtil.getDouble(oa2[4], missing); - - reasonRangeMax = ShefUtil.getDouble(oa2[5], missing); - - alertUpperLimit = ShefUtil.getDouble(oa2[7], missing); - - alertLowerLimit = ShefUtil.getDouble(oa2[11], missing); - - alarmLowerLimit = ShefUtil.getDouble(oa2[12], missing); - - alarmUpperLimit = ShefUtil.getDouble(oa2[9], missing); - - defRangeFound = true; - break; - } - } - } } - if (locRangeFound || defRangeFound) { + ShefRangeData rangeData = dataRangeMap.get(key); + if (rangeData != null) { /* * if a range is found, then check the value and set the flag */ - if (((grossRangeMin != missing) && (dValue < grossRangeMin)) - || ((grossRangeMax != missing) && (dValue > grossRangeMax))) { + if (((rangeData.getGrossRangeMin() != missing) && (dValue < rangeData + .getGrossRangeMin())) + || ((rangeData.getGrossRangeMax() != missing) && (dValue > rangeData + .getGrossRangeMax()))) { qualityCode = ShefQC.setQcCode( (int) ShefConstants.QC_GROSSRANGE_FAILED, qualityCode); if (dataLog) { log.info(lid + " failed gross range check: " + dValue - + " out of range " + grossRangeMin + " - " - + grossRangeMax); + + " out of range " + + rangeData.getGrossRangeMin() + " - " + + rangeData.getGrossRangeMax()); } /* * don't do anything if it fails the gross range check */ } else { - if (((reasonRangeMin != missing) && (dValue < reasonRangeMin)) - || ((reasonRangeMax != missing) && (dValue > reasonRangeMax))) { + if (((rangeData.getReasonRangeMin() != missing) && (dValue < rangeData + .getReasonRangeMin())) + || ((rangeData.getReasonRangeMax() != missing) && (dValue > rangeData + .getReasonRangeMax()))) { qualityCode = ShefQC.setQcCode( (int) ShefConstants.QC_REASONRANGE_FAILED, qualityCode); if (dataLog) { log.info(lid + " failed reasonable range check: " + dValue + " out of range " - + reasonRangeMin + " - " + reasonRangeMax); + + rangeData.getReasonRangeMin() + " - " + + rangeData.getReasonRangeMax()); } } @@ -2838,17 +2728,17 @@ public class PostShef { * table. */ if (shefAlertAlarm) { - if ((alarmUpperLimit != missing) - && (dValue >= alarmUpperLimit)) { + if ((rangeData.getAlarmUpperLimit() != missing) + && (dValue >= rangeData.getAlarmUpperLimit())) { alertAlarm = ShefConstants.ALARM_UPPER_DETECTED; - } else if ((alertUpperLimit != missing) - && (dValue >= alertUpperLimit)) { + } else if ((rangeData.getAlertUpperLimit() != missing) + && (dValue >= rangeData.getAlertUpperLimit())) { alertAlarm = ShefConstants.ALERT_UPPER_DETECTED; - } else if ((alarmLowerLimit != missing) - && (dValue <= alarmLowerLimit)) { + } else if ((rangeData.getAlarmLowerLimit() != missing) + && (dValue <= rangeData.getAlarmLowerLimit())) { alertAlarm = ShefConstants.ALARM_LOWER_DETECTED; - } else if ((alertLowerLimit != missing) - && (dValue <= alertLowerLimit)) { + } else if ((rangeData.getAlertLowerLimit() != missing) + && (dValue <= rangeData.getAlertLowerLimit())) { alertAlarm = ShefConstants.ALERT_LOWER_DETECTED; } @@ -2884,12 +2774,10 @@ public class PostShef { } } } catch (Exception e) { - log.error("Error in checkQuality() for " + shefRecord.getTraceId(),e); log.info("locdatalimits query = [" + locLimitSql.toString() + "]"); log.info("datalimits query = [" + defLimitSql.toString() + "]"); - if(log.isDebugEnabled()) { - log.error(e); - } + log.error("Error in checkQuality() for " + shefRecord.getTraceId(), + e); stats.incrementErrorMessages(); } @@ -2907,9 +2795,6 @@ public class PostShef { * @return true if the qualityCode is of "Higher" quality */ private boolean checkQcCode(QualityControlCode checkCode, long qualityCode) { - if (log.isDebugEnabled()) { - log.debug("PostShef.checkQcCode() called..."); - } boolean returnValue = false; switch (checkCode) { case QC_DEFAULT: @@ -2948,7 +2833,6 @@ public class PostShef { break; default: log.error("Invalid request made in checkQcCode() method."); - // returnValue = ShefConstants.INVALID_QC_REQUEST; returnValue = false; break; } @@ -2962,9 +2846,6 @@ public class PostShef { * has data for a special paired-and-dependent set of data. */ private boolean checkIfPaired(ShefData data) { - if (log.isDebugEnabled()) { - log.debug("PostShef.checkIfPaired() called..."); - } boolean isPaired = false; PhysicalElement pe = data.getPhysicalElement(); if (pe != null) { @@ -2999,30 +2880,26 @@ public class PostShef { * @return - true if the data time is within the range */ private static boolean checkRangeDate(Date obsTime, String monthDayStart, - String monthDayEnd, Log log) { + String monthDayEnd) { boolean valid = false; - if (log != null && log.isDebugEnabled()) { - log.debug("PostShef.checkRangeDate() ..."); - } - if(obsTime != null) { - if((monthDayStart != null)&&(monthDayEnd != null)) { - if((monthDayStart.length() == 5)&&(monthDayEnd.length() == 5)) { - - int rangeStartDate = Integer.parseInt(monthDayStart.substring(0, 2)) * 100; - rangeStartDate += Integer.parseInt(monthDayStart.substring(3)); - - int rangeEndDate = Integer.parseInt(monthDayEnd.substring(0, 2)) * 100; - rangeEndDate += Integer.parseInt(monthDayEnd.substring(3)); - - Calendar date = TimeTools.getSystemCalendar(); - date.setTime(obsTime); + if (obsTime != null && (monthDayStart != null) && (monthDayEnd != null)) { + if ((monthDayStart.length() == 5) && (monthDayEnd.length() == 5)) { - int dataDate = (date.get(Calendar.MONTH) + 1) * 100; - dataDate += date.get(Calendar.DAY_OF_MONTH); + int rangeStartDate = Integer.parseInt(monthDayStart.substring( + 0, 2)) * 100; + rangeStartDate += Integer.parseInt(monthDayStart.substring(3)); - /* Compare the dates, don't check for straddling the year */ - valid = ((dataDate >= rangeStartDate) && (dataDate <= rangeEndDate)); - } + int rangeEndDate = Integer + .parseInt(monthDayEnd.substring(0, 2)) * 100; + rangeEndDate += Integer.parseInt(monthDayEnd.substring(3)); + + Calendar date = TimeUtil.newGmtCalendar(obsTime); + + int dataDate = (date.get(Calendar.MONTH) + 1) * 100; + dataDate += date.get(Calendar.DAY_OF_MONTH); + + /* Compare the dates, don't check for straddling the year */ + valid = ((dataDate >= rangeStartDate) && (dataDate <= rangeEndDate)); } } return valid; @@ -3051,6 +2928,7 @@ public class PostShef { ShefData data, String locId, String tableName, String dataValue, String qualifier, long qualityCode) { PersistableDataObject dataObj = null; + postDate.setTime(getToNearestSecond(TimeUtil.currentTimeMillis())); if (ShefConstants.COMMENT_VALUE.equalsIgnoreCase(tableName)) { Commentvalue comment = new Commentvalue(new CommentvalueId()); @@ -3060,7 +2938,7 @@ public class PostShef { } if (dataValue == "") { - dataValue = "-9999"; + dataValue = ShefConstants.SHEF_MISSING; } short revision = 0; if (data.isRevisedRecord()) { @@ -3287,7 +3165,6 @@ public class PostShef { unkstnvalue.setIdentifier(unkstnvalue.getId()); unkstnvalue.getId().setIdentifier(unkstnvalue.getId()); unkstnvalue.getId().setRevision(revision); - // unkstnvalue.getId().setShefQualCode(qualifier); unkstnvalue.getId().setShefQualCode("Z"); unkstnvalue.getId().setProductId(prodId); unkstnvalue.getId().setProducttime(prodTime); @@ -3300,41 +3177,35 @@ public class PostShef { return dataObj; } - /** + * Convert the provided millisecond value to the nearest second. * - * @param c - * @return + * @param time + * time in milliseconds + * + * @return milliseconds rounded to the nearest second. */ - private static String toTimeStamp(Date d) { - String timeStamp = null; - if(d != null) { - timeStamp = DB_TIMESTAMP.format(d); - } - return timeStamp; + private long getToNearestSecond(long time) { + // Force time to nearest second. + return time - (time % 1000); } - /** - * - * @param c - * @return - */ - private static String toTimeStamp(Calendar c) { - return toTimeStamp(c.getTime()); + public void close() { + postTables.close(); } - + public static final void main(String[] args) { - Calendar postDate = TimeTools.getBaseCalendar(2011, 1, 12); + Calendar postDate = TimeUtil.newGmtCalendar(2011, 1, 12); postDate.set(Calendar.HOUR_OF_DAY, 17); postDate.set(Calendar.MINUTE, 25); - Calendar obsTimef = TimeTools.getBaseCalendar(2011, 1, 12); + Calendar obsTimef = TimeUtil.newGmtCalendar(2011, 1, 12); obsTimef.set(Calendar.HOUR_OF_DAY, 17); obsTimef.set(Calendar.MINUTE, 25); obsTimef.add(Calendar.DAY_OF_MONTH, -30); - Calendar obsTimeb = TimeTools.getBaseCalendar(2011, 1, 12); + Calendar obsTimeb = TimeUtil.newGmtCalendar(2011, 1, 12); obsTimeb.set(Calendar.HOUR_OF_DAY, 17); obsTimeb.set(Calendar.MINUTE, 25); obsTimeb.add(Calendar.MINUTE, 10); @@ -3352,21 +3223,22 @@ public class PostShef { System.out.println(diffb + " " + lookfwdMillis); System.out.println(diffb > lookfwdMillis); - - + SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMDDhhmmssZ"); sdf.setTimeZone(SHEFTimezone.GMT_TIMEZONE); try { Date d = sdf.parse("20110228102100-0000"); - + System.out.println(sdf.format(d)); - System.out.println(checkRangeDate(d, "01-01", "12-31", null) + " expected true"); - System.out.println(checkRangeDate(d, "03-01", "10-01", null) + " expected false"); - System.out.println(checkRangeDate(d, "99-99", "00-00", null) + " expected false"); - + System.out.println(checkRangeDate(d, "01-01", "12-31") + + " expected true"); + System.out.println(checkRangeDate(d, "03-01", "10-01") + + " expected false"); + System.out.println(checkRangeDate(d, "99-99", "00-00") + + " expected false"); + } catch (ParseException e) { e.printStackTrace(); - } - + } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostTables.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostTables.java index 1fc27abaf0..771e671f8e 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostTables.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PostTables.java @@ -22,14 +22,15 @@ package com.raytheon.edex.plugin.shef.database; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.PreparedStatement; +import java.sql.SQLException; import java.sql.Timestamp; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.hibernate.connection.ConnectionProvider; -import org.hibernate.engine.SessionFactoryImplementor; +import org.hibernate.engine.spi.SessionFactoryImplementor; +import org.hibernate.service.jdbc.connections.spi.ConnectionProvider; import com.raytheon.edex.plugin.shef.data.ShefData; import com.raytheon.edex.plugin.shef.data.ShefRecord; @@ -58,6 +59,8 @@ import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.PhysicalElement import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.PhysicalElementCategory; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; @@ -81,6 +84,10 @@ import com.raytheon.uf.edex.database.dao.DaoConfig; * 11/29/2012 15530 lbousaidi corrected posting and production time for * latestobsvalue table. * 09/19/2013 16515 w. Kwock Fix the excessive digits in rawpp,lake,height...tables + * 04/29/2014 3088 mpduff Change logging class, clean up/optimization. + * More performance fixes. + * 09/03/2014 mpduff postRiverStatus() writes directly, not via batch + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -90,15 +97,48 @@ import com.raytheon.uf.edex.database.dao.DaoConfig; public class PostTables { - private static final Log log = LogFactory - .getLog(com.raytheon.edex.plugin.shef.database.PostTables.class); + /** The logger */ + private static final IUFStatusHandler log = UFStatus + .getHandler(PostTables.class); + + private static final String SHEF_DUP_TOKEN = ShefConstants.SHEF_DUPLICATE; + + private static final String RIVER_STATUS_INSERT_STATEMENT = "INSERT INTO riverstatus values(?,?,?,?,?,?,?,?,?)"; + + private static final String RIVER_STATUS_UPDATE_STATEMENT = "UPDATE riverstatus SET lid = ? , " + + "pe = ? , " + + "dur = ? , " + + "ts = ? , " + + "extremum = ? ," + + "probability = ? , " + + "validtime = ? , " + + "basistime = ? , " + + "value = ? " + "WHERE lid= ? AND pe= ? AND ts= ?"; private static GagePPOptions gagePPOptions; - public static void PostTablesInit() { + private CoreDao dao; + + private Connection conn; + + private ConnectionProvider cp; + + private Map statementMap = new HashMap(); + + static { gagePPSetup(); } - + + /** + * Constructor + */ + public PostTables() { + dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); + SessionFactoryImplementor impl = (SessionFactoryImplementor) dao + .getSessionFactory(); + cp = impl.getConnectionProvider(); + } + /** * Post data to the latest observed table, if appropriate. Only post if it * is the latest data. @@ -133,15 +173,12 @@ public class PostTables { * - option indicating to post duplicate data or not * @param stats * - stats object + * @param postTime */ - public static synchronized void postLatestObs(ShefRecord record, - ShefData shefData, String locId, String dataValue, - String qualifier, long qualityCode, String productId, - Date productTime, String duplicateOption, ShefStats stats, - Date postTime) { - if (log.isDebugEnabled()) { - log.debug("PostTables.postLatestObs() called..."); - } + public void postLatestObs(ShefRecord record, ShefData shefData, + String locId, String dataValue, String qualifier, long qualityCode, + String productId, Date productTime, String duplicateOption, + ShefStats stats, Date postTime) { long start = 0; long end = 0; @@ -160,30 +197,13 @@ public class PostTables { /* now call the PostgreSQL function */ start = System.currentTimeMillis(); - int status = execFunction(procName, record, shefData, locId, dataValue, - qualifier, qualityCode, productId, productTime, postTime, - duplicateOption, stats); + execFunction(procName, record, shefData, locId, dataValue, qualifier, + qualityCode, productId, productTime, postTime, duplicateOption, + stats); end = System.currentTimeMillis(); - if (log.isDebugEnabled()) { - log.debug("ExecFunction(" + procName + ") completed"); - log.debug("PE Store took " + (end - start) + " milliseconds"); - } - if (status < 0) { - log.error(record.getTraceId() + " - PostgresSQL error " + status - + " executing " + procName + " function for " + locId - + ", " + shefData.getObservationTimeObj().toString() + ", " - + productTime.toString() + ", " + productId + ", " - + postTime.toString()); - stats.incrementErrorMessages(); - } else { - end = System.currentTimeMillis(); - stats.addElapsedTimeIngest(end - start); - stats.incrementLatestObs(); - if (log.isDebugEnabled()) { - log.debug("Latest obs store took " + (end - start) - + " milliseconds"); - } - } + end = System.currentTimeMillis(); + stats.addElapsedTimeIngest(end - start); + stats.incrementLatestObs(); } /** @@ -199,19 +219,14 @@ public class PostTables { * @param productTime * @param duplicateOption * @param stats + * @param postTime */ - public static synchronized void postPairedData(ShefRecord record, - ShefData shefData, String locId, String dataValue, - String qualifier, long qualityCode, String productId, - Date productTime, String duplicateOption, ShefStats stats, - Date postTime) { - if (log.isDebugEnabled()) { - log.debug("PostTables.postPairedData() called..."); - } + public void postPairedData(ShefRecord record, ShefData shefData, + String locId, String dataValue, String qualifier, long qualityCode, + String productId, Date productTime, String duplicateOption, + ShefStats stats, Date postTime) { int refValue = -9999; - boolean isNegative = false; - double value = -9999; String pe = shefData.getPhysicalElement().getCode(); short dur = Short.parseShort(shefData.getDuration().getValue() + ""); String ts = shefData.getTypeSource().getCode(); @@ -226,9 +241,7 @@ public class PostTables { basisTime = new Date(postTime.getTime()); } - long start = 0; - long end = 0; - if (dataValue == "") { + if (dataValue.equals("")) { dataValue = ShefConstants.SHEF_MISSING; } @@ -302,34 +315,25 @@ public class PostTables { id.setTs(shefData.getTypeSource().getCode()); id.setValidtime(shefData.getObservationTimeObj()); - CoreDao dao = null; - StringBuilder sql = new StringBuilder(); + String sql = null; + try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); // lid, pe, dur, ts, extremum, probability, validtime, basistime, // ref_value - sql.append("select value from pairedvalue where lid = '" + locId - + "' and pe = '" + pe + "' and "); - sql.append("dur = " + dur + " and ts = '" + ts - + "' and extremum = '" + extremum + "' and "); - sql.append("probability = " + probability + " and validtime = '" + sql = "select value from pairedvalue where lid = '" + locId + + "' and pe = '" + pe + "' and dur = " + dur + + " and ts = '" + ts + "' and extremum = '" + extremum + + "' and probability = " + probability + + " and validtime = '" + ShefConstants.POSTGRES_DATE_FORMAT.format(validTime) - + "' and "); - sql.append("basistime = '" + + "' and basistime = '" + ShefConstants.POSTGRES_DATE_FORMAT.format(basisTime) - + "' and "); - sql.append("ref_value = " + refValue); + + "' and ref_value = " + refValue; Object[] result = dao.executeSQLQuery(sql.toString()); if (result.length <= 0) { - start = System.currentTimeMillis(); dao.persist(pairedValue); - end = System.currentTimeMillis(); - if (log.isDebugEnabled()) { - log.debug("Paired Value store took " + (end - start) - + " milliseconds"); - } stats.incrementPaired(); } else { Double tableValue = (Double) result[0]; @@ -337,7 +341,6 @@ public class PostTables { shefData.isRevisedRecord()); if (doOverwrite > 0) { - start = System.currentTimeMillis(); switch (doOverwrite) { case ShefConstants.UPDATE_ACTION: dao.saveOrUpdate(pairedValue); @@ -348,18 +351,13 @@ public class PostTables { } break; } - end = System.currentTimeMillis(); - if (log.isDebugEnabled()) { - log.debug("Paired store took " + (end - start) - + " milliseconds"); - } stats.incrementPairedOver(); /* data was properly added to table */ stats.incrementRejected(); } else { - if (AppsDefaults.getInstance() - .getBoolean(ShefConstants.DUP_MESSAGE, false)) { + if (AppsDefaults.getInstance().getBoolean( + ShefConstants.DUP_MESSAGE, false)) { log.info("Ignoring duplicate PairedValue for " + locId + ", " + productId + ", " + shefData.getObservationTime()); @@ -369,10 +367,7 @@ public class PostTables { } } catch (Exception e) { log.error(record.getTraceId() + " - Error posting paired data"); - log.error("Query = [" + sql.toString() + "]"); - if(log.isDebugEnabled()) { - log.error(e); - } + log.error("Query = [" + sql.toString() + "]", e); stats.incrementErrorMessages(); } } @@ -389,21 +384,18 @@ public class PostTables { * @param productId * @param productTime * @param duplicateOption - * @param dataType * @param ingestSwitch * @param stats + * @param validTime + * @param postTime + * @param type */ - public static synchronized void postPeData(ShefRecord record, - ShefData shefData, String locId, String dataValue, - String qualifier, long qualityCode, String productId, - Date productTime, String duplicateOption, + public void postPeData(ShefRecord record, ShefData shefData, String locId, + String dataValue, String qualifier, long qualityCode, + String productId, Date productTime, String duplicateOption, ShefConstants.IngestSwitch ingestSwitch, ShefStats stats, Date validTime, Date postTime, DataType type) { - if (log.isDebugEnabled()) { - log.debug("PostTables.postPeData() called..."); - } - String procName = null; if (DataType.READING.equals(type)) { @@ -415,37 +407,22 @@ public class PostTables { if (precipIndex == ShefConstants.NOT_PRECIP) { procName = "obs_pe"; - if (log.isDebugEnabled()) { - log.debug("postPeData() procName = " + procName); - } - /* now call the PostgreSQL function */ } else { procName = "obs_precip"; - if (log.isDebugEnabled()) { - log.debug("postPeData() procName = " + procName); - } - /* * if gpp is enabled, and the switch for this record dictates, * write a copy of any precip report near the top-of-the-hour to * a file that will be sent to the gpp server after the product * is fully processed. if PP, only consider hourly data. */ - boolean gage_pp_enable = AppsDefaults.getInstance().getBoolean("gage_pp_enable", false); - if (log.isDebugEnabled()) { - log.debug("gage_pp_enable = " + gage_pp_enable); - log.debug("ingestSwitch = " + ingestSwitch); - } + boolean gage_pp_enable = AppsDefaults.getInstance().getBoolean( + "gage_pp_enable", false); - if (gage_pp_enable + if (gage_pp_enable && (ingestSwitch == ShefConstants.IngestSwitch.POST_PE_AND_HOURLY)) { - if (log.isDebugEnabled()) { - log.debug("gage_pp_enable && POST_PE_AND_HOURLY"); - } - PrecipRecord precip = new PrecipRecord(shefData); precip.setPostingTime(postTime); precip.setQualCode(qualityCode); @@ -453,7 +430,7 @@ public class PostTables { precip.setProductTime(productTime); PhysicalElement pe = shefData.getPhysicalElement(); - + if ((PhysicalElement.PRECIPITATION_INCREMENT.equals(pe)) && ((shefData.getDuration() == Duration._1_DAY) || (shefData.getDuration() == Duration._1_PERIOD) || (shefData @@ -466,18 +443,19 @@ public class PostTables { stats.incrementPrecipGpp(); } if ((PhysicalElement.PRECIPITATION_ACCUMULATOR.equals(pe)) - || ((PhysicalElement.PRECIPITATION_INCREMENT.equals(pe)) && ((shefData - .getDuration() == Duration._60_MINUTES) || (shefData + || ((PhysicalElement.PRECIPITATION_INCREMENT + .equals(pe)) && ((shefData.getDuration() == Duration._60_MINUTES) || (shefData .getDuration() == Duration._1_HOUR)))) { if (dataValue.equals("")) { - dataValue = "-9999.0"; + dataValue = ShefConstants.SHEF_MISSING; } - - if(PrecipUtils.checkPrecipWindow(shefData.getObsTime(), pe, gagePPOptions)) { + + if (PrecipUtils.checkPrecipWindow( + shefData.getObsTime(), pe, gagePPOptions)) { PrecipitationUtils.writePrecipGpp(shefData, record, - qualityCode, productId, productTime, postTime, - locId, qualifier, dataValue); + qualityCode, productId, productTime, + postTime, locId, qualifier, dataValue); writePrecip(precip); stats.incrementPrecipGpp(); } @@ -489,39 +467,22 @@ public class PostTables { procName = "fcst_pe"; } - long start = 0; - long end = 0; + long start = System.currentTimeMillis(); int status = -1; if (DataType.FORECAST.equals(type)) { - - start = System.currentTimeMillis(); - status = execFcstFunc(procName, record, shefData, locId, dataValue, qualifier, qualityCode, productId, productTime, postTime, duplicateOption, ingestSwitch, stats, validTime); - - end = System.currentTimeMillis(); - - if (log.isDebugEnabled()) { - log.debug("ExecFunction(" + procName + ") completed"); - log.debug("PE Store took " + (end - start) + " milliseconds"); - } - } else { /* now call the PostgreSQL function */ - start = System.currentTimeMillis(); status = execFunction(procName, record, shefData, locId, dataValue, qualifier, qualityCode, productId, productTime, postTime, duplicateOption, ingestSwitch, stats); - end = System.currentTimeMillis(); - - if (log.isDebugEnabled()) { - log.debug("ExecFunction(" + procName + ") completed"); - log.debug("PE Store took " + (end - start) + " milliseconds"); - } } + long end = System.currentTimeMillis(); + if (status < 0) { log.error(record.getTraceId() + " - PostgresSQL error " + status + " executing " + procName + " function for " + locId @@ -530,9 +491,6 @@ public class PostTables { + postTime.toString()); stats.incrementErrorMessages(); } else { - if (log.isDebugEnabled()) { - log.debug("ExecFunction(" + procName + ") completed normally"); - } if ((DataType.READING.equals(type)) || (DataType.PROCESSED.equals(type))) { stats.incrementObsPe(); @@ -571,19 +529,12 @@ public class PostTables { * @param precip * @return */ - private static int writePrecip(PrecipRecord precip) { - if (log.isDebugEnabled()) { - log.debug("calling GagePP.gage_pp_process_file"); - } + private int writePrecip(PrecipRecord precip) { GagePP gpw = new GagePP(); int status = gpw.gage_pp_process_file(precip, gagePPOptions); - if (log.isDebugEnabled()) { - log.debug("GagePP.gage_pp_process_file.status = " - + status); - } return status; } - + /** * * @param dataObj @@ -593,11 +544,11 @@ public class PostTables { * @param aaCategory * @param aaCheck */ - public static synchronized void postAAData(PersistableDataObject dataObj, - String tableName, String duplicateOption, ShefStats stats, - String aaCategory, String aaCheck) { - PostTables.postData(dataObj, tableName, duplicateOption, stats, - aaCategory, aaCheck); + public void postAAData(PersistableDataObject dataObj, String tableName, + String duplicateOption, ShefStats stats, String aaCategory, + String aaCheck) { + postData(dataObj, tableName, duplicateOption, stats, aaCategory, + aaCheck); } /** @@ -607,18 +558,14 @@ public class PostTables { * @param duplicateOption * @param stats */ - public static synchronized void postData(PersistableDataObject dataObj, - String tableName, String duplicateOption, ShefStats stats) { - PostTables.postData(dataObj, tableName, duplicateOption, stats, null, - null); + public void postData(PersistableDataObject dataObj, String tableName, + String duplicateOption, ShefStats stats) { + postData(dataObj, tableName, duplicateOption, stats, null, null); } - private static synchronized void postData(PersistableDataObject dataObj, - String tableName, String duplicateOption, ShefStats stats, - String aaCategory, String aaCheck) { - long start = 0; - long end = 0; - + private void postData(PersistableDataObject dataObj, String tableName, + String duplicateOption, ShefStats stats, String aaCategory, + String aaCheck) { String locId = null; String pe = null; short dur = -999; @@ -632,10 +579,7 @@ public class PostTables { short revision = -999; /* Build the sql query string */ - String sql = "select value from " + tableName + " "; - String where = ""; String appendStr = ""; - String update = "update " + tableName + " set value = "; if (dataObj instanceof Commentvalue) { Commentvalue value = (Commentvalue) dataObj; @@ -774,30 +718,20 @@ public class PostTables { appendStr = "obstime = '" + validTime + "'"; } - - where = "where lid = '" + locId + "' and pe = '" + pe + "' and " - + "dur = " + dur + " and ts = '" + ts + "' and " - + "extremum = '" + extremum + "' and " + appendStr; - sql += where; - update += "'" + dataValue + "' " + where; - if (log.isDebugEnabled()) { - log.debug("SQLQuery [" + sql + "]"); - } + StringBuilder sql = new StringBuilder("select value from ") + .append(tableName); + String where = " where lid = '" + locId + "' and pe = '" + pe + + "' and dur = " + dur + " and ts = '" + ts + + "' and extremum = '" + extremum + "' and " + appendStr; + sql.append(where); + String update = "update " + tableName + " set value = '" + dataValue + + "' " + where; int doOverwrite = 0; - CoreDao dao = null; try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - - Object[] result = dao.executeSQLQuery(sql); + Object[] result = dao.executeSQLQuery(sql.toString()); if (result.length <= 0) { - start = System.currentTimeMillis(); dao.persist(dataObj); - end = System.currentTimeMillis(); - if (log.isDebugEnabled()) { - log.debug(tableName + " store took " + (end - start) - + " milliseconds"); - } /* data was properly added to table */ if (dataObj instanceof Commentvalue) { @@ -823,23 +757,20 @@ public class PostTables { if (revision == 1) { isRevised = true; } - doOverwrite = PostTables.determineUpdateAction(duplicateOption, - isRevised); + doOverwrite = determineUpdateAction(duplicateOption, isRevised); /* if the record should be overwritten, then do so */ if (doOverwrite > 0) { - start = System.currentTimeMillis(); switch (doOverwrite) { case ShefConstants.UPDATE_ACTION: - dao.executeSQLUpdate(update); + dao.executeSQLUpdate(update.toString()); break; case ShefConstants.IF_DIFFERENT_UPDATE_ACTION: if (tableValue != dataValue) { - dao.executeSQLUpdate(update); + dao.executeSQLUpdate(update.toString()); } break; } - end = System.currentTimeMillis(); if (dataObj instanceof Commentvalue) { stats.incrementCommentOverwrite(); } else if (dataObj instanceof Contingencyvalue) { @@ -861,8 +792,8 @@ public class PostTables { /* * don't perform the overwrite since conditions were not met */ - if (AppsDefaults.getInstance() - .getBoolean(ShefConstants.DUP_MESSAGE, false)) { + if (AppsDefaults.getInstance().getBoolean( + ShefConstants.DUP_MESSAGE, false)) { log.info("Ignoring duplicate " + tableName + " for " + locId + ", " + validTime); } @@ -870,16 +801,13 @@ public class PostTables { } } } catch (Exception e) { - log.error(dataObj.getTraceId() + " - PostgresSQL error updating " - + tableName + " for " + locId + ", " + validTime); if (doOverwrite > 0) { log.error("Query = [" + update + "]"); } else { log.error("Query = [" + sql + "]"); } - if(log.isDebugEnabled()) { - log.error(e); - } + log.error(dataObj.getTraceId() + " - PostgresSQL error updating " + + tableName + " for " + locId + ", " + validTime, e); stats.incrementErrorMessages(); } } @@ -889,28 +817,16 @@ public class PostTables { * @param unkstn * @param stats */ - public static synchronized void postUnknownStation(Unkstn unkstn, - ShefStats stats) { + public void postUnknownStation(Unkstn unkstn, ShefStats stats) { /* Build the sql query string */ StringBuilder sql = new StringBuilder(); sql.append("select lid from unkstn where lid = '" + unkstn.getLid() + "'"); - long start = -999; - long end = -999; - CoreDao dao = null; try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - Object[] result = dao.executeSQLQuery(sql.toString()); if (result.length <= 0) { - start = System.currentTimeMillis(); dao.persist(unkstn); - end = System.currentTimeMillis(); - if (log.isDebugEnabled()) { - log.debug("Unkstn store took " + (end - start) - + " milliseconds"); - } /* data was properly added to table */ stats.incrementUnknownStation(); @@ -919,15 +835,13 @@ public class PostTables { stats.incrementUnknownStationOverwrite(); } } catch (Exception e) { - log.error(unkstn.getTraceId() - + " - PostgresSQL error updating UnkStn for " - + unkstn.getLid() + ", " - + unkstn.getProducttime().toString() + ", " - + unkstn.getPostingtime().toString()); log.error("Query = [" + sql.toString() + "]"); - if(log.isDebugEnabled()) { - log.error(e); - } + log.error( + unkstn.getTraceId() + + " - PostgresSQL error updating UnkStn for " + + unkstn.getLid() + ", " + + unkstn.getProducttime().toString() + ", " + + unkstn.getPostingtime().toString(), e); stats.incrementErrorMessages(); } } @@ -941,14 +855,7 @@ public class PostTables { * - is the data revised? * @return - int specifying what action to take */ - public static synchronized int determineUpdateAction(String option, - boolean isRevised) { - if (log.isDebugEnabled()) { - log.debug("PostTables.determineUpdateAction() called..."); - log.debug("Revised: [" + isRevised + "]"); - log.debug("Option = [" + option + "]"); - } - + public int determineUpdateAction(String option, boolean isRevised) { int updateAction = ShefConstants.DONT_UPDATE_ACTION; /* * Check if the existing value should be overwritten. This occurs under @@ -994,9 +901,6 @@ public class PostTables { updateAction = ShefConstants.IF_DIFFERENT_UPDATE_ACTION; } - if (log.isDebugEnabled()) { - log.debug("updateAction = [" + updateAction + "]"); - } return updateAction; } @@ -1011,11 +915,8 @@ public class PostTables { * @param stats * - Stats Object */ - private static synchronized void loadForecastInfo(String lid, - PhysicalElement pe, ShefStats stats) { - if (log.isDebugEnabled()) { - log.debug("PostTables.loadForecastInfo() called..."); - } + private void loadForecastInfo(String lid, PhysicalElement pe, + ShefStats stats) { boolean matchFound = false; List lidList = stats.getLidList(); List peList = stats.getPeList(); @@ -1036,29 +937,24 @@ public class PostTables { } } - private static synchronized int execFunction(String functionName, - ShefRecord record, ShefData shefData, String locId, - String dataValue, String qualifier, long qualityCode, - String productId, Date productTime, Date postTime, - String duplicateOption, ShefStats stats) { - if (log.isDebugEnabled()) { - log.debug("PostTables.execFunction(1) called..."); - } - CoreDao dao = null; - Connection conn = null; + private int execFunction(String functionName, ShefRecord record, + ShefData shefData, String locId, String dataValue, + String qualifier, long qualityCode, String productId, + Date productTime, Date postTime, String duplicateOption, + ShefStats stats) { CallableStatement cs = null; int status = -1; - if (dataValue == "") { + if (dataValue.equals("")) { dataValue = ShefConstants.SHEF_MISSING; } try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - SessionFactoryImplementor impl = (SessionFactoryImplementor) dao.getSessionFactory(); - ConnectionProvider cp = impl.getConnectionProvider(); - conn = cp.getConnection(); - - cs = conn.prepareCall("{call " + functionName - + "(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)}"); + conn = getConnection(); + cs = statementMap.get(functionName); + if (cs == null) { + cs = conn.prepareCall("{call " + functionName + + "(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)}"); + statementMap.put(functionName, cs); + } cs.setString(1, locId); cs.setString(2, shefData.getPhysicalElement().getCode()); cs.setInt(3, shefData.getDurationValue()); @@ -1077,34 +973,15 @@ public class PostTables { } cs.setString(11, productId); - + cs.setTimestamp(12, new java.sql.Timestamp(productTime.getTime())); cs.setTimestamp(13, new java.sql.Timestamp(postTime.getTime())); - - int doOverwrite = PostTables.determineUpdateAction(duplicateOption, + + int doOverwrite = determineUpdateAction(duplicateOption, record.isRevisedRecord()); cs.setInt(14, doOverwrite); cs.registerOutParameter(15, java.sql.Types.INTEGER); - - if (log.isDebugEnabled()) { - log.debug("locId = [" + locId + "]"); - log.debug("PE = [" + shefData.getPhysicalElement() + "]"); - log.debug("duration = [" + shefData.getDuration().getValue() + "]"); - log.debug("TS = [" + shefData.getTypeSource() + "]"); - log.debug("extremum = [" + shefData.getExtremum() + "]"); - log.debug("timestamp = [" - + new Timestamp(shefData.getObservationTimeObj().getTime()) - + "]"); - log.debug("data value = [" + dataValue + "]"); - log.debug("qualifier = [" + qualifier + "]"); - log.debug("qc = [" + qualityCode + "]"); - log.debug("productId = [" + productId + "]"); - log.debug("doOverwrite = [" + doOverwrite + "]"); - log.debug("Calling executeQuery for " + functionName - + " doOverwrite = " + doOverwrite); - log.debug("Statement = [" + cs.toString() + "]"); - } - boolean execStatus = cs.execute(); + cs.execute(); status = cs.getInt(15); if (status == 0) { conn.commit(); @@ -1112,36 +989,14 @@ public class PostTables { throw new Exception("PostgresSQL error executing function " + functionName); } - if (log.isDebugEnabled()) { - log.debug("Return status = " + status); - log.debug("Completed PE insert for PE " - + shefData.getPhysicalElement()); - log.debug(functionName + " status = " + execStatus); - } } catch (Exception e) { - log.error( - record.getTraceId() - + " - PostgresSQL error executing function " - + functionName); log.error("Error updating/committing PE insert for PE " + shefData.getPhysicalElement()); log.error("Record Data: " + record); - if(log.isDebugEnabled()) { - log.error(e); - } - } finally { - try { - cs.close(); - } catch (Exception e) { - // Intentionally empty - } - try { - conn.close(); - } catch (Exception e) { - // Intentionally empty - } - cs = null; - conn = null; + log.error( + record.getTraceId() + + " - PostgresSQL error executing function " + + functionName, e); } return status; } @@ -1153,31 +1008,24 @@ public class PostTables { * - name of the procedure to call * @return - status of action, 1 is good, 0 is bad */ - private static synchronized int execFunction(String functionName, - ShefRecord record, ShefData shefData, String locId, - String dataValue, String qualifier, long qualityCode, - String productId, Date productTime, Date postTime, - String duplicateOption, ShefConstants.IngestSwitch ingestSwitch, - ShefStats stats) { - if (log.isDebugEnabled()) { - log.debug("PostTables.execFunction(2) called..."); - - } - CoreDao dao = null; - Connection conn = null; + private int execFunction(String functionName, ShefRecord record, + ShefData shefData, String locId, String dataValue, + String qualifier, long qualityCode, String productId, + Date productTime, Date postTime, String duplicateOption, + ShefConstants.IngestSwitch ingestSwitch, ShefStats stats) { CallableStatement cs = null; int status = -1; - if (dataValue == "") { + if (dataValue.equals("")) { dataValue = ShefConstants.SHEF_MISSING; } try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - SessionFactoryImplementor impl = (SessionFactoryImplementor) dao.getSessionFactory(); - ConnectionProvider cp = impl.getConnectionProvider(); - conn = cp.getConnection(); - - cs = conn.prepareCall("{call " + functionName - + "(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)}"); + conn = getConnection(); + cs = statementMap.get(functionName); + if (cs == null) { + cs = conn.prepareCall("{call " + functionName + + "(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)}"); + statementMap.put(functionName, cs); + } cs.setString(1, locId); cs.setString(2, shefData.getPhysicalElement().getCode()); cs.setInt(3, shefData.getDurationValue()); @@ -1199,21 +1047,13 @@ public class PostTables { cs.setTimestamp(12, new java.sql.Timestamp(productTime.getTime())); cs.setTimestamp(13, new java.sql.Timestamp(postTime.getTime())); - int doOverwrite = PostTables.determineUpdateAction(duplicateOption, + int doOverwrite = determineUpdateAction(duplicateOption, record.isRevisedRecord()); - + cs.setInt(14, doOverwrite); cs.registerOutParameter(15, java.sql.Types.INTEGER); - - if (log.isDebugEnabled()) { - log.debug("Stored data : " + record); - log.debug("doOverwrite = [" + doOverwrite + "]"); - log.debug("Calling executeQuery for " + functionName - + " doOverwrite = " + doOverwrite); - } - // TODO fix NullPointerException - boolean execStatus = cs.execute(); + cs.execute(); status = cs.getInt(15); if (status == 0) { conn.commit(); @@ -1221,37 +1061,13 @@ public class PostTables { throw new Exception("PostgresSQL error executing function " + functionName); } - - if (log.isDebugEnabled()) { - log.debug("Completed PE insert for PE " - + shefData.getPhysicalElement()); - log.debug(functionName + " status = " + execStatus); - log.debug("Return status = " + status); - } } catch (Exception e) { - log.error( - record.getTraceId() - + " - PostgresSQL error executing function " - + functionName); - log.error("Error updating/committing PE insert for PE " - + shefData.getPhysicalElement()); log.error("Record Data: " + record); - if (log.isDebugEnabled()) { - log.error(e); - } - } finally { - try { - cs.close(); - } catch (Exception e) { - // Intentionally empty - } - try { - conn.close(); - } catch (Exception e) { - // Intentionally empty - } - cs = null; - conn = null; + log.error(record.getTraceId() + + " - PostgresSQL error executing function " + functionName); + log.error( + "Error updating/committing PE insert for PE " + + shefData.getPhysicalElement(), e); } return status; } @@ -1263,42 +1079,34 @@ public class PostTables { * - name of the procedure to call * @return - status of action, 1 is good, 0 is bad */ - private static synchronized int execFcstFunc(String functionName, - ShefRecord record, ShefData shefData, String locId, - String dataValue, String qualifier, long qualityCode, - String productId, Date productTime, Date postTime, - String duplicateOption, ShefConstants.IngestSwitch ingestSwitch, - ShefStats stats, Date validTime) { + private int execFcstFunc(String functionName, ShefRecord record, + ShefData shefData, String locId, String dataValue, + String qualifier, long qualityCode, String productId, + Date productTime, Date postTime, String duplicateOption, + ShefConstants.IngestSwitch ingestSwitch, ShefStats stats, + Date validTime) { - long start = System.currentTimeMillis(); - CoreDao dao = null; - Connection conn = null; CallableStatement cs = null; java.sql.Timestamp timeStamp = null; int status = -1; - if (dataValue == "") { + if (dataValue.equals("")) { dataValue = ShefConstants.SHEF_MISSING; } try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - SessionFactoryImplementor impl = (SessionFactoryImplementor) dao.getSessionFactory(); - ConnectionProvider cp = impl.getConnectionProvider(); - conn = cp.getConnection(); - - cs = conn.prepareCall("{call " + functionName - + "(?, ?, ?, ?, ?, cast(? as real), ?, ?, ?, ?," - + " ?, ?, ?, ?, ?, ?, ?)}"); + conn = getConnection(); + cs = statementMap.get(functionName); + if (cs == null) { + cs = conn.prepareCall("{call " + functionName + + "(?, ?, ?, ?, ?, cast(? as real), ?, ?, ?, ?," + + " ?, ?, ?, ?, ?, ?, ?)}"); + statementMap.put(functionName, cs); + } cs.setString(1, locId); - if (log.isDebugEnabled()) { - } cs.setString(2, shefData.getPhysicalElement().getCode()); - cs.setInt(3, shefData.getDurationValue()); - cs.setString(4, shefData.getTypeSource().getCode()); - cs.setString(5, shefData.getExtremum().getCode()); float probability = new Double(shefData.getProbability().getValue()) @@ -1316,13 +1124,9 @@ public class PostTables { timeStamp = new java.sql.Timestamp(basisDate.getTime()); cs.setTimestamp(8, timeStamp); - cs.setDouble(9, Double.parseDouble(dataValue)); - cs.setString(10, qualifier); - cs.setInt(11, (int) qualityCode); - if (shefData.isRevisedRecord()) { cs.setInt(12, 1); } else { @@ -1339,90 +1143,32 @@ public class PostTables { int doOverwrite = 0; - doOverwrite = PostTables.determineUpdateAction(duplicateOption, + doOverwrite = determineUpdateAction(duplicateOption, shefData.isRevisedRecord()); cs.setInt(16, doOverwrite); cs.registerOutParameter(17, java.sql.Types.INTEGER); - - if (log.isDebugEnabled()) { - log.debug("locId = [" + locId + "]"); - log.debug("PE = [" + shefData.getPhysicalElement() + "]"); - log.debug("Duration = [" + shefData.getDuration().getValue() - + "]"); - log.debug("TS = [" + shefData.getTypeSource() + "]"); - log.debug("Extremum = [" + shefData.getExtremum() + "]"); - log.debug("Probability = [" - + shefData.getProbability().getValue() + "]"); - log.debug("valid timestamp = [" + timeStamp + "]"); - log.debug("basis timestamp = [" + timeStamp + "]"); - log.debug("Data Value = [" + dataValue + "]"); - log.debug("Qualifier = [" + qualifier + "]"); - log.debug("qualityCode = [" + qualityCode + "]"); - log.debug("productId = [" + productId + "]"); - log.debug("productTime = [" + timeStamp + "]"); - log.debug("postTime = [" + timeStamp + "]"); - log.debug("doOverwrite = [" + doOverwrite + "]"); - - log.debug("Calling executeQuery for " + functionName - + " doOverwrite = " + doOverwrite); - } - - // TODO fix NullPointerException - boolean execStatus = cs.execute(); + cs.execute(); stats.incrementForecastPe(); status = cs.getInt(17); - - if (status == 0) { - conn.commit(); - } else { - throw new Exception("PostgresSQL error executing function " - + functionName); - } - - if (log.isDebugEnabled()) { - log.debug("Completed PE insert for PE " - + shefData.getPhysicalElement()); - log.debug(functionName + " status = " + execStatus); - log.debug("Return status = " + status); - } + cs.addBatch(); } catch (Exception e) { - log.error("Error updating/committing PE insert for PE " - + shefData.getPhysicalElement()); log.error("Record Data: " + record); + log.error(record.getTraceId() + + " - PostgresSQL error executing function " + functionName); log.error( - record.getTraceId() - + " - PostgresSQL error executing function " - + functionName); - if (log.isDebugEnabled()) { - log.error(e); - } + "Error updating/committing PE insert for PE " + + shefData.getPhysicalElement(), e); stats.incrementErrorMessages(); - } finally { - try { - cs.close(); - } catch (Exception e) { - // Intentionally empty - } - try { - conn.close(); - } catch (Exception e) { - // Intentionally empty - } - cs = null; - conn = null; } return status; } private static int gagePPSetup() { - String shef_duplicate_token = "shef_duplicate"; - gagePPOptions = new GagePPOptions(); - String token = AppsDefaults.getInstance() - .getToken(shef_duplicate_token); + String token = AppsDefaults.getInstance().getToken(SHEF_DUP_TOKEN); StringBuilder message = new StringBuilder("shef_duplicate : "); if ("ALWAYS_OVERWRITE".equals(token)) { @@ -1444,13 +1190,10 @@ public class PostTables { gagePPOptions.setIntppq(PrecipUtils.get_6hour_precip_window()); // Output this information to the log - - String logMsg = String.format( - "intpc [%d] intlppp [%d] intuppp [%d] intppq [%f]", - gagePPOptions.getIntpc(), gagePPOptions.getIntlppp(), - gagePPOptions.getIntuppp(), gagePPOptions.getIntppq()); - - log.info(logMsg); + log.info("intpc [" + gagePPOptions.getIntpc() + "] intlppp [" + + gagePPOptions.getIntlppp() + "] intuppp [" + + gagePPOptions.getIntuppp() + "] intppq [" + + gagePPOptions.getIntppq() + "]"); return 0; } @@ -1468,40 +1211,20 @@ public class PostTables { * performed * @return - status of action, 1 is good, 0 is bad */ - public static synchronized int postRiverStatus(ShefRecord record, - ShefData shefDataValue, boolean updateFlag) { - - CoreDao dao = null; - Connection conn = null; - PreparedStatement ps = null; + public int postRiverStatus(ShefRecord record, ShefData shefDataValue, + boolean updateFlag) { java.sql.Timestamp timeStamp = null; java.sql.Timestamp timeStamp2 = null; String pe = null; String lid = null; String ts = null; float probability = -9999; - String updateQuery = "UPDATE riverstatus SET lid = ? , " + "pe = ? , " - + "dur = ? , " + "ts = ? , " + "extremum = ? ," - + "probability = ? , " + "validtime = ? , " - + "basistime = ? , " + "value = ? " - + "WHERE lid= ? AND pe= ? AND ts= ?"; - String insertQuery = "INSERT INTO riverstatus values(?,?,?,?,?,?,?,?,?)"; int status = -1; - + PreparedStatement ps = null; + try { - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - - SessionFactoryImplementor impl = (SessionFactoryImplementor) dao.getSessionFactory(); - ConnectionProvider cp = impl.getConnectionProvider(); - - conn = cp.getConnection(); - - if (updateFlag) { - ps = conn.prepareCall(updateQuery); - } else { - ps = conn.prepareCall(insertQuery); - } - + conn = getConnection(); + ps = getRiverStatusPreparedStatement(updateFlag); lid = shefDataValue.getLocationId(); ps.setString(1, lid); @@ -1534,7 +1257,6 @@ public class PostTables { timeStamp2 = new java.sql.Timestamp(basisDate.getTime()); ps.setTimestamp(8, timeStamp2); - // ps.setFloat(9, Float.parseFloat(shefDataValue.getStringValue())); ps.setDouble(9, shefDataValue.getValue().floatValue()); if (updateFlag) { @@ -1542,47 +1264,91 @@ public class PostTables { ps.setString(11, pe); ps.setString(12, ts); } - - status = ps.executeUpdate(); - - if (status != 0) { - conn.commit(); - } else { - throw new Exception( - "PostgresSQL error inserting into riverstatus"); - } - - if (log.isDebugEnabled()) { - if (updateFlag) { - log.error(String.format("Completed updating into RiverStatus with [%s]", record)); - } else { - log.error(String.format("Completed inserting into RiverStatus with [%s]", record)); - } - } + ps.execute(); + conn.commit(); } catch (Exception e) { if (updateFlag) { - log.error(String.format("Error updating into RiverStatus with [%s]", record)); + log.error(String.format( + "Error updating into RiverStatus with [%s]", record), e); } else { - log.error(String.format("Error inserting into RiverStatus with [%s]", record)); + log.error(String.format( + "Error inserting into RiverStatus with [%s]", record), + e); } - if (log.isDebugEnabled()) { - log.error(e); - } - } finally { - try { - ps.close(); - } catch (Exception e) { - // Intentionally empty - } - try { - conn.close(); - } catch (Exception e) { - // Intentionally empty - } - ps = null; - conn = null; - } + } finally { + if (ps != null) { + try { + ps.close(); + } catch (SQLException e) { + log.error( + "Error closing prepared statement for RiverStatus", + e); + } + } + } return status; } + + private PreparedStatement getRiverStatusPreparedStatement(boolean updateFlag) + throws SQLException { + if (updateFlag) { + PreparedStatement riverStatusUpdateStatement = conn + .prepareCall(RIVER_STATUS_UPDATE_STATEMENT); + return riverStatusUpdateStatement; + } else { + PreparedStatement riverStatusInsertStatement = conn + .prepareCall(RIVER_STATUS_INSERT_STATEMENT); + return riverStatusInsertStatement; + } + } + + private Connection getConnection() { + try { + if (conn == null || conn.isClosed()) { + conn = cp.getConnection(); + } + } catch (SQLException e) { + log.error("Error creating sql connection", e); + } + + return conn; + } + + /** + * Close the connections and statements + */ + public void close() { + for (String functionName : statementMap.keySet()) { + CallableStatement cs = statementMap.get(functionName); + try { + cs.close(); + } catch (SQLException e) { + log.error("Error closing statement for " + functionName, e); + } + } + + if (cp != null && conn != null) { + try { + cp.closeConnection(conn); + } catch (SQLException e) { + log.error("Error closing db connection", e); + } + } + } + + /** + * + */ + public void executeBatchUpdates() { + for (String key : statementMap.keySet()) { + CallableStatement cs = statementMap.get(key); + try { + cs.executeBatch(); + getConnection().commit(); + } catch (SQLException e) { + log.error("An error occured executing batch update for " + key); + } + } + } } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PurgeText.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PurgeText.java index 4c111a17ed..73841db879 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PurgeText.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/database/PurgeText.java @@ -36,9 +36,9 @@ import com.raytheon.uf.common.dataplugin.shef.tables.TextproductId; import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Handles storing of Shef Products and updating the purge text product. @@ -51,6 +51,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * ------------ ---------- ----------- -------------------------- * Mar 8, 2010 jkorman Initial creation * Dec 03, 2013 2051 rjpeter Fixed storeTextProduct issue. + * May 14, 2014 2536 bclement moved WMO Header to common, removed unused int * * * @author jkorman @@ -324,7 +325,7 @@ public class PurgeText { String poDate = dFmt.format(toDate(t[numToKeep - 1])); query = String.format(purQuery, productId, poDate); - int n = dao.executeSQLUpdate(query); + dao.executeSQLUpdate(query); } } } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePP.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePP.java index 15a0a9cea6..e0dc93b6fa 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePP.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePP.java @@ -36,6 +36,7 @@ import com.raytheon.uf.common.dataplugin.shef.tables.HourlyppId; import com.raytheon.uf.common.dataplugin.shef.util.ParameterCode.Duration; import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.decodertools.time.TimeTools; /** @@ -53,6 +54,8 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * 02 Feb 2012 #15845 lbousaidi added check for data that comes in as -999 * 07 May 2013 #15880 lbousaidi changed pPE parameter because it was inserting to the * wrong hour field. + * 15 Sep 2014 #17129 lbousaidi add a fix for the top of hour issue for hourlypp. + * 18 Sep 2014 #3627 mapeters Updated deprecated {@link TimeTools} usage. * * * @author mnash @@ -151,7 +154,8 @@ public class GagePP { logger.info("Processing records at " + btime); - Calendar dt = TimeTools.newCalendar(rec.getObsTime().getTime()); + Calendar dt = TimeUtil.newGmtCalendar(); + dt.setTimeInMillis(rec.getObsTime().getTime()); HourlyppId id = new HourlyppId(rec.getLocationId(), rec.getTypeSource() .getCode(), btime); @@ -221,7 +225,7 @@ public class GagePP { if(!dt.getTime().equals(rec.getObsTime())) { rec.setObsTime(dt.getTime()); - dp = TimeTools.copy(dt); + dp = TimeUtil.newCalendar(dt); } p6HourSlot = sHour[0]; @@ -563,7 +567,7 @@ public class GagePP { if (rec.getPhysicalElement().getCode().charAt(1) == 'C' && minute >= MINUTES_PER_HOUR - pOptions.getIntpc() - || (pPE.charAt(1) == 'P' + || (rec.getPhysicalElement().getCode().charAt(1) == 'P' && minute >= MINUTES_PER_HOUR - pOptions.getIntlppp())) { hour++; dt.add(Calendar.HOUR_OF_DAY, 1); @@ -637,11 +641,12 @@ public class GagePP { ppp_ppd_window *= SECONDS_PER_HOUR * 1000L; // Observation time as a calendar - Calendar timeTObs = TimeTools.getSystemCalendar(); + Calendar timeTObs = TimeUtil.newGmtCalendar(); timeTObs.setTime(yearsec_ansi); // Create a 12Z object - Calendar pStructTm = TimeTools.newCalendar(yearsec_ansi.getTime()); + Calendar pStructTm = TimeUtil.newGmtCalendar(); + pStructTm.setTimeInMillis(yearsec_ansi.getTime()); pStructTm.set(Calendar.HOUR_OF_DAY, 12); pStructTm.set(Calendar.MINUTE, 0); pStructTm.set(Calendar.SECOND, 0); diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePPWrite.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePPWrite.java index 99fc720a3d..7720516456 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePPWrite.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/ohdlib/GagePPWrite.java @@ -39,6 +39,7 @@ import com.raytheon.uf.common.dataplugin.shef.tables.HourlyppId; import com.raytheon.uf.common.dataplugin.shef.tables.IHourlyTS; import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; import com.raytheon.uf.edex.decodertools.time.TimeTools; @@ -54,6 +55,7 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * Nov 5, 2008 1649 snaples Initial creation * May 7, 2013 15880 lbousaidi changed minute_offset to offset in * in write_1_HourValue routine. + * Sep 18, 2014 3627 mapeters Updated deprecated {@link TimeTools} usage. * * * @@ -101,7 +103,8 @@ public final class GagePPWrite { char manual_qc_code) { - Calendar dt = TimeTools.newCalendar(dtime.getTime()); + Calendar dt = TimeUtil.newGmtCalendar(); + dt.setTimeInMillis(dtime.getTime()); int hour_slot = dt.get(Calendar.HOUR_OF_DAY); Arrays.fill(hourly_qc, '-'); @@ -422,7 +425,7 @@ public final class GagePPWrite { } private Calendar getCalendar(Date obsDate) { - Calendar dt = TimeTools.getSystemCalendar(); + Calendar dt = TimeUtil.newGmtCalendar(); dt.setTime(obsDate); @@ -478,7 +481,7 @@ public final class GagePPWrite { int status = 0; boolean record_exists; - Calendar dt = TimeTools.getSystemCalendar(); + Calendar dt = TimeUtil.newGmtCalendar(); dt.setTime(obsDate); dt.set(Calendar.HOUR_OF_DAY, 0); dt.set(Calendar.MINUTE, 0); @@ -489,11 +492,6 @@ public final class GagePPWrite { dt.add(Calendar.DAY_OF_MONTH, 1); Date endtime = dt.getTime(); - char qcc = 'Z'; // ShefQC.buildQcSymbol(qualityCode).charAt(0); - if(qual != null) { - qcc = qual.charAt(0); - } - String qcsym = "Z"; // ShefQC.buildQcSymbol(quality_code); if((qual != null)&&(qual.length() > 0)) { qcsym = qual.substring(0,1); diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/SHEFDate.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/SHEFDate.java index 4cbf63bb6c..766b8c6766 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/SHEFDate.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/SHEFDate.java @@ -26,14 +26,13 @@ import java.util.HashMap; import java.util.TimeZone; import java.util.regex.Matcher; +import com.raytheon.uf.common.dataplugin.shef.util.SHEFErrorCodes; import com.raytheon.uf.common.dataplugin.shef.util.SHEFTimezone; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; -import com.raytheon.uf.common.dataplugin.shef.util.SHEFErrorCodes; - -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; /** - * TODO Add Description + * Object to hold the Shef Date information. * *
  * 
@@ -41,6 +40,7 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools;
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Dec 17, 2009            jkorman     Initial creation
+ * May 13, 2014    3088    mpduff      Cleanup, remove unused code, optimized
  * 
  * 
* @@ -56,18 +56,9 @@ public class SHEFDate { private static final String DATE_INC_CODES = "SNHDMEY"; - private static final int[] DATE_INC_VALS = new int[] { Calendar.SECOND, // S - Calendar.MINUTE, // N - Calendar.HOUR_OF_DAY, // H - Calendar.DAY_OF_MONTH, // D - Calendar.MONTH, // M - -1, // E, -1 signifies special handling - Calendar.YEAR, // Y - }; - private static final String DATE_REL_CODES = "SNHDMEY"; - private static HashMap DIVISIONS = new HashMap(); + private static HashMap DIVISIONS = new HashMap(); static { DIVISIONS.put("S", TIME_DIVISIONS.SECONDS); DIVISIONS.put("N", TIME_DIVISIONS.MINUTES); @@ -77,24 +68,23 @@ public class SHEFDate { DIVISIONS.put("E", TIME_DIVISIONS.ENDOFMONTH); DIVISIONS.put("Y", TIME_DIVISIONS.YEARS); } - - - public static final int [] DAYS_MONTH = {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31,}; - + + /** + * Number of days in each month. + */ + public static final int[] DAYS_MONTH = { 0, 31, 29, 31, 30, 31, 30, 31, 31, + 30, 31, 30, 31, }; + // C Y M D H N S - private String DT_FMT = "%02d%02d%02d%02d%02d%02d%02d"; + private static final String DT_FMT = "%02d%02d%02d%02d%02d%02d%02d"; - private String OUT_FMT = "%02d%02d%02d%02d%02d%02d%02d"; + private static final String OUT_FMT = "%02d%02d%02d%02d%02d%02d%02d"; - public static final int BAD_HOUR = -1; + private static final int[] NOD = { -1, 0, 31, 59, 90, 120, 151, 181, 212, + 243, 273, 304, 334, }; - private static final int[] NOD = { -1, 0, 31, 59, 90, 120, 151, 181, 212, 243, - 273, 304, 334, }; - - private static final int[] MXD = { -1, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, - 30, 31, }; - - private static TimeZone DEFAULT_TZ = TimeZone.getTimeZone("ZULU"); + private static final int[] MXD = { -1, 31, 28, 31, 30, 31, 30, 31, 31, 30, + 31, 30, 31, }; private int error = 0; @@ -117,35 +107,12 @@ public class SHEFDate { private int calLY; private TimeZone timeZone = null; - -// // 4 digit year -// private int year = 0; -// -// // 2 digit century -// private int cc = 0; -// -// // 2 digit year -// private int ly = 0; -// -// private int month = 0; -// -// private int day = 0; -// -// private int hour = 0; -// -// private int minute = 0; -// -// private int second = 0; -// -// private int julian = 0; - - /** * */ public SHEFDate() { - this(new GregorianCalendar(DEFAULT_TZ)); + this(TimeUtil.newGmtCalendar()); } /** @@ -176,8 +143,8 @@ public class SHEFDate { * @param tz */ public SHEFDate(Date date, TimeZone tz) { - Calendar c = Calendar.getInstance(tz); timeZone = tz; + Calendar c = TimeUtil.newCalendar(tz); c.setTime(date); calYear = c.get(Calendar.YEAR); @@ -192,64 +159,23 @@ public class SHEFDate { } /** - * - * @param date - * @param tz + * @param c */ - public SHEFDate(long date, TimeZone tz) { - Calendar c = Calendar.getInstance(tz); - timeZone = tz; - c.setTimeInMillis(date); - + public SHEFDate(Calendar c) { calYear = c.get(Calendar.YEAR); calCC = calYear / 100; calLY = calYear % 100; - calMonth = c.get(Calendar.MONTH) + 1; - calDay = c.get(Calendar.DAY_OF_MONTH); - calHour = c.get(Calendar.HOUR_OF_DAY); - calMin = c.get(Calendar.MINUTE); - calSec= c.get(Calendar.SECOND); - calJul = c.get(Calendar.DAY_OF_YEAR); - } - - public SHEFDate(GregorianCalendar c) { - calYear = c.get(Calendar.YEAR); - calLY = calYear % 100; - calCC = calYear / 100; - calMonth = c.get(Calendar.MONTH) + 1; calDay = c.get(Calendar.DAY_OF_MONTH); calHour = c.get(Calendar.HOUR_OF_DAY); calMin = c.get(Calendar.MINUTE); calSec = c.get(Calendar.SECOND); - calJul = c.get(Calendar.DAY_OF_YEAR); - timeZone = c.getTimeZone(); - } - - public SHEFDate(int year, int month, int day, TimeZone timezone) { - calYear = year; - calLY = calYear % 100; - calCC = calYear / 100; - timeZone = timezone; - - calMonth = month; - calDay = day; - calHour = 12; - calMin = 0; - calSec = 0; - - doJulian1(); - } - - - - public SHEFDate(Calendar c) { - this(c.getTimeInMillis(), c.getTimeZone()); } /** * Copy constructor for SHEFDate instances. + * * @param date */ public SHEFDate(SHEFDate date) { @@ -300,37 +226,6 @@ public class SHEFDate { calJul = tJul; } - -// /** -// * -// * @param inc -// */ -// private void doJulian2(int inc) { -// int tJul = calJul + inc; -// int tYear = calYear; -// -// int maxDay = getMaxDay(tYear); -// while ((tJul <= 0) || (tJul > maxDay)) { -// if (tJul > maxDay) { -// tJul -= maxDay; -// tYear++; -// if (tYear == 100) { -// tYear = 0; -// } -// maxDay = getMaxDay(tYear); -// } else { -// tJul += maxDay; -// if (tYear == -1) { -// tYear = 99; -// } -// maxDay = getMaxDay(tYear); -// tJul += maxDay; -// } -// } -// calYear = tYear; -// calJul = tJul; -// } - /** * * @param year @@ -377,6 +272,7 @@ public class SHEFDate { public static boolean isLegalYear(int year) { return ((year >= 1753) && (year <= 2199)); } + /** * * @return @@ -384,14 +280,14 @@ public class SHEFDate { public int getError() { return error; } - + /** * */ private void forceYear() { calYear = (calCC * 100) + calLY; } - + /** * @return the year */ @@ -489,8 +385,6 @@ public class SHEFDate { /** * * @param hour - * @param minute - * @param second */ public void setHour(int hour) { calHour = hour; @@ -504,9 +398,6 @@ public class SHEFDate { } /** - * Set minutes relative to the current hour. The seconds are set to zero by - * default. - * * @param minute */ public void setMinute(int minute) { @@ -537,7 +428,8 @@ public class SHEFDate { } /** - * @param julian the julian to set + * @param julian + * the julian to set */ public void setJulian(int julian) { calJul = julian; @@ -573,22 +465,22 @@ public class SHEFDate { } private void doYearAdjust() { - Calendar cDate = TimeTools.getSystemCalendar(); - SHEFDate sDate = new SHEFDate(cDate.getTimeInMillis(), timeZone); + Calendar cDate = TimeUtil.newGmtCalendar(); + SHEFDate sDate = new SHEFDate(cDate); int cyr = sDate.getYear(); int ccc = sDate.getCentury(); int cly = sDate.getLy(); - + if (calCC == -1) { if (calLY == -1) { - Calendar cSys = TimeTools.copy(cDate); + Calendar cSys = copy(cDate); cSys.set(Calendar.HOUR_OF_DAY, 0); cSys.set(Calendar.MINUTE, 0); cSys.set(Calendar.SECOND, 0); cSys.set(Calendar.MILLISECOND, 0); - Calendar cObs = TimeTools.copy(cSys); + Calendar cObs = copy(cSys); cObs.set(Calendar.MONTH, calMonth - 1); cObs.set(Calendar.DAY_OF_MONTH, calDay); long diff = Math.abs(cObs.getTimeInMillis() @@ -625,10 +517,7 @@ public class SHEFDate { calYear = (calCC * 100) + calLY; } } - - - - + /** * * @return @@ -648,14 +537,14 @@ public class SHEFDate { error = SHEFErrorCodes.LOG_016; } } - if((calMonth > 0) && (calMonth < 13)) { + if ((calMonth > 0) && (calMonth < 13)) { int daysPerMonth = DAYS_MONTH[calMonth]; - if(calMonth == 2) { - if(!isLeapYear(calYear)) { + if (calMonth == 2) { + if (!isLeapYear(calYear)) { daysPerMonth--; } } - if(calDay > daysPerMonth) { + if (calDay > daysPerMonth) { valid = false; error = SHEFErrorCodes.LOG_016; } else if (calDay < 1) { @@ -666,19 +555,15 @@ public class SHEFDate { valid = false; error = SHEFErrorCodes.LOG_016; } - + return valid; } - // ******************************************* - // * - // * - // ******************************************* - /** - * - * @param token A ParserToken instance that should be applied to this - * date instance. + * + * @param token + * A ParserToken instance that should be applied to this date + * instance. * @return A new SHEFDate instance with the token's data applied. */ public SHEFDate applyData(ParserToken token) { @@ -704,25 +589,25 @@ public class SHEFDate { // NN[SS] int t = d.getSecond(); newDate.setSecond((t > -1) ? t : 0); - if(d.getMinute() > -1) { + if (d.getMinute() > -1) { newDate.setMinute(d.getMinute()); } break; } case DATE_SEC: { // SS - if(d.getSecond() > -1) { + if (d.getSecond() > -1) { newDate.setSecond(d.getSecond()); } break; } case DATE_DATE: { - if(d.getCentury() > -1) { + if (d.getCentury() > -1) { newDate.setCentury(d.getCentury()); } } case DATE_YEAR: { - if(d.getCentury() < 0) { + if (d.getCentury() < 0) { newDate.setCentury(-1); } else { newDate.setCentury(d.getCentury()); @@ -732,22 +617,22 @@ public class SHEFDate { // Fall through to pick up other fields. } case DATE_MON: { - if(d.getMonth() > -1) { + if (d.getMonth() > -1) { newDate.setMonth(d.getMonth()); } // Fall through to pick up other fields. } case DATE_DAY: { - if(d.getDay() > -1) { + if (d.getDay() > -1) { newDate.setDay(d.getDay()); } - if(d.getHour() > -1) { + if (d.getHour() > -1) { newDate.setHour(d.getHour()); } - if(d.getMinute() > -1) { + if (d.getMinute() > -1) { newDate.setMinute(d.getMinute()); } - if(d.getSecond() > -1) { + if (d.getSecond() > -1) { newDate.setSecond(d.getSecond()); } break; @@ -762,10 +647,10 @@ public class SHEFDate { } else if (TokenType.INT_CODE.equals(token.getType())) { newDate = relative(this, token.getToken()); } - if(newDate != null) { + if (newDate != null) { newDate.validate(); } - + return newDate; } @@ -779,19 +664,17 @@ public class SHEFDate { newDate.copyFrom(this); SHEFDate pDate = token.getDateData(); - // newDate.setCentury(pDate.getCentury()); - // newDate.setLy(pDate.getLy()); Calendar c = newDate.toCalendar(); c.set(Calendar.DAY_OF_YEAR, pDate.getJulian()); newDate = new SHEFDate(c); return newDate; } - + // - + /** - * Check if this date/time is set to the last day - * of the current month. + * Check if this date/time is set to the last day of the current month. + * * @return Is this instance at the last day of the month? */ private boolean isLastDayOfMonth() { @@ -799,113 +682,15 @@ public class SHEFDate { int lastDay = c.getActualMaximum(Calendar.DAY_OF_MONTH); return (lastDay == calDay); } - - // ******************************************* - // * The setToXX methods are used to set values - // * - // ******************************************* - // ******************************************* /** + * Increment this object. * + * @param value + * amount to increment + * @param type + * the field to incrment */ - public int setToDay(int day) { - int retValue = -1; - // Gross error check for now! - if ((day >= 0) && (day <= 31)) { - calDay = day; - retValue = day; - } - return retValue; - } - - /** - * - * @param hour - * @return - */ - public int setToHour(int hour) { - int retValue = -1; - if (validHour(hour)) { - calHour = hour; - calMin = 0; - calSec = 0; - retValue = hour; - } - return retValue; - } - - /** - * - * @param hour - * @param minute - * @param second - * @return - */ - public int setToHMS(int hour, int minute, int second) { - int retValue = -1; - if (validHour(hour)) { - calHour = hour; - calMin = minute; - calSec = second; - retValue = hour; - } - return retValue; - } - - /** - * Set the minutes value for this date. This method also returns the value - * that was set, or a value if -1 if the value is invalid given other - * settings. For example if the current hour is set to 24, then no minute - * value is other than 0 is correct. - * - * @param min - * The minutes value to set. - * @return The minute value that was set. Returns -1 if the value is invalid - * given the current time. - */ - public int setToMinute(int min) { - int retValue = -1; - if (validMinute(min) && validHour(calHour, min, calSec)) { - calMin = min; - retValue = min; - } - return retValue; - } - - /** - * Set the seconds value for this date. This method also returns the value - * that was set, or a value if -1 if the value is invalid given other - * settings. For example if the current hour is set to 24, then no second - * value is other than 0 is correct. - * - * @param sec - * The seconds value to set. - * @return The second value that was set. Returns -1 if the value is invalid - * given the current time. - */ - public int setToSecond(int sec) { - int retValue = -1; - if (validSecond(sec) && validHour(calHour, calMin, sec)) { - calSec = sec; - retValue = sec; - } - return retValue; - } - - /** - * - * @param sDate - * @param incCode - * @return - */ - public void increment(String incCode, int intervalId) { - SHEFDate newDate = increment(this, incCode, intervalId); - if (newDate != null) { - copyFrom(newDate); - } - } - public void inc(int value, TIME_DIVISIONS type) { int seconds = 0; int minutes = 0; @@ -1038,8 +823,8 @@ public class SHEFDate { if ((month == 2) && isLeapYear(year)) { day++; } - if(year >= 100) { - if(!isLegalYear(year)) { + if (year >= 100) { + if (!isLegalYear(year)) { error = SHEFErrorCodes.LOG_039; } } @@ -1052,7 +837,7 @@ public class SHEFDate { calLY = calYear % 100; calCC = calYear / 100; } - + /** * Copy the data from a given SHEF date instance into this instance. * @@ -1078,36 +863,35 @@ public class SHEFDate { */ public void toZuluDate() { // Check if we are already a Zulu date! - if(calHour == 24) { + if (calHour == 24) { calHour = 0; - inc(1,TIME_DIVISIONS.DAYS); + inc(1, TIME_DIVISIONS.DAYS); } - if(!ShefConstants.Z.equals(timeZone.getID())) { + if (!ShefConstants.Z.equals(timeZone.getID())) { TimeZone tzz = SHEFTimezone.getSysTimeZone(ShefConstants.Z); boolean retard = false; if (calHour == 1) { GregorianCalendar g = (GregorianCalendar) toCalendar().clone(); - if(!timeZone.inDaylightTime(g.getTime())) { + if (!timeZone.inDaylightTime(g.getTime())) { g.set(Calendar.HOUR_OF_DAY, 0); - + retard = timeZone.inDaylightTime(g.getTime()); } } - + // Actually if the following doesn't work we have a // real big problem! - if(tzz != null) { + if (tzz != null) { Calendar c = toCalendar(); - Calendar cz = TimeTools.getSystemCalendar(); - cz.setTimeZone(tzz); + Calendar cz = TimeUtil.newCalendar(tzz); cz.setTimeInMillis(c.getTimeInMillis()); - + calYear = cz.get(Calendar.YEAR); calMonth = cz.get(Calendar.MONTH) + 1; calDay = cz.get(Calendar.DAY_OF_MONTH); calHour = cz.get(Calendar.HOUR_OF_DAY); - if(retard) { + if (retard) { calHour--; } calMin = cz.get(Calendar.MINUTE); @@ -1116,16 +900,14 @@ public class SHEFDate { } } } - + /** * Return a calendar representation of this SHEF date. * * @return */ - public GregorianCalendar toCalendar() { - GregorianCalendar c = new GregorianCalendar(); - c.setTimeZone(timeZone); - + public Calendar toCalendar() { + Calendar c = TimeUtil.newCalendar(timeZone); c.set(Calendar.YEAR, calYear); c.set(Calendar.MONTH, calMonth - 1); c.set(Calendar.DAY_OF_MONTH, calDay); @@ -1133,19 +915,20 @@ public class SHEFDate { c.set(Calendar.MINUTE, calMin); c.set(Calendar.SECOND, calSec); c.set(Calendar.MILLISECOND, 0); - + return c; } /** - * Check to see if the date/time is in the DST exclusion - * zone. 02:00:00.000 .. 02:59:59.000 + * Check to see if the date/time is in the DST exclusion zone. 02:00:00.000 + * .. 02:59:59.000 + * * @return */ public boolean isDSTExclusion() { boolean isExcluded = false; - - GregorianCalendar c = new GregorianCalendar(timeZone); + + Calendar c = TimeUtil.newCalendar(timeZone); c.set(Calendar.YEAR, calYear); c.set(Calendar.MONTH, calMonth - 1); c.set(Calendar.DAY_OF_MONTH, calDay); @@ -1154,9 +937,9 @@ public class SHEFDate { c.set(Calendar.SECOND, calSec); c.set(Calendar.MILLISECOND, 0); // Are we in DST? - if(timeZone.inDaylightTime(c.getTime())) { - if((calHour == 2)) { - if((calMin >= 0) && (calMin < 60)) { + if (timeZone.inDaylightTime(c.getTime())) { + if ((calHour == 2)) { + if ((calMin >= 0) && (calMin < 60)) { // We're in a possible exclusion zone // Set the hour to 1. // If that time is NOT in DST then we're @@ -1168,7 +951,7 @@ public class SHEFDate { } return isExcluded; } - + /** * Returns this date formatted to the local timezone. * @@ -1191,34 +974,6 @@ public class SHEFDate { // ******************************************* - /** - * - * @param hour - * @return - */ - public static final boolean validHour(int hour) { - return ((hour >= 0) && (hour <= 24)); - } - - public static final boolean validHour(int hour, int minute, int second) { - boolean valid = false; - if (validHour(hour)) { - valid = true; - } - if (hour == 24) { - valid = ((minute == 0) && (second == 0)); - } - return valid; - } - - public static final boolean validMinute(int minute) { - return ((minute >= 0) && (minute < 60)); - } - - public static final boolean validSecond(int second) { - return ((second >= 0) && (second < 60)); - } - /** * * @param mon @@ -1227,14 +982,14 @@ public class SHEFDate { * @return */ public static Calendar getDateMonDay(int mon, int day, TimeZone tz) { - Calendar cSys = TimeTools.getSystemCalendar(); + Calendar cSys = TimeUtil.newGmtCalendar(); cSys.setTimeZone(tz); cSys.set(Calendar.HOUR_OF_DAY, 0); cSys.set(Calendar.MINUTE, 0); cSys.set(Calendar.SECOND, 0); cSys.set(Calendar.MILLISECOND, 0); - Calendar cObs = TimeTools.copy(cSys); + Calendar cObs = copy(cSys); cObs.set(Calendar.MONTH, mon - 1); cObs.set(Calendar.DAY_OF_MONTH, day); @@ -1260,7 +1015,7 @@ public class SHEFDate { public static Calendar getDateYearMon(int year, int mon, int day, TimeZone tz) { Calendar cObs = null; - Calendar cSys = TimeTools.getSystemCalendar(); + Calendar cSys = TimeUtil.newGmtCalendar(); cSys.setTimeZone(tz); cSys.set(Calendar.DAY_OF_MONTH, day); @@ -1272,7 +1027,7 @@ public class SHEFDate { // Century of the current year. int cc = (cSys.get(Calendar.YEAR) / 100) * 100; - cObs = TimeTools.copy(cSys); + cObs = copy(cSys); cObs.set(Calendar.MONTH, mon - 1); // check for up to 10 years in the future. @@ -1283,7 +1038,7 @@ public class SHEFDate { cObs.set(Calendar.YEAR, ((cc - 100) + year)); } } else { - cObs = TimeTools.copy(cSys); + cObs = copy(cSys); cObs.set(Calendar.YEAR, year); cObs.set(Calendar.MONTH, mon - 1); cObs.set(Calendar.DAY_OF_MONTH, day); @@ -1297,17 +1052,16 @@ public class SHEFDate { * @param sDate * @return */ - public static final SHEFDate relative(SHEFDate sDate, String incCode) { + private static final SHEFDate relative(SHEFDate sDate, String incCode) { SHEFDate newDate = new SHEFDate(sDate); Matcher m = TokenType.DATE_REL.getPattern().matcher(incCode); if (m.find()) { String code = m.group(2); - Calendar c = null; int pos = DATE_REL_CODES.indexOf(code); int incVal = -999; - if(pos >= 0) { + if (pos >= 0) { incVal = Integer.parseInt(m.group(4)); incVal *= ("-".equals(m.group(3))) ? -1 : 1; @@ -1316,19 +1070,20 @@ public class SHEFDate { } return newDate; } - + /** * * @param sDate * @param incCode - * @return + * @param seriesId + * @return the incremented SHEFDate */ public static final SHEFDate increment(SHEFDate sDate, String incCode, int seriesId) { - SHEFDate newDate = new SHEFDate(sDate); Matcher m = TokenType.INT_CODE.getPattern().matcher(incCode); if (m.find()) { + SHEFDate newDate = new SHEFDate(sDate); String code = m.group(2); // If we are trying to increment "End-of-month" ensure that // the date "day" is at the end of the month. @@ -1345,148 +1100,164 @@ public class SHEFDate { newDate.inc(incVal, DIVISIONS.get(code)); } } + return newDate; } - return newDate; + + return sDate; } - - public static final void main(String [] args) { - -// List tokens = new ArrayList(); -// tokens.add(new ParserToken("DS30", TokenType.DATE_SEC)); -// tokens.add(new ParserToken("DN21", TokenType.DATE_MIN)); -// tokens.add(new ParserToken("DN2115", TokenType.DATE_MIN)); -// tokens.add(new ParserToken("DH15", TokenType.DATE_HOUR)); -// tokens.add(new ParserToken("DH1521", TokenType.DATE_HOUR)); -// tokens.add(new ParserToken("DH152115", TokenType.DATE_HOUR)); -// -// tokens.add(new ParserToken("DM033115", TokenType.DATE_MON)); -// tokens.add(new ParserToken("DRE-1", TokenType.DATE_REL)); -// -// SHEFDate d = new SHEFDate(20,8,1,31,14,21,15); -// d.setTimeZone(SHEFTimezone.getSysTimeZone("C")); -// -// System.out.println(d); -// System.out.println("*****************************************************"); -// for(ParserToken t : tokens) { -// System.out.print(String.format("%-10s%-20s",t.getType().name(),t.getToken())); -// System.out.println(d.applyData(t)); -// System.out.println("-----------------------------------------------------"); -// } - -// SHEFDate d = new SHEFDate(new Date(), TimeZone.getTimeZone("Z")); -// -// SHEFDate date = new SHEFDate(20,11,2,6,12,0,0); -// TimeZone zone = SHEFTimezone.getSysTimeZone("Z"); -// date.setTimeZone(zone); -// date.adjustToTimezone(); -// System.out.println(date); -// -// date = date.applyData(new ParserToken("DJ036",TokenType.DATE_JUL)); -// System.out.println(date); -// -// date = date.applyData(new ParserToken("DH12",TokenType.DATE_HOUR)); -// System.out.println(date); -// -// Calendar c = getDateYearMon(82, 8, 8, zone); -// date = new SHEFDate(c); -// System.out.println(date); -// -// zone = SHEFTimezone.getSysTimeZone("C"); -// date = new SHEFDate(); -// date.setCentury(-1); -// date.setLy(82); -// date.setMonth(4); -// date.setDay(25); -// date.setHour(1); -// date.setMinute(59); -// date.setSecond(59); -// -// date.setTimeZone(zone); -// System.out.println(date); -// date.adjustToTimezone(); -// System.out.println(date); -// System.out.println("DST Exclusion " + date.isDSTExclusion()); -// -// ParserToken t = new ParserToken("820229",TokenType.OBS_DATE_6); -// -// t.adjustToTimezone(zone); -// -// date = new SHEFDate(); -// date.setYear(2010); -// date.setMonth(3); -// date.setDay(14); -// date.setHour(2); -// date.setMinute(0); -// date.setSecond(1); -// -// date.setTimeZone(zone); -// System.out.println(date); -// date.adjustToTimezone(); -// -// date = SHEFDate.increment(date, "DIH1", 2); -// System.out.println(date); -// date = SHEFDate.increment(date, "DIN20", 2); -// System.out.println(date); -// date = SHEFDate.increment(date, "DIS10", 2); -// -// String s = date.toString(); -// date = SHEFDate.increment(date,"DIM3", 2); -// date = SHEFDate.increment(date,"DIM-9", 2); -// date = SHEFDate.increment(date,"DIM6", 2); -// System.out.println("pass = " + (s.equals(date.toString()))); - -// for(String s : new String[] { "ED", "CD", "MD", "PD", }) { -// SHEFDate date = new SHEFDate(20, 11, 5, 23, 3, 0, 0); -// TimeZone zone = SHEFTimezone.getSysTimeZone(s); -// date.setTimeZone(zone); -// date.toZuluDate(); -// System.out.println(date); -// } - -// zone = SHEFTimezone.getSysTimeZone("PS"); -// date = new SHEFDate(); -// date.setYear(1982); -// date.setMonth(2); -// date.setDay(8); -// date.setHour(4); -// date.setMinute(0); -// date.setSecond(0); -// -// date.setTimeZone(zone); -// -// date.toZuluDate(); -// System.out.println(date); -// -// zone = SHEFTimezone.getSysTimeZone("C"); -// date = new SHEFDate(); -// date.setYear(1930); -// date.setMonth(04); -// date.setDay(20); -// date.setHour(7); -// date.setMinute(0); -// date.setSecond(0); -// -// date.setTimeZone(zone); -// -// date.toZuluDate(); -// System.out.println(date); -// -// zone = SHEFTimezone.getSysTimeZone("Z"); -// date = new SHEFDate(); -// date.setYear(2011); -// date.setMonth(8); -// date.setDay(13); -// date.setHour(0); -// date.setMinute(0); -// date.setSecond(0); -// date.setTimeZone(zone); -// -// date = date.applyData(new ParserToken("DT2001",TokenType.DATE_DATE)); -// System.out.println(date); - - - - + + /** + * Return a copy of the calendar passed in. + * + * @param cal + * The Calendar to copy + * @return The new Calendar + */ + private static Calendar copy(Calendar cal) { + if (cal == null) { + return cal; + } + + Calendar copy = TimeUtil.newGmtCalendar(); + copy.setTimeInMillis(cal.getTimeInMillis()); + return copy; + } + + public static final void main(String[] args) { + + // List tokens = new ArrayList(); + // tokens.add(new ParserToken("DS30", TokenType.DATE_SEC)); + // tokens.add(new ParserToken("DN21", TokenType.DATE_MIN)); + // tokens.add(new ParserToken("DN2115", TokenType.DATE_MIN)); + // tokens.add(new ParserToken("DH15", TokenType.DATE_HOUR)); + // tokens.add(new ParserToken("DH1521", TokenType.DATE_HOUR)); + // tokens.add(new ParserToken("DH152115", TokenType.DATE_HOUR)); + // + // tokens.add(new ParserToken("DM033115", TokenType.DATE_MON)); + // tokens.add(new ParserToken("DRE-1", TokenType.DATE_REL)); + // + // SHEFDate d = new SHEFDate(20,8,1,31,14,21,15); + // d.setTimeZone(SHEFTimezone.getSysTimeZone("C")); + // + // System.out.println(d); + // System.out.println("*****************************************************"); + // for(ParserToken t : tokens) { + // System.out.print(String.format("%-10s%-20s",t.getType().name(),t.getToken())); + // System.out.println(d.applyData(t)); + // System.out.println("-----------------------------------------------------"); + // } + + // SHEFDate d = new SHEFDate(new Date(), TimeZone.getTimeZone("Z")); + // + // SHEFDate date = new SHEFDate(20,11,2,6,12,0,0); + // TimeZone zone = SHEFTimezone.getSysTimeZone("Z"); + // date.setTimeZone(zone); + // date.adjustToTimezone(); + // System.out.println(date); + // + // date = date.applyData(new ParserToken("DJ036",TokenType.DATE_JUL)); + // System.out.println(date); + // + // date = date.applyData(new ParserToken("DH12",TokenType.DATE_HOUR)); + // System.out.println(date); + // + // Calendar c = getDateYearMon(82, 8, 8, zone); + // date = new SHEFDate(c); + // System.out.println(date); + // + // zone = SHEFTimezone.getSysTimeZone("C"); + // date = new SHEFDate(); + // date.setCentury(-1); + // date.setLy(82); + // date.setMonth(4); + // date.setDay(25); + // date.setHour(1); + // date.setMinute(59); + // date.setSecond(59); + // + // date.setTimeZone(zone); + // System.out.println(date); + // date.adjustToTimezone(); + // System.out.println(date); + // System.out.println("DST Exclusion " + date.isDSTExclusion()); + // + // ParserToken t = new ParserToken("820229",TokenType.OBS_DATE_6); + // + // t.adjustToTimezone(zone); + // + // date = new SHEFDate(); + // date.setYear(2010); + // date.setMonth(3); + // date.setDay(14); + // date.setHour(2); + // date.setMinute(0); + // date.setSecond(1); + // + // date.setTimeZone(zone); + // System.out.println(date); + // date.adjustToTimezone(); + // + // date = SHEFDate.increment(date, "DIH1", 2); + // System.out.println(date); + // date = SHEFDate.increment(date, "DIN20", 2); + // System.out.println(date); + // date = SHEFDate.increment(date, "DIS10", 2); + // + // String s = date.toString(); + // date = SHEFDate.increment(date,"DIM3", 2); + // date = SHEFDate.increment(date,"DIM-9", 2); + // date = SHEFDate.increment(date,"DIM6", 2); + // System.out.println("pass = " + (s.equals(date.toString()))); + + // for(String s : new String[] { "ED", "CD", "MD", "PD", }) { + // SHEFDate date = new SHEFDate(20, 11, 5, 23, 3, 0, 0); + // TimeZone zone = SHEFTimezone.getSysTimeZone(s); + // date.setTimeZone(zone); + // date.toZuluDate(); + // System.out.println(date); + // } + + // zone = SHEFTimezone.getSysTimeZone("PS"); + // date = new SHEFDate(); + // date.setYear(1982); + // date.setMonth(2); + // date.setDay(8); + // date.setHour(4); + // date.setMinute(0); + // date.setSecond(0); + // + // date.setTimeZone(zone); + // + // date.toZuluDate(); + // System.out.println(date); + // + // zone = SHEFTimezone.getSysTimeZone("C"); + // date = new SHEFDate(); + // date.setYear(1930); + // date.setMonth(04); + // date.setDay(20); + // date.setHour(7); + // date.setMinute(0); + // date.setSecond(0); + // + // date.setTimeZone(zone); + // + // date.toZuluDate(); + // System.out.println(date); + // + // zone = SHEFTimezone.getSysTimeZone("Z"); + // date = new SHEFDate(); + // date.setYear(2011); + // date.setMonth(8); + // date.setDay(13); + // date.setHour(0); + // date.setMinute(0); + // date.setSecond(0); + // date.setTimeZone(zone); + // + // date = date.applyData(new ParserToken("DT2001",TokenType.DATE_DATE)); + // System.out.println(date); + TimeZone zone = SHEFTimezone.getSysTimeZone("Z"); SHEFDate date = new SHEFDate(); date.setYear(2011); @@ -1495,21 +1266,19 @@ public class SHEFDate { date.setHour(0); date.setMinute(0); date.setSecond(29); - + date.setTimeZone(zone); System.out.println(date); - date.inc(-30,TIME_DIVISIONS.SECONDS); - System.out.println(date); - - date.inc(1,TIME_DIVISIONS.MONTHS); + date.inc(-30, TIME_DIVISIONS.SECONDS); System.out.println(date); - date.inc(6,TIME_DIVISIONS.HOURS); + date.inc(1, TIME_DIVISIONS.MONTHS); System.out.println(date); - + date.inc(6, TIME_DIVISIONS.HOURS); + System.out.println(date); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/ShefUtil.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/ShefUtil.java index 7cb199d456..6a06cc0d34 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/ShefUtil.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/plugin/shef/util/ShefUtil.java @@ -26,13 +26,10 @@ import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.plugin.shef.data.ShefRecord; import com.raytheon.uf.common.dataplugin.shef.util.SHEFErrorCodes; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; /** * SHEF Utility class @@ -46,12 +43,12 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * 03/19/08 387 M. Duff Initial creation. * 12/12/08 1786 J. Sanchez Handled date parsing exceptions. * 01/12/08 1846 J. Sanchez Update parseCreationDate to use default year. - * + * May 14, 2014 2536 bclement moved WMO Header to common, removed unused log + * * */ public final class ShefUtil { - private final static Log log = LogFactory.getLog(ShefUtil.class); /** * Parses the date/data string and sets the time using the record date and * time zone as a base time value. diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/AbstractShefTransformer.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/AbstractShefTransformer.java index fb5aacbd1a..af4c14c229 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/AbstractShefTransformer.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/AbstractShefTransformer.java @@ -37,8 +37,9 @@ import com.raytheon.edex.esb.Headers; import com.raytheon.edex.transform.shef.obs.ObsToSHEFOptions; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.ohd.AppsDefaults; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; /** * Base class for observation data to SHEF conversions. @@ -50,7 +51,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Oct 30, 2008 1659 jkorman Initial creation * ====================================== * AWIPS2 DR Work - * 20120918 1185 jkorman Added save to archive capability. + * 20120918 1185 jkorman Added save to archive capability. + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage * * * @author jkorman @@ -248,9 +250,10 @@ public abstract class AbstractShefTransformer Calendar c = null; if((hdr != null)&&(headers != null)) { - c = TimeTools.findDataTime(hdr.getYYGGgg(), headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + c = WMOTimeParser.findDataTime(hdr.getYYGGgg(), fileName); } else { - c = TimeTools.getSystemCalendar(); + c = TimeUtil.newGmtCalendar(); } buffer.append(String.format(WMO_HEADER_FMT, stationId, c)); diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java index 1f5e647741..c79928a424 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefFilter.java @@ -24,13 +24,11 @@ import static com.raytheon.uf.common.localization.LocalizationContext.Localizati import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; -import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import javax.xml.bind.JAXBException; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; @@ -45,12 +43,16 @@ import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.ohd.AppsDefaults; -import com.raytheon.uf.common.serialization.SerializationUtil; +import com.raytheon.uf.common.serialization.JAXBManager; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.edex.decodertools.core.filterimpl.AbstractFilterElement; import com.raytheon.uf.edex.decodertools.core.filterimpl.AbstractObsFilter; import com.raytheon.uf.edex.decodertools.core.filterimpl.PluginDataObjectFilter; +import com.raytheon.uf.edex.decodertools.core.filterimpl.RadiusFilterElement; +import com.raytheon.uf.edex.decodertools.core.filterimpl.RectFilterElement; +import com.raytheon.uf.edex.decodertools.core.filterimpl.StationIdFilterElement; +import com.raytheon.uf.edex.decodertools.core.filterimpl.WMOHeaderFilterElement; /** * Use information in metarToShefFilter.xml, MetarToShefFilter filters out the @@ -65,6 +67,7 @@ import com.raytheon.uf.edex.decodertools.core.filterimpl.PluginDataObjectFilter; * 1/10/2013 15497 wkwock Initial creation * 2/13/2013 1584 mpduff Fix creation of "dummy" config. * 08/08/2013 16408 wkwock Use different metar.cfg file and options + * 09/09/2014 3548 mapeters Replaced SerializationUtil usage with JAXBManager. * * * @@ -113,37 +116,35 @@ public class MetarToShefFilter { byte[] data = new byte[(int) srcFile.length()]; InputStream stream = getInputStream(srcFile); - try { - stream.read(data); - stream.close(); - Object obj = SerializationUtil - .unmarshalFromXml(new String(data)); - if (obj instanceof PluginDataObjectFilter) { - logger.info("Found " + filterConfigFile - + " is PluginDataObjectFilter"); - PluginDataObjectFilter pdof = (PluginDataObjectFilter) obj; - MetarToShefRun mtsr = new MetarToShefRun(); - mtsr.setConfigFileName(METAR_CFG); - mtsr.setMetarToShefOptions(metarToShefOptions); - mtsr.setFilterElements(pdof.getFilterElements()); - mtsr.setFilterName(pdof.getFilterName()); - this.metarToShefRun.add(mtsr); - } else if (obj instanceof MetarToShefFilter) { - MetarToShefFilter filter = (MetarToShefFilter) obj; - this.metarToShefRun = filter.metarToShefRun; - logger.info("Found " + filterConfigFile - + " is MetarToShefFilter"); - } else { - logger.error("Found " + filterConfigFile - + " is " - + obj.getClass().getCanonicalName()); - createDummyFilter(); - } - } catch (IOException e) { - logger.error("Unable to read filter config", e); - } catch (JAXBException e) { - logger.error("Unable to unmarshall filter config", - e); + stream.read(data); + stream.close(); + JAXBManager jaxb = new JAXBManager( + PluginDataObjectFilter.class, + MetarToShefFilter.class, + RadiusFilterElement.class, + RectFilterElement.class, + StationIdFilterElement.class, + WMOHeaderFilterElement.class); + Object obj = jaxb.unmarshalFromXml(new String(data)); + if (obj instanceof PluginDataObjectFilter) { + logger.info("Found " + filterConfigFile + + " is PluginDataObjectFilter"); + PluginDataObjectFilter pdof = (PluginDataObjectFilter) obj; + MetarToShefRun mtsr = new MetarToShefRun(); + mtsr.setConfigFileName(METAR_CFG); + mtsr.setMetarToShefOptions(metarToShefOptions); + mtsr.setFilterElements(pdof.getFilterElements()); + mtsr.setFilterName(pdof.getFilterName()); + this.metarToShefRun.add(mtsr); + } else if (obj instanceof MetarToShefFilter) { + MetarToShefFilter filter = (MetarToShefFilter) obj; + this.metarToShefRun = filter.metarToShefRun; + logger.info("Found " + filterConfigFile + + " is MetarToShefFilter"); + } else { + logger.error("Found " + filterConfigFile + " is " + + obj.getClass().getCanonicalName()); + createDummyFilter(); } } else { logger.error(String.format(ERROR_2_FMT, @@ -159,7 +160,7 @@ public class MetarToShefFilter { // Could not create PathManager } } catch (Exception e) { - logger.error("Error creating filter.", e); + logger.error("Error creating filter from " + filterConfigFile, e); createDummyFilter(); } diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefTransformer.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefTransformer.java index 38a1bf2e37..9e02ed0316 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefTransformer.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/MetarToShefTransformer.java @@ -35,9 +35,10 @@ import com.raytheon.edex.transform.shef.obs.SHEF_Metar_Codes; import com.raytheon.edex.transform.shef.obs.SHEF_Obs_Codes; import com.raytheon.edex.transform.shef.obs.Utilities; import com.raytheon.uf.common.dataplugin.obs.metar.MetarRecord; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Transforms a decoded METAR observation into a series of SHEF encoded data @@ -53,6 +54,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * 20120918 1185 jkorman Added save to archive capability. * Jan 30, 2010 15779 lbousaidi added 4 letter to station id for ACR * Aug 08, 2013 16408 wkwock Use different metar.cfg file and options + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage * * * @author jkorman @@ -125,9 +127,9 @@ public class MetarToShefTransformer extends // Transformed METAR PluginDataObject to SHEF byte[] result = null; - Calendar nowCalendar = TimeTools.getSystemCalendar(); + Calendar nowCalendar = TimeUtil.newGmtCalendar(); - Calendar metarTime = TimeTools.getSystemCalendar((String) headers + Calendar metarTime = WMOTimeParser.getSystemCalendar((String) headers .get(DecoderTools.INGEST_FILE_NAME)); logger.debug("report object type = " + report.getClass().getName()); @@ -225,7 +227,7 @@ public class MetarToShefTransformer extends try { MetarRecord report = wxReport; - Calendar c = TimeTools.getSystemCalendar((String) headers + Calendar c = WMOTimeParser.getSystemCalendar((String) headers .get(DecoderTools.INGEST_FILE_NAME)); StringBuilder lineHdr = new StringBuilder(); diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/SMToShefTransformer.java b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/SMToShefTransformer.java index 6576acafd2..812672c5f5 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/SMToShefTransformer.java +++ b/edexOsgi/com.raytheon.edex.plugin.shef/src/com/raytheon/edex/transform/shef/SMToShefTransformer.java @@ -27,10 +27,10 @@ import com.raytheon.edex.esb.Headers; import com.raytheon.edex.transform.shef.obs.SHEF_Obs_Codes; import com.raytheon.edex.transform.shef.obs.SHEF_SM_Codes; import com.raytheon.uf.common.dataplugin.sfcobs.ObsCommon; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.decodertools.core.DecoderTools; import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; -import com.raytheon.uf.edex.decodertools.time.TimeTools; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Transforms a decoded synoptic observation into a series of SHEF encoded data @@ -45,6 +45,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * ====================================== * AWIPS2 DR Work * 20120918 1185 jkorman Added save to archive capability. + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage * * * @author jkorman @@ -130,7 +131,7 @@ public class SMToShefTransformer extends AbstractShefTransformer { int place = 0; try { - Calendar c = TimeTools.getSystemCalendar((String) headers + Calendar c = WMOTimeParser.getSystemCalendar((String) headers .get(DecoderTools.INGEST_FILE_NAME)); StringBuilder lineHdr = new StringBuilder(); diff --git a/edexOsgi/com.raytheon.edex.plugin.shef/utility/edex_static/base/distribution/shef.xml b/edexOsgi/com.raytheon.edex.plugin.shef/utility/edex_static/base/distribution/shef.xml index bc1e330094..b9a6462f30 100644 --- a/edexOsgi/com.raytheon.edex.plugin.shef/utility/edex_static/base/distribution/shef.xml +++ b/edexOsgi/com.raytheon.edex.plugin.shef/utility/edex_static/base/distribution/shef.xml @@ -20,7 +20,7 @@ --> ^[AF][BS].... (KOMA|KOAX|KLSE|KARX|KDSM|KDMX|KDVN|KMLI|KEAX|KMCI|KFSD|KGRI|KGID|KLBF|KSTL|KLSX|KMSP|KMPX|KTOP|KZMP|KPQR).* - ^FGUS.. (KKRF|KMSR ).* + ^FGUS.. (KKRF|KMSR|KSTR ).* ^FOUS[67]3 (KKRF|KMSR ).* ^SRUS.. KOHD.* ^SRUS[568][36].* diff --git a/edexOsgi/com.raytheon.edex.plugin.textlightning/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.textlightning/META-INF/MANIFEST.MF index 79aa87f42e..89ce4a78c1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.textlightning/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.textlightning/META-INF/MANIFEST.MF @@ -2,13 +2,15 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Textlightning Plug-in Bundle-SymbolicName: com.raytheon.edex.plugin.textlightning -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.edex.common +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Require-Bundle: com.raytheon.edex.common, - com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", - javax.persistence -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Import-Package: com.raytheon.uf.common.dataplugin.binlightning, +Require-Bundle: com.raytheon.uf.edex.decodertools, + com.raytheon.uf.common.dataplugin +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Import-Package: com.raytheon.edex.exception, + com.raytheon.edex.plugin, + com.raytheon.uf.common.dataplugin.binlightning, com.raytheon.uf.common.dataplugin.binlightning.impl, - org.apache.commons.logging + com.raytheon.uf.common.status, + com.raytheon.uf.common.time, + com.raytheon.uf.edex.core diff --git a/edexOsgi/com.raytheon.edex.plugin.textlightning/res/spring/textlightning_ep-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.textlightning/res/spring/textlightning_ep-ingest.xml index 5f5ada5907..8808d585c8 100644 --- a/edexOsgi/com.raytheon.edex.plugin.textlightning/res/spring/textlightning_ep-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.textlightning/res/spring/textlightning_ep-ingest.xml @@ -12,15 +12,9 @@ - - - - + errorHandlerRef="errorHandler"> - FAA_* - WWLLN_* + FAA_ + WWLLN_ diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.plugin.warning/META-INF/MANIFEST.MF index 101bc4e9bf..72f61e4b93 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.plugin.warning/META-INF/MANIFEST.MF @@ -3,7 +3,6 @@ Bundle-ManifestVersion: 2 Bundle-Name: Warning Plug-in Bundle-SymbolicName: com.raytheon.edex.plugin.warning Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization Bundle-Vendor: RAYTHEON Require-Bundle: org.geotools, javax.persistence, @@ -18,6 +17,7 @@ Require-Bundle: org.geotools, com.raytheon.uf.common.status, com.raytheon.uf.edex.database Export-Package: com.raytheon.edex.plugin.warning.tools -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.time, + org.apache.commons.logging, org.hibernate.annotations diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py b/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py index 0b50dff9d2..abefbfe7b1 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py +++ b/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py @@ -41,6 +41,9 @@ # Sep 12, 2013 2249 rferrel When incoming file from warngen adjust # start time from file's timestamp. # Oct 03, 2013 2402 bsteffen Make PythonDecoder more extendable. +# May 15, 2014 2536 bclement moved WMO time parsing to WMOTimeParser +# May 15, 2014 3157 dgilling Update location of WclInfo class. +# Jun 10, 2014 3268 dgilling Update location of WclInfo class. # # @@ -53,6 +56,7 @@ import copy import LogStream from ufpy import TimeUtil from com.raytheon.uf.edex.decodertools.time import TimeTools +from com.raytheon.uf.common.wmo import WMOTimeParser ACCURATE_CITIES_PILS = ['CFW', 'FFA', 'NPW', 'RFW', 'WSW'] @@ -123,9 +127,9 @@ class StdWarningDecoder(): if warningTimestamp is None : # present time self._time = time.time() + self._timeOffset - if TimeTools.allowArchive(): + if WMOTimeParser.allowArchive(): try: - yyyymmddhh = TimeTools.getTimestamp(self._incomingFilename) + yyyymmddhh = WMOTimeParser.getTimestamp(self._incomingFilename) if len(yyyymmddhh) < 10: timeTuple = time.strptime(yyyymmddhh, "%Y%m%d") else : @@ -174,7 +178,7 @@ class StdWarningDecoder(): if self._productPil[0:3] == "WCL": endpoint = "WCLWatch" # build a Java object for the warning - from com.raytheon.edex.plugin.gfe.wcl import WclInfo + from com.raytheon.edex.plugin.gfe.watch import WclInfo import JUtil lines = JUtil.pyValToJavaObj(self._lines) warning = WclInfo(long(self._issueTime * 1000), diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/build.properties b/edexOsgi/com.raytheon.edex.plugin.warning/build.properties index edf44dd9f2..a69978f654 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/build.properties +++ b/edexOsgi/com.raytheon.edex.plugin.warning/build.properties @@ -3,4 +3,5 @@ output.. = bin/ bin.includes = META-INF/,\ .,\ res/,\ + resources/,\ WarningDecoder.py diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-common.xml b/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-common.xml index 56ca4d5c55..78f500c5df 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-common.xml +++ b/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-common.xml @@ -1,48 +1,43 @@ - + - - - - - - + + + + + + - - - - + + + + - - - - - - - + + + + + + + - - - - - - + + + + + + - - - - + + + + - - - - - - - + + + + + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-ingest.xml b/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-ingest.xml index e081f47f22..8af101ccf8 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-ingest.xml +++ b/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-ingest.xml @@ -1,72 +1,50 @@ - - - - - - - - - - - - + - - - + + + + - - + - - - - - warning - - - - --> + + - - - - - warning - - - - - - - - - - - - - - - - - java.lang.Throwable - - - - - + + + + + warning + + + + + + + + + + + + + + + + + java.lang.Throwable + + + + + diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-request.xml b/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-request.xml index 785245cee0..28860d3bb6 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-request.xml +++ b/edexOsgi/com.raytheon.edex.plugin.warning/res/spring/warning-request.xml @@ -1,14 +1,58 @@ + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd + http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> + + + + + + + - + + + + + + + - - - \ No newline at end of file + + + + + + + + + + + + + + + + java.lang.Throwable + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GenerateGeospatialDataRequestHandler.java b/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GenerateGeospatialDataRequestHandler.java index 0fb5496a5f..8dc921c1c9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GenerateGeospatialDataRequestHandler.java +++ b/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GenerateGeospatialDataRequestHandler.java @@ -23,7 +23,7 @@ import com.raytheon.uf.common.dataplugin.warning.gis.GenerateGeospatialDataReque import com.raytheon.uf.common.serialization.comm.IRequestHandler; /** - * TODO Add Description + * Generates geospatial data on demand. * *
  * 
@@ -31,8 +31,8 @@ import com.raytheon.uf.common.serialization.comm.IRequestHandler;
  * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
- * Jul 22, 2011            rjpeter     Initial creation
- * 
+ * Jul 22, 2011            rjpeter     Initial creation.
+ * May 19, 2014 2726       rjpeter     Updated call to GeospatialDataGenerator.
  * 
* * @author rjpeter @@ -41,6 +41,13 @@ import com.raytheon.uf.common.serialization.comm.IRequestHandler; public class GenerateGeospatialDataRequestHandler implements IRequestHandler { + final GeospatialDataGenerator dataGenerator; + + public GenerateGeospatialDataRequestHandler( + GeospatialDataGenerator dataGenerator) { + this.dataGenerator = dataGenerator; + } + /* * (non-Javadoc) * @@ -51,8 +58,8 @@ public class GenerateGeospatialDataRequestHandler implements @Override public Object handleRequest(GenerateGeospatialDataRequest request) throws Exception { - return GeospatialDataGenerator.generateGeoSpatialList( - request.getSite(), request.getMetaData()); + return dataGenerator.generateGeoSpatialList(request.getSite(), + request.getMetaData()); } } diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GeospatialDataGenerator.java b/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GeospatialDataGenerator.java index 4410294e69..b8d5a1b3fd 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GeospatialDataGenerator.java +++ b/edexOsgi/com.raytheon.edex.plugin.warning/src/com/raytheon/edex/plugin/warning/gis/GeospatialDataGenerator.java @@ -19,14 +19,25 @@ **/ package com.raytheon.edex.plugin.warning.gis; +import java.io.File; import java.sql.Timestamp; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; +import java.util.Calendar; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.TimeZone; +import java.util.Timer; +import java.util.TimerTask; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; import javax.xml.bind.JAXBException; @@ -36,6 +47,7 @@ import com.raytheon.uf.common.dataplugin.warning.config.AreaSourceConfiguration; import com.raytheon.uf.common.dataplugin.warning.config.DialogConfiguration; import com.raytheon.uf.common.dataplugin.warning.config.GeospatialConfiguration; import com.raytheon.uf.common.dataplugin.warning.config.WarngenConfiguration; +import com.raytheon.uf.common.dataplugin.warning.gis.GenerateGeospatialDataResult; import com.raytheon.uf.common.dataplugin.warning.gis.GeospatialData; import com.raytheon.uf.common.dataplugin.warning.gis.GeospatialDataSet; import com.raytheon.uf.common.dataplugin.warning.gis.GeospatialFactory; @@ -62,21 +74,18 @@ import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.edex.core.EDEXUtil; +import com.raytheon.uf.edex.core.EdexException; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; import com.raytheon.uf.edex.database.cluster.ClusterTask; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; -import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryCollection; -import com.vividsolutions.jts.geom.GeometryCollectionIterator; import com.vividsolutions.jts.geom.GeometryFactory; -import com.vividsolutions.jts.geom.LineString; -import com.vividsolutions.jts.geom.LinearRing; -import com.vividsolutions.jts.geom.MultiPolygon; import com.vividsolutions.jts.geom.Point; -import com.vividsolutions.jts.geom.Polygon; import com.vividsolutions.jts.geom.prep.PreparedGeometry; import com.vividsolutions.jts.geom.prep.PreparedGeometryFactory; import com.vividsolutions.jts.simplify.TopologyPreservingSimplifier; @@ -96,6 +105,12 @@ import com.vividsolutions.jts.simplify.TopologyPreservingSimplifier; * AreaConfiguration to areaFields List. * May 7, 2013 15690 Qinglu Lin Added convertToMultiPolygon() and updated queryGeospatialData(). * Oct 22, 2013 2361 njensen Use JAXBManager for XML + * Feb 07, 2014 16090 mgamazaychikov Changed visibility of some methods + * Mar 19, 2014 2726 rjpeter Made singleton instance. + * Apr 29, 2014 3033 jsanchez Properly handled site and back up site files. + * Jul 15, 2014 3352 rferrel Better logging and threading added. + * Aug 21, 2014 3353 rferrel Added getGeospatialTimeset and cluster locking of METADATA_FILE. + * generateGeoSpatialList now sends GenerateGeospatialDataResult. * * * @author rjpeter @@ -103,14 +118,120 @@ import com.vividsolutions.jts.simplify.TopologyPreservingSimplifier; */ public class GeospatialDataGenerator { - - private static final transient IUFStatusHandler statusHandler = UFStatus + private final IUFStatusHandler statusHandler = UFStatus .getHandler(GeospatialDataGenerator.class); - private static final SingleTypeJAXBManager jaxb = SingleTypeJAXBManager + private final SingleTypeJAXBManager jaxb = SingleTypeJAXBManager .createWithoutException(GeospatialTimeSet.class); - public static void generateUniqueGeospatialMetadataGeometries() { + private final String updaterEndpoint; + + /** + * Pool to service the callable Geometry. + */ + private final ExecutorService pool; + + /** + * Property in the warning.properties to determine the maximum number of + * geometry threads. + */ + private final String THREAD_COUNT_PROPERTY = "geospatial.geometry.threads"; + + /** Default thread count must be a valid positive number string. */ + private final String DEFAULT_THREAD_COUNT = "5"; + + /** Cluster task name. */ + private final static String CLUSTER_NAME = "WarngenGeometryGenerator"; + + /** Time out lock after one minute. */ + private final static long TIME_OUT = TimeUtil.MILLIS_PER_MINUTE; + + /** Task to update the lock time for the locked plugin cluster task. */ + private static final class LockUpdateTask extends TimerTask { + /** The locked cluster task's details. */ + private final String details; + + public LockUpdateTask(String details) { + this.details = details; + } + + @Override + public void run() { + long currentTime = System.currentTimeMillis(); + ClusterLockUtils.updateLockTime(CLUSTER_NAME, details, currentTime); + } + } + + /** + * Common format for cluster tasks details entry. + * + * @param site + * @param fileName + * @return details + */ + private static String getDetails(String site, String fileName) { + return String.format("%s%s%s", site, File.separator, fileName); + } + + /** + * Lock cluster task for the site's metadata file and obtain the file's + * geospatial time set. + * + * @param site + * @return geospatialTimeSet + */ + public static GeospatialTimeSet getGeospatialTimeset(String site) { + String metadataDetails = getDetails(site, + GeospatialFactory.METADATA_FILE + .substring(GeospatialFactory.METADATA_FILE + .lastIndexOf(File.separator) + 1)); + + ClusterTask ct = null; + try { + do { + ct = ClusterLockUtils.lock(CLUSTER_NAME, metadataDetails, + TIME_OUT, true); + } while (!LockState.SUCCESSFUL.equals(ct.getLockState())); + return GeospatialFactory.getGeospatialTimeSet(site); + } finally { + if (ct != null) { + ClusterLockUtils.unlock(ct, false); + } + } + } + + /** + * The constructor. + */ + public GeospatialDataGenerator(String updaterEndpoint) { + this.updaterEndpoint = updaterEndpoint; + this.pool = initPool(THREAD_COUNT_PROPERTY, DEFAULT_THREAD_COUNT); + } + + /** + * Parse property for thread count and return a fixed thread pool. + * + * @param propKey + * @param defaultStr + * @return pool + */ + private ExecutorService initPool(String propKey, String defaultStr) { + String maxThreadStr = System.getProperty(propKey, defaultStr); + int maxThreads = -1; + try { + maxThreads = Integer.parseInt(maxThreadStr); + if (maxThreads <= 0) { + maxThreads = Integer.parseInt(defaultStr); + } + } catch (NumberFormatException ex) { + maxThreads = Integer.parseInt(defaultStr); + } + + return Executors.newFixedThreadPool(maxThreads); + + } + + public void generateUniqueGeospatialMetadataGeometries() { String mySite = SiteUtil.getSite(); DialogConfiguration dialogConfig = null; @@ -124,19 +245,47 @@ public class GeospatialDataGenerator { List sites = getBackupSites(dialogConfig); sites.add(0, mySite); List templates = getTemplates(dialogConfig); + Set metaDataSet = getMetaDataSet(sites, templates); + + for (final String site : sites) { + long start = System.currentTimeMillis(); + if (statusHandler.isPriorityEnabled(Priority.INFO)) { + statusHandler.handle(Priority.INFO, + "Checking warngen geometries for site: " + site); + } + + for (final GeospatialMetadata md : metaDataSet) { + try { + generateGeoSpatialList(site, md); + } catch (SpatialException e) { + statusHandler.handle(Priority.PROBLEM, + e.getLocalizedMessage(), e); + } + } + + if (statusHandler.isPriorityEnabled(Priority.INFO)) { + long time = System.currentTimeMillis() - start; + statusHandler.handle(Priority.INFO, String.format( + "Checking warngen geometries for site: %s, took: %s", + site, TimeUtil.prettyDuration(time))); + } + } + } + + public Set getMetaDataSet(List sites, + List templates) { + Set metaDataSet = new HashSet(); for (String site : sites) { metaDataSet.clear(); - statusHandler.handle(Priority.INFO, - "Generating warngen geometries for site: " + site); // get the unique geospatialMetadata sets to generate for (String templateName : templates) { WarngenConfiguration template = null; try { template = WarngenConfiguration.loadConfig(templateName, - site); + site, null); } catch (Exception e) { statusHandler .handle(Priority.ERROR, @@ -155,21 +304,11 @@ public class GeospatialDataGenerator { metaDataSet.add(gmd); } } - - for (GeospatialMetadata md : metaDataSet) { - try { - generateGeoSpatialList(site, md); - } catch (Exception e) { - statusHandler - .handle(Priority.ERROR, - "Failed to generate geospatial data for warngen", - e); - } - } } + return metaDataSet; } - private static List getBackupSites(DialogConfiguration dialogConfig) { + public static List getBackupSites(DialogConfiguration dialogConfig) { String[] CWAs = dialogConfig.getBackupCWAs().split(","); List rval = new ArrayList(CWAs.length + 1); for (String s : CWAs) { @@ -180,7 +319,7 @@ public class GeospatialDataGenerator { return rval; } - private static List getTemplates(DialogConfiguration dialogConfig) { + public static List getTemplates(DialogConfiguration dialogConfig) { String[] mainProducts = dialogConfig.getMainWarngenProducts() .split(","); String[] otherProducts = dialogConfig.getOtherWarngenProducts().split( @@ -200,17 +339,36 @@ public class GeospatialDataGenerator { return rval; } - public static GeospatialDataSet generateGeoSpatialList(String site, + private String getClusterDetails(String site, GeospatialMetadata metaData) { + String fileName = generateGeoDataFilename(metaData); + return getDetails(site, fileName); + } + + public GeospatialDataSet generateGeoSpatialList(String site, GeospatialMetadata metaData) throws SpatialException { GeospatialDataSet dataSet = null; - String file = generateGeoDataFilename(metaData); + String details = getClusterDetails(site, metaData); ClusterTask ct = null; + Timer lockUpdateTimer = null; + long start = 0L; try { do { - ct = ClusterLockUtils.lock("WarngenGeometryGenerator", file, - 60000, true); + ct = ClusterLockUtils.lock(CLUSTER_NAME, details, TIME_OUT, + true); } while (!LockState.SUCCESSFUL.equals(ct.getLockState())); + start = System.currentTimeMillis(); + if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { + String message = String + .format("Start generate Geo Spatial data for site: %s, lock: %s.", + site, ct.getId().getDetails()); + statusHandler.handle(Priority.DEBUG, message); + } + + lockUpdateTimer = new Timer(CLUSTER_NAME + " timer", true); + TimerTask tt = new LockUpdateTask(ct.getId().getDetails()); + lockUpdateTimer.schedule(tt, TIME_OUT / 2L, TIME_OUT / 2L); + GeospatialTime curTime = null; try { @@ -224,7 +382,8 @@ public class GeospatialDataGenerator { // NOTE: changes to curTimeMap are not persisted back to the // GeospatialTimeSet Map lastRunTimeMap = GeospatialFactory - .loadLastRunGeoTimeSet(site); + .loadLastRunGeoTimeSet(getGeospatialTimeset(site)); + GeospatialTime lastRunTime = lastRunTimeMap.get(metaData); boolean generate = true; if (curTime.equals(lastRunTime)) { @@ -298,20 +457,49 @@ public class GeospatialDataGenerator { // save to disk try { persistGeoData(site, lastRunTimeMap, curTime, dataSet); + + if (updaterEndpoint != null) { + GenerateGeospatialDataResult result = new GenerateGeospatialDataResult(); + String updatedTimeStamp = getTimeStamp(curTime, + lastRunTime); + result.setTimestamp(updatedTimeStamp); + result.setSite(site); + result.setArea(metaData.getAreaSource()); + try { + EDEXUtil.getMessageProducer().sendAsync( + updaterEndpoint, result); + } catch (EdexException e) { + statusHandler.error("Could not send message to " + + updaterEndpoint, e); + } + } } catch (Exception e) { statusHandler.handle(Priority.WARN, "Error occurred persisting area geometry data", e); } } } finally { + if (lockUpdateTimer != null) { + lockUpdateTimer.cancel(); + lockUpdateTimer = null; + } + if (ct != null) { ClusterLockUtils.unlock(ct, false); + if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { + long time = System.currentTimeMillis() - start; + String message = String + .format("Generated Geo Spatial data for site: %s, lock: %s, total time: %s.", + site, ct.getId().getDetails(), + TimeUtil.prettyDuration(time)); + statusHandler.handle(Priority.DEBUG, message); + } } } return dataSet; } - public static GeospatialMetadata getMetaData(WarngenConfiguration template) { + public GeospatialMetadata getMetaData(WarngenConfiguration template) { GeospatialMetadata rval = new GeospatialMetadata(); GeospatialConfiguration geoConfig = template.getGeospatialConfig(); AreaSourceConfiguration areaConfig = template.getHatchedAreaSource(); @@ -337,7 +525,7 @@ public class GeospatialDataGenerator { return rval; } - private static GeospatialTime queryForCurrentTimes( + public static GeospatialTime queryForCurrentTimes( GeospatialMetadata metaData) throws Exception { GeospatialTime rval = new GeospatialTime(); String areaSource = metaData.getAreaSource().toLowerCase(); @@ -346,12 +534,12 @@ public class GeospatialDataGenerator { StringBuilder sql = new StringBuilder(200); sql.append("SELECT table_name, import_time FROM mapdata.map_version WHERE table_name in ('"); sql.append(areaSource.toLowerCase()); - if (tzSource != null && tzSource.length() > 0) { + if ((tzSource != null) && (tzSource.length() > 0)) { tzSource = tzSource.toLowerCase(); sql.append("', '"); sql.append(tzSource); } - if (pAreaSource != null && pAreaSource.length() > 0) { + if ((pAreaSource != null) && (pAreaSource.length() > 0)) { pAreaSource = pAreaSource.toLowerCase(); sql.append("', '"); sql.append(pAreaSource); @@ -381,8 +569,9 @@ public class GeospatialDataGenerator { return rval; } - private static GeospatialData[] queryGeospatialData(String site, - GeospatialMetadata metaData) throws SpatialException { + private GeospatialData[] queryGeospatialData(String site, + GeospatialMetadata metaData) throws SpatialException, + InterruptedException, ExecutionException { String areaSource = metaData.getAreaSource(); HashMap map = new HashMap( @@ -410,27 +599,7 @@ public class GeospatialDataGenerator { .query(cwaSource, cwaAreaFields.toArray(new String[cwaAreaFields .size()]), null, cwaMap, SearchMode.WITHIN); - Geometry multiPolygon = null; - Geometry clippedGeom = null; - for (int i = 0; i < features.length; i++) { - multiPolygon = null; - for (int j = 0; j < cwaFeatures.length; j++) { - clippedGeom = features[i].geometry - .intersection(cwaFeatures[j].geometry); - if (clippedGeom instanceof GeometryCollection) { - GeometryCollection gc = (GeometryCollection) clippedGeom; - if (multiPolygon != null) - multiPolygon = multiPolygon - .union(convertToMultiPolygon(gc)); - else - multiPolygon = convertToMultiPolygon(gc); - } - } - if (multiPolygon != null) - features[i].geometry = multiPolygon; - else if (clippedGeom != null) - features[i].geometry = clippedGeom; - } + updateFeatures(features, cwaFeatures); } topologySimplifyQueryResults(features); @@ -450,66 +619,63 @@ public class GeospatialDataGenerator { } /** - * Convert a GeometryCollection to a MultiPolygon. + * Queue request for each feature and wait for the results. * - * @param gc + * @param features + * @param cwaFeatures + * @throws InterruptedException + * @throws ExecutionException */ - private static MultiPolygon convertToMultiPolygon(GeometryCollection gc) { - GeometryCollectionIterator iter = new GeometryCollectionIterator(gc); - Set polygons = new HashSet(); - MultiPolygon mp = null; - iter.next(); - while (iter.hasNext()) { - Object o = iter.next(); - if (o instanceof MultiPolygon) { - if (mp == null) - mp = (MultiPolygon) o; - else - mp = (MultiPolygon) mp.union((MultiPolygon) o); - } else if (o instanceof Polygon) { - polygons.add((Polygon) o); - } else if (o instanceof LineString || o instanceof Point) { - LinearRing lr = null; - Coordinate[] coords = null; - if (o instanceof LineString) { - Coordinate[] cs = ((LineString) o).getCoordinates(); - if (cs.length < 4) { - coords = new Coordinate[4]; - for (int j = 0; j < cs.length; j++) - coords[j] = new Coordinate(cs[j]); - for (int j = cs.length; j < 4; j++) - coords[j] = new Coordinate(cs[3 - j]); - } else { - coords = new Coordinate[cs.length + 1]; - for (int j = 0; j < cs.length; j++) - coords[j] = new Coordinate(cs[j]); - coords[cs.length] = new Coordinate(cs[0]); - } - } else { - coords = new Coordinate[4]; - for (int i = 0; i < 4; i++) - coords[i] = ((Point) o).getCoordinate(); - } - lr = (((Geometry) o).getFactory()).createLinearRing(coords); - Polygon poly = (new GeometryFactory()).createPolygon(lr, null); - polygons.add((Polygon) poly); - } else { - statusHandler.handle(Priority.WARN, - "Unprocessed Geometry object: " - + o.getClass().getName()); - } + private void updateFeatures(SpatialQueryResult[] features, + SpatialQueryResult[] cwaFeatures) throws InterruptedException, + ExecutionException { + List> featureFutures = new ArrayList>( + features.length); + Geometry[] cwaFeturesGeoms = new Geometry[cwaFeatures.length]; + for (int index = 0; index < cwaFeturesGeoms.length; ++index) { + cwaFeturesGeoms[index] = cwaFeatures[index].geometry; } - if (mp == null && polygons.size() == 0) - return null; - if (polygons.size() > 0) { - Polygon[] p = polygons.toArray(new Polygon[0]); - if (mp != null) - mp = (MultiPolygon) mp.union(new MultiPolygon(p, gc - .getFactory())); - else - mp = new MultiPolygon(p, gc.getFactory()); + List> geomFutures = null; + List> featuresCallable = new ArrayList>( + featureFutures.size()); + + // Queue all intersections. + for (int index = 0; index < features.length; ++index) { + + geomFutures = submitGeomIntersection(features[index].geometry, + cwaFeturesGeoms); + Callable callable = new FeatureCallable(geomFutures, + statusHandler); + featuresCallable.add(callable); } - return mp; + + // Finally queue all features. + featureFutures = pool.invokeAll(featuresCallable); + + for (int index = 0; index < features.length; ++index) { + Future future = featureFutures.get(index); + features[index].geometry = future.get(); + } + } + + /** + * Get future's list for a feature's geometry. + * + * @param featureGeom + * @param cwaFeaturesGeoms + * @return geomFutures + */ + private List> submitGeomIntersection(Geometry featureGeom, + Geometry[] cwaFeaturesGeoms) { + List> geomFutures = new ArrayList>( + cwaFeaturesGeoms.length); + for (Geometry cwaGeom : cwaFeaturesGeoms) { + Callable callable = new GeomIntersectionCallable( + featureGeom, cwaGeom); + geomFutures.add(pool.submit(callable)); + } + + return geomFutures; } /** @@ -518,8 +684,7 @@ public class GeospatialDataGenerator { * * @param results */ - private static void topologySimplifyQueryResults( - SpatialQueryResult[] results) { + private void topologySimplifyQueryResults(SpatialQueryResult[] results) { GeometryFactory gf = new GeometryFactory(); Geometry[] geoms = new Geometry[results.length]; for (int i = 0; i < results.length; i++) { @@ -562,7 +727,7 @@ public class GeospatialDataGenerator { * @param hull * @param geoData */ - private static GeospatialData[] queryTimeZones(GeospatialMetadata metaData, + private GeospatialData[] queryTimeZones(GeospatialMetadata metaData, Geometry hull, GeospatialData[] geoData) throws SpatialException { GeospatialData[] rval = null; String timezonePathcastTable = metaData.getTimeZoneSource(); @@ -618,8 +783,8 @@ public class GeospatialDataGenerator { * @return * @throws SpatialException */ - private static GeospatialData[] queryParentAreas( - GeospatialMetadata metaData, Geometry hull) throws SpatialException { + private GeospatialData[] queryParentAreas(GeospatialMetadata metaData, + Geometry hull) throws SpatialException { GeospatialData[] rval = null; String parentAreaSource = metaData.getParentAreaSource(); if (parentAreaSource != null) { @@ -644,35 +809,66 @@ public class GeospatialDataGenerator { return rval; } - private static void persistGeoData(String site, + /** + * Save data in the desired file and update the meta data file. Assumes + * already have a cluster lock for the data file. A cluster lock is obtained + * on the metadata file prior to updating it. + * + * @param site + * @param times + * @param curTime + * @param geoData + * @throws SerializationException + * @throws LocalizationException + * @throws JAXBException + */ + private void persistGeoData(String site, Map times, GeospatialTime curTime, GeospatialDataSet geoData) throws SerializationException, LocalizationException, JAXBException { + String fileName = generateGeoDataFilename(curTime.getMetaData()); + String metadataDetails = getDetails(site, + GeospatialFactory.METADATA_FILE + .substring(GeospatialFactory.METADATA_FILE + .lastIndexOf(File.separator) + 1)); - IPathManager pathMgr = PathManagerFactory.getPathManager(); - LocalizationContext context = pathMgr.getContext( - LocalizationType.COMMON_STATIC, LocalizationLevel.CONFIGURED); - context.setContextName(site); + ClusterTask ct = null; + try { + do { + ct = ClusterLockUtils.lock(CLUSTER_NAME, metadataDetails, + TIME_OUT, true); + } while (!LockState.SUCCESSFUL.equals(ct.getLockState())); - byte[] data = SerializationUtil.transformToThrift(geoData); - LocalizationFile lf = pathMgr.getLocalizationFile(context, - GeospatialFactory.GEO_DIR + fileName); - lf.write(data); + IPathManager pathMgr = PathManagerFactory.getPathManager(); + LocalizationContext context = pathMgr.getContext( + LocalizationType.COMMON_STATIC, + LocalizationLevel.CONFIGURED); + context.setContextName(site); - curTime.setFileName(fileName); - times.put(curTime.getMetaData(), curTime); + byte[] data = SerializationUtil.transformToThrift(geoData); + LocalizationFile lf = pathMgr.getLocalizationFile(context, + GeospatialFactory.GEO_DIR + fileName); + lf.write(data); - GeospatialTimeSet set = new GeospatialTimeSet(); - set.setData(new ArrayList(times.values())); - String xml = jaxb.marshalToXml(set); + curTime.setFileName(fileName); + times.put(curTime.getMetaData(), curTime); - lf = pathMgr.getLocalizationFile(context, - GeospatialFactory.METADATA_FILE); - lf.write(xml.getBytes()); + GeospatialTimeSet set = new GeospatialTimeSet(); + set.setData(new ArrayList(times.values())); + String xml = jaxb.marshalToXml(set); + + lf = pathMgr.getLocalizationFile(context, + GeospatialFactory.METADATA_FILE); + lf.write(xml.getBytes()); + } finally { + if (ct != null) { + ClusterLockUtils.unlock(ct, false); + } + } } - private static void deleteGeomFiles(String site, GeospatialTime time) { + private void deleteGeomFiles(String site, GeospatialTime time) { String fileName = time.getFileName(); IPathManager pathMgr = PathManagerFactory.getPathManager(); @@ -692,8 +888,32 @@ public class GeospatialDataGenerator { } } - private static final String generateGeoDataFilename( - GeospatialMetadata metaData) { + private String generateGeoDataFilename(GeospatialMetadata metaData) { return metaData.getAreaSource() + "_" + metaData.hashCode() + ".bin"; } + + private String getTimeStamp(GeospatialTime curTime, + GeospatialTime lastRunTime) { + long tmStampMs = 0; + if (lastRunTime != null) { + if (curTime.getAreaSourceTime() != lastRunTime.getAreaSourceTime()) { + tmStampMs = curTime.getAreaSourceTime(); + } else if (curTime.getParentSourceTime() != lastRunTime + .getParentSourceTime()) { + tmStampMs = curTime.getParentSourceTime(); + } else if (curTime.getTimeZoneSourceTime() != lastRunTime + .getTimeZoneSourceTime()) { + tmStampMs = curTime.getTimeZoneSourceTime(); + } + } else { + tmStampMs = curTime.getAreaSourceTime(); + } + + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + sdf.setTimeZone(TimeZone.getTimeZone("GMT")); + Calendar calendar = Calendar.getInstance(); + calendar.setTimeZone(TimeZone.getTimeZone("GMT")); + calendar.setTimeInMillis(tmStampMs); + return sdf.format(calendar.getTime()); + } } diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/utility/common_static/base/purge/warningPurgeRules.xml b/edexOsgi/com.raytheon.edex.plugin.warning/utility/common_static/base/purge/warningPurgeRules.xml index 27045d6588..7160eb817d 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/utility/common_static/base/purge/warningPurgeRules.xml +++ b/edexOsgi/com.raytheon.edex.plugin.warning/utility/common_static/base/purge/warningPurgeRules.xml @@ -6,14 +6,14 @@ FA.Y - 05-00:00:00 + 20-00:00:00 FA.W - 05-00:00:00 + 20-00:00:00 FF.W - 05-00:00:00 + 20-00:00:00 diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/utility/edex_static/base/distribution/warning.xml b/edexOsgi/com.raytheon.edex.plugin.warning/utility/edex_static/base/distribution/warning.xml index 0b937ed0e5..1361d3ae98 100644 --- a/edexOsgi/com.raytheon.edex.plugin.warning/utility/edex_static/base/distribution/warning.xml +++ b/edexOsgi/com.raytheon.edex.plugin.warning/utility/edex_static/base/distribution/warning.xml @@ -22,5 +22,5 @@ ^(W[FGHOTUW]|FZ)[ACHKMPU][AHKQSWY].* ^(WT)(NT|PZ)\d{2} KNHC.* ^(WTP)A\d{2} PHFO.* - ^(NWU)S\d{2} KWNS.* + ^NWUS([13-9]\d|2[1-9]) KWNS.*
diff --git a/edexOsgi/com.raytheon.edex.productsrv/res/spring/uengine-request.xml b/edexOsgi/com.raytheon.edex.productsrv/res/spring/uengine-request.xml index 3d145edeea..60135ae711 100644 --- a/edexOsgi/com.raytheon.edex.productsrv/res/spring/uengine-request.xml +++ b/edexOsgi/com.raytheon.edex.productsrv/res/spring/uengine-request.xml @@ -7,59 +7,11 @@ factory-method="getInstance" > + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + diff --git a/edexOsgi/com.raytheon.edex.rpgenvdata/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.rpgenvdata/META-INF/MANIFEST.MF index f56ab53bad..3634a2d0a7 100644 --- a/edexOsgi/com.raytheon.edex.rpgenvdata/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.rpgenvdata/META-INF/MANIFEST.MF @@ -17,7 +17,8 @@ Require-Bundle: com.raytheon.uf.common.localization;bundle-version="1.11.24", com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", com.raytheon.uf.common.gridcoverage;bundle-version="1.0.0", com.raytheon.uf.common.dataplugin.level;bundle-version="1.12.1174", - org.itadaki.bzip2;bundle-version="0.9.1" + org.itadaki.bzip2;bundle-version="0.9.1", + com.raytheon.uf.edex.ndm Import-Package: com.raytheon.uf.common.dataplugin.radar, com.raytheon.uf.common.dataplugin.radar.request, com.raytheon.uf.common.ohd diff --git a/edexOsgi/com.raytheon.edex.rpgenvdata/build.properties b/edexOsgi/com.raytheon.edex.rpgenvdata/build.properties index 5791d48d5f..ad8d78badb 100644 --- a/edexOsgi/com.raytheon.edex.rpgenvdata/build.properties +++ b/edexOsgi/com.raytheon.edex.rpgenvdata/build.properties @@ -2,4 +2,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + resources/ diff --git a/edexOsgi/com.raytheon.edex.rpgenvdata/res/spring/rpgenvdata-spring.xml b/edexOsgi/com.raytheon.edex.rpgenvdata/res/spring/rpgenvdata-spring.xml index ea76594d40..e61b917ac3 100644 --- a/edexOsgi/com.raytheon.edex.rpgenvdata/res/spring/rpgenvdata-spring.xml +++ b/edexOsgi/com.raytheon.edex.rpgenvdata/res/spring/rpgenvdata-spring.xml @@ -6,10 +6,37 @@ - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.edex.uengine/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.edex.uengine/META-INF/MANIFEST.MF index 5642e36e7e..8e522b7a29 100644 --- a/edexOsgi/com.raytheon.edex.uengine/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.edex.uengine/META-INF/MANIFEST.MF @@ -2,25 +2,20 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Uengine Plug-in Bundle-SymbolicName: com.raytheon.edex.uengine -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.edex.uengine, com.raytheon.edex.uengine.exception, com.raytheon.edex.uengine.jep, com.raytheon.edex.uengine.runners, - com.raytheon.edex.uengine.subscription, com.raytheon.edex.uengine.tasks, - com.raytheon.edex.uengine.tasks.query, - com.raytheon.edex.uengine.util -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Import-Package: com.raytheon.edex.colormap, - com.raytheon.edex.exception, + com.raytheon.edex.uengine.tasks.query +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Import-Package: com.raytheon.edex.exception, com.raytheon.edex.msg, com.raytheon.edex.util, com.raytheon.edex.utility, - javax.servlet, - javax.servlet.http, org.apache.commons.logging Require-Bundle: com.raytheon.uf.edex.core;bundle-version="1.12.1174", com.raytheon.uf.edex.database;bundle-version="1.0.0", @@ -30,17 +25,9 @@ Require-Bundle: com.raytheon.uf.edex.core;bundle-version="1.12.1174", com.raytheon.uf.common.message;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", com.raytheon.uf.common.localization;bundle-version="1.12.1174", - com.raytheon.uf.common.velocity;bundle-version="1.0.0", com.raytheon.uf.common.status;bundle-version="1.12.1174", - com.raytheon.uf.common.geospatial;bundle-version="1.12.1174", - com.raytheon.uf.common.colormap;bundle-version="1.12.1174", com.raytheon.uf.common.python;bundle-version="1.12.1174", com.raytheon.uf.common.util;bundle-version="1.12.1174", org.apache.commons.configuration;bundle-version="1.6.0", org.apache.commons.lang;bundle-version="2.3.0", - org.apache.commons.pool;bundle-version="1.3.0", - org.apache.activemq;bundle-version="5.2.0", - org.apache.http;bundle-version="4.1.2", - org.springframework;bundle-version="3.1.4", - javax.jms;bundle-version="1.0.0", - org.hibernate;bundle-version="1.0.0" + org.apache.commons.pool;bundle-version="1.3.0" diff --git a/edexOsgi/com.raytheon.edex.uengine/build.properties b/edexOsgi/com.raytheon.edex.uengine/build.properties index 5791d48d5f..ad8d78badb 100644 --- a/edexOsgi/com.raytheon.edex.uengine/build.properties +++ b/edexOsgi/com.raytheon.edex.uengine/build.properties @@ -2,4 +2,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + resources/ diff --git a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/MicroEngineTaskManager.java b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/MicroEngineTaskManager.java index b97f91a472..f66804d8c2 100644 --- a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/MicroEngineTaskManager.java +++ b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/MicroEngineTaskManager.java @@ -35,8 +35,7 @@ import org.apache.commons.logging.LogFactory; import com.raytheon.edex.util.Util; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.common.util.JarUtil; -import com.raytheon.uf.edex.core.props.EnvProperties; -import com.raytheon.uf.edex.core.props.PropertiesFactory; +import com.raytheon.uf.edex.core.EDEXUtil; /** * Determines the classes that extend ScriptTask. Derived from original @@ -47,6 +46,7 @@ import com.raytheon.uf.edex.core.props.PropertiesFactory; * Date PR# Engineer Description * ----------- ---------- ------------ -------------------------- * Apr 2, 2007 njensen Initial Creation + * Jul 10, 2014 2914 garmendariz Remove EnvProperties * * */ @@ -88,7 +88,6 @@ public class MicroEngineTaskManager { Class task = null; URLClassLoader uriLoader; ClassLoader loader = ClassLoader.getSystemClassLoader(); - EnvProperties envProperties; String jarPath = null; String jarName = null; @@ -106,8 +105,7 @@ public class MicroEngineTaskManager { /* * next, get a listing of plugin JARs and search for tasks. */ - envProperties = PropertiesFactory.getInstance().getEnvProperties(); - pluginPath = envProperties.getEnvValue("PLUGINDIR"); + pluginPath = EDEXUtil.getEdexPlugins(); pluginPath = FileUtil.convertFilePath(pluginPath); File[] files = JarUtil.getJarFiles(new File(pluginPath)); uriLoader = Util.getLibrariesClassLoader(files); @@ -155,8 +153,8 @@ public class MicroEngineTaskManager { if (!fullName.equals(taskName) && task.isAssignableFrom(temp)) { - packages.add(fullName.substring(0, fullName - .lastIndexOf("."))); + packages.add(fullName.substring(0, + fullName.lastIndexOf("."))); } } } diff --git a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/LdadMicroEngine.java b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/LdadMicroEngine.java index da10bf8210..720455b0a2 100644 --- a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/LdadMicroEngine.java +++ b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/LdadMicroEngine.java @@ -25,15 +25,12 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; -import javax.xml.bind.annotation.adapters.HexBinaryAdapter; - import com.raytheon.edex.uengine.exception.MicroEngineException; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.message.Header; import com.raytheon.uf.common.message.Message; import com.raytheon.uf.common.message.Property; import com.raytheon.uf.common.message.response.AbstractResponseMessage; -import com.raytheon.uf.common.serialization.SerializationUtil; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.common.util.RunProcess; import com.raytheon.uf.edex.core.EDEXUtil; @@ -56,6 +53,7 @@ import com.raytheon.uf.edex.core.EDEXUtil; * Added logic to utilize the trigger. * Sep 19, 2011 10955 rferrel Use RunProcess * 05/25/2012 DR 15015 D. Friedman Use helper script to launch triggers. + * Aug 22, 2014 2926 bclement compatibility changes with new textdb service * * * @author mfegan @@ -133,10 +131,15 @@ public class LdadMicroEngine extends AMicroEngine { */ private String retrieveTextProduct(String prodID) throws Exception { Message message = createProductRequestMessage(prodID); - String xml = SerializationUtil.marshalToXml(message); Object response = EDEXUtil.getMessageProducer().sendSync(TEXT_DB_QUEUE, - xml); - return extractProductFromResponse(response.toString()); + message); + if (response instanceof Message) { + return extractProductFromResponse((Message) response); + } else { + throw new MicroEngineException( + "Unexpected return type from textdb service: " + + response.getClass()); + } } /** @@ -166,10 +169,10 @@ public class LdadMicroEngine extends AMicroEngine { Message message = new Message(); Header header = new Header(); List properties = new ArrayList(); - properties.add(new Property("VIEW", AsciiToHex("text"))); - properties.add(new Property("OP", AsciiToHex("GET"))); - properties.add(new Property("SUBOP", AsciiToHex("PROD"))); - properties.add(new Property("AFOSCMD", AsciiToHex(prodID))); + properties.add(new Property("VIEW", "text")); + properties.add(new Property("OP", "GET")); + properties.add(new Property("SUBOP", "PROD")); + properties.add(new Property("AFOSCMD", prodID)); header.setProperties(properties.toArray(new Property[] {})); message.setHeader(header); return message; @@ -195,15 +198,13 @@ public class LdadMicroEngine extends AMicroEngine { * @throws Exception * if an error occurs */ - private String extractProductFromResponse(String response) throws Exception { + private String extractProductFromResponse(Message reply) throws Exception { StringBuffer retVal = new StringBuffer(); - Message reply = (Message) SerializationUtil.unmarshalFromXml(response); Header header = reply.getHeader(); if (header != null && header.getProperties() != null) { for (Property property : header.getProperties()) { if (property.getName().equalsIgnoreCase("stdout")) { - String value = hexToAscii(property.getValue()); - retVal.append(value).append("\n"); + retVal.append(property.getValue()).append("\n"); } } } @@ -250,34 +251,6 @@ public class LdadMicroEngine extends AMicroEngine { RunProcess.getRunProcess() .exec(script, strEnv.toArray(new String[] {})); } - - /** - * Converts an ASCII string to a binary representation. This conversion is - * required as Text Database Server expects all Header Property values to be - * HEX encoded. - * - * @param string - * the string to convert - * @return the converted string - */ - private String AsciiToHex(String string) { - return new HexBinaryAdapter().marshal(string.getBytes()); - } - - /** - * Converts a HEX encoded string to plain ASCII. This conversion is required - * as Text Database Server expects all Header Property values to be HEX - * encoded. - * - * @param hexString - * the HEX encoded string - * - * @return the plain text string - */ - private String hexToAscii(String hexString) { - byte[] b = new HexBinaryAdapter().unmarshal(hexString); - return new String(b); - } /** * Finds a helper script that should be used to launch triggers. The helper diff --git a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/MicroEngine.java b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/MicroEngine.java index 54dda8bc58..8ebecc0fee 100644 --- a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/MicroEngine.java +++ b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/runners/MicroEngine.java @@ -19,34 +19,35 @@ **/ package com.raytheon.edex.uengine.runners; -import org.apache.commons.configuration.Configuration; - import com.raytheon.edex.uengine.exception.MicroEngineException; -import com.raytheon.uf.edex.core.props.PropertiesFactory; /** - * A factory class that creates and returns μEngine script runners. - * This class does not performing any logging. + * A factory class that creates and returns μEngine script runners. This + * class does not performing any logging. *

* Basic usage: - *


- *    IMicroEngine runner = MicroEngine.getInstance(type);
- * 
* *
- *
+ * 
+ *    IMicroEngine runner = MicroEngine.getInstance(type);
+ * 
+ * 
+ * + *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 17Nov2008    1709       MW Fegan    Initial creation.
+ * Jul 10, 2014 2914       garmendariz Remove EnvProperties
  * 
  * 
- * + * * @author mfegan * @version 1.0 * @see com.raytheon.edex.uengine.runners.AMicroEngine - * @see com.raytheon.edex.uengine.runners.IMicroEngine + * @see com.raytheon.edex.uengine.runners.IMicroEngine */ public final class MicroEngine { @@ -56,39 +57,40 @@ public final class MicroEngine { */ private MicroEngine() { } + /** * Creates a μEngine script runner of the specified type. * - * @param type the type of script runner to create + * @param type + * the type of script runner to create * * @return the script runner * - * @throws MicroEngineException if unable to create the script runner + * @throws MicroEngineException + * if unable to create the script runner */ - public static IMicroEngine getInstance(String type) throws MicroEngineException { + public static IMicroEngine getInstance(String type) + throws MicroEngineException { String className = null; Class aClass = null; - Configuration config = null; - String configName = "micro_engine"; IMicroEngine retVal = null; String runner = type.toLowerCase() + "_runner"; - /* get the configuration for uEngine */ - try { - config = PropertiesFactory.getInstance().getConfiguration(configName); - } catch (Exception e) { - throw new MicroEngineException("Unable to load properties for MicroEngine, type = " + type,e); - } + /* get the class name for the uEngine script runner */ - className = config.getString(runner); + className = System.getProperty(runner); if (className == null) { - throw new MicroEngineException("Unable to find class name for MicroEngine, type = " + type); + throw new MicroEngineException( + "Unable to find class name for MicroEngine, type = " + type); } + /* attempt to create the script runner class */ try { aClass = Class.forName(className); - retVal = (IMicroEngine)aClass.newInstance(); + retVal = (IMicroEngine) aClass.newInstance(); } catch (Exception e) { - throw new MicroEngineException("Unable to create MicroEngine script runner, type = " + type,e); + throw new MicroEngineException( + "Unable to create MicroEngine script runner, type = " + + type, e); } return retVal; } diff --git a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/tasks/output/FileOut.java b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/tasks/output/FileOut.java index ebb4593728..70e8b2ec97 100644 --- a/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/tasks/output/FileOut.java +++ b/edexOsgi/com.raytheon.edex.uengine/src/com/raytheon/edex/uengine/tasks/output/FileOut.java @@ -29,8 +29,7 @@ import com.raytheon.edex.uengine.exception.MicroEngineException; import com.raytheon.edex.uengine.tasks.ScriptTask; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.common.util.StringUtil; -import com.raytheon.uf.edex.core.props.EnvProperties; -import com.raytheon.uf.edex.core.props.PropertiesFactory; +import com.raytheon.uf.edex.core.EDEXUtil; /** * FileOut task derived from original FileOut uEngine task. Writes the data out @@ -41,6 +40,7 @@ import com.raytheon.uf.edex.core.props.PropertiesFactory; * Date PR# Engineer Description * ----------- ---------- ------------ -------------------------- * Mar 29, 2007 njensen Initial Creation + * Jul 10, 2014 2914 garmendariz Remove EnvProperties * * */ @@ -79,24 +79,19 @@ public class FileOut extends ScriptTask { } private void init() { - EnvProperties envProperties = PropertiesFactory.getInstance() - .getEnvProperties(); - - String uengineOutDir = envProperties.getEnvValue("UENGINEOUTDIR"); - String defaultDataDir = envProperties.getEnvValue("DEFAULTDATADIR"); /* * make sure there is an output directory defined */ if (StringUtil.isEmptyString(destDir)) { // default to uengineOutDir - destDir = uengineOutDir; + destDir = EDEXUtil.getEdexData() + File.separator + "uEngine"; logger.debug("Defaulting destDir to: " + destDir); } else { // If the ignore default data dir flag is not true then // prepend the default data dir to the destination directory. if (!ignoreDefaultDataDir) { - destDir = defaultDataDir + destDir; + destDir = EDEXUtil.getEdexData() + File.separator + destDir; } } } diff --git a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakMosaicImgLinkRequest.py b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakMosaicImgLinkRequest.py index 8e486e63e2..40bcd100dd 100644 --- a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakMosaicImgLinkRequest.py +++ b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakMosaicImgLinkRequest.py @@ -18,6 +18,7 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 12/22/09 173_partB mgamazaychikov Initial Creation +# 05/20/14 2913 bsteffen Remove unused imports # import BaseRequest @@ -76,7 +77,6 @@ class GempakMosaicImgLinkRequest(BaseRequest.BaseRequest): from com.raytheon.edex.uengine.tasks.decode import FileIn from com.raytheon.edex.uengine.tasks.output import FileOut from gov.noaa.nws.ncep.edex.plugin.mosaic.uengine import DecodeMosaicImage - from com.raytheon.edex.uengine.tasks.process import ColorMapImage, ReprojectImage, ImageOut response = ArrayList() size = self.queryResults.size() for i in range(size): diff --git a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakRadarImgLinkRequest.py b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakRadarImgLinkRequest.py index 97a60ed828..b93a18f1b5 100644 --- a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakRadarImgLinkRequest.py +++ b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GempakRadarImgLinkRequest.py @@ -20,6 +20,7 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 12/22/09 173_partB mgamazaychikov Initial Creation +# 05/20/14 2913 bsteffen Remove unused imports # import BaseRequest @@ -92,7 +93,6 @@ class GempakRadarImgLinkRequest(BaseRequest.BaseRequest): from com.raytheon.edex.uengine.tasks.decode import FileIn from com.raytheon.edex.uengine.tasks.output import FileOut from gov.noaa.nws.ncep.edex.uengine.tasks.radar import GempakDecodeRadarImage - from com.raytheon.edex.uengine.tasks.process import ColorMapImage, ReprojectImage, ImageOut response = ArrayList() size = self.queryResults.size() for i in range(size): diff --git a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GridRequest.py b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GridRequest.py index 1bed1d0944..9d3137481a 100644 --- a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GridRequest.py +++ b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/GridRequest.py @@ -31,6 +31,7 @@ from com.raytheon.edex.uengine.tasks.decode import FileIn # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 04/14/08 njensen Initial Creation. +# 05/20/14 2913 bsteffen Remove image creation # # @@ -38,7 +39,6 @@ class GridRequest(BaseRequest.BaseRequest): def __init__(self, pluginName): BaseRequest.BaseRequest.__init__(self, pluginName) - self.__createImage = False self.__reproject = False self.__colormap = "BW" self.__format = "png" @@ -56,9 +56,6 @@ class GridRequest(BaseRequest.BaseRequest): def reprojectImage(self, reproject): self.__reproject = reproject - - def requestImage(self, image): - self.__createImage = image def requestKml(self, kml): self.__kml = kml @@ -68,10 +65,7 @@ class GridRequest(BaseRequest.BaseRequest): if self.queryResults is None or self.queryResults.size() == 0: return self.makeNullResponse() else: - if self.__createImage: - return self.__makeImageResponse() - else: - return self.makeResponse() + return self.makeResponse() def makeResponse(self): from com.raytheon.uf.common.message.response import ResponseMessageGeneric @@ -85,42 +79,4 @@ class GridRequest(BaseRequest.BaseRequest): def makeNullResponse(self): response = ArrayList() return response - - def __makeImageResponse(self): - from com.raytheon.edex.uengine.tasks.grib import GribMap - from com.raytheon.edex.uengine.tasks.process import ColorMapImage, ReprojectImage, ImageOut - from com.raytheon.edex.uengine.tasks.output import FileOut - from com.raytheon.edex.uengine.tasks.response import MakeResponseUri - from com.raytheon.uf.common.geospatial import MapUtil - response = ArrayList() - size = self.queryResults.size() - for i in range(size): - currentQuery = self.queryResults.get(i) - geom = MapUtil.getGridGeometry(currentQuery.getSpatialObject()) - crs = geom.getCoordinateReferenceSystem() - fileIn = FileIn(self.plugin, currentQuery) - gribMap = GribMap(self.plugin, self.__colormap, fileIn.execute(), geom) - gribMap.setScaleFactor(self.__scaleFactor) - imageData = gribMap.execute() - geom = gribMap.getGridGeometry() - colorMap = ColorMapImage(self.__colormap, imageData, geom) - imageOut = None - if self.__reproject: - reproject = ReprojectImage(colorMap.execute(), geom, crs) - reprojectedImage = reproject.execute() - imageOut = ImageOut(reprojectedImage, self.__format, reproject.getGridGeometry()) - else: - imageOut = ImageOut(colorMap.execute(), self.__format,geom) - fileOut = FileOut(imageOut.execute(), self.__format) - writeFile = fileOut.execute() - makeResponse = MakeResponseUri(writeFile, None, currentQuery.getIdentifier(), self.__format) - response.add(makeResponse.execute()) - if self.__kml: - from com.raytheon.edex.uengine.tasks.output import KmlImage - kmlImage = KmlImage(writeFile, geom) - kmlFile = kmlImage.execute() - kmlResponse = MakeResponseUri(kmlFile, None, None, "kml") - response.add(kmlResponse.execute()) - - return response \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/McidasRequest.py b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/McidasRequest.py index 460b608ac1..08fe80ddef 100644 --- a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/McidasRequest.py +++ b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/McidasRequest.py @@ -10,6 +10,7 @@ from java.util import ArrayList # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 09/2009 144 T. Lee Initial Creation. +# 05/20/14 2913 bsteffen Remove image creation # # @@ -17,7 +18,6 @@ class McidasRequest(BaseRequest.BaseRequest): def __init__(self,): BaseRequest.BaseRequest.__init__(self, "mcidas") - self.__createImage = False self.__reproject = False self.__colormap = "BW" self.__format = "png" @@ -32,9 +32,6 @@ class McidasRequest(BaseRequest.BaseRequest): def reprojectImage(self, reproject): self.__reproject = reproject - def requestImage(self, image): - self.__createImage = image - def requestKml(self, kml): self.__kml = kml @@ -43,41 +40,4 @@ class McidasRequest(BaseRequest.BaseRequest): if self.queryResults is None or self.queryResults.size() == 0: self.makeNullResponse() else: - if self.__createImage: - return self.__makeImageResponse() - else: - return self.makeResponse() - - def __makeImageResponse(self): - from com.raytheon.edex.uengine.tasks.decode import FileIn - from com.raytheon.edex.uengine.tasks.process import ColorMapImage, ReprojectImage, ImageOut - from com.raytheon.edex.uengine.tasks.output import FileOut - from com.raytheon.edex.uengine.tasks.response import MakeResponseUri - from com.raytheon.uf.common.geospatial import MapUtil - response = ArrayList() - size = self.queryResults.size() - for i in range(size): - currentQuery = self.queryResults.get(i) - geom = MapUtil.getGridGeometry(currentQuery.getSpatialObject()) - crs = geom.getCoordinateReferenceSystem() - fileIn = FileIn(self.plugin, currentQuery) - record = fileIn.execute() - colorMap = ColorMapImage(self.__colormap, record.getDataObject(), geom) - imageOut = None - if self.__reproject: - reproject = ReprojectImage(colorMap.execute(), geom, crs) - reprojectedImage = reproject.execute() - imageOut = ImageOut(reprojectedImage, self.__format, reproject.getGridGeometry()) - else: - imageOut = ImageOut(colorMap.execute(), self.__format, geom) - fileOut = FileOut(imageOut.execute(), self.__format) - writeFile = fileOut.execute() - makeResponse = MakeResponseUri(writeFile, None, currentQuery.getIdentifier(), self.__format) - response.add(makeResponse.execute()) - if self.__kml: - from com.raytheon.edex.uengine.tasks.output import KmlImage - kmlImage = KmlImage(writeFile, geom) - kmlFile = kmlImage.execute() - kmlResponse = MakeResponseUri(kmlFile, None, None, "kml") - response.add(kmlResponse.execute()) - return response \ No newline at end of file + return self.makeResponse() diff --git a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/RadarRequest.py b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/RadarRequest.py index e4bef4cf79..0e2d4a50cc 100644 --- a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/RadarRequest.py +++ b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/RadarRequest.py @@ -30,6 +30,7 @@ from java.util import ArrayList # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 04/14/08 njensen Initial Creation. +# 05/20/14 2913 bsteffen Remove image creation # # @@ -37,7 +38,6 @@ class RadarRequest(BaseRequest.BaseRequest): def __init__(self): BaseRequest.BaseRequest.__init__(self, "radar") - self.__createImage = False self.__reproject = False self.__colormap = "BW" self.__format = "png" @@ -52,9 +52,6 @@ class RadarRequest(BaseRequest.BaseRequest): def reprojectImage(self, reproject): self.__reproject = reproject - def requestImage(self, image): - self.__createImage = image - def requestKml(self, kml): self.__kml = kml @@ -63,44 +60,5 @@ class RadarRequest(BaseRequest.BaseRequest): if self.queryResults is None or self.queryResults.size() == 0: self.makeNullResponse() else: - if self.__createImage: - return self.__makeImageResponse() - else: - return self.makeResponse() - - def __makeImageResponse(self): - from com.raytheon.edex.uengine.tasks.decode import FileIn - from com.raytheon.edex.uengine.tasks.radar import DecodeRadarImage - from com.raytheon.edex.uengine.tasks.process import ColorMapImage, ReprojectImage, ImageOut - from com.raytheon.edex.uengine.tasks.output import FileOut - from com.raytheon.edex.uengine.tasks.response import MakeResponseUri - response = ArrayList() - size = self.queryResults.size() - for i in range(size): - currentQuery = self.queryResults.get(i) - fileIn = FileIn(self.plugin, currentQuery) - records = fileIn.retrieveGroup() - radarImage = DecodeRadarImage(currentQuery, records) - geom = radarImage.getGridGeometry() - crs = radarImage.getCrs() - colorMap = ColorMapImage(self.__colormap, radarImage.execute(), geom) - imageOut = None - if self.__reproject: - reproject = ReprojectImage(colorMap.execute(), geom, crs) - reprojectedImage = reproject.execute() - imageOut = ImageOut(reprojectedImage, self.__format, reproject.getGridGeometry()) - else: - imageOut = ImageOut(colorMap.execute(), self.__format, geom) - fileOut = FileOut(imageOut.execute(), self.__format) - writeFile = fileOut.execute() - makeResponse = MakeResponseUri(writeFile, None, currentQuery.getIdentifier(), self.__format) - response.add(makeResponse.execute()) - if self.__kml: - from com.raytheon.edex.uengine.tasks.output import KmlImage - kmlImage = KmlImage(writeFile, geom) - kmlFile = kmlImage.execute() - kmlResponse = MakeResponseUri(kmlFile, None, None, "kml") - response.add(kmlResponse.execute()) - - return response + return self.makeResponse() \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/SatelliteRequest.py b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/SatelliteRequest.py index 71dfbe0ae4..65fe3bbba4 100644 --- a/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/SatelliteRequest.py +++ b/edexOsgi/com.raytheon.edex.uengine/utility/edex_static/base/python/SatelliteRequest.py @@ -30,6 +30,7 @@ from java.util import ArrayList # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 04/14/08 njensen Initial Creation. +# 05/20/14 2913 bsteffen Remove image creation # # @@ -37,7 +38,6 @@ class SatelliteRequest(BaseRequest.BaseRequest): def __init__(self): BaseRequest.BaseRequest.__init__(self, "satellite") - self.__createImage = False self.__reproject = False self.__colormap = "BW" self.__format = "png" @@ -52,9 +52,6 @@ class SatelliteRequest(BaseRequest.BaseRequest): def reprojectImage(self, reproject): self.__reproject = reproject - def requestImage(self, image): - self.__createImage = image - def requestKml(self, kml): self.__kml = kml @@ -63,43 +60,6 @@ class SatelliteRequest(BaseRequest.BaseRequest): if self.queryResults is None or self.queryResults.size() == 0: self.makeNullResponse() else: - if self.__createImage: - return self.__makeImageResponse() - else: - return self.makeResponse() - - def __makeImageResponse(self): - from com.raytheon.edex.uengine.tasks.decode import FileIn - from com.raytheon.edex.uengine.tasks.process import ColorMapImage, ReprojectImage, ImageOut - from com.raytheon.edex.uengine.tasks.output import FileOut - from com.raytheon.edex.uengine.tasks.response import MakeResponseUri - from com.raytheon.uf.common.geospatial import MapUtil - response = ArrayList() - size = self.queryResults.size() - for i in range(size): - currentQuery = self.queryResults.get(i) - geom = MapUtil.getGridGeometry(currentQuery.getSpatialObject()) - crs = geom.getCoordinateReferenceSystem() - fileIn = FileIn(self.plugin, currentQuery) - record = fileIn.execute() - colorMap = ColorMapImage(self.__colormap, record.getDataObject(), geom) - imageOut = None - if self.__reproject: - reproject = ReprojectImage(colorMap.execute(), geom, crs) - reprojectedImage = reproject.execute() - imageOut = ImageOut(reprojectedImage, self.__format, reproject.getGridGeometry()) - else: - imageOut = ImageOut(colorMap.execute(), self.__format, geom) - fileOut = FileOut(imageOut.execute(), self.__format) - writeFile = fileOut.execute() - makeResponse = MakeResponseUri(writeFile, None, currentQuery.getIdentifier(), self.__format) - response.add(makeResponse.execute()) - if self.__kml: - from com.raytheon.edex.uengine.tasks.output import KmlImage - kmlImage = KmlImage(writeFile, geom) - kmlFile = kmlImage.execute() - kmlResponse = MakeResponseUri(kmlFile, None, None, "kml") - response.add(kmlResponse.execute()) - - return response + return self.makeResponse() + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF index b23ac00488..4b69c175be 100644 --- a/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.activetable/META-INF/MANIFEST.MF @@ -2,18 +2,16 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Activetable Plug-in Bundle-SymbolicName: com.raytheon.uf.common.activetable -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.dataplugin.annotations, com.raytheon.uf.common.dataplugin.persist, com.raytheon.uf.common.dataplugin.warning, com.raytheon.uf.common.serialization.comm, com.vividsolutions.jts.geom, javax.persistence, - org.hibernate.annotations, - org.springframework.beans.factory.annotation + org.hibernate.annotations Export-Package: com.raytheon.uf.common.activetable, com.raytheon.uf.common.activetable.request, com.raytheon.uf.common.activetable.response @@ -22,4 +20,5 @@ Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.localization;bundle-version="1.12.1174", com.raytheon.uf.common.python;bundle-version="1.12.1174", org.jep;bundle-version="1.0.0", - com.raytheon.uf.common.util;bundle-version="1.12.1174" + com.raytheon.uf.common.util;bundle-version="1.12.1174", + com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java index 2c6463317b..583f8b6dd1 100644 --- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java +++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java @@ -55,6 +55,7 @@ import com.vividsolutions.jts.geom.Geometry; * May 10, 2013 1951 rjpeter Added own id sequence tagging * Jul 16, 2013 2181 bsteffen Convert geometry types to use hibernate- * spatial + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @author njensen @@ -144,7 +145,7 @@ public abstract class ActiveTableRecord extends PersistableDataObject { protected boolean ufn; @Column - @Type(type = "org.hibernatespatial.GeometryUserType") + @Type(type = "org.hibernate.spatial.GeometryType") @DynamicSerializeElement protected Geometry geometry; diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/SendPracticeProductRequest.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/SendPracticeProductRequest.java index a46012f2d0..9688af981d 100644 --- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/SendPracticeProductRequest.java +++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/SendPracticeProductRequest.java @@ -19,38 +19,102 @@ **/ package com.raytheon.uf.common.activetable; +import java.util.HashMap; +import java.util.Map; + +import com.raytheon.uf.common.message.IMessage; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.common.serialization.comm.IServerRequest; /** - * TODO Add Description + * A SendPracticeProductRequest with an optional offset time string. * *
  * 
  * SOFTWARE HISTORY
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
- * Feb 10, 2010            njensen     Initial creation
+ * Jun 27, 2011            wldougher   Initial creation
+ * Nov 14, 2014  4953      randerso    Merged PracticeProductOfftimeRequest with this
  * 
  * 
* - * @author njensen + * @author wldougher * @version 1.0 */ @DynamicSerialize -public class SendPracticeProductRequest implements IServerRequest { +public class SendPracticeProductRequest implements IServerRequest, IMessage { @DynamicSerializeElement private String productText; + @DynamicSerializeElement + private String drtString; + + @DynamicSerializeElement + private boolean notifyGFE; + + /** + * @return the productText + */ public String getProductText() { return productText; } + /** + * @param productText + * the productText to set + */ public void setProductText(String productText) { this.productText = productText; } + /** + * @return the drtString + */ + public String getDrtString() { + return drtString; + } + + /** + * @param drtString + * the drtString to set + */ + public void setDrtString(String drtString) { + this.drtString = drtString; + } + + /** + * Set the flag value that tells whether GFE notifications should be sent. + * + * @param notifyGFE + * the notifyGFE to set + */ + public void setNotifyGFE(boolean notifyGFE) { + this.notifyGFE = notifyGFE; + } + + /** + * @return the notifyGFE + */ + public boolean isNotifyGFE() { + return notifyGFE; + } + + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.common.message.IMessage#getHeaders() + */ + @Override + public Map getHeaders() { + Map headers = new HashMap(2, 1.0f); + headers.put("drtstring", getDrtString()); + headers.put("notifygfe", isNotifyGFE()); + return headers; + } + } diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/VTECPartners.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/VTECPartners.java index 5585d38eb8..4898654fa2 100644 --- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/VTECPartners.java +++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/VTECPartners.java @@ -21,7 +21,11 @@ package com.raytheon.uf.common.activetable; import java.io.File; import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; @@ -34,6 +38,8 @@ import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.python.PyUtil; import com.raytheon.uf.common.python.PythonScript; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; /** * This wraps the VTECPartners.py file, loading it as a Map in @@ -46,7 +52,9 @@ import com.raytheon.uf.common.python.PythonScript; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jul 8, 2010 wldougher Initial creation + * Jul 08, 2010 wldougher Initial creation + * May 15, 2010 #3157 dgilling Add convenience methods for retrieving + * TPC and SPC sites. * * * @@ -58,6 +66,9 @@ public class VTECPartners { private static final String CONFIG_PATH = "config" + File.separator + "gfe"; + private static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(VTECPartners.class); + private static Map instanceMap; private Map simpleObjects; @@ -187,4 +198,49 @@ public class VTECPartners { } return obj; } + + public Collection getSpcSites() { + return getSpcSites(null); + } + + public Collection getSpcSites(String defaultSite) { + return getSupportedIssuingSites("VTEC_SPC_SITE", defaultSite); + } + + public Collection getTpcSites() { + return getTpcSites(null); + } + + public Collection getTpcSites(String defaultSite) { + return getSupportedIssuingSites("VTEC_TPC_SITE", defaultSite); + } + + protected Collection getSupportedIssuingSites(String settingName, + String defaultValue) { + Object pyObject = getattr(settingName, defaultValue); + + if (pyObject == null) { + String msg = String + .format("VTECPartners setting [%s] not configured. Check your localVTECPartners settings.", + settingName); + statusHandler.warn(msg); + } else if (pyObject instanceof String) { + String singleSite = (String) pyObject; + return new HashSet(Arrays.asList(singleSite)); + } else if (pyObject instanceof Collection) { + Collection siteList = (Collection) pyObject; + Collection retVal = new HashSet(siteList.size(), 1f); + for (Object siteObj : siteList) { + retVal.add(siteObj.toString()); + } + return retVal; + } else { + String msg = String + .format("Unsupported value for setting [%s]: %s. Check your localVTECPartners settings.", + pyObject.toString(), settingName); + statusHandler.warn(msg); + } + + return Collections.emptySet(); + } } diff --git a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfig.java b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfig.java index 8aec78e0e0..cb6012c197 100644 --- a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfig.java +++ b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfig.java @@ -57,6 +57,7 @@ import javax.xml.bind.annotation.XmlRootElement; * ------------ ---------- ----------- -------------------------- * May 1, 2013 1966 rferrel Initial creation * May 31, 2013 1965 bgonzale Added getCategory(categoryName) + * Apr 17, 2014 3045 rferrel Code cleanup to prevent null pointer. * * * @@ -91,7 +92,7 @@ public class ArchiveConfig implements Comparable { * for the archiver. */ @XmlElement(name = "category") - List categoryList; + List categoryList = new ArrayList(); /** * Constructor. @@ -157,7 +158,11 @@ public class ArchiveConfig implements Comparable { * @param retentionHours */ public void setRetentionHours(int retentionHours) { - this.retentionHours = retentionHours; + if (retentionHours > 0) { + this.retentionHours = retentionHours; + } else { + this.retentionHours = 1; + } } /** @@ -166,7 +171,10 @@ public class ArchiveConfig implements Comparable { * @return */ public List getCategoryList() { - return new ArrayList(categoryList); + List list = new ArrayList( + categoryList.size()); + list.addAll(categoryList); + return list; } /** @@ -188,15 +196,17 @@ public class ArchiveConfig implements Comparable { * @param categoryList */ public void setCategoryList(List categoryList) { - this.categoryList = categoryList; + this.categoryList.clear(); + if (categoryList != null) { + this.categoryList.addAll(categoryList); + } } /** * Check for required entries. */ public boolean isValid() { - return (name != null) && (rootDir != null) && (categoryList != null) - && (categoryList.size() > 0); + return (name != null) && (rootDir != null) && (categoryList.size() > 0); } /* diff --git a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfigManager.java b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfigManager.java index 9f9eb8291e..bb0e4eabeb 100644 --- a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfigManager.java +++ b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConfigManager.java @@ -92,8 +92,12 @@ import com.raytheon.uf.common.util.FileUtil; * Aug 28, 2013 2299 rferrel purgeExpiredFromArchive now returns the number of files purged. * Dec 04, 2013 2603 rferrel Changes to improve archive purging. * Dec 17, 2013 2603 rjpeter Fix directory purging. + * Mar 27, 2014 2790 rferrel Detect problems when several purges running at the same time. * Mar 21, 2014 2835 rjpeter Optimized getDisplayData to only scan directories to the depth required to * populate the display label. + * Apr 01, 2014 2862 rferrel Moved purge only routines to ArchivePurgeManager. + * Apr 29, 2014 3036 rferrel Check for missing archive root directories. + * May 22, 2014 3181 rferrel Add check for valid array index. * * * @author rferrel @@ -306,273 +310,6 @@ public class ArchiveConfigManager { return new File(newArchivePathString); } - /** - * Purge the Files that fall outside of the time frame constraints for the - * archive. This will always leave the archive's top level directories even - * when they are empty. - * - * @param archive - * @return purgeCount - */ - public int purgeExpiredFromArchive(ArchiveConfig archive) { - String archiveRootDirPath = archive.getRootDir(); - File archiveRootDir = new File(archiveRootDirPath); - int purgeCount = 0; - - if (!archiveRootDir.isDirectory()) { - statusHandler.error(archiveRootDir.getAbsolutePath() - + " not a directory."); - return purgeCount; - } - - if (statusHandler.isPriorityEnabled(Priority.INFO)) { - statusHandler.info("Purging directory: \"" - + archiveRootDir.getAbsolutePath() + "\"."); - } - - if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { - String message = String.format( - "Start setup of category date helpers for archive: %s.", - archive.getName()); - statusHandler.debug(message); - } - - Map helperMap = new HashMap(); - for (CategoryConfig category : archive.getCategoryList()) { - CategoryFileDateHelper helper = new CategoryFileDateHelper( - archiveRootDirPath, category); - helperMap.put(category, helper); - } - - if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { - String message = String.format( - "End setup of category date helpers for archive: %s.", - archive.getName()); - statusHandler.debug(message); - } - - final Calendar minPurgeTime = calculateExpiration(archive, null); - - IOFileFilter defaultTimeFilter = new IOFileFilter() { - - @Override - public boolean accept(File dir, String name) { - File file = new File(dir, name); - return accept(file); - } - - @Override - public boolean accept(File file) { - Calendar time = TimeUtil.newGmtCalendar(); - time.setTimeInMillis(file.lastModified()); - return time.compareTo(minPurgeTime) < 0; - } - }; - - File[] topLevelFiles = archiveRootDir.listFiles(); - for (File topFile : topLevelFiles) { - // In top level directory ignore all hidden files and directories. - if (!topFile.isHidden()) { - if (topFile.isDirectory()) { - boolean isInCategory = false; - for (CategoryConfig category : archive.getCategoryList()) { - CategoryFileDateHelper helper = helperMap.get(category); - - if (helper.isCategoryDirectory(topFile.getName())) { - isInCategory = true; - if (statusHandler.isPriorityEnabled(Priority.INFO)) { - String message = String - .format("Start purge of category %s - %s, directory \"%s\".", - archive.getName(), - category.getName(), - topFile.getAbsolutePath()); - statusHandler.info(message); - } - - final Calendar extPurgeTime = calculateExpiration( - archive, category); - int pc = purgeDir(topFile, defaultTimeFilter, - minPurgeTime, extPurgeTime, helper, - category); - purgeCount += pc; - if (statusHandler.isPriorityEnabled(Priority.INFO)) { - String message = String - .format("End purge of category %s - %s, directory \"%s\", deleted %d files and directories.", - archive.getName(), - category.getName(), - topFile.getAbsolutePath(), pc); - statusHandler.info(message); - } - break; - } - } - if (isInCategory == false) { - if (statusHandler.isPriorityEnabled(Priority.INFO)) { - String message = String.format( - "Start purge of directory: \"%s\".", - topFile.getAbsolutePath()); - statusHandler.info(message); - } - int pc = purgeDir(topFile, defaultTimeFilter); - purgeCount += pc; - if (statusHandler.isPriorityEnabled(Priority.INFO)) { - String message = String - .format("End purge of directory: \"%s\", deleted %d files and directories.", - topFile.getAbsolutePath(), pc); - statusHandler.info(message); - } - } - } else { - if (defaultTimeFilter.accept(topFile)) { - purgeCount += deleteFile(topFile); - } - } - } - } - return purgeCount; - } - - /** - * Purge the contents of a directory of expired data leaving a possibly - * empty directory. - * - * @param dir - * @param defaultTimeFilter - * @param minPurgeTime - * @param extPurgeTime - * @param helper - * @return purgerCount - */ - private int purgeDir(File dir, IOFileFilter defaultTimeFilter, - Calendar minPurgeTime, Calendar extPurgeTime, - CategoryFileDateHelper helper, CategoryConfig category) { - int purgeCount = 0; - - for (File file : dir.listFiles()) { - if (!file.isHidden()) { - DataSetStatus status = helper.getFileDate(file); - if (status.isInDataSet()) { - Collection labels = category - .getSelectedDisplayNames(); - boolean isSelected = false; - for (String label : status.getDisplayLabels()) { - if (labels.contains(label)) { - isSelected = true; - break; - } - } - - Calendar checkTime = (isSelected ? extPurgeTime - : minPurgeTime); - Calendar fileTime = status.getTime(); - boolean purge = fileTime.compareTo(checkTime) < 0; - - if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { - String message = String - .format("%s [%s] category [%s] %s retention [%s] checkTime [%s] = %s.", - (file.isDirectory() ? "Directory" - : "File"), file - .getAbsoluteFile(), category - .getName(), (isSelected ? "ext" - : "min"), TimeUtil - .formatCalendar(checkTime), - TimeUtil.formatCalendar(fileTime), - (purge ? "purge" : "retain")); - statusHandler.debug(message); - } - - if (purge) { - if (file.isDirectory()) { - purgeCount += purgeDir(file, - FileFilterUtils.trueFileFilter()); - } - purgeCount += deleteFile(file); - } - } else if (file.isDirectory()) { - purgeCount += purgeDir(file, defaultTimeFilter, - minPurgeTime, extPurgeTime, helper, category); - if (file.list().length == 0) { - purgeCount += deleteFile(file); - } - } else if (defaultTimeFilter.accept(file)) { - purgeCount += deleteFile(file); - } - } - } - - return purgeCount; - } - - /** - * Recursively purge the contents of a directory based on the filter. The - * directory in the initial call is not deleted. This may result in an empty - * directory which is the desired result for top level directories. - * - * - * @param dir - * @param fileDataFilter - * @return purgeCount - */ - private int purgeDir(File dir, IOFileFilter fileDataFilter) { - int purgeCount = 0; - for (File file : dir.listFiles()) { - if (!file.isHidden()) { - if (file.isDirectory()) { - purgeCount += purgeDir(file, fileDataFilter); - if (file.list().length == 0) { - purgeCount += deleteFile(file); - } - } else if (fileDataFilter.accept(file)) { - purgeCount += deleteFile(file); - } - } - } - return purgeCount; - } - - /** - * Delete a file or directory. - * - * @param file - * @return purgeCount - */ - private int deleteFile(File file) { - int purgeCount = 0; - boolean isDir = file.isDirectory(); - if (file.delete()) { - ++purgeCount; - if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { - statusHandler - .debug(String.format("Purged %s: \"%s\"", - (isDir ? "directory" : "file"), - file.getAbsolutePath())); - } - } else { - statusHandler.warn(String.format("Failed to purge %s: \"%s\"", - (isDir ? "directory" : "file"), file.getAbsolutePath())); - } - return purgeCount; - } - - /** - * Get expiration time for the category. - * - * @param archive - * @param category - * @return expireCal - */ - private Calendar calculateExpiration(ArchiveConfig archive, - CategoryConfig category) { - Calendar expireCal = TimeUtil.newGmtCalendar(); - int retHours = (category == null) - || (category.getRetentionHours() == 0) ? archive - .getRetentionHours() : category.getRetentionHours(); - if (retHours != 0) { - expireCal.add(Calendar.HOUR, (-1) * retHours); - } - return expireCal; - } - /** * @return the archive with the given name; return null if it does not * exist. @@ -843,7 +580,12 @@ public class ArchiveConfigManager { List dirList = polledDirs.get(dir); if (dirList == null) { File[] list = dir.listFiles(); - dirList = Arrays.asList(list); + // Missing directory. + if (list == null) { + dirList = new ArrayList(0); + } else { + dirList = Arrays.asList(list); + } polledDirs.put(dir, dirList); } @@ -917,6 +659,14 @@ public class ArchiveConfigManager { tmpDirs.clear(); int subExprIndex = 0; + /* + * Will never match when pattern's directories shorter then + * directories being scanned. + */ + if ((tokens.length - rootFileDepth) > subExpr.length) { + continue DIR_PATTERN_LOOP; + } + for (int i = rootFileDepth; i < tokens.length; i++) { Pattern subPattern = Pattern.compile("^" + subExpr[subExprIndex++] + "$"); @@ -997,6 +747,13 @@ public class ArchiveConfigManager { } File rootFile = new File(rootDirName); + if (!(rootFile.isDirectory() && rootFile.canRead())) { + statusHandler.handle( + Priority.ERROR, + "Unable to access archive directory: " + + rootFile.getAbsolutePath()); + } + TreeMap>> displays = new TreeMap>>(); Map> dirMap = getDirs(rootFile, categoryConfig, maxDepth); diff --git a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConstants.java b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConstants.java index 71f1e6af2c..aa3012c97b 100644 --- a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConstants.java +++ b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/ArchiveConstants.java @@ -34,6 +34,7 @@ import com.raytheon.uf.common.localization.IPathManager; * ------------ ---------- ----------- -------------------------- * Jul 23, 2013 #2221 rferrel Initial creation * Aug 26, 2013 #2225 rferrel Added tar extension. + * Apr 11, 2014 #2862 rferrel Added cluster name. * * * @@ -42,6 +43,8 @@ import com.raytheon.uf.common.localization.IPathManager; */ public class ArchiveConstants { + /** The value for the cluster tasks' name column. */ + public static final String CLUSTER_NAME = "Archive Shared Lock"; /** Pattern to find slashes in a string. */ private final static Pattern slashPattern = Pattern.compile("[/\\\\]+"); diff --git a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/CategoryConfig.java b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/CategoryConfig.java index b22fadc77b..441b8eacf6 100644 --- a/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/CategoryConfig.java +++ b/edexOsgi/com.raytheon.uf.common.archive/src/com/raytheon/uf/common/archive/config/CategoryConfig.java @@ -73,6 +73,7 @@ import javax.xml.bind.annotation.XmlRootElement; * May 1, 2013 1966 rferrel Initial creation * Aug 03, 2013 2224 rferrel Changes to include DataSet. * Jan 09, 2014 2603 rferrel Fix bug in setSelectedDisplayNames + * Apr 17, 2014 3045 rferrel Code cleanup to prevent null pointer. * * * @@ -97,7 +98,7 @@ public class CategoryConfig implements Comparable { private int retentionHours; @XmlElement(name = "dataSet") - private List dataSetList; + private List dataSetList = new ArrayList(); @XmlElement(name = "selectedDisplayName") private final Collection selectedDisplayNames = new TreeSet(); @@ -138,31 +139,66 @@ public class CategoryConfig implements Comparable { * Set the retention hours must be greater then zero. */ public void setRetentionHours(int retentionHours) { - this.retentionHours = retentionHours; + if (retentionHours > 0) { + this.retentionHours = retentionHours; + } else { + this.retentionHours = 1; + } } + /** + * + * @return dataSetList + */ public List getDataSetList() { - return new ArrayList(dataSetList); + List list = new ArrayList( + dataSetList.size()); + list.addAll(dataSetList); + return list; } + /** + * + * @param dataSetList + */ public void setDataSetList(List dataSetList) { - this.dataSetList = dataSetList; + this.dataSetList.clear(); + if (dataSetList != null) { + this.dataSetList.addAll(dataSetList); + } } + /** + * + * @return selectedDisplayNames + */ public Collection getSelectedDisplayNames() { return selectedDisplayNames; } - public void setSelectedDisplayNames( - Collection selectedDisplayNameList) { - selectedDisplayNames.clear(); - selectedDisplayNames.addAll(selectedDisplayNameList); + /** + * + * @param selectedDisplayNames + */ + public void setSelectedDisplayNames(Collection selectedDisplayNames) { + this.selectedDisplayNames.clear(); + if (selectedDisplayNames != null) { + this.selectedDisplayNames.addAll(selectedDisplayNames); + } } + /** + * + * @param displayName + */ public void addSelectedDisplayName(String displayName) { selectedDisplayNames.add(displayName); } + /** + * + * @param displayName + */ public void removeSelectedDisplayName(String displayName) { selectedDisplayNames.remove(displayName); } diff --git a/edexOsgi/com.raytheon.uf.common.awipstools/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.awipstools/META-INF/MANIFEST.MF index 48b6a30914..7518a4f8fe 100644 --- a/edexOsgi/com.raytheon.uf.common.awipstools/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.awipstools/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Awipstools Plug-in Bundle-SymbolicName: com.raytheon.uf.common.awipstools -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization;bundle-version="1.12.1112", com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1112", com.raytheon.uf.common.localization;bundle-version="1.12.1112" diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.acars/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.acars/META-INF/MANIFEST.MF index 8cf6ebc48a..5db1c3cebf 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.acars/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.acars/META-INF/MANIFEST.MF @@ -1,16 +1,16 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 -Bundle-Name: Acars Plug-in +Bundle-Name: Acars Common Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.acars -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin, - com.raytheon.uf.common.pointdata, - com.raytheon.uf.common.serialization, - com.raytheon.uf.common.geospatial;bundle-version="1.12.1174", + com.raytheon.uf.common.pointdata;bundle-version="1.13.0", + com.raytheon.uf.common.serialization;bundle-version="1.14.0", + com.raytheon.uf.common.geospatial;bundle-version="1.14.0", + com.raytheon.uf.common.dataaccess;bundle-version="1.14.0", javax.persistence, - org.hibernate;bundle-version="1.0.0", - javax.measure;bundle-version="1.0.0" + org.hibernate, + javax.measure Export-Package: com.raytheon.uf.common.dataplugin.acars diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.acars/build.properties b/edexOsgi/com.raytheon.uf.common.dataplugin.acars/build.properties index 34d2e4d2da..5791d48d5f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.acars/build.properties +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.acars/build.properties @@ -1,4 +1,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - . + .,\ + res/ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.acars/src/com/raytheon/uf/common/dataplugin/acars/ACARSRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.acars/src/com/raytheon/uf/common/dataplugin/acars/ACARSRecord.java index 3934a16ec6..1ca511b8bf 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.acars/src/com/raytheon/uf/common/dataplugin/acars/ACARSRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.acars/src/com/raytheon/uf/common/dataplugin/acars/ACARSRecord.java @@ -1,38 +1,26 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ package com.raytheon.uf.common.dataplugin.acars; import java.util.Calendar; -import java.util.Collection; -import java.util.HashMap; -import javax.measure.quantity.Angle; -import javax.measure.quantity.Length; -import javax.measure.quantity.Pressure; -import javax.measure.quantity.Temperature; -import javax.measure.quantity.Velocity; -import javax.measure.unit.NonSI; -import javax.measure.unit.SI; -import javax.measure.unit.Unit; -import javax.persistence.Access; -import javax.persistence.AccessType; import javax.persistence.Column; import javax.persistence.Embedded; import javax.persistence.Entity; @@ -48,7 +36,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.geospatial.ISpatialEnabled; @@ -58,24 +45,28 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.vividsolutions.jts.geom.Geometry; /** - * TODO Add Description + * Record object for Aircraft Communications Addressing and Reporting System + * data. * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 21, 2009 1939       jkorman     Initial creation
- * Apr 09, 2009 952        jsanchez    Updated getValue method.  Added a
- *                                     getMessageData method.
- * Apr 21, 2009 2245       jsanchez    Returned temperature unit to kelvin.
- * May 21, 2009 2338       jsanchez    Updated the getMessageData.
- * Apr 04, 2013 1846       bkowal      Added an index on refTime and
- *                                     forecastTime
- * Apr 12, 2013 1857       bgonzale    Added SequenceGenerator annotation.
- * May 07, 2013 1869       bsteffen    Remove dataURI column from
- *                                     PluginDataObject.
- * Aug 30, 2013 2298       rjpeter     Make getPluginName abstract
+ * Date         Ticket#  Engineer    Description
+ * ------------ -------- ----------- --------------------------
+ * Jan 21, 2009  1939    jkorman     Initial creation
+ * Apr 09, 2009  952     jsanchez    Updated getValue method.  Added a
+ *                                   getMessageData method.
+ * Apr 21, 2009  2245    jsanchez    Returned temperature unit to kelvin.
+ * May 21, 2009  2338    jsanchez    Updated the getMessageData.
+ * Apr 04, 2013  1846    bkowal      Added an index on refTime and
+ *                                   forecastTime
+ * Apr 12, 2013  1857    bgonzale    Added SequenceGenerator annotation.
+ * May 07, 2013  1869    bsteffen    Remove dataURI column from
+ *                                   PluginDataObject.
+ * Aug 30, 2013  2298    rjpeter     Make getPluginName abstract
+ * Jun 11, 2014  2061    bsteffen    Remove IDecoderGettable, drop datauri
+ * Jul 22, 2014  3392    nabowle     Change Double fields to Float.
+ * 
  * 
  * 
* @@ -84,52 +75,22 @@ import com.vividsolutions.jts.geom.Geometry; */ @Entity @SequenceGenerator(initialValue = 1, name = PluginDataObject.ID_GEN, sequenceName = "acarsseq") -@Table(name = "acars", uniqueConstraints = { @UniqueConstraint(columnNames = { "dataURI" }) }) +@Table(name = "acars", uniqueConstraints = { @UniqueConstraint(columnNames = { + "refTime", "tailNumber", "flightLevel", "latitude", "longitude" }) }) /* * Both refTime and forecastTime are included in the refTimeIndex since * forecastTime is unlikely to be used. */ @org.hibernate.annotations.Table(appliesTo = "acars", indexes = { @Index(name = "acars_refTimeIndex", columnNames = { - "refTime", "forecastTime" }) }) + "refTime" }) }) @XmlRootElement @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, - IDecoderGettable, Comparable { + Comparable { private static final long serialVersionUID = 1L; - private static final String TEXT_FMT = "%1$s %2$td/%2$tH%2$tM"; - - public static final Unit FLIGHT_LEVEL_UNIT = SI.METER; - - public static final Unit TEMPERATURE_UNIT = SI.KELVIN; - - public static final Unit WIND_SPEED_UNIT = SI.METERS_PER_SECOND; - - public static final Unit WIND_DIR_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit PRESSURE_UNIT = SI.PASCAL; - - public static final Unit LOCATION_UNIT = NonSI.DEGREE_ANGLE; - - private static final HashMap PARM_MAP = new HashMap(); - static { - PARM_MAP.put("T", SFC_TEMP); - PARM_MAP.put("DpT", SFC_DWPT); - PARM_MAP.put("WS", SFC_WNDSPD); - PARM_MAP.put("WD", SFC_WNDDIR); - PARM_MAP.put("NLAT", STA_LAT); - PARM_MAP.put("NLON", STA_LON); - - PARM_MAP.put("altitude", UA_FLTLVL); - PARM_MAP.put("turbc", "turbc"); - } - - public static final String TAIL_NUM = "tailNumber"; - - public static final String FLIGHT_NUM = "tailNumber"; - // Time of the observation. @Column @DynamicSerializeElement @@ -169,32 +130,32 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, @Column @DynamicSerializeElement @XmlElement - private Double temp; + private Float temp; // Observation dewpoint temperature in degrees Kelvin. // Decimal(5,2) @Column @DynamicSerializeElement @XmlElement - private Double dwpt; + private Float dwpt; // Pressure in Pascals. @Column @DynamicSerializeElement @XmlElement - private Double pressure; + private Float pressure; // Relative Humidity in percent. @Column @DynamicSerializeElement @XmlElement - private Double humidity; + private Float humidity; // Mixing Ratio in Kg/Kg. @Column @DynamicSerializeElement @XmlElement - private Double mixingRatio; + private Float mixingRatio; // Observation wind direction in angular degrees. Integer @Column @@ -207,7 +168,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, @Column @DynamicSerializeElement @XmlElement - private Double windSpeed; + private Float windSpeed; // Base height of reported icing. @Column @@ -263,7 +224,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Constructor for DataURI construction through base class. This is used by * the notification service. - * + * * @param uri * A data uri applicable to this class. */ @@ -317,7 +278,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, } /** - * + * */ @Override public AircraftObsLocation getSpatialObject() { @@ -325,7 +286,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, } /** - * + * * @return */ public AircraftObsLocation getLocation() { @@ -333,7 +294,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, } /** - * + * * @param location */ public void setLocation(AircraftObsLocation location) { @@ -342,7 +303,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Get this observation's geometry. - * + * * @return The geometry for this observation. */ public Geometry getGeometry() { @@ -351,7 +312,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Get the geometry latitude. - * + * * @return The geometry latitude. */ public double getLatitude() { @@ -360,7 +321,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Get the geometry longitude. - * + * * @return The geometry longitude. */ public double getLongitude() { @@ -369,7 +330,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Get the elevation, in meters, of the observing platform or location. - * + * * @return The observation elevation, in meters. */ public Boolean getLocationDefined() { @@ -378,7 +339,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Get the elevation, in meters, of the observing platform or location. - * + * * @return The observation elevation, in meters. */ public Integer getFlightLevel() { @@ -386,7 +347,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, } /** - * + * * @return */ public String getFlightNumber() { @@ -395,7 +356,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Get the receiving station. - * + * * @return the receiver */ public String getReceiver() { @@ -404,7 +365,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * Set the receiving station. - * + * * @param receiver * the receiver to set */ @@ -430,7 +391,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * @return the temp */ - public Double getTemp() { + public Float getTemp() { return temp; } @@ -438,14 +399,14 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, * @param temp * the temp to set */ - public void setTemp(Double temp) { + public void setTemp(Float temp) { this.temp = temp; } /** * @return the dwpt */ - public Double getDwpt() { + public Float getDwpt() { return dwpt; } @@ -453,14 +414,14 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, * @param dwpt * the dwpt to set */ - public void setDwpt(Double dwpt) { + public void setDwpt(Float dwpt) { this.dwpt = dwpt; } /** * @return the pressure */ - public Double getPressure() { + public Float getPressure() { return pressure; } @@ -468,14 +429,14 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, * @param pressure * the pressure to set */ - public void setPressure(Double pressure) { + public void setPressure(Float pressure) { this.pressure = pressure; } /** * @return the humidity */ - public Double getHumidity() { + public Float getHumidity() { return humidity; } @@ -483,14 +444,14 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, * @param humidity * the humidity to set */ - public void setHumidity(Double humidity) { + public void setHumidity(Float humidity) { this.humidity = humidity; } /** * @return the mixingRatio */ - public Double getMixingRatio() { + public Float getMixingRatio() { return mixingRatio; } @@ -498,7 +459,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, * @param mixingRatio * the mixingRatio to set */ - public void setMixingRatio(Double mixingRatio) { + public void setMixingRatio(Float mixingRatio) { this.mixingRatio = mixingRatio; } @@ -520,7 +481,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /** * @return the windSpeed */ - public Double getWindSpeed() { + public Float getWindSpeed() { return windSpeed; } @@ -528,7 +489,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, * @param windSpeed * the windSpeed to set */ - public void setWindSpeed(Double windSpeed) { + public void setWindSpeed(Float windSpeed) { this.windSpeed = windSpeed; } @@ -623,7 +584,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, } /** - * + * * @return the rollAngleQuality */ public Integer getRollAngleQuality() { @@ -631,7 +592,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, } /** - * + * * @param rollAngleQuality * the rollAngleQuality to set */ @@ -654,77 +615,9 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, this.usedInSounding = usedInSounding; } - /** - * - */ - @Override - public IDecoderGettable getDecoderGettable() { - return this; - } - - @Override - public String getString(String paramName) { - String retValue = null; - if (TAIL_NUM.equals(paramName)) { - retValue = getTailNumber(); - } else if (FLIGHT_NUM.equals(paramName)) { - retValue = getFlightNumber(); - } else if ("TEXT".equals(paramName)) { - retValue = String.format(TEXT_FMT, getTailNumber(), getTimeObs()); - } - return retValue; - } - - @Override - public String[] getStrings(String paramName) { - return null; - } - - @Override - public Amount getValue(String paramName) { - Amount a = null; - - String pName = PARM_MAP.get(paramName); - - if (SFC_TEMP.equals(pName) && (temp != null)) { - a = new Amount(temp, TEMPERATURE_UNIT); - } else if (SFC_WNDSPD.equals(pName) && (windSpeed != null)) { - a = new Amount(windSpeed, WIND_SPEED_UNIT); - } else if (SFC_WNDDIR.equals(pName) && (windDirection != null)) { - a = new Amount(windDirection, WIND_DIR_UNIT); - } else if (STA_LAT.equals(pName)) { - a = new Amount(getLatitude(), LOCATION_UNIT); - } else if (STA_LON.equals(pName)) { - a = new Amount(getLongitude(), LOCATION_UNIT); - } else if (UA_FLTLVL.equals(pName) && (getFlightLevel() != null)) { - a = new Amount(getFlightLevel().intValue(), FLIGHT_LEVEL_UNIT); - } else if (SFC_DWPT.equals(pName) && (getDwpt() != null)) { - a = new Amount(getDwpt(), TEMPERATURE_UNIT); - } - - return a; - } - - @Override - public Collection getValues(String paramName) { - return null; - } - - public static final Double calcHumidity(Double temp, Double dwpt) { - Double humidity = null; - if ((temp != null) && (dwpt != null)) { - } - return humidity; - } - - @Override - public String getMessageData() { - return String.format(TEXT_FMT, getTailNumber(), getTimeObs()); - } - /* * (non-Javadoc) - * + * * @see java.lang.Object#hashCode() */ @Override @@ -740,7 +633,7 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, /* * (non-Javadoc) - * + * * @see java.lang.Object#equals(java.lang.Object) */ @Override @@ -773,18 +666,13 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, } /** - * + * */ @Override public int compareTo(ACARSRecord other) { - - final int BEFORE = -1; - final int EQUAL = 0; - final int AFTER = 1; - - int result = EQUAL; + int result = 0; if (this == other) { - result = EQUAL; + result = 0; } else { if (getTailNumber().equals(getTailNumber())) { result = timeObs.compareTo(other.timeObs); @@ -795,13 +683,6 @@ public class ACARSRecord extends PluginDataObject implements ISpatialEnabled, return result; } - @Override - @Column - @Access(AccessType.PROPERTY) - public String getDataURI() { - return super.getDataURI(); - } - @Override public String getPluginName() { return "acars"; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/META-INF/MANIFEST.MF index 3d90949a16..911b09b31a 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/META-INF/MANIFEST.MF @@ -2,20 +2,14 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Acarssounding Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.acarssounding -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.pointdata, - com.raytheon.uf.common.localization;bundle-version="1.12.1151", com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.geospatial;bundle-version="1.12.1174", - com.raytheon.uf.common.dataplugin.acars;bundle-version="1.12.1174", - com.raytheon.uf.edex.decodertools;bundle-version="1.12.1174", javax.persistence, javax.measure, org.hibernate;bundle-version="1.0.0" -Export-Package: com.raytheon.uf.common.dataplugin.acarssounding, - com.raytheon.uf.common.dataplugin.acarssounding.tools -Import-Package: org.apache.commons.logging +Export-Package: com.raytheon.uf.common.dataplugin.acarssounding diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingLayer.java b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingLayer.java index cc6b7e7fce..c93e8da3a0 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingLayer.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingLayer.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -41,17 +41,18 @@ import com.vividsolutions.jts.geom.Point; /** * Layer for an ACARS Sounding - * + * *
- * 
+ *
  * SOFTWARE HISTORY
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Apr 30, 2009            jkorman     Initial creation
  * Oct 22, 2013 2361       njensen     Remove XML annotations
- * 
+ * Jul 22, 2014 3392       nabowle     Change Double fields to Float.
+ *
  * 
- * + * * @author jkorman * @version 1.0 */ @@ -93,23 +94,23 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { // Observation air temperature in degrees Kelvin. @Column @DynamicSerializeElement - private Double temp; + private Float temp; // Observation dewpoint temperature in degrees Kelvin. // Decimal(5,2) @Column @DynamicSerializeElement - private Double dwpt; + private Float dwpt; // Relative Humidity in percent. Decimal(5,2) @Column @DynamicSerializeElement - private Double humidity; + private Float humidity; // Mixing ratio in Kg/Kg @Column @DynamicSerializeElement - private Double mixingRatio; + private Float mixingRatio; // Observation wind direction in angular degrees. Integer @Column @@ -120,7 +121,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { // Decimal(5,2) @Column @DynamicSerializeElement - private Double windSpeed; + private Float windSpeed; // Base height of reported icing. @Column @@ -155,10 +156,10 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { // Indicated or calculated pressure. @Column @DynamicSerializeElement - private Double pressure; + private Float pressure; /** - * + * */ public ACARSSoundingLayer() { @@ -166,7 +167,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * The record id for this entry. Set from Hibernate. - * + * * @return the recordId */ public Integer getRecordId() { @@ -175,7 +176,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Set the record id. Should be set by Hibernate only! - * + * * @param recordId * the recordId to set */ @@ -185,7 +186,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Get the parent instance that contains this level information. - * + * * @return The parent instance. */ public ACARSSoundingRecord getParent() { @@ -194,7 +195,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Set the parent instance that contains this level information. - * + * * @param parent * The parent instance. */ @@ -233,7 +234,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { } /** - * + * * @return */ public AircraftObsLocation getLocation() { @@ -241,7 +242,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { } /** - * + * * @param location */ public void setLocation(AircraftObsLocation location) { @@ -250,7 +251,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Get this observation's geometry. - * + * * @return The geometry for this observation. */ public Geometry getGeometry() { @@ -259,7 +260,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Get the geometry latitude. - * + * * @return The geometry latitude. */ public double getLatitude() { @@ -268,7 +269,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Get the geometry longitude. - * + * * @return The geometry longitude. */ public double getLongitude() { @@ -277,7 +278,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Get the elevation, in meters, of the observing platform or location. - * + * * @return The observation elevation, in meters. */ public Boolean getLocationDefined() { @@ -286,7 +287,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Get the elevation, in meters, of the observing platform or location. - * + * * @return The observation elevation, in meters. */ public Integer getFlightLevel() { @@ -294,7 +295,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { } /** - * + * * @return */ public String getFlightNumber() { @@ -319,7 +320,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * @return the temp */ - public Double getTemp() { + public Float getTemp() { return temp; } @@ -327,14 +328,14 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { * @param temp * the temp to set */ - public void setTemp(Double temp) { + public void setTemp(Float temp) { this.temp = temp; } /** * @return the dwpt */ - public Double getDwpt() { + public Float getDwpt() { return dwpt; } @@ -342,14 +343,14 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { * @param dwpt * the dwpt to set */ - public void setDwpt(Double dwpt) { + public void setDwpt(Float dwpt) { this.dwpt = dwpt; } /** * @return the humidity */ - public Double getHumidity() { + public Float getHumidity() { return humidity; } @@ -357,14 +358,14 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { * @param humidity * the humidity to set */ - public void setHumidity(Double humidity) { + public void setHumidity(Float humidity) { this.humidity = humidity; } /** * @return the mixingRatio */ - public Double getMixingRatio() { + public Float getMixingRatio() { return mixingRatio; } @@ -372,7 +373,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { * @param mixingRatio * the mixingRatio to set */ - public void setMixingRatio(Double mixingRatio) { + public void setMixingRatio(Float mixingRatio) { this.mixingRatio = mixingRatio; } @@ -394,7 +395,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * @return the windSpeed */ - public Double getWindSpeed() { + public Float getWindSpeed() { return windSpeed; } @@ -402,7 +403,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { * @param windSpeed * the windSpeed to set */ - public void setWindSpeed(Double windSpeed) { + public void setWindSpeed(Float windSpeed) { this.windSpeed = windSpeed; } @@ -499,7 +500,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * @return the pressure */ - public Double getPressure() { + public Float getPressure() { return pressure; } @@ -507,12 +508,12 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { * @param pressure * the pressure to set */ - public void setPressure(Double pressure) { + public void setPressure(Float pressure) { this.pressure = pressure; } /** - * + * */ @Override public ISpatialObject getSpatialObject() { @@ -521,7 +522,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /** * Provide a string representation of this observation. - * + * * @return */ @Override @@ -532,7 +533,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /* * (non-Javadoc) - * + * * @see java.lang.Object#hashCode() */ @Override @@ -549,7 +550,7 @@ public class ACARSSoundingLayer implements Serializable, ISpatialEnabled { /* * (non-Javadoc) - * + * * @see java.lang.Object#equals(java.lang.Object) */ @Override diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingRecord.java index b4cba89404..4f41894b3c 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/src/com/raytheon/uf/common/dataplugin/acarssounding/ACARSSoundingRecord.java @@ -64,6 +64,7 @@ import com.vividsolutions.jts.geom.Geometry; * PluginDataObject. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Oct 22, 2013 2361 njensen Remove XML annotations and IDecoderGettable + * Feb 27, 2014 2638 njensen Remove bad dataURI annotation * * * @@ -89,12 +90,11 @@ public class ACARSSoundingRecord extends PluginDataObject implements // Time of the observation. @Column - @DataURI(position = 1, embedded = true) @DynamicSerializeElement private Calendar timeObs; @Embedded - @DataURI(position = 2, embedded = true) + @DataURI(position = 1, embedded = true) @DynamicSerializeElement private SurfaceObsLocation location; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/utility/common_static/base/stations/airports.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/utility/common_static/base/stations/airports.xml index a8410bb941..e0ee55b76b 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/utility/common_static/base/stations/airports.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.acarssounding/utility/common_static/base/stations/airports.xml @@ -67,6 +67,18 @@ -97.22 155 + + ADK + 51.88 + -176.65 + 6 + + + ADQ + 57.75 + -152.50 + 22 + AEX 31.33 @@ -97,6 +109,12 @@ 24.77 1192 + + AKN + 58.68 + -156.65 + 17 + AKO 40.17 @@ -145,6 +163,12 @@ -150.02 45 + + ANI + 61.58 + -159.55 + 27 + APA 39.57 @@ -205,6 +229,12 @@ -73.13 5 + + BET + 60.78 + -161.83 + 40 + BFI 47.53 @@ -337,6 +367,12 @@ 4.53 58 + + BRW + 71.28 + -156.77 + 16 + BSM 30.20 @@ -415,6 +451,12 @@ 2.55 117 + + CDV + 60.50 + -145.48 + 13 + CEF 42.20 @@ -547,6 +589,12 @@ -97.23 239 + + CYXY + 60.71 + -135.07 + 706 + CYYZ 43.68 @@ -619,6 +667,12 @@ 103.68 12 + + DLG + 59.05 + -158.50 + 26 + DNMM 6.50 @@ -661,6 +715,12 @@ 6.78 44 + + DUT + 53.90 + -166.55 + 4 + DXR 41.37 @@ -895,6 +955,12 @@ -1.32 94 + + ENA + 60.57 + -151.25 + 28 + ENAL 62.50 @@ -1309,6 +1375,12 @@ -82.22 296 + + GST + 58.43 + -135.71 + 11 + GTF 47.48 @@ -1387,6 +1459,12 @@ -76.23 9999 + + HOM + 59.65 + -151.48 + 24 + HOU 29.65 @@ -1495,6 +1573,12 @@ -73.78 7 + + JNU + 58.36 + -134.58 + 7 + JSJ 18.43 @@ -1537,6 +1621,12 @@ -118.08 774 + + KTN + 55.35 + -131.71 + 29 + KUL 3.12 @@ -2473,6 +2563,12 @@ -95.90 299 + + OME + 64.51 + -165.45 + 11 + ONT 34.05 @@ -2509,6 +2605,12 @@ 36.50 615 + + OTZ + 66.88 + -162.60 + 4 + PAE 47.92 @@ -2611,6 +2713,12 @@ -73.88 50 + + PSG + 56.80 + -132.95 + 35 + PSP 33.83 @@ -2827,6 +2935,12 @@ -86.32 236 + + SCC + 70.19 + -148.47 + 20 + SCEL -33.38 @@ -2851,6 +2965,12 @@ -85.73 151 + + SDP + 55.32 + -160.52 + 7 + SDQ 18.43 @@ -2911,6 +3031,12 @@ 103.85 16 + + SIT + 57.05 + -135.36 + 8 + SJC 37.37 @@ -2989,6 +3115,12 @@ -117.88 16 + + SNP + 57.17 + -170.22 + 13 + SPI 39.85 @@ -3247,6 +3379,12 @@ -117.38 876 + + VDZ + 61.13 + -146.25 + 37 + VECC 22.70 @@ -3343,6 +3481,12 @@ -122.72 937 + + WRG + 56.48 + -132.37 + 15 + WSSS 1.37 @@ -3355,6 +3499,12 @@ -64.68 6 + + YAK + 59.50 + -139.66 + 10 + YARG -16.63 diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/META-INF/MANIFEST.MF index 584bcb27f5..761ebaf822 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/META-INF/MANIFEST.MF @@ -2,17 +2,17 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Binlightning Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.binlightning -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0 Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.binlightning, + com.raytheon.uf.common.dataplugin.binlightning.dataaccess, com.raytheon.uf.common.dataplugin.binlightning.impl Require-Bundle: com.raytheon.uf.common.serialization, - org.geotools, - javax.persistence, - javax.measure, com.raytheon.uf.common.dataplugin, - com.raytheon.uf.common.datastorage -Import-Package: com.raytheon.uf.edex.decodertools.core, - com.raytheon.uf.edex.decodertools.time + com.raytheon.uf.common.datastorage, + com.raytheon.uf.common.dataaccess;bundle-version="1.0.0", + javax.measure;bundle-version="1.0.0" +Import-Package: com.raytheon.uf.common.dataquery.requests, + com.raytheon.uf.common.dataquery.responses, + com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/build.properties b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/build.properties index 34d2e4d2da..5791d48d5f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/build.properties +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/build.properties @@ -1,4 +1,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - . + .,\ + res/ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/BinLightningRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/BinLightningRecord.java index 645dad3fa0..ba2f65ef21 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/BinLightningRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/BinLightningRecord.java @@ -19,7 +19,14 @@ **/ package com.raytheon.uf.common.dataplugin.binlightning; +import java.io.FileNotFoundException; import java.util.Calendar; +import java.util.Collection; +import java.util.Date; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.TreeMap; import javax.persistence.Access; import javax.persistence.AccessType; @@ -34,19 +41,18 @@ import org.hibernate.annotations.Index; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; +import com.raytheon.uf.common.dataplugin.binlightning.impl.LightningPulsePoint; import com.raytheon.uf.common.dataplugin.binlightning.impl.LightningStrikePoint; import com.raytheon.uf.common.dataplugin.persist.IPersistable; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; import com.raytheon.uf.common.datastorage.IDataStore; import com.raytheon.uf.common.datastorage.StorageException; -import com.raytheon.uf.common.datastorage.records.ByteDataRecord; -import com.raytheon.uf.common.datastorage.records.FloatDataRecord; import com.raytheon.uf.common.datastorage.records.IDataRecord; -import com.raytheon.uf.common.datastorage.records.IntegerDataRecord; -import com.raytheon.uf.common.datastorage.records.LongDataRecord; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.time.TimeRange; +import com.raytheon.uf.common.time.util.TimeUtil; /** * Record implementation for Binary Lightning plugin. @@ -79,6 +85,12 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * PluginDataObject. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Oct 22, 2013 2361 njensen Removed XML annotations + * Jan 21, 2014 2667 bclement renamed record's lightSource field to source + * May 14, 2014 2536 bclement removed TimeTools usage + * Jun 05, 2014 3226 bclement moved data arrays into map for easier management + * replaced addStrike() with List constructor, added pulses + * Jun 10, 2014 3226 bclement collections instead of lists, made data source logic public + * Jun 19, 2014 3214 bclement populated pulse index array with -1 when missing pulse data * * * @@ -103,43 +115,14 @@ public class BinLightningRecord extends PersistablePluginDataObject implements public static final String PLUGIN_NAME = "binlightning"; + public static final int MISSING_PULSE_INDEX_VALUE = -1; + + // Data store data items @Transient - private long[] obsTimes = null; + private final Map strikeDataArrays = new TreeMap(); @Transient - private float[] latitudes = null; - - @Transient - private float[] longitudes = null; - - @Transient - private int[] intensities = null; - - @Transient - private byte[] msgTypes = null; - - @Transient - private byte[] strikeTypes = null; - - @Transient - private byte[] strikeCounts = null; - - @Transient - private Object[] dataArrays = null; - - // Data store data item names - @Transient - private final String[] dataNames = { "obsTime", "latitude", "longitude", - "intensity", "msgType", "strikeType", "strikeCount", }; - - @Transient - private int insertIndex = 0; - - @Transient - private long startTimeMillis = Long.MAX_VALUE; - - @Transient - private long stopTimeMillis = Long.MIN_VALUE; + private final Map pulseDataArrays = new TreeMap(); // Persisted value - Earliest strike time in the collection. @DataURI(position = 1) @@ -157,7 +140,7 @@ public class BinLightningRecord extends PersistablePluginDataObject implements @Column(length = 5) @DataURI(position = 3) @DynamicSerializeElement - private String lightSource; + private String source; // Used to track @Transient @@ -174,118 +157,157 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * * @param uri * The dataURI - * @param tableDef - * The table definition associated with this class */ public BinLightningRecord(String uri) { super(uri); } /** - * Construct an empty lightning record. - */ - public BinLightningRecord(int arraysSize) { - obsTimes = new long[arraysSize]; - latitudes = new float[arraysSize]; - longitudes = new float[arraysSize]; - - intensities = new int[arraysSize]; - msgTypes = new byte[arraysSize]; - strikeTypes = new byte[arraysSize]; - strikeCounts = new byte[arraysSize]; - dataArrays = new Object[] { obsTimes, latitudes, longitudes, - intensities, msgTypes, strikeTypes, strikeCounts, }; - insertIndex = 0; - } - - // /** - // * Construct an empty lightning record. - // * - // * @param message - // * Lightning data report. - // */ - // public BinLightningRecord(String message) { - // super(message); - // } - - /** - * Track the current persistence time for the data set. - */ - @SuppressWarnings("unused") - private void updatePersistenceTime() { - if ((startTimeMillis != Long.MAX_VALUE) - && (stopTimeMillis != Long.MIN_VALUE)) { - persistTime = (startTimeMillis + stopTimeMillis) / 2; - setPersistenceTime(TimeTools.newCalendar(persistTime).getTime()); - } else { - setPersistenceTime(TimeTools.getSystemCalendar().getTime()); - persistTime = getInsertTime().getTimeInMillis(); - } - } - - /** - * Add a strike report to the record collection. + * Construct a lightning record from a list of strikes * - * @param strike - * A strike report to add. + * @param strikes */ - public void addStrike(LightningStrikePoint strike) { - // jjg add - if (lightSource == null) { - if (strike.getLightSource() == null) { - lightSource = "NLDN"; - } else if (strike.getLightSource().isEmpty()) { - lightSource = "UNKN"; - } else { - lightSource = strike.getLightSource(); - } - } else { - if (strike.getLightSource() == null) { - lightSource = "NLDN"; - } else if (!lightSource.equals(strike.getLightSource())) { - lightSource = "UNKN"; - } + public BinLightningRecord(final Collection strikes) { + final int arraysSize = strikes.size(); + long[] obsTimes = new long[arraysSize]; + float[] latitudes = new float[arraysSize]; + float[] longitudes = new float[arraysSize]; + int[] intensities = new int[arraysSize]; + byte[] msgTypes = new byte[arraysSize]; + byte[] strikeTypes = new byte[arraysSize]; + byte[] pulseCounts = new byte[arraysSize]; + int[] pulseIndexes = new int[arraysSize]; + int[] heights = new int[arraysSize]; + int[] sensorCounts = new int[arraysSize]; + + strikeDataArrays.put(LightningConstants.TIME_DATASET, obsTimes); + strikeDataArrays.put(LightningConstants.LAT_DATASET, latitudes); + strikeDataArrays.put(LightningConstants.LON_DATASET, longitudes); + strikeDataArrays.put(LightningConstants.INTENSITY_DATASET, intensities); + strikeDataArrays.put(LightningConstants.MSG_TYPE_DATASET, msgTypes); + strikeDataArrays.put(LightningConstants.STRIKE_TYPE_DATASET, + strikeTypes); + strikeDataArrays + .put(LightningConstants.PULSE_COUNT_DATSET, pulseCounts); + strikeDataArrays.put(LightningConstants.PULSE_INDEX_DATASET, + pulseIndexes); + strikeDataArrays.put(LightningConstants.HEIGHT_DATASET, heights); + strikeDataArrays.put(LightningConstants.SENSOR_COUNT_DATASET, + sensorCounts); + + if (arraysSize > 0) { + LightningStrikePoint sample = strikes.iterator().next(); + this.source = getDataSource(sample); } - // end - if (insertIndex < obsTimes.length) { - long t1 = startTimeMillis; + long startTimeMillis = Long.MAX_VALUE; + long stopTimeMillis = Long.MIN_VALUE; - Calendar c = TimeTools.getBaseCalendar(strike.getYear(), - strike.getMonth(), strike.getDay()); + int pulseDataCount = 0; - c.set(Calendar.HOUR_OF_DAY, strike.getHour()); - c.set(Calendar.MINUTE, strike.getMinute()); - c.set(Calendar.SECOND, strike.getSecond()); - c.set(Calendar.MILLISECOND, strike.getMillis()); + final Iterator iter = strikes.iterator(); + for (int i = 0; i < arraysSize; ++i) { + LightningStrikePoint strike = iter.next(); + Calendar c = strike.getTime(); long obsTimeMillis = c.getTimeInMillis(); startTimeMillis = Math.min(startTimeMillis, obsTimeMillis); stopTimeMillis = Math.max(stopTimeMillis, obsTimeMillis); - obsTimes[insertIndex] = obsTimeMillis; - latitudes[insertIndex] = (float) strike.getLatitude(); - longitudes[insertIndex] = (float) strike.getLongitude(); + obsTimes[i] = obsTimeMillis; + latitudes[i] = (float) strike.getLatitude(); + longitudes[i] = (float) strike.getLongitude(); - intensities[insertIndex] = Math.round((float) strike - .getStrikeStrength()); - msgTypes[insertIndex] = (byte) strike.getMsgType().ordinal(); - strikeTypes[insertIndex] = (byte) strike.getType().ordinal(); - strikeCounts[insertIndex] = (byte) strike.getStrikeCount(); - insertIndex++; - // only update the times if they have changed! - if (t1 != startTimeMillis) { - startTime = TimeTools.newCalendar(startTimeMillis); - } - if (t1 != stopTimeMillis) { - stopTime = TimeTools.newCalendar(stopTimeMillis); - } + intensities[i] = (int) Math.round(strike.getStrikeStrength()); + msgTypes[i] = (byte) strike.getMsgType().getId(); + strikeTypes[i] = (byte) strike.getType().getId(); + /* some types have pulse counts but no pulse data */ + pulseCounts[i] = (byte) strike.getPulseCount(); + heights[i] = (int) Math.round(strike.getElevation()); + sensorCounts[i] = strike.getSensorCount(); - // updatePersistenceTime(); + List pulses = strike.getPulses(); + if (pulses != null && !pulses.isEmpty()) { + pulseIndexes[i] = pulseDataCount; + pulseDataCount += pulses.size(); + if (pulseCounts[i] != pulses.size()) { + pulseCounts[i] = (byte) pulses.size(); + } + } else { + pulseIndexes[i] = MISSING_PULSE_INDEX_VALUE; + } + } + + if (pulseDataCount > 0) { + /* at least one of the strikes had pulse data */ + setPulseData(strikes, pulseDataCount); + } + startTime = TimeUtil.newGmtCalendar(new Date(startTimeMillis)); + stopTime = TimeUtil.newGmtCalendar(new Date(stopTimeMillis)); + + TimeRange range = new TimeRange(startTime, stopTime); + setDataTime(new DataTime(startTime, range)); + } + + /** + * @param strikes + * @param pulseDataCount + * total number of pulses for all strikes + */ + private void setPulseData(final Collection strikes, + final int pulseDataCount) { + long[] pulseTimes = new long[pulseDataCount]; + float[] pulseLats = new float[pulseDataCount]; + float[] pulseLons = new float[pulseDataCount]; + int[] pulseIntensities = new int[pulseDataCount]; + byte[] pulseTypes = new byte[pulseDataCount]; + int[] pulseHeights = new int[pulseDataCount]; + int[] pulseSensorCounts = new int[pulseDataCount]; + + pulseDataArrays.put(LightningConstants.TIME_DATASET, pulseTimes); + pulseDataArrays.put(LightningConstants.LAT_DATASET, pulseLats); + pulseDataArrays.put(LightningConstants.LON_DATASET, pulseLons); + pulseDataArrays.put(LightningConstants.INTENSITY_DATASET, + pulseIntensities); + pulseDataArrays.put(LightningConstants.PULSE_TYPE_DATASET, pulseTypes); + pulseDataArrays.put(LightningConstants.HEIGHT_DATASET, pulseHeights); + pulseDataArrays.put(LightningConstants.SENSOR_COUNT_DATASET, + pulseSensorCounts); + + int index = 0; + for (LightningStrikePoint strike : strikes) { + List pulses = strike.getPulses(); + if (pulses != null && !pulses.isEmpty()) { + for (LightningPulsePoint pulse : pulses) { + pulseTimes[index] = pulse.getTime().getTimeInMillis(); + pulseLats[index] = (float) pulse.getLatitude(); + pulseLons[index] = (float) pulse.getLongitude(); + pulseIntensities[index] = (int) Math.round(pulse + .getStrikeStrength()); + pulseTypes[index] = pulse.getType().getId(); + pulseHeights[index] = (int) Math + .round(pulse.getElevation()); + pulseSensorCounts[index] = pulse.getSensorCount(); + ++index; + } + } + } + } + + /** + * Extract data source from strike + * + * @param strike + * @return + */ + public static String getDataSource(LightningStrikePoint strike) { + if (strike.getLightSource() == null) { + return "NLDN"; + } else if (strike.getLightSource().isEmpty()) { + return "UNKN"; } else { - throw new ArrayIndexOutOfBoundsException(String.format( - "index greater than length [%d]", insertIndex)); + return strike.getLightSource(); } } @@ -346,25 +368,14 @@ public class BinLightningRecord extends PersistablePluginDataObject implements setInsertTime(insert_time); } - public String[] getDataNames() { - return dataNames; - } - - public Object[] getDataArrays() { - return dataArrays; - } - - public void setDataArrays(Object[] dataArrays) { - this.dataArrays = dataArrays; - } - /** * gets the obsTimes * * @return */ public long[] getObsTimes() { - return obsTimes; + Object obj = strikeDataArrays.get(LightningConstants.TIME_DATASET); + return obj != null ? (long[]) obj : new long[0]; } /** @@ -373,7 +384,8 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * @return */ public float[] getLatitudes() { - return latitudes; + Object obj = strikeDataArrays.get(LightningConstants.LAT_DATASET); + return obj != null ? (float[]) obj : new float[0]; } /** @@ -382,7 +394,8 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * @return */ public float[] getLongitudes() { - return longitudes; + Object obj = strikeDataArrays.get(LightningConstants.LON_DATASET); + return obj != null ? (float[]) obj : new float[0]; } /** @@ -391,7 +404,8 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * @return */ public int[] getIntensities() { - return intensities; + Object obj = strikeDataArrays.get(LightningConstants.INTENSITY_DATASET); + return obj != null ? (int[]) obj : new int[0]; } /** @@ -400,7 +414,8 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * @return */ public byte[] getMsgTypes() { - return msgTypes; + Object obj = strikeDataArrays.get(LightningConstants.MSG_TYPE_DATASET); + return obj != null ? (byte[]) obj : new byte[0]; } /** @@ -409,7 +424,9 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * @return */ public byte[] getStrikeTypes() { - return strikeTypes; + Object obj = strikeDataArrays + .get(LightningConstants.STRIKE_TYPE_DATASET); + return obj != null ? (byte[]) obj : new byte[0]; } /** @@ -417,8 +434,10 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * * @return */ - public byte[] getStrikeCounts() { - return strikeCounts; + public byte[] getPulseCounts() { + Object obj = strikeDataArrays + .get(LightningConstants.PULSE_COUNT_DATSET); + return obj != null ? (byte[]) obj : new byte[0]; } /** @@ -426,8 +445,8 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * * @return */ - public String getLightSource() { - return lightSource; + public String getSource() { + return source; } /** @@ -435,8 +454,8 @@ public class BinLightningRecord extends PersistablePluginDataObject implements * * @param lightSource */ - public void setLightSource(String lightSource) { - this.lightSource = lightSource; + public void setSource(String lightSource) { + this.source = lightSource; } /** @@ -446,42 +465,55 @@ public class BinLightningRecord extends PersistablePluginDataObject implements */ public void retrieveFromDataStore(IDataStore dataStore) throws StorageException { + retrieveFromDataStore(dataStore, false); + } + /** + * Sets the data arrays from the store. + * + * @param dataStore + * @param includePulses + * extract pulse data if true + */ + public void retrieveFromDataStore(IDataStore dataStore, + boolean includePulses) throws StorageException { try { - IDataRecord[] dataRec = dataStore.retrieve(getDataURI()); - dataArrays = new Object[dataRec.length]; - for (int i = 0; i < dataRec.length; i++) { - if (dataRec[i].getName().equals("obsTime")) { - obsTimes = ((LongDataRecord) dataRec[i]).getLongData(); - dataArrays[i] = obsTimes; - } - if (dataRec[i].getName().equals("latitude")) { - latitudes = ((FloatDataRecord) dataRec[i]).getFloatData(); - dataArrays[i] = latitudes; - } else if (dataRec[i].getName().equals("longitude")) { - longitudes = ((FloatDataRecord) dataRec[i]).getFloatData(); - dataArrays[i] = longitudes; - } else if (dataRec[i].getName().equals("intensity")) { - intensities = ((IntegerDataRecord) dataRec[i]).getIntData(); - dataArrays[i] = intensities; - } else if (dataRec[i].getName().equals("msgType")) { - msgTypes = ((ByteDataRecord) dataRec[i]).getByteData(); - dataArrays[i] = msgTypes; - } else if (dataRec[i].getName().equals("strikeType")) { - strikeTypes = ((ByteDataRecord) dataRec[i]).getByteData(); - dataArrays[i] = strikeTypes; - } else if (dataRec[i].getName().equals("strikeCount")) { - strikeCounts = ((ByteDataRecord) dataRec[i]).getByteData(); - dataArrays[i] = strikeCounts; + IDataRecord[] dataRecs = dataStore.retrieve(getDataURI()); + for (IDataRecord record : dataRecs) { + strikeDataArrays.put(record.getName(), record.getDataObject()); + } + if (includePulses) { + String pulseGroup = getDataURI() + DataURI.SEPARATOR + + LightningConstants.PULSE_HDF5_GROUP_SUFFIX; + try { + IDataRecord[] pulseRecords = dataStore.retrieve(pulseGroup); + for (IDataRecord record : pulseRecords) { + pulseDataArrays.put(record.getName(), + record.getDataObject()); + } + } catch (Exception e) { + /* FIXME better way to find out if group doesn't exist */ } } - setDataArrays(dataArrays); - - } catch (Exception se) { - se.printStackTrace(); + } catch (FileNotFoundException e) { + throw new StorageException(e.getLocalizedMessage(), null, e); } } + /** + * @return the strikeDataArrays + */ + public Map getStrikeDataArrays() { + return strikeDataArrays; + } + + /** + * @return the pulseDataArrays + */ + public Map getPulseDataArrays() { + return pulseDataArrays; + } + @Override @Column @Access(AccessType.PROPERTY) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LightningStrikePoint.java b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LightningStrikePoint.java index 4d6f6071bb..27ab0445ce 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LightningStrikePoint.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LightningStrikePoint.java @@ -19,53 +19,59 @@ **/ package com.raytheon.uf.common.dataplugin.binlightning.impl; -import com.raytheon.uf.edex.decodertools.core.BasePoint; +import java.util.Calendar; +import java.util.List; + +import com.raytheon.uf.common.time.util.TimeUtil; /** * Record implementation for the Binary Lightning data decoder. * *
- *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 20070810            379 jkorman     Initial Coding from prototype.
  * 20130227        DCS 152 jgerth      Support for WWLLN and multiple sources
+ * Jun 3, 2014  3226      bclement     refactor to support pulse data
  * 
  * 
- * + * * @author jkorman * @version 1.0 */ -public class LightningStrikePoint extends BasePoint +public class LightningStrikePoint extends BaseLightningPoint { private LtgStrikeType type; private LtgMsgType msgType; - // Lightning strike strength and polarity - private double strikeStrength; - - // Number of strikes for this record. - private int strikeCount; + // Number of pulses for this record. + private int pulseCount; // JJG - Lightning data source private String lightSource; + + private List pulses; /** * Construct a LightningStrikePoint using given data. - * @param base The base point which should contain a valid time. - * @param latitude The latitude of the strike. - * @param longitude The longitude of the strike. - * @param type The strike message type. + * + * @param latitude + * The latitude of the strike. + * @param longitude + * The longitude of the strike. + * @param time + * @param type + * The strike message type. */ - public LightningStrikePoint(BasePoint base, double latitude, double longitude, LtgMsgType type) + public LightningStrikePoint(double latitude, double longitude, + Calendar time, LtgMsgType type) { - super(base); - setLatitude(latitude); - setLongitude(longitude); + super(latitude, longitude, time); setElevation(0); this.msgType = type; } @@ -77,44 +83,37 @@ public class LightningStrikePoint extends BasePoint */ public LightningStrikePoint(double latitude, double longitude) { - super(latitude,longitude); + super(latitude, longitude, TimeUtil.newGmtCalendar()); setElevation(0); } /** - * Get the strike count. - * @return The strike count. + * @param time + * @param type */ - public int getStrikeCount() - { - return strikeCount; + public LightningStrikePoint(Calendar time, LtgMsgType type) { + super(time); + this.msgType = type; } /** - * Set the strike count. - * @return The strike count. + * Get the pulse count. + * + * @return The pulse count. */ - public void setStrikeCount(int strikeCount) + public int getPulseCount() { - this.strikeCount = strikeCount; + return pulseCount; } /** - * Get the strike strength. - * @return The strike strength. + * Set the pulse count. + * + * @return The pulse count. */ - public double getStrikeStrength() + public void setPulseCount(int pulseCount) { - return strikeStrength; - } - - /** - * Set the strike strength. - * @return The strike strength. - */ - public void setStrikeStrength(double strikeStrength) - { - this.strikeStrength = strikeStrength; + this.pulseCount = pulseCount; } /** @@ -189,13 +188,22 @@ public class LightningStrikePoint extends BasePoint { buffer = new StringBuilder(); } - buffer.append(String.format("%4d%02d%02d",getYear(),getMonth(),getDay())); - buffer.append(String.format("%02d%02d%02d",getHour(),getMinute(),getSecond())); + Calendar obsTime = getTime(); + int year = obsTime.get(Calendar.YEAR); + int month = obsTime.get(Calendar.MONTH) + 1; + int day = obsTime.get(Calendar.DAY_OF_MONTH); + int hour = obsTime.get(Calendar.HOUR); + int minute = obsTime.get(Calendar.MINUTE); + int second = obsTime.get(Calendar.SECOND); + int millis = obsTime.get(Calendar.MILLISECOND); + buffer.append(String.format("%4d%02d%02d", year, month, day)); + buffer.append(String.format("%02d%02d%02d", hour, minute, second)); buffer.append(String.format(" %9.5f %10.5f ",getLatitude(), getLongitude() )); buffer.append(String.format("%2s %2s ",msgType.getType(),type.getType())); - buffer.append(String.format("%4.0f %02d %02d", strikeStrength,(getMillis() / 100),strikeCount)); + buffer.append(String.format("%4.0f %02d %02d", getStrikeStrength(), + (millis / 100), pulseCount)); return buffer; } @@ -213,5 +221,20 @@ public class LightningStrikePoint extends BasePoint { return toString(null).toString(); } + + /** + * @return the pulses + */ + public List getPulses() { + return pulses; + } + + /** + * @param pulses + * the pulses to set + */ + public void setPulses(List pulses) { + this.pulses = pulses; + } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgMsgType.java b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgMsgType.java index 8173dfe783..47015a0229 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgMsgType.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgMsgType.java @@ -23,32 +23,51 @@ package com.raytheon.uf.common.dataplugin.binlightning.impl; * Enums for the lightning message type, Flash or RT Flash. * *
- *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 20070810            379 jkorman     Initial Coding from prototype.
+ * Jun 3, 2014  3226      bclement     added id, added TOTAL_LIGHTNING
  * 
  * 
- * + * * @author jkorman * @version 1.0 */ public enum LtgMsgType { - STRIKE_MSG_FL("FL"), - STRIKE_MSG_RT("RT"); + STRIKE_MSG_FL((byte) 0, "FL"), STRIKE_MSG_RT((byte) 1, "RT"), TOTAL_LIGHTNING( + (byte) 2, "TL"); - private final String strikeType; + private final String msgType; + + private final byte id; /** * Construct the type. - * @param type Lightning strike type. + * + * @param type + * Lightning message type. */ - private LtgMsgType(String type) + private LtgMsgType(byte id, String type) { - strikeType = type; + this.msgType = type; + this.id = id; + } + + /** + * @param id + * @return null if no type found for id + */ + public static LtgMsgType getById(byte id) { + for (LtgMsgType type : LtgMsgType.values()) { + if (type.id == id) { + return type; + } + } + return null; } /** @@ -57,6 +76,13 @@ public enum LtgMsgType */ public String getType() { - return strikeType; + return msgType; + } + + /** + * @return unique id for type + */ + public byte getId() { + return this.id; } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgStrikeType.java b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgStrikeType.java index aa2c50765b..b217ca1953 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgStrikeType.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.binlightning/src/com/raytheon/uf/common/dataplugin/binlightning/impl/LtgStrikeType.java @@ -23,34 +23,52 @@ package com.raytheon.uf.common.dataplugin.binlightning.impl; * Enums for the lightning strike type, cloud-to-cloud or cloud-to-ground. * *
- *
+ * 
  * SOFTWARE HISTORY
- *
+ * 
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 20070810            379 jkorman     Initial Coding from prototype.
  * 20130425        DCS 112 Wufeng Zhou Added STRIKE_TF (for Total Flash) in definition for Total Flash 
+ * Jun 3, 2014  3226       bclement    added id, changed to more descriptive names, added KEEP_ALIVE
  * 
  * 
- * + * * @author jkorman * @version 1.0 */ public enum LtgStrikeType { - STRIKE_CC("CC"), - STRIKE_CG("CG"), - STRIKE_TF("TF"); + CLOUD_TO_CLOUD((byte)0, "CC"), CLOUD_TO_GROUND((byte)1, "CG"), TOTAL_FLASH((byte)2, "TF"), KEEP_ALIVE((byte)9, + ""); private final String strikeType; + + private final byte id; /** * Construct the type. + * @param id unique id for type * @param type Lightning strike type. */ - private LtgStrikeType(String type) + private LtgStrikeType(byte id, String type) { - strikeType = type; + this.id = id; + this.strikeType = type; + } + + /** + * @param id + * unique id for type + * @return null if no type is found for id + */ + public static LtgStrikeType getById(byte id) { + for (LtgStrikeType type : LtgStrikeType.values()) { + if (type.id == id) { + return type; + } + } + return null; } /** @@ -61,4 +79,11 @@ public enum LtgStrikeType { return strikeType; } + + /** + * @return id + */ + public int getId() { + return this.id; + } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/META-INF/MANIFEST.MF index b1694c1c2d..7c678a93da 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Ncwf Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.bufrncwf -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.bufrncwf Require-Bundle: com.raytheon.uf.common.serialization, javax.persistence, @@ -14,5 +13,4 @@ Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.geospatial Import-Package: com.raytheon.uf.common.pointdata, com.raytheon.uf.common.pointdata.spatial, - com.raytheon.uf.common.status, - com.raytheon.uf.edex.decodertools.core + com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/src/com/raytheon/uf/common/dataplugin/bufrncwf/NCWFFeature.java b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/src/com/raytheon/uf/common/dataplugin/bufrncwf/NCWFFeature.java index 47907c45e9..9c0fe54f8e 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/src/com/raytheon/uf/common/dataplugin/bufrncwf/NCWFFeature.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrncwf/src/com/raytheon/uf/common/dataplugin/bufrncwf/NCWFFeature.java @@ -25,7 +25,6 @@ import java.util.List; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; import com.vividsolutions.jts.geom.Coordinate; /** @@ -38,6 +37,7 @@ import com.vividsolutions.jts.geom.Coordinate; * ------------ ---------- ----------- -------------------------- * --/--/---- jkorman Initial creation * Oct 15, 2013 2361 njensen Remove XML annotations + * May 12, 2014 3133 njensen Remove dependency on DecoderTools * * * @@ -66,7 +66,7 @@ public class NCWFFeature implements Serializable { * Feature centroid longitude. */ public NCWFFeature(Double lat, Double lon) { - centroidLocation = DecoderTools.createCoordinate(lat, lon); + centroidLocation = new Coordinate(lon, lat); } /** @@ -81,7 +81,7 @@ public class NCWFFeature implements Serializable { * @return */ public double getCentroidLatitude() { - return DecoderTools.getCoordinateLatitude(centroidLocation); + return centroidLocation.y; } /** @@ -89,7 +89,7 @@ public class NCWFFeature implements Serializable { * @return */ public double getCentroidLongitude() { - return DecoderTools.getCoordinateLongitude(centroidLocation); + return centroidLocation.x; } /** diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrsigwx/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrsigwx/META-INF/MANIFEST.MF index 96b838b35e..ba5c810fc2 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrsigwx/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrsigwx/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Bufrsigwx Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.bufrsigwx -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.bufrsigwx, com.raytheon.uf.common.dataplugin.bufrsigwx.common Require-Bundle: com.raytheon.uf.common.serialization, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/META-INF/MANIFEST.MF index d60ddb0465..11c8a1257d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Bufrssmi Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.bufrssmi -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.bufrssmi Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.pointdata, @@ -15,5 +14,4 @@ Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.dataplugin Import-Package: com.raytheon.uf.common.dataplugin.bufrssmi, com.raytheon.uf.common.pointdata, - com.raytheon.uf.common.status, - com.raytheon.uf.edex.decodertools.time + com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/src/com/raytheon/uf/common/dataplugin/bufrssmi/SSMIScanData.java b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/src/com/raytheon/uf/common/dataplugin/bufrssmi/SSMIScanData.java index 16eaed9154..e67577437c 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/src/com/raytheon/uf/common/dataplugin/bufrssmi/SSMIScanData.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrssmi/src/com/raytheon/uf/common/dataplugin/bufrssmi/SSMIScanData.java @@ -42,7 +42,7 @@ import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; import com.vividsolutions.jts.geom.Geometry; /** @@ -62,6 +62,7 @@ import com.vividsolutions.jts.geom.Geometry; * May 17, 2013 1869 bsteffen Remove DataURI column from sat plot * types. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * May 12, 2014 3133 njensen Use TimeUtil instead of TimeTools * * * @@ -315,7 +316,7 @@ public class SSMIScanData extends PersistablePluginDataObject implements SSMIScanData obs = new SSMIScanData(); obs.dataTime = dataTime.clone(); - obs.timeObs = TimeTools.copy(timeObs); + obs.timeObs = TimeUtil.newCalendar(timeObs); obs.orbitNumber = orbitNumber; obs.satId = satId; obs.scanNumber = scanNumber; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/META-INF/MANIFEST.MF index a0cf5e6ad6..6decdeefbb 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/META-INF/MANIFEST.MF @@ -2,19 +2,16 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Bufrua Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.bufrua -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.bufrua, com.raytheon.uf.common.dataplugin.bufrua.dao Require-Bundle: com.raytheon.uf.common.sounding;bundle-version="1.0.0", com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", - com.raytheon.uf.common.geospatial;bundle-version="1.12.1174", com.raytheon.uf.common.pointdata;bundle-version="1.12.1174", - com.raytheon.uf.edex.decodertools;bundle-version="1.12.1174", javax.persistence, org.hibernate;bundle-version="1.0.0", - javax.measure -Import-Package: org.apache.commons.logging + com.raytheon.uf.common.dataaccess;bundle-version="1.14.0" +Import-Package: com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/build.properties b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/build.properties index 34d2e4d2da..5791d48d5f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/build.properties +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/build.properties @@ -1,4 +1,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - . + .,\ + res/ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObs.java b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObs.java index b91ba86f7e..8744ed7375 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObs.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObs.java @@ -20,21 +20,10 @@ package com.raytheon.uf.common.dataplugin.bufrua; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.Comparator; -import java.util.HashMap; import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import javax.measure.quantity.Angle; -import javax.measure.quantity.Length; -import javax.measure.quantity.Temperature; -import javax.measure.quantity.Velocity; -import javax.measure.unit.NonSI; -import javax.measure.unit.SI; -import javax.measure.unit.Unit; import javax.persistence.Access; import javax.persistence.AccessType; import javax.persistence.Column; @@ -52,7 +41,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.IPersistable; @@ -63,7 +51,6 @@ import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; -import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; import com.vividsolutions.jts.geom.Geometry; /** @@ -77,24 +64,25 @@ import com.vividsolutions.jts.geom.Geometry; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Nov 27, 2007 382 jkorman Initial Coding. - * Jan 04, 2008 712 jkorman Lat/Lon were set incorrectly. - * Jan 07, 2008 720 jkorman remove default assignments from - * attributes. - * Jan 08, 2008 382 jkorman Added IVerticalSoundingCreator impl. - * Jan 14, 2008 763 jkorman Added "below" ground level - * exclusion to getValue. - * Apr 04, 2013 1846 bkowal Added an index on refTime and - * forecastTime - * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. - * May 07, 2013 1869 bsteffen Remove dataURI column from - * PluginDataObject. - * Jun 20, 2013 2128 bsteffen Ensure setDataURI sets the dataURI. - * Jul 19, 2013 1992 bsteffen Remove redundant time columns from - * bufrua. - * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Nov 27, 2007 382 jkorman Initial Coding. + * Jan 04, 2008 712 jkorman Lat/Lon were set incorrectly. + * Jan 07, 2008 720 jkorman remove default assignments from + * attributes. + * Jan 08, 2008 382 jkorman Added IVerticalSoundingCreator impl. + * Jan 14, 2008 763 jkorman Added "below" ground level + * exclusion to getValue. + * Apr 04, 2013 1846 bkowal Added an index on refTime and + * forecastTime + * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. + * May 07, 2013 1869 bsteffen Remove dataURI column from + * PluginDataObject. + * Jun 20, 2013 2128 bsteffen Ensure setDataURI sets the dataURI. + * Jul 19, 2013 1992 bsteffen Remove redundant time columns from + * bufrua. + * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable * * * @@ -114,7 +102,7 @@ import com.vividsolutions.jts.geom.Geometry; @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public class UAObs extends PersistablePluginDataObject implements - ISpatialEnabled, IDecoderGettable, IPointData, IPersistable { + ISpatialEnabled, IPointData, IPersistable { private static final long serialVersionUID = 1L; @@ -139,41 +127,6 @@ public class UAObs extends PersistablePluginDataObject implements public static final String PLUGIN_NAME = "bufrua"; - public static final Unit DISTANCE_UNIT = SI.METER; - - public static final Unit TEMPERATURE_UNIT = SI.KELVIN; - - public static final Unit WIND_SPEED_UNIT = SI.METERS_PER_SECOND; - - public static final Unit WIND_DIR_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit LOCATION_UNIT = NonSI.DEGREE_ANGLE; - - private static final HashMap PARM_MAP = new HashMap(); - static { - PARM_MAP.put("GH", UA_GEOHGT); - PARM_MAP.put("Px", UA_PRESSURE); - - PARM_MAP.put("T", SFC_TEMP); - PARM_MAP.put("DpT", SFC_DWPT); - - PARM_MAP.put("WS", SFC_WNDSPD); - PARM_MAP.put("WD", SFC_WNDDIR); - - PARM_MAP.put("NLAT", STA_LAT); - PARM_MAP.put("NLON", STA_LON); - } - - public static final String UA_PARAM_PTRN = ".*:PRESS=\\d{2,4}"; - - // Non persisted value. Hold the last requested parameter name. - @Transient - private String parameterName = null; - - // Non persisted value. Hold the last requested level value. - @Transient - private Integer levelId; - // The observation report type. @DataURI(position = 1) @Column @@ -532,28 +485,6 @@ public class UAObs extends PersistablePluginDataObject implements this.stationName = stationName; } - /** - * Set the data uri for this observation. - * - * @param A - * data uri. - */ - @Override - public void setDataURI(String dataURI) { - super.setDataURI(dataURI); - identifier = dataURI; - } - - /** - * Get the IDecoderGettable reference for this record. - * - * @return The IDecoderGettable reference for this record. - */ - @Override - public IDecoderGettable getDecoderGettable() { - return this; - } - /** * */ @@ -570,203 +501,6 @@ public class UAObs extends PersistablePluginDataObject implements this.pointDataView = pointDataView; } - /** - * Get the value of a parameter that is represented as a String. - * - * @param paramName - * The name of the parameter value to retrieve. - * @return The String value of the parameter. If the parameter is unknown, a - * null reference is returned. - */ - @Override - public String getString(String paramName) { - if ("STA".matches(paramName)) { - return this.getStationId(); - } - return null; - } - - /** - * Get the value and units of a named parameter within this observation. The - * parameter name may include level information for these observation data. - * The format for parameter is: - * - *
-     *    "parameterName" may be one of 
-     *        "GH"  geopotential height
-     *        "Px"  pressure
-     *        "T"   temperature
-     *        "DpT" dewpoint
-     *        "WS"  wind speed
-     *        "WD"  wind direction
-     *    followed by a level specification ":PRESS=xxxx" where xxxx is a level
-     *    in hPa (millibars). To retrieve the temperature from the 850hPa level
-     *    use the following getValue("T:PRESS=850");
-     *    
-     *    Some data is specific to the observation, latitude/longitude for
-     *    example. These data may be retrieved using the parameter minus any level
-     *    information as follows
-     *    "NLAT"  station latitude
-     *    "NLON"  station longitude
-     * 
- * - * If the sounding data defines a surface level, and a request for a level - * below surface is requested, a null value is returned. - * - * @param paramName - * The name of the parameter value to retrieve. - * @return An Amount with value and units. If the parameter is unknown, a - * null reference is returned. - */ - @Override - public Amount getValue(String paramName) { - Amount a = null; - - if (parseParameter(paramName)) { - String pName = PARM_MAP.get(parameterName); - if ((pName != null) && (levels != null) && (levels.size() > 0)) { - - UAObsLevel obsLevel = getLevel(levelId); - if (obsLevel != null) { - Integer iValue = null; - Double dValue = null; - if (UA_GEOHGT.equals(pName)) { - iValue = obsLevel.getGeoHeight(); - if (iValue != null) { - a = new Amount(iValue, DISTANCE_UNIT); - } - } else if (SFC_TEMP.equals(pName)) { - dValue = obsLevel.getTemp(); - if (dValue != null) { - a = new Amount(dValue, TEMPERATURE_UNIT); - } - } else if (SFC_DWPT.equals(pName)) { - dValue = obsLevel.getDwpt(); - if (dValue != null) { - a = new Amount(dValue, TEMPERATURE_UNIT); - } - } else if (SFC_WNDSPD.equals(pName)) { - dValue = obsLevel.getWindSpeed(); - if (dValue != null) { - a = new Amount(dValue, WIND_SPEED_UNIT); - } - } else if (SFC_WNDDIR.equals(pName)) { - iValue = obsLevel.getWindDirection(); - if (iValue != null) { - a = new Amount(iValue, WIND_DIR_UNIT); - } - } - } - } - } else { - // Assume we are trying to get an observation attribute. - String pName = PARM_MAP.get(paramName); - if (STA_LAT.equals(pName)) { - a = new Amount(this.getLatitude(), LOCATION_UNIT); - } else if (STA_LON.equals(pName)) { - a = new Amount(this.getLongitude(), LOCATION_UNIT); - } - } - return a; - } - - /** - * Get the value of a parameter that is represented as a String. - * - * @param paramName - * The name of the parameter value to retrieve. - * @return The String value of the parameter. If the parameter is unknown, a - * null reference is returned. - */ - @Override - public Collection getValues(String paramName) { - return null; - } - - /** - * Determine if the parameter is a level request, and parse out the pressure - * level and parameter name if so. - * - * @param parameter - * The parameter string to parse. - * @return This is a level parameter. - */ - private boolean parseParameter(String parameter) { - boolean goodParse = false; - Pattern p = Pattern.compile(UA_PARAM_PTRN); - Matcher m = p.matcher(parameter); - if (m.find()) { - int start = parameter.indexOf(":PRESS="); - if (start > 0) { - parameterName = parameter.substring(0, start); - start += ":PRESS=".length(); - levelId = Integer.parseInt(parameter.substring(start)); - } - goodParse = true; - } - return goodParse; - } - - /** - * Get a specified pressure level data if it exists. If the specified level - * is below the declared surface pressure a null reference is returned. - * - * @param level - * A pressure level to get. - * @return The requested level, if found, null reference if not. - */ - private UAObsLevel getLevel(Integer level) { - UAObsLevel retValue = null; - if (level != null) { - level = level * 100; - for (UAObsLevel l : levels) { - if (IDecoderConstants.MANPRE_LEVEL.equals(l.getVertSig()) - || IDecoderConstants.SIGPRE_LEVEL - .equals(l.getVertSig())) { - - if (level.equals(l.getPressure())) { - retValue = l; - break; - } - } - } - } - if (retValue != null) { - UAObsLevel sfc = getSurfaceLevel(); - if (sfc != null) { - if (LayerTools.isLowerThan(sfc, retValue)) { - retValue = null; - } - } - } - return retValue; - } - - /** - * Get the defined surface level. If a surface level cannot be found, then - * return null. - * - * @return The surface level found, or null. - */ - private UAObsLevel getSurfaceLevel() { - UAObsLevel retValue = null; - if (levels != null) { - for (UAObsLevel level : levels) { - if (IDecoderConstants.SFC_LEVEL.equals(level.getVertSig())) { - retValue = level; - break; - } - } - } - return retValue; - } - - @Override - public String[] getStrings(String paramName) { - // TODO Auto-generated method stub - return null; - } - @Override public SurfaceObsLocation getSpatialObject() { return location; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsAdapter.java b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsAdapter.java index 3608889078..a742527508 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsAdapter.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsAdapter.java @@ -22,7 +22,6 @@ package com.raytheon.uf.common.dataplugin.bufrua; import static com.raytheon.uf.common.sounding.SoundingLayer.MISSING; import java.util.ArrayList; -import java.util.Calendar; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -33,7 +32,6 @@ import com.raytheon.uf.common.sounding.LayerType; import com.raytheon.uf.common.sounding.SoundingLayer; import com.raytheon.uf.common.sounding.VerticalSounding; import com.raytheon.uf.common.sounding.adapter.AbstractVerticalSoundingAdapter; -import com.raytheon.uf.edex.decodertools.time.TimeTools; /** * Adapter for convertung UAObs data into Vertical Soundings. @@ -44,6 +42,7 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * ------------ ---------- ----------- -------------------------- * Jul 19, 2013 1992 bsteffen Remove redundant time columns from * bufrua. + * Aug 18, 2014 3530 bclement removed dead code * * * @@ -433,105 +432,6 @@ public class UAObsAdapter extends AbstractVerticalSoundingAdapter { } } - private static void fixupWithWinds(List layers) { - // sort data by height - Collections.sort(layers, SoundingLayer.getHeightComparator()); - for (int i = 0; i < layers.size() - 1;) { - if (checkLayers(layers, i, i + 1)) { - continue; - } - i++; - } - // Interpolate temperatures if needed. - float deltaT = establishDeltaT(layers, 0, true); - if (deltaT != MISSING) { - for (int i = 1; i < layers.size() - 1; i++) { - SoundingLayer layer = layers.get(i); - if (layer.getTemperature() == MISSING) { - float dh = layer.getGeoHeight() - - layers.get(i - 1).getGeoHeight(); - layer.setTemperature(layers.get(i - 1).getTemperature() - + (dh * deltaT)); - layer.setTmpInterpolated(true); - } else { - deltaT = establishDeltaT(layers, i, true); - if (deltaT == MISSING) { - break; - } - } - } - } - // Interpolate dewpoints if needed. - float deltaTd = establishDeltaT(layers, 0, false); - if (deltaTd != MISSING) { - for (int i = 1; i < layers.size() - 1; i++) { - SoundingLayer layer = layers.get(i); - if (layer.getDewpoint() == MISSING) { - float dh = layer.getGeoHeight() - - layers.get(i - 1).getGeoHeight(); - layer.setDewpoint(layers.get(i - 1).getDewpoint() - + (dh * deltaTd)); - layer.setDptInterpolated(true); - } else { - deltaTd = establishDeltaT(layers, i, false); - if (deltaTd == MISSING) { - break; - } - } - } - } - - for (int i = 1; i < layers.size(); i++) { - if (layers.get(i).getPressure() == MISSING) { - double zA = layers.get(i - 1).getGeoHeight(); - double zB = layers.get(i).getGeoHeight(); - double dz = zB - zA; - double tvA = layers.get(i - 1).getVirtualTemp() + 273.13; - double tvB = layers.get(i).getVirtualTemp() + 273.13; - double k = (tvA + tvB) / 2 * 28.2898; - double pA = layers.get(i - 1).getPressure(); - k = (-dz / k) + Math.log(pA); - - float pB = (float) Math.exp(k); - layers.get(i).setPressure(pB); - layers.get(i).setPreInterpolated(true); - } - } // for - } - - /** - * - * @param layers - * @param index - * @param temp - * @return - */ - private static float establishDeltaT(List layers, int index, - boolean temp) { - float delta = MISSING; - float t; - if (temp) { - t = layers.get(index).getTemperature(); - } else { - t = layers.get(index).getDewpoint(); - } - float h = layers.get(index).getGeoHeight(); - for (int i = index + 1; i < layers.size(); i++) { - float tt; - if (temp) { - tt = layers.get(i).getTemperature(); - } else { - tt = layers.get(i).getDewpoint(); - } - if (tt != MISSING) { - float hh = layers.get(i).getGeoHeight(); - delta = (tt - t) / (hh - h); - break; - } - } - return delta; - } - /** * * @param layers @@ -718,25 +618,6 @@ public class UAObsAdapter extends AbstractVerticalSoundingAdapter { return retValue; } - /** - * - * @param p - * @param h - * @param tp - * @param td - * @return - */ - private static final UAObsLevel createLevel(double p, double h, double tp, - double td, int type) { - UAObsLevel level = new UAObsLevel(); - level.setPressure((int) p); - level.setVertSig(type); - level.setGeoHeight((int) h); - level.setTemp(tp); - level.setDwpt(td); - return level; - } - /** * * @param args @@ -801,8 +682,6 @@ public class UAObsAdapter extends AbstractVerticalSoundingAdapter { // System.out.println(it.next()); // } - Calendar c = TimeTools.getSystemCalendar(); - SurfaceObsLocation loc = new SurfaceObsLocation("72558"); UAObs[] obs = new UAObs[2]; obs[0] = new UAObs(); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsLevel.java b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsLevel.java index 2c2fbf5945..7efe3a1279 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsLevel.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/UAObsLevel.java @@ -25,7 +25,6 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -42,6 +41,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * ------------ ---------- ----------- -------------------------- * 20071127 382 jkorman Initial Coding. * 20080630 1215 jkorman Implemented Serializable. + * Aug 18, 2014 3530 bclement removed ISerialableObject * * * @author jkorman @@ -49,7 +49,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize -public class UAObsLevel implements Serializable, ISerializableObject { +public class UAObsLevel implements Serializable { private static final long serialVersionUID = 1L; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/dao/BufrUAPointDataTransform.java b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/dao/BufrUAPointDataTransform.java index 45fb608ac1..bc2796ea09 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/dao/BufrUAPointDataTransform.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.bufrua/src/com/raytheon/uf/common/dataplugin/bufrua/dao/BufrUAPointDataTransform.java @@ -21,19 +21,19 @@ package com.raytheon.uf.common.dataplugin.bufrua.dao; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.dataplugin.bufrua.LayerTools; import com.raytheon.uf.common.dataplugin.bufrua.UAObs; import com.raytheon.uf.common.dataplugin.bufrua.UAObsLevel; import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; /** * Converts a PointDataContainer into a UAObs record. @@ -48,6 +48,8 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * Jul 19, 2013 1992 bsteffen Remove redundant time columns from * bufrua. * Sep 9, 2013 2277 mschenke Got rid of ScriptCreator references + * Jul 23, 2014 3410 bclement location changed to floats + * Aug 18, 2014 3530 bclement switched from commons.logging to ufstatus * * * @@ -58,8 +60,8 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; public class BufrUAPointDataTransform { /** The logger */ - private static Log logger = LogFactory - .getLog(BufrUAPointDataTransform.class); + private static final IUFStatusHandler logger = UFStatus + .getHandler(BufrUAPointDataTransform.class); public static final String[] HDR_PARAMS = new String[] { "wmoStaNum", "staName", "validTime", "relTime", "staElev", "latitude", @@ -109,14 +111,14 @@ public class BufrUAPointDataTransform { long vt = pdv.getNumber("validTime").longValue(); - obs.setDataTime(new DataTime(TimeTools.newCalendar(vt))); + obs.setDataTime(new DataTime(TimeUtil.newGmtCalendar(new Date(vt)))); SurfaceObsLocation location = new SurfaceObsLocation(); int elev = pdv.getNumber("staElev").intValue(); location.setElevation(elev); - double lat = pdv.getNumber("latitude").doubleValue(); - double lon = pdv.getNumber("longitude").doubleValue(); + float lat = pdv.getNumber("latitude").floatValue(); + float lon = pdv.getNumber("longitude").floatValue(); location.assignLocation(lat, lon); Number sta = pdv.getNumber("wmoStaNum"); location.setStationId(sta.toString()); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/META-INF/MANIFEST.MF index 2468775d20..a25aa80fb3 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Cwa Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.cwa -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Export-Package: com.raytheon.uf.common.dataplugin.cwa Require-Bundle: com.raytheon.uf.common.serialization, @@ -11,6 +11,5 @@ Require-Bundle: com.raytheon.uf.common.serialization, javax.persistence, javax.measure, com.raytheon.uf.common.dataplugin -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/src/com/raytheon/uf/common/dataplugin/cwa/CWARecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/src/com/raytheon/uf/common/dataplugin/cwa/CWARecord.java index 767f9dc9ad..e2c985ec2a 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/src/com/raytheon/uf/common/dataplugin/cwa/CWARecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.cwa/src/com/raytheon/uf/common/dataplugin/cwa/CWARecord.java @@ -59,6 +59,7 @@ import com.vividsolutions.jts.geom.Coordinate; * PluginDataObject. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Oct 15, 2013 2361 njensen Removed XML annotations + * Feb 27, 2014 2638 njensen Corrected dataURI annotation for eventId * * * @@ -93,7 +94,7 @@ public class CWARecord extends PersistablePluginDataObject implements @DynamicSerializeElement private CWADimension dimension; - @DataURI(position = 1, embedded = true) + @DataURI(position = 1) @DynamicSerializeElement private String eventId; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.cwat/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.cwat/META-INF/MANIFEST.MF index 611558179c..fc52091c05 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.cwat/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.cwat/META-INF/MANIFEST.MF @@ -2,17 +2,15 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Cwat Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.cwat -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.uf.viz.core Require-Bundle: javax.persistence;bundle-version="1.0.0", com.raytheon.uf.common.serialization, com.raytheon.uf.common.monitor;bundle-version="1.11.5", - com.raytheon.uf.common.dataplugin.radar;bundle-version="1.0.0", + com.raytheon.uf.common.dataplugin.radar, com.raytheon.uf.common.geospatial, com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.datastorage -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.uf.common.dataplugin.cwat -Import-Package: org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/META-INF/MANIFEST.MF index cfc7833a07..d941895e93 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: FFMP common Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.ffmp -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.uf.viz.core -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.ffmp, com.raytheon.uf.common.dataplugin.ffmp.dataaccess Require-Bundle: javax.persistence;bundle-version="1.0.0", @@ -14,18 +13,17 @@ Require-Bundle: javax.persistence;bundle-version="1.0.0", com.raytheon.uf.common.hydro;bundle-version="1.11.11", com.raytheon.uf.common.mpe;bundle-version="1.11.11", com.raytheon.uf.common.localization;bundle-version="1.11.13", - com.raytheon.uf.common.status;bundle-version="1.12.1174", + com.raytheon.uf.common.status, com.raytheon.uf.common.site, - com.raytheon.uf.common.dataplugin.shef;bundle-version="1.12.1174", - com.raytheon.uf.common.cache;bundle-version="1.12.1174", - com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", - com.raytheon.uf.common.dataplugin.grid;bundle-version="1.0.0", - com.raytheon.uf.common.dataaccess;bundle-version="1.0.0", + com.raytheon.uf.common.dataplugin.shef, + com.raytheon.uf.common.cache, + com.raytheon.uf.common.serialization.comm, + com.raytheon.uf.common.dataplugin.grid, + com.raytheon.uf.common.dataaccess, com.google.guava;bundle-version="1.0.0", javax.measure;bundle-version="1.0.0", - com.raytheon.uf.common.message;bundle-version="1.12.1174", + com.raytheon.uf.common.message, com.raytheon.uf.common.dataquery, com.raytheon.uf.common.datastorage, com.raytheon.uf.common.dataplugin -Import-Package: com.raytheon.uf.common.util, - com.raytheon.uf.edex.database.dao +Import-Package: com.raytheon.uf.common.util diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPRecord.java index 3e07637fbe..6d289cb207 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPRecord.java @@ -40,7 +40,6 @@ import javax.persistence.UniqueConstraint; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.IHDFFilePathProvider; @@ -71,25 +70,27 @@ import com.raytheon.uf.common.time.util.ImmutableDate; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Jun 03, 2009 2521 D. Hladky Initial release - * Jan 27, 2013 1478 D. Hladky OUN memory help - * Feb 28, 2013 1729 dhladky Supressed un-necessary debug loggers - * Apr 04, 2013 1846 bkowal Added an index on refTime and - * forecastTime - * Apr 08, 2013 1293 bkowal Removed references to hdffileid. - * April, 9 2013 1890 dhladky Moved dates to referenced map in record - * rather than multiple dates in - * FFMPBasin objs. - * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. - * Apr 16, 2013 1912 bsteffen Initial bulk hdf5 access for ffmp - * Apr 18, 2013 1919 dhladky Added method for VGB loading - * May 07, 2013 1869 bsteffen Remove dataURI column from - * PluginDataObject. - * Jul 15, 2013 2184 dhladky Remove all HUC's for storage except ALL - * Aug 30, 2013 2298 rjpeter Make getPluginName abstract - * Oct 14, 2013 2361 njensen Removed XML annotations + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Jun 03, 2009 2521 D. Hladky Initial release + * Jan 27, 2013 1478 D. Hladky OUN memory help + * Feb 28, 2013 1729 dhladky Supressed un-necessary debug loggers + * Apr 04, 2013 1846 bkowal Added an index on refTime and + * forecastTime + * Apr 08, 2013 1293 bkowal Removed references to hdffileid. + * Apr,09, 2013 1890 dhladky Moved dates to referenced map in record + * rather than multiple dates in FFMPBasin + * objs. + * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. + * Apr 16, 2013 1912 bsteffen Initial bulk hdf5 access for ffmp + * Apr 18, 2013 1919 dhladky Added method for VGB loading + * May 07, 2013 1869 bsteffen Remove dataURI column from + * PluginDataObject. + * Jul 15, 2013 2184 dhladky Remove all HUC's for storage except ALL + * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Oct 14, 2013 2361 njensen Removed XML annotations + * May 01, 2014 3026 mpduff Added metadata column. + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable * * * @@ -131,6 +132,10 @@ public class FFMPRecord extends PersistablePluginDataObject implements @DynamicSerializeElement private String siteKey; + @Column(length = 255) + @DynamicSerializeElement + private String metaData; + @Transient private FFMPBasinData basins = new FFMPBasinData();; @@ -333,17 +338,6 @@ public class FFMPRecord extends PersistablePluginDataObject implements return sourceName; } - /** - * Get the IDecoderGettable reference for this record. - * - * @return The IDecoderGettable reference for this record. Null for this - * class. - */ - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - /** * finds the correct basin bin by hucName to place into * @@ -600,6 +594,21 @@ public class FFMPRecord extends PersistablePluginDataObject implements return isRate; } + /** + * @return the metaData + */ + public String getMetaData() { + return metaData; + } + + /** + * @param metaData + * the metaData to set + */ + public void setMetaData(String metaData) { + this.metaData = metaData; + } + /** * Purges out old data * diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPTemplates.java b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPTemplates.java index 5958234bfc..7fafcbc4fc 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPTemplates.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPTemplates.java @@ -90,6 +90,7 @@ import com.vividsolutions.jts.io.WKBReader; * 06/10/13 2085 njensen Use countyMap for efficiency * 07/01/13 2155 dhladky Fixed duplicate pfafs that were in domainList arrays from overlapping domains. * 07/15/13 2184 dhladky Remove all HUC's for storage except ALL + * Nov 18, 2014 3831 dhladky StatusHandler logging. Proper list sizing. Geometry chunk sizing. * * * @author dhladky @@ -333,7 +334,7 @@ public class FFMPTemplates { long[] list = readDomainList(huc, cwa, dataKey); if (huc.equals(FFMPRecord.ALL)) { - map = new LinkedHashMap(); + map = new LinkedHashMap<>(list.length, 1.0f); HashMap protoMap = (HashMap) readDomainMap( dataKey, huc, cwa); // add them to the master hash @@ -359,12 +360,12 @@ public class FFMPTemplates { */ private LinkedHashMap readVGBFile( String name, String cwa, String dataKey) { - - LinkedHashMap map = new LinkedHashMap(); - + HashMap protoMap = readVGBDomainMap( dataKey, cwa); String[] list = readVGBDomainList(dataKey, cwa); + LinkedHashMap map = new LinkedHashMap(list.length, 1.0f); + // construct ordered map for (String lid : list) { map.put(lid, protoMap.get(lid)); @@ -413,13 +414,13 @@ public class FFMPTemplates { list = null; } catch (SerializationException se) { - se.printStackTrace(); + statusHandler.error("Serialization Exception: Write VGB: cwa: "+cwa+" dataKey: "+dataKey, se); } catch (FileNotFoundException fnfe) { - fnfe.printStackTrace(); + statusHandler.error("File Not found Exception: Write VGB: cwa: "+cwa+" dataKey: "+dataKey, fnfe); } catch (IOException ioe) { - ioe.printStackTrace(); + statusHandler.error("IO Exception: Write VGB: cwa: "+cwa+" dataKey: "+dataKey, ioe); } catch (LocalizationOpFailedException e) { - e.printStackTrace(); + statusHandler.error("Localization Exception: Write VGB: cwa: "+cwa+" dataKey: "+dataKey, e); } } @@ -486,13 +487,13 @@ public class FFMPTemplates { list = null; } catch (SerializationException se) { - se.printStackTrace(); + statusHandler.error("Serialization Exception: Write Template: cwa: "+cwa+" dataKey:"+dataKey+" huc: "+huc, se); } catch (FileNotFoundException fnfe) { - fnfe.printStackTrace(); + statusHandler.error("File Not found Exception: Write Template: cwa: "+cwa+" dataKey:"+dataKey+" huc: "+huc, fnfe); } catch (IOException ioe) { - ioe.printStackTrace(); + statusHandler.error("IO Exception: Write Template: cwa: "+cwa+" dataKey:"+dataKey+" huc: "+huc, ioe); } catch (LocalizationOpFailedException e) { - e.printStackTrace(); + statusHandler.error("Localization Exception: Write Template: cwa: "+cwa+" dataKey:"+dataKey+" huc: "+huc, e); } } @@ -843,7 +844,7 @@ public class FFMPTemplates { } } } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Find Basin by lon lat failed: dataKey: "+dataKey+ " coor:"+coor.toString(), e); } return null; @@ -1007,7 +1008,7 @@ public class FFMPTemplates { } } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Failed to lookup County: dataKey: "+dataKey, e); } FFMPCounties counties = new FFMPCounties(countyList); @@ -1095,7 +1096,7 @@ public class FFMPTemplates { siteExtents = FFMPUtils.getGeometryText(geo); } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Couldn't lookup site Extents!: dataKey: "+dataKey, e); } } else if (primeSource.getDataType().equals( FFMPSourceConfigurationManager.DATA_TYPE.RADAR.getDataType())) { @@ -1739,8 +1740,23 @@ public class FFMPTemplates { WKBReader reader = new WKBReader(); FFMPBasinMetaData basin = null; int upstreamDepth = 0; + String compositeKey = siteKey + cwa; + SoftReference> rawGeomRef = cwaRawGeometries + .get(compositeKey); + Map pfafGeometries = null; + + if (rawGeomRef != null) { + pfafGeometries = rawGeomRef.get(); + } if (results != null && results.length > 0) { + + if (pfafGeometries == null) { + pfafGeometries = new HashMap(results.length, 1.0f); + cwaRawGeometries.put(compositeKey, + new SoftReference>(pfafGeometries)); + } + for (int i = 0; i < results.length; i++) { Object[] row = (Object[]) results[i]; basin = FFMPUtils.getMetaDataBasin(row, mode.getMode()); @@ -1755,11 +1771,12 @@ public class FFMPTemplates { if ((row.length >= (upstreamDepth + 9)) && (row[upstreamDepth + 9] != null)) { try { - addRawGeometry(siteKey, cwa, basin.getPfaf(), reader + pfafGeometries.put(basin.getPfaf(), reader .read((byte[]) row[upstreamDepth + 9]) .buffer(0)); + } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Failure to add rawGeometry in loadBasins: "+siteKey, e); } } } @@ -1977,9 +1994,9 @@ public class FFMPTemplates { list = SerializationUtil.transformFromThrift(long[].class, FileUtil.file2bytes(f.getFile(), true)); } catch (SerializationException se) { - se.printStackTrace(); + statusHandler.error("Serialization Exception: Read Domain: cwa: "+cwa+" dataKey: "+dataKey+" huc: "+huc, se); } catch (IOException e) { - e.printStackTrace(); + statusHandler.error("IO Exception: Read Domain: cwa: "+cwa+" dataKey: "+dataKey+" huc: "+huc, e); } return list; @@ -2014,9 +2031,9 @@ public class FFMPTemplates { FileUtil.file2bytes(f.getFile(), true)); } } catch (SerializationException se) { - se.printStackTrace(); + statusHandler.error("Serialization Exception: Domain Map: "+dataKey+" cwa:"+cwa+" huc: "+huc, se); } catch (IOException e) { - e.printStackTrace(); + statusHandler.error("IO Exception: Domain Map: "+dataKey+" cwa:"+cwa+" huc: "+huc, e); } return map; @@ -2045,9 +2062,9 @@ public class FFMPTemplates { .transformFromThrift(HashMap.class, FileUtil.file2bytes(f.getFile(), true)); } catch (SerializationException se) { - se.printStackTrace(); + statusHandler.error("Serialization Exception: Virtual Basins: "+dataKey+" cwa: "+cwa, se); } catch (IOException e) { - e.printStackTrace(); + statusHandler.error("IO Exception: Virtual Basins: "+dataKey+" cwa: "+cwa, e); } return map; @@ -2073,9 +2090,9 @@ public class FFMPTemplates { list = SerializationUtil.transformFromThrift(String[].class, FileUtil.file2bytes(f.getFile(), true)); } catch (SerializationException se) { - se.printStackTrace(); + statusHandler.error("Serialization Exception: : Read Virtual Domain: cwa: "+cwa+" dataKey: "+dataKey, se); } catch (IOException e) { - e.printStackTrace(); + statusHandler.error("IO Exception: : Read Virtual Domain: cwa: "+cwa+" dataKey: "+dataKey, e); } return list; @@ -2119,26 +2136,6 @@ public class FFMPTemplates { } } - public void addRawGeometry(String siteKey, String cwa, Long pfaf, Geometry g) { - - String compositeKey = siteKey + cwa; - SoftReference> rawGeomRef = cwaRawGeometries - .get(compositeKey); - Map pfafGeometries = null; - - if (rawGeomRef != null) { - pfafGeometries = rawGeomRef.get(); - } - - if (pfafGeometries == null) { - pfafGeometries = new HashMap(4000); - cwaRawGeometries.put(compositeKey, - new SoftReference>(pfafGeometries)); - } - - pfafGeometries.put(pfaf, g); - } - /** * * @param cwa diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPUtils.java b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPUtils.java index 87bda5ae9e..29500c0964 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPUtils.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/FFMPUtils.java @@ -41,8 +41,11 @@ import org.geotools.referencing.GeodeticCalculator; import com.raytheon.uf.common.dataplugin.grid.GridConstants; import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; +import com.raytheon.uf.common.dataquery.db.QueryResult; +import com.raytheon.uf.common.dataquery.db.QueryResultRow; import com.raytheon.uf.common.dataquery.requests.DbQueryRequest; import com.raytheon.uf.common.dataquery.requests.DbQueryRequest.OrderMode; +import com.raytheon.uf.common.dataquery.requests.QlServerRequest; import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.responses.DbQueryResponse; import com.raytheon.uf.common.geospatial.ISpatialQuery; @@ -51,12 +54,13 @@ import com.raytheon.uf.common.geospatial.SpatialException; import com.raytheon.uf.common.geospatial.SpatialQueryFactory; import com.raytheon.uf.common.hydro.spatial.HRAPCoordinates; import com.raytheon.uf.common.hydro.spatial.HRAPSubGrid; +import com.raytheon.uf.common.message.response.ResponseMessageGeneric; import com.raytheon.uf.common.monitor.scan.ScanUtils; import com.raytheon.uf.common.mpe.util.XmrgFile; import com.raytheon.uf.common.serialization.comm.RequestRouter; import com.raytheon.uf.common.site.SiteMap; -import com.raytheon.uf.edex.database.dao.CoreDao; -import com.raytheon.uf.edex.database.dao.DaoConfig; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryFactory; @@ -80,13 +84,17 @@ import com.vividsolutions.jts.io.WKTWriter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 06/22/09 2152 D. Hladky Initial release - * 06/18/12 DR 15108 G. Zhang Fix County FIPS 4-digit issue + * 06/18/12 DR 15108 G. Zhang Fix County FIPS 4-digit issue * 01/02/13 DR 1569 D. Hladky constants, arraylist to list and moved common menthods here * 03/01/13 DR 13228 G. Zhang Add state for VGB query and related code * 03/18/13 1817 D. Hladky Fixed issue with BOX where only 1 HUC was showing up. * 08/20/13 2250 mnash Fixed incorrect return types for database queries. - * + * 09/05/14 DR 17346 G. Zhang Fixed issue with DB return types. + * Apr 21, 2014 2060 njensen Remove dependency on grid dataURI column + * Apr 22, 2014 2984 njensen Remove dependency on edex/CoreDao + * Nov 18, 2014 3831 dhladky StatusHandler logging. Proper list sizing. * + * * @author dhladky * @version 1 */ @@ -109,6 +117,9 @@ public class FFMPUtils { public static float MISSING = -99999.0f; private static NumberFormat formatter = new DecimalFormat("#.##"); + + private static final IUFStatusHandler statusHandler = UFStatus + .getHandler(FFMPUtils.class); public static byte[] STREAM_FILL = new byte[] { // 0x40, 0x08, 0x40, 0x08, // @@ -153,7 +164,7 @@ public class FFMPUtils { * @return */ public static ArrayList getAllPfafs(String extents, String mode) { - ArrayList pfafs = new ArrayList(); + ArrayList pfafs = null; String sql = "select pfaf_id " + " from " + FFMP_TABLE + " where" + " ST_Contains(ST_GeomFromText('" + extents + "', 4326), " + ScanUtils.getHighResolutionLevel("ffmp_basins") + ")"; @@ -163,6 +174,7 @@ public class FFMPUtils { sq = SpatialQueryFactory.create(); Object[] results = sq.dbRequest(sql, FFMPUtils.MAPS_DB); + pfafs = new ArrayList(results.length); if (results.length > 0) { if (mode.equals("CAVE")) { @@ -185,7 +197,7 @@ public class FFMPUtils { } } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error querying allPfafs: +sql: "+sql, e); } return pfafs; @@ -200,7 +212,7 @@ public class FFMPUtils { public static LinkedHashMap getVirtualGageBasins( double extent, String cwa, String mode) { - LinkedHashMap virtualBasins = new LinkedHashMap(); + LinkedHashMap virtualBasins = null; /* * DR 13228 state added to the below query */ @@ -208,9 +220,9 @@ public class FFMPUtils { + "where lid in " + "(select distinct(lid) from IngestFilter " + "where pe in ('PC', 'PP') " + "and ingest = 'T' " + "and dur < 2000)"; - CoreDao dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); try { - Object[] results = dao.executeSQLQuery(sql.toString()); + Object[] results = executeSqlQuery(sql, ShefConstants.IHFS); + virtualBasins = new LinkedHashMap(results.length, 1.0f); Geometry poly = getCwaGeometry(cwa, mode); PreparedGeometry pg = PreparedGeometryFactory.prepare(poly); Coordinate coor = poly.getCentroid().getCoordinate(); @@ -230,7 +242,7 @@ public class FFMPUtils { } } } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Error querying Virtual Gage's: +sql: "+sql, e); } return virtualBasins; @@ -244,17 +256,18 @@ public class FFMPUtils { private static ArrayList determineUpstreamDepth() { ISpatialQuery sq = null; Object[] results = null; - ArrayList upstreams = new ArrayList(); + ArrayList upstreams = null; String sql = "select column_name from information_schema.columns where table_name='ffmp_basins'"; try { sq = SpatialQueryFactory.create(); results = sq.dbRequest(sql, MAPS_DB); + upstreams = new ArrayList(results.length); int j = 1; if (results.length > 0) { for (int i = 0; i < results.length; i++) { - String column_name = (String) ((Object[]) results[i])[0]; + String column_name = (String) results[i]/*((Object[]) results[i])[0]*/; if (column_name.startsWith("upstream")) { upstreams.add("upstream" + j); j++; @@ -262,7 +275,7 @@ public class FFMPUtils { } } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error determining upstream depth: +sql: "+sql, e); } return upstreams; @@ -291,7 +304,7 @@ public class FFMPUtils { sq = SpatialQueryFactory.create(); results = sq.dbRequest(sql.toString(), MAPS_DB); } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Failed to lookup Huc Parameters: sql: "+sql, e); } String[] pfafs = new String[results.length]; @@ -384,7 +397,7 @@ public class FFMPUtils { sq = SpatialQueryFactory.create(); results = sq.dbRequest(sql.toString(), MAPS_DB); } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error getting basins: sql:"+sql+"\n", e); } return results; @@ -401,8 +414,7 @@ public class FFMPUtils { * @return */ public static Map getRawGeometries(Collection pfafs) { - HashMap rval = new HashMap( - (int) (pfafs.size() * 1.3) + 1); + HashMap rval = null; if (pfafs.size() > 0) { StringBuilder builder = new StringBuilder(); builder.append("SELECT pfaf_id, AsBinary(" @@ -426,8 +438,9 @@ public class FFMPUtils { try { sq = SpatialQueryFactory.create(); results = sq.dbRequest(builder.toString(), MAPS_DB); + rval = new HashMap(results.length, 1.0f); } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error querying Raw Geometries: +sql: "+builder.toString(), e); } WKBReader wkbReader = new WKBReader(); @@ -439,7 +452,7 @@ public class FFMPUtils { Geometry g = readGeometry(columns[1], wkbReader); rval.put(pfaf, g); } catch (ParseException e) { - e.printStackTrace(); + statusHandler.error("Error parsing Raw Geometries!", e); } } } @@ -563,7 +576,7 @@ public class FFMPUtils { } } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error retrieving COUNTY, pfaf: "+pfaf, e); } return county; @@ -589,26 +602,27 @@ public class FFMPUtils { + "', 4326), county." + resolution + ")" + " order by county.fips desc"; - ArrayList keys = new ArrayList(); + ArrayList keys = null; ISpatialQuery sq = null; try { sq = SpatialQueryFactory.create(); Object[] results = sq.dbRequest(sql, FFMPUtils.MAPS_DB); + keys = new ArrayList(results.length); if (results != null) { if (results.length > 0) { for (int i = 0; i < results.length; i++) { if (results[i] != null) { keys.add(new Integer( - (String) ((Object[]) results[i])[0]) + (String)results[i]/* ((Object[]) results[i])[0]*/) .longValue()); } } } } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error retreiving COUNTY FIPS list! sql: "+sql, e); } return removeDuplicates(keys); @@ -638,7 +652,7 @@ public class FFMPUtils { * @param gid * @return */ - @SuppressWarnings("unchecked") + @SuppressWarnings({ "unchecked", "rawtypes" }) public static ArrayList getCountyInfo(Long fips, String mode) { String ftxt = (fips >= 10000 ? "" + fips : "0" + fips);// DR 15108: add // a leading 0 to @@ -658,13 +672,14 @@ public class FFMPUtils { // Template // generation. ISpatialQuery sq1 = null; - ArrayList gids = new ArrayList(); + ArrayList gids = null; try { sq1 = SpatialQueryFactory.create(); Object[] results = sq1.dbRequest(sql1, FFMPUtils.MAPS_DB); if (results != null) { + gids = new ArrayList(results.length); if (results.length > 0) { for (int i = 0; i < results.length; i++) { gids.add(((Number) results[i]).longValue()); @@ -673,11 +688,9 @@ public class FFMPUtils { } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error retreiving COUNTY INFO, part 1! sql: "+sql1, e); } - - @SuppressWarnings("rawtypes") - ArrayList info = new ArrayList(); + Geometry geom = null; String countyName = null; String state = null; @@ -701,7 +714,7 @@ public class FFMPUtils { for (int i = 0; i < results.length; i++) { Object[] results2 = (Object[]) results[i]; WKBReader wkbReader = new WKBReader(); - + if (results2[0] != null) { if (geom == null) { geom = readGeometry(results2[0], wkbReader); @@ -723,12 +736,13 @@ public class FFMPUtils { } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error retreiving COUNTY INFO, part 2! sql: "+sql, e); } catch (ParseException e) { - e.printStackTrace(); + statusHandler.error("Error parsing COUNTY INFO!", e); } } + ArrayList info = new ArrayList(3); info.add(geom); info.add(countyName); info.add(state); @@ -763,7 +777,7 @@ public class FFMPUtils { } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error retrieving basins: sql: "+sql+"\n basin: "+basinId); } return pfaf; @@ -797,7 +811,7 @@ public class FFMPUtils { coor = new Coordinate(lon, lat); } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error getting radar geometry description: "+sql, e); } return coor; @@ -825,10 +839,10 @@ public class FFMPUtils { try { geo = readGeometry(results[0], wkbReader); } catch (ParseException e) { - e.printStackTrace(); + statusHandler.error("Error parsing CWA geometry!", e); } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error querying CWA geometry: "+sql, e); } return geo; @@ -860,7 +874,7 @@ public class FFMPUtils { } } } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Error querying CWA descriptions!: "+sql, e); } return cwas; @@ -895,7 +909,7 @@ public class FFMPUtils { rfc = SiteMap.getInstance().getSite4LetterId(rfc.toUpperCase()); } } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Error querying RFC designation: "+sql, e); } return rfc; @@ -908,7 +922,7 @@ public class FFMPUtils { * @return */ public static Set getFFGParameters(String rfc) { - Set ffgHash = new HashSet(); + Set ffgHash = null; /** * Had to add this bit of code for ncgrib models @@ -922,14 +936,15 @@ public class FFMPUtils { try { DbQueryResponse response = (DbQueryResponse) RequestRouter .route(request); - + ffgHash = new HashSet(response.getResults().size(), 1.0f); + for (Map map : response.getResults()) { String key = (String) map .get(GridConstants.PARAMETER_ABBREVIATION); ffgHash.add(key); } } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Error querying FFG parameters: "+request.toString(), e); } return ffgHash; @@ -943,10 +958,8 @@ public class FFMPUtils { */ public static String getFFGDataURI(String rfc, String parameter, String plugin) { - DbQueryRequest request = new DbQueryRequest(); request.setEntityClass(GridRecord.class.getName()); - request.addRequestField("dataURI"); request.addConstraint(GridConstants.PARAMETER_ABBREVIATION, new RequestConstraint(parameter)); request.addConstraint(GridConstants.DATASET_ID, new RequestConstraint( @@ -955,12 +968,9 @@ public class FFMPUtils { try { DbQueryResponse response = (DbQueryResponse) RequestRouter .route(request); - - for (Map map : response.getResults()) { - return (String) map.get("dataURI"); - } + return response.getEntityObjects(GridRecord.class)[0].getDataURI(); } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Error querying FFG Data URIS: "+request.toString(), e); } return null; @@ -985,7 +995,7 @@ public class FFMPUtils { uri = (String) results[0]; } } catch (SpatialException e) { - e.printStackTrace(); + statusHandler.error("Error querying RADAR Data URI: "+sql, e); } return uri; @@ -1013,7 +1023,7 @@ public class FFMPUtils { subGrid = new HRAPSubGrid(extent, gridFactor); } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Error looking up XMRG geometry: "+xmrg.toString(), e); } return MapUtil.getGridGeometry(subGrid); @@ -1041,7 +1051,7 @@ public class FFMPUtils { subGrid = new HRAPSubGrid(extent, gridFactor); } catch (Exception e) { - e.printStackTrace(); + statusHandler.error("Error querying XMRG sub grid: "+xmrg.toString(), e); } return subGrid; @@ -1366,4 +1376,36 @@ public class FFMPUtils { + sourceSiteDataKey + ".h5"); } + /** + * Queries the specified database + * + * @param query + * the SQL query to run + * @param database + * the database to query + * @return a two dimensional Object[] representing rows and columns + * @throws Exception + */ + private static Object[] executeSqlQuery(String query, String database) + throws Exception { + // code shamelessly modeled after DirectDbQuery + // TODO DirectDbQuery should be changed to use RequestRouter instead of + // ThriftClient and should be promoted to a common plugin + Map constraints = new HashMap(); + constraints.put("query", new RequestConstraint(query)); + constraints.put("database", new RequestConstraint(database)); + constraints.put("mode", new RequestConstraint("sqlquery")); + QlServerRequest request = new QlServerRequest(constraints); + ResponseMessageGeneric resp = (ResponseMessageGeneric) RequestRouter + .route(request); + + QueryResult result = (QueryResult) resp.getContents(); + List unmappedResults = new ArrayList(); + for (QueryResultRow row : result.getRows()) { + unmappedResults.add(row.getColumnValues()); + } + + return unmappedResults.toArray(new Object[0]); + } + } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/dataaccess/FFMPGeometryFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/dataaccess/FFMPGeometryFactory.java index cd4462fe82..725ff5ae7d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/dataaccess/FFMPGeometryFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.ffmp/src/com/raytheon/uf/common/dataplugin/ffmp/dataaccess/FFMPGeometryFactory.java @@ -20,6 +20,7 @@ package com.raytheon.uf.common.dataplugin.ffmp.dataaccess; import java.util.ArrayList; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -28,9 +29,8 @@ import javax.measure.unit.Unit; import com.raytheon.uf.common.dataaccess.IDataRequest; import com.raytheon.uf.common.dataaccess.exception.DataRetrievalException; -import com.raytheon.uf.common.dataaccess.exception.UnsupportedOutputTypeException; +import com.raytheon.uf.common.dataaccess.exception.IncompatibleRequestException; import com.raytheon.uf.common.dataaccess.geom.IGeometryData; -import com.raytheon.uf.common.dataaccess.grid.IGridData; import com.raytheon.uf.common.dataaccess.impl.AbstractDataPluginFactory; import com.raytheon.uf.common.dataaccess.impl.DefaultGeometryData; import com.raytheon.uf.common.dataaccess.util.DatabaseQueryUtil; @@ -42,6 +42,7 @@ import com.raytheon.uf.common.dataplugin.ffmp.FFMPRecord; import com.raytheon.uf.common.dataplugin.ffmp.FFMPTemplates; import com.raytheon.uf.common.dataplugin.ffmp.FFMPTemplates.MODE; import com.raytheon.uf.common.dataplugin.ffmp.HucLevelGeometriesFactory; +import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.requests.RequestConstraint.ConstraintType; import com.raytheon.uf.common.dataquery.responses.DbQueryResponse; @@ -52,6 +53,8 @@ import com.raytheon.uf.common.monitor.xml.SourceXML; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.time.TimeRange; import com.vividsolutions.jts.geom.Geometry; /** @@ -67,6 +70,12 @@ import com.vividsolutions.jts.geom.Geometry; * Apr 16, 2013 1912 bsteffen Initial bulk hdf5 access for ffmp * Jul 15, 2013 2184 dhladky Remove all HUC's for storage except ALL * Aug,20, 2013 2250 mnash Change some methods that were not working in all cases + * Jan,14, 2014 2667 mnash Remove getGridData method + * May 1, 2014 3099 bkowal No longer use an empty pfaf list when the + * data request locationNames list is empty. + * Jun 24, 2014 3170 mnash Get the accumulated time if multiple times are requested + * Jul 14, 2014 3184 njensen Overrode getAvailableLevels() + * Jul 30, 2014 3184 njensen Overrode required and optional identifiers * * * @@ -105,17 +114,6 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { public FFMPGeometryFactory() { } - /** - * Not Supported. - */ - @Override - protected IGridData[] getGridData(IDataRequest request, - DbQueryResponse dbQueryResponse) { - // Not currently handled - throw new UnsupportedOutputTypeException(request.getDatatype(), - PLUGIN_NAME); - } - /** * {@inheritDoc} */ @@ -124,10 +122,29 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { DbQueryResponse dbQueryResponse) { List> results = dbQueryResponse.getResults(); Map cache = new HashMap(); + FFMPRecord record = null; + Date start = new Date(Long.MAX_VALUE); + Date end = new Date(0); for (Map map : results) { for (Map.Entry es : map.entrySet()) { FFMPRecord rec = (FFMPRecord) es.getValue(); + /* + * Adding all of the basin data to a single record so that we + * can get the accumulated values from that record + */ + if (record == null) { + record = rec; + } + // building a time range of the earliest FFMP time (based on + // each record) to the latest FFMP time (based on each record) + if (start.after(rec.getDataTime().getRefTime())) { + start = rec.getDataTime().getRefTime(); + } + if (end.before(rec.getDataTime().getRefTime())) { + end = rec.getDataTime().getRefTime(); + } + try { rec.retrieveMapFromDataStore(templates); } catch (Exception e) { @@ -136,15 +153,32 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { + rec.toString(), e); } - try { - cache = makeGeometryData(rec, request, cache); - } catch (Exception e) { - statusHandler.handle(Priority.PROBLEM, - e.getLocalizedMessage(), e); + /* + * loop over each pfaf id in the current record (rec) we are + * iterating. Add that basin data to the record that we are + * keeping around (record) to use to get the accumulated value. + */ + for (Long pfaf : rec.getBasinData().getPfafIds()) { + // setValue is a misnomer here, it is actually an add + record.getBasinData() + .get(pfaf) + .setValue(rec.getDataTime().getRefTime(), + rec.getBasinData().get(pfaf).getValue()); } + } } - + /* + * now that we have all the basin data in a single record (record), we + * can use the methods on the FFMPRecord class to get the accumulated + * value in the case of a non-guidance basin + */ + try { + cache = makeGeometryData(record, request, cache, start, end); + } catch (Exception e) { + statusHandler.handle(Priority.PROBLEM, + "Unable to create the geoemtry data from the records.", e); + } return cache.values().toArray( new DefaultGeometryData[cache.values().size()]); } @@ -199,8 +233,8 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { * @throws Exception */ private Map makeGeometryData(FFMPRecord rec, - IDataRequest request, Map cache) - throws Exception { + IDataRequest request, Map cache, + Date start, Date end) throws Exception { String huc = (String) request.getIdentifiers().get(HUC); String dataKey = (String) request.getIdentifiers().get(DATA_KEY); String siteKey = (String) request.getIdentifiers().get(SITE_KEY); @@ -231,7 +265,7 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { String[] locationNames = request.getLocationNames(); List pfafList = null; - if (locationNames != null) { + if (locationNames != null && locationNames.length > 0) { pfafList = convertLocations(locationNames); } @@ -249,6 +283,8 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { data.setAttributes(attrs); data.setLocationName(String.valueOf(pfaf)); data.setGeometry(geomMap.get(pfaf)); + data.setDataTime(new DataTime(start.getTime(), + new TimeRange(start, end))); cache.put(pfaf, data); } @@ -268,7 +304,10 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { value = ((FFMPGuidanceBasin) basin).getValue( rec.getSourceName(), 1000); } else { - value = basin.getValue(rec.getDataTime().getRefTime()); + value = basin.getAccumValue(start, end, + sourceXml.getExpirationMinutes(rec.getSiteKey()), + false); + // value = basin.getValue(rec.getDataTime().getRefTime()); } String parameter = rec.getSourceName(); String unitStr = sourceXml.getUnit(); @@ -328,4 +367,20 @@ public class FFMPGeometryFactory extends AbstractDataPluginFactory { return pfafList.toArray(new String[pfafList.size()]); } + + @Override + public Level[] getAvailableLevels(IDataRequest request) { + throw new IncompatibleRequestException(request.getDatatype() + + " data does not support the concept of levels"); + } + + @Override + public String[] getRequiredIdentifiers() { + return new String[] { SITE_KEY, WFO, HUC }; + } + + @Override + public String[] getOptionalIdentifiers() { + return new String[] { DATA_KEY }; + } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.fog/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.fog/META-INF/MANIFEST.MF index 6e4b4fd6e9..07bbaa495f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.fog/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.fog/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Fog common Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.fog -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.fog, com.raytheon.uf.common.dataplugin.fog.analysis Require-Bundle: javax.persistence;bundle-version="1.0.0", diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/META-INF/MANIFEST.MF index f3943d7f94..7a5f2870ee 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/META-INF/MANIFEST.MF @@ -2,22 +2,14 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: FSS Obs Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.fssobs -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.fssobs Require-Bundle: com.raytheon.uf.common.dataplugin, - com.raytheon.uf.common.time, com.raytheon.uf.common.serialization, - com.raytheon.uf.common.status, - com.raytheon.uf.common.datastorage, org.hibernate;bundle-version="1.0.0" Import-Package: com.raytheon.uf.common.geospatial, - com.raytheon.uf.common.monitor.data, com.raytheon.uf.common.pointdata, com.raytheon.uf.common.pointdata.spatial, - com.raytheon.uf.edex.decodertools.time, - javax.measure.quantity, - javax.measure.unit, javax.persistence diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecord.java old mode 100644 new mode 100755 index 1726596ce6..97445451e3 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecord.java @@ -1,18 +1,26 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ package com.raytheon.uf.common.dataplugin.fssobs; import java.util.Calendar; -import java.util.Collection; -import java.util.HashMap; -import javax.measure.quantity.Angle; -import javax.measure.quantity.DataAmount; -import javax.measure.quantity.Length; -import javax.measure.quantity.Pressure; -import javax.measure.quantity.Temperature; -import javax.measure.quantity.Velocity; -import javax.measure.unit.NonSI; -import javax.measure.unit.SI; -import javax.measure.unit.Unit; import javax.persistence.Access; import javax.persistence.AccessType; import javax.persistence.Column; @@ -29,7 +37,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.IPersistable; @@ -42,6 +49,21 @@ import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; +/** + * + * {@link PluginDataObject} implementation for FSSObs. + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jun 11, 2014  2061     bsteffen    Remove IDecoderGettable
+ * Sep 04, 2014  3220     skorolev    Removed cwa and monitorUse from record.
+ * 
+ * 
+ */ @Entity @SequenceGenerator(initialValue = 1, name = PluginDataObject.ID_GEN, sequenceName = "fssobsseq") @Table(name = FSSObsRecord.PLUGIN_NAME, uniqueConstraints = { @UniqueConstraint(columnNames = { "dataURI" }) }) @@ -55,76 +77,17 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public class FSSObsRecord extends PersistablePluginDataObject implements - ISpatialEnabled, IDecoderGettable, IPersistable, IPointData { + ISpatialEnabled, IPersistable, IPointData { private static final long serialVersionUID = 1L; public static final String PLUGIN_NAME = "fssobs"; - private static final int MISSING = -9999; - - // UNITS - - public static final Unit TEMPERATURE_UNIT = SI.CELSIUS; - - public static final Unit WIND_SPEED_UNIT = NonSI.KNOT; - - public static final Unit HEIGHT_UNIT = SI.METER; - - public static final Unit WIND_DIR_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit LOCATION_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit PRESSURE_UNIT = SI.HECTO(SI.PASCAL); - - public static final Unit PRECIP_UNIT = NonSI.INCH; - - public static final Unit WAVE_UNIT = SI.METER; - - public static final Unit VISIBILITY_UNIT = NonSI.MILE; - - public static final Unit CLOUD_COVER = NonSI.OCTET; - - /** Metar specific parameter keys */ - public static final class ParameterKey { - public static final String SFC_ALTIMETER = "SFC.PRESS.ALTIMETER"; - - public static final String PRESSURE_CHANGE = "PCHNG"; - - public static final String VISIBILITY = "VIS"; - - public static final String PRECIPITATION_1HR = "PR1HR"; - } - - private static final HashMap PARM_MAP = new HashMap(); - static { - PARM_MAP.put("NLAT", STA_LAT); - PARM_MAP.put("NLON", STA_LON); - PARM_MAP.put("rawMessage", "rawMessage"); - } - /** is feature new **/ @Transient @DynamicSerializeElement @XmlElement - public boolean isNew = true; - - // Current CWA (WFO) - @Column - @DataURI(position = 2) - @DynamicSerializeElement - @XmlElement(nillable = false) - private String cwa; - - // Monitor which should use this station record - // fog = "fog" - // safeseas = "ss" - // snow = "snow" - @Column - @DataURI(position = 4) - @DynamicSerializeElement - @XmlElement - private String monitorUse = ""; + protected boolean isNew = true; // Station name @Column @@ -141,7 +104,7 @@ public class FSSObsRecord extends PersistablePluginDataObject implements protected String reportType; @Embedded - @DataURI(position = 3, embedded = true) + @DataURI(position = 2, embedded = true) @XmlElement @DynamicSerializeElement private SurfaceObsLocation location; @@ -180,13 +143,13 @@ public class FSSObsRecord extends PersistablePluginDataObject implements @Transient @DynamicSerializeElement @XmlElement - private float windSpeed = -9999;; + private float windSpeed = -9999; // Wind gust in knots @Transient @DynamicSerializeElement @XmlElement - private float windGust = -9999;; + private float windGust = -9999; // Observed maximum wind speed in knots @Transient @@ -397,58 +360,6 @@ public class FSSObsRecord extends PersistablePluginDataObject implements super(uri); } - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - - @Override - public Amount getValue(String paramName) { - Amount a = null; - - String pName = PARM_MAP.get(paramName); - - if (SFC_TEMP.equals(pName) && (temperature != -9999f)) { - a = new Amount(temperature, TEMPERATURE_UNIT); - } else if (SFC_DWPT.equals(pName) && (dewpoint != -9999f)) { - a = new Amount(dewpoint, TEMPERATURE_UNIT); - } else if (SFC_WNDSPD.equals(pName) && (windSpeed != -9999f)) { - a = new Amount(windSpeed, WIND_SPEED_UNIT); - } else if (SFC_WNDDIR.equals(pName) && (windDir != -9999f)) { - a = new Amount(windDir, WIND_DIR_UNIT); - } else if (SFC_WNDGST.equals(pName) && (windGust != -9999f)) { - a = new Amount(windGust, WIND_SPEED_UNIT); - } else if (PRES_SLP.equals(pName) && (seaLevelPress != -9999f)) { - a = new Amount(seaLevelPress, PRESSURE_UNIT); - // } else if (PRES_ALTSG.equals(pName) && (pressureAltimeter != - // -9999f)) { - // a = new Amount(pressureAltimeter, PRESSURE_UNIT); - } else if (STA_LAT.equals(pName)) { - a = new Amount(this.getLatitude(), LOCATION_UNIT); - } else if (STA_LON.equals(pName)) { - a = new Amount(this.getLongitude(), LOCATION_UNIT); - } else if ("WT".equals(pName) && (this.seaSurfaceTemp != -9999f)) { - a = new Amount(this.seaSurfaceTemp, TEMPERATURE_UNIT); - } else if ("WH".equals(pName)) { - a = new Amount(waveHeight, WAVE_UNIT); - } else if ("SWP".equals(pName)) { - a = new Amount(primarySwellWavePeriod, WAVE_UNIT); - } else if ("SWH".equals(pName)) { - a = new Amount(primarySwellWaveHeight, WAVE_UNIT); - // } else if ("PCHNG".equals(pName) && pressChange3Hour != MISSING) - // { - // a = new Amount(pressChange3Hour, PRESSURE_UNIT); - } else if ("PKWND".equals(paramName) && (maxWindSpeed != MISSING)) { - a = new Amount(maxWindSpeed, WIND_SPEED_UNIT); - } else if ("SWS".equals(paramName) || "SWGS".equals(paramName)) { - a = new Amount(1, WIND_SPEED_UNIT); - } else if ("SWD".equals(paramName) && (primarySwellWaveDir != MISSING)) { - a = new Amount(primarySwellWaveDir, WIND_DIR_UNIT); - } - - return a; - } - /** * @return the isNew */ @@ -456,28 +367,6 @@ public class FSSObsRecord extends PersistablePluginDataObject implements return isNew; } - /** - * @return the cwa - */ - public String getCwa() { - return cwa; - } - - /** - * @param monitorUse - * the monitorUse to set - */ - public void setMonitorUse(String monitorUse) { - this.monitorUse = monitorUse; - } - - /** - * @return the monitorUse - */ - public String getMonitorUse() { - return monitorUse; - } - /** * @return the stnName */ @@ -515,7 +404,7 @@ public class FSSObsRecord extends PersistablePluginDataObject implements } /** - * Get the geometry latitude. + * Gets the geometry latitude. * * @return The geometry latitude. */ @@ -524,7 +413,7 @@ public class FSSObsRecord extends PersistablePluginDataObject implements } /** - * Get the geometry longitude. + * Gets the geometry longitude. * * @return The geometry longitude. */ @@ -533,7 +422,7 @@ public class FSSObsRecord extends PersistablePluginDataObject implements } /** - * Get the station identifier for this observation. + * Gets the station identifier for this observation. * * @return the stationId */ @@ -542,7 +431,7 @@ public class FSSObsRecord extends PersistablePluginDataObject implements } /** - * Get the elevation, in meters, of the observing platform or location. + * Gets the elevation, in meters, of the observing platform or location. * * @return The observation elevation, in meters. */ @@ -800,14 +689,8 @@ public class FSSObsRecord extends PersistablePluginDataObject implements } /** - * @param cwa - * the cwa to set - */ - public void setCwa(String cwa) { - this.cwa = cwa; - } - - /** + * Sets station name. + * * @param stnName * the stnName to set */ @@ -816,6 +699,8 @@ public class FSSObsRecord extends PersistablePluginDataObject implements } /** + * Sets report type. + * * @param reportType * the reportType to set */ @@ -824,6 +709,8 @@ public class FSSObsRecord extends PersistablePluginDataObject implements } /** + * Sets location + * * @param location * the location to set */ @@ -1172,21 +1059,6 @@ public class FSSObsRecord extends PersistablePluginDataObject implements return totCloudAmount; } - @Override - public Collection getValues(String paramName) { - return null; - } - - @Override - public String getString(String paramName) { - return null; - } - - @Override - public String[] getStrings(String paramName) { - return null; - } - @Override public ISpatialObject getSpatialObject() { return location; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecordTransform.java b/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecordTransform.java index b16fbd19af..8cccb8fbc8 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecordTransform.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.fssobs/src/com/raytheon/uf/common/dataplugin/fssobs/FSSObsRecordTransform.java @@ -20,12 +20,13 @@ package com.raytheon.uf.common.dataplugin.fssobs; import java.util.ArrayList; +import java.util.Date; import java.util.List; import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; /** * Provides a transform from PointDataContainer to FSSObsRecord. @@ -37,6 +38,7 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Mar 8, 2011 skorolev Initial creation + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -187,8 +189,8 @@ public class FSSObsRecordTransform { obs.setDataURI(pdv.getString(DATA_URI)); SurfaceObsLocation loc = new SurfaceObsLocation( pdv.getString(PLATFORM_ID)); - Double lat = pdv.getNumber(LATITUDE).doubleValue(); - Double lon = pdv.getNumber(LONGITUDE).doubleValue(); + float lat = pdv.getNumber(LATITUDE).floatValue(); + float lon = pdv.getNumber(LONGITUDE).floatValue(); loc.assignLocation(lat, lon); loc.setElevation(pdv.getNumber(ELEVATION).intValue()); obs.setLocation(loc); @@ -228,9 +230,9 @@ public class FSSObsRecordTransform { obs.setStnName(pdv.getString(STATION_NAME)); obs.setTemperature(pdv.getFloat(TEMPERATURE)); long to = pdv.getLong(TIME_OBS); - obs.setTimeObs(TimeTools.newCalendar(to)); + obs.setTimeObs(TimeUtil.newGmtCalendar(new Date(to))); long rh = pdv.getLong(REF_HOUR); - obs.setRefHour(TimeTools.newCalendar(rh)); + obs.setRefHour(TimeUtil.newGmtCalendar(new Date(rh))); obs.setTotCloudAmount(pdv.getNumber(CLOUD_AMOUNT_TOT).intValue()); obs.setVisibility(pdv.getNumber(VISIBILITY).floatValue()); obs.setHighResWaveHeight(pdv.getFloat(WAVE_HEIGHT)); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/META-INF/MANIFEST.MF index da5076b2a1..e367bd9e86 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/META-INF/MANIFEST.MF @@ -2,9 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Gfe Common Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.gfe -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Eclipse-BuddyPolicy: ext +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Require-Bundle: org.geotools, javax.measure, @@ -17,7 +15,9 @@ Require-Bundle: org.geotools, com.raytheon.uf.common.cache, com.raytheon.uf.common.dataaccess;bundle-version="1.0.0", com.raytheon.uf.common.dataquery;bundle-version="1.0.0", - com.raytheon.uf.common.datastorage;bundle-version="1.12.1174" + com.raytheon.uf.common.datastorage;bundle-version="1.12.1174", + com.raytheon.uf.common.geospatial;bundle-version="1.14.1", + com.raytheon.uf.common.numeric;bundle-version="1.14.0" Export-Package: com.raytheon.uf.common.dataplugin.gfe, com.raytheon.uf.common.dataplugin.gfe.config, com.raytheon.uf.common.dataplugin.gfe.dataaccess, @@ -41,15 +41,10 @@ Export-Package: com.raytheon.uf.common.dataplugin.gfe, com.raytheon.uf.common.dataplugin.gfe.util, com.raytheon.uf.common.dataplugin.gfe.weather, com.raytheon.uf.common.dataplugin.gfe.weatherelement -Import-Package: com.raytheon.edex.exception, - com.raytheon.edex.util, - com.raytheon.uf.common.activetable, +Import-Package: com.raytheon.uf.common.activetable, com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.dataplugin.annotations, com.raytheon.uf.common.dataplugin.persist, - com.raytheon.uf.common.geospatial, - com.raytheon.uf.common.geospatial.interpolation, - com.raytheon.uf.common.geospatial.interpolation.data, com.raytheon.uf.common.gridcoverage, com.raytheon.uf.common.localization, com.raytheon.uf.common.localization.exception, @@ -60,4 +55,4 @@ Import-Package: com.raytheon.edex.exception, com.raytheon.uf.common.status, com.raytheon.uf.common.time, com.raytheon.uf.common.util -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/RemapGrid.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/RemapGrid.java index e14788f32c..9c043c3a80 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/RemapGrid.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/RemapGrid.java @@ -20,22 +20,12 @@ package com.raytheon.uf.common.dataplugin.gfe; -import java.awt.RenderingHints; -import java.awt.image.Raster; -import java.awt.image.RenderedImage; import java.lang.ref.SoftReference; import java.nio.ByteBuffer; +import java.nio.FloatBuffer; -import javax.media.jai.BorderExtender; -import javax.media.jai.Interpolation; -import javax.media.jai.JAI; -import javax.media.jai.ParameterBlockJAI; -import javax.media.jai.PlanarImage; - -import org.geotools.coverage.grid.GridCoverage2D; -import org.geotools.coverage.grid.GridCoverageFactory; +import org.geotools.coverage.grid.GridEnvelope2D; import org.geotools.coverage.grid.GridGeometry2D; -import org.opengis.geometry.Envelope; import org.opengis.referencing.FactoryException; import org.opengis.referencing.operation.TransformException; @@ -44,12 +34,17 @@ import com.raytheon.uf.common.dataplugin.gfe.exception.GfeException; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DByte; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DFloat; import com.raytheon.uf.common.geospatial.MapUtil; +import com.raytheon.uf.common.geospatial.data.GeographicDataSource; import com.raytheon.uf.common.geospatial.interpolation.BilinearInterpolation; import com.raytheon.uf.common.geospatial.interpolation.GridReprojection; import com.raytheon.uf.common.geospatial.interpolation.NearestNeighborInterpolation; import com.raytheon.uf.common.geospatial.interpolation.PrecomputedGridReprojection; -import com.raytheon.uf.common.geospatial.interpolation.data.ByteBufferWrapper; -import com.raytheon.uf.common.geospatial.interpolation.data.FloatArrayWrapper; +import com.raytheon.uf.common.numeric.buffer.ByteBufferWrapper; +import com.raytheon.uf.common.numeric.buffer.FloatBufferWrapper; +import com.raytheon.uf.common.numeric.dest.DataDestination; +import com.raytheon.uf.common.numeric.filter.FillValueFilter; +import com.raytheon.uf.common.numeric.filter.InverseFillValueFilter; +import com.raytheon.uf.common.numeric.source.DataSource; import com.vividsolutions.jts.geom.Coordinate; /** @@ -70,6 +65,9 @@ import com.vividsolutions.jts.geom.Coordinate; * in Maputil.rotation * 07/17/13 #2185 bsteffen Cache computed grid reprojections. * 08/13/13 #1571 randerso Passed fill values into interpolator. + * 03/07/14 #2791 bsteffen Move Data Source/Destination to numeric plugin. + * 05/19/14 #2913 bsteffen Remove rescale option. + * * * * @@ -83,8 +81,6 @@ public class RemapGrid { /** The output grid location describing the destination data */ private GridLocation destinationGloc; - private boolean rescale = false; - private SoftReference rotationRef; /** @@ -96,24 +92,8 @@ public class RemapGrid { * The destination grid location describing the destination data */ public RemapGrid(GridLocation sourceGloc, GridLocation destinationGloc) { - this(sourceGloc, destinationGloc, false); - } - - /** - * Constructs a new RemapGrid with the given input and output grid locations - * - * @param sourceGloc - * The source grid location describing the source data - * @param destinationGloc - * The destination grid location describing the destination data - * @param rescale - * true if data is to be rescaled - */ - public RemapGrid(GridLocation sourceGloc, GridLocation destinationGloc, - boolean rescale) { this.sourceGloc = sourceGloc; this.destinationGloc = destinationGloc; - this.rescale = rescale; this.rotationRef = new SoftReference(null); } @@ -490,22 +470,28 @@ public class RemapGrid { float outputFill) throws FactoryException, TransformException { GridGeometry2D sourceGeometry = MapUtil.getGridGeometry(sourceGloc); + GridEnvelope2D sourceRange = sourceGeometry.getGridRange2D(); ByteBuffer data = input.getBuffer(); ByteBuffer resampledData = null; GridGeometry2D destGeometry = MapUtil.getGridGeometry(destinationGloc); + GridEnvelope2D destRange = destGeometry.getGridRange2D(); GridReprojection interp = PrecomputedGridReprojection.getReprojection( sourceGeometry, destGeometry); - ByteBufferWrapper source = new ByteBufferWrapper(data, sourceGeometry); - source.setFillValue(inputFill); + DataSource source = new ByteBufferWrapper(data, sourceRange.width, + sourceRange.height); + source = FillValueFilter.apply(source, inputFill); - ByteBufferWrapper dest = new ByteBufferWrapper(destGeometry); - dest.setFillValue(outputFill); + ByteBufferWrapper bufferDest = new ByteBufferWrapper(destRange.width, + destRange.height); + DataDestination dest = InverseFillValueFilter.apply( + (DataDestination) bufferDest, outputFill); - resampledData = interp.reprojectedGrid( - new NearestNeighborInterpolation(), source, dest).getBuffer(); + interp.reprojectedGrid(new NearestNeighborInterpolation(), source, dest); + + resampledData = bufferDest.getBuffer(); // Remap the the output data into a Grid2DFloat object @@ -535,63 +521,25 @@ public class RemapGrid { GridGeometry2D sourceGeometry = MapUtil.getGridGeometry(sourceGloc); float[] data = input.getFloats(); - float[] f1 = null; - /* - * Checks the CRSs to see if they are the same. If they are, then - * reprojection is not necessary, only resampling - */ - if (rescale - && sourceGeometry.getCoordinateReferenceSystem().toWKT() - .equals(destinationGloc.getCrsWKT())) { + GridGeometry2D destGeometry = MapUtil.getGridGeometry(destinationGloc); - GridCoverageFactory factory = new GridCoverageFactory(); + GridReprojection interp = PrecomputedGridReprojection.getReprojection( + sourceGeometry, destGeometry); - Envelope inputEnvelope = sourceGeometry.getEnvelope(); + DataSource source = new GeographicDataSource(FloatBuffer.wrap(data), + sourceGeometry); + source = FillValueFilter.apply(source, inputFill); + ; - // Map the data into an array - float[][] dataPoints = new float[input.getYdim()][input.getXdim()]; + FloatBufferWrapper rawDest = new FloatBufferWrapper( + destGeometry.getGridRange2D()); + DataDestination dest = InverseFillValueFilter.apply( + (DataDestination) rawDest, outputFill); - int i = 0; - for (int y = 0; y < input.getYdim(); y++) { - for (int x = 0; x < input.getXdim(); x++) { - dataPoints[y][x] = data[i++]; - } - } + interp.reprojectedGrid(new BilinearInterpolation(), source, dest); - // Construct the source grid coverage object - GridCoverage2D inputGC = factory.create("in", dataPoints, - inputEnvelope); - - float scaleX = ((float) destinationGloc.getNx() / (float) sourceGloc - .getNx()); - float scaleY = ((float) destinationGloc.getNy() / (float) sourceGloc - .getNy()); - PlanarImage image = scaleGrid(inputGC.getRenderedImage(), scaleX, - scaleY); - Raster rasterData = image.getData(); - f1 = rasterData.getPixels(rasterData.getMinX(), - rasterData.getMinY(), rasterData.getWidth(), - rasterData.getHeight(), f1); - - JAI.getDefaultInstance().getTileCache().flush(); - } else { - GridGeometry2D destGeometry = MapUtil - .getGridGeometry(destinationGloc); - - GridReprojection interp = PrecomputedGridReprojection - .getReprojection(sourceGeometry, destGeometry); - - FloatArrayWrapper source = new FloatArrayWrapper(data, - sourceGeometry); - source.setFillValue(inputFill); - - FloatArrayWrapper dest = new FloatArrayWrapper(destGeometry); - dest.setFillValue(outputFill); - - f1 = interp.reprojectedGrid(new BilinearInterpolation(), source, - dest).getArray(); - } + float[] f1 = rawDest.getArray(); // Remap the the output data into a Grid2DFloat object @@ -601,37 +549,6 @@ public class RemapGrid { return retVal; } - /** - * Resamples the grid to a new resolution using scale values - * - * @param img - * The image to scale - * @param xScale - * The new horizontal resolution - * @param yScale - * The new vertical resolution - * @return The resampled image - */ - private PlanarImage scaleGrid(RenderedImage img, float xScale, float yScale) { - - PlanarImage scaledImg; - - ParameterBlockJAI param = new ParameterBlockJAI("Scale"); - param.addSource(img); - param.setParameter("xScale", xScale); - param.setParameter("yScale", yScale); - Interpolation interpol = Interpolation - .getInstance(Interpolation.INTERP_BICUBIC); - RenderingHints hint = new RenderingHints(JAI.KEY_BORDER_EXTENDER, - BorderExtender.createInstance(BorderExtender.BORDER_COPY)); - - param.setParameter("interpolation", interpol); - - scaledImg = JAI.create("Scale", param, hint); - - return scaledImg; - - } private float getRot(int x, int y) { Grid2DFloat rotation; @@ -645,7 +562,7 @@ public class RemapGrid { Coordinate llc = destinationGloc .latLonCenter(new Coordinate(x1, y1)); rotation.set(x1, y1, - (float) (-MapUtil.rotation(llc, sourceGloc))); + (float) (-MapUtil.rotation(llc, sourceGloc))); } } rotationRef = new SoftReference(rotation); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/config/ProjectionData.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/config/ProjectionData.java index 2d0b1203b0..474d15bfdd 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/config/ProjectionData.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/config/ProjectionData.java @@ -20,7 +20,6 @@ package com.raytheon.uf.common.dataplugin.gfe.config; import java.awt.Point; -import java.util.HashMap; import javax.persistence.Column; import javax.persistence.Embeddable; @@ -29,14 +28,15 @@ import javax.persistence.Enumerated; import javax.persistence.Transient; import org.geotools.coverage.grid.GeneralGridEnvelope; -import org.geotools.coverage.grid.GridGeometry2D; import org.geotools.geometry.GeneralEnvelope; import org.geotools.referencing.operation.DefaultMathTransformFactory; import org.geotools.referencing.operation.builder.GridToEnvelopeMapper; -import org.opengis.metadata.spatial.PixelOrientation; +import org.opengis.referencing.FactoryException; import org.opengis.referencing.crs.CoordinateReferenceSystem; import org.opengis.referencing.datum.PixelInCell; import org.opengis.referencing.operation.MathTransform; +import org.opengis.referencing.operation.NoninvertibleTransformException; +import org.opengis.referencing.operation.TransformException; import com.raytheon.uf.common.geospatial.MapUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; @@ -58,6 +58,11 @@ import com.vividsolutions.jts.geom.Coordinate; * 08/06/13 #1571 randerso Added hibernate annotations * Removed constructor with int for ProjectionType * 10/22/13 #2361 njensen Remove XML annotations + * 05/14/2014 #3069 randerso Changed to store math transforms and CRS instead of + * GridGeometry2D since GeoTools now changes the supplied + * math transform when creating GridGeometry2D + * 06/05/2014 #3243 bsteffen Remove deprecated lambert conformal call. + * * * * @@ -90,7 +95,7 @@ public class ProjectionData { /** Lat/Lon (implemented as Equidistant Cylindrical) map projection */ LATLON - }; + } @Column(length = 32, nullable = false) @DynamicSerializeElement @@ -145,22 +150,13 @@ public class ProjectionData { private CoordinateReferenceSystem crs; @Transient - private GridGeometry2D gridGeometry; + private MathTransform gridToLatLon; @Transient - private MathTransform crsToLatLon; + private MathTransform latLonToGrid; @Transient - private MathTransform latLonToCrs; - - @Transient - private HashMap gridToLatLon; - - @Transient - private HashMap latLonToGrid; - - @Transient - private HashMap gridToCrs; + private MathTransform gridToCrs; @Transient private boolean initialized; @@ -175,10 +171,6 @@ public class ProjectionData { gridPointLL = new Point(); gridPointUR = new Point(); - gridToLatLon = new HashMap(); - latLonToGrid = new HashMap(); - gridToCrs = new HashMap(); - initialized = false; } @@ -255,24 +247,25 @@ public class ProjectionData { ge.setRange(1, Math.min(output[1], output[3]), Math.max(output[1], output[3])); - // NOTE: the LL + 1 is a kludge to work around an apparent geotools - // issue + // GeoTools 10.5 kludge to say upper right is non-inclusive GeneralGridEnvelope gr = new GeneralGridEnvelope(new int[] { - getGridPointLL().x + 1, getGridPointLL().y + 1 }, - new int[] { getGridPointUR().x, getGridPointUR().y }, true); + getGridPointLL().x, getGridPointLL().y }, new int[] { + getGridPointUR().x, getGridPointUR().y }, false); + // GeoTools 10.5 kludge to use CELL_CORNER instead of CELL_CENTER GridToEnvelopeMapper mapper = new GridToEnvelopeMapper(); mapper.setEnvelope(ge); mapper.setGridRange(gr); - mapper.setPixelAnchor(PixelInCell.CELL_CENTER); + mapper.setPixelAnchor(PixelInCell.CELL_CORNER); mapper.setReverseAxis(new boolean[] { false, false }); - mt = mapper.createTransform(); + gridToCrs = mapper.createTransform(); - gridGeometry = new GridGeometry2D(PixelInCell.CELL_CORNER, mt, ge, - null); + MathTransform crsToLatLon = MapUtil.getTransformToLatLon(getCrs()); - crsToLatLon = MapUtil.getTransformToLatLon(getCrs()); - latLonToCrs = MapUtil.getTransformFromLatLon(getCrs()); + DefaultMathTransformFactory dmtf = new DefaultMathTransformFactory(); + gridToLatLon = dmtf.createConcatenatedTransform(gridToCrs, + crsToLatLon); + latLonToGrid = getGridToLatLon().inverse(); initialized = true; @@ -320,7 +313,7 @@ public class ProjectionData { crs = MapUtil.constructLambertConformal( MapUtil.AWIPS_EARTH_RADIUS, MapUtil.AWIPS_EARTH_RADIUS, this.stdParallelOne, this.stdParallelTwo, - this.latLonOrigin.x); + this.latLonOrigin.x, this.latLonOrigin.y); break; case MERCATOR: @@ -388,71 +381,96 @@ public class ProjectionData { } /** - * Return the lat/lon of the specified corner or center of a grid cell + * Return the lat/lon of the specified grid cell * * @param gridCoord * coordinates of the grid cell - * @param orientation - * desired corner or center * @return the lat/lon + * @throws FactoryException + * @throws TransformException */ - public Coordinate gridCoordinateToLatLon(Coordinate gridCoord, - PixelOrientation orientation) { + public Coordinate gridCoordinateToLatLon(Coordinate gridCoord) + throws FactoryException, TransformException { Coordinate latLon = new Coordinate(); - MathTransform mt = gridToLatLon.get(orientation); - try { - if (mt == null) { - init(); - DefaultMathTransformFactory dmtf = new DefaultMathTransformFactory(); - mt = dmtf.createConcatenatedTransform( - gridGeometry.getGridToCRS(orientation), crsToLatLon); - gridToLatLon.put(orientation, mt); - } - - double[] output = new double[2]; - mt.transform(new double[] { gridCoord.x, gridCoord.y }, 0, output, - 0, 1); - latLon.x = output[0]; - latLon.y = output[1]; - } catch (Exception e) { - statusHandler.error( - "Error computing grid coordinate to lat/lon transform", e); - } + MathTransform mt = getGridToLatLon(); + double[] output = new double[2]; + mt.transform(new double[] { gridCoord.x, gridCoord.y }, 0, output, 0, 1); + latLon.x = output[0]; + latLon.y = output[1]; return latLon; } /** - * Return the math transform from grid coordinate to the specified corner or - * center lat/lon + * Return the grid coordinate of the specified lat/lon * - * @param orientation - * desired corner or center - * @return the transform + * @param latLon + * lat/lon to be converted + * @return the grid coordinate + * @throws FactoryException + * @throws TransformException */ - public MathTransform getGridToCrs(PixelOrientation orientation) { - MathTransform mt = gridToCrs.get(orientation); - if (mt == null) { - init(); - mt = gridGeometry.getGridToCRS(orientation); - gridToCrs.put(orientation, mt); - } - return mt; + public Coordinate latLonToGridCoordinate(Coordinate latLon) + throws FactoryException, TransformException { + Coordinate gridCoord = new Coordinate(); + MathTransform mt = getLatLonToGrid(); + double[] output = new double[2]; + mt.transform(new double[] { latLon.x, latLon.y }, 0, output, 0, 1); + gridCoord.x = output[0]; + gridCoord.y = output[1]; + return gridCoord; } /** - * Convert a grid cell coordinate to the native CRS coordinate of this - * projection + * Return the math transform from grid coordinate to lat/lon + * + * @return the transform + * @throws FactoryException + */ + public MathTransform getGridToLatLon() throws FactoryException { + if (gridToLatLon == null) { + init(); + } + return gridToLatLon; + } + + /** + * Return the math transform from lat/lon to grid coordinate + * + * @return the transform + * @throws FactoryException + * @throws NoninvertibleTransformException + */ + public MathTransform getLatLonToGrid() throws FactoryException, + NoninvertibleTransformException { + + if (latLonToGrid == null) { + init(); + } + return latLonToGrid; + } + + /** + * Return the math transform from grid coordinate to the native CRS + * + * @return the transform + */ + public MathTransform getGridToCrs() { + if (gridToCrs == null) { + init(); + } + return gridToCrs; + } + + /** + * Convert a grid cell coordinate to the native CRS of this projection * * @param gridCoord * grid cell coordinate - * @param orientation - * desired corner or center of the grid cell * @return native CRS coordinate */ - public Coordinate gridCoordinateToCrs(Coordinate gridCoord, - PixelOrientation orientation) { + public Coordinate gridCoordinateToCrs(Coordinate gridCoord) { Coordinate crsCoordinate = new Coordinate(); - MathTransform mt = getGridToCrs(orientation); + MathTransform mt = getGridToCrs(); try { double[] output = new double[2]; mt.transform(new double[] { gridCoord.x, gridCoord.y }, 0, output, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEDataAccessUtil.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEDataAccessUtil.java index 4a32e089d3..a7cb1b06a1 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEDataAccessUtil.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEDataAccessUtil.java @@ -43,9 +43,10 @@ import com.raytheon.uf.common.serialization.comm.RequestRouter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Mar 9, 2011 bsteffen Initial creation - * May 02, 2013 1949 bsteffen Update GFE data access in Product + * May 02, 2013 1949 bsteffen Update GFE data access in Product * Browser, Volume Browser, and Data Access * Framework. + * Jul 01, 2014 3149 randerso Changed to use updated GetGridRequest * * * @@ -96,9 +97,8 @@ public class GFEDataAccessUtil { * @throws Exception */ public static IGridSlice getSlice(GFERecord gfeRecord) throws Exception { - GetGridRequest gridRequest = new GetGridRequest(); - gridRequest.setParmId(gfeRecord.getParmId()); - gridRequest.setRecords(Arrays.asList(gfeRecord)); + GetGridRequest gridRequest = new GetGridRequest(gfeRecord.getParmId(), + Arrays.asList(gfeRecord.getDataTime().getValidPeriod())); GetGridDataRequest request = new GetGridDataRequest(); request.setSiteID(gfeRecord.getDbId().getSiteId()); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java index 9a0eb09dd5..dd707c4f56 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/dataaccess/GFEGridFactory.java @@ -31,29 +31,28 @@ import com.raytheon.uf.common.dataaccess.exception.DataRetrievalException; import com.raytheon.uf.common.dataaccess.grid.IGridData; import com.raytheon.uf.common.dataaccess.impl.AbstractGridDataPluginFactory; import com.raytheon.uf.common.dataaccess.impl.DefaultGridData; -import com.raytheon.uf.common.dataaccess.util.DataWrapperUtil; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridLocation; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridParmInfo; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DByte; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DFloat; -import com.raytheon.uf.common.dataplugin.gfe.grid.IGrid2D; import com.raytheon.uf.common.dataplugin.gfe.slice.DiscreteGridSlice; import com.raytheon.uf.common.dataplugin.gfe.slice.IGridSlice; import com.raytheon.uf.common.dataplugin.gfe.slice.ScalarGridSlice; import com.raytheon.uf.common.dataplugin.gfe.slice.WeatherGridSlice; -import com.raytheon.uf.common.dataplugin.gfe.weather.WeatherKey; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.level.MasterLevel; import com.raytheon.uf.common.dataquery.requests.DbQueryRequest; import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.requests.RequestConstraint.ConstraintType; import com.raytheon.uf.common.dataquery.responses.DbQueryResponse; -import com.raytheon.uf.common.datastorage.records.ByteDataRecord; -import com.raytheon.uf.common.datastorage.records.FloatDataRecord; -import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.geospatial.MapUtil; +import com.raytheon.uf.common.geospatial.util.SubGridGeometryCalculator; +import com.raytheon.uf.common.numeric.buffer.ByteBufferWrapper; +import com.raytheon.uf.common.numeric.buffer.FloatBufferWrapper; +import com.raytheon.uf.common.numeric.source.DataSource; +import com.raytheon.uf.common.numeric.source.OffsetDataSource; import com.raytheon.uf.common.util.StringUtil; /** @@ -64,15 +63,17 @@ import com.raytheon.uf.common.util.StringUtil; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Feb 4, 2013 bsteffen Initial creation - * Feb 14, 2013 1614 bsteffen Refactor data access framework to use - * single request. - * May 02, 2013 1949 bsteffen Update GFE data access in Product - * Browser, Volume Browser, and Data Access - * Framework. - * 10/31/2013 2508 randerso Change to use DiscreteGridSlice.getKeys() + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Feb 04, 2013 bsteffen Initial creation + * Feb 14, 2013 1614 bsteffen Refactor data access framework to use + * single request. + * May 02, 2013 1949 bsteffen Update GFE data access in Product + * Browser, Volume Browser, and Data Access + * Framework. + * Oct 31, 2013 2508 randerso Change to use DiscreteGridSlice.getKeys() + * Feb 04, 2014 2672 bsteffen Enable requesting subgrids. + * Jul 30, 2014 3184 njensen Renamed valid identifiers to optional * * * @@ -91,24 +92,24 @@ public class GFEGridFactory extends AbstractGridDataPluginFactory implements private static final String KEYS = "keys"; - // The more full version from GFEDataAccessUtil is prefered but the smaller + // The more full version from GFEDataAccessUtil is preferred but the smaller // keys are needed for backwards compatibility. - private static final String[] VALID_IDENTIFIERS = { MODEL_NAME, MODEL_TIME, - SITE_ID }; + private static final String[] OPTIONAL_IDENTIFIERS = { + GFEDataAccessUtil.MODEL_NAME, GFEDataAccessUtil.MODEL_TIME, + GFEDataAccessUtil.SITE_ID, MODEL_NAME, MODEL_TIME, SITE_ID }; @Override - public String[] getValidIdentifiers() { - return VALID_IDENTIFIERS; + public String[] getOptionalIdentifiers() { + return OPTIONAL_IDENTIFIERS; } @Override protected IGridData constructGridDataResponse(IDataRequest request, PluginDataObject pdo, GridGeometry2D gridGeometry, - IDataRecord dataRecord) { + DataSource dataSource) { GFERecord gfeRecord = asGFERecord(pdo); - DefaultGridData defaultGridData = new DefaultGridData( - DataWrapperUtil.constructArrayWrapper(dataRecord, false), + DefaultGridData defaultGridData = new DefaultGridData(dataSource, gridGeometry); defaultGridData.setDataTime(pdo.getDataTime()); defaultGridData.setParameter(gfeRecord.getParmName()); @@ -121,9 +122,10 @@ public class GFEGridFactory extends AbstractGridDataPluginFactory implements attrs.put(MODEL_NAME, gfeRecord.getDbId().getModelName()); attrs.put(MODEL_TIME, gfeRecord.getDbId().getModelTime()); attrs.put(SITE_ID, gfeRecord.getDbId().getSiteId()); - if (dataRecord.getDataAttributes().containsKey(KEYS)) { - attrs.put(KEYS, StringUtil.join((String[]) dataRecord - .getDataAttributes().get(KEYS), ',')); + + Object messageData = gfeRecord.getMessageData(); + if (messageData instanceof Object[]) { + attrs.put(KEYS, StringUtil.join((Object[]) messageData, ',')); } defaultGridData.setAttributes(attrs); @@ -203,58 +205,49 @@ public class GFEGridFactory extends AbstractGridDataPluginFactory implements } @Override - protected IDataRecord getDataRecord(PluginDataObject pdo) { + protected DataSource getDataSource(PluginDataObject pdo, + SubGridGeometryCalculator subGrid) { GFERecord gfeRecord = asGFERecord(pdo); + IGridSlice slice = null; try { - IGridSlice slice = GFEDataAccessUtil.getSlice(gfeRecord); - GridLocation loc = slice.getGridInfo().getGridLoc(); - gfeRecord.setGridInfo(slice.getGridInfo()); - IGrid2D data = null; - Map attrs = new HashMap(); - if (slice instanceof ScalarGridSlice) { - // This also grabs vector data. - data = ((ScalarGridSlice) slice).getScalarGrid(); - return new FloatDataRecord("Data", gfeRecord.getDataURI(), - ((Grid2DFloat) data).getFloats(), 2, new long[] { - loc.getNx(), loc.getNy() }); - } else if (slice instanceof DiscreteGridSlice) { - DiscreteGridSlice castedSlice = (DiscreteGridSlice) slice; - data = castedSlice.getDiscreteGrid(); - Object[] dKeys = castedSlice.getKeys(); - String[] keys = new String[dKeys.length]; - for (int i = 0; i < dKeys.length; i++) { - keys[i] = dKeys[i].toString(); - } - byte[] bytes = ((Grid2DByte) data).getBytes(); - ByteDataRecord record = new ByteDataRecord("Data", - gfeRecord.getDataURI(), bytes, 2, new long[] { - loc.getNx(), loc.getNy() }); - attrs.put(KEYS, keys); - record.setDataAttributes(attrs); - return record; - } else if (slice instanceof WeatherGridSlice) { - WeatherGridSlice castedSlice = (WeatherGridSlice) slice; - data = castedSlice.getWeatherGrid(); - WeatherKey[] wKeys = castedSlice.getKeys(); - String[] keys = new String[wKeys.length]; - for (int i = 0; i < wKeys.length; i++) { - keys[i] = wKeys[i].toString(); - } - byte[] bytes = ((Grid2DByte) data).getBytes(); - ByteDataRecord record = new ByteDataRecord("Data", - gfeRecord.getDataURI(), bytes, 2, new long[] { - loc.getNx(), loc.getNy() }); - attrs.put(KEYS, keys); - record.setDataAttributes(attrs); - return record; - } else { - throw new DataRetrievalException("Unknown slice of type " - + slice.getClass().getSimpleName()); - } + slice = GFEDataAccessUtil.getSlice(gfeRecord); } catch (Exception e) { throw new DataRetrievalException(e); } + GridParmInfo info = slice.getGridInfo(); + GridLocation loc = info.getGridLoc(); + gfeRecord.setGridInfo(slice.getGridInfo()); + DataSource dataSource = null; + Object[] keys = null; + if (slice instanceof ScalarGridSlice) { + // This also grabs vector data. + Grid2DFloat data = ((ScalarGridSlice) slice).getScalarGrid(); + dataSource = new FloatBufferWrapper(data.getFloats(), loc.getNx(), + loc.getNy()); + } else if (slice instanceof DiscreteGridSlice) { + DiscreteGridSlice discreteSlice = (DiscreteGridSlice) slice; + Grid2DByte data = discreteSlice.getDiscreteGrid(); + keys = discreteSlice.getKeys(); + dataSource = new ByteBufferWrapper(data.getBytes(), loc.getNx(), + loc.getNy()); + } else if (slice instanceof WeatherGridSlice) { + WeatherGridSlice weatherSlice = (WeatherGridSlice) slice; + Grid2DByte data = weatherSlice.getWeatherGrid(); + keys = weatherSlice.getKeys(); + dataSource = new ByteBufferWrapper(data.getBytes(), loc.getNx(), + loc.getNy()); + } else { + throw new DataRetrievalException("Unknown slice of type " + + slice.getClass().getSimpleName()); + } + if (subGrid != null && !subGrid.isFull()) { + int[] offsets = subGrid.getGridRangeLow(true); + dataSource = new OffsetDataSource(dataSource, offsets[0], + offsets[1]); + } + gfeRecord.setMessageData(keys); + return dataSource; } @Override diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/DatabaseID.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/DatabaseID.java index 6f49908cf8..ec1cf3bf09 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/DatabaseID.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/DatabaseID.java @@ -67,6 +67,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeTypeAdap * 06/20/13 2127 rjpeter Removed unused bidirectional relationship. * 06/13/13 2044 randerso Code cleanup * 07/31/13 2057 randerso Added removedDate + * 10/08/14 #3684 randerso Added sameModel() + * * * * @author bphillip @@ -598,6 +600,23 @@ public class DatabaseID implements Comparable { return cal.getTime(); } + public boolean sameModel(DatabaseID other) { + + if (!this.siteId.equals(other.getSiteId())) { + return false; + } + + if (!this.format.equals(other.getFormat())) { + return false; + } + + if (!this.dbType.equals(other.getDbType())) { + return false; + } + + return this.modelName.equals(other.getModelName()); + } + /* * (non-Javadoc) * diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/GridLocation.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/GridLocation.java index df2e5e694c..47d87d38ae 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/GridLocation.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/objects/GridLocation.java @@ -99,7 +99,12 @@ import com.vividsolutions.jts.simplify.TopologyPreservingSimplifier; * made init method public for use in GFEDao * 09/30/13 #2333 mschenke Added method to construct from {@link IGridGeometryProvider} * 10/22/13 #2361 njensen Remove XML annotations + * 04/11/14 #2947 bsteffen Remove ISpatialObject constructor. * 05/06/14 #3118 randerso Added clone() method + * 05/14/2014 #3069 randerso Changed to store math transforms and CRS instead of + * GridGeometry2D since GeoTools now changes the supplied + * math transform when creating GridGeometry2D + * * * * @@ -119,7 +124,7 @@ public class GridLocation extends PersistableDataObject implements * reshaped using numpy for performance * */ - private static class PythonNumpyLatLonGrid implements INumpyable { + static class PythonNumpyLatLonGrid implements INumpyable { private float[] data; public PythonNumpyLatLonGrid(int nx, int ny, float[] data) { @@ -305,10 +310,8 @@ public class GridLocation extends PersistableDataObject implements Coordinate ur = new Coordinate(this.origin.x + this.extent.x, this.origin.y + this.extent.y); - Coordinate llCrs = this.projection.gridCoordinateToCrs(ll, - PixelOrientation.CENTER); - Coordinate urCrs = this.projection.gridCoordinateToCrs(ur, - PixelOrientation.CENTER); + Coordinate llCrs = this.projection.gridCoordinateToCrs(ll); + Coordinate urCrs = this.projection.gridCoordinateToCrs(ur); // construct the grid geometry that covers the GFE grid GeneralEnvelope ge = new GeneralEnvelope(2); @@ -318,29 +321,29 @@ public class GridLocation extends PersistableDataObject implements ge.setRange(1, Math.min(llCrs.y, urCrs.y), Math.max(llCrs.y, urCrs.y)); + // GeoTools 10.5 kludge to use nx-1, ny-1 non-inclusive GeneralGridEnvelope gr = new GeneralGridEnvelope( - new int[] { 1, 1 }, new int[] { this.nx, this.ny }, false); + new int[] { 0, 0 }, new int[] { this.nx - 1, this.ny - 1 }, + false); + // GeoTools 10.5 kludge to use CELL_CORNER instead of CELL_CENTER GridToEnvelopeMapper mapper = new GridToEnvelopeMapper(); mapper.setEnvelope(ge); mapper.setGridRange(gr); - mapper.setPixelAnchor(PixelInCell.CELL_CENTER); - mapper.setReverseAxis(new boolean[] { false, false }); - MathTransform mt = mapper.createTransform(); - - GridGeometry2D gridGeom = new GridGeometry2D( - PixelInCell.CELL_CORNER, mt, ge, null); + mapper.setPixelAnchor(PixelInCell.CELL_CORNER); + mapper.setReverseAxis(new boolean[] { false, true }); + MathTransform gridToCrs = mapper.createTransform(); // set up the transform from grid coordinates to lon/lat DefaultMathTransformFactory dmtf = new DefaultMathTransformFactory(); - mt = dmtf.createConcatenatedTransform( - gridGeom.getGridToCRS(PixelOrientation.UPPER_LEFT), - MapUtil.getTransformToLatLon(crsObject)); - + MathTransform gridToLatLon = dmtf.createConcatenatedTransform( + gridToCrs, MapUtil.getTransformToLatLon(crsObject)); // transform grid corner points to Lat/Lon double[] latLon = new double[8]; - mt.transform(new double[] { 0, this.ny, 0, 0, this.nx, 0, this.nx, - this.ny }, 0, latLon, 0, 4); + double[] gridCells = new double[] { -0.5, -0.5, -0.5, + this.ny - 0.5, this.nx - 0.5, this.ny - 0.5, this.nx - 0.5, + -0.5 }; + gridToLatLon.transform(gridCells, 0, latLon, 0, 4); Coordinate[] corners = new Coordinate[] { MapUtil.getCoordinate(latLon[0], latLon[1]), @@ -374,19 +377,6 @@ public class GridLocation extends PersistableDataObject implements "GMT"); } - /** - * @param id - * @param coverage - */ - public GridLocation(String id, ISpatialObject coverage) { - this.siteId = id; - this.crsObject = coverage.getCrs(); - this.crsWKT = this.crsObject.toWKT(); - this.geometry = (Polygon) coverage.getGeometry(); - this.nx = coverage.getNx(); - this.ny = coverage.getNy(); - } - /** * @param id * @param provider @@ -742,9 +732,7 @@ public class GridLocation extends PersistableDataObject implements public String toString() { String s = "[SiteID =" + siteId + ",ProjID=" + getCrs().getName().getCode() + ",gridSize=(" + nx + ',' + ny - + "),loc=" + this.geometry.getGeometryType(); - // if (proj()) - // s += "," + proj()->pdata(); + + "), loc=[o=" + this.origin + ", e=" + this.extent + "]"; s += ']'; return s; } @@ -1050,43 +1038,56 @@ public class GridLocation extends PersistableDataObject implements // new Coordinate(9, 9), "CST6CDT"); GridLocation gloc = new GridLocation("OAX", grid211, - new Point(145, 145), new Coordinate(45.0, 30.0), - new Coordinate(9, 9), "CST6CDT"); + new Point(417, 289), new Coordinate(41.0, 29.0), + new Coordinate(13, 9), "CST6CDT"); System.out.println(gloc.getSiteId()); Coordinate gridCoord = new Coordinate(); Coordinate latLon = new Coordinate(); - PixelOrientation orientation = PixelOrientation.CENTER; - gridCoord.x = 0; - gridCoord.y = 0; - latLon = MapUtil.gridCoordinateToLatLon(gridCoord, orientation, gloc); - System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); + System.out.println("geometry: " + gloc.getGeometry()); - gridCoord.x = 0; - gridCoord.y = gloc.getNy() - 1; - latLon = MapUtil.gridCoordinateToLatLon(gridCoord, orientation, gloc); - System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); + try { + gridCoord.x = 0; + gridCoord.y = 0; + latLon = MapUtil.gridCoordinateToLatLon(gridCoord, + PixelOrientation.CENTER, gloc); + System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); - gridCoord.x = gloc.getNx() - 1; - gridCoord.y = gloc.getNy() - 1; - latLon = MapUtil.gridCoordinateToLatLon(gridCoord, orientation, gloc); - System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); + gridCoord.x = 0; + gridCoord.y = gloc.getNy() - 1; + latLon = MapUtil.gridCoordinateToLatLon(gridCoord, + PixelOrientation.CENTER, gloc); + System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); - gridCoord.x = gloc.getNx() - 1; - gridCoord.y = 0; - latLon = MapUtil.gridCoordinateToLatLon(gridCoord, orientation, gloc); - System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); + gridCoord.x = gloc.getNx() - 1; + gridCoord.y = gloc.getNy() - 1; + latLon = MapUtil.gridCoordinateToLatLon(gridCoord, + PixelOrientation.CENTER, gloc); + System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); - PythonNumpyLatLonGrid latLonGrid = gloc.getLatLonGrid(); - float[] data = (float[]) latLonGrid.getNumpy()[0]; - for (int x = 0; x < gloc.getNx(); x++) { - for (int y = 0; y < gloc.getNy(); y++) { - int idx = 2 * ((x * gloc.ny) + y); - float lon = data[idx]; - float lat = data[idx + 1]; - System.out.println(x + "," + y + " " + lon + ", " + lat); + gridCoord.x = gloc.getNx() - 1; + gridCoord.y = 0; + latLon = MapUtil.gridCoordinateToLatLon(gridCoord, + PixelOrientation.CENTER, gloc); + System.out.println(gridCoord.x + "," + gridCoord.y + " " + latLon); + + GridGeometry2D gridGeometry = MapUtil.getGridGeometry(gloc); + System.out.println(gridGeometry.getEnvelope2D().toString()); + System.out.println(gridGeometry.toString()); + + PythonNumpyLatLonGrid latLonGrid = gloc.getLatLonGrid(); + float[] data = (float[]) latLonGrid.getNumpy()[0]; + for (int x = 0; x < gloc.getNx(); x++) { + for (int y = 0; y < gloc.getNy(); y++) { + int idx = 2 * ((x * gloc.ny) + y); + float lon = data[idx]; + float lat = data[idx + 1]; + System.out.println(x + "," + y + " " + lon + ", " + lat); + } } + } catch (Exception e) { + e.printStackTrace(); } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/OriginHibType.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/OriginHibType.java index 06ca15d80a..a4ffac0f28 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/OriginHibType.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/OriginHibType.java @@ -27,6 +27,7 @@ import java.sql.SQLException; import java.sql.Types; import org.hibernate.HibernateException; +import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.usertype.UserType; import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory; @@ -42,6 +43,7 @@ import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 4/18/08 875 bphillip Initial Creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -87,29 +89,30 @@ public class OriginHibType implements UserType { public boolean isMutable() { return false; } - + @Override - public Object nullSafeGet(ResultSet resultSet, String[] names, Object owner) + public Object nullSafeGet(ResultSet rs, String[] names, + SessionImplementor session, Object owner) throws HibernateException, SQLException { return GridDataHistory.OriginType - .valueOf(resultSet.getString(names[0])); + .valueOf(rs.getString(names[0])); } @Override - public void nullSafeSet(PreparedStatement statement, Object value, int index) - throws HibernateException, SQLException { + public void nullSafeSet(PreparedStatement st, Object value, int index, + SessionImplementor session) throws HibernateException, SQLException { if (value == null) { - statement.setString(index, null); + st.setString(index, null); } else { if (value instanceof GridDataHistory.OriginType) { - statement.setString(index, ((GridDataHistory.OriginType) value) + st.setString(index, ((GridDataHistory.OriginType) value) .name()); } else { throw new HibernateException("value is not of type " + GridDataHistory.OriginType.class.getName()); } } - + } @Override @@ -127,5 +130,4 @@ public class OriginHibType implements UserType { public int[] sqlTypes() { return OriginHibType.SQL_TYPES; } - } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/ParmIdType.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/ParmIdType.java index 23707c1350..2a1506640e 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/ParmIdType.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/ParmIdType.java @@ -27,6 +27,7 @@ import java.sql.SQLException; import java.sql.Types; import org.hibernate.HibernateException; +import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.usertype.UserType; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; @@ -41,6 +42,7 @@ import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 4/18/08 875 bphillip Initial Creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -85,20 +87,21 @@ public class ParmIdType implements UserType{ public boolean isMutable() { return false; } - + @Override - public Object nullSafeGet(ResultSet resultSet, String[] names, Object owner) + public Object nullSafeGet(ResultSet rs, String[] names, + SessionImplementor session, Object owner) throws HibernateException, SQLException { - return new ParmID(resultSet.getString(names[0])); + return new ParmID(rs.getString(names[0])); } @Override - public void nullSafeSet(PreparedStatement statement, Object value, int index) - throws HibernateException, SQLException { + public void nullSafeSet(PreparedStatement st, Object value, int index, + SessionImplementor session) throws HibernateException, SQLException { if(value == null){ - statement.setString(index, null); + st.setString(index, null); }else{ - statement.setString(index, value.toString()); + st.setString(index, value.toString()); } } @@ -118,6 +121,4 @@ public class ParmIdType implements UserType{ public int[] sqlTypes() { return ParmIdType.SQL_TYPES; } - - } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/WsIdType.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/WsIdType.java index 13c23e5326..9409eea550 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/WsIdType.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/db/type/WsIdType.java @@ -26,6 +26,7 @@ import java.sql.SQLException; import java.sql.Types; import org.hibernate.HibernateException; +import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.usertype.UserType; import com.raytheon.uf.common.message.WsId; @@ -39,6 +40,7 @@ import com.raytheon.uf.common.message.WsId; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jun 10, 2009 randerso Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -116,40 +118,28 @@ public class WsIdType implements UserType { public boolean isMutable() { return false; } - - /* - * (non-Javadoc) - * - * @see org.hibernate.usertype.UserType#nullSafeGet(java.sql.ResultSet, - * java.lang.String[], java.lang.Object) - */ + @Override - public Object nullSafeGet(ResultSet resultSet, String[] names, Object owner) + public Object nullSafeGet(ResultSet rs, String[] names, + SessionImplementor session, Object owner) throws HibernateException, SQLException { - String s = resultSet.getString(names[0]); + String s = rs.getString(names[0]); if (s == null) { return null; } - return new WsId(resultSet.getString(names[0])); + return new WsId(rs.getString(names[0])); } - /* - * (non-Javadoc) - * - * @see - * org.hibernate.usertype.UserType#nullSafeSet(java.sql.PreparedStatement, - * java.lang.Object, int) - */ @Override - public void nullSafeSet(PreparedStatement statement, Object value, int index) - throws HibernateException, SQLException { + public void nullSafeSet(PreparedStatement st, Object value, int index, + SessionImplementor session) throws HibernateException, SQLException { if (value == null) { - statement.setString(index, null); + st.setString(index, null); } else { - statement.setString(index, value.toString()); + st.setString(index, value.toString()); } - + } /* @@ -183,5 +173,4 @@ public class WsIdType implements UserType { public int[] sqlTypes() { return WsIdType.SQL_TYPES; } - } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2D.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2D.java index 4740cf71ca..458d7be516 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2D.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2D.java @@ -34,6 +34,8 @@ import java.nio.Buffer; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 5/7/08 875 bphillip Initial Creation. + * Sep 01, 2014 3572 randerso Removed unnecessary @SuppressWarnings + * to eliminate Java Warning * * * @@ -60,7 +62,6 @@ public class Grid2D implements IGrid2D, Cloneable { * @param yDim * The height of the grid */ - @SuppressWarnings("unchecked") public Grid2D(int xDim, int yDim) { this.xDim = xDim; this.yDim = yDim; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DBit.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DBit.java index fbb008d033..36206bf66a 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DBit.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DBit.java @@ -76,6 +76,7 @@ import java.nio.ByteBuffer; * ------------ ---------- ----------- -------------------------- * Jan 29, 2008 879 rbell Initial Creation. * Oct 22, 2008 1624 wdougherty Speed up translate method + * Sep 01, 2014 3572 randerso Added clear(x,y) method * * * @@ -217,6 +218,23 @@ public class Grid2DBit extends Grid2DByte implements Cloneable { buffer.put(yDim * this.xdim + xDim, (byte) 1); } + /** + * + * Sets a bit to 0. + * + * @param xDim + * xDim x coordinate of bit to set + * @param yDim + * yDim y coordinate of bit to set + */ + @Override + public void clear(int xDim, int yDim) { + if (!isValid(xDim, yDim)) { + throw new IllegalArgumentException("Dimensions are invalid"); + } + buffer.put(yDim * this.xdim + xDim, (byte) 0); + } + /** * * Sets all bits to the given value. diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DByte.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DByte.java index bc563797e6..7c70f5f2eb 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DByte.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DByte.java @@ -26,7 +26,6 @@ import java.util.Arrays; import jep.INumpyable; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.vividsolutions.jts.geom.Coordinate; @@ -41,6 +40,7 @@ import com.vividsolutions.jts.geom.Coordinate; * ------------ ---------- ----------- -------------------------- * Jan 30, 2008 879 rbell Initial Creation. * Oct 22, 2008 1624 wdougherty Speed up translate method + * Sep 01, 2014 3572 randerso Changed getNumpy to use getBytes() * * * @@ -48,8 +48,7 @@ import com.vividsolutions.jts.geom.Coordinate; * @version 1.0 */ @DynamicSerialize -public class Grid2DByte implements IGrid2D, Cloneable, INumpyable, - ISerializableObject { +public class Grid2DByte implements IGrid2D, Cloneable, INumpyable { /** * The data buffer, holding the grid's contents @@ -311,14 +310,17 @@ public class Grid2DByte implements IGrid2D, Cloneable, INumpyable, return buffer; } + @Override public int getXdim() { return xdim; } + @Override public int getYdim() { return ydim; } + @Override public Point getGridSize() { return new Point(xdim, ydim); } @@ -415,7 +417,7 @@ public class Grid2DByte implements IGrid2D, Cloneable, INumpyable, @Override public Object[] getNumpy() { - return new Object[] { buffer.array() }; + return new Object[] { getBytes() }; } @Override diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DFloat.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DFloat.java index 29d3015818..6ff763f712 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DFloat.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/grid/Grid2DFloat.java @@ -25,7 +25,6 @@ import java.nio.FloatBuffer; import jep.INumpyable; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -38,6 +37,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jan 30, 2008 879 rbell Initial Creation. + * Sep 01, 2014 3572 randerso Changed getNumpy to use getFloats() * * * @@ -45,8 +45,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class Grid2DFloat implements IGrid2D, Cloneable, INumpyable, - ISerializableObject { +public class Grid2DFloat implements IGrid2D, Cloneable, INumpyable { /** * The data buffer, holding the grid's contents @@ -321,14 +320,17 @@ public class Grid2DFloat implements IGrid2D, Cloneable, INumpyable, this.buffer.put(other.getBuffer()); } + @Override public int getXdim() { return xdim; } + @Override public int getYdim() { return ydim; } + @Override public Point getGridSize() { return new Point(xdim, ydim); } @@ -426,7 +428,7 @@ public class Grid2DFloat implements IGrid2D, Cloneable, INumpyable, @Override public Object[] getNumpy() { - return new Object[] { buffer.array() }; + return new Object[] { getFloats() }; } @Override diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainer.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainer.java index a356a6e69c..cc410956a3 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainer.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainer.java @@ -26,19 +26,19 @@ import java.util.Set; import com.raytheon.uf.common.pointdata.IPointDataContainerReader; import com.raytheon.uf.common.pointdata.IPointDataViewReader; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * GFE Point Data Container * *
  * 
  * SOFTWARE HISTORY
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
- * Aug 4, 2009            njensen     Initial creation
+ * Aug  4, 2009            njensen     Initial creation
+ * Apr 23, 2014  #3006     randerso    Added toString to aid in debugging
  * 
  * 
* @@ -47,8 +47,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class GFEPointDataContainer implements IPointDataContainerReader, - ISerializableObject { +public class GFEPointDataContainer implements IPointDataContainerReader { @DynamicSerializeElement private List views = new ArrayList(); @@ -104,4 +103,14 @@ public class GFEPointDataContainer implements IPointDataContainerReader, this.views = views; } + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return views.toString(); + } + } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainers.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainers.java index 16344e4793..a53cd180fc 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainers.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataContainers.java @@ -33,7 +33,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Mar 6, 2013 1735 rferrel Initial creation + * Mar 6, 2013 1735 rferrel Initial creation + * Apr 23, 2014 #3006 randerso Added toString to aid in debugging * * * @@ -86,4 +87,15 @@ public class GFEPointDataContainers { public GFEPointDataContainer getContainer(int index) { return containers.get(index); } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return containers.toString(); + } + } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataView.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataView.java index 95091655fd..4124d0154d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataView.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/point/GFEPointDataView.java @@ -31,12 +31,11 @@ import javax.persistence.Transient; import com.raytheon.uf.common.pointdata.IPointDataContainerReader; import com.raytheon.uf.common.pointdata.IPointDataViewReader; import com.raytheon.uf.common.pointdata.PointDataDescription.Type; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * GFE Point Data View * *
  * 
@@ -44,6 +43,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Aug 4, 2009            njensen     Initial creation
+ * Apr 23, 2014  #3006    randerso    Added toString to aid in debugging
+ *                                    Fixed conversion of Double to float
  * 
  * 
* @@ -52,8 +53,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class GFEPointDataView implements IPointDataViewReader, - ISerializableObject { +public class GFEPointDataView implements IPointDataViewReader { @DynamicSerializeElement private Map valueMap = new HashMap(); @@ -99,7 +99,7 @@ public class GFEPointDataView implements IPointDataViewReader, Type type = pd.getType(); Object obj = pd.getValue(); if (type == Type.FLOAT) { - return (Float) obj; + return ((Number) obj).floatValue(); } else if (type == Type.STRING) { return Float.valueOf((String) obj); } else { @@ -264,4 +264,14 @@ public class GFEPointDataView implements IPointDataViewReader, parent = container; } + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return valueMap.toString(); + } + } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/python/GfePyIncludeUtil.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/python/GfePyIncludeUtil.java index 0c5e24fbd5..516fed06d6 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/python/GfePyIncludeUtil.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/python/GfePyIncludeUtil.java @@ -39,6 +39,7 @@ import com.raytheon.uf.common.util.FileUtil; * Feb 27, 2013 #1447 dgilling Re-factor based on PythonPathIncludeUtil. * Mar 11, 2013 #1759 dgilling Add method getGfeConfigLF(). * Sep 16, 2013 #1759 dgilling Move tests and autotests to GfeCavePyIncludeUtil. + * Aug 22, 2014 3500 bclement added python path in getConfigIncludePath() * * * @author njensen @@ -287,6 +288,7 @@ public class GfePyIncludeUtil extends PythonIncludePathUtil { } public static String getConfigIncludePath(boolean includeUser) { + String pythonPath = GfePyIncludeUtil.getCommonPythonIncludePath(); String baseDir = getPath(PATH_MANAGER.getContext( LocalizationType.CAVE_STATIC, LocalizationLevel.BASE), CONFIG); String siteDir = getPath(PATH_MANAGER.getContext( @@ -295,9 +297,10 @@ public class GfePyIncludeUtil extends PythonIncludePathUtil { String userDir = getPath(PATH_MANAGER.getContext( LocalizationType.CAVE_STATIC, LocalizationLevel.USER), CONFIG); - return PyUtil.buildJepIncludePath(userDir, siteDir, baseDir); + return PyUtil.buildJepIncludePath(userDir, siteDir, baseDir, + pythonPath); } else { - return PyUtil.buildJepIncludePath(siteDir, baseDir); + return PyUtil.buildJepIncludePath(siteDir, baseDir, pythonPath); } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/reference/ReferenceData.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/reference/ReferenceData.java index 29eb447a5e..e03c07dfd6 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/reference/ReferenceData.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/reference/ReferenceData.java @@ -36,8 +36,8 @@ import com.raytheon.uf.common.dataplugin.gfe.db.objects.GridLocation; import com.raytheon.uf.common.dataplugin.gfe.grid.Grid2DBit; import com.raytheon.uf.common.dataplugin.gfe.util.GfeUtil; import com.raytheon.uf.common.geospatial.MapUtil; +import com.raytheon.uf.common.geospatial.adapter.JTSGeometryAdapter; import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; -import com.raytheon.uf.common.serialization.adapters.JTSGeometryAdapter; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.common.status.IUFStatusHandler; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/request/SaveGfeGridRequest.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/request/SaveGfeGridRequest.java index c4724fd462..042213c59d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/request/SaveGfeGridRequest.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/request/SaveGfeGridRequest.java @@ -35,34 +35,75 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Sep 22, 2009 3058 rjpeter Initial creation + * Apr 03, 2014 2737 randerso Moved clientSendStatus from SaveGridRequest + * Added proper constructor * * * * @author rjpeter * @version 1.0 */ - @DynamicSerialize public class SaveGfeGridRequest extends AbstractGfeRequest { - @DynamicSerializeElement - private List saveRequest = new ArrayList(); + /** + * Denotes whether to send ISC grids on save based on the client's + * preferences + */ - public void addRequest(SaveGridRequest req) { - saveRequest.add(req); + @DynamicSerializeElement + private boolean clientSendStatus = true; + + @DynamicSerializeElement + private List saveRequests = new ArrayList(); + + /** + * Default constructor for serialization + */ + public SaveGfeGridRequest() { + + } + + /** + * Constructor + * + * @param clientSendStatus + * true if ISC grids should be sent + * @param saveRequests + * the save requests + */ + public SaveGfeGridRequest(boolean clientSendStatus, + List saveRequests) { + this.clientSendStatus = clientSendStatus; + this.saveRequests = saveRequests; + } + + /** + * @return the clientSendStatus + */ + public boolean isClientSendStatus() { + return clientSendStatus; + } + + /** + * @param clientSendStatus + * the clientSendStatus to set + */ + public void setClientSendStatus(boolean clientSendStatus) { + this.clientSendStatus = clientSendStatus; } /** * @return the saveRequest */ - public List getSaveRequest() { - return saveRequest; + public List getSaveRequests() { + return saveRequests; } /** * @param saveRequest * the saveRequest to set */ - public void setSaveRequest(List saveRequest) { - this.saveRequest = saveRequest; + public void setSaveRequests(List saveRequests) { + this.saveRequests = saveRequests; } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleData.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleData.java index 9c727ebd0b..9a79ff79ba 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleData.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleData.java @@ -30,8 +30,8 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; +import com.raytheon.uf.common.geospatial.adapter.CoordAdapter; import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; -import com.raytheon.uf.common.serialization.adapters.CoordAdapter; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.vividsolutions.jts.geom.Coordinate; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleId.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleId.java index f3061fc09f..ee26d808a7 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleId.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/sample/SampleId.java @@ -20,7 +20,6 @@ package com.raytheon.uf.common.dataplugin.gfe.sample; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; -import com.raytheon.uf.common.serialization.ISerializableObject; /** * Contains the identifier to uniquely identify a SampleData set. @@ -29,7 +28,8 @@ import com.raytheon.uf.common.serialization.ISerializableObject; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Apr 14, 2008 879 rbell Initial creation + * Apr 14, 2008 879 rbell Initial creation + * Sep 15, 2014 #3592 randerso Code cleanup, JavaDoc improvement * * * @@ -37,7 +37,7 @@ import com.raytheon.uf.common.serialization.ISerializableObject; * @version 1.0 */ -public class SampleId implements Cloneable, ISerializableObject { +public class SampleId implements Cloneable { private String name; @@ -52,8 +52,13 @@ public class SampleId implements Cloneable, ISerializableObject { this((String) null); } - public SampleId(String aName) { - this(aName, false, LocalizationLevel.UNKNOWN); + /** + * Constructor taking the name to uniquely identify this sample data. + * + * @param name + */ + public SampleId(String name) { + this(name, false, LocalizationLevel.UNKNOWN); } /** @@ -64,11 +69,10 @@ public class SampleId implements Cloneable, ISerializableObject { * @param protect * @param access */ - public SampleId(final String aName, boolean aProtect, - LocalizationLevel anAccess) { - this.name = aName; - this.protect = aProtect; - this.access = anAccess; + public SampleId(final String name, boolean protect, LocalizationLevel access) { + this.name = name; + this.protect = protect; + this.access = access; } /** @@ -118,11 +122,11 @@ public class SampleId implements Cloneable, ISerializableObject { public int hashCode() { final int prime = 31; int result = 1; - result = prime * result + result = (prime * result) + ((this.access == null) ? 0 : this.access.hashCode()); - result = prime * result + result = (prime * result) + ((this.name == null) ? 0 : this.name.hashCode()); - result = prime * result + (this.protect ? 1231 : 1237); + result = (prime * result) + (this.protect ? 1231 : 1237); return result; } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/GfeNotification.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/GfeNotification.java index 46021c4981..362fde8d48 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/GfeNotification.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/GfeNotification.java @@ -26,21 +26,56 @@ import java.util.Map; import com.raytheon.uf.common.message.IMessage; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; +import com.raytheon.uf.common.util.SystemUtil; +/** + * Base class for GFE Notifications + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- --------------------------
+ * Oct 7, 2014   #3684     randerso    Added sourceId field
+ * 
+ * 
+ * + * @author randerso + * @version 1.0 + */ @DynamicSerialize public class GfeNotification implements IMessage { + private static final String localSourceID; + static { + String host = SystemUtil.getHostName(); + int pid = SystemUtil.getPid(); + localSourceID = host + ":" + pid; + } @DynamicSerializeElement protected String siteID; - public GfeNotification() { + @DynamicSerializeElement + protected String sourceID; + public GfeNotification() { + this.sourceID = localSourceID; } public GfeNotification(String siteId) { + this(); this.siteID = siteId; } + public String getSourceID() { + return sourceID; + } + + public void setSourceID(String sourceId) { + this.sourceID = sourceId; + } + public String getSiteID() { return siteID; } @@ -49,6 +84,15 @@ public class GfeNotification implements IMessage { this.siteID = siteID; } + /** + * + * + * @return + */ + public boolean isLocal() { + return localSourceID.equals(this.sourceID); + } + /* * (non-Javadoc) * diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/GetGridRequest.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/GetGridRequest.java index db0be8f9da..830626b6e8 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/GetGridRequest.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/GetGridRequest.java @@ -20,12 +20,9 @@ package com.raytheon.uf.common.dataplugin.gfe.server.request; -import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.common.time.TimeRange; @@ -38,6 +35,8 @@ import com.raytheon.uf.common.time.TimeRange; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 04/08/08 #875 bphillip Initial Creation + * 07/01/2014 #3149 randerso Simplified to contain only a ParmID and + * list of TimeRanges. * * * @@ -46,41 +45,18 @@ import com.raytheon.uf.common.time.TimeRange; */ @DynamicSerialize -public class GetGridRequest implements ISerializableObject { +public class GetGridRequest { /** The records to be saved */ @DynamicSerializeElement - private List records; + private List times; /** The parmID of the request */ @DynamicSerializeElement private ParmID parmId; - /** - * Denotes whether the data retrieved from this request will be converted to - * match the corresponding grid parm info - */ - - @DynamicSerializeElement - private boolean convertUnit = false; - - /** - * @return the convertUnit - */ - public boolean isConvertUnit() { - return convertUnit; - } - - /** - * @param convertUnit - * the convertUnit to set - */ - public void setConvertUnit(boolean convertUnit) { - this.convertUnit = convertUnit; - } - /** * Creates a new GetGridRequest */ @@ -96,19 +72,9 @@ public class GetGridRequest implements ISerializableObject { * @param times * The times of the requested grids */ - public GetGridRequest(List records) { - if (records.size() > 0) { - parmId = records.get(0).getParmId(); - } - this.records = records; - } - - public GetGridRequest(ParmID parmId, List trs) { + public GetGridRequest(ParmID parmId, List times) { this.parmId = parmId; - records = new ArrayList(); - for (TimeRange tr : trs) { - records.add(new GFERecord(parmId, tr)); - } + this.times = times; } public ParmID getParmId() { @@ -120,19 +86,11 @@ public class GetGridRequest implements ISerializableObject { } public List getTimes() { - List times = new ArrayList(); - for (GFERecord rec : records) { - times.add(rec.getTimeRange()); - } - return times; + return this.times; } - public List getRecords() { - return records; - } - - public void setRecords(List records) { - this.records = records; + public void setTimes(List times) { + this.times = times; } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/SaveGridRequest.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/SaveGridRequest.java index 7321621a2e..8d5ce11edf 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/SaveGridRequest.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/request/SaveGridRequest.java @@ -25,7 +25,6 @@ import java.util.List; import com.raytheon.uf.common.dataplugin.gfe.db.objects.GFERecord; import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.common.time.TimeRange; @@ -39,6 +38,7 @@ import com.raytheon.uf.common.time.TimeRange; * ------------ ---------- ----------- -------------------------- * 04/08/08 #875 bphillip Initial Creation * 06/17/08 #940 bphillip Implemented GFE Locking + * 04/03/2014 #2737 randerso Moved clientSendStatus from SaveGridRequest * * * @@ -47,7 +47,7 @@ import com.raytheon.uf.common.time.TimeRange; */ @DynamicSerialize -public class SaveGridRequest implements ISerializableObject { +public class SaveGridRequest { /** The grid slices */ @@ -64,14 +64,6 @@ public class SaveGridRequest implements ISerializableObject { @DynamicSerializeElement private TimeRange replacementTimeRange; - /** - * Denotes whether to send ISC grids on save based on the client's - * preferences - */ - - @DynamicSerializeElement - private boolean clientSendStatus = true; - /** * Creates a new VerifyGridRequest */ @@ -86,12 +78,6 @@ public class SaveGridRequest implements ISerializableObject { this.gridSlices = gridSlices; } - public SaveGridRequest(ParmID parmId, TimeRange replacementTimeRange, - List gridSlices, boolean clientSendStatus) { - this(parmId, replacementTimeRange, gridSlices); - this.clientSendStatus = clientSendStatus; - } - public ParmID getParmId() { return parmId; } @@ -127,20 +113,4 @@ public class SaveGridRequest implements ISerializableObject { public void addRecord(GFERecord rec) { this.gridSlices.add(rec); } - - /** - * @return the clientSendStatus - */ - public boolean isClientSendStatus() { - return clientSendStatus; - } - - /** - * @param clientSendStatus - * the clientSendStatus to set - */ - public void setClientSendStatus(boolean clientSendStatus) { - this.clientSendStatus = clientSendStatus; - } - } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/util/GfeUtil.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/util/GfeUtil.java index 2a42ebcc99..3a02c23223 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/util/GfeUtil.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/util/GfeUtil.java @@ -67,6 +67,7 @@ import com.vividsolutions.jts.operation.polygonize.Polygonizer; * favor of new GridLocation constructor * 06/24/13 #2044 randerso Changed format of hdf5 group to include * minutes for satellite data + * 10/08/14 #3684 randerso Removed NOTIFY * * * @@ -105,8 +106,6 @@ public class GfeUtil { public static final String HAZARDS_KEY = "Hazards"; - public static final String NOTIFY = "gfeNotify"; - private static Pattern DISCRETE_PATTERN = Pattern .compile("'[\\w<>+/^\\[\\]\\.,:-]*'"); @@ -422,7 +421,7 @@ public class GfeUtil { // check for closed line string if (!ls.isClosed()) { throw new IllegalArgumentException( - "The coorinate list must be closed (first and last coordinates must be equal)"); + "The coordinate list must be closed (first and last coordinates must be equal)"); } // node the line string (insert vertices where lines cross) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/utility/common_static/base/colormaps/GFE/Hazards.cmap b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/utility/common_static/base/colormaps/GFE/Hazards.cmap index 43839b5722..bc51f8c46f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/utility/common_static/base/colormaps/GFE/Hazards.cmap +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/utility/common_static/base/colormaps/GFE/Hazards.cmap @@ -1,99 +1,102 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/META-INF/MANIFEST.MF index bc6f2ca6d3..d734e10fe0 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Goessounding Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.goessounding -Bundle-Version: 1.0.0.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.goessounding Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/src/com/raytheon/uf/common/dataplugin/goessounding/GOESSounding.java b/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/src/com/raytheon/uf/common/dataplugin/goessounding/GOESSounding.java index 62e0466b04..1a095c54a4 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/src/com/raytheon/uf/common/dataplugin/goessounding/GOESSounding.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.goessounding/src/com/raytheon/uf/common/dataplugin/goessounding/GOESSounding.java @@ -65,6 +65,7 @@ import com.vividsolutions.jts.geom.Geometry; * Jul 16, 2013 2181 bsteffen Convert geometry types to use hibernate- * spatial * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -94,7 +95,7 @@ public class GOESSounding extends PersistablePluginDataObject implements // The bounding box that contains this observation. @Column - @Type(type = "org.hibernatespatial.GeometryUserType") + @Type(type = "org.hibernate.spatial.GeometryType") @DynamicSerializeElement private Geometry boxGeometry; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/META-INF/MANIFEST.MF index 9569f9cbee..7d149e78f1 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/META-INF/MANIFEST.MF @@ -2,11 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Grid Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.grid -Bundle-Version: 1.13.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization Export-Package: com.raytheon.uf.common.dataplugin.grid, com.raytheon.uf.common.dataplugin.grid.dataquery, com.raytheon.uf.common.dataplugin.grid.dataset, @@ -16,12 +15,12 @@ Export-Package: com.raytheon.uf.common.dataplugin.grid, com.raytheon.uf.common.dataplugin.grid.units, com.raytheon.uf.common.dataplugin.grid.util Require-Bundle: com.raytheon.uf.common.dataplugin, - com.raytheon.uf.common.gridcoverage;visibility:=reexport, + com.raytheon.uf.common.gridcoverage;bundle-version="1.13.0";visibility:=reexport, com.raytheon.uf.common.parameter;visibility:=reexport, - com.raytheon.uf.common.dataplugin.level;visibility:=reexport, + com.raytheon.uf.common.dataplugin.level;bundle-version="1.14.0";visibility:=reexport, com.raytheon.uf.common.serialization, - com.raytheon.uf.common.geospatial, - com.raytheon.uf.common.localization, + com.raytheon.uf.common.geospatial;bundle-version="1.14.0", + com.raytheon.uf.common.localization;bundle-version="1.14.0", com.raytheon.uf.common.datastorage, com.raytheon.uf.common.comm, com.raytheon.uf.common.dataquery, @@ -30,6 +29,7 @@ Require-Bundle: com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.serialization.comm, com.raytheon.uf.common.status, com.raytheon.uf.common.style, + com.raytheon.uf.common.numeric;bundle-version="1.14.0", org.apache.commons.beanutils, javax.measure, javax.persistence, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/res/scripts/grid_indices.sql b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/res/scripts/grid_indices.sql index a7a86e8478..b4a00aed35 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/res/scripts/grid_indices.sql +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/res/scripts/grid_indices.sql @@ -17,17 +17,6 @@ * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ - -CREATE INDEX "gridDatasetReftime_idx" - ON grid - USING btree - (info_id, reftime, forecasttime); - -CREATE INDEX "gridinfoNameParamLevel_idx" - ON grid_info - USING btree - (datasetid, parameter_abbreviation, level_id); - CREATE INDEX "gridinfoSecondryId_idx" ON grid_info USING btree diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridInfoRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridInfoRecord.java index e59cf4c844..2b0cd6e72f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridInfoRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridInfoRecord.java @@ -28,6 +28,7 @@ import javax.persistence.ManyToOne; import javax.persistence.PrimaryKeyJoinColumn; import javax.persistence.SequenceGenerator; import javax.persistence.Table; +import javax.persistence.UniqueConstraint; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.level.Level; @@ -53,6 +54,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * May 21, 2012 bsteffen Initial creation * Nov 25, 2013 2574 bsteffen Add converter to location dataURI * annotation. + * Apr 15, 2014 2060 njensen Added unique constraint annotation * * * @@ -60,7 +62,9 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @Entity -@Table(name = "grid_info") +@Table(name = "grid_info", uniqueConstraints = { @UniqueConstraint(columnNames = { + "datasetid", "parameter_abbreviation", "level_id", "secondaryid", + "ensembleid", "location_id" }) }) @SequenceGenerator(name = "GRIDINFO_GENERATOR", sequenceName = "gridinfo_seq", allocationSize = 1) @DynamicSerialize public class GridInfoRecord extends PersistableDataObject { @@ -192,59 +196,74 @@ public class GridInfoRecord extends PersistableDataObject { public int hashCode() { final int prime = 31; int result = 1; - result = prime * result + result = (prime * result) + ((datasetId == null) ? 0 : datasetId.hashCode()); - result = prime * result + result = (prime * result) + ((ensembleId == null) ? 0 : ensembleId.hashCode()); - result = prime * result + ((level == null) ? 0 : level.hashCode()); - result = prime * result + result = (prime * result) + ((level == null) ? 0 : level.hashCode()); + result = (prime * result) + ((location == null) ? 0 : location.hashCode()); - result = prime * result + result = (prime * result) + ((parameter == null) ? 0 : parameter.hashCode()); - result = prime * result + result = (prime * result) + ((secondaryId == null) ? 0 : secondaryId.hashCode()); return result; } @Override public boolean equals(Object obj) { - if (this == obj) + if (this == obj) { return true; - if (obj == null) + } + if (obj == null) { return false; - if (getClass() != obj.getClass()) + } + if (getClass() != obj.getClass()) { return false; + } GridInfoRecord other = (GridInfoRecord) obj; if (datasetId == null) { - if (other.datasetId != null) + if (other.datasetId != null) { return false; - } else if (!datasetId.equals(other.datasetId)) + } + } else if (!datasetId.equals(other.datasetId)) { return false; + } if (ensembleId == null) { - if (other.ensembleId != null) + if (other.ensembleId != null) { return false; - } else if (!ensembleId.equals(other.ensembleId)) + } + } else if (!ensembleId.equals(other.ensembleId)) { return false; + } if (level == null) { - if (other.level != null) + if (other.level != null) { return false; - } else if (!level.equals(other.level)) + } + } else if (!level.equals(other.level)) { return false; + } if (location == null) { - if (other.location != null) + if (other.location != null) { return false; - } else if (!location.equals(other.location)) + } + } else if (!location.equals(other.location)) { return false; + } if (parameter == null) { - if (other.parameter != null) + if (other.parameter != null) { return false; - } else if (!parameter.equals(other.parameter)) + } + } else if (!parameter.equals(other.parameter)) { return false; + } if (secondaryId == null) { - if (other.secondaryId != null) + if (other.secondaryId != null) { return false; - } else if (!secondaryId.equals(other.secondaryId)) + } + } else if (!secondaryId.equals(other.secondaryId)) { return false; + } return true; } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridRecord.java index 5e37c83a82..9dba5f39f6 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/GridRecord.java @@ -22,9 +22,6 @@ package com.raytheon.uf.common.dataplugin.grid; import java.util.HashMap; import java.util.Map; -import javax.persistence.Access; -import javax.persistence.AccessType; -import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.ManyToOne; import javax.persistence.PrimaryKeyJoinColumn; @@ -44,6 +41,7 @@ import com.raytheon.uf.common.geospatial.ISpatialEnabled; import com.raytheon.uf.common.geospatial.ISpatialObject; import com.raytheon.uf.common.gridcoverage.GridCoverage; import com.raytheon.uf.common.parameter.Parameter; +import com.raytheon.uf.common.parameter.lookup.ParameterLookup; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -68,6 +66,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * PluginDataObject. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Dec 16, 2013 2574 bsteffen Remove getDecoderGettable. + * Apr 15, 2014 2060 njensen Remove dataURI column + * May 07, 2014 2060 njensen GridRecord(String) will do parameter lookup * * * @@ -76,13 +76,13 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @Entity @SequenceGenerator(initialValue = 1, name = PluginDataObject.ID_GEN, sequenceName = "gridseq") -@Table(name = "grid", uniqueConstraints = { @UniqueConstraint(columnNames = { "dataURI" }) }) /* - * Both refTime and forecastTime are included in the refTimeIndex since - * forecastTime is unlikely to be used. + * No need for a separate refTime/forecastTime index since its included in grid + * unique constraint */ -@org.hibernate.annotations.Table(appliesTo = "grid", indexes = { @Index(name = "grid_refTimeIndex", columnNames = { - "refTime", "forecastTime" }) }) +@Table(name = "grid", uniqueConstraints = { @UniqueConstraint(columnNames = { + "refTime", "forecastTime", "info_id", "rangestart", "rangeend" }) }) +@org.hibernate.annotations.Table(appliesTo = "grid", indexes = { @Index(name = "grid_info_id_index", columnNames = { "info_id" }) }) @DynamicSerialize public class GridRecord extends PersistablePluginDataObject implements ISpatialEnabled { @@ -118,6 +118,14 @@ public class GridRecord extends PersistablePluginDataObject implements public GridRecord(String uri) { super(uri); + String abbrev = this.getInfo().getParameter().getAbbreviation(); + if (abbrev != null) { + Parameter paramWithUnits = ParameterLookup.getInstance() + .getParameter(abbrev); + if (paramWithUnits != null) { + this.getInfo().setParameter(paramWithUnits); + } + } } public GridInfoRecord getInfo() { @@ -254,13 +262,6 @@ public class GridRecord extends PersistablePluginDataObject implements return true; } - @Override - @Column - @Access(AccessType.PROPERTY) - public String getDataURI() { - return super.getDataURI(); - } - @Override public String getPluginName() { return "grid"; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataaccess/GridDataAccessFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataaccess/GridDataAccessFactory.java index 4ac0ecd2b9..e5e1cb5adb 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataaccess/GridDataAccessFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataaccess/GridDataAccessFactory.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -38,7 +38,6 @@ import com.raytheon.uf.common.dataaccess.exception.DataRetrievalException; import com.raytheon.uf.common.dataaccess.grid.IGridData; import com.raytheon.uf.common.dataaccess.impl.AbstractGridDataPluginFactory; import com.raytheon.uf.common.dataaccess.impl.DefaultGridData; -import com.raytheon.uf.common.dataaccess.util.DataWrapperUtil; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.grid.GridConstants; import com.raytheon.uf.common.dataplugin.grid.GridRecord; @@ -46,27 +45,35 @@ import com.raytheon.uf.common.dataplugin.grid.dataquery.GridQueryAssembler; import com.raytheon.uf.common.dataplugin.grid.mapping.DatasetIdMapper; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.level.mapping.LevelMapper; +import com.raytheon.uf.common.dataquery.requests.DbQueryRequest; import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.requests.RequestConstraint.ConstraintType; -import com.raytheon.uf.common.datastorage.records.IDataRecord; +import com.raytheon.uf.common.dataquery.responses.DbQueryResponse; +import com.raytheon.uf.common.numeric.source.DataSource; import com.raytheon.uf.common.parameter.mapping.ParameterMapper; import com.raytheon.uf.common.util.mapping.Mapper; /** * Data access factory for accessing data from the Grid plugin as grid types. - * + * *
- * 
+ *
  * SOFTWARE HISTORY
- * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 17, 2013            bsteffen     Initial creation
- * Feb 14, 2013 1614       bsteffen    Refactor data access framework to use
- *                                     single request.
- * 
+ *
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 17, 2013           bsteffen    Initial creation
+ * Feb 14, 2013  1614     bsteffen    Refactor data access framework to use
+ *                                    single request.
+ * Feb 04, 2014  2672     bsteffen    Enable requesting subgrids.
+ * Jul 30, 2014  3184     njensen     Renamed valid identifiers to optional
+ * Sep 09, 2014  3356     njensen     Remove CommunicationException
+ * Oct 16, 2014  3598     nabowle     Accept level identifiers.
+ * Oct 21, 2014  3755     nabowle     Add getAvailable levels and parameters.
+ *
+ *
  * 
- * + * * @author bsteffen * @version 1.0 */ @@ -78,10 +85,12 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory private static final String[] VALID_IDENTIFIERS = { GridConstants.DATASET_ID, GridConstants.SECONDARY_ID, - GridConstants.ENSEMBLE_ID, NAMESPACE }; + GridConstants.ENSEMBLE_ID, NAMESPACE, + GridConstants.MASTER_LEVEL_NAME, GridConstants.LEVEL_ONE, + GridConstants.LEVEL_TWO }; @Override - public String[] getValidIdentifiers() { + public String[] getOptionalIdentifiers() { return VALID_IDENTIFIERS; } @@ -106,6 +115,9 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory } if (request.getLevels() != null) { + checkForLevelConflict(request.getLevels(), + request.getIdentifiers()); + for (Level level : request.getLevels()) { assembler.setMasterLevelName(level.getMasterLevel() .getName()); @@ -149,6 +161,18 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory assembler.setSecondaryId(identifiers.get( GridConstants.SECONDARY_ID).toString()); } + if (identifiers.containsKey(GridConstants.MASTER_LEVEL_NAME)) { + assembler.setMasterLevelName(identifiers.get( + GridConstants.MASTER_LEVEL_NAME).toString()); + } + if (identifiers.containsKey(GridConstants.LEVEL_ONE)) { + assembler.setLevelOneValue((Double) identifiers + .get(GridConstants.LEVEL_ONE)); + } + if (identifiers.containsKey(GridConstants.LEVEL_TWO)) { + assembler.setLevelTwoValue((Double) identifiers + .get(GridConstants.LEVEL_TWO)); + } } mergeConstraintMaps(assembler.getConstraintMap(), result); } catch (CommunicationException e) { @@ -157,10 +181,37 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory return result; } + /** + * Check for possible level conflicts. + * + * @param levels + * The request levels. Assumed to not be null. + * @param identifiers + * The request identifiers. + * @throws DataRetrievalException + * if levels is not empty and at least one of the + * {@link GridConstants#MASTER_LEVEL_NAME}, + * {@link GridConstants#LEVEL_ONE}, or + * {@link GridConstants#LEVEL_TWO} identifiers is specified. + */ + private void checkForLevelConflict(Level[] levels, + Map identifiers) { + if (levels.length > 0 + && identifiers != null + && (identifiers.containsKey(GridConstants.MASTER_LEVEL_NAME) + || identifiers.containsKey(GridConstants.LEVEL_ONE) || identifiers + .containsKey(GridConstants.LEVEL_TWO))) { + throw new DataRetrievalException( + "Conflict between the request levels and request " + + "identifiers. Please set the levels either as" + + " identifiers or as levels, not both."); + } + } + /** * Copy all constraints from source to target. If target already contains a * constraint for a key then merge the values into target. - * + * * @param target * @param source */ @@ -187,7 +238,7 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory @Override protected IGridData constructGridDataResponse(IDataRequest request, PluginDataObject pdo, GridGeometry2D gridGeometry, - IDataRecord dataRecord) { + DataSource dataSource) { if (pdo instanceof GridRecord == false) { throw new DataRetrievalException(this.getClass().getSimpleName() + " cannot handle " + pdo.getClass().getSimpleName()); @@ -210,8 +261,8 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory parameter, namespace, requestParameters); if (identifiers.containsKey(GridConstants.DATASET_ID)) { - List requestedDatasets = Arrays.asList(identifiers.get(GridConstants.DATASET_ID) - .toString()); + List requestedDatasets = Arrays.asList(identifiers.get( + GridConstants.DATASET_ID).toString()); datasetId = reverseResolveMapping( DatasetIdMapper.getInstance(), datasetId, namespace, requestedDatasets); @@ -221,21 +272,19 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory double leveltwo = requestLevel.getLeveltwovalue(); String master = requestLevel.getMasterLevel().getName(); Unit unit = requestLevel.getMasterLevel().getUnit(); - try { - // instead of doing reverse mapping just do a forward - // mapping on everything they requested and compare to what - // they got. - Set levels = LevelMapper.getInstance().lookupLevels( - master, namespace, levelone, leveltwo, unit); - for (Level l : levels) { - if (level.equals(l)) { - level = requestLevel; - break; - } + + // instead of doing reverse mapping just do a forward + // mapping on everything they requested and compare to what + // they got. + Set levels = LevelMapper.getInstance().lookupLevels( + master, namespace, levelone, leveltwo, unit); + for (Level l : levels) { + if (level.equals(l)) { + level = requestLevel; + break; } - } catch (CommunicationException e) { - throw new DataRetrievalException(e); } + if (level == requestLevel) { // we found one. break; @@ -243,8 +292,8 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory } } - DefaultGridData defaultGridData = new DefaultGridData( - DataWrapperUtil.constructArrayWrapper(dataRecord), gridGeometry); + DefaultGridData defaultGridData = new DefaultGridData(dataSource, + gridGeometry); defaultGridData.setDataTime(pdo.getDataTime()); defaultGridData.setParameter(parameter); defaultGridData.setLevel(level); @@ -275,5 +324,33 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory return getAvailableLocationNames(request, GridConstants.DATASET_ID); } + /** + * Get the available levels. + */ + @Override + public Level[] getAvailableLevels(IDataRequest request) { + DbQueryRequest dbQueryRequest = buildDbQueryRequest(request); + dbQueryRequest.setDistinct(Boolean.TRUE); + dbQueryRequest.addRequestField(GridConstants.LEVEL); + DbQueryResponse dbQueryResponse = this.executeDbQueryRequest( + dbQueryRequest, request.toString()); + return dbQueryResponse + .getFieldObjects(GridConstants.LEVEL, Level.class); + } + + /** + * Get the available parameter abbreviations. + */ + @Override + public String[] getAvailableParameters(IDataRequest request) { + DbQueryRequest dbQueryRequest = buildDbQueryRequest(request); + dbQueryRequest.setDistinct(Boolean.TRUE); + dbQueryRequest.addRequestField(GridConstants.PARAMETER_ABBREVIATION); + + DbQueryResponse dbQueryResponse = this.executeDbQueryRequest( + dbQueryRequest, request.toString()); + return dbQueryResponse.getFieldObjects( + GridConstants.PARAMETER_ABBREVIATION, String.class); + } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataset/DatasetInfoLookup.java b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataset/DatasetInfoLookup.java index 54fadee3f5..8835b01e67 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataset/DatasetInfoLookup.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/dataset/DatasetInfoLookup.java @@ -28,8 +28,8 @@ import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationFile; import com.raytheon.uf.common.localization.PathManagerFactory; -import com.raytheon.uf.common.serialization.JAXBManager; import com.raytheon.uf.common.serialization.SerializationException; +import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; @@ -46,6 +46,7 @@ import com.raytheon.uf.common.status.UFStatus; * ------------- -------- ----------- -------------------------- * Feb 27, 2012 bsteffen Initial creation * Dec 16, 2013 2574 bsteffen Update deprecated method call. + * Jul 21, 2014 3373 bclement changed to use single type JAXB manager * * * @@ -72,9 +73,10 @@ public class DatasetInfoLookup { } private void init() { - JAXBManager manager = null; + SingleTypeJAXBManager manager = null; try { - manager = new JAXBManager(DatasetInfoSet.class); + manager = new SingleTypeJAXBManager(true, + DatasetInfoSet.class); } catch (JAXBException e) { statusHandler .error("Error loading context for DatasetInfo, no datasetInfo will be loaded.", @@ -98,8 +100,8 @@ public class DatasetInfoLookup { return; } try { - DatasetInfoSet set = manager.unmarshalFromXmlFile( - DatasetInfoSet.class, file.getFile()); + DatasetInfoSet set = manager.unmarshalFromXmlFile(file + .getFile()); for (DatasetInfo info : set.getInfos()) { infoMap.put(info.getDatasetId(), info); } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/GridLevelTranslator.java b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/GridLevelTranslator.java index 3932bd1603..ff122d4a68 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/GridLevelTranslator.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/GridLevelTranslator.java @@ -40,7 +40,7 @@ import com.raytheon.uf.common.style.level.SingleLevel; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 30, 2007 chammack Initial Creation. - * + * May 1, 2014 DCS 027 MPorricelli Add WBZ level * * * @author chammack @@ -83,6 +83,8 @@ public class GridLevelTranslator { level = new SingleLevel(Level.LevelType.TEMP); } else if (levelType.equalsIgnoreCase("FRZ")) { level = new SingleLevel(Level.LevelType.FRZ); + } else if (levelType.equalsIgnoreCase("WBZ")) { + level = new SingleLevel(Level.LevelType.WBZ); } else { return new SingleLevel(Level.LevelType.DEFAULT); } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/StaticGridData.java b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/StaticGridData.java index fb4d813f72..d201284569 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/StaticGridData.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/src/com/raytheon/uf/common/dataplugin/grid/util/StaticGridData.java @@ -19,6 +19,7 @@ **/ package com.raytheon.uf.common.dataplugin.grid.util; +import java.lang.ref.SoftReference; import java.util.HashMap; import java.util.Map; @@ -32,11 +33,14 @@ import com.vividsolutions.jts.geom.Coordinate; /** * A class for calculating and caching static data for grids. * + * Orignally ported from GridAccessor5.C + * *
  * SOFTWARE HISTORY
- * Date			Ticket#		Engineer	Description
+ * Date         Ticket#     Engineer    Description
  * ------------	----------	-----------	--------------------------
- * Jul 24, 2008				brockwoo	Initial creation
+ * Jul 24, 2008             brockwoo    Initial creation
+ * Oct 21, 2014 3721        dlovely     Optimized for reduced memory usage
  * 
  * 
* @@ -45,7 +49,7 @@ import com.vividsolutions.jts.geom.Coordinate; */ public class StaticGridData { - private static Map instanceMap = new HashMap(); + private static Map> instanceMap = new HashMap>(); private static final double R_EARTH = 6370.0; @@ -61,11 +65,17 @@ public class StaticGridData { public static synchronized StaticGridData getInstance( GridCoverage gridCoverage) { - StaticGridData rval = instanceMap.get(gridCoverage); + SoftReference data = instanceMap.get(gridCoverage); - if (rval == null) { + StaticGridData rval = null; + if (null != data) { + rval = data.get(); + } + + if (null == data || null == rval) { rval = new StaticGridData(gridCoverage); - instanceMap.put(gridCoverage, rval); + data = new SoftReference(rval); + instanceMap.put(gridCoverage, data); } return rval; @@ -83,6 +93,13 @@ public class StaticGridData { return this.dy; } + /** + * Initializes the Dx, Dy and Coriolis data from the provided + * {@link GridCoverage}. + * + * @param gridCoverage + * Grid Coverage. + */ private void initStaticData(GridCoverage gridCoverage) { int nx = gridCoverage.getNx(); int ny = gridCoverage.getNy(); @@ -91,52 +108,73 @@ public class StaticGridData { float[] dxPtr = new float[n]; float[] dyPtr = new float[n]; float[] avgPtr = new float[n]; - double[] xx = new double[n]; - double[] yy = new double[n]; - double[] zz = new double[n]; + float[] xxU = new float[nx]; + float[] xxC = new float[nx]; + float[] xxD = new float[nx]; + float[] yyU = new float[nx]; + float[] yyC = new float[nx]; + float[] yyD = new float[nx]; + float[] zzU = new float[nx]; + float[] zzC = new float[nx]; + float[] zzD = new float[nx]; + + float[] tmpXX, tmpYY, tmpZZ; + int i, j, k; - for (j = k = 0; j < ny; j++) { - for (i = 0; i < nx; i++, k++) { - Coordinate location = new Coordinate(i, j); - Coordinate latLon = MapUtil.gridCoordinateToLatLon(location, - PixelOrientation.CENTER, gridCoverage); - latLon.x = Math.toRadians(latLon.x); - latLon.y = Math.toRadians(latLon.y); - xx[k] = Math.cos(latLon.y); - yy[k] = xx[k] * Math.sin(latLon.x); - xx[k] *= Math.cos(latLon.x); - zz[k] = Math.sin(latLon.y); - _coriolis[k] = (float) (zz[k] * 1.458e-4); - } + // Populate Up rows. + for (i = 0; i < nx; i++) { + Coordinate location = new Coordinate(i, 1); + Coordinate latLon = MapUtil.gridCoordinateToLatLon(location, + PixelOrientation.CENTER, gridCoverage); + latLon.x = Math.toRadians(latLon.x); + latLon.y = Math.toRadians(latLon.y); + xxU[i] = (float) Math.cos(latLon.y); + yyU[i] = (float) (xxU[i] * Math.sin(latLon.x)); + xxU[i] *= Math.cos(latLon.x); + zzU[i] = (float) Math.sin(latLon.y); } - this.coriolis = newRecord(_coriolis, nx, ny); + // Populate Current rows. + for (i = 0; i < nx; i++) { + Coordinate location = new Coordinate(i, 0); + Coordinate latLon = MapUtil.gridCoordinateToLatLon(location, + PixelOrientation.CENTER, gridCoverage); + latLon.x = Math.toRadians(latLon.x); + latLon.y = Math.toRadians(latLon.y); + xxC[i] = (float) Math.cos(latLon.y); + yyC[i] = (float) (xxC[i] * Math.sin(latLon.x)); + xxC[i] *= Math.cos(latLon.x); + zzC[i] = (float) Math.sin(latLon.y); + } - int up, dn, lft, rgt; - long _nxm = nx - 1; + // Init Down as a copy of Current + System.arraycopy(xxC, 0, xxD, 0, nx); + System.arraycopy(yyC, 0, yyD, 0, nx); + System.arraycopy(zzC, 0, zzD, 0, nx); + + int lft, rgt; double d; double icomp, jcomp, kcomp; double dmax = 0.0; - dn = 0; - up = nx; + for (j = k = 0; j < ny; j++) { - if (up >= n) { - up -= nx; - } - lft = k; + + lft = 0; for (i = 0; i < nx; i++, k++) { - rgt = (i < _nxm ? k + 1 : k); - icomp = yy[lft] * zz[rgt] - zz[lft] * yy[rgt]; - jcomp = zz[lft] * xx[rgt] - xx[lft] * zz[rgt]; - kcomp = xx[lft] * yy[rgt] - yy[lft] * xx[rgt]; + _coriolis[k] = (float) (zzC[i] * 1.458e-4); + rgt = (i < nx - 1 ? i + 1 : i); + icomp = yyC[lft] * zzC[rgt] - zzC[lft] * yyC[rgt]; + jcomp = zzC[lft] * xxC[rgt] - xxC[lft] * zzC[rgt]; + kcomp = xxC[lft] * yyC[rgt] - yyC[lft] * xxC[rgt]; d = Math.sqrt(icomp * icomp + jcomp * jcomp + kcomp * kcomp); dxPtr[k] = (float) (Math.asin(d) * 1000.0 * R_EARTH / (rgt - lft)); - icomp = yy[dn] * zz[up] - zz[dn] * yy[up]; - jcomp = zz[dn] * xx[up] - xx[dn] * zz[up]; - kcomp = xx[dn] * yy[up] - yy[dn] * xx[up]; + icomp = yyD[i] * zzU[i] - zzD[i] * yyU[i]; + jcomp = zzD[i] * xxU[i] - xxD[i] * zzU[i]; + kcomp = xxD[i] * yyU[i] - yyD[i] * xxU[i]; d = Math.sqrt(icomp * icomp + jcomp * jcomp + kcomp * kcomp); - dyPtr[k] = (float) (Math.asin(d) * 1000.0 * R_EARTH * nx / (up - dn)); + dyPtr[k] = (float) (Math.asin(d) * 1000.0 * R_EARTH * (j == 0 + || j == (ny - 1) ? 1 : 0.5)); avgPtr[k] = (dxPtr[k] + dyPtr[k]) / 2.0f; d = dxPtr[k] - dyPtr[k]; if (d < 0) { @@ -146,14 +184,52 @@ public class StaticGridData { if (d > dmax) { dmax = d; } - dn++; - up++; - lft = k; + if (i != 0) { + lft++; + } } - if (j == 0) { - dn = 0; + + // Move Current to Down and Up to Current. + tmpXX = xxD; + xxD = xxC; + xxC = xxU; + + tmpYY = yyD; + yyD = yyC; + yyC = yyU; + + tmpZZ = zzD; + zzD = zzC; + zzC = zzU; + + // Construct the next Up row with new data unless this is the last + // pass then duplicate the current row. + if (j < ny - 2) { + // Populate the next Up row. + xxU = tmpXX; + yyU = tmpYY; + zzU = tmpZZ; + for (i = 0; i < nx; i++) { + Coordinate location = new Coordinate(i, j + 2); + Coordinate latLon = MapUtil.gridCoordinateToLatLon( + location, PixelOrientation.CENTER, gridCoverage); + latLon.x = Math.toRadians(latLon.x); + latLon.y = Math.toRadians(latLon.y); + xxU[i] = (float) Math.cos(latLon.y); + yyU[i] = (float) (xxU[i] * Math.sin(latLon.x)); + xxU[i] *= Math.cos(latLon.x); + zzU[i] = (float) Math.sin(latLon.y); + } + } else { + // If the last run, Duplicate the Current row to the Up row. + xxU = xxC; + yyU = yyC; + zzU = zzC; } } + + this.coriolis = newRecord(_coriolis, nx, ny); + if (dmax > 0.01) { this.dx = newRecord(dxPtr, nx, ny); this.dy = newRecord(dyPtr, nx, ny); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml index 53d3e64124..63611a4de6 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml @@ -64,13 +64,13 @@ GFSensemble NAM95 NAMWX - NAM-12km - AK-NAM-12km + NAM12 + AK-NAM12 NAM Bufr NAM80 AK-GFS SJU-GFS - Guam-GFS + Guam-GFSDNG GFS360 GFS40 GFS90 @@ -84,11 +84,11 @@ TPC-HurWind HawHurWind SPE - NAM-40km + NAM40 NAM20 - AK-NAM-40km + AK-NAM40 AK-NAM20 - PR-NAM-12km + PR-NAM12 AK-GriddedMOS GriddedMOS MPE @@ -128,4 +128,4 @@ UKMET UKMET WNAwave - + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dArrowStyleRules.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dArrowStyleRules.xml index 3879db62cb..52b707a4d9 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dArrowStyleRules.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dArrowStyleRules.xml @@ -132,4 +132,14 @@ g*m/(kg*s) + + + OGRD + BARO + + + cm/sec + 0.20 + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml index 09512fbe9a..25c2dd7e78 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml @@ -19,6 +19,22 @@ further_licensing_information. --> + + + + ELEV + ETSRG + ETCWL + + + ft + NoPlane + + 1 + + + + + + + MaxWHRRR + + + kts + + 10 + + + + + + HRRR + CPOFP + + + % + + 0 10 20 30 40 50 60 70 80 90 100 + + + + - NAM-40km - NAM-40km + mesoEta212 + NAM40 GH GHxSM @@ -196,13 +237,13 @@ m | 1.0 | 0.0 | 4 | i4 | X |LH|8000F0FF|,,,150 | 0 | 15 - - NAM-40km - NAM-40km + mesoEta212 + NAM40 GH GHxSM @@ -219,13 +260,13 @@ dam | 0.1 | 0.0 | 4 | i4 | X |LH|8000F0FF|,,,150 | 0 | 3 - - NAM-40km - NAM-40km + mesoEta212 + NAM40 GH GHxSM @@ -758,13 +799,13 @@ m/s| 1.0 | 0.0 | 4 | | |..|8000F0FF| | 0 | 5 - - NAM-40km - NAM-40km + mesoEta212 + NAM40 mesoEta215 NAM20 AV @@ -809,13 +850,13 @@ m/s| 1.0 | 0.0 | 4 | | |..|8000F0FF| | 0 | 5 - - NAM-40km - NAM-40km + mesoEta212 + NAM40 VAdv dVAdv @@ -3962,6 +4003,7 @@ kts | 1.0 | 0.0 | 4 | | |..|8000F0FF|,400,0.5,,0 | 8 | \ HiResW-ARW-AK HiResW-ARW-PR HiResW-ARW-SJU + HRRR ((g/kg)/h*12)*-1.0 @@ -4080,6 +4122,7 @@ in | .03937 | 0 | 4 | | |..|8000F0FF| | 16 | \ HiResW-ARW-AK HiResW-ARW-PR HiResW-ARW-SJU + HRRR (Pa/s)*-0.1 @@ -4100,6 +4143,7 @@ in | .03937 | 0 | 4 | | |..|8000F0FF| | 16 | \ HiResW-ARW-AK HiResW-ARW-PR HiResW-ARW-SJU + HRRR AV RV geoVort @@ -4127,6 +4171,7 @@ in | .03937 | 0 | 4 | | |..|8000F0FF| | 16 | \ HiResW-ARW-AK HiResW-ARW-PR HiResW-ARW-SJU + HRRR VAdv dVAdv PIVA @@ -4159,4 +4204,41 @@ in | .03937 | 0 | 4 | | |..|8000F0FF| | 16 | \ + + + TEMPWTR + + + C + + + + + + zAGL + GH + + + + + + ft + + 1000 + + + + + + + SPC + OGRD + BARO + SPBARO + + + cm/sec + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridImageryStyleRules.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridImageryStyleRules.xml index 96c5908fd0..332e3dd8fa 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridImageryStyleRules.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridImageryStyleRules.xml @@ -39,7 +39,50 @@ + + + + ELEV + ETSRG + ETCWL + + + ft + + + + + + MaxWHRRR + + + kts + Grid/gridded data + + + + + HRRR + CPOFP + + + false + % + + -50 + 100 + + Grid/gridded data + + + + + + + + + @@ -2210,8 +2253,8 @@ J/kg - 1 - 450 + -1000 + -1 Grid/gridded data @@ -2220,14 +2263,14 @@ NBE ETA - NAM-40km + mesoEta212 ETA207 mesoEta216 mesoEta217 @@ -2240,8 +2283,8 @@ J/kg - 1 - 450 + -1000 + -1 Grid/gridded data @@ -4005,7 +4048,7 @@ - Surge10pct6hr - Surge10pctRun - Surge20pct6hr - Surge20pctRun - Surge30pct6hr - Surge30pctRun - Surge40pct6hr - Surge40pctRun - Surge50pct6hr - Surge50pctRun + TPCSurgeProb + Surge10pctCumul_wTide + Surge20pctCumul_wTide + Surge30pctCumul_wTide + Surge40pctCumul_wTide + Surge50pctCumul_wTide + Surge10pctIncr_PHISH + Surge20pctIncr_PHISH + Surge30pctIncr_PHISH + Surge40pctIncr_PHISH + Surge50pctIncr_PHISH + Surge10pctCumul_PHISH + Surge20pctCumul_PHISH + Surge30pctCumul_PHISH + Surge40pctCumul_PHISH + Surge50pctCumul_PHISH ft + NoPlane - 0 + -5 35 Grid/gridded data - 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 + -5 -3 0 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 + - - PSurge0ft6hr - PSurge0ftRun - PSurge10ft6hr - PSurge10ftRun - PSurge11ft6hr - PSurge11ftRun - PSurge12ft6hr - PSurge12ftRun - PSurge13ft6hr - PSurge13ftRun - PSurge14ft6hr - PSurge14ftRun - PSurge15ft6hr - PSurge15ftRun - PSurge16ft6hr - PSurge16ftRun - PSurge17ft6hr - PSurge17ftRun - PSurge18ft6hr - PSurge18ftRun - PSurge19ft6hr - PSurge19ftRun - PSurge1ft6hr - PSurge1ftRun - PSurge20ft6hr - PSurge20ftRun - PSurge21ftRun - PSurge22ftRun - PSurge23ftRun - PSurge24ftRun - PSurge25ftRun - PSurge2ft6hr - PSurge2ftRun - PSurge3ft6hr - PSurge3ftRun - PSurge4ft6hr - PSurge4ftRun - PSurge5ft6hr - PSurge5ftRun - PSurge6ft6hr - PSurge6ftRun - PSurge7ft6hr - PSurge7ftRun - PSurge8ft6hr - PSurge8ftRun - PSurge9ft6hr - PSurge9ftRun + TPCSurgeProb + PSurge2ftCumul_wTide + PSurge3ftCumul_wTide + PSurge4ftCumul_wTide + PSurge5ftCumul_wTide + PSurge6ftCumul_wTide + PSurge7ftCumul_wTide + PSurge8ftCumul_wTide + PSurge9ftCumul_wTide + PSurge10ftCumul_wTide + PSurge11ftCumul_wTide + PSurge12ftCumul_wTide + PSurge13ftCumul_wTide + PSurge14ftCumul_wTide + PSurge15ftCumul_wTide + PSurge16ftCumul_wTide + PSurge17ftCumul_wTide + PSurge18ftCumul_wTide + PSurge19ftCumul_wTide + PSurge20ftCumul_wTide + PSurge21ftCumul_wTide + PSurge22ftCumul_wTide + PSurge23ftCumul_wTide + PSurge24ftCumul_wTide + PSurge25ftCumul_wTide + PSurge0ftIncr_PHISH + PSurge1ftIncr_PHISH + PSurge2ftIncr_PHISH + PSurge3ftIncr_PHISH + PSurge4ftIncr_PHISH + PSurge5ftIncr_PHISH + PSurge6ftIncr_PHISH + PSurge7ftIncr_PHISH + PSurge8ftIncr_PHISH + PSurge9ftIncr_PHISH + PSurge10ftIncr_PHISH + PSurge11ftIncr_PHISH + PSurge12ftIncr_PHISH + PSurge13ftIncr_PHISH + PSurge14ftIncr_PHISH + PSurge15ftIncr_PHISH + PSurge16ftIncr_PHISH + PSurge17ftIncr_PHISH + PSurge18ftIncr_PHISH + PSurge19ftIncr_PHISH + PSurge20ftIncr_PHISH + PSurge0ftCumul_PHISH + PSurge1ftCumul_PHISH + PSurge2ftCumul_PHISH + PSurge3ftCumul_PHISH + PSurge4ftCumul_PHISH + PSurge5ftCumul_PHISH + PSurge6ftCumul_PHISH + PSurge7ftCumul_PHISH + PSurge8ftCumul_PHISH + PSurge9ftCumul_PHISH + PSurge10ftCumul_PHISH + PSurge11ftCumul_PHISH + PSurge12ftCumul_PHISH + PSurge13ftCumul_PHISH + PSurge14ftCumul_PHISH + PSurge15ftCumul_PHISH + PSurge16ftCumul_PHISH + PSurge17ftCumul_PHISH + PSurge18ftCumul_PHISH + PSurge19ftCumul_PHISH + PSurge20ftCumul_PHISH % + NoPlane 0 100 @@ -4441,6 +4505,7 @@ HiResW-ARW-AK HiResW-ARW-PR HiResW-ARW-SJU + HRRR ((g/kg)/(h*12))*-0.001 @@ -4815,6 +4880,7 @@ HiResW-ARW-AK HiResW-ARW-PR HiResW-ARW-SJU + HRRR (Pa/s)*-0.1 @@ -4840,6 +4906,7 @@ HiResW-ARW-AK HiResW-ARW-PR HiResW-ARW-SJU + HRRR AV Tdef geoVort @@ -4892,4 +4959,571 @@ + + + TEMPWTR + + + C + + + + + + zAGL + GH + + + + + + ft + + 0 + 20000 + + Grid/gridded data + + 5000 + + + + + + + EchoTop18 + EchoTop30 + EchoTop50 + EchoTop60 + + + false + kft + + 0 + 70 + + mrms/mrmsEchoTops + + + + + + + + + + + + + + + + + HeightCompositeReflectivity + + + false + kft + + 0 + 70 + + mrms/mrmsEchoTops + + + + + + + + + + + + + + + + + H50AboveM20C + H60AboveM20C + H50Above0C + H60Above0C + + + false + kft + + -20 + 35 + + mrms/mrmsThickness + + + + + + + + + + + + + + + + + + + + LightningDensity1min + LightningDensity5min + LightningDensity15min + LightningDensity30min + + + false + *1 + + -0.19 + 50 + + mrms/mrmsLightning + + + + + + + + + + + + + + + + + + + + + + + + + + LightningProbabilityNext30min + + + false + % + + 0 + 100 + + mrms/mrmsPOSH + + + + + + + + + + + + + + + + + + + MESH + MESHTrack30min + MESHTrack60min + MESHTrack120min + MESHTrack240min + MESHTrack360min + MESHTrack1440min + + + false + in + + 0 + 4.0 + + mrms/mrmsHail + + + + + + + + + + + + + + + + + + MergedAzShear02kmAGL + MergedAzShear36kmAGL + RotationTrackLL30min + RotationTrackLL60min + RotationTrackLL120min + RotationTrackLL240min + RotationTrackLL360min + RotationTrackLL1440min + RotationTrackML30min + RotationTrackML60min + RotationTrackML120min + RotationTrackML240min + RotationTrackML360min + RotationTrackML1440min + + + false + *1 + + 0 + 25 + + mrms/mrmsRotation + + + + + + + + + + + + + + + + + + + + + + PrecipType + + + false + *1 + + 0 + 100 + + mrms/mrmsPrecipType + + + + + + + + + + + + + + + + PrecipRate + + + false + in/h + + -0.05 + 12.0 + + + mrms/mrmsSPRDP + + + + + + + + + + + + + + + + + + + RadarQualityIndex + + + false + *1 + + 0 + 1 + + mrms/mrmsRQI + + + + + + + + + + + + + + + + + + + MergedReflectivityQCComposite + MergedReflectivityQC + Reflectivity0C + ReflectivityM5C + ReflectivityM10C + ReflectivityM15C + ReflectivityM20C + ReflectivityAtLowestAltitude + SeamlessHSR + + + false + *1 + + -34 + 82 + + mrms/mrmsReflectivity + + + + + + + + + + + + + + + + + + + + RadarOnlyQPE01H + RadarOnlyQPE03H + RadarOnlyQPE06H + RadarOnlyQPE12H + RadarOnlyQPE24H + RadarOnlyQPE48H + RadarOnlyQPE72H + GaugeCorrQPE01H + GaugeCorrQPE03H + GaugeCorrQPE06H + GaugeCorrQPE12H + GaugeCorrQPE24H + GaugeCorrQPE48H + GaugeCorrQPE72H + GaugeOnlyQPE01H + GaugeOnlyQPE03H + GaugeOnlyQPE06H + GaugeOnlyQPE12H + GaugeOnlyQPE24H + GaugeOnlyQPE48H + GaugeOnlyQPE72H + MountainMapperQPE01H + MountainMapperQPE03H + MountainMapperQPE06H + MountainMapperQPE12H + MountainMapperQPE24H + MountainMapperQPE48H + MountainMapperQPE72H + + + false + in + + -0.05 + 12.0 + + mrms/mrmsQPEDP + + + + + + + + + + + + + + + + + + + + + + + + + POSH + + + false + % + + 0 + 100 + + mrms/mrmsPOSH + + + + + + + + + + + + + + + + + + + SHI + + + false + *1 + + -1 + 450 + + mrms/mrmsSHI + + + + + + + + + + + + + + + + + + + + + + + + + VII + + + false + kg*m^-2 + + -1 + 40 + + mrms/mrmsVII + + + + + + + + + + + + + + + + + MRMSVIL + + + false + kg*m^-2 + + -34.00 + 82.00 + + mrms/mrmsVIL + + + + + + + + + + + + + + + + + + + SPC + OGRD + BARO + SPBARO + + + cm/sec + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridReprojectionRules.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridReprojectionRules.xml index b996a043eb..46345d0c3b 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridReprojectionRules.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/gridReprojectionRules.xml @@ -36,6 +36,5 @@ --> - \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.ldadhydro/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.ldadhydro/META-INF/MANIFEST.MF index 6dac136c48..37bcf00663 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.ldadhydro/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.ldadhydro/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Ldadhydro Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.ldadhydro -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.dataplugin.annotations, com.raytheon.uf.common.dataplugin.persist, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.ldadmesonet/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.ldadmesonet/META-INF/MANIFEST.MF index b820892007..03ad3d020d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.ldadmesonet/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.ldadmesonet/META-INF/MANIFEST.MF @@ -2,20 +2,13 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Ldadmesonet Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.ldadmesonet -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Require-Bundle: com.raytheon.edex.common, - com.raytheon.uf.common.pointdata;bundle-version="1.11.16", - com.raytheon.uf.edex.pointdata;bundle-version="1.11.16", - javax.persistence, - javax.measure, - com.raytheon.uf.common.dataplugin -Import-Package: com.raytheon.uf.common.status, - com.raytheon.uf.edex.decodertools.core, - com.raytheon.uf.edex.decodertools.time, - com.vividsolutions.jts.geom, - org.apache.commons.logging -Export-Package: com.raytheon.uf.common.dataplugin.ldadmesonet, - com.raytheon.uf.common.dataplugin.ldadmesonet.dao +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Import-Package: com.raytheon.uf.common.geospatial, + com.raytheon.uf.common.serialization.annotations, + com.vividsolutions.jts.geom +Export-Package: com.raytheon.uf.common.dataplugin.ldadmesonet +Require-Bundle: javax.persistence, + com.raytheon.uf.common.dataplugin, + com.raytheon.uf.common.pointdata diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/META-INF/MANIFEST.MF index 9b409a2784..ed7ce188ad 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Lsr Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.lsr -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.pointdata, org.geotools, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/src/com/raytheon/uf/common/dataplugin/lsr/LocalStormReport.java b/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/src/com/raytheon/uf/common/dataplugin/lsr/LocalStormReport.java index 39d08765ef..d826012799 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/src/com/raytheon/uf/common/dataplugin/lsr/LocalStormReport.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.lsr/src/com/raytheon/uf/common/dataplugin/lsr/LocalStormReport.java @@ -30,8 +30,6 @@ import javax.measure.quantity.Velocity; import javax.measure.unit.NonSI; import javax.measure.unit.SI; import javax.measure.unit.Unit; -import javax.persistence.Access; -import javax.persistence.AccessType; import javax.persistence.Column; import javax.persistence.Embedded; import javax.persistence.Entity; @@ -73,6 +71,7 @@ import com.vividsolutions.jts.geom.Geometry; * Dec 10, 2013 2581 njensen Removed dataURI column * Jan 15, 2014 2581 njensen Changed constraint to use officeId instead of stationId * Jan 30, 2014 2581 njensen Added dataURI column back in + * Sep 16, 2014 2707 bclement removed dataURI column, event type now string, added event units * * * @@ -82,8 +81,8 @@ import com.vividsolutions.jts.geom.Geometry; @Entity @SequenceGenerator(initialValue = 1, name = PluginDataObject.ID_GEN, sequenceName = "lsrseq") @Table(name = "lsr", uniqueConstraints = { @UniqueConstraint(columnNames = { -// "latitude", "longitude", "officeId", "refTime", "forecastTime", "eventType" -"dataURI" }) }) + "latitude", "longitude", "officeId", "refTime", "forecastTime", + "eventType" }) }) /* * Both refTime and forecastTime are included in the refTimeIndex since * forecastTime is unlikely to be used. @@ -118,7 +117,11 @@ public class LocalStormReport extends PersistablePluginDataObject implements @DataURI(position = 1) @Column @DynamicSerializeElement - private LSREventType eventType; + private String eventType; + + @Transient + @DynamicSerializeElement + private String eventUnits; // Correction indicator from wmo header @Column @@ -210,7 +213,7 @@ public class LocalStormReport extends PersistablePluginDataObject implements /** * @return the eventType */ - public LSREventType getEventType() { + public String getEventType() { return eventType; } @@ -218,10 +221,25 @@ public class LocalStormReport extends PersistablePluginDataObject implements * @param eventType * the eventType to set */ - public void setEventType(LSREventType eventType) { + public void setEventType(String eventType) { this.eventType = eventType; } + /** + * @return the eventUnits + */ + public String getEventUnits() { + return eventUnits; + } + + /** + * @param eventUnits + * the eventUnits to set + */ + public void setEventUnits(String eventUnits) { + this.eventUnits = eventUnits; + } + /** * @return the corIndicator */ @@ -407,6 +425,7 @@ public class LocalStormReport extends PersistablePluginDataObject implements * * @param dataURI */ + @SuppressWarnings("unchecked") @Override public void setDataURI(String dataURI) { super.setDataURI(dataURI); @@ -441,7 +460,11 @@ public class LocalStormReport extends PersistablePluginDataObject implements * @return The geometry latitude. */ public double getLatitude() { - return location.getLatitude(); + if (location == null) { + return Double.NaN; + } else { + return location.getLatitude(); + } } /** @@ -450,7 +473,11 @@ public class LocalStormReport extends PersistablePluginDataObject implements * @return The geometry longitude. */ public double getLongitude() { - return location.getLongitude(); + if (location == null) { + return Double.NaN; + } else { + return location.getLongitude(); + } } /** @@ -459,7 +486,11 @@ public class LocalStormReport extends PersistablePluginDataObject implements * @return the stationId */ public String getStationId() { - return location.getStationId(); + if (location == null) { + return null; + } else { + return location.getStationId(); + } } /** @@ -502,9 +533,8 @@ public class LocalStormReport extends PersistablePluginDataObject implements } sb.append(String.format("%6.2f %7.2f:", getLatitude(), getLongitude())); sb.append(String.format("%s:", cityLoc)); - sb.append(String.format("%s:", eventType.getEventName())); - sb.append(String.format("%5.2f:%s", getMagnitude(), getEventType() - .getEventUnits())); + sb.append(String.format("%s:", eventType)); + sb.append(String.format("%5.2f:%s", getMagnitude(), eventUnits)); return sb.toString(); } @@ -513,10 +543,4 @@ public class LocalStormReport extends PersistablePluginDataObject implements return "lsr"; } - @Override - @Column - @Access(AccessType.PROPERTY) - public String getDataURI() { - return super.getDataURI(); - } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.madis/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.madis/META-INF/MANIFEST.MF index fbd2829be3..3f884ff841 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.madis/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.madis/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Madis Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.madis -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Export-Package: com.raytheon.uf.common.dataplugin.madis Require-Bundle: javax.persistence;bundle-version="1.0.0", @@ -11,7 +11,6 @@ Require-Bundle: javax.persistence;bundle-version="1.0.0", com.raytheon.uf.common.pointdata;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", javax.measure;bundle-version="1.0.0", - com.raytheon.edex.common;bundle-version="1.12.1174", com.raytheon.uf.common.status;bundle-version="1.12.1174" Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-ActivationPolicy: lazy diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.madis/src/com/raytheon/uf/common/dataplugin/madis/MadisRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.madis/src/com/raytheon/uf/common/dataplugin/madis/MadisRecord.java index 4281638162..01dec9ace1 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.madis/src/com/raytheon/uf/common/dataplugin/madis/MadisRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.madis/src/com/raytheon/uf/common/dataplugin/madis/MadisRecord.java @@ -76,6 +76,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Dec 10, 2013 2616 mpduff Added stationId to the unique constraint * jan 22, 2014 2713 dhladky Calendar conversion. * Mar 21, 2014 2939 dhladky Fixed mismatches in HDF5, DB records. + * Jan 08, 2014 3141 dhladky Bad index for WFS requests. * * * @@ -88,7 +89,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @Table(name = "madis", uniqueConstraints = { @UniqueConstraint(columnNames = { "latitude", "longitude", "stationId", "refTime", "provider", "subProvider", "restriction" }) }) @org.hibernate.annotations.Table(appliesTo = "madis", indexes = { @Index(name = "madis_wfsQueryIndex", columnNames = { - "refTime", "location" }), }) + "insertTime", "location" }), }) @DynamicSerialize public class MadisRecord extends PersistablePluginDataObject implements ISpatialEnabled, IPointData { diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/META-INF/MANIFEST.MF index 64cb28447d..e047ce88e9 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/META-INF/MANIFEST.MF @@ -4,9 +4,8 @@ Bundle-Name: Model Sounding Data Plugin Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.modelsounding Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization Require-Bundle: com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.pointdata, com.raytheon.uf.common.geospatial, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/src/com/raytheon/uf/common/dataplugin/modelsounding/ModelSoundingPointDataTransform.java b/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/src/com/raytheon/uf/common/dataplugin/modelsounding/ModelSoundingPointDataTransform.java index fd45a331cd..88a1a3a12d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/src/com/raytheon/uf/common/dataplugin/modelsounding/ModelSoundingPointDataTransform.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.modelsounding/src/com/raytheon/uf/common/dataplugin/modelsounding/ModelSoundingPointDataTransform.java @@ -62,6 +62,7 @@ import com.raytheon.uf.common.time.DataTime; * ------------- -------- ----------- -------------------------- * Apr 06, 2011 bsteffen Initial creation * Dec 02, 2013 2537 bsteffen Move to common + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -156,11 +157,11 @@ public class ModelSoundingPointDataTransform { // All of these things would have been in dataURI if (parameters.contains(LATITUDE)) { site.getLocation().setLatitude( - pdv.getNumber(LATITUDE).doubleValue()); + pdv.getNumber(LATITUDE).floatValue()); } if (parameters.contains(LONGITUDE)) { site.getLocation().setLongitude( - pdv.getNumber(LONGITUDE).doubleValue()); + pdv.getNumber(LONGITUDE).floatValue()); } if (parameters.contains(STATION_ID)) { site.getLocation().setStationId(pdv.getString(STATION_ID)); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/.classpath b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/.classpath index ad32c83a78..1fa3e6803d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/.classpath +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/.classpath @@ -1,6 +1,6 @@ - + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/META-INF/MANIFEST.MF index a72caad9dd..4798dbde34 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.crimss/META-INF/MANIFEST.MF @@ -2,11 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Crimss Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.npp.crimss -Bundle-Version: 1.0.0.qualifier -Eclipse-BuddyPolicy: registered, ext, global -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.npp.crimss Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.dataplugin.npp.sounding;bundle-version="1.0.0";visibility:=reexport, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.sounding/src/com/raytheon/uf/common/dataplugin/npp/sounding/NPPSoundingRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.sounding/src/com/raytheon/uf/common/dataplugin/npp/sounding/NPPSoundingRecord.java index 1d10a44087..5e846688f9 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.sounding/src/com/raytheon/uf/common/dataplugin/npp/sounding/NPPSoundingRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.sounding/src/com/raytheon/uf/common/dataplugin/npp/sounding/NPPSoundingRecord.java @@ -29,7 +29,6 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; @@ -45,12 +44,13 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Jan 3, 2013 mschenke Initial creation - * Apr 12, 2013 1857 bgonzale Changed to MappedSuperclass. - * Mar 02, 2013 1970 bgonzale Added SequenceGenerator and Inheritance Strategy - * annotations. + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Jan 03, 2013 mschenke Initial creation + * Apr 12, 2013 1857 bgonzale Changed to MappedSuperclass. + * Mar 02, 2013 1970 bgonzale Added SequenceGenerator and Inheritance Strategy + * annotations. + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable * * * @@ -86,11 +86,6 @@ public abstract class NPPSoundingRecord extends PersistablePluginDataObject @DynamicSerializeElement private Double longitude; - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - /** * @return the latitude */ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/META-INF/MANIFEST.MF index 4f6aab3073..57fb84185f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/META-INF/MANIFEST.MF @@ -2,10 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: VIIRS Common Dataplugin Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.npp.viirs -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, org.geotools +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Eclipse-RegisterBuddy: org.geotools Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", javax.persistence;bundle-version="1.0.0", diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjection.java b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjection.java index 86365f2910..446489518f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjection.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjection.java @@ -62,6 +62,8 @@ import com.vividsolutions.jts.geom.LineSegment; * algorithm to use great circle intersections for * more accurate results * Aug 27, 2013 #2190 mschenke Sped up transform functions + * Mar 27, 2014 #2015 njensen Overrode getParameterValues() + * Oct 08, 2014 #3674 bsteffen Bug fixes. * * * @@ -148,6 +150,24 @@ public class VIIRSMapProjection extends MapProjection { return Provider.PARAMETERS; } + @Override + public ParameterValueGroup getParameterValues() { + final ParameterDescriptorGroup descriptor = getParameterDescriptors(); + final ParameterValueGroup values = descriptor.createValue(); + values.parameter(CENTER_LATITUDES).setValue(centerLats); + values.parameter(CENTER_LONGITUDES).setValue(centerLons); + values.parameter(DIRECTIONS).setValue(directions); + values.parameter(CENTER_LENGTH).setValue(actualHeight); + values.parameter(RESOLUTION).setValue(resolution); + values.parameter(SEMI_MAJOR).setValue( + VIIRSMapProjectionFactory.SEMI_MINOR_MAJOR_VALUE); + values.parameter(SEMI_MINOR).setValue( + VIIRSMapProjectionFactory.SEMI_MINOR_MAJOR_VALUE); + values.parameter(Provider.CENTRAL_MERIDIAN.getName().getCode()) + .setValue(Provider.CENTRAL_MERIDIAN.getDefaultValue()); + return values; + } + /* * (non-Javadoc) * @@ -314,6 +334,11 @@ public class VIIRSMapProjection extends MapProjection { Coordinate a = index(xi, closestY); Coordinate b = index(xi, closestY2); + if (a.x - b.x > 180) { + b.x += 360; + } else if (b.x - a.x > 180) { + a.x += 360; + } LineSegment ls = new LineSegment(a, b); c = ls.pointAlong(-Math.abs(yDiff)); } @@ -504,7 +529,7 @@ public class VIIRSMapProjection extends MapProjection { // Compute potential bestY grid value bestY = actualHeight - idxToUse - 0.5; // Compute bestY value based on hypotenuse and angle diff in grid space - bestY = bestY * resolution - best.yDist * radius; + bestY = bestY * resolution + best.yDist * radius; Point2D point = ptDst != null ? ptDst : new Point2D.Double(); point.setLocation(bestX, bestY); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjectionFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjectionFactory.java index 3b7c5234a6..edb1204a2a 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjectionFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.npp.viirs/src/com/raytheon/uf/common/dataplugin/npp/viirs/projection/VIIRSMapProjectionFactory.java @@ -19,7 +19,6 @@ **/ package com.raytheon.uf.common.dataplugin.npp.viirs.projection; -import org.geotools.referencing.crs.DefaultProjectedCRS; import org.geotools.referencing.operation.DefaultMathTransformFactory; import org.opengis.parameter.ParameterValueGroup; import org.opengis.referencing.FactoryException; @@ -38,6 +37,7 @@ import com.raytheon.uf.common.geospatial.MapUtil; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 16, 2012 mschenke Initial creation + * Mar 27, 2014 2015 njensen Made semi minor/major a constant * * * @@ -50,6 +50,12 @@ public class VIIRSMapProjectionFactory { /** Using single factory is faster due to internal caching */ private static DefaultMathTransformFactory dmtFactory = new DefaultMathTransformFactory(); + /** + * MapProjection requires semi_major/minor but our projection does not use + * them + */ + protected static final double SEMI_MINOR_MAJOR_VALUE = 1.0; + public static ProjectedCRS construct(VIIRSSpatialCoverage record) throws FactoryException { try { @@ -65,10 +71,10 @@ public class VIIRSMapProjectionFactory { record.getDirections()); group.parameter(VIIRSMapProjection.RESOLUTION).setValue( record.getDy().doubleValue()); - // MapProjection requires semi_major/minor but our projection does - // not use them - group.parameter(VIIRSMapProjection.SEMI_MAJOR).setValue(1.0); - group.parameter(VIIRSMapProjection.SEMI_MINOR).setValue(1.0); + group.parameter(VIIRSMapProjection.SEMI_MAJOR).setValue( + SEMI_MINOR_MAJOR_VALUE); + group.parameter(VIIRSMapProjection.SEMI_MINOR).setValue( + SEMI_MINOR_MAJOR_VALUE); return MapUtil.constructProjection( VIIRSMapProjection.PROJECTION_NAME, group); } catch (Exception e) { diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.obs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.obs/META-INF/MANIFEST.MF index 39366cc321..3679edde51 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.obs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.obs/META-INF/MANIFEST.MF @@ -2,11 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Obs Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.obs -Bundle-Version: 1.13.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-ActivationPolicy: lazy -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.obs.metar, com.raytheon.uf.common.dataplugin.obs.metar.util Require-Bundle: com.raytheon.uf.common.dataplugin, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.obs/res/spring/obs-common-dataaccess.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.obs/res/spring/obs-common-dataaccess.xml index 628f126dec..0cedfddaba 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.obs/res/spring/obs-common-dataaccess.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.obs/res/spring/obs-common-dataaccess.xml @@ -1,12 +1,39 @@ - + - - - - - - - + + + + + + + + + + skyCover + skyLayerBase + skyCoverType + skyCoverGenus + + + + + + + + + + + + presWeather + + + + + + + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.obs/src/com/raytheon/uf/common/dataplugin/obs/metar/MetarRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.obs/src/com/raytheon/uf/common/dataplugin/obs/metar/MetarRecord.java index 15caba37ac..5e75b7c804 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.obs/src/com/raytheon/uf/common/dataplugin/obs/metar/MetarRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.obs/src/com/raytheon/uf/common/dataplugin/obs/metar/MetarRecord.java @@ -22,22 +22,12 @@ package com.raytheon.uf.common.dataplugin.obs.metar; import java.util.ArrayList; import java.util.Calendar; -import java.util.Collection; -import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.SortedSet; import java.util.TreeSet; -import javax.measure.quantity.Angle; -import javax.measure.quantity.Length; -import javax.measure.quantity.Pressure; -import javax.measure.quantity.Temperature; -import javax.measure.quantity.Velocity; -import javax.measure.unit.NonSI; -import javax.measure.unit.SI; -import javax.measure.unit.Unit; import javax.persistence.Access; import javax.persistence.AccessType; import javax.persistence.Column; @@ -54,7 +44,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.obs.metar.util.SkyCover; @@ -75,29 +64,31 @@ import com.raytheon.uf.common.time.util.TimeUtil; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- --------------------------------------- - * Feb 14, 2007 139 bphillip Initial creation - * Nov 15, 2007 njensen Added static units info. - * Nov 29, 2007 472 jkorman Added IDecoderGettable interface. - * Dec 04, 2007 472 jkorman getValue was using wrong select value. - * Dec 07, 2007 452 bphillip Added station lat/lon - * Dec 17, 2007 472 jkorman Changed to use ALTIMETER_UNIT. - * Dec 21, 2007 666 jkorman Modified to default all numerics to - * -9999. - * Apr 23, 2009 2338 jsanchez Implemented precip plots, cloud/vis. - * Added @DynamicSerializeElement to - * location. - * May 28, 2009 2225 jsanchez Implemented tempFromTenths and - * dewPointFromTenths. - * Jun 29, 2009 2538 jsanchez Made the sort public. - * Apr 04, 2013 1846 bkowal Added an index on refTime and - * forecastTime - * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. - * May 07, 2013 1869 bsteffen Remove dataURI column from - * PluginDataObject. - * Aug 30, 2013 2298 rjpeter Make getPluginName abstract - * Feb 11, 2014 2784 rferrel Remove override of setIdentifier. + * Date Ticket# Engineer Description + * ------------- -------- ----------- --------------------------------------- + * Feb 14, 2007 139 bphillip Initial creation + * Nov 15, 2007 njensen Added static units info. + * Nov 29, 2007 472 jkorman Added IDecoderGettable interface. + * Dec 04, 2007 472 jkorman getValue was using wrong select value. + * Dec 07, 2007 452 bphillip Added station lat/lon + * Dec 17, 2007 472 jkorman Changed to use ALTIMETER_UNIT. + * Dec 21, 2007 666 jkorman Modified to default all numerics to -9999 + * Apr 23, 2009 2338 jsanchez Implemented precip plots, cloud/vis. + * Added @DynamicSerializeElement to + * location. + * May 28, 2009 2225 jsanchez Implemented tempFromTenths and + * dewPointFromTenths. + * Jun 29, 2009 2538 jsanchez Made the sort public. + * Apr 04, 2013 1846 bkowal Added an index on refTime and + * forecastTime + * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. + * May 07, 2013 1869 bsteffen Remove dataURI column from + * PluginDataObject. + * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Feb 11, 2014 2784 rferrel Remove override of setIdentifier. + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable + * Jul 23, 2014 3410 bclement location changed to floats + * * * * @author bphillip @@ -116,147 +107,13 @@ import com.raytheon.uf.common.time.util.TimeUtil; @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public class MetarRecord extends PersistablePluginDataObject implements - ISpatialEnabled, IDecoderGettable, IPointData { + ISpatialEnabled, IPointData { public static final String PLUGIN_NAME = "obs"; - public static final String STATION_ID = "stationId"; - - public static final Unit TEMPERATURE_UNIT = SI.CELSIUS; - - public static final Unit WIND_SPEED_UNIT = NonSI.KNOT; - - public static final Unit HEIGHT_UNIT = SI.METER; - - public static final Unit VISIBILITY_UNIT = SI.KILO(NonSI.MILE); - - public static final Unit WIND_DIR_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit LOCATION_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit PRESSURE_UNIT = SI.HECTO(SI.PASCAL); - - public static final Unit ALTIMETER_UNIT = SI.PASCAL; - - public static final Unit PRECIP_UNIT = NonSI.INCH; - - /** Metar specific parameter keys */ - public static final class ParameterKey { - public static final String SFC_ALTIMETER = "SFC.PRESS.ALTIMETER"; - - public static final String PRESSURE_CHANGE = "PCHNG"; - - public static final String VISIBILITY = "VIS"; - - public static final String PRECIPITATION_1HR = "PR1HR"; - - public static final String PRECIPITATION_3HR = "PR3HR"; - - public static final String PRECIPITATION_6HR = "PR6HR"; - - public static final String PRECIPITATION_24HR = "PR24HR"; - } - - /** Parameter keys used in the legacy system */ - public static final class LegacyParameterKey { - - public static final String TEMPERATURE = "T"; - - public static final String DEW_POINT = "DpT"; - - public static final String WIND_SPEED = "wSp"; - - public static final String WIND_DIRECTION = "WD"; - - public static final String WIND_GUST = "Gust"; - - public static final String ALTIMETER = "Alti"; - - public static final String SEA_LEVEL_PRESSURE = "msl-P"; - - public static final String PRESSURE_CHANGE_3HR = "PT3"; - - public static final String VISABILITY = "Vis"; - - public static final String PRECIPITATION_1HR = "TP"; - - public static final String PRECIPITATION_3HR = "TP3hr"; - - public static final String PRECIPITATION_6HR = "TP6hr"; - - public static final String PRECIPITATION_24HR = "TP24hr"; - - // public static final String SNOW_DEPTH = "snow"; - // - // public static final String SNOW_WATER = "weqs"; - // - // public static final String SNOWFALL6_HOUR = "TP24hr"; - // - // public static final String SUNSHINE = "msun"; - // - // public static final String TEMP_MAX_6HOUR = "t6xc"; - // - // public static final String TEMP_MIN_6HOUR = "t6nc"; - - private String value; - - /** - * - * @param value - * the value of this legacy parameter key - */ - public void setValue(String value) { - this.value = value; - } - - /** - * - * @return the value of this legacy parameter key - */ - public String getValue() { - return value; - } - - } - /** Serializable id * */ private static final long serialVersionUID = 1L; - /** - * Maps common AWIPS I keys to IDecoderGettable and newer parameter key - * constants - */ - private static final HashMap PARM_MAP = new HashMap(); - static { - PARM_MAP.put(LegacyParameterKey.TEMPERATURE, SFC_TEMP); - PARM_MAP.put(LegacyParameterKey.DEW_POINT, SFC_DWPT); - PARM_MAP.put(LegacyParameterKey.WIND_SPEED, SFC_WNDSPD); - PARM_MAP.put(LegacyParameterKey.WIND_DIRECTION, SFC_WNDDIR); - PARM_MAP.put(LegacyParameterKey.WIND_GUST, SFC_WNDGST); - PARM_MAP.put(LegacyParameterKey.ALTIMETER, ParameterKey.SFC_ALTIMETER); - PARM_MAP.put(LegacyParameterKey.SEA_LEVEL_PRESSURE, PRES_SLP); - PARM_MAP.put("NLAT", STA_LAT); - PARM_MAP.put("NLON", STA_LON); - PARM_MAP.put(LegacyParameterKey.PRESSURE_CHANGE_3HR, - ParameterKey.PRESSURE_CHANGE); - // PARM_MAP.put("T24", "T24"); // not used - // PARM_MAP.put("DpT24", "DpT24"); // not used - // PARM_MAP.put("WS24", "WS24"); // not used - // PARM_MAP.put("WD24", "WD24"); // not used - // PARM_MAP.put("WGS24", "WGS24"); // not used - // PARM_MAP.put("ASET24", "ASET24"); // not used - // PARM_MAP.put("HIWC", "HIWC"); // not used - PARM_MAP.put(LegacyParameterKey.VISABILITY, ParameterKey.VISIBILITY); - PARM_MAP.put(LegacyParameterKey.PRECIPITATION_1HR, - ParameterKey.PRECIPITATION_1HR); - PARM_MAP.put(LegacyParameterKey.PRECIPITATION_3HR, - ParameterKey.PRECIPITATION_3HR); - PARM_MAP.put(LegacyParameterKey.PRECIPITATION_6HR, - ParameterKey.PRECIPITATION_6HR); - PARM_MAP.put(LegacyParameterKey.PRECIPITATION_24HR, - ParameterKey.PRECIPITATION_24HR); - } - @Transient private String sampleType = null; @@ -1152,140 +1009,6 @@ public class MetarRecord extends PersistablePluginDataObject implements this.nominalTime = nominalTime; } - /** - * Get the IDecoderGettable reference for this record. - * - * @return The IDecoderGettable reference for this record. - */ - @Override - public IDecoderGettable getDecoderGettable() { - return this; - } - - /** - * Get the value of a parameter that is represented as a String. - * - * @param paramName - * The name of the parameter value to retrieve. - * @return The String value of the parameter. If the parameter is unknown, a - * null reference is returned. - */ - @Override - public String getString(String paramName) { - if ("STA".matches(paramName)) { - return getStationId(); - } - if ("WX".matches(paramName)) { - return this.weatherKey; - } - - return null; - } - - /* - * (non-Javadoc) - * - * @see - * com.raytheon.uf.common.dataplugin.IDecoderGettable#getValue(java.lang - * .String) - */ - @Override - public Amount getValue(String paramName) { - Amount a = null; - - String pName = paramName; - if (PARM_MAP.containsKey(paramName)) { - // we have recieved an AWIPS I parameter name - pName = PARM_MAP.get(paramName); - } - - if (SFC_TEMP.equals(pName)) { - if (tempFromTenths != -9999) { - a = new Amount(tempFromTenths, TEMPERATURE_UNIT); - } else if (temperature != -9999) { - a = new Amount(temperature, TEMPERATURE_UNIT); - } - } else if (SFC_DWPT.equals(pName)) { - if (dewPointFromTenths != -9999) { - a = new Amount(dewPointFromTenths, TEMPERATURE_UNIT); - } else if (dewPoint != -9999) { - a = new Amount(dewPoint, TEMPERATURE_UNIT); - } - } else if (SFC_WNDSPD.equals(pName)) { - a = new Amount(windSpeed, WIND_SPEED_UNIT); - } else if (SFC_WNDGST.equals(pName)) { - a = new Amount(windGust, WIND_SPEED_UNIT); - } else if (ParameterKey.PRESSURE_CHANGE.equals(pName) - && (pressChange3Hour != -9999)) { - a = new Amount(pressChange3Hour, PRESSURE_UNIT); - } else if (SFC_WNDDIR.equals(pName)) { - String windDir = getWindDir(); - if ((windDir != null) && !windDir.equalsIgnoreCase("VRB")) { - Double result = Double.parseDouble(windDir); - a = new Amount(result, WIND_DIR_UNIT); - } - } else if (PRES_ALTSG.equals(pName)) { - a = new Amount(altimeterInPa, ALTIMETER_UNIT); - } else if (STA_LAT.equals(pName)) { - a = new Amount(getLatitude(), LOCATION_UNIT); - } else if (STA_LON.equals(pName)) { - a = new Amount(getLongitude(), LOCATION_UNIT); - } else if (PRES_SLP.equals(pName)) { - a = new Amount(this.seaLevelPress, PRESSURE_UNIT); - } else if (pName.startsWith("HGT")) { - int start = "HGT".length(); - int index = Integer.parseInt(pName.substring(start)); - if ((index < skyCoverage.size()) - && (getSkyCover(index).getHeight() != null)) { - a = new Amount(getSkyCover(index).getHeight(), HEIGHT_UNIT); - } - } else if (pName.startsWith("HMSL")) { - int start = "HMSL".length(); - int index = Integer.parseInt(pName.substring(start)); - if ((index < skyCoverage.size()) - && (getSkyCover(index).getHeight() != null) - && (getSpatialObject() != null) - && (getSpatialObject().getElevation() != null)) { - a = new Amount(getSkyCover(index).getHeight() - + getSpatialObject().getElevation(), HEIGHT_UNIT); - } - } else if (ParameterKey.PRECIPITATION_1HR.equals(pName) - || ParameterKey.PRECIPITATION_24HR.equals(pName)) { - sampleType = "PR"; - if (precip1Hour != -9999) { - a = new Amount(precip1Hour, PRECIP_UNIT); - } - } else if (ParameterKey.PRECIPITATION_3HR.equals(pName)) { - sampleType = "PR"; - if (precip3Hour != -9999) { - a = new Amount(precip3Hour, PRECIP_UNIT); - } - } else if (ParameterKey.PRECIPITATION_6HR.equals(pName)) { - sampleType = "PR"; - if (precip6Hour != -9999) { - a = new Amount(precip6Hour, PRECIP_UNIT); - } - } else if (ParameterKey.VISIBILITY.equals(pName)) { - a = new Amount(visibility, VISIBILITY_UNIT); - } - - return a; - } - - /** - * Get the value and units of a named parameter within this observation that - * has a multiplicity greater than 1. - * - * @param paramName - * The name of the parameter value to retrieve. - * @return An Amount with value and units. If the parameter is unknown, a - * null reference is returned. - */ - @Override - public Collection getValues(String paramName) { - return null; - } - /** * Get the geometry latitude. * @@ -1313,38 +1036,6 @@ public class MetarRecord extends PersistablePluginDataObject implements return location.getElevation(); } - @Override - public String[] getStrings(String paramName) { - if ("SCV".matches(paramName)) { - ArrayList skyCoverage = new ArrayList(); - for (SkyCover sky : this.skyCoverage) { - skyCoverage.add(sky.getType()); - } - if (skyCoverage.size() > 0) { - return skyCoverage.toArray(new String[skyCoverage.size()]); - } - } else if ("WX".matches(paramName)) { - if (this.weatherKey != null) { - String[] presentWeather = { this.weatherKey }; - return presentWeather; - } - } else if (paramName.startsWith("CLD")) { - int start = "CLD".length(); - int index = Integer.parseInt(paramName.substring(start)); - String[] retVal = { "BLNK" }; - if (index < skyCoverage.size()) { - if (getSkyCover(index).getType() != null) { - retVal[0] = getSkyCover(index).getType(); - } - } - return retVal; - } else if (paramName.matches("CCHAR") && (pressChangeChar != null)) { - String[] changeChar = { pressChangeChar }; - return changeChar; - } - return null; - } - @Override public int hashCode() { final int PRIME = 31; @@ -1524,7 +1215,7 @@ public class MetarRecord extends PersistablePluginDataObject implements return false; } - Double lat = location.getLatitude(); + Float lat = location.getLatitude(); if (lat == null) { if (other.location.getLatitude() != null) { return false; @@ -1534,7 +1225,7 @@ public class MetarRecord extends PersistablePluginDataObject implements return false; } } - Double lon = location.getLongitude(); + Float lon = location.getLongitude(); if (lon == null) { if (other.location.getLongitude() != null) { return false; @@ -1648,16 +1339,6 @@ public class MetarRecord extends PersistablePluginDataObject implements return report; } - private SkyCover getSkyCover(int index) { - if (!isSkyCoverageSorted) { - isSkyCoverageSorted = true; - sort(skyCoverage); - } - SkyCover[] sc = skyCoverage.toArray(new SkyCover[skyCoverage.size()]); - return sc[index]; - - } - public void sort(Set skySet) { SortedSet skSet = new TreeSet(); for (SkyCover sc : skySet) { @@ -1689,10 +1370,6 @@ public class MetarRecord extends PersistablePluginDataObject implements this.pointDataView = pointDataView; } - public static Set getAvailableParameters() { - return PARM_MAP.keySet(); - } - @Override @Column @Access(AccessType.PROPERTY) @@ -1702,6 +1379,6 @@ public class MetarRecord extends PersistablePluginDataObject implements @Override public String getPluginName() { - return "obs"; + return PLUGIN_NAME; } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.poessounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.poessounding/META-INF/MANIFEST.MF index 2295fefcff..1a520d5c3c 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.poessounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.poessounding/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Poessounding Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.poessounding -Bundle-Version: 1.0.0.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.poessounding Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.preciprate/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.preciprate/META-INF/MANIFEST.MF index e181fabf76..3b907022bb 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.preciprate/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.preciprate/META-INF/MANIFEST.MF @@ -2,20 +2,18 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Perciprate Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.preciprate -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.uf.viz.core Require-Bundle: javax.persistence;bundle-version="1.0.0", com.raytheon.uf.common.serialization, org.geotools;bundle-version="2.5.2", com.raytheon.uf.common.monitor;bundle-version="1.11.5", - com.raytheon.uf.common.dataplugin.radar;bundle-version="1.0.0", + com.raytheon.uf.common.dataplugin.radar, javax.measure;bundle-version="1.0.0", com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.geospatial, com.raytheon.uf.common.datastorage Export-Package: com.raytheon.uf.common.dataplugin.preciprate -Import-Package: com.raytheon.uf.common.status, - org.apache.commons.logging +Import-Package: com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/META-INF/MANIFEST.MF index 9e80afc430..1b48b6677c 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/META-INF/MANIFEST.MF @@ -2,11 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Profiler Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.profiler -Bundle-Version: 1.13.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-ActivationPolicy: lazy -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.profiler, com.raytheon.uf.common.dataplugin.profiler.dao Require-Bundle: com.raytheon.uf.common.dataplugin, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/src/com/raytheon/uf/common/dataplugin/profiler/dao/ProfilerDataTransform.java b/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/src/com/raytheon/uf/common/dataplugin/profiler/dao/ProfilerDataTransform.java index adc09d76d9..740ca02158 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/src/com/raytheon/uf/common/dataplugin/profiler/dao/ProfilerDataTransform.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.profiler/src/com/raytheon/uf/common/dataplugin/profiler/dao/ProfilerDataTransform.java @@ -45,6 +45,7 @@ import com.raytheon.uf.common.time.util.TimeUtil; * ------------- -------- ----------- -------------------------- * Oct 28, 2009 jkorman Initial creation * Dec 03, 2013 2537 bsteffen Switch logger to ufstatus. + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -112,8 +113,8 @@ public class ProfilerDataTransform { int elev = pdv.getNumber("elevation").intValue(); location.setElevation(elev); - double lat = pdv.getNumber("latitude").doubleValue(); - double lon = pdv.getNumber("longitude").doubleValue(); + float lat = pdv.getNumber("latitude").floatValue(); + float lon = pdv.getNumber("longitude").floatValue(); location.assignLocation(lat, lon); location.setStationId(pdv.getString("stationId")); obs.setLocation(location); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.qc/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.qc/META-INF/MANIFEST.MF index 7be3aae700..546b93afde 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.qc/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.qc/META-INF/MANIFEST.MF @@ -2,17 +2,13 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Qc Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.qc -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization -Require-Bundle: com.raytheon.edex.common;bundle-version="1.11.17", - javax.persistence;bundle-version="1.0.0", - com.raytheon.uf.common.pointdata;bundle-version="1.12.1161", - com.raytheon.uf.edex.pointdata;bundle-version="1.12.1161", - com.raytheon.uf.common.python;bundle-version="1.12.1161", - org.jep;bundle-version="1.0.0", - com.raytheon.uf.common.localization;bundle-version="1.12.1161" -Export-Package: com.raytheon.uf.common.dataplugin.qc, - com.raytheon.uf.common.dataplugin.qc.internal -Import-Package: com.raytheon.uf.common.status +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Require-Bundle: com.raytheon.uf.common.dataplugin +Export-Package: com.raytheon.uf.common.dataplugin.qc +Import-Package: com.raytheon.uf.common.geospatial, + com.raytheon.uf.common.pointdata.spatial, + com.raytheon.uf.common.serialization.annotations, + com.raytheon.uf.common.status, + javax.persistence diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.qc/src/com/raytheon/uf/common/dataplugin/qc/QCRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.qc/src/com/raytheon/uf/common/dataplugin/qc/QCRecord.java index 1cfe4322e1..23e755f174 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.qc/src/com/raytheon/uf/common/dataplugin/qc/QCRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.qc/src/com/raytheon/uf/common/dataplugin/qc/QCRecord.java @@ -680,7 +680,7 @@ public class QCRecord extends PluginDataObject implements ISpatialEnabled { @Embeddable @DynamicSerialize - private static class FakePointDataView { + public static class FakePointDataView { @DynamicSerializeElement @Column(name = "idx") int curIdx; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.qpf/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.qpf/META-INF/MANIFEST.MF index f8dd63b523..5c77a40f73 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.qpf/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.qpf/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: QPF common Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.qpf -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.uf.viz.core -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.qpf Require-Bundle: javax.persistence;bundle-version="1.0.0", com.raytheon.uf.common.serialization, @@ -14,4 +13,3 @@ Require-Bundle: javax.persistence;bundle-version="1.0.0", com.raytheon.uf.common.geospatial, com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.datastorage -Import-Package: org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/META-INF/MANIFEST.MF index f1c84d1605..64a69705ea 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/META-INF/MANIFEST.MF @@ -2,28 +2,31 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Radar Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.radar -Bundle-Version: 1.0.0.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.uf.common.geospatial +Bundle-Version: 1.14.1.qualifier +Eclipse-RegisterBuddy: org.geotools Bundle-Vendor: RAYTHEON Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", com.raytheon.uf.common.localization;bundle-version="1.12.1174", com.raytheon.uf.common.status;bundle-version="1.12.1174", - com.raytheon.uf.common.geospatial;bundle-version="1.12.1174", + com.raytheon.uf.common.geospatial;bundle-version="1.14.0", com.raytheon.uf.common.datastorage;bundle-version="1.12.1174", com.raytheon.uf.common.dataquery;bundle-version="1.0.0", com.raytheon.uf.common.dataaccess;bundle-version="1.0.0", com.raytheon.uf.common.units;bundle-version="1.0.0", com.raytheon.uf.common.util;bundle-version="1.12.1174", javax.persistence;bundle-version="1.0.0", - org.hibernate;bundle-version="1.0.0" -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 + org.hibernate;bundle-version="1.0.0", + org.geotools;bundle-version="10.5.0", + com.raytheon.uf.common.numeric;bundle-version="1.14.0" +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.uf.common.dataplugin.radar, com.raytheon.uf.common.dataplugin.radar.level3, com.raytheon.uf.common.dataplugin.radar.level3.generic, com.raytheon.uf.common.dataplugin.radar.projection, com.raytheon.uf.common.dataplugin.radar.request, + com.raytheon.uf.common.dataplugin.radar.response, com.raytheon.uf.common.dataplugin.radar.units, com.raytheon.uf.common.dataplugin.radar.util diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarRecord.java index 7517138e3b..a185683bdc 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarRecord.java @@ -52,7 +52,6 @@ import org.geotools.referencing.GeodeticCalculator; import org.hibernate.annotations.Index; import org.opengis.referencing.crs.ProjectedCRS; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.IHDFFilePathProvider; @@ -116,24 +115,27 @@ import com.vividsolutions.jts.geom.Coordinate; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Feb 14, 2007 139 Phillippe Initial creation - * Sep 14, 2007 379 jkorman Added populateDataStore() and - * getPersistenceTime() from new - * IPersistable - * Oct 09, 2007 465 randerso Updated to better represent level 3 data - * Nov 29, 2007 472 jkorman Added IDecoderGettable interface. - * Mar 04, 2013 DCS51 zwang Handle MIGFA product - * Mar 18, 2013 1804 bsteffen Remove AlphanumericValues from radar - * HDF5. - * Apr 04, 2013 1846 bkowal Added an index on refTime and - * forecastTime - * Apr 08, 2013 1293 bkowal Removed references to hdffileid. - * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. - * May 07, 2013 1869 bsteffen Remove dataURI column from - * PluginDataObject. - * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Feb 14, 2007 139 Phillippe Initial creation + * Sep 14, 2007 379 jkorman Added populateDataStore() and + * getPersistenceTime() from new + * IPersistable + * Oct 09, 2007 465 randerso Updated to better represent level 3 data + * Nov 29, 2007 472 jkorman Added IDecoderGettable interface. + * Mar 04, 2013 DCS51 zwang Handle MIGFA product + * Mar 18, 2013 1804 bsteffen Remove AlphanumericValues from radar HDF5 + * Apr 04, 2013 1846 bkowal Added an index on refTime and + * forecastTime + * Apr 08, 2013 1293 bkowal Removed references to hdffileid. + * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. + * May 07, 2013 1869 bsteffen Remove dataURI column from + * PluginDataObject. + * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Dec 18, 2013 16002 kshrestha Added logic to match all dBZ values in + * the DHR with AWIPS1 + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable + * * * * @@ -890,6 +892,8 @@ public class RadarRecord extends PersistablePluginDataObject implements double[] pix = { 256 - nLevels, 255 }; if (getProductCode() == 155) { pix = new double[] { 129, 149 }; + } else if(getProductCode() == 32) { + pix = new double[]{ 2, 256 }; } double[] data = { offset, offset + ((nLevels - 1) * scale) }; @@ -962,17 +966,6 @@ public class RadarRecord extends PersistablePluginDataObject implements this.elevation = elevation; } - /** - * Get the IDecoderGettable reference for this record. - * - * @return The IDecoderGettable reference for this record. Null for this - * class. - */ - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - public RadarStation getLocation() { return location; } @@ -1189,19 +1182,12 @@ public class RadarRecord extends PersistablePluginDataObject implements private void addPacketData(double i, double j, int type, T currData, boolean needToConvert) { - addPacketData(i, j, "", type, RadarProductType.GENERAL, currData, + addPacketData(i, j, type, RadarProductType.GENERAL, currData, needToConvert); } private void addPacketData(double i, double j, int type, RadarProductType productType, T currData, boolean needToConvert) { - addPacketData(i, j, "", type, productType, currData, needToConvert); - } - - private void addPacketData(double i, double j, String stormID, - int type, RadarProductType productType, T currData, - boolean needToConvert) { - // Convert x/y to lon/lat if (needToConvert) { Coordinate coor; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarStation.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarStation.java index 15f247519c..16547ee0b7 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarStation.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/RadarStation.java @@ -35,7 +35,7 @@ import org.opengis.referencing.crs.CoordinateReferenceSystem; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.geospatial.ISpatialObject; -import com.raytheon.uf.common.serialization.adapters.GeometryAdapter; +import com.raytheon.uf.common.geospatial.adapter.GeometryAdapter; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.vividsolutions.jts.geom.Geometry; @@ -54,6 +54,7 @@ import com.vividsolutions.jts.geom.Point; * Jul 24, 2007 353 bphillip Initial Check in * Jul 16, 2013 2181 bsteffen Convert geometry types to use hibernate- * spatial + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -118,7 +119,7 @@ public class RadarStation extends PersistableDataObject implements private Float lon; @Column(name = "the_geom") - @Type(type = "org.hibernatespatial.GeometryUserType") + @Type(type = "org.hibernate.spatial.GeometryType") @XmlJavaTypeAdapter(value = GeometryAdapter.class) @DynamicSerializeElement private Point station; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/dataaccess/RadarGridFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/dataaccess/RadarGridFactory.java index f359722979..28a6fe0b8f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/dataaccess/RadarGridFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/dataaccess/RadarGridFactory.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -26,51 +26,66 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.TreeSet; import org.geotools.coverage.grid.GridGeometry2D; +import org.geotools.geometry.jts.ReferencedEnvelope; import org.opengis.referencing.FactoryException; import com.raytheon.uf.common.dataaccess.IDataFactory; import com.raytheon.uf.common.dataaccess.IDataRequest; import com.raytheon.uf.common.dataaccess.exception.DataRetrievalException; +import com.raytheon.uf.common.dataaccess.exception.EnvelopeProjectionException; import com.raytheon.uf.common.dataaccess.grid.IGridData; import com.raytheon.uf.common.dataaccess.impl.AbstractGridDataPluginFactory; import com.raytheon.uf.common.dataaccess.impl.DefaultGridData; -import com.raytheon.uf.common.dataaccess.util.DataWrapperUtil; import com.raytheon.uf.common.dataaccess.util.PDOUtil; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.level.MasterLevel; import com.raytheon.uf.common.dataplugin.radar.RadarRecord; -import com.raytheon.uf.common.dataplugin.radar.RadarStoredData; import com.raytheon.uf.common.dataplugin.radar.projection.RadarProjectionFactory; import com.raytheon.uf.common.dataplugin.radar.util.RadarDataRetriever; import com.raytheon.uf.common.dataplugin.radar.util.RadarInfo; import com.raytheon.uf.common.dataplugin.radar.util.RadarInfoDict; import com.raytheon.uf.common.dataplugin.radar.util.RadarUtil; +import com.raytheon.uf.common.dataquery.requests.DbQueryRequest; import com.raytheon.uf.common.dataquery.requests.RequestConstraint; import com.raytheon.uf.common.dataquery.requests.RequestConstraint.ConstraintType; -import com.raytheon.uf.common.datastorage.records.ByteDataRecord; -import com.raytheon.uf.common.datastorage.records.IDataRecord; -import com.raytheon.uf.common.geospatial.interpolation.data.DataSource; -import com.raytheon.uf.common.geospatial.interpolation.data.DataWrapper1D; +import com.raytheon.uf.common.dataquery.responses.DbQueryResponse; +import com.raytheon.uf.common.geospatial.util.SubGridGeometryCalculator; import com.raytheon.uf.common.localization.PathManagerFactory; +import com.raytheon.uf.common.numeric.buffer.ByteBufferWrapper; +import com.raytheon.uf.common.numeric.buffer.ShortBufferWrapper; +import com.raytheon.uf.common.numeric.filter.FillValueFilter; +import com.raytheon.uf.common.numeric.source.DataSource; import com.vividsolutions.jts.geom.Coordinate; +import com.vividsolutions.jts.geom.Envelope; /** * * A data factory for getting radar data from the metadata database. There are * currently not any required identifiers. * + * Radar does not return subgrids for request envelopes like other gridded + * types. Instead data for only icaos within the request envelope are returned + * and all data for the product is used. This is done because subgridding radial + * products is complex and this is not often what a caller actually wants. + * *
  * 
  * SOFTWARE HISTORY
  * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 23, 2013            bsteffen     Initial creation
- * Feb 14, 2013 1614       bsteffen    Refactor data access framework to use
- *                                     single request.
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 23, 2013           bsteffen    Initial creation
+ * Feb 14, 2013  1614     bsteffen    Refactor data access framework to use
+ *                                    single request.
+ * Feb 04, 2014  2672     bsteffen    Enable requesting icaos within envelope.
+ * Jul 30, 2014  3184     njensen     Overrode optional identifiers
+ * Oct 28, 2014  3755     nabowle     Implement getAvailableParameters, handle
+ *                                    empty parameters, fix error message, and
+ *                                    handle dataless radial radars.
  * 
  * 
* @@ -86,6 +101,10 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements private static final String ICAO = "icao"; + private static final String LONGITUDE = "longitude"; + + private static final String LATITUDE = "latitude"; + private static final String FORMAT = "format"; private static final String RADIAL_FORMAT = "Radial"; @@ -106,19 +125,9 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements @Override protected IGridData constructGridDataResponse(IDataRequest request, PluginDataObject pdo, GridGeometry2D gridGeometry, - IDataRecord dataRecord) { + DataSource dataSource) { RadarRecord radarRecord = asRadarRecord(pdo); - DataWrapper1D wrapper = DataWrapperUtil.constructArrayWrapper( - dataRecord, false); - wrapper.setFillValue(0); - DataSource source = wrapper; - if (radarRecord.getFormat().equals(RADIAL_FORMAT)) { - // The raw data is in bin,radial format but the grid geometries we - // use are radial,bin so need to do some swapping. - source = new AxisSwapDataSource(source, radarRecord.getNumBins()); - - } - DefaultGridData defaultGridData = new DefaultGridData(source, + DefaultGridData defaultGridData = new DefaultGridData(dataSource, gridGeometry); defaultGridData.setDataTime(pdo.getDataTime()); // reverse map parameter to match request. @@ -137,7 +146,7 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements defaultGridData.setUnit(radarRecord.getDataUnit()); defaultGridData.setLevel(getTiltLevel(radarRecord .getPrimaryElevationAngle())); - defaultGridData.setLocationName(radarRecord.getIcao()); + defaultGridData.setLocationName(generateLocationName(radarRecord)); Map attributes = new HashMap(); attributes.put(ICAO, radarRecord.getIcao()); @@ -148,6 +157,38 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements return defaultGridData; } + /** + * Get a unique name describing the location of the radar data. The name + * always includes icao, elevation angle, num bins and num radials. For + * radial data it also includes the first and last angle of the radial data. + * Theoretically two radial geometries could have the same name but + * internally different angleData but this is very unlikely and the points + * would be very nearly identical. + * + * + * @param radarRecord + * a record. + * @return A unique location name + */ + protected String generateLocationName(RadarRecord radarRecord) { + StringBuilder locationName = new StringBuilder(32); + locationName.append(radarRecord.getIcao()); + locationName.append("_"); + locationName.append(radarRecord.getTrueElevationAngle()); + locationName.append("_"); + locationName.append(radarRecord.getNumBins()); + locationName.append("_"); + locationName.append(radarRecord.getNumRadials()); + float[] angleData = radarRecord.getAngleData(); + if (angleData != null) { + locationName.append("_"); + locationName.append(angleData[0]); + locationName.append("_"); + locationName.append(angleData[angleData.length - 1]); + } + return locationName.toString(); + } + protected RadarRecord asRadarRecord(PluginDataObject pdo) { if (pdo instanceof RadarRecord == false) { throw new DataRetrievalException(this.getClass().getSimpleName() @@ -161,14 +202,23 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements RadarRecord radarRecord = asRadarRecord(pdo); if (radarRecord.getFormat().equals(RADIAL_FORMAT)) { try { + float[] angleData = radarRecord.getAngleData(); + if (angleData == null) { + populateRecord(radarRecord); + angleData = radarRecord.getAngleData(); + } + if (angleData == null) { + return null; + } + // NOTE: do not set swapXY=true even though it matches the raw // data better because there is lots of code, especially on the // Viz side that does not correctly handle the resulting // GridGeometry. return RadarProjectionFactory.constructGridGeometry( new Coordinate(radarRecord.getLongitude(), radarRecord - .getLatitude()), radarRecord.getAngleData(), - radarRecord.getGateResolution(), radarRecord + .getLatitude()), angleData, radarRecord + .getGateResolution(), radarRecord .getTrueElevationAngle(), radarRecord .getNumBins(), false); } catch (FactoryException e) { @@ -188,26 +238,88 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements } @Override - protected IDataRecord getDataRecord(PluginDataObject pdo) { + protected SubGridGeometryCalculator calculateSubGrid( + ReferencedEnvelope envelope, GridGeometry2D gridGeometry) + throws EnvelopeProjectionException { + /* + * The SubGridGeometryCalculator cannot accurately calculate subgrids + * into RadialBin projections. For this factory the request envelope is + * only used to limit the sites, not to subgrid. Returning null causes + * the super class to request a full grid. + */ + return null; + } + + @Override + protected DataSource getDataSource(PluginDataObject pdo, + SubGridGeometryCalculator subGrid) { RadarRecord radarRecord = asRadarRecord(pdo); + DataSource dataSource = getDataSource(radarRecord); + if (dataSource == null) { + /* + * Radial data prepopulates the record to get the gridGeometry but + * raster data waits until now. + */ + populateRecord(radarRecord); + dataSource = getDataSource(radarRecord); + if (dataSource == null) { + throw new DataRetrievalException("No grid data found for " + + radarRecord); + } + } + if (radarRecord.getFormat().equals(RADIAL_FORMAT)) { + /* + * The raw data is in bin,radial format but the grid geometries we + * use are radial,bin so need to do some swapping. + */ + dataSource = new AxisSwapDataSource(dataSource, + radarRecord.getNumBins()); + } + + return dataSource; + } + + /** + * Populate a DataSource from the raw data(byte or short) in the provided + * record. + * + * @param radarRecord + * @return a DataSource or null if the record is not populated or has no + * grid data. + */ + private DataSource getDataSource(RadarRecord radarRecord) { + int nx = radarRecord.getNumBins(); + int ny = radarRecord.getNumRadials(); + byte[] bytes = radarRecord.getRawData(); + if (bytes != null) { + ByteBufferWrapper wrapper = new ByteBufferWrapper(bytes, nx, ny); + return FillValueFilter.apply((DataSource) wrapper, 0); + } + short[] shorts = radarRecord.getRawShortData(); + if (shorts != null) { + ShortBufferWrapper wrapper = new ShortBufferWrapper(shorts, nx, ny); + return FillValueFilter.apply((DataSource) wrapper, 0); + } + return null; + + } + + protected void populateRecord(RadarRecord radarRecord) + throws DataRetrievalException { try { - RadarDataRetriever.populateRadarRecord(PDOUtil.getDataStore(pdo), - radarRecord); + RadarDataRetriever.populateRadarRecord( + PDOUtil.getDataStore(radarRecord), radarRecord); } catch (Exception e) { throw new DataRetrievalException(e); } - IDataRecord rec = new ByteDataRecord(RadarStoredData.RAW_DATA_ID, - radarRecord.getDataURI(), radarRecord.getRawData(), 2, - new long[] { radarRecord.getNumBins(), - radarRecord.getNumRadials() }); - return rec; } @Override protected Map buildConstraintsFromRequest( IDataRequest request) { Map constraints = new HashMap(); - if (request.getParameters() != null) { + if (request.getParameters() != null + && request.getParameters().length > 0) { Set codes = new HashSet(); for (String parameter : request.getParameters()) { codes.addAll(getProductCodesFromParameter(parameter)); @@ -219,21 +331,32 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements } constraints.put(PRODUCT_CODE, pcConstraint); } - if (request.getLevels() != null) { + Level[] levels = request.getLevels(); + if (levels != null && levels.length > 0) { RequestConstraint angleConstraint = new RequestConstraint(null, ConstraintType.IN); - for (Level level : request.getLevels()) { + for (Level level : levels) { angleConstraint.addToConstraintValueList(level .getLevelOneValueAsString()); } constraints.put(PRIMARY_ANGLE, angleConstraint); } - if (request.getLocationNames() != null) { - RequestConstraint icaoConstraint = new RequestConstraint(null, - ConstraintType.IN); - icaoConstraint.setConstraintValueList(request.getLocationNames()); - constraints.put(ICAO, icaoConstraint); + String[] locations = request.getLocationNames(); + if (locations != null && locations.length > 0) { + RequestConstraint rc = new RequestConstraint(locations); + constraints.put(ICAO, rc); + } + + if (request.getEnvelope() != null) { + Envelope envelope = request.getEnvelope(); + + String minLon = Double.toString(envelope.getMinX()); + String maxLon = Double.toString(envelope.getMaxX()); + constraints.put(LONGITUDE, new RequestConstraint(minLon, maxLon)); + String minLat = Double.toString(envelope.getMinY()); + String maxLat = Double.toString(envelope.getMaxY()); + constraints.put(LATITUDE, new RequestConstraint(minLat, maxLat)); } Map identifiers = request.getIdentifiers(); @@ -263,8 +386,8 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements } } if (codes.isEmpty()) { - // If any valid produt codes are founf then don't complain. - if (exception == null) { + // If any valid product codes are found then don't complain. + if (exception != null) { throw new DataRetrievalException(exception); } else { throw new DataRetrievalException(parameter @@ -304,21 +427,56 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements } /** - * + * Get the available parameters for {@link #SUPPORTED_FORMATS supported + * formats}. + */ + @Override + public String[] getAvailableParameters(IDataRequest request) { + DbQueryRequest dbQueryRequest = buildDbQueryRequest(request); + dbQueryRequest.addConstraint(FORMAT, new RequestConstraint( + SUPPORTED_FORMATS)); + dbQueryRequest.setDistinct(Boolean.TRUE); + dbQueryRequest.addRequestField(PRODUCT_CODE); + + DbQueryResponse dbQueryResponse = this.executeDbQueryRequest( + dbQueryRequest, request.toString()); + Set productCodes = new TreeSet(); + for (Map result : dbQueryResponse.getResults()) { + productCodes.add((Integer) result.get(PRODUCT_CODE)); + } + Set parameters = new HashSet(); + for (RadarInfo info : getRadarInfo()) { + if (productCodes.contains(Integer.valueOf(info.getProductCode()))) { + parameters.add(info.getName()); + parameters.add(info.getMnemonic()); + parameters.add(Integer.toString(info.getProductCode())); + } + } + + return parameters.toArray(new String[0]); + } + + @Override + public String[] getOptionalIdentifiers() { + return new String[] { ICAO }; + } + + /** + * * This is used to convert data from bin,radial format to radial bin format. - * + * *
-     * 
+     *
      * SOFTWARE HISTORY
-     * 
+     *
      * Date         Ticket#    Engineer    Description
      * ------------ ---------- ----------- --------------------------
      * Jan 25, 2013            bsteffen     Initial creation
      * Feb 14, 2013 1614       bsteffen    refactor data access framework to use
-*                                          single request.
-     * 
+     *                                          single request.
+     *
      * 
- * + * * @author bsteffen * @version 1.0 */ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertAdaptationParameters.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertAdaptationParameters.java index a7df5d81a3..e777c5b491 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertAdaptationParameters.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertAdaptationParameters.java @@ -23,7 +23,6 @@ import java.io.DataInputStream; import java.io.IOException; import java.util.ArrayList; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -33,9 +32,10 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * July 31, 2009           askripsky   Initial creation
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jul 31, 2009           askripsky   Initial creation
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -44,7 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class AlertAdaptationParameters implements ISerializableObject { +public class AlertAdaptationParameters { @DynamicSerializeElement protected ArrayList categories; @@ -57,7 +57,7 @@ public class AlertAdaptationParameters implements ISerializableObject { } @DynamicSerialize - public static class AAPCategory implements ISerializableObject { + public static class AAPCategory { @DynamicSerializeElement protected int alertGroup; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertMessage.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertMessage.java index d98fde4f7d..8fa896fac0 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertMessage.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/AlertMessage.java @@ -21,20 +21,20 @@ package com.raytheon.uf.common.dataplugin.radar.level3; import java.util.Date; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * Object representation of the alert message radar product(productCode 9). * *
  * 
  * SOFTWARE HISTORY
  * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Aug 4, 2011            mnash     Initial creation
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Aug 04, 2011           mnash       Initial creation
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -43,7 +43,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class AlertMessage implements ISerializableObject { +public class AlertMessage { public enum AlertCategory { Empty, GRID_Velocity, GRID_Composite_Reflectivity, GRID_Echo_Tops, GRID_Severe_Weather_Probability, GRID_Spare, GRID_Vertically_Integrated_Liquid, VOLUME_Velocity_Azimuth_Display, VOLUME_Minimum_Size_Hail, VOLUME_Spare, VOLUME_Tornado_Vortex_Signature, VOLUME_Maximum_Storm_Reflectivity, VOLUME_Probability_of_Hail, VOLUME_Storm_Top, VOLUME_Maximum_1_Hour_Rainfall_Accumulation, VOLUME_MDA_Strength_Rank, VOLUME_Spare1, FORECAST_Maximum_Hail_Size, FORECAST_Spare, FORECAST_Tornado_Vortex_Signature, FORECAST_Maximum_Storm_Reflectivity, FORECAST_Probability_of_Hail, FORECAST_Probability_of_Severe_Hail, FORECAST_Storm_Top, FORECAST_MDA_Strength_Rank, FORECAST_Spare1 diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendDataPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendDataPacket.java index 308d44cd13..2a6ad13729 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendDataPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendDataPacket.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -34,10 +33,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Feb 19, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Feb 19, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,8 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class CellTrendDataPacket extends SymbologyPacket implements - ISerializableObject { +public class CellTrendDataPacket extends SymbologyPacket { @DynamicSerializeElement private String cellID; @@ -68,8 +67,7 @@ public class CellTrendDataPacket extends SymbologyPacket implements private ArrayList volumeScan; @DynamicSerialize - public static class CellTrendData implements SymbologyPoint, - ISerializableObject { + public static class CellTrendData implements SymbologyPoint { @DynamicSerializeElement private int trendCode; @@ -159,7 +157,6 @@ public class CellTrendDataPacket extends SymbologyPacket implements int latestScan = 0; int bytesRead = 8; CellTrendData trendData; - ArrayList data; while (bytesRead < blockLength) { // Read current Trend Code trendCode = in.readShort(); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendVolumeScanPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendVolumeScanPacket.java index ec7b7c166d..30cbc4e5f6 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendVolumeScanPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/CellTrendVolumeScanPacket.java @@ -23,27 +23,26 @@ import java.io.DataInputStream; import java.io.IOException; import java.util.ArrayList; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * Radar packet for cell trend volume scan. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 29, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 29, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
* * @author mnash * @version 1.0 */ @DynamicSerialize -public class CellTrendVolumeScanPacket extends SymbologyPacket implements - ISerializableObject { +public class CellTrendVolumeScanPacket extends SymbologyPacket { @DynamicSerializeElement private int numberOfVolumes; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GSMBlock.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GSMBlock.java index fcfc24e587..82b795d83b 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GSMBlock.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GSMBlock.java @@ -22,7 +22,6 @@ package com.raytheon.uf.common.dataplugin.radar.level3; import java.io.DataInputStream; import java.io.IOException; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -31,11 +30,13 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 1-26-2009               mnash       Initial creation
- * 1-20-2010     DR 4059   Zihou Wang  Decode more GSM status
- * 03/01/13      DR15496   zwang       Decode expanded GSM
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 26, 2009           mnash       Initial creation
+ * Jan 20, 2010  4059     Zihou Wang  Decode more GSM status
+ * Mar 01, 2013  15496    zwang       Decode expanded GSM
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
+ * 
  * 
* * @author mnash @@ -43,7 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class GSMBlock extends AbstractBlock implements ISerializableObject { +public class GSMBlock extends AbstractBlock { private static final int BLOCK_ID = 2; @@ -60,7 +61,7 @@ public class GSMBlock extends AbstractBlock implements ISerializableObject { } @DynamicSerialize - public static class GSMMessage implements ISerializableObject { + public static class GSMMessage { @DynamicSerializeElement public int mode; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GenericDataPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GenericDataPacket.java index 4ba4ea6c33..18334045ff 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GenericDataPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GenericDataPacket.java @@ -26,7 +26,6 @@ import java.util.List; import com.raytheon.uf.common.dataplugin.radar.level3.generic.GenericDataComponent; import com.raytheon.uf.common.dataplugin.radar.level3.generic.GenericDataParameter; import com.raytheon.uf.common.dataplugin.radar.level3.generic.GenericUtil; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -36,10 +35,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Mar 4, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Mar 04, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -48,8 +48,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class GenericDataPacket extends SymbologyPacket implements - ISerializableObject { +public class GenericDataPacket extends SymbologyPacket { public GenericDataPacket(int packetId, DataInputStream in) throws IOException { @@ -189,9 +188,6 @@ public class GenericDataPacket extends SymbologyPacket implements */ public void setGenTime(long genTime) { this.genTime = genTime; - - long timestamp = genTime * 1000; // msec - java.util.Date d = new java.util.Date(timestamp); } /** diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GraphicBlock.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GraphicBlock.java index 32b10d3245..4f4235771b 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GraphicBlock.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/GraphicBlock.java @@ -25,18 +25,18 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * A block of data containing graphics organized into multiple pages. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -44,7 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class GraphicBlock extends AbstractBlock implements ISerializableObject { +public class GraphicBlock extends AbstractBlock { private static final int BLOCK_ID = 2; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailPositivePacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailPositivePacket.java index 7afcf13568..abe8a0a59a 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailPositivePacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailPositivePacket.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -34,10 +33,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Feb 19, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Feb 19, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,8 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class HailPositivePacket extends SymbologyPacket implements - ISerializableObject { +public class HailPositivePacket extends SymbologyPacket { public HailPositivePacket(int packetId, DataInputStream in) throws IOException { @@ -59,7 +58,7 @@ public class HailPositivePacket extends SymbologyPacket implements } @DynamicSerialize - public static class HailPoint implements ISerializableObject { + public static class HailPoint { @DynamicSerializeElement public int i; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailProbablePacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailProbablePacket.java index 4b221e2529..39b5055e19 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailProbablePacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HailProbablePacket.java @@ -19,23 +19,38 @@ **/ package com.raytheon.uf.common.dataplugin.radar.level3; +import java.io.DataInputStream; +import java.io.IOException; + +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; + /** * Hail probable uses the same decoder as TVS * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Feb 19, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Feb 19, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Add constructors.
  * 
  * 
* * @author mnash * @version 1.0 */ - +@DynamicSerialize public class HailProbablePacket extends HailPositivePacket { + public HailProbablePacket(int packetId, DataInputStream in) + throws IOException { + super(packetId, in); + } + + public HailProbablePacket() { + super(); + } + } \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HdaHailPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HdaHailPacket.java index 5ebd7821c9..f8be83c0ee 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HdaHailPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/HdaHailPacket.java @@ -24,19 +24,19 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * {@link SymbologyPacket} representing multiple points of hda hail. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Nov 5, 2008            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Nov 05, 2008           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
* * @author mnash @@ -44,8 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class HdaHailPacket extends SymbologyPacket implements - ISerializableObject { +public class HdaHailPacket extends SymbologyPacket { public HdaHailPacket(int packetId, DataInputStream in) throws IOException { super(packetId, in); @@ -56,8 +55,7 @@ public class HdaHailPacket extends SymbologyPacket implements } @DynamicSerialize - public static class HdaHailPoint implements SymbologyPoint, - ISerializableObject { + public static class HdaHailPoint implements SymbologyPoint { public int getI() { return i; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/Layer.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/Layer.java index a1dde15494..5deffe8d52 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/Layer.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/Layer.java @@ -19,20 +19,20 @@ **/ package com.raytheon.uf.common.dataplugin.radar.level3; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** * - * TODO Add Description + * A Layer represnets a group of {@link SymbologyPacket}s. * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 8, 2009            chammack     Initial creation
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 08, 2009           chammack    Initial creation
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -40,7 +40,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class Layer implements ISerializableObject { +public class Layer { @DynamicSerializeElement private int layerId; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedContourVectorPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedContourVectorPacket.java index d09ef3c53b..85827759ab 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedContourVectorPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedContourVectorPacket.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -34,10 +33,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Mar 9, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Mar 09, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,8 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class LinkedContourVectorPacket extends SymbologyPacket implements - ISerializableObject { +public class LinkedContourVectorPacket extends SymbologyPacket { private static final int CONTOUR_VECTOR_PACKET0E03 = 0x0E03; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVector.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVector.java index 22a0e118a1..1a329102a0 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVector.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVector.java @@ -19,28 +19,28 @@ **/ package com.raytheon.uf.common.dataplugin.radar.level3; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * LinkedVectors are used within {@link SymbologyPacket}s to represent a single + * graphical line in a specific color. * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Sep 14, 2010            mnash     Initial creation
+ * Date         Ticket#  Engineer    Description
+ * ------------ -------- ----------- --------------------------
+ * Sep 14, 2010           mnash       Initial creation
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* * @author mnash * @version 1.0 */ - @DynamicSerialize -public class LinkedVector implements ISerializableObject { +public class LinkedVector { @DynamicSerializeElement protected int theColor; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVectorPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVectorPacket.java index c9f36c4c5d..f31bd7af2b 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVectorPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/LinkedVectorPacket.java @@ -24,27 +24,27 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * A type of {@link SymbologyPacket} containing {@link LinkedVector}s * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Nov 5, 2008            mnash     Initial creation
- * 07/29/2013   2148       mnash     Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Nov 05, 2008           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
+ * 
  * 
* * @author mnash * @version 1.0 */ @DynamicSerialize -public class LinkedVectorPacket extends SymbologyPacket implements - ISerializableObject { +public class LinkedVectorPacket extends SymbologyPacket { private static final int LINKED_VECTOR_PACKET9 = 9; /** diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/MesocyclonePacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/MesocyclonePacket.java index ee1574e06c..8e08528835 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/MesocyclonePacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/MesocyclonePacket.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -34,10 +33,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 13, 2009            chammack     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 13, 2009           chammack    Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,8 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class MesocyclonePacket extends SymbologyPacket implements - ISerializableObject { +public class MesocyclonePacket extends SymbologyPacket { public MesocyclonePacket(int packetId, DataInputStream in) throws IOException { @@ -59,8 +58,7 @@ public class MesocyclonePacket extends SymbologyPacket implements } @DynamicSerialize - public static class MesocyclonePoint implements SymbologyPoint, - ISerializableObject { + public static class MesocyclonePoint implements SymbologyPoint { @DynamicSerializeElement protected int mesoCycloneRadius; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/PacketFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/PacketFactory.java index 5186964617..5ec2c33f96 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/PacketFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/PacketFactory.java @@ -31,7 +31,8 @@ import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; /** - * TODO Add Description + * A factory for creating packets based on the packet ID. In the case of generic + * packets, it further uses the product ID to determine the packet to create. * *
  * SOFTWARE HISTORY
@@ -39,6 +40,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
  * ------------ ---------- ----------- --------------------------
  * 03/04/2013   DCS51      zwang       Handle GFM product
  * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * 03/04/2014   2870       njensen     Log product ID when no class found for generic packet
  * 
  * 
* @@ -47,6 +49,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority; */ public class PacketFactory { + /** The logger */ private static final IUFStatusHandler handler = UFStatus .getHandler(PacketFactory.class); @@ -96,6 +99,12 @@ public class PacketFactory { if (packetClass != null && packetClass.equals(GenericDataPacket.class)) { int productId = GenericUtil.getProductID(in); packetClass = genericClassMap.get(productId); + if (packetClass == null) { + handler.handle(Priority.ERROR, + "No class registered for generic packet ID: " + + packetId + " with product ID: " + productId); + return packet; + } } if (packetClass != null) { diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SCITDataPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SCITDataPacket.java index 1e18630c6e..70754f68dd 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SCITDataPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SCITDataPacket.java @@ -25,7 +25,6 @@ import java.util.ArrayList; import java.util.List; import com.raytheon.uf.common.dataplugin.radar.level3.STICirclePacket.STICirclePoint; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -35,10 +34,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 28, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 28, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -47,8 +47,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class SCITDataPacket extends SymbologyPacket implements - ISerializableObject { +public class SCITDataPacket extends SymbologyPacket { public SCITDataPacket(int packetId, DataInputStream in) throws IOException { super(packetId, in); @@ -63,7 +62,7 @@ public class SCITDataPacket extends SymbologyPacket implements * STIDataPoints */ @DynamicSerialize - public static class SCITDataCell implements ISerializableObject { + public static class SCITDataCell { @DynamicSerializeElement public List vectors = new ArrayList(); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/STICirclePacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/STICirclePacket.java index 98d2cb9248..6e99948488 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/STICirclePacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/STICirclePacket.java @@ -24,19 +24,19 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * A {@link SymbologyPacket} containing multiple {@link STICirclePoint}s. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 1-26-2009               mnash       Initial Creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 26, 2009           mnash    Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -44,8 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class STICirclePacket extends SymbologyPacket implements - ISerializableObject { +public class STICirclePacket extends SymbologyPacket { /** * @param packetId @@ -61,7 +60,7 @@ public class STICirclePacket extends SymbologyPacket implements } @DynamicSerialize - public static class STICirclePoint implements ISerializableObject { + public static class STICirclePoint { @DynamicSerializeElement public int i; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SpecialGraphicSymbolPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SpecialGraphicSymbolPacket.java index 4a864f8c9f..825c666e35 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SpecialGraphicSymbolPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SpecialGraphicSymbolPacket.java @@ -24,27 +24,27 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * A packet for holding special graphics symbols. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Nov 5, 2008            mnash     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Nov 05, 2008           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
+ * 
  * 
* * @author mnash * @version 1.0 */ @DynamicSerialize -public class SpecialGraphicSymbolPacket extends SymbologyPacket implements - ISerializableObject { +public class SpecialGraphicSymbolPacket extends SymbologyPacket { /** * @param packetId @@ -61,8 +61,7 @@ public class SpecialGraphicSymbolPacket extends SymbologyPacket implements } @DynamicSerialize - public static class SpecialGraphicPoint implements SymbologyPoint, - ISerializableObject { + public static class SpecialGraphicPoint implements SymbologyPoint { @DynamicSerializeElement public int i; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/StormIDPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/StormIDPacket.java index 507c309c53..c7149f2b3c 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/StormIDPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/StormIDPacket.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -33,10 +32,12 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Nov 5, 2008            mnash     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Nov 05, 2008           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
+ * 
  * 
* * @author mnash @@ -44,8 +45,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class StormIDPacket extends SymbologyPacket implements - ISerializableObject { +public class StormIDPacket extends SymbologyPacket { public StormIDPacket(int packetId, DataInputStream in) throws IOException { super(packetId, in); @@ -56,8 +56,7 @@ public class StormIDPacket extends SymbologyPacket implements } @DynamicSerialize - public static class StormIDPoint implements SymbologyPoint, - ISerializableObject { + public static class StormIDPoint implements SymbologyPoint { @DynamicSerializeElement public int i; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SuperObWindDataPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SuperObWindDataPacket.java index 5605a02cfe..c8f4cf20fa 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SuperObWindDataPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SuperObWindDataPacket.java @@ -24,19 +24,19 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * {@link SymbologyPacket} containing {@link SuperObWindDataCell}s. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 1-26-2009    465         mnash    Initial Creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 26, 2009  465      mnash       Initial Creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -44,8 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class SuperObWindDataPacket extends SymbologyPacket implements - ISerializableObject { +public class SuperObWindDataPacket extends SymbologyPacket { /** * @param packetId @@ -62,7 +61,7 @@ public class SuperObWindDataPacket extends SymbologyPacket implements } @DynamicSerialize - public static class SuperObWindDataCell implements ISerializableObject { + public static class SuperObWindDataCell { @DynamicSerializeElement public int latitudeLSW; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SymbologyBlock.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SymbologyBlock.java index 3af5e405d0..38b89b8034 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SymbologyBlock.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/SymbologyBlock.java @@ -25,7 +25,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -35,11 +34,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 11-02-2007   465        randerso    Major revision to support full level 3 radar decode
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
- * 
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Nov 02, 2007  465      randerso    Major revision to support full level 3 radar decode
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -47,8 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class SymbologyBlock extends AbstractBlock implements - ISerializableObject { +public class SymbologyBlock extends AbstractBlock { private static final int BLOCK_ID = 1; @@ -137,23 +135,6 @@ public class SymbologyBlock extends AbstractBlock implements this.layers = layerList.toArray(new Layer[layerList.size()]); } - /** - * This method will return an object representing the layer number passed - * in. This method will examine the layer and create and instance of its - * actual type (i.e. Radial) and return that layer.
- *
- * Important Presently, only radial data is supported. All others - * will return null. - * - * @return An object for that layer - * @throws IOException - */ - public SymbologyPacket getSymbologyLayerContent(int layerNumber) - throws IOException { - SymbologyPacket symLayer = null; - return symLayer; - } - /** * Returns the number of symbology layers contained with the block. Most * likely, this will be 1, but in case a file contains more, they can be diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TVSPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TVSPacket.java index ecad80a2e9..5ae48efd01 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TVSPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TVSPacket.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -34,10 +33,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Jan 13, 2009            chammack     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 13, 2009           chammack    Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,7 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class TVSPacket extends SymbologyPacket implements ISerializableObject { +public class TVSPacket extends SymbologyPacket { public TVSPacket(int packetId, DataInputStream in) throws IOException { super(packetId, in); @@ -59,7 +59,7 @@ public class TVSPacket extends SymbologyPacket implements ISerializableObject { protected final boolean isElevated = false; @DynamicSerialize - public static class TVSPoint implements SymbologyPoint, ISerializableObject { + public static class TVSPoint implements SymbologyPoint { @DynamicSerializeElement public boolean elevated = false; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TabularBlock.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TabularBlock.java index 6ebfdcf2ab..3dd5cd36fc 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TabularBlock.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TabularBlock.java @@ -26,18 +26,17 @@ import java.util.HashMap; import java.util.List; import com.raytheon.uf.common.dataplugin.radar.util.RadarConstants; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * Object representing a block of tabular data. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,7 +45,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class TabularBlock extends AbstractBlock implements ISerializableObject { +public class TabularBlock extends AbstractBlock { private static final int BLOCK_ID = 3; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TextSymbolPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TextSymbolPacket.java index 8e0d087208..6dbd4acbe0 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TextSymbolPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/TextSymbolPacket.java @@ -22,18 +22,18 @@ package com.raytheon.uf.common.dataplugin.radar.level3; import java.io.DataInputStream; import java.io.IOException; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * A {@link SymbologyPacket} representing colored text. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -41,8 +41,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class TextSymbolPacket extends SymbologyPacket implements - ISerializableObject { +public class TextSymbolPacket extends SymbologyPacket { private static final int TEXT_SYMBOL_PACKET8 = 8; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedContourVectorPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedContourVectorPacket.java index 5b97dd3dc2..bc83a43d12 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedContourVectorPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedContourVectorPacket.java @@ -24,19 +24,21 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * {@link SymbologyPacket} containing contours of {@link UnlinkedVector}s. * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Sep 14, 2010            mnash     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Sep 14, 2010           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
+ * Jun 24, 2014  3311     njensen     Add DynamicSerialize annotation
  * 
  * 
* @@ -44,8 +46,9 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ -public class UnlinkedContourVectorPacket extends SymbologyPacket implements - ISerializableObject { +@DynamicSerialize +public class UnlinkedContourVectorPacket extends SymbologyPacket { + private static final int CONTOUR_VECTOR_PACKET3501 = 0x3501; /** diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVector.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVector.java index db8e5fbac7..e2c1717c1d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVector.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVector.java @@ -19,19 +19,20 @@ **/ package com.raytheon.uf.common.dataplugin.radar.level3; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * UnlinkedVectors are used within {@link SymbologyPacket}s to represent a + * single graphical line in a specific color. * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Sep 14, 2010            mnash     Initial creation
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Sep 14, 2010           mnash       Initial creation
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -40,7 +41,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class UnlinkedVector implements ISerializableObject { +public class UnlinkedVector { @DynamicSerializeElement private int theColor; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVectorPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVectorPacket.java index 29bc7c981c..8e9a7be625 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVectorPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/UnlinkedVectorPacket.java @@ -24,19 +24,19 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * {@link SymbologyPacket} containing {@link UnlinkedVector}s. * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 11-05-2007	465        randerso    Initial Creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Nuv 05, 2007  465      randerso    Initial Creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -44,8 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class UnlinkedVectorPacket extends SymbologyPacket implements - ISerializableObject { +public class UnlinkedVectorPacket extends SymbologyPacket { private static final int UNLINKED_VECTOR_PACKET10 = 10; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/VectorArrowPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/VectorArrowPacket.java index e987e72416..a5faa87667 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/VectorArrowPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/VectorArrowPacket.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -34,10 +33,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Feb 19, 2009            mnash     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Feb 19, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,8 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class VectorArrowPacket extends SymbologyPacket implements - ISerializableObject { +public class VectorArrowPacket extends SymbologyPacket { public VectorArrowPacket(int packetId, DataInputStream in) throws IOException { @@ -59,7 +58,7 @@ public class VectorArrowPacket extends SymbologyPacket implements } @DynamicSerialize - public static class VectorArrow implements ISerializableObject { + public static class VectorArrow { @DynamicSerializeElement protected int arrowDirection; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/WindBarbPacket.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/WindBarbPacket.java index ea3d5caa15..309a86cdea 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/WindBarbPacket.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/level3/WindBarbPacket.java @@ -24,20 +24,20 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * Decodes the (non-DMD) mesocyclone packet + * Decodes the wind barb packet. * *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * 1-23-2009               mnash     Initial creation
- * 07/29/2013   2148       mnash       Refactor registering of packets to Spring
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jan 23, 2009           mnash       Initial creation
+ * Jul 29, 2013  2148     mnash       Refactor registering of packets to Spring
+ * Jun 04, 2014  3232     bsteffen    Remove ISerializableObject
  * 
  * 
* @@ -46,8 +46,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class WindBarbPacket extends SymbologyPacket implements - ISerializableObject { +public class WindBarbPacket extends SymbologyPacket { public WindBarbPacket(int packetId, DataInputStream in) throws IOException { super(packetId, in); @@ -58,8 +57,7 @@ public class WindBarbPacket extends SymbologyPacket implements } @DynamicSerialize - public static class WindBarbPoint implements SymbologyPoint, - ISerializableObject { + public static class WindBarbPoint implements SymbologyPoint { @DynamicSerializeElement protected int colorValue; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/projection/RadialBinMapProjection.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/projection/RadialBinMapProjection.java index b86d245011..dc26115bab 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/projection/RadialBinMapProjection.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/projection/RadialBinMapProjection.java @@ -47,9 +47,11 @@ import org.opengis.referencing.operation.MathTransform; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Jun 6, 2012 bsteffen Initial creation + * Date Ticket# Engineer Description + * ------------- -------- ----------- ----------------------------------------- + * Jun 06, 2012 bsteffen Initial creation + * Feb 08, 2012 2672 bsteffen Fix projection of points between the last + * and first radial. * * * @@ -99,6 +101,11 @@ public class RadialBinMapProjection extends AzimuthRangeMapProjection { int nextRadial = (int) Math.ceil(radial) % normalAngleData.length; float prevAngle = normalAngleData[prevRadial]; float nextAngle = normalAngleData[nextRadial]; + if (nextAngle + 180 < prevAngle) { + nextAngle += 360; + } else if (nextAngle - 180 > prevAngle) { + nextAngle -= 360; + } double az = prevAngle + (radial - prevRadial) * (nextAngle - prevAngle); return super.inverseTransformNormalized(az, ran, dest); } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarConstants.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarConstants.java index 802b4a3589..896533787d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarConstants.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarConstants.java @@ -34,6 +34,7 @@ import java.util.regex.Pattern; * Mar 04, 2013 DCS51 zwang Add a map type for GFM product * Jul 15, 2013 2149 bsteffen Fix radar mesocyclone regex. * Oct 10, 2013 2376 bsteffen Fix STI regex. + * May 28, 2014 2990 bsteffen Fix radar mesocyclone regex. * * * @@ -136,7 +137,7 @@ public class RadarConstants { /* * For parsing the tabular block for the meso product */ - public static final String MESO_REGEX = "\\s*(\\w+)\\s+(.{7})\\s+(\\w+)\\s+(.{2})\\s+(.{2})\\s+(.{3})\\s+(.{3})\\s+(.{3})\\s+(\\w+)\\s+(\\w+)\\s+(\\w+)\\s+(\\w+)\\s\\s(.{7})\\s+(.{5})"; + public static final String MESO_REGEX = "\\s*(\\w+)\\s+(.{3}/.{3})\\s+(\\w+)\\s+(.{2})\\s+(.{3})\\s+(.{3})\\s+(.{3})\\s+(.{3})\\s+(\\w+)\\s+(\\w+)\\s+(\\w+)\\s+(\\w+)\\s\\s(.{7})\\s+(.{5})"; /* * For breaking the MESO header out and being able to use the regex below diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarUtil.java b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarUtil.java index 51f5705de6..349453e3f6 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarUtil.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/src/com/raytheon/uf/common/dataplugin/radar/util/RadarUtil.java @@ -31,6 +31,13 @@ import com.raytheon.uf.common.geospatial.MapUtil; /** * A series of methods to help in the processing and tiling of radar data. * + * + *
+ *  * Date         Ticket#    Engineer    Description
+ * ------------ ---------- ----------- -------------- ------------
+ * Jun 20, 2014  3072      mweeks       Updates to remove caculateExtent's dependence on RadarRecord.
+ * 
+ * * @author brockwoo * @version 1.0 */ @@ -236,17 +243,20 @@ public class RadarUtil { } public static double calculateExtent(RadarRecord radarData) { - int numBins = radarData.getNumBins(); - if (radarData.getJstart() != null) { - numBins += radarData.getJstart(); - } - double maxExtent = radarData.getGateResolution() * numBins - * Math.cos(Math.toRadians(radarData.getTrueElevationAngle())); + return calculateExtent(radarData.getNumBins(), radarData.getJstart(), radarData.getGateResolution(), + (double)radarData.getTrueElevationAngle(), radarData.getFormat()); + } - if ("Raster".equals(radarData.getFormat())) { + public static double calculateExtent(int numBins, Integer startBin, Integer gateResolution, + Double elevationAngle, String format) { + if (startBin != null) { + numBins += startBin; + } + double maxExtent = gateResolution * numBins + * Math.cos(Math.toRadians(elevationAngle)); + if ("Raster".equals(format)) { maxExtent /= 2; } - return maxExtent; } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/RadarUpperText.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/RadarUpperText.xml index 2c0833dbc7..3fcf06b9d1 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/RadarUpperText.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/RadarUpperText.xml @@ -54,6 +54,7 @@ + @@ -398,4 +399,4 @@ - \ No newline at end of file + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/radarImageryStyleRules.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/radarImageryStyleRules.xml index 92f68d7fa4..9a4ac18764 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/radarImageryStyleRules.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.radar/utility/common_static/base/styleRules/radarImageryStyleRules.xml @@ -416,6 +416,7 @@ + @@ -569,31 +570,6 @@ - - - - *1 - Radar/HHC NEXRCOMP - - - - - - - - - - - - - - - - - - - - @@ -697,4 +673,4 @@ - \ No newline at end of file + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/META-INF/MANIFEST.MF index b3d08410ce..04493f6167 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/META-INF/MANIFEST.MF @@ -2,21 +2,20 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Satellite Common Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.satellite -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", javax.persistence;bundle-version="1.0.0", - org.geotools;bundle-version="2.6.4", org.apache.commons.lang;bundle-version="2.3.0", javax.measure;bundle-version="1.0.0", com.raytheon.uf.common.dataaccess;bundle-version="1.0.0", com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", com.raytheon.uf.common.dataquery;bundle-version="1.0.0", com.raytheon.uf.common.datastorage;bundle-version="1.12.1174", - org.hibernate;bundle-version="1.0.0" + org.hibernate;bundle-version="1.0.0", + com.raytheon.uf.common.numeric;bundle-version="1.14.0" Export-Package: com.raytheon.uf.common.dataplugin.satellite, com.raytheon.uf.common.dataplugin.satellite.units, com.raytheon.uf.common.dataplugin.satellite.units.counts, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatMapCoverage.java b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatMapCoverage.java index 938b747253..80c0339777 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatMapCoverage.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatMapCoverage.java @@ -24,9 +24,13 @@ import java.awt.geom.Rectangle2D; import javax.persistence.Column; import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; import javax.persistence.Id; +import javax.persistence.SequenceGenerator; import javax.persistence.Table; import javax.persistence.Transient; +import javax.persistence.UniqueConstraint; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; @@ -47,8 +51,8 @@ import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.geospatial.CRSCache; import com.raytheon.uf.common.geospatial.IGridGeometryProvider; +import com.raytheon.uf.common.geospatial.adapter.GeometryAdapter; import com.raytheon.uf.common.geospatial.util.EnvelopeIntersection; -import com.raytheon.uf.common.serialization.adapters.GeometryAdapter; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.vividsolutions.jts.geom.Geometry; @@ -65,18 +69,24 @@ import com.vividsolutions.jts.geom.Polygon; * *
  * SOFTWARE HISTORY
- * Date         Ticket#     Engineer    Description
- * ------------ ----------  ----------- --------------------------
- * Jul 24, 2007 353         bphillip    Initial Checkin
- * Jul 12, 2012 798         jkorman     Changed projection "magic" numbers
- * Jul 16, 2013 2181        bsteffen    Convert geometry types to use hibernate-
- *                                      spatial
- * Sep 30, 2013 2333        mschenke    Refactored to store coordinates in CRS space
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Jul 24, 2007  353      bphillip    Initial Checkin
+ * Jul 12, 2012  798      jkorman     Changed projection "magic" numbers
+ * Jul 16, 2013  2181     bsteffen    Convert geometry types to use hibernate-
+ *                                    spatial
+ * Sep 30, 2013  2333     mschenke    Refactored to store coordinates in CRS
+ *                                    space
+ * Apr 11, 2014  2947     bsteffen    Fix equals
+ * Oct 16, 2014  3454     bphillip    Upgrading to Hibernate 4
+ * Nov 05, 2014  3788     bsteffen    Make gid a sequence instead of a hash.
  * 
  * 
*/ @Entity -@Table(name = "satellite_spatial") +@Table(name = "satellite_spatial", uniqueConstraints = { @UniqueConstraint(columnNames = { + "minX", "minY", "dx", "dy", "nx", "ny", "crsWKT" }) }) +@SequenceGenerator(name = "SATELLITE_SPATIAL_GENERATOR", sequenceName = "satspatial_seq", allocationSize = 1) @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public class SatMapCoverage extends PersistableDataObject implements @@ -85,6 +95,7 @@ public class SatMapCoverage extends PersistableDataObject implements private static final long serialVersionUID = 1L; @Id + @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SATELLITE_SPATIAL_GENERATOR") @DynamicSerializeElement @DataURI(position = 0) private int gid; @@ -148,7 +159,7 @@ public class SatMapCoverage extends PersistableDataObject implements /** The map coverage */ @Column(name = "the_geom") - @Type(type = "org.hibernatespatial.GeometryUserType") + @Type(type = "org.hibernate.spatial.GeometryType") @XmlJavaTypeAdapter(value = GeometryAdapter.class) @DynamicSerializeElement private Geometry location; @@ -215,7 +226,6 @@ public class SatMapCoverage extends PersistableDataObject implements this.dx = dx; this.dy = dy; this.crsObject = crs; - this.gid = hashCode(); if (latLonGeometry == null) { try { latLonGeometry = EnvelopeIntersection @@ -417,9 +427,15 @@ public class SatMapCoverage extends PersistableDataObject implements if (Double.doubleToLongBits(minY) != Double .doubleToLongBits(other.minY)) return false; - if (nx != other.nx) + if (nx == null) { + if (other.nx != null) + return false; + } else if (!nx.equals(other.nx)) return false; - if (ny != other.ny) + if (ny == null) { + if (other.ny != null) + return false; + } else if (!ny.equals(other.ny)) return false; return true; } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatelliteRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatelliteRecord.java index 24596b8a10..6820f642cf 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatelliteRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/SatelliteRecord.java @@ -38,7 +38,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.geotools.coverage.grid.GridGeometry2D; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; @@ -56,24 +55,26 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Feb 14, 2007 139 bphillip Initial Creation - * Sep 14, 2007 379 jkorman Added populateDataStore() and - * getPersistenceTime() from new - * IPersistable - * Nov 29, 2007 472 jkorman Added IDecoderGettable interface. - * Nov 06, 2008 1515 jkorman Changed units length from 16 to 26 - * Apr 04, 2013 1846 bkowal Added an index on refTime and - * forecastTime - * Jul 30, 2012 798 jkorman Support for common satellite data. - * Mar 25, 2013 1823 dgilling Replace underscores with spaces in URI - * constructor. - * Apr 08, 2013 1293 bkowal Removed references to hdffileid. - * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. - * May 07, 2013 1869 bsteffen Remove dataURI column from - * PluginDataObject. - * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Feb 14, 2007 139 bphillip Initial Creation + * Sep 14, 2007 379 jkorman Added populateDataStore() and + * getPersistenceTime() from new + * IPersistable + * Nov 29, 2007 472 jkorman Added IDecoderGettable interface. + * Nov 06, 2008 1515 jkorman Changed units length from 16 to 26 + * Apr 04, 2013 1846 bkowal Added an index on refTime and + * forecastTime + * Jul 30, 2012 798 jkorman Support for common satellite data. + * Mar 25, 2013 1823 dgilling Replace underscores with spaces in URI + * constructor. + * Apr 08, 2013 1293 bkowal Removed references to hdffileid. + * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation. + * May 07, 2013 1869 bsteffen Remove dataURI column from + * PluginDataObject. + * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jun 11, 2014 2061 bsteffen Remove IDecoderGettable + * * * * @author bphillip @@ -94,7 +95,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; public class SatelliteRecord extends PersistablePluginDataObject implements IGridGeometryProvider { - public static final String PLUGIN_ID = "satellite"; + public static final String PLUGIN_NAME = "satellite"; private static final long serialVersionUID = 1L; @@ -253,17 +254,6 @@ public class SatelliteRecord extends PersistablePluginDataObject implements this.units = units; } - /** - * Get the IDecoderGettable reference for this record. - * - * @return The IDecoderGettable reference for this record. Null for this - * class. - */ - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - public String getSource() { return source; } @@ -354,6 +344,6 @@ public class SatelliteRecord extends PersistablePluginDataObject implements @Override public String getPluginName() { - return "satellite"; + return PLUGIN_NAME; } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/dataaccess/SatelliteGridFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/dataaccess/SatelliteGridFactory.java index a889423407..49e8ac499e 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/dataaccess/SatelliteGridFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/dataaccess/SatelliteGridFactory.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -35,13 +35,11 @@ import com.raytheon.uf.common.dataaccess.IDataRequest; import com.raytheon.uf.common.dataaccess.exception.DataRetrievalException; import com.raytheon.uf.common.dataaccess.impl.AbstractGridDataPluginFactory; import com.raytheon.uf.common.dataaccess.impl.DefaultGridData; -import com.raytheon.uf.common.dataaccess.util.DataWrapperUtil; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.satellite.SatelliteRecord; import com.raytheon.uf.common.dataplugin.satellite.units.SatelliteUnits; import com.raytheon.uf.common.dataquery.requests.RequestConstraint; -import com.raytheon.uf.common.dataquery.requests.RequestConstraint.ConstraintType; -import com.raytheon.uf.common.datastorage.records.IDataRecord; +import com.raytheon.uf.common.numeric.source.DataSource; /** * A data factory for getting satellite data from the metadata database. There @@ -51,12 +49,15 @@ import com.raytheon.uf.common.datastorage.records.IDataRecord; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Jan 02, 2012 bkowal Initial creation - * Jan 22, 2012 bsteffen Extract common functionality to AbstractGridDataPluginFactory - * Feb 14, 2013 1614 bsteffen Refactor data access framework to use - * single request. + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Jan 02, 2012 bkowal Initial creation + * Jan 22, 2012 bsteffen Extract common functionality to AbstractGridDataPluginFactory + * Feb 14, 2013 1614 bsteffen Refactor data access framework to use + * single request. + * Feb 04, 2014 2672 bsteffen Enable requesting subgrids. + * Jul 30, 2014 3184 njensen Renamed valid identifiers to optional + * Sep 29, 2014 3596 nabowle Always put creatingEntity in attributes. * * * @@ -66,33 +67,35 @@ import com.raytheon.uf.common.datastorage.records.IDataRecord; public class SatelliteGridFactory extends AbstractGridDataPluginFactory implements IDataFactory { + private static final String FIELD_CREATING_ENTITY = "creatingEntity"; + private static final String FIELD_PYHSICAL_ELEMENT = "physicalElement"; private static final String FIELD_SECTOR_ID = "sectorID"; - private static final String[] VALID_IDENTIFIERS = { "source", - "creatingEntity", FIELD_SECTOR_ID, FIELD_PYHSICAL_ELEMENT }; + private static final String[] OPTIONAL_IDENTIFIERS = { "source", + FIELD_CREATING_ENTITY, FIELD_SECTOR_ID, FIELD_PYHSICAL_ELEMENT }; public SatelliteGridFactory() { SatelliteUnits.register(); } @Override - public String[] getValidIdentifiers() { - return VALID_IDENTIFIERS; + public String[] getOptionalIdentifiers() { + return OPTIONAL_IDENTIFIERS; } + @Override protected DefaultGridData constructGridDataResponse(IDataRequest request, PluginDataObject pdo, GridGeometry2D gridGeometry, - IDataRecord dataRecord) { - if(pdo instanceof SatelliteRecord == false){ + DataSource dataSource) { + if (pdo instanceof SatelliteRecord == false) { throw new DataRetrievalException(this.getClass().getSimpleName() + " cannot handle " + pdo.getClass().getSimpleName()); } - + SatelliteRecord satelliteRecord = (SatelliteRecord) pdo; - DefaultGridData defaultGridData = new DefaultGridData( - DataWrapperUtil.constructArrayWrapper(dataRecord, false), + DefaultGridData defaultGridData = new DefaultGridData(dataSource, gridGeometry); defaultGridData.setDataTime(pdo.getDataTime()); defaultGridData.setParameter(satelliteRecord.getPhysicalElement()); @@ -110,14 +113,21 @@ public class SatelliteGridFactory extends AbstractGridDataPluginFactory } } defaultGridData.setUnit(unit); - defaultGridData.setAttributes(request.getIdentifiers()); + + Map attributes = new HashMap<>(); + attributes.put(FIELD_CREATING_ENTITY, + satelliteRecord.getCreatingEntity()); + if (request.getIdentifiers() != null) { + attributes.putAll(request.getIdentifiers()); + } + defaultGridData.setAttributes(attributes); return defaultGridData; } /** * Builds the base constraint map based on the supplied grid request - * + * * @param request * the original grid request * @return the base constraint map @@ -127,6 +137,7 @@ public class SatelliteGridFactory extends AbstractGridDataPluginFactory * multiple factories will be building a base constraint map using the same * technique */ + @Override protected Map buildConstraintsFromRequest( IDataRequest request) { Map constraints = new HashMap(); @@ -141,19 +152,16 @@ public class SatelliteGridFactory extends AbstractGridDataPluginFactory .getIdentifiers().get(identifier).toString())); } } - if ((request.getParameters() == null) == false) { - RequestConstraint requestConstraint = new RequestConstraint(); - requestConstraint.setConstraintType(ConstraintType.IN); - requestConstraint.setConstraintValueList(request.getParameters()); - constraints.put(FIELD_PYHSICAL_ELEMENT, requestConstraint); + String[] parameters = request.getParameters(); + if (parameters != null && parameters.length > 0) { + RequestConstraint rc = new RequestConstraint(parameters); + constraints.put(FIELD_PYHSICAL_ELEMENT, rc); } - if ((request.getLocationNames() == null) == false) { - RequestConstraint requestConstraint = new RequestConstraint(); - requestConstraint.setConstraintType(ConstraintType.IN); - requestConstraint - .setConstraintValueList(request.getLocationNames()); - constraints.put(FIELD_SECTOR_ID, requestConstraint); + String[] locations = request.getLocationNames(); + if (locations != null && locations.length > 0) { + RequestConstraint rc = new RequestConstraint(locations); + constraints.put(FIELD_SECTOR_ID, rc); } return constraints; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/SatelliteUnits.java b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/SatelliteUnits.java index 07bc09ed35..4d0d7d8ef3 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/SatelliteUnits.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/SatelliteUnits.java @@ -28,6 +28,7 @@ import javax.measure.unit.SI; import javax.measure.unit.Unit; import javax.measure.unit.UnitFormat; +import com.raytheon.uf.common.dataplugin.satellite.units.counts.DerivedWVPixel; import com.raytheon.uf.common.dataplugin.satellite.units.generic.GenericPixel; import com.raytheon.uf.common.dataplugin.satellite.units.goes.PercentOfNormalTPWPixel; import com.raytheon.uf.common.dataplugin.satellite.units.goes.PolarPrecipWaterPixel; @@ -45,12 +46,14 @@ import com.raytheon.uf.common.dataplugin.satellite.units.water.RainfallRatePixel * *
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Sep 4, 2007             njensen     Initial creation
- * Mar 23, 2009     2086   jsanchez    Updated RainfallRatePixel to be velocity.
- *                                     Added PolarPrecipWaterPixel.
- * Jun 20, 2013     2122   mschenke    Added alias for degrees celsius to "C"
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Sep 04, 2007           njensen     Initial creation
+ * Mar 23, 2009  2086     jsanchez    Updated RainfallRatePixel to be velocity.
+ *                                    Added PolarPrecipWaterPixel.
+ * Jun 20, 2013  2122     mschenke    Added alias for degrees celsius to "C"
+ * Apr 15, 2014  2947     bsteffen    Register units with both formats.
+ * 
  * 
  * 
* @@ -84,35 +87,35 @@ public class SatelliteUnits { public static final Unit GENERIC_PIXEL = new GenericPixel(); + public static final Unit DERIVED_WV = new DerivedWVPixel(); + public static void register() { - UnitFormat.getUCUMInstance().alias(SI.KELVIN, "kelvin"); - UnitFormat.getUCUMInstance().alias(SI.CELSIUS, "C"); - UnitFormat.getUCUMInstance().label(SatelliteUnits.IR_PIXEL, "IRPixel"); - UnitFormat.getUCUMInstance().label(SatelliteUnits.PRECIP_PIXEL, - "PrecipPixel"); - UnitFormat.getUCUMInstance().label(SatelliteUnits.RAINFALL_RATE_PIXEL, - "RainfallRatePixel"); - UnitFormat.getUCUMInstance().label( - SatelliteUnits.SOUNDER_CLOUD_AMOUNT_PIXEL, + register(UnitFormat.getUCUMInstance()); + register(UnitFormat.getInstance()); + + } + + public static void register(UnitFormat format) { + format.alias(SI.KELVIN, "kelvin"); + format.alias(SI.CELSIUS, "C"); + format.label(SatelliteUnits.IR_PIXEL, "IRPixel"); + format.label(SatelliteUnits.PRECIP_PIXEL, "PrecipPixel"); + format.label(SatelliteUnits.RAINFALL_RATE_PIXEL, "RainfallRatePixel"); + format.label(SatelliteUnits.SOUNDER_CLOUD_AMOUNT_PIXEL, "SounderCloudAmountPixel"); - UnitFormat.getUCUMInstance().label( - SatelliteUnits.SOUNDER_CLOUD_HEIGHT_PIXEL, + format.label(SatelliteUnits.SOUNDER_CLOUD_HEIGHT_PIXEL, "SounderCloudTopHeightPixel"); - UnitFormat.getUCUMInstance().label( - SatelliteUnits.SOUNDER_LIFTED_INDEX_PIXEL, + format.label(SatelliteUnits.SOUNDER_LIFTED_INDEX_PIXEL, "SounderLiftedIndexPixel"); - UnitFormat.getUCUMInstance().label( - SatelliteUnits.SOUNDER_PRECIP_WATER_PIXEL, + format.label(SatelliteUnits.SOUNDER_PRECIP_WATER_PIXEL, "SounderPrecipWaterPixel"); - UnitFormat.getUCUMInstance().label( - SatelliteUnits.POLAR_PRECIP_WATER_PIXEL, + format.label(SatelliteUnits.POLAR_PRECIP_WATER_PIXEL, "PolarPrecipWaterPixel"); - UnitFormat.getUCUMInstance().label( - SatelliteUnits.SOUNDER_SKIN_TEMP_PIXEL, "SounderSkinTempPixel"); - UnitFormat.getUCUMInstance().label(SatelliteUnits.GENERIC_PIXEL, - "GenericPixel"); - UnitFormat.getUCUMInstance().label(SatelliteUnits.PERCENT_PIXEL, - "PercentOfNormalTPWPixel"); + format.label(SatelliteUnits.SOUNDER_SKIN_TEMP_PIXEL, + "SounderSkinTempPixel"); + format.label(SatelliteUnits.GENERIC_PIXEL, "GenericPixel"); + format.label(SatelliteUnits.PERCENT_PIXEL, "PercentOfNormalTPWPixel"); + format.label(SatelliteUnits.DERIVED_WV, "DerivedWV"); } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/goes/PercentOfNormalTPWPixel.java b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/goes/PercentOfNormalTPWPixel.java index 756d5d899d..feb3948edd 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/goes/PercentOfNormalTPWPixel.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.satellite/src/com/raytheon/uf/common/dataplugin/satellite/units/goes/PercentOfNormalTPWPixel.java @@ -25,19 +25,19 @@ import javax.measure.unit.Unit; import org.apache.commons.lang.builder.HashCodeBuilder; -import com.raytheon.uf.common.dataplugin.satellite.units.generic.GenericPixel; import com.raytheon.uf.common.dataplugin.satellite.units.goes.convert.PixelToPercentConverter; /** - * TODO Add Description + * A unit for the percent of normal total precipitable water pixels. * *
  * 
  * SOFTWARE HISTORY
  * 
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * May 12, 2010            jsanchez     Initial creation
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * May 12, 2010           jsanchez    Initial creation
+ * Apr 15, 2014  2947     bsteffen    Fix equals.
  * 
  * 
* @@ -50,7 +50,7 @@ public class PercentOfNormalTPWPixel extends Unit { @Override public boolean equals(Object anObject) { - return (anObject instanceof GenericPixel); + return (anObject instanceof PercentOfNormalTPWPixel); } @Override diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.scan/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.scan/META-INF/MANIFEST.MF index 49cbb488cf..5a1a87031b 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.scan/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.scan/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: QPF common Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.scan -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.uf.viz.core -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.scan, com.raytheon.uf.common.dataplugin.scan.data Require-Bundle: javax.persistence;bundle-version="1.0.0", diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/CellTableDataRow.java b/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/CellTableDataRow.java index 36d95e2440..642cf2340f 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/CellTableDataRow.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/CellTableDataRow.java @@ -24,7 +24,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.HashMap; -import com.raytheon.uf.common.monitor.scan.config.SCANConfig; +import com.raytheon.uf.common.monitor.scan.ScanUtils; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -41,6 +41,7 @@ import com.vividsolutions.jts.geom.Coordinate; * ------------ ---------- ----------- -------------------------- * April 29, 2009 2037 dhladky Initial creation * 02/01/13 1569 D. Hladky removed XML where not needed + * May 13, 2014 3133 njensen Use ScanUtils instead of ScanConfig * * * @author dhladky @@ -753,7 +754,7 @@ public class CellTableDataRow extends ScanTableDataRow { // if (mdaSR.length() > 1) { // value = new Double(mdaSR.substring(0, 1)); // } - value = SCANConfig.getInstance().convertStrankValue(mdaSR); + value = ScanUtils.convertStrankValue(mdaSR); } else if (column.equals(SCANConfigEnums.CELLTable.POSH.getColName())) { value = posh; } else if (column.equals(SCANConfigEnums.CELLTable.POH.getColName())) { diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/ScanTableData.java b/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/ScanTableData.java index 36b75ed902..1ba554ece4 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/ScanTableData.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.scan/src/com/raytheon/uf/common/dataplugin/scan/data/ScanTableData.java @@ -25,9 +25,7 @@ import java.util.Date; import java.util.List; import java.util.concurrent.ConcurrentHashMap; -import com.raytheon.uf.common.monitor.scan.config.SCANConfig; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -39,8 +37,9 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * April 29, 2009 2037 dhladky Initial creation - * 02/01/13 1569 D. Hladky removed XML where not needed + * 04/29/2009 2037 dhladky Initial creation + * 02/01/2013 1569 D. Hladky removed XML where not needed + * 05/12/2014 3133 njensen Remove unused field * * * @author dhladky @@ -50,7 +49,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @DynamicSerialize public abstract class ScanTableData implements - ISerializableObject, Serializable { + Serializable { /** * @@ -78,8 +77,6 @@ public abstract class ScanTableData implements @DynamicSerializeElement public List featureIds = null; - public SCANConfig config = null; - public ScanTableData() { tableData = new ConcurrentHashMap(); featureIds = new ArrayList(); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/META-INF/MANIFEST.MF index 0d5129548a..72adff07e5 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/META-INF/MANIFEST.MF @@ -2,11 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Sfcobs Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.sfcobs -Bundle-Version: 1.13.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-ActivationPolicy: lazy -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.pointdata, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/src/com/raytheon/uf/common/dataplugin/sfcobs/ObsCommon.java b/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/src/com/raytheon/uf/common/dataplugin/sfcobs/ObsCommon.java index 74cb688e0d..62dadcf419 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/src/com/raytheon/uf/common/dataplugin/sfcobs/ObsCommon.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.sfcobs/src/com/raytheon/uf/common/dataplugin/sfcobs/ObsCommon.java @@ -21,19 +21,8 @@ package com.raytheon.uf.common.dataplugin.sfcobs; import java.util.ArrayList; import java.util.Calendar; -import java.util.Collection; -import java.util.HashMap; import java.util.List; -import javax.measure.quantity.Angle; -import javax.measure.quantity.DataAmount; -import javax.measure.quantity.Length; -import javax.measure.quantity.Pressure; -import javax.measure.quantity.Temperature; -import javax.measure.quantity.Velocity; -import javax.measure.unit.NonSI; -import javax.measure.unit.SI; -import javax.measure.unit.Unit; import javax.persistence.Access; import javax.persistence.AccessType; import javax.persistence.Column; @@ -51,7 +40,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; @@ -69,15 +57,16 @@ import com.vividsolutions.jts.geom.Geometry; *
  * 
  * SOFTWARE HISTORY
- * Date         Ticket#    Engineer    Description
- * ------------ ---------- ----------- --------------------------
- * Oct 01, 2009            jkorman     Initial creation
- * Apr 04, 2013 1846       bkowal      Added an index on refTime and
- *                                     forecastTime
- * Apr 12, 2013 1857       bgonzale    Added SequenceGenerator annotation.
- * May 07, 2013 1869       bsteffen    Remove dataURI column from
- *                                     PluginDataObject.
- * Aug 30, 2013 2298       rjpeter     Make getPluginName abstract
+ * Date          Ticket#  Engineer    Description
+ * ------------- -------- ----------- --------------------------
+ * Oct 01, 2009           jkorman     Initial creation
+ * Apr 04, 2013  1846     bkowal      Added an index on refTime and
+ *                                    forecastTime
+ * Apr 12, 2013  1857     bgonzale    Added SequenceGenerator annotation.
+ * May 07, 2013  1869     bsteffen    Remove dataURI column from
+ *                                    PluginDataObject.
+ * Aug 30, 2013  2298     rjpeter     Make getPluginName abstract
+ * Jun 11, 2014  2061     bsteffen    Remove IDecoderGettable
  * 
  * 
* @@ -97,55 +86,10 @@ import com.vividsolutions.jts.geom.Geometry; @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public class ObsCommon extends PersistablePluginDataObject implements - ISpatialEnabled, IDecoderGettable, IPointData { + ISpatialEnabled, IPointData { private static final long serialVersionUID = 1L; - private static final int MISSING = -9999; - - public static final Unit TEMPERATURE_UNIT = SI.KELVIN; - - public static final Unit WIND_SPEED_UNIT = SI.METERS_PER_SECOND; - - public static final Unit WIND_DIR_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit PRESSURE_UNIT = SI.PASCAL; - - public static final Unit LOCATION_UNIT = NonSI.DEGREE_ANGLE; - - public static final Unit WAVE_UNIT = SI.METER; - - public static final Unit VISIBILITY_UNIT = NonSI.MILE; - - public static final Unit CLOUD_COVER = NonSI.OCTET; - - private static final HashMap PARM_MAP = new HashMap(); - static { - PARM_MAP.put("T", SFC_TEMP); - PARM_MAP.put("DpT", SFC_DWPT); - PARM_MAP.put("WS", SFC_WNDSPD); - PARM_MAP.put("WD", SFC_WNDDIR); - PARM_MAP.put("WGS", SFC_WNDGST); - PARM_MAP.put("Px", PRES_STATION); - PARM_MAP.put("PMSL", PRES_SLP); - PARM_MAP.put("ASET", PRES_ALTSG); - PARM_MAP.put("NLAT", STA_LAT); - PARM_MAP.put("NLON", STA_LON); - PARM_MAP.put("WT", "WT"); - PARM_MAP.put("TCC", "TCC"); - PARM_MAP.put("WP", "WP"); - PARM_MAP.put("WH", "WH"); - PARM_MAP.put("SWP", "SWP"); - PARM_MAP.put("SWH", "SWH"); - PARM_MAP.put("SWS", "SWS"); - PARM_MAP.put("SWD", "SWD"); - PARM_MAP.put("SWGS", "SWGS"); - PARM_MAP.put("PCHNG", "PCHNG"); - PARM_MAP.put("PKWND", "PKWND"); - PARM_MAP.put("VIS", "VIS"); - PARM_MAP.put("COVpct", "COVpct"); - } - // @DataURI(position = 1) @Column @@ -1496,22 +1440,6 @@ public class ObsCommon extends PersistablePluginDataObject implements interWinds.add(wind); } - /** - * Set the data uri for this observation. - * - * @param dataURI - */ - @Override - public void setDataURI(String dataURI) { - super.setDataURI(dataURI); - identifier = dataURI; - } - - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - @Override public SurfaceObsLocation getSpatialObject() { return location; @@ -1579,84 +1507,6 @@ public class ObsCommon extends PersistablePluginDataObject implements return location.getLocationDefined(); } - @Override - public String getString(String paramName) { - return null; - } - - @Override - public String[] getStrings(String paramName) { - return null; - } - - /** - * Get the value and units of a named parameter within this observation. - * - * @param paramName - * The name of the parameter value to retrieve. - * @return An Amount with value and units. If the parameter is unknown, a - * null reference is returned. - */ - @Override - public Amount getValue(String paramName) { - Amount a = null; - - String pName = PARM_MAP.get(paramName); - - if (SFC_TEMP.equals(pName) && (temp != null)) { - a = new Amount(temp, TEMPERATURE_UNIT); - } else if (SFC_DWPT.equals(pName) && (dwpt != null)) { - a = new Amount(dwpt, TEMPERATURE_UNIT); - } else if (SFC_WNDSPD.equals(pName) && (windSpeed != null)) { - a = new Amount(windSpeed, WIND_SPEED_UNIT); - } else if (SFC_WNDDIR.equals(pName) && (windDirection != null)) { - a = new Amount(windDirection, WIND_DIR_UNIT); - } else if (SFC_WNDGST.equals(pName) && (windGust != null)) { - a = new Amount(windGust, WIND_SPEED_UNIT); - } else if (PRES_STATION.equals(pName) && (pressureStation != null)) { - a = new Amount(pressureStation, PRESSURE_UNIT); - } else if (PRES_SLP.equals(pName) && (pressureSealevel != null)) { - a = new Amount(pressureSealevel, PRESSURE_UNIT); - } else if (PRES_ALTSG.equals(pName) && (pressureAltimeter != null)) { - a = new Amount(pressureAltimeter, PRESSURE_UNIT); - } else if (STA_LAT.equals(pName)) { - a = new Amount(this.getLatitude(), LOCATION_UNIT); - } else if (STA_LON.equals(pName)) { - a = new Amount(this.getLongitude(), LOCATION_UNIT); - } else if ("WT".equals(pName) && (this.seaTemp != null)) { - a = new Amount(this.seaTemp, TEMPERATURE_UNIT); - } else if ("TCC".equals(pName) && (this.totalCloudCover != null)) { - a = new Amount(this.totalCloudCover, CLOUD_COVER); - } else if ("COVpct".equals(pName) && (this.totalCloudCover != null)) { - a = new Amount(this.totalCloudCover * 10, CLOUD_COVER); - } else if ("WP".equals(pName)) { - a = new Amount(wavePeriod, WAVE_UNIT); - } else if ("WH".equals(pName)) { - a = new Amount(waveHeight, WAVE_UNIT); - } else if ("SWP".equals(pName)) { - a = new Amount(primarySwellWavePeriod, WAVE_UNIT); - } else if ("SWH".equals(pName)) { - a = new Amount(primarySwellWaveHeight, WAVE_UNIT); - } else if ("PCHNG".equals(pName) && (pressChange3Hr != MISSING)) { - a = new Amount(pressChange3Hr, PRESSURE_UNIT); - } else if ("VIS".equals(pName) && (this.horzVisibility != null)) { - a = new Amount(this.horzVisibility / 1000, VISIBILITY_UNIT); - } else if ("PKWND".equals(paramName) && (peakWindSpeed != MISSING)) { - a = new Amount(peakWindSpeed, WIND_SPEED_UNIT); - } else if ("SWS".equals(paramName) || "SWGS".equals(paramName)) { - a = new Amount(1, WIND_SPEED_UNIT); - } else if ("SWD".equals(paramName) && (primarySwellWaveDir != MISSING)) { - a = new Amount(primarySwellWaveDir, WIND_DIR_UNIT); - } - - return a; - } - - @Override - public Collection getValues(String paramName) { - return null; - } - @Override public PointDataView getPointDataView() { return pointDataView; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.shef/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.shef/META-INF/MANIFEST.MF index 3668d8a1b8..bb5445645e 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.shef/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.shef/META-INF/MANIFEST.MF @@ -2,12 +2,12 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Shef Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.shef -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", + javax.measure, com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174" Export-Package: com.raytheon.uf.common.dataplugin.shef.tables, com.raytheon.uf.common.dataplugin.shef.util diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ParameterCode.java b/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ParameterCode.java index efbb5ae149..b21aeaec9c 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ParameterCode.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ParameterCode.java @@ -19,9 +19,9 @@ **/ package com.raytheon.uf.common.dataplugin.shef.util; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; +import java.util.Collections; import java.util.HashMap; +import java.util.Map; /** * Provides methods to map human readable descriptions to shef parameter codes. @@ -50,6 +50,8 @@ import java.util.HashMap; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Oct 13, 2008 jelkins Initial creation + * Apr 29, 2014 3088 mpduff Clean up/optimization. + * * * * @author jelkins @@ -120,6 +122,12 @@ public class ParameterCode { UNKNOWN; + private static Map map; + + static { + map = Collections.unmodifiableMap(createMap()); + } + private String code; PhysicalElementCategory() { @@ -134,10 +142,22 @@ public class ParameterCode { } public static PhysicalElementCategory getEnum(String code) { - return (PhysicalElementCategory) ParameterCode.getEnum(UNKNOWN, - code, "getCode"); + PhysicalElementCategory p = map.get(code); + if (p != null) { + return p; + } + return UNKNOWN; } + private static Map createMap() { + Map map = new HashMap( + PhysicalElementCategory.values().length); + for (PhysicalElementCategory p : PhysicalElementCategory.values()) { + map.put(p.getCode(), p); + } + + return map; + } } /** @@ -167,7 +187,7 @@ public class ParameterCode { */ public static enum PhysicalElement { - AGRICULTURAL_RESERVED("AD",null), + AGRICULTURAL_RESERVED("AD", null), /** * Frost Intensity: @@ -185,10 +205,10 @@ public class ParameterCode { * copious deposit of frost * */ - AGRICULTURAL_SURFACE_FROST("AF",null), + AGRICULTURAL_SURFACE_FROST("AF", null), /** percent of green vegetation (%) */ - AGRICULTURAL_GREEN_VEGETATION("AG",null), + AGRICULTURAL_GREEN_VEGETATION("AG", null), /** * Surface Dew Intensity: @@ -206,159 +226,159 @@ public class ParameterCode { * under trees and sheltered areas * */ - AGRICULTURAL_SURFACE_DEW("AM",null), + AGRICULTURAL_SURFACE_DEW("AM", null), /** Time below critical temperature, 25 DF or -3.9 DC (HRS and MIN) */ - AGRICULTURAL_TIME_BELOW_25F("AT",null), + AGRICULTURAL_TIME_BELOW_25F("AT", null), /** Time below critical temperature, 32 DF or 0 DC (HRS and MIN) */ - AGRICULTURAL_TIME_BELOW_32F("AU",null), + AGRICULTURAL_TIME_BELOW_32F("AU", null), /** Leaf wetness (HRS and MIN) */ - AGRICULTURAL_LEAF_WETNESS("AW",null), + AGRICULTURAL_LEAF_WETNESS("AW", null), // TODO Figure out what B means /** Solid portion of water equivalent (in, mm) */ - B_WATER_EQUIVALENT_SOLID("BA",null), + B_WATER_EQUIVALENT_SOLID("BA", null), /** (in, mm) */ - B_HEAT_DEFICIT("BB",null), + B_HEAT_DEFICIT("BB", null), /** Liquid water storage (in, mm) */ - B_LIQUID_WATER_STORAGE("BC",null), + B_LIQUID_WATER_STORAGE("BC", null), /** (DF, DC) */ - B_TEMPERATURE_INDEX("BD",null), + B_TEMPERATURE_INDEX("BD", null), /** Maximum water equivalent since snow began to accumulate (in, mm) */ - B_WATER_EQUIVALENT_MAX("BE",null), + B_WATER_EQUIVALENT_MAX("BE", null), /** Areal water equivalent just prior to the new snowfall (in, mm) */ - B_WATER_EQUIVALENT_PRE_SNOW("BF",null), + B_WATER_EQUIVALENT_PRE_SNOW("BF", null), /** * Areal extent of snow cover from the areal depletion curve just prior * to the new snowfall (%) */ - B_SNOW_COVER("BG",null), + B_SNOW_COVER("BG", null), /** * Amount of water equivalent above which 100 % areal snow cover * temporarily exists (in, mm) */ - B_WATER_EQUIVALENT_ABOVE_SNOW_COVER("BH",null), + B_WATER_EQUIVALENT_ABOVE_SNOW_COVER("BH", null), /** Excess liquid water in storage (in, mm) */ - B_LIQUID_WATER_STORAGE_EXCESS("BI",null), + B_LIQUID_WATER_STORAGE_EXCESS("BI", null), /** Areal extent of snow cover adjustment (in, mm) */ - B_SNOW_COVER_ADJUSTMENT("BJ",null), + B_SNOW_COVER_ADJUSTMENT("BJ", null), /** Lagged excess liquid water for interval 1 (in, mm) */ - B_LIQUID_WATER_EXCESS_1("BK",null), + B_LIQUID_WATER_EXCESS_1("BK", null), /** Lagged excess liquid water for interval 2 (in, mm) */ - B_LIQUID_WATER_EXCESS_2("BL",null), + B_LIQUID_WATER_EXCESS_2("BL", null), /** Lagged excess liquid water for interval 3 (in, mm) */ - B_LIQUID_WATER_EXCESS_3("BM",null), + B_LIQUID_WATER_EXCESS_3("BM", null), /** Lagged excess liquid water for interval 4 (in, mm) */ - B_LIQUID_WATER_EXCESS_4("BN",null), + B_LIQUID_WATER_EXCESS_4("BN", null), /** Lagged excess liquid water for interval 5 (in, mm) */ - B_LIQUID_WATER_EXCESS_5("BO",null), + B_LIQUID_WATER_EXCESS_5("BO", null), /** Lagged excess liquid water for interval 6 (in, mm) */ - B_LIQUID_WATER_EXCESS_6("BP",null), + B_LIQUID_WATER_EXCESS_6("BP", null), /** Lagged excess liquid water for interval 7 (in, mm) */ - B_LIQUID_WATER_EXCESS_7("BQ",null), + B_LIQUID_WATER_EXCESS_7("BQ", null), // TODO Figure out what C means /** Upper zone tension water contents (in, mm) */ - C_UPPER_ZONE_TENSION_WATER("CA",null), + C_UPPER_ZONE_TENSION_WATER("CA", null), /** Upper zone free water contents (in, mm) */ - C_UPPER_ZONE_FREE_WATER("CB",null), + C_UPPER_ZONE_FREE_WATER("CB", null), /** Lower zone tension water contents (in, mm) */ - C_LOWER_ZONE_TENSION_WATER("CC",null), + C_LOWER_ZONE_TENSION_WATER("CC", null), /** Lower zone free water supplementary storage contents (in, mm) */ - C_LOWER_ZONE_FREE_WATER_SUPPLEMENTARY_STORAGE_CONTENTS("CD",null), + C_LOWER_ZONE_FREE_WATER_SUPPLEMENTARY_STORAGE_CONTENTS("CD", null), /** Lower zone free water primary storage contents (in, mm) */ - C_LOWER_ZONE_FREE_WATER_PRIMARY_STORAGE_CONTENTS("CE",null), + C_LOWER_ZONE_FREE_WATER_PRIMARY_STORAGE_CONTENTS("CE", null), /** Additional impervious area contents (in, mm) */ - C_ADDITIONAL_IMPERVIOUS_AREA_CONTENTS("CF",null), + C_ADDITIONAL_IMPERVIOUS_AREA_CONTENTS("CF", null), /** Antecedent precipitation index (in, mm) */ - C_ANTECEDENT_PRECIPITATION_INDEX("CG",null), + C_ANTECEDENT_PRECIPITATION_INDEX("CG", null), /** Soil moisture index deficit (in, mm) */ - C_SOIL_MOISTER_INDEX_DEFICIT("CH",null), + C_SOIL_MOISTER_INDEX_DEFICIT("CH", null), /** Base flow storage contents (in, mm) */ - C_BASE_FLOW_STORAGE_CONENTS("CI",null), + C_BASE_FLOW_STORAGE_CONENTS("CI", null), /** Base flow index (in, mm) */ - C_BASE_FLOW_INDEX("CJ",null), + C_BASE_FLOW_INDEX("CJ", null), /** First quadrant index Antecedent Evaporation Index (AEI) (in, mm) */ - C_FIRST_QUADRANT_AEI("CK",null), + C_FIRST_QUADRANT_AEI("CK", null), /** First quadrant index Antecedent Temperature Index (ATI) (DF, DC) */ - C_FIRST_QUADRANT_ATI("CL",null), + C_FIRST_QUADRANT_ATI("CL", null), /** Frost index (DF, DC) */ - C_FROST_INDEX("CM",null), + C_FROST_INDEX("CM", null), /** Frost efficiency index (%) */ - C_FROST_EFFICIENCY_INDEX("CN",null), + C_FROST_EFFICIENCY_INDEX("CN", null), /** Indicator of first quadrant index (AEI or ATI) */ - C_FIRST_QUADRANT_INDICATOR("CO",null), + C_FIRST_QUADRANT_INDICATOR("CO", null), /** Storm total rainfall (in, mm) */ - C_STORM_TOTAL_RAINFAL("CP",null), + C_STORM_TOTAL_RAINFAL("CP", null), /** Storm total runoff (in, mm) */ - C_STORM_TOTAL_RUNOFF("CQ",null), + C_STORM_TOTAL_RUNOFF("CQ", null), /** Storm antecedent index (in, mm) */ - C_STORM_ANTECEDENT_INDEX("CR",null), + C_STORM_ANTECEDENT_INDEX("CR", null), /** Current antecedent index (in, mm) */ - C_CURRENT_ANTECEDENT_INDEX("CS",null), + C_CURRENT_ANTECEDENT_INDEX("CS", null), /** Storm period counter (integer) */ - C_STORM_PERIOD_COUNTER("CT",null), + C_STORM_PERIOD_COUNTER("CT", null), /** Average air temperature (DF, DC) */ - C_AVERAGE_AIR_TEMPERATURE("CU",null), + C_AVERAGE_AIR_TEMPERATURE("CU", null), /** Current corrected synthetic temperature (DF, DC) */ - C_CURRENT_CORRECTED_SYNTHETIC_TEMPERATURE("CV",null), + C_CURRENT_CORRECTED_SYNTHETIC_TEMPERATURE("CV", null), /** Storm antecedent evaporation index, AEI (in, mm) */ - C_STORM_AEI("CW",null), + C_STORM_AEI("CW", null), /** Current AEI (in, mm) */ - C_CURRENT_AEI("CX",null), + C_CURRENT_AEI("CX", null), /** Current API (in, mm) */ - C_CURRENT_API("CY",null), + C_CURRENT_API("CY", null), /** Climate Index */ - C_CLIMATE_INDEX("CZ",null), + C_CLIMATE_INDEX("CZ", null), /** Evapotranspiration potential amount (IN, MM) */ - EVAPORATION_POTENTIAL_AMOUNT("EA",null), + EVAPORATION_POTENTIAL_AMOUNT("EA", null), /** Evaporation, pan depth (IN, MM) */ - EVAPORATION_PAN_DEPTH("ED",null), + EVAPORATION_PAN_DEPTH("ED", null), /** Evapotranspiration amount (IN, MM) */ - EVAPORATION_AMOUNT("EM",null), + EVAPORATION_AMOUNT("EM", null), /** Evaporation, pan increment (IN, MM) */ - EVAPORATION_PAN_INCREMENT("EP",null), + EVAPORATION_PAN_INCREMENT("EP", null), /** Evaporation rate (IN/day, MM/day) */ - EVAPORATION_RATE("ER",null), + EVAPORATION_RATE("ER", null), /** Evapotranspiration total (IN, MM) */ - EVAPORATION_TOTAL("ET",null), + EVAPORATION_TOTAL("ET", null), /** Evaporation, lake computed (IN, MM) */ - EVAPORATION_LAKE_COMPUTED("EV",null), + EVAPORATION_LAKE_COMPUTED("EV", null), /** Condition, road surface (coded, see Table 1) */ - GROUND_CONDITION("GC",null), + GROUND_CONDITION("GC", null), /** Frost depth, depth of frost penetration, non permafrost (IN, CM) */ - GROUND_FROST_DEPTH("GD",null), + GROUND_FROST_DEPTH("GD", null), /** Salt content on a surface (e.g., road) (%) */ - GROUND_SALT_CONTENT("GL",null), + GROUND_SALT_CONTENT("GL", null), /** Frost, depth of pavement surface (IN, CM) */ - GROUND_FROST_DEPTH_PAVEMENT("GP",null), + GROUND_FROST_DEPTH_PAVEMENT("GP", null), /** * Frost report, structure: *
@@ -372,8 +392,8 @@ public class ParameterCode { *
Stalactite *
*/ - GROUND_FROST_REPORT("GR",null), -/** + GROUND_FROST_REPORT("GR", null), + /** * Ground state: * *
    @@ -431,31 +451,31 @@ public class ParameterCode { *
    Sleet or hail covering the ground completely * */ - GROUND_STATE("GS",null), + GROUND_STATE("GS", null), /** Frost, depth of surface frost thawed (IN, CM) */ - GROUND_FROST_DEPTH_THAWED("GT",null), + GROUND_FROST_DEPTH_THAWED("GT", null), /** Frost, depth of pavement surface frost thawed (IN, CM) */ - GROUND_FROST_DEPTH_THAWED_PAVEMENT("GW",null), + GROUND_FROST_DEPTH_THAWED_PAVEMENT("GW", null), /** Height of reading, altitude above surface (FT, M) */ - HEIGHT_READING_ABOVE_SURFACE("HA",null), + HEIGHT_READING_ABOVE_SURFACE("HA", null), /** Depth of reading below surface (FT, M) */ - DEPTH_READING_BELOW_SURFACE("HB",null), + DEPTH_READING_BELOW_SURFACE("HB", null), /** Height, ceiling (FT, M) */ - HEIGHT_CEILING("HC",null), + HEIGHT_CEILING("HC", null), /** Height, head (FT, M) */ - HEIGHT_HEAD("HD",null), + HEIGHT_HEAD("HD", null), /** Height, regulating gate (FT, M) */ - HEIGHT_REGULATING_GATE("HE",null), + HEIGHT_REGULATING_GATE("HE", null), /** Elevation, project powerhouse forebay (FT, M) */ // TODO : Are these duplicates correct!? - RESERVOIR_FOREBAY_ELEVATION("HF",null), + RESERVOIR_FOREBAY_ELEVATION("HF", null), /** Elevation, project powerhouse forebay (FT, M) */ - ELEVATION_POWERHOUSE_FOREBAY("HF",null), + ELEVATION_POWERHOUSE_FOREBAY("HF", null), /** Height, river stage (FT, M) */ - HEIGHT_RIVER_STAGE("HG",null), + HEIGHT_RIVER_STAGE("HG", null), /** Height of reading, elevation in MSL (FT, M) */ - HEIGHT_READING_MSL("HH",null), -/** + HEIGHT_READING_MSL("HH", null), + /** * Stage trend indicator: * *
      @@ -484,63 +504,63 @@ public class ParameterCode { *
      Frozen * */ - STAGE_TREND_INDICATOR("HI",null), + STAGE_TREND_INDICATOR("HI", null), /** Height, spillway gate (FT, M) */ - HEIGHT_SPILLWAY_GATE("HJ",null), + HEIGHT_SPILLWAY_GATE("HJ", null), /** Height, lake above a specified datum (FT, M) */ - HEIGHT_LAKE_ABOVE_DATUM("HK",null), + HEIGHT_LAKE_ABOVE_DATUM("HK", null), /** Elevation, natural lake (FT, M) */ - ELEVATION_NATURAL_LAKE("HL",null), + ELEVATION_NATURAL_LAKE("HL", null), /** Height of tide, MLLW (FT, M) */ - HEIGHT_TIDE("HM",null), + HEIGHT_TIDE("HM", null), /** * (S) Height, river stage, daily minimum, translates to HGIRZNZ (FT, M) */ - HEIGHT_RIVER_STAGE_DAILY_MINIMUM("HN","HGIRZNZ"), + HEIGHT_RIVER_STAGE_DAILY_MINIMUM("HN", "HGIRZNZ"), /** Height, flood stage (FT, M) */ - HEIGHT_FLOOD_STAGE("HO",null), + HEIGHT_FLOOD_STAGE("HO", null), /** Elevation, pool (FT, M) */ - ELEVATION_POOL("HP",null), + ELEVATION_POOL("HP", null), /** * Distance from a ground reference point to the river's edge used to * estimate stage (coded, see Chapter 7.4.6) */ - STAGE_ESTIMATE("HQ",null), + STAGE_ESTIMATE("HQ", null), /** Elevation, lake or reservoir rule curve (FT, M) */ - ELEVATION_RULE_CURVE("HR",null), + ELEVATION_RULE_CURVE("HR", null), /** Elevation, spillway forebay (FT, M) */ - ELEVATION_SPILLWAY("HS",null), + ELEVATION_SPILLWAY("HS", null), /** Elevation, project tail water stage (FT, M) */ - ELEVATION_PROJECT_TAIL("HT",null), + ELEVATION_PROJECT_TAIL("HT", null), /** Height, cautionary stage (FT, M) */ - HEIGHT_CAUTIONARY_STAGE("HU",null), + HEIGHT_CAUTIONARY_STAGE("HU", null), /** Depth of water on a surface (e.g., road) (IN, MM) */ - DEPTH_SURFACE_WATER("HV",null), + DEPTH_SURFACE_WATER("HV", null), /** Height, spillway tail water (FT, M) */ - HEIGHT_SPILLWAY_TAIL_WATER("HW",null), + HEIGHT_SPILLWAY_TAIL_WATER("HW", null), /** * (S) Height, river stage, daily maximum, translates to HGIRZXZ (FT, M) */ - HEIGHT_RIVER_STAGE_DAILY_MAXIMUM("HX","HGIRZXZ"), + HEIGHT_RIVER_STAGE_DAILY_MAXIMUM("HX", "HGIRZXZ"), /** * (S) Height, river stage at 7 a.m. local just prior to date-time * stamp, translates to HGIRZZZ at 7 a.m. local time (FT, M) */ - HEIGHT_RIVER_STAGE_7AM("HY","HGIRZZZ"), + HEIGHT_RIVER_STAGE_7AM("HY", "HGIRZZZ"), /** Elevation, freezing level (KFT, KM) */ - ELEVATION_FREEZING_LEVEL("HZ",null), + ELEVATION_FREEZING_LEVEL("HZ", null), /** Ice cover, river (%) */ - ICE_COVER("IC",null), + ICE_COVER("IC", null), /** * Extent of ice from reporting area, upstream “+,” downstream - (MI, * KM) */ - ICE_EXTENT("IE",null), + ICE_EXTENT("IE", null), /** * Extent of open water from reporting area, downstream “+,” upstream - * (FT, M) */ - ICE_OPEN_WATER_EXTENT("IO",null), + ICE_OPEN_WATER_EXTENT("IO", null), /** * Ice report type, structure, and cover: * @@ -578,139 +598,139 @@ public class ParameterCode { * Fully covered 9 * */ - ICE_REPORT_TYPE("IR",null), + ICE_REPORT_TYPE("IR", null), /** Ice thickness (IN, CM) */ - ICE_THICKNESS("IT",null), + ICE_THICKNESS("IT", null), /** Lake surface area (KAC,KM2) */ - LAKE_SURFACE_AREA("LA",null), + LAKE_SURFACE_AREA("LA", null), /** - * Lake storage volume change (KAF,MCM) - * Thousands of acre-feet,Millions of cubic meters + * Lake storage volume change (KAF,MCM) Thousands of acre-feet,Millions + * of cubic meters */ - LAKE_STORAGE_VOLUME_CHANGE("LC",null), + LAKE_STORAGE_VOLUME_CHANGE("LC", null), /** Lake storage volume (KAF,MCM) */ - LAKE_STORAGE_VOLUME("LS",null), + LAKE_STORAGE_VOLUME("LS", null), /** * Dielectric Constant at depth, paired value vector (coded, see Chapter * 7.4.6 for format) */ - DIELECTRIC_CONSTANT("MD",null), + DIELECTRIC_CONSTANT("MD", null), /** Moisture, soil index or API (IN, CM) */ - MOISTURE_SOIL_INDEX("MI",null), + MOISTURE_SOIL_INDEX("MI", null), /** Moisture, lower zone storage (IN, CM) */ - MOISTURE_LOWER_ZONE_STORAGE("ML",null), + MOISTURE_LOWER_ZONE_STORAGE("ML", null), /** Fuel moisture, wood (%) */ - FUEL_MOISTURE("MM",null), + FUEL_MOISTURE("MM", null), /** * Soil Salinity at depth, paired value vector (coded, see Chapter 7.4.6 * for format) */ - SOIL_SALINITY("MN",null), + SOIL_SALINITY("MN", null), /** Soil Moisture amount at depth (coded, see Chapter 7.4.6) */ - SOIL_MOISTURE("MS",null), + SOIL_MOISTURE("MS", null), /** Fuel temperature, wood probe (DF, DC) */ - FUEL_TEMPERATURE("MT",null), + FUEL_TEMPERATURE("MT", null), /** Moisture, upper zone storage (IN, CM) */ - MOISTURE_UPPER_ZONE_STORAGE("MU",null), + MOISTURE_UPPER_ZONE_STORAGE("MU", null), /** * Water Volume at Depth, paired value vector (coded, see Chapter 7.4.6 * for format) */ - WATER_VOLUME("MV",null), + WATER_VOLUME("MV", null), /** Moisture, soil, percent by weight (%) */ - MOISTURE_SOIL("MW",null), + MOISTURE_SOIL("MW", null), /** * River control switch (0=manual river control, 1=open river * uncontrolled) */ - DAM_RIVER_CONTROL("NC",null), + DAM_RIVER_CONTROL("NC", null), /** Total of gate openings (FT, M) */ - DAM_GATE_OPENINGS("NG",null), + DAM_GATE_OPENINGS("NG", null), /** Number of large flash boards down (whole number) */ - DAM_LARGE_FLASH_BOARDS_DOWN("NL",null), + DAM_LARGE_FLASH_BOARDS_DOWN("NL", null), /** Number of the spillway gate reported (used with HP, QS) */ - DAM_SPILLWAY_GATE_REPORTED("NN",null), + DAM_SPILLWAY_GATE_REPORTED("NN", null), /** Gate opening for a specific gate (coded, see Chapter 7.4.6) */ - DAM_GATE_OPENING("NO",null), + DAM_GATE_OPENING("NO", null), /** Number of small flash boards down (whole number) */ - DAM_SMALL_FLASH_BOARDS_DOWN("NS",null), + DAM_SMALL_FLASH_BOARDS_DOWN("NS", null), /** Discharge, adjusted for storage at project only (KCFS, CMS) */ - DISCHARGE_ADJUSTED("QA",null), + DISCHARGE_ADJUSTED("QA", null), /** Runoff depth (IN, MM) */ - DISCHARGE_RUNOFF_DEPTH("QB",null), + DISCHARGE_RUNOFF_DEPTH("QB", null), /** Runoff volume (KAF, MCM) */ - DISCHARGE_RUNOFF_VOLUME("QC",null), + DISCHARGE_RUNOFF_VOLUME("QC", null), /** Discharge, canal diversion (KCFS, CMS) */ - DISCHARGE_CANAL_DIVERSION("QD",null), + DISCHARGE_CANAL_DIVERSION("QD", null), /** Discharge, percent of flow diverted from channel (%) */ - DISCHARGE_CHANNEL_FLOW_DIVERSION("QE",null), + DISCHARGE_CHANNEL_FLOW_DIVERSION("QE", null), /** Discharge velocity (MPH, KPH) */ - DISCHARGE_VELOCITY("QF",null), + DISCHARGE_VELOCITY("QF", null), /** Discharge from power generation (KCFS, CMS) */ - DISCHARGE_POWER_GENERATION("QG",null), + DISCHARGE_POWER_GENERATION("QG", null), /** Discharge, inflow (KCFS, CMS) */ - DISCHARGE_INFLOW("QI",null), + DISCHARGE_INFLOW("QI", null), /** Discharge, rule curve (KCFS, CMS) */ - DISCHARGE_RULE_CURVE("QL",null), + DISCHARGE_RULE_CURVE("QL", null), /** Discharge, preproject conditions in basin (KCFS, CMS) */ - DISCHARGE_PREPROJECT_CONDITION("QM",null), + DISCHARGE_PREPROJECT_CONDITION("QM", null), /** (S) Discharge, minimum flow, translates to QRIRZNZ (KCFS, CMS) */ - DISCHARGE_MINIMUM_FLOW("QN","QRIRZNZ"), + DISCHARGE_MINIMUM_FLOW("QN", "QRIRZNZ"), /** Discharge, pumping (KCFS, CMS) */ - DISCHARGE_PUMPING("QP",null), + DISCHARGE_PUMPING("QP", null), /** Discharge, river (KCFS, CMS) */ - DISCHARGE_RIVER("QR",null), + DISCHARGE_RIVER("QR", null), /** Discharge, spillway (KCFS, CMS) */ - DISCHARGE_SPILLWAY("QS",null), + DISCHARGE_SPILLWAY("QS", null), /** Discharge, computed total project outflow (KCFS, CMS) */ - DISCHARGE_TOTAL_PROJECT_OUTFLOW("QT",null), + DISCHARGE_TOTAL_PROJECT_OUTFLOW("QT", null), /** Discharge, controlled by regulating outlet (KCFS, CMS) */ - DISCHARGE_REGULATING_OUTLET_CONTROLLED("QU",null), + DISCHARGE_REGULATING_OUTLET_CONTROLLED("QU", null), /** Cumulative volume increment (KAF, MCM) */ - DISCHARGE_CUMULATIVE_VOLUME_INCREMENT("QV",null), + DISCHARGE_CUMULATIVE_VOLUME_INCREMENT("QV", null), /** (S) Discharge, maximum flow, translates to QRIRZXZ (KCFS, CMS) */ - DISCHARGE_MAXIMUM_FLOW("QX","QRIRZXZ"), + DISCHARGE_MAXIMUM_FLOW("QX", "QRIRZXZ"), /** * (S) Discharge, river at 7 a.m. local just prior to date-time stamp * translates to QRIRZZZ at 7 a.m. local time (KCFS, CMS) */ - DISCHARGE_RIVER_7AM("QY","QRIRZZZ"), + DISCHARGE_RIVER_7AM("QY", "QRIRZZZ"), /** Reserved */ - DISCHARGE_RESERVED("QZ",null), + DISCHARGE_RESERVED("QZ", null), /** Radiation, albedo (%) */ - RADIATION_ALBEDO("RA",null), + RADIATION_ALBEDO("RA", null), /** * Radiation, accumulated incoming solar over specified duration in * langleys (LY) */ - RADIATION_ACCUMULATED_SOLAR("RI",null), + RADIATION_ACCUMULATED_SOLAR("RI", null), /** Radiation, net radiometers (watts/meter squared) */ - RADIATION_NET_RADIOMETERS("RN",null), + RADIATION_NET_RADIOMETERS("RN", null), /** Radiation, sunshine percent of possible (%) */ - RADIATION_SUNSHINE_PERCENT("RP",null), + RADIATION_SUNSHINE_PERCENT("RP", null), /** Radiation, sunshine hours (HRS) */ - RADIATION_SUNSHINE_HOURS("RT",null), + RADIATION_SUNSHINE_HOURS("RT", null), /** Radiation, total incoming solar radiation (watts/meter squared) */ - RADIATION_TOTAL_SOLAR("RW",null), + RADIATION_TOTAL_SOLAR("RW", null), /** Snow, areal extent of basin snow cover (%) */ - SNOW_AREAL_EXTENT("SA",null), + SNOW_AREAL_EXTENT("SA", null), /** Snow, Blowing Snow Sublimation (IN) */ - SNOW_BLOWING_SNOW("SB",null), + SNOW_BLOWING_SNOW("SB", null), /** Snow, depth (IN, CM) */ - SNOW_DEPTH("SD",null), + SNOW_DEPTH("SD", null), /** Snow, Average Snowpack Temperature (DF) */ - SNOW_SNOWPACK_TEMPERATURE("SE",null), + SNOW_SNOWPACK_TEMPERATURE("SE", null), /** Snow, depth, new snowfall (IN, CM) */ - SNOW_NEW_SNOWFALL("SF","SFDRZZZ"), + SNOW_NEW_SNOWFALL("SF", "SFDRZZZ"), /** Snow, depth on top of river or lake ice (IN, CM) */ - SNOW_DEPTH_ON_ICE("SI",null), + SNOW_DEPTH_ON_ICE("SI", null), /** Snow, elevation of snow line (KFT, M) */ - SNOW_LINE_ELEVATION("SL",null), + SNOW_LINE_ELEVATION("SL", null), /** Snow, Melt (IN) */ - SNOW_MELT("SM",null), + SNOW_MELT("SM", null), /** Snowmelt plus rain (IN) */ - SNOW_PLUS_RAIN("SP",null), + SNOW_PLUS_RAIN("SP", null), /** * Snow report, structure, type, surface, and bottom: * @@ -738,280 +758,285 @@ public class ParameterCode { * Ice 3 Drifted 3 * */ - SNOW_REPORT("SR",null), + SNOW_REPORT("SR", null), /** Snow density (IN SWE/IN snow, CM SWE/CM snow) */ - SNOW_DENSITY("SS",null), + SNOW_DENSITY("SS", null), /** * Snow temperature at depth measured from ground (See Chapter 7.4.6 for * format) */ - SNOW_TEMPERATURE("ST",null), + SNOW_TEMPERATURE("ST", null), /** Snow, Surface Sublimation (IN) */ - SNOW_SURFACE_SUBLIMATION("SU",null), + SNOW_SURFACE_SUBLIMATION("SU", null), /** Snow, water equivalent (IN, MM) */ - SNOW_WATER_EQUIVALENT("SW",null), + SNOW_WATER_EQUIVALENT("SW", null), /** Temperature, air, dry bulb (DF,DC) */ - TEMPERATURE_AIR_DRY("TA",null), + TEMPERATURE_AIR_DRY("TA", null), /** * Temperature in bare soil at depth (coded, see Chapter 7.4.6 for * format) */ - TEMPERATURE_BARE_SOIL_DEPTH("TB",null), + TEMPERATURE_BARE_SOIL_DEPTH("TB", null), /** Temperature, degree days of cooling, above 65 DF or 18.3 DC (DF,DC) */ - TEMPERATURE_COOLING("TC",null), + TEMPERATURE_COOLING("TC", null), /** Temperature, dew point (DF,DC) */ - TEMPERATURE_DEW("TD",null), + TEMPERATURE_DEW("TD", null), /** * Temperature, air temperature at elevation above MSL (See Chapter * 7.4.6 for format) */ - TEMPERATURE_ELEVATION_ABOVE_MSL("TE",null), + TEMPERATURE_ELEVATION_ABOVE_MSL("TE", null), /** Temperature, degree days of freezing, below 32 DF or 0 DC (DF,DC) */ - TEMPERATURE_FREEZING("TF",null), + TEMPERATURE_FREEZING("TF", null), /** Temperature, degree days of heating, below 65 DF or 18.3 DC (DF,DC) */ - TEMPERATURE_HEATING("TH",null), + TEMPERATURE_HEATING("TH", null), /** Temperature, departure from normal (DF, DC) */ - TEMPERATURE_NORMAL_DEPARTURE("TJ",null), + TEMPERATURE_NORMAL_DEPARTURE("TJ", null), /** Temperature, air, wet bulb (DF,DC) */ - TEMPERATURE_AIR_WET("TM",null), + TEMPERATURE_AIR_WET("TM", null), /** (S) Temperature, air minimum, translates to TAIRZNZ (DF,DC) */ - TEMPERATURE_AIR_MINIMUM("TN","TAIRZNZ"), + TEMPERATURE_AIR_MINIMUM("TN", "TAIRZNZ"), /** Temperature, pan water (DF,DC) */ - TEMPERATURE_PAN_WATER("TP",null), + TEMPERATURE_PAN_WATER("TP", null), /** Temperature, road surface (DF,DC) */ - TEMPERATURE_ROAD_SURFACE("TR",null), + TEMPERATURE_ROAD_SURFACE("TR", null), /** Temperature, bare soil at the surface (DF,DC) */ - TEMPERATURE_BARE_SOIL_SURFACE("TS",null), + TEMPERATURE_BARE_SOIL_SURFACE("TS", null), /** * Temperature in vegetated soil at depth (coded, see Chapter 7.4.6 for * format) */ - TEMPERATURE_VEGETAGED_SOIL_DEPTH("TV",null), + TEMPERATURE_VEGETAGED_SOIL_DEPTH("TV", null), /** Temperature, water (DF,DC) */ - TEMPERATURE_WATER("TW",null), + TEMPERATURE_WATER("TW", null), /** (S) Temperature, air maximum, translates to TAIRZXZ (DF,DC) */ - TEMPERATURE_AIR_MAXIMUM("TX","TAIRZXZ"), + TEMPERATURE_AIR_MAXIMUM("TX", "TAIRZXZ"), /** Temperature, Freezing, road surface (DF,DC) */ - TEMPERATURE_FREEZING_SURFACE("TZ",null), + TEMPERATURE_FREEZING_SURFACE("TZ", null), /** Wind, accumulated wind travel (MI,KM) */ - WIND_ACCUMULATED_TRAVEL("UC",null), + WIND_ACCUMULATED_TRAVEL("UC", null), /** Wind, direction (whole degrees) */ - WIND_DIRECTION("UD",null), + WIND_DIRECTION("UD", null), /** Wind, standard deviation (Degrees) */ - WIND_STANDARD_DEVIATION("UE",null), + WIND_STANDARD_DEVIATION("UE", null), /** Wind, gust at observation time (MPH,M/SEC) */ - WIND_GUST("UG",null), + WIND_GUST("UG", null), /** Wind, travel length accumulated over specified (MI,KM) */ - WIND_TRAVEL_LENGTH("UL",null), + WIND_TRAVEL_LENGTH("UL", null), /** Peak wind speed (MPH) */ - WIND_PEAK("UP",null), + WIND_PEAK("UP", null), /** * Wind direction and speed combined (SSS.SDDD), a value of 23.0275 * would indicate a wind of 23.0 MPH from 275 degrees */ - WIND_DIRECTION_SPEED("UQ",null), + WIND_DIRECTION_SPEED("UQ", null), /** * Peak wind direction associated with peak wind speed (in tens of * degrees) */ - WIND_PEEK_DIRECTION_SPEED("UR",null), + WIND_PEEK_DIRECTION_SPEED("UR", null), /** Wind, speed (MPH,M/SEC) */ - WIND_SPEED("US",null), + WIND_SPEED("US", null), /** Voltage - battery (volt) */ - GENERATION_BATTERY_VOLTAGE("VB",null), + GENERATION_BATTERY_VOLTAGE("VB", null), /** Generation, surplus capacity of units on line (megawatts) */ - GENERATION_SURPLUS_CAPACITY("VC",null), + GENERATION_SURPLUS_CAPACITY("VC", null), /** Generation, energy total (megawatt hours) */ - GENERATION_ENERGY_TOTAL("VE",null), + GENERATION_ENERGY_TOTAL("VE", null), /** Generation, pumped water, power produced (megawatts) */ - GENERATION_PUMPED_WATER_POWER_PRODUCED("VG",null), + GENERATION_PUMPED_WATER_POWER_PRODUCED("VG", null), /** Generation, time (HRS) */ - GENERATION_TIME("VH",null), + GENERATION_TIME("VH", null), /** Generation, energy produced from pumped water (megawatt hours) */ - GENERATION_PUMPED_WATER_ENERGY_PRODUCED("VJ",null), + GENERATION_PUMPED_WATER_ENERGY_PRODUCED("VJ", null), /** Generation, energy stored in reservoir only (megawatt * “duration”) */ - GENERATION_ENERGY_STORED_RESERVOIR("VK",null), + GENERATION_ENERGY_STORED_RESERVOIR("VK", null), /** Generation, storage due to natural flow only (megawatt * “duration”) */ - GENERATION_ENERGY_STORED_NATURAL_FLOW("VL",null), + GENERATION_ENERGY_STORED_NATURAL_FLOW("VL", null), /** * Generation, losses due to spill and other water losses (megawatt * * “duration”) */ - GENERATION_ENERGY_LOSSES("VM",null), + GENERATION_ENERGY_LOSSES("VM", null), /** Generation, pumping use, power used (megawatts) */ - GENERATION_PUMPING_POWER_USED("VP",null), + GENERATION_PUMPING_POWER_USED("VP", null), /** Generation, pumping use, total energy used (megawatt hours) */ - GENERATION_PUMPING_ENERGY_USED("VQ",null), + GENERATION_PUMPING_ENERGY_USED("VQ", null), /** * Generation, stored in reservoir plus natural flow, energy potential * (megawatt * “duration”) */ - GENERATION_ENERGY_POTENTIAL("VR",null), + GENERATION_ENERGY_POTENTIAL("VR", null), /** Generation, station load, energy used (megawatt hours) */ - GENERATION_STATION_LOAD_ENERGY_USED("VS",null), + GENERATION_STATION_LOAD_ENERGY_USED("VS", null), /** Generation, power total (megawatts) */ - GENERATION_POWER_TOTAL("VT",null), + GENERATION_POWER_TOTAL("VT", null), /** Generator, status (encoded) */ - GENERATION_GENERATOR_STATUS("VU",null), + GENERATION_GENERATOR_STATUS("VU", null), /** Generation station load, power used (megawatts) */ - GENERATION_STATION_LOAD_POWER_USED("VW",null), + GENERATION_STATION_LOAD_POWER_USED("VW", null), /** Water, dissolved nitrogen & argon (PPM, MG/L) */ - WATER_DISSOLVED_NITROGEN_ARGON("WA",null), + WATER_DISSOLVED_NITROGEN_ARGON("WA", null), /** Water, conductance (uMHOS/CM) */ - WATER_CONDUCTANCE("WC",null), + WATER_CONDUCTANCE("WC", null), /** Water, piezometer water depth (IN, CM) */ - WATER_DEPTH("WD",null), + WATER_DEPTH("WD", null), /** Water, dissolved total gases, pressure (IN-HG, MM-HG) */ - WATER_DISSOLVED_GASES("WG",null), + WATER_DISSOLVED_GASES("WG", null), /** Water, dissolved hydrogen sulfide (PPM, MG/L) */ - WATER_DISSOLVED_HYDROGEN_SULFIDE("WH",null), + WATER_DISSOLVED_HYDROGEN_SULFIDE("WH", null), /** Water, suspended sediment (PPM, MG/L) */ - WATER_SUSPENDED_SEDIMENT("WL",null), + WATER_SUSPENDED_SEDIMENT("WL", null), /** Water, dissolved oxygen (PPM, MG/L) */ - WATER_DISSOLVED_OXYGEN("WO",null), + WATER_DISSOLVED_OXYGEN("WO", null), /** Water, ph (PH value) */ - WATER_PH("WP",null), + WATER_PH("WP", null), /** Water, salinity (parts per thousand, PPT) */ - WATER_SALINITY("WS",null), + WATER_SALINITY("WS", null), /** Water, turbidity (JTU) */ - WATER_TURBIDITY("WT",null), + WATER_TURBIDITY("WT", null), /** Water, velocity (FT/SEC, M/SEC) */ - WATER_VELOCITY("WV",null), + WATER_VELOCITY("WV", null), /** Water, Oxygen Saturation (%) */ - WATER_OXYGEN_SATURATION("WX",null), + WATER_OXYGEN_SATURATION("WX", null), /** Water, Chlorophyll (ppb (parts/billion), ug/L (micrograms/L)) */ - WATER_CHLOROPHYLL("WY",null), + WATER_CHLOROPHYLL("WY", null), /** Total sky cover (tenths) */ - WEATHER_SKY_COVER("XC",null), + WEATHER_SKY_COVER("XC", null), /** Lightning, number of strikes per grid box (whole number) */ - WEATHER_LIGHTENING_GRID("XG",null), + WEATHER_LIGHTENING_GRID("XG", null), /** * Lightning, point strike, assumed one strike at transmitted latitude * and longitude (whole number) */ - WEATHER_LIGHTENING_POINT_STRIKE("XL",null), + WEATHER_LIGHTENING_POINT_STRIKE("XL", null), /** Weather, past NWS synoptic code (see Appendix D) */ - WEATHER_SYNOPTIC_CODE_PAST("XP",null), + WEATHER_SYNOPTIC_CODE_PAST("XP", null), /** Humidity, relative (%) */ - WEATHER_HUMIDITY_RELATIVE("XR",null), + WEATHER_HUMIDITY_RELATIVE("XR", null), /** Humidity, absolute (grams/FT3,grams/M3) */ - WEATHER_HUMIDITY_ABSOLUTE("XU",null), + WEATHER_HUMIDITY_ABSOLUTE("XU", null), /** Weather, visibility (MI, KM) */ - WEATHER_VISIBILITY("XV",null), + WEATHER_VISIBILITY("XV", null), /** Weather, present NWS synoptic code (see Appendix C) */ - WEATHER_SYNOPTIC_CODE_PRESENT("XW",null), + WEATHER_SYNOPTIC_CODE_PRESENT("XW", null), /** * Number of 15-minute periods a river has been above a specified * critical level (whole number) */ - STATION_RIVER_ABOVE_CRITICAL("YA",null), + STATION_RIVER_ABOVE_CRITICAL("YA", null), /** Random report sequence number (whole number) */ - STATION_RANDOM_SEQUENCE("YC",null), + STATION_RANDOM_SEQUENCE("YC", null), /** * Forward power, a measurement of the DCP, antenna, and coaxial cable * (watts) */ - STATION_FORWARD_POWER("YF",null), + STATION_FORWARD_POWER("YF", null), /** SERFC unique */ - STATION_SERFC("YI",null), + STATION_SERFC("YI", null), /** Reserved Code */ - STATION_RESERVED("YP",null), + STATION_RESERVED("YP", null), /** * Reflected power, a measurement of the DCP, antenna, and coaxial cable * (watts) */ - STATION_REFLECTED_POWER("YR",null), + STATION_REFLECTED_POWER("YR", null), /** * Sequence number of the number of times the DCP has transmitted (whole * number) */ - STATION_TRANSMISSION_SEQUENCE("YS",null), + STATION_TRANSMISSION_SEQUENCE("YS", null), /** * Number of 15-minute periods since a random report was generated due * to an increase of 0.4 inch of precipitation (whole number) */ - STATION_RANDOM_PRECIPITATION_REPORT("YT",null), + STATION_RANDOM_PRECIPITATION_REPORT("YT", null), /** GENOR raingage status level 1 - NERON observing sites (YUIRG) */ - STATION_GENOR_STATUS1("YU",null), + STATION_GENOR_STATUS1("YU", null), /** A Second Battery Voltage (NERON sites ONLY), voltage 0 (YVIRG) */ - STATION_SECOND_BATTERY_VOLTAGE("YV",null), + STATION_SECOND_BATTERY_VOLTAGE("YV", null), /** GENOR raingage status level 2 - NERON observing sites (YWIRG) */ // STATION_GENOR_STATUS2("YW",null), /** GENOR raingage status level 3 - NERON observing sites (YYIRG) */ - STATION_GENOR_STATUS3("YY",null), + STATION_GENOR_STATUS3("YY", null), /** * Time of Observation – Minutes of the calendar day, minutes 0 - NERON * observing sites (YZIRG) */ // STATION_OBSERVATION_TIME("YZ",null), - FISH_SHAD("FA",null), + FISH_SHAD("FA", null), - FISH_SOCKEYE("FB",null), + FISH_SOCKEYE("FB", null), - FISH_CHINOOK("FC",null), + FISH_CHINOOK("FC", null), - FISH_CHUM("FE",null), + FISH_CHUM("FE", null), - FISH_COHO("FK",null), + FISH_COHO("FK", null), /** 1=left, 2=right, 3=total */ - FISH_LADDER("FL",null), + FISH_LADDER("FL", null), - FISH_PINK("FP",null), + FISH_PINK("FP", null), - FISH_STEELHEAD("FS",null), + FISH_STEELHEAD("FS", null), /** 1=adult, 2=jacks, 3=fingerlings */ - FISH_TYPE("FT",null), + FISH_TYPE("FT", null), /** Count of all types combined */ - FISH_ALL("FZ",null), + FISH_ALL("FZ", null), - PRESSURE_ATMOSPHERIC("PA",null), + PRESSURE_ATMOSPHERIC("PA", null), /** Atmospheric net change during past 3 hours */ - PRESSURE_ATMOSPHERIC_3HR("PD",null), + PRESSURE_ATMOSPHERIC_3HR("PD", null), - PRESSURE_SEA_LEVEL("PL",null), + PRESSURE_SEA_LEVEL("PL", null), - PRESSURE_CHARACTERISTIC("PE",null), + PRESSURE_CHARACTERISTIC("PE", null), /** * Precipitation, flash flood guidance, precipitation to initiate * flooding, translates to PPTCF for 3-hour intervals */ - PRECIPITATION_FLASH_FLOOD_GUIDANCE("PF","PPTCF"), + PRECIPITATION_FLASH_FLOOD_GUIDANCE("PF", "PPTCF"), /** Departure from normal */ - PRECIPITATION_NORMAL_DEPARTURE("PJ",null), + PRECIPITATION_NORMAL_DEPARTURE("PJ", null), - PRECIPITATION_ACCUMULATOR("PC",null), + PRECIPITATION_ACCUMULATOR("PC", null), /** Probability of measurable precipitation (dimensionless) */ - PRECIPITATION_MEASURABLE_PROBABILITY("PM",null), + PRECIPITATION_MEASURABLE_PROBABILITY("PM", null), - PRECIPITATION_NORMAL("PN",null), + PRECIPITATION_NORMAL("PN", null), - PRECIPITATION_INCREMENT("PP",null), + PRECIPITATION_INCREMENT("PP", null), - PRECIPITATION_RATE("PR",null), + PRECIPITATION_RATE("PR", null), - PRECIPITATION_TYPE("PT",null), + PRECIPITATION_TYPE("PT", null), /** * (S) Precipitation, increment ending at 7 a.m. local just prior to - * date-time stamp, translates to PPDRZZZ at 7 a.m. local time - * (IN,MM) + * date-time stamp, translates to PPDRZZZ at 7 a.m. local time (IN,MM) */ - PRECIPITATION_INCREMENT_DAILY("PY","PPDRZZZ"), + PRECIPITATION_INCREMENT_DAILY("PY", "PPDRZZZ"), - UNKNOWN(null,null); + UNKNOWN(null, null); private String code; - + private final String translatedCode; - + + private static Map map; + + static { + map = Collections.unmodifiableMap(createMap()); + } + private PhysicalElement(String code, String translation) { this.code = code; translatedCode = translation; @@ -1023,29 +1048,46 @@ public class ParameterCode { /** * Get the PE translation, if defined. + * * @return The PE translation if defined. Null reference otherwise. */ public String translate() { return translatedCode; } - + public PhysicalElementCategory getCategory() { return PhysicalElementCategory.getEnum(this.code.substring(0, 1)); } public static PhysicalElement getEnum(String code) { - return (PhysicalElement) ParameterCode.getEnum(UNKNOWN, code, - "getCode"); + PhysicalElement p = map.get(code); + if (p != null) { + return p; + } + return UNKNOWN; + } + + private static Map createMap() { + Map map = new HashMap( + PhysicalElement.values().length); + for (PhysicalElement pe : PhysicalElement.values()) { + map.put(pe.getCode(), pe); + } + + return map; } } - - private static final HashMap TRACE_CODES = new HashMap(); + private static final HashMap TRACE_CODES = new HashMap(); static { - TRACE_CODES.put(PhysicalElement.PRECIPITATION_INCREMENT, PhysicalElement.PRECIPITATION_INCREMENT); - TRACE_CODES.put(PhysicalElement.PRECIPITATION_ACCUMULATOR, PhysicalElement.PRECIPITATION_ACCUMULATOR); - TRACE_CODES.put(PhysicalElement.PRECIPITATION_INCREMENT_DAILY, PhysicalElement.PRECIPITATION_INCREMENT_DAILY); - TRACE_CODES.put(PhysicalElement.SNOW_NEW_SNOWFALL, PhysicalElement.SNOW_NEW_SNOWFALL); + TRACE_CODES.put(PhysicalElement.PRECIPITATION_INCREMENT, + PhysicalElement.PRECIPITATION_INCREMENT); + TRACE_CODES.put(PhysicalElement.PRECIPITATION_ACCUMULATOR, + PhysicalElement.PRECIPITATION_ACCUMULATOR); + TRACE_CODES.put(PhysicalElement.PRECIPITATION_INCREMENT_DAILY, + PhysicalElement.PRECIPITATION_INCREMENT_DAILY); + TRACE_CODES.put(PhysicalElement.SNOW_NEW_SNOWFALL, + PhysicalElement.SNOW_NEW_SNOWFALL); } /** @@ -1056,8 +1098,7 @@ public class ParameterCode { public static final boolean usesTrace(PhysicalElement element) { return (TRACE_CODES.get(element) != null); } - - + /** * The duration code describes the period to which an observed or computed * increment applies, such as mean discharge or precipitation increment. If @@ -1175,6 +1216,12 @@ public class ParameterCode { /** used in legacy shef processing code */ private int value; + private static Map map; + + static { + map = Collections.unmodifiableMap(createMap()); + } + Duration(String code) { this.code = code; } @@ -1213,64 +1260,105 @@ public class ParameterCode { * Duration.UNKNOWN if no match is found. */ public static Duration getEnum(String code) { - return (Duration) ParameterCode.getEnum(UNKNOWN, code, "getCode"); + Duration d = map.get(code); + if (d != null) { + return d; + } + + return UNKNOWN; } public static Duration getDefault(PhysicalElement pe) { Duration d = DEFAULT_DURATIONS.get(pe); - if(d == null) { + if (d == null) { d = INSTANTENOUS; } return d; } + + private static Map createMap() { + Map map = new HashMap(); + for (Duration d : Duration.values()) { + map.put(d.getCode(), d); + } + + return map; + } + } - private static final HashMap DEFAULT_DURATIONS = new HashMap(); + private static final HashMap DEFAULT_DURATIONS = new HashMap(); static { - DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_RESERVED, Duration.DEFAULT); - DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_TIME_BELOW_25F, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_TIME_BELOW_32F, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_LEAF_WETNESS, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_POTENTIAL_AMOUNT, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_AMOUNT, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_PAN_INCREMENT, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_RATE, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_TOTAL, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_LAKE_COMPUTED, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.LAKE_STORAGE_VOLUME_CHANGE, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.PRECIPITATION_INCREMENT, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.PRECIPITATION_RATE, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.DISCHARGE_RUNOFF_VOLUME, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.DISCHARGE_CUMULATIVE_VOLUME_INCREMENT, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.RADIATION_ACCUMULATED_SOLAR, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.RADIATION_SUNSHINE_PERCENT, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.RADIATION_SUNSHINE_HOURS, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.SNOW_NEW_SNOWFALL, Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_RESERVED, + Duration.DEFAULT); + DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_TIME_BELOW_25F, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_TIME_BELOW_32F, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.AGRICULTURAL_LEAF_WETNESS, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_POTENTIAL_AMOUNT, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_AMOUNT, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_PAN_INCREMENT, + Duration._1_DAY); + DEFAULT_DURATIONS + .put(PhysicalElement.EVAPORATION_RATE, Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_TOTAL, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.EVAPORATION_LAKE_COMPUTED, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.LAKE_STORAGE_VOLUME_CHANGE, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.PRECIPITATION_INCREMENT, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.PRECIPITATION_RATE, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.DISCHARGE_RUNOFF_VOLUME, + Duration._1_DAY); + DEFAULT_DURATIONS.put( + PhysicalElement.DISCHARGE_CUMULATIVE_VOLUME_INCREMENT, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.RADIATION_ACCUMULATED_SOLAR, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.RADIATION_SUNSHINE_PERCENT, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.RADIATION_SUNSHINE_HOURS, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.SNOW_NEW_SNOWFALL, + Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.TEMPERATURE_COOLING, Duration.SEASONAL_PERIOD); - DEFAULT_DURATIONS.put(PhysicalElement.TEMPERATURE_FREEZING, Duration.SEASONAL_PERIOD); - DEFAULT_DURATIONS.put(PhysicalElement.TEMPERATURE_HEATING, Duration.SEASONAL_PERIOD); - - DEFAULT_DURATIONS.put(PhysicalElement.WIND_ACCUMULATED_TRAVEL, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.WIND_TRAVEL_LENGTH, Duration._1_DAY); - DEFAULT_DURATIONS.put(PhysicalElement.WEATHER_LIGHTENING_GRID, Duration._30_MINUTES); - DEFAULT_DURATIONS.put(PhysicalElement.WEATHER_SYNOPTIC_CODE_PAST, Duration._6_HOUR); + DEFAULT_DURATIONS.put(PhysicalElement.TEMPERATURE_COOLING, + Duration.SEASONAL_PERIOD); + DEFAULT_DURATIONS.put(PhysicalElement.TEMPERATURE_FREEZING, + Duration.SEASONAL_PERIOD); + DEFAULT_DURATIONS.put(PhysicalElement.TEMPERATURE_HEATING, + Duration.SEASONAL_PERIOD); + + DEFAULT_DURATIONS.put(PhysicalElement.WIND_ACCUMULATED_TRAVEL, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.WIND_TRAVEL_LENGTH, + Duration._1_DAY); + DEFAULT_DURATIONS.put(PhysicalElement.WEATHER_LIGHTENING_GRID, + Duration._30_MINUTES); + DEFAULT_DURATIONS.put(PhysicalElement.WEATHER_SYNOPTIC_CODE_PAST, + Duration._6_HOUR); } - + /** - * Note that these are defined "meta" types. - * TODO Add Description + * Note that these are defined "meta" types. TODO Add Description * *
      -     *
      +     * 
            * SOFTWARE HISTORY
      -     *
      +     * 
            * Date         Ticket#    Engineer    Description
            * ------------ ---------- ----------- --------------------------
            * Mar 9, 2011            jkorman     Initial creation
      -     *
      +     * 
            * 
      - * + * * @author jkorman * @version 1.0 */ @@ -1279,17 +1367,18 @@ public class ParameterCode { /** * Get the metatype based on the Type Source code and flag. + * * @param ts * @param procObs * @return */ public static DataType getDataType(TypeSource ts, boolean procObs) { DataType type = null; - + // Don't use the TypeSource directly because there are some cases // where the "type" defaults. (See the last else clause) - String dType = ts.getCode().substring(0,1); - String dSrc = ts.getCode().substring(1,2); + String dType = ts.getCode().substring(0, 1); + String dSrc = ts.getCode().substring(1, 2); if ("R".equals(dType)) { type = READING; } else if ("F".equals(dType)) { @@ -1444,35 +1533,18 @@ public class ParameterCode { FORECAST_UNADJUSTED_MODEL4("FX"), /** Nonspecific forecast data (default for this type category) */ FORECAST_NONSPECIFIC("FZ"), - //*********************** + // *********************** // Reserved for historical use - HISTORIC_RESERVED_A("HA"), - HISTORIC_RESERVED_B("HB"), - HISTORIC_RESERVED_C("HC"), - HISTORIC_RESERVED_D("HD"), - HISTORIC_RESERVED_E("HE"), - HISTORIC_RESERVED_F("HF"), - HISTORIC_RESERVED_G("HG"), - HISTORIC_RESERVED_H("HH"), - HISTORIC_RESERVED_I("HI"), - HISTORIC_RESERVED_J("HJ"), - HISTORIC_RESERVED_K("HK"), - HISTORIC_RESERVED_L("HL"), - HISTORIC_RESERVED_M("HM"), - HISTORIC_RESERVED_N("HN"), - HISTORIC_RESERVED_O("HO"), - HISTORIC_RESERVED_P("HP"), - HISTORIC_RESERVED_Q("HQ"), - HISTORIC_RESERVED_R("HR"), - HISTORIC_RESERVED_S("HS"), - HISTORIC_RESERVED_T("HT"), - HISTORIC_RESERVED_U("HU"), - HISTORIC_RESERVED_V("HV"), - HISTORIC_RESERVED_W("HW"), - HISTORIC_RESERVED_X("HX"), - HISTORIC_RESERVED_Y("HY"), - HISTORIC_RESERVED_Z("HZ"), - + HISTORIC_RESERVED_A("HA"), HISTORIC_RESERVED_B("HB"), HISTORIC_RESERVED_C( + "HC"), HISTORIC_RESERVED_D("HD"), HISTORIC_RESERVED_E("HE"), HISTORIC_RESERVED_F( + "HF"), HISTORIC_RESERVED_G("HG"), HISTORIC_RESERVED_H("HH"), HISTORIC_RESERVED_I( + "HI"), HISTORIC_RESERVED_J("HJ"), HISTORIC_RESERVED_K("HK"), HISTORIC_RESERVED_L( + "HL"), HISTORIC_RESERVED_M("HM"), HISTORIC_RESERVED_N("HN"), HISTORIC_RESERVED_O( + "HO"), HISTORIC_RESERVED_P("HP"), HISTORIC_RESERVED_Q("HQ"), HISTORIC_RESERVED_R( + "HR"), HISTORIC_RESERVED_S("HS"), HISTORIC_RESERVED_T("HT"), HISTORIC_RESERVED_U( + "HU"), HISTORIC_RESERVED_V("HV"), HISTORIC_RESERVED_W("HW"), HISTORIC_RESERVED_X( + "HX"), HISTORIC_RESERVED_Y("HY"), HISTORIC_RESERVED_Z("HZ"), + /** Sacramento Soil Moisture Accounting Model */ MODEL_SACRAMENTO_SOIL_MOISTURE_ACCOUNTING("MS"), /** Continuous Antecedent Precipitation Index (API) Model */ @@ -2064,6 +2136,8 @@ public class ParameterCode { private String code; + private static Map map; + TypeSource() { } @@ -2085,14 +2159,29 @@ public class ParameterCode { } public static TypeSource getEnum(String code) { - if(code.length() == 2) { - if(code.charAt(0) == 'Z') { + if (code.length() == 2) { + if (code.charAt(0) == 'Z') { code = "R" + code.charAt(1); } } - return (TypeSource) ParameterCode.getEnum(UNKNOWN, code, "getCode"); + + if (map == null) { + createMap(); + } + TypeSource ts = map.get(code); + if (ts != null) { + return ts; + } + + return UNKNOWN; } + private static void createMap() { + map = new HashMap(); + for (TypeSource ts : TypeSource.values()) { + map.put(ts.getCode(), ts); + } + } } /** @@ -2146,6 +2235,12 @@ public class ParameterCode { UNKNOWN; + private static Map map; + + static { + map = Collections.unmodifiableMap(createMap()); + } + private String code; Extremum() { @@ -2160,9 +2255,20 @@ public class ParameterCode { } public static Extremum getEnum(String code) { - return (Extremum) ParameterCode.getEnum(UNKNOWN, code, "getCode"); + Extremum e = map.get(code); + if (e != null) { + return e; + } + return UNKNOWN; } + private static Map createMap() { + Map map = new HashMap(); + for (Extremum e : Extremum.values()) { + map.put(e.getCode(), e); + } + return map; + } } /** @@ -2268,6 +2374,11 @@ public class ParameterCode { UNKNOWN; + private static Map map; + static { + map = Collections.unmodifiableMap(createMap()); + } + private String code; private double value; @@ -2290,82 +2401,19 @@ public class ParameterCode { } public static Probability getEnum(String code) { - return (Probability) ParameterCode - .getEnum(UNKNOWN, code, "getCode"); - } - - } - - /** - * Returns the enumeration constant matching the given key - *

      - * This method is a general utility function applicable to many enum classes - * and may be better moved to another more general package. - * - * @param enumType - * the type of enum to get. Becomes the default incase the key - * isn't found. - * @param key - * the key to find. TODO generalize the key type so that keys - * don't necissarily need to be Strings. - * @param keyMethod - * the method within the enum type which to use for locating the - * key - * @return an enumeration object matching the given key or the enumType - * object if no enumeration is found. - */ - private static Object getEnum(Object enumType, String key, String keyMethod) { - - Object ret = enumType; - - for (Object o : enumType.getClass().getEnumConstants()) { - - try { - Method getCode = enumType.getClass().getMethod(keyMethod, - new Class[] {}); - String code = (String) getCode.invoke(o, new Object[] {}); - - if (code != null && code.equals(key)) { - ret = o; - } - - } catch (SecurityException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (NoSuchMethodException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (IllegalArgumentException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (IllegalAccessException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (InvocationTargetException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + Probability p = map.get(code); + if (p != null) { + return p; } - + return UNKNOWN; } - return ret; - + private static Map createMap() { + Map map = new HashMap(); + for (Probability p : Probability.values()) { + map.put(p.getCode(), p); + } + return map; + } } - - public static final void main(String [] args) { - - TypeSource ts = TypeSource.getEnum("I1"); - - System.out.println(ts.getType()); - - System.out.println(ts.getSource()); - - - - - - - - } - } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ShefConstants.java b/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ShefConstants.java index 658203c731..9ae6d01386 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ShefConstants.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.shef/src/com/raytheon/uf/common/dataplugin/shef/util/ShefConstants.java @@ -37,6 +37,7 @@ import java.util.regex.Pattern; * 10/16/2008 1548 jelkins Removed unneeded constants * 02/02/2009 1943 jsanchez Added shef_load_maxfcst. * 06/03/2009 2410 jsanchez Changed kk to HH. + * 04/29/2014 3088 mpduff Added MILLLIS_PER_SECOND; * * */ @@ -50,25 +51,27 @@ public class ShefConstants { public static final String TYPE_E = ".E"; public static final int MILLIS_PER_SECOND = 1000; - + public static final int MILLIS_PER_MINUTE = MILLIS_PER_SECOND * 60; + public static final int MILLIS_PER_HOUR = MILLIS_PER_SECOND * 60 * 60; + public static final long MILLIS_PER_DAY = 1000 * 60 * 60 * 24; public static final long HALF_YEAR = 365L * 24L * 3600L * 1000L / 2L; public static final String SHEF_SKIPPED = "-9998"; - + public static final String SHEF_MISSING = "-9999"; public static final String SHEF_MISSING_DEC = "-9999.0"; - + public static final int SHEF_MISSING_INT = -9999; public static final String SHEF_TRACE = "0.001"; - + public static final int SHEF_NOT_SERIES = 0; - + public static final Pattern SHEF_TYPE_PATTERN = Pattern.compile("\\.[ABE]"); public static final String EMPTYSTRING = ""; @@ -82,10 +85,9 @@ public class ShefConstants { public static final String SLASH = "/"; public static final int LOWER_LID_LIMIT = 2; - + public static final int UPPER_LID_LIMIT = 9; - - + /* Precipitation index constants */ public static final int NOT_PRECIP = 0; @@ -94,7 +96,7 @@ public class ShefConstants { public static final int RAWPP = 2; public static final int RAWPOTHER = 3; - + /** Greenwich Mean Time */ public static final String GMT = "GMT"; @@ -163,7 +165,7 @@ public class ShefConstants { public static final SimpleDateFormat YYMMJJJHHMM_FORMAT = new SimpleDateFormat( "yyMMDDHHmm"); - public static final String POSTGRES_DATE_STRING = "yyyy-MM-dd HH:mm:ss"; + public static final String POSTGRES_DATE_STRING = "yyyy-MM-dd HH:mm:ss"; public static final SimpleDateFormat POSTGRES_DATE_FORMAT = new SimpleDateFormat( POSTGRES_DATE_STRING); @@ -213,30 +215,31 @@ public class ShefConstants { public static final String DC = "DC"; public static final String VALID_UNITS = "ES"; - + public static final String DATE_INC_CODES = "SNHDMEY"; - public static final int [] DATE_INC_VALS = new int [] { - Calendar.SECOND, // S - Calendar.MINUTE, // N - Calendar.HOUR_OF_DAY, // H - Calendar.DAY_OF_MONTH, // D - Calendar.MONTH, // M - -1, // E, -1 signifies special handling - Calendar.YEAR, // Y + + public static final int[] DATE_INC_VALS = new int[] { Calendar.SECOND, // S + Calendar.MINUTE, // N + Calendar.HOUR_OF_DAY, // H + Calendar.DAY_OF_MONTH, // D + Calendar.MONTH, // M + -1, // E, -1 signifies special handling + Calendar.YEAR, // Y }; - + public static final String DURATION_CODES = "SNHDMY"; - public static final short [] DURATION_VALS = new short [] { - 7000, // "S" Seconds - 0, // "N" Minutes - 1000, // "H" Hours - 2000, // "D" Days - 3000, // "M" Months - 4000, // "Y" Years + + public static final short[] DURATION_VALS = new short[] { 7000, // "S" + // Seconds + 0, // "N" Minutes + 1000, // "H" Hours + 2000, // "D" Days + 3000, // "M" Months + 4000, // "Y" Years }; - + public static final String QUALIFER_CODES = "BDEFGLMNPQRSTVWZ"; - + /* * these requests are for checking a value. they are valid for building a * where clause or for checking the qc code @@ -413,7 +416,7 @@ public class ShefConstants { public static final String ALARM_CATEGSTR = "alarm"; public static final int NO_ALERTALARM = 200; - + public static final int MAXFCST_INFO = 200; public static final int ALERT_UPPER_DETECTED = 201; @@ -446,9 +449,9 @@ public class ShefConstants { public static final String SHEF_POST_LINK = "shef_post_link"; public static final String SHEF_POST_LATEST = "shef_post_latest"; - + public static final String SHEF_LOAD_MAXFCST = "shef_load_maxfcst"; - + public static final String BASIS_HOURS_FILTER = "basis_hours_filter"; public static final String SHEF_DUPLICATE = "shef_duplicate"; @@ -464,9 +467,9 @@ public class ShefConstants { public static final String SHEF_LOAD_INGEST = "shef_load_ingest"; public static final String INGEST_MESS = "ingest_mess"; - + public static final String SHEF_DATA_LOG = "shef_data_log"; - + public static final String SHEF_PERFLOG = "shef_perflog"; public static final String SHEF_EMIT_SKIPPED = "shef_emit_skipped"; @@ -489,5 +492,5 @@ public class ShefConstants { public static final String UNKNOWN_STATION = "unkstn"; public static final String UNKNOWN_STATION_VALUE = "unkstnvalue"; - + } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.svrwx/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.svrwx/META-INF/MANIFEST.MF index 3e63548d3e..b0cedc283d 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.svrwx/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.svrwx/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Svrwx Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.svrwx -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.pointdata, org.geotools, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.tcg/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.tcg/META-INF/MANIFEST.MF index d6017b55fc..9c21ce8308 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.tcg/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.tcg/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Tcg Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.tcg -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.pointdata, org.geotools, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/META-INF/MANIFEST.MF index 7544d1ae44..409f03d4ae 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Tcs Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.tcs -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.pointdata, org.geotools, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/TropicalCycloneSummary.java b/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/TropicalCycloneSummary.java index 8d5816ff6e..36e71e95ad 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/TropicalCycloneSummary.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/TropicalCycloneSummary.java @@ -61,6 +61,7 @@ import com.vividsolutions.jts.geom.Geometry; * PluginDataObject. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Oct 22, 2013 2361 njensen Remove XML annotations + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -146,8 +147,8 @@ public class TropicalCycloneSummary extends PersistablePluginDataObject displayTime = ""; } - public TropicalCycloneSummary(String name, int pressure, double longitude, - double latitude, String displayTime, int wind, boolean tropical) { + public TropicalCycloneSummary(String name, int pressure, float longitude, + float latitude, String displayTime, int wind, boolean tropical) { this.name = name; this.pressure = pressure; location = new SurfaceObsLocation(name); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/util/Util.java b/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/util/Util.java index 0c44f609f4..04f89ed389 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/util/Util.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.tcs/src/com/raytheon/uf/common/dataplugin/tcs/util/Util.java @@ -39,6 +39,7 @@ import com.raytheon.uf.common.time.DataTime; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Oct 30, 2010 jsanchez Initial creation + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -60,7 +61,7 @@ public class Util implements TCSConstants { DataTime dataTime) { TropicalCycloneSummary tcs = null; - double t1 = 0.0, t2 = 0.0, tf = 0.0, dt = 0.0, tc = 0.0; + float t1 = 0.0f, t2 = 0.0f, tf = 0.0f, dt = 0.0f, tc = 0.0f; Calendar calendar = dataTime.getRefTimeAsCalendar(); int day = dataTime.getValidTime().get(Calendar.DAY_OF_MONTH); @@ -68,8 +69,8 @@ public class Util implements TCSConstants { boolean tropical = true; int wind = 0; - double lat = 29.0; // This came from TCMplotter.C - double lon = -89.6; // This came from TCMplotter.C + float lat = 29.0f; // This came from TCMplotter.C + float lon = -89.6f; // This came from TCMplotter.C String dTime = "Dissipated"; int size = pdv.getInt(SIZE); @@ -83,8 +84,8 @@ public class Util implements TCSConstants { if (size < 2) { if (size > 0) { // set location at last one - lat = latitude[size - 1].doubleValue(); - lon = longitude[size - 1].doubleValue(); + lat = latitude[size - 1].floatValue(); + lon = longitude[size - 1].floatValue(); } return new TropicalCycloneSummary(name, 0, lon, lat, dTime, windSpeed[size - 1].intValue(), @@ -105,7 +106,7 @@ public class Util implements TCSConstants { if (dataTime.getValidTime().getTimeInMillis() == dataTime.getRefTime() .getTime()) { tcs = new TropicalCycloneSummary(name, pressure, - longitude[0].doubleValue(), latitude[0].doubleValue(), + longitude[0].floatValue(), latitude[0].floatValue(), displayTime[0], windSpeed[0].intValue(), isTropical[0].intValue() == 1 ? true : false); tcs.setRadiusList(loadRadiusList(pdv, 0)); @@ -129,7 +130,7 @@ public class Util implements TCSConstants { if (tc < 0.01) { tcs = new TropicalCycloneSummary(name, 0, - longitude[i].doubleValue(), latitude[i].doubleValue(), + longitude[i].floatValue(), latitude[i].floatValue(), displayTime[i], windSpeed[i].intValue(), isTropical[i].intValue() == 1 ? true : false); tcs.setRadiusList(loadRadiusList(pdv, i)); @@ -146,8 +147,8 @@ public class Util implements TCSConstants { if (i >= size) { if (size > 0) { // set location at last one - lat = latitude[size - 1].doubleValue(); - lon = longitude[size - 1].doubleValue(); + lat = latitude[size - 1].floatValue(); + lon = longitude[size - 1].floatValue(); } return new TropicalCycloneSummary(name, 0, lon, lat, dTime, windSpeed[size - 1].intValue(), diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/.classpath b/edexOsgi/com.raytheon.uf.common.dataplugin.text/.classpath index 1fa3e6803d..098194ca4b 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/.classpath +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/.classpath @@ -1,6 +1,6 @@ - + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/MANIFEST.MF index df64d6079a..72e2868bbb 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/MANIFEST.MF @@ -2,23 +2,27 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Textdb Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.text -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, org.hibernate, - com.raytheon.uf.common.localization;bundle-version="1.12.1174", - com.raytheon.edex.common;bundle-version="1.12.1174" + com.raytheon.uf.common.localization;bundle-version="1.12.1174" Import-Package: com.raytheon.uf.common.dataplugin.persist, + com.raytheon.uf.common.message, com.raytheon.uf.common.serialization, com.raytheon.uf.common.serialization.annotations, com.raytheon.uf.common.serialization.comm, - com.raytheon.uf.edex.wmo.message, + com.raytheon.uf.common.site, + com.raytheon.uf.common.status, + com.raytheon.uf.common.util, + com.raytheon.uf.common.wmo, javax.persistence, org.apache.commons.lang.builder Export-Package: com.raytheon.uf.common.dataplugin.text;uses:="com.raytheon.uf.common.dataplugin.text.db,com.raytheon.uf.common.serialization", com.raytheon.uf.common.dataplugin.text.alarms, - com.raytheon.uf.common.dataplugin.text.db;uses:="com.raytheon.uf.common.dataplugin.persist,com.raytheon.uf.edex.wmo.message,com.raytheon.uf.common.serialization", - com.raytheon.uf.common.dataplugin.text.request;uses:="com.raytheon.uf.common.serialization.comm" + com.raytheon.uf.common.dataplugin.text.db;uses:="com.raytheon.uf.common.dataplugin.persist,com.raytheon.uf.common.wmo,com.raytheon.uf.common.serialization", + com.raytheon.uf.common.dataplugin.text.dbsrv, + com.raytheon.uf.common.dataplugin.text.request;uses:="com.raytheon.uf.common.serialization.comm", + com.raytheon.uf.common.dataplugin.text.util diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject index 89e261459a..cb921a40fb 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject @@ -13,4 +13,6 @@ com.raytheon.uf.common.dataplugin.text.db.StdTextProductId com.raytheon.uf.common.dataplugin.text.db.TextProductInfo com.raytheon.uf.common.dataplugin.text.db.TextProductInfoPK com.raytheon.uf.common.dataplugin.text.db.WatchWarn -com.raytheon.uf.common.dataplugin.text.db.WatchWarnPK \ No newline at end of file +com.raytheon.uf.common.dataplugin.text.db.WatchWarnPK +com.raytheon.uf.common.dataplugin.text.db.SubscriptionRecord +com.raytheon.uf.common.dataplugin.text.db.ReplacementRecord \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AfosWmoIdDataContainer.java b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AfosWmoIdDataContainer.java index c37a2dd5e1..73fbf0fa4e 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AfosWmoIdDataContainer.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AfosWmoIdDataContainer.java @@ -23,7 +23,6 @@ import java.util.ArrayList; import java.util.List; import com.raytheon.uf.common.dataplugin.text.db.AfosToAwips; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -36,6 +35,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Aug 24, 2009 2924 rjpeter Initial creation + * May 15, 2014 2536 bclement removed ISerializableObject * * * @@ -43,7 +43,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class AfosWmoIdDataContainer implements ISerializableObject { +public class AfosWmoIdDataContainer { @DynamicSerializeElement private List idList = new ArrayList(); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AutoFaxContainer.java b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AutoFaxContainer.java index f910b7a73b..e328e8b7f1 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AutoFaxContainer.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/AutoFaxContainer.java @@ -23,12 +23,11 @@ import java.util.ArrayList; import java.util.List; import com.raytheon.uf.common.dataplugin.text.db.AutoFaxRecord; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** - * TODO Add Description + * Serialization wrapper for a list of AutoFaxRecords * *

        * 
      @@ -37,6 +36,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Nov 2, 2010            bfarmer     Initial creation
      + * May 15, 2014 2536       bclement    removed ISerializableObject
        * 
        * 
      * @@ -44,7 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class AutoFaxContainer implements ISerializableObject { +public class AutoFaxContainer { @DynamicSerializeElement private List autoFaxList = new ArrayList(); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/StdTextProductContainer.java b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/StdTextProductContainer.java index 39c89b28f1..91281fa75e 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/StdTextProductContainer.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/StdTextProductContainer.java @@ -4,7 +4,6 @@ import java.util.ArrayList; import java.util.List; import com.raytheon.uf.common.dataplugin.text.db.StdTextProduct; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -17,6 +16,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * March 24, 2010 4734 M. Huang Initial creation + * May 15, 2014 2536 bclement removed ISerializableObject * * * @@ -24,7 +24,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * @version 1.0 */ @DynamicSerialize -public class StdTextProductContainer implements ISerializableObject{ +public class StdTextProductContainer { @DynamicSerializeElement private static List productList = new ArrayList(); diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/alarms/AlarmAlertProduct.java b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/alarms/AlarmAlertProduct.java index 30d178e7a9..09351d3556 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/alarms/AlarmAlertProduct.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/alarms/AlarmAlertProduct.java @@ -21,7 +21,6 @@ package com.raytheon.uf.common.dataplugin.text.alarms; import java.util.Date; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -37,6 +36,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Sep 29, 2009 mnash Initial creation * 07Jul2010 2187 cjeanbap Added operational mode flag. * May 23, 2012 14952 rferrel Added refTime. + * May 15, 2014 2536 bclement removed ISerializableObject * * * @@ -45,7 +45,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; */ @DynamicSerialize -public class AlarmAlertProduct implements ISerializableObject { +public class AlarmAlertProduct { public enum ProductType { Alarm_Alert, Proximity_Alarm diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/OperationalStdTextProduct.java b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/OperationalStdTextProduct.java index 2e5e018ae2..5c15ce8edc 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/OperationalStdTextProduct.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/OperationalStdTextProduct.java @@ -24,8 +24,8 @@ import javax.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; -import com.raytheon.uf.edex.wmo.message.AFOSProductId; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.AFOSProductId; +import com.raytheon.uf.common.wmo.WMOHeader; /** * diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/PracticeStdTextProduct.java b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/PracticeStdTextProduct.java index a30a5c0284..a37b4a8b04 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/PracticeStdTextProduct.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/PracticeStdTextProduct.java @@ -24,8 +24,8 @@ import javax.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; -import com.raytheon.uf.edex.wmo.message.AFOSProductId; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.AFOSProductId; +import com.raytheon.uf.common.wmo.WMOHeader; /** * diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/StdTextProduct.java b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/StdTextProduct.java index 581bc4e7ca..6707926d63 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/StdTextProduct.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.text/src/com/raytheon/uf/common/dataplugin/text/db/StdTextProduct.java @@ -38,13 +38,13 @@ import javax.xml.bind.annotation.XmlElement; import org.apache.commons.lang.builder.ToStringBuilder; import org.hibernate.annotations.Index; +import org.hibernate.annotations.Type; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; -import com.raytheon.uf.edex.wmo.message.AFOSProductId; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.AFOSProductId; +import com.raytheon.uf.common.wmo.WMOHeader; /** * @@ -59,6 +59,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * 17May2010 2187 cjeanbap Change class to be Abstract * 27 May 2012 #647 dgilling Implement getIdentifier/setIdentifier. * Nov 05, 2013 2499 rjpeter Fix generics. + * May 14, 2014 2536 bclement moved WMO Header to common, removed ISerializableObject + * 10/29/2014 3454 bphillip Fixed text archiver * * * @author jkorman @@ -69,7 +71,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize public abstract class StdTextProduct extends - PersistableDataObject implements ISerializableObject { + PersistableDataObject { private static final long serialVersionUID = 1L; @@ -108,6 +110,7 @@ public abstract class StdTextProduct extends /** persistent field */ @Column(nullable = false) @Lob + @Type(type = "org.hibernate.type.TextType") @DynamicSerializeElement @XmlElement private String product; diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.vaa/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.vaa/META-INF/MANIFEST.MF index 919b8a1252..46affb90c5 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.vaa/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.vaa/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Vaa Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.vaa -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization, com.raytheon.uf.common.pointdata, org.geotools, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.vil/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.vil/META-INF/MANIFEST.MF index ca2f4a74a3..242c4f13db 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.vil/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.vil/META-INF/MANIFEST.MF @@ -2,9 +2,8 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Vil Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.vil -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization Require-Bundle: javax.persistence;bundle-version="1.0.0", com.raytheon.uf.common.serialization, org.geotools;bundle-version="2.5.2", @@ -15,5 +14,5 @@ Require-Bundle: javax.persistence;bundle-version="1.0.0", Import-Package: com.raytheon.uf.common.dataplugin.radar, org.apache.commons.logging Export-Package: com.raytheon.uf.common.dataplugin.vil -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/MANIFEST.MF index 7892dfdf1e..c534b5b152 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/MANIFEST.MF @@ -2,14 +2,14 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Warning Bundle-SymbolicName: com.raytheon.uf.common.dataplugin.warning -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.common.dataplugin.warning, com.raytheon.uf.common.dataplugin.warning.config, com.raytheon.uf.common.dataplugin.warning.gis, + com.raytheon.uf.common.dataplugin.warning.portions, com.raytheon.uf.common.dataplugin.warning.util -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization, com.raytheon.uf.common.serialization.comm Import-Package: com.raytheon.uf.common.time, javax.persistence, org.apache.commons.lang, diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java index 71837ff86a..cdbfecfd05 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java @@ -35,7 +35,6 @@ import javax.persistence.Transient; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; @@ -47,17 +46,19 @@ import com.vividsolutions.jts.geom.Geometry; * *
        * SOFTWARE HISTORY
      - * Date         Ticket#     Engineer    Description
      - * ------------ ----------  ----------- --------------------------
      - * Mar 12, 2007 1003        bwoodle     initial creation
      - * Apr 12, 2013 1857        bgonzale    Added SequenceGenerator annotation.
      - * May 02, 2013 1949        rjpeter     Moved ugcZones to be a column inside
      - *                                      table.
      - * Jul 16, 2013 2181        bsteffen    Convert geometry types to use hibernate-
      - *                                      spatial
      - * Aug 08, 2013 2243        jsanchez    Removed super method in copy
      - *                                      constructor.
      - * Aug 30, 2013 2298        rjpeter     Make getPluginName abstract
      + * Date          Ticket#  Engineer    Description
      + * ------------- -------- ----------- --------------------------
      + * Mar 12, 2007  1003     bwoodle     initial creation
      + * Apr 12, 2013  1857     bgonzale    Added SequenceGenerator annotation.
      + * May 02, 2013  1949     rjpeter     Moved ugcZones to be a column inside
      + *                                    table.
      + * Jul 16, 2013  2181     bsteffen    Convert geometry types to use hibernate-
      + *                                    spatial
      + * Aug 08, 2013  2243     jsanchez    Removed super method in copy constructor.
      + * Aug 30, 2013  2298     rjpeter     Make getPluginName abstract
      + * Jun 11, 2014  2061     bsteffen    Remove IDecoderGettable
      + * 10/16/2014   3454       bphillip    Upgrading to Hibernate 4
      + * 
        * 
      * * @author bwoodle @@ -150,7 +151,7 @@ public abstract class AbstractWarningRecord extends PluginDataObject { private boolean ufn; @Column - @Type(type = "org.hibernatespatial.GeometryUserType") + @Type(type = "org.hibernate.spatial.GeometryType") @DynamicSerializeElement private Geometry geometry; @@ -279,11 +280,6 @@ public abstract class AbstractWarningRecord extends PluginDataObject { super(uri); } - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - public String createWarningProduct() { return "Not yet implemented."; } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/DialogConfiguration.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/DialogConfiguration.java index e0d2d4826e..7955e1a5b9 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/DialogConfiguration.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/DialogConfiguration.java @@ -1,3 +1,22 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ package com.raytheon.uf.common.dataplugin.warning.config; import java.io.FileNotFoundException; @@ -9,33 +28,35 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; -import com.raytheon.uf.common.dataplugin.warning.util.FileUtil; +import com.raytheon.uf.common.dataplugin.warning.util.WarnFileUtil; import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; /** - * * Configuration for warngen dialog * *
        * 
      - *    SOFTWARE HISTORY
      - *   
      - *    Date         Ticket#     Engineer    Description
      - *    ------------ ----------  ----------- --------------------------
      - *    --/--/----                           Initial creation
      - *    10/22/2013   2361        njensen     Use JAXBManager for XML
      + * SOFTWARE HISTORY
        * 
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + * --/--/----                          Initial creation
      + * 10/22/2013   2361       njensen     Use JAXBManager for XML
      + * Apr 28, 2014 3033       jsanchez    Refactored file retrieval.
      + * Jul 02, 2014 DR 17450   D. Friedman Support using list of templates from backup site.
        * 
      * - * + * @author jsanchez + * @version 1.0 */ - @XmlAccessorType(XmlAccessType.NONE) @XmlRootElement(name = "configuration") public class DialogConfiguration { private static final SingleTypeJAXBManager jaxb = SingleTypeJAXBManager .createWithoutException(DialogConfiguration.class); + private static final String CONFIG_FILE = "config.xml"; + @XmlElement private String warngenOfficeShort; @@ -66,10 +87,23 @@ public class DialogConfiguration { public static DialogConfiguration loadDialogConfig(String localSite) throws FileNotFoundException, IOException, JAXBException { - String xml = FileUtil.open("config.xml", localSite); + String xml = WarnFileUtil.convertFileContentsToString(CONFIG_FILE, + localSite, null); return (DialogConfiguration) jaxb.unmarshalFromXml(xml); } + public static DialogConfiguration loadDialogConfigNoUser(String site) + throws FileNotFoundException, IOException, JAXBException { + String xml = WarnFileUtil.convertFileContentsToStringNoUser( + CONFIG_FILE, site); + return (DialogConfiguration) jaxb.unmarshalFromXml(xml); + } + + public static boolean isSiteDialogConfigExtant(String backupSite) { + return WarnFileUtil.isLocalizationFileExtantAtSiteLevel(CONFIG_FILE, + backupSite); + } + public String getWarngenOfficeShort() { return warngenOfficeShort; } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/WarngenConfiguration.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/WarngenConfiguration.java index e85909ace0..8259893bc7 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/WarngenConfiguration.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/config/WarngenConfiguration.java @@ -40,7 +40,7 @@ import javax.xml.bind.annotation.XmlRootElement; import com.raytheon.uf.common.dataplugin.warning.WarningRecord.WarningAction; import com.raytheon.uf.common.dataplugin.warning.config.AreaSourceConfiguration.AreaType; -import com.raytheon.uf.common.dataplugin.warning.util.FileUtil; +import com.raytheon.uf.common.dataplugin.warning.util.WarnFileUtil; import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; @@ -60,7 +60,8 @@ import com.raytheon.uf.common.status.UFStatus.Priority; * May 26, 2010 #4649 Qinglu Lin Made including TO.A and SV.A mandatory * Apr 24, 2013 1943 jsanchez Marked areaConfig as Deprecated. * Oct 22, 2013 2361 njensen Removed ISerializableObject - * + * Apr 28, 2014 3033 jsanchez Properly handled back up configuration (*.xml) files. + * Aug 28, 2014 ASM #15658 D. Friedman Add marine zone watch wording option. * * * @author chammack @@ -103,6 +104,9 @@ public class WarngenConfiguration { @XmlElement(name = "includedWatch") private String[] includedWatches; + @XmlElement + private boolean includeMarineAreasInWatches; + @XmlElementWrapper(name = "durations") @XmlElement(name = "duration") private int[] durations; @@ -156,16 +160,20 @@ public class WarngenConfiguration { * * @param templateName * - the name of the warngen template + * @param localSite + * - the site cave is localized to + * @param localSite + * - the back up site * @return the warngen configuration * @throws VizException */ public static WarngenConfiguration loadConfig(String templateName, - String localSite) throws FileNotFoundException, IOException, - JAXBException { + String localSite, String backupSite) throws FileNotFoundException, + IOException, JAXBException { WarngenConfiguration config = new WarngenConfiguration(); - // Open the template file - String xml = FileUtil.open(templateName + ".xml", localSite); + String xml = WarnFileUtil + .convertFileContentsToString(templateName + ".xml", localSite, backupSite); // Include external files, such as damInfo.txt Matcher m = p.matcher(xml); @@ -173,7 +181,8 @@ public class WarngenConfiguration { try { while (m.find()) { includeFile = m.group(1); - String includeXml = FileUtil.open(includeFile, localSite); + String includeXml = WarnFileUtil.convertFileContentsToString(includeFile, localSite, + backupSite); xml = xml.replace(m.group(0), includeXml); } } catch (Exception e) { @@ -387,6 +396,14 @@ public class WarngenConfiguration { return includedWatches; } + public boolean isIncludeMarineAreasInWatches() { + return includeMarineAreasInWatches; + } + + public void setIncludeMarineAreasInWatches(boolean includeMarineAreasInWatches) { + this.includeMarineAreasInWatches = includeMarineAreasInWatches; + } + public boolean getEnableRestart() { return enableRestart; } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialFactory.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialFactory.java index b1cd80e182..6a56e58bee 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialFactory.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialFactory.java @@ -63,6 +63,8 @@ import com.vividsolutions.jts.geom.prep.PreparedGeometryFactory; * to areaFields. * Jan 9, 2013 15600 Qinglu Lin Execute "timezones = myTimeZones;" even if timezones != null. * Oct 22, 2013 2361 njensen Use JAXBManager for XML + * Jun 17, 2014 DR 17390 Qinglu Lin Updated getMetaDataMap() for lonField and latField. + * Aug 21, 2014 3353 rferrel Generating Geo Spatial data set no longer on the UI thread. * * * @@ -84,12 +86,25 @@ public class GeospatialFactory { private static SingleTypeJAXBManager jaxb = SingleTypeJAXBManager .createWithoutException(GeospatialTimeSet.class); - public static GeospatialData[] getGeoSpatialList(String site, - GeospatialMetadata metaData) throws SpatialException { - Map lastRunTimeMap = loadLastRunGeoTimeSet(site); + /** + * Get existing geospatial data set or null if it does not exist. + * + * @param site + * @param metaData + * @return dataSet + * @throws Exception + */ + public static GeospatialDataSet getGeoSpatialDataSet(String site, + GeospatialMetadata metaData) throws Exception { + GenerateGeospatialTimeSetRequest request = new GenerateGeospatialTimeSetRequest(); + request.setSite(site); + GeospatialTimeSet timeset = null; + + timeset = (GeospatialTimeSet) RequestRouter.route(request); + + Map lastRunTimeMap = loadLastRunGeoTimeSet(timeset); GeospatialTime lastRunTime = lastRunTimeMap.get(metaData); GeospatialDataSet dataSet = null; - boolean generate = true; if (lastRunTime != null) { System.out.println("Loading areas from disk"); // load from disk @@ -102,22 +117,43 @@ public class GeospatialFactory { statusHandler.handle(Priority.WARN, "Failed to load area geometry files from disk", e); } - - generate = dataSet == null; } + return dataSet; + } - if (generate) { - // send request to server - GenerateGeospatialDataRequest request = new GenerateGeospatialDataRequest(); - request.setMetaData(metaData); - request.setSite(site); - try { - dataSet = (GeospatialDataSet) RequestRouter.route(request); - } catch (Exception e) { - throw new SpatialException( - "Server failed to generate area geometry files.", e); - } + /** + * Force creation of the desired geospatial data set. + * + * @param site + * @param metaData + * @return dataSet + * @throws SpatialException + */ + public static GeospatialDataSet generateGeospatialDataSet(String site, + GeospatialMetadata metaData) throws SpatialException { + // send request to server + GenerateGeospatialDataRequest request = new GenerateGeospatialDataRequest(); + request.setMetaData(metaData); + request.setSite(site); + GeospatialDataSet dataSet; + try { + dataSet = (GeospatialDataSet) RequestRouter.route(request); + } catch (Exception e) { + throw new SpatialException( + "Server failed to generate area geometry files.", e); } + return dataSet; + } + + /** + * Convert the geospatial data set into array of geospatial data. + * + * @param dataSet + * @param metaData + * @return areas + */ + public static GeospatialData[] getGeoSpatialList(GeospatialDataSet dataSet, + GeospatialMetadata metaData) { GeospatialData[] areas = dataSet.getAreas(); GeospatialData[] parentAreas = dataSet.getParentAreas(); @@ -162,13 +198,27 @@ public class GeospatialFactory { } /** + * Convert the set's data into a map. When no data return empty map. * - * @param site - * @return + * @param timeSet + * @return geospatialTimeMap */ public static Map loadLastRunGeoTimeSet( - String site) { - Map rval = null; + GeospatialTimeSet timeSet) { + Map rval = timeSet.getDataAsMap(); + if (rval == null) { + rval = new HashMap(); + } + return rval; + } + + /** + * Unmarshal the GeospatialTimeset in the site's metadata file. + * + * @param site + * @return geospatialTimeset + */ + public static GeospatialTimeSet getGeospatialTimeSet(String site) { IPathManager pathMgr = PathManagerFactory.getPathManager(); LocalizationContext context = pathMgr.getContext( LocalizationType.COMMON_STATIC, LocalizationLevel.CONFIGURED); @@ -178,26 +228,13 @@ public class GeospatialFactory { METADATA_FILE); if (lf.exists()) { try { - rval = jaxb.unmarshalFromXmlFile(lf.getFile()).getDataAsMap(); + return jaxb.unmarshalFromXmlFile(lf.getFile()); } catch (Exception e) { - statusHandler - .handle(Priority.WARN, - "Error occurred deserializing geometry metadata. Deleting metadata and recreating.", - e); - - try { - lf.delete(); - } catch (Exception e1) { - statusHandler.handle(Priority.WARN, - "Error occurred deleting geometry metadata.", e1); - } - rval = new HashMap(); + statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(), + e); } - } else { - rval = new HashMap(); } - - return rval; + return new GeospatialTimeSet(); } public static Map getMetaDataMap( @@ -216,6 +253,9 @@ public class GeospatialFactory { areaFields.add(feAreaField); } + areaFields.add("LON"); + areaFields.add("LAT"); + if (timeZoneField != null) { areaFields.add(timeZoneField); } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTime.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTime.java index 1a11dfb91e..5dabf0c9dc 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTime.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTime.java @@ -24,6 +24,9 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; +import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; + /** * Wrapper for GeospatialConfiguration representing last time a the geometry * data was created for a warngen configuration @@ -35,6 +38,7 @@ import javax.xml.bind.annotation.XmlElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 15, 2011 rjpeter Initial creation + * Aug 21, 2014 3353 rferrel Allow serialization. * * * @@ -43,20 +47,26 @@ import javax.xml.bind.annotation.XmlElement; */ @XmlAccessorType(XmlAccessType.NONE) +@DynamicSerialize public class GeospatialTime { @XmlElement + @DynamicSerializeElement private GeospatialMetadata metaData; @XmlAttribute + @DynamicSerializeElement private String fileName; @XmlAttribute + @DynamicSerializeElement private long areaSourceTime; @XmlAttribute + @DynamicSerializeElement private long timeZoneSourceTime; @XmlAttribute + @DynamicSerializeElement private long parentSourceTime; public GeospatialMetadata getMetaData() { diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTimeSet.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTimeSet.java index 3f86c2ffd0..0749c997ac 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTimeSet.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/gis/GeospatialTimeSet.java @@ -28,6 +28,10 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; +import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; +import com.raytheon.uf.common.serialization.comm.IServerRequest; + /** * Collection of GeospatialTime representing a set of generated geospatial data * for warngen configurations @@ -39,6 +43,7 @@ import javax.xml.bind.annotation.XmlRootElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 15, 2011 rjpeter Initial creation + * Aug 21, 2014 3353 rferrel Allow serialization. * * * @@ -48,8 +53,10 @@ import javax.xml.bind.annotation.XmlRootElement; @XmlAccessorType(XmlAccessType.NONE) @XmlRootElement(name = "geoTimeSet") -public class GeospatialTimeSet { +@DynamicSerialize +public class GeospatialTimeSet implements IServerRequest { @XmlElement(name = "geoTime") + @DynamicSerializeElement private List data; public List getData() { diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java index 78cb2f787c..f6b75ef327 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java @@ -27,6 +27,7 @@ import com.vividsolutions.jts.geom.prep.PreparedGeometry; * Nov 15, 2010 mschenke Initial creation * Apr 28, 2013 1955 jsanchez Added an ignoreUserData flag to intersection method. * Oct 21, 2013 DR 16632 D. Friedman Handle zero-length input in union. + * Dec 13, 2013 DR 16567 Qinglu Lin Added contains(). * * * @@ -299,4 +300,25 @@ public class GeometryUtil { } return str; } + + /** + * Determine if one geometry contains any portion of the other. + * @param g1 + * @param g2 + */ + public static boolean contains(Geometry g1, Geometry g2) { + int m = g1.getNumGeometries(); + int n = g2.getNumGeometries(); + Geometry geom1 = null; + Geometry geom2 = null; + for (int i = 0; i < m; i++) { + geom1 = g1.getGeometryN(i); + for (int j = 0; j < n; j++) { + geom2 = g2.getGeometryN(j); + if (geom1.contains(geom2)) + return true; + } + } + return false; + } } diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/VM_global_library.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/VM_global_library.vm index ce5032bd03..6131322411 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/VM_global_library.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/VM_global_library.vm @@ -10,6 +10,12 @@ ##### like the ~ and % characters in A1. ##### Evan Bookbinder 05-05-2013 handleClosesPoints and 3rd bullet changes (OVER & now) ##### Evan Bookbinder 09-20-2013 Fixed rural area otherPoints in pathcast section, added rural phrase +##### Qinglu Lin 03-17-2014 DR 16309. Updated inserttorwatches and insertsvrwatches. +##### Qinglu Lin 05-21-2014 DR 16309. Updated inserttorwatches and insertsvrwatches by changing 'FOR##' to 'FOR ##'. +##### D. Friedman 08-28-2014 ASM #15658. Add marine watch wording. +##### Qinglu Lin 09-15-2014 ASM #15551. Overhauled inserttorwatches and insertsvrwatches, added until. +##### Qinglu Lin 10-06-2014 ASN #556. Updated secondBullet. +##### Evan Bookbinder 10-24-2014 Fixed UGC > 500 check for Indep Cities in svrl macros to ignore zone codes #################################################################################################### #* Mile Marker Test Code @@ -187,70 +193,121 @@ ${drainage.name}## ########END MACRO #macro(inserttorwatches $watches $list $secondtimezone $dateUtil $timeFormat) -#set($torWatches = ${watches.getTorWatches()}) -#set($torWatchAlso = "") -#set($torWatchFirst = 1) -#foreach(${watch} in ${torWatches}) -#if($torWatchFirst) -#set($torWatchFirst = 0) -#else - ## +#set($tornadoWatches = []) +#set($ALSO = "") + +#foreach(${watch} in ${watches}) +#if(${watch.getPhenSig()} == 'TO.A') +#set($success = $tornadoWatches.add($watch)) #end -A TORNADO WATCH ${torWatchAlso}REMAINS IN EFFECT UNTIL ${dateUtil.format(${watch.getEndTime()}, ${timeFormat.plain}, 15, ${localtimezone})}## -${dateUtil.period(${watches.getLatestTorTime()},${timeFormat.plain}, 15, ${localtimezone})}## -#if(${secondtimezone}) -/${dateUtil.format(${watch.getEndTime()}, ${timeFormat.plain}, 15, ${secondtimezone})}/## -#end - FOR ## -#set($numPortions = ${list.size(${watch.getPortions()})}) -#set($count = 0) -#foreach(${portion} in ${watch.getPortions()}) -#set($count = $count + 1) -#areaFormat(${portion.partOfParentRegion} true false false) ${portion.parentRegion}## -#if($count == $numPortions - 1) - AND ## -#elseif($count < $numPortions) -...## -#end -#end -#set($torWatchAlso = "ALSO ") -.## #end +#set($etns = []) +#set($lastTime = "") +#set($currTime = "") +#set($lastEtn = "") +#set($count = 0) +#foreach(${watch} in ${tornadoWatches}) +#set($success = $etns.add(${watch.etn})) +#end +#foreach(${watch} in ${tornadoWatches}) +#set($count = $count + 1) +#if(${lastEtn} != "" && ${watch.etn} != ${lastEtn}) +. ## +#end +#set($endTime = ${watch.endTime}) +#if(${watch.etn} != ${lastEtn}) +#set($lastTime = "#until(${endTime}, ${timeFormat}, ${secondtimezone}, ${watch})") +A TORNADO WATCH${ALSO} REMAINS IN EFFECT ${lastTime}## +#set($ALSO = " ALSO") +#else +#if(!$foreach.hasNext() || ${watch.etn} != $etns.get(${count})) + AND ## +#else +...## +#end +#set($currTime = "#until(${endTime}, ${timeFormat}, ${secondtimezone}, ${watch})") +#if(${currTime} != ${lastTime}) +${currTime}## +#set($lastTime = ${currTime}) +#end +#end +#if(!${watch.marineArea}) +#areaFormat(${watch.partOfState} true false true)${watch.state}## +#else +#formatMarineArea(${watch.marineArea}) +#end +#set($lastEtn = ${watch.etn}) +#end +#if(${lastEtn} != "") +. +#end #end ########END MACRO -#macro(insertsvrwatches $watches $list $secondtimezone $dateUtil $timeFormat) -#set($svrWatches = ${watches.getSvrWatches()}) -#set($svrWatchAlso = "") -#set($svrWatchFirst = 1) -#foreach(${watch} in ${svrWatches}) -#if($svrWatchFirst) -#set($svrWatchFirst = 0) -#else - ## -#end -A SEVERE THUNDERSTORM WATCH ${svrWatchAlso}REMAINS IN EFFECT UNTIL ${dateUtil.format(${watch.getEndTime()}, ${timeFormat.plain}, 15, ${localtimezone})}## -${dateUtil.period(${watches.getLatestSvrTime()},${timeFormat.plain}, 15, ${localtimezone})}## +#macro(until $endTime $timeFormat $secondtimezone $watch) +UNTIL ${dateUtil.formatUseNoonMidnight(${endTime}, ${timeFormat.clock}, 15, ${localtimezone})}## #if(${secondtimezone}) -/${dateUtil.format(${watch.getEndTime()}, ${timeFormat.plain}, 15, ${secondtimezone})}/## +/${dateUtil.formatUseNoonMidnight(${watch.getEndTime()}, ${timeFormat.clock}, 15, ${secondtimezone})}/## #end FOR ## -#set($numPortions = ${list.size(${watch.getPortions()})}) -#set($count = 0) -#foreach(${portion} in ${watch.getPortions()}) -#set($count = $count + 1) -#areaFormat(${portion.partOfParentRegion} true false) ${portion.parentRegion}## -#if($count == $numPortions - 1) - AND ## -#elseif($count < $numPortions) -...## -#end -#end -#set($svrWatchAlso = "ALSO ") -.## #end +#macro(insertsvrwatches $watches $list $secondtimezone $dateUtil $timeFormat) +#set($svrWatches = []) +#set($ALSO = "") + +#foreach(${watch} in ${watches}) +#if(${watch.getPhenSig()} == 'SV.A') +#set($success = $svrWatches.add($watch)) +#end +#end + +#set($etns = []) +#set($lastTime = "") +#set($currTime = "") +#set($lastEtn = "") +#set($count = 0) +#foreach(${watch} in ${svrWatches}) +#set($success = $etns.add(${watch.etn})) +#end +#foreach(${watch} in ${svrWatches}) +#set($count = $count + 1) +#if(${lastEtn} != "" && ${watch.etn} != ${lastEtn}) +. ## +#end +#set($endTime = ${watch.endTime}) +#if(${watch.etn} != ${lastEtn}) +#set($lastTime = "#until(${endTime}, ${timeFormat}, ${secondtimezone}, ${watch})") +A SEVERE THUNDERSTORM WATCH${ALSO} REMAINS IN EFFECT ${lastTime}## +#set($ALSO = " ALSO") +#else +#if(!$foreach.hasNext() || ${watch.etn} != $etns.get(${count})) + AND ## +#else +...## +#end +#set($currTime = "#until(${endTime}, ${timeFormat}, ${secondtimezone}, ${watch})") +#if(${currTime} != ${lastTime}) +${currTime}## +#set($lastTime = ${currTime}) +#end +#end +#if(!${watch.marineArea}) +#areaFormat(${watch.partOfState} true false true)${watch.state}## +#else +#formatMarineArea(${watch.marineArea}) +#end +#set($lastEtn = ${watch.etn}) +#end +#if(${lastEtn} != "") +. +#end +#end +########END MACRO + +#macro(formatMarineArea $marineArea) +${marineArea}## #end ########END MACRO @@ -366,18 +423,6 @@ SOUTH## #if(${list.contains($directionSet, "WEST")}) #set($output = "${output}WEST") #end -#if(${list.contains($directionSet, "NE")}) -#set($output = "${output}NORTHEAST") -#end -#if(${list.contains($directionSet, "NW")}) -#set($output = "${output}NORTHWEST") -#end -#if(${list.contains($directionSet, "SE")}) -#set($output = "${output}SOUTHEAST") -#end -#if(${list.contains($directionSet, "SW")}) -#set($output = "${output}SOUTHWEST") -#end #if(${useCentral} && ${list.contains($directionSet, "CENTRAL")}) #if(${list.contains($directionSet, "NORTH")} || ${list.contains($directionSet, "SOUTH")} || ${list.contains($directionSet, "EAST")} || ${list.contains($directionSet, "WEST")}) #set($output = "${output} ") @@ -514,6 +559,12 @@ ${closestPoint.roundedDistance} ${units} #direction(${closestPoint.oppositeRound ## useExtremexxx = boolean to use the word EXTREME in the county of State phrase ################################################################## #macro(headlineLocList $areas $useCentralCounty $useExtremeCounty $useCentralState $useExtremeState) +#### DETERMINE IF WE HAVE A FIPS OR ZONE BASED PRODUCT +#if(${areaSource.equalsIgnoreCase("COUNTY")}) +#set($areaFIPS = true) +#else +#set($areaFIPS = false) +#end #set($countyCount = 0) #set($countyCounter = 0) #set($itemCount = 0) @@ -554,7 +605,7 @@ ${closestPoint.roundedDistance} ${units} #direction(${closestPoint.oppositeRound #end #set($FIPS = ${area.fips.substring(${fipsIdx})}) #set($intFIPS = 0) -#if(${intFIPS.parseInt($FIPS)} < 500 || ${area.stateabbr} == "TX") +#if(${intFIPS.parseInt($FIPS)} < 500 || ${areaFIPS} == "false" || ${area.stateabbr} == "TX") #set($countyCounter = $countyCounter + 1) ##INITIALIZE CHECK VARIABLES #if($countyCount == 0) @@ -744,7 +795,7 @@ ${prevCounty}## #foreach (${area} in ${areas}) #set($FIPS = ${area.fips.substring(2)}) #set($intFIPS = 0) -#if(${intFIPS.parseInt($FIPS)} >= 500 && ${area.stateabbr} != "TX") +#if(${intFIPS.parseInt($FIPS)} >= 500 && ${area.stateabbr} != "TX" && ${areaFIPS} == "true") #set($indepCityCount= $indepCityCount + 1) #if(${indepCityCount} == 1 && ${countyCount} > 0) #if(${countyCounter} > 1) @@ -1003,7 +1054,7 @@ ${prevZone}## #set($FIPS = ${area.fips.substring(2)}) #set($intFIPS = 0) ##OUTPUT FOR NORMAL COUNTIES/ZONES -#if((${intFIPS.parseInt($FIPS)} < 500 || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC") +#if((${intFIPS.parseInt($FIPS)} < 500 || ${areaFIPS} == "false" || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC") #if(${area.partOfArea}) #areaFormat(${area.partOfArea} true true true)## #end @@ -1107,7 +1158,7 @@ THE FOLLOWING COUNTIES AND PARISHES... #set($intFIPS = 0) #set($partOfArea = "") ##OUTPUT FOR NORMAL COUNTIES/ZONES -#if((${intFIPS.parseInt($FIPS)} < 500 || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC") +#if((${intFIPS.parseInt($FIPS)} < 500 || ${areaFIPS} == "false" || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC") #if(${area.partOfArea}) #set($partOfArea = "#areaFormat(${area.partOfArea} true true true)") #end @@ -1141,15 +1192,15 @@ ${partOfArea}${area.name}... ######### MACRO TO GENERATE SECOND BULLET (UNTIL XXXX AMPM TZ (DAY) IN WARNINGS ########## #macro(secondBullet $dateUtil $expire $timeFormat $localtimezone $secondtimezone $duration) #if(${duration} >= 360) -UNTIL ${dateUtil.format(${expire}, ${timeFormat.plain}, 15, ${localtimezone})}## +UNTIL ${dateUtil.formatUseNoonMidnight(${expire}, ${timeFormat.plain}, 15, ${localtimezone})}## #else -UNTIL ${dateUtil.format(${expire}, ${timeFormat.clock}, 15, ${localtimezone})}## +UNTIL ${dateUtil.formatUseNoonMidnight(${expire}, ${timeFormat.clock}, 15, ${localtimezone})}## #end #if(${secondtimezone}) #if(${duration} >= 360) -/${dateUtil.format(${expire}, ${timeFormat.plain}, 15, ${secondtimezone})}/## +/${dateUtil.formatUseNoonMidnight(${expire}, ${timeFormat.plain}, 15, ${secondtimezone})}/## #else -/${dateUtil.format(${expire}, ${timeFormat.clock}, 15, ${secondtimezone})}/## +/${dateUtil.formatUseNoonMidnight(${expire}, ${timeFormat.clock}, 15, ${secondtimezone})}/## #end #end #end diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.vm index 925363999f..3d88f9cb3e 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.vm @@ -2,18 +2,19 @@ ## AIRPORT WEATHER WARNING TEMPLATE ## ## EXAMPLE TEMPLATE USING HUNTSVILLE PRODUCT ## ## CREATED BY PHIL KURIMSKI - WFO DTX ## -## UPDATED EVAN BOOKBINDER 9-18-2013 Implemented config.vm +## UPDATED EVAN BOOKBINDER 9-18-2013 Implemented config.vm ## +## MIKE DANGELO 06-25-2014 removed bullet format/went to free form text per request of local offices, moved ugcline per local examples ## ################################################################## -## #parse("config.vm") ${WMOId} ${vtecOffice} 000000 ${BBBId} AWW${siteId} +${ugcline} + #if(${productClass}=="T") TEST...AIRPORT WEATHER WARNING...TEST## #else -AIRPORT WEATHER WARNING## +AIRPORT WEATHER WARNING #end - NATIONAL WEATHER SERVICE ${officeShort} #backupText(${backupSite}) ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} @@ -22,21 +23,6 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} ...THIS MESSAGE IS FOR TEST PURPOSES ONLY... #end -${ugcline} -#foreach (${area} in ${areas}) -${area.name}## -#if(${includeStateAbbreviation}==true) - ${area.stateabbr}## -#end --## -#end - -${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} - - -#if(${productClass}=="T") -THIS IS A TEST MESSAGE. ## -#end ####################################################################### ## Set initial variables for initial issuance ####################################################################### @@ -77,12 +63,10 @@ ${site} #if(${list.contains(${bullets}, "cancelAWW")}) !** GIVE REASON FOR CANCELLATION **! #else -* ## + #if(${productClass}=="T") THIS IS A TEST MESSAGE. ## #end -#secondBullet(${dateUtil},${expire},${timeFormat},${localtimezone},${secondtimezone}) - FOR THE FOLLOWING THREATS... @@ -91,23 +75,23 @@ FOR THE FOLLOWING THREATS... ## Sites can add or modify threats by changing the code below ################################################################### #if(${list.contains(${bullets}, "wind")}) -* WIND GUSTS 30 KNOTS OR HIGHER. +WIND GUSTS 30 KNOTS OR HIGHER. #end #if(${list.contains(${bullets}, "lightning")}) -* CLOUD TO GROUND LIGHTNING WITHIN 5 NM OF THE AIRPORT. +CLOUD TO GROUND LIGHTNING WITHIN 5 NM OF THE AIRPORT. #end #if(${list.contains(${bullets}, "hail")}) -* HAIL OF 1/2 INCH OR GREATER. +HAIL OF 1/2 INCH OR GREATER. #end #if(${list.contains(${bullets}, "freezingRain")}) -* ONSET OF FREEZING RAIN. +THE ONSET OF FREEZING RAIN. #end #if(${list.contains(${bullets}, "sleetSnow")}) -* ONSET OF ACCUMULATING SLEET OR SNOW. +THE ONSET OF ACCUMULATING SLEET OR SNOW. #end @@ -119,16 +103,16 @@ FOR THE FOLLOWING THREATS... ## If sites do not want watches in their AWW product comment out the ## section below ####################################################################### -#if(${list.contains(${includedWatches}, "torWatches")} && ${list.contains(${bullets}, "includeTorWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")} && ${list.contains(${bullets}, "includeTorWatches")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")} && ${list.contains(${bullets}, "includeSvrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")} && ${list.contains(${bullets}, "includeSvrWatches")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -###printcoords(${areaPoly}, ${list}) +## #printcoords(${areaPoly}, ${list}) $$ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.xml index 515b9be7ff..0c61cb09ea 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/airportWeatherWarning.xml @@ -3,13 +3,14 @@ +PLACED IN FULL BELOW THE INCLUDE LINE BELOW. CHANGE TO "geospatialConfig_COUNTY.xml" if desired +--> + that can be loaded with each template. --> - ACARS Airport Locations + County Warning Areas Forecast Zones - + + COR @@ -48,11 +50,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.vm index 7b4fd8a8cf..b0beeb4475 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.vm @@ -17,6 +17,9 @@ ## Mike Rega 01-17-2014 added GP Alaska changes 14.2.1 ## ## Mike Dangelo 1/24/2014 made many changes for first bullet to match 10-922 ## ## Mike Rega 02-27-2014 changed hycType IJ to match 10-922 ## +## Phil Kurimski 06-24-2014 altered urbanCTA for more succinct words ## +## and poor drainage wording OB14.2.2-9 ## +## Evan Bookbinder 09-5-2014 added automated guage verbiage ## ################################################################################### #parse("config.vm") #if(${action} == "EXT") @@ -91,7 +94,7 @@ #set($advType = "HYDROLOGIC ADVISORY FOR RAPID RISES FOR...") #end #elseif(${list.contains(${bullets}, "poorDrainage")}) - #set($advType = "FLOOD ADVISORY FOR MINOR FLOODING FOR POOR DRAINAGE AREAS FOR...") + #set($advType = "FLOOD ADVISORY FOR MINOR FLOODING IN POOR DRAINAGE AREAS FOR...") #if(${list.contains(${bullets}, "small")}) #set($advType = "SMALL STREAM FLOOD ADVISORY FOR POOR DRAINAGE AREAS FOR...") #end @@ -208,7 +211,7 @@ ${advType} #set($report = "DOPPLER RADAR AND AUTOMATED RAIN GAUGES INDICATED ${cause} WHICH WILL CAUSE ${advTypeShort}${report2} IN THE ADVISORY AREA.") #end #if(${list.contains(${bullets}, "dopplerGauge")} && ${list.contains(${bullets}, "actual")}) - #set($report = "DOPPLER RADAR INDICATED ${cause} CAUSING ${advTypeShort}${report2} IN THE ADVISORY AREA.") + #set($report = "DOPPLER RADAR AND AUTOMATED RAIN GAUGES INDICATED ${cause} CAUSING ${advTypeShort}${report2} IN THE ADVISORY AREA.") #end #if(${list.contains(${bullets}, "dopplerGauge")} && ${list.contains(${bullets}, "thunder")}) #set($report = "DOPPLER RADAR AND AUTOMATED RAIN GAUGES INDICATED ${cause} DUE TO THUNDERSTORMS. THIS WILL CAUSE ${advTypeShort}${report2} IN THE ADVISORY AREA.") @@ -269,7 +272,7 @@ ${advType} #end #### added by GP #if(${list.contains(${bullets}, "onlyGauge")}) - #set($report = "REPORTING GAUGES INDICATE !**EVENT TYPE**!." ) + #set($report = "GAUGE REPORTS INDICATED !**EVENT TYPE**!." ) #end ### GP end * ## @@ -290,13 +293,14 @@ THIS IS A TEST MESSAGE. ## ############# IF TRACK IS ENABLED AND stormPosition SELECTED ############################################### #if(${list.contains(${bullets},"stormPosition")}) #thirdBullet(${dateUtil},${event},${timeFormat},${localtimezone},${secondtimezone}) -#if(${stormType} == "line") -...A LINE OF THUNDERSTORMS PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) -#else -...A THUNDERSTORM PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceCell}) +#set($phenom="") +#if(${stormType} == "line" && ${list.contains(${bullets}, "thunder")}) + #set($phenom="A LINE OF THUNDERSTORMS PRODUCING ") +#elseif(${list.contains(${bullets}, "thunder")}) + #set($phenom="A THUNDERSTORM PRODUCING ") #end +...${phenom}HEAVY RAIN WAS LOCATED ## +#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) #if(${movementSpeed} < ${landStationary} || ${stationary}) ...AND IS STATIONARY. ## #else @@ -387,7 +391,7 @@ MOST FLOOD DEATHS OCCUR IN AUTOMOBILES. NEVER DRIVE YOUR VEHICLE INTO AREAS WHER #end #if(${list.contains(${bullets}, "urbanCTA")}) -EXCESSIVE RUNOFF FROM HEAVY RAINFALL WILL CAUSE PONDING OF WATER IN URBAN AREAS...HIGHWAYS...STREETS AND UNDERPASSES AS WELL AS OTHER POOR DRAINAGE AREAS AND LOW LYING SPOTS. DO NOT ATTEMPT TO TRAVEL ACROSS FLOODED ROADS. FIND ALTERNATE ROUTES. IT TAKES ONLY A FEW INCHES OF SWIFTLY FLOWING WATER TO CARRY VEHICLES AWAY. +EXCESSIVE RUNOFF FROM HEAVY RAINFALL WILL CAUSE PONDING OF WATER IN URBAN AREAS...HIGHWAYS...STREETS AND UNDERPASSES AS WELL AS OTHER POOR DRAINAGE AREAS AND LOW LYING SPOTS. DO NOT ATTEMPT TO TRAVEL ACROSS FLOODED ROADS. FIND ALTERNATE ROUTES. #end #if(${list.contains(${bullets}, "ruralCTA")}) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.xml index 1dfb76e93a..d781f4e978 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisory.xml @@ -12,7 +12,10 @@ Mike Dangelo 09-18-2013 to optionally allow =true for pathcasting, and add pointMarker.xml 'include' Phil Kurimski 09-19-2013 added geospatialConfig.xml Mike Rega 01-17-2014 added Alaska GP changes for 14.2.1 - Mike Dangelo 1/23/2014 added IC and advType group to bottom of bullets (for info only, they are locked anyway, no need to have it at the top) + Mike Dangelo 1/23/2014 added IC and advType group to bottom of bullets (for info only, they are locked anyway, no need to have it at the top) + Phil Kurimski 06-24-2014 Put types of warnings and IC back at the top (forecasters rely on this when choosing a con statement + to determine what warning they are following up!) + Fixed Gauge reports source selection --> @@ -104,9 +107,6 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor - - - @@ -114,6 +114,9 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor + + + @@ -122,14 +125,12 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor - - - + - + @@ -154,43 +155,12 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + @@ -198,20 +168,9 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor - - - - - - - - - - - @@ -219,14 +178,12 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor - - - + - + @@ -248,7 +205,16 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor - + + + + + + + + + + @@ -256,16 +222,43 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.vm index efc30f0a48..bec2fd54a7 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.vm @@ -9,6 +9,7 @@ ## Mike Dangelo 9-18-2013 added initial position and pathcasting options ## Evan Bookbinder 9-18-2013 implemented config.vm ## ## Mike Rega 1-18-2014 added Alaska GP changes for 14.2.1 ## +## Phil Kurimski 06-24-2014 altered urbanCTA for more succinct words ## ################################################################################## #parse("config.vm") #if(${action} == "EXT") @@ -147,7 +148,7 @@ #end #### added by GP #if(${list.contains(${bullets}, "onlyGauge")}) - #set ($report = "REPORTING GAUGES INDICATE !**EVENT TYPE**!." ) + #set ($report = "GAUGE REPORTS INDICATED !**EVENT TYPE**!." ) #end ### GP end ########################################## @@ -280,13 +281,14 @@ THIS IS A TEST MESSAGE. ## ############# IF TRACK IS ENABLED AND stormPosition SELECTED ############################################### #if(${list.contains(${bullets},"stormPosition")}) #thirdBullet(${dateUtil},${event},${timeFormat},${localtimezone},${secondtimezone}) -#if(${stormType} == "line") -...A LINE OF THUNDERSTORMS PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) -#else -...A THUNDERSTORM PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceCell}) +#set($phenom="") +#if(${stormType} == "line" && ${list.contains(${bullets}, "thunder")}) + #set($phenom="A LINE OF THUNDERSTORMS PRODUCING ") +#elseif(${list.contains(${bullets}, "thunder")}) + #set($phenom="A THUNDERSTORM PRODUCING ") #end +...${phenom}HEAVY RAIN WAS LOCATED ## +#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) #if(${movementSpeed} < ${landStationary} || ${stationary}) ...AND IS STATIONARY. ## #else @@ -594,7 +596,7 @@ MOST FLOOD DEATHS OCCUR IN AUTOMOBILES. NEVER DRIVE YOUR VEHICLE INTO AREAS WHER #end #if(${list.contains(${bullets}, "urbanCTA")}) -EXCESSIVE RUNOFF FROM HEAVY RAINFALL WILL CAUSE PONDING OF WATER IN URBAN AREAS...HIGHWAYS...STREETS AND UNDERPASSES AS WELL AS OTHER POOR DRAINAGE AREAS AND LOW LYING SPOTS. DO NOT ATTEMPT TO TRAVEL ACROSS FLOODED ROADS. FIND ALTERNATE ROUTES. IT TAKES ONLY A FEW INCHES OF SWIFTLY FLOWING WATER TO CARRY VEHICLES AWAY. +EXCESSIVE RUNOFF FROM HEAVY RAINFALL WILL CAUSE PONDING OF WATER IN URBAN AREAS...HIGHWAYS...STREETS AND UNDERPASSES AS WELL AS OTHER POOR DRAINAGE AREAS AND LOW LYING SPOTS. DO NOT ATTEMPT TO TRAVEL ACROSS FLOODED ROADS. FIND ALTERNATE ROUTES. #end #if(${list.contains(${bullets}, "ruralCTA")}) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.xml index a30f005bfe..5cfa822596 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodAdvisoryFollowup.xml @@ -13,6 +13,8 @@ Phil Kurimski 09-19-2013 added geospatialConfig.xml Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1 Mike Dangelo 1/23/2014 added IC and advType group to bottom of bullets (for info only, they are locked anyway, no need to have it at the top) + Phil Kurimski 06-24-2014 Put types of warnings and IC back at the top (forecasters rely on this when choosing a con statement + to determine what warning they are following up!) --> @@ -83,12 +85,12 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - - - - - - + + + + + + @@ -96,23 +98,22 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - - - - - - - + + + + + + - - - - - - + + + + + + @@ -120,17 +121,32 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - + + + + + + + + + + - - - - + + + + + + + + + + @@ -138,14 +154,12 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - - - + - + @@ -167,7 +181,16 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - + + + + + + + + + + @@ -175,20 +198,6 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - - - - - - - - - - - - - - @@ -196,16 +205,14 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - - - + - + @@ -227,21 +234,6 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll - - - - - - - - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.vm index ec604fe124..79fc7b4eec 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.vm @@ -9,6 +9,8 @@ ## Evan Bookbinder 9-18-2013 implemented config.vm ## Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1 ## Mike Rega 02-26-2014 changed MND to IMMEDIATE BROADCAST +## Phil Kurimski 06-24-2014 rewrote code for storm position to account for non-thunderstorm events +## Evan Bookbinder 9-5-2014 corrected first bullet wording if hycType and urban/small stream were selected #################################### SET SOME VARIABLES ################################### #parse("config.vm") ## @@ -20,13 +22,6 @@ #set($extend = false) #end ## -#if(${list.contains(${bullets}, "smallstreams")}) - #set($advType = "FLOOD WARNING FOR SMALL STREAMS IN...") -#elseif(${list.contains(${bullets}, "urbansmallstreams")}) - #set($advType = "FLOOD WARNING FOR URBAN AREAS AND SMALL STREAMS IN...") -#else - #set($advType = "FLOOD WARNING FOR...") -#end #set($ic = "ER") #set($hycType = "") #if(${list.contains(${bullets}, "er")}) @@ -60,6 +55,21 @@ #set($ic = "UU") #set($hycType = "") #end +#if(${list.contains(${bullets}, "smallstreams")}) + #if(${hycType} != "") + #set($advType = "FLOOD WARNING FOR SMALL STREAMS FOR...") + #else + #set($advType = "FLOOD WARNING FOR SMALL STREAMS IN...") + #end +#elseif(${list.contains(${bullets}, "urbansmallstreams")}) + #if(${hycType} != "") + #set($advType = "FLOOD WARNING FOR URBAN AREAS AND SMALL STREAMS FOR...") + #else + #set($advType = "FLOOD WARNING FOR URBAN AREAS AND SMALL STREAMS IN...") + #end +#else + #set($advType = "FLOOD WARNING FOR...") +#end ## ${WMOId} ${vtecOffice} 000000 ${BBBId} FLW${siteId} @@ -211,13 +221,14 @@ THIS IS A TEST MESSAGE. ## ############# IF TRACK IS ENABLED AND stormPosition SELECTED ############################################### #if(${list.contains(${bullets},"stormPosition")}) #thirdBullet(${dateUtil},${event},${timeFormat},${localtimezone},${secondtimezone}) -#if(${stormType} == "line") -...A LINE OF THUNDERSTORMS PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) -#else -...A THUNDERSTORM PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceCell}) +#set($phenom="") +#if(${stormType} == "line" && ${list.contains(${bullets}, "thunder")}) + #set($phenom="A LINE OF THUNDERSTORMS PRODUCING ") +#elseif(${list.contains(${bullets}, "thunder")}) + #set($phenom="A THUNDERSTORM PRODUCING ") #end +...${phenom}HEAVY RAIN WAS LOCATED ## +#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) #if(${movementSpeed} < ${landStationary} || ${stationary}) ...AND IS STATIONARY. ## #else diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.xml old mode 100755 new mode 100644 index 46bf0d452e..bae8fecb87 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarning.xml @@ -14,6 +14,11 @@ Phil Kurimski 09-19-2013 added geospatialConfig.xml Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1 Mike Dangelo 1/23/2014 added IC group to bottom of COR and EXT bullets (it's locked anyway, no need to have it at the top) + Phil Kurimski 06-24-2014 Put types of warnings and IC back at the top (forecasters rely on this when choosing a con statement + to determine what warning they are following up!) + Evan Bookbinder 10-31-2014 Changed "FLOOD WARNING FOR" to "FLOOD WARNING" for all parse and show strings where the flood type + is "Generic" + --> @@ -96,7 +101,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! - + @@ -119,15 +124,13 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! - - - + @@ -154,6 +157,21 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! + + + + + + + + + + + + + + + @@ -169,7 +187,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! - + @@ -194,7 +212,14 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! - + + + + + + + + @@ -206,16 +231,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! - - - - - - - - - - + @@ -230,7 +246,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! - + @@ -255,23 +271,6 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)! - - - - - - - - - - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.vm old mode 100755 new mode 100644 index caf8433c89..734daf80a0 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.vm @@ -11,6 +11,9 @@ ## Evan Bookbinder 9-18-2013 implemented config.vm ## Mike Rega 1-18-2014 added Alaska GP changes for 14.2.1 ## Mike Rega 2-27-2014 changed headline items to match 10-922 +## Mike Rega 4-23-2014 fixed MND blank line +## Phil Kurimski 6-24-2014 put type of warning in headline and changed CAN/EXP wording per 10-922 directive +## Evan Bookbinder 9-5-2014 corected advType inclusion in the headline #################################### SET SOME VARs ################################### #parse("config.vm") #set($hycType = "") @@ -34,6 +37,8 @@ #elseif(${ic} == "UU") #set($hycType = "") #set($floodReason = "") +#elseif(${ic} == "ER") + #set($hycType = "") #elseif(${ic} == "DM") #set($hycType = "A LEVEE FAILURE") #set($floodReason = " FLOODING DUE TO A LEVEE FAILURE WILL CONTINUE.") @@ -44,6 +49,13 @@ #set($hycType = "A GLACIER-DAMMED LAKE OUTBURST") #set($floodReason = " FLOODING DUE TO A GLACIER-DAMMED LAKE OUTBURST WILL CONTINUE.") #end +#if(${list.contains(${bullets}, "smallstreams")}) + #set($advType = "FOR SMALL STREAMS ") +#elseif(${list.contains(${bullets}, "urbansmallstreams")}) + #set($advType = "FOR URBAN AREAS AND SMALL STREAMS ") +#else + #set($advType = "") +#end ## ###################################################################################### ${WMOId} ${vtecOffice} 000000 ${BBBId} @@ -75,7 +87,6 @@ ${area.name}## #end -## #end - #elseif(${CORCAN}=="true") ${ugclinecan} ################### VTEC/COUNTY LINE ################## @@ -88,7 +99,6 @@ ${area.name}## #end -## #end - #else ${ugcline} ################### VTEC/COUNTY LINE ################## @@ -101,7 +111,6 @@ ${area.name}## #end -## #end - #end ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} @@ -116,13 +125,13 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} ############################ ### CREATE PHRASING DEPENDING ON WHETHER WE ISSUE EXP PRIOR TO EXPIRATION TIME OR NOT #if(${now.compareTo(${expire})} >= 0 && ${action}=="EXP" ) - #set($expcanHLTag = "HAS EXPIRED") + #set($expcanHLTag = "HAS EXPIRED FOR") #set($expcanBODYTag = "HAS BEEN ALLOWED TO EXPIRE") #elseif(${action}=="EXP") #set($expcanHLTag = "WILL EXPIRE AT ${dateUtil.format(${expire}, ${timeFormat.clock}, 15, ${localtimezone})}") #set($expcanBODYTag = "WILL BE ALLOWED TO EXPIRE") #elseif(${action}=="CAN" || ${action}=="CANCON" || ${CORCAN}=="true") - #set($expcanHLTag = "IS CANCELLED") + #set($expcanHLTag = "HAS BEEN CANCELLED FOR") #set($expcanBODYTag = "HAS BEEN CANCELLED") #end ################################ @@ -130,39 +139,31 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} ################################ #if(${action}=="EXP" || ${action}=="CAN") -...THE FLOOD WARNING FOR ## -#### modified by GP -#if(${hycType} != "" && ${alaska} != "true") -${hycType} IN ## -#end -#if(${hycType} != "" && ${alaska} == "true") -${hycType} ## +...THE FLOOD WARNING ${advType}## +#if(${hycType} != "") +FOR ${hycType} ## #end #if(${alaska}=="true") -!**INSERT RIVER/STREAM OR AREA**! IN !**INSERT GEO AREA**! ${expcanHLTag}... +${expcanHLTag} !**INSERT RIVER/STREAM OR AREA**! IN !**INSERT GEO AREA**!... #elseif(${wrZoneCounty}=="true") -#headlineLocList(${affectedCounties} true true true false) ${expcanHLTag}... +${expcanHLTag} #headlineLocList(${affectedCounties} true true true false)... #else -#headlineLocList(${areas} true true true false) ${expcanHLTag}... +${expcanHLTag} #headlineLocList(${areas} true true true false)... #end ### GP end ## SLIGHTLY DIFFERENT VARIABLE FOR PARTIAL CANCELLATION HEADLINE #elseif(${action}=="CANCON" || ${CORCAN}=="true") -...THE FLOOD WARNING FOR ## -### added by GP -#if(${hycType} != "" && ${alaska} != "true") -${hycType} IN ## -#end -#if(${hycType} != "" && ${alaska} == "true") -${hycType} ## +...THE FLOOD WARNING ${advType}## +#if(${hycType} != "") +FOR ${hycType} ## #end #if(${alaska}=="true") -!**INSERT RIVER/STREAM OR AREA**! IN !**INSERT GEO AREA**! ${expcanHLTag}... +${expcanHLTag} !**INSERT RIVER/STREAM OR AREA**! IN !**INSERT GEO AREA**!... #elseif(${wrZoneCounty}=="true") -#headlineLocList(${cancelaffectedCounties} true true true false) ${expcanHLTag}... +${expcanHLTag} #headlineLocList(${cancelaffectedCounties} true true true false)... #else -#headlineLocList(${cancelareas} true true true false) ${expcanHLTag}... +${expcanHLTag} #headlineLocList(${cancelareas} true true true false)... #end ### GP end #end @@ -243,7 +244,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${productClass}=="T") THIS IS A TEST MESSAGE.## #end -...A FLOOD WARNING ## +...A FLOOD WARNING ${advType}## #if(${hycType} != "") FOR ${hycType} ## #end @@ -301,13 +302,14 @@ THIS IS A TEST MESSAGE. ## ############# IF TRACK IS ENABLED AND stormPosition SELECTED ############################################### #if(${list.contains(${bullets},"stormPosition")}) #thirdBullet(${dateUtil},${event},${timeFormat},${localtimezone},${secondtimezone}) -#if(${stormType} == "line") -...A LINE OF THUNDERSTORMS PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) -#else -...A THUNDERSTORM PRODUCING HEAVY RAIN WAS LOCATED ## -#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceCell}) +#set($phenom="") +#if(${stormType} == "line" && ${list.contains(${bullets}, "thunder")}) + #set($phenom="A LINE OF THUNDERSTORMS PRODUCING ") +#elseif(${list.contains(${bullets}, "thunder")}) + #set($phenom="A THUNDERSTORM PRODUCING ") #end +...${phenom}HEAVY RAIN WAS LOCATED ## +#handleClosestPoints(${list}, ${closestPoints}, ${otherClosestPoints}, ${stormType}, ${nearPhrase} , ${maxLandNearDistance}, ${overPhrase}, ${maxLandOverDistance}, ${landDistanceUnits}, ${useSecondReferenceLine}) #if(${movementSpeed} < ${landStationary} || ${stationary}) ...AND IS STATIONARY. ## #else diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.xml old mode 100755 new mode 100644 index a27a2b2487..34a1b15f75 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/arealFloodWarningFollowup.xml @@ -11,6 +11,11 @@ Phil Kurimski 09-19-2013 added geospatialConfig.xml Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1 Mike Dangelo 1/23/2014 added IC group to bottom of CON bullets (it's locked anyway, no need to have it at the top) + Phil Kurimski 06-24-2014 Put types of warnings and IC back at the top (forecasters rely on this when choosing a con statement + to determine what warning they are following up!) + Evan Bookbinder 10-24-2014 Fixed parseString for EXT for generic flooding + Evan Bookbinder 10-31-2014 Changed "FLOOD WARNING FOR" to "FLOOD WARNING" for all parse and show strings where the flood type + is "Generic" --> @@ -93,10 +98,10 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - - - - + + + + @@ -108,19 +113,17 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - - - - - + + + - - - - + + + + @@ -132,15 +135,28 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - - - - - + + + + + + + + + + + + + + + + + + @@ -156,7 +172,7 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - + @@ -182,7 +198,14 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - + + + + + + + + @@ -194,15 +217,6 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - - - - - - - - - @@ -218,7 +232,7 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - + @@ -244,23 +258,6 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning - - - - - - - - - - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/burnScarFlashFloodWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/burnScarFlashFloodWarning.xml index 95b7e3bccf..4ec5e538c9 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/burnScarFlashFloodWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/burnScarFlashFloodWarning.xml @@ -59,11 +59,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/config.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/config.vm index 19629cf89a..b33932d36e 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/config.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/config.vm @@ -3,6 +3,7 @@ ## If you have any questions please contact Evan Bookbinder - WFO EAX ## CREATED 9/20/2013 ## Edited by Mike Rega 01-17-2014 added Alaska changes for 14.12.1 +## Edited by Evan Bookbinder 09-16-2014 Changes for 2015 Impact-based warnings ############################################################################ ### SET LAND REFERENCE DISTANCE UNITS #set($landDistanceUnits = "MILES") @@ -66,3 +67,12 @@ ### SET IF A WESTERN REGION WFO THAT USES MIXED ZONES / COUNTIES IN FLOOD PRODUCTS ### default is false #set($wrZoneCounty = false) +### +### CHANGES BELOW ANTICIPATED FOR 2015 IBW EXPERIMENT. +### +#set($svrHailConsiderableThreshold = 1.75) +#set($svrHailExtremeThreshold = 4) +#set($svrWindConsiderableThreshold = 80) +#set($svrWindExtremeThreshold = 100) +#set($svrDamageConsiderablePhrase = "SEVERE DAMAGE THREAT...CONSIDERABLE") +#set($svrDamageExtremePhrase = "SEVERE DAMAGE THREAT...EXTREME") diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/countyTypes.txt b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/countyTypes.txt index 9e22d41d13..db029789d7 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/countyTypes.txt +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/countyTypes.txt @@ -15,4 +15,5 @@ PUERTO RICO \ MUNICIPALITY PR+ \ MUNICIPALITIES PUERTO RICO+ \ MUNICIPALITIES DEFAULT+ \ COUNTIES -DEFAULT \ COUNTY \ No newline at end of file +DEFAULT \ COUNTY +CITY \ \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.vm index 670322f246..29cfe4896f 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.vm @@ -1,17 +1,21 @@ #* CREATED 09-20-2013 BY EVAN BOOKBINDER + UPDATED 6-26-14 EVAN BOOKBINDER TO HANDLE MARINE EVENTS + Right now DSS for marine events is restricted to IBW SMWs where + #set($marine = "true") is explicitly created at the top of the .vm file dbTable list should include the pointSource objects created in dssEvents.xml *# -#if ($dss_events) -#set($size = ${list.size($dss_events)}) +#if(${marine}) +#if (($dss_events_marine)) +#set($size = ${list.size($dss_events_marine)}) #if ($size > 0) PEOPLE ATTENDING ## #set($counter = 1) -#foreach($dss in $dss_events) +#foreach($dss in $dss_events_marine) #if($counter < $size) ${dss.name}...## #set($counter = $counter + 1) @@ -25,4 +29,25 @@ ${dss.name} ## SHOULD SEEK SAFE SHELTER IMMEDIATELY! #end -#end \ No newline at end of file +#end +#elseif (($dss_events)) +#set($size = ${list.size($dss_events)}) +#if ($size > 0) +PEOPLE ATTENDING ## +#set($counter = 1) +#foreach($dss in $dss_events) +#if($counter < $size) +${dss.name}...#### +#set($counter = $counter + 1) +#elseif($counter == $size) +#if($size > 1) +AND ## +#end +${dss.name} ## +#end +#end +SHOULD SEEK SAFE SHELTER IMMEDIATELY! + +#end +#end + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.xml index c01ba98673..5d813f5669 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/dssEvents.xml @@ -1,24 +1,10 @@ - warngen_dss NAME @@ -28,5 +14,32 @@ 10 distance + warngenlev + + + + + + + + + warngen_dss + NAME + TRACK + true + 10 + 10 + + distance + warngenlev + + + + + + + + +--> \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.vm index 49e03ff80b..beb59dc28a 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.vm @@ -191,10 +191,10 @@ THE SAFEST PLACE TO BE DURING A MAJOR LANDFALLING HURRICANE IS IN A REINFORCED I ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.xml index 51dda91a61..e60c44bd89 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarning.xml @@ -52,11 +52,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.vm index c5f48fd652..2046feab8c 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.vm @@ -69,10 +69,10 @@ THIS IS A TEST MESSAGE. ## ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end @@ -238,10 +238,10 @@ THE SAFEST PLACE TO BE DURING A MAJOR LANDFALLING HURRICANE IS IN A REINFORCED I ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end @@ -346,10 +346,10 @@ THIS IS A TEST MESSAGE.## ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #if(${productClass}=="T") @@ -468,10 +468,10 @@ THE SAFEST PLACE TO BE DURING A MAJOR LANDFALLING HURRICANE IS IN A REINFORCED I ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end @@ -512,10 +512,10 @@ THIS IS A TEST MESSAGE.## ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.xml index 201c1800dc..a4dbaf5d31 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/extremeWindWarningFollowup.xml @@ -57,11 +57,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.vm index ac579914f4..ab5c09877a 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.vm @@ -2,30 +2,39 @@ ## FIRE WARNING TEMPLATE ## ## VERSION 1.1 ## ## CREATED BOOKBINDER/DANGELO - 2-07-12 - Initial OB12 Write ## -## Mike Dangelo 9-13-2012 minor tweaks to ${variables} ## +## Mike Dangelo 9-13-2012 minor tweaks to ${variables} ## +## Mike Dangelo 6-25-2014 turned off auto-lock in xml and added specific lock tags herein to facilitate editing the agency name in the MND header. ## ############################################################################### #parse("config.vm") ${WMOId} ${vtecOffice} 000000 ${BBBId} FRW${siteId} -${ugcline} +${ugcline} -BULLETIN - EAS ACTIVATION REQUESTED +BULLETIN - EAS ACTIVATION REQUESTED #if(${productClass}=="T") -TEST...FIRE WARNING...TEST +TEST...FIRE WARNING...TEST #else -FIRE WARNING +FIRE WARNING #end -!** ENTER AUTHORIZING AGENCY HERE **! -RELAYED BY NATIONAL WEATHER SERVICE ${officeShort} +#set($requestedBy = "!** ENTER REQUESTING AGENCY NAME HERE **!") +#if(${list.contains(${bullets}, "agency1")}) +#set($requestedBy = "EXAMPLE AGENCY 1") +#end +#if(${list.contains(${bullets}, "agency2")}) +#set($requestedBy = "EXAMPLE AGENCY 2") +#end +REQUESTED BY ${requestedBy} +RELAYED BY NATIONAL WEATHER SERVICE ${officeShort} #backupText(${backupSite}) -${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} -## end of addition +${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${productClass}=="T") ...THIS MESSAGE IS FOR TEST PURPOSES ONLY... #end -THE FOLLOWING MESSAGE IS BEING TRANSMITTED AT THE REQUEST OF !** ENTER AUTHORIZING AGENCY HERE **!. + +THE FOLLOWING MESSAGE IS BEING TRANSMITTED AT THE REQUEST OF +$requestedBy ############################ ### FIRE WEATHER EMERGENCY # @@ -74,7 +83,7 @@ A FIRE WAS RACING TOWARD !** LOCATIONS **! AND COULD REACH THERE BY !** TIME **! #end ## #if(${ctaSelected} == "YES") -PRECAUTIONARY/PREPAREDNESS ACTIONS... +PRECAUTIONARY/PREPAREDNESS ACTIONS... #end #if(${productClass}=="T") @@ -106,13 +115,16 @@ HEED ANY EVACUATION ORDERS AND FOLLOW ALL SAFETY PRECAUTIONS. #end #if(${ctaSelected} == "YES") -&& +&& #end -#### UN-REMARK BELOW FOR LAT/LON OUTPUT -## #printcoords(${areaPoly}, ${list}) +#### UN-REMARK 3 LINES BELOW FOR LAT/LON OUTPUT +#### (leave double pound signs after the first lock tag and after the #printcoords call +#### to allow for text wrapping and locking to work properly) +## ## +## #printcoords(${areaPoly}, ${list}) ## +## - -$$ +$$ #parse("forecasterName.vm") diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.xml index ebb44f9f77..4337e32bea 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/fireWarning.xml @@ -5,6 +5,7 @@ DR 14691 added feAreaField Evan Bookbinder 09-12-2012 added new areaSource object Phil Kurimski 09-19-2013 added geospatialConfig.xml + Mike Dangelo 06-25-2014 disabled autoLockText and added example requesting agency bullets --> @@ -25,7 +26,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . mi mph - + false - true + false @@ -77,6 +78,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . + + + + @@ -90,6 +95,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . + + + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.vm index 09ff52ab12..2d4d550b6a 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.vm @@ -10,6 +10,7 @@ ## Gene Petrescu 09-19-2013 Added Alaska Modifications (GP comments) ## Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1 ## Mike Rega 03-05-2014 added 3rd bullet text ACROSS THE WARNED AREA +## Phil Kurimski 06-24-2014 minor changes for 14.2.2-9 #################################### SET SOME VARIABLES ################################### #parse("config.vm") #set($hycType = "") @@ -112,7 +113,7 @@ THIS IS A TEST MESSAGE. ## ## #set($burnCTA = "PERSONS IN THE VICINITY OF !** DRAINAGE **! SHOULD EVACUATE IMMEDIATELY.") ## #set($ctaSelected = "YES") #elseif(${list.contains(${bullets}, "mudSlide")} ) - #set($burnScar = "EXCESSIVE RAINFALL OVER THE WARNING AREA WILL CAUSE MUD SLIDES NEAR STEEP TERRAIN. THE MUD SLIDE CAN CONSIST OF ROCK...MUD...VEGETATION AND OTHER LOOSE MATERIALS.") + #set($burnScar = "EXCESSIVE RAINFALL OVER THE WARNED AREA WILL CAUSE MUD SLIDES NEAR STEEP TERRAIN. THE MUD SLIDE CAN CONSIST OF ROCK...MUD...VEGETATION AND OTHER LOOSE MATERIALS.") ## #set($burnCTA = "PERSONS IN THE VICINITY OF !** DRAINAGE **! SHOULD EVACUATE IMMEDIATELY.") ## #set($ctaSelected = "YES") #else @@ -547,7 +548,7 @@ IN HILLY TERRAIN THERE ARE HUNDREDS OF LOW WATER CROSSINGS WHICH ARE POTENTIALLY #end #if(${list.contains(${bullets}, "ffwMeansCTA")}) -A FLASH FLOOD WARNING MEANS THAT FLOODING IS IMMINENT OR OCCURRING. IF YOU ARE IN THE WARNING AREA MOVE TO HIGHER GROUND IMMEDIATELY. RESIDENTS LIVING ALONG STREAMS AND CREEKS SHOULD TAKE IMMEDIATE PRECAUTIONS TO PROTECT LIFE AND PROPERTY. DO NOT ATTEMPT TO CROSS SWIFTLY FLOWING WATERS OR WATERS OF UNKNOWN DEPTH BY FOOT OR BY AUTOMOBILE. +A FLASH FLOOD WARNING MEANS THAT FLOODING IS IMMINENT OR OCCURRING. IF YOU ARE IN THE WARNED AREA MOVE TO HIGHER GROUND IMMEDIATELY. RESIDENTS LIVING ALONG STREAMS AND CREEKS SHOULD TAKE IMMEDIATE PRECAUTIONS TO PROTECT LIFE AND PROPERTY. DO NOT ATTEMPT TO CROSS SWIFTLY FLOWING WATERS OR WATERS OF UNKNOWN DEPTH BY FOOT OR BY AUTOMOBILE. #end #if(${list.contains(${bullets}, "powerFloodCTA")}) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.xml index 38531bfb1f..1127f2676a 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarning.xml @@ -67,11 +67,11 @@ Must be paired with proper vm code (also commented out in flashFloodWarning.vm)! - torWatches - svrWatches + TO.A + SV.A @@ -109,15 +109,12 @@ Must be paired with proper vm code (also commented out in flashFloodWarning.vm)! - - - + @@ -160,9 +157,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarning.vm)! - - @@ -212,9 +207,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarning.vm)! - - diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.vm index ee1d408dee..3fc29d796f 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.vm @@ -15,6 +15,7 @@ ## Mike Dangelo 09-19-2013 implemented config.vm ## Gene Petrescu 09-20-2013 added AK modifications (GP comments) ## Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1 +## Phil Kurimski 06-24-2014 minor changes for 14.2.2-9 #################################### SET SOME VARs ################################### #parse("config.vm") #set($hycType = "") @@ -262,7 +263,7 @@ REMAINS IN EFFECT #secondBullet(${dateUtil},${expire},${timeFormat},${localtimez ## #set($burnCTA = "PERSONS IN THE VICINITY OF !** DRAINAGE **! SHOULD EVACUATE IMMEDIATELY.") ## #set($ctaSelected = "YES") #elseif(${list.contains(${bullets}, "mudSlide")} ) - #set($burnScar = "EXCESSIVE RAINFALL OVER THE WARNING AREA WILL CAUSE MUD SLIDES NEAR STEEP TERRAIN. THE MUD SLIDE CAN CONSIST OF ROCK...MUD...VEGETATION AND OTHER LOOSE MATERIALS.") + #set($burnScar = "EXCESSIVE RAINFALL OVER THE WARNED AREA WILL CAUSE MUD SLIDES NEAR STEEP TERRAIN. THE MUD SLIDE CAN CONSIST OF ROCK...MUD...VEGETATION AND OTHER LOOSE MATERIALS.") ## #set($burnCTA = "PERSONS IN THE VICINITY OF !** DRAINAGE **! SHOULD EVACUATE IMMEDIATELY.") ## #set($ctaSelected = "YES") #else @@ -548,7 +549,7 @@ IN HILLY TERRAIN THERE ARE HUNDREDS OF LOW WATER CROSSINGS WHICH ARE POTENTIALLY #end #if(${list.contains(${bullets}, "ffwMeansCTA")}) -A FLASH FLOOD WARNING MEANS THAT FLOODING IS IMMINENT OR OCCURRING. IF YOU ARE IN THE WARNING AREA MOVE TO HIGHER GROUND IMMEDIATELY. RESIDENTS LIVING ALONG STREAMS AND CREEKS SHOULD TAKE IMMEDIATE PRECAUTIONS TO PROTECT LIFE AND PROPERTY. DO NOT ATTEMPT TO CROSS SWIFTLY FLOWING WATERS OR WATERS OF UNKNOWN DEPTH BY FOOT OR BY AUTOMOBILE. +A FLASH FLOOD WARNING MEANS THAT FLOODING IS IMMINENT OR OCCURRING. IF YOU ARE IN THE WARNED AREA MOVE TO HIGHER GROUND IMMEDIATELY. RESIDENTS LIVING ALONG STREAMS AND CREEKS SHOULD TAKE IMMEDIATE PRECAUTIONS TO PROTECT LIFE AND PROPERTY. DO NOT ATTEMPT TO CROSS SWIFTLY FLOWING WATERS OR WATERS OF UNKNOWN DEPTH BY FOOT OR BY AUTOMOBILE. #end #if(${list.contains(${bullets}, "powerFloodCTA")}) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.xml index 0d808bcaac..45cf900e1e 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/flashFloodWarningFollowup.xml @@ -82,12 +82,14 @@ Must be paired with proper vm code (also commented out in flashFloodWarningFollo + + @@ -105,9 +107,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarningFollo - - @@ -159,9 +159,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarningFollo - - diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_COUNTY.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_COUNTY.xml index f0a517f785..401fff4f78 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_COUNTY.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_COUNTY.xml @@ -155,6 +155,7 @@ 10 distance + warngenlev diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_MARINE.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_MARINE.xml index 846d5ccc29..3b3531dda1 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_MARINE.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_MARINE.xml @@ -136,6 +136,7 @@ 10 distance + warngenlev diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_ZONE.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_ZONE.xml index f7665c33b8..14e0077300 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_ZONE.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/geospatialConfig_ZONE.xml @@ -163,6 +163,7 @@ 10 distance + warngenlev diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.vm index 6a74dfd0e5..29ec0d6dfb 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.vm @@ -2,12 +2,11 @@ ## SEVERE THUNDERSTORM WARNING TEMPLATE ## ## FOR CR IMPACT BASED SVR INITIATIVE ## ## CREATED BY PHIL KURIMSKI - WFO DTX ## -## UPDATED 9-18-2013 Implement global config.vm ## +## UPDATED BOOKBINDER 9-18-2013 Implement global config.vm ## +## UPDATED BOOKBINDER 2-18-2014 Wind/hail order matrix ## +## UPDATED BOOKBINDER 9-16-2014 2015 IBW Tags ## ################################################################## -## Commented out Impact statements Feb 2013 and created file to -## be parsed into the template called impactStatements.vm -## Changes to the impact statements can be made to this file -## instead of the template +## Impact Statements for IBW templates are contained in impactStatements.vm ################################################################ ## #parse("config.vm") @@ -153,7 +152,7 @@ #if(${list.contains(${bullets}, "pingpongHail")}) #set($hailThreat = "PING PONG BALL SIZE") #set($hailLead = "LARGE HAIL UP TO ") - #set($hailHazard = "PING PONG SIZE HAIL") + #set($hailHazard = "PING PONG BALL SIZE HAIL") #set($hailTrail = "") #set($hailSize = 1.50) #set($hailTag = "1.50IN") @@ -260,6 +259,14 @@ #set($hazard = "${windHazard}...${hailHazard} AND POSSIBLE TORNADO.") #end *# + #elseif(${windSpeed} >= 80 || (${windSpeed} >= 70 && ${hailSize} <= 1.5) || (${windSpeed} >= 58 && ${hailSize} <= 1.25)) + #set($hailwind = " ${reportAuthSVR} ${windThreat} AND ${hailLead}${hailThreat}${hailTrail}") + #set($hazard = "${windHazard} AND ${hailHazard}.") + #* + #if(${list.contains(${bullets}, "svrTorTag")}) + #set($hazard = "${windHazard}...${hailHazard} AND POSSIBLE TORNADO.") + #end + *# #else #set($hailwind = " ${reportAuthSVR} ${hailLead}${hailThreat}${hailTrail} AND ${windThreat}") #set($hazard = "${hailHazard} AND ${windHazard}.") @@ -429,10 +436,14 @@ THOSE ATTENDING !**event/venue name or location**! ARE IN THE PATH OF THIS STORM #end #end +## Comment out #parse command below to pull in Dynamic DSS Event Info +## If this feature is utilized, the "specialEvent" bullet (output above) can +## likely be commented out from the impactSevereThunderstormWarning.xml file +#parse("dssEvents.vm") +## parse file command here is to pull in mile marker info +##parse("mileMarkers.vm") ## parse file command here is to pull in extra points (venues) info ## #parse("pointMarkers.vm") -## parse file command here is to pull in mile marker info -## #parse("mileMarkers.vm") ################################## ######### CALLS TO ACTION ######## @@ -624,12 +635,12 @@ TORRENTIAL RAINFALL IS OCCURRING WITH THIS STORM...AND MAY LEAD TO FLASH FLOODIN ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #* NO NEED TO INCLUDE SVR T-STM WATCHES IN A SVR WARNING!!!! -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) # #end @@ -652,6 +663,14 @@ THIS IS A TEST MESSAGE. DO NOT TAKE ACTION BASED ON THIS MESSAGE. ${torTag} HAIL...${hailTag} WIND...${windTag} +### 2015 IBW ENHANCEMENT +#* REMOVE THIS COMMENT LINE WHEN DIRECTION BY YOUR REGION +#if((${hailSize} >= $svrHailExtremeThreshold) || (${windSpeed} >= $svrWindExtremeThreshold)) +$svrDamageExtremePhrase +#elseif ((${hailSize} >= $svrHailConsiderableThreshold) || (${windSpeed} >= $svrWindConsiderableThreshold)) +$svrDamageConsiderablePhrase +#end +*# ##REMOVE THIS COMMENT BLOCK WHEN DIRECTION BY YOUR REGION $$ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.xml index d0bd8e2468..eb4e943fd3 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereThunderstormWarning.xml @@ -7,7 +7,8 @@ DR 14691 added feAreaField Evan Bookbinder 09-11-2012 Added settings for locations shapefile Added new areaSource object - Phil Kurimski 09-19-2013 added geospatialConfig.xml + Phil Kurimski 09-19-2013 added geospatialConfig.xml + Evan Bookbinder 2-18-2014 corrected supercell CTA typo & added DSS Events --> @@ -19,10 +20,13 @@ PLACED IN FULL BELOW THE INCLUDE LINE BELOW. --> + + + - + - + mi @@ -54,10 +58,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches + TO.A @@ -142,7 +146,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + @@ -207,7 +211,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.vm old mode 100755 new mode 100644 index 0d6a506fad..fef6e48103 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.vm @@ -1,17 +1,20 @@ -################################################################ -## SEVERE WEATHER STATEMENT TEMPLATE ## -## FOR CR IMPACT BASED TOR/SVR INITIATIVE ## -## CREATED BY PHIL KURIMSKI - WFO DTX ## -## UPDATED Evan Bookbinder 2-22-13 2013 IBW Changes ## -## UPDATED -- Kurimski 5-20-13 2013 IBW Changes ## -## UPDATED -- Kurimski 9/17/13 Tor Emer Headline ## -## UPDATED -- Bookbinder 9/18/13 Implement config.vm ## +################################################################# +## SEVERE WEATHER STATEMENT TEMPLATE ## +## FOR CR IMPACT BASED TOR/SVR INITIATIVE ## +## CREATED BY PHIL KURIMSKI - WFO DTX ## +## UPDATED Evan Bookbinder 2-22-13 2013 IBW Changes ## +## UPDATED -- Kurimski 5-20-13 2013 IBW Changes ## +## UPDATED -- Kurimski 9/17/13 Tor Emer Headline ## +## UPDATED -- Bookbinder 9/18/13 Implement config.vm ## ## Mike Dangelo 1/24/2014 added logic to keep defaultCTAs from being used in a TOR EMER (duplication) +## UPDATED -- Bookbinder 2/18/14 Hail/Wind priority matrix ## +## UPDATED -- Bookbinder 2/27/14 TOR EMER CTA ## +## Mike Rega 4/23/14 fixed MND blank line in CAN segment ## +## Bookbinder 6/24/14 Added code to prevent Lg/Vlnt TOR w/ base ## +## Evan Bookbinder 9/5/2014 Fixed law enf CTA ## +## Evan Bookbinder 9/16/2014 2015 IBW tag ## ################################################################ -## Commented out Impact statements Feb 2013 and created file to -## be parsed into the template called impactStatements.vm -## Changes to the impact statements can be made to this file -## instead of the template +## Impact Statements for IBW templates are contained in impactStatements.vm ################################################################ #parse("config.vm") ################################################################### @@ -104,7 +107,6 @@ ${area.name}## #end -## #end - #elseif(${CORCAN}=="true") ${ugclinecan} /${productClass}.COR.${vtecOffice}.${phenomena}.W.${etn}.000000T0000Z-${dateUtil.format(${expire},${timeFormat.ymdthmz})}/ @@ -115,7 +117,6 @@ ${area.name}## #end -## #end - #else ${ugcline} /${productClass}.${action}.${vtecOffice}.${phenomena}.W.${etn}.000000T0000Z-${dateUtil.format(${expire},${timeFormat.ymdthmz})}/ @@ -179,7 +180,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${action}=="EXP" || ${action}=="CAN" || ${action}=="CANCON" || ${CORCAN}=="true") #### SET A DEFAULT STATEMENT IN CASE NO BULLET WAS SELECTED OR AVAILABLE #if(${stormType} == "line") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE !** WEAKENED. MOVED OUT OF THE WARNED AREA.**! THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE !** WEAKENED. MOVED OUT OF THE WARNED AREA.**! THEREFORE THE WARNING ${expcanBODYTag}.") #else #if(${phenomena}=="SV") #set($expcanPhrase = "THE SEVERE THUNDERSTORM WHICH PROMPTED THE WARNING HAS !** WEAKENED. MOVED OUT OF THE WARNED AREA. **! THEREFORE THE WARNING ${expcanBODYTag}.") @@ -191,9 +192,9 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${list.contains(${bullets}, "weakened")}) #if(${stormType} == "line") #if(${phenomena}=="SV") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER POSE AN IMMEDIATE THREAT TO LIFE OR PROPERTY. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER POSE AN IMMEDIATE THREAT TO LIFE OR PROPERTY. THEREFORE THE WARNING ${expcanBODYTag}.") #else - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER APPEAR CAPABLE OF PRODUCING A TORNADO. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER APPEAR CAPABLE OF PRODUCING A TORNADO. THEREFORE THE WARNING ${expcanBODYTag}.") #end #else #if(${phenomena}=="SV") @@ -206,7 +207,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #### MOVED OUT OF THE WARNED AREA #if(${list.contains(${bullets}, "movedout")}) #if(${stormType} == "line") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE MOVED OUT OF THE AREA. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE MOVED OUT OF THE AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #else #set($expcanPhrase = "THE STORM WHICH PROMPTED THE WARNING HAS MOVED OUT OF THE AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #end @@ -214,7 +215,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #### WEAKENED AND MOVED OUT OF THE AREA #if(${list.contains(${bullets}, "wkndandmoved")}) #if(${stormType} == "line") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND EXITED THE WARNED AREA. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND EXITED THE WARNED AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #else #set($expcanPhrase = "THE STORM WHICH PROMPTED THE WARNING HAS WEAKENED BELOW SEVERE LIMITS AND EXITED THE WARNED AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #end @@ -291,10 +292,10 @@ ${expcanPhrase} ${addthreat} ########################################### ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end @@ -533,13 +534,13 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} ## IF A TORNADO EMERGENCY IS SELECTED THE FOLLOWING WILL OVERRIDE CERTAIN ## ## VARIABLES TO HEIGHTEN AWARENESS OF THIS DANGEROUS SITUATION ## ############################################################################ -#if(${list.contains(${bullets}, "torEmergency")}) - #set($reportType = "TORNADO EMERGENCY FOR !** LOCATION **!. A CONFIRMED LARGE AND DESTRUCTIVE TORNADO WAS") +#if(${list.contains(${bullets}, "torEmergency")}) #set($ctaSelected = "YES") #set($torTag = "OBSERVED") #set($torHazard = "DEADLY TORNADO") #set($torThreat = "TORNADO DAMAGE THREAT...CATASTROPHIC") - #set($pdstor = "THIS IS A PARTICULARLY DANGEROUS SITUATION.") + #set($reportType = "A CONFIRMED LARGE AND DESTRUCTIVE TORNADO WAS") + #set($pdstor = "TORNADO EMERGENCY FOR !** EDIT LOCATION(S) **!. TAKE COVER NOW. THIS IS A PARTICULARLY DANGEROUS SITUATION.") #if(${stormType} == "line") #set($pathcastLead = "THESE TORNADIC STORMS") #set($moveLead = " DOPPLER RADAR SHOWED THESE TORNADIC STORMS MOVING") @@ -649,7 +650,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${list.contains(${bullets}, "pingpongHail")}) #set($hailThreat = "PING PONG BALL SIZE") #set($hailLead = "LARGE HAIL UP TO ") - #set($hailHazard = "PING PONG SIZE HAIL") + #set($hailHazard = "PING PONG BALL SIZE HAIL") #set($hailTrail = "") #set($hailSize = 1.50) #set($hailTag = "1.50IN") @@ -752,8 +753,16 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${list.contains(${bullets}, "svrTorTag")}) #set($hazard = "${windHazard}...${hailHazard} AND POSSIBLE TORNADO.") #end - *# +*# #end + #elseif(${windSpeed} >= 80 || (${windSpeed} >= 70 && ${hailSize} <= 1.5) || (${windSpeed} >= 58 && ${hailSize} <= 1.25)) + #set($hailwind = " ${reportAuthSVR} ${windThreat} AND ${hailLead}${hailThreat}${hailTrail}") + #set($hazard = "${windHazard} AND ${hailHazard}.") +#* + #if(${list.contains(${bullets}, "svrTorTag")}) + #set($hazard = "${windHazard}...${hailHazard} AND POSSIBLE TORNADO.") + #end +*# #else #set($hailwind = " ${reportAuthSVR} ${hailLead}${hailThreat}${hailTrail} AND ${windThreat}") #set($hazard = "${hailHazard} AND ${windHazard}.") @@ -932,6 +941,8 @@ THOSE ATTENDING THE !**now/venue name or location**! ARE IN THE PATH OF THIS STO #end #end +## parse file command here is to pull in mile marker info +## #parse("dssEvents.vm") ## parse file command here is to pull in extra locations (venues) info ## #parse("pointMarkers.vm") ## parse file command here is to pull in mile marker info @@ -955,7 +966,7 @@ PRECAUTIONARY/PREPAREDNESS ACTIONS... #end #if(${list.contains(${bullets}, "torEmergencyCTA")} || ${list.contains(${bullets}, "torEmergency")}) #if(${list.contains(${bullets}, "torEmergency")}) -THIS IS AN EXTREMELY DANGEROUS TORNADO WITH COMPLETE DEVASTATION LIKELY. YOU COULD BE KILLED IF NOT UNDERGROUND OR IN A TORNADO SHELTER. DO NOT DELAY...SEEK SHELTER NOW! IF NO UNDERGROUND SHELTER IS AVAILABLE SEEK SHELTER IN AN INTERIOR ROOM OF THE LOWEST LEVEL OF A STRUCTURE...OR IF TIME ALLOWS...CONSIDER MOVING TO AN UNDERGROUND SHELTER ELSEWHERE. MOBILE HOMES AND OUTBUILDINGS WILL OFFER NO SHELTER FROM THIS TORNADO. +TO REPEAT...A LARGE...EXTREMELY DANGEROUS...AND POTENTIALLY DEADLY TORNADO IS ON THE GROUND. TO PROTECT YOUR LIFE...TAKE COVER NOW. MOVE TO AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF IN A MOBILE HOME...A VEHICLE OR OUTDOORS...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. #else !** YOU SELECTED THE TORNADO EMERGENCY CTA WITHOUT SELECTING THE TORNADO EMERGENCY HEADER. PLEASE CLOSE THIS WINDOW AND RE-GENERATE THIS WARNING **! @@ -966,11 +977,11 @@ THIS IS AN EXTREMELY DANGEROUS TORNADO WITH COMPLETE DEVASTATION LIKELY. YOU COU #set($dummy='dummy') #else #if(${list.contains(${bullets}, "defaultMobileCTA")}) -${preAmbleTOR}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF IN A MOBILE HOME...A VEHICLE OR OUTDOORS...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. +${preAmbleTOR}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF YOU ARE OUTDOORS...IN A MOBILE HOME...OR IN A VEHICLE...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. #end #if(${list.contains(${bullets}, "defaultUrbanCTA")}) -${preAmbleTOR}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF IN A VEHICLE OR OUTDOORS...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. +${preAmbleTOR}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF YOU ARE OUTDOORS OR IN A VEHICLE...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. #end #end @@ -987,11 +998,17 @@ TORNADOES ARE EXTREMELY DIFFICULT TO SEE AND CONFIRM AT NIGHT. DO NOT WAIT TO SE #end #if(${list.contains(${bullets}, "largeTORCTA")}) +#if(${list.contains(${bullets}, "baseTornado")} || ${list.contains(${bullets}, "landspoutTornado")}) +!** LARGE AND EXTREME DANGEROUS TORNADO CTA SELECTED WITH A BASE/WEAK TORNADO WARNING. PLEASE CHECK +YOUR SELECTIONS AND REGENERATE THIS WARNING **! + +#else A LARGE AND EXTREMELY DANGEROUS TORNADO IS ON THE GROUND. TAKE IMMEDIATE TORNADO PRECAUTIONS. THIS IS AN EMERGENCY SITUATION. #end -#if(${list.contains(${bullets}, "lawEnforcementCTA")}) -IF A TORNADO OR OTHER SEVERE WEATHER IS SPOTTED...REPORT IT TO THE NATIONAL WEATHER SERVICE OR YOUR LOCAL AUTHORITY WHO WILL SEND YOUR REPORT. THIS ACT MAY SAVE LIVES OF OTHERS IN THE PATH OF DANGEROUS WEATHER. +#end +#if(${list.contains(${bullets}, "lawEnforcementTORCTA")}) +IF A TORNADO OR OTHER SEVERE WEATHER IS SPOTTED...REPORT IT TO THE NATIONAL WEATHER SERVICE OR YOUR LOCAL NEAREST LAW ENFORCEMENT AGENCY WHO WILL SEND YOUR REPORT. THIS ACT MAY SAVE LIVES OF OTHERS IN THE PATH OF DANGEROUS WEATHER. #end #if(${list.contains(${bullets}, "squallCTA")} && ${stormType} == "line") @@ -1181,7 +1198,7 @@ TORRENTIAL RAINFALL IS OCCURRING WITH THIS STORM...AND MAY LEAD TO FLASH FLOODIN ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")} && ${phenomena}=="SV") +#if(${list.contains(${includedWatches}, "TO.A")} && ${phenomena}=="SV") #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end @@ -1202,6 +1219,14 @@ THIS IS A TEST MESSAGE. DO NOT TAKE ACTION BASED ON THIS MESSAGE. ${svrTorTag} ${hailTag} ${windTag} +### 2015 IBW ENHANCEMENT +#* REMOVE THIS COMMENT LINE WHEN DIRECTED BY YOUR REGION +#if((${hailSize} >= $svrHailExtremeThreshold) || (${windSpeed} >= $svrWindExtremeThreshold)) +$svrDamageExtremePhrase +#elseif ((${hailSize} >= $svrHailConsiderableThreshold) || (${windSpeed} >= $svrWindConsiderableThreshold)) +$svrDamageConsiderablePhrase +#end +*# ##REMOVE THIS COMMENT BLOCK WHEN DIRECTED BY YOUR REGION #end ################################################################################# ## TOR Tornado/Hail/Wind Tags used by CR for the impact based Warning Experiment. diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.xml index 97516c2459..16755da6ec 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSevereWeatherStatement.xml @@ -13,7 +13,12 @@ Added new areaSource object Phil Kurimski 02-04-2013 OB13.2.1-5 Changed Sig Tor to Considerable Phil Kurimski 05-20-2013 Added selection for very weak tornadoes and landspouts - Phil Kurimski 09-19-2013 added geospatialConfig.xml + Phil Kurimski 09-19-2013 added geospatialConfig.xml + Evan Bookbinder 2-18-2014 corrected supercell CTA typo & added DSSEvents & 2014 IBW impacts + Evan Bookbinder 2-27-2014 parseStrings for Tornado Emergency and Default CTAs + Evan Bookbinder 9-5-2014 fixed parseStrings for law enf CTA + Evan Bookbinder 10-24-2014 fixed parseString for SqLn embedded TOR + --> turned on unless the corresponding .vm file is turned on in a given template's .vm file --> - + - + + + + mi @@ -72,8 +80,8 @@ turned on unless the corresponding .vm file is turned on in a given template's . - torWatches - svrWatches + TO.A + SV.A false @@ -199,12 +207,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + - - + + @@ -231,14 +239,14 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - + @@ -252,13 +260,13 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + - + @@ -285,14 +293,14 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - + @@ -319,12 +327,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - + @@ -336,12 +344,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + - - + + @@ -368,14 +376,14 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - + @@ -389,13 +397,13 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + - + @@ -421,14 +429,14 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - + @@ -455,12 +463,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.vm index 7efb6291b3..f6a661f5fe 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.vm @@ -4,11 +4,14 @@ ## CREATED BY PHIL KURIMSKI - WFO DTX ## ## UPDATED PHIL KURIMSKI -- SEP 17 2013 OB13.5.2-4 ## ## EVAN BOOKBINDER -- SEP 18 2013 Implemented config.vm -###################################################### +## PHIL KURIMSKI -- JUN 26 2014 OB14.2.2-9 ## +## ADDED DSS EVENTS ## +##################################################### #parse("config.vm") ################################################ ## Set null variables used in the template ################################################ +#set($marine = true) #set($capable = "") #set($ashfallPath = "") #set($debrisflowPath = "") @@ -400,6 +403,12 @@ THIS IS A TEST MESSAGE. ## THOSE ATTENDING !**event/venue name or location**! ARE IN THE PATH OF ${specialEvent} AND SHOULD PREPARE FOR IMMINENT DANGEROUS WEATHER CONDITIONS. SEEK SHELTER NOW. #end + +## Comment out #parse command below to pull in Dynamic DSS Event Info +## If this feature is utilized, the "specialEvent" bullet (output above) can +## likely be commented out from the impactSevereThunderstormWarning.xml file +#parse("dssEvents.vm") + ##################### ## CALL TO ACTIONS ## ##################### @@ -470,10 +479,10 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #if(${productClass}=="T") diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.xml index f32d251601..ae6317efd2 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarning.xml @@ -4,6 +4,7 @@ PHIL KURIMSKI WFO DTX 9-16-2013 OB13.5.2-4 FOR IMPACT BASED SMW WARNINGS Note: Volcano information will not show up in the GUI unless uncommented out Phil Kurimski 09-19-2013 added geospatialConfig.xml + Phil Kurimski 06-26-2014 added DSS Events --> + + @@ -52,11 +55,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.vm index 312e7cab78..114d4aff76 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.vm @@ -4,11 +4,14 @@ ## CREATED BY PHIL KURIMSKI - WFO DTX ## ## UPDATED KURIMSKI SEP 17 2013 OB13.5.2-4 ## ## UPDATED BOOKBINDER 9-18-2013 Implemented config.vm +## PHIL KURIMSKI -- JUN 26 2014 OB14.2.2-9 ## +## ADDED DSS EVENTS ## ##################################################### #parse("config.vm") ############################################ ## Set null variables used in the template ############################################ +#set($marine = true) #set($capable = "") #set($windhailTag = "") #set($ashfallPath = "") @@ -397,10 +400,10 @@ ${canwarning} ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end @@ -501,6 +504,12 @@ THIS IS A TEST MESSAGE. ## THOSE ATTENDING !**event/venue name or location**! ARE IN THE PATH OF ${specialEvent} AND SHOULD PREPARE FOR IMMINENT DANGEROUS WEATHER CONDITIONS. SEEK SHELTER NOW. #end + +## Comment out #parse command below to pull in Dynamic DSS Event Info +## If this feature is utilized, the "specialEvent" bullet (output above) can +## likely be commented out from the impactSevereThunderstormWarning.xml file +#parse("dssEvents.vm") + ##################### ## CALL TO ACTIONS ## ##################### @@ -571,10 +580,10 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end @@ -679,10 +688,10 @@ THE ${eventType} !** WEAKENED / MOVED OUT OF THE WARNED AREA **! AND NO LONGER $ ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #if(${productClass}=="T") @@ -810,6 +819,12 @@ THOSE ATTENDING THE !**event/venue name or location**! ARE IN THE PATH OF THIS S #end #end + +## Comment out #parse command below to pull in Dynamic DSS Event Info +## If this feature is utilized, the "specialEvent" bullet (output above) can +## likely be commented out from the impactSevereThunderstormWarning.xml file +#parse("dssEvents.vm") + ##################### ## CALL TO ACTIONS ## ##################### @@ -880,10 +895,10 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #elseif(${CORCAN} == "true") @@ -952,10 +967,10 @@ THE ${eventType} !** WEAKENED / MOVED OUT OF THE WARNED AREA **! AND NO LONGER $ ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #if(${productClass}=="T") @@ -1072,6 +1087,12 @@ THOSE ATTENDING THE !**event/venue name or location**! ARE IN THE PATH OF THIS S #end #end + +## Comment out #parse command below to pull in Dynamic DSS Event Info +## If this feature is utilized, the "specialEvent" bullet (output above) can +## likely be commented out from the impactSevereThunderstormWarning.xml file +#parse("dssEvents.vm") + ##################### ## CALL TO ACTIONS ## ##################### @@ -1142,10 +1163,10 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end @@ -1219,10 +1240,10 @@ ${expwarning} ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.xml index 282c828cb2..349cd2e75e 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactSpecialMarineWarningFollowup.xml @@ -4,6 +4,7 @@ PHIL KURIMSKI WFO DTX 9-16-2013 OB13.5.2-4 FOR IMPACT BASED SMW WARNINGS Note: Volcano information will not show up in the GUI unless uncommented out Phil Kurimski 09-19-2013 added geospatialConfig.xml + Phil Kurimski 06-26-2014 added DSS Events --> + + @@ -52,11 +55,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactStatements.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactStatements.vm index d8d6e55c85..35dc71a66b 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactStatements.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactStatements.vm @@ -6,7 +6,8 @@ ## EDITED EVAN BOOKBINDER 2-25-13 FOR IBW 2013 ## ## EDITED PHIL KURIMSKI 5-20-13 FOR UPDATED IMPACT STATEMENTS ## ## EDITED PHIL KURIMSKI 9-17-13 FOR SMW IMPACT STATEMENTS ## -## Mike D - 1/23/2014 changed to approved torEMER CTA wording, fixed typo in one $torImpact string +## EDITED EvAN BOOKBINDER 2-18-14 FOR 2014 IMPACT STATEMENTS ## +## EDITED PHIL KURIMSKI 6-26-15 FIXED CONSID IMPCT VARIABLE ## ################################################################ ## ################################################################ @@ -34,13 +35,13 @@ #set ($windImpactComb = "EXPECT CONSIDERABLE TREE DAMAGE. WIND DAMAGE IS ALSO LIKELY TO MOBILE HOMES...ROOFS AND OUTBUILDINGS.") #end #if(${windSpeed} == 80) -#set ($windImpact = "MOBILE HOMES WILL BE HEAVILY DAMAGED. FLYING DEBRIS WILL BE DANGEROUS TO PEOPLE AND ANIMALS. EXPECT CONSIDERABLE DAMAGE TO ROOFS...WINDOWS AND VEHICLES. EXTENSIVE TREE DAMAGE AND POWER OUTAGES ARE LIKELY.") +#set ($windImpact = "FLYING DEBRIS WILL BE DANGEROUS TO THOSE CAUGHT WITHOUT SHELTER. MOBILE HOMES WILL BE HEAVILY DAMAGED. EXPECT CONSIDERABLE DAMAGE TO ROOFS...WINDOWS AND VEHICLES. EXTENSIVE TREE DAMAGE AND POWER OUTAGES ARE LIKELY.") #end #if(${windSpeed} == 90) -#set ($windImpact ="YOU ARE IN A LIFE-THREATENING SITUATION. MOBILE HOMES WILL BE HEAVILY DAMAGED OR DESTROYED. HOMES AND BUSINESSES WILL HAVE SUBSTANTIAL ROOF AND WINDOW DAMAGE. FLYING DEBRIS WILL BE DEADLY TO PEOPLE AND ANIMALS. EXPECT EXTENSIVE TREE DAMAGE AND POWER OUTAGES.") +#set ($windImpact ="YOU ARE IN A LIFE-THREATENING SITUATION. FLYING DEBRIS MAY BE DEADLY TO THOSE CAUGHT WITHOUT SHELTER. MOBILE HOMES WILL BE HEAVILY DAMAGED OR DESTROYED. HOMES AND BUSINESSES WILL HAVE SUBSTANTIAL ROOF AND WINDOW DAMAGE. EXPECT EXTENSIVE TREE DAMAGE AND POWER OUTAGES.") #end #if(${windSpeed} == 100) -#set ($windImpact ="YOU ARE IN A LIFE-THREATENING SITUATION. MOBILE HOMES WILL BE DESTROYED. EXPECT CONSIDERABLE DAMAGE TO HOMES AND BUSINESSES. FLYING DEBRIS WILL BE DEADLY TO PEOPLE AND ANIMALS. EXPECT EXTENSIVE TREE DAMAGE AND POWER OUTAGES.") +#set ($windImpact ="YOU ARE IN A LIFE-THREATENING SITUATION. FLYING DEBRIS MAY BE DEADLY TO THOSE CAUGHT WITHOUT SHELTER. MOBILE HOMES WILL BE DESTROYED. EXPECT CONSIDERABLE DAMAGE TO HOMES AND BUSINESSES. EXPECT EXTENSIVE TREE DAMAGE AND POWER OUTAGES.") #end ################################################### ## HANDLE HAIL POSSIBILITIES ###################### @@ -78,27 +79,27 @@ ################################################################ ## The following is the base Tornado Impact Statement ################################################################ -#set ($torimpact = "MOBILE HOMES WILL BE DAMAGED OR DESTROYED. DAMAGE TO ROOFS...WINDOWS AND VEHICLES WILL OCCUR. FLYING DEBRIS WILL BE DEADLY TO PEOPLE AND ANIMALS. TREE DAMAGE IS LIKELY.") +#set ($torimpact = "FLYING DEBRIS WILL BE DANGEROUS TO THOSE CAUGHT WITHOUT SHELTER. MOBILE HOMES WILL BE DAMAGED OR DESTROYED. DAMAGE TO ROOFS...WINDOWS AND VEHICLES WILL OCCUR. TREE DAMAGE IS LIKELY.") ################################################################ ## IF A LANDSPOUT/VERY WEAK TORNADO IS SELECTED THE FOLLOWING ## IMPACT STATEMENT WILL BE USED WITH TONED DOWN WORDING ################################################################ #if(${list.contains($bullets, "landspoutTornado")}) -#set ($torimpact = "SPORADIC DAMAGE TO MOBILE HOMES...ROOFS AND VEHICLES.") +#set ($torimpact = "EXPECT DAMAGE TO MOBILE HOMES...ROOFS AND VEHICLES.") #end ############################################################################ ## IF A SIGNIFICANT TORNADO IS SELECTED THE FOLLOWING IMPACT STATEMENT -## WILL BE USED FOR HEIGHTENED AWARENESS OF THIS DANGEROUS SITUATION +## WILL BE USED TO HEIGHTEN AWARENESS OF THIS DANGEROUS SITUATION ############################################################################ -#if(${list.contains($bullets, "significantTornado")}) -#set ($torimpact = "YOU ARE IN A LIFE THREATENING SITUATION. MOBILE HOMES WILL BE DESTROYED. CONSIDERABLE DAMAGE TO HOMES...BUSINESSES AND VEHICLES IS LIKELY AND COMPLETE DESTRUCTION IS POSSIBLE. FLYING DEBRIS WILL BE DEADLY TO PEOPLE AND ANIMALS. EXPECT TREES TO BE UPROOTED OR SNAPPED.") +#if(${list.contains($bullets, "considerableTornado")}) +#set ($torimpact = "YOU ARE IN A LIFE THREATENING SITUATION. FLYING DEBRIS MAY BE DEADLY TO THOSE CAUGHT WITHOUT SHELTER. MOBILE HOMES WILL BE DESTROYED. CONSIDERABLE DAMAGE TO HOMES...BUSINESSES AND VEHICLES IS LIKELY AND COMPLETE DESTRUCTION IS POSSIBLE.") #end ############################################################################ ## IF A TORNADO EMERGENCY IS SELECTED THE FOLLOWING IMPACT STATEMENT ## WILL BE USED TO HEIGHTEN AWARENESS OF THIS DANGEROUS SITUATION ############################################################################ #if(${list.contains($bullets, "torEmergency")}) -#set ($torimpact = "A LARGE...EXTREMELY DANGEROUS...AND POTENTIALLY DEADLY TORNADO IS ON THE GROUND. TO PROTECT YOUR LIFE...TAKE COVER NOW. MOVE TO AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF IN A MOBILE HOME...A VEHICLE OR OUTDOORS...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS.") +#set ($torimpact = "YOU ARE IN A LIFE THREATENING SITUATION. FLYING DEBRIS MAY BE DEADLY TO THOSE CAUGHT WITHOUT SHELTER. MOBILE HOMES WILL BE DESTROYED. CONSIDERABLE DAMAGE TO HOMES...BUSINESSES AND VEHICLES IS LIKELY AND COMPLETE DESTRUCTION IS POSSIBLE.") #end ############################################################################ ## Since the SVS template uses both the torimpact and svrimpact variables diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.vm index 0dfadfe621..a5b3394403 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.vm @@ -6,14 +6,12 @@ ## UPDATED -- Bookbinder 2/22/13 2013 IBW Changes ## ## UPDATED -- Kurimski 5/20/13 Addl IBW Changes ## ## UPDATED -- Kurimski 9/17/13 Tor Emer Headline ## -## UPDATED -- Bookbinder 9/18/2013 implement config.vm ## -## Mike D -- 1/23/2014 used approved wording for torEmerCTA and fixed position of 3rd bullet torEmer mention (immed. below "* AT" para). -## Mike D -- 1/24/2014 added logic to keep defaultCTAs from being used in a TOR EMER (duplication) +## UPDATED -- Bookbinder 9/18/2013 implement config.vm ## +## UPDATED -- Dangelo 1/24/2014 added logic to keep defaultCTAs from being used in a TOR EMER (duplication) ## +## UPDATED -- Bookbinder 2/27/2014 TOR EMER CTA ## +## UPDATED -- Bookbinder 6/24/14 Added code to prevent Lg/Vlnt TOR w/ base ## ########################################################## -## Commented out Impact statements Feb 2013 and created file to -## be parsed into the template called impactStatements.vm -## Changes to the impact statements can be made to this file -## instead of the template +## Impact Statements for IBW templates are contained in impactStatements.vm ################################################################ ## ESTABLISH SOME INITIAL VARIABLES ############################ ################################################################ @@ -367,7 +365,7 @@ THIS IS A TEST MESSAGE. ## #end ############################################################################ ## IF A CONSIDERABLE TORNADO IS SELECTED THE FOLLOWING WILL OVERRIDE CERTAIN -## VARIABLES TO HEIGHTED AWARENESS OF THIS DANGEROUS SITUATION +## VARIABLES TO HEIGHTENHEIGHTEN AWARENESS OF THIS DANGEROUS SITUATION ############################################################################ #if(${list.contains(${bullets}, "considerableTornado")}) #set($reportType = "A ${confirmed}LARGE AND EXTREMELY DANGEROUS TORNADO WAS LOCATED") @@ -393,7 +391,7 @@ THIS IS A TEST MESSAGE. ## #set($torTag = "OBSERVED") #set($torHazard = "DEADLY TORNADO") #set($torThreat = "TORNADO DAMAGE THREAT...CATASTROPHIC") - #set($pdstor = "THIS IS A PARTICULARLY DANGEROUS SITUATION.") + #set($pdstor = "THIS IS A TORNADO EMERGENCY FOR !** EDIT LOCATION(S) **!. TAKE COVER NOW. THIS IS A PARTICULARLY DANGEROUS SITUATION.") #if(${stormType} == "line") #set($pathcastLead = "THESE TORNADIC STORMS") #set($moveLead = " DOPPLER RADAR SHOWED THESE TORNADIC STORMS MOVING") @@ -470,13 +468,6 @@ THIS IS A TEST MESSAGE. ## ## Section to include the dangerous storm wording as well as the hazard ## ########################################################################## -##################################################################### -### TORNADO EMERGENCY PER NWS 10-511 DIRECTIVE GOES WITH 3RD BULLET # -##################################################################### -#if(${list.contains($bullets, "torEmergency")}) -#wrapText("THIS IS A TORNADO EMERGENCY FOR !** EDIT LOCATION(S) **!. TAKE COVER NOW." 2 2) - -#end #wrapText("${pdstor}" 2 2) #wrapText("HAZARD...${hazard}" 2 11) @@ -527,6 +518,10 @@ THOSE ATTENDING !**event/venue name or location**! ARE IN THE PATH OF THIS STORM #end #end +## Comment out #parse command below to pull in Dynamic DSS Event Info +## If this feature is utilized, the "specialEvent" bullet (output above) can +## likely be commented out from the impactSevereThunderstormWarning.xml file +#parse("dssEvents.vm") ## parse file command here is to pull in mile marker info ## #parse("pointMarkers.vm") ## parse file command here is to pull in mile marker info @@ -562,14 +557,14 @@ THIS TORNADO WARNING REPLACES THE SEVERE THUNDERSTORM WARNING ISSUED FOR THE SAM #end #if(${list.contains(${bullets}, "torEmergencyCTA")} || ${list.contains(${bullets}, "torEmergency")}) - #set($dummy='dummy') +##AVOID DUPLICATE CTAS FOR GENERIC AND TOR EMER #else #if(${list.contains(${bullets}, "defaultMobileCTA")}) -${preAmble}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF YOU ARE IN A MOBILE HOME...A VEHICLE OR OUTDOORS...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. +${preAmble}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF YOU ARE OUTDOORS...IN A MOBILE HOME...OR IN A VEHICLE...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. #end #if(${list.contains(${bullets}, "defaultUrbanCTA")}) -${preAmble}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF YOU ARE IN A VEHICLE OR OUTDOORS...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. +${preAmble}TAKE COVER NOW! MOVE TO A BASEMENT OR AN INTERIOR ROOM ON THE LOWEST FLOOR OF A STURDY BUILDING. AVOID WINDOWS. IF YOU ARE OUTDOORS OR IN A VEHICLE...MOVE TO THE CLOSEST SUBSTANTIAL SHELTER AND PROTECT YOURSELF FROM FLYING DEBRIS. #end #end @@ -585,9 +580,16 @@ HEAVY RAINFALL MAY HIDE THIS TORNADO. DO NOT WAIT TO SEE OR HEAR THE TORNADO. TA TORNADOES ARE EXTREMELY DIFFICULT TO SEE AND CONFIRM AT NIGHT. DO NOT WAIT TO SEE OR HEAR THE TORNADO. TAKE COVER NOW. #end + #if(${list.contains(${bullets}, "largeTORCTA")}) +#if(${list.contains(${bullets}, "baseTornado")} || ${list.contains(${bullets}, "landspoutTornado")}) +!** LARGE AND EXTREME DANGEROUS TORNADO CTA SELECTED WITH A BASE/WEAK TORNADO WARNING. PLEASE CHECK +YOUR SELECTIONS AND REGENERATE THIS WARNING **! + +#else A LARGE AND EXTREMELY DANGEROUS TORNADO IS ON THE GROUND. TAKE IMMEDIATE TORNADO PRECAUTIONS. THIS IS AN EMERGENCY SITUATION. +#end #end #if(${list.contains(${bullets}, "lawEnforcementCTA")}) TO REPORT SEVERE WEATHER CONTACT YOUR NEAREST LAW ENFORCEMENT AGENCY. THEY WILL SEND YOUR REPORT TO THE NATIONAL WEATHER SERVICE OFFICE IN ${officeLoc}. diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.xml index 1fc9ae1c8b..2389ff1ada 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/impactTornadoWarning.xml @@ -10,7 +10,11 @@ Phil Kurimski 02-04-2013 OB13.2.1-5 Changed Sig Tor to Considerable Phil Kurimski 05-20-2013 Added selection for very weak tornadoes and landspouts Phil Kurimski 09-19-2013 added geospatialConfig.xml - Mike Dangelo 1/23/2014 changed parseString for defaultCTAs to match iTW.vm statements, removed cta1 bulletGroup from COR to ensure it is selected when doing a COR for a torEMER + Mike Dangelo 1/23/2014 changed parseString for defaultCTAs to match iTW.vm statements, + removed cta1 bulletGroup from COR to ensure it is selected when doing a COR for a torEMER + Evan Bookbinder 2-18-2014 added dssEvents hook, 2014 IBW impacts + Evan Bookbinder 10-24-2014 Fixed parse strings for Base TOR option for COR + Fixed parseString for SqLn embedded TOR for COR --> @@ -24,9 +28,11 @@ PLACED IN FULL BELOW THE INCLUDE LINE BELOW. --> turned on unless the corresponding .vm file is turned on in a given template's .vm file --> - + - + + + mi @@ -78,12 +84,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + - - + + @@ -106,7 +112,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . --> - + @@ -123,15 +129,17 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + - - + + + @@ -148,12 +156,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + - - + + @@ -175,7 +183,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . --> - + @@ -200,8 +208,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.vm index 5cea94e171..69db66c2a9 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.vm @@ -8,6 +8,7 @@ ## Phil Kurimski -- FEB 07 2013 OB13.2.1-5 ## ## Phil Kurimski -- SEP 17 2013 OB13.5.2-4 ## ## Evan Bookbinder -- SEP 18 2013 Implemented config.vm +## Mike Rega 5/23/14 DR 17380 svr wx watch logic OB14.3.1 ##################################################### #parse("config.vm") ## Set the visibility variable to be used for dense fog @@ -381,9 +382,19 @@ DENSE FOG WAS REDUCING VISIBILITIES TO BELOW ${visibility}. REDUCE YOUR SPEED... && #end +############# +## WATCHES ## +############# +#if(${list.contains($includedWatches, "TO.A")} && ${list.contains(${bullets}, "includeTorWatches")}) +#inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) +#end +#if(${list.contains(${includedWatches}, "SV.A")} && ${list.contains(${bullets}, "includeSvrWatches")}) +#insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) +#end +#################################### #if(${productClass}=="T") THIS IS A TEST MESSAGE. DO NOT TAKE ACTION BASED ON THIS MESSAGE. - +#################################### #end #printcoords(${areaPoly}, ${list}) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.xml index 94af0ead79..993025b09c 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatement.xml @@ -4,6 +4,7 @@ Evan Bookbinder 09-11-2012 Added settings for locations shapefile Added new areaSource objects Phil Kurimski 09-19-2013 added geospatialConfig.xml + Mike Rega 5/23/14 DR 17380 svr wx watch logic OB14.3.1 --> @@ -51,13 +52,16 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A + + true + 60 @@ -124,6 +128,8 @@ turned on unless the corresponding .vm file is turned on in a given template's . + + @@ -164,6 +170,8 @@ turned on unless the corresponding .vm file is turned on in a given template's . + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatementAshfall.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatementAshfall.xml index f8d740f5a9..7d0011ec8e 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatementAshfall.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/marineWeatherStatementAshfall.xml @@ -51,11 +51,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.vm index 96104c8885..8819ec5af8 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.vm @@ -1,5 +1,6 @@ #* CREATED 9-16-2013 BY EVAN BOOKBINDER +COMMENTS UPDATED 9-5-2014 BY EVAN BOOKBINDER ### THIS PLUG-IN VM FILE ALLOWS YOU TO CONSOLIDATE ALL YOUR ### MILEMARKER/EXIT/ROUTE OUTPUT INTO A SINGLE FUNCTION CALL ### A #parse("mileMarkers.vm") entry in your WarnGen .vm templates will thus @@ -24,7 +25,7 @@ $simplify is a boolean value (true or false) ########################### CONFIGURATION: ########################### -#COMMENT OUT LINES 61-64 BELOW AS NEEDED, REPLACING/ADDING TO THE EXAMPLE WITH YOUR +#COMMENT OUT LINES 63-67 BELOW AS NEEDED, REPLACING/ADDING TO THE EXAMPLE WITH YOUR #MILE MARKER/ROUTE ENTRIES #EACH LINE CONTAINS A VARIABLE MM1,MM2,MM3,etc... REFERENCING AN ARRAY (LIST) OF DATA THAT #WILL BE PASSED TO THE MMARKERS ROUTINE. @@ -43,25 +44,29 @@ The items in the array are as follows: NOTE: PLEASE ENSURE PROPER SYNTAX. Java Objects are ${variable}, Text Strings are 'TEXT', and Booleans are true/false (no quote)..see examples below ALSO ENSURE THAT EACH LINE CONTAINS A UNIQUE VARIABLE NAME: MM1, MM2, MM3, etc.. +*# - +############## EXAMPLES FOLLOW BELOW ########### +#* HERE IS AN EXAMPLE: e.g. - #set ($mm1 = [${i435mm},${i435mmid},'INTERSTATE 435','MILE MARKER',true]) - #set ($mm2 = [${i70momm},${i70mommid},'INTERSTATE 70 IN MISSOURI','MILE MARKER',true]) - #set ($mm3 = [${route22mm},${route22mmid},'ROUTE 22','EXIT',true]) + #set ($mm1 = [${EAX_i435mm},${EAX_i435mmid},'INTERSTATE 435','MILE MARKER',true]) + #set ($mm2 = [${EAX_i70momm},${EAX_i70mommid},'INTERSTATE 70 IN MISSOURI','MILE MARKER',true]) + #set ($mm3 = [${CTP_route22mm},${CTP_route22mmid},'ROUTE 22','EXIT',true]) After creating these, we must create a match list containing all of our variable names e.g. #set ($varList = [$mm1,$mm2,$mm3]) *# +############# END INSTRUCTIONS ######################################################################## + #set($hits = 0) #set($bigList = '') -##set ($mm1 = [${i435mm},${i435mmid},'INTERSTATE 435','MILE MARKER',true]) -##set ($mm2 = [${i70momm},${i70mommid},'INTERSTATE 70 IN MISSOURI','MILE MARKER',true]) -##set ($mm3 = [${i35momm},${i35mommid},'INTERSTATE 70 IN KANSAS','MILE MARKER',true]) +##set ($mm1 = [${EAX_i435mm},${EAX_i435mmid},'INTERSTATE 435','MILE MARKER',true]) +##set ($mm2 = [${EAX_i70momm},${EAX_i70mommid},'INTERSTATE 70 IN MISSOURI','MILE MARKER',true]) +##set ($mm3 = [${EAX_i35momm},${EAX_i35mommid},'INTERSTATE 70 IN KANSAS','MILE MARKER',true]) ##set ($varList = [$mm1,$mm2,$mm3]) #foreach ($var in $varList) diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.xml index ae1f732c41..29de78f248 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/mileMarkers.xml @@ -1,24 +1,31 @@ + - - +Alaska end --> @@ -122,12 +122,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - - - - - + + @@ -175,7 +175,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + @@ -190,13 +190,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - - +Alaska end --> @@ -204,12 +201,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - - - - - + + @@ -256,7 +253,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + @@ -271,13 +268,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - - +Alaska end --> @@ -285,12 +279,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - - - - - + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.vm index 1085576ea1..5ca1cefa39 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.vm @@ -11,12 +11,24 @@ ## Phil Kurimski -- SEP 17 2013 FFW Emerg ## ## Mike Rega -- JAN 18 2014 14.2.1 ## ## added Alaska GP changes ## -##################################################### +## Evan Bookbinder -- Oct 24 2014 Fixed floodSeverity code +########################################################## ## #parse("config.vm") #set($headline = "") ## set reportType2 to a default value in case nothing is selected for site specific #set($reportType2 = "THE FAILURE OF") +#if(${list.contains(${bullets}, "sev3")} || ${list.contains(${bullets}, "ffwEmergency")}) + #set($sev = "3") +#elseif(${list.contains(${bullets}, "sev1")}) + #set($sev = "1") +#elseif(${list.contains(${bullets}, "sev2")}) + #set($sev = "2") +#elseif(${list.contains(${bullets}, "sevUnk")}) + #set($sev = "U") +#else + #set($sev = "0") +#end ##################################################################### ## set variables to be used in site specific dam break selections ##################################################################### @@ -44,7 +56,6 @@ #set($headline = "FOR A GLACIAL DAMMED LAKE OUTBURST ") #set($reportType1 = "A GLACIER DAMMED LAKE AT !** **! IS RAPIDLY RELEASING LARGE QUANTITIES OF IMPOUNDED WATER RESULTING IN FLASH FLOODING !** **!") ### GP end -### #set($reportType1 = "A GLACIER AT !** **! HAS MELTED...RELEASING LARGE QUANTITIES OF IMPOUNDED WATER AND CAUSING FLASH FLOODING !** **!") #elseif(${list.contains(${bullets}, "icejam")}) #set($ic = "IJ") #set($hycType = "ICE JAM FLOODING") @@ -139,7 +150,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} ${ugcline} /${productClass}.${action}.${vtecOffice}.FF.W.${etn}.000000T0000Z-${dateUtil.format(${expire}, ${timeFormat.ymdthmz}, 15)}/ -/00000.${floodseverity}.${ic}.000000T0000Z.000000T0000Z.000000T0000Z.OO/ +/00000.${sev}.${ic}.000000T0000Z.000000T0000Z.000000T0000Z.OO/ #foreach (${area} in ${areas}) ${area.name}## #if(${includeStateAbbreviation}==true) @@ -228,10 +239,10 @@ THIS IS A TEST MESSAGE.## #if(${list.contains(${bullets}, "public")}) #set($report = "THE PUBLIC REPORTED ${reportType1}") #end -### added by GP #if(${list.contains(${bullets}, "onlyGauge")}) #set($report = "GAUGES INDICATED ${reportType1}") #end +### added by GP #if(${list.contains(${bullets}, "CAP")}) #set($report = "THE CIVIL AIR PATROL REPORTED ${reportType1}") #end @@ -497,14 +508,20 @@ THIS IS A TEST MESSAGE.## #if(${list.contains(${bullets}, "public")}) #set($report = "THE PUBLIC REPORTED ${reportType1}") #end -### added by GP #if(${list.contains(${bullets}, "onlyGauge")}) #set($report = "GAUGES INDICATED ${reportType1}") #end +## added by GP #if(${list.contains(${bullets}, "CAP")}) #set($report = "THE CIVIL AIR PATROL REPORTED ${reportType1}") #end -### GP end +#if(${list.contains(${bullets}, "alaskaVoc")}) + #set($report = "THE ALASKA VOLCANO OBSERVATORY REPORTED ${reportType1}") +#end +#if(${list.contains(${bullets}, "cascadeVoc")}) + #set($report = "THE CASCADES VOLCANO OBSERVATORY REPORTED ${reportType1}") +#end +## GP end ## Storm current location description #if(${productClass}=="T") @@ -740,14 +757,20 @@ THIS IS A TEST MESSAGE.## #if(${list.contains(${bullets}, "public")}) #set($report = "THE PUBLIC REPORTED ${reportType1}") #end -### added by GP #if(${list.contains(${bullets}, "onlyGauge")}) #set($report = "GAUGES INDICATED ${reportType1}") #end +## added by GP #if(${list.contains(${bullets}, "CAP")}) #set($report = "THE CIVIL AIR PATROL REPORTED ${reportType1}") #end -### GP end +#if(${list.contains(${bullets}, "alaskaVoc")}) + #set($report = "THE ALASKA VOLCANO OBSERVATORY REPORTED ${reportType1}") +#end +#if(${list.contains(${bullets}, "cascadeVoc")}) + #set($report = "THE CASCADES VOLCANO OBSERVATORY REPORTED ${reportType1}") +#end +## GP end ## Storm current location description #if(${productClass}=="T") diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.xml index 9e4e1eb7ea..c2b60d48a4 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/nonConvectiveFlashFloodWarningFollowup.xml @@ -10,6 +10,11 @@ Modified Phil Kurimski 02-05-2013 Reordered GUI selections to make more sense Modified Phil Kurimski 09-19-2013 added geospatialConfig.xml Modified Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1 + Modified Phil Kurimski 06-24-2014 fixed Ice Jam Parse String error 14.2.2-9 + Modified Evan Bookbinder 10-24-2014 commented out AK additions from baseline and + corrected their bulletGroup="" settings + Added floodSeverity bullets + Modified Mike Rega 10-27-2014 fixed EMER floodSeverity=3 error --> @@ -96,13 +101,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - - +Alaska end --> @@ -146,13 +148,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + - - +Alaska end --> @@ -184,24 +183,26 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + + + + + + - + - + - - +Alaska end --> - + @@ -209,12 +210,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - - - - - + + @@ -233,11 +234,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + +Alaska end --> @@ -273,21 +274,23 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + + + + + + - + - + - - +Alaska end --> @@ -298,12 +301,12 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - - - - - + + @@ -322,11 +325,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + +Alaska end --> diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.vm index 2026a34d82..cae9827a4b 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.vm @@ -7,7 +7,7 @@ ## Mike Dangelo 2-4-2013 NWS Mets detected a svr ## ## Evan Bookbinder 9-16-2013 Fixed CTA ## ## Evan Bookbinder 9-18-2013 Implemented config.vm ## -## Mike Dangelo 1/23/2014, law enf CTA change to match SVS parseString +## Evan Bookbinder 9-5-2014 fixed law enf cta ## ################################################################ ## #parse("config.vm") @@ -409,7 +409,7 @@ THIS STORM HAS A HISTORY OF PRODUCING DESTRUCTIVE WINDS AND LARGE HAIL. THIS IS #end ## #if(${list.contains(${bullets}, "lawEnforcementCTA")}) -TO REPORT SEVERE WEATHER...CONTACT THE NATIONAL WEATHER SERVICE...OR YOUR LOCAL AUTHORITY WHO WILL RELAY YOUR REPORT TO THE NATIONAL WEATHER SERVICE OFFICE IN ${officeLoc}. +TO REPORT SEVERE WEATHER...CONTACT THE NATIONAL WEATHER SERVICE...OR YOUR NEAREST LAW ENFORCEMENT AGENCY WHO WILL RELAY YOUR REPORT TO THE NATIONAL WEATHER SERVICE OFFICE IN ${officeLoc}. #end ## @@ -471,7 +471,7 @@ TORRENTIAL RAINFALL IS ALSO OCCURRING WITH THIS STORM...AND MAY LEAD TO FLASH FL ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.xml index bf18698b4a..b65d45867c 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeThunderstormWarning.xml @@ -12,6 +12,7 @@ Mike Dangelo 2-4-2013 Added commented bullet for METS DETECTED Phil Kurimski 09-16-2013 Fixed some spelling errors Phil Kurimski 09-19-2013 added geospatialConfig.xml + Evan Bookbinder 09-05-2014 Fixed law enf CTA parse string --> @@ -58,10 +59,10 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches + TO.A @@ -133,7 +134,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + @@ -190,7 +191,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.vm old mode 100755 new mode 100644 index ce629abeb0..8a451d3363 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.vm @@ -10,6 +10,9 @@ ## EVAN BOOKBINDER 9-18-2013 Implemented config.vm ## ## MIKE DANGELO 1-22-2104 Tweaked default CTA wording to fix parseString problems and torEmerCTA to use new verbage ## ## Removed preAmbleTOR (not used) -mmd 1/23/2014, preAmble for other tor-sighted/confirmed bullets retained +## Mike Rega 4/24/2014 fixed MND blank line in CAN ## +## Mike Dangelo 6/24/2014 fixed wording for plural storm references ## +## Evan Bookbinder 9/5/2014 fixed law enforcement CTA ## ################################################################# ## ################################################################### @@ -76,7 +79,6 @@ ${area.name}## #end -## #end - #elseif(${CORCAN}=="true") ${ugclinecan} /${productClass}.COR.${vtecOffice}.${phenomena}.W.${etn}.000000T0000Z-${dateUtil.format(${expire},${timeFormat.ymdthmz})}/ @@ -87,7 +89,6 @@ ${area.name}## #end -## #end - #else ${ugcline} /${productClass}.${action}.${vtecOffice}.${phenomena}.W.${etn}.000000T0000Z-${dateUtil.format(${expire},${timeFormat.ymdthmz})}/ @@ -151,7 +152,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${action}=="EXP" || ${action}=="CAN" || ${action}=="CANCON" || ${CORCAN}=="true") #### SET A DEFAULT STATEMENT IN CASE NO BULLET WAS SELECTED OR AVAILABLE #if(${stormType} == "line") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE !** WEAKENED. **OR** MOVED OUT OF THE WARNED AREA. **! THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE !** WEAKENED. **OR** MOVED OUT OF THE WARNED AREA. **! THEREFORE THE WARNING ${expcanBODYTag}.") #else #if(${phenomena}=="SV") #set($expcanPhrase = "THE SEVERE THUNDERSTORM WHICH PROMPTED THE WARNING HAS !** WEAKENED. **OR** MOVED OUT OF THE WARNED AREA. **! THEREFORE THE WARNING ${expcanBODYTag}.") @@ -163,9 +164,9 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${list.contains(${bullets}, "weakened")}) #if(${stormType} == "line") #if(${phenomena}=="SV") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER POSES AN IMMEDIATE THREAT TO LIFE OR PROPERTY. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER POSES AN IMMEDIATE THREAT TO LIFE OR PROPERTY. THEREFORE THE WARNING ${expcanBODYTag}.") #else - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER APPEAR TO BE CAPABLE OF PRODUCING A TORNADO. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND NO LONGER APPEAR TO BE CAPABLE OF PRODUCING A TORNADO. THEREFORE THE WARNING ${expcanBODYTag}.") #end #else #if(${phenomena}=="SV") @@ -178,7 +179,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #### MOVED OUT OF THE WARNED AREA #if(${list.contains(${bullets}, "movedout")}) #if(${stormType} == "line") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE MOVED OUT OF THE AREA. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE MOVED OUT OF THE AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #else #set($expcanPhrase = "THE STORM WHICH PROMPTED THE WARNING HAS MOVED OUT OF THE AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #end @@ -186,7 +187,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #### WEAKENED AND MOVED OUT OF THE AREA #if(${list.contains(${bullets}, "wkndandmoved")}) #if(${stormType} == "line") - #set($expcanPhrase = "THE LINE OF STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS...AND EXITED THE WARNED AREA. THEREFORE THE WARNING ${expcanBODYTag}.") + #set($expcanPhrase = "THE STORMS WHICH PROMPTED THE WARNING HAVE WEAKENED BELOW SEVERE LIMITS AND EXITED THE WARNED AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #else #set($expcanPhrase = "THE STORM WHICH PROMPTED THE WARNING HAS WEAKENED BELOW SEVERE LIMITS AND EXITED THE WARNED AREA. THEREFORE THE WARNING ${expcanBODYTag}.") #end @@ -263,10 +264,10 @@ ${expcanPhrase} ${addthreat} ########################################### ## WATCHES ## ############# -###if(${list.contains(${includedWatches}, "torWatches")}) +###if(${list.contains(${includedWatches}, "TO.A")}) ###inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) ###end -###if(${list.contains(${includedWatches}, "svrWatches")}) +###if(${list.contains(${includedWatches}, "SV.A")}) ###insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) ###end #if(${list.contains(${bullets}, "svrboxactive")}) @@ -767,8 +768,8 @@ TORNADOES ARE EXTREMELY DIFFICULT TO SEE AND CONFIRM AT NIGHT. DO NOT WAIT TO SE A LARGE AND EXTREMELY DANGEROUS TORNADO IS ON THE GROUND. TAKE IMMEDIATE TORNADO PRECAUTIONS. THIS IS AN EMERGENCY SITUATION. #end -#if(${list.contains(${bullets}, "lawEnforcementCTA")}) -IF A TORNADO OR OTHER SEVERE WEATHER IS SPOTTED...REPORT IT TO THE NATIONAL WEATHER SERVICE OR YOUR LOCAL AUTHORITY WHO WILL RELAY YOUR REPORT. THIS ACT MAY SAVE THE LIVES OF OTHERS IN THE PATH OF DANGEROUS WEATHER. +#if(${list.contains(${bullets}, "lawEnforcementTORCTA")}) +IF A TORNADO OR OTHER SEVERE WEATHER IS SPOTTED...REPORT IT TO THE NATIONAL WEATHER SERVICE OR YOUR NEAREST LAW ENFORECEMENT AGENCY WHO WILL RELAY YOUR REPORT. THIS ACT MAY SAVE THE LIVES OF OTHERS IN THE PATH OF DANGEROUS WEATHER. #end #if(${list.contains(${bullets}, "squallCTA")} && ${stormType} == "line") @@ -925,7 +926,7 @@ TORRENTIAL RAINFALL IS ALSO OCCURRING WITH THIS STORM...AND MAY LEAD TO FLASH FL ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")} && ${phenomena}=="SV") +#if(${list.contains(${includedWatches}, "TO.A")} && ${phenomena}=="SV") #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.xml index 1483bf541d..0a2ea7089c 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/severeWeatherStatement.xml @@ -10,7 +10,8 @@ Mike Dangelo 2-5-2013 NWS Mets Detected options (commented by default) Phil Kurimski 09-19-2013 added geospatialConfig.xml Richard Barnhill 10-28-2013 Changed/added torEMER bulletGroup to keep it locked on followups - Mike Dangelo 1-21-2014 Tweaked parseStrings for default safety rules, changed law enf CTA to match wording from both TOR and SVR + Mike Dangelo 1-21-2014 Tweaked parseStrings for default safety rules + Evan Bookbinder 9-5-2014 Fixed law enf CTA --> - + @@ -432,7 +436,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.vm index e97abde500..bfeb1d8ed5 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.vm @@ -8,6 +8,7 @@ ## Mike Dangelo 9-13-2012 minor tweaks to ${variables} ## Evan Bookbinder 9-18-2013 implemented config.vm ## Mike Dangelo 1/23/2014 Added blankStatement logic - default is still near-severe storm w/list of cities +## Mike Rega 5/23/14 DR 17380 svr wx watch logic OB14.3.1 ################################################################ ## #parse("config.vm") @@ -227,17 +228,16 @@ LOCATIONS CAN EXPECT !** EXPECTED SNOW **! INCHES OF SNOW. ## parse file command to pull in mile marker info #parse("mileMarkers.vm") +#end + ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")} && ${list.contains(${bullets}, "includeTorWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")} && ${list.contains(${bullets}, "includeTorWatches")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) - #end -#if(${list.contains(${includedWatches}, "svrWatches")} && ${list.contains(${bullets}, "includeSvrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")} && ${list.contains(${bullets}, "includeSvrWatches")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) - -#end #end $$ diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.xml index 52a6eeb82f..b748e8634a 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/shortTermForecast.xml @@ -10,6 +10,7 @@ Evan Bookbinder 5-5-2013 fixed variable under areaSource objects Chad Gimmestad 9-17-2013 made additional info bullet names/labels consistent Phil Kurimski 09-19-2013 added geospatialConfig.xml + Mike Rega 5/23/14 DR 17380 svr wx watch logic OB14.3.1 --> @@ -54,11 +55,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A @@ -109,6 +110,8 @@ turned on unless the corresponding .vm file is turned on in a given template's . + + @@ -144,6 +147,8 @@ turned on unless the corresponding .vm file is turned on in a given template's . + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.vm index 1befba963d..0a8bc2f059 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.vm @@ -5,6 +5,7 @@ ## Modified by: ## ## Phil Kurimski 16 Sep 2013 OB13.5.2-4 ## ## Evan Bookbinder Sep 18 2013 Implemented config.vm ## +## Mike Dangelo 26 June 2014 made inclusion of both watches dependent on GUI bullet choices ## ################################################################### ## ##SET SOME INITIAL VARIABLES @@ -309,10 +310,10 @@ IF ON OR NEAR !**Name Of Lake**!...GET OUT OF THE WATER AND MOVE INDOORS OR INSI ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")} && ${list.contains(${bullets}, "includeTorWatches")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")} && ${list.contains(${bullets}, "includeSvrWatches")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #################################### diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.xml index 37298cbbca..79e96a9033 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/significantWeatherAdvisory.xml @@ -6,6 +6,7 @@ 9-12-2012 Added in new areaSource object and recode for new locations shapefile Phil Kurimski 09-19-2013 added geospatialConfig.xml + Mike Dangelo 6/26/2014 added bullets for watch info inclusion (bulletDefault set to true) --> @@ -50,11 +51,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A @@ -99,11 +100,9 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + + + @@ -134,12 +133,9 @@ turned on unless the corresponding .vm file is turned on in a given template's . + + - diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.vm index c61278ce4c..d1dd56df79 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.vm @@ -431,10 +431,10 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #if(${productClass}=="T") diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.xml index 70f1df6d30..d0f4ff695f 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarning.xml @@ -7,6 +7,7 @@ Added Volcano Information Phil Kurimski 23 Sept 2011 Evan Bookbinder 09-11-2012 Added settings for locations shapefile Phil Kurimski 09-16-2013 Fixed multiple selections in pathcast Phil Kurimski 09-19-2013 added geospatialConfig.xml + Phil Kurimski 06-24-2014 fixed capable of producing waterspouts parseString --> - torWatches - svrWatches + TO.A + SV.A + + true + 30 @@ -118,7 +122,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + @@ -169,7 +173,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.vm index 2d5d85cc88..6cd06d242b 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.vm @@ -365,13 +365,14 @@ ${canwarning} ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end + ## ####################################################################### ## MWS CON PRODUCT @@ -537,13 +538,14 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end + ## ## ##################################################################### ## MWS CAN/CON PRODUCT @@ -644,10 +646,10 @@ THE ${eventType} !** WEAKENED / MOVED OUT OF THE WARNED AREA **! AND NO LONGER $ ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #if(${productClass}=="T") @@ -843,10 +845,10 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #elseif(${CORCAN} == "true") @@ -915,12 +917,13 @@ THE ${eventType} !** WEAKENED / MOVED OUT OF THE WARNED AREA **! AND NO LONGER $ ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end + #if(${productClass}=="T") THIS IS A TEST MESSAGE. DO NOT TAKE ACTION BASED ON THIS MESSAGE. @@ -929,7 +932,6 @@ THIS IS A TEST MESSAGE. DO NOT TAKE ACTION BASED ON THIS MESSAGE. #tml(${TMLtime}, ${timeFormat}, ${movementDirection}, ${movementInKnots}, ${eventLocation}) - $$ ${ugcline} @@ -1102,13 +1104,14 @@ REPORT SEVERE WEATHER TO THE COAST GUARD OR NEAREST LAW ENFORCEMENT AGENCY. THEY ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end + ## ## ##################################################################### ## MWS EXP PRODUCT @@ -1179,10 +1182,10 @@ ${expwarning} ############# ## WATCHES ## ############# -#if(${list.contains(${includedWatches}, "torWatches")}) +#if(${list.contains(${includedWatches}, "TO.A")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end -#if(${list.contains(${includedWatches}, "svrWatches")}) +#if(${list.contains(${includedWatches}, "SV.A")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #end diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.xml index 5eac690e76..736cae2400 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialMarineWarningFollowup.xml @@ -56,13 +56,16 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A + + true + 30 diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.vm index a418dc057f..1131aab069 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.vm @@ -6,6 +6,8 @@ ## Phil Kurimski WFO DTX 9.16.2013 (BUILD 13.5.2-4) ## ## Evan Bookbinder 9.18.2013 Implemented config.vm ## ## Mike Dangelo 1/23/2014 Added blankStatement logic - default is still near-severe storm w/list of cities +## Mike Rega 5/23/14 DR 17380 svr wx watch logic OB14.3.1 ## +## Mike Dangelo 6/24/2014 headline tweak to add 'COUNTIES' ## ############################################################ ## ## SET SOME INITIAL VARIABLES @@ -194,19 +196,21 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})} #if(${productClass}=="T") THIS IS A TEST MESSAGE. ## #end + #if(${list.contains(${bullets}, "blankStatement")}) -... !** headline **! ... +... !** edit headline **! ... #else -...${describeEvent} WILL AFFECT ## #set($full = '') #foreach (${area} in ${areas}) #set($full = "${full}${area.name}...") #end -#if(${full.length()} > 120) -!** DESCRIBE AREA **! ... +#if(${full.length()} > 140) +... !** edit headline **! ... #else -${full} +...${describeEvent} WILL AFFECT ## +#headlineLocList(${affectedCounties} true true true false)... + #end #end @@ -345,13 +349,15 @@ ICY ROADS ARE POSSIBLE AS THE SNOW MELTS ON THE ROADS THEN QUICKLY REFREEZES. #if(${list.contains($bullets, "changingConditionsCTA")}) CONDITIONS CAN DETERIORATE RAPIDLY IN WINTER WEATHER SITUATIONS. BE PREPARED FOR SNOW OR ICE COVERED ROADS. SLOW DOWN AND ALLOW EXTRA TIME WHEN TRAVELING. +#end #end ############# ## WATCHES ## ############# -#if(${list.contains($includedWatches, "includeSvrWatches")}) +#if(${list.contains($includedWatches, "TO.A")} && ${list.contains(${bullets}, "includeTorWatches")}) #inserttorwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) - +#end +#if(${list.contains(${includedWatches}, "SV.A")} && ${list.contains(${bullets}, "includeSvrWatches")}) #insertsvrwatches(${watches}, ${list}, ${secondtimezone}, ${dateUtil}, ${timeFormat}) #end #################################### @@ -364,8 +370,7 @@ THIS IS A TEST MESSAGE. DO NOT TAKE ACTION BASED ON THIS MESSAGE. #tml(${TMLtime}, ${timeFormat}, ${movementDirection}, ${movementInKnots}, ${eventLocation}) -#end $$ -#parse("forecasterName.vm") \ No newline at end of file +#parse("forecasterName.vm") diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.xml index b296717f9a..d8fd63d764 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/specialWeatherStatement.xml @@ -3,6 +3,8 @@ Phil Kurimski 2.05.2013 (on build 13.2.1-5) Phil Kurimski 9-19-2013 added geospatialConfig.xml Mike Dangelo 1/23/2014 added blankStatement bullet + Mike Rega 5/23/14 DR 17380 svr wx watch logic OB14.3.1 + Mike Dangelo 6/24/2014 removed unnecessary example bullets --> @@ -49,11 +51,11 @@ turned on unless the corresponding .vm file is turned on in a given template's . true - torWatches - svrWatches + TO.A + SV.A @@ -104,19 +106,14 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + @@ -160,19 +157,14 @@ turned on unless the corresponding .vm file is turned on in a given template's . - - + + diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.vm b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.vm index 7eb81f5c3c..03028a1e7d 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.vm +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.vm @@ -9,6 +9,8 @@ ## Evan Bookbinder 9-18-2013 Implemented config.vm ## ## Josh Huber and Mike Dangelo 1/22/14 Emer CTA wording tweak ## ## Mike Dangelo 1/24/2014 - Removed preAmbleTOR (not used), preAmble for other tor-sighted/confirmed bullets retained, law enf CTA changed to match SVS parseString, prevented largeTORCTA if confirmedLarge not selected as type. +## Phil Kurimski 6-26-2014 fixed large tornado cta +## Evan Bookbinder 9-5-2014 fixed law enf cta ## ############################################################################### ## ESTABLISH SOME INITIAL VARIABLES #parse("config.vm") @@ -447,14 +449,14 @@ HEAVY RAINFALL MAY OBSCURE THIS TORNADO. DO NOT WAIT TO SEE OR HEAR THE TORNADO. TORNADOES ARE EXTREMELY DIFFICULT TO SEE AND CONFIRM AT NIGHT. DO NOT WAIT TO SEE OR HEAR THE TORNADO. TAKE COVER NOW. #end -#if(${list.contains(${bullets}, "confirmedLarge")}) +#if(${list.contains(${bullets}, "largeTORCTA")}) #if(${list.contains(${bullets}, "meteorologistsLarge")} || ${list.contains(${bullets}, "largeTORCTA")}) A LARGE AND EXTREMELY DANGEROUS TORNADO IS ON THE GROUND. TAKE IMMEDIATE TORNADO PRECAUTIONS. THIS IS A LIFE-THREATENING SITUATION. #end #end #if(${list.contains(${bullets}, "lawEnforcementCTA")}) -IF A TORNADO OR OTHER SEVERE WEATHER IS SPOTTED...CONTACT THE NATIONAL WEATHER SERVICE...OR YOUR LOCAL AUTHORITY WHO WILL RELAY YOUR REPORT TO THE NATIONAL WEATHER SERVICE OFFICE IN ${officeLoc}. THIS ACT MAY SAVE LIVES OF OTHERS IN THE PATH OF DANGEROUS WEATHER. +IF A TORNADO OR OTHER SEVERE WEATHER IS SPOTTED...CONTACT THE NATIONAL WEATHER SERVICE...OR YOUR NEAREST LAW ENFORCEMENT AGENCY WHO WILL RELAY YOUR REPORT TO THE NATIONAL WEATHER SERVICE OFFICE IN ${officeLoc}. THIS ACT MAY SAVE LIVES OF OTHERS IN THE PATH OF DANGEROUS WEATHER. #end #if(${list.contains(${bullets}, "squallCTA")} && ${stormType} == "line") diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.xml index 8ce77e182a..1f3cc1e1f6 100755 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/utility/common_static/base/warngen/tornadoWarning.xml @@ -11,7 +11,8 @@ Create new areaSource objects Mike Dangelo 2-4-2013 Added commented bullet for NWS METS DECTECTED Richard Barnhill 10-28-2013 Changed/added torEMER bulletGroup to keep it locked on followups - Mike Dangelo 1-23-2014 Changed parseStrings for default safety rules CTAs and law enf CTA + Mike Dangelo 1-23-2014 Changed parseStrings for default safety rules CTAs and law enf CTA + Evan Bookbinder 9-5-2014 Fixed law enf CTA parse strings to match --> @@ -132,7 +133,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + @@ -197,7 +198,7 @@ turned on unless the corresponding .vm file is turned on in a given template's . - + diff --git a/edexOsgi/com.raytheon.uf.common.dissemination/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.dissemination/META-INF/MANIFEST.MF index c233aa0024..fc2474486a 100644 --- a/edexOsgi/com.raytheon.uf.common.dissemination/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.dissemination/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Dissemination Plug-in Bundle-SymbolicName: com.raytheon.uf.common.dissemination -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.serialization.comm Export-Package: com.raytheon.uf.common.dissemination Require-Bundle: com.raytheon.uf.common.serialization;bundle-version="1.11.17", diff --git a/edexOsgi/com.raytheon.uf.common.gridcoverage/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.gridcoverage/META-INF/MANIFEST.MF index 1343b520ba..7f5b2687a2 100644 --- a/edexOsgi/com.raytheon.uf.common.gridcoverage/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.gridcoverage/META-INF/MANIFEST.MF @@ -2,11 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Grid Coverage Bundle-SymbolicName: com.raytheon.uf.common.gridcoverage -Bundle-Version: 1.13.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization Export-Package: com.raytheon.uf.common.gridcoverage, com.raytheon.uf.common.gridcoverage.convert, com.raytheon.uf.common.gridcoverage.exception, diff --git a/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/GridCoverage.java b/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/GridCoverage.java index ca5763679e..4cd6a6ff68 100644 --- a/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/GridCoverage.java +++ b/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/GridCoverage.java @@ -51,11 +51,12 @@ import org.opengis.referencing.operation.MathTransform; import com.raytheon.uf.common.dataplugin.annotations.DataURI; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.geospatial.CRSCache; +import com.raytheon.uf.common.geospatial.IGridGeometryProvider; import com.raytheon.uf.common.geospatial.ISpatialObject; import com.raytheon.uf.common.geospatial.MapUtil; +import com.raytheon.uf.common.geospatial.adapter.GeometryAdapter; import com.raytheon.uf.common.gridcoverage.exception.GridCoverageException; import com.raytheon.uf.common.gridcoverage.subgrid.SubGrid; -import com.raytheon.uf.common.serialization.adapters.GeometryAdapter; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.vividsolutions.jts.geom.Geometry; @@ -77,6 +78,8 @@ import com.vividsolutions.jts.geom.Geometry; * spatial * Oct 15, 2013 2473 bsteffen add @XmlSeeAlso for self contained JAXB * context. + * Apr 11, 2014 2947 bsteffen Implement IGridGeometryProvider. + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -93,7 +96,7 @@ import com.vividsolutions.jts.geom.Geometry; StereographicGridCoverage.class }) @DynamicSerialize public abstract class GridCoverage extends PersistableDataObject - implements ISpatialObject { + implements ISpatialObject, IGridGeometryProvider { private static final long serialVersionUID = -1355232934065074837L; @@ -122,7 +125,7 @@ public abstract class GridCoverage extends PersistableDataObject /** Geometry object holding the corner points of the grid */ @Column(name = "the_geom") - @Type(type = "org.hibernatespatial.GeometryUserType") + @Type(type = "org.hibernate.spatial.GeometryType") @XmlJavaTypeAdapter(value = GeometryAdapter.class) @DynamicSerializeElement protected Geometry geometry; @@ -394,6 +397,7 @@ public abstract class GridCoverage extends PersistableDataObject this.description = description; } + @Override public GridGeometry2D getGridGeometry() { if (gridGeometry == null) { gridGeometry = MapUtil.getGridGeometry(this); diff --git a/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/LambertConformalGridCoverage.java b/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/LambertConformalGridCoverage.java index f547efa10f..3bafad0035 100644 --- a/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/LambertConformalGridCoverage.java +++ b/edexOsgi/com.raytheon.uf.common.gridcoverage/src/com/raytheon/uf/common/gridcoverage/LambertConformalGridCoverage.java @@ -52,11 +52,13 @@ import com.raytheon.uf.common.status.UFStatus.Priority; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * 4/7/09 1994 bphillip Initial Creation - * 09/10/2012 DR 15270 D. Friedman Fix subgrid model name handling. - * Jan 17, 2014 2125 rjpeter Removed invalid @Table annotation. + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Apr 07, 2009 1994 bphillip Initial Creation + * Sep 10, 2012 15270 D. Friedman Fix subgrid model name handling. + * Jan 17, 2014 2125 rjpeter Removed invalid @Table annotation. + * Jun 05, 2014 3243 bsteffen Remove deprecated lambert conformal call. + * * * * @author bphillip @@ -121,7 +123,7 @@ public class LambertConformalGridCoverage extends GridCoverage { @Override public void initialize() throws GridCoverageException { crs = MapUtil.constructLambertConformal(majorAxis, minorAxis, latin1, - latin2, lov); + latin2, lov, latin1); crsWKT = crs.toWKT(); generateGeometry(); } diff --git a/edexOsgi/com.raytheon.uf.common.hydro/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.hydro/META-INF/MANIFEST.MF index 8465cd91b8..2a68b96a92 100644 --- a/edexOsgi/com.raytheon.uf.common.hydro/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.hydro/META-INF/MANIFEST.MF @@ -2,12 +2,13 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Hydrocommon Plug-in Bundle-SymbolicName: com.raytheon.uf.common.hydro -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Require-Bundle: org.geotools;bundle-version="2.5.2", com.raytheon.uf.common.geospatial;bundle-version="1.11.9", - com.raytheon.edex.common;bundle-version="1.11.9", - com.raytheon.uf.common.dataaccess + com.raytheon.uf.common.dataaccess, + com.raytheon.uf.common.serialization, + com.raytheon.uf.common.util;bundle-version="1.14.0" Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.uf.common.hydro.service, diff --git a/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/dataaccess/HydroGeometryFactory.java b/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/dataaccess/HydroGeometryFactory.java index b22223b905..df5962ebd3 100644 --- a/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/dataaccess/HydroGeometryFactory.java +++ b/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/dataaccess/HydroGeometryFactory.java @@ -23,10 +23,12 @@ import java.sql.Timestamp; import java.util.Map; import com.raytheon.uf.common.dataaccess.IDataRequest; +import com.raytheon.uf.common.dataaccess.exception.IncompatibleRequestException; import com.raytheon.uf.common.dataaccess.exception.TimeAgnosticDataException; import com.raytheon.uf.common.dataaccess.geom.IGeometryData; import com.raytheon.uf.common.dataaccess.impl.AbstractGeometryDatabaseFactory; import com.raytheon.uf.common.dataaccess.impl.FactoryUtil; +import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.time.BinOffset; import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.common.time.TimeRange; @@ -43,13 +45,16 @@ import com.vividsolutions.jts.geom.GeometryFactory; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Nov 13, 2012 njensen Initial creation - * Jan 30, 2012 1551 bkowal Refactored - * Jan 31, 2012 1555 bkowal Modification based on existing hydro code - * Feb 14, 2013 1614 bsteffen Refactor data access framework to use - * single request. + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Nov 13, 2012 njensen Initial creation + * Jan 30, 2012 1551 bkowal Refactored + * Jan 31, 2012 1555 bkowal Modification based on existing hydro code + * Feb 14, 2013 1614 bsteffen Refactor data access framework to use + * single request. + * Mar 03, 2014 2673 bsteffen Add ability to query only ref times. + * Jul 14, 2014 3184 njensen Overrode getAvailableLevels() + * Jul 30, 2014 3184 njensen Added optional identifiers * * * @@ -73,7 +78,7 @@ public class HydroGeometryFactory extends AbstractGeometryDatabaseFactory { private static final String IHFS_DATABASE = "ihfs"; public HydroGeometryFactory() { - super(IHFS_DATABASE, REQUIRED); + super(IHFS_DATABASE, REQUIRED, new String[] { COL_NAME_OPTION }); } /* @@ -135,7 +140,7 @@ public class HydroGeometryFactory extends AbstractGeometryDatabaseFactory { * #assembleGetTimes (com.raytheon.uf.common.dataaccess.geom.IDataRequest) */ @Override - protected String assembleGetTimes(IDataRequest request) { + protected String assembleGetTimes(IDataRequest request, boolean refTimeOnly) { return HydroQueryAssembler.assembleGetTimes(request); } @@ -148,8 +153,7 @@ public class HydroGeometryFactory extends AbstractGeometryDatabaseFactory { * com.raytheon.uf.common.time.BinOffset) */ @Override - protected String assembleGetTimes(IDataRequest request, - BinOffset binOffset) { + protected String assembleGetTimes(IDataRequest request, BinOffset binOffset) { return null; } @@ -162,8 +166,7 @@ public class HydroGeometryFactory extends AbstractGeometryDatabaseFactory { * com.raytheon.uf.common.time.DataTime[]) */ @Override - protected String assembleGetData(IDataRequest request, - DataTime... times) { + protected String assembleGetData(IDataRequest request, DataTime... times) { return HydroQueryAssembler.assembleGetData(request, times); } @@ -176,8 +179,7 @@ public class HydroGeometryFactory extends AbstractGeometryDatabaseFactory { * com.raytheon.uf.common.time.TimeRange) */ @Override - protected String assembleGetData(IDataRequest request, - TimeRange timeRange) { + protected String assembleGetData(IDataRequest request, TimeRange timeRange) { return HydroQueryAssembler.assembleGetData(request, timeRange); } @@ -193,4 +195,11 @@ public class HydroGeometryFactory extends AbstractGeometryDatabaseFactory { protected String assembleGetAvailableLocationNames(IDataRequest request) { return "select lid from location;"; } + + @Override + public Level[] getAvailableLevels(IDataRequest request) { + throw new IncompatibleRequestException(request.getDatatype() + + " data does not support the concept of levels"); + } + } \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAP.java b/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAP.java index 95a0ed7cf3..b0ecca9edf 100644 --- a/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAP.java +++ b/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAP.java @@ -49,6 +49,7 @@ import com.vividsolutions.jts.geom.Coordinate; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Sep 16, 2008 randerso Initial creation + * Mar 31, 2014 2689 mpduff Log input values on conversion failure. * * * @author randerso @@ -91,13 +92,13 @@ public class HRAP { private String projectionID; - private Coordinate latLonUL; + private final Coordinate latLonUL; private Coordinate latLonUR; private Coordinate latLonLL; - private Coordinate latLonLR; + private final Coordinate latLonLR; private Coordinate latLonOrigin; @@ -117,9 +118,9 @@ public class HRAP { private CoordinateReferenceSystem crs; - private Map toLatLonMap; + private final Map toLatLonMap; - private Map fromLatLonMap; + private final Map fromLatLonMap; private GridToEnvelopeMapper gridMapper; @@ -426,7 +427,8 @@ public class HRAP { JTS.transform(latLon, gridCell, getTransformFromLatLon(orientation)); } catch (TransformException e) { throw new Exception( - "Error creating transform from Lat/Lon to HRAP", e); + "Error creating transform from Lat/Lon to HRAP. Input: x [" + + latLon.x + "], y [" + latLon.y + "]", e); } return gridCell; } diff --git a/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAPCoordinates.java b/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAPCoordinates.java index e0a43b5473..b3c81d5b21 100644 --- a/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAPCoordinates.java +++ b/edexOsgi/com.raytheon.uf.common.hydro/src/com/raytheon/uf/common/hydro/spatial/HRAPCoordinates.java @@ -28,6 +28,21 @@ import java.io.IOException; import com.raytheon.uf.common.ohd.AppsDefaults; import com.raytheon.uf.common.util.FileUtil; +/** + * TODO Returns HRAP Coordinates + * + *
      + * 
      + * SOFTWARE HISTORY
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + * Mar 18, 2014  17067      snaples     Added trim to readline to prevent parsing issues.
      + * 
      + * 
      + * + * @author snaples + * @version 1.0 + */ public class HRAPCoordinates { public static Rectangle getHRAPCoordinates() throws Exception { @@ -49,13 +64,13 @@ public class HRAPCoordinates { String line = null; try { in = new BufferedReader(new FileReader(coordFile)); - line = in.readLine(); + line = in.readLine().trim(); Hrap_XOR = Integer.parseInt(line); - line = in.readLine(); + line = in.readLine().trim(); Hrap_YOR = Integer.parseInt(line); - line = in.readLine(); + line = in.readLine().trim(); Hrap_MAXX = Integer.parseInt(line); - line = in.readLine(); + line = in.readLine().trim(); Hrap_MAXY = Integer.parseInt(line); } catch (FileNotFoundException e) { throw new Exception("unable to find coordinate file: " diff --git a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/ModuleUtil.py b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/ModuleUtil.py index 40bc2b9d39..60c3409fb1 100644 --- a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/ModuleUtil.py +++ b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/ModuleUtil.py @@ -29,6 +29,9 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 11/11/13 bkowal Initial Creation. +# 01/20/14 2712 bkowal Always add the directory path for +# the desired module to the beginning +# of the system path. # import os, sys, imp @@ -39,19 +42,16 @@ def loadModule(filename): @summary: This function takes a filename and find the module, loads it and returns that module ''' - addedToPath = False path = os.path.splitext(filename)[0] directory = os.path.dirname(filename) # ensure the module containing directory is on the python path. - if sys.path.count(directory) == 0: - sys.path.append(directory) - addedToPath = True - filename = os.path.split(path)[1] - fp, pathname, description = imp.find_module(filename) - module = imp.load_module(filename, fp, pathname, description) - - if addedToPath: - sys.path.remove(directory) + sys.path.insert(0, directory) + try: + filename = os.path.split(path)[1] + fp, pathname, description = imp.find_module(filename) + module = imp.load_module(filename, fp, pathname, description) + finally: + sys.path.pop(0) return module \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverrider.py b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverrider.py index 2d34920022..f968848cd9 100644 --- a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverrider.py +++ b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverrider.py @@ -31,14 +31,33 @@ # 11/04/13 2086 bkowal Updated to merge classes - both legacy and non-legacy. # Minimum to Maximum level of retrieval can now be specified. # 11/12/13 2540 bkowal Relocated common methods to PythonOverriderCore.py. +# 02/13/14 2712 bkowal The main PythonOverrider module can now determine whether +# it is running in Jep or not and make the necessary +# adjustments. # # # +import subprocess + +THRIFT_HOST = subprocess.check_output( + 'source /awips2/fxa/bin/setup.env; echo $DEFAULT_HOST', + shell=True).strip() +THRIFT_PORT = subprocess.check_output( + 'source /awips2/fxa/bin/setup.env; echo $DEFAULT_PORT', + shell=True).strip() + import PythonOverriderCore -from PathManager import PathManager -def importModule(name, loctype='COMMON_STATIC', level=None): +JEP_AVAILABLE = True +try: + from PathManager import PathManager +except ImportError: + import PythonOverriderPure + JEP_AVAILABLE = False + +def importModule(name, loctype='COMMON_STATIC', level=None, localizationHost=None, + localizationPort=None, localizedSite=None, localizationUser=None): """ Takes a name (filename and localization path) and the localization type and finds the file and overrides it, and returns the module @@ -51,6 +70,16 @@ def importModule(name, loctype='COMMON_STATIC', level=None): Returns: a module that has all the correct methods after being overridden """ + if not JEP_AVAILABLE: + if localizationHost is None: + localizationHost = THRIFT_HOST + + if localizationPort is None: + localizationPort = THRIFT_PORT + + return PythonOverriderPure.importModule(name, localizationHost, localizationPort, + localizedSite, localizationUser, loctype, level) + pathManager = PathManager() tieredFiles = pathManager.getTieredLocalizationFile(loctype, name) availableLevels = pathManager.getAvailableLevels() diff --git a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderCore.py b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderCore.py index 82c08542ee..bd082df239 100644 --- a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderCore.py +++ b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderCore.py @@ -30,11 +30,14 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 11/12/13 bkowal Initial Creation. +# 01/20/14 2712 bkowal Improve python class merging. Classes +# will now truly override each other +# instead of extending each other. # # # -import os, imp, types +import os, imp, types, inspect import ModuleUtil def _internalOverride(files): @@ -111,29 +114,41 @@ def _mergeClasses(source, target, className): for attr in dir(sourceClass): # include private attributes because this is a class? # methods cannot just be merged into a class, so skip them. - if isinstance(attr, types.BuiltinFunctionType) \ - or isinstance(attr, types.MethodType) \ - or attr.startswith('__') or attr.startswith('_'): - continue + if isinstance(getattr(sourceClass, attr), types.BuiltinFunctionType) \ + or isinstance(getattr(sourceClass, attr), types.MethodType) \ + or attr.startswith('__'): + continue # do we need to worry about nested classes? if isinstance(getattr(sourceClass, attr), types.ClassType) \ - or isinstance(getattr(sourceClass, attr), types.TypeType): + or isinstance(getattr(sourceClass, attr), types.TypeType): target = _mergeClasses(source, target, attr) attributeName = className + '.' + attr target = _mergeAttributes(source, target, attributeName) + + # make new class "extend" the original class + for attr in dir(targetClass): + if attr != '__init__' \ + and isinstance(getattr(targetClass, attr), types.MethodType) \ + and not attr in dir(sourceClass): + # complete the merge / override of methods for any method that + # the new class does not implement + + # retrieve the implementation of the method (this is different from + # retrieving the method, itself) + exec('method = target.' + className + '.' + attr + '.im_func') + # copy the method implementation to the other class and give it + # the same name as the original + classMethodDirective = _buildReplaceClassMethodDirective(className, attr) + exec(classMethodDirective) - # complete the merge / override of methods. - exec(_buildMergeDirective(className, legacyMode)) return _mergeAttributes(source, target, className) -def _buildMergeDirective(className, legacyMode): - if (legacyMode): - return 'source.' + className + '.__bases__ = (target.' + className + ',)' - else: - return 'source.' + className + ' = type("' + className + \ - '", (target.' + className + ',), dict(source.' + className + '.__dict__))' +def _buildReplaceClassMethodDirective(className, methodName): + replaceDirective = 'setattr(source.' + className + ', "' + methodName + '", method)' + + return replaceDirective def _compareClasses(clazz1, clazz2): clazz1Attr = dir(clazz1) diff --git a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderPure.py b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderPure.py index cf5e72386b..7d80ed3c82 100644 --- a/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderPure.py +++ b/edexOsgi/com.raytheon.uf.common.localization.python/utility/common_static/base/python/PythonOverriderPure.py @@ -29,6 +29,8 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 03/12/13 bkowal Initial Creation. +# 02/17/14 2712 bkowal Provide a default value for localization site. +# 03/19/14 2929 bkowal 'REGION' is now recognized as a valid localization level. # # # @@ -46,9 +48,9 @@ from dynamicserialize.dstypes.com.raytheon.uf.common.localization import Localiz from dynamicserialize.dstypes.com.raytheon.uf.common.localization.stream import LocalizationStreamGetRequest BUFFER_SIZE = 512 * 1024 -availableLevels = ['BASE', 'CONFIGURED', 'SITE', 'USER'] +availableLevels = ['BASE', 'REGION', 'CONFIGURED', 'SITE', 'USER'] -def importModule(name, localizationHost, localizationPort, localizedSite, localizationUser=None, +def importModule(name, localizationHost, localizationPort, localizedSite=None, localizationUser=None, loctype='COMMON_STATIC', level=None): ''' @param name: the name of the localization file diff --git a/edexOsgi/com.raytheon.uf.common.monitor.cpg/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.monitor.cpg/META-INF/MANIFEST.MF index 188a36db67..602ffcf324 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor.cpg/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.monitor.cpg/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Cpg Plug-in Bundle-SymbolicName: com.raytheon.uf.common.monitor.cpg -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.uf.common.monitor.cpg Require-Bundle: com.raytheon.uf.common.localization;bundle-version="1.11.17", diff --git a/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateConfigurationManager.java b/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateConfigurationManager.java index 1c86fcc523..8e57b2e6a6 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateConfigurationManager.java +++ b/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateConfigurationManager.java @@ -188,6 +188,14 @@ public class MonitorStateConfigurationManager { return configXml.isPrecipRate(); } + /** + * HydroDualPol state + * @return + */ + public boolean getHydroDualPolState() { + return configXml.isHydroDualPol(); + } + /** * Fog state * diff --git a/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateXML.java b/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateXML.java index 1a8820dddd..8a13645f2d 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateXML.java +++ b/edexOsgi/com.raytheon.uf.common.monitor.cpg/src/com/raytheon/uf/common/monitor/cpg/MonitorStateXML.java @@ -63,6 +63,9 @@ public class MonitorStateXML implements ISerializableObject { @XmlElement(name = "preciprate") private boolean preciprate = false; + @XmlElement(name = "hydrodualpol") + private boolean hydrodualpol = false; + @XmlElement(name = "scan") private boolean scan = false; @@ -112,10 +115,19 @@ public class MonitorStateXML implements ISerializableObject { public void setPrecipRate(boolean preciprate) { this.preciprate = preciprate; } - + public boolean isPrecipRate() { return preciprate; } + + + public void setHydroDualPol(boolean hydrodualpol) { + this.hydrodualpol = hydrodualpol; + } + + public boolean isHydroDualPol() { + return hydrodualpol; + } public void setScan(boolean scan) { this.scan = scan; diff --git a/edexOsgi/com.raytheon.uf.common.monitor/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.monitor/META-INF/MANIFEST.MF index ff5e767fb9..7743c6c07e 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.monitor/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Monitor Plug-in Bundle-SymbolicName: com.raytheon.uf.common.monitor -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.uf.common.monitor, com.raytheon.uf.common.monitor.config, @@ -22,10 +21,8 @@ Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.11.5", com.raytheon.uf.common.geospatial;bundle-version="1.0.0", com.raytheon.uf.common.dataplugin.binlightning;bundle-version="1.0.0", com.raytheon.uf.common.localization;bundle-version="1.11.17", - org.eclipse.swt, com.raytheon.uf.common.sounding;bundle-version="1.12.1112", com.raytheon.uf.common.dataplugin.bufrua;bundle-version="1.12.1112", - com.raytheon.uf.edex.pointdata;bundle-version="1.12.1112", com.raytheon.uf.common.pointdata;bundle-version="1.12.1112", com.raytheon.uf.common.site;bundle-version="1.0.0", javax.measure;bundle-version="1.0.0", @@ -33,9 +30,7 @@ Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.11.5", com.raytheon.uf.common.serialization, org.springframework;bundle-version="2.5.6", com.raytheon.uf.common.status;bundle-version="1.12.1174", - com.raytheon.uf.edex.database, com.raytheon.uf.common.util;bundle-version="1.12.1174" Import-Package: com.raytheon.uf.common.datastorage, - com.raytheon.uf.common.time, - com.raytheon.uf.edex.database.plugin + com.raytheon.uf.common.time diff --git a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/MonitorAreaUtils.java b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/MonitorAreaUtils.java index bd3411a718..c0b203e847 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/MonitorAreaUtils.java +++ b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/MonitorAreaUtils.java @@ -1,133 +1,147 @@ package com.raytheon.uf.common.monitor; -import java.io.IOException; import java.util.ArrayList; +import java.util.List; import com.raytheon.uf.common.geospatial.ISpatialQuery; import com.raytheon.uf.common.geospatial.SpatialException; import com.raytheon.uf.common.geospatial.SpatialQueryFactory; -import com.raytheon.uf.common.monitor.config.MonitorConfigurationManager; +import com.raytheon.uf.common.monitor.config.FSSObsMonitorConfigurationManager; import com.raytheon.uf.common.monitor.scan.ScanUtils; import com.raytheon.uf.common.monitor.xml.StationIdXML; import com.raytheon.uf.common.site.SiteMap; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.status.UFStatus.Priority; +import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Geometry; +import com.vividsolutions.jts.geom.Point; +import com.vividsolutions.jts.io.ParseException; import com.vividsolutions.jts.io.WKBReader; import com.vividsolutions.jts.io.WKTWriter; /** - * TODO Add Description + * Monitor Area Utilities. * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * (previous history missing)
        * Apr 29, 2011 DR#8986   zhao       Read in "counties", not "forecast zones", 
        * Feb 22, 2012 14413     zhao       modified getAdjacentZones to add "C" or "Z"
      + * Apr 30, 2014  3086     skorolev   Replaced MonitorConfigurationManager with FSSObsMonitorConfigurationManager
      + * Oct 17, 2014 2757      skorolev   Corrected SQL in the getAdjacentZones to avoid duplicates.
      + * Nov 03, 2014 3741      skorolev   Updated getZoneCenter and added getStationCenter methods.
      + * Dec 02, 2014 3841      skorolev   Fixed possible duplicates in SQL expression.
        * 
        * 
      - * + * * @author mpduff - * @version 1.0 + * @version 1.0 */ public class MonitorAreaUtils { - - public static final String COUNTY_TABLE = "mapdata.county"; - public static final String FORECAST_ZONE_TABLE = "mapdata.zone"; + private final static IUFStatusHandler statusHandler = UFStatus + .getHandler(MonitorAreaUtils.class); - public static final String MARINE_ZONE_TABLE = "mapdata.marinezones"; + public static final String COUNTY_TABLE = "mapdata.county"; - public static final String MAPS_DB = "maps"; + public static final String FORECAST_ZONE_TABLE = "mapdata.zone"; - public static final String OBS = "obs"; + public static final String MARINE_ZONE_TABLE = "mapdata.marinezones"; - public static final String META_DB = "metadata"; + public static final String MAPS_DB = "maps"; + + public static final String OBS = "obs"; + + public static final String META_DB = "metadata"; /** - * Get a list of counties from database for given cwa - * [DR#8986] - * + * Get a list of counties from database for given cwa [DR#8986] + * * @param cwa * @return */ - public static ArrayList getUniqueCounties(String cwa) { - ArrayList counties = new ArrayList(); - String sql = "select distinct state, fips from " - + MonitorConfigurationManager.COUNTY_TABLE + " where cwa = '" - + cwa + "' order by fips"; + public static List getUniqueCounties(String cwa) { + List counties = new ArrayList(); + String sql = "select distinct state, fips from " + + FSSObsMonitorConfigurationManager.COUNTY_TABLE + + " where cwa = '" + cwa + "' order by fips"; - ISpatialQuery sq = null; + ISpatialQuery sq = null; - try { - sq = SpatialQueryFactory.create(); - Object[] results = sq.dbRequest(sql, "maps"); + try { + sq = SpatialQueryFactory.create(); + Object[] results = sq.dbRequest(sql, "maps"); - if (results.length > 0) { - for (int i = 0; i < results.length; i++) { - Object[] oa = (Object[]) results[i]; - String state = (String) oa[0]; - String fips = (String) oa[1]; + if (results.length > 0) { + for (int i = 0; i < results.length; i++) { + Object[] oa = (Object[]) results[i]; + String state = (String) oa[0]; + String fips = (String) oa[1]; + + counties.add(state + "C" + fips.substring(2)); + } + } + } catch (SpatialException e) { + statusHandler.handle(Priority.ERROR, "Error to get the counties.", + e); + } + return counties; + } - counties.add(state + "C" + fips.substring(2)); - } - } - } catch (Exception e) { - e.printStackTrace(); - } - return counties; - } - /** - * Get a list of forecast zones from database for given cwa - * [DR#9905] - * + * Get a list of forecast zones from database for given cwa [DR#9905] + * * @param cwa * @return */ - public static ArrayList getForecastZones(String cwa) { - ArrayList zones = new ArrayList(); - String sql = "select distinct state, zone from " - + MonitorConfigurationManager.FORECAST_ZONE_TABLE + " where cwa = '" - + cwa + "' order by state, zone"; + public static List getForecastZones(String cwa) { + List zones = new ArrayList(); + String sql = "select distinct state, zone from " + + FSSObsMonitorConfigurationManager.FORECAST_ZONE_TABLE + + " where cwa = '" + cwa + "' order by state, zone"; - ISpatialQuery sq = null; + ISpatialQuery sq = null; - try { - sq = SpatialQueryFactory.create(); - Object[] results = sq.dbRequest(sql, "maps"); + try { + sq = SpatialQueryFactory.create(); + Object[] results = sq.dbRequest(sql, "maps"); - if (results.length > 0) { - for (int i = 0; i < results.length; i++) { - Object[] oa = (Object[]) results[i]; - String state = (String) oa[0]; - String zone = (String) oa[1]; + if (results.length > 0) { + for (int i = 0; i < results.length; i++) { + Object[] oa = (Object[]) results[i]; + String state = (String) oa[0]; + String zone = (String) oa[1]; - zones.add(state + "Z" + zone); - } - } - } catch (Exception e) { - e.printStackTrace(); - } - return zones; - } + zones.add(state + "Z" + zone); + } + } + } catch (SpatialException e) { + statusHandler.handle(Priority.ERROR, + "Error to get forecast zones.", e); + } + return zones; + } - /** + /** * Gets the marine zones in the CWA * * @param cwa * The county warning area * @return */ - public static ArrayList getMarineZones(String cwa) { - ArrayList zones = new ArrayList(); - String sql = "select distinct id from " + MonitorConfigurationManager.MARINE_ZONE_TABLE + " where wfo = '" - + cwa + "' order by id"; + public static List getMarineZones(String cwa) { + List zones = new ArrayList(); + String sql = "select distinct id from " + + FSSObsMonitorConfigurationManager.MARINE_ZONE_TABLE + + " where wfo = '" + cwa + "' order by id"; ISpatialQuery sq = null; - + try { sq = SpatialQueryFactory.create(); Object[] results = sq.dbRequest(sql, MAPS_DB); @@ -139,428 +153,464 @@ public class MonitorAreaUtils { zones.add((String) oa[0]); } } - } - else { + } else { if (results.length > 0) { for (int i = 0; i < results.length; i++) { - zones.add((String) results[i]); + zones.add((String) results[i]); } } } - - } catch (Exception e) { - e.printStackTrace(); - } + + } catch (SpatialException e) { + statusHandler.handle(Priority.ERROR, "Error to get marine zones.", + e); + } return zones; } /** * - * @param zone : zone ID (either a county zone or a maritime zone) - * @return a list of stations (with station ID and station type) associated with the zone - * @throws Exception + * @param zone + * : zone ID (either a county zone or a maritime zone) + * @return a list of stations (with station ID and station type) associated + * with the zone + * @throws ParseException */ - public static ArrayList getZoneReportingStationXMLs( - String zone) throws Exception { - - ArrayList stations = new ArrayList(); + public static List getZoneReportingStationXMLs(String zone) + throws ParseException { - try { - String zoneEnvelope = getZoneEnvelope(zone); + List stations = new ArrayList(); - String sql = "select catalogtype, stationid " + "from common_obs_spatial " + "where " - + "ST_Contains(ST_GeomFromText('" + zoneEnvelope + "', -1), the_geom) " - + "and (catalogtype = 1 or catalogtype = 33 or catalogtype = 32 or catalogtype = 1000) order by stationid asc"; + try { + String zoneEnvelope = getZoneEnvelope(zone); - ISpatialQuery sq = SpatialQueryFactory.create(); - Object[] results = sq.dbRequest(sql, META_DB); - if (results.length != 0) { - StationIdXML stn = null; - if (results[0] instanceof Object[]) { - for (int i = 0; i < results.length; i++) { - Object[] objs = (Object[]) results[i]; - stn = setStation(Integer.parseInt(objs[0].toString()), - objs[1].toString()); - if ( !stations.contains(stn) ) { - stations.add(stn); - } - } - } else { - stn = setStation(Integer.parseInt(results[0].toString()), - results[1].toString()); - if ( !stations.contains(stn) ) { - stations.add(stn); - } - } - } - } catch (Exception e) { - System.err.println("============== zone = " + zone ); - e.printStackTrace(); - throw new Exception("Unable to query for Zone envelope and stations list", e); - } - return stations; - } + String sql = "select catalogtype, stationid " + + "from common_obs_spatial " + + "where " + + "ST_Contains(ST_GeomFromText('" + + zoneEnvelope + + "', -1), the_geom) " + + "and (catalogtype = 1 or catalogtype = 33 or catalogtype = 32 or catalogtype = 1000) order by stationid asc"; + // 1= CAT_TYPE_ICAO, 33=CAT_TYPE_CMAN , + // 32=CAT_TYPE_BUOY_FXD 1000=CAT_TYPE_MESONET see ObStation.java + ISpatialQuery sq = SpatialQueryFactory.create(); + Object[] results = sq.dbRequest(sql, META_DB); + if (results.length != 0) { + StationIdXML stn = null; + if (results[0] instanceof Object[]) { + for (int i = 0; i < results.length; i++) { + Object[] objs = (Object[]) results[i]; + stn = setStation(Integer.parseInt(objs[0].toString()), + objs[1].toString()); + if (!stations.contains(stn)) { + stations.add(stn); + } + } + } else { + stn = setStation(Integer.parseInt(results[0].toString()), + results[1].toString()); + if (!stations.contains(stn)) { + stations.add(stn); + } + } + } + } catch (SpatialException e) { + statusHandler.handle(Priority.ERROR, + "Error retrieving station XMLs for zone " + zone, e); + } + return stations; + } - private static StationIdXML setStation(Integer catalogType, String stationId) { + /** + * Sets station type. + * + * @param catalogType + * @param stationId + * @return + */ + private static StationIdXML setStation(Integer catalogType, String stationId) { - StationIdXML station = new StationIdXML(); - station.setName(stationId); - if (catalogType.intValue() == 1) { - station.setType("METAR"); - } else if (catalogType.intValue() == 33 || catalogType == 32) { - station.setType("MARITIME"); - } else if (catalogType.intValue() == 1000) { + StationIdXML station = new StationIdXML(); + station.setName(stationId); + if (catalogType.intValue() == 1) { + station.setType("METAR"); + } else if (catalogType.intValue() == 33 || catalogType == 32) { + station.setType("MARITIME"); + } else if (catalogType.intValue() == 1000) { station.setType("MESONET"); - } else { - // other types ??? - } + } + return station; + } - return station; - } + /** + * Gets the zone obs list + * + * @param zone + * @return + * @throws ParseException + */ + public static List getZoneReportingStations(String zone) + throws ParseException { + List stations = new ArrayList(); - /** - * gets the zone obs list - * - * @param zone - * @return - * @throws VizException - */ - public static ArrayList getZoneReportingStations(String zone) - throws Exception { - ArrayList stations = new ArrayList(); + try { + String zoneEnvelope = getZoneEnvelope(zone); - try { - String zoneEnvelope = getZoneEnvelope(zone); + String sql = "select icao " + "from common_obs_spatial " + "where " + + "ST_Contains(ST_GeomFromText('" + zoneEnvelope + + "', -1), the_geom) order by icao asc"; - String sql = "select icao " + "from common_obs_spatial " + "where " - + "ST_Contains(ST_GeomFromText('" + zoneEnvelope - + "', -1), the_geom) order by icao asc"; + ISpatialQuery sq = SpatialQueryFactory.create(); + Object[] results = sq.dbRequest(sql, META_DB); - ISpatialQuery sq = SpatialQueryFactory.create(); - Object[] results = sq.dbRequest(sql, META_DB); + if (SpatialQueryFactory.getType().equals("CAVE")) { + if (results.length != 0) { + if (results.length == 1) { + if (results[0] != null) { + if (!results[0].equals("")) { + stations.add((String) results[0]); + } + } + } else { + for (int i = 0; i < results.length; i++) { + Object[] objs = (Object[]) results[i]; + if (objs[0] != null) { + if (!objs[0].equals("")) { + stations.add((String) objs[0]); + } + } + } + } + } + } else { + if (results.length > 0) { + for (int i = 0; i < results.length; i++) { + String obj = (String) results[i]; + if ((obj != null) && !obj.equals("")) { + stations.add(obj); + } + } + } + } - if (SpatialQueryFactory.getType().equals("CAVE")) { - if (results.length != 0) { - if (results.length == 1) { - if (results[0] != null) { - if (!results[0].equals("")) { - stations.add((String) results[0]); - } - } - } else { - for (int i = 0; i < results.length; i++) { - Object[] objs = (Object[]) results[i]; - if (objs[0] != null) { - if (!objs[0].equals("")) { - stations.add((String) objs[0]); - } - } - } - } - } - } else { - if (results.length > 0) { - for (int i = 0; i < results.length; i++) { - String obj = (String) results[i]; - if ((obj != null) && !obj.equals("")) { - stations.add(obj); - } - } - } - } - - } catch (Exception e) { - System.err.println("============== zone = " + zone ); - e.printStackTrace(); - throw new Exception("Unable to query for Zone envelope and stations list", e); - } - return stations; - } + } catch (SpatialException e) { + statusHandler.handle(Priority.ERROR, + "Error retrieving stations for zone " + zone, e); + } + return stations; + } - /** - * Gets the envelope of the zone in the CWA - * - * @param cwa - * @return - */ - private static String getZoneEnvelope(String zone) throws Exception { + /** + * Gets the envelope of the zone in the CWA + * + * @param zone + * @return the text string of the polygon describing the area coverage + * @throws SpatialException + * @throws ParseException + */ + private static String getZoneEnvelope(String zone) throws SpatialException, + ParseException { - WKBReader wkbReader = new WKBReader(); - Geometry geo = null; + WKBReader wkbReader = new WKBReader(); + Geometry geo = null; - String sql = null; - /** - * [DR#9905: Read in data from the "county" table for a CONUS site, - * from "forecast zone" table for an OCONUS site] - */ - if (isMarineZone(zone)) { - sql = "select distinct AsBinary(" - + ScanUtils.getStandardResolutionLevel("marinezones") - + ") from " + MonitorConfigurationManager.MARINE_ZONE_TABLE - + " where id = '" + zone + "'"; - } else if ( zone.charAt(2) == 'Z' ) { // "forecast zone" - /** - * The first two characters in a zone indicate "state", and the last - * three characters zone ID; e.g., AKZ101, where the first two characters - * indicate state "AK" and the last three characters "101" indicate zone ID - */ - String state_zone = zone.substring(0, 2) + zone.substring(3); - sql = "select AsBinary(" - + ScanUtils.getStandardResolutionLevel("zone") - + ") from " + MonitorConfigurationManager.FORECAST_ZONE_TABLE - + " where state_zone = '" + state_zone + "'"; - } else { - /** - * The first two characters in a zone indicate "state", and the last - * three characters are the same as the last three characters of "fips" in - * the county database table; e.g., IAC001, where the first two characters - * indicate state "IA" and the last three characters "001" are the same - * as the last three characters "001" of the "fips = '19001'" - */ - String state = zone.substring(0, 2); - String fipsLike = "%" + zone.substring(3); - sql = "select distinct AsBinary(" - + ScanUtils.getStandardResolutionLevel("county") - + ") from " + MonitorConfigurationManager.COUNTY_TABLE - + " where state = '" + state + "' and fips like '" + fipsLike + "'"; + String sql = null; + /** + * [DR#9905: Read in data from the "county" table for a CONUS site, from + * "forecast zone" table for an OCONUS site] + */ + if (isMarineZone(zone)) { + sql = "select distinct AsBinary(" + + ScanUtils.getStandardResolutionLevel("marinezones") + + ") from " + + FSSObsMonitorConfigurationManager.MARINE_ZONE_TABLE + + " where id = '" + zone + "'"; + } else if (zone.charAt(2) == 'Z') { // "forecast zone" + /** + * The first two characters in a zone indicate "state", and the last + * three characters zone ID; e.g., AKZ101, where the first two + * characters indicate state "AK" and the last three characters + * "101" indicate zone ID + */ + String state_zone = zone.substring(0, 2) + zone.substring(3); + sql = "select AsBinary(" + + ScanUtils.getStandardResolutionLevel("zone") + ") from " + + FSSObsMonitorConfigurationManager.FORECAST_ZONE_TABLE + + " where state_zone = '" + state_zone + "'"; + } else { + /** + * The first two characters in a zone indicate "state", and the last + * three characters are the same as the last three characters of + * "fips" in the county database table; e.g., IAC001, where the + * first two characters indicate state "IA" and the last three + * characters "001" are the same as the last three characters "001" + * of the "fips = '19001'" + */ + String state = zone.substring(0, 2); + String fipsLike = "%" + zone.substring(3); + sql = "select distinct AsBinary(" + + ScanUtils.getStandardResolutionLevel("county") + + ") from " + + FSSObsMonitorConfigurationManager.COUNTY_TABLE + + " where state = '" + state + "' and fips like '" + + fipsLike + "'"; - } + } ISpatialQuery sq = SpatialQueryFactory.create(); Object[] results = sq.dbRequest(sql, MAPS_DB); if (results.length > 0) { - if (results[0] instanceof Object[]) { - Object obj[] = (Object[]) results[0]; - geo = readGeometry(obj[0], wkbReader); - } else { - geo = readGeometry(results[0], wkbReader); + try { + if (results[0] instanceof Object[]) { + Object obj[] = (Object[]) results[0]; + geo = readGeometry(obj[0], wkbReader); + } else { + geo = readGeometry(results[0], wkbReader); + } + } catch (Exception e) { + statusHandler.handle(Priority.PROBLEM, + "Error to read geometry for zone " + zone, e); } } - return getPolygonText(geo); - } + } - /** - * extract geometry - * - * @param obj - * @return - */ - public static Geometry readGeometry(Object obj, WKBReader wkbReader) { - Geometry geometry = null; - try { - geometry = wkbReader.read((byte[]) obj); - } catch (Exception e) { - e.printStackTrace(); - } + /** + * Extracts geometry. + * + * @param obj + * @param wkbReader + * @return + * @throws ParseException + */ + public static Geometry readGeometry(Object obj, WKBReader wkbReader) + throws ParseException { + Geometry geometry = null; + geometry = wkbReader.read((byte[]) obj); + return geometry.buffer(0); + } - return geometry.buffer(0); - } + /** + * Gets the text string of the polygon describing the areal coverage + * + * @param geometry + * @return + */ + public static String getPolygonText(Geometry geometry) { + WKTWriter wktWriter = new WKTWriter(); + return wktWriter.writeFormatted(geometry); + } - /** - * Gets the text string of the polygon describing the areal coverage - * - * @param Geometry - * @return - * @throws IOException - */ - public static String getPolygonText(Geometry geometry) { + /** + * Gets Adjacent Zones. + * + * @param cwaList + * @return + * @throws SpatialException + */ + public static List getAdjacentZones(String[] cwaList) + throws SpatialException { + List zones = new ArrayList(); - WKTWriter wktWriter = new WKTWriter(); - return wktWriter.writeFormatted(geometry); - } - - public static ArrayList getAdjacentZones(String[] cwaList) { - ArrayList zones = new ArrayList(); - - String sqlCounty = "select state, fips from " - + MonitorConfigurationManager.COUNTY_TABLE + " where cwa in (''"; - String sqlForecastZone = "select state, zone from " - + MonitorConfigurationManager.FORECAST_ZONE_TABLE + " where cwa in (''"; - String sqlMaritimeZone = "select id from " - + MonitorConfigurationManager.MARINE_ZONE_TABLE - + " where wfo in (''"; - for (int i = 0; i < cwaList.length; i++) { - if ( SiteMap.getInstance().getSite4LetterId(cwaList[i]).charAt(0) == 'K' ) { // "CONUS site - sqlCounty += ", '" + cwaList[i] + "'"; - } else { // OCONUS site - sqlForecastZone += ", '" + cwaList[i] + "'"; - } - sqlMaritimeZone += ", '" + cwaList[i] + "'"; - } - - sqlCounty += ") order by fips"; - sqlForecastZone += ") order by state, zone"; - sqlMaritimeZone += ") order by id"; - - ISpatialQuery sq = null; - - try { - sq = SpatialQueryFactory.create(); - Object[] resultsCounty = sq.dbRequest(sqlCounty, "maps"); - Object[] resultsForecastZone = sq.dbRequest(sqlForecastZone, "maps"); - Object[] resultsMaritimeZone = sq.dbRequest(sqlMaritimeZone, "maps"); - - if (SpatialQueryFactory.getType().equals("CAVE")) { - if (resultsCounty.length > 0) { - for (int i = 0; i < resultsCounty.length; i++) { - Object[] oa = (Object[]) resultsCounty[i]; - String state = (String) oa[0]; - String fips = (String) oa[1]; - zones.add(state + "C" + fips.substring(2)); - } - } - if (resultsForecastZone.length > 0) { - for (int i = 0; i < resultsForecastZone.length; i++) { - Object[] oa = (Object[]) resultsForecastZone[i]; - String state = (String) oa[0]; - String zone = (String) oa[1]; - zones.add(state + "Z" + zone); - } - } - if (resultsMaritimeZone.length > 0) { - for (int i = 0; i < resultsMaritimeZone.length; i++) { - Object[] oa = (Object[]) resultsMaritimeZone[i]; - zones.add((String) oa[0]); - } - } - } else { - if (resultsCounty.length > 0) { - for (int i = 0; i < resultsCounty.length; i++) { - Object[] oa = (Object[]) resultsCounty[i]; - String czn = oa[0].toString() + "C" + oa[1].toString().substring(2); - zones.add(czn); - } - } - if ( resultsForecastZone.length > 0 ) { - for (int i = 0; i < resultsForecastZone.length; i++) { - Object[] oa = (Object[]) resultsForecastZone[i]; - String fcz = oa[0].toString() + "Z" + oa[1].toString(); - zones.add(fcz); - } - } - if ( resultsMaritimeZone.length > 0 ) { - for (int i = 0; i < resultsMaritimeZone.length; i++) { - String mzn = resultsMaritimeZone[i].toString(); - zones.add(mzn); - } - } - } - - } catch (Exception e) { - e.printStackTrace(); - } - - return zones; - } - - /** - * Gets the geometry of the zone in the CWA - * - * @param cwa - * @return - */ - public static Geometry getZoneGeometry(String zone) throws Exception { - - WKBReader wkbReader = new WKBReader(); - Geometry geo = null; - /** - * DR#9905: "county" for a CONUS site; 'forecast zone" for an OCONUS site - */ - String sql = ""; - ISpatialQuery sq = null; - if (isMarineZone(zone)) { - sql = "select AsBinary(" + ScanUtils.getStandardResolutionLevel("marineZones") + ") from " + MARINE_ZONE_TABLE - + " where id = '" + zone + "'"; - } else if ( zone.charAt(2) == 'Z' ) { // "forecast zone" - String state_zone = zone.substring(0, 2) + zone.substring(3); - sql = "select AsBinary(" + ScanUtils.getStandardResolutionLevel("zone") + ") from " + FORECAST_ZONE_TABLE - + " where state_zone = '" + state_zone + "'"; - } else { // "county" - String state = zone.substring(0, 2); - String fipsLike = "%" + zone.substring(3); - sql = "select AsBinary(" + ScanUtils.getStandardResolutionLevel("county") + ") from " + COUNTY_TABLE - + " where state = '" + state + "' and fips like '" - + fipsLike + "'"; - } - - // List results = DirectDbQuery.executeQuery(sql, MAPS_DB, - // QueryLanguage.SQL); - sq = SpatialQueryFactory.create(); - Object[] results = sq.dbRequest(sql, MAPS_DB); - if (results.length > 0) { - if (results[0] instanceof Object[]) { - Object obj[] = (Object[]) results[0]; - geo = readGeometry(obj[0], wkbReader); - } else { - geo = readGeometry(results[0], wkbReader); + String sqlCounty = "select distinct state, fips from " + + FSSObsMonitorConfigurationManager.COUNTY_TABLE + + " where cwa in (''"; + String sqlForecastZone = "select distinct state, zone from " + + FSSObsMonitorConfigurationManager.FORECAST_ZONE_TABLE + + " where cwa in (''"; + String sqlMaritimeZone = "select distinct id from " + + FSSObsMonitorConfigurationManager.MARINE_ZONE_TABLE + + " where wfo in (''"; + for (int i = 0; i < cwaList.length; i++) { + if (SiteMap.getInstance().getSite4LetterId(cwaList[i]).charAt(0) == 'K') { // "CONUS + // site + sqlCounty += ", '" + cwaList[i] + "'"; + } else { // OCONUS site + sqlForecastZone += ", '" + cwaList[i] + "'"; } - } - - return geo; - } - - /** - * Is a zone a Marine zone or not? - * - * @param zone - * @return true if the zone is a marine zone - * @throws SpatialException - * @throws VizException - */ - public static boolean isMarineZone(String zone) throws SpatialException { - String sql = "select distinct id from " + MARINE_ZONE_TABLE + " where id = '" - + zone + "'"; - ISpatialQuery sq = null; - // List results = DirectDbQuery.executeQuery(sql, MAPS_DB, - // QueryLanguage.SQL); - sq = SpatialQueryFactory.create(); - Object[] results = sq.dbRequest(sql, MAPS_DB); - if ((results.length > 0) && results[0].equals(zone)) { - return true; - } - - return false; - } - - public static double[] getZoneCenter(String zone) throws Exception { - double[] zoneCenter = null; - /** - * DR#9905: "county" for a CONUS site; "forecast zone" for an OCONUS site - */ - String sql = ""; - ISpatialQuery sq = null; - if (isMarineZone(zone)) { // "marine zone" - sql = "select distinct lat, lon from " + MARINE_ZONE_TABLE + " where id = '" - + zone + "'"; - } else if ( zone.charAt(2) == 'Z' ) { // "forecast zone" - String state_zone = zone.substring(0, 2) + zone.substring(3); - sql = "select lat, lon from " + FORECAST_ZONE_TABLE + " where state_zone = '" + state_zone + "'"; - } else { // "county" - String state = zone.substring(0, 2); - String fipsLike = "%" + zone.substring(3); - sql = "select lat, lon from " + COUNTY_TABLE + " where state = '" - + state + "' and fips like '" + fipsLike + "'"; - } - - sq = SpatialQueryFactory.create(); - Object[] results = sq.dbRequest(sql, MAPS_DB); - - Double lat = null; - Double lon = null; - - if (results[0] instanceof Object[]) { - Object[] res = (Object[]) results[0]; - lat = ((Number) res[0]).doubleValue(); - lon = ((Number) res[1]).doubleValue(); - } else { - lat = ((Number) results[0]).doubleValue(); - lon = ((Number) results[1]).doubleValue(); + sqlMaritimeZone += ", '" + cwaList[i] + "'"; } - zoneCenter = new double[] { lon, lat }; - return zoneCenter; - } + sqlCounty += ") order by fips"; + sqlForecastZone += ") order by state, zone"; + sqlMaritimeZone += ") order by id"; + ISpatialQuery sq = null; + + sq = SpatialQueryFactory.create(); + Object[] resultsCounty = sq.dbRequest(sqlCounty, "maps"); + Object[] resultsForecastZone = sq.dbRequest(sqlForecastZone, "maps"); + Object[] resultsMaritimeZone = sq.dbRequest(sqlMaritimeZone, "maps"); + + if (SpatialQueryFactory.getType().equals("CAVE")) { + if (resultsCounty.length > 0) { + for (int i = 0; i < resultsCounty.length; i++) { + Object[] oa = (Object[]) resultsCounty[i]; + String state = (String) oa[0]; + String fips = (String) oa[1]; + zones.add(state + "C" + fips.substring(2)); + } + } + if (resultsForecastZone.length > 0) { + for (int i = 0; i < resultsForecastZone.length; i++) { + Object[] oa = (Object[]) resultsForecastZone[i]; + String state = (String) oa[0]; + String zone = (String) oa[1]; + zones.add(state + "Z" + zone); + } + } + if (resultsMaritimeZone.length > 0) { + for (int i = 0; i < resultsMaritimeZone.length; i++) { + Object[] oa = (Object[]) resultsMaritimeZone[i]; + zones.add((String) oa[0]); + } + } + } else { + if (resultsCounty.length > 0) { + for (int i = 0; i < resultsCounty.length; i++) { + Object[] oa = (Object[]) resultsCounty[i]; + String czn = oa[0].toString() + "C" + + oa[1].toString().substring(2); + zones.add(czn); + } + } + if (resultsForecastZone.length > 0) { + for (int i = 0; i < resultsForecastZone.length; i++) { + Object[] oa = (Object[]) resultsForecastZone[i]; + String fcz = oa[0].toString() + "Z" + oa[1].toString(); + zones.add(fcz); + } + } + if (resultsMaritimeZone.length > 0) { + for (int i = 0; i < resultsMaritimeZone.length; i++) { + String mzn = resultsMaritimeZone[i].toString(); + zones.add(mzn); + } + } + } + return zones; + } + + /** + * Gets the geometry of the zone in the CWA + * + * @param zone + * @return + * @throws SpatialException + */ + public static Geometry getZoneGeometry(String zone) throws SpatialException { + + WKBReader wkbReader = new WKBReader(); + Geometry geo = null; + /** + * DR#9905: "county" for a CONUS site; 'forecast zone" for an OCONUS + * site + */ + String sql = ""; + ISpatialQuery sq = null; + if (isMarineZone(zone)) { + sql = "select AsBinary(" + + ScanUtils.getStandardResolutionLevel("marinezones") + + ") from " + MARINE_ZONE_TABLE + " where id = '" + zone + + "'"; + } else if (zone.charAt(2) == 'Z') { // "forecast zone" + String state_zone = zone.substring(0, 2) + zone.substring(3); + sql = "select AsBinary(" + + ScanUtils.getStandardResolutionLevel("zone") + ") from " + + FORECAST_ZONE_TABLE + " where state_zone = '" + + state_zone + "'"; + } else { // "county" + String state = zone.substring(0, 2); + String fipsLike = "%" + zone.substring(3); + sql = "select AsBinary(" + + ScanUtils.getStandardResolutionLevel("county") + + ") from " + COUNTY_TABLE + " where state = '" + state + + "' and fips like '" + fipsLike + "'"; + } + + sq = SpatialQueryFactory.create(); + Object[] results = sq.dbRequest(sql, MAPS_DB); + if (results.length > 0) { + try { + if (results[0] instanceof Object[]) { + Object obj[] = (Object[]) results[0]; + geo = readGeometry(obj[0], wkbReader); + } else { + geo = readGeometry(results[0], wkbReader); + } + } catch (ParseException e) { + statusHandler.handle(Priority.PROBLEM, + "Error to read geometry for zone " + zone, e); + } + } + return geo; + } + + /** + * Is a zone a Marine zone or not? + * + * @param zone + * @return + * @throws SpatialException + */ + public static boolean isMarineZone(String zone) throws SpatialException { + String sql = "select distinct id from " + MARINE_ZONE_TABLE + + " where id = '" + zone + "'"; + ISpatialQuery sq = null; + sq = SpatialQueryFactory.create(); + Object[] results = sq.dbRequest(sql, MAPS_DB); + if ((results.length > 0) && results[0].equals(zone)) { + return true; + } + return false; + } + + /** + * Gets Zone Center. + * + * @param zone + * @return + * @throws SpatialException + */ + public static Coordinate getZoneCenter(String zone) throws SpatialException { + Coordinate zoneCenter = null; + Geometry geom = getZoneGeometry(zone); + if (geom != null) { + Point ctrd = geom.getCentroid(); + if (ctrd != null) { + zoneCenter = ctrd.getCoordinate(); + } else { + statusHandler.handle(Priority.PROBLEM, + "Problem to get the coordinates for zone " + zone); + } + } + return zoneCenter; + } + + /** + * Get station coordinates. + * + * @param stationid + * @return + * @throws SpatialException + * @throws ParseException + */ + public static Coordinate getStationCenter(String stationid) + throws SpatialException, ParseException { + Coordinate stnCenter = null; + ISpatialQuery sq = null; + String sql = "select AsBinary(the_geom) from common_obs_spatial where stationid = '" + + stationid + + "'" + + "and (catalogtype = 1 or catalogtype = 33 or catalogtype = 32 or catalogtype = 1000)"; + sq = SpatialQueryFactory.create(); + Object results[] = sq.dbRequest(sql, "metadata"); + if (results.length > 0) { + WKBReader wkbReader = new WKBReader(); + Geometry stationGeo = wkbReader.read((byte[]) results[0]); + stnCenter = stationGeo.getCoordinate(); + } + return stnCenter; + } } diff --git a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/data/AdjacentWfoMgr.java b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/data/AdjacentWfoMgr.java index 3efea1f02a..a4bbed0290 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/data/AdjacentWfoMgr.java +++ b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/data/AdjacentWfoMgr.java @@ -31,13 +31,16 @@ import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.monitor.MonitorAreaUtils; import com.raytheon.uf.common.monitor.scan.ScanUtils; +import com.raytheon.uf.common.serialization.SerializationException; import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; import com.raytheon.uf.common.site.xml.AdjacentWfoXML; import com.raytheon.uf.common.site.xml.CwaXML; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.StringUtil; import com.vividsolutions.jts.geom.Geometry; +import com.vividsolutions.jts.io.ParseException; import com.vividsolutions.jts.io.WKBReader; /** @@ -51,6 +54,8 @@ import com.vividsolutions.jts.io.WKBReader; * Dec 22, 2009 mpduff Initial creation * Jul 24, 2013 2219 mpduff Improve error handling. * Oct 02, 2013 2361 njensen Use JAXBManager for XML + * May 23, 2014 3086 skorolev Cleaned code. + * Nov 11, 2014 3741 skorolev Corrected Exceptions. * * * @@ -69,14 +74,17 @@ public class AdjacentWfoMgr { private static final SingleTypeJAXBManager jaxb = SingleTypeJAXBManager .createWithoutException(AdjacentWfoXML.class); - /** Configuration XML. */ + /** Configuration Adjacent WFO XML. */ private AdjacentWfoXML adjXML = null; - private ArrayList adjZones = null; + /** Adjacent zones */ + private List adjZones = null; + /** Current site */ private final String currentSite; - private ArrayList idList = null; + /** List of adjacent areas */ + private List idList = null; /** Adjacent area geometry */ private Geometry geoAdjAreas = null; @@ -98,20 +106,14 @@ public class AdjacentWfoMgr { * Read the XML adjacent data for the current XML file name. */ private void readAdjXml() { - + adjXML = null; + IPathManager pm = PathManagerFactory.getPathManager(); + String path = pm.getFile( + pm.getContext(LocalizationType.COMMON_STATIC, + LocalizationLevel.BASE), fileName).getAbsolutePath(); + statusHandler.debug("**** path = " + path); try { - adjXML = null; - IPathManager pm = PathManagerFactory.getPathManager(); - - String path = pm.getFile( - pm.getContext(LocalizationType.COMMON_STATIC, - LocalizationLevel.BASE), fileName) - .getAbsolutePath(); - - statusHandler.debug("**** path = " + path); - adjXML = jaxb.unmarshalFromXmlFile(path); - ArrayList list = adjXML.getAreaIds(); for (CwaXML cx : list) { if (cx.getId().equals(currentSite)) { @@ -122,12 +124,18 @@ public class AdjacentWfoMgr { .toArray(new String[idList.size()])); } } - } catch (Exception e) { - statusHandler.error("Error setting up adjacent WFO data", e); + } catch (SerializationException e) { + statusHandler.handle(Priority.PROBLEM, + "Unable to serialize adjacent XML", e); + } catch (SpatialException e) { + statusHandler.handle(Priority.PROBLEM, + "Error to read adjacent XML", e); } } /** + * Gets Adjacent Wfo XML. + * * @return the adjXML */ public AdjacentWfoXML getAdjXML() { @@ -135,6 +143,8 @@ public class AdjacentWfoMgr { } /** + * Sets Adjacent Wfo XML. + * * @param adjXML * the adjXML to set */ @@ -143,6 +153,8 @@ public class AdjacentWfoMgr { } /** + * Gets Adjacent Zones. + * * @return the adjZones */ public ArrayList getAdjZones() { @@ -156,9 +168,11 @@ public class AdjacentWfoMgr { } /** + * Gets list of adjacent areas. + * * @return List of adjacent areas */ - public ArrayList getAdjIdList() { + public List getAdjIdList() { return idList; } @@ -198,7 +212,7 @@ public class AdjacentWfoMgr { for (String site : areaList) { sb.append(StringUtil.NEWLINE).append(site); } - UFStatus.getHandler(AdjacentWfoMgr.class).warn(sb.toString()); + statusHandler.handle(Priority.WARN, sb.toString()); } return adjAreaGeometry; @@ -243,8 +257,10 @@ public class AdjacentWfoMgr { } catch (SpatialException e) { UFStatus.getHandler(AdjacentWfoMgr.class).error( "Error getting CWA Geometry", e); + } catch (ParseException e) { + statusHandler.handle(Priority.PROBLEM, + "Failed to parse the geometry.", e); } - return geo; } diff --git a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/scan/ScanUtils.java b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/scan/ScanUtils.java index a99224937c..9c98131123 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/scan/ScanUtils.java +++ b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/scan/ScanUtils.java @@ -38,14 +38,12 @@ import org.opengis.referencing.crs.ProjectedCRS; import org.opengis.referencing.datum.PixelInCell; import org.opengis.referencing.operation.TransformException; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.binlightning.BinLightningRecord; import com.raytheon.uf.common.dataplugin.binlightning.impl.LtgStrikeType; import com.raytheon.uf.common.dataplugin.bufrua.UAObs; import com.raytheon.uf.common.dataplugin.bufrua.UAObsAdapter; import com.raytheon.uf.common.dataplugin.radar.RadarRecord; import com.raytheon.uf.common.dataplugin.radar.util.RadarConstants.DHRValues; -import com.raytheon.uf.common.datastorage.IDataStore; import com.raytheon.uf.common.geospatial.CRSCache; import com.raytheon.uf.common.geospatial.ISpatialQuery; import com.raytheon.uf.common.geospatial.MapUtil; @@ -56,8 +54,6 @@ import com.raytheon.uf.common.sounding.VerticalSounding; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; -import com.raytheon.uf.edex.database.plugin.PluginDao; -import com.raytheon.uf.edex.database.plugin.PluginFactory; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryFactory; @@ -77,6 +73,11 @@ import com.vividsolutions.jts.io.WKTWriter; * ------------ ---------- ----------- -------------------------- * 02/11/2009 1981 dhladky Initial Creation. * 09/03/2013 DR 13083 gzhang Added getZRvalue2() to fix an error. + * 12/20/2013 DR 16894 gzhang Fixed getZRvalue2() bias issue. + * 05/12/2014 3133 njensen Extracted getLightningRecord + * 05/13/2014 3133 njensen Moved convertStrankValue here from ScanConfig + * Jun 05, 2014 3226 bclement BinLightning refactor + * compare lightning strike type by id instead of ordinal * * * @author dhladky @@ -305,29 +306,6 @@ public class ScanUtils { private static String prevTable = ""; - /** - * Populate the Lightning record - * - * @param uri - * @return - */ - public static BinLightningRecord getLightningRecord(String uri) - throws PluginException { - BinLightningRecord lightRec = null; - try { - lightRec = new BinLightningRecord(uri); - PluginDao ld = (PluginDao) PluginFactory.getInstance() - .getPluginDao(lightRec.getPluginName()); - lightRec = (BinLightningRecord) ld.getMetadata(uri); - IDataStore dataStore = ld.getDataStore(lightRec); - lightRec.retrieveFromDataStore(dataStore); - } catch (Exception e) { - e.printStackTrace(); - } - - return lightRec; - } - /** * Populate the sounding record for the listener strategy * @@ -1316,7 +1294,7 @@ public class ScanUtils { (double) rec.getLatitudes()[i], (double) rec.getLongitudes()[i], rec.getIntensities()[i], rec.getStrikeTypes()[i], - rec.getMsgTypes()[i], rec.getStrikeCounts()[i]); + rec.getMsgTypes()[i], rec.getPulseCounts()[i]); strikeList.add(strike); } @@ -1335,7 +1313,7 @@ public class ScanUtils { if (ls.getIntensity() > 0) { totalPosStrikes++; } - if (ls.getStrikeType() == LtgStrikeType.STRIKE_CG.ordinal()) { + if (ls.getStrikeType() == LtgStrikeType.CLOUD_TO_GROUND.getId()) { totalCGStrikes++; } totalStrikes++; @@ -1349,7 +1327,7 @@ public class ScanUtils { // only need int precision if (totalCGStrikes > 0) { - lr.setCgRate((int) ((double) totalCGStrikes / ((double) (stop_time - start_time) / (1000.0 * 60.0)))); + lr.setCgRate((int) (totalCGStrikes / ((stop_time - start_time) / (1000.0 * 60.0)))); } else { lr.setCgRate(0); } @@ -1927,34 +1905,59 @@ public class ScanUtils { return returns; } - + /** - * DR 13083: the first parameter zValue will use a radar bin's raw data - * since old version handles value 66 wrong in getDecodedDHRValue(int). - * - * Usage: to be called in FFMPProcessor.processRADAR(ArrayList): - - 1). comment out fval line; - 2). call ScanUtils.getZRvalue2; - 3). use dataVals[j] as the first parameter in the step 2 above. + * DR 13083: the first parameter zValue will use a radar bin's raw data + * since old version handles value 66 wrong in getDecodedDHRValue(int). + * + * Usage: to be called in + * FFMPProcessor.processRADAR(ArrayList): + * + * 1). comment out fval line; 2). call ScanUtils.getZRvalue2; 3). use + * dataVals[j] as the first parameter in the step 2 above. */ public static float getZRvalue2(double zValue, double coefficent, double hailCap, double power, double bias) { // The Fulton et al 1998 standard NWS Z-R relationship double rValue = 0.0f; if (zValue >= 2) { - zValue = MIN_DHR_DBZ + ((zValue - 2) * DHR_DBZ_STEP); + zValue = MIN_DHR_DBZ + ((zValue - 2) * DHR_DBZ_STEP); double rlogMult = Math.log10(coefficent); - rValue = bias*(Math.pow(10.0, ((zValue-10.0*rlogMult)/(10.0*power)))); + rValue = /* bias* */(Math.pow(10.0, + ((zValue - 10.0 * rlogMult) / (10.0 * power)))); // hail cap check if (rValue > hailCap) { - return (float) (MM_TO_INCH * hailCap); + rValue = /* return (float) */(/* MM_TO_INCH * */hailCap); } } else { - return (float) rValue; + rValue = /* return */(float) rValue; } - return (float) (MM_TO_INCH * rValue); + return (float) (bias * MM_TO_INCH * rValue); } + + /** + * Convert strength rank from string to double + * + * @param stRank + * @return + */ + public static double convertStrankValue(String stRank) { + double tmpValue = Double.NaN; + + if (stRank.matches("[0-9.]+") == true) { + tmpValue = Double.valueOf(stRank); + } else if (stRank.endsWith("L") || stRank.endsWith("M")) { + try { + tmpValue = Double.valueOf(stRank.substring(0, + stRank.length() - 1)); + } catch (Exception ex) { + tmpValue = -999.0; + } + } + + return tmpValue; + } + } diff --git a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/xml/MonAreaConfigXML.java b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/xml/MonAreaConfigXML.java index ad6685d93a..4826595670 100755 --- a/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/xml/MonAreaConfigXML.java +++ b/edexOsgi/com.raytheon.uf.common.monitor/src/com/raytheon/uf/common/monitor/xml/MonAreaConfigXML.java @@ -36,6 +36,7 @@ import javax.xml.bind.annotation.XmlRootElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Dec 21, 2009 lvenable Initial creation + * May 15, 2014 3086 skorolev Changed type for timeWindow element. * * * @@ -49,12 +50,21 @@ public class MonAreaConfigXML { @XmlElements({ @XmlElement(name = "AreaID", type = AreaIdXML.class) }) private ArrayList areaIds = new ArrayList(); - @XmlElements({ @XmlElement(name = "timeWindow", type = Integer.class) }) - private int timeWindow; + /** + * Time period in minutes during which stations are monitoring. + */ + @XmlElements({ @XmlElement(name = "timeWindow", type = Double.class) }) + private double timeWindow; + /** + * The shortest distance between center of site and a ship. + */ @XmlElements({ @XmlElement(name = "shipDistance", type = Integer.class) }) private int shipDistance; + /** + * Flag to use the Fog Monitor overall threat level. + */ @XmlElements({ @XmlElement(name = "useAlgorithms", type = Boolean.class) }) private boolean useAlgorithms; @@ -72,16 +82,16 @@ public class MonAreaConfigXML { /** * @return the timeWindow */ - public int getTimeWindow() { + public double getTimeWindow() { return timeWindow; } /** - * @param timeWindow + * @param hours * the timeWindow to set */ - public void setTimeWindow(int timeWindow) { - this.timeWindow = timeWindow; + public void setTimeWindow(double hours) { + this.timeWindow = hours; } /** @@ -114,6 +124,9 @@ public class MonAreaConfigXML { this.useAlgorithms = useAlgorithms; } + /** + * @param areaXml + */ public void addAreaId(AreaIdXML areaXml) { areaIds.add(areaXml); } diff --git a/edexOsgi/com.raytheon.uf.common.monitor/utility/common_static/base/monitoring/MonitorPluginState.xml b/edexOsgi/com.raytheon.uf.common.monitor/utility/common_static/base/monitoring/MonitorPluginState.xml index 47cf2ecdb8..b84f852f46 100644 --- a/edexOsgi/com.raytheon.uf.common.monitor/utility/common_static/base/monitoring/MonitorPluginState.xml +++ b/edexOsgi/com.raytheon.uf.common.monitor/utility/common_static/base/monitoring/MonitorPluginState.xml @@ -27,4 +27,5 @@ true true true - \ No newline at end of file + true + diff --git a/edexOsgi/com.raytheon.uf.common.mpe/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.mpe/META-INF/MANIFEST.MF index aeaa1f2ea8..c181cf4ba4 100644 --- a/edexOsgi/com.raytheon.uf.common.mpe/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.mpe/META-INF/MANIFEST.MF @@ -2,14 +2,16 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Mpe Plug-in Bundle-SymbolicName: com.raytheon.uf.common.mpe -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Require-Bundle: com.raytheon.edex.common, - org.geotools, +Require-Bundle: org.geotools, org.apache.commons.lang, javax.persistence;bundle-version="1.0.0", - javax.measure;bundle-version="1.0.0" + javax.measure;bundle-version="1.0.0", + com.raytheon.uf.common.serialization.comm, + com.raytheon.uf.common.serialization Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.uf.common.mpe.constants, + com.raytheon.uf.common.mpe.fieldgen, com.raytheon.uf.common.mpe.util diff --git a/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/DPAFile.java b/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/DPAFile.java index 375ace7294..2e1b8ba80d 100644 --- a/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/DPAFile.java +++ b/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/DPAFile.java @@ -110,10 +110,10 @@ public class DPAFile { fis.close(); } catch (FileNotFoundException e) { - System.out.println("DPA file not found " + e); + System.out.println("Radar file not found " + e); // throw e; } catch (IOException e) { - System.out.println("IO Error on DPA file " + e); + System.out.println("IO Error attempting to read radar file " + e); // throw e; } } @@ -171,7 +171,7 @@ public class DPAFile { * @return */ public double[][] getStage1i() { - System.out.println("Getting Stage1i Data..."); + System.out.println("Getting Radar Data..."); return stage1i; } @@ -181,7 +181,7 @@ public class DPAFile { * @return */ public double[][] getStage1u() { - System.out.println("Getting Stage1u Data..."); + System.out.println("Getting Radar Data multiplied by MFB..."); return stage1u; } @@ -204,4 +204,4 @@ public class DPAFile { System.out.println("Bias Value set to " + biasValue); this.biasValue = biasValue; } -} \ No newline at end of file +} diff --git a/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/XmrgFile.java b/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/XmrgFile.java index b9edf194e0..b2164d436b 100644 --- a/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/XmrgFile.java +++ b/edexOsgi/com.raytheon.uf.common.mpe/src/com/raytheon/uf/common/mpe/util/XmrgFile.java @@ -20,9 +20,6 @@ package com.raytheon.uf.common.mpe.util; import java.awt.Rectangle; -import java.awt.image.BufferedImage; -import java.awt.image.DataBufferUShort; -import java.awt.image.Raster; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; @@ -37,8 +34,6 @@ import java.util.Arrays; import java.util.Date; import java.util.TimeZone; -import javax.imageio.ImageIO; -import javax.media.jai.RasterFactory; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; @@ -51,6 +46,8 @@ import javax.xml.bind.annotation.XmlElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Sep 30, 2008 randerso Initial creation + * May 20, 2014 2913 bsteffen Remove main + * * * * @author randerso @@ -447,52 +444,6 @@ public class XmrgFile { } } - public static void main(String[] args) { - try { - XmrgFile xFile = new XmrgFile( - // "/home/randerso/oaxData/precip_proc/local/data/mpe/rmosaic/RMOSAIC2008092213z"); - "/home/randerso/oaxData/precip_proc/local/data/app/mpe/prism/prism_mean_precip_oax_sep"); - // "/home/randerso/MPE/RMOSAIC2008102315z"); - xFile.load(); - Rectangle extent = xFile.getHrapExtent(); - - XmrgHeader header = xFile.getHeader(); - - short[] data = xFile.getData(); - - System.out.println(extent); - System.out.println(header); - - DataBufferUShort dataBuffer = new DataBufferUShort(data, - data.length); - - int[] bandMasks = new int[] { 0xf800, 0x07e0, 0x001f }; - Raster raster = RasterFactory.createPackedRaster(dataBuffer, - extent.width, extent.height, extent.width, bandMasks, null); - - BufferedImage bi = new BufferedImage(extent.width, extent.height, - BufferedImage.TYPE_USHORT_565_RGB); - bi.setData(raster); - ImageIO.write(bi, "png", new File("/tmp/xxx.png")); - - xFile.save("/tmp/xmrg.dat"); - - Rectangle rect = new Rectangle( - // - // extent.x, extent.y, 7, 7); - extent.x + extent.width - 7, extent.y + extent.height - 7, - 7, 7); - short[][] subData = xFile.getData(rect); - for (int i = 0; i < rect.height; i++) { - System.out.println(Arrays.toString(subData[i])); - } - - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - /** * @return the file */ diff --git a/edexOsgi/com.raytheon.uf.common.nc4/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.nc4/META-INF/MANIFEST.MF index 8e1c53b539..f7624137d6 100644 --- a/edexOsgi/com.raytheon.uf.common.nc4/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.nc4/META-INF/MANIFEST.MF @@ -7,6 +7,6 @@ Bundle-Vendor: RAYTHEON Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Export-Package: com.raytheon.uf.common.nc4, com.raytheon.uf.common.nc4.cf -Require-Bundle: ll.netcdf;bundle-version="1.0.0", +Require-Bundle: edu.mit.ll.netcdf;bundle-version="1.3.0", org.apache.commons.lang;bundle-version="2.3.0", com.raytheon.uf.common.status;bundle-version="1.12.1174" diff --git a/edexOsgi/com.raytheon.uf.common.ohd/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.ohd/META-INF/MANIFEST.MF index bff02b87b1..6f89eba875 100644 --- a/edexOsgi/com.raytheon.uf.common.ohd/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.ohd/META-INF/MANIFEST.MF @@ -6,8 +6,7 @@ Bundle-Version: 1.12.1174.qualifier Bundle-Vendor: RAYTHEON Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Require-Bundle: com.raytheon.uf.common.localization, - javax.persistence, - com.raytheon.viz.core;bundle-version="1.10.13";resolution:=optional + javax.persistence Export-Package: com.raytheon.uf.common.ohd Import-Package: com.raytheon.uf.common.localization, com.raytheon.uf.common.util, diff --git a/edexOsgi/com.raytheon.uf.common.ohd/src/com/raytheon/uf/common/ohd/AppsDefaults.java b/edexOsgi/com.raytheon.uf.common.ohd/src/com/raytheon/uf/common/ohd/AppsDefaults.java index c9f7e9ab70..ebe857a8cf 100644 --- a/edexOsgi/com.raytheon.uf.common.ohd/src/com/raytheon/uf/common/ohd/AppsDefaults.java +++ b/edexOsgi/com.raytheon.uf.common.ohd/src/com/raytheon/uf/common/ohd/AppsDefaults.java @@ -66,6 +66,8 @@ import com.raytheon.uf.common.util.FileUtil; * Sep 22, 2008 randerso Initial creation * Apr 1, 2009 jelkins added getTokens * Oct 19, 2012 bgonzale App Context variable setup and token access. + * Sep 22, 2014 3356 njensen Fix constructor usage in viz finding VizApp class + * * * * @author randerso @@ -95,6 +97,8 @@ public class AppsDefaults { private static AppsDefaults instance; + private static Class dataDirClass; + private final Properties _envProperties; private LocalizationFile _appsDefaultsUserFile; @@ -130,11 +134,16 @@ public class AppsDefaults { _envProperties = new Properties(); _envProperties.putAll(System.getenv()); + /* + * TODO this is nearly unmaintainable, figure out a better way to do it + * that works in both CAVE and EDEX, perhaps through a combination of a + * properties file and Spring. It's not even clear if apps_dir should be + * coming from the data dir in CAVE or somewhere else, and it's not + * clear how much it's used in CAVE. + */ if (_envProperties.get("EDEX_HOME") == null) { try { - Class vizapp = Class - .forName("com.raytheon.uf.viz.core.VizApp"); - Method getDataDir = vizapp.getMethod("getDataDir"); + Method getDataDir = dataDirClass.getMethod("getDataDir"); String shareDir = (String) getDataDir.invoke(null); _envProperties.put("apps_dir", FileUtil.join(shareDir, "hydroapps")); @@ -990,4 +999,15 @@ public class AppsDefaults { } } + /** + * Sets the class used to determine the data dir, if necessary. See + * AppsDefaults's private constructor. At present only intended for use by + * CAVE since edex receives a corresponding environment variable. + * + * @param dataDirClass + */ + public static void setDataDirClass(Class dataDirClass) { + AppsDefaults.dataDirClass = dataDirClass; + } + } // end class AppsDefaults diff --git a/edexOsgi/com.raytheon.uf.common.ohd/utility/common_static/base/hydro/Apps_defaults b/edexOsgi/com.raytheon.uf.common.ohd/utility/common_static/base/hydro/Apps_defaults index d26831c84d..6b806b60c1 100644 --- a/edexOsgi/com.raytheon.uf.common.ohd/utility/common_static/base/hydro/Apps_defaults +++ b/edexOsgi/com.raytheon.uf.common.ohd/utility/common_static/base/hydro/Apps_defaults @@ -125,8 +125,10 @@ # #10/01/09 - Added 5 tokens for arcnav application. //only for arcnav for raxum application #10/03/12 - Added token section for script execution +#02/12/2014 - Added token for default display to replace field in rwprefs table #02/18/14 - Added section for run_report_alarm service configuration. - +#04/10/14 - Added token for DuaPol radar productts processed in MPE, HPE/HPN +#05/05/2014 - #3026 added hpe_grib_input_dir token # ============================================================================== # To see syntax rules for this file, see the bottom of this file @@ -180,42 +182,6 @@ MpeRUCFreezingLevel : ON MpeLightningSrv : ON #==================================================================================== -#===================== run_report_alarm Configuration =============================== -# These settings modify behavior of the EDEX RunReportAlarmSrv service, which -# replaced the original run_report_alarm script ported from A1 hydro. -# -## Mandatory Arguments: -## alarm_product_id : The product id that will be used to write the alarm -## report product into the textdb. -## -## Optional Arguments: -## alarm_file_suffix : A Java date/time format string that will be used as -## the alarm report's file extension when the product is -## written to disk. Product file path is -## ${whfs_product_dir}/PRODUCT_ID.FILE_SUFFIX. -## -## alarm_report_mode : Report mode. Valid values are one of the following: -## ALL, FRESH, RECENT, UNREPORTED, NEAREST, NEAR_NOW, -## LATEST_MAXFCST, or NEW_OR_INCREASED. -## -## alarm_filter : Additional filtering options for the product. -## Valid values can one or many of the following: -## 'O', 'F', 'T', 'M', 'R', 'L', 'U', 'D'. -## -## alarm_pe_filter : Physical element filter. -## -## alarm_minutes : For certain report modes, creates a window going back -## or forward the specified number of minutes. -## Valid values are 1 - 999999. -## -## alarm_verbose : Whether or not to create a "verbose mode" report. -## Valid values are TRUE or FALSE. -## - -alarm_product_id : CCCACRXXX -alarm_file_suffix : MMdd.HHmm -alarm_report_mode : NEAREST - # ============================================================================== # Executable directory tokens. @@ -241,7 +207,7 @@ server_name : ONLINE # Informix database server name db_name : hd_ob92lwx # IHFS database name damcat_db_name : dc_ob5xxx # Dam Catalog database name hdb_db_name : ob81_histdata # Historical database. -pghost : dx1f # The machine PostGres is running on +pghost : localhost # The machine PostGres is running on pguser : awips # The user allowed to access PostGres pgport : 5432 # The PostGres Server port adb_name : adb_ob7xxx # RFC archive database name @@ -1009,7 +975,7 @@ mpe_del_gage_zeros : OFF # ON/OFF flog to determine if a zero gage mpe_selected_grid_gagediff : MMOSAIC mpe_qpe_fieldtype : MMOSAIC # field type to be saved as qpe -mpe_generate_list : BMOSAIC,GAGEONLY,LMOSAIC,LSATPRE,MLMOSAIC,MMOSAIC,RMOSAIC,SATPRE,P3LMOSAIC,SRMOSAIC,SGMOSAIC,QMOSAIC,LQMOSAIC,MLQMOSAIC,RFCBMOSAIC,RFCMMOSAIC,RFCMOSAIC,SAVELEVEL2 +mpe_generate_list : BMOSAIC,GAGEONLY,LMOSAIC,LSATPRE,MLMOSAIC,MMOSAIC,RMOSAIC,SATPRE,SRMOSAIC,SGMOSAIC,QMOSAIC,LQMOSAIC,MLQMOSAIC,RDMOSAIC,BDMOSAIC,LDMOSAIC,MDMOSAIC,MLDMOSAIC,AVGRDMOSAIC,MAXRDMOSAIC,SRDMOSAIC,SRDGMOSAIC mpe_base_radar_mosaic : RMOSAIC # The base radar mosaic used for the fields # that mpe_fieldgen generates mpe_show_missing_gage : None # MPE missing gage display. @@ -1121,6 +1087,7 @@ dhr_dirname1 : $(data_archive_root)/radar # first part of directo dhr_dirname2 : DHR/layer0/res1/level256 # second part of directory name # containing DHR products for # associated or dial in radar + dhr_grid_dir : $(pproc_local_data)/dhr_decoded # decoded DHR radar grids dhr_error_dir : $(pproc_local_data)/dhr_error # DHR error files @@ -1147,6 +1114,7 @@ dsp_error_dir : $(pproc_local_data)/dsp_error # DSP error files dsp_arch_dir : $(pproc_local_data)/dsp_archive # DSP archives +hpe_grib_input_dir : $(EDEX_HOME)/data/local/hpegrib hpe_generate_list : DHRMOSAIC,BDHRMOSAIC,ERMOSAIC,LSATPRE,EBMOSAIC hpe_qpe_fieldtype : ERMOSAIC # field type to be saved as qpe @@ -1879,12 +1847,56 @@ dhm_d2d_data_dir : /data/fxa/Grid/LOCAL/netCDF/DHM # d2d data dir dhm_d2d_notify_bin_dir : /awips/fxa/bin # d2d notify bin dir rdhm_input_dir : $(geo_data) dhm_rain_plus_melt_data_dir: $(geo_data) + +# ===========================DualPol Radar processing Token ======================== +# New Tokens for DPR/DSA product processing +hpe_dualpol_on : yes +dpr_grid_dir : $(pproc_local_data)/dpr_decoded +dsa_grid_dir : $(pproc_local_data)/dsa_decoded + +# New tokens for DAA product processing +daa_grid_dir : $(pproc_local_data)/daa_decoded + +daa_archive : OFF # ON/OFF flag for archiving daa products +daa_arch_dir : $(pproc_local_data)/daa_archive +daa_archive_window : 7 # number of minutes around top of hour + # for filtering products for archiving + +daa_wind : 5 +daa_decode_window : 5 +daa_filter_decode : ON # whether time window filtering is on or off + +daa_min_coverage_dur : 60 + +mpe_rdmosaic_dir : $(mpe_fieldgen_product_dir)/rdmosaic +mpe_bdmosaic_dir : $(mpe_fieldgen_product_dir)/bdmosaic +mpe_ldmosaic_dir : $(mpe_fieldgen_product_dir)/ldmosaic + +mpe_mdmosaic_dir : $(mpe_fieldgen_product_dir)/mdmosaic +mpe_mldmosaic_dir : $(mpe_fieldgen_product_dir)/mldmosaic + +mpe_avgrdmosaic_dir : $(mpe_fieldgen_product_dir)/avgrdmosaic +mpe_maxrdmosaic_dir : $(mpe_fieldgen_product_dir)/maxrdmosaic + +mpe_srdmosaic_dir : $(mpe_fieldgen_product_dir)/srdmosaic +mpe_srdgmosaic_dir : $(mpe_fieldgen_product_dir)/srdgmosaic + +mpe_statevardp_dir : $(mpe_fieldgen_product_dir)/state_var_dp + +mpe_locbiasdp_dir : $(rfcwide_output_dir)/locbiasdp +mpe_locspandp_dir : $(rfcwide_output_dir)/locspandp + +# Post Analysis tokens + +mpe_post_analysis : OFF + +mpe_post_output : $(mpe_fieldgen_product_dir)/post_analysis + +# Modify mpe_generate_list token for DAA processing +# add ,RDMOSAIC,BDMOSAIC,LDMOSAIC,MDMOSAIC,MLDMOSAIC,AVGRDMOSAIC,MAXRDMOSAIC,SRDMOSAIC,SRDGMOSAIC to existing mpe_generate_list token + # ================== end of SSHP Directory Structure tokens ======================== -# nrldb tokens -nrldb_log : $(whfs_log_dir)/nrldb -nrldb_data : $(whfs_local_data_dir)/nrldb -nrldb_config : $(whfs_config_dir)/nrldb -nrldb_tmp : /awips/hydroapps/whfs/local/data/output + # The syntax needed in the file is: # diff --git a/edexOsgi/com.raytheon.uf.common.parameter/.classpath b/edexOsgi/com.raytheon.uf.common.parameter/.classpath index ad32c83a78..1fa3e6803d 100644 --- a/edexOsgi/com.raytheon.uf.common.parameter/.classpath +++ b/edexOsgi/com.raytheon.uf.common.parameter/.classpath @@ -1,6 +1,6 @@ - + diff --git a/edexOsgi/com.raytheon.uf.common.parameter/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.parameter/META-INF/MANIFEST.MF index cfea789dc6..83f9cbdd2a 100644 --- a/edexOsgi/com.raytheon.uf.common.parameter/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.parameter/META-INF/MANIFEST.MF @@ -2,11 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Parameter Bundle-SymbolicName: com.raytheon.uf.common.parameter -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-BuddyPolicy: registered, ext, global -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.dataplugin.annotations, com.raytheon.uf.common.dataplugin.persist, com.raytheon.uf.common.dataquery.requests, diff --git a/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/alias/gempak.xml b/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/alias/gempak.xml index b00caba142..230f404f2a 100644 --- a/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/alias/gempak.xml +++ b/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/alias/gempak.xml @@ -211,6 +211,7 @@ CLDM MIXR MMSL + TKMN06 TMNK TMNK01 TMNK03 @@ -220,6 +221,7 @@ TMNK18 TMNK24 TMNK48 + TKMX06 TMXK TMXK01 TMXK03 @@ -303,6 +305,7 @@ TCLD18 TCLD24 TCLD48 + TCWTR TSTM TOZO APCP @@ -355,6 +358,7 @@ SWRU48 UREL VREL + VASH01 VAPR VRELFX VRELFX01 @@ -399,4 +403,4 @@ DRCTWW HGHTWW PERDWW - \ No newline at end of file + diff --git a/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/definition/parameters.xml b/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/definition/parameters.xml old mode 100644 new mode 100755 index d0a278163e..0540f5efb0 --- a/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/definition/parameters.xml +++ b/edexOsgi/com.raytheon.uf.common.parameter/utility/common_static/base/parameter/definition/parameters.xml @@ -109,6 +109,11 @@ DpT K + + Dew Point Temperature Error Analysis + DpTerranl + K + Direction of Wind Waves WVDIR @@ -234,6 +239,11 @@ P Pa + + Pressure Error Analysis + Perranl + Pa + Pressure Reduced to MSL PMSL @@ -364,6 +374,11 @@ T K + + Temperature Error Analysis + Terranl + K + Total Cloud Cover TCC @@ -464,6 +479,11 @@ Vis m + + Visibility Error Analysis + Viserranl + m + Virtual Potential Temperature VPT @@ -484,6 +504,11 @@ WD deg + + Wind Direction Error Analysis + WDerranl + deg + Wind Mixing Energy WMIXE @@ -494,11 +519,21 @@ WS m/s + + Wind Speed Error Analysis + WSerranl + m/s + Wind Gust Speed WGS m/s + + Wind Gust Speed Error Analysis + WGSerranl + m/s + Montgomery Stream Function MSG diff --git a/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/META-INF/MANIFEST.MF index 57095e23d0..8d6776a1e2 100644 --- a/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Nws Auth Plug-in Bundle-SymbolicName: com.raytheon.uf.common.plugin.nwsauth -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.serialization;bundle-version="1.12.2", com.raytheon.uf.common.auth;bundle-version="1.12.1174", com.raytheon.uf.common.status;bundle-version="1.12.1174", @@ -14,6 +13,5 @@ Require-Bundle: com.raytheon.uf.common.serialization;bundle-version="1.12.2", org.apache.commons.lang;bundle-version="2.3.0" Export-Package: com.raytheon.uf.common.plugin.nwsauth, com.raytheon.uf.common.plugin.nwsauth.exception, - com.raytheon.uf.common.plugin.nwsauth.user, com.raytheon.uf.common.plugin.nwsauth.xml Import-Package: com.raytheon.uf.common.plugin.nwsauth.exception diff --git a/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/User.java b/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/User.java index 65cca03d5d..cbd1075a51 100644 --- a/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/User.java +++ b/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/User.java @@ -1,9 +1,25 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ package com.raytheon.uf.common.plugin.nwsauth.user; -import com.raytheon.uf.common.auth.user.IAuthenticationData; -import com.raytheon.uf.common.auth.user.IUser; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; -import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** * Implementation of IUser @@ -14,92 +30,17 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * May 26, 2010 rgeorge Initial creation + * Oct 06, 2014 3398 bclement moved to common.auth + * left extension for backwards compatibility * * * * @author rgeorge * @version 1.0 + * @deprecated use com.raytheon.uf.common.auth.user.User */ @DynamicSerialize -public class User implements IUser { +@Deprecated +public class User extends com.raytheon.uf.common.auth.user.User { - @DynamicSerializeElement - private UserId userId; - - @DynamicSerializeElement - private AuthenticationData authenticationData; - - public User() { - - } - - public User(String userId) { - setUserId(new UserId(userId)); - } - - public UserId getUserId() { - return userId; - } - - public void setUserId(UserId userId) { - this.userId = userId; - } - - public AuthenticationData getAuthenticationData() { - return authenticationData; - } - - public void setAuthenticationData(AuthenticationData authenticationData) { - this.authenticationData = authenticationData; - } - - @Override - public UserId uniqueId() { - return userId; - } - - @Override - public IAuthenticationData authenticationData() { - // TODO Auto-generated method stub - return this.authenticationData; - } - - @Override - public String toString() { - return this.getClass().getName() + "[userId = " + userId.toString(); - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime - * result - + ((authenticationData == null) ? 0 : authenticationData - .hashCode()); - result = prime * result + ((userId == null) ? 0 : userId.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - User other = (User) obj; - if (authenticationData == null) { - if (other.authenticationData != null) - return false; - } else if (!authenticationData.equals(other.authenticationData)) - return false; - if (userId == null) { - if (other.userId != null) - return false; - } else if (!userId.equals(other.userId)) - return false; - return true; - } } diff --git a/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/UserId.java b/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/UserId.java index 5bf8c4c33d..e96df72fdb 100644 --- a/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/UserId.java +++ b/edexOsgi/com.raytheon.uf.common.plugin.nwsauth/src/com/raytheon/uf/common/plugin/nwsauth/user/UserId.java @@ -1,12 +1,28 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ package com.raytheon.uf.common.plugin.nwsauth.user; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import com.raytheon.uf.common.auth.user.IUserId; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; -import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; /** * Implementation of IUserId @@ -17,64 +33,18 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * May 26, 2010 rgeorge Initial creation + * Oct 06, 2014 3398 bclement moved to common.auth + * left extension for backwards compatibility * * * * @author rgeorge * @version 1.0 + * @deprecated use com.raytheon.uf.common.auth.user.UserId */ @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize -public class UserId implements IUserId { - - @DynamicSerializeElement - @XmlAttribute - String id; - - public UserId() { - - } - - public UserId(String id) { - this.id = id; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - @Override - public String toString() { - return this.id; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((id == null) ? 0 : id.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - UserId other = (UserId) obj; - if (id == null) { - if (other.id != null) - return false; - } else if (!id.equals(other.id)) - return false; - return true; - } +@Deprecated +public class UserId extends com.raytheon.uf.common.auth.user.UserId { } diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.registry.ebxml/META-INF/MANIFEST.MF index df5b6a98fa..c4dc384bb0 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: com.raytheon.uf.common.registry.ebxml Bundle-SymbolicName: com.raytheon.uf.common.registry.ebxml -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Export-Package: com.raytheon.uf.common.registry, @@ -11,6 +11,7 @@ Export-Package: com.raytheon.uf.common.registry, com.raytheon.uf.common.registry.ebxml, com.raytheon.uf.common.registry.ebxml.encoder, com.raytheon.uf.common.registry.ebxml.slots, + com.raytheon.uf.common.registry.ebxml.version, com.raytheon.uf.common.registry.handler, com.raytheon.uf.common.registry.services, com.raytheon.uf.common.registry.services.rest, diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/build.properties b/edexOsgi/com.raytheon.uf.common.registry.ebxml/build.properties index 5791d48d5f..ad8d78badb 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/build.properties +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/build.properties @@ -2,4 +2,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + resources/ diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryHandler.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryHandler.java index c7f080433d..07b0ec1a3b 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryHandler.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryHandler.java @@ -18,6 +18,7 @@ import com.raytheon.uf.common.registry.ebxml.IdQuery; * Aug 02, 2012 955 djohnson Type-safe registry query/responses. * Aug 20, 2012 0743 djohnson Finish making registry type-safe. * Sep 14, 2012 1169 djohnson Must call specific method to allow replace of an object. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -109,7 +110,7 @@ public interface RegistryHandler { * @see Object * */ - RegistryResponse storeObject(T object); + RegistryResponse storeObject(String username, T object); /** * Store an Object to the registry, replacing any existing Object with the @@ -126,6 +127,6 @@ public interface RegistryHandler { * @see Object * */ - RegistryResponse storeOrReplaceObject(T object); + RegistryResponse storeOrReplaceObject(String username, T object); } \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryJaxbManager.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryJaxbManager.java index e58d994d65..cf7710f9d4 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryJaxbManager.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryJaxbManager.java @@ -19,10 +19,12 @@ **/ package com.raytheon.uf.common.registry; +import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Marshaller; import com.raytheon.uf.common.serialization.JAXBManager; +import com.raytheon.uf.common.serialization.jaxb.JaxbMarshallerStrategy; import com.sun.xml.bind.marshaller.NamespacePrefixMapper; /** @@ -38,6 +40,7 @@ import com.sun.xml.bind.marshaller.NamespacePrefixMapper; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 8/8/2013 1692 bphillip Initial implementation + * Jul 15, 2014 3373 bclement jaxb manager changes * * * @author bphillip @@ -48,17 +51,6 @@ public class RegistryJaxbManager extends JAXBManager { /** The namespace mapper property name on the marshaller */ private static final String NAMESPACE_PREFIX_MAPPER_PROPERTY = "com.sun.xml.bind.namespacePrefixMapper"; - protected NamespacePrefixMapper namespaceMapper; - - /** - * Creates a new RegistryJaxbManager. Hidden from public use - * - * @throws JAXBException - */ - protected RegistryJaxbManager() throws JAXBException { - super(); - } - /** * Creates a new RegistryJaxbManager with the given namespace mapper * @@ -72,25 +64,29 @@ public class RegistryJaxbManager extends JAXBManager { public RegistryJaxbManager(RegistryNamespaceMapper namespaceMapper) throws JAXBException { super( + createStrategy(namespaceMapper), oasis.names.tc.ebxml.regrep.xsd.lcm.v4.ObjectFactory.class, oasis.names.tc.ebxml.regrep.xsd.query.v4.ObjectFactory.class, oasis.names.tc.ebxml.regrep.xsd.rim.v4.ObjectFactory.class, oasis.names.tc.ebxml.regrep.xsd.rs.v4.ObjectFactory.class, oasis.names.tc.ebxml.regrep.xsd.spi.v4.ObjectFactory.class, com.raytheon.uf.common.registry.services.rest.response.RestCollectionResponse.class); - this.namespaceMapper = namespaceMapper; } - @Override - protected Marshaller getMarshaller() throws JAXBException { - Marshaller m = marshallers.poll(); - if (m == null) { - m = getJaxbContext().createMarshaller(); - if (namespaceMapper != null) { - m.setProperty(NAMESPACE_PREFIX_MAPPER_PROPERTY, namespaceMapper); + private static JaxbMarshallerStrategy createStrategy( + final NamespacePrefixMapper namespaceMapper) { + return new JaxbMarshallerStrategy() { + @Override + protected Marshaller createMarshaller(JAXBContext context) + throws JAXBException { + Marshaller rval = super.createMarshaller(context); + if (namespaceMapper != null) { + rval.setProperty(NAMESPACE_PREFIX_MAPPER_PROPERTY, + namespaceMapper); + } + return rval; } - } - return m; + }; } } diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryNamespaceMapper.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryNamespaceMapper.java index 65d1d763fd..a71604a9cc 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryNamespaceMapper.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryNamespaceMapper.java @@ -24,6 +24,7 @@ import java.util.Iterator; import javax.xml.XMLConstants; import javax.xml.namespace.NamespaceContext; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.sun.xml.bind.marshaller.NamespacePrefixMapper; /** @@ -38,6 +39,7 @@ import com.sun.xml.bind.marshaller.NamespacePrefixMapper; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 8/8/2013 1692 bphillip Initial implementation + * Jul 15, 2014 3373 bclement removed warning * * * @author bphillip @@ -73,7 +75,7 @@ public class RegistryNamespaceMapper extends NamespacePrefixMapper implements } @Override - public Iterator getPrefixes(String namespaceURI) { + public Iterator getPrefixes(String namespaceURI) { throw new UnsupportedOperationException(); } diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/FactoryRegistryHandler.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/FactoryRegistryHandler.java index d1bff5489a..7bc5f9aa00 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/FactoryRegistryHandler.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/FactoryRegistryHandler.java @@ -80,6 +80,7 @@ import com.raytheon.uf.common.util.ReflectionException; * 4/9/2013 1802 bphillip Modified to use constants in constants package instead of RegistryUtil * Apr 24, 2013 1910 djohnson RegistryResponseStatus is now an enum. * Jun 24, 2013 2106 djohnson Requires a transaction to already be active. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -629,7 +630,7 @@ public class FactoryRegistryHandler implements RegistryHandler { * */ @Override - public RegistryResponse storeObject(final Object object) { + public RegistryResponse storeObject(final String username, final Object object) { final RegistryResponse response = new RegistryResponse(); final Callable> request = new Callable>() { @Override @@ -637,7 +638,7 @@ public class FactoryRegistryHandler implements RegistryHandler { LifecycleManager lcm = lifecycleManagerFactory .getLifeCycleManager(); QueryManager qm = queryManagerFactory.getQueryManager(); - List a = store(lcm, qm, object, Mode.CREATE_ONLY); + List a = store(lcm, qm, username, object, Mode.CREATE_ONLY); response.setRegistryObjects(a); return response; @@ -652,7 +653,7 @@ public class FactoryRegistryHandler implements RegistryHandler { * {@inheritDoc} */ @Override - public RegistryResponse storeOrReplaceObject(final Object object) { + public RegistryResponse storeOrReplaceObject(final String username, final Object object) { final RegistryResponse response = new RegistryResponse(); final Callable> request = new Callable>() { @Override @@ -660,7 +661,7 @@ public class FactoryRegistryHandler implements RegistryHandler { LifecycleManager lcm = lifecycleManagerFactory .getLifeCycleManager(); QueryManager qm = queryManagerFactory.getQueryManager(); - List a = store(lcm, qm, object, Mode.CREATE_OR_REPLACE); + List a = store(lcm, qm, username, object, Mode.CREATE_OR_REPLACE); response.setRegistryObjects(a); return response; @@ -698,7 +699,7 @@ public class FactoryRegistryHandler implements RegistryHandler { * */ @SuppressWarnings("unchecked") - private List store(LifecycleManager lcm, QueryManager qm, T object, + private List store(LifecycleManager lcm, QueryManager qm, String username, T object, Mode mode) throws MsgRegistryException, JAXBException, IllegalArgumentException, ReflectionException, SerializationException { @@ -780,13 +781,13 @@ public class FactoryRegistryHandler implements RegistryHandler { idQuery.setID(classificationNode.getId()); objects = getRawObjects(qm, idQuery); if (objects.isEmpty()) { - rt = submitObjects(lcm, Arrays.asList(classificationNode)); + rt = submitObjects(lcm, Arrays.asList(classificationNode), username); if (!RegistryResponseStatus.SUCCESS.equals(rt.getStatus())) { throwUnsuccessfulResponseException(rt); } } - rt = submitObjects(lcm, Arrays.asList(registryObject)); + rt = submitObjects(lcm, Arrays.asList(registryObject), username); if (!RegistryResponseStatus.SUCCESS.equals(rt.getStatus())) { throwUnsuccessfulResponseException(rt); } @@ -801,7 +802,7 @@ public class FactoryRegistryHandler implements RegistryHandler { association.setOwner(registryObject.getOwner()); } if (!associations.isEmpty()) { - rt = submitObjects(lcm, associations, mode); + rt = submitObjects(lcm, associations, username, mode); } if (!RegistryResponseStatus.SUCCESS.equals(rt.getStatus())) { @@ -874,14 +875,14 @@ public class FactoryRegistryHandler implements RegistryHandler { dependentObjects); if (!associationsToAdd.isEmpty()) { - rt = submitObjects(lcm, associationsToAdd, mode); + rt = submitObjects(lcm, associationsToAdd, username, mode); } } } // Now that the association are worked out, try again with replace // mode set.. - rt = submitObjects(lcm, Arrays.asList(registryObject), mode); + rt = submitObjects(lcm, Arrays.asList(registryObject), username, mode); } else { throw new IllegalArgumentException("Mode [" + mode + "] is not currently supported!"); @@ -930,9 +931,9 @@ public class FactoryRegistryHandler implements RegistryHandler { */ private RegistryResponseType submitObjects( LifecycleManager lifecycleManager, - List registryObjects) + List registryObjects, String username) throws MsgRegistryException, JAXBException { - return submitObjects(lifecycleManager, registryObjects, + return submitObjects(lifecycleManager, registryObjects, username, Mode.CREATE_ONLY); } @@ -957,7 +958,7 @@ public class FactoryRegistryHandler implements RegistryHandler { */ private RegistryResponseType submitObjects( LifecycleManager lifecycleManager, - List registryObjects, Mode mode) + List registryObjects, String username, Mode mode) throws MsgRegistryException, JAXBException { RegistryResponseType response = new RegistryResponseType(); @@ -976,7 +977,7 @@ public class FactoryRegistryHandler implements RegistryHandler { List batch = registryObjects.subList(count, (count = Math.min(count + batchSize, lastIndex))); - SubmitObjectsRequest a = RegistryUtil.newSubmitObjects(batch, + SubmitObjectsRequest a = RegistryUtil.newSubmitObjects(batch, username, mode); RegistryResponseType rt = lifecycleManager.submitObjects(a); diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/RegistryUtil.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/RegistryUtil.java index 2c997968c5..0639c5a298 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/RegistryUtil.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/RegistryUtil.java @@ -54,6 +54,7 @@ import com.raytheon.uf.common.registry.ebxml.slots.SlotConverter; import com.raytheon.uf.common.registry.ebxml.slots.StringSlotConverter; import com.raytheon.uf.common.serialization.SerializationException; import com.raytheon.uf.common.time.util.ImmutableDate; +import com.raytheon.uf.common.util.ClusterIdUtil; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.common.util.ReflectionException; import com.raytheon.uf.common.util.ReflectionUtil; @@ -79,6 +80,13 @@ import com.raytheon.uf.common.util.ReflectionUtil; * Jun 03, 2013 2038 djohnson Allow setting the same encoder strategy. * Jun 24, 2013 2106 djohnson Remove encoder strategy from instance variables. * Dec 04, 2013 2584 dhladky Versions for Registry objects + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. + * Apr 24, 2014 2992 dhladky fixed all objects in ebxml owned by NCF, bad. + * 6/5/2014 1712 bphillip Registry now communicates over https + * June 25, 2014 3273 dhladky Remove all DD environment variables from setup.env + * 7/10/2014 1717 bphillip Changed default user + * Jul 28, 2014 3474 dhladky Fixed bad default user settings. + * * * * @@ -96,13 +104,17 @@ public final class RegistryUtil { public static final String registryObjectClassName = "registryObjectClassName"; public static final String registryObjectDefaultVersion = "1.0"; + + public static final String defaultUser = "NCF"; + + public static final String DEFAULT_OWNER = "System"; static { - if (System.getenv("EBXML_REGISTRY_HOST") != null - && System.getenv("EBXML_REGISTRY_WEBSERVER_PORT") != null) { - LOCAL_REGISTRY_ADDRESS = "http://" - + System.getenv("EBXML_REGISTRY_HOST") + ":" - + System.getenv("EBXML_REGISTRY_WEBSERVER_PORT"); + if (System.getProperty("ebxml.registry.host") != null + && System.getProperty("ebxml.registry.webserver.port") != null) { + LOCAL_REGISTRY_ADDRESS = "https://" + + System.getProperty("ebxml.registry.host") + ":" + + System.getProperty("ebxml.registry.webserver.port"); } } @@ -110,9 +122,9 @@ public final class RegistryUtil { public static final String CALLING_REGISTRY_SOAP_HEADER_NAME = "Calling_Registry"; /** - * The default internal owner + * The default internal owner is the local registry ID */ - public static final String DEFAULT_OWNER = "NCF"; + public static final String registryUser = ClusterIdUtil.getId(); // A private mapping of attribute types to slot types, used when storing an // object to the registry to map QueryableAttributes to SlotConverters. @@ -372,7 +384,7 @@ public final class RegistryUtil { registryObject, RegistryObjectOwner.class); registryObject.setOwner(objectOwner); if (objectOwner == null) { - registryObject.setOwner(DEFAULT_OWNER); + registryObject.setOwner(registryUser); } registryObject.setName(getInternationalString(ReflectionUtil @@ -612,10 +624,11 @@ public final class RegistryUtil { * @return the request */ public static SubmitObjectsRequest newSubmitObjects( - List asList, Mode mode) { + List asList, String username, Mode mode) { SubmitObjectsRequest request = new SubmitObjectsRequest(); request.setCheckReferences(false); request.setMode(mode); + request.setUsername(username); RegistryObjectListType registryObjectList = new RegistryObjectListType(); registryObjectList.getRegistryObject().addAll(asList); request.setRegistryObjectList(registryObjectList); diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/SOAPRegistryManager.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/SOAPRegistryManager.java index aa90515b35..77cd801bee 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/SOAPRegistryManager.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/SOAPRegistryManager.java @@ -10,7 +10,7 @@ import oasis.names.tc.ebxml.regrep.wsdl.registry.services.v4.LifecycleManagerSOA import oasis.names.tc.ebxml.regrep.wsdl.registry.services.v4.QueryManager; import oasis.names.tc.ebxml.regrep.wsdl.registry.services.v4.QueryManagerSOAPService; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/ThriftRegistryHandler.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/ThriftRegistryHandler.java index 12e611104c..b4a902ffda 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/ThriftRegistryHandler.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/ThriftRegistryHandler.java @@ -45,6 +45,7 @@ import com.raytheon.uf.common.serialization.comm.response.ServerErrorResponse; * Nov 15, 2012 1322 djohnson Remove ThriftCommunicator in lieu of server-keyed routing. * Dec 03, 2012 1379 djohnson Use registry service keys. * 4/9/2013 1802 bphillip Modified to use constants in constants package instead of RegistryUtil + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -192,8 +193,9 @@ public class ThriftRegistryHandler implements RegistryHandler { @SuppressWarnings("unchecked") @Override - public RegistryResponse storeObject(T object) { + public RegistryResponse storeObject(String username, T object) { IRegistryRequest request = new IRegistryRequest(); + request.setUsername(username); request.setObjects(Arrays. asList(object)); request.setAction(Action.STORE); @@ -202,8 +204,9 @@ public class ThriftRegistryHandler implements RegistryHandler { @SuppressWarnings("unchecked") @Override - public RegistryResponse storeOrReplaceObject(T object) { + public RegistryResponse storeOrReplaceObject(String username, T object) { IRegistryRequest request = new IRegistryRequest(); + request.setUsername(username); request.setObjects(Arrays. asList(object)); request.setAction(Action.STORE_OR_REPLACE); diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/encoder/JaxbEncoder.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/encoder/JaxbEncoder.java index 16420270e4..37e8caeebb 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/encoder/JaxbEncoder.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/ebxml/encoder/JaxbEncoder.java @@ -24,6 +24,7 @@ import static com.raytheon.uf.common.registry.ebxml.encoder.RegistryEncoders.Typ import javax.xml.bind.JAXBException; import com.raytheon.uf.common.registry.annotations.RegistryObjectVersion; +import com.raytheon.uf.common.registry.ebxml.version.VersionTransformer; import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlJaxbManager; import com.raytheon.uf.common.serialization.SerializationException; import com.raytheon.uf.common.status.IUFStatusHandler; @@ -46,6 +47,7 @@ import com.raytheon.uf.common.util.ReflectionUtil; * Oct 31, 2013 2361 njensen Use specific JAXBManager instead of SerializationUtil * Nov 14, 2013 2552 bkowal EbxmlJaxbManager is now accessed via getInstance * Dec 08, 2013 2584 dhladky Versions for JAXB objects, Only use the JAXb encoder now. + * Mar 02, 2014 2789 dhladky XSLT transformation of other versions to current. * * * @@ -85,9 +87,21 @@ class JaxbEncoder extends StringBasedEncoder { } } else { statusHandler.handle(Priority.INFO, - "Mismatching class versions, returning content. " - + className + " version: " + version); - return content; + "Mismatched versions, attempting version transformation from:\n " + + version + " to: " + classVersion + " class: " + + className); + try { + VersionTransformer transformer = VersionTransformer + .getInstance(); + String transformedXML = transformer.transform(content, + className, classVersion, version); + + return EbxmlJaxbManager.getInstance().getJaxbManager() + .unmarshalFromXml(transformedXML); + } catch (Exception e) { + throw new SerializationException("Unable to transform object! " + + className + "\n" + content, e); + } } } diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/BaseRegistryObjectHandler.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/BaseRegistryObjectHandler.java index 7daf97b4ba..b06b406e07 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/BaseRegistryObjectHandler.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/BaseRegistryObjectHandler.java @@ -55,6 +55,7 @@ import com.raytheon.uf.common.util.CollectionUtil; * Oct 05, 2012 1195 djohnson Remove executeQuery method, add getById. * 3/18/2013 1802 bphillip Implemented transaction boundaries * Jun 24, 2013 2106 djohnson Composes the registryHandler. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @author djohnson @@ -98,9 +99,9 @@ public abstract class BaseRegistryObjectHandler response = registryHandler - .storeObject(obj); + .storeObject(username, obj); checkResponse(response, obj, "store"); } @@ -109,9 +110,9 @@ public abstract class BaseRegistryObjectHandler response = registryHandler - .storeOrReplaceObject(obj); + .storeOrReplaceObject(username, obj); checkResponse(response, obj, "update"); } diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/IRegistryObjectHandler.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/IRegistryObjectHandler.java index a725294927..1e24c092af 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/IRegistryObjectHandler.java +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/handler/IRegistryObjectHandler.java @@ -37,6 +37,7 @@ import com.raytheon.uf.common.registry.annotations.RegistryObject; * Sep 17, 2012 1169 djohnson Initial creation * Sep 21, 2012 1187 djohnson Add bulk delete operations. * Oct 05, 2012 1195 djohnson Remove executeQuery method, add getById. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -71,7 +72,7 @@ public interface IRegistryObjectHandler { * @param obj * the object to store */ - void store(T obj) throws RegistryHandlerException; + void store(String username, T obj) throws RegistryHandlerException; /** * Delete a {@link RegistryObject}. @@ -80,7 +81,7 @@ public interface IRegistryObjectHandler { * the object to store * @throws RegistryHandlerException */ - void update(T obj) throws RegistryHandlerException; + void update(String username, T obj) throws RegistryHandlerException; /** * Delete a {@link RegistryObject}. diff --git a/edexOsgi/com.raytheon.uf.common.registry.event/.classpath b/edexOsgi/com.raytheon.uf.common.registry.event/.classpath index ad32c83a78..31db9a9117 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.event/.classpath +++ b/edexOsgi/com.raytheon.uf.common.registry.event/.classpath @@ -3,5 +3,6 @@ + diff --git a/edexOsgi/com.raytheon.uf.common.registry.event/build.properties b/edexOsgi/com.raytheon.uf.common.registry.event/build.properties index 34d2e4d2da..342f3ffdb3 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.event/build.properties +++ b/edexOsgi/com.raytheon.uf.common.registry.event/build.properties @@ -1,4 +1,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - . + .,\ + resources/ diff --git a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/InsertRegistryEvent.java b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/InsertRegistryEvent.java index 57c388b6e6..7b97e4099d 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/InsertRegistryEvent.java +++ b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/InsertRegistryEvent.java @@ -34,6 +34,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; * ------------ ---------- ----------- -------------------------- * Mar 16, 2012 jsanchez Initial creation * Nov 08, 2013 2506 bgonzale Added constructors. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -48,8 +49,8 @@ public class InsertRegistryEvent extends RegistryEvent { } - public InsertRegistryEvent(String id, String lid, String objectType) { - super(id, lid, objectType, Action.INSERT); + public InsertRegistryEvent(String id, String lid, String username, String objectType) { + super(id, lid, objectType, username, Action.INSERT); } @Override diff --git a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RegistryEvent.java b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RegistryEvent.java index f2df6aa846..8e65960b4a 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RegistryEvent.java +++ b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RegistryEvent.java @@ -36,6 +36,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * ------------ ---------- ----------- -------------------------- * Mar 16, 2012 jsanchez Initial creation * Nov 08, 2013 2506 bgonzale Added constructors. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -65,10 +66,11 @@ public abstract class RegistryEvent extends Event { * @param objectType * @param action */ - public RegistryEvent(String id, String lid, String objectType, Action action) { + public RegistryEvent(String id, String lid, String objectType, String username, Action action) { super(id); this.lid = lid; this.objectType = objectType; + this.username = username; this.action = action; } @@ -80,6 +82,9 @@ public abstract class RegistryEvent extends Event { @DynamicSerializeElement private Action action; + + @DynamicSerializeElement + private String username; public void setObjectType(String objectType) { this.objectType = objectType; @@ -110,4 +115,13 @@ public abstract class RegistryEvent extends Event { public void setAction(Action action) { this.action = action; } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + } diff --git a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RemoveRegistryEvent.java b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RemoveRegistryEvent.java index 77820fb6cf..c796161058 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RemoveRegistryEvent.java +++ b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/RemoveRegistryEvent.java @@ -37,6 +37,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; * Mar 16, 2012 jsanchez Initial creation * Nov 08, 2013 2506 bgonzale Added constructors. Added object deleted field. * Added RegistryObjectType field. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -48,8 +49,6 @@ public class RemoveRegistryEvent extends RegistryEvent { private static final long serialVersionUID = -5854149256576746509L; - private String username; - private RegistryObjectType removedObject; public RemoveRegistryEvent() { @@ -58,19 +57,10 @@ public class RemoveRegistryEvent extends RegistryEvent { public RemoveRegistryEvent(String username, String id, RegistryObjectType removedObject) { - super(id, null, null, Action.DELETE); - this.username = username; + super(id, null, null, username, Action.DELETE); this.removedObject = removedObject; } - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - /** * @return the removedObject */ diff --git a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/UpdateRegistryEvent.java b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/UpdateRegistryEvent.java index bf52c47ad6..ec594f495b 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/UpdateRegistryEvent.java +++ b/edexOsgi/com.raytheon.uf.common.registry.event/src/com/raytheon/uf/common/registry/event/UpdateRegistryEvent.java @@ -34,6 +34,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; * ------------ ---------- ----------- -------------------------- * Mar 16, 2012 jsanchez Initial creation * Nov 08, 2013 2506 bgonzale Added constructors. + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -48,7 +49,7 @@ public class UpdateRegistryEvent extends RegistryEvent { } - public UpdateRegistryEvent(String id, String lid, String objectType) { - super(id, lid, objectType, Action.UPDATE); + public UpdateRegistryEvent(String id, String lid, String username, String objectType) { + super(id, lid, objectType, username, Action.UPDATE); } } diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/META-INF/MANIFEST.MF index 399a674add..7eaa78adf9 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/META-INF/MANIFEST.MF @@ -2,20 +2,19 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Ebxml Bundle-SymbolicName: com.raytheon.uf.common.registry.schemas.ebxml -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: javax.persistence;bundle-version="1.0.0", org.hibernate;bundle-version="1.0.0", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", - com.raytheon.uf.edex.database;bundle-version="1.0.0", org.apache.commons.cxf;bundle-version="1.0.0", com.raytheon.uf.common.status;bundle-version="1.12.1174", com.raytheon.uf.common.util;bundle-version="1.12.1174", - org.reflections;bundle-version="0.9.9" -Export-Package: com.raytheon.uf.common.registry, - com.raytheon.uf.common.registry.schemas.ebxml.util, + org.reflections;bundle-version="0.9.9", + org.springframework;bundle-version="3.1.4" +Export-Package: com.raytheon.uf.common.registry.schemas.ebxml.util, com.raytheon.uf.common.registry.schemas.ebxml.util.annotations, oasis.names.tc.ebxml.regrep.wsdl.registry.services.v4, oasis.names.tc.ebxml.regrep.xsd.lcm.v4, diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/DurationType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/DurationType.java index d061782309..62c752932a 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/DurationType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/DurationType.java @@ -30,6 +30,7 @@ import javax.xml.datatype.DatatypeFactory; import javax.xml.datatype.Duration; import org.hibernate.HibernateException; +import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.usertype.UserType; /** @@ -44,6 +45,7 @@ import org.hibernate.usertype.UserType; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Mar 6, 2012 bphillip Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -89,11 +91,12 @@ public class DurationType implements UserType { public boolean isMutable() { return false; } - + @Override - public Object nullSafeGet(ResultSet resultSet, String[] names, Object owner) + public Object nullSafeGet(ResultSet rs, String[] names, + SessionImplementor session, Object owner) throws HibernateException, SQLException { - long durationInMilliSeconds = resultSet.getLong((names[0])); + long durationInMilliSeconds = rs.getLong((names[0])); try { return DatatypeFactory.newInstance().newDuration( @@ -105,15 +108,15 @@ public class DurationType implements UserType { } @Override - public void nullSafeSet(PreparedStatement statement, Object value, int index) - throws HibernateException, SQLException { + public void nullSafeSet(PreparedStatement st, Object value, int index, + SessionImplementor session) throws HibernateException, SQLException { if (value == null) { - statement.setLong(index, 0); + st.setLong(index, 0); } else { Duration dur = (Duration) value; - statement.setLong(index, dur.getTimeInMillis(new java.util.Date())); + st.setLong(index, dur.getTimeInMillis(new java.util.Date())); } - + } @Override diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/EbxmlJaxbManager.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/EbxmlJaxbManager.java index e83be90f8d..68ce843ad2 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/EbxmlJaxbManager.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/EbxmlJaxbManager.java @@ -50,6 +50,7 @@ import com.raytheon.uf.common.util.ReflectionUtil; * ------------ ---------- ----------- -------------------------- * Nov 12, 2013 ---- njensen Initial release. * Nov 24, 2013 2584 dhladky versioning + * Jul 15, 2014 3373 bclement pooling jaxb manager * * * @author njensen @@ -118,7 +119,7 @@ public class EbxmlJaxbManager { public synchronized JAXBManager getJaxbManager() throws JAXBException { if (jaxb == null) { - jaxb = new JAXBManager(jaxables.toArray(new Class[0])); + jaxb = new JAXBManager(true, jaxables.toArray(new Class[0])); } return jaxb; } diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/ObjectIdGenerator.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/ObjectIdGenerator.java index 749e9e2ee5..991137d138 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/ObjectIdGenerator.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/ObjectIdGenerator.java @@ -20,7 +20,7 @@ package com.raytheon.uf.common.registry.schemas.ebxml.util; import org.hibernate.HibernateException; -import org.hibernate.engine.SessionImplementor; +import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.id.IdentifierGenerator; /** @@ -33,6 +33,7 @@ import org.hibernate.id.IdentifierGenerator; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jan 11, 2012 bphillip Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/SerializedType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/SerializedType.java index 6f4b1ee287..df8db96852 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/SerializedType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/SerializedType.java @@ -29,6 +29,7 @@ import java.sql.Types; import javax.xml.datatype.XMLGregorianCalendar; import org.hibernate.HibernateException; +import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.usertype.UserType; /** @@ -44,6 +45,7 @@ import org.hibernate.usertype.UserType; * Oct 31, 2013 2361 njensen Use specific JAXBManager instead of SerializationUtil * Nov 14, 2013 2552 bkowal EbxmlJaxbManager is now accessed via getInstance * Dec 04, 2013 2584 dhladky Version based EbxmlJaxbManager + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -89,9 +91,10 @@ public class SerializedType implements UserType { } @Override - public Object nullSafeGet(ResultSet resultSet, String[] names, Object owner) + public Object nullSafeGet(ResultSet rs, String[] names, + SessionImplementor session, Object owner) throws HibernateException, SQLException { - String obj = resultSet.getString(names[0]); + String obj = rs.getString(names[0]); if (obj != null) { try { // We always marshall to current version for to XML conversions @@ -106,18 +109,19 @@ public class SerializedType implements UserType { } @Override - public void nullSafeSet(PreparedStatement statement, Object value, int index) - throws HibernateException, SQLException { + public void nullSafeSet(PreparedStatement st, Object value, int index, + SessionImplementor session) throws HibernateException, SQLException { if (value == null) { - statement.setString(index, null); + st.setString(index, null); } else { try { // We always marshall to current version for to XML conversions - statement.setString(index, EbxmlJaxbManager.getInstance() + st.setString(index, EbxmlJaxbManager.getInstance() .getJaxbManager().marshalToXml(value)); } catch (Exception e) { throw new HibernateException("Error storing AnyType data", e); } } + } @Override @@ -135,5 +139,4 @@ public class SerializedType implements UserType { public int[] sqlTypes() { return SerializedType.SQL_TYPES; } - } diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/XMLGregorianCalendarType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/XMLGregorianCalendarType.java index 781f19e983..bfa7c6c41e 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/XMLGregorianCalendarType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/com/raytheon/uf/common/registry/schemas/ebxml/util/XMLGregorianCalendarType.java @@ -32,6 +32,7 @@ import javax.xml.datatype.DatatypeFactory; import javax.xml.datatype.XMLGregorianCalendar; import org.hibernate.HibernateException; +import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.usertype.UserType; /** @@ -47,6 +48,7 @@ import org.hibernate.usertype.UserType; * Feb 21, 2012 #184 bphillip Initial creation * 4/9/2013 1802 bphillip Added null check * 7/29/2013 2191 bphillip Fixed equals method + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -99,10 +101,11 @@ public class XMLGregorianCalendarType implements UserType { } @Override - public Object nullSafeGet(ResultSet resultSet, String[] names, Object owner) + public Object nullSafeGet(ResultSet rs, String[] names, + SessionImplementor session, Object owner) throws HibernateException, SQLException { GregorianCalendar cal = new GregorianCalendar(); - Timestamp date = resultSet.getTimestamp(names[0]); + Timestamp date = rs.getTimestamp(names[0]); if (date == null) { return null; } @@ -117,16 +120,16 @@ public class XMLGregorianCalendarType implements UserType { } @Override - public void nullSafeSet(PreparedStatement statement, Object value, int index) - throws HibernateException, SQLException { + public void nullSafeSet(PreparedStatement st, Object value, int index, + SessionImplementor session) throws HibernateException, SQLException { if (value == null) { - statement.setDate(index, null); + st.setDate(index, null); } else { XMLGregorianCalendar cal = (XMLGregorianCalendar) value; - statement.setTimestamp(index, new Timestamp(cal + st.setTimestamp(index, new Timestamp(cal .toGregorianCalendar().getTime().getTime())); } - + } @Override @@ -144,5 +147,4 @@ public class XMLGregorianCalendarType implements UserType { public int[] sqlTypes() { return XMLGregorianCalendarType.SQL_TYPES; } - } diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Cataloger.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Cataloger.java index 28c62b45bc..9cc13eb35d 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Cataloger.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Cataloger.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.spi.v4.CatalogObjectsResponse; import org.apache.cxf.annotations.FastInfoset; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/CatalogerSOAPService.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/CatalogerSOAPService.java index b94a2010ec..f2111754f8 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/CatalogerSOAPService.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/CatalogerSOAPService.java @@ -28,7 +28,7 @@ import javax.xml.ws.WebEndpoint; import javax.xml.ws.WebServiceClient; import javax.xml.ws.WebServiceFeature; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManager.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManager.java index 5ac1d97ab1..e5c5d83418 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManager.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManager.java @@ -34,7 +34,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.apache.cxf.annotations.FastInfoset; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManagerSOAPService.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManagerSOAPService.java index 9b58717665..c2ff497f2a 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManagerSOAPService.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/LifecycleManagerSOAPService.java @@ -28,7 +28,7 @@ import javax.xml.ws.WebEndpoint; import javax.xml.ws.WebServiceClient; import javax.xml.ws.WebServiceFeature; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/MsgRegistryException.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/MsgRegistryException.java index 5243303918..05e8da7323 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/MsgRegistryException.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/MsgRegistryException.java @@ -24,7 +24,7 @@ import javax.xml.ws.WebFault; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryExceptionType; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeTypeAdapter; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListener.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListener.java index c1ff1c3ee3..43485a75e7 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListener.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListener.java @@ -34,7 +34,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.apache.cxf.annotations.FastInfoset; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** *
      diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListenerSOAPService.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListenerSOAPService.java
      index dc87c74f80..c3151b6efc 100644
      --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListenerSOAPService.java
      +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/NotificationListenerSOAPService.java
      @@ -28,7 +28,7 @@ import javax.xml.ws.WebEndpoint;
       import javax.xml.ws.WebServiceClient;
       import javax.xml.ws.WebServiceFeature;
       
      -import com.raytheon.uf.common.registry.EbxmlNamespaces;
      +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces;
       
       /**
        * 
      diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManager.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManager.java
      index a6d74baf7a..4d6c124318 100644
      --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManager.java
      +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManager.java
      @@ -34,7 +34,7 @@ import org.apache.cxf.annotations.FastInfoset;
       import org.springframework.transaction.annotation.Propagation;
       import org.springframework.transaction.annotation.Transactional;
       
      -import com.raytheon.uf.common.registry.EbxmlNamespaces;
      +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces;
       
       /**
        * 
      diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManagerSOAPService.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManagerSOAPService.java
      index 1e43849030..7e0ec49ba6 100644
      --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManagerSOAPService.java
      +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/QueryManagerSOAPService.java
      @@ -28,7 +28,7 @@ import javax.xml.ws.WebEndpoint;
       import javax.xml.ws.WebServiceClient;
       import javax.xml.ws.WebServiceFeature;
       
      -import com.raytheon.uf.common.registry.EbxmlNamespaces;
      +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces;
       
       /**
        * 
      diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Validator.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Validator.java
      index 906016c06c..42b92db51c 100644
      --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Validator.java
      +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/Validator.java
      @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.spi.v4.ValidateObjectsResponse;
       
       import org.apache.cxf.annotations.FastInfoset;
       
      -import com.raytheon.uf.common.registry.EbxmlNamespaces;
      +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces;
       
       /**
        * 
      diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/ValidatorSOAPService.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/ValidatorSOAPService.java
      index 12fa040641..a225530497 100644
      --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/ValidatorSOAPService.java
      +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/wsdl/registry/services/v4/ValidatorSOAPService.java
      @@ -28,7 +28,7 @@ import javax.xml.ws.WebEndpoint;
       import javax.xml.ws.WebServiceClient;
       import javax.xml.ws.WebServiceFeature;
       
      -import com.raytheon.uf.common.registry.EbxmlNamespaces;
      +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces;
       
       /**
        * 
      diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/RemoveObjectsRequest.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/RemoveObjectsRequest.java
      index f3c7138aa2..25d9fe3d5c 100644
      --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/RemoveObjectsRequest.java
      +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/RemoveObjectsRequest.java
      @@ -27,7 +27,6 @@ import javax.persistence.Entity;
       import javax.persistence.JoinColumn;
       import javax.persistence.OneToOne;
       import javax.persistence.Table;
      -import javax.persistence.Transient;
       import javax.xml.bind.annotation.XmlAccessType;
       import javax.xml.bind.annotation.XmlAccessorType;
       import javax.xml.bind.annotation.XmlAttribute;
      @@ -43,8 +42,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryRequestType;
       import org.hibernate.annotations.Cache;
       import org.hibernate.annotations.CacheConcurrencyStrategy;
       
      -import com.raytheon.uf.common.registry.EbxmlNamespaces;
      -import com.raytheon.uf.common.registry.RegrepUtil;
      +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces;
      +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil;
       import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
       import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
       
      @@ -81,6 +80,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
        * 2012                     bphillip    Initial implementation
        * 10/17/2013    1682       bphillip    Added software history
        * 12/2/2013     1829       bphillip    Added Hibernate annotations
      + * Mar 31, 2014 2889       dhladky      Added username for notification center tracking.
        * 
      * * @author bphillip @@ -120,7 +120,6 @@ public class RemoveObjectsRequest extends RegistryRequestType { @DynamicSerializeElement protected String deletionScope; - @Transient @XmlAttribute @DynamicSerializeElement protected String username; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/SubmitObjectsRequest.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/SubmitObjectsRequest.java index 958981dd76..0c0cf38734 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/SubmitObjectsRequest.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/SubmitObjectsRequest.java @@ -41,8 +41,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryRequestType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.EbxmlNamespaces; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -77,6 +77,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * 2012 bphillip Initial implementation * 10/17/2013 1682 bphillip Added software history * 12/2/2013 1829 bphillip Added Hibernate annotations + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. *
      * * @author bphillip @@ -105,6 +106,10 @@ public class SubmitObjectsRequest extends RegistryRequestType { @XmlAttribute @DynamicSerializeElement protected Mode mode; + + @XmlAttribute + @DynamicSerializeElement + protected String username; public SubmitObjectsRequest() { super(); @@ -237,6 +242,13 @@ public class SubmitObjectsRequest extends RegistryRequestType { return false; } else if (!registryObjectList.equals(other.registryObjectList)) return false; + if (username != null) { + if (other.username != null) { + return false; + } else if (!username.equals(other.username)) { + return false; + } + } return true; } @@ -256,7 +268,18 @@ public class SubmitObjectsRequest extends RegistryRequestType { builder.append(", \nmode="); builder.append(mode); builder.append("]"); + builder.append(", \nusername="); + builder.append(username); + builder.append("]"); return builder.toString(); } + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + } diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/UpdateObjectsRequest.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/UpdateObjectsRequest.java index a752307f4f..72d47e1601 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/UpdateObjectsRequest.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/UpdateObjectsRequest.java @@ -44,8 +44,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryRequestType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.EbxmlNamespaces; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -82,6 +82,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * 2012 bphillip Initial implementation * 10/17/2013 1682 bphillip Added software history * 12/2/2013 1829 bphillip Added Hibernate annotations + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. *
      * * @author bphillip @@ -121,6 +122,10 @@ public class UpdateObjectsRequest extends RegistryRequestType { @XmlAttribute @DynamicSerializeElement protected Mode mode; + + @XmlAttribute + @DynamicSerializeElement + protected String username; public UpdateObjectsRequest() { super(); @@ -315,6 +320,13 @@ public class UpdateObjectsRequest extends RegistryRequestType { return false; } else if (!updateAction.equals(other.updateAction)) return false; + if (username != null) { + if (other.username != null) { + return false; + } else if (!username.equals(other.username)) { + return false; + } + } return true; } @@ -338,7 +350,18 @@ public class UpdateObjectsRequest extends RegistryRequestType { builder.append(", \nmode="); builder.append(mode); builder.append("]"); + builder.append(", \nusername="); + builder.append(username); + builder.append("]"); return builder.toString(); } + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + } diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/package-info.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/package-info.java index 3fa2c7bbad..14b6876718 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/package-info.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/lcm/v4/package-info.java @@ -21,5 +21,5 @@ @javax.xml.bind.annotation.XmlSchema(namespace = EbxmlNamespaces.LCM_URI, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package oasis.names.tc.ebxml.regrep.xsd.lcm.v4; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/ObjectFactory.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/ObjectFactory.java index fb84356e70..28f2a1c959 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/ObjectFactory.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/ObjectFactory.java @@ -25,7 +25,7 @@ import javax.xml.bind.annotation.XmlElementDecl; import javax.xml.bind.annotation.XmlRegistry; import javax.xml.namespace.QName; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.ISerializableObject; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryExceptionType.java index 815a2d7b11..5f7435dff6 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryExceptionType.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryExceptionType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryRequest.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryRequest.java index de175f23de..93ecd9f0b8 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryRequest.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryRequest.java @@ -42,7 +42,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryRequestType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryResponse.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryResponse.java index 3804210ccc..52376556f9 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryResponse.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/QueryResponse.java @@ -35,7 +35,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/package-info.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/package-info.java index 628ed8f178..1aec093437 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/package-info.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/query/v4/package-info.java @@ -21,5 +21,5 @@ @javax.xml.bind.annotation.XmlSchema(namespace = EbxmlNamespaces.QUERY_URI, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package oasis.names.tc.ebxml.regrep.xsd.query.v4; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ActionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ActionType.java index 2c2bb3c999..0ef43ee58e 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ActionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ActionType.java @@ -34,7 +34,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AnyValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AnyValueType.java index 633d67357b..f5282a8c0c 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AnyValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AnyValueType.java @@ -32,7 +32,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AssociationType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AssociationType.java index 05304ec5f5..bc6b32077a 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AssociationType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AssociationType.java @@ -32,7 +32,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AuditableEventType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AuditableEventType.java index 187a1eff1e..8f55f17bd6 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AuditableEventType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/AuditableEventType.java @@ -42,7 +42,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/BooleanValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/BooleanValueType.java index f1020fd526..d3283954c6 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/BooleanValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/BooleanValueType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationNodeType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationNodeType.java index b45a6c8773..9471f0ec4c 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationNodeType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationNodeType.java @@ -32,7 +32,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationSchemeType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationSchemeType.java index 7f70e00211..faf39c2dc2 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationSchemeType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationSchemeType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationType.java index 5d375799ad..3f3b36ebe8 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ClassificationType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CollectionValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CollectionValueType.java index 6935b7caf9..09e9afe816 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CollectionValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CollectionValueType.java @@ -38,7 +38,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CommentType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CommentType.java index 00669dd5bc..b8f5fda8a0 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CommentType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/CommentType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DateTimeValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DateTimeValueType.java index f93b54f9b0..047419d8ca 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DateTimeValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DateTimeValueType.java @@ -38,7 +38,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DeliveryInfoType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DeliveryInfoType.java index da0e93f5dc..fc14617485 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DeliveryInfoType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DeliveryInfoType.java @@ -35,7 +35,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DurationValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DurationValueType.java index 0889e991be..ffa0842c5e 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DurationValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DurationValueType.java @@ -33,7 +33,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DynamicObjectRefType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DynamicObjectRefType.java index 1fe06095af..ab9ea2c015 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DynamicObjectRefType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/DynamicObjectRefType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EmailAddressType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EmailAddressType.java index 325b185970..92f7a9a0c3 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EmailAddressType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EmailAddressType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EntryType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EntryType.java index 67d90ae569..1b918b8700 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EntryType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/EntryType.java @@ -37,7 +37,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtensibleObjectType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtensibleObjectType.java index 5d8f2006a0..8641ad3441 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtensibleObjectType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtensibleObjectType.java @@ -55,7 +55,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import com.raytheon.uf.common.dataplugin.persist.IPersistableDataObject; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalIdentifierType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalIdentifierType.java index 73f11b58c1..c0e38067c7 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalIdentifierType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalIdentifierType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalLinkType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalLinkType.java index e7cb7c80b3..f1009918d9 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalLinkType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExternalLinkType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtrinsicObjectType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtrinsicObjectType.java index bd81c4e8ea..1c16c6525a 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtrinsicObjectType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ExtrinsicObjectType.java @@ -41,7 +41,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FederationType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FederationType.java index 2e84fb04a3..e898104695 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FederationType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FederationType.java @@ -34,7 +34,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FloatValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FloatValueType.java index 27b0a1de23..2c9f0258a9 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FloatValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/FloatValueType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IdentifiableType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IdentifiableType.java index 1458bf0044..346508947b 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IdentifiableType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IdentifiableType.java @@ -37,7 +37,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import com.raytheon.uf.common.dataplugin.persist.IPersistableDataObject; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IntegerValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IntegerValueType.java index 6619474b51..51521ef5bc 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IntegerValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/IntegerValueType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringType.java index d450c0937e..dfa23ed32d 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringType.java @@ -43,7 +43,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringValueType.java index 1f4a708aa0..6c80db59a3 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/InternationalStringValueType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/LocalizedStringType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/LocalizedStringType.java index 322b82472d..19ddb0eede 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/LocalizedStringType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/LocalizedStringType.java @@ -37,7 +37,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapType.java index 5bd280d513..60cab48212 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapType.java @@ -43,7 +43,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapValueType.java index 7f2d5a1245..c94deb927f 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/MapValueType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/NotificationType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/NotificationType.java index c5278e69bd..b62a5a92fa 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/NotificationType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/NotificationType.java @@ -38,7 +38,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Cascade; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectFactory.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectFactory.java index 323987a784..28b6fe64b5 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectFactory.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectFactory.java @@ -25,7 +25,7 @@ import javax.xml.bind.annotation.XmlElementDecl; import javax.xml.bind.annotation.XmlRegistry; import javax.xml.namespace.QName; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.ISerializableObject; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefListType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefListType.java index 65abd715ca..fcafd8bd76 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefListType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefListType.java @@ -41,7 +41,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefType.java index b29c134dbb..d34cd5758d 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ObjectRefType.java @@ -39,7 +39,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import com.raytheon.uf.common.dataplugin.persist.IPersistableDataObject; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/OrganizationType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/OrganizationType.java index 274286da81..9bb257e821 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/OrganizationType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/OrganizationType.java @@ -39,7 +39,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ParameterType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ParameterType.java index 4dc32bc560..ef112e64e2 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ParameterType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ParameterType.java @@ -37,7 +37,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PartyType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PartyType.java index a32e08d46e..b7677dab47 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PartyType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PartyType.java @@ -34,7 +34,7 @@ import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlSeeAlso; import javax.xml.bind.annotation.XmlType; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonNameType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonNameType.java index 06fc3c0e63..876f951771 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonNameType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonNameType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonType.java index 0970bb1741..a1192b98f7 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PersonType.java @@ -34,7 +34,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PostalAddressType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PostalAddressType.java index 354f1ced26..cab84a4887 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PostalAddressType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/PostalAddressType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryDefinitionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryDefinitionType.java index 16f3c962e7..9c9bfc2912 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryDefinitionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryDefinitionType.java @@ -38,7 +38,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryExpressionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryExpressionType.java index 3805914997..20b22f476f 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryExpressionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryExpressionType.java @@ -32,7 +32,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryType.java index 06e3fdb7a8..0b6089d085 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/QueryType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectListType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectListType.java index f2d2728189..775d0b7507 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectListType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectListType.java @@ -44,7 +44,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Cascade; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectType.java index 68ef65d3ed..6e28346cd1 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryObjectType.java @@ -45,7 +45,7 @@ import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Cascade; import org.hibernate.annotations.Index; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @@ -93,6 +93,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * 2012 bphillip Initial implementation * 10/17/2013 1682 bphillip Added software history * 12/2/2013 1829 bphillip Made ExtensibleObjectType persistable, modified persistence annotations, added hashCode, toString and equals + * 7/10/2014 1717 bphillip Added default user *
      * * @author bphillip @@ -122,6 +123,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; public class RegistryObjectType extends IdentifiableType { private static final long serialVersionUID = -7436174012584469534L; + + public static final String SYSTEM_USER = "System"; @XmlElement(name = "Name") @DynamicSerializeElement @@ -172,7 +175,7 @@ public class RegistryObjectType extends IdentifiableType { @XmlAttribute @DynamicSerializeElement - protected String owner; + protected String owner = SYSTEM_USER; @XmlAttribute @DynamicSerializeElement diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryPackageType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryPackageType.java index 4fa994b720..4e8262d2b5 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryPackageType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryPackageType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryType.java index 6ed8f9d90c..cafe655eff 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RegistryType.java @@ -37,7 +37,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RoleType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RoleType.java index 316678716d..62eeae783b 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RoleType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/RoleType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceBindingType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceBindingType.java index cdfaf78da1..7b97077415 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceBindingType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceBindingType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceEndpointType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceEndpointType.java index d282e6a7a1..93a00c7964 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceEndpointType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceEndpointType.java @@ -32,7 +32,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceInterfaceType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceInterfaceType.java index 87783cd817..d989e35e4a 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceInterfaceType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceInterfaceType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceType.java index b8805901aa..09c1bf06f8 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ServiceType.java @@ -38,7 +38,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SimpleLinkType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SimpleLinkType.java index 4c721344d3..37a60aa561 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SimpleLinkType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SimpleLinkType.java @@ -32,7 +32,7 @@ import org.w3.v1999.xlink.ActuateType; import org.w3.v1999.xlink.ShowType; import org.w3.v1999.xlink.TypeType; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotType.java index 6c23308767..f06233c095 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotType.java @@ -40,7 +40,7 @@ import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Index; import com.raytheon.uf.common.dataplugin.persist.IPersistableDataObject; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotValueType.java index 0f80e387bc..f8a482a549 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SlotValueType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringQueryExpressionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringQueryExpressionType.java index 92d8539886..2c248d2a0a 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringQueryExpressionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringQueryExpressionType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringValueType.java index 09989b8f91..35098b886b 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/StringValueType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SubscriptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SubscriptionType.java index c1d42f97ca..3de9ee13ed 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SubscriptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/SubscriptionType.java @@ -44,7 +44,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TaxonomyElementType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TaxonomyElementType.java index 06dfe6d182..cbbdf74f23 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TaxonomyElementType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TaxonomyElementType.java @@ -36,7 +36,7 @@ import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlSeeAlso; import javax.xml.bind.annotation.XmlType; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TelephoneNumberType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TelephoneNumberType.java index 895f87f42d..c354b20676 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TelephoneNumberType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/TelephoneNumberType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ValueType.java index 00380b83cf..6cfbcc0d82 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/ValueType.java @@ -38,7 +38,7 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; import com.raytheon.uf.common.dataplugin.persist.IPersistableDataObject; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermType.java index c1421a2993..e32863a6c6 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermType.java @@ -34,7 +34,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermValueType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermValueType.java index 69178b5831..b2fd948e51 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermValueType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/VocabularyTermValueType.java @@ -32,7 +32,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/WorkflowActionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/WorkflowActionType.java index 28918c4b95..f04eba75f6 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/WorkflowActionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/WorkflowActionType.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/XMLQueryExpressionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/XMLQueryExpressionType.java index afd1b2dd3a..b7c07c47d4 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/XMLQueryExpressionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/XMLQueryExpressionType.java @@ -34,7 +34,7 @@ import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.Type; import org.w3c.dom.Element; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/package-info.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/package-info.java index 35081a00fa..9c55a9159d 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/package-info.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rim/v4/package-info.java @@ -21,5 +21,5 @@ @javax.xml.bind.annotation.XmlSchema(namespace = EbxmlNamespaces.RIM_URI, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package oasis.names.tc.ebxml.regrep.xsd.rim.v4; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthenticationExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthenticationExceptionType.java index 7c0e759ccb..91962061da 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthenticationExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthenticationExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthorizationExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthorizationExceptionType.java index 1f81830d38..807949bb73 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthorizationExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/AuthorizationExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/InvalidRequestExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/InvalidRequestExceptionType.java index ce961c27f0..7471e0d0a6 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/InvalidRequestExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/InvalidRequestExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectExistsExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectExistsExceptionType.java index 94ba400362..1e9d335060 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectExistsExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectExistsExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectFactory.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectFactory.java index 2c1f9dae96..7fd0b76ba1 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectFactory.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectFactory.java @@ -25,7 +25,7 @@ import javax.xml.bind.annotation.XmlElementDecl; import javax.xml.bind.annotation.XmlRegistry; import javax.xml.namespace.QName; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.ISerializableObject; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectNotFoundExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectNotFoundExceptionType.java index 019d1e9a6e..b735ab2908 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectNotFoundExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ObjectNotFoundExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/QuotaExceededExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/QuotaExceededExceptionType.java index 305d67516f..a620ae93e0 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/QuotaExceededExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/QuotaExceededExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ReferencesExistExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ReferencesExistExceptionType.java index 7585813bf6..75ffc47f3e 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ReferencesExistExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/ReferencesExistExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryExceptionType.java index 1446b77625..89d7ccaf8e 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryExceptionType.java @@ -38,7 +38,7 @@ import oasis.names.tc.ebxml.regrep.xsd.spi.v4.ValidationExceptionType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryRequestType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryRequestType.java index eab70390cd..096af740c5 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryRequestType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryRequestType.java @@ -45,7 +45,7 @@ import oasis.names.tc.ebxml.regrep.xsd.spi.v4.ValidateObjectsRequest; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryResponseType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryResponseType.java index 8060935925..5cb81e0347 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryResponseType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/RegistryResponseType.java @@ -54,8 +54,8 @@ import oasis.names.tc.ebxml.regrep.xsd.spi.v4.ValidateObjectsResponse; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.EbxmlNamespaces; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.common.util.CollectionUtil; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/TimeoutExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/TimeoutExceptionType.java index 0c41b7f569..0a390261f1 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/TimeoutExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/TimeoutExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnresolvedReferenceExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnresolvedReferenceExceptionType.java index fc9eb10f62..a6597c9ee7 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnresolvedReferenceExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnresolvedReferenceExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnsupportedCapabilityExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnsupportedCapabilityExceptionType.java index 33113aadb6..d093f755a5 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnsupportedCapabilityExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/UnsupportedCapabilityExceptionType.java @@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/package-info.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/package-info.java index 51e82e1010..6cc153f544 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/package-info.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/rs/v4/package-info.java @@ -21,5 +21,5 @@ @javax.xml.bind.annotation.XmlSchema(namespace = EbxmlNamespaces.RS_URI, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package oasis.names.tc.ebxml.regrep.xsd.rs.v4; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsRequest.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsRequest.java index 48653bf910..4975c880b8 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsRequest.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsRequest.java @@ -45,8 +45,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryRequestType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.EbxmlNamespaces; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsResponse.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsResponse.java index cb47725675..0e96c7a60d 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsResponse.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogObjectsResponse.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogingExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogingExceptionType.java index 9c26246cf4..c44634b3b5 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogingExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/CatalogingExceptionType.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryExceptionType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsRequest.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsRequest.java index 9403d50d88..b2547f9c3c 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsRequest.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsRequest.java @@ -42,7 +42,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryRequestType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsResponse.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsResponse.java index 1136843cd5..84a731b0f6 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsResponse.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilterObjectsResponse.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilteringExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilteringExceptionType.java index 428d5f4dd5..c68d926eff 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilteringExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/FilteringExceptionType.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryExceptionType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsRequest.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsRequest.java index 9b93d34a89..9ddade15dc 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsRequest.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsRequest.java @@ -46,8 +46,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryRequestType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.EbxmlNamespaces; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsResponse.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsResponse.java index 2d723e1e50..62b0fa5222 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsResponse.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidateObjectsResponse.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidationExceptionType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidationExceptionType.java index fa9e2eb934..87fc1bcb58 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidationExceptionType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/ValidationExceptionType.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryExceptionType; import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import com.raytheon.uf.common.registry.RegrepUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.RegrepUtil; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/package-info.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/package-info.java index ef4ca332a4..1ff134d2dc 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/package-info.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/oasis/names/tc/ebxml/regrep/xsd/spi/v4/package-info.java @@ -21,5 +21,5 @@ @javax.xml.bind.annotation.XmlSchema(namespace = EbxmlNamespaces.SPI_URI, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package oasis.names.tc.ebxml.regrep.xsd.spi.v4; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ArcType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ArcType.java index f951d230a6..71042256c2 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ArcType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ArcType.java @@ -32,7 +32,7 @@ import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Extended.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Extended.java index 843bf87b8b..539c97f0fa 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Extended.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Extended.java @@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlElements; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/LocatorType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/LocatorType.java index 1263cf009c..e8e9003db4 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/LocatorType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/LocatorType.java @@ -32,7 +32,7 @@ import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ObjectFactory.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ObjectFactory.java index 7a33a1181d..ace94ca31e 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ObjectFactory.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ObjectFactory.java @@ -25,7 +25,7 @@ import javax.xml.bind.annotation.XmlElementDecl; import javax.xml.bind.annotation.XmlRegistry; import javax.xml.namespace.QName; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * This object contains factory methods for each Java content interface and Java diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ResourceType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ResourceType.java index 39bb1e3b54..b9d243df7c 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ResourceType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/ResourceType.java @@ -35,7 +35,7 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import org.w3c.dom.Element; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Simple.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Simple.java index 93fcb265b6..dcffb78591 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Simple.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/Simple.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.w3c.dom.Element; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/TitleEltType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/TitleEltType.java index bc18a81c1f..da9f467d38 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/TitleEltType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/TitleEltType.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlType; import org.w3c.dom.Element; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/package-info.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/package-info.java index c018c620a9..cfede46572 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/package-info.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v1999/xlink/package-info.java @@ -21,5 +21,5 @@ @javax.xml.bind.annotation.XmlSchema(namespace = EbxmlNamespaces.XLINK_URI, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package org.w3.v1999.xlink; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/ObjectFactory.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/ObjectFactory.java index 4ba6aac7ba..e1c87578bd 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/ObjectFactory.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/ObjectFactory.java @@ -32,7 +32,7 @@ import javax.xml.bind.annotation.XmlElementDecl; import javax.xml.bind.annotation.XmlRegistry; import javax.xml.namespace.QName; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * This object contains factory methods for each Java content interface and Java diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/RelatesToType.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/RelatesToType.java index ef635d2135..de64692591 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/RelatesToType.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/RelatesToType.java @@ -40,7 +40,7 @@ import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.XmlValue; import javax.xml.namespace.QName; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; diff --git a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/package-info.java b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/package-info.java index 0bcd4d2077..4f89bd6f6e 100644 --- a/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/package-info.java +++ b/edexOsgi/com.raytheon.uf.common.registry.schemas.ebxml/src/org/w3/v200508/addressing/package-info.java @@ -28,5 +28,5 @@ @javax.xml.bind.annotation.XmlSchema(namespace = EbxmlNamespaces.ADDRESSING_URI, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package org.w3.v200508.addressing; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; diff --git a/edexOsgi/com.raytheon.uf.common.site/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.site/META-INF/MANIFEST.MF index b2622c2a51..9c1c1ab838 100644 --- a/edexOsgi/com.raytheon.uf.common.site/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.site/META-INF/MANIFEST.MF @@ -2,16 +2,14 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Site Plug-in Bundle-SymbolicName: com.raytheon.uf.common.site -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Require-Bundle: com.raytheon.uf.common.localization;bundle-version="1.12.1130", - com.raytheon.uf.common.status;bundle-version="1.12.1130", - com.raytheon.uf.common.serialization;bundle-version="1.12.1130", - com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", - com.raytheon.uf.common.pointdata;bundle-version="1.12.1174" +Require-Bundle: com.raytheon.uf.common.localization, + com.raytheon.uf.common.status, + com.raytheon.uf.common.serialization, + com.raytheon.uf.common.serialization.comm Export-Package: com.raytheon.uf.common.site, - com.raytheon.uf.common.site.ingest, com.raytheon.uf.common.site.notify, com.raytheon.uf.common.site.requests, com.raytheon.uf.common.site.xml diff --git a/edexOsgi/com.raytheon.uf.common.sounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.sounding/META-INF/MANIFEST.MF index ae66d2c953..a4acfba8f9 100644 --- a/edexOsgi/com.raytheon.uf.common.sounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.sounding/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Sounding Plug-in Bundle-SymbolicName: com.raytheon.uf.common.sounding -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.pointdata;bundle-version="1.11.31", com.raytheon.uf.common.dataplugin;bundle-version="1.11.31", com.raytheon.uf.common.geospatial;bundle-version="1.12.1174", diff --git a/edexOsgi/com.raytheon.uf.common.sounding/src/com/raytheon/uf/common/sounding/VerticalSounding.java b/edexOsgi/com.raytheon.uf.common.sounding/src/com/raytheon/uf/common/sounding/VerticalSounding.java index fe6880f9a4..acb27edec7 100644 --- a/edexOsgi/com.raytheon.uf.common.sounding/src/com/raytheon/uf/common/sounding/VerticalSounding.java +++ b/edexOsgi/com.raytheon.uf.common.sounding/src/com/raytheon/uf/common/sounding/VerticalSounding.java @@ -48,6 +48,7 @@ import com.vividsolutions.jts.geom.Geometry; * 15Jan2008 682 ebabin Updated to remove non calculated parameters. * 16Jan2008 682 ebabin Updates for grib model traps on multiple loads. * 04Oct2008 dhladky Many changes. + * Jul 23, 2014 3410 bclement location changed to floats *
      * * @author jkorman @@ -598,7 +599,7 @@ public class VerticalSounding implements Iterable, Cloneable { * Set the geometry latitude. * */ - public void setLatitude(double latitude) { + public void setLatitude(float latitude) { spatialInfo.setLatitude(latitude); } @@ -606,7 +607,7 @@ public class VerticalSounding implements Iterable, Cloneable { * Set the geometry longitude. * */ - public void setLongitude(double longitude) { + public void setLongitude(float longitude) { spatialInfo.setLongitude(longitude); } diff --git a/edexOsgi/com.raytheon.uf.common.tafqueue/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.common.tafqueue/META-INF/MANIFEST.MF index 1ada5a101a..eac67c2e03 100644 --- a/edexOsgi/com.raytheon.uf.common.tafqueue/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.common.tafqueue/META-INF/MANIFEST.MF @@ -2,15 +2,17 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Tafqueue Bundle-SymbolicName: com.raytheon.uf.common.tafqueue -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Require-Bundle: com.raytheon.edex.common;bundle-version="1.12.1174", - com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", +Require-Bundle: com.raytheon.uf.common.serialization.comm, javax.persistence;bundle-version="1.0.0", org.apache.commons.lang;bundle-version="2.3.0", - com.raytheon.uf.common.status;bundle-version="1.12.1174", - com.raytheon.uf.common.auth;bundle-version="1.12.1174" + com.raytheon.uf.common.status, + com.raytheon.uf.common.auth, + com.raytheon.uf.common.serialization, + org.hibernate;bundle-version="3.5.6" Export-Package: com.raytheon.uf.common.tafqueue -Import-Package: com.raytheon.uf.common.localization, +Import-Package: com.raytheon.uf.common.dataplugin.persist, + com.raytheon.uf.common.localization, org.apache.commons.configuration diff --git a/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRecord.java b/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRecord.java index 5e59b69eee..2e4f279fb4 100644 --- a/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRecord.java +++ b/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRecord.java @@ -48,6 +48,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; * Aug 27, 2009 avarani Initial creation * Apr 30, 2012 14715 rferrel Refactored and moved. * Mar 21, 2013 15375 zhao Modified getInfo() to also handle VFT product + * May 07, 2014 3091 rferrel Use OUP authorization to bring up send dialog. * *
      * @@ -57,7 +58,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @Entity @Table(name = "taf_queue") @DynamicSerialize -public class TafQueueRecord implements IPersistableDataObject, +public class TafQueueRecord implements IPersistableDataObject, Comparable { private static final long serialVersionUID = 1L; @@ -73,7 +74,7 @@ public class TafQueueRecord implements IPersistableDataObject, @DynamicSerializeElement @Column - private int forecasterId; + private String forecasterId; @DynamicSerializeElement @Column(columnDefinition = "timestamp without time zone", nullable = false) @@ -134,7 +135,7 @@ public class TafQueueRecord implements IPersistableDataObject, * @param stationId * @param headerTime */ - public TafQueueRecord(int forecasterId, Date xmitTime, String tafText, + public TafQueueRecord(String forecasterId, Date xmitTime, String tafText, String bbb, String siteId, String wmoId, String stationId, Date headerTime) { this.forecasterId = forecasterId; @@ -159,14 +160,14 @@ public class TafQueueRecord implements IPersistableDataObject, */ public String getInfo() { String productTag = "TAF"; - if (forecasterId == TafQueueVftConfigMgr.getInstance().getFcstid()) { // for - // VFT - // product - // (DR15375) + // for VFT product (DR15375) + if ((forecasterId != null) + && forecasterId.equals(TafQueueVftConfigMgr.getInstance() + .getFcstid())) { productTag = "VFT"; } return String - .format("%1$03d-%7$s%8$s%5$s-%6$s-%7$s-%2$ty%2$tm%2$td%2$tH%2$tM-%4$s-%9$d", + .format("%1$s-%7$s%8$s%5$s-%6$s-%7$s-%2$ty%2$tm%2$td%2$tH%2$tM-%4$s-%9$d", forecasterId, headerTime, tafText, bbb, siteId, wmoId, stationId, productTag, (xmitTime.getTime() / 1000)); } @@ -241,11 +242,11 @@ public class TafQueueRecord implements IPersistableDataObject, this.id = id; } - public int getForecasterId() { + public String getForecasterId() { return forecasterId; } - public void setForecasterId(int forecasterId) { + public void setForecasterId(String forecasterId) { this.forecasterId = forecasterId; } @@ -297,9 +298,15 @@ public class TafQueueRecord implements IPersistableDataObject, this.wmoId = wmoId; } + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.common.dataplugin.persist.IPersistableDataObject# + * getIdentifier() + */ @Override - public Object getIdentifier() { - return id; + public Integer getIdentifier() { + return getId(); } public String toString() { diff --git a/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRequest.java b/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRequest.java index dca2827b6f..cb712c8734 100644 --- a/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRequest.java +++ b/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueRequest.java @@ -39,6 +39,7 @@ import com.raytheon.uf.common.serialization.comm.IServerRequest; * ------------ ---------- ----------- -------------------------- * May 3, 2012 14715 rferrel Initial creation * Jun 07, 2013 1981 mpduff This is now an AbstractPrivilegedRequest + * May 08, 2014 3091 rferrel Added CHECK_AUTHORIZED. * * * @@ -50,7 +51,7 @@ public class TafQueueRequest extends AbstractPrivilegedRequest implements IServerRequest { public enum Type { - UNKNOWN, CREATE, GET_LIST, GET_LOG, GET_TAFS, REMOVE_SELECTED, RETRANSMIT + UNKNOWN, CREATE, GET_LIST, GET_LOG, GET_TAFS, REMOVE_SELECTED, RETRANSMIT, CHECK_AUTHORIZED } @DynamicSerializeElement diff --git a/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueVftConfigMgr.java b/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueVftConfigMgr.java index d12b523053..2160460972 100644 --- a/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueVftConfigMgr.java +++ b/edexOsgi/com.raytheon.uf.common.tafqueue/src/com/raytheon/uf/common/tafqueue/TafQueueVftConfigMgr.java @@ -24,6 +24,7 @@ import java.io.File; import org.apache.commons.configuration.ConfigurationException; import org.apache.commons.configuration.HierarchicalINIConfiguration; +import org.apache.commons.lang.math.NumberUtils; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; @@ -36,7 +37,8 @@ import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; /** - * This class is used to read in configuration for AvnFPS verification (VFT) product. + * This class is used to read in configuration for AvnFPS verification (VFT) + * product. * *
        * 
      @@ -45,129 +47,160 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Mar 21, 2013 15375      zhao        Initial creation
      + * May 07, 2014 3091       rferrel     fcstid now a string.
        * 
        * 
      * * @author zhao - * + * */ public class TafQueueVftConfigMgr { - - private final IUFStatusHandler statusHandler = UFStatus.getHandler(TafQueueVftConfigMgr.class); - + + private final IUFStatusHandler statusHandler = UFStatus + .getHandler(TafQueueVftConfigMgr.class); + private static TafQueueVftConfigMgr instance = null; - - private String wmoid = "NXUS98"; // default, to be replaced by wmo in config file - private String siteid = "OAX"; // default (siteid in taf_queue table) - private String stationid = "KOAX"; // default (stationid in taf_queue table) - private int fcstid = 0; // default forecasterid for VFT - private int period = 6; // number of hours; default period for VFT product creation, to be replaced by period in config file - + + /** Default, to be replaced by wmo in config file. */ + private String wmoid = "NXUS98"; + + /** Default (siteid in taf_queue table). */ + private String siteid = "OAX"; + + /** Default (stationid in taf_queue table). */ + private String stationid = "KOAX"; + + /** Default forecasterid for VFT. */ + private String fcstid = "000"; + + /** + * Number of hours; default period for VFT product creation, to be replaced + * by period in config file. + */ + private int period = 6; + /** * BBB field for VFT product; non-configurable */ - private String bbb = "___"; - - private static final String XMIT_FILE = "aviation" + File.separator + "config" + File.separator + "xmit.cfg"; - - private HierarchicalINIConfiguration xmitConfig = null; - - public static TafQueueVftConfigMgr getInstance() { - if ( instance == null ) { - instance = new TafQueueVftConfigMgr(); - } - return instance; + private String bbb = "___"; + + private static final String XMIT_FILE = "aviation" + File.separator + + "config" + File.separator + "xmit.cfg"; + + private HierarchicalINIConfiguration xmitConfig = null; + + public static synchronized TafQueueVftConfigMgr getInstance() { + if (instance == null) { + instance = new TafQueueVftConfigMgr(); + } + return instance; } private TafQueueVftConfigMgr() { - // read in configuration - loadXmitConfigFile(); - if ( xmitConfig != null ) { - readConfiguration(); - } + // read in configuration + loadXmitConfigFile(); + if (xmitConfig != null) { + readConfiguration(); + } } - - private void loadXmitConfigFile() { + + private void loadXmitConfigFile() { IPathManager pm = PathManagerFactory.getPathManager(); - LocalizationContext context = pm.getContext(LocalizationType.CAVE_STATIC, LocalizationLevel.SITE); + LocalizationContext context = pm.getContext( + LocalizationType.CAVE_STATIC, LocalizationLevel.SITE); LocalizationFile lFile = pm.getLocalizationFile(context, XMIT_FILE); HierarchicalINIConfiguration config = new HierarchicalINIConfiguration(); config.setDelimiterParsingDisabled(true); try { - config.load(lFile.getFile()); - } catch (ConfigurationException e) { - statusHandler.handle(Priority.PROBLEM, "Tafqueue VFT Configuration Manager: loading xmit.cfg file failed.\n" + e.getLocalizedMessage(), e); - return; - } - this.xmitConfig =config; - } - - private void readConfiguration() { - try { - String wmo = xmitConfig.getString("verification.wmo"); - String [] wmosplits = wmo.split(" "); - wmoid = wmosplits[0]; - stationid = wmosplits[1]; - siteid = stationid.substring(1); - String fcstidStr = xmitConfig.getString("verification.fcstid"); - fcstid = Integer.parseInt(fcstidStr); - String periodStr = xmitConfig.getString("verification.period"); - period = Integer.parseInt(periodStr); - } catch (Exception e) { - statusHandler.handle(Priority.PROBLEM, "Tafqueue VFT Configuration Manager: error occurred while reading configuration.\n" + e.getLocalizedMessage(), e); - e.printStackTrace(); - return; - } - statusHandler.handle(Priority.INFO, "Tafqueue VFT Configuration Manager: wmo = " + wmoid + " " + stationid + "; forecasterid = " + fcstid + "; period = " + period ); - return; - } + config.load(lFile.getFile()); + } catch (ConfigurationException e) { + statusHandler.handle(Priority.PROBLEM, + "Tafqueue VFT Configuration Manager: loading xmit.cfg file failed.\n" + + e.getLocalizedMessage(), e); + return; + } + this.xmitConfig = config; + } - public String getWmoid() { - return wmoid; - } + private void readConfiguration() { + try { + String wmo = xmitConfig.getString("verification.wmo"); + String[] wmosplits = wmo.split(" "); + wmoid = wmosplits[0]; + stationid = wmosplits[1]; + siteid = stationid.substring(1); + String fcstidStr = xmitConfig.getString("verification.fcstid"); + if (fcstidStr != null) { + setFcstid(fcstidStr); + } + String periodStr = xmitConfig.getString("verification.period"); + period = Integer.parseInt(periodStr); + } catch (Exception e) { + statusHandler + .handle(Priority.PROBLEM, + "Tafqueue VFT Configuration Manager: error occurred while reading configuration.\n" + + e.getLocalizedMessage(), e); + return; + } + statusHandler.handle(Priority.INFO, + "Tafqueue VFT Configuration Manager: wmo = " + wmoid + " " + + stationid + "; forecasterid = " + fcstid + + "; period = " + period); + return; + } - public void setWmoid(String wmoid) { - this.wmoid = wmoid; - } + public String getWmoid() { + return wmoid; + } - public String getSiteid() { - return siteid; - } + public void setWmoid(String wmoid) { + this.wmoid = wmoid; + } - public void setSiteid(String siteid) { - this.siteid = siteid; - } + public String getSiteid() { + return siteid; + } - public String getStationid() { - return stationid; - } + public void setSiteid(String siteid) { + this.siteid = siteid; + } - public void setStationid(String stationid) { - this.stationid = stationid; - } + public String getStationid() { + return stationid; + } - public int getFcstid() { - return fcstid; - } + public void setStationid(String stationid) { + this.stationid = stationid; + } - public void setFcstid(int fcstid) { - this.fcstid = fcstid; - } + public String getFcstid() { + return fcstid; + } - public int getPeriod() { - return period; - } + public void setFcstid(String fcstid) { + if (NumberUtils.isNumber(fcstid)) { + // Handle old style ids. + int id = Integer.parseInt(fcstid); + this.fcstid = String.format("%03d", id); + } else { + this.fcstid = fcstid; + } + } - public void setPeriod(int period) { - this.period = period; - } + public int getPeriod() { + return period; + } - public String getBbb() { - return bbb; - } + public void setPeriod(int period) { + this.period = period; + } + + public String getBbb() { + return bbb; + } + + public void setBbb(String bbb) { + this.bbb = bbb; + } - public void setBbb(String bbb) { - this.bbb = bbb; - } - } diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.activetable/META-INF/MANIFEST.MF index 39297c5ed9..3708e1183b 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.activetable/META-INF/MANIFEST.MF @@ -2,9 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Activetablesrv Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.activetable -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.uf.common.activetable, com.raytheon.uf.common.dataplugin.warning, com.raytheon.uf.common.python, @@ -26,6 +26,8 @@ Require-Bundle: com.raytheon.uf.common.localization;bundle-version="1.11.1", com.raytheon.uf.edex.site;bundle-version="1.0.0", com.google.guava;bundle-version="1.0.0", com.raytheon.uf.edex.auth;bundle-version="1.12.1174", - com.raytheon.uf.common.serialization.comm -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization + com.raytheon.uf.common.serialization.comm, + org.apache.commons.io;bundle-version="2.4.0", + com.raytheon.uf.edex.requestsrv;bundle-version="1.14.0", + com.raytheon.uf.edex.python.decoder Export-Package: com.raytheon.uf.edex.activetable diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-common.xml b/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-common.xml index ef83b1b3dc..9368d4ac74 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-common.xml +++ b/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-common.xml @@ -1,86 +1,25 @@ - - + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - java.lang.Throwable - - - - - - - - - - ${body?.drtString} - - - ${body?.offsetSeconds} - - - ${body?.notifyGFE} - - - - - - - - ${header?.notifygfe.booleanValue} - - - - - - java.lang.Throwable - - - - - + diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-ingest.xml b/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-ingest.xml index 434c097ac8..5711041eb2 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-ingest.xml @@ -1,44 +1,70 @@ - - + - - + + + + + + + + + + + + + + - + java.lang.Throwable - - - - + + + + + + - - - - + + + + ${body?.notifyGFE} + + + ${body?.drtString} + + + + + + + ${header?.notifygfe.booleanValue} + + + + + + + + + + + java.lang.Throwable - + + - - - - - + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-request.xml b/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-request.xml index 53d0d5f4e8..120497e66e 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.activetable/res/spring/activetable-request.xml @@ -1,104 +1,100 @@ - - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - - - - - - - - - - + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - + - - - + + + - + - - - + + + - + - - - + + + - + - - - + + + - + - - - - - - - - java.lang.Throwable - - + + + + + + + + java.lang.Throwable + + - - - - - + + + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTable.java b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTable.java index 0bab83be37..2c5e9db8a7 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTable.java +++ b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTable.java @@ -22,17 +22,18 @@ package com.raytheon.uf.edex.activetable; import java.io.File; import java.util.Arrays; import java.util.Calendar; +import java.util.Collection; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.TreeSet; import jep.JepException; import org.apache.log4j.Logger; -import com.raytheon.edex.util.Util; +import com.raytheon.edex.site.SiteUtil; import com.raytheon.uf.common.activetable.ActiveTableMode; import com.raytheon.uf.common.activetable.ActiveTableRecord; import com.raytheon.uf.common.activetable.MergeResult; @@ -49,9 +50,13 @@ import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.python.PyUtil; import com.raytheon.uf.common.python.PythonScript; import com.raytheon.uf.common.site.SiteMap; +import com.raytheon.uf.common.status.IPerformanceStatusHandler; import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.PerformanceStatus; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.time.util.ITimer; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.edex.core.EDEXUtil; @@ -81,6 +86,15 @@ import com.raytheon.uf.edex.database.query.DatabaseQuery; * Aug 29, 2013 1843 dgilling Move ETN related methods to * GetNextEtnUtil. * Mar 06, 2014 2883 randerso Pass siteId into python code + * Apr 10, 2014 3004 dgilling Remove ActiveTableMode parameter from + * clearPracticeTable(). + * May 15, 2014 3157 dgilling Add support for multiple TPC and SPC + * issuing sites. + * Jun 17, 2014 3296 randerso Cached PythonScript. Moved active table + * backup and purging to a separate thread. + * Added performance logging + * Nov 14, 2014 4953 randerso Moved dumpProductToTempFile into PracticeVtecDecoder + * since it had no reason to be in this class * * * @@ -95,9 +109,44 @@ public class ActiveTable { private static final Logger changeLog = Logger .getLogger("ActiveTableChange"); - private static String filePath; + private static ThreadLocal threadLocalPythonScript = new ThreadLocal() { - private static String includePath; + /* + * (non-Javadoc) + * + * @see java.lang.ThreadLocal#initialValue() + */ + @Override + protected PythonScript initialValue() { + try { + ITimer timer = TimeUtil.getTimer(); + timer.start(); + IPathManager pathMgr = PathManagerFactory.getPathManager(); + LocalizationContext commonCx = pathMgr.getContext( + LocalizationType.COMMON_STATIC, LocalizationLevel.BASE); + String filePath = pathMgr.getFile(commonCx, + "vtec" + File.separator + "ActiveTable.py").getPath(); + String siteId = pathMgr.getContext( + LocalizationType.COMMON_STATIC, LocalizationLevel.SITE) + .getContextName(); + String includePath = PyUtil.buildJepIncludePath( + ActiveTablePyIncludeUtil.getCommonPythonIncludePath(), + ActiveTablePyIncludeUtil.getVtecIncludePath(siteId), + ActiveTablePyIncludeUtil + .getGfeConfigIncludePath(siteId)); + + PythonScript python = new PythonScript(filePath, includePath, + ActiveTable.class.getClassLoader()); + timer.stop(); + PerformanceStatus.getHandler("ActiveTable").logDuration( + "create PythonScript", timer.getElapsedTime()); + return python; + } catch (JepException e) { + throw new RuntimeException(e); + } + } + + }; private static CoreDao practiceDao = new CoreDao( DaoConfig.forClass(PracticeActiveTableRecord.class)); @@ -105,25 +154,9 @@ public class ActiveTable { private static CoreDao operationalDao = new CoreDao( DaoConfig.forClass(OperationalActiveTableRecord.class)); - private PythonScript python; - - static { - IPathManager pathMgr = PathManagerFactory.getPathManager(); - LocalizationContext commonCx = pathMgr.getContext( - LocalizationType.COMMON_STATIC, LocalizationLevel.BASE); - filePath = pathMgr.getFile(commonCx, - "vtec" + File.separator + "ActiveTable.py").getPath(); - String siteId = pathMgr.getContext(LocalizationType.COMMON_STATIC, - LocalizationLevel.SITE).getContextName(); - String pythonPath = ActiveTablePyIncludeUtil - .getCommonPythonIncludePath(); - String vtecPath = ActiveTablePyIncludeUtil.getVtecIncludePath(siteId); - String configPath = ActiveTablePyIncludeUtil - .getGfeConfigIncludePath(siteId); - includePath = PyUtil.buildJepIncludePath(pythonPath, vtecPath, - configPath); - } - + /** + * Default constructor + */ public ActiveTable() { } @@ -152,6 +185,10 @@ public class ActiveTable { * the active table mode (PRACTICE or OPERATIONAL) * @param phensigList * phensigs to include. If null, all phensigs will be included. + * @param act + * the VTEC action. If null all actions will be included + * @param etn + * the ETN. If null all ETNs will be included * @param requestValidTimes * true if only valid times are to be returned * @return the active table corresponding to the input parameters @@ -171,6 +208,10 @@ public class ActiveTable { * the active table mode (PRACTICE or OPERATIONAL) * @param phensigList * phensigs to include. If null, all phensigs will be included. + * @param act + * the VTEC action. If null all actions will be included + * @param etn + * the ETN. If null all ETNs will be included * @param requestValidTimes * true if only valid times are to be returned * @param wfos @@ -183,33 +224,19 @@ public class ActiveTable { ActiveTableMode mode, String phensigList, String act, String etn, String[] wfos) { - if (wfos == null || !Arrays.asList(wfos).contains("all")) { - SiteMap siteMap = SiteMap.getInstance(); + if ((wfos == null) || !Arrays.asList(wfos).contains("all")) { - if (wfos == null || wfos.length == 0) { + if ((wfos == null) || (wfos.length == 0)) { // default to WFOs from VTECPartners - // Use the 3-char site or VTEC_DECODER_SITES will be empty - Set site3s = siteMap.getSite3LetterIds(siteId); - Set wfoSet = new TreeSet(); - for (String site3 : site3s) { - VTECPartners vtecPartners = VTECPartners.getInstance(site3); - List wfoList = (List) vtecPartners - .getattr("VTEC_DECODER_SITES"); - wfoSet.addAll(wfoList); - String spcSite = (String) vtecPartners - .getattr("VTEC_SPC_SITE"); - wfoSet.add(spcSite); - String tpcSite = (String) vtecPartners - .getattr("VTEC_TPC_SITE"); - wfoSet.add(tpcSite); - } + Set wfoSet = getDecoderSites(siteId); wfoSet.add(siteId); wfos = wfoSet.toArray(new String[0]); } // We have an array of 3- or 4-char WFOs to filter against. // We need a String "KMFL,KTBW,..." for the query. + SiteMap siteMap = SiteMap.getInstance(); StringBuilder wfosb = new StringBuilder(); String sep = ""; for (String wfo : wfos) { @@ -226,6 +253,26 @@ public class ActiveTable { false); } + private static Set getDecoderSites(String siteId) { + SiteMap siteMap = SiteMap.getInstance(); + + // Use the 3-char site or VTEC_DECODER_SITES will be empty + Set site3s = siteMap.getSite3LetterIds(siteId); + Set wfoSet = new HashSet(); + for (String site3 : site3s) { + VTECPartners vtecPartners = VTECPartners.getInstance(site3); + @SuppressWarnings("unchecked") + List wfoList = (List) vtecPartners + .getattr("VTEC_DECODER_SITES"); + wfoSet.addAll(wfoList); + Collection spcSite = vtecPartners.getSpcSites(); + wfoSet.addAll(spcSite); + Collection tpcSite = vtecPartners.getTpcSites(); + wfoSet.addAll(tpcSite); + } + return wfoSet; + } + /** * Updates the active table with the new warnings * @@ -242,11 +289,38 @@ public class ActiveTable { mode = ActiveTableMode.OPERATIONAL; } - MergeResult result = filterTable(siteId, - getActiveTable(siteId, mode), newRecords, mode, offsetSecs); + IPerformanceStatusHandler perfStat = PerformanceStatus + .getHandler("ActiveTable"); + ITimer timer = TimeUtil.getTimer(); + timer.start(); + List activeTable = getActiveTable(siteId, mode); + timer.stop(); + perfStat.logDuration("getActiveTable", timer.getElapsedTime()); + // get decoder sites to see if we need to backup active table + Set decoderSites = getDecoderSites(siteId); + + // if any new record is from one of the decoder sites + // we need to queue a backup + for (ActiveTableRecord rec : newRecords) { + if (decoderSites.contains(rec.getOfficeid())) { + ActiveTableBackup.queue(mode, activeTable); + break; + } + } + + timer.reset(); + timer.start(); + MergeResult result = filterTable(siteId, activeTable, newRecords, + mode, offsetSecs); + timer.stop(); + perfStat.logDuration("filterTable", timer.getElapsedTime()); + + timer.reset(); + timer.start(); updateTable(siteId, result, mode); - + timer.stop(); + perfStat.logDuration("updateTable", timer.getElapsedTime()); if (result.changeList.size() > 0) { sendNotification(mode, result.changeList, "VTECDecoder"); } @@ -279,25 +353,16 @@ public class ActiveTable { args.put("offsetSecs", offsetSecs); MergeResult result = null; try { + PythonScript python = threadLocalPythonScript.get(); try { - python = new PythonScript(filePath, includePath, - ActiveTable.class.getClassLoader()); - try { - result = (MergeResult) python - .execute("mergeFromJava", args); - } catch (JepException e) { - statusHandler.handle(Priority.PROBLEM, - "Error updating active table", e); - } + result = (MergeResult) python.execute("mergeFromJava", args); } catch (JepException e) { statusHandler.handle(Priority.PROBLEM, - "Error initializing active table python", e); - } - } finally { - if (python != null) { - python.dispose(); - python = null; + "Error updating active table", e); } + } catch (Exception e) { + statusHandler.handle(Priority.PROBLEM, + "Error initializing active table python", e); } return result; @@ -358,11 +423,11 @@ public class ActiveTable { query.addQueryParam("etn", etn, "in"); } - if (requestValidTimes && currentTime != null) { + if (requestValidTimes && (currentTime != null)) { // Current Time query.addQueryParam("endTime", currentTime, "greater_than"); } - if (latestEtn && currentTime != null) { + if (latestEtn && (currentTime != null)) { Calendar yearStart = Calendar.getInstance(); yearStart.set(currentTime.get(Calendar.YEAR), Calendar.JANUARY, 0, 0, 0); @@ -413,15 +478,32 @@ public class ActiveTable { } } + /** + * Merge new records into the active table + * + * @param newRecords + * records to be merged + * @return Exception if any occurs during merge + */ public Exception merge(List newRecords) { return merge(newRecords, 0.0f); } + /** + * Merge new records into the active table + * + * @param newRecords + * records to be merged + * @param timeOffset + * time offset for practice mode in displaced real time mode + * @return Exception if any occurs during merge + */ public Exception merge(List newRecords, float timeOffset) { Exception exc = null; try { if (newRecords != null) { - String siteId = newRecords.get(0).getOfficeid(); + String siteId = SiteUtil.getSite(); + siteId = SiteMap.getInstance().getSite4LetterId(siteId); updateActiveTable(siteId, newRecords, timeOffset); } } catch (Throwable t) { @@ -526,12 +608,15 @@ public class ActiveTable { } } - public void dispose() { - python.dispose(); - } - - public static void clearPracticeTable(String requestedSiteId, - ActiveTableMode mode) throws DataAccessLayerException { + /** + * Clear the practice active table for the requested site + * + * @param requestedSiteId + * site ID + * @throws DataAccessLayerException + */ + public static void clearPracticeTable(String requestedSiteId) + throws DataAccessLayerException { CoreDao dao = practiceDao; String sql = "delete from practice_activetable;"; dao.executeNativeSql(sql); @@ -542,12 +627,6 @@ public class ActiveTable { dao.executeNativeSql(sql); } - public static File dumpProductToTempFile(String productText) { - File file = Util.createTempFile(productText.getBytes(), "vtec"); - file.deleteOnExit(); - return file; - } - /** * Get the last assigned ETN for the specified site and phensig combination. * diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTableSrv.java b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTableSrv.java index ec80df322b..813d4344a4 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTableSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/ActiveTableSrv.java @@ -19,17 +19,24 @@ **/ package com.raytheon.uf.edex.activetable; -import java.util.HashMap; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.List; -import java.util.Map; +import java.util.TimeZone; +import java.util.concurrent.TimeUnit; import com.raytheon.edex.esb.Headers; import com.raytheon.uf.common.activetable.ActiveTableMode; import com.raytheon.uf.common.activetable.ActiveTableRecord; import com.raytheon.uf.common.dataplugin.warning.AbstractWarningRecord; import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.PerformanceStatus; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.time.util.ITimer; +import com.raytheon.uf.common.time.util.TimeUtil; /** * Service for the VTEC active table. Determines if the VTEC product corresponds @@ -43,6 +50,9 @@ import com.raytheon.uf.common.status.UFStatus.Priority; * Mar 17, 2009 njensen Initial creation * Jul 14, 2009 #2950 njensen Multiple site support * Dec 21, 2009 #4055 njensen No site filtering + * Jun 17, 2014 3296 randerso Added performance logging + * Dec 09, 2014 3885 dgilling Handle offset time from camel route + * headers. * * * @@ -54,16 +64,30 @@ public class ActiveTableSrv { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(ActiveTableSrv.class); - private static Map activeTableMap = new HashMap(); + private static ThreadLocal threadLocalActiveTable = new ThreadLocal() { + /* + * (non-Javadoc) + * + * @see java.lang.ThreadLocal#initialValue() + */ + @Override + protected ActiveTable initialValue() { + return new ActiveTable(); + } + + }; + + /** + * Merge VTEC info from new warning records into the active table + * + * @param records + */ public void vtecArrived(List records) { + ITimer timer = TimeUtil.getTimer(); + timer.start(); try { - long threadId = Thread.currentThread().getId(); - ActiveTable activeTable = activeTableMap.get(threadId); - if (activeTable == null) { - activeTable = new ActiveTable(); - activeTableMap.put(threadId, activeTable); - } + ActiveTable activeTable = threadLocalActiveTable.get(); if (records != null && records.size() > 0) { activeTable.merge(ActiveTableRecord.transformFromWarnings( records, ActiveTableMode.OPERATIONAL)); @@ -72,28 +96,26 @@ public class ActiveTableSrv { statusHandler.handle(Priority.PROBLEM, "Error merging active table", t); } + timer.stop(); + PerformanceStatus.getHandler("ActiveTable").logDuration( + "Total time to process " + records.size() + " records", + timer.getElapsedTime()); } + /** + * Merge new warning records into the practice active table + * + * @param records + * @param headers + */ public void practiceVtecArrived(List records, Headers headers) { - Integer offsetSeconds = null; - if (headers != null) { - offsetSeconds = (Integer) headers.get("offsetseconds"); - } - if (offsetSeconds == null) { - offsetSeconds = Integer.valueOf(0); - } + int offsetSeconds = getOffsetTime((String) headers.get("drtstring")); if (records != null && records.size() > 0) { - long threadId = Thread.currentThread().getId(); - ActiveTable activeTable = activeTableMap.get(threadId); - if (activeTable == null) { - activeTable = new ActiveTable(); - activeTableMap.put(threadId, activeTable); - } + ActiveTable activeTable = threadLocalActiveTable.get(); try { activeTable.merge(ActiveTableRecord.transformFromWarnings( - records, ActiveTableMode.PRACTICE), offsetSeconds - .intValue()); + records, ActiveTableMode.PRACTICE), offsetSeconds); } catch (Throwable t) { statusHandler .handle(Priority.PROBLEM, @@ -102,4 +124,25 @@ public class ActiveTableSrv { } } } + + private int getOffsetTime(String drtTimeString) { + if (drtTimeString != null) { + DateFormat drtParse = new SimpleDateFormat("yyyyMMdd_HHmm"); + drtParse.setTimeZone(TimeZone.getTimeZone("GMT")); + + try { + Date drtTime = drtParse.parse(drtTimeString); + Date currentTime = new Date(); + long diffInMillis = drtTime.getTime() - currentTime.getTime(); + + return (int) TimeUnit.SECONDS.convert(diffInMillis, + TimeUnit.MILLISECONDS); + } catch (ParseException e) { + statusHandler.error("Could not parse DRT time string: " + + drtTimeString, e); + } + } + + return 0; + } } diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java index bfb842f3f7..f3e4930851 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java +++ b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/GetNextEtnUtil.java @@ -57,11 +57,11 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.StringUtil; -import com.raytheon.uf.edex.auth.RemoteServerRequestRouter; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; import com.raytheon.uf.edex.database.cluster.ClusterTask; import com.raytheon.uf.edex.database.cluster.handler.CurrentTimeClusterLockHandler; +import com.raytheon.uf.edex.requestsrv.router.RemoteServerRequestRouter; /** * Library module of functions to support retrieval of next ETN in sequence for diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/vtecsharing/FetchActiveTableSrv.java b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/vtecsharing/FetchActiveTableSrv.java index f39b61e522..59324205ed 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/vtecsharing/FetchActiveTableSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.activetable/src/com/raytheon/uf/edex/activetable/vtecsharing/FetchActiveTableSrv.java @@ -37,7 +37,9 @@ import com.google.common.util.concurrent.MoreExecutors; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.util.registry.RegistryException; import com.raytheon.uf.edex.site.ISiteActivationListener; +import com.raytheon.uf.edex.site.SiteAwareRegistry; /** * Service that fetches neighboring sites' active table entries that are @@ -49,7 +51,10 @@ import com.raytheon.uf.edex.site.ISiteActivationListener; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Feb 28, 2013 dgilling Initial creation + * Feb 28, 2013 dgilling Initial creation + * Feb 20, 2014 #2824 randerso Changed log level of message when activating FetchAT + * Registered with SiteAwareRegistry so we can stop + * fetching when site is deactivated. * * * @@ -74,13 +79,20 @@ public class FetchActiveTableSrv implements ISiteActivationListener { jobExecutor = MoreExecutors .getExitingScheduledExecutorService((ScheduledThreadPoolExecutor) Executors .newScheduledThreadPool(1)); + + try { + SiteAwareRegistry.getInstance().register(this); + } catch (RegistryException e) { + statusHandler.handle(Priority.PROBLEM, + "Error registering with SiteAwareRegistry", e); + } } public void addSite(Map configData) { FetchATJobConfig config = new FetchATJobConfig(configData); final String site = config.getSiteId(); - statusHandler.debug("Activating FetchAT for " + site); + statusHandler.info("Activating FetchAT for " + site); statusHandler.debug("Site: " + site + " config: " + config); if ((siteConfigMap.containsKey(site)) @@ -152,9 +164,11 @@ public class FetchActiveTableSrv implements ISiteActivationListener { */ @Override public void deactivateSite(String siteID) throws Exception { - statusHandler.info("Deactivating FetchAT for " + siteID); ScheduledFuture siteJob = siteJobInstanceMap.remove(siteID); - siteJob.cancel(false); + if (siteJob != null) { + statusHandler.info("Deactivating FetchAT for " + siteID); + siteJob.cancel(false); + } siteConfigMap.remove(siteID); } @@ -189,7 +203,7 @@ public class FetchActiveTableSrv implements ISiteActivationListener { */ @Override public String validateConfig(String siteID) { - return null; + return ""; } /* diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/ActiveTable.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/ActiveTable.py index f7c35bc5f9..cd6989f164 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/ActiveTable.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/ActiveTable.py @@ -1,19 +1,19 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## @@ -28,6 +28,10 @@ # 06/11/13 #2083 randerso Log active table changes, save backups # 03/06/14 #2883 randerso Pass siteId into mergeFromJava # 03/25/14 #2884 randerso Added xxxid to VTECChange +# 05/15/14 #3157 dgilling Support multiple TPC and SPC sites. +# 06/17/13 #3296 randerso Moved active table backup and purging +# to a separate thread in java. +# Added performance logging # import time @@ -35,10 +39,16 @@ import copy import os import VTECTableUtil, VTECTableSqueeze, VTECPartners import LogStream, ActiveTableVtec, ActiveTableRecord +import JUtil from java.util import ArrayList from com.raytheon.uf.common.localization import PathManagerFactory from com.raytheon.uf.common.localization import LocalizationContext_LocalizationType as LocalizationType from com.raytheon.uf.common.localization import LocalizationContext_LocalizationLevel as LocalizationLevel +from com.raytheon.uf.common.activetable import VTECPartners as JavaVTECPartners + +from com.raytheon.uf.common.time.util import TimeUtil +from com.raytheon.uf.common.status import PerformanceStatus +perfStat = PerformanceStatus.getHandler("ActiveTable") class ActiveTable(VTECTableUtil.VTECTableUtil): @@ -60,6 +70,8 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): changedFlag = False #delete "obsolete" records from the old table. + timer = TimeUtil.getTimer() + timer.start() vts = VTECTableSqueeze.VTECTableSqueeze(self._time+offsetSecs) activeTable, tossRecords = vts.squeeze(activeTable) for r in tossRecords: @@ -67,9 +79,13 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): del vts if len(tossRecords): changedFlag = True + timer.stop(); + perfStat.logDuration("updateActiveTable squeeze", timer.getElapsedTime()); #expand out any 000 UGC codes, such as FLC000, to indicate all #zones. + timer.reset() + timer.start() newRecExpanded = [] compare1 = ['phen', 'sig', 'officeid', 'etn', 'pil'] for newR in newRecords: @@ -85,11 +101,15 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): else: newRecExpanded.append(newR) newRecords = newRecExpanded + timer.stop(); + perfStat.logDuration("updateActiveTable expand", timer.getElapsedTime()); # match new records with old records, with issue time is different # years and event times overlap. Want to reassign ongoing events # from last year's issueTime to be 12/31/2359z, rather than the # real issuetime (which is this year's). + timer.reset() + timer.start() compare = ['phen', 'sig', 'officeid', 'pil', 'etn'] for newR in newRecords: cyear = time.gmtime(newR['issueTime'])[0] #current year issuance time @@ -106,9 +126,13 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): "\nNewRec: ", self.printEntry(newR), "OldRec: ", self.printEntry(oldR)) newR['issueTime'] = lastYearIssueTime + timer.stop(); + perfStat.logDuration("updateActiveTable match", timer.getElapsedTime()); # split records out by issuance year for processing + timer.reset() + timer.start() newRecDict = {} #key is issuance year oldRecDict = {} years = [] @@ -126,8 +150,12 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): oldRecDict[issueYear] = records if issueYear not in years: years.append(issueYear) + timer.stop(); + perfStat.logDuration("updateActiveTable split", timer.getElapsedTime()); # process each year + timer.reset() + timer.start() compare = ['id', 'phen', 'sig', 'officeid', 'pil'] for year in years: @@ -166,8 +194,12 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): oldR['state'] = "Replaced" changedFlag = True updatedTable.append(oldR) + timer.stop(); + perfStat.logDuration("updateActiveTable process", timer.getElapsedTime()); #always add in the new records (except for ROU) + timer.reset() + timer.start() compare = ['id', 'phen', 'sig', 'officeid', 'pil', 'etn'] for year in newRecDict.keys(): newRecords = newRecDict[year] @@ -199,8 +231,12 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): rec = (newR['officeid'], newR['pil'], newR['phensig'], newR['xxxid']) if rec not in changes: changes.append(rec) + timer.stop(); + perfStat.logDuration("updateActiveTable add", timer.getElapsedTime()); #filter out any captured text and overviewText if not in the categories + timer.reset() + timer.start() cats = self._getTextCaptureCategories() if cats is not None: for rec in updatedTable: @@ -210,6 +246,8 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): if rec.has_key('overviewText'): del rec['overviewText'] + timer.stop(); + perfStat.logDuration("updateActiveTable filter", timer.getElapsedTime()); return updatedTable, tossRecords, changes, changedFlag # time overlaps, if tr1 overlaps tr2 (adjacent is not an overlap) @@ -250,35 +288,35 @@ class ActiveTable(VTECTableUtil.VTECTableUtil): return outTable, purgedRecords, changes, changedFlag def mergeFromJava(siteId, activeTable, newRecords, logger, mode, offsetSecs=0): + perfStat.log("mergeFromJava called for site: %s, activeTable: %d , newRecords: %d" % + (siteId, activeTable.size(), newRecords.size())) + timer = TimeUtil.getTimer() + timer.start() pyActive = [] szActive = activeTable.size() for i in range(szActive): pyActive.append(ActiveTableRecord.ActiveTableRecord(activeTable.get(i))) - decoderSites = VTECPartners.VTEC_DECODER_SITES - decoderSites.append(VTECPartners.get4ID(siteId)) - decoderSites.append(VTECPartners.VTEC_SPC_SITE) - decoderSites.append(VTECPartners.VTEC_TPC_SITE) - - backup = False pyNew = [] szNew = newRecords.size() for i in range(szNew): rec = ActiveTableRecord.ActiveTableRecord(newRecords.get(i)) - if rec['officeid'] in decoderSites: - backup = True pyNew.append(rec) active = ActiveTable(mode) - if backup: - oldActiveTable = active._convertTableToPurePython(pyActive, siteId) - active.saveOldActiveTable(oldActiveTable) - pTime = getattr(VTECPartners, "VTEC_BACKUP_TABLE_PURGE_TIME",168) - active.purgeOldSavedTables(pTime) + logger.info("Updating " + mode + " Active Table: new records\n" + + active.printActiveTable(pyNew, combine=1)) + + timer.stop() + perfStat.logDuration("mergeFromJava preprocess", timer.getElapsedTime()); updatedTable, purgeRecords, changes, changedFlag = active.activeTableMerge(pyActive, pyNew, offsetSecs) + perfStat.log("mergeFromJava activeTableMerge returned updateTable: %d, purgeRecords: %d, changes: %d" % + (len(updatedTable), len(purgeRecords), len(changes))) + timer.reset() + timer.start() logger.info("Updated " + mode + " Active Table: purged\n" + active.printActiveTable(purgeRecords, combine=1)) @@ -298,15 +336,15 @@ def mergeFromJava(siteId, activeTable, newRecords, logger, mode, offsetSecs=0): logger.info("Updated " + mode + " Active Table: decoded\n" + active.printActiveTable(decoded, combine=1)) - updatedList = ArrayList() + updatedList = ArrayList(len(updatedTable)) for x in updatedTable: updatedList.add(x.javaRecord()) - purgedList = ArrayList() + purgedList = ArrayList(len(purgeRecords)) for x in purgeRecords: purgedList.add(x.javaRecord()) - changeList = ArrayList() + changeList = ArrayList(len(changes)) if (changedFlag): from com.raytheon.uf.common.activetable import VTECChange for c in changes: @@ -314,4 +352,6 @@ def mergeFromJava(siteId, activeTable, newRecords, logger, mode, offsetSecs=0): from com.raytheon.uf.common.activetable import MergeResult result = MergeResult(updatedList, purgedList, changeList) + timer.stop() + perfStat.logDuration("mergeFromJava postprocess", timer.getElapsedTime()); return result diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/MergeVTEC.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/MergeVTEC.py index 1eb9d6a397..4e2025cbf6 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/MergeVTEC.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/MergeVTEC.py @@ -34,6 +34,7 @@ # 06/11/13 #2083 randerso Move backups to edex_static # 01/24/14 #2504 randerso change to use iscUtil.getLogger for consistency # 03/25/14 #2884 randerso Added xxxid to VTECChange +# 05/15/14 #3157 dgilling Support multiple TPC and SPC sites. # @@ -49,6 +50,7 @@ import siteConfig import VTECPartners import VTECTableSqueeze import VTECTableUtil +import JUtil from java.util import ArrayList from com.raytheon.uf.common.activetable import MergeResult @@ -56,6 +58,7 @@ from com.raytheon.uf.common.activetable import VTECChange from com.raytheon.uf.common.localization import PathManagerFactory from com.raytheon.uf.common.localization import LocalizationContext_LocalizationType as LocalizationType from com.raytheon.uf.common.site import SiteMap +from com.raytheon.uf.common.activetable import VTECPartners as JavaVTECPartners class MergeVTEC(VTECTableUtil.VTECTableUtil): @@ -90,8 +93,8 @@ class MergeVTEC(VTECTableUtil.VTECTableUtil): VTECTableUtil.VTECTableUtil.__init__(self, fileName) # get the SPC site id from the configuration file - self._spcSite = getattr(VTECPartners, "VTEC_SPC_SITE", "KWNS") - self._tpcSite = getattr(VTECPartners, "VTEC_TPC_SITE", "KNHC") + self._spcSite = JUtil.javaObjToPyVal(JavaVTECPartners.getInstance(siteConfig.GFESUITE_SITEID).getSpcSites("KWNS")) + self._tpcSite = JUtil.javaObjToPyVal(JavaVTECPartners.getInstance(siteConfig.GFESUITE_SITEID).getTpcSites("KNHC")) # get our site siteid = siteConfig.GFESUITE_SITEID @@ -393,8 +396,8 @@ class MergeVTEC(VTECTableUtil.VTECTableUtil): sites = getattr(VTECPartners, "VTEC_MERGE_SITES", []) if sites is None: return None - sites.append(self._spcSite) - sites.append(self._tpcSite) + sites.extend(self._spcSite) + sites.extend(self._tpcSite) sites.append(self._ourSite) self._log.debug("Filter Sites: %s", sites) return sites diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECPartners.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECPartners.py index ac11e1b11d..3409535112 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECPartners.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECPartners.py @@ -26,6 +26,7 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 06/11/13 #2083 randerso Fixed getISCSites to look in configured +# 02/20/2014 #2824 randerso Added log message when no localVTECPartners file is found #VTEC_Partners.py - configuration file to control filtering and merging #of VTEC active table. @@ -36,8 +37,8 @@ VTEC_TABLE_REQUEST_SITES = [] # Name of site identifier for SPC and TCV bulletins. 4-characters. -VTEC_SPC_SITE = 'KWNS' -VTEC_TPC_SITE = 'KNHC' +VTEC_SPC_SITE = ['KWNS'] +VTEC_TPC_SITE = ['KNHC'] # The following list is a set of office identifiers which is used # in the ingestAT/MergeVTEC software to filter out records from offices @@ -298,5 +299,6 @@ except: #allow overrides try: from localVTECPartners import * -except: - pass +except ImportError: + import LogStream + LogStream.logEvent("No localVTECPartners file found, using baseline settings."); diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTable.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTable.py old mode 100644 new mode 100755 index cf49f0c4ea..ae184d40d5 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTable.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTable.py @@ -44,6 +44,9 @@ VTECTable = { 'AS.Y' : {'phen': 'AS', 'sig': 'Y', 'hdln': 'AIR STAGNATION ADVISORY'}, + 'BH.S' : {'phen': 'BH', + 'sig': 'S', + 'hdln': 'BEACH HAZARDS STATEMENT'}, 'BW.Y' : {'phen': 'BW', 'sig': 'Y', 'hdln': 'BRISK WIND ADVISORY'}, @@ -148,7 +151,7 @@ VTECTable = { 'hdln': 'HURRICANE WATCH'}, 'HU.S' : {'phen': 'HU', 'sig': 'S', - 'hdln': ''}, #No headline for this VTEC + 'hdln': ''}, #No headline for this VTEC 'HU.W' : {'phen': 'HU', 'sig': 'W', 'hdln': 'HURRICANE WARNING'}, @@ -239,6 +242,12 @@ VTECTable = { 'SR.W' : {'phen': 'SR', 'sig': 'W', 'hdln': 'STORM WARNING'}, + 'SS.A' : {'phen': 'SS', + 'sig': 'A', + 'hdln': 'STORM SURGE WATCH'}, + 'SS.W' : {'phen': 'SS', + 'sig': 'W', + 'hdln': 'STORM SURGE WARNING'}, 'SU.W' : {'phen': 'SU', 'sig': 'W', 'hdln': 'HIGH SURF WARNING'}, @@ -363,6 +372,7 @@ upgradeHazardsDict = { 'SE.W': ['SC.Y', 'RB.Y', 'GL.A', 'SR.A', 'HF.A', 'SE.A'], 'UP.W': ['UP.Y', 'UP.A'], 'SU.W': ['SU.Y'], +'SS.W': ['SS.A'], 'HU.W': ['HU.A', 'TR.W', 'TR.A'], 'HU.A': ['TR.A'], 'TR.W': ['TR.A', 'HU.A', 'TY.A'], diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableSqueeze.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableSqueeze.py index 94e12be3c3..78da869f11 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableSqueeze.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableSqueeze.py @@ -1,24 +1,38 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## +# +# SOFTWARE HISTORY +# +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# 06/17/13 #3296 randerso Default debug to False to avoid logging overhead +# Added performance logging +# + import os, sys, time, copy, LogStream +from com.raytheon.uf.common.time.util import TimeUtil +from com.raytheon.uf.common.status import PerformanceStatus +perfStat = PerformanceStatus.getHandler("ActiveTable") +timer = TimeUtil.getTimer() + # This class takes a VTEC active table and eliminates unnecessary # records. Records purged consist of old SPC watches, old Tropical # events, last year's records, and extraneous records not needed for @@ -27,7 +41,7 @@ import os, sys, time, copy, LogStream class VTECTableSqueeze: #constructor - def __init__(self, currentTime, debug=True): + def __init__(self, currentTime, debug=False): self.__ctime = currentTime self.__thisYear = time.gmtime(self.__ctime)[0] self.__debug = debug @@ -41,7 +55,11 @@ class VTECTableSqueeze: LogStream.logDebug(self.__printActiveTable(table)) # modify old UFN events (in case fcstrs didn't CAN them) + timer.reset() + timer.start() table, modTable = self.__modifyOldUFNEvents(table) + timer.stop() + perfStat.logDuration("updateActiveTable squeeze __modifyOldUFNEvents", timer.getElapsedTime()); if self.__debug: LogStream.logDebug("************** MOD UFN TABLE *********************") for old, new in modTable: @@ -50,8 +68,12 @@ class VTECTableSqueeze: LogStream.logDebug(" -----------") # remove the national center and short fused events + timer.reset() + timer.start() shortWFO, shortNC, purgeT = \ self.__removeOldNationalAndShortFusedEvents(table) + timer.stop() + perfStat.logDuration("updateActiveTable squeeze __removeOldNationalAndShortFusedEvents", timer.getElapsedTime()); if self.__debug: LogStream.logDebug("************** SHORT WFO TABLE *********************") LogStream.logDebug(self.__printActiveTable(shortWFO)) @@ -61,10 +83,18 @@ class VTECTableSqueeze: LogStream.logDebug(self.__printActiveTable(purgeT)) # separate out the shortWFO into dictionary structure + timer.reset() + timer.start() dict = self.__separateTable(shortWFO) + timer.stop() + perfStat.logDuration("updateActiveTable squeeze __separateTable", timer.getElapsedTime()); # purge old entries with LowerETNs that aren't in effect + timer.reset() + timer.start() shorterT, purgeT2 = self.__purgeOldEntriesWithLowerETNs(dict) + timer.stop() + perfStat.logDuration("updateActiveTable squeeze __purgeOldEntriesWithLowerETNs", timer.getElapsedTime()); if self.__debug: LogStream.logDebug("************** TRIMMED WFO TABLE ******************") LogStream.logDebug(self.__printActiveTable(shorterT)) @@ -72,12 +102,10 @@ class VTECTableSqueeze: LogStream.logDebug(self.__printActiveTable(purgeT2)) #add in any shortNC entries to final table - for r in shortNC: - shorterT.append(r) + shorterT.extend(shortNC) #add in the purged entries from before - for r in purgeT2: - purgeT.append(r) + purgeT.extend(purgeT2) if self.__debug: LogStream.logDebug("************** FINAL TABLE ********************") diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableUtil.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableUtil.py index 74a1d4ae0f..d2a0461f0d 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableUtil.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/VTECTableUtil.py @@ -17,7 +17,14 @@ # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## -# Utility classes for the VTEC active table +# Utility classes for the VTEC util table +# +# SOFTWARE HISTORY +# +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# 06/17/13 #3296 randerso Moved active table backup and purging +# to a separate thread in java. import copy import cPickle @@ -384,3 +391,14 @@ class VTECTableUtil: return JUtil.javaObjToPyVal(javaDictFormat) +def backupActiveTable(activeTable, activeTableMode, filePath, siteId): + import ActiveTableRecord + pyActive = [] + szActive = activeTable.size() + for i in range(szActive): + pyActive.append(ActiveTableRecord.ActiveTableRecord(activeTable.get(i))) + + # create a dummy name to simplify the file access code in VTECTableUtil + util = VTECTableUtil(os.path.join(filePath, activeTableMode + ".tbl")) + oldActiveTable = util._convertTableToPurePython(pyActive, siteId) + util.saveOldActiveTable(oldActiveTable) diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/requestAT.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/requestAT.py index 460a08bb94..b45d4ef653 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/requestAT.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/requestAT.py @@ -27,7 +27,8 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 02/06/13 1447 dgilling Initial Creation. -# 01/24/14 2504 randerso change to use iscUtil.getLogger for consistency +# 01/24/14 2504 randerso change to use iscUtil.getLogger for consistency +# 05/15/14 #3157 dgilling Support multiple TPC and SPC sites. # # @@ -42,10 +43,12 @@ import IrtAccess import siteConfig import VTECPartners import iscUtil +import JUtil from com.raytheon.uf.common.activetable import ActiveTableMode from com.raytheon.uf.common.time.util import TimeUtil from com.raytheon.uf.edex.activetable import ActiveTable +from com.raytheon.uf.common.activetable import VTECPartners as JavaVTECPartners @@ -73,8 +76,11 @@ def execute_request_at(serverHost, serverPort, serverProtocol, mhsid, siteID, an mysite4 = "PAFC" else: mysite4 = "K" + siteID - otherSites = [mysite4, VTECPartners.VTEC_SPC_SITE, - VTECPartners.VTEC_TPC_SITE] + otherSites = [mysite4] + tpcSites = JUtil.javaObjToPyVal(JavaVTECPartners.getInstance(siteID).getTpcSites()) + spcSites = JUtil.javaObjToPyVal(JavaVTECPartners.getInstance(siteID).getSpcSites()) + otherSites.extend(tpcSites) + otherSites.extend(spcSites) # determine the MHS WMO id for this message wmoid = "TTAA00 " + mysite4 diff --git a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/sendAT.py b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/sendAT.py index b7a9da8ac0..8d144db064 100644 --- a/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/sendAT.py +++ b/edexOsgi/com.raytheon.uf.edex.activetable/utility/common_static/base/vtec/sendAT.py @@ -27,7 +27,8 @@ # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- # 02/08/13 1447 dgilling Initial Creation. -# 01/24/14 2504 randerso change to use iscUtil.getLogger for consistency +# 01/24/14 2504 randerso change to use iscUtil.getLogger for consistency +# 05/15/14 #3157 dgilling Support multiple TPC and SPC sites. # # @@ -48,6 +49,9 @@ import VTECPartners import VTECTableSqueeze import iscUtil +from com.raytheon.uf.common.activetable import VTECPartners as JavaVTECPartners + + # Configuration Item for Test Purposes FORCE_SEND = False #Set to True to always send even if no updates required. @@ -88,10 +92,12 @@ def execute_send_at(myServerHost, myServerPort, myServerProtocol, filtTable = [] # filter by sites listing if filterSites: + tpcSites = JUtil.javaObjToPyVal(JavaVTECPartners.getInstance(myServerSite).getTpcSites()) + spcSites = JUtil.javaObjToPyVal(JavaVTECPartners.getInstance(myServerSite).getSpcSites()) + for t in table: if t['oid'] in filterSites or t['oid'][1:4] in sites or \ - t['oid'] == VTECPartners.VTEC_SPC_SITE or \ - t['oid'] == VTECPartners.VTEC_TPC_SITE: + t['oid'] in tpcSites or t['oid'] in spcSites: filtTable.append(t) else: filtTable = table #no filtering diff --git a/edexOsgi/com.raytheon.uf.edex.archive/.classpath b/edexOsgi/com.raytheon.uf.edex.archive/.classpath index 4158707b64..b614cf5821 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/.classpath +++ b/edexOsgi/com.raytheon.uf.edex.archive/.classpath @@ -1,8 +1,8 @@ - - - - - + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.archive/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.archive/META-INF/MANIFEST.MF index 038586a1a9..c81f8f74a3 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.archive/META-INF/MANIFEST.MF @@ -20,4 +20,5 @@ Require-Bundle: com.raytheon.uf.common.auth;bundle-version="1.12.1174", com.raytheon.uf.common.time, com.raytheon.uf.common.util;bundle-version="1.12.1174", com.raytheon.uf.edex.auth;bundle-version="1.12.1174", - com.raytheon.uf.edex.core + com.raytheon.uf.edex.core, + org.apache.commons.io;bundle-version="2.4.0" diff --git a/edexOsgi/com.raytheon.uf.edex.archive/build.properties b/edexOsgi/com.raytheon.uf.edex.archive/build.properties index 5791d48d5f..575eb87e54 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/build.properties +++ b/edexOsgi/com.raytheon.uf.edex.archive/build.properties @@ -2,4 +2,6 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + utility/,\ + resources/ diff --git a/edexOsgi/com.raytheon.uf.edex.archive/res/spring/archive-spring.xml b/edexOsgi/com.raytheon.uf.edex.archive/res/spring/archive-spring.xml index 473509382e..23b61fe9a9 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/res/spring/archive-spring.xml +++ b/edexOsgi/com.raytheon.uf.edex.archive/res/spring/archive-spring.xml @@ -2,6 +2,10 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiveProcessor.java b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiveProcessor.java index 646061083c..60d40d15e5 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiveProcessor.java +++ b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiveProcessor.java @@ -59,7 +59,9 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.FileUtil; +import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.core.dataplugin.PluginRegistry; +import com.raytheon.uf.edex.core.exception.ShutdownException; import com.raytheon.uf.edex.database.plugin.PluginDao; import com.raytheon.uf.edex.database.processor.IDatabaseProcessor; @@ -78,6 +80,7 @@ import com.raytheon.uf.edex.database.processor.IDatabaseProcessor; * Jan 23, 2014 2555 rjpeter Updated to be a row at a time using ScrollableResults. * Feb 04, 2014 2770 rferrel The dumpPdos now dumps all PluginDataObjects. * Feb 12, 2014 2784 rjpeter Update logging for dup elim scenarios. + * Apr 23, 2014 2726 rjpeter Add shutdown checks to allow for timely shutdown. * * * @author rjpeter @@ -143,7 +146,7 @@ public class DatabaseArchiveProcessor> * .util.List) */ @Override - public boolean process(T object) { + public boolean process(T object) throws ShutdownException { if (object != null) { if (pdosByFile == null) { pdosByFile = new HashMap>>( @@ -191,7 +194,7 @@ public class DatabaseArchiveProcessor> * archives any associated hdf5 files. */ @Override - public void finish() { + public void finish() throws ShutdownException { if (entriesInMemory > 0) { try { savePdoMap(pdosByFile); @@ -228,6 +231,7 @@ public class DatabaseArchiveProcessor> } for (String dataStoreFile : datastoreFilesToArchive) { + EDEXUtil.checkShuttingDown(); IDataStore ds = DataStoreFactory.getDataStore(new File(FileUtil .join(pluginName, dataStoreFile))); // all dataStore files should end with .h5 @@ -346,12 +350,13 @@ public class DatabaseArchiveProcessor> * @throws IOException */ protected void savePdoMap(Map>> pdoMap) - throws SerializationException, IOException { + throws SerializationException, IOException, ShutdownException { StringBuilder baseDir = new StringBuilder(160); Set identifierSet = null; for (Map.Entry>> entry : pdoMap .entrySet()) { + EDEXUtil.checkShuttingDown(); baseDir.setLength(0); baseDir.append(archivePath).append(File.separator) .append(pluginName).append(File.separator) @@ -421,10 +426,11 @@ public class DatabaseArchiveProcessor> protected List> dupElimPreviousFiles( SortedMap fileMap, List> pdos, Set identifierSet) - throws IOException, SerializationException { + throws IOException, SerializationException, ShutdownException { if (!fileMap.isEmpty()) { Iterator fileIter = fileMap.values().iterator(); while (fileIter.hasNext()) { + EDEXUtil.checkShuttingDown(); File dataFile = fileIter.next(); int dupElimUntil = Integer.MAX_VALUE; FileStatus prevFileStatus = filesCreatedThisSession diff --git a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiver.java b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiver.java index 70cae04fdf..a3facab329 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiver.java +++ b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/DatabaseArchiver.java @@ -19,6 +19,7 @@ **/ package com.raytheon.uf.edex.archive; +import java.io.File; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -26,19 +27,26 @@ import java.util.Date; import java.util.HashMap; import java.util.Map; import java.util.TimeZone; +import java.util.Timer; +import java.util.TimerTask; +import com.raytheon.uf.common.archive.config.ArchiveConstants; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.PluginProperties; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.core.dataplugin.PluginRegistry; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; import com.raytheon.uf.edex.database.cluster.ClusterTask; import com.raytheon.uf.edex.database.cluster.handler.CurrentTimeClusterLockHandler; +import com.raytheon.uf.edex.database.cluster.handler.SharedLockHandler; +import com.raytheon.uf.edex.database.cluster.handler.SharedLockHandler.LockType; import com.raytheon.uf.edex.database.plugin.PluginDao; import com.raytheon.uf.edex.database.plugin.PluginFactory; @@ -59,6 +67,8 @@ import com.raytheon.uf.edex.database.plugin.PluginFactory; * Nov 11, 2013 2478 rjpeter Updated data store copy to always copy hdf5. * Dec 13, 2013 2555 rjpeter Refactored logic into DatabaseArchiveProcessor. * Feb 12, 2014 2784 rjpeter Fixed clusterLock to not update the time by default. + * Apr 01, 2014 2862 rferrel Add exclusive lock at plug-in level. + * Apr 23, 2014 2726 rjpeter Added shutdown hook for quicker shutdown while archiver is running. * * * @author rjpeter @@ -84,7 +94,7 @@ public class DatabaseArchiver implements IPluginArchiver { private static final long MIN_DURATION_MILLIS = 30 * TimeUtil.MILLIS_PER_MINUTE; /** Maximum time increment to archive, note based off of insertTime. */ - private static final long MAX_DURATION_MILLIS = 120 * TimeUtil.MILLIS_PER_MINUTE; + private static final long MAX_DURATION_MILLIS = 60 * TimeUtil.MILLIS_PER_MINUTE; /** Default batch size for database queries */ private static final Integer defaultBatchSize = 10000; @@ -108,6 +118,23 @@ public class DatabaseArchiver implements IPluginArchiver { private final boolean compressDatabaseFiles; + /** Task to update the lock time for the locked plugin cluster task. */ + private static final class LockUpdateTask extends TimerTask { + /** The locked cluster task's details. */ + private final String details; + + public LockUpdateTask(String details) { + this.details = details; + } + + @Override + public void run() { + long currentTime = System.currentTimeMillis(); + ClusterLockUtils.updateLockTime(ArchiveConstants.CLUSTER_NAME, + details, currentTime); + } + } + /** * The constructor. */ @@ -138,7 +165,65 @@ public class DatabaseArchiver implements IPluginArchiver { } } - public boolean archivePluginData(String pluginName, String archivePath) { + /** + * Attempt to get exclusive consumer's writer lock. + * + * @param details + * @return clusterTask when getting lock successful otherwise null + */ + private ClusterTask getWriteLock(String details) { + SharedLockHandler lockHandler = new SharedLockHandler(LockType.WRITER); + ClusterTask ct = ClusterLockUtils.lock(ArchiveConstants.CLUSTER_NAME, + details, lockHandler, false); + if (LockState.SUCCESSFUL.equals(ct.getLockState())) { + if (statusHandler.isPriorityEnabled(Priority.INFO)) { + statusHandler.handle(Priority.INFO, String.format( + "Locked: \"%s\"", ct.getId().getDetails())); + } + } else { + if (statusHandler.isPriorityEnabled(Priority.INFO)) { + statusHandler.handle(Priority.INFO, String.format( + "Skip database Archive unable to lock: \"%s\"", ct + .getId().getDetails())); + } + ct = null; + } + + return ct; + } + + /** + * Unlock the consumer's lock. + * + * @param ct + */ + private void releaseWriteLock(ClusterTask ct) { + if (ClusterLockUtils.unlock(ct, false)) { + if (statusHandler.isPriorityEnabled(Priority.INFO)) { + statusHandler.handle(Priority.INFO, String.format( + "Unlocked: \"%s\"", ct.getId().getDetails())); + } + } else { + if (statusHandler.isPriorityEnabled(Priority.PROBLEM)) { + statusHandler.handle(Priority.PROBLEM, String.format( + "Unable to unlock: \"%s\"", ct.getId().getDetails())); + } + } + } + + public void archivePluginData(String pluginName, String archivePath) { + if (EDEXUtil.isShuttingDown()) { + return; + } + + File archiveDir = new File(archivePath); + File pluginDir = new File(archiveDir, pluginName); + ClusterTask ctPlugin = getWriteLock(pluginDir.getAbsolutePath()); + + if (ctPlugin == null) { + return; + } + SimpleDateFormat dateFormat = TL_DATE_FORMAT.get(); // set archive time Calendar runTime = TimeUtil.newGmtCalendar(); @@ -150,7 +235,8 @@ public class DatabaseArchiver implements IPluginArchiver { ClusterTask ct = ClusterLockUtils.lock(TASK_NAME, pluginName, lockHandler, false); if (!LockState.SUCCESSFUL.equals(ct.getLockState())) { - return true; + releaseWriteLock(ctPlugin); + return; } // keep extra info the same until processing updates the time. @@ -161,6 +247,11 @@ public class DatabaseArchiver implements IPluginArchiver { int recordCount = 0; statusHandler.info(pluginName + ": Archiving plugin"); + Timer lockUpdateTimer = new Timer("Update Shared Lock Time", true); + TimerTask task = new LockUpdateTask(ctPlugin.getId().getDetails()); + lockUpdateTimer.schedule(task, TimeUtil.MILLIS_PER_MINUTE, + TimeUtil.MILLIS_PER_MINUTE); + try { // lookup dao PluginDao dao = null; @@ -171,7 +262,7 @@ public class DatabaseArchiver implements IPluginArchiver { .error(pluginName + ": Error getting data access object! Unable to archive data!", e); - return false; + return; } startTime = determineStartTime(pluginName, ct.getExtraInfo(), @@ -196,8 +287,8 @@ public class DatabaseArchiver implements IPluginArchiver { processor.setDebugArchiver(debugArchiver); processor.setBatchSize(batchSize.intValue()); - while ((startTime != null) && (endTime != null) - && !processor.isFailed()) { + while (!EDEXUtil.isShuttingDown() && (startTime != null) + && (endTime != null) && !processor.isFailed()) { statusHandler.info(pluginName + ": Checking for records from " + TimeUtil.formatDate(startTime) + " to " + TimeUtil.formatDate(endTime)); @@ -236,9 +327,21 @@ public class DatabaseArchiver implements IPluginArchiver { // release lock setting archive time in cluster lock ClusterLockUtils.unlock(ct, false); } + + /* + * Stop updating ctPlugin's last execution time before releasing the + * cluster's lock. + */ + if (lockUpdateTimer != null) { + lockUpdateTimer.cancel(); + } + + if (ctPlugin != null) { + releaseWriteLock(ctPlugin); + } } - return true; + return; } /** diff --git a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java index fdfc1133ec..4c022f3a4d 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java +++ b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/purge/ArchivePurger.java @@ -22,12 +22,12 @@ package com.raytheon.uf.edex.archive.purge; import java.util.Collection; import com.raytheon.uf.common.archive.config.ArchiveConfig; -import com.raytheon.uf.common.archive.config.ArchiveConfigManager; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.util.ITimer; import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.edex.core.exception.ShutdownException; /** * Purge task to purge archived data based on configured expiration. @@ -45,6 +45,7 @@ import com.raytheon.uf.common.time.util.TimeUtil; * Sep 03, 2013 2224 rferrel Add check to enable/disable purger. * Nov 05, 2013 2499 rjpeter Repackaged * Dec 17, 2013 2603 rjpeter Reload configuration every run of purge. + * Apr 01, 2014 2862 rferrel Refactored to us ArchivePurgeManager. * * * @author bgonzale @@ -67,29 +68,37 @@ public class ArchivePurger { ITimer timer = TimeUtil.getTimer(); timer.start(); statusHandler.info("Archive Purge started."); - ArchiveConfigManager manager = ArchiveConfigManager.getInstance(); - manager.reset(); - Collection archives = manager.getArchives(); - for (ArchiveConfig archive : archives) { - ITimer archiveTimer = TimeUtil.getTimer(); - archiveTimer.start(); - int purgeCount = manager.purgeExpiredFromArchive(archive); - if (statusHandler.isPriorityEnabled(Priority.INFO)) { - StringBuilder sb = new StringBuilder(archive.getName()); - sb.append("::Archive Purged "); - sb.append(purgeCount); - sb.append(" file"); - if (purgeCount != 1) { - sb.append("s"); + try { + ArchivePurgeManager manager = ArchivePurgeManager.getInstance(); + manager.reset(); + Collection archives = manager.getArchives(); + for (ArchiveConfig archive : archives) { + ITimer archiveTimer = TimeUtil.getTimer(); + archiveTimer.start(); + int purgeCount = manager.purgeExpiredFromArchive(archive); + if (statusHandler.isPriorityEnabled(Priority.INFO)) { + StringBuilder sb = new StringBuilder(archive.getName()); + sb.append("::Archive Purged "); + sb.append(purgeCount); + sb.append(" file"); + if (purgeCount != 1) { + sb.append("s"); + } + sb.append(" in ") + .append(TimeUtil.prettyDuration(archiveTimer + .getElapsedTime())).append("."); + statusHandler.info(sb.toString()); } - sb.append(" in ") - .append(TimeUtil.prettyDuration(archiveTimer - .getElapsedTime())).append("."); - statusHandler.info(sb.toString()); } + + statusHandler.info("Archive Purge finished. Time to run: " + + TimeUtil.prettyDuration(timer.getElapsedTime())); + } catch (ShutdownException e) { + statusHandler + .info("Aborting Purge due to EDEX shutdown being initiated. Time to run: " + + TimeUtil.prettyDuration(timer + .getElapsedTime())); } - statusHandler.info("Archive Purge finished. Time to run: " - + TimeUtil.prettyDuration(timer.getElapsedTime())); } else { statusHandler.info("Archive Purge disabled, exiting"); } diff --git a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/useradmin/ArchiveAdminPrivilegedRequestHandler.java b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/useradmin/ArchiveAdminPrivilegedRequestHandler.java index 7d68c406ff..65d2da3c82 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/useradmin/ArchiveAdminPrivilegedRequestHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.archive/src/com/raytheon/uf/edex/archive/useradmin/ArchiveAdminPrivilegedRequestHandler.java @@ -24,9 +24,9 @@ import com.raytheon.uf.common.auth.exception.AuthorizationException; import com.raytheon.uf.common.auth.user.IUser; import com.raytheon.uf.edex.auth.AuthManager; import com.raytheon.uf.edex.auth.AuthManagerFactory; +import com.raytheon.uf.edex.auth.authorization.IAuthorizer; import com.raytheon.uf.edex.auth.req.AbstractPrivilegedRequestHandler; import com.raytheon.uf.edex.auth.resp.AuthorizationResponse; -import com.raytheon.uf.edex.auth.roles.IRoleStorage; /** * Handler for Archive Admin Privileged Requests. @@ -38,6 +38,7 @@ import com.raytheon.uf.edex.auth.roles.IRoleStorage; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Oct 02, 2013 2326 rferrel Initial creation. + * May 28, 2014 3211 njensen Use IAuthorizer instead of IRoleStorage * * * @@ -64,8 +65,10 @@ public class ArchiveAdminPrivilegedRequestHandler extends @Override public ArchiveAdminAuthRequest handleRequest(ArchiveAdminAuthRequest request) throws Exception { - // If it reaches this point in the code, then the user is authorized, so - // just return the request object with authorized set to true + /* + * If it reaches this point in the code, then the user is authorized, so + * just return the request object with authorized set to true. + */ request.setAuthorized(true); return request; } @@ -83,16 +86,15 @@ public class ArchiveAdminPrivilegedRequestHandler extends ArchiveAdminAuthRequest request) throws AuthorizationException { AuthManager manager = AuthManagerFactory.getInstance().getManager(); - IRoleStorage roleStorage = manager.getRoleStorage(); + IAuthorizer auth = manager.getAuthorizer(); - boolean authorized = roleStorage.isAuthorized((request).getRoleId(), - user.uniqueId().toString(), APPLICATION); + boolean authorized = auth.isAuthorized(request.getRoleId(), user + .uniqueId().toString(), APPLICATION); if (authorized) { return new AuthorizationResponse(authorized); } else { - return new AuthorizationResponse( - (request).getNotAuthorizedMessage()); + return new AuthorizationResponse(request.getNotAuthorizedMessage()); } } } diff --git a/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/PROCESSED_DATA.xml b/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/PROCESSED_DATA.xml index ae6d917f5f..c511bc6cb6 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/PROCESSED_DATA.xml +++ b/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/PROCESSED_DATA.xml @@ -30,6 +30,7 @@ * Nov 13, 2013 2549 rferrel Changes to GFE and modelsounding. * Dec 12, 2013 2624 rferrel Document Julian time stamp. * Dec 13, 2013 2555 rjpeter Updated all to use dirPatterns. + * May 24, 2014 2881 rferrel Updated retention times. * * @author rferrel * @version 1.0 @@ -45,8 +46,8 @@ The has four types of tags: - Required tag. The id for the category such as grib2 or redbook. Used in the GUIs to filter what is the display in the table. - - Optional tag. The extended retentionHours for selected directories of this category. - Default is the archive's . + - Optional tag. The hours to retain data in directories of selected Data Sets for a category. + Default is 1 hour. - Required to have a least one. Each one contains a set of tags explained below. - A directory matching . These are selected directories from the Retention GUI. The purger will used the category's instead of the Arhivie's . @@ -139,7 +140,7 @@ Processed /archive/ - 24 + 168 Decision Assistance 168 diff --git a/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/RAW_DATA.xml b/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/RAW_DATA.xml index c88591683c..c5a7c71224 100644 --- a/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/RAW_DATA.xml +++ b/edexOsgi/com.raytheon.uf.edex.archive/utility/common_static/base/archiver/purger/RAW_DATA.xml @@ -27,6 +27,8 @@ * Aug 05, 2013 2224 rferrel Changes to add dataSet tags. * Oct 01, 2013 2147 rferrel Date time stamp no longer requires an hour field. * Dec 12, 2013 2624 rferrel Document Julian time stamp. + * May 14, 2014 2881 rferrel Change retention times and data set modifications. + * Aug 25, 2014 3537 rferrel Fixed dirPattern in Category Local. * * @author rferrel * @version 1.0 @@ -42,8 +44,8 @@ The has four types of tags: - Required tag. The id for the category such as grib2 or redbook. Used in the GUIs to filter what is the display in the table. - - Optional tag. The extended retentionHours for selected directories of this category. - Default is the archive's . + - Optional tag. The hours to retain data in directories of selected Data Sets for a category. + Default is 1 hour. - Required to have a least one. Each one contains a set of tags explained below. - A directory matching . These are selected directories from the Retention GUI. The purger will used the category's instead of the Arhivie's . @@ -136,48 +138,57 @@ Raw /data_store/ - 24 + 168 Local 168 - - (manual) - .*\.(\d{4})(\d{2})(\d{2})_(\d{2}).* - {1} - 2,3,4,5 - - - (manual) - .*_(\d{4})(\d{2})(\d{2})(\d{2})\..* - {1} - 2,3,4,5 - - - (manual) - .*-(\d{10}) - {1} - EpochSec - 2 - - - (manual) - .*\.wan(\d{10}) - {1} - EpochSec - 2 - - - (manual)/mpe - .*[^\d](\d{4})(\d{2})(\d{2})(\d{2})(z|\d{2}z).* - {1} - 2,3,4,5 - - - (manual) - .*\.\d{8}\.\d{3} - {1} - File - + + (manual)/grib/(\d{4})(\d{2})(\d{2})/(\d{2}) + .*(LAPS|MSAS).* + Date + {1}-LAPS/MSAS + 2,3,4,5 + + + (manual)/grib/(\d{4})(\d{2})(\d{2})/(\d{2})/(mpe) + .*_(\d{4})(\d{2})(\d{2})(\d{2})z.* + Date + {1}-MPE Local + 2,3,4,5 + + + (manual)/grib/(\d{4})(\d{2})(\d{2})/(\d{2})/(mpe) + (ZETA98_)[A-Z].*(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})z.* + Date + {1}-HPE/BiasHPE + 2,3,4,5 + + + (manual)/.*taf/(\d{4})(\d{2})(\d{2})/(\d{2}) + Date + {1}-Local TAFs + 2,3,4,5 + + + (manual)/shef/(\d{4})(\d{2})(\d{2})/(\d{2}) + Date + {1}-Various SHEF Products + 2,3,4,5 + + + (manual)/text/\d{8}/\d{2} + EpochSec + .*(\d{10}) + {1}-Various Local Text Products + 2 + + + (manual)/warning/\d{8}/\d{2} + EpochSec + .*(\d{10}) + {1}-Local Warnings + 2 + Model @@ -238,6 +249,12 @@ {1} 4,5,6,7 + + radar/(t...)/.*/.*/.*/.*/(netcdf)/.* + (\d{4})(\d{2})(\d{2})_(\d{2})(\d{2})(.*) + {1}-{2} + 3,4,5,6 + Satellite diff --git a/edexOsgi/com.raytheon.uf.edex.binlightning.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.binlightning.feature/feature.xml index ec27e25224..1974500c63 100644 --- a/edexOsgi/com.raytheon.uf.edex.binlightning.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.binlightning.feature/feature.xml @@ -24,4 +24,11 @@ version="0.0.0" unpack="false"/> + + diff --git a/edexOsgi/com.raytheon.uf.edex.bufr.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.bufr.feature/feature.xml index a6aeecf588..a41fd78db5 100644 --- a/edexOsgi/com.raytheon.uf.edex.bufr.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.bufr.feature/feature.xml @@ -74,7 +74,7 @@ unpack="false"/> + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.bufrtools/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.bufrtools/META-INF/MANIFEST.MF index 915ed93804..09dd23e26f 100644 --- a/edexOsgi/com.raytheon.uf.edex.bufrtools/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.bufrtools/META-INF/MANIFEST.MF @@ -2,15 +2,19 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Bufrtools Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.bufrtools -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin;bundle-version="1.12.1174", com.raytheon.uf.common.datastorage;bundle-version="1.12.1174", com.raytheon.uf.common.serialization;bundle-version="1.12.1174", com.raytheon.uf.edex.database;bundle-version="1.0.0", com.raytheon.uf.edex.pointdata;bundle-version="1.11.8", - com.raytheon.uf.edex.decodertools;bundle-version="1.0.0" -Export-Package: com.raytheon.uf.edex.bufrtools + com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", + javax.measure;bundle-version="1.0.0" +Export-Package: com.raytheon.uf.edex.bufrtools, + com.raytheon.uf.edex.bufrtools.descriptors, + com.raytheon.uf.edex.bufrtools.packets Import-Package: com.raytheon.edex.esb, + com.raytheon.uf.common.wmo, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/AbstractBUFRDecoder.java b/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/AbstractBUFRDecoder.java index 27d75c4289..cfc6e69061 100644 --- a/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/AbstractBUFRDecoder.java +++ b/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/AbstractBUFRDecoder.java @@ -27,14 +27,11 @@ import org.apache.commons.logging.LogFactory; import com.raytheon.edex.esb.Headers; import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.edex.decodertools.bufr.BUFRDataDocument; -import com.raytheon.uf.edex.decodertools.bufr.BUFRDocument; -import com.raytheon.uf.edex.decodertools.bufr.BUFRFile; -import com.raytheon.uf.edex.decodertools.bufr.descriptors.IDescriptorFactoryDelegate; -import com.raytheon.uf.edex.decodertools.bufr.descriptors.IDescriptorFactorySelector; -import com.raytheon.uf.edex.decodertools.bufr.packets.BUFRSublistPacket; -import com.raytheon.uf.edex.decodertools.bufr.packets.IBUFRDataPacket; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.edex.bufrtools.descriptors.IDescriptorFactoryDelegate; +import com.raytheon.uf.edex.bufrtools.descriptors.IDescriptorFactorySelector; +import com.raytheon.uf.edex.bufrtools.packets.BUFRSublistPacket; +import com.raytheon.uf.edex.bufrtools.packets.IBUFRDataPacket; /** * Abstract base class for implementing BUFR data decoders using subclasses of @@ -49,6 +46,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jun 19, 2009 2519 jkorman Initial creation + * May 14, 2014 2536 bclement moved WMO Header to common * * * @@ -101,7 +99,9 @@ public abstract class AbstractBUFRDecoder implements IDescriptorFactorySelector logger.debug(traceId + " - Decoding data"); try { if (data != null && data.length > 0) { - wmoHeader = new WMOHeader(data, headers); + String fileName = (String) headers + .get(WMOHeader.INGEST_FILE_NAME); + wmoHeader = new WMOHeader(data, fileName); if ((wmoHeader != null) && (wmoHeader.isValid())) { int start = wmoHeader.getMessageDataStart(); @@ -212,7 +212,7 @@ public abstract class AbstractBUFRDecoder implements IDescriptorFactorySelector * always returns "DEFAULT". * * @return Return the string value "DEFAULT". - * @see com.raytheon.edex.tools.bufr.descriptors.IDescriptorFactorySelector#getSelector() + * @see com.raytheon.uf.edex.bufrtools.descriptors.tools.bufr.descriptors.IDescriptorFactorySelector#getSelector() */ @Override public String getSelector() { diff --git a/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/BUFRPointDataAdapter.java b/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/BUFRPointDataAdapter.java index f80780e235..f6a5ea47e5 100644 --- a/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/BUFRPointDataAdapter.java +++ b/edexOsgi/com.raytheon.uf.edex.bufrtools/src/com/raytheon/uf/edex/bufrtools/BUFRPointDataAdapter.java @@ -31,16 +31,15 @@ import org.apache.commons.logging.LogFactory; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.pointdata.PointDataDescription; -import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.PointDataDescription.Type; -import com.raytheon.uf.edex.decodertools.bufr.BUFRDataDocument; -import com.raytheon.uf.edex.decodertools.bufr.packets.IBUFRDataPacket; +import com.raytheon.uf.common.pointdata.PointDataView; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.edex.bufrtools.packets.IBUFRDataPacket; import com.raytheon.uf.edex.pointdata.PointDataPluginDao; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Abstract base class for implementing data adapters for creating specific - * subclasses of PluginDataObject from BUFR data. + * subclasses of PluginDataObject from BUFR data. * * *
      @@ -48,6 +47,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader;
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * 20090629           2519 jkorman     Initial implementation.
      + * May 14, 2014 2536       bclement    moved WMO Header to common, added breaks/default to switch
        * 
        * 
      * @@ -217,32 +217,34 @@ public abstract class BUFRPointDataAdapter { Object o = packet.getValue(); if(o != null) { switch (t) { - case STRING : { + case STRING: if(o instanceof String) { view.setString(parmName,(String) o, index); } - } - case INT : { + break; + case INT: if(o instanceof Double) { view.setInt(parmName,((Double) o).intValue(), index); } else if(o instanceof Long) { view.setInt(parmName,((Long) o).intValue(), index); } - } - case LONG : { + break; + case LONG: if(o instanceof Double) { view.setLong(parmName,((Double) o).longValue(), index); } else if(o instanceof Long) { view.setLong(parmName,(Long) o, index); } - } - case FLOAT : { + break; + case FLOAT: if(o instanceof Double) { view.setFloat(parmName,((Double) o).floatValue(), index); } else if(o instanceof Long) { view.setFloat(parmName,((Long) o).floatValue(), index); } - } + break; + default: + logger.warn("Unsupported point data view type: " + t); } } } diff --git a/edexOsgi/com.raytheon.uf.edex.common.core.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.common.core.feature/feature.xml index 5bf02f365d..07571a90af 100644 --- a/edexOsgi/com.raytheon.uf.edex.common.core.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.common.core.feature/feature.xml @@ -77,13 +77,6 @@ version="0.0.0" unpack="false"/> - - - - - - + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.core.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.core.feature/feature.xml index c79ec44b8b..3242e38af2 100644 --- a/edexOsgi/com.raytheon.uf.edex.core.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.core.feature/feature.xml @@ -20,21 +20,7 @@ - - - - - + - + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.cpgsrv/res/spring/cpgsrv-spring.xml b/edexOsgi/com.raytheon.uf.edex.cpgsrv/res/spring/cpgsrv-spring.xml index c1dd697082..bff953f0f7 100644 --- a/edexOsgi/com.raytheon.uf.edex.cpgsrv/res/spring/cpgsrv-spring.xml +++ b/edexOsgi/com.raytheon.uf.edex.cpgsrv/res/spring/cpgsrv-spring.xml @@ -4,25 +4,10 @@ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> - - - - - - - - - - + errorHandlerRef="errorHandler"> @@ -38,8 +23,7 @@ - + diff --git a/edexOsgi/com.raytheon.uf.edex.cpgsrv/src/com/raytheon/uf/edex/cpgsrv/CompositeProductGenerator.java b/edexOsgi/com.raytheon.uf.edex.cpgsrv/src/com/raytheon/uf/edex/cpgsrv/CompositeProductGenerator.java index 481473320d..5afcedffc1 100644 --- a/edexOsgi/com.raytheon.uf.edex.cpgsrv/src/com/raytheon/uf/edex/cpgsrv/CompositeProductGenerator.java +++ b/edexOsgi/com.raytheon.uf.edex.cpgsrv/src/com/raytheon/uf/edex/cpgsrv/CompositeProductGenerator.java @@ -40,6 +40,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.core.EdexException; +import com.raytheon.uf.edex.core.IContextStateProcessor; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; import com.raytheon.uf.edex.database.plugin.PluginDao; @@ -61,7 +62,8 @@ import com.raytheon.uf.edex.database.plugin.PluginDao; * 02/05/2013 1580 mpduff EventBus refactor. * 02/12/2013 1615 bgonzale Changed ProcessEvent pluginName to dataType. * Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin - * + * Apr 17, 2014 2726 rjpeter Updated to send alerts directly to notification route. + * Aug 26, 2014 3503 bclement moved initialization to context state processor pre-start method * * * @author dhladky @@ -69,7 +71,7 @@ import com.raytheon.uf.edex.database.plugin.PluginDao; */ public abstract class CompositeProductGenerator implements - ICompositeProductGenerator, IURIFilter { + ICompositeProductGenerator, IURIFilter, IContextStateProcessor { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(CompositeProductGenerator.class); @@ -123,18 +125,56 @@ public abstract class CompositeProductGenerator implements */ public CompositeProductGenerator(String name, String compositeProductType, Executor executor) { - // create CPG if (isRunning()) { setGeneratorName(name); setCompositeProductType(compositeProductType); setExecutor(executor); - configureFilters(); - createFilters(); } routeId = getGeneratorName() + "Generate"; } + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.edex.core.IContextStateProcessor#preStart() + */ + @Override + public void preStart() { + // create CPG + if (isRunning()) { + configureFilters(); + createFilters(); + } + } + + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.edex.core.IContextStateProcessor#postStart() + */ + @Override + public void postStart() { + } + + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.edex.core.IContextStateProcessor#preStop() + */ + @Override + public void preStop() { + } + + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.edex.core.IContextStateProcessor#postStop() + */ + @Override + public void postStop() { + } + /* * (non-Javadoc) * @@ -380,7 +420,7 @@ public abstract class CompositeProductGenerator implements protected void persistRecords() { try { PluginDataObject[] pdos = getPluginDataObjects(); - if (pdos != null && getDao() != null && pdos.length > 0) { + if ((pdos != null) && (getDao() != null) && (pdos.length > 0)) { EDEXUtil.checkPersistenceTimes(pdos); getDao().persistRecords(pdos); } @@ -394,10 +434,10 @@ public abstract class CompositeProductGenerator implements */ protected void fireTopicUpdate() { try { - if (getPluginDataObjects() != null - && getPluginDataObjects().length > 0) { - EDEXUtil.getMessageProducer().sendAsync("cpgProcessAlerts", - getPluginDataObjects()); + if ((getPluginDataObjects() != null) + && (getPluginDataObjects().length > 0)) { + EDEXUtil.getMessageProducer().sendAsync( + "notificationAggregation", getPluginDataObjects()); } } catch (EdexException e) { e.printStackTrace(); @@ -437,7 +477,8 @@ public abstract class CompositeProductGenerator implements @Override public void log(URIGenerateMessage message) { - if (getPluginDataObjects() != null && getPluginDataObjects().length > 0) { + if ((getPluginDataObjects() != null) + && (getPluginDataObjects().length > 0)) { long curTime = System.currentTimeMillis(); ProcessEvent processEvent = new ProcessEvent(); diff --git a/edexOsgi/com.raytheon.uf.edex.dat.utils/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.dat.utils/META-INF/MANIFEST.MF index c3cbd9a5dc..d74ea2f075 100644 --- a/edexOsgi/com.raytheon.uf.edex.dat.utils/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.dat.utils/META-INF/MANIFEST.MF @@ -2,11 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: DatUtils Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.dat.utils -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Import-Package: com.raytheon.uf.common.dataplugin.ffmp, - com.raytheon.uf.common.dataplugin.grid, +Import-Package: com.raytheon.uf.common.dataplugin.grid, com.raytheon.uf.common.dataplugin.scan.data, com.raytheon.uf.common.localization, com.raytheon.uf.common.monitor.xml, @@ -14,7 +13,6 @@ Import-Package: com.raytheon.uf.common.dataplugin.ffmp, org.apache.commons.logging Export-Package: com.raytheon.uf.edex.dat.utils Require-Bundle: com.raytheon.edex.common;bundle-version="1.12.2", - com.raytheon.uf.common.dataplugin.ffmp;bundle-version="1.12.2", com.raytheon.uf.common.monitor;bundle-version="1.12.2", - com.raytheon.uf.common.dataplugin.shef;bundle-version="1.12.1174", - com.raytheon.uf.edex.menus;bundle-version="1.0.0" + com.raytheon.uf.edex.menus;bundle-version="1.0.0", + com.raytheon.uf.common.parameter diff --git a/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DATUtils.java b/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DATUtils.java index 0b64cbd375..ca488bd958 100644 --- a/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DATUtils.java +++ b/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DATUtils.java @@ -19,26 +19,19 @@ **/ package com.raytheon.uf.edex.dat.utils; -import java.text.SimpleDateFormat; -import java.util.ArrayList; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.PluginException; -import com.raytheon.uf.common.dataplugin.ffmp.FFMPVirtualGageBasin; import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.persist.IPersistable; -import com.raytheon.uf.common.dataplugin.shef.util.ShefConstants; import com.raytheon.uf.common.datastorage.IDataStore; import com.raytheon.uf.common.datastorage.records.FloatDataRecord; import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.monitor.processing.IMonitorProcessing; import com.raytheon.uf.common.monitor.xml.SCANModelParameterXML; import com.raytheon.uf.common.monitor.xml.SourceXML; -import com.raytheon.uf.edex.database.dao.CoreDao; -import com.raytheon.uf.edex.database.dao.DaoConfig; import com.raytheon.uf.edex.database.plugin.PluginDao; import com.raytheon.uf.edex.database.plugin.PluginFactory; @@ -52,6 +45,7 @@ import com.raytheon.uf.edex.database.plugin.PluginFactory; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 06/22/09 2152 D. Hladky Initial release + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -69,8 +63,7 @@ public class DATUtils { * @param uri * @return */ - public static PluginDataObject getPDORecord(String uri, SourceXML xml) - throws PluginException { + public static PluginDataObject getPDORecord(String uri, SourceXML xml) { PluginDataObject rec = null; try { Class clazz = Class.forName(xml.getPluginClass()); @@ -97,162 +90,36 @@ public class DATUtils { * @return */ public static GridRecord getGridRecord(String uri) throws PluginException { - GridRecord gr = new GridRecord(uri); - PluginDao gd = PluginFactory.getInstance().getPluginDao( - gr.getPluginName()); - gr = (GridRecord) gd.getMetadata(uri); - if (gr != null) { - - IDataStore dataStore = gd.getDataStore(gr); - - try { - IDataRecord[] dataRec = dataStore.retrieve(uri); - for (int i = 0; i < dataRec.length; i++) { - if (dataRec[i] instanceof FloatDataRecord) { - gr.setMessageData(dataRec[i]); - } - } - } catch (Exception se) { - logger.error("No Grib record found....."); - } - } else { - logger.error("URI: " + uri + " Not in Database..."); + populateGridRecord(gr); } return gr; } /** - * Make a DB request + * Fills a GridRecord with the raw data retrieved from IDataStore * - * @param sql - * @return + * @param gr + * @throws PluginException */ - public static Object[] dbRequest(String sql) { - - logger.debug("SQL to run: " + sql); - CoreDao cdao = null; - Object[] results = null; - try { - if (cdao == null) { - try { - cdao = new CoreDao(DaoConfig.DEFAULT); - } catch (Exception ed1) { - logger.error("Core DAO access failed. " + ed1); - } - } - results = cdao.executeSQLQuery(sql); - - } catch (Exception ed2) { - logger.error("SQL Query Failed to process. SQL=" + sql + " : " - + ed2); - } - return results; - } - - /** - * Gets the value for an accumulating Virtual Gage Basin - * - * @param lid - * @param startTime - * @param endTime - * @return - */ - public static FFMPVirtualGageBasin getVirtualBasinData(String lid, - FFMPVirtualGageBasin vgb, String endTime, String startTime) { - - // According to the AWIPS I code - - SimpleDateFormat dateFmt = new SimpleDateFormat("MMM dd yy HH:mm:ss"); - CoreDao dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - - String sql1 = "SELECT dur, value, ts FROM curpc WHERE lid = '" + lid - + "' AND obstime >= '" + startTime + "' AND obstime < '" - + endTime + "' AND pe = 'PC' ORDER BY obstime DESC, ts ASC"; - String sql2 = "SELECT dur, value, ts FROM curpp WHERE lid = '" - + lid - + "' AND obstime >= '" - + startTime - + "' AND obstime < '" - + endTime - + "' AND pe = 'PP' AND dur <= 1001 AND value >=0 ORDER BY dur ASC, obstime DESC, ts ASC"; - - dao = new CoreDao(DaoConfig.forDatabase(ShefConstants.IHFS)); - - try { - // 15 min accumulation - Object[] results = dao.executeSQLQuery(sql1.toString()); - Object[] tsresults = null; - String ts = null; - - if (results.length > 0) { - if (results.length > 1) { - // Gets the highest ranked - String sql3 = "SELECT ts, ts_rank FROM ingestfilter WHERE lid = '" - + lid - + "' AND pe = 'PC' ORDER BY ts_rank ASC limit 1"; - tsresults = dao.executeSQLQuery(sql3.toString()); - } - } else { - results = dao.executeSQLQuery(sql2.toString()); - - if (results.length > 0) { - if (results.length > 1) { - String sql3 = "SELECT ts, ts_rank FROM ingestfilter WHERE lid = '" - + lid - + "' AND pe = 'PP' ORDER BY ts_rank ASC limit 1"; - tsresults = dao.executeSQLQuery(sql3.toString()); + public static void populateGridRecord(GridRecord gr) throws PluginException { + if (gr != null) { + PluginDao gd = PluginFactory.getInstance().getPluginDao( + gr.getPluginName()); + IDataStore dataStore = gd.getDataStore(gr); + try { + IDataRecord[] dataRec = dataStore.retrieve(gr.getDataURI()); + for (int i = 0; i < dataRec.length; i++) { + if (dataRec[i] instanceof FloatDataRecord) { + gr.setMessageData(dataRec[i]); } } + } catch (Exception e) { + logger.error("Error retrieving grid data for " + gr, e); } - - // parse through getting rid of undesireable types - if (tsresults != null && tsresults.length > 0) { - ArrayList durations = new ArrayList(); - ArrayList values = new ArrayList(); - - for (int i = 0; i < results.length; i++) { - Object[] obs = (Object[]) tsresults[i]; - - if (obs[2] != null) { - if (((String) obs[2]).equals(ts)) { - - if (obs[0] != null) { - durations.add((Integer) obs[0]); - } - if (obs[1] != null) { - values.add(((Number) obs[1]).floatValue()); - } - } - } - } - - int totalDurations = 0; - for (int dur : durations) { - totalDurations += dur; - } - - int avDuration = totalDurations / durations.size(); - - float totalVals = 0.0f; - for (float val : values) { - totalVals += val; - } - - float avVal = totalVals / values.size(); - - vgb.setValue(dateFmt.parse(endTime), avVal); - } else { - vgb.setValue(dateFmt.parse(endTime), 0.0f); - } - } catch (Exception e) { - logger.error("No Virual Gage Basin found....."); } - - return vgb; - } /** @@ -263,20 +130,18 @@ public class DATUtils { * @param param * @return */ - public static GridRecord getMostRecentGridRecord(int interval, String sql, - SCANModelParameterXML param) { - + public static GridRecord getMostRecentGridRecord(int interval, + GridRecord newRec, SCANModelParameterXML param) { GridRecord rec = null; try { ScanDataCache cache = ScanDataCache.getInstance(); - Object[] obs = dbRequest(sql); - GridRecord newRec = null; - - if (obs != null && obs.length > 0) { - String uri = (String) obs[0]; - newRec = getGridRecord(uri); - } + /* + * TODO njensen: we should only spend time populating if the new rec + * replaces the old rec. Delaying that change as at present as I'm + * just trying to make it work the same as before. + */ + populateGridRecord(newRec); if (cache.getModelData().isType(param.getModelName(), param.getParameterName())) { @@ -304,9 +169,8 @@ public class DATUtils { } } } catch (Exception e) { - logger.error("DatUtils: " + param.getModelName() + ": " - + param.getParameterName() + " SQL: " + sql - + " error in retrieval.."); + logger.error("Error in retrieval: " + param.getModelName() + ": " + + param.getParameterName() + " record: " + newRec); } return rec; diff --git a/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DatMenuUtil.java b/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DatMenuUtil.java index db2f36252e..ca1219d22d 100644 --- a/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DatMenuUtil.java +++ b/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/DatMenuUtil.java @@ -22,8 +22,8 @@ package com.raytheon.uf.edex.dat.utils; import java.io.File; import java.util.ArrayList; import java.util.List; +import java.util.Set; -import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; @@ -42,6 +42,7 @@ import com.raytheon.uf.common.menus.xml.VariableSubstitution; import com.raytheon.uf.common.monitor.config.FFMPRunConfigurationManager; import com.raytheon.uf.common.monitor.config.FFMPSourceConfigurationManager; import com.raytheon.uf.common.monitor.config.FFMPSourceConfigurationManager.DATA_TYPE; +import com.raytheon.uf.common.monitor.config.FSSObsMonitorConfigurationManager; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.xml.FFMPRunXML; import com.raytheon.uf.common.monitor.xml.ProductRunXML; @@ -52,7 +53,7 @@ import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.menus.AbstractMenuUtil; /** - * TODO Add Description + * Utility for DAT menu creation. * *
        * 
      @@ -64,6 +65,7 @@ import com.raytheon.uf.edex.menus.AbstractMenuUtil;
        * June 6, 2011 #9827      bkowal    Skip scan menu creation if the Run
        *                                   Configuration Manager has not read a
        *                                   FFMPRunConfig.xml file.
      + * Sep 04, 2014 3220       skorolev  Updated menu creation for Fog, Safeseas and Snow monitors.
        * 
        * 
      * @@ -393,54 +395,22 @@ public class DatMenuUtil extends AbstractMenuUtil { + "scan.xml"); /*************************************** OTHER ********************************/ - IPathManager pathMgr = PathManagerFactory.getPathManager(); - LocalizationContext commonStaticSite = pathMgr.getContext( - LocalizationType.COMMON_STATIC, LocalizationLevel.SITE); - String cwa = commonStaticSite.getContextName(); - - CommonMenuContributionFile fogMenuContributionFile = new CommonMenuContributionFile(); - fogMenuContributionFile.contribution = new CommonIncludeMenuItem[1]; - - fogMenuContributionFile.contribution[0] = new CommonIncludeMenuItem(); - - fogMenuContributionFile.contribution[0] = processOtherContribution(cwa, - "menus/fog/baseFog.xml", "menu:obs?after=FOGPLACEHOLDER", - "Fog Monitor", fogMenuContributionFile.contribution[0]); - - toXml(fogMenuContributionFile, "menus" + File.separator + "fog" - + File.separator + "index.xml"); - - CommonMenuContributionFile safeMenuContributionFile = new CommonMenuContributionFile(); - safeMenuContributionFile.contribution = new CommonIncludeMenuItem[1]; - - safeMenuContributionFile.contribution[0] = new CommonIncludeMenuItem(); - - safeMenuContributionFile.contribution[0] = processOtherContribution( - cwa, "menus/safeseas/baseSafeSeas.xml", - "menu:obs?before=EndOfMaritime", "SAFESEAS", - safeMenuContributionFile.contribution[0]); - - toXml(safeMenuContributionFile, "menus" + File.separator + "safeseas" - + File.separator + "index.xml"); - - CommonMenuContributionFile snowMenuContributionFile = new CommonMenuContributionFile(); - snowMenuContributionFile.contribution = new CommonIncludeMenuItem[1]; - - snowMenuContributionFile.contribution[0] = new CommonIncludeMenuItem(); - - snowMenuContributionFile.contribution[0] = processOtherContribution( - cwa, "menus/snow/baseSnow.xml", - "menu:obs?after=SNOWPLACEHOLDER", "SNOW", - safeMenuContributionFile.contribution[0]); - - toXml(snowMenuContributionFile, "menus" + File.separator + "snow" - + File.separator + "index.xml"); + createFogMenu(); + createSafeseasMenu(); + createSnowMenu(); statusHandler.info("Finished processing DAT menus."); override = false; datSite = null; } + /** + * Process Contribution. + * + * @param radar + * @param filePath + * @return + */ private CommonAbstractMenuContribution processContribution(String radar, String filePath) { CommonIncludeMenuContribution subIncludeContribution = new CommonIncludeMenuContribution(); @@ -472,6 +442,17 @@ public class DatMenuUtil extends AbstractMenuUtil { return list; } + /** + * Process FFMP Contribution. + * + * @param site + * @param source + * @param dataKey + * @param displayName + * @param filePath + * @param subIncludeContribution + * @return + */ private CommonAbstractMenuContribution processFFMPContribution(String site, String source, String dataKey, String displayName, String filePath, CommonIncludeMenuContribution subIncludeContribution) { @@ -496,14 +477,102 @@ public class DatMenuUtil extends AbstractMenuUtil { return subIncludeContribution; } - private CommonIncludeMenuItem processOtherContribution(String cwa, + /** + * Creates SAFESEAS Menu. + */ + private void createSafeseasMenu() { + FSSObsMonitorConfigurationManager ssConfig = FSSObsMonitorConfigurationManager + .getSsObsManager(); + Set ssStns = ssConfig.getStationIDs(); + StringBuilder stations = new StringBuilder(); + for (String s : ssStns) { + if (stations.length() > 0) { + stations.append(","); + } + stations.append(s); + } + String ssStations = stations.toString(); + CommonMenuContributionFile safeMenuContributionFile = new CommonMenuContributionFile(); + safeMenuContributionFile.contribution = new CommonIncludeMenuItem[1]; + safeMenuContributionFile.contribution[0] = new CommonIncludeMenuItem(); + safeMenuContributionFile.contribution[0] = processOtherContribution( + ssStations, "menus/safeseas/baseSafeSeas.xml", + "menu:obs?before=EndOfMaritime", "SAFESEAS", + safeMenuContributionFile.contribution[0]); + toXml(safeMenuContributionFile, "menus" + File.separator + "safeseas" + + File.separator + "index.xml"); + } + + /** + * Creates Fog Menu. + */ + private void createFogMenu() { + FSSObsMonitorConfigurationManager fogConfig = FSSObsMonitorConfigurationManager + .getFogObsManager(); + Set fogStns = fogConfig.getStationIDs(); + StringBuilder stations = new StringBuilder(); + for (String s : fogStns) { + if (stations.length() > 0) { + stations.append(","); + } + stations.append(s); + } + String fogStations = stations.toString(); + CommonMenuContributionFile fogMenuContributionFile = new CommonMenuContributionFile(); + fogMenuContributionFile.contribution = new CommonIncludeMenuItem[1]; + fogMenuContributionFile.contribution[0] = new CommonIncludeMenuItem(); + fogMenuContributionFile.contribution[0] = processOtherContribution( + fogStations, "menus/fog/baseFog.xml", + "menu:obs?after=FOGPLACEHOLDER", "Fog Monitor", + fogMenuContributionFile.contribution[0]); + toXml(fogMenuContributionFile, "menus" + File.separator + "fog" + + File.separator + "index.xml"); + } + + /** + * Creates SNOW Menu. + */ + private void createSnowMenu() { + FSSObsMonitorConfigurationManager snowConfig = FSSObsMonitorConfigurationManager + .getSnowObsManager(); + Set snowStns = snowConfig.getStationIDs(); + StringBuilder stations = new StringBuilder(); + for (String s : snowStns) { + if (stations.length() > 0) { + stations.append(","); + } + stations.append(s); + } + String snowStations = stations.toString(); + CommonMenuContributionFile snowMenuContributionFile = new CommonMenuContributionFile(); + snowMenuContributionFile.contribution = new CommonIncludeMenuItem[1]; + snowMenuContributionFile.contribution[0] = new CommonIncludeMenuItem(); + snowMenuContributionFile.contribution[0] = processOtherContribution( + snowStations, "menus/snow/baseSnow.xml", + "menu:obs?after=SNOWPLACEHOLDER", "SNOW", + snowMenuContributionFile.contribution[0]); + toXml(snowMenuContributionFile, "menus" + File.separator + "snow" + + File.separator + "index.xml"); + } + + /** + * Process Other(Fog, Safaseas and Snow) Contribution. + * + * @param stations + * @param filePath + * @param installLoc + * @param subMenuName + * @param commonIncludeMenu + * @return + */ + private CommonIncludeMenuItem processOtherContribution(String stations, String filePath, String installLoc, String subMenuName, CommonIncludeMenuItem commonIncludeMenu) { commonIncludeMenu.substitutions = new VariableSubstitution[1]; commonIncludeMenu.substitutions[0] = new VariableSubstitution(); - commonIncludeMenu.substitutions[0].key = "cwa"; - commonIncludeMenu.substitutions[0].value = cwa; + commonIncludeMenu.substitutions[0].key = "stations"; + commonIncludeMenu.substitutions[0].value = stations; commonIncludeMenu.fileName = new File(filePath); commonIncludeMenu.installationLocation = installLoc; commonIncludeMenu.subMenuName = subMenuName; diff --git a/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/FreezingLevel.java b/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/FreezingLevel.java index 1415a59ff2..b4703b2e96 100644 --- a/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/FreezingLevel.java +++ b/edexOsgi/com.raytheon.uf.edex.dat.utils/src/com/raytheon/uf/edex/dat/utils/FreezingLevel.java @@ -1,5 +1,3 @@ -package com.raytheon.uf.edex.dat.utils; - /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. @@ -19,28 +17,35 @@ package com.raytheon.uf.edex.dat.utils; * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ -import java.text.SimpleDateFormat; + +package com.raytheon.uf.edex.dat.utils; + import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; +import java.util.List; import java.util.Map.Entry; import java.util.TreeSet; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.geotools.coverage.grid.GridGeometry2D; import org.geotools.geometry.DirectPosition2D; import org.opengis.referencing.crs.CoordinateReferenceSystem; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import com.raytheon.uf.common.dataplugin.grid.GridConstants; import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.datastorage.records.FloatDataRecord; import com.raytheon.uf.common.geospatial.ISpatialObject; import com.raytheon.uf.common.geospatial.MapUtil; import com.raytheon.uf.common.geospatial.PointUtil; import com.raytheon.uf.common.monitor.xml.SCANModelParameterXML; +import com.raytheon.uf.edex.database.plugin.PluginDao; +import com.raytheon.uf.edex.database.plugin.PluginFactory; +import com.raytheon.uf.edex.database.query.DatabaseQuery; import com.vividsolutions.jts.geom.Coordinate; /** @@ -56,6 +61,7 @@ import com.vividsolutions.jts.geom.Coordinate; * 19Nov 2011 dhladky Initial creation * 29 Jan 2013 15729 wkwock fix the algorithm * Jan 07, 2013 njensen Change some logs to debug + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -86,8 +92,9 @@ public class FreezingLevel { // reference time Calendar refTime = null; + private transient final Log logger = LogFactory.getLog(getClass()); - + public FreezingLevel(String modelName) { this.modelName = modelName; times = new HashMap(); @@ -112,72 +119,80 @@ public class FreezingLevel { /** * find (x,y) coordinate for lat,lon(coor) + * * @param coors */ - public DirectPosition2D findXYloc(Coordinate coor, String type){ + public DirectPosition2D findXYloc(Coordinate coor, String type) { ScanDataCache cache = ScanDataCache.getInstance(); - ISpatialObject iso = cache.getModelData().getGridRecord(modelName, type).getSpatialObject(); - CoordinateReferenceSystem crs=iso.getCrs(); + ISpatialObject iso = cache.getModelData() + .getGridRecord(modelName, type).getSpatialObject(); + CoordinateReferenceSystem crs = iso.getCrs(); GridGeometry2D mapGeometry = MapUtil.getGridGeometry(iso); DirectPosition2D resultPoint; try { - resultPoint = PointUtil.determineExactIndex( - coor, crs, mapGeometry); - return resultPoint; - } catch (Exception e) { - logger.error("Error: Freezing level -- unable to find x,y coordinate for lat,lon:"+coor); + resultPoint = PointUtil.determineExactIndex(coor, crs, mapGeometry); + return resultPoint; + } catch (Exception e) { + logger.error("Error: Freezing level -- unable to find x,y coordinate for lat,lon:" + + coor); } - return null; + return null; } - + /** * get the bi-linear interpolation value amount the nearest 4 points * - * @param modelName, prodType, coor + * @param modelName + * , prodType, coor * @return bi-linear interpolation amount the nearest 4 points * @throws VizException */ public Double getValue(String modelName, String prodType, Coordinate coor) { double value = -99999.0; try { - //xyLoc is the location in x,y - DirectPosition2D xyLoc = findXYloc(coor, prodType); + // xyLoc is the location in x,y + DirectPosition2D xyLoc = findXYloc(coor, prodType); - //data from hdf5 - ScanDataCache cache = ScanDataCache.getInstance(); - GridRecord gribRec = cache.getModelData().getGridRecord(modelName, prodType); + // data from hdf5 + ScanDataCache cache = ScanDataCache.getInstance(); + GridRecord gribRec = cache.getModelData().getGridRecord(modelName, + prodType); FloatDataRecord rec = (FloatDataRecord) gribRec.getMessageData(); - - //dimension of the record from hdf5, recNx =151 and recNy=113 during development + + // dimension of the record from hdf5, recNx =151 and recNy=113 + // during development int recNx = gribRec.getSpatialObject().getNx(); - - //get four nearest points/values form the record around xyLoc - xyLoc.y=xyLoc.y * 0.9941; //A special adjustment due to PointUtil.determineExactIndex - xyLoc.x=xyLoc.x * 0.9983; // is not as accurate as A1 - int x0=(int)(xyLoc.x); - int x1=x0+1; - int y0=(int)(xyLoc.y); - int y1=y0+1; + // get four nearest points/values form the record around xyLoc + xyLoc.y = xyLoc.y * 0.9941; // A special adjustment due to + // PointUtil.determineExactIndex + xyLoc.x = xyLoc.x * 0.9983; // is not as accurate as A1 + + int x0 = (int) (xyLoc.x); + int x1 = x0 + 1; + int y0 = (int) (xyLoc.y); + int y1 = y0 + 1; + + double p1 = xyLoc.x - x0; + double p2 = 1 - p1; + double p3 = xyLoc.y - y0; + double p4 = 1 - p3; - double p1=xyLoc.x-x0; - double p2=1-p1; - double p3=xyLoc.y-y0; - double p4=1-p3; - double value0 = rec.getFloatData()[(recNx * y0) + x0]; double value1 = rec.getFloatData()[(recNx * y0) + x1]; double value2 = rec.getFloatData()[(recNx * y1) + x0]; double value3 = rec.getFloatData()[(recNx * y1) + x1]; - //do a bi-linear interpolation amount the nearest 4 points - value = (p1*p4*value1)+(p2*p4*value0)+(p1*p3*value3)+(p2*p3*value2); - logger.debug("bi-linear interpolation: "+value+"-->("+value0+","+value1+ - ","+value2+","+value3+") at "+xyLoc); + // do a bi-linear interpolation amount the nearest 4 points + value = (p1 * p4 * value1) + (p2 * p4 * value0) + + (p1 * p3 * value3) + (p2 * p3 * value2); + logger.debug("bi-linear interpolation: " + value + "-->(" + value0 + + "," + value1 + "," + value2 + "," + value3 + ") at " + + xyLoc); } catch (Exception e) { logger.error("No Grib value available....." + modelName + " " - + prodType+" lat,lon:"+coor); + + prodType + " lat,lon:" + coor); return null; } return value; @@ -194,7 +209,7 @@ public class FreezingLevel { HashMap freezingMap = new HashMap(); ScanDataCache cache = ScanDataCache.getInstance(); - //get data from hdf5 files + // get data from hdf5 files for (Coordinate coor : coors) { HashMap ghValues = new HashMap(); @@ -202,37 +217,43 @@ public class FreezingLevel { for (Entry entry : getGHLevelMap().entrySet()) { if (cache.getModelData().isType(modelName, entry.getKey())) { - ghValues.put(entry.getValue(), getValue(modelName, entry.getKey(), coor)); + ghValues.put(entry.getValue(), + getValue(modelName, entry.getKey(), coor)); } else { - ghValues.put(entry.getValue(),null); + ghValues.put(entry.getValue(), null); } } for (Entry entry : getTLevelMap().entrySet()) { if (cache.getModelData().isType(modelName, entry.getKey())) { - tValues.put(entry.getValue(), getValue(modelName, entry.getKey(), coor)); + tValues.put(entry.getValue(), + getValue(modelName, entry.getKey(), coor)); } } - - //here's the calculation + + // here's the calculation Double fLevel = 0.0; Integer jtopLevel = null; Integer ktopLevel = null; - int foundValFlag=-1;//-1=all ghValue and tValue are null, - //0=all ghValue<=-9000 and tValue<=273.16, 1=found a fLevel + int foundValFlag = -1;// -1=all ghValue and tValue are null, + // 0=all ghValue<=-9000 and tValue<=273.16, 1=found a fLevel - TreeSet ts= new TreeSet(ghValues.keySet());//want an asc sorted list + TreeSet ts = new TreeSet(ghValues.keySet());// want + // an + // asc + // sorted + // list Iterator it = ts.iterator(); - //for (Integer level : ghValues.keySet()) { + // for (Integer level : ghValues.keySet()) { while (it.hasNext()) { - Integer level = (Integer) it.next(); + Integer level = it.next(); Double tValue = tValues.get(level); Double ghValue = ghValues.get(level); - if (ghValue != null && tValue != null && foundValFlag ==-1){ - foundValFlag=0; + if (ghValue != null && tValue != null && foundValFlag == -1) { + foundValFlag = 0; } if (ghValue != null && ghValue.doubleValue() > -9000) { @@ -242,14 +263,13 @@ public class FreezingLevel { .get(ktopLevel) - ghValue) * ((273.16 - tValues .get(jtopLevel)) / (tValue - tValues .get(jtopLevel))))) * .00328; - logger.debug("***Freezing level: "+fLevel+"=" - + "(" + ghValues.get(ktopLevel) - + " - ((" + ghValues.get(ktopLevel) + " - " - + ghValue + ") * ((273.16 - " - + tValues.get(jtopLevel) + ") / (" + tValue - + " - " + tValues.get(jtopLevel) - + ")))) * .00328"); - foundValFlag=1; + logger.debug("***Freezing level: " + fLevel + "=" + "(" + + ghValues.get(ktopLevel) + " - ((" + + ghValues.get(ktopLevel) + " - " + ghValue + + ") * ((273.16 - " + tValues.get(jtopLevel) + + ") / (" + tValue + " - " + + tValues.get(jtopLevel) + ")))) * .00328"); + foundValFlag = 1; freezingMap.put(coor, fLevel.floatValue()); break; } else { @@ -258,10 +278,10 @@ public class FreezingLevel { } } } - - if (foundValFlag==0) {//this means all tValue are <= 273.16 - freezingMap.put(coor, 0.0f); - logger.debug("*** FreezingLevel = 0.0"); + + if (foundValFlag == 0) {// this means all tValue are <= 273.16 + freezingMap.put(coor, 0.0f); + logger.debug("*** FreezingLevel = 0.0"); } } @@ -343,15 +363,21 @@ public class FreezingLevel { * @param param * @return */ - private GridRecord populateRecord(String model, String param, Date refTime) { + private void populateRecord(String model, String param, Date refTime) { int interval = 1440; SCANModelParameterXML paramXML = new SCANModelParameterXML(); paramXML.setModelName(model); paramXML.setParameterName(param); - String sql = getSQL(interval, model, param, refTime); - logger.debug("Freezing level sql="+sql); - GridRecord modelRec = DATUtils.getMostRecentGridRecord(interval, sql, + GridRecord modelRec = null; + try { + modelRec = getGridRecord(interval, model, param, refTime); + } catch (Exception e) { + logger.error("Error retrieving grid record " + model + " " + param + + " " + refTime, e); + } + logger.debug("Freezing level rec=" + modelRec); + modelRec = DATUtils.getMostRecentGridRecord(interval, modelRec, paramXML); if (modelRec != null) { @@ -359,8 +385,6 @@ public class FreezingLevel { addForecastTime(fcHour); times.put(fcHour, modelRec.getDataTime().getRefTime()); } - - return modelRec; } /** @@ -432,17 +456,11 @@ public class FreezingLevel { return times; } - /** - * The SQL - * - * @return - */ - private String getSQL(int interval, String model, String param, Date refTime) { + private GridRecord getGridRecord(int interval, String model, String param, + Date refTime) throws Exception { String paramName = null; String level = null; - SimpleDateFormat sdt = new SimpleDateFormat("yyyy-MM-dd HH:00:00"); - String refTimeStr = sdt.format(refTime); if (param.startsWith("GH")) { paramName = "GH"; level = param.substring(2, param.length()); @@ -451,13 +469,30 @@ public class FreezingLevel { level = param.substring(1, param.length()); } - // Gets the most recent record of it's type - String sql = "select grid.datauri from grid, grid_info, level where grid.info_id = grid_info.id and grid_info.level_id = level.id and grid_info.parameter_abbreviation = \'" - + paramName - + "\' and grid_info.datasetId = \'" - + model - + "\' and level.masterlevel_name = 'MB' and level.levelonevalue = '" - + level + "\' and grid.reftime=\'" + refTimeStr + "\' and grid.forecasttime=0 order by grid.reftime desc limit 1"; - return sql; + DatabaseQuery dbQuery = new DatabaseQuery(GridRecord.class); + dbQuery.addQueryParam(GridConstants.DATASET_ID, model); + dbQuery.addQueryParam(GridConstants.PARAMETER_ABBREVIATION, paramName); + dbQuery.addQueryParam(GridConstants.MASTER_LEVEL_NAME, "MB"); + dbQuery.addQueryParam(GridConstants.LEVEL_ONE, level); + dbQuery.addQueryParam("dataTime.refTime", refTime); + dbQuery.addQueryParam("dataTime.fcstTime", 0); + dbQuery.addOrder("dataTime.refTime", false); + dbQuery.setMaxResults(1); + + try { + PluginDao dao = PluginFactory.getInstance().getPluginDao( + GridConstants.GRID); + List list = dao.queryByCriteria(dbQuery); + GridRecord result = null; + if (list != null && !list.isEmpty()) { + result = (GridRecord) list.get(0); + } + return result; + } catch (Exception e) { + throw new Exception("Error querying database for grid record " + + dbQuery, e); + } + } + } diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/.classpath b/edexOsgi/com.raytheon.uf.edex.dataaccess/.classpath index ad32c83a78..1fa3e6803d 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/.classpath +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/.classpath @@ -1,6 +1,6 @@ - + diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/.project b/edexOsgi/com.raytheon.uf.edex.dataaccess/.project index 990ffd7b5c..cc9099731d 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/.project +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/.project @@ -5,6 +5,11 @@ + + org.python.pydev.PyDevBuilder + + + org.eclipse.jdt.core.javabuilder @@ -24,5 +29,6 @@ org.eclipse.pde.PluginNature org.eclipse.jdt.core.javanature + org.python.pydev.pythonNature diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.dataaccess/META-INF/MANIFEST.MF index 1e70f1f2a5..b808019811 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/META-INF/MANIFEST.MF @@ -2,10 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Data Access Framework EDEX Bundle-SymbolicName: com.raytheon.uf.edex.dataaccess -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Require-Bundle: com.raytheon.uf.common.dataaccess, - com.raytheon.uf.common.serialization.comm;bundle-version="1.12.1174", - com.raytheon.uf.common.util;bundle-version="1.12.1174" -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 + com.raytheon.uf.common.serialization.comm, + com.raytheon.uf.common.util +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-ActivationPolicy: lazy diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/res/spring/dataaccess-request.xml b/edexOsgi/com.raytheon.uf.edex.dataaccess/res/spring/dataaccess-request.xml index cd76162782..ebf09bc2d8 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/res/spring/dataaccess-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/res/spring/dataaccess-request.xml @@ -19,6 +19,46 @@
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/src/com/raytheon/uf/edex/dataaccess/handler/GetAvailableTimesHandler.java b/edexOsgi/com.raytheon.uf.edex.dataaccess/src/com/raytheon/uf/edex/dataaccess/handler/GetAvailableTimesHandler.java index c53a742755..3edc9da925 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/src/com/raytheon/uf/edex/dataaccess/handler/GetAvailableTimesHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/src/com/raytheon/uf/edex/dataaccess/handler/GetAvailableTimesHandler.java @@ -32,9 +32,10 @@ import com.raytheon.uf.common.time.DataTime; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * May 23, 2013 dgilling Initial creation + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * May 23, 2013 dgilling Initial creation + * Mar 03, 2014 2673 bsteffen Add ability to query only ref times. * * * @@ -56,7 +57,8 @@ public final class GetAvailableTimesHandler implements public DataTime[] handleRequest(final GetAvailableTimesRequest request) throws Exception { return DataAccessLayer - .getAvailableTimes(request.getRequestParameters()); +.getAvailableTimes( + request.getRequestParameters(), request.isRefTimeOnly()); } } diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JDataRequest.py b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JDataRequest.py index a130290870..3153de901f 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JDataRequest.py +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JDataRequest.py @@ -27,9 +27,11 @@ # # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- -# 12/17/12 njensen Initial Creation. -# Feb 14, 2013 1614 bsteffen refactor data access framework +# Dec 17, 2012 njensen Initial Creation. +# Feb 14, 2013 1614 bsteffen Refactor data access framework # to use single request. +# Jul 22, 2014 3185 njensen Fix getters to return python objs +# Aug 13, 2014 3185 njensen Fix setEnvelope() typo # # # @@ -70,7 +72,7 @@ class JDataRequest(IDataRequest, JUtil.JavaWrapperClass): from com.vividsolutions.jts.geom import Envelope bounds = env.bounds jenv = Envelope(bounds[0], bounds[2], bounds[1], bounds[3]) - self.jobj.setEnvelope(bounds) + self.jobj.setEnvelope(jenv) def setLocationNames(self, *args): from java.lang import String as JavaString @@ -85,15 +87,10 @@ class JDataRequest(IDataRequest, JUtil.JavaWrapperClass): def getIdentifiers(self): ids = {} jmap = self.jobj.getIdentifiers() - itr = jmap.keySet().iterator() - while itr.hasNext(): - key = itr.next() - value = JUtil.javaObjToPyVal(jmap.get(key)) - ids[key] = value - return ids + return JUtil.javaObjToPyVal(jmap) def getParameters(self): - return self.jobj.getParameters() + return JUtil.javaObjToPyVal(self.jobj.getParameters()) def getLevels(self): levels = [] @@ -106,12 +103,13 @@ class JDataRequest(IDataRequest, JUtil.JavaWrapperClass): env = None jenv = self.jobj.getEnvelope() if jenv: + import shapely from com.vividsolutions.jts.geom import GeometryFactory env = shapely.wkt.loads(GeometryFactory().toGeometry(jenv).toText()) return env def getLocationNames(self): - return self.jobj.getLocationNames() + return JUtil.javaObjToPyVal(self.jobj.getLocationNames()) def toJavaObj(self): return self.jobj diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py index f9751d49a3..0e0c4efb9d 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGeometryData.py @@ -27,15 +27,15 @@ # # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- -# 12/10/12 njensen Initial Creation. -# 06/03/13 #2023 dgilling Remove "unit" support from -# __getitem__ as it only threw errors. +# 12/10/12 njensen Initial Creation. +# 06/03/13 #2023 dgilling Remove "unit" support from +# __getitem__ as it only threw errors. +# 08/06/14 3185 njensen Only import shapely when necessary # # from ufpy.dataaccess import IGeometryData import JData -import shapely.wkt class JGeometryData(IGeometryData, JData.JData): @@ -61,6 +61,7 @@ class JGeometryData(IGeometryData, JData.JData): return self.getNumber(key) def getGeometry(self): + import shapely.wkt return shapely.wkt.loads(self.jobj.getGeometry().toText()) def getParameters(self): diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py index c8ee7ff32b..6c9321f133 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JGridData.py @@ -27,7 +27,10 @@ # # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- -# 12/10/12 njensen Initial Creation. +# 12/10/12 njensen Initial Creation. +# 05/01/14 3095 bsteffen Move numeric data access to new plugin. +# 08/06/14 3185 njensen Only import Java classes when necessary +# # # # @@ -35,11 +38,6 @@ from ufpy.dataaccess import IGridData import JData -from com.raytheon.uf.common.geospatial.interpolation.data import FloatArrayWrapper, UnitConvertingDataDestination -from com.raytheon.uf.common.python import PythonNumpyFloatArray -from com.raytheon.uf.common.geospatial import LatLonReprojection -from javax.measure.unit import UnitFormat - class JGridData(IGridData, JData.JData): def __init__(self, wrappedObject): @@ -64,21 +62,30 @@ class JGridData(IGridData, JData.JData): return str(self.jobj.getUnit()) def getRawData(self, unit=None): - dest = FloatArrayWrapper(self.jobj.getGridGeometry()) + # import only the modules that are needed + from com.raytheon.uf.common.numeric.buffer import FloatBufferWrapper + from com.raytheon.uf.common.python import PythonNumpyFloatArray + + nx = self.jobj.getGridGeometry().getGridRange().getSpan(0) + ny = self.jobj.getGridGeometry().getGridRange().getSpan(1) + dest = FloatBufferWrapper(nx, ny) pnfa = None if unit: + from javax.measure.unit import UnitFormat + from com.raytheon.uf.common.geospatial.data import UnitConvertingDataFilter + from com.raytheon.uf.common.numeric.dest import FilteredDataDestination + from jep import jarray + unitObj = UnitFormat.getUCUMInstance().parseObject(unit) converter = self.jobj.getUnit().getConverterTo(unitObj) - unitDest = UnitConvertingDataDestination(converter, dest) - filledDest = self.jobj.populateData(unitDest) - nx = self.jobj.getGridGeometry().getGridRange().getSpan(0) - ny = self.jobj.getGridGeometry().getGridRange().getSpan(1) - pnfa = PythonNumpyFloatArray(filledDest.getWrappedDestination().getArray(), nx, ny) + filter = UnitConvertingDataFilter(converter) + filters = jarray(1, UnitConvertingDataFilter) + filters[0] = filter + unitDest = FilteredDataDestination.addFilters(dest, filters) + self.jobj.populateData(unitDest) else: - filledDest = self.jobj.populateData(dest) - nx = self.jobj.getGridGeometry().getGridRange().getSpan(0); - ny = self.jobj.getGridGeometry().getGridRange().getSpan(1); - pnfa = PythonNumpyFloatArray(dest.getArray(), nx, ny) + self.jobj.populateData(dest) + pnfa = PythonNumpyFloatArray(dest.getBuffer().array(), nx, ny) return pnfa.__numpy__[0] def getLatLonCoords(self): @@ -92,6 +99,8 @@ class JGridData(IGridData, JData.JData): gridGeometry = self.jobj.getGridGeometry() if gridGeometry is None : return None + + from com.raytheon.uf.common.geospatial import LatLonReprojection latlons = LatLonReprojection.getLatLons(gridGeometry) nx = gridGeometry.getGridRange().getSpan(0) ny = gridGeometry.getGridRange().getSpan(1) diff --git a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JepRouter.py b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JepRouter.py index bca087b615..beeedcc658 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JepRouter.py +++ b/edexOsgi/com.raytheon.uf.edex.dataaccess/utility/common_static/base/python/dataaccess/JepRouter.py @@ -29,9 +29,13 @@ # # Date Ticket# Engineer Description # ------------ ---------- ----------- -------------------------- -# 12/10/12 njensen Initial Creation. -# Feb 14, 2013 1614 bsteffen refactor data access framework +# 12/10/12 njensen Initial Creation. +# 02/14/13 1614 bsteffen refactor data access framework # to use single request. +# 03/03/14 2673 bsteffen Add ability to query only ref times. +# 07/22/14 3185 njensen Added optional/default args to newDataRequest +# and added new methods +# 07/30/14 3185 njensen Renamed valid identifiers to optional # # # @@ -47,10 +51,11 @@ from com.raytheon.uf.common.python import PythonNumpyFloatArray import jep import DataTime import JGeometryData, JGridData, JDataRequest +import JUtil -def getAvailableTimes(request): - javaTimes = JavaDataAccessLayer.getAvailableTimes(request.toJavaObj()) +def getAvailableTimes(request, refTimeOnly): + javaTimes = JavaDataAccessLayer.getAvailableTimes(request.toJavaObj(), refTimeOnly) times = [] for jt in javaTimes: times.append(DataTime.DataTime(jt)) @@ -88,8 +93,47 @@ def getGeometryData(request, times): return data def getAvailableLocationNames(request): - return JavaDataAccessLayer.getAvailableLocationNames(request.toJavaObj()) + jlocs = JavaDataAccessLayer.getAvailableLocationNames(request.toJavaObj()) + return JUtil.javaObjToPyVal(jlocs) -def newDataRequest(): - return JDataRequest.JDataRequest(DefaultDataRequest()) +def getAvailableParameters(request): + jparams = JavaDataAccessLayer.getAvailableParameters(request.toJavaObj()) + return JUtil.javaObjToPyVal(jparams) + +def getAvailableLevels(request): + jlevels = JavaDataAccessLayer.getAvailableLevels(request.toJavaObj()) + pylevs = [] + for jlev in jlevels: + pylevs.append(str(jlev)) + return pylevs + +def getRequiredIdentifiers(datatype): + jids = JavaDataAccessLayer.getRequiredIdentifiers(datatype) + return JUtil.javaObjToPyVal(jids) + +def getOptionalIdentifiers(datatype): + jids = JavaDataAccessLayer.getOptionalIdentifiers(datatype) + return JUtil.javaObjToPyVal(jids) + +def newDataRequest(datatype, parameters=[], levels=[], locationNames = [], envelope=None, **kwargs): + req = JDataRequest.JDataRequest(DefaultDataRequest()) + if datatype: + req.setDatatype(datatype) + if parameters: + req.setParameters(*parameters) + if levels: + req.setLevels(*levels) + if locationNames: + req.setLocationNames(*locationNames) + if envelope: + req.setEnvelope(envelope) + if kwargs: + # any args leftover are assumed to be identifiers + for key in kwargs: + req.addIdentifier(key, kwargs[key]) + return req + +def getSupportedDatatypes(): + jsupported = JavaDataAccessLayer.getSupportedDatatypes() + return JUtil.javaObjToPyVal(jsupported) diff --git a/edexOsgi/com.raytheon.uf.edex.dataplugins.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.dataplugins.feature/feature.xml index 5f6129c8a4..245123f1a0 100644 --- a/edexOsgi/com.raytheon.uf.edex.dataplugins.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.dataplugins.feature/feature.xml @@ -17,20 +17,6 @@ [Enter License Description here.] - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/MANIFEST.MF index e2419f92c1..7d94063f31 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/META-INF/MANIFEST.MF @@ -2,24 +2,19 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Decodertools Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.decodertools -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.edex.common;bundle-version="1.11.1", com.raytheon.uf.common.localization, com.raytheon.uf.common.pointdata, - javax.measure;bundle-version="1.0.0", org.geotools;bundle-version="2.5.2", - com.raytheon.uf.common.site;bundle-version="1.12.1174" + com.raytheon.uf.common.site;bundle-version="1.12.1174", + com.raytheon.uf.edex.ndm;bundle-version="1.0.0", + com.raytheon.uf.common.status;bundle-version="1.12.1174" Export-Package: com.raytheon.uf.edex.decodertools.aircraft, - com.raytheon.uf.edex.decodertools.bufr, - com.raytheon.uf.edex.decodertools.bufr.descriptors, - com.raytheon.uf.edex.decodertools.bufr.exceptions, - com.raytheon.uf.edex.decodertools.bufr.impl, - com.raytheon.uf.edex.decodertools.bufr.io, - com.raytheon.uf.edex.decodertools.bufr.packets, com.raytheon.uf.edex.decodertools.core, com.raytheon.uf.edex.decodertools.core.filterimpl, - com.raytheon.uf.edex.decodertools.time, - com.raytheon.uf.edex.wmo.message -Import-Package: org.apache.commons.logging + com.raytheon.uf.edex.decodertools.time +Import-Package: com.raytheon.uf.common.wmo, + org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftLatitude.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftLatitude.java index 6ff6d3422b..f85b4d43ae 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftLatitude.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftLatitude.java @@ -19,7 +19,6 @@ **/ package com.raytheon.uf.edex.decodertools.aircraft; -import java.util.regex.Matcher; import java.util.regex.Pattern; import com.raytheon.uf.edex.decodertools.core.BasePoint; @@ -27,7 +26,7 @@ import com.raytheon.uf.edex.decodertools.core.BasePoint; /** * Parse various forms of Latitude data and decode these into numeric form. - * + * *
        * SOFTWARE HISTORY
        * Date           PTR#     Engineer      Description
      @@ -35,6 +34,7 @@ import com.raytheon.uf.edex.decodertools.core.BasePoint;
        * Feb 28, 2005        753 jkorman       Initial creation.
        * May  4, 2005       1906 jkorman       Correct decode of longitude minutes
        * 20071227            384 jkorman       Ported to edex.
      + * Sep 18, 2014       3627 mapeters      Removed unused splitLatLon().
        * 
      */ public class AircraftLatitude @@ -49,11 +49,6 @@ public class AircraftLatitude private static final Pattern LA_HDDDD = Pattern.compile("^[NS]{1}\\d{2}\\d{2}"); private static final Pattern LA_HDDdDD = Pattern.compile("^[NS]{1}\\d{2}\\.\\d{2}"); - private static final Pattern [] theLatPatterns = - { - LA_DDH, LA_DDDDH, LA_HDDdDD, LA_HDD, LA_HDDDD, LA_DDdDDH, - }; - // This isn't legal, but some folks like to use it! private static final String EQUATOR = "EQ"; // Once set the obs data cannot be changed! @@ -80,7 +75,7 @@ public class AircraftLatitude public Double getLatitude() { return latitude; - } // getLongitude() + } // getLatitude() /** * Convert latitude in various formats to a numeric value. Any pattern of @@ -121,41 +116,6 @@ public class AircraftLatitude } return retValue; } // aircraftLatitudeFactory() - - /** - * Attempt to discover if the data is a run-together latitude longitude pair - * by comparing the various patterns against the data and attempting a - * decode on the match, if any. If the match succeeds, the data is split - * into a two element array containing the latitude and the remaining data - * which may be a longitude. If no run-together was found, a null reference - * is returned. - * @param anElement A data element to check for run-together. - * @return - */ - public static String [] splitLatLon(String anElement) - { - String [] retValue = null; - Matcher m = null; - for(int i = 0;i < theLatPatterns.length;i++) - { - m = theLatPatterns[i].matcher((anElement)); - if(m.lookingAt()) - { - int patternEnd = m.end(); - if(patternEnd < anElement.length()) - { - if(AircraftLongitude.aircraftLongitudeFactory(anElement.substring(patternEnd)) != null) - { - retValue = new String [2]; - retValue[0] = anElement.substring(0,patternEnd); - retValue[1] = anElement.substring(patternEnd); - break; - } - } - } - } // for - return retValue; - } // splitLatLon() /** * Convert latitude in various formats to a numeric value. Any pattern of diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftRemarks.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftRemarks.java index e23ab35cb1..7b361f0270 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftRemarks.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/AircraftRemarks.java @@ -29,6 +29,8 @@ package com.raytheon.uf.edex.decodertools.aircraft; * ------------ -------- ------------- ------------------------------------- * Feb 28, 2005 753 jkorman Initial creation. * 20071227 384 jkorman Ported to edex. + * Sep 18, 2014 3627 mapeters Removed unused insertRemarks(). + * * */ public class AircraftRemarks @@ -57,19 +59,6 @@ public class AircraftRemarks } } // addRemarks() - /** - * Inserts a remarks fragment at the beginning of the Remarks being built. - * @param aRemark A remarks fragment to insert. - */ - public void insertRemarks(String aRemark) - { - if(aRemark != null) - { - theRemarks.insert(0," "); - theRemarks.insert(0,aRemark); - } - } // insertRemarks() - /** * Get the current remarks string being built. * @return The remarks string. diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/Entry.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/Entry.java index d254904436..7f85d620ba 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/Entry.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/Entry.java @@ -23,46 +23,34 @@ package com.raytheon.uf.edex.decodertools.aircraft; * TODO Add Description * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Jun 13, 2011            jkorman     Initial creation
      - *
      + * Sep 18, 2014 3627       mapeters    Removed unused methods/fields.
      + * 
        * 
      - * + * * @author jkorman - * @version 1.0 + * @version 1.0 */ public class Entry { - public final String word; private final String translatedWord; - private final Boolean isRegEx; - private final Integer firstId; private final Integer secondId; - public Entry(String word, String translatedWord, boolean isRegEx, - Integer firstId, Integer secondId) { - this.word = word; + public Entry(String translatedWord, Integer firstId, Integer secondId) { this.translatedWord = translatedWord; - this.isRegEx = Boolean.valueOf(isRegEx); this.firstId = firstId; this.secondId = secondId; } - /** - * @return the word - */ - public String getWord() { - return word; - } - /** * @return the translatedWord */ @@ -70,13 +58,6 @@ public class Entry { return translatedWord; } - /** - * @return the isRegEx - */ - public Boolean isRegEx() { - return isRegEx; - } - /** * @return the firstId */ diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/WordTranslator.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/WordTranslator.java index fa7685eb8a..a03f4552c1 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/WordTranslator.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/aircraft/WordTranslator.java @@ -19,9 +19,7 @@ **/ package com.raytheon.uf.edex.decodertools.aircraft; -import java.util.ArrayList; import java.util.HashMap; -import java.util.List; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -36,6 +34,7 @@ import java.util.regex.Pattern; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jun 10, 2011 jkorman Initial creation + * Sep 18, 2014 3627 mapeters Removed unused isRegEx(). * * * @@ -64,8 +63,7 @@ public class WordTranslator { regex.put(Pattern.compile(word), translatedWord); } - words.put(word, new Entry(word, translatedWord, isRegEx, firstId, - secondId)); + words.put(word, new Entry(translatedWord, firstId, secondId)); } /** @@ -88,16 +86,6 @@ public class WordTranslator { return e; } - /** - * - * @param word - * @return - */ - public Boolean isRegEx(String word) { - Entry entry = words.get(word); - return (entry != null) ? entry.isRegEx() : null; - } - /** * * @param word diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/BasePoint.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/BasePoint.java index 8d3a361a84..2053fdb97a 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/BasePoint.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/BasePoint.java @@ -19,12 +19,14 @@ **/ package com.raytheon.uf.edex.decodertools.core; +import com.vividsolutions.jts.geom.Coordinate; + + /** - * BasePoint provides a simple 4D (latitude, longitude, elevation, and time) - * base class for observation data. Sub-classes of BasePoint are responsible for - * adding additional checking or using specific units as required. An example - * would be adding a accessors for a Calendar to expose the date information. - * Most attributes of this class do not have units. + * BasePoint provides a simple 3D (latitude, longitude, elevation) base class + * for observation data. Sub-classes of BasePoint are responsible for adding + * additional checking or using specific units as required. Most attributes of + * this class do not have units. * *
        * 
      @@ -35,57 +37,20 @@ package com.raytheon.uf.edex.decodertools.core;
        * 27 July 2007        411 jkorman     Initial Development
        * 20070911            379 jkorman     Added comments.
        * 20070912            379 jkorman     Code review cleanup.
      + * Jun 05, 2014 3226       bclement    deprecated class, removed time
      + * Sep 18, 2014 3627       mapeters    Removed unused methods/fields.
        * 
      * + * @deprecated use {@link Coordinate} instead * @author jkorman * @version 1 */ +@Deprecated public class BasePoint { private double latitude; private double longitude; - private double elevation; - - private int year; - - private int month; - - private int day; - - private int hour; - - private int minute; - - private int second; - - private int millis; - - /** - * Create an empty basepoint instance. - */ - public BasePoint() { - } - - /** - * Copy constructor for BasePoint. - * - * @param point - * A basepoint to copy. - */ - public BasePoint(BasePoint point) { - latitude = point.latitude; - longitude = point.longitude; - elevation = point.elevation; - year = point.year; - month = point.month; - day = point.day; - hour = point.hour; - minute = point.minute; - second = point.second; - millis = point.millis; - } - /** * Create a base point at a given location. * @@ -134,156 +99,4 @@ public class BasePoint { public void setLongitude(double longitude) { this.longitude = longitude; } - - /** - * Get the elevation of this point. No units are specified. - * - * @return The elevation of this point. - */ - public double getElevation() { - return elevation; - } - - /** - * Set the elevation of this point. No units are specified. - * - * @param elevation - * The elevation of this point. - */ - public void setElevation(double elevation) { - this.elevation = elevation; - } - - /** - * Get the year part of the date. - * - * @return The year. - */ - public int getYear() { - return year; - } - - /** - * Set the year part of the date. - * - * @param year - * Year. - */ - public void setYear(int year) { - this.year = year; - } - - /** - * Get the month part of the date. - * - * @return The month of the year. - */ - public int getMonth() { - return month; - } - - /** - * Set the day of the month part of the date. - * - * @param day - * Day of month [1..12]. - */ - public void setMonth(int month) { - this.month = month; - } - - /** - * Get the day part of the month. - * - * @return The day of the month. - */ - public int getDay() { - return day; - } - - /** - * Set the day of the month part of the date. - * - * @param day - * Day of month [1..12]. - */ - public void setDay(int day) { - this.day = day; - } - - /** - * Get the hours part of the day. - * - * @return The hours part of the day. - */ - public int getHour() { - return hour; - } - - /** - * Set the hour part of the time. - * - * @param hour - * Hour of the day [0..23]. - */ - public void setHour(int hour) { - this.hour = hour; - } - - /** - * Get the minutes part of the hour. - * - * @return The minutes part of the hour. - */ - public int getMinute() { - return minute; - } - - /** - * Set the minute of the hour. - * - * @param minute - * The minute of the hour [0..59] - */ - public void setMinute(int minute) { - this.minute = minute; - } - - /** - * Get the seconds part of the minute. - * - * @return The seconds part of the minute. - */ - public int getSecond() { - return second; - } - - /** - * Set the second of the minute. - * - * @param second - * The second of the minute [0..59] - */ - public void setSecond(int second) { - this.second = second; - } - - /** - * Get the milliseconds part of the time. - * - * @return The milliseconds part of the time. - */ - public int getMillis() { - return millis; - } - - /** - * Set the milliseconds part of the time. - * - * @param millis - * Milliseconds [0..999]. - */ - public void setMillis(int millis) { - this.millis = millis; - } } diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderInput.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderInput.java index 6647aa689e..f43bdbaec2 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderInput.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderInput.java @@ -21,7 +21,8 @@ package com.raytheon.uf.edex.decodertools.core; import java.util.HashMap; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; + /** diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderTools.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderTools.java index afb3f3c026..951a890e1a 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderTools.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/DecoderTools.java @@ -24,7 +24,6 @@ import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.ASCII_LF; import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.ASCII_SP; import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_ERROR; import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.VAL_MISSING; -import static com.raytheon.uf.edex.decodertools.core.IDecoderConstants.WMO_HEADER; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -49,6 +48,7 @@ import com.vividsolutions.jts.geom.Coordinate; * encoding/decoding errors. * 20070912 379 jkorman Code review cleanup. * 20071003 391 jkorman Factored out isEqual method from decoders. + * Sep 18, 2014 3627 mapeters Removed unused methods/fields. * * * @author jkorman @@ -58,41 +58,8 @@ public class DecoderTools { // public static final double CEL_TO_KELVIN_OFFSET = 273.15; - public static final String NO_DATA_MSG = "NODATA:"; - public static final String INGEST_FILE_NAME = "ingestfilename"; - /** - * Aligns input data to the starting position of the WMO header. In the - * event that the header could not be found, the original data is returned. - * All leading data up to the beginning of the WMO header is removed. - * - * @param messageData - * The input data to search. - * @return The message data with leading data removed. - */ - public static byte[] isolateWMOHeader(byte[] messageData) { - byte[] retMessage = null; - - String s = new String(messageData); - - Pattern p = Pattern.compile(WMO_HEADER); - - Matcher m = p.matcher(s); - if (m.find()) { - int dlen = s.length() - m.start(); - if (dlen > 0) { - retMessage = new byte[dlen]; - System.arraycopy(messageData, m.start(), retMessage, 0, dlen); - } else { - retMessage = messageData; - } - } else { - retMessage = messageData; - } - return retMessage; - } - /** * Attempt to find the start of the data. If the pattern is found all data * from the end of the pattern to the end of the data is returned. This @@ -172,204 +139,6 @@ public class DecoderTools { return retMessage; } - /** - * Are two objects equal to each other. - * - * @param first - * First object to compare. - * @param second - * Second object to compare. - * @return Are the objects equal. - */ - public static boolean isEqual(Object first, Object second) { - // are both pointing to the same object or both null? - boolean retValue = (first == second); - - if (!retValue) { - if (first == null) { - // we can do this because only one of the operands is null! - retValue = isEqual(second, first); - } else { - retValue = first.equals(second); - } - } - return retValue; - } - - /** - * Convert decoded Celsius to Kelvin. For example a value of 102 with a sign - * of -1, and scale of 10 gives a value of 10.2 converted to Kelvin as - * 283.33. - * - * @param value - * The raw decoded value. - * @param sign - * The sign of the data. 1 or -1. - * @param scale - * A scale value that will be used when value must be scaled. - * @return Calculated Kelvin temperature. - */ - public static double celsiusToKelvin(int value, int sign, double scale) { - return ((value * sign) / scale) + CEL_TO_KELVIN_OFFSET; - } - - /** - * Convert decoded Celsius to Kelvin. For example a value of 102 with a sign - * of -1, and scale of 10 gives a value of 10.2 converted to Kelvin as - * 283.33. - * - * @param value - * The raw decoded value. - * @param sign - * The sign of the data. 1 or -1. - * @param scale - * A scale value that will be used when value must be scaled. - * @return Calculated Kelvin temperature. - */ - public static double celsiusToKelvin(double value, int sign, double scale) { - return ((value * sign) / scale) + CEL_TO_KELVIN_OFFSET; - } - - /** - * - * @param value - * @return - */ - public static Double celsiusToFahrenheit(Double value) { - Double temp = null; - if (value != null) { - temp = (9.0 / 5.0 * value) + 32.0; - } - return temp; - } - - /** - * - * @param value - * @return - */ - public static Double fahrenheitToCelsius(Double value) { - Double temp = null; - if (value != null) { - temp = (value - 32.0) * 5.0 / 9.0; - } - return temp; - } - - /** - * - * @param value - * @return - */ - public static Double celsiusToKelvin(Double value) { - Double temp = null; - if (value != null) { - temp = value + CEL_TO_KELVIN_OFFSET; - } - return temp; - } - - /** - * - * @param value - * @return - */ - public static Double kelvinToCelsius(Double value) { - Double temp = null; - if (value != null) { - temp = value - CEL_TO_KELVIN_OFFSET; - } - return temp; - } - - /** - * - * @param value - * @return - */ - public static Double inToPa(Double value) { - Double temp = null; - if (value != null) { - temp = value * 3386.0; - } - return temp; - } - - /** - * - * @param value - * @return - */ - public static Double paToIn(Double value) { - Double temp = null; - if (value != null) { - temp = value / 3386.0; - } - return temp; - } - - /** - * - * @param value - * @return - */ - public static Double hPaToPa(Double value) { - Double temp = null; - if (value != null) { - temp = value * 100.0; - } - return temp; - } - - /** - * - * @param value - * @return - */ - public static Double paTohPa(Double value) { - Double temp = null; - if (value != null) { - temp = value / 100.0; - } - return temp; - } - - /** - * Convert a wind speed in knots to meters per second. - * - * @param value - * A value in knots. - * @return Speed converted to meters per second. - */ - public static Double ktsToMSec(Double value) { - Double speed = null; - if (value != null) { - speed = value * 0.514444D; - } - return speed; - } - - /** - * Convert a wind speed in knots to meters per second. - * - * @param value - * A value in knots. - * @return Speed converted to meters per second. - */ - public static double knotsToMSec(double value) { - return value * 0.514444D; - } - - /** - * Convert a pressure in hectoPascals to Pascals. - * - * @param value - * @return - */ - public static double hPaToPascals(int value) { - return value * 10.0D; - } - /** * Find the position of a given target byte array in a data array. * diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderConstants.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderConstants.java index 457c1d3fe9..5f004a198a 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderConstants.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderConstants.java @@ -32,6 +32,8 @@ package com.raytheon.uf.edex.decodertools.core; * 20071217 453 jkorman Added SYNOPTIC_MAROB report type. * 20080102 384 jkorman Added additional obs type constants. * 20080114 763 jkorman Added constants for vertical sig values. + * Sep 18, 2014 3627 mapeters Removed unused constants. + * Sep 26, 2014 3629 mapeters Removed constants specific to particular packages. * * * @author jkorman @@ -48,18 +50,6 @@ public interface IDecoderConstants { public static final byte ASCII_SP = 0x20; - public static final char SPACE_CHAR = ' '; - - public static final String CARRIAGECONTROL = "CARRIAGECONTROL"; - - public static final String REPORT_END = "RPT_END"; - - public static final String MESSAGE_START = "MSG_START"; - - public static final String MESSAGE_END = "MSG_END"; - - public static final String SOM = String.valueOf((char) ASCII_SOM); - public static final String ETX = String.valueOf((char) ASCII_ETX); public static final String WMO_HEADER = "[A-Z]{4}\\d{0,2} [A-Z][A-Z0-9]{3} \\d{6}[^\\r\\n]*[\\r\\n]+"; @@ -72,62 +62,7 @@ public interface IDecoderConstants { public static final int SYNOPTIC_MOBILE_LAND = 1002; - public static final int SYNOPTIC_SHIP = 1003; - - public static final int SYNOPTIC_CMAN = 1004; - - public static final int SYNOPTIC_MOORED_BUOY = 1005; - - public static final int DRIFTING_BUOY = 1006; - - public static final int SYNOPTIC_MAROB = 1007; - - // BUFR vertical significance defines. - public static final Integer SIGWND_LEVEL = new Integer(2); - public static final Integer SIGPRE_LEVEL = new Integer(4); - public static final Integer MAXWND_LEVEL = new Integer(8); - public static final Integer TROP_LEVEL = new Integer(16); - public static final Integer MANPRE_LEVEL = new Integer(32); - public static final Integer SFC_LEVEL = new Integer(64); - public static final Integer GENERIC_LEVEL = new Integer(128); - - // Mandatory level data - Pressure : Geopotential - public static final int MANLVL_LO = 2020; - public static final int MANLVL_HI = 2030; - // Significant level wind data - Geopotential - public static final int SIGWLVL_LO = 2021; - public static final int SIGWLVL_HI = 2031; - // Significant level temperature data - Pressure - public static final int SIGTLVL_LO = 2022; - public static final int SIGTLVL_HI = 2032; - - // TODO For now - refine names and labels - public static final int BUFRUA_2020 = 2020; - - public static final int BUFRUA_2030 = 2030; - - public static final int BUFRUA_2040 = 2040; - - public static final int BUFRUA_2050 = 2050; - - public static final int BUFRUA_2060 = 2060; - - public static final int RECCO_MANOBS = 4500; - - public static final int RECCO_INTEROBS = 4510; - public static final int AIREP_NORMAL = 4600; - + public static final int AIREP_SPECIAL = 4610; - - public static final int PIREP_NORMAL = 4700; - - public static final int PROFILER_DATA = 3000; - - - - - - - } diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderInput.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderInput.java index ee7745bc27..556bfcd928 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderInput.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/IDecoderInput.java @@ -21,7 +21,8 @@ package com.raytheon.uf.edex.decodertools.core; import java.io.Serializable; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +import com.raytheon.uf.common.wmo.WMOHeader; + /** diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/LatLonPoint.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/LatLonPoint.java index ef978eec57..020839d6e6 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/LatLonPoint.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/LatLonPoint.java @@ -47,6 +47,7 @@ import java.io.Serializable; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 20080103 384 jkorman Ported from JET JUTL classes. + * Sep 18, 2014 3627 mapeters Removed unused methods/fields. * * * @author jkorman @@ -77,16 +78,6 @@ public class LatLonPoint implements Cloneable, Serializable { // the longitude value for this point in degrees. private double theLongitudeInDegrees; - // *************************************************************************** - // the quadrant of the sphere based on the above latitude/longitude. - // WMO Manual 306, Code table 3333, page I.1-C-98, 1995 Edition, Suppl. No.3 - // quadrant = 1 0N - 90N ( 90) 0E - 180E (-180) - // quadrant = 3 0S - 90S (-90) 0E - 180E (-180) - // quadrant = 5 0S - 90S (-90) 0W - 180W ( 180) - // quadrant = 7 0N - 90N ( 90) 0W - 180W ( 180) - // *************************************************************************** - private int theQuadrant; - /** * Construct a new LatLonPoint with the given data. * @@ -111,32 +102,8 @@ public class LatLonPoint implements Cloneable, Serializable { */ public LatLonPoint(double aLatitude, double aLongitude, int units) { setLatLon(aLatitude, aLongitude, units); - - theQuadrant = computeQuadrant(theLatitudeInDegrees, - theLongitudeInDegrees, INDEGREES); } // LatLonPoint - /** - * Construct a new LatLonPoint with the given data. - * - * @param aLatitude - * The value of the latitude - * @param aLongitude - * The value of the longitude - * @param units - * The units of the input latitude/longitude. - * @see #INRADIANS - * @see #INDEGREES - * @param aQuadrant - * The units of the input latitude/longitude. - */ - public LatLonPoint(double aLatitude, double aLongitude, int units, - int aQuadrant) { - setLatLon(aLatitude, aLongitude, units); - - theQuadrant = aQuadrant; - } - /** * Construct a new LatLonPoint from a given LatLonPoint. This is a copy * constructor for LatLonPoint. @@ -149,7 +116,6 @@ public class LatLonPoint implements Cloneable, Serializable { this.theLongitude = thePoint.theLongitude; this.theLatitudeInDegrees = thePoint.theLatitudeInDegrees; this.theLongitudeInDegrees = thePoint.theLongitudeInDegrees; - this.theQuadrant = thePoint.theQuadrant; } /** @@ -324,9 +290,6 @@ public class LatLonPoint implements Cloneable, Serializable { theLatitude = aLatitude; theLatitudeInDegrees = Math.toDegrees(aLatitude); } // switch - - theQuadrant = computeQuadrant(theLatitudeInDegrees, - theLongitudeInDegrees, INDEGREES); } /** @@ -355,68 +318,12 @@ public class LatLonPoint implements Cloneable, Serializable { theLongitudeInDegrees = Math.toDegrees(aLongitude); } // switch - - theQuadrant = computeQuadrant(theLatitudeInDegrees, - theLongitudeInDegrees, INDEGREES); - } - - /** - * Get the global quadrant for this LatLonPoint. - * - * @return The current global Quadrant for this point - */ - public int getQuadrant() { - return theQuadrant; } // *** // // *** - /** - * Compute the square of an argument. - * - * @param x - * Value to square. - * @return the Square of the argument. - */ - public static double sqr(double x) { - return (x * x); - } - - /** - * Compute the square of an argument. - * - * @param x - * Value to square. - * @return the Square of the argument. - */ - public static float sqr(float x) { - return (x * x); - } - - /** - * Compute the square of an argument. - * - * @param x - * Value to square. - * @return the Square of the argument. - */ - public static long sqr(long x) { - return (x * x); - } - - /** - * Compute the square of an argument. - * - * @param x - * Value to square. - * @return the Square of the argument. - */ - public static int sqr(int x) { - return (x * x); - } - /** * This is a special Modulus function for floating point computations. It is * required for trigometric functions. @@ -453,29 +360,14 @@ public class LatLonPoint implements Cloneable, Serializable { // // gc1 and gc2 are temporary computed terms. // - double gc1 = sqr(Math.sin((fromLat - toLat) / 2)); + double gc1 = Math.pow(Math.sin((fromLat - toLat) / 2), 2); double gc2 = Math.cos(fromLat) * Math.cos(toLat) - * sqr(Math.sin((fromLon - toLon) / 2)); + * Math.pow(Math.sin((fromLon - toLon) / 2), 2); return (2 * Math.asin(Math.sqrt(gc1 + gc2))); } - /** - * Compute the great circle distance (in radians) between two points located - * on a spherical surface. - * - * @param fromPoint - * Latitude/Longitude of the first point as a point pair. - * @param toPoint - * Latitude/Longitude of the second point as a point pair. - * @return The great circle distance in radians. - */ - public static double GreatCircle(LatLonPoint fromPoint, LatLonPoint toPoint) { - return GreatCircle(fromPoint.getLatitude(), fromPoint.getLongitude(), - toPoint.getLatitude(), toPoint.getLongitude()); - } - /** * Compute the great circle distance (in radians) between this point and * another point located on a spherical surface. @@ -557,20 +449,6 @@ public class LatLonPoint implements Cloneable, Serializable { } - /** - * Compute the initial bearing (in radians) to travel from this point to a - * second point at a specified Latitude and Longitude. - * - * @param aLatitude - * Latitude of second point in radians. - * @param aLongitude - * Longitude of second point in radians. - * @return The bearing (from north in radians) to the second point. - */ - public double bearingTo(double aLatitude, double aLongitude) { - return bearingTo(theLatitude, theLongitude, aLatitude, aLongitude); - } - /** * Compute the initial bearing (in radians) to travel from this point to a * second LatLonPoint. @@ -638,261 +516,4 @@ public class LatLonPoint implements Cloneable, Serializable { public LatLonPoint positionOf(double aBearing, double aDistance) { return positionOf(theLatitude, theLongitude, aBearing, aDistance); } - - /** - * Calculate the Quadrant this Latitude/Longitude point resides in. - *

      - * Points that exist on the Equator or the Prime Meridian - * - * are always considered North and West respectively. - *

      - * - * @param aLatitude - * The Latitude corresponding to this point - * @param aLongitude - * The Longitude corresponding to this point - * @param units - * The units of measurement these coordinates are represented in - * @see #INRADIANS - * @see #INDEGREES - * @return The Global coordinate for this Lat/Long point - */ - public static int computeQuadrant(double aLatitude, double aLongitude, - int units) { - // The quadrant that is being calculated. - int Quadrant = 0; - double Latitude = 0; // Incase we need to modify the - double Longitude = 0; // Lat/Long points - - if (units == INDEGREES) // Measurement in Degrees? - { - Latitude = aLatitude; // Good, just copy the - Longitude = aLongitude; // values - } else { - // ********************************************************************* - // * If it is not in Degrees we assume Radians. Since our tests are - // * using degrees we must convert these two values - // ********************************************************************* - Latitude = Math.toDegrees(aLatitude); - Longitude = Math.toDegrees(aLongitude); - } - - if (Latitude >= 0) // Northern Hemisphere? - { - if (Longitude >= 0) // West of the Prime Meridian? - { - Quadrant = 7; // Then we are in Quadrant 7 - } else { - Quadrant = 1; // must be in Quadrant 1 then - } - } else - // West of the Prime Meridian? - { - if (Longitude >= 0) // Southern Hemisphere. - { - Quadrant = 5; // We are in Quadrant 5 - } else { - Quadrant = 3; // Otherwuse we are in Quadrant 3 - } - } - - return Quadrant; // Return the calculated Quadrant - } - - /** - * Gets the Marsden Square corresponding to the Lat/Long of this LatLonPoint - * object. - * - * @return The Marsden Square number for this point - */ - public int getMarsdenSquare() { - return calcMarsdenSquare(theLatitudeInDegrees, theLongitudeInDegrees, - INDEGREES, theQuadrant); - } - - /** - * Given a point on the globe, this routine returns the Marsden Square - * number that corresponds with this point. - * - * @param aLatitude - * The Latitude of this point in Radians - * @param aLongitude - * The Longitude of this point in Radians - * @return The Marsden Square number for the location entered - */ - public static int calcMarsdenSquare(double aLatitude, double aLongitude) { - return calcMarsdenSquare(aLatitude, aLongitude, INRADIANS); - } - - /** - * Given a point on the globe, this routine returns the Marsden Square - * number that corresponds with this point. - * - * @param aLatitude - * The Latitude of this point - * @param aLongitude - * The Longitude of this point - * @param units - * The units of measurement these coordinates are represented in - * @see #INRADIANS - * @see #INDEGREES - * @return The Marsden Square number for the location entered - */ - public static int calcMarsdenSquare(double aLatitude, double aLongitude, - int units) { - return calcMarsdenSquare(aLatitude, aLongitude, units, computeQuadrant( - aLatitude, aLongitude, units)); - } - - /** - * Given a point on the globe, this routine returns the Marsden Square - * number that corresponds with this point. - * - * @param aLatitude - * The Latitude of this point - * @param aLongitude - * The Longitude of this point - * @param units - * The units of measurement these coordinates are represented in - * @see #INRADIANS - * @see #INDEGREES - * @param aQuadrant - * The Quadrant this point is located in - * @return The Marsden Square number for the location entered - */ - public static int calcMarsdenSquare(double aLatitude, double aLongitude, - int units, int aQuadrant) { - int MarsdenSquare = 0; // Space for our calculations - int xGrid = 0; // 10 Degree Longitude place holder - int yGrid = 0; // 10 degree Latitude place holder - - validateLatLon(aLatitude, aLongitude, units); - - // Convert radians to degrees if required - if (units != INDEGREES) { - aLatitude = Math.toDegrees(aLatitude); - aLongitude = Math.toDegrees(aLongitude); - } - - // *** - // If the passed quadrant is invalid, recompute using the given - // latitude and longitude. - // *** - if ((aQuadrant < 1) || (aQuadrant > 7) || ((aQuadrant % 2) == 0)) { - aQuadrant = computeQuadrant(aLatitude, aLongitude, INDEGREES); - } - - // Convert -180..0 degrees to the range 360..180 - if (aLongitude < 0) { - aLongitude = 360 + aLongitude; - } - - // Now get the primary grid intersection. - xGrid = (int) (aLatitude / 10); - yGrid = (int) (aLongitude / 10); - - // If the grid point was in the Southern Hemisphere adjust it. - xGrid = Math.abs(xGrid); - - // Special rules for North Polar region. - if (aLatitude >= 80) { - // Start at Marsden Square 901 - MarsdenSquare = 901 + yGrid; - } else { - // Get the base Marsden Square number. - MarsdenSquare = (xGrid * 36) + yGrid; - - // Now apply the offset based on Northern/Southern Hemisphere. - // MarsdenSquare += (aLatitude >= 0) ? 1 : 300; - if (aLatitude >= 0) { - MarsdenSquare += 1; - } else { - MarsdenSquare += 300; - } - - } - - // return the calculated Marsden Square - return MarsdenSquare; - } - - /** - * Gets the Ship Edit Block corresponding to the Lat/Long of this - * LatLonPoint object. - * - * @return The Ship Edit Block number for this point - */ - public int getShipEditBlock() { - return calcShipEditBlock(theLatitudeInDegrees, theLongitudeInDegrees, - INDEGREES); - } - - /** - * Given a point on the globe, this routine returns the Ship Edit Block - * number that corresponds with this point. - * - * @param aLatitude - * The Latitude of this point in Radians - * @param aLongitude - * The Longitude of this point in Radians - * @return The Ship Edit Block number for the location entered - */ - public static int calcShipEditBlock(double aLatitude, double aLongitude) { - return calcShipEditBlock(aLatitude, aLongitude, INRADIANS); - } - - /** - * Given a point on the globe, this routine returns the Ship Edit Block - * number that corresponds with this point. - * - * @param aLatitude - * The Latitude of this point - * @param aLongitude - * The Longitude of this point - * @param units - * The units of measurement these coordinates are in - * @see #INRADIANS - * @see #INDEGREES - * @return The Ship Edit Block number for the location entered - */ - public static int calcShipEditBlock(double aLatitude, double aLongitude, - int units) { - int shipEditBlock = 0; // Space for our calculations - int lonGrid = 0; // 30 Degree Longitude place holder - int latGrid = 0; // 30 degree Latitude place holder - - validateLatLon(aLatitude, aLongitude, units); - - // Convert radians to degrees if required - if (units != INDEGREES) { - aLatitude = Math.toDegrees(aLatitude); - aLongitude = Math.toDegrees(aLongitude); - } - - // Convert -180..0 degrees to the range 360..180 - if (aLongitude < 0) { - aLongitude = 360 + aLongitude; - } - - // Now get the primary grid intersection. - // If the grid point was in the Southern Hemisphere adjust it. - latGrid = Math.abs((int) aLatitude / 30); - lonGrid = (int) aLongitude / 30; - - // Compensate for the unlikly event the point is at a pole. - if (aLatitude >= 90 || aLatitude <= -90) { - latGrid -= 1; - } - - // Get the base Ship Edit Block number. - shipEditBlock = (latGrid * 12) + lonGrid; - - // Now apply the offset if Southern Hemisphere. - if (aLatitude < 0) { - shipEditBlock += 36; - } - - // return the calculated Marsden Square - return shipEditBlock; - } } diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/PlatformLocationProxy.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/PlatformLocationProxy.java index ef4d180b82..d941bf36d4 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/PlatformLocationProxy.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/PlatformLocationProxy.java @@ -23,9 +23,9 @@ import java.util.HashMap; /** - * - * - * + * + * + * * *
        * 
      @@ -42,10 +42,10 @@ import java.util.HashMap;
       public class PlatformLocationProxy
       {
           private static HashMap myLOCATIONS = new HashMap();
      -    
      +
           /**
      -     * 
      -     * @param aType
      +     * This constructor exists solely to ensure this class isn't instantiated.
      +     * Only the static methods should be used.
            */
           private PlatformLocationProxy() {
               // nothing
      diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java
      index 3a92c1d3a2..9d4b796cac 100644
      --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java
      +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/AbstractObsFilter.java
      @@ -19,7 +19,6 @@
        **/
       package com.raytheon.uf.edex.decodertools.core.filterimpl;
       
      -import java.io.File;
       import java.util.ArrayList;
       import java.util.List;
       
      @@ -28,7 +27,6 @@ import javax.xml.bind.annotation.XmlAccessorType;
       import javax.xml.bind.annotation.XmlElement;
       
       import com.raytheon.uf.common.dataplugin.PluginDataObject;
      -import com.raytheon.uf.common.serialization.ISerializableObject;
       import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
       import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
       
      @@ -36,21 +34,23 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
        * TODO Add Description
        * 
        * 
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Mar 25, 2009            jkorman     Initial creation
      - *
      + * Aug 28, 2014 3548       mapeters    Removed implementation of ISerializableObject
      + * Sep 18, 2014 3627       mapeters    Removed unused createFilter().
      + * 
        * 
      - * + * * @author jkorman - * @version 1.0 + * @version 1.0 */ @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize -public abstract class AbstractObsFilter implements ISerializableObject { +public abstract class AbstractObsFilter { public static final String INCLUDE_TYPE = "INCLUDE"; @@ -64,17 +64,6 @@ public abstract class AbstractObsFilter implements ISerializableObject { @DynamicSerializeElement private String filterName; - /** - * - * @param filterFile - */ - void createFilter(File filterFile) { - - - - - } - public abstract PluginDataObject [] filter(PluginDataObject [] reports); /** diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java index 10ad340aad..0ae5d880e0 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/PluginDataObjectFilter.java @@ -22,12 +22,7 @@ package com.raytheon.uf.edex.decodertools.core.filterimpl; import static com.raytheon.uf.common.localization.LocalizationContext.LocalizationType.EDEX_STATIC; import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import javax.xml.bind.JAXBException; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; @@ -35,7 +30,6 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.geospatial.ISpatialEnabled; import com.raytheon.uf.common.geospatial.ISpatialObject; @@ -44,19 +38,25 @@ import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; -import com.raytheon.uf.common.serialization.SerializationUtil; +import com.raytheon.uf.common.serialization.JAXBManager; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; /** - * TODO Add Description + * Filter {@link PluginDataObject}s based off configurable parameters. * *
        * 
        * SOFTWARE HISTORY
      - * Date         Ticket#    Engineer    Description
      - * ------------ ---------- ----------- --------------------------
      - * Jul 16, 2009            jkorman     Initial creation
      - * Aug 30, 2013 2298       rjpeter     Make getPluginName abstract
      + * Date          Ticket#  Engineer    Description
      + * ------------- -------- ----------- --------------------------
      + * Jul 16, 2009           jkorman     Initial creation
      + * Aug 30, 2013  2298     rjpeter     Make getPluginName abstract
      + * Jun 11, 2014  2061     bsteffen    Remove IDecoderGettable
      + * Jul 23, 2014 3410      bclement    location changed to floats
      + * Sep 09, 2014  3548     mapeters    Improved constructor's error messages.
      + * Sep 11, 2014  3548     mapeters    Replaced use of SerializationUtil
      + *                                    with JAXBManager.
      + * Sep 18, 2014  3627     mapeters    Removed unused getInputStream().
        * 
        * 
      * @@ -94,25 +94,18 @@ public class PluginDataObjectFilter extends AbstractObsFilter { filterDir = manager.getFile(context, FILTERS_DIR); if (filterDir.exists()) { File srcFile = new File(filterDir, filterConfigFile); + JAXBManager jaxb = new JAXBManager( + PluginDataObjectFilter.class, + RadiusFilterElement.class, + RectFilterElement.class, + StationIdFilterElement.class, + WMOHeaderFilterElement.class); + PluginDataObjectFilter filter = jaxb + .unmarshalFromXmlFile( + PluginDataObjectFilter.class, srcFile); - byte[] data = new byte[(int) srcFile.length()]; - - InputStream stream = getInputStream(srcFile); - try { - stream.read(data); - stream.close(); - - AbstractObsFilter filter = (AbstractObsFilter) SerializationUtil - .unmarshalFromXml(new String(data)); - - setFilterElements(filter.getFilterElements()); - setFilterName(filter.getFilterName()); - } catch (IOException e) { - logger.error("Unable to read filter config", e); - } catch (JAXBException e) { - logger.error("Unable to unmarshall filter config", - e); - } + setFilterElements(filter.getFilterElements()); + setFilterName(filter.getFilterName()); } else { logger.error(String.format(ERROR_2_FMT, filterDir.getPath())); @@ -127,7 +120,7 @@ public class PluginDataObjectFilter extends AbstractObsFilter { // Could not create PathManager } } catch (Exception e) { - logger.error("Error creating filter.", e); + logger.error("Error creating filter from " + filterConfigFile, e); createDummyFilter(); } logger.info("Filter name = " + getFilterName()); @@ -208,22 +201,6 @@ public class PluginDataObjectFilter extends AbstractObsFilter { addFilterElement(dummy); } - /** - * - * @param file - * @return - */ - private static FileInputStream getInputStream(File file) { - FileInputStream fis = null; - - try { - fis = new FileInputStream(file); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } - return fis; - } - private static class TestObject extends PluginDataObject implements ISpatialEnabled { @@ -231,11 +208,6 @@ public class PluginDataObjectFilter extends AbstractObsFilter { SurfaceObsLocation location; - @Override - public IDecoderGettable getDecoderGettable() { - return null; - } - @Override public ISpatialObject getSpatialObject() { return location; @@ -259,13 +231,13 @@ public class PluginDataObjectFilter extends AbstractObsFilter { TestObject p = new TestObject(); p.location = new SurfaceObsLocation("1.1"); - p.location.assignLocation(.8, .8); + p.location.assignLocation(.8f, .8f); p = (TestObject) element.filter(p); System.out.println((p == null) ? "passed" : "failed"); p = new TestObject(); p.location = new SurfaceObsLocation("1.2"); - p.location.assignLocation(.7, .7); + p.location.assignLocation(.7f, .7f); p = (TestObject) element.filter(p); System.out.println((p == null) ? "failed" : p); @@ -275,13 +247,13 @@ public class PluginDataObjectFilter extends AbstractObsFilter { p = new TestObject(); p.location = new SurfaceObsLocation("2.1"); - p.location.assignLocation(38.78, -97.65); // KSLN 38 47N 097 39W + p.location.assignLocation(38.78f, -97.65f); // KSLN 38 47N 097 39W p = (TestObject) element.filter(p); System.out.println((p == null) ? p : "failed"); p = new TestObject(); p.location = new SurfaceObsLocation("2.2"); - p.location.assignLocation(39.13, -96.68); // KMHK 39 08N 096 41W + p.location.assignLocation(39.13f, -96.68f); // KMHK 39 08N 096 41W p = (TestObject) element.filter(p); System.out.println((p != null) ? p : "failed"); @@ -303,17 +275,17 @@ public class PluginDataObjectFilter extends AbstractObsFilter { PluginDataObject[] pp = new PluginDataObject[3]; p = new TestObject(); p.location = new SurfaceObsLocation("KSLN"); - p.location.assignLocation(38.78, -97.65); // KSLN 38 47N 097 39W + p.location.assignLocation(38.78f, -97.65f); // KSLN 38 47N 097 39W pp[0] = p; p = new TestObject(); p.location = new SurfaceObsLocation("KMHK"); - p.location.assignLocation(39.13, -96.68); // KMHK 39 08N 096 41W + p.location.assignLocation(39.13f, -96.68f); // KMHK 39 08N 096 41W pp[1] = p; p = new TestObject(); p.location = new SurfaceObsLocation("KSTJ"); - p.location.assignLocation(41, -96.00); + p.location.assignLocation(41f, -96.00f); pp[2] = p; pp = filter.filter(pp); @@ -330,22 +302,22 @@ public class PluginDataObjectFilter extends AbstractObsFilter { p = new TestObject(); p.location = new SurfaceObsLocation("KORD"); - p.location.assignLocation(38.78, -97.65); // KSLN 38 47N 097 39W + p.location.assignLocation(38.78f, -97.65f); // KSLN 38 47N 097 39W pp[0] = p; p = new TestObject(); p.location = new SurfaceObsLocation("KSLN"); - p.location.assignLocation(38.78, -97.65); // KSLN 38 47N 097 39W + p.location.assignLocation(38.78f, -97.65f); // KSLN 38 47N 097 39W pp[1] = p; p = new TestObject(); p.location = new SurfaceObsLocation("KMHK"); - p.location.assignLocation(39.13, -96.68); // KMHK 39 08N 096 41W + p.location.assignLocation(39.13f, -96.68f); // KMHK 39 08N 096 41W pp[2] = p; p = new TestObject(); p.location = new SurfaceObsLocation("KSTJ"); - p.location.assignLocation(41, -96.00); + p.location.assignLocation(41f, -96.00f); pp[3] = p; filter = new PluginDataObjectFilter(); diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RadiusFilterElement.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RadiusFilterElement.java index fa093a3054..646913624e 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RadiusFilterElement.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RadiusFilterElement.java @@ -23,36 +23,35 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; -import com.raytheon.uf.common.dataplugin.IDecoderGettable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.geospatial.ISpatialEnabled; import com.raytheon.uf.common.geospatial.ISpatialObject; -import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.raytheon.uf.edex.decodertools.core.DecoderTools; import com.vividsolutions.jts.geom.Geometry; /** - * TODO Add Description + * Filter {@link PluginDataObject}s based off their distance from a specific + * point. * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      - * Date         Ticket#    Engineer    Description
      - * ------------ ---------- ----------- --------------------------
      - * Mar 23, 2009            jkorman     Initial creation
      - *
      + * 
      + * Date          Ticket#  Engineer    Description
      + * ------------- -------- ----------- --------------------------
      + * Mar 23, 2009           jkorman     Initial creation
      + * Jun 11, 2014  2061     bsteffen    Remove IDecoderGettable
      + * 
        * 
      - * + * * @author jkorman - * @version 1.0 + * @version 1.0 */ @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize -public class RadiusFilterElement extends AbstractFilterElement implements ISerializableObject { +public class RadiusFilterElement extends AbstractFilterElement { private static final String FMT = "RadiusFilterElement:%s[%8.4f,%9.4f,%5.1f]"; @@ -170,6 +169,7 @@ public class RadiusFilterElement extends AbstractFilterElement implements ISeria return pointLon; } + @Override public String toString() { return String.format(FMT,getFilterElementName(),pointLat,pointLon,radius); } diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RectFilterElement.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RectFilterElement.java index d0d71c0e89..40a8da8c20 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RectFilterElement.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/RectFilterElement.java @@ -72,8 +72,12 @@ public class RectFilterElement extends AbstractFilterElement implements ISeriali private double lowerRightLon = 0; /** - * This execute - * @see com.raytheon.uf.edex.decodertools.core.IObsFilterElement#filter(com.raytheon.uf.common.dataplugin.PluginDataObject) + * Executes this filter element against the supplied report data. The + * supplied report is returned if it matches the filter criteria. A null + * report reference is returned if the report fails. + * + * @param report + * @return may be null */ @Override public PluginDataObject filter(PluginDataObject report) { diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/StationIdFilterElement.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/StationIdFilterElement.java index 9f8fc085e9..1e19e9594b 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/StationIdFilterElement.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/StationIdFilterElement.java @@ -36,8 +36,6 @@ import com.raytheon.uf.common.pointdata.spatial.ObStation; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; -import com.vividsolutions.jts.geom.Geometry; /** * TODO Add Description @@ -99,8 +97,12 @@ public class StationIdFilterElement extends AbstractFilterElement implements ISe } /** - * This execute - * @see com.raytheon.uf.edex.decodertools.core.IObsFilterElement#filter(com.raytheon.uf.common.dataplugin.PluginDataObject) + * Executes this filter element against the supplied report data. The + * supplied report is returned if it matches the filter criteria. A null + * report reference is returned if the report fails. + * + * @param report + * @return may be null */ @Override public PluginDataObject filter(PluginDataObject report) { diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/WMOHeaderFilterElement.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/WMOHeaderFilterElement.java index cd337e1be3..dc29b7e815 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/WMOHeaderFilterElement.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/core/filterimpl/WMOHeaderFilterElement.java @@ -20,7 +20,6 @@ package com.raytheon.uf.edex.decodertools.core.filterimpl; import java.lang.reflect.Method; -import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -45,6 +44,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; * ------------ ---------- ----------- -------------------------- * Oct 25, 2011 11312 jkorman Initial creation * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Sep 19, 2014 3627 mapeters Removed unused methods. * *
      * @@ -84,30 +84,12 @@ public class WMOHeaderFilterElement extends AbstractFilterElement implements } /** + * Executes this filter element against the supplied report data. The + * supplied report is returned if it matches the filter criteria. A null + * report reference is returned if the report fails. * - * @param pattern - */ - public void addPattern(Pattern pattern) { - if (patterns == null) { - patterns = new ArrayList(); - } - patterns.add(pattern); - } - - /** - * - * @param pattern - */ - public void addPattern(String pattern) { - if (pattern != null) { - addPattern(Pattern.compile(pattern)); - } - } - - /** - * This execute - * - * @see com.raytheon.uf.edex.decodertools.core.IObsFilterElement#filter(com.raytheon.uf.common.dataplugin.PluginDataObject) + * @param report + * @return may be null */ @Override public PluginDataObject filter(PluginDataObject report) { diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/time/TimeTools.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/time/TimeTools.java index 765257d16c..27e05b20cd 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/time/TimeTools.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/decodertools/time/TimeTools.java @@ -20,18 +20,12 @@ package com.raytheon.uf.edex.decodertools.time; import java.io.File; -import java.text.ParseException; import java.util.Calendar; import java.util.TimeZone; import java.util.regex.Matcher; import java.util.regex.Pattern; -import java.util.zip.DataFormatException; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import com.raytheon.edex.esb.Headers; -import com.raytheon.uf.edex.decodertools.core.DecoderTools; +import com.raytheon.uf.common.time.util.TimeUtil; /** * TimeTools provides a set of mid level Calendar manipulation methods. The @@ -39,6 +33,9 @@ import com.raytheon.uf.edex.decodertools.core.DecoderTools; * increment/decrement hours, days, etc. This is useful for some decoded data * types that specify the number of "X" units from a given base date/time. * + * When looking for generic Time utilities, please consider + * {@link com.raytheon.uf.common.time.util.TimeUtil} first. + * *
        * 
        * SOFTWARE HISTORY
      @@ -51,6 +48,9 @@ import com.raytheon.uf.edex.decodertools.core.DecoderTools;
        * 20071019            391 jkorman     Added getSystemCalendar and TimeService.
        * 20130219           1636 rferrel     File timestamp can now be YYMMDD or YYMMDDHH.
        * 20130912           2249 rferrel     Added getWarningTimestamp method.
      + * 20140409           2907 njensen     Deprecated duplicated functionality
      + * 20140514           2536 bclement    moved WMO Header time parsing to WMOTimeParser
      + * 20140919           3627 mapeters    Removed unused methods/fields.
        * 
      * * @author jkorman @@ -58,16 +58,6 @@ import com.raytheon.uf.edex.decodertools.core.DecoderTools; */ public class TimeTools { - /** Environment variable to indicate archived files. */ - private static final String ALLOW_ARCHIVE_ENV = "ALLOW_ARCHIVE_DATA"; - - /** - * Time stamp that includes the receipt time format at the end of the file - * name: .YYYYMMDD or .YYYYMMDDHH - */ - private static final Pattern FILE_TIMESTAMP = Pattern - .compile("(.*\\.)(\\d{8}|\\d{10})$"); - /** * Time stamp for a file name created by the Text Editor Dialog. This * assumes the 10 digit following .wan is the warning's issue time in epoch @@ -85,64 +75,22 @@ public class TimeTools { */ private static Pattern FILE_WARNING_TIMESTAMP = null; - public static final Pattern WMO_TIMESTAMP = Pattern - .compile("([0-3][0-9])(\\d{2})(\\d{2})[Zz]?"); - - public static final int HOURS_DAY = 24; - - public static final int MINUTES_HOUR = 60; - - public static final int SECONDS_HOUR = 3600; - - public static final int SECONDS_DAY = HOURS_DAY * SECONDS_HOUR; - - public static final long MILLIS_HOUR = 1000L * SECONDS_HOUR; - - public static final long MILLIS_DAY = MILLIS_HOUR * HOURS_DAY; - - public static final String ZULU_TIMEZONE = "Zulu"; + /** + * @deprecated use com.raytheon.uf.common.time.util.TimeUtil instead + */ + @Deprecated + private static final String ZULU_TIMEZONE = "Zulu"; private static ITimeService timeService = null; - private static final Log logger = LogFactory.getLog(TimeTools.class); - - static interface ICheckAllowArchive { - boolean allowArchive(); - } - - /** - * Default class for checking for allowing archive. - */ - private static class CheckOSEnv implements ICheckAllowArchive { - - @Override - public boolean allowArchive() { - // This doesn't pick up the environment variable. - // return Boolean.getBoolean(ALLOW_ARCHIVE_ENV); - return "true".equalsIgnoreCase(System.getenv().get( - ALLOW_ARCHIVE_ENV)); - } - - } - - /** Allows the check on archive to be overridden for testing. */ - static ICheckAllowArchive checkAllowArchive = new CheckOSEnv(); - - /** - * Check to see if archive files are allowed. - * - * @return true when archive files are allowed - */ - public static boolean allowArchive() { - return checkAllowArchive.allowArchive(); - } - /** * Get a calendar that expresses the current system time. If an ITimeService * provider is registered, the time is retrieved from the service. * * @return The current time as a GMT Calendar. + * @deprecated use com.raytheon.uf.common.time.util.TimeUtil instead */ + @Deprecated public static final Calendar getSystemCalendar() { Calendar retCal = null; if (timeService != null) { @@ -163,100 +111,6 @@ public class TimeTools { return retCal; } - /** - * Get a calendar that expresses the current system time. With the month day - * and year of the file extension. - * - * @return The current time as a GMT Calendar. - */ - public static final Calendar getSystemCalendar(int year, int month, int day) { - return getSystemCalendar(year, month, day, 0, 0); - } - - /** - * Get a calendar that expresses the current system time based on specified - * date information or the current service time if not allowing archive. - * - * @param year - * Year to set. - * @param month - * @param day - * @param hour - * @param minute - * @return The current time as a GMT Calendar. - */ - public static final Calendar getSystemCalendar(int year, int month, - int day, int hour, int minute) { - Calendar retCal = getSystemCalendar(); - if (allowArchive()) { - if (isValidDate(year, month, day)) { - if (hour != -1) { - if (minute != -1) { - retCal.set(Calendar.YEAR, year); - retCal.set(Calendar.MONTH, month - 1); - retCal.set(Calendar.DAY_OF_MONTH, day); - retCal.set(Calendar.HOUR_OF_DAY, hour); - retCal.set(Calendar.MINUTE, minute); - retCal.set(Calendar.SECOND, 0); - retCal.set(Calendar.MILLISECOND, 0); - } - } - } - } - return retCal; - } - - /** - * Get Calendar with the time based on the timestamp at the end of the - * fileName. - * - * @param fileName - * @return calendar - */ - public static final Calendar getSystemCalendar(String fileName) { - int year = -1; - int month = -1; - int day = -1; - int hour = -1; - - if (fileName != null) { - Matcher matcher = FILE_TIMESTAMP.matcher(fileName); - if (matcher.find()) { - String yyyymmdd = matcher.group(2); - try { - year = Integer.parseInt(yyyymmdd.substring(0, 4)); - month = Integer.parseInt(yyyymmdd.substring(4, 6)); - day = Integer.parseInt(yyyymmdd.substring(6, 8)); - if (yyyymmdd.length() < 10) { - hour = 0; - } else { - hour = Integer.parseInt(yyyymmdd.substring(8, 10)); - } - } catch (NumberFormatException nfe) { - year = -1; - month = -1; - day = -1; - } - } - } - return getSystemCalendar(year, month, day, hour, 0); - } - - /** - * Get the timestamp in the file name. - * - * @param fileName - * @return timestamp if it matches FILE_TIMESTAMP otherwise null - */ - public static final String getTimestamp(String fileName) { - String timestamp = null; - Matcher matcher = FILE_TIMESTAMP.matcher(fileName); - if (matcher.find()) { - timestamp = matcher.group(2); - } - return timestamp; - } - /** * Get the time stamp of a warning file name based on the name generated by * the TextEditorDialog. @@ -286,156 +140,6 @@ public class TimeTools { return timestamp; } - /** - * Converts a ddhhmm time group to a Calendar. Adjusts the calendar as - * follows: Any time group with a day (dd) in the future is set back one - * month. - * - * @param wmoDateStamp - * the time to convert - * - * @return the converted time - * - * @throws DataFormatException - * if an error occurs - */ - public static final Calendar findCurrentTime(String wmoDateStamp, - String fileName) throws DataFormatException { - Calendar refCal = getSystemCalendar(fileName); - try { - Matcher matcher = WMO_TIMESTAMP.matcher(wmoDateStamp); - if (matcher.matches()) { - int iDay = Integer.parseInt(matcher.group(1)); - int iHour = Integer.parseInt(matcher.group(2)); - int iMinute = Integer.parseInt(matcher.group(3)); - - refCal = adjustDayHourMinute(refCal, iDay, iHour, iMinute); - } else { - throw new ParseException( - "Invalid format - time does not match " - + WMO_TIMESTAMP.pattern(), 0); - } - } catch (Exception e) { - throw new DataFormatException("Unable to find current time for " - + wmoDateStamp + ", exception was " + e.toString()); - } - return refCal; - } - - /** - * Convert a string in ddhhmm format to a standard {@link Calendar} format - * where ddhhmm is the GMT format while the standard time is in Calendar - * format with Year and Month information. Usage: ddhhmm is the issue time - * whereas utcTime can be the MDN time. The former comes "after" the latter. - * - * @parm ddhhmm day-hour-minute in GMT - * @parm local Time UTC time in Calendar - */ - public static final Calendar findDataTime(String ddhhmm, Headers headers) { - Calendar issueTime = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - String fileName = null; - if (headers != null) { - fileName = (String) headers.get(DecoderTools.INGEST_FILE_NAME); - } - try { - issueTime = findCurrentTime(ddhhmm, fileName); - } catch (DataFormatException e) { - if (logger.isInfoEnabled()) { - logger.info(" Error in processing MND time; return current time "); - } - issueTime = null; - } - return issueTime; - } - - /** - * Adjusts the calendar from the current date to the specified date. If the - * specified date is later than the current date, the calendar is "backed - * up" one month. In addition, the second and millisecond fields are set to - * zero. - * - * @param cal - * the calendar to adjust - * @param day - * the new day of month - * @param hour - * the new hour of day - * @param minute - * the new minute of the hour - */ - private static Calendar adjustDayHourMinute(Calendar cal, int wmoDay, - int wmoHour, int wmoMinute) { - if (cal != null) { - - int cDay = cal.get(Calendar.DAY_OF_MONTH); - - cal.set(Calendar.SECOND, 0); - cal.set(Calendar.MILLISECOND, 0); - - // Range check hour/minute first. Have to wait for - // checking the day - if (isValidHour(wmoHour) && (isValidMinSec(wmoMinute))) { - Calendar lastMonth = copy(cal); - lastMonth.set(Calendar.DAY_OF_MONTH, 1); - lastMonth.add(Calendar.MONTH, -1); - - // Get the maximum day of the current month from the reference - // calendar - int maxDayThisMonth = cal - .getActualMaximum(Calendar.DAY_OF_MONTH); - // Set the day to one so all add/subtracts work correctly - cal.set(Calendar.DAY_OF_MONTH, 1); - cal.set(Calendar.HOUR_OF_DAY, wmoHour); - cal.set(Calendar.MINUTE, wmoMinute); - if (wmoDay == 1) { - // the wmoDay is 1 - // and the reference calendar is the last - // day of the month - if (cDay == maxDayThisMonth) { - // This is potentially next month's data received early - // Allow three hours into the next day - if (wmoHour < 3) { - // Advance to the next month - cal.add(Calendar.MONTH, 1); - // and set the hour, minute - } - } - } else if (wmoDay > cDay) { - // Is the wmoDay valid for this month? - if (wmoDay <= maxDayThisMonth) { - // First allow up to 3 hours into the next day - if ((cDay + 1) == wmoDay) { - // This is potentially next month's data received - // early. Allow three hours into the next day - if (wmoHour > 2) { - // Back up a month - cal.add(Calendar.MONTH, -1); - } - } else { - // Back up a month - cal.add(Calendar.MONTH, -1); - int mDay = cal - .getActualMaximum(Calendar.DAY_OF_MONTH); - if (mDay < wmoDay) { - cal.add(Calendar.MONTH, -1); - } - } - } else { - // The wmoDay is greater than the maximum number - // of days for the reference month. We can't back - // up one month, but can always back up two months. - cal.add(Calendar.MONTH, -2); - } - } - cal.set(Calendar.DAY_OF_MONTH, wmoDay); - } else { - // bad - cal = null; - } - } - return cal; - } - /** * Set the time service. To clear an existing service, set a null reference. * @@ -452,34 +156,7 @@ public class TimeTools { return retService; } - /** - * Create a Greenwich Mean Time calendar for a given base date at 0 hours, - * minutes and seconds on a specified year, month, and day. - * - * @param year - * Calendar year. - * @param month - * Month of the year [1..12]. - * @param day - * Day of the month [1..31] varies by month rules. - * @return - */ - public static final Calendar getBaseCalendar(int year, int month, int day) { - Calendar calendar = null; - calendar = getSystemCalendar(); - - calendar.set(Calendar.YEAR, year); - calendar.set(Calendar.MONTH, month - 1); - calendar.set(Calendar.DAY_OF_MONTH, day); - - calendar.set(Calendar.HOUR_OF_DAY, 0); - calendar.set(Calendar.MINUTE, 0); - calendar.set(Calendar.SECOND, 0); - calendar.set(Calendar.MILLISECOND, 0); - - return calendar; - } /** * Get a new GMT time-zone calendar set to a specified time in milliseconds. @@ -487,9 +164,11 @@ public class TimeTools { * @param timeInMillis * The time to set in milliseconds. * @return The new calendar instance. + * @deprecated use com.raytheon.uf.common.time.util.TimeUtil instead */ + @Deprecated public static final Calendar newCalendar(long timeInMillis) { - Calendar calendar = getSystemCalendar(); + Calendar calendar = TimeUtil.newGmtCalendar(); calendar.setTimeInMillis(timeInMillis); @@ -502,11 +181,14 @@ public class TimeTools { * @param calendar * The calendar to copy. * @return The copied calendar. + * @deprecated use com.raytheon.uf.common.time.util.TimeUtil instead */ + @Deprecated public static final Calendar copy(Calendar calendar) { Calendar retValue = null; if (calendar != null) { - retValue = newCalendar(calendar.getTimeInMillis()); + retValue = TimeUtil.newGmtCalendar(); + retValue.setTimeInMillis(calendar.getTimeInMillis()); retValue.setTimeZone(calendar.getTimeZone()); } return retValue; @@ -550,121 +232,4 @@ public class TimeTools { } return retValue; } - - /** - * Roll the date of a calendar +/- a given number of days. - * - * @param calendar - * Calendar instance to modify. - * @param byDays - * Number of days to add or subtract. - * @return The modified calendar. - */ - public static final Calendar rollByDays(Calendar calendar, int byDays) { - if (calendar != null) { - long millis = calendar.getTimeInMillis(); - - long days = byDays * MILLIS_DAY; - - calendar.setTimeInMillis(millis + days); - } - return calendar; - } - - /** - * Roll the date of a calendar +/- a given number of hours. - * - * @param calendar - * Calendar instance to modify. - * @param byHours - * Number of hours to add or subtract. - * @return The modified calendar. - */ - public static final Calendar rollByHours(Calendar calendar, int byHours) { - if (calendar != null) { - long millis = calendar.getTimeInMillis(); - - long hours = byHours * MILLIS_HOUR; - - calendar.setTimeInMillis(millis + hours); - } - return calendar; - } - - /** - * Is the year valid. This method supposes any positive year value as valid. - * - * @param year - * The year to check. - * @return Is the year valid? - */ - public static final boolean isValidYear(int year) { - return (year >= 0); - } - - /** - * The the specified month of the year valid. - * - * @param month - * Numeric value of the month. - * @return Is the month valid? - */ - public static final boolean isValidMonth(int month) { - return ((month > 0) && (month <= 12)); - } - - /** - * Is the specified hour of the day valid? Range 0..23 inclusive. - * - * @param hour - * The hour to check. - * @return Is the hour valid? - */ - public static final boolean isValidHour(int hour) { - return ((hour > -1) && (hour < HOURS_DAY)); - } - - /** - * Is the specified minute/second valid? Range 0..59 inclusive. - * - * @param hour - * The minute/second to check. - * @return Is the minute/second valid? - */ - public static final boolean isValidMinSec(int value) { - return ((value > -1) && (value < MINUTES_HOUR)); - } - - /** - * Is a specified date valid? This method checks an entire year, month, day - * timestamp. - * - * @param year - * The year to check. - * @param month - * Numeric value of the month. - * @param day - * Is the month valid? - * @return Is year, month, day timestamp valid. - */ - public static final boolean isValidDate(int year, int month, int day) { - boolean validDay = false; - if (day > -1) { - if (isValidYear(year)) { - if (isValidMonth(month)) { - Calendar c = getBaseCalendar(year, month, 1); - int lastDay = c.getActualMaximum(Calendar.DAY_OF_MONTH) + 1; - - validDay = (day < lastDay); - } - } - } - return validDay; - } - - /** - * Disable constructor. - */ - private TimeTools() { - } } diff --git a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/stations/sql/AWIPSCommonObsSQLGenerator.java b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/stations/sql/AWIPSCommonObsSQLGenerator.java index 30aa25afb6..bbd151a03a 100644 --- a/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/stations/sql/AWIPSCommonObsSQLGenerator.java +++ b/edexOsgi/com.raytheon.uf.edex.decodertools/src/com/raytheon/uf/edex/stations/sql/AWIPSCommonObsSQLGenerator.java @@ -31,16 +31,31 @@ import java.text.DecimalFormat; import java.util.HashMap; import java.util.Iterator; -import com.raytheon.uf.common.site.ingest.INationalDatasetSubscriber; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.edex.ndm.ingest.INationalDatasetSubscriber; /** * Give this program a path containing the files you wish to read. It will then * give you back SQL files you can then insert into the AWIPS DB * + *
      + * 
      + * SOFTWARE HISTORY
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + *                                     Initial release.
      + * Mar 06, 2014   2876     mpduff      New NDM plugin.
      + * Sep 18, 2014   3627     mapeters    Removed unused field.
      + * 
      + * 
      + * * @author dhladky * */ public class AWIPSCommonObsSQLGenerator implements INationalDatasetSubscriber { + private static final IUFStatusHandler statusHandler = UFStatus + .getHandler(AWIPSCommonObsSQLGenerator.class); private static final String FILE_NAME_PREFIX = "common_obs_spatial_"; @@ -48,8 +63,6 @@ public class AWIPSCommonObsSQLGenerator implements INationalDatasetSubscriber { public static final int FILE_SIZE_LIMIT = 4000; - public static final String RAOB = "RAOB"; - public static final String SYNOPTIC = "SYNOPTIC"; public static final String SYNOPTIC_BLANK_POS = "9999"; @@ -135,68 +148,70 @@ public class AWIPSCommonObsSQLGenerator implements INationalDatasetSubscriber { FileWriter fstream = null; BufferedWriter bw = null; + try { + while (it.hasNext()) { - while (it.hasNext()) { + if (fstream == null) { + fstream = new FileWriter(path + FILE_NAME_PREFIX + + (fileCount) + FILE_NAME_SUFFIX); + } + if (bw == null) { + bw = new BufferedWriter(fstream); + } - if (fstream == null) { - fstream = new FileWriter(path + FILE_NAME_PREFIX + (fileCount) - + FILE_NAME_SUFFIX); + SpatialLine sline = stationMap.get(it.next()); + + String gid = sline.getGid(); + String state = sline.getState(); + String elevation = sline.getElevation(); + String icao = sline.getICAO(); + String the_geom = sline.getGeom(); + String name = sline.getName(); + String rbsnindicator = NULL; + String country = sline.getCountry(); + // TODO: these are hard coded to the same as surface, must fix + String upperairelevation = sline.getElevation(); + String upperairgeom = sline.getGeom(); + String wmoindex = sline.getWmo(); + String wmoregion = NULL; + + StringBuffer line = new StringBuffer(); + line.append(INSERT_PREFIX); + line.append(addParam(gid, true, false, false)); + line.append(addParam(country, false, false, false)); + line.append(addParam(elevation, false, false, true)); + line.append(addParam(icao, false, false, false)); + line.append(addParam(the_geom, false, false, false)); + line.append(addParam(name, false, false, false)); + line.append(addParam(rbsnindicator, false, false, false)); + line.append(addParam(state, false, false, false)); + line.append(addParam(upperairelevation, false, false, true)); + line.append(addParam(upperairgeom, false, false, false)); + line.append(addParam(wmoindex, false, false, false)); + line.append(addParam(wmoregion, false, true, false)); + + bw.write(line.toString() + "\n"); + count++; + + if (count == (FILE_SIZE_LIMIT * fileCount) - 1) { + bw.close(); + fstream.close(); + bw = null; + fstream = null; + fileCount++; + + fstream = new FileWriter(path + FILE_NAME_PREFIX + + (fileCount) + FILE_NAME_SUFFIX); + bw = new BufferedWriter(fstream); + } } - if (bw == null) { - bw = new BufferedWriter(fstream); - } - - SpatialLine sline = stationMap.get(it.next()); - - String gid = sline.getGid(); - String state = sline.getState(); - String elevation = sline.getElevation(); - String icao = sline.getICAO(); - String the_geom = sline.getGeom(); - String name = sline.getName(); - String rbsnindicator = NULL; - String country = sline.getCountry(); - // TODO: these are hard coded to the same as surface, must fix - String upperairelevation = sline.getElevation(); - String upperairgeom = sline.getGeom(); - String wmoindex = sline.getWmo(); - String wmoregion = NULL; - - StringBuffer line = new StringBuffer(); - line.append(INSERT_PREFIX); - line.append(addParam(gid, true, false, false)); - line.append(addParam(country, false, false, false)); - line.append(addParam(elevation, false, false, true)); - line.append(addParam(icao, false, false, false)); - line.append(addParam(the_geom, false, false, false)); - line.append(addParam(name, false, false, false)); - line.append(addParam(rbsnindicator, false, false, false)); - line.append(addParam(state, false, false, false)); - line.append(addParam(upperairelevation, false, false, true)); - line.append(addParam(upperairgeom, false, false, false)); - line.append(addParam(wmoindex, false, false, false)); - line.append(addParam(wmoregion, false, true, false)); - - bw.write(line.toString() + "\n"); - count++; - - if (count == (FILE_SIZE_LIMIT * fileCount) - 1) { + } finally { + if (bw != null) { bw.close(); - fstream.close(); - bw = null; - fstream = null; - fileCount++; - - fstream = new FileWriter(path + FILE_NAME_PREFIX + (fileCount) - + FILE_NAME_SUFFIX); - bw = new BufferedWriter(fstream); } - } - if (bw != null) { - bw.close(); - } - if (fstream != null) { - fstream.close(); + if (fstream != null) { + fstream.close(); + } } } @@ -210,25 +225,47 @@ public class AWIPSCommonObsSQLGenerator implements INationalDatasetSubscriber { * @param filename */ private void readFile(String filename) { + FileInputStream fis = null; + DataInputStream dis = null; + BufferedReader br = null; - System.out.println("Read : " + filename); - System.out.println("\n"); try { - FileInputStream fis = new FileInputStream(filename); - DataInputStream dis = new DataInputStream(fis); - BufferedReader br = new BufferedReader(new InputStreamReader(dis)); + fis = new FileInputStream(filename); + dis = new DataInputStream(fis); + br = new BufferedReader(new InputStreamReader(dis)); String strLine; while ((strLine = br.readLine()) != null) { if (!strLine.startsWith(SKIP)) { String[] readLine = strLine.split(DELIMITER); SpatialLine line = new SpatialLine(readLine); stationMap.put(line.getGid(), line); - System.out.println(strLine); read++; } } } catch (IOException ioe) { - ioe.printStackTrace(); + statusHandler.error("Error processing file: " + filename, ioe); + } finally { + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + // ignore + } + } + if (dis != null) { + try { + dis.close(); + } catch (IOException e) { + // ignore + } + } + if (br != null) { + try { + br.close(); + } catch (IOException e) { + // ignore + } + } } } diff --git a/edexOsgi/com.raytheon.uf.edex.dissemination/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.dissemination/META-INF/MANIFEST.MF index 7786719fcc..0d01471ea9 100644 --- a/edexOsgi/com.raytheon.uf.edex.dissemination/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.dissemination/META-INF/MANIFEST.MF @@ -20,9 +20,10 @@ Import-Package: com.raytheon.edex.exception, com.raytheon.uf.edex.database.purge, org.apache.camel Require-Bundle: org.jep;bundle-version="1.0.0", - com.raytheon.edex.plugin.text, + com.raytheon.uf.edex.plugin.text, com.raytheon.uf.common.site;bundle-version="1.12.1174", org.springframework;bundle-version="2.5.6", com.raytheon.uf.edex.database, com.raytheon.uf.common.auth;bundle-version="1.12.1174", - com.raytheon.uf.edex.auth;bundle-version="1.12.1174" + com.raytheon.uf.edex.auth;bundle-version="1.12.1174", + com.raytheon.uf.edex.ndm;bundle-version="1.0.0" diff --git a/edexOsgi/com.raytheon.uf.edex.dissemination/res/spring/dissemination-request.xml b/edexOsgi/com.raytheon.uf.edex.dissemination/res/spring/dissemination-request.xml index 83c351e7f2..dcdf235bb0 100644 --- a/edexOsgi/com.raytheon.uf.edex.dissemination/res/spring/dissemination-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.dissemination/res/spring/dissemination-request.xml @@ -20,20 +20,6 @@
      - - - - - - java.lang.Throwable - - - - - - - @@ -50,11 +36,21 @@ java.lang.Throwable + uri="log:oup?level=ERROR&showBody=true" /> + + + + + + java.lang.Throwable + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ModifyProduct.java b/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ModifyProduct.java index a6fa5407dc..2c0c07abb8 100644 --- a/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ModifyProduct.java +++ b/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ModifyProduct.java @@ -23,13 +23,13 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; -import com.raytheon.edex.plugin.text.dao.AfosToAwipsDao; import com.raytheon.uf.common.dataplugin.text.db.AfosToAwips; import com.raytheon.uf.common.dissemination.OUPRequest; import com.raytheon.uf.common.dissemination.OfficialUserProduct; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.dissemination.transmitted.TransProdHeader; import com.raytheon.uf.edex.dissemination.transmitted.TransmittedProductList; +import com.raytheon.uf.edex.plugin.text.dao.AfosToAwipsDao; /** * Utilities for generating a wmo header or tracking headers diff --git a/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/OUPHandler.java b/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/OUPHandler.java index e8f9d15851..d5f56872aa 100644 --- a/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/OUPHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/OUPHandler.java @@ -42,9 +42,9 @@ import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.edex.auth.AuthManager; import com.raytheon.uf.edex.auth.AuthManagerFactory; +import com.raytheon.uf.edex.auth.authorization.IAuthorizer; import com.raytheon.uf.edex.auth.req.AbstractPrivilegedRequestHandler; import com.raytheon.uf.edex.auth.resp.AuthorizationResponse; -import com.raytheon.uf.edex.auth.roles.IRoleStorage; import com.raytheon.uf.edex.dissemination.transmitted.TransProdHeader; /** @@ -58,7 +58,8 @@ import com.raytheon.uf.edex.dissemination.transmitted.TransProdHeader; * Oct 22, 2009 njensen Initial creation * Oct 12, 2012 DR 15418 D. Friedman Use clustered TransmittedProductList * Jun 07, 2013 1981 mpduff This is now a priviledged request handler. -# Nov 20, 2013 DR 16777 D. Friedman Add a test mode. + * Nov 20, 2013 DR 16777 D. Friedman Add a test mode. + * May 28, 2014 3211 njensen Use IAuthorizer instead of IRoleStorage * * * @@ -80,7 +81,8 @@ public class OUPHandler extends AbstractPrivilegedRequestHandler { return handleOUPRequest(request, false); } - public OUPResponse handleOUPRequest(OUPRequest request, boolean test) throws Exception { + public OUPResponse handleOUPRequest(OUPRequest request, boolean test) + throws Exception { OfficialUserProduct oup = request.getProduct(); OUPResponse resp = new OUPResponse(); boolean changedBbb = false; @@ -90,7 +92,7 @@ public class OUPHandler extends AbstractPrivilegedRequestHandler { request = ModifyProduct.addWmoHeader(request); } TransProdHeader header = ModifyProduct.getProductHeader(oup); - if (request.isCheckBBB() && ! test) { + if (request.isCheckBBB() && !test) { changedBbb = ModifyProduct.checkBBBField(oup, header); if (changedBbb) { resp.setChangedBBB(request.getProduct().getWmoType()); @@ -197,9 +199,9 @@ public class OUPHandler extends AbstractPrivilegedRequestHandler { authorized = true; } else { AuthManager manager = AuthManagerFactory.getInstance().getManager(); - IRoleStorage roleStorage = manager.getRoleStorage(); + IAuthorizer auth = manager.getAuthorizer(); - authorized = roleStorage.isAuthorized((request).getRoleId(), user + authorized = auth.isAuthorized((request).getRoleId(), user .uniqueId().toString(), APPLICATION); } diff --git a/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ingest/DisseminationNationalDatasetSubscriber.java b/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ingest/DisseminationNationalDatasetSubscriber.java index 676580aba3..f16f91c5f3 100644 --- a/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ingest/DisseminationNationalDatasetSubscriber.java +++ b/edexOsgi/com.raytheon.uf.edex.dissemination/src/com/raytheon/uf/edex/dissemination/ingest/DisseminationNationalDatasetSubscriber.java @@ -35,13 +35,13 @@ import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.PathManagerFactory; -import com.raytheon.uf.common.site.ingest.INationalDatasetSubscriber; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.edex.ndm.ingest.INationalDatasetSubscriber; /** - * TODO Add Description + * Dissemination NDM subscriber. * *
        * 
      @@ -50,6 +50,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Jan 13, 2011            bfarmer     Initial creation
      + * Mar 06, 2014   2876     mpduff      New NDM plugin.
        * 
        * 
      * @@ -59,7 +60,8 @@ import com.raytheon.uf.common.status.UFStatus.Priority; public class DisseminationNationalDatasetSubscriber implements INationalDatasetSubscriber { - private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(DisseminationNationalDatasetSubscriber.class); + private static final IUFStatusHandler statusHandler = UFStatus + .getHandler(DisseminationNationalDatasetSubscriber.class); private static final String AWIPS_PRIORITIES_FILENAME = "dissemination/awipsPriorities.txt"; @@ -84,7 +86,8 @@ public class DisseminationNationalDatasetSubscriber implements try { backupFile.createNewFile(); } catch (IOException e) { - statusHandler.handle(Priority.PROBLEM, "Failed to create File " + backupFilename, e); + statusHandler.handle(Priority.PROBLEM, "Failed to create file " + + backupFilename, e); } saveFile(outFile, backupFile); saveFile(file, outFile); @@ -93,10 +96,12 @@ public class DisseminationNationalDatasetSubscriber implements private void saveFile(File file, File outFile) { if ((file != null) && file.exists()) { + BufferedReader fis = null; + BufferedWriter fos = null; try { - BufferedReader fis = new BufferedReader(new InputStreamReader( + fis = new BufferedReader(new InputStreamReader( new FileInputStream(file))); - BufferedWriter fos = new BufferedWriter(new OutputStreamWriter( + fos = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(outFile))); String line = null; try { @@ -104,19 +109,30 @@ public class DisseminationNationalDatasetSubscriber implements fos.write(line); fos.newLine(); } - fos.close(); } catch (IOException e) { statusHandler.handle(Priority.PROBLEM, - "Could not read File " + AWIPS_PRIORITIES_FILENAME, - e); + "Could not read file: " + file.getName(), e); } } catch (FileNotFoundException e) { - statusHandler.handle(Priority.PROBLEM, - "Failed to find File " + AWIPS_PRIORITIES_FILENAME, e); - + statusHandler.handle(Priority.PROBLEM, "Failed to find file: " + + file.getName(), e); + } finally { + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + // ignore + } + } + if (fos != null) { + try { + fos.close(); + } catch (IOException e) { + // ignore + } + } } } } - } diff --git a/edexOsgi/com.raytheon.uf.edex.dissemination/utility/edex_static/base/dissemination/handleOUP.py b/edexOsgi/com.raytheon.uf.edex.dissemination/utility/edex_static/base/dissemination/handleOUP.py index 1c07e92756..ce2eb00748 100644 --- a/edexOsgi/com.raytheon.uf.edex.dissemination/utility/edex_static/base/dissemination/handleOUP.py +++ b/edexOsgi/com.raytheon.uf.edex.dissemination/utility/edex_static/base/dissemination/handleOUP.py @@ -36,6 +36,7 @@ # 10/12/12 DR 15418 D. Friedman Use unique attachment file names # 11/20/13 DR 16777 D. Friedman Add a test mode. # 12/05/16 DR 16842 D. Friedman Do not set product ID on MhsMessage +# 07/29/14 DR 2914 G. Armendariz Remove call to PropertiesFactory # # @@ -63,15 +64,14 @@ for line in f: ACTION_CODES[codeSplit[0]] = codeSplit[1] f.close() -from com.raytheon.uf.edex.core.props import PropertiesFactory -env = PropertiesFactory.getInstance().getEnvProperties() -dataDir = env.getEnvValue("DEFAULTDATADIR") +from com.raytheon.uf.edex.core import EDEXUtil +dataDir = EDEXUtil.getEdexData(); OUT_DIR = dataDir + 'outgoing' if not os.path.isdir(OUT_DIR): os.mkdir(OUT_DIR) INGEST_DIR = dataDir + 'manual' INGEST_ROUTE = 'handleoupFilePush' -SITE_ID = env.getEnvValue('SITENAME') +SITE_ID = EDEXUtil.getEdexSite() def process(oup, afosID, resp, ackMgr = None, test = False): _Logger.info("handleOUP.py received " + str(oup.getFilename())) diff --git a/edexOsgi/com.raytheon.uf.edex.grid.staticdata/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.grid.staticdata/META-INF/MANIFEST.MF index 27b004ea82..47bfc5bb60 100644 --- a/edexOsgi/com.raytheon.uf.edex.grid.staticdata/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.grid.staticdata/META-INF/MANIFEST.MF @@ -2,20 +2,24 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Grid Static Data Bundle-SymbolicName: com.raytheon.uf.edex.grid.staticdata -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Require-Bundle: javax.measure;bundle-version="1.0.0", - com.raytheon.uf.common.dataplugin.grid;bundle-version="1.0.0", - com.raytheon.uf.edex.plugin.grid;bundle-version="1.0.0", - com.raytheon.uf.common.dataplugin.level;bundle-version="1.12.1174", - com.raytheon.uf.common.parameter;bundle-version="1.0.0", - com.raytheon.uf.common.status;bundle-version="1.12.1174", - com.raytheon.uf.common.gridcoverage;bundle-version="1.0.0", - com.raytheon.uf.edex.decodertools;bundle-version="1.12.1174", - com.raytheon.edex.common;bundle-version="1.12.1174", - com.raytheon.edex.plugin.gfe;bundle-version="1.12.1174", - com.raytheon.uf.common.comm;bundle-version="1.12.1174", - com.raytheon.uf.common.topo;bundle-version="1.12.1174" +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Require-Bundle: javax.measure, + com.raytheon.uf.common.dataplugin.grid;bundle-version="1.13.0", + com.raytheon.uf.edex.plugin.grid, + com.raytheon.uf.common.dataplugin.level;bundle-version="1.14.0", + com.raytheon.uf.common.parameter;bundle-version="1.14.0", + com.raytheon.uf.common.status;bundle-version="1.14.1", + com.raytheon.uf.common.gridcoverage;bundle-version="1.13.0", + com.raytheon.edex.plugin.gfe;bundle-version="1.14.0", + com.raytheon.uf.common.topo;bundle-version="1.14.0", + com.raytheon.uf.common.numeric;bundle-version="1.14.0", + com.raytheon.uf.common.geospatial;bundle-version="1.14.2", + com.raytheon.uf.common.datastorage;bundle-version="1.14.0", + com.raytheon.uf.edex.database;bundle-version="1.14.1", + com.raytheon.uf.common.util;bundle-version="1.14.1", + com.raytheon.uf.common.dataplugin;bundle-version="1.14.0", + com.raytheon.uf.edex.core;bundle-version="1.14.1" Export-Package: com.raytheon.uf.edex.grid.staticdata, com.raytheon.uf.edex.grid.staticdata.topo diff --git a/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/StaticDataGenerator.java b/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/StaticDataGenerator.java index 7bd4e1ec92..50cd0e80a0 100644 --- a/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/StaticDataGenerator.java +++ b/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/StaticDataGenerator.java @@ -50,11 +50,11 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.database.DataAccessLayerException; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; import com.raytheon.uf.edex.database.cluster.ClusterTask; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.edex.database.plugin.DataURIDatabaseUtil; import com.raytheon.uf.edex.grid.staticdata.topo.StaticTopoData; import com.raytheon.uf.edex.plugin.grid.dao.GridDao; @@ -66,12 +66,18 @@ import com.raytheon.uf.edex.plugin.grid.dao.GridDao; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Dec 3, 2010 rjpeter Initial creation - * Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin - * Mar 07, 2013 1587 bsteffen rewrite static data generation. - * Mar 14, 2013 1587 bsteffen Fix persisting to datastore. + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Dec 03, 2010 rjpeter Initial creation + * Feb 15, 2013 1638 mschenke Moved DataURINotificationMessage to uf.common.dataplugin + * Mar 07, 2013 1587 bsteffen rewrite static data generation. + * Mar 14, 2013 1587 bsteffen Fix persisting to datastore. + * Apr 14, 2014 16752 MPorricelli Add ensembleid to hash key to allow + * creation of static data for all perturbations + * of Ensemble models + * Apr 21, 2014 2060 njensen Remove dependency on grid dataURI column + * Sep 19, 2014 3627 mapeters Updated deprecated TimeTools usage. + * Aug 06, 2013 3805 bsteffen Increase time of cluster locks. * * * @@ -264,7 +270,7 @@ public class StaticDataGenerator { staticRecords.add(staticRecord); } - databaseRecords.addAll(checkDatabase(dao, staticRecords)); + databaseRecords.addAll(checkDatabase(staticRecords)); datastoreRecords.addAll(checkDatastore(dao, databaseRecords)); if (!datastoreRecords.isEmpty()) { for (GridRecord staticRecord : datastoreRecords) { @@ -293,7 +299,17 @@ public class StaticDataGenerator { + record.getDataTime().getRefTime(); ClusterTask rval = null; do { - rval = ClusterLockUtils.lock(STATIC_TOPO, taskDetails, 1500, true); + /* + * 4 minutes is needed because when static topo has not been + * pregenerated it must go through a lengthy topo initialization + * process. This is rare but we do not want the cluster lock to time + * out in these cases. The worst case scenerio that has been + * observed is generating topo for grid 233 which took 107 seconds. + * 4 minutes leaves extra time in case other grids have worse + * performance. + */ + rval = ClusterLockUtils.lock(STATIC_TOPO, taskDetails, + 4 * TimeUtil.MILLIS_PER_MINUTE, true); } while (!rval.getLockState().equals(LockState.SUCCESSFUL)); return rval; } @@ -364,7 +380,7 @@ public class StaticDataGenerator { staticRecord = new GridRecord(record); staticRecord.setId(0); - staticRecord.setInsertTime(TimeTools.getSystemCalendar()); + staticRecord.setInsertTime(TimeUtil.newGmtCalendar()); Calendar refTime = new GregorianCalendar(TimeZone.getTimeZone("GMT")); refTime.setTime(record.getDataTime().getRefTime()); @@ -383,19 +399,19 @@ public class StaticDataGenerator { /** * Return a set with only records which are not already in the database + * + * @throws PluginException */ - private Set checkDatabase(GridDao dao, - Set staticRecords) throws DataAccessLayerException { + private Set checkDatabase(Set staticRecords) + throws PluginException { if (staticRecords.isEmpty()) { return staticRecords; } Set missing = new HashSet(); for (GridRecord staticRecord : staticRecords) { - // a possible future optimization would be to do one bulk query for - // all records. - List list = dao.queryBySingleCriteria("dataURI", - staticRecord.getDataURI()); - if (list.isEmpty()) { + // TODO a possible future optimization would be to do one bulk query + // for all records. + if (!DataURIDatabaseUtil.existingDataURI(staticRecord)) { missing.add(staticRecord); } } @@ -445,12 +461,15 @@ public class StaticDataGenerator { private final int forecastTime; private final int coverageid; + + private final String ensembleid; public CacheKey(GridRecord record) { this.datasetid = record.getDatasetId(); this.refTime = record.getDataTime().getRefTime(); this.forecastTime = record.getDataTime().getFcstTime(); this.coverageid = record.getLocation().getId(); + this.ensembleid = record.getEnsembleId(); } @Override @@ -463,6 +482,8 @@ public class StaticDataGenerator { result = (prime * result) + forecastTime; result = (prime * result) + ((refTime == null) ? 0 : refTime.hashCode()); + result = (prime * result) + + ((ensembleid == null) ? 0 : ensembleid.hashCode()); return result; } @@ -498,6 +519,13 @@ public class StaticDataGenerator { } else if (!refTime.equals(other.refTime)) { return false; } + if (ensembleid == null) { + if (other.ensembleid != null) { + return false; + } + } else if (!ensembleid.equals(other.ensembleid)) { + return false; + } return true; } diff --git a/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/topo/StaticTopoData.java b/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/topo/StaticTopoData.java index 2bd2865e8b..dec5d236c0 100644 --- a/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/topo/StaticTopoData.java +++ b/edexOsgi/com.raytheon.uf.edex.grid.staticdata/src/com/raytheon/uf/edex/grid/staticdata/topo/StaticTopoData.java @@ -37,6 +37,7 @@ import org.geotools.coverage.grid.GridGeometry2D; import org.geotools.geometry.DirectPosition2D; import org.geotools.geometry.GeneralEnvelope; import org.geotools.referencing.operation.builder.GridToEnvelopeMapper; +import org.hibernate.type.SerializationException; import org.opengis.geometry.DirectPosition; import org.opengis.geometry.MismatchedDimensionException; import org.opengis.referencing.FactoryException; @@ -45,7 +46,6 @@ import org.opengis.referencing.datum.PixelInCell; import org.opengis.referencing.operation.MathTransform; import org.opengis.referencing.operation.TransformException; -import com.raytheon.edex.site.SiteUtil; import com.raytheon.uf.common.datastorage.DataStoreFactory; import com.raytheon.uf.common.datastorage.IDataStore; import com.raytheon.uf.common.datastorage.IDataStore.StoreOp; @@ -59,14 +59,14 @@ import com.raytheon.uf.common.geospatial.MapUtil; import com.raytheon.uf.common.geospatial.interpolation.BilinearInterpolation; import com.raytheon.uf.common.geospatial.interpolation.GridReprojection; import com.raytheon.uf.common.geospatial.interpolation.GridSampler; -import com.raytheon.uf.common.geospatial.interpolation.data.FloatArrayWrapper; import com.raytheon.uf.common.gridcoverage.GridCoverage; -import com.raytheon.uf.common.serialization.SerializationException; +import com.raytheon.uf.common.numeric.buffer.FloatBufferWrapper; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.topo.TiledTopoSource; import com.raytheon.uf.common.util.RunProcess; +import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils; import com.raytheon.uf.edex.database.cluster.ClusterLockUtils.LockState; import com.raytheon.uf.edex.database.cluster.ClusterTask; @@ -77,17 +77,18 @@ import com.vividsolutions.jts.geom.Coordinate; * *
        * SOFTWARE HISTORY
      - * Date         Ticket#     Engineer    Description
      - * ------------ ----------  ----------- --------------------------
      - * Sep 27, 2010 6394        bphillip    Initial creation
      - * Oct 08, 2010 6394        bphillip    Rewrote sections for optimal reading and
      - *                                      writing performance
      - * Sep 19, 2011 10955       rferrel     Use RunProcess
      - * Apr 18, 2012 14694       D. Friedman Fixes for static topography generation
      - * May 09, 2012 14939       D. Friedman Fix errors in DR 14694
      - * Jan 14, 2013 1469        bkowal      Removed the hdf5 data directory
      - * Feb 12, 2013 1608        randerso    Changed to call deleteDatasets
      - * Aug 06, 2013 2235        bsteffen    Added Caching version of TopoQuery.
      + * Date          Ticket#  Engineer    Description
      + * ------------- -------- ----------- --------------------------
      + * Sep 27, 2010  6394     bphillip    Initial creation
      + * Oct 08, 2010  6394     bphillip    Rewrote sections for optimal reading and
      + *                                    writing performance
      + * Sep 19, 2011  10955    rferrel     Use RunProcess
      + * Apr 18, 2012  14694    D. Friedman Fixes for static topography generation
      + * May 09, 2012  14939    D. Friedman Fix errors in DR 14694
      + * Jan 14, 2013  1469     bkowal      Removed the hdf5 data directory
      + * Feb 12, 2013  1608     randerso    Changed to call deleteDatasets
      + * Aug 06, 2013  2235     bsteffen    Added Caching version of TopoQuery.
      + * Aug 06, 2013  3805     bsteffen    Add timing to logging.
        * 
        * 
      * @@ -250,9 +251,7 @@ public class StaticTopoData { splitPacific(); } } finally { - if (ct != null) { - ClusterLockUtils.unlock(ct, false); - } + ClusterLockUtils.unlock(ct, false); } initAttributes(); @@ -409,16 +408,16 @@ public class StaticTopoData { SerializationException { if (coverage.getNx() < 0 || coverage.getNy() < 0) { statusHandler.handle(Priority.PROBLEM, coverage.getName() - + " is not applicable to " + SiteUtil.getSite() + + " is not applicable to " + EDEXUtil.getEdexSite() + ". Skipping."); return; } + long startTimeMillis = System.currentTimeMillis(); GridGeometry2D inGeom = MapUtil.getGridGeometry(coverage); // Gets the location data and extracts it from the static topo file float[] finalData = null; - finalData = getTopoData(inGeom, coverage.getCrs(), coverage.getNx(), - coverage.getNy()); + finalData = getTopoData(inGeom); // Create an HDF5 data record and store it FloatDataRecord outRecord = new FloatDataRecord(STOPO_DATASET, @@ -427,11 +426,10 @@ public class StaticTopoData { inGeom.getGridRange().getHigh(1) + 1 }); siteDataStore.addDataRecord(outRecord, sp); siteDataStore.store(StoreOp.REPLACE); - - statusHandler - .handle(Priority.INFO, - "Stopo data successfully initialized for " - + coverage.getName()); + long endTimeMillis = System.currentTimeMillis(); + statusHandler.handle(Priority.INFO, + "Stopo data successfully initialized for " + coverage.getName() + + " in " + (endTimeMillis - startTimeMillis) + "ms"); } /** @@ -472,7 +470,6 @@ public class StaticTopoData { * @param modelName * The model to check * @return True if the data exists, else false - * @throws GribException */ private boolean topoExists(GridCoverage coverage) { @@ -498,8 +495,6 @@ public class StaticTopoData { * @param modelName * The site for which to get the static topo data * @return The static topo data - * @throws GribException - * If an error occurs while retrieving the topo data */ public FloatDataRecord getStopoData(GridCoverage coverage) { if (!topoExists(coverage)) { @@ -526,15 +521,10 @@ public class StaticTopoData { * * @param inGeom * The geometry of the data to be requested - * @param inCrs - * The coordinate reference system of the desired data * @return A float array containing the extracted topo data - * @throws GribException - * If the data cannot be extracted */ - private float[] getTopoData(GridGeometry2D inGeom, - CoordinateReferenceSystem inCrs, int coverageNx, int coverageNy) { - FloatArrayWrapper finalDataWrapper = null; + private float[] getTopoData(GridGeometry2D inGeom) { + FloatBufferWrapper finalDataWrapper = null; BilinearInterpolation interp = new BilinearInterpolation(); interp.setMissingThreshold(0.0001f); @@ -546,7 +536,8 @@ public class StaticTopoData { GridSampler sampler = new GridSampler(source, interp); try { if (finalDataWrapper == null) { - finalDataWrapper = new FloatArrayWrapper(inGeom); + finalDataWrapper = new FloatBufferWrapper( + inGeom.getGridRange2D()); reprojection.reprojectedGrid(sampler, finalDataWrapper); } else { boolean done = true; @@ -691,8 +682,6 @@ public class StaticTopoData { * @throws TransformException * @throws MismatchedDimensionException * @throws FactoryException - * @throws GribException - * If the geometry cannot be created */ private GridGeometry2D createGridGeometry(CoordinateReferenceSystem crs, Coordinate llCoord, Coordinate urCoord, int nx, int ny) diff --git a/edexOsgi/com.raytheon.uf.edex.gridcoverage/res/spring/gridcoverage-common.xml b/edexOsgi/com.raytheon.uf.edex.gridcoverage/res/spring/gridcoverage-common.xml index 1d6ef5da44..203ee1730b 100644 --- a/edexOsgi/com.raytheon.uf.edex.gridcoverage/res/spring/gridcoverage-common.xml +++ b/edexOsgi/com.raytheon.uf.edex.gridcoverage/res/spring/gridcoverage-common.xml @@ -21,7 +21,7 @@ - + com.raytheon.uf.common.gridcoverage.GridCoverage diff --git a/edexOsgi/com.raytheon.uf.edex.hydro.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.hydro.feature/feature.xml index 7c1187904a..c2d9dace1f 100644 --- a/edexOsgi/com.raytheon.uf.edex.hydro.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.hydro.feature/feature.xml @@ -58,5 +58,12 @@ install-size="0" version="0.0.0" unpack="false"/> - + diff --git a/edexOsgi/com.raytheon.uf.edex.maintenance/build.properties b/edexOsgi/com.raytheon.uf.edex.maintenance/build.properties index 5791d48d5f..ad8d78badb 100644 --- a/edexOsgi/com.raytheon.uf.edex.maintenance/build.properties +++ b/edexOsgi/com.raytheon.uf.edex.maintenance/build.properties @@ -2,4 +2,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + resources/ diff --git a/edexOsgi/com.raytheon.uf.edex.menus/src/com/raytheon/uf/edex/menus/AbstractMenuUtil.java b/edexOsgi/com.raytheon.uf.edex.menus/src/com/raytheon/uf/edex/menus/AbstractMenuUtil.java index 37507a6131..9f491a3f97 100644 --- a/edexOsgi/com.raytheon.uf.edex.menus/src/com/raytheon/uf/edex/menus/AbstractMenuUtil.java +++ b/edexOsgi/com.raytheon.uf.edex.menus/src/com/raytheon/uf/edex/menus/AbstractMenuUtil.java @@ -40,7 +40,7 @@ import com.raytheon.uf.common.status.UFStatus; /** * - * Abstract class for generting menu files + * Abstract class for generating menu files * *
        * 
      @@ -48,7 +48,8 @@ import com.raytheon.uf.common.status.UFStatus;
        * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
      - * Nov 8, 2012            mschenke     Initial javadoc creation
      + * Nov 08, 2012            mschenke    Initial javadoc creation
      + * Mar 11, 2014    2858    mpduff      javadoc updates
        * 
        * 
      * @@ -56,7 +57,7 @@ import com.raytheon.uf.common.status.UFStatus; * @version 1.0 */ public abstract class AbstractMenuUtil { - private static final transient IUFStatusHandler statusHandler = UFStatus + private static final IUFStatusHandler statusHandler = UFStatus .getHandler(AbstractMenuUtil.class); private final PathManager pm = (PathManager) PathManagerFactory @@ -70,6 +71,9 @@ public abstract class AbstractMenuUtil { private String site = null; + /** + * Create the menu contribution xml. + */ public abstract void createMenus(); /** @@ -93,7 +97,10 @@ public abstract class AbstractMenuUtil { * Convert menu objects to xml and writes them to disk * * @param object + * The object to marshal + * * @param path + * The path */ public void toXml(Object object, String path) { try { @@ -107,17 +114,13 @@ public abstract class AbstractMenuUtil { if (!file.getFile().exists()) { file.getFile().getParentFile().mkdirs(); } - // if (file.exists()) { - // statusHandler.info("Did not need to create the menu : " - // + file.getName()); - // return; - // } + marshaller.marshal(object, pm.getFile(caveConfigured, path)); file.save(); } catch (JAXBException e) { - statusHandler.error("Unable to process the menu", e); + statusHandler.error("Unable to process the menu: " + path, e); } catch (LocalizationOpFailedException e) { - statusHandler.error("Unable to process the menu", e); + statusHandler.error("Unable to process the menu: " + path, e); } } @@ -132,6 +135,16 @@ public abstract class AbstractMenuUtil { return object; } + /** + * Unmarshal an xml file. + * + * @param path + * The path of the file + * @param lContext + * The localization context + * + * @return The xml object + */ public Object fromXml(String path, LocalizationContext lContext) { Object object = null; try { @@ -142,17 +155,26 @@ public abstract class AbstractMenuUtil { object = unmarshaller.unmarshal(file.getFile()); } } catch (JAXBException e) { - e.printStackTrace(); + statusHandler.error("Error unmarshalling " + path, e); } + return object; } + /** + * Check to see whether the menu creator needs to be run + * + * @return true if it needs to be run + */ protected abstract boolean checkCreated(); /** * Check to see whether the menu creator needs to be run * - * @return + * @param fileName + * @param type + * + * @return true if it needs to be run */ public boolean checkCreated(String fileName, String type) { LocalizationContext context = pm.getContextForSite( @@ -180,13 +202,14 @@ public abstract class AbstractMenuUtil { statusHandler.error("Error saving menu creation time file", e); } return false; - } else { - statusHandler.info("Timestamp in " + fileName - + " was before timestamp in ." + type + "MenuTime"); - statusHandler.info("Menus already created for site " + getSite() - + " for " + type); - return true; } + + statusHandler.info("Timestamp in " + fileName + + " was before timestamp in ." + type + "MenuTime"); + statusHandler.info("Menus already created for site " + getSite() + + " for " + type); + return true; + } /** diff --git a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/META-INF/MANIFEST.MF index 812f420b7f..ed1414b87b 100644 --- a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/META-INF/MANIFEST.MF @@ -9,7 +9,9 @@ Require-Bundle: com.raytheon.edex.common;bundle-version="1.11.1", com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", org.geotools, javax.persistence, - javax.measure + javax.measure, + com.raytheon.uf.common.status;bundle-version="1.14.1" Import-Package: com.raytheon.edex.plugin.obs.metar, com.raytheon.uf.common.dataplugin.obs.metar, + com.raytheon.uf.common.wmo, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/build.properties b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/build.properties index 5791d48d5f..ad8d78badb 100644 --- a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/build.properties +++ b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/build.properties @@ -2,4 +2,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + resources/ diff --git a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/res/spring/metartohmdb-plugin.xml b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/res/spring/metartohmdb-plugin.xml index 69821ef428..53b20e874a 100644 --- a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/res/spring/metartohmdb-plugin.xml +++ b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/res/spring/metartohmdb-plugin.xml @@ -15,18 +15,13 @@
      + class="org.springframework.orm.hibernate4.HibernateTransactionManager"> - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/MetarToHMDBSrv.java b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/MetarToHMDBSrv.java index 22a120ccd2..07d3680c7d 100644 --- a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/MetarToHMDBSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/MetarToHMDBSrv.java @@ -25,10 +25,26 @@ import org.apache.commons.logging.LogFactory; import com.raytheon.edex.esb.Headers; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.obs.metar.MetarRecord; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.metartohmdb.dao.HMDBReport; import com.raytheon.uf.edex.metartohmdb.dao.HMDBRptDao; -import com.raytheon.uf.edex.wmo.message.WMOHeader; +/** + * Stores MetarRecords as HMDBReport in database + * + *
      + * 
      + * SOFTWARE HISTORY
      + * 
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + * ????                                Initial creation
      + * May 14, 2014 2536       bclement    moved WMO Header to common
      + * 
      + * 
      + * + * @version 1.0 + */ public class MetarToHMDBSrv { private Log logger = LogFactory.getLog(getClass()); @@ -92,7 +108,8 @@ public class MetarToHMDBSrv { // Get the report data. This contains both the // WMOHeader and METAR report, so we need to split them. String rptData = report.getReport(); - WMOHeader hdr = new WMOHeader(rptData.getBytes(), headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + WMOHeader hdr = new WMOHeader(rptData.getBytes(), fileName); if (hdr.isValid()) { rpt.setWmo_dd(hdr.getWmoHeader().substring(0, 6)); // if the report data is longer than 255 characters, diff --git a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBReport.java b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBReport.java index e0ab90e94a..623d41f50e 100644 --- a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBReport.java +++ b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBReport.java @@ -26,31 +26,30 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; -import com.raytheon.uf.common.serialization.ISerializableObject; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; /** - * TODO Add Description + * Data record class for HMDB * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Jun 29, 2009            jkorman     Initial creation
      - *
      + * May 14, 2014 2536       bclement    removed TimeTools usage and ISerializableObject
      + * 
        * 
      - * + * * @author jkorman - * @version 1.0 + * @version 1.0 */ @DynamicSerialize @XmlAccessorType(XmlAccessType.NONE) -public class HMDBReport extends PersistableDataObject implements - ISerializableObject { +public class HMDBReport extends PersistableDataObject { private static final long serialVersionUID = 1L; @@ -504,15 +503,15 @@ public class HMDBReport extends PersistableDataObject implements public static final void main(String [] args) { HMDBReport rpt = new HMDBReport(); - rpt.setDate(TimeTools.getBaseCalendar(2009,06,30)); + rpt.setDate(TimeUtil.newGmtCalendar(2009, 06, 30)); rpt.date.set(Calendar.HOUR_OF_DAY, 14); rpt.date.set(Calendar.MINUTE, 56); - rpt.setOrigin(TimeTools.getBaseCalendar(2009,06,30)); + rpt.setOrigin(TimeUtil.newGmtCalendar(2009, 06, 30)); rpt.origin.set(Calendar.HOUR_OF_DAY, 14); rpt.date.set(Calendar.MINUTE, 54); - rpt.setNominal(TimeTools.getBaseCalendar(2009,06,30)); + rpt.setNominal(TimeUtil.newGmtCalendar(2009, 06, 30)); rpt.nominal.set(Calendar.HOUR_OF_DAY, 15); rpt.nominal.set(Calendar.MINUTE,0); rpt.nominal.set(Calendar.SECOND,0); diff --git a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBRptDao.java b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBRptDao.java index 38cf8f653b..32769a88d3 100644 --- a/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBRptDao.java +++ b/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/src/com/raytheon/uf/edex/metartohmdb/dao/HMDBRptDao.java @@ -21,6 +21,7 @@ package com.raytheon.uf.edex.metartohmdb.dao; import java.util.Calendar; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; import com.raytheon.uf.edex.decodertools.time.TimeTools; @@ -29,17 +30,18 @@ import com.raytheon.uf.edex.decodertools.time.TimeTools; * TODO Add Description * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Jun 29, 2009            jkorman     Initial creation
      - *
      + * Sep 18, 2014 #3627      mapeters    Updated deprecated {@link TimeTools} usage.
      + * 
        * 
      - * + * * @author jkorman - * @version 1.0 + * @version 1.0 */ public class HMDBRptDao extends CoreDao { @@ -75,7 +77,7 @@ public class HMDBRptDao extends CoreDao { public boolean purgeTable(int purgeHours) { boolean status = true; - Calendar c = TimeTools.getSystemCalendar(); + Calendar c = TimeUtil.newGmtCalendar(); c.add(Calendar.HOUR_OF_DAY,-purgeHours); StringBuilder sb = new StringBuilder("delete from rpt where nominal < "); diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.ogc.common/META-INF/MANIFEST.MF index 7563474b8c..48a991eb55 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/META-INF/MANIFEST.MF @@ -22,7 +22,9 @@ Require-Bundle: net.opengis;bundle-version="1.0.2", org.apache.commons.cxf, org.eclipse.jetty;bundle-version="7.6.9", com.raytheon.uf.common.dataplugin.level;bundle-version="1.12.1174", - com.raytheon.uf.edex.log;bundle-version="1.12.1174" + com.raytheon.uf.edex.log;bundle-version="1.12.1174", + com.raytheon.uf.common.http, + com.raytheon.uf.edex.soap;bundle-version="1.14.0" Export-Package: com.raytheon.uf.edex.ogc.common, com.raytheon.uf.edex.ogc.common.db, com.raytheon.uf.edex.ogc.common.feature, @@ -39,5 +41,8 @@ Export-Package: com.raytheon.uf.edex.ogc.common, com.raytheon.uf.edex.ogc.common.stats, com.raytheon.uf.edex.ogc.common.time, com.raytheon.uf.edex.ogc.common.util -Import-Package: com.raytheon.uf.common.localization, +Import-Package: com.raytheon.uf.common.convert, + com.raytheon.uf.common.localization, + javax.servlet, + javax.servlet.http, org.apache.cxf.helpers diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/build.properties b/edexOsgi/com.raytheon.uf.edex.ogc.common/build.properties index e016089273..6047e731c1 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/build.properties +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/build.properties @@ -1,8 +1,8 @@ source.. = src/ +output.. = bin/ bin.includes = .project,\ .classpath,\ META-INF/,\ build.properties,\ - .settings/,\ .,\ res/ diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common-convert.xml b/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common-convert.xml index 59d85e0f55..1a8f8689ee 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common-convert.xml +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common-convert.xml @@ -1,8 +1,6 @@ + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common.xml b/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common.xml index bc7cd6bde5..afb254aaf7 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common.xml +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/res/spring/ogc-common.xml @@ -1,8 +1,6 @@ + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/OgcResponse.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/OgcResponse.java index c0fc6fd769..5294a03f48 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/OgcResponse.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/OgcResponse.java @@ -19,7 +19,7 @@ **/ package com.raytheon.uf.edex.ogc.common; -import com.raytheon.uf.edex.ogc.common.http.MimeType; +import com.raytheon.uf.common.http.MimeType; /** * Response wrapper for OGC web services diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SQLParamRestriction.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SQLParamRestriction.java index 163a93bf70..185d35a4ad 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SQLParamRestriction.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SQLParamRestriction.java @@ -16,7 +16,7 @@ import org.hibernate.Criteria; import org.hibernate.HibernateException; import org.hibernate.criterion.CriteriaQuery; import org.hibernate.criterion.Criterion; -import org.hibernate.engine.TypedValue; +import org.hibernate.engine.spi.TypedValue; /** * Hibernate criterion that allows for direct SQL restrictions @@ -28,6 +28,7 @@ import org.hibernate.engine.TypedValue; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Feb 20, 2013 bclement Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SimpleLayer.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SimpleLayer.java index 76e22c78de..59a678fce9 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SimpleLayer.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/db/SimpleLayer.java @@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import com.raytheon.uf.common.dataplugin.persist.IPersistableDataObject; -import com.raytheon.uf.common.serialization.adapters.GeometryAdapter; +import com.raytheon.uf.common.geospatial.adapter.GeometryAdapter; import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; import com.vividsolutions.jts.geom.Polygon; diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/GmlUtils.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/GmlUtils.java index 8e49e4ed45..a200a4be7a 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/GmlUtils.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/GmlUtils.java @@ -14,9 +14,9 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.InvalidVersionException; import com.raytheon.uf.edex.ogc.common.Version; -import com.raytheon.uf.edex.ogc.common.http.MimeType; /** * Utility methods and constants for GML version parsing and comparison diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/JsonFeatureFormatter.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/JsonFeatureFormatter.java index 9b3c22e3e7..0edf65e4d7 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/JsonFeatureFormatter.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/JsonFeatureFormatter.java @@ -25,17 +25,15 @@ import java.util.ArrayList; import java.util.List; import org.geotools.data.memory.MemoryFeatureCollection; -import org.geotools.feature.FeatureCollection; import org.opengis.feature.simple.SimpleFeature; import org.opengis.feature.simple.SimpleFeatureType; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.common.json.geo.GeoJsonUtil; import com.raytheon.uf.common.json.geo.GeoJsonUtilSimpleImpl; import com.raytheon.uf.common.json.geo.MixedFeatureCollection; import com.raytheon.uf.edex.ogc.common.OgcResponse; import com.raytheon.uf.edex.ogc.common.OgcResponse.TYPE; -import com.raytheon.uf.edex.ogc.common.http.MimeType; - /** * Converts simple features to GeoJSON @@ -46,7 +44,8 @@ import com.raytheon.uf.edex.ogc.common.http.MimeType; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Aug 9, 2011 bclement Initial creation + * Aug 9, 2011 bclement Initial creation + * Mar 11, 2014 #2718 randerso Changes for GeoTools 10.5 * * * @@ -57,7 +56,7 @@ public class JsonFeatureFormatter implements SimpleFeatureFormatter { public static MimeType mimeType = new MimeType("application/json"); - protected GeoJsonUtil jsonUtil = new GeoJsonUtilSimpleImpl(); + protected GeoJsonUtil jsonUtil = new GeoJsonUtilSimpleImpl(); /* * (non-Javadoc) @@ -80,20 +79,20 @@ public class JsonFeatureFormatter implements SimpleFeatureFormatter { * com.raytheon.uf.edex.wms.format.SimpleFeatureFormatter#format(java.util * .List) */ - @Override - public OgcResponse format(List> features) - throws Exception { + @Override + public OgcResponse format(List> features) + throws Exception { MixedFeatureCollection mixed = convert(features); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - jsonUtil.serialize(mixed, baos); - return new OgcResponse(baos.toString(), mimeType, TYPE.TEXT); - } + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + jsonUtil.serialize(mixed, baos); + return new OgcResponse(baos.toString(), mimeType, TYPE.TEXT); + } protected MixedFeatureCollection convert(List> features) { - List> colls = new ArrayList>( + List colls = new ArrayList( features.size()); for (List l : features) { - if (l != null && !l.isEmpty()) { + if ((l != null) && !l.isEmpty()) { SimpleFeatureType t = l.get(0).getFeatureType(); MemoryFeatureCollection c = new MemoryFeatureCollection(t); c.addAll(l); @@ -103,26 +102,26 @@ public class JsonFeatureFormatter implements SimpleFeatureFormatter { return new MixedFeatureCollection(colls); } - /* - * (non-Javadoc) - * - * @see com.raytheon.uf.edex.wms.format.SimpleFeatureFormatter#getMimeType() - */ - @Override + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.edex.wms.format.SimpleFeatureFormatter#getMimeType() + */ + @Override public MimeType getMimeType() { - return mimeType; - } + return mimeType; + } - /* - * (non-Javadoc) - * - * @see - * com.raytheon.uf.edex.ogc.common.feature.SimpleFeatureFormatter#matchesFormat - * (java.lang.String) - */ - @Override + /* + * (non-Javadoc) + * + * @see + * com.raytheon.uf.edex.ogc.common.feature.SimpleFeatureFormatter#matchesFormat + * (java.lang.String) + */ + @Override public boolean matchesFormat(MimeType format) { return mimeType.equalsIgnoreParams(format); - } + } } diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ObsLocation.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ObsLocation.java index f96c866667..6bd16b08f3 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ObsLocation.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ObsLocation.java @@ -43,6 +43,7 @@ import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Mar 24, 2013 1746 dhladky Initial creation + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -74,8 +75,8 @@ public class ObsLocation { this.setStationId(sol.getStationId()); this.setElevation(sol.getElevation()); - Double lat = sol.getLatitude(); - Double lon = sol.getLongitude(); + Double lat = sol.getLatitude().doubleValue(); + Double lon = sol.getLongitude().doubleValue(); PointType point = new PointType(); DirectPositionType pos = new DirectPositionType(); pos.setValue(Arrays.asList(lon, lat)); diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ShpFeatureFormatter.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ShpFeatureFormatter.java index 29eddb7e20..89c9fe9cf9 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ShpFeatureFormatter.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/ShpFeatureFormatter.java @@ -47,11 +47,11 @@ import org.opengis.feature.simple.SimpleFeatureType; import sun.misc.IOUtils; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.ogc.common.OgcResponse; import com.raytheon.uf.edex.ogc.common.OgcResponse.TYPE; -import com.raytheon.uf.edex.ogc.common.http.MimeType; /** * Convert simple features to shape files diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/SimpleFeatureFormatter.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/SimpleFeatureFormatter.java index 44751fa6eb..7ac3266dd8 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/SimpleFeatureFormatter.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/feature/SimpleFeatureFormatter.java @@ -24,8 +24,8 @@ import java.util.List; import org.opengis.feature.simple.SimpleFeature; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.OgcResponse; -import com.raytheon.uf.edex.ogc.common.http.MimeType; /** * Interface for converting simple features to different output formats diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpEndpoint.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpEndpoint.java index 4a7a4e6e3c..37e9926d9e 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpEndpoint.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpEndpoint.java @@ -31,11 +31,11 @@ import org.apache.camel.Processor; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; -import com.raytheon.uf.edex.log.cxf.RequestLogController; import com.raytheon.uf.edex.ogc.common.stats.IStatsRecorder; import com.raytheon.uf.edex.ogc.common.stats.OperationType; import com.raytheon.uf.edex.ogc.common.stats.ServiceType; import com.raytheon.uf.edex.ogc.common.stats.StatsRecorderFinder; +import com.raytheon.uf.edex.soap.RequestLogController; /** * HTTP Camel Processor for OGC REST Services diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpHandler.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpHandler.java index f84c194ba6..52e0831b4e 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/http/OgcHttpHandler.java @@ -38,6 +38,9 @@ import javax.xml.stream.XMLStreamReader; import org.apache.commons.collections.map.CaseInsensitiveMap; import org.apache.commons.lang.StringUtils; +import com.raytheon.uf.common.http.AcceptHeaderParser; +import com.raytheon.uf.common.http.AcceptHeaderValue; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.ogc.common.OgcException; diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/jaxb/OgcJaxbManager.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/jaxb/OgcJaxbManager.java index 92830231f7..f1b81f2639 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/jaxb/OgcJaxbManager.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/jaxb/OgcJaxbManager.java @@ -16,46 +16,24 @@ * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. - * - * - * SOFTWARE HISTORY - * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Mar 30, 2011 bclement Initial creation - * Aug 18, 2013 #2097 dhladky extended JAXBManager - * */ package com.raytheon.uf.edex.ogc.common.jaxb; -import java.io.ByteArrayOutputStream; -import java.io.FileReader; +import java.io.File; import java.io.InputStream; -import java.io.OutputStream; -import java.io.StringReader; import java.util.HashMap; import java.util.Map; -import java.util.Queue; -import java.util.concurrent.ConcurrentLinkedQueue; -import java.util.concurrent.locks.Lock; -import java.util.concurrent.locks.ReadWriteLock; -import java.util.concurrent.locks.ReentrantReadWriteLock; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBElement; import javax.xml.bind.JAXBException; import javax.xml.bind.Marshaller; -import javax.xml.bind.Unmarshaller; -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; -import org.w3c.dom.Document; import org.w3c.dom.Node; import com.raytheon.uf.common.serialization.JAXBManager; -import com.raytheon.uf.common.status.IUFStatusHandler; -import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.serialization.SerializationException; import com.sun.xml.bind.api.JAXBRIContext; import com.sun.xml.bind.marshaller.NamespacePrefixMapper; @@ -68,7 +46,10 @@ import com.sun.xml.bind.marshaller.NamespacePrefixMapper; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * 2011 bclement Initial creation + * Mar 30, 2011 bclement Initial creation + * Aug 18, 2013 #2097 dhladky extended JAXBManager + * Jul 15, 2014 3373 bclement rewritten to use JAXBManager + * Jul 23, 2014 dhladky restored JAXBElement unwrapping lost in re-write. * * * @@ -77,31 +58,72 @@ import com.sun.xml.bind.marshaller.NamespacePrefixMapper; */ public class OgcJaxbManager extends JAXBManager { - protected final JAXBContext jaxbContext; - - protected static final int QUEUE_SIZE = 10; - - protected final Queue unmarshallers = new ConcurrentLinkedQueue(); - - protected final Queue marshallers = new ConcurrentLinkedQueue(); - - protected volatile int unmarshallersCreated = 0; - - protected volatile int marshallersCreated = 0; - - protected final IUFStatusHandler log = UFStatus.getHandler(this.getClass()); - - private volatile NamespacePrefixMapper mapper; - - protected final ReadWriteLock prefixLock = new ReentrantReadWriteLock(); - protected static final String JAXB_NAMESPACE_MAPPER = "com.sun.xml.bind.namespacePrefixMapper"; - public OgcJaxbManager(Class[] classes) throws JAXBException { - jaxbContext = JAXBContext.newInstance(classes, getJaxbConfig()); + private final OgcMarshallerStrategy marshStrategy; + + /** + * @param classes + * @throws JAXBException + */ + public OgcJaxbManager(Class[] classes) throws JAXBException { + this(new OgcMarshallerStrategy(), classes); } - private static Map getJaxbConfig() throws JAXBException { + /** + * @param mapper + * mapping of namespaces to namespace prefixes + * @param classes + * @throws JAXBException + */ + public OgcJaxbManager(NamespacePrefixMapper mapper, Class[] classes) + throws JAXBException { + this(createStrategy(mapper), classes); + } + + /** + * @see JAXBManager#JAXBManager(boolean, + * com.raytheon.uf.common.serialization.jaxb.JaxbMarshallerStrategy, + * Class...) + * @param strategy + * @param classes + * @throws JAXBException + */ + public OgcJaxbManager(OgcMarshallerStrategy strategy, Class[] classes) + throws JAXBException { + super(strategy, classes); + this.marshStrategy = strategy; + } + + /** + * Create a marshaller strategy that uses the provided namespace prefix + * mapping + * + * @param mapper + * @return + */ + private static OgcMarshallerStrategy createStrategy( + final NamespacePrefixMapper mapper) { + return new OgcMarshallerStrategy() { + @Override + protected Marshaller createMarshaller(JAXBContext context) + throws JAXBException { + Marshaller rval = super.createMarshaller(context); + if (mapper != null) { + rval.setProperty(JAXB_NAMESPACE_MAPPER, mapper); + } + return rval; + } + }; + } + + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.common.serialization.JAXBManager#getJaxbConfig() + */ + @Override + protected Map getJaxbConfig() throws JAXBException { Map jaxbConfig = new HashMap(); TransientAnnotationReader reader = new TransientAnnotationReader(); try { @@ -116,210 +138,70 @@ public class OgcJaxbManager extends JAXBManager { return jaxbConfig; } - protected Unmarshaller getUnmarshaller() throws JAXBException { - Unmarshaller m = unmarshallers.poll(); - if (m == null) { - if (unmarshallersCreated < QUEUE_SIZE) { - synchronized (unmarshallers) { - m = jaxbContext.createUnmarshaller(); - ++unmarshallersCreated; - } - } else { - int tries = 0; - do { - try { - Thread.sleep(50); - } catch (InterruptedException e) { - // ignore - } - m = unmarshallers.poll(); - tries++; - if (tries >= 20) { - log.debug("Unable to get jaxb unmarshaller from pool after " - + tries + " tries. Growing pool size."); - synchronized (unmarshallers) { - m = jaxbContext.createUnmarshaller(); - ++unmarshallersCreated; - } - } - } while (m == null); - } - } - return m; - } - - protected Marshaller getMarshaller() throws JAXBException { - Marshaller m = marshallers.poll(); - if (m == null) { - if (marshallersCreated < QUEUE_SIZE) { - synchronized (marshallers) { - m = jaxbContext.createMarshaller(); - ++marshallersCreated; - } - } else { - int tries = 0; - do { - try { - Thread.sleep(50); - } catch (InterruptedException e) { - // ignore - } - m = marshallers.poll(); - tries++; - if (tries >= 20) { - log.debug("Unable to get jaxb marshaller from pool after " - + tries + " tries. Growing pool size."); - synchronized (marshallers) { - m = jaxbContext.createMarshaller(); - ++marshallersCreated; - } - } - } while (m == null); - } - } - return m; - } - - public Object unmarshal(String xml) throws JAXBException { - Unmarshaller msh = null; - try { - msh = getUnmarshaller(); - StringReader reader = new StringReader(xml); - Object obj = msh.unmarshal(reader); - if (obj instanceof JAXBElement) { - obj = ((JAXBElement) obj).getValue(); - } - return obj; - } finally { - if (msh != null) { - unmarshallers.add(msh); - } - } - } - + /** + * @see OgcMarshallerStrategy#unmarshal(JAXBContext, Node) + * @param node + * @return + * @throws JAXBException + */ public Object unmarshal(Node node) throws JAXBException { - Unmarshaller msh = null; - try { - msh = getUnmarshaller(); - Object obj = msh.unmarshal(node); - if (obj instanceof JAXBElement) { - obj = ((JAXBElement) obj).getValue(); - } - return obj; - } finally { - if (msh != null) { - unmarshallers.add(msh); - } - } - } - - public Object unmarshal(FileReader reader) throws JAXBException { - Unmarshaller msh = null; - try { - msh = getUnmarshaller(); - Object obj = msh.unmarshal(reader); - if (obj instanceof JAXBElement) { - obj = ((JAXBElement) obj).getValue(); - } - return obj; - } finally { - if (msh != null) { - unmarshallers.add(msh); - } - } - } - - public Object unmarshal(InputStream xml) throws JAXBException { - Unmarshaller msh = null; - try { - msh = getUnmarshaller(); - Object obj = msh.unmarshal(xml); - if (obj instanceof JAXBElement) { - obj = ((JAXBElement) obj).getValue(); - } - return obj; - } finally { - if (msh != null) { - unmarshallers.add(msh); - } - } - } - - public String marshal(Object obj) throws JAXBException { - return marshal(obj, true); - } - - public String marshal(Object obj, boolean formatted) throws JAXBException { - return marshal(obj, null, formatted, false); - } - - public String marshal(Object obj, boolean formatted, boolean fragment) - throws JAXBException { - return marshal(obj, null, formatted, fragment); + JAXBContext ctx = getJaxbContext(); + return extractJaxbElement(marshStrategy.unmarshal(ctx, node)); } + /** + * @see OgcMarshallerStrategy#marshalToNode(JAXBContext, Object) + * @param obj + * @return + * @throws JAXBException + * @throws ParserConfigurationException + */ public Node marshalToNode(Object obj) throws JAXBException, ParserConfigurationException { - Marshaller msh = getMarshaller(); - try { - DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); - dbf.setNamespaceAware(true); - DocumentBuilder db = dbf.newDocumentBuilder(); - Document doc = db.newDocument(); - msh.marshal(obj, doc); - return doc.getFirstChild(); - } finally { - marshallers.add(msh); - } + JAXBContext ctx = getJaxbContext(); + return marshStrategy.marshalToNode(ctx, obj); + } + + /** + * Override of JAXB manager, pulls Objects out of JAXBElement + * @param xml + * @return + * @throws JAXBException + */ + public Object unmarshalFromXml(String xml) throws JAXBException { + return extractJaxbElement(super.unmarshalFromXml(xml)); } - public void marshal(Object obj, OutputStream out, String schemaLocation, - boolean formatted, boolean fragment) throws JAXBException { - Marshaller msh = getMarshaller(); - try { - - msh.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, formatted); - msh.setProperty(Marshaller.JAXB_FRAGMENT, fragment); - if (mapper != null) { - Lock read = prefixLock.readLock(); - read.lock(); - try { - msh.setProperty(JAXB_NAMESPACE_MAPPER, mapper); - } finally { - read.unlock(); - } - } - if (schemaLocation != null && !schemaLocation.isEmpty()) { - msh.setProperty(Marshaller.JAXB_SCHEMA_LOCATION, schemaLocation); - } - msh.marshal(obj, out); - } finally { - marshallers.add(msh); - } - } - - public String marshal(Object obj, String schemaLocation, boolean formatted, - boolean fragment) - throws JAXBException { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - marshal(obj, out, schemaLocation, formatted, fragment); - return out.toString(); - } - - public void setPrefixMap(final Map prefixMap) { - Lock write = prefixLock.writeLock(); - write.lock(); - try { - this.mapper = new NamespacePrefixMapper() { - @Override - public String getPreferredPrefix(String namespaceUri, - String suggestion, boolean requirePrefix) { - return prefixMap.get(namespaceUri); - } - }; - } finally { - write.unlock(); + /** + * Override of JAXB manager, pulls Objects out of JAXBElement + * @param InputStream + * @return + * @throws SerializationException + */ + public Object unmarshalFromInputStream(InputStream is) throws SerializationException { + return extractJaxbElement(super.unmarshalFromInputStream(is)); + } + + /** + * OGC override of internalUnmarshalFromXmlFile + * @param file + * the file to unmarshal and object from. + * @return the object from the file + * @throws SerializationException + */ + protected Object internalUnmarshalFromXmlFile(File file) + throws SerializationException { + return extractJaxbElement(super.internalUnmarshalFromXmlFile(file)); + } + + /** + * Extracts the Object from the JAXBElement wrapper + */ + private Object extractJaxbElement(Object o) { + if (o instanceof JAXBElement) { + o = ((JAXBElement) o).getValue(); } - } + return o; + } } diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/spatial/BoundingBoxUtil.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/spatial/BoundingBoxUtil.java index 8ad6ce851c..5587584d67 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/spatial/BoundingBoxUtil.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/spatial/BoundingBoxUtil.java @@ -417,7 +417,7 @@ public class BoundingBoxUtil { * @return * @throws OgcException */ - public static ReferencedEnvelope convert2D(BoundingBoxType bbox2d) + public static ReferencedEnvelope convert2D(net.opengis.ows.v_1_1_0.BoundingBoxType bbox2d) throws OgcException { List lc = bbox2d.getLowerCorner(); List uc = bbox2d.getUpperCorner(); @@ -433,6 +433,27 @@ public class BoundingBoxUtil { DirectPosition max = convert(uc); return convert2D(min, max, bbox2d.getCrs()); } + + /** + * Convert 2d jaxb bounding box to JTS envelope + * + * @param bbox2d + * @return + * @throws OgcException + */ + public static ReferencedEnvelope convert2D(net.opengis.ows.v_1_0_0.BoundingBoxType bbox2d) + throws OgcException { + List lc = bbox2d.getLowerCorner(); + List uc = bbox2d.getUpperCorner(); + if (lc.size() != 2 || uc.size() != 2) { + throw new OgcException(Code.InvalidParameterValue, + "2D bounding box must have 2 dimensions"); + } + DirectPosition min = convert(lc); + DirectPosition max = convert(uc); + return convert2D(min, max, bbox2d.getCrs()); + } + /** * Determine altitude reference of vertical axis diff --git a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/util/DefaultConverter.java b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/util/DefaultConverter.java index 5ed74f74f8..a500505e00 100644 --- a/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/util/DefaultConverter.java +++ b/edexOsgi/com.raytheon.uf.edex.ogc.common/src/com/raytheon/uf/edex/ogc/common/util/DefaultConverter.java @@ -11,7 +11,8 @@ package com.raytheon.uf.edex.ogc.common.util; import java.lang.reflect.Field; -import com.raytheon.uf.common.util.ConvertUtil; +import com.raytheon.uf.common.convert.ConvertUtil; + /** * Converter that uses convertUtil diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.ohd/META-INF/MANIFEST.MF index b67a8d0cc9..5366333be5 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.ohd/META-INF/MANIFEST.MF @@ -2,22 +2,22 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Ohd Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.ohd -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Import-Package: com.raytheon.edex.util, com.raytheon.uf.common.dataplugin.binlightning, com.raytheon.uf.common.dataplugin.grid, com.raytheon.uf.common.localization, com.raytheon.uf.common.ohd, com.raytheon.uf.common.serialization.comm, + com.raytheon.uf.common.wmo, com.raytheon.uf.edex.core, - com.raytheon.uf.edex.core.props, com.raytheon.uf.edex.dat.utils, com.raytheon.uf.edex.database, com.raytheon.uf.edex.database.dao, com.raytheon.uf.edex.database.plugin, - org.apache.commons.logging, + com.raytheon.uf.edex.plugin.text.db, org.quartz Export-Package: com.raytheon.uf.edex.ohd, com.raytheon.uf.edex.ohd.reportalarm, @@ -32,5 +32,4 @@ Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.common.units;bundle-version="1.0.0", com.raytheon.uf.common.dataplugin.shef, com.raytheon.uf.common.dataplugin.text, - com.raytheon.edex.textdb, com.raytheon.uf.edex.decodertools diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/build.properties b/edexOsgi/com.raytheon.uf.edex.ohd/build.properties index 5791d48d5f..548582a528 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/build.properties +++ b/edexOsgi/com.raytheon.uf.edex.ohd/build.properties @@ -2,4 +2,6 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + resources/,\ + utility/ diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/arealQpeGen-spring.xml b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/arealQpeGen-spring.xml index f7e40ee981..abee9106da 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/arealQpeGen-spring.xml +++ b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/arealQpeGen-spring.xml @@ -7,8 +7,7 @@
      + errorHandlerRef="errorHandler"> @@ -30,8 +29,7 @@ - + diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/hpeDHRDecoder-spring.xml b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/hpeDHRDecoder-spring.xml index ecca7f9ea0..9ad4b8e7d6 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/hpeDHRDecoder-spring.xml +++ b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/hpeDHRDecoder-spring.xml @@ -19,7 +19,7 @@ + errorHandlerRef="errorHandler"> @@ -41,9 +41,7 @@ - @@ -62,7 +60,7 @@ - + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/mpeLightningSrv-ingest.xml b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/mpeLightningSrv-ingest.xml index 2305af6fab..fe72681f62 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/mpeLightningSrv-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/mpeLightningSrv-ingest.xml @@ -9,7 +9,7 @@ + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-common-database.xml b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-common-database.xml index a078adcb08..3c5cbd7783 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-common-database.xml +++ b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-common-database.xml @@ -22,7 +22,7 @@ + class="org.springframework.orm.hibernate4.HibernateTransactionManager"> @@ -36,7 +36,7 @@
      + class="org.springframework.orm.hibernate4.HibernateTransactionManager"> \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-request.xml b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-request.xml index 917b80c47b..75f9dfa5e8 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/ohd-request.xml @@ -16,25 +16,9 @@
      - - - - - - - - - - java.lang.Throwable - - - - - - - + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/satpre-spring.xml b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/satpre-spring.xml index 41b88edc54..73174adcd5 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/satpre-spring.xml +++ b/edexOsgi/com.raytheon.uf.edex.ohd/res/spring/satpre-spring.xml @@ -9,8 +9,7 @@ + errorHandlerRef="errorHandler"> @@ -27,8 +26,7 @@ - + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/resources/com.raytheon.uf.edex.ohd.properties b/edexOsgi/com.raytheon.uf.edex.ohd/resources/com.raytheon.uf.edex.ohd.properties index 338b02fdbd..134228a79e 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/resources/com.raytheon.uf.edex.ohd.properties +++ b/edexOsgi/com.raytheon.uf.edex.ohd/resources/com.raytheon.uf.edex.ohd.properties @@ -10,3 +10,4 @@ arealqpegen.cron=0+10,25,40,55+*+*+*+? dqcpreprocessor.cron=0+20+0,6,12,18+*+*+? mpelightningsrv.cron=0+0/30+*+*+*+? freezingLevel.cron=0+5+2,8,14,20+*+*+? +gaff.cron=0+0/12+*+*+*+? diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/MainMethod.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/MainMethod.java index f2ae88c8f4..79db5528ab 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/MainMethod.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/MainMethod.java @@ -27,11 +27,10 @@ import java.io.InputStreamReader; import java.io.OutputStream; import java.util.ArrayList; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.ohd.AppsDefaults; -import com.raytheon.uf.edex.core.props.PropertiesFactory; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.edex.core.EDEXUtil; /** * Abstract Main method class provides supporting functions for the main methods @@ -51,6 +50,8 @@ import com.raytheon.uf.edex.core.props.PropertiesFactory; * ------------ ---------- ----------- -------------------------- * Oct 28, 2008 jelkins Initial creation * Oct 19, 2012 #1274 bgonzale Set AppContext on the process builder in ctor. + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. + * Jul 10, 2014 2914 garmendariz Remove EnvProperties * * * @author jelkins @@ -59,9 +60,10 @@ import com.raytheon.uf.edex.core.props.PropertiesFactory; public class MainMethod extends Process { - protected Log log; + private static final IUFStatusHandler log = UFStatus + .getHandler(MainMethod.class); - private ProcessBuilder processBuilder; + private final ProcessBuilder processBuilder; private Process process; @@ -112,14 +114,12 @@ public class MainMethod extends Process { public MainMethod(ProcessBuilder builder) { this.processBuilder = builder; - this.log = LogFactory.getLog(processBuilder.getClass()); try { processBuilder.environment().put( "apps_dir", - new File(PropertiesFactory.getInstance().getEnvProperties() - .getEnvValue("SHAREDIR") - + File.separator + "hydroapps").getCanonicalPath()); + new File(EDEXUtil.getEdexShare() + File.separator + + "hydroapps").getCanonicalPath()); AppsDefaults.getInstance().setAppContext(processBuilder); } catch (IOException e) { log.error("Unable to get apps_dir", e); @@ -156,7 +156,7 @@ public class MainMethod extends Process { error.append(processBuilder.command().get(i)).append(" "); } error.append("failed with exit code " + exitValue); - log.error(error); + log.error(error.toString()); } return exitValue; diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/ScriptService.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/ScriptService.java index 2c7d535d17..3a24751914 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/ScriptService.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/ScriptService.java @@ -22,10 +22,10 @@ package com.raytheon.uf.edex.ohd; import java.io.File; import java.util.Map; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.quartz.CronExpression; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.core.EdexException; /** @@ -40,6 +40,7 @@ import com.raytheon.uf.edex.core.EdexException; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Dec 19, 2008 jelkins Initial creation + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. * * * @@ -48,6 +49,8 @@ import com.raytheon.uf.edex.core.EdexException; */ public class ScriptService implements ServiceInterface { + private static final IUFStatusHandler logger = UFStatus + .getHandler(ScriptService.class); /** A Cron expression representation of the cron line in the legacy system */ private CronExpression cronExpression; @@ -58,10 +61,8 @@ public class ScriptService implements ServiceInterface { /** Additional environment variables to set before running the script */ private Map environmentVariables; - private Log logger = LogFactory.getLog(getClass()); - /** The last portion of the scriptLocation */ - private String scriptName; + private final String scriptName; /** * Execute the script service. @@ -73,10 +74,11 @@ public class ScriptService implements ServiceInterface { * wrong. * @throws EdexException */ + @Override public void execute() throws EdexException { - MainMethod m = new MainMethod(new ProcessBuilder(script - .getAbsolutePath())); + MainMethod m = new MainMethod(new ProcessBuilder( + script.getAbsolutePath())); if (environmentVariables != null) { m.getProcessBuilder().environment().putAll(environmentVariables); diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/SetupSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/SetupSrv.java index 4f3432caee..43e458a16d 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/SetupSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/SetupSrv.java @@ -24,30 +24,38 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.edex.core.EdexException; /** * Performs setup operations for OHD services * - * @author jelkins + *
        * 
      + * SOFTWARE HISTORY
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + * Mar 28, 2014   2952     mpduff      Changed to use UFStatus for logging.
      + * 
      + * 
      + * + * @author jelkins + * @version 1.0 */ public class SetupSrv implements ServiceInterface { + private static final IUFStatusHandler logger = UFStatus + .getHandler(SetupSrv.class); /** set to true when setup service has succeeded */ private static boolean isSetup = false; - Log logger = LogFactory.getLog(SetupSrv.class); - AppsDefaults appsDefaults = AppsDefaults.getInstance(); public SetupSrv() { diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/ArealQpeGenSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/ArealQpeGenSrv.java index 29e73a95a8..dbbe28bd54 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/ArealQpeGenSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/ArealQpeGenSrv.java @@ -32,8 +32,6 @@ import java.util.Map; import java.util.StringTokenizer; import java.util.TimeZone; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.opengis.metadata.spatial.PixelOrientation; import com.raytheon.uf.common.dataplugin.PluginException; @@ -50,6 +48,9 @@ import com.raytheon.uf.common.hydro.spatial.HRAPSubGrid; import com.raytheon.uf.common.mpe.util.XmrgFile; import com.raytheon.uf.common.mpe.util.XmrgFile.XmrgHeader; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.database.dao.CoreDao; @@ -71,6 +72,8 @@ import com.vividsolutions.jts.geom.Coordinate; * ------------ ---------- ----------- -------------------------- * Jan 26, 2011 snaples Initial creation * Jan 10, 2013 1448 bgonzale Added app context check in processArealQpe(). + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. + * Apr 21, 2014 2060 njensen Remove dependency on grid dataURI column * * * @@ -79,6 +82,8 @@ import com.vividsolutions.jts.geom.Coordinate; */ public class ArealQpeGenSrv { + private static final IUFStatusHandler log = UFStatus + .getHandler(ArealQpeGenSrv.class); /** *
      @@ -146,15 +151,8 @@ public class ArealQpeGenSrv {
       
           private HRAPSubGrid subGrid;
       
      -    private Log log = LogFactory.getLog("GenArealQPE");
      -
           private Rectangle wfoExtent;
       
      -    /**
      -     * The reference time
      -     */
      -    private Date grReftime = null;
      -
           /**
            * The previous Duration
            */
      @@ -183,13 +181,13 @@ public class ArealQpeGenSrv {
       
           private static final String GRIBIT = "gribit.LX";
       
      -    private Map extentsMap = new HashMap();
      +    private final Map extentsMap = new HashMap();
       
      -    private Map gridMap = new HashMap();
      +    private final Map gridMap = new HashMap();
       
           private int dur;
       
      -    private AppsDefaults appsDefaults = AppsDefaults.getInstance();
      +    private final AppsDefaults appsDefaults = AppsDefaults.getInstance();
       
           private String gaq_xmrg_1hr_dir;
       
      @@ -205,9 +203,10 @@ public class ArealQpeGenSrv {
       
           private boolean qpe_out;
       
      -    private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      +    private final SimpleDateFormat sdf = new SimpleDateFormat(
      +            "yyyy-MM-dd HH:mm:ss");
       
      -    private SimpleDateFormat fdf = new SimpleDateFormat("yyyyMMddHH");
      +    private final SimpleDateFormat fdf = new SimpleDateFormat("yyyyMMddHH");
       
           public Object processArealQpe() {
               if (!AppsDefaults.getInstance().setAppContext(this)) {
      @@ -232,7 +231,7 @@ public class ArealQpeGenSrv {
       
               /* loop on QPE durations */
               for (int dd : durs) {
      -            if (log.isDebugEnabled()) {
      +            if (log.isPriorityEnabled(Priority.DEBUG)) {
                       log.debug("Processing for " + dd + " hr duration");
                   }
                   processSingleQpe(dd, hrap, subGrid);
      @@ -377,13 +376,12 @@ public class ArealQpeGenSrv {
                               } catch (IOException e) {
                                   log.error("Copy grib file " + mvFile.getName()
                                           + " to " + d2d_input_dir + File.separator
      -                                    + "arealQpeGenSrv" + " failed. ");
      -                            e.printStackTrace();
      +                                    + "arealQpeGenSrv" + " failed. ", e);
                               }
                           }
                           // Remove the xmrg file from the temp directory.
                           fr.delete();
      -                    if (log.isDebugEnabled()) {
      +                    if (log.isPriorityEnabled(Priority.DEBUG)) {
                               log.debug("Removed file " + fr
                                       + " from rfcqpe_temp directory.");
                           }
      @@ -465,7 +463,6 @@ public class ArealQpeGenSrv {
                   xmhead = null;
               } catch (IOException e) {
                   log.error("Error writing RFC QPE file", e);
      -            e.printStackTrace();
                   xmhead = null;
                   return;
               }
      @@ -492,7 +489,6 @@ public class ArealQpeGenSrv {
                   xmhead = null;
               } catch (IOException e) {
                   log.error("Error writing Temp QPE file", e);
      -            e.printStackTrace();
                   xmhead = null;
                   return;
               }
      @@ -517,7 +513,6 @@ public class ArealQpeGenSrv {
                       wfoExtent = HRAPCoordinates.getHRAPCoordinates();
                   } catch (Exception e2) {
                       log.error("Error setting up the wfo extent", e2);
      -                e2.printStackTrace();
                       return;
                   }
       
      @@ -544,7 +539,7 @@ public class ArealQpeGenSrv {
                   processGrids();
                   writeXmrg(dd, mosaicQpeShort);
               } else {
      -            if (log.isDebugEnabled()) {
      +            if (log.isPriorityEnabled(Priority.DEBUG)) {
                       log.debug("Getting data for duration " + durString
                               + " returned no data.");
                   }
      @@ -584,13 +579,12 @@ public class ArealQpeGenSrv {
                   subGrid = hrap.getHRAPSubGrid(extent);
               } catch (Exception e) {
                   log.error("Error setting up HRAP subgrid", e);
      -            e.printStackTrace();
                   return;
               }
           }
       
           /**
      -     * Get the data URI
      +     * Get the grid record
            * 
            * @param rfc
            *            The RFC
      @@ -601,13 +595,12 @@ public class ArealQpeGenSrv {
            * @return The database uri, or null if no data
            * @throws DataAccessLayerException
            */
      -    private String getDataURI(String rfc, String duration, String today)
      +    private GridRecord getGridRecord(String rfc, String duration, String today)
                   throws DataAccessLayerException {
      -        String uri = null;
      +        GridRecord rec = null;
       
               // Query for uri
               DatabaseQuery query = new DatabaseQuery(GridRecord.class);
      -        query.addReturnedField("dataURI");
               query.addQueryParam(GridConstants.DATASET_ID, "QPE-" + rfc);
               query.addQueryParam(GridConstants.PARAMETER_ABBREVIATION, "QPE"
                       + duration + "%", "like");
      @@ -617,13 +610,12 @@ public class ArealQpeGenSrv {
               dao = new CoreDao(DaoConfig.forDatabase("metadata"));
               List rs = dao.queryByCriteria(query);
               if ((rs != null) && (!rs.isEmpty())) {
      -            if ((rs.get(0) != null) && (rs.get(0) instanceof String)) {
      -                uri = (String) rs.get(0);
      +            Object result = rs.get(0);
      +            if (result != null && result instanceof GridRecord) {
      +                rec = ((GridRecord) result);
                   }
      -        } else {
      -            uri = null;
               }
      -        return uri;
      +        return rec;
           }
       
           /**
      @@ -658,19 +650,13 @@ public class ArealQpeGenSrv {
               IDataStore dataStore = null;
       
               try {
      -            uri = getDataURI(rfc, durString, today);
      -            if (uri == null) {
      -                grReftime = cal.getTime();
      +            GridRecord gr = getGridRecord(rfc, durString, today);
      +            if (gr == null) {
                       return false;
                   }
       
      -            GridRecord gr = new GridRecord(uri);
                   PluginDao gd = null;
      -
                   gd = PluginFactory.getInstance().getPluginDao(gr.getPluginName());
      -            gr = (GridRecord) gd.getMetadata(uri);
      -            grReftime = gr.getDataTime().getRefTime();
      -
                   dataStore = gd.getDataStore(gr);
       
                   int nx = gr.getSpatialObject().getNx();
      @@ -698,11 +684,9 @@ public class ArealQpeGenSrv {
       
               } catch (PluginException e1) {
                   log.error("Error querying grids", e1);
      -            e1.printStackTrace();
                   return false;
               } catch (Exception e) {
                   log.error("Error creating rfc qpe grid", e);
      -            e.printStackTrace();
                   return false;
               }
               return true;
      @@ -748,10 +732,7 @@ public class ArealQpeGenSrv {
                           y--;
                       }
                   } catch (Exception e) {
      -                if (log.isDebugEnabled()) {
      -                    log.debug("Error in populating getData::mosaicQpeShort.");
      -                }
      -                e.printStackTrace();
      +                log.error("Error in populating getData::mosaicQpeShort.", e);
                   }
               }
               return;
      diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DecodeDpaSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DecodeDpaSrv.java
      index a2328e6655..1a536360fb 100644
      --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DecodeDpaSrv.java
      +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DecodeDpaSrv.java
      @@ -30,11 +30,10 @@ import java.util.Scanner;
       import java.util.regex.Matcher;
       import java.util.regex.Pattern;
       
      -import org.apache.commons.logging.Log;
      -import org.apache.commons.logging.LogFactory;
      -
       import com.raytheon.edex.esb.Headers;
       import com.raytheon.uf.common.ohd.AppsDefaults;
      +import com.raytheon.uf.common.status.IUFStatusHandler;
      +import com.raytheon.uf.common.status.UFStatus;
       import com.raytheon.uf.common.util.FileUtil;
       import com.raytheon.uf.edex.core.EdexException;
       import com.raytheon.uf.edex.database.dao.CoreDao;
      @@ -51,6 +50,8 @@ import com.raytheon.uf.edex.ohd.MainMethod;
        * Nov 14, 2008            bphillip    Initial creation
        * Mar 20, 2013 1804       bsteffen    Switch all radar decompressing to be in
        *                                     memory.
      + * Mar 28, 2014   2952     mpduff      Changed to use UFStatus for logging.
      + * Apr 10, 2014   2675     mpduff      Removed call to GAFF.
        * 
        * 
      * @@ -65,9 +66,10 @@ public class DecodeDpaSrv { private static final Pattern dpaPat = Pattern.compile("DPA..."); - private Log logger = LogFactory.getLog(getClass()); + private static final IUFStatusHandler logger = UFStatus + .getHandler(DecodeDpaSrv.class); - private AppsDefaults appsDefaults = AppsDefaults.getInstance(); + private final AppsDefaults appsDefaults = AppsDefaults.getInstance(); private File outFile; @@ -81,12 +83,6 @@ public class DecodeDpaSrv { return null; } - // Run GAFF - GAFF gaff = new GAFF(); - if (gaff.shouldGAFFRun()) { - gaff.process(); - } - String path = appsDefaults.getToken("pproc_bin"); int exitValue = MainMethod.runProgram("ksh", path + "/Run_DecodeDPA", outFile.getAbsolutePath()); diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DqcPreProcSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DqcPreProcSrv.java index e5fa02e3f3..4e8a54c0d0 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DqcPreProcSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/DqcPreProcSrv.java @@ -20,10 +20,9 @@ package com.raytheon.uf.edex.ohd.pproc; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.core.EdexException; import com.raytheon.uf.edex.ohd.MainMethod; @@ -35,6 +34,7 @@ import com.raytheon.uf.edex.ohd.MainMethod; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Mar 25 2008 snaples Initial creation + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. * * * @author snaples @@ -42,15 +42,16 @@ import com.raytheon.uf.edex.ohd.MainMethod; */ public class DqcPreProcSrv { + private static final IUFStatusHandler logger = UFStatus + .getHandler(DqcPreProcSrv.class); + /** The argument pattern if only hours are specified */ private static final String DAYS_ARG = "\\d{1,2}"; /** The default number of days to process if no argument if provided */ private static final String defaultNumDays = "10"; - private AppsDefaults appsDefaults = AppsDefaults.getInstance(); - - private Log logger = LogFactory.getLog(getClass()); + private final AppsDefaults appsDefaults = AppsDefaults.getInstance(); public Object process(String dqcArg) throws EdexException { diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFF.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFF.java index ee6f61df3e..0f27010d02 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFF.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFF.java @@ -28,8 +28,6 @@ import java.util.HashMap; import java.util.Map; import java.util.TimeZone; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.opengis.metadata.spatial.PixelOrientation; import com.raytheon.uf.common.dataplugin.PluginException; @@ -45,6 +43,10 @@ import com.raytheon.uf.common.hydro.spatial.HRAPSubGrid; import com.raytheon.uf.common.mpe.util.XmrgFile; import com.raytheon.uf.common.mpe.util.XmrgFile.XmrgHeader; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.database.plugin.PluginDao; import com.raytheon.uf.edex.database.plugin.PluginFactory; @@ -61,6 +63,9 @@ import com.vividsolutions.jts.geom.Coordinate; * ------------ ---------- ----------- -------------------------- * Jan 5, 2011 mpduff Initial creation * Sep 5, 2013 16437 wkwock Fix the "HiRes" issue + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. + * Apr 10, 2014 2675 mpduff Modified to be called from quartz timer. + * Apr 21, 2014 2060 njensen Remove dependency on grid dataURI column * * * @@ -69,6 +74,8 @@ import com.vividsolutions.jts.geom.Coordinate; */ public class GAFF { + private static final IUFStatusHandler log = UFStatus.getHandler(GAFF.class); + private static final int MISSING_VALUE = -99; private static final String PROC_FLAG = "MPA01 "; @@ -131,11 +138,6 @@ public class GAFF { */ private String hsa = "XXX"; - /** - * Time of last run in millis. - */ - private long lastRunTime = 0; - /** * The previous Duration */ @@ -161,15 +163,7 @@ public class GAFF { */ private Rectangle wfoExtent = null; - /** Process start time */ - private long start; - - /** Process end time */ - private long end; - - private Log log = LogFactory.getLog("GenArealFFG"); - - private GAFFDB db = new GAFFDB(); + private final GAFFDB db = new GAFFDB(); /** RFC Site name to RFC lookup map */ public static Map RFCMAP = new HashMap(); @@ -208,44 +202,18 @@ public class GAFF { } public GAFF() { - start = Calendar.getInstance().getTimeInMillis(); - if (log.isDebugEnabled()) { - log.debug("GAFF process is starting"); - } - - init(); - if (log.isDebugEnabled()) { - log.debug(toString()); - } } private void init() { - // Only run every 12 minutes - this.lastRunTime = db.getLastRunTime(PROCESS_NAME); - getTokens(); this.hsa = db.getHsa(); } - public boolean shouldGAFFRun() { - // Only run every 12 minutes - final int minutesBetweenRuns = 12; - - Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - if (cal.getTimeInMillis() - this.lastRunTime < minutesBetweenRuns * 60 * 1000) { - if (log.isDebugEnabled()) { - float time = (cal.getTimeInMillis() - this.lastRunTime) / 1000 / 60; - log.debug("Only run every 12 minutes. " + time - + " minutes since last run."); - } - return false; - } - - return true; - } - public void process() { + long start = TimeUtil.currentTimeMillis(); + log.info("GAFF process starting"); + init(); Rectangle extent; HRAP hrap; HRAPSubGrid subGrid; @@ -255,13 +223,12 @@ public class GAFF { subGrid = hrap.getHRAPSubGrid(extent); } catch (Exception e) { log.error("Error setting up HRAP subgrid", e); - e.printStackTrace(); return; } /* loop on FFG durations */ for (int dur : this.durations) { - if (log.isDebugEnabled()) { + if (log.isPriorityEnabled(Priority.DEBUG)) { log.debug("Processing for " + dur + " duration"); } createFFGMosaic(dur, hrap, subGrid); @@ -269,12 +236,12 @@ public class GAFF { /* write record to PerfLog table */ try { - db.insertPerflog(PROCESS_NAME, this.start); + db.insertPerflog(PROCESS_NAME, start); } catch (DataAccessLayerException e) { log.error("Error updating perflog table", e); } - end = Calendar.getInstance().getTimeInMillis(); + long end = TimeUtil.currentTimeMillis(); log.info("GAFF Process complete in " + (end - start) + " millis"); } @@ -290,15 +257,13 @@ public class GAFF { */ private void createFFGMosaic(int dur, HRAP hrap, HRAPSubGrid subGrid) { - Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - cal.set(Calendar.HOUR, 0); - cal.set(Calendar.HOUR_OF_DAY, 0); - cal.set(Calendar.MINUTE, 0); - cal.set(Calendar.SECOND, 0); - cal.set(Calendar.MILLISECOND, 0); - String today = sdf.format(cal.getTime()); - String uri = null; + Calendar cal = TimeUtil.newGmtCalendar(); + TimeUtil.minCalendarFields(cal, Calendar.HOUR, Calendar.HOUR_OF_DAY, + Calendar.MINUTE, Calendar.SECOND, Calendar.MILLISECOND); + ThreadLocal sdf = TimeUtil + .buildThreadLocalSimpleDateFormat("yyyy-MM-dd HH:mm:ss", + TimeZone.getTimeZone("GMT")); + String today = sdf.get().format(cal.getTime()); IDataRecord dataRec; Rectangle rfcExtent = null; @@ -306,7 +271,6 @@ public class GAFF { wfoExtent = HRAPCoordinates.getHRAPCoordinates(); } catch (Exception e2) { log.error("Error setting up the wfo extent", e2); - e2.printStackTrace(); } // Initialize arrays for each calculation @@ -331,7 +295,7 @@ public class GAFF { Map gridMap = new HashMap(); for (String rfc : this.rfcNames) { - if (log.isDebugEnabled()) { + if (log.isPriorityEnabled(Priority.DEBUG)) { log.debug("Getting data for " + rfc + " for " + durString + " duration"); } @@ -343,22 +307,18 @@ public class GAFF { IDataStore dataStore = null; try { - uri = db.getDataURI(rfc, durString, today); - if (uri == null) { - uri = db.getDataURI(rfc+"-HiRes", durString, today); + GridRecord gr = db.getGridRecord(rfc, durString, today); + if (gr == null) { + gr = db.getGridRecord(rfc + "-HiRes", durString, today); } - if (uri == null) { + if (gr == null) { continue; } - GridRecord gr = new GridRecord(uri); PluginDao gd = null; - gd = PluginFactory.getInstance().getPluginDao( gr.getPluginName()); - gr = (GridRecord) gd.getMetadata(uri); grReftime = gr.getDataTime().getRefTime(); - dataStore = gd.getDataStore(gr); int nx = gr.getSpatialObject().getNx(); @@ -377,19 +337,17 @@ public class GAFF { (int) ulRfcNationalScale.y - ny, nx, ny); extentsMap.put(rfc, rfcExtent); - dataRec = dataStore.retrieve(uri, "Data", Request.ALL); + dataRec = dataStore.retrieve(gr.getDataURI(), "Data", + Request.ALL); if (dataRec instanceof FloatDataRecord) { - // gridList.add(((FloatDataRecord) dataRec).getFloatData()); gridMap.put(rfc, ((FloatDataRecord) dataRec).getFloatData()); } } catch (PluginException e1) { log.error("Error querying grids", e1); - e1.printStackTrace(); } catch (Exception e) { log.error("Error creating wfo ffg grid", e); - e.printStackTrace(); } } @@ -432,7 +390,7 @@ public class GAFF { y--; } } catch (Exception e) { - e.printStackTrace(); + log.error("Caught exception.", e); } writeXmrgFile(); @@ -448,7 +406,6 @@ public class GAFF { wfoExtent.width, this.mosaicFfgShort, minArea, dur, grReftime.getTime()); areaProcessor.processAreas(); - } } @@ -479,13 +436,10 @@ public class GAFF { xmrg.setData(this.mosaicFfgShort); try { - if (log.isDebugEnabled()) { - log.debug("Writing xmrg file: " + name); - } + log.debug("Writing xmrg file: " + name); xmrg.save(name); } catch (IOException e) { log.error("Error writing xmrg file", e); - e.printStackTrace(); } } @@ -526,21 +480,20 @@ public class GAFF { public String toString() { StringBuilder sb = new StringBuilder( "***********************************\n"); - sb.append("siteId = " + this.siteId); - sb.append("\nmosaicDir = " + this.mosaicDir); - sb.append("\nlookbackLimit = " + this.lookbackLimit); - sb.append("\nminArea = " + this.minArea); + sb.append("siteId = ").append(this.siteId); + sb.append("\nmosaicDir = ").append(this.mosaicDir); + sb.append("\nlookbackLimit = ").append(this.lookbackLimit); + sb.append("\nminArea = ").append(this.minArea); sb.append("\nRFC Names"); for (String s : rfcNames) { - sb.append("\n " + s); + sb.append("\n ").append(s); } sb.append("\nDurations"); for (int i : this.durations) { - sb.append("\n " + i); + sb.append("\n ").append(i); } - sb.append("\nLast run time = " + this.lastRunTime); - sb.append("\nHSA = " + this.hsa); + sb.append("\nHSA = ").append(this.hsa); return sb.toString(); } diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFAreaProcessor.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFAreaProcessor.java index ca896ed084..a48054e7c0 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFAreaProcessor.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFAreaProcessor.java @@ -19,9 +19,9 @@ **/ package com.raytheon.uf.edex.ohd.pproc; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.edex.database.DataAccessLayerException; /** @@ -33,7 +33,8 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jan 8, 2011 mpduff Initial creation + * Jan 08, 2011 mpduff Initial creation + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. * * * @@ -44,7 +45,8 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; public class GAFFAreaProcessor { private static final float MISSING_VALUE_FLOAT = -99.0f; - private Log log = LogFactory.getLog("GenArealFFG"); + private static final IUFStatusHandler log = UFStatus + .getHandler(GAFFAreaProcessor.class); private int xor; @@ -68,7 +70,7 @@ public class GAFFAreaProcessor { private double avgVal = 0; - private GAFFDB db = new GAFFDB(); + private final GAFFDB db = new GAFFDB(); /** * Default Constructor. @@ -105,8 +107,8 @@ public class GAFFAreaProcessor { * read the HRAP bin coords for the area and extract the * information from the blob fields. */ - Object[] lineSegsRs = db.getLineSegs(areaId); -log.debug(lineSegsRs.length + " rows in the lineSegsRs"); + Object[] lineSegsRs = db.getLineSegs(areaId); + log.debug(lineSegsRs.length + " rows in the lineSegsRs"); int numRows = lineSegsRs.length; rows = new int[numRows]; begCol = new int[numRows]; @@ -132,10 +134,12 @@ log.debug(lineSegsRs.length + " rows in the lineSegsRs"); } else { /* compute average FFG value for basin and areal coverage */ try { - computeAvgFfg(areaId, lineSegsRs.length, rows, begCol, - endCol); - } catch (Exception e){ - e.printStackTrace(); + computeAvgFfg(areaId, lineSegsRs.length, rows, begCol, + endCol); + } catch (Exception e) { + log.error( + "Error computing average FFG value for basin and areal coverage", + e); } /* * if average FFG value for basin successfully computed AND @@ -154,9 +158,8 @@ log.debug(lineSegsRs.length + " rows in the lineSegsRs"); log.error( "Error inserting data into ContingencyValue table", e); - e.printStackTrace(); } catch (Exception e) { - e.printStackTrace(); + log.error("Error writing contingency data", e); } } else { log.info("AreaId = " + areaId @@ -171,8 +174,6 @@ log.debug(lineSegsRs.length + " rows in the lineSegsRs"); } else { log.info("No basins found in GeoArea table"); } - - System.out.println("leaving processAreas()"); } /* @@ -201,7 +202,7 @@ log.debug(lineSegsRs.length + " rows in the lineSegsRs"); * originally loaded */ int row = rows[i] - yor; - + // Grid starts outside the window if (row < 0) { continue; @@ -241,7 +242,7 @@ log.debug(lineSegsRs.length + " rows in the lineSegsRs"); * compute the avg ffg value as the average of all the bins within the * area that have valid area_id data. */ - if (log.isDebugEnabled()) { + if (log.isPriorityEnabled(Priority.DEBUG)) { log.debug(areaId + " bincnts: total: " + totalCnt + "(= valid " + valCnt + " + msg " + missCnt + ")"); } @@ -260,7 +261,7 @@ log.debug(lineSegsRs.length + " rows in the lineSegsRs"); min = 0; } - if (log.isDebugEnabled()) { + if (log.isPriorityEnabled(Priority.DEBUG)) { log.debug(areaId + ": Sum/Cnt=unadjstd avg => " + sum + "/" + valCnt + " = " + avgVal + "; max,min=" + max + "," + min); } diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFDB.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFDB.java index 568917e710..146ea05ec5 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFDB.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/GAFFDB.java @@ -26,11 +26,10 @@ import java.util.Calendar; import java.util.List; import java.util.TimeZone; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.dataplugin.grid.GridConstants; import com.raytheon.uf.common.dataplugin.grid.GridRecord; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; @@ -45,7 +44,9 @@ import com.raytheon.uf.edex.database.query.DatabaseQuery; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jan 11, 2011 mpduff Initial creation + * Jan 11, 2011 mpduff Initial creation + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. + * Apr 21, 2014 2060 njensen Remove dependency on grid dataURI column * * * @@ -64,7 +65,8 @@ public class GAFFDB { private static final String LINESEGS_QUERY = "select hrap_row, hrap_beg_col, " + "hrap_end_col, area from linesegs"; - private Log log = LogFactory.getLog("GenArealFFG"); + private static final IUFStatusHandler log = UFStatus + .getHandler(GAFFDB.class); /** * Default constructor. @@ -131,9 +133,8 @@ public class GAFFDB { } else { throw new Exception("Error getting Last Run Time"); } - if (log.isDebugEnabled()) { - log.debug("Last run time: " + ts.toString()); - } + + log.debug("Last run time: " + ts.toString()); return ts.getTime(); } } catch (Exception e) { @@ -146,15 +147,13 @@ public class GAFFDB { c.set(Calendar.SECOND, 0); c.set(Calendar.MILLISECOND, 0); - if (log.isDebugEnabled()) { - log.debug("Last run time set to 00Z"); - } + log.debug("Last run time set to 00Z"); return c.getTimeInMillis(); } /** - * Get the data URI + * Get the grid record * * @param rfc * The RFC @@ -165,13 +164,10 @@ public class GAFFDB { * @return The database uri, or null if no data * @throws DataAccessLayerException */ - public String getDataURI(String rfc, String duration, String today) + public GridRecord getGridRecord(String rfc, String duration, String today) throws DataAccessLayerException { - String uri = null; - - // Query for uri + GridRecord rec = null; DatabaseQuery query = new DatabaseQuery(GridRecord.class); - query.addReturnedField("dataURI"); query.addQueryParam(GridConstants.DATASET_ID, "FFG-" + rfc); query.addQueryParam(GridConstants.PARAMETER_ABBREVIATION, "FFG" + duration + "24hr"); @@ -182,14 +178,13 @@ public class GAFFDB { dao = new CoreDao(DaoConfig.forDatabase("metadata")); List rs = dao.queryByCriteria(query); if ((rs != null) && (!rs.isEmpty())) { - if ((rs.get(0) != null) && (rs.get(0) instanceof String)) { - uri = (String) rs.get(0); + Object result = rs.get(0); + if (result != null && result instanceof GridRecord) { + rec = ((GridRecord) result); } - } else { - uri = null; } - return uri; + return rec; } /** @@ -261,9 +256,7 @@ public class GAFFDB { + DEFAULT_QC_VALUE + ", " + "0, 'GRIDFFG', '" + validDate + "', '" + postDate + "')"; - if (log.isDebugEnabled()) { - log.debug(sql); - } + log.debug(sql); dao.executeNativeSql(sql, false); } else { @@ -306,9 +299,7 @@ public class GAFFDB { if ((rs != null) && (rs.length > 0)) { if ((rs[0] != null) && (rs[0] instanceof String)) { hsa = (String) rs[0]; - if (log.isDebugEnabled()) { - log.debug("HSA: " + hsa); - } + log.debug("HSA: " + hsa); } } diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeFieldGenSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeFieldGenSrv.java index 6271e6e0d4..1a015996f5 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeFieldGenSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeFieldGenSrv.java @@ -23,10 +23,12 @@ package com.raytheon.uf.edex.ohd.pproc; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - +import com.raytheon.uf.common.mpe.fieldgen.MpeFieldGenRequest; +import com.raytheon.uf.common.mpe.fieldgen.MpeFieldGenResponse; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.serialization.comm.IRequestHandler; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.core.EdexException; import com.raytheon.uf.edex.ohd.MainMethod; @@ -38,12 +40,16 @@ import com.raytheon.uf.edex.ohd.MainMethod; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Nov 14, 2008 bphillip Initial creation + * Mar 28, 2014 2952 mpduff Changed to use ThriftSrv and UFStatus, cleanup * * * @author bphillip * @version 1.0 */ -public class MpeFieldGenSrv { +public class MpeFieldGenSrv implements IRequestHandler { + + private static final IUFStatusHandler logger = UFStatus + .getHandler(MpeFieldGenSrv.class); /** The argument pattern if only hours are specified */ private static final String HOURS_ARG = "\\d{1,2}"; @@ -54,36 +60,60 @@ public class MpeFieldGenSrv { private static final Pattern HOURS_DATE_PATTERN = Pattern .compile(HOURS_DATE_ARG); + private static final Pattern HOURS_ARG_PATTERN = Pattern.compile(HOURS_ARG); + /** The default number of hours to process if no argument if provided */ - private static final String defaultMpeArg = "3"; + private static final String DEFAULT_ARG = "3"; - private AppsDefaults appsDefaults = AppsDefaults.getInstance(); + private static final AppsDefaults appsDefaults = AppsDefaults.getInstance(); - private Log logger = LogFactory.getLog(getClass()); + private static final String EXECUTE_PATH = appsDefaults + .getToken("pproc_bin") + "/run_mpe_fieldgen"; - public Object process(String mpeArg) throws EdexException { + /** + * {@inheritDoc} + */ + @Override + public Object handleRequest(MpeFieldGenRequest request) throws Exception { + MpeFieldGenResponse response = new MpeFieldGenResponse(); + int exitValue = process(request.getArgs()); + response.setExitValue(exitValue); - if (!mpeArg.matches(HOURS_ARG) && !mpeArg.matches(HOURS_DATE_ARG)) { - throw new EdexException("Invalid argument sent to mpe_fieldgen"); + return response; + } + + /** + * Execute mpe fieldgen. + * + * @param mpeArg + * Program arguments + * @return exit status + * @throws EdexException + */ + private int process(String mpeArg) throws EdexException { + + if (!HOURS_ARG_PATTERN.matcher(mpeArg).matches() + && !HOURS_DATE_PATTERN.matcher(mpeArg).matches()) { + throw new EdexException("Invalid argument sent to mpe_fieldgen: " + + mpeArg); } int exitValue = 0; + logger.info("Executing MPE FieldGen with argument: " + mpeArg); + if (appsDefaults.setAppContext(this)) { - if (mpeArg.matches(HOURS_ARG)) { - logger.info("Executing MPE FieldGen with argument: " + mpeArg); - exitValue = MainMethod.runProgram("ksh", - appsDefaults.getToken("pproc_bin") - + "/run_mpe_fieldgen", mpeArg); + if (HOURS_ARG_PATTERN.matcher(mpeArg).matches()) { + exitValue = MainMethod.runProgram("ksh", EXECUTE_PATH, mpeArg); } else if (mpeArg.matches(HOURS_DATE_ARG)) { - logger.info("Executing MPE FieldGen with arguments: " + mpeArg); Matcher matcher = HOURS_DATE_PATTERN.matcher(mpeArg); if (matcher.find()) { - exitValue = MainMethod.runProgram("ksh", - appsDefaults.getToken("pproc_bin") - + "/run_mpe_fieldgen", matcher.group(1), - matcher.group(2), matcher.group(3)); + exitValue = MainMethod.runProgram("ksh", EXECUTE_PATH, + matcher.group(1), matcher.group(2), + matcher.group(3)); } - + } else { + throw new EdexException( + "Invalid argument sent to mpe_fieldgen: " + mpeArg); } } @@ -94,11 +124,18 @@ public class MpeFieldGenSrv { "MpeFieldGen process terminated abnormally with exit code: " + exitValue); } + return exitValue; } + /** + * Run fieldgen with the defalut argument. + * + * @return exit status + * @throws EdexException + */ public Object runHourlyMpe() throws EdexException { - return process(defaultMpeArg); + return process(DEFAULT_ARG); } } diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeLightningSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeLightningSrv.java index f863bfe073..de1518ab42 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeLightningSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeLightningSrv.java @@ -23,8 +23,6 @@ package com.raytheon.uf.edex.ohd.pproc; import java.io.File; import java.sql.Timestamp; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.hibernate.HibernateException; import org.opengis.metadata.spatial.PixelOrientation; @@ -38,6 +36,8 @@ import com.raytheon.uf.common.datastorage.IDataStore; import com.raytheon.uf.common.datastorage.StorageException; import com.raytheon.uf.common.hydro.spatial.HRAP; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.core.EdexException; import com.raytheon.uf.edex.database.dao.CoreDao; import com.raytheon.uf.edex.database.dao.DaoConfig; @@ -53,8 +53,13 @@ import com.vividsolutions.jts.geom.Coordinate; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jan 06, 2011 5951 jnjanga Initial creation - * Jan 10, 2013 1448 bgonzale Added app context check in runOnSchedule(). + * Jan 10, 2013 1448 bgonzale Added app context check in runOnSchedule(). * Jan 18, 2013 1469 bkowal Removed the hdf5 data directory. + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. + * Jun 05, 2014 3226 bclement BinLightning refactor + * Aug 20, 2014 3549 njensen Fixed spelling in exceptions + * Sep 17, 2014 3015 bclement improved exception handling + * Dec 04, 2014 3015 njensen Corrected usage of Coordinate(x, y) * * * @@ -80,7 +85,8 @@ public class MpeLightningSrv { } } - private Log logger = LogFactory.getLog(getClass()); + private static final IUFStatusHandler logger = UFStatus + .getHandler(MpeLightningSrv.class); /** * Check the metadata Database for new lightning entries. @@ -96,7 +102,7 @@ public class MpeLightningSrv { rs = (QueryResult) coreDao.executeNativeSql(lgtSQL, true); } catch (Exception e) { throw new EdexException("Couldn't get BinLightning records from" - + " metadata database. " + e); + + " metadata database. Failed SQL: " + lgtSQL, e); } return rs.getRows(); } @@ -136,7 +142,7 @@ public class MpeLightningSrv { float[] latitudes = ltngRec.getLatitudes(); float[] longitudes = ltngRec.getLongitudes(); long[] obstimes = ltngRec.getObsTimes(); - byte[] strikes = ltngRec.getStrikeCounts(); + byte[] strikes = ltngRec.getPulseCounts(); // convert latitude and longitude to grid coordinate HRAP hrap = HRAP.getInstance(); @@ -147,8 +153,8 @@ public class MpeLightningSrv { for (int i = 0; i < latitudes.length; i++) { float lat = latitudes[i]; float lon = longitudes[i]; - Coordinate latLon = new Coordinate(lat, lon); - gridCell = hrap.latLonToGridCoordinate(latLon, po); + Coordinate c = new Coordinate(lon, lat); + gridCell = hrap.latLonToGridCoordinate(c, po); x_hgrids[i] = (short) gridCell.x; y_hgrids[i] = (short) gridCell.y; } @@ -180,13 +186,16 @@ public class MpeLightningSrv { } catch (StorageException se) { throw new EdexException( - "Could not retrive datasets from datastore : " + se); + "Could not retrieve datasets from datastore for dataURI: " + + dataURI, se); } catch (HibernateException he) { throw new EdexException( - "Could not insert into ifhs ligthning table : " + he); + "Could not insert into ifhs lightning table for dataURI: " + + dataURI, he); } catch (Exception e) { - throw new EdexException("Could not convert to grid coordinate : " - + e); + throw new EdexException( + "Could not convert to grid coordinate for dataURI: " + + dataURI, e); } } diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeProcessGribSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeProcessGribSrv.java index 2102244509..be9dfd5244 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeProcessGribSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/MpeProcessGribSrv.java @@ -20,12 +20,11 @@ package com.raytheon.uf.edex.ohd.pproc; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.hydro.service.MpeGribProcessRequest; import com.raytheon.uf.common.ohd.AppsDefaults; import com.raytheon.uf.common.serialization.comm.IRequestHandler; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.core.EdexException; import com.raytheon.uf.edex.ohd.MainMethod; @@ -37,7 +36,8 @@ import com.raytheon.uf.edex.ohd.MainMethod; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Feb 1, 2010 snaples Initial creation + * Feb 01, 2010 snaples Initial creation + * Mar 28, 2014 2952 mpduff Changed to use UFStatus for logging. * * * @author snaples @@ -46,9 +46,10 @@ import com.raytheon.uf.edex.ohd.MainMethod; public class MpeProcessGribSrv implements IRequestHandler { - private AppsDefaults appsDefaults = AppsDefaults.getInstance(); + private static final IUFStatusHandler logger = UFStatus + .getHandler(MpeProcessGribSrv.class); - private Log logger = LogFactory.getLog(getClass()); + private final AppsDefaults appsDefaults = AppsDefaults.getInstance(); /** * The serialized incoming request contains the file names of the xmrg file @@ -64,12 +65,11 @@ public class MpeProcessGribSrv implements throw new EdexException("Invalid argument sent to MpeProcessGrib"); } int exitValue = 0; - logger - .info("Executing process_grib_files with arguments: xmrgfilename: " - + xmrg + " gribfilename: " + grib); - exitValue = MainMethod.runProgram("ksh", appsDefaults - .getToken("pproc_bin") - + "/process_grib_files", xmrg, grib); + logger.info("Executing process_grib_files with arguments: xmrgfilename: " + + xmrg + " gribfilename: " + grib); + exitValue = MainMethod.runProgram("ksh", + appsDefaults.getToken("pproc_bin") + "/process_grib_files", + xmrg, grib); if (exitValue == 0) { logger.info("MpeProcessGrib execution successful"); } else { diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPreURIFilter.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPreURIFilter.java index 44aa25f548..6e26ea1b1f 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPreURIFilter.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPreURIFilter.java @@ -19,10 +19,13 @@ **/ package com.raytheon.uf.edex.ohd.pproc; +import com.raytheon.uf.common.dataplugin.annotations.DataURI; +import com.raytheon.uf.common.dataplugin.grid.GridConstants; import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage; /** - * TODO Add Description + * Filters URIs for Satellite Precip and generates an xmrg file if the filter + * matches. * *
        * 
      @@ -30,8 +33,9 @@ import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage;
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Sep 10, 2009            snaples     Initial creation
      - * Feb 12, 2010  4635      snaples     Updated to match more generically.
      + * Feb 12, 2010 4635       snaples     Updated to match more generically.
        * Feb 15, 2013 1638       mschenke    Moved DataURINotificationMessage to uf.common.dataplugin
      + * May 05, 2014 2060       njensen     Cleanup
        * 
        * 
      * @@ -41,22 +45,22 @@ import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage; public class SatPreURIFilter { - DataURINotificationMessage message; + private static final String AUTOSPE = "AUTOSPE"; - String outpath = ""; + private String startFilter; - static final String AUTOSPE = "AUTOSPE"; + private SatPrecipFileBuilder builder; - public SatPreURIFilter() { + public SatPreURIFilter() throws Exception { + startFilter = DataURI.SEPARATOR + GridConstants.GRID; + builder = new SatPrecipFileBuilder(); } - public void matchURI(DataURINotificationMessage msg) { - message = msg; - - if (message instanceof DataURINotificationMessage) { + public void matchURI(DataURINotificationMessage msg) throws Exception { + if (msg instanceof DataURINotificationMessage) { String uri = ""; - for (String data : message.getDataURIs()) { - if (data.startsWith("/grid")) { + for (String data : msg.getDataURIs()) { + if (data.startsWith(startFilter)) { if (data.contains(AUTOSPE)) { uri = data; break; @@ -68,10 +72,7 @@ public class SatPreURIFilter { } } if (uri.length() > 1) { - SatPrecipFileBuilder sb = new SatPrecipFileBuilder(uri); - sb.createSatPre(); - } else { - return; + builder.createSatPre(uri); } } } diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPrecipFileBuilder.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPrecipFileBuilder.java index 4e3c10faf1..6ba1a77223 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPrecipFileBuilder.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/pproc/SatPrecipFileBuilder.java @@ -22,41 +22,43 @@ package com.raytheon.uf.edex.ohd.pproc; import java.awt.Rectangle; import java.io.File; import java.io.IOException; -import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; -import java.util.TimeZone; import javax.measure.converter.UnitConverter; import javax.measure.unit.SI; import javax.measure.unit.Unit; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.datastorage.IDataStore; import com.raytheon.uf.common.datastorage.Request; import com.raytheon.uf.common.datastorage.records.FloatDataRecord; import com.raytheon.uf.common.datastorage.records.IDataRecord; -import com.raytheon.uf.common.datastorage.records.ShortDataRecord; import com.raytheon.uf.common.hydro.spatial.HRAP; import com.raytheon.uf.common.hydro.spatial.HRAPCoordinates; import com.raytheon.uf.common.mpe.util.XmrgFile; import com.raytheon.uf.common.mpe.util.XmrgFile.XmrgHeader; import com.raytheon.uf.common.ohd.AppsDefaults; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.common.units.UnitConv; import com.raytheon.uf.edex.database.plugin.PluginDao; import com.raytheon.uf.edex.database.plugin.PluginFactory; /** - * TODO Add Description + * Builder for xmrg files that contain satellite precip data. * *
        * 
        * SOFTWARE HISTORY
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
      - * Sep 8, 2009            snaples     Initial creation
      + * Sep 08, 2009            snaples     Initial creation
        * Feb 15, 2013 1638       mschenke    Moved DataURINotificationMessage to uf.common.dataplugin
      + * Mar 19, 2014 17109      snaples     Removed code that adds 1 hour to grid reftime, was not needed.
      + * May 05, 2014 2060       njensen     Major cleanup and remove dependency on grid dataURI
      + * 
        * 
        * 
      * @@ -66,25 +68,8 @@ import com.raytheon.uf.edex.database.plugin.PluginFactory; public class SatPrecipFileBuilder { - Rectangle extent = null; - - XmrgFile xmfile = null; - - GridRecord gr = null; - - private IDataRecord dataRec; - - private String uri = ""; - - private String outputPath = ""; - - private short[] data; - - private static final SimpleDateFormat sdf = new SimpleDateFormat( - "yyyyMMddHH"); - static { - sdf.setTimeZone(TimeZone.getTimeZone("GMT")); - } + private static final IUFStatusHandler logger = UFStatus + .getHandler(SatPrecipFileBuilder.class); private static final String FILEPRE = "SATPRE"; @@ -98,70 +83,81 @@ public class SatPrecipFileBuilder { private static final String USER = "SANmdY"; - private Date grReftime = null; + private Rectangle extent = null; private int height; private int width; - private static int minX; + private int minX; - private static int minY; + private int minY; - private static int maxX; + private int maxY; - private static int maxY; + private SimpleDateFormat sdf; - public SatPrecipFileBuilder(String datauri) { - uri = datauri; - } + private String outputPath; - public void createSatPre() { - try { - getGridRecord(); - } catch (PluginException e) { - e.printStackTrace(); - } - float[] fa = null; - fa = new float[((float[]) gr.getMessageData()).length]; - fa = (float[]) gr.getMessageData(); - String gribUnit = gr.getParameter().getUnitString(); - UnitConverter cv = null; - Unit gi = Unit.ONE; - try { - gi = UnitConv.deserializer(gribUnit); - } catch (ParseException e) { - e.printStackTrace(); - } - Unit xOut = SI.MILLIMETER; - cv = gi.getConverterTo(xOut); - data = new short[fa.length]; - int k = 0; - for (int i = 0; i < height; i++) { - for (int j = 0; j < width; j++) { - if (fa[k] < 0) { - fa[k] = 0; - } - data[(i * width) + j] = (short) (cv.convert(fa[k]) * 100.0); - k++; - } - } - fa = null; - createXmrgFile(); - } + public SatPrecipFileBuilder() throws Exception { + extent = HRAPCoordinates.getHRAPCoordinates(); + maxY = (int) (HRAP.getInstance().getNy() - extent.getMinY()); + minY = (int) (maxY - extent.getHeight()); + minX = (int) extent.getMinX(); + width = (int) (extent.getWidth()); + height = (int) (extent.getHeight()); - private void createXmrgFile() { + sdf = new SimpleDateFormat("yyyyMMddHH"); + sdf.setTimeZone(TimeUtil.GMT_TIME_ZONE); AppsDefaults appsDefaults = AppsDefaults.getInstance(); outputPath = appsDefaults.getToken("mpe_satpre_dir"); - File op = new File(outputPath); - if (op.exists() == false) { - op.mkdir(); + File outputDir = new File(outputPath); + if (!outputDir.exists()) { + outputDir.mkdirs(); } - op = null; + } + + /** + * Retrieves a grid record, converts the data to millimeters, and stores it + * to an xmrg file. + * + * @param uri + * the data URI of the grid record + */ + public void createSatPre(String uri) { + try { + GridRecord gr = getGridRecord(uri); + float[] fa = (float[]) gr.getMessageData(); + String gribUnit = gr.getParameter().getUnitString(); + UnitConverter cv = null; + Unit gi = UnitConv.deserializer(gribUnit); + Unit xOut = SI.MILLIMETER; + cv = gi.getConverterTo(xOut); + short[] data = new short[fa.length]; + int k = 0; + for (int i = 0; i < height; i++) { + for (int j = 0; j < width; j++) { + if (fa[k] < 0) { + fa[k] = 0; + } + data[(i * width) + j] = (short) (cv.convert(fa[k]) * 100.0); + k++; + } + } + fa = null; + createXmrgFile(data, gr.getDataTime().getRefTime()); + } catch (Exception e) { + logger.error("Error creating sat precip xmrg file for URI " + uri, + e); + } + } + + private void createXmrgFile(short[] data, Date grReftime) + throws IOException { String fname = outputPath + File.separatorChar + FILEPRE + sdf.format(grReftime) + "z"; - xmfile = new XmrgFile(fname); + XmrgFile xmfile = new XmrgFile(fname); XmrgHeader xmhead = new XmrgHeader(); xmhead.setValidDate(grReftime); xmhead.setSaveDate(grReftime); @@ -173,65 +169,35 @@ public class SatPrecipFileBuilder { xmfile.setHeader(xmhead); xmfile.setHrapExtent(extent); xmfile.setData(data); - try { - xmfile.save(fname); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + xmfile.save(fname); + logger.info("Successfully created satellite precip xmrg file: " + fname); } /** - * get Populated grib record + * Get Populated grid record * * @param uri + * the uri of the grid record * @return */ - public void getGridRecord() throws PluginException { - try { - extent = HRAPCoordinates.getHRAPCoordinates(); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - HRAP hr = HRAP.getInstance(); - - maxY = (int) (hr.getNy() - extent.getMinY()); - minY = (int) (maxY - extent.getHeight()); - minX = (int) extent.getMinX(); - maxX = (int) extent.getMaxX(); - width = (int) (extent.getWidth()); - height = (int) (extent.getHeight()); + private GridRecord getGridRecord(String uri) throws Exception { + GridRecord gr = new GridRecord(uri); + PluginDao gd = PluginFactory.getInstance().getPluginDao( + gr.getPluginName()); + IDataStore dataStore = gd.getDataStore(gr); int[] minIndex = { minX, minY }; int[] maxIndex = { minX + width, minY + height }; - - gr = new GridRecord(uri); - PluginDao gd = PluginFactory.getInstance().getPluginDao( - gr.getPluginName()); - gr = (GridRecord) gd.getMetadata(uri); - IDataStore dataStore = gd.getDataStore(gr); - - try { - dataRec = dataStore.retrieve(uri, "Data", - Request.buildSlab(minIndex, maxIndex)); - } catch (Exception se) { - se.printStackTrace(); - } + IDataRecord dataRec = dataStore.retrieve(uri, "Data", + Request.buildSlab(minIndex, maxIndex)); if (dataRec instanceof FloatDataRecord) { gr.setMessageData(((FloatDataRecord) dataRec).getFloatData()); - } else if (dataRec instanceof ShortDataRecord) { - gr.setMessageData(((ShortDataRecord) dataRec).getShortData()); } else { gr.setMessageData(dataRec); } - // this get the reftime of the record - grReftime = gr.getDataTime().getRefTime(); - long millis = grReftime.getTime(); - // convert 1 hour to milliseconds to add to time. - millis += 60 * 60 * 1000; - grReftime.setTime(millis); + + return gr; } } diff --git a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/reportalarm/RunReportAlarmSrv.java b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/reportalarm/RunReportAlarmSrv.java index 0eb6ad519f..61dde4658d 100644 --- a/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/reportalarm/RunReportAlarmSrv.java +++ b/edexOsgi/com.raytheon.uf.edex.ohd/src/com/raytheon/uf/edex/ohd/reportalarm/RunReportAlarmSrv.java @@ -24,12 +24,12 @@ import java.io.IOException; import java.text.DateFormat; import java.text.SimpleDateFormat; -import com.raytheon.edex.textdb.dbapi.impl.TextDB; import com.raytheon.uf.common.ohd.AppsDefaults; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.common.util.FileUtil; +import com.raytheon.uf.edex.plugin.text.db.TextDB; /** * Provides SHEF with the ability to generate alert/alarms report products and diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.acars/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.acars/META-INF/MANIFEST.MF index e36df23124..8cc163a9b3 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.acars/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.acars/META-INF/MANIFEST.MF @@ -1,19 +1,23 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 -Bundle-Name: Acars Plug-in +Bundle-Name: Acars Decoder Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.acars -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.1.qualifier Bundle-Vendor: RAYTHEON -Require-Bundle: com.raytheon.edex.common, - com.raytheon.uf.common.pointdata, - com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", - org.geotools, +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Require-Bundle: com.raytheon.edex.common;bundle-version="1.14.0", + com.raytheon.uf.common.dataplugin.acars;bundle-version="1.14.0", + com.raytheon.uf.common.pointdata;bundle-version="1.13.0", + com.raytheon.uf.edex.decodertools, + com.raytheon.uf.common.status, + com.raytheon.uf.common.wmo;bundle-version="1.14.0", + org.geotools;bundle-version="10.5", javax.persistence, - javax.measure + javax.measure, + com.raytheon.uf.edex.pointdata Export-Package: com.raytheon.uf.edex.plugin.acars, com.raytheon.uf.edex.plugin.acars.common, com.raytheon.uf.edex.plugin.acars.dao -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Import-Package: com.raytheon.uf.common.dataplugin.acars, - org.apache.commons.logging +Import-Package: com.raytheon.uf.edex.bufrtools, + com.raytheon.uf.edex.bufrtools.descriptors, + com.raytheon.uf.edex.bufrtools.packets diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.acars/res/spring/acars-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.acars/res/spring/acars-ingest.xml index e89bd76d0a..ab28897370 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.acars/res/spring/acars-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.acars/res/spring/acars-ingest.xml @@ -12,18 +12,10 @@
      - - - - + errorHandlerRef="errorHandler"> + + ^JSXX(0[1-9]|10).* + ^JSYY0[1-9].* diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/META-INF/MANIFEST.MF index 77419b8cb3..5599670160 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/META-INF/MANIFEST.MF @@ -17,6 +17,9 @@ Require-Bundle: com.raytheon.uf.common.dataplugin.bufrhdw;bundle-version="1.0.0" com.raytheon.uf.common.serialization Import-Package: com.raytheon.uf.common.datastorage, com.raytheon.uf.common.status, + com.raytheon.uf.common.wmo, com.raytheon.uf.edex.bufrtools, + com.raytheon.uf.edex.bufrtools.descriptors, + com.raytheon.uf.edex.bufrtools.packets, com.raytheon.uf.edex.core, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/res/spring/bufrhdw-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/res/spring/bufrhdw-ingest.xml index e7c4acdf03..5f907e6170 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/res/spring/bufrhdw-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.bufrhdw/res/spring/bufrhdw-ingest.xml @@ -13,15 +13,9 @@
      - - - - + errorHandlerRef="errorHandler"> - NAM-90km + ETA 2 + - RAP-13km + RUC 8 + - RAP-20km - 8 - - - RAP-40km - 8 + AVN + 2 @@ -42,15 +41,17 @@ MSAS 24 - + GFS201 2 + - GFS212 + mrfNH 2 + GFS213 2 @@ -66,12 +67,14 @@ NGM202 2 + - GFS + AVN211 2 + - NAM-40km + mesoEta212 2 00-00:15:00 @@ -310,18 +313,25 @@ - AK-NAM + mesoEta216 1 00-00:15:00 - AK-NAM-11km + mesoEta217 1 00-00:15:00 + - NAM-12km + ETA218 + 1 + 00-00:15:00 + + + + ETA242 1 00-00:15:00 @@ -367,12 +377,24 @@ 2 00-00:15:00 + + + HPCGuide + 2 + 00-00:15:00 + GFSGuide 8 00-00:15:00 + + + GFS212 + 1 + 00-00:15:00 + GFS160 @@ -381,7 +403,7 @@ - PR-GFS + GFS254 1 00-00:15:00 @@ -495,19 +517,15 @@ 24 00-00:15:00 + - RTMA-2p5km - 24 - 00-00:15:00 - - - AK-RTMA + AK-RTMA3 24 00-00:15:00 - SREF-40km + SREF212 2 00-00:15:00 @@ -523,11 +541,6 @@ 24 00-00:15:00 - - LAMPS-2p5km - 24 - 00-00:15:00 - ECMWF-HiRes @@ -546,7 +559,6 @@ 2 00-00:15:00 - TPCSurgeProb @@ -577,24 +589,28 @@ 1 00-00:15:00 + - FNMOC-FAROP + AKWave10 1 00-00:15:00 + - NAVGEM - 2 + AKWave4 + 1 00-00:15:00 + - CMC-REG - 2 + EPWave10 + 1 00-00:15:00 + - NDFD - 2 + WCWave10 + 1 00-00:15:00 @@ -623,7 +639,7 @@ - Hawaii-RTMA + HI_RTMA 24 @@ -722,4 +738,72 @@ 5 00-00:15:00 + + + HRRR + 4 + + + + estofsUS + 2 + + + estofsPR + 2 + + + + GFS199 + 4 + 00-01:00:00 + + + + + GLOBHwave + 1 + + + NAHwave15 + 1 + + + NAHwave10 + 1 + + + NAHwave4 + 1 + + + NPHwave15 + 1 + + + NPHwave10 + 1 + + + NPHwave4 + 1 + + + WPHwave10 + 1 + + + AKHwave10 + 1 + + + AKHwave4 + 1 + + + + MRMS + 120 + 03-00:00:00 + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/META-INF/MANIFEST.MF index 4442038970..6cfcbdd117 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/META-INF/MANIFEST.MF @@ -2,16 +2,13 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Ldadmesonet Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.ldadmesonet -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin.ldadmesonet;bundle-version="1.0.0", com.raytheon.edex.common, - com.raytheon.uf.common.pointdata, - javax.persistence, javax.measure, com.raytheon.edex.plugin.ldad;bundle-version="1.0.0", - com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.localization, - com.raytheon.uf.common.time -Import-Package: org.apache.commons.logging + com.raytheon.uf.edex.pointdata +Import-Package: com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-common.xml b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-common.xml index e1a1f5f6d1..5db1560647 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-common.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-common.xml @@ -8,7 +8,7 @@ - + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-ingest.xml index 88966f5486..e1628c69f8 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/res/spring/ldadmesonet-ingest.xml @@ -3,11 +3,11 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> - + - + @@ -18,17 +18,11 @@
      - - - - - + + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/src/com/raytheon/uf/edex/plugin/ldadmesonet/MesonetDecoder.java b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/src/com/raytheon/uf/edex/plugin/ldadmesonet/MesonetDecoder.java index c6929e8080..b9932a03bd 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/src/com/raytheon/uf/edex/plugin/ldadmesonet/MesonetDecoder.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.ldadmesonet/src/com/raytheon/uf/edex/plugin/ldadmesonet/MesonetDecoder.java @@ -45,8 +45,6 @@ import javax.xml.bind.JAXBException; import javax.xml.bind.Unmarshaller; import com.raytheon.edex.exception.DecoderException; -import com.raytheon.edex.plugin.AbstractDecoder; -import com.raytheon.edex.plugin.IBinaryDecoder; import com.raytheon.edex.plugin.ldad.common.DecodedData; import com.raytheon.edex.plugin.ldad.common.LdadField; import com.raytheon.uf.common.dataplugin.PluginDataObject; @@ -55,6 +53,8 @@ import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.DataTime; /** @@ -69,19 +69,21 @@ import com.raytheon.uf.common.time.DataTime; * Sep 04, 2009 vkorolev Initial creation * May 15, 2013 1869 bsteffen Remove DataURI column from ldadmesonet. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jul 23, 2014 3410 bclement location changed to floats + * Aug 15, 2014 3530 bclement no longer extends AbstractDecoder * * * @author vkorolev * @version 1 */ -public class MesonetDecoder extends AbstractDecoder implements - IBinaryDecoder { +public class MesonetDecoder { + + private static final IUFStatusHandler logger = UFStatus + .getHandler(MesonetDecoder.class); private static final String BAD_PROPERTY_FMT = "NumberFormatException setting property %s.%s(%s %s)"; - private final String PLUGIN_NAME; - private String traceId = null; private String currentFile = null; @@ -93,7 +95,6 @@ public class MesonetDecoder extends AbstractDecoder implements public Properties configFile = new Properties(); public MesonetDecoder(String pluginName) throws DecoderException { - PLUGIN_NAME = pluginName; } public void setTraceId(String id) { @@ -105,17 +106,11 @@ public class MesonetDecoder extends AbstractDecoder implements private String timeZone = null; - /* - * (non-Javadoc) - * - * @see com.raytheon.edex.plugin.IBinaryDecoder#decode(byte[]) + /** + * @param data + * @return + * @throws DecoderException */ - /* - * (non-Javadoc) - * - * @see com.raytheon.edex.plugin.IBinaryDecoder#decode(byte[]) - */ - @Override public PluginDataObject[] decode(byte[] data) throws DecoderException { List retVal = new ArrayList(); if (data != null) { @@ -211,12 +206,12 @@ public class MesonetDecoder extends AbstractDecoder implements } } if ("_lat".equals(nn)) { - double val = Double.parseDouble(vv); + float val = Float.parseFloat(vv); location.setLatitude(val); continue; } if ("_lon".equals(nn)) { - double val = Double.parseDouble(vv); + float val = Float.parseFloat(vv); location.setLongitude(val); continue; } @@ -427,7 +422,6 @@ public class MesonetDecoder extends AbstractDecoder implements } // List of Fields in record - @SuppressWarnings("unchecked") public static void main(String args[]) { MesonetLdadRecord record = new MesonetLdadRecord(); try { diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.loctables/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.loctables/META-INF/MANIFEST.MF index 41868ea655..41b65dff13 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.loctables/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.loctables/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Loctables Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.loctables -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.edex.pointdata, com.raytheon.uf.common.localization, @@ -15,5 +14,6 @@ Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", com.raytheon.uf.common.site;bundle-version="1.12.1174", com.raytheon.uf.edex.site;bundle-version="1.0.0", - com.raytheon.uf.common.monitor;bundle-version="1.12.1174" + com.raytheon.uf.common.monitor;bundle-version="1.12.1174", + com.raytheon.uf.edex.ndm;bundle-version="1.0.0" Import-Package: org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/ingest/LocationTablesIngest.java b/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/ingest/LocationTablesIngest.java index 4e80ac0a72..ab93380713 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/ingest/LocationTablesIngest.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/ingest/LocationTablesIngest.java @@ -28,13 +28,9 @@ import java.util.Map; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import com.raytheon.edex.site.SiteUtil; -import com.raytheon.uf.common.dataplugin.PluginDataObject; -import com.raytheon.uf.common.monitor.config.FogMonitorConfigurationManager; -import com.raytheon.uf.common.monitor.config.MonitorConfigurationManager; -import com.raytheon.uf.common.monitor.config.SSMonitorConfigurationManager; -import com.raytheon.uf.common.monitor.config.SnowMonitorConfigurationManager; -import com.raytheon.uf.common.site.ingest.INationalDatasetSubscriber; +import com.raytheon.uf.common.monitor.config.FSSObsMonitorConfigurationManager; +import com.raytheon.uf.edex.ndm.ingest.IDataSetIngester; +import com.raytheon.uf.edex.ndm.ingest.INationalDatasetSubscriber; import com.raytheon.uf.edex.plugin.loctables.util.CommonObsSpatialBuilder; import com.raytheon.uf.edex.plugin.loctables.util.TableHandler; import com.raytheon.uf.edex.plugin.loctables.util.handlers.DefaultHandler; @@ -45,12 +41,9 @@ import com.raytheon.uf.edex.plugin.loctables.util.handlers.PirepTableHandler; import com.raytheon.uf.edex.plugin.loctables.util.handlers.RAOBTableHandler; import com.raytheon.uf.edex.plugin.loctables.util.handlers.SynopticLandTableHandler; import com.raytheon.uf.edex.plugin.loctables.util.store.ObStationStoreStrategy; -import com.raytheon.uf.edex.plugin.loctables.util.store.PrintStreamStoreStrategy; -import com.raytheon.uf.edex.plugin.loctables.util.store.RowStoreStrategy; -import com.raytheon.uf.edex.site.ingest.IDataSetIngester; /** - * TODO Add Description + * Location Tables NDM subscriber * *
        * 
      @@ -58,7 +51,11 @@ import com.raytheon.uf.edex.site.ingest.IDataSetIngester;
        * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
      - * Apr 8, 2010            jkorman     Initial creation
      + * Apr 08, 2010            jkorman     Initial creation
      + * Mar 06, 2014   2876     mpduff      New NDM plugin.
      + * Apr 28, 2014   3086     skorolev    Updated setupLocalFiles method
      + * Sep 04, 2014   3220     skorolev    Removed parameter currentSite from FSSObs configuration managers.
      + * Oct 17, 2014   3220     skorolev    Corrected FSSObsMonitorConfigurationManager instances.
        * 
        * 
      * @@ -74,12 +71,18 @@ public class LocationTablesIngest implements INationalDatasetSubscriber { private IDataSetIngester ingester = null; - private Log logger = LogFactory.getLog(getClass()); + private final Log logger = LogFactory.getLog(getClass()); @SuppressWarnings("unused") private LocationTablesIngest() { } + /** + * Location Tables Ingest. + * + * @param pluginName + * @param ingester + */ public LocationTablesIngest(String pluginName, IDataSetIngester ingester) { this.ingester = ingester; @@ -89,7 +92,7 @@ public class LocationTablesIngest implements INationalDatasetSubscriber { } /** - * + * Setup Handlers. */ private void setupHandlers() { @@ -119,20 +122,15 @@ public class LocationTablesIngest implements INationalDatasetSubscriber { } } + /** + * Setup local FSSObs managers. + */ private void setupLocalFiles() { - String currentSite = SiteUtil.getSite(); + List monitors = new ArrayList(); - List monitors = new ArrayList(); - monitors.add(FogMonitorConfigurationManager.getInstance()); - monitors.add(SSMonitorConfigurationManager.getInstance()); - monitors.add(SnowMonitorConfigurationManager.getInstance()); - for (MonitorConfigurationManager monitor : monitors) { - try { - monitor.readConfigXml(currentSite); - } catch (Throwable t) { - logger.error("Could not configure " + monitor.getClass().getName() + " for site " + currentSite, t); - } - } + monitors.add(FSSObsMonitorConfigurationManager.getSsObsManager()); + monitors.add(FSSObsMonitorConfigurationManager.getFogObsManager()); + monitors.add(FSSObsMonitorConfigurationManager.getSnowObsManager()); } /** @@ -153,6 +151,7 @@ public class LocationTablesIngest implements INationalDatasetSubscriber { } /** + * Gets Handler. * * @param file * @return @@ -175,8 +174,9 @@ public class LocationTablesIngest implements INationalDatasetSubscriber { } /** + * Gets Handlers. * - * @return + * @return handlers */ public Map getHandlers() { return handlers; diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/util/handlers/AbstractTableHandler.java b/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/util/handlers/AbstractTableHandler.java index 5686f9b997..22acb218f1 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/util/handlers/AbstractTableHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.loctables/src/com/raytheon/uf/edex/plugin/loctables/util/handlers/AbstractTableHandler.java @@ -31,6 +31,7 @@ import java.util.regex.Pattern; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.decodertools.time.TimeTools; import com.raytheon.uf.edex.plugin.loctables.util.TableHandler; import com.raytheon.uf.edex.plugin.loctables.util.store.ObStationRow; @@ -40,17 +41,18 @@ import com.raytheon.uf.edex.plugin.loctables.util.store.RowStoreStrategy; * TODO Add Description * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Apr 16, 2010            jkorman     Initial creation
      - *
      + * Sep 18, 2014 #3627      mapeters    Updated deprecated {@link TimeTools} usage.
      + * 
        * 
      - * + * * @author jkorman - * @version 1.0 + * @version 1.0 */ public abstract class AbstractTableHandler implements TableHandler { @@ -193,7 +195,7 @@ public abstract class AbstractTableHandler implements TableHandler { String fs = data.substring(DIRECTIVE_STATUS_DIR.length()).trim(); - Calendar c = TimeTools.getSystemCalendar(); + Calendar c = TimeUtil.newGmtCalendar(); fs = String.format("%s.%2$tY% - - - - - diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.lsr/res/spring/lsr-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.lsr/res/spring/lsr-ingest.xml index 518ab59870..4fe73de540 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.lsr/res/spring/lsr-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.lsr/res/spring/lsr-ingest.xml @@ -13,15 +13,9 @@
      - - - - + errorHandlerRef="errorHandler"> - + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/res/spring/manualIngest-spring.xml b/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/res/spring/manualIngest-spring.xml index 5c575dbd48..af2f65b49b 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/res/spring/manualIngest-spring.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/res/spring/manualIngest-spring.xml @@ -6,11 +6,9 @@ + errorHandlerRef="errorHandler"> - @@ -18,167 +16,9 @@ - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/src/com/raytheon/uf/edex/plugin/manualIngest/MessageGenerator.java b/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/src/com/raytheon/uf/edex/plugin/manualIngest/MessageGenerator.java index 3d4f4e3353..27d4b26f64 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/src/com/raytheon/uf/edex/plugin/manualIngest/MessageGenerator.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.manualIngest/src/com/raytheon/uf/edex/plugin/manualIngest/MessageGenerator.java @@ -38,9 +38,8 @@ import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.SimulatedTime; import com.raytheon.uf.common.util.header.WMOHeaderFinder; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.core.EDEXUtil; -import com.raytheon.uf.edex.core.props.PropertiesFactory; -import com.raytheon.uf.edex.decodertools.time.TimeTools; import com.raytheon.uf.edex.distribution.DistributionPatterns; /** @@ -56,6 +55,10 @@ import com.raytheon.uf.edex.distribution.DistributionPatterns; * ------------ ---------- ----------- -------------------------- * Oct 28, 2009 brockwoo Initial creation * Sep 03, 2013 2327 rjpeter Added directory routing by plugin and date of product. + * Apr 17, 2014 2942 skorolev Updated throw exception in sendFileToIngest. + * May 14, 2014 2536 bclement removed TimeTools usage + * Jul 10, 2014 2914 garmendariz Remove EnvProperties + * * * * @author brockwoo @@ -66,8 +69,7 @@ public class MessageGenerator implements Processor { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(MessageGenerator.class); - private static String DIR = PropertiesFactory.getInstance() - .getEnvProperties().getEnvValue("ARCHIVEDIR") + private static String DIR = System.getProperty("data.archive.root") + File.separator + "manual"; private static MessageGenerator instance = new MessageGenerator(); @@ -166,7 +168,7 @@ public class MessageGenerator implements Processor { header = header.trim(); try { String dtg = WMOHeaderFinder.findDtg(header); - Calendar headerTime = TimeTools.findCurrentTime(dtg, + Calendar headerTime = WMOTimeParser.findCurrentTime(dtg, inFile.getName()); if (headerTime != null) { fileTime = headerTime.getTime(); @@ -285,6 +287,10 @@ public class MessageGenerator implements Processor { try { File archiveFile = copyFileToArchive(new File(inFile)); + if (archiveFile == null) { + throw new Exception("File " + inFile + + " has not been copied into archive."); + } EDEXUtil.getMessageProducer().sendAsync(route, archiveFile.getAbsolutePath()); } catch (Exception e) { diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/META-INF/MANIFEST.MF index 200fbd6852..99d6d5575e 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/META-INF/MANIFEST.MF @@ -5,12 +5,10 @@ Bundle-SymbolicName: com.raytheon.uf.edex.plugin.modelsounding Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON Bundle-ActivationPolicy: lazy -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.uf.common.serialization -Require-Bundle: com.raytheon.uf.edex.core, +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Require-Bundle: com.raytheon.uf.edex.core, com.raytheon.uf.edex.database, com.raytheon.uf.edex.pointdata, - com.raytheon.uf.edex.decodertools, com.raytheon.uf.common.dataplugin.modelsounding, com.raytheon.uf.common.dataplugin, com.raytheon.uf.common.datastorage, @@ -18,9 +16,15 @@ Require-Bundle: com.raytheon.uf.edex.core, com.raytheon.uf.common.status, com.raytheon.uf.common.serialization, com.raytheon.uf.common.localization, - com.raytheon.uf.common.site + com.raytheon.uf.common.site, + com.raytheon.uf.edex.ndm;bundle-version="1.0.0", + com.raytheon.uf.edex.decodertools;bundle-version="1.12.1174" Import-Package: com.raytheon.edex.esb, - com.raytheon.edex.plugin + com.raytheon.edex.plugin, + com.raytheon.uf.common.wmo, + com.raytheon.uf.edex.bufrtools, + com.raytheon.uf.edex.bufrtools.descriptors, + com.raytheon.uf.edex.bufrtools.packets Export-Package: com.raytheon.uf.edex.plugin.modelsounding, com.raytheon.uf.edex.plugin.modelsounding.common, com.raytheon.uf.edex.plugin.modelsounding.dao, diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/res/spring/modelsounding-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/res/spring/modelsounding-ingest.xml index ef92b8e42d..f1e08678f6 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/res/spring/modelsounding-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/res/spring/modelsounding-ingest.xml @@ -2,15 +2,12 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> - - + + class="com.raytheon.uf.edex.plugin.modelsounding.ModelSoundingDecoder"> @@ -25,15 +22,29 @@ - - - + + + + + + + + + + + + + + + + + + + + errorHandlerRef="errorHandler"> + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingDecoder.java b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingDecoder.java index 34dadeefe6..19d4739770 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingDecoder.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingDecoder.java @@ -36,16 +36,16 @@ import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; -import com.raytheon.uf.edex.decodertools.bufr.BUFRDataDocument; -import com.raytheon.uf.edex.decodertools.bufr.BUFRDocument; -import com.raytheon.uf.edex.decodertools.bufr.BUFRFile; -import com.raytheon.uf.edex.decodertools.bufr.descriptors.DefaultDescriptorDelegate; -import com.raytheon.uf.edex.decodertools.bufr.descriptors.IDescriptorFactoryDelegate; -import com.raytheon.uf.edex.decodertools.bufr.descriptors.IDescriptorFactorySelector; -import com.raytheon.uf.edex.decodertools.bufr.packets.BUFRSublistPacket; -import com.raytheon.uf.edex.decodertools.bufr.packets.IBUFRDataPacket; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.edex.bufrtools.BUFRDataDocument; +import com.raytheon.uf.edex.bufrtools.BUFRDocument; +import com.raytheon.uf.edex.bufrtools.BUFRFile; +import com.raytheon.uf.edex.bufrtools.descriptors.DefaultDescriptorDelegate; +import com.raytheon.uf.edex.bufrtools.descriptors.IDescriptorFactoryDelegate; +import com.raytheon.uf.edex.bufrtools.descriptors.IDescriptorFactorySelector; +import com.raytheon.uf.edex.bufrtools.packets.BUFRSublistPacket; +import com.raytheon.uf.edex.bufrtools.packets.IBUFRDataPacket; import com.raytheon.uf.edex.plugin.modelsounding.decoder.ModelSoundingDataAdapter; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Perform decode on BUFR model sounding data. Currently this decoder does not @@ -76,6 +76,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * destruction. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Dec 02, 2013 2537 bsteffen Remove dead/deprecated code. + * May 14, 2014 2536 bclement moved WMO Header to common * * * @@ -125,14 +126,6 @@ public class ModelSoundingDecoder extends AbstractDecoder implements } } - public void start() { - this.modelSoundingPersistenceManager.start(); - } - - public void shutdown() { - this.modelSoundingPersistenceManager.shutdown(); - } - /** * Get one entry from the separator and interpret that data as a single * profiler observation. @@ -156,7 +149,8 @@ public class ModelSoundingDecoder extends AbstractDecoder implements if ((data != null) && (data.length > 0)) { - WMOHeader wmoHeader = new WMOHeader(data, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + WMOHeader wmoHeader = new WMOHeader(data, fileName); if (wmoHeader.isValid()) { try { @@ -288,7 +282,7 @@ public class ModelSoundingDecoder extends AbstractDecoder implements * always returns "DEFAULT". * * @return Return the string value "DEFAULT". - * @see com.raytheon.edex.tools.bufr.descriptors.IDescriptorFactorySelector#getSelector() + * @see com.raytheon.uf.edex.bufrtools.descriptors.tools.bufr.descriptors.IDescriptorFactorySelector#getSelector() */ @Override public String getSelector() { diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingPersistenceManager.java b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingPersistenceManager.java index ca867f24d9..d4a1554cd8 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingPersistenceManager.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingPersistenceManager.java @@ -22,7 +22,6 @@ package com.raytheon.uf.edex.plugin.modelsounding; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; -import java.util.concurrent.atomic.AtomicBoolean; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.status.IUFStatusHandler; @@ -30,6 +29,7 @@ import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.core.EdexException; +import com.raytheon.uf.edex.core.IContextStateProcessor; /** * Thread for storing Model Soundings asynchronously. If decode thread decodes @@ -42,40 +42,43 @@ import com.raytheon.uf.edex.core.EdexException; * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * Jul 17, 2013 2161 bkowal Initial creation - * + * Jul 17, 2013 2161 bkowal Initial creation. + * Mar 11, 2014 2726 rjpeter Graceful shutdown, don't forward empty pdo lists. * * * @author bkowal * @version 1.0 */ -public class ModelSoundingPersistenceManager extends Thread { +public class ModelSoundingPersistenceManager implements IContextStateProcessor { /** The logger */ private final IUFStatusHandler logger = UFStatus .getHandler(ModelSoundingPersistenceManager.class); private final LinkedHashMap containerMap; - private final AtomicBoolean run = new AtomicBoolean(true); + private volatile boolean run = false; + + private volatile boolean shutdown = false; /** * */ public ModelSoundingPersistenceManager() { - super("ModelSoundingStore"); + // super("ModelSoundingStore"); this.containerMap = new LinkedHashMap( 64, 1); } - @Override public void run() { - boolean keepStoring = true; - while (keepStoring) { + run = true; + + // continue as long as there is data in the map + while (run || !containerMap.isEmpty()) { try { ModelSoundingStorageContainer container = null; synchronized (containerMap) { - while (containerMap.isEmpty() && this.run.get()) { + while (run && containerMap.isEmpty()) { try { containerMap.wait(); } catch (InterruptedException e) { @@ -98,18 +101,17 @@ public class ModelSoundingPersistenceManager extends Thread { if (container != null) { List pdoList = container.getPdos(); - PluginDataObject[] pdos = pdoList - .toArray(new PluginDataObject[pdoList.size()]); - try { - EDEXUtil.getMessageProducer().sendSync( - "modelSoundingPersistIndexAlert", pdos); - } catch (EdexException e) { - logger.error("Failed to persist " + pdos.length - + " PluginDataObject(s)!", e); + if ((pdoList != null) && !pdoList.isEmpty()) { + PluginDataObject[] pdos = pdoList + .toArray(new PluginDataObject[pdoList.size()]); + try { + EDEXUtil.getMessageProducer().sendSync( + "modelSoundingPersistIndexAlert", pdos); + } catch (EdexException e) { + logger.error("Failed to persist " + pdos.length + + " PluginDataObject(s)!", e); + } } - } else if (!this.run.get()) { - // received shutdown flag - keepStoring = false; } } catch (Throwable e) { // fail safe so store thread doesn't fail @@ -118,6 +120,26 @@ public class ModelSoundingPersistenceManager extends Thread { e); } } + + shutdown = true; + synchronized (containerMap) { + containerMap.notifyAll(); + } + } + + protected void storeContainer(ModelSoundingStorageContainer container) { + List pdoList = container.getPdos(); + if ((pdoList != null) && !pdoList.isEmpty()) { + PluginDataObject[] pdos = pdoList + .toArray(new PluginDataObject[pdoList.size()]); + try { + EDEXUtil.getMessageProducer().sendSync( + "modelSoundingPersistIndexAlert", pdos); + } catch (EdexException e) { + logger.error("Failed to persist " + pdos.length + + " PluginDataObject(s)!", e); + } + } } /** @@ -128,15 +150,15 @@ public class ModelSoundingPersistenceManager extends Thread { * * @param persistRecordKey * @param container - * @return */ - public boolean checkIn(String persistRecordKey, + public void checkIn(String persistRecordKey, ModelSoundingStorageContainer container) { - boolean rval = run.get(); + boolean storeLocal = true; synchronized (containerMap) { - if (rval) { + if (run) { ModelSoundingStorageContainer prev = containerMap.put( persistRecordKey, container); + storeLocal = false; if (prev != null) { // technically only possible in an environment where there // are multiple decode threads running, just append the @@ -151,7 +173,9 @@ public class ModelSoundingPersistenceManager extends Thread { } } - return rval; + if (storeLocal) { + storeContainer(container); + } } /** @@ -168,11 +192,33 @@ public class ModelSoundingPersistenceManager extends Thread { } } - public void shutdown() { - run.set(false); + @Override + public void preStart() { + } - synchronized (containerMap) { - containerMap.notify(); + @Override + public void postStart() { + } + + @Override + public void preStop() { + if (run) { + synchronized (containerMap) { + run = false; + containerMap.notifyAll(); + + while (!shutdown) { + try { + containerMap.wait(1000); + } catch (Exception e) { + // ignore + } + } + } } } + + @Override + public void postStop() { + } } \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingSeparator.java b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingSeparator.java index a8e7fad84b..e9e3ed754b 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingSeparator.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ModelSoundingSeparator.java @@ -26,7 +26,7 @@ import com.raytheon.edex.esb.Headers; import com.raytheon.edex.plugin.AbstractRecordSeparator; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; -import com.raytheon.uf.edex.wmo.message.WMOHeaderFinder; +import com.raytheon.uf.common.wmo.WMOHeaderFinder; /** * The ModelSoundingSeparator takes a potential weather message and attempts to diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/dao/ModelSoundingDAO.java b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/dao/ModelSoundingDAO.java index 099b67b0de..14d4b15ce7 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/dao/ModelSoundingDAO.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/dao/ModelSoundingDAO.java @@ -27,10 +27,10 @@ import com.raytheon.uf.common.dataplugin.modelsounding.SoundingSite; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.plugin.modelsounding.common.ModelSoundingPathProvider; import com.raytheon.uf.edex.pointdata.PointDataPluginDao; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Provide data access services against the SoundingSite data object. diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/decoder/ModelSoundingDataAdapter.java b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/decoder/ModelSoundingDataAdapter.java index 1b0a752203..178e4a9bd7 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/decoder/ModelSoundingDataAdapter.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/decoder/ModelSoundingDataAdapter.java @@ -19,8 +19,6 @@ **/ package com.raytheon.uf.edex.plugin.modelsounding.decoder; -import static com.raytheon.uf.edex.decodertools.bufr.packets.DataPacketTypes.RepSubList; - import java.io.File; import java.util.Calendar; import java.util.List; @@ -41,14 +39,15 @@ import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.decodertools.bufr.BUFRDataDocument; -import com.raytheon.uf.edex.decodertools.bufr.descriptors.BUFRDescriptor; -import com.raytheon.uf.edex.decodertools.bufr.packets.BUFRSublistPacket; -import com.raytheon.uf.edex.decodertools.bufr.packets.IBUFRDataPacket; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.edex.bufrtools.BUFRDataDocument; +import com.raytheon.uf.edex.bufrtools.descriptors.BUFRDescriptor; +import com.raytheon.uf.edex.bufrtools.packets.BUFRSublistPacket; +import com.raytheon.uf.edex.bufrtools.packets.DataPacketTypes; +import com.raytheon.uf.edex.bufrtools.packets.IBUFRDataPacket; import com.raytheon.uf.edex.decodertools.core.IDecoderConstants; import com.raytheon.uf.edex.plugin.modelsounding.SoundingModelTemporalData; import com.raytheon.uf.edex.plugin.modelsounding.common.SoundingModels; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * This class contains several utility methods that construct a ProfilerObs @@ -64,6 +63,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Jul 03, 2013 2161 bkowal Relocated the logic used to retrieve * temporal information into its own function. * Dec 02, 2013 2537 bsteffen Use SoundingSite setters instead of view. + * Jul 23, 2014 3410 bclement location changed to floats + * Sep 16, 2014 3628 mapeters Replaced static imports. * * * @@ -269,7 +270,7 @@ public class ModelSoundingDataAdapter { if (d == BUFRDescriptor.createDescriptor(0, 6, 2)) { lon = (Double) dp.getValue(); } - location.assignLocation(lat, lon); + location.assignLocation(lat.floatValue(), lon.floatValue()); dp = dataList.get(index); d = dp.getReferencingDescriptor().getDescriptor(); if (d == BUFRDescriptor.createDescriptor(0, 10, 194)) { @@ -303,7 +304,8 @@ public class ModelSoundingDataAdapter { // get the replication sublist for the sounding data IBUFRDataPacket p = dataList.get(5); if ((p instanceof BUFRSublistPacket) - && (RepSubList.getPacketType().equals(p.getUnits()))) { + && (DataPacketTypes.RepSubList.getPacketType().equals(p + .getUnits()))) { List subList = (List) p .getValue(); @@ -390,7 +392,8 @@ public class ModelSoundingDataAdapter { // get the replication sublist for the sounding data IBUFRDataPacket p = dataList.get(7); if ((p instanceof BUFRSublistPacket) - && (RepSubList.getPacketType().equals(p.getUnits()))) { + && (DataPacketTypes.RepSubList.getPacketType().equals(p + .getUnits()))) { List subList = (List) p .getValue(); diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ingest/ModelBufrSubscriber.java b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ingest/ModelBufrSubscriber.java index 5b73b17636..4f08ac74ee 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ingest/ModelBufrSubscriber.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.modelsounding/src/com/raytheon/uf/edex/plugin/modelsounding/ingest/ModelBufrSubscriber.java @@ -22,10 +22,14 @@ package com.raytheon.uf.edex.plugin.modelsounding.ingest; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; +import java.io.FileInputStream; import java.io.FileNotFoundException; +import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; @@ -33,10 +37,10 @@ import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.pointdata.vadriver.VA_Driver; -import com.raytheon.uf.common.site.ingest.INationalDatasetSubscriber; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.edex.ndm.ingest.INationalDatasetSubscriber; import com.raytheon.uf.edex.plugin.modelsounding.decoder.ModelSoundingDataAdapter; /** @@ -51,6 +55,7 @@ import com.raytheon.uf.edex.plugin.modelsounding.decoder.ModelSoundingDataAdapte * ------------- -------- ----------- -------------------------- * Jan 29, 2011 bfarmer Initial creation * Dec 02, 2013 2537 bsteffen Ensure streams are closed. + * Mar 06, 2014 2876 mpduff New NDM plugin. * * * @@ -61,26 +66,26 @@ import com.raytheon.uf.edex.plugin.modelsounding.decoder.ModelSoundingDataAdapte public class ModelBufrSubscriber implements INationalDatasetSubscriber { private static final String MODEL_STATION_LIST = ModelSoundingDataAdapter.MODEL_STATION_LIST; - + private static final String MODEL_STATION_INFO = "modelBufrStationInfo.txt"; - + private static final String MODEL_GOODNESS = "modelBufr.goodness"; - - - private static final transient IUFStatusHandler statusHandler = UFStatus + + private static final IUFStatusHandler statusHandler = UFStatus .getHandler(ModelBufrSubscriber.class); @Override public void notify(String fileName, File file) { - + statusHandler.handle(Priority.EVENTA, "modelBufr:Processing input file [" + fileName + "]"); - + if ("modelBufr.spi".equals(fileName)) { IPathManager pathMgr = PathManagerFactory.getPathManager(); LocalizationContext lc = pathMgr.getContext( LocalizationType.COMMON_STATIC, LocalizationLevel.SITE); - File outFile = pathMgr.getFile(lc, ModelSoundingDataAdapter.SPI_FILE); + File outFile = pathMgr.getFile(lc, + ModelSoundingDataAdapter.SPI_FILE); saveFile(file, outFile); ModelSoundingDataAdapter.updateSPIData(); } else if (MODEL_STATION_LIST.equals(fileName)) { @@ -92,13 +97,16 @@ public class ModelBufrSubscriber implements INationalDatasetSubscriber { saveFile(file, outFile); generateSPI(file, goodnessFile); - File spiFile = pathMgr.getFile(lc, ModelSoundingDataAdapter.SPI_FILE); + File spiFile = pathMgr.getFile(lc, + ModelSoundingDataAdapter.SPI_FILE); if (!spiFile.exists()) { try { spiFile.createNewFile(); } catch (IOException e) { - statusHandler.handle(Priority.SIGNIFICANT, - "modelBufr:Could not create primary file. ", e); + statusHandler.handle( + Priority.SIGNIFICANT, + "modelBufr:Could not create spi file: " + + spiFile.getName(), e); } } @@ -116,13 +124,15 @@ public class ModelBufrSubscriber implements INationalDatasetSubscriber { saveFile(file, outFile); generateSPI(file, goodnessFile); - File spiFile = pathMgr.getFile(lc, ModelSoundingDataAdapter.SPI_FILE); + File spiFile = pathMgr.getFile(lc, + ModelSoundingDataAdapter.SPI_FILE); if (!spiFile.exists()) { try { spiFile.createNewFile(); } catch (IOException e) { statusHandler.handle(Priority.SIGNIFICANT, - "modelBufr:Could not create primary file. ", e); + "modelBufr:Could not create spiFile file: " + + spiFile.getName(), e); } } @@ -131,7 +141,7 @@ public class ModelBufrSubscriber implements INationalDatasetSubscriber { driver.vaStationsFile(goodnessFile, null, spiFile); // updateStationList will reload spi files also ModelSoundingDataAdapter.update(); - + } } @@ -145,17 +155,17 @@ public class ModelBufrSubscriber implements INationalDatasetSubscriber { String[] splitLine; try { BufferedReader fis = null; -// if (!goodnessFile.exists()) { -// goodnessFile.createNewFile(); -// } + // if (!goodnessFile.exists()) { + // goodnessFile.createNewFile(); + // } BufferedWriter fos = null; try { fis = new BufferedReader(new FileReader(file)); fos = new BufferedWriter(new FileWriter(goodnessFile)); while ((line = fis.readLine()) != null) { - if(line.length() > 0) { + if (line.length() > 0) { // check for commented lines - if('#' != line.charAt(0)) { + if ('#' != line.charAt(0)) { try { splitLine = line.split("\\|"); Integer elevation; @@ -163,27 +173,34 @@ public class ModelBufrSubscriber implements INationalDatasetSubscriber { Double longitude; String cause = "elevation"; try { - elevation = Integer.parseInt(splitLine[4].trim()); + elevation = Integer.parseInt(splitLine[4] + .trim()); cause = "latitude"; - latitude = Double.parseDouble(splitLine[2].trim()); + latitude = Double.parseDouble(splitLine[2] + .trim()); cause = "longitude"; - longitude = Double.parseDouble(splitLine[3].trim()); + longitude = Double.parseDouble(splitLine[3] + .trim()); } catch (NumberFormatException nfe) { - String err = String.format("modelBufr:Invalid %s in data line [%s]", cause, line); - statusHandler.handle(Priority.PROBLEM,err); + String err = String + .format("modelBufr:Invalid %s in data line [%s]", + cause, line); + statusHandler.handle(Priority.PROBLEM, err); continue; } String stationName = splitLine[1].trim(); fos.write("0 "); fos.write(stationName); - fos.write(String.format(" %8.4f %9.4f %5d %9d", latitude, - longitude, elevation, 0)); + fos.write(String.format(" %8.4f %9.4f %5d %9d", + latitude, longitude, elevation, 0)); fos.newLine(); } catch (Exception e) { - String err = String.format("modelBufr:Error in data line [%s]", line); - statusHandler.handle(Priority.PROBLEM,err,e); + String err = String.format( + "modelBufr:Error in data line [%s]", + line); + statusHandler.handle(Priority.PROBLEM, err, e); continue; - } + } } } } @@ -198,21 +215,22 @@ public class ModelBufrSubscriber implements INationalDatasetSubscriber { + file.getName() + "]"); } } - if(fos != null) { + if (fos != null) { try { fos.close(); } catch (IOException ioe) { statusHandler.handle(Priority.SIGNIFICANT, - "modelBufr:Error closing output file [" + goodnessFile.getName() + "]"); + "modelBufr:Error closing output file [" + + goodnessFile.getName() + "]"); } } } } catch (IOException e) { - statusHandler.handle(Priority.SIGNIFICANT, "modelBufr:Could not read File ", e); + statusHandler.handle(Priority.SIGNIFICANT, + "modelBufr:Could not read File ", e); } } - - + /** * * @param file @@ -223,28 +241,37 @@ public class ModelBufrSubscriber implements INationalDatasetSubscriber { BufferedReader fis = null; BufferedWriter fos = null; try { - fis = new BufferedReader(new FileReader(file)); - fos = new BufferedWriter(new FileWriter(outFile)); + fis = new BufferedReader(new InputStreamReader( + new FileInputStream(file))); + fos = new BufferedWriter(new OutputStreamWriter( + new FileOutputStream(outFile))); String line = null; - while ((line = fis.readLine()) != null) { - fos.write(line); - fos.newLine(); + try { + while ((line = fis.readLine()) != null) { + fos.write(line); + fos.newLine(); + } + } catch (IOException e) { + statusHandler.handle(Priority.PROBLEM, + "Could not read file: " + file.getName(), e); + } } catch (FileNotFoundException e) { - statusHandler.handle(Priority.SIGNIFICANT, "modelBufr:Failed to find File ", - e); - } catch (IOException e) { - statusHandler.handle(Priority.SIGNIFICANT, "modelBufr:Error reading File ", - e); + statusHandler.handle(Priority.PROBLEM, "Failed to find file: " + + file.getName(), e); } finally { + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + // ignore + } + } if (fos != null) { try { fos.close(); } catch (IOException e) { - statusHandler.handle( - Priority.SIGNIFICANT, - "Error closing output file [" - + outFile.getName() + "]"); + // ignore } } } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.npp.crimss/res/spring/crimss-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.npp.crimss/res/spring/crimss-ingest.xml index f40b7d96aa..e287dcda89 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.npp.crimss/res/spring/crimss-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.npp.crimss/res/spring/crimss-ingest.xml @@ -12,15 +12,9 @@ - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.npp.nucaps/res/spring/nucaps-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.npp.nucaps/res/spring/nucaps-ingest.xml index 063e071ff1..041d9eb20a 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.npp.nucaps/res/spring/nucaps-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.npp.nucaps/res/spring/nucaps-ingest.xml @@ -12,15 +12,9 @@ - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/META-INF/MANIFEST.MF index 617fa46411..573b1af846 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/META-INF/MANIFEST.MF @@ -14,5 +14,6 @@ Require-Bundle: com.raytheon.edex.common;bundle-version="1.12.1174", org.apache.commons.lang;bundle-version="2.3.0", com.raytheon.uf.edex.plugin.npp;bundle-version="1.0.0", com.raytheon.uf.common.status;bundle-version="1.12.1174", - com.raytheon.uf.common.localization;bundle-version="1.12.1174" + com.raytheon.uf.common.localization;bundle-version="1.12.1174", + com.raytheon.uf.common.numeric;bundle-version="1.14.0" Import-Package: org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/res/spring/viirs-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/res/spring/viirs-ingest.xml index f32f770d16..f12f2a32ca 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/res/spring/viirs-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/res/spring/viirs-ingest.xml @@ -10,11 +10,6 @@ - - - - @@ -25,8 +20,7 @@ + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDao.java b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDao.java index 472e58baac..395f1dd1de 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDao.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDao.java @@ -39,13 +39,16 @@ import com.raytheon.uf.common.datastorage.StorageProperties; import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.geospatial.interpolation.BilinearInterpolation; import com.raytheon.uf.common.geospatial.interpolation.GridDownscaler; -import com.raytheon.uf.common.geospatial.interpolation.data.DataSource; -import com.raytheon.uf.common.geospatial.interpolation.data.DataWrapper1D; +import com.raytheon.uf.common.numeric.buffer.BufferWrapper; +import com.raytheon.uf.common.numeric.buffer.ShortBufferWrapper; +import com.raytheon.uf.common.numeric.dest.DataDestination; +import com.raytheon.uf.common.numeric.filter.InverseFillValueFilter; +import com.raytheon.uf.common.numeric.filter.UnsignedFilter; +import com.raytheon.uf.common.numeric.source.DataSource; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.edex.core.dataplugin.PluginRegistry; import com.raytheon.uf.edex.database.DataAccessLayerException; -import com.raytheon.uf.edex.database.plugin.DataRecordWrapUtil; import com.raytheon.uf.edex.database.plugin.DownscaleStoreUtil; import com.raytheon.uf.edex.database.plugin.DownscaleStoreUtil.IDataRecordCreator; import com.raytheon.uf.edex.database.plugin.PluginDao; @@ -59,11 +62,13 @@ import com.raytheon.uf.edex.plugin.npp.viirs.VIIRSMessageData; * * SOFTWARE HISTORY * - * Date Ticket# Engineer Description - * ------------ ---------- ----------- -------------------------- - * Dec 1, 2011 mschenke Initial creation - * Feb 21, 2012 #30 mschenke Updated code to account for missingValue - * in messageData being float now + * Date Ticket# Engineer Description + * ------------- -------- ----------- -------------------------- + * Dec 01, 2011 mschenke Initial creation + * Feb 21, 2012 30 mschenke Updated code to account for missingValue + * in messageData being float now + * Mar 07, 2014 2791 bsteffen Move Data Source/Destination to numeric + * plugin. * * * @@ -105,7 +110,7 @@ public class VIIRSDao extends PluginDao { coverage = (VIIRSSpatialCoverage) obj; break; } else { - statusHandler.handle(Priority.WARN, + logger.handle(Priority.WARN, "VIIRSSpatialCoverage lookup returned type of: " + obj != null ? obj.getClass() .getSimpleName() : null); @@ -113,7 +118,7 @@ public class VIIRSDao extends PluginDao { } } } catch (DataAccessLayerException e) { - statusHandler.handle(Priority.PROBLEM, + logger.handle(Priority.PROBLEM, "Error querying for viirs spatial object", e); } return coverage; @@ -179,6 +184,12 @@ public class VIIRSDao extends PluginDao { idr.setCorrelationObject(record); return idr; } + + @Override + public boolean isSigned() { + return false; + } + }; IDataRecord fullSize = creator @@ -187,16 +198,21 @@ public class VIIRSDao extends PluginDao { // Data sources are create anonymously here to avoid having the // fillValue/validMin/validMax even checked when getting values but // still getting the getDataValueInternal functionality - DataWrapper1D ds = DataRecordWrapUtil.wrap(fullSize, nx, ny, true); + BufferWrapper ds = BufferWrapper.wrapArray(rawData, nx, ny); - ds.setFillValue(fillValue); + DataDestination dest = InverseFillValueFilter.apply( + (DataDestination) ds, fillValue); // Wrap the source and replace set each value which will replace // anything in missingValues with fillValue - DataSource source = new VIIRSDataSourceWrapper(ds, missingValues); + DataSource source = ds; + if (ds instanceof ShortBufferWrapper) { + source = UnsignedFilter.apply((ShortBufferWrapper) ds); + } + source = new VIIRSDataSourceWrapper(source, missingValues); for (int y = 0; y < ny; ++y) { for (int x = 0; x < nx; ++x) { - ds.setDataValue(source.getDataValue(x, y), x, y); + dest.setDataValue(source.getDataValue(x, y), x, y); } } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDataSourceWrapper.java b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDataSourceWrapper.java index 81588f3c25..e09e811ef1 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDataSourceWrapper.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.npp.viirs/src/com/raytheon/uf/edex/plugin/npp/viirs/dao/VIIRSDataSourceWrapper.java @@ -19,7 +19,7 @@ **/ package com.raytheon.uf.edex.plugin.npp.viirs.dao; -import com.raytheon.uf.common.geospatial.interpolation.data.DataSource; +import com.raytheon.uf.common.numeric.source.DataSource; /** * Wraps a {@link DataSource} and checks for an array of missingValues and diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.nwsauth/res/spring/nwsauth-request.xml b/edexOsgi/com.raytheon.uf.edex.plugin.nwsauth/res/spring/nwsauth-request.xml index 5ba553fac3..b0e94792a6 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.nwsauth/res/spring/nwsauth-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.nwsauth/res/spring/nwsauth-request.xml @@ -4,14 +4,14 @@ + class="com.raytheon.uf.edex.auth.authentication.HonorSystemAuthenticator" /> + class="com.raytheon.uf.edex.auth.authentication.EmptyAuthenticationStorage" /> - + + + com.raytheon.localization.site/common_static/purge diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc-routes.xml b/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc-routes.xml index 22b4dd3a02..72600a2472 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc-routes.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc-routes.xml @@ -1,5 +1,5 @@ @@ -15,12 +15,6 @@ - - - - diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc.xml b/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc.xml index 59b7ebee1d..58d73aa17e 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/res/spring/obs-ogc.xml @@ -1,7 +1,6 @@ + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/src/com/raytheon/uf/edex/plugin/obs/ogc/metar/MetarFeatureFactory.java b/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/src/com/raytheon/uf/edex/plugin/obs/ogc/metar/MetarFeatureFactory.java index 1d4d52e631..9ce71132a7 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/src/com/raytheon/uf/edex/plugin/obs/ogc/metar/MetarFeatureFactory.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.obs.ogc/src/com/raytheon/uf/edex/plugin/obs/ogc/metar/MetarFeatureFactory.java @@ -26,6 +26,7 @@ * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Aug 3, 2011 bclement Initial creation + * Jun 11, 2011 2061 bsteffen Remove units constants from metar * */ package com.raytheon.uf.edex.plugin.obs.ogc.metar; @@ -40,6 +41,7 @@ import java.util.Map; import java.util.Set; import javax.measure.quantity.Pressure; +import javax.measure.unit.SI; import javax.measure.unit.Unit; import org.geotools.feature.simple.SimpleFeatureBuilder; @@ -224,7 +226,7 @@ public class MetarFeatureFactory implements FeatureFactory { * @return */ protected static String get3HrPress(float press) { - Unit unit = MetarRecord.PRESSURE_UNIT; + Unit unit = SI.HECTO(SI.PASCAL); return String.format("%f %s", press, unit.toString()); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/res/spring/preciprate-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/res/spring/preciprate-ingest.xml index eb49a866b7..12eba1f35e 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/res/spring/preciprate-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/res/spring/preciprate-ingest.xml @@ -6,11 +6,16 @@ + + + + + - + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateGenerator.java b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateGenerator.java index b336638cae..4b5a6f1283 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateGenerator.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateGenerator.java @@ -51,6 +51,7 @@ import com.raytheon.uf.edex.plugin.preciprate.common.PrecipRateConfig; * Jan 25, 2010 3796 D. Hladky Initial release * Feb 25, 2013 1660 D. Hladky Fixed SCAN configuration bug. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Aug 26, 2014 3503 bclement removed constructDataURI() call * * * @@ -171,7 +172,6 @@ public class PrecipRateGenerator extends CompositeProductGenerator implements precipRateRec.setCoefficent(pr.getDhrMap().get( DHRValues.ZRPOWERCOEFF)); - precipRateRec.constructDataURI(); this.setPluginDataObjects(new PrecipRateRecord[] { precipRateRec }); statusHandler.handle(Priority.INFO, precipRateRec.getIcao() diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateURIFilter.java b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateURIFilter.java index 8f57085a99..d794464564 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateURIFilter.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/PrecipRateURIFilter.java @@ -24,13 +24,25 @@ import java.util.regex.Pattern; import com.raytheon.edex.urifilter.URIFilter; import com.raytheon.edex.urifilter.URIGenerateMessage; +/** + * Filter for data radar data URIs that have a specific tiltAngle, layer, dhr, + * etc + * + *
      + * 
      + * SOFTWARE HISTORY
      + * 
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + * ???          ???         ???        Initial creation
      + * Aug 26, 2014 3503       bclement    removed serial version id
      + * 
      + * 
      + * + * @version 1.0 + */ public class PrecipRateURIFilter extends URIFilter { - /** - * - */ - private static final long serialVersionUID = 1346354654L; - public PrecipRateURIFilter(String name) { super(name); logger.debug("PrecipRateFilter " + name + " Filter construction..."); diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/common/PrecipRateConfig.java b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/common/PrecipRateConfig.java index 1d5d9ac131..90fd9f863d 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/common/PrecipRateConfig.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.preciprate/src/com/raytheon/uf/edex/plugin/preciprate/common/PrecipRateConfig.java @@ -39,6 +39,24 @@ import com.raytheon.uf.edex.plugin.preciprate.PrecipRateURIGenerateMessage; import com.raytheon.uf.edex.plugin.scan.common.ScanCommonUtils; import com.vividsolutions.jts.geom.Coordinate; +/** + * Config holder object for radar parameters used to filter for precipitation + * rates + * + *
      + * 
      + * SOFTWARE HISTORY
      + * 
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + * ???          ???         ???        Initial creation
      + * Aug 26, 2014 3503       bclement    removed unused maxExtent field
      + * 
      + * 
      + * + * @author bclement + * @version 1.0 + */ public class PrecipRateConfig { private static final transient IUFStatusHandler statusHandler = UFStatus @@ -65,9 +83,6 @@ public class PrecipRateConfig { /** The geometry for the radar **/ private GridGeometry2D radarGeometry = null; - /** max radar extent **/ - private double maxExtent = 0.00; - /** create a date formatter for SQL **/ private SimpleDateFormat dateFmt = new SimpleDateFormat( "MMM dd yy HH:mm:ss"); diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.qc/META-INF/MANIFEST.MF index 412794d00c..08aa51ece8 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/META-INF/MANIFEST.MF @@ -2,20 +2,15 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Qc Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.qc -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.edex.common;bundle-version="1.11.17", com.raytheon.uf.edex.pointdata;bundle-version="1.11.17", - com.raytheon.uf.common.pointdata;bundle-version="1.11.17", com.raytheon.uf.common.dataplugin.qc;bundle-version="1.0.0", com.raytheon.uf.common.python;bundle-version="1.11.17", - org.jep;bundle-version="1.0.0", com.raytheon.uf.common.localization;bundle-version="1.11.17", - javax.persistence;bundle-version="1.0.0", ucar.nc2;bundle-version="1.0.0" Export-Package: com.raytheon.uf.edex.plugin.qc.common -Import-Package: com.raytheon.edex.uengine.tasks.query, - com.raytheon.uf.common.message.response, - com.raytheon.uf.common.status, - org.apache.commons.logging +Import-Package: com.raytheon.uf.common.message.response, + com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/build.properties b/edexOsgi/com.raytheon.uf.edex.plugin.qc/build.properties index 5791d48d5f..ad8d78badb 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/build.properties +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/build.properties @@ -2,4 +2,5 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - res/ + res/,\ + resources/ diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/ldadmesonet.xml b/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/ldadmesonet.xml index 6503c07eb3..9b449af6d5 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/ldadmesonet.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/ldadmesonet.xml @@ -21,7 +21,7 @@ - @@ -36,7 +36,7 @@ fillValue="-2147483647.0" /> - - - @@ -108,11 +108,11 @@ - - - @@ -203,7 +203,7 @@ - - @@ -254,7 +254,7 @@ - @@ -277,7 +277,7 @@ - diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/msas.xml b/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/msas.xml index 1a721c14b7..9742619d23 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/msas.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/pointdata/pdd/msas.xml @@ -39,8 +39,8 @@ - - + + @@ -54,7 +54,7 @@ - + @@ -68,7 +68,7 @@ - + @@ -82,7 +82,7 @@ - + @@ -99,7 +99,7 @@ - + @@ -113,7 +113,7 @@ - + @@ -127,7 +127,7 @@ - + @@ -139,7 +139,7 @@ - + @@ -153,7 +153,7 @@ - + @@ -165,5 +165,5 @@ - + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/spring/qc-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/spring/qc-ingest.xml index 65dcbe6478..c5179f4a05 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/spring/qc-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/res/spring/qc-ingest.xml @@ -9,15 +9,9 @@
      - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/QCScanner.java b/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/QCScanner.java index f84d8bd4e9..feafade21e 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/QCScanner.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/QCScanner.java @@ -36,13 +36,13 @@ import ucar.nc2.Variable; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.qc.QCRecord; -import com.raytheon.uf.common.dataplugin.qc.internal.QCPaths; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.DataTime; import com.raytheon.uf.edex.database.plugin.PluginFactory; import com.raytheon.uf.edex.plugin.qc.dao.QCDao; +import com.raytheon.uf.edex.plugin.qc.internal.QCPaths; /** * Scans NetCDF files generated by A1 legacy applications and generates QCRecord @@ -60,6 +60,7 @@ import com.raytheon.uf.edex.plugin.qc.dao.QCDao; * May 16, 2013 1869 bsteffen Remove DataURI column from qc. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract * Feb 20, 2014 DR 17098 D. Friedman Filter out invalid lat/lon values. + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -208,8 +209,8 @@ public class QCScanner { while (ri < records.length) { QCRecord r = new QCRecord(); double obsTime = dObsTime.getDouble(ri); - double lat = dLat.getDouble(ri); - double lon = dLon.getDouble(ri); + float lat = dLat.getFloat(ri); + float lon = dLon.getFloat(ri); if ((obsTime != vObsTimeFillValue) && ((vObsTimeMissingValue == null) || (vObsTimeMissingValue != obsTime)) && Math.abs(lon) <= 180 && Math.abs(lat) <= 90) { diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/common/QCDataQuery.java b/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/common/QCDataQuery.java index e888e8fd17..a3898817ae 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/common/QCDataQuery.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/common/QCDataQuery.java @@ -30,12 +30,12 @@ import java.util.Map; import java.util.Set; import com.raytheon.uf.common.dataplugin.PluginException; -import com.raytheon.uf.common.dataplugin.qc.internal.QCPaths; import com.raytheon.uf.common.message.response.ResponseMessageCatalog; import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.util.FileUtil; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.plugin.qc.dao.QCDao; +import com.raytheon.uf.edex.plugin.qc.internal.QCPaths; import com.raytheon.uf.edex.pointdata.PointDataQuery; /** diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/dao/QCDao.java b/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/dao/QCDao.java index 46405834a0..1110aed581 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/dao/QCDao.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qc/src/com/raytheon/uf/edex/plugin/qc/dao/QCDao.java @@ -28,13 +28,9 @@ import java.util.Map; import jep.JepException; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.qc.QCRecord; -import com.raytheon.uf.common.dataplugin.qc.internal.QCPaths; import com.raytheon.uf.common.datastorage.StorageException; import com.raytheon.uf.common.datastorage.StorageStatus; import com.raytheon.uf.common.datastorage.records.IntegerDataRecord; @@ -42,8 +38,11 @@ import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.python.thread.PythonScriptManager; import com.raytheon.uf.common.python.thread.PythonScriptManager.ScriptRequest; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.database.query.DatabaseQuery; +import com.raytheon.uf.edex.plugin.qc.internal.QCPaths; import com.raytheon.uf.edex.pointdata.PointDataPluginDao; /** @@ -55,6 +54,7 @@ import com.raytheon.uf.edex.pointdata.PointDataPluginDao; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 12/04/2009 3408 bphillip Initial creation + * Aug 15, 2014 3530 bclement removed commons logging * * * @@ -68,7 +68,8 @@ public class QCDao extends PointDataPluginDao { private static PythonScriptManager psm; - private transient Log logger = LogFactory.getLog(getClass()); + private static final transient IUFStatusHandler logger = UFStatus + .getHandler(QCDao.class); static { pdds = QCPaths.getPointDataDescriptions(); diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/META-INF/MANIFEST.MF index e512baadbe..1734a35ac9 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/META-INF/MANIFEST.MF @@ -2,9 +2,8 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: QPF Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.qpf -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization, com.raytheon.uf.viz.core Require-Bundle: com.raytheon.uf.common.monitor;bundle-version="1.0.0", com.raytheon.uf.edex.cpgsrv;bundle-version="1.11.1";resolution:=optional, com.raytheon.uf.common.dataplugin.qpf, @@ -22,9 +21,9 @@ Require-Bundle: com.raytheon.uf.common.monitor;bundle-version="1.0.0", com.raytheon.uf.edex.database Import-Package: com.raytheon.edex.urifilter, com.raytheon.uf.common.dataplugin.grid, + com.raytheon.uf.edex.core, com.raytheon.uf.edex.plugin.scan.common, org.apache.commons.logging -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Export-Package: com.raytheon.uf.edex.plugin.qpf, com.raytheon.uf.edex.plugin.qpf.common diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/res/spring/qpf-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/res/spring/qpf-ingest.xml index 2b90e0b133..42168345e0 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/res/spring/qpf-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/res/spring/qpf-ingest.xml @@ -6,11 +6,16 @@ + + + + + - + diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/QPF.java b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/QPF.java index 3c434a6dc3..1135d01ca3 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/QPF.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/QPF.java @@ -22,9 +22,6 @@ package com.raytheon.uf.edex.plugin.qpf; import java.util.HashMap; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.uf.common.dataplugin.qpf.QPFRecord; import com.raytheon.uf.common.dataplugin.qpf.QPFUtils; import com.raytheon.uf.common.dataplugin.radar.util.RadarConstants; @@ -32,6 +29,9 @@ import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.ScanUtils; import com.raytheon.uf.common.monitor.xml.SCANModelParameterXML; import com.raytheon.uf.common.monitor.xml.SCANSiteXML; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.edex.dat.utils.ScanDataCache; import com.raytheon.uf.edex.plugin.qpf.common.QPFConfig; import com.vividsolutions.jts.geom.Coordinate; @@ -100,14 +100,25 @@ import com.vividsolutions.jts.geom.Coordinate; * objects. December 2007 Lingyan Xin (SAIC/MDL) - changed the * interface of writeNetcdf() to output more attributes in netCDF * file for standard file reading. - * - * Translated to Java by D Hladky 16Feb2009 + * + * QPF algorithm + * + *
      + * SOFTWARE HISTORY
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + * 02/17/2009   1981       dhladky    Initial Creation.
      + * 02/26/2014   2836       dhladky      Added diagnostic information.
      + * 
      + * + * @author dhladky + * @version 1.0 */ public class QPF { - /** logger **/ - private final Log logger = LogFactory.getLog(getClass()); + private static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(QPF.class); /** QPFConfig object */ private QPFConfig qpf_config = null; @@ -218,7 +229,7 @@ public class QPF { // use STI to get the speed and direction data for cells if (qpf_config.isSTI()) { - logger.info(qpf_config.getIcao() + ": Processing STI: " + statusHandler.info(qpf_config.getIcao() + ": Processing STI: " + qpf_config.getSTI().getDataURI()); // extract the avg speed and direction avg_spd = new Float(qpf_config.getSTI().getRecordVals( @@ -239,8 +250,8 @@ public class QPF { } // use the model data else if (qpf_config.isModel()) { - if (logger.isDebugEnabled()) { - logger.info(qpf_config.getIcao() + ": Processing Model Data"); + if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { + statusHandler.debug(qpf_config.getIcao() + ": Processing Model Data"); } try { @@ -291,13 +302,13 @@ public class QPF { rns_velocity = - (float) (vwind * (60.0 / 4000.0)); use_env_winds = true; - logger.info(qpf_config.getIcao() + statusHandler.info(qpf_config.getIcao() + ": Environmental data to be used to determine upper level winds."); } } } } catch (Exception e) { - logger.error(qpf_config.getIcao() + statusHandler.error(qpf_config.getIcao() + ": Failed to extract U & V wind data. ", e); } } @@ -318,7 +329,7 @@ public class QPF { rns_velocity = - (float) (model_vwind * (60.0 / 4000.0)); use_env_winds = true; } else { - logger.info(qpf_config.getIcao() + statusHandler.info(qpf_config.getIcao() + ": Processing BINCOR Direct for UV wind."); int currTime = (int) QPFURIFilter.getTime( qpf_config.getCurrentCZ().getDataURI(), @@ -471,7 +482,7 @@ public class QPF { floats = QPFUtils.prob_fcst(irain_0_30, irain_0_60, vil_0_60, maxvil_7x7, nvil10_3x3, n24dbz); floats.put(QPFRecord.DATA_TYPE.AV_VIL.name(), itime_avg_vil); - logger.debug("QPF: " + qpf_config.getIcao() + " Generation success..."); + statusHandler.debug("QPF: " + qpf_config.getIcao() + " Generation success..."); } @@ -585,9 +596,18 @@ public class QPF { while (doSearch) { for (id = imove_last - 2; id <= imove_last + 2; id++) { for (jd = jmove_last - 2; jd <= jmove_last + 2; jd++) { - if (binc[id + 10][jd + 10] >= 0.0) { - continue; + + try { + if (binc[id + 10][jd + 10] >= 0.0) { + continue; + } + } catch (ArrayIndexOutOfBoundsException aioe) { + statusHandler.error("jd = "+jd+" id = "+id +"\n" + +"jd + 10 = "+(jd+10)+" id + 10 = "+(id + 10) +"\n" + +"imove_last = "+imove_last+" jmove_last = "+jmove_last +"\n" + +"binc[][] size = "+binc.length, aioe); } + // Displace the portion of grid1 that lies between JMIN to // JMAX // and IMIN to IMAX by jd in the j direction and by id in diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/common/QPFConfig.java b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/common/QPFConfig.java index bb46f7f36a..1a35481e33 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/common/QPFConfig.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.qpf/src/com/raytheon/uf/edex/plugin/qpf/common/QPFConfig.java @@ -40,6 +40,7 @@ import com.raytheon.uf.common.monitor.xml.SCANSiteXML; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.dat.utils.DATUtils; import com.raytheon.uf.edex.dat.utils.ScanDataCache; import com.raytheon.uf.edex.plugin.qpf.QPFGenerator; @@ -59,9 +60,10 @@ import com.vividsolutions.jts.geom.Coordinate; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * 02/17/2009 1981 dhladky Initial Creation. - * 01/07/2013 DR 15647 gzhang Use logger.warn for null earlyVilURI/earlyCZURI. - * 11/11/2013 2377 bclement setRadarRecords returns bool for success + * 02/17/2009 1981 dhladky Initial Creation. + * 01/07/2013 DR 15647 gzhang Use logger.warn for null earlyVilURI/earlyCZURI. + * 11/11/2013 2377 bclement setRadarRecords returns bool for success + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @author dhladky @@ -357,11 +359,11 @@ public class QPFConfig { Set vilKeys = vilmap.keySet(); Iterator iter1 = vilKeys.iterator(); while (iter1.hasNext()) { - Date vilcal = (Date) iter1.next(); + Date vilcal = iter1.next(); Set czKeys = czMap.keySet(); Iterator iter2 = czKeys.iterator(); while (iter2.hasNext()) { - Date czcal = (Date) iter2.next(); + Date czcal = iter2.next(); if (czcal.equals(vilcal)) { earlyVilURI = vilmap.get(vilcal); earlyCZURI = czMap.get(czcal); @@ -375,7 +377,9 @@ public class QPFConfig { } if (earlyVilURI == null || earlyCZURI == null) { - qpfgen.logger.warn("QPFConfig: No previous data for QPF. Check the RADAR OP Mode.");// DR 15647 + qpfgen.logger + .warn("QPFConfig: No previous data for QPF. Check the RADAR OP Mode.");// DR + // 15647 return false; } @@ -542,13 +546,25 @@ public class QPFConfig { SCANModelParameterXML paramXMLU = siteXML.getModelParameter("U700"); SCANModelParameterXML paramXMLV = siteXML.getModelParameter("V700"); - int interval = 1440; + int interval = TimeUtil.MINUTES_PER_DAY; + /* + * FIXME the inner calls to ####Product.getGridProduct below will + * always return null. The second parameter is supposed to be the + * model (e.g. RUC130) but is passing in the parameter. + * + * Despite this problem, the code continues to function without + * exceptions because the call to DATUtils.getMostRecentGridRecord() + * will see the null record and then return the cached record, which + * was retrieved correctly. + */ GridRecord modelURec = DATUtils.getMostRecentGridRecord(interval, - U700Product.getSQL(interval, U700Product.U700), paramXMLU); + U700Product.getGridRecord(interval, U700Product.U700), + paramXMLU); GridRecord modelVRec = DATUtils.getMostRecentGridRecord(interval, - V700Product.getSQL(interval, V700Product.V700), paramXMLV); + V700Product.getGridRecord(interval, V700Product.V700), + paramXMLV); if (modelURec != null && modelVRec != null) { useModel = true; diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/META-INF/MANIFEST.MF index 9931669e57..bd61ea5495 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/META-INF/MANIFEST.MF @@ -2,8 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: McIDAS Satellite Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.satellite.mcidas -Bundle-Version: 1.12.1174.qualifier -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: Raytheon Require-Bundle: com.raytheon.edex.common, com.raytheon.uf.edex.decodertools;bundle-version="1.0.0", @@ -13,9 +12,8 @@ Require-Bundle: com.raytheon.edex.common, javax.persistence, com.raytheon.uf.common.dataplugin.satellite;bundle-version="1.0.0", com.raytheon.edex.plugin.satellite;bundle-version="1.12.1174" -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Import-Package: com.raytheon.edex.uengine.tasks.query, - com.raytheon.uf.common.localization, +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Import-Package: com.raytheon.uf.common.localization, com.raytheon.uf.common.menus, com.raytheon.uf.common.menus.xml, com.raytheon.uf.common.status diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/res/spring/satellite-mcidas-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/res/spring/satellite-mcidas-ingest.xml index 988a5a7b45..d212f7ab03 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/res/spring/satellite-mcidas-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/res/spring/satellite-mcidas-ingest.xml @@ -11,15 +11,9 @@ - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/src/com/raytheon/uf/edex/plugin/satellite/mcidas/McidasSatelliteDecoder.java b/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/src/com/raytheon/uf/edex/plugin/satellite/mcidas/McidasSatelliteDecoder.java index 22bb19afa4..5402051e08 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/src/com/raytheon/uf/edex/plugin/satellite/mcidas/McidasSatelliteDecoder.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.satellite.mcidas/src/com/raytheon/uf/edex/plugin/satellite/mcidas/McidasSatelliteDecoder.java @@ -36,7 +36,7 @@ import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.plugin.satellite.mcidas.util.McidasSatelliteLookups; import com.raytheon.uf.edex.plugin.satellite.mcidas.util.McidasSatelliteLookups.PhysicalElementValue; @@ -69,6 +69,8 @@ import com.raytheon.uf.edex.plugin.satellite.mcidas.util.McidasSatelliteLookups. * 07/12/2012 798 jkorman Changed projection "magic" numbers * 09/24/2012 1210 jkorman Modified the decode method to create the * IDataRecord required by the SatelliteDao + * 12/03/2013 DR 16841 D. Friedman Allow record overwrites + * 09/18/2014 3627 mapeters Updated deprecated method calls. * * * @author @@ -244,9 +246,10 @@ public class McidasSatelliteDecoder { } rec.setTraceId(traceId); - rec.setPersistenceTime(TimeTools.getSystemCalendar().getTime()); - rec.constructDataURI(); + rec.setPersistenceTime(TimeUtil.newGmtCalendar().getTime()); + rec.setOverwriteAllowed(true); + // Set the data into the IDataRecord // Set the data into the IDataRecord IDataRecord dataRec = SatelliteRecord.getDataRecord(rec); if (dataRec != null) { @@ -300,7 +303,6 @@ public class McidasSatelliteDecoder { double clon = flipLon(unpackDdmmss(nrmlLonDDMMSS), westPositive); double clat = unpackDdmmss(stdLatDDMMSS); double dx = spacingAtStdLatInMeters * xImgRes; - double dy = spacingAtStdLatInMeters * yImgRes; double phi0r = clat * DTR; double rxp = (((double) (elementOfEquator - ulX) / xImgRes) + 1.); @@ -320,10 +322,10 @@ public class McidasSatelliteDecoder { la2 = (float) (((2. * Math.atan(arg)) - HALFPI) * RTD); lo2 = (float) prnlon((clon + (((dx * dxp) / rcos) * RTD))); lo2 = (float) prnlon(lo2); - - result = SatSpatialFactory.getInstance().getMapCoverage( - SatSpatialFactory.PROJ_MERCATOR, nx, ny, (float) dx, - (float) dy, (float) clon, (float) clat, la1, lo1, la2, lo2); + + result = SatSpatialFactory.getInstance().getCoverageTwoCorners( + SatSpatialFactory.PROJ_MERCATOR, nx, ny, (float) clon, + (float) clat, la1, lo1, la2, lo2); } else { unimplemented(String.format("navigation type \"%s\"", navType)); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.scan/META-INF/MANIFEST.MF index 2aacc78cbe..8176c66d41 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/META-INF/MANIFEST.MF @@ -2,10 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Scan Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.scan -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Eclipse-RegisterBuddy: com.raytheon.edex.common, com.raytheon.uf.common.serialization, com.raytheon.uf.viz.core +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin.binlightning;bundle-version="1.11.26", com.raytheon.uf.common.dataplugin.scan;bundle-version="1.11.26", com.raytheon.uf.common.monitor;bundle-version="1.11.26", @@ -21,6 +20,7 @@ Require-Bundle: com.raytheon.uf.common.dataplugin.binlightning;bundle-version="1 com.raytheon.uf.common.localization;bundle-version="1.12.1174", com.raytheon.uf.edex.dat.utils;bundle-version="1.12.1174" Export-Package: com.raytheon.uf.edex.plugin.scan, + com.raytheon.uf.edex.plugin.scan.lightning, com.raytheon.uf.edex.plugin.scan.process Import-Package: com.raytheon.uf.edex.menus, javax.measure.converter, diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/res/spring/scan-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.scan/res/spring/scan-ingest.xml index 863ea586b8..f381b67117 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/res/spring/scan-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/res/spring/scan-ingest.xml @@ -15,18 +15,20 @@ - + + + + + + - + @@ -41,8 +43,8 @@ - + +
      \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanGenerator.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanGenerator.java index 512f6c3326..82f5582a39 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanGenerator.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanGenerator.java @@ -26,6 +26,7 @@ import java.util.HashSet; import java.util.Iterator; import java.util.Set; +import com.raytheon.edex.site.SiteUtil; import com.raytheon.edex.urifilter.URIFilter; import com.raytheon.edex.urifilter.URIGenerateMessage; import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage; @@ -34,14 +35,12 @@ import com.raytheon.uf.common.dataplugin.scan.data.ScanTableData; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.events.MonitorConfigEvent; import com.raytheon.uf.common.monitor.events.MonitorConfigListener; -import com.raytheon.uf.common.monitor.scan.config.SCANConfig; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; import com.raytheon.uf.common.serialization.SerializationException; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.core.props.PropertiesFactory; import com.raytheon.uf.edex.cpgsrv.CompositeProductGenerator; import com.raytheon.uf.edex.dat.utils.DatMenuUtil; import com.raytheon.uf.edex.dat.utils.ScanDataCache; @@ -57,6 +56,9 @@ import com.raytheon.uf.edex.dat.utils.ScanDataCache; * ------------ ---------- ----------- -------------------------- * Feb 25, 2013 1660 D. Hladky Fixed SCAN configuration bug. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * May 12, 2014 3133 njensen Remove unused field + * Jul 10, 2014 2914 garmendariz Remove EnvProperties + * Aug 26, 2014 3503 bclement removed constructDataURI() call * * * @@ -80,9 +82,6 @@ public class ScanGenerator extends CompositeProductGenerator implements /** Set of icaos to filter for */ private Set icaos = null; - /** SCAN table Configuration object **/ - public SCANConfig scanConfig = null; - /** run configuration manager **/ public SCANRunSiteConfigurationManager srcm = null; @@ -212,7 +211,6 @@ public class ScanGenerator extends CompositeProductGenerator implements scanRec.setTableData(tables.get(table)); scanRec.setVolScanTime(tables.get(table).getVolScanTime()); - scanRec.constructDataURI(); scanRecords[i] = scanRec; i++; } @@ -301,11 +299,9 @@ public class ScanGenerator extends CompositeProductGenerator implements resetFilters(); DatMenuUtil dmu = new DatMenuUtil(); - dmu.setDatSite(PropertiesFactory.getInstance().getEnvProperties() - .getEnvValue("SITENAME")); + dmu.setDatSite(SiteUtil.getSite()); dmu.setOverride(true); dmu.createMenus(); } } - } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanURIFilter.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanURIFilter.java index 312744d120..e3526cccb4 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanURIFilter.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/ScanURIFilter.java @@ -33,7 +33,6 @@ import org.geotools.coverage.grid.GridGeometry2D; import com.raytheon.edex.urifilter.URIFilter; import com.raytheon.edex.urifilter.URIGenerateMessage; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.binlightning.BinLightningRecord; import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.message.DataURINotificationMessage; @@ -50,7 +49,6 @@ import com.raytheon.uf.common.dataplugin.scan.data.TVSTableData; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.PathManagerFactory; import com.raytheon.uf.common.monitor.scan.ScanUtils; -import com.raytheon.uf.common.monitor.scan.config.SCANConfig; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; import com.raytheon.uf.common.monitor.scan.xml.ScanAlarmXML; import com.raytheon.uf.common.monitor.xml.SCANModelParameterXML; @@ -58,6 +56,7 @@ import com.raytheon.uf.common.monitor.xml.SCANSiteXML; import com.raytheon.uf.common.serialization.SingleTypeJAXBManager; import com.raytheon.uf.common.sounding.VerticalSounding; import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.edex.dat.utils.DATUtils; import com.raytheon.uf.edex.plugin.scan.common.ScanCommonUtils; import com.raytheon.uf.edex.plugin.scan.process.CAPEProduct; @@ -91,6 +90,8 @@ import com.vividsolutions.jts.geom.Coordinate; * Mar 23, 2010 dhladky Initial creation * Jun 21, 2013 7613 zhao Modified setGridRecords() etc. * Oct 15, 2013 2361 njensen Use JAXBManager for XML + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column + * May 12, 2014 3133 njensen Remove unused field * * * @@ -191,9 +192,6 @@ public class ScanURIFilter extends URIFilter { init(); } - /** SCAN table Configuration object **/ - public SCANConfig scanConfig = null; - public String getWmo() { return wmo; } @@ -885,76 +883,74 @@ public class ScanURIFilter extends URIFilter { /** * Set Grib Record in Model Data */ - public void setGridRecords() { + public void initializeGridRecords() { try { - GridRecord[] records = { null, null, null, null, null, null, null }; - records = getGridRecords(); + ScanGridRecordSet records = getGridData(); - if (records[0] != null) { + if (records.getCape() != null) { scan.getCache() .getModelData() .setGridRecord( site.getModelParameter(CAPEProduct.cape) .getModelName(), CAPEProduct.cape, - records[0]); + records.getCape()); } - if (records[1] != null) { + if (records.getHeli() != null) { scan.getCache() .getModelData() .setGridRecord( site.getModelParameter(HELIProduct.heli) .getModelName(), HELIProduct.heli, - records[1]); + records.getHeli()); } - if (records[2] != null) { + if (records.getU500() != null) { scan.getCache() .getModelData() .setGridRecord( site.getModelParameter(U500Product.U500) .getModelName(), U500Product.U500, - records[2]); + records.getU500()); } - if (records[3] != null) { + if (records.getU700() != null) { scan.getCache() .getModelData() .setGridRecord( site.getModelParameter(U700Product.U700) .getModelName(), U700Product.U700, - records[3]); + records.getU700()); } - if (records[4] != null) { + if (records.getV700() != null) { scan.getCache() .getModelData() .setGridRecord( site.getModelParameter(V700Product.V700) .getModelName(), V700Product.V700, - records[4]); + records.getV700()); } - if (records[5] != null) { + if (records.getGh500() != null) { scan.getCache() .getModelData() .setGridRecord( site.getModelParameter(GH500Product.GH500) .getModelName(), GH500Product.GH500, - records[5]); + records.getGh500()); } - if (records[6] != null) { + if (records.getGh1000() != null) { scan.getCache() .getModelData() .setGridRecord( site.getModelParameter(GH1000Product.GH1000) .getModelName(), GH1000Product.GH1000, - records[6]); + records.getGh1000()); } } catch (Exception e) { - logger.debug("Grib record setter failed....."); - e.printStackTrace(); + logger.error("Grib record initialization failed", e); } } @@ -1062,7 +1058,7 @@ public class ScanURIFilter extends URIFilter { * to retrieve the data from a database. */ public void init() { - setGridRecords(); + initializeGridRecords(); setSoundingRecord(ScanProduct.UA, ""); } @@ -1136,127 +1132,67 @@ public class ScanURIFilter extends URIFilter { } /** - * get Populated grib records for CAPE and HELI - * - * @return - */ - public GridRecord[] getGridRecords() throws PluginException { - - GridRecord[] records = { null, null, null, null, null, null, null }; - try { - String[] modelUris = getModelSQL(); - for (String uri : modelUris) { - logger.info(" model uri = " + uri); - } - for (int i = 0; i < modelUris.length; i++) { - if (!modelUris[i].isEmpty()) { - records[i] = DATUtils.getGridRecord(modelUris[i]); - } else { - logger.info(" modelUris[" + i + "] is empty"); - } - } - // // CAPE - // records[0] = DATUtils.getGridRecord(modelUris[0]); - // // HELI - // records[1] = DATUtils.getGridRecord(modelUris[1]); - // // U500 - // records[2] = DATUtils.getGridRecord(modelUris[2]); - // // U700 - // records[3] = DATUtils.getGridRecord(modelUris[3]); - // // V700 - // records[4] = DATUtils.getGridRecord(modelUris[4]); - // // GH500 - // records[5] = DATUtils.getGridRecord(modelUris[5]); - // // GH1000 - // records[6] = DATUtils.getGridRecord(modelUris[6]); - } catch (Exception e) { - logger.error("No Grib record(s) found....."); - logger.error(e.toString()); - e.printStackTrace(); - } - return records; - } - - /** - * Get the Model SQL Uses the environmental data backup for the + * Get the grid data. Uses the environmental data backup for the * "pull strategy" for All model params. */ - private String[] getModelSQL() throws Exception { + protected ScanGridRecordSet getGridData() throws Exception { SCANSiteXML site = scan.getRunConfig().getSiteConfig(getIcao()); logger.info(" site = " + site.getScanSite()); - int interval = 1440 * 3; - // Set interval to 1 day, 1440 minutes + int interval = TimeUtil.MINUTES_PER_DAY; + ScanGridRecordSet result = new ScanGridRecordSet(); String modelCape = site.getModelParameter(CAPEProduct.cape) .getModelName(); - String sqlCapeUri = CAPEProduct.getSQL(interval, modelCape); - logger.info("modelCape = " + modelCape + "; sqlCapeUri = " + sqlCapeUri); - Object[] objectsCapeUri = scan.dbRequest(sqlCapeUri); + GridRecord cape = CAPEProduct.getGridRecord(interval, modelCape); + logger.info("modelCape = " + modelCape + "; record = " + cape); + DATUtils.populateGridRecord(cape); + result.setCape(cape); String modelHeli = site.getModelParameter(HELIProduct.heli) .getModelName(); - String sqlHeliUri = HELIProduct.getSQL(interval, modelHeli); - logger.info("modelHeli = " + modelHeli + "; sqlHeliUri = " + sqlHeliUri); - Object[] objectsHeliUri = scan.dbRequest(sqlHeliUri); + GridRecord heli = HELIProduct.getGridRecord(interval, modelHeli); + logger.info("modelHeli = " + modelHeli + "; record = " + heli); + DATUtils.populateGridRecord(heli); + result.setHeli(heli); String modelU500 = site.getModelParameter(U500Product.U500) .getModelName(); - String sqlU500Uri = U500Product.getSQL(interval, modelU500); - logger.info("modelU500 = " + modelU500 + "; sqlU500Uri = " + sqlU500Uri); - Object[] objectsU500Uri = scan.dbRequest(sqlU500Uri); + GridRecord u500 = U500Product.getGridRecord(interval, modelU500); + logger.info("modelU500 = " + modelU500 + "; record = " + u500); + DATUtils.populateGridRecord(u500); + result.setU500(u500); String modelU700 = site.getModelParameter(U700Product.U700) .getModelName(); - String sqlU700Uri = U700Product.getSQL(interval, modelU700); - logger.info("modelU700 = " + modelU700 + "; sqlU700Uri = " + sqlU700Uri); - Object[] objectsU700Uri = scan.dbRequest(sqlU700Uri); + GridRecord u700 = U700Product.getGridRecord(interval, modelU700); + logger.info("modelU700 = " + modelU700 + "; record = " + u700); + DATUtils.populateGridRecord(u700); + result.setU700(u700); String modelV700 = site.getModelParameter(V700Product.V700) .getModelName(); - String sqlV700Uri = V700Product.getSQL(interval, modelV700); - logger.info("modelV700 = " + modelV700 + "; sqlV700Uri = " + sqlV700Uri); - Object[] objectsV700Uri = scan.dbRequest(sqlV700Uri); + GridRecord v700 = V700Product.getGridRecord(interval, modelV700); + logger.info("modelV700 = " + modelV700 + "; record = " + v700); + DATUtils.populateGridRecord(v700); + result.setV700(v700); String modelGH500 = site.getModelParameter(GH500Product.GH500) .getModelName(); - String sqlGH500Uri = GH500Product.getSQL(interval, modelGH500); - logger.info("modelGH500 = " + modelGH500 + "; sqlGH500Uri = " - + sqlGH500Uri); - Object[] objectsGH500Uri = scan.dbRequest(sqlGH500Uri); + GridRecord gh500 = GH500Product.getGridRecord(interval, modelGH500); + logger.info("modelGH500 = " + modelGH500 + "; record = " + gh500); + DATUtils.populateGridRecord(gh500); + result.setGh500(gh500); String modelGH1000 = site.getModelParameter(GH1000Product.GH1000) .getModelName(); - String sqlGH1000Uri = GH1000Product.getSQL(interval, modelGH1000); - logger.info("modelGH1000 = " + modelGH1000 + "; sqlGH1000Uri = " - + sqlGH1000Uri); - Object[] objectsGH1000Uri = scan.dbRequest(sqlGH1000Uri); + GridRecord gh1000 = GH1000Product.getGridRecord(interval, modelGH1000); + logger.info("modelGH1000 = " + modelGH1000 + "; record = " + gh1000); + DATUtils.populateGridRecord(gh1000); + result.setGh1000(gh1000); - // always grab the most recent time data - String[] results = { "", "", "", "", "", "", "" }; + return result; - if (objectsCapeUri.length > 0) { - results[0] = (String) objectsCapeUri[0]; - } - if (objectsHeliUri.length > 0) { - results[1] = (String) objectsHeliUri[0]; - } - if (objectsU500Uri.length > 0) { - results[2] = (String) objectsU500Uri[0]; - } - if (objectsU700Uri.length > 0) { - results[3] = (String) objectsU700Uri[0]; - } - if (objectsV700Uri.length > 0) { - results[4] = (String) objectsV700Uri[0]; - } - if (objectsGH500Uri.length > 0) { - results[5] = (String) objectsGH500Uri[0]; - } - if (objectsGH1000Uri.length > 0) { - results[6] = (String) objectsGH1000Uri[0]; - } - return results; } /** diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/CAPEProduct.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/CAPEProduct.java index 47810616ea..96dbc29785 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/CAPEProduct.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/CAPEProduct.java @@ -26,11 +26,27 @@ import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; +/** + * CAPE Product + * + *
      + * 
      + * SOFTWARE HISTORY
      + * Date         Ticket#    Engineer    Description
      + * ------------ ---------- ----------- --------------------------
      + *                                     Initial creation
      + * Apr 24, 2014 2060       njensen     Updates for removal of grid dataURI column
      + * 
      + * 
      + * + * @version 1.0 + */ public class CAPEProduct extends GridProduct { /** @@ -113,13 +129,15 @@ public class CAPEProduct extends GridProduct { } /** - * The SQL for CAPE + * Retrieves the record for CAPE * * @param wmo * @return + * @throws ScanException */ - public static String getSQL(int interval, String model) { - return getGridSQL(interval, model, cape, "SFC", "0.0", + public static GridRecord getGridRecord(int interval, String model) + throws ScanException { + return getGridRecord(interval, model, cape, "SFC", "0.0", Level.getInvalidLevelValueAsString()); } } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH1000Product.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH1000Product.java index 4d7ad4a5cc..7e5e81d098 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH1000Product.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH1000Product.java @@ -26,6 +26,7 @@ import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; @@ -40,6 +41,7 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 27, 2010 5098 grichard Initial creation + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -134,12 +136,14 @@ public class GH1000Product extends GridProduct { } /** - * The SQL + * Retrieves the record for gh1000 * * @return + * @throws ScanException */ - public static String getSQL(int interval, String model) { - return getGridSQL(interval, model, "GH", "MB", "1000.0", + public static GridRecord getGridRecord(int interval, String model) + throws ScanException { + return getGridRecord(interval, model, "GH", "MB", "1000.0", Level.getInvalidLevelValueAsString()); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH500Product.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH500Product.java index ac41d746db..62adc7566b 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH500Product.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GH500Product.java @@ -26,6 +26,7 @@ import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; @@ -40,6 +41,7 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 27, 2010 5098 grichard Initial creation + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -134,12 +136,14 @@ public class GH500Product extends GridProduct { } /** - * The SQL for MODEL 500 thickness + * Retrieves the record for gh500 * * @return + * @throws ScanException */ - public static String getSQL(int interval, String model) { - return getGridSQL(interval, model, "GH", "MB", "500.0", + public static GridRecord getGridRecord(int interval, String model) + throws ScanException { + return getGridRecord(interval, model, "GH", "MB", "500.0", Level.getInvalidLevelValueAsString()); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GridProduct.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GridProduct.java index 37ae0ff582..7fe81debf6 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GridProduct.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/GridProduct.java @@ -19,14 +19,24 @@ **/ package com.raytheon.uf.edex.plugin.scan.process; +import java.util.Date; +import java.util.List; import java.util.regex.Pattern; +import com.raytheon.uf.common.dataplugin.grid.GridConstants; +import com.raytheon.uf.common.dataplugin.grid.GridRecord; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; +import com.raytheon.uf.common.time.SimulatedTime; +import com.raytheon.uf.common.time.util.TimeUtil; +import com.raytheon.uf.edex.database.plugin.PluginDao; +import com.raytheon.uf.edex.database.plugin.PluginFactory; +import com.raytheon.uf.edex.database.query.DatabaseQuery; import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; /** * - * TODO Add Description + * Abstract grid product for SCAN * *
        * 
      @@ -34,8 +44,9 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter;
        * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
      - * Mar 2, 2012             bsteffen     Initial creation
      - * Jun 21, 2013 7613       zhao         Modified getGrigSQL()
      + * Mar 2, 2012             bsteffen    Initial creation
      + * Jun 21, 2013 7613       zhao        Modified getGridSQL()
      + * Apr 24, 2014 2060       njensen     Updates for removal of grid dataURI column
        * 
        * 
      * @@ -52,6 +63,21 @@ public abstract class GridProduct extends ScanProduct { super(uri, tableType, filter); } + /** + * Gets a pattern for matching a URI with the specified parameters. + * + * @param dataset + * @param parameter + * @param levelName + * @param levelOne + * @param levelTwo + * @return + * @deprecated This entire method should be removed and/or replaced, + * possibly by using the PluginNotifier or methods in + * DataURIUtil. At present the method is coupled too tightly to + * the grid dataURI format. + */ + @Deprecated protected static Pattern getGridPattern(String dataset, String parameter, String levelName, String levelOne, String levelTwo) { // Format = @@ -92,34 +118,53 @@ public abstract class GridProduct extends ScanProduct { } /** - * The SQL for MODEL 500 thickness + * Gets the newest grid record that has a reftime newer than the interval + * back in time * - * @return + * @param interval + * the number of minutes back from the current time to check for + * a matching record + * @param dataset + * the grid dataset + * @param parameter + * the grid parameter + * @param levelName + * the grid level name + * @param levelOne + * the grid level one value + * @param levelTwo + * the grid level two value + * @return the newest grid record that matches, or null if none are found + * @throws ScanException */ - public static String getGridSQL(int interval, String dataset, - String parameter, String levelName, String levelOne, String levelTwo) { - StringBuilder sql = new StringBuilder( - "select grid.datauri from grid, grid_info, level where"); - sql.append(" grid.info_id = grid_info.id"); - sql.append(" and"); - // datasetId - sql.append(" grid_info.datasetId = \'" + dataset + "\'"); - sql.append(" and"); - // parameterAbbreviation - sql.append(" grid_info.parameter_abbreviation = \'" + parameter + "\'"); - sql.append(" and"); - // level - sql.append(" level.id = grid_info.level_id"); - sql.append(" and"); - sql.append(" level.masterlevel_name = \'" + levelName + "\'"); - sql.append(" and"); - sql.append(" level.levelonevalue = \'" + levelOne + "\'"); - sql.append(" and"); - sql.append(" level.leveltwovalue = \'" + levelTwo + "\'"); - // interval - sql.append("and reftime > (now()- interval \'" + interval - + " minutes\')"); - sql.append(" order by reftime desc, forecasttime desc" + " limit 1"); - return sql.toString(); + public static GridRecord getGridRecord(int interval, String dataset, + String parameter, String levelName, String levelOne, String levelTwo) + throws ScanException { + DatabaseQuery dbQuery = new DatabaseQuery(GridRecord.class); + dbQuery.addQueryParam(GridConstants.DATASET_ID, dataset); + dbQuery.addQueryParam(GridConstants.PARAMETER_ABBREVIATION, parameter); + dbQuery.addQueryParam(GridConstants.MASTER_LEVEL_NAME, levelName); + dbQuery.addQueryParam(GridConstants.LEVEL_ONE, levelOne); + dbQuery.addQueryParam(GridConstants.LEVEL_TWO, levelTwo); + dbQuery.addQueryParam("dataTime.refTime", new Date(SimulatedTime + .getSystemTime().getMillis() + - (interval * TimeUtil.MILLIS_PER_MINUTE)), ">"); + dbQuery.addOrder("dataTime.refTime", false); + dbQuery.addOrder("dataTime.fcstTime", false); + dbQuery.setMaxResults(1); + + try { + PluginDao dao = PluginFactory.getInstance().getPluginDao( + GridConstants.GRID); + List list = dao.queryByCriteria(dbQuery); + GridRecord result = null; + if (list != null && !list.isEmpty()) { + result = (GridRecord) list.get(0); + } + return result; + } catch (Exception e) { + throw new ScanException("Error querying database for grid record " + + dbQuery, e); + } } } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/HELIProduct.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/HELIProduct.java index 24fde781d8..23d6510088 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/HELIProduct.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/HELIProduct.java @@ -26,6 +26,7 @@ import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; @@ -41,6 +42,7 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; * ------------ ---------- ----------- -------------------------- * May 18, 2010 5098 grichard Initial creation * Jun 20, 2013 7613 zhao Modified getSQL() + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -131,13 +133,14 @@ public class HELIProduct extends GridProduct { } /** - * The SQL HELI + * Retrieves the record for heli * * @param interval * @return + * @throws ScanException */ - public static String getSQL(int interval, String model) { - return getGridSQL(interval, model, "Heli", "FHAG", "0.0", - "3000.0"); + public static GridRecord getGridRecord(int interval, String model) + throws ScanException { + return getGridRecord(interval, model, "Heli", "FHAG", "0.0", "3000.0"); } } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/LightningProduct.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/LightningProduct.java index 164d96976a..14938b2ee2 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/LightningProduct.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/LightningProduct.java @@ -26,9 +26,9 @@ import com.raytheon.uf.common.dataplugin.binlightning.BinLightningRecord; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; -import com.raytheon.uf.common.monitor.scan.ScanUtils; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; +import com.raytheon.uf.edex.plugin.scan.lightning.LightningRetriever; /** * @@ -38,7 +38,8 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * 05/05/2009 2037 dhladky Initial Creation. + * 05/05/2009 2037 dhladky Initial Creation. + * 05/14/2014 3133 njensen Use LightingRetriever instead of ScanUtils * * * @@ -83,7 +84,7 @@ public class LightningProduct extends ScanProduct { BinLightningRecord lightRec = null; try { - lightRec = ScanUtils.getLightningRecord(uri); + lightRec = LightningRetriever.getLightningRecord(uri); } catch (Exception e) { e.printStackTrace(); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/MesoCycloneTabularProduct.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/MesoCycloneTabularProduct.java index 3c4ae305ce..a8a1c49b15 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/MesoCycloneTabularProduct.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/MesoCycloneTabularProduct.java @@ -62,6 +62,7 @@ import com.vividsolutions.jts.geom.Coordinate; * as the ids in source file. * 11/13/2012 14368 Xiaochuan Required to set alarm time in a quiet time period * from the last event to new event (new storm come in). + * 03/12/2014 2904 dhladky Check for occasional Null MesoMap. * * * @@ -216,114 +217,115 @@ public class MesoCycloneTabularProduct extends RadarProduct { String dazm = null; String drng = null; - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_CIRC_ID)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - row.setIdent(featureVal); - } + if (mesoMap != null) { - featureVal = (mesoMap - .get(RadarConstants.MapValues.MESO_AZIMUTH_DIRECTION)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - row.setAzm(new Double(featureVal)); - dazm = row.getAzm().toString(); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_AZIMUTH_RANGE)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - row.setRng(new Double(featureVal)); - drng = new Double(row.getRng() * ScanUtils.NMI_TO_KM * 1000) - .toString(); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MOTION_DIR)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - row.setDir(new Double(featureVal)); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MOTION_SPD)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - row.setSpd(new Double(featureVal)); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_STORM_ID)); - if (((featureVal) != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setStrmID(featureVal); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MSI)); - if (((featureVal) != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setMsi(new Integer(featureVal)); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_SR)); - if (((featureVal) != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setRank(featureVal); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_TVS_TYPE)); - if (((featureVal) != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setTvs(featureVal); - } - - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_BASE)); - if (((featureVal) != null) && !featureVal.equals(BLANK)) { - String base = featureVal; - if (base.startsWith("<") || base.startsWith(">")) { - base = base.substring(1, base.length()).trim(); + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_CIRC_ID)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + row.setIdent(featureVal); } - ((DMDTableDataRow) row).setBase(new Double(base)); - } - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_DEPTH)); - if (((featureVal) != null) && !featureVal.equals(BLANK)) { - String depth = featureVal; - if (depth.startsWith("<") || depth.startsWith(">")) { - depth = depth.substring(1, depth.length()).trim(); + featureVal = (mesoMap + .get(RadarConstants.MapValues.MESO_AZIMUTH_DIRECTION)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + row.setAzm(new Double(featureVal)); + dazm = row.getAzm().toString(); } - ((DMDTableDataRow) row).setDepth(new Double(depth)); - } - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_DEPTH_PERCENT)); - if (((featureVal) != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setRelDepth(new Double(featureVal)); - } + featureVal = (mesoMap + .get(RadarConstants.MapValues.MESO_AZIMUTH_RANGE)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + row.setRng(new Double(featureVal)); + drng = new Double(row.getRng() * ScanUtils.NMI_TO_KM * 1000) + .toString(); + } - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_RV)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setLlVr(new Double(featureVal)); - } + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MOTION_DIR)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + row.setDir(new Double(featureVal)); + } - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MAX_RV_SPD)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setMaxVr(new Double(featureVal)); - } + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MOTION_SPD)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + row.setSpd(new Double(featureVal)); + } - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_DV)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setLlgtg(new Double(featureVal)); - } + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_STORM_ID)); + if (((featureVal) != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setStrmID(featureVal); + } - featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MAX_RV)); - if ((featureVal != null) && !featureVal.equals(BLANK)) { - ((DMDTableDataRow) row).setHtMxVr(new Double(featureVal)); - } + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MSI)); + if (((featureVal) != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setMsi(new Integer(featureVal)); + } - // coor = RadarRecordUtil - // .getDMDLonLatFromFeatureID((RadarRecord) rec, key); + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_SR)); + if (((featureVal) != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setRank(featureVal); + } - if ((dazm != null) && (drng != null)) { - coor = RadarRecordUtil - .getAzRangeLatLon((RadarRecord) rec, key, - ((RadarRecord) rec).getSpatialObject().getLat(), - ((RadarRecord) rec).getSpatialObject().getLon(), - dazm, drng); - } + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_TVS_TYPE)); + if (((featureVal) != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setTvs(featureVal); + } - if (coor != null) { - row.setLat(coor.y); - row.setLon(coor.x); - row.setCounty(getCountyBySpatialQuery(coor)); - row.setCwa(getCWABySpatialQuery(coor)); + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_BASE)); + if (((featureVal) != null) && !featureVal.equals(BLANK)) { + String base = featureVal; + if (base.startsWith("<") || base.startsWith(">")) { + base = base.substring(1, base.length()).trim(); + } + ((DMDTableDataRow) row).setBase(new Double(base)); + } + + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_DEPTH)); + if (((featureVal) != null) && !featureVal.equals(BLANK)) { + String depth = featureVal; + if (depth.startsWith("<") || depth.startsWith(">")) { + depth = depth.substring(1, depth.length()).trim(); + } + ((DMDTableDataRow) row).setDepth(new Double(depth)); + } + + featureVal = (mesoMap + .get(RadarConstants.MapValues.MESO_DEPTH_PERCENT)); + if (((featureVal) != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setRelDepth(new Double(featureVal)); + } + + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_RV)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setLlVr(new Double(featureVal)); + } + + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MAX_RV_SPD)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setMaxVr(new Double(featureVal)); + } + + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_DV)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setLlgtg(new Double(featureVal)); + } + + featureVal = (mesoMap.get(RadarConstants.MapValues.MESO_MAX_RV)); + if ((featureVal != null) && !featureVal.equals(BLANK)) { + ((DMDTableDataRow) row).setHtMxVr(new Double(featureVal)); + } + + if ((dazm != null) && (drng != null)) { + coor = RadarRecordUtil.getAzRangeLatLon((RadarRecord) rec, key, + ((RadarRecord) rec).getSpatialObject().getLat(), + ((RadarRecord) rec).getSpatialObject().getLon(), dazm, + drng); + } + + if (coor != null) { + row.setLat(coor.y); + row.setLon(coor.x); + row.setCounty(getCountyBySpatialQuery(coor)); + row.setCwa(getCWABySpatialQuery(coor)); + } } return row; diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/ScanProduct.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/ScanProduct.java index 10e5aeea04..883c59aead 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/ScanProduct.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/ScanProduct.java @@ -27,10 +27,8 @@ import java.util.List; import org.geotools.referencing.GeodeticCalculator; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.binlightning.BinLightningRecord; import com.raytheon.uf.common.dataplugin.binlightning.impl.LtgStrikeType; -import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; import com.raytheon.uf.common.dataplugin.radar.RadarRecord; @@ -38,9 +36,6 @@ import com.raytheon.uf.common.dataplugin.radar.util.RadarConstants; import com.raytheon.uf.common.dataplugin.scan.data.CellTableDataRow; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableData; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; -import com.raytheon.uf.common.datastorage.IDataStore; -import com.raytheon.uf.common.datastorage.records.FloatDataRecord; -import com.raytheon.uf.common.datastorage.records.IDataRecord; import com.raytheon.uf.common.geospatial.ISpatialQuery; import com.raytheon.uf.common.geospatial.SpatialException; import com.raytheon.uf.common.geospatial.SpatialQueryFactory; @@ -49,8 +44,6 @@ import com.raytheon.uf.common.monitor.scan.ScanUtils; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; -import com.raytheon.uf.edex.database.plugin.PluginDao; -import com.raytheon.uf.edex.database.plugin.PluginFactory; import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.GeometryFactory; @@ -63,7 +56,9 @@ import com.vividsolutions.jts.geom.GeometryFactory; * SOFTWARE HISTORY * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- - * 05/07/2009 2037 dhladky Initial Creation. + * 05/07/2009 2037 dhladky Initial Creation. + * Apr 30, 2014 2060 njensen Updates for removal of grid dataURI column + * Jun 05, 2014 3226 bclement compare lightning strike type by id instead of ordinal * * * @@ -72,9 +67,6 @@ import com.vividsolutions.jts.geom.GeometryFactory; */ public abstract class ScanProduct implements Serializable { - /** - * - */ private static final long serialVersionUID = 1L; public String dataType = null; @@ -244,34 +236,6 @@ public abstract class ScanProduct implements Serializable { return cwa; } - /** - * get Populated grib record - * - * @param uri - * @return - */ - public static GridRecord getGridRecord(String uri) throws PluginException { - - GridRecord gr = new GridRecord(uri); - PluginDao gd = PluginFactory.getInstance().getPluginDao( - gr.getPluginName()); - gr = (GridRecord) gd.getMetadata(uri); - IDataStore dataStore = gd.getDataStore(gr); - - try { - IDataRecord[] dataRec = dataStore.retrieve(uri); - for (int i = 0; i < dataRec.length; i++) { - if (dataRec[i] instanceof FloatDataRecord) { - gr.setMessageData(dataRec[i]); - } - } - } catch (Exception se) { - se.printStackTrace(); - } - - return gr; - } - /** * process lightning * @@ -329,7 +293,7 @@ public abstract class ScanProduct implements Serializable { rec.getIntensities()[i], rec.getStrikeTypes()[i], rec.getMsgTypes()[i], - rec.getStrikeCounts()[i]); + rec.getPulseCounts()[i]); strikeList.add(strike); } @@ -347,8 +311,8 @@ public abstract class ScanProduct implements Serializable { if (ls.getIntensity() > 0) { totalPosStrikes++; } - if (ls.getStrikeType() == LtgStrikeType.STRIKE_CG - .ordinal()) { + if (ls.getStrikeType() == LtgStrikeType.CLOUD_TO_GROUND + .getId()) { totalCGStrikes++; } totalStrikes++; diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U500Product.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U500Product.java index 64249d530e..3c4cf22640 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U500Product.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U500Product.java @@ -26,6 +26,7 @@ import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; @@ -40,6 +41,7 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 27, 2010 5098 grichard Initial creation + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -134,13 +136,15 @@ public class U500Product extends GridProduct { } /** - * The SQL for RUC13 CAPE + * Retrieves the record for u500 * * @param wmo * @return + * @throws ScanException */ - public static String getSQL(int interval, String model) { - return getGridSQL(interval, model, "uW", "MB", "500.0", + public static GridRecord getGridRecord(int interval, String model) + throws ScanException { + return getGridRecord(interval, model, "uW", "MB", "500.0", Level.getInvalidLevelValueAsString()); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U700Product.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U700Product.java index ef2cb01b6e..834ec9d4b2 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U700Product.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/U700Product.java @@ -26,6 +26,7 @@ import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; @@ -40,6 +41,7 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 27, 2010 5098 grichard Initial creation + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -134,12 +136,14 @@ public class U700Product extends GridProduct { } /** - * The SQL + * Retrieves the record for u700 * * @return + * @throws ScanException */ - public static String getSQL(int interval, String model) { - return getGridSQL(interval, model, "uW", "MB", "700.0", + public static GridRecord getGridRecord(int interval, String model) + throws ScanException { + return getGridRecord(interval, model, "uW", "MB", "700.0", Level.getInvalidLevelValueAsString()); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/V700Product.java b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/V700Product.java index 6ac5e2709a..f880155577 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/V700Product.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.scan/src/com/raytheon/uf/edex/plugin/scan/process/V700Product.java @@ -26,6 +26,7 @@ import com.raytheon.uf.common.dataplugin.grid.GridRecord; import com.raytheon.uf.common.dataplugin.level.Level; import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject; import com.raytheon.uf.common.dataplugin.persist.PersistablePluginDataObject; +import com.raytheon.uf.common.dataplugin.scan.ScanException; import com.raytheon.uf.common.dataplugin.scan.data.ScanTableDataRow; import com.raytheon.uf.common.monitor.config.SCANRunSiteConfigurationManager; import com.raytheon.uf.common.monitor.scan.config.SCANConfigEnums.ScanTables; @@ -40,6 +41,7 @@ import com.raytheon.uf.edex.plugin.scan.ScanURIFilter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jul 27, 2010 5098 grichard Initial creation + * Apr 24, 2014 2060 njensen Updates for removal of grid dataURI column * * * @@ -134,13 +136,15 @@ public class V700Product extends GridProduct { } /** - * The SQL for RUC13 CAPE + * Retrieves the record for v700 * * @param wmo * @return + * @throws ScanException */ - public static String getSQL(int interval, String model) { - return getGridSQL(interval, model, "vW", "MB", "700.0", + public static GridRecord getGridRecord(int interval, String model) + throws ScanException { + return getGridRecord(interval, model, "vW", "MB", "700.0", Level.getInvalidLevelValueAsString()); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/META-INF/MANIFEST.MF index 1ec2f314d7..c4576f79d1 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/META-INF/MANIFEST.MF @@ -2,11 +2,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Svrwx Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.svrwx -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin.svrwx;bundle-version="1.0.0", - com.raytheon.uf.edex.decodertools, com.raytheon.uf.common.pointdata, com.raytheon.uf.edex.pointdata, org.geotools, @@ -19,5 +18,6 @@ Import-Package: com.raytheon.edex.esb, com.raytheon.uf.common.datastorage.records, com.raytheon.uf.common.status, com.raytheon.uf.common.time, + com.raytheon.uf.common.wmo, com.raytheon.uf.edex.core, org.apache.commons.logging diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/pointdata/svrwx.xml b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/pointdata/svrwx.xml index e9fd4424b6..66c787eb9d 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/pointdata/svrwx.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/pointdata/svrwx.xml @@ -22,10 +22,7 @@ SvrWx --> - - - diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/spring/svrwx-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/spring/svrwx-ingest.xml index 58689cd836..d24cf70cee 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/spring/svrwx-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/res/spring/svrwx-ingest.xml @@ -13,15 +13,9 @@
      - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxDecoder.java b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxDecoder.java index dd330a6aed..5064aa7b24 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxDecoder.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxDecoder.java @@ -22,17 +22,16 @@ package com.raytheon.uf.edex.plugin.svrwx; import java.util.ArrayList; import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.esb.Headers; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.svrwx.SvrWxRecord; import com.raytheon.uf.common.pointdata.PointDataDescription; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.plugin.svrwx.decoder.SvrWxParser; /** - * + * SvrWx Decoder. * *
        * 
      @@ -47,7 +46,8 @@ import com.raytheon.uf.edex.plugin.svrwx.decoder.SvrWxParser;
        * @version 1.0
        */
       public class SvrWxDecoder {
      -    private Log logger = LogFactory.getLog(getClass());
      +    private static IUFStatusHandler logger = UFStatus
      +            .getHandler(SvrWxDecoder.class);
       
           private final String pluginName;
       
      @@ -84,10 +84,11 @@ public class SvrWxDecoder {
           }
       
           /**
      +     * Decoded input data.
            * 
            * @param data
            * @param headers
      -     * @return
      +     * @return decodedData
            */
           public PluginDataObject[] decode(byte[] data, Headers headers) {
       
      @@ -131,7 +132,6 @@ public class SvrWxDecoder {
                   logger.info(traceId + "- No data in file");
                   decodedData = new PluginDataObject[0];
               }
      -
               return decodedData;
           }
       
      diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxRecordDao.java b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxRecordDao.java
      index 2bcab3d194..f13f3613b6 100644
      --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxRecordDao.java
      +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/SvrWxRecordDao.java
      @@ -26,33 +26,35 @@ import com.raytheon.uf.common.dataplugin.svrwx.SvrWxRecord;
       import com.raytheon.uf.edex.database.DataAccessLayerException;
       import com.raytheon.uf.edex.pointdata.PointDataPluginDao;
       
      -
       /**
      - * 
      + * SvrWxRecord Dao
        * 
        * 
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      - * Date         Ticket#    Engineer    Description
      - * ------------ ---------- ----------- --------------------------
      - * Jan 4, 2010            jsanchez     Initial creation
      - *
      + * 
      + * Date          Ticket#    Engineer    Description
      + * ------------  ---------- ----------- --------------------------
      + * Jan  4, 2010            jsanchez     Initial creation
      + * Apr 10, 2014  2971      skorolev     Cleaned code.
      + * 
        * 
      - * + * * @author jsanchez - * @version 1.0 + * @version 1.0 */ public class SvrWxRecordDao extends PointDataPluginDao { /** - * Creates a new TropicalCycloneGuidanceDao - * @throws PluginException + * Creates a new TropicalCycloneGuidance Dao + * + * @param pluginName + * @throws PluginException */ public SvrWxRecordDao(String pluginName) throws PluginException { super(pluginName); } - + /** * Retrieves an tcg report using the datauri . * @@ -73,6 +75,7 @@ public class SvrWxRecordDao extends PointDataPluginDao { } return report; } + /** * Queries for to determine if a given data uri exists on the tcg table. * @@ -91,16 +94,35 @@ public class SvrWxRecordDao extends PointDataPluginDao { return results; } + /* + * (non-Javadoc) + * + * @see + * com.raytheon.uf.edex.pointdata.PointDataPluginDao#getKeysRequiredForFileName + * () + */ @Override public String[] getKeysRequiredForFileName() { return new String[] { "dataTime.refTime" }; } + /* + * (non-Javadoc) + * + * @see + * com.raytheon.uf.edex.pointdata.PointDataPluginDao#getPointDataFileName + * (com.raytheon.uf.common.dataplugin.PluginDataObject) + */ @Override public String getPointDataFileName(SvrWxRecord p) { return "svrwx.h5"; } + /* + * (non-Javadoc) + * + * @see com.raytheon.uf.edex.pointdata.PointDataPluginDao#newObject() + */ @Override public SvrWxRecord newObject() { return new SvrWxRecord(); diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalReport.java b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalReport.java index 171e14e8aa..e9e3ec0bf2 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalReport.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalReport.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -28,31 +28,37 @@ import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; /** - * TODO Add Description - * + * Internal Report + * *
      - * 
      + *
        * SOFTWARE HISTORY
      - * 
      + *
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Jan 10, 2010            jsanchez     Initial creation
      - * 
      + * Apr 10, 2014  2971      skorolev     Cleaned code.
      + * Jun 25, 2014  3008      nabowle      Refactor for EventReport.
      + *
        * 
      - * + * * @author jsanchez * @version 1.0 */ public class InternalReport { - private static Log logger = LogFactory.getLog(InternalReport.class); + private static IUFStatusHandler logger = UFStatus + .getHandler(InternalReport.class); public static final String REPORT_TYPE_LN = "^((.*)(TORNADO REPORTS|LRG HAIL/STRONG WIND RPTS|OTHER SEVERE REPORTS)(.*))"; + private static final Pattern REPORT_TYPE_LN_PTRN = Pattern + .compile(REPORT_TYPE_LN); + public static final String EVENT_KEY = "(\\*TORN|WNDG|([AG]\\s{0,1}\\d{2,3}))"; public static final String TIME = "(\\d{1,2}/\\d{4,4})"; @@ -60,6 +66,8 @@ public class InternalReport { public static final String EVENT_LN = "^((.*)" + EVENT_KEY + "(.*)" + TIME + ")"; + private static final Pattern EVENT_LN_PTRN = Pattern.compile(EVENT_LN); + public static final String LATLON = "(\\d{4,4}\\s{0,1}\\d{4,5})"; public static final String STATIONID = "(\\w{3,3}/\\w{3,3})"; @@ -72,18 +80,28 @@ public class InternalReport { public static final String TIME_RANGE_LN = "^((.*)FOR\\s" + REFTIME + "\\sTHRU\\s" + REFTIME + ")"; + private static final Pattern TIME_RANGE_LN_PTRN = Pattern + .compile(TIME_RANGE_LN); + private final InternalType lineType; private final String reportLine; private List subLines = null; + /** + * + * @param type + * @param line + */ public InternalReport(InternalType type, String line) { lineType = type; reportLine = line; } /** + * Get Line Type. + * * @return the lineType */ public InternalType getLineType() { @@ -91,6 +109,8 @@ public class InternalReport { } /** + * Get Report Line. + * * @return the reportLine */ public String getReportLine() { @@ -98,7 +118,8 @@ public class InternalReport { } /** - * + * Get SubLines. + * * @return */ public List getSubLines() { @@ -106,7 +127,7 @@ public class InternalReport { } /** - * + * * @param buffer * Buffer to receive String formatted internal data. If this * reference is null, a new StringBuilder instance is created. @@ -126,7 +147,7 @@ public class InternalReport { /** * Create a string representation of this class instance. - * + * * @return The string representation of this class instance. */ @Override @@ -141,53 +162,80 @@ public class InternalReport { return sb.toString(); } + /** + * Message identification. + * + * @param message + * @return + */ public static List identifyMessage(byte[] message) { List reports = new ArrayList(); List lines = separateLines(message); if (lines != null) { - Pattern p1 = Pattern.compile(REPORT_TYPE_LN); - Pattern p2 = Pattern.compile(EVENT_LN); - Pattern p3 = Pattern.compile(RMK_LN); - Pattern p4 = Pattern.compile(TIME_RANGE_LN); - InternalType t1 = InternalType.REPORT_TYPE; - InternalType t2 = InternalType.EVENT_LN; - InternalType t3 = InternalType.REMARKS; - InternalType t4 = InternalType.TIME_RANGE; + Pattern patterns[] = { REPORT_TYPE_LN_PTRN, TIME_RANGE_LN_PTRN }; + InternalType types[] = { InternalType.REPORT_TYPE, + InternalType.TIME_RANGE }; - Pattern patterns[] = { p1, p2, p3, p4 }; - InternalType types[] = { t1, t2, t3, t4 }; boolean found; + EventReport.Builder builder = null; + Matcher m; for (String s : lines) { found = false; for (int i = 0; i < patterns.length; i++) { - Matcher m = patterns[i].matcher(s); + m = patterns[i].matcher(s); if (m.matches()) { + + if (builder != null) { + reports.add(builder.build()); + builder = null; + } + InternalReport rptLine = new InternalReport(types[i], s); reports.add(rptLine); found = true; break; } } - if (!found) { - InternalReport rptLine = new InternalReport( - InternalType.EXTRA, s); - reports.add(rptLine); + // TODO: An unrecognized event line will lead to either: + // The previous report's remarks containing the report or + // the report being tagged as EXTRA lines. + // + // In the former case, the issue may be noticed if the + // remarks of the report are examined. In the latter, + // the report will be lost without a trace. + // More info: + // http://www.nws.noaa.gov/directives/sym/pd01005012curr.pdf + // http://www.spc.noaa.gov/misc/about.html#Statistics + m = EVENT_LN_PTRN.matcher(s); + if (m.matches()) { + if (builder != null) { + reports.add(builder.build()); + } + builder = new EventReport.Builder().withEventLine(s); + } else if (builder != null) { + builder.withRemarks(s); + } else { + InternalReport rptLine = new InternalReport( + InternalType.EXTRA, s); + reports.add(rptLine); + } } } - InternalReport rptLine = new InternalReport(InternalType.END, ""); - reports.add(rptLine); - + if (builder != null) { + reports.add(builder.build()); + } } return reports; } /** - * + * Separate Lines. + * * @param message - * @return + * @return reportLines */ private static List separateLines(byte[] message) { List reportLines = null; @@ -200,7 +248,7 @@ public class InternalReport { String s; reportLines = new ArrayList(); while ((s = reader.readLine()) != null) { - if (s.length() > 0) { + if (s.trim().length() > 0) { reportLines.add(s); } } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalType.java b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalType.java index bb9f69283c..493e293e88 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalType.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/InternalType.java @@ -1,44 +1,42 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ package com.raytheon.uf.edex.plugin.svrwx.decoder; + /** - * TODO Add Description + * Internal Line Type. * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Jan 05, 2010            jsanchez     Initial creation
      - *
      + * Apr 10, 2014            skorolev     Cleaned code.
      + * Jun 25, 2014 3008       nabowle      Removed unused values.
      + * 
        * 
      - * + * * @author jsanchez - * @version 1.0 + * @version 1.0 */ public enum InternalType { - TIME_RANGE, - REPORT_TYPE, - EVENT_LN, - REMARKS, - EXTRA, - END; + TIME_RANGE, REPORT_TYPE, EXTRA, EVENT_REPORT; } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/SvrWxParser.java b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/SvrWxParser.java index 5497f0825c..bd2f4ce12b 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/SvrWxParser.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.svrwx/src/com/raytheon/uf/edex/plugin/svrwx/decoder/SvrWxParser.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -21,6 +21,7 @@ package com.raytheon.uf.edex.plugin.svrwx.decoder; import java.io.File; import java.util.ArrayList; +import java.util.Arrays; import java.util.Calendar; import java.util.HashMap; import java.util.List; @@ -29,30 +30,35 @@ import java.util.TimeZone; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import com.raytheon.edex.esb.Headers; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.svrwx.SvrWxRecord; import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.plugin.svrwx.SvrWxRecordDao; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** + * SvrWx Parser * * *
        * 
      + * 
        * SOFTWARE HISTORY
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Jan 04, 2010            jsanchez    Initial creation
        * Aug 30, 2013 2298       rjpeter     Make getPluginName abstract
      + * Apr 07, 2014 2971       skorolev    Add condition to avoid malformed parts in the message.
      + * May 14, 2014 2536       bclement    moved WMO Header to common, removed pluginName
      + * Jun 25, 2014 3008       nabowle     Refactor for EventReport type
      + * Jul 23, 2014 3410       bclement    location changed to floats
      + * Jul 30, 2014 3410       bclement    lat, lon and data uri moved to database point data desc
        * 
        * 
      * @@ -62,7 +68,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; public class SvrWxParser { /** The logger */ - private final Log logger = LogFactory.getLog(getClass()); + private static IUFStatusHandler logger = UFStatus + .getHandler(SvrWxParser.class); private final PointDataDescription pointDataDescription; @@ -72,8 +79,6 @@ public class SvrWxParser { private WMOHeader wmoHeader; - private final String pluginName; - private String traceId; int currentReport = -1; @@ -82,32 +87,19 @@ public class SvrWxParser { private List reports; - private String eventKey; - - private DataTime refTime; - - private String greenTime; - - private int month; - - private int year; - - private String remarks; - - private Float latitude; - - private Float longitude; - - private String stationId; - - private String reportType; - public static final String TORN = "*TORN"; public static final String WNDG = "WNDG"; private static final HashMap MONTH_MAP = new HashMap(); + private static final Pattern YEAR_PTRN = Pattern.compile("\\d{4,4}"); + + private static final Pattern MONTH_PTRN = Pattern + .compile("(JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC)"); + + private static final String[] EMPTY_ARR = new String[0]; + static { MONTH_MAP.put("JAN", 1); MONTH_MAP.put("FEB", 2); @@ -124,30 +116,32 @@ public class SvrWxParser { } /** - * - * @param message - * @param wmoHeader + * SvrWx Parser. + * + * @param dao * @param pdd + * @param name */ public SvrWxParser(SvrWxRecordDao dao, PointDataDescription pdd, String name) { pointDataDescription = pdd; svrWxDao = dao; - pluginName = name; containerMap = new HashMap(); } /** * Set the message data and decode all message reports. - * + * * @param message * Raw message data. * @param traceId * Trace id for this data. + * @param headers */ public void setData(byte[] message, String traceId, Headers headers) { currentReport = -1; this.traceId = traceId; - wmoHeader = new WMOHeader(message, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + wmoHeader = new WMOHeader(message, fileName); if (wmoHeader != null) { reports = findReports(message); } else { @@ -160,7 +154,7 @@ public class SvrWxParser { /** * Does this parser contain any more reports. - * + * * @return Does this parser contain any more reports. */ public boolean hasNext() { @@ -178,7 +172,7 @@ public class SvrWxParser { /** * Get the next available report. Returns a null reference if no more * reports are available. - * + * * @return The next available report. */ public SvrWxRecord next() { @@ -193,17 +187,10 @@ public class SvrWxParser { } else { report = reports.get(currentReport++); logger.debug("Getting report " + report); - - try { - report.constructDataURI(); - if (URI_MAP.containsKey(report.getDataURI())) { - report = null; - } else { - URI_MAP.put(report.getDataURI(), Boolean.TRUE); - } - } catch (PluginException e) { - logger.error(traceId + "- Unable to construct dataURI", e); + if (URI_MAP.containsKey(report.getDataURI())) { report = null; + } else { + URI_MAP.put(report.getDataURI(), Boolean.TRUE); } if (report != null) { @@ -212,10 +199,7 @@ public class SvrWxParser { // Populate the point data. PointDataView view = pdc.append(); - view.setFloat("latitude", (float) report.getLatitude()); - view.setFloat("longitude", (float) report.getLongitude()); view.setString("wmoHeader", report.getWmoHeader()); - view.setString("dataURI", report.getDataURI()); view.setString("eventKey", report.getEventKey()); view.setString("details", report.getDetails()); view.setString("greenTime", report.getGreenTime()); @@ -227,7 +211,8 @@ public class SvrWxParser { } /** - * + * Gets Container + * * @param obsData * @return */ @@ -243,9 +228,10 @@ public class SvrWxParser { } /** - * - * @param start - * @return + * Collect Reports from svrWx Records. + * + * @param message + * @return reports */ private List findReports(byte[] message) { @@ -253,183 +239,319 @@ public class SvrWxParser { List parts = InternalReport.identifyMessage(message); if (parts != null) { - SvrWxRecord svrWxRecord; - clearData(); + EventReport eRpt; + String[] missingFields; + int month = -1; + int year = -1; + int reportCount = 0; + int invalidCount = 0; + boolean allDropped = false; for (InternalReport rpt : parts) { switch (rpt.getLineType()) { case TIME_RANGE: - parseTimeRangeLine(rpt.getReportLine()); + month = parseMonth(rpt.getReportLine()); + year = parseYear(rpt.getReportLine()); break; + case EVENT_REPORT: + reportCount++; + eRpt = (EventReport) rpt; + missingFields = getMissingFields(eRpt); + if (missingFields.length == 0 && year != -1 && month != -1) { + reports.add(buildRecord(eRpt, month, year)); + } else { + if (year == -1 || month == -1) { + if (!allDropped) { + logger.warn(this.traceId + + " - No time range found. All records" + + " will be discarded."); + allDropped = true; + } + } else { + logInvalidReport(eRpt, missingFields); + } + invalidCount++; + } case REPORT_TYPE: - if ((reportType != null) && (eventKey != null)) { - SurfaceObsLocation location = new SurfaceObsLocation( - stationId); - location.setLongitude(longitude.doubleValue()); - location.setLatitude(latitude.doubleValue()); - svrWxRecord = new SvrWxRecord(); - svrWxRecord.setReportType(reportType); - svrWxRecord.setGreenTime(greenTime); - svrWxRecord.setLocation(location); - svrWxRecord.setDataTime(refTime); - svrWxRecord.setEventKey(eventKey); - svrWxRecord.setDetails(getDetails()); - reports.add(svrWxRecord); - } - clearData(); - break; - case EVENT_LN: - if ((reportType != null) && (eventKey != null)) { - SurfaceObsLocation location = new SurfaceObsLocation( - stationId); - location.setLongitude(longitude.doubleValue()); - location.setLatitude(latitude.doubleValue()); - svrWxRecord = new SvrWxRecord(); - svrWxRecord.setReportType(reportType); - svrWxRecord.setGreenTime(greenTime); - svrWxRecord.setLocation(location); - svrWxRecord.setDataTime(refTime); - svrWxRecord.setEventKey(eventKey); - svrWxRecord.setDetails(getDetails()); - reports.add(svrWxRecord); - } - clearData(); - parseEventKeyLine(rpt.getReportLine()); - break; - case REMARKS: - parseRemarksLine(rpt.getReportLine()); - break; case EXTRA: - String s = rpt.getReportLine().trim(); - if ((s.length() != 0) && (remarks != null)) { - remarks += " " + s; - } - break; - case END: - if ((reportType != null) && (eventKey != null)) { - SurfaceObsLocation location = new SurfaceObsLocation( - stationId); - location.setLongitude(longitude.doubleValue()); - location.setLatitude(latitude.doubleValue()); - svrWxRecord = new SvrWxRecord(); - svrWxRecord.setReportType(reportType); - svrWxRecord.setGreenTime(greenTime); - svrWxRecord.setLocation(location); - svrWxRecord.setDataTime(refTime); - svrWxRecord.setDetails(getDetails()); - svrWxRecord.setEventKey(eventKey); - reports.add(svrWxRecord); - } - clearData(); + default: break; } } + + if (invalidCount > 0) { + logger.warn("Discarded " + invalidCount + "/" + reportCount + + " reports."); + } } return reports; } - private void parseTimeRangeLine(String timeRangeLine) { - Pattern yearPtrn = Pattern.compile("\\d{4,4}"); - Pattern monthPtrn = Pattern - .compile("(JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC)"); + /** + * Builds a SvrWxRecord from an EventReport. + * + * @param eRpt + * The EventReport. + * @param month + * The previously parsed month. + * @param year + * The previously parsed year. + * @return The constructed SvrWxRecord. + */ + private SvrWxRecord buildRecord(EventReport eRpt, int month, int year) { + SurfaceObsLocation location = new SurfaceObsLocation( + eRpt.getStationId()); + location.setLongitude(getLon(eRpt.getLatLon())); + location.setLatitude(getLat(eRpt.getLatLon())); - Matcher m = monthPtrn.matcher(timeRangeLine); + SvrWxRecord svrWxRecord = new SvrWxRecord(); + svrWxRecord.setReportType(getReportType(eRpt + .getKey())); + svrWxRecord.setGreenTime(getGreenTime(eRpt + .getTime())); + svrWxRecord.setLocation(location); + svrWxRecord.setDataTime(getRefTime(eRpt.getTime(), + month, year)); + svrWxRecord + .setEventKey(getEventKey(eRpt.getKey())); + svrWxRecord.setDetails(getDetails(svrWxRecord, eRpt)); + return svrWxRecord; + } + + /** + * Logs an EventReport that is invalid. + * + * @param eRpt + * The EventReport. + * @param missingFields + * The missing fields. + */ + private void logInvalidReport(EventReport eRpt, String[] missingFields) { + StringBuilder errorSb = new StringBuilder() + .append("The following report is missing the required ") + .append(missingFields.length > 1 ? "fields " : "field ") + .append(Arrays.toString(missingFields)) + .append(" and will be skipped.\n").append(eRpt.toString()); + + logger.warn(errorSb.toString()); + } + + /** + * Parses the month. + * + * @param timeRangeLine + * The time range line. + * @return The month, or 0 if the month cannot be found. + */ + private int parseMonth(String timeRangeLine) { + int month; + Matcher m = MONTH_PTRN.matcher(timeRangeLine); if (m.find()) { month = MONTH_MAP.get(m.group()); + } else { + month = 0; } + return month; + } - m = yearPtrn.matcher(timeRangeLine); + /** + * Parses the year from the time range line. + * + * @param timeRangeLine + * The time range line. + * @return The year, or 0 f the year cannot be found. + */ + private int parseYear(String timeRangeLine) { + int year; + Matcher m = YEAR_PTRN.matcher(timeRangeLine); if (m.find()) { year = Integer.parseInt(m.group()); - } - } - - private void parseEventKeyLine(String eventKeyLine) { - Pattern eventKeyPtrn = Pattern.compile(InternalReport.EVENT_KEY); - Pattern dateTimePtrn = Pattern.compile(InternalReport.TIME); - Matcher m = eventKeyPtrn.matcher(eventKeyLine); - if (m.find()) { - String type = m.group(); - if (type.equals(TORN)) { - eventKey = reportType = "T"; - } else if (type.equals(WNDG)) { - eventKey = reportType = "W"; - } else if (type.startsWith("G")) { - eventKey = type.replace(" ", ""); - reportType = "W"; - } else if (type.startsWith("A")) { - eventKey = type.replace(" ", ""); - reportType = "A"; - } - - } - - m = dateTimePtrn.matcher(eventKeyLine); - if (m.find()) { - String time = m.group(); - greenTime = time.replace("/", "."); - String[] parts = time.split("/"); - int day = Integer.parseInt(parts[0]); - int hour = Integer.parseInt(parts[1].substring(0, 2)) + 6; // CST to - // GMT - int minute = Integer.parseInt(parts[1].substring(2)); - - Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - cal.set(Calendar.YEAR, year); - cal.set(Calendar.MONTH, month - 1); - cal.set(Calendar.DAY_OF_MONTH, day); - cal.set(Calendar.HOUR_OF_DAY, hour); - cal.set(Calendar.MINUTE, minute); - cal.set(Calendar.SECOND, 0); - cal.set(Calendar.MILLISECOND, 0); - cal.setTimeZone(TimeZone.getTimeZone("GMT")); - refTime = new DataTime(cal); - } else { - refTime = null; + year = 0; } - + return year; } - private void parseRemarksLine(String remarksLine) { - Pattern latLonPtrn = Pattern.compile(InternalReport.LATLON); - Pattern stationIdPtrn = Pattern.compile(InternalReport.STATIONID); - - Matcher m = latLonPtrn.matcher(remarksLine); - if (m.find()) { - String latLon = m.group(); - String latStr = latLon.substring(0, 4); - String lonStr = latLon.substring(4).trim(); - latitude = new Float(latStr) / 100; - longitude = Float.parseFloat(lonStr) / -100; + /** + * Gets the green time from the time field. + * + * @param time + * The time field. + * @return The green time, or null if the time is null. + */ + private String getGreenTime(String time) { + if (time == null) { + return null; } - m = stationIdPtrn.matcher(remarksLine); - if (m.find()) { - stationId = m.group(); - } - - if (stationId != null) { - remarks = remarksLine.substring(0, remarksLine.indexOf(stationId)) - .trim(); - } + return time.replace("/", "."); } - private void clearData() { - eventKey = null; - refTime = null; - remarks = null; - stationId = null; - latitude = null; - longitude = null; - greenTime = null; + /** + * Gets the ref time from the time field, month, and year. + * + * @param time + * The time field. + * @param month + * The month. + * @param year + * The year. + * @return The ref time, or null if the time field is null. + */ + private DataTime getRefTime(String time, int month, int year) { + if (time == null) { + return null; + } + + String[] parts = time.split("/"); + int day = Integer.parseInt(parts[0]); + int hour = Integer.parseInt(parts[1].substring(0, 2)) + 6; // CST to + // GMT + int minute = Integer.parseInt(parts[1].substring(2)); + + Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); + cal.set(Calendar.YEAR, year); + cal.set(Calendar.MONTH, month - 1); + cal.set(Calendar.DAY_OF_MONTH, day); + cal.set(Calendar.HOUR_OF_DAY, hour); + cal.set(Calendar.MINUTE, minute); + cal.set(Calendar.SECOND, 0); + cal.set(Calendar.MILLISECOND, 0); + cal.setTimeZone(TimeZone.getTimeZone("GMT")); + return new DataTime(cal); } - private String getDetails() { - String details = eventKey + " " + greenTime + ":"; - if (stationId != null) { - details += " " + stationId; + /** + * Gets the report type. + * + * @param key + * The event key field. + * @return The report type, or null if the key field is not expected. + */ + private String getReportType(String key) { + String reportType; + + if (key.equals(TORN)) { + reportType = "T"; + } else if (key.equals(WNDG) || key.startsWith("G")) { + reportType = "W"; + } else if (key.startsWith("A")) { + reportType = "A"; + } else { + reportType = null; } - details += " " + remarks; - return details; + + return reportType; + } + + /** + * Gets the event key. + * + * @param key + * The event key field. + * @return The event key, or null if the event key is not expected. + */ + private String getEventKey(String key) { + String eventKey; + + if (key.equals(TORN)) { + // Tornado + eventKey = "T"; + } else if (key.equals(WNDG)) { + // Wind damage + eventKey = "W"; + } else if (key.startsWith("G") || key.startsWith("A")) { + // A nnn Hailstones and diameter in inches. 475 would be 4.75 inches + // G nnn Wind gust and speed in knots + eventKey = key.replace(" ", ""); + } else { + eventKey = null; + } + + return eventKey; + } + + /** + * Get the latitude as a float. Northern hemisphere is assumed. + * + * @param latlon + * The latitude/longitude String. + * @return The latitude as a float. + */ + private float getLat(String latlon) { + return Float.parseFloat(parseLat(latlon)) / 100.0f; + } + + /** + * Get the longitude as a float. Western hemisphere is assumed. + * + * @param latlon + * The latitude/longitude String. + * @return The longitude as a float. + */ + private float getLon(String latlon) { + return Float.parseFloat(parseLon(latlon)) / -100.0f; + } + + /** + * Parses the latitude from the combined latitude/longitude field. + * + * @param latlon + * The combined latitude/longitude field. + * @return The latitude. + */ + private String parseLat(String latlon) { + return latlon.substring(0, 4); + } + + /** + * Parses the longitude from the combined latitude/longitude field. + * + * @param latlon + * The combined latitude/longitude field. + * @return The longitude. + */ + private String parseLon(String latlon) { + return latlon.substring(4).trim(); + } + + /** + * Get the event details. + * + * @param record + * The SvrWxRecord. + * @param eRpt + * The event report. + * @return The event details. + */ + private String getDetails(SvrWxRecord record, EventReport eRpt) { + StringBuilder details = new StringBuilder() + .append(record.getEventKey()).append(" ") + .append(record.getGreenTime()).append(":") + .append(record.getStationId()).append(" ") + .append(eRpt.getRemarks()); + + return details.toString(); + } + + /** + * Check for missing fields that are required. + * + * @param eRpt + * The event report. + * @return An array of the missing fields' names, or an empty array if no + * fields are missing. + */ + private String[] getMissingFields(EventReport eRpt) { + + List missing = new ArrayList(); + if (eRpt.getStationId() == null) { + missing.add("StationID"); + } + + if (eRpt.getLatLon() == null) { + missing.add("Latitude/Longitude"); + } + + return missing.isEmpty() ? EMPTY_ARR : missing.toArray(EMPTY_ARR); } } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/META-INF/MANIFEST.MF index d795641aba..ead09ff9dc 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/META-INF/MANIFEST.MF @@ -2,9 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Tcg Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.tcg -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin.tcg;bundle-version="1.0.0", com.raytheon.uf.edex.decodertools, com.raytheon.uf.common.pointdata, @@ -14,10 +14,11 @@ Require-Bundle: com.raytheon.uf.common.dataplugin.tcg;bundle-version="1.0.0", javax.measure, com.raytheon.uf.edex.database, com.raytheon.uf.common.serialization, - com.raytheon.uf.common.dataplugin + com.raytheon.uf.common.dataplugin, + org.slf4j Import-Package: com.raytheon.edex.esb, com.raytheon.uf.common.datastorage.records, com.raytheon.uf.common.status, com.raytheon.uf.common.time, - com.raytheon.uf.edex.core, - org.apache.commons.logging + com.raytheon.uf.common.wmo, + com.raytheon.uf.edex.core diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/pointdata/tcg.xml b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/pointdata/tcg.xml index 7a5cbedfe8..b1c55c6c08 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/pointdata/tcg.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/pointdata/tcg.xml @@ -23,10 +23,7 @@ --> - - - diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/spring/tcg-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/spring/tcg-ingest.xml index 3a71efee64..5bec012152 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/spring/tcg-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/res/spring/tcg-ingest.xml @@ -13,15 +13,9 @@ - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/TCGDecoder.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/TCGDecoder.java index 7ca190a6dd..1941dadb05 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/TCGDecoder.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/TCGDecoder.java @@ -22,15 +22,15 @@ package com.raytheon.uf.edex.plugin.tcg; import java.util.ArrayList; import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import com.raytheon.edex.esb.Headers; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.tcg.TropicalCycloneGuidance; import com.raytheon.uf.common.pointdata.PointDataDescription; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.plugin.tcg.decoder.TCGDataAdapter; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Decoder implementation for the tcg (Tropical Cyclone Guidance) plugin. @@ -41,6 +41,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Oct 28, 2009 jsanchez Initial creation + * May 14, 2014 2536 bclement moved WMO Header to common + * Jun 24, 2014 3235 nabowle Switch to slf4j. * *
      * @@ -48,7 +50,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * @version 1.0 */ public class TCGDecoder { - private Log logger = LogFactory.getLog(getClass()); + private static final Logger logger = LoggerFactory + .getLogger(TCGDecoder.class); private final String pluginName; @@ -108,7 +111,9 @@ public class TCGDecoder { if (data != null && data.length > 0) { List obsList = new ArrayList(); try { - WMOHeader wmoHeader = new WMOHeader(data, headers); + String fileName = (String) headers + .get(WMOHeader.INGEST_FILE_NAME); + WMOHeader wmoHeader = new WMOHeader(data, fileName); TCGDataAdapter adapter = TCGDataAdapter.getAdapter(pdd, dao, pluginName, wmoHeader); adapter.setData(data, traceId, headers); diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/HURData.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/HURData.java index 030401f393..1429eb122f 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/HURData.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/HURData.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -23,6 +23,7 @@ import java.util.ArrayList; import java.util.Calendar; import java.util.HashMap; import java.util.List; +import java.util.Map.Entry; import java.util.TimeZone; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -36,7 +37,8 @@ import com.raytheon.uf.edex.plugin.tcg.TropicalCycloneGuidanceDao; import com.vividsolutions.jts.geom.Coordinate; /** - * TODO Add Description + * Parses a subset of Tropical Cyclone Guidance data that contain multiple storm + * track predictions from various models such as BAM(S/M/D) and LBAR. * *
        * 
      @@ -46,6 +48,8 @@ import com.vividsolutions.jts.geom.Coordinate;
        * ------------ ---------- ----------- --------------------------
        * Oct 26, 2009            jsanchez    Initial creation
        * Aug 30, 2013 2298       rjpeter     Make getPluginName abstract
      + * Jun 23, 2014 3235       nabowle     Clear the coordinates map properly.
      + * Jul 23, 2014 3410       bclement    location changed to floats
        * 
        * 
      * @@ -68,6 +72,7 @@ public class HURData extends TCGDataAdapter { List reports = new ArrayList(); List parts = InternalReport.identifyMessage(message); + List list; if (parts != null) { clearData(); @@ -83,22 +88,23 @@ public class HURData extends TCGDataAdapter { } else if (InternalType.MODEL_INFO.equals(t)) { parseModelInfo(s); } else if (InternalType.END.equals(t)) { - for (String model : coordinates.keySet()) { - List list = coordinates.get(model); + for (Entry> entry : coordinates + .entrySet()) { + list = entry.getValue(); if (list.size() == forecastTimes.size()) { for (int i = 0; i < list.size(); i++) { TropicalCycloneGuidance rpt = new TropicalCycloneGuidance(); SurfaceObsLocation location = new SurfaceObsLocation( stationId); - location.setLongitude(list.get(i).x); - location.setLatitude(list.get(i).y); + location.setLongitude((float) list.get(i).x); + location.setLatitude((float) list.get(i).y); rpt.setWmoHeader(wmoHeader.getWmoHeader()); rpt.setTraceId(traceId); rpt.setStormName(stormName); rpt.setType(stormType); rpt.setProductType(productType); - rpt.setModelName(model); + rpt.setModelName(entry.getKey()); rpt.setLocation(location); rpt.setInsertTime(Calendar.getInstance(TimeZone .getTimeZone("GMT"))); @@ -131,16 +137,14 @@ public class HURData extends TCGDataAdapter { } private void parseModelInfo(String modelInfo) { - Pattern modelPtrn = Pattern.compile(InternalReport.MODEL_PTRN); - Pattern latlonPtrn = Pattern.compile(InternalReport.LATLON_PTRN); - Matcher m = modelPtrn.matcher(modelInfo); + Matcher m = InternalReport.MODEL_PTRN.matcher(modelInfo); if (m.find()) { String model = m.group(); List coordinate = coordinates.get(model); if (coordinate == null) { coordinate = new ArrayList(); } - m = latlonPtrn.matcher(modelInfo); + m = InternalReport.LATLON_PTRN.matcher(modelInfo); while (m.find()) { String latlon[] = m.group().split(" "); int n = latlon.length - 1; @@ -214,16 +218,9 @@ public class HURData extends TCGDataAdapter { } } - private void refreshMaps() { - coordinates.put("BAMS", null); - coordinates.put("BAMD", null); - coordinates.put("BAMD", null); - coordinates.put("LBAR", null); - } - @Override public void clearData() { - refreshMaps(); + coordinates.clear(); forecastTimes.clear(); stationId = null; stormType = TCGStormType.UNKNOWN; diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/InternalReport.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/InternalReport.java index 2826751fee..a03ab25a7f 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/InternalReport.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/InternalReport.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -28,12 +28,12 @@ import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * TODO Add Description - * + * *
        *
        * SOFTWARE HISTORY
      @@ -41,95 +41,126 @@ import org.apache.commons.logging.LogFactory;
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Oct 26, 2009            jsanchez     Initial creation
      + * Jun 24, 2014  3235      nabowle      Switch to slf4j. Precompile patterns.
        *
        * 
      * * @author jsanchez - * @version 1.0 + * @version 1.0 */ public class InternalReport { - private static Log logger = LogFactory.getLog(InternalReport.class); - - //CHGHUR or CHGQLM or TCEAT4 - public static final String PRODUCT_PTRN = "^((CHG|TCE)(.*))"; - + private static final Logger LOGGER = LoggerFactory + .getLogger(InternalReport.class); + + // CHGHUR or CHGQLM or TCEAT4 + public static final Pattern PRODUCT_PTRN = Pattern + .compile("^((CHG|TCE)(.*))"); + /* * Below are patterns mostly used for CHGQLM */ - //TROPICAL STORM IDA 11L - public static final String STORM_TYPE_INFO = "^((TROPICAL|HURRICANE|TYPHOON|EXTRATROPICAL|DISTURBANCE) +(.*))"; - + // TROPICAL STORM IDA 11L + public static final Pattern STORM_TYPE_INFO = Pattern + .compile("^((TROPICAL|HURRICANE|TYPHOON|EXTRATROPICAL|DISTURBANCE) +(.*))"); + public static final String HOUR_PTRN = "(\\d{1,2})"; - + public static final String MONTH_PTRN = "(\\w{3,3})"; - + public static final String DAY_PTRN = "(\\d{1,2})"; - //INITIAL TIME 18Z NOV 4 - public static final String INIT_TIME_INFO = "^((INITIAL TIME)(\\s{2,3})" + HOUR_PTRN + "Z " + MONTH_PTRN + "(\\s{1,2})" + DAY_PTRN + ")"; - - // 18 12.1 82.2 47./ 1.7 - public static final String FORECAST_POSITION_INFO = "^((\\s{1,3})(\\d{1,3})(\\s{12,14})((\\d{0,2}).\\d) +(.*))"; - + + // INITIAL TIME 18Z NOV 4 + public static final Pattern INIT_TIME_INFO = Pattern + .compile("^((INITIAL TIME)(\\s{2,3})" + HOUR_PTRN + "Z " + + MONTH_PTRN + "(\\s{1,2})" + DAY_PTRN + ")"); + + // 18 12.1 82.2 47./ 1.7 + public static final Pattern FORECAST_POSITION_INFO = Pattern + .compile("^((\\s{1,3})(\\d{1,3})(\\s{12,14})((\\d{0,2}).\\d) +(.*))"); + + /* * Below are patterns mostly used for CHGHUR */ - //16.5N 102.2W - public static final String LATLON_PTRN ="(((\\d{0,2}|90).\\d{1,1}[NS])(\\s{1,4})(\\d{0,3}.\\d{1,1}[EW]))"; + public static final String LATLON = "(((\\d{0,2}|90).\\d{1,1}[NS])(\\s{1,4})(\\d{0,3}.\\d{1,1}[EW]))"; - //BAMS - public static final String MODEL_PTRN ="(\\w{4,4})"; - - //BAMS 16.5N 102.2W 17.5N 102.0W 18.2N 101.7W 18.6N 102.0W - public static final String MODEL_INFO ="^(" + MODEL_PTRN + "(\\s{4,4})" + LATLON_PTRN + "+(.*))"; - - //091029 1200 - public static final String DATETIME= "(\\d{6,6}\\s{2,2}\\d{4,4})"; - - // 091029 1200 091030 0000 091030 1200 091031 0000 - public static final String DATETIME_INFO = "((.*)" + DATETIME + "+(.*))"; - - //(EP952009) + // 16.5N 102.2W + public static final Pattern LATLON_PTRN = Pattern.compile(LATLON); + + public static final String MODEL = "(\\w{4,4})"; + + // BAMS + public static final Pattern MODEL_PTRN = Pattern.compile(MODEL); + + // BAMS 16.5N 102.2W 17.5N 102.0W 18.2N 101.7W 18.6N 102.0W + public static final Pattern MODEL_INFO = Pattern.compile("^(" + MODEL + + "(\\s{4,4})" + LATLON + "+(.*))"); + + // 091029 1200 + public static final String DATETIME = "(\\d{6,6}\\s{2,2}\\d{4,4})"; + + // 091029 1200 091030 0000 091030 1200 091031 0000 + public static final Pattern DATETIME_INFO = Pattern.compile("((.*)" + + DATETIME + "+(.*))"); + + // (EP952009) public static final String STATIONID_PTRN = "\\(\\w{2,2}\\d{6,6}\\)"; - - //20091029 1200 + + // 20091029 1200 public static final String REFTIME_PTRN = "(\\d{8,8} \\d{4,4})"; - - //DISTURBANCE INVEST (EP952009) 20091029 1200 UTC - public static final String DATA_INFO = "((.*) " + STATIONID_PTRN + " " + REFTIME_PTRN + " " + "UTC)"; - - // ...INITIAL CONDITIONS... - public static final String INIT_CONDITION_PTRN = "((.*)(...INITIAL CONDITIONS...)+(.*))"; - - //STORM DISSIPATED AT 54 HRS AT THE ABOVE PSN. - public static final String STORM_DISSIPATED = "^(STORM DISSIPATED +(.*))"; - + + // DISTURBANCE INVEST (EP952009) 20091029 1200 UTC + public static final Pattern DATA_INFO = Pattern.compile("((.*) " + + STATIONID_PTRN + " " + REFTIME_PTRN + " " + "UTC)"); + + // ...INITIAL CONDITIONS... + public static final Pattern INIT_CONDITION_PTRN = Pattern + .compile("((.*)(...INITIAL CONDITIONS...)+(.*))"); + + // STORM DISSIPATED AT 54 HRS AT THE ABOVE PSN. + public static final Pattern STORM_DISSIPATED = Pattern + .compile("^(STORM DISSIPATED +(.*))"); + /* - * Below are used for TCE + * Below are used for TCE */ - public static final String NWS_INFO = "^((NWS TPC)(.*)(\\w{2,2}\\d{6,6}))"; - //1100 PM CDT FRI SEP 12 2008 - public static final String TCE_REFTIME_INFO = "^(\\d{3,4} (AM|PM) \\w{3,3} \\w{3,3} \\w{3,3}\\s{1,2}\\d{1,2}(.*))"; - - public static final String TCE_REFHOUR = "^((.*)(\\.\\.\\.\\d{4,4}Z\\.\\.\\.)(.*))"; - - public static final String LAT_PTRN = "(LATITUDE \\d{0,2}.\\d)"; - //RESERVE UNIT RECONNAISSANCE AIRCRAFT...TO BE NEAR LATITUDE 28.7 - public static final String LATITUDE_INFO = "^((.*)" + LAT_PTRN + "(.*))"; - - public static final String LON_PTRN = "(LONGITUDE \\d{0,3}.\\d)"; - //NORTH...LONGITUDE 94.5 WEST OR ABOUT 45 MILES...75 KM... - public static final String LONGITUDE_INFO = "^((.*)" + LON_PTRN + "(.*))"; - //FORECASTER STEWART - public static final String FORECASTER_PTRN = "^((FORECASTER)(.*))"; + public static final Pattern NWS_INFO = Pattern + .compile("^((NWS TPC)(.*)(\\w{2,2}\\d{6,6}))"); + + // 1100 PM CDT FRI SEP 12 2008 + public static final Pattern TCE_REFTIME_INFO = Pattern + .compile("^(\\d{3,4} (AM|PM) \\w{3,3} \\w{3,3} \\w{3,3}\\s{1,2}\\d{1,2}(.*))"); + + public static final Pattern TCE_REFHOUR = Pattern + .compile("^((.*)(\\.\\.\\.\\d{4,4}Z\\.\\.\\.)(.*))"); + + public static final Pattern LAT_PTRN = Pattern + .compile("(LATITUDE \\d{0,2}.\\d)"); + + // RESERVE UNIT RECONNAISSANCE AIRCRAFT...TO BE NEAR LATITUDE 28.7 + public static final Pattern LATITUDE_INFO = Pattern.compile("^((.*)" + + LAT_PTRN + "(.*))"); + + public static final Pattern LON_PTRN = Pattern + .compile("(LONGITUDE \\d{0,3}.\\d)"); + + // NORTH...LONGITUDE 94.5 WEST OR ABOUT 45 MILES...75 KM... + public static final Pattern LONGITUDE_INFO = Pattern.compile("^((.*)" + + LON_PTRN + "(.*))"); + + // FORECASTER STEWART + public static final Pattern FORECASTER_PTRN = Pattern + .compile("^((FORECASTER)(.*))"); private final InternalType lineType; + private final String reportLine; - + private List subLines = null; - + public InternalReport(InternalType type, String line) { lineType = type; reportLine = line; @@ -150,21 +181,22 @@ public class InternalReport { } /** - * + * * @return */ public List getSubLines() { return subLines; } - + /** - * - * @param buffer Buffer to receive String formatted internal data. If this - * reference is null, a new StringBuilder instance is created. + * + * @param buffer + * Buffer to receive String formatted internal data. If this + * reference is null, a new StringBuilder instance is created. * @return The populated StringBuilder instance. */ public StringBuilder toString(StringBuilder buffer) { - if(buffer == null) { + if (buffer == null) { buffer = new StringBuilder(); } buffer.append("["); @@ -174,16 +206,17 @@ public class InternalReport { buffer.append("}\n"); return buffer; } - + /** * Create a string representation of this class instance. + * * @return The string representation of this class instance. */ @Override public String toString() { StringBuilder sb = toString(null); - if(subLines != null) { - for(InternalReport r : subLines) { + if (subLines != null) { + for (InternalReport r : subLines) { sb.append(" "); r.toString(sb); } @@ -191,26 +224,26 @@ public class InternalReport { return sb.toString(); } - public static List identifyMessage(byte [] message) { + public static List identifyMessage(byte[] message) { List reports = new ArrayList(); List lines = separateLines(message); - if(lines != null) { - Pattern p1 = Pattern.compile(PRODUCT_PTRN); - Pattern p2 = Pattern.compile(DATA_INFO); - Pattern p3 = Pattern.compile(DATETIME_INFO); - Pattern p4 = Pattern.compile(MODEL_INFO); - Pattern p5 = Pattern.compile(INIT_CONDITION_PTRN); - Pattern p6 = Pattern.compile(STORM_TYPE_INFO); - Pattern p7 = Pattern.compile(INIT_TIME_INFO); - Pattern p8 = Pattern.compile(FORECAST_POSITION_INFO); - Pattern p9 = Pattern.compile(STORM_DISSIPATED); - Pattern p10 = Pattern.compile(NWS_INFO); - Pattern p11 = Pattern.compile(TCE_REFTIME_INFO); - Pattern p12 = Pattern.compile(LATITUDE_INFO); - Pattern p13 = Pattern.compile(LONGITUDE_INFO); - Pattern p14 = Pattern.compile(FORECASTER_PTRN); - Pattern p15 = Pattern.compile(TCE_REFHOUR); - + if (lines != null) { + Pattern p1 = PRODUCT_PTRN; + Pattern p2 = DATA_INFO; + Pattern p3 = DATETIME_INFO; + Pattern p4 = MODEL_INFO; + Pattern p5 = INIT_CONDITION_PTRN; + Pattern p6 = STORM_TYPE_INFO; + Pattern p7 = INIT_TIME_INFO; + Pattern p8 = FORECAST_POSITION_INFO; + Pattern p9 = STORM_DISSIPATED; + Pattern p10 = NWS_INFO; + Pattern p11 = TCE_REFTIME_INFO; + Pattern p12 = LATITUDE_INFO; + Pattern p13 = LONGITUDE_INFO; + Pattern p14 = FORECASTER_PTRN; + Pattern p15 = TCE_REFHOUR; + InternalType t1 = InternalType.PRODUCT; InternalType t2 = InternalType.DATA_INFO; InternalType t3 = InternalType.DATETIME_INFO; @@ -226,15 +259,17 @@ public class InternalReport { InternalType t13 = InternalType.LONGITUDE; InternalType t14 = InternalType.END; InternalType t15 = InternalType.TCE_REFHOUR; - - Pattern patterns[] = {p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15}; - InternalType types[] = {t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15}; - - for(String s : lines) { - for(int i = 0; i < patterns.length; i++){ + + Pattern patterns[] = { p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, + p11, p12, p13, p14, p15 }; + InternalType types[] = { t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, + t11, t12, t13, t14, t15 }; + + for (String s : lines) { + for (int i = 0; i < patterns.length; i++) { Matcher m = patterns[i].matcher(s); - if(m.matches()){ - InternalReport rptLine = new InternalReport(types[i],s); + if (m.matches()) { + InternalReport rptLine = new InternalReport(types[i], s); reports.add(rptLine); break; } @@ -244,9 +279,9 @@ public class InternalReport { } return reports; } - + /** - * + * * @param message * @return */ @@ -266,18 +301,18 @@ public class InternalReport { } } } catch (Exception e) { - logger.error("Error reading from reader",e); + LOGGER.error("Error reading from reader", e); } finally { if (reader != null) { try { reader.close(); } catch (IOException ioe) { - logger.error("Error closing reader", ioe); + LOGGER.error("Error closing reader", ioe); } } } } return reportLines; } - + } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/QLMData.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/QLMData.java index 875d78261a..236dc3949e 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/QLMData.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/QLMData.java @@ -45,6 +45,7 @@ import com.raytheon.uf.edex.plugin.tcg.TropicalCycloneGuidanceDao; * so times are set correctly when * processing archive data. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -56,11 +57,11 @@ public class QLMData extends TCGDataAdapter { private class ForecastPosition { public int hour; - public double latitude; + public float latitude; - public double longitude; + public float longitude; - public ForecastPosition(int hour, double lat, double lon) { + public ForecastPosition(int hour, float lat, float lon) { this.hour = hour; this.latitude = lat; this.longitude = lon; @@ -100,8 +101,8 @@ public class QLMData extends TCGDataAdapter { TropicalCycloneGuidance rpt = new TropicalCycloneGuidance(); SurfaceObsLocation location = new SurfaceObsLocation( stationId); - location.setLongitude(fp.longitude); - location.setLatitude(fp.latitude); + location.setLongitude((float) fp.longitude); + location.setLatitude((float) fp.latitude); rpt.setWmoHeader(wmoHeader.getWmoHeader()); rpt.setTraceId(traceId); @@ -155,8 +156,8 @@ public class QLMData extends TCGDataAdapter { String data[] = getParts(positionInfo, 3); int hour = Integer.valueOf(data[0]); - double lat = Double.valueOf(data[1]); - double lon = Double.valueOf(data[2]) * -1; + float lat = Float.valueOf(data[1]); + float lon = Float.valueOf(data[2]) * -1; list.add(new ForecastPosition(hour, lat, lon)); } diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCEData.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCEData.java index 664e5e8614..44be56aa25 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCEData.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCEData.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -44,6 +44,9 @@ import com.raytheon.uf.edex.plugin.tcg.TropicalCycloneGuidanceDao; * ------------ ---------- ----------- -------------------------- * Nov 12, 2009 jsanchez Initial creation * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * Jun 24, 2014 3235 nabowle InternalReport patterns are now + * precompiled. + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -52,6 +55,10 @@ import com.raytheon.uf.edex.plugin.tcg.TropicalCycloneGuidanceDao; */ public class TCEData extends TCGDataAdapter { + private static final Pattern STATION_ID_PATTERN = Pattern.compile("(\\w{2,2}\\d{6,6})"); + + private static final Pattern REF_HOUR_PATTERN = Pattern.compile("(\\d{4,4})"); + private float latitude = -9999; private float longitude = -9999; @@ -99,8 +106,8 @@ public class TCEData extends TCGDataAdapter { TropicalCycloneGuidance rpt = new TropicalCycloneGuidance(); SurfaceObsLocation location = new SurfaceObsLocation( stationId); - location.setLongitude((double) longitude); - location.setLatitude((double) latitude); + location.setLongitude(longitude); + location.setLatitude(latitude); rpt.setWmoHeader(wmoHeader.getWmoHeader()); rpt.setTraceId(traceId); rpt.setStormName(stormName); @@ -132,8 +139,7 @@ public class TCEData extends TCGDataAdapter { } private void parseStationIdInfo(String stationIdInfo) { - Pattern p = Pattern.compile("(\\w{2,2}\\d{6,6})"); - Matcher m = p.matcher(stationIdInfo); + Matcher m = STATION_ID_PATTERN.matcher(stationIdInfo); if (m.find()) { stationId = m.group(); } @@ -147,8 +153,7 @@ public class TCEData extends TCGDataAdapter { } private void parseRefhour(String refhourInfo) { - Pattern p = Pattern.compile("(\\d{4,4})"); - Matcher m = p.matcher(refhourInfo); + Matcher m = REF_HOUR_PATTERN.matcher(refhourInfo); if (m.find()) { hour = Integer.parseInt(m.group().substring(0, 2)); minute = Integer.parseInt(m.group().substring(2)); @@ -156,8 +161,7 @@ public class TCEData extends TCGDataAdapter { } private void parseLatitude(String latitudeInfo) { - Pattern p = Pattern.compile(InternalReport.LAT_PTRN); - Matcher m = p.matcher(latitudeInfo); + Matcher m = InternalReport.LAT_PTRN.matcher(latitudeInfo); if (m.find()) { latitude = Float.parseFloat(m.group().substring(8).trim()); if (latitudeInfo.contains("SOUTH")) { @@ -168,8 +172,7 @@ public class TCEData extends TCGDataAdapter { } private void parseLongitude(String longitudeInfo) { - Pattern p = Pattern.compile(InternalReport.LON_PTRN); - Matcher m = p.matcher(longitudeInfo); + Matcher m = InternalReport.LON_PTRN.matcher(longitudeInfo); if (m.find()) { longitude = Float.parseFloat(m.group().substring(10).trim()); if (longitudeInfo.contains("WEST")) { diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCGDataAdapter.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCGDataAdapter.java index 917f5297b7..da947acae6 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCGDataAdapter.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcg/src/com/raytheon/uf/edex/plugin/tcg/decoder/TCGDataAdapter.java @@ -1,19 +1,19 @@ /** * This software was developed and / or modified by Raytheon Company, * pursuant to Contract DG133W-05-CQ-1067 with the US Government. - * + * * U.S. EXPORT CONTROLLED TECHNICAL DATA * This software product contains export-restricted data whose * export/transfer/disclosure is restricted by U.S. law. Dissemination * to non-U.S. persons whether in the United States or abroad requires * an export license or other authorization. - * + * * Contractor Name: Raytheon Company * Contractor Address: 6825 Pine Street, Suite 340 * Mail Stop B8 * Omaha, NE 68106 * 402.291.0100 - * + * * See the AWIPS II Master Rights File ("Master Rights File.pdf") for * further licensing information. **/ @@ -26,22 +26,21 @@ import java.util.List; import java.util.Map; import java.util.TimeZone; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import com.raytheon.edex.esb.Headers; -import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dataplugin.tcg.TCGStormType; import com.raytheon.uf.common.dataplugin.tcg.TropicalCycloneGuidance; import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.pointdata.PointDataView; import com.raytheon.uf.common.time.DataTime; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.plugin.tcg.TropicalCycloneGuidanceDao; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** - * TODO Add Description + * Base class for Tropical Cyclone Guidance (TCG) products. * *
        * 
      @@ -52,6 +51,9 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader;
        * Oct 26, 2009            jsanchez     Initial creation
        * Jun 28, 2012  #826      dgilling     Ensure getDataTime properly
        *                                      handles time zones.
      + * May 14, 2014 2536       bclement     moved WMO Header to common, removed constructDataURI() call
      + * Jun 24, 2014 3235       nabowle      Switch to slf4j.
      + * Jul 30, 2014 3410       bclement     lat, lon and data uri moved to database point data desc
        * 
        * 
      * @@ -60,7 +62,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; */ public abstract class TCGDataAdapter { - protected static Log logger = LogFactory.getLog(TCGDataAdapter.class); + protected static Logger logger = LoggerFactory + .getLogger(TCGDataAdapter.class); protected PointDataDescription pointDataDescription; @@ -118,7 +121,8 @@ public abstract class TCGDataAdapter { public void setData(byte[] message, String traceId, Headers headers) { currentReport = -1; this.traceId = traceId; - wmoHeader = new WMOHeader(message, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + wmoHeader = new WMOHeader(message, fileName); if (wmoHeader != null) { reports = findReports(message); } else { @@ -135,7 +139,7 @@ public abstract class TCGDataAdapter { /** * Does this parser contain any more reports. - * + * * @return Does this parser contain any more reports. */ public boolean hasNext() { @@ -153,7 +157,7 @@ public abstract class TCGDataAdapter { /** * Get the next available report. Returns a null reference if no more * reports are available. - * + * * @return The next available report. */ public TropicalCycloneGuidance next() { @@ -169,16 +173,10 @@ public abstract class TCGDataAdapter { report = reports.get(currentReport++); logger.debug("Getting report " + report); - try { - report.constructDataURI(); - if (URI_MAP.containsKey(report.getDataURI())) { - report = null; - } else { - URI_MAP.put(report.getDataURI(), Boolean.TRUE); - } - } catch (PluginException e) { - logger.error(traceId + "- Unable to construct dataURI", e); + if (URI_MAP.containsKey(report.getDataURI())) { report = null; + } else { + URI_MAP.put(report.getDataURI(), Boolean.TRUE); } if (report != null) { @@ -188,10 +186,7 @@ public abstract class TCGDataAdapter { PointDataView view = pdc.append(); view.setLong("validTime", report.getDataTime().getValidTime() .getTimeInMillis()); - view.setFloat("latitude", (float) report.getLatitude()); - view.setFloat("longitude", (float) report.getLongitude()); view.setString("wmoHeader", report.getWmoHeader()); - view.setString("dataURI", report.getDataURI()); view.setString("stormType", report.getType().toString()); view.setString("stormName", report.getStormName()); @@ -205,7 +200,7 @@ public abstract class TCGDataAdapter { } /** - * + * * @param obsData * @return */ diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/META-INF/MANIFEST.MF index 24a01dc5df..f71db72efb 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/META-INF/MANIFEST.MF @@ -2,9 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Tcs Plug-in Bundle-SymbolicName: com.raytheon.uf.edex.plugin.tcs -Bundle-Version: 1.12.1174.qualifier +Bundle-Version: 1.14.0.qualifier Bundle-Vendor: RAYTHEON -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.raytheon.uf.common.dataplugin.tcs;bundle-version="1.0.0", com.raytheon.uf.edex.decodertools, com.raytheon.uf.common.pointdata, @@ -16,8 +16,10 @@ Require-Bundle: com.raytheon.uf.common.dataplugin.tcs;bundle-version="1.0.0", com.raytheon.uf.common.serialization Import-Package: com.raytheon.edex.esb, com.raytheon.uf.common.dataplugin, + com.raytheon.uf.common.dataplugin.exception, com.raytheon.uf.common.datastorage.records, com.raytheon.uf.common.status, com.raytheon.uf.common.time, + com.raytheon.uf.common.wmo, com.raytheon.uf.edex.core, - org.apache.commons.logging + org.slf4j diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/pointdata/tcs.xml b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/pointdata/tcs.xml index 994e31afb2..52aaffec9e 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/pointdata/tcs.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/pointdata/tcs.xml @@ -23,7 +23,6 @@ --> - diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/spring/tcs-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/spring/tcs-ingest.xml index c6fd1f8d32..1c9610a805 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/spring/tcs-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/res/spring/tcs-ingest.xml @@ -13,15 +13,9 @@
      - - - - + errorHandlerRef="errorHandler"> diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/TCSDecoder.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/TCSDecoder.java index 1161e959c6..de9ab56202 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/TCSDecoder.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/TCSDecoder.java @@ -20,15 +20,15 @@ package com.raytheon.uf.edex.plugin.tcs; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import com.raytheon.edex.esb.Headers; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.dataplugin.tcs.TropicalCycloneSummary; import com.raytheon.uf.common.pointdata.PointDataDescription; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.plugin.tcs.decoder.TCSDataAdapter; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * Decoder implementation for the tcs (Tropical Cyclone Summary) plugin. @@ -39,6 +39,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Nov 12, 2009 jsanchez Initial creation + * May 14, 2014 2536 bclement moved WMO Header to common + * Jun 23, 2014 3272 nabowle Switch to slf4j. * * * @@ -46,7 +48,7 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * @version 1.0 */ public class TCSDecoder { - private Log logger = LogFactory.getLog(getClass()); + private static Logger logger = LoggerFactory.getLogger(TCSDecoder.class); private final String pluginName; @@ -105,7 +107,9 @@ public class TCSDecoder { if (data != null && data.length > 0) { TropicalCycloneSummary tcs = null; try { - WMOHeader wmoHeader = new WMOHeader(data, headers); + String fileName = (String) headers + .get(WMOHeader.INGEST_FILE_NAME); + WMOHeader wmoHeader = new WMOHeader(data, fileName); TCSDataAdapter adapter = TCSDataAdapter.getAdapter(pdd, dao, pluginName, wmoHeader); diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCMData.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCMData.java index 569e4853c8..b7e91d1d73 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCMData.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCMData.java @@ -36,7 +36,8 @@ import com.raytheon.uf.common.dataplugin.tcs.util.Util; import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation; import com.raytheon.uf.common.time.DataTime; -import com.raytheon.uf.edex.decodertools.time.TimeTools; +import com.raytheon.uf.common.wmo.WMOHeader; +import com.raytheon.uf.common.wmo.WMOTimeParser; import com.raytheon.uf.edex.plugin.tcs.TropicalCycloneSummaryDao; /** @@ -52,6 +53,8 @@ import com.raytheon.uf.edex.plugin.tcs.TropicalCycloneSummaryDao; * Apr 19, 2012 457 dgilling Use TimeTools.findDataTime() to * calculate times. * Aug 30, 2013 2298 rjpeter Make getPluginName abstract + * May 14, 2014 2536 bclement moved WMO Header to common, removed TimeTools usage + * Jul 23, 2014 3410 bclement location changed to floats * * * @@ -104,8 +107,6 @@ public class TCMData extends TCSDataAdapter { private static final int MINIMUM_LINES = 5; - private static final String TIMEZONE = "GMT"; - private String name; private int pressure = 0; @@ -252,9 +253,10 @@ public class TCMData extends TCSDataAdapter { m = timePtrn.matcher(mask); if (m.find()) { time = m.group(2) + "." + m.group(4); - - Calendar calendar = TimeTools.findDataTime( - m.group(2) + m.group(4) + m.group(5), headers); + String fileName = (String) headers + .get(WMOHeader.INGEST_FILE_NAME); + Calendar calendar = WMOTimeParser.findDataTime( + m.group(2) + m.group(4) + m.group(5), fileName); DataTime fcastTime = new DataTime(calendar); if (refTime == null) { refTime = new DataTime(fcastTime.getRefTimeAsCalendar()); @@ -280,8 +282,8 @@ public class TCMData extends TCSDataAdapter { m = latlonPtrn.matcher(mask); if (m.find()) { SurfaceObsLocation location = new SurfaceObsLocation(); - double latitude = Double.parseDouble(((m.group(1)))); - double longitude = Double.parseDouble((m.group(3))); + float latitude = Float.parseFloat(((m.group(1)))); + float longitude = Float.parseFloat((m.group(3))); location.setLatitude(m.group(2).equals("S") ? -1 * latitude : latitude); location.setLongitude(m.group(4).equals("W") ? -1 * longitude diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCSDataAdapter.java b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCSDataAdapter.java index e3510de906..d3b6202e68 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCSDataAdapter.java +++ b/edexOsgi/com.raytheon.uf.edex.plugin.tcs/src/com/raytheon/uf/edex/plugin/tcs/decoder/TCSDataAdapter.java @@ -24,19 +24,19 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import com.raytheon.edex.esb.Headers; -import com.raytheon.uf.common.dataplugin.PluginException; +import com.raytheon.uf.common.dataplugin.exception.UnrecognizedDataException; import com.raytheon.uf.common.dataplugin.tcs.Radius; import com.raytheon.uf.common.dataplugin.tcs.TropicalCycloneSummary; import com.raytheon.uf.common.dataplugin.tcs.util.TCSConstants; import com.raytheon.uf.common.pointdata.PointDataContainer; import com.raytheon.uf.common.pointdata.PointDataDescription; import com.raytheon.uf.common.pointdata.PointDataView; +import com.raytheon.uf.common.wmo.WMOHeader; import com.raytheon.uf.edex.plugin.tcs.TropicalCycloneSummaryDao; -import com.raytheon.uf.edex.wmo.message.WMOHeader; /** * TODO Add Description @@ -51,6 +51,11 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; * Apr 19, 2012 #457 dgilling Create headers field so * subclasses can use TimeTools * for time calculations. + * May 14, 2014 2536 bclement moved WMO Header to common, removed constructDataURI() call + * Jun 23, 2014 3272 nabowle Throw UnrecognizedDataException in + * {@link #getDecodedData()} if there were + * no reports. Switch to slf4j. + * Jul 30, 2014 3410 bclement data uri moved to database point data desc * * * @@ -59,7 +64,8 @@ import com.raytheon.uf.edex.wmo.message.WMOHeader; */ public abstract class TCSDataAdapter implements TCSConstants { - protected static Log logger = LogFactory.getLog(TCSDataAdapter.class); + protected static Logger logger = LoggerFactory + .getLogger(TCSDataAdapter.class); protected PointDataDescription pointDataDescription; @@ -93,7 +99,8 @@ public abstract class TCSDataAdapter implements TCSConstants { currentReport = -1; this.traceId = traceId; this.headers = headers; - wmoHeader = new WMOHeader(message, headers); + String fileName = (String) headers.get(WMOHeader.INGEST_FILE_NAME); + wmoHeader = new WMOHeader(message, fileName); if (wmoHeader != null) { reports = findReports(message); } else { @@ -123,7 +130,8 @@ public abstract class TCSDataAdapter implements TCSConstants { return next; } - public TropicalCycloneSummary getDecodedData() { + public TropicalCycloneSummary getDecodedData() + throws UnrecognizedDataException { boolean isFirstReport = true; int COLUMN_WIDTH = 4; TropicalCycloneSummary headReport = null; @@ -138,7 +146,6 @@ public abstract class TCSDataAdapter implements TCSConstants { headReport = report; view = getContainer(report).append(); view.setString(WMO_HEADER, report.getWmoHeader()); - view.setString(DATAURI, report.getDataURI()); view.setString(TYPE, report.getProductType()); view.setString(NAME, report.getName()); view.setInt(PRESSURE, report.getPressure()); @@ -187,6 +194,11 @@ public abstract class TCSDataAdapter implements TCSConstants { row++; } } + + if (view == null || headReport == null) { + throw new UnrecognizedDataException("No reports were found."); + } + view.setInt("size", row); headReport.setPointDataView(view); return headReport; @@ -211,16 +223,10 @@ public abstract class TCSDataAdapter implements TCSConstants { report = reports.get(currentReport++); logger.debug("Getting report " + report); - try { - report.constructDataURI(); - if (URI_MAP.containsKey(report.getDataURI())) { - report = null; - } else { - URI_MAP.put(report.getDataURI(), Boolean.TRUE); - } - } catch (PluginException e) { - logger.error(traceId + "- Unable to construct dataURI", e); + if (URI_MAP.containsKey(report.getDataURI())) { report = null; + } else { + URI_MAP.put(report.getDataURI(), Boolean.TRUE); } } return report; diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.vaa/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.plugin.vaa/META-INF/MANIFEST.MF index 991b390428..70cdfd85e2 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.vaa/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.plugin.vaa/META-INF/MANIFEST.MF @@ -13,4 +13,5 @@ Require-Bundle: com.raytheon.uf.edex.decodertools, Import-Package: com.raytheon.edex.esb, com.raytheon.uf.common.pointdata.spatial, com.raytheon.uf.common.status, - com.raytheon.uf.common.time + com.raytheon.uf.common.time, + com.raytheon.uf.common.wmo diff --git a/edexOsgi/com.raytheon.uf.edex.plugin.vaa/res/spring/vaa-ingest.xml b/edexOsgi/com.raytheon.uf.edex.plugin.vaa/res/spring/vaa-ingest.xml index d9246c5d94..171ec133b1 100644 --- a/edexOsgi/com.raytheon.uf.edex.plugin.vaa/res/spring/vaa-ingest.xml +++ b/edexOsgi/com.raytheon.uf.edex.plugin.vaa/res/spring/vaa-ingest.xml @@ -11,15 +11,9 @@
      - - - - + errorHandlerRef="errorHandler"> + + + + + + + + + + + + + + + java.lang.Throwable + + + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-impl.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-impl.xml index 717407dfbd..4a7924e7a6 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-impl.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-impl.xml @@ -17,7 +17,6 @@ - @@ -38,23 +37,19 @@
      - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-registry-init.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-registry-init.xml index 617f42baec..f82e268fa4 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-registry-init.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-registry-init.xml @@ -5,7 +5,8 @@ - + + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client-route.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client-route.xml index 58774ace37..d72e240bbf 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client-route.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client-route.xml @@ -3,17 +3,22 @@ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> - + - + - - - - - - + + + + + bodyAs(javax.servlet.http.HttpServletRequest) + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml index 580a790b58..ced6b51490 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml @@ -2,38 +2,12 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> - - - - - - - - - - - + + - - - - - + - - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webserver.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webserver.xml index d8c8df07b3..78c648ddf7 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webserver.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webserver.xml @@ -2,52 +2,10 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webservices.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webservices.xml index 6a7fbb2afe..aaf7865d97 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webservices.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webservices.xml @@ -1,51 +1,118 @@ - - - + xsi:schemaLocation="http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + - - - - + + + + - - + - - - + + - @@ -53,35 +120,13 @@ - - - - - - - - - - - - - - - - - - - @@ -98,24 +143,9 @@ - - - - - - - - - - - - - - - \ No newline at end of file + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-xacml.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-xacml.xml index 945ffca2c6..4d7e2af1c2 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-xacml.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-xacml.xml @@ -2,10 +2,21 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> - - + + + + + + + + + + + + + + @@ -754,7 +765,9 @@ + class="com.raytheon.uf.edex.registry.acp.xacml.engine.expression.impl.AttributeDesignatorExpression" > + + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml.xml index a062e3713d..13060469d9 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml.xml @@ -5,23 +5,8 @@ - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/resources/com.raytheon.uf.edex.registry.ebxml.properties b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/resources/com.raytheon.uf.edex.registry.ebxml.properties index 99492c50ac..bc7bef32c2 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/resources/com.raytheon.uf.edex.registry.ebxml.properties +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/resources/com.raytheon.uf.edex.registry.ebxml.properties @@ -13,4 +13,39 @@ ebxml-notification-batch-size=200 # The maximum number of threads that the ebxml registry will use for processing web requests # This number must be >=5. As a general rule, the maximum number of connections should be: # 5+{registries this registry is replicating to/from}=max-threads -ebxml-webserver-max-threads=8 \ No newline at end of file +ebxml-webserver-max-threads=8 +# EBXML thrift service port +ebxml.thrift.service.port=9588 +# EBXML webserver port +ebxml.registry.webserver.port=8082 +# EBXML registry host +ebxml.registry.host=localhost +# EBXML federation enable flag +ebxml.registry.federation.enabled=false +# EBXML registry webserver home +ebxml.registry.webserver.home=/awips2/edex/webapps/registryEbxml/ + + +#### +# Registry Web server IP access control configurations +# This is a ; delimited list of IP access configurations +# +#An empty white list is treated as match all. If there is at least one entry in the white list, +#then a request must match a white list entry. Black list entries are always applied, so that +#even if an entry matches the white list, a black list entry will override it. +# +#Internet address specification is separated from the URI pattern using the "|" (pipe) character. +#URI patterns follow the servlet specification for simple * prefix and suffix wild +#cards (e.g. /, /foo, /foo/bar, /foo/bar/*, *.baz). +# +#Examples of the entry specifications are: +# +# 10.10.1.2 - all requests from IP 10.10.1.2 +# 10.10.1.2|/foo/bar - all requests from IP 10.10.1.2 to URI /foo/bar +# 10.10.1.2|/foo/* - all requests from IP 10.10.1.2 to URIs starting with /foo/ +# 10.10.1.2|*.html - all requests from IP 10.10.1.2 to URIs ending with .html +# 10.10.0-255.0-255 - all requests from IPs within 10.10.0.0/16 subnet +# 10.10.0-.-255|/foo/bar - all requests from IPs within 10.10.0.0/16 subnet to URI /foo/bar +# 10.10.0-3,1,3,7,15|/foo/* - all requests from IPs addresses with last octet equal to 1,3,7,15 in subnet 10.10.0.0/22 to URIs starting with /foo/ +ebxml-webserver-ip-whitelist= +ebxml-webserver-ip-blacklist= \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLContextHandler.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLContextHandler.java index 880924c72b..c0fb1332d0 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLContextHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLContextHandler.java @@ -51,7 +51,7 @@ import org.opensaml.xacml.ctx.impl.AttributeValueTypeImplBuilder; import org.opensaml.xacml.ctx.impl.RequestTypeImplBuilder; import org.opensaml.xacml.ctx.impl.ResourceTypeImplBuilder; import org.opensaml.xacml.ctx.impl.SubjectTypeImplBuilder; -import org.opensaml.xacml.policy.ObligationType; +import org.opensaml.xacml.policy.PolicyType; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -63,8 +63,6 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.registry.acp.xacml.conformance.DataTypes; import com.raytheon.uf.edex.registry.acp.xacml.conformance.Identifiers; -import com.raytheon.uf.edex.registry.acp.xacml.engine.obligation.XACMLObligationEvaluator; -import com.raytheon.uf.edex.registry.acp.xacml.exception.XACMLException; import com.raytheon.uf.edex.registry.acp.xacml.exception.XACMLNotApplicableException; import com.raytheon.uf.edex.registry.acp.xacml.exception.XACMLProcessingException; import com.raytheon.uf.edex.registry.acp.xacml.util.XACMLObjectUtil; @@ -91,6 +89,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; * 3/18/2013 1802 bphillip Modified to use transaction boundaries and spring injection * 4/9/2013 1802 bphillip Added additional object checking * 10/23/2013 1538 bphillip Changed constructor call for QueryRequest + * 7/10/2014 1717 bphillip Removed obligation processing from authorize method * * * @author bphillip @@ -129,25 +128,10 @@ public class XACMLContextHandler { throws MsgRegistryException, EbxmlRegistryException { RequestType request = constructRequest(userName, object); - XACMLObject policy = xacmlPolicyAdmin .getPolicyObject("urn:oasis:names:tc:xacml:2.0:data-delivery:default-policySet"); - XACMLPolicyDecisionPoint pdp = new XACMLPolicyDecisionPoint(policy, - request); - - ResponseType response = pdp.evaluate(); - List obligations = pdp.getObligations(); - if (obligations != null) { - for (ObligationType obligation : obligations) { - try { - XACMLObligationEvaluator.getInstance().evaluate(obligation, - request); - } catch (XACMLException e) { - e.printStackTrace(); - } - } - } - + XACMLPolicyDecisionPoint pdp = new XACMLPolicyDecisionPoint(policy); + ResponseType response = pdp.evaluate((PolicyType)policy,request); return response; } @@ -355,6 +339,9 @@ public class XACMLContextHandler { attrName = attrTokens[attrTokens.length - 1]; } + if(attrName.equals("id")){ + return objId.toString(); + } Object repoItem = registryObjectDao.getById(objId.toString()); if (repoItem == null) { diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyAdministrator.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyAdministrator.java index b263b3d336..47a6f9152a 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyAdministrator.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyAdministrator.java @@ -49,7 +49,6 @@ import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.registry.acp.xacml.util.XACMLParser; import com.raytheon.uf.edex.registry.ebxml.dao.ExtrinsicObjectDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; -import com.raytheon.uf.edex.registry.ebxml.init.RegistryInitializedListener; import com.raytheon.uf.edex.registry.ebxml.services.lifecycle.LifecycleManagerImpl; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; @@ -67,6 +66,8 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; * 3/18/2013 1802 bphillip Modified to use transaction boundaries and spring injection * 4/9/2013 1802 bphillip Import changes due to moved constant classes * 5/21/2013 2022 bphillip Implemented RegistryInitializedListener + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. + * 7/10/2014 1717 bphillip No longer implements RegistryInitializedListener * * * @author bphillip @@ -74,7 +75,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; */ @Service @Transactional -public class XACMLPolicyAdministrator implements RegistryInitializedListener { +public class XACMLPolicyAdministrator { /** The status handler */ private static final transient IUFStatusHandler statusHandler = UFStatus @@ -182,16 +183,6 @@ public class XACMLPolicyAdministrator implements RegistryInitializedListener { return policySet; } - @Override - public void executeAfterRegistryInit() throws EbxmlRegistryException { - try { - loadAccessControlPolicies(); - } catch (MsgRegistryException e) { - throw new EbxmlRegistryException(e); - } - - } - /** * Loads the access control policies from the file system folder * @@ -212,6 +203,7 @@ public class XACMLPolicyAdministrator implements RegistryInitializedListener { submitRequest.setComment("Submission of access control policy"); submitRequest.setCheckReferences(false); submitRequest.setMode(Mode.CREATE_OR_REPLACE); + submitRequest.setUsername(RegistryUtil.registryUser); submitRequest.setId("ACP submission"); List regObjs = new ArrayList(); for (int i = 0; i < fileList.length; i++) { diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyDecisionPoint.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyDecisionPoint.java index 228cba834c..fa2ab70d63 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyDecisionPoint.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/XACMLPolicyDecisionPoint.java @@ -19,17 +19,15 @@ **/ package com.raytheon.uf.edex.registry.acp.xacml; -import java.util.List; - import org.opensaml.xacml.XACMLObject; import org.opensaml.xacml.ctx.DecisionType.DECISION; import org.opensaml.xacml.ctx.RequestType; import org.opensaml.xacml.ctx.ResponseType; import org.opensaml.xacml.ctx.StatusCodeType; -import org.opensaml.xacml.policy.ObligationType; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.registry.acp.xacml.engine.policy.Evaluator; import com.raytheon.uf.edex.registry.acp.xacml.exception.XACMLProcessingException; import com.raytheon.uf.edex.registry.acp.xacml.objects.Match; @@ -52,6 +50,7 @@ import com.raytheon.uf.edex.registry.acp.xacml.util.XACMLObjectUtil; * ------------ ---------- ----------- -------------------------- * 8/17/2012 724 bphillip Initial Coding * 3/18/2013 1802 bphillip Modified to use transaction boundaries and spring injection + * 7/10/2014 1717 bphillip Removed unneccessary methods * * * @author bphillip @@ -61,15 +60,6 @@ import com.raytheon.uf.edex.registry.acp.xacml.util.XACMLObjectUtil; @Transactional public class XACMLPolicyDecisionPoint { - /** The obligations to evaluate */ - private List obligations; - - /** The Policy or Policy Set object being used to evaluate the request */ - private XACMLObject policyObject; - - /** The Request being evaluated */ - private RequestType request; - public XACMLPolicyDecisionPoint() { } @@ -82,10 +72,7 @@ public class XACMLPolicyDecisionPoint { * @param request * The request being evaluated */ - public XACMLPolicyDecisionPoint(XACMLObject policyObject, - RequestType request) { - this.policyObject = policyObject; - this.request = request; + public XACMLPolicyDecisionPoint(XACMLObject policyObject) { } /** @@ -93,63 +80,25 @@ public class XACMLPolicyDecisionPoint { * * @return The response */ - public ResponseType evaluate() { + public ResponseType evaluate(XACMLObject policy, RequestType request) { + ResponseType response = null; Match match; try { - match = Evaluator.getInstance().evaluate(policyObject, request); + match = Evaluator.getInstance().evaluate(policy, request); } catch (XACMLProcessingException e) { - return XACMLObjectUtil.buildResponse(DECISION.Deny, + response = XACMLObjectUtil.buildResponse(DECISION.Deny, StatusCodeType.SC_PROCESSING_ERROR, e.getLocalizedMessage(), ""); + return response; } - this.obligations = match.getObligations(); - return XACMLObjectUtil.buildResponse(match.getMatch(), + + response = XACMLObjectUtil.buildResponse(match.getMatch(), match.getStatusCode(), match.getMessage(), ""); - } - - /** - * @return the obligations - */ - public List getObligations() { - return obligations; - } - - /** - * @param obligations - * the obligations to set - */ - public void setObligations(List obligations) { - this.obligations = obligations; - } - - /** - * @return the policyObject - */ - public XACMLObject getPolicyObject() { - return policyObject; - } - - /** - * @param policyObject - * the policyObject to set - */ - public void setPolicyObject(XACMLObject policyObject) { - this.policyObject = policyObject; - } - - /** - * @return the request - */ - public RequestType getRequest() { - return request; - } - - /** - * @param request - * the request to set - */ - public void setRequest(RequestType request) { - this.request = request; + if (!CollectionUtil.isNullOrEmpty(match.getObligations())) { + response.getResult().getObligations().getObligations() + .addAll(match.getObligations()); + } + return response; } } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/util/XACMLObjectUtil.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/util/XACMLObjectUtil.java index 6dc89e0947..f37abe9640 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/util/XACMLObjectUtil.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/acp/xacml/util/XACMLObjectUtil.java @@ -34,6 +34,7 @@ import org.opensaml.xacml.ctx.impl.StatusCodeTypeImplBuilder; import org.opensaml.xacml.ctx.impl.StatusDetailTypeImplBuilder; import org.opensaml.xacml.ctx.impl.StatusMessageTypeImplBuilder; import org.opensaml.xacml.ctx.impl.StatusTypeImplBuilder; +import org.opensaml.xacml.policy.impl.ObligationsTypeImplBuilder; import com.raytheon.uf.edex.registry.acp.xacml.conformance.IdentifierPrefixes; import com.raytheon.uf.edex.registry.acp.xacml.conformance.SchemaPrefixes; @@ -50,6 +51,7 @@ import com.raytheon.uf.edex.registry.acp.xacml.exception.XACMLSyntaxException; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 8/17/2012 724 bphillip Initial Coding + * 7/10/2014 1717 bphillip Set obligations on response object * * * @author bphillip @@ -168,6 +170,7 @@ public class XACMLObjectUtil { statusObj.setStatusDetail(statusDetailObj); } resultObj.setStatus(statusObj); + resultObj.setObligations(new ObligationsTypeImplBuilder().buildObject()); // Return the response return resultObj; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/acp/PasswordCallback.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/acp/PasswordCallback.java index 239470a579..9ade179882 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/acp/PasswordCallback.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/acp/PasswordCallback.java @@ -28,9 +28,11 @@ import javax.security.auth.callback.UnsupportedCallbackException; import org.apache.ws.security.WSPasswordCallback; +import com.raytheon.uf.edex.registry.ebxml.web.security.CredentialCache; + /** * - * Password callback class used with WS security. Currently unused. + * Password callback class used with WS security. * *
        * 
      @@ -39,6 +41,8 @@ import org.apache.ws.security.WSPasswordCallback;
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Aug 3, 2012            bphillip     Initial creation
      + * 7/10/2014    1717       bphillip    Get user information from CredentialCache
      + * 7/24/2014    1712       bphillip    Spring injection of CredentialCache
        * 
        * 
      * @@ -46,6 +50,9 @@ import org.apache.ws.security.WSPasswordCallback; * @version 1.0 */ public class PasswordCallback implements CallbackHandler { + + /** Cache of user credentials */ + private CredentialCache credentialCache; /** * Creates a new PasswordCallback @@ -59,8 +66,18 @@ public class PasswordCallback implements CallbackHandler { for (Callback call : callbacks) { if (call instanceof WSPasswordCallback) { WSPasswordCallback cb = (WSPasswordCallback) call; - cb.setPassword("password"); + cb.setPassword(credentialCache.getUserPassword( + ((WSPasswordCallback) call).getIdentifier())); } } } + + /** + * @param credentialCache the credentialCache to set + */ + public void setCredentialCache(CredentialCache credentialCache) { + this.credentialCache = credentialCache; + } + + } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/AuditableEventTypeDao.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/AuditableEventTypeDao.java index a84d01348d..d874ee252e 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/AuditableEventTypeDao.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/AuditableEventTypeDao.java @@ -45,10 +45,10 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import com.raytheon.uf.common.registry.constants.QueryReturnTypes; -import com.raytheon.uf.common.registry.services.RegistrySOAPServices; import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; +import com.raytheon.uf.edex.registry.ebxml.services.soap.RegistrySOAPServices; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; /** @@ -70,6 +70,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; * 10/23/2013 1538 bphillip Changed send time slot to be DateTimeValue instead of integer * 12/2/2013 1829 bphillip Changed to use non generic getter of value type * 01/21/2014 2613 bphillip Modified queries to better handle deletes + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -137,7 +138,7 @@ public class AuditableEventTypeDao extends @Override public void create(AuditableEventType event) { - template.save(event); + getCurrentSession().save(event); } /** diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/DbInit.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/DbInit.java index 0a47ce8c58..69d3899a3c 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/DbInit.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/DbInit.java @@ -36,7 +36,6 @@ import java.util.Map; import java.util.jar.JarEntry; import java.util.jar.JarFile; -import javax.persistence.Version; import javax.xml.bind.JAXBException; import oasis.names.tc.ebxml.regrep.wsdl.registry.services.v4.LifecycleManager; @@ -46,7 +45,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.RegistryObjectType; import org.apache.commons.beanutils.PropertyUtils; import org.hibernate.SessionFactory; -import org.hibernate.cfg.AnnotationConfiguration; +import org.hibernate.cfg.Configuration; import org.hibernate.jdbc.Work; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; @@ -66,7 +65,7 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.util.ReflectionUtil; import com.raytheon.uf.edex.core.EDEXUtil; -import com.raytheon.uf.edex.core.props.PropertiesFactory; +import com.raytheon.uf.edex.registry.acp.xacml.XACMLPolicyAdministrator; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; import com.raytheon.uf.edex.registry.ebxml.init.RegistryInitializedListener; @@ -93,6 +92,10 @@ import com.raytheon.uf.edex.registry.ebxml.init.RegistryInitializedListener; * Nov 14, 2013 2552 bkowal EbxmlJaxbManager is now accessed via getInstance * Dec 20, 2013 2636 mpduff Set initialized to true before postInitialized is called. * Dec 04, 2013 2584 dhladky Version based EbxmlJaxbManager + * 7/10/2014 1717 bphillip Removed xacml policy admin object + * Jul 10, 2014 2914 garmendariz Remove EnvProperties + * Jul 28, 2014 3474 dhladky Fixed bad ownership settings. + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @author bphillip @@ -118,6 +121,8 @@ public class DbInit extends com.raytheon.uf.edex.database.init.DbInit implements private SessionFactory sessionFactory; private ApplicationContext applicationContext; + + private XACMLPolicyAdministrator xacmlPolicyAdmin; /** * Creates a new instance of DbInit. This constructor should only be called @@ -137,6 +142,7 @@ public class DbInit extends com.raytheon.uf.edex.database.init.DbInit implements executeRegistrySql(); populateDB(); + xacmlPolicyAdmin.loadAccessControlPolicies(); } public static boolean isDbInitialized() { @@ -209,8 +215,7 @@ public class DbInit extends com.raytheon.uf.edex.database.init.DbInit implements JarFile jar = null; try { - jar = new JarFile(PropertiesFactory.getInstance() - .getEnvProperties().getEnvValue("PLUGINDIR") + jar = new JarFile(EDEXUtil.getEdexPlugins() + File.separator + "com.raytheon.uf.edex.registry.ebxml.jar"); } catch (IOException e) { throw new EbxmlRegistryException("Unable to find registry jar!", e); @@ -286,7 +291,7 @@ public class DbInit extends com.raytheon.uf.edex.database.init.DbInit implements // If no owner is assigned, assign the defaul owner if (regObj.getOwner() == null) { - regObj.setOwner(RegistryUtil.DEFAULT_OWNER); + regObj.setOwner(RegistryUtil.defaultUser); } /* @@ -315,12 +320,12 @@ public class DbInit extends com.raytheon.uf.edex.database.init.DbInit implements * {@inheritDoc} */ @Override - protected AnnotationConfiguration getAnnotationConfiguration() { + protected Configuration getConfiguration() { /* * Create a new configuration object which holds all the classes that * this Hibernate SessionFactory is aware of */ - AnnotationConfiguration aConfig = new AnnotationConfiguration(); + Configuration aConfig = new Configuration(); for (Object obj : sessionFactory.getAllClassMetadata().keySet()) { try { Class clazz = Class.forName((String) obj); @@ -404,4 +409,13 @@ public class DbInit extends com.raytheon.uf.edex.database.init.DbInit implements throws BeansException { this.applicationContext = applicationContext; } + + /** + * @param xacmlPolicyAdmin the xacmlPolicyAdmin to set + */ + public void setXacmlPolicyAdmin(XACMLPolicyAdministrator xacmlPolicyAdmin) { + this.xacmlPolicyAdmin = xacmlPolicyAdmin; + } + + } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/EbxmlPostgresValidationStrategy.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/EbxmlPostgresValidationStrategy.java index 75b6c72b03..18961cc8b0 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/EbxmlPostgresValidationStrategy.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/EbxmlPostgresValidationStrategy.java @@ -23,8 +23,8 @@ import java.util.ArrayList; import java.util.List; import org.hibernate.SessionFactory; -import org.hibernate.cfg.AnnotationConfiguration; -import org.hibernate.impl.SessionFactoryImpl; +import org.hibernate.cfg.Configuration; +import org.hibernate.internal.SessionFactoryImpl; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; @@ -39,6 +39,7 @@ import com.raytheon.uf.common.status.UFStatus; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Apr 15, 2013 1693 djohnson Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -63,7 +64,7 @@ public class EbxmlPostgresValidationStrategy implements * {@inheritDoc} */ @Override - public boolean isDbValid(AnnotationConfiguration aConfig, + public boolean isDbValid(Configuration aConfig, SessionFactory sessionFactory) { statusHandler.info("Verifying RegRep database..."); final List existingTables = new ArrayList(); diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/IEbxmlDatabaseValidationStrategy.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/IEbxmlDatabaseValidationStrategy.java index c288e330fe..24ca75f59e 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/IEbxmlDatabaseValidationStrategy.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/IEbxmlDatabaseValidationStrategy.java @@ -20,7 +20,7 @@ package com.raytheon.uf.edex.registry.ebxml.dao; import org.hibernate.SessionFactory; -import org.hibernate.cfg.AnnotationConfiguration; +import org.hibernate.cfg.Configuration; /** * Database validation strategy. @@ -32,6 +32,7 @@ import org.hibernate.cfg.AnnotationConfiguration; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Apr 15, 2013 1693 djohnson Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -51,7 +52,7 @@ public interface IEbxmlDatabaseValidationStrategy { * the session factory * @return true if valid */ - boolean isDbValid(AnnotationConfiguration aConfig, + boolean isDbValid(Configuration aConfig, SessionFactory sessionFactory); } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryDao.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryDao.java index b20d05f41b..dc8f2efdc0 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryDao.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryDao.java @@ -35,7 +35,7 @@ import org.springframework.transaction.annotation.Transactional; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 5/21/2013 2022 bphillip Initial implementation - * + * * * @author bphillip * @version 1 diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectDao.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectDao.java index 3836d3f030..94ae2b825b 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectDao.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectDao.java @@ -45,6 +45,8 @@ import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; * 8/1/2013 1693 bphillip Added methods to facilitate implementation of the lifecyclemanager according to the 4.0 spec * 2/13/2014 2769 bphillip Added read only flags to query methods * 4/11/2014 3011 bphillip Changed merge to not delete unused slots + * 4/21/2014 2992 dhladky General list of Registry server nodes. + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -57,6 +59,9 @@ public class RegistryObjectDao extends /** Delete object type parameterized statement */ private static final String GET_IDS_BY_OBJECT_TYPE = "SELECT regObj.id FROM RegistryObjectType regObj WHERE regObj.objectType=:objectType"; + /** Get the unique list of registry nodes with subscriptions **/ + private static final String QUERY_UNIQUE_REGISTRIES = "SELECT DISTINCT regObj.owner FROM RegistryObjectType regObj WHERE regObj.objectType LIKE "; + /** Query to determine if an object id exists in the registry */ private static final String ID_EXISTS_QUERY = "select count(obj.id) from RegistryObjectType obj where id=:id"; @@ -66,6 +71,8 @@ public class RegistryObjectDao extends /** Query to get all sub versions beneath the given version */ private static String GET_SUB_VERSION_QUERY = "select obj.versionInfo.versionName from RegistryObjectType obj where obj.lid=:lid and obj.versionInfo.versionName like :version"; + private SlotTypeDao slotDao; + /** * Creates a new RegistryObjectDao */ @@ -83,7 +90,7 @@ public class RegistryObjectDao extends public void merge(RegistryObjectType newObject, RegistryObjectType existingObject) { newObject.setId(existingObject.getId()); - template.merge(newObject); + getCurrentSession().merge(newObject); } /** @@ -162,7 +169,7 @@ public class RegistryObjectDao extends * The persistent object to delete */ public void deleteWithoutMerge(RegistryObjectType obj) { - this.template.delete(obj); + getCurrentSession().delete(obj); } public void deleteObjectWithoutDeletingChildren(RegistryObjectType obj) @@ -191,4 +198,18 @@ public class RegistryObjectDao extends return RegistryObjectType.class; } + public void setSlotDao(SlotTypeDao slotDao) { + this.slotDao = slotDao; + } + + /** + * Gets a list of unique registry ID's with data on this node for this objectType. + * @param objectType + * @return + */ + @Transactional(propagation = Propagation.REQUIRED, readOnly = true) + public List getUniqueRegistries(String objectType) { + return this.executeHQLQuery(QUERY_UNIQUE_REGISTRIES+" "+objectType); + } + } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectTypeDao.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectTypeDao.java index 366ef1ced1..1cdd610975 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectTypeDao.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/RegistryObjectTypeDao.java @@ -26,7 +26,6 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.RegistryObjectType; import org.hibernate.SessionFactory; import org.hibernate.criterion.Property; -import org.springframework.orm.hibernate3.HibernateTemplate; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; @@ -47,6 +46,7 @@ import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; * 8/1/2013 1693 bphillip Moved the merge method down to RegistryObjectDao * 10/8/2013 1682 bphillip Added like lid method, changed to use criteria queries for simple operations * 2/13/2014 2769 bphillip Added read only flags to query methods + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -245,7 +245,7 @@ public abstract class RegistryObjectTypeDao @Override public void setSessionFactory(SessionFactory sessionFactory) { - template = new HibernateTemplate(sessionFactory); + this.sessionFactory = sessionFactory; } @Override diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SlotTypeDao.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SlotTypeDao.java index 6995bd5db0..e9eb193492 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SlotTypeDao.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SlotTypeDao.java @@ -19,13 +19,16 @@ **/ package com.raytheon.uf.edex.registry.ebxml.dao; +import java.util.Collection; import java.util.List; import oasis.names.tc.ebxml.regrep.xsd.rim.v4.SlotType; import org.hibernate.SQLQuery; +import org.hibernate.criterion.Property; import com.raytheon.uf.edex.database.dao.SessionManagedDao; +import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; /** * @@ -40,6 +43,7 @@ import com.raytheon.uf.edex.database.dao.SessionManagedDao; * 7/11/2013 1707 bphillip Initial implementation * 7/29/2013 2191 bphillip Modified method to get orphaned slots * 12/2/2013 1829 bphillip Changed how orphans are purged + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @author bphillip @@ -81,7 +85,15 @@ public class SlotTypeDao extends SessionManagedDao { public void deleteBySlotId(String id) { SlotType slot = this.getById(id); if (slot != null) { - this.template.delete(slot); + getCurrentSession().delete(slot); + } + } + + public void deleteBySlotId(Collection ids){ + for(Object obj: createCriteria().add( + Property.forName(QueryConstants.ID).in(ids)) + .list()){ + getCurrentSession().delete(obj); } } } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SubscriptionDao.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SubscriptionDao.java index 8651fb25b5..725d9c9766 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SubscriptionDao.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/dao/SubscriptionDao.java @@ -44,6 +44,7 @@ import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; * 3/13/2013 1082 bphillip Initial creation * 9/5/2013 1538 bphillip Added eagerLoadAll method * 2/13/2014 2769 bphillip Added read only flags to query methods + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * @@ -78,8 +79,7 @@ public class SubscriptionDao extends RegistryObjectTypeDao { */ @Transactional(propagation = Propagation.REQUIRED, readOnly = true) public List eagerLoadAll() throws EbxmlRegistryException { - List subs = this.template - .loadAll(SubscriptionType.class); + List subs = super.loadAll(); for (SubscriptionType sub : subs) { try { /* diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/AuditableEventService.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/AuditableEventService.java index 4cf7b7eb58..7092aa5132 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/AuditableEventService.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/AuditableEventService.java @@ -62,6 +62,7 @@ import com.raytheon.uf.edex.registry.events.CreateAuditTrailEvent; * only be run on a quartz timer * 12/2/2013 1829 bphillip Now uses event bus for triggering auditable event generation * 01/21/2014 2613 bphillip Changed how auditable events are created for deletes + * 7/28/2014 3474 dhladky Fixed bad ownership settings. * * * @@ -170,7 +171,7 @@ public class AuditableEventService { String objectId = RegistryUtil.generateRegistryObjectId(); event.setId(objectId); event.setLid(objectId); - event.setOwner(RegistryUtil.DEFAULT_OWNER); + event.setOwner(RegistryUtil.registryUser); event.setObjectType(RegistryObjectTypes.AUDITABLE_EVENT); event.setRequestId(request.getId()); event.setTimestamp(EbxmlObjectUtil diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryGarbageCollector.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryGarbageCollector.java index 17cd6c76ab..39fe07f2f0 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryGarbageCollector.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryGarbageCollector.java @@ -55,6 +55,7 @@ import com.raytheon.uf.edex.registry.events.DeleteSlotEvent; * 2/4/2014 2769 bphillip Removed flush and clear call * 2/13/2014 2769 bphillip Refactored to no longer use executor threads * 4/11/2014 3011 bphillip Added slot purging via event bus notifications + * 4/17/2014 3011 bphillip Delete slot events now contain strings * * * @author bphillip @@ -139,15 +140,17 @@ public class RegistryGarbageCollector { @Subscribe public void deleteOrphanedSlot(DeleteSlotEvent slotEvent) { + if (!CollectionUtil.isNullOrEmpty(slotEvent.getSlotsToDelete())) { long start = TimeUtil.currentTimeMillis(); statusHandler.info("Deleting " + slotEvent.getSlotsToDelete().size() + " slots..."); - slotDao.deleteAll(slotEvent.getSlotsToDelete()); + slotDao.deleteBySlotId(slotEvent.getSlotsToDelete()); statusHandler.info("Deleted " + slotEvent.getSlotsToDelete().size() + " slots in " + (TimeUtil.currentTimeMillis() - start) + " ms"); } + } } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryServiceInInterceptor.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryServiceInInterceptor.java index 277b8aeb68..5991d0036d 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryServiceInInterceptor.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryServiceInInterceptor.java @@ -48,6 +48,7 @@ import com.raytheon.uf.common.util.CollectionUtil; * ------------ ---------- ----------- -------------------------- * 9/5/2013 1538 bphillip Initial implementation * 2/27/2014 2769 bphillip Changed verbose output to debug level + * 7/10/2014 1717 bphillip Added session * * * @author bphillip @@ -66,6 +67,14 @@ public class RegistryServiceInInterceptor extends @SuppressWarnings("unchecked") @Override public void handleMessage(Message message) throws Fault { + /* + * Request the current session so that login credentials can be + * maintained across multiple calls + */ + HttpServletRequest req = (HttpServletRequest) message + .get("HTTP.REQUEST"); + req.getSession(true); + if (statusHandler.isPriorityEnabled(Priority.DEBUG)) { StringBuilder logMessage = new StringBuilder(); HttpServletRequest request = (HttpServletRequest) message diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/cataloger/CatalogerImplWrapper.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/cataloger/CatalogerImplWrapper.java index f531034af2..1bbfeb51a3 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/cataloger/CatalogerImplWrapper.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/cataloger/CatalogerImplWrapper.java @@ -30,7 +30,7 @@ import oasis.names.tc.ebxml.regrep.xsd.spi.v4.CatalogObjectsResponse; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImpl.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImpl.java index e619ea026b..7894a27073 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImpl.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImpl.java @@ -52,7 +52,6 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.event.EventBus; import com.raytheon.uf.common.registry.constants.ActionTypes; import com.raytheon.uf.common.registry.constants.AssociationTypes; import com.raytheon.uf.common.registry.constants.DeletionScope; @@ -73,6 +72,7 @@ import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.database.DataAccessLayerException; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; +import com.raytheon.uf.edex.registry.ebxml.publish.PublishRegistryEvent; import com.raytheon.uf.edex.registry.ebxml.services.cataloger.CatalogerImpl; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryManagerImpl; import com.raytheon.uf.edex.registry.ebxml.services.validator.ValidatorImpl; @@ -109,8 +109,11 @@ import com.raytheon.uf.edex.registry.events.DeleteSlotEvent; * Separate update from create notifications. * 12/2/2013 1829 bphillip Auditable events are not genereted via messages on the event bus * 01/21/2014 2613 bphillip Removed verbose log message from removeObjects - * 2/19/2014 2769 bphillip Added current time to audit trail events + * 2/19/2014 2769 bphillip Added current time to audit trail events + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * 4/11/2014 3011 bphillip Modified merge behavior + * 4/17/2014 3011 bphillip Delete slot events now contain strings + * June 25, 2014 2760 dhladky Added external delivery of registry events * * * @@ -151,6 +154,9 @@ public class LifecycleManagerImpl implements LifecycleManager { private RegistryObjectDao registryObjectDao; private RegistryXPathProcessor xpathProcessor; + + /** publishes registry events **/ + private PublishRegistryEvent publisher = PublishRegistryEvent.getInstance(); /** * The Remove Objects protocol allows a client to remove or delete one or @@ -298,13 +304,15 @@ public class LifecycleManagerImpl implements LifecycleManager { event.setAction(Action.DELETE); event.setLid(obj.getLid()); event.setObjectType(objectType); - EventBus.publish(event); + publisher.publish(event); } - EventBus.publish(new RegistryStatisticsEvent(obj.getObjectType(), + DeleteSlotEvent deleteEvent = new DeleteSlotEvent(obj.getSlot()); + publisher.publish(deleteEvent); + publisher.publish(new RegistryStatisticsEvent(obj.getObjectType(), obj.getStatus(), obj.getOwner(), avTimePerRecord)); } - EventBus.publish(new CreateAuditTrailEvent(request.getId(), request, + publisher.publish(new CreateAuditTrailEvent(request.getId(), request, ActionTypes.delete, objectsToRemove, TimeUtil .currentTimeMillis())); @@ -470,24 +478,24 @@ public class LifecycleManagerImpl implements LifecycleManager { long currentTime = TimeUtil.currentTimeMillis(); if (!objsCreated.isEmpty()) { for (RegistryObjectType obj : objsCreated) { - EventBus.publish(new InsertRegistryEvent(obj.getId(), obj - .getLid(), obj.getObjectType())); - EventBus.publish(new RegistryStatisticsEvent(obj + publisher.publish(new InsertRegistryEvent(obj.getId(), obj + .getLid(), request.getUsername(), obj.getObjectType())); + publisher.publish(new RegistryStatisticsEvent(obj .getObjectType(), obj.getStatus(), obj.getOwner(), avTimePerRecord)); } - EventBus.publish(new CreateAuditTrailEvent(request.getId(), + publisher.publish(new CreateAuditTrailEvent(request.getId(), request, ActionTypes.create, objsCreated, currentTime)); } if (!objsUpdated.isEmpty()) { for (RegistryObjectType obj : objsUpdated) { - EventBus.publish(new UpdateRegistryEvent(obj.getId(), obj - .getLid(), obj.getObjectType())); - EventBus.publish(new RegistryStatisticsEvent(obj + publisher.publish(new UpdateRegistryEvent(obj.getId(), obj + .getLid(), request.getUsername(), obj.getObjectType())); + publisher.publish(new RegistryStatisticsEvent(obj .getObjectType(), obj.getStatus(), obj.getOwner(), avTimePerRecord)); } - EventBus.publish(new CreateAuditTrailEvent(request.getId(), + publisher.publish(new CreateAuditTrailEvent(request.getId(), request, ActionTypes.update, objsUpdated, currentTime)); } @@ -742,7 +750,7 @@ public class LifecycleManagerImpl implements LifecycleManager { mergeObjects(updatedObject, objToUpdate); } if (!objectsToUpdate.isEmpty()) { - EventBus.publish(new CreateAuditTrailEvent(request.getId(), + publisher.publish(new CreateAuditTrailEvent(request.getId(), request, ActionTypes.update, objectsToUpdate, TimeUtil .currentTimeMillis())); } @@ -756,10 +764,9 @@ public class LifecycleManagerImpl implements LifecycleManager { private void mergeObjects(RegistryObjectType newObject, RegistryObjectType existingObject) { + DeleteSlotEvent deleteSlotEvent = new DeleteSlotEvent(existingObject.getSlot()); registryObjectDao.merge(newObject, existingObject); - DeleteSlotEvent deleteSlotEvent = new DeleteSlotEvent( - existingObject.getSlot()); - EventBus.publish(deleteSlotEvent); + publisher.publish(deleteSlotEvent); } private RegistryObjectType applyUpdates(RegistryObjectType objectToUpdate, @@ -855,5 +862,5 @@ public class LifecycleManagerImpl implements LifecycleManager { public void setXpathProcessor(RegistryXPathProcessor xpathProcessor) { this.xpathProcessor = xpathProcessor; } - + } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImplWrapper.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImplWrapper.java index bab1ba435e..34c41f8bd2 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImplWrapper.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/LifecycleManagerImplWrapper.java @@ -33,7 +33,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/ObjectReferenceResolver.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/ObjectReferenceResolver.java index 10b7ab92d4..8d6d76ae9c 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/ObjectReferenceResolver.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/lifecycle/ObjectReferenceResolver.java @@ -43,12 +43,12 @@ import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; import com.raytheon.uf.common.registry.schemas.ebxml.util.annotations.RegistryObjectReference; -import com.raytheon.uf.common.registry.services.RegistryRESTServices; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.registry.ebxml.dao.DynamicObjectRefDao; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; +import com.raytheon.uf.edex.registry.ebxml.services.RegistryRESTServices; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlExceptionUtil; /** diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerFactory.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerFactory.java index a6bfad0cc8..b94eca4d26 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerFactory.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerFactory.java @@ -29,14 +29,14 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.NotificationType; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import com.google.common.annotations.VisibleForTesting; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.DeliveryMethodTypes; -import com.raytheon.uf.common.registry.services.RegistrySOAPServices; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.registry.ebxml.services.notification.listeners.EmailNotificationListener; import com.raytheon.uf.edex.registry.ebxml.services.notification.listeners.SpringBeanNotificationListener; import com.raytheon.uf.edex.registry.ebxml.services.notification.listeners.WebServiceNotificationListener; +import com.raytheon.uf.edex.registry.ebxml.services.soap.RegistrySOAPServices; /** * The default notification listener factory. diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java index bdcce18f84..8b3d048c09 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java @@ -55,13 +55,13 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.ActionTypes; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; import com.raytheon.uf.common.registry.constants.DeletionScope; import com.raytheon.uf.common.registry.constants.QueryLanguages; import com.raytheon.uf.common.registry.constants.QueryReturnTypes; -import com.raytheon.uf.common.registry.services.RegistrySOAPServices; +import com.raytheon.uf.common.registry.ebxml.RegistryUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.util.TimeUtil; @@ -71,6 +71,7 @@ import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; import com.raytheon.uf.edex.registry.ebxml.services.lifecycle.LifecycleManagerImpl; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; +import com.raytheon.uf.edex.registry.ebxml.services.soap.RegistrySOAPServices; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlExceptionUtil; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; @@ -94,6 +95,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; * 1/15/2014 2613 bphillip Added batching of notification update queries to reduce number of web service calls * 01/21/2014 2613 bphillip Added home slot to remove objects request so delete events are properly handled * 2/4/2014 2769 bphillip Removed flush and clear call + * Mar 31, 2014 2889 dhladky Added username for notification center tracking. * * * @@ -300,6 +302,7 @@ public class NotificationListenerImpl implements NotificationListener { remoteObjects)); request.setCheckReferences(false); request.setMode(Mode.CREATE_OR_REPLACE); + request.setUsername(RegistryUtil.registryUser); request.getSlot().add( new SlotType(EbxmlObjectUtil.HOME_SLOT_NAME, new StringValueType(clientBaseURL))); diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImplWrapper.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImplWrapper.java index e6b55c457d..a2c0fdf8f1 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImplWrapper.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImplWrapper.java @@ -32,7 +32,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlExceptionUtil; /** diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java index ea4c4dc2f7..75e78d0dbe 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java @@ -78,6 +78,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; * 12/9/2013 2613 bphillip Changed start time boundary of get auditable events to be the last run time of the subscription * 01/21/2014 2613 bphillip Changed start time boundary again and also a few minor cleanup items * 2/13/2014 2769 bphillip Optimized sendNotifications method + * 7/28/2014 3474 dhladky Fixed bad ownership settings. * * * @author bphillip @@ -400,7 +401,7 @@ public class RegistryNotificationManager { + subscriptionId + "]")); notification.setObjectType(RegistryObjectTypes.NOTIFICATION); notification.setStatus(StatusTypes.APPROVED); - notification.setOwner(RegistryUtil.DEFAULT_OWNER); + notification.setOwner(RegistryUtil.registryUser); notification.setSubscription(subscriptionId); notification.setEvent(eventsOfInterest); return notification; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/EmailNotificationListener.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/EmailNotificationListener.java index c22d836a46..ae3e246a92 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/EmailNotificationListener.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/EmailNotificationListener.java @@ -30,7 +30,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.NotificationType; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseStatus; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/SpringBeanNotificationListener.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/SpringBeanNotificationListener.java index 3ca5c20cb5..a3cc4c1a05 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/SpringBeanNotificationListener.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/SpringBeanNotificationListener.java @@ -29,7 +29,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.NotificationType; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseStatus; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/WebServiceNotificationListener.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/WebServiceNotificationListener.java index f97e9e3d00..21bf2eec0c 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/WebServiceNotificationListener.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/listeners/WebServiceNotificationListener.java @@ -29,13 +29,13 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.NotificationType; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseStatus; import oasis.names.tc.ebxml.regrep.xsd.rs.v4.RegistryResponseType; -import com.raytheon.uf.common.registry.EbxmlNamespaces; -import com.raytheon.uf.common.registry.services.RegistrySOAPServices; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.registry.services.RegistryServiceException; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; import com.raytheon.uf.edex.registry.ebxml.services.notification.NotificationDestination; +import com.raytheon.uf.edex.registry.ebxml.services.soap.RegistrySOAPServices; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlExceptionUtil; /** diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java index 9ad36ab434..262cada276 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java @@ -72,7 +72,6 @@ import org.springframework.transaction.annotation.Transactional; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; import com.raytheon.uf.common.registry.constants.QueryReturnTypes; import com.raytheon.uf.common.registry.constants.RegistryObjectTypes; -import com.raytheon.uf.common.registry.services.RegistrySOAPServices; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.util.ITimer; @@ -85,6 +84,7 @@ import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; import com.raytheon.uf.edex.registry.ebxml.services.lifecycle.ObjectReferenceResolver; import com.raytheon.uf.edex.registry.ebxml.services.query.plugins.RegistryQueryPlugin; +import com.raytheon.uf.edex.registry.ebxml.services.soap.RegistrySOAPServices; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlExceptionUtil; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImplWrapper.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImplWrapper.java index c7102fdb6a..dc9c53bd44 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImplWrapper.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImplWrapper.java @@ -31,7 +31,7 @@ import oasis.names.tc.ebxml.regrep.xsd.query.v4.QueryResponse; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/AdhocQuery.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/AdhocQuery.java index b2fbc6fa69..e09df110ee 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/AdhocQuery.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/AdhocQuery.java @@ -33,7 +33,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlExceptionUtil; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/BasicQuery.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/BasicQuery.java index 1282ffd4b1..a4e55911d1 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/BasicQuery.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/BasicQuery.java @@ -37,7 +37,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.RegistryObjectType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/ClassificationSchemeSelector.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/ClassificationSchemeSelector.java index bf9b284009..99234ca902 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/ClassificationSchemeSelector.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/ClassificationSchemeSelector.java @@ -39,7 +39,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.TaxonomyElementType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectTypeDao; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociatedObjects.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociatedObjects.java index 66125f9cb0..2287d80a8e 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociatedObjects.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociatedObjects.java @@ -36,7 +36,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.RegistryObjectType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociations.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociations.java index 8cce95e1aa..0289773cf5 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociations.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/FindAssociations.java @@ -35,7 +35,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.registry.ebxml.dao.AssociationDao; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GarbageCollectorQueryPlugin.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GarbageCollectorQueryPlugin.java index 15988d2bc8..40cc94535e 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GarbageCollectorQueryPlugin.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GarbageCollectorQueryPlugin.java @@ -35,7 +35,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.RegistryObjectType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; /** diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailById.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailById.java index 0d53b117bb..13fec49005 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailById.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailById.java @@ -35,7 +35,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.AuditableEventTypeDao; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByLid.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByLid.java index 8a1c1fdc35..78dec69f12 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByLid.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByLid.java @@ -42,8 +42,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.StringValueType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByTimeInterval.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByTimeInterval.java index 29a4a03e7b..b60a8a71f1 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByTimeInterval.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetAuditTrailByTimeInterval.java @@ -34,8 +34,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.time.util.TimeUtil; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetChildrenByParentId.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetChildrenByParentId.java index 819d39c517..78e21e530d 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetChildrenByParentId.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetChildrenByParentId.java @@ -39,8 +39,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.TaxonomyElementType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryPackageDao; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetClassificationSchemesById.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetClassificationSchemesById.java index d1ef08a483..16ba413a4d 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetClassificationSchemesById.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetClassificationSchemesById.java @@ -33,7 +33,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; /** diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetNotification.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetNotification.java index 5cdbabe324..8087d0f68e 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetNotification.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetNotification.java @@ -39,8 +39,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.SubscriptionType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.SubscriptionDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; import com.raytheon.uf.edex.registry.ebxml.services.notification.NotificationDestination; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectById.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectById.java index 08e93106d1..05875fa767 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectById.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectById.java @@ -31,7 +31,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; import com.raytheon.uf.edex.registry.ebxml.services.query.RegistryQueryUtil; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectsByLid.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectsByLid.java index cb047c9a3b..d4567735f9 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectsByLid.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetObjectsByLid.java @@ -33,7 +33,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; import com.raytheon.uf.edex.registry.ebxml.services.query.RegistryQueryUtil; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetReferencedObject.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetReferencedObject.java index 55169d35c4..01d29ed2ad 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetReferencedObject.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetReferencedObject.java @@ -39,13 +39,13 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.StringValueType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; import com.raytheon.uf.common.registry.constants.QueryReturnTypes; -import com.raytheon.uf.common.registry.services.RegistrySOAPServices; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; import com.raytheon.uf.edex.registry.ebxml.services.lifecycle.ObjectReferenceResolver; import com.raytheon.uf.edex.registry.ebxml.services.query.QueryConstants; +import com.raytheon.uf.edex.registry.ebxml.services.soap.RegistrySOAPServices; import com.raytheon.uf.edex.registry.ebxml.util.EbxmlExceptionUtil; /** diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetRegistryPackagesByMemberId.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetRegistryPackagesByMemberId.java index 81ac460bc6..7b28578614 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetRegistryPackagesByMemberId.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/GetRegistryPackagesByMemberId.java @@ -33,7 +33,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/KeywordSearch.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/KeywordSearch.java index dfd0d596e7..3b2dca7785 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/KeywordSearch.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/KeywordSearch.java @@ -40,7 +40,7 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.RegistryObjectType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.util.CollectionUtil; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/RegistryPackageSelector.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/RegistryPackageSelector.java index b2d8f54962..a8781bc452 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/RegistryPackageSelector.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/plugins/RegistryPackageSelector.java @@ -37,9 +37,9 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.RegistryPackageType; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.AssociationTypes; import com.raytheon.uf.common.registry.constants.CanonicalQueryTypes; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryObjectDao; import com.raytheon.uf.edex.registry.ebxml.dao.RegistryPackageDao; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/validator/ValidatorImplWrapper.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/validator/ValidatorImplWrapper.java index e19246e0ce..8704b4f63a 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/validator/ValidatorImplWrapper.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/validator/ValidatorImplWrapper.java @@ -30,7 +30,7 @@ import oasis.names.tc.ebxml.regrep.xsd.spi.v4.ValidateObjectsResponse; import org.springframework.transaction.annotation.Transactional; -import com.raytheon.uf.common.registry.EbxmlNamespaces; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; /** * diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EDEXRegistryManager.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EDEXRegistryManager.java index 86b378c1ee..5ceaaab38f 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EDEXRegistryManager.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EDEXRegistryManager.java @@ -19,7 +19,6 @@ import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.auth.req.AbstractPrivilegedRequestHandler; import com.raytheon.uf.edex.auth.resp.AuthorizationResponse; -import com.raytheon.uf.edex.registry.acp.xacml.XACMLPolicyEnforcementPoint; /** * @@ -57,8 +56,6 @@ public class EDEXRegistryManager extends @VisibleForTesting static final String CAN_ONLY_STORE_SINGLE_OBJECT = "Only one object can be stored at a time, ignoring all but the first item in the list!"; - private XACMLPolicyEnforcementPoint xacmlPep; - private RegistryHandler registryHandler; /** @@ -105,14 +102,14 @@ public class EDEXRegistryManager extends if (objects.size() > 1) { statusHandler.error(CAN_ONLY_STORE_SINGLE_OBJECT); } - response = registryHandler.storeOrReplaceObject(objects + response = registryHandler.storeOrReplaceObject(request.getUsername(), objects .get(0)); break; case STORE: if (objects.size() > 1) { statusHandler.error(CAN_ONLY_STORE_SINGLE_OBJECT); } - response = registryHandler.storeObject(objects.get(0)); + response = registryHandler.storeObject(request.getUsername(), objects.get(0)); break; } @@ -123,11 +120,7 @@ public class EDEXRegistryManager extends @Transactional public AuthorizationResponse authorized(IUser user, IRegistryRequest request) throws AuthorizationException { - return xacmlPep.handleRegistryRequest(user, request); - } - - public void setXacmlPep(XACMLPolicyEnforcementPoint xacmlPep) { - this.xacmlPep = xacmlPep; + return new AuthorizationResponse(true); } public void setRegistryHandler(RegistryHandler registryHandler) { diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java index 81d0a3c0b2..cf14ed9c93 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java @@ -55,9 +55,9 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import com.raytheon.uf.common.registry.EbxmlNamespaces; import com.raytheon.uf.common.registry.constants.DeliveryMethodTypes; import com.raytheon.uf.common.registry.ebxml.RegistryUtil; +import com.raytheon.uf.common.registry.schemas.ebxml.util.EbxmlNamespaces; import com.raytheon.uf.common.util.CollectionUtil; import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException; import com.raytheon.uf.edex.registry.ebxml.services.notification.NotificationDestination; diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/events/DeleteSlotEvent.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/events/DeleteSlotEvent.java index 11868fc1fa..fa9e94a9ff 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/events/DeleteSlotEvent.java +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/events/DeleteSlotEvent.java @@ -19,11 +19,13 @@ **/ package com.raytheon.uf.edex.registry.events; +import java.util.ArrayList; import java.util.List; import oasis.names.tc.ebxml.regrep.xsd.rim.v4.SlotType; import com.raytheon.uf.common.event.Event; +import com.raytheon.uf.common.util.CollectionUtil; /** * Event containing slots to be deleted by the registry garbage collector @@ -35,6 +37,7 @@ import com.raytheon.uf.common.event.Event; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * 4/11/2014 3011 bphillip Initial Coding + * 4/17/2014 3011 bphillip Delete slot events now contain strings * * * @author bphillip @@ -42,26 +45,31 @@ import com.raytheon.uf.common.event.Event; */ public class DeleteSlotEvent extends Event { - private static final long serialVersionUID = -2818002679753482984L; - - private List slotsToDelete; - - public DeleteSlotEvent(){ - super(); - } - - public DeleteSlotEvent(List slotsToDelete){ - this.slotsToDelete = slotsToDelete; - } + private static final long serialVersionUID = -2818002679753482984L; - public List getSlotsToDelete() { - return slotsToDelete; - } + private List slotsToDelete;; - public void setSlotsToDelete(List slotsToDelete) { - this.slotsToDelete = slotsToDelete; - } - - + public DeleteSlotEvent() { + super(); + } + + public DeleteSlotEvent(List slotsToDelete) { + if (CollectionUtil.isNullOrEmpty(slotsToDelete)) { + slotsToDelete = new ArrayList(); + } else { + this.slotsToDelete = new ArrayList(slotsToDelete.size()); + for (SlotType slot : slotsToDelete) { + this.slotsToDelete.add(slot.getId()); + } + } + } + + public List getSlotsToDelete() { + return slotsToDelete; + } + + public void setSlotsToDelete(List slotsToDelete) { + this.slotsToDelete = slotsToDelete; + } } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/utility/edex_static/base/ebxml/acp/default-acp.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/utility/edex_static/base/ebxml/acp/default-acp.xml index c2219f5982..26a07239f8 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/utility/edex_static/base/ebxml/acp/default-acp.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/utility/edex_static/base/ebxml/acp/default-acp.xml @@ -54,9 +54,33 @@ DataType="http://www.w3.org/2001/XMLSchema#string" /> + + + execute + + + + + + GET + + + + + + POST + + + - Default access control policy for accessing registry diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/RegistrySubscriptionBackup.html b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/RegistrySubscriptionBackup.html index c9b88c4a72..cde58b2711 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/RegistrySubscriptionBackup.html +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/RegistrySubscriptionBackup.html @@ -15,8 +15,6 @@ - - Backup/Restore Subscriptions @@ -119,7 +117,7 @@ } function callRESTService(func){ - var url = "http://"+window.location.host+"/dataDelivery/dataAccess/"+func; + var url = "https://"+window.location.host+"/dataDelivery/dataAccess/"+func; var client = new XMLHttpRequest(); client.open("GET", url, false); client.setRequestHeader("Content-Type", "text/plain"); @@ -133,4 +131,4 @@ - \ No newline at end of file + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml index 906d5501e8..21cb8a0f93 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml @@ -12,6 +12,49 @@ version="2.4"> Data Delivery Web Services + + RegistryAdministrator + + + RegistryLocalAdministrator + + + RegistryUser + + + RegistryGuest + + + + + + + Registry User Admin pages + + /* + + + RegistryLocalAdministrator + RegistryAdministrator + + + + + + Registry User Admin pages + + /registry/services/users/* + + + RegistryAdministrator + + + + + BASIC + RegistryRealm + + webAppRootKey registryEbxml @@ -28,7 +71,7 @@ hibernateFilter - org.springframework.orm.hibernate3.support.OpenSessionInViewFilter + org.springframework.orm.hibernate4.support.OpenSessionInViewFilter singleSession true @@ -66,17 +109,6 @@ /* - - DWR Servlet - dwr-invoker - uk.ltd.getahead.dwr.DWRServlet - - - - dwr-invoker - /dwr/* - - registry/RegistryInterface.html diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/navigation.html b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/navigation.html index 701d08abe5..6d417840d6 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/navigation.html +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/navigation.html @@ -61,6 +61,8 @@ Date Ticket# Engineer Description Subscription Backup
      Federation Status +
      + User Admin diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/registryUtil.js b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/registryUtil.js index 41ec5d9945..772e578230 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/registryUtil.js +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/registry/registryUtil.js @@ -31,7 +31,7 @@ Date Ticket# Engineer Description */ function callRestService(url,arg){ - var url = "http://"+window.location.host+"/"+url + var url = "https://"+window.location.host+"/"+url if(arg != null){ url+="/"+arg; } diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml index d5d7010ca0..362c8448c2 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml @@ -1,18 +1,33 @@ + http://cxf.apache.org/schemas/jaxrs.xsd + http://www.springframework.org/schema/context + http://www.springframework.org/schema/context/spring-context-3.1.xsd + http://cxf.apache.org/transports/http/configuration + http://cxf.apache.org/schemas/configuration/http-conf.xsd + http://cxf.apache.org/transports/http-jetty/configuration + http://cxf.apache.org/schemas/configuration/http-jetty.xsd + http://cxf.apache.org/configuration/security + http://cxf.apache.org/schemas/configuration/security.xsd"> + + + + @@ -22,9 +37,9 @@ - + - + @@ -51,6 +66,8 @@ + + @@ -60,6 +77,8 @@ + + @@ -69,6 +88,8 @@ + + @@ -78,6 +99,8 @@ + + @@ -87,6 +110,8 @@ + + @@ -98,14 +123,14 @@ + + - - - + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.registry.feature/feature.xml index 437e873a82..48118576e7 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.feature/feature.xml @@ -17,8 +17,6 @@ [Enter License Description here.] - - + + diff --git a/edexOsgi/com.raytheon.uf.edex.site/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.site/META-INF/MANIFEST.MF index 894b867f73..a4c60a59a8 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.site/META-INF/MANIFEST.MF @@ -12,5 +12,4 @@ Require-Bundle: com.raytheon.edex.common, Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-ActivationPolicy: lazy Export-Package: com.raytheon.uf.edex.site, - com.raytheon.uf.edex.site.ingest, com.raytheon.uf.edex.site.notify diff --git a/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-common.xml b/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-common.xml index a2666f6fe6..0268f13326 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-common.xml +++ b/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-common.xml @@ -2,14 +2,9 @@ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> - - - + errorHandlerRef="errorHandler"> @@ -21,23 +16,8 @@ - - - - - - - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-request.xml b/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-request.xml index c687682b49..1bda6120ad 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.site/res/spring/site-request.xml @@ -1,7 +1,8 @@ - + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd + http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> + @@ -9,7 +10,7 @@ value="com.raytheon.uf.common.site.requests.ValidateConfigRequest" /> - + @@ -17,7 +18,7 @@ value="com.raytheon.uf.common.site.requests.ActivateSiteRequest" /> - + @@ -25,7 +26,7 @@ value="com.raytheon.uf.common.site.requests.DeactivateSiteRequest" /> - + @@ -33,6 +34,30 @@ value="com.raytheon.uf.common.site.requests.GetActiveSitesRequest" /> - + + + + + + + + + + + + + + ${body} == null + + + + + + + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteActivationMonitor.java b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteActivationMonitor.java index ba627220be..73d09e6fe8 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteActivationMonitor.java +++ b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteActivationMonitor.java @@ -19,6 +19,8 @@ **/ package com.raytheon.uf.edex.site; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; @@ -28,9 +30,12 @@ import java.util.Set; import com.raytheon.uf.common.site.notify.ClusterActivationNotification; import com.raytheon.uf.common.site.notify.SiteActivationNotification; import com.raytheon.uf.common.site.notify.SiteActivationNotification.ACTIVATIONSTATUS; +import com.raytheon.uf.common.status.IUFStatusHandler; +import com.raytheon.uf.common.status.UFStatus; +import com.raytheon.uf.edex.core.EdexException; /** - * TODO Add Description + * Monitors site activation across all JVMs on all cluster members * *
        * 
      @@ -38,7 +43,8 @@ import com.raytheon.uf.common.site.notify.SiteActivationNotification.ACTIVATIONS
        * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
      - * Aug 9, 2011            bphillip     Initial creation
      + * Aug 09, 2011            bphillip    Initial creation
      + * Sep 11, 2014  #3622     randerso    Fixed logic so failures still remove pending requests
        * 
        * 
      * @@ -47,6 +53,8 @@ import com.raytheon.uf.common.site.notify.SiteActivationNotification.ACTIVATIONS */ public class SiteActivationMonitor { + private static final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(SiteActivationMonitor.class); private Map>> activationMap = new HashMap>>(); @@ -56,10 +64,18 @@ public class SiteActivationMonitor { private ACTIVATIONSTATUS status = ACTIVATIONSTATUS.SUCCESS; - private SiteActivationMonitor() { + private String myHost; + + private SiteActivationMonitor() throws EdexException { + try { + this.myHost = InetAddress.getLocalHost().getCanonicalHostName(); + } catch (UnknownHostException e) { + statusHandler.error("Error resolving localhost name", e); + throw new EdexException("Error resolving localhost name", e); + } } - public static SiteActivationMonitor getInstance() { + public static SiteActivationMonitor getInstance() throws EdexException { if (instance == null) { instance = new SiteActivationMonitor(); } @@ -97,55 +113,62 @@ public class SiteActivationMonitor { public void resetFailure() { status = ACTIVATIONSTATUS.SUCCESS; } - - public ACTIVATIONSTATUS getStatus(){ + + public ACTIVATIONSTATUS getStatus() { return status; } public SiteActivationNotification handleNotification( SiteActivationNotification notification) { - if (notification instanceof ClusterActivationNotification) { + if (!(notification instanceof ClusterActivationNotification)) { + + String plugin = notification.getPluginName(); + String modifiedSite = notification.getModifiedSite(); + String serverAndMode = notification.getServerAndRunMode(); + if (!activationMap.containsKey(plugin)) { + activationMap.put(plugin, new HashMap>()); + } + + if (!activationMap.get(plugin).containsKey(modifiedSite)) { + activationMap.get(plugin).put(modifiedSite, + new HashSet()); + } + + if (!deactivationMap.containsKey(plugin)) { + deactivationMap.put(plugin, new HashMap>()); + } + + if (!deactivationMap.get(plugin).containsKey(modifiedSite)) { + deactivationMap.get(plugin).put(modifiedSite, + new HashSet()); + } + + if (notification.isBegin()) { + if (notification.isActivation()) { + activationMap.get(plugin).get(modifiedSite) + .add(serverAndMode); + } else if (notification.isDeactivation()) { + deactivationMap.get(plugin).get(modifiedSite) + .add(serverAndMode); + } + } else { + if (notification.isActivation()) { + activationMap.get(plugin).get(modifiedSite) + .remove(serverAndMode); + } else if (notification.isDeactivation()) { + deactivationMap.get(plugin).get(modifiedSite) + .remove(serverAndMode); + } + if (notification.isFailure()) { + status = ACTIVATIONSTATUS.FAILURE; + } + } + } + + if (notification.getServerName().equals(myHost)) { return notification; + } else { + return null; } - - String plugin = notification.getPluginName(); - String modifiedSite = notification.getModifiedSite(); - String serverAndMode = notification.getServerAndRunMode(); - if (!activationMap.containsKey(plugin)) { - activationMap.put(plugin, new HashMap>()); - } - - if (!activationMap.get(plugin).containsKey(modifiedSite)) { - activationMap.get(plugin).put(modifiedSite, new HashSet()); - } - - if (!deactivationMap.containsKey(plugin)) { - deactivationMap.put(plugin, new HashMap>()); - } - - if (!deactivationMap.get(plugin).containsKey(modifiedSite)) { - deactivationMap.get(plugin) - .put(modifiedSite, new HashSet()); - } - - if (notification.isBegin()) { - if (notification.isActivation()) { - activationMap.get(plugin).get(modifiedSite).add(serverAndMode); - } else if (notification.isDeactivation()) { - deactivationMap.get(plugin).get(modifiedSite) - .add(serverAndMode); - } - } else if (notification.isSuccess()) { - if (notification.isActivation()) { - activationMap.get(plugin).get(modifiedSite) - .remove(serverAndMode); - } else if (notification.isDeactivation()) { - deactivationMap.get(plugin).get(modifiedSite) - .remove(serverAndMode); - } - } else if (notification.isFailure()) { - status = ACTIVATIONSTATUS.FAILURE; - } - return notification; } } diff --git a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteAwareRegistry.java b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteAwareRegistry.java index 20bceafac7..e67d48c74f 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteAwareRegistry.java +++ b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/SiteAwareRegistry.java @@ -43,18 +43,16 @@ import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.util.registry.RegistryException; import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.core.EdexException; -import com.raytheon.uf.edex.core.props.EnvProperties; -import com.raytheon.uf.edex.core.props.PropertiesFactory; import com.raytheon.uf.edex.site.SiteActivationMessage.Action; /** - * + * * Site Aware Registry - * + * *
      - *
      + * 
        * SOFTWARE HISTORY
      - *
      + * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
        * Nov 30, 2010            rjpeter     Initial creation
      @@ -63,9 +61,11 @@ import com.raytheon.uf.edex.site.SiteActivationMessage.Action;
        * Nov 1, 2012   15417     ryu         Modified getActiveSites to include
        *                                     home site only if activated.
        * Dec 11, 2012  14360     ryu         No printing stack trace on activation exception
      - *
      + * Mar 10, 2014  2721      randerso    Fix error when activeSites.txt contains blank lines.
      + * Jul 10, 2014  2914      garmendariz Remove EnvProperties
      + * 
        * 
      - * + * * @author rjpeter * @version 1.0 */ @@ -92,8 +92,7 @@ public class SiteAwareRegistry { loadActiveSites(); // initialize default site - EnvProperties env = PropertiesFactory.getInstance().getEnvProperties(); - String defaultSite = env.getEnvValue("SITENAME"); + String defaultSite = EDEXUtil.getEdexSite(); if (!activeSites.contains(defaultSite)) { activeSites.add(defaultSite); } @@ -101,7 +100,7 @@ public class SiteAwareRegistry { /** * registers/adds site activation listeners - * + * * @param sa * the listener to register / add to the list */ @@ -135,15 +134,14 @@ public class SiteAwareRegistry { /** * get the set of strings for the active sites - * + * * @return the requested array of Strings this is a string array to make it * work with dwr frontend, most of the other stuff is Set */ public String[] getActiveSites() { // make a set of the strings for each listener site Set tmp = new LinkedHashSet(); - String mySite = PropertiesFactory.getInstance().getEnvProperties() - .getEnvValue("SITENAME"); + String mySite = EDEXUtil.getEdexSite(); for (ISiteActivationListener sa : activationListeners) { if (sa.getActiveSites().contains(mySite)) { tmp.add(mySite); @@ -157,7 +155,7 @@ public class SiteAwareRegistry { /** * Checks to see if the given site is active - * + * * @param site * The site to check * @return True if the site is active, else false @@ -183,7 +181,7 @@ public class SiteAwareRegistry { /** * activate the site specified in each listener - * + * * @param siteID */ public void activateSite(String siteID) { @@ -204,7 +202,7 @@ public class SiteAwareRegistry { /** * deactivate the site specified in each listener - * + * * @param siteID */ public void deactivateSite(String siteID) { @@ -224,7 +222,7 @@ public class SiteAwareRegistry { /** * cycle the site specified in each listener - * + * * @param siteID */ public void cycleSite(String siteID) { @@ -297,7 +295,10 @@ public class SiteAwareRegistry { in = new BufferedReader(new FileReader(file)); String site; while ((site = in.readLine()) != null) { - activeSites.add(site); + site = site.trim(); + if (!site.isEmpty()) { + activeSites.add(site); + } } } } catch (IOException e) { diff --git a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/ActivateSiteHandler.java b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/ActivateSiteHandler.java index b48d8d098f..78b89bf5b7 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/ActivateSiteHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/ActivateSiteHandler.java @@ -73,26 +73,35 @@ public class ActivateSiteHandler implements private ActivateSiteRequest request; + private SiteActivationMonitor monitor; + public ActivateMonitor(ActivateSiteRequest request) { this.request = request; + try { + this.monitor = SiteActivationMonitor.getInstance(); + } catch (EdexException e) { + // This will not happen as instance is created by camel so + // JVM will not start if exception occurs. + } } + @Override public void run() { try { Thread.sleep(3000); - while (SiteActivationMonitor.getInstance() - .getPendingActivations(request.getPlugin(), request.getSiteID()) - .size() > 0) { + while (this.monitor.getPendingActivations(request.getPlugin(), + request.getSiteID()).size() > 0) { Thread.sleep(1000); } } catch (InterruptedException e) { // ignore } ClusterActivationNotification notify = new ClusterActivationNotification( - SiteUtil.getSite(), request.getSiteID(), request.getPlugin(), + SiteUtil.getSite(), request.getSiteID(), + request.getPlugin(), SiteActivationNotification.ACTIVATIONTYPE.ACTIVATE, - SiteActivationMonitor.getInstance().getStatus(), true); - SiteActivationMonitor.getInstance().resetFailure(); + this.monitor.getStatus(), true); + this.monitor.resetFailure(); try { SendSiteActivationNotifications.send(notify); } catch (EdexException e) { diff --git a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/DeactivateSiteHandler.java b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/DeactivateSiteHandler.java index 499053b6f1..f834960082 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/DeactivateSiteHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/handlers/DeactivateSiteHandler.java @@ -73,26 +73,35 @@ public class DeactivateSiteHandler implements private DeactivateSiteRequest request; + private SiteActivationMonitor monitor; + public DeactivateMonitor(DeactivateSiteRequest request) { this.request = request; + try { + this.monitor = SiteActivationMonitor.getInstance(); + } catch (EdexException e) { + // This will not happen as instance is created by camel so + // JVM will not start if exception occurs. + } } + @Override public void run() { try { Thread.sleep(3000); - while (SiteActivationMonitor.getInstance() - .getPendingDeactivations(request.getPlugin(), request.getSiteID()) - .size() > 0) { + while (this.monitor.getPendingDeactivations( + request.getPlugin(), request.getSiteID()).size() > 0) { Thread.sleep(1000); } } catch (InterruptedException e) { // ignore } ClusterActivationNotification notify = new ClusterActivationNotification( - SiteUtil.getSite(), request.getSiteID(), request.getPlugin(), + SiteUtil.getSite(), request.getSiteID(), + request.getPlugin(), SiteActivationNotification.ACTIVATIONTYPE.DEACTIVATE, - SiteActivationMonitor.getInstance().getStatus(), true); - SiteActivationMonitor.getInstance().resetFailure(); + this.monitor.getStatus(), true); + this.monitor.resetFailure(); try { SendSiteActivationNotifications.send(notify); } catch (EdexException e) { diff --git a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/notify/SendSiteActivationNotifications.java b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/notify/SendSiteActivationNotifications.java index 560ce5216e..d2adc01e24 100644 --- a/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/notify/SendSiteActivationNotifications.java +++ b/edexOsgi/com.raytheon.uf.edex.site/src/com/raytheon/uf/edex/site/notify/SendSiteActivationNotifications.java @@ -24,6 +24,8 @@ import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; +import com.raytheon.uf.common.serialization.SerializationException; +import com.raytheon.uf.common.serialization.SerializationUtil; import com.raytheon.uf.common.site.notify.SiteActivationNotification; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; @@ -31,7 +33,7 @@ import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.core.EdexException; /** - * TODO Add Description + * Send site activation notifications to the SiteActivationMonitor * *
        * 
      @@ -39,8 +41,10 @@ import com.raytheon.uf.edex.core.EdexException;
        * 
        * Date         Ticket#    Engineer    Description
        * ------------ ---------- ----------- --------------------------
      - * Aug 9, 2011            bphillip     Initial creation
      + * Aug 09, 2011            bphillip    Initial creation
        * Feb 15, 2013 1638       mschenke    Moved site activation notifier class into edex.site
      + * Sep 11, 2014 3622       randerso    Changed to use jms topic instead of vm queue so monitor
      + *                                     sees messages from all JVMs.
        * 
        * 
      * @@ -52,7 +56,7 @@ public class SendSiteActivationNotifications { private static final transient IUFStatusHandler statusHandler = UFStatus .getHandler(SendSiteActivationNotifications.class); - private static String SITE_ACTIVATION_ROUTE = "siteActivateNotify"; + public static String SITE_ACTIVATION_URI = "jms-generic:topic:siteActivateNotification?timeToLive=60000"; public static void send(SiteActivationNotification notification) throws EdexException { @@ -70,8 +74,14 @@ public class SendSiteActivationNotifications { for (SiteActivationNotification notify : notifications) { notify.setRunMode(modeName); notify.setServerName(host); - EDEXUtil.getMessageProducer().sendAsync( - SITE_ACTIVATION_ROUTE, notify); + try { + EDEXUtil.getMessageProducer().sendAsyncUri( + SITE_ACTIVATION_URI, + SerializationUtil.transformToThrift(notify)); + } catch (SerializationException e) { + statusHandler.error( + "Error transforming notification to thrift", e); + } } } catch (EdexException e) { statusHandler.error("Error sending gfe notification", e); diff --git a/edexOsgi/com.raytheon.uf.edex.tafqueue/res/spring/tafqueue-request.xml b/edexOsgi/com.raytheon.uf.edex.tafqueue/res/spring/tafqueue-request.xml index 1d37170351..e4dac3fb08 100644 --- a/edexOsgi/com.raytheon.uf.edex.tafqueue/res/spring/tafqueue-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.tafqueue/res/spring/tafqueue-request.xml @@ -30,7 +30,7 @@ + errorHandlerRef="errorHandler"> @@ -54,8 +54,7 @@ - +
      \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueDao.java b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueDao.java index 89e325f56b..e68b018550 100644 --- a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueDao.java +++ b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueDao.java @@ -45,6 +45,7 @@ import com.raytheon.uf.edex.database.query.DatabaseQuery; * ------------ ---------- ----------- -------------------------- * May 1, 2012 14715 rferrel Initial creation * Mar 21, 2013 15375 zhao Added methods for handling VFT product + * May 07, 2014 3091 rferrel forecasterId now a string. * * * @@ -277,40 +278,49 @@ public class TafQueueDao extends CoreDao { } /** - * (for DR15375) - * Get last xmit time for a forecaster id (for VFT purpose) + * (for DR15375) Get last xmit time for a forecaster id (for VFT purpose) + * * @param forecasterid * @return last xmittime; return null if no record exists * @throws DataAccessLayerException */ @SuppressWarnings("unchecked") - public Date getLastXmitTimeByForecasterId(int forecasterid) throws DataAccessLayerException { - Date lastXmittime = null; - DatabaseQuery query = new DatabaseQuery(TafQueueRecord.class.getName()); - query.addQueryParam("forecasterId", forecasterid, QueryOperand.EQUALS); - query.addOrder("xmitTime", false); - List records = (List) queryByCriteria(query); - if ( records.size() > 0 ) { - lastXmittime = records.get(0).getXmitTime(); - } - return lastXmittime; - } + public Date getLastXmitTimeByForecasterId(String forecasterid) + throws DataAccessLayerException { + Date lastXmittime = null; + DatabaseQuery query = new DatabaseQuery(TafQueueRecord.class.getName()); + query.addQueryParam("forecasterId", forecasterid, QueryOperand.EQUALS); + query.addOrder("xmitTime", false); + List records = (List) queryByCriteria(query); + if (records.size() > 0) { + lastXmittime = records.get(0).getXmitTime(); + } + return lastXmittime; + } - /** (for DR15375) - * Retrieves a list of TAF records sent since the last VFT product was created - * @param lastVftTime (last VFT creation time) - * @param forecasterid (forecaster ID for VFT) - * @return a list of TAF records sent since lastVftTime or null when no such records exit + /** + * (for DR15375) Retrieves a list of TAF records sent since the last VFT + * product was created + * + * @param lastVftTime + * (last VFT creation time) + * @param forecasterid + * (forecaster ID for VFT) + * @return a list of TAF records sent since lastVftTime or null when no such + * records exit * @throws DataAccessLayerException */ @SuppressWarnings("unchecked") - public List getRecordsForVFT(Date lastVftTime, int forecasterid) throws DataAccessLayerException { - DatabaseQuery query = new DatabaseQuery(TafQueueRecord.class.getName()); - query.addQueryParam("xmitTime", lastVftTime, QueryOperand.GREATERTHANEQUALS); - query.addQueryParam("forecasterId", forecasterid, QueryOperand.NOTEQUALS); - query.addQueryParam("state", TafQueueState.SENT, QueryOperand.EQUALS); - query.addOrder("xmitTime", true); - List records = (List) queryByCriteria(query); - return records; - } + public List getRecordsForVFT(Date lastVftTime, + String forecasterid) throws DataAccessLayerException { + DatabaseQuery query = new DatabaseQuery(TafQueueRecord.class.getName()); + query.addQueryParam("xmitTime", lastVftTime, + QueryOperand.GREATERTHANEQUALS); + query.addQueryParam("forecasterId", forecasterid, + QueryOperand.NOTEQUALS); + query.addQueryParam("state", TafQueueState.SENT, QueryOperand.EQUALS); + query.addOrder("xmitTime", true); + List records = (List) queryByCriteria(query); + return records; + } } diff --git a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueManager.java b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueManager.java index 7d3c5fa0e0..54212045d1 100644 --- a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueManager.java +++ b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueManager.java @@ -26,11 +26,11 @@ import java.util.List; import java.util.TimeZone; import com.raytheon.uf.common.auth.resp.SuccessfulExecution; +import com.raytheon.uf.common.auth.user.User; import com.raytheon.uf.common.dataplugin.PluginException; import com.raytheon.uf.common.dissemination.OUPRequest; import com.raytheon.uf.common.dissemination.OUPResponse; import com.raytheon.uf.common.dissemination.OfficialUserProduct; -import com.raytheon.uf.common.plugin.nwsauth.user.User; import com.raytheon.uf.common.serialization.comm.RequestRouter; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; diff --git a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueRequestHandler.java b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueRequestHandler.java index c2a44731e3..bd38f8e8ae 100644 --- a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueRequestHandler.java +++ b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueRequestHandler.java @@ -34,9 +34,9 @@ import com.raytheon.uf.common.tafqueue.TafQueueRequest; import com.raytheon.uf.common.tafqueue.TafQueueRequest.Type; import com.raytheon.uf.edex.auth.AuthManager; import com.raytheon.uf.edex.auth.AuthManagerFactory; +import com.raytheon.uf.edex.auth.authorization.IAuthorizer; import com.raytheon.uf.edex.auth.req.AbstractPrivilegedRequestHandler; import com.raytheon.uf.edex.auth.resp.AuthorizationResponse; -import com.raytheon.uf.edex.auth.roles.IRoleStorage; import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.core.EdexException; import com.raytheon.uf.edex.database.DataAccessLayerException; @@ -53,6 +53,8 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * May 1, 2012 14715 rferrel Initial creation * May 08, 2013 1814 rjpeter Added time to live to topic * Jun 07, 2013 1981 mpduff TafQueueRequest is now protected. + * May 08, 2014 3091 rferrel Added CHECK_AUTHORIZED. + * May 28, 2014 3211 njensen Use IAuthorizer instead of IRoleStorage * * * @author rferrel @@ -140,6 +142,10 @@ public class TafQueueRequestHandler extends sendNotification(Type.RETRANSMIT); } break; + case CHECK_AUTHORIZED: + response = new ServerResponse(); + response.addMessage("User is authorized."); + break; default: response = new ServerResponse(); response.addMessage("Unknown type: " + request.getType()); @@ -212,10 +218,10 @@ public class TafQueueRequestHandler extends public AuthorizationResponse authorized(IUser user, TafQueueRequest request) throws AuthorizationException { AuthManager manager = AuthManagerFactory.getInstance().getManager(); - IRoleStorage roleStorage = manager.getRoleStorage(); + IAuthorizer auth = manager.getAuthorizer(); - boolean authorized = roleStorage.isAuthorized((request).getRoleId(), - user.uniqueId().toString(), APPLICATION); + boolean authorized = auth.isAuthorized((request).getRoleId(), user + .uniqueId().toString(), APPLICATION); if (authorized) { return new AuthorizationResponse(authorized); diff --git a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueVFTMgr.java b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueVFTMgr.java index b3239aeece..326a194e5a 100644 --- a/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueVFTMgr.java +++ b/edexOsgi/com.raytheon.uf.edex.tafqueue/src/com/raytheon/uf/edex/tafqueue/TafQueueVFTMgr.java @@ -42,163 +42,201 @@ import com.raytheon.uf.edex.database.DataAccessLayerException; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Mar 07, 2013 15375 zhao Initial creation + * May 07, 2014 3091 rferrel fcstid now a String. * * * * @author zhao - * + * */ public class TafQueueVFTMgr { - - private final IUFStatusHandler statusHandler = UFStatus.getHandler(TafQueueVFTMgr.class); - - private static TafQueueVFTMgr instance = null; - + + private final IUFStatusHandler statusHandler = UFStatus + .getHandler(TafQueueVFTMgr.class); + + private static TafQueueVFTMgr instance = null; + private TafQueueVftConfigMgr config = null; - - private String wmoid = "NXUS98"; // default, to be replaced by wmo in config file - private String siteid = "OAX"; // default (siteid in taf_queue table) - private String stationid = "KOAX"; // default (stationid in taf_queue table) - private int fcstid = 0; // default forecasterid for VFT - private int period = 6; // number of hours; default period of VFT product creation, to be replaced by period in config file - private String bbb = "___"; // default BBB field for a VFT product - + + /** The wmo in config file. */ + private String wmoid; + + /** The siteid in config file. */ + private String siteid; + + /** The stationid in config file. */ + private String stationid; + + /** The forecasterid for VFT in config file. */ + private String fcstid; + + /** + * Number of hours; default period of VFT product creation, to be replaced + * by period in config file. + */ + private int period; + + /** Default BBB field for a VFT product. */ + private String bbb; + private Date lastVftTime = null; + private Date nextVftTime = null; - + private TafQueueVFTMgr() { - init(); - statusHandler.handle(Priority.INFO, "Tafqueue VFT manager created."); + init(); + statusHandler.handle(Priority.INFO, "Tafqueue VFT manager created."); } /** - * Create an AvnFPS VFT product, and updates time for next VFT product + * Create an AvnFPS VFT product, and updates time for next VFT product, */ - public void makeVftProduct() { - TafQueueDao dao = new TafQueueDao(); - Calendar cal = Calendar.getInstance(); - cal.setTimeZone(TimeZone.getTimeZone("GMT")); - nextVftTime = cal.getTime(); - try { - List records = dao.getRecordsForVFT(lastVftTime, fcstid); - if (records != null) { - if (records.size() > 0) { - StringBuilder sb = new StringBuilder(); - for (TafQueueRecord record : records) { - sb.append(formatVftTafRecord(record)); - sb.append("\n"); - } - String vftText = sb.toString(); - vftText = vftText.substring(0, vftText.length()-1); - TafQueueRecord vftRecord = new TafQueueRecord(fcstid, nextVftTime, vftText, bbb, siteid, wmoid, stationid, nextVftTime); - dao.create(vftRecord); - } - } - } catch (Exception e) { - statusHandler.handle(Priority.PROBLEM,"Tafqueue VFT manager: error occurred while making a VFT product.\n" + e.getLocalizedMessage(), e); - } - lastVftTime = nextVftTime; - statusHandler.handle(Priority.INFO, "Tafqueue VFT manager: Last VFT xmit time = " + lastVftTime.toString()); - cal.add(Calendar.HOUR_OF_DAY, period); - nextVftTime = cal.getTime(); - statusHandler.handle(Priority.INFO, "Tafqueue VFT manager: Next VFT xmit time = " + nextVftTime.toString()); - } + public void makeVftProduct() { + TafQueueDao dao = new TafQueueDao(); + Calendar cal = Calendar.getInstance(); + cal.setTimeZone(TimeZone.getTimeZone("GMT")); + nextVftTime = cal.getTime(); + try { + List records = dao.getRecordsForVFT(lastVftTime, + fcstid); + if (records != null) { + if (records.size() > 0) { + StringBuilder sb = new StringBuilder(); + for (TafQueueRecord record : records) { + sb.append(formatVftTafRecord(record)); + sb.append("\n"); + } + String vftText = sb.toString(); + vftText = vftText.substring(0, vftText.length() - 1); + TafQueueRecord vftRecord = new TafQueueRecord(fcstid, + nextVftTime, vftText, bbb, siteid, wmoid, + stationid, nextVftTime); + dao.create(vftRecord); + } + } + } catch (Exception e) { + statusHandler.handle(Priority.PROBLEM, + "Tafqueue VFT manager: error occurred while making a VFT product.\n" + + e.getLocalizedMessage(), e); + } + lastVftTime = nextVftTime; + statusHandler.handle( + Priority.INFO, + "Tafqueue VFT manager: Last VFT xmit time = " + + lastVftTime.toString()); + cal.add(Calendar.HOUR_OF_DAY, period); + nextVftTime = cal.getTime(); + statusHandler.handle( + Priority.INFO, + "Tafqueue VFT manager: Next VFT xmit time = " + + nextVftTime.toString()); + } private String formatVftTafRecord(TafQueueRecord record) { - String tafText = record.getTafText(); - int indexOfTafPeriod = tafText.indexOf('/'); - String tafPeriod = tafText.substring(indexOfTafPeriod-4, indexOfTafPeriod+5); - String tafBbb = record.getBbb(); - if ( tafBbb.equals("") || tafBbb.equals(" ") ) { - tafBbb = "___"; - } - return String.format("%1$s %2$s %3$ty%3$tm%3$td%3$tH%4$s " + - "%5$s %6$s %7$ty%7$tm%7$td%7$tH%7$tm%8$s %9$s %10$03d", - record.getWmoId(), record.getStationId(), record.getHeaderTime(), "00", - tafBbb, record.getStationId().charAt(0)+record.getSiteId(), - record.getXmitTime(), "Z", tafPeriod, record.getForecasterId()); - } - - private void init() { - config = TafQueueVftConfigMgr.getInstance(); - wmoid = config.getWmoid(); - siteid = config.getSiteid(); - stationid = config.getStationid(); - fcstid = config.getFcstid(); - period = config.getPeriod(); - bbb = config.getBbb(); - - // determine lastVftTime and nextVftTime - TafQueueDao dao = new TafQueueDao(); - try { - lastVftTime = dao.getLastXmitTimeByForecasterId(fcstid); - } catch (DataAccessLayerException e) { - statusHandler.handle(Priority.PROBLEM, "Tafqueue VFT manager: error occurred while querying for last VFT xmit time.\n" + e.getLocalizedMessage(), e); - } - Calendar cal = Calendar.getInstance(); - cal.setTimeZone(TimeZone.getTimeZone("GMT")); - if ( lastVftTime == null ) { - nextVftTime = cal.getTime(); - cal.add(Calendar.HOUR_OF_DAY, -period); - lastVftTime = cal.getTime(); - } else { - cal.setTime(lastVftTime); - cal.add(Calendar.HOUR_OF_DAY, period); - nextVftTime = cal.getTime(); - } - statusHandler.handle(Priority.INFO, "Tafqueue VFT manager: Last VFT xmit time = " + lastVftTime.toString()); - statusHandler.handle(Priority.INFO, "Tafqueue VFT manager: Next VFT xmit time = " + nextVftTime.toString()); - } - - public static TafQueueVFTMgr getInstance() { - if ( instance == null ) { - instance = new TafQueueVFTMgr(); - } - return instance; + String tafText = record.getTafText(); + int indexOfTafPeriod = tafText.indexOf('/'); + String tafPeriod = tafText.substring(indexOfTafPeriod - 4, + indexOfTafPeriod + 5); + String tafBbb = record.getBbb(); + if (tafBbb.equals("") || tafBbb.equals(" ")) { + tafBbb = "___"; + } + return String.format("%1$s %2$s %3$ty%3$tm%3$td%3$tH%4$s " + + "%5$s %6$s %7$ty%7$tm%7$td%7$tH%7$tm%8$s %9$s %10$s", + record.getWmoId(), record.getStationId(), + record.getHeaderTime(), "00", tafBbb, record.getStationId() + .charAt(0) + record.getSiteId(), record.getXmitTime(), + "Z", tafPeriod, record.getForecasterId()); } - - public void setWmoid(String wmoid) { - this.wmoid = wmoid; - } - public String getWmoid() { - return wmoid; - } + private void init() { + config = TafQueueVftConfigMgr.getInstance(); + wmoid = config.getWmoid(); + siteid = config.getSiteid(); + stationid = config.getStationid(); + fcstid = config.getFcstid(); + period = config.getPeriod(); + bbb = config.getBbb(); - public void setPeriod(int period) { - this.period = period; - } + // determine lastVftTime and nextVftTime + TafQueueDao dao = new TafQueueDao(); + try { + lastVftTime = dao.getLastXmitTimeByForecasterId(fcstid); + } catch (DataAccessLayerException e) { + statusHandler.handle(Priority.PROBLEM, + "Tafqueue VFT manager: error occurred while querying for last VFT xmit time.\n" + + e.getLocalizedMessage(), e); + } + Calendar cal = Calendar.getInstance(); + cal.setTimeZone(TimeZone.getTimeZone("GMT")); + if (lastVftTime == null) { + nextVftTime = cal.getTime(); + cal.add(Calendar.HOUR_OF_DAY, -period); + lastVftTime = cal.getTime(); + } else { + cal.setTime(lastVftTime); + cal.add(Calendar.HOUR_OF_DAY, period); + nextVftTime = cal.getTime(); + } + statusHandler.handle( + Priority.INFO, + "Tafqueue VFT manager: Last VFT xmit time = " + + lastVftTime.toString()); + statusHandler.handle( + Priority.INFO, + "Tafqueue VFT manager: Next VFT xmit time = " + + nextVftTime.toString()); + } - public int getPeriod() { - return period; - } + public static synchronized TafQueueVFTMgr getInstance() { + if (instance == null) { + instance = new TafQueueVFTMgr(); + } + return instance; + } - public void setSiteid(String siteid) { - this.siteid = siteid; - } + public void setWmoid(String wmoid) { + this.wmoid = wmoid; + } - public String getSiteid() { - return siteid; - } + public String getWmoid() { + return wmoid; + } - public void setStationid(String stationid) { - this.stationid = stationid; - } + public void setPeriod(int period) { + this.period = period; + } - public String getStationid() { - return stationid; - } + public int getPeriod() { + return period; + } - public void setFcstid(int fcstid) { - this.fcstid = fcstid; - } + public void setSiteid(String siteid) { + this.siteid = siteid; + } - public int getFcstid() { - return fcstid; - } + public String getSiteid() { + return siteid; + } - public Date getNextVftTime() { - return nextVftTime; - } + public void setStationid(String stationid) { + this.stationid = stationid; + } + + public String getStationid() { + return stationid; + } + + public void setFcstid(String fcstid) { + this.fcstid = fcstid; + } + + public String getFcstid() { + return fcstid; + } + + public Date getNextVftTime() { + return nextVftTime; + } } diff --git a/edexOsgi/com.raytheon.uf.edex.text.feature/feature.xml b/edexOsgi/com.raytheon.uf.edex.text.feature/feature.xml index 10df591fb1..5727b25fde 100644 --- a/edexOsgi/com.raytheon.uf.edex.text.feature/feature.xml +++ b/edexOsgi/com.raytheon.uf.edex.text.feature/feature.xml @@ -16,26 +16,12 @@ [Enter License Description here.] - + - - - - - * + * * SOFTWARE HISTORY - * + * * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * May 12, 2012 mpduff Initial creation. * Sep 24, 2012 1157 mpduff Use the application member variable. - * + * May 28, 2014 3211 njensen Use IAuthorizer instead of IRoleStorage + * * - * + * * @author mpduff * @version 1.0 */ @@ -57,7 +58,7 @@ public class UserAdminPrivilegedRequestHandler extends /* * (non-Javadoc) - * + * * @see * com.raytheon.uf.common.serialization.comm.IRequestHandler#handleRequest * (com.raytheon.uf.common.serialization.comm.IServerRequest) @@ -73,7 +74,7 @@ public class UserAdminPrivilegedRequestHandler extends /* * (non-Javadoc) - * + * * @see * com.raytheon.uf.edex.auth.req.AbstractPrivilegedRequestHandler#authorized * (com.raytheon.uf.common.auth.user.IUser, @@ -84,10 +85,10 @@ public class UserAdminPrivilegedRequestHandler extends UserAdminAuthRequest request) throws AuthorizationException { AuthManager manager = AuthManagerFactory.getInstance().getManager(); - IRoleStorage roleStorage = manager.getRoleStorage(); + IAuthorizer auth = manager.getAuthorizer(); - boolean authorized = roleStorage.isAuthorized((request).getRoleId(), - user.uniqueId().toString(), APPLICATION); + boolean authorized = auth.isAuthorized((request).getRoleId(), user + .uniqueId().toString(), APPLICATION); if (authorized) { return new AuthorizationResponse(authorized); diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/META-INF/MANIFEST.MF b/edexOsgi/com.raytheon.uf.edex.wfs/META-INF/MANIFEST.MF index 6211253e8d..e0a239e279 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/META-INF/MANIFEST.MF +++ b/edexOsgi/com.raytheon.uf.edex.wfs/META-INF/MANIFEST.MF @@ -14,18 +14,18 @@ Require-Bundle: org.geotools;bundle-version="2.6.4", net.opengis;bundle-version="1.0.2", ogc.tools.gml;bundle-version="1.0.2", org.apache.commons.lang;bundle-version="2.3.0", - com.raytheon.uf.common.datadelivery.harvester;bundle-version="1.0.0", com.raytheon.uf.common.status;bundle-version="1.12.1174", com.raytheon.uf.edex.log;bundle-version="1.12.1174", com.raytheon.uf.common.localization;bundle-version="1.12.1174", - com.raytheon.uf.common.datadelivery.retrieval;bundle-version="1.0.0", - com.raytheon.uf.common.datadelivery.registry;bundle-version="1.0.0", javax.measure;bundle-version="1.0.0", com.sun.xml.bind;bundle-version="1.0.0", org.w3.xmlschema;bundle-version="1.0.0", com.raytheon.uf.common.pointdata;bundle-version="1.12.1174", org.apache.commons.collections;bundle-version="3.2.0", - org.apache.commons.cxf;bundle-version="1.0.0" + org.apache.commons.cxf;bundle-version="1.0.0", + com.raytheon.uf.common.http, + com.raytheon.uf.edex.soap;bundle-version="1.14.0", + org.apache.ws.commons.schema;bundle-version="2.1.0" Export-Package: com.raytheon.uf.edex.wfs, com.raytheon.uf.edex.wfs.feature, com.raytheon.uf.edex.wfs.filter, diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/build.properties b/edexOsgi/com.raytheon.uf.edex.wfs/build.properties index e016089273..6047e731c1 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/build.properties +++ b/edexOsgi/com.raytheon.uf.edex.wfs/build.properties @@ -1,8 +1,8 @@ source.. = src/ +output.. = bin/ bin.includes = .project,\ .classpath,\ META-INF/,\ build.properties,\ - .settings/,\ .,\ res/ diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-request.xml b/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-request.xml index 67649049c1..9d8bae257e 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-request.xml +++ b/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-request.xml @@ -1,17 +1,15 @@ + http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd"> diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-wsdl.xml b/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-wsdl.xml index 052d89cfa1..9e5cb37959 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-wsdl.xml +++ b/edexOsgi/com.raytheon.uf.edex.wfs/res/spring/wfs-ogc-soap-wsdl.xml @@ -3,7 +3,7 @@ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> + class="com.raytheon.uf.edex.soap.CustomWsdlInterceptor"> diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v1_1_0/QueryFilterVisitor.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v1_1_0/QueryFilterVisitor.java index be0445fbf6..10932ea09a 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v1_1_0/QueryFilterVisitor.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v1_1_0/QueryFilterVisitor.java @@ -43,7 +43,7 @@ import org.hibernate.criterion.Disjunction; import org.hibernate.criterion.Junction; import org.hibernate.criterion.MatchMode; import org.hibernate.criterion.Restrictions; -import org.hibernatespatial.criterion.SpatialRestrictions; +import org.hibernate.spatial.criterion.SpatialRestrictions; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; @@ -64,6 +64,7 @@ import com.vividsolutions.jts.geom.Geometry; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Apr 22, 2011 bclement Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v2_0_0/QueryFilterVisitor.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v2_0_0/QueryFilterVisitor.java index b9493e86c6..bc23dd16b8 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v2_0_0/QueryFilterVisitor.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/filter/v2_0_0/QueryFilterVisitor.java @@ -42,8 +42,8 @@ import org.hibernate.criterion.Criterion; import org.hibernate.criterion.Disjunction; import org.hibernate.criterion.MatchMode; import org.hibernate.criterion.Restrictions; -import org.hibernatespatial.criterion.SpatialRelateExpression; -import org.hibernatespatial.criterion.SpatialRestrictions; +import org.hibernate.spatial.criterion.SpatialRelateExpression; +import org.hibernate.spatial.criterion.SpatialRestrictions; import com.raytheon.uf.common.geospatial.MapUtil; import com.raytheon.uf.edex.ogc.common.db.SQLParamRestriction; @@ -73,6 +73,7 @@ import com.vividsolutions.jts.geom.Geometry; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Oct 17, 2012 bclement Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/AbstractWfsProvider.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/AbstractWfsProvider.java index 768b812bcd..2cefd3b385 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/AbstractWfsProvider.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/AbstractWfsProvider.java @@ -22,6 +22,7 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.edex.ogc.common.OgcBoundingBox; @@ -30,7 +31,6 @@ import com.raytheon.uf.edex.ogc.common.OgcNamespace; import com.raytheon.uf.edex.ogc.common.OgcPrefix; import com.raytheon.uf.edex.ogc.common.OgcResponse; import com.raytheon.uf.edex.ogc.common.OgcTimeRange; -import com.raytheon.uf.edex.ogc.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.http.OgcHttpHandler; import com.raytheon.uf.edex.ogc.common.output.IOgcHttpResponse; import com.raytheon.uf.edex.ogc.common.output.OgcResponseOutput; diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/FeatureFetcher.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/FeatureFetcher.java index a206364ea2..bc9aca33c6 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/FeatureFetcher.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/provider/FeatureFetcher.java @@ -29,7 +29,7 @@ import net.opengis.filter.v_1_1_0.FilterType; import org.geotools.geometry.jts.JTS; import org.hibernate.criterion.Criterion; -import org.hibernatespatial.criterion.SpatialRestrictions; +import org.hibernate.spatial.criterion.SpatialRestrictions; import org.opengis.feature.simple.SimpleFeature; import com.raytheon.uf.common.status.IUFStatusHandler; @@ -62,6 +62,7 @@ import com.vividsolutions.jts.geom.Polygon; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Apr 29, 2011 bclement Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/AbstractWfsSource.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/AbstractWfsSource.java index 078bea45f8..27dbc8cf01 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/AbstractWfsSource.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/AbstractWfsSource.java @@ -26,8 +26,8 @@ import java.util.List; import java.util.Map; import org.hibernate.Criteria; +import org.hibernate.Session; import org.hibernate.SessionFactory; -import org.hibernate.classic.Session; import org.hibernate.criterion.Criterion; import org.hibernate.criterion.Order; import org.hibernate.criterion.Projections; @@ -55,6 +55,7 @@ import com.raytheon.uf.edex.wfs.request.SortBy; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * May 9, 2012 bclement Initial creation + * 10/16/2014 3454 bphillip Upgrading to Hibernate 4 * * * diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/WfsRegistryImpl.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/WfsRegistryImpl.java index cdfbddf64f..7f395b031f 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/WfsRegistryImpl.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/reg/WfsRegistryImpl.java @@ -38,6 +38,8 @@ import net.opengis.gml.v_3_1_1.ObjectFactory; import org.apache.commons.lang.ArrayUtils; import org.w3c.dom.Node; +import com.raytheon.uf.common.serialization.MarshalOptions; +import com.raytheon.uf.common.serialization.SerializationException; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.util.registry.RegistryException; @@ -47,6 +49,7 @@ import com.raytheon.uf.edex.ogc.common.jaxb.OgcJaxbManager; import com.raytheon.uf.edex.wfs.WfsException; import com.raytheon.uf.edex.wfs.WfsFeatureType; import com.raytheon.uf.edex.wfs.request.QualifiedName; +import com.sun.xml.bind.marshaller.NamespacePrefixMapper; /** * Wfs registry implementation. Handles wfs sources and the JAXB context @@ -59,6 +62,7 @@ import com.raytheon.uf.edex.wfs.request.QualifiedName; * ------------ ---------- ----------- -------------------------- * Apr 11, 2011 bclement Initial creation * May 30, 2013 753 dhladky reverted to original + * Jul 15, 2014 3373 bclement jaxb manager api changes * * * @@ -173,8 +177,14 @@ public class WfsRegistryImpl implements IWfsRegistry { write.lock(); try { jaxbContextVersion = currentVersion; - jaxbManager = new OgcJaxbManager(jaxbClasses); - jaxbManager.setPrefixMap(NS_MAP); + NamespacePrefixMapper mapper = new NamespacePrefixMapper() { + @Override + public String getPreferredPrefix(String uri, + String suggestion, boolean requirePrefix) { + return NS_MAP.get(uri); + } + }; + jaxbManager = new OgcJaxbManager(mapper, jaxbClasses); } finally { write.unlock(); } @@ -188,7 +198,7 @@ public class WfsRegistryImpl implements IWfsRegistry { * @throws JAXBException */ public Object unmarshal(String xml) throws JAXBException { - return getManager().unmarshal(xml); + return getManager().unmarshalFromXml(xml); } public Object unmarshal(Node node) throws JAXBException { @@ -199,9 +209,11 @@ public class WfsRegistryImpl implements IWfsRegistry { * @param in * @return * @throws JAXBException + * @throws SerializationException */ - public Object unmarshal(InputStream in) throws JAXBException { - return getManager().unmarshal(in); + public Object unmarshal(InputStream in) throws JAXBException, + SerializationException { + return getManager().unmarshalFromInputStream(in); } /** @@ -210,30 +222,32 @@ public class WfsRegistryImpl implements IWfsRegistry { * @throws JAXBException */ public String marshal(Object obj) throws JAXBException { - return getManager().marshal(obj, false); + return getManager().marshalToXml(obj, MarshalOptions.UNFORMATTED); } + public String marshal(Object obj, boolean fragment) throws JAXBException { + MarshalOptions options = new MarshalOptions(false, fragment); + return getManager().marshalToXml(obj, options); + } + public Node marshalToNode(Object obj) throws JAXBException, ParserConfigurationException { return getManager().marshalToNode(obj); } - public String marshal(Object obj, boolean fragment) throws JAXBException { - return getManager().marshal(obj, false, fragment); + public String marshal(Object obj, MarshalOptions options) throws JAXBException { + return getManager().marshalToXml(obj, options); } /** * @param obj * @param out * @throws JAXBException + * @throws SerializationException */ - public void marshal(Object obj, OutputStream out) throws JAXBException { - getManager().marshal(obj, out, null, false, false); - } - - public void marshal(Object obj, OutputStream out, boolean fragment) - throws JAXBException { - getManager().marshal(obj, out, null, false, fragment); + public void marshal(Object obj, OutputStream out) throws JAXBException, + SerializationException { + getManager().marshalToStream(obj, out, MarshalOptions.UNFORMATTED); } /** diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/GetFeatureReq.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/GetFeatureReq.java index 0bd73f38ec..665367f8f8 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/GetFeatureReq.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/GetFeatureReq.java @@ -36,7 +36,7 @@ import net.opengis.wfs.v_1_1_0.ResultTypeType; import net.opengis.wfs.v_2_0_0.GetPropertyValueType; import net.opengis.wfs.v_2_0_0.StoredQueryType; -import com.raytheon.uf.edex.ogc.common.http.MimeType; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.wfs.WfsException; import com.raytheon.uf.edex.wfs.WfsException.Code; import com.raytheon.uf.edex.wfs.querystore.IStoredQueryCallback; diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/WfsRequest.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/WfsRequest.java index f7c1114d0a..9f6ffd2f83 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/WfsRequest.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/request/WfsRequest.java @@ -19,8 +19,8 @@ **/ package com.raytheon.uf.edex.wfs.request; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.OgcResponse; -import com.raytheon.uf.edex.ogc.common.http.MimeType; /** * Abstract base for WFS request wrappers diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/Wfs.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/Wfs.java index 834b218776..09d1543912 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/Wfs.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/Wfs.java @@ -66,7 +66,7 @@ import com.raytheon.uf.edex.wfs.soap2_0_0.util.DescribeFeatureTypeResponseType; * @version 1.0 */ @GZIP -@InInterceptors(interceptors = "com.raytheon.uf.edex.log.cxf.CXFLogger") +@InInterceptors(interceptors = "com.raytheon.uf.edex.soap.CXFLogger") @WebService(name = "wfs", targetNamespace = "http://www.opengis.net/wfs/requests/2.0") @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) @BindingType(javax.xml.ws.soap.SOAPBinding.SOAP12HTTP_BINDING) diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/WfsImpl.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/WfsImpl.java index 65e64a97fe..68f7ce0e49 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/WfsImpl.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/soap2_0_0/WfsImpl.java @@ -35,7 +35,6 @@ import net.opengis.wfs.v_2_0_0.WFSCapabilitiesType; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; -import com.raytheon.uf.edex.log.cxf.RequestLogController; import com.raytheon.uf.edex.ogc.common.http.EndpointInfo; import com.raytheon.uf.edex.ogc.common.soap.AbstractOwsService; import com.raytheon.uf.edex.ogc.common.soap.ServiceExceptionReport; @@ -43,6 +42,7 @@ import com.raytheon.uf.edex.ogc.common.stats.IStatsRecorder; import com.raytheon.uf.edex.ogc.common.stats.OperationType; import com.raytheon.uf.edex.ogc.common.stats.ServiceType; import com.raytheon.uf.edex.ogc.common.stats.StatsRecorderFinder; +import com.raytheon.uf.edex.soap.RequestLogController; import com.raytheon.uf.edex.wfs.WfsException; import com.raytheon.uf.edex.wfs.WfsException.Code; import com.raytheon.uf.edex.wfs.request.DescFeatureTypeReq; diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Capabilities.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Capabilities.java index f019f9739f..c977adafc0 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Capabilities.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Capabilities.java @@ -56,11 +56,11 @@ import net.opengis.wfs.v_1_1_0.GMLObjectTypeType; import net.opengis.wfs.v_1_1_0.OutputFormatListType; import net.opengis.wfs.v_1_1_0.WFSCapabilitiesType; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.OgcNamespace; import com.raytheon.uf.edex.ogc.common.OgcOperationInfo; import com.raytheon.uf.edex.ogc.common.OgcServiceInfo; import com.raytheon.uf.edex.ogc.common.feature.GmlUtils; -import com.raytheon.uf.edex.ogc.common.http.MimeType; import com.raytheon.uf.edex.wfs.IWfsProvider.WfsOpType; import com.raytheon.uf.edex.wfs.WfsException; import com.raytheon.uf.edex.wfs.reg.WfsRegistryImpl; diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Wfs1_1_0Provider.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Wfs1_1_0Provider.java index b2e2276e1b..3c4a4f75e0 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Wfs1_1_0Provider.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v1_1_0/Wfs1_1_0Provider.java @@ -45,6 +45,7 @@ import org.opengis.feature.simple.SimpleFeature; import org.springframework.context.ApplicationContext; import org.w3.xmlschema.Schema; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.ogc.common.OgcException; import com.raytheon.uf.edex.ogc.common.OgcOperationInfo; @@ -55,7 +56,6 @@ import com.raytheon.uf.edex.ogc.common.OgcServiceInfo; import com.raytheon.uf.edex.ogc.common.feature.GmlUtils; import com.raytheon.uf.edex.ogc.common.feature.SimpleFeatureFormatter; import com.raytheon.uf.edex.ogc.common.http.EndpointInfo; -import com.raytheon.uf.edex.ogc.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.http.OgcHttpHandler; import com.raytheon.uf.edex.ogc.common.output.IOgcHttpResponse; import com.raytheon.uf.edex.ogc.common.output.OgcResponseOutput; diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Capabilities.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Capabilities.java index a1a7af2c2d..79b6b0784f 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Capabilities.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Capabilities.java @@ -54,11 +54,11 @@ import net.opengis.wfs.v_2_0_0.FeatureTypeListType; import net.opengis.wfs.v_2_0_0.FeatureTypeType; import net.opengis.wfs.v_2_0_0.WFSCapabilitiesType; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.OgcNamespace; import com.raytheon.uf.edex.ogc.common.OgcOperationInfo; import com.raytheon.uf.edex.ogc.common.OgcServiceInfo; import com.raytheon.uf.edex.ogc.common.feature.GmlUtils; -import com.raytheon.uf.edex.ogc.common.http.MimeType; import com.raytheon.uf.edex.wfs.IWfsProvider.WfsOpType; import com.raytheon.uf.edex.wfs.WfsException; import com.raytheon.uf.edex.wfs.reg.WfsRegistryImpl; diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Wfs2_0_0Provider.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Wfs2_0_0Provider.java index 079269dd49..a2036d7871 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Wfs2_0_0Provider.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/v2_0_0/Wfs2_0_0Provider.java @@ -67,6 +67,7 @@ import org.w3.xmlschema.Schema; import org.w3c.dom.Node; import org.w3c.dom.NodeList; +import com.raytheon.uf.common.http.MimeType; import com.raytheon.uf.edex.core.EDEXUtil; import com.raytheon.uf.edex.ogc.common.OgcException; import com.raytheon.uf.edex.ogc.common.OgcOperationInfo; @@ -77,7 +78,6 @@ import com.raytheon.uf.edex.ogc.common.OgcServiceInfo; import com.raytheon.uf.edex.ogc.common.feature.GmlUtils; import com.raytheon.uf.edex.ogc.common.feature.SimpleFeatureFormatter; import com.raytheon.uf.edex.ogc.common.http.EndpointInfo; -import com.raytheon.uf.edex.ogc.common.http.MimeType; import com.raytheon.uf.edex.ogc.common.http.OgcHttpHandler; import com.raytheon.uf.edex.ogc.common.output.IOgcHttpResponse; import com.raytheon.uf.edex.ogc.common.output.OgcResponseOutput; @@ -116,8 +116,9 @@ import com.raytheon.uf.edex.wfs.util.XMLGregorianCalendarConverter; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Oct 17, 2012 bclement Initial creation - * Sep 18, 2013 #411 skorolev Added required RESPONSE METADATA - * Nov 11, 2013 2539 bclement moved registry/marshal to parent + * Sep 18, 2013 #411 skorolev Added required RESPONSE METADATA + * Nov 11, 2013 2539 bclement moved registry/marshal to parent + * Jul 15, 2014 3373 bclement jaxb manager api changes * * * @@ -1063,7 +1064,7 @@ public class Wfs2_0_0Provider extends AbstractWfsProvider implements try { String xml = registry.marshal(object, true); rval.put(key, xml); - } catch (JAXBException e) { + } catch (Exception e) { log.error("Problem marshalling parameter value", e); // is it possible that this isn't our fault? throw new WfsException(Code.OperationProcessingFailed); diff --git a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/wxxm/AbstractWxxm32Translator.java b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/wxxm/AbstractWxxm32Translator.java index e27de452c0..d136c90c91 100644 --- a/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/wxxm/AbstractWxxm32Translator.java +++ b/edexOsgi/com.raytheon.uf.edex.wfs/src/com/raytheon/uf/edex/wfs/wxxm/AbstractWxxm32Translator.java @@ -22,7 +22,13 @@ import java.util.HashMap; import java.util.Map; import java.util.Properties; -import javax.measure.converter.UnitConverter; +import javax.measure.Measure; +import javax.measure.quantity.Angle; +import javax.measure.quantity.Length; +import javax.measure.quantity.Pressure; +import javax.measure.quantity.Quantity; +import javax.measure.quantity.Temperature; +import javax.measure.quantity.Velocity; import javax.measure.unit.NonSI; import javax.measure.unit.SI; import javax.measure.unit.Unit; @@ -59,7 +65,6 @@ import com.eurocontrol.wx.v_1_1_1.VerticalDistanceType; import com.eurocontrol.wx.v_1_1_1.WeatherIntensityType; import com.eurocontrol.wx.v_1_1_1.WindDirectionType; import com.eurocontrol.wx.v_1_1_1.WindSpeedType; -import com.raytheon.uf.common.dataplugin.IDecoderGettable.Amount; import com.raytheon.uf.common.dataplugin.PluginDataObject; import com.raytheon.uf.common.localization.IPathManager; import com.raytheon.uf.common.localization.LocalizationContext; @@ -88,6 +93,7 @@ import com.vividsolutions.jts.geom.Geometry; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Nov 27, 2012 bclement Initial creation + * Jun 18, 2014 2061 bsteffen Replace Amount with Measure * * * @@ -303,14 +309,11 @@ public abstract class AbstractWxxm32Translator * @param amount * @return null if amount is null */ - protected PressureType getPressure(Amount amount) { + protected PressureType getPressure(Measure amount) { if (amount == null) { return null; } - double value = amount.getValue().doubleValue(); - Unit unit = amount.getUnit(); - UnitConverter converter = unit.getConverterTo(SI.PASCAL); - double paValue = converter.convert(value); + double paValue = amount.doubleValue(SI.PASCAL); PressureType rval = new PressureType(); rval.setValue(paValue); rval.setUom(UomPressureType.PA); @@ -322,11 +325,12 @@ public abstract class AbstractWxxm32Translator * @param uom * @return null if value is null */ - protected Amount createAmount(Double value, Unit uom) { + protected Measure createAmount( + Double value, Unit uom) { if (value == null) { return null; } - return new Amount(value, uom); + return Measure.valueOf(value, uom); } /** @@ -334,11 +338,12 @@ public abstract class AbstractWxxm32Translator * @param uom * @return null if value is null */ - protected Amount createAmount(double value, Unit uom, double missingVal) { + protected Measure createAmount( + double value, Unit uom, double missingVal) { if (value == missingVal) { return null; } - return new Amount(value, uom); + return Measure.valueOf(value, uom); } /** @@ -346,11 +351,12 @@ public abstract class AbstractWxxm32Translator * @param uom * @return null if value is null */ - protected Amount createAmount(Integer value, Unit uom) { + protected Measure createAmount( + Integer value, Unit uom) { if (value == null) { return null; } - return new Amount(value, uom); + return Measure.valueOf(value, uom); } /** @@ -384,14 +390,11 @@ public abstract class AbstractWxxm32Translator * @param amount * @return null if amount is null */ - protected AirTemperatureType getAirTemp(Amount amount) { + protected AirTemperatureType getAirTemp(Measure amount) { if (amount == null) { return null; } - double value = amount.getValue().doubleValue(); - Unit unit = amount.getUnit(); - UnitConverter converter = unit.getConverterTo(SI.CELSIUS); - double celValue = converter.convert(value); + double celValue = amount.doubleValue(SI.CELSIUS); return getAirTemp(celValue, UomTemperatureType.C); } @@ -401,14 +404,11 @@ public abstract class AbstractWxxm32Translator * @param amount * @return null if amount is null */ - protected WindSpeedType getWindSpeed(Amount amount) { + protected WindSpeedType getWindSpeed(Measure amount) { if (amount == null) { return null; } - double value = amount.getValue().doubleValue(); - Unit unit = amount.getUnit(); - UnitConverter converter = unit.getConverterTo(NonSI.KNOT); - double knotVal = converter.convert(value); + double knotVal = amount.doubleValue(NonSI.KNOT); WindSpeedType rval = new WindSpeedType(); rval.setValue(knotVal); rval.setUom(UomSpeedType.KT); @@ -421,14 +421,11 @@ public abstract class AbstractWxxm32Translator * @param amount * @return null if amount is null */ - protected WindDirectionType getWindDir(Amount amount) { + protected WindDirectionType getWindDir(Measure amount) { if (amount == null) { return null; } - double value = amount.getValue().doubleValue(); - Unit unit = amount.getUnit(); - UnitConverter converter = unit.getConverterTo(NonSI.DEGREE_ANGLE); - double degValue = converter.convert(value); + double degValue = amount.doubleValue(NonSI.DEGREE_ANGLE); WindDirectionType rval = new WindDirectionType(); rval.setValue(degValue); rval.setUom(UomAngleType.DEG); @@ -568,14 +565,11 @@ public abstract class AbstractWxxm32Translator * @param amount * @return null if amount is null */ - protected VerticalDistanceType getVertDist(Amount amount) { + protected VerticalDistanceType getVertDist(Measure amount) { if (amount == null) { return null; } - double value = amount.getValue().doubleValue(); - Unit unit = amount.getUnit(); - UnitConverter converter = unit.getConverterTo(NonSI.FOOT); - double ftValue = converter.convert(value); + double ftValue = amount.doubleValue(NonSI.FOOT); VerticalDistanceType rval = new VerticalDistanceType(); rval.setValue(ftValue); rval.setUom(UomDistanceType.FT); @@ -657,7 +651,8 @@ public abstract class AbstractWxxm32Translator * @return */ protected FeaturePropertyType createFeatureOfInterest( - JAXBElement geom, Amount base, Amount top) { + JAXBElement geom, Measure base, + Measure top) { FeaturePropertyType rval = new FeaturePropertyType(); AirspaceType airspaceType = avFactory.createAirspaceType(); if (base != null) { diff --git a/edexOsgi/com.raytheon.uf.tools.cli/impl/capture b/edexOsgi/com.raytheon.uf.tools.cli/impl/capture index 9c6ef5af9b..48d0d21eec 100644 --- a/edexOsgi/com.raytheon.uf.tools.cli/impl/capture +++ b/edexOsgi/com.raytheon.uf.tools.cli/impl/capture @@ -2,11 +2,10 @@ # base path to save capture data to, will create subdirectory for each workstation basePath="/data/fxa/cave" -# the grep string to find the cave processes -grepString="(/awips2/cave/cave|/usr/local/viz/cave)" - edexGrepString="edex.run.mode=" +xorgLogPath="/var/log" + # the remote servers to grab top on. Use to get general state of servers REMOTE_SERVERS_TO_CHECK="${DX_SERVERS}" @@ -30,6 +29,7 @@ GRAB_REMOTE_VMSTAT="Y" GRAB_CAVE_AND_ALERTVIZ_LOGS="Y" GRAB_SCREENSHOT="Y" GRAB_CURRENT_QUERIES="Y" +GRAB_XORG_LOG="Y" EDEX_MODE="N" FORCE="N" TGZ_OUTPUT="Y" @@ -48,7 +48,7 @@ usage() { echo " The servers to grab top information from, make sure list is quoted and space delimited" echo echo -e "-d {y/n}\t\tdefault [$RUN_JMAP]" - echo " Run jmap to grab the head dump information" + echo " Run jmap to grab the heap dump information" echo echo -e "-e {request/ingest/ingestGrib/ingestDat}" echo " Run edex mode and grab information about the jvm passed. May be used multiple times to grab data about multiple jvms" @@ -56,9 +56,6 @@ usage() { echo -e "-f {y/n}\t\tdefault [$FORCE]" echo " Force a jstack/jmap by default" echo - echo -e "-g {grep string}\tdefault [$grepString]" - echo " The grep string used to find the processes" - echo echo -e "-l {y/n}\t\tdefault [$GRAB_CAVE_AND_ALERTVIZ_LOGS]" echo " Captures the cave and alertviz logs. If run for a specific pid the only cave log captured will be for that pid" echo @@ -132,6 +129,21 @@ checkYes() { fi } +#check if at least 1 GB of free mem exists to run jmap +checkJmapMem() { + CAP_MEM=1000 + let freeMem=`free -m |grep buffers/cache|awk '{print $4}'` + + if [ $freeMem -gt $CAP_MEM ]; then + echo "${t1}: ${freeMem}M free, running jmap" >> $processFile + return 1 + else + echo "${t1}: ${freeMem}M free, skipping jmap" >> $processFile + return 0 + fi +} + + # runs import to grab screen shot of users desktop grabScreenShot() { if [ "$GRAB_SCREENSHOT" == "y" ]; then @@ -150,6 +162,16 @@ grabScreenShot() { fi } +# runs import to grab screen shot of users desktop +grabXorgLog() { + if [ "$GRAB_XORG_LOG" == "y" ]; then + echo "Capturing Xorg logs" + t1=`date "+%Y%m%d %H:%M:%S"` + echo "${t1}: Capturing Xorg logs" >> $processFile + cp ${xorgLogPath}/Xorg*.log* ${dataPath} >> $processFile 2>&1 & + fi +} + # runs ssh command to grab top on a remote server, requires auto login to be setup grabRemoteTop() { if [ "$GRAB_REMOTE_TOP" == "y" ]; then @@ -184,6 +206,7 @@ grabCurrentDatabaseQueries() { t1=`date "+%Y%m%d %H:%M:%S"` echo "${t1}: Capturing current database queries" >> $processFile out_file="${dataPath}/database_queries.log" + echo "dx1f:5432:metadata:awips:awips" > ~/.pgpass; chmod 600 ~/.pgpass psql -d metadata -U awips -h ${DATABASE_HOST} -c "select datname, pid, client_addr, query, now()-xact_start as runningTime from pg_stat_activity where state != 'idle' order by runningTime desc;" >> $out_file 2>&1 & fi } @@ -319,23 +342,32 @@ runJmap() { local t1=`date "+%Y%m%d %H:%M:%S"` local log="${prePath}dump.log" local dumpPath="${prePath}dump" + local heapPath="${prePath}heap" if [ "$ACCUM" == "y" ]; then # accum needs to change hprof by date local t2=`date "+%Y%m%d_%H%M%S"` dumpPath="${dumpPath}_${t2}.hprof" + heapPath="${heapPath}_${t2}.txt" else dumpPath="${dumpPath}.hprof" + heapPath="${heapPath}.txt" fi - local cmd="/awips2/java/bin/jmap -dump:format=b,file=${dumpPath}" - echo "${t1}: Running command: $cmd $options $pid >> $log 2>&1 &" >> $processFile - $cmd $options $pid >> $log 2>&1 & + echo "${t1}: Running command: /awips2/java/bin/jmap -heap $pid" >> $processFile + /awips2/java/bin/jmap -heap $pid >> ${heapPath} 2>&1 + + # Java 1.7 has a bug that causes jmap to crash processes using the G1 garbage collector + # more info at http://stackoverflow.com/questions/20571004/garbage-collector-first-and-jmap-eof-bug + # workaround is to add the 'live' option to jmap to limit the dump to only live objects + local cmd="/awips2/java/bin/jmap -dump:live,format=b,file=${dumpPath}" + echo "${t1}: Running command: $cmd $options $pid >> $log 2>&1" >> $processFile + $cmd $options $pid >> $log 2>&1 if [[ "$?" != "0" && $FORCE != "y" ]]; then t1=`date "+%Y%m%d %H:%M:%S"` echo "${t1}: jmap for $pid failed to connect, rerunning with -F" >> $processFile - $cmd $options -F $pid >> $log 2>&1 & + $cmd $options -F $pid >> $log 2>&1 fi } @@ -391,6 +423,35 @@ runVersions() { $cmd >> ${dataPath}/versions.log 2>&1 } +# take in pid, output process name without args +getCommandName() { + ps --no-header c -p $1 -o cmd +} + +# take in pid, output parent process id +getParentPid() { + ps --no-header -p $1 -o ppid +} + +# take in pid, output associated cave executable pid if found, otherwise output given pid +determineCaveProcess() { + local RVAL=$1 + # check if supplied PID is for the cave executable + local CMD_NAME=$(getCommandName $1) + if [[ ! $CMD_NAME =~ cave ]] + then + # worker pid probably provided, check parent + RVAL=$(getParentPid $1) + if [[ ! $(getCommandName $RVAL) =~ cave ]] + then + # parent wasn't cave either... continue on using PID provided + echo "${t1}: Unable to find cave process for pid $1, proceeding with provided PID" >> $processFile + RVAL=$1 + fi + fi + echo $RVAL +} + # parse command line while [ ! -z "$1" ]; do arg=$1 @@ -401,7 +462,6 @@ while [ ! -z "$1" ]; do -d) RUN_JMAP="$1"; shift 1;; -e) EDEX_MODE="Y"; edexProcs[$edexProcCount]="$1"; shift 1; let "edexProcCount+=1";; -f) FORCE="$1"; shift 1;; - -g) grepString="$1"; shift 1;; -l) GRAB_CAVE_AND_ALERTVIZ_LOGS="$1"; shift 1;; -m) MOVE_ALL_HS_ERR_PID="$1"; shift 1;; -p) cavePid="$1"; shift 1;; @@ -433,6 +493,7 @@ checkYes TGZ_OUTPUT $TGZ_OUTPUT checkYes ACCCUM $ACCCUM checkYes RUN_VERSIONS $RUN_VERSIONS checkYes GRAB_SCREENSHOT $GRAB_SCREENSHOT +checkYes GRAB_XORG_LOG $GRAB_XORG_LOG # if PID mode don't grab other hs_err_pids if [ ! -z $cavePid ]; then @@ -451,6 +512,7 @@ if [ "$EDEX_MODE" == "y" ]; then MOVE_ALL_HS_ERR_PID="n" GRAB_REMOTE_TOP="n" GRAB_REMOTE_VMSTAT="n" + GRAB_XORG_LOG="n" fi umask 0002 @@ -506,10 +568,27 @@ if [ "$EDEX_MODE" == "y" ]; then done grepString="${grepString}) " + procs=`ps -ef | grep -E "$grepString" | grep -v "grep"` +else + #list of cave process ids to get ps output for + caveProcNums="" + for parent in $(pgrep '^cave$') + do + # the cave process starts a new JVM as a child process + # find all children of the cave process + children=$(pgrep -P $parent) + if [[ -z $children ]] + then + # no children, assume that this is a main cave process + caveProcNums="$caveProcNums $parent" + else + # otherwise, only get ps output for children + caveProcNums="$caveProcNums $children" + fi + done + procs=$(ps --no-header -fp $caveProcNums) fi -procs=`ps -ef | grep -E "$grepString" | grep -v "grep" | grep -v "cave.sh"` - if [ ! -z "$cavePid" ]; then # limit cave procs to the requested PID echo "Running in PID mode, only requesting for pid $cavePid" >> $processFile @@ -545,7 +624,13 @@ if [ ! -z "${myProcs}" ]; then IFS=$PREV_IFS launchJstacks - launchJmaps + + checkJmapMem + let rc=$? + if [ $rc -eq 1 ]; then + launchJmaps + fi + else t1=`date "+%Y%m%d %H:%M:%S"` echo "*** NO processes found for user $user, capturing limited data to $dataPath" @@ -553,6 +638,9 @@ else echo "" >> $processFile fi +# grab Xorg logs +grabXorgLog + # grab top for servers grabRemoteTop @@ -630,7 +718,8 @@ if [ "${GRAB_CAVE_AND_ALERTVIZ_LOGS}" == "y" ]; then echo "${t1}: Capturing cave logs" >> $processFile mkdir -p ${dataPath}/consoleLogs if [ ! -z ${cavePid} ]; then - find $dir -type f -name "*${cavePid}*" -exec cp {} ${dataPath}/consoleLogs \; + # logs have cave executable pid or worker pid in the name (-o means OR) + find $dir -type f -name "*$(determineCaveProcess ${cavePid})*" -o -name "*${cavePid}*" -exec cp {} ${dataPath}/consoleLogs \; else find $dir -type f -mmin -120 -exec cp {} ${dataPath}/consoleLogs \; fi @@ -671,6 +760,7 @@ fi zenity --info --no-wrap --title="Capture Done" --text="$message" > /dev/null 2>&1 & echo echo $message +rm ~/.pgpass cd $curDir diff --git a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/ProductRetriever.py b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/ProductRetriever.py index c348c48f16..68d79bc602 100644 --- a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/ProductRetriever.py +++ b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/ProductRetriever.py @@ -11,6 +11,7 @@ class ProductRetriever: def __init__(self,dataURI,label): self.dataURI = dataURI self.label = label + self.fullpath = False self.outdir = os.getcwd() self.host = os.getenv("DEFAULT_HOST", "localhost") self.port = os.getenv("DEFAULT_PORT", "9581") @@ -18,6 +19,9 @@ class ProductRetriever: def setOutputDir(self, outdir): self.outdir = outdir + + def setFullpath(self, fullpath): + self.fullpath = fullpath def _writeout(self,filename,bytes): outname = self.outdir + str(os.sep) + filename @@ -39,12 +43,18 @@ class ProductRetriever: filename = self.label + ".xml" else: filename = item.getName() - - print "Extracting... " + filename + + if ( self.fullpath ): + path = self.dataURI + fname = path.replace("/", ".") + "$" + filename + filename = fname.lstrip().strip(".").replace("..", ".") + + if isinstance(item, StringDataRecord): self._writeout(filename,item.getStringData()[0]) elif isinstance(item, ByteDataRecord): self._writeout(filename,item.getByteData()) + print "Extracted... " + filename return resp - + \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/retrieveActivity.py b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/retrieveActivity.py index 347dcff53b..8a70eef03b 100644 --- a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/retrieveActivity.py +++ b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/retrieveActivity.py @@ -2,9 +2,9 @@ ## # This script is used to extract PGEN products from EDEX. -# It can be run in batch mode by specifying the "-l" and "-t" options on the -# command line. Optionally, users can run it in interactive mode by invoking it -# with no argument. +# It can be run in batch mode by specifying the "-l", "-t", "-d", "-st", "-n", and +# "-p" options on the command line. Optionally, users can run it in interactive +# mode by invoking it with no argument. # # Users can override the default EDEX server and port name by specifying them # in the $DEFAULT_HOST and $DEFAULT_PORT shell environment variables. @@ -19,6 +19,7 @@ from Tkinter import * from ufpy import UsageArgumentParser import lib.CommHandler as CH import ProductRetriever +import ActivityUtil logger = None def __initLogger(): @@ -33,68 +34,53 @@ def __initLogger(): ch.setFormatter(formatter) logger.addHandler(ch) +# +# Parses command line input and store in "options". +# def __parseCommandLine(): parser = UsageArgumentParser.UsageArgumentParser(prog='retrieveActivity',description="Retrieve PGEN Activities from EDEX. When invoked without any arguments, retrieveActivity is run in interactive mode.") bgroup = parser.add_argument_group(title='batch',description='For running in scripts and/or batch mode.') - bgroup.add_argument("-l", action="store", dest="label", + bgroup.add_argument("-l*", action="store", dest="label", help="Activity Label being requested", required=False, metavar="label") - bgroup.add_argument("-t", action="store", dest="type", + bgroup.add_argument("-t*", action="store", dest="type", help="Activity Type being requested", required=False, metavar="type") + bgroup.add_argument("-st", action="store", dest="subtype", + help="Activity Subtype being requested", + required=False, metavar="subtype") + bgroup.add_argument("-d*", action="store", dest="reftime", + help="Activity Ref Time being requested (YYYY-MM-DD_HH:MM)", + required=False, metavar="reftime") + bgroup.add_argument("-n*", action="store", dest="name", + help="Activity Name being requested", + required=False, metavar="name") + bgroup.add_argument("-f", action="store", dest="fullpath", + help="Write out XML with full path? (Yes/No)", + required=False, metavar="fullpath") + + bgroup = parser.add_argument_group(title='Note',description='Pattern match with "*" is allowed for -l, -t, -d, and -n. E.g, -l "*CCFP*3*" will match any activities whose label contains CCFP and 3.') + options = parser.parse_args() options.interactive = False - if options.label == None and options.type == None : - options.interactive = True - elif options.label == None or options.type == None : - print "Must enter values for both arguments -l and -t" - exit(0) - + if (options.label == None and options.type == None and + options.reftime == None and options.subtype == None and + options.fullpath == None and options.name == None): + options.interactive = True + else: + if (options.label == None and options.type == None and + options.reftime == None and options.name == None): + print "Must enter values for at least one of -l, -t, -d, or -n" + exit(0) + logger.debug("Command-line arguments: " + str(options)) return options # -# This method sends a CatalogQuery request to the EDEX uEngine -# for the dataURI associated with the given activity type and label +# Main program. # -def __getDataURI( type, label): - script='''import CatalogQuery -query = CatalogQuery.CatalogQuery("pgen") -query.addConstraint("activityType","{0}","=") -query.addConstraint("activityLabel","{1}","=") -query.addReturnedField("dataURI") -query.addReturnedField("dataTime.refTime") -return query.execute()'''.format(type,label) - - service = '/services/pyproductjaxb' - host = os.getenv("DEFAULT_HOST", "localhost") - port = os.getenv("DEFAULT_PORT", "9581") - connection=str(host+":"+port) - ch = CH.CommHandler(connection,service) - ch.process(script) - - if not ch.isGoodStatus(): - print ch.formatResponse() - exit(1) - - logger.debug( ch.getContents() ) - return __parseResponse( ch.getContents() ) - -# -# Parses the XML response from the uEngine and extracts -# the value for the dataURI field. If multiple are returned, the last -# one is used. -# -def __parseResponse(xml): - tree = ET.fromstring(xml) - for attr in tree.iter('attributes'): - if attr.attrib['field'] == 'dataURI': - duri = attr.attrib['value'] - - return duri - def main(): __initLogger() logger.info("Starting retrieveActivity.") @@ -109,21 +95,51 @@ def main(): app.mainloop() root.destroy() else: - # Retrieve products for given activity type and label - logger.info("looking for Product: " + options.type + " - " + options.label) - dataURI = __getDataURI(options.type, options.label) - logger.debug("Found dataURI = " + dataURI) + # Retrieve all activities abnd build a map of record using + # type(subtype) as key. + mu = ActivityUtil.ActivityUtil() + activityMap = mu.getActivityMap() + + reqtype = None + if ( options.type != None ): + reqtype = options.type; + if ( options.subtype != None ) : + reqtype = options.type + "(" + options.subtype + ")" + + records = [] + for key in activityMap.iterkeys(): + recs = activityMap[key] + for rec in recs: + if ( mu.stringMatcher(options.label, rec["activityLabel"]) and + mu.stringMatcher(reqtype, key ) and + mu.stringMatcher(options.name, rec["activityName"] ) ): + #Remove sec.msec from record's refTime + dbRefTime = rec["dataTime.refTime"] + dotIndex = dbRefTime.rfind(":") + if ( dotIndex > 0 ): + shortTime = dbRefTime[:dotIndex] + else: + shortTime = dbRefTime + + #Replace the "_" with a whitespace in reftime. + optionTime = options.reftime.replace("_", " ") + + if ( mu.stringMatcher( optionTime, shortTime ) ): + records.append( rec ) + + for rec in records: + pr = ProductRetriever.ProductRetriever(rec["dataURI"], rec["activityLabel"]) + if options.fullpath != None and options.fullpath.upper().startswith("Y"): + pr.setFullpath(True) + pr.getProducts() - pr = ProductRetriever.ProductRetriever(dataURI, options.label) - outdir = os.getcwd() + str(os.sep) + options.type + str(os.sep) + options.label + str(os.sep) - #pr.setOutputDir(outdir) - pr.getProducts() - - #print "Products were written to directory: " + outdir logger.info("retrieveActivity is complete.") +# +# Interactive GUI for PGEN activity retrieval +# class RetrieveGui(Frame): - """ Interactive GUI for PGEN product retrieval """ + """ Interactive GUI for PGEN activity retrieval """ def __init__(self, master=None): """ Initialize Frame and create widgets """ @@ -136,15 +152,16 @@ class RetrieveGui(Frame): # if an activity type and label have been selected, get products and write them out. if len(self.typeList.curselection()) != 0 and len(self.nameList.curselection()) != 0: type = self.typeList.get(self.typeList.curselection()) - label = self.nameList.get(self.nameList.curselection()) - labelindex = int(self.nameList.curselection()[0]) - dataURI = self.activityMap[type][labelindex]['dataURI'] - - pr = ProductRetriever.ProductRetriever(dataURI, label) - #outdir = os.getcwd() + str(os.sep) + options.type + str(os.sep) + options.label + str(os.sep) - #pr.setOutputDir(outdir) - pr.getProducts() + + items = self.nameList.curselection() + for i in items : + idx = int(i) + label = self.nameList.get(idx) + dataURI = self.activityMap[type][idx]['dataURI'] + pr = ProductRetriever.ProductRetriever(dataURI, label) + pr.getProducts() + def createWidgets(self): activityType = Label(self) activityType["text"] = "Activity Type" @@ -172,7 +189,7 @@ class RetrieveGui(Frame): frame2 = Frame(self) vscrollbar2 = Scrollbar(frame2, orient=VERTICAL) hscrollbar2 = Scrollbar(frame2, orient=HORIZONTAL) - self.nameList = Listbox(frame2,yscrollcommand=vscrollbar2.set,xscrollcommand=hscrollbar2.set,exportselection=0, width=50,height=15,bg="white") + self.nameList = Listbox(frame2,yscrollcommand=vscrollbar2.set,xscrollcommand=hscrollbar2.set,exportselection=0, width=50,height=15,bg="white", selectmode=EXTENDED) vscrollbar2.config(command=self.nameList.yview) hscrollbar2.config(command=self.nameList.xview) vscrollbar2.pack(side=RIGHT, fill=Y) @@ -197,7 +214,7 @@ class RetrieveGui(Frame): # Get all Activity Types and Labels from EDEX for use in selection ListBoxes. # Insert list of Types in Type Listbox # - self.activityMap = self.__getActivityMap() + self.activityMap = ActivityUtil.ActivityUtil().getActivityMap() self.typeList.delete(0,END) for key in self.activityMap.iterkeys(): self.typeList.insert(END,key) @@ -225,62 +242,8 @@ class RetrieveGui(Frame): def typeList_has_changed(self, index): self.nameList.delete(0,END) for label in self.activityMap[ self.typeList.get(index) ]: - #print label self.nameList.insert(END, label['activityLabel']) - # - # Sends a CatalogQuery to the EDEX uEngine to get a list of - # PGEN Activity TYpes, Labels, and associated dataURIs - # in the pgen database tables. - # - def __getActivityMap(self): - script='''import CatalogQuery -query = CatalogQuery.CatalogQuery("pgen") -query.addReturnedField("activityType") -query.addReturnedField("activityLabel") -query.addReturnedField("dataURI") -return query.execute()''' - - service = '/services/pyproductjaxb' - host = os.getenv("DEFAULT_HOST", "localhost") - port = os.getenv("DEFAULT_PORT", "9581") - connection=str(host+":"+port) - ch = CH.CommHandler(connection,service) - ch.process(script) - - if not ch.isGoodStatus(): - print ch.formatResponse() - exit(1) - - logger.debug( ch.getContents() ) - return self.__generateMap( ch.getContents() ) - - # - # Generates a map of activity types, label, and dataURIs from - # the XML returned from EDEX uEngine for use in the activity type and label - # Listboxes. - # - # The map is a dictionary (dict) of Activity Types whose values are a list of dicts - # which have keys "activityType", "activityLabel", and "dataURI". - # - def __generateMap(self, xml): - aMap = dict() - tree = ET.fromstring(xml) - for item in tree.iter('items'): - #print item.attrib['key'] - record = dict() - for attr in item.iter('attributes'): - record.update( {attr.attrib['field'] : attr.attrib['value'] } ) - #print record - - atype = record['activityType'] - if aMap.has_key(atype): - aMap[atype].append(record) - else: - aMap.update( {atype: [record]} ) - - return aMap - if __name__ == '__main__': - main() + main() \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/storeActivity.py b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/storeActivity.py index 9bd036d87c..3f37efcd89 100644 --- a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/storeActivity.py +++ b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/pgen/storeActivity.py @@ -56,14 +56,69 @@ def __parseCommandLine(): logger.debug("Command-line arguments: " + str(options)) return options -def __getActivityInfo(options): +# +# create an ActivityInfo object from command line input and +# activityXML. If no input was found from command line, the +# info in activityXML will be used. +# +def __getActivityInfo(xml, options): + ainfo = ActivityInfo() - ainfo.setActivityLabel(options.filename) - ainfo.setActivityName(options.activityName) - ainfo.setActivityType(options.activityType) - ainfo.setActivitySubtype(options.activitySubtype) - ainfo.setForecaster(options.forecaster) - ainfo.setSite(options.site) + + tree = ET.fromstring(xml) + product = tree.find('Product') + + # strip the path from file and use it as activityLabel + + fullname = options.filename + lastslash = fullname.rfind("/") + filename = fullname + if ( lastslash >=0 ): + filename = fullname[lastslash+1:] + + ainfo.setActivityLabel(filename) + + if ( options.forecaster != None ): + ainfo.setForecaster(options.forecaster) + else: + ainfo.setForecaster(product.attrib['forecaster']) + + if ( options.site != None ): + ainfo.setSite(options.site) + else: + ainfo.setSite(product.attrib['center']) + + # set activity type and subtype + if ( options.activityType != None ): + ainfo.setActivityType(options.activityType) + + if ( options.activitySubtype != None ): + ainfo.setActivitySubtype(options.activitySubtype) + else: + ainfo.setActivitySubtype("") + else: + if (product.attrib['type'].find("(") < 0 ): + ainfo.setActivityType( product.attrib['type'] ) + ainfo.setActivitySubtype( "" ) + else: + fulltyp = product.attrib['type'] + start = fulltyp.find("(") + end = fulltyp.find(")") + ainfo.setActivityType( fulltyp[0:start] ) + ainfo.setActivitySubtype( fulltyp[start+1:end] ) + + # set activityName + if ( options.activityName != None ): + ainfo.setActivityName(options.activityName) + else: + if ( options.activityType != None ): + aname = options.activityType; + if ( options.activitySubtype != None ): + aname = aname + "(" + options.activitySubtype + ")" + ainfo.setActivityName( aname ) + else: + ainfo.setActivityName( product.attrib['name'] ) + return ainfo # Update Product tag attributes with options given on command line @@ -72,9 +127,13 @@ def __updateXML(xml, options): product = tree.find('Product') if options.activityName != None: product.attrib['name'] = options.activityName - + if options.activityType != None: - product.attrib['type'] = options.activityType + if options.activitySubtype != None: + ntype = options.activityType + '(' + options.activitySubtype + ')' + product.attrib['type'] = ntype + else: + product.attrib['type'] = options.activityType if options.filename != None: product.attrib['outputFile'] = options.filename @@ -84,11 +143,12 @@ def __updateXML(xml, options): if options.site != None: product.attrib['center'] = options.site + return ET.tostring(tree) def main(): __initLogger() - logger.info("Starting retrieveActivity.") + logger.info("Starting storeActivity.") options = __parseCommandLine() # read in XML from input file @@ -98,7 +158,7 @@ def main(): # generate an activityInfo object and update XML with options # from command line - actinfo = __getActivityInfo(options) + actinfo = __getActivityInfo(activityXML, options) activityXML = __updateXML(activityXML, options) # Store Activity to EDEX @@ -110,4 +170,4 @@ def main(): if __name__ == '__main__': - main() + main() \ No newline at end of file diff --git a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/subscription/SubscriptionManager.py b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/subscription/SubscriptionManager.py index 4736382d30..78896be429 100644 --- a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/subscription/SubscriptionManager.py +++ b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/subscription/SubscriptionManager.py @@ -23,11 +23,15 @@ import types import lib.CommandLine as CL import lib.InputOutput as IO -import lib.CommHandler as CH import lib.Message as MSG import lib.Util as util import conf.SMConfig as config +import collections + +from ufpy import ThriftClient +from dynamicserialize.dstypes.com.raytheon.uf.common.message import Message, Header, Property +from dynamicserialize.dstypes.com.raytheon.uf.common.dataplugin.text.request import SubscriptionRequest ############################################################################## # Class providing a command line interface to the EDEX Subscription Service # (SubscribeSrv) end-point. The package design, is to allow this class to run @@ -267,16 +271,13 @@ class SubscriptionManager: # 1: indicates the execution was unsuccessful def __processRequest(self): msg = self.__createMessage() - service = config.endpoint.get('subscribe') - connection=str(os.getenv("DEFAULT_HOST", "localhost") + ":" + os.getenv("DEFAULT_PORT", "9581")) - ch = CH.CommHandler(connection, service) - ch.process(msg) - - if not ch.isGoodStatus(): - util.reportHTTPResponse(ch.formatResponse()) - - retVal = self.__processResponse(ch.getContents()) - + host = os.getenv("DEFAULT_HOST", "localhost") + port = os.getenv("DEFAULT_PORT", "9581") + tClient = ThriftClient.ThriftClient(host, port) + req = SubscriptionRequest() + req.setMessage(msg) + resp = tClient.sendRequest(req) + retVal = self.__processResponse(resp) return retVal # Processes the request and reports the results. Data is @@ -288,14 +289,12 @@ class SubscriptionManager: # return: # 0 if the message contained valid results, 0 otherwise def __processResponse(self,msg): - psr = MSG.Message(False) - psr.parse(msg) status = 0 io = IO.InputOutput() # process the return message - for prop in psr.getProperties(): - name = prop['name'] - value = prop['value'] + for prop in msg.getHeader().getProperties(): + name = prop.getName() + value = prop.getValue() if name == 'STDERR': parts = value.split(':',2) if parts[0] == 'ERROR': @@ -312,24 +311,23 @@ class SubscriptionManager: # return: # the request message def __createMessage(self): - msg = MSG.Message(True) - msg.initializeMessage(False) + multimap = collections.defaultdict(list) for key in self.commands: if key == 'mode': pass elif key == 'substitution': dict = util.convListToDict(self.commands.get(key)) for sub in dict: - msg.addProperty(name='substitution',value=str(sub)+":"+str(dict.get(sub))) + multimap['substitution'].append(str(sub)+":"+str(dict.get(sub))) elif key == 'update': dict = util.convListToDict(self.commands.get(key)) for sub in dict: - msg.addProperty(name='update',value=str(sub)+":"+str(dict.get(sub))) + multimap['update'].append(str(sub)+":"+str(dict.get(sub))) else: - msg.addProperty(name=key,value=self.commands.get(key)) + multimap[key].append(self.commands.get(key)) if self.__hasScript(): - msg.addProperty(name='script',value=self.script) - return msg.getXML() + multimap['script'].append(self.script) + return Message(header=Header(multimap=multimap)) # main class method. Performs the subscription update request. # @@ -361,4 +359,4 @@ class SubscriptionManager: if __name__ == "__main__": ue = SubscriptionManager() status = ue.execute() - exit(status) \ No newline at end of file + exit(status) diff --git a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/textdb/TextDB.py b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/textdb/TextDB.py index a4bbbe55b7..bed1706dc8 100644 --- a/edexOsgi/com.raytheon.uf.tools.cli/impl/src/textdb/TextDB.py +++ b/edexOsgi/com.raytheon.uf.tools.cli/impl/src/textdb/TextDB.py @@ -1,19 +1,19 @@ ## # This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA # This software product contains export-restricted data whose # export/transfer/disclosure is restricted by U.S. law. Dissemination # to non-U.S. persons whether in the United States or abroad requires # an export license or other authorization. # -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# # See the AWIPS II Master Rights File ("Master Rights File.pdf") for # further licensing information. ## @@ -23,12 +23,37 @@ import types import lib.CommandLine as CL import lib.InputOutput as IO -import lib.CommHandler as CH -import lib.Message as MSG import lib.Util as util import subscription.SubscriptionManager as SM import conf.TDBConfig as config +import collections + +from ufpy import ThriftClient +from dynamicserialize.dstypes.com.raytheon.uf.common.message import Message, Header, Property +from dynamicserialize.dstypes.com.raytheon.uf.common.dataplugin.text.dbsrv import TextDBRequest + +############################################################################## +# General exception to be raised when errors occur when processing messages +############################################################################## +class MessageError(Exception): + def __init__(self,value,cause=None): + self.value = value + self.cause = cause + def __str__(self): + msg = 'MessageError: ' + repr(self.value) + if self.cause is not None: + msg += "\n caused by " + repr(self.cause) + return msg + def __repr__(self): + return self.__str__() + +# appends value to list assoticated with key in multimap if the key isn't +# present in the map. map must be defaultdict so that list is auto created +def appendIfNotPresent(multimap, key, value): + if key not in multimap: + multimap[key].append(value) + ############################################################################## # Class implementing the text database (textdb) Command Line Interface (CLI) @@ -58,6 +83,10 @@ import conf.TDBConfig as config # 10/29/10 7354 cjeanbap Updated if-statement to handle None # 12/07/10 7656 cjeanbap Retrieve environment variable. # 04/07/11 8686 cjeanbap Fixed $ACTION has -i associated +# 05/12/14 16954 kshrestha Added Multiple flag functionality for textdb +# 08/15/14 2926 bclement Fixed hasSubOperations() +# 08/22/14 2926 bclement Switched to ThriftClient +# 09/05/14 2926 bclement Moved TextDBRequest to common ############################################################################## class TextDB: @@ -207,25 +236,16 @@ class TextDB: raise IO.InputOutputError("Unable to read product from standard input",e) # Generates the request message to be sent to the EDEX server. - # The message is similar to - # - #
      - # - # - # - # - #
      - #
      # # return: - # the generated message in XML format + # the generated message in a serializable object # raises: # MessageError if any error occurs def __generateRequestMessage(self): try: - msg = MSG.Message(True) - msg.initializeMessage(False) + multimap = collections.defaultdict(list) commands = self.commands['command'] + isJoin = False for command in commands: data = self.commands[command] message = config.message[command] @@ -233,27 +253,33 @@ class TextDB: for tuple in message[config.MSG_START:]: key = tuple[config.MSG_KEY] value = tuple[config.MSG_VALUE] + if ((key == "SUBOP") and (value == "JOIN")): + isJoin = True if isinstance(value,types.IntType): if args == config.MSG_VAR_ARGS: for item in data: - msg.addProperty(name=key,value=item,replace=False) - else: - if (len(commands) == 1) or (len(commands) == 3): + multimap[key].append(item) + else: + l = len(commands) + if (l == 1) or (l == 3): if ((key == "SITE") and (self.commands.get("site_node") is not None) and (len(self.commands.get("site_node")) == 0)): - val = str(os.getenv("sitename")) - msg.addProperty(name=key,value=val,replace=True) + val = str(os.getenv("sitename")) + appendIfNotPresent(multimap, key, val) + elif(isJoin == True): + appendIfNotPresent(multimap, key, data) + isJoin = False else: - msg.addProperty(name=key,value=data[value],replace=True) + appendIfNotPresent(multimap, key, data[value]) else: - msg.addProperty(name=key,value=data,replace=True) + appendIfNotPresent(multimap, key, data) else: - msg.addProperty(name=key,value=value,replace=True) + appendIfNotPresent(multimap, key, value) operationalMode = os.getenv("OPERATIONAL_MODE", 'TRUE') - msg.addProperty(name='operational',value=operationalMode,replace=False) - return msg.getXML() + multimap['operational'].append(operationalMode) + return Message(header=Header(multimap=multimap)) except Exception,e: - raise MSG.MessageError('unable to create message for textdb request',e) - + raise MessageError('unable to create message for textdb request',e) + # reads the command line and sets up the command data structure # # raises: @@ -316,14 +342,12 @@ class TextDB: # return: # 0 if the message contained valid results, 0 otherwise def __processRequestResponse(self,msg): - psr = MSG.Message(True) - psr.parse(msg) status = 0 io = IO.InputOutput() # process the return message - for prop in psr.getProperties(): - name = prop['name'] - value = prop['value'] + for prop in msg.getHeader().getProperties(): + name = prop.getName() + value = prop.getValue() if name == 'STDERR': parts = value.split(':',2) if parts[0] == 'ERROR': @@ -334,10 +358,8 @@ class TextDB: io.setStream(sys.stdout) io.writeln(data=value) return status - + # Submits the request to the server and waits for a response. - # Does a quick check to eliminate an invalid response from the - # server. # # args: # msg: the message to submit to the server @@ -345,22 +367,16 @@ class TextDB: # the message received from the from the server, # or Null if a connection error occurred. # raise: - # CommError if any error occurred. + # ThriftRequestException if any error occurred. def __submitRequestMessage(self,msg): - try: - runner = self.commands.get('runner') - service = config.endpoint.get(runner) - - # send the request to the server - connection=str(os.getenv("DEFAULT_HOST", "localhost") + ":" + os.getenv("DEFAULT_PORT", "9581")) - ch = CH.CommHandler(connection,service) - ch.process(msg) - if not ch.isGoodStatus(): - util.reportHTTPResponse(ch.formatResponse()) - return None - return ch.getContents() - except Exception,e: - raise CH.CommError("Unable to submit request to server",e) + # send the request to the server + host = os.getenv("DEFAULT_HOST", "localhost") + port = os.getenv("DEFAULT_PORT", "9581") + tClient = ThriftClient.ThriftClient(host, port) + req = TextDBRequest() + req.setMessage(msg) + return tClient.sendRequest(req) + # Handles the LDAD (script) requests by # 1. morphing the command line to match the micro-engine command line # 2. passing the modified command line to the micro-engine client @@ -368,7 +384,7 @@ class TextDB: # return: # returns the result of executing the micro-engine client # raise: - # propagates any exception received + # propagates any exception received def __handleScriptRequest(self): cmd = self.commands.get('command')[0] fmt = config.convldad.get(cmd) @@ -387,7 +403,7 @@ class TextDB: if (config.ldaddel == cmd): temp = cline[len(cline)-1] cline[len(cline)-1] = " ".join(temp.split('|')) - + sm = SM.SubscriptionManager(name='textdb',args=cline) return sm.execute() @@ -404,7 +420,7 @@ class TextDB: self.__deleteWatchWarn() self.__deleteSubscriptions() except Exception,e: - raise MSG.MessageError('unable to create message for textdb request',e) + raise MessageError('unable to create message for textdb request',e) try: for i in range(len(args)): f = open(args[i],'r') @@ -412,78 +428,71 @@ class TextDB: # remove all white-spaces at beginning of the line. line = line.lstrip() if (line.find('#') == -1): - try: + try: values = line.split(' ', 1) try: - msg = MSG.Message(True) - msg.initializeMessage(False) - msg.addProperty(name='VIEW',value='warn',replace=False) - msg.addProperty(name='OP',value='PUT',replace=False) - msg.addProperty(name='PRODID',value=values[0],replace=False) - msg.addProperty(name='SCRIPT',value=values[1],replace=False) + props = [] + props.append(Property(name='VIEW',value='warn')) + props.append(Property(name='OP',value='PUT')) + props.append(Property(name='PRODID',value=values[0])) + props.append(Property(name='SCRIPT',value=values[1])) + msg = Message(header=Header(props)) except Exception,e: - raise MSG.MessageError('unable to create message for textdb request',e) - + raise MessageError('unable to create message for textdb request',e) + if ((len(values[0]) >= 8) & (len(values[1].strip('\r\n')) > 0)): # print "Insert Subscription [" + values[0] + "] Status:" + str(sm.execute()) cline = ['-o','add', '-t','ldad', '-r','ldad', '-p', values[0], '-f', values[1], '-c','%TRIGGER%'] sm = SM.SubscriptionManager(name='textdb',args=cline) sm.execute() - msg = self.__submitRequestMessage(msg.getXML()) + msg = self.__submitRequestMessage(msg) status = self.__processRequestResponse(msg) except ValueError: util.printMessage(sys.stderr, header='Error processing line', - body=line) + body=line) finally: f.close() else: - raise MSG.MessageError('Unable to locate file: ' + args[0]) + raise MessageError('Unable to locate file: ' + args[0]) else: self.__deleteSubscriptions() return - + # # # def __deleteWatchWarn(self): - msg = MSG.Message(True) - msg.initializeMessage(False) - msg.addProperty(name='VIEW',value='warn',replace=False) - msg.addProperty(name='OP',value='DELETE',replace=False) - msg = self.__submitRequestMessage(msg.getXML()) + props = [] + props.append(Property(name='VIEW',value='warn')) + props.append(Property(name='OP',value='DELETE')) + msg = self.__submitRequestMessage(Message(header=Header(props))) status = self.__processRequestResponse(msg) - + # # # def __deleteSubscriptions(self): cline = ['-o','delete'] sm = SM.SubscriptionManager(name='textdb',args=cline) - sm.execute() + sm.execute() # Determine if command line has sub operations + # Returns true if any flags in self.commands[CL.DEFAULT_KEY] + # are in config.mayJoin # - # raise: - # propagates any exception received def __hasSubOperations(self): - for key in self.commands.keys(): + for key in self.commands.keys(): if key is CL.DEFAULT_KEY: - subJoins = self.commands.get(key) - length = len(self.commands.get(key)) + flags = self.commands.get(key) #specifically looking for config.flags of subJoins - if length == 6: - for pos in range(0, length, 2): - value = config.flags.get(subJoins[pos])[0] - try: - config.mayJoin.index(value) - except: - raise CL.ArgError("Invalid command count - JOIN command includes invalid option(s)") + for flag in flags: + configFlag = config.flags.get(flag) + # some flags aren't in configs.flags + if configFlag and configFlag[0] in config.mayJoin: return True - else: - return False - else: - return False + return False + # Correct the sub operational command line . # # diff --git a/edexOsgi/com.raytheon.uf.tools.cli/impl/textdb b/edexOsgi/com.raytheon.uf.tools.cli/impl/textdb index 3854cc0730..d0559e0324 100644 --- a/edexOsgi/com.raytheon.uf.tools.cli/impl/textdb +++ b/edexOsgi/com.raytheon.uf.tools.cli/impl/textdb @@ -42,6 +42,7 @@ # include path to python lib. # 11/02/12 1236 dgilling Add --forcepractice flag to # bypass test mode check. +# 05/09/12 16215 m.gamazaychikov Added quotes around $flag. ############################################################################## # this allows you to run this script from outside of ./bin @@ -59,11 +60,11 @@ export PYTHONPATH=${RUN_FROM_DIR}/src:$PYTHONPATH forcePractice="FALSE" declare -a parsedArgs -for flag in $@; do - if [ $flag == "--forcepractice" ]; then +for flag in "$@"; do + if [ "$flag" == "--forcepractice" ]; then forcePractice="TRUE" else - parsedArgs=("${parsedArgs[@]}" $flag) + parsedArgs=("${parsedArgs[@]}" "$flag") fi done diff --git a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/cleanup_svcbk b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/cleanup_svcbk index 3a02328ed8..f52f3b09d8 100644 --- a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/cleanup_svcbk +++ b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/cleanup_svcbk @@ -26,6 +26,51 @@ if [ -d $SVCBU_HOME ];then echo ${SVCBU_HOME}/* | xargs rm -rf fi +# DR 16362 +if [ -d ${LOCALIZATION_PATH}/common_static/site/${CAPS_FAILED_SITE}/gfe ]; then + log_msg "Removing common site configuration for site ${CAPS_FAILED_SITE}" + rm -fr ${LOCALIZATION_PATH}/common_static/site/${CAPS_FAILED_SITE}/gfe +fi + +if [ -d ${LOCALIZATION_PATH}/common_static/site/${CAPS_FAILED_SITE}/vtec ]; then + log_msg "Removing common site vtec configuration for site ${CAPS_FAILED_SITE}" + rm -fr ${LOCALIZATION_PATH}/common_static/site/${CAPS_FAILED_SITE}/vtec +fi + +if [ -d ${LOCALIZATION_PATH}/edex_static/site/${CAPS_FAILED_SITE}/config/gfe ]; then + log_msg "Removing edex site configuration for site ${CAPS_FAILED_SITE}" + rm -fr ${LOCALIZATION_PATH}/edex_static/site/${CAPS_FAILED_SITE}/config/gfe +fi + +if [ -d ${LOCALIZATION_PATH}/edex_static/site/${CAPS_FAILED_SITE}/smartinit ]; then + log_msg "Removing edex smartinit for site ${CAPS_FAILED_SITE}" + rm -fr ${LOCALIZATION_PATH}/edex_static/site/${CAPS_FAILED_SITE}/smartinit +fi + +if [ -d ${LOCALIZATION_PATH}/cave_static/site/${CAPS_FAILED_SITE}/gfe ]; then + log_msg "Removing cave site configuration for site ${CAPS_FAILED_SITE}" + rm -fr ${LOCALIZATION_PATH}/cave_static/site/${CAPS_FAILED_SITE}/gfe +fi + +if [ -d ${LOCALIZATION_PATH}/cave_static/site/${CAPS_FAILED_SITE}/bundles/maps ]; then + log_msg "Removing cave site maps configuration for site ${CAPS_FAILED_SITE}" + rm -fr ${LOCALIZATION_PATH}/cave_static/site/${CAPS_FAILED_SITE}/bundles/maps +fi + +if [ -d ${LOCALIZATION_PATH}/cave_static/site/${CAPS_FAILED_SITE}/colormaps ]; then + log_msg "Removing cave site colormaps configuration for site ${CAPS_FAILED_SITE}" + rm -fr ${LOCALIZATION_PATH}/cave_static/site/${CAPS_FAILED_SITE}/colormaps +fi + +# end DR 16362 + +# DR 16464 +if [ -d /awips2/GFESuite/ServiceBackup/data/${CAPS_FAILED_SITE} ]; then + log_msg "Removing rsync_parms.site for site ${CAPS_FAILED_SITE}" + rm -f /awips2/GFESuite/ServiceBackup/data/rsync_parms.${CAPS_FAILED_SITE} +fi +# end DR 16464 + #-- Remove the rsync grids if [ "$CAPS_FAILED_SITE" = "aer" ] then diff --git a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/export_configuration b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/export_configuration index 1aa50a5ca0..58c1c8be06 100644 --- a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/export_configuration +++ b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/export_configuration @@ -47,6 +47,7 @@ log_msg Preparing configuration files for export... edexDest=GFEconfig/edex_static commonDest=GFEconfig/common_static caveDest=GFEconfig/cave_static +rsyncParms=GFEConfig # DR 16464 log_msg 15 log_msg Making temporary edex configuration directories... @@ -61,6 +62,11 @@ log_msg Making temporary cave configuration directories mkdir -p $caveDest/site log_msg 30 +# DR 16464 +log_msg Making temporary rsync_parms directory +mkdir -p $rsyncParms/site +log_msg 35 + # Copies the localization information to the staging area log_msg Copying common site configuration for site ${CAPS_SITE} to temporary directory... cp -r ${LOCALIZATION_PATH}/common_static/site/${CAPS_SITE}/gfe $commonDest/site @@ -88,6 +94,13 @@ log_msg Copying cave site colormaps configuration for site ${CAPS_SITE} to tempo cp -r ${LOCALIZATION_PATH}/cave_static/site/${CAPS_SITE}/colormaps $caveDest/site log_msg 80 +# DR 16464 +if [ -f /awips2/GFESuite/ServiceBackup/data/rsync_parms.${CAPS_SITE} ]; then + log_msg Copying the rsync_parms file for site ${CAPS_SITE} to temporary directory... + cp -a /awips2/GFESuite/ServiceBackup/data/rsync_parms.${CAPS_SITE} $rsyncParms/site + log_msg 83 +fi + # Tar up everything. log_msg 85 log_msg Tarring and zipping configuration to file GFEconfig.${SITE}.tar.gz diff --git a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_config b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_config index 6019d1de32..fb844a3937 100644 --- a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_config +++ b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_config @@ -135,6 +135,7 @@ edex_site_dest=${LOCALIZATION_PATH}/edex_static/site/${SITE_CAPS}/config edex_site_si_dest=${LOCALIZATION_PATH}/edex_static/site/${SITE_CAPS} common_site_dest=${LOCALIZATION_PATH}/common_static/site/${SITE_CAPS} cave_site_dest=${LOCALIZATION_PATH}/cave_static/site/${SITE_CAPS} +rsync_parms_dest=/awips2/GFESuite/ServiceBackup/data # DR 16464 if [ -d ${edex_site_dest} ]; then log_msg "edex_static site directory exists for ${SITE_CAPS}" @@ -156,6 +157,14 @@ else log_msg "Creating cave_static site directory for ${SITE_CAPS}" mkdir -p ${cave_site_dest} fi +# DR 16464 +if [ -d ${rsync_parms_dest} ]; then + log_msg "rsync_parms_dest directory exists for ${SITE_CAPS}" +else + log_msg "Creating rsync_parms_dest directory for ${SITE_CAPS}" + mkdir -p ${rsync_parms_dest} +fi +log msg 59 log_msg "${SITE_CAPS}'s localization directories have been verified" log_msg 60 @@ -167,6 +176,9 @@ cp -r GFEconfig/edex_static/site/smartinit ${edex_site_si_dest} log_msg 90 cp -r GFEconfig/cave_static/site/* ${cave_site_dest} log_msg 93 +# DR 16464 +cp -a GFEConfig/site/rsync_parms.${SITE_CAPS} ${rsync_parms_dest}.${SITE_CAPS} +log_msg 94 log_msg "Files successfully copied!" log_msg "Changing ownership of received configuration" @@ -175,6 +187,7 @@ then chown -R awips:fxalpha ${LOCALIZATION_PATH}/edex_static/site/${SITE_CAPS} chown -R awips:fxalpha ${LOCALIZATION_PATH}/common_static/site/${SITE_CAPS} chown -R awips:fxalpha ${LOCALIZATION_PATH}/cave_static/site/${SITE_CAPS} + chown -R awips:fxalpha /awips2/GFESuite/ServiceBackup/data # DR 16464 elif [ $USER = "awips" ] then log_msg "Files already owned by awips" diff --git a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_grids b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_grids index 88eab0511d..f90e00ca69 100644 --- a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_grids +++ b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/proc_receive_grids @@ -1,4 +1,34 @@ #!/bin/bash +## +# This software was developed and / or modified by Raytheon Company, +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA +# This software product contains export-restricted data whose +# export/transfer/disclosure is restricted by U.S. law. Dissemination +# to non-U.S. persons whether in the United States or abroad requires +# an export license or other authorization. +# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# +# See the AWIPS II Master Rights File ("Master Rights File.pdf") for +# further licensing information. +## +############################################################################## +# Process Received Digital Grids +# This is run at the backup site to merge the failed site's grids into the +# Fcst database. +# +# SOFTWARE HISTORY +# +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# 06/16/15 3276 randerso Added -T to iscMosaic call +############################################################################## import_file=${1} log_msg Processing file: $import_file @@ -98,7 +128,7 @@ log_msg "CDSPORT is $CDSPORT" log_msg Beginning iscMosaic log_msg 75 -${GFESUITE_BIN}/iscMosaic -h $SVCBU_HOST -r $CDSPORT -d ${SITE}_GRID__Fcst_00000000_0000 -f ${SVCBU_HOME}/${failed_site}Grd.netcdf.gz -n +${GFESUITE_BIN}/iscMosaic -h $SVCBU_HOST -r $CDSPORT -d ${SITE}_GRID__Fcst_00000000_0000 -f ${SVCBU_HOME}/${failed_site}Grd.netcdf.gz -n -T if [ $? -ne 0 ] then log_msg "ERROR: iscMosaic failed to import grids from ${SITE}_GRID__Fcst_00000000_0000" diff --git a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/receive_grids_from_backup_site b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/receive_grids_from_backup_site index c1a933df26..a528118a9d 100644 --- a/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/receive_grids_from_backup_site +++ b/edexOsgi/com.raytheon.uf.tools.gfesuite.servicebackup/svcBackup/ServiceBackup/scripts/receive_grids_from_backup_site @@ -1,4 +1,35 @@ #!/bin/bash +## +# This software was developed and / or modified by Raytheon Company, +# pursuant to Contract DG133W-05-CQ-1067 with the US Government. +# +# U.S. EXPORT CONTROLLED TECHNICAL DATA +# This software product contains export-restricted data whose +# export/transfer/disclosure is restricted by U.S. law. Dissemination +# to non-U.S. persons whether in the United States or abroad requires +# an export license or other authorization. +# +# Contractor Name: Raytheon Company +# Contractor Address: 6825 Pine Street, Suite 340 +# Mail Stop B8 +# Omaha, NE 68106 +# 402.291.0100 +# +# See the AWIPS II Master Rights File ("Master Rights File.pdf") for +# further licensing information. +## +############################################################################## +# Receive grids from backup site +# This script is run when importing your digital data back from the backup site. +# The grids are placed in the Restore database. +# +# SOFTWARE HISTORY +# +# Date Ticket# Engineer Description +# ------------ ---------- ----------- -------------------------- +# 06/16/15 3276 randerso Added -T to iscMosaic call +############################################################################## + if [ ${#AWIPS_HOME} = 0 ] then path_to_script=`readlink -f $0` @@ -94,7 +125,7 @@ if [ -a ${import_file} ] then #use iscMosaic to load grids into databases log_msg "Running iscMosaic to unpack griddded data..." - ${GFESUITE_BIN}/iscMosaic -h $SVCBU_HOST -r $CDSPORT -d ${SITE}_GRID__Restore_00000000_0000 -f ${import_file} -n -x + ${GFESUITE_BIN}/iscMosaic -h $SVCBU_HOST -r $CDSPORT -d ${SITE}_GRID__Restore_00000000_0000 -f ${import_file} -n -T -x if [ $? -ne 0 ]; then log_msg "ERROR: iscMosaic failed to run correctly. Please re-run iscMosaic manually." diff --git a/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/rsyncGridsToCWF.sh b/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/rsyncGridsToCWF.sh index 2ad040828e..30f7b1c491 100644 --- a/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/rsyncGridsToCWF.sh +++ b/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/rsyncGridsToCWF.sh @@ -8,7 +8,7 @@ # Authors: Virgil Middendorf (BYZ), Steve Sigler (MSO) # # Contributers: Ahmad Garabi, Ken Sargeant, Dave Pike, Dave Rosenberg, # # Tim Barker, Maureen Ballard, Jay Smith, Dave Tomalak, # -# Evelyn Bersack, Juliya Dynina, Jianning Zeng # +# Evelyn Bersack, Juliya Dynina, Jianning Zeng, John McPherson # # # # Date of last revision: 04/22/13 # # # @@ -142,7 +142,10 @@ # the hard-coded path to /awips2/fxa/bin with $FXA_BIN. Removed # # awips1 code. # # 11/02/12: Restored error checking for AWIPS2. # -# 04/22/13: Update the permission of the log directories. # +# 04/22/13: Update the permission of the log directories. # +# 02/24/14: Create the file if rsync_parms.${site} is not available, # +# and mkdir the site directory on the local rsync server if it # +# does not exist. # ################################################################################ # check to see if site id was passed as argument # if not then exit from the script @@ -161,14 +164,18 @@ fi ################################################################################ IFPS_DATA="/awips2/GFESuite/ServiceBackup/data" +IFPS_CREATE_FILE="/awips2/GFESuite/bin" if [ ! -f ${IFPS_DATA}/rsync_parms.${site} ] ;then - echo "${IFPS_DATA}/rsync_parms.${site} does not exist!" - echo "Please contact your ITO to create this file from /awips2/GFESuite/bin/rsync_parms.ccc" - exit -else - . ${IFPS_DATA}/rsync_parms.${site} + cp ${IFPS_CREATE_FILE}/rsync_parms.ccc ${IFPS_DATA}/rsync_parms.${site} + # Added above line for DR 16464, just create file if it does not exist, do not error off + # echo "${IFPS_DATA}/rsync_parms.${site} does not exist!" + # echo "Please contact your ITO to create this file from /awips2/GFESuite/bin/rsync_parms.ccc" + # exit fi +# else + . ${IFPS_DATA}/rsync_parms.${site} +# fi ################################################################################ @@ -325,6 +332,11 @@ echo "space used in netcdf: $(cd ${WRKDIR}; du -m --max-depth=1) mb" >> $LOG_FI echo ... finished >> $LOG_FILE echo " " >> $LOG_FILE +# if directory to write to is not on local rysnc server, create it. DR 16464 +if [ ! ssh ${locServer} 'ls "${locDirectory}" >/dev/null' ] ;then + ssh ${locServer} mkdir ${locDirectory} +fi + # Clean up orphaned files on the local rsync server. echo cleaning up orphaned files on $locServer in the ${locDirectory}/${site} directory at $(date) >> $LOG_FILE ssh $locServer "find ${locDirectory}/${site} -mmin +720 -exec rm {} -f \;" diff --git a/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/setup.env b/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/setup.env index 198edd08de..e487e4c63f 100644 --- a/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/setup.env +++ b/edexOsgi/com.raytheon.uf.tools.gfesuite/cli/setup.env @@ -9,3 +9,9 @@ export OPERATIONAL_MODE=${OPERATIONAL_MODE:-TRUE} # determine python path export PYTHON_INSTALL="/awips2/python" + +# host where edex is running +export JMS_HOST=${JMS_HOST:-localhost} + +# port service is running on +export JMS_PORT=${JMS_PORT:-5672}